kernel-devel-4.18.0-552.el8 ?>?  HH????fY U]m s0G,-S^jg?LD0@Eȫ\,zq w5(բMT(|'<P~T㜅'DŽauG(O&t +5WuSYo(#]˫ lU"Gp  xRMj)$ S4\971e_Fq٭{np3XxGH ƍ@O^֙[bw%ey <-ư^7]Ra&xagMvMG2t=wc!bGlqh;,a`$pYQRf LB=rHΌ pB4w?"y-1y&J{ݤt5st7019414ba83eefcd4140e7ac246da21f60e9c068ae3dd645c8d026606a3ef99a7cb490f93517942070039c6c8ad689b9ed7ff36830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ad9cd4ea073117ed83db535fd2bc87f2ce3c13a912e17fb7fe88ab0e8b536fd78844d5ee568c7fc4cc830edcd07fd92e02305dfc6399a93009b635a1e99291f4dd75d93397608271a154c0f494b90d56b97f9bb44474eb66b7150ab1032417d628980302047c435bb5006830660231008b8456dab9bfb42f3ceae0f3ccf5fcdc30be7a16f12e5b33d5663b33bd17fa8d66f3816c2187a2e9bd1aa733bd2a653b023100ce8246ba04b48a9da78354d121c16eabe5f6413eb91033fa30991a0aa38d284cd3537f6ba32c4a5ed2d9df91318f80ba0302047c435bb500673065023010f0ad77f0547b37f59931d81c5f65c38e024b2b35a256d65bab4bd5c5d6cd7863f4f3f498a4af700a4f069771a047b0023100ef82659a88bf1791217ea9252a24385d2a5c93a42866cdadad93d20daccece90a5c8db721fb50f4a610bc84be7596bc70302047c435bb500673065023100fd0493acdc186c0c11fd7bdf10669a5f4f9a5335501c2e20e334dab30dcb331545a55736587f521796943ff9cac964a602304f23292b1d3a8e276e65c46e8dd6d347c39dded44aa0ab33afa9b90c2533eaf2f79a44ab457ac259f3291ad2aeccea3b0302047c435bb500673065023064f39ffa30ae926ccfabd6fca7b28284ef6d9ddb8a26a5f62ff9347b39bca34f75783fde130db7e85eb2ce1dc46080d1023100c59750890a5f23ab603a396d9b4691ef13527cc9997b20e66c390530c0fd3701830d9c3fd057ab1fd2f20975751602650302047c435bb5006730650230541cc59526c720b84285fd75028c8fbbed211bb3b636dac38c838be0f5554f47909bfadee5ed360561d378bc9fb8713e023100f494d1dba8fe1f2442b74181db865d8d0a0871a91c04efe600699b697229d3decd9038c4fa5b0b67cfb4264a36398ae80302047c435bb500673065023100f51fd339c800e9eaf0ff0527205100702716269398c8cf564b9fa5a1e5d1e6a9dd3e5953337c9ceab8c57c4222923ec302303cdb9c4ca0a8e47a4b4a0b9a8354530f4264e0a107c9a40b70b380e1fd41e77284a2485bbf7980133864874769a5ffe20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f7a16f3727278afb079b8ef1d0802796a64984e7437e84b72dae858f9866d4248464bd9d304b9bf5a484a7c6dc5fef690230211653063ca5f49a83a55b632d8667eee3e0ca38689ab22e0fff3d83ea5e0a317f93945665631321f7620470a2feb5480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b8035ca71cd797a7d0ba7b4ceccd64ce041772767e9ac308088d1660eb85c864e89267367a4e44ac661e8eb5a1d0dd6902300a3c03adaa28e09014f52acf60a2eb5c591f54ac97b6e4009e125b56cc07454b7e43f492024762a5bca538cce20c137d0302047c435bb500673065023100e8ad0bc90e8031252a631bebb9e8622d1367d3d0a40960605735f8b0dc9843ac960dacef12dd0315af999e672ec751e70230460906969d4035d66138e32a5c251cac194348b2cd17180c3856d88f2f8b439284cb2ef61e68faebd13795ea0cff396a0302047c435bb50067306502304e12b2d4b410de2c09c82a4c9e56dc8ad5e58541c6c743d604d3dc3bdc662a10132c81bc13e56c099e5931901b85f5540231008b013acd70916ef8bd8f79173775eaf12f4ee5fd8ab6d40e5c9f7acc159a6176907b8f277679837437b83247f02f84630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e5bb0ee38824d8b9326ee29b39e12a5e2c2ec738d2100da8da56c21349e84193d7727415203e78572e3f359ae07040be023039c6b8721e39624c5622b4785bf3c90211185d6a87eb3a733fa04f5c34d85bdd672ae01e4656995374a8846cbb9808760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307f6a413ea9acc41bc149915dbabd5c46fb6e9a0928971baa1edd42172a4cf9538203f5b9e0dc5e3382b7a2604dd806c1023064fbdf52badfc573f3ecb39b34658dbc91638cac2dacdc0a9aa402f0d3a4e12b9addc236495386802012e9d70802df890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2b7d704fd59ed82a45f0f301fa490a4acc79dbdd0247926261a518a0f2675aa552978ada04f78b4bcae9b9a90fa898a023046a4c3bde62eead7b6dc0fd9e47eadd5bacf02b5ef65b857e4ffed205361b25b5909c8fc35b933d890f172a7d902fead0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b6189093753dea07b2609e2b3235fda2be71c08d05886cfb98d520f61f23093c24d6dd2be76fa9c87bfbf5f9fd280fb602300150d40a03839bdd75e7a2568ca1233f661ed263211ab5c691ebf0107bd31a48c6bbcf29334f47747623e70d752231860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a94f66c5f75a7013200c0b7e32aaaecc6408342d4c1b668dc4259155449aa18047b61baf0f4b4b3c261b47fa4f5be8a2023100e7efbb358bf8edbf7fa866c4a3a6ad7ceb491b0eeccd620829769804f980dd4ea64bb2320825715a1f584745fb294b020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301dfc59c0d5ec8fe5a01ef08e8095834e873232d7dbce76a13f8374cdd1ba7f7cc763e679b160d93ae3814f096bf8e89d02310089ca3853ad88a55811226f408b9ca8f46b084647b5b3b7e6cb1687ae47f2ae1a21c7dfefa82784d05bee4fb78c14b5070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307a7f14424dacbbe3c552731b4facc19210d891a03565fc463ee6ba7f0a50d5f655ee03df5e04eb5bee7833b077e4255602304aeb0f7eebf9e306e756632f4519ee83609a3e178ffd5f8778a822b3ce514a7f82b549d409ca1b93af5e248a217d94040302047c435bb50067306502300a60c66bba64172783c3eaef7b8b7e47df0088b7b90935dfafa7e0ad5c0e7453eb20f284ab3221a8f9b4fd5768142e8302310091a05a713477bac21884bc46808fe0174ca05b717b4cd3674d6de1b5cd701d86cda43e82a0aaee6aea7c2e5509493fbe0302047c435bb50067306502310097937a2005bb7eb5731bdd019b52e3b1359b5cf2ed7122c1376ff27bc46fac631abc03ab082223b3ce2a9a50ae8a9622023069538c51b5ab01c0f883ce6b89018c494ecc218119bbc64a733e6f8e15bb6315716d8fc14e583b3e3236df42e67e18890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302e17e6a53e896704e9889e0b463a7dc22d3254b2c22c213d5332d532b26cbf8a1ed874322d07f1c35431d96860971a63023066e79adf77043616a32b70e3c72cc96496743c5be23bebd4eb114e962f76e9661c3ff0318ba6c6da208c3dd9a23466f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e59334b802e87f7c2b4a4e5c995780d0dd86f2b66fb8f4454b72a35acd0df53971ee72da012ad8307f85a313e261ffe8023100cf9fde81703212ee307dcae1f7a2c774018860482329d94ef3f4089f677d592d82b7d21815dee62d813095b33cf418210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100add7632f438b3758b2d19c6893fd45f042230de8dd645b09a9cb1a97f1a03957f17b033bd5337c5aaeb63d5cc81e6b53023100eb1445aa59308f083c3fa86d948bbac17356775ddab6c264293c682e934368b5c05210c3c341bf948a2a9e4c565efbfe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303a17554bca9fd8ac1ae21d3916e045002cd1f59d11ecd307cea5beac8905949c8bacc6cf1b0819fd41711ab4f564d9050231008097a7746b5fb34f7830e0d49a70d336b4c4135b82fd83f651179004bc29f46d4cfc13454b66a0f9070278e76b1fad790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c8b7b4f3c1b39a7df481849e0b1f1fecb20bfaac8766485acd7db9b814b78ee737f244df9b1264699f9ec3e07f234e5602303ab2016f1b23deec24a89e9636a6e5e3c11e71a563a8b18c0adc03b97c91849d7d9e5cfbe862a7ab60bd21a5e2d268b20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fb9279efb5daaf728fc14744cc7e8820dc38a944b7eeddb0c2ebd57d34bf0104b50d60b09a6df00ac8631746bf7139e8023100c62858a228e4a514814bd113e1f6249e140c31e4c040d12f4c502f95476a785f47601fbe70ee1677287661551a58e1b60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009db1b39601db705f93260c98e96fecb4fd1f3d9eb5c1daeb4be9cc823a203a57159451130acb4d335d02e3da5b2f2390023100a3c491a316253983abccddebbbb9d2156f1665a19f86044d95ba92737ad1c9b92077fb6e0196419ac0f67d35d8663c8f0302047c435bb500673065023038ed9bacc30c5a9c8fbacbe2b5b083670f00edae12be7e80a423845a72ee1ecf845b5e998954c674a42235f1801230ab023100a80ecf69c0fae9be56e7523751ba3a63b8ecc024f955de4b9267771f58cf4d6c4c4571b6160e3732789560195b9fe7b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306c42102c8982f68d6ca40608ddfcb111081bf25bb3904c77744e4ce02ae71772956e4676b44859f13cc8379e4639aad5023100f4119908a5af663422fbb8d711a1b60f634cec2ed7e3b321bc1c9377224a6c9410a2883543f0442022af4b211ef8fb5e0302047c435bb500673065023100a9862b8330b153ce84fb7f0409eac3798dba818b9e4b0f120056429b9fa50f04ac10523c279a40a06aff241c35e99b1d023037f2c8f0300e1e829f496663582a484109a3019c69fd45bdc040efccfe5656caa2b3f55e0ceb331f0e15f30bf53e32c20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023071a51359b3b707dca5d7dbf77740d8f251e3d90054eab4d0065c20c30d1faef32b970a9a732867b998f5739490b6367d02301aa47bc01e5bf5c186b43a320f8717960d71e47a3d60b7ad072180f481a78d11880acf6a2ef4f39fc95b87a1112e100e0302047c435bb500663064023014d6adbf5d27a924fa772aa4dcc63b0893b047e04943f0b7d5b0b6dc98316d87792d5ed3ef1c80eaa637a84c0829de1302303cd9cb5de694f9fda07203f2ee2ef2fd47b462bbbaaf90c42daf34235679eb4c89c04be1fa2cf0fbd521d07702bf65020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009657a9ad720ff08bd7fee61dc4f34d701d4a5b7f93100f9ebbb75bb177cf1c5cd69e3cb7c9cfdb59f15a8ae294b8e09002310082dac14c4ea338eb343313eb5b8e1c00669ca2d13a8eeae4606b26029004332f2e2c1e64e67c2259843c0f4c8bf0bf3e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008826fd649e501ef949480a6ba63b5487e2f4bd6fb7ea9f5b33f9ddeaef726796d321891b9e2248a1020d21e0665ce9c202301f730604add330ae5494d76f1cbf226426389101acc7a7eb61a5efb7a8f7681b7fb04274dfc53fa0d0952dd3370c77d90302047c435bb50068306602310092fa952f6fed58b4fab62c3b48d17a34e507c27bb0da8ed3689fb508536734a692e7d560d8b39a31a04d43d20e75cd4a023100cbe2dd389b2fdc5b0fee2d61742817c071ab5fca26f2e18cbe5badde8366b53f8a524be3585d32664da4ef4d99d64a460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d7a1950ae21793597cede8fd60177e8c7497b2f0b6636b19865543271e507f947888e8f2b90bb373be44b869a436f43f023068564bfadd8d691db255e18b0dfb0a84e832ca727a779bee298ab16a3b49abb7565dc534db869e16224207f795a04df80302047c435bb500683066023100e20976f482d9832ba4d47d043f72c537330a5bc863754ae2ebe7b0d378003b2990c937c2fb8cf16a9d4277f65792c91a02310086b55322d601a5cf0b0e862113dbf1cac6367e6d9c5bf847e42b1a340afd718d25d48d7a5c2320c5ff8eb45ab2b7bfc30302047c435bb5006730650230210f1f7e74e86e8723debde9fbd968def8faf050dc26acc467775da68ca3165f4ffd9992123c941b26ed5fc66cc1064c0231008ddfcc4c13606e3e8caf68d60d8f0d4fffc42de3a78471a8766b4d796f288732283710679d6f2d4369073823a53181760302047c435bb500673065023100e4df72877d8b851869c1f341bad1c7c997dae8f6ae0c7890714df8d04fba24988c182d2629c979c2a0f1d510550927e102307cc1008a6847d778b4bfb7f298ae59a79d6e57c38386096cc595597b366ecf2fc31180d2cea2ba9b83414b9fb5f526eb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c11c8df2a3e56d0d7ca087d3c0015623c6caffb8958db718b753f9411fc514bb6f4ee3587fa15c6e1f494fdbae2e4a99023100a8fcb8ce1fdee43e03b9c7f368195663979ea165776433db9a3b790f200cdeb14bb48925291293fe8e33afbad2220e560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304c6a35e078f98c4d8d9fd84802fd429e6771437d7d38a165a33dbccf0c2f53b0ef9074b52574f52a5ca33a42791fa92502310094fe72e934cfe0ad288f229062d1d65daf118d8d6c82f003a7fe3aee19023f2c89554d6e6997826d3e567704ccf4cf720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d9dc2c1eb3b748b6395476b2fb4e94c32da07ad97bbfdb70483eb59a1dc22824d644960897890e972338392cf0f21d04023100be59fb56fc681e146348bd6323139753dba71acf6acfd7960ce9d004cba939be9bedc0ced7355bbe49bbbf6ef7183d550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b86a00b2ea2e93ede6f740cceba6f6542ccbde797ea9d2281c697e40a04dfa895a699b2aaa0eb4876fb18f79e835fb68023100dd6b17257fd7bf5d8c0f0917f80eb4981daa0f483f2157a0d5e2ae40851eaf4ea9cd0635971aa248d170a744d6c6b3c10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009ed84bc54d9f7e93da0278b6c9df47e1e742d24315cbd6a3ce94700c83957202f1e31630dc707b0d91d22d26ba827f5b023050b8afa2fdfc3f98b77576a1a87cc35cba9229a350e0ab83de230a5d45229a3d15a4a3a66ebfb46f8adb07506cce75910302047c435bb500683066023100fceeba0b01a781df30eb53009b7c8de8feb256f0b247a696721618bb5578619dbbbd767f2b6836cc0b09ab04b70a210e023100c1459f2ada955d709da9debec0244d9ec1b15308767cac92d4282a1dcc6a527c4cf64326f0d9c922d6c4c5bfed2272f60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300f70913206408d8d8eb547a1c7d7dfd6f9f6490ac08019c400933f2966e86bcaf5bd3fe737dce9cde02056ac903b782902302b30f756a25ce80f23c79c07c444324b255dfc881f5548a1fd1a6a3df675b655c83daff54ec41c4ae4ee78d2236fcfb30302047c435bb500683066023100bfe50c79957afd31f5c6ec7a70cc19d306297233c2c35746bc31a07576cad94d24745e7359160f03a6f55e4d4938b4cb023100a5928f167106c12cc35f70331af8f22fee3dc2b49b47b873523607c805efc64e4cc58fd40d3ee554577c5e1af26bdbc90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306bb0d0f187ff88052d90122f7cade5af70d2d1c2d9cb281d43116e28f0f1d1a5e1af29488740da47fca463ea3b4e4f65023100e21bacd87747dde92fd16b4e2cac3a645a2314e09e0012322edbea9d800423becc467876cce2bf07a10bb95caa8a96f60302047c435bb500673065023061a5bb5fa270ba6fbb82d92c0ece13af135bdf2d6aff66a862170bf6288f57a109e20690fc0f514ac7f96e12765cac8b023100da5e3ec8c2ae3d823fa7cd23f39b78632480587c3d112d575385ca0ba1134d400023815203b87736e33187913943b21b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d43cd511ad2d5348e13f6cfe7b1e448fe089d308b31dd4bf4e25d8af6f83f3400591d5a1373b7359ba21bf85c9d64879023017048ea2cae99f9068c05667a1d817a9897f406dc7bccf1403246912f03851b4d0b615ed13bfbd1e7d75405e38211f310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304a9b4dcf20ac06642a398967bc88e084e20fb89c2891293d7f379cb361abbe960388d612c2b967df2b78f7a1acc13dc302303c4dcf4e2ac4f7ee626b1d570181fce5141d2f5d9c94df6c5adcf567a176a785b319744ee957d3662cdea0bd6fecefee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230336300b08b14af1867923e5c9f632084d360ddbaa126fe0f8205c275783d2cc13911f237e0f863e1fd3a675a7d08ced0023044569aec54646b7dbe7301d020d7b7ad8fe3b2b3853b63997904688b655e2dca13e27ed74a0170584eb1b1ef9ec98a0c0302047c435bb500673065023100c64fef934294ca87703d623c4bfcbdb0f95ba02b18abe3bb1692018ed47d8f17c54cec94d04ad16a9ab7f331deded28a023070409d091d244473c1f37e6243189b5bf7505f0c33007b4c36fd8c64cc68b1be0cddc0e3045bf690378b9b2aa39fafa20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d5547501a9412b0571233f2a6f1f3c454901f14d1b169ba49b09ea0089d9faaf696a8610455dbf3ac85854c72d43afd40230092a9cd745ad4112dc5b6cb519100fc8b90e959603169e8e2633a8059ac360c5dc8e8d231c146f753192d2647799f67c0302047c435bb5006630640230763eb3f73bd74cb8b2c5195267f3f4eccd11ef250dfdbf5d782c2badd88682e1927a209032ce95f9b17a8ba7814801060230781b259cfe8b0d5cf834a943fd6832004d5c3031597f3868183029803cb1a28bf983c6a15a2ead3bcd85623151355bca0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230359fd31d095b82922b6795f2e3c170df495f244a5db234597f8d438b18b54455fa95f50d9e07d3f5b4f4a07a183e6cb6023100a835ed65ce79d322725c9ecf9c4d6e906f45e3409a3a8894d1297386c6eba156203986cc2c24dd9988c7ac15f91c5fc90302047c435bb50066306402302e9fb7f18a071d7df3b3247130ee5d0f40f0fa866aa0da1fd96d501821f94ce457a2b75715cd9b6f1ca3273facba703a02303744b6de61eaa7ed997273d1c4ed513fbf0de2e88dcce6a0cda36fa3f23fc6e32fd8abc01246b580335db03a84b31f500302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f9e2433b77aaf1fb92a81a796c6cc67855524d0f407aaab513863b6370844f9695b2c3d098b4e066dae63fc628b336e5023100b2de6be1bd5d52828d4008c164d08f1211f660c384b3b160b62312b4ae079e2df516fb67bae02cea1a67e8b85afe49b50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023063d08143538742d334e98df2ce75b5a70eec287d16f840878842604652a103bd2d189f217873e211def7a724a6e2969902304ed2eec755a0c1cdeb2d519a977e4f944f6b4faf7dc685a0304d31a66bfbb80eacfecf88ec9f3e44d6776608a29b1edb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023027a2a580c70288182b2aedd288ce9ad050a640b0c4c6fa0c83ea1eb9ab920891c462bd262979868620549fcd90f04fec023100807ce66416d8c9c355ce209ed3c0a310fb2dc7b20b5cfe819671b3ca5a054c46cad421e11e3d96e7bcbc487e6872600f0302047c435bb50067306502302b4be76bd3f65acda7e7011628604180ab15a4f85f0fc0743fcd5552852b62c0b5206c26a5f9c53e27bacb5159eca666023100b3f6d72f6c08431c84c1873949975d3e12cb6af0bbb8ce29ed118f7ad02446325f242f7c2119644a29ae8e11a4a629ef0302047c435bb500683066023100d5411b54e2c49ec7818f3e0488a6b92ca405a8833ade12f10e42d3bd84a4bf98fa3b658964467bfb17bcb0bac40ae1bd0231009b930969ecd025804b1d0b93262588ee9f2004d55ddb52795df24964276570400a1e5f2b51b5e111054e0777dcc26ca50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100919476629cdbe9663d00545ef2dd6ed48cae565b08336df255fdd3f16650a90185c682dff9025d3612d9789dc9dac4c4023077bdda05288c7148b8b9d3fbb68c2a4f1f17aa8c4a2bfd2e3616b361129fc01706e0c24502461fb8b0c2c248012834bf0302047c435bb50066306402307ec1b94c724487fffd67065b07966ed384d110dabdf962cb4ed0078bf6795fcb2a62a8c742ea884e8e27b5a1f9ea422802306c167b449437f7c785317e8889e2af326bb71e7ed8c5d71cba3cb7bd625ca4991d44b5c2f4cb6ea4e717e4d26261853d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303c77dc82e52d7bcf713c3c30a1bd69a1c429a90e02cb8af3768572212b22fcf09baf94f9275957b84fd577dc9c368f7b0230675a6394eb34ff986bf2cea000e0abac4f1fff3f3ddeeba9b1758e02f797d51bf05bab3c902487c6ce6716e514d616490302047c435bb500683066023100d383738a1f8ed79969ee110df667a557e79efabaad0b48985b7d9131bdace29193211b2993500dca247d8b0d6ee0b5f5023100c544aeffbf821da46a5487f02cb399df91f1d5b0ecbe6ddbe1dde8f668c8a3dc4cfcb2feabdcbbae9400c5911e1deaa50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306e77e9ab9294f74731cde54e14c40b69161470417feececf6c800debf6682abd2d4973416fb1887bf102651ada7b1238023058fc7e0cc03223bd18fb9a95afa1f2d47ae40357c482c2e2fdd83dc8962f314e58d207603631534a55aeb2537271b1cf0302047c435bb5006730650230224573d1ebd7f9f1c681bab40524a2a9d7c14927d9b9636093fe483fdda018163c9fb378ff7574c44d93018024e0ed55023100b6e1937a016f59e5d9693cb685dfb91fc55c58f03c9ccc6d60a8a10fcd8e8e1471fb0af191586226fdb82a0381558dd20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100965229eb5e1841555ae4e7217dfc7064fbff0571a343f67d22b1e66966e5d1744efb1b20d6e9ec3c8268b2b34122ffc602300db97ae4d2c2c35ad6c2e625653462c6b9e2027ea8980c60aecb5eb1bf6d1bd5b5d150f02dbde2ff5ae8a20ce1b4ba440302047c435bb500683066023100b517dc69c98f892a3e8771b785e2bc11c748b32ad5905113db618ba35f900b2ab46106f6ad0c339ff976b172c41d631c023100a004dc48981e7b88462da0fbbe6a547f4f9641262537fdd720c1425eb3a4814d4fa7ee5d4b8de61121cf72219d8f9a890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cfdf18585ac10c152c558badfce0b4c80519be6cfee7e0a208d3d00b011ba1d17dbdb17260be4d13acebe960b4518a76023069f778b2e1f28810f4628ecfe5601e6e23d14b95e61f26eaaef757a35c08d0343d65609229f732ad1f8dd551b5e9d0570302047c435bb500663064023001bae758f22f5555ea733f0393b8acf374538564506f08fc0ce66ffe65cc08bc02d76da5ac7b994c166079085ef62c9002302faf22c00f67b239d2018ad1ec2e7314c18e77a62e41dc84926ce48b72f154e3fbfc6cb1a2ea61427c8335656a7f82a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008f8c235c65085ee0aede118a2a8007c6130236d988b80f348a23de526f9abf8d771aa021b2e880a49bfee3376b85921002302b86a48426efc5e19bc5c61e9c3500ef3d4a9bc41fae1001d06a4849b193f17b6388fe628fdfc067be862108142893880302047c435bb500683066023100fb80bbfc49898ef07c57a147bf23ca34042700b23946f903e644c763fa629c41640b4e6d2e4464bc5b6ea84cafa4d049023100f8d8e904951f1aa47b98f2801816841c9e64392c20e67720a8023db5436940f336fc7771fc872bdab37f3119ac9ebff50302047c435bb500683066023100e288d9ae44c0ebd40e244d7b3443ed0e3a4c45faf3893401593761a2dc009bcd9ef82379896a7b4a98e1deeaf9e453bf0231008041ddb9f6c928fb7e9cfdc1211008a920e6c7a4f975460b009675b9bfd39d783b2f89b516cf1a15b6d92a5a5e4126b30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023017697d56e2eef00370a3fcf5b8e1d22fd2fe9283f3b9f57e3d3626e1965f24cc90fe00d3328efdcd1c888ac4e2224b4a023100bf82b01816e61f4f8f169a956cb7952e2f4812d6bad3ee27c6524570df3f26174b9be06bb45b4e197c572caed31af76c0302047c435bb500663064023072b82f005cb181431d753c682e51bc39ef698c7f9eaaba44cacc2580f7867e875cae693f2848d66a5c5282f6cb83482202302eb7f7e7c1065a5130b1d3023a987d6ba60983ee9c1a6e5e77c8092bdc4ec1b49a390298f4437a21b93487b4aa4ba3360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f6e9093030cf82694030f1b1815594fa5fc7d68695da06793976bbee784a30d69a570beb3408662797d807e13dded54b023100cb15cdd257715d8c7f3823df6ed849e6eb191aba5048fc9be46abcb629c05e5df68b40788cfc0e5c91a068e0a65590310302047c435bb5006630640230623b9fb1d107ac45dfe30e3cf5222f3bba3bd885af95ee61de2e966bf5a4dbda54ed4dd686c31aceb92e656326dbf84b023053306d1838939e86346d930065bf44a2b0830a7f2202062fa91416c82144e78d41647dc0ed835b89575d80c2be96e9980302047c435bb50066306402304631b4d68e757118b7ba1ed6139f0b561f54821a30295409448d052e07c16f4c0109da8d6149a3ffe83b531b5ff9b08602302aa30c8f686dadae610cb5766f9cd473afb74fbdbd6459df7156daebfbb260dfbb0fcf7bfeb9aae40994164ce6e2bdb80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303208ea21972e7bc559afbdb44825454d4a39b4dcb9041f891570cf15d11832fa0b73c02e000fae6498cb3319b2db44e6023021e2eeab83ffbafb2ec494cc214b52dea5ca985b77c68522bb91ffe1f125ba344cdee0f5c15e8a2de1ccb3cfc0cf22bb0302047c435bb500663064023018518780d9adc69b9cd68c09623c1c9418c91df61c8aed69fda943e58f1fade9984583396702710a43300aee4e43c34e02300cd8619ec140ca18ebf8c20c536ad5a8eeead22d605ea6196571df83f54b63fcbc125a3c988dc7bda2ab9353a51f1ad30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307327367be9a8bbb9839d6ae8afa8472286e99a26180a8f95aac2995e68c6ab143290794c4ac90c6931f672558a2816c002305f4643d0814b46ed8571db612fd4002ad4483fccbb5f0b016d57cbd51dfd6c3f4428a49dc6153bffcdd76305a28575ce0302047c435bb500683066023100d5411b54e2c49ec7818f3e0488a6b92ca405a8833ade12f10e42d3bd84a4bf98fa3b658964467bfb17bcb0bac40ae1bd0231009b930969ecd025804b1d0b93262588ee9f2004d55ddb52795df24964276570400a1e5f2b51b5e111054e0777dcc26ca50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302bc1e4c274e67c798203d8a3bf7413dfcaa0a1142d0c8ec9d7b7924e1ebb8705676f11427bb868b7b5e0f15f036b0aa202300ba5fceb707875026258c86be032acf3f850b1c5f4c7f3cd8dbc71e205dc8060c917b7fcf9f6ca13118d9c2f40066b070302047c435bb50067306502310084a8904bdf53cb1638ef9f23d9e0d4880518ce907114677894ab73899def6e49dd1c54e98ad8c0a1daeb7f74fcc8efae02307bd774377f8cd9a0fb4d7ae2a346692de0d80dd4815d1887ee226c8b0ad96513a5a682749f705ea99eda3677dd2d06f50302047c435bb500673065023100d9254b7bda49a2b57ee6a867b373e9ef8a9bdaa9b3f4602c6fb7576e0d640df41ce5f9e43eefa0bbe852e2bacbcfd1ce02305631dd501883d411c028e81cff593f6d50a243a8e9ae497f643a91fb8c3bc9dbb97aab493ede410d4eb3e350c83afade0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b74b9be38ee4327098eb19074ef84e47013dd891a46f1e11e11aa9b149bf9cd5093d2f4ee16e821b1e7b5f24e6163282023100fa90064e23fa7035d35c9d6404ca3c4ac78a89cd873add63d3bc370dff5b8fe4fafe0e870f6977288a91a0459af437110302047c435bb50066306402306a758f3b4c4570184bdd978de196cd56e194883f9b1f500da54f6ca30fa37301e3c9d2eda008693bd9b7415485284119023049be3ee65fcdc88e1efcfd8c8b9c802baeb7f7fa19b76c02075c7913b1d3edd949721b60bdfe4d8c0bfbb544c9f788a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a592ef635b40ef916be5c76ed0bb4a538fd0b24109cb124e6ccf05b4e1a05c0a4ca966b4e25c83ff7eb6e09b87e3b77d02307943c10e1172260532ac259c7975c7251d32b27b80a243558fd14e9af5ff8f2c47b2d9283dd800d2633a5aefcf5c794e0302047c435bb5006730650230308377a56c9022f99188a7fe8b9ee52c53bae781517cfce5cacf30fb09e658d55ae2817faec29cfbdfc68b95dfc987b2023100fa9cc7d916aa912178ae4918c6d7ba25aededadaa7905f344d392261003569a5899e8a2eae039d13d9e6d2b3fdcab1e70302047c435bb500673065023100f6b3099fc6c52765e7234717ddbc47ef190f795278bfc3840b17e288442334b16429d75b080cdc087f1d5ee03a8422360230485bd456be34d90cbfc5a0aab051a70db3897c1e7ca672d247c2e3e9d6cbf7928f29eafbb57a69f46db595c69c62347b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305ca525af350ec22238d0a3aac50e887e3528b5d8ecb3719845db0e64901513b755dfaa595a1d3c6f5bfade2153409a09023025dcd09063da6aa408f1672db51bff7df8d3566d450927e7452430945dd221b113e17b256f613c1ab1b594f2c3e175710302047c435bb50066306402307004f6e831b4d0e55fc05cb8a7aeb7a01b1645aa31a8a8f7bdad4ef980f5329fd6b150ef20b76ac81a0cae96548f030502301b096332e4ea07f1bb1a0147b8b1ea4223e414d09452cb35e940b2968e65e4e6669c31c087e646ba8bb4d418ff459d960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a56b52c7c31dbba8a8bf16c5dc4646d80d03a3bbb577932a03ecfe380a03d0e56be646e49d54b0d3972ec5a1e7ba4464023100c7af97a5e368901a20b471d9332f9c40887bb0b623c6879a56480ac6b561ee7ff2ec8afd48fbcaeb25af1d48d50681d20302047c435bb50067306502307ef16bd9710f2fd9dd9142385d7c71e8e46a33b9b4b8591d309820fd66a3f5dc4ad643d2138a25a78a733b0ceb4e2ad1023100b201b93693318cde84121b66c93d8a405b559bc45f96eda6a3f8cd595c502fbffa8b49760745a93306e81d450346ec780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023004a15e12fa5ec153b2ec78a32de0b41add5d250e7797de2d5ff144eb80e7bea9e310b2d3541b811839cd36370b0a3326023100d5f377c8c55a151d3c2ab0badc01fd2cae69c59f80c6632a1d9c7b1bec2bc58aca9be6fd72b91b1b3f7d1bafa48cf7ee0302047c435bb5006730650231008377e8944eb698e51b4ec50800fdbbd8e86fc99c04e35c72d723dc2eeb7081fd42a6b37d5b31b6001fee198da56a923f02303cc3e97ad991f34d60cb746539ef9da35265ecb571c64fa54cd021f006d0add80ead633f268321c8313b608676e28a750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304859615bc551b56685c0cfdf2df215b5294a0a9d594a5783f2b8dbe03400dec91ffab997963812dc17a57073d05a6627023042fc3e2501ddebb0c15425b9baefdee3123437b3baa6bac4460e910a7a7379efb466d7de2de2bb0fb38614e8073ae5130302047c435bb500683066023100e7182bc3a52e9aa0eedbbd07dfc706532a3444a9f5d20a40791e44aa7b1744b36d4aaaf2aa718898b739d8fb62c8d654023100fa896af62591f15893056e812e6969bf60355d75af9dcd9d96817b0908a4455c7b84885eaeca8f9782245711c87beff60302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f7538faf330e78e356075613863aa4d550b8575983f1a76bdd55f2fe63346cba36d423db2b79475b5618065d79d046c6023064606cadafeda1a0e3b53173f1e874bfda6fa790a7d3d191489a20327d83fb931af8c047e7f9b58c7d6b26773df349870302047c435bb50066306402306ccb8995553fe1c0660a081d3487f314435aa4a3126487378e12ff553108da5ab0c69437cf891c95a28edbb17b64ba5702300a6f905df64399db1b5cf296a414b8d3d259161dcb8718a6609766e5dde928fe090d1bcb42909ab15394df5ca76c005d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100adddf87b256ed831f94f055549374d427fa6a29210351b8ea090932911abfb5e385b29aecea2ffaa88d5e0dd76e51a4b023100eef51edfda110c7048ed783ed822bb89f9608af0b6a41003b9a19ec543edfb75186bb69d0d63f8328dd5a1d493becd590302047c435bb500683066023100a9de1f329d28b78fe39b175808d6eaee43630b462d174f13232f025e0c9cb73daee69ba4fd7ac38159e373f094210e94023100870db07b79fe77961cb86ca9431f2064e012d231ad7ac50d339fb7249820fbbf6af23e188ea03e8c4bd6ba867a55fbec0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300fd7467a1197440684f02f936e1ad75fafc3bcca43282b5a5e9e07009a904d835863768f55c1fb8df16af8e2a2d9e3c502303360d75ead04a709d65dd4c88a0527b1a03c7bbbd1a70d3556afb5c660a008806ffc536fe043183da3095f2df6cf0a690302047c435bb5006730650230311918f32c2bc03964e532b221501c6fc1dbe18630ad3bec94e5f4b60fa8ea8ed730351f4a0320c22e354f36a08da75702310081969b0e850af486e420c042e2baea643dc2b8d91b5c631cda426060d2f3c211015184be80e90e12053da5ca8ccbc1ff0302047c435bb50067306502305f34e0b3276f1a88ee133298d79be18dde23a18422101b80a88e7f13682b578ff876ad13888cbfd279ce908893b32302023100b640a95624599acd5e588b6c0c0ca01b9b1bc26bddc36622c7996438fa09f79b2e059b6690cd905a99ec70dd845274150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023077013820ee7ddc657be9fa47f025cdb70a17b9c6fa99aadcd698a71d02ca8730288354d4c0575875d6148eef56bb427d023100d4eb04bb71610d250226fa0f77b15ec979e3c434bd65a6f9066b4c84c0c0bbfaa2d9670b11d605cf3a65ec9cb9d8d3fb0302047c435bb50066306402300d2bc0920f1a9fa23995353d903a6747705bac556bd35a9e630682fdbd2abe0120032182e8315554d1b0e448b08ebcfb02307b43cefe0399b13bd49a57b2b2e157c3a2deadb78f762a99a793b95c8f596d61c17fac8a78475c2915d97e03e499b7280302047c435bb500683066023100aa7dc983993d035066ea0e7bd0a6bac7d75d5a14208726df6680ee60041b1b53f400d37cd891df9925257adc75a483dc023100b23122cffb87b23c0993fc0ebefa0492da609a3820fc5e371d43fa4888e5af9e00ad63d247a6940dff025a6e5a178b4a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ac2d4b5a7df8ec36d90ec7d0ac81712f0e044900e6d87fda57ff52f3d2fa16a98cf77b27c758b99ae3d223fd942b5c49023030d35efcfd277f5eb6402a464b88ca6c8916c92e3df05532159f5e76a1c7de7d9714960b1a8104954b3af5441cf8ca610302047c435bb500673065023067dd68b82ab0640a7f7ff7fbd51b8f81250419c9f90e6f4853a474528580c14f7590401b6011e391196e41e3b5eda440023100a6dd2276c4214d63979c612685f9aed57e5e07a8a99800db717927b44d3e7eca41d6408a4665678f31f68bba776c5dff0302047c435bb50066306402304631b4d68e757118b7ba1ed6139f0b561f54821a30295409448d052e07c16f4c0109da8d6149a3ffe83b531b5ff9b08602302aa30c8f686dadae610cb5766f9cd473afb74fbdbd6459df7156daebfbb260dfbb0fcf7bfeb9aae40994164ce6e2bdb80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a534a1b2ab878f1c5918f326a4aabb657f8c69db0104e2f58ece66b6a001cfb045d755e27e5a4bccb912531b2ca7a0ce023015ca4539fed6f4fa64621c8bcf3c16a7691b92eec003879324aceb11f791463e26fae3a21ce6596ee7609df01558060e0302047c435bb500683066023100889548a05b9d3bbb7cd9428c22f6cc693859237c0ea15b817342b4fc7b6736c2a8e6b63456e3bfa0573082f73cb1de8f023100e00430f4dad4e169f90d1b0e4539d6902ced36ea9877d79d5affa283a09f8ba8e464337455095a64dcf75f88140255200302047c435bb50067306502307f78372866197689b7f49e1bc6258b9febaae8e99d6cc615d1ac2775ba36f0f50536c5cfd8f1bbebc96a978d40d5b736023100c80b0dd303c59e653dde5f555e5871748c1374e6651bfe0fecdef5f03fb316896029e7a8e4e5a884420fa43b535eaec30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008c95f9ce8b06aff4b210ee6021450d1e067e2494430f8be773ec7c95391185326490fc13d5876cec67bec01dabe7fc39023100ace1f0ccf8314173a9b871a24761c9d05da1c74c814cfc8f17cccc60a48e5be5f6ebd33b4b7860762fb73c8cee6b33650302047c435bb500673065023100ec8c471dc344749588607eac6e0a2f78381685718f3511e232d0c8fd6b0353117f918983c56d61897fb0bd9444589cd102301df6796a970fd4d6964dad887b7e76517a5b3c4ca8f025f3c5d34a3cddb595f7ed79eb61153b507d2d2d266a7eef16330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008f3a5441c8d856f5db7beda3a911999cc3db79b76b913c2d20bcd4bd937a5b8f3e7bc3c1cccab022c161030e421ce606023100f5876b617c6aae92a73619cffd2e6a7e0bd6d463635742770384b3fa14ffd2130932096d469afe679c4cb1d1837a8a1c0302047c435bb50067306502310097ab258da1d7ac6963dd43c0ff842b15e7099f0a82b2c8e9b2dbe6145be2c7a129d5ac39070ca5a7c9d0033bba13373202307bc1a6c1597521cff76607df315a1887fb2afe667adff27e095893802adb357357d68d279e873a7c73f46fb4097769d70302047c435bb5006730650230295fb3306c9dd11c1fb53db4066eeb771a9a8e4b057e116fb576c2b78115e01cfa510b13e94a6fec0ae591c13a9b8d820231008e7ae28d129274b271df4c557a9a3ca5f3bfe312c5efc151d9089a6971de070619aff3a00118e82ee540ecd3f59d83600302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f04355b6824ca0228cc9de7fb15ce16df622b848fa15a3e6428c8505bfd5899d016417c00e5efef1acc37bbbf651227d023100cb9b6ac79028fa5f1650a4568b729d7ffb30e2bce142704a179bca3a51ddca082b8ec0397a27b75d21e33d7a34003ece0302047c435bb500683066023100d5411b54e2c49ec7818f3e0488a6b92ca405a8833ade12f10e42d3bd84a4bf98fa3b658964467bfb17bcb0bac40ae1bd0231009b930969ecd025804b1d0b93262588ee9f2004d55ddb52795df24964276570400a1e5f2b51b5e111054e0777dcc26ca50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230593ab0271412215fb97b4ed4faffa3c86ca15d3a07705a8fb4646221917d08885aec8dd235bea641ea559bc133b9b5ae0230151841415a8b60254f64274ab4481936249042c67783d42562aa5b194ee9426ce4b83aa4a20533a6240f3813cd84538d0302047c435bb500683066023100ef88c0aad33526a0af6f8d3544dd3023106358f51917fbd500f8d4279677af62e93a926b9dbf8db88dddaf6ce2d90ab4023100e72a41143ebf75e778aa360a8a404894aace7048c65291ac30fda491d892cb32a956d516bef7ecf9eea30b7b930ad33a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009edd61c84d8cbef89e516e361287ffdca62b13b8fb59c1873e3b5bc222aff8d18004eef33ea7efc71f0b0936a0edc62302305083de285d243176caa50e33939925d310243a44173bde6bfb56ac59c1443792a21d88b51a62c7a22f2ed24c39f6f1360302047c435bb50068306602310098005b0c3885423c43c62d8dd638beff85e6c9481dea2565cfe57a6ac8b1c21be9c40a78c534745ebe04eb42339955d9023100c03672a4103853cb2c8d3e1c86b94aa1e890e3fff65e8e0785951348ec83cc278ccd15c832b3b3255cf99c029233aa040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b59c81a830abcea4fb36311924ad1b1fe647e7c9c2a19f577a0b3e15af7f305210b6833d6a5760990d6b098059492e6b0231009931e250939adaf4891d62001e576d06b70bed10a195409eb24303d0d240ca7622952557d69482aca5d94dc97c46e7d20302047c435bb500673065023100aade70fd22981e6528361e0672d03a1df7b5e43eead293a10f08cde9cac7f0d4ed6bd6ef7592cdebe96d63c33e5943fe023058bb9801d6b2c84fc31657f4a2051c66fa1ea5b3b4e5f4a8fffb509755158965b14466f255ffd186a08ae7d55c0bbb8d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307b31efd6a9ba95127de067d5422a9a7eee20edf482a4642c72392298ddacb61a4344b01429b1e4204a285de192223bc30230105a455b2a104c33e1d36c17149bb45695aa461c999082e6dac7baa38a6f4dee69650c1144f650a5f97ab46b6ca5cfde0302047c435bb500683066023100f4c4b1554f689ae9ff741b6da2066881b2ad0e127fd8fdeb49476095c9f86ce728aa34ab6a9fed93f2f43d851990bed9023100e05db4aff746ac3131f9fe50c8d4b92415b80a37036ab48fd6c4aae6ed989cc8793b05c2d4701d62d66a2063d0184c110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301a7971443baff48175a028626edfca4ca4b604d6d4c11923742970913a1e8570fed788dcb74ae68954311a60f10a2a1f023026e446567b53d6482cc4181dd2882d6feb87a9eace52ba27a5ebdf25af9366327c057e1fb47b16e409299621264cd7a10302047c435bb500683066023100fcb442c9b2ccb1d9dc2528ba84f34bbfdf02348cd06ca931a0c697787f54d59100df24183ef025f29f0b540d314132a7023100e6519b91fb39c8dd337a03038b1a0c8de71de7814528cb88f5d87adf63d73a008bb108a0c02e7afe17a81b05f0b206540302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ac3cc5eaaec137091edc9d19c0fc2fbbe2035b3f7e74897b13a48a657b9b5a464d923ce528f96f27a2433bf36b777965023100d35bb5cbeabc8fe0c37accb766495a7a78c4e98cc9ebadef30acd03847317dc2679496e9b9b3f9283a6495bcc0f8f1df0302047c435bb500663064023017c0bdbc6c1f3945bbe70842fdae9c81d21ec7ce1634f1036cd155612ea78bc68a69017368dcc882a2ac48cc190e196002303fa1d12f03f3154b83f2cb912ffc2015fa215c32b988a7cfdf39640205786ff7de0172fde3e1c72d48d075816476ce120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306a0a15ef846aeae3bfc729e04b77d424fcc08ce40834b058f8cbe476806285d8f23c5023a2fa28384f73fb41586a8e270230356c084ea8b7ac2d4dc5ef15b6d1817ecf63bd9a75d4e8cf17912970c84aa00937e46ea338c2ff17afa3c7b0e721b62f0302047c435bb500673065023100b8270535099dbaf2429fc6ab53409d09a380b43a54f6d337d2eaa154bd29bc6509de5e64a3fcefbe3f5883b2b49d85030230367e2040366854f994782cb8a6075e01fae5b4caae0b1b7549b7c33b3cfe25b0764d02d275e9b267f98d9c6ced71f8cc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303c730fecdbede0cac4730566ef9efd9511c207e76036279ee2ea7091a7614a4223c6fb755bcea8645b6c542f02d6f0c9023100893cee585ce092d5839beb0c20c05cc4d6fe4f42c00e2a87387f40522a8ea0c894b4391a4206427b41d799759ee2e8680302047c435bb500673065023100a6e3cb2c2230ff58a1e3dec2d0e9dc290f5b25f32af776e2617f2a0512a22cb7e06022eaff4ec363928244edf71647aa0230533ca0705008b4bcdd6dc5af2f0ce7ddadb2ca5b04b30f59a5e43db2ec58c97f8bc16836ee73a4ae480a3768fac17b870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a97924f4af00eb0b7f3bdc189275b86ec2968ba6fd69329160b5c1f21565f0cfb3c84fdc99ffc31507e7b67cc22c0a58023100ee5e59cb3e04146fdbe74724dd66f5cef892e4668b3b8e4914a9223455fc8015a5f86806156be6dd73ba42b3fc2105ed0302047c435bb5006630640230265781a40fb9c74d65ee00e258eb2a8fb5dbd532e43fa55226690555896f603e607bf1341ec542aae6f96c92f148609d0230719f8878dc71fb3655636350457270336c4186429249b6e149412a5f39ed76234d69c13b7e0c793eefc485c18cb3d03c0302047c435bb5006730650230322c46cf6c70a028f2fb0751609fe9969fe721b4bbf26c061f6d94c07209f2834f64893f79858ac9641a96b6409f3e30023100d18c8bbcbd771bf8ba4b6290740e3f86a39ae516c480aa69dccc792795609be0794014ff808f90904a7a66c9a93790e70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f17ab7a92cfe75e5ae2833ff26336ad90ffe3b30bb6980b42039aa6e0f183a2027023214177b58cf103588a72f332d1c02310085fb76c168d116d42fb85c126ef3b617b009ce0f63ca13276001795527747d279902b4e43f3f5046342ee78967a6105c0302047c435bb50067306502303912c33ab86610b112763986388272dde89c14fb82fd12052a207e384796215ee0887044e12fec93b7de3c487be4bbe2023100b1acc9c7b6f395dfe9d0f98514da6c866ed9cd20bfef34bf985e0bcdc4bf025f1cdcfcdd43331bf7357589a80eaaabeb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310080c145a55ddd6ad1014f3605403c14c5e651d86acff229f3eabe5f806d4fb41add83fc45b2cd247164102223ece9d350023100a01c511ebd0e2594cba2b58415bf03e3519415c6baff37f1dfcb8aa87104f1ef3a7e58689c4503cb60c9cdbb84ec38b10302047c435bb500683066023100a9c51af019565759ef1c069fd523fae29cc98f9d9c1458bf595174520f92066bf1bc6aaf47e1c8579fb8e5db1a0bcf310231008e1d41a8957c09b93f87ecef8a59ecf84d67bc5f1cb5feb19546dc43627a578d8acafa51bb31e648998416373327e14c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301900a17bfcb9223758c13f42e7c120da1c2bc274f5a56d699829931c5abbabff2307fded1e27788d8bca05f90ede9cf90230736d2fcc828af7a62303bc31f7dc92b660cfa86ea2c93fe89e1b30ad0556ef1f2dc6e00fbade55382761215289ef58810302047c435bb500663064023065a47488b277520c8a30559a9cbdbf8ef90fe9c8582059a9f228410ce0793d038a83de40dc36c8e49e0b17bf6a1ccaa402306053900fe09d4da2ead8a961de607d76b9b07fd1518d3f2a39c6e2ff03d8d416a6d55cb958dd254fb7fb204f7712ba750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230516ea587aacf2f1517618df22e88ad6668c25c358c7c4f330a32d69148255397c045af53246cdd23b7d9a5e7f96099b902305c00a402baed2440b13d3fde601335a9e2f2c354129ba3e162be4b980c307ea882fbd0c28fd9a0c96fc50a8426f831ec0302047c435bb500683066023100a4b7ec872c2daccb3b656ace9b4153578be3ba556de135a51294e10c13a905d755bbc1217357b9bb4365e7ee4e93d664023100b035a37a205f72e4c2a3f842f37f98121fe81471c708d20ce75dde3b4593255ab224de6369a05a53c329668284b0caa10302047c435bb50067306502310099993ed3d0de3c5916819bf62362f27d71ed0168e5ef82e6e67c47143afccd96bff213f7c014e375928e89845baeb1ba023028529ccda5dce52f14355be9f62ed5778bfcdd04d896ad09440cd9157ed4157e3bbc1d24253c845707d23c70e36f70590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230510b24c20ca69f9ef9671d5e790a26f4e57bf76c380410ca3da558c4a9d40c332909d63ee3f548d5966736e9daf2906a023100efcae69ed4eafb07450e7bb7bbb7f39d1576609370fc4195f3e1583cf6d25511ddd0c8ad3a28a9c7e6dfaedfc295109d0302047c435bb500663064023022a999c603369b378f7ae0402419a30082368e746e9612b8019bf947356899f5d733565b1c791618f5bbf8c16070061402300958b57f5265a389f71e7a7d33de0e3afb4b86339d46706320a79cc1c54098b9048ce973231d92a094897b13e632ab2e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d1f47e22e5317481b755e3509fd24e4ebbe4c9b11618f647ac738310f7177c44b25afbe66fa4e01f82fe5cb3c8241503023074e8fe47c184883dace04e1e36631d45cf0c371b5c701357b1cb0c6c734cdbe0eb1ff55abc81a875bc4d93a27eb0e0310302047c435bb5006630640230607dd2cace525549c90881771096876ce654fe9b84ad77705685dcf5c300a0a61cb42b77a4163ea7bbc99f05913ae65002303396a18b5aa9fab288fb6dffbac9c793d71d08a2b2908ad42f746b1c18bd16128b91df7318dc5111e4f61a3b6a642e770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c690779b9f68e35bdd7ec77b5d13a6028d66ff31ec07bb2212b01e89a8ca47e60eb1a8d61fc4191fe0ee538e4cf04b5302300c5342d949a7e3ef0f6672d755b8adcbb0de1dc0e0ca58f214a55ae99fe6f08ca51c475ee0dae5f682dff7e1189be87d0302047c435bb500673065023023ef64b1431697912c32ef15b3c17c9fdab6dbdff7a298d3c8de970c92c26bd70c7c820dbc258051daf577494c99bb640231008d8337b856be2d4dbb418482cb9f71478cfb754c4f68fae77144b68bd02b42b5fc2be787c55cc8c92f6eaaf04ece5dcc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008d67ae11d96b9ff0f0017dc1ec0b56bfbe44a3980492ed3d9168c69df743fa329b2231bb2522aebf4fd06a2633dac52e023025c59d4e4c2e3746fa80675691bcbf4704106c4fb510a0d2079b09772821e2cc293bf6e5eaddde8c835a5264c8e1839f0302047c435bb50067306502304516748e3948c0ccf4ce429a0fbbb43066a8ba1d1c9121cd8f5f56fed3b7c2c72d5dca3c8df28f6aedf21164dc8d9761023100c04ac19ad6734216dff4ff23f428b6468f188045ceaa9041cb28a0817c520e54eb89103bb8c08cd353fe7d50577dc4f10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230578e7e4e6a82a483c547a9ba3fe7df83a0688f3ae27379e2570650c604dc7556947d1cd2801d55770543916f37569deb023100c7d0222807e257cf10527ecf372058b819695f3ad2e271282d1a52456adf36d980b186b3549a7c8652a203a8bc0d91ee0302047c435bb500673065023100d83e0ca3eceb8e80daadc9b228b941ed563599c9270833ff2b8cf4c97871abd9a0d808d077252773ae8b3924d7d9c3aa023058d7fb394da567ea98623cc10fb863761770c64dd833294bda5bebb9a5989e8c34b726cf05e089cd0e51b589b1068fee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023011de9c6ba2b7483938dfe9721a86e0f16cc8c5451a288b2bb9a9b8f7ed3a32ba4dcccd445fdef6a4e4c1822641fe0c00023100fd87694cf54d1639bf4c8d3ea9e7d5d4ab8b9e0670644e980fc02fed9d80753650be2c1287465376b660c123824aeb270302047c435bb500683066023100e64599fdd094ea3bdb373a15d114998e9fbd53c6a64ef71e3a55dfbc9c78f32a82cd2d217beb455fc4ae8d8da95d3e1b023100ee0b1067ec35dea3be5eb93b549ce80c6d73f061cfeb588b6697efb81af2e34dde442ff83893b5fa6eefc1c1165999280302047c435bb50066306402306216f59dbdcfb9abd0ec6360dc2b415097cf583d1fda7ea6ec4ff6a1829b74058b9bf0271a183a4c13b1376a9f2237d002304347fc8dd820400eb4bdd8dcd26f3e9a4201bc6675ef25015517e0e5408b3fca3c2fea85b6a39943bb6a39f298b4f67a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023026feb433d67ceed216bcf4c6f3ff297bd01d9a32c68889fdfb34cdf04442dd3e28c8ea16e52186eeefa5523c775b2fd8023046138956333abafe3331d40be88a61be0f30aafeec857bd896fd3a25cb504c2745034971aec33555a3bc4b9b5f90f59a0302047c435bb5006630640230017d945c544d2eca7c173bbd4b7fccdf846a373b520481b0770d0ca0f3b85ced8b37617c0293550e55668e6cfb3d9213023065a5062f5da6b259d38afd409b1e1148abe13d7447a61b5b93f87192928f8af3f3f5e17768eba33e70b45073f82adba80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e325a9bcc48a274bf705636f795898e3185047d2e2924354f9d1644c989f848e02c135f5370e24df7d5a3eb83f06ef88023100d23432f3f4a569eaad203409add054dd6d599744aaeaa953ee9cdf3f8fc80d2868748d2b49691232d1fe1b53e4d3fc540302047c435bb50066306402305ad003b4af14c1604f7473bf6a711d5490d0d64bf85cfe3d66919d0b23ea3da2c8c4640b6a84fd7767d64cd2fe86ac6e023055004c2e3e393a86ef43189ff7a3321d6adc75db110e8ddfad324fd371a1398a36a825b1d5148bcd6391b52523ec59590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ee8d384a98d8f7530a6d7575d357235b03b10070256a819f93cbab580075d5d6ded319b982c4c4980a0bc3fdae99022b0230103a82500e50ef1217b61bb8cfbdea285d79ca7695535bfddc7e4b1f1cd66a563f63931ad4a232f99dba601b1a00ae360302047c435bb500673065023100e49ea03cacb2b5b75c7dffe04cbc0f19b9699b2262324451cedfc9a44578268eec03a55268cb734adc365acc8cee294b02307d1c7d839f3c8514c2a5886ab2944fe8d1300adb430c282263730bbc2a00dbfa52c66f5d4e99d06e5702968f26b07a110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306b97e354fb98fbe774d30290c9729cac50740374d9d95af70c841db674cf03adfe3b8cdc6c57252d22140f481cb24d22023100c5e2ca736c9802346ad4dc826ffcb16f1a906e08d0cbaef4173393e77d0d5938b3b04af8c117a4376e14ad40df281baf0302047c435bb500663064023060c9f1afa2ce342decaaf87893651739fc63bdcf8fa3abeda21f4957cb5bbde94fd297917bf8c37a711dd73545ca624b0230184cc3825372bbdf3a49e036bee02c5dd8f7f6f34c31966218009989e2a583297fad2f09ba1d0e1f3d24ff772a331e2c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d99447a264b7b03942357fad0497eb73a6ca2430a4b164b89ec1fcb95ae7792f6bffcd077a8abc70c6a49778f084f1bf023042ed7feb7e504b7be0db1fa82906363aca30d1dca05dff904dbf1ac184819ef853ca90857d7eefa93079fafdd7db88f30302047c435bb500683066023100be4a6743edc40530e2877d5f6fc5388721fbf3843ffc32f4247ad7f55fa3a5a8eeb83471a12d2f74364d4482648c8887023100edfcc22077d0b9e0dd88b2e9887e43bc3b049dcefee6f88ac39be58693f9e5015f705819d6f6340263e905802ef1cd850302047c435bb50066306402303a6828203f17454130210969f9fcd158393bc84f230d5bd0c701ee808be4639ac9ecd8272dd9caeb649237b1f7463ede023053472f2bed4982131ff6fd1f57701489a2f17f2cbfbacfd617a4222ead85b415dce908c233e098fe89671ac0b4a931dd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e06e44a6b497ce2dfc5f22356efb63b93859b1b0ac07c5c2c0aea2c5a16bb475fc106a4e7c70872e75ad8249bdeb1a6b023100dba60f708118ae2ce2024efa7fa5466887071f291c5aa33f1670a9edc316a45d8b945ca386cdabcd1a70f170224af0950302047c435bb500683066023100bb215697043be6d12303f866d4b044872e42208aed41bb1fb966545bb9aa8e8228262f9277cdc6b67f1531ef34a0657e023100882263ed495407bb018f25981d930d57aa79267b66132371554a4ac8800cfe3e6a4b10479432df0708dfcdf505e2de940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f67ccbea1182c9312dbc50f0d13cf18a9e8b7a944e742a8bee5cae7d40483e56504f083d89b3a387ab3fd205adb8ff77023100c38d4e4ded1dab0da4c839fa6f9b0533ddeb6e766c8c2a03ec5bf957cc8120cb020dbc185b0cd1e9a6d316c64c1f93490302047c435bb500663064023067983235a094c2d9ec7b7e82499bbe575882ba2ea07e0189db10ed21faa94d1e9fb2abda218eb893f5c4698d053554200230497b2a3a21f90d02a0f19f2cca90a9f6b9ac9df380249cb557bb70491c1c0a116dfdba4e2a29392a212489c7759cf7bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230357272ed5411f0af062ca4a1adb187c4b5727d2ff1b40122eeed584c00f6b5f1215125399d7481d77b59196a527a085d023035e2d0b9b961f50219be1287aef5f9fef7ca042d8ad09e91ab873df29d4a2c5bc60207876fc0738e82ccbe37d3c1c88c0302047c435bb50066306402302bb6fb64fc3d39eadfc32e2d4476a082c67c67125d3fa3763ddbda71ffc59732a2c67ca728257f24525b60fd3a1ecaec02303791061a8f24e4bea215349d660b5b091799007d01f75208613e246e779ebf0368d4b7a6bd1438b236540483a1e0946f0302047c435bb50067306502301e079bba004771091da287167feb60f4afadebd62d634929ebdf7e48e2636a53c2e371ff5c33c155e0ebbb33effce86102310090a73c9c32251cacf5a1a2520646a163078f4e23e9a17483ac5dd40bdbe72de76252000c768e62a7e51ea55ee5affa1d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023051ac9b6c93f3ea4e90927d24c02a7059a58aebd0448a1ee3e6928c74ca2ff9bc191bc40f0609e4a3a0a950d72dfcbfe4023100e6a5005f6ab4207333c78cb69f2b74dbf802180b3a6db8adabb3d0d76d613ac40c91ea0519a9b5fb9e5d68751433858f0302047c435bb500683066023100fb51444d343a9858de20fd9b598c92378e4f7b2ee26f68181c2f653b5ec8882f8c83ee281b33852d8aa16884699103b5023100f6440fb36dc230f7fd847240357ea971f085b000dee19c1dea1cd8878bb14109f67b223fae1262a09cd0831b2b01225c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c684c842fc3c0a70cedf6c04a5a43c70345576c0effd245e6212a186e35754d4f4318a5738419f5b6ce21eb5b42d1fdf02310083dafc693224533cadb64f72fbc240552df3ac6ea6d8c5c09d830d0f5177116274921ed8f13b9a60c3c5e400caa0d8920302047c435bb5006730650230375117caaae357ad5079c01d350d713f077e8cb7f1f6a2edb5ce042f268bf2412dd5fcc6f0451a56dc46d49b6f0b9dda023100a030898328133efd284fad07821301950aeee9c313bba2d74702a9902e4e6ac1ff572a00cb39bac0bf85b97b867609ac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302469d09a168fa4df86411f2fb21ec9278a65496cacc9a524fb970d55906e6368e0b231695795cd712510e32a7319fe7c023100a134836f13939260d4af41d9527e95302d82667cf49716c8bf95fea1752066635470f407aa5297fa9b9acc193829129e0302047c435bb50067306502300634f5e55990b24f138a3ac95aa579e59df491583cc7c946ce6460d067caa68f695bf52cbf2871d97c8da1383649ceb5023100d2c4bca9f50a05dd53e1c32ca7fe070f13f073cdffa1569faa38fadc0efdd760cbb6604d7fbf26cca2370936f24a32220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310082eb2d21d94b51a1a19b88653ef7cdd3dd7eb2deb68b9ef1029ebb76df34970cb0ca8cc2bcf127344439b6b0491ce2950231009b6731906ac724d7d9e2ac8ac35c1fb10c647d7f76f02119c5ecfc05aa33c25a20d56584100b49bf3af344da7513af360302047c435bb500673065023100ad7c705e6b78496344fc073bdde820374f99f880440cc3c9b4468be9f893811e25cc63c6538742808ea14fa5834e752e02302ead94c26ceca8deaff0f8377550520865a4d061ac10eb23e9f2b6d15571533095d7b6847ec524edffd16dc2a381e6d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023040e2c2041864f9d99af0edbe62752305ac2e7787dbd938ef3d35b8871c0308a179cfa47a78ca3bf1fef7025c24a8bbef02307a1f105cc45c58691db66108b0a9b7a8b51b71b86ab0a599864ebbacaee0de61867c96232775566ec95349c8208ea6550302047c435bb500683066023100f04355b6824ca0228cc9de7fb15ce16df622b848fa15a3e6428c8505bfd5899d016417c00e5efef1acc37bbbf651227d023100cb9b6ac79028fa5f1650a4568b729d7ffb30e2bce142704a179bca3a51ddca082b8ec0397a27b75d21e33d7a34003ece0302047c435bb500683066023100d5411b54e2c49ec7818f3e0488a6b92ca405a8833ade12f10e42d3bd84a4bf98fa3b658964467bfb17bcb0bac40ae1bd0231009b930969ecd025804b1d0b93262588ee9f2004d55ddb52795df24964276570400a1e5f2b51b5e111054e0777dcc26ca50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100826db0f20374bfc272b035f8acb642eeebf21dc4fadce26bc41bdaee927f1be59fce5ef135243bcd7b730f78d2d4e021023100ed50843980b7ee3e8fd4ea75e8c5e9e80934286093f920d28cb756c1955856abdde2eb0122552e7d736ddd52781c89820302047c435bb5006730650231008c9e0274a7d38a551fb09976bcc7901d9a808be3da5f43ad73ec3c0b11d05cb26ed1d7855574c7894f6d35f7a410ab11023012a59da9e6d046c42d2b431905602ce1f7e2c3834efdc1af63ea6d3cbfaa8dd34e6c54c86c4df94a76c1fb1fb1d440450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304f023d6cc9f075ec93acd1229677ab15ec5cbd12b7df642827886a71741e63940a00e891674af41a552c931b948e1a68023100f1e428ea6ce15e3ad0deb5c7d490c38ec41da2e2eddb2512c83389c6789fb92650a5481b64ea9234722aac6723805b610302047c435bb50067306502306fc28e27270fc953935133affe18c46f90785c6432314c6903af9c178503d0487c67601b5a8dc55afcedbcee78638f4d023100c5761bc47d94d32531233c4a33c49cadcbcba7661841ccf2e577d9bfaa7f5f77b41677763fdc88cf3803c8d15f0230380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dfce5af6511d0f236fda9048b30bf96ac1ffeedb9bfb61ead26c0da8df0b68dcb01ed05912710625ed01a58d2d3d269e02306e202d59d8ed72bae1232ec51f3615378e273037faecad4bd4124fd398b4985047cc54e288c99fa0fa2503ac6c83eb610302047c435bb500673065023007f199fa469595802db0d9d4db20c3f43079e49e4882d4841ce1dc5329be537c670dbe2a7e2f016507dc3c691aa8b541023100cc981639e8ce3b03f6b50b212f61fc489da20279702b1d779866cbe6f943119748bf3e7bcbc7b41f5b38cfdaf8a16f670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008644e257e566a14bb12c13ec5e4e739e25fc30ba19fc31a5eb5b08572bd036f26cca08d89b4c1c4cad63261f8a7c40460230552ebea5bc80a906c7eb8fbdd0803c994277de8d285cd287750fd9a561728e790ddfd9c7c2e1d6ba87163c83e3109a1d0302047c435bb50067306502300d91a06161d514f48731af244cc2839434ade9102ce0fd140b54336df52e0a8603c88de90fea20a3c0995d182e280f730231008dfbdfdd09ea6b7889fbe066b912785c35b92f10f77dcfebb061685c3f737eac7e3c1b7b3f2b99f3f37c3f61dad285c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fba73988b7afba7db4aa659b7880ff740f6bac98d8cbb26fc2a91480a4a44a35ece2e7ea07ecb020914fccdfb187445e0230025a441c22f8836c34201c924f663adb449fb04517636afa82692264a360ea843415b48f5d02aa8ad1ed5d973a7925ea0302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023051a71bae23447c8d4ee7dffd091f7e0e3158259b7848e8eb2128fe03362d6c3f1274eb4a02a022855f0e952050a53e40023100e31976c3419a1ad0cc31f1d404d3e889010c2e2f38e8c4c5046317f26bfb1b4dc976779cd8e9da50e32a1f803fe693f10302047c435bb5006630640230295861ac6114f361d8974810fa2ea0bf456bda2fee36d2e1a56ab6913114a2659271a52104476f2573c55c313ec1f5f602300467a0fa287396c1acd21ad4dcc98f4b171d50a056ae26e51ce7d2a75f7ba19fc71b0dc03c45b926865cb4b72f5d3c0e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bd81c811748cc4de2704e7c02c54b0517b8caa493da7b931160e270ff6ea723a4511be9623407df7e5ba20b44df3c875023100bdf297fabf23f6a97432a3d1a3b6e8cc4eabf93150946e6d3a7862e8877544c5b4a26740d500e4d5a4061915cc1e73770302047c435bb500673065023013818aa10dac0c960fdbbce6e1d98971c17b480c91ef70cb047dded113824b84cdf3f968e7c59cf993001b4f68b414e8023100c50753699a31b533a8fc974f0e92a39329e2861cd1e40ac15b276008dec8efcbea6987ee6b3fdbdd10e995c7b698432c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310080cb05055b75d16b26a6fd23826716ab6058407b6b8eaa8c9eca7af51414d771e64783d2f37aa21d88fe8c2c664640f2023100a9bcf399dc6b52dbbd975b0fd8ace866288137ed65a92331197b6e88d2603073c33bc2a91c39f48ffb3433ab96823cc70302047c435bb50067306502307486024f8e2de7b62410b612e07faaad932ab5340db470b971d56544d7e905bffb7b5717572e99417e2bc66fb03b37b8023100d0fa8a36d9a015c72ce79a6eb8c252224f3682093c9c0f4110e789615aea7af308fd6e8675116cc35f584a3df27f62d80302047c435bb500683066023100d5411b54e2c49ec7818f3e0488a6b92ca405a8833ade12f10e42d3bd84a4bf98fa3b658964467bfb17bcb0bac40ae1bd0231009b930969ecd025804b1d0b93262588ee9f2004d55ddb52795df24964276570400a1e5f2b51b5e111054e0777dcc26ca50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ab8eda54e7020c3b3cd9432363e2b777d62a8c8eaed5d3406ceb0a28e4205937e083b16a8fcb89da53c624fe4add63bc02306aea3b253fbaba94494f53195bed864e4a6d8e604af52433105351a76be7c080b498e9827d105d78aefbbc3139b7177b0302047c435bb500683066023100ce7d7a14ff494b70cc5c346322fa8851386083dbf6903918fad872674ed396b26358fb28d594e91b17855b80db490a1c02310091ed26db600fcb0a44cfc0811108911db12211db5b5882e7c8c5891abe76054cf9cd3ad57d65f301617775e451b743bd0302047c435bb500683066023100fd97320dcc8fce86d8102bb009c89e27c2cc32c6b3af23d39971acd3f26c50ff977f76ba20bd5bb406f207ceb2ed81ef0231008553a24aee2592061e18a9282fb4f3f3760723c6337873424bc2ec610733c0cefd8d4dc60a0526528b701c56e139a67e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023043d200ae2a465e782354691cf72b7ad52d06baca58a27061a4d161f97a55305ba0aec9bbd0249972a8034300d7647556023100fff4162660f8fcfeb32c47ef8490b92972e9d0be8b15b3b211f9909d415b98d6776346ec30b88405a6f07c9645e527bf0302047c435bb50067306502307d4df54894ed619412cf5d75e123580b4aa76d266ffbd3436557cfa9f1943f05b69f801291f443f544e05708c6212081023100ca4bf5b8f394d278a722c744cd2ea75c5ccf776ee79ad0b2eff1db73447c4f359bb86970e81c078103f2d2b787dd4fe40302047c435bb5006630640230744194ceaf0758b1924474ec013dc8605f897e7841aedef41d3f14dc529477bda22b65be6fa5179ce024f6e1a0660d1102303599ebe517db614fff85b857416d561a3abb05eabcff09bdcfb0c8d1603fc2e453b95f0baac7409f1e5304d52b03a1220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301a630fa565a71d2c6b427c9525d2d03e7a3a54202d8492d8209fbb1e7f51cb5824c2b24025bd2474cc3a7748a3d6628c023100c3d00d895fd9a33aa2e3dcd05b3dedfcc9fb1bee863af5503af7db4e40c66b9de83751190caa8da81e83698a65fc80fc0302047c435bb500673065023100ec1e98936a606935bc003a90272f6109ecf1e7523538620731737cbb7fe0b33d9b9d1a1fd811bf1bdb56e3be2589470e02301f7d7346cb0b460bda9d38fa101efd3022593ed8c90b04c64a1a2932b623dd85b06e3a0df40aa291cc8d428080a24f1c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100931784db8fbfcf2110457bacbdb3c413e28809b742851a45c419973712c732815e0313d0a3482648db8618a6d511712a023100cb129565c18b1896ba4a53bbcf0d1a3b5f4b5cc0a79a7e2d36d09f555adcad837ae068a18837fd00e72efb96e0803bd30302047c435bb500683066023100c9a4ebe394190a1e2d775ed5b25dcbbb4c67b5438c9c8276f8f066078e718f98c879d2414ff6ab098d44f226e863adc9023100add150f04163c50bc23d8b3ffbf126ff392eb376a83eedc9ddb596eb5e318c7789ca9ea404155141c553d102e3d6a8c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fe25ada22cc447bc48c28758e6a7efa9430f8b913f2f35f0dfeb643b6e4217da8e3b74773c469e303da19aa604e0c1390231008fbb00c92140e6bd2f4d7120aec5612bcaa7139e7b6aa39279689bba1369128d34b7c21fa7413e1413923cbbf64c86840302047c435bb500673065023100aefc3b823afe28b6cf0b5d537d22aa8ccf73ac318382f3f9db578e4b4b391f511708d1b3d50b56c331ba5801feb9fa4b02306c0998ad1e02525de0ae6c9342f44dd2e271e683af8f08ecf34944d76f0c0a07f069abc4860a04d14d05a625f2b3a97b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ebee69701036ef7d027a3c13a4fc2e1d77f92747671be3f1f747688b78ee60c67682e458370c4dd0f0fc38101ad94aa9023066a88218e3d570d37fbde835e7d1e7fb7af80b5d8d4f790510a48be2562fc8172bb955027086347be9b562e08b82ae080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a7dc69f09d174b32214e32dbaa6d952863222dec78b3e02b89fbef9a17dcdb8e2993ba2ecff7bac062b3d5a8a3065a2f0230438367dbdc485b6424329f95b549a0e062035196cd1c95351f0dea8807c62e18fbcbc5b9aeb6fe402d2ffba59f0f1ac30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304b9a71c49be5be78a8b658671bf553e3ceca4e557fc6ffe3167ee94f886a4ed3c89c18354c54aade6d0870e8accce58302304c1125c6e52fd9a56384ad2fc4b2ebcb3287eceb8e36ba9d7d7a4a7a1ee7cec80ef3413207cb7267bcbea66c73977c9c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f725015794ea4592b7a73411c4c41514a0a7c92398bfd7070adf231dbfde0666a8218de280d332b892b51a0952a61f1502301788619c4e81227955eed48a35ad68b3cce75581748dc6eef70a71aa3847d08ebd0b38d1ce52fe8ca060fd72f52a32110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230079718cb50201e468dd5ac3c54450a89dc01163fb14e087f5a65c2115637d529352a1c1748a2e55da9b2db5df1a3ebc8023100aa7bc57f4f4b5eaf4623e2062b9a98402a553e8dc31d7abe6375bbcaff79f496003eacce1ac090a37117250c05de086b0302047c435bb500673065023100ecd4bf213032bc108ea57dd15dc71339f150a0e7d7a8d1b226790a0d80df242ff5846a757a05f0786bfd8b02f4c2c03802302a0294e966950fb25d2cf81e782de1328f54fe413c10d84cb27919340417625ca892712331d07f4b7748d39b234610890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302e4e711d4961ef428e068093a7be839d53b59a2c04c9f596b2e876ce95b4c655e2ea220703adacdeb4ae96eeb7c82565023069598ce42e62f6bea52fa1cc9c7df0206e2967a79b094064be4dfbc5e3cc0c28751e83804a6c243ce55f6e63122121690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300f1aacf754127e8037141f9b9a9b992a737e892a3e4f3a12291879a68ba4aa849393a73882c72126ee6c701e5b273211023008df5c9b2710916b5bcefcaa16ac6e59572794572e78b990da2e1ad45004141dbcff9d5f9b3aa6a004199db0cde4a2dd0302047c435bb500673065023100afa955ff0d06d08f7684f5b14fc193f2e670a7e7f62d250ad507707afb864f09d879579a4daea7b47e3d442fc59c1dab02303d35794b8d225bbd27441e91171c3bb0db03832383922d85e6a2678e67624afb5f7c95ab20c760b218c088015f27a62c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e1bbd701d9207c53dc4b41b6c65f4102413f4d072a531018b51e25354dffadbee5ee2e839b7081ebfff3c15480231d2c02306353adbd2a72656ee7af343f0fa94195f191dcac82c8a704eb6a5ba46a63adb784ff1f3a498e64d95f0fd37b09780b1b0302047c435bb50067306502301fb5b1a526f47f9f9c0bd9724eefbfaf57e21835efcecaa34a93fad3b8c1c2f9eb2452d29278c4b311e39e1cf6bf76ef023100d15abda7f17f607336861cb4a7a7b9b8bde55ee6b75d538b003d7ef5eaee32ae3cde742966603662502a1dc4354000490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230645d541429e12b67914b0d64810322c12a6c6ee312a89328eaa5190fbb1b9e1ae77e865bb46e0448cda9d9516a467fea0230097ec9199834a2134e06930dc6f25c09b2b6a0fd455c71adae2fec1cf6d9d7b32784bb4620ac6de77ee064938b318c530302047c435bb50067306502307497d5c56df9c64c64c6e4cb620ea5f49d923b7011fd1b20743488a43b4b8b7cf7d06c30a6bd6b84a3a0d58471fc1eeb023100eb1eb562659c2bf4cf043a9459561e4ef1227f95b27ec625bb3754f06e5bd15c95a88cb6311ca16119b60b587bfe5cfe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300196fc8849fb83b7a9ecc9ff305c0aa34989583df2d3fc91ba6458a959b96f0731ae57d72f760d0dac90f6c9c56517a6023100bbd74c23e3e265eee6abec9f3ba5008c574bc4a753c7f160d37f6c214bc793eed4f56f068d86aa00509d9ba33407d7360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023039b70e4094a2b9153c70ddbf925fc7c07826d1e9a4d10fc1a052f0987a8a035c2ce1c00e5a084f365108219e0f3a6f78023071d6ab3151e74baf5b65c68f79da3cf900428e7395c60bac9508e55388abe36979c985781e133c80c06b754f6a2a60b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c456bc4607baf18b01b14ee02d7a798667b5b18f66ebcf5e27c453163516bcc53965042d5f3f62c82c054ec2caef6db5023100b9d29fa824b77a9993d79be87719a1480bedf0db2f52912568697a07754a6eed1cb0ca5a56c27f6335b614cfd7d266240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023016a486405b8cdccd7755a5be432b3eeb8b76b7c8073f7baac6aad3db99e5b7ca36d4685b55d61b8b11cf202aa68bd218023100971163e4ddbad28dd57b784ae2b4b2f3b4007087b2751c67ac893a3ba5164a404e07c8932371b61195d00d6d24f01ad40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230133995ddaf07bda8cd40a5de0e6bba62646c9155c50721f1b98fad639e44c6f8ecda39a19fd1be266c76425dc1567cf4023100f18090eb5ab1c9ac5c2bef505478b982a410972515d2f22929af2d14d6affe34e7443536e27fdb9aa79ac1f4093e22810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023005c6fedb8432d6dc938407ad3975da1e31cb1fd00ca19707ee3287cc75c233459d40fcad130c2acd192a4ca93e82838a023100e8b78486945e91473a48b1805c6725abd65386bfa8739275a66f7a1f9603db449419f2cd66af7ad96ff6d61dc72d5f570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307109e0095bb0953104172aa56389f3b435fb6eaaf00d4e35f1cc5e88f992704999e936886ba5c7e44eff8d8c30f1388c023019cc9a78f80130ef23dc0fac68b7bba6c18475c6ccbc68f37ef88468d106243d9823050900165b5346dd36f4d47320230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230755ec5f9c3c363ad27142de10d9d1d947a82ed43619bdc412101d653078f267bd60c93bba15fb6097aee7939e9c261ab023018dd974ec4878bd205359fe50cda90bc9ba258804e5a0e239c17fa2f458e28116d6da223d6a28c07324f4991243fe8780302047c435bb50067306502310090d6936158bd50d3458d9140bdd6a3c9f28afe7afda785996756b8ca7f5b3e9c6e340c8aa30eb4df8a7089faf83db99702300d205c3f04c5cec72b1f22978bb6eaa991d9a98c39f81fcd0c0682627f962a67a3ec76a4a713e3699ba0d18273d559400302047c435bb50067306502302311cbd5fa941016dd95cc9b85c1ae490d6afbb6aa099b2d4346d4cfa0c9c6e2e685949a4882fa42b608feec5993f616023100bf4b67ac3b1a291ccc79f18265f723511f1064946cac6649724b7914ec1ee14b083c6a61149ee254a8cd32d74114427e0302047c435bb500663064023029f2bdccd984077984aa170033dcbf9db6fd393448997fa687c132176b087b933e59cc01c7d44a6c8f58007e0157fdbb0230482221396af4c826312c1db2247c239113b66bc597b00efccac7953ad381fecebd6ab37a609f2381c06034616ecd03140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023045452d4fc82bae8032dda5371be59d99b19cd7dd13cbc5b1b0868ecc35bd044c7848db698f960e0740317834c5cc08e80231009a71ab030e6a9ea15f6b02b9a794b562a359a370a9f4caf00d72397285b70cc7a1645e6f18d99b602f4ff220f6114e330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023075ab05d5a89ae62bfe0219eebb83ebba7375f51d1f7d84433b1a2b7e99a024c52539eafcabc714bfc19498fe7d6f31a2023072bcc3e5d68a17e7cd62e76c39bc36f66385128702d4006e1d216aa5909e44e39d1e966a2bccc716b845db62c26e07760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306265ce55d5d1d5e39e9c9c34bbf399789ebffdd84dd50df96dab308ffe299611e48b3e4a2d72b3e59975b70b14096922023100f9fb3603bb6587b2a1631a40021ffa2cdb9c3d7af029939712c757c5a7c9002bab15b461f75da41ace397557b0d7589a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310081915508a55c646368e6872d74af97d160e1c753f9c956f4040754028d125dfd0892cd82eb02d45b33e41a36aec38394023051b70367269eec8ff455274cf85d5bd9bb16e99bdfd3620f16a2568b5e49968929e88eb325c349c926e192b857beb60f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310097eacd6fe173d7093463e672c36cc9a4459ff64cee3995610f19b84a17ce57105b5e35b2f7061e7eff855c8e631c3909023100b2da4e60c082baa8ccd5836400205c7fb13b23896211e346e43c014ccdae536ce9280a189d025148492f43dc7e719b920302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fc2a4d9f208db467f19dc3f709d740cc0d6e9f4d4dd2c65a97daa3d564092f601d0d0cb28576ac6819c9c5c57c220fbf0231008ea49f3c3df610b83bd085ca181a10eab2d5743cad2435152a98b728253cfb7713f9df9d803fea3c9eb1c0a49d2edd390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bc73f38c8cb8abdc503249ceb29dfebddad88c03ff789a2728e19cce67cc272d11785d3334ddc0a19c4f419bb330b8cb023100b4725cb6f876bc458888867d3f3fb33aa2510e3b100186117b40066660fbe9e528dd33840a647ce569250cf2d66af2180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023047c2df27123c553646e82c1fac60ab3ff781432add7b9acc57c1fb3b578c4f458761cbe63bc94421895391c87d7a1966023100f73d2edba3f79c81cb698e63e9ed557820390316b4547a41fc1ac9d629004cfc7f4a99479079f7e188266d4796c8f0980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023058960f3ce3ee8422815b3d0de46aca5a9c6cbe3252156bf807506b548facc489ad28131ccb5df77e71165369578c922502302a17f73c877dda1567ec1c1c32f8edbff00d900cb37213628ab6f466d3eeeac034324448507afa8e1b6b969d6585e6070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e0cbcebb2be01dcd4c000788479d45911d69b4efab1ecf4d9e23b2d8c175f8ed3d12585f690619c264ef6894be9a029d023100a1d7f38720569cc3bc140012cabd1f8c827ed3d27e2f213840f228def303319ce15ff9ba9e466211e787fb5cf25163a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e38d6cd81de3549ead5c052d9e0e7ce1096a2a673059a2353f92bf6d35acea3d14bcfa4cf5472dedef436f313fcf4eda023074c35503c5f38f09600d265b7431b0e7dc3e39facd7aedb043d92ddcd069f606b7d6770f3decb31ebc4aee7e668aff560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230709f9539236d2e52af0dabac660f176d69d7c3b7016e54a84ef26ca7675e3dfbef42bd6d29dd16ac8fed7d959e506b1702302ad43514343a023b2eac89e03d05f9435f2676fa295a19b6e8a6f50698b11a4fe7aec0fd15ce72d3f384c23779cf95150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230518cb99dcd9ddb16fae5b471faad0b7da8e063c802f37a6bba98a6575373b60713fd959619e31cf62b2fbcf127418c1f023100fb08a822236afb84333d3fad50f1e63127f3674364c7478688741d9ad2520565f1ed8a61987d7b35dd212253970190c70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301ef6181a2cbb47ebf244cb909fbf0e4cb2cbab2cd6689f1f2181ea60ba7e5814248c5c0235734a25752242f599b5223d02300a2146ce4f92097cdfd829c6462f41041d1fb9feb07dab7e6e6038ea3c3e92b0b0f7fdd5f58aa23e390886af5ab3f8120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100996164e07742dab3c26a78a536dbac17a4159dc58c7471ba1afbb03e5771bfa46c7b32c7453abc895d7a76ef91cc387302310085946f074449054e6c799b7467792f00c980a3242fc7aa9f28ace3231211c7f5483648a7fc80dcb72d0494f3257af5eb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ccac95c2e191c140ee37a9288529ed5bd1f95e949c1cf1bbef36a3fefd99aae0e84749dc670a19682bb357e900112a2c023005113530552814addf2148a78b50eb0b3adf835983625d44cc96203ac3eca6ea878bb75c9127bed0b13a3aa399f98cd00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023056016e687af8cc45e9026b6830062546561843fedb185cd10ce5b2e030a8db8c0cd18e3483f1603017d6708fc0f3dcae0230467a1a074bf680ed0a28c885aabcc786625e2bcfa734b6f87244f53c0980607759c6c1c1be91542cd28cc1addd4b33810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100de2a4ee769394b46b238a0898172df7f2a2a00e51ade64a193b9885ca86784b78708a0d147136c8ccfa9b00850c0efe3023100eec28a38b3a68e87ef836f2a3df677c11f2edc4c225af017eb269ccdf08f9120541d3055d91d1fd6192ee8e51bf84c720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306f45ed6d0675cd513c2e8e8162feec8bbdb68b0b236992372f314eddf405622f344654b23c905c2754bfa3c825a949f10230712bf1de7d08b7ff60cd007cd94ea31edc75aa4186c73090800e3e2110ba84cd33818f190f67ef124ed7e281d5a2ba3a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eacffa49f188716ea80d71d70992e13280fa56c644fd675186d4d5e4339eb554f3d20d20ee4a1ef96265af8924945c530231009b3de269d222774c6da004874b34f8e9cb4c8b56db7241dbb8783ab2b9307c1382f4656e787825b645d12b8638078dd40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f81f1e88b2e53a1b1f217d86a42d21954b75b9cdce45b19508b91c2da338b903159ea5ed40dd3c329a65c133f0e7c2d80230248f4ebede4581dda5972e86f3c639ae395ca816e6e17d9ce6b0fcb53eaee499f58ea1c09b0683a3e179db240c6769280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306e0fc6956142424f12ecced7f0c8d276e7b1bca442266543eed14cdbbb821fd7829bd90634afd2351528a0cc716e9d6f02300e2803af9487966459540b705132a5ccaf47de4a4b6b24b2b129aa067847fbc36e9eb9a7b9d4fc9bd3ca3a7be87dbc120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e4d39bf47969b3e5493b44076cbdb7e1fa18cf732dfb7910c2c008779e965e5175317b96bfb6c757141e2f14137639a3023023715abdddfb36988d91b15a240fdfdda10fe3fbddd52560bc527cfacbe2ae0001538d71e27c0cf5a3f6413b9265d4530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cea53f8d2bf5e89747a6be72e774b5b0c7757e8a0482bbf87d1738e2ceef575427dc5c4b517760c446b162857ef9e0b0023100b9b5859f62164267b98e47839ced9204f786ba0240a458f840f0ca36bdd02dbba4a22a97ef1f9ffbe67963a8517d906e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bf70e12c4e5f8c2bad97f1031293d07e2b0d903d5cb799601251c67dd1202be05ff43ab415c030399ee86e63bb5e204602310086bc6d31afb9a0864c7461ceb13bbea5315eb38740dbfe6d53c26ae7050c791ea7884b7f9c87d3881691f7fee3b87de40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c10e7b94e54f60be8f8f231db345a1b63cb3a20499586fcab6fa2f66201aee6b233ce5cc2ce55904700454d9da755f3602301cd9203df8d008270aa625a36c4c15ca48c6e33e8acac374c6fe8810d3c0fe425fe99050da84e29d625c356d244fb9a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310086a229482fd71b90f8992fa57c6b5f4b540e8067deae0258ea32f82c29b85ea712cd025d37d853843d3090160c632d20023100e54c445537f7a41599a2d2eea70be4406a81faba16d7c3c5b6871adedfd414e3962a3d2e6d0463aabee9cfec9c39f88b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230357a892c9bb85ca725d1a5d3493deb54ac88c9cf2a86bf10d4e21a2403b3f9e3703be6085511771f7143bc8c9f23c07a0231008bcbdcb376e0401a92609e1fd804bfacc6a6f3f6fbf851ae59b04e51a2b0f75602735b8eb7fc7f178bc4462be2f02de70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b73c40302bf166714eb2578a3c8c8d0d189336215eab3702f3728478deee6454dba177828b622d0434872248dd07445202301602dddd85ec603aa8020ae8224286df85b4af581e9f0c4f62281482a0cd1d5655303fd05795d1ad86f5b05bb6ee553d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f2fda5ff33030247bcc65fcfdbf8ecb5ee192a892ada35a378fbdeb9f6efcd00f07613bb34bd4cb72388a6269786b7b6023100de830bae640c1051154e5bf456ed70bfeb57982a275b5908fe8c1bb4600bc6fddb24fdb0fcb3abafb8d3cd2d89aeb0410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230444c26b1d8bc6673103cbdbe57e7f883342456b753a924bfd07313f4f3d8cb9c240bce6d6f949806a04efca1b16eaea0023100a4af7134231e86e161ae9587cd72aecb495e147156a4c578cc8ae15711e4816ec79a3ab1d7b5e78769a03c0e547b0ec20302047c435bb500683066023100c10bd860d8087295dcd13fa57778bfa95f1b61108abe15a02a39308f9aad7964f01c1b691a34b16403910d9a5eaa829e023100e578826ac0c0c8582ec29ce455863bea6582a494bb7fec32a87a02d95c4a442589d71dcc803094829e61a8e1ce148c5e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230208a8bc21a1a7945b2026a635bf2f0b55d3dd4c9dd24e86997108e6c87bce1bdf372516c97b802f37458227318405a3702306436013d9df119894add82ed1f87c06979b7e058bde3933ba654fd80120983fb786689c2d66a2c83d96edb2350807b680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ebd21542b617e37d71d67db04342b5f7c68e868b3c6407b4bd600f55fb3ff880a3fc8f5bdc1ba001c1f58e8d4dd5cdde023002361861d88058ccb386b24d43d5dc15dd8674d0405e7c8ac1c2fd1dd2ce3a06e93bfc68ee2322826c71d113c19491c40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303bf203d61a85da268bf6c60f65f6eaf838fe17c2d74776ada9de2951fe2f67bba494db604365dd5cc58cb6003783dd40023100ef6f6ba3211bef2b77651dd10ff74cb97804eca5df23a3e42c011760f9c102b14510e54e6caf364d15cc525abe7d900c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310090ab18ec85c16f5b8d9c4bcfd2eaeaec6b7b0fdac8fe98ac78191707b693b10ecfed5df99618be1b306dcb38a60e059002303cd37b892b735abb8f3d3faa8a3645ff7c8bea300d350acb190527a885a6780f91838df56ccd42b6b350940a0a2001d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a663c3d8363992a29c19e5eb0d592d7fd33708edd9630ce51c284fe5444b462405ee77eda0ad16fedcea43589622cadf0230140b894f2304c394a8f062d5fc6e3fedc54238fdc3b17d51815971d6f02980f76aad517455d756c9ee47de52c38c709e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307be40a4fa3a7b7c2fcfbcf9217ce13f7a3b4b0e5b67ba3a2516fa5451b95ef88a84a65fd6722416d0326b1091e6762dc023100ddaddb6ff32e327d59a954c05210991d33ffbecc5dfc5c081599cf2599c8468349a992eb9336abceda73443b69ebfd000302047c435bb5006830660231009f9e4bb6e7a1888af131ef9a9f4ca0b0cb7c4afd92a915fe96cc4bef9d42036d684ff6c64097bba55aa19468676d517402310082b80ccb582a60122859270d9313d5d10504918e9ac803492de4e90f43871979fa7de76bda7fc3f838fb795a9def33530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302a07691bd3438a1348707e49c6871c5aef988af373330f88644ac4d1ac57015f886d2e854f5530edd4408a08d4738e59023100ccdd0ba4d8d3c5c8e8e0769e4c4cee0b4113f721ad6b9c0fa05dbfd3fb98e26423778078b8ef7543e7694f9f93f62ee80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306259bfb5d6aaafd1f13fc6871fe86c8c06341b6b135b6919eb75cb6211a296ab3b8cfacdda5b40a4e49b9a0ce1d89cf80230641ec45dfbb7f3b0c5eceb024295c83445e9fd5aa9544e521272b604d1c5bc100b78fe8c94d765fda29c000342ed6ec10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fcea03350f9e27c6e32c283a0da40e18cbc3625e4979cd31dbb57a164c61a01baf66de974fbc6b33e5a9de18ee52810f023100f270b7835a9dddb3b1f8f4fc3847c86fac656410f6d24197869a00aa4f6572db33ba2a52e72b35c89f6b981f21ec03940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307ebdd7360733c4233cb350337469858862b61ecc887dbb474e71d5c25e2955cef289713012f05b5c75a42549c93c7065023100f1562d13dff479ca5007a92f8952733ba4b68a28cee503bafd56d19be48a3efc633dbc77d80344a3d314d68cf97fdb450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a71c1baa706fca5f7c452b7eebb8a54956258569eb2c0fa8863a6d86f2ea2553d1fd38edcd80e15f0a1fcac4b11c4cff0230385dd228462f1881e838acbb654e61105f3570b62c7242fdb25f7e5b783a54c51b8f2e50d5d013ac35e90ab7557f49080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023022da87251ee485fe68b63aec36f403e7809a66fe275aecebcb957b2aa554a9d8ef8b65892693cdb4ea90613673aa2d60023071b11721fa09d55f16cf3cbcff83b93b26bbde3660dc9caac2d30eaf4aeb18d19973b92be69bde1d6d84d615ee3dc35d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023043ff733eee8c0fad10b9a5adbda090a456a9bc3fe371e69850e4e3580da6f5bd85860e414fe0292ce2bfa45cf488639c0230529c228a267578dff9ffe9646da445c6f59d9f0b798701ed9615cdb76c2634bfeface0313eb4f04b936ef462f6eabead0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a145c6c721696b4c86bde92b196b0f911137cf210afcea714170ff8b4b955f209df619bf48e08a49fa25dd02a0631914023100dd616fbfc3d0de00869b90034d2c2553f79f6476a5be70099be5afdddab8ffeac03992664412b8159a4f1e9e37a9d2c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a8cc08e8ba2ef537b12cb5435cbac0b36356656a0a97ff113b3a43dd4ec88e698107ce1238166472fc27d16a37cc81a0023100d70ad85fbe13710656462f76a5e439329f1885a68d620dc39bc15037dda926200437ad117da43abb3e72513196bc93040302047c435bb50067306502307214d7949ebaadfbc0ec8e1d571adb080e4406ca4457945ed72968fe35f2bdf5a29f6f8ce1363401c860182a975e7b79023100a855234c77beb8a459a4f96aed832ab1a9cedc425abe9ac9a564c3d847e0f7d5809c22d369ed3418d80a613e1e5a64560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d2681c4554b3b752882f27c7adbafafeca5bc86e9323bbbbd6d4273920d5b370a385fa9132bd293d15365f876c721f98023100ece416317bbb896499190106c587454898f4c5c37a62292c1261e40fc37b9c393bd88fab42d0720d96456206b2d81a610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dc13fc581cbc0e021d9585bdcb6b884cc918327ef77c99e130cf4ac58064ce0044e31a1bf5f34ce2681a889f952c4b7502303c32f81819d5c96a9ec0b4437447794539858a655002f50dad203d645649e9df51539ab433dad7bb03461019e2e02ec70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100afbba56b11ce890f4a562ed83ca5276622b630a937f9410c2775302fd2b95fbb9a94a315138fd73c74d79338f9482280023024e1de34e2bbbf62c71dc78c109a80ee6e22d0b889bb874e4c0d76821286532454c88fd60f7c629963515a031c0a73c40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100af384bb9ab2fc74277d144b7642a400acabd4002af0738b77e61e9437ab63112e569bf9923588a18d5e7437e8ad7528b023100871b9b30bee27f4607efd7e6e357e1006ad14c98132a35efed0a953095115ba6384f711c4e73ada6f8f0ba53bdb08ef20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ab9a2f30f72b72924fcf6f205140e9d50574aea4c669575015c660ee5b9d3e961b28b4d8ac198056ed70717c7732f4d9023100dc4baaf586ace39698cbdf4ba34349342c801b5316f2d3532d82a8014691cac4b4f17b465c945aaca2378c04640c69fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303d59879e22106a61b6f531f4788c44619d820af5c33fb79c7ecd825a4ab8091ab22ef3de3c50ee8b7d064f0fd549b9350231008d1767da77f3ee1ccba03d21d9d5e1635be434566d1690e2cf9ea4dab2be549350a5af8d839a3345e946b02f2d6dd3a10302047c435bb5006730650231008fbd38b15ddf0af0f0cbdf27e890ef80775ea07f91353bc4998cb4c5f8fb72e87aee7157c6dfbf326863091e2333f8ad023033fcce34587da5e509d8b641932eadd25d62390be9e11478eeb780500b9dce61c1196a4f36c3df0bfc9c951e945f70270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e5752693daac6a746a4eee8adf53b1e28bb31a59d4785c3f89cca0bc3f5314838bbec1cdc6ef6e1e8e85504539e9731f023070df3df01261c164f1e7d56d70b59cc8459355f44aa88e3924d560f4b6ea6a058387a8bb2fdb71701f35e236e9699a430302047c435bb500673065023100d1131d1fff53696aa851132a7d8810a0210abdd0442180618a56c0e49799e62bc4deb7356a511c7e99cae36ca199e06a0230150ede1f8b705960cf91ac401d447f6b25fff9199ca7d17492cdbad962211f23ba41a66de59ad4462752775b10409bb20302047c435bb50067306502306d018744432ad2c39fd52245e07a208a1dc2320d5b7a73537cea853ec37878d40e095e000c5188fdef9379b7eeaba092023100bdda9ba0446d6ac889516f5d1b3d0e8274f260265009d6daf177a38deb76b6cb5c1994b7e5a576621f1e076810dea8130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023015797ed7a54f8ae087ef970732e5f704af8e60654f8dc131c32c0d4d499d0560d96676ade0be1781bc07b7a9a30b3ac9023016b630a7e299119e20009616e0515583944b4effc83c8667941850a9c614a947b3d01b6f18be829e4b77320c6ccedb5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023029bf691e1f7793496137e65c3a8a148bfbc4cca5508f5969493c44a7744d97107fffaad1788692b3077361a62e58ad2402307f8d896c0fcce0d99fe2247767edaf3345da21c6a27d9c07d4aaf6965d0e76238fa2ab128585bc1796cc2305290cba4b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f5710118195a843619a7514cf3e58369a83286b9080a91a833e46f64c2a1f899836da9f0cac7f5f7b0898e2036c71737023100d740ec02336a69de7a92065dd334631c3936737afcec8f1e7002ff036c0707e5831c7c787eeb867d00330e86321e93560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b783bae55eecc8dd34d24d7586b7937b0203c7da83f220cf36f62e8a067d71bf21504b5664298064500a8856644e0cae023036b546ed5da8707f138bd82412185589da93030a95d21f1cb0c6687205e78eb444c5cfbd64224909226f0277cfad77530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023053c8262a42900dd78e8d51da5fec1a7f66fdf18cd24b2edf80c4245c833f8f099e6c49b3539b12ae9f8a79371ebd410e0230190f2bddf63531ff34a0d9ed44e3a291bccf30d86822ef3f5a0225a0c12198a05f1d1d8dc05108dbb3986058d41ebe570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eb7384d40a1cbf06e6a2f6e3c8b9592e7b2930f13c030ddc501a7def1d562e941660a996e0b7333f94732da4966b9317023100937c7bbc8cbbd3cd546a7f6a4f64aeca8639c047d09b780e208534ac1ce0c820a51c42429f77fc4806d30ac3485d595e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e408cb63c9e877067cbf3aa0b04fc195fc48681580720596340bdf451003e3d191ff6163707e56f913d55f0a1626f97a02301c29480035dd25ac6faa047dcc20c3ef7364dcf76391177d26e43faacb7610eeb8dda20998f8ff8d45e5bee8137584920302047c435bb500673065023031a7933373dedaec87fa88c8ee8fb9b1df25c89f73f65a3bddfc3d2150a0bbcc7a3f79022d62479041935a98778258650231008ec812b8623b32b7085e2e63e2176d18596ee3323864295f41a45739ef233ceff61bea5e6a924462848cc810f43aa8ce0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307b766c5af4443afca6f663e21d7ca023e5319596d06948848b639f46507a2c799317f4942d3ec8d92f11a73f22699b0702304cccd8a4c01b1c3503acebc3a0fe41f2f259e39b43a2da33992a696cdb16eb56eb4b1c0e2cf317336bce5c23c9db0d860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303ae8a910d99193401f5dc5edf5516b38545570d944a837dab653727d90ea0d44eebfaa620ca327012bbf372319172038023100dfce0b8e0eb903bdbf6220fd60f3207ac76fc487ecb842901924e7a09b9aa00316fe5bf969074f2dbed50253c5a99ff10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304c527d6735dc9575dad2759ea621200ed17f8c277c3ec70cac78403fe2b54080ff88e426c784298e7497d35d06c8ee2202305b3e055f672e4920542c408615f14ef09cf261dfe0371edb27751757e2b14bd691af487eef021c683348cac832d702b30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230392b89417623aa7ee4ef1f00cc43e964220bdd07fcce88a87b6e81c7513d7ab0cf2be65ed196417f99f0c16691a267970231009ee1051311862c17957097360582daaff35947748f4a13715dfb55627bd34b8e1397d08d4c706e7148a6cf3b1bcf8ed90302047c435bb50067306502305fbe71de080e482b1194754a311fdadf7a017449c686ca03806ae36df66de7f4ff02a0d53b2241d34c86f733c3b1f99c0231008bfb8440c24bc5858271f5e64321d7a6107c0f51d2c42bd61d941c80d3ac027465749eb9964fca7f186e44722014bc190302047c435bb500683066023100981c421437fb51e3a941199a1f8cbd2080a57a28ca9101e2454e2df621c013e3eb481ef0aa72be02dc2f14910e1c86490231008d34d5db5805913b69c2099d3ef1516764c200b1f01de12576eb88fbfd7a5951d747b45ac68345f77e179179d005c6010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023065e768f62d15d50f07652046bc86de38dffcc53f1ed573ef1df83e0cf4b28a7478ce87c83d3ced20a9f5015f2085e5dc02306b8188eae6394f9aa21ec2374c25d956a07c1711abfd3e3ebf7de5b04350952cad79f5adb779e4db63408f9feb5609f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eee75f2b1a57b0ff297bb7f791e5f01a21415afa60709e91e211673ee10e6dea045eb31ae2962b1899b0d408e8d4a112023100b97d3ee929b0247592f188fb0e63e76c76d22f8e5707e431eb65ad08165d1d3248ad2cc989447f9c3b47262cea78f5350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300b8827130e0f40ade5afcf81d2f6aeb30b2e65502c7098717c2e4f24bb2e53bf40579581abc55e584e8e6ac500937798023100cda1c4954d84438f9d4cbba28647b147147b0f43147bc3da723bb2b4b1a20c22ff676d87e71dd8b939929a8cc6b457f80302047c435bb500673065023100a4f0c56b46eed10cdeb34e3fbcad7e7bff998c85c13f06b15ccc5ba2b9a21412d88deeb1a62de2dd4addc7f0843416a302303bcd684b851bf8d9516649341c50d2de2d270007335160595dad7a33d7395b44a40d22b842dd1cca390837885151e2140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ed347cb736914d92a00cc0e9f1cd5967f4d69501e7072cc6a774393d53094f5dc0ccbb936cf2689a2e82cfa1dfd6d8c8023100ce2ae0119fb7f6297d9791614572fb12aa8ba97f097002d94c1bac4fe124ba09e455b0fc3838b8b4df4ab4665442d4d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b39dde17fefdf47a18ebbd2b42af4a19cbd240c980f1340e89d138b23e4b9d63cfab78891dc2b7ac61bbd80eedb0e9cc023006628d35e4c496a0471b1171e97299886386f8ea4de176973aa71e23d38aa6e6dd70b0de691254312894bf6264d121b60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023100e8214c7b3cb7def414b3ea655be384f3a9705703017a01438ef8f1cfe68bdfaa4a1f4c044e87aec9dcba224ee6bbea28022f747cd559b703c9fd5c32e3cdcc5d3c96b250389ce32bbbce5ca118ca8f10f3b1aab73887fd0eb8e147494e0d917dfa0302047c435bb500683066023100ff12c1f8b8382d2f8bbd2c244053e51ae1f8a9a7638e1cfce2cc927c749fa3612fd287dad373965e2cb9c3977b2c641d023100d60ee383ddb80f66e162eef55813d0b5de3a582258960e573a05e676d3c6fb137525bfbb1894c77231ae0a71261b6db70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023029c0065b6f4b512c91e8bed42b9e63d2b3ec4f18059f5d33a75b18efc2bd5b76d02e6b831f61709a2c3b0bb0c45523d9023100d6abdba7899f8d21f0489aaf92607691d77e245638547a5ce981e1793c23e291895b726eb3017f5e9d9bcabc49ac93d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e1f0d40c1ac203d3c807a4e1d9cbd88563fef2ce18cc2970f72f52c7bd9765938c98d47469268457b5f979606050ef4e02304977ff0c22798195e1a767f3d550ffd8a663e7f5a89cb2adf912478410223e52a5e920ec6e7f82c7bc75bca459ae8fc30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f700df4e9f5906566a86636c2624c50c7e1340c622090ac5d512b6864bc11fe177465449d01d712db399de284e1b957c02304bf22a51d6d7005966240ff41d0adc7b21c81edfa63be8fbcd9b741c2143250a8fdbd6f8295513e752a0deb5e15cfd1a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dd57daa35f0ff196c1beed739a9db7b207cb660cf3d06146adb1d05dae19e296e4e0a2a7d5a45cfa020f182256557aa702305496c6b7f879da2da667f322f15f6bee65c89b876d3d1a6459555261b9964f710ddece0e30dad5c1207ac31fad1759640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307b891e20a99ba5eeb57041b694feb4cd1b5907a435c1fe86e2be6b295142161f155c4f2e9ec6171eac79194ad57142070231009b92883c3b6c5b22603a71354c1686c8e70be931a56eefe1008590fd18391d07997f36c01b16398ef18809c247cc76340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230055a1244faccf77f279e248e5f3d3bc1c99f2344b29a8895c2b5b69cb7f52bc7ac08d60c52dae4fc2c43a2bf2d12ba96023100805aff16754aa5cea1455d59604bd7e7fdc21a943c90305afa52496fac56c304b38cced8031d94c5f42d2d1b645033e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230577529fa3403c645e6ff6554b7025a41975d868df9bcd408490960f72d3dd0775df047a4abebbf618786b6728f5f8c56023064f17f7242f1df67a3fcab36269deb104399f3d8460df107f661764903f18e640e73563e2d2b982fcf5eddcfa98760100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c7f374587652fa16397d2608dd8ef158a915daea28c7ff90ae590b7e3f9795aeb2405bd24e9d5e49ceb535e64ef1dacf023100ca23b453fc445fba23eaabe419fdf6e3ce048e6207a22a60bd59e1ea72e474c1b01be5f7022152ca6ce60830752e50880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305d0cd9ba89ed6d2292ca79a3deceb1aea1350b6fb485bdabc63d47d5358cfe7e7574e7a794a132f695bf9346e2db7202023064500d361a12bf52ad14db8d33972d132a62ef3cf04e5f24a5a8d8475a46a60a7c3269096065d246f809e4ed0428cae10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c7b991d32d053f5832773a226c0ce12dcd406384f91560b5431ffa33f314ff16034e0f663211e98d043c54bde3c4966202303f150bed8134db1aba3b74f08e816953c451f6989248dbe5d64b43382a3689f3be727837d5dd2e3e1cd5693608db83ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009ee6e6fd882202c7100c38de9e48b840737aa9d87d3619fe4075c31ee466623302819ac3945b3aed03549578ac46023c02303071ee8add7ee37f1eadfae559455426332b69913df471500b5def29882a925753478e7d46bf4ee5bd571df73cf28a310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f2c993502bf624017b9c206a7edeca3b1849e5f240380895ecd07c0dbaa48e89e9ab2a822ae0b7937343649450f5d071023100b82d129a80ee0f3131e6ab585665c6c6e931c903ea4dcc11b6a8297982721218f25177aa3e47f264d51db24751f85c890302047c435bb500673065023033e5f531e55d4bc78f2948f24c94c3e4d62f4d5129bad51472961caa30ae27777c5c15cc0e2302d43ff91ce6bbfa4ebd023100e74679d7f8c420babd8756743889d44eb27149c3a9f283bdfe3aa313e7ccc33b043676befe2b6a1a4448948443e4addd0302047c435bb50066306402306acb10bccdbc301a2886c836532327e35a79613cb2cc151f9c6e8dbfe55b772389f4128e5f6a5baeb4bf2f3e0672d1af023038df8a6fac0b5d0c46450028154f0a7c19f89bd7373485aede220c9f64ddddad7b1cc877affdbc846bc9ac5114295f4c0302047c435bb50066306402304e2750ddde364ed1bbfe47ed28b0dea1aeb600b287c7a7d1e0e91450fb00ba08d74d0a2333956c8aa74e808c36fdb7c402300b60b8f2ec08c01e94d5e2e1d38c68be8ca942593fe87c530c21e2b9ed82004079298af6835259bd3f207f213f6a8b4a0302047c435bb500673065023028abe6f7575f3e8b26bbdbac0320014d782a48b8e4e9c922262af5a528ca00a1cafbec148ae8ac8e1bd43c8aad28426b023100ddb29c3d7c016d97dd389c66b3d577ce20433ac9a2c8c65460ce6d1aa43f600f350b8b6a19b4fba5f5b7f76208affdf80302047c435bb5006630640230522bc0bccb4c2920c722520b379ac22aff55b2f488e29d11de465c68ebf7e750bf66f8b1116f95940ee116c11feea7e1023047f2dd3af9dd680a673224723a9abca7aa7b2c9f290dc949ce356f9d5fe02157fe03ae392bb5789b3bde27622fa4b7ff0302047c435bb500663064023057dba7eb60e429f007d46a05ad9de57b9c2fcaa2856881ec46edadde51101cf1de4090a3b136f0c9b2fd364175804f110230740ccd5aa418949fcb39d8d3f098975046198da6678517706c68bef1692a0d8eba01802db1b4eee7eb902b560bb47aba0302047c435bb500683066023100a2bb2eaf9436342c283d9d9d9be76fa84a681b26a2d54f325366362baa361fb9acccf61a83d1782165c92c4e35e15a64023100fc2d47ac481749470a8207a58bc13f6a15dbb1d652ccead1488d38c43227ca1f37fb25eb6a9cc982ea8e630716ba4b310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303177fcd4b4443e59d48b6a1420372bc5ce467d7ae8910ad658a5b01fbcac01ee8b27d9c8ef37f26527c162a071cfb7d20230382bb392fe98810fdc2fda8461e5bf366848edd01a5547444c71842a60ca4b9975631659b98f87b30580e2f3989e68d90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230294f681fce9dd0b082e33b868ccaf7be10b4e395b9346a1b480fbe6a0c7f82025ee93de5545fd8330e070d3c2d1c1c030231009f666f8a87eed1061a0381b3631324579e58741b2aad218d7c66d8abf021fb8c2cf5ab78939f4279b333121c627bdab50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300eb650fbd389fc5398b90bc7bda1331d5759e33e1c3a9435289bc7623d1c5190a922c9c059a6b7f30c781251627dbb53023100fba4f195de310d78dcf3070025e3304a579c5b1854b019adf0cbebfe44ee5e848ba76431ff5c3da6190b37a0cec1aaa30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230252c4a897392a34e07b18c1afb3ea65bf3e074b257ea5961b12c37a440f6c2bddc57d2d1537cc191a98eca64e3eed695023044422393666674566585356d40e642416b7fa07504f16f673000b15237b29299c6a3375b6fc423e80aa2fe15764344af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b5504f2a7ff965d16a5bc49101fa563dea32f1a7f79ab3cdaeefb996b480190f54271f4359ec493a84da6ecc01c2e87402305a10a0376a78d80291622a852dfb3e04ae0f14fb49be99e881611c518ddfc1010f4633a82e4b8fd142b4a4047023a8f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100835c674779ae5e0fb5b9ab4c94e5ff0a487c78bc9381aa0ad05432fcc5b53f83342372a906f510d00f60c532bbe7aa8b023050eee8e33d528ea692e34849592ce63710f0e91ec97acad332deefe415f44ece64e92eea7632d1746c04a90fb34e8e200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ec3e457c1c364fe802e6a08195784dbf6bfc1703ca265aa3d3d3d1fe78702bd4f8c0c05b8f9b7fd57febbc59b1fcddce023041894f4142c251719458d99b88455b96cc3b5c44d30413c82e5d2de8381abe3661a80ee65dd20f7a39e1ac002e2d6ae90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023041606b42631b3bd4362709d58c38a99905bf1259dda64265aa0cdd9592d6ef5d2fcab90e6381456f1cd908a669f0e81102300586044024e4502b7bdbc826908fc3bc0ae96520fd0b9a1c85ac5bdc893728ed98921f13959d71d0608ac0da5b36cc0f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023010551afeec9642b9bbf58911326b87bdb74d415335d15f8383eb2a015a20ca6595a8331bfca6fdf23e50cf48adfd91fe023100cc9063c2a16c68426fcebe581b276dcf1e28c3e04cd9ed587cfc355931b1808216ae414f54e0cac7025507cff34b78aa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e8c80cf7345011876a6d4207bbeea6d40c60cd425394790e0c9f8905a0db6abfb714abe621f685d0e15a04c83b40c6bd0230368a76b68b32d69e47a30ddf36c75b092792a2fe503ff3b4a638a41a479f8df30ec5a33c97b111f21d5f985eb0349c930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302602b5f677956d7d53d24f31c5a6539485ae822eeb3262eddfc4cc005295e8420babdd74b8a1e49accecb78ac4a1a3b3023100f0945d77e34cf8e67dc6efe2014228cb7c3f3f250ab1cefde7f045a0c9b75f26a3ca8072ac1716908a04201e26ef01220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009a8e8919f11614c52121b2e9f512911ae2ecb6b2393b00386a582239b77a29db4dd5dc45eeb8a5e94898c423d8c8b84e023100a0f12feb6a6034d066b6abf55b87cefcc1bd5439a28b22d02813d1db4bafb35df00d8d06af342eed2c1234df5dc03b830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300d91492d6d4018fbcf4566ac259cb6f4ee83a8cfddae0ff9433a0f1cd4fde4968114dfcbaac2b61d7ccc5606f75466e0023100f24bd97371a1db81770e7062d27da69d4ae661d8b4457c66107e0c7a3f93ef31567e1db815531ba50402386054e696a80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301780795c229da36105fcd63cd06f9489dbb1d44efda36b2eabdf1212e924a54ccc3f394f411cff0dc895fee232b02b2c02303617a88435d7e6aa690eda153b24aa747446b5642bacac71fa40c5fdf9bcb3500428953963fd0332949c2e4fcde911650302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ed8111f50bc88eea3a90f55898ad40bf11d0b985e1cc11958868d1cbb7e4ba7bc4187f3980b3089cc389ac8599b5a58f023100bbcfcf4731f8ca99eced6356cc24bdeb76c52219d9522349105dba1c19e8ebc96cf6fb158f387856527d01110a5e540d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301ac3250ab3c3fa03f625614101713eef31ac4b8c81c90cc1d92c966428b0141e794527ab870bc57b7a067b8dee2291a302307334d3d2f2b4c3c176acb74a86c870ff061ecd2148b9a89533bc926518564d5c06b46e5c3c14f9a7bf40aff3059354f00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306ccbee03ba59bc28994c27064932a4b3c2ad73baac59e3434af4fd34510dee36e65d76cbc4d9f76263bdbbadb8e830ac023100a0801624048ea8d8dbb7a5fb3f0bc0bb15f9397aee38c388cb3baf2eb05370b33f7591dd5a6aa9ac23455740edd384d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300f91b506c1a41c156c3da1addb6456fb37b532417e8bad409e81ae47989f730b8cfa93cdf06d83ead28e5b568cafcbc00230189e34d8f232c93fe17d9a0715a1a2666b28edd7b42caf5f0f6c811d070da82360a159c513511f6d61f4b13c4b7f40c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023037dfb076cb9d0f547416243e03f5b16f6617021288db20e5d6ae8f9d9fe5f3ce953fda99d460cb1e8a81d9c303e9a8bf02301c39e1829d64978acc391746f2605b9546ce10253d21d19b058ca9cb1df6a582efed6ddeb8bc4cc15751f8d9ec489d220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301e28181d7f300932df065a9d0ba2dfc368b26966a28c3313212fc68bf0d7c4ef3b5081507e3ea0b23ce6e9b3a6c5c9ac02305978e92af74695a59f610bfdd49e2612a19c516285bafb4a896e20bc1b1277e7d91b49d7ff8777be418e0be0349100020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230393829faad0c7e0f7e9aba091b4a513b8bc9f362f47a485c4bbd3e52899b7658c55ede772d6d8b5921c0083500d7237702301e7af286019b2d2c4312880ef7cd6111b435025bff4cca48ae110f32fd49597556c76c10022c98154ee2a0516316e1b00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b1bed92dcbd32fc4982ff4a0d9993c0c2e0feb413c35f96ddd1e181c9f47dc9b0d44d3b3fa5b3449c7e70ccbe9a6884902310096d49884e3df1cf18a8872fa9f854151fafde603d6c885bbbd1e6afa4c98cc872a150aea69d91237fffdbd69f760dad70302047c435bb500683066023100f56f7f14713b6e27a00293aa60f8b0432658e392ac8b5491d12cdf7288ea89eee51ab20b8c74461dd1989469eb780e00023100b25c3b43bd2f93f4d74a50f3d88d015d48cb932da32057313aba930d3adf9ee3a1b47bfdc8f4384cab02b2b246127c380302047c435bb5006630640230684032b4231ecd02d5873ac9e7cd6941d7be5c1c503ec0a27f69ace86753c397a183698b9930d4fe6a5817ff1d534fcf0230109c13bffcc79af0a80d9ae34b16212c23ed87e59649794660cf4c92c61a184c38232147259c694caf44759956eb291d0302047c435bb50067306502307f3791a75fcf03d42036ed4f9944f0c47bf7927254529625f53131f1365e9e4a9a35ff7c039bbf2fda0a568bf8a61dfd02310089ec5d6c91000210a15db29f3ab44a79eccedd7b1e13c97b641e5fb3cf9130aba89c8b5ed8444c87c16d59ac47a0d5660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230608d69bcc584738f59ceb0943054ec66af3abcbf73652a4a9d8c5e4b600b35350746d2dbe824ca30f35e218bf637830d023100921560f7e075bc2feac075a2ba5c6331e094deadfcc11f27c8a9d3bf9759b63a5c98a426f2dca37ca11e1e237de8e02d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d57fd5d16b4988b3c407c04cb70248d70c03dbc5af456859aef1078bde31986ae34fb3992bc71e7ae893cf4916b2469902301c93876a421f0e2157fd0685d6527fe7f157b3ea06543483813bd8f78b81acc11eb5b7553647f2a1598fa4c62d60bfe30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023000b428b0a520befae02ed2f4fc92d92fc2e2109c00b15c11eb280294d339b92bc7be0f83bf81179ac49d9c0bc425e4a6023100e2e920b183873985bf8ab76db8c02b9e36306f8b37001b59db8b2375b4b022b80f4ba7e3935cf808ce1fd9919678eb390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306444cd5ca365bf03e3cc8029bf6d02ba45821983fd0dc35cd8d4fa517bf4f03ab0e97641d022143689bda6ba7fcd4277023100f72367173221e4406dc0912ba12fb33c0cd24775baa2fd6a98ea712210206fa36fbdc1832f6299608489c9229cf2e4ef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d3b458b6b5ec6c6371dbbc2b477cf1d63e090b5a304cd233516aeeb60572f4f91bd3ff9059cdc517fe1f7fc39a504c1e0231008098181d42dc57cdc0440a56d771ea868f746a2085cdfc5cc9f870b8269338ed9a1f57364c59eea1248d5b63488f8ed00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023015445262f5e0a423f19092fd1e0c11d970dcc333c92a703247b57499392b1ad0261a0443400c5ecad753f7e3eae4dcad02307e8235d50d47d3cdcd5963b73c2632b029080ec5791d2d8ac311d8e195d98a733d5c9cfe31fa6348af7b6a9d607394bc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230795ff9699f12362995346f92d89bc2ac92e50fbca0268cf6db14fd993a21f304cf71b175a7abd4d8973e4a0b0dfe56f6023100b26e2b9a0d0e578552ae1c9b42e5cf4825fc560ba39e3a65a506dd9b40faa0085de178837aff9127cbefe1ceb889944f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d837434180d423e368a4a0f4fc72baefc42e54a335240184facdf9b7a2c1a03f1361fea9cd868ff2e3f521fb0a83354d023100daf98b9e37d16d27c04ce7c2e58537bd404bed36b53c5444066754cfd6d57fae7a6aab68ef920d553cecf1d0996cbddf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c8a6e33c5c5ba7da79fd9f425da0515621086716d1590e384dd49439d7301373766e7b2067b9e84abe5308abd61fcd9f023100db0a42580dcec7562c82dc0a3d0be68f437c25cca72a5d6ff8ee51a0ad8b36fd1aae487aff14d986852b1fb726d272980302047c435bb5006630640230620eef117778c385abb5bfb5d084a3561eae09b13aee3ea4764c190270203a8c63db1e013fb17bb0597c9594e25bfc1b02303809899fe77b2d7e8758e03af0fca16050a16df04940fe6480c557c3f4b90e957eca735ac8f303378152c8a13771cd0f0302047c435bb50066306402300e94a0f59cd5e532315cfef9966b3cbe1740f6a93eec3983dc7c2925e2948fb18fa7347b7ce9eb7d1cf42c7c6d48c96d023046dc20aabd6c685f290fdd8c1bfa0d6939bc5c1d4e979516c9543677e639a75bd5f09d74f0e68e66935e39de0ae7483f0302047c435bb500683066023100ed54ca9f72784000ab81cfa27568e5c9041acddc2f9cb792aa8b2ee4884c10212a824b8e974e4e3960ded163351e951a023100b8f533d56cbc3e5286bb30def1ac0b6e9b2a1586abfa47f83f347b9327fa6acc7f346cac809b013bde7d02a252976c520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b3bf1fa443b2640bc9b3aed36d580383e4477ba861ebf64c9ea94ac2ca37edd1bc69c5ec99073a7fcf7fe467df88e7dc023100de52af325a0f5ec3bb1fea24159ce39cf42239264ebde02c42976e7f9ccd178fe17b7061a1cc129160ef0816b770f8040302047c435bb500673065023100917015cc06388ab3e806b8d197cfe63bb70d1d4ea52f556201b9065cff4582df78bec7368f98a98555438629ff5f6d5902305456b6dfcf2b11d9c48bb47091b286423ad249fb10099c68d872b8f5b01484cb523478ddac654b91c0252d209a00f6cd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300895b5c96a91094471fa843a60951183e3bdcc1e63c3ab773d31a33c7c0375a7162da7e33e39f63707dcda9f419c8f840230285d7ee04eaa3ec0675bb7696baef4ba0f3ba9596cdd6f1c78b6e4ec2560788053e8417e8cce9ea44d0a0ea3633f9e620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304850b16f620601c99a23beb01cb6491997aebdcbbba92ca2c0e92b5387ee27557da335b6ba64e3df45e67d8b6081c18f02304f0ec3bc0cbee3d0331bad44764c13ef5af4ba8cbf7d184c2a93ae359625b502cb1888f60982e12093d1909917b608770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310080edbe92c17a8b85151f663476535eb1b4056d066f6bcda11a076bd1d9a4ccc3c7e6078c53a2b1e0ec998fce47b6d13f0230605cb385720ce914f753d1415f532d1b7f3177c09e20fcf37499769b9c39b2201ff913c67cfbaf12f3fbec090cfd0ab60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b965a3b6089f398c64517c3853704ff6ba2a942cb37d75be1f543a4117ee977064d5bc97dbe8ae5e23c7f7c25c267a98023100df8db502f450f9a9bafcad27c96955cc0321545b478991b2e7732660aa8fed28d26a8436df7426523a9e06ceda41edeb0302047c435bb50066306402302c6e3b122c25eaa702bcb93e6809c982fbb1f300376c109097f0d912e15b9400331d7324ee3ff4564373d596992d3db002302a4e29c4b1d95cd2b1667746349036ac05fd129d0c265c9f9b13b4d52124976d1babb81eac9d6141be9583bcfaf75a430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023069e0c30f95824db6f468cf3eab2f47a855fde826d62cf0ed701f53e61f9dd6e1cffeade711d740bbc2982421038555b6023100b13b90b6c8a478f6d96449d61304080eced79cdf3596958f6d8e503970611a7a15f297243e18d6129baead08b894fd580302047c435bb5006630640230662c2aba44c6d1d0c57064d61bee32e9c1580c5c7564d4eeef7d18ffd4316828274c9dbd00cfd998fe00393d8290d086023026fa38973c935ab0504c5068b2ea1ba8a5cde14bf78454f09c8cf90730fe5da4a02523b91bc92302fae91a4f421db5300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310083e53f5467b12bdc4178d51c564154f0b431b052fbc9c2e246feed22f70e2a21665dac7bb39722b2ba2a07bfa7655afb02306b88f2bafc3af31a327ddb22bdaa63dc50a3ac3f9251908cdccc1690d5ea6111c29210f681f717e1b5c2c0aa55e2d2e10302047c435bb500673065023004b795d14a1eeba70f662eca9b885136e1bb845356a5db05c508e621f63b893ade235e95eb556cf86d9b67df5e22da4202310086c80dba0396d7db2642011cf4d9ca5f99e3260bbc03da1ca26ea42ebcff853dafed2c3d98ae12d1574c8855d47e436f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304271eba4ff438f06fd65cf0379b80128cd4534a1856940d22b4a6080bd13d630715a7e9751365b2b7ff9a3f8b07a2193023100b55f86b108c84726b19e5bb95e55ca73a78b739fa3984e532fd695fc79f26a38491458e4d63ae4e3a515bd80703cd44b0302047c435bb50067306502302d291a834d22f64e73b393becb8dd7cb197e2827ff6200481d6d1b599f67647e2c08bbbad196a501797d4b527ebe2824023100cbd8b1d63e61f4d6ba8ee235ad45ede025a9cf717d11e8b417f9d62ee5eed75e97c9cbbb9ab1ed69631624b3f96a3a570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310083b73615149d7f4b8fcf9199df23c5cc290cbf43862bce9c32d27e2c6ac75380daa2fc0ed06b5714d09d65244813d07c023100c2607d5db66902476c956ed8ec00e2e2e31053b48d4c4f2da21aed6d114663cefbe219735f636af7893baabe2b02410a0302047c435bb500683066023100dc4edad686a0d3acf97be3e2f3c6c04aef89cdcd6ed8dece4ff7a42a7879006c12e4021ae9f7162ce854a515cda0e8df0231008813916f1ac6e93f5ac41d43d7f10038bef06537dc2713bc896875b695c77b7065f5ed874defdd31652cdfc34a8f09060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b16117f5b7a8c16eaa31254073abc66eac638139dc0f089164f01284fbbd2d65684d94a2778b1073a63a8742c6ff67f8023029867a6ba92e8e6a2bac742aa5908171160f12493991f6330955a98319b152c58c34e37e00e5b14a7eb1a55eae81bc0e0302047c435bb50067306502310086223132ca0b838b609778f4a0e4163cf5c21cf1f57acc85a811ef21856fad8d32b1c9be5473e8ebb746f36364745fd102300c0507fb6bbce12925f578757f77369c9340e46d001efce1ca97341596d7686cd89ed5d5f14e64c06e96243b97a202370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304caedf651ccd8c071f5e9241a85b3e645c12ffe10331d7e44e50c7351ebffd592bdc7618c749783d88e55e6b1525c52802301aee5d4d4bb73e7c7ad4e649a36e1bdfe0448ba4133fa44b76722b02b26437c63d38882dcadb3c210b09d22c2a0832d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f6a9c9fdcf2034228ff345332e65b28966a078130b0db7966554545b185da36d1934da47ec4ab1dd252f96efb0628b9e023100cb28d200c6e9ff45ebf1c71c9c397c85bbe063cdb506f862dfb2277b7c73f813843434f0f4c2d70f26e68a935898d6cd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023013dcb41b4aa59d45e069b5574c97b118438b1f3f494e0e9562c4eb94aa8ec94bd39dd7b561cf4390e60a1f590b280f02023100fb3fb1bf60541f5925fdf29930044fe7e6a8baef0d630b7756c0d8449be7034febd736d0324eda40efd380b1f811a8090302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230156e5090d8068b86cd39fc109216a71989068d6ed3776a27479dccf2578a145a598f9bf862af600513faa0bb2eeccba102303c08dd14cac80a06792554a4b01a1519877f6c33c23c9374371f248d46fbc4984913edb517d1e7f077a99db3e5d734750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a1589f876f4be66c079f036ebf32c1d0506349be208b4715c2784954b0c767418aee0e91026fed6dd1b964fd612896620230607dd9260b731e9933809f10706de6632237a4eb6fdb4c89e9316b5d865bd35d4b959ab931c8778fe2b5cad91d5e3f620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302a13ac6648133576ef79d43244a6c8ce8dd520500aa783b531c711081065245846ca61031138456a5791330af2714351023100c235158ea3069b693657d7e8511f4ed8125f8376b36e0515afc635795a0d64ef3414251b4221ed47e50be0dc3aa9fc5e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008715bc8733fdf3d524821f7803617ce31d9f9ce1a5a3c65b3b545c12a2f15ee46e3d2e8139d95e3684ee1304710d364b02307e2301f83edb1f1bb38f781aaae92c8934be5b2a7a01a0df71a008f68ebacb408149436cc6064751763142ccf5ea487d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008402e93f33b481ebd6fa312e160026fc85db095e1613ee5d16738692b0f5ddcdc20bc9027bcd5a8ffadc2ace24791289023065a4dcd2951e321249d82841173a1827c2a8c28e5596b4583896622684893e7f76039efcd5a4c36ddddae818cfbc31650302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304e02be51f3f3451e79fe81801699e9989ec6cea3b489e5df981c92c231857bd3972e3cabe73650c2d6da249290bcd37402304c8761048398513b789276d91f225d93d1a2274a072a28d1280e7e05e240595dbc0a1979ecc6899d68594f3e12af79050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305e245d4d63e100f0880b45a4a357ff890330445a196148d0a11eb4910f9e9ee34e0c0a67061ae8ceef6d2268db69809a023040bb57cea6d2cb60a7a7bd8a15d17bacc784a59df4104a6a5f4e7cc8bf7f21518ef94226861b9c16d21677ae430fec1d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310095418e1fdd17e581449ce5183ea3e756ed05495489f10cf854b8dc9941ce78724a80553ce7ac5bdbe08b6705c88de91b0231009ebb44527700ba4257dcf46fe664c802caafc044a186ef1aff7aa6cf3f424fa601fba34060f3cc195ad6f04af7d940a50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e13c9906ffb0cf8567142a6170f2dcb99d5bbc550a6df851c41ce05227714a82724beac5c4bde16557f4ecf7546558550230141e75795a40e999376c8291cec58ca5d97694c7338f3560cd8bf047f144f956bf36428a035d2274eea8158514c477360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f593028a553f611b976dd7d102b51939ca1e543bfc57afb72d0440dc9f59dbd13c1d329487221a92d7a45a6b49fbb5ae023100b6712e87c3206560da845c056207c48922f924acbd50ce42ad540f7530ebcd0d1dbaeb836107c5c94ec041c1a34610860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303db354b421f4fe4c19d6b2ea100e70851a13414fb14a50b7f8dcb2482f79bf02814ce37a74da2cd25313efd93ded7b5e023100e0a8415dbff29fb2166876ce268a96f84c61f019b3f3c4fba130ff9f179168bf7a034b8d4d696a2e7ccfbe0f2711d2940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023025b9ef37991a8ed4d9ee7a1b5b069f97cf08a8c8bdea51d3b40d59c48030a40ac813c1861ceae0f4bed917619d73f247023014761501973032af6e803f2c9131ec6fce1bf2d2d344548b4294ec4dc72e9d512baa9a74cf31fd69d63121a1822cb8480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230600f48aa491367bc1459be6aa86ce046e2f8decb26676936a757c998b9901a176af5e0052e3b93af874593028ba15cea023100f49d772c2f0cbb575cb6b6c748b897a766022d2ccfcb0e1af33c02cfc78a590fde5428518aee5819b4d6d3f6db07aafd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ae705c905ec6dbf051b48fe3bf2b6ad40e344bd7406c678fe91483c5c95f95af904a93b1ee9e735b1da5216309bef52d023100ef220518b334727314892db65340a650488cc5a03b9d97485da286d2d23e2ba9a5db247531444628d4feab3ff6e52dcd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230135eb2997a8ed4f22bf1ae99e719b8afa1e879bf5bbe4e588d4e3be5a9188a1ab268699a87d27937b3eed766ff66d534023018306f6da40a91d00e2dda1d4a2ed8ed0df1a5f734b2a13144293e9abd2127e88922d8096498a04200d3732a487209e30302047c435bb500683066023100df7f5361ba823cc3b325e926ac8fbeb868db8658076c841c9ac23654030c515e2cc3ae3e24505e8a68066903cecb0737023100d17ba6629d340a5c3c1bf7959f8f0bca07015d25125fe1fef4c8f3bbcdc3aab540efa9c60aa8cfff0d32a5c0169cbd0c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d2ca0bd5bf3441e2ece071ba89b6a96209c7c9fcfe9cab7396728e1288b1ed3b3851561f1bd420e3ac686600eb45aa5d02300eeffc284f5188efa7f12a6e6a7c0991e5a076ca801f93b2aa34794d7d036349301ff3bb67076d2c8542dae25de0a0050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ec586b9c3ecb72f1ec002783bb9d1f44c7511d4529a365e70d46774bc7c55827ab8083325eab31a4428f16be24c04a7e023100ece89e723b3fffc5e55881fdc04491a8cbd83cbb75c9f7cdae09a7a6eb5dd462165c8540fac1f1d38c86098fc67f90840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ec650cc8e7538edccd1b9a6dd51d91bed21982956da28ae19ce62dd1a0dcfbef7c8116244b45b092a4532ec6237905d90231009aa7d99de384288cd5141cdfe2b493d460721cb28561d22dc2a9f9aa262a3c2151b203ae0603a0508320ebe77251e0960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230559596e333587b4c7cb869b81bcd21fa39071fa6ae7465c435089efde7f230f2dff56d613cbd92d8d0cf22ea24f4d26f0230259201fa36dcbadf935eb0b47fd778c07fe756d305fbb238b998232cfb2906ec26aba1d799071d2442518ef38105d07e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303f18cf28da5657f3805771d40e56b50f5b733b09f92c2868a1068aee4a3985f41a451aea16f45e7f6b71c4bbb8a95f4b02300c8a236974d7c38122b2f16251be2595637a2624918a30eb8a2f180421d8a5c25c2693bce1c492bd771620f239f918a50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023023ce9a660ce0f1ab5fa37fef1f9a8327470983a3987adde505d4e79015bc62025b3547f1a9787efda5a3c2f76bf1ec6a02304171e583e7e82f7d341a2360219740290845398c9d087020d08c47d0f9be0986da9ab6ee1fc47751e488b378de7fa5200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230745ca069501c15b1a5413e7fe04454935bfdffe88a04b43220f32e0970d6fdb37b4bdc2f674c04d4fa48265c0a19c2ab023100c9b6d958dc79e11b9679218d806fd7e693bc00412dcdd308fbad1c578d32c2986fc6b24f77d4753ccf25ded9be7ef8bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e220bf8382f0f93048289c929e7874bee3a954d009efeb5e72a1b7e896fc0abedf997c84012ca2652d55f82d7a2c83a8023100be9ab1bafe99ba8f34915c3affd5fc2ecbabe9913aec46cd8126a40a96ac4574e10048e32a76e1f10691b9fb2da67f240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023038e3fb6c82928722ec421f0563413c3b8ff8dc5737ef779657a280afaf666170cd4ac523101bbb8596b03e0cfdfdbcd002305922821ad42971e0027e0b88933187a4c75f9d8d64d37d0a1035392afca135556cd945b745f2cd7542309da47bb373190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d599df453c27d045db80d8a9e9f8a25fc38360889c4d698eb01e4fb9420b0973787c0ecc5ca854c1cf0e07689c4369a1023100a9e5d45abd24a50243c333b2d0488d6f890838a6ab4642953654c22ecb0dc78527992bf910ef54eeae8b56a7fcdefb7f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301eb86b0afada650a1ee645ca9d09f85cfc866713b0a215d03f4b53f35b20abcdb65fe54176a78620d1ee9129c93b323b023100b6a9c8e8abd91a7c21d566847a94cc5da5da5b8f9a79538e8e55769dd2dcb792554dc8a7ac14d75003ad297a8f683d570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008c5c6763ba13625fa31768d9611cbaae7afb2320c1501b20c754bced926b64e325caaf262340d993ebcab6f5ad78f7f102303cb7971aac687c418ee80f12b883bc6b9e823ed8cc292ac2c5cf72d1b95e17709a1eb1899b26570d1ea015e6115d94e40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cbb203c6cbaa644d0322f45f7bc7b737d9592641fe0fd32a95d654f32650d79249550218f50825ba36080ce20f9c15740231009d95e2a2b624ff047bc8f0c476f2864958983baf177c4e12c3ad80294a6402a65055ff9688d40357a0283b1fa27366810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305f8061f0430d22a9df15d137c68af98aaf4d0098b5e6091adec50abc2711ed0e89c259d5ea630d4a318eff3a6ef51e73023029ab7197812ebf4f3a7f81b42189f15380f53d1e23417beffab41ea9264c3179dbdc48e14b7e155c4f9521e3b763df8e0302047c435bb50066306402302164a9ce784572475c69216ee3731e53c3a645b140bdc94f05a9dbbbea04d06867f6462ab640d0b0196579bb7dc6708c023054e14527478e7b4d54600500c1bd2fd53b278d7580e44b9a7e7df3a1aa28b9a2ac3b1aeb2f2b89f1f31e35446f0a50900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023057f775e3cdca49039a5a020c644ec698e998b24d602ac222a78d9cbc89418adbcf6572936a0e4e5be2abc16b881064380230143701bea985da58d6bf030668ad9c897d6e07624509dd19406b4ced7578492852a5d7146b0e5d5814397276a1e079100302047c435bb500673065023063beace5b1abb88544d8916c39e7d1fcb50b72988dbb981efffa46bf3f003d81b1728f65f41bbad1a6540ac4d25a166c023100969181a5f3ecff4fedbda3aa930b12a853f0d0e705c513b7f9a929ac15628b65bf74b219f0b48562ee8ac5d6fc7631650302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023061ff720ba5cf350909a1590be3cb9f3620e28e0998057b9bd0890da6748e6b7038368ea2e836b8c5295d174fc6c590ce023100932524e6b41de5841eb7e66e1421999963ed0647ce783e66c6d44a99f000490fea245ee8f3b65d7a283995fe91b8f7780302047c435bb500683066023100f9e4c6cb642cb5a6510b64d1f13594b7af95fc6d14c22b06614d0358e75092fef4660e32c80c6721b6ee97d689ef7a1a023100d03d77ae882a1fc10a6513b21cbc5d63254e7934d791fe81d0140c00dfd5481c1c44f0bea11f5e8ffee6631450aedee20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306598cc2117b9ef5f5d12618fe0361d01dd758b98d4048413acfa46da72d0c5dfe1eaa7c4da4cab7f13cfc992790efe3a0230320ccef8578a460797cbaf0356d6b2560257a18462ea34f74c408baa9a788cc23c07f0cad8faf0e3153cc40f165a25c30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d50859ffe21cfb726f6f0b560bf29b8704131ea3312d3577b40096216d29cf46d8321493be92b7c7dd3faf87149882ad023100daffb13e6649986659addcb59bf1d96950bae8ad57fc7911112dbe858b7a38538dd087b10a02abbf4b5eb75e748e29b40302047c435bb500683066023100dc5ee2601676b83d8b6455eaa3f98fd45ddada3cdcceab2b4e07e6ca04922b71fb97e35d3f6ca5466fe269ad70aa3283023100bb692aaf700730a88857588e7300c76f407898c84e7cb497df6eae87e89e7235e7a6510d45274c57b28beca8aa7466530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023075c39cf1a94f45718db91bd748bf58c16da0246c4e9f8a8be09f38b9212fc8b36cf1ee0820722fcc3f227b8ef1c425b202307225efbe6d786c7697f7f51c37f7eb2d1757b9f62d568fcc8eff19a9a456e760be54e07a48f4ae7de6a5f262cf670b740302047c435bb500683066023100e378995c444f0e7efc0c37a4efd5d10f43d9905646c1cb61b37cc233288d0d727dd6cb2aca235ad38d9ada3ced2f470f02310091a65ab6dc440a1cdccc91e93058c1eb7cfb0ad2d1db5934256138d5d7e98d75f1f09f3b8e7e429a7bf485dad0ccdf400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023006674b87af5dbe58d0ebf7dfcaae42760b79e90ca397522ee37991c17cf92a215f4d2864c4c2d41f5e2f658d1084957e0230265736fe728245a7a28648b110da5253bb4fb9443e7aa7acf468e18241126015b9aacd5566be979a8318bdd2ad47b29b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d50809435ea2737bb6ff287027d25d2e670b7d56173ded44f6de4c1746ab755b68677ca6630a41c03003a18061aa039d023100803b4f0a3df5a1cb7e6ffda23b1e3c87fb9ef6ba453f9b75af0756f72af7072d8484f78f278424d8d06125ad9f1f1ffb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230249728010c976a5dd43e8089212b81385119815a497fd126613dd57bf4f2342a4958862f4270d432c4bad3ccbb9cb5ab023100a67375a6f0d9e570cd73d25e8a99f349f3c5f45ff388dfd4b8e2d06a4539563179d0ddaef8b0849f9f60ca0af1c58b6d0302047c435bb500683066023100f43905e0782b63b87e8edecdd102b44a56559e036550a0fc2f458453997fa23157785e05c3d7e36a3db4c017e8339241023100afb758548b491156a7e6c5e89eee02919297962a96a706a92c8d7a93141214a24c7241bb1025f3a68bb05ae2adddd2df0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230712c5078d7e02d557a61687d77d0be477ec5a61bd922bf27c9487e119b875116a366eb8bf1a44134be1d96cccbcd4416023100e0320b729e47fde7f83e3d66b9c605cf27fa49554ae68c379bae2cc795afcc8f82b5c3d90aae731fc442247cb5b9b58e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023038242303af685603c318b6d121af467fd31ccb92e25c80caf8fdb7bbe3761d46d15eb18b07d81d7de990946552c21a51023100ec78f8e0f3d665b4d2dc0a7435498264e2c0063bcb03bb8301eb89b4114ebdd572ef8dc61205302fb5a710270c8651bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230615cc8ef94dc4ed84fc2734c52fb07618fe160c47202f02164c4fa2cb41c4833dd74555a5eff04e927f9466cebe6cf94023100af8ca4ee455fd1de69f0ed9e51c3dc26b0a7a9b996905964690eceb33439a429795958ba10206f71b456f325003510fd0302047c435bb5006630640230768a6a839d814408c49c1583551cd6a2b58ab4769ca9f9a7e5e2ea5989688fbe3de863e11c71af2d8fde602ba73f056a02305dbba9becd070fdb5a0ab53c3d866cb6267d9b306ded98b392cbd2d19793ac5f69d787a0143b72fe428d8b98b11c44ee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e7f01c68832df18942b3525fd873f84e28891057f30849237e7fc356acb8ea333eb9d0e76f18fff083545fc5587c4fa702310081080bf2080d23f96477beb93f3af8e48245c6e61a4b4f6fa98f0177751a51ee1f030abdb9c80e603eea105916e2aad60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230246ad9295ecb13cd47448bc9c5227a258386889947f89922c2642c4d14effb6f86bebb3ee0a7f27b1f4c359810b9a92f02304956789ea531546d89a2ce4fb57f3f42691a48679b1212149890d7391108a2c999e84b632aae8462c9a79d7a55f4af130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023071f9a509eb99d76421af97bc20185bfc1e5d74cae64af878b3e0d0fa100d92da075f3909f75a7fd0c24ea84b7b6e48e2023100e8ec7a8f1236cfeb8aab202c6c5f4c78dee31da467f5f20021df9e3c4c7c6e38801055e1d0f124dadd7e63695536b6960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307ddb1df032fc6c5e1e964faed9656fdbfeb00f59b3b28041a9753ff4f7c3cf9c73fc5227c91e24972e6544701cb4eeb002303ba2690a96adc83098613c7496ebf4310f07b0c560681c4a2c3fa7933b84b70b6b2f8a2270ae84d495d43c3f8fae2e210302047c435bb50066306402304ab5281b927c9bad7c044bbc67cad131799365b37cbb819e98a40b14cab9b9cf094a443ccab299dcf9a4de3f2f8b13a302301c91ae5447e78d22de78cb243da90b205246644d984098fde49f0f1485b806b7e5b72c49fc6144cb4fe8b0d3a20b3a550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310097ba1be4259756d3ad2cea5c71938f6472c5600fec66dd3f9adcc9c9c7876f72c509a9bb7621a757501dd9ad6d379cb2023100a81f0deb646c6a7f4b2ef7d9ed03a6d58d4db8d235147a57d03345b89d7c836403adecc5050dc32a6cc086847d575fae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230551bb382b37bf70824986d444c929c9772315eeb53f9fc98009ced89c0149183ae538b5ad267965c47479b0a0b41063702310096e758192d5963b735a8cfb3035ec34994fbd920fd597b11450c737a6bd976230b02171a8a73649692e0a6f6e0c023890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100954d27db8df51a63b518b1fd6c87937b7d68e3ac68ff63414b1510b3ca4172a144b26e7a2fc1e70b2f8b80abb3a798cb0230048d985dfcb865227b3b06b599dd2dd0cb656459f8f17611b18e5a4b4a136d0c7a8df0d772784e3e056949158f73e0af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f77a97f04fdfb11787757c63868c234474630334f3261d3a07b3a78b33e84fa1c9116365dd3529dc1016b591fd6aa9600231009b249d0f0af9cb2a873a59cd9bd757da093bf54b9483594489bff07773f4ef2578df7ee9da0e0c2487bdad970bfa438f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303e1ef5107ffdff4091e110c77021bc4588f29c05760093e4327e19099141d030cd4e7beaca401b6c23117cb775746976023100bcdf94f75817a9463eecc80a29d6cbd3ada7e066e9ee83222b3d4f2c028bf5b80478a5e1a39b077084ba4a903e0229150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305e95b92b0268d657f4e34372957ef3d510300a3022c184ff1a81b9b93c332b665b6ab99e76ce8ccacf38ca3bddfbcf92023069bbc9c989a07bfaab3d8e5c08add62731cd07ba85a32bd588ca7d7dc4f67137dbe749e614079d85cb81132f8628a1450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303c9659dc835f4b6f29a5d34c287c6706503d5ebf15fab00b038f727ea4991d46c283bc5918af3ba3f70edfe193230767023100a2d9263a99285e30e83976ff685fe6ca42d7e601740dc2553ff75a81a145a5f09ada7bd86d19d9368c551db2472dd51a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100877346c859bc2a9532b2959b131806528f424589ea2dfae3db6e078d9cb7d18d0007607274128e7ebb836ffd1510ac6f023038f188c0ff4a7620b4cce98e7b8a4806c0aceb90803d9af7904159d99f79097457b8ce2737dc5068f935735d3dcf55940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307d01e682d64f3a2cc50798afe1d19c0271819441951eaf8dcaa8041b9893f3cf2487be4ac8d56f7692c282c63e7b75ca023100b84211c50801f1dfa7cba44334010b06b20d26e2fcd2cb58f5501ddf9e8c58069524c588c2a02c6fec296d21dd2af3d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310083e47ba8ed3130b61bf53cb76c570f40839edfa728f25a164ee7919a3bb897ca6318c4d709869330cfefd3d0f1507d82023052ae4e5ca573238b0a2447360f9ffcbda47290023b5b25cc6175971dc3a2d461818c6598a14be37d9556a8d5fc4a93ef0302047c435bb50066306402306e3cdb2939f99f9a9b49a27d9f8e1a8aa065a9424e2b8e6f64f697f78df9c084280346c2fe59ec09e27f2607b33de9260230535e7bcd06097189d0cfb9d545ac9298fe18dc99842bb263dd15ed2583b3d63978c945f539340b60e94103a797f853e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023034a91e808640bbdc30f1df0bc2d2d08117fc609732838f847e82faf8b06eecca106e53e6857c3e859a7c506f8ec2dbce023100acb9b2de156b261061222789d8f25031836c432dd94d9709ea266ff48dd125428ebbec665d93440758f77c6aa3a898610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300bd7f031afe81f0c49d40aad20f804eb2c51e89cc5f4bd9f4eb5f1219d2d03d22e17f051033eecb0a5bd92ffff5c74fb023100bf26784d2de742d57cfbbda5d98d90785aa30030f884d19b644817bf6314389fde44d5cb3923849f07a4cbdca0bb35120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023033843a4d13b28f019fc7e252cfdc566264478c9e7699f436e50c1a634d3c9cac90572376b9d14d539a59046ab22cb2a10230717f67bb048c9f1edccf06d1251684e1327f1047d67d68f1d50b38288b715f01a7c7ad3c94e72803baad0e1123edb5a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c2463f3741ade0fc0d45b72ea910612639dd7b9d50e298288c43ea449543906698f9ab084f8b603eafbc7d9fefc57ed2023100b159b7153963f2ded67551f2b0d2022c4886b98f2ac148b560e74975077f296002f09ba5be7cd7cb36638602a18e73240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023060c859e964a41f03c29c6de827457e2be22dbf4164558c8b0c65ee67d6d0120d3b67b0e73543defe3bc7f83cc8b0aaa0023049631cd26d9c3ca3d141cf7369fd048d0ed7d08ad25b42427dd43d9ee9efe6500c8d9081ab916ad60ba45d471ce57b360302047c435bb500673065023100be08bb181f94de8f39990f2f125913ae66a0166dd6c7ef9c9dce2c8bd2ce5daf18ace67d6b89ab5fe146ba5324164ea002302a2ac81de05f961738bc97683fb85a6e006c0aad1f2f8699246b214883b92a4523376033210c0e920f3a77452b0f72420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bb01db644a4c74e793b22b4c79c28d3db5e1981f3ebd9d6b747b53969c4c0d9690fd784e727fdde16c82839eb111115302306a5c6fc7a5f4ac244e0abe355217ddf6d7f12d407b0fee6dcf1aea2d1a66b77d31b3443fb492945dde2c233d902a6ced0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301c6f4357aee51ff0a964d425524e615f7878c2422017330b86abecd1b963b6430a6b1f73212a5dbdac4accef8cccb12d023100b2c4b506afec7c1ca94129e076b190459d358a1ee44bb210f5cdfc34ba6d3944fe9190b7d04cac4d2cfed9c73379b6630302047c435bb500683066023100d67295bf18f11fbad7c1af69d9edd7f6039b008ec4db0d28986e6aa41bfbf2735098fb2811901ac4c172302b289f7a3102310086519ef67732c873188c4eaa442000730cce24c9cfd6330dc4d65d921b7aaa06107a9ccb64bcafc14c6c44bba6230a590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230353a2a80a58e00eaa5abb61b84ead7755dcec89380fc775d572665e8b0fcd9ca55a840cafa4e835c4c540f49f0118302023052380271e55655ad304eecb3e23c0c0097f49bb42754dd088dca37b9f5c24cc3fe27e50a98f6581034ca6456fa8e28790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230765ac889a40ed5a262eb9dc54ebbb7e916b2c23806357243b0681a45efcef5aaed78406d7170802245cdd5544d2277c7023026bbb6b1a9ff0b8b8c9f06ad689538be807943aea451ad105a4aaf44aa5e8361afe7d43c08f8c1cc354aaaaf28201b760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023055f55064d987f579a80f570e1dedffb070ecd56b4076cefbc58729999ab63cf5cec97b1a5fdb7289bb077a1c1cfea922023100b1f04282318d7ac374980266d5ef2fb9861a3ef95b1104c5db36a8b474f14d79b5702e93b30687ddc11e4e9dc5eb3d900302047c435bb500663064023064922588a0eea234fefcb725a243cf1113f8a6dd3d95cccd5a21fec1707260bc790bf5083f6267fbfa5196af3a52690a02307b6a9f8477d45545bfa32aa432642aa8859fb00b57803f36bf82698ba1d50e38dd20076c9b5a6d90833d3b09c1ad0cfa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306a5acdd36d25a4b9931f2e9a9a5f7b8c393a67f24cd3308ffcc8f339e43b182fa776653e62f951c09bec4bae973f66db02305d12410a7f25e655404ae63971d57a5ce935d9ffaa34238aec9309bc6c6ebd75a968c15d78afdc5bf6db4333be59c0ae0302047c435bb5006730650230771a59a97cd8c832b1a4a079c7dc5d9e3728aeff665398d81dbbdd4f1a8ab2845111f70d0edca740122df15696f5e61e023100c39022463d8046640d1dd3f9df564cc000069a663ae6b63064b9010acf39b20760ee15a9fe2665f4b5f23ffc72ccf5cc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100968b8634c40ea1b05034642aeefa5d927bd29fbabe677014ec7903759c2b50686af555a684699759751a5b62db6e77d30230775dc91348e56d9a4fe108c22f714a7dd0b4cf2bb41c20d1088bbe7265d53f8bd07f225e0035b9fab6bfac59ce0536f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023037402acf264fb6fa6c5c60fd35e3c612b9c77d7c0368b337b6a696e97a8643aa3b2336fdb9c380f8d9883fb61651a418023100886b85922eb4425ba8b0f01f17a606d49ed7d8af3dac751d3085a360d50f5b6441777ee281b28e7a44fd387187ad33620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e98a616e95c624190456dd447580f3ff82b3787bd579fa35d663eec2ec6c310575764e67ed88878a11a29c649c8b7a08023100b946878ca2da37f82b26496e3fef48624e9b0b1d761a3cef4df059c8fc3961646786d16d537b92b1c355510ab228e62a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cb043878df7f7b30c94284c6fa4a21871501f0fb619280ad560d526e451bc2556c4afb8ced3ad05d15db38bfbdd7e21e023021677c318077d414bac03c7959d722e1482cc6e2d8d87498b370c18000351bf321fdd9e43deb11ec69afbb4299f45f6c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230711e17d883e3bcd2b343d378b25eb0c2c7b15ce5b3c520c3ecfb9c4966bb7a2fc36df9603d65b9957a413c00172e751d02307024d2c77156b0c8ab4d9b5256554c31fe70be1d2a99a59a48f392caa907aed13123959ec200f34752039618f0c975b50302047c435bb500663064023060b7493dd0c213b030a87305176ca9cccbbec8ca9a6f0ffef5be18bdbec82fd1fc3d439259765c5ce4336d660fe5ae080230739f5f047f168799fb5ecdd6d53cdb203d62eca1371741afc775fca70b30f4a7053745f6b7953683609848312a6cc0f00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302acbcaeaa9b4545b059ba0066395bfaafb59c6394dd21fe498436b02521d7000d223e778df4fde9ca4f2de31ccc7da18023100f1862dc7bb27f10d0b32cc53b746d14f814442dc887992d83dd7f75ae128b1a54723f5ee06381193bf89cc553db96fab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310082c78d5fb193b97262741651121af9a9f171d4b6898d416076b07eca84d94d05bea1123c351910b64c352c21aa9c5f4a02303cd2a0c7e061bb3b3a6ba3271e4f512f53599d761ea640ef1c3efe39bf808120b872eabfb6eb57d424f6e67004b1fa590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ee79e279447fa019bd0f429f698eabc961fbcc5ea26864524c0f67f4e1023510521b3d58a37e833a2c2aa3838b2f982d023100c2e27e1bc52fca1c9f502b27da106d9f7ef6123b6bd3a10f292dae73570f25db06bf0e0c6a0a5308025bfb701b275b350302047c435bb500663064023012d59bdae1c2e253a7542be43044cfc8d80e673db2a087cc1d15ea3883432d7d72f6b14114ea3a83892e760563e0d0b0023069695ec08386dfe627292f1a8a6907420a29265310aa9bf18f787fb1450025033f55c78cd69170a2eb95d617c6ee34d10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303622ed3f7c2dd543ea8dabcd7e7c70a75e025bf161c20d39eaaab5906b3e25b9b32b864a2eef185169238c48c1af9d66023012ada7a51daf36407374d490c9f3067b3dfb1f2f3049a6bd68aacc5492f5261c28f5bd5e7535bad7172395c5b98e5c6e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ebb920590310a20e0e04ed2f7648eef17640a0f4b7a4499ede46c44b07d3b77a5645efe84b9ce39976d9f1526d2ebf97023100cc55af6173575f35b9f2a06559a4153990362b316fb3794382a37b6a371f54b87aff301ed415a7374a649e01796ead8b0302047c435bb500663064023034fc80de4cef9585eb9c1c7c2dfa16918bea14956aed1c326c06c7f43d1314ab4797151afb05e7976774323b0bcd4f0d023020ee802f9dff3d38516b00b7c4e88086630e8640fcc44668e451718728a5f705cac14a8b240fdecb025797ff3bd78ec60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2b9840c6b4f27a4fdd50fb27ff5b9ec0af0627e06f0abc36ea226e27ed8b5644ad9509fdf71f874e2eb7a993218281d023004c50dcfd1b3e5c12a993cdc2a3704de0db3865b733f4512ca2d7d5bca965f77cb8c572dc09770a0c1f9ee5d3d2dfd290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230520e7f20035829f4efa29dd6d668d002dbfa939c77686312920a7496bad6c35b9fc772854ba4b30d9e88e6b3647db29002300f0e247b253120ee3473dc663b999b40a4825fc649e929c2d3d0c0ee9dde99d0c0dd100840c0f716ad91700e5a2321740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2b9840c6b4f27a4fdd50fb27ff5b9ec0af0627e06f0abc36ea226e27ed8b5644ad9509fdf71f874e2eb7a993218281d023004c50dcfd1b3e5c12a993cdc2a3704de0db3865b733f4512ca2d7d5bca965f77cb8c572dc09770a0c1f9ee5d3d2dfd290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307e6c72a534ffb32a47e631b81e0fe60f57ea680cf83d2cc4705015112c84e7089a5e65701d0308f892c531aabb24fa1802310085f5114a7ee1879694cfde44579c6fc13368be61bb0332974c9f3083e46d023d1d4ed5e78179bb68faf91b6b03cb56420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100acde4c2d86ed502239d59588a793e9b4f8e52aec34947a6a53ff0b3fc6410bbd8165e65a6ccdec816549cfd0b557e74602305db717115df9a7eef47c55b78212ba3348ff34211e2f34a8dd9a248274e0126dde2bbcba8cfb6b9eef033a90deafb44e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305888a0241f3c28741f7c59ad39de321462e0c38577ebe2e507995ff00636f5c21218d5b10e01d53737ebfc20b56f40fb02307c25b6a67f144ba5bf0b5b67ce24d5ded760e63e8f0485db35b88a29684e7e49aef5ba292d13ff1763b48061f9be21a10302047c435bb50067306502310082c5cef28ddcbcd9890f5f113305b59234fd71846fc479f4aeb9b74271b31f92044d6f18b66cc3ae6a72ddfac37d4152023065fe20f04ffc54c848b92333e5b408ace0eb97947bfe723f7449fbf1860c7ac7233bc688ed27d5e3459c640726991f9c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310084b22fef1263c636ef48cf103b5bec3c45a6ab5a3580fccebea4fef9146802204e4ec8cba4d05b2c94151d0daa0574b802301b517fdd1d1a86504dfb3e29e1f65656e494f4d398e8d4365494d20982facbf312d270c61f7ae9d22ed42b336038a5d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ac2cf2fd05bfbb3aa03edf74a530f6dec9cbd3c2478b0eba2b135bf32e41affd94d224bdcd1f7139741542161f74227a023100972434e3263ed85b0174eb31e9340cb3e4b2ebde100fe50818f8f91b831efce24865b45054c17d7a6880cff6a49320e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230707f8d5ebdf7f46f983cbc0ed33690f99943cefbfd82e54348e12ef5a96855c4568db6a5ca99dfc2b2bfeb179c33e41b023100cde44341caf5c996915a4d0d94c6df98aec18211ce040b1b5f703aeb88e33ec2e4925ffbb161a672ab8aa9b7115ad6b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230707f8d5ebdf7f46f983cbc0ed33690f99943cefbfd82e54348e12ef5a96855c4568db6a5ca99dfc2b2bfeb179c33e41b023100cde44341caf5c996915a4d0d94c6df98aec18211ce040b1b5f703aeb88e33ec2e4925ffbb161a672ab8aa9b7115ad6b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023023794c70c911a4ac645f590decc41ceca504d2e213c83fa97a93cc70339312ec5ef2b6b78275e81b0bf1c92a07f14ae402302c110a61aa689cd17edc21755ae6fdd66605c59ab7118bb9348f29e4ecd391ae8ccfc7c3bdf2c58755d50fd666c416090302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100acf72a82c8727bc8a81ab00062d27c19c6d3d1be17d4774887b8353554483826b13dfacde4c1d30697c0b8bb46e43da5023100daf8d2f1917d48122cc942d3cd7a16e0d0335123c90f7538ec67492b2342bf73207c20c9b52436c70b9f8e0af07b04340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023049b30370a03701cb00b87404ceddc90726b179c89a694db3f28ee3d165501b00c68f8b8b466edf27e6ddf48f7109cf47023100ded9179ddd1535a9787f96a3d1a213fc45fc939fcb41804b966c3aabce1e21763c2e06dac5e4962af371dd301314d0200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fde5a62394fe3f093b8a5d3d304ae6eb099d7d0065aae3dfa7127c386bb02450d46b711d88a89438b24bee23ecea043502310087796819e23e18db6530217b517221a4537e62588b4721ee9812e30b3caf34256186b17609f69f605826f118ce8affef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d018ceb8780f04c8a6d68a3d0c61ba655d4129c91ca1fd7f104a46e5388f3aa54da9f40505a228e8289e3b674c2607a3023100fb1c48dd5f22846030f77f08ecb574ec784764f6e892d268468cbf6ba714dcdde1eb9a54c524f59b31b21a14db84c6f60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303ec7cd847520a5f4e1466048213a65d1249c25fb0bd16debc814fe67f44cbdd25d0fb0c368462c5b5f815638a8a8f827023100cf6df2497b6db43ac6f23e4d481241c61c7ddb2fff67133c7bb53d5ab79476221182d647673b576a55f58b645dc0a8400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023038137828769fcbd127a446a7b80e134288193a14b8e6a5b741ac363cf00bebeaaf26c3efb20ce35fe9136e9be1b0b18c02310087f2055639992ee82b3a4004f26d0f68d19a3401a5e483d98af6383b75bb57ecafc147e1aebd0fa6ed3e36d19998a4cf0302047c435bb500683066023100d47a64c6a9b480aaa1e3693400a4b21f84083795d38e60c508d318f6de08b03d3dda1d8d39c02013d365e25eb84fa515023100f29dcb2b5f6107d4a7d70b79d6bd855d9d07e26528a6d171172c1d39437e7fb8614f751e99f28d41d2b6253d0b53ac200302047c435bb500673065023100eb5da7b874cfaf441c6746388a16839982eb44aaf3619263ec913c457d02c6d76034fd497ea096427f03bac56dc6755f023003d4fa58a6c98c0e97c1988701d0993cce1e6f8c1c90f8c83093022a02c4dd8a803422a328cd642a99896f55d54d02d90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023014d045f2720342979bac19fb1691c695b20f867193e71d2aac370d234fa55ad16004dbc07a3d94764740db5da306ada1023100c532e95aa20153259449f16408507218316a561bcbd4f159c3b209fab89b8f2c15e5b501768db18fa409a200bd28d6cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310088e887592a24d8f140601f2d241ff309b0682a9fa7c2324c976df374c46d088d6f7f41e5101c00f9808f9143b0b198e30230047da7d853c78c431c1d74cade400b120d6b86d628c7161bd34e89409e3edf84c0b64d77fc853d79c312a464a64db9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230067fe8859eaeb0fceeff29e498da78bff15c218870353a3cd7e96e53569832b443496705cc28ba73d3e121522d914ae80230672dce8fffeb53ff9e2f047cc59acea72462a815145e05e2f3925f85c22e39f088734a4ff5d689abf8726d14103863e90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230767d1ad5889f887dcbc24deb5dafbd511f1bfd3035f55c76282937e27f5070cab0e0ebd8eea6c7956e624cc2f9c4d20d023100b6bf1c6edb550cc2b3daf96d5dba5c47ad9a8196827f4f8099531a047fe1e6da71259f06c117798a9aaa2715d70fb51a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023024acc8dee03593ae6ecccf2c08afb8b1824dd10e2d0b6c963581e764562081f6a7d648b34df21fc101d7ba6cb9a47ac8023100882bd5329b807616eaf8b6567c401b1e7863a36f2350ed208123ce45479bca511ed83521257e3cb7fe26852de174e8640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c1801a1a634845d8fb1775f32a092bcaceff0eb7bf502994c1f2604624263ba90d97212ec620b5687c2bcd7c379488f80230243e816cd1c101fc97f40ebc9a50fa6fa78c9458a8e32759ebd4813267e6ce1a76cba10d06509550cb8cc452b9f81fda0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b627018285fa62f21a6bcd5ad3a5f53b4379861a2424dbfdc690e6711271311ec477cac404facc3bcfba141c9758f08602300836a18b8311d9146f9bc63ed5a93cb8ed02241ad18c643d92983387dbc1a836c0428019aea8c1ff1d0efaaa8c0685530302047c435bb50066306402307980e6c591a8089877610d2d0bfe6123d4b3cc5d70d7d64b66855fd75ec212822f127b58c784208bb5015edd9284cf7002300c23f15cd2c4dacadbe511ba5cf912f516fdfe1e6f3186ec87f1f07fb502a49db57709144ad59602d5032e8b876b44170302047c435bb500683066023100ec9eac0822c99f053f6b45393d1447ed1023ad44c261c14f6b7e587ef06ed0fc29f0255a1acb1d53139a14ee77e5bf97023100c39295482a99b173cc755fb2961984240f840fd5ee411084922ce1353d7d7ce32641ecab72bd0957518e3be5895f00040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230468c7de2ce14ae3c63c8feeb2065cc00bba8176a16d4d5d68a00df87b0aa47112e96a743dae7ea555e16248540944510023003b1d80d17fbc73b467d0c7673839b75e985f737a8b2f0b1df1cccabe134b71b0e3798becc8d8863c3d05e6dd4c695c50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306af79f71c31f85c070a05894cb013fb8a31933ac4fae83a0bd1bdb14fc89d043d514803d68ed59427b231373940187e4023100c1f2ecc50caece51ae94243e7140dabc041ed590817105310455d29aa5907bec67d2c344cb052bba58efd67f00f5fa790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f2fd401bfdfe65a9934fa912c7b99c807f35e0304506c3a1a61578a73efe7ba138fd759ab13be835afbc987de8e0ed81023100e1f40bf31be4acc880484df0f062537efe3a4846d1762e3e20ead8a73874c70e21b9c2618f1babc2dd41c214c23be6d50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310093505dcd413b0611bdfde2bc1b345c5930d1c916aee8561adc09beaf0816629c7da8c9f060bba13465a05b542dc42e1902306769e82a24f8c61a5154dba44922be62d0cdc0fe0f72c6a8338c397481a9cc80a9e0c6df62284a283d0ae0df6c93316a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d5b72a124d2093e6b016591d56cd300b471663e9f673b076e3b5bad3f627b3ae02973ca074c9650994ae0d4615ec697a023100f016588457b0cbb684bcd857330897e3caf0ba316c0dde95c7bfd41d6bdd86b9579d9945d9ca0e36b6087b099731641b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310084ba4714b5a0ad7fc3aabff01e76a761496fd2b033e8f7088eeafd5d65bda37c9426d46b27e189e8f0cf456def03df760230082a99b141ac4479a4ab274970765cd701b6ab2b3c64db2b3d6eacea42053566a8a32ca584fa2bca4f4306e5b61429f90302047c435bb500683066023100bd91e6627ab4ef237e02ece9a76d322b18c8548ece8ac9ac9ec80b9c3ad647da952cdce9a8d188349b23b8e0fc457302023100a13b6515e203770043f2cdfbaa67f81f62dfb9c5cc70e9487ad1991ce8a6642b51b549bac084362239e4034498a969c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306abe9a6a32d7cc4b6f0fa54840243a148ebe577fc7997cd6f8611a705c95347ba934d733e5261fba5a5d021dc55ce6dc023055c042d686d0233f6b4644453aa28f4bffa1c79658e1c58900a4527f242a16f2cc696cec652bbd82d3820d1dbb8c79f20302047c435bb500673065023100cd6430e9f4b865ac633ecac8cca1e96eea4684838d44de514b4cc283a5a01e02739f178d9dc0924d36c69e66d2e3b7b0023052b907a840f385a189fac586a4054603d2598c816a5fe63719e6063cdf75236afae48a2a915afed19b82b35c714a95ac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305e10056966ec9efdfe91afb3f4fe80260c30b51e74632c2f418f7a209a923b224dc63fa0c74561a6cc67986a1d22a00a023100b617f44feda360893d05997e54dd200a068941af322783d082a2bcc285ac01484f3b68154c268568db435a2a8a9dcbdb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100adabc92b0e05d7e15cee423f790fc50db857439b42f9092229dccd66eac39d6c851a29ade8c722be300ef55cddda9d170231008e0ef5481c09501f8acfe07af851754399686d4849e72cf4d3ecdbcb059f65707886bc1eb24460f954fd67181e30e0850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023048731e6bd8d73af68d546b1a82410cbbeed448344a0353cf135363ac1187820752a03bfd5f1351c39ef11a5009817c98023048f32e78bc02483990b51748fa38332a0fca82dd144d70651b84cd799dc35322e30a25f914732d6ca3ab34ed82edb29c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fa219bc691e743a63eccf808e15ddcd756eb139a7f28b32ed6a3a81cc2f4057c3e73c90008214fabd12dae062824da7602300cb3921f05dda8b241d987a51d13f65b3fed4f52432e30356507a8aebec6ae0e07048e09cb93f1299140ef55822d63d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305db2f997a93cf299db2368f7dae5d2202859bea2803e57ee74275718f52268116c97a7f6182a28a6fa48628112181cb8023035a672722a673b30e1cb726754f126aefa69c50db516c854c577f65e97dfd3710557a75b94430ae4ccbc4814bbdaa87c0302047c435bb500673065023100ead8a4f61a7d404fca61b5342d363089e453cf476fea202c78b42c2bdcc405ea207747e9a36db1a912f432b89ae8f75902307f3c1e0297ec243581b318a22f50b9ac995a59762754af90b922760648f6a282ce98ad0dbe64a86cc97a98770b5989020302047c435bb500673065023100c3f76e813fc62cfdc17492c1086a87439c1e517f561a1ce962a101b513fa66f5c5d28f2411e5ed57338e41e49e9934f402300eb3ec6fb60a2826648aabacecc190b9aeeb9a001d12bdf68134092c3656050efc89375b9bc754d932ff21dbdd409add0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023051904bc96d06d5982125b2b26f8655d4fce26260611982b6850e2908bf2c02e6207668546dd9c4efedbc4f2e9186fe1702305e4c18dc879ddcf9e8f7dad59acfe8282ebff0fbeb5e01d38321ef4ab8ad4a0d9da5a0841f65b98cfb4c91df03ff13fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d96ce1ca84c89bd3903f3beddbcdabc3398762f57c789bedb1bbf40ade171bd64776ceb1828f1442aa83cdc8320dce89023050a79016278d48470f108da1fd1e170a6a2ebfcb227ab61061d39ce4fd90dd94e518cd8a0e159dc315ae69e8b8d91a570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230744e2eb4cd1149245f4664d67b86925850342ae5b59be4d8b8778e48d83c31be50601e021619adae89e5c2475bbf4a8d02310091f5cf14ab4953a6215438bf105ef51cc3154a72ac54ce14317daaee488bffa22197453d8248ac83f79fddbfee43d8230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023021ef8e49f2ede9983b7f73461ea1ae1d1304f9524bd496ffb538271b3921795ecff98e8beb947f7fa06d1d0a9c99fd9402300f76eb646ede2158f874336c19ba86a8db9b5c012b1e139cdffe18fabb4a76f452244e13b975f5263d156b2f1357d7160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cbc122cf6bfe8d0ac01e8261969179d9dc1c6dd86f1f62eae1d8f6b4f1806509ead6344df85e77422ac70881efefbd30023100dcf33408a83ed8be2ecd1628a2811a3fa00dc6779a6190da405015df450c9df12041c995b6571cadb3f6fa53346997a40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a7d5385062e8dc6a39ade44cc0ed53893312b282bfa9edba4d3f94e4c943889fb1cde6df38a768a90897029de6e30a69023100965ec702b55591c026813b6d6d34b1b4e75fe94d0eb190db94672ba995f3d86785701b844f722151e6d73cacb24f82560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023015501f0f6b5bd331663e2371242af3cf41c07b3eefcd94c299833bcf7b1746836aa668844a557bca4801fad455207e3b0230283051e6a8227c8a406db719e470b63b1b51f30440af8326db072867226ee4ecabab6af965d46f1272f3a08355ba0dde0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023055a69381e4876cfd9a3404294e736157fb4ee5e7e99f5dd55af454ad05d7fa95dde5e54b35b7cad27e91410a9c93201c0230020f77d71f70efb9b49eafa84af66b4eb504aa36f1c1ef2328d192beb0a1a11100e75901908fd25a140e2b005181ac970302047c435bb500673065023100cb21653ae9f0b2314e9b4fcfe8e88bc656016f51afef3992bf4d7f9dd74d69e51047c4ffbab45ca2d50db327cf3fafd402305e5ebd6115580da45b6519f51aca9ad3b75b96e4eb182e8a2f4a07d90692146f378cf8e708da1aca9fa567be39588bb70302047c435bb50068306602310089e90ae5d413058e6858d23c252727d1350e8f81eb424e7c2973d4b810f686f59362abbfff2a280f7ae007a8c215ad19023100be8e3b23e221495bdc02ef49ac0fd99e87e536f48d0300ff66f831a5fa3f9616659ea3804e4a2d2891c6f773491b097c0302047c435bb50067306502307ae6815f9ca764a01bc456f7ab2becb347fc0237321f7c63534d46f2ab074f11df5395ac2364b5c685bbc270790ea70e0231008ab8b931ab3498967699e92a319557e821896e6b541b3f931a3d858ed3e69d536f73b03899b27a31bce3673e499ff5c00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009896d0f82c6e3618d97b0574e13d2f0a974ef2c0c0e0245fd6923eb1bea4bc328ae78d853604a60e62ecf89bd5683b0802302608575092315f18856c5b9bbacb8f808589a47fb909f834391a13cea7c198f12b6644c246dbeec39d70167e8bdba0900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023018fc93da7922f6ff1fd8314134d265c667f99c472b38ec692f51139c9937574376723ba05f5002b0b91733b7ebae17c8023100f8c7edcdd443ae0c93063bc2bd264bb91fe170df9ff85a2d6756c930d9978746796a589e9d523f50c4f5bfdd8f9e74b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023009f99169d0fb4ddb20d57bea3108b2f6bfed69f3dc98eea68eef1ec3d5e62aeb79523a97b25d2cd9bbf21cb81b16f21f0231008ecae30ba5158b63e8ea96575eed62e6a1f0fdd6bb2f55c1cd22942b723f375db6d12186dffe0118ea7a363dea6b99a30302047c435bb5006630640230622551cd17a0296802eeb793dab7540067df41abc34c03b6fa036d781c10acddb11b9d9c37ae074c5547fa758aca1ca70230432188225228be4d7712192ee03aaad3ccd2c8c57b17c0005d6f2a10559f43a5217afa4682d3af9b6ec3c9524a22bd520302047c435bb50067306502302952180e8f36dc7733bcdbfb8751587bef2e5cc800446a0be9479d2ca24327aa3652cbed4d4c31c7448139932fcf4b1e023100cbc6e3be891c318efad32340300bc1c503605ca624678c27aac80d9ec4f3eb96a7949010e513a72887129f82c2abfee30302047c435bb500663064023025f900dbc817f98ce4304d2673ba5b8075df3a603e8a6f16890b528e9c7bfe8ca10113e96d37b71cc54c3dced5abd80d02304a294985239402748a22120deb8ace78543deec013b151fa130993d43c4223d5e58609b2bc4618640b286fe11cd631270302047c435bb500683066023100821a9a37e461e7049481bd74f468454563bf9ac0d6f7c0ed6f4b622c1767b5540545e978f77159f8ef7f28c3dd11d394023100a2211049701925cf744bdab12be7c2466f436cf9332aecfc55d9053c3763543f50a1e72955b03b504b056519476703b90302047c435bb500673065023008d6b1417d0fda1849b72f627bb51020beda7a1db665eb861d6a15cdfeab5595b289243c0362db24cda4449c5fb13f8a023100d85ae7bb796adb2f8dc6f176026a3d1bb5f1a6ed548b63f1238de36a65dffa18a7ba797e14ed98e4975590c33e37feac0302047c435bb5006730650231008073105641375d89e684441f6d79089e658097080d9db35a33f4ed7a6d9bca63c5646ffdcd2fbfb857ff370ba2f5acd10230485a54226a074ab6c7e4e4fa4c554f59d96528969635ccf9028382c85ad2b0f3806cc277669f36ddbd69c816a6c68ea40302047c435bb5006730650231008fd9a9be9a482b34de852974889562b637428bc621020c262ba3bfa856866fffb99ebfa05a3f778a7a3eb570cf49235202300ae95a0c99e570153cc4b141032bf6b09b34edb4beefa60098afb9248efd862ee2671bca304e6de953a15b61b80b15370302047c435bb5006730650231008000a4ae66c4b2c41c66a8969b52bc108058c06a114de39e9d2c3d83d0bcd3cef878605562e7d530d5e2527c83225fbe02306f59009d8b56d59309573016f75da7d16827efa5fc4447d243a6175960b8b3b4393bb893a7772bf234d048273ea3976b0302047c435bb500673065023040fc17aa033b1a5f5a0b936bd5cd536e7a33ed2da52ceb8fd021dd8382c0b3548da91f607ea66604e117dee97171ddf3023100eaf94aa692df86a147c5ca72801bd3b3d2cd5586adffcfe2c4443fe94e79ed6f581f33af0ce86608cc335bec3c55dfd60302047c435bb5006630640230088e844409a907395b2bc8d0fe55a0f1ca61ddcfb74371ac288dfbb17a9e973cce07b52e89dc2f7bd2d03dae14209fbf02301724c82443ecfac5510e0174f7e341bb41bfa98a3cfdbbfdda9f44e66baf7fa6fabb69f453557a78f39d31a318f3011f0302047c435bb5006830660231009f8b98bdac07791dfa758ebb8962463ecb0c461c2a2f4eaf3c1d8d8ae09679999736ba754b43b1bc1e126cf115fb7a6202310087e6f5de87202087552d74597dba68be56ad2a2aeda4e7f4c421631ffd649de67ba9c8f8735488621d31f4fdd18ba2f40302047c435bb50067306502307ed7cb6bded00e6019bbfa3259b8b9db9f1e527943930e54e529d15419b5726bef09074f0bedcf6c2f8487db828aa3b7023100d7d2a6459c2f316e3a812a69f185230c0f1742eb47b4a33a62c9baeec2d54c679170a6be36d4fa51113a02804434f7840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f178cce2f10e15942dfe7bd4a7000b71fb530055d67f91b73f5a5c1ac52796e234e8a0695dacd81908c2ac44d61fc020023100bdc20bd516fb2cb5af8187e9dca6ee20584a72846022a2bded7f91d532c883464c1ca82665769a48b582c68d1deff3840302047c435bb50066306402301c87cea342d1dd17ab03a3e9fc24f6784833edc92acff84380d5ac014ff270f10d62f11ea91757e54fcd05b1df0a313002300b68a30651037a45dd1cb3e52a286ad20751eca9cfc679e734d5fd194a3ad7609c84e825e6e5de92103f20e6cec8542d0302047c435bb50066306402303e780ea87adfb4dfba6cd0c5044fed8ded27e0c63ec2eb9c0c96f9bdf1093d9956877d3e703165fb9fd660aa6f4818a9023000f0a23202dda18a647bf0fe933f157cbd614afb2d5fd4580eab0f69066ed46071a7d66ed211aec9d94167a54a7b35940302047c435bb5006730650231009eb6052abaad3cd0fb39363ae1945c57d5c4ef9ffe157892380c2513949fb82639585854ce50f3b7d1b949c5bb03324d0230695c674cf48ede62ca3f5645153143db7fd033b8094535e826e66d573de4091c45b96e42f3da0c664c7c22337ba957050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023034426d5d12d08ccf2d0afae0811f9d30c7cf531a73a0f382287748c14308075fccbf5590e7de9bd23f1bd6c9603121af02306a23b5874b0518b52171ab82cc994c38934cbf980d8946f176d945360871fb9ede42a5c190e0882fce038d8fd0e3b5ee0302047c435bb500673065023056a74cdf3a30afb919c2b1441e257798812759e9764c5642cd98030ee0d2eebf838531657393de7ef470059a44cdcfd7023100bb983a02bab191c3efa0024656a7d82b969829cb4ed98fd33305626e8bf1c2d87b306cfb498b7ea455204f10849bb7090302047c435bb50067306502310083ac93e13dc7ce76d91606d78b5a710b0e499f204ca33f003e8fb55d2f427819f37891efe0ad229c2edb74f6d06ed4ca02303a253158765b8c05c6f90f0220c44e0cbc497ce466bc53886c160ddc69bbb62169f380ae1077bf1a644633a0407596410302047c435bb50066306402300cf421c91ee822fe3ea71b6040d2122849c51aa3bc36b519561ed6291f877e156f53247e678c4ba3967b53f0f995500c023020e0804ba0a4b7602d41350b574fe5536d8d195fda4904b117973fb23f357909c88a898c9c95673580c2cf97edd822040302047c435bb500683066023100b88a251c95ac2ed3534ea7bf57cbf29446aff5913eb0697edba75b0276bf7955dd417a590fb70fb96170544b4d9fab4a0231008202f0bfbede8363bd33c5a51d3dac7c3d21f11ede6bbd5db40bf4cae315006404096dfb8aa2f7c28b8b4af42b57d92d0302047c435bb500683066023100edc4b8b6b3ee5bfd097e7604d82a6f10b02378539e6251721a63beb1d5685c686f90c23ffd38468bb18de5a2fa8ff0d3023100d36af7fd76dce52551ddebaee6c16dc81ed8825a95a6252b5f005c3898877cc612f3ddeec3a1374e7bff2076ed46999f0302047c435bb500673065023100d0754666424ac7edde8e5fa90e16a282ea89839d5210207d5437888774c35153a1a993e9c45540d08e5bb7387b582655023008170c466725cf1ff673647fe87398d049c63455fd7b9ab97e19599fe2767b5bd61dd4b41d019eeca4d2b607d49d7dd40302047c435bb50066306402300cb92bfa319df94b520a4f0516c0e0970560be2c0462d4948ed41bce24c67f9a92eb904f0e690db72d347d528c6560c902303e7e3fa0f5ce73ba9283629ff370e4dab583e0678d223dbc551e1ab543c3ef22e8de593c533b1c9afe457569854b55350302047c435bb500673065023100e090c337845d0581597ad7b081d49cee4d3adb1f12361e4b5ac66f44f879204670f8ec6828ef6117f07240060b15d17702300947297126e25d9f0d66a0c62aa003ff1432cb2d272fe0561bdf6bedd102e48dec99a74571cde137a6729801a1d53bdb0302047c435bb5006830660231009eb4bd7c686edb3ed2ee56cd1f032d3051ebab51c4e6fb2095b6bd3838e5acad18a2e57c88a828c3bf2854f8cc04c2d6023100a3c7bac2272aa339c15bab7da1fbc1852f38706878b661a4ea0405b6e7457d3001a66c3b7ee00076b850a60d09c4f7fd0302047c435bb500673065023100abcd8f04b80b54f543f65d129546b435b0de727befce242ae1aadef2bfad3da387f184cfa30b5335913e25eb80b0b098023046629b2dc6df68222f6fa94f60b705fa45d0b87fda13ee599fa8733b610b48f2a0c66ba465022da3ad8d9871ed4e4aa50302047c435bb500673065023038b3c53a41f112d8e0b586fc694fee7e9f923b810d8d60be722594acd1bef49d2ffda2abb016ce6d979e33c1e23683f9023100f56f5c4b2fb0661195dcfcbac5323f2904c8dfec9493b4657caab68df5ed1cfbd072b63d1a42c6e95c615c271931cad80302047c435bb500683066023100fcfe0c42b92f9cbea906fabe23cdf9811423fc51785c88381b219438534af8e7e5578a9285e689d1dbe10b84f3b28dc2023100b246cb4762e308d617090ee616ccc1f7b45b1c4451ce61c772a97b3fa066ec716102de83c106db880d4605f16418e6af0302047c435bb500683066023100ba047041b0f3b8d14070cd16a3ef4ff39cd716fa4d480e74ef4e13fcc43aa82529086efbc4786535fc17c60854788da2023100daf4b739574a10f5d725385f5755786b3074ac4c82b818432d4acbd0331e19e74fccbf8b2e947c2fbd56dcbeb86432260302047c435bb50068306602310091dc145b9d618c70330e774b77ea6332d206cafb4019de8e60eefe1c89b542fb81f4544a1a0e3677bef57f6e46be66ca023100acf5361cf05885fec356c246315f7f68d72aa2deca30a57f72c52dd7bdea75da33220d5971036562c69a6c090f055e590302047c435bb500683066023100e7fabeef4a4015316f556f11310d312fea0e243eeb68d79689e84b4d19abbf5c1797415d78738d2ff4b377a4c01f8bcc023100c40b7cc6fa67a6d5e900dae8a95e25b9a795126503a879b01b5607221aa51bd3620c2aa4265f1e61cebff436ecb740b10302047c435bb5006730650230092ad5caed948649822796e80fced0d9b8a20ad27fc5cb4d7f6f9f53ae8d65523e1962d7f58b17d95a5659ea8f415061023100e1a4bf09bf365c8035a9a963776ab948a29179132db5ee884da95a98e2e89b735defefd72cafe865973cba2c658000740302047c435bb5006730650230579ab480d42715845e2145362d80a410aa22c9612f5a362747fafd57b4dbf69451d1c4d22379b48c3b9501567ce60526023100e6a6f28c5b80fdceb51320e31b0837c288f67b0b0a33360a456ed7a83c6dda394c9f0c35c20aa043dd85b31931bb3e880302047c435bb500683066023100822853f7a009c887f700b8addc017d3179d90485bfb395f73be160713ad8598561a3c8641cb66d223a9c8839d90bc162023100d1437fc0bce586d179263ae6efd69d1d28b3b92839909cc05d9fd973f98a784aaea69d067b0b0d7885ac3ae6546ddf8c0302047c435bb500683066023100a02f5205d77d95374f8d1ca0dd6bbc3a2b9e665cc18ad54b49adde6cdd7d154eb26079dd4a512e150dd730cf5950cb4e023100e23754928862c5617d4c881a6a90bdc0421fb942a712154ac76cf779f0964c290c68ec9a5a5c618849363ed227299d920302047c435bb500683066023100a15707b27197088a11e72f4cd9776695babb849b1b4035a1ee0ca6bba1c0e42c6ad2498e6f6cfb321d2f6b75b4f45c0d023100f1fa0f54159fc7bd052a9fd987580300ada63af5379a317c90065eb89c6536c636f5a11593f0a541890a86d3ef4a1b760302047c435bb50067306502303a4d434f21f3735a2dca72e30a28af5c8597ad3fe1dba90e178c3a74a7d26cc9730df07141f87bea4fc358807ab6ceee023100a4c1b677744b807d2000b36b92596998b738d2c7e367a414b1bbe5f2befda9b50282ac883f2ff50c6c2723250d327b600302047c435bb500683066023100ff510ff377dbcaf05da34653f2dd02bd1553c9f2d50ecf21d18ba4c272a524eca53976947546968742e0f6cc5cb441f1023100eef1a2dae62e289d942e020907a9e25d54d7d4aa5f05536a63fef3912d50fc270e89c85d237c5ef4549ee96c18bc383a0302047c435bb500673065023100c04f0339d3879a9231481cd941dc9dc1b0b38855743ae94d5e87db001970007d2e0854989f6ea2d066936588095a10e3023013e433c5ccebbf299f27d74222ba2884d7fa35d4ae751d9e6afbba24ec4cb8c11a061ae609ed34acb3f62d64be37a5340302047c435bb50066306402300154baf63ef9c3323f65be88433959182bbe9171675bc0025f01f4efeb1871cc5df9d0af79ee445fa082b9dc91e35e6002306f5bcc8b71f5f39b09b42b87891406bfab295211d030e2a47c992d14648cd840ca30ed15a37eab07c91aa36e396d74240302047c435bb500673065023100bec5d6a4ac1861693f7f9bfc982c2a3fc0bd9fd2c97791cd722403bd9000cd132aab1506f856bcdfbed829b3f040af73023031fe51c559050f89ff546b1de45d66d1ddc132a1a5b755533623e428f7b012259bd3b36631c398e303389096174238a80302047c435bb50066306402306e7919d6a405e2d2cbb050561ac78378bc7aef6ead176166ce246894d038b6d541bb66af9eddebc478606171dddf785702303493f3232ec2ffaf7d8d5f2349861ccaec7bce5b3098268b5f94df26b548866d24466d3fed7008e88613d25b2cc280520302047c435bb500673065023100c7d711d4297dc503d29fda3e112b2ed5a8bb45ecb8383706f385281f824befbcfb98e9f90ba8410b9725a15cefe6793a023001c0a12053d5be6b8da247515b157e42a605bb7e5c2137c5a20928e55480805f8c34df94925a347dba69b7060c62ac0f0302047c435bb50067306502304337b52395379b51df75509d4a975dc4c4856abf56b720c488a6f924eacb3b7248fa1743fefc3f26c798eab29c2bd5f0023100d56ca03017b9529194dc4cc50bb7849fe6924ddebbc2466f719ce93bcc24832145c3c43f81b532edb8314b1c75d17bb60302047c435bb500673065023100e1bf3f60c163c4a82856f5fdd8d49608f84febf3fb7d75f6933fe5081ac7800858cd7aefdeb50e44ef8fb57164f8bcad0230551d393a936d9a6791b26caed32ce54629f082e25d70c1fcc15461402fdad2b99134d2f5d0f95bc153fb81ddea73d2890302047c435bb500673065023062beb87e096e0ed7d0fcddd159c4c1feeaaa627897c44aea1ddc09a727c8cbd5af0f38c603fb11da2fc4dcfb8500ec720231008266fdde9789f824732b1c39fd420833e91c8c59debcf6c43b2cc467297b6a1d4be91bfc3df1fd8290b5cd4683f15c0d0302047c435bb5006730650231008a8448c252a2407943ba17c1ee434592e8d02b207619ad9a12262d811db1137b81ee456e55e07038bc5d621f372efc7c02301c5c9db3941779d0c83bbac71ca576ca55b1a416bbf36ad7e30ca75f1c6e4a140d0a31a8510b0d341838ec570ad4ad500302047c435bb50067306502306acd90e3aad4de68cb2a7768ea20acbc27e9c9600383f6abd130fc55fcfc98f3c70b4c9438bfe8e3b9515b2a55e62fe0023100dd3828979d1dec09bcb2a6e1eb41488594fd4a111953ee9ec7b3e4288490f08c97b862f0aec3279514261e73c20ceb1e0302047c435bb500673065023100a6dc108e24af398d36cc009a813a5829f1f1dc7e7956fe2c72f893653610590f4de306ac221069cd69419e590eae637702305fbded285f3f884cdd58b6a6bb02c8ad8e1309afb05f6d7a1fe0d51dbcd1b9e94578a30096bc87abf9aba23db7b58d670302047c435bb500673065023100d70c9820a0276d382eddb68c6c748c9787f6fe7c8a58772eff22e34a0eadd0ae4fc4cc37afca7ef619812a1e7828413102307e0b186d898c5b4763484e3894640408738fbdbebc38489b9834960cfad1724e3ad0bcc54abcf3f6d41c6c3e629d18bc0302047c435bb500673065023100c0e8a4af559ee961f729ea01b95278e735430addaf7fa106d082d4a9a536fac97310f9fd23674cfc8d25c9ca8a53781402304e37fe1a505714e74d4a787772435e3c3e32e9e3a3c9977daace6519ec54e7c3140f0f67aa4f2afcf6aaf33e822368620302047c435bb50066306402306d7b667d76508da987aec768fb945818bfe3a1de6aa93d1405ec9f655539f365130c0c92c20e2a3a230e9ecce66e655702301c9416c407fe5d8653b379ac96ddb87e73aa932fe7cbdd97613698907aebab5818e97f9d6dd663ffbb3ba67c66796b7e0302047c435bb500673065023100e5aa68a50910fb6428066f2da129eda2e4ae438c84e147f988648c09ab8c2815f8f925b0799cc8bc75401cf1c33ce226023026493134089cfa3c5c36c9ff313b6c09f5bbbd9c073a0409c3cfb8f3cb21949c56dff38b349a6e00e610f2438cb03ef10302047c435bb500683066023100978924cff31b59684b72da1a000b7f513078b4c126d4b4aa73c8f88119553cff9274e1d1604776d4a598fd5d34d4fe28023100fb72a5dc99d194b4e1a9eb63d91b5eab5cdc690d30e1e7313a231ffad72a5cd14fd4e710f996892a64e4393f956d3ab70302047c435bb5006830660231008604c3757ad3fb4d4362a23d14394fd795e7dd7a79510341ddf36e19c126bb38030f3c59527fa6551e56edc1ced9a0a6023100b576417e1e6239959907b7bc0a57044251202aab1df8d7540ec857d1349309277cb18d8c41ce5ca2b39ffeb4038949350302047c435bb5006830660231008bf97cc8c4891016652479433e9a6b7f2270352af4012159527b818e8a8805d0504be3a751f6720d291ecd733b3e14d4023100897045bf8b5d89b4efb9d74e0651b11c7a00c7e93d792396bd0b522bb2bc4b1067dea43650c6bbed8baeed85bcc56f7f0302047c435bb50067306502301bfa81ec248e456c63b950e3ca293f39b780b891892f73a2e5ddc58e287fe9cecf50f763e2d21a80eb08a9a0f5cefc1f023100d8a1bcc5c827fa841a6b9c951d62736e57dd16540a5df380db42381715910d515bd1240d0b9a85995389836eaf42c63e0302047c435bb500673065023064e9e2f12b8ec830337d5e1866255aa59752c580e0c609aa3d9c845879c8984445205034a55d2ebb8a41d2cf2145481002310084b3c9586cff742b787a27752c3bd485f1683bca835e85ffab046f273564babcb4f48b811ddb85a5a58b567db3c08bfa0302047c435bb500673065023100ba6be5ac748d3686e9aa728d150418adcbe822d7807c01251a6885ae72fe24c11b2951e913529d71fde4ca885db4104902302c3467748f0688db14f40e7ae572e4bb7557377212adcfdc0e3688866c0c7b1f9dc4033c62b0587c32fdb74a1e2086c30302047c435bb50067306502310089631aa2aeb71971a225c38d9af02c25e0428ecdee8ea15ebd6b9720c5c8a6f5eb418441e18a01f175187b488bff6b8d02303b6ffba201009954b567ea3eab1921883f68c473eaae2c899feeb941377c51bbf335d929ae7a20c16cdb24bf2c669b170302047c435bb50068306602310094cdbeb371b31e33d8737b19744e7115c8e0816b8ff3d141b1a14dfad8396152e980caec1e5b6af6cc18817c848ee58e023100fc3f69494a43c368987fdac075e3979795ab427e1ab40d8bef4e0ded4f4ffdf917547e71d916372e04b2766cb531a3c50302047c435bb50066306402305d16a6209ed57f992148f64d16a0a212eba929e3a725a5f36bfe0093dce744c861b2b4f678fbbe5e1c1b1e1d805b2090023053cd457db8ecbffe2cceb678e32568bbdbbb983e6e6c67b660490532832f3bd7f805a0b759659d5a25c97634190962660302047c435bb50067306502303315f595c8fb511046ca6c9cf18b718392aa3847ce33b52d4610281731dfa19f8300855dca5a225165f4509b98766fc3023100ac4bd1b0bd553dc80006c8f780407b3bf5d567479ad04d27e50fb1e76173a6894f57118ffa3ce150465e1003351cdc6a0302047c435bb500673065023002162d16ab0c926ad5b4e31192d1974da7fbbe011e683253602cb6c91dbd814822e909365538e029b6984d34ad416b77023100fe6922d56ca43e27b340a09179a4feb88080e1f21b9ee055e31810835eb05e686713e12e82a7467ce9a6f15d0dc0cf320302047c435bb500683066023100de4bae72f7f6f10e5c2658a041faa9fc2c9e6a7e2f387106bef365d1dc0d7ccab8b68e8adb0063f15795afe98811bb0c0231008cf8d9357d2599600dcf0aa6d9a3aee5ad556ff8d2f919062e236fc5582da2d47c9d76a4725151439ccfa960f696c2d30302047c435bb500663064023076d9995ae78c18b49a15715764a071162e29708b56c40aa88115169d8635901e7a09720de5720f3b905585590ee6b69c023073a38698a70b001bcbff9147e22ae0082ab3aa58418d4c47f453b669e6d0ff4a21fce9dffd3f80bf72df07a3fabe80200302047c435bb500673065023100e7a112c07de10b0c81e13f4671fb8ecf043ec53b1a3d7868d5c7b030d508dff31e190e79ed0684229f39e1363cf3546a0230518440d71420cb818de08fa3456808a0ae8345360a69ad424b83724b8e4ef53a4e42214bc2c9e69dc4bd62a9b0d834490302047c435bb50067306502302ef56c665e8973e9bef6d07233007f5b080b1a126096b7941893359a788b361944485c869f6271b5d57efd5e79cf080b023100f885f891cd9caef5e6a4a51d876944fc5d1fe4068f5ca580657181e73757466be726f354cc0fec1db04e3ce8b95106880302047c435bb500673065023100a41dca8b47d7b7e6f08f8eadf2294806f34f515b4d5c736ab8945a57918d28ebf4ef19916781362d6aef676e322cca8202304ef2ac532e07e3ba7b95e82c272227fb68e09639c4787b00f9a49a4af27b2cd2625fd7ccdb5511325ad191189a0b7ec90302047c435bb5006630640230724e991c683f99c112a7b3535d3ab520e2efa2ed3863b1722aebcd9484bdfbef73672d4744c0b99fd884e6645f039f4302305c27a57f6d23aa40ed3e643c732a0fb99572d295604713eecf4e6c41eedb68038f887ab47ba4e2f47a17cef441f5a7b70302047c435bb500683066023100fb69d9f6ad3466e93013c6c8ef32fd3c7750c18c29b195c7cae8fcae17a7de10885ae8242a079b816647804899a2adc8023100b7f87c667569b4fa8b9a7a097076c1c8298dd2c9189f4d4db3165ed1281950de8e0cc41f651fe10c37d668f76c7c88ed0302047c435bb500673065023100f7555b339761895da7cb8b3e3284b56a17976c230aeb99814ffdc5ff4faaef9c4f6c372c8ad9a042ca8e140d7afe139402305227c910fcdc1badaba8a2a67e8ac5d7fe6abdf522136cf5fe38718a9ae89b0ba3c3e1f9e1db0949e9520fe909b4729d0302047c435bb500673065023072ee0a7c449f216703ae778ee3de51ce5ec3f626163520d0bc54f345872e026eb884034a34d3d4c77689b80f99e5556f023100b76b0977f2399c5c8a83b31307bbbfa14dd06b44efe5444770bc6f8f188ee33dcb5f546a27fafdff678845a69d89e5730302047c435bb500683066023100fb6f15c86157c4602a7f0935c33f54be5840caf4ec24b81d5e7831a82f6944d88759199fc643852c91d6423771a859b3023100a2b624487676bb358fbfe902701253d9c0eff0222a698440ee72556dc4a9c7e56a35f182009fbe06f390ab807ec229800302047c435bb500673065023061c88cfa5b894a3ea5f753e6336065ea27a35e468ff535e366a1067f047281713b0d3cad664d86633b1707d7b87fbf0f0231008b1292c7df97781f5230c1e052b4fb3518bfccd1f818616da5df4317a554aad34aac64f0d3ec7fd8687b085b3dd7884a0302047c435bb500673065023063eb34d284535b5b8e2147797164e58ccb91488e9d8b0936cb1d1da4746793f5b931cf734b9a11de7cc6b969222e6529023100aac7243f631bf2fee1962aae63ebe61836eb0d9c744686a7d654447bdbc3ca2cd96fce79a35271f3dd317bee5e24a3fd0302047c435bb500683066023100e3e53a967c54bae4f484261925dce44c8987a84cc9236d8d86c1969b758af7a89636a21d5357510413c1a998887ab4aa023100ff0f9807699d79ca8c5fa0f57b8dc6a8e6c1ba881a0a3deba3c9c024f38dd681fae13a5e92145529ecb37fd4122028dd0302047c435bb500673065023043000f9b3659e5af4a6fe1a663c3ac46c1f4cdf37393b6e88c92aacad72768954689f9af9f3cb027f64ab0e21d1ca7dc023100daeea055e8755562d674d2b36baab5f106a26b2fbb227a0ce1fd96e9737a8bcb9ce43333e3d3b1bad577713a8807b9ca0302047c435bb500673065023100db1a888024a0d6e2fc48516614104c2fe0581c19928c2f1e5a7d8207b474e65afe2785244af927815baf7d87a83f7c40023022315adda8ec919f4dd7e24a1dd00e8d9de2642566fb402239a6d3518419b3e62846b1cac7d822fe59f320179aa627500302047c435bb500673065023100ea24ad97f6b154c20978fa8c86d39630def6f53cda464cb87ff3a162c571180babf50fd9eff58ab3c94f76032910baa902305993bb430a28d2ab5f107a7f1e18c6e0fcb0ad58d554ce47518efc8f1ca97c65ae4f7dfb4bc0a41835b0bf6a451457ea0302047c435bb500673065023100b9659f4de939d0aec923c617b8c1046184aad7491e752eb5d24127522fc5a1464f619465e6216a0d59510a57c4b2d70d02302479faf14135c7e774492197fee4ac6d6f9fc1104bbf49cbc38ba6a8c4fd07fd59fe5080b63dd098fb5a60892596b2330302047c435bb50066306402306fc57ab44ef8a2e1330581c2803eeacf07b0fc4a1daae4cf3aebe9993d190d0b20fec3f509bf6bf0bae6be7e4e59c7ca02300dc016d63c27039f0a5b0fe2260e55f7fcaf08dc9c553fdd146031d93bcda5e2802352db91f54676761e1e861f2b52250302047c435bb5006730650230511ee5c78c1e4add967ec6bbfbc2e5a3e613c781e69b43fdcfbbc2b93a67dcb47ee53d94f06ebb4f8947b91f8b47f836023100f98d5c5c6ab259023613a150705c3861fae3bd6afbb5a9d6175bcb34c0121b517709c8acd14cd0ea87cb821932a468350302047c435bb50066306402306d16514194bee4444ae071840fa580333ca868879a1afb4bc0f89eb1944fe0466c762e100ada2e9948dcad1f0c48388102307d81f6493ee8ba41f391b264da528ced69965f59eb6cab3bdbff50df1f4471beea3d8fdab74f57330c08c2844cac84ed0302047c435bb5006730650231009dc19a612953eacc7bd84c82959f70b4718bd14070416d19721871f015dd43f19088db9ad3fab3c09778fa83d972fa9a023014eb48d8abac3e3a4a5dd463a0b796e548e530fffb9c80281f9bd95fcc5e96610689c5685db09fb73ded459cfff49b090302047c435bb500683066023100a103d558c34d3cb7e6abd8edd8abf188874e7e2c587ec5ce7ef09051be264feaa74e085635d78499c8dae669d901f07002310080caee126fa34e240f6b5a92a374572da1514513eee87b354a86f37b4e8644175e4d4bfc313a9ebef06047bd87322dfb0302047c435bb5006730650231009da25b7cff52ca37df29409a4bc7eaadfc5ddafe02921498215fdb03a568301395ea2e376d4bfbf0a0a281dcc58936220230448f5155abbdf3b096c4a881edf6187f6a2af1d36d31df33a2a5e9d12db0bd1b2e70583678d192804469036a63812ed20302047c435bb5006830660231008dd214a50d14a53c495963341e6cf415ee6a192f7ac92f0ade6a8e5c3caba1664769e3d6b8ad1aa6cad325e38dc9932e023100d5b26a564ffe6a0a3655cc489877f16b04c680bdc8f877842ed91e2646184681812cf8e9a2cca686a84cbceb6028836a0302047c435bb500683066023100a31fe11f4caf10ae59be34caa23b4f08e9d93f1d8ef6051ab039d60b13908554d218af1e5bce5bdc89554722dce2bd97023100ce33c282f8326aad0e5ee78f8c34fa369be6f40245b1f18c1e14468f1bb3e1946dd682b813482ca48f3d8886bcc581560302047c435bb5006730650230756cdac76b786d9cfd2dc5d71dec7762c9e95bdc9c76911ab387a45f0999e326534a6edb55dc8f4ed626d2faad4ace9e023100db3873d8bd6e5e6697118a12e2ebddf047f9a0954a0f7e0077b80f45b896e1ab7c0562f597dec0d7a3e10a2dc3b5fe120302047c435bb50067306502303261161be58f149b1d68be4b6e507343d76a9302887dea194f254787480d61d2cade4a71dfccb05808ff8d23c055eea502310098cd5da9c578b7bea2bbfc2902aa30f8d461d932b2e0f43626ba38bc2745523c90accf77c03af214fc0858a21434b0970302047c435bb50067306502300e01d7a65c174b829fa2b9f830ad17d4be4599e812354850a5e5ac4f24ac3a183428330e6a9f344b7c9854139814fb9f023100b8245c04c77c5e7dba0b4a1a72bbd8af7f2abb74aa5503938ca1dec3151e009acf74329e021036991f286cdad0b669630302047c435bb50066306402300c8ceca7aa291c925cd8c3f165345161a738ec89419aa74ed60b0bb57604ba0aac3ce65a702c9e8fa200df6ed9215293023062dbcfed3c4a40fe1782f7658d7a9df020b66f9849dff9940fce7e201a6c291775e7ca74332e556a3f828c4bc7fdd77f0302047c435bb5006830660231009a9d6883e23fb9e45d452c0ad370dab76ee8f51e0b8ae47d7313ca1f5ac886c189e81b82ccd779bc885503b0a848922d0231009150b5351419ddec4e1d76ac581c466947803879202afabc546d9ec1a105955a4377b110ff4bcd9bbe403ee59d0266a30302047c435bb5006830660231008bd1d20a41c63fbf22cc6304412c44c0e24d916e6830ab0aace1776be23b9ec0d059e71a0322f4f4429840770e8292f2023100e5742f0808c11827416c223e6d3380922b354ceed23085b34ec3d2295ddad232214eda377293c251a531249d13a5bbd90302047c435bb5006830660231009db3b74febdf2db149840f5a8cba39f75a7230e1bcd691c0e9f8755e1ff7a472ddaeafdfeae830ceb5f5621e5b040b66023100eba2d5440d5aad7a1ee417ffb12deabec202a7038612f3493e59f0d9edc452b520d09d04a6d319fadc8afd7c638497f10302047c435bb500663064023053656a28ba8cfbb6369e2a9094a5de050bffaeb42c7d163e7d2050b1bba582e129979de0937d76d3f8529a4a6276cd48023025ba2a0039e4d68ef1aafbf137dfb0b543f761aad3fc3adf54e96c916d968b55ce1bc6b14eb78252428021c346d1cca40302047c435bb500673065023026c6fe66cd7755bc522a8826e27805e55b3bcbeb1b7486604cd824e56ac9449b0ee86133d1c7caace1001219294759bd023100b64f8c92bf46eac0268a737ff1df73c8f5e5d74bbd384ad88b0a59ef836db7b8cbba8c5e95d8a8d54f9c38daf9e68a8e0302047c435bb500673065023100a32f4bbe57375b5f734fd8c8a7df5cf6ae78171e045d190e9658f68f0ba51b9eb2c5dab37298f015a2ea499cde86b9c302300b58c0492e95b3992605dbefdca8007906481a7b91a671e57c9f5565202c059bc0ea77062723e4d030daaf7a2e4348d30302047c435bb50066306402307f0172706b02e33e5629b8830b8d93b52679047512c50ba9bcd83b4e5168e7c3d76747ed5a62d910f6ff9f2a9af277a3023056997a3cbe0b621a329b22553dedc36756b46b6417f158299ebaa7a308ba5442d1e8840b29f913527a19e8eb3b4e4aff0302047c435bb500683066023100ff108c3ce4e00cb0d229741edc8831f320b2328408524af366aeda2270d3059afc4b9ccbb8223de58de36e9bd85464a5023100ca77e1c36aac2c31c46aaca2d3a64e7826614c3f55368f63d862c6ab10e341aed0038bca0362f282fb1321e413e3ac8f0302047c435bb500663064023051ba21b8baa88480220e491c0e40c489b16de6524de8f4c587a8e56575bdf24a7b4c58d6f1ea0ccf158fe75e544dd1ae0230293f7481b1fd94efbdae1504f1985fd46e3b0538a22dc0f8ff3e9904a94bee1fa1a8738c6bb4a82e421459dc70eee9560302047c435bb500683066023100f7f959b05ce06ef8bd74c0bf78e145f5206c035723d678dfde7a2e7b500b1ca0b97ebabfc0c8ca6fdeb6f6cffb6d643d0231008df006870614591046701647017bf51fe6245d79474e4b5a638fd2b976f600c88d2d38e85bb34faee097857949665a5e0302047c435bb500683066023100c1b3d582e5fa6949a93b42ae1103334de70bed183a87a5c63fede02540740fbb0405a41a357d571c8409dda2f885f8ab0231009afdb0f62210863c9a71a6f0722de04103251b82bc10252c28c2ffa921188252c3e5d0d0512e83431c438c3d853f492d0302047c435bb5006730650231008d0d432586082716f2e2b35111eab0a6999631d9693a27f899c732b9e20482676053b2877eba19941f26dc9fb3fbc4800230659bd51b7722faa152a7b693976ee0396e55b8912a6549e7b2b403249a05db77841e60f0b4f4cde6d14bab1ce1e8385a0302047c435bb500663064023022d241a1412e1c85ac51f50dc19d90453c586830c5abcfd70d78b2f88400aaf70d42249bcc81aa1ff0e6ee4923193acb02302ef15cdcc6e30d941ed9012a442f8847fd0b9e8c97416a9f08c922d3740ea3daf830cb41d7ab8c837277fa20f9b73a690302047c435bb500683066023100a0a184b870af994214c121c2ef00d4acd01d010a544c48377849f04679d17c985c3777a89603691e6e2e577a0272d5370231008b08428de519d36e0e88886aa06bab20900714ca3fb028a2dd1033feb1b099368eb27eb28867c29c2e8ff9598d66000c0302047c435bb50067306502306e3f85586173feacecdba10f7e869e38d792cc5bba486aedfda2a8b5edaf692f668ac7ed9dc80e9c6b3193ee6375b677023100e3ad19c313b174a2613bd1d22aa3fe8dc8d05feb643d6d6dafb1c18d9a9a7ecf5f332c34855aeed9e3b8a167f503c4ed0302047c435bb500673065023100c3ee110c22c4ab67dca94d252424df346567c123e0f9637a7f5d62b65f68b7c0492781d6aa9d17372ee89392ee2bf7da023006841da2073be36c169758a1b8557ef1a7c724c9f09409954c13fb1af4f007f5bd8031ae85c8e8ba01d9c26af81b4a920302047c435bb500673065023100fa971e8e2c707ad6af7de5f723c059163787bbaae74b596b27c6420fab0abde8b02c3f4f1c6802b1f658be3ed511d8f0023036c11eeefa6d1f0f7e1c2332fabe411295aaab18109c1d739302e842d9d6ddda586b5d7a18385d3543abdabc7cecf3980302047c435bb5006630640230069ec2450b0e8531e40fe61934444299e0f835341099ee33009f374897b05505756f6f3d8281bd243b8f695af60b9e0c02307d5796ac89e37cbb4b543b5fd4a33430d9ce1505389d4b94d462814a0f50ba08923feb553190828cba67925f5736f6870302047c435bb500683066023100ea9ce0d0d51fb1cb56e79910c16df4a4470e55cb8480faf4af8ad44e89cf4bfd72b5965b572fe662586e59bb24bcead0023100d85fe6d70961c84cdcc0fe5f8adbeb4dd8cdcff6c3c739688371268e318a8698c23c1ee5571d8eadd419fa417c395d830302047c435bb50067306502304411281a29b55bd08b0903e8ecd86ae3b450e99a0ed3aeedc397ffe82029a6b53fe0851e7c366e36e1d94334910838c6023100f33ec61d06bffc38556b691d838df9ee999cc6f1963955d8c66d8195c467c866e0efe67aa5a540d8aeb4d03ac46143c30302047c435bb500683066023100f4f4cf6f7b849b48c53a963040e1207eb3d86cc4cbedc40b47b8e5719d201a3138633fa31e5686243f89203b28d44d060231009bf6b2a5a7e65e385e05742290d00ce34cc79ec6d4caa82455c642540b8a2540f013ef148d1918ff34d5805bdc0066b30302047c435bb50066306402307741d5c1832a358cd9954554f73f444c8f500d17a8c7e7f5b55404b25256497f69a3ebf3cd2788a69ae3b8ce928fdaf102304137ede61cbe99a7d530f0e43405198f8524a6001521065e8d8a9e6417e1557dec12d834dd18e0fbdb87fe4b0e3009020302047c435bb500663064023034447681b2df83bed88d77a31f3d755c305d40aea258ac76032cf8dd9e6c06b836c38e519df7808a6be3d3d86808edf502304dd7d83f225175b158636eba79b783e3e70d16c39b3de17ddda8ba7ec2ac0c1fb4ff6d515c4bd5071ded5f67c72da0c30302047c435bb50067306502310097c75d0c7bf0675f5de78d2498595e44de14bbebb690edb6602ef9eba223df96383e2d4e6f04f8927bf0b14cdbe10a9f023075e4db5a528ced10983c0f406c927260c3ba3ec47d29c7a5f2a3cef95651c40ac307a5caf334a52d7cdea26676e37b800302047c435bb500673065023038e2c254c40f650bef04ea710f9034e2bdf0a992acad5ba9e2431f9db9c5ac29bb19029644be3211fbf52662c7e39374023100e12b97664c17fcf77635bbfd018e9877f3121bee0d4e386341facd5c1831b8bb139ccdaac1d72031a4151643f7f5e3890302047c435bb500673065023100ecdda8c197d1bfd81ed71d101f6aed997c6453a78e94026164f2be380c08f07c44722e660f58a087bbd6c259bfd0af9c02303ea1067d2967dea6df4b776f26018952c8a58955fda5c18aa7d48f3b666cbf96609e984ab87177c84b043314398b66f40302047c435bb500683066023100bb894af0c3989c3bcb5172afbef050b02f59ca83cb5d410b898cbf4acc873d63a715e86a0e0acb555294c91d752c3c870231009dfb06f0a3801c8edd5a844049a011e74a8c3849fcdbc43aa7a1c3cae973cd8e175b02a1c45f16e36ec6cf8fa4028fc60302047c435bb50066306402301f42371989f500890ed9162e025ab0c5ed6c5c1c9b6d639e3ce7008c98b9d5d30852ce573e49bd1fad48556204f220f2023011e4afdb79d56184bf94cfa81ea92789dc61c6403d1f5364ecb497ff2b6928f7386d8a067bbfe350ecb4e27108e0d4830302047c435bb500683066023100afbf5f0dd6155934699062d1b43678cefa5ec1ed0266d65ec51c340bd4d66b9f60e18ea4ebb0cf1481fca09d510222f202310091c26700335657ea4d05bb699ee08f43010bb2cc4d281be7dcefa27a2f0016d150542d8f7f6a540edc1572f1913502830302047c435bb50067306502310092b97c0d38ad20c90b421109fa41f7959b964e6fbdddc6fab59dc58f268b42cde0f52dc0e29b99edbdd2dc4d723a8d2d02306e26d77eda1f3205ebeadfd639bdbfbabccf1f317f3c73785625747c412a404306ce18cc570b2b78cac79b442182ece00302047c435bb500673065023100b9501fbf2748769a18336338388e4ea445fd83f0e0419abe3987e12a6c25a67242e1bce5afd6dd46b3af9d7871e9f2b60230607ca99253e2cbb3ab09dbd3eb55d7f5889b446117568bbc77c4e3209fd5ea85a0fb00a13d664441e44625c4ad737a460302047c435bb50068306602310084f249bee7832561158ee0b3e3f24ad56da0b47d568007c6fa7278777c8d326e07a3fa8911b630503ab8c281ef7081e0023100b93d8ea1295267e0a6158733a11de86e4aee90fc6f27255f60f2765ce099ba0afb0709fba5318a63b1660454a89d77f80302047c435bb50067306502307286aac20375b5d9495d72df51474aac66dac59045e9b7ada856a8b0cb8a529dd9ab7bab2a67c7a3734eb3de8de75b44023100afe7916f167cfae0dae609d45dd9a2953f5b4beb595727aa5a226b53b4573ec8c6d5ca5f60249c4421a695ce3600a7720302047c435bb500683066023100fc64dd1513705e073b06df08ab6e2547e4cabbda6b89447f400f0ff19918714a02a2178f233a1663ef8e69c47022de0a023100f943b8b771179d5ab0dc0ac85dab58fd7d990e9401721a0d8518b1f35baf7bb9164b65c6d49f00c7d3da0076052e6e520302047c435bb50067306502306059f1657972bcf89315cc9b4e9fba32b4ad4a74135fe3d80329634e9a0f5cf7f3cfcf287e802e884fe617ddd292ff1a023100fa896904c60da7105f860402c26f898f62c2f2e59a0f37c157ecc6ebf498c746dee980c58e57af4bf81596310f3f356a0302047c435bb500673065023058eea53adcfdcfd222be60ff5ebb05e8b2d0b3a7d8682e4f85101f2500a8bf58c8f4e31ead2148c9a65f5fe946ff21bd023100d637b9f4c43032a79df3e9b9f1ea32f1b37a4838139c1a002f1f40628a5f9749d8bef0e9113acbf7cd0d2475720c17460302047c435bb500683066023100d5c99b3abc9350ce58a10a417617bf283991340be61711ccddd526593c3d0a0e7f844a34814455a06dcacb8d4d636fd7023100ee4575e827c6e60267a237a1f4723632d62dfa19a77703c19e0dcac5fd71a27bdbd5146a108ab279253f11e14be8de8a0302047c435bb500683066023100dd63cec01cc4d0182034e9cfb5949be4a72820ca9703ccdbf2a2c38d4df1565a92c4b1789749bd10087d973a634751bd023100ed8e21cba7292642e05b11d8adb73162eaeb72225df3d146217fefd2178903de3ffa7abd94f6786e5a34234774caf14d0302047c435bb500683066023100ad8ec6975798e3b22773b53984482ccd86e8980aabdf38fa4d04f15008ef0d1fa1d4f054f0390d1c82e1514c81479bb0023100eec549abc644f2a60eccd72e96ec134921ccbbd58b734d254567ced305be48edefc71d397091cbf5745eac9a1fa39c220302047c435bb500673065023005f97ace5056d5512f4969a8f7ca23db8d7e6289c2e5ad272e9889cb82a560f4c79d03bdf5c5fda9b9654a09312588f8023100b0ef442c322f2dfe6d3ca521c459a79d65cbc5f05e863ea3c34d14cf04d0fac40172077f213a1cb40d8b392161e5461a0302047c435bb5006730650230342866dbde2bfeb3f8e656e82f3f15f0e695b93bf62563fa7914b2ace882adf2327234b3f9eaf028746a49944f97ee98023100d0c2ebf32f2441b86f83095bd479c7d0b822280d9f12839450e9ee2caf0b734aa585f8033b74b6708fab4fc0236fc01f0302047c435bb50067306502303f9394f9838c39fbe57e28d221e24f8b2e1d0089ff818b1531544109e2209cf916272b23b551c36d96553733b240b68e023100cf1024cfa9bdf26348231b6675588d1b2f59123b650295d566a29fbdf7a4649a8921c78df5acd4ecab6940a6c036360f0302047c435bb5006730650230346dfbaa7d4bf5d3507c9c69b5c632491468b19e1648fab26017462ae0ada1afbea33b6482d71e86c8ab6308f835d4c7023100cdea5c75840fa99884ef29e270b6515d40454ee672115ce0df218adf714ee6327a9f7e3639ac5531b0c290315c0719750302047c435bb500663064023031c01649120fae78716bd330b9830806377272d7cf970342c65fb05565a905dee88eceac4934cb8a40d7ba400f6fcf1f02301850e0e161b7c22442a48033e22c5a451c2230d80f32d64b4085db5c6068e051d6a08d3d45e43d7b1389ca76a79f558d0302047c435bb500683066023100ca79e8f9f6626d94a783fc9daeca3c241e4e711dda77e6dd0177195bdb659a75cd2ab951f9eb0e4c31c135f9149f4fc6023100e6d73f585a086076744b062ade553ac11f63378174bf68aa3979a1e86ac49d3d0fb78fca7c7316eae0e1292afb5577290302047c435bb50067306502301a76384bada8ca7ef041264497b322205112696b01c57e2f38353b36ce31442dea73c9025a40697767db726f1e6e6abe0231008bb8e26d059e59994c39307e3edb38b7f7e85eb6af2d3cddb37ef2edea93e1e8b3ddeceaab3ad8f5ee58dffc2a236baa0302047c435bb50066306402302016ea6663e82820e40e5fea526782f5f08d1f9fb4e48c8a8e81594c6c5881c99f1ae606c0570722d5d27026bcfffe87023041e020d70d98a5046e78d691e5f933774d18f2be45971f116a4723888b47e0944b39e4623ddf0e21e31f37ab578093b80302047c435bb500683066023100821b0d5e7daa433aa93fa1784bfbdfa9d6b8e5c2d60a275f4bd8580d08009d8262b71822aeb02a2b4327bcc6ec871bab023100bf7355e5a47fa0ae25cb7dfb3b2fb1dc637cc270669ac0f7c6b8970f35863b157c1084ba3c01772d5c90bf2efb24e5700302047c435bb500663064023053cf1de230c65846f61fab71aaba451e9c804df03279efb6c4921aa1eaf6e685145218aa4f1db001e370d5eae89d16220230017fe3acbe7e5d469595cf0d3bd365f5d5e69df3da9116c325f656a192d193854fc07051f775d827b922de2ff49db59e0302047c435bb50066306402304fdf4d028f98768e5d9ca1d589c7bf400a3890ff25104a5b2ed011d81ede4275291d64b1b4e872453ee8c7065e3eee3f02302742539e63249f0d196bd731ab45945dee0fd7da14860e3368e41ef038e52338ccc1c8d606ce1f28a84824f9951fb3f70302047c435bb500683066023100a271accb4d869ff9ee6620a2f42e815599700653769629e51f9a6812fbc6b5765563830fa195e7de0938aa438f83551a0231008340382aaa8c8dd641b7687c86f36f5e4377665e9d65a5b4e663668d87b0dc6a8f1e9820a4da32f05d454d3c8f25b6a20302047c435bb500673065023100b9806cd574fa552d1cb425450a94d6c4e066865157e69c5048c63bc83d7d62d8f129af086bd7add41358dbc4e0492688023009766f710400ee946cadfe35e47ef7b3b80c74fd92f256bf2862c08b060daed4afa38432e2c0dd74ea9118a3e88dddb40302047c435bb50068306602310096430a6340674c734ef288f86afcfddd9ac358e18a11eb3d3eb30261ab0378a8ed153fe0cd8e3b6240fdad8021e8f3e102310090fdc6b9674f00585d33ed2e20b0e8c4a50b093111c76bd575a3cc74662d2e5309444a28d8976dd29ba18f7db10f86d80302047c435bb50066306402306e3b82919bd9007a213157d5b99d6aa6a38542b720c60f85217625f3d4d6f15c5359c71cef26000097029d979ba28a03023064924aeb2377eaafecb5bb317133678f251cdc307129d8cbc9418cbd3c08218e3b882eec66f85627bdad787ff79704680302047c435bb500663064023031123a7e8cd43c9bad4e61d9da3a3fa370d321595c4a680ccb579f675523ee8c3e2defbd1db15ec829a972507fce3759023056d6847e4634c2c8e4f156578e6e1882abaf1cf183c93faa5ec6fbee3cf49b379ddb8dd7e02465be00c2af4b367709a30302047c435bb500683066023100f329b4759b922d51d2c2064ee04056b0cbbfcd5ad4a7adbaa8dc05770e48cc495d948c8b78505e0f96b5dfc183b93bdc023100abac996742b0b587c2583e2c1e9e2adaac43ef52466ac407ffa61dc7a695dc47a95f44c3d29dfc4916689dadcfb7fd220302047c435bb50066306402304ce27f701055018f3547ab5c7cdcdc92c671e0f80e7dcda066a749877927c20ff29f2d14d20272888050904b8e091a3002301297c1756a54931f6ff21356d8bfb8229a315f59298104a3c2cc842558f68ab3d1aa4a8c2ba9fd71d22bb9bf7c345b4b0302047c435bb500683066023100fa3b95c866f4b514d251c155a346b78f6eb5a5a6e72cd92f4013bf758d36bd39927fd12ff4637be89e6114cc2c3f69b6023100bab62dbb623aaad8b1d307d254a4e37233651066eace3870c641e2afce2e5303bc2a5b3e907f8f790aa94efc3f891bac0302047c435bb50066306402302d47dd8c3bc25caa7c7b9ec2e6771a6133f8c2292535b0eec3c2f15f383f65e298fc7bfb304b66787b558024ffafd0ab0230758849cf5a34d3c0cc8e1d42cd78d0d7581560899fd492834aa1f05b91a1c970ab5d646a318dc93e498088efb713bec70302047c435bb500683066023100d829048e7d98fb79df234425adec1d0625c3979a2b402cab80e080f947e8067150d86f96ffbb68f1df3e340089e04e360231009c905f862545414ae0d234c2966c4b1f560f6e094364e9b15f5121053329b66a78c8e27e5251f7e914dd5c318db8302e0302047c435bb50066306402305a4ceafe23244bccd83fa091ae808ecff3e1a8a9fe359c1e4197ccf686698868701587d7d8df617bcbf922d55a4d174802303679079d877279ecc21b6475fefedc6fc22a124f7be6fce322cb5eddb2f72fb923a72cef8c5bfd1bfe9a750ecd30310e0302047c435bb500683066023100b2d83d1f224a62841dd9b597c0931f67f8827b1a7cf8e343b8e6d58ec3f6b4b7e2c5b83e3bc730858c6622c7cc56b905023100aef1dbf8ce46c36aaede777df47e9991626672e0d7fcca707414a9eec9b80002ab3db3bdbc649312942a01c50ecfc4050302047c435bb50066306402304af4a5dcbc4d4bfda9d5ea68c3333a352a1db20fbbd778648ecd17c026c60a7588d1e7fd77a5f16ad9b44bb0b7b6156e0230180b16ebf5b3a54aba7ccf221ddefa722c91648ed7be58618bc2a2ff4eb613dd355ea0763b14f0debd7d11735bdb32a70302047c435bb50067306502304794058b022a59d7e676e66f4a257ebdcac528dea1b8d68a347c75bd219bb19d96544fef1ff4ac4b94d1186bc8fc1014023100b19f240bb7a29aa4b4d8c19212f7a863cc9ba0875f853cb5d4001ec687c410ef7c9fd6e95264b9e6af4e93bf36c0c3b50302047c435bb500683066023100d9c4448add557b625c5ef2cbcafb3e1c7dc060a2259a271f57c42cbfff0034a44cf0ad6420f2c33fa16b2ff839e4869d02310086551c1744ef27f88cb08725302bb4aa66c632a7628bc53e8de5b923062f6fc0e80b0ef298ae64f2fc6375993113e08a0302047c435bb50067306502307bf5f5d9d668baec60b3ceef6e1994d75a80d899a8703b4efd19401cd5f19de6c3973a7933bf77133830c4e4c3cdf224023100bf1fb440e4b4c6cfb6e2f9446d40107537e81ebe79f121fd3674a4c480ca3c2ad495e864cf73f2ba71d4a8bb55e96d3b0302047c435bb500673065023100e994c17c2737d586f91f960dbe01a9d9f2ea99ad33f3b2c59230483bc4ca7d825dae2b8e9b12c5dd7a05029ce2e0c38d02305b6ac531cbbee27987b5f2f0e343621e5a73f4f86463d54a619e7822a047729c12cb2103234d598241f3f05ffb1bb7760302047c435bb500683066023100ee2d1fb1c01f4ae106cf62ab2f8372d208e57f535200c17dbc3435f77e7d4bc85844749a4d016b1ecc06d17adcfde572023100e7d2332ce7d0e56205baded747db0dd4fb0c5887837a358e1f062875199855516c66619a5cbef8d003e3b573805811490302047c435bb500683066023100cd258e7445d08b7b21071238a25ffd5a6a1054121318de236e33648bd07f5774076c21496b9efcd383d4a69e0147c068023100eb8d9bbef185d2d65bad473c02eadbd85be38bfe493296c38d6dae1a09275a9be4feaccc10f133bc2d4eb6f4035403c40302047c435bb50067306502306228eb777a876ab51d81beeadcca8ed9611046a349231e5d9f7db75289f5683bd7e0321a75ae52c553f2aa01fc21595f023100e0faef707ff55147cda5f91b851afe353bcf88a3b69bb749c1fd7805e222caab63c96267f8305362eca621418a55db890302047c435bb500683066023100c0895b0c9673b249ea90b1b96d81f04c9d4cbb617f36745ef323c767912606cda2385962a706297ddda93d867b7d9e8c023100c519403334cfb63ef9c93341994caf9f0cae1525a0a4d80bffdf7587fb8ace90482f53e2d2361bf0592f90a1634202a60302047c435bb500673065023100ed55d7eee50608e45ec0e501fd181b92d5f64329760e39cf0afc8d26c2c234c0f0a690967b39050ece1f3de03aea589002307dfe0ec9707c22bae7ff0149e50dee763dc0b8f2457fd694e1df50ad05dfedce2678dc6094783db3a1f01a7a3fd81f670302047c435bb500673065023100ee9bb0eaa59ef077ec8ef89ca11937461908579addae9c6482818918ccedc0fd304800a39d2c861d2f7cd43afb0a31f7023032e1ddcb623c09ab8eeb8076703576dd81239c26f8ddd907499f586eeacafed18b44d3fcdbbbb76e5128129352125d0c0302047c435bb50066306402301aae1346175e153bf37c63ccb703c24224d6875d6a64da6e93d0b939977110131dc6406a67e86b4770536228a22173ff02306a07b4ccb471f17e794b5c9554a8329a9519e2825a1ca6dc2bbc4a9141973721dc7c47dea1d8a18b64dd1b48d5873d380302047c435bb500673065023053aeb3cc58bfd42382d17748b47842af92ec63573b6b033acdc5e4e67029c235661f664c24c562e03bbfb08eaa00df3f023100b4db61bdc02ea0157b4e5285a5413ec3bd0895ccd2e018f1b50a6db0222b183ceef79d5f059346d12dd61c391a42ba480302047c435bb5006730650230346bcb394971b062e81b1cd54f4b999e736c3e0d685fe378cfc7c12fdf914107eeea32f3c5dafe25840ee112b51e8c0202310095913a18c3b30040efc1b32cd2ae4ddd769db6a40d622c3c8d7bdfe6fe15c5fd0fdb634d02ca33469738f0e3848828ed0302047c435bb500673065023100f70104c7d93747d04d741743afcf98e97154902166322008562cbdd8a520014b432a81db63ca14a766b2bb8e34a2539b0230766dcb6287940967ea2c6ff3bc133a773b34ccfa4dc39110a0bcc5ccc4801a8409e6b17136ac00ed5ea496c2b95450070302047c435bb500673065023100bf2d881e9d62f663385728cf7ba8ece12c387f3318d1a938fc3bd866c6d251c03391f9d2818fd205bd983ed84040f23602300d73bf2d6aa20174a220d5316adcf29af464a33d32f0deaef61d1734f362e2beda740ee7137bc51b4eb510eeb1b4afa80302047c435bb5006730650230228196c194b42577ed4a3dc032375fe709b61340e746522741f93f035261c84b9362ac5ddbda809f5b4170d775159aec023100da04064daf8be594a69ed271409150f4b693b973531da250de022f63e878ffa1adb93062340be5e626486650c254a3190302047c435bb50066306402304625457ca6df781e4945b228ea998f9277f7342c49083885438d42e37e286b031264638a8d9593e58ffac68abe3504050230551111294ec739235959cbf89ea030097b4814fbc6b6b7af822046519116a419a179ba2631c1524447c4ea7805632f520302047c435bb500673065023100e6cdf714c89b928fb563abd85be55a7bb4cacb077c7e3d5fba6b12af693e182c088d193858381c8f062ffe780f6d78ec0230041635f65791accd9ddafd146054978cc27d10c6bd3334671da33c9d4d7f03829e9f5044fbd54024b7f98d4f5a630a440302047c435bb50067306502300174fb7e0f873f53a93b390c7aca17851dfda38c68aef5e61eb42f07f51970a0e9b50b77541b7c13c0ea7fe961840e1a02310091d27d47cef7a838277ebef2957eedb81c7d2d988c906a8d212debdd272c88b92fab18689c7ad2c7d27adc2179bdfa280302047c435bb500683066023100a522122371bc2344b18332248feec77e1d8d92b15381d38f825688d1019f2332230314e72e667f1eb4b1a9357e45e455023100e5b9e4b600a245de49de0e9c0403356ff5f905ea9e12e6c8b50675353719f1853d045a3dcd00037e5519e378d12ff4830302047c435bb500673065023062b1c4c426ccb19af541817cad2d8aac1dbbf92676f2b6035e0fe3e419b8a020563f1f601edd192d3642d23533465d5d023100b9ab263afa1465c2e3cb1e2a74a22cc3cb81429a530c33485b1897d7ef5f641906c520a1bca2e6a0309e9fcc425c6c370302047c435bb5006630640230763182d88c67e9877c6c45ec6f6c2a84df175d518da0cb11116fd4c79d45459ea576e191b8da3ec4432b1f8ec8757fdf02300113baaef214be8b9c201bf85961884642167dd377fa6f49d40b98f26c7591d9a01cfd6e07e50aedf0e25411d544b1af0302047c435bb500683066023100fa8d0a6d18cd80ca643e03a93d91d16ab8743ec76a0d02d1f843c70f00ae4fac543123142612680cd2e592762368643e023100b3e0eef53eea8bd2779d751e804497c762d84da27c04bdde664129cb92e0b934d161d437a5866977159dabe343967ec90302047c435bb50067306502305acfc57610554776b26e99977b6fa0dff285f2e050b20630158f68d75f60c0aed1f73053b96712a59d72d2428531a567023100b8d5be5334c3c9ed5f7ffe188355a854dd4fbfee5b1d8a0bf014028bcfcfd0618bec5495bb9902de1600c02b30108dd10302047c435bb500673065023100a6df8ed26c939fec0ebd081883615a150276d55635d7ed8113b6f564a517307750cadabc5cfe8aaf1d096e6bc5bfbf01023054f86e5f6d0d768c2b4f32934f042071c6075011a25247a2d18e344601faa8b296cbbded0c2a4b7e6139bf5b891f424a0302047c435bb50066306402304edf9367703e8ca7589ad1dac28b1216f211f5036282c216effe38d99faa679c8aea90abdec0f8af53c045edf731fabe0230091723dc961f528374b3e6c5f8535dc3e663b97435a3a9eb9cfb4e2361c6bd35bf2d306289ef54c484bde32db07397e90302047c435bb500663064023068bd095312d88309015e72f5e26ee4c73ededee0089400be4cefd2658d9883bcb7bbf73042563642761ca2e0f82599400230173edcad85e9d3460d97dfb4d27d2c9856d05743ef43122ab3a58ec24e7ab0525270c3f40d99876429b148455b7df1820302047c435bb500683066023100858c322fed26fd233347fffa1cde2d3875823bc5e79135b67bd8c7c7ed55bb554d8c85f8c430a60ac1527a70f8c74011023100f110d7e79f95f84ad58ee3b0ef829776208b50df71562020786c51e1e34c5b68a86cbb43b649e2b43fdd239750d124390302047c435bb500683066023100e8c207b40e6110a384cb3c9b75208889a0c22a71e8d6d272d1765a25a128fb5d1e33708d8528a2798ff3163d10b7cc1a023100d9ab93b77f06886417a235814e99a9b8743016e4b51d6668c934d45daa35aa41cb61ce41d039c85488db7556a8d25c890302047c435bb50066306402302e287cad7eb007c6858d12be674a12f243abc8d2517dc5c49542d93660157ba5d28936920969c1442661adcf1c7fc6f8023031a4b057708c12e6827031d66601b0619d326bd79c8adb6da9b818ce45f3545811711d729981e9516e262ffbe4c4b80c0302047c435bb5006730650230224679c904b45696bf842e5a0fec22254b3f77d1add5800a78ce43389ed0724f928e456c334f267934274bb697a42bbd023100898bcb94adcb19a2350fd54c489abc459f4710bab0b1235512cc613b2d59fd63032404761645cce3f8105022cc7e3d710302047c435bb50066306402305532980575c4ab923d5a067b6b602745f31cc84bd2546306107de01928cd13e45bf0582f525b7ea9c22d71b61cd3eccb0230079743d5ec0034836c10b6267de7f1a87098a6c5fb0e26a59537a2f5c02646fe17fca3981e84f4673d051ef8d3742dc90302047c435bb5006630640230425577234157e55e5b45ba8d010664d305688efaa6232fd7743ebd603e9e2db336cf3c902e114c56164661da682d899202304d34042982cf2c92a5286d778fd1bdf9558c90054182149d97467b571cbf3b85dc482e2ecba4cfc9749db3953215bfbd0302047c435bb500673065023100c43f3c73a8e38009c8b5b384e883dc334cdb5e8c80bd541254021d56c0b121b2b6fc4a1c94bc433383ee166abb632a0602307afaacb22ea9b17b6f162a1d7c17e4ff2c13ddbdf89ad610aa929b86d38a6833bc414071686e26d35f12a1cf1ade75cc0302047c435bb50067306502300625fbcdedb7ebc81d764fe08710cde29d221094242a363d050dac5efa9a14ab613254a15eeead2b4870ab53f75b31170231009cd974258530c8d0e0a37a8907b1c44a0988eae1568216a58c2598a4e03bf218b9ec32659c6ab694888e4e96e39354da0302047c435bb50066306402301b1f67edc8bf05b1fe817e93b8f15863516fe12ca09014f480aeaae657857b4f17767e81fec2c93817d44748a376219a02300b522dede8aef4abf7ae73065cf441c7966b7083f3ca331c1ac8d9bd1728fc837c455550b9d498ec1e30f6e44e983c8c0302047c435bb5006830660231009334a37cc475d833c9bae3d885965f044446ecc57b2b9fd3b63060ea809f251923172e9b71b9dd7ce00cc9a99d6e8a1e02310098b245c32b8e35db108c5f939d47e787ef63304b8bab16dde95cf7c80d73532dda7efc0320f1678bc4f2e04be9d253ef0302047c435bb500673065023068327df3666233ee3f0b7ed637cbc887f0db8d3f91cb408fb19f22d2703372e2e157c98bf0bbfcccce39328cc8e423a00231008fea26fefe9ae45c7df3d09ad7a1cce1882497513474113c14177ffec6c0a4b69b6672e8e04e32753248e37adae5f8610302047c435bb500673065023004cfee02c773c880d2379e8768037ffeef74a44245f54981130f98abf77d277e91582b3fd22d48118aa3711aca96dab8023100c56546d74ec73381c93fbdeedeb8842e448f42f8356f05ce81320d99dc1932f6025695015a4ea4a0baf8b4e9be47fe390302047c435bb500673065023100d07c638dfb217bf67e1f67780919f23c75836ba9a006cc313ec0f053ff4a24e6eb07224848fc4d709b41c7894d650706023020cb3e657d179b952be99dbc7e79a8388da5eee64ab77a12375983c50af3c1b1bb78719a51a4a4b865ae73e9957e2ee50302047c435bb500683066023100bc5704d6e8cd0b310fad7cbb2abd34f3c8406b62b7159fc37ccfd472c8e199146e0df4cc95aa944859feac246ae6c01d023100d8ff286cd8d9ed3c5b1847e166a427f51f129992480f58f3f3519ba3d5c6bd43eceb2968fee972673203579f174fee030302047c435bb500663064023034be41bd769c22434b378ed1f8bd2d1bc4cdeb4335cc8796627a99261dfef2da9f268bfa9f90ddf14cc427b298783f5c02302d41e51b30efcb2740fe153d4c1fd7a63405e4d8f4fa4053aeb61984c25024a8a34fa6cff185f4c1d79777f6c917d5580302047c435bb50066306402300d43ba06a4b4266484ae9713bbe3140a1647bac22c3ab4808f9b97577f1335000069fea6a7a890b00717cd0cf785e7b00230021c1c215d51503fb637cc739202ec25d88b5d93d18a2acc2fd7d90720d24cd285032574c3f7f004c7279e67649016fa0302047c435bb500673065023100f01eef9e092224dc8f6464fb56876dc744559e9fd94306243dcc60b0e78295f11e171062c848e7f4a12668814e1e0b57023050f14157702c47076f4f14c4d20e7f696e2a7b68a01463463ff989eb4df14fe88aa63ad6e6cbca7075e19f9363564bbe0302047c435bb500673065023100b7d4390affa110f271ec658405bdbcd3516d4a955e6ac20db22b5a2fbd4115bfd921711cfa573256d46d844f63e6ee40023070e98cda5a57cad007d26fbec6fbc0e549a490b5d5ac0b20bad2032a53f6ce63235293137cf7905af6d75b49be53c85d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009d128a829e16ace43a314c538738d164f2c2f16f09ee4ac203b0b4bfe62432f7439360a3b734fad3487c97e91465efe802304187847856025d6fe78fdb8fad541e14113ce7cfcfbd936328cc7c8bcbab4d5f387f050195dfb9adbb65daaf2c9041ab0302047c435bb500683066023100d3c1ccae8a67f0478ecba360e31772d44a7ad4cf624cb95ecdf8d58745a5f0bffa71bda8416df796d2995490d5da0633023100c6290a0bd2abf1c15031265a4371060496432707fe81c9d0e3637de968f7c7415d2fbb100ff62003db1b30c1d7031bf60302047c435bb5006630640230740237127c5e11eaccec4f2cf0017fd512347f9b8d0aa801b8fad7cc1dae5ef5294c2d21dbeb158590645267576dfcd402303da1855da3ae0296b53bea80da264f092024a49969a6bdc41ee6316afcc0c9d7ba69cb303add3dd215cecbc9a25c41430302047c435bb500673065023100b89ce45ba5a9ef8ecc8c13c67fef1668d9f5b9af432bb325a2b208c52ef3848f931b8aee82722adcd4a1bad95e2e07a80230312b9cf1a71dd3ff8396549e845ed26a1bd4fa97425f694212aea8c0f96a3241bea3e8a709d96f5a92cca14fab9b9a5e0302047c435bb50067306502306d7dfebb8c4fb9ff11a320366589e827dbf46d523b2b358d06d32081fa0e6b991042a3bf25fce1abbe71696fbf97bb01023100af10ab4f92c032143e7a2c17d6573480d937cbc7fcef71701039b295ae3c3950442534d378cd35ecea1f7c4f3f25bba30302047c435bb5006630640230278f0d100caf2c7ab265d7f4fc09683b2875d9f99fd5ef1328d9d379899581b4f3950b971b9acd9f4ed1e5c70917a25902305f498da4088bc57fb39dd77691c7f50725014ff8cf44246e54e89fa3ebe8908294a7d5f50da5e4a09e8342545cb5cca10302047c435bb5006630640230712b479a985493b1acaae23f82ae522e4664cd3b810ad76120fcd33463d53cc0818abe12daa18ed2f8cc048678ba5ba202305b11016a07f09f8c842da1f50bc37a1c5f0fc8f1cf8fc522cadcc93b30d7442f448bc21a0f643806c77718a886277a800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302fe241e0e8d2a8d534d11beda2f42ae5982195634ffdf89313146c5a707e343ea917a96a5cdb759f5ed94cb6706ec76b023010488cf2c3f92c85d4358f333c5bff9a0864f2eaef1573c0487d62823f0c9827b1ccff55acdbaef052eca95588e304970302047c435bb5006630640230262f98a5dd46f67b9e35dc501f67911ff960a8b112fec8497579fb4e9454ec26a4c5c8396b54940b47238fe900825cb20230732c500906c2f8f5a83f09517797edf701a41f7e498e036a4abda4e541443ce7491f9a4d6bbab17fbcf7cd16ee97b8040302047c435bb5006730650230237127140ee3b603909129c0ded30c4ce567993dec79ab0705a591a5bcbb4b7b8502c4945af36131662abe715b3a3a3c023100917c0909d717763fae640ea774096ec6e4d175be583f438202e803d16e6caf6c99c5c477f98c7647647c26e3f1bfd86d0302047c435bb500683066023100b44c150fe7a55fddea6ae1db6a894e8077e92f566256e5c0bd3f9749714b3136d8cc042bf67b58cdfdb63845abe283550231009d94f6537fcdfb4662566d3dccc788638510ffd3142d3727669344df2d1406ab368c3e3df022b094be82315ee82067900302047c435bb50066306402303d9b02eae45d4fd2f8b832c0c1627a87df23e183de5991a35d825c5b0ef9e2ad46b8b551036af76ad2436d3c8893af8d02300d77f05a3aea03860b51602ea5876779236331143b0e0e7b24d9438428c3f9d0146752f3b4c19347f909ce5c087d69df0302047c435bb500663064023051bd8cdb886d16ff41c42a76401b5664476386252c7f11f3e71b137d72c75f4592f60da413d2b5a8c349cd4e03ffa3da02306998121423a85c40f4845256255c9f84d767dccca860c636e46f92ecbf75a304557f694ed4823ae6bc3d9baf604d6ea40302047c435bb500683066023100c913c490fd1dd30ded0fea87706a0eedae65b89a2fe2237bc57a5b089a0365aa5bc51e73604a4e352c0944f029612ffc02310094d375fec9bbbacff8f1b1c3af0c111b029ea07f495d74c9c38c07c72852426d012939ecbb4ecc88b33f0f7ee02dd0c40302047c435bb5006630640230353cc8a03a4c6fa07db792801c490853acdbdfcf839ea0c01d06014e45da5e99b2522565c170aaa1a03d19f0e6d63a1c02301f386f362463ed50d7fa102f2350bb9ee7c573bc9230afd188e85d600f3fbb73c10298d7b984a72fe3ae76474734d32e0302047c435bb50066306402303288bd9d6494a168dbe61d2b3408b743aa5895096709c7a77513f86961c1fbe439b808408eb0334d02163e4d3db139bf023010901de7259206df13ef1953c51bb41aa2f7575f2fa7018c3d5e6a4130797bdcc8bc63b57d7de8119c3ff65bcf6f667c0302047c435bb50066306402300d86d0e3e0b9fec9e762ddf88e88a17b9fe35b6dbd34b2543ec758c03c3bc553a0b913a47b8c44b6aa2b7acb9471e19e02302ecde0332ab1ac9e3a8f04441f40590cd2155656a5f47c25c3f2f176b341a8aa9d1da70182aaf677c0f6ab78ebaf42f90302047c435bb500683066023100c23f26ab0288165473e950a2cf424edcd2f53aff5e7c22a81870128279af249188f9dacc593743ec549fe13bfff1a6f60231009eba4d034056b014d733a754568d8d83b18ebc7647aff88b5f0ea5c885d401d240154cff6953a2ab5c82d1197a01ce8d0302047c435bb50067306502306ff02b1165469f19de5c504ed0bba6192aa95c0eda11f90b495f93dc37704f06edacc3786ddedb3b9c26c4ee4cdb691e023100b6db2b07d0e91436818b20faa66b28497690e9b7171296798803c01a0c696c67f419529767812de6a8e1aa71abb670df0302047c435bb500673065023005568dcc37a16458374d9b7e2e2d2f37fc93c77a5c4984d32e3bcba82c27034a58c1c8baad41745d82b084dac9352994023100ec03b2a58d729d8e2b0853dcd319ec7527e25dffb031362bc726be5bbe48fc8de27a7bbc6e7cd385f223ba1009bb2cac0302047c435bb500663064023029ac45a663097b957f2ef52538b9537ce2ba64cb5306782da3284ed76c75c598e2b9d5bde3deedd486aad1dac35f7dcb0230602a00e3b1c30ffddca9083e40cb79ef830c6cf5cd117e93e8c0cfeef5bbc2e1ff514f0950ce4a43cc97ffd7c7941f8f0302047c435bb5006630640230174e4e12de4a95ad4e776d9bf0a8c0b81abbf607ef3251b2d5ce23e18a81f274c7eb0896498a0af3a2cd2e58031ca12b023049f8d2259ecb8c7eaf6f90aeebedba471488e67b67ff38230210e7dd4bd9e4957273fa340e724a973a26d7ee8bd8c2110302047c435bb500673065023005c61a8f045526c9184012dcc3d90800b5ded5c641023d974945bd494b30b2462ce044e9fe4e28a852238e8274ed96c202310096cb0f4efbb14af19e029a8ec92a426093cb85bb43e9045646061733fe83e1934b0d10bdd24770a3cbba5875e30d69350302047c435bb50067306502307d541b50f26f60357f373802cc50ee1b04e6f645b271e9fe7465eaf38aad3a3cd470c35f023ac3c15a6939467e49a7d6023100cddc2572e07e48d02c80c1c00690ed54f7385fe20ea39186168b6d0f9c5160b14f84b58e8af5f4bd4169c6be14578c7f0302047c435bb50067306502307a9e84bcb00c227bf559d25787a34d9c910c04b25c777367d93b0bc00780d7393e544f33ade6a549589d83d119a8db1a023100ac44b252f740320522d82501afbc094c79cb0c19677b116d59932638bf84918ebfad0917f70551b81678c713a0ce56530302047c435bb50066306402305e9d70dc357a209204e149f7622b184ace02fc92f217bc76be7b06db9b53deaaea6961129015cede4adc5da7fdb778bb02304f185563f61d20355f0349726e7cbcda56fc4654fc08fe26e11bfe3ffb143ba379b61b95dade692b8b99dc6008aeca660302047c435bb500673065023060fc08c848fe9bb6ed570864c01ecbd7a7971afd8de3027e60b853b1c0bd8d718248434799906e4f44c48552e2d74bd8023100837368c7abadf0eb2cab492e70e528edf9a0a08513f6d0fc06a802d3a05cb2542b4794e1afb438683e5953525324e9520302047c435bb50067306502310095d2d67235eb822c8b3023c4420e3edc8a18ba75da3f630a66f30f89a8e1ca388fc1f470b0d1050005234514e6cdd550023014889bb5a2c243469027a9d2b8a772ecf475eaedafff27c54a6d1f548b2c94a739a08ff6af05f93f918774655b7571860302047c435bb500673065023077fde324a91e7a95eaa7771e76f7f6d5069d8338223bcfdb1440938f980fe003193d8c4fd11fcbae6bbe845fe733e301023100c3e6697df9e23ee9313dbc67cfef712620dd2b4e79a8054fddbca218821a0b249f817a7f70433a249b0cd9fab2cdaf390302047c435bb50068306602310091cfe345d5122dc4221dd4f839f809d819d72229b6d42f8724da571a47cf8acd2c5520a322dfa8b8a158e5ceedca5e040231008146cfc89c4ee65e8d5a81c8a6ac0b2d8954938cf38992050e733fce9b2e477348f2bc230c9e05f77218a81f569e6e040302047c435bb500673065023100b22522976fb283aa0ea20d95b32ace38fd26bfddd282e375ddefa19be424483b6f926ad5f0903656740d19fe7d6cf6a102301ad91b16870e9e8feabde75bdaf31586dca1cd65009860c82a7c5c93aa42bbcc86794a7199660931815d2aa395bf40000302047c435bb5006730650230097b8a9231a8fcb2de310869b7b4a3958aea6a0103d75487bad60fba46e9e15cf4bdf45557ffb6fa75c262877ad4081b023100af2e30ce5c74fd106958f555c2150870a5247ed291cd8f46e7fc74a663e7bcef78dcaf057dd77681bbfc84237ab488c80302047c435bb500673065023100adc8252b64d16d13215baaacb33a5079dbc8de2dc0b845487758b60b5dec59146b495c4e657f114a02eb53059ab1e1f30230550b010fe3ab7686992f8cb8e4a14c7d743b54d0b11087dba54a61ab09a7e64b76344e7f325e91017de4e48d00bb5b440302047c435bb500683066023100ffe7b263d1e79d337eb3a3931a19312187929f62ea961653b62d372fb0429c2d2d239d9ded9b92cee5af97131971c294023100b4723c2c080e28000ed5fb4fb22e67d82443c15aba62cec90913d3886910e8ef2dd9dda53872ee58e0bd18fbb5e3854c0302047c435bb500673065023100f8cc7e050b7da747a686d5a10bb2119034e2bcf5a5d268b4496779fc91d05bb537d358e14d555b7450cd91d31eb6fc7a023018b1c02b01dd4bd78705ee8dfbeb36ecb4df82445ed1f0c9d5d8bd978bacf849b3123e8b55c917a53901ee1d83c8b85c0302047c435bb500683066023100c8bcd19d0212c6a575b8f5110dbc07d0998ebc45b36bc5b019e27d03cbeb8d01aa6a1a8feba72cc9fcd320324d6389de023100f53a75f70ac1177037727845b93eaf526bdc36a2cb67d5bac1179facc758235d0a88b70918e4c876a586f5367ca46eec0302047c435bb500673065023100f2ab077ddf344bf109af61cd6dd79cdb6992f07277439555ca461fc9f0538b55689102437824a1bfb06d7ca55fc8fb5f02302e60ccb194deed319ba88a1f13e3e12963fdfe1c933a169ef4421b8d299da8fb656b36c5c8d274a795bd1b5a0408db970302047c435bb50067306502306a7cb213753e1720117e952cfe0aaa2bcd1c0576f3ce20a4eb40a511d8dc33bc06c26e561aa7443d80dc99e05be3dd5b023100cd8d8c9c8302e415a060e9a739677aeceacd2c61993b7d8343fffa9dcf1fb81fe3aaa06714d85c0ae6d14170797e00500302047c435bb500663064023013e22bb4a7f2cf7719f23a87fe3a04bf9b2e0f020bfd315af4ddf2b907afc1b828034d9d9daa8e1d2b3c2e1516f7923d023068a89a2838bdd003831f27874e6a36e6591afcbacb38b80db8b27b57d34d2d81203982592796540329b50333c2ebcf630302047c435bb50066306402301c1f0602102e0ce71aca6e333ca241e6abd213e6a7262d4bd7da11ee5d911ee2d29af75cf3c5e9fe83b058fa3ee127cf023004e56ec56104a6e2138cceb2d66b4a4804f4a8422412c193df271c1cc5ffa73e411dc04d1d3d0114aecd8d666d9bac1b0302047c435bb50067306502300720e35a754706b4eba9dedd770e5167784c26e6cdcb8c25affb1cdc48c8a15a736f825aa39eb3b927edb9fa9b59393502310094435eadd901984435dcddca79c8fae25fac0ee759a692eabc6f983ff46f536d8dd4177eeb21e0d96b5fd538eaf881c70302047c435bb50067306502306c90989c1cebf946154471321dbad09602c221ba1155959b62cefd38618a0a21aae83fd16211479544956450ddbb2373023100cbbee17d0fd541c525dd342853650c5638acaf48b05fdb995cc64002043ca3a5b4973952c415a0055fe4fd23a8d39a3e0302047c435bb50067306502306335c6d6345079d8432039596dc1774afa451ebd83b875d9d39c32a994254c1f631be195e7400884c77e2f29e5d5c8dc0231008403d682a22c073af453d76896fe2e547c9ad4af5b99cf9743d424c77595a2000ef6d08a4c41913a2e56dceeb04cebb60302047c435bb500683066023100ddb9a9084ca285fc25d5511bfc46319bbb5e24e378ee8ebdf66c7687b35c6b9b1f6803cc87b4f5371c99e02b8e65c29b023100e859d8d860e0c57500af995be0f757a44ff98924fc8916c5ecbda1a8d1ec59848771230b6a611c2028f8c28a816720d30302047c435bb50066306402303965b1cd98af9adafc70a0515cd9bcc073f8166aa106417111e4ba4cd4edd2f2f8558c59976522583f4ba9feb643aea102307cba1a232f9d976af88f87d98247f01503e732c203cdaf08d9bbb46becefbbf3c52f5c6a780b766a7a049e7ba5ccfb7f0302047c435bb5006730650230407dcd45b515c01cd3a4c8bf3e4682c2107a7066dbecf4a637187b19a241c0173b16954dcde2eca8c09c84b7a0eb09b902310081beeb46e84aac0bbd3010f7bbf28d191434443314fe4e5f3c40794b5f7b94f60b8330471d3b51adb92946923d2fff830302047c435bb5006630640230041116fd106de9fba2515e4ca9511970bba84d2b0cb0d7b0624ca1c83fd65063d2299610b88661270d13cb0680af144f02303774197700c7f1099e2afcf8b738cf91bb7a26bea7ae994cd0eaa6268ee41bdd2ba3e6e6f38cebb00d65623b61764cba0302047c435bb5006630640230205dfcf89b5f5e87308363553fcc8c98cf0dcc2ed4a06903f1b60ba34055e5a1a6fc607cb2c34e3ec3c0deaf094ff45e02303fca3c40c974266de2f3eec2711eb31af5645bfa22d607e369ab8cdee9a2abbfcb8ae51cae8ecf513ab6f1b42c7f970b0302047c435bb500673065023100b5fa89a07abbf4610d600482ee83e9462935caac6a9601d8d7514b0830da7aca14fd4a8fdf65e08217a4c574529cbf5602302470591d96a569016b0cf6940c92ca11458c8a52e6dea411f8aaa19bc59b2d0badf20812fc40c321499c6de573d40e7a0302047c435bb50066306402306fa9cc0a5e206a14e865d7f8b22fc784b1876ee771c775952f32d121b63e89efe318534a8b4830e440a05425a2b004ee0230035295bf4e7e13a1fac3d6363a889ad8e3f964bcfc6cb012cd3e6bfe5e0300f5c319810a8a5df3430c9d906f707f2d050302047c435bb50067306502305b10dbb1f3762077057aa360eb986be9bd4c091b5b2e7837e6f7cf586f31edba61cbfed37611feadf6f46849d873418602310080ba13059c8361fbc22bfec5786b95a683e102eeec91f0ff98810c8128e3b2b8a4a1c2265cb1066c2bef7b1da6d351130302047c435bb500673065023100e1279a5b960effe8df5e67cab2bd1c132998bc30d185edd95c068f95d64adc34935b034f8dfb3df0ca345ea916a597ae023047760fe6d59d3d5e00797ea414d11e1ab83c5856f7803e286f2be1b2e0510881856c718e2149b1b424d7108e79649a540302047c435bb500683066023100baac04f61512353121eecc6205b686a60bb55ebf400b6f8d137ac59007fa2e240f8076fda048a94f8a6db49af265ec01023100f2f30e2d8a575f84fcbd37a8734e3d7361b3397215e1dab3b84f0e7dd055c4a0afb791d22df88ddb80cd6bce5733648e0302047c435bb500673065023100e0cfb8a79238e2548f7afdc009034b7dcd27562a9016d7cdbe297c67f334c7be4316d736ec757730407514494804bbec023021189ebcdbf094a42edcc15561aa514bdf3398d5fd187d9b22c699c362c06cb6cf1628db210cef732bc69ec6f15bf0ec0302047c435bb500673065023052b1a3d3d6f962c35d761e73fb9f57a3d2cbf24d61c8ad55300858bb255b9f72f1f7c5d3d55def9df5837a30f2bb36ee0231008c0d245c882bba27b346e2a560dddc15e75ead6bfd6ae0a7c771134cb698b2cb8f5a7727b1492138514492c3b7cf3e400302047c435bb500683066023100e294b775c5a0cfbc9fb4c1ca5677fd33769959bd84a99f3832018ce22b514d117dedfa4fe7550d5a4e3adac025c54d180231008cbc83fe68d0072f1cebe40c77a05e350db73ceb50624c3fffa3f2edbb61d38d1b3378a9cd389cf85ab6f9e9d7ff6f250302047c435bb500683066023100964146b0e98d866cea7a691fdf877488d52e9fe60f57a901a48abb4b66d125890ba354fd480b865aa51e2aeaadc2fe3d0231008d9ae46630d49d558fe716fbe76616897e2f7e6f53f8deaa0e2782e71a2880efdca0fae36cf9a16f8699097b6a12413d0302047c435bb50067306502310099b36db86b81e7d6dacbbb5c6b0900dbd111ea105aa213bdf4a1ea2081d984f138c0e83572bbee2c2a3be6f3ef82c67702301350303b3d420ba8a8cfd4bda383046d10974bf649d1878d5b970de051ffe15f9726926530ea984d8ddcbad3e6e204c80302047c435bb5006730650231009ab947cf87f54633941ebfd7867db059e5147b03cbb5086211a0b4badfc3fa1d7c95cc86364383f14371cd3da37ae25a0230056d5490d424aeb80e320ee86c6f682c25fa7c743eeacf0767a07b468c303db30104fc755cd1f2136116a3ea6f23f31e0302047c435bb5006630640230315bce166963dde1bab8eabc9f221df3e5de4f4b358343bd36a5bcfc77dd889a1419b81eb893e2d86b7bdf9165636f220230458fb59ac9fe71fd12c59e3c2b036c4cb06db38ae75fcd2bf4f44cc9185bcd95d583668196028eefafb9c80922f8c4ae0302047c435bb50066306402306b3d9fd01aaa874ac5b9f8bc243418f83c83a2bd53d5f3e0c49d4da86be78e850405ffdfa6e8d947261403dd9b3779bb0230055939c5c91a11929f624bd9494d99bdc0861482fb047ca24cd31884c7332d961c519ece6e93677c1abc5259e8131ede0302047c435bb500683066023100d35ce6f0cec15608d7f92d862617de15fbc1d96ce0f150b78d0df86adb351e1df114533b01da637e7602fb88aff92fb30231008a70ba13d3f394d48484f0720e4ddb09e442ca128cba7be1946c61f0c6ee6d8f5ecd9b7bcce2f4f4958c547d6b20d8230302047c435bb500683066023100aed699d2b0536636a5e976e57405b21866f558f30953fe8bb290e5672049578dc1851d400dd519495144743c776dadda023100d52f5a8db8895798bdb1ece90ac5386f630e26e176a1d3b0979d3309a4d485428aeb9a08f85f2f6eadfbbb744f2e9c0a0302047c435bb500673065023100809be238cc99ddcf80f4ca90f331ba299a6906d2678eb9a95beecf0d49f4df1db65389fddcfbb4ef3606f38331fbe21d023063e2f7e787d1ce560ffa503c75c6edd4f9f91a85ddd5dba6ef215ab80383e64c077afa27b2f3f195e17192f336a80dba0302047c435bb500663064023012ac5beeced5334b3fefb13c45b6d88b4c11249b2673cf76458f51f10659a1210a0f114345e6f09452b93d092bbcf7c002300ccbf225339743d751581f08f844d242e57231fa298f6dedea77a8c81730daf1d6a61a3c957e289ce3a6e578999514710302047c435bb50066306402303f998371acd0a6ca14a3f1c3c6455f725e9b3279689f96ad742a25d18f3ad2798c14a1594c9f0768a860e4b4c0a0c62f02303a89a5868bac1dbf47da2d446c9a4d8964469fc3231806da4743a1fb20dfd80ae362e2332df1c2c8946b0f08292c7f1e0302047c435bb500673065023100d293f92b033d2aefbafdc0e0e8a2384417ffe93599ce055965adb999b02f75fdba82d27befab69a7a63d8533743f5c0702304197c39f8102321f34d9cd5a24e57f2543c514a42e420b42a448ea71f3fec9429483b44fc37e977fe97bf49462274b9a0302047c435bb500663064023075680c2b29841fbeb88a035f63ebf8e5989af0da41ead0a80be3a80b55b570419c712239162396e38600628d72f9ab5b02306e9f71a78c0ede4cf5d4eb17d71442a994266d676f3d7328118fc53ea6e440a911c653dcd470c9dad22761a909acdb9e0302047c435bb500673065023100a5aef833613e4afd4384c78848d4714aeced43fd4e092762496cebdb38d9df2bd5ab55405f004954c0a125717269300302302132ae9e774bc5ab30d0878f052d4e907366e61322a26d18ed581d1098dbcd18e7ae32c19ed062ec138c779ba7b9300f0302047c435bb50067306502306a689b7cb7f36eb9456d4b94765ef0556419c894e6ee46bada55a24198cb6bbf41e6ddacb4381ad04def486043e42fe1023100aa77cab76afb7ca3e91eaa347bb42b29910fdd07fc8655d3dd60fea1ae597b77ee400b46132f8be6aa1a113cf1a9b0c90302047c435bb500673065023032c6c05aadb069a09b0526cebb6e89858fa6acdff8e4997c84df1124e6627e68b591516df882fb4d85ec4a5c07041a6b023100f96700ad1ea9fad074e6f3bc65538d771a99e5929b2de35f97dc5f4df93a0444fd5aa6dabf2298bb0484a3fdc75101eb0302047c435bb50066306402301155de570241fe08a6b26ad709fabd4c5084f9e7bd16bf1569dd986c1ec939c435ec16bbcdbb63c478f901a1a24686bc02301c15ed3da427348cc3dd97ab4dee13efdc2034ac9c50fb5d165252d8c79d8585429e955263495a84ef99e58035b1966f0302047c435bb500663064023069f75888c0c0fba3609128198085585ac7bf3ba082ee70f94e38bcd5dd72f338e89da15b78752bf5c9924ff8eefff35b0230124bd5aa207fd9e3671f50eca3b48dc4c1cb64702252c8766b6a3573036cbbc0f19ccf618b6d94789f3758d7666a7f460302047c435bb500673065023100d8619a55f8dcc2f692efd7514e3a3d725d12e6d7d536823afe6a25f09571f9124c6cd8fca94642727581bed334ce4b3b023065be5e04abd7f1671fedd91b639e9e65562b6db50c231c6afcc4058c9e9e69d6854cba713f202bc8a9d405017503cf7c0302047c435bb500683066023100ab2135c99435473bfdcc5feb73e69198fbe754642fd0869812d0f9e2b90e19395572a00ea947d37c9a563d1ec5e23156023100cc526455f135dfd48a654c6daacb6951c893dd8b72b85e4193b912cacf7d96e7fd8b5ac9baaa0aa7dbf50b0beaa9679c0302047c435bb500673065023100cc833c6a3ffe6560385fa1dcf80bfa20f8909426999ff0efa4c5d9a1be589c03d38deae55bdc3569ce48e5cee2512e4f02302a5202eb7c768aee568c48144ef21c7aeb17cc729ab923533cab26edcd3dcdb8172ea024ec57d2509abe8c5b9fdf87430302047c435bb500673065023100e5a4599fd95fc907fd50e2ddaff2558525cc7f31e8ed5a0e9c489710c4e3ef5ab32ca00cf1aa445e7cb362b6b6ce482902307e5bde25fa6255ba705c6a320c239a79e77aaee8cee9c7679dafbd3858165565a2c62258a2891771e000fef3ddcd4d9f0302047c435bb50066306402307e15c350f27a7933c57d0e282b19189f7361be937d533f35f38a6c030085b14704c4e75e189a1a7a76e6758a4b29b3d202300a2f441b4abaad0b28434b22f013395982699294f5d2dcd8403d387fbb8ceb32b6a8c0567e112cc9423c827a6dd7ee0e0302047c435bb50066306402304ba953a7ff19ccc4845bf34a5358ee88b3fa580efd071d1f8584ce97350f75c01026cdf0ee5a0d5319b8f827a177aa2c02302311f66cbfdf8628059ed4cb3e87eeca45bca7557031c5f9a8b52b0b9278520abd74e4c52610add9dd204e70dde259360302047c435bb50066306402307a4427ada32f0e4dd2ffcb2fcdae56702ef9cf7c14597b60f5b18ec602ba1ab5f4e8c8bf7cd87539f7d0227b3153c1160230719ecc2fd400b715fcaa2f7d156e7b992958bfc94a59a530455ff8ff561be557f44d6e3f744bd3b747bc7fef14a26fad0302047c435bb500683066023100be6f95e0a686809c38944ffdfc0d7a5ab71dfcd8c9c473f60d6a4c53c5c06f242b23e5ea51eb55926fbdfa2023374daa023100840bc4bd55207652240b242dd52323e3d19600f70f74bf64952fdfeceb4deb0afa4f54aaa82b19053f46b148de99de6f0302047c435bb500673065023100fb07043a8c4d81c395619d9236ea83f7e223c5eb520b08bbad36d7eafd7adde7d3eeda299ed6c57c0678e9a738d23be102301c4eeae5fb89cb0ab42b2326622933b3d64146bc3b760fe43e5d538e1ba0b121e06994e636c818acde3c1cd2bf66995f0302047c435bb500683066023100c0891355b26d84eeaa2f2a5e7bb0f94b88dc97a94a8302606a0974521ef0390548d044a0edcb16cab76c6787946ea0fe023100ceb6a817afeae3787decc3a88116a0bc21b9d1a0ab63dc4d2d68f8fa4848e3b2f9143683e71e69c10a226742e1fa0ae50302047c435bb500663064023067ef67bb02e7f46a716213f058d2dd4d25c041f3ce0953c719295a1c10c5ffb6d2adb26703e5ada9a102122f28bf94890230555fcc6d7ba4284180ae80f883df872897edc48eab307c3b2ca4e373ac46e9319b43c6b48b7c27bd6af0f14be38ef82c0302047c435bb500683066023100aeb54911358e9e3cf458f0ff0aceaf3cfa844c8ecabda105e843d817afbe6913d139effa63a63202b79542eab823582c023100e99727f4933261e1e95d6339b542a1f012e2442a509a3b693e4d1b4e626a8b1b0f2368f7ea2b3add2bef403f70feb10d0302047c435bb500683066023100e47f62e0061b73867fd042c8699315f87600699041f0da05052ef8d5b953ae3c3b112ff983293fd00bf125dbf77063b6023100b279186f611a5ccefeb42bb4f0ab4c8e0916c174b89f2740606a3a29fb79ac0f1d8b839d4f096e09c0012dbd828285ef0302047c435bb5006730650230166b7c24a417da6d336d4ba89f9b87135f693123815abbe4dc03eb349e4ae580a746dce9db66b596cdfd5e0966d29f6d023100923023dcd0c8fbf76d302978f9b96d0c1485273c625ed08045c8b6fa575eef338521d43be71787b106ca0b90279a688a0302047c435bb500683066023100abaae560a7b748dda31f1b0aefe04aec4e996cd05d75466d04f43e2dc6556f761b8bbaa11799c22f61b2a0a0ccc6f7f7023100dd9ec1a41e74174124465525c9b29a0d8b25ef88d89b8e68849c94dbdc2c551a504849cb11f917973c66af526a9b480b0302047c435bb50067306502307ee03e468d71a487f115bbe5966873829311ab31e8d694c8cf27eda2a57c6c738eccb6eea2175361bccb760a627e20a90231009f0ea6de969932e1c495a74f1474d0e4655cfff0dcb36a615011486e84a95d9ba1a3b15a3232fa550be4cbb6ee66d9440302047c435bb500683066023100b927337dda034c11b33bb06418e7f791ce2751a09027dc00df6cb4e53f2607e9db852bd9bcae6c7989bed56c8530ab53023100fa40ea8481e18c4fcdd6c3a796cf4ce31c012671678ebd7a0f099162aceebc7dddd5e296d1683904f72d34797e2d6f7d0302047c435bb500673065023100f769e742ad420792492356ce25bab1bcc435092c3e7f3ae89cdddf9e8d92f447a8873ded55b54f770885fc733b032a1502303ed482c84172f4c785dd3558323f835244145a5e3d0f7ca86c60fa276f9df5b5615d17e4b09f313f88ef7e3a48ccab570302047c435bb500673065023100b8fb037e92f686d8ae2aea6380ccc4394a71419f3cd76014c080cf0edd4ba867b82b4bf92a8e9647a1b9d7a81d31a52b02303daedb9e827fbdb6c289321c6cb73528c5a59bad2af40e60e43463dcfcf8d561c89db7f93ca951160c623d74f52a0b170302047c435bb500673065023100abe1c088f0bd90cefc45ee02aa6740a27cd129db241ee9bd6de92d1e9c126e3b0c67c5db0420d3f25c77ea3fce16378b023045416e6eb9189a9a3f5d9e3b2297ef30b40a992f8a2d9f0b673a701c669db1ec5b9eadf5fe9f88896ec47743b9cfeae00302047c435bb500673065023022b50056f3332313231c0ee0d1dbb5bd1d33667828ac72005cf68b7cb8070353eaa1ad2fe01a8cc812bea5feb391b8ed023100b0d3b9598126b086639912bd9809188e96d7cd30081858e7a05313dc089a51ef36ebea14b96217808f05a63c1892f5020302047c435bb500673065023100cfb141cd791e93f52e3e162e89902785874706263d31f412266c5f5cd75d2d95db6b1e5e464efe242c67c4b46a5ecb0602305f57502fbf7ff6492ecabc29ea2ca6955ea45f95a25697b8197529357fdc22aca6e22e083846ec5aa9a6e209d86501080302047c435bb50067306502306642e949431c4b6d5577d0743c5d87e951c2a1dcbd32649a2e907ac2a32b433d379d3724588c095a11d76fd44c624fe10231008bba0bb262d76d310f590ec877516cf82c7889285560bd8b88479c06080be492110761cb3d597804f10b3952fd4a50aa0302047c435bb500683066023100cb87915b12ec2240433c37d2a5f810841eeb492609628d03fe532879a23957f293599213be91dc9ac055c266f8b439bc023100a22846fa1de3ba3e5d4895942f8cd76995f5afe685e43f438abeff76a6dd3e184396234b900721d0e91a50ae830a31f00302047c435bb500663064023022c2f0f2e1f8da71405ade87cf53356e96d46797b9b7af69ef12c0917f17ce10e2ca0ab6a0b49aaa6b422d5fd32e60b5023028153213db92cb99863b1f2fa6b455a5db1928e764288589ffae798f3665163b21d640e09436f85ad45ddc23f35d7edd0302047c435bb500673065023015b2a032a68746c0850ff10019c598f3eef14225034e7f61ea4943d4ad42c135f44e9e0dc1b5093955873fcc5d7c6e4b023100e3891229aca8dd93a20ab60108355d5b835566d9b6831810623cca6d95b9affab57da1535a79a9dc5e5c1ca00f96c7ee0302047c435bb50067306502300b3887e54dc211cc2dbfec0f1cfe32a261e89d70e237c8fbfd253f0410f06952134d956e33a58ac40ab6b2a17bf6e119023100ac939f330389634eb890b8aea3386e8d007eb970e53a824b464b198626bcc60522cd96ce2e3b88ddea8dcd0ce56eee370302047c435bb500673065023100d9ee93dac644360f9704546240c02958a50abe2c9762f9a9b80f42d4035cbdc02cce9ab9fdb0cb0f679fdf245f2e792b0230201393a536c639a4f196c1f660213144892f4e103a4d41fb5b588b6d6dbca5b056de6c531ae0ab09585c473e954d72df0302047c435bb50067306502305c0a87aa71a22a3be5b7b79468ccc46a2fe46c711150752ef1ffcf403d835209579c5db5c6fc16a0d3a32cc08edd574b023100b97fd166f8a64dac0c326e0919f51d9d415657184b4bc6294faa3a5f0176c089a05801b7e8bf770933830db14eafc3660302047c435bb50067306502300110e50c720aa7bfed1221f235e16fae7f5ff66cb97c285cdeff973cb6a79cab4be27fc9ad9d6acae9c4775ebe8f2e0e023100cf9e6851d23f8d0548d3baaf8fa30357a360c030c3cba93e27ff5cccd36cf5368467b64cf70aac79d9e2e04d5060ad180302047c435bb50066306402300c12d8a71eae23059b9fdc12db41568b178916abab7b69e9f1c4e363a1ac326379b80f0e7663c75d3d8d88dc7573dd5502301596643e49e2c4d31f4982111aef99e8d7317627b06213169076ddfbee0013d96f97a50b889fd4bb54e7637fdefe2b560302047c435bb50066306402300feac00583c8c74573b6330a31998d7b5973c9ec0abde65224408c7cecfe22341fa36ba37f84d50be03b94c2d70bed8202307cd34e7ec5b9c45dba84130e3bceb9909deb055380ea260677039060be8007cd8b4fccd6cd36be3d6d6d2d2e722d8e010302047c435bb5006730650231009bb865f3a342fa20fe0916d8cea35459f1fa6efccd71c58818c3a4e5ae0fdff0424d74af6c6669d65993c02edd47ff5f02306d331c8d782896998a2a6d4a3e5eca682dd8f6e436e3fb51b509d6f6d56b5235609b1fd114a9a0a0af1c6467906bd0840302047c435bb5006630640230108b3746da70d9f0387689ca28903e0030cd83f8edebb5f16b6b97de1542ce655937be9ede3e799e95bf11fdada5d727023025294ac9a9adfd31619f97602c3514c880040c34a03253cd8ce6c3f8fe2ad2d3044fc2b7b4b591fece0053b0e66d31000302047c435bb50068306602310092eee3b1af2b78b8a8823567c3a6ed26eb3e96039471a392376321ed6b8eff8ad99c8bb04f0eec438907a0dc3bb6f3ee023100a022db07140850ce2d39f5f18762e0bee3c4691fdf20916ad3dd9af8cc2e1cf20913860ecc9cd06e450c93cd654f374e0302047c435bb50067306502307211e4100d1c331a14d7822e743b5c5470bafdcb3ef824c5726ca3f3f4f013d6dad3f2136b13c718ffe394d4ec7b74c7023100d628a59259a87bb9085ff73cd3bcbc94d0a1acae57844867dba0d53e6dd898bb38073bcc819e300d8fcc1dea3f9d5db40302047c435bb50067306502302ab171b75ca6d31533c916c81bcad438c27ea7cc572fd44be5ff10a93f0687c24677a6cddc08ba6c050f6a1f0cdbfb41023100dd9b0ca8d593674ddeab06ffd9da969642bc3c287a9642b5cdba8356e968b64429806b6fb4f39a3910135f22098cde560302047c435bb500673065023100cf3a0dd2892d1303b5010d6e6278facf15aca0a3af81df2a03156b392a85446fcc597d834fbfdaca2a860c0a93bef757023006dd3166d4297206b5545e569be09603804090f3dcf7be1f735c92314cc3776befaac6ee04f91699b3681cc0498547e30302047c435bb50067306502310096507caae776c4e17e6644da9a2ddf73a1ee685b140e303e005717f0bbeeb9720eba4cfc9719e90bd34e9d5f7d5f6b21023021479d83badf1eac440bbb0d03d9f80701ca5fe9e17841fd81bd6ebadee9d64562b1027db6bc9f1985ce7d2dc70447bc0302047c435bb500673065023100b48c2efbde819d97bb8c98332cffa39185b649b5a8de79f449dbe5eabb1a1d5348ebd6358d13059077b3f01c3e6af4e0023061de59e8417e4a14a5119430e5baeadf7c4913dc29a5f763c3e0637a6d0f5077fd76d887b194144b3241711914cd9f3b0302047c435bb5006830660231009db094a67f6d5233f8e90d773bd984e5c57ee3b4825e1f3bbea90c358cdd7fc42a9e71b594b6b606fc9f6a70640ff3ba023100c81dffe38002b47c286b7f51e238002f873a2f4ca96d7cdea8243a15136b27c40c1d23e7bfcf40e18e412c0d1e32ae0d0302047c435bb5006730650231009d196a465326e54859c4d9a8a232df5e92b6eeadc93fa9e463a8d432d25d87952faadfefe465a8c323f434eefd144d50023051e397addb1d6a48585ee1c07f5a7f6bd5c368395d49577a7d568c7219ce539994b75b8f8ab7d2b9c4b452b14fc01a530302047c435bb50067306502302a8231170d53cf40bda3d2a4166f6d1c9141406b55bfe7ab82b23fa437d11f3db89080cf8d27b0a5961e7feda1c12a04023100857243ec0291b04fe42d956b0a2f102c35e7849257e6bbf917d45510a8dc5844042351fe46da6155526cca486c8c4e580302047c435bb500673065023100850aaee557ac9690c7fca556b02f1ffb803331fc33faa55d4d8277df9c95338c90947cad4aba1bbdbfe34a783271e36602303e8b844ded167d68d779e206b6d12b06bc1f9a9b36d578b90b4b028a280aa7ec1cb399c4c44452c7a3e079ab35a999ed0302047c435bb5006830660231008ba829f06509bd0b9ecf1a05f748ff42c047b82dc14ca9a31327e031b290133fd50335d96b1d066a275dfe6cc4d07bdb023100cb1c69da017e57931e53e07b7acc566a1643f54bc26eedd98fd2cfc5fdd678fe837a55822e451156bbf6dbd5da78c6bd0302047c435bb50066306402300e8e46a607335db22ac6e269dceb764918ed4dda2057c436935337dac1fe4cf8e0e5b2ac4d805ff3efc1ee09c9c0ce4f02305aa6f968dd942ab41b70875fea32a96d2b22d35ad907c29853593d6b684b0c867de1e9308d41f00fca3aa1d952f2613c0302047c435bb500683066023100f1b5b34abf89848fe2bf51cdf64426b1190423570851bd5d1a8341e71d6320ba77418a6af319a5c17e0fbfd65fc5b58c0231008ce633ade424a7df4aa14bfc82d79b737339b72aa7cda76bc5916e65f5f6daac7eebcf1f03ff88984adcc71c679425850302047c435bb5006830660231008cc3df2a471a93ee23e5de60080f9af3259d2a26713b2d16c5d9ae6f9457b9b6865819c60998a3737d896fc2f281c451023100f0052d714e51be70b78fab5fee7dd28980bca57f3113e08545ab22826494e700b345c7fe084fc500dc8da6b5fc5a88820302047c435bb50067306502310094a3e57e56eac16311a445bf81e1acf12a82273a4e02ccbd60c8a043c6cc726f2d32cc079a57784309b3d4c47ebfd12902307b3ec7cd3526d692728638fe6b4a4d261b987068512f87db23f2fa2103831b5535e31bebad19dea93654a0438e2073f40302047c435bb500663064023026a2635ec311ebdfe3321cfb09007487ea01744fef12ac82100d891e8ec3dff82def8851a7679a707dc93fab582ee9fd02300c7e9a29219c06ba7087bc5438e0b0221831d8f14ee674278b64890ea1242507e76aed3d1da1093f3fa4628700a905af0302047c435bb500673065023100b12de03dc4fb0ce822c06e180f137622738fc3aa558356fa71c76a10e9fbcc99804ba98cd2a3e0beb6c6347c55b9b6cb02300e6922e3a98afdf7e14e98e2753c646d7549771039c0f49acab8bda6981e4115ee40cccf75bb1829d5605e88cf4c6e760302047c435bb50066306402303514670d3c933bded7eee27c17c96638fe81181ca739a69ef398ef7e839f7e759f8c43a9e72cbf679555da52e47e470102301abf291063d69691b3af914e48a8889ac1f4cd03d45d2e31168ba8987a67e442d40f936341a7f616accbc8e7ab58f44a0302047c435bb500673065023100c92a80bd22fa4649c30caea2d07974f0f6bf242fc12a7f5ec45f7d363286521fb12626b36e344d440366f9ce087de96a0230646943f8b6b59952251ad48e9112bdef117835d866fcd08f58c31b305471c60c2da96e01b36c80d311c78ce03e8039ef0302047c435bb50066306402300ba36c89a766aafca9c5673082b30b27712d28134d8008e945af8445b62e86545430443761fc8af1f32335706a877f1c0230695ce8687a6c133986eb6eebbab46d745c2bd9f61e13828c7ae25c8b2d13209575b51aac0f32b7ba740be7f2628bca4b0302047c435bb500663064023077ed7d5bc431c418e5c863437ae2c02d025fbfdb4f7c100b07716f2671c2daf562a275f335485777760179cae2d584c70230643534ff0f52bbe214b38ab7455199589db25a886d71c63c835288891a7671e39c65434c7dd818f09fd73669eb7d5ed30302047c435bb500673065023100bccb79e529e2047fca6eb93d3becd4224e886bfa9508171d671c3d177efba72c424f947f6d3aba618d96002e5187fb6202306da7d0939087b75aebf62c128fa9b7a055a30d0d651688f49cdeba0f3efc68b094d6a956df92db95b7192f07d59870350302047c435bb500683066023100effb68b9d1b36ea2e0ce9af9f695edcfad018075883378f274cb67dd9e421c7422cd7a37e15939cb9ba77e518cd8e4db023100a954ce79f69ca03ab623aefc39fec23993d89be23c04837a6c5bfd16bbbaecdbeb506c549f19b67394e2dd31eec819fe0302047c435bb50067306502304d7b1d2e79e95b94c40367b433202e2c8a03788b190bee50aeae8bdbe1914b3e41173c0bc120e660d5604e42c1ba7f50023100ab45010f6973483a7e214cc06dc0285eaf4c7707312d132b48814afb4870b5a8cdcce4838320ad92d55e2296e9dfb46e0302047c435bb500683066023100c7207c5401f69c43522e1d47128283b4238c1dfec42136a4a3cf9702dbefc5e2e24eb992d709842e3bfc4080f68da8ea023100d62b589e0681bbc05107bf443d2e43d6e9276c0013add077e09c22166a3ef9d974e2a5a1a00616e88c928783aec9eaab0302047c435bb50066306402303c0bb2e476414349bde7e3f8baeffccae288ed60bd8ad9c2a5dac41f2fb8b1be18e1a59d173bffb0d57df0720b64c584023023680daada86ce664d5db164f462b55d09da5b70e4f3f5beddff25021c555c65f85fca3da372eeed2502acec1d8ea54f0302047c435bb50067306502305faf600ed5b2a1e5a9205e9e271b7d2f1aae26cd96436684e07d5de3a45a52fdb08b9d33bb8bab7c95f478603daa8af9023100c991c93b2ac6f7b3968b78f2d9c1f17fb907dd42c65f909f6fee15adf1bea02e4b90cc6607753a31b86cd88e8bc6356f0302047c435bb500673065023020fee2b39110bd61d429a343544e3634dda2fcfd2f581f6e7beea8e3b7feeed0c7f29a0640b2395f176aa0d82f38de1d023100ee850b25fcdb0542bbb67c545bb1d2b2711c1fb24253826479863fce0764031d2c66fd81545c9cc1f6ae3b8e83ce3cc10302047c435bb500673065023075e53d62ea215b1c5b534b95ec4d1a5a7ef524caa186f9a0ec58ee34a5a1c1b195351e5d3d710780356df6e22c5d258c023100fa244caf344fb51c3185dfc53ccb6c95d1f8e4697b22d20ada914015aa71eb89a64663029e069996f1da2703a94be3d60302047c435bb5006730650231009450d43f4e7f0bbedc88529bb553e3dd979cffd25c43cdcf36cf5f7e69ee3dcdd404fbad14db169e38ebe848d05806e102301fcc19db9ea2fcaa9892a791b3c39e72a06d47d496e1d6b69bee4d668b840ad0ec078c4714adcbcabd8964cd9ef82de40302047c435bb500673065023010b12ea157163f91c5b3c973cabb3c656804f1f4153147da4937e3da8c7bce47e2fdd70b52f50d74871faa84381cdc0e023100b9acdff174b377fcf54a5db76e6a9f9519481d43734a872c179b40fd63bee7304ebda92eb2a6f16f4c0ed7063d2f3bc30302047c435bb500673065023100b56a236ac029fb4906ecd2a98b457fdf63a1a4a3f9b3947a1c9200f8dab92bbb90858b28b360aea93a1f3f651cb1c4bf023076704d5dcad372f41b69d5a57e658a8fad19134721346cb0e5591705324a3fe1f6730f4e900a176c17e14cb930768f390302047c435bb500683066023100f362b3485bcf1e41bd4a4b012a74675c4a36156f462b8d48037170c09a9e94bd8790ce9d34f5272babe41a5bacdc2d3c023100cc284471307bf2ec93c21d70021b2ffa22f87e290732195fb7cf797ef7e998eab4252546e62cba24dfc21b7f3a875bef0302047c435bb5006630640230564c4b0563fc0da6b796f8b0d4b8d6722f53233beb3c5588ea425eaee7d6d80bb3e8373071551dfd4cd70b87630ac8e00230018bd891362e7f0dcf71306223c24bb0fffe54af2608bac9ad6aafb1010fa86b13d737462a132c37d8c4bff7b646ac110302047c435bb500683066023100bbf9cb317feb0e31e1f7c6da918c9c25352f7c10751e5e0fd4f0b4476ae003e70b18a2abb811cecb41789964700f3d0b023100d5088332c1a5588039fd78053bbfe7f618463fcbedb879402ed391bd54dba09aeaf571b8982e01f817efa41ffd6fddd00302047c435bb500683066023100b59cd10ee8eb3683121785801995785477a9a93fba8bfcf65babb1f2c86ee44da88d6551b8c1764546347e5687ae0152023100f3871ce7e24f88a9cdf9a549c4d2247c0a292b063e4ce77ef78f3ab2535f942c3cfcb3a07fdd12cd09fe06f6afa745c80302047c435bb50067306502305c8343aa8e53910c9e1594fa8ae58d091b696ca7e8b0dceaf9118d0d1c5ab2d3c7766fb5d8a8db61ba518ccf80d72a61023100b9d6c99ded9b017f36e35db0efdbbf31c49fdd818681ff5de9c62679b30f2d392ce43cc4eb1deec8d74318d833e821970302047c435bb50066306402306dac3538c9efa9f483ab3039e614f81eeb7c3f92689c3634582f228edf8af31ff7ee0d8b6b8d3c288ec8f09e9741a06802305c21ec395636c0268725a4d41f491a0fa221f78cc5a581e1084ac3091954207d6371675338e43528396c2c5aec9b8e0f0302047c435bb50066306402301861eae6f8c837f4b5bc9873cf6840290e03ed1460de1970c22d262ba86f35541e42f6115e090a74d21da8a815355d0102306fb3f5460cd7312335fbdd3c09518997668a33cfa26fbb3eeba97de307e8a0c0d30d4c082f2eeb343e2de126dae611060302047c435bb500683066023100e99646cd2a6a868e230de9fbe75cad40337e470a920cba6212ad89dbc8205fa6b2ca2022ef0e4fe009f430840b7a73e0023100c31fd5e1ea8eb286e50a6cf19030391f1c9e2b56532c277d2fefd33de93993716fce3d8147aa3039338ac1180722e54d0302047c435bb50067306502303197cbb04f39c8a0ae5506f6954173d8ec0308f271e97c7265530d3c9a681a1d18d4007666671e4ea99f0b4e2608ed8b023100a7c24a0552047e7a7a1b0d460f812976b04186c8f8715f2be57023c82368dc97b3377071867d0b556a85214ba4f67c8e0302047c435bb500673065023100ffd5619cb7239678fb30b5e3c35b9471a0057db3fca1adffefe0566bc1b477eaf4578a78a287940d8e5359f22a413703023009196a3b4e5c0bfc30a36522694dd4c2dde436d4a7cb49981b693a3deef965a560a886e4ffa39c528190284cc13d4c510302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306a43b68cb9affd5878d8204904ab92e6f450fd00b9659e96a6d2f28db969417653e9ab160c250740da59ed0ba2c4b4b402305bcdbca4e61bea40c9cc361ad20f3ecacedbf815a1906838c7dbbf2ec3f541a96cc93d829461b791992b09fc9156a5f60302047c435bb5006830660231008a6ead0ac083e227e03651b2c57f31abb9c6ba8c9cd61cb2e5e9bec44f88bc7a83eba7b7a38e7f5ced2853a9b3b56e44023100a559395ba64c6ef627b591c72d4540e7714e16966fd58e88460d6609a2049a4db258fab9377363b6ff0825400208c6d80302047c435bb500683066023100bd9c6e7b54b1b01e9caf9fc273d325ae7d81487b05864d82d9c825fbd214b98fcbd42a2d77c5d8ab75baeec71ebeefa8023100c0d625cc0e6f9b2e72a11195068db3db4b796f6d7b28d721a9cbe0286ca2b6eb8ac12f7806b8dd36523bab7ea552ec240302047c435bb500683066023100d741413db4dc1e2d96f4b104e231d3eb2e975479943c520b3f9777e1dab5c9e0a7be5a29ab4bb517cf678f8c8dab2a5f023100bcb9297aa1a3b0fee253762ba515c0ac92dc15fbe7ca446195224751144b117af408a7b62fe4dcfe496d33205a5a32b40302047c435bb500683066023100c281f8e0f96c19115b391620ed3c861b44f23045f466365a1b5eaaed99ae2b099ca457909208b46c310220db4bf4811a023100c1984cb6ff97d2a22021844048f5db46be5768fe507314b2dce58ca2d22cb7f136ddc0b72329e4e6e927c9d7de1239040302047c435bb500663064023022a0ac4af969e4e2c25a9ed9885fea0de48d53e197c3e40b689b62e28ede7b29788b5ccf7e4a4cfcb4daaba2dfaa71f20230652b744f8c537771487d83041d17661e8c4a6c03df7f5342012291286ebda9e3c0811d33e57363329e2b85b9eb1088db0302047c435bb50067306502304e77330897314a9f349a6e511b04db5b6a1b504713fe22a4bf28de829d94e2945830dd62de0ec64da8b38a35e05456ae023100c9d4d3be79130399da21556bc363b2e70a88b597b5963b7b5d56e4a01fcf525b1b2c329f1ee71613dc54c25ab6bd3b350302047c435bb5006630640230450f37fda8befdd5a4419790e9fbc27bedb763be5933fb1fad1e8c22e3a8ea4721b65be25ac84463c943544d205632e50230610c34dcd654293b9bd386c66f7c7b5bb6635bc5d220772ba683bc8757f9b466ef9e492ab23c761fba88fdd42cd52df50302047c435bb50066306402303795d5cc83349d99c69b118856e17297b7ea3e059c08d5f5c052745a1e66092aa92b61f44159006df787360d837165c502306054294ce93ba6d4a102942f5d26f7c1f077b5c38196ac3d7956c5de95d55ff2529afdba3bf244a29cf85a6685638b580302047c435bb500673065023011c31b5c305c8d1cbf28c05637a03c61bbda12056a047f1d2fc1a2c68e7f25965464e8137892e19141c84934908baa2e0231009193e7fdd77cf4eacf565c66359fbcf50eccc2485e491cb76abe76690ba1594ecfdf1d2b7bffabc00b0b71149fc9593c0302047c435bb5006730650231008f7ca470b7c358b16359f8ec23379ef6fe155442622976a20fe89d88b9c4e9ef520d3c3f9bdc6e03cf791576f9eb950b0230720be4fb9c1a9c3f44112b14eb818faa5638dda9dc47d04b6d40083a5ff5fe0c6f564845fd96a34238335af4271b83160302047c435bb500683066023100de7e825e386b50644bc205c51ec495cf6ab3438e22133196cc7cff0f9cf425a19f44e7f26b205715b095136463a5a40d023100a3883cddb4fc7e3f29e145313a09e7f2d06372a7abd6b45f8f22735757b3c903ac280c8a07f2a542b5ab172b4aca5a0a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306cac15125651441fb91b13f085ef7d5b67a79cbb02d0ca16be311d135c400d1afed85017f0af6731084c15a0c4320bc002304aac23913bd06943bb3369ce43e8acf2b606cfe35198a60eb4a05fcd32e3dc177838c592686251aa89da4c372bcc8a240302047c435bb500683066023100abbb3cce986c58e9e07b01fd858c0de6f7382ef44b774e21c8e239f1b6495b3900a017378ec30568a92f82b8a4492e03023100f5cad7669d949cc9b6f92b6590139f8054f3a0d0b87d69046f9fd16d08fb1a2f5e6bfa12c756908426289108091dbcb20302047c435bb500663064023051f1eae709b9d34a580c7a408566b8154805edb25acf0c98c3c1e41567ae30b204e92179be98b8d750aa2bf039d5abb4023060d4364e8f27e47b3b092f409711f4aa75c8e85d1bf11d087fbce8677ee359896a6af2185aa7293871faa2379bb62ed10302047c435bb500673065023100ceb059c676b7ab43437c05f8d4e183793b5def0aa431a944e05dbb6a0840637a9a36c71921e8e00877588295f9b49cfe02304c249e010e70ffb7ba185b652a8a39534667e22379f09474013adacda7036489719b8180f5391c6f0ac747fc04a7fdc60302047c435bb50067306502306018fa11fed754c46a93114c49af08ed7ba1b39db0749c7857b18ab73ee781857dd03d2e00e562628bc969bf24e7099a023100d01bb720c410090b080c5fa7d1fa7d6604e4a2a9b3335b883f7918308a19a23ad26a4d75f27de1747a746ecc3d9858ce0302047c435bb50066306402303f6c7913090beda051df8851428ffb257a2b5975a22c6de4abec640082a42210ad861588afef3e6db42021ef67f3e83102307761d533c36a946b0ec8069ca1652492f94c83b1a62833e248ff5e75ed61f6a9a202f8df5fc94f687b105f0aee7d13f50302047c435bb50066306402306216c8cf35b940c33b369b9629cbccddf9c1b4da3d8e84912895b8f910d27fc0c1c8ab6deac7033a0c72ed0edfcd593c02306d003d5e055cf7ac3d086230f619b3fff9b077a43198dd29e9ce8b3813d365b6e828f608a83274bf6add802c800912620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023045f06538ae2be9b77c70098503458cb1b66ff2fe97dee7a1748c176925ccf9cf6295aae66b590db943f4b0e438e37795023100d4ec90e16bfe7b8213794e10911359a3a62c7476df4bdc43330c391afb4424aae38490fe60e817860d9cdfc30933a97a0302047c435bb50066306402302dfcd60cf615788f8e5c90af61c1c1851ba437da62730f869ef16ac402766bc048073761780b9b6c91c720cdcaf404dd0230147111e7f576b3afea2baf7a51e444742de539c9cb1b15eb8ee94f5f1950991b8f671941b57303d1d5699cb8f90f6fbe0302047c435bb500683066023100921ab30b6cd2a91cab77160d095cfc7599f0a2f8df696112cbbff9961bc688e66643d6b714e55249f4e81f9fa9087ce8023100e6bab4890030a0208906f8a7fcddb28df3bc3b4a6bdccefce3c4c66621cbe14dee7cc28bc44fce9a484b7777efdb98230302047c435bb5006830660231008a86505dd6e9dc3b3f2c60a0929e617e5632ef907d07523a7e90cca842e4fc7476ac33b8bf8b41aa408b5f07a392dfa9023100fdc96b676523ec274371d1333f04281df7593746dcb6b33325a9766b756b04dfaae25141e42dacce07a2b9f82dca68070302047c435bb50066306402303ab4901d55ce529f1b4bfd6a9437fcb2caf6f2141e390a71d987a7f908240f09fcd8202c364c9d277299e64c8bc434a3023005c228e9396b8eae7d532acb1b6f6c22f6a0e3afc71be6afb0f36d0b2e8cc6f8f30ed31f46f12a951f05206e5b8760fc0302047c435bb50066306402301130960540e99be588a700f010465099e99fd3fd877cf640584554361a2442fb906244bf3c929ca4bff4b78d65504bbc023016ab9e0812d9802478d694f6bf4fc779dea1a035c869990e57cda30e49317e88b01627e0928c1e4a5b0c5d02b29859f90302047c435bb500683066023100ece3a5b5506f0d3115c0f22c32a07eac20f9e56c8a3fd60545614f1cb5310a31d4590231987efff03369c914620532d802310082a29d3f1b33e295e744ed30c0f03b95483010effd466164867b3cec03254dd9d934bce0d607bba5f05efb68c6eccbae0302047c435bb500673065023100c41d9251cc5460fe547e714bcdc32adb64ae1be04753e48ae7e67cf4b23d99177d9c6f976b5a1014fe8720422c94574b02305f98d74a1489242030f1330c0d94218a2ed18dd87f19ec7df826d5dab144edef1fc4b759c88c37f691f0003191dc0cf50302047c435bb5006730650231009cb8e9273951d73ff5384c1c71cc7f511a87db526b059c608a64bfe2dc8ba26fffbf7aa58bb66cd32c88b932a04835de0230095bc7d23eccb4292cb1c033f9337627a00b225227c6f8b1c604d1f2f584d193926b11d66084c4905f876e1de05d12ff0302047c435bb500673065023100ea27ad5108569a648750cb479b1476c17eaf8972b40377b25a4a0b0dfc9287edbd55180fe5f354caef2b7333d172bea5023007fea01a3b4610bdb3721c9d4b74270e0072aa10dce6d4db5d61c91f3043e431961c4fc6b2ea08a88b8278fe070a4adb0302047c435bb500663064023054a58412d9c667e16508c622d023205b652b0b67d67325a708d497482999b4ee2d5419d31d79bf141a38d3d6a961e447023034d43c28d2590df42efeece7195c860dfb7727f4d55974fd48803182190089e06d410f58fa035585805f111ba2d73d4d0302047c435bb500673065023100ae72e83960c5800761cd296a9d7107bf48470a7e0d7695ea3f078837569b0a8e664851b44dd6e3431ebfde6316f686470230106ff769ee2fd809e6dc549bc85e1e24b8483d809c3990a585ce1725f490e3c3d974ca15286d2b781fad6ff43ae866390302047c435bb500673065023014937943ac7d128e8e7753a994c0e9b979426afc3388f1f3d3c035b259ade9448207f80ad889221548822bfc34ca9c8b02310091eceba4a49571c8dcad8fb5d8e5d8c1803855e5178b4692a849b124f51bdb5628164eae68246e4e7615dd60e562d0bb0302047c435bb500673065023100bad738eaca18a9207b8a13850d3db9f77574748f0fc491218e3c99bdfdee5078ba15e366c320d75ccea377f479ff786102305a8412060165acfa98992ed7c7dd6d80af1d521784aa457da721d33712c4bc140766df48694cee31a4e32038deb907110302047c435bb500683066023100d2046d3a02e3feda23d1f4e241677f63589076ffb765b719fcb6948cfe3a763326e6f3eaf36fa0c544e1b12fceda8e45023100a2b70ba9865dd15d36485a5dd63ce9fa85e13b41198f4df84856e6581f8640c6370151a4e35ea386eec368211f7563390302047c435bb50066306402304f5ffb0d0d2122f5382393dfad868dc0d95eafe6c991ac03d90d5e9b72a88a60b76209c5943dfce7cbc95392858b3a82023037059ae45a078ee173a6ca3391b3dcb8eaff328fb5057cfe988cd903db9fd6045f98c6ece8bafdb56dd4f10d888abb370302047c435bb500673065023100e238ab1e3e0e38fb88f115481c06389c1df73a996fbe2b05a51ac953b83b0615c8eaea3798f37a59c14bdd2a2d38352f02304c27dfca69a067b756bd311cb995fec8d96f90bf43f722846c718ac019bb2ceee69c8f9cefc07e44263eeb388527b6970302047c435bb50067306502305cc19d601b3b15b802ff6725fa16c417acc663f60bc026f3b094577e3f581765286e4f75e9ca526fb3f67d8a07d5478e0231009f0827a523eb1d739db10063d496d8c1bb8668f9c4fb7c84217c0b2ba7a2e5f07ee9107536c0d66ba4a308dbf22e89670302047c435bb500663064023072e553af4ff5aeb1c6be07f9aae764025879d6f0d9e2180208fdfbbf0f80c616ed4a862f2f0e8b9e85b0e8c1f3cadc30023007d5a152299b1e7b459e260810b8e100778bc28c584ae0aeac49e3a5fd1bd24617a1c17f298de63482e24c99990b57910302047c435bb500663064023070a5da579d0c4eac4f7825712736a495fb493ea1c90c0001b331d7aa9680975d1ef6fb1e23cce0cea2941bb7b235d22a023038f20db271fa598ec57e7e305742aafa996c387a64406856dc0f5d2f916181732cf496f38461b864cd97b866a25e44070302047c435bb500673065023100d6b89e5fd6e25258a66624db8487cdb0f65692396537327cb162df047ad61a419a84dd3f64f9542c796033e144ac49500230284ec7232e892ed0f31b4c02be82d11635454c32bec83a235e9d5071297f4afd20546e06d9371b5c0bcbc2cea46871110302047c435bb50067306502301ddb46005c3b598957f4bb0cd046ec246e2fb9d64584fc4638c1aa100b94ee294b1f829efd08ae0293d4cb66d73ba12f023100954f91106749d876554b9d9b465394562b02fb1b413a4da29c6b24d3f7950319da1935011a96a197c8f0dcbd78f984220302047c435bb50067306502305304b4cd1abaa39ff8a29083227aa6457d8f46c66e96283e90c63cd20e32f0f3609056e1db641094021f93cdc47c9551023100f8c944eaeeb4fe5ec004d81e9c276bdbcd11f60d78ea916415829a5407a13c7c5b5aef434466c18df764fdde32c8232a0302047c435bb500683066023100c5eaafd9ad1bd7663eaa66a60b5eb53e596388193724116e6ba91b2e07ce4d66a86febbc1da562f9ddf9d4d0fa263b7a023100caaac707c858025f949c1dbd51338f0449485cf51d70b328387bd0f42984bb5af03defc4aae1d642455e0555b72d76220302047c435bb500673065023057eff48fdfcdb6d7fb570d70d23a89edf8f2aeeea8838f7ab93678dd84f9ac124623b29ee268d0875964bc447196c1e0023100b3446a73a4fe828774b982b22d9fee3eee69952626b736f29140188b0588e7fe63d82e3ea67c9fea27ad17b8d239e2340302047c435bb50067306502302df292a2f11c7157d1fd842c6fa9dc9bb734af28b4997333763718f505ca878c392865d63135f7803014bc53f0568bf6023100812cb941acac46f4d299ad505066ee63c0f5f90bfd250dd78448228d68c725d15a6d9b8bde1db3eced35deb924c73fa00302047c435bb500683066023100bc5d459ede9fef0898c09a6ec49be87c66224ecb6bb48a497a67c95f52d4068be7abea00042bcdf757dd39252d73fd36023100da23f7d435bb231d54534d727664056833e3f513e175482babfb95f5d9be1fb2f884fcb68cfd256d23196cfec24c312a0302047c435bb50067306502302c62d7fa0d48c2d6747b8b74af7405477ab6b1b759e20ed6ed7e38e837bdb1278f4ca9d6d3311d78aecf439f13f7feda023100cb12305538f743de7bf85dea4298424466565b4643c5afc130729bbc30dad6037bb13bfe10149840bdd0e72fd2a9620c0302047c435bb500683066023100a06e4c74368ba001efc25cd3ce83a7fa84166a41a4f43b46b296e387cf75766fbd8ae7209e3def515398325090170877023100f70640afe6c552c4ed996441e497d2f1aac8431ef9e38229d696f371d0ab64779ab833c513437957efd855d04a98f3cf0302047c435bb50066306402303f92aa74c2ef7954871658edd694325bed064e6ce288238a96f2d9d383db3ab43be7ddb2cdb055e147592220c997dceb02304cbce4b1a8275fafeac129d2152157db126ce61570b39db882db6d9549ab7cd93cafa57adadc3a9f205e49c6a04fae0a0302047c435bb5006830660231009f13bbe31db539f27d62d33a85c91e9fd4a65895179dd0fbca7d45b6872d2a9598b02461396880f1a15971296ed5cf500231009faa66327cde984cdccc5fb717b8b8d573d328ed41371a884ed7fdc1fc08fe349bffafa0e2000ad0c438d03a5871e6860302047c435bb500653063022f4485025b82ebb0c761ebff69bf3154f9cb044da519e573fdf471edcb6e0fe3ba769fd4ee164a2c78fa41d69e278765023014eb787f5e3a1008e017711b8e81dc3b35773254e8f383670ad38ee1342e423ca572dab4030fcf22aa80790b94ba72080302047c435bb5006730650230174ee8fb325c1c6027f0b5f3e1a3df11e0517c5e74dd9d5b696e262ac49776ae8647c44bd5f04901c714c2b7ab728d06023100b01eaaeb909103c38fd89da15ebe07c05cb248c02c8be1bec6229245487faae297a62c5c3366e2fb4909b627fba161690302047c435bb500673065023034fd42da35b5de0dbac3da0c871a93ce998336531abbefb1749041a2f0c6e634b8a1b1fa487d1234b9c525ce4603787b023100ef72445b88213cac5e0a166ba3f1ad377bcfba0c7eafaa0cb9e09ba6e28ce00aba6512662eb14fc4b5d402efe15d33620302047c435bb50066306402303728b6a69ed4fc538b843324816e35d48612819afd9efc9bda236b88660ad10409203f6c47a0db562c41a432ee30ddfc02302f986a037064844a4d57607673e7fb5cb5d15376ab03e89942ba606bc848fe1d612e2427545081cfe9f5f016688e69710302047c435bb50067306502305d7cbb6d0c104d2cd776e913eb6dbc99ebd9e4a50351cb9420e58286e7e92756c315dc5071e62b483452c0cdfbb7e501023100a26e67c40802ecf62d26397f6ebddc38f3dbdb259086f1e2378b85b82060e3d836c707c6b3f245bbee57c35d1410fdd10302047c435bb50067306502302cd84e7abca0afcefec6d9182673b716eae9f344461f3480be8a3b036fe14036df7618af3344c565fa116f441a554844023100dfffc7a0f83563f7ef5bca8e7342661153636c67ed3d9a4fa3f1134bcf79850b154dc03feddb6814a34b1fb82c1aac7c0302047c435bb500663064023020185014025fe5496e9c8371778dba203ff4c46caf2cbb6dc7bb6d0c0f4ebb33ff280d531f118ab07c7dd8384d53eec90230543cf53adad8114752a788b6861933cbdb203c9bde6228d4943e9da371727bdb5a3f9588ae8a2e63f08d268c2d19bb8b0302047c435bb500673065023100975590ad347fd671f77d53e46b5edcc85623d3d8bf00bce72a895e285d9fae82404edfc4e1d94f2df0bcacf1a7bbc22302306de9b3d1b872748a8c0b47c54842b6126bb5c86d7c235374fae11caace5d9b889c3b282724bf5083bd3fc17e65b47f700302047c435bb50066306402302f565a0bbebe786fc1a37d332b6b55bca3d3e7af020079af983bc8139fad65de010d860b625c88bb9b97e5ff2aded5d302304c828bb54eddf11a811d419768f6574fffb445d0ea1c8c80cd5ee2b1df58f56740f804d6d0acfd83a32c796484772e320302047c435bb50068306602310091a6d450ffdf83f076fd8788b3a41908bfb0ea528518084f4c9a40dfc05e88fd8d8437833f72e69c3367e1f4e39e81040231008bc6acd90a1cf55d1335c173fdde16f3c6e6f3409a6e3f123c59ab912274fe5060e684e47986efca20354054952c4c0e0302047c435bb500673065023100acb7185f250670e665beb44191da08aecfa1406fa0801e5f18d7ce42870d1e9cb7dc098e0ad27934a6a47e8fce81b8fa023039bc0672519c017314b879ff6718488a9428b6e35cd97f6b02a1215f747f8a51b6734635a851c895a660e6db5b98e6570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303d644cc87652d8f2c85e0d619554c215b59a74c53caf90352ee66f61e1caf1bbea29da7cbff82e7567df3791d8ec1618023100d3698128f7e913d79057dbd395067d8f8551986bf715578cce57270657b771948fcd8fe8eace160572d3d165550ba56e0302047c435bb5006630640230607f958fead7397fbf1282f451fd29bae815b09be08d3366233ca7d72d1046f40b2ce6e982cbbaa0b6d8bfd224d09a42023074b37753406fbdd2896901ec7a28eb1f5f313b647ad45b7d0909dd4b94a0e428a8f7f9a29c5b7d16d897fe52731358530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a8eae7d748a479e065b6f6b05fd3650dd5f80a0da967014c6105862514ed5822a1da323206d15d314682a391378f6d360231008038900fd02c77e0a28d811632c64f83e18d5e8731036a03e1cbe69b2e9bfb407174f225e8389a2a80b9a77476a821b80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e6580bfd71a733d5c2c5cbf7bae3e9fba08f7aff5a9feaf544260e3b93cfcf1949e79fc801438edbde547180aab9872c02303a91190fb0b3efbfa6739b8d1ec291d43e0bfad4475e16b3574c1e24d253aa331c501143190ca91b00a77c4d5b76e7ed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f642e4efd08c9d634b7d703bf2838ebe598570508f133ded7f32694fcb0ce75c52703156ea0ae35098af112df0ab412002301eb2eda844d774c1fdebfe0e5ed3621b8844519fd597354d9166581389285ebe301f6c40d4eb95eabd386bebdf72a7dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100deeec103acf7c7bfe47f2537dff8af6f338696b27e59bc1d07fd3ffb3799816907e0896f7031990ef59df340cbb3012602302859e24448fc99d65ec05f428307e1f04e9d87c391f4537d1c48ae7668ca3966c827d1be38b97bd574d7a4189becb1510302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230539539ba5146af527be036c59a0677fdb4fd8356979a8033f9fb3abaf9d143c8aeb1cbf2e8302e53b252f9509caeb0b20230165c7a184722d2b19825f5860cbf710448f2a87e1d02b4931829e3322891d8b092ccf13cba6370092631be4ea748e2390302047c435bb50066306402307ccce8d2618a017cda08ff6ee5acdfa0b428c071907fac2400d5b15ff851065fac7066c0488a0a2e91b733352adc0ee802300ec6a7717707f0cbf2b1d83fa89c52465a3d383d248bbf2ee93369c3afd0506cdf7f0db78aa613bb251ab26503b1d45b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300841f2f277005d6e74d162d4bdc64142eb92f2e159c77e844451162ef7802ab7cabc3ee2eabad63dc868b279b5a2725b023100bd6eeca6826eb3076acaa2a5fc6a7066a227dfec4d7676fe6a3ece0e29910e3dff50582b5060338dfc0f5308d2d89c600302047c435bb500683066023100d92a8a9052567db9b44e9093ed7f2fc4f291fa20689ee4363665feb185170c4bdafb449233e5afcbca90a0090c8a64d8023100e3a7b2964bcea7825d786b0ba55b910047e74ba665847282c06d621a7e25eeacb1e343a528412f51ed30240e8a999cbc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023028ed3bf45f5773f2e106b9d8f1e151e7b0451dc6106c394d41fa4821c380b8d504895d4be0712d5604a07e75136838f0023100e93b7919f3a443864100893f1e82bfb146167342c0e4b064a44d31577d144b4423820ab9fb5c5288b47a3e2c080557420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a16da8260f03d210893d659b865e2968e3fb3134d432dd3d7c0ea6226610db7787f19a976cc5974e6b337b00a6b7ecd902305e2f29e9e7a6f9c92a1fe73db71f2510d5a0133e2b28124e55524ae0ae802062fe2424b97b02bf70453e0d3bd61666f70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100903dca3170cfc61cc0c9c404a92172785155c21e64e12c138099e8fe79b4b5f0005958c13fee8470ef5ac520b83e149102303764fbd80f5061cd0e7235e26c9f5c075c3ace73b88e9aded89c032be2498e5f2387f9fea3f43e102b1ac1f4f92729620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b7b5afa36a9a456532aed2b840b189a536630d3466119a1151a003305f4a80c4f2f2da587a82062311f341f516f29c0d023100e52ace1b4f6789251ba17b224398cc5210c9331e02c92116e81f31d9b6dc1110e037e12b79daa972dc3ecfac9c8706b10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306a177a54a5881c12bc9e2c6ae36f4c7791acfeb8af7766aa648eb22ec620a7c538dcbc82d21346f16b3127958a04752602310097dd9547974def1ae9a6166c472dd938c01b8e83c2e90ce485e47acf87176dca10355e9774994b9cd6f4907dc7a318d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302ee93eff0d05f9c2ce606eff8005e6e516fc4e10c720068d2acf2c1a798a525258c231edb1f0f3d9607c39340e129975023100ee4b07636159bcd1f324cd952a413048c68e68b281ea3af021519ce408b8429141813f786499746c7f761264eb84f4d20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303f08c3a42da89ae70d0b5a99a26e059ba72acb339a022222b09d1534bda254d01082b098e2d55b98232bede40fc9f45d023100c46e25dca6f99c1d8d38bf5a0a8dc2f775a438c476fca2e773115742123fca3f84fe36ae97600a26ee68d4bcd771b0930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301825f954a41f510d7b62e4d251b50f6a31a64308195e76f695c83d82965606b98274f0bdfd295c6d6fa5562db8e60977023100cdeed860de97269b28c8b2bb7faab2e2d8825f8479f2788ba589b34684e7944e0abf5d8d43cdf0709b37db661e44a96a0302047c435bb50067306502301b246fc471d02a5f553d3da590dc080a32b2b844861b1b90de26252cdaa1f6ac205d94cf7efb058210402aaf5da17471023100e9751a31c8324958cc0c79c8529c9427bec03da5cb8b26c7cf49a22791df2698e9d64a515e99cf665f27228a979d75870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b83e46b62715e30bf24b7015f9043beacaf3f6c0b233cabd164c3c95705bd7e11ce77cfd9a5dbda2f1ca163aa9dcde5702307e0c9a348610eae368b65ae97964e246875695b353fd11b36eadff63317e7a38cd195974036a303fb4e58dcf8d8727580302047c435bb50067306502302f96896d96b312fe8f3aea8f4a56d5c28a11c63438eead759c5314e600d497f51f5aa721327ad81ddf8f4f6c88614cff023100ad1c827f12a23a1f62385b88f71a8728efbe81517ce137fc4dacd95d2942047a5f84a92a209566c44f80ee6065c2b0450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023021aff48c5464cf3286e12172088da9aca14abbeaab64da6ea53c9080fa27d97cb572cad5f986efeeba249f5167b4736e023100d2782941972d7b6f7fe9b1cba67d7e92f26a4356c26a03c6db9bf85a08e564ba0d1c16dead9449b4e62dfa635d0168980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023079348a6126f07da0f211846440f72b50a9593916a502f94d2aae8fb634c08655132745d023e65b410e8114b8d04639e50230317d248f3a9cfaeb7f69ef873e43e9648a70f0aac03c08ff2ad94b58c1fcec4be4fc1711c698faddb26d93ce8846aa7e0302047c435bb500673065023100e14464fbc87571a3605f280358d2fc9a02733ebdf7b584592c5ee7819f4a5ef92a43668b65c23ea4075aa47b288c8ac602301759a026090d6c04d555fc9cb1de07a8b9d52d7ee0f7dd0db70fb465d1cbbfdafac1dc9fb949d4f5fb72ca9180916fd80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023044ce84e003cf4ad533e6b597506abf1df77bed00f33fdd05850ff28135a684060a08b207d463f52fa1336c81db96bc3e023100bd39e191b091bc2d060f107effc5338d4a8d530756c634f801b80ba5d51a7af39d69e9c2490b0861cf9a2aea04228eeb0302047c435bb500673065023100a9343af5cc428ecece898733d0baa5a060782b8ad1a40c9012a5fb7de3da810d6a6f7d3297b3c927ea085c6bd4a4f5c3023007764fcc5ed06960c4f12bed11db6071c1deca3cb85fb499a91918d1acfbd5749167a01caaa54acbe1fd8fe96542439c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305450774e7c8336f6b83696c44b729e4a3563e8448613c3627ab453eb1ccb8e4a4958e2080c319ffa7edd674bde0065da023100f7e8dc258ed6ce23b196ff7fb59801aee3213d9d04fff1ae8f01595fcc56ed130b3da5316e917706e9402fde3916ad7c0302047c435bb50066306402300784334f256cac4b2d14c0737fd8de02d123532e53640844df1c4cc3ef60e933cacdf1f9e76b2e8b672cccb84e6ecf3302303e034a2a25c20b16a747d79605da9663207fafb6aabc17b78221030e2a5d123262e48d888d9179f01f405429bf0765e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023070aad86235f8368c19a7714c6717afb202574303e2ffd936bc11ffad070d90edcb01da35f73e522d86c55e0c7f65cb87023100f281a89bad41b09173492f7e3e8c2fd472e7db1951255978a408d57b3ecde1ea4f12a0321056d6a7d66e7ddce9a471ae0302047c435bb500673065023100cd112fb4131ef1f72859d51a325506c03d7ef6a80becabd6a29bb7e008fbd32d86137229515bedf75b22fd2be4872bf902303dfed62ee245a1524f006b7a0bd5e0b596c1ddcfd2c5c4dd7bc16ef66a03b77090a56443891fdc69f106dbd1a38dc7550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023019c531b0feb9a0eaae01eff4cbb9ab38f940ff4be0ec28185a6eb3e9ee308ce858201d7a9de089c6ab0e443a548ce22f023100c7dd0a2ecd98e942da939a542b4f183205f44c3258556505cc0d9e761bc0fbc6dbe2a75c3787daf6af114922f7cc50a70302047c435bb500673065023100dda25b23fa9d224c5d211c69e8425bd274d608bcfefe869cbc8bb28489ba1e82e455acd0f44c8c0f4482bedca8b9b7b802303dd4b5a8469964f2f3ee782a1e2e483ba9a92745211e1d53123730c4e9f59eebe20d57c42aa9415c0c4a58e476910f7d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023045dcb86c42d598027f784a55de22d72f0c342579452b0377d4589541f5d3a1ea31d7f5c830fc25fb42eef945f624af3902303b4bdf21404230018554f26d9007d30e31777508bee7ddd37e0773b2d23f2371e98e2af71c06f4221f8654d0873c43610302047c435bb500673065023100b0b4da0515f1b91be25ed764dd56cff9e38622db6ac9063e63b67e7389694f29421640dcb0ad5a634972e1eb44200adc02307cce1f09d4afa62e99319d3bf3021f7cc3a08989129e8318cc7ecf3119179dec2b5b0be71b14fec6b3796b27a0cbcf580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008225eba1807aa8233824aa329b345294a708be01302408c2002fb65ef1f9a96256f66631f15de18b07479750424669000230685513810a096a459c375370d062f36a8d81ac2673d2d0e8655e7e519d3f63cf19d7850e47f47e3b2b565f792e34398e0302047c435bb500673065023100f6f551baff6293346b725af750866e0abe7aa049ee47ed36253939aa8d4b80600d0cbc1a6864dbe2dddeffcb6964ac5902302a18b521c2e0f08112e8a9b93128a3562046e9bb296229b1cd1554b13d874580df8653a61ca383609754ff4b6ffa486a0302047c435bb500673065023100eb7fc5d092e6393f700b3cf45909a3e9c8ca1968d865a0f2bdf74fe29cececb6340f76dcc985efe348efe248d9c3f50302301f7f1820d714e0ecaf12b5d7b16d021b307fccd3667ede66493aff849cebab3d56d0122025c2810090e6758b05d742320302047c435bb5006730650230033d8b4389c0ac22b70592ad194d049d57d6084e68accb2b66ed5446981d1bdca0b24b7f03c072bf6ab0804e0e127ab6023100ed29ec1388ef2b21609ce502a349844b93d7e623fae023f9011415be3562030e7cf42db34822265373c65c6c314ef6600302047c435bb500673065023100cff287c2221661471c06634c05c881c7e4cd98c183d138e32478e70cbf5f15e21e1d2a7c73227ba3c72189561512fc1c0230097c914a8fc96795986dc8f118d9a43b13f4e43e532901dcc978314879867999d54413fd95260affc5fd595ad3e4063d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100aee3883453964da6eb056ea1629875f03a82d50600fc6873ce335dac062b6ed9497f6300019030794666710fbe5eda8202307d7a5cc1c21cc9d7ec8455c07220790a92a7e899f3fa1c0ab5e3db25c72b48cd7c4171edb99dd33b714ac8a0b498a5b80302047c435bb500683066023100c7ebbfa164523c668baadb5d4f18209164216b5731ddf49ae9bd9d0494aa3c803be75ccf6e84b7c57ab656f27f2c00e4023100985659e05f635dc4118b3da4949a766467e478ed6f4523e18aa40dd5f1a76f62dcf69dc84351097f580cb56e3b56c5aa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023010adfd755d4d7ad974a72fc2c9499a73a6b5f056e8c9a15beea7d6928b35e0979fa574b7c9840687a76651b705d4ebbd023100e21fd863bbccdefbad988571f3542bc3367709f72ca4f8aaaf33f27258156a51cad619af268ba55cd160d8fcf1b138550302047c435bb500673065023100bd7d11000e7cd3ffe8035eaa257db11084050d306df823ff1fe2b8e71f4239d037d34daa9c9f2ba0940bd5154c6643a2023026765432d549af9a9305fec30849ed22a77a8aa83380fb15aa7166291c1b4f3214fe5e7546ecc8ed85aba611c185fa380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230365c814d71bbe46c31bc6677836f676e48117872e047cf05b9f573feca6c3b5a9b2f332556eddd7500e1bca1ada8f1b702310094ed5fc3a3f5bb04e720a739c5f8f4b63862d8e77d8d60136f2bb96634f5e02eeb5e1d8cd7a8c98dbd37f26917f97eac0302047c435bb500663064023038f315e310f35c9cc40551be4abc8e28f182f61a76cfd17c5a22aa6e49eb37a722857384aefd7fa6b3349bc364e853470230206cad0dafbd52cf92eb8c532e4722b264da9395c7b221722c5cf9719d68a3317464c6b6b974c52821652656a60adaf60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008e082d511e56f912c3aed108abea31fc563fb619864c7c631812e4a6d7cf80ccff77b949915f9469b07bd849a45bfb8802306c093503eae4aec9937f3e7d706d93dd95a64a5d3dbf86ddf79fb64aff39175318a9a004ad0baeabb95df75a90b5c32c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304b1a5d8133a5fb93dabc37b9ae117dca90edf3c893e5b55f36490ee38a56ac80fead30d11cec84248405b0c8be20505f023100ed2a2516a4b0254c061cad6fa91a3355e2635cdd7e2b813a55822fdfa35483fe98eff514f8a365d205599b3ad56cbc5d0302047c435bb500683066023100a30a22f635a3de8e6fc783d38cda7746fb8edd4e6593b4a641f52cde0f35c79330b33657fa84e584daf3e6ec35346af1023100834889d8c31dd4d8e93fb7f938747952292246db2155e713d6ef087d2794fbb863f96e43c801aa43dc26cdd4168e7b480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307cd590bb17af2ddf001512f44da1bc9cfa362d28341fe8a54aa282b25549048c325ec9e60c608567597f66db2888d3b6023100e80c9f52dae2b7064077c08d94aee93b17182978c43d6895c64e835c6048df36196fefca31088e9cddc6d8f889c5fbc40302047c435bb50067306502310084b7ca51f2f457a706c1df353d2ae2b0433d63631ba26e24968644907652e525bd82cc874c70034b20c32a7f4ddd9c1a02304fbfb2e2aafb835f0d1f2e585a181ef5a793a9b6a2faa8daa263c179d97b0b7a686c28f5d279c454b5eecd8cdb966ea70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009d5bcb20b9e1016105ea49bea00a141dc872628d9bc9c08b77686d799a63df29ee96d201c49942e0af15a6f0ca1eec350231009226eb326c63f41f4c768d7f59a6c41d5f5b7d42d55af04eef6420a2696c075e19c53cf1ffa663d296234ed4cfac8b6b0302047c435bb50066306402307f5b7f61c4572486f620d388ae5c665aead8f147d00bc2f56866e0ab1041e3e671bcb3dc36ef58cb1920ddbff3ccfcae02304cee2a1c8b1db6f39339b96c47c4cc52272b0ad2a6bb0631a198be65ebc01fe3937d92f1129e9ff31e9bc5ca34bee48d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230215215ae6d82af0989b91f9951270ff4a6008d747f45f4d12c160a3cf27ce0cbe76f5e29ff1384c592ac1ebac051c62c0231008a940d7a196ca21a9ee4f3944b4d21888e4f77fd3789d3efbeb557febbf074eba0ba2c8958c9df01bbe367c609f145840302047c435bb500683066023100ceb9e4abd06844a10196211a35d2faf85d37efebc11d77cb342f65eb543104eeb34069804adaf3073ae696e44be9821c023100a3499e8936a00b16bf8e2bda187abed0047d3eddac3aa7fadd092945fc2623c1f6380f612b3f8556a5c5c51e9a8f6d5b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cc9ab4fc986edf9e5403f572256c65d48d0d3c9a977cd224c729d00b15c94fa522d42c8ec7ea3a62f0d62904f770e586023030d4bc535279347466664f5a1157b1e68f0e7502f60f92f343eef23958b6c647c2de3b7704c41ebae756d6ceba0c45450302047c435bb50066306402305d911a4fae11c11609cb29ffa9e59d50b85d9de981dc829d56b50b29a16e7096ee7e6d26a7faca79d6ea5038fc72a13d023000be6f31c49fc6c0020d75d7290d4438dcc8747509c85c51b6c5e1c02e08001376653a1ecaf770ce41f9c4c278a54b210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d4ee3a19c8e34ebdb8a753e1b56017fc3c4900af92ff2654b558fc03650b32b7a89f1fab2afa3b04f884008ddc88b9850230275840eb79349fbeba1c8f49ec3b49c9eb14e8fdd2a4522bac544634dd685888be52ee844f9a7d8d4e26684ce537a4510302047c435bb5006730650231009d7a48853871ce6169cd84fa4f8a6916ff9d9f7ea93d0a1f1c49f543d080a42259231b5df24f9f7f78a1b7f103e835230230228e315efb82245e61bcca0f385e932049e478c477588f5c3ae98b1ace5b876cf0841d1f171f57a26d05bd08405bb6d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bd1919baca67114117e6586f7bc03fa39d944389d13dfd17cc97b3166d6aaa16e700f24295a7faaa70f5ca68dce5fca8023054d1ea86847220422f9e474c94bb8ddc7b6fde1cd2a259e7c36126407ae1f41ecfdba8e246aa3980db38b6ca0a8fefd90302047c435bb500683066023100f112f40d91035cd61300af4ab81787078fa51cfbc472b5302852db820214bed37c6ce7ff5372798d7fed11e85d241883023100b00e157dc3e73a1c373acd77a08e8082a1d5bd4db836d168edf8f30f7577a193527201f586f096ea0427878b5728da810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230021aafdd75bee583bb9dcd1b8935363be2cbc7b1e7b07d5117554e26b3b3be862a2e42ea6c24a75e475931f90a92d980023100d03e08378e5a69815fcf9d28abce6d62fc6fc4911b6edc892f8f8e0b45bd5a1710fe8de9b48c6d3f4cb474815ebffcaf0302047c435bb500673065023100c2583d422f7f10afbaa927588ac1e6d3e2a783375a5060dc33c4761474751ef1a48056230b9c4f4d8763b647cab9e5d602303934972738e31fe3fe5ef28191881281fb443e1f7b1845850dc1963874a1307ad6843e9d020a8ecc7c65ce1e08b2b69e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f96ec075d0bc2ff4dc1f716365cc7d58663ae2befd2decd24b9187df52c227f09044537511196e79aaa1e68483900398023100ba22f2940a2425197938a4dce0dec84f8e3dcd5c9ad9d5da7aefb6026e26ca68a5d2bc28c3fd3e66bf072f2895f761bc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023001ced1a169385c4bffb2a8f4eed1448f31919d262e13f210fede9c3fa7c713a046501b57cff5158fd5e13eeef48df9a9023024c2d12a592bfed12e0645966369742a6196d8ef230c515fddc273cc538bd06b6245028b6794a10ed80a85dfe46bdeed0302047c435bb500683066023100a315096b0539c70c322064b46a1665f3fa04e9d4d7c7dc0fe3d3c45661353bedc235454785c9b0a9a198fcefc7e38004023100c6105da28e538556f9f100830b065a71f577e4ce6ba7e806d718fb08ea2a91ae183c918c13220ba219ad12d63e7b3cc90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300a0e8f2e956337eb51c935c9df6c3e03906d1c24753570876ad513c583da041a08027752d41dd5fdcb4df0c3f9db3757023100e2320d3de49e6fb0ec637c5762f121ae0dbb42e939c78dbb6c60659db1145ac61d28be0458e5b5adeb90447f416d12120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230475c945661ba7feb354d30323f019f7ed0be1965742235fbd1c4d610b4524b815eac253b889ef503a1ed3650c04d308b023100f95705d445e5cbcc76d7e50fad96c5c02e8e01e2655f446c683b882b62b59a8b931f76f54a5c2fd57053d3608b7c57d30302047c435bb5006630640230247448a018b8ad1591bf4b6f25009237b56c2961b84cc996e2d741b6efe5be213433aa83ec6be9a1fa700c89260a39e002301f311bd09acdb74c62a478ad5bae85828dc8449f2a89892b86ceb992a9453fa94c542649bea4250f3e8005d5d118cfcd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d2881b9df27260d1d76004a29a4e52b404cf0ec45dc6866000fc13d2c014e10528a429045dcb68a6c263a81e1d29787702305972234619aa1dcad45aa3011a4488b1a65034b845a7cf62ef0f5d04ef4aa0ed4c968a563d96e11e80c0c6503a8fd34b0302047c435bb5006830660231008dc1295060919c92d2bf6541b6f74c87eedcd004bdae610374ebcc30c691169e55e7f3291d5329138ca54137ee7815d6023100d543ca836c8816945d3800cc18e5517612fd7544373c10975816d960bcd20e55abef24cd8ef51a46480af7d135d75ac60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b55f47ef8d18d32992a0f3651a106e3954960369168f71539c26a4f421f9b03aa9fadd72369e45828e17853b44e3724f023100fa9bb285ca37ea6ce29db6233fd33cc4652715ffb49d87b90d2dca21827b654619375553d5e5efcc0c8d37a38cc896700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307aace89f033266d367ab44bbc8272a38d3f0ffa3d8f04170b6fed32cc420151b8c9e4a59d3b453e99c14aa8564c4fdd8023100c77750b5eaf5824d18166a6aa1f344dd72a1dc0f3ce89bc73bba9f5689370a75e25b169300a120a5cffd4457c763685b0302047c435bb500673065023100e9f729a7c0afb890301f6d731a892b543f1d6a68345d08460fd1205eb1225a3f4813b0f5869fdce9e6eb24bb730193db023069ffc76990ec343649bcb58e79b128657fe18e28864f114dc342f7fd14edfa6f8eb3542c97c77e8ea472c73f1331f1d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023033273c4599fbc9825e5986f4c8427b6d73318da927a06b6f81716d6e1748804ed9d63884ddc5fd6eb87f4507281360cc023100f192f163307cb03385c859ca788a10c746499011dfaa5e0f2d9bc439aac428943280853dd6866b80a5838c18a8a8ff4c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304f723cab7383ac7b30e46b3de236a6b13ef9835a1be6e0d6bea70c6da2265f256e69ebbdaa97a23972b0a5e0077b1c96023100e0a5b42c753f9ef2fe6e1a199860e300b21ebc011f5935bccb1d788e35059410fdeb5a0b3ace3155e64b4f6e27858aa50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023014c9de88958c618b90ca6b6eef9343775f27de3db0595b095e8fcb710cba59a78cd07128dc65e6c36db60a7acaaa7446023100964f7e9eaec6b1daf20ad3d0c95de7e433b5dfe2830ed7d7824f56766cd3ae89612f0a23713ee27a9b1d38acecb570080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2608a33028c7b78f4bb3448a23859fc8629c3f6e6b2e69c867e5e4f9802ec7530099b841a7377848811c888088e867a023020ee2cc2a76e7da0c29415721cda9dcc249a801a5eb6c3f784a459548e195db6ae031093e11affe42f9e45d886aabe090302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302ed0c1fd22e50e3905c945b136eda2489eb74f1cb846c9ac91bcbe466824ed3d7cdb87b16647fb670fba70a9a8710ff6023100eeea8c2f7c25adcb6b1316e80fa69553eabf946908a2be51ff0aad55765693ec1f2c58daaecbe8b78d0e619c284f4fbf0302047c435bb5006630640230204b6cc63ee8e0eb9194784347fc691a0592f372e96c1a5a8ace8ede95bb3fffaf298f46736e05718e73b1f348ef65620230241537cb0fbf9bbfd9fbccd9ccaaf3a6e19de30d49a514c53df26ee1d1cf427da4aeb040e3636d86bd2debaf0b007d750302047c435bb5006730650230756f9f3e8be525a3a9d5175296b6c48d878dfc532dee44149f4790bfd3206e9d55de9c04e9eaab789d87850a311b2dc5023100d0f0367408408459c956768f9d387e6ab4b64693df9dcc233f1640658eaf137fb7471911a7039656cb4ba20315d58a770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100959dda681cea7e00767c5527edba87eba804cd1df4961071060c9db841988683656e96391b04a46a1a35e9d19e9774f7023100b5b7fc49a2128e6aeb3edb5901d9c6bb8551e593d425c096e1120cbd1843052069479587abb06c704c2360ad61c5ee330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023057e98d482762b64b62ffb13554c038878164b77a98175e0f6c23a020b4479a83876e60bda150550e17a5a12099718fdc023100d598e4e42d86e58716e348051578d08d51687bbffca6445d39d4e60c2cdc5cde1e67bcb8c89a2cf36ed32f2a03d2780d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008eaf415eb7655be4d2e16529d877e4b3fbfadd274fd9c8d8a38197b2e22069440574941f98d879f136bc115362ed5c8e02304ededd39e06dd57dee531c2c36e4e43f6cd5a3b8ab257baa0b94aa5697491847a2da6a3010d18e21c18575be4b704bcf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d63033fff9bee828c8f122f30a2520772e9bfe2b67a540cbdcb019afb6593ae8f79efea92dbe98f2c5cf7bbdedcc36db023100e4d24d2ec8a3d6efd743f9eebbe8bfc999f08c9418a2bb42d69dce15390b81b56fe11e77a7ca4e75f0bf7ec9435fb5f90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e0ac9bf7e6435155fd72c35b48a73ff65b27a924607c10e3fb4836d4aeb2654a36ed9044c9bc8b990f95504e12033e79023018be5ff35d3f035cc2ea9749f682fdffd4a70a11b9c947434661752dc819f9dfcd376d8572833b6b7dd79fd9896030630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230514096225eed0e2c1887edae52a2379e8a52f0136159e908c7860a929dd748693b19f5687750f04caa03fbf7cd5f418a023100b4ae3bc3018eb359b75291df24b548b585c4ed88431f7d940301f7204131062fd51bea251073d4460409e41a66217fb40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009a8d7e36fe2b17a7866f6f8770bd654812eb7c159270d1ff26caeccbeae7f60b97fe2b44bf14f01bac19f2d6ff4d2a87023067ba84ab86d33273ddda0f59b8480ce2ad0199b20b5c776fb2d150122953a7d7ca87cf35a21de7df417ea32ebe79dbfd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306746845759951f623bae9fe02c351caacd885aea7edac45af60f2fe548c5d393829376f7e4df9af5c6f11aa5e50f62b602302a110abd41a2c6dd6f040182cc4f636ac547077f8df6f6232115222e32aa849322c2326cdb21bd0d9997143ab8d5788f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bcd1faf0c194707af90569abea9f0074c17876f8aa613bb46bab4391fac780e4d0b28842cc46bf6b5dff822cc1fa2eb502302d85545eb4345329933945fe39dbea145ad6d92a9f3ff1bee11a1b364ee326f007dde2b15c7bb1dca1796caa12bfb94d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cdfdb26f577d076824986b32a709f4bbfd129593a2bafa8d72f98a9015e9ce50fdefdd8f6f6eac9ff1ecd3c5311b96f4023054481f07e8e55e2beff3732423dccfd30f03f6187bbd12d9c0d14065a8950ee0e8fca84490d14d7c55b09718d3bfeda70302047c435bb500673065023100a1c34bc29b4b5efa49e7de55bb3b577eef1c39bad46e51072c2d60c7d2e323ec3071254f107bb16e389450869048bbca0230581c989670ece330fb380bf0f82d32f0419172d548fd11d2237843cbc344d31c181b6756328a11d8f94fa13f55a3f6080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300c714f86a799f0b029a09467f77353fff37700a79e046bbb46824c51b607b39fcb401388f1d308355579c4427bc6dd2f023100a7311a7b3cc1f36931fab690bada9183f124f6a3760cbae52bfeb23c96c1a1cd6b33eaa9b029ec7240d149a2e99eafad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d2bb250c437eb60735daf9becf14d0b41d5d65d6601fd8fd9202448173da8cdb1976e0f6cc1586bd97c62d9fb84c53e2023100a3d27a04cfd7e0660e0af93daac18624815d57db04dacfdc38a431e178c230769ecf512ccfb74661ca9341a47c146c2c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f75054de47cac91f065c521f0451453a90dc40759b96831b4708f4fa4041be8fb3e40c81d52f958fa2b15251c3fada1d0230308add34f5c4ba01a3facdeb05d5b1b113192f9773fb28e9e093445ea24cb5e955f8408013c4c6ba8b272b3b3beeb8d60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300c0cb4916603415e38e4da560d5bb3e2acb45bab21dec21c7fdc92bb61fb728e50d9576c44e67d6b805885d0a542ca460230712b8b9558a813b913e9add6bf960a43f640d2f0859e289c8d36a7aa9b4722fa66ae4883d19ee16ae21f4f5cf4d50fea0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b220b173a525dfa6f6ce3b9ae4ef5132c3013ef876389f3868b374e7cfb280cd803c211ea8b677eee6793c2561648b33023100fd5d74ca5eb4e2bdf04e9979e374d80a5ec31f392d8799e4876b9504060f6cf70451e75249eee1f3c326facde51fddb10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023057f5ebcc6c5e49706ff60d6e95fb11ee1b040c4253c0df6d05ca9c17393aac9aae5a7bbf7da08693cc8e6526adc87aad02310091efae299ddf407ccb899ef663f4faebeaf335a757491ac92a3952ee666610e2a9841430ce33bdcb57f3091d6e1934eb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305a3c167ae432309e4b5e9f7a91dfa63c525387382bbea54da51333194c5273c149a87213e70c01192c1e55d91ea0063a023074fecaf21117c02d6740d4fa0be05c4b28632a611e185ee13ff2ba2dbfc91c334e6bfc45defcefeda4d2861bba48aa5d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305e4165d5a3bb0128cfef5c7eecf7025c817563f788381dd201b265ba72ec4a9f9fcb767760f8319a380cd3465011be0002307b92647f30345ffdf108f2e7807111f642c65321da88c3aa9300f81de5ec15b2eb9f7659d6441470c91ba5d1983652300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023020cf6047fd72af383a1dd8a4d656468a9d95a7ba83fe005c069143e705504f6d312565680750b0e3682497436d06305f023100ea5833d12a7bc7caf129366dbacce671b0c2e12e57ae108c83e84c337a62823a405d998d1c60f6c75d2cb5923112cab10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304c09319d1726beb85575a39e2131ba178950031ef505a6944ea9dc105c3f49ed184abf46db960d0749f2f8bacbcd96d9023100c08b6e7e5b5cc7d34f84863d1b2ff2e023a0d82ecbedbc97728148c5db996a2fb5baa9e862aa2c8fcc2bd54c0617b9060302047c435bb50066306402302798450da879fe9029046187224b7de728e5852f287f034069fbbb76d629720a1ab559519f05b038ceb08f7fa52ba37502304dfcb25814db179ed65343a707a5060218b709c50c06b6d6341549e16bce5a8a90546350d5ac3619cc9336320b0e4ca40302047c435bb50066306402303997fdddfa83e9dc7619af48757becb8182751212ae0650fc4fe05b14688b5840c949e6e38eb15e7cdab6266c4ca777a023075e9374c7195112f714766498dbe361cdb624e6580f43af5b15d4c5adc19aa7c7e36d8f25666b3120d0664911f5a76480302047c435bb500673065023016182b4a3186d7f5fa6151900e8f3bc46fb5fc9b10016b99d86cce446a73769a673747237304cdfa59477b34ed9fbe83023100a87f18314fb1d409b05f3635c675098be3225683dd104d5ab8a584742c1769ab8573508b78f2c38ff6bf6c97b46f22c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305c0299069feb0564b4965c2c1e281efd918296f04e15f5eb9d5f726f512a7003ff2da2188bd60c7b98fb5cf9baf3a93d023100823037ff1d75d85fbb3954e37f41e60900a5b9428b530e8c7d4bbad967b8dd3d0ca292433c9ad4469e9b560dfccfe6760302047c435bb500683066023100f0138f534a13a253d98659f25fa75395e15d947f59a3423d8caa96f4933451bc75177acece79b6b8eefe7702fe470054023100b9d67322e81c9c86fc50a505f476cc5ebb35c42c9b345f0b32d0713517274753217698d3766e6b31981a53da8151d3b90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310099caa1e76a76f53ad489a960690e220f26d3b9402275ed03ff2047875785639828d7ae041c1d1f2b21c0aa172a2e7f700231008900a2519cbeee3fbed00e09229e70ad6e31aa31a36c5b5fbc3d77e6c3c1f4d205bf055679ed8bf08f4f874afefa66170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e951db7e941df9c0cff71c45d8427b225f7ccb3175d8d93b3d50a5ce827e617a6789bc64a77b9927892e7b17df294533023100fc362a9e1937d41cbda711c6ee31f59186264c0c9ade47762a402d9250e8081a594ecc3a96e2ec24140f63245a40084a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230031a8e42e10b452c02df485623c318bf64235e9356537e91ec4d214f0d4910db15e09e848ee6c3d1dd976d05b5f9d583023100ea8a420b84ad9d84e30adeb05d72b857d2e58c553e3867a3e1affc05bead4da637d83a9949ae738c1e0163f22443557f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303db77bcb03a1cafe5085c7abc51f8cd08f83d4e5d408d5041207e3f7c148cda8223a3c7144f316dcb0292ecce097be740231008b5843cafc8331de0de176b79800679d31a83b34bf50797ae580d9ab5cf7eaab76a3b003dbe0086e60ab39fd499d29980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230452234815a7662dbc5e25f0630320c870d454fc6be54f7b6bf30d9f9293a46a808c7d713035f277943558c84fccbf402023028ffe6c67567f37a207ae09598ee69dc6b5ad143718d4179d20a1f34ccec78790887a464e0ddf10b065af2f00b052c240302047c435bb50067306502305448aef8b3b8eb4fc360729a390b1e9f43a0cd9ed55eddb76a67a3fdc92a2356d88fd218f6986b5794663d9b2fe176f0023100a559f9a065cc794fb8ad294da2fd6a62d5ea877dda509323b9cc64c6d80cb7110213c9add0b271a664fb508584cfee690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023068c398b8aeade65cecd21cf6e8b5aa8bdb141546db52fc91785cc3614a0a7794830494ccb6275849c064a0446ae74e56023100c6e6a4cd6482247e26c9bca1f9238078ee92964c9dd1403af6c005d99e42b51f57d35fe75dad5756ac72a5ee514aa9b20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304968cca4610955d7971a152b9a4b10084533b9d1d0cce675007e450668b4387dcba9145994d479c165587e4187e25136023100869fb5187173d2815f65092e49d8c280509f81edcb62b82f69142a39bdb8c18469ac0a5634d569c6edfe79a9295a22f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e996ed38b0fe5fad15ed1ca995895367ebf1d37bdaafa64bd8ef3ee508caf4a74cd40c8767b42c131be67a4fceacd58a023013a1d37e0354eafacbfebafceeae2d648e2fd3a26de0a1e629e23806a22c47357a7d15e5892af45ded28e94eff06bf080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023021eb86c659e1888d26f9fe00bd0681d772aa6239b01063a98086ef2ad270ff0931e505044d628ae1d887dc2e47bffeda023100d47aa832050708bb82e23012f5a188d3ad12aa6a6550eeda0c636e0a8f8de84b17b43f3b6125fb4a1cb766ee95f1c63e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300dc05f46f311bc5534ae00ae59e23778540779d737a9a1893cf344356ab662d707c260c0df44fa396ed9739290f53fab023100ce3d3e996cf95c896218cead15a31b5b10e78ffaed3839dddb9d9a7540ca3732cb99c4f4d1bddfed5f0c6498fbb88e8c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023040313e994b8ea151007f5687ea6c58cc3906e7dc7e322093b52fac5788b797c4a6d32cf17427d1adbbdcfb02d206e4f002305b0624fd62b58a5abe49415a1b4b178a3187ce477554744bd37db66c1304878a0dc7977614cba4cd5b89aa9415e34ff60302047c435bb500673065023100bfde12e451c65942b6d9a3a075bede0fc82e607e58a5266db387e5a3f08bce01242f3691428da9c46700fb7bdf1c74f202307719e365d470d96bb1f5faeab2ded2c482baaec5d4f0fa8759d27283e6b4a199765c1fb299bda55bbb039f41c606b67c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230542c4d2de84a466bba47de6d0a69518a79d2a6553733617e5aa95c744be490cacf368f4cc192da96fb27825b489362b5023100b23ae6bdac221d80abfaaae886ef54913cebf6a02b72fc0b1b34c30bcadbefc80f7c6755642cfee06b32f58cd91e4d6c0302047c435bb500663064023076184edcb0632c8ce319b811e62887711dfff3b7a899a4d9d8f137fa172f4e8729bc321fad4c85f85d688b8e6ccbefe60230733ca8a743842d70c6e298b52394df3222bb099000cae8287b65c7fce19578310588bd294641bdbc8a54eb76baf2cd260302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230124ffb6798e01b32c6b9fb5f8865f6b5efa77992e23f0812c156db0e99b10bf9747318ad78d60133e2c60b29708eb69502310099808172d2242667a5221ec4abd47f022c60e98c531cac2c03e716a42c8469b0715aa8c08163598265bfe8d83e4888b10302047c435bb500683066023100b7729fef90761acd3974234398082256e3f2e94c40ae205ae1b465f636967dc203b736476ff6ffa70fe02d51481f2a3e023100b7de661d6aee469ef56153147cc77fe95b0fe39d446cbf910698c544b0400c8bacaa286ff55ff7def419d3907dc1d87b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009661b7f5c5aca9895d904c34be480682d71f477488bf3c9bf00a0a7cc0224bd299d7dca008e886a8efffa395bde83ae4023079b051c522c977485278f6d384e4919d5c4997986019308f012dc979c736272609ec49f424ae5127921ff9bef54cc66d0302047c435bb50066306402304764e68e48f836e208996617f7353696f14cc02944ccd78f3faf7d278f7d5dcb4eb6d0294579550042003ac21bf00d99023074402965861924b2789a533d9bc0d53f84557d1998636413c712e5f665fe57272a0ca7295ca60d8e244ad753054c776c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023062eeb7d7234136392d61b83419a0f5a563871352793d709231bd421f87238476a304540ac3f5e61182f82265791610de023100fd4cf86ee6cfbbcf086dce0b1acebe58a9181b618e3a339fb9d4bd7f976cbb8d5a12ef557c1ac801a5cc6fb974dce5980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cfb3e9ec52eb880344259990bd32796f3b43c2b9169e419b797c8db9960429d8c3e6d2a582d74bcc834dea0c8c382c4502305995e5154b81f2d1bdbeb842461dc5dd8621833499680c3a39d706a1c6a421d1e062046e1d307d4da1dc68f8a9eb7ed30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bb8ff3a244f015602dcde535e33fd761c70780909627576589853e210df7ef5e51920986e3d3139ded33ef9121c5856402301a2ac21918d4c426eef66cb01ce2132bc5b491464f0943e69ec8f65d4692f8f26ff35a863e3b1a532601a0a6e450f24c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023074c386d9afaddd859dedb521cbf88f367d48b5253659b1edf5e7dc5f7403f5d1ccccd3d3f864084ce0d00493aead57eb023100c14788641ba76c90c6569ebc6fbed052fb1f8ed0a6174a0eee608ec38caabd7f2ef0c13fe7c8ec3a248c0f235c62b9480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c7719948590da9b9512e5c760127f5a8bee1500dbe4c3606021594874b3d5fb762b444caf2e26f2fe6ade3973e3f2c6a0230766113eaa979de795ea32f9f57799a1acf0f2b9a5eaf4dc75aa776e77f450378f04552e07b697c31d6709812ba8c08b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310083acedab461ec16cc6b74a974a05cae5b420cd66a7a6eaeb2cd83f7d0e2fa2acf0921619ff69868a13f484409be33dc5023100f395fa926c2871db62c8b9f8e02dbc4a37f9ff0e7688f48ea67e117a2cb4bd28aaf880af68645054dfcf8e2a1fe7a9790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301fb14bc6713995dd121e40e333bc23d775fcfb20f294ebbba41e094843bc9d648a60ae71ff3bcf21fdcff50c0382247a023049863d856a95076b22d56674e9a74a72fb316e4736fb6d20715dc6f6239bf895232b489df125f333d22e3b8296a385cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bad16c42048f065a9dd0cf201b4e80509ca528bc20f5c041316b7f3455463e4bb19c69080001514c72102dc4c06f7850023001c4fce47ef14a6e8c841bc68b534d94e64d11f9f77dad67e9f03bced119ed2f266a10dc250f4704c56a88c425d86d540302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023044f83a7868b766bcffdf17a1f2392dbfa618933f3975282e41618eb2a660aff5feea20f22c2722acf66fd8b0eb6a131302304a05dfed31b00765311c94f9eb4efc11f8a7528b021315e78899d049453173bb8bbc8752c606556f182f70c3b46689400302047c435bb500663064023002065f36004c45d2ee88644a206e8863f243eddada7415c47146006c822319b440887b614dfc191477d7ea6b11a477c502307a4b7807300412084d45035fc20302c9c0c56f797b18a27fc5b133bbffeb0bdfa4f31bb3b0c377c263fd61cabf1ad7710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e688237de1fb2b78d368c349842fbd241fc1186c894efd836055673d8c659da329ef3f56aaa05d2cc2e5626a429e5bb8023100e56ae6c018ca1eb7306a64121ad3d90435a558f5f690f36b812649187df54ceda7a861111067d9f061486ba44e586bde0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f49c43e4e9eb63eabdeb0485906ab6671d7c3f6d18e856b1f01f45d7d8cc8f74f38a42004d7f32678f49dc72abb0ff8002310081ac665824b2d9b4dbe456f63eb1b1c065a66f7051b98cf769dba83f7167b28bfcbe2326a7f39112d3d4a5133c9d64250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303c4a0650831ba39329c94f71b0d7009b9adb9d74b0734598c14e18c4a6cf0e92684941f8d324573b801936222ccc4358023100c344c0a2fcff40df14afd03d1c550f01ad963fc942aa669015738dc156c14bbd71942ee7eb7d8dc6d283db358fe673fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023012f17d21ef39945563d634c0dc60a448d1f4e1d911c0c9bb1e91b41b3b5138b1ce18cc1f2927b8ceac62bfb5d2c41f86023100a716e0649fd9c146216fa997f08b38d67c40e898bb634ba1495f0ac0f28ad4e461de7af36d2c7881c2ea41f8aae6bf9e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e22160dfa7485e89ceccac76933753b9c79426257e2d4188074291ce17b54774ef30eb17153779e6e1086dd7ba09a626023100a2f61c2373aab2bc14bf877531e769d69f1b1f1f11406b73697ec2e88aa2108b972d801dec2610c62b8d671636b6bf7b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b5bff2736667e125e33d3e54de73f44ee150d6818063e58bcf06ecda74ba426cbd50828bb9eb2c028dd47b76609282e902310086adc07aa882a0a23c209c0adb0808c8d7ea816a4c7cc0e1efab3ca296d718695f611f7c4dabeab38026915c156645350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301734e8e85eaf6f63f146703b78511b41a34bcd4263adaf2d4201f66b3759f5d5c21f3a3c32b4bd196463f7e22103616a0230628249bad6a0eae965118f31e82983d23eab362a79e3eafca2a084e4e12b9dd7dc309022b5633976d026730eac365e0f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a404c82d8948a0a87b139ee10be6dfd40ea56f01c723984234d34209b8d7ab3cfb78ffb3f8398c65c53684d86b7e70ed023046b5a84d04cfae5f3facd46022f3813a6581f8414cde3ea85e1fd7615e7267baf2a5c7c5811e0029d90d6c46119db7150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301860643818184c2ed075da84daa23fbb43bee6feaf0dd7383692fb119d0fbfcde31aad4ba09640ae60813b2de8ef570d023100c87e0d912fc08ac77dddd97c42e5bcd28a42382e19328075510c7eab409a116aa68be9594c734c1ed5d7019051403cfa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023011bfd90b66493173ffa71f6520c54375e36cad3d1c5875690bbd455b2148d22b4b05a1cc196a8ba655192f04dc6e96d802306e76b539a86811795dabd75fc6926315b35394390702aa55bf3180cdb74982d6440bd0b9f048fec69827527076b085880302047c435bb500683066023100bd117feab8ab2d103a1191c5751b6ec9d45a8689770925a8fbc5571af4631ef376b889ce121350b45cdee1b168bf5b0c023100a5a1e81c92c24225636f12847e9952243ec1266eabb40e7eb14db412a6b7925e9e70c00b30101415563ed05cc20036e60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100af854ff1239d15bf043aec38f0bf2e8a63d3a48e629c549da23223a0acc4caad7c2026c677efda02a973ab9a8d709f460230747e67318b5c68c5316d2f94ee17d05c46197ba6ad981c9f55db64f0663a954b9e6494fb632543df810ce878df89f1520302047c435bb50066306402305d1019e6d0f2f6661dd0d0b9ff05ffa6520093733e731777d7e0bed02a62e9bd26d9377517217700b9fd50621fcdf715023045724c44bcd4f56a04f7453387352ae692a63fb87324a4e7daa06ad0a46a6fcece87717e4660c2de6afc6caf2ccdefe80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303c6599108ba4b10694d7667de296b782120e7b8cd6ed68e55f6c84b7ee3fcb24cb2ef224646bf8d009038f784e61a915023012efc118e63a0e93f25f748d87d9e135aad0158489fadeeee9a32f394fafc318caafa0f46d8e49f73866795cd5fc6d170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230338b5084e4855d9910d2ac54b16f27075562b93db442bcf017800f719e641b852659b470aabc0529dea115b02f1c222602307a9365987ff7cf3ad0c317d397b77b71109966af66d971cdbc9489dcf7939de7eef2e6ddfb47befc1362347647926d3e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023043e29444c51c6a07177d3e17759b455cd85aed3b45aee3304a07077930457e784a4d94c821d38d8e5ba0fc9b16f76453023100d542c084d96abec355fc01cffec3528e2f12084a076f7a393ccbaf87719396eaa555f9579c5978b114febddad4039c520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230573386436f2c563ce91f1828d6c4728107407e19284ac56995983df59ba282c8802ca3b56442a955e37182c544d40832023005853a6df03acdc6c9d412b27229d3212150693bac97065ffb77453f4803a09a1e29f2571bb515fc2e249b84544ec3ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023061f93cfb4dabd135d7a86affa665c5622c962f589c6860b82ff6c61517ef686243e993ca875fea8b53b10a262b072fba023100f21ff87c4659345d199947bc9917126ac63cf398357f6f7da985404fdc33445723886e77bf9f24a0d36a5b1ed89a2ae60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100819c6b08429447c1e57054919988e9fef7cdafbbb469a17ed4cc589ed8ab0919e8b324b1814e1983c411365b9003934602300ccfe993d870b2bf9dc4ebf62c5702fbb65482ba990d6fbfe51b4d3d538f11ee6c3b27b186629c62e9797319f81001260302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304b2730c5e397d11050985a19d682c168c401bb7f4089120d477ba33214dddcc6f0e2745ac5121c3d5c0fb3322c4ddd97023100de813ec797b56a2b1e7a7f93c96f62e370abf948e943ef0b35cbca16ebff2def267b0b1e671d33d18da042df16791f5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bc011d4d166a068e6001f159753499b933d30488cf18e5cf63d8d6bbd64f9adaf16789248241fa77fdfdfa84ad9988a5023001955447e0153ea6315ea36b5024e6b7a0b5b63ca447ad1b05d677cf333ac8e9ec714812b38a9d2e018b84d1d22fb7060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230392df90e6ba6fe8ae621be45ca258df4c60444cac5fa31c3ae6b30c2aa464657e17ddc8db02f99e5615f20415da804a1023076d3f929e5f96e74eb70d9c676211a5f6d8913e3253f349236c2e83c2ea0dc8f3dc6c3ab6545fe4763a5942dcca4f5890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023067070ff12ca4a48658b0e995704f0ceef092191b8eb65167dba233182994473f8d79a8652a9b7fcbccee35caf34cd15002300463ef84d07b177527d962ab1aed88b2c04920a8627a08054cdff8034098f2a4cc654e437dfd2e59a7012b1de5c949240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100910bd9d87ca86f59ab7989db6e19dc3e1250c30ed15c98a3e95fd69b202b55b002ef4b08a19539a39c171ea27c588b5b023100d6e339490e4bc1792df3270441a1bfa63be95f0422fa6eaa75dc5a1979181898a856cbff5409f81797188e8a2a83dee00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100be29a7b704d4f8fac6406591871dc2accf03c883578c173124869b2e5e883914c4468b7331780581581ff0e55d545d2b02301c4e11bdd0117c0c524c7182cbebeacbd8e59239b34e8f66e0ebc1e0385788dd2162623e6faece3ad2043acd5a1efa8c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023044338d9a4d34c4bab4489ff372f362194de0c16a00940be367406955017ce2c6a2b41a26fc08474b1f5373bc9c85eb4f023100d6b24d8b64ae0abe09dd325240c26131afa94aa79803ed940744ccf19d81e019da3386a6e72f960e797d0adafafb36730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bb3e23465c96911500c06b77ae67a8574811f4a9c42b785c233cda6b4d1d16fba8a3fb220b438e34483ffb6bc99ef45f02301085f89ec977519a6c1379eb2902d22c05da31e493cd212b86a9981c704cebea2cc8a0b7ce160c01f4b83e5032e9396b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023058eadd4272ea212f352086a3677b70d6cf412b8bad3f7b17ddd9e54d44470238852ce6d59c45c591afb4b585aa2a230b023039a9d320797a71db141512c5069682e01126a16c6b025633cf07d37090dab2739a5c46a8703bbcd8a78244e9a708d07f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c42d73eabb08523d6fcc246fb6b62ae1858319f1c5d4909674d9077a6fad44e790cea88a733f10ca5a8c9c5cf14fde980230068f2c07d13a145b0958be62a1dba08e1f8b195955eca503169a422916ffc95f03dc7326d353d0d82c1d0e3f281ef7ba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023037fb5f17ddf837eafc187061b57ad65bfa432f96a899de649f502ace3d32446a76a34966eb309698aa7f04b7f1fb58b1023100e22bdc0e30ffa250ef60cf7dbf4ff8ad4d665c77cd92b1d55e71d6ac8e443f62403190a168711a6d8303bd7af45e7edb0302047c435bb500683066023100f604e80914e6da24b012a4138efe1f6048bf8e6a38feb2e52a2a45ec05f62e6466e7a59d5ebb2b6799bafbbf49c3ae670231008b72a7710f7b285e1f58ad6f3091fdb7945ce9d41061ca390bd60d3046e3c60c961b98a2e1f031a2e9b80d9e15b358fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f51d7228aebdefa563bc5adaf88601b668a6b125bd1d754ca23d71945fba3d608ecb284082a9705006b5a3cc0227e15302303024a7b2c473b3299e12d25209a1f897a13d4d713934ee072d795c66c1fb4554bf867811b62384cde309ba7f5ec105700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c59e100fa9fe9468ee6c627879f3f47a6c3f47284c53c427bc2fa2424073fc58e57eeb95cf554d4f5c3ea60815c3f8d3023100cc45074f16ca8e85ebd3a4a20273d129b8863c1803caecc16c16ca158e7a93b9705488dbd2fcaadb614bf232e5e943c00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ecb00f483b88c6aac8e0f5ef01a108a8b7c9c958d8c9c044c4f9fcf0a14a090037db8c3d955f9a311a6c8a7ba468ef71023100b0804a9cab7d6c2f9157cf5f366c44132b5b6c6a13b7ea33857b31a1923a76431938d070705cb7e8981ce6bc6c9bcae00302047c435bb500673065023100f41f2ff467d18a22a23fa2e0a8e40234de7b43cdcdeb2da4f6b389370effec5334817276148b2cd910e463fa7ccaa85f023063ec2e1bab0360341e4f0ecca91731f1e0b8cdd54b2a17390804901463ed07122d20457fc88632e7d1342f2d951029570302047c435bb5006730650230151fb1d9e4efb15f8d85d11e4d83cbe27b0da95099767b034d3fdab42b847bae6695f592f22186dfe49c6e656432fd9d0231008423ff3c6799b2e7983b09ab28b53dd7f32247e61e7cf570c5d5de4531261945734d3dcf1dde0aed0efa49ccadfccb3a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d6ffdf34ed11e0895729041cf1627692902df7c11590dc810378eaa14e680cae3bc8f2d75554cbbee75d72389e4f7486023100d2b83232a8e688e7e6db82dadfd322dc97ab799222916429e727b3f38dca6048fe0cb93384764b30b051881dec77914e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023045e982084848d63c13ff8646073e1d0ae2cef5ee5012579d189ba60d24ca4401f9419153f04f7a8d14e215a039a2d6fa02305584f39c8f559e58ab1d33a550a59fb44c54997e04b7dfc585b2ec639802c8b12c44797a90dc74e2bbd42fb6beb7df6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230447eff5afee9514a4d3313d1eb368c4d83550b890e51a36288cc01d38442775f6a3d1aa88e3a5bce9c962ae2f88d2aaa023100a31ab51649376c5ef9eb198a8f03a45192a73cc807fef4f2090850729396617c4743bbb651d598838b5373433ab2a8be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a4f0f91cd0852972bbfd1ab6d6825d7108fb107c7a7dfcda9e685bd3e049b936cc93df18334d8ad41ffcb06ff6fe0851023064e347107b3841634370d30ccdc1eaa814df007d0f6f6546f834d71034eca8eff69537b99c8bccb389eacd710cf0cb620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023035fa6bb8be59eacb03f947c89ccc068991f121644e8f493f5c8f75bdd46c12fa9aa200c30247fa5fc5ae323a2ab5c1ed023100fe3f7bae518d25c47ba58fef2d8955e30689e946e959a35b2c9f0e15cb7d36bc253344623b96a72df28acb82e180575d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306553fe100ea4d8f6aed7472efc6cc1a21c949f84c2304ed1d10720312205c1a6c44efa63e68c51dc4f99430c111d7459023047ba0b57110910015618717f332c8f56869ccd4c81a16dac0780bc8b8ae37478f6c81c96e2ac1f4674cf36c1e908fde00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b0d607193ec8754b17917f75d64397da2201b0f4614241b93413524aed1a190cf6fc2c8d7bb75bf0c25928a76e08c78b02300f759c366f285bb42daca29a7cf6471d9c55a214d69127bf91c5ebab2d3b9779900a3fcab6676dd345ac377dd8d9282e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100828a7e14c26a07df8d8a18c976bd707784d9fd3026a60a44c68526fd732fe3d090fee295cb938a19f0057bbbc243a2a6023100e6b8a0a7b83b64979563c3647b14b00e06becd6be8ae5ca82df18cd390061303e14359d142125c3e649634f86f83fdd40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310094508e1b691ea7a55d1910edceaaed9d90355056eefded1e9e10333e4c03ca280ea68224b8adee424893589a1883112e023100a82e4140341c5e3ee1cad27e55c3012fa5f53a32b561de759cbc56ca2d9f3cb06fe91467611e0a326d7bb458805dc3fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230773251d2253abf616697881511e546f38d667eb52662c6b78004d8121069b0ed0ca1356bb37f8181cdec7f82e4d430d70230105992f1c4b3c85709ea28e3c9996e8a4c8a504128f219f43be29d0c28950833f60665cedd941af6d7408b6d8a9547330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230543acaeb84243aecf973bba67ef2a5620480a9006bc54431744a458a551b93c595b078491d03a83fa189242f1a4d4ddc023100b965ba7bc08d612b78a965bc14a0b95e624a29ea00fe8be9eff97068405452ca602e17525155bdb2d823c14136e2029e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305e14cf7ad159156cbf365df1446792626325df2c0c74daa6b130eb367cf1fbdf6fcdc8883c70d518354e34c8c55ecb62023100b89eb36de1298c30a078da2333e639832773e74dc65f3f92b6c8292c9ab91f0172c132b7aabcb32da455da1d9e56b3ee0302047c435bb500673065023032fb5db1883d58184a540f51ea5e28dc7d27d95e7b8acd2210a66fdf62f029820e4ec4b0f83252b66d02a1342b9f216c023100be0d56833d5f05e36f8e6e7b9d24ffb842946a10c57597ff3a8f0fa7d8a547178922e11a175b12bdedc3c718a17b800a0302047c435bb50067306502304e522a5dfb491b1d8ff5ac8b3912bc681b0a2aed5f573af94080b38e0a808e801dd92fc11228b8220224022003e5e04a023100adfb2d3a54302328ac17e97d7a0e81b3ea6957a28458379c071fd7c9567a4a6b66d6720ccf648bba03146e9ec3fcd4c90302047c435bb500673065023100cc7443038bc4aaa82662d8f9898d3d5cf7e9089d7580c684807e9d7457e0a5583a6f0127e013c4c2d988db467811e802023020a6614112d6e79258d2a2b3d5985dffbe079d3ed550daa473ea34a655f870b58653219ada3b31b1f364f990b60595130302047c435bb500673065023100a3ae18b24b0dcc89e9d15fcff108013279c9057e19b83b85ce03b12dd8a8e3cec295db78481688ff0a31124e32c54be6023027e5613f4adff769e35d02c56846ade04fb02478ca4d46e1e9a13dd0c4a2f0404ae14e91d71cf9c3f223b83aa543d8190302047c435bb50067306502301a6e0d7a8e90a6124166abe49edbb2bfac08056300551b013e58288f8b15193622825795dccf70d480c93f4cb342d3de023100f53eed68ea4c31b1fc1e35dd3778a9b466b71ed59552e49a85aceb608dcbb3b90c092e3dfce961e9055a55753c239e480302047c435bb500673065023100bbae22dcbbfdeb00728cb259b190c2d12a5d691fa7556e37a2c16dfcfb5db39128b719b9bf7aa3559f30dcd8087f2cd50230383b1fdfd7a5b298a16453bd7bb0a14a41ba5a6949580a150b51c5d82cedc10586243f9d4d827ca84676ecd2a645ef090302047c435bb5006630640230692eabf65c236307ba50cc022f854b9fb7044ee533ac933bba2bf2aa331bfd5f5ca6a094e14198d88ad56fc4cf5130470230450e81916989238db620eed5a116494701612a327b7f7622b9c7675241d937d16b55aaf90a110d77b73fcf8028ca9d2c0302047c435bb50068306602310081f08c3697e7ad8301b5ec2fd52b4b9c83feaaba99ff62ec771dbabef3c61bde82f05aa858c8aa083addbaf4f3d4968c023100a685932a864303006bda7fafb668dab78f026af9fdb7f9fcd256c081f03076154550107d1195c09ed5fca4e96050fde20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ca0478a2c4243493c0ece703cc7931c899dcdbbffe4a120744299a70f85d206cd82b31127136a59120555d28f86d163f023100d5309845dcb5df7c248b44ea778d47e6689d3a9f39bff216eb62510c4ce38df3492baca240bfb735eaeea132911369d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305470a2c650880187c9418e048dcb80d66bd8a6cf38964807891dc82d5f9a0e4797cb3140abfbe62aeb72b1fd26f12ebc0230378b312becbd819ea9ac7440722bb229f8ca804458b973ff66ce44343930c7ea9eebd87795bc4894796a42a6898c665f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e158fd8e30113d1969af4e365acd15cd04b3bb4e9f6e987deb772cce088991fd1d43330f545bf6666b107811b19d0a28023100b763b6cf006996804a2c88899c82efb6d0c8782c2c45ed45a86405b94d2bc44347c740d9cac01ad9d49612c3b098af780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a064e60e9c55066f706a84ed638e1538d64f85300ba05a396c5c54c6478e4e20fbcc55f9541352fb5b3837f273c10f1c02304fb69cb9fa15d9a922e0ace780f1b53136c2b6b8cf9dded16a444a1035e43d7e331134e9f3bc3f6eafb6599e4210d3bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d9e5acbb7e305edcb23669691212cd915835b04d565fd6ae4083d8cb391351abf1fa4cdc781e03822d7f583b38980912023007c66f4c7e74eb046cdd9f9a20d1e5d5fdd4940e77c65375c618718a07a73e74b46b641a3731145b69a612d7b331dfbb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023032a3429f968db475013907e7f688a0c0316e4cb932baf2c5e6817896899c2ec86ea0aa8d85219fb4eb609658582e3f72023100cc7f73232a05559dc87ecacf4190bd9e3ca11c9343ac5761044849ab5ad63df94ee5ce0627f0560f8d038fc0794f35110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c9cb0206796f0b16c6d506f2251e676c1c0510e302687048b5f5119749fcf82af8bd2746b73e39b7fb71436d4d1764e9023073d128221fdde4db0a8edac22f316325d40c362e0751913cae4240a7754ce602f510b0e9c8861ebaaa82364c14c68cc00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305bb79e666fa0d7db1d0c5942674cc9544eaaeb19f2657cca174a0e0b4a7f908e0eafbd7c9891d3f73d463969aaf3926b02303675cacec4ffd5439feade178ff2d72d5aab2ca3d786b42316b9875228041c502e055539f9af32c0cfce12889de44f350302047c435bb5006730650230299603a190751ef7de3658a21bf313281b8367fb8e031bb953710d38c5757266dd98fc21397904dff682f94b5030a410023100ceb0b3ce3d7393086b6841e4b798554089302ae5b024cadcce5a87797e69439f06a12a84635fb9308ab605320c935df40302047c435bb50067306502302025a1d4f5b9c18d8434128c23988da66eb868166e7b4836a9f3a21854f52b5ae5da0a340f86b9f6581a237e6c44ad84023100fbc66f0402c503322bede84d17ed04fd8c686cbd3983ce994ccaca14f98cbb275976daf62fe457bb0dc9f85d2be8d6f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c6c95f740a731b7541e61faeab511a1674665a817cc569f156ce856f816e1a14e98ee25a7d3178de0129e71607acd6d1023100eb9cfeca47e010c0607f1459b434fe8392781e41b5b47030fd68f13c8405c897a75845b8ffe1b6d84e3ecc18921160cd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d9d31c91e4b7d41d3ef91b946eba49a1c44a1b73a2edef789335928de573cbb879381aad2dd366edc7ccd536dd515253023100a257d6bf44dfd5d0be6efec18f74066f797a5e080d1d1ca2f91e2ef32e048b81f5442c3bc0526607fd59618bf7e4fbdb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b93b2f20f1d6ff4a42f26499258bf15e14ce69a2c67f9bc448a05b76d3f61636a2d0a0a91d64664fd6f0434a7a65c6a4023069ea0855b2f43770aa20b0f034a05600c5a64647518070e14cb999987e8b0ed2e18c043709a6c49f8b93aaff5f833c7e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230717e4835fe22d17c3bf63c139f972a9af92ad84eb4929f6ddb8f7bc762e7c26410c11ecec4cead4ad4650fb46aeecf7702304fe1899d57d70ea00a369324ba764af8bef6c583cacf3495410221a6bdc4a6fb173e1aa23abe386008a2b81bfb4e1c480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d242a9ec794a71c61bc1c18826ff56e9a315706ca4455bca6bdaf35622826f64587de4d1f6bb67db0e0ed0dc2d9503bc02303b52cf3fb55ee18eef1954ef968fbc5fe59e48ecbf185cf43d6b0fd3025ea3fe0f1b2eadd7fd35ee2a557f2977d57bc20302047c435bb5006730650230723101aa547fd2b48aee1eca527f162a471d43693d1a28e702543ce46ce13aa1799de6df1b717f4fdd08c9205469df22023100800326c569f564ee3d4b43f9d0085173457473d3f450cf29ca136967ada0432f152c6989be6f313d1ce5a57b9f9b80d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310085e96f09b346395e9b646a6771088072d292153291cab080f7b6f6c41c888599db5bb799fbed76c39e5252ef87dccf82023008fe0f7c009a1b87367e0fdd54dffa8640241bed4a3951510cb8927531e90babfa866eb7d09f79485a2c73978be741600302047c435bb500673065023100e139453c070f2cb2ed86b86af110394c8efa0986aa72346f860e1957fd1447bcfd4a06fa436955700a561c39d9e44edf02300559fb24ac423ff05f601cf269565250582cd93f5e187dfc27874160fe73dc2e5558b921b7558a3b5f9665575d5b22090302047c435bb50066306402303be593ea69cca2cd6ffdb1e9ca0ea2c20f1afd35b32df501d4aa47dd653864ceb3479854119816469603442bbb2186b7023038319a7986dc6a1e80b1858ce93d681cdd5cd71361f8a0aa09ff0322dc69e9dc9c0f927600fc790a421958dde9f013b40302047c435bb500683066023100dd3611ad9514182b5c6c53b8b109d616c2788fbf1ac78a8e426a9c6844b73b738f2c493b648eabbc42208706e8c392800231008e5db46b6f02e018d8ae3967f1953cc5be97db5beb5d73ac80d88ad0a9915a4212848cbf20c291176e402ffa067217860302047c435bb500683066023100a412dc89128d9323f8166430c1fbb6bacc59540b071acaa2a1e840da1e522faca227862db382e7282070faa5fb2630c8023100991f08b400fbe50643356a508a0dd3f241f9c9b60fefc6562ebaf8c107fb687c979a84821a267740f8f391475578881c0302047c435bb500683066023100a8e4011b73dcac85804b72ddf6b6e6a500c4d46d7382540f5cd6ae3751667b821827932580c0234453d261ca818f2e37023100ac736437b3402abc1ea9fa4e501926c3ed377ffa8d7b232f63e4c92eabfbde61a1e7c2cb36ab72aac514baa61b3bccc40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307db5987752006a9027b5fbcbf91784c654477419d65b83e77be7345d41d93440287fd16a3dc1d0876fcddedb0e924da402306815da9e0274535bfb5d71d220fdf38f9e21dceda4b8dee4be9fb1b4ba009c8819164ed236d9b75d33042ac3b50cdf120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301ad72f4d32d644868cd5f462ddaf440a4c6cf3b331678d477623d3814902a5c8f7f34c6121993057e1dccc276c40a127023100b260fe702ef33cefef730ac044866f33c1a088542974869bc4acabfa5b502b8e3da5c17517bdc4567d2d52e4cf2b90780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023049f89409297733036d1bedf353e38b191693b5765bd83aca219c6fe594594532b8f2a68228b57725fc415b70aea8cdf402301f39429e3c644b8a1d22252633fbba7647e398e6963717d73346ac9801998e525a8b9d852262b1482f0790434f17d0c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ca9d588fe101b842144b609550202eed4326e48240fdcaef0a3274389759bfe5ba18ed24cd2d9432dd2e7d36317f9cbe023100a6ea95cc51abb8d25486de8f15d7b58be8538e049613109d51b5d25146a37864870374d5bd4e9e9b46b50045aad0ae0f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300262d57f1f475fe969aa193e6149928ad7bab96abe7ee37d342636682522c8fdd03bd0a5346a00e4902fabc6de444b9d023100a300ff02c9833ee66c7f8971c9af75e52629064099ff029fb978a45db4b584b6c07886c0693342682615dfccc6e9e7cc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310087a3989e2cd292c6529540a4cd2fbe7d16f8f1eee657e385315aa3b31fc41016e30e9e65a1f9c3a44146993ba234a4b10230544f92fa97684e6b8aab2a583ed19c57b36186b51e64bd26a6affd2048e6438ff118f268c928c4c0d51a169b5a16251a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023032999079919e9f39b39a87a91d51461bab18973a381e5a7473f2e9ec78d3d05daadd06429b6b3c9f908865e730e3a2d2023051631b19b55639bc9ae7193fc707dff06ba29972f9adeedc2d5d2e0857dcc5fcf39d79a31b1f950d5c5a8da975ac69f80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305418b3240616a417b2598745f83fcee714d58fed523f3cfe46581117124251bb3ba53433d5e2d57bcaddfce32c1807f00231008d9471d9fdae6797a0927cfae9768555ef7bef0c81808ee8ed9fbab5535ae345bbefdf4e70551039ab39e1e616f313b50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e0780834c4e45df887dfd2e38e1704133cd21f4a5f82f6a34ee04c65e0f0d5ef19546643679632f40fbf3ced3b5afd7302310082a7643838925f1a8165b141636bd637150d639ef88271060f6d5169d0f2c3e299f5720dbb8f3ada21770a82e65094110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500653063023064ef3254652732a1e11fed2e8ab7badfc4a6aa11b07b4092c5cbd8a3d025e26995b5977f16a6a757220c9c3cf75102dd022f228e9f2510713c78032b7cdab1250bd089bfc30d189f6c9d0dbc3005eb335fb7baa6862a2b4262588ab672aacd00940302047c435bb50067306502310090219d3ff92ef8fe1d696bc555abe30f1fd4c37f71da4e2a399c0e8a0e0b8ad36833886005b2ef08c20dcf4b2f2b572e02300bc783e3e67338e60e9aef5ff720a1d3bca0a750b3f9223cba28692479933f22c43500c1096ea69cc04f36c5d4a0e4d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023044631e2a7264249e1db1305eb1a04fb3dcdb89db1cc2a7d8bd33a7a72185e18d66686b9511c97ff09d1b41afe766d202023100a721cc90cf2d35f10b8d5804000ff64e007f2aa851746c9dee01251857819f8d96536edb5a41f2dce0eb7e0f750607ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ddb6624099b88730a53759404c7b98205d269c83afa093ded6d4d78aafdf4ce799c97c42ae1da16513ebbe93d35e33f6023028fef72ffa430a4ef52163b360a0d82ccaf2d30478cc6f31e34188e72fa1b45e73694e256104d22237fb8e6106b41cf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300e3796a910fe1be7e0b0d5f4a3a255b4f5df839b18c389cc94f54a111c532a040f0a1cb94cb31aefb45a2a14f0cbbe27023046120b8305500fcc6878ca271ccccc0e65005ed43a2086c4b58540a25535d951cf793c1eb0bf3fcfc313ff0decf823fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a74926d0df58108a01f8249252766dbb5c4d40b89b4f1287f8d52adb351445b2927e74bdeb3843ca666a08edf4ba25eb02302c8177966b046ad255d0da989132699f8c9a92e27038cc2facd45cacc2f55520f6cf9195bcc2492e2ea4937ce9524c1f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f38cbb813d500dd33531782a3c2261389002cae92baa384932b5ed506b6f9b6fba169bc3192578c566e95c734753986f02304b602c5305c0358f382263a6ac9c5db8d627e41f3c257a26859c54b632233587f68d0b625de8ba71013024825b58ed910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304642f1ba18d8edf28c32b7f2d1b2b3b29eab636a76a0f35f447b4b60e96d6932b63200785fc78d1bd4a7a84ac3a50d7702304c9889f5797d2311fa2f261f9bba35b5cd8c7196972a0fcf5b64959ed304187539b382f4c4b0c251f69d5f6e2eabc6cd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f6582520a07f44de42e269b46125c0e7a0267359b2fba38ae22ed8fbbefa5b01000db2968f44ca31a3eb656d36c9f3e3023100fb81b0e24111d82c1fb8271d2f6bd50a7c3ad5f267da245bd994c26d3b7fe4fa9d6b21b1b3d75d1e0ad0dfa4e073c22d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230041988c4e202075725d911b070c178e251e6ab25728bd9f2c3e4d40845de19568c826cdcbba53ae0ff04d4d6eb282d7302302e5431022a6c1a5c28e0f9f04acf9f301dbd24d59048e76b36c7613575bf75047ca0f117d73e0c8c312afe31872af39c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023052d40a60dc5cf80f8de393256159a00057073d0b456c85bdd2ec36633eada192b0b4ff0dc3d7dca2e515ef0611ab3f9c023100933e24a6951a91b8569818a95da47ac9b7bd2b622099a0a25f8eaafeef4715f16ddaab0b52dbb90ca8801595669d7a810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100805553806e43db47bab7974c66a766d675037543d586eee60bebf86cc7f541a6b42904fb3fb7856583736ae53755dd7f023032ab2a7b52d5df621af3231be9a3f721ebd5f290c2ea71b85e50b4dd585cfcdb960d12cd2fb28269d4fb188f64ae116c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bb8fdd7d136b70a59c133cdcedadeefb072fbad5e184518c515d12f01de0949c22791fd0f32d9f33abf5436cf986ccd9023078ec5faa3233467462688d6924ff4f6dab15e39823ca6d4bfa6612411b507ab32566b1449eae6431570e1aacae1d46900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d63edc8d0bffe525f37b3ceadbc1360f7af7b8ee771e6f781492a9a0dd1b6fc66b5900488616cdf8846743fba661b9b9023100cd282de0da421447b7c220b59183fb4e331157c91a5d6e04edc749d7c9e589666d8e394ab304e3e172747fd22cd464060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009ea9edeec83d28b71cf7c5b68e91a4c78c9add6efe0f98facfb2a2055c33c5f7e721f5c6277901ea431fdc0887c81baf023100b1b8d26ed430a408817d2dcf4a6b3947fc24f8f798e7f314aa251ae790d7c5ac8054b163b7ba2adcf1cd4763b0779d290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310099350ae1c94b1ebf78215b1d49222c3599a2034aa5b87edb9fb8d5f9ee6a79d5964e846738f327587f83dac14844752c023100beeaf1567bf47e1472e241c1ef7528b8b9b7569b7b09b27c23270baf676ac5a919eccc6321c6af44d5b7bdcd01d23c790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230567a31c708625fdbd65b1749b409791b74e688d2fd8f49ddd00ecbaf81725d459e04283825a3da7dc44de8ee5190188102302f78c575a3fd7aa0a3647f618f65686ab097dc71383ef84fea5f69992d1d674b0a253db6eca018dce6fd2213dbc48be40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230477570cf3c2be6974e7e805d74d57518e63b4bf18306af132988697a2334db01eb948c70329011a9e93ce45ded416c3a023100a93096053eb3bcbb98fe43acb0b88d1010fbb7a344c9b405b939eb702465459a75f9b4454e5a69bcfc6c740573841c260302047c435bb500673065023060b8cd556ec8d1bc3779e3e6c0b60576fc5e101c0dad4c4f3118ad7a43f46ce2af7763d67b4689299cd191168d250cf2023100fa8d84664982348c567e2c758f4d06e7e0ac57d5328cf1631c7828462ed9ce3e2f7b32bd0a68c2593e2cf9c45738e4c20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a57193fa93499764f70fd477b46aa4bbe31792089b59b5f5756037ee1bd9c1aecd888dff843d66a07a1caf7efc376d63023100890ba70bc03c34fda8b18c92b1b917942e41701431a291df71b09f22f5b216ef04fe93f8de8718146b7aeac1fcc3d6fc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023073348de1578a6c5af3f39a0d45f9afa7280bd12f9ab5887e4e61f7f8cb45e6b988b9ed9ffc07945df205a27c5037e6f9023066726baa552bc7fcb4ef080d15fa256b8582418071fb570449c0b4b67f6b81045da923f5550f2f1683dcdc34583eb5900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306da8ab0c21f63c0f38e0bdbd314629e4cb17a3eca6240da86496f213fe88fb292728870c20a6fbaa9fdb1e216a5b4a8602301cff175a55053a61470b893140a164e79b94a849a30eebf70ebfee94078f0e6307bae85394c565e9628c1834db6f60420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100deff7ca309d3afc64ddba1a921b7aa6c7927756b8d5b4ee37a90e3fda2b0b4ad9916a9b1013ae782a6fb01c9aee9b8c402307219a77944ff070e20fd11d87a08742fbdaf8689132eae2033f8a92b9bbc18aa4f5dbde09263bf7be43899159af27d560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023000d3e4c3441bc5749ee700f2d9f5b0acb1f3d407d2416fba97d58f1aaf5620980c28a9bc6da9ea577e7881c18c26937b023100b35c4f2b1a96b954ff801f62495488d471bc580ce14499e15bf3ed436dec3e47aa7669413329fe887492aee59a9bae9e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310084b0417bdaf33e207869da5d33cb1431c83a5f01a185d67c5a0416df4d940649767557776533e2250a35cd7a47ef906302306511ddbdead953b8acbba28f480c1d0ce4b455c6854289aa3201b3b5b42dffcbee5d31927b271069c070494f6fe3fcd40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230555456719b27e627ea35bbbc7d4e28fe98bb4e1b9fde44fcb941078f826bd05d8c4798c1e3fa3d8c4f7786bb46ee346d0230366cb654604b1bd91b2df5eb9ac11a6d4ef0ae39b0c2cac5751f8d3e96a185388641b2fe34b478ec42767f2aab9424ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303959f95395e04907989a9ae263e7890f6811e6319bc92ec917ec32f1a97d8f2bbf7be255a1b694b5ceb243edeb4eb2e70231009e1d981bb52feba1cc438a11249b3c1d23fd45e2991cfbcd0a242f83fd13b08cd0d7ba4b02e06ef60683b95e4160c7e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b67bfc271cb762229dd433adf22b2626d0001806dd1015bf84c2317e3fcfe4c113945e1db00b69ac79731f9835eae979023053bc200f9dc13a1defd9fbf4665323780e8f33904f55fbeaa1c68aac7d8247872a0731563d9124541682a1ff6a3aa74e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310094c633d5ceb96f35a0c7e22d0a4ef8f8f1e087d4aa88662840ae3273461f66906fb01e3656c36cfb485dd9977f0445050231009d24f5678c279a99f54731cd05a11623f0d124516175d88475e7bfe9b3babd98c53b8ef10399ccac3e3d115c9e7cb45e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c8b2a4a8192520037164cf153048282f3892c1b7bc1a4f2ecc9814a44e492dc07a6bb1c1a30601ff9f50dd71a3b35cf3023100d768c1be18b345f3c33f8ab50f6dcb74ef6ada1f90c9bac12782735f433bb41b80e0a0e29f3d6f6ebd20defff92882270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306e828f1b9297c768ec27445c9ab9fb921db7f645970ad70533efaf3338b7e9e22d06e33d81a4ae3b1d723a639cb51f8f023063807301d2aacdaa351a954e5e525765760dddca4547f35ad054ccc78b6b1983450cefa7714ade10009fbabfc4c16c270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100da9fcb2d4d1a74b334397a91e70111cba754adea0606195958498a30251547d92e570d427953df907c1f6a630173706c02305e9a727b3b77726a2cab1efb97ff0d1ef295509cde7a111480d3e6dc27deb8e855b3b8dc1d7031e7953e85678c594fa40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c0a5c646a40d6543892ffc69b49a94eb0079b8383f6568a363d5d1c330a0aefb54d1efd3a81248f5a06ca0cacb7a719502303a62d67392b1769591abcab6d15b2f426ff2d3bb44fbb972b62cd908f2edbef85997559b7c30e8df11dfc24e6ad86dde0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a3e9b9f59d585e5dacf4bd5851854df593404df25a4741464ebda361decad977a150791244f1a579157f57095037197602305733ceddc6e705ddf8004a4c0fb0505cf13f4f63090b1b350062a3eeda4c79b99815e35ef3bc97e2063e31ef88ce65ec0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b3f6c489d6e4fb4956095cc1da64af05ee0a27cb784196223258a7a43abf900c022c05a8bbdaa30934f2c58882c136280230366122204d24015b63ea382275e8b67df3520fec0178631b7a5a7bc0e164bc7bd38a407ebefa87b659fa54c53c7b0c150302047c435bb50066306402303c4b26d70ce26c4292bfdde078ffd9f227fab9c4d6e288dcded3a2858a015d77b044c8604d0c9cc9d326152014e09c6f02306bbc601f702eaee1b417354b6075b3e8c606426458a7dd1151f34690a6ef6b917c54ff6c5d95faee3f9d9da43afb509e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b5941acbb376bc69d1734d7a93e3758de620ce85c452f2d315c115b90ef48735e633ad8fed4fd2f526ed3087100b394502303b40c09c5d2e54b1c7f3beff0a321f01637606e1dbcdd5743316ae717b779743eb18f9a9bc4929813f7f265a7fe2d4cc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b175877ade879131be057201fec632c69e49ea944f8ae3c581a5300882d74ab1e0a19b7cb1fa0a391732fcfce970e1f002307d448f8dfd93e3596422c1c1d877ed7bdabc05a1850e10ea9bb217cff663e6bd40d440ec4d49aff2964428af6e9ff8f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f6ea52efd6d27f21d5d8f28a96e057b6d66edfa2199f65adc989873182720d342d74bc286ed29f86aaa01d0fa832c003023100ccea26ddac7b3f95ab61d5cbbc89069c5dbe056ec0d279eabebc31e1b93c6216f705c1f4f7f3b4d04b621cf5fa6228600302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230687a31afc1568ce7eba200b96fc8d09d9544d9a3d4114a13219aa0d6512f42b50018321a79b763051de531f93dceab55023015a39211774afd1c853ae5045e0f3c050a272684db9576434c2c31086b385ce909d5753e91f3c75e0db4ce91d5cb94cc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008e2f2ee94e2f89123583ea94304097ff626d410a2537428b3700272f0abd2d6beca5ce11c71c1a111f82d86ce7274aac023100ecf14e1355dbc99919141307adf2a0d376f440a70041a0df490f0b04d196ad661e182d76ccad1d86b1c4e6c477e488b20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305f0ccdb6640e853d0832b48c1162eb13f3eae123e8362efdead5d5c50cd54e633d03a62aa00e06969d9d66ca887e85ec023100dc4ce9c17542683e837a95c815fb887851062213a8e95e4687c79872116ada1feb8b9ffb04ea14b0a50b2b30983fcea70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eb7d3e9d21b422c63e93a1e935132deb0b143cf045fb6b108c0bf5289ea6f69d4ae540c557c2d7b13720b3975167ff5b023100a98d2f9eabb4830c8719259d18e172ab0deafc3ed4f4183416a3b07d9c48bc5e50f59ae9a476fee47638d00afa915eab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008e0b0de8eadb24534d6424efb6089868efaeaba3cef61fe7b2cb0233fa8c2dc04c6defaef2f09a9fa36ce07431258b8a0231008d793659f5be6bf19d42620184f3a26225a858f7d4dcbc811f6d4d12dfda0fc3945aa4bbf46d1b576bc391a7f5d999a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d788bc405789b625ec2ed4f6ae9249965c88e38ebf46010a842a5a2a5872fd30f354438c9f5a9acf0b289dd650c4bd9502300a0770390d16309c3b0e57a5f6d2eaebbfdc88115807b469db062c24958687a46e50412f26a7618adf9f36d7bb7279db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a2b9b534d3bb638251e06dae9b31540a3ef8fffc33bc30551088273bdace30c22f9873db3322555ed2b2f18c481fe805023100e1bd1e2d65bab38b7e3a9a422297f7fb7d748f16b0fca9f056322d8c2a017e3acb20285b688971a0f2667a4330e1bd220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310094285c7c0e2024dcb530de550c7a29ea92d04fb4ed6baa2fbf5844e059c39964d6511f6459467ec81e2e72f2a39d6b4b02307d96fb6a4921ea232647f73a6e7db95aa3b46bfc22a6706ff95212682477d79c910a10f3cfb54f85b4b77f6845857c4d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008dba7335fe1160fab7b6585e0a2bdbf78f43e57653664644c03239adcf5cb638a8b0ebf4f9cd30c14d808229e4f9c4bc023100f5fa7dae6cff1f3d7457c5e559d10c970aeab3b1b18c13fe223bf17af5b7f69e7c4f9e494d51ca6c49ca0f829fa851170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310087e4e44fdf4b00983d2ebf1deb1e5ef0a80dd25cd4a3d0738c8f637b46ed9a9a5753d9c7226ef2ee2b83f16e6c38ff1102303aec225d15f79df17964db61d3d0c1e77d1b89493a5c568ab18703091b910cffb4d0aebab4ca1b70e93b90948b66810a0302047c435bb50068306602310084267534d18d47e609b583030ce5c3c5aa6cff2f2f8abd5752eb0a18d0c66f2b5b0242bddd88de8aaef541541e24d604023100ffa4278d1d23aefffce4f8798baf1559b5648c71351122dd61604f16dcba7e271b72e23c73ae99a6aed369d2350553520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304a174b08254796f546b49cb8ec649d153a46cea2dd89236c0eda1e10e7115cd226e0b5d2c611a2f0b2ebcfbd97d7090d02302aea82b90db8d40431be5ccf6af3397ceae1684b7eba1bd0f23944a37c82c8f8b4db1ad722fc542a090c6883e71da4270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310093ed68d5dbf7e60a0a78959d53f4cb50407765b0a4e543f882b827d957627b6dd78463e13edbcf6b0d1db5ab28ed75cb023100c17389af5598682bbda49397c57db5293712c40dfab2409c4939dd187b418789a841b8947eac313bcd8b644f6b68ff0d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301bc1be2fefc5c47cc641a41150e54d4c159f67ca2e0d4b42567471d32e1fe661a4ba22785704ce7e3562438a2663c31b02301aad03c77630542b068264722415525131c1f01c7cbc01981fc0389eaaea919d4546e2986414623adfcd5ac7afabd58e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306171453ef66b236d5a83234cacdd77dcc8e7c9b04165516a2083e98d8d0bcb5612dd1b068f8dbc8e38e5c37df272d28902310092be67f4aee7b926601ef47768150212b84e7ed7dbd88093d2ecb18a24984d4b78553182aac2185d7d1ec37a75a2bc2f0302047c435bb500683066023100abeb85fa358280bc7cb202fb11044a49f02dcd176e7010985b6392cdc233725de6865038eb7e422d5f5ff43828b6a2370231008f1eb59bd4d7b4f3129cda6ae5de505d3f2db8be36bb2c2bac44b7f64b4d82ebbb9d4ffd6825d7804b1d383bf34761970302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023043c37e820dfb6d5c2c7a59f3ce0aad450cff422f13a0ec66bfc1a2be87f84924423ec8b84f60e3bc485114661f74e9b8023100bae29c6eaa604fbfff6de9f30cf2b77daa754baa0d75ae96e4cd6a4cbd0cb1b5e8ee34337d09f228c7e11c6950a4719f0302047c435bb500683066023100ed0a62ca1602424a98b3ecb389b215627a42e4a61993125cad41549313d547ddd92bd1ed355d8939b21c87229d3f7751023100e579e630c62d60de04648152d5a216f6c6764ff303f00e055a8ab8f740d207df37d1f3a1ff3505684e62447e51513d9c0302047c435bb500683066023100e05cfe1836ee55463563ded63db2eb2b42594e98cd11fdadb62f0748d25e2fcc3c057b826f099db3fb9b489e97976892023100e22765278f416162329777a042b50b98a2b0833527fc28fce3a7b1551c643c21a2b6b4cf1e94c702386d1ebfbd3c2f310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230647540c81a0560e20b3f6d476c901fbd248b4a8020e7e14cc8dfad083aa62c6faf47afc4aad4c875fe47e384e4733e61023100eb153382fcb96ada6802f5fa470909a909911bbe4b64d340fbb410cf29250570aded0ed01dbcf04cbbba12fe20452e610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023005a4a1c0c1cf795e5787729dda3d5f86b4ea204bb5e3965a3ca4a90b73097f246a2855200f7f048f8aa249d31e520a82023100a6e4558d40e372096739e128ac461bee887a1b5feeb8e7117d870c7a52fa9d784b8e724e03a5b17abb37cfb7ea59594d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e130bf7d381326ef1a4ed81ae9d1bdb078465b25e504e2fd96d0723ff6132cc66a64154fcae86e686baf6555ec065c9b0231009abd9c922aaea6007c8eb4482852f6684743d98a36feac0ff3469cca00252f388586fbb674072cf436ccd44a37a946160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eca8e3b44701431a0d6ce184e86ef7016183fa8141c285934d3eb9ee3d469ac76b813377415431272a54dbff6993cfb30231009c16ba60d87605e97ab126d3f9a64df5779f282bf7e693f0918b7dfea87c0129ed486b92a3280eb1e01daf4983eb83980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305c4668db444e90ad838accaf3897f6790a38c14f1988b2c2114b0c7f631ca6527eec84b80215db32da52370ab98829890231008af310e0e29989576bbd33065112308635d7b9afa61bf5b78ce7758162e41fd5173e2ce0dc8ce6780614ea11a22f32e50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a822d0384569f2a2ed18dc022755d1002eab99439b239b0dbfd44f3de07f60b2a8c74246164d4c7622b98b0be6394e87023100afbef0446cc3b42e0f0e78619cbc8ad28aa2c88605ab3cdc8af05b15fe239ad655b11ea92f8882346887fc3a4a60f5300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f11497fd848ada5052f58f72ffe3344bc6188f060ac6113c62c4b18c455dc1a38e8f74527a1c040ab4378a16c2faf837023054cbe0c6d0bd7235914d73a3d8b601e243bee215e2020dde47e82cb2f0f868cdf7bdbc0d41c7b8fb23068ef671f1bb4d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009cf99f0b54ee064a6b30e6bed73ab1e0952ef491b83ff039cf3eee9c039b73a418f78ba0edcb1d066a5c292d2ef7b8ae023100bf4304fc25011e5dc2bf3f1507ad124da9c624e3d30515c5c47ac2e8e44f0340d6c266896980e66108e848a819d780be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023023de9bc2764979000897d0f64e31fb5d03557143e5671eb0b0bb40558107c3270326f573e807344e53ed558399e1727d023100eaa6aab2a6f549f4894b9c5b77956cb9c68349085e15353ad99ad7a204737f691f1e209e200cd990f20eca1e558db7f00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023002b168bac121fb090b77014d7d783a656f0ac66902dc31dd7ac0bcaada465534b1e3879b9a2f6aba7779e92754dce39d02304f79e9d6baa2fc5795b34e470e2a67c59d484c6b222b5baf8b860f5be42eecd318f3e1777a986ef664c5c157f38319c40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302235049f14163bb270f50ecca2ec8c3beea2c96175e29742ee2bf2bd40ca3d268948fc7f0b79d1c7351f0fe880aafc6302301256406ba77ea10c101023fd46baacdd92b3191289a51f0171eeb18bfd1d08f2c670cf37fcb29af3c3d10c1c561f5d5e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230078723994b5feaac64c9eb7e406992b60624c61879dea2e2f39acd3cc40b36b3b79a5b9a7b726d67e0e930738188814802306f71aa09d8fa387a6308b0f379726d7cdc9cd87772311e3095f82788241b060eef5962025fa56174913150f728fb43de0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304ff2c789cc631982e1f901bf00e7f8c277a6c061d6db674ae7dcb156c3766f90df11e8709ea92b38ccc7c573f0433220023058e1a1eff4ec3380b0348afaa4be7d313259e271f2f82372ec620b605fe78300480c4e9db14f9ce9fc84b8a050af4b380302047c435bb500683066023100a182ad931e145cfc3e79b4b53e481c1a9a5f50811b1a283b8ece1fed76693cef560050856999cabc1b2481a3519586c1023100e5ad502c7835ebf2d8b614b7f55689172471674c624c807ee331ddba0f3c9e401e7ef22912caa50c6ac188df0841f1570302047c435bb5006630640230218475c1838d2d8aa735c0d6e66f62f1600c4069282a801acadab1f53d5dca8f26f48f1032b556479dae126337b0e4a3023022566ef7e03b7b31a5163a2d37f6d4bf0df565324627760a4d5ed17dfa7a26f6522bdb0008826885f51a0155775b52b20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023071840325588569c8e3f3e27edf7ccf62883563dd4a132bea325816dad058dff7518e22e4b3468f69940276205cbe2ccd0230211c3c314823271c758493c1621249eb5fe78b5328f757552e566cf37fe1a43f6b7e7c027bae367b96f8bb1191f18c6a0302047c435bb50067306502306e243ac71045f90cb7c67c4ca34f196b197dff451e8bb49b9df5723e6a7fa3f1f6541eececf793bb93cf76e28f29e28d0231009fa2118f7688a92fe7faffb0826c4cc4de0139e5c114248a02aefed4cf6559e2494bc049343739097bc746f35e6835420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310090710d0bb04d3af65d60dd681d9550eeef45ae1840d13cc6c2dc7ac5aa07ea3fe939e53a99c26e80af3175f957c21da0023100beb742adb510d61332e49dbac42c138e352e34fbd71843325b757affd8d1c10b3b23a7d986c957610bd84f6c2833a8010302047c435bb5006730650230748e9503dfc7efaff268f0f78085e859a27edf1c16e3d8b0f08393a5ff78fe64f12e11c3cc791f352729380a9c174bf302310088a07941c97811da221a7aaf08e1cd732072f6fdedaa1912d8e5bfeb616fcc9f22f308d3437c73b72d70c05c4f8cf8780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305b6d00a9422cfb2b70528ab6da6612f7183578e2172268312abb52adae4fd9570c660cd3cfd744603973aa340c9c1b61023100d032faa851cefd061b603132205e06e9982b31d67fb32ed014d9b44d51f0907fc320e6b23a5a65b9857e345941ce93a10302047c435bb500683066023100f670feaa9f7da1de6e3570a01397267005dd7717cd77559f6f6b357e490dc4b3a2667da64c39ad627f084773e8559db4023100ce03fe8fba076500b737908e05cd57f93307269e703b126ccee50a74de91d0a4e2ff1683fe1fe3d71e490d55429477660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302cefe8d145a8dd7c08eb2e7f82b9de5d8d3437ba810b647af86935e6198f775b4276587f81d165c8669d01312b146fc1023100f580367767ac19bd60c549adcaba0341dd19aef19cafe49e4b3e03cfa00686132fbb490b0e41ba76a8619c91b5edbf2a0302047c435bb500673065023057888c891ad95ee2cca36f26d0346e898d5e31a868234fbc468109628a2e266cb388940d469432fd7c9e10ad0e1c8a2f023100aa6cf6d190ada4c4d37bf00948e0649d70149ffc6cf3f84941a785f6015c7e16214b5dc1be0a0e792dd063fecc44183c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008165915fe57cfd70aab8b603e6e51a37e615b817a9851eea90c0e210d53b6766f9fcf613d29612b4f501cd5791be1056023100c291f2f7495e0d1f7d4c7c7bc3c9da7b12fab5486f09f486824987151e8ca8f8e628e0ac9428d1b573b6713331aabd750302047c435bb500663064023052c454132383f008492b8de55ea1628b6120af7a6c06301a455be38ed9d93b5bcd5b6f2fdb29f959d9c7eaac2605b74302305eebb653b746af98c5e4940c8256b78bee5e0acf96fadf213ad8610bec8dfa61b59436025b45f806ed387bbb2805b8d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e21aacb7be7c21da1d4ed63213b4aae23eb6f663c8968978b584e415423bdb6ee74037d1c8f3417fb3c77f06ce090c3b023100a57befc91fe95398575da53d4cf69efcbe28d10969eb4e4669f9168bf844face0f65bc05ca9f6f4caee46c33b2f247100302047c435bb5006730650230436fb2e09b0f86e76723258f37508c23f94569cbbced79a1048302b4847be9ac2c6abe218ed5e50bf6590eaa7ca383cc023100c6b4ba49e001bc85120e6000dbb098b07e71ae69925c771eabbbd5f33293ddc7ef76e164a5c9fc46d2ab2ecf641396ee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023078329c6011da6ecc169d03866da4b191a65d09ae0dc33a41a5a5be97474345c40229ae3b9e76fa885b90c14bbb9d412e02306f3ab32ac4b10bd79f2b9998b0753ad891d69c7f2b61b021db48115b2001d7f373bc3ce64a820944705452cf00b893f10302047c435bb50068306602310088ef4fa863e91bf4b5e7b79642eb863ece7aff8918d28e2ba536e7087614836f22a5e866c04133ac49782c6db7b90906023100881f0403cad716ffcb8538bdac1c8a373f6a37296627d49f8c7fc922b4f23cb6bf3d03cbee6f745586e161c53e7217130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302ca61e2ca220d592d60262165076135d4cef66f84e7adddfda440299ceb637ef34653f87327990d6854df56fa67dd777023065a1361307ca2177ada3dac29960dc0f66a708f2698c6c5ad8bb982ff0f50192e086aec116a077428dbce08b7e2535290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100881b1e5f573a12b1b22d3f9f681177eb79a545d7349155745d093d0faae75bbe0ff3d50f8cdb722e8ba1d075944564e7023008e73516e7298d866c034a9e722c3b2de86e105be630d41258793888bf850fa16c8df82ceeeeaa30f282302eb8449e0b0302047c435bb500673065023028d0952bf42b8484d835662d5ec8a7c0ae43b06deeae5da86ff42078fb1f13382220f848cd03e3fda84e5596d5031cce023100e76a0fce7aaedfe20d8121eaa49c770f80d00128fc5851aa16485402d11a1c5b2814fa6b9d6174f8c193d771bbafef410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230252db753282f0e3221399c4833565c30192bdd2a7cc4b7fd79efa72224afe6381edbce76e7f335dabf888a7071bd7d3d023100d24031781914e7fcd12db6239db12e7d48144f5ebae97c825c9f4388b728f6e6f685a4c76552500b96301a4191d1c7ce0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b98a60a384a536555d4fa3043c85908f2bcdb6c25276c7c3cbcfe76f3f7fa92aae8692fb3de61c6520b57676f62d191f0230140cb1ccb15646c2cbd9ac5edd0c05c053d6344b321ea04af81fe7f56019cab2b368111699689b1f03bb0b79902483ac0302047c435bb5006730650230702e382f2dfcbbf1ffb5099f97c047160a2bf9bbf45dbe3cb077221ad3942330cc4053d3c55b004dda6a6890633b573b023100830d6b91dde23322aaf9dea0f92ca4c1a35db5a331561e0f1e0285e7d9aea76c58ee533f696ea4132d2bed0e55d097be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023019db2de8ddc2dce02f4ec82d50fa213caa0aac4a4e3572b93e6d9731faa27f97489fee1781e7799373d18ae66b6da16b023100bace859e7ac79e67990bb46f65690d863a32bf7d94f6070f5f3539c8c98f814437c0a10c6463e4372f14f1625ed43eb70302047c435bb500683066023100a82f740c91deb70bc0ef20c4c4b15b0dc3faad06828d6b09abac22b67d57efb6396083f00cc905e08f945e5544a516a3023100fc793a03ca652faedc3c06e00bd6d9331ec075632286a8f97f17c0817b2a20754c62b74227d638749c7481be6948fb970302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100860c9edc0904da797264c025bc7d9b81c3804ff98546d76488f7627cdd6d660f5a4f4ce74a1c3e1bfaef4c1e287e4903023100f4bfa9667dd69985d88e34fc69f8a6ec6b81238bf5767163fb27fc1eb97f841027c4a4d72c3afe9f59a39a6a5c4c0d4d0302047c435bb500673065023100fd3d82a470ba5bbe06b2601981bc603a87dcff5f6a9f87dc3fe6753f1ae1931ebebb579386b0a8522c017b5cfbdc5b55023076849e8012026ebcc96c789b7f003f553e6a60e129c2f05f3924acdea04a5673427c750261c54e266dd7ca63e684d2ec0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fc8ec0d0245d238da4e044498269d1b3b40b6a6a4ea15be71551aae140946b1de5571ac77cc5f58023139a9697406e4002310087b699e437bd3e8cbd6f6df5b7d83d1e8cf56e17c36c76460cc06ba34da11bfe7147e57c15f3f507a4e58a655818ab0e0302047c435bb500673065023100f1e1f8ee47b5469604910bd174e6da9bdc15194631606d1dc95bcd9047645f9d60842ac2b0049654ed81af547ae0825002302bf86cc74a192184d4630004a8da52df9962ccb510db1bfd4cfab11c328c23a187fccc82fcb6573baaf89bd59dfaeeff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307cd3677720c39a393c1d7b262ce55523a53a5d50eeb2c477913818d855a089386330910c050370d6458a8dc8618fd540023053910b9775895332e23ea099ea7bcddb730acd39fb2e546a5e056f6758a1667cc281be49b0401aa72d84c2e658f06e0f0302047c435bb50066306402303bd1df3a7308166d0f959fcdc7a109b5ad3f82a80c624f7f70250c70590e5c5fe60b73367a231532c93d13b0eb044ffe0230513ca3aaaafb39ae4f836eb0a423d2ae36808a2a259f020a6ffe9f282f14ea5b98c8823450f1de56b27f98186f097af70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301bb99fa11d2420dfaef20646df03681a767e9e1b098a9ab3e8827682427374d74066b677c14ca1698de35ed0270b60130230581dc583f5e6a5f9f0b97c47e30e34cce6c6c9787f2be21dad8de517d617a577514e6864bcf775cb452dff52b8316b760302047c435bb500663064023068bcf97a7a9a9f3205e895a3bff8787c646eb788480a830ba358daac5cc43192c53252ad1a3146ac74d4bccc4adacf8e02302d0edf86e1ab0c86186c6e5abe0563c5927b7c20e3c292cd00b473c95c3c9250d9aec0bc5b8299c586c06c4cb1ce6e800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023005b91675e16a685f5b2ac0a86f88a8f9a6de8644fe1c277c5486bcfa833f1d5745e6e2e4c220cde12902f359bdb5d7d9023100cdc52589bdce1ef2d693092d9bf925a1b2b0ad85bcec54a0150be468b48ab4ccdd189b27fee9432df612a6ec4f207c130302047c435bb50067306502303846a64cba1943c8a06ec0fbfe2391de6ef27335ddedca47e99283a1a2cf7ed4b91b11ca1e656e0b49a86870bfcdfed40231008e676fb5d72e4637689728af8e6405ce5b47bab80506b8d1c6cb2587197c1db4908353f9d9f95fe39e7574ddfa022f420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b4ec6acbbb3d7b6288a56ffd0f1ae92ab997d2d64f09ef6da775a60d23cac0740eaf934f049befbeaa3aa8552a8e8684023100bd03069f51d64743b67329707ec5923298bc7454812a49add99981ff7e9cddaf9c299bce498aebd0d394f0247430d6780302047c435bb500683066023100c1d9099ea72a7e123305eecd55ba98e7c3b731e0d5235e8cef4204b6e4d57a8901af30af1638b8a7158f78ae65fde5fb023100828a97dac33904468ad55a244dd005f48ec155d6af27a777dfd840ef8ca9bcfdcbecb5c1130a43ea6389ec8eb0d903600302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c42923d64c6e06edc6c3fd989e677554daeab437c5e9109bdee5656dfd68862dffbc3e35e2721780ec54e0b7fc5ee59b023100928e1f00e4614f074bf2d5757a6eb3b34edfdf98d4c1a18aff07dc4b9ea9298800d9268f2f4ea558bc44b29d3d161ab90302047c435bb5006730650231008dc2c6d15ca2105bc89605b0bf87bb7293c95c3445809c8c34a4be68af701f7d309d179a4dd096aeb5aefc829493a11402307d919ca9e78b9f0c70df6b4076857801863fb12d91d955519cac8ddc0158692654de4c6e47448db214e7c068bbe704900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230037d576de92d11fdf34c384e4c147e37b04a75ad76ce4d03ef86d747952760be98cf179645e9f59561b6818755f61bf1023100b38109decee0db49571de07ef56d4bdc717d645907a6360d8127c263f44194b48178a0284116924fd5f63034544034190302047c435bb500683066023100ae1f1791b7428e7b2aba81abdb197d7e39068e0fbf354ea19ee82205b3b054a8c2c8eedb7f0f8d9bd8162711c6faee7f023100918ac0c8ffbae3fd54b03ac053babbc7915f78a668d9b96c5c56c73c84ee6234375081114a85e81b71460982cef00f5d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300d4daf851fecb93fa44369722d362a83404dea6704e24374b51d44bb03cdc4a4daddae1d864ab23ba7eea5fda0cddffd023029f4e81311df5af45744cba941b6118cbd6b39907ba1915290b25c1e921fbf60bd757a19a13a8632d1f833f274a60b580302047c435bb500673065023100a8a7ef973d3c9d98dc50c91bda6abc5d5235fde5f55869f27e85e0f23e9fc0542d79bc59a0e4a34b7805cad59757fe8702300540ee3bc56e47753532f606c65a615f97ed3d35b867014aa4a8bb434dc41cdee6f34cd6337b3e43e35696ba2b7255610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306857cbab812018af640bfcc4a1ba45d44c9b9043fc56bb4a4dc148d8ac2576c105ea771a775fa822c29166aaa958b34d02304d8eb970b26fe3c9e28173cbecfaac82ddaca15a1a84abece5d94a918a563f7aa0337424625855a62b635821cc437c5e0302047c435bb500683066023100fac5c5c73956864532c1177687aabbba723fc15e2f97edffc494a645d49275c23700d7c4b4e7b5dd094061700fa1b436023100a701b17ea70feb56f9195f251cd518689953fcf1eae50b815fc388c47c068fe40a90e4fab4a43fc42db90d3d50041f820302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008fe71692fa0fc763831a6fc25bf8511fa200735177f9b6632bb03d520bc1c2da6af9e56ef7a44f3e8fb32d703e923239023100da9f499017cf6301818e9cdc32f57631cc6fc0be93a288aadbcf134a93afb88d7dd757a8d137f24936dbbb6f12505a250302047c435bb50066306402307edbb37cf9e407be2a434c7919427ffb40f3fccb9bf526532cd0234448004e586073231144d9192146f3f9add63d512a0230516e208215f93bfe9523e0490fad8c2f7d240ae4cc419b9e49ed89d686d19858a197bd3444fd4b987ea430a794723dc40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bbea2cebee73e3dda8ebab469f82a4e0b0d90f04d25bc423b1eb8057c904be65d5eeed8375a32e36f9456c10ecb4faaf023027d86f812e62a1aca9042ed3b7ddae4e26df364df463f8cd7423dbec592c6dd35829fb84d3525c4530ba7b0a4b5f29470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301efbafcb6ac1ec81cb6cb3b7cde46f05a4bf8800d249e1a567399d74f452d4238702c414ab3b6c2750bece896623629f023100b7c4471a4f2d63e59ee9351fc88b97bb516847b6941a2158e4c25d3f3c2dc29df4b6c283a702b1c6a14561ddcd21d3f00302047c435bb500683066023100915fec28d470b3c632a82a3a84dd4a606efd9ba7d491beb90163e72879ae75a17e902d0f6ee7c2dad7dbe43e582b86b80231009b8b9da186d13f4e571b3f0e4c2a4931ff7464dbf9108a5eba711d9e16237f7672b73b48b6a4a6ada3ce58e0f3affb240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023008c94d12fcbe01789defc431bda68bb4f445ee9388d3a62e73b49463d3c554888443ce6196ded7a7d48d206ed9cd71f2023079b5e724a664cde5115387626bf638307218e0ec3316822cccbb1e262b19b18cee66fae449c48578a55a2b2fbaaa87bf0302047c435bb50067306502301fc00cb595f77666a2c25b39b30c244bf45295c2f000731f4736abb517d2728ea2d63cddffc73f1467ce28a2e06ae3a9023100f434c9a80a64248abb5c5727c46cd2bea07ca7815f9604a26955c5d1fd1b4fecf9ffe1739a1e17da22408211bf7420af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100eb5609d87d0bf9fd5214143c4e7fe0c1ebc3cf8ad99669d9cf099a43e487fe6d3b1372f846365baf42e06d2b0b66760702303aa49fc359ba39fda1a3f93dd00f6f9acca4c387b7afc42bfbf3b38025c06dfe0ba287436d6b915d3d8e58d3b6138d3c0302047c435bb500663064023073ab0ec5577d4040ebe4d9b9690208abc9e08c67b90292f5ff4c4430161e6d1991440fa9252a2bb620c455f601023dca0230133575d264354655143b4f5116cc81940795d1ad46b8d22d5ad50413d7e6d595882b1d961ac6b1c6199dc7cc3a42118d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ed05e1e88f3e30c2248f076f7a2fa2fc33cdc35ee1c9c6c7db9ccf4e0b8d3fc99367e1c7af850ffeea42f42bf6e16702023075861c8346dd749a9657725b305ba8c4e546f60cb48efed57d18973c028bcdc8e9cbb170e40779e42dc11ac33747ed6e0302047c435bb500683066023100cf8d33d1d6d86e3911e64c0a8e85ce6fa255163abc53d4c8ce89931a9e0e0ae992f39fcc3f50a263e8ce9f154b78ab66023100d3705f3284bce92d0dbacff345c28fd01c068e4f028212afb2b434ffdacfa0a8ee76e6909a44ebfff605e50b0a0b87ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303cdf1eb24fc7fdd996c303919fbb83a0e3369aab0baa182fc61051b29a5dd4ed0ad7f3638138f4f73131e98cbf5e5a900231009fdf08099518adbaf73fb81b5ea8a6f0b6a658700df054ede075b1cd9ae78f714459c9440fb85f9cb979a442f02826010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008f8f0239c299ee2fa0847682d1c4c3a7db624d0e015ef99d5fbe32b1da13ebbde98d0ced87b477d099a6bd25f5c928ee02302a7a164bfda40b1a10dbdbe5d73623154ade5fe215899f05c7a672e3dac410c7abe73703457c535db9eaa18267771f040302047c435bb50066306402302ac4faeff5f3eb1032beeae92f8eb361f1e501d593e8e3dc87b6157a687d3c8a872039cd3f9daab2068c18ca301db61c023070746cfb54d76e2774dbbf6284dcf3387b9341c15c91d756d9043f50e4ddae69625b17a1ed0c0a29483e6f33094684c80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307ef92b0ce73e303c092d034a9ddef7dc03b1567694d241935f7f7af2833275de24867551af1e7dbce69f69d32a6f26a8023100dce219b785058b2eaecf402e91886ece53b800709461ec5d9bec84b0903ebbdaebafe21f2a2ddaaa639d0e21492e75b70302047c435bb50066306402307043781fb5ead4ec7a7a4c9406cf27a71b9dc30272609af6674fa00745cf5a130cb5b65d106c9f31014626e7120f89cd02301c5e454c1a6b6ace20b399b9f0543eea33f409ce87dbbd8d12c0a0a5b1f6897d2575fa2a7422e7feb17561eb2edfd6fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302e9a8b4a4956f75eaf4fd776e08c86e6b5f13f140fb5ac0e924f0226f16bf14f1e7190887589b286f304b45bdb189900023018cf4cac91dd743225bdf478fb50e35913e49d165429dc8fed4e91249ec3f54a13500ebd444d8a1a823715c9874cedd70302047c435bb500683066023100ff561b03e1fc53d341213acab0d96f417e2c37d2fbd1fb7bae1f8135ebfa7ba21ab6c712161ffa682eac937467cf66d1023100eeee581056cf103be0f5ed779eb92053f1eeb780ce0d4c305766f6ceb82834929f9ce6b28ff4f229f6bf725b0aec32290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023079429c3e3087a9daabc6ef41f00c04c13fa930f47ee248be1dee09ed7a4796cedd95ea8459cbc90b52bec88fe1ae9aeb023100b19cebb0aa8608044347ef5ffae7b0208708bd84d7bbf21f3adb6f7daad74a02974ba56caa3f776d479af4fa3fa594840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ba19717728225778221ebdd3c6cf89bca634d6192605ea34bcace46826e918fad84b41a2313db63c70d6ed6ba521a914023100ef5a61fb8fcbca8f2068ed63a7265fc9393512b5aaee741619d5a1b71e09e3f12aa6b75135aa105fa65aab8c746f55570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008b49551e0753611d5adf46714d3d087236b2f7436f7b6ecbd2111e1e21942a797dc9881d9df519a9b1c951dffb894fa7023100d5e0638ba79ff5a1f03bc4f28f6bc636694285c4f477eaa52f0e67f5a25b791182e0b82c5937f966c5d2fc0fecad04a40302047c435bb500683066023100ecf453993e885c56bb24840266ea92262e8f5ea97e9790839390fa4532e5c9b037941b7f7da120eb07046f0a0a8c12d30231009a76ca8721fb221621c13525de01be9bd9c24b9f451a36468246c46fb87b27dc3de3e93996943fae6d86284af138042c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230264d19654fdf2859e2c10011e8525421af321705e9ddb26062d19bcc69c0821d04128fba222ddb9778759b6655754089023100cea4f4411211d3d9ee369bc162a54cce8a078949d7c6bea225e5b8d0b9094982f551d62892cd173707c638678948a82b0302047c435bb5006830660231009b42af0794cde54e2ef68974cd855e552dd73bc32e7a7591ea4776b4ffc84cd3a60ed157f716a2e9bad221c4f8ef1321023100d32721350872cf668acc96ce4c239e23b097d74da9c3569f0c17fa26299d868a5b40ffb5a752947d7271c848a64553170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d6a2b6da4d4cd7807842d9e70ce3a804cef68c373ac078c25c26c5d522ce10f0bc2d9d1d5384a72773f9c066763a3bd30230734771548ab9489f1a4fefe7ae531a7df782da6e55313285b5050397db86f96894c6685bf31c3aa799bb7cdd930398340302047c435bb500683066023100994f0e645cc10077c1909337966752b9c616a970be264c304928c65ea2482c4482c0390ca608c35f4c143ba130e8a0e3023100f287d996e8d4cd073898b7e7c7ab6961ea3ab2b56a571bd57e696f63c8226f37b5879c2272e537b4afeab09748a73f860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dbd4d550a2614fd6fd5a11ac7da5ad4b1b1ed9b4086d5e65bd8bce2c0c3fe8ca5d3f7d1358405cf657ae6c8e5c2b4ac102300cc879cb97c8f89a6b13fab01f13ccbe6f162fa14c9df0f44d429384c59a00aecb3e5bff6985511b7000d4f267771d210302047c435bb50068306602310091febf7420670850680d295d5522bcea0aa3418c8a16d7860a0c1d368e647e5364c759cf694e5ae06092743f3e544d430231008be241adf16b61b0b5749b77b5844648c26d7e81f56ef6055e963e180c49c63d849ed2f58f7a8288fef22413914bdcf40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d5455f6e70266b5f8633dbce8003ab8f65abd3905385648371d0800fe5b729c55b6b27f362c345cc9832f590e600bba402302b999606efbc8243e1a3c5876bade47b257422f1bd408286b426955c65aaae743e28b463ec053ed488db601c55bc441f0302047c435bb500673065023100c9317b950b651844ebbd981571ae07b9d1ec67b9e8595114d3e5a65a15ac4463cb5c66578865afff8a3eeb71b7a281ef0230119630c23ba0f5f3dc6e874004eb38378d97085cd27c8f216526bc11c335c8b9caf59205a9b4e6dfe1809236b5ecfe3d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bd6399774d86999e3c988c4f6c9e1b3dc021657f44a4985e47a8cfee7c9e560476c82f3ea2f024831d3e910d1f3e83a002306a0f68510969618b040c9ab76bb24ce47269ca9153ff04e234bf33b00a7c69125aaf2e5f1bc57319cd4c0aeba0f4b0bd0302047c435bb50066306402306ad5f9d9fde61433170e1714da3a2b8df615957127c4335f4c6f4b9257cf4d8c9e6c81983f23286f5b3c2a91ea80dd0f023020694088c772c9af84f661e521ea312ce0f355098df18e817a1d2a0755a3596464709997aee838c6195bc7b6daf2708f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023004f60920b598bc29ebbd9e777e83bb3fe84694c390ccc2bcaad74bc8d498de5a221e14cd8b36ff841e0c415f319b1d35023100c0742094e107b049edd2b9365d976120fa1f5cba44b92236edb3ca589a9e43312f64662fe6b8f0bed5d1722f14df44390302047c435bb5006630640230013cbabba57838eb2f5ac9c6b6bff1441a6b2be2914ce508f83b8a1d9f10360ebd2538f0c1ca9b5cd44cf8caa0c5810c02301f3fc995038452297f6f52fdbdd8ce89b0d8a232d74dcf4093dbed6625fd35118fc0f9044f234b5d1b8025ecca9b96a20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302ff72fb9c80fb615ffedb095dcc8532fb509dea3ea50e666c356c3a312dab7c95418b7eda700e1125a3c811cca8f3d6a02306c13f6c37b257c36cf526971550a22d08e81245f30712617175f96a7ee75146ba33d252c14f25e120d7e4d4fcda03af00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306cbb2dc1af18075c23f82373592bedb032c4c6bb081074089de823a6790459102b6d82ddd4ac1a11400e0ccfa5e48d700231009959b3e804972fe869d80c9bd03e060b8176bbe9774c95b6b8f3e8c590576b77ce0e3c81d6e79940234c1d2853a8fb6c0302047c435bb500683066023100d51a81526cadbda8f439520af07ba0e743403f49e22e234b848a491f78a6a1cf67785c768ecc64345662b206e9a1be0d023100a4579d306f6fbdb98615e1714ce8b3dfb1e5c11c2d4af40788e199c04ce894e081bdb0f834623458e144dae37f9da9790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cb232718ecbe33cb81129b5412b79c55a0b5990aa22be46c3ad03eb2f06e3246537d10461da8f82d062f5f2043a0ec07023100d353074af76563a89238fe659196825eee2e651fb0a728e8206532b9e1125c50c305bb6f6708d412540a35bf781b5d520302047c435bb50066306402306518a1f5161a03135a3b5fc97d35fc37a419d0df896f47695d09d2da8076aff1e58d21105248b471a1ed8698e4be9d0a023017bdfa87df27151e9cfc40970f07070e42f07816d8da6e4b83b5416ea9f8408eac095669cf52b50a0b351e3b4d9921e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008ff2e51ac8024575f9f379515d8722737b3528f98e90608f2c94d1f6a4568146e237c14bb1da5a52e556c24270aa60a3023100ddeb94a2c5c457970c3d40e922f7e528be5836e88291fc14028a9e49f9d682e550168b951fe674afb67fdc11e36ae2780302047c435bb500683066023100da619c5490628296f52e7025b9eded0c5144b5ba8edcc6b568fb5703cab7f9a471e347a7b89b5cc8c86562c84ba0ca3c023100c32e3927315528f2ac8b43d53f41faf401c6b22b42313fa3617d39c538f9e98b9924b33a1edaa12f5d81cd9e43469e910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c909881438cb5a03060116d47c82905d741d7da5c49a33ce8b09f9f2245827a6406bc076f634baf3fd8de32693ceffad023100e486394517d451c9249e5e7269bc789e2daa86daab4c0b82dbddf06958201f43c7a2642a74d5d19d54698b0b4a067ee10302047c435bb500673065023100f5b64fc6c37683197cbe904ba6c707c9c78f84ff9bd9222de9b1414a21cdffd31ac2a63ccc51b32830bfe900fb94039a023049f095633473fdac4f0bbaa78ea899158193d518eb832c1c065f0c25af14eaff4cedc51148a33e901f3f6288da0458ea0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023053820f77df5234d4b0ab8e00ad052efc077d21af9c90bad03d1fb3896e21cf7d24afdaa844a09dd91b0613b71c0629bf02310099d5b16d6b58798c3864e88983368f7e37cd16719e8657f8842d95e9ed6068648305619b3adeba4948c441544727c2620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ea9b272d9ebf033abb1d7187fd54a84a4bf26d9882195a649d5e3d39f04140dca981c08f0e5ae42e5f07ae8c991a8bad023100963b6d592d6ad0d2009aad6e37bf4e85fe5c2481e1cf5f12e296018b32f270cc512093a3ff61767aceb70ec03f5bd1130302047c435bb500663064023051c06852bea554b84f871afb547fe13dcf9a239a0975704ea3b941dadf5dbd45f85e124339e0a00d79c61c9ec78a462f02303ea5583e080b00e9a80634c39df6163fa2941989dfe3cbfa118e25e3b8f93a7d237592060dc871fba8d61b7e29df3e3e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302d95c81ff168fdd9a900c7bf844a99e3e7a93339b981567debe577a2d9840f7fd4c6e8f6be971f3976d49b0d5bb5e38e023038dd7387914acf2b36ea3e477fd31a3eb2b1ebbb6ebf05ea6d8aa6a9ca65e08efe7d34fc7d095e77011c3d486ec872c40302047c435bb50067306502301629b6b5ebfa2577d454f10c61c4e328816c39045b75d8441e313a77f0af6371002c84d0d08a1e71e24ec8a5c586f410023100fead12a74fc50d4f2d4d338e7ca4e09b8d3eab1055fa984c214296db7cd1a15d7bacdae1873b87720094a960b0fe68240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300bede542bf7548f6b87b5e5d2c6710b5cdc99019cf330c580b0f1dcccaf43afeee2e7d2135d38634a9dae48ec770afb10230468d3e28d9c7b3f57d19e23282b9640447486905cd8cea06a165cd2e957c369cc247d79447d20129c673591ec289b9880302047c435bb50066306402304426bcaa52653dba5bd9ed0acc89bf11dca337fe2694a00b0e6081b094fcb637cd036a0a391dad243d34a3a47d92c563023050528968a2d8a4f1a6597714c71eb69e8a58385f685c1f16bfde9ffbda3f24290ba438a4944fc21e3d6879c2914a27f60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a20e6a64e5714df89790357db5f54b7d263fc816cf8363f0ea6988c24af130b43603b834d8dcc56550928cfc11f6d459023100d4e779dad896e4da9f0f532d38dca8f2491ea0bab872c9385d521ab5a1a559e643482dfaba20e387d67b43d7ca3fa48a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230093e8796f351a1a4e2e5ed26afc20359aebf313b337d0e88718a41b83236dfc4f80f2475d7c769aea4b7dd41318374e502303fc1a6f6a2ebf4d3699e06bcc0bde1e562e4c9a7c769c1803b84f05519202ed333c703039ae5ebe4417f08c01fc929950302047c435bb50067306502304341e11b8033f509bf4fdb4a852e28a9628e8a7d673df1ebbe4344f74550f2bbad0e03a6d5ec325c80874018b52ee40f023100c7967651fdabcb8db3b7f0f3d7f7083b1a4fed32392075d539cbdf0ad97ac71be8021f54bf280c8dfe7ee1c9a8bbe2770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f3772516273151e893333678edf1295a7b99de8b40dca49cfa527ed3aac69aa03d748a90cf85513ba5fa95110909e4e9023100de7c390d0ea9362b1219860681ab1ecc88ff68c2703e2f07eeeb448b4b08ec547acbfd0f80570d9ad292772e8b155fde0302047c435bb500673065023071629e4b0ef37e5e0534e743eefa3e20989d7cfd89d77c911eb38e0f069eb721deb60e5542c5da79cd045880b8fe32bf023100caaf3f57cd1168fdd1ffede5bae0dc8f11332eb3b0347e3bf8e815f12f507190a51539203f14ac6d11d22021e62a139a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023035ab3b5e8010528a76d822830f2b0ecbe351da33bc2603ade4ea392c187634faab59aeea451ec779710b7ef996a008c602306968491dd0fab1643df6e0a812e7383345c55f8104faf526d747350abf298a17aaeb5276a132cdf1dea88b7e577d5d0b0302047c435bb500683066023100e6c7d2876c10cb6afcab520c4dbecc4de275ff7786e6e3ae1e345124906964b7ceb06e74121b53957946beba82d761d0023100ae8d70c12fe2b99bab3bc36371c09a41fd028b792cb8bc887e91b1403110e8e58b93ec44047a6ce229abd9fd346b170b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c97ce882e1d79f9ae7c8a82d29dd0f6ffb6c04de602a14af9889d10337283022fc41b91ab4f7985987e36ba8fe22fbd7023055a2f4aad1b2d19b0091577badfb17b38b8d9450aa1683f0f4124889df285a92db1ce18831a2701a350df1cfa8f6f6910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100936935de8210a1b8ed10b38cac6d522cc483ecc50a654c6d40a50b7f31a9d10646de198247882487709165c6457f1943023100e5f955d9d4060d4be88c7890ebde3ed88cc9230b42984e348abb8519f73f820791df99088e2a528ae06f022b9f3153360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306a9102224f403f038aa6c672c9f3f7a1648e214a1a60c49de8d61fe2256aacd61d5b606d72bf0e88f05ab347d23b5e6b0231009bc03467a57141c776bc0fe8b171bd405a5bdf6267d9885c1d501ee0d907a28d1b7fa70676231b7d10b8a94d3702d3eb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f468f533746a4cf7cc1164f39f01ebdd24ed0aded36d31a1d33902d8d0c05ec3dd45c3041b2c5b4427a4cf151cc72141023100ea020756182c008e20efa39e9e27ca67956fa5dd96253f8870689a19da93aaea093e2663ce3c66f85165b78bd8b87e670302047c435bb5006630640230027d3ae6e4a14b4bc7df18b25ca54653cd0340bf67ed973dd25d3e3d67e74ae94a02fe59b852943241d1adfeb3f03acb023056a2bc3031a56d3f9b2f955e0dab14fa5404a8d310e806c2e5929027daeed976fdaa1b0f3b784502ae0dc18a2d7f52590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a2450e7ea5fcf5079ba148be75f62206d68200bd0f079721283701303dae9d588541c005ae3e1d58b8f01f1cb67c20000231009e2fea7f45e35a4e8b7f4ad17d7e0c2a964fd6152d022bbe6b2f368ad028fe6cf8b4b9ce0b325f1edef40eb049e7ff920302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023049415fa72a4339e7b147bca1c3e1b316600ccedf3c5b2d7a74ab4f03000390156f08314b51916be1dbabdddeeb162307023100f4de1c240f51b208d98287a05d7a40ee41b9b6510c0b09b987449180bb873151a6cdffec5562e20573674733a73ce18a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d6509b11723a11c6cc60942fa9731b5380b0eea45b977e2dc6a03a548cd3c66b4e5a75627befb730ec233b440d9b4d5d023056a98528432079dc08ff6439eb830b8a4ea675811feca5d2d351f67abd09f86f1b6fc920cb6228152f133f5026bd4c9b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307e615d7b260832e9abd0e93be26ad25dfccfd20431ccaa62fc3379395fe44bc85b3d5447bde984d207667c04c176cb5602300a9d049d94fa0bb55f72f0a3ddc90cb6bfb1ed914b90ee70913ebb0a9b4d24cd9448ef150c8f563bdddc69201b2cb9f30302047c435bb5006630640230252bc7dd01daf2e0ad52ccf9a222800380d3409e63ff54f70066918195bbdc6d9604466cfc40d0a53f1c15637b7bce4702306eb8eab868ca156e03fb1a36c9c47a739e66ca84d92e27dee59a3f64c006e52a69d3bbf99b1b65703cae58bf733d7d120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023065d22a9eaaf2d4d8cd9d3a7d9e418428ab4b7e4442889a7d10890b4bb5f61fdb840e809bfa0ad4f6510d2a2c0ec0e501023100aa4c82fafb0a92239f52114788af55a5abb3578ae27616876f7bffe0ae1116e982061270838302a9046782d855938b4f0302047c435bb500673065023100cde60d20f1fbbe8bdba8aadd7274ebcd357d83d87a85f1fa67ba501bd04800970d7ba7c6d2dd5321597ab5a8de19574602303136e36ff10db093f6ac510f462ad9875765546edb0da46c8b1bd67eaec283568e01aa20d664a0372c6d4031d717f3910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f349a054ef655de230ab869f79a06e7e5c07fdb963f627760309a157c2c08fa3a05a52baa6b7a970dad3224aa8327470023100d613523c0372be6bd325261d58f2051c05b12cdd24ed390b4b5de9fc72a1a46070ab6d28746b454896cca12004faf64e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303613030c0e902dd00af4ceeea6a831d88a37da542a0c01b44a8753b3f4643494f5c721d0e86de77d324e71f0d3e5217f023100d44879d9a52c376d4edbbd9f3c1387477a5f7cb496f4b1b5b6615559b181b31f83f74b6483a7b516cd0081d41e92e1b30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cac4f26628b30500e2f89b117d54ef5dc72dc29cf04708ae57dbce354072c8be4536b33a7bdb6389cd6bf73d8cb59198023003d1cdcd83bf7c6453177eb8f2122abd9fa4492c17463bb0b56b58d308560353e9beb5740d3e19a7dbb5f328a2e720ef0302047c435bb5006730650230509b67fa82b91020910be6bf46da8847a43944ad9d32acb9a0f0e60f92c9e06d58858a5f194027fb89098801674edcda0231008bc7506d3d4b837e9951564f98f111ff1f1bbbc6dc4c5e6334a886155eb39a427463a33fa6311a97ceaeb9ae53c045410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c0ade857cfa0a3fd235eb069cf97a461797290fddee8ff14cb5f44b6dd4630bb81a1e8a8e6406917e4519b443e0a5a04023023869c1d6c62c596927bf5575250f83645f981f9b45a25f4323f20db7b106395c16e0e637964530b18dd63d354c923c80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dc9fe4819fa1a265f52ba723d067c02054a3483c4fcfe4d7be7d16e2cabdb0687b2cee256f574226f0a7465cbad7c34d023100bfb1aee17d74a5a3fdac7b9dcebd5e7ccd477e5b67ce1c8fb50e50992cc328ed2b6ebffbde048a4d7e15d4ce99063b010302047c435bb500683066023100de7a20cf37706254053fcced55f9e440ec2876327d0a6d9849e745d7d6978523d446fb0cd82f2079cb0a93646dc72b7c023100c8747ba730800121b36facb1432000b25457c73e529d048046e8c768eb2f369e1f70ef4a83dc5b6896d2bc59ab1763be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310087e005389d8d18c74b96df3ced25399cb62bed74ee4353d7d68e31ea62da9f3af9e303aaea37e9d53d03c9a1f9774b9f023100b966b50616b696e99e7ecd1c9f483c9689ec67bf58092144fc6721d8a00355107b5e7f0f1190c010b6dc0c2f51108a4d0302047c435bb50067306502304e8409cad26c3311e5852dcf5e51ac42ce565ec1fc30b88e4c0836da5740c12bf539f88f4b81074fc1e7dd1ef00c19c3023100b52a555e6f85414b522a7a0ce1e1af2f0e0a71bd31234d51aead65adf2bb8ec9163ec276016d6ca27125a49115127ccc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d3a159d8b02d444b7ee6fff36ecc34b97452c69c00a18ba8e366776109a66f64ab9fdd78e30f435987b5560f08b83d8c0230017fb13d0a1ca9dbf87a876e172ed7c1a1168cb2bc4464dcb45774fae024a58c47641443ba1773e0e8b8c63b44a39a300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023005f418272b6f3bab0a9cdee2c80f5e610749f5e9f9918481b201dde846efe9abd885e98ed2a6e604d75611b67be07e74023062b3b52e3bf99deb5ad75eb0608c8415e152cfbbc4b91dab5ff9c51f9f3de65fbde3ddb166c941728c69660ce1cac1190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fadfadf75e0f968d48ee243622032ac65dbb2539a683a580217b0fa32eabf7267fc71b740ddf19f89edfbbb0c57ffd2f023034e64304b33a68b562ad93d3266b496c24209e5fc52a2558385f89b1cafca8c212a8ebf4771d3fb189728043bde148310302047c435bb500683066023100e161cfc71747921ab39e4e1a248e555431885a4c5db0c2ada5bb435419e3cb8a72abf62da0c8a9cb7665b5f94fe6b1a1023100d356d1d91ea90720d38d6a6b090163cf1576964c0a3da16319f607b0a55c6f354fe61f28f9f4ab0e19508e1c503a1b5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305b35617dc8748ab78fca7375ffab02a9913b0188a9121e785e1b7ecedcce67f81d620f6d4ebe0e60307f8a101a3e0711023100f98d124289a518bfbcac5ab09c461872fa0c4b8996cad94ccdf6dadb0af72586340dd9d47d8f6b7851248182e23bd77d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b27b06019b48a27dead94ac375324980cd29ef570a77e9a091bb2441f5a9c113173db7145a15cf2cf17655a1817d36c0023100f329c7ae1290b63b16a226c1987e6d9b119cc7cbc219dbc41230ddcbcbc8888912140ed3caddf263a50a7799d08ddcf00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f2eab60769ac0440fb639c4ee23b9c8a7a9620c70636d9ff76b5dff04b2f54d0fef0a6ebb97c316ca65729bad63d452d023100bec67184553aac84ae1cddfa0f68f636d827ee75bff51598e9e8c54f9dcde76bb5ba0fa0bc1c0adf1a578faa7933da5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230269fbcfbf88be140a3a42259d1cb16600652940b986faab4c9c2c7ab87a93184d884cb65b3e998940717a6dcfa147447023040a0affeb742a4b6997033d64a8935ca0ba98c0bb1c016f90ee1afa2fc50f78aab71a28d20ef6cf164ea5d759ecdd2ae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230551984b5269f5a1288a366436b613fa60c6c7c4207e5cb25d539991b25ed6e8873b7eae75f04375d68c082c1eecb4b03023100a1a1a83381553cf81d8db1a6c3d3698df4b028f3e7962120f65b11a703b8428937c6aba520c85c19c0ccce5ff115b6460302047c435bb500683066023100d53646e13f81263f9d36eb744988f0d7de0d31aa67352f32c5ca587e06e84ae8ab3cc04a5754bc3b200cc8b10982e9e60231008a4d6aa61f188b5cc541e62df94511ea0f340270ed1ec8ece1df73095a8f485d4fba67a8e7b177ab4af1786fe968fa7e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023032d42aa9cce8afcd4f019ffa8cb696f79742cb18a37e28a3ef9c642b4aa73bf165bd5a8455d005a78dcc068bb04211db023079995f93480ab98f6be71d193d1e7b766e9392205a8ddfa2780941f9cebbc12531ba8b8c6c14af06667581ee218682590302047c435bb50066306402303e7feeff40f7b48294f771679cce707dc4f4d7337fc43c8f1b4ab690c03ac22bc31d342c6739291f20effbcfc72210ec0230703f897e9a8fe47dfbc87a5a101a79dda74b8c77aa62705f8c262ae9a523275268a04353f8cb00ba8100105ab4a501cb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230680fc306feb8c7a884cc1ac4ed9a9122ee10ea8c3e7818eddc094dd8da49ddb3b3c136e578ab848e54b3fe6c175b111b023100cdd331089a9a50f95cf3d92a06b8a51b184e9da13402c0d96deae4581287701dc6769aca3a441d087bac86ed68cd61c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100be72fe5f7373f3d505918ce48d84e180450ade80a88e7f97f4d5270359f02aa9e11535ffea97a9a627241b742c86989902310083ec6ffd1e1402ed30941cd834c7d5a55e47ee6d1693ba8628fb7ef6d353f8b95ef02e5d1aa5570b7623719705c6a8720302047c435bb500683066023100d1c6a7bdae5af2eb51e73fc9003848b14e7f78a5d8e8d055fdb2734dfa912983957c1131c91c8b74317212385777ee2f023100e8aca956bb812bd45f9f2c4723780217b931293afc098321595282cbbcf0842df4fa10bf45303f6fd2a6a362a337cbc70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230008513ccd2f9e3baefbf29fee5930bc111832cef5cef954c712fb09858617f36f85484b230182dbebe4d3093ffd1b812023024d3845980c51f9d9e4e0118dd6e9ca8756f75a8d375260f79ad64d865fb941700006123af4e1299c4482eff4fba23610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c214f11a42facc82933250cba3f05877b457065a92fe77878c37572cd017c4027cc8e91fe9a19287bd17a5c0979e9e8102301c08b12dad3f550bfc1722c35be3d41a405e3122aa9c80f1cce7adb191421e47dc208cc9d4377e556f1cbcc1b2e2a3bc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2de6a4e7a0f08e33293cef61a365a902abd2787dea366acc43757c426156bf35d22d44b538a564a1f10bf5e33aeb327023023582f3bf6fefe7d502029ff2c38db42ded815fa38dad272b607a05e144a330049593ec0e04c3abf1ea23ff0b07915f90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e9c04b89177d75d8209abba6c06bcbc65b80753f3eab8042abd99538a3106685217ea3bb734485b225c3d563820c973a02300f7d6be51b0d2a4f1684dea502308e48eba825f73a0929b8fe9150002f97094eec47398c59f79ffe7b341c4e006d50780302047c435bb50066306402301ac8432d06c3777fa33f519c8dfd7bb808300bdc21d5a6eb422516d83918b3d7d40ef71379ebbb98acc642149b613bd1023017cdaf1c5d5f99814ba8b15facdd265f16141c5db0f4e9d554d9a2ef813374e7f4ec77742f62bede4ca08087f5a8f6290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230625179734bf82cba693a95ebbd56eabb1a983ea1d9b7bfbf1849546e3ac56706c7fa55a5ba832bb7ee99cc1a5f758d24023100afa0ae2d5cda8b130bc45ddedf7f21ef726fb2a0ac8adb0c32849cdbc97e17595ea119ae1f8c27b34873e2ea2c31092d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301ba1480caa9e44ec190f9b5cd5838c541af7596551b3c5acec6648167fb676bd9f53f0c1a1c6a3cc701d1c108945b5fa023100ba7cc67ee753c88a24f4523a26af595cc5130a2e24e914788910b07867e9559ef87586f6f3cb2d74536237b9e84a35080302047c435bb500673065023100c18c00a3a8874d1b5e6377ab7ff778d7a3006525c2f0f6e9b3513129c476e4a017e9928feb866f2f70fa6327f9eaac8a02306a06d7aa43e663306b95d8b7a270e463cd6e65002c38c3ddfe0960c98d28015f105f3ba19288dc2ceed74d4f7ccee3680302047c435bb500663064023041c0c0ec0a4140f6726dfc887e5b430e41c2bf68e9357ea18369d579e2c6f2dba2524266c2a50ebe3748b3602bf05ed902304dd4abeff8d93c3e75ee755d4e05d2cae5fa756bc05a136c8387587bc9615e7628c496b9d5576e0a0d878eaa2c3aaf950302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230284c2aef3b2195efa6ebb91b116dab56f534fc6709e0620d493558f76309720dbe1350571d09c6c8c8bcebccb69d9c38023062d875da3facef7897ff609c0994c1d050d4d39225db20fefac4c9eb5716a53e9281f1f3cab1bd56eed0326baebba0040302047c435bb500673065023100e38ee0b3c6ab0197a00a63eb0f85790e1618db9d03bae5eef2008b84c96a836365c78eef376ccccccc96282f3d306e07023071b9e12ea69f310e8226eb818b83219224f73c37c5fa9936a7e295d9b76801be6a0be2f0965d44df154c7527e4ece3a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008c50ac224fe056ff46f854f1964f0f8048c7f16aa63a6bf49ff404521d134412c8c0b744a1f73d9df55fbc02494fad7f023100f011d9d81e61f1837856ac611a16b8def430f320f6cffde95b9b95dd9d6ac300fda33004721dd5e0ff3bc784a2cdc8780302047c435bb5006630640230276bd96e3c1196b2d753503e57209cdb28782170cf049684656ae5baa7cf986522c56f05f1d41c48f756ff6f350cdd7d0230692a8986d4acca5aad91ccd87a06eef4229f8e8ad2016e44d3a3f9c2a9ffd7f9ae5b34349650913bed2ecdb56b24a46e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f5d1fda237e54046595b9bd053a388884f68d378cf03e094055d084858936ca702efe60b14fdfd2adcc4e5e2a6e63e910230562c9eabeb8470520297c929b9924ab30bbc6bd1a56cae506e9617fd19bdaea37fd0d908f87dbf2bf86245401028251f0302047c435bb50067306502304fc8626ab3a72422c24c5b0e5091e3fea2a09f49701bd7371a71096d8106093f987f6c56b54b28384a8c0ba0d885b8d9023100d120db7f7184e5210c655393d976b95b101e2af9b58de6f1b4a71965986a5570d70c257a038544c4de06daa542c5445f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303c634ee6de660a748763dd37325d81e6932f1d3430ff5801ed54879d3277dfb311ceeb54bc34af03ee7a4b877ee2fc00023076b7d1b03037ce8b4ba83a56ab93ceedcb4d2ada6e204b3ab214a0a6f59f150c10b46313567f8348484b8cc9512da0240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b28697aa8f77d21fe46d4c0df12a181595684f480f810275fc23047b5f17c666c2ad4cc4435df8ef2712d5b686b2be2002307703639a2f5a8264dbdd3ce23225706c9607b399edf9238a8b1f653e3432e1d0c033bc8568f9b7818148877f64e8bf630302047c435bb5006830660231009177790e0300c93f5a887dced04c40f5e355ac13d7aa06dce07a2e224e6513fbd3335765ff99bf4ad81fd6689eaf1d53023100a70a6c639f2190f6489f1c032a2f8780b4c6d682c724585964c8e391334ec100d6d1bafc3b330f44afee16b53f72d7f30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d2c5350cc533b52c31801e79eed52c187bfbdaead36ec8f41ce742c569aefd41e1031dceb5240fb69d55d5f106abe6bb023100edced72b21cf6a4399c8306119e4f0a33e022acb70000924e3d8b4b6b88abeee34106d658a4f18fe97e85a8f13fe80de0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023048e232b62f1f31a8579ca33d7659f87dc7bcf3d27c6c33e3883a10d31afa124bf3064bdde358dc8b8cf742f3196e3fbb023020cedee909087a61fa583b1ffa26155105e9f3267d327b8a68b7a76a933a0bc52d792b6b024ef8c548cdeea546ff947e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dc4072cfb915c6ec7988e6d509a4266577faef24cd6976a32766a8c88ee2d97e79dd471a81a68638e3bbe0ebdb0f9198023100ee6df39f63bff0bceedcb2ae075ffe40968fbb767853d069e85144c4441d81c8fcc3207c647bb8c2849a9756b0e224a50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a1b4c02444958b457d7a40d3db95ba899e0b193eb0ff9586e4fd9e2bc314475f9160b945a4ddc761a86fc71538be7f380231008948df85d35d572098faddf61f66d2cbf57c86105e2b65389cead2ef57806be07896a491585f550d8aeb2ce55794685b0302047c435bb50067306502300e260bae6675d182ea3d2a15ece727b42444e8c3f53c8efc147714daafc7f0ce1df15e2c1a150ee607e8866a4fbb171a0231008478d6c8551106b57a08de496d4b35ef3f0e2a0dafc3ae44777d1bea9c65e343283dd50a1dc415812f99a5d57a61516b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023075cf23a12bd946dd5ce24a009b57c5b88877500dcfc93f9a28365e30436331b0c68854597796a84158dc2df6c0f1c724023100f7ee5757c21bec3b258da79d59f8ae247e171dd9cba2cc9cfd264ea30986fb0afd62185701991835c7f9cbd69ddaf2580302047c435bb500673065023100a950c3edec9698b8d183e9dc986a803cc45f3f98ea5aab11a02fe0533bf8d6f0e47d328b91b7390ba6556463908a4f5e0230659635c7b543cd50d88fdb18caa931df8fae1fa479d1c7e9c8df8842aa8d95f5e0821048030a1372ca465c5bdc2911110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a612a6f342dfd575011fe74a3ba313b375659572f9a1b9ac3aa0e301d344e4d14f2b9192be8af3c398c3cc12014a9d6d02307e1bb78ba29f79942ddf15c2ef04260f9b34d95a27126c4ceff8119fd2cd04bd261402dd7ff7c3195fa0fbfb8e7913550302047c435bb50066306402300c0b5c84ff693a235ad210a164b9003b79bb59209ac7fdbee8a770552c537744dce0babc742f2e36fe9b48e2345ed9a702302dd95f91160d4b1d104a307055af0dbfd728052643c9136eae1b0bdfc502ea894e8a5f6c4dcef054d9d2ca8f599595bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230487c1d746914fb425814ed3081d7447a375ba1bc7beee2981883416a7909d65875ed23413289d8168260f496f92e93cd02300b6d40ea0f9e1c5b026e7148997328cc36dec65f8fe10a7bbeb312135579b74bc5f4df928de9c7622a5227fe71ff0bd70302047c435bb50067306502301144148af3355633880ba8218d1ea62b4f71d4b8f131fbf1c1d8a694dc33d82024bfe9c1f01e4a432c9b9f74645be585023100a4d50938d1ac4bf7fbe4ecfdab489cb8a44d2440c9105b470bbad0aae86523637f154b4dfb2a2ac8db405ced664227e00302047c435bb500683066023100e8614bb4f7fae2b231450d343206f7ec623317a6933335760bd57bae6d3bc42e45c7db7c24465107d9b531eb213d7365023100e7b65cd07b796d8418981dd3c55e074f6347952d27614fcd9acfb211e2118f4dc3c456b8c244c4e67f1b4e02430517e10302047c435bb500673065023100af02cb7a7edba1e13aae8cdb4ce3d3b8b747a23cacd5b607ffcab92cb7c2bc4f31e758eb531f30d71dfaf4b51e97c12602307ce722f677c74829af8cba9caae04230305103f2bb03c906311ecd394cee8ce521225f0fc85dbe80cbd31f948174d1220302047c435bb50067306502310095115cfe04c8dc86cbc0bef696e332ccc47eb4eb9d96fab2255a37141b740c8d98e828c6f4b136321dec8dc8cb1ab25b02307936f07c9fd27feda0ad3c414449a1d7a5784420ef4fb9be765a9c852878154f6e3421b360bd3f0e0d35d896caa03a9d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304849dc2779b33a7407f8e04d461c0195b8682a0ca2d09d6313ccd1856cc21f25e58b96b6057556f71b796ef40b94aae802305e2425f79167a86a56fca78f742d93490901761517aaecbe20122da81f9ffa12e7e3799e5ebd50e3dffed32544f543750302047c435bb5006730650231008aee1b16d04de70ee2340e19e404848c5eac3d892ab08d93e480094e0cc9f812dcb5cd36b81024db9095ab54b3d5837802307dfc7906b37c0539b55e47058baf2882e3a58778416a6ab61909f83c59a93aedceae8ca70d8781326050eab567b8ba8c0302047c435bb500673065023100aaf8be6d3223826836a9ce618f9d8ad9bd971f03525968f5b9dda74967aefadeb36e1106379a21ddbe2dd7994a2d143b02302fd16c401272fbb08657d9018eb92254a4ad41824da41f2529b4d2d7501f7d70dc1242b5d57dea1ae741f13bd3655c250302047c435bb50066306402306c5c10d8b5f5f7bcf119b5b2fced7cd0cfb59a95db2a9796c0577c5f6dfc60e6956e4bcc5d4df8c5cf12dc699c33698e0230338caeb6dc38d5502eea4524599d2001170b7c02e35e8f861592311837a82f40be470c91557b7be18cd9c6fbc783df570302047c435bb5006630640230738436c9fc396134b46479eaf55c8a1565a8ce0f4cdee397d2edc68a3ea22b96fe82a13518bd042c8501094c830d6b0a023045895971aad27caf7625efb1d37b216d1fca998243f4d860a38a9ad43a365e61cc5f52ef70cfed4b225275c78a978f910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023008e479bd02a8970b9c340597865be564027aa2a01a5ffcd055109b0a7a38f3e5e29c0bf0b3eaf1b5b28a58ba89830c1402305a0c9884f479560330b75124ecc1ebf39ddb600867dd2d26195a1d1ead46fe980b56e06cb0f90f474a92708dea1425730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b6ade01edb972a3f7fd696f3b85bacdc8d8c3084f8385dce1db411903f234e1f11a31c797ca1a06a662b0433203a8a7102310081593fbbbd07036555a935117661d698fcc2778340a6593aa7a71a657a342d1b41e1e8773a5f48cc9d2ed657cc0265570302047c435bb50067306502306815a679873978c812adb40fe16f9a54fae58ce409ce34a3525d3305731e7b1ec980b76cb4e5d051d9df9d93bd0a014e023100e046dca12f3ee99154bcf7f36c6419d46ea33f055d86c9c32ba73d64bd4736762670517da2eb1448e1262211677cace00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302839725140472afcce2a6fd6420bc4289a23181e13664c5999a9e07218df785057f59ec28046043f8678bf6d95b12669023100abd5f52a1973aac6946fcff3c1c60fe8be6f06b33c41f05a01ddb4a5d53eccd269a5b0883395d095cb5d942638cd5e700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dd758040f5f28c0d7b4bab18178adb29ca1ad90b1a6d6285658a5873e55f54bb061840a8d151060e09bad3cc062f837702304c37ca8121524fd94d812428befc6a8ba33dd45ba40c6ddafcc98079529b005627d267d20f21055aa1257de7611cabde0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302195f3d0b3689af57a11a143405fbe9e062f80a1ba24d720ca07cc541fbfdb5281f63d225b4a3404a8b573cefd6c488302310091c24a34190a308c9271482278c6b0646cb429140f9442183766ef2a1a1c4fe84a9d571fec9511dfa99584d40387f74e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b9befbb130533d46fa4207e5ce9a7c650ebf32fc0377c24faa60be8bf43b7f33a666a652765eecd04796b2036580209e023100a0d04a108efff6a3e516f32353b3ef6c6b932259b78d7f392940d2e49979f16ed9d98754904f0d4c8e2bb59029c76c340302047c435bb500673065023100a6fae7116d0019a9b9bc61c0478279a7e243cbbe588d3983fc3a1f246cc7e0b7e15e9139f118adbd9c1fe7242def89d5023070ea9451cb5ca267c9cb725bf1b7235a4c302171fe20f0980241b4729ab712b52e6eee1e5bdbaa4a66df1dac4c9494c10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300762890ca76a3ea5967fb626de77ee8807f5c7e3149eca9c14ee5f36af8b349cc466f1cc11bece266305b936e8bdac0902304fd1ba718224b694f30845f02d899e6e6cfdaf010ef64de9f370d0dda757a328b1ea9547cfc8f761283780b5719592930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302909df80c285b8c90e92ae0663694d86fbe40f8c56b25a5f841569e956609df9452c9b9a9310cbb74720d0871a711cef023003d6688baef03c087a8e0eab3e97f0ea2dc77e8fe365b5697948ea522656faf8875c839b9b6175f65bf95ef11c15737f0302047c435bb500673065023100df93a63249091127ae4089f4f98d4e1621525304a487039e831664e426eae32ba7062a6e3c46b00a80d6b53de927befe02300c3a4e908e6948b924a59573698d99f8719ff5bf235a509280bae5a761be966b59ce824e0d3cf6ebb0de0694554c53910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c7bba8e9607e3c9620091237ce3e32c29a153e61cfdf13065d7a96bcf9b53e7f27d1769ac986d5259f9f14ac590364ab023068747a60b55f0b61794a738d86ba89ef39ef6badd2f3c6453e4e6ed23dbf4487b104b1c1b806c0354c5a8d01ccda90d00302047c435bb500673065023100fa24e4596997e509df7af3effff8f8e7105ccf6a12df6e26d0a173fab9bff2023d50444eba00921ffe847d7a0f923a5e0230096651ad36c6bf3319a74cc8e4df604456407fa2948cc26264d6ac1fb9d0cc72c92a59c1808cc3809f7a7ee6b5920ce20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f4f817e8a929bc8845f43f801d1a3524d10701bc3ed55be65a594866869f9320ae923cede76c82b6195fdab7ac9f199a02302e12b5d687b1444f12f89f3847560b24a66fa5feb3cb9b04d28ae2451308805b43b6373551b2ae36c0d29be50f1f77730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009847e389c07b6990a1e20834c4b54fd5375253bb495699fe70ce01a7c55b5dd33a1d5adb772f9adaca4fbcccf514e855023100b729adee42757b49d8539a1234cfed023cafb8f80d8803dde978862fff5e6fc2db551a117037adf75be0616c3e9844d40302047c435bb500673065023100ae42e26d269c611433271a6c3b8eb98cd673262744da5fc28f24707747b5af8b2beefe4d39f1660efa07c1583a1f1c45023038c61cdbb5882a54e1fa91254c26803bc8ded073e17ac9656d75e77f4fd3473e23ad340e31932787a4d1b53fbcc638ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009469756d1173ba56d5fcd7f907103dec9f03b51bdaf942b04b83c031c464cd26a2071bcd2cc64565066f3c996ed865d302305c76c57047c65372ec008131c92608c5659c7a198ec82fa5b892e3c50670b9a26a8b7d779b42df53253af81b7e26f35d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100909d872a5a742e7d83c974ff5c8e3242e215208bba3cc2809169bd6990af046e52774ce54c70edd3c6c7d60e2091159902305bde351a0c821f4792e634eec078725545589d5c9a67f6930f1dbbad1c7c80e459f34349df56f521bed4a4adf087adb40302047c435bb500673065023100b6965225321170dbbeeb4604d3917a0ba5a50c7fa81cd4f9ae68c2f12d0d00b10cf60b6df7260d4c45154c4badf9a033023032b4baff269fb2f3dd3a25419a8f6736790436c388436b71bcb45be0b0491f06db848968cfeb64d416e753fca9201f240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310081bc50a55e65474d042f94717be5e60d3db8531c1afe4e53d3d6ca919bcba31e6ce1b420a2b7ad6ea87a73adfd30b8c9023001ea190fc3bc3f56b935b2a223196fe9ed5e6300664b0e57d73431bd998d47f6ebc9820ca54bff706c4f989ec04384020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100daa7e97878c2793bfc963d30e4a2ba6c44fc1f98a680a488756d03af836ee65fbc6602524f68f479642dcc1a231767c102301bceeb5fb1648b0e5fc216c3b8321416f9c971134e81ca95e46bc99384745930c9f457147329e42d022d440a3dac21390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303cb1695b6388a157e3732ebe8fcdd6bddf32cf8cfb5869ce83541d361dee15f8bd087b11b342563f2e3fca38af454f34023100f98f1d50c9b41134dbb7737edd993b1c2f8f6e388a430fcfc8de926be1346058dc7da484bb73754b6be3ce93897a401a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f4db49b1d1f8e4d19a66b7bd4c20409456088cd857477a14a756eb902c76bc067ca185c87f46484b35dcb4ca7166f1a002306e5957b8d855cab1a7c2f39341ad6a0519421a217a58250c2a0a4e7ec06384eee8d675f58582ab0c5c4124f3ed8ee3480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009388063f96b1edb27a3e8a9c6c06ff4d86e23ec471b897408a9294c50b7bfcd4c6d56fad6e7eeaa33802ae0b83cb31e60230155203d32fc66e79c2248599762a66a8a0dc05d78168813ca8037cb739e3c4be25033f577d7a1c4eee0c067d7ed7f2050302047c435bb50067306502310091eef8b398db2ef732d57efbe4b9c7feefbad83fcb0ced24338bafc356f1a5e281cc1d4eec4844365ff95d98cc8d3aee02304049bdf193f686ac7c32db55da5ce7f911cbb43a399a8469b92a805d2fd8a53d8c8cbdf95f885e7cef2ed01a835c5c8a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230017c5ae35e1f1a310ea2b59741b9124b1376adbe74f86144b25c3724ce40496dd74923a51bf24606da2d3d0443e72415023039979c2e8fdece403c9bc6b6f6a6d82b7e52cb694bfc8fda61b118cb9335709f922bfb17ea51ff7ef2cacffec288c9860302047c435bb5006830660231008e2423f2b86bc227c0c3a15627900d114f78b58ac49c12439b51a9992c721b61e7cdae77773913fbded846536c5e956a023100d6055a2bc538f8bdd80c061fa9d346a7ac61dd12ca853397e725f74d53f78a6506338a7b703e1c4977312d6898da85e40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100951fc74c28d6978a727f26e9c0fed9f44b291c737cffd3cea7327bb585d6d95295a66c244137e94b8828b134901f17ea023100f953a4c15544367ae9340ceed4539585e83e261693c5efbbf24074124863e4bbc5277357bd1be7d72aac5961c30e90990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a5d3e06804126ce030ec3c9eedd8cda4cb822ecc4d4fc4ccea8570ea1717501aa76148f4f51bd2c37a776fd10f7b514d02302cb1e99e14ccb9d32edefcfcf68dc3a8cdc41be774f07c00fb8caa51a39caee29fd8eb7de0d8f85cde6fcd3f6297feef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d206f4365bbbd9eb5f886c5e307eb0f0b20daebc54968f9fee6db6fde8f941ba46d039819807c17cdfbb9cc5f7d255d202300e79637c403a7463e03bbfedc6f53bdf0729dd35f282f5d854493fa021eb46747dcaba446d7c9f1cb70fc4192944396e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e1a25c35f6df7d465023620b0e115dd2c7df5e449d50768c20a31d476c937bf713d8309cf4963eb1cbc9b5e5af780d4e0230769b37bda6b4cb4be676eadf952b9c312d4de3262fc267ff56cf759fbadfb06c1a9fb782988d542f39f84b4a533cf8780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f64f6c0c5d1c9a8a7b0d4d7ef25b86f8b44588f38e771663b9d0d058363ce8557d2257d5b2f5a955e2ee5af7dc6c8e19023100cd932f36d11018901a12ebd76bf4753c0366512b8c9cb4dc50d2fbc295da4ddc72b647533114551e5ff5b111f4a74b5d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301ca1cf64f474a7beb0c8e68237e1672f04b4a6a784276437cbdf477b22d292317b3dcc170f65e9e70be4aba247e57ffe023100ee76ed3c8963e1b448071f5fe69d0cc74d9220950c7dc6e1cb7a4c1395c2a8ce2f24ecebbbeb0e46bca20332022d288b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023005b39408df077c06bdbc1549a0657a4814197bd66edd0d01915d1fd543e61ceabb027a3eb8775d81bd2f86758ae2e3bf02301c3bc60cc1642ac74e544b000b027dd2542f072bb2589e4de6be599a441f2ec93d87964f295d8aee0b9969cfa120047f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023046fc97345afdf38dc3f49c21ac59054e0d52ef4b075e0d074b290379a68859cc178173b7fa158255c8ce7b6908089c5902303a9bb6f3b96bb2169662ad48257b5bf6e7e4d8c34c9576d85f36cddb39d7bd51f1fac942f41b08baa3687c6ba2e8d1ad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303d4fabd4946fd4a759ba16f0c277f3d184bd7dc8db9e8f210ea7c8b3eef5fa5370b952ef1bba99326ff4fee08f694e46023100aa8d33b63e678f00a20a03f6241ae6a7385df37f90cb393a135873f58392ae1b3487f5963ac0c10bb0a8c934e5e7d8a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300ada307e627ae7320911ac03f78a9908301de6967902721ac20ab205633014d126ef51f3a784a1db304e9db441d5863b023100cde53561ecf9c2ace6dd550a7307529d1350758827472de7499e456652bbc7662a2d6cf4ee4f6d66cd434279650f89280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d99740413c17b65f2ba92ae37cb05cb9665a51f8368b3737e5e0af6e0a9944db9a7c6fbd961f6388504b6e83ede6b26c023019df2830efb253eaa2c1a3c8f06e8879639dc181e7e1e21a9a01424f60626563439a596215b02900165a7f3606f1b9db0302047c435bb500683066023100f92bd2b77da7bdd4f19e5724d1d1eb45f9083f2c8fb06d3e8ca6378cb4fb300f008743583d7afb690d2ce042bc22fe800231008dfde4977266d37aa446d9193708f024d2e9d84ba384a33ce3cb292ebd2ece4038e0350b939c0405d649f5577cca6c5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305a7347a6d8fbc6711e5312489621b547c42757172e6087ac4d1c2267061a140490a863cb3a7e5bac253651ead52367310231008a7012608a256358178096206fbe5ab8da4c6b6114ec0e87053081a75c83d7827971a3fcb3d08f627532406f4a57d1140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100988aaad766cf56ee2029cda69b9ce679034bae83fe1385852f7d652573aeb30525b146e21051f8ba1956cf5433022669023100c21c3860fb4bd1d6cfcfea557200866df5a002830e7a5f00207353da42632ba04b5b78970145ede81ff05a89af50a18f0302047c435bb500683066023100e46b91e375b257a31c537a57f9e42df039e3c9cf9567b7bc73b0a926e207365c9cdb811344b12df8c319ee5e27503662023100f16ce79262ab9c6efb590179789fdc1ae3e263212fc615e80f516a5f75ad33c909cc0fe432c6221380175a1ee48ab6350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dffcb17e54edebba5495d7db096e77c4a18de10c04e29d4617e0d775d27102168d44ee652a9944ddd7ca2dba25f6f125023100dfccdcb85ecff8aa9f407d8f5ffb9cdf859ae4bce56cd477e46f09896dfd02895341cf34f0f53f4f5bafd12c938c2fa20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305ce7f1978a43ab33f3b190141815e694737fd260675a9d1366b429a44266e3b11918c1ccc6f697ee37d91c8e711234f3023100f20eb022f428dfe0d539dc0030e79f658dd6ab21defbed6c92d8ccc43a482065526f0d92b20259c1ae919a29166e8fb20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023040f4e39c5333b6c286731ad7c05bd771cba3eb82d00ea85f33328010f57a9961cfa4309fdf9b18b6b42faed3f4e3bc290231008c170a998f9fe66ab2a0d8d6d034a458257a626b887b9cf843c126fcb3f52dbd45e292437833be107b603efe9c7fe3b00302047c435bb500663064023041410431510b3c67d3f0426ab5ce249bf9fd3c2dedbbd35162fcfa444b772ffe1a1f5f74f7d93c015e10c00ccc2c788a02305a65fd30624988fda9cc9ef0595fe94735fbb313b3e2633e92ae8c234ecd5d05a5f92cd5c0a6c8d8562ed0b0b10cfc910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230563020a52b1f3c4989235f4334900c57e6a486709900406788a9b5c06701f63e9d072944000094116df7704b86afa1eb023100e51a567dc52967e5e158b5893e481fdf2cf57f81d299bd13a165d81b0ef2da3ebd7d249285262b0c5892a0b92182e0340302047c435bb500663064023045edfdff6eaa79844c7952c7c76dc25d70c9f0dd2bee73cf50dcdb33c7318a326a44c21bd77c2f0146e218d1385255d902307f5893d98ab24e850040889a5981df0a42719c024b55544cc1c94cd38e0e17560346427ef320ce3de79a528ca29334010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c5d6dab1c001d55ab104912d058ab02eb301cfe90565cfc309ad68fb6e33cb8537fbcbe4612748f89e0746425605d7aa023100b4c66e00b3ae3183343d1bdf79dbf60f77d1e130cc1d2203948c3c24898154bae241c94c665a93a9bfee905de2cc05ef0302047c435bb50066306402301f0fbeadd55ab7ee83e3ba4a5ca76647956afe7df4fd411bae728c9bb13a93da40e0b63fc0bf4f3b6e15740f29f2357102301a73b2e8e0b1f9bf132063d14eb154b0b7e7f9d5a50e43b486ae659ac0e1df5ce76da71777672d3949be73e3853f87150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306da95086dc0b1163e829ee8b268b8c1bf90d89de1eca1013901b48f522258c91bdf967d7b079d21c692f56ed9928c6ef023100af8e4b665839f95298c5f74aa79fde7ef60652211c615d1f707e3ebc5193bccd99b8bc2b097d5389d5576cbbcfc0cac90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307802f899f3c41bdecde805b88084ae9527112fce8792057e64d497db1c844cd1b6ef052f3b30fdb9582e665502c6eb57023013a5130866224e1630541358692cbc22e9edff5ad42a446f596a98e7d5a287da59ec730fd79c459306a79ba54e5dc8dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305d67b5066f17fe8d97771c19cc507a2e56da8041975057877a12598ddfea3f9671baf2237d7c06579e42e7cb3ce8aaa702307c211d1532fa5e35a1dcc5dd6974ba6e86fdb8f072d50c72c5521ba0e4b97e747cf5369ca45a6e73ba6764d3074f84ae0302047c435bb500663064023029b4a425317817a642c4d59b02c15a1cda947f78bbe5d5c15f990cbe5098afee84e87c0bc49e32f904c9ccc1a51a286a02304d3beb2f5d6cad4826171c1b8a4205e4902d2fee75139d8d618fbce5eb78b1dee5f5c33a94b350b26d61eb979f16cd440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230261e6e3517bf44eb91a3172a63ab0bc1ae514ec906e2978cb7b2b4fc2cda07e7d02077a77273660e927e19ae772e91010230443f83f9d183b1529dcb2da23211ff54175d6e7691edd74dbc2d3bf916ce527ab05e7d1e0993f053cc51c241436159690302047c435bb500683066023100952cc50e0bad0a32fa67dcc45e5019d752955486e015ccefc405a302455a21861a9c86890f1186aabfcd55e0b15c49db023100fe0d08658c16137f274275b2c5813874f1ec9910f3addfdd5f3c0983fe502971e51c4b16cb8534892ae5951b8dfee65f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230218f91294a2c93569904f81a15e1867511bfc9350104d0642688b2c4bdb7bdb1151fc191004d35895b79eadae5a6e6f3023100a2f2381229c8cf610a64f4eee7b4944125d1b9a09f37f506a2eff7237043f3af71662ba00fcf88cbe345ea3cc7ce222e0302047c435bb500673065023100c08d3aeed75bf4d1c923230eca6493d70c9c586c580941b9225dad8d14830b0cb18d6a53fb36ae72b9e50da1815feb62023027d5c9cf74934d3881d987ec654c0ab8b2c93bf388cd00dd731ed391cfba0d13aaf84a2c17751f9b2e00ae63929ee2750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230315954284c0a2645e388d976a6e5d268e7fe663c608543b6ea7e817dbb182ae12e0cd4d2d1bf8949f2b3ecb7909c087a023100ddd5bd7346a6ead7f92a5a97d97b8a00519c77f5dc69641c5dc08ad7bf1af7d4eb2397ee1136ad950701cb962f170c370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303a6670b17a57879eab2545a3b743d332cf119cbec89fdad2b7db3ce59ba23af80d3080bff82f10638c87271e2c55d4be0230450451531f3aa0efbc19e028a8596d0d1e9f6a532fc729014b7072095dc8fb12e8c8d99483b1f15a7f499de54c88a7650302047c435bb50068306602310080a36d0bed81ca30937e5dc7563a215822156c776dc1e6b82510b5ffcac7740b9b862fe1a20b806f95160f46c2f2a761023100895c4f1271914c4255d07e08e7b62a2e33d192be80936d0692844057e7bcb789a0d9ba826c28918582bb0f43bf23de9c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c80d782f4485e1cfd9d922dec2aa67e36197f919c1e422826c1517c527c4b8205fc08f8855eb86d4356dfe2275e0625d02302c3d21759db61523c0ba675c7f5629da0aa144fe13cd8697964fb9ce4dabaa0ea0b6c53c45da524872219639f8e779a40302047c435bb50067306502302587e7e73bd2cb60278acdbc5839cf4d7e18b0f986e13d7bd7157669293a3421df49e0dce2164e19b74401ebea792ab8023100c267f59b0e571d65ab4e802ebe976090e2d7236120a9b00644858d87ce332fb3381e28712d6ac23b83d310e4d94052c70302047c435bb5006830660231008763b5ac2f825a6d43d82c40eee89b562969125548e2aaea29f3bc9afcf64fedf55c4ac827a108e8197340cee38cc7a8023100d18923176a8798dd24a7b83c98cc6f3a59facf423dd5aab70627dfac92fa45964ab9d37e55c038e545bf51ec85dea1df0302047c435bb500683066023100ccfa2391d59425d45cbaddd629aba61ab730013d31835718c0278952e7085469afed8ec8df8954fde5233da79c871968023100a405102f9cb1fef25b565a7e9158feb4802955f964e6ed2f9b0f08760fa0f8a5db2b31f8c4d4e3b06e640eb113fa2ccd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023050f28ee1a5b7363a57941c651496b2ed89d8336e52de204887037c7be0a55b5432e4aaae6bfbcad779dc904d55777c4e023100e41da70978a18ef77a040d15fd27bfb2b8720c41886877f731875c6bd65131f2c209cf2a40392dc11b8712e60df27a870302047c435bb500673065023100acd71669abd7f96d1cb7ab34944e0c6a043aefcc98603a2388b41862ff8de6caf3479b17d0aff0aeb576f4c17c4ad6c602301700557d4c790f86306511742060dba03814fa2bbae1e7a3b6074a55703d08d2d06744d58ab9e313003c8adf921108360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100877187fe9cf42bdac698e1b9788e01ed358f9bf35f81acb50a5c586f7e9809306316d6e788af0161ccb2f00f3421aff3023077aa2107c3464a698e7f61859fe3c02304a57793dd861405acad9de57b014620937494ad5474c24650fbf2686a469ef10302047c435bb500683066023100f5892eca40de587bfe922105a5b7799f07c635dd49ea4a50cb4f1219e9c89e99d618d543df2b99f44d56ba36eb8ce9ba02310091105c275f6bb8f90cfe6d8fe141429cfb1a834e5af72a522f07bcaeac9ab26e8f6abc2ed90c164f2d84507838b926b70302047c435bb500673065023100813dcc03175e17e6b83d4f00801d22b86e641d3363959509e50b2dd14bd87bb8bd9e5f78373e40edbbaf81a9daf6389b02306fe8f9850a84f33dc0581d8bcb03d02fb7320d9dbbacce39611f80cedb0232dbc03a4b3ec630c2a1609c7b46a373919d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300df7652fcf8f57f6741ab3ee557a24b478642941544db0748463e8cd02eef76fe980728fe655cdefb2a41ef66f0c03b1023100fd8652fdb8e249b24a124794dc4644e1ce760508033a9009a6d9bc7d95664efeb371ef83b83df5df481fc6871d3eeb810302047c435bb50066306402305b667107e3cdaf5a2a46121d6dfbe777d335a468ae5315ac8f77c54256bdbcab7b2958d7a2c40bc98023a7c8fc046d8102305d90a8143382fdbed22d6147f30b125fc6ee9f72600319bb9e36a7531283488a2a70b32de191e7573e1b11e3c7fabebc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100edb72e0d3d068e7b6672fe83ab6b5d3da19d6a85e56f8c31a006bd67efa7bccf290262153143dffe812393ea34d7a875023042d5bfe7f6a92a4b86c72b5bbe66e47548d5e9565ae2a127eeb2755f68fa7686c37ed47dc49900b4994cf68b7bd1a8230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100de33399a276fe77ff7ef5b5a8a00419c1b0ce0a71f83ecf8d45fbbc6c4b4e46ae3aaea0fe2fd7a411b064b9abd145432023100ca7282465bc5ac805eaaa3fc86174adf3ce82c6fbcfec72fdbffff58ebaf04da91d9143419ff30049b573c28949b7f840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023072b4e841d22a700293cdb42d78725cc0bcf237cea8f8eb828ba6664ca42ddc14db6388e42ea963445d8daf3daf0626c5023100be8845bb080f619a6ba9627fd75f9721630c417d04722b3a0875321d3590cb150172f1afbe6c7cfdd08b42c14141275b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301e5d4a48943eff746c7e48f97d73b41edb8d26894fd2ad63443a8b717390086b7945c96227c009ecd02390827aab7dbb02303c23f99c3d61513d5b45c50baa4d08b68a1260a759c09f491795bcde8420c16eb79fb97a047ce7507ba8abff3a3000ce0302047c435bb50068306602310092432cf70b1d093f8ff055cdfe94e159ac2d9634642dc0e0d6e74ad60010bdcf86ecfab78c183c9182ada2526fd20991023100f50e2e467bd63f1bec8198ca0dec3da771a0065e8694d6a76ac4841b6ebbd5669e57ad4a4de284c06d82c45280a0624d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a77ce67d28e745fade0f46cbfb52bce7a6de44bed29c66584b2adde408dceb7271e45c55fdb600893987864472f833af023100d08be361bdb966d58a78de4320f50a6a3c0e459bb8185c63d8b782431472714efdf95f0fc1b1ed9badbe8ca907d370310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fb2eb42772f76b788343497bbd4f4f7ee4a9ef2860e9b42d7808108b9013d64f105b896f510d2242fe744a2dd386b2c002307c71f7f9637fe33d688766701b593a6b0a9fa1f9ece95a5d19a78a48d19259715e9a81d2f4d8d3377d3f48db106046b90302047c435bb50067306502310092bbc171604c375cdb1e9cf8a547f094a99bd9f8fc08ed02038a098c615dea25a36cf35c8c1f43e2f95b46722dfc33b3023056ef977f0c2fff4110e80438f7d9630890882e31da30fb80fc56f3aecbbfa27aea6f89fd80ca3355855a31047dc67a7c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023035a239474bb79f11eb95a7d6b5781b7c44b0b703aaf7f4792de5dde0453871d117a86875ecda040700feb9351c518aaf023100d2c197f5ce869e5e3f4b1fed8ba395ef27b0286f58b7cc13a4b3916ec9b470f67502f29647d1ea82e08db9478547cb7b0302047c435bb500673065023071678eec452884ae9b2bc33f976f6c31c6d86c0578f7aa91edaf2f587a8075babc2f7fd899dd8820ec93a462799ec3d30231008a140da4e09a3083003c33d21c3476b044df36b10ae6c7917592867a04a686e7aaa91c987cd1ba8d94e91fbe4affe3650302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230274ecc269d668e681127a689fe27cb11df3c49a1550c04e6cd094a648894011dfcc9c56f73a6693aad4fb822ee881a7a023100cbc3a6146a7b67f30a4bdeb01f2fc84cceb59115b953e4d624151c4f405f841a826563c92b1299a598c9baf883be987f0302047c435bb500683066023100bf92d09bcced70b643181c71e1ee62bc4309d98cacc7dba7e25694961b34837230fa57a687349e17b26137ebc03e6fac023100d5399f7869a57935741b56966788e766087e391899cc84699d282d1b5782a61bfbad808ca3a3c394ea7978bced67cc180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301c97c1bc74bf33ccec9dae76d82efa1fbf64dd896c4ee2c33a941b2d7281f70183410b1aed7d9c3fbb62d325242aa2650230322a96578d11ea4a2f3922b6f11727a28b768bca7effef827fbf9bebae4328c733396151b58dc832f7ac23ed79f95e450302047c435bb50066306402302efb6f7f73a2eda868c49f79a5a57796a8c18d3ac8fe28e3644e1635793f4cc3d5fbae2c8f3d847976ea5d5eb0c868bd0230750d35e62dfbf7af7a0696c898c5d1cef80bd03102d9bb0d152d59e4a7fe413dec78627bfbe2dee7e8fd5d53f39524860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304dccbb2349171a1fa49d7725116bc3293660e3326cbb6f3d029eff8da9272ebf66d480fddf7c25a9fed2b67c57b709dd02303e054785a9e1a9aaa12bbd08bc4c3aaf1b5bcc8973ef53a11a68fb73c2b641f7a11deb7b695d93e16523e3ccf88b1b1c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023031a2b602124d78fa2875c9a3822d7fd8d1b18f2febfb1c1344de1ac2894c4349cc939bd54e37e9f76562a919e14ff3a9023100dc8086e696b986fd034257d44848165ee846524b4109193dd4b6401994610ae7b9e45915302d39836626992c522611980302047c435bb500673065023100e12316616e98b6639c8f1db6e875c705d7a9f8ec9fc58da56ab79b01b6a22449586193c742c676c3d1ab8d88d145334002300b222a9e4bee22851f1b9ea62baa33bebdd24a055703efc029f5cb5ca174f3be19978b8db1d776fe8af2e2be8a8a54100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310092c9dc15d26116905e5e91aade2e8462396089e6c6d111c46073817abf5f5ba4b992ee8e2e61f213fb62489f2af51351023001e9c8ba1f170a14ab288a09a1c4d7d3d0a352846e557afaceafd26763bde75a42ddc52c2b29039cc7a925797a3b69e90302047c435bb50067306502302eaf8e8189a29c79361d5ece8f60cd4274f5a8154c9c10fa40da3635c973eb986dff908886e4b18d05aff2cc38d63deb0231009a77a3e82f2fb8143d8dfd56cf6197ac7ca820c126a9989d2d4197609499539b3c3bc9ce7f5c0aee0fd800d02d1e34e50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f543396599cea609773b7aa45accf58cd3db4d458ec67da19b67955da01f0b3c73dd78b2bcb05ea1b5ce44adbbfcefa6023100bef489370061c92e80935131d6c630eb99cc74fc222ca6912e657e5aff0ed36a13fb68d99f17a314e52dbab3d2cb0e6c0302047c435bb5006730650231008998461568469ead4a267b1e7b17c3b47cbce01824a3a10255b07fa8802681ce1f1ad5b3f60c988bf1391595785672460230334df7e408e89c9d60e69619764c819739742b396c5587221502bed1a7c4f91f6d61136d918310f7e9a5f9a479b3e75e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023075ff51beec6aabb8223795421f9d39d54d83700956dd2edb232e41b0971f8dcbb2f06724d3f36b3b943b8d328bebaa2c02307c37bbfd4336a8d61d16bdb9abb2c2251cf19aaaaafcca66d691492be7e6c1306808f2cbbf218e38f8965117bb9629580302047c435bb500683066023100db5f90c56d0f3f37a9f7ab56e4c74975c113019f8abfe7266beb0a5ac04dc262a9d08b201fcd8fa3e7738b6034ab5919023100db679f1d76de49c61670c7c7f3152de15ac33498f15548bb5d07605841ed766a216200f24c6e210b756ae3fc150e3e6f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303054b627c3e1956dfeb16fe1b9f53b13db4c2926259fe34421008b7e9f157b723be0483f0ea4a558187deaabd96562ef023049ab74a386aef1ab1fcb7accf2de9523ebf3344252875da74ff924703e3ed716150e15c35a10097af22dcca2fd6d371e0302047c435bb5006830660231008800173310e58c65dc9a76b4694f82a31af61df5d4f54f0b107dccfca211f843a0b2c15aaf4ef2fb1927768d11781d75023100e428fd669aa202b8764308b36a7ab9bea9f70019aa99bcafb61d41bed263b6cc1024257306f53826aeb4a498e1e6c0b10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bf76ff5f6c1238e071ed9751ff27a4b5465117afb0664f715028caef6a20c6e7a422a68bc04b8b32a2ad3953529c5282023100feec8e5229e0a8af6bd93e8ef7da7d1b941c4f98b80608b54ce04ef80a6073dc97fb0f548e38ca3bcd710fb1ceed52f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230704a37458697b74efa67d240a8f85304ca97da2a0d132c329afe79e3a864e95fe3f2b478d3063653ba2169551c8a6688023100ff9c6bc802a988dd84449ce694bfdc95d738a73dc56f66990183f6b637c9db6e96888f0fade0a3f03cf77fd479ae1c1d0302047c435bb500683066023100e57c4d557ec815093ab7a1a2ecd1599b333f84043dc4a594b7fd9987aa153fd9673d253ce501abafb1b5f974f5ff0012023100b348750d83bdf8d799c2ffe19a7d609820120cbf1c56684755efd785bd6286dc1fdd52b96be01fe5bccf7b21215939e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023004516f3e672fc478b82f01762441fe2c4cb2393edc4d4902ed07b1008ee879c00327fdc9b45ef5882c8dcdf32eba8f1c02300d85ff87a50b6031e14bcbeabe509acaf18e77e22d2504010fc4f5c49a64b1259a261ddecde1ce456746dc218b1e19ff0302047c435bb50067306502300081333a19df72b8258ba4d9231aee6764068035a834b432e8b5b3df720e3619c2081bf65253340a18984048cb04e0480231009eb7540c41fa08b65154ecb084eedfb6939a79f6ea90a7a4ba29c23206b6c61e7c1ca445cae2240911d59d81637bd8060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a3ce3ee770433d7afe801d0ecd1073bec72c7e9886a67d524fc063a6c3a96184bca6a1795d92b29cb7ca5a570669c695023100f7032321db86b53e3819fa50e8a46adf859f9b69693d7e51fe033b6089c7e7db267d4fdaf629b494c4f26027fbd0d3910302047c435bb50066306402300e8985a46d320d750eaf41b32669de6d096ec77fd81fabd9a64b5f7fd882a57a6217671eeba4a0904c65d2cf73ac55d202305f3b9278680466fd6df365f40a42efb90a576a895640f0a969b82192032f3bc88e8a7bed100d0e99725a1e6f6e54ca080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d677eb36b7c95f7c4c3fa1be84f90d3a10210d98e26fb924513dbd8b54a7e0755aeadc8bbf7f385652574bb343d04d69023100c79ed550d70cf06d390ba6e21e54491af8e1fead88f0d128b6804e2552c14c7bc9a9f164bd8132d9ad56a74d507d316c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023048217c0279f25ce89372f31421378a5b52917bd18449b1509cc44d18b8cbf866c343dfe28255804125c862d80bc2c15f0230160bbadabd050938bb4602aa1b1c4b57d58c0de7174433a30f8a2b67cea284d69194c127c84f1746ba7354f5863e653c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100aa93e4d68c0edccc21c7c0fc9c8450102c9c31eb7830fff001718d9e7224a501b20546b16bd875ac0a86f9c34484afcf0231009762ec6b20a8a3560fce0408b80b0497354df71a678363eb0245aa2e98ac6ebcb9d3f0efcda69f22162c2e6d4419d0a40302047c435bb500673065023100b845299ebbf4cde13ea9fceff18f98084d6d448bd048d699089f045e840f017f4f97b19c2c2196f3aac2620b36cad44602306723193eea8d1d3fb1b4bccc5aa73c4b51ad082a662e9c89a15b829bab62428db63573ade0a2a670c3d805b14ddb17670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306da9ac442ee02df423dec06ad17894313205a68b2179cd652e88476e0a394698ef9e6dd33f34beb87e5b20364f1be20c023100d016b10891e0a26f8f4879e3ad21aca6c55d2b46931a3ae7864d51b5ad796488ad84a60fb348981bad186bf97aef12aa0302047c435bb50066306402301171ec629242bdcb184efbcdfac6dd67e20760305d941e7d6ba3c9bed6835f8c520e5824b826a8f456327ce6fab92f1f023076c7dcd6568c4c52107e7f4cd1d0e2349c93665f5bd82beca995f30829a3c841281a5bbc6a6e7d878578422d5ee6cc550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023052b426581ecf651c7c70715e708b766e859aae1aabe560b99c2185741bbd2ce56f2bd95685dbfba410a32f07fc34e4210230414ff67f0844bb457ee77eb775ff9085101864c48cdaa07f740f47cf6dc4604d3ef8a1603540cf0fa8ea55b06c6dc8f50302047c435bb50066306402306504fca5a7573b3fb6c48e173f1920cae846f8ada7eefbd833e18c155bd6bdadafbee7f415f2212b82e2392634cf080d023021a745355126bc8fe89e4db59ff2a1a3dce68935c5fc71e2b90d07a5be6ae7429d987ad16904426e6e4821afe290e13b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230350950a0a36449746fcd981024de70229aa8b3f136a2dca6b47a1f554ad7f94ba0f4579481c90ede4a36a8c0a31b46f902305cdbe7c1d9766ea947748de63b59446b550b6ed20dd32101cf5f4b8d025680e137ca2ac6133e759fa632d06aabeff2eb0302047c435bb500673065023100c982119a1ceb40e4868fe52bf16de15e0b82716104693afc34ce375a2f1aa5eed370263f275c5dd94d6025ead8edc64102301fe08f4c42ead45f7bda8db549dd5161c52e71234bcb3e5553a2991b330809ab5f861bfcf3fc7ff4af315c53a31fefea0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f25f8f59dc546da6712ecf0fcc49b8ee28db3ce49c8a926ef05cd900bc81836b8eea0b4a425ba9cabe7fecc7c878194e02303a904389da3c39055215faf2ec7bdfe05382fa640cfd85be5f7094ed3d7944c61702867a0fd00a79f8dab4f48dd170350302047c435bb50066306402301e13d6e970ec87cff31cc709bfbfd2fa5e5f4270bf215976be48327659930ae9222eacb6ea78d7f30223eb984392c86502300a014068aa5241de27570631ddace7e88f3a99fa46161e912d527d9b3a79363390735563681edd3a005ca2f7e0550b200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c4e88f69da18bd9c215456bf0912270e4e0a6ba9093d154d39988164cc7007f0d57b1b80d002fbc1187b167842486b3d02306c7b165ee231af51cd7767124984ac7eea73fd60dc2f1998514548c68ebcdff553790620495f3d12a2895bc28016a1b80302047c435bb5006730650230776a920dbf5ac2a4462ce0a649efa81ea260b5d0c2a49560963abba974776375b4c9e337d2e9a8939eee68e79a855506023100950afe9213c136a5def064f96e07910bcb53a7146aea40ec2d9bc8c158bc4000854cf0f694bfa9932b72c8f60b47a9760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023079f9c3a254168afd9b4884396441d9930e51a15433f107483f45907d5cca296888378c703e41a7f316297c04f92a3ffb0230779ce67f2b29ed121af3980d52cb1077a868ca8db3401a8437c4a4cd54fcc37791c9d48d8c5d819dc807ab480880a21a0302047c435bb50066306402307217cdb73ec6e893f0de04dd70024519a19c1ccf26f5e932f2488e127fe2c9b29654c7284426cc86fc67c83c08be7ae1023044b79124794c23212235ed025bd56eac669965c3638904d2ba48ee4c70dd1f2f632ec867990e7ea1e11c03d9bb7746db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023070bedca1b593b4ccb440c47e582fbe3278184ee3638a027b838d58bdb3ba4ba94d98fdaa910db6b41cee311d77f3867602304ecbfa2e49b80c7a6144bcd8a6b25ecbafade031e49510d53aa50c3cdd0925ccb4b8c5289e58dae1873575365e78d1df0302047c435bb500673065023073287c6ed2684bc4f6ff4d9eb4a518a337c2a3bf7aeabe1a3f002dff32ad5932150dbf5eea3281c37cf3ce4b02dc56080231009746d52f7e8fe6be4bd456f1eaa461f7c3d397012bda04b1b235145740b19c85776f89a347ac025fa0625704f8e28dc90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301c2200346f311c8a317d402977eb5f66656ba5eeb979f01d6b4c3203f0fe3dfff8a11156c8e5f4f952ff7d6330a1b461023100b013affbddb11ebc4b3ccfcc1619c8d454a91af27bb89923d32c1381559c04aedca9b0fd563d29903cfe9b0045f386480302047c435bb50068306602310098531cfac943450aa4199ea5c9484e30aa0b80b7396e558dc40ec1e1bab4c8e5cb095e3d2d47c67a2e491350efd6a8d80231009fa03b18b3bb8eab3f9c910be9de91603f53a4cc7b090b86e6b974a6903f763e2591aa736e8f6d4ffc1118ab000cb6dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bd1f38556e1d52e4090fb16c7f98a198fef90c1b1db659768696c29fa3bd5c2b0d3aa42316059fa99e71215cf606d72502310084856de03a28c71f56090d694a69e3ce992d7ffc0b0e76bf7309700bbe51d9f768a7d1f9ad08ff011c1f6165a3c354700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fe5ffda331bb0d926523754f009dc62d835f16feb49261b28e213f62d44c6c4a4b34a121de64e4992b01627895a8aa60023100c48437984fbf556d3f39c0be6d34fd92cd877fd9bbbb3b19b97963c733b94b827410a2fb7cb6693460dab2d831509a240302047c435bb500673065023100a3fcd57d42f65e638ef5ac5dc3950e79db05c160b05fb0dd117f67c11fd20153b5e53ce70d264f37f9097f9ad3f72f800230790ed12b36fed3aa2902410960c265133a45062ebfa5e464e7d1366904905fb7dfb4ff2ab4b5bdf0195e039baa5245d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023050985b1f519e72987be1db315b8a9b3192648de22b5019632e3fee1ae9ab362045fb3e4b643b8913765fe3af990debfb02310095bf607d1c15c0532ae82137def6b7ed456026251d234214eda61c3bb2ad75cc290fd2dec6acf3dd7534037d2fbed9c40302047c435bb50066306402305d53318434e3b681ca080c7efa1528c4e101e0c16ac07530b5250cfddb010ab5ce1ddf6a1b71863739e1ea7744d5359602306e8852646386b96a680cc70a338ebe90939a92e10ee7c3f38f30b3682709b1d178f93faec9844313ff1f9abbe6bd3b6f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230682c12730e0c72ed384dce5a26b4eafad02f7a59fa9598e07aa324b8c912467c97c1000679159f4d794a3d36d12b81ca023100d13e90c5016335d7858cf49f6c539804745c5354eb6d6b182a825c972748032aa10045e674eba040c9c330216ec5309a0302047c435bb500673065023037e5fdb136b90d08c2ba2b0ab182d28e7deead37e5249f9e7b842bafc7937f689004e86791864dd65d6f7236c3c53af90231009607d53a9eed2915a5b63993a2bb25742c6553a0cd7b951603a38fa1878e2f1c6f874a04b74426131b282811019056720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009b1f74918b646a9290f1c027dc61966fc234775929ed1f9403a0711d8f80382cf5e0666c071428cba75855a052ea682502310096b32de06105a0c442542a60bd2cab0f226097149591b128f8f9eda74665b776da72a1e6fe6da6689f08c32d0bbf7bf40302047c435bb50067306502304941df722f27bd411551d99f883d0acec02d9e6208a7520566f67b97fdce2551d7b42bc60b6a24cdece72c546bfcb3d50231009a7deda8be826d496ce34b5940937115977246fb0219c0e811363e9ee2863c3347ea96802d1d2cc45133e3a182dbeb5e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300e95264e828e7afe5989cfa27906876282adede4098599574277b99d3e11f9835f5bd1fa575ea25b075c35afaac32e00023070976a19179e06b91cf126dd7116e746f45a477b2a90b76436b42f1a3570c758eaaf1fc5ab8fd4d75a60138ba60f84eb0302047c435bb500683066023100b2fabe012ca7ce1131615816669b94960edb010deaa0f8e817bcd6ce3248bafaae7147cf59e067684faf5a51e13ef30a023100865a3700ca654c352cf90449406a5ea22c7c477a76722ea7132aec42a1f7ac8b77ac24d15ba659406c8215666a87c4a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230084ead9a0d91fd32514e176850d20bb1e4207ed71e2c58b42f67231f0f5950e7f80a5f9a7c527f5e1497bf70c21cb1be0230686f81f69a4f8e5f9a22403854a61141be6f01c063d89608c4218cb77d9a94c7ac28cdb1261547a1ca9a4a3ad969544e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305c07695ff69065038ebfc8aaf7078e533528af8e7d48476792c32e5b331f82de95f187830b46f153afaecb9eaf2666bc023100fc9c8770931151af4036b54e09921e1522909537a5f0e48a9639dfc2492f0a9261eb62d556f764e703f20b51573db33a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230118d3c6c88ded3a7b2ce3efca3e5dc0b5df9d0ce2825267f980437dcbc3f6ea705645d1c8425cc37598b824aea3e7d78023100e3ac8c321c6f9f16090e709194a8cc592891c5c8408759ecbd854700feef2305b8c2eb3ea85b142166350d6d55ad67b30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100926c76d3d00968b415be5de353011cca746521f702ec51ce348afbbc5f24b5f6bf944f1ddc78259adaf55997e58e57db023100e8e2e3977bb79cfe2efc15dcf4b6cfbfab9d4c6ba9a5d1aad75a8f0bdace6f1a2ba0d4c102b8da9d08214b36ea6a62400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300b4bbefff4a312a11ed144a08568b43d73e3414170dbbf122f467aa87bf465601f877c48eafd6832722ac76f01f1ff7e023100fe45f55f6682bf1566a48fb361d794f424eed6c9a4b1d9d50e3a07b22eaf5fcf23617b5d1feaa7438e272ed2ad7883ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303b2b280bb4d2b6f59496c31b082ae6fb9c56b142287e66fa439fbb6913a3eb21cf970fac0b259e205ad51b1bf222eead02302a60a1ae29f24e05192e56ea0e36e8689524bb4ba43b4f2cbac72e170d4918ebb1185732bda3c480cfedd50860751d7c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306e534352594d15a7e09a663521df9ce03a5f8ac90f5d9e5da475137c0e46776a8a98e14766f387e9c2a0b5c665f89199023100bd669c96de110820b640a640c685b3aedd3107d084fd06257f8600264af4e059c4c1e9c87724df28c2fe732dc7d4f9760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c0392504729182e2017fced9e9b55a98ce26cff14df58ea3dfad00bc87ab97f291f506b458d3e7f136101d16e258222d02301521b7d4600ae633df72d34aa39c739fb5c0a37bf9d9e211983eb177da160ac46906840ecc1626cad32e77116bed61780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306cead12fc056adaa14a5d8216a89edda7c6e94178aec6bd235fdb582d4522ad8a171c1f537b1cd71f80fb69547948bb8023100a776ee7f10901caff8454d38c692f7cff244408a0bba613d1c2352715d2a4c0106fb084977c3506481c92f6f0feea9190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310095b40e788ed097c4c8936746b988724eb843400a68e95e84819f0a64e9ec05f753f23e665465e9afb183f0ca7bcc241602300730c02b008ec323753d406bec29cd6924ded4cec5b80e94c4a298b1b02a81ee04ec0f3c688f43c74ffbe7c06dc656ce0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a306a1616daf00c5d7a3317d19a62f220deb33a5c3d165fdd7096aeec23e067f67ca91fb8a393dee89901a984eb7efa502303bbcd56019577988fcd7b9a08b094c7365bee517dc761579034c02a0772a2b51fe807e9cee61c5211c477994c78676a20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303beebaa83cdb6fef82b699f3fad94f0dbb11cec86396e29fd235b124a2c00775fd873af0c9c6081f1daa39d2e7c94598023100de662785981bafa416254361168b15b45260216286a83046640c78ba0cf126ff37e49abe3ee9db3a913d1377c2ed32870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307e8c2e69b03544fe103a970c68eefa2515e49452629a04f4c3e4b36227a02b04c4483a3c91c7f5ac07c6bac82be015d002306667ad39a85dd83c5d16acf02746d7c96d9ddaf305ad88bd54d5f988677402a823477a8613f7066d28806fbd6a68f7770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023008ecc7529e3c7418beec5d03c538dc4acd7c4e1845cc0ef5cc1827b2b6abfa72a8b4656dba9e356f47e04247cc84f919023100d075a5c90f957de737b5615afdb76e73fe85da42b93ef5a04d6632d14bd5e2e3d573d280a07b734a3a6914eacc81ccdb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009a54c3226271fbe45006a2f53c0e9d753962ed1d79349e523cde5bf8f3fd85e5e2b3c9620df4182e67793e1237d57da402310086c7cfeafbed086a89a5d3709acc522f8fe826f6611987ff03a5344e04ebb6f158bc4706221906e39f90fd562b5ef4c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305cff2e784242d2283550890016b840911961a1ff6708a4a3759d7c65c6139ec4f7fed52439f505581ca8efd2ae74ff9a02304c089415f3a8aefa0fd9a8964d7e6484d8b33eafecb51ada92709b066e2a4d17dedbfc748178ebed1744e5e6ca44978e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f3f412a05c525279d53975586e2aca7360004708c3d2d5c63b94202acac3a8ad41690786225fded5025d2668c5dcb77d023100d5f5d450e30453822293d12489b5981200f1f78648e8e3189b9111f35ffc09593edd453ddeb90a3b69928e76561ca7020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304b097807f7c742982aa32e065dbe9a786f1dd57c66674822bcec936dea9c013048a1fa8cf0d13f7d16276c294af54fbb023100ca1dbf601afa74ba7ab2aae1b1d0b51e2e5c8b36b506edb2c0c21606c00c4281da0c8d4e9cf6f7be8f39276500b113b00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a3e42e88eb1cd9bd6de76b56f51f35aa9ac5d6349c354869f257fe39d0d16be557447f53bf5ae90ef27be592fe5e1960023100a67c84a14f6bb5beab100f29dc152f1e86db2ad0423eba64ddce257a3f547a1e18bcf1ce47c4e8a4fd69448f9175f96c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fe5f9d715987952e198fa38fd75fd6b3ea5da7759dfbf8f0765833c48eb43025fb994d23107fca68d0ae7ece5fcf5d6f02310091a32627094e391fe7c2370345cd63c6524aa56d5ea030753980d1ce3372e04d99b01b1f0cf93905b6afe701ccd2f3ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302de6c33993edc3b05da191c65699aff9d4059bf763b0599188764f1d610eb3d332dd755af4e5d2508fdc18945dc49cb9023045699f4e81370af6e11def3c3fc1a598193972e6dd762b92dca603b05e8001553aae1df1ef393a10165d2f159f0d7a740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bafdf8bc35e0f448be243d22f954614a462389cc7e25d918ea826d88774b71cf80af6c56d1d1ae1d4d67a14d4e367163023100d1978542df915e48741a871debd5bf2ef70e595c86c175c4c0a52a7554fc27bf14cf29d10673f7db46ffce5bcfb1e0d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305c1fbefe354ce79431546f6b854ae4f88fde304bde4f61d37a5fec16da4f55f20da038107ecfb925dd865ed90fb6d22e02302332f1ec534d3cc1ca12abf2f01f14ea4e5741d17a6284195f5673cbcd2bb3cdcb3c678c4d6cc202e3f2f18f9487359e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b42c0b3ae247755aefc979770b4624a3e30a52045afb7d3e46699fe190eed862e7a4f2be2cb6e8fca86ee7cb33c7848a023046cabb8e026a8e3412e55ff372246957c9235597e6e2e9d7a00ffee6beaa00308f34f15bc894547838a4f007a85ea5c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310099b98e67bb4df1e8fd156c235a2ecec132c3ce1e8bd329a4e94ee3736836489f82a30f1cf844e75afb914324143358000230369fcef9d34675ac6a8eb464884fbe0832ca8151879f75fc39dd6c8378313e9e30e9f80ae3e7f5f0d0a8d3a59d1600430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230487aba2a5d4cf3062c772be81ac2bb70eaef5719e8d3a4955f0865f509dda3b357760db69f588979bfd3c18af16b131f0231008771bd9825c299143c4a7ce1904732c692cf05911dc4ff5910791e77b92496bbe189fd121e18579bbcaa06d70dec74930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023042bcb1ec59fc38a8e402cdd6674bd8bffc057b0f94fe3a790094bc53c901bc7df5f51e548dd5144fe1688e750fb4eb65023100aa89c854100f4868ac768f711272ca0ad964841bc0ea38347b33f9bc357d89e4266c98f4421ab14282858c18ca783ce50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ecdf4fc20ad73e0b8072adc22f0a065d65622cb88359f550755518956404f9fecdcbdd38da5a583e9ba32d3ed00e450e023100b8564b93eae4631f26702d9af1ad1c49e3719b85d144a6184ef56f841f2feb2d14c845c351863b4bdd2f00fabae012380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307b501f866d585a54f4787fb3723763fabc118da612edbababae0f91920d3012b3278b06333c920b3053fd68dcafe375e023070242c95f1f3af5e88519ab8e00bca185abcaecd82fceabaca39a15d26024993fd64ed54f20b8a79b8fe5c7534afee320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a049b9702c0bc765f9a48ea0883a674539d906a0c9110042df786dd5bc8648733dc1158f04765e7743a456a2e9e0698e023100cb908284db00d30e740df78cff8a7fc19400180eb50515379fb89e4acfa93abdb13d92247e121bf7eb8ac8faef8ca2a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307fb75106ac9b4e65b2e1948bbf7ee68c6250aeee034fe700cba1c48bc57588ecbc6abc14888c77dcbd00b9fa2ea9a0da023100ee39fd0a91c743851de2b32450161e5048d8861eba804bc1f068779f4774c54b57d1997d893e82761954f281cd68455f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100abaeb8b94e377adc5b971f2f23e76f54daa39f756475f053db3abdd12b5a6b8ecad449a91717c2a37a91dd4ae48695f0023025bc6608e7d84f232c1a4d744b912a15f09ff31a7456868e6ac4141369a3f334d5c7347d7ff9d9618240272cdd3730b20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a6ab1d6864a93b31b5bced489fc4cea3df87fabf6da764e1fda666c596acedb557e600f10f65cfbf7479197f4e4e40f502302b838ae59344b5f8505cfb0b64e49e5400b6075353ef91b039c88e9a1db3b01c0684a42a739afd472505ff3b80b5cfbb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a8fdf227347a86fc46c71da31054c2537da9569d64c1e0ed1e8b8ab27dbd389d810d8ddf2e9d61bf4373139eade4eba8023100f75ff672243ba505f94480926c0bd3dc70a759f3356e30137f2f26f3c71fb38e6edbee436646b5bf1839977d8b6685fc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d7740a6cc3acaa712a32661302c36d0edfde76f159995b979b10bb673c09b4327ab1be9d5912fb1dc9fe459442c56220023020bf1b6d404144202db9dbbce904fba91d75a1c568953abad2fa41bcf8fd0f94a3dfb68718cf8104e86277e92f721eaa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d31ca7c2a1fd1b9a3a2da2f22bb88953e32fe3256b7c340efcba83f9b1b201b05ae35656843f63e0cf38d7aa01c7ab850231008dc95cb02415dc34e1b1195ff44cdf9be056e342d6e5036bb835e36a80cccc6ddfff9f20b219f8c9ff438d04bc38f92b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008f04eac31116f2655cfd74fe785f081dac915eade1b38105945536fce87b5ac7d9bcd287be8ff1965d915f807f8f5d4002300e3268a05f9deb76bd856ac92ddb63e9efa095b15cbd96c33f92228f7b81b8cdc55434681932534699196b892ac5e2060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c0648847499ec7bdde54ccaa72d196d47572577b9bf2d5f267b01ac8593165f9ed634d4f41c9cc174c3a889b42c41b95023100ea983363d3060bdbd0dffa2fd26f9c5f31ced1b26bf933cd495c792e96417a54b9cadff4a59ae70ed58912b0c89b2d630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303f3e9fd6b6a3d7cc29c887b12a956da65f0e7958efbcf7a8b7ec69750380b19e14a5c4b8924df37b774404f1bbe99b38023100971690d5633ec50c3faedc3eb66e5a02758ebd8c1358f09f8efb9e48098cfb170d86287272b8975cd9a90122053c38050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023009f2ce1848b14760a3af66ce7386d05f61c719e2577bc5e38f4a3238f211a1e608518f0286d44a6ab0a0baec675efed7023100fe59e49d78314cab48ece98ae47af17985f2ff4905c1aa2cfb8520c732a7056786ff6556e47f7089b88527449984af3b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230710abffc1782366b0feaa50bda5d49af64e64611be5571a944a7a6f3d0fdbcd997896d8198154c64606a009b77b6d3ec0231009418971955251d195a785e43fdd86c0ccb54a08112d7d4c20875ec256f07150889d2ba8219a11d3d0e87fb8ade1230030302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310096844382d94f3e441b17d75fa8666dd47707dcc2fed699820ddfc0dd013cfe754966e5d3d789962f5709582768df12f602302f310e8ad7ee5a1b99fb8e8cd455085afe96d34eaaf84a6d4b08466d4cc8cff75f04b82b78eaa9d48eaab275693546af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230214f09420e5e7299dd3b724bed2bafb2712afac46580468626ed6071236564feb67157fb3fe5bdff82ebb49bec177feb02307dd0b4e5a6b2bab05d4e82ad2a1ce7b7c44b51b0f35baadc957f135a8d33cd89081c28c770452eac9338e2debaf96ed10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301b73ecf26609a6b8645d8f6212155035b25b1e47f7146d6868ced4e730064162b22e8e33c62f85ce1f7beb5f2c89eea3023052651b995fa708c6e08d7f1c7e2fd1e4c190db874b08328cc957360fffe642c69fe31301357e3a23cce7d2fd27e0bd8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023038016103868caaed9ec12bcd8821c78ced0a672956e64a54bc914e145e36a758c2460375cfb6d0d2b6f6b1e4c055bdc30231009d6e0856445762624236a475e66dcf6cad0d6e78c5fcf0768d0a293ba4440aec682d9c911b033a3853fdb106bd625b960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302622aff6517b907c3fcd93a4395387e72490865f3743973df9d245ca5494a3cb7607fcdbe1144a28fafbfce431838381023017d2e6c2df7ea8a1aa39802fe4ddeecc149c82a1b3da09311396f6093e120b1ae739aeb936906d6f8f0c79944eee2e2a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304011b6656d2e2c24caf307c29f036e66c0957b19219132f02aa14ad239e64f314994c33bf8fbfed1a78c523ca63c1dc4023100e2250f2d9301ef271462a1380b537f02158d015a84aedeb3ce757c6bbabc355f85d3e05ced9ced31ae21cb16c9f7fdb60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023056d5c4b3921f71b0f6d0a40b68fe4c10a40b611b5137d1ea2a13781425c4f6d77072c142a22df29df2e9ac465ecc83d202307a2db59a030e76a92c245fc1ef53f6e3440b95506be0850009fd4983ad271a4572df748798d6ac9e1917b7afa78897e50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008814adbeb05138700abf112b4cf9212974046272246c2e622dc5536a5449df150422b7163d75801bd6795f75d293554b023100fd140d421e48063d313a328876b60679551d9c646e5a60a2700ff2343fe0b77e8c66ebabe4b572c89c8cd3140b5e930a0302047c435bb50067306502304682d951af2c5b55b4958ea85afb85cc8c630559a29c9e77b52cbf234b0b457cadc887635f11d3444f69beb5bed486ee02310098052452322dd8805df4b65afa8d88b33388a1999a1a5a85299366aa718dd3f45d00fd28d26f7f243fab2370509197af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f1ac27ec58e1abba568d31f56a4e0f5543d9db2af3fd4efe0806fbc73ae86df396a8e1bec616d36548afdc1ebf63c142023100f1391a285f6aec6458684234fd9f0aa3cc10e43250f6231b810d44d9a3787b5a283a864aa5d24a6ac9fa2453cc5770650302047c435bb500673065023039272867cc4b3c662d445a80c81d89f0268c5175fcb7d564bddb154d89f81d6a181d675cb0f6ecb7fd9032507bed0415023100e2e471e0791bcbf57cbbeb985c97462960794e8c4d1ae05d32502805263cd7b21ef3b3363fd4be6e193cc494dc3ad1550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303d2dac4985ea9a105c1df30d8a84cc25ef7da476cc641242e5af315e28dacd10c9e9c73cb667193f61e4b18675e934320230057fe0a0ca7ba1bccd05cc1b6964d41415853d6199cc0830c08a7192ba64f06144e008ed90061380fadef057f5d6fbe60302047c435bb500683066023100e8234199d6ddfc9da7e5dd971d1d6c1ab0ac50be7c6ae17a68e111f5229858d99f06e60cf8058f99d0b327ad3a7a466b023100ef750a0ca2bc623a32c60c2ae6ed355ebd86440d4cd675d78042d1fc473ffabda03ceb04c80ca9b33e860e5610b07a7d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300887e47f3ff916fd187ca870169bc9877022b3de4f24ab1d320e4a196b8d40800889025a2f420cbb451732657ceca8e9023034540dfecf18e0fdba4d1a1755511de83772f1943db98377ed146b612122b08b8f9ee152dbdd663e204bc6bc5f7526920302047c435bb500673065023100c0f7bcc384a2f09a7b5f5348fc5fe2c20cae805868af28facd2103e0750fc558575ab424d998d600954b8f4dce20543202305354a3f6c1b8156e67a2946b2cc134e57488d5c4dfa52ae2f0ec187492a1b7aead076d79d4c3f26e3e0504bd1d4f80880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009f8ac8947638f8a76ba5598bcf282a5e0391f61ac6274afba19c11f19d751f5359173533235ece5afdeaa05b8d5acc58023100ef54d42ac911fbd2a0bb0c783b74e8bd2c5b4af00f7c3fecb00b75b08402cc14e8964268677cfac1082891caee1002460302047c435bb500683066023100d9e1c0d8c167829bdef3905b758371e4e4fa8a0f4d2d0fc3f0192552a6e829414f1e452947e660f06e05e726b8c2c9f0023100d00c134253682be16706e705f8e1d951c84fef0e4cdfa05636982fccaef723a458412c608595d56bfdfcc96070ae80850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bafd7b43854cce9edc7e3c63a73533057c3df3bcf0d72e53559c54a1b1d43be7f29b7a9b13992289f678d338839bec3e023100ff8c526c1b7c36b9a5cf61e844c8c68a3d8b8b15889344e4567ba35b4d3878f2b9a19c77642050fb1c6195a5339567d50302047c435bb500663064023059ce5596ea90c4736973ca2781c3fa2086423067a366858c66abfbc495f814c927caa961b4738a673c0d27f471821f0602306afaed46003b7d8266fa440e735a94c365646d471e50e0813916546a3bd271e999aaa8fdd31b394dfc652ff45e3b8c210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100af8e97624b26c792ec50426129d871c91cd4cfdaaff0ceb86d4ab5208a56cd70ced45c9958ad4ae9e46a967d7c2d021502303783ca9ce7dd13a48dddbee4c521fcf791a458f43cbc372a08187cbe44395fad3ba6951c79014d9b1a3e5716ea317d760302047c435bb500683066023100be502a17fa3a9f0886aeb78dadf1a38334c222f17427916d7571e3864a21ac7ab3489854cdfd9e9079c936db8034fb5b023100dab91220b2da76ba617a37bb1c36d46bebebbc54775c407d7046b45311fccafaa0807100d39ec44274ad64ef3307b3610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305136ceea31dbf4bd2a03f221d9c8f3a0bf5a10b5b7e62ff80b67c85d22eee26c201f6baeed4ed99bffeedc34d3ea563b023100b98883f956e93a2870172982a453631af27ddec511a2376e0bef9949bfae48352dae2b91d0545ad95e11448eadddc5e80302047c435bb500673065023100bd5d8da7839ebe8c06a20a1e433e94dbdd94bca45ca6020ef7f4b2706a39ea906205a7a79933dc67ffd342ee9c52d615023000dcea7510c7683d32fe1bad352795aa745af149fd957f8e9633eced2f04f1ad01f11b41b1dc285ff9c839937a3c276d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230538f751686d1db2addfb08ca70b25106cb09ce2fae0aed7ef9aca43db510d486e13157cfcdcf7e730ad6b507a32a8cd2023018afc88fe9f765e58677baa4c52bedfa434ee06fbb3e59a637516353819cdc15d61b9e2cb82128cd17c2d7edf237b3ec0302047c435bb500683066023100bf107d1ffc77c8ef8733cb1b77b7b2de87ff83a3eab3b0903046bb2d2d76bb5a152a6df91d202d23d241a1d34d5b0b5402310081c18d08be2e9c146eb902e19a3c2b1744de89aaaaaf893111ce1955326917e57759714543ffbf7f3e48ab0a6fea1d510302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230761788bdf3a8313a4538e5ee4284bd00d4c6377ce6fa0b6510d946b6ceb931eabe6d182705526b242e9d61ccad76026c02310093687d2daa042e8a9b310c9caa08a6ed3f035b089f02fbc03c0790b314d9b43de59451009e53378e7a107183e70193720302047c435bb50067306502301bc59ad7f647ae591c25b3e7e6736093ac9630a8ed40d9f28eaf65218a9d8d52a5de18317f85d5a673df506a00eb0672023100a63dd712315ff27b7a02d9fa307c81ac4fc3842e2c1ad1ce8db6a4f7f6489a60a4361f746ed83ef9e244b084be77e9060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303921b3bb0a96de3c26bce71e708fb5cf57fce9fb57c7ebf3f2283a0904a23652951ad5f9766cbec5087a52e39b466fc3023100eac38878c08f72cc553bf3d6e5341b2aa32d0ea2c5a582d31b35570f9b3a37b8788b3ae6fe0dc2de6195a52d54a0ca410302047c435bb5006730650230225df65d7dfb5ad32d59fac30594900e6e1c1fa33f0addddd6386436427c0f7fea73c19a80acea8cd46d59d8477477f4023100a3f5724d3ee8bfdb1d6d1dd8341be632f4e505ea0fc33f73aa6c8882acbaa3f5a3b98d00cb2a9088bc02e8fb7204a3e40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230568d08fdcab34c14ad074ab509cfb9e514ea67f7a27adfdd0cf1162d19c409a57db23345bd9e2b48b10394ffbfc163d50231009dcc6938e612bb97de2b4c896c0457fa381dddbbdfbd2f70031fed8c96ddd102a1b1208f342538b3f6b821fc6141b1e80302047c435bb500673065023100b911ca67872afc6fb619a8adfabbe2d4c0d989dcc96201bc215883e27d2a5de2992e6503c87ead8bf78a0d70aeca804102300ebb0f5f26cf05092c3664d38f01bfe42c0516933a8abafa059123284f339a14b4d60e9553a8004d937e94ca4c26bd400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e4d2f172d7c582f599d5a3c40b61b5f78809849198d20717d2599d30b8f710ef1ea1ab90d6af060e7eae7d4bab618c6a0231008e4d99385d2af8209d0bc58ec37e0c8d5ae9c5d4b5eb653766ce567fe5b4070ed55f4dfbabd624dcdfa08ff9a3b8e2290302047c435bb500673065023100fbe703789be3482a730cf0fc6dd36130153f436c7b64343f135720f4d7f1852042d65dc4934e4261161547749d225c9102303397ae48bc64ee23adf899789286a03a1a4c47894fcfd55356d3c3913ac0937451524e82355f506502c77e3a43f2407c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302a3f534d7ddf658ceba6cade86bdaf7ddc59c7c3842bf7798bcd2d13a85756a7a5307c4f0761ede87caf577bf0910d17023100daa3d54fbf7540789bbf70e5c3a9de09dec7aa14623b17b542d4bb5365895631b70a2c03755a598142e04218531fd0210302047c435bb5006630640230062ecaa0239dee39f123f2005bd3eeb5efb09684a2c40de2b51f286a89eb654b73770d5045367a2f4d0a7a86c272de71023021f7299bec1bd8c1565f404d2c32c0c75ed83de40fe35973b036cf44cb847219fd7a69fab3c632b4296757a7eb6671b10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023041ef6b1079fd44d2f2c529c1ef611f47c14c6888168c311f235f22182c82db5ed779fb8dc522a088bcab6704b461c655023100a1ca71d039575d6c00db476f6e74602e52f6eaff492c8927d1be036810397d6922679ebc42e3d313a5a726b2d7805f0d0302047c435bb500673065023100e17f3c444aea9e2362a9150d26f1be260b0b5b3e4dea42bf2fde2eeb8e79554f2417431ddb0a117f82688681991b064202306d0ece03f161c25bbd7b43433ef20b9f2435f7d34b379a0e15897d1cb3f3e069be3ff268cc46eb8f4371020237b7e9520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023032886a45eaebfe037a72057cc12cfb48c8ff6ae9046afe62fdb8a06344f1820de300ae80e22a01be3375226714795e16023100e573d3af621f57171d396b6646cccba433a9da1dbebac762a3951cba122ec2cb56ddc3d33e5da676f23d51a85af4b5640302047c435bb500683066023100b5984b39a207dc1e7c39cfd30521d907266b6060c01f39e7f008082e131c41804a5ea755ae35e0d57762ebaca2707800023100f964c8500b758c185642dc8d8ee4be8e43fa7de665d0b709c0443a12345d36e4370b2fcd75e3608439dac5085d9bbb2a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230248497d20555e49e143e7e8d0d4c5ee23af01b26724273a7f884c034f4b4962ce8cb65ff44b06c7b46a8a820ad01b3af0231009436003ba23e94ced053b49e56688eed2d27c446de1db10fc01f1fcd5c2dd09b1e85da8170d86dd571945e84af1022b80302047c435bb50066306402306625654957973c908a98a75b454e2fae4bc8b6d51f02069aeaca12f328468cbb9dab66e8762785aa3a68ca42b9e812c20230423664f9d56b8470ef7b677055def4329c3680faf951ca308ecdd8278c3b647b2f1f2a5818301a369970816a144493e50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c852242f2e416855f2d8b62fee0e077f9b93296b9c5965c1a6b692b2085b8323f88c119a46395c541cb6d645f0c227bb0230358384747d6ae3dd08cf3bce85241349d55c0f762d6912c8457f8de1627dd532266f40d9b8991de2d287f8b3e6fcda680302047c435bb5006730650230381ac205723f431a3116444558ea1e5c30235b1957888689d468273919b1c6ca8038c2145cc2e19bf49e42c563f159720231008f00cec802f0e3afde8551704efae14f2202cabe246c4b6d7ddcb64eb099b720be6853aa65eb34f80f34f4375efc63200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a657198748a006ef5961c7a08ecd5d65cfd06617423dc0162317a270a585273e503f66108976511264d6e1564bdb7221023071f1fbc3c8e5449e86a9a47bb6433beec8620bb6ba7c3df6ca2842d5c569498ab73d00e7785b47f6763d946b1fa8eb040302047c435bb500683066023100e3ebe02b17eeec5030f7fb112842f4536cbd9d33f79c3d55325c1a7f7e45005c1e010b01792fcdc21a8ffaac58cd314f023100da62b96602ec0ccbb61231f901d432cf8645408b1605cf38c85cc348179ed150b64c52c86d49ebf88847c86e2c4517360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b79acaea1c4424091e69f5f6d708a7ad443e96d7e60530e3d1c11a05e92ff9e559a2bcd2dc48df2a1659429cb59d3539023023a8abdbb43beae3a25f780b8795a01fee213dd3f9cf1eec6b9bededfc26d1abd842318e1f9642c334d3b1e5ee004c170302047c435bb500673065023100bd056f71cdf7640de0ffc943ac51468282c849da2c92798c5156b61800933c4dc3bb2135ddcd9f3e9f57ae97d3a0e4c002300f1e3ad9e5eb24a424015b419f3edf4fd131aa61e249235944007f8a1951eb3d198462f2755c88ce415494acf8f579100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301904d77fce1726026f2f8354d8c324a3af6c65e891857259331db1b2276f8ff566b0d5d63df511efcf2876b79a88e2a5023026df0eb2860e0d092bbb473806f6a4bddbd2aa38944e1acb6a74198e41de7a7870f99ae8de11f01c34d2dae380287c2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304b64a7f05e70cd3ed5ece9843c26a38c17feb63ffe762c6269752711d90f33d8ac445ea0c9985a5aab6fe12b7b8e9267023100a327f2f0a8d96aaeb5983cb879ae3b84f86d86e566bdeba4775682f03bbb796ffa48ef4bd6feb6ea32284d88136a5fc10302047c435bb500683066023100de7da0584159588491557846738fb65a8282f85124694b523fbddd8247a833d9d1126c836653bf7f3c13b53fb121bf17023100e9b9a1f790cfa209721997c85e7a59379fb91f4f8c51c5dea26a56ad21f5d874be1d311f4fd75432908a9c9c24c0940b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bde3802e2380b1298effe845d90940f3822903e7db48f8cc4000e3ee9864aaf76f03caee94f6ccff6102e455bf95b233023100975f9d872186d1830587a6ceac09cb3f2b6a0044d16a244ef2ebc20d464a86c9227503475698305a428a70267244ff890302047c435bb500673065023100a156f12431ea74d30920ce122ac3802b75b53f74a833603cf5dedd92b8cc497f4fd928110b2a87276cc59d7eb9779d8f02302f1c6ba38933399c536199c2719a6b43580b803328280252e70cfda0919de0ad38b1ef987fa22a871c23f888f50a26f40302047c435bb500673065023100e5e10f8d4b56fe26069638fcb8cf312b7dc118ef0f62d35512ab8c65a2df49db753da5a779dc040500d31de9a12dd61e02301dacbac9592596b77d387730af4a9e3526eb0eb5427db0b33fe499146d5a9b29ddddb2c1ee15f703ebfc141acc0fe5970302047c435bb500673065023100ad23598c02fa8797a8bd6971530b4d437fe89e0bd61d4dc15ae21173fe5ef95d402f2b8651047064ce198161b782e1c202300b264b1cee4c4269d89b93e73e0648d08a7bcaffe2cf4dc228063d44cd17cf2c33439cb800d05b736c6528f9f6db00430302047c435bb500673065023100f52015e8f14084b434c875cd56358261395221bee3799db64866d21cf8999f3542914a2dbef204925b47954926a03f910230371ad9f1a76b94cf12e0c1c68505c6a9511cb093614c5fd01c79210de29d32b6436963be5d48fdd72aff18b29d3cf1940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310092614872103969cf9feef48da7682ca43177064053eea19c463f3de25765b539eb41d7108331b3b11eaf1752962f315c023100c82e286767355f3e9e66a590842570958c43634a6e0e8530ff70b8aaba52cdf4a25cd664d283c800b64041a47f8cb9a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eef8e8f8ff8e864359d38de9e08fc1730956904e046ed68502fedd21f49fb7946aedc4934dbb6ddddd8d808e39c85b15023100b9cc8fd0062ecfe22c4ea3a2a600e11b6cf4ef7fc6e5a395319f435bc54a9267e33e23a50d34583b00f9c9dca3d884d30302047c435bb500683066023100c7ab7f9ff9e58e4f2e5e0321f88154c70527b698133ff7b427c526afe00973d2d2261f681bba312e1cd1fee9d68a28fc0231008cd09cbc0b740caaa62b1b271e06d43468ac760bc98e1d7152680aa80d83f72aafce1a6beea9f8ba55be0a82506d55320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e91ab2ee1dc4c33f281efa1654e2d6458d705340a00c592a407f86b47ed7355f47e755fcd801043037d3be4b05c91bfd02304637d5282b8b86138cffcffe8d681345b094da5389f4a9eff3021463f8b721dbc6d5c60f956fe90ec07c86a835e6d71b0302047c435bb500673065023039dbe7d5237f7a688de39b65c5cce29a12acdd480764e4c202208188976e48b438c25b1717f2dff1df9359cd24f0d7cf023100e8c54985a26ba3e2834300ed20441a1935654b54c4f6b739ce8644246e4cc5a53743794a769fb0c93b03f945da839c010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100be36d6bfd27767acb967cff81c83851f21b1fe37c89c0914d85a15d261a6d96422a3cf9df47e295d223ce45c52eb938e023009bffef1883d460e3232a221cf3f3c991c3977a6bcc60c5b091a0517a0a5a96869e4aa52e0b1aa20b9d9409a8e64d9fa0302047c435bb50067306502310091fba5f9e464c3520f62f6a0274e11f9ab28da822f7af4614d358ff7482d7dd4efbb7953eaa20fc09f1393a992e0ae06023065b8e08a7aad78438aa4ad1400a80aa96c67a07fe1d02bfbe1a9b342fd6cb05804d65a16f2637527405beb953d5305a80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023042aee5fe7712fca26b452fd9ef75f382873da4c4f9ed4fb149445cc60d4137173958c084b4a43e0158ab74c50a81f2a3023100e6560e97008ddbc9963b44932c729666ac3411f0c0873ec6d42919221dcf135eff6cd63e717aa838617fcf168d4757570302047c435bb500683066023100caff7823edbf5b9da682fa68afb18c6bff3c502800ac131ffa36ef94a72114305570b5569e3e0ab08488a78a12801f5502310093566fede2947ff5a3db8b2af605b87c84ba748e8c07d51e41f3df8874630627feff11b7e37e7b8abe87e76b0e952cdf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300c04fb675eb2808bd1399f05cdcabadf03784b9a8211f6aee943f08da1515901cf23d024047a2c92171ebc0ad34f859202303528e5ce26a92862b1993bade0308e95f5cc105485b9597ad5da3fb815f6364731f16536a58009f8de76530552595fdc0302047c435bb500683066023100a42f61267b4b6e2672f192c027d3047eb98e95f4405c26408a644ae26d347ec96ddfa77f03e694bc465751e4d2603d1b023100caf296527eaa553f70c1862b6361df080af9747ca45f9dc7ba4545aef3cfda8436d7250a0335e90c518a92c14a7791870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b1ab6f826cb9e3f260e3c1a5730b825b1075686133904140e1a1b850016b04a461e42f0acaf4e396943aa2e9a89831600231008d50872faedf2f2fe07ef0c405ec4d67f7f1bda249d2378b7523b72af44c288f3e12c4f202ef35262c924b44d5d9a2d40302047c435bb50068306602310089baaad9ce3804b30f197aa0824ca15c1abd7a16c6e3862f9d20b8dcc77c73a39887407a299d3d3a177b332e86bac5b6023100f78079af610007fff46f4bdfd2608e38e0ad391cc4baa1c4dbb1955d9dd2b46095075f562b08b7975aa77c34fcaa9c0a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008e29dd4933a9c52c6104daf22aa462b55020c6f26de7459dfb8592c0cdcbb3f1be5c48dc0a10f9857f6b0af189fa6ec50231009db3d36531c4d315c6fadd169f0d17d03e74320b5d3c7eecfef6b3af5096d039c3d53f2233a32359848e74ed4d5a04580302047c435bb500663064023065cfa00267c8f6240dfc3f555c26c0ac7c525d8dd45cfb72ec683e108b1c182448fdd20438c3cd894dc4394183a3d53302300bffdbec019b19e41cccedb980458ed433e75f2ae01b5b741d1526193e2c560eba503f48b1c880484a69496c1a0b65a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fbb25c01ea129a6472a0af373ed9fe52f0fb118f45fae2e4b02f2a9fbab2698ffcc63df9a150f0dec7d2c11a8eeac120023100d6b0023dd00787a0bb3bc85ed539f563a378b5a9ea66e359021128cee246f7b17df6b1fcd75fb0c7b52b1d88724fbb720302047c435bb50066306402303388902a0515b0b3cc7f174d990a5ddc16c807a97473eb33efbe55568ca6f9045e7fbe9d494450c02fb338f74f21197f02301f14175f8dc8fe0c5d59d94943cdcec55d179e2fc344a358a1396af9623d7d227da477ffedcf2b9e3038f4e47e5ed89e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303df7b8eb9f7207bdf0b68d4c0efee0b4b347fe4a78901556534f17906254d41542f6c14017fde13def700c2f21922953023100b56667998f79f4688a8527a3ee2bedb670515e4540a1891f15a4ef4e800d86b14d8981b3864f668dca55de1e7bfe9a410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230761e862c8181322f5242f82461f3d73935f89b2d6e871b4ffb32ea60a0717e7d7f9dd5557484f27a59e913e23688fbe9023100e02649571065823ef684fc3dde17b6839b85aeaf78d86fb670fa4ca1de3614131bda2cd08020a93640f34363fdc9f8740302047c435bb500683066023100b43c6dc1ef062d9cc98fec669f8d9ac989c02655f8b613fa37e965414bb94a23a88c2577011305588cac13135c5d851b023100b67b44668ae32073c3c4d971e6f7eb885ed76eb01adfd0efa1b1a1903347e060348e5c4b64527acd6719da7391d791510302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a0b1f75245ab9b23c8f7a6f87afa1b2fe348870fdeee30c958a949c513e4e163ccb3051b7db9b2b3568b2d1cf7443d2a023100c0958ba7e343d0dad8938637a1e3f347fba4aae4730ad460a2316d2a71829b04f0e0fb026aefddf4ea4c1c51599aea440302047c435bb500683066023100f0544bdebd4a482520c5000d5b281d58b2269faa56e2d4da19b192cc3cbdc1c5b0dc68ff173203aa53eb0bfa8c1e80eb023100a3c0bdd13a8b97288b5ef9eef1217cbd5152a47188fbf2ef8e036b32052c4d2866065e5bcce99741cac8594d66933ef80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008cbcc248c1ee5ab77a8aecb8701ca73c81b2c70dbe8efb5e77cd8831facca324db3c3b1ed58b595750e675d84a7bc28b02310096307768f65f39c36b7e9c036097cbabfb621128feb5ba64749661c475262612d6ac81bc5c1838caac06913b7aed46530302047c435bb500673065023005915f40c4139f3fa06729a052904f4ade80c722dbebbaf7b338af9786380964a2063590e6ccdc113718689f172e8bd502310099fef11f9bd94bae2c0e02f1c64215b34ea4bfa053a5e3dbebff562c977e4eed2f58d95e1505737a6abee49c93eb402c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306dfc413490b2f88baf4759ceb387031329d369af02b6974cd45a8138384af2dc9629be6f6e6dd4132aac3863ab16c01102300958b06c27e73fdaa9ab310d2b123cce851e0c05ea771112378af085cec24adc1818f1b179ddde355a0280a6108e5a250302047c435bb5006830660231009151d8043a676896b63ff48780ff4f54193f73d6c2648bd71bc4dddb724c4229bec8a378687621aeb17a95645672528a023100e9f4bce6a66c072db6f1233c3f6c33c381354ec673467a83b237d91e34050046add60e311a978051af358ab3cbee01fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100968cfc73ffca552d686acfae1c28fa7041c0e9601b36741faeeac0ea1b5683f3fe8a23fdfff79cb0d57ed0e6409677350230647325dfa85eb525a64c3203d7cbf39cdeb84771e51c1327efa9b841ac55fb319ed80df41832c9acb8f6c2ecc04696070302047c435bb500683066023100f12bf1f0cd215d357bcbc4502bcbb146ff5fc4ea2b446e2eb5064a4a8c0b19e7ba97586cda851ea2b2666131c63f5913023100962971d912bfcb3e51e5faa4ecbf733a6aa4a21d13cbc4c9e50422da4b7363100fd431038be95db509d3438bc0ed2de00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500653063023028d5efd007d82a4503e1bf03862ebfa673adeae671a98ba37ecb3c5b8dea4341e8a0e786295960c068afc30954d64657022f4be3340428b82dd0d766b3dc516bf35a28b703269258628203779cc2a76491e029a278a12d16ddf5e84c5ba6408e620302047c435bb500673065023037798234b4db851ae0d91f34478d9d14c2c0ce42d8cf356936456f47a3bbf22738d20eb0833b964f66a151c33c417c5b02310085fabf48f0a98b1433b23c86a1f7e97226cdd084a0ad0ef9d70a64a14752870e471d4521548aad8465d0aa6a3a7b30e40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cb3646268ac87d445cf99d2e2e14b62d5f5db11b35bc6d832fd2254d916df1cc0cfb6c1696dd2c49833707c4a1e54e4d023010a2e98daff7f5334f3b78ec3f305b2f7a4d89c957dce4faa8a70c0a15b86ec0ee60918a415b5f7be8a158f272710c440302047c435bb500673065023100a0ff896cda7c475ef841c69ee761c24021084d40f0d863ce76ced5733da18b3a979bf1143d591158999c56699eae44fa023058b7772b9f0dd2b7b671176b878d96501016a2cdebfb33b0fad6f6c28e27e6d1546b1bab953c240df85efe64dee4bdbd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230079928a43ce08d5435a49dc9b080987d5079111c0de9c06893d02e7bd81d099116732cc6ed318b8fdeb5a1856e54bccc02305431de0eff27b7f3ab17092fc9bdc7c8280b8eb14368d169f61ace9ffaaa2558fd10d393c1745647557785a0df4309770302047c435bb500673065023100de25f71102c3a4b6942e8d3de04a70727a42b8ebcbdf597afdc77b12b107b903b5a7b5a0e9c8ff557baf381099b76e07023036c29f0fca7023955d52a5dec1e2f7f05eb19977467104b432889736735f27ffc68e564427caa53fd7cd90c1accd00ba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310093fb0ff09a879c7f73d934e9251651adc236afc872aa8f79b5b1ec620afba6a3986abc8967014a2314dd26ac16e108e7023100879dfcd69a507e4335af768ec1a88f58ed9f15bd0fc69f8eca96be649460e7c703f29efcea82b686abd9ec21283e11410302047c435bb500673065023100cab8a11fbc174973d98784a740dfed52974fcbe7569ecfbc85ff90a33f019c9212d8449edfce84bb4b941a3c39e7074b02307f5f5704ce17d5ad68f335aefa916def58408a68bd383a07ba68926d29185edea54fae008a75afeaa8f5dab922adf6430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ee146d8f133de970b09dc0c9b1dd1affa56524fd535e38e86068e465f0e52453971212e112b5a52295ab3b2022010fb602300d7f36365684299941f341e1cffe9c29699867f7bb185e7ec54df8b4e3938f44862f962e482ba0c4ab3519492c840b7c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302f22cabe3e11e1ed59d8414c7bbe47d6d06c9b40390684f2ecedcb9e9f8e4c66af5441f7af65084d1167f11389ea147102307a043b6000998bd245d2d4f8b9c148940fa6fe6d4e5cfc82232f37c62d709131ad2fda53f3ad2f92a204bfddfdb36f7a0302047c435bb500683066023100db4772f11603efb52b12500d256f27bcbdef6448a4d82ee2de6e847d528cb3509c8043b932c54caf529392ec2d6418b5023100fbb2b1e7fc715d2144a8700d432d0d8293aa9e05063d35e57de3f65ff3f0c80d440c503cad3a6ec8eb5006ca503e4b7a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305c21def3d2bcd44279d3b02cece9e1076bd54d6498402293d9d6eb2fb7176e4ef08ef2d97e5b16dc03694b6fc96ef54a023100e73f1046b5b46e2f7931bedf5c6702f0e6299c578a7923d3a96c4878b60b6ba7bd062a47e71ab7a50505a939c18061c60302047c435bb5006830660231009a48c4774c4a4d0d6527ebabc50a13e757d620d9ab0d5cc448b67857668472ebe61376208efd49ed1368bc4e6a5ce6a002310099fa720c6b5eb76b1e803e0ac56c391df314e2cbc1cd08479ae050b45e25149ea95233076b068aa38899d3df481485f70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023000f1ec7135d841ebae331c58491c82eb6c66d0171010a2cfb82748a61b8455c9738083ff24c19400bcfa067fd5cdbc2c023100de9729385888b1c37bce0f416283646246c3f7a72ba54a183129c4f5cb76de66867ecf416e5af3e295a8d3b75c34823b0302047c435bb500683066023100bc3e4404a78b95fdc09ebba8d7d1a0f1b0dc21900bdfc62d5351ccd9a1f22d01df987c1d194c1753bb8b1fdf53da6314023100ce95d82e931f6605907cfe0e6e51a6b32d477189d2079804cec883f18372c7eb085d6fb1de4e6b0a18b46eadb6a23a120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023054ba114b6794ef3b45ef901ae488a62fb4c731323b2a7e500929c2f864d2bc505725523289cf9803156171ae3969e0af023100dc2f7bc2f47fabe88582af6ede926b208b53de080a040122a8a5e63d6bfeceee7556372a8ff2ee78fe26a016362ee8300302047c435bb5006730650230576f371de8c828c705a32a589e4b224226854ba58bc704c6655770f79beab8dde9a5984d2ab3c547de69077496b9d993023100df0bace3080aeaf34b463452cca6862a1959485e3ba29d5c00f5a4dc735e52adb95c8685a0fbbeb92a5aac84e63a433b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d861f5834e5eadaff1d0127adb5638c7d7364bf25ee17013ded6b0f59293f5b0f18189d77f142bc0afe479edced66639023100c1f8362b28bee74df9ae28ab142f367a8d462bee04ff6ee938743baf659e75eb6c15345f2a11cade185af1ad603d11370302047c435bb500673065023100e6760793cdaf2ebcffc6b2bb95bb5197ca71659f3b8f4eabdc61e20a1ed9998e3ea2fb15a8fea3edf5e8ed75913f61bd023016900f2cb3eb17427a2f2c21aac31ef62f6da42a1ddff39b37c0a65b2eca05b5b958fc8f848bdea143872116f13a126a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230111217a524a16e4d6b7ad40536066cc70c28687187409f6b04a2ed95547034fcde90d307713d558836d06789173aceab023100afd05c212b4699fd413d9f5481c701d9e86b5b9b8c4a4f691987f0dac701c657b42b5de7a4cb9d5ce13ba42596e430880302047c435bb50067306502305998838560c2fc435aa24fa07c0fd02173350f4123300a7aa7ddaa9b592a59ff4354960c3146ec022dacd29a9d13378a023100e392f155aa8ab4daae625dab780a43a58f0c07a67c392c29b70462bd72d1f6b1d80f6e2599d6d71a0e2003ea90c08da70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306965a82ea412054056ca0645a572aefef8609a5de950e9b9aab448e12f7c7a457bc8f4757d9d0f6f66701e368eec0e11023015aa6b97eadb4a83c37f420f386ef6603ed9e8eae77de936bd34cda64a0c209830beb09a82ee85c2722ae143a870ba5d0302047c435bb5006830660231009a3a80c38a270412bfc513d4f0d029ed5592a7747318b8ceb5728c4672b3f47a61cdab7d65fd7e43e95d27f84f11001b023100c28b323de9a6a890ce42453977047f3ae886dcb2421fb66104b0802afb829516e4e201949181d9799ae521cc8f7fa5740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f050ff37d078de0a73a9178799d1f4851fc0b37dad3bffb57f8e3aedaa8b1743e9bb835007a3027dc140a783d22dfb120230474b7c8f43f15956d59e780afca0027c297e04138796a1c61c116d20735edcb40dc36c8838945fa134aa092f32f084440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302fe9dd5daddd60cb7666ce5e24b71468f2d46ca8024d3f9c59c2a9b57fbfa63fe7618fce3c0a861f123e037a5c33fc7b023100e441e49e939600ef86a4e16fd76697cc46ce9a1ba9d58e4ae34cd9eb32b078cc0feb482709e5d1089238fd967d0450890302047c435bb50066306402304b49666b3d0a4d0d5990dfa55781f6753c851622697d820f3e910b584b7c007ad0a504dced8fed9d4149f802c522649e02307b92083b18413c42b7356624ff49cd9c052084df1caab92ba5ae3b79571e8a4c662d9155496b50d078b62a6752de21410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100854c925548336cd5eccc2632781af134e3533cf73e626adce73584b2de1ee6b61dcf36a8f7950d97001fd5339e4aa342023100b3be7b7a525a32e97866cfd9007883f683fabb5d9e2ee9bf537578333200655e50ab568d600dda5603f61dc64fe92ce80302047c435bb50067306502307c24466780950e12184a0618d01dbd0814c61ccae1f119ed2e141db6588d31f831e41218468ea7931eaf132e063da31c023100ab76f364413d1e856d2e38707597676914fa7f568bd914b8291964df87a6b96a3804f9dafd05a93563b7693c887fe2520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300c604b00e3b6a29372acf051da29933a12a3300016bf3fb706a37c7567a70634dfceac4f316535f59eaa5386ed1faa9c023100c6ca10f45e701dac75fcd1751579935bb33dba3ad04f9e94e14243d13248ff714d4b2b667a60aafaee7bac81ae4ad5300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310094eea40ed557bfecb562a24ac20775443f7997bd3cef03cbedd2e97818efc0650810df86c2e27a898a49395744088ecc023100c32881bec06a2f18c5ee1f5df2de47c1f44798342dd3257be59b1c57c7b50722143315b5da9dd7edf2df24914e3a7d700302047c435bb500673065023078eb815fb6a4dbe82e3e1422a1c8990b4a30239ddaad63542ff2344915fb77abfb802634cc255fdc4fca1a164d424a2d023100f5c0a1a21c5d8a81103dd36a2b4efa0e601b1a2b5d9f5424e84b2d0df6acdbdd52d3cf93654fbac52bbbe7985497d7730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008d16d95fbdd5c88238f0440bddac2973252578103732b17553094b5bf7eee9900a9b6105428996d960386cd5c842533a023100fd43d91220c07311fcc73f709b7b76e4ffc0cedaaa8bbf1a6620e2bd6d9a613e0ee9805acc960d89361089b941c93c2d0302047c435bb500683066023100c253fbbdb39272cfd56fe260c8d3ff630e3841a7d6bf1c041d49cc5cd8ad053ffe4ff84c3d2e574458a99c5ea1f2ee71023100e467333005ad6aef790965d7dd8f2b385212b084126ab2d27e231e48c2d06917a235d7267bec59092f0a59bb0e1a47890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023047b5c041aa8387a92212fad2c25336f53bef5221e5016c89a1cd3a75b43800588c2fb4f45378e188d0c9a6a238c261d70231008b74346d6a9589b2b287fde05645e3b0aca546ced2005904fa7842122fa456529d3693d7c6e06181a3c6536acbc41c620302047c435bb500683066023100ccc809418ff13b63e6f3c89f4831ce7c204ae080c1542afdbc0758db1eda5b9dac7a70bd4ad437e152e37ff794ed4ef3023100e85e76806abb6dd7669afdc55c5de7088bfa2fe6e2075e6492084e6b1b1fbdb9775a84e3db2ffa728bd16a6957bd6cdb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305289a40f74e5bdf1aad65d3ee19634cf2467f63e18173375e25fda3392425a81768b5b8b9deaac2dd685831c0781ee7f023100a3147c3c8987c9afe9cd31b9a38beeff531a241cb32225c6e55beba93dc61eacca792c3d1f5380982e2b410f11ac83920302047c435bb500673065023100c467e700bd81d240fc03c671fd7f51d196e732d410f3cc1d0e9615c03e9dcf1ccde3a0617f8082316f41dede9affb46002307175ce37beb68b51a00e4a4e15570f8677dec5b59dfb9ba60f18d30c795a65bba38106e5b9eda148ee3932becef7aad80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b066fbea7f0c7d3cebdb0fe75ba2fe376eda06d314b03d6a7e5926b8741336a251b0079e56d88ce02e1277a267f84a1e023100b5cabd58271eabe47a79e247480d925d29360e037c455bb1f2309b8e5839f5a2cc61ce47aca8ce1b4a2dff240ecb74e40302047c435bb500683066023100e264d50b1dcae17060e81f492c58b80b246bd7c919e3fcf0d611886e6be64674226588723abc7fc3af3e403a7c361ae8023100f288df6ee3f036b59004d7e5ffcdfbe1103bb522706f0746e10532df8d3c817e3597304333757c59a91dbe51e2ba47650302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500653063023024c6425d51642ab660ebfdf6b977e4caac24a57cbecdacd7fafb139d5834d1dabae59d65401238035e41685d98ad0ddb022f0fcd0bca9d1be4e2ec5fe2cb287809414e3a4caf46622a96f277270125f4620e02d5b0a0a4d81061099ad5ec5069ca0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100db440fd48574d94de48f6f7d09bfbb9347600851a6ab31baec6866e0a75649c94dd37c80bcf25f8c8840da6e23208a810230441bc76ea6bd9035b4164ebb60ffd3f1e57623a8adbebf7492b3f4f7172a81cbdf9300254d04eb757a13f50f55364ef70302047c435bb50067306502302e38b6cbf29616c3b3ef93cdc3b845460826dfceb73924c5b03be7ad11d71274fa7187caed40d3698ee30b931ef1cb21023100f96c0605896cd74fbc8b9f0fd90a2b24d154f9db298c6ca9efdba50b5399f00ac5f1c6332fce9327fd45270867546ab20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307e07f0ab17b1bec5c14388a80cb6a18b486bef047f371edeb7e1fa1197d4e20bdb263160641d0d31192e0b32ad7a1b420230013f550385b36009bbbacb2ba89931131c32bcb74dfc40601f58c4a60462c7943f6cbad3c4a007f9af1eecd7f2251d750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307543d95d0fa982a04ac86532551ded695a1efce154b1dfbc13252ab2085f62216933b51e664a8555cd607a47696d9fbe023025cb7780abc56329cd84d609f0a35ea0e29025860c7910c528dff51b0bb7726a4a9eb45dbc31e1ab759dcbb8dd866ba50302047c435bb50067306502310092ecf913476dd7af792bf6a933205d2485b6433a34d3a2b9a767ea885754f83ba50a236c053f06231f843625b13006c002302f736975beb8911b341daad52d55f6fd95a6ef926284fc776708369d9442767ee8304b30bf38c4c6be80be60abfe12dd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dcf1ed9795eb04add0870c0240585581a10fdc18f89229651da63944fdae4a9e35ab86eeb75c8a0e4610a7721cbeb7c802302b7e182ab387b713aa8206628831b10d4174aee1d2b9175ea0826481625f11c8ec5ca57d943db5115bf5a782cea52f240302047c435bb500663064023038eeea97e89e614d6849f01c1d17a1ba0be27da228bfe3151878626ef8e7bb9aab29a103dd4c559af1524924433b3bd402307dc0ae96b7f35c59563dacad5e5b15ba6e641604611e2c7fd60cb454e316a7ca7f171654c9513d94dccc1b43dcfc056f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305db7f801dbb9dcb92eb4d524d78ffeb22f8e2dfd82f91c9c0796967b002d30e3caf93181c5344231a834aed5d4661ae4023100b97637d5c2e9aa6c7a59cbdb0c8432720fcf3356c8a356a94f5f5d403560225e4d3510fb078ec07c2ad1cae7309f2a1e0302047c435bb500663064023033daa928ced99374642686422a61b9a38577b8d48d28332482c983c42dca5c423dc9b2dbfb2128228009d4c5961d410702304d8a44c1ea9e2f0faf933b2aaeb3893241cc8bb4d49997474575bbf17848f65b8dcce03bf562baac26b540bd4f71b7fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306bf960334e510cfed20c3ff92b028ce558d32a5fe58dbdd0ae684455a6c43b805c93b8566cab2519869b14f141a4d0f302300271c43343236cd898527af74e229ac22636e4cb46d2d1abe8fa5192b2e5e3c2bb0783c3b713b71ac62935b9f6c2fcfa0302047c435bb50067306502301c0d1ccd8bd8b76fd9fc0c5a60109a35f1bbbde02d7d356ce93e60ca5395bf81a98b8e58cb7959513a6b3499f848d7d4023100adffe4499b8cec04c6870a1ad821290f7e9cdaea795766d34d7dd87e3eb8c7eb3badae5c13aae710b08926b2f389527f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304b35000a5498476398a73b9aa1218fa3f1bb57583bfc2a69721bab864e022f6d0bb267c7c9b1d24353daa1f6a7d870d702303943d09fc064cbb2a36e71c2b19e8cf1d548745bc330d43daac098f44353635031ecc5194427f37b50745b3cfeea01600302047c435bb50066306402305cbe60fd641c8fb93027d793b597bf89844ff7326b9dada06a9dab13bc37fda31f9972d0699feacdd920d1e17051b090023011d725e02de4b2ca5ca925eafa73d45ee5a45393d475144aba9c3346ad7de2421b1fda0b3f2fc9c89a5ee42ac2f067fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023017da19feae5d0a6ad41809adcd4ee728577d963dc6e65dde82d88239737190f9f4ceb478d6fa6329ce9ecca889ee0f050231009b61b8cf83bad60a601a21a4d60dc0ddcb847704fa44f8ffc0f9fff7c6ba2c3ec0afadce7bd4a85a7399569a756f43fa0302047c435bb5006730650230077b4190a2864c95f20bf17a6489c6a73b5df6314b1f8ed19b39d19f953981749313c5c31ad369b9699ac158207e32ec023100fb18cf93e064a7aeecde4c2ac9da99fc0b2e57ecc3a80470904083118c1f293fba59c67fe56fdd8980283c258620de230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e16d9183f675931d91b5c6024123b6b0f966f1eb930b1a357f058fd59e78af8b843be3c78e1c99efb41b6833aea30afb023100aa8c326b1ce6ac39075c88a5ae5c775b7ef5a375c75b3aa97d710ce93d0d2cae017237ed340cc36f89cdeac071ea3bed0302047c435bb50066306402307f78b92f0085eedb06d8a4a9b826aee0f392e6926772f8ab2fff114fa3c9d1103e672590639d255b0297aa090329910602303f9ab30a5a292f57d6852aa4f556ea2ccf31894610e4dc0228172cc23ad678b078aeb6eea8de8e677894c0384b26b8740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100953d8b809b3dcf1b2a2ad2908f1c286060948643b253887a6d608703fdf41f4c747f8a78392100e63618a9cad57b6ab00231008722882a61fafea833cf548caca84dcc5cd81f15bca2318a2fe1cfc72d9e9bcfb0df6d8d8afd49ca3082955ce8e7ed260302047c435bb500683066023100b16f8b74f53b51e42675573b931526020e35164746004127347660c4558de3b5955f2cea7c89a5e42c8fbb115e492167023100991f10ef5a36ab64cacf04bbf6aa191d50f24020673b1d7436454bbd29edc9030f491d4aba3f67ab5ecb268de859067d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305b8dbf7809fe5e6867d3f52923bcbc59eaaaeec8698c1ae3566083b8d90505917825e8536167be40ddccd82378bc94f302301eca9a097208af3b1cf7a6c57f7def8cfbcf9397b9931c996db4978331aa555f76072c62ac85b837102366f2c05c523c0302047c435bb500673065023100fa03cb68a57e80241066eca3fbadc736db8118f27708052302d9f49988645972a738cb9da94ec19967c80ef3f74e64bd023018c9eb262ebdb93fa777feebb2c2e79e1a56936b16b5b27a7cfd5fd85a011ca6e6d2a9480f7ed29b77808ea42c6547950302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023013aa46cb5eb362346e7cce4412fcfb8439b4ce4db0d2c6ff6ed17508fea0b9af08392664d9b6423d398225ddd1bfe549023100c12cd96e92c683f40979188a96ac2d48843a6d407a12117dd984d2d9c2c82549d0ec82054b0cddc4d457141884fda0da0302047c435bb500683066023100b440341b050df99f1f9a8a2a4edda6ab90b216ea51b8a2e346a97928407eaa8dc2667032afb5133981286e5f43218f3b023100e90a38253ac62d7a2b21af4df0f251336f0e378452776a7e7869138a524f309d6f93c69c11a03c1e8c252644a16716b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009287a8ddb8faafb2b8b7d7e8b1156af28afcf1497dedcc83cb0df34c6ec4c039f002acb845fb9d52713b07e943d2b4f4023100eb3801205cfc88e82e49f9ef634b33ce6066cfbbb89b6b61227ca41930245eeaa5963347a84e0a5370f1446303ee7bcf0302047c435bb500673065023100d1646a97c1c8daf802df694b59f39a23406df03db9c8ad28986a6ae4b29beedf8e1976401a32c1c507f9baf336e54ecd02300386cecc3a5286b6edab31701eb99092393a5a712c6657cdcabeca5b450102f2e13856a94cdfa18c827416a59d5014ed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b53565dad288d362dfffc68283ecf6b21efd140032a41214465ecc0f04447fd52dbfb316479afbc98c4b618f712492ba0230315eab9726610059c55c40e562384481a2f3a4514d00fbdb1965cdc4b07a6e928de3867548344e202b3ea48b3ea434f70302047c435bb50066306402304a64a5619d180c121244120a26d6ddf338e3dcfc61dae6fd9c222310a211f831b732580cecf41b25b4f259bc02709a6b0230660802da3189105e2c5723d00512ea819f5dfafbb5cbe2ef6503cfa422c250935c555b25be7c16c0318e258ea7d425cc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fdecbede09263ce5124f9d841e29b6697e07a304337cca4157176f844d2ea07af852bda0a72b29091a9301153af3571f023100c32ae163701ac2ee9d8a44a5b572d79ca858b11f8fecbd41307feeeaf83f8d391a6afa82c5d08352fd6023eea160dc490302047c435bb500683066023100b6d4d9271eea7b5f6eb5777db89bd7b0b598484d3917e2af1f9ab939eb1f2dfe8152bc361a69437420abecbda1de342c023100bb4157371c89257039de92dd779cec3d3d00018ce666fa4910b361e5bcc58335b67a271e53f9c0c377714b85493d71100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303a253c40a7e29489208a3dcf8dea3347f7ce6fc97bc911117cef2de99a9f947b7a4ba385c6e6a8b72791789692627843023100ccb14cef06a67da510d865b5c68cc403de2a211d03803bc325397d8c6f1bc455ca3bfb431f4bdae3aed512fd5d6324010302047c435bb5006830660231009427ca542fba9c62b7ae660011a4d2ece639279af0a8c27811a10658133758f866b26d523696842840fbb2c9790286ef023100e88e404d3e8c241bca7e17546e1da3f9d25a42afa570c2a5025eda89f9a1346b5cb25d5227f1cba9a14d820cea043eac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304f2ff7ba26068cd55cd8b782d10f9dfd8dc9c82af80bbe73875b4208dbf08038720240b777f315c2eb45b4e72f475072023100c854fb972a4cb11f54f684a6b725816ad22a0700f6db8c8c84e5250e45fc9555fb7285c5e3b3b5f18fcdbfee1632eef60302047c435bb50068306602310092c425830cbcf4ad612de35c393bffab97ae17ecd444555b8fd37a67ae94840d73a20e9e35440e22fb170eff03567b0f023100e6eafc70aeab2abb006e515ea82d8e15a833063ecff3cd5d89db84c37d63293648100bafb00056693948eb13582ae6bc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230087ceba1c8716c780ce847a6c9ed8670b9a97bf7d64e5c1097116728b349d3c49ee2c92a98734491fba5cccedd715cbd02302ac388bd91d08b3b47a1c9f0c435c49237d0f4d1f2d99d866b3a37175e98b85e9b2aca5a20c2ba7dfb2cba6044dfca1e0302047c435bb50067306502304b825566369541129dc8e5515aae2aa63b3f7f6e0de959c712556b2b3319c041497487df86bfcb54532fe162a4ca16d502310085e75fa77060060521b407c31a369281ed0437df9aa7e9e4da2dcdfa27f5226d042e8ef54235c0db83f10b83a00637120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b4f2c330bf405a9baa47269f1d83e4795bc82be99c3aedf44b651a587c187cc6885af66498222c30407fba990383e2e4023100e93751d52626c5ce70a0e7cb234bfbe8015bda5204b8970c8c4bff700833aedce051ee51b34d1102ae76a64fbcd2a3120302047c435bb50066306402307f9096fba8afac1b32c1a3b63a5e67385f8a76f51bd55d0cba463c990c590dc3c93aa28af7f7cd11db2c2572c21ddd5002307a1686cfb483a455359c60d486bab8b7f7395a72304aec570baab2897563e2d319047ac966c4c21baad9a2bf057dc2c50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230706713c7bccd961d169e6968703d8ff2c8fb5ca8beb7226586953dc99a6e6e49745c9c0a12400a1ac1f5640a270dbbb70230556d5dd885b587ce85df98cb1322c59bad599199af4e3150d9b04d68d693fc8f02270743e83a0b445ea77975860e10680302047c435bb500683066023100f69e9f9af2fd45d9322d6790dabb004817089921484f47609863f749b518b494875603c72f5592c9cc7155581ed6e981023100e50ca1c97e7dc3df7e105879451bac34a3e1eabf15245e3a9d4ee345f4d622bc43f6871193dec3bc1c6cc8b1218052270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023072797cafbdb0ec58c6f04269aee413c3b416e8b7685efcf6ac00d739a2097d43ff21a59aa24b5f4a34f027c2347cd338023100e9b2956d6d0152852398c432ec88df36c2f7fdf505c1a5727d6c312235b5291802542ac004644502221f3e8b0ce849520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302feb39580e33ef9c8e8c8075b3273f3e3b2d65e2c654f262c7d0692cd07ed576bc79611dd3d24eac7586bbe064311695023058f9efb2971e4fad04752e6adb7806bebe2ec7b447ffbb021d21b6a84eb361d5738b5d0c86f89df4056706508437bc9b0302047c435bb500673065023100c138ecef619fefadd152d4cf336bee9b78d396697295ab69fc65f23feb56ed8c5f598b01cf6dfdeab1e7da8463a8d26b02301d9745f8c7c511b094b1d46230b6e17ca13008c50ffbd5e4a456450dd0eff1ac7e5146fdb22890c2d84892b7cfd98c070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303f89e2e98a5e9683be1b9708ce360d7ec1b58d9d17c030abc5bd08250e3f5390cc536fd8910bb4e27e7420746ce9fb770230220e7cfba13d6d4b6ca168025884e1649568c2cd3032891031fde55521f1cf96d8ef1a6b7e98777c1e272010e9c02e7b0302047c435bb500673065023100c6ed2ed61e1cc6ae2a250c74955b7af4aa5dfde2f89d665cb5270d8582e0c36cb3bf4c3d7683bfc865a2df5404396090023003d936978dd6ae675d04da232886148e4085cdadc37d442f3e03cf4cb15a9b3f889fd26aeb7a27b8e064f672fe1b76930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f3bfa251ac6bfabb3c029d140f46e66cafb604aa2c7f15c7f50763127def06fbaa289bba161c355e9075662c8958e03f023100c0742f26cb09d73225bad11c780b0630bd95b0efdada45333cc65e599f06d90ca06ad94b46fdb65f3a4a0efdd277c35c0302047c435bb50066306402303c4df282030e71e21d1e479d6fe55b0caf6f6efefb71e3910178999246342f795a455f343a5be14af356ac68d032867402305cb742f77b7c7398bd902b00bee5072729e45bd8dad60408b0e77f83b8b4359edc2d41a6a11a408e19612484d35613590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302f9d255355a603563941d7af0cacea7ccbb726c499546b36eb07cba7b1566da4b1722f968ef2e8f1213131856afac2460230282855a3cbb2d474ad04602aacce37b7b77d26d93161593bbea290a3b17c0825ad3de24fecbe82e11d3bd34fdf8ac9f40302047c435bb50066306402307e4ad9851be63037fd074bb1f08b9435370c56d0b133836fe6c3d07b4cae60f4fe8fefc2797d207ce0296342600b57110230380ee69f4db6277db5c0e7609a0d9dadddb5f0c23a3a823a6885f1869baa7624a06f70815fcf08f0b60aa6af359e049c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c04ed84ba6537b395700a02b5426913135f3e12e90f3927267b2734faa0c9fd6a74dbb36754ee155817ae2f4039cc1530231008611cc1b3bd8d782360ddac2b66a8440d4297a496ba053ef0ed38982d70309b649638b1cdc6f566ab4c0f7a1542e36ad0302047c435bb500673065023100a0611638a28931db87ee94a89519000e107f4bfa9010ac19ec326451166654d52dba146d661e618eb6f31a12ba73a4cc023012f2f3f5efbd787d79be2768f9125c00b87eccec960fc39847827684a935b67f815686d1d55f751f16cb4a78809a041d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008534abf283d9e51e35c2a904bc588f3a0949fab9d911a6c72128ca6dda3339b10e3f078f010bb429c835c19541a31ca802301502a8cb0307260dc2d790d62e07825c647d5d098edce6f1fd2645fa0936870bcbb341684efd9a337481c4eaf2df96d40302047c435bb50066306402300b5448c39959feb945a3b9a6b28bcdcdace890a24c139cf7e450b6971201f5a178946602b374f5bd243455b5e0805fca02307a9e61ab2cce2ea0bc1e8fa98166799c3c7642dac61f92afdad8837feb677a302ccf834a465cbc7255ad8e911e3153800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b51b9a222d0a3035d29f5e52a95a8e0b5d556a65788ed1640f70f670d981dbeebfc760f5c07a9ebb2a98f90268a8cf4d0230028ada47caf0295df6a34514d8eff64c0ba240b3f8b468d166e283405ff87a9c1c9a5f0fb6f22ba06370de63c42153940302047c435bb500673065023015019102288d7db0bf9a174c90eaa4a8208b458900147a3cea61bbacb0d785e87906adbf4cd33bb14aefbeb320061ec10231008c09b7cbe6f4cba2c2a898c67b8b93e7c89fc785cff9900bb88e9a393fc047e824df930b1754d9f6624ac12cedc292850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023020016b83c2718e2ed8118708a0b9113287b24183f2f658a781fe528a76a9b1bef7037427a144f0b9a775c38ce2c8f999023100e2736a6db922b4f036337f278260ef7be602efff977aca18f9f486e77fadec138718db4884497a12830798d8a1984f4e0302047c435bb50066306402305f37779b95eacfef834129e3971c1a6c25b4efdcdc77c82dc2c8f7a718aad6710062c13756ea6b1b255096b171c115ba02307c14737104337bf38ff5363b27a1247f067d5ba08b7dc5eeeb68d9d0c42e5ad933f6c9eb7251749f633d8eb5fa1483bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300e956ee7ec74dcd7d2d095eb888a63dc31be518b6a6edc86743b805b20d17d634f7871bafea8f8fd90ae917e1e54d2730230602326d726b8e6b4afb448d956907f51d1d1bdc8aee1d123cb6c9c4f57edd61dfb4b8a023f4962ff9badf45a499ec1520302047c435bb500673065023047e9f139a537eb9fd15b82d03c9897860fc7ae6454122196dac54bbdc4420b3aa6cfdea642e1a81381268f3180ba1729023100d18f17d57923378d244261ca9bfa523a08bfe083b021fd99c2b3d610ac97f37007ae1a274edac1f306e3010b3830a9310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b635979278e74d9c37afb121c90bd2e60320114c6924107dfaf75a44fc174859a9009ca1272a9ba813011ba27166374b023100fa047d6b08aa52cced8a967b80a8bc8f88fe946472f5e14b806e479f86b9053ae5a862e635b2e1fbcac5e4699b98be440302047c435bb500683066023100ea401dd5964e512ec0186f38bf2f69155779aad7931423e7d0bbae2b31f8768008a0e91a5b24eadaef1cbd97ff3d954f0231008b850119e1241ee950841911dbe5c699d8fb463dbe5fefc8c59398e9e4d4688ca9b686e51fd12d467198d357b5f986860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302e4a2bab89da6878f1bed4dec511c6061b8329bcee20ab7e8014c7b12cc0ad902307cef285cefa6c3540ac631ae0148b023100ac0ae1d21498360f5bd0002564091d19efa738e4d8ded97850b794082ccf936fa8dfa02510a4cb9390e92e4556651e470302047c435bb500663064023006b86f43d5487938c8fb06e2ad62ae51bd393155f025a360d1286f1b121cfdb28bfe10ae85b082033c67b065e77f594c0230352de824d40aa567a58c0c33ad16f896afee71374d8afa5c211dd47c6c3e7e1f32e2b409146a0ebade52f78e8e4a21690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a89a42a149956e5b352d314d096d01171e28ae8454be993328ed83e65422933d7c7553f1fc31e4623c522d4fabe3c86f023100c1ebaf7ab102d79aa58d70c3aa878f0d2e0a6f529e3f8c01f00f465483d886b1181592e9bd354590f71ecfacb48640a10302047c435bb500673065023100f0fd82599d8700a2f9d39729d6a4158320d396624dabb0a4ef7574775b2e28b660c5b936c98f737490c22f4884f2a525023023ef415f81cf34ed7d729b7eb6f92d6c4f5306efb705f44b169334165d8831925646767d36b332c285945ae65f2a0b4d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230733804eda4a0d612efbd3fd26cb9d1f828b0bac9c5b14e73a25e8544d68fdb0b0e553919302340183368fc153e0161f4023100e71c4c3dedb3cadb869f59518313bae47fac0cc1942b1acc98a065efebd2c35faf5535424ca209acf91082c5b47ea5ef0302047c435bb5006630640230766489e5adb429d40652dba6af163217d86e3b9253c3c52dbf2c3f25a777f42ea1e41918503f62652a2115344913117d023046a7b893f52124a613ee6ffca25b26ad4461548090dbfb0e86db21ed51e341aa81b5a62be952af50e2c68549119b55820302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230129d05cd198f5d8f55393f35a49d9b2a90c4d1cc6b2287b62b7588d727e4051c485aaaa240f8c9fe807735ccbfe2134c023100f469da6dc3760199410030b40cbe3c7d053e6bd80ccda78f40ec8b5476aa0043afd7174062dfaceb5a5ce4df5ac34e520302047c435bb5006730650230523be7433cbda33d0e69302e77c826478dea705eb440ec286f1442bd9d83f46394d96e0580cee1a1686bc405f9bb0adf023100b9e6eff8fa7bebccea68377470202a909e20f856b4f4bb3b2c40aef39eec1c2b6a7b2923ac75146185c7396b1c3725a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300ff280bdd855d912149c3263731d469ad71db797398ca00b4c17edb1a082b7761f43356c2ee033967f66a1bdefdc8cf7023100fe46b2766308a8aaeb517fba092a6bb165655c30af8d87ced47278c37cae1a88f5af02ee27a0b8b25152bfe0d4d899f90302047c435bb500663064023031cdd1196f63c82f3435a55ec57b9e2a2d231add0e9fc497ef812a5f83031defbd37ff2724f7e8371ef3225d7c51f838023078fb842243dff396b642ffe710bd3093344389a2d31be9d5a66808c64fd72a2e96e12695177316daa868ae9fc1a8bd6f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310088493d9ee4ed939a146ba48f3584bee7ff992b8f8fd11602449f7bb6c25dce28e0352dcda7727e40c1ccb05c10218dcc023100c7577a1a937fcc99dfe6ef831fa4d05abb7cda518a2f0fe6ceb0ae611a699225b58e0cc9b0f1f3202a4f0cb9c4499aa20302047c435bb500683066023100ca88eb0ef3f2070d6bbe8330cc43511ac4b4378acf6f1484343121ea859a04d83a415af24017f8b616599806a6cc5106023100ff498ddb85b9896a17d2622c9f9bcb8cc94cc22013b498921dccf037b3ca6168cdd177f9ce4fce52e0ebc30c3bbc2dc20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f751647a3a380b465d46e8901633f9bb3fec24a6d2a4ca5bf0912349b9ff3dc2b2ce2c39d14789a6671cdfdf8ed5ca01023100d0f8958ff51c08477570d56511c8071699454c2ff5208fedb479d77f77dcdc2f05fe5598e347a9451b3a75724952649c0302047c435bb500673065023100df5fc165bdf89c411484529ebd9b1e1c16426f2d163ba7160e36cfe9053b2ad19a9d951908139920f364f8b3c203d1cb02304e0e7180e2f3d439065526e0009e21794384a1f4fb8471a633a5ee80a176086653a4985757a6d8e6f2938c4004ae9ef10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b416c47a900ab338529f07a68a4e49ae1ce66d214dcc1c2f0c98e203ef76b82c9e4f4e7e267c76f1b3e9eb9130c47dbf023100bef38a28ba73976df6113a92678c64d7517a5e6fae69c2bd6663b31ded2e9222154b1e4b6f92525d075ec347c37d6e890302047c435bb500673065023100ef95bdb2158f7c6589bd45a45a628e202790ccbc4e9153e0f91747d1d28514b37df06b1e27ab8b559fe4a9a5351cb3d402306085dbd5f565f5028a5bbe5e14cbdf8ab22799f61fb39f4518a2d8f0c56155adb67f539e25aa12b12e6668f11ebdb1de0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230321f16dc48fe394faff67c7733ac71c0d0299b67e7fdf41650202c1e0e8c617dbdaba895719a167ed13a844d610ef5ba023047129c89b454ea4ac2cb1228ca2872881721233813bcdc1e4ec31b4e9d2077da15916e1681f0eab8ed8a40454d1630cc0302047c435bb5006630640230627704e514c932a24386505ef71679dccba4c2ee462d45af778125e5c56d49dab96c2c0459e4c2812eca1f20fafadfda02306398cae767fbbf76e3e3e3d99cb00f30d3b2b6ef61fba0b2fc89551ec61d7d867d863fc5e91dc057b574559fa98020a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cad7833b4cdd045b6673ecad825989886ff50e7c0c9721269678c7738e39f7ee3fc88c0c751d77aff788643741c3197d023100f1464612989805a9869d7930bb67a1ee74fb6010dd0416cf33d45885eb2e1c917efe919f31fb332c4713cef578a19af40302047c435bb500673065023100c805e994134f708f36480bf73a1462a57b317e5c409c77c48ac6f1fe402339a93a65185021f9db5418441dca6b8adb8d023032c6c0d31300e637f3b03f91cdd6e76aeaba44e4699d83c51a2479eeb459d495a4296df1c9aa4fc0bec73825098e0e910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008858efb625c7c00fe981469af18da1b254270a1af50898b5e34a313ecc5823153023f0e5ec1da7a9168a8f0d33fdf2a20230728c0a7484e8beab66af687bf80b0551dd6810d803e0e51142e918aadfe485afebea34bf89a7f600829a5062906b43b80302047c435bb50067306502303648e0cf0454c54b55e22b524a9e63eb0fe45e3b306ef0194d653b48f8193c3b82db4805254224134ed0a8a2971843a7023100ff6d98d8d224013a8bed0995a6201a41b6b3e020c4456438d9d1303d1a350dd45952fc96b286ea785a6cc23e346fd3bc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301147200725234c54ead7d50338602ed9607cd69ee2a8555d7effc2efecccc57471133acfef70d02ee00feaef67927b35023028a56fa8a125326c3391ecc8cb4fc098124b45f01c5b2b4add61719f5608ce12b4d7acc292c74ca86b78eb78d951dfe80302047c435bb500683066023100fbb9970bedbdede7442914c689eccf3d255cafd5d77d6bdad1e96b737735c5fe7eacd215bd221123ac25a54317320881023100abcf73fbed2a5d06d2525b66d3ce3589070e1b19764718b18e02cdb91d3127416f3937deb703a3a19ee77c2a6412d69d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023024b61d4043bdfca274c94d39bd97f49f71a737d0266e27a19a188d6b99490f0c492ff1d34bc5a7289cd74ff35a4cb2d90230403600915aecdbb7d8b1417b240018705b5bcfcc2ebc595419af278676fe0855d09de35728d44704daa63e63491b96740302047c435bb50066306402301f1d64cfbf8ad6e6599ffe1b6d83452bbfa47bef6e402d508d0542e24e175b5e95b2001ef68a8ac6ee63931b6ddabbae023007d65dba7630b71b6ddb0c11eeaf24abb0a122947da0ce6cacf6b50d687d36877ffe93cbcee1b6b86422b675ae14900c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023038eb61427948f4e8167410415f7408418228d01d8e475f1afb57ec45d73d648b2c6a74c1944db762c61ed3861745b55302304bc42880abdbfa87fe25d5b65c62c1682cb467eb63a49aee351dc46a66166568e8c5bb3225120fcd6f4932ec1b4f69220302047c435bb500683066023100c92cd2de0ff9724cdb622d8e4ac2711e7e4447167c52ccd052109121ff5e5e17cdc7ad6ffc9aa04c674ba11ac459f814023100b0b0f4090b187a8aca2d23ff6b75c368cc4af526b71f6cbbdf7d4364f052e9006a235e6c3bbd5bafd290bb370c3e47ba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023031151e3f700ac143dda49e8dfff351d2d2969e3a47b99d1dd787f13547e0de9176d79d3e5f9a84fc51350f2a168c44eb023100d9c5fbec5fed387ba54d156b1fdf02e40066fc611c22ee9bbf9b5862ac6bd710c61fdd8b71d3312752d4ba8945197bdb0302047c435bb5006830660231009164f1201bfe2a27ed7da857441bf76efafe46618816934928bdffe4a5e3bc25c35601c05cccb14a3316bccdd519f22b023100861f679964a36887f6127378b3957ec98ecdf83167edfd10a2f60aa634bc3c4843c8191aa61a4c699aaf679124780ed00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ce734dc159f66bcde3aa2a4246bec6c05ba34579ab69fb4c34fb1e0bd64179a47b2ce45013d745887b251c4517d6015202305688c10588b8180d1e29070635ad56be6530c43a1861809a22be87ee3f275e2b4920d3ef517ba5c4acdd79a1db8e71ce0302047c435bb500683066023100f0f0b30dfbc2988d26e544de5d53cd43164c27a7b6b567d44c240b62022e6cad746d41028f50d825850096be7e73dda0023100b6c20db498ba6eaa6e6b6d74de20bfdad777fdbdccbdba6928baff691115184ef74bcb8113949d45761df2d0e102866d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302fda4e84a462b2d2533d589a0ac6719a8d4e4ebc376c2546e97963b8b84a9db2a1784237d89241678bc909884153b38d023035b0cef065be4d2e5f0bb08445fc2c925748c70c5e2628e684eacee0d547bd901d710674e37fc71792251a2d5f3cacee0302047c435bb500683066023100d07fa99c8e785d5257087e8d70167ea11fbec6dc05d4ce9f1c24c373847bf4f6c1043e9fad3b9d768a027c6729c573df023100d2a4210269647ab4e6600d07114dc3781710bf53a7235d22b115bddf752cdff850ec176f02fe78b7dca38770b4ea76e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300bc3b969811bdea06b4f7c51bbd29b0872582cfd14cefa4e04f5d608647e4ccb51da2d5a703e2d28186385d73e99311e023100a7763f685ac770b8ac5f40d66dec2f3c16d9cc49c92e34f529de8e651cbd617bf8fa98af4c29ad80c8f4d64dfb0f1bc00302047c435bb5006630640230036de74cb5ccc3463caa6b93ac3334f811e40f7e28e0d211c66d65d868129f0b938374917d7956d6675269cc2054a06002306962ff4a4cf346c4832bde58c6022eaa5b2ecf445a8a73cb29f86791ae9742aeb9935c1842596b522e32be4de4cdff2c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100aee4ae9a9a531c81906c9de19f0239dce1149f2d18e0e37c7e3fd89a1f69edaec5d4f48881827052d74143e57558c975023100a15bd2305bf409dcc848e4bb978004dd735c69542740dfb929ea65282b91cb3167e94cd47b0e8796fd7d5eb35f295bb30302047c435bb500683066023100e51d951827b2111110c51389b1fad9d033c897500a23b237b91a42111a2b278fe67cfe209f23b420073b2e7ad4a18894023100b622521f4f12ac93c1946808cc224a056a6479c1164d12a9ac6c136247e6e413549a3397b455374cd5c4d447b6de1d720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100808641e97568daf9fb70f3a155af48223831bebcec4207fc167c29a19aab6cf96a96fd9713ed74124c25de19273a5d28023030df1297bcad2a95362829233e5905e826e5946f993d48f8bbd2105a6104e6c2e4fdb7fcec6ee8e6fd3707643a05e7010302047c435bb500673065023058bf9aa8444b62c08faef0a4f79a8fb79c177e8ee882140ec687bb091c856725e26ada764130455f9701fe6ea74ee2f7023100a68ef8ef3c965b2f8ed3b1fe655ab715e8daaca9890ce0af57845d89c2bd9a2650edb4231f89ce4dd11bf9cf1f522e420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303ec19d2e60850060595a412c858e6198d6c7b7f1c2d09fef6d6b7401691288f0b9cf7e2cffbbe38e2092a811086754f40230045440ce34b7658bea158f4793f35131a49ca165fa101ddb592720b1199efa94e2d9d631fc5f02f44b60a5b150263b100302047c435bb5006630640230598b15e1d1b9bdc3281e634575fd45ea08ac46e2f6ef41c4d26565c43bc6fa3cf0d827214a885418a9143b8dcc69538e02305125f04093faa64cc00004ee48c8dc59aba84723fd19c86dfbbbc44b8a90f88483a7b68d94df7db4df497cbfdeca84a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100febadff6e92b299d268becaee7a812f8a44d512f2b12fd57b711c3eb0d52431c708ad92b5316871bdb911de3a91cf7c4023100c52aef2cac3a5f49fd2ac1d4968f58160df9bb01024f436c1be17a3a6e453a4556b7ad9eb1e48f5e1be4d339e98ba9220302047c435bb500683066023100d14b50fc726836d07fc9f2ca7b7f6a07d9e09ce7bcc112eae6446fb8888a2b3b10542a95586ae94e9c12404dbf62e72e023100853f7d64904dce5a67284c29612d0e888628d4ebd8cfd8e652ef9676842efad4bf7ac18e047a933d845439a5a5afccfc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301100dd9caa3ab0ba1950f15308ab3d94de6e35540721c5a47758ad277cbd8c3debe23ef586e6c63d843eed95af6b4ebd02301bea77ec9ab9965c4a7cf2c506735b18b79b93d2108420b3f1a16d6ebf8869380636eff0ab3deffc0364f0541cc7d89c0302047c435bb500673065023100abf4507b18c8718dfb7b8e66f972a9276ec37fb35b2c52d057314a6b0897ff898fe8f7efba2d007c9379addce051da17023000e4a137e3355a2c153435d9204b74e71cfd3986758e6a0c7d209df06c31a30420f57016be1f8afa16af3a506bde513f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bed279ee739ef65239ac129e550747f7042f57be52cda0e69b82ff14ed74f0072f7b99973a82326887a2d60f3d742678023100f64923958a1121ff70f4f43a32bf32f949e08505ff9f590b40894cf2dfe120034b8c8a107d066ffede02ba847bdd4c060302047c435bb50066306402307214c90c592e413c5c546ee1d6fecadb5ac585b19eb1165d0c5ac3fb7bbcc7e76b0a10e3484bb59aef4ad2869e55745302305017db5db4117f5dbbd54a3dd322f4e7f7931875d176b4cda64062ae7ad562bcf3ff9b84de9c87a81e110abd894f2ba40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006530630230440634c906b6d6e765dd69380bd8e8548331bb4f3d5a8305cc0e42133e55209ee2c994f590518d14cf3fa5cf1ab53f38022f58337e3a6f26d7abd2a5dda8946506f74214902d925118ebec2443a202107d21faf7f478d9493d5ff7e07e5dbc2c560302047c435bb500673065023100ca6043edb3f9c023f1ffe90ac3c78a84bcf94b69b33c1e82b0d810cdad5de5baf98254c2e5668c59d0b5e8bc5a0c26db02301bae21fd6b449cf33f8c631200252239d31a413e12eab251a03d75526019d0c52a31d6018f55d3d102749229713e36880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fa125bc3348fe291c338679cf050e2184aed5ea02ec4430e506782edb62f9546d0b4e8f108015abcc43ef437cae59765023100d1fc0dc7bb487fdacf38f44961289aa0a69987384736be31e7566c033945eaca8c49151d89a068f1b3388fe95b8d2fab0302047c435bb500683066023100b2b9498df1c7daee1144633f6c2abc176db8c0fd74e413262db7461ff4790009438a52e8cb4ec9771f814e58caec4a0402310096404c17f305b738dbd471f283e3397778a333bbd96e80dc6e7791fb962a6992fb9c0f62602e072ad5ce58c2d00b05460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304117003a8e35daf77c0bedaa7908f50de93886e42e28269f34d25156876509262c3e20892eb982b543220633a75cb0f402306bdb040e0c07c18b45a1dfa0becfc5f4fb7e44703f30031c464c39d2f5bc37e89e9643396d01ba167acf771f22867ff10302047c435bb500673065023100e591ce739776f13b84d09457017c89de90972aca409a49ccd341f14c924473bbfd2ff8f9b4d59b8b6045a99aa5de4c060230226e26557b3b13238b0368724b44227490463ce69bd7d5f3389d9ee4d9779b42575493208566dd6029d339f8da5382bc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304247e217325bfb354677a16cf9c7ff91734de39aa604f7985fb4182c32d612af907ccc1fbe08e9392df4dbd3f47b36a60231009ce79f0f97c3b547fbcc32e0798b7169f0bc144ca746aec1f719a89d06eb4f97fdf2b334bc3b675b559df9201dda19ac0302047c435bb500683066023100add3ee60cb1e75b6aac639d50013b2992f4d9c0db81ef80f6efdd4a385c73d5a1962f6de49ed64dcc004fb4124fe42ed023100bfe4bb40d435da087953913499906973b5cb573acdf56e231495cda899520a6a38723100b16bee748aa4500a61752d710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e337baed54caa7b13dba118e231f110e1521ba18a1c1a71271c507165803428177daf66e9da9bdd48ea8a7c71034c5d4023100c3ebfef1fe2d6333bba378a563236bf2ff44333065ecd2984cfe1ecbdefe7cd78f418915d49386279d969919130f6f8d0302047c435bb500683066023100ae0302f1e94e7bb80125dfc36906597a605c1f63d2cc46431be1a915dbc51dedc9332d2a183b71e5073256d53ae9d6fe023100d6e3eadfdfeaae37524f23d6e4b8e1a5878a57a030f568ea81114d6abe2a7c5dc546d3bcba4257c6bed14180859c0f6d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310087bc127d5884fdb0de658e580dd32dda3d4f5bcf7119e48cb02b6fedfc9f16005a4b4715fa24a7ecc5bf54616673287f02302b1d604293366ed2a6f619c84128d9b785b824f43a9e2ea1232a4260b44c4a91ab93bb47b594efdbb06bf6058906d1100302047c435bb500663064023072ea409620a13e579ccab93be7cd65a52a5c25e2d437362cd9e43539caef8dd7d46ffdab68f03b3a403f61440989a9f302307a129aa3b9ebd4a2623850f36dec2624a39fe3a3181735cf34512d8ad7af14219bdbb4c76c8180a31d2265977f59596b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b57b722e749ef0775dcd55c96c0cce927687365b3c2223d4e0eea40875b2d7b05b4b361717553973735a376266514476023030d60d52106eaec663d5e27f044d348036915fa353954fa5336829c50dec3d6fab11e603ff3eb19938fc05a8461a2a2d0302047c435bb5006730650230740c255598d7f12010d652f11a75d100e22e1c1ef7ad393577a79968238c72e28445543ad9e9ee134011632bb284a1ad023100a53c607e5cc698dfb2e16ccf8207fc4bae731a7c9dacbf390889d3dfc376805e7af41901b199d2539505b1b676b2a84e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bc7cddf264b4c8f02705f10bad261d3b1a5f21805c20fc1357e629d3d7476c291b365f6b327bdffd5a1b024b07f28ba5023100c574d276dec7af3bda818e4e3a938aff8d24a9cc281e90d1590ac23956dac91ee9d73267f22346ce4c9889338c4683480302047c435bb5006830660231008502c1daa025fae0ab60fc2d9c67f838fa6b70b0c508a9158c6774948521ef2ecf849f4b5d8197dab89495d2d632c71e023100d574455e73c3e75da475203757428965440b7f28391166e2706b4443a2dea64722ffaacf509c2d528cb51a47039170c70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230262c93bc03651f21674713771e4e5a1628f3e319d842435a7cb86cba85cfcb0e97c6a140582a6d2b38991736db8bfd5e02305c74d6c051bed5d8d1cb0aa6ca5e4a0d2bfd0d70eaf22c768185d54ab337e7b926464c73407d0115d1800e85a31fcd9e0302047c435bb500673065023012d03bd865c6aac184004349c68cd124f7a2f9f0f41cfb6ba3c2d23cd6d3e57b49d597bc439139d3935657cf271f11410231008c93da101c70c634f6f7040c716fafda3d73f3e636db464791027ce30874989be4b56cbf1f574f5b96a8a6bfe897e8890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023069e5039d24a9a62b57b294a6ff15abf1dc61f1e470bb27ba07224633f1ac08da4eead579143cbd0b047f7abe7ee3f5a0023100a98331c7b6986f088d606b8a87f0c3ccd8d7cd4804818bbadd9b008cf6587b4240b9398c3f8519fbd3842803cebcd0970302047c435bb500683066023100ba6a9627a64c708a68ff63f02a697a0cd3de97ef7055ce330d6769ba176171168548849ca6ad00a45b38c96fc11e0ecf023100d608f8323c4eace95c525ec4f56887d65562a69b581a2063edbb730e06b8de9463c9e599f5d72d2f41c2615490d6c0150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023010bee6ccdc12f41529947f02610fad437f0523c8be61720d664e5b4edd5a6a3e79f0f5c16361e8d45a697858b6cd989a023100c79b6ce935bb10cc2fec585d2db36adf0a66129b229f730f7f981eb1b9f6484469425195844b88be4488f87b34982efa0302047c435bb500673065023070c07fd279e39e09e846eb6cedda86699e6ee785f5e15c27a5ca948de26e2f236baa3d08477d839c611aededb115611c023100da26461b0add135c0ba3088699fe40b998e0bec8366cca7c63707548984ff057d8b877b1c30a3236069f9293615054cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008573d5ff7d0eba8db2a0aabadfb397176e921c9f22aff983de90598a083c9236c7dc27512c37a28fa2162bf351e4e9ef023100f3bb30677104f25dbfac21c7128223375fca3e76e57dde66bcdecf31bd956a28338f222681827b902c9f0207dc4f4ba30302047c435bb500663064023073802b4b8e6b2cdb63a433b844f8fc41b4956a8261fad152631ee19c7e1e547d40c5bde18f4a0d637384867c87017b6a02302f21a69dfe6d528e614efe9fa79656593ca321c8f2d0fe2f3e4f746fec0433f231afe7829272ecf9adec6678875090450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f07bff15927aa84eecf93cddefc41eb291c8bdd4adcbc5993f0fc08ace9682078d28764bf37441a8fac957e4d75c637c023100f297c92a05acc6f74d83d1f03998c0baab3749b4b38a5559cb40acd04801597f11b6d19bb12af5913851a187a169ae220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a19322ca9f866632dc1133fff290dd1c71d5fbe222ec927be3e5056b25ca692df4775ce974762caa129debd8e3759919023100d2f4186e7816542c20679158b76d8866f8416cab4a2a4b5deaaeb57fbeb60064e9927c3e0965c5379f6594efb56d33a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ef9c1260bf55179849e10e0afc4c8fea43e8218cc79788f0cb281ceddea8c72957b2e4a113db1957c61f01ae47ff52d702302ddaa6388001f8fd2b1d77cebd2b1848d2c0a79227be78cd6d95657b6a5354eaec1721b8864970903ff2fcabd81a657d0302047c435bb5006630640230618bab6ccda47ef796ed30f91be8dcea0972943ec47a2f2673ce84714e65c47eeebd19cec61ecaf4139ae4e132326885023004b801a2fe394715ed1a7f75e905f49c448b101a2dd32b3147636434b2f7d8d0822081919709454df83a0a9b2d1239fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cb07bd298c740ede81f5f8e4c01400d6332de68561dfd5586745e384ac5e714866747b91524f4e80b043849f355dbaeb02302572c50dcc967f782bbbf2afab6a59e3cd84f1787ea77dad042888c2e43e9e37907c763eb19b849db8a6054ed7bab4550302047c435bb500683066023100e9a5872e775295cac08c1a29dbd85c2a8208c9aed13c6caafd77f117d47c93801489c2d88ddf6afbd2bcc17357352a37023100845aa5b4ad215f4af7c6d2a9f2d0b3cc7fc42d4ddde101ebc0955abc8efa96dbcb1a9dcfbf4290ba7deea6d233f62f830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023074daee572585b4cd0a014c0efb39e98120a65a2410c9d629c15c7e3b0e0dffded5f9f83cbbf63bd403b7ffd635c8492e0231009b086966c1acf43c134cf5c043deca7a631528d1f7ff232c228f830509e9a81cc0d2e7bb138a06649fad6ffd653d34b70302047c435bb5006730650231008764f53d402f9509013364c31f9598c0b49da858db35f97d72515f9ced1a415ea62a0381a9c9441271c235f934d12dab023014c357c43155c3cdfa485b6c1e3978b84501af66fdef3dce4e3d7f296b920f09284b69f52303ff3931ba7dc0db5922fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a3fe68ec50d2e39136b287236aa39726c7792cd2fd843e6c73eda2c206fbafbccccd7ba936a1647a3bf23ce0fb1dc02b02302c4284f5b9e27dc19b66a847f8c17660a0d752a2e60449e003f59edc5ccb84970d442ee03a32cc5c9c45e0c3cc5f64ca0302047c435bb500683066023100d393392cacec3409b7ffeaa889b98f853e7611de2c042ee0fa442d409c7fe234045e41ce6fa90f76f1282fa349945629023100bfab21d1b254f05f7246819ed3daeafe1b5b24bc22267a5685cac4866643f4e8cd9294e0aafb389488faaf7a036a46810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2e2704c5c6b53515e57269dad2d00236a5dbcf2564121aea8a19a1ef8ce2cc4083b59be23042bacd37a51bf717d8d0602302b7a4274c3ae36afe2e3fd7c5eb9d3f80c34f3b1d75fea6d9d9ff7a5a16a453e0630dbec9c195de52aea0854e157c26f0302047c435bb500673065023100b5c74ab4faee90f828b1b8a1a55cf5a383137384b1ac4b4396e81588a38ee190a3da3b5b857acfdabe19aa919406ccbd02300ca29ef07267b2b34d22ec6d49f494021b5c49427c3d38e80655faad14585ea8739ea6eb358761598b6cf3f2c8c8013a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008ed9f6b9df2127dea56c7f46d8459a80097040f3fd27e36af9f31e1c7cd2bdc5cfdac88f2e5e6af7215240783ba4cf93023100abfeafc9cc1d604431b50bcd08275502f8ba13ab6cc365a338385d9d2c401b281061a627d137dfd565c476eae6dbd1670302047c435bb5006630640230104b1e5b7daa6aa6f9d8f163ae570c6168bccdfd316e3b27b46567a4c2744ac53641d4fe727e39cc8b30ed50bdbf29fe02304974523ea6048c569767ad3cf964ba501f814949a70e9f7f6ef919e6ff103430e0285e2687d3cb9776b723cd0821923a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e99853092b127c562f77a8642f3a22a72e42744110baebd4b7080afc5212001b39c463676da924bdf6b4d1588e91d580023100cd4c4c474f2fa4a92e643e32148ff9c2ce3eca0e473e86c14305eec77f7c3b598a3f776c6162562c3454013de02bdfc60302047c435bb50067306502303da82c3b0292da776db0c7b52d1e7e0b48c013a360e042188c9d3d48c9c9c03f083024894d70e1b0d6da72bba03104df023100bfe0325f1a5e9ba738f528160262d3033f0b93d57765cb9cfd338681f88dc34ff88ffd61bfb946ea27e2ec6f5edc8f140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304141f8b56c5818a9504a8a9b8a8877f7066d4c0a88ec02383392d83169144c49ba5cd6643a1286ca3a5562982852bd5a0230784aec9949465bb42c2ed53436a1e380092c32bca1723cba76d1e7f56bbb87d06939d97990b003b8b0f85e29a365c39d0302047c435bb50067306502303cb7f19d69136709470356cfac2249c164f8f684bc7d3dbbedd537cd9a80a57f2a999f040dfabcdf527e0d87c2952fbf023100b19e016e13672eebb82fdd77f4f1004b0e82a498b2b0a7a04c30384fc400fa2cbf282cc652e84597b585f18adf123b520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fbc2cb2f546f07d7e0c7f3a06d3816a7047544348de67455f41223a4e5d699745fa352ebc49f23fc22c459c8b66abefd023100e1e113faf954ce1bfc08cf17b6d71d42dfff209edacbffe6931325d7f44e0322b250aa08cdf8fd21e270ad896b8b60db0302047c435bb50066306402305d57d5de500fa51c43dfb2c40b71ce5d38b54a358b1143101aa1a338157839e7bf45efa039d2605f35eeb27b3955632f023044440b6c9c5fdac09d4aa6167fb046949859e806f035057ad633d68c2943707bf8d071afd413d1131a23d997526da4200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307422653b48cb43ce8313ca5537db81c01d17469a6524d79eb4b6c6c3350a63900100f791cd04c8ad16d2a5378633c1b102301ba9abb550160a488c3638215a1e4af325088fb474f93a075e450c04c455403abbe824add6c7b8f3b7e6278cb51936980302047c435bb50066306402301d687c90cb09f809f40ff8eea59cb53f0a60ae12c3d469c1de7ca155844e4d72e14c143d6ac663087f5caa949e1ed3eb023030fc5500c5a0cb2a8888cea34ed653bb759e7a93c3f8faf4c562e66d1784c6000259fa87321779b1c6e9618fbc289b700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306d4c8941ecedf53c3796f00580ccf12eacdb65b3be6e7d8e1999b8ecc21248f4c46d97a536d4e87523a96ba41784eb31023045e0f9ea36dcb45ce69057a1f4466324d6101fb61181a8e21609c33f9d5c8174e7beb6c0dc6a27588b7e06a7c5f50d990302047c435bb500673065023100fd6462f853987405b8642325aea7720c205f211ca9d74b7d52ed940efcc9213d9a2502dffd8d3cff52da012b5c09ce6e02303c70b3370a37486097d1c5324307010ad1b333a503180e2e5157079e07071007861a67c99c65eb8776a4dd4ccc0d91af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ba9567e06d82acd1406c734facc29190bc5996c632c55e4a445b3d3748e36bb17838cbe5818d924475b19f73a99e4b4702306b47bd48cf891c71dacde01f35035989bcd0f00458d5f709c1bea96a2e78878faf51fe38411800c6703bd72f352d73400302047c435bb500673065023078c9f857fa439e52ddd8e259af8c44c6adc491f31c23623e08a1f5994a73b0ba17b109a2c36ba38d56228bdf12b888ae023100e6da4ae308b64be58df88f8f2c8717769a9dbad8583c7b09d027d3d7eba3c6e0ae96acbbefa9d40fac98dcf9a40686db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e582215a20c24f8a67ba7b298a78c3731f8c17d593dc02112068f6303caac6b580a678ad1e24d9d312b9a5f422b0fd050230303305180bb38dc345c45eea607d531360c11ee52bc6d6aedd41caced3111172471dbd0f84d19e0afda0aff9894a0b2b0302047c435bb500673065023100e160e224d6a5c0b49cdd5adb53ce38c86e3100ff2d4f7314fa75bd74e74077cd687f95f1dba617161d50a7f669d5b1020230240f5ec429853bf56e0df662cba06e12a883b3de7e14ef42507bf61012ae0a68106e0394ce84733ff3ffdb1004d3d89e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023061dfa76b01d900d9771bd27b7c3820b630b912811b2349aa147fca2f9f9b5c6175b6d057d30bcd7420fb6bea7d0a0c6a023100d1b62c6b730cfe3365ca731f395374a456542ba43788e6909e4b1bc45becbf84b5591c54e1d4586832ab54789a32e0860302047c435bb50067306502305679f3e8573f2d87c7cfd865b7f785356e0a4c38d0d36dc58f6da3570d24bd76dfec2f0b3dbe71a5cd7295987e52544d023100c93451d8dbf9c52826a7ec2e6ac38f315f1fb0a8cd01d33de503c9abd4197cb38448769948ba4b06aaa8c9f082f7d8780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023032346fe95aaad5219637357fa572ef1390d321c949cae87bef81e4bf7c91c6dce6a6fc8552b034a1243952335a799f5b023038aab96708c8626a918ddaa6adde44741ea0531f4ac2974c04549b79919cec6fd1943d6d2b9be9175f078d20f01869c60302047c435bb5006730650231008c2aeb662497113d9521004b7834e3459e01bd3ecc817b211af62ba64996660cc27c28b5e00944602b6c96d78a9065170230715bbf0f88047af94dbcc37de1d3344bd4cff9d407e19d80e8682f488c1478bdf90947d04cf3ed7bbd539d241f98d4cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305f9782d97ba86bb38fe4edda4eb9231b233353abf42c4a3125712ba9ec46e2e07743e4ab814027c7527a2851917dc2d8023100a24cdac142f3d5e47536d4c282991cc42716cbd53783702ad225a56aa63caec7913d0d35bfbd682c3301fe187fdc0d020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307747add8de5832e88d50d1ac9365e75efdccfb293876e41589658ccb32f311ab4936ef2003f30d3199c73d227c7069ef02307a2965b744e44150d7e181d955847d83473673e2c1753cddd9385b312666498ac932cbf203678a7484972a381d40a9f00302047c435bb5006630640230785f435277fad833390c8badd31b01d7a568163f044452ab12aaf1ee13ebb03f2c09b23be8a44275ff5c8ee10e6cdf650230027eae27ccfba3628a9205c9eca95aee48af7d97e20113e02d752cca29efd3694b65e48d1df48dcb0368458f27125ae90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301c41812c64f2775eaf81a05bf13f0b396e9a1034678b3437a7a77b0f71e7e4ac1fdefeea1e58df112aa607e864d008f202305d406f185ddaf42d0b5b4ded3389b762f55c90016e4611ce4d7d603ddd9638081de17e4c67ca2085854039b399d8d00f0302047c435bb5006830660231009014332cc987a9d051d0e142a9117841e2d79b24bb0c571f09ac1c6a7bf7716ce6e5353ac1048f90530da89e4474f731023100eeb707dc8ef62a24d61b9ef02f0439665150f0af6cc93c4eb08bd4a047d9f8f70ea2aef8975c980dd5aa0934802e09e40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ec32541d3c10d17efe691320f2efff1ad5dadc2dbfe081e150a855837e448e6a210a5838f2c4308126f1a197e46994a802310096f0f2ff6197b84aa59f18345ffe1099083779a7ea08d4c2ab4ecce5aa7185cc7cc62c829c654a99eeac983e70f380c50302047c435bb50068306602310098110a5f8d0ff2860342aaef38d1fc79a3842159811e49e1d241ce0632d6d63cbad9b744f1b949242fbe0f91a860e5f7023100a0dd057ad01d6b8b013cbb8d2db8c4c536e9031432e18181dba398e9849c29134a7158ea9fea1e7404db639c29eeba870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eeb30e6358d03ae303347b353b040d29808a806b668cc976bc72bfbab364d8f4c12c9d3cc6e3b3817cff7f51233f7542023100fb7f53a77389cb888079b6d8e67f3178b4ea8a7a18f396e5c2affac4595e75f4dd7aa547b3406fa6adecdd7717ef74360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304f89dc61c2bb1b24344bdb074fb7a87edba7b53bdb706b26b5759eab14e33466df52518378393cb37202934e0198e23b02304aba98612288030076fb5b20e4d11c7cda784596c1d046790516846153eb61d9fe8494053de4a9e3ad253b3ab8acdedb0302047c435bb500673065023034aea11d585afaf480ef66aada238267992307432925b142e96e5c90fefeb0c2b2c00762557e9ae45e10228512f48e96023100a7c7d9267f136f1430caa1a91dcf5b416edb6c3990189d36bf670de31adcc6c126c1b182a3e3519d09d9b00881875a230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dad447af26c16e3412fc904425d860df1b325e05e2a0aedee41d24612e19c17232e3d0cf7de890373ef9f8358008dbfc023100acca89027265eb08d79b7fe317b31ea9a145f4433e1aeab0e915ca7b2cd6322a283cfb2e517e81c644fa6edc690e47400302047c435bb500683066023100b59a21c0a85306b7f531abe131a7266a7f5bfc157178e1d0757c146b4b5518ef47f7660ec4807c06427879775470e599023100ef627d963468be487fc8cba8cb422e8f581ccae1ed19d737fcee227e9d7f9c1a0628178aa62af8d5a071a80a131df00f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307180aef2f102b000212b2d94dea63806eab739275f5fa12029f60c976db9523f0fd4c1d11e1498b6f53fa4ffcd26254a0230177f1d53783f6a5d0fa566fdd6893db8ef69b3cb0a1d002d82cad428004fab0867dd1879d62503ef0b36671204b012cd0302047c435bb500673065023100db9300886a07056bed8b07192c426056439f8d35fb0dde1ebd5614c34909c3a1caad6aa506f559caf7fe339bdfef4f0d023023faffbd23e73971d3e0b419815720ec5089d07d9a10c27c855cf2a43d7c4ff787ddf26e76fcce6027f03608476d40a50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023007bda8e14e4ae46445f802da8492bb936a96ad336742154698eeb8a70fe215e309dd8bbe0acdd6f927ec0e6a6485cab002302773955d5efda4258a71f6e421f18eb754355af6b3e6024692a7a12f7f722e649014205a555297d81e0b92a60396e5420302047c435bb50066306402302862b433b95d947db1f65aa2dcc647e4c887052b8228f87b6df8519ab3ab89c4460d1dbe10c0da05b9ef7aa2db8058f102306a22ae59c6047db5cd632c126a59d78cd0c6bc20a814a9784a73f070b3f335a17af24fd6c319c3561799141ca129cc6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100caca35556ac93af59f068683d7692b21ee0e802285515d499a714426c069c0935a9923d7ad01fd72b993c0e9b35e3f1e02303a2185b71be464f1ad6bba337d9920d71061f817e63ae46ae26c083bde84b0e64688028b074ee6377beb8d299c8849370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100933ac08e9ea593986f19de53744f30b03e9416e957f3887872f4912518836bf48f03a0df13c4767bda87b68c3e389a59023100ec3a524b99a0723948154b7cf68b3af2bce0bcdbde8f71b068dbcff4dbe7090ac928f11b2f2a0e8d944178999f606e140302047c435bb500683066023100d0aac5aa5218f0ecd506cb6867ae308c30c2ce6f1dc8c9b45013ba84e385fdea03cacf2ace00c8a26542ecac80e766490231009bfcf0076691fed956ced19b954eab178861d8a10beaaee07f969891f2964e1cc19a6c8d02ab2ce438ad82f44692ad560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009aceac709a9e4af8430971d76571e30bbff63f76907c201fc62997f1e1d339993713bcc6a9de92abe1f9c739195e6e3a023100e43a313e34e1122e2ccf47ced06caa3df80c6ea4e82140fbca1a63c92aeb228ee47427a031ef310569e0f5c7ef79463c0302047c435bb500673065023019e27a0b738f92668a820792b5caa5c4fd676f9d69c290ce9a22c66ca800dc3eab661ac9eba0c40a24b0e6c8473b700e023100c25c703b965249391f272653e3ee58bb9c29419dfd52592ac86f35b0d4ec475692d72b9ad9f7a0e977eb92e231c9fc7a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ca813c4d0ce74e685e1a8f836d2c56d11cd4dc358d9a0c82f9ccd55d8ced8bbdef2a8af1ee06f1e68e5c43439109bb76023100cbeba873a70f88edb97010f542c19780a0d0cc957b2a06c1e9d9faa5aa1ba282cb7ce3e921bb8dd0e5bb5afe54b77bcc0302047c435bb500683066023100b92dd8e00360f5395722f86d2b70bdb7fb0161a2a7cd0f27d6f511fda3afa3b059f9bec714979dff4a6d225321d138d00231009bef79e23a020bcf7fca4f2626657829077513e3a9a49bb93255e5b8717279ad1cebfc9778cd5dd5b0ab813303b1eac30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023019fcf66f2d9275eb9ce9124c2fbc4d43ca3882fd3853c110f31a0a16c57f33951ed5d5f6df1bfdece94ea18bed2787830230048ab797a550217b1ff4e75a051d010fce18a40288f35a232044138486aa2449d2993a8cc127123a8b2daf6c5b6693cf0302047c435bb50067306502301f081d5b094f54420b0abe31cb12f68f1f397b37b1fc0fc73bcfba27dcb7596f2b8a8b68df96c42952b770f018edd47c023100d79945c44571276f10e56ff3ce746b7a22fda82eb1016541ab692cb04f93f9329ce8f2ddc3b563761aa4e3e6067a96550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d776d4eafe2c454c27ab56f2b1d4266f365017bf4d80be8a88879069ff6375ad127ef6db9f1921f6d524b2c2d0fef1420230157e7454962c3b34086f6f958ef397ab7fe08af2fbda3c04ab139767cb084c69be9c10c5d7722b5dee8078768c3738ea0302047c435bb500673065023038b9216db92ea56d6bc600aff7693cfe0bd3035e1b9b0fcec998256dccbb629b45646ca2148e775c9adfc382d2721365023100dbb6069f6cc319d2f35848b646d1e5158bd344bc78704e2d367951c9bb7be3a2eb7d64c845d6558246b1b9f8c99d91280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100be2bb5229ba5aef3698287868e4b8e48e2e75f1007267dd41553aa3ed015356f3b83a7a30b587b28da805e182f7bde42023100b2fca605d76499729a2e9e485387be566538a4509dc3d0d035a4a054716d1e2916f4a09edab9f3853b8b1fbc967706760302047c435bb500673065023100d00f9b110de4967f6dcc8506f06c4f73ba8ca1ed85fd03faf9254ec923540db0e47638dcb2a9e5e5410fc0258438768f02305e6d776ff4c84bb219fc0585d971c9581d683e3516fd6c03c6812be55477dba2cf4f224270e2a7eda37b9c0520c392c80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301e66197957edc834ba9bcac99942785a57d87d97de3a20012cec4670975d721de599f5d030bb2154553b88152294e51c02310082ee10eb88183d206f777ed6348e770b6a1a4aefba63f363137e32dc2b1ebcdae381df1bb06ead2ca0ece43c57e8d6f50302047c435bb500673065023100952091206b592f8b2fd4d5ed0773c57803eb5f714ba1e7aba3430a3330e4eb95622cd2835968e5adfb8837e8c36d0bb00230479108cf8034f65585e37e603c6e7b1674a240f281dacf833e605a09c1fd851ffc0a806c9276b248745ace62f5b25e550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305dc6baa0b2a63ebfbe5a43a82508e7c9ed159945368f9a292838b6449a0c3c7a45ddfa274759881362a4c557b9bd8ddb023100a26c04825b8be28dcfe27f56916b8c631d080944d0954897d312a41eb416b55388d70583992e9ed2743b69aada7c491b0302047c435bb500673065023076f4e643edc66b8253678b1c946be086203c32fbde6c94f08a744ea3f43eea76dbcaebfed634e7fe94d2d25cd05314eb023100deb92799104c279a713702fd4642cc75c5007432d6b734c58e995a2b643a27bb8c35788175f15434415b484af73e95c20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b2a309d19a25d938a4c5dfc596bf6d6be430fa3c1c000e692b3f20fde7f57ac2b115a317dc5b35e6b1d7cf038db5aaf3023100b6ca1ad37ea4b8e38a3e93f2216cb095a4f6559667af597d202cc0bc0976dc214f65033e5e4eadefe0940eea9d5396da0302047c435bb500683066023100e358fccafd8f87f8018624044a97254e5c578ad9e80030c01d6fb58b95caab5ce1c667d05dd90e2b5269eb00bdfa38b90231009792f23cad312af739fd01270682ae9529a8a9959c396a7cb3855bd80f2ffda3bce4d5513ddbc254bdbc49dd7f92c63e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100814cfb81faa2794ca649e72f1829a876328541c6fa663aaa7b522a62afee206569693f7e036f6c44730ef91a710f21ae023049d7592b0ee20fbdd59e2d87f8d9026153ceb0364d6926bb3a4457e55ddb20f3489c8724dea8f5460a4a0cb612505de70302047c435bb50068306602310091aaa355fea54f9ae3236a6e2c0c891be28f1949f3cfbf79879ff996b4142dac59659810f5e9af579bcf547e32996f43023100e639fc967f6b4f3c463164bd6dc2d1986963d79abe57a9b93fcff9c10b031fc0aa8c9f24ac43e43492174c2a85efca990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230057772372f67459731c26bad1c8d85f63b02ff4b5219f92b864e4e68710f1a728307fd3cad6be8737769009980c3e8c1023012c1e7031c96b58f6e376fe448c69337fd5d1b5f983da555bb36ca442f6eef598eb64a91d1f2f3312acd6db731553e3a0302047c435bb500683066023100b5de1ef46e652796ea1729bbc84d6ce9088801d7b6d81637694c46ab18f88541514827521220c5b0894e552399096c0b023100ab44e1a586bd5236720bcc0e75fd15d9bdc19b0f1dbb5f18f24e762b01b5ff5aa985b6c97b9775dbe4e13427c232e5150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023049cd12f4258b305ff41fc9942b2820f19b199c1ee4fbdf7885bf349c91799f859ab64c43dd8c722cec85ca3b8432a09b0231008fcae88638a380866a4cc9eac4a374dce8adb6b1fe19e3f48af6680301c2834a9f91e133406254d86a501d7111a98a390302047c435bb500683066023100af65ca7d716744b34fa489aab7302eb17eb88708d17c05132a10c824efb896594d18f0448a3681f8818fe8f29c2584be023100a4c5f728f32c2f775d086b31b4213bd46361439fba1c0891f56998c5ac7f4cf982cda7e14f40316ae37d20205092416a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303e063fa6658c6434db0f3440673f89ec0a55f84346586763ac77da04cb00dada74c0f458e3479ff64b5ae3ce377eba8f023076d8c43cae9599f016187a3609949e5ea5d270ba5fad270205795fb714ed08d04904ed135ebe94ac7f6c5e00ff6bdfcb0302047c435bb5006730650231009d357de0c1cde9b486be692bc51f6a41b99f738761624f1b02e3db6b25aee5bbd0c3a77a0a7f557000ad019586a1f51d02307447f6cbd2b9a8ff589a35f10d12e826380f11bc90f2040abd239a1610fa925ac316f360b4b36ba9fc5195e8aa8f818f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d4b42ea94716b6d0a8a0b95a44fc4eae6d7d14ee58b742f2115e6e67924d4c82dad41ecd7247458b05560889e7fc4cdd02304b3a66a7d86708c939e06f71d22e5b0571c6db0971bdf1fec282fe6300750fe3505c146c72d9dabf552e764af802fef90302047c435bb5006630640230380228e56eed1233e555c1213bda51976fe5e5f0c2d5028fd2f9228849110587ea8806f8a17b6aec6c39ed783e61ae2e023032c2b8a8b4ed6b036edf17f204ebf1e41a642d9cca3c6189fd3ff42fd82b3a73c098b2d4034baa1ca8c91b36cc7d5f890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a2c1687f4a0a67b75b5ac20eabfa5294e03f66f18ac4a4a07c74fef39db02f4530d27068ee75a36e8197df56b7b1d55902304a48c98f983841c534070fb05b998a0c3dfa061afcba50bccc01b5e3a435b896e60a1234850e741fcb64f5d0e6d356350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100da8099e57ff4ab03acfab1a49920f9e98378387fb49997148fcaa0897a062e3ecad88228fe0d7544dde8306599487b4c023100d1eabe1c38ee493d7dcc43b3b9307ddc61948686084b24848431c9e0821e098b5d5441c4b9b5c6dee6ad2b0954da109c0302047c435bb5006730650230628806577c1c34ca7b07a06c78e204f82dc4891c6a941e9560b21b51be1d4d1b037e2b66be3253447a660466208f7a15023100e09398868eb067f0bfed4a5520fedf504e166aa6518f70fb8d2ba1292718f707bd41203e1a7eb96036857c4b18ca68790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023032e125ce1c08d72d4746c37da5e41ceda6de28064d84a3704efe20c280d60cd54bdbeffb2611ca1c46bda48c92bea2ce02305e35406344c50f8b50ce067ca92e5765e9e4620503074f9a6e3a55fe4c7ca87ddf292a2767f6e0a5137be77d6426fe920302047c435bb500673065023100e0cb95f9b11bbc1964d36a6dfa4f4285ae2326111ff3fdaad9fd6b37d67530a9af39c3480818a34cf21e901b6451ff77023069cca4b7f2a2c833f0b75ddeb86fb29efacb9accc01fbd2d23740e190dd3b9cc55da8a2c41b5dfaaad0610b4382e24f80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b572ec67241d4b7b515e8b7a8416080ba90f5d9eebd311fa113bf30df773152357e2ebc0d92cd4432407e58eb533d94e023015fe7ea48406b7f1c7563223dac31431e12b28862ac5344f4768c10d531d4deb2b9e3cccce47c01acc10be53b988010f0302047c435bb5006630640230131030389cbe375f80087e1c88a05383eb96933cb935594b4117b6aae8d5b0373dbdc0fa929c20de87f1e22c676c3df002301aa8018e5b8e54ff77e5ef1f04e493dddc2731ab4a00037ab999f5bb8354b68018d3dca92523c3eb4a09368828f2805d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023061236015f88c14583ecfb42fd9be1b1521fabb5b76ec04fd490297b883d7df4cae4bb7d47c31526beb65f639b037d78c023100a63d1f38858d28a8fceb50e29235a783dd35a135f333c657461f8e615739b2024cd890fbee53bc2ca0d3254a180f186f0302047c435bb5006630640230329aeff45e426b95d55157d5fc8213bb3493d566f0d767d4c19a154e2ad0e25d3c23907c37644341e35c4e161a89580302301febef08d13b5f915b0f7017446006e5b7c33fc88e03cd84e6e2763e5cf1bc2ac35ee41326962731e6629f88e13865a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008d888a11f31bd85afa77f7f0ece28e4e311653ebe53e0b178998757b2566c197962a04e0434c7ed9aa6887a960ed1511023100a2f376f249b0706e744062bc153450bd46ce007cef167599c7022fa7487c0b6a8bdd6fe87a4d89416ebfc0157e88a6150302047c435bb5006830660231009e26f0234f9e2acc63a1f27f7b508a049ddc8c42eb908c4e1d5555ac6c66448c343e2c44d201147f5ec93665e4017c8c023100cda349f70848079769fb5bc77ece83ac737ef8c557b5eda4a75c4e003f8e799d5d55747f8d7f6b5d751ebcfa4baae9e10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023043bcbc2e10be4a6a96a42418442f6ee1a02f9a3db5f1c5db61e49807e2772da4e81e68d9535de20aaba1d0d3769e0dc6023100b66489e90193373d13021f02bb7f513e14f7d6bf4e49691c6ca6d756cb152729a36ea6b125a1a506cc78aceb584d2e360302047c435bb500673065023100f6d4672021a1bc8718b2527f6a5f7337212fe24c16d9fa6d089355de93c66381b43349079e92a11a2362614591a6d7bf02305527b6b208df065456d21a6584789202ee484ba277a610000b424cd1071a802ddebf090197c3e6dc49fac8a8f0885ed60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b93bf8591a951b898da7aacdaacd10f37d6980975d8ba422ae4d7db492f05f6751535d71b510d82aa0eaa773899cfb0c0230620aec79b34859c3875435c01ce61667e546e579712d85eb291bd3e7e4612b6612f64da78e5880fb1f48d8e36163d0100302047c435bb50067306502300fed41ec076fac475080713dcf91f1b48c42aa18a0f164961859c6ad48fd134ec3ce191f8005723a91fdb336178eacd1023100d5b93f6a9bff8e7907a65ca7a4dbe6b4ca893c9002b3cbb892d37a9bef221ea92558f70ba6ede217fbf191ec9cc033370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009227cbc9c73d4bf7635786cc7f9ef3d010fe9385ce788e29064a5dfcc932b5be23777fd2fd0c69e24d4b8088fe46898d023004381f7bf70a61caceb07721d3c8a119eaaf500f9e70e8d818d81468e12305dbdbd1ff655c15559aa73f30f9e0a3cd340302047c435bb500673065023100b17da9d90c045b12dd1825bd213bf97691e044da5e0ee9eba9285f889be40a16077f85db53da1c4bc58d956ce5698e4e02302e8f76b7424bcf677947994ae16702d9ff3151f9190fd53ceaecea661cd8e7591634932aaa53c090f50ed33201efbd5c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a0d47d2cd9f614e2578fc3131804876ab37b3c0dffe6d12a52bdb011581c549180135487396aee27419100073ced25fd023100b3208b603c514a78531b04d930a054afb2bf196ff61184fa05000fad1c8b82dc34291531519f4f1eef8c680ade123c9c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023007f8b7e5785d7ffce4d6445ad3c4b541a9d0d7473e230a6065370ade1a7e5d9e67701b842aff94b47f9b866b15590de3023100c7c011252e3e9adc49ecae1f1bd8235dff70b597ac7170e28d31122b666aff357aa68eadd284de2b5268a0cc3858d5c00302047c435bb500663064023012fecb1fee38ab34c43e6a75959979a89d402154a171a4f8d39000424986c67e4e7bc7fb6adec9ea1b050da2b97ad8d0023078b1c2036600b86f18cd2bc0c78ce0d1a86f1b657d3de32b4360cc2b72f421840f13451ee5af58180106f0c0aa1d49f10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304a1dbe59d7412791e95720c8030f1ed8acca28cebf4d4eb72bea4f8ae5032d765312cf10490b4271c39686625766b67b02300092659051911086a8ca95aa12504e02231244bbdf4bbe9049d77c4a715be61522b9137dee15fa5c6e70c98a806e2dc30302047c435bb50067306502300a3d1224f3d6291cbe8c8351add3a8acafd635ea82622370c71857949c86e671670bcbe7cad2881a5b601d515ccf593a0231008e8b13f3081f205615dbe7eeae1a8953b95d522fb7883da7d8df27423c006e402c92764942e2a3a105cdb24181a5d1100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305b3afefccbd97bde40c407dfe63433e8b98a6a0d64c27ccf94552d9a64fe72025517562fc71c539c88bf43918473e39d02300a432ba4c337b7aeffb357ba91d56cfc545c56a5c4af6e7c7502c3607ea6a33ccd64f9d6388950f573f16bcfd82744e40302047c435bb500673065023100aa5a5b3ddf054189d6f3db835f494579c4ebedce342261733f927e6099e08af0a1856918fea851f9ce620b7153988e740230563cad712d59d6e04d701981d8ec0b73ca27400a7845dc30f0bf619f682a0e3ff52ae682835af3b0eb7d9a84105db7750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009784020a7bb80843dbdc032a8cd7148ed5963063c6d602630359a2e5c26e8f219841837d749f9f4a63c0d83f480dc6690230651a6d16996a4c50518ef75e47fa4e7f1d543fcd7a66e019756f412d3019e99253d14cc1591f1489911680bb75f1c3570302047c435bb50068306602310090dc96bb45878308101809d21c2440aa4ab6393aa6ec26aa79275d30e81440425cb5aba3e57ed4fd042183fc4ea3ed8b023100b3878da747408ed9025e5c53a17dd37d23297518333770b7fb9848b222ae2e73e04cb05ad15289c95e67ec569c8258150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b42bfbbecd7003494a1fcab8b87255df7e26882e989196916f8da8dee17c4723e268f654b1a77f09c97329a22ecbd447023100c88eeef8577cdb97f5d9e0f81dc7cfc9546f8c540672179ca718048196ec6c28d68ee16365ad4ff6aacdcb29a71166090302047c435bb500673065023053a8875ffcedb12033fe6113f980e5eb9455aa71ac7b1cf6c219dce61d1e8ff059146492c8554d574dbd4caacb8538e40231008838edc826f7bcaeb7bc65c968c6715b29ffc4fd5b1f924cb185f255b486e43c35e1d9556593c2444db1ca9929da1a0a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a430186743408234f9be8ca44a4304ec19094d90c3c11763f67f677b9a5c85d055c8a6c85b6db6fd10924bae0b3d55990230499e471319b81faab967f7f6055181061bb38e6fbbae97e659a9c80e2d7050b40040bb6f2770714f039518dd6b9033070302047c435bb500683066023100e0703ecd4ad9ac3403ce4dc3b368280f2990b8e3793b63ad8546e01052dbcbe450e7768891a14ccf62f7fc361c7d66e50231008a75ef96cd078edafe2112bbf320e2b9dfcd907e83207607647838ad069bae24b9f08918e5e55b790e0978cddd94a9220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303a84f54bf3a93bb5fa09bf4e9d032ca800efa0685272ace3f3e0ff66e8229940c1a32f4dbc3a6d869741088ee99fb36002302b79a728702e77ad763905f228e5233d4eb08eb95194070d0ed92c67ae859ec62f6c72b7bc8d516fbf557b23b4e3bd980302047c435bb50068306602310090fd59894aeb5206d27d368b630dcb8337a11fe12694c1d564151fadd8bd7df891976db16e9023894ff63741d70d9291023100cb418e31e3493ff69da6466f8fe65091addeab1e0cbdfa44d7922f0798140b322d0ab866fd6c819d28df92bcc68076780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230324de7627e03badc99304799a37e5ef01710e5f83fc8ab9fac9d43da3e1274b9b4f3b30db18914e6cdedc0a25a0b476002306a097b5124d7f86a28b9cc1d5be7fd55e6f97c5cc215e2f7bcd26b04aee712179d20f76149a764c07978b3dd724ab0330302047c435bb50066306402300a3c83d70529892bf6ec8af7c50fa6770f696fe2bb10d3e28b0b5e54bc2f604ac5e2fe62b6db21056569f3da658d639d02307b06e2c8d8a285d719a0ce30df5a891cc727497cf2c471457da0af7277d1e5f372336c42ac12237bfd66301e6b08fed30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f5b396fa60cea193763f61ece9e22481b2d38bb639abe2a808a466fd19865ebc56e14b4b125d24606161849674ff81d7023073ee8298e74cb9b2fe940f415821177c84df6b14b66262c9f04c8c9256d133e758936e0f2230cf404e60314254a0b3fc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301f2b8e98185c91f4fe17686d74c1e6a3e08b8ec17a2891fea172d2e075c586714356020194ade408bd626a731ef843fd02304476e24133eecd32069cd980f3138653f987c8012b751b94026b96080a71d530f1212bb1655cdd605ab009a4827938710302047c435bb50066306402307584b0fafab7048064beb3621e6f61546dc3cbdf53e47ba23654ed9d20ca5a3d777542f4f773133f7df872dc0aa17ffa023031bbecd6113ab205b255e016841d63272f71c6e72def2f99b3ab764b59fbeebc32acd154314d1009aa513ee10811ac130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100825a56d4583a1c51a211863c7c9aac753b92f3364c4237fdfd7c5b0484915eef147d6467b7706e296d6a1166f735bd1a023100a8da2581fb9d24e7931a3d374b418a5c17c51ef0eeb985645dff3efcf419494eafb3727ca366712c7ee37f765148dccf0302047c435bb500673065023074253abb0639837b4fba635c6ee0773d69059e89122aa9d2985cf1490313e576bebb2ca1e4353ba28a66d7569617f6e0023100cf65ef20259c4f6df620753c612246d3e1608933918cb0ad81486c90fd59b6608aad3ba37d249b87dcf0f2c8e46a081e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307202e29c5bd4e5207178e29781186cc4f29c8fe103dec5f0618d21c379205518c66d60e2b8eb447cd6235fefcddcb4b0023025c79648fc6cda05f0ca454bc667b03afb91dcac682d7fa1b3bc070d93707aa7fbeaaaf88d939fc6648bf565bc21e8890302047c435bb50067306502304231bd4a13f2d91c4c38c2f4e341e11a2127d8f9b9dea5b7cd500f47514de4c7056c28493aa128eb8bab7a44208effb002310096aa77431518325975141479da5727ac8d575577b78aa2c3bb2e99b5e0ef28881e7c60025fe4030ffcb69b0c51e6c3a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fc79cd638c81d09053147fadfdd4487f9b5256314a75c2501130544543d1cf1f35c668b5967636869e2cf39527baf295023074405598b062e3a70facc6ce5875e21aeb2e48ee82511ba6e9cbc7230e045b0f42ecc01f4f199ec416315b8a1ad8f98c0302047c435bb50067306502301ad4fa6ef238216bc207434810f55b1056777ebef49c117cb549732e2ab9cc3f1959f95a2b0d3d7222b7760ae08390fd023100e6ffdd118ee5913b1019a1cddcf0f2167334c63b04d8f64fe2eabd9d4c82b12f99512de17a3b7fca27bb1365081daf4c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023029d9ee5ab533ec059885cb141dbfea91a5cfcc23b137ef4b8789fad75f8f9d27bb5f85fd990a3cb9a0ccf89f0af0e9090230175552fd2c5426ca9dcae60aaa339a47d2a237a4d5f717d8b2bbfad8948ef6cd861245669bbe6bcf0a2178b8445ad72f0302047c435bb50066306402306fb54c766eb74582f16fcabfefc4221485ec73acd8793d8237a6b4ba2f99e7d29202facf0d4686c9ccc85826e55e9c7d02300961b04b6a93008c7874968907fc499fb211d68e61d50c42400d99c8ab6903dc25600b8edccb869f32ba796a4636e5b80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023071e596bbee2caab6e8673806bba5fac40d3ae0f132450e7be9f227f1fc2e490d24520ac2460aa0627b5fbe651f61cf05023100b5806d24f42fbc093defb12943f27fd80dc0e56443f5eb5b9d24cd1787b3ea5343d09cf81979403d306d6f7d4c5218cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306805d1d605698a94828621f509b9ddcd21f183b72b5aa21576cd4e3083405e7b3b48ea837721976344ec1eb941cd2741023100d84482551ae4f552b5ba5721cb540ae4b95817eeefb9b8b70463fc9b392675a7153d55d97e2308b9f4062d37ec3587070302047c435bb50067306502302e1b9b16237c30186c044c0ce04653dca5a8feb4f35beb94aec8c29f6d0289d9a810693491a1d610d4c54e41ff69a4400231008160b990c55e30184ab1d9ab48a15f3c9cf750978b793f05a9e9289adc0b1d8ae19197a25d23abc49c7326ccfcb04bf20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bd01d92293d7a9ad1f865724c56317f445f096738c050ab191df205bd61b70e5d14d60dcee505b90cb8714ed915d896002310089c1438eb46a5bacd7c9970939cb5e5ebc0f0b83fbca0199888cc33101bd240a105a4f25874c5afa4d703f12120c4e920302047c435bb500673065023100af8afbdda282185496bac7e817ef55c73257ab5b544e40682676dbf88e03058d4559a631264561ef1ddfbb72f5a463a802303b0e1a441be047320bbb0f879a63f359b24fa053810277bc8f58781d96a7d04f5dfdcff8eac74f2d7e23610361d14a1f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301fcfd06d1eb4af17b2f7b41b534a54bad45a687c2af4d3ed2607173f0bf9512deec11510a9877d2afa0efa26cf1935a1023100d2ffb0c12e662e76f952687c96b2e4db6fcb05f8f109a4173e7bf9c083b7deeebfb54ca163f5c0d1503c58f1ecedc3800302047c435bb5006730650230060ce6abe48b1401ac1f376078592b1b4c3c86bf9e38bd00a60b9791faa51ab1f7e716e71c67f55971c0735d355b327a023100df51a058e8eefc62730ae9e6e4c5b510e7381c69c9f7ccca927b3660f5978d1459cf5f044f79cac84a697db1b6de46c40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008cb844d7e637a41cee7f8bc2f2682d6bc56bcf758ed19876846f9541707a391f940a6404fd55347994e33d3670fe350a023043bc987e599602e024cd12686eab36c43abf3fe95590daa71337be0bdccbbc36ff22af885b4eea9aa0839c3083f2a9d90302047c435bb500673065023100ec10bf5d655bbd9f2697eeea05ec20d891f8588faf64728239d430b466a01c66d7d267180355c50c369e8a1b3af9aaa402302482715e6d6cfc96d7a7bd90dc5f17cc37161d74dbac5e59e65b5c566551423566d3389234fa8da44858ded62c17ee6b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009727bd556163663ed73b1cc59ef253419d9fe50e4778f8db4ca102d5f1ee5531f6ad597b2396f5eebb4d4e7fe1189b40023100c180592e82285747636e88de1a7db0fd21a4bdcf3fed68eef3323cbd829e5c9c21ee6e33291106620045ff9e4bacbdcc0302047c435bb500683066023100bc25160c89b1140f8a376408d8f9a438aaad8c22231ef38d3b1cadabe97b6b1592b79411f89ac0a92cc61572aceac65e023100c3663df7e0b976eab4fc94861b781dc5b6dc0f3cfecac14f8c31e5d9fbb99170934ba39c3a19e8e3fb610a101fa849f60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302fee8e2c2c4d455dfca4709604107c45d2e782dee896e47ca7d5a19e2a9e1c6c706414bb16ba0f36ad685aa091c72d8002304a9958388b2960c127183f2173738b312e32575c7ff11d2b293a984e52cc356e3e9422e6b0f5c304c449251459678deb0302047c435bb50065306302301d800c1338ef52f0b5471fa27d70b3cbf944cbc1a1d859cd2e5e869f09980c59f64c78c09966bb135fee14a4f19cdc80022f0d256f9bcd68c40fab84b1bf44308dfbc928e11b0dcc40827be9ff29bf8b962253b51a86240f1752226cd81db12fef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307c65909e616ec5dceb7ec998e6dc62809d40a79d3de89cd7eebfee59be0015fecdf788ff0ee4d1dbfb16a33d15643cab02300c03d4e26e5c8dca2184e6cfd517abb8c9e2c701684be7d4db81e340c53a95b46c8b61cd5e7a265cdbec656423f1d0cc0302047c435bb50066306402300f7005215fc9d5851f1a50380fe5b5d73a8374c4395221a89c1d45d781e962821a0d259cecc01f95f3141ff3b57183f50230748091d3c41fbb05621c6c6d0e90a39cd5a8c205b83df52599bfdf09d9e1dea380bb4f67a922d6e716fb968118f692810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023008ddc84a81fc07286e88945de052e01294865ab6de4caa3883a30fca7a490c096ff3711eb073b08984e3c68c4f327397023100d64947a06ad02b4a39016ce4b1b409dc342207fc82bdc4d3d5ac419d2ab45255daec4249dd4572a44d81744cbd4737c70302047c435bb500673065023100c23026ee14f7918ea7023a92e2f9f39f08bc4701f83892e68447cf4c6aa53e9106e5cb4e8bdc5c2a449ec6d4fabbd23402306e454d4c1626f9adbe297690d23ff21a40d91b80f765ec4bc204dde84ac7f3ddd7c4e30bafd5c8eb1b9d5341580cfcd20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230597fff19be5a7c12ffee4d1aed63aedc97bd35768340cdbf81c57f3ff2ab164b4ca0d18b9a17ce942b187be19b4f1387023100bfeebbae87a3da5a20cbd83674807580744f18eb2807ab5fd5f9e87c9235f757d58b794024a9c5b56da284515fe89f720302047c435bb5006730650230261051becd9301178033cb17316424062004a28cc6034ce051a0fcbde528d26eeb1acc3f342044cba5778d4334573d65023100d732afa365326d1351e85218184fbc896476862be56ca78054a362e67354a9a5e32c00d0817ef86431ba9ba7471d48d90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c7f1bab400ff22e2f73bc486e3de615ce6a4761904d8e659415ed3806368a2baf0ba81e038ebd3f9ac4b586dae079e24023100f93dee9a328de9ca60a4a5eb14b5d7d42c262fb0b24df1971222a43e7cd009dc23271f1a707f060ba3484be2de74ddc30302047c435bb500663064023035b027685147bb2a2eba6a8c0e7baca2e46365be8b15aa6df95719af892f35a9d92020de63c1c2d5d41e8f93521c265102304c889b070ce16e0e77e1cacdfedecc1739eb255718016f3ba141620a4a0f263bda66e337878d54532c6e40b9b3447eee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100967967d4a926b087650ea86fc68711789d05f07a8f2a4acf48106334f2262165507ec8eee5431e7da9abd7dbd38963c202302fd1e163260c65a7a3fac67e5001f51da63e064ac5aa50bfdb95d482dadeb71f924fca67e810b300663e101d565dd54b0302047c435bb500673065023100db74681d6f6e092251a4a40d890898466d9bf1ac2ae90e409057b75cad3dc7427581f903a3b80c3b335f46f0cdddf98a0230072e901fe0bf04ab5d01992ad98d5b050c90c1fe5aae06151200d635c19bd3415039bad7d519b90c6940d946612761940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bd43f8e6a011f2656ef9a3c81fc8ad369145491d2810e9610a63d0cb51361a91e7e88ba8883985e43e22ac7fa46d4852023028a498e3467c5d69e98f9c0ef85f9b562aa2c096a86cde01104e01b3d169e7ffbd73738fb26080483316b618e0fc8dd00302047c435bb500673065023100865bb1ab42e49df32e2ace9e65d8dbd05ef24dff3c61267cda2e27070c0bf54d440ebcb7f292d81a37509644b19c09fd023022ebe958507efb212d624c3d8605c60d2e20c6240a8e120e97d3dc8c3f8409b27712ec2e19968c34ef10886313a0285f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ba08fc5bd05779f4ef613534b2e2d265d6da2580844148bbbf5987f79533c19cbe374edb873587b9773762296812d0be023100e9f38f9d1e3fdb31a9bcefa011b59e8118cd726129547152441af441d6cf102e2fab6667178f63efbc607e3c813d36120302047c435bb50067306502307caaebdb139ee0820f84081698832520f6b8bfe0aaa023f571f079842501bf2014062df582545dad15b1e60660399828023100d37585e88e81152a6705bd788f9e6f4cf2e832fc3463fa3b49ac25a1edbf3409d6b2546ebe0cbb9b2f8c053d56f3bd2f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b4393213b6d52befb019e1c513b867d74523cdb7b31d6005cfd2f9ade4b2f3fc257f77d357f0a39c403ef20089c8777102300a7fcd59d378f9eacd22e2c8ae79209bea149effa3df45b3864191908aa8fa6f6e7d95341cc842c503d9b478f6990d6f0302047c435bb50066306402300085a17d8a2d2b187dbd65fe68903156217be1f296c95f8b8951570687ac79d7251808849b10f97faa9fd02f97a8da5c023028cf697cc7ac44177a66f36204a91f74a1da6a7cb6a874c3983af6db283bd4250c6f8f71b27d31482b5cc593c08adbc00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023042de01507f701ea3397fb598bac699676119a7d0dbefa324bf90c9d0f7bc3d8a2b02601d64de717c5b25e5d92d47088b02303f20baf035659b6748151d7e57d641e2d89bbfa8f53ad6df056799a3eed3bc28128e802e4a9878c2f47de341668143a40302047c435bb50067306502301cded778e8ab10a2e6254a8ba20f7b73c6bdab2045118ad7e309d555a68e8baca3342d67f3290aec20eaaa5f89ddd0fb023100d59120e3943c897c05e6c678b403c7b7b9c439e21e164bc7b639f2742163f48484b06ca103fef98e2916dd17e946299e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306edc475d6df1815db4ef26d281e5a45ebaa06c6e8f3cba8a9d50bb5cae26754506c3d2708bb9f8b0e5595b9695ba3ab30230314d71baa092695eb4bd93508be66944ba86d6d49fa9d06947c11ff8b15d4488301614ad4a2152f3ee6a2148af82571e0302047c435bb500673065023039c4aa77f2f61e2b2c984ca7f9191fcd902ec2b2af98f757ab0ce5830813f305086123e649b7cd5db01a76c9103c26010231009a0e7ff13dcd448bef01672c33d8dc56930cca3f7652b571de487258de9909c251f59791bfab480240bf773f0b6458f90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301acdcbf4ee1c17a41695b8355136476a173c0f446b8cb15d7680e3128a761bf251568d26ef80e87caee895b9981d7afb023100abefd31c9e47679388362ca5a64f51bc6253e434ae87423c91bf0c04d3d3951d3548968c4ae3233001bc2385d7236e3a0302047c435bb500673065023100c593094248363d977512f5b5ea9fe6b6fe228028eff2d19c26e449e86ecb60e768a008ec11cddb0a4815af8c7d22add102300fce8972b8401923416d29aadc1466b8475c8d621b3e6f0d0201af92530d2775ae8dd25a5dbcab76d7dd97920931dcc50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023055d7c5008bbe1907cf33ad258be6f41ba904a2a6a1de81ff40481acef7614a36cc4dd3a1dbe9ebbe594b532ac7789d9f023100942f5c11ddd6ed1e00564bc59674f267e647278d042e5461f7bb4d69991672d5d12b0277069f4a9f1eeb8be4c53680140302047c435bb500673065023038095844cc47731b240ce2fa500c15eff2e031b6401c56b8c7fb0f7f4f54c133ba231408884eff85958548aa208110e5023100fe012f103621ec6444421efb1b55b8e657c476d7cf38dc9ecd36e35e12f5d2f0a24fda570a8eccdec5a04909bf207e2b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301c7650187b75e2e95d961363359870c024d53b05f48a65196df39e13eace24627851b4b2224d033ef61929c9d92f2cec02301a5e29d3e1e06473189a360bc8d26c05633015f6270b1546b4bbe138a7c62aedd5980b9e2123a30bcacbee92f556834b0302047c435bb500663064023047c7eb500339cbe4adc7d7cdc0e70d4fd35ca4367eff1dfc2028f6aa043babdc578f2127fe2da5b0c1f3a4561684cf9d023065ba67b3523f857aada54a8e1ef1d4c1a6f0a3d50b11ff8ef64c9a5017f7f5df30dfd3d366262c93eded053bf0af08ae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304eee19d3689e140ad25c11b13de13b7abd084f7c105932cc983d0b46560732b656134f746aae6b82b1350437dc6f7aed023100f4769f3526ee89e29a4781fda081b5472888230e5e8a91d8cea7cd9752ecaf510af637f1eb72c05d17b7817d0f8777460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230727a0fe7e61be61ee2d2f0f68f353f3f68ae9fb2879a00639a30601aad325821166ac706efde5c8bca9507b2053763c802310087eda55055d5735f1f060bdbefc023344281fceb35ff458fb40aaee890982a8b064b8ebd87a192add504ad00623928cc0302047c435bb500673065023100d903fc28739d2923ac6881157f7845edc6f8b56003a8487d8f55ff6b94cfe45f87ab608489208635b8ca59a95aec94a0023054881a19c4492c80c9bce6666e71222b42bf7bde283cc22c118e2a524130ac0749c2ae923de634e0dacfa4ed40c6a39b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100de31f0bd75f01b641cbdefe354c571ca4193c356cafde033ffea411f28681325045800e178d3232263d33f2c58cc41750230780a57495b6099807c837d4ae0b6a298e71e951895ac75b1a2e59cb83137d0912d3e01d40c1e7ca0dde4b6096fa984ac0302047c435bb50067306502303a7a9fbda14dda3c3b047239f4b948d9e4a8414132e2ebaee79a1491ab644e2d9873da86bff01ea251ad0e52481777d6023100de9e6bccca421a119fcc4f05b4f3c91d90c705b5138fdde7762720f06e22be0c889b0b99ff8727444d4587825dad42870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307702d163d47ef7209ff943a8324ae5c039f5ce12f9c80eb36dff3a0c65c34e6e9cc0c00dd17802e4187a0adbda2f07290231009fb1f7341149ff9103131879ebb7e9bc10d8729c222ff3bb3ec504048effc90733ad7790d6acad9fbf679b95bb7696b60302047c435bb50067306502304affbcedb0b9c4fb913b0fc95ee07e66d506e930ea655f22173483a9b9ed7baee40d01ab2628e5a68549aab6c8bc65d8023100e348ac302a500e6d6e0f79ae351b5ff4222e27b93df6202b27c625c1f47f2aadba1fcf6b533a97f0c13b64628dba7f8d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009eec9d636f0ac074546fed0cf29c2a2a9f9ea233a222c0a38212dd351424fee16472ba3c77f599f3321844501a66a2b70230095c57638fceb68f084ebc53d5523615f78608bb759dc01ea1cc477f46f2e9439369baaa8899366121e6cfe274eaec4a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b7f390d96a569292c6e429455b529bdcba5f22db26870238dab6b0428a525fc3aed24ce19ff57d0db54f85cabce305a8023100ad1e122cf44a9c2c74da7004a199da0f43bb7969d116e01187f206f47cf24ef340e0b8cbc1e715ee62fed3f911a893110302047c435bb50066306402305bee848c29c07f19338681ea9df2dae42ed2822e8796a3aa52bc96e54b71b53d207bcfb901ea286b774e1c926079d3060230271680e5149c1bb4fae3ee4f23fabfba7719f2cef62cb6dc74433e1fc52a60b2d679233043eff980e5588480bd51872d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307c7ca20e31eb673145136f3ed2ac13d39476a90259955403a17a7294dc5b6e02e93e33424be9d75e47ff0c8eb59c9a3c023100bab6b0d58b7f6f8249a7f239126afba807780b2562b50d9b6bd1886aa2e7edf40f6427ad69e8a253cc879fa2742d82fd0302047c435bb50068306602310081a87cde44ca81bc6745970fd9ce04860ed660b967e47782ac7c346c571a3674b667de03afaf555f895dba2026835d9b023100f796e02eb1995dcbd6937c46351e0cfeb4dacb5b38b55c8517ef5af2b4ba6ed1b63207f517f5c0b886cef4e645eb613c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305371a36b19d12264886f00008ca0f38178d929a63b9a05a1aedf2da8cbaa489df57a6d1d91cc854aae2b6479f3021d4c023100cc342e257a27fb33b85f34bee88972b5a95c9bbfefae95cc8a03eff25b7760f8913b7ce884697c08f7383b9b327caaa60302047c435bb500673065023100d21875a6fb245047c52af3185e6fb29e6548b28779aa5fa03f123fe33d5a3c54b009b0e7b71f14ca143c9aaf8b36a81202307620e75e66fed53c636972db19607afb6246df786101d9149489cf49873f7e0dc6404bcc3683d5946acec476c50814da0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023065c73d68318709a791ee6aeec8ca3e40bd025d5342c6799f8f953112d87fffa17e8c81acf8f22225ab492ec73c5a18960231009f126c9304b63a2bdcf66d38eb107d9e39875b9d9e6d23a59135af1222859e9f015141506ba4cc9fb94237450250cf170302047c435bb500683066023100ff87739d5190376a7c56ebab49f2f4dd3fa851d55198d234d925888b907f746765470de1ae83b7716967f4593de2700d023100eb11d573d99479a1b5bda11c0f1a00c1467508083c8f04ebdb24ac00579d6cd676a8ca8898502231e3b6d1e8be1a97530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640231008f3a31b474f03828bf3875a2ae3e9e9e4dd65a79da2c3c388f5b2a5a120bc207b6398c8e8c68de71ef7dfd38cd417eb8022f71a6991da8fff6fb11e080ba08fa445b8ab074196b9e494f0234d8b02a99d31db74ae837884fe0cd7ff2946a81375e0302047c435bb500683066023100ee14b523f840257db337a86e932e51d3f04a12f996e4ade6583266dda1abf20498beb4c40663a6e0a27ef486cb39404a023100c1e65b40eee52ffdab6cf0cb3522d96436be9f4474e129c5d23b002533d14b0f8c153d392e244de37261787f87c558050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f4ccd073d2f264f5fa3fc32b3b3ff50606496212009eed3408ed081a0baae57f059bcef767c3c6430f6567a8ea892155023100c5165b1520230bb2906ce4ff8fddb4fd0fc7391cf7e5bc754f36852c90f4760273327e44aaf491099ba752b3daaf36c20302047c435bb500673065023003e8e730675ec7cb88352d8c848c61f5429c074c716fad971dab74ae4a6d063043e9b6f22f15d8b154d3bbde711b54fa023100cf05a7555eab48f5d3a1d74231caf433a39c71f0bbb3aa1160b171e5a42ccfa11d5a15c335351c2f3db63c7a551857330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304e71c90c55af97d38d2606c18709da31664cb9e04bdfb9aa33347315eef842b123a94c7ba9ff2eb7d3f98cbf6d0a955102302ebbd354d9ce11da2e86805b6494800a31e7b846383aa09c193ad484c514684bfbcc8a1723dbd32637fffe0bbb7b60ac0302047c435bb500663064023036579781c0a15774359400b0dd1d69702fc09942b1ed5393492ee5da19b3c9b70da68dce0a7bc4ff57baa2ea07c34d110230673d7392c70426b40881284eaafc323d34f4895cf7b201ee5cc3d315a328fc2ed08d4e80f182bb55ce9c953be850a76d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303e6d987932dd352ebc8cd314a51cf41dd2703ff6497834b996d0d2ef6d64e33fdcb752b2a67775b1c1edf6cd3f6d8019023015aef425cbc5bcf52712fcb0688ad1ca45d65653e9e4d2361569344a571969a2600d733646d7194b5f324ee1583871c00302047c435bb5006630640230729b273754f587061d5332e1787d19faaee6773417c9717fa5fc0a9b920caf9bf5635131dc8f68ec45e3fb439f2810c3023053a63e2d4263aa7ca84f87ba82a6e01522c79a1fd306cf6faf0518ea9c8ac3058f814784cd8ae8512b5659968fd74c780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023029360f7b5c179f9ccb373c7d6535a81ae1f3619c6927307c76b39ec43be7f98228d11b7b0328c813cd12ca9cef0b9d9f023100aaef59db2a3f3768977c1aa5be2fe172c97592287f65b6a6bc0627b51a725567eef496bdccda45043d29e3ad0743f97b0302047c435bb500683066023100bcf99874ef480b4920a0b0eb6de76a74c2840026f3ac11a4a01da20aedf676ac03364f01f946ebb5aaaa81c0875e1970023100a7018277bd2cb965f12f9308fe6db63dcf4d00e3e77cde968ec4565b9e7a16452683b04b3e729865923b589ed20ecd6e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008f386ac17cc59246a6b5212c7d2aad6365412d53605f046f337059cd4ed3b078f5d7f2fc04df196d4a5938b73febdb50023100ef51e70bcc6f48e168752ed193fe855835665122ac71a6de7df715908088b1679212bcadfe11bbfcc6e9ff76eabeda900302047c435bb50067306502304a436960b19a368d0a0e89882c28418faa4449087b25ddf5624b7ce66cee65e586ad488acdd84b624bab1588a826d4e0023100ccbc5401918dda2256d1f423ea9b14e85ec4d3467f53e9f74348d687d13f45ef7d477f4d9f5df5dea402702e48c9e67e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306a43f459b3c9f81c2419d1cf6c0662edc80b2628a9db99ee2e1ce82e93275e02a431297cc38a4e5ecd20b42bae1cf479023100de19f31291d4d562d2009babc3134b73e1dbb9e27129884e04116c21b429c2c925bb8b7062b54f31b20710cd8f04924a0302047c435bb500673065023020e2ec3632b4bd24a24ce38f052ea80f13e9d06cf9d7b09a1d47fbc125c095dd3221a86cd417de030ad4c0eb8447c987023100a677f9df85e3e44fa70573af199dd32bbfe82f5fba08c00310dbb27c813ac04c30a6a7f6b9fb9eda79ccb1320b1992770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300ae9cc9de3307ba9358e4931636bb37753411a40c39178182e46821f189f37ee727832104899e3c2f12ceac237dd6daa02310087264c34a10adc441e1aeccfe7bb2d4f218b337887af6d7e495dc2c44e64fadfe8386b0b662d62bb0330a5a4227196c40302047c435bb5006630640230470af3c497eda9c34530b06aa2dc4f661fad29091425a3265043f0fd905d3fa4362cde071236b35041fc8fbdc940d87d023030d0ea94e848a6e725c342dce4c272e134a481ebc210907ae5c8ceb7277ca2a818963c04d154552b8724875f965116260302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d0302b7df67ec7b61e546821e621e42ade0378702e5bf00fe6732881673db49bd780f9dc6a2286fc9fee18b0c3b7c3950231008c0932e79bd1c2b40c338d1aaaac89967174dc05fc53c1704d190cd771d01515362315e0f344764238c7e1cd2e47a1630302047c435bb50066306402306b8b1d4eb3df33067b6e16c00a6293362b7333777496c6af784adb98454dd7804cf613b99c1cbf083f2e705fbab5d24602300bb5650564956c8682c5d9f36fa47ff42386334b77dc6ca248352b8cb3c5ce0c07fb838dbb2eeb3e1173cd7b07c87bac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f327eb6450e08b87987ad4b3e43d065290e032053822e2825390476d51a4e990c6f3cacefb0ee16529485d095d81014d023032383348830dfe0e7402e28229aa1608f64b762969fbbb75767fcc1dfd40f84ce7e66d66caa64a0f448ef67b4796c3980302047c435bb500673065023073640b5184698f5f7500aa336690d9ead2f55ff33110e66247294fde16625ada978a76dcc7c36961aa4f11d45ed62e81023100dcb850a305a849d7935d0ccebffbc7d7b868a61ef248133ae7a01af75d45a396d786957d6ce490b77c6a22129d570c3d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100af23b52c8f9fa7be96aff89446609f1e96dafc73346decd0ee75cba17be4d72f8e3f98ce28f295ca2b0a7668f50e9e010230289af5224ef73b55e084e15b5e787ebf9bc58ee9133842f87c7754bebb9ad7ce42a9b8d0e6ddbd795f924735e97c951e0302047c435bb500673065023100e6905ace28b7dcc31b8a245630980af6930fd77da0e32be4348b5fa573c1a9de2f892cbfea54af37d6c2613bb48c4cfe02306996bd22568c48c3f8c610f807fe8c2b77911838f30ccfee337a781ecd0f087676e5178618caeeed9b24c5c6c3a0cb380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b7c0df5cb5767d47ef8c1ae3706da6bf55900216a0a2ca662b3ba884432b2efa6635b83e683c9afa1d4f1f2887b0de7e023100f366fa3e1af7ad27654afd313c3a7a8f3383f044a5d7aca3aeaa6bf51d28a78bd185c7823b6a2407a2ccd59c087202020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230366ed8d583fd5cdfc5b656f09a6ee5252d3cbb05c805d495c3795c3c868a5c13201ded3df4af3d624268fc8592de2797023100d3ffc1971ceb759694a6d07e39d1e0ceb67bc4b17bd5a724844b7e68625aa631f46ceff3fbda5c1435f51a521e2ab7960302047c435bb500663064023069d58e55bc1f86f348f2a15c3e7721e9a9766800f64d9c87eb67d14950eb786baf5395f73ed14906b98350cd60de40a40230386f7a18807fdbb49bd4c7b38129c499c3281361c4ffeaf580d0f3f336381d8afa0205f57479ee30be3792adf730e56d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306678f74764c11b0aab59e47903fcea81a584f44058e5865c6d4697d5e9d577acfb11c63013d5a2ed1aad2b14d85249490230251416dd0872fd35a05d36f86cbc09720bb35864e4cb9ff4f2ff8cc695e8394a903799c20306132fb16b0b67691f286b0302047c435bb500673065023100eee2b4c8310aba9ad43bcb51f172699c6ebd803fa7b314429623427f36860d96bb67e0069d66334ba6f425369ba16b1602301eae931e797376b34c59700a6fbf053058d7adac4de397e082b8c3e72e84cef073607fd4a9b00fda1578fe44df61d45e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100af000ea9c7c3beb893c045d537dbc130d78436e167ae83c541c533302fdb4bcf2d424c4f318f344cb000e87e01bec0dc023100d812fb0f6f7557f4a0161c428ff8fe4b18ba08d06c278557df00bdf15b2a46261c5c49ed564263388b4b50c9453a57250302047c435bb500683066023100e0dc51224f9adf0d68244bc6286346b3aecb94823e676117b69c3a293e733a7d578b616c1cf1b894d74c53320a636b88023100ef92b3cd1dae87123fb1c6dfe481711fbc3ec6c96e0f91124b2033d7325f41c4e6fa2d8ea62a242b6938a8e163d7d5020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f0e77bd2302cfe155c5aafe331136b3f8cb6c787056ae3d101e45e6d125cd9e8c53ccbdf4d0c8d1dc04899bebd4801360231008aaa7d488af338c17709015b8b9127363e705f431a1b64109bea8cccaba955ead1005bf7aeacce1ebe8b3398dd6cce320302047c435bb500673065023007422c107a72f9b6f5108f9f2349c17466f1771abee903a647066dbbf224340889f83f55d706ca80a185f14b2ea89d32023100cfa23bc9386574abeef50e356563b1734ca70bab89350d9d9b8b29a598a1f905d28cc6d9951cd20d33b7a53fb8e1689e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023014f8bd4c76b982cee477bbdb5fd6850701e454a8a7ad10a979446ec47329fba1b14cabc3aeb94dcdc1f4d7b45bac4ab6023002675d94e6252616c818e637eaa466057b8aa868285e6cf554f2e4c56c10909c9a6cbc1102954e8293877e9dfee4a84e0302047c435bb50066306402302b68a99199ce469d84dfa33dcfdbb324fcd4db52e6d704fdee84d315f0988c856dfeea827b6f8cd01417cb6c7e7dfe570230308cd6e8243dbc35937dd6a23da00a0fb65dd32fc871150205fb7d7f5b335cb4bb436c77b650f98f3f50ef8575826b590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100caaff5a6d1db3eb2f2f7951292204ee02bb2ee74f7d6a80377f8a21e2c7895aacc8ca04f929222cc54ef44ff91e71e0f023100ce48f18c04166d90c9a1d44b3ce026c176b2bc28a3524d88e5147acd1ddd694016422e6324786387c7c9bb17dbcec4750302047c435bb50066306402303df979764d8d3c36fa294581b31ad9571279a53cce274f4f6351a0d4d8ced05a02db8af0e9fc8802ab5068d53d327e1502304d5897ff39dbdb83eb9fb8be71f81c63247851528606add4509cd4e6f36ab70577aca9d34211cc9e106346563c4f72a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300b80e6ef3c945f5e58310f1ac265acbb786ae55fdb499a489fc435cbc1e880562d61614d2a8ebd9a950dadcb6838ce2602306495f274cf837c58acca17a44d296df0a7b7f2310b4f1dfd7dfcdf429ff996d9ab7ecf825726ce3c0e41790f2b7e81900302047c435bb50067306502310085e77a2688b51f784004f5669937016c1091b736e5c733e6ca851bb1c4ccc0f27b5ee136e7fb7b62c5d6a22b65f2753202306505d8685c4226d39c3c18b2a38fa14d68fd91261d836fddd0c590b80eee2a5ff7bb769c7fd8c42f37629d89997741440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023026d291b8e8c70120a69bff04f79a1d526b70cf7659b6935d8c18374421999839e378effc34eb603c5742fb16131e2c2e0230738d95f4d7caf875d5809203b917bf4a900e5f9565672dae0a814e5d1f3f3238e4c9dca6cc916bef7cfd717023fb4d860302047c435bb500673065023001e81c4a2be62124578ff67a14a3aa990326cebf8c7752258da526d6ede8d9f992e888f031dc70ad94a21a4e8d8417ee023100d6316a3c18fbcda247fd0f705e5747e7474854857cb6f547bfcc3ce92d3c3323cc4429df2fc68d9e1cea05d79e8579e80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023059cd0c21d54c2093c1389a9795bc6988652decc8b5506267037cd1e20ad55d982c401ffc480560e9eb799f0c3d4785d902305716096cee7454786043f91eb8fc963bc2dac8591bef51132633d291991f26a9615313ef13dad08726a7d3def8dcb4ee0302047c435bb500673065023040d7c65d0620e9999c520f84546e5a6c17ad6b942da19d9acd66900e476d37f13e7030cee5a083e4e54868e9dbf416300231008a48fde5fe892dc96fc55ce843cf813bf40aa254f3bd108683f9a7e2088585f071ddf9df6ada4dc9d2614acd0a87888a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a808d15ef6eb3b5a16a4ce80891f19dba63aff5d6d280db269951cb5e53f1d9f60ab1ddfb6c248a5fd77bfff10a5af9202301d77aec536aa336b9c579b3955f5e6783f47d3ec5db57e915695ec258dbc85cd152fdea2a69f72801edd8c3ad10983a20302047c435bb500683066023100e02871b1b5992a0298a43fd4a9e0cc5799d7944deab0aa6659897f953edca2b6013fb51706cfc61dc8a141f7af69c38d023100875996f7c1bbe7df4af65dd6266f8361a3367ee6813a8f25d1ab854732602560bcdf73354eafa4b5530d19a6d95889d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b9edd63bc3f488fca66b58ed4da2c537c4a82838087ddf46ae2fecdd0bdd64db50ce90f49a7eb23f3e08f883801bf159023100c695d0de46d377bbd4e9ed2ef78277f1a7d2dd7863a5380ebba93ce358bcfcf26c4398fd3530c9bc28bd40b4dc938fd00302047c435bb5006730650230706396ea31291d249f0ba29afe2a56f95a129d4946d77ddc436f38a42207a82382ee772ab9f1e0b7dd5deb618869481002310081f29d6fc036d121636f3e49503526b6540d273e82f21236314ad4a6712ec6d7cff1c08e505c35b34131652b7fdec4d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f5a90ac13899a120151ae8e60fa24a6c338c50344ebf268d56c60432a3c220da4481be69ec0f278a655feb7deb6800f1023100d7d089f7f0e62f46093846e04591c21b4bba462a03e54cdac80f260c408d168f10313467eceea274393c3507611c6aa10302047c435bb50067306502305f54c18436f764d2bf3e23dd3f46fcd2ea172c58c25fcceabc4ed76916321acf1ca4021e4e25a9a98884a716d4cd22a5023100c1ef1d893ab705d5d0fa334bce26433f3e64a2c0b2ebadd47e45d199d9771ce517ae5bb05d6fd4dc3d280866c45a06ee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023008a86d52c66aab80a1d58b847cb5c23053abbdc2a6adb1b2ffb436d66745f920a8bdb5df4e1b42f3f5b4cd33c4d2006002301aa25eb5752585745da18d76961b2022bd9f3aba0df4d1141307ee0db5be92b5b07411d05ab746cde29027ac485e11180302047c435bb50068306602310090d7a1e67ed74d5ce63726242a3098e9e72c0e03216aeb8158a9798a02e0cc416e3cfe1876f76bc6093c1ec1badfb397023100d01aafdc099bfea78d84f175b57399814d5a3427ea06950ec32a3b1651e7a64acbeb086d15439512edc4452f9997782a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300f4c586f5115bf0729e46430378a3c12a6bc51e15bb63ecdb10ae1f7a0c204f59992071a20ab0785c2fe2684c8513b9e023100a1f121fc0d098b965bb2867d916b28095e4b3be618868193403a345952cf438e77084ca73d9050568e5e6bb052240e170302047c435bb500673065023100eb7b92f059b497da79bafc9b836f9011aa1d4ef125e5d8fc437d71e5fb7ffff73d365e119f11797165a1b41741a979b2023061b793c8f34eda888c991fe0c1cc9f24952f6319278c707fd7a8ca7429e8dc4a822891857fc1c640863d766a439ca4920302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302183104bfa559575e761ed9f537445aec0780ef7f2b233b5806d5dca46a8a6ca812dc04aafc7def3ca85dd09ee5ad21f02301680751c071c1b00b6886342df4759387abce90f0a257ade7a2d837a613ec8bb14abacadf5eb972074ba76ba3cdcaafb0302047c435bb50066306402304af28adf6d831ab5848d6207085fb29f988618c059e9c02d13fd2ce857d9cc98aaeea6b8c47076752739906b3e14e3ae0230115a13a188f5c8fe6cc747be005c96cdb4acd6b20a71bd0dfe8e5eb4548e169cc61babd8d3d87b3dd5b34cdb5ee451710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306620a6f53c7a1ee5985f78894698dfd0011d115c9ce0bcc6d9715f11b9c226a93ee37896c69be9322c6799763b9e03f2023059c24926767c1d50a1ff95337a57fedccefcb687d0d35fd3305fd34cff4861b691b1ca116152180569c0dd517224d51b0302047c435bb500673065023100d8bcce1c5bca6075c1ec0e961956a7144273d7fa62a0050baea57b8a4b1d417a357faa90a38624ece06da9373ae4cf3302303ab5b97b6ce0887867b0dd164bfe0735c1845044b10a378a6441ba1d758f8762fef91768d5d58c6bbde3eb47075b26420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303cf594d3104fc1b7c0d350921736bc7fd3c7c6464903443f7a8acfdcdc6beb6af353b82c7f2fd689cea55ea6eed253c902306dcde5a09ad16bbd8728c3d13a34a604210c02da76a7bdff4ccb4180efe2fd4a1d9c670624bfe8e60e22700891d1f1ac0302047c435bb500683066023100a3e6e52ff2e63bc19b2538ab97e8509e62a8dcc02ef0ab3da98810d48056df1d71d2eab215d4b9e03dde27b74207389d023100c1c9a7c8c0d23cc100793ee83a67ea8f46b7e9881f7602c427d94ea5a9d42c04263d16cb3cdee0dbc6043b8b7587a00e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310087b37cc9c175fea25e6e9b6388aed365467525e9a16c025c8db09044f548cd84963770e62afd78f30fa43926b8b2faa5023052e9fc5a0710f50cbf5068166794a551e54aa4b93f17d3eff4cf6aabe667627200b6b97fb5447de00fa4132c254db6a00302047c435bb500663064023068e8355513b08e5bd6bf1ac0a64e4848204fa848dc6a5a767fbdb4be818d139d89607f360fb195567880f9f79370c186023038bd50fac1b1439d855b9e205b768f64bc43170d426a3c927b0a28fd120c54f40fcb59a5c4d6f1103e3a586f98ff96700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023022b7758294ea1b546202f90080c35813338d8ac85fafee402d688fe39d412c50f6c68ee1d0293a336830e2c6b00dfa8d023100e10b51c8eca75accd821aa0573cc4d025d95f40b518dd75f8bc2752531b7405e86d9756bd811992bb44c68158cc9bf9d0302047c435bb500683066023100d06a26ed157f55f295e5bd96e433554cbb0166dfb3d4283ef93bbdde0cb43e90ea8683efae630e67bac2bea68e8a094f023100f5ded9bb77d38c92f260d7f472ec4ef6ce8253862eaa23f28b800add0109fd8dc9af26e971a2f65b36d7c5c2034704b90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a54d45242c5f0fbc89bf182bf967f3d22c9a105e6c0ad2d7948748d224dad528eec5add7777a3cc11e19bfaacf45aa52023100891c3eb536ea6de3984ba1dd3373a8b9b4c7652fd7e9557d96146529b44f1022bd3d835011ce32e6148ab1c8172ca15c0302047c435bb500673065023032e37190018a441474e6eaae672b1c7172142699ea952c2bf73d536b4992d411aa3ee69086b52d20bc635beb4b813cf8023100e6c1356246014989a6a6f05622495af8f03921f1067631fce22e0208a2e2668345af2db45e577b5029108ffdf3625c8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f63380254936b7051c87eee4841938f800d5cb4aec7c8fa7d5df6ef51b9d26f3111345e41d22cc14462b5bccf25ed65b0230703f87a6f93962a0ed044fec6141f9a08e3c682a63bf7cb831d26ca33c009eb07ee4dabc18f47639531ea9c37c158c160302047c435bb500683066023100f5ea99641d08223a77f4b0cda485add9cd0a9bb087574162c877a1dd1ec9f0830c111d8e9eb9f310ed214fb398e1429a023100c581d7cb7c43ff089cd6a75dd189ea867d74946d8e943b2112834230508652abc7f2455b858d095ed0cdb2c960656b0e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100edf6cc5455b2834554258c3b8aec4807ac856ee3b5f75bf7708e13fba55daf097935b25fdaecc6e4c1b742a7198af72a0230520c8804cc042967ba22baf034bcc7297c20f22aa6d5efb39d1ad60b96e0e2bd1148ce6281c718f10528a8686bd703220302047c435bb500663064023016d650f98d55e81a79c54c9eb3ffa92614218b85b808ce5ae55fea2f32938e5b646b40d51d7e23f33f064f4c5ba5c82002303089d067524d0749009641dcb8a779d5d5bca5ee3affaaee2319f3dfa218dada80d60eba31d6b3ba532c1e2b7b40d61a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230359272e25f3285f2433bf15b19d3632323789b630a2fabb7c7fff51b56ccd52c0eada653017b96b4126180c9842e0f5f023100990efe761950e690d4af4a042601717f51b3563276942836c37e5f43af09caf72dd73c60b8a278921853d839efc5f2d20302047c435bb500663064023035423e2d3bfbd997ba7cca8dd25d840701e8217ab33419435dc7e8321874c37fe15c4e663410b271341684771e3ce7c702307e1a97b6e0f5b562ff79df120b638d51e92fa70d2192cdd5cf28b561c629abee0b2897735cfd6d2908c2d1d38333bab40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e7b40c746e770e8a5839df35735cbad867cf5aa27298c9809586f817eb8d9663bdc7851a9ede475eb5a702d4e700521f0230088abf53b8acf469d96c8c37175b1330489cee3c916f163c94b5aec1b846c355cb433df71181bfb77a4463e0501817a40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306fdc20ca0c766a5cc9dd49d889c8ce17ed33b126b4d0cb273e15201f442739bc4125c481e0e70028494dd7a280546298023100b93e4286a6905176967693de1fac512111022834da26b0ce38663cb05d74c2df40994393c13ea88936ff7c6868dc1da80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008759d18fd0d456cc0228eb536c2092fedf946fdd57e83c37089e6d8fb12c619fa0d4544bed02a9be2605a7e191dc5e1b023100e5f298cc81d6d28b0f8eb6636381cb3c3cad2b268b261f87fd065b5f42ec84f50c78f56481eaeed09bf44638e107d6520302047c435bb500673065023100ef37c0aa212a0d23b05445539422bac9b718067835d6a633293f40e3dd1e4fe9ccc288b86aa3b6fc4587277fcb0452a00230718aa80523f13d3b9b52bd3d18dbdb6b1fca3e4dcc8d496b909626c2bc5e2852be189747fb9e04ebfa4977be5dfec8db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302cfa8ce46b510a3393fd0c6f3385a97242b358ea0a868375902eb3ee7806cc2883654b60bb3fd984364e6f33f499ed00023014c9de69e9529e3726e88ba6f1e899616a1a95a7984bcdd0c30fa17b9981321049a6eb807bcf153e347b7c2894ebe6cd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230784795799e113cb990265179e78717fda010d51f9a8d2a5e911eb8a043cd9de7a3a8fad13c8885b4c3f8fbe69e403bea023100c463c40ca35e425736544572682dae6917193e4d638b55fff8b85dcc061056049cf11470dd25ea512afd9945a7fb70430302047c435bb500673065023049a07f1fdab6d16dc4e5e95999689aeb7689ef1e92438d9611b9bca4ace6154ee98d738815bceeb24f3dedd8b175c3ea023100cbbe658b0c62b59c508a5fe1e9f363be82e8c48f7b23efce753f807e8454f1b23a2463a1dfe937da46ce3ad1c7b41b0b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306c3d8199c352d622a613821301ebdf9462b7dda8993bc5f48ced0e4e7ecd80b2c6ee455a3f41f516cbd9679180035b9702302084ff75573c09acbadf98ca766de157610744a9a8db3ba72155debd91210feca5f54699b0a4bd999810fa92aeea8dda0302047c435bb50067306502306f55ec5422d58f8c2fca67eba8ca199ff5f512a744ae4af2e5bb4e1b684cd936cda180aeba359e856e22f6fed7db818102310089b50de39ed8ac0e4b59eb100a9840247a6c81bd4d9f9a00e3682da6a7d2a77002ea7be4ef53c6781e98ca3c12698d770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c83f7cbe4931d9d7b3c189ee370ae45cc39d18b15ee2f47909fbee26fd810f80f69881e24cb791f84206294a03ec5cf4023100aad95c98d8a3acdde4af1b2bd8235b2e3bcc830538424e506331b7e5d24f938ce145ab2e3119192f544de367156f28d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023048086951dfa3ef6f8a11d257cfe5b000e6eebadc4b6b1b678133b4cd5043a05bdc3254a47935ca4c111482936e15ce370230310e8866cbd239c9de61dfe5246c46d765e57680b59df29ce6daa34260f38cb487d66a25631e80ed6615b84682833d3c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302f3acde1cdd4687cbdd051ca418adb5c4cb298a7ed272fec39510fc3cea6f8f81c7441f70830210bccb4b04ce65f104902307fc80d3aad1a5a134e5ed170a4a6c7abc6e6fcf4efd1bf733b4c7943408ae9998d4be8a645be03af4ea692c6e50ea3200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009376596523359726879d0056182dadedc4cb28e01d7786fceed6258c20a203377dabbe2534370a5a7f9e18db220e671602300a683a37901aa99b0a59eea19e6e40cd07adef12c5b420f952eb8d8c651dedf37a885375a4e2b40a74cfba884e9623a40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023054f5668fd23e8e0089c0dbba5f1ddb960479bdd2badb54e13b8ab64d4f6fd6dbe73f4441384e1b51aad45c2833dfda91023100ab7da00649fca89e42d59d8846173071354139d9716797c301dcc135f2b69aa06aa6718ddb2eef806074fd5ae5ff20430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310083418082c70f2f7edc033011f8b4b686c9b2668301e54fc221a9f5c1b29068b006148bfea0722fa9374efac782475189023060357cf9b62f5d315fd0425301261094a699d6fa56521128e1cafcce4d2b01c58b24b3676e3c6dad6a86faa677439dc90302047c435bb5006830660231009e45a51562bfd5132868fe07000bd2615f9aebcc185f3a09f6644690d6458977fd580a2f104ef9789fc961e216a4ca01023100c1551fd3df6457a4ecd1421feaac8f43895a8c5c4d47d2b54e9db73f255ffaf191dc26a85dc6e30d202c0e7c07577c9e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303dde997f308506e095f0e82d3ce8396adf35dd552f55ec564e31faaaaa7a4cd460f057e2ed1ddf445216118b4c4cc23b023100a0f61a5e4b978f42a2df49a890dc563d51c1ad3f2a498ad3f038e2d677968a08558effa6a34fdcd9337f28c60402c27b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b53d795b5a4a40d25c41af7a6c8f306ff3a20b0ab5534fd68e5d44c77bf92d8c4c7669ad801707d9b29d34ff2164a59d023006f93b71e3efd8f634995834d8bf2fc1f1bae5f58595cbaf35fed08ba69154a0de24404256cfee1d0d02c26983c72a060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e9664e4939e66c13f5b52f45557bcac6516f5e90e7be40359c22253d0fc08e42c4429a3d84096b9f5173f0176a79b9eb02300f7dda7e132eeea720d7e912f4e605e4bf92d1f3ab427b7dd7f70c6eeb3665131fe1b6be32dd09f1f02cdb5200fdaa100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023057c612748a0c938ddac53310d6f0ef708d71d9c0bd14e8decdc8457293cb4e3117952478fc2bb31f0c0d3892ef6a23bb023100d73b06668938d0671d9b5c52fdc4e78a7d7b3d5d2d3f5cfae99aba2e4cf4b18ae058d540b12dc8b54d93d31691fcb2680302047c435bb500663064023034dccb5125c8fb2fc9fdf7045ab6661cdfac5925f15025ebc3df3ebf2d97295c804a86dc01ea4193f1b4855d398809c602303734cbe0c596570d6f1a7e9da7ed6c1d344fa56e023ff19a7d1bbcd3a7d4619b9b953305cd71749d5c1c9dbc312c8f1c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305b008f823643915fe602ed519968df7d925888bf4cf7b45a78cdaff613ac01f5f2975e183a7d3da79d1bc5f8d740375102306f2b4a800321a95dbdfbc3ab7e54bad385cb3270952485d1caf98365bf979cc5fe3f79628eab9b38bc9d33cd2b2c387d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303839d5f90ea572696394538baeade51c7cf3bcf0c004a4c2e05a1fa7c12e95c9898b09050a07f7f68a446017054f2e62023100826ddcae3d64006b48cc74646ef2ba096d88faff2553b47af0082ecce14e81952822007da46bff015a4221080bd686070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100babbcdc3257494a062a569d2fe647fb6d8d52ab028eeb710ea9013cb417e6f92a5e9bc7fef52678592b41ff54ff76a66023100cb92c03f9197c57c9367d01a1b4342fe4f504a17c6aa5b580dd0e63ffb08ac376dd319a3b37bb3392c000cb526c1be870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302daddc3ff294e54f54929fd240beb0f680a5f30db37f0b7aed2151a28b2781830eb5f6e9b838ee8122800a39eeb2760f023100b09caf9bba1dfab8234e35d23309046330bea53671f1f8a17528aa4b06cb76c525945a53e65a1389195f9743d9c0bdae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230460e6a528a93a7cc3c4d669112436dc43591332bb7617d63f0cbc4db6d96997c6426bbd2a6c1943d052fdde38f539861023064ac3819bc3542a61b9a9c67b506eb79c188769bfdbe65a78019d094bbef10b1fd6d70bf7b82e9b0d79e19f333ccea1f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306cd051ba46ef466e842f7d32ccd738bcb4f3a83b73b571f77a3668adb00a42fb445a691dec4a0e18fc19800d7b93901f023079cbda127f45cd86bd4de9150a3b37eb83b8930553cd8a3ca307a55b8cda690b8bb1bbb798f52b773c846af6e80925da0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023056b75a81aad9e8b77d932725a037eca9def3ab5d726e465f89c5edc9e9a86a126ce13d8b1f7bd64893b37db53e1eac14023100d46146ab66a8adae05ac057589f4b27bdddb9b6c80266bdadc1895286797e80b4478daaa37e8a920174d581adfa7a49b0302047c435bb500663064023015523989629092be80e3e2b0741d99f251a9f119d644610a0515bdaeed2a148de995925e30ada3711e0fd83e16a6560402307931be457a20c90af774896c89fe8efa0e38c11bd8016f63096ca185e3f1a781c55a97cf405fcb7c3e8f9a746da314320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301d07ced6f2dfd5229eadb2af7ae69d472044ce373bba9bcf38d894febd60c0c0844e422b4989371044be544c5a08b285023100adb4f158ea6f2244c770438eec2d778d7bbd6769c5867b5065e128fe8977dd8713eb773cd5a3f7b2141c5f98446d1cb20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023060698c777f96cdf6de75390e9eef4e1abc0b6783c7701d46a7522a7a4b63039a3cf06b011a54a88c29cf0770e7e747ec023100ea4fa1ae2ad965d6d01d94019ee6511322f14101b4e8665fdecccfb98aa322ed77d2684cdc33c5e5dbfa414f3d692b6d0302047c435bb500673065023100a49b97d6e9f57bd3922ea5eb1c72b2ee6337d8b09273fdb2ae4d68b9dd63e7301903ab5d0d9487456d3cd825604c7a2f023032194cee4c0c2fd18af0a3cd566f3269f29e17c31b08e75aa7d4733c33646b3050c302c239c89af291930d62f98295240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307be9d9dc3f75d42c5dbec5cc507e0d28f724608e43e19669b853ac5d33d42cd01a59c3cca715bf022fe423d275f1a7b6023100828f48f73e3a8104dcc19a7738446113d7c60dbc50a97a758fb390a591ffaf37791816a6d7baf2cad7ca8dab574b3cb00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023052801678a147bb45645b934342eceb80408157a6d7b4a8be52e80c41f7a131b6f1bbd8b1b61d3c5bd3a5950de5ab673902304918302f8cefe2a3bd5a5725b405cb3d8e3f1e67a87b4fa04766219c93648cb8bc98d45a2b7df75351dc016f496278360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e401c4d449e9e545b1f7c4dd4d6cda380b6f5d71202b9c9905c27e603f462a63773f1aee1bbf63de9ea8a56f44daa1ee0230312a1cd806fb93f28cddb1be54c6bcba63411e8d393a33a37a4223c4155face8a0daf29dcf20eaf64663968a1c1b0c250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fdfba7b6820635000051210668a1b40087b30c3effdc45b7fb44cb4826af46540bed15c75a0fbbd417b2f2e95b49d26e02303aeac37d42243a5bbf356f920f8c1caae0376b32c2bc957ff8c2325307da6e7048f2bc99a84ac8b55c9344bd66c1929f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300fd4d48e2a9272dbfa37393d8b40db10d97a4afce4b3593e8effaa4e99b530b21b8c11a48cabce99bad319315735d4d5023064e135a8e191eed44d1042993049f78110a4f96dc5d7d9cd5832ce3a21f71bcd1fbd3641671816a648424544d241aafb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306f7ca78496274b428d3e4d71b6bd863d2695d7ad4d8930acc2703629abdcfbf9e51d7c9ef8800882a19d4fb34c5db25402305e5e78ea1b1af90d73211dc3f92d5802c40cc40ca2973b319f53febd4f87cb08f983e5775a45bcf4a4535e44561b36ab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f24c89cc69dddd1b87ce89cef563ff59dfee8f89601d4cb0e84ab946d3993a8ac848df6dbe3cd233284b088f6d07d19e023100e692955c12d506afa8127f6d2dcef588446cf80f04c79a687f478f75076347a1f37a68a8986d789a4caa92a32bb77aaa0302047c435bb500673065023100d4aeb2a516289c2096bf4ca365add16141674d17a3c382ce0fd42267df181c415fd928aab46ec081b21dbdcfdb5e733d0230336f5edbeda0ef128edcc4b6061c745c1d4037492059a4c66139671ba74173d0163b2877a79f9d10a0b9595de637807c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eb83d941503071093e5ff5e654b9b14dce6b42e8c23090ab6c6f4b44c25cd269b3d7edb04d310101d063a407e3dcf4e30231009295d2d5267fdaef9efa937ecc0a073f4957e1f240fe9a592367d6ac5655350c3ef93fe21b30ac52f18f2021ff209b660302047c435bb50067306502304eb6821cedc1fd4bd4c312a60ba05208b89d30cbb2ed0e4f85a7aaea62bf76d1f5f07f5b8f4ddda53b18a3eed084f30b023100b180451613c0b74b1c349c834b2fd4898d7ca8ce86a0a26e42392ea39d3bf3ed3f77b3618d2cb8cce06e79862fd8f7770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306632708f46b4a32a1ef96c9038fbc22d5db63ba40256b3eb0d419be65536c67d131fd659c915da276a91664fa91d3e5d023100d87e3e83440aff27575a4a639bd4d4ced563d24485a5f055f1fd5bc765fe1985f48ab771534e41c0b2c15803bc47fd820302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bf09221893d9d83d65dfdf77cbd2c014e0cc88230acfb908ab34745f5a5737585e927439dfd15876a322d5fb5b48848c023100c147c49b3c542526ad0f2e353e50182a771361da62db7b41f4fa947f88f9c9ea7eaff3e1bdc20ca98e39008870a44e280302047c435bb50066306402305b5befa206e248d9c5813e6231666bd6f0e6cacb1b9c37cd1982009762cbba5862821e9c121944f38ef31feb3810c790023078923420acec60e0bdbaa3e302573b873b8d6684d31f0618acef426c9470be12d5d83ab8f6fb0a3e6db64a9042edf2780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ecefea28c5fd2ca4d906af3efa2262f82cb850165cab967f56dda07d250bfe82032b5a3a10d8653415b6c061597f4560230513f7bd47fd972509432cd946cce5de7d90b95f5c788f3cd349169da718d68a60263922d5f7870a72d6fda327bb5dc540302047c435bb5006830660231008566ce3db8e6a6836cb74a6867d49d768495aae7585911d8306cb6ba08928f97c3e22cd4d56b90c2b839db9dcc2d0cc0023100864879bb9e79d8099f3fe39d6264ffd7c172acfca77c6313dfc929ab850d0143233acc44477163638e68c4c5bbd4b00d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023013dd40ef03fa0fcece7bf95ad0fa0e1eb6f895c01905a29adc2346cecba181eec2d7696390173cadd493ee8be005def90230565e09fa96b513060eb8cff19d4a726247bd8adc88b2c7ad88e4f6d3da739a19edc68c3ab21952b1364db773e5ab89a20302047c435bb50066306402306659801920f1b35f73555754f7837aee2dabc48fa90d020c409d6ed0d129047a1b450fd7f2d8c7805c7e182e175688ec023036d1294cd17a3bd29be7f37341e196b720a8c10e366d0d7f94b1c18ea6be53503ced07c7a6cd00037558fa080917d5460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d70aa028f2f8681f3c03e5715dedfc9fda71e1409997cc907186b43c766f614e3582f34d71aeab89df7dc854f3330e80023100fb2984aab174b10f78b4df14b031f0b35334ff3e8c794d631b38f4331eef3c3982f7d9f3ce1a1430c6e217459c8cad530302047c435bb500673065023100db062f6e4dfd9119646be29b657e985b1110f39152c2c831e1073b089928e42b86cf40f486e3c122fdf09d393983cc9a02307b82a44793cb6c598fd90e20da2a0619a7e7f710d1f4d837dfeea80bacc8b374d8cf473344f42e609146a521d17709750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009882d317dd19463ca76611c65001a8a432723a3a130ceb2f338a0a1f5732d94b60be8c548d5b9f5ddac32b65e5c3a3e9023100847a8299063592b700c12c774fa2f2c9a157a7cad74114f19dba3d12a4a30cfdd561a03a24b23fdab7324647775cf8590302047c435bb500673065023100d6b7f0d4ebb8ca6f54c9765362de802502e1b009724c2e5f3186dd89c0beeeade5db50d58fcc0878cb24ea5abfa98de902302ccd2af2c15bbd1d33f1934da3592f41c4327499720f8423fafb352e4bc8bcf8cb790dadc5f82112458a3d06a2fcf3ed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c627219c06d3924e97891178be1ffcb7a5a46b32da5b18c705e2104563a4d8406a7d5402dd9034a543c30b09184646400230232a0e0f6f72adeeb370e0420350b0b9494b2bccb4bb647081445a6d3b0bfbb25a439b12bcb473c1d0a55f7b6822402e0302047c435bb500673065023100bbb91fe1c4b39616b93447235a53440665b8466293865dd12778b9e2095e908f2845c8266aa82d0513641d3791597e0902307e08702cfa5568e8fde588cffbcda942db87eef6f52166db568be436d8c110d6902f043e3b4f0e43edd5e29a9bf54a5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230674a120bb70b8b4866e5006b848575b77326b9c2950a123e11b690a58ba2dacc4da1a3df1209122151fcb90b2ab0156f0230086604d84ed870282c4e6bc390dfe8cccfdf5942edbb7a4539bcf5e544b9271d6a0de12b1194f93ac60b1418b2a3d7c90302047c435bb500683066023100afdfc833fe5052928fcf99e7911f8f0ed94e2f8180ab682b94dae805ff67db012eab6338310c7d80f2d443b6a45a0599023100e8feca8d16254bc5ad1361c337b40d8d32a154386f53dfd968b338273edae7bf7b6d227b493c27a01bbc43fc7516bdca0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307eb56b561c45cb7553fecd3d6f347e7bba455e82a6359f6ad03fe08ec5b5d3ef8c328a680e2be32dc40110f675a77a7602303c1d72e162df34ecfdccf0fd71f15109b845de1daccb1bbc46ac362d505b4ac63d80f7e155660b329212d8df3bcdba780302047c435bb500673065023100c609bcf087b20d7b2009680a265a28242323f9b621edf5102f748f81824d6835407a3a290d42e49436adb94253aa07f802301173676899f442b01d8f604169d4b341315dbd01751c2c8598ad1b975cf1ee46c21b10045882a139c7c07330564f877a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230098feb3354855eba6000555fa00e3a82fd049d7a3c02061e6fc45697750fa5c842e257f3313b4164e2e90470afa71b240230612daec3f33210e74c420b6e81e1b70747a1d29d4832e69e40e5bf770d55958aa3bf4221adf3f2b3a3d0efd205fdd59c0302047c435bb5006630640230209becee293bb8f660ca386a106ee3d6b518288d821a817d72b6ac8b6d099b88d266b9324085610fb10bfae56da8f4080230471f1afce485b52962a893e2f3769a5a07a23d25ab56ac297b0fc803e5b2ea3fb3853812c44ff7fe24610bb0044161520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307e545918340f658e04cf60dfbe2e28255d955872920ecc463c1cec88a876fb7ef682085ad3a44f6597c27d025a22b3b6023100eac3f162386bd2cc1adaa3e6dc390ef6bfd787461373df12d449e51fe5d1d0b8bb9d7bec1ba0ab7dbdc77371dd38e09d0302047c435bb500673065023001f7fd6cc2830350aa7423c8aa9d10cbb34de298fd8d95bf20de7f01326fdbc7f59f511d89f1176755c12519aafaef09023100fee11944f9ad0dfadb15ef4e63563016c1ad9beac30a8c52994e1373d56e9ccac000e27846408e71d79eb2c61cb0bea60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e5927ac22ecfa91c45a6888f8e05e60ab9397f272b9cafa9d6c149528b77f274e6b32186cf59a490685460de084641c1023100a8291f76311e2fcaa6ccc65398ba90d2490d06994cc674506e2fa8934ccb37d427a798a0c7f0063c1378ec34899b81970302047c435bb500663064023072fecc2c3b8ee223674ab92786944bfe65d30c4389837d780774d7e1c45658acdbe0df2c61cd2ae2303e71272db619d202307858694f2e2724cb3a99f0bd7e36304d89b52ab6b57042c0259295f674a1460f3f07a66160f9ef87f043211bf77416300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301fb06365e14d6fb5ed7e959599494072b72ee8ac170bed2299b1dc8eae230be3cc9f985ba6b66f43a8c0e81e331baf4b023100d3f50edbccc16d130248ed6543ee5408f01c10281c151897e988af5fd4bab7b5bcd600d65e0c39f8751679c0077539300302047c435bb500673065023059ccd3432282f5078777a1a3c0c33652473b24a2e21c54f0e393570a24098d69e82b15aa9e8489087ff571c317f85add023100e5b8c89657edd588edb7ae5dda3b0bf3328eaeae5a9461957ff528e165ace3eb0d30f7fab0023a8705ddae05f8a7ac7b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230258fe438bff6669d52e0519960b0c0e5b198f6168250cd4ac95bc964cd8611c39cd6bbfa4b8b0c9743bddd63ab8c6a2e023100f1a9ab656efcc50153ed73c0e84081712f352bf3c875bcf2abf730f95fb5d9c69cac4a2b515a5131d69628065759f6f50302047c435bb50067306502305b0fbc9d5d5f96d696193f10b1ae1fc48844699665521f5c5f07968bd1dfad3b66bb927d605b9c515aec4d9e94e9d46f023100dac3ccae4406e70a944a1537cc164eeaa89fa501172d8840726d81d227f5b3dc59779abb49524fd8842a01f656984be80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230450782db6b8c6f69356c02e192d756c904e4ec0e8e42f8547d7c904f8f0d2303cad740624805dfed5a678df41cddf9d202300d0061570cfd196cc15cbc34905d5c7bde184088fb54fb34b6368c3a05600379db3ecf3fb50607f3955ec1302f3504c10302047c435bb500673065023100f82f9de1124be9a7822adabab126895604472d45cc8bc3a29a334ce05274e1c98102ac89466c4116512771a534ec602702302786334aaae722f95b202148edd7d4fc7a4d52cfd7571593d3e2c30c641976a88f46f829ef6f7003a88725e1686833e90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023054515b84289b72c0e606b0a2b152febc5c828bec7664460830bffaf34d6fae53333da32b864301f9ca45e764014cb18a02304549228c67b7412bed91de907237eee85653319371b67503e6935b9a8e2335495a2f25be9b4df441a51b2dcae808e13d0302047c435bb500663064023056a95ae0aa2953fb1e5ebcb18e843b2bae97d894a127635e9802888a035c6ff2efc547df08a1df6444e399651ef59ad402303b0b8fca3e86d79e59ccd141f2fabae614cf90bc3890f3db6fc05ed689fec08bcb3c0a5b3eab09571332094a84195b520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ff5ee635582e05b34529bdca024ebff3e2bdff7d978021b54f5a6a2429a732c5c937030264fb670c3dc4216f224a7239023063ab929a32d11f04dbc5e239a99ca899a3b36baa06fa0f161f1af36481ead4913fab1f9edb630d603b84a3d3c1465bfd0302047c435bb50066306402307c87a5978ffefc01999fbb98fa503f40e1bcdfe7f2a4ed6fd6a3c2fdf4ea894030d492e2173c632d2beb99583d36612f023003e7ff4434246da46b10549c76846d06685407e25636fe2d1ff9f36df8a077c7c76460e918eeedb84f2be564e5d082200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023038ff88f2f70ee5b8f1649a475c72fd5ddcc257cd82c36dff739bcb6882fcaec384ce4065fe7843590a531541475d29d702302f4931a99ca449d5f81d817791d1180ba7268f9e4310bb68d5b8a23ede4206076bebf067a4ce75bdea2051c21e11ec2d0302047c435bb500673065023100e9164d405b99bc3343b47946bae885e23f997195bcd08cd8d3131e84b700ce6e9d5fac7b7454070ebffb4976eeee118a023044bebc2eb95369f56cab0b644d4436a229cbb22bbb40ed793849ee68feab20284d974fa152fba3ee218d6dd443849b480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230016f35078ff5210b3edb793b9a92439ef0a0986c4912115d00a7d507ca18529abc4bef3145d3233b353bbba54429c5b80231009f206f5fa746960e4742f4ff54d24a4b1472d81ded99ff4d2110102e1408f869fcd11bf14207a0bf40c23ec0afd1767b0302047c435bb5006830660231008a8f41136ed189b87b51bd85da9480761dca9261192503f3c10af0110f1da26c2f8ce786940f9974d4b32f297a8a22b6023100ea3e2463af3fc4a1aebab4e62f80eeb393acf07faa314ae7bfbb846e65d30d09d48090043a12f82ec23ae09c93678cb70302047c435bb50067306502305f1d585e2d205bc523c5261268f2c1e3520224fb5b0695af51f9cc16e39d9be79b91b7b14cb6f74e92c8035162ddeac60231008ba6f126afdc0910e2b499a9a05de55956a40089731e1b6d6fc87db6ffa865eb760126971030880d1a68680e9e5461ef0302047c435bb500683066023100c99c2cba358fa04ff04a87f675ec8a18aa6fc0f22427de06b407ab900364d679b963fb329219fcad1509fa5adeb86f95023100b802194d680d1fb3b53175b4b4a08e63738d0ceff8fa231c1a59207d020af9723a1e42b5530719785ed277dd3932c7690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304e09898e49398b4f52469a22c7e71126f522e28f5ad6a9395fc8e2c447df297b042410037ca453df26bdb83ca0345a70023011c54f5f3655eb7d67af7126b5db7f189f41021018172853b7b586ec7d4856b5d820760d0c57e684191c78981fdcfbff0302047c435bb50066306402301537943ff1241b114553053699836b27773122ec930a680773fb4f6ee86fd623b577da824a328c37f845b865a38fce8902307f4d03d84f540aa89d44b319de9688e92d142df69f48f0a5ba0cf16f1b2c46f1a6c4318a6f1c220dbc8d86f4facc1a400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310081a3892557b388377b1da889d35d3240929efd70d8c137d419aa4f05bdbbb57b402c891329a40728b84812cd647cb1f1023100a9335ae5750dfdc6db88b6a785347ec36d36df46ae9f50dc196cf5e9bdc127da7cfc2d554899022ed910281134abb9cf0302047c435bb500683066023100cab3ff4d1dcb28e56960bd130b8481c923eaeb7198da61d31af68ec8a91ce16ed47d21542b9cf9c25b6d1f7933add6d30231008ee411d21853544cc294be52f59811879e8662b8b1692e5c644c98f12819572c6579dd9460e052bfa8d7a6ab36a335a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064022f4e0d5a4d3427b493aacd218abfabc2fd863dc4e2e08d37870bf9cb12d23c7aff2bd74b637ad6a266b0368aa9716b0e023100de16dc6351c8965fc96561863ab82470634916f128ae3531aa1588bd06cf10bdb7c3694731cc78dbcc29e6bea75ce98e0302047c435bb50066306402300b437f28b959ee2ba8daefb33c8a0a25f7e082b80e3b9083304448e5492186445382c3a43c211069671113bcfe6459c902306b9a2c0664ae0d2b36885268b79c239e503850b2e05078f58e0d4d92b7b0101487e011be9dd152d94c329343a990a5e30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023023dd7f145c1460f6fb740c2472c6ff8b92e0917139dce8d413ad69b41df1bfb295a4c09aa831f2838eeca6b9e699cfdd02305b48c598c05fac0013b7c404a00c8b4d4eba5bd09b65333e7f3fd46f0e753e7e498a16927a554b8661f9f3cf00f5dce10302047c435bb50067306502306007856522718f204c8102fdf3996b005ce4a8766bf256a39c744da44fb3bb240b68d384b479f30de55c617bfa2d0dda023100d77a80b3e67d5787ba4daa41cbb0fa23aa1736f545590788f529ae40c852c66179396c5cc8705f72961a3a140b4240820302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023051d28bcf91264d6f81493f8e52b279859c54a9f007676bbecaa9b4ba4b16141fe0a329f5fa897905a4d94b9f9b9fa7fa02300295f6d7a7880bb445b785cf481df8358b1a44403a44d4ec1451e15744ab020da5be4ee6e4eda436763a10aa59cfe79d0302047c435bb500683066023100e48e7c96ad50e2c984d0499245b38c2655b58c11000a67581f35084c8a719a034e9885b2210e79162671d643cc019c7f023100a73f20becb502c23867100e7c52788ad2742eee008e373014c7159dd67da446db5a1c2a2f42b59de9edb8283182227b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310090a4161dd088a623b45a764668ef46e6168e57e80ef5742fa94a077e96a5a9612c2ad734863f436068cf98f4cf50bb4f0231008d485bf39f24cd42b426f7d26e42b51dda7807693a045ffac4a4375a6b1a2884169a542666611359020d1cd5b5d727ab0302047c435bb5006730650230525cc66e0381d8e4c1d4bd0c55cd76c3ad4fed5e5b58cc8418f763f3df82293ca27a6913b69fd153cfeda562d92dfc5c023100885ba10f7fe6454020f51d6df0d6efe9e3eb8b6543b56456ef51057a144a8a2d58c6ab4251e8775161a16c783c3a35f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230059f3f2e5972aec87b81ec0aa48bc19a8b4099b4bd52147ebddfad7db5227c3c71fa088834d9b3d2c63d21cf0b272c6102310091e829d871556e44447e841df02ff9525dec42aa043962c6cc6cd03f419922168c25b37e5222a55d68f5b66024c6a6c80302047c435bb50066306402301659e8763cd96f02f50f7eae08c0b898ee39db94211e2be8210fc834e5f3b669326f7852788aac17171d326f6aaf79f3023032e182d28723b0b61438334902d1ca7fbc32f4d902672a3259d88b789145307f65a1348640126334b3a19b9e36a990ac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301c15a816355ac27197faba6718e2ee0ec55d4df9a2045a18d65de142b0c2a51c47450587fe72cd72f8d37203035319980231008495fe2512779de20010c01b3b61d4236b30a6d4ff2b76b9478d01706377c50ee6f53923f0c384540ed06fa074afa6dc0302047c435bb50067306502307af6b9366f297ef1d65125efd5fcb269d725117a5e67ecda69cfe34a2f19ec96f74fef6be73699fa6e50cd97a3fc5a03023100a0425f04f43231e42185bab20610d6ef7660c85e8108a54ae58f2065c85e7951e1c06bf00d5e4d35303e79620687c70a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023013c97b93c282606cbc9e6251551c361983620f2389bc1244506fa92aa8d4667eaa60594a48695fbd76faf98bac0c09fc023061a44313d568d09b37fb741e04abf076fbbba3e5cbac1fd6b5425ebea0f4fc5d85af836fa39eb27d27d579427dab32760302047c435bb5006630640230495026a612fe32840d9e55a75c3be4e51994f6376793ba67a28cb3e996b2c95d67ca8b7047d605a9ad7c59cd59d95d7002305ed4cd32f444f61ad483bb335673c756eae84207c1d6d0773aa0b7440041f171141fd547518cadf5708fce2e16aa2d3b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305a54011dad728a80a0a8a7b7fc2a11ec85ef0f0f597679cd556c7701d481c22a732c0b8c0bac5b59347db80777d387e6023100b46fc9fd1995e599f786fc7dbd5069b83937392f75cb1b473446d6d34227e9e65b724e2f2b1b0c4533be45ab9e4a9baf0302047c435bb50066306402300b930a6634c8dfbb26b6cc9af1b03c7fe6b102be44a02f00175cce0b1e70c377460354ece38020130b686755eacf8bb4023034bf3d47bc1bd4e68bd4053f071b213501e42ebea0330884d5d9becb8e8e3a9f72b4c74e1fddee3e4d61cc5f09965a580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ee1622c52920e2e72399ceabd6c8678a09cccb0426c8f19d509a7efd57ee57f2c892452a6456e91ed836a4b652c7d98e023028039dd16feeade7cb41b8d3e20a33cc3cf9562ecf5502a0bf9861efa0e621247526f451309e530440bc6cc116c9dae10302047c435bb500683066023100b3c6f172373e94472a56018abce480d5089d0ac585d7e15f3bd8ac8c6d974196597e339252ea8df08d8734813ce530910231009c301c4af32c2d1afa92dbcbfce013f15e0ba3257af1405ee3178b9788f48392eceb0f1b9ddd9ee141f7e34ed40c649d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c085062c44ade196dd79459394bf4e2ed4f53f79ecccb13215dcc21488e692ff378d35cc42eff69f990939e9fc19970e0231009062c6a4fb68ad8d4ce126edaa0a81cc7ab9ea05b409b75d0b38c168555aa8b069c653fdf2d62d290ef86443af5dd83e0302047c435bb500673065023022a174288e93175c4a13593a2d88e29f5ca858c9615681ac488d802e37ac820d7c77ca462af4d206c81b2a145c7553b2023100ef15fdcc7bdf6f8eae0472d195c85c92927ba9808fe2948988e2b0d4981f83d7228d2c9b1649201267c0f5cb8b8a2e2e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f71f17f92aa70d230def2a2329a5e55176217fe7487ff124651dc7e981df83a3a3bcf618d984474027e658fb950d4108023100c200a618fa374ce969712ff099781002d59f157da3893c91c026a3d0eb75a72dab19fc689a504e0158ca48f4cc4c429c0302047c435bb500673065023059b85eff679f964907ad047a31fb4638feed03969ba1b7f5577f8e733ded1b11ce004504bc15cc06ab3d62138e9af987023100f00ccd9daa145545a05fe2c06e6e6b0af3aa17c6c0523bbd24b50910deb98ae6868ed9befaa8fd3c1a5ede16772466bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e09166f80f7a1dabf34b36ce5648d894564f9e1807b2c869470ed24bf7eda17e124dfa29e9ec21d562e633445f26a4b8023100bb866cc97f8fcbb0e23c0c22cc94a76dff4864762b129118224f0deefa6c1b681378e0d17968e100a25ece5a0801c5d90302047c435bb500683066023100b2ce175f71b5118baee2b6b685f5d31cd7b8d8d14ecc61c6c8696d6dc2879809eae937c96f83aedba059aca2b3b54c5a02310088f3a3b3b579bf2ee6f4a8b8cc86ddc5e76dddf423ae4a2970f1f228fea716b9c45541e2cd4817961e61f1d94811dcb30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023071c2fb977cfd3c8fe2068dcad99b052edda69b271a34afa051cb197bba6dfd148d8d67b8b98d49e7e721c516467b711602310098e62a5ff131e4e4f79861c38b243888a571dd76aa7a2fbfd238ce1b3cd663991ac71d3e7a5bb6f2c0c99621d398b6660302047c435bb500683066023100dd5f95d284668ca35886cfd195bbe8dbb72501f111fb6a63f0265ead56c50e97774cb35743d340ba04ff8d716599cc88023100b8c621dbf909891d7fcca0485bae46f94bc2c6752ab3a6335f460f22fde189f2adb8f85eb72bddc70e1f0c7010d891200302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e12ff07a01cf7787e429ff00f853138d32cf0dca337b7a5cc85aba761ded49c8e8b91aa76e19921dc1c987ddad4c2857023100a371ed99ce87265bcfc4fb2144c308a6ed9437e2268fe6abe5296a2604ba3626b99a09c646980fad30d1f160b4e13c720302047c435bb5006830660231008ce540f8031be0aa8d38c3a1e41008f6fac9c360c2c25495677c726b5270f8439806e284e22e81807450011ce7d9a703023100989a6798000713f6dfdd6191ddaf5f3f2bab18e8e6a6d36fb3477f98b9e85b3237cff6daf0131667dbae5a636dae20bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b1dd227cb159420cebbed1d7d6f2f29654b451c1dad7af5893e35a07b550baa7b8f8cf332e3ad87fc8b87fa23597ac5a0230377056541ddb7436fc0ffd24c5abe9d15344f8fc45502c71b39763f8dab2a5ebc823323f41feee6b7fb47513fa6f63e50302047c435bb500683066023100bf2602bfbc30636a1d4e592cb3eb40a2ab9b07e1898749304dbb5cc1439032f77282c44d55197a14670ab29e3af5e69a023100e252dc629b3441b1e4512557cb41fe380085f5c4e4a42d83c6f1cc4ac55d97666f597d0947338de93982af6c76c646750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230553c13814150c12f0f5387391d278a75518d927aacc96c1d244e3997a3aa3ac7cefdfa20d85c007abc8688a120d72473023100b4e0d5e4bb5ea97fff811f05fcb7eba87b419f17b76cf294866443a584061e6ea9c4619d457b6d1582ab48a995072d8c0302047c435bb500663064023051abd3be1cc6986144eac06ddc3da89c21d86f10089444cec9ae9f4d08036c67a1ccbd22ba60bfa588b861144b907f8a02306b341d2e7b485e85c86e2be20e4bf0fff8b430c7644413fbc14f1e01be04fef2bbf24af068fafe7aa5c618d6c4cfd5b90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009420fa22134fcda7c5b33962731f999d166856d413fe4ecef02ba169092e2597d7c72b0dc2fa7b53a578bf6d488ca086023100d6c919a058ce1a5c65857a2c83b90eb8ec0192eb7c509bdd28acfd89f6e6c39ed7a5e8e570ca0506a3cd0f5e145c06c20302047c435bb50067306502300e59b5d9744fbf4e5a9bdc5916bd51ec8ed9c6a071ffa2ea9bc314ba31901987f437b0c3d9eb4d28b3fa80483db6649a023100beb5d62d17cdcd5cc5b60517fc4e210657c43a7ce2e928733cb21538e407cf01b2386a148f7053c6e207d16e50e25e9d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100de10d303a5c64ea3dd69c36e4beeef1023bd1e883e967232a3f86e5fbf18361c8591997a949093f0a31df54e15df636602305fe381348bfccfbedb93494e8d21154d127f195dfd4f829662aabe2264d9310af5c72598562a41b2280b5a4dd813aaa00302047c435bb500683066023100a678b43c0b9bc669eab1a1c8d3fecd76417e99941a64504b66de0332b44512a35a348650bd98d01865c598236927a383023100e6b56da31e9983708d5d0bedb7b11fb5fbc79dfac408ee39f4211e61e0951c0b3148bd7736ea69ff6a803eaa614bd4b60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d8f0c3639da2f0c24cef21d6c375efdee269a23874e97aa65b727500aef7960d65b12be01e0f296c78b099caadf34c95023100d0757703bcb12016a29b79e5c60b7681d30f08988abc8b78a46eb4a3b1d8ec9232875aa89949b3e81a74e683b7d353870302047c435bb5006730650231009ffebd5fb2c7c7a6c574c28f77aab082e43f7a9d901ea13c966f909c42c7592a3e0edc73387b486982528ffd49a4969e02304323aae4f59cb199f230e0fae2a33f81e5c5ca2b95b6b17f3dc6b455ddd5685dc88384ee0c03980e4979dc1ffa10714d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023037113ab0f5fd32fca1e6b9d56a9f85e82d9e320bbbfc845f37d0fbec39b7130ecbd950105fbea36a1f04ea1b5c1ba3e102310086d32023fdb6860fafbcaba6427896b99dba1f5e6c569b085c1ee7cff1fac44267e775167dcecfd61e4c0e892b59419c0302047c435bb500683066023100f7ac59cb7fa2e57c3d1401a7bf614ee545c835e49214f26447e245835cfd830d9bae0f9b788f944ded8b6deb99eacb83023100e46b85dff1835ed772c32333a0d29e23eb1eca7f804423721b7ef09c15785fe852e2c056fe505285a21a9bca3200c0030302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100821d406b58ef62ce94869b23f0c5e59278cce9215b3b74f11ca47069862176240bbfc7c3860046bf7376e476edf841e502304012924e5f671b17d16a35c21289591e3be4a013780aff5b5f4f2c406d846958c5a71d0054d89e541420caa74b8e37600302047c435bb50067306502304ea771d00876ad36eb601afb4747ace54734dac57b5359d942836908d2cbd581001a14e97b8d82f3998d3039a1d31abe023100e0e24b71a0ecd159c658a0f36fe8dcfd62d26dfb28d9c39812d74f83387bb773b04f989e7f9ae3534fafb7e6c104d9d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230792098fbd6e1ff96b3457e456a2f56219bc5f53e227f0d58dc485ee4d17eca88abd5c6694203ec34f454bed8f33d5f4c023100d4e27164587e0275fe06cb1f9ca133a4ac1a5c310ca798bab95495ddfa647c4b2b2cfee621aee9b7573b37aa9b675e610302047c435bb50066306402306332f41c9469506cc283a36293cb269de0debe2d365ac69c11f7a8fb8d9eeead0603c4f38de13f90a81f3d88b834f8cb02300a9038ae4060d1036a0b38ac085e242450dd5982f057364df3ea05763ef440f2e59c6529231d6f6b7fd01b2670e471340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023070796c9a569626a951187cc6ae4283efe9450f0f951f167d3cf66730f6a415516e46c2546c25570867b62b9d1d76bdff023100ea35c20d76c876897d1207cd5dcb95d2dcba3cf3ea9cfb58d6a12dccd1e5c09ac55fd2262e350d4b0b37baf3f0bd19bc0302047c435bb5006630640230251f84a2603a32036edf4097851f303ae82c5352bb1b17af7c38a9a9c2b4ad50fdf783e00ec978da0b4ae103328c7b5702302b78e9a1ddd119aa073beddda863370a35b10034b88e95b113823b961c551e976797b37b7a4c55dca96070c9de47fdfd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305e9ea1765bbdefa6feb6682242c3d1347121d2d93b25b1a88a8094ac7d569a56a04a06373b08f98c7d023098d11efcf9023047fa1cca5a8fda9c06c1ea8ae1fe2554dcedd74338dbe85cf4370f06dee2d1822d031ce4555cc8fe93958a6657c6e67a0302047c435bb500673065023100d58abd598a46cff654b9cc99349f7b25f8610eeb706d7e30dd6815493aaff9b4b912979118e2780a45a95d911040150e02305ad00e95f557be9c6f441835cfc0063b5d234081c27b92a56fe01be09a02c6640391eb237397c85d09c282ed23ab82a90302047c435bb5006830660231008f0e688a93beafe59025840ff0fab36001500c910051694aded61eaec19395fe078e6e7898bcbf061cc645ac0275e2b7023100849cce60842a29f6afdb3a75e0fec79face32f7c35319e3d08114011970e351e6cb150191747f6695418f158a26ad0ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d334cd8fea077f8adfdb2e4c3404dc0d594e87f1c231690f69e356bdefebea7dfdf201de7ac1265c6bda7ae15052191e023074eb5da5cfebc56e8c977f580eb1498cafc83d6dff03527b9e2aeb7cf4692c06fdef1c8f9f57483fad51e88550b71bba0302047c435bb5006830660231009a8b8397cd9ff5c44ec1a6a1cb33b2c27595971f5f1a7a5966cd0605bca5bf52e6c5e5642cd4a133f5adee689ce71f8c023100d5cb0f631c4e0dd94f419da3e65f04a26610c3a2036a1e1f8b19720f9c3be21535f0e82c839b336e4ea7e738040a2e2b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023012bbe212ed48ef36a4d969271fb3789521b1910cc51a4be7f7d1ec80063a3ca420158023be0cea044d4f074e656fbdc0023100faf0e31723232c8f6033c5501393d5d24c2c3bca03ca3ea32466b9a7ed92c23bedc07760bc956b9b898944e3cbc898f10302047c435bb500673065023100910fcdc8f2274a54100e77756f65ab53811dfc5732d86e95aa82c959142c5a5d851f9a2092008c0a1c51aee26156565e023049441a2343d6e773ac90d82c1639c38e3914e7bc0d0ce89745b853de4f0837d00122d38a853c0048eedc9a406c6dfb060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c306da1f3563a516c1d9a19c5e506427ea7f1f0007ab22135e51fe7cd6c0aeb3774f56cae4ae1145b7a48bfd58abc7e502303fd9f462a22c54f6dc56b487cd5f4c4257fe9ebcdb6b06ee8f8003c2b62eae46aacae6e9978ce04a4a74abd6fc59c1a40302047c435bb500683066023100a7b265214243eae38961f1786959e3fbfccf613c3de97016bd074931bfe2b8fd56e94bf33a1d40611aaebca713ab3a0a023100efb986673b9dc84b997095e62ca7d08d818d93144393b4ed50cb4cefcf82eb751ccaae78b54c1ad31aa42077ca850bc50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302509716490728bc30e80fd8da039ac1098d5fa6ed106dd41927ffbb3e36ae058e6d6d6aba8e392c209be06c862c7c07c023047292249965e092acac62499e78fbbc0b229fb4133c565562e2635b86059f2aba356da3f25bc11873ab2f67716598fbd0302047c435bb5006630640230159b469009d3fa32a48db798c109d50ec2621693fa049847cf0024ae945873f34cbbf19461e99cf8ecb8963139e9b0d3023013b4a5b305d68c7cf4342f7d68a1cd37f2948ea15967db1610cc1c1b94aebba923b1ee65654307d18000327d540788b60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009e42ce875b488c6e3b3082241a9f8937239bd7111dfd0601f6ea648c2062195ba572b1da323f48d7ce19be7a20f8ea67023044d028788becfc1015ce3c38de634f12db204534ed2d83bc60a3f26b7bfb97043df536a96d253af3ac3ed641fd99a3840302047c435bb500673065023100c1998e564bd4778d73273342d89a72f61aa4056bd40dfba22baff8711c515de59df95d5f37bbfdbac53ac03296fe6df602303791b68beee4616b96e467b454113f2f21ed20a63a9c8ab515bb2c734ad3e8cf76d267bc7d779f13bd5b20130680522e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305eca13f4e8cb22d4060fc9a0dbe0d1dfda9d3d40ebc9b8468c37affe8d07af2006921065d9fdd30d21873a7e2e6e56a50231009ef30354b828c84f86004de946d0398f9877f6e3562d7b40d4c508bfd1176d7ae428cc6e2b2788d3d34e3126dc643ca30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023039b24bae62cd31e14f9cf61336aec49fca2eb671bf8e23f48c0381249d897ac9eb11c057647286e4b5c2d651f6357fce023056d6de15cad2e6ab18a856cdaf35c42511506caebfc8c55e4bdb0cc918db03a155c196fdf660444e62552bc4d3d6bd5f0302047c435bb50066306402306191d1702679e7f3a21fa29359bf6e6fd816f5b2666b51a6eb63ed406b10933175a31d0da18bd7792d9664de32294bda02306ee7e3f1ebad6adb5775f7cc3b8de2f721d7d48e7d69a95dcabe856abf37cf1580c45c06bd741f8f50a0cca9bc67454f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301607c238893e4bc1d742f0667b7eb3252ac39f33979e3edfc2dde97cc6a2f1817c2a82dcbd6a407a8f10c2cfa19400d502305a51d5202e74b6e6e33ec2b2e595bcf5f035744bd5738d1f6176466c439d5907d31e05a033d95cca59a2990228d083660302047c435bb500683066023100ac397bf224104843c3a8ae111229ce36364ac0ec1f630f47374b7b8913b8b11ac3e69a780b37eac9035f60b8b24cb073023100879390cb47a6c44726531e91d610a457e8fdaeaa038cde389fbd0bbdc2221deb053d4c271511ec776f0a97c391ccdf610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023005cb95bd25a7b891496ed65d9ec966cc9364e9df837b461317e3330351c7fdfb2be03e99bfdabb53e1f36dfc1c617903023003d0fe66f986b5fd537bbc9bf7326bc64e53631cf07598cbb50f424f6ebbcb4e9effd74cd3724ac5cf9e52305f9a046c0302047c435bb500673065023100ec8aa0788c4615ce2d6131950eac3dfa6c848a60e95897be6f15c5ce37d233c2f83a9548db13ed78f28cd3dec923b4a102304029cead7d15af8f18ab56b42f000f7b7dbc792d810d56549401cd25243453fcf5ae4398d624b39dcfd1c682b42710af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023030f30e8901f3ae8a3a4205810e2bf13a9ea28541bbb780fa856c5e8fcc41dc971f7b5973e34f12dc442d06d15c67756502307fd58a2a1bbbd1618180782df914dfdfcf588a83776a62fa57fb75453dc8cc27451a5983b9155a9c33f01d44f372056b0302047c435bb500673065023023a7ba4de9bd4a3b5e0427971f146cbed82c790891d61447ffc1fc19c23b7751f80b2791239c88ae84a4e9e2e12d92cf023100f87728a9f57ec6aa42cff308b6164f7fe0a7ef1db87592acb961e6922af15b57a6702b0c7fc11214aa0a702e85a9c3da0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b32e4cb004a86eb7d626fe36dc045a6b5dc64696c83aed28090b1dee91bfbb0bbc96361ab168ee24ca228df620460aca023100eeffa4f50a28149b64bf92cb2b2820993fb7fd7724ac0d328aea9e52e37c126c30e7d66df6f51a44d05e4384405b1c800302047c435bb5006730650230594180a933ecd3950a8c29fc18c7ce8060c5dddac3ebb159bbc13105f86f2e0c63cd82313b3133d351772abc6c6a1725023100e759dce704d29bf4d6e8ba5e71a9fffa5dd627ce20cb254a7791327716664c852b232c9592ab4c30b28f9e19bb6ac77d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230662cf47d74cdc2930a827dd6f4492fc77e927d292da1f5d59a8ce65c40f480072d850a5169672548124be706809e1034023025fb16f5955558b7b7143c2ee0b28c126d1fe7a1eb64b1c6eaa1357cfc3501ed4880be2e277fb864920b12b6b7b50b260302047c435bb50066306402306d5bcefe672b6d79b9d3ecce997a498d8e71cd275f85c7f25a52899a1c98676182e6f4f728df03e8371351086ba40f4702305938af38195b9b1bebe6944cee59fcc1451111252d6a97eac3183acdf70ab8e473dbb7ed3985fe4244ebf9c2fc0d695a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009e252a2bb72ddc65ee472cb94ea50f061a009c2d0e9e24dd142948c0a24684af55a30ccfbb5bfe8ea049ab86885991a4023059a880aeb105fb4cc9a744afb86d77afbc8e095a856ba1cd7b49fc1ebab6f4e0119111ab6e3eab2f159c8da324f45efb0302047c435bb50067306502306817313db0b4a466169c1759f68b7a3aa1baa920945672344dbf7849447ccce957b7802b5ba713be981f85765c4d3d46023100fab3ef319dc87bde5500eb195437b60ed9648f548f00676d70e4c9c7c71c02850ab66437dc563818e864258ff14b895e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d853ac179fbeac3d4ac599513dbedca63c0dbc8a0fe79576253e644cb991d3af7b7144bc8dcd1b5bbe4bc8a1f0adb0e2023001c6102c1649b09354a8117d769be0dec4c9f7e12e9f268759e211cb95121220e7cbf04e7ce899c1a9783b957103d7720302047c435bb5006730650230601adac35983aeecec5958b0d24ac71028401fc9a214d36ee7adc77019c44f99fa92ab9a8dc5e741480a715fe88237ae023100af2bc5a741abb8265838db8a352033b641f46d23cedba2998b39a9b3fee37c8dd04b99bf880d400e89bcb8a3069061700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b14205e849b1141b4f174842f8ace4743a013f54e7a4908ca5f483984bc1b477090d14dde5afa823f34dbd75dcf46ea2023100e9826e125f4929088b2c4d58cdb83993b168c9c932907401fadace6fb4493ca519699af62128edb266897c4f4ab8447e0302047c435bb500683066023100d83cb72ec31775171b25e3bd7caf1aaa04941294f3f2fc7ab49ef3df62fb367697cd41aef4e21126a7b88380b821102c023100de1500c859daba49553620e67b3c537534dd3e5ee75a110c3c193a4d2a18ec21a8aa1f470258d2ecd90879e990ce45b90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b03cccd9559181cdd19cedc4c81fe4b84517ae7a0b3fc301497c713cfea0002d6c770ed4717dd153030d911af32f7ab1023100834d85490f5e6657fe1f8c0594f812acb2cf7d949eb23e311f957d987b49e92cad2aadc60a51d2ad279a63294b6714fb0302047c435bb500663064023019c837cebf67a5865401a44a9c0c6f74825f6ee2d2f8e37ef7c9b36f009d2545bf1b3eef2e2b8c3bcd9074d31f72cbfc023075c66435fe85a5dad6b628f2f5e09e93c000bbe6b51aaf3faffadf032de32cdf231a808fc0efbf3434122fbc756082b90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bbceb1f99e86e3b93b91e9be423a4265fc2d25698aa8b04f549303285086b5aa8f27272555075659dc43243f52eb98a5023100dc06ac80abb1a269cde2e4ddffe326e0d82e6a06dbc1dd33035b048c5dcd8025bfa7518067798d4433134c476e4d735c0302047c435bb5006730650230540963a5cf56757e0cf584418423eb587a6fa5c414d423d7cbe4a472c59bbe082fbd7d0c3621f24663d03d9c506e0f32023100cb9ec6ea55045b553633ba0ee27f8921045c30c2d4ae17a526b00136a3a50e07073d1bfd03f8b4ce4c38b846081b554d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230185fcee2c4093402b0566a19c9b6e4c005c25ff5803591364833be460e5df5377d136e2b7a5671a6f4374531a8d96a1b023100aad31471aed55fc723755e8455fcee9f0d639a4831662d88858d50f59261695aa86f70615ebdac8463e16374b2d3fae30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023009692c8f25d2433dee2d4128895b2ae100a33bfe2efce420ec17ffeca578fc8d429a2fb8429ad570bfe1685d66a41dcf02300fdf27264f4a7cd83a4b8eedfda3e0c3e5c3103a0268b426f76f7228e684b63aca3baf9a3e1b548c791d73ccea5300440302047c435bb500673065023100c43629971fb8781ef3b773d94c1c0d84431532ad9bf389c818c1b0e688aedcbe5bd499041847652c67e8ef8add1b76eb02305a2f930f2a6714aab5d3bbb9048b37b955a15d77b30bfb1cb6c97a577457525d79daf79a8e56904e71e7d968ed0883bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a6e2c1bae2bbdf777422e5af702f6de4cb9437a8a43303e73ca3431cb1c37fcf28030156cfe161bc4265157cd31ff56402310085729352668cd97257f4a9845b20f9c51ae740e252901cbd154af04183ed0da1a3b70702a3ae5ec4c8fa28f835e070410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e2e6021889c9c6412559220dc49070d973b51b3eb0272b87db182abd37b7e478e3ef2bec11385fbcc39432af6914b3d002306f9bbd9996ea20ee97e5d90b76ab09cd40bef9f254261b76aa1912b3af764d517bcfa31b2ebce0661d74b1b7ffa79b5e0302047c435bb50067306502302bbace7c08ae9b97997858cc30e25e6d4268d38262211843faa266315a03ca017e5559c2bc744bd9ce747af608d05b6f0231008c2bde7c3eb6e64612c4e8196c6441a37904c170641aa82efcc6c6449b8c69cceda0f3e80cfe4ad9f42146d4c1b7764c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023026ac0e5ce9940b9ad953d6f6daed792fa51d3f981c29689ed8fd30059af2f5e73aaabc9445bf6031886710e6e02a6e47023100a14cf67c71c67b2d12f7537afdae730c37a936e3319ace7fb369a928017fb0194be8f5c4334c5fcb4c87f204bde8c2080302047c435bb500673065023100849496b46984d638405704704c3b89a83ab7bcea9b30de06691d0aa4b88a55f0f5fe85510d261565410ead0ffda38a190230066a68673c71a43b0833551fbb57c774e37b27d7f3cbec71a4cd60f0c7bfe3c34d255f6a69a787518effdd12c58ddc0d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008ad0516b77c179dc76a841104d51d355631ae1b5c1756082e8af1e6e8d8333e926d7a4de786e499fff1c4cef7ab5762e023100ff2dbb6e5b83e5c119bcde34abe57c5a6f1e63af6d5a94083e052cbd6e7779051773156d269802cb5677d0507dd091b60302047c435bb500663064023047757b2add5bcc384015e7de10df72b96d0ed2be2851bb54b43f73b92043cc03b599a0c65f93c638babb497de4b12fd902304700527921f5c89e75775d5691862f5eef67408738ccea8111683fde053857160573ef8233a38c1c5b2e4ced111042ba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d1d50823fce97e80f3954f88dcff5f1fc01de59c1ea8459b4e3fb71df19cc01f2a6e520ed563e60b7a705c1d2223ea830231009b86c721297fa08e4f2d0ecd71cace533e6f0b6a8fe08d3668ce140d285505b929d8b4f3aab7969a5b4e23504b418d740302047c435bb5006730650231008313b6e339b189ae6667c3340bc23e79393a9bf530b2aabd40dba52b27ab5cb141012daa6e1b8c27db2940c24f5ec38c02303016a28573b29e055e5fbd95cc246b19994d2957f2193a8c3b52c8f9120ae8ab3668f743f16347d17aa3c1686acb0cdd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dbb1b3a1a34a8f3407d59be8e44cc8718f9a3abdf7eb277e1bebae401d2d3da2e41623a5ff9a1405838de51b47e5f28402300dc6036c068ace814d53aaf3d925050fa7cf22b8337cd3747b5283a1bf9f17b344c003a7904711aa096ef78eddcf9c880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f030affc37bdb806a8ced16395c8d6d531ffc491753b19e584913083e913ceddfe5eafd9217bb59cc9c8332643da2109023010f293bd8bb16e7d2a00b70e7b735fc8030988b5d6e61341052a00de4490d5ab908c6e2d802d9dcac98aef65ff570fae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300287327c153c2abed46e596b357c1f02cab057f18fb8a8fa5752d658b4ea123faf416a2f3fa989c79bb597e54d76f0e6023100f710fb021ec7e985ddd34ac9b104a63a9535939acfd5760b6dff66b86a2c7ebd0dee54d5bd9016fdea1ef27aa7abb04a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230267cddb8813f7972c65a6766074ce3669570ee0bae1802c93d17685ac66ee5b08323f1564e68e1f4896b1209526690630230214fcbcb8a6bf062325273c76a147fe483480b2df38017628647ae0e221c814282f826078c54e9ae9025bdfe2c5df9ed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023006cd526e8b6d3ca87e95736b5e1e0ee969ba4ba78b87c5e4afac28013b2da7975c9457bd11335b93ffd0dd8e1a3004ba023100e2e396d54db257f3fd410a5f5b7614f8607696c4b066c719b43967251c55fbd5287eaee50e8d411f3001cba7a2d265d50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008aeac378da8c6b1f49eeeac2704658dfc94fafac7c2d84524880e1d3e7425c53368c69605493a674ec1ff495558c4fc7023014c03c7581195d39a7864f2e4819447bcfd5209fde1566ed53de34c35ee717789183fc1dbc89d615134e69895644ab290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310094cf42d1c18357339ed3cfcb0656b98749ea1a3954975023c2e538f9fa0e2b3a5d7b89e9f7a1bfbdd1050c1d539c0443023100de348bf3ba99aa2d5992fc1042d8c202d38788387ed87c8e32adc85f6dc155b138f13e35a2938069a928d8f8eef0abb10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f4a885958ba63a6da4c9559cc06a0320ec333a6ac47d558f9c9c5a383785ac11b2b9835e996d2e8409643dd1a46ceed70231008973f2d44f61305fa22eb6c7cadf1882398c55c450119fdd180794205e250f922cefef16f8e7da8d7aea05a5e0e073770302047c435bb50067306502304f07483f69481ba9b85bb423bded49aef35eb711a0faa958a88d4b6f8615a502e63c7788183d6ab90495bc1b498079d3023100dd4a2016c3027d7df04ad4fc661421bb5f16f2c48bafcfd94c601cb5426990d90f212d5c1df23d1e50bf915ec6766e090302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023057fe5343f8c0f28cd24620f1fd8412b67a72292c2037c8c881e95a5130192e1a2d74db66603b3b0a005a99d994aef2f6023006721f74c2cee5599c8b238eea84d0af8b6027639116442f2c670d2b98f49e42bdd8bedf76ee14ffe84503a94f0e3bc10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d7d4822c6230a3830cb7a375291e09edec0595b14b4859e33be0b39184df3805cef95e21e566f29501a39b2a39f76146023027303d82a2d3582ff2b31df133fcc56b474593bb90ea789a5fb522078041e7f013e861d80d82538b939a41d1fe69262a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008f1323f77ddc1fdd7e33b8d3dee6a1f8ae0d766563a493cb899229c1ac7873f352788c66054bc3dc9ebc9350d4d7bfed023100c7673c7e9c665653a530bc73298cf181d88a0bb9d3400603b942ad12a24b8ed7855db926b114c4d7bfc2e8271d9152cc0302047c435bb50067306502305426077efcc4de664831e09dde81dd5129bda45c5e9cae2f16676cdaa8a71ccedece07ffddb22922097baf939519ca3d023100a0b2940f2eb609666c040602aff4474dbfa05995fc4cfef7631d31dd453d26d38cc82e3ec3f6d1cbbb4d78d7d6cf65d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023056cf289e8271352b11a652486585e5ab6dfbaeff2ef8f3a4b400ec3d0ca1cbae05c87a189cf96d458ed70a9125da1f2b02305b579a2b133d40a29038ea12ccc512c499495f9f77e4d278dfa4ef154a0b9c714e7c57df0d7db0a110b820705e8595880302047c435bb500683066023100d17cd22ebe137052c4a50ff7ca730fbb883ed7d248fc974b55fef919ee1ce199a33cdb2588dcd6cd364fa71cabde2ab002310089ea57498d9cd045b6906432ecd1b960095eb991a1c678541609b43505e1f92f2b03a0b0f9d1ff937caa6d49083b2dbc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306c739b376738cf569775ab86db924fad83dbc48c33d258ddc9437959e6e29651032413cdb0e14e7a37b30f989c1ef5a1023100f09b6c83d1fe5b60576c557432f872b92bff9a76a17e3fe8852e255a712e584fdd00b3841f190bd04641cae8dd955eaa0302047c435bb50066306402304a4eca7dff706a67b269f03fdc5cd5ba656e640799d5032ff1762a5d37dbee2b8e166e1737a25df574365e22f22b75a602305852e51abc3244893837d238b6ce7b2a9c47530ea73973c7d8d8fac986f3e71061756e7dab4760f6172db83db67c00610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023046fbb58019f0e0786a062e429c5bc7527591f72dcaf92addd8ba9e6530a6a6c5905ca482d28efaf29e5db878a11546a1023100b204095b56046ed343cc4024873f3ef05383ae708dd4482850d5325ecaf9d52131b807bb2ef5d4a531427ce7f62620290302047c435bb500673065023100dd15148d92fff7140ce2084cd34f348aec61ddfe93f6c78c9c989c82855c418e8d5a9697a2ac6c276c0691afd424e6fd023040d7187733f45f2c8138b5841e9fd37e9741537df0b4b0a23fe07775305d9500c4dd0c0bd3bf8785d2ca98620095b4f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301e47987c1304df6419508c9cb81ad81cfc02de45ce70c8aa3ac3776dcd6c68cef98c157d53b40a44074f6fbc3e92fda6023055be62e5f2ce1aefc454e41fc50e8dbe32b46cc164cb6708abb1a1b643ee2b39088c4aee9ae741f3364e909915708f350302047c435bb500673065023074115159999d031aadeec0806ff62f67d7d2c9d05a8d081742187f255aae84b9da89665e882c9394292095571b24116f023100eb657206487fb8816f5e85d13bd0b5b9becdba59fb57dffca95feecfbec83ec9288de68d449804316771d1de816557c80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ae80f5b7b833a8f9f3ceabfca73ab59623257d1ba9e778819a2bcd0ac69d14f820bf638bd9ddae23b3eb5429367a790b02300af323c9bac48bbd6f43388883c8b1600a092ac96793ab479d803b156a5638919419f309bfbfdda4f2190fa0ea4ca6530302047c435bb500673065023100c8e1ea3181c346956cc386ba4f2afe310b17557016c53195852691effbad58df5d27c6bbb85d0bcaab8eb620409e6de3023050d974dfeac5321f47d4588ea07d1939f35c37e854c202560822827f233a9c4063640ac9319ff759c26bd180e4a898b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d227b0eac1cd1c68b12e0899891f2df62244b9d9076d49be70a0e19b712f4346faedadd8fc92024b9bb9cd156fc14e89023100c0bfef3fa0342d5a3a20580f255ed2a5da003eeff2f11f6ec93d81f3c4f50fcd97fef929aa9d393df2cda9e7d86044230302047c435bb500673065023029d26a62ce6bd22cf4aba7468c91df2ab49415dd9cb34f569b452675e57cafd0247b3782cdb25ef8b7521e12d1976d69023100d76719abcb5ae961c7f6a8b335f69d2897683a75add41b58d76fc872474b28fbc0a61cd2186d2c9343c8e00675c72d1f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230678e7a9796fb2566f6827c9cfba8824f18817c29a761abe76e7038ae6627d238ecf5984d28476c46af2961ca2f5c9d7a023040bf7589307c8ba7a1c817835b8fdff1b718cf2e8535dcda0dde9def9c9a2a20a268f5245ce7d00cc9d6abab671bbbdc0302047c435bb500683066023100e1ad6fc618d1a685b4827a4e935559000613817c422c510c264c86a5c1e641db13932b05d31abe339daa10d3bfc479010231008bb1163bfb2c1a6891dd566e1b13620943c74c7a304226f5b7073b554dda6a3e829a20799d386cb29b56fc06b648c8dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a6c9726f29319595a266fe50cd9a2c4afd99dbffbfe5985814737f6bca879b01f0bdd15ba9c3d4a7a00d8759bba2eb5d02307c2ca350439c5a4d6975549853337694a44dc1421b1516bb28d1594df037da27f44aab96576d420d3749cc5f9326a73d0302047c435bb500673065023100a7416392de803e1ff79da1154c197b33aa9e58a96af5dd0235f3b2246daec5e77056d3580d82bf5c63374c8b726b5f6002303571969a4a97805fb53581ec6c5dbed3196b4d6e52a14f33262daad07896bd86aeb09514a8775698c9391870d82972e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310095079f1a81067c9d0ffd4636b7586ea733248c92f144736549a2c0b808f8f3c11492c51ba800e4668437c2ad8013fec50231008351a9c0fed91e9c6507324efe3d8c0c083e5a8f3ef21b010f4a262c017dc7955bf9a333184b17383235d7830d9bc42a0302047c435bb500663064023044381bf8d300f3c70c64bed9eb283c0a587932fca1db0915e912a9124982315019c40b810dda608dccf8668dae8e1a310230417a6fa3b721789a49c343643ce92637af2678d9891b2745d7c2f9d35c64dcddda13482549b39b8d3e829cd8dc9c42cb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306a8fac4abef93982f233fedd674f8a7d2b89233703ddea23e551cdbfaab50fe1401ccde77aeed69419e46012f9ede211023100a78c2edb35fba0561f9b336a6d00938cadb49911245bfc8dd8abcba6ef3116d9ef21e6e9c2be48129cd2b93e9c8cb3af0302047c435bb50066306402305a498fdc67f6c8eaa165cbb4307070abbc1150418b6cfb2f23dcbc6a96142c0adeea3503e3c278590b00c5f3b061482102306be64509cde13c94010b22053216f98ed55cd478006f47a2219d9bce81fc93deed1b5fc93a9d4f9e857215bb08ca9fdc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023045a3946f3017d9b1e699dd0fe01c16aadfb1b729eae0a355fed295bebda6d364d714c03b65a8ae55dc776dbb92a9efcb023100daa4cc051a823ed129b49e22d5e74ee113ebb914ab08a223f39d9c7ca78020e65116b8f8dc5013e66beeb4489284bf210302047c435bb500673065023100d2f2bdc4bda879950b9300ab06d941da6184b4da1a8bdac7eae109f7fad4954f22b1ad840dc94edb03464e5981a14fa002301b87992a3395d6a128a660bfddd66607547b345d74415a16f3b0fdbcbde58f44c3f4128c1f45b56250e3947e1bb777a70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ec931b3249322b2b33352862c7d9eaaa74bfa43b0a35e0f26900ab5bdef2af4d67ae0f968088a1c6cab49bd1bb9a5a1c023100db03771a08e01f755c1c55cd950411037c665457365f335814d424d1794bf72d1290f64c95e18abed87902de353922710302047c435bb500673065023047fa59c60af8d1250fe61111e16eef0722ef433f45e6fe0ccb65560b982698bbf4ae5d9effd9d8f0895d5688546a3953023100bc35a51a6934fa68ccffbb9da0c1122b08982741bf175344f62daa672ca8d786fee9965d93dd93e1b9bceb5387f87c790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306579dc5d143e0538e73a02c937abd0ae4e8728554587001a508a5bf893934c7a72dd0893b1c55906424d6cef8e253c3c023100cc6623451936e4c4cffb43d6d8200e13eef13f49ba6e4ee7990815eb325c8ce9b8a116ebd55b87d39300f61bcabaa5fa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d05e757f91afcdaf16487b853af56c862de9473ca87d31d85c3d7763bae417dc71b2f015e989b95b3f0b0287816dae7a023100ec4267892a9334318b4e43617ba7aabae0954752a64e8585f77ca0e7fc9e7b1fee898a2ed550f8e6373c7e52ebb500f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230239258e2ed9523fddedc06747122c08bf9769ee16a5f10ae6b5f7b14d3852415027ce99db50838b576935d3579922e6802302bf0373744efe175d7cfcf3f9d249b3d22d658bc7e44470493992ae8ad945610e79b8769b9b1227566d08f93e27629eb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d8d66ab55a642e7fa9cc3584386a564f779ca38e8bfb9c2d05d01cb8ad4b3c188525ba44093eb25d169b03b767b79695023100c889ae90bd2afdab5a9c67022e30a63ec3f3dad13e20bbb382505fb71c450bedcf3036a5d2bae09ab0aceb23a43af73c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e682f7f5f0818fe32b129248f2efb251270190f32c2f53e82ba79cbe281650504becfb111ff0921cc274485d137bff9a023100e86233285e5fa5b968b7a497c9b269f8ff845ed3b36ba2910c2ee8517b84bb7cf55332f055b085ced1ea8cded295ca3e0302047c435bb500673065023100ac15c5ef6f8737d5089ed9354d8f8a8dcda019b5493d19724d88d1be3f397148789a78c7fe859def51a683b0845f0f7a02304b7b1e670484199c6606b07b209db536d1875af84adae5d7058ef71286bc0974ccc1aa1d5abb7bb0e1c39dc115465d0a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fac9ae76d66e921ca97bcc040725e17a1988328d7099f683f9fc8008712dca9fe4dcd1b9acd05d25a8d13d8869b4abfa0230663b4ad0ad4145eddfda68bbe887300f085e0c1e745af73b38c72707912edd26ba7a7bae20db5e4954842fb549f4ae6d0302047c435bb500673065023050440a2ad1d0157fc299a88346a0285911ea5fb72f10f1b09c221fafb29bfecbd1aebb3eb726dceed8b76ae0a7cbb75d023100d35b8474cbff84cde249bcf83b77f235f04358ced5d8d7fc7734baba817e6932c79ed8b3259770cc649bf265e7ba81830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c0ef91225bd5e8774f765ba955e33411eda47f7239a223da0851d0aeab9323a7a7e896b0834ba6e0f604deda96804cd302304336e3b3bb51c5b79731da4be72d27ec9c67abd24a2a14face648242e211e04036980041d08b4fa7e6d8fda44337a0800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a6b5f27931d7729a684ff0d76ec38eaa727dd3ad6c5db32ade67a08b8b737f945d7398bb4723749a23be5f48f640fbb702302cf6227ab9de93c3a3c7f342b85add62277e4383e178c45c7772c6800bc2a425b96772d753a8bdfc6f7889f4a93c56a90302047c435bb50068306602310086dd93b0f186a989197777f571d9e3e21a9ee1f2fd8fae7a88c01e3b63e5d73da279c0f51f7c3ad619d43e68c750530d023100b39219d2fe1f4b2453ac4e3e0e0a1967e07be84ef244d6dd22f38515f14e6f14c784178319abec746514065a3adf35f60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cbe183304c2bbe930b877748f283c7111ab3480905321ae3df8693c994285c02e920bdfd92abed3b4e84274be7c87b650230798ff0a23dafdccc6a4915de2082ea37c0e1353a582a3365817f44372b15a5b77bac2ac7ca5eae5bf1fa3371e49017db0302047c435bb500683066023100d24c0126ecba6e9d27ab3bc8deaf373b78161d4136d31f11f8c9b56fe038d22ea0a4a6b8151e6609ddb3bc186cda87aa023100b5578ce9c282eb920090562092375d6275028cba5493a280879156d82967ba5214e18f4be8d486beb0e4dcbc52086cda0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e9982112a0b0cd0bccfbbc1930c79a1d2832a11e54c8b4c6adeeb250534624c88f98e739d5801c5698fe4cccc2c61f9f02307dc2c90ae2ea91e19fcae47567755f4ffb8fa622666ba7d65097c904e151213b5ddcce99daa4bbbe8f23da3415c8f0680302047c435bb5006730650231008bf102a3c3bfbaf53d6ce278706b08c5daf3dd7b4c0c1e759737e2b8bc4886f598f7c792a09c82c8c1af08be277c4f260230476013105b78ad8f8d513f7a1fd6cef0072388178a8f1ca8ce85c61fcfd449eebe2518c03e49371e3424be38d39ee5f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301baa0b5dd7182bff6aee4cb7f1648e4749bef4a932443abc6fa89584544de39b1ce10bab200f4d42920c4aba014e10ad023100ab3daa7df953d77e950903fa808698250f5b6e34a571963a538a850117e9a12ee04d0cacf0c3003cbe607a044809033c0302047c435bb5006730650231009c73de4a44cf8b9cfc13e1ade72108dd4c72de4e82b1efe332745004eec3e861561fe0efad137ebc734a20af3affc013023043e05d9b355ece972e3b1b734c7de0bdac919f3c8667a85644e7b419fd4515547e750882ede4123aeb65bf13dd7c56f10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023056c6f7426028a81a54a96c9c5d74b22654ba732d91615aec1d5df744ee1fa80a55670a9f6609c478a646a5db48109ba302301c92da4f92ac7aa7b7c2e94fe0ee7ac69a3d4cc655915dda788306ce855818134689b73dcc6f8ad73c1072ad849088c20302047c435bb500673065023011e2527dc385947efe5c6e4218a763ffaaf9d5763bbf857330846d063d451e854fdb28c580619a584c75d119b4b644e7023100cdac8be73ffc47c03dd55e9d846041af380843d18776c2ee9865738801d835d97fe08680abe9626ccb7533cf5cec24c30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a4d48c903b8e61cda793aa7d9b5a02a113d5f93681d0f96b5a82334b12a82c04f4153318ee8af8e294a4a34ea8a7ba9d0230727659c9b50e32adbb1836c80195b9e3d01d039caa6a5be02953811d78893fc328639e5405de6abc030fce1fcdd63b800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230484cef7b98473d79c748da9d365bf9b4f02a08a192b79aaf15011890b99e3d03e57f97203eb05fb363a40f644c3ed8a302305ddd2fbf48b8419c82d4db9ae434d281d881a89eef4e360d6b60d42dd78a7618493eb0d20b05fdd015a2d606df39e9340302047c435bb50067306502300df0d2c832d631dd8ed3ca491485a9901e4d82f0c6627ba3ee23df76d974a36f9fc90c250b8aa6eeb448037f2076a7bc023100bd83981691154dec7ff395083a674c514fdb6689ba4cffb924282ce2a0e92ea408a0480752593ac97838376f941060550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c3a45fd9640b8c9eb5e4bf77588ed5a067ec8a93b1630c4fd0b941e44cf9bdfe7a7d20506cf2741e8e7aa673c03a774802303fbf259364664a337a965e2f131cf299360c9ecda350acbb5ea33a6cbdd49eb42a9e592eb77e767dec4e1fd4dfc0521a0302047c435bb5006730650231008b3f76aaa7e7c25da1ee887e46e0daeba35107db6f960d21054db37c06294107e994586552372008f7296bc08fb835330230709702c9c280fe84e4354817d82819075cad3d1d9dcc1c26427b4f04898a0f09b2a79616fc7277069fd91d21ebf6bbf10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304b47480f7feeb9e8024d59255e5dab4d032b0dd1617e1caadb4a27a644c38c6f4371e3bc350f415f22711f133215863f023026c3cd7ce0740e6146dd2be0042aeeb89493f766e7dbce75c92b381bc483651c72234abda3b42cd78ce2892d06256cdc0302047c435bb500683066023100f49b98222b82597edde99437142e7b07becad9d26f61f0f36d26dae837b5fda53cbf5585b7fe397b5ee6f8035b8304620231009d540689b02f883c77a64d13c35694a568f5ae46787c16f35cae9c59418be39ef9be808d9cffb7c3447eefd2c481fd980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c301098ca259f57ce886e12a4434f6169addf1f49eb44d163b4bb4e568229a851eaf4266b19791d3656265a8a621d86002310090ba3558d2f9211d283dd9dab5ccb7901e1cb7956a7e014760d5244a5c5757e8e21fb0d1dae0fc455edf0e1f599b8ba30302047c435bb5006830660231009a724b742af1a5daa165cbc4d2b1eddb17a3bbe64a6f17a8f6f1c93454d042dae420d9d9779895307b10f4d28aa32c7c023100824dfd5ba059ee1cf4b12a599364d8fb7311816b8ed8d3c4c8b19d5a1f53a23940552f63fa97e15619255deb08887d080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023029dbbe7438b8eeff40208d10e7534a83a0c1f6fe587b581bd5fe1fa91ffec7bbe132ecf1787d637c7c17fb358fd32a29023100a4b0bc6b405a8ec998d242c0553e0246d8550b9214d789caccb7afac0674e6a68b679d3a09378fdd280a3408319195590302047c435bb500673065023100fca5331ea24be3c65bda683cf9cee73636f86d2c9ab3e4dd4a34ae25305665bbafddb306468b1b94bbc40acedc8c129302301b11bd20eeb89b6b9226300dc321d73469d4a9c30c32b1f6eab38798ea3d33cf755b97fb308b39168d219e047ac8efb80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f4af3df72fe4d34a9d11ff5b31dd8d5ce179eafb004f9280730e727707980e6772d50d2012c89c9632e3a8bbe4d2f266023033c605b642b637a7070246fc89da4c2d1e1f6808fa8409777799e1e263d2138c67baa5835667e6ed1c5eaf6c0902957f0302047c435bb500683066023100f1e686a4637e6e10901daa5bde1127ff390349cf81b5fa59bc423db9bb5dbd87bdb4b0683fe66a57e8288850c210c284023100cdab87a6f9c412e1a10b2f7408c098716f091f25413c3676e127cd3d1fbd8711bc4b2128fb08c4cf0831224e5d5562630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303697b99c441fce44d3e691ea43aa0deb5bff187e01b153a383512ea263d61a1dc10e484cc9a899cabf0998501d33b741023016125c13070bcb118d768733d47608ae1280c721bbb20a95528f8d8df9c3b687a97828d7adc400c2a08ea16d0ea1e9990302047c435bb500683066023100f3a412459fb7db25871dab0b938a6c85944d4bc508b135e45845ce9663a9bd0b981f1ce3061311b0363615898fb55d85023100cc755820d2220bdadf53569dae4b2d213723dd8150d62789a19456d94122317c9b6ed65629da131c43fe257b8d667e5c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e96ee71b259461d61252d897efdfd1c2b5124ddcd4e36a50cd1f899547d4d76422db2d83aa7b105eb8d036cf13709f5102301125561943f69bf0681db94c20984e33dfcb96e2136789cb7a4224b8bd97d081d9873f959e38c39fe653800ec31a44c80302047c435bb500663064023054d2516280df38b46918bca2252c3f3b95f65187c2d451b34accc0b77fc694f70258d645b6de7424c9f22a8528fcb2b1023058dafa12f3cd1d098719b2989175b0addf8c1f4052c45fd1b90b237bc7d7efc51bed67da1c94eaedc93b28c425c4e3640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306367526441d8648d9a5f7de8f3150a6ad3a1a42b345b754b39fc128ec65912f03b13fcffdd450800f765c734f56b1c63023100c72ddc984b1bdfaf3b9f0006e6324e646b6aa0c1cc73da366748f4283fec366c29564977ccb2571650ef41e4e0a4eff90302047c435bb50066306402306aa788f428b8861f4e95a09e33db6d48b2f9e461705dcbdb171cd7cf4a7d7331421c379477c1cd1dec50836748cf2cf502304faf2990322733da35a97692d6de0cc27979dce9bd1226c933ffdcc63d994705f7301de37ada58045b898a0d684241070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dc5a7419d6c0846c01172628a45d977f02e73c045a458704cb259280b7b4b43e6a29d272081d9043d3bfcdf462bda82a023000c69fe990d98aaeeedc6691fd40bb63ecea20ae16fede4cf10c9f47509f9f1358c0847d4e468a869a6e0e6c531f6a6b0302047c435bb50067306502310092e28b5bab273a8e445cc3feb628c75a6453268f117a715b5f31bae877f73fe7ff4ed2ada538837e902e15c3145be23e02307fdf4e50654ea686fc55951793b9266052ffe456a3fba9afcab57db6049a392393070f78614ce39cf37d1ac08bcd33aa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304e34386a31e410abe5325d189c2012a9ee9e9f86a64ab14c604e81d29028906fe054e59aa9c0bf4e687a784a5562f3250230260a9f1bcce5dca597b7d846a89dac5b41dbbe9e8d694af832adb1b2c85bc7c6a95eb8cd90e9684bbe951cdadb70a6470302047c435bb500673065023061df9eab8e05ed8b002c3a0a8d652aafce5f14db27d9e489811aa71b6dd85dc34005d7a0a582d48f50c8df628ceaca400231009c2e1a22e8ccf02e58fee41f2a6b43f7bebeaa14c92357939dd2a3d14ce939abd482553eaf578e3169541eb28585786b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ac878310b5050733b80826435fef91d99ebc5b6c53b15350885dd73655517ed7f237aafd3e79ee606378c827e5e3ec02023021ec9d06aee0398d3698fe0b9571929d394e139c6af3870b4826b2f8c86e9755e8097c5a901d8da67b257deea592f2b30302047c435bb500673065023100e69c6819a364d6346d81698977726fe52a04fcb13f2c5054d0dcd9c0218aa3e6e9396a0249a86f9cb9ce454caf2e1f75023044c80068eb849d8420ab516e90eec2d306848505fa37733d7e86935eae5e1f7775cb4ea322ba3a388702cdc5a60e69510302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e4a7f83aa373934a82c763cce72f72bae2371903135f4d7db34060944283f8c3431795e27499917e92bbb9175b8f195e023053db8957fa0957d1a002a38d30a7350ef52ede4c1b90841b49d934af5f85b6ef7e7cd158ea70f212875c8be4a315aa410302047c435bb500663064023065d3e110ab7ddd1b2af21b70dd6f0853d816abf74b089698dcb614be7e54495e675019c6a61bb74ac2985c841a61910a02304bf48567c5332712cfc582ac3f72797e96f453c4e702a4b5594f57afe82db9367426f6b73b44f7966a098a1edc6530260302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023019f370761a144b9f3a3cc140a7daa7fcb9abad111e14c117262a527fb34189a164114ccf5be2b79bd8afd63ca366aea60230657f0f3e39f4063621af6b7d2ed0ee56d7a203bfff7afdfdf427541f33a5b064609ddf3527c9dd4e7108d75cfed959510302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e78d3445572ee2eebf360a91f253046b508613ca47cd01ea46465791d02331b36fe4ef15444b300b036ec5f041e76fcb023100bb568e57f4c94e600b54922a7bb5b715eda6a3e7963cf5d402cb43c1979a7844ff9ac457b0580600a3e85ad8edc7934a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306862f9417506a9ff4b3285f21abf600bd83b5523b204eb7b44c9e9b97579d1d6bf15b59f1e996dc8e8ad8e772412a94d023100f86842d93add28fb3bcbdc5db6229ec93d6cd15cf19be6469f67e9176f5377f9a4164e2dd0b38ef80c8fcfeff2104fe80302047c435bb5006830660231009a5cb806cbf9407bf16531946547aedafb7b79498871b705d879ade206a90cd4b6a7449341ed9d3e052210fdd0f76440023100ff85e98cc05a0d829eb3d62fc1d2aff223c5e4fa92dae376b72304afbfcba515f0c43ee9c889d75cc9cb66c53886a5060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ca7b139baaf579cc12146d52218c4a1ade85c5b56af2c068f375b5667a8570f55189fbf871c3d3f85c6f596869adf22a02303ace4b60dd1876366847760a35b2c6254b4103fc399e9e1317b4907221532f83a03ddbe42ab89795fe94933728ad536a0302047c435bb5006830660231009ac53e0126959bb83820f6ed7be7de988514eb394ef0e3a396786f1cd4459ea4a96a7b78d550269e99dd9a341eb17b36023100dd8d9d043fa3ea93c24568f8b460224a380a26258a267f0d1cf9ba7694f3b0f3d610270612cd908d4eeb07a4e058b1230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303356e6701ee90860470393bce55e767a684b9221ad36af8d1f771f198c801e23681b783e80143c9501c0fce8f77c163f0230235a183d224a82773b5857f93392b5b263682e31a12fed03ea6db783979f35cf41f403d6b3034de8470d3dd22fbb4b990302047c435bb500673065023059cf01ea1931302934b316e1d1303d797ec6b31ddb94b2ac60b7e123e0e7f7d10175e753f2933cc159bfaa493c7885fb023100f834b3f642e3a18c0de10aebea22b6a3bd31d58962706ee2658c4b4cd7ca3176a12d489472039f56f8e3e9b5cac8b1210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301efd01919d9341a6195b39e846dd4ea339fbac0bc5fc654826a2b9c9af99f1da1938cded8882480d43b8f38bfc27f88502310099ce2dd0cfab466f74a2cbe4505a37c40d6c46c61ae31d2c6d2fb5f8e145628b2c79dd1963a10cd11f393684a44bc8b00302047c435bb500683066023100fd69754fbb8923063236dfbd067922f0b8c618f3e2a6868c9f485439cfe5d2a58f5e05dbc5579a8f73c429f2f14ed77c023100d643003cc8c3033d0668bcd142f9a3d68b741cae561fce526360547d4c763e16fe1ba790e142d246cd5b59c6e6568e3f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a13dccfa1452ee7915754763f9a3fa800cd7474cc6e12ea0151be803f202e1ab089969180875f7d199b3d8d6de4c11880230394c8e7698848c488816a88e68618ab70a375ea04ceb60a8a42b36521bd698f76d9dc54de3e94d7d2c1d58aca364c8fc0302047c435bb500673065023100e6a06db6937fe842c5379cf33828f4ac4655e68dd4a2c1a8bc3661e3b4109bbeeeb8a4e78510cd5d0a5ed37392be36d202306f051e41e18246ab16d9169f17978e592ccb4af8edeec573c2e446e7e5e7a704fd7190d96f34fc781f4e1b7327af7ace0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023013c81072b5e8e7d908fd8186a2c4da758ba1b45ec6b765e226d35efb1e537c2817e995ac63f7b675f6accfd078812642023100e92d41ee35baeacd2fc5007ef34dd4d28d5c758f4ec2f5fe6fb9147f2671cdf403ec592844663b124804caf188a940ea0302047c435bb500673065023100ff9d22373357a79500dbd701836f37a84e9c27984b541ce9b3748d693f1a7792eeb9d3e1fbd4a996f289e8ea47a6567c0230490c32a70385f2041b276bec45ea395f3bde422fef69144dbb4d57ae008b6832dc2e5b0ba1035fed5c8fd573e7a29bbb0302047c435bb500673065023100a340c2f9b84ad1d6d403a32fdb4428f2cd9e4cce027e95ce924f982a3a5a19b728abaa94eded3a09136b5707a3b9ed4902300e95dc64629d02abf82fbfe8ca1ea10e1c2164a580bde278a9126ed596cc18726a5353442a8efda9e6b2900bd78168000302047c435bb500673065023100e8655eee558043ac38ae7ec9cc351825a13bdcd8d086e798c31a7a1167603fe01152c9456e3d34b1977a676f7d35716c0230183ef1cc85ae810cf4330d2341b67c88531636a4d24a01ef39901b9d976309e8fe93790cb28faed840859228aa5991a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023049a5d24279c8b58b4ae842ea2affceec799082817984a674ba7e3e1ce1e176bb5f468d9131020e8041b9073c0875ee3002305667be212c1a895777a6604dc9fdc2a8404df3d94b1587e73441c94ec7ef249753fe82cf3309327b769ee76abbd682640302047c435bb5006730650231008d7c2beec9bfe5a87f91d1916e3e8028062b7e51e5f2b3fa62ec7ff34104b03b3e726e56aafff644c3ed2482f961c117023026fd3af79e197bdd068f16dd8402bf7650e9161829ffc96daa864ea00926131bc7378d963abbb0c3e46c5f398732b12c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100afe66cb7c4387c1b33a0fcb374aff19dbe3c3365d761665ee8e7e1913180818283edd1d1b6b27d6f7581026679f350f8023100c7d2c858a503b5cdd5a33cf5683f7dcfda583e700df295df7f0e3276cf5aab1bb2541858b483bcd81b4de5423d01fdf40302047c435bb5006830660231008f908e0dcb937caf9e7a7874012d980d74a4b560ae194dff7e449bfc2dcbe4c480684c7723b011a4017e2dd1eecdf53c023100d31541b71d948daf029321d27996ea28cfa411fadfc8ef297bbe153575ce127867d95b0b3aa158e5aaa1816a46c92a430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307123fc465f2c4a0a17d17622d495aa322eea6757ecfd20a88fba5ea34136c8f10a178bee38a01f019088cb626869dde1023037c803b825e41e358008308408881ea77229a98b132b9aba7ba2a0474fb7cb45bbc4130b9daf1a28cc6d29cbd77a74e00302047c435bb50067306502306f3a2eea9d3883baf3699304c9f995869c9051607f8f691e7d070162a5d4abebae2bdb4f7ab70f23503e5a2998b05639023100db6d1a3d806d6f4caccd00069c8d997a58ca47c7cb202e9b1d0426a4fd6a4a42de2e2a2505cf295d62db502f88f91f840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100883591cc737d5d5d2e44e4307fe6878f04b4aa72d2c0789fd533c7a041dc4aad77e7d2d1a277507be147960bbe252c26023100f9b068321d708f03861d31a74781a93371b9a70c6092d40a049aec2acfad49bd165103394ec7ecb695c0f2ba9099aeab0302047c435bb500663064023065d593ecf594f98d31be641a428bba4ab03af43785396d7f9dc12ced2f5b1b6dbe04c0b5345c3d58e8c6dbe43fd50113023055704de6cb2ce4f2ad533d3ee8588093941073d46d4e04f2f5a0530a6506ed7a647b78189e2f75887011d059b5326f610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302c571ae6123d3e72bec8035b0e289b276e6974b884d5735ef240ba05c4af57a6774ea87dcf68f415fd560fc71bffb40302302919cacf1a7b6b447f3e347dca8f667aba7917b11d9fb3a435426353d82f6cbdc75683562f58b984fddf8811e1e61c330302047c435bb500673065023100d7f5af15c5a4ed5b3f588a11a3d6dec3eb91be00bfabd62e3bb01a07cfc7e91b73d44ce2a83cf024c4018aeb2985c36c0230256adac658554c924c268f85abe5a08eb2bfafe7efac7ddb7743212dd476029aa6f9eeab0741a21f4622983f3932a9d90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a9877fe93ac4f1b9ac60df41343997fd26ec37db0da825d2c03c658acb0cdd59fe2d94d59b9203ed5b25ad363fe865df023100f716b647c4b9580e5c0b19d018acb924b25ee8820d287e2f9318d73d35b4c55fa5a026eefe59b26b80ddcd6fa6946e5d0302047c435bb500673065023100b945362b5f5c3d819ca744cdd3295530b29c7012cc3a292880286e00ad6990bc2741dd43a329b1fb9137ec187f6a69e4023038ae1236c33bcbc5104046ee8dcf4d332da9313baec57cd8fb578c1bfb5e405ae040afd415c3914e98f19445d9f1f4410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a21b1794cde5695dd5ba37409935fdb24abbe61c45bb7bffc345d1fbc43170bdfba43bb563831e4d7268767ae8569088023100e2ba31d9e7b37871c08307d97f721b65809b280a7b205de1e86264541eca22d68ff22d226a70c4a782125829e72f6c2d0302047c435bb500673065023100b29bc64c8782a55604c9cdea678818e2129850a5e03aca3b3fd1c2cef2e6c4b6efca087018467d51e041ea168a21c0f5023014383c44dcde585e848b92c867f4af17d4dd9d407c189f6984f93a0e15f6e28a4227d047753ea3c0c9451c2ad320c6ba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f81eae7b3702ea4f1026e0df46dd8459d3baff6f3ec8b980d4487d4acd3b17336b46fd6a6421aa89b1072783417513ff023100a62ebaa61342fa0ed22531c2a168eabf3adfcf8bdebc0030ea5418c4f9f91975cde4234a45870ad014bfffda2f8805510302047c435bb50066306402304c3646e4fe91b767491f7beb29117be0713f12e3e25caea9cf0c10f2bbb1b90127129b1aff362f08f7b4a5313c0cdf77023008a2919010002ec0c7b47ba5b0dee14566d6fdc7a4ac33bee637d5a65832e2ae00be0e6eaaad74caec9e969ff18a4d7f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307840f7b7387b2112535c91f265d0348a48ac178628a137c5d9a19973c0bba8896611727c3c979735d61fe908928943a7023100b49d04bb85a0487401012ae3becd64d158c9ebba8bbb393a76d2d7013b0df6c18f1557a9c6946f1bf3b9e5726618e2100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023062488a94223de8d40abdd753a3ba1a6b37e724d462c93719a0d18633bacaa152ced9ae842a1d947053cfb5bc7ff43c03023100dd3a6086770ac1a28eb6771dc5e86364c1a911538b2617e63c1dca1b004255836e20e8d3e9dd4898e70913f9d3ada1220302047c435bb500673065023100dde2aeac07dd55fd27318c3c71a980a84503f8fe49c14bbcd99311b21b9f4b349acaf35ee5b4037f9602a223485bd16d02305b5461ef9862d8d658dc59a019f4652effd73f18b7aec811db5abc317f1ff1f637a7db0095f9ee39bc248e8c1b0a49220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023047cbaa7bc3cefb2b17bf1d1876f8cde0b15f423add32c584f44cfeb5ff822d71d44d070ba5cb5f8f6dcd5f7f3cca214a0230434ac95946389d99c8c482f4628f061626cd2bde9f5d1cc4f9c9813972751e6d2b67e904253e74792ec18443562be16a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302c6d145ed0677061b720de8b17a7c8b08abc1d4ea0f88b1f98f268a40ad9fce3623071f6d6f0ee52a689dc63c5a7a92a023100fd5ccadf272ddb4f2ddf04d7a9a603acfc038b6f71828dc5fa967706cb341f6cb31e56f2eea1009141dfe9ca1dab2f920302047c435bb50066306402303e534f90b807c454afa863203d51950bfb95bda9a537858000e1cbcf22ed9418b7b5d33ba629ccbdf541cfec58e37a7d023053de38cb311d285af68d456f6e0d4b72c3e2fd3c32ea57f8c46f59d585737257e39d82d251ec463501ea357d4b0a27490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023042db1e981a64d6a24393390510b4a45401e9e61cf1e89990694a02a22aff91e9f7e3df6eef55db772a07abf3e2c69a42023008f6951150d6581d522864d0f7243450c6eb8e826466d424b4e1f4209ce1d7f5456d920ea69ee655fb72b75e57cca6300302047c435bb50065306302300d14e9ebd2e8029f087b4222d53be0f8a9b0151ce4142ad46eb7aca1cbf5f919bbe6e4c213f5d4bec769fb96ea4344cc022f57d8644d22369529f99211ea95e9ff15836a3eb424af5c13f175c9cff8c17c40d4efa5e53b17c76cb129fc0c562d720302047c435bb5006830660231009dc810cea6dcc783f51d4f3fe5565a75ee2de2830cc5e5bde72169bcd47a72922654825bf3b92a6585ab56e2638cf27b0231009ebd13d67b2bdf67ed0b28f49a023c73d2b07b776b570400a39266e888e1eb423822e4a94297b006f3b79482e0c1e18a0302047c435bb500683066023100be9623834b351e1403e3695ab073e9d6bfc67ef51b88f664d5262dd5e78472bdd2fb556e545b155020e8484ebf6f135e023100ba1250adf175155cf96287246ea5223d53bd623914a6c066273f82537582557a7ccfaf75846fb9fe5d41b9056a8539990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009a035637f269edd79461ba951a82f9a796d67873256dd0281bb87c14275a2aee503a2b55a28ade8a8347d129ddcab9410231008420101fa0a4aa9d13b2060470ffb345fabf00c8df50354d262550d8dca8622daca9d1eaf2086ee82bdad1107b06101d0302047c435bb500683066023100c6b1e131f761f2b76220057323b73c32f187976444f5d11b90027ccc4b84eaa2e9b631a1dea659feb1ad3a7dc709be83023100d8b8e88a3a06fc75a91ad6547a8b20eb80404f97fa532c33dee54193ddb1d3785edb82154c5c0aafb869a6539b56a3720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cc5ca0bb625a2140abea4a870b73d1952322ef07f5b513d7cf9ee601799710e116b49adc613a909ed3854bfc280a2d9a0231008e92dd967da0885e50166e35e2643ede229dd9b7db838678aedd6a31e298eb10aaa00c5cb50695be2e936fef4e96c5010302047c435bb500683066023100afbdb320868e9ac60cd74328f4e1813e20e8942f9ee7d615f9c1aba50c9b9f8b69cbca3b066842253ad5f0fd155a64f0023100f047289d825c563a0bd3801271bb0092fe4baa9daf5f7e696f214a83a7a67291e15e003f2f350b11997e51b5bd18c9590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023069e5672e871084bd052b2bc5e0a0b12ca808610225478f698e268972ddedf4518d7882856beceb5d450fd2e30805b5e1023100bc19f9ae23bc80c6ffaf404301e86d359f7eb50160af20d0b1a1478f992da62e2fb5cee8067d5d28c519e869857017b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009dc38f09dbf0239de7722b998fb3d0db73c77e000c75d4f34bccbd22aea87d4ee8ea20a4f9bbd01c83f319a947755695023100eadb937d39e1543c1b9ead77a51879de46e2ab6d6fb9ee2c7ea6ce59e66cdd90ac3d8edd165a6cc45e95a3a353a974d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100902ed7c4b53ac36edd1052a5819cb74bf8e5096d98af0bd3ddc90c8ccfd0c6d878410b87e73d6918a5774314a4484737023057e2261bc768bcd351e6b4e923c97198bff473b0699b01505a49b8b48d2357b9b131f080b9d0e8fcd25b6e809fb0c64d0302047c435bb5006730650230416bdf64ebaf28e804c520259b27f24a3569f84f36dd1538e245a3582eee66dfd5048439ae852cef36eef7ae18e2b5f60231008fd16d31568547ca1d2369fdbfcc3e69fcf11ad3627c7e654e424baf18be20100c1521e9c72a29356d1f20be18c7e0e60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008fc40dbf7c76de6aaa2ec23b0492f5e4fb79a824535a1b352839c0418baf4c85f9062542f2240eeb5d9019820bbdc29c02304cfbb6a7be8a2f09452b2cde9ab405d3ee6822b09341480dcb5b8597001bd543ba2f3cf0ba8accb0b1477b612411d5660302047c435bb500673065023100f96171323d60ea9242529097cf0b311a286819377c640f2983c76dc46ffe48ce809145d97db4bc30c1ab18f7048b9002023026765b4912529b4ee14f483bebfc2ba75eaa3af57fba349c5dae556d547dd1ab5adfab338b4f2f5971d9d5814bc659840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023016e4b1adf56920b3b889c4450448a710be84af1fe5781080c57b1675b1765e41e543a9f0af785101c67a8a6917134af70231009ac948ad91b9ec60f22413ee5a84fb78666187950ba32e619e40bec9241c663b86e51a591d7703539eed74d63f5fe32d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d10b0b81182cfef03116866c7c80bdab411ca368b488deb689325d786af2d76c8f515c993551497b4a9a5ae061c94ec5023100ca5ee8e0d847bbf32654d7f2622341e97c435fbc8e4f810f4308d2f6ef2e31f0a6311faf3ce6669cdf2c9707f16694bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fc58bda185016191024ffa9bd0b5e9fb1273cebcbbc821a4720a185144b0b346c89b48d502b03e7a14fa3cc219790def0231008a4b6f77a42f99ef4010df226ee50b208d0e16248c41826419cdec2b53a77ebb874b29b9e47f8cde25cdba363bc6d2ec0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ddf66795ece09f9960c45b06d45e132b51e501bfb1a09fb78eef995b53c26fe1ddbab808db50ca3ce32c3b1f00913e0a023029d768af4b8859cf9b99d9ff4b5fa6b380411a3e5189a6e191cc857764ef594d264966dce8cff5774351ae2e2869df590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230656c71c93f9a14575c59431b6847caf0e2251876064e5b5c0758a69981f61ffceeb95768286254f022970fb291d37765023100fbadd6d3ce966168ce0072f5218b28c36f22fcffebfae63d74b332e1643cc49358fe959f0b4cb14b3c2ba5e4028e50660302047c435bb500683066023100d6026cce89757ee7b158e1b213e0e1c7e79b106ddf84556fcc1536e28abf017186967ef0ead4450cef8035567f7c83b802310091c65edc59b5195c540d2eac01086484843c45c36b8d9714b2c0e6c67c4810f7e83cbba98e7e78cb41864fd42f85f8000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100af89fd9e449083a720814381a5561b5c9883082ae9cfe69f0f91fee497c0d4eab955370490cbd49dd178d8dafc3b27d3023026f8d296882127dad25b9261c58f95f319ddd8953984a1ba57e80769ac4f4cfe9c447fbbc77659fb6cc8df280b6430500302047c435bb50066306402306c0e2c939d3c29ac0e37504021199e32ee3e5ddb758852c58ba0b11c57c213d4dc7f10885b4bd7f4182c38fcbc8c2f7b02307761858da333e642c94c4342f96fe2c974869088d27006a232bbbd2a553d9356d729ffb6a95a8e3ee6a7681cbca9b9030302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f18943b48523fe8a0fb49ff5b6031f37e8f143c618c552e37497b1eaa65d93798c9c7835f9a0696045ba4ca6e53cd183023100ca38d4846b03e65ef6f7a7c1546c1fdd8340f5e5bce173457d24fdc6c4b6f0ce9c8e053e72c90ddb34bd5a195b0f490f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b90875250d104f063bf728fe12b2f6619a25bfebf509229d361ee9607b9bd9f4494f511ea6db2867e565a50038b816d7023100962c0a9052fae248ed47d86f6daaed320652b247de83ae9f31d5ac9cc60a0f76c4b77b730707e0af5411d669009dcc180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fe653e2efa0c32b961d26caef27cfa5ba460d99c127f9fa4ea3ab09425ba9eb288e15e791282dffb80a509b8a660e859023037057c3bdeda7933350b975ad7b0e1ffee40dbf95ac38de4c7e9ebfa45be7bd7e6eec1fe0cf7aec419bc744735a8f8a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302c8ed1bf9b270bc0dc1695a0300bd43e7e986c10a89ecccb958620112527dc5054dae4339cfbff248804d5ea81b50d51023058b86bd3f4f537a7351a16f88d2c870f5e50acc7d02689fba9aa11004dad22610f7366dce1f97cc19ba1521f71a5832c0302047c435bb500673065023100c12b5f39d4f8973a65659a57c3ec390c252508d59650ac281ac0ff92e333af3d2d2e3f79d9ee579adc62be511c6e73fa02301d550bf44e0d7ea2556f5822054612c0596f8bc87c22de0111e9a28adfab35bfc443bf81e48050cc05db86182ad4e6750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023057b34d2ed07cc5a305379350559cb2cf3a88a6cb350e5f95e6d8af053d3077dae2b0b7fb06fb5b947ad30fd7f5b3abbf023100e834057f2b89f86f0ee6880312b20564085470ee4d31d45e022e64e8e7bc20d254415aa56750432db898054ec6405ed30302047c435bb500673065023021a53826311e3097e9ed82e588bcfbdbcd71aab569589eb8da182d0e785a00e6f8bf6fde66324a9bcdd5e122a13dcc1c023100f948c9509dcdf6da8f922c4f5223c8ec6cfb7f300ebb2c91ba547a3fe48dd0dfa419d19a5147ba4e5158a17e82deb2980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023023bfdf6ba7b2febc78209c6d9f6fd80842ae2be4f5949f471efcfbd602df057468f7bd4cd8c587f8c036e6f0237de45e0230791581327208edab2e4360d84cbda47aa3a6876911bb863d40bee08ecb2ef2e99c3c0889770cb655417ba303504cfec50302047c435bb500663064023019154baf9a175425c7cec21a179c6b555241cb24e34a7dccbf6de0d88d34d232f29ae5449aa5bae567d8224fb091d75f02305d48ae4d6e601180e129e8276d39a296f4e4bf7fd69062265be5f2e41b9bd720b85cac28be1c76e378b9231ad333ec190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009b869af4a8dc99d2c6a62000e444513a565315cee3370d98fdf3b9e345bcbb1245936c88f8cb32ade12dea09e58e0a7002310083f20957ec481feb2958763283ab420bf53824ffbe8f20de30979e26460ac0813c8b1259a98ebac17bce028599296c410302047c435bb500663064023077c7d77abb7fe7aa22b8b7b2d7bbaf59f9505d4c0aa64e3d0529cec677cba9515e85bf836f6955d33bd1f10a7e7208610230588c4516215c6cd57d41cb4e4e360294f6b58533c47912d882131757ce570c5d6ae3999de4eb8862e7ce15facad1aa2b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d0c4ce24be7fb8fb4eb3102d41b9037861af4a88f213cbbd21c04172e3530ba296d6e3e0e6bc20f6a8c352c0510603fc023100a50ffca9374ed9c3fdbec95abb391346904673f7af9d4dcef6f1838fcd8086b3d73e0c2e385e480d5e1d2865c85970bd0302047c435bb500673065023003b451ccb8265efd1d1817a9373c3d76601d98f24350bb65f244c37c5601d4927bb136555ae3c94028b286d300b99fbf023100d42a8d888f27490454c7e5c52479cf2fdd795090045df585ba6f6acd646bb80865ee54d41de0da40f827a1396e8f93280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230619113d6bc3b9c289964d9f2b5683f30a3371bbcb97cb66b866eaaa450656cc2be678e1842eb1a827da32c15ed34386e023100c3e0c9a189b8b12c9147e6ead8042adfe8d038e9ccc2ad98118d39ab41a20cb10e4fd4086b2de55aadb5f0137eeb42c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a9286254c8fc37a036447ba2d1054d961735bcd0d3abe8f4343932686b111fb016a7997d8ab604b5361ae7a527afcee9023100916d461584d9199f3816ceac7619438d48ff81ccc896eb65dcda9e3469528de2cf4ff0f437bb95776958e3af762df2290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f65167fcc34b28f60c9ce79ee3808ee9aa31165cf2277c983025903c55dde69662c3e5fc8f0dc94873ebb28e217f253a02310096d3dafc0e0837d45ff9e6ed5af0f496c8abd82e6bd6a7a201128283af633f14582fe67c400e342fc4c49972b5ba34240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230413fa0f82dc26b56f53899b2a377d6e81c22108348d6637a72b7461e758ffb131f03fa684da757fb6ca71bfcecb25a5802304f93804dffcad0efe68630f358a398da018981f77eb38ea88be8a32c08a0e04e76656290470351fa98bc56eef7a221410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307d5d16d20afde3d0492d9209185133be695c9db4b2323253c965c9fb686f2644497ee10643fecde01e1d0c4f008c4a71023100e81a6a9a285aafbc71281b7605758f0ed3eec73b4f711f65d4128b92c1b9e5417169e60c99be39e2ee9aec272ac482db0302047c435bb50067306502305efd976c57c6296459e225c9bd2c7d589b64c3287d94040ff3e1b3fbe5eedc449837f1888564ea1e25292a49d7a32a29023100a99fdb9c7f2b2b3a81a795f1f00b17388a4427a94ffe2631f4a2819bac6ed1820538bee9d7c44de7be5972f5be2ed2420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230664e3e8706b311dfa75754d360b497bd1a122e55c2f1746b192b0099d7e9a6500921e9f5a2a72d949e5ba041022ffca5023056c60ea8c3f94a00efcab68a06c4589fed2d19617e12dca92e3e5922a8e862db36a79f00435db78066e7ef81ef419bda0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310097fb49bf966120c21108be98586dad71fa4428ec4a0b42aa77b23d7783863b8b5372b657a5e8e0b04ccbefd453c71d66023100ceabf274cf06b0f9901cd2e15099ad7f64178cca6be9ba83b70381646739ce4eb6a616ca33c3eb2904e729626f52a1a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b91bfdba1754bf8dafe0255f3992fd8e62f7812fda65c399584b0291e234a1b13ccc5320bbd62cfab20595eefe51ceff023100951ed43225ca27f911f25ee3b98f90d19771d552ab039f10f77a3bac9d4fccb4e8f270c53d7d0553177d12de88ec14be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a30256b4ab425306270312b98d246e3d1211c798c2294ec54bd3014676b0f43e5267a8574a9227ba94730e8a919f74ac023100e2d6289d93cb721cdbd025df5d233b7ced8c91a742c44abf4e2875a1398c73c5f0dc1ff3e8129c9ebda6e3b3cd4570fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e19a1b16c889b2e3e8a676b0aff6844c757052609b424a75f8f7347e0ce91354abb36335d8501c187a91079dc3e9f98b02301eedf4bbb0c90f0f65c803f4c16a134d206e9213f6153b5d5b272adfae9f6d78469d5c24753132de0d3f49b30b7141000302047c435bb50068306602310093d1f0e5f1658b59ecf21b22a88a224f05896e36e7e6ea14938832db289bb47cb9cb37c673fb9bd232d1e4781653e2e3023100c6b53602d18b4c0aaae3772ce805b1a1839c4e1d8e8ceca1b9fcf448755c344d5f7de8bac4efd59b9fb761eff635eacb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300d6ed9241782e4400b3c4453c32e85f0667ef6d2264663d3e2e463ec0d6ea2a46c77da4768993063be8d575af8d1b81a02310092766e37bfe72ecd268ca97ea8c568f2d4b38028ccee149caba4c936e0c09c9167227f4d80e09245932f3c12b72e6dd00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230353a75440ef935c9e05a65724158047e047425697c58c0a2183fc6524053f6e5d61fd1612c3a5dcb91b2413f034e137202303bc068c3bfc8bc8588e8e810a8b38e7dec8bfcc3def4c9ec1f615eed3b2f75cdaee3fd922296f9bc1ba644769a38b3340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304d64ce02e5decb7093f44725a48baa92e2bf5849e40fbbd1e01de7a239937f32b0008ed66a4614850c4d95d493b4eac00231008cecfa549fd20a11017d9a6610e3c39ad61edac546af52f0cdc732a58c39e948ffb2295ff7f7dfd7c4eebf31378fd5d20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230270869f22075edd9ff5b2eb9edfa66ea05f5cd07658c00ee95aa7073ab15542fbcf3b948c3e914dca735e42278596d6702303d02ffd6c2a5ce84e7ead29a367990f0e2efe37ca99056cbb362d6f4a17c3441e5e94783229c50463f6657ab10252bf20302047c435bb50068306602310082b1db6808730799bc5515e6f093cea54ede9f3a83f29e2742e069c9af14900071a09c43009e4433943841b6515322fb023100d2c7c165e8fd780b9172f68e6d5a02992673da628d2dbb41861d66155b74013419f1ab240ff65b79f92e4b0bdf8e2bad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fedff86ab14574cd78b180dbc674d3a74dd9221f6b7c57ddfdee3bade5096748ecf52173da8f72b7b0e2da57aed716860231009772567761e31bed42064b8a6bbb4f801cb03a8f076c839541ccd14131099130dc8b1e671e97aec782aec5655964ba190302047c435bb50066306402300131303717ebe787b4ec516cfd2d2a6ac314c175c3e1a5fa70b6250b17b23113780ef232e861e0e7a125837811253f050230781b92bc773adb315735546002a50dec90ee8de492748ac8f731d7ce2dce121e22dfba0cc4ce5d6209dd2d3c065e30690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301973d96e61ed4ba7abde341daed9d06b6f62c2b428f7da98ac81d32ec516c5d0f83f7672ec81990058ceaf626771547f0230275d675ec6b2f4b7c32a0de348a1fd3fccdc61f5679d2c455bc8856e64bbd2bd44d809afc06980d814416ee15ed55f270302047c435bb50067306502302dc996634104b87c96f5dd047b0c182323bb51ce1b6d9552d5c080b5aaf66eb1355223074256c63ef6036628043ecd70023100e36be1f3b23dfb4f9472bef8dce2add9a353e2e1174df23c3b7d12bc17e715d4ae9f18bcecdee5bb7943e6dd6fd6791f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306feee3611677a631e885b0c2034d5f86523ad71c7c5439f3fd456621c3e55e8f1a9522c554f18db528ffbba868ca5c7d02301cf78b825f5c3e06f6fa6ce8b2bdddbcac6aa20d467be67b34b94e03583c4b1024df12d1ffd0255126cc1659a31ad6490302047c435bb500673065023100fd7df3e4afad9b095417081ecbd67527b811b561ddbb4e49869696ce6b0b73fc57f8d41ac3d74c3c82b0d757308c326a02306886142d9f99072064fd444a711ad64392643b3b5be02ce7f644cab7da352ac1db9f39301d1e49932154da0f8b4c06a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100990e8a26f94d890216a92468c96590b4d79ba518e626c809eca4a018b83037f83fba602ff43a70fd528a17521264fa3302303e0769ca4c4024bf04d29d8cf4ecd0a1ece5664690d3220be64211439fdf979580cd4fac89b0dce1b86aa7681e38179a0302047c435bb5006730650230565bce2218695cdc95bef309e23b8c56bb6ad01caea0a76a070f22bae18e8be97deb6f8d00d7ec0d4d8de516310b72e9023100d6ca4c1e1ff089b84e84af4dba65e656e3987d68e5ba583a0111aecaf0302eae06a49b97fa8e3c1982bf6f98082916d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b42a4eaa83cd62a24eadfade271b9274afcc5c76a0c9eaddcb308e721656117f9b58ed1855fa60039197d47a626e2c0802303adb2a3166f899072bfc90d9351503c746681c44035e958266204247cb8caa69b6bbacaf07339ff27d05b4988627800c0302047c435bb5006730650231009451dbd7926714690a3d323e07166a85aea31b7aab69ad1d47baec6286c42c64892c07c5c65adca057e5131d2e2bddce02304257a999b1f67614d9a8ec430c298d8873890bd00ab48c5687727bdbd437a4fe0b2fe31ed131b2ca8d3ace86c54d98660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cba481617d3988bd7c6a89415c8decaed28eda6975c7ab4f594b92caafec7edbd3b3de1096b53d7be850e2eae146ff13023008af6c0f1e56d1ac3a20d4d8ed3b5627eb5f471c4bcbe75a69c512987399d9d30a093b1fbdac0649e06d1064cd1627e80302047c435bb500673065023100f5c4491d9e649e3b3a1f7c944098619f65b9408bee474f277f0bbc4c6bc5a74c8e068161786c8b26fca88bb630b68c85023003d65250d1d98788d703bb6f5592b3b3d3205aa2a8a203df4c97353a10e47d352aeb60ea84b5e3e9b344f1edf08206940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cedaf63c342083978955e1bb8cdeb9054bf0605f8f7faad21542a63d3cdd503e988ce31d43e9c82ea0b40bdda85a46ef023100d9d95c6f5150ae917f6d9524bc83a1e3729ac339bc4e2de262568299fd2992c3e8f9ee2c482fad0aa244d563f6cf32360302047c435bb50067306502301144c341aed1a2b126e5766b7629cc18991596fa7630b74b0981d64d59a5a7ed0573738b678440cfd7b4055574f83a9402310093c84905664277dffe59a6790f2a2c353c38c6966109cf5f3c1022efd03114716f6f57bb596f1c99b57c972bf5ed33dd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e7da49f32cfdaf5ca1131a86290be2366151b03d555053287f892ecf0ec2fe462835976122a980baac93f5163e791e050230225dd07b74e66385dc4f98a33e9224005154b97a3991d12eb4cf2c60fa444c74adc4ff36c708aec1b6d18dc880c407a30302047c435bb500683066023100b629e25ec5b5ac26f77e74b1d0f2b4cfaf23c6e5f42958f1b00fe2a48e48d28fcee8d5654b5e25fd2f2af5a8b13bcba2023100b2ea0ddfb81c38f19e5891211c29f4f9d340b9d031b91b7835e742463ec05f50ca0fc42a215842f1b895d16e696519010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023003da182c1ab1a0619d94d38fb08fe3a7d1aca294b6bdb245d25f5f5b2d7e1493c9635b87782e60f59a873b20bf3aa2bc0230687665f11b722a3aae611b8411cf36932b0accdb0ac233f658c9f35fe8e06bf50e84842d6369f07ef079289244d14f690302047c435bb5006830660231009aed6c78da04d210107ab7191d9bb68a57efaf1892209ee199963081aef81853386cc91d8fbe7734cffcc99305a8ef99023100f9a0fa9a45821c3354ae1d1846c0591efed1b5b7c7d646290eb4d6072488a02063c5259fccd3a23f3636cc435d79f2f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310093cd294693e7e57ba27e72739395d040587b593db77fbf5c36f6622c01af9cdafdf061f18e96ffd641efe7958239cbc302304b498f1d36f1cbd217a6683dbbe205dad66853a9cf1146fd8f29fec4adc4725b530b71cb4e2215680fd464fa1d81bf270302047c435bb500673065023100d0f1214726551eb4d3a197bfe6bc2f25275dde47e84e85e6fea4ebbe4f70a793a9e007df2607914d187d2e9075c15c6702300ad2cda7fb26c9b27683a6d5cffd94e2410ceab0c5cfa779221c80b3eb2151e786758b9f7735d8f04543e6fe16839ad60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023050fa7adfa0144b747c88a75b728cee21518301bbc243c03f4d779125961278979daef3ff2be0a0888ff3c769c559d049023100c0f33e49ccd3639fde2bf566ae93d996d194923f24210a63825b941c3ebd42410d30fca48ded1e1d999d7468088a55d80302047c435bb500673065023100cebdbb804522611a76959b27e0c7c6ec42297ab8c044b607c653b3bd2496f083c4522893b15cb82efe24f08e5d555ebf023043fe54233e5378ff0cdd515e2d2939cfba2e82a4a95ae9c3f5acfb672af7ea0eccec10d4134a78fc6d01e349bc435eb10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cbbd684618dec6adccfb41de8aeb0d606c7934a619ab05b4f04e9c1c0fcfac0228e986724e20b9143d5255261cf81e5e023100fd2303c9a098e418546991c1995f340926ffd2a24e6e4cf3ef3eb5ae2911c77d0eaffbf9fd5323820360fc9aa59f5dc60302047c435bb500673065023042a6214133cc0d8fc852c98fb6cbcd5b67f00d8ce6caed9730ee62c2ab508867529429a99d26b9770e338cab18fe5a30023100931d9328b77a118df7b5a803a87664db2b1da1a6d675b14cc232c981c014062bc69f318ef8d3a8cdf3cdcc486daf24b00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301db7c09490561e784d0de6b326fe9863a6019a518d28930a9082fc4e0d16e53c3b3e835f1e970bc7e0fec3ace1f4e60d023100cc6d6565f55f306a8bb7f1eb458121ca9b76632a30fb65ae2b8346727913e9c9aaa7498a2e64df74d12cd43a507f5a370302047c435bb50066306402307266ed0b69e5b514f5958b8cf5935abf114286ae255bc65c6f16ad2bf701c1dfedb8867d42d9eac5aec48546710cdbf1023042b8a70701f7bb1105f44c6d05d894e5104c594ceab7bf4beb0c6c657a3d56b3150792174666abdd9a11f2bedf4f881e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100da89716a094fdacc3b9fa83033bb54b42ac46092a27204d38811f0c73cada197ab1169b486abd9b1e5881d9a2746ce63023100de95d668b32da78ce46e6ea0e9a740c8202ee1a3bc2290332cd098a5cb01dc949a57d06d9cb2897b4fe27d2c3e7711150302047c435bb50066306402301b1d843a6a4becba8bb6b698cadc9db2f788fa283812228f72d6ccb578f4c724a4ad05e02cff4c4175b418992eb513f2023004120781ced22890edf1c9d1d50867f8956ff70f6e15e2fe8d6b7f2a3d446bb722a9f6909d43aaa042d864fb03ade8dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304141c773aaafa37852b580e3b1c720940ec11f737c81e7f2ef5dcaa374f7cc62b5d14d547394c39d2fd6a96994f35df6023048e1cb45efbcd4879a97d81a1673a94fe45f12e8bbd7ce97895bf525eafd9312268b23a081e5b6bebf572f96ad855eab0302047c435bb5006730650230509695811f8676e4cdaf80131c0ff02f4cb7a313ae7cbbd5a9d5bab29dd98f0c70f5e41d05486c740377e9d7d80c670302310091814d06df49573e42d290e36d6881cb57e1f7edafa7be82137bc4047833674da4041df3bea41d2b35c55a11a9a6d0cd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b06215875637af673134d69ee76a41046d7c8d606c43e4e7f4d596f45a15ee0ab851f2b9bb8b4a33ec3b6fdca4a213eb023100e82380ee0fd633c73258382b2cbeb763a59a24d71963cb3f1e19ab9988129de23a61fec5b8b04ce705254cf9955285f30302047c435bb500673065023100c65334e2418cc561077920f16c17b3e6b0add28818cc9690db348407c6e81bd4370e155c481adad12f272b6b1184bd61023058de405adf4ed0d873c9f8e23f52b98b5a6dc28da47dca502a43c3499b3b16adf0ededbbb813209f1ba116369b69d6a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cba368e682008d4b52ce29ff3617159f11909e933eefcc586d92584b32a1e68ba5157bff80560a8ad36afe57a42cf4a102303d866c83b19f06024cd62617bb26f7879f209f37eaa862b76a9fe40ffe1293cc8b8a8ba85e152fc615ad9b6c05be4ee30302047c435bb500683066023100c00feca5b2f949d75656b29b13fd9672efc5a52138f74e6fe40f0a4d6afbfde2f58dfd108d269bb081dda4ec32584e93023100bc08f2c04d35e6bf2a8271141cfc462d18b151508fd5c133df637c5db2c237356aa797280c77fe52cf56683eaf3b19be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301b9813b48ff7cc68f2b52d59e7c6add5c8aabf2cf91994df5350543675e313acab42e1e46a31b34c450525f6a62beef7023049d48e29bbb1d84bc110ba28c9087d3b8f7e6324777892008e9589284424a7e762d46e5f06f0fd2d3102522cee8d18d10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b8306073cbb06533414db2e95d841b7db6d50e854241893e8f9412c89885076dc3c05f4c75f86216be84082641224371023039fa84d7b82a437281162d176fb543f6a9ad18cad48a748a22c0b30a952a9150bc017c8ee399742cf9fe65e8dad0cc3a0302047c435bb500673065023100dde686b77a98202c6cbdc7870a5756feb5f057ebc9445b67d4d2843efa62e9a5a119130766a8ba379a014aae5dbddcbb02302d0ff8cebaeb032b3dc54e19e72e175531b9b1b2f112be163cfa4ccdcbb3e9b243b9b94d16ad12b46783845af8ae6c450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303da5130a7f8f493fba6693a3565495c6ec6afe13be841dc565e23b4fffff1e2ad36a6ac81655ef6a401bc038a6333bd402305353e02e8bb041d0edc96bdd6219899998ffb00209e8817485f63f69ac05cd1879052d6b431cfe47619ea080c05343710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306f800fd989e0c26cf16b33d347c5476a37bd18f2e5698ac05d7b44db624e63d37f9970cd1d02b702b8d7c1639f5b5cf4023100f9ff6fbb4df62e6f171bd282b29d5b957424af8e7d6eba3c578095767334c2333c9d355d29f90dd265bdbe932f8aec070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302593dc0b6099ba6d4bbe8b68c936a73535eb90e5e5d1f86d70cfb2551fe07107bb39c8d5cd2ddbf2816568eee2944145023100893717fe8932137a8b92bbd30502561cd56a8e8e52efd8875b51e894ccb359dfd7998c72cd25d8deb7e23770268082a80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f645a770bee0e31d4b610708ec981147a01f5cc62a6e3e7e96b1fad40b72fb91a6bc7966eab863a217a2e19a5c617bd90230373615dda0f733622ee594bc859e0e93a57103182262239ca8ac770c3d3c8b990e1b13de0d6a560690a4373232f2e1d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ef901d7edb118dbb12f981d27649862ffc44b90e4ac92635385bd21df5ac46b88393aec97d6405ddffa7026a49b5b0f9023016f0c085448ffce3c77794cba764a16fea7a7e0fd03204300eaaae8435221d6f282a4a14a111576d7d9f37a3d71891690302047c435bb500673065023100c78d6b3215675297f9a0c4b2ce591f02342bed21ada33cefdc79186a52d9cf456351c3b88ffdb8689d90d5d392afab8e02307d824693b34da10188e7c3abb712ba935b2ecd5051c1ef8544ea0f16a814dc8eabde69c7bddd47d24685944b11dd7e950302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b13ed820ca2473d5d0f21ca4baf0e67a1d25d4a62613742a8ed102b0de56917a5781027d833c5f9bf9896974b85844b202303d6a59c6dd0ec25e9a4cb05dc13cd14ae8a9b00e7ffb39124f29474f9ace8ab6fe37356967c67b2553c6c93340a0c90c0302047c435bb500673065023100e1bf6d270657040157f89d492823497e619c68783d64e0ec76bf41cee283b7b1bc7dfd075e39da901430a5cca01e78bd02305054e8b0b72549eed5e096753be54b4af27f57ec5dc79845a7441b66e08d807208b33baa5761f43f33d381cc6a50f3fa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100949361240a15ec0c52fed20c729dd317a6af879791a69afaa9830abb1f5dab2632809e5b5889f3261156a469a0f322d202310089610cff33e16195ab9e2b2d7258a66bfe0789380e7fff40fc8b30a9b540e774bb6b738b1a1e90bc3cd7207ce38e519e0302047c435bb50066306402304bbd6d55991b40e8bc0574fdbe48147e9220dae47d50c4e2b04e72a9bf58c9b9d1d4810be07fe7d127cce8d49a73b2400230793eb45e0a03ab93e337035ac324201cab2b3bd99be4c29e098c2d07c338f97d71a43c387286e8dffa65cba7a33216730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230170806f1a0dbad61dee08dee1761a4c9e2a5c5eb1de801e894f5a39492d38caa7fd293d55319f0b7432f68c23b3a967f0231009deb348a8f0e86a7e2104aed9be90dcebc303ea1d8b1673f29838668859a8c2e3077e712ac208863bc3179eaec614ccc0302047c435bb500673065023003ce92c236b82684bac7a5570ec6410cf84ad46d57d62ace79e097d618308378f41ce86280b94f6e7dab50ec9d24aacd023100ce4a6c8b6390add0223cecc0a719d9968e87a45beffbc1755ed0a5ad38a9a10692aedb4dc499ce3737d33ddf5b9ad7bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230020ba18426e3cd33499301b9ccb79e39100e7a473c0bfeb2399c697c30cf469888b893b485439d7f3fbe8b4ea9b442fe023100b15de43d64873d2d9aa205592703cf872246eba1b4520166ec56f3f9e1da9a33be6b6de759fd0e17e7604da8c76eda870302047c435bb50066306402301c1b63b3148bedcabcb72c6a33156bf81f619f83b082d0b9cfeb04f17450e932b98b9b6f06ae6b6ab068404a3f62e858023048c6cb1aab6ac998e062d87e8103c31f71027f4455abd29c8edf48ed0e0147b47d8d7b9ebaebea98cb927f57ca5bb5640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e07b9beea277b1065fb0d5d318ee3953884e977fed178226441267a41029fdd3a0b6fae3feeea0ec1ad6539d486a31a60230238b8c7e5d09c219c3037b3d21be3a2f150444850bc63ba3879695aad79c9f896736509cda2f7e4460d49086dd4f6df60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fc708143137865676d65807aa8e94f4f3c7cc4a8021057b4ecb10e8d8cbc255f63907c816653788d0e61e811e8f6dd25023100c766e31bcc26835a22ec0a1eb0f094fbb9d2ca34e925252e435b9d03c2228ccc89fb259904476f6e165026b772b6b4510302047c435bb500683066023100bd4fd29994a3d11f4c5668534a48fa8cb4249bab23075b9626aee79f095e29399f7a1878238e00594f9ee98d304edf23023100c7890fb480550a0b8659689aa74b14786bfc2ba201b2737f05d23709ab0530e0b52fe42ba3d80fa5498fee8bdc1519300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f0e95850c21fa6566e88f42cc61c2cc38bd012488021f08dda37d03a809eb9a533e4328d649135a8ed0b168661223ce602307d3b1b93e3a5362b1e28a906b15d18e27b689d9e723bc1ca45091c9a2797e41f6f46c677b3983ad4f2fc0e5e717c79a50302047c435bb5006730650230679590fac1bda506b19704d3ba743326b606e6e385f141b0378642233aa482fd15c5390f979c4e62065f44263b33b5fd023100c030c765b35bfba3aa2a0cb082ba534898cd1ee6fa8a82908121dbff0e302b6f8a7e8a6b02a9a870a675ff561db866220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023011157aa389708d86c1d984e3190c32280f50848e35112e3288817f021c68b6742b546c78306f66b70a707c3f058ca316023100d796ec11b2e2b4245d7d1bf73be15d103abfcb1dc965fb1c4e7e9ad5e8bbae676b6a554bf63234f72d48d29aebce362b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305723bbc579c8f990ef19c449ca233812be4de33e3455442dd2cfef5f97615791ada944983ff17a8c6d89d1ae9177de7d02306c9da4126e43191e1d9efc7e2b608950b3b3987aa39b8fae8bdd4db7f3a8fdb0aa6a4969b628b5d89ce393d12c34cd130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305c27d59ebd1d2bcac6928fd3c97359d46e98841354a82c2ff07be45e9525d46cf3a17bb78170ada94750f6c39b39650602301a8222bba4f67e7dfa33dafc573452f3462ecdc889d98ebb9442e65f5484a25a02d9af2bf4510c1eecdadbdfb29f78020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ce222b26cf9cb71effb58206b9c2e91ca15301e586fec9c150c44989c9c6dc2bdaeb2977fee2122aa5392b08ab7ae7d202307ecf58836e3e87df88ddac612f0290392f7f8b15fe39b017050bf56507d846846887551e18beaa929f15f4337a93265e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023039040beadcb0b0d13ce760880478544f1b8a5f0a0d21c50dc14969a7c732b0a8184edd70aee59e2f1e3bf0e755a81e7e023003dfc8f69209c765bdf6e1425d79a4e5e4887d7c0b9067b1a5b1dcab729613326698b3df893d6d2e47b2d6d8e40afc760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023035f894223abe59fbef42b2ae80a208161a63c450604c4f63446ed064a64413f347820c3d367d0e8045e6bf169c8974cc0230279d710fbbcb1a7e5bc93c8c8cd38b14269a567406b969e8c984315608d6ec0cff4fc6614409b1565b3610ae3ca752e90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e41d467bce7f907e87d7877f35b9727af151c174aeeadd5aa534ba39811f6c4222dac11e4ff760c6668f0c8d7e4c8c0f02305c72aa23555279ab368d4de2f7a714e3716336c2c5d6f23edbf2fcc959d90973d5e96519048f07aa8de00152a8f0ba3f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b6f25b72d07150a1730dac902783cb535e5fc6d19d57813c081c622b2a6a82b9dab9d88a105ee986512ac22876796a67023043cc2733a57cfa0697026ab25c4b7b745df3d87b3ec9a2fbfc0c265177fcfa3fc7f561a7f5f108633db693f78aa1f1b60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f0e1713e981183c9c316b40681b0c6b311d44dea6460b81fc3f65cd4422d8c190c76ecdaf0e5b662be9ddc74412f8d31023043c6c89919f89c78b420ba822f0dd5ee99919f3487a7391f09fe9de820a71ab5d682e9fdc6a6c4ff41b8339388727bbe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230583a84c8fba8a7ba695ac922a36083eabc8b2573a7b270b36b7b5616dcb4a4c33957fe6a5cf029e84d72d36af9ae759a0230166aaf66f6a87d5337504d8f67f58784759be79751ed75b26f994dcca11276218b64fa92ddb2927151fa50e01c4f3f9c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302792cf11ea481a41759e5be835c128af75fa8042cc289d9a4374d2b2dc8e6f4695ba8c8163693094e72a8f5955fa1d65023057de66c61f7a8407d93563a83626ce37c206ff4b2d9421f7e1e750d45cce8eae650065fdd0366ee97a8adb31a0ba24660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f9958451e19129cd93856e67423565084f8434e7735b5b1cbf7c5a392360b181d2ac334baed76e84bf33f949b41258de0231009b3a1433bbdeeddd82bcb940c6863a7705f5785a09deba4d66675fa2d319bf1495255fa2c2c9f5f7e7a43ff63494de680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023053aaa7a1c29137ba6d85049d37988256d8a1863fc0017a7023b00d7191189c40d287d66448ab254af55601e662a055dd023100a6dd075bf43a8f711c9530e9417244e9ffc39092d8e6ed6de4025dd90b46e6eec89917dc02c299b88443986af4fd66550302047c435bb50067306502304d8c3bf04cf32f0d7a52d14d7403d862830e314ec2bd8362b53610ec036c7b223c3791a55a86404f911942b0551c2049023100938ef887b877adf8531dd56e68c9c4fb6fe5d3c979d052d3af006d6e6741f1be0cc15ae553e73f3841e4bb1175862a8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ddbe91bd69dac11497d352eb47883cc544974d3aa5ef838d9f687c0351903c9d9f2c69e192e4c01a8a271e6db5156b09023100cfd8e30fe047ffe5f1517f4e74322da9b0326976cadcb3ee54bb1c589d200b2d27994fe91f29bf915b7ca338157d37520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302fabcfad0eaeddabc21a47beb06ad096d37c6f5e450963da89536dae8d845e0ee96ee8ec6f3abeea40c4e30b8993d17e02303716e2a8c79a63edb985142effcd49398f9fe02df1bce1ea42abc2e67a0db21fe0081237bacd0af3459d4e426aff49c40302047c435bb50066306402306ede90f7679b2016f19d7164cdd0449d341ce31fe4d19362c445785c39dd7e211d919ead235c2c287d944a526bde233d02300af5356b0ed8bb9ab9d2680a6df95c30f1414b0c2e5de543002e8117c9443e624eddf93063ebb6c8dbba2a07b4690af70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304f41469e264a30ede2fdf6e0671774d033c9d97a1ab54575445f6bc591a44e10d13462541e1065bf58d0babe49aed73c023100ffb644cd4916dd22018ea21e108e906d4e8214c0f04348ffb50af1e0aed52d12c4796ff9f4792184e745825605a1b9e90302047c435bb500673065023100ef22e7137566772354fdeaf2b8d050d0dc7ab42ca1ed16b3095c2a9803112d6601e2724afc299859756aafbf1a667c7102305e7bcc26bcd746b6c6caec5519b6f986ce3b77713d5c863cf8e972ee4fc8775b50cfdc91bb622137f50c2be3504353ed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230785eb3931bb3e2e3bb2255f8ef416ed523b5c95adcb81a7be268cc99a7d57c82424dbe3df6128d7cf8f65cad7e99c7d0023037f4c151e7e3cda9304f216388a2631317b04e0026fd4bd032b7a55499db389e69fb115bd3791963d2bfe6caf213436e0302047c435bb500683066023100c8d64794cfe6680d27c3d89dc31234963cefd7066a9f99a7ad07448d72999aca343f743a5fe495f8e400a7a3fdb8a537023100bbc04819ccf3029f77e786df12c622b87caeb0f662441a0f5ba540923c6598a33858f34819159ccb55f6da8727a8c9420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310080af38c48942e45d78d96de7cbbe064dc6961d685b538f861a4c11ae611c0179328e263afaec62f0908ca810a3d56ae1023100cbc3d10a49e37d101308e292d5d3971d8340372c9afadb5674c62dbcb72e4f2c98d296a8f84e2d12f3fc2ea0a539831d0302047c435bb500663064023018d0866b739a59cbc381c9060bb2676e1d2370a4145a6457604b39849b365cfb9b8a085ea92c3666d90c2db9147c4cec02304f95c09ba90c645f2a88d189804439ccff0dfabb59c8300a286f37816bfbc881d41cae840c12ec29bdf637c8a435c6f80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307521ca135ebfa7e8ce4e7bca18e2aedb790bd1c0559bd90e0b24c1da4f762cda26c4a767bf037c4fa20f795d3c16da3a023100a3301f30ef24e24a439dcd96ef98b3fd9c381360a47f62269827936c6cc42445bc3eeab84e806519785cb2c2ccd5dcf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307521ca135ebfa7e8ce4e7bca18e2aedb790bd1c0559bd90e0b24c1da4f762cda26c4a767bf037c4fa20f795d3c16da3a023100a3301f30ef24e24a439dcd96ef98b3fd9c381360a47f62269827936c6cc42445bc3eeab84e806519785cb2c2ccd5dcf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307521ca135ebfa7e8ce4e7bca18e2aedb790bd1c0559bd90e0b24c1da4f762cda26c4a767bf037c4fa20f795d3c16da3a023100a3301f30ef24e24a439dcd96ef98b3fd9c381360a47f62269827936c6cc42445bc3eeab84e806519785cb2c2ccd5dcf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023051824e9aecf1aa024bf74417ab1f684b82031e6e07c7485c0ae4bd87736a4ad6b9423b83fd8c89d2bf6df38f5e799fc102304524c0036ec5f6246ba07922fc490bbfd371539238edb692308056dcdfe4f3696ee1380f1acf1339fdcf71091140451a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307521ca135ebfa7e8ce4e7bca18e2aedb790bd1c0559bd90e0b24c1da4f762cda26c4a767bf037c4fa20f795d3c16da3a023100a3301f30ef24e24a439dcd96ef98b3fd9c381360a47f62269827936c6cc42445bc3eeab84e806519785cb2c2ccd5dcf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023011ec6428f20706279e8edbae2bf4988b4f58d5afbb4ed862efc27fc4886e40bc15c03d61fc1799193867bf9ab9095db6023013f2f1677fa697b093a8b2ddf91f10d386d50fc573868f481b71379b0c0cbff63e0bf4cd60b9d42fde0197f97fa2ff6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307521ca135ebfa7e8ce4e7bca18e2aedb790bd1c0559bd90e0b24c1da4f762cda26c4a767bf037c4fa20f795d3c16da3a023100a3301f30ef24e24a439dcd96ef98b3fd9c381360a47f62269827936c6cc42445bc3eeab84e806519785cb2c2ccd5dcf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307521ca135ebfa7e8ce4e7bca18e2aedb790bd1c0559bd90e0b24c1da4f762cda26c4a767bf037c4fa20f795d3c16da3a023100a3301f30ef24e24a439dcd96ef98b3fd9c381360a47f62269827936c6cc42445bc3eeab84e806519785cb2c2ccd5dcf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307521ca135ebfa7e8ce4e7bca18e2aedb790bd1c0559bd90e0b24c1da4f762cda26c4a767bf037c4fa20f795d3c16da3a023100a3301f30ef24e24a439dcd96ef98b3fd9c381360a47f62269827936c6cc42445bc3eeab84e806519785cb2c2ccd5dcf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023011ec6428f20706279e8edbae2bf4988b4f58d5afbb4ed862efc27fc4886e40bc15c03d61fc1799193867bf9ab9095db6023013f2f1677fa697b093a8b2ddf91f10d386d50fc573868f481b71379b0c0cbff63e0bf4cd60b9d42fde0197f97fa2ff6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a94bcd97b296b98cde5045eac92a170a727997221c0e223cc95379c6a06e2e8d1a1437d7d60885cf1b7ba2c6fa031aee0230296a6799e490aa9f46b91e7af49f38a94578b126da975ca7ec8a7e9942de85340ca142b51ceded328e78cb7f04145cc60302047c435bb500683066023100aa489c1e383ea0567ace376d544b67be2b87d8f76cccd37e604d03a22b5bdcc8f67b0d00e0667883b93c88ef1dc498d50231009f13bb11f38f3ab24a6170633c3931bd28effb6254053fb3983f61ec266f53e257c7a06d9670180b69c87c2b2492c04e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100def3303bf49b5c70a7f2ff7e194b6f463e74e4926776d41b42e8651ccb994c020d492d074f8b81ce73ce1894a27cdf5102304b69432df1884d27778fcc0839187405bce0b43d5d3991480261d8c010e6d56d10fbe6e544301c4cac96068043ee75530302047c435bb50067306502303b03c1d06b84b317b591643e058c1c0ea22b820150c0bfbd35e20a21bec9f0b1b75f624a8a3468708c1de1ee68b5ae98023100b0d4092b7805c2851f074a7923907d64de84e69ebdba69e7e8f6ea3d615eaa90381a9597ff6d153cc5826181f00caea80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009a2409109c4dc113a462cb9691f4b0fdbb75ae9421dcd8562aba6a850f01ba200c40dc7ce8d2b10681ab9bcbdfe81735023066c2d7d4688255f3319a320e28033f946ab71660733c1a589418cd31af76389afa8e74a533192cf0cc134a70535611740302047c435bb5006730650230176457674b05aa6827c2df01cf73caba3403ec486aa5d569f554ba4d4f0e324fb997ed863fe7fbe4085be91978af5e49023100bbd8484eb0d30ad85adef1be115a3765139223d67d9adb7e5a633f4bcf6d14e01b5ba014f0828b3d8c5dab038af7ca2c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009e4ba38911a5c4a4bad442d246f5962af2d1eab668bdeb783c614dbfb2b1e57353e27fdf3f0f5c8ae875dcc26407c4eb023067a2bc78fd48988e41add1ce8e7466da76c35539e095c7337f2bd9aa9ea50b08d9bb05cdbd761fcfac57fa8d88a907c70302047c435bb500663064023012076e84c9fdae46ef018afa865831361faec17fbc4130171428bb2b9ccf630fa4d0b1131c36b9d999507e2ed07f244602301c198715f4afaaead719dd7cf63653c9c6fbca45331d4af2f666dae419b8f33de5406c5640eefbc39702706feebdaae70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230394de95218c86b0715f0544330ab4e76205b62d90e5a4f18b8edb2a7da3baa6c7cc5e2b0faa50edff3d518263432651b023100cb72a6654d7a03240d13435ee6a10e24afd79961aa7a3c07bf7839c1b8208af961b9d8cf973f0e298266886df28e74ac0302047c435bb5006730650230044c984523e0bdcb4d05e6791631090f6a7b17a42c884f6c88bf8b68db3dc89eebf7ac6bcd27646dc340fa3ccac79b560231008ee28a6e87fc54ef7d8ee758f39a95eee53f6a71a95348e676a653ee08ce1a3dd0e760fa760bdbc512fdf936d1ea9bb60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e8daee7767342aa4b8ecafffe6006849f4a5267405ea6f8854cdf379bc8d834a2d678ea93bb5c0241ae7d863414022da023100a894ea9868301102ad34fa1585dd4d3b096c9a165326ae62e1e883af1c86a04020706d65f53104e2d0bb8d92790063d50302047c435bb50067306502307610e4f00baba80e571adca8e25ed1945ece84337c9e955f57d4da32b2ee9740da04cdd0d401b70214d0e81783c493b0023100ea52111038ec7c29c92b8e2f88c064f0dae10a3d77b2c84f6ff868f236287464f5ec8cfde6e3bb9e4393ec1f33c346610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d3cbf18c4a660b01d1d67c753fcc0e2ae9f3c24da9c831e79d1edf542638edaa8508da03747191c7fc511c9bbd1f9129023072aad9ee2f7babb08ae0df7ca6e168462da6c2b41b72b7f37cfeb9241f0ac5a3481e43d3a7bbf4846c75365bd54d4e8f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303ed3f2d411c3d22ed6f5df168ed4fdf3aafbbcd8ff339830e20790b7d08635a32b2f3a2ce8aeca316f50a4ee9836ddd0023100b98e65c4d630b325e6a0bc2080a4c0b5f33233f30ef1515282ea0f8754221d4d0799c563023e413fdda43cb33f8330300302047c435bb500673065023100fc3a911bb7979fd12a6df4af7cf5af09ece72e0805a4c9b5dd78e974077d452958df75999617cb0021134a944a78398d023070495a21c97fc76c4f5b9f95cee2006721a3acb757cbe19991b92b4724cbe45de45c3ec88985fe333890260d8bdd66fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023044235939c90c06aa1cb61d1ac1eb917f766a65d2b19b52a8410b4ee746ff18b7db807b998185e4e6a7868e35f26c3e6f023100b4941cf098fb975cd288166669e9f3a8212966517eb52e2a59e279d04f660cb508960c87dc145eb4c2aa372549c40d700302047c435bb50067306502302f46f36362e49032518681d2f994de6c05a338b1ef59b518d59f3c7d5188a25120ac5b118646a9f34e2dc61804d845af023100d0df10930ccee0f964f9c8fd0420c44048f379204d6cda7261af3e8ce48dcedd636e0e1e4355beb27a9ab5920f2656b50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023074ecfdd86656be8d450383d47f14978311195ffad7f6f7f6a528d476658544b9698a514fa46b134a4c27db29f935383202307808c290efce9043e059ca1cddb32bc7aca4d803d68c8953c681a11d57a818f980818b64927245b9bde8f79dd10cdaf80302047c435bb50066306402300d138346ede15a859e9eb2a495798e44c44591f9a2e706699f44662cc5308cbfeeca42ef641dfc887733a48da326b05102301bc84cfcb5ddb074c76e976e076bf123f330389fe32a66cba4715c52150a03efbb151d5934754965a45acce6ebdc30640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008f4e08aacd47369fb74987e53f9e966268675796c2cbbb5832c9dedc8a086a810e6bf51ba76a3921d6e4aeb2d4e474c0023100d1bedf56a79d140094ca79200e19d3d450199fa2e4b79c5b225544db9e420b8bc7d0add74ad5f17fb27054f0b0b61a660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301a1db869632cf3c45d7863a6f34942b6310fa5a9ecffec51174c83dceabad7fde52bc796e471f3ff0765daf94bba113a023061a47205223a3fb1e4984d7429211a2426df1dfb7dd090fe82bef4c5f663fe98c8aa7d5e6965a8869469274e525df8180302047c435bb50068306602310086df3a1162a22740c9027eeae7a0ff7dd85c235eb71865fc64c7eb45fb2442735d7252ef52f43f74602a60bb66e399d2023100901683a1104c8c75439919e6434066cf960b34a26baead02848b7ac04e1ec32701bc6d7e5ea0954b638bd9a47d4528af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300ff6655ee93df29bc9b430d42a2843f31bebfb35b54a5ae4048dc7eb60da598283b836bc2f0719dc1ecd634e4216bc9c023100a8944f0136be71b34207ae3ad3bc87bc698335179cb0b42a602a04d353c089c9c56334de2ff7b206171c1c94664bda690302047c435bb500663064023001c98f7ea75952cf04e0bd8f0b0cbce8a78456262666134fb0e22790f597bf0414207d81866aeb6f8f740d714aaf9c3d023050aa5e20c474ae40a93d8ffa091bea6055a688bf4d2bf8cd50e59c55c2d69e54d4d4849e957ee18568df49932e28ada40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300910fcdbc21cc2234d93398fafbcce1664ac2ca7f2d421a32ea7f5623c007800fc4696ab967bde9a975534d8b6317c3e02307941aa6e43ddde83e86f8d000d101597cce459ae608f77a0c842c47254d708a6b8b505583304f511ee6b80ace4555e5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304fb1763be14b4d487d0dd045c4e9931381f9019017e12bdfd03371aed594af94f34cdb82e10fca95d7132a002467e1710230753dbd93c6c589eb138231f3d8dc9449e883f7a3ea9801673c0a2085fdbc1ce912c8141d1388a073bd8e8b604b922be10302047c435bb500663064023060d8f71a8246694baf8a4f56c007ea8d6281dd9e3257cb62d88aabac602f588ee6c03fa4b09b4477d8604958fe44c363023003faf56ad8fbcf7494a29b6daaae06afa82f66318c2ffdb56d5971d8225e7e656369aa1f3d67531db081f6fffae1f6a50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230517cb4f7d053d529aa18f75e26f8b2645d35124a4b0d9ea7e8f0cc6c7d749d491959fcda8942e712c72d8893095a5175023100cb260742a8df63ec6a262d6f132ff5c3da89378d710fab7913aa78f871a8019f294e98afbfce516b7625f39334755f120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009dc38f09dbf0239de7722b998fb3d0db73c77e000c75d4f34bccbd22aea87d4ee8ea20a4f9bbd01c83f319a947755695023100eadb937d39e1543c1b9ead77a51879de46e2ab6d6fb9ee2c7ea6ce59e66cdd90ac3d8edd165a6cc45e95a3a353a974d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009dc38f09dbf0239de7722b998fb3d0db73c77e000c75d4f34bccbd22aea87d4ee8ea20a4f9bbd01c83f319a947755695023100eadb937d39e1543c1b9ead77a51879de46e2ab6d6fb9ee2c7ea6ce59e66cdd90ac3d8edd165a6cc45e95a3a353a974d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009dc38f09dbf0239de7722b998fb3d0db73c77e000c75d4f34bccbd22aea87d4ee8ea20a4f9bbd01c83f319a947755695023100eadb937d39e1543c1b9ead77a51879de46e2ab6d6fb9ee2c7ea6ce59e66cdd90ac3d8edd165a6cc45e95a3a353a974d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009dc38f09dbf0239de7722b998fb3d0db73c77e000c75d4f34bccbd22aea87d4ee8ea20a4f9bbd01c83f319a947755695023100eadb937d39e1543c1b9ead77a51879de46e2ab6d6fb9ee2c7ea6ce59e66cdd90ac3d8edd165a6cc45e95a3a353a974d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009dc38f09dbf0239de7722b998fb3d0db73c77e000c75d4f34bccbd22aea87d4ee8ea20a4f9bbd01c83f319a947755695023100eadb937d39e1543c1b9ead77a51879de46e2ab6d6fb9ee2c7ea6ce59e66cdd90ac3d8edd165a6cc45e95a3a353a974d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305212b38b3f2b2ab9d31961e42ad01e14ed9c6fdef1798de75b210bec86dbc9b9f5d8db0b2eb181c2af179546321fe506023100e9306130e5f0c24ad11d5971968918a6976f6aa616995aa262c0c7d614a413e84ca249997ee6e3dd0da95998248d58c00302047c435bb50068306602310090673ddbda4c59c4c859310f5fe5eabd384b1a0515aeddc48f743fa51897d59c656ff6e43cef559a728c0b200cd99d780231009edd99201d861ac44b84e18f5be8ee90b39ab18beb5645754fca1ee875897ce92f9f0fca4c720dd2bab6c86486afbb530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100feb855705bf64af9a71eeb2751afa2cda21951a7779d600bce29ae9f887d13fb11f3196104d7a7c067b4af2f4934f50f0230398574e1c5424d67c58f050fc08cbbbcb57d791e551ff6613353424250500f049708729f159a7f3f63db6bd283584f180302047c435bb500683066023100fd9cbdfdcdd813b8cafa883e6e7577a24208db175c94a219868064492d43d67c8b5c8cc4200dece17615fb91d230bf05023100dceb5c0c80d3945a1f5b672a88cf275e3647a0527b75e285e18eedde856d75b2b29e6910165050794ed1302fa7a5e9840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ed3c7454ce57b117da838baaedc020055f15b83aef201381147a839f2fc8ec27261584c181d15a3651a4051ecdd0bff0023010ac4cdf2f7f67cdbd6ff61b9891a3032a839e41ce9ebd0e7e40402ba21a8ae009c8533a2012e36172f90e0a32130d590302047c435bb50068306602310095acc96362c52cc04abc12905dc4cc01930007a828db44d1f64e9466908fa679663b61c8445af711c54e41702742cabe023100b5a4293cbc95c576d1854e412d034cc269bfdc57c64b549caedaa61a88a5ea5c704499947ad4ac0f7ede38f8c01d22720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304fe98cc77892637ecbe052d7c6e03f2eb3a8e332e6eb29ee0b10e484a71beadebee73731c09f5f20548f363139af2cea023100ee009f4fbfde6e0affbb38203ba9f441ee771bf6707b739ebcfd001e093a77a5a0e80b2888823e955cf162d87f5fd7f40302047c435bb500673065023100b8eb1609f4707cbeffda2091265b432baffc6dfb2ed63cdad4e58549bf0f45bd24c19365b7af2883c7830e321c8e87910230055abf2865b9bbaac5d1bc8abd652930ef33853053466844babefb9b61ca375b96f32527847f0bfcbb5f2ca4fef7014d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a9879e3cc8e706a4fd68ba80eeb6e73f76892c9598acd35e1ef410021ecb828bbe373f0ab59ae0d424e684903d23aea0023100a0411855ebdd19b9ce43dd6316072d38df45227a0f6120e598a95b3aabc9821d26a80f5f866bfa0c6e6213d72589c90d0302047c435bb500673065023100de014f33ad6fe4410d4236b0a3fd69d71fe17235db1ba82b05631d5d604be80b03a5457d8728fc111c5bd62a140f5e68023014b80655985056222f51702eb7ab5085c4badfa1fd9111a53224804a5642ff1262b7dc4df0a0f7887e98fbc96244f2fa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bc20cc11ef42c6cb84e0d3b3c6261612074db3fa61d78dc4151199649d25d71141f1aca7051873b6a9a59b445a7064fd02310097a0a200246bdabc87f275dde7b55732101c26f5ecb36087bc9a93326daf65e36798c4e3a87ff97b887620494a871bb20302047c435bb500683066023100a3504f6fe24a5f5701e292ca1926a21acb01c63688dfc1de549c0a3bb4d33c9a638e98f3e5412c8c240ccb8e2dabfe05023100db827c0b7d505d43701ee688e6f4950ffcae41c8e6e1186f32da2fb4e66070c641f432513081f6ccb1e8f8712ad62be30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305e77018e6a47ad4bd4dd734bd13e28e6893d2d852af2c4b4466f32d7b574b420b844d96d13e5004ee8467574d42070aa02310084915720a0aec06303de5d69cdba08d50ad6b5a629082a9d1bfd63dcdd90986a17bd1274f8702b66c92ca0d9d8efc9cb0302047c435bb500683066023100a73d4a9096b2085d8fa13298942aa45f45e5f933b42c370edf2ba2c738d5ed2b10fab993f35ec624f5c340115cd9328d023100871b3af0386227d2314293ac101e4c78c3706b36962f04b9bc2befb0fd48f2c3f570d49560b088308f2d237f6ae16c440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230633d8cb50701862801101feb83d20b28d353a76eca54bb588533a8b931364fc9e6474745fc7802ba5fd89ba36d3ef5a502305c02b0354199aea48e6c37b2840b29a46d1d4b820dbc408e385529fea95118abb5bd6d858a7eebd96fd99e065128ba360302047c435bb5006830660231009d0c9e0309576c3509a8c5f8058d7f5dc7cf57eeb85749b2ffffc3ad2a2e3d0caf0cd77001ab3d9f6b250c2419b60e63023100958f254799d61226895d5605b46db60e4d8e4a55789d303e38f9236a42125b8c7c1841ea12903ef7f2abfa7f2b7939c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a0ac0789d6a28f91d01f0ef7d6d90b641008c6ac6f80f7a8a1fa4057842ba0db24b387784c25d4253aacca505422a4fa023100cc47038f483d3050f384f1d44dbf3a01597aa31d89ff31343096e4e0f357f347edceaa659f84eb31f58512f40af2439b0302047c435bb500683066023100b6c6acd56849ef68b40eaca6bebff95372937d8ad62186055fa0841a77571321d242f9aabe00bf38bc903dd9f48f485002310086edd026ad0660342697164021d68acd7a09af110b4edbc8edf5736a65c2332d7fa9666479b84484a8087b191bef85520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d9f147196135ded304ea1574a5e23547f2089bff894c3a72391fd1277fd7fb7c679052fc7883123af4345f35cfc127ab023100db7cd4872e145be0df40af36e58637237b9dedfab9abca54175365fc95f6fc6d598479609a682b4a31a171de972432430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310097d4aeff28baee03824e902ab051fa3f6fac5fcc09550d13d21b930d14ff364a067dbd3f7285bf56382d67785f7f31de0230115327ff6e753ab7e3e82835cc29a532b6a77da6877ae4ed9c66f962a1b09ede444568ba38983362963649d2d32e13340302047c435bb500673065023079896c2888d2ce78c8717c592cd72b4b3b63840b24d16ec0bf989ff18f82f477cb1891656e60d59bf728e9007faf6026023100fee3d5fe2c58f0588825063e2b7358913f1c33245ec5d001949db06caa0cb41e52e530bbe4386f16990caf4639964f790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b87422c297415d01f296c04863f9e88384568180394c9e8596ed4e6c4b6335cd43714389833ef41dddc1cda8de565b14023100e284b2491a605bcfa1dd26fd859fe20e87bc82385317d2f3734ab52131b400c3f94d672973d4b4bb535e1b235711edaf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305f71d79e7ac06c69d0cb55415614d6903b6189e1622edbdb233dfb81a328452e259036498a000d2195da06f51cef19fe023100e50844ea3539496a9011d682da554d7660e51e2fa6d76c074d9ece4cc5416a322715955e34bcd03f1d7cf9e72d55d8990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023022acad55d517acb303212770a5899647fd1a94c940d89a3bd1b8f1a071788c8f7c405be44a2c1fd9ad645a3933af757c0231008b13a8aaa6021f8e0f105440a7193016d1539ede62863c2c4bfdbacc23c9eba323dbbf96f960c5585768f019966f4e670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230367e4a8be852cec1109fbafe3e63a42951f5447c6ad58051f8ce47215165547a575f8c635de365f89476146d3a677ed8023100a01d133163236abf4efdb6930a1e63fc63dea23a450df616c01753c0f3ba29383fadcfdda6df9889a5e9d1615f6627ba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023073e1d28fde704f3858dadfcb3f930a45108f48bb39ab18bff999a5631c7b105bc01d911a8ac9c24079c35ada5ed85981023100ff1eca89e771865784e16fde631955a55647ac56c63c7dbdd280e72b25b8f944c983bb1fba51d1ff399877ba7737bfca0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b8609e665057d8205ee1a0c75e2d97ced1fd8293b25011596cb4b4df6d8694f1cf64c4d179b50d14b623ff9dfb91ad130230021bff31b9e8ac2d730c508780f5bc49d9aabf0b50e44e8343cd20bbeebfa902e27dc4bde0ecf4871052002e00d5231c0302047c435bb50068306602310087c99f755f2e81265fea9151360d3d4f322fce53eff3e7290e5eeaa31e82dfae6d48f541084f69752ea9601449ff6117023100c340003967cb55dcbfab552f85e83c6340b683c3bd973e138ca63858cec695b6a42de38ac0ff70877f03b874d9c3bd3d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304f816329497189f15fc601327fed930963f6dc55f41ea7a5052bc828dcf37ca6d7e5b6f9b56c4d39a7e7c29404647c5f023100da9f387c7898e0aa1175c1b25599c935b3a5b4c9281e8a6ed2dbb8d2c2bc144842f7bc5a9717a143f052acb35a2648690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a095a12c44fc403d400617eb36c40c4ee690483cf8ca6f8c2b69c51f994ff70e12aa6de61bf8d14b83e6c024250c37a8023048ccbfcf24f28049fb433301360af822bd7382bafccea1fe8ee567635afc092e788950e6010774033c28bedd60854b6a0302047c435bb50067306502301ca5a9be6913db5cc5e6a8b44e02ec76d38ee40204fe35d24981ccfaf2401a5bf73b68ae3dbde012ded6281d8fc9311a023100b925456e9a64a2ad08fd90beee8651913db3704113a7f59f936832a57fe73e9514b647ed39ef98d803733581ec837b3a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a38e267d7dd620ed41e0c0ab0e7f931c502f832a23920c89a161a0b1641a66538bea49401538fb9eb69b426510c5c46a023100ede45ad2aecfc77b7ab1766d93a794550855287be1007968a74021d8b602537fa4eaba927b11e471657a128311a0632c0302047c435bb50068306602310098d9d817d9ddd2df7f3f65863c95feb56e91a96b11336fbb5936fa72d565d9733734cc9ca9a2a72f07cc9e073db32702023100bad6315dced0b910e74a01d646ae2ab70f70ec8ce01d1d743776e471d02a06352cdad9ac516a303155bc179e019a7d730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b226e4cf935f38a0c79498020007e1c0233135cac1983e01ecc767b807cc0bfe23d1130f0a33f356915e500b80ff18a8023100c870ee62447c2eac04d843d3e16b23b0c8d9d29bf82f7f16eb0b107bf1b0e097a72a556be0b7d3ee34f9a5612ffb361b0302047c435bb500673065023100b6e5ec6573f5422fbe3fa790e75ce466b90bf2f2877ae59c78b1ab2331f98c0ecf40195d47a00fd5208d7eed9b9e795202305a673e4b9b2b9da361f681f00f0ca28b923f65f25a7ef9d18542a49bf99c0f901a61c21b56e39bf86e4bb335a66d88550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303bcd0f173680ea778c4c869c0a6a026a9bf70ab4cfadd0723d6f9b77ba322b23054bcd948bec8c45a1e1439faeed0cca023025074cb98736505813b084deea4733c0885c8635c0929aa6e9068422c0ef5128661e715950090af3d3fbd4eb2204717c0302047c435bb500673065023100a0a7be911c5b3b98b859a6f4b9f83b4e13a7d07cb5acdbab38cd9eea5168f02fe69b29700998c50a6ba79b4b4c1dba970230716ab40b49c5acfa5ad2bab802a0c7f537f158e8b4ac205ef742a1e856445debbaf90a81fb9b470d7fa639fcc52511920302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023035c2670f1dee97e6d1fabd54f18fd4f8c7d3af27309681229c5bc3660e2aa1c4b26359135f60523255eaff6d937523ad023070a31e8b5c0880204c8d524f118efaad502cda7f293bc5fbc0a74994cef36efba9fc17191ea8fd335eb4de71e63b66b90302047c435bb50066306402302464cfb2487b98e6b185ec4a4d87dec620897bd0d738d1e7be6c08f051ed4db1bc1e08fb609b9e763400e544f31d0be702301f0198019f733602ce473e9fee2d78a28624b4ae75b999f11411f3557a5a914b8f66685b0044c6a90c54bba8c569bf390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c4968ff27c933ec96f8ea7a78bd8fc186ab4a7c1c11d582c9ccd45ab725eb0dc1398c78ecd8f64280a7da8164853349a02303b42351602d4904281112cfe7aed02386bf4d9f3162b08e01eb1ab0a2543bd1316c8e63d05e23cecd60b82c5ddc076f20302047c435bb5006730650231009a96009715d9213f1930b16f56ae39ee09ead7f4e344fa14c63089c71152f602bb02a322d63f053f6f44355612396884023072bf894ea2386ae490c05e6f93f04f3a7b25b50f959b8ea97ffb918752ec966d1539b1972d90d694b59473fcc88ac27f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301a9121d69367059eee116cbc8144fc752a2c63c70418ad4f256136ddff48111f4b350ab9712bf988f8ac8ce94324168a0231009e6bda3101d3a7f7505e7df268e1e1c1a9015fa772453427ad33e9222a3eb8737a9223bb2afac7ca3dca6b2c85883ac10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e5ae7c439df554ec506405e45c8d3e7455a447ffe62977fc3dbf0ab05097a74e93c2b3ba34f6842c32c3be089081e87f02305d92bce1ec956cfd7a3f3aeaea4e237d31cb9fd93e9c6076b659509e829552f4d35f71616249c131d8ffe87c76dfa7550302047c435bb50067306502310093c09d308ada65fabfae7faa57e6d9b863c8f509ca29d0a3aaa2b3af4cc4abea3d60699f4084cf4201de240c3d809fa502302cb7de6f8afeccae3ef2e68fb37e7e5b586afa08bf3bb37402cb59911db42c20da8c4ea648bdb7e67ef31928dd7779300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230659b8caa5911f86534f005e6b15ff3c39ea458c990c19b763d30686bbea5dfe1b174b09adf4f00f631c353c9e8f193340231008eaf5f824ff61f2e869182706c42baaf7cd2cfea34a690c1c7e21007ae9c2460e1f815a3381f75c5364c630f881dbb180302047c435bb50067306502302750d69be2d1771a5a706eadabda7491cf61fa997cba41a874291c39853f2d16944afe3ed047be9b42b4cefe8fa02f62023100d66e413e58d92fff5cacf6d3a5843affeac8d2b35aa9eeec454706a55375ffce133580acbf9a0503a0b716e567359e690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f18fcf34048d1048c2b7988ec62dcd84ccc3fa33f38e32fd09af080cd8d0a8529d36c3219af4a9a8d429a2c84bc03e0d02302419c8204cfa74cbf3ea52abb1f7351cf4fb4f3ce1493d41bc7589f266ab6be59f4765504ede90f9e53f53342f49cb890302047c435bb50067306502307ef4514da4223929e609c318b5c4e5ac1517bff37c01575a4b52ec1656d5e86eaad3137996075599ee773dcf7b4a8d73023100a1fa7a9c91e62cdfc4eee9f2558e6256f02d11760f816d9a8fea1418ba4bfe9dbbdf3d7a0d700a36f5337bd8eb0a34470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023069c9f950cfcb142b208ac2634ee7bbca7e4c8f3c09ce43ce3dd8266c5c931654c71bb97bba8c3f464efd04c89162fd29023065976883b58c48ca2fed1e174f79e844c4328d2d8dd095ba9af2fdc1c6bd143fcfa67909226cde481fc724c54845cbbd0302047c435bb50067306502305324090be80e1098fa034a24260796a6572fdcec69873ef254310c81807e8d370ee037629bf64b54944876a97546a58e023100fe81b7bafb51423278aa1a9fb4a82fda8248cb5ea72cb60147c8986ca278ce0126572bcb203e5293de2c721ea54cb36b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302bf73b906fba470e3f237d5d3739ef86355f94295a8f541e0dde4541272671d5d8d850ba70e4c858b7ba5646e8f46b450230295cfd9a856f86203a9b187343c73da484d26a07a42475eee28ae7f06529e81505771048b24084c98b848b813db1272e0302047c435bb500683066023100a4921493921513423ffb87890b412b40dbb392d2c8ca191f1e04e865c98682385c39e347a6d11dcc18d94bb02238e595023100f16e7128973ba7c1dba1be20e12d5496af1915c85b14973ad4fbfce59935f62ef974f181d6cbf42600063b9ad59b89f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305768cc8953b58d8f3571faf303117d943a4e79a2e92b48bf71d392e07bb5e9b922cbd07a77dc2de5e117c64daa374a06023100c1351418208db5d845f23766d7b4cb72daee6363e2f490b735c969fcfd2469f61a485a69d60e7d0ea43a8aaf387afaf20302047c435bb500673065023100b852c0d55ce3926f4b31b529d08282982a387f0b3324d437ccb87f860f4966d82f063f519aadc7252fd8fea7a13c9dc00230772dd74f2015a1f9473129a92b88cdc24cb90a0ee162938a5beb3a95dcbb31b2a1ca07e4392cd4064aa442e0ee79d3000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310082053d0d8f161b4a7fca339b7e13c6027d321c0fbdb72e11e43f32faa0642425f3e522cba703e89557385d34cf9aa27e023100bcd64e18cb5096ac3ea2afaf299fd92743e227b0fcc13012056ae13776436b3ea7b091f9c799550e16cc312538447c5b0302047c435bb500673065023100e9ba4f79c7630292d5cb8a1ed467fb23378ebf3d882c6a296a25815aee70b14d4f8fcdaa496fa50e1152f4864e3f00a8023078f6ed02d323ffad06ccb3715576a43c0f9ff2f515bee43bca3cc840676147048aa40a15a97a344c417f8c3aa1f51d9b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230037cf497fac84c40ee34116950f5f7047392d9b84247a88b843b530659663bc557cced59ac05996e3396f661eb17785302307ae77796081a6314e464e6e94fb4ea38cfa07b4e37ab0fec2becd708663749cc72d3e6d68a89771ba188f10337387e1e0302047c435bb500673065023100929befc1c9288dcfc3abb2f0b1f85bd36c58d759ff8a56022ff016d6dcdc37d27b1a9b236f5cb8f2e4898fadb33e00160230662231654e85cb958efc2acbf563f2f32a4792719dc3bd452d549ab2f31f2972286ecaa5db56261e531c211795f313040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008092c4238f0aab7b91b010cb2c0d58b450622f311a64d1c7eda9bfe1e41f334c4e266441be9da7542a6fee94d4107c59023100903a8814b308c7a38e89f637add98bac612bfa39d9f2f67e20e2725e09a5412eae7b05f566f172eb9e1f191cd728028b0302047c435bb5006730650230210b18777d6e13d8cf6a14a261df10006f6aef9bc5925e6314852574cbc732cd104b856b189fdb91f66382ada489e31f023100c68634eb61a465cf3f0a008afaeb019739fd16bd63d2f5d29f442973fbdfec390afff6800044620615a34db04214835c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306ad7dd338a0287de447f53877ae8ac8267ba36cdb75aec777f2fd1b84451fe421b6aaa74b7fcefbe2275a98ad0bc0c3c02305f73c8aec200aef1c14c3f1987b82ae7a51cdd5d118be166510bec85dc52d2248532ed25718e098b9bc1ad946745ecc40302047c435bb50067306502300ea2a1d4f4085b634fec25a697a1213651a2f67f2e675e18496985ad10b2644fd52b6e47c2e7bc35e4db3139cde7a36302310080c9daa98760a275bdfac184292d257379b30adaf2be3547867e279296428a98d9b69b5de9947ea33d1de19ecf21ec8c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303bbaebd21ff7c07e1d336e46248f0f45d36bfe95fef12b33df5712288967ffb2e55cedf1f9f329d02e01ce4b2334290b0230274e1e51da7537bb2f1605338cc13d077c874a780ad9ea2fcff82b27052394200b8db61b76ce15d71141ce401a1d10400302047c435bb50067306502306c954cd322b61d192a1278bac8d5603537230fc17fb51260d7ecad69eafc494ddd6d44c4c1bfee3f83f0449f8d697a3a023100dc3985d815e9e6beec1d512a5a1af672b3f6a6f649c1b051e65c341e6170d08c275e60b0d611f3ce50ba6131406988a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307a42642ed54337b90d52429a3ef41d4bf9554245d003e949985e0924d7c5264ee9cf982c295f50079dcbef734d4294de023100916b38e26b5c9952a8a7bcae8040281a3fcb5e285b128ff3ce8ebd26e5c84cbb6b7ea545b1aac5a2fe6bc938cf06366c0302047c435bb500663064023030deca679989ff69739fa4b4e7e623fbaf3a06bc0a891c1106560c772397f8b1e55a702adfca97952a0de6e18404e9d102307d119db72f98034299a76f0daf233d2dfcc1419301ddb035ba4520c79b62b8cb0bd856aae10e02fa65b30f2a76a228570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023046ad8be6c0e1ad7eb832330b6e72052ddf6846676d4ba6523fc13aa8a5ac92e1bb21c29091c662831db35664bad27e84023100e30ba9f02b78cd40aa94cb38c232831c2ce0e3614cd3ce075a337cdc4e1317c1b6d5c4c249727e5697c1ef61d913f5f60302047c435bb500663064023074aec01bfff9760978cf6a940f1d6755c831c6cea1451b741d2c1ab5504526abe5e51e12b1ad4edc491352361970a5bb02302b8717faa3d8db44dee06ba9e8490df79d9991ac963e8ecac5aec0f81aee71ff644bc0bd9dd7095f08680dd9b9594d920302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023017a828fe2493f257dbd9e3d8c309a29dc3307ff8e533dc948db83db8622d6cc3ea694c67d766ec120f2440f4e82f8f93023100cf914e6f41e5a2dc35d00f140d7c54ddbcf381f1cedb4d4c13445abf372d0f2859758d504b0b4d17728eabef98f700370302047c435bb500673065023100833f6f345643a7f551b5d61b7ae5e33b38257731e342ce4338f6e679b4d18a54e37d02a300f3a1dd83c881a164b2d9d402306c10d3477bb5c6686728a166085adbb47934395221cb3c744e8cb04cbe0d09b37ac13621ed4df89926ec7873ab3b6cb70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303e10bfb4aedefe3115a6472b9c54069f2aa7538f7837e6a952abd4f7eac9d7672963b2d43f221150479bf488c35fcfac023023ebf1b6d41023d66f19bba773810723f3ee72e6028ec89c0d8fa57da32c4be6060ad90bfabb4fc84a5451fab9aae7240302047c435bb500683066023100f8b2375684eb682200c471be17c7b719fc2d52c71c94400649b5e869a4bedb2be8ba10d7d091267963ce82eb46d25e04023100975c6930cb52c9bdc0b981f14e7e16c5db8d94c5715d577f977e736d4b2a510895b7c11150d219fdb76882ad18ee716d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100aa179bc0b869bfb1025ee34100854b994c7b596cc61e0aa97164158005843744861ac80f631500a434ebde2c920e26f1023067b7436dcbe859386b221df8500314f7994bca10831266e31d2ff950aee2db4ba0ae7ad813d30c28cf04681c1c39b9340302047c435bb50066306402304068ecbd6b091463eaf51ccb0a7af0cee6d53b7c5016f665676271739f4f7e14f928d60c4ae8533f863fd5139fc2b88a0230667d22d587875f5bb4b926beaf04b3f69cef41046640b94ef8b1511c15bbde09278c0e5e78e617fd2b0729f372f5df4c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bd18e1aec76244dc86afbec1bdeb38bcdd8fd283e410d46e19ee369c754c884a35f579574e7cccbe6324e4deca7946ca023100e86f31fd144165cf85ca9b0608e4e8f1adf96f698e990c6fe2613737391d6833b508f9f2f97a32efb9ef19221ef3aba30302047c435bb500663064023051e91f4a774cd76f03e29d0d506c53a7e8ecd50dfab3883aacca6b24a6d96f92bf1a47d0b95dbb11d27f6557942fd5be023029789c1f52ecf9329a5ee80678958c551451dba804f799905ba049e4bb3a472c0f7a685f6b20da515e9ddbf39833def20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300adcfbc09405b69e5bbea257b82e9efc1332ac130be5e8d36328283e2578b0d18cabbd5599427011a2a16c96aa3aee37023100dc6a56f8d095dbdef1062583908ff84e4010097585da65bb7dab62959cc614f773beb78a4c0af81981cfb1e3b8e7ccda0302047c435bb500673065023100dd507d261881defa82038a01b07119c98d921c2ffafac2f06938ff912e908e7bf921abd0ae825595850c6e0880184da602304dc3e364e4f01274f760bc3be5930ea084962d540938e777c3019fbcc9c4ae8d6a9c0a2046f71761b767cf99f84641b60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c9cf368f6ebc78490ba210c3f02a12e6509d65062d50704bc1a48debf1674ef3b0ca81740bb728b362451059f5c87e87023100cabcae846185fe3227acda0aaff6a5cbeb62e8bb8d7a3dea5e7f972779ccffae59ae88ab39bb72c51d389e6a8930d92e0302047c435bb500673065023100fe9d26a4dd6cc6e291bdefc696fb2418e94319bd4248f8b141872ae5f0aa62356409dd8588093de26cb286dfbaad2672023060b48474a1b6e9e12b9a4bcd3bac4dcf3355b84268f2e039d67f0f8d736aa72d2551a356fc7f4cf7848bec6dc3c1fd480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100abb6c88e94ac566ee0f0ff0a9e384507224d752ba726610b97755f38a5d8fe8f5a27ef9e29c37f905d65e60a4a66cd1b0230748fca41857ffdbe4df1d496f270f4859f664f46dbe605ec96655ee4d0fba810c2b0b1c24d9910ecaf16e6a8b4d492b50302047c435bb500673065023100bf79cc5a76af5ada77d43f7b16c84050c2f62247cb5ab35f28b100e77939c0cc875bf322d8036d73a1515e6ff0186c32023011eb6cdcdf8a80ad9d2249ec0afe187661daa6f4cde1bcea014b3740b24fa9a613b4e8e98a02fd48d428e5b1c20f48040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305823b4e0cac3808282cbebaf77dc1195807ef647c4f36b9006e6463c9c58fe49cd7c3fd9280889ac03cc18866ee72d8b023100ca508dadc161bcf07f5e93e40bd63ed845baa4dfa2f4fb51650f45ba8d56a563d362dd404526ad3dea1d8b9a509610530302047c435bb50067306502303dd3d106badf63a940b65be474cf8724bdc4ea49720df4b772f9afffd43e83b2eb1d6f6ab347c60cd34b2f7184f13ea6023100ef38fc8303f489798fcb7aed77f3a1754c4cb88b43d39e95a76625337b26143d771e3d0888697e9dde5714a3e87274bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301bfbfb7f98c0291fc73419122d0cc28f0db68f1e4b64fc72e3cf5639ba24609e4cfcfa7459bd1d292b14b0fdd0c40f99023069d467e60f9f164627fdbcf22b1a7d248c64257f50b2bef752b3e26dc3ecbadcc6288b766a2ff763eeec6158ab935ed80302047c435bb500673065023030cdda68a8f5372b8678577cf275e759f8a28666431d4056cb402f420570ddb691617e876b41520c41d051b824e69c11023100953d97e6a3b624e55023bbf267ba8593df27d2f1fb8ff3e0d14025fc9b106be8c153377c031436c05f6fce83fa2d27d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ccb32734de0666e1967ac1684e46d207bb37dac0ea2eec0f737b5a75f8ac45771af26fee0911bb30efb80039e1e6d0be023067ae631d38f21929ba6370ffbfb5ca2c2d300a266d9ec49ecd2c3e6b43aff197e5597e863648ecaff9218ae2c3e0e7080302047c435bb5006630640230283c312ed45aa8b4bef860244f3fb85143847e5ee53ad3abb28bf99bc0353d38c19e3321b596710493c038890a003d6902303c103c03101542d8008fb937ef3ab72317007ee5d883f77b20d88d44966f141bb95ee22a06fddd43d1455a30fdfe232a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230286d4a07c1a82f2612214b6df466881ad2872eb20c31ce02af9d894fc7b9188828a864baaf050a9be4238a582369bc8f02300389595d7e9f1d032407b61783942a616e95dc4003b438520f7de7d4b046235084544cca7dde2eca0027fd7b618da7290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d906ee2437031b7b767c73a8e3089ab2a7af0d57ca3c6df063d26482e2b0e328ebeb246b56048145d5443d1b6093a36402307afbd5fe4769bc4c1b4daa08de1f3c7ef4f1c97033a5392f5c1181b4cfff6672d006938ecaddfdb381d17833a04dec960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b35cc22715a3bf2de52ffe05a94405629b6e44b7742ac1fdcaec3727d03b4c91f77a1aa0e9fbb2da03327985d0f2a4d502306c5bc6e53e235d8d9f99fc30bd2596a656ec337b714b444fce965fb38ff47b2c743936f43d3cd3fb70437ef5fe9789630302047c435bb5006730650231009eb1ae3e610057780917a446f8b28a74e36a01c4bdcffee7388056561c316143e7c6bb9b5a58e8ed013f062c18c18d7502306b200637f2526768623e0785fbfa212898661be40c39e69ee59cc72f12d8d5eca6c4acd0119510bbb397d438b8456a720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023059f4357f0a7d4cd42f30846ab0aeb424e5b03bb58cfac5b2e8dd15506e95a9c48833eaadcc14bd5fe1141c299ac1923702310085967192f46ca0658c52e4dcfaf434f490571ccf9d2a7eff2f2bf188ed24853e56ada2e253a8df11795780d3a114ec570302047c435bb50067306502307a8dc56f7fbe28714e2417b725a69ae369c3492280c7f2f4cab343306a22c491ad5ef5617f795e29b8730b6f54cfe3ba023100d80caa91907b77286727f1e2d622768a437f3d5bc9e709f97d5911773482a2431926505663f3bc36ec2909fc00d92b6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310084bee6b1cc04622153ee9c4ab6b1e39396806cf2c80dae1319ddf6463d332ec738fc7554ae4ab7f484f6b732c7995431023100a0979ea82069227c79b921b76c082159f6d97e63a1f7074c8dbd3fc6d6148ec0b209ca19ce9a589f6c0ac30071b41f850302047c435bb5006630640230372f5e276fa59b219f3ad4badb1a9c033faa3b1aa08d478a3f4d988f261490010e56a91793bc9305ac2d5a7be2c12eaf023040bcab52b09d364ecd991399b0edf68688633e25940d93990586412f266cf6beff28b179922b567da6b4696605863e190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305d527aa96be9cab06932e71429d6370a622230fb6fa2ee50696ef697f872b2d481e00bec1c50f2dbb754ff0c2b381467023072c97e4bb7bbdb4134d2cb490335b3a00e2def33b97725167f9e9866303b9ee5d5788c53eadc174bdb4865b6b09eabb90302047c435bb50068306602310091a4cf1d6658f93fe69e1f2830935025cbef48430d486c017107a5cbe79a4956053611764aef51a654049bc6155dfd1d023100ac15c17af851e4909eded5c8ff8d52807eeeaeef6a2d27919e0533e31c7a1bfe1ee30a50cc4e5ae7c6d651889c9e7ded0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100df0e8e2c29ba19488c958da2141992fd5233f296ca712a23b2ff5d7589e0e3e26a18494386bc74c0ee811921b34bcae5023100d8a34595c327f3ad5b11dcd8a0bf00b6fece5596b01d888df5674ed190bc4b660d3753bad1a699ddd4646690b6877f1d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a7353949c43cffd7b783c71dd0e25db54f40e1387a492e072c689debf3cb8a736bcf9d56bf6284f5719898fc3a31514e023100e9da6016a195dc5e89524acba1e87e295f9d7f272d27172399efd461218c0c44f200320f5a6db643250929763a9ec1fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230372a322900962a4de3585e4315f18758bace2d00603c57e92017ea4d6a3120d8f4d3d745ecf20dbcff9209cabd798950023030f0cb79a06c252bf07022b623dbfd7d1d9f2762beedf7e56f02001295a8805c6eb1f827582dd4c2eedf66fcd9e2a9e40302047c435bb500673065023053d396ccd095fa9e4eadbad46fe61340a0106a0f427e205afcbaac23f9fc8fba3cebd3a0590fba661194ef23068b0865023100c825306767b70b7528e70cd4f9383a49b7f1c127bdc0f789c60fa2e6d45d656ee39f6b7c70a4bbfc303e4b0af18993a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305172a2885a9965c96a300bbee668fbd4cde762d38e5ce4cef5421beb458ae3524d4bdda4bd123a0813ed92fc2e8d1ed7023041d811d89fa97fc54ac294154a0d31914506ecc6967b0a4c3daaf8ffc4f76be129f6637ab33fd14a0d47f1afe1ca9e210302047c435bb500663064023050a25699585413586cadbbd0abf49ed00e6632f20221441add982a0bc4ef5701a9ccc882b4805dbcbf5ebabfadfa96b002301e197f76d57a0206e3fbbab4e7234302d6404d53d78101fea9b3bd8f40f2205c3852731658140cb4522dd73d93100bf00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302991fc00e1c570a46e96d221d20c382cf84424437ae9babdd413bd116012f65b4960ce2e6a53e82ced5aca90db4bd92e02300972f8b77012a39f2a682f19a41744221eff8dba8ec8b73001ba2e0e6ad679aa1a6393da3ca7a49c781bfc53a1006c8e0302047c435bb50066306402300a8ad54d9d5a319bd2323a86496f7857291b309d23ee0e08c5bbb9341cf67243cac641683a2c6d0adc51ff0a82db4b04023076097151cd10587fba4cabbce554e6421a1db8cf391e7635d444918369bf87a74e53b30d7b900b1099ce70d878696a2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302184460bb66f2ff2601c6ef50b1a02107567bef59f3700dda67e3fab96da00da6bbcac0f318ffe1eb6088afba53a19e102310084f8a1429f6fff80b2a9eb446ca8fbb98f3fcbb128aec10165aa5537441bafd3378af3ebcf9646fd398f7edca936dc940302047c435bb50066306402300250539f0179a03a8286a9cc138e18796696f0c73e9dcef0205e802eb50715419a3e2a91c8916dde800de10b007120d502307045fd0dae4ff10e7c6583cdb25db147611fc169d918d5babc4557b44019b0b5978b0e455790235a3fdd2d1ade3d3fe90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009fc69db9ae6bb6cce955edbb59cceb75228fc5f6322b01076db989a9f0fc9df04f207b4c4606d36aabefab4f959d2934023100a2241ca3146f1a66a100fbc4b532c9faff05685fbaf296dd814cc814e006eb63e13882671a6fd9e6e1cc216edaa72d940302047c435bb5006630640230615747411eac04190e497395460bd6acc98b21d67b382f1531fa49503d616568c90b64ca3b57999240ed39f946da260a023049e698433eaa826aab7e71ac00ebfc1db72e015bda36f35907ffd51e9f647055ec5007c20c0816a93ccd34ac240e9f390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305b541a50e514c0322be2048df8bb3671003e11c02dcd792c762e00e7cf4c8cbb3b89363a66eaa0485e9ec15940383078023100f9652886d49c23b5ce3fd4f18d69717b53f929468f60d027241035e85af400d6f02f8b7cb8c38646df372ab1cce898e20302047c435bb5006730650230023b7a57b10d86c142ec05ee36edc7512bf7a5a8a516d07bafbbc728ff7f3cd565cd6c61c2e177b9c6680137417022b1023100b35a5244184a2f19dc6800cb22fbfe90c7bef8e7c98c27cea30a3add307cc0f2bc4566bfcb35905cbdf658e047e83a3a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c49a05c613b210ddca7339f1b238feefcbb7912fff728322dcce1f7936fdf0c81b32dcacf30c7419f553e7238b86a11302307045c9d8d507e824d881468d922c95a4d8bfd3408d0937d540ba0fe31564f4ea6c0f1fbd594a0ba6e41bdd89237f4d000302047c435bb5006830660231009c70333a5bfded278d7a94d6ccc58424cac7cbdd05bdd90c9f0608c8f8c083ba41ffab6715c6fcd7500faa978560986a023100fcd0744474ce033e6c805d5ea4dde684aa66c5c20228587240a3a7cc76185cc65d036f1961b2c2142e0a53e8e082edcc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230745c35ff4ea23b3c6bcc5c8b90838679b6b1d0071075a8f76587764a769e00ee4df9f3ccdb46417f99e096bc328201610230123a917c55beb090042048844bf496c381d1ca2174196bc96ca392492d5cd60a25b33c7f2094a6e00d470240698b26360302047c435bb500683066023100f5e6fd8750f61ccfdb95c543c4e3645bd30c2f5ea05565d4da2339dc3855007e1c4c6d451a9484d891c0bf3d14416efb023100d54661281286a2f5dbdabc0d01ab297956d2ff8872e70f67c34cfbe72ca3c6442ce5ee37106e91bc36c4074fabc940d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302a41d25ff34d0792b7203fe4e9fe08e427487877ec046b53989cdf26c8b3310a5af01c147d3f41b9d9d949b226f2706002304ec1fc30c3b9383a2a98cc9ec3add241cc028ebe188eb562b82615deac60be3dd80356c41ebe20f31120c9fb41f900380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c13071d779f8780ba4a10ee295f214b622c83e36ba58b6f4313a664b5100c79642988c7a4845f3be5b18224ffacb9ff9023077f4abacc8596fd22cb0c939c78e939e6b757cc317d8a32b864c92bbb06661bcaf5f5ba700321e2fb11db124f59b18050302047c435bb50066306402300d11a6285ccd0e1a528df34b02785b2eda9aeeaa7cdee7a113cd7239fb79a21d83b519dd7d7edf91d1de65b646c54fb20230173f63ff3a605196adb08038ce36f13fee8146deb18b27ec9c31321aaeb8be1e7d36735e83ec9ebc19ba6af3e92a78b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009d81c89bc693531551c050a1ad8e234bf1f2c1197eeb7ce10022d7391efffc9898608fede59d17fa3a4680c7a32e149202307b69398f708f0c44f85e7203d9568d25d30f6a75ab5cc0d7b9ab216517c925c177ad3833e4317deb433bf842f764553f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305d72c3e0cff1f0cec88abe7fc6cb05a54b881796da0b389b06939ddf50b993875a7c75a0f463385a3e3762d25d74de16023100a097ea5d1f6c6929e13fedbd9754380770d8eb3034bdb19e6cdb02ae568bd767943418560e327b0bdcb26dcdb2fe07de0302047c435bb500683066023100aacb4fca7ca9713a4d5e77bde047a85fb584f6c7e3b52532f15c073393a140c896c9f7aa584a3852d88c4d0ddc58369b02310084cd6b1469850a1287b77e0ebd7cdf71a61e0407cce736fcddd61185d62034efc6230c610f4e2857785ed8afe03743080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b1c937bf5a730be6575dc4394eda312d9a6933d637a717b56a20a62bdacc659b5ad83947383e8c18482e4cac30cfae0702300739603389b1b9f9bfc951f6251b7df3792249215dfbd0f1cbe1cf99f51c9202ca845c9ea9228ef25b324c1bffdd779d0302047c435bb5006730650231008e8329b5b4fa5bac3d2771a041fb2ba86a40d5902e957c12f1b53de2ba837b5cdf266fff990bb68b6d53df7667b86e0f023064b5067b6df18d0decb870ef8a8fe92117fe9bf5c07950e1a6ecb5deea4e7fac7dcc6a700bd29648e47401cf8102ed2b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302b7da6b6283af035cbfab6427459a51a1aba7a3fb542febfa0c887c8ee51d572699a47a184905faa4a6e8dc416a08474023045cba1cbc50876f9afb8dc22676c8cf936de266ff1e8ee0f08af931404477f7272b3220ed38361ce057a319bafa636790302047c435bb500663064023022b048447e9a44be739e44d982df2bf25def7acdd172c26bbcfb0fcaae2edfe9bea03f18803af25b8c96c901643961b10230666b01f13fbb6141305eb8436a13e0700a517c6884a10dde1034abb35263a2f50af22f167d3bde76256688fdc2e2d90b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230432f4cb8548dd8a0d254ce3cbe64bbfcb2ff87ac1e2c106ea6a98341bf6355e2a3d45ada292b379d4aa5bee70b743979023100e4c2759c3868672038771fa9c57aa705455b409430284fab3bad984a6c0afb64676fa7df6b2fa77874ac65d92cd681df0302047c435bb500663064023055e89e95ee4f43d154a2fa3f29e4eac459a0dfc1dec6a6a0fca1f1dff78085ccdcccdbd778876268af01a1cc1a513d97023077f5bda7ef1a6109c7707615ecf7dd4d345f2c819ffc87271b4f75e22be961f7eef07e74440c06b535caca2dfdf9b1df0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303012aef0abb2fc57e95f7cf7cc61277d7a7db21fed0609ff73c8e6400ee86ee3cadb12f8a0e6afa676162b28140abcc1023100b2cc440f685c98773ba57a60db6234a3e3ad43258f747154bd5250ece102063a376bd83649a18fd3d7e35af2948803930302047c435bb500673065023100e7a5a3d8ba70866fd2e53038ac92a37fd4838c65b266fad4f823af2f6b04eb66321d0046a5845da0dd11650135d1e495023036f2ac7c8a3f9feebea9c87fad1f1c89931383458b18460cecec2d8708a83e685d9e6054ca0de3c0f4496df8df21bc080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023062f6a3054194f24c139f53dc13cf3ec0b70a34a94f43e62ae2dc8cc18acb9e4ad0ab3880b756c53f595c19d7e99686b4023024fbfab7aab32e3ac242a0939b8cd6f04c81a118e2d97992d3d2d77070d1f9fc73f14c78f0b90f4367e6732ac80e86b10302047c435bb500673065023051e591cab8359f0451d96c5f67aac2e3ae08e6434fc036337d69710fcbea57705f9c337e437093c145ef8c93f9948ed802310083cd8b664217db4bff75304b48d19791ad6ad88bc2a9a242b173282ec98951c980eef3b44688fc0c20e48a468a58e7850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023008165447e09fc28e10e8c7723ad96deeebc728f4c3e638d8c25d0b1000e7c8198bf88f874703d838ebd9756ed53f007002302bb61a0400e03fcfb7aab21e1a9f3adaa6edb3a064d0f7e9dfb65aff7c8e04229cf353459c226770f91c6df64f3569910302047c435bb50067306502301d7a3caa1b97da14c63f96917259cbe8fb8976915fe0ea7ab5a2a09fa006e74e232e192254705d90c4742851741d182d023100c65f8665c34a433edc9f2d8d6193edc9c7328e01212fe1872b5f542e93f03f088cdc50b555fba89d8fa23e1b7bfdec9b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023015c263b055932e7e3be37022dc8275e35e2ef3ffc618861a8bbe8e6e10f3c918c987227845f3bd2ad6f8c948cdb9e4a0023100d231f98c7b919d6a10f13a1a03a600f9ad2ba404227454393034fc930531168898a570a9acb85e0106e1b988c41d05140302047c435bb500673065023100d0985349005a31345e9ff1736fda983b988467f444cb7101ee2bb8c65454d392eae139779cfe89acf9d3707f8c7e65f702300a5b92075a866d895beadea531309fe797c9f04bacf8d490e692baaa61fdbe818ef4a966773585b1a14aa6a356b9cdee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302e6eef51003cbf283e0997e1b3f3c58dcd852864dfe8e734e508041e6b343520ad3a6e345c631cd70bd3e2d23c8bd851023100811e718d54b2fc79489e7f8034e2b27ded8d084898ecf8d5e9a38b5e5bacb3dd17923319a70193c6bc75967445a9d44b0302047c435bb50066306402307c132383691e55b3aa01ec5717f153c35bf25c4d26d46164df50a326844ca02463b5b4f15deab2e373fa275ba4df2665023077e6c2286d374fc3454c87767146d26d6408e2ac56d55f1e163d9ba40ee0f18d0a180c5b9e3c0da89a91e7ddc40f50960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301073d342e10dd304500f19f51fddec52c8cd076fd28e70be70426c7e1c44a0888f0f75b16e8dce8c47b0191134e62698023100d01775d5328809ed64f249d7bb255988e9c598be9b13be6de607567446fd1fd933b282d6bbcc02afde500e94a81607450302047c435bb500673065023100d82ce7790698bf27fd6c5c2d709afa97d87ea144224596f98d71d4c52da13ee6f8dd289d58b1a9b550f9301bab21813402307c50c095be22cf130de6120b53f8802f9e44722c3e80e39d69337b2110e61ea828b31c9a9b0e56ce9237fbd47b885cd10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230392c4d3c89fb1de8e6959c5b19c09e02353f1088d942dd1158fb8cf7b06bdff560a2674f97ec6b1d75886c792bab335802304f0da119e6a0e3984cad0edc7a48a85825f48f89b66a12575f12090e038bbbe032714173f13a8e97975effc094e7afdb0302047c435bb500683066023100c05b8c6b80d66f3b1f7220a713ccf1377db2206aa947f417e47000d8cf6f5493669c62b9bc33841f397e66b9d2c9b2b7023100a9e1b063de55c727a6e81b9e68f539931eb5440d0a1d45dfd6142eeaab88546b4115813fa28e6fbb40690d7f732031f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230586efa7f46febf11a0c93f96bb77b040f1afa352e9ce7131f7a03c2c26e6f54bf03311e549b6b702afc952d47a2d6d03023010fec5d95f9a1b1bc558467275b2c8b39968b63705014bc7d1b8442eab699a3b25886dcf328817fad60152ddf475b0bc0302047c435bb500673065023100e34970024ee5ef369ce071889f7f3ac6988ef64655fb4adce3209f9d5597305c3b218f770c00a273f59e92806bb585b60230698370b80e8f7660613a07bc275d23ee38052c7a4f66a19c4e531e71cac07930cb8d34b5b349d3016cf0df98b749a7600302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e923aabac8bf950430aba88a1a33230a5f0b8e7a4347629d390d0dcd3a84d52fbc42e2268a4c4bb5c3c6e6a00885923c023100c487f607c6a28bd6abb91205bbb3b95d9fa171e7386854df5521d14919ffb8a1b98b8c9a9d27611bf55416d75d12b9190302047c435bb500673065023100e2a77090adcbb9ba175898ef8d857a592b8c531d8eead64ac84982678b091c553e4f384237c914aa2fe81a1817f9879002302ba1a256f07883620dd26dc6691c1d18fa107dd1c1e53c68558b94610baf7a4661d21ac9c04452b5fc18a8b4ad6c90c20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230748450bc17d37d701c341f201f285709a2e700e1fcd29810afe3ae2e279ec1044945e5a682819db31859bbcd749b773602302157f778a46d7225e978eef43cca5cc995860807855b3b9a6a1cc5bd023ead590ec6b1c53e86f93aabf8d9a12fed43990302047c435bb500673065023100faec69f75de866b431711098eb11ce58bbfa808ee8af99774aa934aca9785d31457b230ee2f6beee30f761dcbca0379e0230369cbea895a27a111b5c3c5acc99ae7280750849433a6995b77c7bcb69290851427e3d9b11c236499da0b1df84c109640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c58c068f6d2bafd823dd19c8211fef1383e5cd6a86a0e8fe6b0138aa62cbdabe5582ac50aecd4ea61118bf259a725285023100a959e0c1e3d9ab71f3973d7ac3014bf8d5a4b340b6cd084ae3e6a4057f739c200ffec85def267df4c088927638c52dcf0302047c435bb500663064023007c54a9d49e8c84ea364e8fe9c7879033f72dfccc3ecdfa27739151586ea5aeaa8a438753ae41c8f3489bae1b15781d7023007816e7a0b5967d7855efb94081492aa8e50befcd4844f31f8051ad30ddb3ffb7d313e717be6590bfd79d77ae19825790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c68a883256b07a20218c8c50b9d99f0ce46f283a7e772e167bd5f923c9172ad42732719f740000016bc8d7d6776bd0d7023100f7c9b34a7e3d139126233b6165b5d8b168a3cd7b1e52f8708539ad69cb5f943db113c90f45797ecd250b623fb11877380302047c435bb50066306402306df8658dd774a2f1f8a97d7e66fc9427608ce3fa6e436eec8155064a933b7f8513f7e7e819123e9a5d27b4a4f953438d0230766bcf479672e493dd2cb85ec37e5336ddc8b312f57b7bf7fe4d25210f44c134f6d7a20c4407b40037f1f8020126a5ea0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307186bf8c14b3d0795c1be22e00eef0914c0186f77af365aa6b40fdcd303b45605d436b23aeaa637c9089ce3082811b490230698db984b7794649d745b051e080bdf9105d28bd0203019ce8ad2c91fbf3d1b42c97046449efc86f05b5f6da6193d1830302047c435bb500673065023100dc12933810e053f2635fbae9e3f79ffd3018c45322713e6d380b86232775c3f7ee84d1fafd183f996e5db21003596d820230408c63c5d062bca4d99184619c308db466c98cac393b84adba02d570cefd345d5de5fb99c6510e5f37461852c59ffeca0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a0bdc5b6a970fa1608d2acfec29fd0c8d15225222f2864faf3a7fd8addd830ecd4442fed53afe69fdf68ad21b6d8eb07023100ba2fd0b35a04878ee03060b4e6ebebb18054304a31e33ef70ebaadeaf412c962cd57b9fa5a80da85ccd594d371eec90e0302047c435bb500673065023100e5b5ce3cbf045e1c4673d65b91443a897ebf7573be77be324c3878f4c56254d7df2b1566f55869c68e64dc6a7ed8b8e402301fc667428418ca0ad3d122c5af18d8ac7c25011579890a6de1b68de277c20b79b8d0bd3bfe42bbcbc3b59f60f30f07f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eb165ebf42857215a7ecfa13ec4ca14546fcd2ed970b0b7e0ea17f81db4fa1cfb25c76b58497fed51bc97e52a9af3428023100b7773b66f4a74c12f6e341268855f4b76048f72fcf4df92381a1eb46546df83129885816a241abbfef92844c790fef240302047c435bb500673065023100fc56464b69e9aa3b6c7163b2e030aca34cd21e822e6fa7d0824e72bb75d8176c9350f68fbaaf480e3dc19e671bebe5f602301c362cd0aa43175c2035ab44b931582db5b08d803bf727bf8c2d5cc09bb9a37def576a3e7efa848b3c73f54867a5dfe30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023017132c7405019fe19f327151b0b7860ab3c61e3ab3f96211b0b686575a09444bff93301e140bc9a67efae476d13a8e9a023100cc2b296e87324c05714d24cb63ef8f7d95bb6e2842f095fcbe6e9437b929babb308db78117bee9ef52f3bf77c0407b640302047c435bb500683066023100ae00c4f6981f2e6617c21a3525fbc24d20c259eeac7ea941617dd89f515184111c1783a3ac5159ba2564395a47fa3438023100ad409b6b3edd517bbec68fdd248546f0aa95480d0b38a8f896f444acb5842212a073fc2e2b6499405ff0d1c0f968e7980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304dfafddff777f84bcf0e04532e4e8d72b7066b17736a7f1e208fbc329becb076036caf3a6f9d9acf154e8e5772a7a108023011bf53629e7e6ce87c6913baaa3696cf7d0f9edd8195d288cce2be8b89b4aae0343929fdf3eda4887f77392bfa2d98410302047c435bb500673065023100e6d611f37fafd0b0f13f21382e1f8e71faefee9f1934fb5dc0d994abdc3a6d4ed2423276187aa082c6ae94f56c0efaff0230362e4e9b37526465222c1b5c9d3f37abf43abf615e66d0db4ac5a5b29f062857adec60a01525771255ed6487a409e71f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301579b72f3e2917ea76929c0feaf64d2b715bd21a1ba8240293e52c3789c5ff6798806d3da40bb9f669c456dc2b644f2e023100ce7c2892d3f0ee0f6c7443e91ab5eb3ec2a161864eae53d5d493171dd4df3de283e09e40579b43bc95c9cbad002693fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cc0d3c5e206b2b6e4a4caef931b123c90149e92a57bace26debb512cad88f8fbbd7278541e01c904fe7327df6a42c1eb023100e7f17a7e95081b28d63ef72a5ea72103496130d4bc5b0ae09ffcdb45d036abb9388b9d817c3671b9c4cc233b15493af80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bfc9f974b2313dff19856709e56a49064d8e9a8f2e292c63da40b52e176569ad5c8e4b0c49ef7a7d15029d7293afe3170231008e7a2e76879693883e9b8777524af1b266027aeb9282dfc9c06186e6f0fdaf36b7f0504f021a5170698b7a406ea001060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a0d92bf1c3e6e4d122ff7f7cf40538175bdc912548c7b8b52f9f785b5c2acfd2603ccb83f6284bc9c689d91e79819653023100f6495d9472da08c602ef8f72ded90bf4052c69f6e10c269ea89c6b268acb6e7a9ef2bc4de46d1b5cf5eb858955db0ff70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310090102f339f9ad9efc7203936aa65f7cb5b588fe4ba5fa6b15820d732905612c20394213797a5204f1700ba0ac4b711f5023100ce2ad481546a6a0c41de6764df798464f3994a38ccb0a6f97329ea43a13282885887d9dbf4cde97111c02828e888d2490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ab5654e0db909b25efc96a16a837510a278be623ee50f03bd59a5d9ebd8d071589b7a3224e10052a26e652915fab13b7023065c2f20c08b5fb701635165eff810575e387e28ed61cae1da1982fb54bac7f9ec9b89e7606ad7e7114d4959f5723369a0302047c435bb50066306402304aeba2fb27f0131ddd360d0896267032ff051df2874a59e06b49e4cd86d71ab1cd7b1565fa514e2f8c8433d3761d4283023077818fb02efe543a72bc58e75d35ca87bff1c217962db4ecfe43369cb7d563277d185cb73beb004009b749ebdbe2ac250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100950f1f61a8b21353eaf0944f2e5ed5d6324ec2118d1df7d9c56b13d8a7a0fcda08ec47701eb8b4e87439d8aa3926fa8f02303e5bc937bff930a063d1fab4c258c8a99c7e4feebac8c33cca7caae2109a4bad84f0973d781c4cbeb2df742278ec4dc50302047c435bb50065306302304e9b64f23c3522bc048d99736e0718add275dc89156e8fce3cee3c8cee83c77463462c3a0b5b61c82adedde369775cc6022f3cfbca7fb8e7393220034dbcac01aa3787b0e83564c9d14c4cc483d9416c904fed89d7293f557b1bba6241edb9fe040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230444d91e0b8dd8da1f165aa56b3df6c83704dee5887265f211ce6c160dbf9aafebb5e80bef8521cd6b90b64033890ab92023100a34ac7f0d7d659cbea7faf04160da9141f09f63fc20bd1767e3f11d14fec62952a62b9c968328c123b5fc2b64257b4ca0302047c435bb50066306402304e5500908865ee32c707e6b84593d1cf7073bb6c20492a042bfd35ff6eff8130e03de50ee81f095697bc61269e2b1d60023053a6a0816a8012783d7a73ce7add133583e687374890177c9c7e2d967927603bd4642adfb3366aacbea4e3ceb187eba50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230591d6066497ba603ed4acc69cf1ea5cb2089209226bbce24a676272b54b534f94de8905eb1c8d5f4fe037ccb18142359023005b50c997e143d6781ff3ae77615aeaf64f4d9538ec04995740e86b5739401efae37f39c9706ecd37880484a1f36b3070302047c435bb50067306502307fa771114052e572a27b1a77669d6432cf8d7fcee254b853bccc8650a3e8f9c2087cdd8b5724267733f8ed9a4ad11f48023100fb37597e4a4774853fc553297d9a162676fdd5d02ac6cb490169fe5ad22acfa11403edb314f5fa6830a7833e10f94e690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023041ef1a604252d0dcef9bff71e7376ce19b4b72ae78e8dbf999e18ff94c0d84756c7219bf8ab36ea2d1a843b5637609f8023100cafd60159a392041fe9e71147a86092b192b50fa355edfb6762804d8900740f871c22bade26eac244adc41e4fa6f7af20302047c435bb50067306502306930099219c0419bf10b9fb194aa00c8a6a782b0cc1488d77c8156f533224bba5b86ab2d86b1b5154d668be1d76e6aa7023100b873b2bfe563696d86476992409c07c62fea63b910165d2cfb9b74205b160670c0acbdd82b0a2b032c138daacab592540302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023003dc71057693ce9166d974effb88c26a35177a209eaa46bbc5f31afd3480c990627452955a0a53419fa093c94c4ca995023100e42c13ca0447ff717549f60ce9584f86075b228529be087d6ca240d6316021937e1cc371fbe25a425078161c041a618c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c592d4e8e67bbac65e181cdd3be13a448b45e66cdcbf299254bc29087dd2bf31c83b7616d26033713f4d9c7f83e09d1e023100f78b8eeccc022454f65f52fdd66b247bb198718c8c41d667bf94ca0fa4f591da4e81dc82ca54c6070a7ecb1bdf19c2690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008c4231c61cdad8626e0148f097cf7c5b6d2184e38cb116feef130f1963cdda6da4f5d4bc0e281970c643c80a3af62f2f02307babf73fd1cc9b2427dc9f86bb112be6538c55fae6e22ff927444325d86604e019880460d608ac82cd7b3a3bbed4a39a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303047cacc7a3a1b967196ac71a7c231c56d46ded6b98206a68499640dd475408597b3c10601c488d37ce263c246af4912023100cc8c71af5d71438d166d34b7bcd5748806d1b7a4b47b71716eb625ad9bd2ba472f34219479f73d8991561241ca5722920302047c435bb5006830660231008508a19b476ae8730da3fac275beefcd6c05c07832da2ba3b88b97143ec80f3b2e83620ff203dccda5d2b25c38e5ef01023100d07f9638c94ec1c5746db5e80732350ab9a617f074d4c087988de14ff1865e42b47235dfc39e9d669bdd8d92917124e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b67835df268f6a31bdf6e239912d587ee49e826d7745309cb6420e32a78cd3728205111b5d71f01ba56ca5c3bf63b41b023100db74476b668da2c2c8911316bcea833f37654e353962c06ddc58c5fb91066516f7c3f656dc0bf5365f8033be70510e6b0302047c435bb50068306602310081f59ebc474fa5db2a39c68b7ba9c556876c3b7cf20e7463b8fa51abdb60ee93562d5ca85266b0c27abf09b14a3e1fbc023100d1a18691db2c62ef518be3f278a65cd164a505790c6bb39305172544dee27e5d4eb0777bf79372e7101bbf8916ee9a840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023023a729ebed38c6cfbd73e15a0cdc487e5da399dff31c48e6b71c08d7cc817d392c7f8f453a7691ecc67a1d79428c150a02300ae112c88cc902afe98747c9b3ecfa7192e8886a7d8c81f61dd2e82e644d97507d17f2ecf042225f160995a96a696fd80302047c435bb500673065023060a04e05b792cb2080787633b26989fee494aedb27ba028c80f4e13597846c867a1e852c6ecc65d734486507b03b1217023100e8f16aa51ca7ded8bc274eb3230ff83e76eb301f24d36d45750fbdc8e50ab4303624f109cddb4142eebcd42b6a28a2a70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f237530e0668e60e2b279a680ed4bb8f87dae427ab81e0dc248cb94026b8259504dd3008949ee6d59582b28896b640c4023007f2431dc853abdae0f2bacfcd451c74fcc89f882ffe6a0b7143c2258d4c0add43bca6a93232b67ad726e64148f37b4f0302047c435bb50066306402307fe014fc1e3ae04a8fcbca06d10d4e1c6d54fa45b765764ae68ac6823f29cfac8f37e5255711031c2f9fcc5b8b37380302306c25c9edf134bccae55de7975df2b86dda45ed79a76eb0adf31aae41753cc6f2e0f32614da4a0edc2dd0dc221fbc24100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230665db15598895e1f889fbc4b870dfcaed3b91a30440096b836f9527f76d7e01cb52265ee859312b70b934b8ec9e4771d0231009151f36b9bcbb9a1ea94c366cd26ed3c9a6a0facfc8eab358be4b8f7cf300020ef78be4782fcd14c2299ac804a7fa4f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230062a761bd3d68ac5b042cfaa5dab4016b22f11927abcb1613711505b85562c676acd7277bed4d40959a2bc62a93ec166023100fa6f3eeca36fbe76e948076288ec3ed88b74f798e503c4f7ca107cb691b602d6c8936a2d2da45b6ab2342e6a89acfc7b0302047c435bb5006730650230666154940eeb3664e02dcc192c81baa248a41d92c95957f28ec3675e4cede715eaf679cbe913e3dd2c8802db95be1f75023100fff583a55c8e0c423b84c6a3f586c4e80b10a51d07a9bcfd0bbe502a7f487219722f93a0a4c59f6bc9df6e3956a943310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230601328f91b39366651e69b8dc515db6cb572d8ece39c8d8e2718ef385d15677a68a45d39bb4bb7a196785399ebb219c202306ef150010eca0633eac93173de17973b3ac6f8a0d8653e1d125ca9a5f84f879d924126b5529642f4eda292cbb27a3dfd0302047c435bb500673065023006d4cd2a1d36ec93046636523f658ffbcd844728637d806f1cb0c694683f42c5305ecaf06f99bb74a9fdcfcefc6d01ec023100b916524217965f23c4b79923bb135f267ae62143e9ede83fd80224d88e5c046e84640aedd38487235d19d79b20f2640a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c229c198fa1b0429d5b59e05a923ec03b58dfe37a60e031dd4835fe357bc4eda79a734ceb834913fb56ecd3ab1239432023100915922dda3566e9afc3bd25c65ea9a9897e77ccdd04f9a544573b4ca25c648e4b94b54d3722095f705f06943d11029750302047c435bb50067306502300b339aefad27effb85bc489887caddd068544ce438ede905a2820dda58a9a75a6ade357d60a805bfeba9e0c32b48cd56023100c892f22818f0137f8749265e70087eaa7c135f1c8d5999d50364254524ed1ac50485cd52eff748204e424e39e637eb5d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100db4a89d84c30557faa9970219f8cf299483d993c7a7a7ecfee39c726d88c311147c3b15a0a1de7497a55e75ec3c1d44f023013cce75a14666b5c0fa1bad8b84ae45cdc7907d7c23804bb66b791338fd1d4e4fc45d7d57f8916561403502bd4441f3b0302047c435bb500673065023100c73cdc1cbb3f3f640b60ffb7f1ea3c83487e10d897e26ac02b216462f9840de69d1bd0777456b10af5c5775de8ef692702307682349666442ec32c18426a4eaa97243b36fe9f46db7c03aa41655aa058c5a073a082c316a317ab6e56c138a79cb4a50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023005a8cc6c0b925c01a549f51830aa4e1723277b3d2bbfb591cb847d516971d546732956fa4b973aadbf7fc53f4ecd60e10231009c084ff686da6cec502690b383bcee6c2df1325f265c1950076289c0770d7911b8484500ed4cbd65fc775f6d1aabfbfd0302047c435bb500673065023100aae87ffa766d9d7934a7491eb784f9d5aed065a5f245cdd1d08f185ce170e0a5515997cf2d7bada82d90c05496fcc9db02301c4bc12e6bfd8627bb63d1c501580d67e795027cc4f78b44fc2034826f92c65490d23b074ed4722ef3ea4d564e9e03f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f395292d829340291b34e5ca61d96ee97cbf0f72afa6acaa14dffde134d235589177f2d02a5cabacbcc108c44be2b8d0023021af322fb655873a2840dfd56152ac07adf7d39eea2919006b92f535c403a7e3604d82f5658f8a55d1ec4020a6678ba70302047c435bb500673065023038ac21b9d4f0e987472b7b49ab57d21c3ac4e9924e3288422cb039ae5a16a14686113f2a775ed088c7ed2ec2b2386822023100a891c8df4dd57df03e7775ad4563bb6136b30d96e93018517b8731a093621df5bb22f8cfed97e6616356fca840c9f8240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ff6830cb7630c6537bdc01fbedf16a8c9748e418c6d0777e5b9df0e5aea4079b6307efcafabfa088206fba89cfd8373f023050c32487199174d4f37801300387ddb0d20fa85c69c5e15ab5d1814299458216fa90b282d2f5e9d31276e051f8315f760302047c435bb500663064023024e234f6bd48202d6d100f781a527cef0f21b1c581011edd7dc1bb114d4f404979c4c8cf319dc8e7b4f2c7a1685afd810230130efe38c402ebc605991a350fe670801d941738795e17c10bdc87f1f384ff8c7d80dca2eec8dc949f3423135b135adb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009ce2dcea28222e42a8ab395b9591bc364104878a6bd2cc6d51297e8b54ac351d6ab9a82ac80393cf69391ca1007a6a6f023100bc937c421fb32a86d6640467526e13fc6429fbfe6f195f65d089c7aadc2e8e748ca8863553b04c6df360b2e243c147cc0302047c435bb500673065023100fed0d16442ae4fe7f4d23f8958b3bbb37e695cd20cdf67bc1932721cf617aae2022afe564d1d14701d43c98da9f8f75f0230432a9f02eb2abc1911e25ee690439b3cd59674d63fb6732800b79491a7bbf840b78243934fa763020f51ac4a70b7fbb30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fbf1064c7abb098788c8298c70a36ba751eaabf7cec02ba68d6d4a72c0dc3e60c0d5d3b606fa7faf13a081483fc95196023078ef2a4388bff4fc9431e491fbf1c4e4ad22c12995726b4022a6844357211396d6261aba2de0792de06c12237f44d0840302047c435bb50066306402304c455ace4514264d921e50b433d89c532e71650285978ddf2949748237eb4b7220f5854d083e4611bd838893dbbe7a7a023029b62c69be7785ec9c0f52b65db82bb269be1b310c84d15375b31c0dc7c41e1af53bc87820f6fd564fe0ffb09ce2f6fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023008b0dd983531818cfda4b0571ab6a6dd87155e86a41fd582a9da5eca14317ba6ed8869bd28c3d374a881eeb3cf0eaa87023100f6467dd7e8cf2dfc1795eeb70281ad378eeed229b203580f60e223977781155717a3aba8f733521a900fc00687aeabe70302047c435bb50066306402302e146baf4b58f2559ec6a8494e2dea21b44b214b6d8e728332e8eccd98bfad929f38b70d4474442c2c61e9b7e660ad8f02303ff0d703acebd9c55851da9fe913676ba3cd031d4ef9da072bd1734d3e63ea635e28b26eb646e0dd90faabcb7f8ce31f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ba2869ffb8985df36bf5eeb18654c5cc4888aee4216c3a06113f6643afe22b47722eb96a16852422eed740768db3cf5e02307e4efd0c6c2bc6ff27db4c61051bcdc01a324df2412e203ba7e611e09c98e9520a2eab36bae63ecaf4c9faaed2ed00880302047c435bb500673065023050789b292b20318eab6057cf6f7a400e276cec12420b4f27f94f0e49ca6541d3d81f8585e8dc314188eaeb93cee0a1a5023100c5d7e5fccee341d0c2c76708535b01d516d0a24addbf498ee89e95fa58607a1fb5ff7b4470d82ec49020118ee57cb3c20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023023bbde7816ca7f9ddc62f34d05ecbb2d45d6a6a781c72e3db4ee5f05a354d0369a3a64ab796c088eb7aef4b4cdd105dc02310092be2a67f2f5359fb872879052e7bb576707cf65e87451de04f116b9b3dac393f8f687d0ed06b41f43f365ab6f4ec92c0302047c435bb500683066023100d931dfab825617143f82feadd9249b45df6ce583b79abb90020c62e8ffc16c7525d5fe0e241e4ba5fd7894932637a43d023100b5f41807f5159e05e3e03598a5d0b0acb9a96a9f7a5b4327fb6b944e78d8e0f643dc425176f5df0387d6b6717e1b14300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f0c378baf4355d4ee5b225d8b89fe340c95c39bb66e9a38b106f00d543f12d96f31f2dcb249a6f7cbad81e2ef92ed92e02301e254d3c6027baa82f38b19f8b4e36135c268b0310a1ed9e97c771232dab918bb3fc4a69477b6db58f08491de290d0b90302047c435bb5006730650231009c193f82f994a91fbe74125fe871bb3e8ff3a48baeefb71ca869755f8d08c67c1426d2aad910949180d3dcea2bd265aa02305cd8afe187d91b21b6addd088deee8074f93931f13fa4564b6f9b8df230032f2dc6a6fd792258dc072e6d5f505ad518a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300d72f3863a9c9dc8a676dfcce55b2dbae0af291ec8d21217f028a5f8bbd2a78082bca4c325607733fcda2057805ae08d023100db87893cef24a766749e35e5c1d408cf71f72af21e59f20710d995c7c0d276e98617505cde177cde7c1e2b5d598da3da0302047c435bb50066306402307560697c68bb644d3e9d2f1e1b7f9709e87ebfa45d4c2aa3250a0a620ae556d1f86a38c97b8f21284b52675ed7c924950230587d34a7655aba6bcea2b50a3aa82c7a572f7214ed56e7dd7ceb898d8dfa0d5e62e05b92ff59800e17054fad23ad07c40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b89a6637a99e7e127a9e287829c0e5abaf0f76319f387bcbdf73d1c456efc10c2b2f9fd59a11c8d52f211fc3c52d49630231008f5d0e4a3dc067fcb6263f0a00e9fd74ff437cea74edac4ddd8e840c9c1f80eed5564bec1fdec6f605500df57653a1c80302047c435bb500683066023100b842348500558131f9197148b131296eab0b91717fec7da7a9b42aeb93e98e6892b54ecff445b3efc70bf57f5e3164b0023100b5893ea1c48c891124bb357f0380c8d2fcde2c4431118f526dc2b62ada1d06bcd54c600de0c7c3bc2f8cc7d325ddfac20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300c97d4a66ecb24eb2eceaa7b931c9fe0b168dad008048ef593429c58378720816dcd11d19522fe1926f711106fe7fd3e023100f6698ddf3312f5c2d778af067649e41cf836edc64220890e594f0cc134262aa09600da81559c712dcf5027bddc49c9390302047c435bb500683066023100d25e192bd17edf4f117abbf41a744f9f8e7a8fdd11364c562a24fa6452ebb185de4b71930650af4acf9b5ebcd6710200023100ca0de25b5d21778c679deacceb290b74197f673decb8109e6d50813908ac2f01e2a7a271bad5825b8ff3720f1436f8190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023078614191c44cc34258cc67ae09317f4299174318b88dc1f339fc3940d55adcd3a9a06036e7b6fa4ef864924936b7283402304b181d4a6935b62b865148054ef48c43208960c7d0767bdc05dd74e276b35bb75a8da05744e1cec99180eb9a084ec8170302047c435bb5006830660231008f525bcfe9aed7af7f390c628d9fe64571c271571a80f94301ca760475c8cd4cfb8973a605eefd318e9a5b796a801043023100b50ec550e8148b38ba6d7ae7979ba26084841202ee430ef6e1d6c918539874ec1b400eda49f96221ef671717f6c1c7a40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310088518c1df37b11c4af0ddc60f0aaf1e88f47564dfb47b985a6e88fcab066063f42243ac6e6dffe9d132be556199fcfaa023074dbb931802da902293cd438e82a03808594e2e3782e834ccf55267cc33a81dddc969a56a58175bb48262fe625cdd91c0302047c435bb500683066023100cb1e49f4968659c26514e164b68cf5c435a323a97a986141f091c3e2a87bd97c09a5c7fe62631eb2ce6f07860b71f3e00231009b93bdd2e0961a0858e06557cdaa4557cd3ea5043cc0a5e342abddef1b8dda2fbd00ceba3846529d50534a2430624f2a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230768a8148d9212249be67297c805c44a77310c0e55418a1a58dc39b58b234217ac4aaec4a5b9bc1403964b5dff118e42f023043f867d9a3c0bcc43ac71346b96adec627875aba1ddc1abdc244c4654a83c05176e5336c10c2a35758c5c8083224b4bd0302047c435bb500683066023100c0b394ae50dc447d75c97a6b00ece16309c238c577403ddf443dd65eadfa25bdbaeb750c677a548b9ad095d9eace2721023100989641fdf3d72315c2769e891d8399d7e3f2e5c93f744874b9221c8ad04cd23bd01d80bf9c9a865ba01b059351a9849e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302ff0c8cef769020714820e0de8c6d63d3734fda85c3c3f2ebf22ef68113783ec47075bf650937b439ede7242ea96886d023056323ca130d431e16ac336d86c90eed9cde8d7aecea35f6ec19e6994dc1368225c375a4fc6319a9ab1a05493624e1d690302047c435bb500673065023100b63a9e2adbc10c91147d5a51a784ff909c6729f3e5ed0df3e6b75520998a2b6fb2c74cff6bee4e174807a80790c369db023033eef94039842a54990579fbfd0b1d0c8976fa4cc5056f8068a92ab6e3e544caa7dc38ba9e6e9c92c86a65649f798ea90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023070ee823eea2c142fc5dc3c585a72b2d980955a63cd3951b768b45eab9868127e0140bbd2133d14e7d3fabec2c3100ae4023075af726e0f89ef22eafa2f8a4e3dd1af81d85e5f0662d48b9436d057be0751466cd8b000e7eebf20ee34a37f1c1644aa0302047c435bb500683066023100ae0b7519610a4bf35b92248ddee54748c8f86a8188dbcb9be6239f219ac51aef86eba542cb25f5542cc4afecf33bfe0d023100e73bbac732c76f7541b3e012df78dc1a26f1b06fcd2bd0e0878decdc75ca1c0cda92293b5d4bc3c8bc0b20a9ec492e710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b05d28ffe4524201598ee9cca87eeb6191e02362bd10444f4f81a70b0471b1461f7587318c49e6ef5f4e7110ea17117a02302a9aef166d3bb347b2b998b1a710a21eab28c27ae7e6e1433720568bdc34e6365e5b2e57daaca5088c057b83b9d8dcb60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c60eb288c526a50ed83cbf723b0784d70f29dd2e61aa926cda4b3fca7463299c8098c48d9f2a494db9d7fae1b5dd3751023100e506f96dc5c9c23ba8fd90ab05dd7354bf2484ffc99e7443b67b7be883bdeb9dd6faae1b7b14bc8fcf9d241ec377d5140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e120b9fdbe91edc114a83673b1135953a2a5e3264d0fb348a09647185f6a80f58741e661af7e52593be69c66ed462cbf02310084b1ff0c7510c8b4c38f0f3054a0e39ce1a6a93fd8c75f3dd018af9dd15b38ad2783851e0d5674a32477a3d4dae143440302047c435bb500683066023100c720e1e37c7e37f843b8bb836319d0d5c4e78347ae97f6fa0280d2a07fa6c47833e8c82a6392400a04380473e89414010231008c57f733ba4c9ed2b1aa2a85ea4eccb9b627179dea6e2545938b2a33d203a6260c697a595021048ae28b584952d536700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304c6e2352036208383669570b54e849265e397267f12dd75e409062b6f95e7d8140cf966d21093be12fc7724130380162023100e550ece9e5bc3174ffdeca2332f56bb9fb7f8c0c1b3820f85ddbaeaf8c1695a7c1143921e824902df59b8350573683350302047c435bb500683066023100c17e15b05b7f899f0d8abe657f70e837dcf589ee7828f444af3fdb7b8cc2359a54f79e7cccd07cb9087f5ef9d5ed84b002310095fe7a001f64e184abb1dc48247d70bdf9fca26af26b2b9a8b584f145962b408f84fda0aed2051ff56d4a220bef00e7e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230645e57a9b529a24065e4acde8c906e297bd28bffb3b4eaeb21d6ceb0fdd470e4f5784788b9c72608bf32d853f6930fac023100a8c769ee7faa2eb8c3c6c21a1b6c5362f19b9a1c0f6c8758ce746e7abb4abab4449145786a10430c36b75bdc1f78c46a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310093ee3b07e899e002d922ddc3d1263fa31a366da9d91dba1f412d62462760156041288cad74585c72644850ce5ad6b119023100b895eb3bb7aed48f50b737d8c28d69927c0b56ee5ef994af436884cc35219aadfce19eaaab937f00caf93294cc9580110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b60c262b2100dea8ffd68152bcfd40d0ae7ab1bce2e1b68d3236ce03511e49a9a177c22665a1c4f4423c731663447f0f023100b9577dd2278d838e7532bac6a5e1c612a551137962ccd24137060c7819260beaee642d5ad007f05202aff696d2782ad60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304d54ec9b36b8e64e9d337b1efeca5b614050127d468c1e406d8d850d87bf9ea289b24ce6f4c104abdf5654561549b4aa02302e9523180217f8f93659801fd0694f60e91f5d6928cbb14f1251c02acb0342368ae3c91f94e0de767e21cfdc8ee88ef50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310099054faa0a0c71f6defe27ddeefa2a4eb538b12a5e7187e46e2eb191025ac983f8b07dc63c848da5a1a8267d6507c58c0230126a91433a12d1b3e467a6d7a1de2eeab371a7285cb010f06f3bf9a97a89141e0a8c96ee0502cd3220f445fce6192e0b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307e7a791cf07634f4e6567058746ab22f57c4d1a3da16fd8452adba35f1e5020c1886aa52725082d01e87a188b9722f33023100c2e529fd0276853ca8720d24dd67f8dd0bc722950cfeba82b8373945baf4a122cc7da2367ec50742c0dc564f5901f6bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c590abfc71f976fe38ac6bbcbb3b40dd8c2b96987a49421b8334812de54c78f42537df67432e82c93ccbc558d65da560023038a2f11e86332e9457dfd35139383613824723605e1bfafdb9886fe7a7e765540dddd6ce3c208e07579ed3cbf493b61f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310086241eeae6fd20fe91d19ec1313277a9b0bda362a6f0f47bdeaccb663172a53ca8a423a5cdb1045308e0e4247fdaf42a023100b3749fc98567dd72598d36013efb9d55ac723a7797616c5aa30131854965204e1e0e1234352ed8cde81584aac915c9fa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023039c56d49796e8557f92bfe5ae551eba6bdd02d679a67e2a189382175dc9a3cb2a23d4ecd016ac73a6b1f37dae15a369a02301a98d6760ae7b2fc9b849100076d6feb4461f6d689db4cffd0cb3700cef54490205769c7c4f6a24f334f105c766f59b60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300e83fddacd967e376b7214a20f31a38e53399be057eb93daa040e068a18e8eb1cd8c198d36bee4bb64114df06ec5c7ab023100826e819770253ab8eaea5cbc3e14356e7a487e035bf2cb17b9e73117396313a958e153925302ffa9ea4c46693a23a6370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230523c04755e4c5893bed1a17c8f29007d64128ac3d85046042139ca8565912c5f61799e4f0dfc179ce27ba3b94b9706a5023071e4dd257e6b5674157a8947ccfc37ff89fbf0e0f9800e592b0415c1aa69a8936ab14ea172d95cc61d3701656ad116770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301119667895db917329af6e52394ff97e99caa2b66db2008d3dd456db6af18be51555780ed6c97a08777845db1a68d95f023100d622a1dfe5429ee037768fa30e87711ec0a9393cc6f972c496466e5d81f696824c858d7eae9905adff00d8fdb8664a0f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100abb697632a9e2b9a290268db016d85d914b360fdcf4d7f8dbe7cadd1b74144351e250662caaa6a90e540f6eab9de3e6c023100e2a7da1e0f85014de28fa59e642c1ad71ec5a393d6bcd19dae1902a2da85928552da7a74ca2c82a0d135e45d453b67250302047c435bb500673065023100f76376a0f1f1e88a6f5a9999496cec2beb7397259b5c602b7c06d961585979c80ad910491ccb58daea6ed0bb9e51d7250230436082af19de84fcc23b342eeff1a7f8ab180a1d8ee5bfb304f02ce9af341e2da06500b679781dd38b7759434507b3740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302a515a3c7e73cf5c354a92ce6c5b1c586393c8f74fa5c7b22ee37d4c3c63b6f0d8e5e1b81528db3bb64e0b87c6dbde6502306792c60620a2dfc748bcda0b13878cdb616989a1c347f2b69cf85f7c6d0fa5c89a2876d8d79c49e16295ac5dce1b8e640302047c435bb500663064023040624aa316370d65eb335edc3bb4e912562eac61f5649b56f831be38e5160cef56a5fa26ff15e626b0481b2f25a95c3902301fe1a427c02026a9fa42b12a0519567e6476182143092d02fdedcf0b904b315763fe7c8c46181cc452831eb7e4652f190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230329c86e7d86c3d1397e236610784166f32fab4cac5636a04147b9167a04eff1e52334a911a1132cd4a2446c2c3b8f1c302307bd9b9caa2c16d6acfa2372d437bab239634e06143e13c6fa5d2cad2058380ee24096f153eb7e988ffa31862acbb3b830302047c435bb5006730650231008991c78be4612663372744856df9b8c3ce2ff77f0ff94d33b96be0509bdbdedad3362df0c5f3169ea29bfe11e3780dd3023060d6a7bc343e814e23a6d197fdacca40af05c26dc4c6c7f91fbb980edb67c41f5008e3356fbfe4781344d2542896a4350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c42e387a39b76420a2e85b0f2abd20024c087a21801320e34fa33ccb8d4f70f5a228b157b1711601b374f78a509731bc02302cfc66782021d90fa598111f7660653e8fdc0aeed9347c9217269c212ed110992d7b96737cb148f5652d424cff456b710302047c435bb5006730650230549d9c7aa3e78181604b5b6bfbc0b2ce0598edb2e5a788b272e63dc5afa8bbe6078ef1ea267afd3bd97ba470def75615023100b10f9f63a660c1f332a39fd04ceebadc35bc66dca78b63c57a59366c44897180e541a1c51353f384e003b832c096e3a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230463247df65bf9f07db796d33e71bf7e878e8bc882b08baaba027421df25dea7a0cc8ccfbd100120b2ffcf668d972aa4402306542fa63fe948c92b889408508e4500d6d52024e9e75e8d25d4a0e5782ce56237b93da055520cf5fa6c60df891afa5de0302047c435bb500683066023100e057349d9f2d963dbc01d35c32b659e88377ea33bc625357fd611048561b53306ed7da226fe2a371ed97fb8db36dbadc023100e90df26eee8054e3a8b414b756a222a67f228d2cfd75ddbbb637d7c30086ee1920324c1986176b3d429ffeddbec20bfc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305e507be37b3de1bad94c6d9fae83c19608cb06b0409b10910c9ff29fe80f829d4883c55c64935bc70c1590a404f462af023015b3746eb7cd76253112953277cd6cc9983ae824022546732f5df3483916f2c29f2d6d77161b0f79ae6aceb58d840c4d0302047c435bb5006630640230087f03100a46eb03a8c7d909c02bdc50f869328ed14acd187f24b76a45223f86e18c45d0c57ffb0ca3e0e91a0c5ccd0d023070f4e19bb7315550d54153875a9b96d9639e0aed7ea70d5ae127fb0e8b9e310f44c0c32cbc3a6d8c215b9f6f437149500302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f6dfbb1987b8df09921c383df53c985680ffbc39dbfa90690c0dce7824e0958942e9b69e99a27634c911ff066080ef60023100a319206740f1091e7f7254d42c9bd40b8ad3f85b83b0a62076348fe8b2abd6dd02a4b831a16b0f96780704c7fb568da10302047c435bb5006730650230142dab0cfc146ab15117404f283f19c9ace76abad5d70ff895c381cf81b1de06b110dcc01321063e4dedb0346dd714b0023100876db8d8a7bbec202a02e9e1b0de1124a887bcec4880cfbc358228a7211fa57524e54789f8be4915c55848d00373bc320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100df1b1ee4a0b87c50e7534d073d5a4454dbef57c7fa3507aa72a76b6972899d942f7ec4a82dcc9e8421ac46a76debffbb023100c256282446f73343f083c79f6f9c024012154cfbaa7772f60acf4309109b192908d781b30c5680b6cf50cd800325de6e0302047c435bb500673065023100a16eb3192db8e450c6d18aab7a770db16d6b1ef6508e7445ce8e94c091b9ec53503ec524a6214ed2a27053123daa27970230463f8efb02c6146f4aaa8c3d5b5dc3c17f55a4be7c9965d69554d583713327c11cd8fd46c2e6a75445786906ab6093580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e070470c1cd76e9ad28582f5a15dc020481dc59eb0fc13dc0e5e5eca7ca89188848f7c4856b2d23030eaf75a6f479e2d0231009144364d56adaea5cdc92312cf549aaa0321a1e1f9901f89a8f098e9f0216106461cd55842be20b5d61274f7ed15beea0302047c435bb500663064023060f20386b0ce4ea2abf8a9efa05e63749a39db2f8fde5c0ee7c67b245e63e8ff07bc2d16e9a1773021f87e94e8948a8202305682b71d2f12c2278003ab2a47ba806d49b700b7d91f98d375eaf654ef6a9bdf8022f9d2d929bf5827b806d938768e7e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cdc626c3ad13dfaf7aef8aab06883cf7a1e99ad7db4d173865c75172d0153247194cfb5098961822e3be60d2918e9397023100ef8e2a973fd89ee9f732f06bd48e94a6023614f51fc8c5b054bc562a84b106e0d09918d75e0feb0eb80e2b46a4941e490302047c435bb500683066023100f9148159ed43ff560ceb83e4fafdbd646c7463ee520cd2df6581e673e91ef69906c5bdbc95b7c99b15bacee93583be84023100dc6bf1faa34faff35cf79f4d3c6172b34af9dab337fb1a03fc077b2a964869540afd6acc4adfa2dcb95a3b0f2a76bc390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304e6aff3aa523780c72c768be475db5565b64ad9425f230fc5a92bf4d8dce42e32ca5599b93f78c53665cca0b5f08188c023045efd5d5a430bfc1e3ebe04eddd3d5d212c6245b7062e1997e70802d048f0ec018ee88e932511ae0a24d2ffab86ba5e70302047c435bb500673065023100eb8499f528e4e0831d08b88a8963122814fed0eabd2094fa4991805020a771a378d4e3676478321482044a44279d7b300230386bc8845899f05ecea5d7b9dc17d00adeba53d10c60d41ee4873cc788212199cdf7b8c5618510686798c188bd7a7a260302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306359a5b3b784bd4811d96062732485d646ad6fd937f45c9aaf99fd7d5363aa64e19bf3585ef400e99a14266fc17d6f97023064d658f79d53a56cd9c5b24adab563bfe01f5803ebac6542a6e80aef61d0c84d2d6580ef310e55022f6aeb8cef5c088e0302047c435bb50066306402301d529f9e13c0c7458d75553e02e86fc1fc291e726933851bb92271261e106bbf4b918561cdd1a4a6497c637e1a741c18023060d5ba0b4f2ed48a5a2bf611d48a0e2203c09e98fd4f5981e9409ddbf318a307835e71996a1bea37bab28982f57d414c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304debe339254fe95bda0b044f93e715b755d795e6c53c1e1e815f276ab9404a295b2962ba1a36fa61eb0e1a81a1e1496f023100c97f4a79219bdb2a0573a5e5366cf285f4f77c90db322cce04fc1667279903fd7d14454990123ac3ad9e3fc50152d7500302047c435bb5006630640230523e9a886f18bd0b96e9456f62d5448b83bad5d79487df712b3f42969519b582ca69785957b0124d179592526731a72c0230562463b7505bd3d3d343bb2c421bc9591b2ae0b8482251f7d389521b311b6782c2f401650a6ddf7bda32de7d3b63162c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c2e985ee3a206210b1e0e6e258974bc94b4fab1073b68ccffea697d9e14d1725e61833cdb8865f2007f77d83a76ed21c0230710201c7bdac6dc3e2ba8519901f07b085d40749c7adb9ef9b70a117ed59a51653fb96e8890bbc1228cd7759e3e543930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023003130f0eaf34eca39dafcdd815211509179ea4622bfda5ebc7f0e56f737b1cb2cf1716250d767a8452d9425a4c290e5c02310083e64dc61830fa4935fd862f52af6d12bf72f2a878defc7feb75f8335f463d56eeab7c1a693b3c907ab4b9633f1840b10302047c435bb500673065023035d7131e3cb86dcc1834317c292825a0f0427d1d474fbb5d941fb37781a3f2f3a3bf3d5d91b50c95ddeea7fc7b98de6c02310082bf0b0a313a405aaf544ff517ea34afc40cc435efbd37587dacc959273a6bcc77ab1b70d5eb7a464f23d2c34b6709e40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b3464b1b0e48cecccae71b6e7ab0947cf8438f358514689fb8f8a7167aa534113973e6df69260c8b332ec6275f8dca54023100dec1df4a0291b691fc512c63844b6ec7f3b980c1ed9b9c54c6d0fc51e0b30e9969bffb1d6c36b7e3016313dff1f3c7fe0302047c435bb50067306502302a4045d5df9a99490fd5291573fe8f36d63253905f401058e0912440aa399ff5e13038ddeddaf85978fad6d11a8d5651023100b29efd8299b26bd28463045b2d453714b0cf6afd6c30f16aff35a8cc0bd7dfdc8d38400d52f3c18c416af2db9c52658e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e789d568a8f278cc15b393806e633b693c99c64faadddcf78e7a96ab4696e9e89a7c2984932b26f00bb107433b0cefb4023100f50e87d453f9af2800eb2b4c8709c6abf9e3603edc7e4f7ba89f29841989a169843d268291244dbe250d446dbb9fbb050302047c435bb500683066023100afdb4a9f8f950064258f3f2ad1b4d4abd7af5c468d10d0d5ac6edf633096f3d3a2234af128775c1421e99ece75f4750f023100aae71b38f24d827d00648c717b7bc522f69d446f38bbb918dba18fdd00d8295bf80df156e895c0846d9543164ca4653c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f163c12eacf0334a9fa02227fed5188b92b349471bce39d37ec5289494c6be7adf9b5a7a88170d4e9bf4743acc62cd1e0231009f3423cd40a7b3f3f97837faec5847e88685a04cb2f7f3646a1eda82e4a6489110e96e9309f6c4ca8755dcfd195d84270302047c435bb500673065023100b4907ca82589dc9318e53a165a135774d2987f5c163a94c292b9fd6f2a85de631f177982d2a73ef4cacc6f6e6e3203b702302cc16b6b492117bc61687e9cf79c7c44e1b12f64836c0f5a5169058ffeeef2f427aa650d53cd88a1a6b31d110f9b458c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304beaed3aca02cf9a1da0d911536330c56c0ce3f11e74da446a56a434fe5405a155823fda83b7cc2468dcf8f8878bb7b80230674aa1fb4f5b0bd73e1b86963ea42d243d472c35fd585420e36ab6c2c5d42631023a13ecb2f2c4984d98f570181282360302047c435bb500683066023100d04c1fad3261b67b7bed248fb539af8b7c08c1408f8b92d626196452b4d329caf15795fbbb8784afeaa76ab3a4eae463023100dfedac4642279cd69110c78f082dcfb253403dc1c6dae88120fb0df3073ccc141a8ed7d78ac96b40eb70673f2819eb1b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d559ed13f712872c0da044f8dbee381bab9fac1afddaddc18878aaac28d111262a371e124c28f2012b3d951e417c6ed00231008d3005d215cf63c2572560c04ee8a2f37994457fc489ca3ac7c3521e9fd96a35028e2ddec866a75efb9905bdc4712e220302047c435bb500683066023100b88f46dc15a6f2b765470aa4181b9237219edec45ba42263cf9b99a0ac367190322819883b1f2cafe1642b17da028bd002310090305ee1ee1701087e081cfc177fab7aa491c90f21f4ee7387ff2a9e83a067345be3b84cfd0f6f0a7d6693ac95d7ebc50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bdcb6235e57d13eda84815d9447565e577d07c481b06dfca86bdaceae3fa5d03f8b2b1f82871ac994200f2368a9addd0023100ebdb6af89e8ca340914f0542c2b7af21d61a48f8b82c03187fe85739dedd4989515dd01e88e3dc3fadc0b50e255cc37f0302047c435bb5006630640230391308b9cb68c433359c3b21a15b128b9aab12829ea07fadf6803fadc0ad3803a65c876b3dfe7fce6b1f74191aae6eb6023053fc2add95b1af70198f7bf08c6beceaa5df6ef7d87de8aff735788dbfd0e3c445d2d2b9de28e7dc4c1f9e6d648d6e4a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230269fff166bfb2cc08584b1a1581f3ae3d97b6ff75d5680a449a05a443578d521350ea4aff89dccb028b3f92014fa8e9d023100be2598e9a2763fd48f4691a052592130899436ed312fb88dfbea227fb718a4145b634b0782b79ecf3c4551b61a8cf9be0302047c435bb50067306502307712261e6f3156ab01c85e2e3565dff3fa985abd34d75e70f5ff3130e2a5c14cbb02c313b2ec3e2bbcb5f3c08857547e02310094203a0353dce00aa6d30bf62f63508348b2504246b30f886dd043a30c2721a7926772bc43cf7ae05e0de5b082b9ba020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310083293bbc160001df0ec768753df23bfcdd6aeebd4e6f0b72db01311cc5e83ed03a4c3616b11b2355fcb9c48976196152023100df062787c914176eedc0637b83f0209fc414f9de3f783788f50ade4afce97cd02f1a9897a4fd7e387b1a95e97f46b9220302047c435bb500673065023002f5cff1f6a781258ee9e891cbd61738296298990f10e5ae42e1c5003346933f2b206e7e46e4a49edc34a8b26b4ffb73023100a1c1b5a50845019d6040beb55fa851d337e1fa186f84f97fb8a07f7d2ebb359f2cf5f9e53634211ae8b1125ae44abce60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023040f97ee00aef770ee78073fd3af209e29a498bb326e214f6ca4c38a685e532724c4edaf856c8dd96486e350817919ab802302fdb58d3327a9a93247074d56338fd70a24c35d6028f631675064bd8916af5553276d5e7611f2dee7e36d0c1fe5d92f80302047c435bb500673065023100a3715ebf31365700d32a28f915b959b3cfb43e435cd2fe0a9461e172de564d8535743f246a1294c5c09c8808fee923c60230581ee5b65709017f74de5b0bd1cbe4521f21d73f2beaa1825e8a13fe7d387273ee7c7ab2e366a7cc4cdfd3e26d7e213e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307598fd6249e6c30de8da38ac180d1f275f98637883098b83208d85bf4131575361cce8319a5a57b72b693ba952f54f8d023051df5880249f240107f58063c32c00e15061bfc03151495ea6b8b218155086d8d6b43b836248f09ff948f7f8f6bfee580302047c435bb500673065023100baac22004e3939d53e20298a3d9ebcd73f38376cfc18e21cfd08e43f325e980f1425e49b952fb43dc58ac8713632ca00023002903c235492dd1c5bc3ac096ea57bc5a05693da2823af13c309b79f603092498c58925fe9866463b208f70b378bc3560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023058f068a04fe01e8f3f1bb7b022b178fcb41b334ab2843ad98799b0dc8e0bc8b6cc7198c08d5d21cb82d9aa83450602ca023100c78ba51450006a58d057e5b0b33e57e3f92e2bc3d9a3c4f5f348d309b51849bdbf3c13066f0945dc47e6554301ece79e0302047c435bb500673065023034dc7e216ebad2a1dc5c62f6256ed28241f71276a45b89a88504968fb4ece7042fa95ffa3256a020ae0ac288b083e979023100f716f7a09a6c12fd9a75ec58a76ad5592551b39775eb64f34ec7fcbcd942ae5e64f752367bc2119f0e7be8afeacf7b4f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100938710cdcb046cee396a911039a42df2e3a0ac68a6046fbe8b3be8ee33c88ba8643782953f0d636b72196909b001afa5023100807e2730731f8680f7736540ea6d22b0b6efc7682465c981bd8d92ecbaba0faae6d407b9befbb6cf036907a1f1d2fff10302047c435bb50066306402302256c8080919cdf16740610714920de2e40609772d70164e975329192c78f9515fbfb84d61d09024b2055bd8d0714218023047ece9402056e4d7032db070bcbea4b3eabc977e884a29614afe8012c97def73ce8f301532634c49c61722e2f1070aad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d268e5cf5ae9dcb0b4b3bafb948988cdd9134bfb878c2b4c38ce48dfd31c7a530b7f3bef9530e6dc1be7357899a231bb02300223b5eadb153d2d208c6aec009a678226c60b293b478346933075b26b6593a1c5d127d30e25a667fac14301ab92e3df0302047c435bb500673065023100da10770058d00fd370243eca6b171bcf021964d292b79ce0bcb785f41b8647998d35e55bf03f750ae8d791469e25bb9c02300fbfcdf74ca1cba079fb4adc4387d4f76933f7b54777b5e1da8faa51183ef6e15fe7b529a5be826aa8070ededd8f1f490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c475e4b95e841eddd8d8f4bfd6b7a37947e9dae02e23c032026ea4480e52c270bfc0bd29431505afad1bb7e29c4325250231009c27415a844df660b1f931ac417822d025cbc5d664dd52d1580ae9d017eb11b0ee0a60629c5e15e6a30d01128079dbd70302047c435bb5006830660231009360697674af13f263e7a9b2b7ea8af2b933df10feca25446f468e5b465c97edd5756a825129ec73ffd4e39ce414df57023100da5204fcd8ef14d12c06da00cae026294591414ceac29fb0d00fd4f0f05ef14a28fbe481b0124f8012c714c4dc3ce1d60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023004c912a770f5c6b0ddd3825f2f4c714d317b35462fda8e21a54d134cdfc93761af3f11fb8151e95a8c85303f0fdfeac60231009ea7862ca6932a944a35094dd75e1d156d9fa69c134d88dcc77557af657b0dbf6c524374f7ba521506483355baf14d060302047c435bb5006730650230409da379cd9a72f7e168c3a401e5f76ab7bc820aa5dfb7f728a51e44a902428099de7bc90ba9211af8091d0d2f8e8e5e0231009495afedd4545938c108bbfbc9bdcbd0a1b40c171f11e503192a40de1fddfd6a1d4bc827bc9d979a55c31791e479f44b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100debfe732a739c1a29dd83606977ef747efa6fa714f60457a65c378f5831f671ead67a0d8a2aeb195aa0d5c56d9042df40230021e24cf6b05adaee996a449690905c31583d536203b3b8ca4bbeeddf0c08fb326b663f612e3c5aec7ed5f3cb468bd990302047c435bb500663064023026d557b47f0dcdbe5cf53cfcf8a82c05ea4d0c26ece1ca6206d62c3049fff5188dd95f1042289c0771f2e22aa1e7653802305884244511805dd8673e647289c46e6182f306919875d17805ea5ce4c0657949c5f6402e7d5e7cbce3a30b7bd6f8cf790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310081ff090bbe660cef4f552822884f694a62e499fbec268a5bfcc18f0be6182ad4005546e7e2c190c2d601c745d9fa0aa202300298821964f8f4f77813dea11b8b385ef75897d528c43586a2b6ab9c068397a58ddece8000e227b002e37117cc9e18690302047c435bb50066306402300d9bd7092d663fabb74f266fd27c7e40eeb916c3ee3402e19f7f64984fbdec0120051d8b10d5589396339b6cbc81465902300aa2efc863ad67c698cf814fa07abccbf328a15e9d71b7b0d5b895929d05861248b0534233d0855dc8709960caa0bed20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230071e5fb51d3f0fe9ccff715cf495bde6deba4aae91f66378e38735840cf3fb1c713b664ed7f8935eae79eacf490086e5023100fac19d32fcc8e0ebfc6e8a0e16500eb4f2526f23394105ecd3916ca4b5b78eea024492a90d73ea7f369909c0df6a93470302047c435bb500663064023024a02036c71b4158445b80321a426333305210a0058247ff8a09fa7d127d3996f28b0734ae9496e02ebf950918913ff6023052f03640de4cf1ec1f3959f8c109fe5a7d0e399c5203ba27f672be8836dfc1a01dde4f0baf07d01519e6318f2e280b5f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ef94e1eeee30e6337a61c7f3fdf59b1d7e1ec34325f2d1b332cff1b406a58a34e0605f548e09e42c630e3f2fb9df3ed602301c8010e5edeb5a82ddf1cb54f0e67451fcc9da0629defbc3be9e58f955a4ce2c1bab0f304cb86b06e08fa5cd447b62d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304da6980389a7fdaf55e1beb2e41f552333909deb15b25d2704b42ea90046e5fab86918909083a2da50b5477ad8ecef92023100b9d19a4d08eb92ac791d5febc11c3e981cfdf7801ffe94668f9cfd7b6ec2b8a24de818a2ad471a677751c7c336a248a90302047c435bb500683066023100b5a1ce1e37f2aa1a061e0504db4984eef9df84cf2fe2118d1f1506b4e1c9911900811cfdca83ec254de759d195ecfdba023100bf8061ee7d1cef74ccbe9b91c14fff6f0cd9a1e52a65caba4e0645c811cf6bd7fddab3fdfa0b9e9a64ff25616465cb700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c37df06ec1504f36bd3719fead9596d98e140d2725fce7713a807f6d08cf98c95d2bfc8d441d6623565bae0921c4c869023100a933fd0cec3fccdfca6d34cb7433c32ac8158ee0e54d56ada14abe0136aaf41b9c4a94dfa2c328122961f8ea6670f5210302047c435bb500673065023100b8afb70f9db411a004b38b700edf8dd3e715bb34d0b97dd439cdf2efb2653dc6744bb35c33d9a9d1bf1a278dc27631ef023074f8b6c7f7d0fe4bd9535c5cf72c8bc293d141d4c5bde08a58a660a255bbe6e168afbd8ce2ad8a5c0240a14bb96f3ec00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023000a4a1502b081cef3bdaeb6028e352084b242ec33c92e890c34c9a4f25697dd90e0f46442b6b5db0fe898a2dce17560e023100b688d9167c54fd212d674750a8740d02f96ab2f7529704ccdda7537001561d99a3e7d796eb78e464c858f12393e03df70302047c435bb50066306402306c6fede55a3e57c5f1dfd3d3f2b4a4c36f3ddd8a93baf31b8564251035f6ae220962b8c387a6f40d171ef0ce0bacba2002303d367809b1aab4b5b8befdd135fcc6b20c9a4de1e7e5f80ce7e3feea4f9f7f2718d278b68a5bdd599752599492997dfe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230091a894106579347e66937019b98f57b748cb0e5d6b043808a52a6eca182030e57e17321e4c6012fb5b69d93da82938102300b3b1dfa89210e83122cab28763531a8c7427062b37de7dde617177e1e670f1063b02a66713555404ca616da89d9b25e0302047c435bb500683066023100d6f2eb5b0e51dfd3e2242b0d0a87820a8ae39130d05e98760c4a221528e8f5b04fa1ed4d8ba405ddd8e8e101ff5493d00231008dc1e64ab3b381f03ab762b503a7e40ccb24ae9cd06a744939b9c878e41a00ca2029529c409fdd221f3badc36d1508330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023050e14ce9daf0f306ace311c695571f95f46fac2523039629c8c18d2e766f116b40e2ab7513e0b04d04cf357814e5044c023100b8136233ff9f60a10407738c5592bc63da6e8519a5b78ac9a1dc62df681539f65bd687fd944d3cee1d31205ec943f02e0302047c435bb500683066023100d5c8cd0143e6d36e478c5d7277b955479ea8c4b19da973b97f6b98080cd1bdc60a3b3dba25091713ff9f8fec112bbb72023100e62c4cf3e56d6765370ce428bd9025821c29e42fc0c521ff66a5368b25d06e3011fa8fc4bf003f4200f1054db1418dbd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f9ade4517191f7d9095a318bc307ac9c37528d30228de93a8579fb50dd002d32e2694ba10fbb5b2a58030486b38f74f9023076482e4adf0b6de0fc683efcb6f127ef01d9d773eb7c2cbb2473f30e7a561ebd5a34bf4d90b4288051527e0f2212f3e20302047c435bb5006630640230346ef6d3a2aadc05d6711b00ff3dfe0c7cba946a1ef8ffb3eedeeebf532154c00175f81fc1dd42dc46cb675ac6ca66bc02307efa13c778165f9662502684284ae4e3c85e4c5a5cbf3ccf3e3938b7d7afad011bf515545549206a5b6cdd8b2d5363f30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303875a492d190e0e1d1e7de483325cc8bb855c5a9851b29daacacc58b75e27fcf71c70e1ac20a61c8434e831aebee639b0231009970b1f0ec9a2fa5feb0e1f3bed5f20e950d64bd95c6d6914710fc0f68d0017abe76e124fa6e50dab8a64e594e0df78a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230646d0bf91e261c4f40140e59df9d566aab2549a3ded20f74f207af5c675dc6c575162e7626358bba74c1698241c398cf0231008fce4ed79de0056327d300ee989049398422efb2ed1832c133ef12fb9b0984fd3406216f3c2e4efbf6cfddd555a5fe570302047c435bb500673065023024d506e0ece4b397022081f0de821111ee212058172f0cd976458874d3e15c7983387b39c208eb75c3a480728b9c2686023100a0a7c66b3066358b9607d35ce14bbcce031e180f5ce9ec82e16b06a788f59d7d3bee141f4e5dfb30440dd3417a793fed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301bb70b5b4b079c88729d85a3631bdd354430cbe3dba8042b45113fd01480cde6e71abec032a404fc9d547e238c7805210230118fe1d931d184076b76c79597b620111a36490317f4104ce3b309a6798f99bf831f4de7485f2713e96801b87b67e31f0302047c435bb500673065023022041826fac90dab094f50d7627a133434341ca82a36eca931951d1bb434349e4a69e274cd6f3a6684022b1e3078b637023100b2ea1f31933a22ce5dd25fd12549e2b3b2ecaaa7e46cfd8d0e004723595a54eb35e081df7fe4b71657f58993e7ecb8a50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305bf7061cfe28ec8ae55458208cae333c9586ec3229a3c4faed6db410d5768dcaf5eb7290544efb2f865a9d2253170ef902303688c3fdfe241f0412b1b96a96b40e5698bdbf783c48d45e75d3e44947c8c69b42bc3aa4521e7974889ca66e1bfc91a50302047c435bb500663064023012439c00b0f8f4b52063afa6f455d9d8afe261e96b3bd23396983b9058d85ad5faeb217b1937dc3125abfb8c1eec334902307b56b9d113ddc75aabb214bc27187e2196538e9d13d26ba115cf7c6bb35daf1e96fb93eabf3915044e9d7685a8ac35c10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a6280df53d0abea5bdd17a15d5d2e0d53df868277453bc085475bfa3cf935278507dcb13fe49a99e0f1fedef4adecee202303a7c4730f736da166bd077abcf8ab8c32e3f9b08d60a5a6f37580f4f242d4980ae2e8d5303b9434a6cdaddfe622b236d0302047c435bb500673065023100a7db8454dabc233cf73204440511db43b723f5333c8fc4b532c7fa0ef3e90022bb7fe377e6ab556adb36aece217468f80230393a0d1c0cd7564130edb483e783eeecb077861c91137d76672bc233c1cdb869aee7d5bb1c39a05ae29ec7c4e58e18870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230252724d4d43b9e39d0d4a05b012d9c05848808c5dca8a239cc49e7abb7c12ba7832d63f31af51f2ba9ee0e9465502dbb023020190d23a20d7b4a1f4d439ca6981108bdb6d8c045c359849844e15d0f201252315b2d190f27fe5db2896aa7734741850302047c435bb50067306502303b1efc5b8454b586b7bf96012e5df69e917f5f8ccfceabea27f0d91e3d06be8c5cc5cbf2d56ad8a2e12df4573beebb99023100bcb3e1064a0a0ddd60128538a9a30e69380510e34686ab05cf2f5ad66f07ab36a4d276b78c5147431145269da20acb620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009b6f0b0b222262f854522047e00e52ef5362017851c3d7e5327a0d4387e14416e4b8e510f465e6ba32f1582e93fb88da023100ecc0d89a0d87c995bfe772b96492645a9cd9a523b113eeb74bcd14ffa5ddadc789f07794876534022683613ab34db4930302047c435bb5006630640230632e008a7eecb080af109d462a2605ec90d86faa62b9119d811944d11957e5d9f64f700d5b6e079dbcf92aa8739130f50230317c9e9336ba601b7fae617a15868a8d3ac3bbf5b614c19a807b589401611ae9ec2e00c089fbb17f3b32d4623977477b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a9bba03ef6b8f5188c4cb16af15f50f336a65d4d55a935a03abd16d93613e5fd1cb9992361988901cf984e58fc8af1fe023062716e7d31bd27835676a5c7c68f547b88f06ed4a1fd82d6481beafe870d8ac26634668778ea6a8ceed9b8c1a7bed9a90302047c435bb50067306502304cb71946f0debab7929f9f2698decaf610f5ee59eb5dd6f953fed0bd64bfd7de1882b45267d72a19c552472f736a4032023100c2b900dc8830d7ea327889f0b9c59e8aff98766c8629ce48432550ae81d511eaf23be9bb4e0b7a1194a8cf7d2386014e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306b2d6335781c29e2d3f81607dfe7cf9559b0bda1f9080593944b831af10bcd0a0c73852baea24f8741e4c9d2074826810230182ac402eed4009ad83fe22252a540b7d284543e256fd4edfe52b553a5f1b699a890042743681862e4a102e06dbb53b80302047c435bb500683066023100a540298e4ec6348417ae808658fd54889c8372c7e97958d15f847bdd8af1be08b7364af4f58f439c265900b76f6526ff023100c97fdb1a72743ccf5641e4d6aad723dbcdf9ce881d33f8cb1e34ad48528338ee59f7d3182df3f3d5ffca6af19d4d004a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e68d2124bc827308ca7972f1e66f47412a8cf2aa23a023178305a4391e9b514292b66a088f1de932cb8f02165141f67d02306fcc3366082b903cfd5c484afc617e6acf26ab811d3acf84e009bfc8e9cbf4d9eba66dbf831fd4202efc3f183b8a78690302047c435bb500673065023100843af59644bf993344f5c78f63923e1970071a60e4d2d125dbdc367028947f4f41ea418f9401ed14c0c1edacce2fbd6902303da01f302ce8c73c83310fd3ad25e122a0e093ddff408cae501ed75781b9777a80b00dff4dbac02274a5159cd0fddde80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b41bb132018981add3e9a5fcb62a687d6f760d2eae035b833ffebec613e114820a27b3d97bae3c0a49344a821d8d739e02302e5ef9197ccfa081c7b9e08ea2e9e975eb636e361df983ff3f100b8b6d4136380f53c0a499ba84570fc230de869580ce0302047c435bb500663064023064cb31850976e063168b0ed2ae59633d86156e16eb231135ca6d61a98563aa531451ce66bcd580a6cfed27664789cdf602301a301a368e68b1bf7c54f3349a7a797156174c1dd75bb7cbf9ddcb80712c3b24f3195fedffa530148239c406d7e293d20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b3e862893cf80be384b298df5c4e23e19e737a5d881c5d49dac60f21fa5121c02bdc9aef8a6ae1de3aa61b279e7e5b1802305acde19714b6ae91bf38739bf75d7bc6c57c82982ce65f5b494d2b3bde9e860c7d17fc571214e6d7584d4923c366cb3d0302047c435bb50066306402300240ce49462bd9b123edbc26f6da5644bb08e3aa52fd1263d44c88b7aa58bc64ee9588d469b17dc4d084b1541d374c8602301666a0c393ab9737efebd13ba9401ded08715c3f5b2c4d0976927d0ce768048f422013345a31ffd9a0f6e64fda028eb00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b8b9fa5dd5ff2ef44a1fd96f698ec612803ed8c1d2a79aebc5c4a55ac24757dd411b412d8fe217835f78640768406a14023100c35cb603ee0fecb15aa211f8c77c23b3e17939cc79d7014dd777340473ff881ac78d3667ff09af1c4e7b3e5143f724d70302047c435bb5006630640230766cf592eac621b8789c53d644f57bf5b01ba1decd9f1916301b9b20e4ad26571ae40ad6d0d9ccf439ca45a4379702fa0230639268909ef16afeb37ea573cb4d689305696f2fe85fff9cf076756513f501152bb7ef59be6162bb9d0614392fdb50b80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023026587c3c39897d8a10bc3eec0a820ad69be486b68722e8f6a8902f3644b43a4e8cfb49a93953e3898251d38c3e362446023020a11085a4958a6b3e6219894da5436eaee4d560f0bba1f26760bbed0ad141c01b578c4c879cc90aad34fe642f357c6d0302047c435bb500673065023026d8ab4e6f2a98199e0e358141ed45b02e0a318a508a969527c44ef26f1e9b5b28c0702e1dffbac585390c852ede7a04023100f63c8a393805b809c61e4f3eacc5dcb76a117343b41e76767cd278ac82826bcbf74b1ca75874f6b00b4733fc082adf980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023064ae1aff267e8c0a43f3c961463a6a4afbccccf10148590082d4576bd9394ead5485b10d7ba9c6f55aebf2329172d1ae023100f8afb0d4f04692b7ec32938e2b167e38e974bd88b8f52a1bd5bcabeca3d2967ec64704a26b54edabe846208a248a18790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100edf178e4c6c09d31abde2e90fa1a0d74e1b8f8cc451ea88c5002a3300b07f59a15f316a80d58cf9eebb545fda41af7f002304c0ef137ba6b1cb8ad08d0bb8584cae56bc57b5415e85b769b6f709d4f6c70ed7ed198a12422774952d8cbfe0fe000e50302047c435bb50067306502310099efd2d06428486751e82a516775a163d6ea8b3ca08cb57d9b8d02ccbe24d7d772ce3cbb809bbb1101535e314d0d45280230747e13caffbb22a52a4ab1f20260769a74485e30bdd6258349fe2bd827c3caef3e35d3960b2afe30f0f84e8369da73b10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c1328cafb16da611beba1e50d8dceb478aea07c12d9170d171cd4adcbb872769dd5862d8df3d9d0a04e5b1689b0b1cc60230606cf6bd62e1cba43c594af16815d81ec317e4e4391679f1fdee9331c7a2b799c6f83f44f97f29839cb3bc36dd344f600302047c435bb500663064023048d637d7c0d952db9b1cae457bbb94b7f8fe918a25c4b5fe5357916d7e8d868b4b75fba9c91172f117e0c798dbc5b6e402304f0638ec5870852c437e17889972df33858e96f7a51c7d3f0a6e8750ea850d37062e793915b204e5503517ecd0d8a85b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310091f438ce2868b16b3169238fe75c5ea67a4541e39cf1a15056ff2dd40b0a3a83fc81f1bfcbe966113b98031b7571983c02306f5e585922a40c2b0ff7627a5f6c9b6842057e84eec1cb99f4ee4bea817db71bf9ec4a7dc84d884dcde725e156d40bbb0302047c435bb500663064023073e6ff698cccd2bab0cf298932bb414f5f1a906a4e02888e463281284081fb02ecec69b96a8aefa525277f4804fa78ca02305433d84253a8aab491fba63905e9613a4837a23088cfbb9cea1cf60df8483e2bbc6bff742eb2fcc283d5af6f2f9352250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008de9f7d2f1b26a7c6c8f90cdc1678083ab9cce7018ecb3f0786a9245ab2b7f47868f76434be3ab939709ba66733dc6ee0230390e8bd056a156476fa5f35ffabc200ad114489baf5ad38c4225d800896b331b645207cd4b1d2e1c043051ee78d1bb0c0302047c435bb50066306402305bd29d15c5eb45bcb9ff67a68c9e125c97439c12659ea05a89af686030310e37957a387588cf041103e7ffd14c27af710230627e49864edc0c14d6731a1c6584b146d08e12ea9dff47233ccebf222d5b2ef79b8b56298da8a8a3370bdf5d58f60b790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f52611acd53bafd4820fd11dac7759bef23d00681d25f040de1bf7320d3d602966654fd4a4f2666d11b93ec32845e73a0230506f90808c8e63a1a58ce6334c3329bc1194f9383891594d4b7ef02637c69e61958e22bc6856de578b9919d0a7c55a630302047c435bb50066306402303ca27df5324649d0413903b86cac8436fc281db17fa8d952d4e458bcfd05e8893f5f6972b708dd55a0364a3644fc22b602304cf55733431ec8c358dacc027c30ee708c5d808222471bfa90ccb2650ea64f2407e331efb29c8c491cf0fd001ada4d710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023063340b4cc70f18baa624b7810b5ca64a0614832f6c0e289e064e1884b1c2f8658e6d03027345cf2dc13aed163886092f023059f3c545868163655b5a540e70b121928ba1ceee6a144ddf999ad4f68a38380c118ab969fb0b7343abe7db4c2cdf435c0302047c435bb50067306502307ffc4028af7509971706fc3a1d9682cc0d7458b5d419720730e9533129edd89c2ecebf3a5ccdfbd072a15d1ef9871905023100ae548e33c196577bfe0fc2357e52545ce5e8116bde0c8685347788c83128fc56ee74617f3e270f7601e3cf2546d1a1250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100db99f2f7b8c73ac7f48ffdf12fcedfa8b9bf4f1a562cb7077d6a5e5a00dae54c9c3a0c8f477d0b666883b9a1c26a1611023042d26ed4aa36280e7f21cd614f83cd2535ac1d122c5954eeea8cdebf717a9b3b2dc2d5e80a18083c7941375bea0a03d70302047c435bb500663064023062816227179590d60a02445c8cbc53cd8c8f7d95d72ba81ab8f7317a36ac4b910494aaff18848eee9a0102835ba046c3023009760e1b217c40070cd44d937e58049272955451bbc57e4c425b823c61d7e916a9c60e368c937aa559f7e165051015790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230625edfb9fa41cd5948c00b78f0acb9643e46c565edfc0c26731e93299694d8a1881a3cc2c2066bc51e832b30f8fc0f81023100c7fc2e71caa2454472221ff5ce572cc833514cc8915a87e27adb0dc072665d2fc144c4895642f46e93b1dfed6dca74ee0302047c435bb5006730650230187036fa63f548add0a3b70b98b8e2fb3af637f1e414dce49daff0f9551c83435302786981986605be57cfdafd6bcf11023100c62da1c56779ebf67ec7fc54113784533f69baa6989ea691367bfacdae81c32910288c36fcbb5a0c206fb3bc7ddd25060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023062dee2072d213f5d198b45dc859c9a01b05afbc73b7052f65102266f31db9cd517454d402d7a1660f718c57f3a9ed35702302439d9d53acf8f3b91e7efafdc68aa27bf3964184b893a8a8e1ca76e934cfc0e50974215746d0a0369209efe7d5719810302047c435bb50066306402303a3ec09142e47a8d98eadf01cc5610cb4b3fe4b99a620184b74c296a3aa8c3301067f50ed6808a5fa1cd00550e9d2f9602307acd7e71d20064842f5991c9093baffe838d54819c9ca402f6de55e9246708b401c29aa0b65b5466186d1c871cbd54180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fe1b347d6582e1632afbc34ded476ac2296cf3ac96bb73334aa9bf205da0bb64d92b262f15c10bd6126ab5081dc01f85023048e0327118459208850fe735f8cd3c6a1b258c4dbb48cb3275f26ea78d65d5d927fdbdc5e1fc9289c31020038596a0500302047c435bb500673065023100c28bebd846a8441555da56b0861982fd0dcaca2c245dcbc4e516f8b9845aa8829c3828947fe20aaa691dbd3793176c10023070b616b754a3aadde5b7ab99deead48886b8d65a0b8a4c4cd1bfc857f7750289b5b2a0e96e63bb89f0ba715eb1d7b1ba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eb3f64187cbe726eb6d7d0408318f801a319928fc4c3503a73da38500652bc64787e7fc60890aed1bcd267f084a646a4023100e19910854ac06b7fe241e5cccd9680a00d435773c3266b6bb3193df90472c72877c616630cae452dd1c827a681f370ea0302047c435bb5006730650231008db10ec5854278642d7e8f696914442229a2b6a3ee240df8a9a9d976cb0af01c53c249ab10a41cf7aafc33895d1fb601023072cdf75d041bc279eeea65698af6169e0824255687fa52f515be3b44fb6fc74c747d497c9257cd9c4d9171e75bf20af10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023008e212627ebbebcf0412c5105adb1206db44a5d74c40310f823a76e4954d4f7643ba27fe2b800666c95c6e154782ee98023100c118667b2ab910610bdea30f85a559e73f64d27d8e50393444b11291b78d7c56ea794dd8bc2a758cd0f9694dc758e2b30302047c435bb500683066023100c03f4fc167d7c4a339956dd98c9cf2fc0128cf55b1837b3e7099149f435146d4a0bcde714ee055201b038f9dae9f1e31023100b6141bfb151734d059f1eb5c2263fbbfba0ccdad93fff47e7ecda30246d2f423e59bfd3e282cacb35cf0c29fddd285e10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d5309d590d793f050074c69e1f567c1632f23412b7aff5c9d812bf69cb0945e7d974c6b8c95da5c73ab938801667609a02302c0713d20ab70cb607aa097aad1e4ab8afd00720d4c4587e43e28d9ea2716361f9f5f2ddd6c163e8ad49ea02bd3201290302047c435bb500683066023100aca5f3dbbd6b95a40626a4ae35ad061383a456d4a94e80d6dda7660d34fcd3ba469f285e841f6b767431aa10bc2570a3023100ceaea1de194c346cf3faf219d609e5d857649755e217dc855db84509b8d64e86dac5a51c4526d7dca005c3c55b51bf670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009dd2ff096feaa48ad4a47435ff4d39dccc3d31cf52ab86846a8b6cf2924c2f272ff35a2414cd45e0260bc91a75a3d2c302305a94cdba94db9307f3549bb53577195a47b14348794024dd5a0a07a89d2268b4568244edf59dc56094c42a4618a60a5d0302047c435bb500683066023100900aced2288f6b63bd1e67d58eddb0730c5e11de54a7c8020c7fb73d8525ff25d851960a45f727b029aa239df150131e023100cea8b669ce34b2dd92780f42a9dd223a2397e0cf99391e180b9041a92a386fd36e37eb353ac5bafcdbb863fce8b2e29d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a00ab4cf6e37a27215179461ae67e4db556800c0fdd7366e323af9a284deba9e92a63acdbbbba25cc41395212698648102300c6e6b1de89675bb8a076d32fad88a90b2bb72a8de65a5c913897cc4d2ac89ea788a210f5c80350f109484fd8a80c1de0302047c435bb5006830660231009db5fea0abc4e88a52fd1acc703b1dac9df945e16b7dc278161f3b82baec3dd23af778e61726427f18bc1b57716c3c50023100bb7998cc53d4dec6b3550f0ae59fda706a63526e7a175a9091508996c4751a135f060c6a2dd7be382a77c5d94939fa850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e40038ca748fb0454eca31c651999babac2a270fd41e36bf27c496681afa7b97be79bcc28ba7e84018c512972bae2c1602301ee03dd2f32e4454f5b84071d86171ee9dce23a809bdaf7a454fd70e98c55d243b92d814389d9ef6aae7e8b8aeae08650302047c435bb50067306502300d98dd521b42c2ea6bd765854ecd78667385833a9da30f64790ce43074a97dea9863b3375d94720b6d774cbf89fd816a023100ef191462ca70f17c0362114a2f5cc8010558e88a571213a817a829f5c371376218bcf56fc8ac447e49b766998500a21f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f448cc9b054b67d8c3dc7aae0d8f028eae748793c294f9b84ecb218eb044837fa2810e2e1fab0c3c9fdb402b2fc44e72023100caa2625beefc1a06f929792b0406de4749b1a818127f700cbe79905939d86de61326488a15f6ec1460dc513eb96bb3520302047c435bb500683066023100ef4fc0c21c9f219a979c373082c847c243e9dd2af5f45534e389c34e8a3796971230a01305623508325661d6e25743a6023100d8a8873d582739a2b583119f63384abe2353456ab31219c357feffa106ece81a79706313bb06fa364f96f95c93fbd10a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230325fb8e54d6b48235e12177f6c3399c175c1430eeaf780bd22bb37ed69032583797643686ee2d1ae0e98f60d45ef5c8a02303d84c290277a9f1c9666e005a122a5aaa35f60f4bc716199f75ddb714b80d4adaaa651cd93fe3a69ce0dd2dc8f48c84a0302047c435bb500673065023100f76bbc8bd2e300dc5d0782b6cae313a51cd2369070be38f0926f8390f5e0423ce8b367926346e612f33154db24892e6302304ecd7c689f9f5cce96d3baaf4865fb3f84e0164e5153af7baf7bb3fba202e2a7e06dde94b6c2967c3ffd303ab1d444150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b2e353b0571edb7c2f47acf73168e9ee05bf10f46ccb93a8434b8f144efbc120df835dc6f83caf85705e536257c8c78d023100a0d32ad47e4bdeef20520bf1c9ccc25a91ff6e04fd0f45f5cb754caaa89e23f9071a9c1957629b4573804a255f9d492d0302047c435bb50067306502306389a4c340f7d48e244414b9db722274033f5bd47974af70da5ec6a85e79c0191f382b630a49238867f8115839e43ff4023100d53fdfa354eed40cb43f06340c04684b06700638aef62e68bdcb255247e1f1dcb07e59f4f97566ca9279e22d5bedc7fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304686757dfc4716a5e21f0361ba05a38038d49d7151da695055f0866f22adbbbb34499b40032fd4909cc4b72077728aa30231008bd59f5b7aefae0051e4b677f328897f5036fbf199ebaad73b62d49869a5bfd5b4b48d8d00d97e4f20ce21c291916c3b0302047c435bb500673065023100f9286cc2ae069e616ef6c1c08ddd0de490c5cbfcb109b1d90ebcbda03fd798c1939f2dce2fd27e9016d17f7c13ca9b2c02307f5b8e485aa17a19b6c2b33de369f6be95efcac05db9cde09bc1cc3c7cd286e95086fb2b5114f158ea651a80410a6ece0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230484dec92a485f9fbaab9f83efa75f32dcc47a72ea3f24568362c1d7f735ea0c97a85541ab0715974c5303a039eb412980230655f61f24805932ce545277758408caf66c992e6ae4c7008f3dd5493af927aa48c0fd96f486a3368ec9f55158312664e0302047c435bb5006730650230200629d1f1e436e029f41cd0226bd0e957d1246a0a6f752b95dec977242f840292470134d32a01afcff91f67ccb8823002310095cdc157c854f104e89c394c46c42979e2379dfc970788716630f6e2e46e06d7e4f71713736ce280ca2213e99111a4b00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008025ef86fa3e8453cc4e5957db9949b4f4bffba4182d7e3b86e77f691cd5d2e73626df6b00f78ec77c7c4321f1ef7d620231009021620cddb5fc34c77751dde17357bbdbacbcc17fbbf0880f65185efdf7c1bb9918048ba0ddcf1fa5496aa5fff3589e0302047c435bb500683066023100cf423db5a86de7adac5814440c1df28f792b7ca8063d731e12c364c92f8bc5877657e2b7209c561c3eb5ca49f4f37154023100b6031338719f82bd44313cc30e5b152c752bd1ded2966ff544f9e330db1c1dfc43990687d7a0901b3beac5fc01b1e4010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310080a409e931a54f084716e5bca16782d9bade18ef0d0aac1d76e69602b606a966fb4a928e5cb0cea6817e6f33edf0322b02302fdf84fc3b1f499f02345e704bd7e414f57a8015ff03d89df9b603c6a5a360e13889db5ec4f92c97579dd3fca8944f780302047c435bb500673065023100f9fd2c0816f5153f39da90cbf16b17ee62b6a7abde34bf9bfc59b84718fd9026999dec9a0c7b2f2c29103cee77ba6640023013346dd4e3ce738c1d4d9ad3f206da2be8ca4bb7ae82826ae69885acd39002171078ad72c2190d1bda09755d143eae230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230608682e0a711ecac3657b0457da49a0e7bedf879677b7f3677fb72170b106b029bb737bfad3174f068cc20f017bdaad1023100b435f552e0d1f04cb39c954cda6595519cb75fbfe7052fd2f1a8bd918b61560544270024aa13fb1ca11e68d210921fe10302047c435bb500683066023100afd46d879c134ce8aa5a9e6557e996420fdf9735b391aa9cc580fe83ee3ac97d52ec554071f87d412bf206718ed7964d023100fbc9fd6a16041d3d895c205c7d348a8e2f653fb1775f9caab145cda7db4a43f121f607627c46360f1024c2e7098ae6e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230521c4692028b057e7c622461a4352ee3317ba798eb2aca67ce37e951434efe78cac2389e2bf9aa592c188173ecce495e023100b6240fc5855ed236975e6d74041aad5513a71dc9e60734f8f8926762a0e18392499b0088b26d92d6bbc4f3606feb45b80302047c435bb500673065023100ed1607b584aaf5d84b085e5d6234013cc5da4f11054d901c8ac17d29185a0c8afc0b1341d782e6900cbe46a110a192cb0230589697aac5b62c3aa30b35aef36dad1cc558fbc2b78e79c54d311f51c3cfd0b68c7f96aa61ef7c1359987cf7013485fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230608afd57fba5f43db876b5df414c6d1326788c476d29e5feab7d7c940c5326aeb234098ef7596ce74254c2fbed9e993b02310098824ccfe28b43c199a5186d27caa824eb8f4865d449354aa44a20b418015a29cb69c99f5f692d2d68458a2af9879cab0302047c435bb500683066023100c401497b3c761943bd2c48bb455418cbaf1aa40ddaed8504fdc748586c27a436abc1620a6567657f1a791207d5a12ab0023100e358239b2ff486cc89bb408d627d4a2f96aa63d68fb70919a1769d76171b088d9c0dcd8ede7d50bc572cfd5a5fe1ecd60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023037a0b48e805536b89be8089af935c8a97b5bc56be0c445130acf438980d6c96b36d3be4010c280ad2953228a612a37b602307532a2f2b8ec230ee800310b55ca65185ba5f7402678aaed87587e3ed7fb48064a2d1a4c01abb7dbf1563886d2964ffc0302047c435bb50067306502304b004d01397573b4ef8d6cd9c2a64f9aec0fc99bfdd9d5487b9e321870393e83d6ee86615c26de976fbacf995e6464f7023100e67f1ed4515f90c0dc94f5439bfd2e2cf5d45808366dbad653e491c710c333c11ad97d29df57458cabedb96d19634bf80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230187a7356df4b569a170e30297746c981f5bc28d100cf7acd979e0332b76e27eb56a086009d669a56a920ac9739696ced023100b50c82fce02b4dd3b15501db6afd6275e03783e2df5e0359817dd4568a0099f678d8824df69d6d90df9f8d04790a272d0302047c435bb500673065023100f6946cbdc4b50114d05b217cf0343d28704b0142dd90349c3840ba56c500ce7bedf073a9b51df771bf93d479f9bd0d200230251711fa4d1f24e7d5e7bc82adbd7850704dacafba84f026ba30569ac92300ebee403f1126d0af8039c784e75bad66340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306b6b0412a209daa1383a87f394efcd3687ea505d102dee5adbdd95a04d894b87867ec166eed3e970b92d92856080851c02302d2b2ede386f76569770c9e219ea513db4a4686bcf3a74c6ddf56a419611946c6e257af19f1429e41fe601fd83e99a2a0302047c435bb500673065023100a023e479bccad45ab9093bda27d5167b1d9df0cd8dcbbd64a1a2103afec71a0fea8f07a009c57a11aa572154986454fb023059fb8fd445a42033c9ac824411284dc6f42b1ab43611dd1b9b2dfeadccaccca3e19a4a01f941db89ea187c2290568bba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023074777519ba9882a149ed903850edd3f0075c4a42d8ac5bde6c1607d409ae6a20945492f4f5f6a9a7eee1646034d3f88c02306398e81165b2e93ab4e9b89af03b06d7f6a0749334f5a00993f05a427ff21a51cedc63aac9a10dfd751bbcbce055c5c20302047c435bb500683066023100eac9fe4a59b69ce0621d2c1db6bf4f5605fccc1600d0cdfa8e79f43abc747cb39e4531e8f47d5e0b0bced0a9925b7263023100a13b81954f7cea8009a7e058ee3a18b8f678df158f5834b0ec3da767c5ed31ac7fa20d845f4b1980faa35a6887f485a20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500653063022f1fd71322bda3af5572779d9cbedef377ff3de27282bf06990077dff39a01d277bea292cd13cf8ddff8167936bfa1060230200233dfc88fc37012a7d141fec3152c047b5d36038569a87867c2957a44091a4bb58e06d45c2a219d973c2a4e93b99f0302047c435bb500673065023036853dd1617bed458adbf003106d7e463c1a9ffce71bf72c075f56914aac900a77c1d1e08d3b92fe6085026f8fafe29c023100b7b2756b49f6c40d95e72c2edf34a89e1b299395c7b9fb3625e5f8aa90ebcb92ba0bcb59a794ebb60ffe31bd180084d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310099c180ab957cbff59f42e33952d6e054ebacba53894681b61f9fc95b9c8d23bbca671bd51287f3655373367b736664bc0230264535c4a7679efc1291727d5ee8183013795fb5804115787d2f8473dfef2defd203bf3c9098ca0dd9f95127db57650a0302047c435bb500663064023024735bffd05a1a8aa7f8636a54a05dab3dc237f60cd247fd398c53e4acb64f8b240e5a746b320165cbbe3b0c4050d8970230774a4ca9057af4d3437f91e948449e204a601803a15dbfa12ebef01a1c413c80f0a1b68b015e70592f2ff9f4f01c43ca0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c9b5787d494f5546ea25ead3b0270bb50f749daa9cc8ecc61241ffc36fbd7bf0f7e1ddfb17f6ef1a6cacec44a5c1788b023028316314af7d8c6096a708e42aa69b0d82905d238715f211c5a846a20d9a7925181c372f55e160ea0e501746a5ff6bd50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303a6e5308f69c49cef744bf2f08f908511c078d4f3cfc2ee66fb5572ccfb0a5f458b4b544022ad9a5ac5fd7465667d41f023014628e1f4b0d8023fa527e1113fc82e90a262b6c791f0467dac2712c578999e5519f30268b18b5d2d26f9c7bbed333890302047c435bb500683066023100b3ef33e978613f96bd4024f799e29ddc8b3b5ee4c27fa9051939e14367bc780a1f60ff997c475a9b5dc64f789b3b4b9e023100f375f645f4aa3aec0ba3f36bae860d72fe316ef28e6d69d92b93f97e4bb1c5f957511413ab70c4b68a3aeacda6f2ba8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ebd8ba09bc818d2fef6c9db045763a96977ca673a9dbb9f68bf030dd39f2a192da1923273169f1e2f7bf1c39454ac11f023100d400ab1cc007529c6afd788f2a4941bff90cdeae75d8a7a8d50ce5fabdf9e18d2743926a5890b3ef03081cc97db4f33d0302047c435bb50066306402307feadb0afe2adf9abcbf1816fce4a52a4cfcc69ab750f6338a75883e4d52e323ee974b667f85f6bfe1d018851183a19f02303e35b515e6ea5805595707e5fe1a8eab26e9d6080ae37d5f98b5ad467888c09fd7e88607c6430d03d53658ba1ace982b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300a291c009d346a028e49023b5d4911fb1697fab3b06ded6a6fc83af1285ad13437d1aae6420d2a810e840c9f844caebd0231008c33d552c7cd94262f4ffa9f1e30e98d1d091081911a0e97503155c521f7ff99b6637d1c49fa9b34f0f0819b8734c39c0302047c435bb50067306502307bbbd85c4a7e103513ce58da95d4c0aa8a4304ecfcec068d71a109958d65d57d70f011d2e7c3c777b1f659f5b2fb353d023100fbbf8cbdf62faf129c7a691e5d611b5524023651f92816024f27efdfd3770262aa16a68b06e7a4a46be30ea2af03cf600302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306d03d70661fd218d898c1780db382fa316e183369aab84f54cd717c90fd85a6a9d58216e8ea6b44931a4652ad9c38357023050aa5fafb2cd66b12b8e8f80b7d0e35f82001b11d7d816d205a69a9e9286de395a403589c85ac540f8cb2871c7bd53850302047c435bb50067306502302a656119703d351ac32a5b64785c2e971b7bf3b0a300c9b77c94308c277ace7cdc0dfc4aa061a23d995534ed310d11be023100b0d19887b453619bf58f4228da642fc2efa4c5ef861b86287804e217ef04594d2d8e3b3e3ebf5913c97f3d06bec0befa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302b820d7607b21996b39d8047d03991d491db2a15cadeb1bd6cec0ea00173ba7aee50fca46f2b6f0c2401837a5f610e2c023100cb77543abd2c5c8303f00a3e2d90646dc6f489ad44bf0edfd1443af0b27a703b25375aa2523fd8b927218329f71f61d20302047c435bb500673065023000a9cdecbb7bd3de451c05e2e0e793b96b8469c337d221be0f4e23fffdb84954d8952151014b371ee1a605a458ba00af023100f84123bf0db18c25580698be4c821970eed9fd3ddd0667b3135cdda9df8c3e553a4bacdd6b086635c54dd2302277b3310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b625ae8c2cfa4c69396eb3feddabbd921a6cc00ad848c38bfd813d68a182055aa52e386608a5db0019e7ab0f0b880573023100cf8120c5d9f5e3c11a699d1d03f812f4945809017ee871a0135e350fab058a810efcc3c8f5b457c4e4f25c78cd6078450302047c435bb500683066023100be8331e9148f0daf547d7e92b389c1c375f522388e46c9d9aebd6e8cee4fe532ca17830cc586f191ae896777b5a0975d02310091691c2fd09e96831aab2886387543e9593fff91b1a2d8493c70d18036b9a153735992240f7fa2153db9bf9f13ca3cce0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303dd3241521b2c03918a427b30b25a023c75e389ffd0f6bc27f438c1e9c1beefb26fa8da666ad6dae1b17c81e5d93233002300299183f3f57474f01045872d46fe90af678bc41e589c7cfb38121f9d4badbebc3e2dd7fbff66e1267201eee9178b43d0302047c435bb50067306502301c320d08f0c5ecc476acefeec3b580ef2f412cf4d70a486f97042e3c12488efea8eab22d9964447a64405195f412d17c023100dd7ea683c1bcd3212fd0d69bd3bd241a0378794f2b7b87ecb3dd687dfa1198a9957db4bafbc78c8b85803b23f1908d630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300c191c7631a1e23c5ffbaa378414d1e7bf4cd8de5516861d47fc6d877f543a0ae21a09e7fdd97a826e62cd0442d5bcc6023100885d37d3fdac1b598751e4b49d9da368048a50a756e1077ed944c2a21b48c2c0d1250df291fa677205396cab4580c3090302047c435bb500683066023100a1a78d99a569648c3e08fb8ddfa9a7481087b6ba8fd2f0cf996e34ef408310cacebc202e6797a234f35f9010c6afbf130231009e306081a304242c3cc0dc70520dca1bd7144d4e1f5972f5d2c369954528195d02dd37a7477a5ee89a0259872142d6750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304a81a0efcf148c5bb014267525bbc06e80d1f417801af4780c2aef7240eb2f2db56b704b8679f6eb3dd1a02897d9b182023100e3ba157eb1f643f1b325e4953d89f42eb5671c17dce341bc6fd387733062a488945b7680a9cceb49f01ad5cf022ff6ea0302047c435bb50067306502307952157216c741c910ba0537630c896da091aefb1f12a604ba02b6c43352dddcda6839595342b0c66cfbe10f5581a71d023100e0ebe5e1458235ada5d05f696ac1a5d3a08f199611aac9a696ff6972bd0cf2e65233f7e7c90ed9d68463df9953d04e190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c2bd137716e7ec8053ae0f50a583f53a14e3eda51d017f71cb59b4ce97eb687553116b6557a7baeae524a664a2824a7202301766e38ce8f2b0d8ff5d2fba836cb0378908c7e2c5b5f84b0a326d02d618b20c0cca389d1fdfa1929a4d12435325eabd0302047c435bb5006730650230657104741de9af035de27a28e1508e9059585d8a162f7cda8890ef635e82dc65cc84ae3113b538f3df2228fcef61a9c002310083199d8bc0ce3f82dc3311cab9623deef4bcf3d9c582231d5292778d1ab7610cb00d455c178ed5ed06c135ca399c230d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009897546a89a99a79556e5fae3712036ee4b7ed876ae48c62fb883dc0005dc05368c5048f4c00abcdc1b785558b965e04023100ccb26b0d15a3047e3c7a55d48e5f752a9f9ee331a79a1607fd4607c61b705ba5a285c2d0a2616868ee5b57536e84d5980302047c435bb5006830660231008ce7189477be41fb52234971a9158a9ad54297da84ad726ef79e0e4eae5c6fe1e8ba7d4e0404521b24f2df1e0dd9ee69023100aa5b94a61c1517f8b62fb84d899815d5251079fc0bfc849e74444e5788f1d0ea648c4207f674f15a139f05359453eaac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fcf3e9e139d55cc65a9c4d6adf1cbc5a01d18bb7bc12f25e289ef52d546bb05dd8fc31204123d6ce154a338f8289f99302307ee91e561d35171b60b18cdfda0c4eb9816e97f84db37cbed76e282265598fb309d97d2c7ef57e8c0fef48501cb131810302047c435bb500663064023030fc5d932647921b17c5dfb61afa9bb46b5c6411a303088ccb561631e9b03d39bb3be7989363ce652a3c2538b1deb74002306335655076a61d17c57396eac4995a3648950be655e9bb973690ab2865ef747f9f2b6f4bc86630e4646e932378472d320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a7a9058f387103fc209b566b3818f184036077a6219c7fc220127f6657320f20a76be31865baba6f5272785ff6f2ab9502310095dde31ba51f4cec97c5cf54e754ecf386fcc7dda496754cbdd6ff8efc30586e6258e264b4ffe16cc1c5c470aefb62980302047c435bb500683066023100d0f12f059ff6a147a85ebd3fd3fe3e61e9371b9833bb8cd31d0b102cafc65d2d6fabb027bcd4cb2e33985f9708be2933023100830e8f315ec1e3e366f02708e0adae10773045771436750701341db538ceeb872e42eb6fd3eedd7ea1c6f53a5696ae580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301dd6eaef47216da4ad93e1981ec624cbc09bd3d4828f25c45c8d91e08adac87173b53c0509cb550a10fe63e0b9b9a4d60230571f2a40dc7aafe644cd2f80a14b2f8fa7919be769e4197209b572b1f2c820e5ec2c68d104dd001bf64107e407dec6ed0302047c435bb500673065023048e17bbab58d35c787a9e7da8410190af7bff07485f70c9b28ea6a97a69b2d8ea96ff243674cc2cb3d09549a63747ce4023100d047e9c3d54ccb843ccc69740ffcab4ada82806b81b3b6aa4ae4ba5601eeb9ee9b447d061953794b5c7dd2c1acec0dff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023042755e6e2ebc8adad0169c27f62d5b2d51c804ff68ad3d67b8f358f08eb6674d8c743a7db747e7b607042dd0177385e6023100d97ebf1107ea83e923258ea8689d3be5be57f59b35930c0612bba3cae39c56325a1bdc0a49ba36e61bdbeebcc32dc8440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c83a2b1ca0545222348fb0ce3db22398ed15b2e1af6fccf77bd08049b9605f920addb9ebc28208272d7f79a9bdf0a18202305638b7f28356cce1c05560a15088bc84f1293fe08b64e00cad56b90ad36b0e723f0ed7d2b433b0938d4f7b20172988a90302047c435bb500673065023100f68a8224bd5a5ceafb78e4cd9abbaaab1b38e8650d69fe66528537269c89a2b86429236ac723731f2a1b50e76920397802302749599390f32f67d124ed2dfceee5a162a08a677626c600e3a36a6eaaad2af077e2b1577161d90ef7f08f522f0e3e300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023027939dc471db1a00d3b45ae7b9e63dcc1258ce24579e02049643476675af757dad6f20e2dafc1299706e7b9e05017d59023100d94d22123d3906d65cc5a9d984b67514a5e80e46f32ce9b22fcd1ca11ea6a14dcd17d99f82cf7c495aa88de6790f802a0302047c435bb500683066023100994beeb0251eb407d6600b002cd6a9c57c63cef24d0590b802a6bcdeb2329587ebe3ba4e5714ae16bdee8a0ce969fbe3023100fabcb28b00e4970b0a9b2e3f91bb9f9728d85360051db8ea0b040c15fa7061a20f29cc7c43fde4b3a73cd85bdee06b070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023019c5c76f2f06331f3c17a10488b55c90c9322fddfc98d96e3add34f3153f81df0ba5c8dfaf9a20c5f1eb13fe8fd24c33023100b5b4553efd100ce59ec8b90a64dec1675652eced8d232825cdce3b803d2c062f7d7d3fa82ab071a66ab510584a2ce49a0302047c435bb500673065023100ea3cc99f08b5dc0cf7a7590c7becde6cea4e5eb3b2be996afbcb56d17dbdd18e103bf1b70fac74760917c3eda622f41c02305d8fe23eafc9f69d0f35a4ffe9cda0fe8b5be909ee4b4efce9be6532d37ee12a2c6feadc1d540a5dfd0dd33829182bf60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230217585a814277a1bc7525f76ae5e8867132c3620f9ac657aad80a7d3b389ac5087380da6a511d2641177951274a60a22023014f1d92f8c4d9c23d751f3bbdf1122b3018e2bf6efdbcf8fab46b0b3feabe95747251e1cebe7dd677e1e2efb1fc275700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c3e8e2894f52d20b34bec9a249487d7415e669ff1181e66640c39515d4e3811964e0086f0d7ac34c9f05457dd52575c00230187c0994a9a13898431db0dfb06912295f10262d293e2fba3f9e8b590ba0ef3f92f2735a452bbe0a2bf6ea4f07853c140302047c435bb500663064023057d268e1abb4a68b29eac46518a7f60c0f539afdad060759e132a419f0aee0f5ada6f0fd48ccebfb02454b4b976c9dd6023016213a349aa9c00f440991afe03e67f251cb8c642c09c9cdc6ffcf20754b4ff31cb7f58893e406d41ae6eb20d77a223a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306356c8551c89fb0e933d753cdb7d7fb35b8ac819352396b84033f6b80469a31277e3a0abe4fb509408b1c43ea9a6d8ae02304fb2906b0416ae0cbe8e7d4d7490da5317889ce4b738f7f6a4b9f5afbe214f42c1fdea22a3fd0d6772bd8ae1b519068a0302047c435bb500673065023100cd438255de19625347bff48e029b600ec524a4b8fba86decb93baf20b14feb4ad0728f4d9fda77500c556bb19e1fe8db023021f41e38db7674dc39d98c2bcd901d6c887eacf4f59334ed4bb0d2e2b78db6712f98ebeda2cc258e0635aa79b7e2ffda0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100da00144f8cdf21b060de670ba42ed8399f2e5fdaa3b9bc24ef18f4994973e4ed0e032997a7ce454cd822d6cb94002ffc02303d1ccdc2fdcb3607486e194077df3160d75e9bab90094930984114c1821905f81092d002b76c7e74fcc1edfbaa7f9ffa0302047c435bb500673065023043a6ae62feb3d50f8129dd5bbeb2dcb6e38833107d98a5609ea38411f1c002de8ff593b856a180ed2fb92564299ac1c002310093c901be37fa6c122fa3625005e4b9f64ef587caae715b464444a3dbd39c4d78f79372d3aedc5ceeaf51b3770ad8ae5f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023006a64d3551f51bc12c3f7fc0b0526cb742954f9c1a13a0fea066e3eb8083719662415ca2d19d5dd44460ff6e488a2c1f0231009663a04ae6f6388ae7ec08bc20c182bac6953c67b0b9db7a6e5f322e1fe6684147f2e5830910e76faece5f812b912ddd0302047c435bb500673065023100d9b375ccd943ef6aa59120e516be1e2ce6c259a7d62c1075ad2e299635da7df50e2576342c1c53e88601fad98b70ac43023005a82a37030a62153c42d556dfa5bc7a4574dbad8c6e72fb14ae8c3e89a60ac4504d153730051f5076429b44d68b41330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310093a63a00bff6c70faabaf2968e41e0e5a8fb3ceba65fd08d60dac32f4ec3aee52de8778c052eff5e9531b63d4f121ada0230497dcd03fb000d1c1a2735b29e49818027d97fa44f6f2bbbbc74c4642eacb4c7a30e8279023247d41a6d4b7262ce04700302047c435bb50067306502307cb5b90f7ede4d2b1c78fefccf3d8a2921dbd9d8b1e704b03b7e0a9b56b17fcec0113d73ab33b4cf12d0c0835eef758c023100c2a980f892bc0ab086c6d28b2070f427843f7b2eef4140c45a6974847ccfd851c9c8c2ebc157a61be96d1ea396383b890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230327b794ff553d575bd1ebb2f4326cac240398652c68f409e3ebc33831f2b598c411333581045453ae0727c30345598c4023100a0f466497dd28a4a1bb8f4ee1623653533a24861f83f71fa8f5d14aa0a3466043d72b28cb076543ec706fe061f26eeba0302047c435bb500673065023019a5e58deb06ea611734a3146cf4749381a62fb8711ea42d0f5ac32d0cec96cae4dda441d81c931aa9b2bd5b076b5b8c023100b8a0002489bc0895295242420420f6502d37004cf9bc6719c3db40bf632886fe72d31bcb95f1115ea560a8fcebf8f25d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a06507ce81b37f8566dd2522cb27fc3b9d851fd2c5c63c9199fd80dff7f97712ab23c64d914a90d97d9e6afeec86c5e80230120b93731e894ae495fc8b99df333c6b5ad0b4d1684203920363b195706feaeff1e0f0fd94b4977283234d82b2d26e0a0302047c435bb500663064023050e27d69e81ee3ab1635134eef2acb7b0a845ee5cccd2be50129b7ea502a1c81f2aaf09678cf766e665a03524e95152c02305ad9ec687e3976a7c571a98f22ecb140081b9c87738df6a76997453b704b9daf2045a8e608ed6de2afced837939f0e610302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023006a1dd1bf60d12dfae255c0dfc2320686baba54e351dbfadfcc0c8bc99b312bbc929c8c3377c9569f544c393dbb29dbf023100ee0ac8cd48eab47e8f8c8f85c4de095987befc84cc042f7deed98f77498a8bb2f7eb663a63c09c1cc8d08fef91e3d7a70302047c435bb50066306402303477f3965b6c159bef66d95f0653d8e6624be8637eae8827dd506fb1c31ceaeac70cd8364d69e4c9e08881b26a772bc2023053e56621adbb71f0c069521a25cbb074a05e4358cf08da757cf16d14c6a62193777779c5184fe936c6219d6bc78dc8410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306c559520f031ffc377b9bd23bf888e1c78c2917952c0c3b33c8e3ce754410796d7153bf5c16c5a050fd3c067a4f2070a02306b175d245ffa5978c1fa169c6839cb544f7f723512b36658fc6fa1769d595209df7f8cbd4c828ee192872bd17cd78ef70302047c435bb5006630640230640317e594d9f7537218950d9c8dd9cba4b0cb4358ec73541903d6fe9a4044d7ddaa4befdf0fccbdc4e8f8a7f0142c3d02303f4bbe5f9f72f011e4ae444e4cc2253d58b33e6aad1bb3e3d990c9e33ee927813f08c471cd12cd4f7945523fbfbd717e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c35a4ef18226f018e747625b6bd389b880b718b00fc2a9b247be4e25f8cfb068b93fdcaff366b3f8bbcab841d9c478a3023074506c86c634d8b1107e4c44b6ce2f1840903a851a1e985c43f2075b4e37a86629f458870b1a0b1815c236c7efb22c830302047c435bb500673065023100aec4ec7c3320f5a95b0dd595a20e3f8e249c85ed4229668cf56d2810d0ddf050ef380a7be8f2a9dab6e6ba194d960f1c02301a761858704adddeae8ce77435ff452bd34b4f8801005b5efbe60628b347415c1629022b1fa49194551bb078685142780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023043120567a294bec7f4ad2c3b5face30b434a39697f1d24c44ef7be4d3a06c81814fb403930e434ac44a7fdd7874f4a1402302f154dace7a1dc49c35b1161a045c1019cf0aa7e275a3af0e2f60d534118c8d5adbca198de2658464c9990b91cd834070302047c435bb5006830660231008d7b5832160036b4a8f0c8bc9d00f5301664a7a2c087b9e1e912462bb16f198b160a01f326668b4d5b909c6a31be2f68023100ac503bd939c0967490191c1460d943c0fbf5194f578de89120aaf93670f1ce3acbe97e361c9408b55629b6c25023353c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023003ea49fb38d6c787f9dc9231e8fae8cf92537bd41fdd40dfaa29d2e7c61f37229a630c0feec03614ae2ecb1ab10aab9f02301180799f12a58b9aef80153494446b99f095aae8b5572c3be5f58c3999dc461878cc0ce375adf55f93e711d949f384ad0302047c435bb500673065023100d78c314089275ed4d6fc05057ac0548999a50147ac388a551fae6a12f2f5d39d0d4da982dd8254107471a6cbae1e5876023079a70b8e9517893f34b393b8bf64f7a9fc9727cef3ba0eb1f29ce7d6e290b266749b545b35057096353997edfc814c580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310094f423b011a5301e9af911f491e26cc796fe35b318a716b5f3cabc91c13d80b28167988d04a992357124a09cebfa949802310096b40e36da01016e685658da24f7ab1f12918c2609b92b26a3b7ec54f3be7f47b2511bf7defda7d1655dfc9c694a2fbe0302047c435bb500683066023100ab9ddcfe603e39120308cbcbb8a383308bfc3b31eab5d4ad122041b931c6878d0861ce90eab0ef10536a7fcaf6cf3fca023100d43b78316ecae614294da973a6496a3006ca5a4f76350a9fdbb08e6d97f9eb5011e9fdb16f5a70b2186b20e28ded67d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e5dff9453f6d4b20c8ad61099701ccfcfb7dd3138d7df5c221ad97afa8b196326a2cb1b93532ea040cac906ae6e141c402302e1ceaf0cab313c24deaf6563cc692774ea3cbab19bb00b3e75f274eabcd5220b2316f4f6843812b5be3380f7c7b5ce80302047c435bb500663064023043a458124fa5d1c1e804c02b225167d63e96dcad80fe4ab085bb69a488603e25135c4158b5b3c2f26bc7d66a1230b2ca02304e1924356eb15f3ffca7d99c8f78a351635a1b301140fe46a407e6a4effbd558c4fcb101e7d413b1cc86e7992ab1afbe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301906c8d3a4138032aa68b0bdd3beaadb966b09e8ef3e55a6fc0148ec80ac817cd07d64ee792256eaf68760aac17feb80023100d776b54ce98456216f7198b65220441ff1f58773661198825f3728231cc3e119e464bb9ecdc89cdf31f50be9b419fad60302047c435bb500663064023076498c07d6a4b84830487a38fcc3a4403d8e79b467efe6ecd9b7f77a5083720378724d88e900f458b32d903c1f45bc6102302d0fde0c1de41a4e0ff0c2f92d2b0b53e010c1c4efa8ec5f464f32463a363506d75510d5772010208a34f75230f354060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304e50e3a326e94c98d05c438910bde4c75a3632abf39bed7d9d5e530eed6456598742a0a3429147f06c87b62d6b8689c202301c1683ea472b34d4bebd2532007dfb52838b5bf8d3e9c4b0fa56f234e24863ecc242553845748d1a9eb8dcfc922866410302047c435bb500683066023100fb14a1f6072df9ac0abdd4d34971574a3df61cdeebc38e62a95cd96e3c6567812e663b675d8648aab5144924a842e056023100e65c2373ec0bd8ee94dd163603ca3cd0c6fab0d5a1a8536e7bb34a9f3ce0d5626659a68d57b22de80fe0a822aa687fda0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dec82f45d8a0e3d15ff2548edcc2b72850e5b61e91468a8070d492cb7b55a6b955949a3df77d34c82aa9c04623303f3f02306b5ae6c804bd76fc09b897037ceeb5d164a0adf29dddc89bf10401e7705d087ba0d68976738d6814ebf2d65680f5f9810302047c435bb5006730650230366529b2a8b6f90eb13438aeab382818b9f6d5986f161ac1908d5e8e3515cb0df1c5784de085c56201800691efacffdd023100be7a6fe37e64ac51ff1e64685723eeb67f5cff4920f60a7434edc41d630b0c42252bd23f7554bb603f9787e42ef1e32d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304d1e2b61f2b14fbdd94e4cdb01e95a4012a545a19a145507b2c004df3667060d9aca7f9e707ac2834e26896c334c477f023100a272bc296a6dd67520afeb635cdcdbe4cba5118692634dc645be25fd0250beb1fb49e14c941a2ce4bee45e7fd01673d30302047c435bb500673065023100ecbf3fde01b0d486dde25a3cfe996089c5bbb13c65f25ab0bbd1ca80dc1edfe08049781c68b7dd0dd7ed1f77611d5f3a02303a3d94dfc9007a3069c8b5dab97891e3727bd42ffdd1a26a29ef5d5de720cac3137a708a75ab2ae342c8b0532bede50c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d59f8e19efb322c3bf6da9e8f659857e12f59df60183e536165054e82ae5751d858a0dde3e1de74a308d4e4fc80ba523023100f9aeb88f54d3eb5d9ac42ec38a9c47b12f61024732a75b4e99ce206c083e27cd8fe75b214985c099822f90095b4ed9880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f6a955a89a44d15cbd8392618db542f8cca5d01f93a744e8cbd0d9f81070bea4c83214ed7a33596a20800d20d604689a023100ce8a92cd7ade5553899dbb0fa933b819eb135594cf582f686a368db1c18b48337e944e6a39223a89de167af1f30a474a0302047c435bb50067306502303044d8cbef3335837fd80cfef9eac804ac4bf86d473f8bf70024b5f9933b9b749340df4690f51ad7f4a56a1934054e23023100b802b6ac2bf97a094e8a0ab7440cc56f41ab8e76b23eed1b4aeafdd45e717e6157b82a1a9618c7372b5fe4b3008ee1e30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230685ded64da7b72340dd3bce147d1e9d3d5e8f1568cf68e1d69b3c7b9403065b11ae0672fe60e086c4318b525162a249c023100d57da209c7dac2c5cca6f05e84a2a5fc5395b74cfc0dba8dd367dd18b5d611f2a60fe012ca8d65eb983576e702e527740302047c435bb500673065023040881ffa9950577ca4c1091adb640b61ed57068d33c7d8c2e5d7e2bd2612362224da6d874afe2ed69244ecfddf5b76b4023100f65e657dab38694416b4c423bcf3313ccd5cb7f1ca77b3126d3f0fc2a919a8813386e2b49a4cd34cb54819b41eb5b9e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a97575ccfcee7b5c6c540dd0b7f5275f6136d0ad7ef01e7d0a2be7bc014a9c279cca1ff4d07fd33e831abc48685eef8d023077fa39cabf2b3e87518127eae0d230f34c9a2d2854359394a7b56fad83d731a6652239eff434639b2ec5edb9acdf3be70302047c435bb500683066023100cb1d6474990d9aa8b831794dba33461b4ae558633ed788ebeb7f1c4cfa9f1946436fa735e41b83aedf7a904ad87fec33023100d97ff9f4e8aace30fb68a920b3e54c63475b724d8e1986ac6d2319e1cb5bbf51164d56d27a17517b1f4cc8f45754babe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a29bc48e3ef1139ed5a1fa5fda9757634acf6c9c941b6b30a41bc0f15deef8efd51a97fcd068bdc64a5cae36d740db72023100847cdd1c5ea89d30367428a053410eb4c29241345c89bd7c31d861e5c747210b674573ee6ff1e9f30949ac03ac28c3390302047c435bb500683066023100a01cd05dd1da73fe0e84cbf336588949c14a7f39db94af3f435f2984c74c415cad07666078881778fe42e3a541fadf65023100db9da6f8a19a835e47e15770df1d83e737739bfe7d5b20833b94e4839f2d5561c012c02ef56eb9f1cae8786cf663c6d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e3bce17db931af2178fe6c9e8808a82f55e91e28442636d59a4637860ab79d9a899f4e039366f579b141f208261e0b4c0230528d6a9d7d99f3abef85abc10207114a0f2e17cf1d037135c42168ae99d6ae189667828e0a45690eab0f3c38ca8418dc0302047c435bb500683066023100e27505d18ad88b06692bdde793ebab169943909931473d0f3bcb537fea3c2044b13462da34c8eb1c44c2762c10c2f77d023100a348e1af33e88885c1f17f7c9bf2f0270b753294ef5c4d7b5556189ae60925babe0ecdab6d970c70aa5ebd05723d6ed90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023030bef0170027bfa405f83fca345112915e74118a9ef17493cfbab5b6d3aa0ca810aa7c4cc713809e92ae94db7a236d73023024843a47411f06220e460d17d82507dc40a30474c2a57629233a9bf7c6218b1791f1295facb5ea6c54635c57c90bc3610302047c435bb500683066023100813020f1e5de48d7cd698c94a7b50b1a5bcfa594b7782451e858ecbb7fb587950119c4cd6db2621bd7bb045ba5558e0a023100dbb5d312415b02be5d84f2a51084588ad13779c54539719c22652dfb944fade90ffe1f57bbb52c9bd8672266d188c41a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e8adcff8c9ea723511187dd1aaba0933c521a413a37225e23567a548972ef3a5d9840b7228d6f72fe19d931586bfb5240230777e62874bd208157949e689b08d4bd0f8b1f11814fd6bd39a63971ab075eb10aa88a0326458db523a6a3ce7df708c340302047c435bb5006630640230734c835c67751e338bcff2880460b30c46f0730efac9bf684f74dcc9674033ce658d7c83d7b6cb34e707f4c43236f42b02307fb2ff93aef0851b5ac15fe579ba4e1ebfcb14f968640e96a4614063a912b8cbdadf33f16169c485708532dd3cbebe6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300727370eee3824bed532de8087143cf0ac2d447efcdeaf25c9b3f1a6d1f57ab7d11932ac511df0dd4a0d065708551a4f023100d8846d60cd3fbe3f92f28170bbc1fcce288b514543f8d01f4766773fa2f34cfb569cdaadee6f6bff3cdb1bfbc14d08c10302047c435bb500683066023100f0f8905670b78a18b295a03942243f463e814abe85c3760e5bb6b577add82e44e306389b692f5fb00d32c6f5c748a91e023100a1362f49ca36cb9f6b9a2e5177c2a0f0c582bdec7bf17b51a96e2fd74581b176c0eb4840433323ffe83910500ed5123a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d3e0563d2ff3af289caab6887065dd32942fbf55e40e6e77d263dd70e020e4690f42bcbced34b8cd643ba2ca81044116023100e27106ac09ccc632a74ffbf6a66a85b61d5da7e117dbad7676e641f817de424e6e03d2dfd13b6eeb6e48b0f65dd561360302047c435bb5006830660231009330a53116cfdcf97824a43c16997919595187eba467b60f2ae35fe08e551a1d13285e697a430ead0a21cc2e6ef105f1023100c6529611742d445dfec8fcc323fbec854d7907cb48ff60363b2c0bd8c85444fa463e54d28eac6d4470bd42f993d930120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230534610288d4401906bd238b9682bc2243721d8d05e7805b4f3faf843774eddbb9c68eb6d32427821dd8aa9ae7608e6ef023100fe0f0b01720b89e4db3c67ff9cbcdb813bc17f710bfbb0b95b1acf3e264f08a710c083ebfba58f178160b04e50313d810302047c435bb50067306502310095da3bd256fdd03a1ec4d079dea56096cb69c467446fd65fd9d2934f9e57c0e3cb38b360afd9834ddac1c9b2af7f26080230463f1fed1880ccd4aa5714e71eac95a9ebdd57de83786a59e14f7a8cb2a53faf4b09b8477d972bc9f169b951a34129620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023069e3c6e0ba9a120a0b9f69fd214f72124b534a61912cc8b0d837ddc46594999af257bcb3abfbedc2fe684f67de9a08fe0231009b4733f58d093b73255f1b45098f3f20423bf6365af8ed8dabb08913b0dc3941d025e82913efa131d711a696667500c00302047c435bb5006830660231008fdf8c28e9c9921aa348c876e78907c45df367d812f6f76aa6de0e426031857857d527de00fe55292a99eddec9b7e98d023100fc5c649fa04d9dc6ac399f3492cadc9c67f1219cb52075cf06b231b788b204796dd40074b41cd4131486a039874c07460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008548bb2e0bde707b34ff8c910db913ea0936d03f7f79eb63acd26834aec26737fe6563ebaeb2c461ad145821f190200d023100fe268fd78cb170db6b2c3fb4a52daa0e02e6da7522ccf8d7cd5a55ab8723f7fabb6e2b5489c65e71e28cf8e398a6251f0302047c435bb500683066023100d2207f24d6391500fe2eef3a714de477454c18310aa98b0a3abb4e77e2802bc2ea953fe57fe7556447a208f1871c8d4d0231009767005b1e38c718c888a9c875f5f2cb1cb15bf8c2245f995940b21316f391493188222118114c00da16d0d9fabeb78c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302acbffa515cc6aa0d94b1cee902014e7db3cff7be9f21d3043c6c51ba56b95a089318b5cd305936ef0fe59d8a8a27987023100fbf0fd55c48246c5e8e3d67c18aa5ce7026cd2338012743de8f97aa855f408e04869bb0330cbf88dd35d727fff1caa4e0302047c435bb50067306502300166b03add3b16561f47f04d18f32caa94657aa6bb29c82eb339360ec10257e087ea38e16df5311af62559e940eaa19a023100e9cde6ef481cf9548e3b54d093a4fdf0ee8b250e7641d3b6fc107995304ec44358ecb3f72efaa473934151deb8a240000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dfc8b50fe62959ee14340e866f8ca89d66399974743e430c5e939076669eb5c1ace6ede1fa7ef79fbacdac921f556ae1023016926a13dfeb960b63ebe272e025159587abb5cc83243913cd5ac1661636d29c842309c80f5e770d959b8c1998031a2f0302047c435bb500673065023100acdd64daf9d3d763b3e897238630eb7c05dd8778c780b70b6643e9e706cd1dc5e8943f2fe3945c8c0fec57005f0aa444023019cf9fca3e2199087cc306448bb1b94178dca1fff2b9bcfac1df46fae9ab7c10d7abee8ec0d6c9407e6950be69a1d2b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009ad5daa93f7b30462b3db73e47d2c3db7048eb4db674b2720c4bba6f297265c68dc9704ebf026136154a5c58269037810231009ed97ad7496e64a02c46f5baa4805b11bf35d09a13affb5b48105ef28193c2eae10bbf07d4b248ea57fc597617eda6cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ae0d52a7e884aff7c699bcf466a644cce61bdaeb6ee18d64dd47e24034e4a872fe3f4b260bd5cd96c8549b815508abfa023100a40d90f39f863aa11b55586b94ef04601ae256f17fae426e21ce80da1c4631ad1a92a0ca035b691fd99fca9cebc483fa0302047c435bb50067306502305161ec3a61b1197e80608ab0219c0a95072cfd241881e518db1c1c15334bd1964a433d2817a4e08c30d37b274f7800e6023100aeeff6a67203208939b8bd2da8abb4b78df09dfb8cc773f661f34cfeb42093c838251c3c002dcce0dec7f7af1ce2bd040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ab539f45c3e1e4e22ba2ef4f2f179c3ec4f1afe669cb56ea507286782f9e462a535fb62d5ec38f58a29de9f50f2f03c0023015a2748501e0aa6ce3ba2257015cda62b554bc957357b64aa71fe73a4742a4aa749bc3f415b671fc77bfb92d5f6ff7170302047c435bb500673065023100827a34128d440021af9a6f7d3e3a795362f4fdff244a9d78cc158c3e23ac493100d055d2256b47c0671798cfb7aed70b0230061443d4020dbd9b43391d615bbebcb4cf7aaf002e78ff46ca9e5e5b83b76daab1bb5c6b06dd99d35c594359ff6176d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310083b1c2f60addfb3682bd391cb37d78c03106dcef9db229a9a5988ed54fa74526fc9398fcdd73adc6cf346dc219381eeb0230592cd0a811527a050f86ba5e5bf696f5be7eeb5ff2981360d17d5ebd7054c431daa0f005ba8fa1a7026bdcb78f7a12370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b556675fd675e5f4faa91747511b80a9b72bd9995ca10d0e3a03573fd0bb208b0026f5716f29d6ef81d9f7bf60a6ffab023100bb7be0b80a2864a813b8c01244b26abfa0eaccf2faead9d57f87343b87fa7db7b218ad98266a875451f35f34090886f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f23791dbee4cdf7a28c9fc884b9ba5bf58cd6863b65b8933cc4f39956ae286aa0d6e8f885b362a9a1862a64614d1b2db02306f84f415d06bec08059652e382f04f9d22182f487a3e424d06314cc856f73220e2a81336ceb09121408ac0f462ee7f370302047c435bb5006730650230222cdd94c03a48045501971258199cdde79257fc46b670713bc689741b99a354dbeb415cdbfbdd83cf8bbd2f65b046680231008d7d873399294a7a286109c72388de811e551004015cadca27b78fe2ab64366484e7ffdb75611b9e9aff6e976fa3196c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230455004244312632b366c19cc3f2e2f24243aa13b646c692337ef29bf87887540d8d4414e9fcf5dcb13380aae24f1105c023100f0f38e47f88387e3f77c83220c2c2e579c1ad9b74c70c11ab4df9b731e7a09fed1b91950a12607a8047baffa7615ca460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009178be4655e02a748911e195da718bece4edd312d06e6aaeaf6633305485a62da19e7bfd912c753040a897fa0d9cd3ae0231009fc49342fe01604e3e272fbcd3411e1f1d0593d69c07e04ceb9be1074d14693cec68f35c917f3ec7fbb66219e514cb810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023034efe1e7459adb4393132ade1236392e9d99d833abad48e3c013965ab5a5539d99fc46e28ba64fdcc50c66cea9eea421023100f936e125c4f8f60c4b6401d0deafc7019200643c0f38e7a9c0ba6b8182380f7c23800cd61e4f2dbd82d32e54552e9c380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023037bb37944ab9c6bca036965d9488420c1f9c0c5ec67b9645a9cc17a34b5cceab0d6053ef2b7ba7ff9e1e18d2f8962408023100d21fb866e585c71ced6639d6ddf944c41774a1d5ed34de5759b631ca76944b9f661ea48f830e189f5c9b9aef3a8a44430302047c435bb50067306502306e8d791db9bfa0cc478d9291ee2a00b269461a84eac1f4fe5df7d680174c53c2470a446ff41dd82b234d209dfbbc3dab023100821eb1a40cb03adf1d671e9bea61236222691621ccc5fe68238fa39bb2b28450a7341cdaf97ee6773201c7610bfeb8070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300bf9e30b7d94c7dd2aab25447c74736d61f4b8571c257d286dc05f58ad54811e3d56d6961442759206751130ef178d35023006ece478e05961cfeef5cb35942200bebe521ca7fcc0586bca86e24ac30f8d8b93a6a4b063ab12340630da520e6c3c6d0302047c435bb50066306402307f73fb0ea49796d13f712d09f84483c02b107b6b03cc4353493bb198dd6bbe77b0c015e7f1a455ceb97f62a1a324e85a023040f451dfb8fed75cdfd2d272da26cae3343c249579e9ad4e887e91c292740122ca60f501920ac9730dcb31274aef5b120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301ccb200ad6c86ddac4728ad8683482888af97607d487bd5b010255d7f515dc5bb1399238882c4285bab5014082f2fedb02301e660abae09dc123e107f653d9617cfdb53897bdaf0aa2906ac7fe38520dd007d7c5f4bdee00b0ba34c2bb7c4c4097340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009be810ff06d1232493699b2ef0223fb60f3ef64a94c255232557b0fff28e75b9fd4b3379d8453b098ee9b5d6b34165d3023100b6c2a2b692f8a2a65ed4453bdf5191b25b7b8b5882916c3d547f580ed1ee7d1275542e552d012bf5a4212676a65e9cec0302047c435bb500673065023060c6b872974b5bfb04623b34c31bbc5ee948612e550db30b55080ccde9117ff6029676f0ccf4436dda0ef3bca766e798023100c70ac6c96d6e7201efcc534dc85a404f33e127e9c2e2442e95ffebe7eaefd57faa4ed6ead7f8e2c2ad52d48e0479d3c00302047c435bb5006830660231009d728d4f0cf006d643f02da9d78ecabaeec72933d98616fc0db6432fc443585fa73b3b60eb1b68b489b4e52440d56a69023100a48dc2a7bf6b1b187614a4319eb70992a7f2fc708f2d9f5ba766af96808bc6318718cfb5978d1a9820ce7590e0a33c7c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230036f13cff401d3386c1786139d36c305520696e42cccbfe2e28106f55a584ef5b237b43ef6615d0e763a4d1870bcb705023100cd2247febce5307884f8ea28a2ed7979d5d5b95451c656c3f391c9197efe02f534d6beaecda40f362de00107c173d6960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b474b3414cbb6837afe364a1deec9ccb1ed215f9b8a7bb13e23fb67b27c07c25ecb9287a65cd347a8f3d66c07ae40c3c023100a052f659b66cf0aedf90629f10d58e10b80340285f96948e6bfadd2329c70e04dfa76803a7525ffb4660dba9f0f6e56f0302047c435bb50067306502302b1d36af3a56cb8a072303e13660152412ca464ea312f830b6c0fca07a8cffce68c3dc19697c8c486976e1dc8cd3c53a023100da82f6d1cbc5d22892128d2db5eec96a05235cc350a09890423083dc732c901901d7c1e47a6ce83d7cb980eb096030620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d011beca6d9443c1a5429b86d9c7a2db57f2d2ce5496cdae5626caf1e056885e75f6ae60b1529fa1717dbbf8a1ad101802305a5452cb59a8f12c01bb398d6ccc79a20ef03f925a2bdfb6c9881976161b166211ecf4d48b0e7c8f1f76c8e857441d0b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100954ccd8b4c09ee614f4b9c8d4c1af6efc38766c68bbe8962606250f28b4e8b274595ffa5329e457fe4b77ba30a2ec80302307e343a70c7564f27fec03365e4fb356d2584b0f660128fe403e6e313bee48221e7db34860e1186479ac57d8ae5cd8c780302047c435bb50067306502303c07f0f69e1e92b829bc9201b4bf2ce0edae62a56f313afb4b8e9f99ba231cdb0ab57d0e9608ae66bcb205f68978c1a0023100edcdb8bf341e799cbca481135736852130fa4b6008539a921d228709812d6c56ad551dbac80718d44b8d894372a1df300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310096bffff080d717a1bc7595145610a50114495d46680def42a0b439dd79b26cc145817d09aa011a222baf3da5ed9859cb023100fd507d940e67079ce77d559de442d8b68dd6f77470acc9e52f48e5add4568ea918e3cd99b8f9bfd76dd69a99071add6d0302047c435bb500673065023100c0e947bab14e28796e7de105b5dfd3609165c18abc11229e6c6ba839eb69dae5c0706fc28eb006afcdf1e442fffeec460230628f8fafddd81985c0e1ec2ac0dea00fc9958cb371f5d6a66578cf8e8048841acb57cd9db62c5c2924973c5a60daf52e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304180299a8c29713e434e21e91222e129b36bda8e41af09b6d728e1e2a6304689bfd88a67d95d7e79faf39daa62b1031a023100a67da8f20ed3089fb7c11e55e3c918a668fc5ea2166eb04bdd00200a6bda225872427ab6d86656cda615f95ee108d7060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023048e9beb48c9e1e1d3df9560dc2c2407ac37a90e1f204ecc87f97875b8deb9f54f8ffdebbe964797079415fc7200abda20230596e2bfc41c22be31291206ead92eeaadad9be3313820ec4cb91fd8b1c0a56f84f7467449c676b99a2c1a7d59096c73c0302047c435bb500663064023026c48c5d555d7debb11a5c76b2d1b434e75ec87aba6b9a683028775131cb01dafa2f713986c519255ab1488a85f9c37d02300302aac47f882064eac74a0dcf7fbd2b951beb641cdce7a80df4487e2ad38e7a66c0938f29014ceb6d55d61356fdfde40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023033d23b6a4953936751b15cf4a03632cecd9afad04b983ef954a19c7161be025e7cb1717ce845965521cff039cc3df2530231008f482ebdcaa948f3a2dfedb83311d6fef68caae7129215689feefcfe0801fd79eb8cf5508dca74de966f7e3a6ec03cf80302047c435bb50067306502305ee77f0ca2e15eb4de32193fb9b510e4dfdc9221763a969ed898d6f8c627e56c0c9fd93005608c9ea06d8b753a64bc1a023100f4c756bd6da93c883dde2f63669ec4761b27970783b2817198eef9afd803dad8203b0776ff3792f0f813cbc2e0ae40a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e888c8097465b417ee91fbc116d87193641055ffe06e5741283a9b452d3b2ff15d4aff81cb304123eeb4163a0775e9fc023100d712454de89bb2734b20aa727bd0a5f6604fcad9fa9e48afe5e90c8472fb2e9eeebc67f371a9b2f1a1eddc8deb0deb750302047c435bb50066306402301109a1860c91280f258350893ff5803eb4403e3a5e8a375b303e257a2bcdfe59beffe2e7a1c524a9be5bd59d25e1cee60230709af5c35af99d3edbd479b2b06006888c6d5e5802821483660920a32616aaac7c3b671a51b9769396ffae42dcacc0ac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bb0bfdb86a5404bcb56b31152ca037ed9b379f17198a7f77653254579442028ef7ea27e0562308cf71835b2f36029a5f023100b1269e8a05dbd0859da9225d1df713964c5a7a79b998e938873c7f1abf90bf828d9312b3d87f4fdb78229e46144e6c510302047c435bb500673065023100e085c42be1d6c3427442e1acc0ab050674f0ecf0cfa6e3dc78a968fd552e4ad6c8d08a0e7b35d92a33fb77e3c479cda2023078d33dd636b2ece51c2b8c01c1a46be4165ac3f43041725ac0af7caca243ce0d983a14263aa18e5d5e3ff326d47f8be30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fee1782cdfa389ae91254e776fb6db3582a37773a941bb35aedda809542209d9765e90bec32369f11c1c266b6d845a2b0231009ad2c73b9d0e5c9cff823db8e3479b21b9984593f1a624376b139dab8a9e45b9f08987ba592acbfb73f7119112c715670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304931bc87ba860625fdcb2cc095e65b0c3f942ef4d29550edc9b7056e291dbab3facfbcc744b1c764780a5342ce3aba76023052936b3175c6670e4439973ecb2db7592637f391e8ffdbea16d05917b3de172e2d91de25600353142ca56ef0572fed3a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023054b9fd313c762449ec60485e36eb9e59f6acfce41fd9b2c5565a4a4697f31ed17d5459d0eafe948fb03d79191b979d0102307d947147f464ef2ee71801a721d91ec1cc6cced820837ecc709f714f9a9feb3c77063cf9dec04d7cde3bd556061806e00302047c435bb500663064023004b8f684b68de27afd0f0a376b2853e9c28f3c1d52e0fd5b2b5c3da694492707a31a254b3946cc46d055652141b29d3102303fb9036049bf218640e7ceca3190224493019789c36b8a82b4bf69de09bd94e730c96e0380dbd70ea3a6e631ae40cc720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009553997a017e4112527c71f4755602c1cab9f4c3eb37cee20bee073e20a20da424605b7badc28fd1d571af656b71649202301c2f340b7398e935c462c4e9d6c851bedfd0acd7f87e97839d01f68136fc54400a5e395d9b0600309a8cb26db60a96450302047c435bb5006830660231009caa0c00d2ad851d399989a82b9bafa16692819809ee2f6d337395288274f9af7c7247971d53a6c2a7f16fab041fc9b1023100c7c9131bca627d6afc0fa11b809dcd2dd5040ff920889e47a2c134a7d6be1ff2fc8ab2ed82683e065e78cfa16c0c6e230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a7bd4485f537a74450b77dcba711a8f5086cd00777b8b4954ec50397975fd56890b8f85479b49ec14d21bc9d94c65091023061517fcdd0a8bcfc7eba05e9f0ed8625671ae9a039c13eb28a2a459ecca02d38fbf35888e99b4e4954f9e099a833184d0302047c435bb500683066023100a635f7373f231d214beaf4d0f88c51392e1041908ee7253737d7d95d4c37d19a8295780558fe7cc608ddd2f8752c47cd023100b8ceec7b12d59e9ff4f26e65fe1ba4395eaa4adc24a12d2c3f49914d00685c47c5cfdd758ccbda7d43c0b6863a41c3390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230725e56e55bb48efebd86176dffdda56b10451953f37af20be8784cfdd4508158d05f8965d44ad60e985948acd862738802307d4234cbb2a3800444a92341831e598242fe0a19b6ad024419f9afcb1813cd64390cf875157471fcb85f4f9de775f22f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b32587e9fffd223fa0c567f59fc7db20ed536d198f447dc4302c3f13358cf42e5a970cc1da537b8aeffbb8955e821a00023014986e08db89bc8169319197053eb0b07713969d51002e7a3e44af2f4476926116930b614d1027eef513d7852d574c650302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230774f90a4ebed5588d8b1aae641819b6a765a17afce7666b988c9ff4b01bb42fa09849ff4c4e10545322284e4722e8c29023100ceb8724355309359fc065ae4761012bdb069eb6ea90b739145fe137f6f23d7665a6bad04705c8a88d1d04a6f74f7375c0302047c435bb500683066023100aa8a86d8205014ec4247dc8aa3f043ea25162fb1c4b75b9b4e8748d0c20a43ed591a9aa35a6f337b2e3c0e95f439e527023100b3e5cae18e443f17fc7e6b0dd28747a00965893ac331d61989f45609163b033bded968483137c44f9654edabca13883f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b144579639ffc2763469ef305711b11a51e78797b22f1cc27a6ffc1cd823fd4f9d83208780514cc76c6a7e22d16e4cc302307dd1da1f60e1351c8ebb79d18811bcee9295333b4f52efc1541ba39d7b1b7d453392ce0430974d68bf735ebbdeb288010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008bba65828203d0d251c1e4d5019fa4d55205a999141e21ab64013fb59894858be8196d58d9d33a5882184cc35f2ecba2023100a5dd59ae865c6c3b3736569e2f47e4ae7a5af0a3d6ce785f511d7cf02969ec9bd525cc86799f36ca4d94cf278e2594ac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100879b2a5fbbc6efe8e869df9d6b45c497f5e19663534e6bdc2c70318db42e11ab275598b79e630deabd63ed76b81368b50231008e4f6db80647a978b65be56373e9babd0e27fcd64b1ab7a40efb066b17bb07522d0781ca27826830ec60feb145f2804b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023032a8fd7ab7ef26fa2afd6bba04a52d5c3296619357cdd44219eef083b9b7cba7e509269891a0baba067ba0e08073d7aa023007dec1286ad43fa334a89840d621648b23dec27d6f628d678b2262042ff0a3b8bd22d8450526f7605c865e3e66c2d4760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023060e9bfc5ff3e55fd6ffe122cb944e07ffa18f968158029fb140041a900257d389d511d578cb55aae864a105bf1ca84e7023030a024909617516956b5ba3556f66942e57f2a9bd342196a35cb6b9f2a633a6d9b35d427bf2096cb29a9905630e661780302047c435bb50067306502301415c451909167999fd3fc1ec9db15b7dc84f20d59ee54db0f91172ccad0d158fd26a140df50dccc1f753ec4288fcea2023100cec2f30abca6a2ffc32ec2df5b214af3fc643ae6869579d5c0058dca5ee57a240d5a1c7a4ad3699937a4bc886c3e12a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b246fb08149f366f67751a900b31645024598552e5ee1f19e934cc5dc96dd3c9d708f355a2b1a9d4281bd800b73d189f023052c9da5a8afe7cc36c95cafe73a3b914424c58f20403837254f04ba82430eb89077491a647fe0246dc734deecf774d600302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230132f3872cc3d444f4caaf51bf8c00e27ea20e3dbac40a800383e2a3b71ef5697e1098b4adadd93d5d85e96f6b22dd234023100a8bb89d30c8e5c56aba913fc4a27a283f8aa52151ca72aa1d827df9fc5c386430952ff155f2fbea56f0146e536c7fc970302047c435bb5006830660231008cd4f4fbede77b8bc158a11c9d40cb19db26cf70faac4446c41872aa4d67de202ed92fcc08316aeba4eaacc5cb11d260023100aa6073874797d2de9b330acd9fe91adada0e084ef4fe4a9395acb758a02387e3482b7a0675e1bfc37e4e029144ff0b420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d2137965ab3661a0de4f084998e2591275143766131b4f49a14bec64be69a0b3cd137989bfa823597d3fa41ff7981c5802304cb67d5194888e244b4f378e866b7eb778a349b25eb90f658ee7998c69be2184a79063ac72782249b9b41611288418680302047c435bb5006830660231008d2570b5e919ce48042348d464d4cb25a7d6b4128111bddf26da606db0050916e4e1d9ad058a9a277efe820bef9ecda9023100fa89b9ca8eb2e49bbb4f27bbc5f37b2bb30bbe8336c6ef09d4a31a02d2fef43b80d4e9b850a3a8a55742d71f2054872b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f74179021c1e0807e2826358e09b61535e8046369ec75fb72ee301195f32ec0a19fef45a9a6ba5582857f02c371fad5e02310093e40906b6c1d0b6f1a6dbf20ab9ea2a4c8148ff575d48f194c9fa48a063bfaf26d09ba87edc26281278e666147267ea0302047c435bb5006630640230078a3d7dfcb73c716a29161f00b676e34738c432caf73011552c774fb3f0ff5db54effb920633d10bb695bfa97a5d8ed02300bfe3f1b9ef23da8db422570976fa7b07b4ae193b39dc0bd7a49a4352b47d0e30020555bbe2010d6dd3454432986de9d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310084e890e1c8a89990c559e395d97cc527be9925a09f5d3c2fb7b7ee6b1d8e7ea7e9a628e7e0b4df10a477c90aca5888fc023013c2884629c8bfc84eae9e097a2ab0cc777992fc81cb165925e75bbd457a49098450da9ea85a0c463796a4a4ede42f050302047c435bb50066306402306a894265766c50fc44c7beb382aa7b1ce43dede1052128527f3403c9237bc18fec13e939e9d481092318321cf7cc47d302306161d9fffd9dfc38fe4033eef5df7d78ad08c00b874164399cac69c5cec8cdc02c2c9bda77916039c36a16790b3a83d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023020cf44f5dca4ccd7937debb248f6c2551e21ecaee6c3003183d7464f9d09e3049b1f86211d6f7dd69e41d9561cd8a59b023068d861955b793ddfaae267e86100129a806774678c1049a94329c5a826e5fd1eff5a3803e03f2bb9fc2e4682721f69c80302047c435bb5006630640230768aa977bad9df3dcc41eec509538c12359de7ed1a6f1ac1bf024f818f052bf961d29968b65f5ffcd75560208731c752023019eb1f9224e887acfa3b04f41f9ca320ef54fdee96d7b52abcdd239ea3d3fa814173b79e6b0c1646aec418aced4200bc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bc5cf1524f3abb8219f2ebc66575dbb283646b441eef3d800205222810b2b616df223c3a6152f9b02b7a31acf71e3ec8023100aa14d50b95c61c9a0729ccb47669723e2fa69878f74331d410e18a84e51c1aa8b4ba23ed02b75dd85936e3049c6db9a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100846512af475675710c5da47f10ddecaa2904e3b66d066dcb9e8f391cda167e656c6f9c6f504018b46de603f07a822d2002300e29fe1778e13f4c46bb073d5decaddcb571ea23d35359533359ba5493bf0d154a59a5982bfcc6f62216af35e7f5e3720302047c435bb50067306502302ec936bfc832292dbfbc2b529e781b385a6ca5c9b929dacfb4ef349e4b17d6498f2cc23c3b79ebe530647b10c198373a023100a98eed9150ae71e34fb7b28e936ed46aa20abd30647c148114d29d17401a9aee7344ca2cc56719d407295cfa430ae1db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310096be70be8bb6b348061b0e206959f96a75aa1bac3800fe35c4c70692fb1aa2705f76da6c032d6bbd5a7b3a0cc24dba730231008d52e345fe847f4ceb400e841d2d06af71ec3c634ad46ed37f4b69480ea6f111095ab8bac6ac90c6d6470419335e68570302047c435bb500673065023100f25449f19fe7a6ebae642530be55981d8fd8b46887d0c8626c7de4f5713eb2e850b407087895c486e29f51b38d048c8f023024659fe1fe58d0842f7e35feb0001f6141ca76bcd23d0952340792dced19a5c08e821f81b061ffd23309e4aaff72f6940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100da152d5f10098b5bcd80835bfcf53eb5e9fc0991c6cd6297dc2b5fa472c0b80c30cc11d2d381f1d6960dc6d6e74c744a0230773031de5b05567ea996dfaef35ad7c67bdaa1c9ad799486ef45af4ba786637beeb96749cb1ef9f5e42bfa17befad05f0302047c435bb500683066023100a6c34d2d65d348619c68bb68e9ab391292f1b00c57e2dccc34009790add017c23baa3d2897e65e7bed85f7cb689f303d023100e86f464aa4dd65868c8aa0e2a4b27d2722fbb9241efef0eaa1300322b7d228e012d0be891855418b29c1e35c76ff4cf10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e995a22b5e2a8deee9da71fb130fc7aa279ea1a477288d454b90434c51463e66ed49a3868a91576fe99b6a6665db2444023100f6afcbb87ec48d59de328561ec7a9296db85a5a87f84928bdee14cfec25f836f3df4528aa1e0d7555165dfbfa4f7a17b0302047c435bb500683066023100c01cad5a49b1a2443177eee5d0067523d8d40bcc1ef2f966d8631896d7c3e50171f7ca83acd191a4b54153c3b6b2c1b6023100bcd768bccacd3bbbbafd94399b50814855c4018c283d79432ce7d9fae86559b4d4227ee1928c3c9876cd0828e61cd32f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d05ac7d15e7ebb6a5417ee324056b24d9ba5a8b7b6e7e719b5cec8bd7e67130939acfc30477ba1645c8dae2a7173bfc9023100f5b33e89671f6646483534c953045fbed50dd952d57e1bf47e2965f9e04e74d1f7e7b4ff352d60e8bb8501f8898dbadf0302047c435bb50066306402304c606234255c29c47c8d8624c02e637064a07eab344bdda37dad7524d52f89c18f200496f4b27c34f8d95febfc578e8d0230338cd59afafd5fb5957293d4e67d93ced04a339b6f37e75772b20f2451501827c7e10a4f42da5ed1611c74e97339f9fc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ab2d30d55433fe3ce2fe25064f554b0e8b7199cd393c571c3bd4ff48688446fed7916342ff823f1cf48a9bb5f3cfc80102302b5058ad9f444490312baf761ee7a1ab195174d76ba20d41b4235993bc5b5470370ee8c4620b281aee9940895ff662cc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302021afd63236380d05a692a4e8e320a3cf9026a3d5108fb28c29d6e78f4fe76e682dd64faedef034215dadd977c9859d023100d7598a27cbbded3fc1bdd6f40411ff7529b7fd9887b3e75e3b93708892459c53042f5eb0e6d134bf52d7dedfdf01e9a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b6df48a0c78af17413224e96f0dd4a068cf81a9406440a3589a36366e06efa283adf4a1550aa052c9d455084a8aeae6a023100faae4e298eb02bee8c6a397e379c6603e7c8c23b3e49ea16bda37ea7302c2d122c291693594a98e55515bbc2ead76c550302047c435bb5006830660231009ec3a235e7f5fd1cfedcaff47832567484c9b917e5293051cd8793fca405e8cec595782722bd10d7a82ff1f447f15ca5023100ec779f1ddadba6094c8d6b3f8fe79fd320942d6568bffb5a578b80621ab7592a8b725ac2b4bf3f421dc27f10762ec0580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ad4b90ec83bbb1294dee7820765321592339b4e936a6683f9b6d97d1486a2d776e6f616f555f6fe0f3c392c8f6a550320230458edb0f7bdecab1814757ef91eb077c51895c5c1e9bd4fea8c3c5daee0f8716b2c2088fb84dd5e48f4794ac2f80f6940302047c435bb50067306502301ae66f6736ba34867d613018fa1f64d1cffa675100b24c148b85cd6854c5f92ac23eb8b423802fdb5d46a773d862c4db0231009db69608cc02636beecb567dea79d4d01baf7ea959cafe74ac7a07531c63ef0d2a5a75b749ef1c04f7d93ea3f212d3540302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fe94745d0ebe187b06620afec812c47291ea6e5b0935a93474067df355427bfbb662a6056ea1e2f9c0b62ae333a40af4023077180cf8e64beb1d12e6e95276ad762591c2f20e9bb9f6dabd5f766092614fee3f156b86a578aff9cd41b2ce56ab2bec0302047c435bb500683066023100f91281bc372adf2bb9ea6c9e3e1824f5c06ddd67f93c8590af49fb1ce3d34f4159e945544f3a82382e2eeea274f76c8e023100f45d7588ac7cd042f7d8a3ea0616658233637103f5f75b3e0ab85da6b65e49aaf47c772a7f1c7acdaa40536baaacbd450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307c5c50003f31296cf8bfc1ca18cf1d9e2f8ca4b0cea1574d2e72c59687b17cda7b2fb482c7accff4741924fc098343a80230713bcdf0c2315a68e949bd6f0025b623f74f56cbf0f6a8905dcdad3d0be82323e460bd2d17eba857ae4cf8a33db0c5560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303dbe790ad9f02b4f3372c0c502940fa543efbde93701a261a98718553600442baa8055048105414f6dcbd6c793a81c7502304a19510c01c244067630b86b81d71c88d60310c374026b8aab83409b437738d98282dd16a83a7311e2e3fe1eece813870302047c435bb500673065023100a80dc373043d199fbf2f163fcc99b66813783920956767e855ed96e57c20c329f701d789297169f0b5dbdebf43fa016f023027f3abd19de576bf97da1c6c227cc1241aa7ba8935a20a272b189c6a42cc42fcacfd850a8f9c2eb0c85217fd09c3c88a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306707d5562f55bdf49809bb59796d62d9b951b051a7829bf56e2e00eb28625f8d46c55ded0eda73421ff5d6aa1cc2f78b02305cae331334ceb482f11bb1bc3bdd48516746a1a433e58e67481d4cd266479de4b226b4e64154c000fb0b4ccf7369158c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305304902c9ea378e309271fe7f5e25515bfbce92e7f97150f01b32956bb5faa6560d3b19b60667c1d677e6cf29ee5f811023100c5cb09bfe6f479be14f6423520072930a96565c425813f304a753daf69b381bec016452aaff652a8dd5950963613a03f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b6597d80d5866592a1a59d4dd58d20ee07b846d1333817d27df46c84da028699871a484130ba987df3439a9f80e32d120230659f595144d02539d1ab5013fafd34d62fbd59690aba111a49a5c6497206e6a1359c6b8431569bea7a837b685327294e0302047c435bb50066306402300fe0b98a34520d78022b48c89a22f07645dce1adfac3932e8994ca102924edaa3769bd1e747bf21a9a1bdafc2db4969f02305cd503b5c9486956ef36d088e96e732748b3945c40e2aa97dc27404d2af76418dc8753d56080a29b51567837b3e96a840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305272623ff1bda59f55c09a3407052bc93ea752d36b32e45b7d73df69cf5db7c2e8dd8b62b926e7592e0fc92199c2a47b023100f0334da30c439349f27f33014647e4eda4724f8eb18216b061723699e42680c07235de2551a7a7bd9d58eb9a40c88e3e0302047c435bb50066306402303bd4e674d90a340b1a949664d875e1925bacb1fa675dcaf91a85f848b73ff92f852cf44a75851bb32cd008e8cc3ecf3302307184773b6efaf79fca32228b979591efcc2fce72ef01110ffbd084af8c6986b64d91cc4daebdf6f8066bfe8d67dd52870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fa1ce88ecfffee0cb3b0639cbdd531aba9330a38fc1ea471023db246496b461d529e72667c25dbb1e321a23e5ccf892a0230723ffa1389a055ed549f0dc065872ba6d41b7549285c7c19ca10cf4165c1432a60369b6d97af7d1bc6605875ffdb99010302047c435bb50066306402303a4a1927c8b255a9e580cd7a3c50b3231e1b9731ef7ac1320a8cd11e239c42c0eedbf37d8a8f2279eb200bbe54d2d830023048ad28c5c2e60b7b2f48b4866c15cc8202e00416333a6ffb204fbc4641cf06553c1ceffb48df1411b48bf00ba00682e70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008f37f3f405674d5133fad9c0b9c6ba3b9c8eaf6217ae649ae9a712c97e2996699acb3cfb80b89f8948fafa132ab593ab02307ee85d693e67171a5f097c3b73d1dc533a8e7e4874ec9024b7da55203c5adc2f5c85590d01d4413a9778710bf55abe9b0302047c435bb50067306502303a3bf509e280ed63d4e7ea3b7981a7158d8bac6c8945bb0b50f1a11e093be97c9f011cba78691ccc0a5550b046d14c0d023100c7fd40a6f69c69b793d23f2bc3596df4d5188b762c1defa9ed3719db69f1442f9123e3323ad90d60842abcd3d0b34ed40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023072e05f68de08458c91e39954d7b707e2c18892a5fb9600f69dca4a8f48114b150184eee0e8b0666928a09094b4ddca7d0230598ebf29489e2574b87f6f3bc665e1bcfaebafd422a2e618bf4d2ee8e00dcd7c3a9ea8d7e0e6aaf28140dbdd2c2baaa10302047c435bb500663064023029d90d9852b43ddd9b26b64b58661826aad5b362240d83fd24f1899769ab64117e01eb51c32ad137ba16e8890ec20c5602305000e099fa110803c6c10459a2f0ec8158454301fa6a2920e1cd785ba811c43c42ff35db4a6fbadfcc66bb07e51ba2670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305797ec1db75eea6b83a608944cb0f1b1cd3276698074e6227f592694a5d4549bd9c5f40b773e3b8edd631e147ff298eb023100c2aaf48c9be86f9499121a7ec2c350bbe06240eb67009a654026ee649b8ab875d95a2460068a3bc413a0576299beb5850302047c435bb50066306402305065586efa9a8b2441781767cb7f28393d47ac98a26c9c9bcc27a0d38fd9243dfaa33b2d6aff25368c7e9d6ea5b5677d0230213f95cd4c932b38d163a7ab72b5b2a213c1c7a0dd7f8484d18124336527517d20ea73c74a8d2a52b2a14d9e70b4f32b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306675527d5a2b61e59fd5935ce86d4d82bc0966e79687e16214dc40c9aaf4f4b8c5f6613995b6d3b022e6d25399d8b365023054118c21a8e0d5d82e1f65b8c27169505b78b38543b3399abd4f2a894bb8f605d078a41e04c9d1763cbd7c8dd87d927d0302047c435bb50066306402300b7b406fdc58eefea425a11da471db7103c47f48d60d64dd760fa66924942b9933b332f03424570b4e12af277225fba402306d9647d7966136d656ca6316aa5b088b64e433727eeb39f4eb9d6de63271a4325b03feb2db5eedbc6662867917fb40d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a2fc5f5bbfed8d313fc5c6f828749e5e72cb95c4746c8552552b022e459c1ce17c298707bcb6ba630867f69395efda34023100d5204463360c34c4b21fbd5bcf807ccdc8a8cead053ef62bf100b3d7b0208ebde2ac799f679d018d4f161cdcd57c7f5b0302047c435bb500663064023036f2ca1788a977c6bc87c5e89e25c52f50e1599af72818b1d3a5aedc8c502e29dabf0b752ab31500a9fcf946d6a6de8902305c84be6f9527bc6959bd5094fb6f37cdb196204268da204ffbdb651cb2bbc7c079be8fb3354869d08f740319f25d87230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230100c6f4b7951a9214a7f5c4786106cdfa776401d7ab36016d8535a3bb9c0febafa1c7d368ee8e95855756bead812d40c023100fea69e4c85a93e3e598bcc34452d6e96391af4be0f759cf031fb9212a87f84e93e708578f0a3e692e5568b4d0c2044ac0302047c435bb50067306502302a32c099155ca75b9c01558886d86bd09359e922a4c202676134492d3eb43d7bc12ae4c409776613dedf2fc5bab18016023100c3732f281fbefb3dd2d38ef532637fbe79e8184456d72f956c553672bc54524e1f1248097bcf1e3d6d9e4e33b87cf1b00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023030b4a668b96c90acf36d17b52096afb65dab44530a36684ddac8481fbe3dd26d835905bc388e925f12c1cdd00301157a023054e7fcd714c7beba4ce9c39b968f3f26f5edad5ace2e6c0362a2989df2ada870a9c721ff49bbfaff937bc111b076c9100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d36089e850846fa027133e0a2aa23082fbadee58e190c2250500630e40505ec7aba149105662cde4740ce607161ba450023022a740fb33e073b58443c90210750e125bd3c5cf2d9ab674a58e51aa9e7e98c6ac8cfe98c31e0d444e8104db1baf880e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305d8170eb8db3a5c8823553bfcc9c12744623f35d974442779e3a091f9da7cdc1a86a11c803b558901b45406fc8f8c7c902310090e64c58b1943af3bdb8b54e083c95560dd553673a1919c0f1162a41155972e51ce062add6827ca153cdc8bb53703be70302047c435bb500673065023100b961832ccede36aea896e324d91c5e460c8c7cb0f552ab9ee7ca3e5a33a551c9715db714404b6a78b8145b9e7bf22ea9023018fd4aefbb01443ad892953b01bc943d47bf049d66b643d3916e08f6bc8fb8ac7c32cf7c23ab8d0a1430122ab92d06a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009e0c168c2358e3366b43065136e961e7461839132bbdec1d284f4824c8fb0099dfc45194e7e43db227639508db5b0afb02310089b8f452c7a41dd1ee37054d884bef926f91458ee5368ab81b63595ff9976b246815683e8e9b318985d72ca3c540298d0302047c435bb500673065023100a94450e48d49debd506c838c8d1d55699600aa852184f055ee8a0c5e710e811c7352e61bbda08449234425af7d55b90e02303916c27fbc5042cbf217898fa464e5c5faf70b306f751736457ab83e0fb76c73734330112e65e6e74e18f08dd12131630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100df49605cf01334e5ab4ccc70523fcd9dad743e65f515187502e0e3ed5a6c2e2ac2b7b2c21eddb143b9031872a17edfe6023016a95be69ffc1ae9126f1ed793fef2307c56100cf183bbc582f624e379512f85b620b3ca2d91443e7b7a2192e2b6d2f50302047c435bb500673065023035d4797e076050f8383845d7ff120acd7958c5979acf1e09fcb40c2df17faade31c8ef7602ff456a31a9c2be2bcefb24023100add211ee21451605f07c7ffb44aa6916941c8c912fbe3c394f27c14553a439a2828cacc2936f6f6a58e142b79199c4e10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ad61f23f15cbe015d0bfee107565e137d544ed847ee7df9f9e623e4bf684cfda96c3dc4d40f18594ce4320821be3f2f8023048c8ac1405c0291f39f795e3e813766093c46c375dadfeafce645431f145841437cdffe4eb035ccf400ef8c40c4528de0302047c435bb500663064023073c80e66c855209afbe4ecc3db84eb0cf71e0760ae9c208ee8f341df4d8a46b431c1ff1efe8aedd2521ff0620c592b360230486d64a99696580d260451e2f6405480111d0a1c4c322c5ce514a6369764e63ff2a82d6b7b8a205584ce298ab0590a7f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301216c2a7cd77ddc3be7d9a475b8a8efff69a3c9961a042c391612728faa6da9201585c6997cc6ae6033be3eaa1da443502305e8867ca8d2a556ef7afe6f1a1bdd3e96df0718a87ca52d83d9ec1e511679d1956013aa01994150e66a77850a2ca047a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305182535c6a608b48bb7b287ffd9b632c46f3ec54541554e158cfe1aef8547d78e3a8e5993642f1fe9f62e6540200e987023100faa551d4319ab2475fdf0b08c4425bfd8ef49efb7894d95870b9cd3d3a16b7851aa930ad46e72716960e8a22e37541e50302047c435bb500683066023100ed57c538991140dd60a86a611b7772efe95593546a0c2a9042df85109a6545c2cf58a23299fb44c23594b1fafc366b4d02310092ab6e18078a4f26eadf9a077a4e963de723735cf27c1d1e1d14e98797afe202f1a8b6ac2a1f3ae0d66d332938ce89990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023061c18432cb2c11d886caac32dbc17223bc6db1ef16193b6de0a6131561110dec68b058a61c715727971a7c73f5d09102023100deebaed9ab4ec342bd453375a476be2cb33a05c7addea615b82bfbc25dbe5b90f47d8c88e7d1f630bae2864ceda044130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305c346449e874e90b8fca6b712a07cd4f2de495bbc5a17e8854e7cd9eef2cdaad59603751ee0384d085730e2f67a75e28023100f6c1820a126b3d3491cc37c8bebd745aeb36b3cdf728c432882ed769b4e3a6eaff62756dda52b0c1ba2941b3bd0cac990302047c435bb50068306602310095bf1cc60ae2a173f9b5b375ed357715122740769f2f58d4b3b3247c773937efd1431d34e5d55c991b016a575fccfcf5023100e3d4523f9b24c750767bee344eec03283eed4951c35ced1fbe022ee43fb76fcd9340ef653b9474ffa3940196b98af0270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230042c671df08a33fe19c9a57f0d6119270af89aae6c188cb3fb0709c26f5e8182be136a42275f7ff374512454d36ca623023100a223913cd1bfe2d635068617cfe30d5039f3fbaa8325fdc8575a48b11ca1660ceecfe61d5acab2176e98ebf6adb7b0e40302047c435bb5006830660231009d98731620eca4e3205611b2f145657637c31d5a74292345ab94200d3b5a3db07152d5bad6023fc1a2a7b38a8142ae53023100c63d655b998532e6bf853c056276c3333c21459852218e42e2a1f28b70a7f1be502ac4d4a903a1d21665f08e8ba925fa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310083f77cdd23cc83c2c3dde17d0c9f229d7759c0ae8d67377f50150099d996d2b480542d07ea31a7faf5c728b683b71ff3023058dd4ae7b92829cf87d537a21df0d65690de3d8ada535fc34bd0a31b3267911e2a00455312327931f805c1ec448d54180302047c435bb500673065023100c441ccb818fd9b27a88b1a5b4a3208ac4b2f073c372ad3210cbc7eb8a95b1db8f98a18256158817cc37f210c77553fd4023053154f39b5dfca04f33ec80756adba37048a8158f0c3d3e4cd7bdf2f1da8d9fa07eca78532568e8aad772b66e7f0cc100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230549ee15f9b228d53c7e06849980b31c2768f0430adef56fc89f0d8d87fa997388ee7985873b1e5ea362e4a1c148b236502304c3fe794a2baaf0d32f7dcca8dcba3e6b381d799554508abf91687ffe84fc5155b87761208eba28934131e520dee04860302047c435bb500683066023100e9f7970816994809e2b2a66e086d01700f4673d405b3d45e3e90ac050bae1034e3f06be29533dd7c36fbd6f1a94795460231009c8285d5ac0dea9e560edcb7a5fa1dbf8af21ca39d7885338e8e6aa37ee7802d663aeb2718324793171143e878fa54560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304b31a8303493a5172b85a449c80c541c9cb9064a8a7d44d9632e3fe7378172ea28d4b985a30dd3d51c09fb0cb3930bf502307d1b546ffdec3fe7a4825179a7e69f8136e020d87b894fb98709d96e5fb8520baf177a6346acdaa83cf261c5f0bc44ac0302047c435bb5006730650230126c8cac677cc38ba1b1c723f4ed7d46270ea11c580a833772ca5acad9afee3253b9e6cfc29989795d550772c8ba1064023100984632711a1473a7bbc45d836314d928a0f2b751bd0b98ff24d5cf72ff491d7b01fa0334922a61e98fbd215e9527c28f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303ceb6cb3c8454e82b5feee1b6b028c9dde1e181ef1211823969f870fdd6ffc572cf4c6a366e92081d043f9754dca407d023100a4629bce52b9fc88704657397c2634bcb5dd6792737e4f20946cf90ce49489eeca02da32dd641f3ca40349ce785704fe0302047c435bb50067306502302f5beb2cb00ebfe7522911f8037a8a5ae6da498af35320fe864c70e92fef3a79245c624352355cffadb2d09db0063585023100c28e0ba16f559e4db4d19cdb0439ea6250accb5adeeb1d3cf876361cec44a4b8f09a677ef75fb44df168e87dd6fa175c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305d6b9c6b34576b30e3dbcfb8b60ff53addbd77fa110ce86baca13a660faf4a7f2b45dacfa807a337e3c56d16418acbf202305f94e5938cff5c74cbc0ba8257255718915ab6e79bae18980dea458ae4e640c91f385a2afbf87aa09be63bde8c2f11c40302047c435bb500673065023001afefea69b609b09b1b0ca65019f5db4ef177cb0c813264f35c3aaf5151abaa5f1fc6b007033b91c000033b72a55306023100d44c6d119756b5867b85b923e717c96e2ca84cdd57356ef0d038d2a2618840e72ca00cc5e9a8cf4f8d16b0aa0adad2cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023039994415e3bf615dca4936c6bfbdac4d6053eb5b731afa06746c4ce3f495243e600c267140c444d127a632ebdbf2f14e02302f9fb8f32d48ee4c6331977f158907f3f141ebd742f33a335208a1f1e8ff04c266bcc9daca6c127c02c26a51c9798dde0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305135348c629a33ac90406977acf7173e9bb5d8e556157d762db4066481113b3c4c68b858071121de0a8532b7cc9488ca023031cd183c6fcf67b5d203dd6c2ef9b2045023b8073b83cdf680b639aec56e0e8860a579acc9051f16dced195588c746680302047c435bb500683066023100c5cc73ca054ca06960e8fad778b19aef7ba441c2cedad729650f2f8c19a427f3778d84f91c61b906300d9a0f132bdcae023100d4ee93fd915b9a4cf2cfd573caa1ebc055c4d7e64baa5f4ed1b20b59eeeea19ced2aa8519a9dbf6ce799ea3b20f066240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300dcf08e564b6e6e4adfd8d098fc822ec4d28a1a5af50e614837d14cf33e506eb12e6495698ee27352fd978b4bfbc128a023100a2028c45866f0e5aa3846b033f54d06b9a634a9cfe114a925f8e7969aa577f7651dce14055c4f218de686ae6f42726a10302047c435bb500673065023100c8250ec9657a16c6c5649ddda37661154d56bffb646335f5fe4958f5077b3a9fde0fe6bc2f1da93857ffa7886b1a542d02301c68bc498ee5c3e25b091682a064a03a2b7637d80ac1ed8d3637fc21bfc1ce67fe1fae62fa4d32d4c94660d86d2354aa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310080378437632b6458c40471abdae0a4cb1147e2c69113ecb094691073521d87b7ad199cf92ecc066e6e67c299858740cc023100c9df2c8616ae77142fffb464af3c8a56b35bf759d7b33d535565a11f339f8c8610e56c7be99b7b3dc1420be436ee0f230302047c435bb50066306402300a7e49c80ae526b3d8667a9259738d2ba75c21dfd5c1697812ed422c957c3fe2e4cdc7949307be486b7f5c0fa30ab975023020e9794988b8eb7b1a703661389f5fec74fcdaf4501cf04fae90730da40069da4f7c156eae63893bca70b42b6d4cd5f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f590831164c21145c60990ea7fdee0bd15570ff1562c8c2fe3b2ff5d41538f38a2893eee1fec0949f871e98474647d88023076b953efd24c67ad65bd32f2f5acc22efbcc376c69d59dc8c546ffb1acd0e2dc253f37582a968a3225524d0e23894f8b0302047c435bb500663064023018bbea9736c96b5424df7a31f1342bf7dea398e41c76ab0305187016bd0b1935951d48680cfe825dd6015e4daa0a1e6c023048311245b5081e00f538d5312b91b0d5a2bf5da8f1a79ac0faa882a5218a44bf002a1754fa1f7a62d3707d600bdc07080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230381a22a433bec40b2b5628e4558d76bf631414a8023ba75ae3c2474eea51db4f0eb939afacf9edffd2ee20e0fc41a488023018bace0d6287b1638e6f72fb5f362dcdec879e5624412296d9068984bf548e75c7bff244a1cc0f7fdc7eed3da475d6d30302047c435bb500673065023100da12bb06615f0508069567e8b01e95c7ebac78db95019f74a17f26067f2d191486e4443ebeb0399a47b94fff0d0101410230334cd8d15c115e7408ed28ab2d92bf92c8f0ac51d83b4ba76a4df4e89b451e11a0ea8ce6ba0f3987ff44c4c86ca024a80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303394b9fa6f7f480e00594570d500dfb8de61185d8439f178c57e87ac1e5e8fd3eeb253dcbde0281cceda8b04f80117db023100e1cb62d720730eae0bc232b161bdda14a0455b88c0611732ad95f609ab3ff0d57be070a03d4339fe72167bd6870a96aa0302047c435bb5006730650230220f17a117915df1447d928e4400e7084a9addb38feb20099b763cee37b9cd08dac5c1366305680986fadcbec30ddee5023100f60d29b35e273ef19ef22bf23808948cffe290c5a77aefdd7cff14c0b2d2764cd793a095cfa9cdee98a602918df8033e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303a1f1d77e8831a5ad212811030ef4635cf460c206ec2f21772d541748cafdff17e5b8c3434e048a62d29f556401be2cc0230034282ec6f4fb2c50e39a5a2170984d257e09c303e03cff42e5c763e14144a7405b4153f336d7dba599c61e0666afcf40302047c435bb500663064023025946125cd830aea467c6751d79a710330833a5f71c5414aaa794bc81c73970ababd5a2cdcb2584841ecced315c69a6302302cba5196eae6d0d08d85266f0751d19c4071767ca60b688934704fe6f5f394ba09e781e19a0910db9bb9102a6d07036c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009265ad50ebdcb13cf758d6286f74adfb8d04f593c45002274c24bddc6073a997eeb75db4715ef4e6c6da5e129ba9615a023100c3f7b1ead761c6f29f7d286560d304daea7519e988ec920edb2c376dbb4b8c549a948b7e9ad0536807e48df6fdde60f20302047c435bb500683066023100a8ad23b66abcd9cbeef28c6220182ec75951d001aea62de115cc81f32ff37df7b7ef72e16229948e887c78d30bffaedd023100bdcbf251cebf5142906f7146d32e0dc399b576713f9896b6e836d1d682f894023a189fad2f8f35fcb3c5c62a2e0c4c130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009eb089a80826c49d5768b2d83e054950ae28944278d10e23400e8e1450ac3eacde82f69e103abb5f4c83afd817f6f2f3023100e5bbee66dd495060475092274e20811c167af0778cfd2540c82485e61759997500285da4687e651c3a0b17143b30bb170302047c435bb500663064023047a516f63b7d8e93975a8ea636eb3dbd2aff042cf103c541376401035e8b03aa1244f831de3a1a370bd90a5d3b914b1802305de352aeb02a5435a999b9783169f60786897bb93d037cb8350d95b88323d4c62fa5b6e819b67f0df570ed2de4976a510302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d309c038d81d379ff053ef8dd7047c83bdb21105a64298d1f5d985ff15aa0552c41079589905b0fb34e1d47651b226b1023035aeaf99c7f78f8b0d7cecf6f8cf60a4debc7b7a8e2201f20ba44717fbb12f222547629e589338797fd0e0d391a42c9e0302047c435bb500673065023100fb5f7d5c2b3dc7dc0d82c0b5ffbc6db00f79bc720756680270cdbacd46b140ab86632641edab1eaf269f78cc86fe14920230663e5865a3fcae363dda2959a9ae90ef612a303dcc7ce5595790966932bd75d1a685db4f8f28a07f90f93da13030454d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009b82011ef615f5a684adc3133192c5e4aeb4cf1b59ddc186938211e6198e5083b2d1f95fb0e33ccf6b57153772d749930230145ddc09a568e13c58495db2ec01b72a569e5f44a2af8dcd34e7ff82be799c0e2b6303adfbf28964b283abac39a6e58e0302047c435bb500663064023051797929967c665e1f8704a468a3f5adfb62782d05314ee443b131f3e6b4c20f6cb3bc91e91be77923c515c54bea6db7023031402f9a1675228b33f354d3f4d971eee2f96c19a87e6db4ea6d6202e53eb07001b8f745c70f515dedbeb340d42b13c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b7f5378d22c62f7ae316c993518e4bc9d2356085b11544585ffacdfbc3ff103ff32bf26a521a0f81e0a6111031cc8c5902307dcc3d10c9a291d91dfcc39caffad7e9def3608dc3d217fa87b06dfabfd4ba76e271adf0d478f63deea379361387eb310302047c435bb5006730650230524f1d21c0f4ab9a9388838e50c96ed847f1cf6f56a6e0e70d2844ba07fd5997e4e61a9d84a4a279e40be9d791505699023100e17958a62df0598c163b46595d33841ea0a405aa72b179cff7fee5a3e8fa3683ff415aae22d12195dcce61c0c3f969f60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fb59c3193e0b25798f4176087cb48d0916467dd25a7d5354122ea1c89599a29abeba1cbf5ff97e7c5ee2fc1446481c190230538236dc885f0a397f12f855fd52b0eacd50725efb5e53c9d44bcadc2448b130d6f7cfb0c42ccf6ebdfa6ad79b339c4e0302047c435bb500673065023100a905562eee3c06c18205c50601b3ef168ee8b38e07b3be1679daffa88b2edde958c7de0e0a0f6e9f16e1f34fc503e1820230510236a10bb685e230d74f6dca74c711cda79ba9a6b09b732ae9bb6e73cb339863ce609e74452974a55b664240a4764f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310091fd7919d2470900f0ab7f3b28ee1fb15d84f9e9d554da64353c7f040e379c7cc169fedb0c4ad46ce427a9abf6a51670023100917bbf88869b6e609cb5a59e9f86c73e05eabcbf3f757bcc9ccd296fa8b18f7c12f329f7a0486b8fea1c48dbc09b67d30302047c435bb50066306402303bd00870d40841c0c7ff0433d332a435568459497123b95ab5eef69d55706b260b51af6a49425d8c4b69eca775047b3e02303977446a063d2f8791357dec1b2ea20ed41b200989555708bf31475ac0dae4a638e9390be5cf75f5370978bdd49299850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a10957fa5ef373b050c55f21d65fbafca3537f200a7695b7666199ea45db219d8a38a723ccd6a5791738189ace694ad5023051291eddb7d68596143872c407a2f76f040a5bc29497a9b25a19b87395d36e4a1fcaa742e310cd9394593f2710c1fa080302047c435bb50067306502301a1bae95a2336e22a4573bba7bdc517af29676826ff0ccd4ead894e722bf200d124fb612479ba5d8c31fc9aa0aa76598023100b476dd5966d39f434fbb37c7ae0644019ff5862e47f9f4157cfb5fd6a286ead8c517aacb4bc4ba9ff14afe129fb25f930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023073e203cf5b916136545cdab854950b7c37683e7463628e6ca362ef9e163592b247a31679d56b2b9c717030ef62dbcc8b023100e8caf3e778a3f8f7fc0fcc1e1758452d9a699b708bbb88fc6eeaefab324b7b767df61c61ce953161455fd4a6e3f74aef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304f42577bbd9c57005414546181daa6f92c9394cac89df96568c80ff1b4f46f59674b50d077866283c5574054b3c97ca10230368bdbb77efd1f14485ab2d922e1843f03607c4c4d407da0dba8af60a0623043a5ace78cf6aabad3c365d54d8014df7d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301faf3fae19377c0038dacc457d9eb083e3144d61ec4f47f14b5266e7cc1f82251ff5490a84ca8418a1097ba30b974c9d023100f5e76d3e313a9fa2b8b6cc5b92dd7cec5167eb40836e0f6258df0a7c08c03b978cb99c64c4b5d0ea89ed67686f5083b90302047c435bb50066306402306b938cc671a925b598f3b1b687d0938f08440268cbcd5c4aa6305498b57e46aa188ab712a01159e5564f194dfd0ed7040230641ddb98f67f276a94cf9b1ad793cbebccd208c9e47cadbe59001363e546df971dcf9f0fdbedf8ca5ee6463c8326e2400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230631ad234dc6a9013e41ade59c9bfd14b07163c093781d8aeac64a677b412f5a3505795020802abbfcfef9b8cdeeb60e6023009c301376f0055a64f5f84bcd3cf2354dd3db4d0e6b32eb5ede6e834b93c2f7cf7919fb458e4de700c7d855f56ce47cc0302047c435bb500683066023100df0c0cd25e2fbf07f3252b2f40bb72bab495190f98e68bfbfeb0301b41e2ae8c56a9e68ae54e6590c675673e1adae261023100fe3f9d3b3fcd8a8690fed318815cc12fafeb1ddf7c1b46c21b11095134cfb491739c72f1245d4e1d43e4c2760836ac970302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c12ee243272221119b2538e44abefacbe6ef950d56155bf102844d3b1f555497f21ede1761b6fb9770e125e6aa04f9050230146d129ea31e0a31d04ba57d2f82af061b53cc30f500fe2dc6fef26b155e35fd630e5e1d62e5705ff2c2ce0df9fabfcd0302047c435bb500673065023100cff82185ae38c530fea90c595a74e2858c6970edad7e44aac431a470500f51ba50a42979b9ae89fbd7e22c66d564fe0e023038c6a4cc05fb473b8a895f6c26b7ce27c4b4a904fbb7dbcae62f45914de4a09d1c75a54f9d5e88284cfb24972cd40b910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100996bf9f7ea62ad24ee295a203a10c50ed2d3ae9daa6183a7fcb6c8f5603f92ef1c736cb23ce0ebe697376bc1c125b1f0023100ffbd22c2d599c016101fcfd7c4734c2c3de697579740c386b3f270d7f7c71d795be07403f456316716da4a0109ae34060302047c435bb5006730650231008837713224860cf83fff6ff51d27e4ac3ab8cb18f2e1d5c697b1b72c6eaeb882fa52f08ad0fac584c97c6165d67636f802304a5352fd6ce2e73463025cea20a17abfd01837ff3dfee25f38bdb9396930434dcba8f59c55d02d110f4562f91108cba40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304fafd7b18a13ad256b18f2421f55758b7932f93f7450ccb75c5dc5d0ada22992fb750da4682158b07ad04febfa0bad24023100a44e947e86ed173f0cefff6bd00d3e9589d5dd55221deee453a723f29e11055e4f6941f2f792ef4fe827e1215bd0639c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303dfb6404a6953d1f70c06cf18b525cb11449c7ed16472378e2badc9e6a2939505bd963e11b567fbd722ef6c963a88d8e023100f210085ffbd42e5862d9a5a5d7fde8b795e3eeb52ef58a624fd7e0fe0f4aa7821e303747d89bc5e37f939af79c524f0f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e4d1e20c539acca9705b43952b7c98bf92b1bf8a5b4179ab411c8954089e43ac89ba5b0423dc0a6977b81cbf4bd5ecb8023100e611406e732e9a8036b33f2a745ee13ae16593de7d8e8137ad08e75dbcb322ec608ccedfa2864440b5cf9b235d42dd5e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230329859915de863e099c530ac6d9247c7baa9cf0bace464ae97ca18fea97af2540fa65d93d5711bc73ffc67a848dfee5d02310083e70e6e8f48dcc77cba7b2d50f3c2ed1832a100d13718d1c563d4a39832745d638cb5c622f870b968fe1f260aad223e0302047c435bb500673065023100a502b24c0cc439e60a46295f0c1466b65fd9b4c71bb54c51597b16b73d58677ffcd15794e68ba118a535947e927c31a50230228dc873ab9ca34e5de33bf4823a52e63b20d1c339675bbaf869dd122aed9d0cff3e5db8e02a0f2bd42dbdfc8564fd980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100977b0adc08254da8578078aad576f6a09c33b39625734c226e26254e4280b88174705d9dbde4803f1ef70f4425ead82202305140bb9b63e4832e98ec1c7bec1305e7178c5ac7d8ff58c325316515edd4bacef8689153f9aff10312095423268565ef0302047c435bb500673065023058d3c489c8843c140253d10e8f812c5c9ff1de7ba2067016a35c9b66dbb3e425cfa8b2501211672d8ce421f61af6cfb8023100de1245f6fca1c6f952ab6ca9d857ae7af7c7168d0f87ec79307d87a9d625c383569bc30f7496b888342d727b4592823c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302ec53ec1b8e4c83033ed866c813249ad88ee688d731a6ccfa1f9736d88472a5080f6b39c43976896f60e13ef28678a33023100b517adbe767e94b290cb1624a8f597bae7651d15b913b0f22acd748b591e4fa4835be023a9ce59bb13f8d5c2121965120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023061e1a2a358a1c4d492b0ef735601cf8d5cbcf86f816fcca632dfceeebf9e40c0292d66b0b375c2a1f52d0fb78f8f973202300969005b44d14dbe3200011b16e69787352bcd0ded4988c1778103f18ed2488492d157355d9d362dd98485b6c7bdf6560302047c435bb5006730650230141b3cd2c22e92d89c9d17b371b1f7f9473ca1e5d4fa206282017c042893219101b2ace69f876e92ad2e6781e9ec1515023100a1dd729ecf6c0ecf26201a71d4880f9a8df8a54d4c382ce42f70e33f270912e546dbc15ea99d748c0c9b41aecff1d0aa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008e86083705b72ce594bfa3da19686df46a9a89d59cd025b620d3975fb9f4ae5f47ffb88fb6b2e722d62f247e7c03825f023100a0b0685c0fb20e2857814c9e557c0ffd67ca65e39ae5a76694c28a9a547f5369c4ba953829800ed7688794b56fe007f40302047c435bb5006830660231008a353a14e7da311da41ef41aeb44fdcd72c23a03df778e616d9159a054ecfb3df055d97d3ef4935001906c8b3f9dd4ac023100b54101dc4faa5ee771b1a5faccfaf638e33e543030c1b6682fc15b689e8a2b2a9789aa018dcb6b8f3ad184145449a57b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303ef944d90ff022db19cd0a865e8ca215517f6b75abef78ac869d6fcb9e48260aa9cbeb5e79d263945e84089eecafb9ed023100845a56a9e70b97fc5f584cfd490fe3cb0fcc26232eb004b703cb0b0d3a29f0b2272ce49d40b91941e1f0cdc67b7a08fb0302047c435bb500673065023100fb090a99c3cf8d61fdc0fe7348fd1ac0adccc2a0651c36c1b1efd98179bafc2539f9f9197cd5de3dbce8abaeb6ac67f402301b32d4748ba224a2f537c65aad3cf498269c73e1b25b9fcd72c84fa8b46a60259fa2921dc7f28250d66a7b222fe0dfcc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302d89a9d543fbe6c7e23dcb639451122365f1c3ca496bcac35bc4ea7c190aed8f35610ad1b9d86960887d4773d0192369023100d996ec0f13d454337584dfde02fee70a2cde2b94eb456b9c1550df4a2b2fa4e900b014461b210887231cbbdfaf001b9e0302047c435bb50066306402303f7182fb21d90f8608b9e251aa0bab1fc5f8dcce80387bd96b0d45bb50c8c407c3911276bdb4339d6b5f6053f8a0078f0230521478fd11b7ccfa77e0df736e6a729c520c5fe4661849e46917095305b4d524491b7b79386de6e4f8029408923c50f10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008095ea6949feedb8c92cfae360b4f07a948789e4a055e6777d6d73e92bbbe66fe9469c0407f6b5402dc9407dabe72958023036752c27deb69135e5ccc5b1519fa6d4ba7b62b8f7cc537fcb9dd81c38c35a40f7aa2ac90789a895791e588fce0dd1470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230634142311e98f912d009296b9b1c2a8953aafe7f4d9eaf8c04292d64afe0a43e48571d04fee6faebae63addb91fdd16d0231008a79d11ed7e499b67223e3cbb7cc1dee16d9c44a2d1fd9203352a8fbffd2c43d8a783de956e74e8cb2ec022791599d820302047c435bb50066306402306fe19b18dd5db6bb6a192013ff897b9f048d6d71772af24cda810ffff9c1276e2b2567f7c308b182949bb57163db597d02303a4bda43b18cd594a1b1a22b608d130a3bf73759a4cb30227d883b0a601e64673c16a1f27ef28b8d9d7d9992ab7f4aa30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230141aba6c7ac30a8deebe6191a53ffe0ad6fe908fedaaed9772dce98e8bb5f66157480c49fc14861b596b1c023cbef66f023100e9514bd876b25dbe5bff322b88cf9286622afc277a83528699c95ca718f1b4dd0e88d49b131b94e9d0e1fd30f54024800302047c435bb50066306402301f811a9e942dba60721f70f9ae1956e5f0fa3fb3bb88da702fa85362f9759d2066645c1aed3685f9e1a366473639c36102305280ce8ba0146c755182a3d4e9e4e2b04730db6158cbfae4ccbd8f407bce3b37467066d3c142280f741bf5dfcc8152990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cc3bfb67556fece4ca573b7c4e0f7e18d93badad85388b8f330e78c668066323185f254de2cdd1823db3bc3c2e8fcc22023068494008653be962a187449005d41ed4c21e852a99da4cd8b6734abe8f98bced726fd34e2abbfa971349c269b9337dbb0302047c435bb5006730650231008f6560762cfb43e06fd3c28cca35f76bfb5b52180f191d1e091d60cf19b923b7b91b2206d52532936cbbee2aa60b0050023004e8fcc6e13c6a83cec4eb1d2c0e3ad0b6b70bb0d76ad9a2ad15596719d8aedddeb6153697e07ee2543ba43a193b927c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305eb0dd6b35334892e4e21b43fbc89ef4367c95c8fd36729d3030a1899e871c80023afbdbe4ff7a62bcfe0a04688a52c902307337c5bc3f4d908e9678557f5c077c4c50a24f2d1e506a619d884b1fcab12ed056d345153639f43df612813a72c15c820302047c435bb500673065023100aef889d8e33e29f75125331e60538ec9b82553ad093430c88cbc5e09145b6fdb063c6a0f7e7bf6f0ca815b9cda0e73ff023026374c684834c81609de65bcef2db99e2c0e0fe6810dacfccfbd37b5301bf98a07cff1bad9c5b034ed6739c3eab8917d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305b929419cf508107836a91fc4a8a87e3f5cdfe1c07e1d67b42d3ecb21c1a75f14b267de1f4e102310a752ca8dcea75ae02305e750609e3bee1388379a0049119e69b31b987dd2dd293a7f8701a2950518cce4ccb5a80c123890147fd6fe0ec686ff00302047c435bb5006630640230459a1ae7819cf418e645b0803a2c51b9db6662b993a04b16779e303e26d6329bcf6f8a5f30ae95430c32f0446e66d897023065b7c36adcf80dfeaed8a868af880ded2114568001bfe11be5a951e9251e851fd94be52978da83054e50e1785d1abc460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300cb6cc9fb4a2864491bc13dd07baff4beccc46ab14289cf5a7f49373a9b195db906032872b5d405265053e0b66cb6bf002301085c69275b80544b2f0aa7ae23d5e601d90aceec61308f6dc7066dfece45bef5a1e51a7b4f69eb362d17bba872a73d50302047c435bb500683066023100d09ddfc7a43999c9f77c1364242f0ebd145094051914ec797dc6b4d0568af3d2d8c85b7150757d0376f1f0f7ee48671a023100af2ad66dd709209bb623a2e6af641b0344997b572fcf81868b796e7c2f8184ea8adce2f38cda25a58e0de2e9787425660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dc9720edc0a21e2e6543ac13745c0782df13e30c744bc4efb7def70db68e5257169feeaf63413f2d6d419944db0f36ef023067ce2abb948b5e9e951db8ffcb79fa4c919c4c39b6fdf4c22fa1bb5fb09e6dcb0689c56a314051b95fcbe1a26ecfc3930302047c435bb5006830660231009ba956161fd7f80e9ecb21b1231e138391924c211a6d2380c481b2855633d1686259a2107144fb88ca815da33f9c4a36023100c4954f0f53d693225092c56a20de82270871e8c3c4169143ff81519b31f5aa2dec08440aeb2f9a2d108c83f59b997c720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009e4dd6551e2a2a4643f6009a832b6eb7c10a6a70a9866650d4f254530e3def4cd2da053abece37c89ce64f83520a4b09023100ec22a6c57f233c6d927d68061384146b68b5e6f93b0bac84ce543d0876153b956903ff5321b4027f940532b2e927c1560302047c435bb500683066023100c326f5fd821a3906ac4f161a4e4c2b7053aa6a83ab04a3f41cfa5234349e728f6362aec591fdbd9967a589f15780641b023100cc2c739ae5c534b27b6f66705d5f760288622af0946dfbf77ab10a1980c27a0a044936455c014100604d7f57ab7594be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b8db8ebe1f9475b9849a6b4a464ab7f91579e55e041eddd5bbedb7dd4956f9ff9697a3ed88c44926ae5f91d80d97969f02303bdcb5655b20ffe8e97c8b526649e05526b3809f7d9ea22514d6c297b4294776d484ec80eb8be0f6f9cebabefbd4ac850302047c435bb5006830660231008a6d789b492300c9d2987bd859e4c11b3b103373b59629c4fa749cbfc289e58712d095bf18feca6f48c7d3fc547eea0c023100badad41ea9dddd683509a12f1b00e1f9324ae2fc5faf358830e60ed265e9ff9c95dd4639eb667c045186f823069959b20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ff3d2a80c3f6101e3060db8cc2e72081ed402edec93dd40bc7af573d5af1bf6b7c7b2a4455a3add3cba8365ca382ba830231008874be903ff1628c145c765474b1ca0a415da4508a189b20752e93439b94dd9a2a71adf90fb23ea68e4256a9a116104c0302047c435bb5006630640230281e0fede398a599d4300e36088466feb8f6ddba3764b8df8b5d0e2bceca64bcbc410839c23d8b3b5ba90d433a8fc0d2023042afb69612941612c18a1e2a860fb8e403b74ec617edcfff8e9e48a6dc46a1dc372ddf52654f2db04848fec03f8cb4410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301e279701c739c3eb9e5f4dab1e2e4fc2a68183faf83a9d70a1dcb31a3d94fc93db71a0dc6c506f8e84e2a31a90d2316e02300a449aac9041940a4e59d1a9d57b13f213f7989887c379d2083b8ef706e79a5e0bf9257549648d9124f0c341e2aaa25b0302047c435bb500673065023042e9f3951d52f56f4c80e9a8c3fa9f1827617206a6b3f3ec0fb0991cfcea1695382602fc699c308916745049e6bf7fdf023100e5b4ca122d12d7ec67998d523f101db7db7779c0e9235c5323cba4e4ea70b91ec038d7e3cc9c9605633f9527417928130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230383508c06b2c09e2a6eee3f6889efd2c35be08f1787abb1777a0c54456d94bb9f57bda0f88d7d3bd7ce22c7b2e901015023100be12a0c1932d02e0d73d6c72cee51f5260b4171484e52eca995be122cd2406ac8a32ba2140b8fbfd9d793cdbdd7864590302047c435bb500673065023044b05d1d48403ca1d9ece2ae991383f9b9bd355e6bede66cf842c5e8561f673a6c1b3d9862243a372dc9ace7390c974e023100eb08483e14370f1e035973f87f65347ed5b98d6d6de5f653d043de1821d401b036da9822b7800a466f1c389cdb6cbf440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305a9ae63e730933be942284cb839d8631387bca38ea3ba444513ec54463dec6bc067a87e2a8bd69cf36c35e0217501834023008106cc133ec981918aa8ba297897b6c1cf0dc87d9ea98cb802dd490f6d4142122f1393be65c3f200858fee7e3aa4c790302047c435bb500683066023100ebd62a925a47f1b571de8f62a9a5b72f5eec9bb610db7c7b1d910f68b69fa10a331525f6c515edd738ae87fd4febf47b023100cd646ec3b155584145c8da32fe76deaa4d08a26796b573d225ae92cda00a012b16f1b7240a650b23107ada30936ee52c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230439e69520bff2243ab4869e7ce0c86c288a478de2dfabfc94a9b3ced364b61423f9dee22b208d88f3a6d941ceedc45df023051c2d7099733463fda52d3a2e381bb6ef42ce7e3032cee227f518a980ab1e97094844fcd174f283938d6c5613dab530e0302047c435bb50067306502303778497cd419cc099cf9ac84f67e0ae535eed0413edd174b0954640db48d7198acbb320fc9d9bce61ecc7afc62fce5c9023100c3a19c54c3cefaf7b4f04ecaf55a58c2466b9b4c68a434f336f873537ff98d0e79ec0d667ae418cceffc25e504bdbeb30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302a5ff4eea5fa82077cdf41deb7f2efb943908a4398984ea03e64dd0f10f2f14c8020c6fa0d4aa0e865a3b0bb9bc2df0a023100f5d0337d20836ed710850db87bdefee2ecfd24a3fd126b3b84f4c4d3fe3014f452053fdc6aa3aefbd995687fb06312920302047c435bb5006830660231008fc5845bfd80348c670f3bed24b17407e3c1acc20dbae60c612e194ac6950febad9e3ef13ac30029ab51a0f40c3964c2023100c0a42143fb3b703c7df8fa059f5a63c2757d1bfd855c75e3d955953c1b1077e93ce6d8c310d8f63b3b15a61deaabbbf10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a8c4560ccba469dee7d5f94ad32de2df9c7d48b4e4cfa4ff24aa708f7fd67e3831b933536a7118dc0e3aec7532b7cbd9023100959e0491258d16405fbbcd9a929f6b79134a2b785316668cd9adbfc071743a33bd2682aaa6a123a97e969817a2eccfc80302047c435bb500673065023100cc387073770e2ad240e4cc31d48e8e30a2b76404f6e54fcb95dca2a754980ed44edb7925d2d22cb289b51713d66f418c0230348765a30ccbde6717c07e03cb6e784e125a70b3a7db3930c51b60831a065bf53ddc6afb8f1843a3790575282918a34d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302d7a541ea1435bdf5cf983c11a57ad9b7ec5f0b608355f77c40db113572273e0132c3f98fab72b655f0221526744f433023100eb527eebbecaf7fb8a2257b990ecc2de113294a78fb05797011a8eb7a9eed9c7779656132f9500ad315788e66fc34ef20302047c435bb500673065023100841a8b586576ee646ee47b1aecf9c9f96a6771fd8450ca69000145db4c731dfd3cdcc6e0e7f13c3d1fdc965ae2f2985b02302bb5fff81e3761b0e613cdcf55359faf97502965c31b64f720797727c8f415975882321729d31517084e55f39784f31d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a050dd2a519a8e3caffb819e886b46f84a4db4f516b25faf9995cca8300c88298155d7f17adb4de576c48f9877f372e9023078421808760156f01bfc358a0b63d70cd9c53549cd06a1c16e0ff1f2c65f1684e81bf0cefc8007e6741f80d64540743a0302047c435bb500683066023100a681bf6c23ab9628e150ed826b7a25edbfe35b2b6d2811bef1e4a1f3fb047ec248c3aefa150576381ab9db9d8ad10e70023100f53f8684bef3788c67905139c73384fd061de0ea28dd294d457d8dbff8205540a59c88a42457289e5d3e3fd9033b4d8b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303c8b4090239bc2156e201c22a0008720bb1dc0b60956d2c6694730a371a3901256af8a9fe373572f3b0f89a9cc07b2bb023100d9cfec9480807bf55d02e7d4b897f390c9f6619e3d8e8d185a06376eac11fb59f529faeb676583b938e7f5fec7807f8b0302047c435bb50066306402307bbda24a701a83b4dbde4d20a4b7eae0632c1c3c08a3bdeed34b1e7892842243d3b2c1fa77cc73e9a930c25fe570fd6e02306b253551baf60c29299518b9225d372656d11fd834d124519ddcad58f9c1be9d7f1ffe11ad347bf94414958bd2d42b210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230484c6b3a43b8859a76cab2c72875506431b223197715b09d64941af9a5986ffd1c221e0114245ee398682e0465c411f1023100e04b1a920d4734e5daf985cd62532129769a41697856e88c7b074c117d8ccaf79f1d74e366773add53ea0aab85ee46380302047c435bb500683066023100b306c81e25cdcbdf44170226b82682d36ce35b60fc92f7d9b01eabc06292b4d10e42709204214fa6678e5c8b01d282ed02310098f9f807dd4f4f889d262d2821153672e6ba4c489406b6b7ee8e9e2c3021bf7e16374295df703efe10f717bd388631450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100817619299fa133f75b84a01da143567066c54c13960256cdf5cfcd871b4f9257eaa603d64c02b13530991c498a4335b9023014114cc2efb87a0d3b760ffa7394c2e15a02603e5a4f9b1c014d4f27d0388f275d719fe3a1150cb70e029dcc5a309bbc0302047c435bb500683066023100d5f85856503e4399c644f7dbb7c296708f1a5042dd0a273f4cad660b078f39553bcb8ba1a564a70be936ff80d62e50e7023100be7030a14f242a706fccb708f8825f42625a3c8a6b7da5c384f8f7b33f2e9cc266c452b75c1114f77d2478d682eedc1e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303603c9daab2440550be55e614664a65dca376f40132b75f7052b911acb95b555cdb4b736ea99b991019473dbd9fcc7d3023100b4e54d935572906fb8eb9d8c243bd6713623e34f51fca019978de3cc1215e350da140056af4224bbe7c263d1691a7bb20302047c435bb500683066023100d9a763a38c267f53fb292a750feeecbe65b9cf80376f7825ec899fcdd7b30b45b34eb436a5be3cdc5f13712ac71d964a023100e9956bb146ab10f52834d7616718fad748e52f358b05f6f71ba83516fabfc1c4edc4337c46b5a51453bbdc153c1fb1d20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e8ff7a5102594ae8c47ec4d5341ab0ab235bd66d8cc62d72d96c776767c073f129aaa704826dd4d0278b54bbbceb57de023100a0f2a239256059b9bb4bc3601a3f038b23cfda4f7bcc2816825adfc0da4d81573b23183079e209f3b7b687883d18626f0302047c435bb500683066023100fe754beb389e463b06b36354e21640f3ffd1d1a6b5ac2fb85e3b0491465065e970738c5692a18d3219caecbf0516413e023100e4a345d4ede527f42eb232efca2abfbaebfb1d1481ef641302198c30ab6dad577486121ed119f779adbccab60bea10bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023017707f3f8a6da1b5f51556bbc341cea232204b6d0de963d05d912e338327448e821f6ef15d03991ec9f479852bf65516023100cd619f3143da8acaf748ecd2c1c5b4f6b92f9b9f52192ade20db2d83ed640db5e73718bde7e66dae16d0cc7e1e0d7d930302047c435bb50066306402301df1d82d99c35fa7730c35ae9dcaae4b783292df33e46d0a0747b0177fc53ad506d2fd2af4e677f335a515457d9c6b3602307cb99a82c4c41044c52c9f00f2af43f3727e0684f0a8118d0ab3e5d941fedf1b7cbba1e5d6bc41b904de4e783c2f95a40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300ef3435751476d5cb1baa0121a4af4b1b2e843c234cdb8fa983fa0bee243166704cb102b020d487e2c23514c451430f50230458e6aff700e1731449ba1ae68e7ff02825a4c3b26684240d0b04c7e9c0a3be58e1545e216f27ef0cd14e6d4e5e15bba0302047c435bb500673065023059123326e1ade5d412ac623a489a363e6ea42e877f793903f305e8b34fd9210df585be22c6f54609e7bcc7ca6dd5e9580231009d261c14668ff9bdd87ec58240f777b976a5f1418216cce3a5f195747377e40b2657d22ea81f226257ea569fd8cd81240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f0b1010b6085d91c0356b20f4d6f9620582f0488cdbde2776d6ae09d6dd942cd8d6cdd87905d3b8765bf0584568cb139023100c6a5cd833eb3eda2d43c6530da1c8f5435412e2766525851ef4e8a85f9ac4f2d83745098ff76628d033664d36df1b2f60302047c435bb50067306502301acf49d36a495291087041d2fb4f02ef2a88ea8d4a5fd87b434fe0a1653aa48d51a8ee7f3eef28a1dcfb332195fc55910231009671be3f155f1598540cc78a94e8d09b0d23a7765396a7f0c07c9e6158e134f18f740b6dfa36652b4f46f6e9f0b7a5ee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300329ffc10cf6a2ef8694eb23e9d6b5ef84a83d4d722e544cd74f1f8b5f6f5fe87704d7bd0f3569c3e60b3abf584a39ce0231008b02bf2673ce4e4724342f5b11eb702a07a528a633ab52f462c91f4ee20384cf9291499afd847443466beb5fb4f6b4e70302047c435bb500673065023010360bc0bee7d1dab7f95a02dd39b57f6d4765e51a3c4ffeefec8114cd8f0597c5dcc503315589e43120aac1e3330b9c023100ff672d622e321c5e586337a41733d8814f968fb5b962c35af0c68706c4b180c6f2aa195b4b45f3c12a1ec7ba0ef0dd2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a797a8c0adbf1a44d575f649a3780b094fdf9912c5c937d536c23e08cd646c03e9b159127a0fc2e2a28055253063e2720230636eb421cbb2156bfd95f1a936a516b22247df5a74b4051afdd4a6171b0909935f27112bbb1485fd98b3cb270c007faf0302047c435bb5006630640230213a124622695ee1b232b79e407289ef7944a8b5ff30212ed3bc6d9ee84ebc3cc6de7d81dddb452786515469d7907ad40230583ec5889d92992217b569d4dd7e23559eb3b3c2a577846597be8b805cd1d1c677f8932e768b2f113cffc48c8535e6840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d14ebffe85b815f985910c0699d94588a7e98dfaca434038886d061b169682a9058c19e93a5535d0b732b78ef56ebbda02303e4dc4a54d7641a8fc6590a33f7be4d7a4eaa263f0e5f27e589a15f29ed5fe5d336cd1d493a4cbf7d7a6b17a31351e1c0302047c435bb500673065023100eec9130020efbea9c38dfecd93dd42236f7c910be2ee10b8932d968dcde278b6dacaea8255ed8a2ecadf23a6edbae3fb023012300d339ef5d22c07522acdd5d1684925a02fda5649766ae4c2ff26f4852830e9320b64ae1f749aed1f582ae54f269f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ed6383f1b649c60d2b4c7d5f390a178735cdb3169b3d62074f86b4202ae343518954ed990c073a57665c942e1e72335e023100d6e8ea90113e8e7672e05518c532717a940c86ed9cc5268f6df7ee9c70d7d2b0b483bb72aff60d6a06771a90c21c5f960302047c435bb50067306502300b6e0bb3e7d050d7bee409feb2eb9827379cdba336030391eb3f6589d501d47a742c5ab65e08aa9b63e7034a713b05b0023100c20e5c8a5452dbfcd83befe509cd128090c3e21e622bd2dcf3e3a8fce62797f3678664136f85281fac33b0e27afb403e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023064519d5056dd89eed7eb24077e498d0cc8e484cd7d2623649d0a94d6212a882f2789a85d721bcafc6710cce81e30bc4a02306b05f62753d22f559fdcf17f06e7d27afc77796807378fc7bcca805e7b1da295f1248c6c796f2b82706b320632a6b5d80302047c435bb50068306602310098bd6c70dba02af227f2b9be206c7992706ffb3e1dfef66cc2236683546e10416cf8857456438e1d95134db1fff700f3023100cae4dab51d28ccb26118eeb4f9127ffcef0483f147b8c2fb9fe3a121e6c08aefb16f4cf8aad227f228093853aebbc99f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301f72eec7bd0aa762c9c5cb87d9f96c0bca05f16c84983bf064b16e713d772d8cb9ae0191edb037d458de811c9077bde00230582b132573ffd8f6fc766fcabfce162e4b82a917e2f265814d679a7bd850dd6cd6487b49f76754ef16f1a95f072d88fe0302047c435bb500683066023100b3a3ba10f1d8b187211400a834410fc411dc716718114689f378a2687383355fbd1b03f8e5f647cebd0330f8b00cb31f023100dae207f83a9e872f558130699e48ef09ba9d41dc905ee8aa1d0008debbf3af9aec0e2a9f43e982441d8ecc3ba5f325b80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f0036acce82a41acbaeb1cf0a972b14df8f658c66bcd7347b7313c27b911a7a979ef4b113cd1287210e9d844aeb65dcd023060ab397b9326b3432d8fac47f857aacc0a6546edb91be6629452a3b2af184e1f5cbfa9a20e597e93a0b0a5bc0a6e33cb0302047c435bb500683066023100cdcf3327168aee331004f271e86666ba4ee09a474c9644122454d859791b1588ee30e7ed77eef00c213854d0c9340457023100d6b5f73c44fe3ba3abbc49fe398fd0c063b5784f7c789d6fdb9e314289008706be38e16c283ceebdce4d9ade3817b8fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b4b85f03be1fd5ff67c7792170961636728863d584cecf076e918ada267442c3dd9f82eff42855e992fac39909f5de2d023100cffc9d1eae9000236b94f65ba21d3ed373ba91941992dd533eedef0bd23adf34602bebcf11e5f5d2e1170bbf8b36a8b50302047c435bb50067306502305c2791bbe5a2c00ce580b8197c8e71351d887ead861455d33740e7e9b362f634c425b114f70098ee5acc0dbd0985ccc90231008fe847ca9ff812a67404ffa34974bfd4b485ed7341523b1cf9f9b65cace8c06af991a29d8e51d361861286aeb4e86e960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100997a70d5282dd3e3cd6f24709a042d4b6b03d42f00a07b4541dd86ace8ee497ff471bb319015bb37278208c32ed36d9d02303ee483a89dda9c5b69fcdc6eaa82c7088a3d0b22722a35d826afd9eb561f86810530295c0f8d4783ea8093d37cbd529f0302047c435bb500663064023003e319ce9709532924d47afed45c4a89c39a0680dcdc37b70dbb7176aeb52a68a4cb8abd10938b90ab15bdc25bdba22a02304ce5816ad573f0196edb65fefe932aff73f8946f1f7bfd25053822f66d2b2a297d5acf38e5768640f4518faffbe427c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c69b885619f879fbe13a1b6e7d3a34e9f95c1e59fbdbfcd1d411e1d8dcdea21ab0d56938d8142a8fb66662e90f1cf8de023100bef1be5a02ec63fa397dfe2d1c97dc29319eabc24ecfb2525b95580ae65e03bf103f9b6a5e08d635ef93dc690f0b43da0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bcfa2d615cf818011aea8962b7cdc88e6c95cab271b911318e3ff24030f4725ae3775e529e48eb3cc7399ebb657746bd023100d2b663df07857b62f57533953f13ad9789ff364f4737b2433f9e40c2b840924d8b4e2668f8ba458c2db3ddb568feb52c0302047c435bb500663064023019df5e244c482914fb9be08c58679c1b428c3284ef1f3f5c4b776dc0b55e87feb2028a1f6fafa38aed1b1eadb006092e023024a485821af93fbc6a23e1fca730ba5028193f6c94062718f4d28501698b20add5521a57c0e621850c6eddec7e285bae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100964a45a31178e5db992925548e7aa388fe8501b628d49690f62088f23a7837e9ae242689a69a9a9f5033123e419542c1023060a85b62e5e42d4d922be554a2c528ade0c1cb3492b6bec91f827dd989f68ce899696aca39d1c75bb2ab580b3263a4ee0302047c435bb500683066023100b4cc724de6f9cc5b15b34cc525d4fd33613889d05e402e3a05ea8ef469572fe1a04fdc437b8a342e8533135310f407bd02310087f19017a1afb770150b915459cb4bee5c1baaaa8feaab6aa4748ca2d777ff7885ad853f697956b0fd34a298cffe19100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ccefa54b82b742bcc89af4f831274669b11e80b95e49dbc7bb9275ebcb71d3a5a07613c4c24a63b84b537b5056be3a2602306d1a729420b59965054f8de70213dde0332f18ff1afee58ff8241e89883923bed961e549b8f40bd677f8d9b4f8b8d1c10302047c435bb500673065023100c04d7e5be0585b198edb8f23b6d2ba274df89921e7a466a31937c2de8cfff43c0893b170bf46a8b9c9a9edae677c5b5702301445067c276e54582f019220c9cc03a984befadd462f2b93f08298fc3e8180737632968cfde967a5941aa3d33b59860d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304b82b02fd613a551ca63e84099c75e318bfbcd67ca8914c6fb28e5762e32d2f8fd80eaec191be6b8616f25f08f438abe023100c4d7b9aeabcdb8b78c85db60aaa8428388975ce4fc722d2e4f9f647ba1b29d305060f83e8fbaa21f953fc785a6451bbf0302047c435bb50066306402303cbdfeb9cf50ec4979efe8ba223815a92d10aeed6ea1812843b48df42b673d6721ce44fc1880af589925a50413490f5302300bb5f44cf5379318dd4c8a367cb03fa9d424232f37673c1c95c955ee30a5626a752a21705fe41d58c7a91360068dd6340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ffe8a29fe286b7de23367fc53b3a2e125f77d5edecf6bb6270c49844ccf8851844a344d733a7b1bc1e918358c1b1a03b023100e3e5d648316628ce8da97d3a151fc18ffea4d8791fb2963fdf8a696f9aefea640e0d23c569977e537711705ef8721a0b0302047c435bb50066306402302d316ce8d824b58a2da36d69598bd08d897856a834f5978e3bd53f61b0e1afa267cd9a963343fb406757adf5afa7125b0230602aa861162b55cc94fd7292294d8b030d5b71a0b95c8bd0c342967b8e8b0addbc94fc0dae80a0d0faf6ce6d342f8ec70302047c435bb500663064023006f72cda046fbd62988067142ecaa71c086621385429f3e1f84d45eaf46b723055cbaabf46d200eb7afd09468661c9c4023027417c1c95e6ca9bd4c102c09e131f4fe88c2320d6158b8b53e1e98e37bfd9260331421d29f06805c9659c85b4a1ee970302047c435bb500673065023100ca8067ffe479c631478e52832c6320d1a007e0f0db26a1394848cb76dfb7fe78830968210cbf7522d6a8117c074d999302300f5c7124cff71202952f89467e855184081d33d1e452418ba62c47998d6fedc9647e1316b1fe8918f93866dd7ae2dfd50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ab4bda6dadebb17daa132b3ed4d45bd95d862fcf8807b68eac949c813a9ba8c932544ddab78e019bc13ddae1d18189f8023100b4ff38447f5bbea76e67e97d2012a2ec40be25255914083bc55c83cf5c38a4630cc69db4f5680751dc7fedd952b01e6a0302047c435bb5006730650230357f8ce4bce818d39e383ff8f27368cb905bd538cd6af35c66c5ff3699700e1a42b5d64e729f8da27a1b5d16cfae88e5023100ee132a30bed31d2be329e2d3c403ce55ff9da1cab5ded36b0c9d985bc8c557e423dffc9b492688c02f26e06fecaa71ce0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e428f65405e4430e5be02d03d3aa49016bd97c4c0168d8509f353bd8bb7e32cdac2f4b17f8cbfdebe0c9241742c2816302310099346b590637ce4ccfdc883ac07aacaaa06d802757056a38e89cb23e5bfdd2faa6d221354da0be55e41a50f15eef3ecf0302047c435bb500673065023100eb8470dea4eb85dc7cdd077104ed15821eff44fc040f23eebaf9a8a745bbebc4b2f7c085c2b202f509684b00bbf77f9002307e37504ef1c453d8d59575358053af65071a8762735cf31ad2feee4f1df8f4db47b971594b3a1ec5017641c6c58efeb10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d669e06fdceb1e43971ae26239248cf356eed76b05fb1d730045c9d9285bc2fcdbf9b8bc7ea9bd814c9c95e8d528592e023100ab417bf39458d7b230c55662102f2e5fae2786f600a273925c348b4502481b88f9fb3514b543eaddad6c6e4f9a0079140302047c435bb50066306402301f769541f8b7944f95c2f32580745dd9800a828a2890c74d6c4e73c1cd0554ff1a6e7e137a55608b363161d9efabae830230372ebd4ce50c1d0732a29a0bfb25110d57520888c05823e5d4ba7797bf37eb2479a3ffc8cb3b6386d5798d9b66702ad50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023066278c0f7645dab347155d08b9c1fdb162d0093821712684c118f14bedf13695ee88c2ea0d392ad6bff6900ae2cd908f02300594f694ab33471e99b0fd030a593a8413f0315a4695616f832cffc755245979c1db6dad73b0ffbc42b4b0eaaaca64700302047c435bb50066306402306f7eae71c38562cec7ff94c84b81502483a3445eec69c4c3187d1298778b42fdf821a6f114a947584afa965b7cd6583b02304fb6b8c34fcc89ce9606396d6ddc5a8df356c9de382a5d9b2444782d0d2c4db80ef7e5cf8fa732f85f9bc1b59080c7330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305e1ef2c046415e89da36ceb614872a368eb4541702e9cc9285f5d3150e29f676e1d5788a0e3b8e2fa81bb8a3e2f61cb6023100bad64bc1a4372c8c91b8fa43f185f392a1557115dedd9a75833f2b89b0bb09f9af9134f0fb18ebca82de3e9b1965184b0302047c435bb500673065023100bb6aae67827ad5faa2c082afc6c0d1426f489dd594481fa501c90c7397647cdd1fc51efeaa34b153d27ec7ab50e61dcc023018aa887b6928a84820cb710689ed396349468baf519c0b95044571c0d0f7c5d11216134f47b4d6b4b0d3ec76c6c5ef280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023045616ae883910956e1fa0fead14d59838691ddf3589c7034fb8cb505fa9f6711585ef965d953f03f847fcfcaa77d961a0230206c3e9c6800c28b9ba33dc31752fdf9ac9ebba4ddbfbdbf93728bae9c8029451abe6b8e3eb7ecd4de373fee4cd452ac0302047c435bb500673065023100c048c1985d5891834fd4d4c036b5f900122303d33748afd00d2d930b05952161ff9cc18975cea3775bf8cd334c076cdd02301e938dc7ea56cd1e9cc4239bc22b23c771ede76367e8140debec70b8b45b52d406cec6537aa8cfca80cc5ed1bcb2b0f80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230121800b103088048cb3077d52a12a5c5b73495b84c91f31661b168e883bd3c14183bd5c26d423c325e30cec90cab44040231009c21abd1424110a589575c9d4a56db2ac671696f4bd9b0913821756f22ec075e5a7b51a2530025da286cb982c03cc5880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300b67e9b9a438d0e10fec78472140fb37997d9d7d636b95903aa6b95fe35a6d43aa10867f6820d2f603fe7add3e0e70c6023100c403e80bf08a93a290046d72aa1471f4fdac7a3975786605c44b820a50d5b9a6d1ca4318475887bd1671622e49b5b3e70302047c435bb500663064023038961e65833f7aa3d49cb623ac84b5c1e60916528bd8620b93b6267434cef91ddcbe0b3694a205cfbd91575ce57c0e8802307c437e9720a02a0ae2686e4100897fc608eaf26539ade2f37c17b757f8c9c5222323f33cd00cc15724d9137d7468d32d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f4773dad1aef98eb2e97df2136064f8e037d3320a53b95544b53e034d814abbedf1a5567c953efdb3cf3946acc10decc023057d30aea4ec2e5651a758ab9620fc015b15f4ca61bf31e5ceb5e8e56722d90be4d672036eacee5f76d1452c4a0993df60302047c435bb500683066023100abf3257bf60dcf2c73aca0a61d064f86addd312a30933c4d993cef5cbc74e3146651ab071759a7f4f4a37134fc756f41023100b3493954976d8d276e6af6b544b7e9a8bcd806384938c648b692b7902d9d5b713279899b03e90133533dbb4a7ff554140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303ce1cae4031829b76122b33617c9f648bda81431149363222ca506234a76c354777ee00c539aed3fa24c37c41fa958ef02301baeb364467d180f649970f815758b8d4a5a762accdc35a19777bae08c19efc14f701ca882df9268ef8bfde8a7bd7c690302047c435bb500663064023045ca8e467e7e722ef1a54806cb2fc2934941f66e1f012f097182d128e6f5007c32f1deb99cc9335b69ebf6043d361c220230682540299a374335f581c82a9f415d80d923af8cd0041865052327327a43f9edb6984d8c3470a64da41f0e9b26bc22e80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eb32efd77d15668d76a501105d0040173ac0f22db231adfdcd6d8f20818be054c80bc7ee0393c5c33eefc38a7c72b8f7023100aa98875166dea2fd10b8c509d0a8b27e3d1d1426c0458f3c207bdc865c10e0ca02c3ff357fc2a7a421de13b64d05b7320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ff6832ee939408afc0243c409f79fcbf6e8bf40dedfb3c749c36059678e5f657ec37c3dafad57bf16f452df5bd4771f0023100957a4f083e23078130bd495f7f21ecb3d965b1d61eee32e045aafe79cb5005bc3192ccb9fcde8bfcc4300cb3e9a116560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306a02c0f0ffd4adaf05dbde17fe8ccd989830282d1b55675d691a554dbb63faebcde639ce6103d646725c697e4600c9e5023100b98fb51d597e111d68500b5c6973cb0823893baeda915a66262e6e057e5a967f8c8977da56201fa11f733de5de81cadd0302047c435bb500683066023100b20b7e513540fed3031d9238d02251a49ba93184e916d4f7f17dc1c6d58197c0cf1a12e60a0cbf1e02cc7979ac46d103023100fac6de443e86656e0f7d8a65271a0b87d6fb0d625a260c4acde0d0fd83fa352222b31e653443c06b6982f40cbf77db490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023008d04c54c7e29342dcbbff7aeda787ac8f308d81b69cad9089c8bf0625282d949c9693cb2cc2f7f6d247b88bea85418d0231008f9bd737ff8e5ee524f0d39495b6b82ea0dbb56fa66105c824f9197b59b9ee56af71c3249a52f4ed3b792bf5f30647850302047c435bb50067306502310083073797e5f28b02aa0d42bd0eb89479de850943b3e7a258f662faff613d96dc1226bf85ebc5a55a51894cb84a2a7e1b02305f43d47f8f64436ed59f4ac9eeada9190dfee13b8eee189e142fc70d5f965e7654c6a83238bfe6688c2d863ae78eddda0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c27434ddc8cfe68b41ca9475ca6e8235b91e3aaa4c477d69a184bd652f2afcfe432e915604f9f2b9c49b20e8cd70a008023100cbeca14fb50d3dad4a6113c6873886f26488e676e0f78d257f1bbd4a89bb642326986489773afcd7617f2f7682b8f1c90302047c435bb50067306502300f73eb97a395ae04d0bf2e047ad3dac0e3a73a571e7b12da8d727598fa13d48153037bdab539c69dac2bceddcc5d70cc0231009f236e402a1e7bcb3a7ae69f75218627d2f937a7283b80c705274d0326b349d97c395af350369f741fca2ff8ad3321050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300e2f72b19f36e79a4740733630642455553656b82c7730a7eecad81eac80fc211b3808f2734d713421b956bb86f4d4ca0231009c17547fed5c6da3855897563759f3d609481458313a69a88749754e0fbee73ba8d21b29a000182c6701fa8069421a280302047c435bb50067306502310098c167e450a517fe2a03b3bc0a6873de4e62630b242be5de9c1c461c65944439e7a70cc0a3f578dd0aca5ea4a4cfc83f023058253e9103045fc6072b8ad3553507369ea4533b2d1f292786dd3cebe93a089ce16720ff8efbb539242ee2dc93da1a4e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230553e69bf36bfdc6b881c93ab43bbcc264aa4ba39147cd4bdf543f8491b2fa980a4ece36fa0be84fc7aaa9f0af3226ddb02304820838d0bb389f812b78079b388bc61772e7aed2f39678e65ff412e009a74e89508834d5dc710dc1a00c1315cf8c3130302047c435bb500683066023100de3a4c108b518fa1ea7d44a5bbbbeac622cd605a04680793b6adbdfceef94d8c329fbfca0ee382476256f2841725a8b5023100d71d1a2638c529bc3e1e8dec51369416031c2842d2644d1fd2ccfcc8919ad2c2198e8a466a20bdd677b56412dd3bc1c30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a173c89606ce04145915cf45a7e731124351a8191475a9b1fba3d3de8e1eceb5246a18e0d366614419aafc75cd7075ad02301922157bf11a23aca4d4f242eab007f8159b91da78a66b927c3b906279f903e12b1ea8fd18eafe4e05cc8e9e41fcb8570302047c435bb50067306502302fcfabcf6dea96648cd11911b7e9d7f71159d0800e2049f519b60cc36eaf847b06dd43b88d89e5b937b203d4cac4ea09023100976ed551237c889a903ceedbe2301f437ecc17cf292ee5e700f9839c3dd2d3f6465bf4d54a8e529ea572aca376491f4f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ac0e8f1d7e1d43337e5efa3aa9f41b4af12178f35aa3c12aeb73b27d56bed597180645ff3ab2f59e6818a2d3b70c754a023100d1a21526413d7961f32986e14df068475244578ab508205e59271d25e5367fb5ce77e8bb0a8aa713c056c5ace549937f0302047c435bb500673065023100e12f1dacf934b39e8608a48e23891ae094cc44343784dbc44c14939fcc72f520a47ba3daf7b81e174442871b75e059ec0230463f2d548a3b89a5be542e44d329f2f629d05f4ddfdd2b7125cca24b8b15b46876de6e7f5f513fd84362f0460672776e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023010bcc76ebccf97bd51aea62d3b0a3534daff837e84ffdcb4284d62e896e761c972f77f99ef07f3c26c1ba8d34c736e350231009dbd935c87edb2532d72a9f44fd6445109e6052e3b6152d1ef7e3c958e15c2c5e82b3426949b16a697397b0afe36cbc40302047c435bb500683066023100bf44053a137530cfa4f08c93d544f1194379aea51f2aa553fc7b1aca52b809c07579860fbcd8833d7fccfde568d8fee0023100d92dedd411086cf5da83522457e51182674f3b6e330ddaa91bbf173e005cbd6ff30f971ad62ba3d1af05572ac676a0350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008f58794ffe11e59acf96566fe5fa86bdf69f75fc4042a95303c4be1f692bd6dee341dc8d9a73de9bdd1bcd438a3c7ff702307a82c74c92aa3249fa040c0c0a9681d71a612b1d84fc35929a4636ba5de61f3a960ff4ff71c7fd5429c241026dfbc5680302047c435bb500673065023100ab51fb78e5e1d4cc5b4d125e3340a90af6a2ae7a5805566822bec7df9f0fe0d33e75e78ce8f8818fe4f6664b1f3b8e2702305078e9181b78de6e7905bcd01644226f895c6ccc1e8e08e0102684c07bdf63ce720d308ea4f643731629fc493f45cdf00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305d417c727f2a1730a7b246f5ee7221b117810d77aa0ca0228d3c8b9b675064e00988d1de6217d0b44c24897855fcf9d8023100ca6fd06041a45d496f1fde225f69ad462ac0f9b8cecb8b1000a1f685dde54e22bdb65edf37da12e523e93563c045aede0302047c435bb500683066023100f7b51be8837420145a2a9179616722224970a7a061616fbc82c9f7d95e948efa11fbb7e05fe19934d9d70fc2b39defab023100fa303905cdc2df0b4d4b059f6152b81b8ceeafb4233233f6c335ea252afeec78b785127771e9759eb24040c69f9f49e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305011a47d04474cb72ea6eb125d44adbe42b8b87d48299dfd7b4b7f0ef23dff350731bf92291f970d97a89c8abc67ae94023100f2099f0e2161808a71ca7765f3374af13482313a16b583e6f3298a6355314a9007957f7fec2cf3051a74ed30273f102c0302047c435bb50067306502306e0d141ce83eef5b9d727ce7b59cfb2824059cbf769b82951c638f6613d7d9484c7941777c962b17cfdbad6d6de4930602310099bed7cc72c34a7408edb0fd951906615ff479b13b4e95d8c6a387322c2b3fae7dc66dde8edc8efc41a76f222746ae8c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023027a3b2bd324decf1c650e7d789058d5dfdc5523bef3217ba10af7fdb54be1ca345cba6d225266fd813ae54023a09c0fe023100f8930a4e4436fda1deedab2ab8964b13b003341b9eb50851b3d5ec33d533f7702c67fb953e8532992d1d0113b4e676040302047c435bb500663064023002fffcaeae7f10708ba2495a14e13d8d734dfe5129f6f05676126013ee2b9415b3bc7ba6ce8fd34d22984797be80534902302d19a63c35e8442db90264cc6559b7436cc21aee3022d6fa0ea3bbf8cbcfc4ff706f98f5195e997e68495235694004360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301f32f6efc64bf8716886f499cca3241587b6605de949a7a5bffaccc94ac36ba3a1aa9a15401726c37451470650fda08a023100b181aa45753614e70cc9102657055fb8fc98453d3e8fdc2947ea81f26ff542aa9fa545858976ea3adb1dc076850d76db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307d7ef508a9b11a7e497337e4df436e89495dac1aa8d74e1381fd20fecbecb687d40296765199b58bbbd32a65b06af03d0230794bbacec9379124165046ae29085e9e7ea69abcd2efbb8eb320b8d54c8c342f37ddf1bd6037afa25157889d271b79ff0302047c435bb5006730650230363abe9991522a29e826bb2c42c97088963581767ae8e7e8139fe52f21a9c21188be15b9876151398689edf6881dacc3023100ebeff974151f78521f2ca6ae3dd166daa868b821a808295519b764df1061a6af15f61092d04a32785343872381e3e87f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023006d4127474745d7a4804f248f2d5f835851a89eb65ed0e514f8b6f6fe5a10d8e035e650b0ad896ad7eaa9ae80033ae66023044f8d1ecbfe9dab146fb94f33bfced9cd8d6283e7b5e1b4a4518953f744b71694bc2e4ce622ab5c67444edb42fbe509a0302047c435bb50067306502303d88fe2e6149190e3bb2f9915ef98468d486043480029ec984f44f95ef62de799c62401ab172d781215f34d6dc7ff47302310087206831753fcea9f0779c07389ecf0dce5709da61728665068d3069dd4f63e91a80cb5ca208c8a221bd74d5b694d5700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304c20c314766f1e08549c06467c924ccaa6cd287f8f64c40532f6c2819305c309fdd855c7d99f6e66defd4f5679540d0b023006127909288165f3da59f4e62d3e9bcd3b40d1100d24c2094b5e0a402592aa2b77a9a959ff9dcf01fab6809fdec5ea390302047c435bb500673065023100a71c3a44f1ad102e59ad4df81c41164a3743695b4740bf5252d7242bbfec635d8643b7f9349690b9110fa4845d8351030230102753ad76e82fb6e8a29d461bfab250ca17b0275e74da52f3a4a42d36476c31985c9d8ee07aaa4dc7fb4380af821dba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023005276723ee94dc5678032d457b5544aaae90ba78125515b855aae6904c73ca38b86cc26759b6d32b35227951f8fe224c02304c880dd01888782ef354e09187216789463793231b52b756e1971e5fbdf7aa1fb440d28cab31b48c25c62a80a5dfe1100302047c435bb500683066023100a5ae0a0a99b181afc0c2c0a69b0469ae5b2ced015556ff4fb16234dc43c25d0ffcfd5029d38f1ee3482254999ab1104b023100ead01680071434f8517c2aaed240fa0cb238b6b70ba5f6643018ac6d70366d11962fbcfc6399da51dea7f0bef079760a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d3e255f2dbb370d63c56e2e9c63f65ac2281ae69ed38e066532b603040b6a37701449972f34a324b62074b432034a8d502306968b6ee2bca947ae5725c97e7397d76b36e8d91468d7c53e27d5d7368f71a4358fb6a2040e5ac3f8da261b8f3112d5e0302047c435bb500683066023100fbadca9646a58904995734eba511301382099ef66f8429faffd2f6a4abdde105f86b330f3e12fc5bedadcdbbca32e180023100994e8abf2fea44416b7a8b38c6a7d9d753c01d6e5fdb082411e899a90b5e18675c36603a1555c19d3beaaea58bf619420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230241c4de121455633e5dff132e56d5538dc34f6a6e2a7c0d0f8af2743bc262c3d03f5651dae6bb0d1f28ddf750e12c69d023100d598fa2217842933279be70a5a3af4a4221c36b79dd939881d764cf8735bdd7fdc48b23c4702cbf408b1a2e392a814580302047c435bb500673065023100afbd48b5f9eec95a07f014eeeba28127772c29c96ee157e3e63d1d26b3ab01a2ce73f625d02436e846ac58eefb4402b20230730c803586fa1d0d6473b17f8da5e2cbe3bedb3bd85493a9d9249ffe943b610eeaee7ddba676d685df4ee57448b7550c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023037a8ca3d97b89a27935beb03bdc3d19a21ba6c3d4f80233a1d5c6ce47a659eac79707ab9cf7be906894216c2c5d97c310231008f353f96347ceb6b172808cc85230de88e17d7183609bdde45cc0e5013cc035da56f5c8e24b4a6d09a4b0e47760dce1e0302047c435bb500683066023100f6373070e2f1716f648dccdea4783c9c39c1b18e8e3d169da94343b89636ce2f92c767c48894218f0f634e8c782c58fc023100c49b3072219fbae4fef7a569dd99e762e68fab2ed4cf26558592388878e5274966d61a7a8b97d8c4f8cb04f2ce332cbf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2a0353c14a06ac555ef5acf0b78345191df692a564f8f5b1f9091e1b392d76a0021ecb30aebe53244833ac560d801d10230118d5c5123061fd3ef65255904f5b959a6cba215583152a7f838d4736cd0792727bf205e06ce3218b2eac846750a5b7e0302047c435bb50068306602310083e621f51c94875f1f8745c0023fbe03bc614cd887d9aefe3dfe9f97e56bbb710c23224b21e1daadc3a03de8dabcf7c5023100a5887d517148ac51481785a7d99cc1c661c26d2586fece4a65b58bab8c06c0c2ee03128847521e7a77489faf98cd68670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2411a590fd423630e8714f9ead1942ca6a931c20085d06609ac6625df92acb591f56bcc2d1f3ee5d88ddc17511f18b102300f1fbb94c3761ddb788f990ff332d7a3c236604b8aee28686f1639ee78bd97be9f50e561d820e8693c09aab80735b9af0302047c435bb50067306502305932741c7196a715597a79b433874adc3b213b248df952c05cc7fb83b7562681faba9f4275d8eb15781945b52087c261023100bcf9899883929e7b44c879cf5f18439a4c28df09f8f7a8397eed176724ed8216fab0c958ee1ea325ca02992a497eaf840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ee25f3fe920628c63962416d43b5a77cab86a1da2ee34e79103e7e1035264ed95361706705fb9669076e40b19573f2e302302f3eb7fb319089780ad074f9bb240af89b4c3f16d03b720454699f0e504a1faf4d7178757f3a40c52f1af4828fe9ec760302047c435bb500683066023100fca26c05e7d57ead8754f8e2e64b1af53b8619b7e119413a8baaae355eab2f5f67634d027454762fb639c9438cf0313d023100f018c5977feee9700f1399782b7c60d66bb099e509d5b44c6b6f92e7a3b46047ca87622a03a13794c01aadcade0514db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306174b6fa954e5336df1cb409f22a9c96e4d91ddc2ddacc64ef065ef698e7c4ed1a6feeb5fb1b94999d6a54d19b83b370023100e879c0300e46bccb310651ca1811ef31d0d70fa6f5539e36e36bfc37d914fb1a0f1e64fe5f76d489893613bb851d1a620302047c435bb50068306602310091df0bc05a2ed1a78e8642ff9e7a69ef0e87eb55257ec080dc90808f1cf95c3102afd06e9d7d386f00882a202d60ba3d0231009563fc5964763b83791f0c106a0d35f3514220749b5356c0b7d77cc59739bd42c378332624c3d7f30229254e36e8690b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303171f45804a2c08dabcf002e198b38d661320702691f0b8dd32ec44054bdbd37a6625a659ea1a96a183aa9c748ccf218023100c2c6b35bac4f4c6d9619668eb05b33c41caa17567bcf58fd4a75a7a96e6fe0beb8cb01532e1d930dd3a5a01e42696b6d0302047c435bb5006630640230102e41b1c3c8814ee8e260e8b13615fe384823972df2c8e43c94badbe89e9d473eea9f7c5530cd86c2d7f879c3de26f602306f11b90945429b4e84c54d2204f789f7878911fb9730141970512d0e4c687d11292f1df95d6cbd8b1e96cfddddf103f70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230171bb82ec4bb6aa49ce11dc24dc582e720b175c2fa56794c139884bb44fa010951316a65a0ec2871274e726231e75a5f023100ffbc4469d7136504bb53ab642869e906a225f3cc0cac6ec87def1d18057ed7c4bb13f4e9a994fb9423d98e21f3645e3b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a921f352d4f896785b4f568f89d187b120cc6c8e6254dca7c72be7dc2b984603caae2b19f162e9d3c87458383098ed73023100b97967179c70e88fa96068d499e64d475c77f1644d3b30d107be110d58715a4edaff024873f896105fb5ec47cdb0f8450302047c435bb500683066023100ab0c474f6dd8c6bd4b754928908f06eb82985953f84820c30328e6e4b68d36bfa798c557d24c8af2a4d62bfd90309f49023100e4f530ff24619142431af95c576984a1feeee00028c53b67523f8b22608984ae61e9c45c537d8cea4219cf81b4863fc30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023018040020adb24d4ae275c9bd19270b8ae17e0877fecb94d17ee3902bee11f253fa45416fa0ca842f1e22e59a4ee5f3fb023100914e9f79b27da674c813f2b8b1c9f873ddc0384b611dd622762ee1a666e124498e00fb3c2ea45b4984486f9525d026cc0302047c435bb500673065023100b422b84c4650e9221d1bd2dc5864363b23600e2e679880672c540927be6ceb16a5f814f3b4a444b06d4e6f2a51abbfe7023071ecdbf80173f4a67311d8c34da5fa39b979f77762dea0cc6e37fbeed99dbdaba4004b5c5e6a914a028495353ed5aa630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d8a76270a987cd64694e4c6519b5819ef9aca61b47c8722d8962c84d9437b79f7a7f08df5b7e8fbc948bef4b4689635b02304bf2497ba382391ff9599cd9cee780a726df7e8e21489a2971faa569dbcc6cb067ad6e1a451acb039a163db647e33db60302047c435bb50066306402302b445589833baa9a191751ef251b3f7297ce9d965d44a1964ebbfdaf047be03f0360059ab7cd28538349f7f61a3b7a850230295b3d1b91cbe5cadef5eda66e9a7df5f7806111aee3322c68b29c56369a399aebeca52cd9d6a63f23c474814f2ff6fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bf2c84a33411b73fc0c4c64f191c046350bed7018e9b6f6f951782148b4047fdceb43f484c8bf7ac7d0063c0ce512df8023100a444eecefd354d8be2dc535ad05e0194fd320a9856467f15ccba4a894649b471964392a3b6d66ec767f1e15a4d72da330302047c435bb5006730650230321d6ad687a666e859f34047af3389643da0d2b973cf335730a71a5098ec1de8a1ab6330c0aae1d365c7a1c90bfcfeb4023100eb55e89946f95a237128c9d741853bec98c31abf883ea0e0fe9bdb6d5079abed66d13ff58ed1be8bbc572388d2b6a8e40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023039cc95b7d74439ac04da8f29a91d15c6f52bb27dfa2b107e2b93bd4eb830e3c699ec3ca1ed06d710bcc8888555ac864f02301ea69ed250b24fad33fa6564ac1b7620686e03a4656890e33321e1eff90ff211390f50e53b6655cec7eb13d03786f1510302047c435bb500683066023100e2f6ed26bf25464ce54dd4206717411557eed1069e50f148f80291854d22e8abf09048b9fa26e18932c4f29f9206f61c0231009cb8fbf24cd192f56d518eea67c912d70e7ae1591ee403ef3f9f1afb9fee5150d2b236b2bcc151d5a9ea71347ff1b86a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310098622c19fe1ac27a15bb35fbb504976804a36f3363dc99f79a120acab515fffd4aa48aa31242dbcc1610be2b52a8a78f02303f9bfb99f842311c822a7a49d46e260bb3d8e9e3722d97e6b2fced81b07b1cc9089bbf47e5b0055ae0d80b648895701a0302047c435bb500673065023100e0021861ecd9f1ece0898884ed3471b61d789123a6b5b23bf0e85d12dcb7cb87c4fef7b4ec87363597fe2e0458410d97023072c57cfa0f2e16199a96fa711945a92738ee749fc5a405730111523078a967044426e30f9c99a409cbddce520fd0eaef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008292158b42ffc39ea357baaee888908452fef9fcf76cbad5aaf794cf54413d2a73abb90f4cdc468e7b440efd4a3a84ac023100e409213312be61a58b266043bbb357c99998d33d473dae6376a84f71e045bb8f8e1ef1fade1b7d3a968be8284bd7f81a0302047c435bb5006730650230296587b6600a360a3f3eaf70464fe1edac69cba83d6f0eb180f675b6e38968a3b5433ca5b33b1684d316f3d6b3dba058023100e7c8ab5bfc80e772f7188213fb789bd19e277de6434230d6299d2aa370f6401e4aca23747bf9c44d5964cb7ad09540570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d44cbc11049e499c63b0408cddd2b212a734555bdc0986765e273d66a7ad8ff8feb0a9bf1e31cc6b874b2dcd512ef3a902306cd8602f445f6a3aae10c9a24d1d1160bd4c6af549f460deb2f3e4c5563b8adef097347a34e25016818a43cfd0f4b0da0302047c435bb500673065023100d08dfc45a09d8bea46b982ac0de3a2664e08a88cec7be064c3d3056fd332d03d97d88a2deba43798e6fece649eb4833f02301a33e51b7cbbf9b12e79ac4a1d594d53d455f2125d94f5778ad53f00e0fed1522018a38271030b5aff97c90f24e462490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cc08ba9c5fa8cb119ae0934613f1f892e03311834bcd20ba69ec6689ae7346bb3269318676fdcdb00bde3eb2bce929a8023100e3c39d537827b745a61b52361357c2b27988b57cfe85be2908c51d3d16ca16adf363eb3d897201e1e4bcdaef9daa04f50302047c435bb500683066023100bdfffdf1796463fd951a2e68fd11bd8d482f71031feab5e1688ca1419fec3b059efd360861c39b7fd90dd0e753fd69bd023100db8cdfa9232e626edde302f4a1f0f738283c38b1f87d0e73352ff5f02617c009a326d6795184286e33622775882760380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c44b73e7b03c6a06a5b70ecb052e00908a7853a871a22779201906f4b720cd6cc30f9b653d2783ba8e9e65550b32dcff023100a6dfe5ec87e036cbaae3fdfb32ec9a14f75820a773c0f738f7489cfa2fdbe143ed907b4c56e6eec96d1a19d6e5b097210302047c435bb500683066023100968327f2663478b90be7d7ccdf6083cdd910bc7bf0dff71d280d6e076564405c0059fd6e4f2ef9002674d89ddba8f1b5023100ef1995c855aea38ab6c9ac13969882c69a94716ba281934ca55954b003f3fbda05e536ce3e0183de1ec101dcc4f7b8230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305e8a6c5b2a1a0f72eb014cc63f59d7e80dea834b025270e1e57ecd4f42ea272714a784dd86497b80de2b79987a392065023033dd5b87566a771ce8ec8ecdfdb901fc82d22a64da4848191f7cd2fe0f197b6ff5fbbc681afd4966dff548df21b7b55d0302047c435bb50067306502306709e2bc9762d7c9493d95342686ac16ae76c7e82b21c0ee431d905b7a43ab86b36e6dfbdb2418cfd64db9f38b6e5ace023100b9dabefc66a474dd9a36129b635a03513df82df0609ba8647a82b8d1f9e26ec2ec0ed9cfaaf6afbad2cd1c21639ecaf70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023043863cbeb283eafbc92a71298049baf7c75cf6cadacf9240d470915b98b109d027804f59c76bad0c8511d6107fea4e85023100d7d4a65eb64123710a4dbc07373e928c7050febdaccde081649f338c148b82f357abef45dad284979045b5f27cf6d9970302047c435bb500673065023100c85c86afa2e3d2f782a269dd210663d3bc156c6dd1d69b80a0e95c17eb75a5c654c528de942508d8eab5058ab9b67e4c023022115f85912c03017345b7815d1fcae2fdc1a1b47ac3d9098fdcf8b268f71b818959754c1eb5e96a9bfd65eff8d2b89f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023037722816ccd2eb02433c569222a34477cb4a7607aa986793871b7813ce54b81297ad51355800f529bcd41c73b38a50b102306848c46698be0d748c341a4335f6c870d79ce2b74ea1ac6ef8531661ed1895da1a856b597a10a9fbbde1d75c386818ab0302047c435bb50067306502300fe87d3eaf37c5bf6a24aba2eefefe2ace70714dbfb3d4aabcde213797bbb851179fe64625b36f835cb5e02236ff28a2023100e59c85fb48199cc0e327fbca817393dca580c4b92c49f8fbaba48b23928d27f82b7751c4d24c46ea0a2e752bfbc25eb60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310093ff5b0aeb9859a676a971681474ed1ec827e6b99c730f869094c57512ea473c3332858f8e0d77abf211d05d97fbbc67023058a28c23da3ff4e1e68c1f7a2ea548269b05fabedca9695590fd85ebf9405d94e4ed8a7163b530965a6143b294e46ad40302047c435bb500683066023100a3b32975c386d705312e872e50df2bd4ca0510c9304700de3286603754231e82c94a376d7d741ff39ef2bc7c533b409e0231008ca42541f8e408a49691311e54431168611671b0a4ea805972e2ae6b12dd1e222375ce3beb738c6853902a663dfcadbd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301abd6b0a25c49fbf086a1e3ff517a56bd488afc6d17ba9d3a00694593a1ebc2d3ed519636cd1b77c625e7adc82770e4f023078f613d4361a872376d4b6cf4fcae6bef1ae03491a9a1af70e8a87570e2262fba67f6ad97e11965991d1150b110a86a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b451359aaec6b8ea7118e17aa7080fa18a7225c107c8a7fb7609494875f6532cfd2b82a4df19f116b6a521750952632b02306c388def18834b18a7921e84f45193748b8ef966fbf8a96f81e4551075da2043f550ae77a2d5434cf4eb53cf2c3187790302047c435bb5006630640230231d98a632b40e72579e91b850b3a2852096f1a3118feb86f949f6f6490a2fc6d5a2d0065a64bd534de096570be769860230395d749132b18f5b58301d1a7ace51693e45a178adeae3292c1eb65df19073114ce0aec836f6aec7e4f1feafc1e9256d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023002f89ca23aa12c3c42af7432d8db92df26b3de5e6df1d5f710cc814221f754e395cc422a8a51e633dcce8131637b16fd02302fd9e5907ae948c81691d0624a8ef145bfeb368f8c385c3de8dc02399f3592a02e9da90217d3073d244d0b37aa2ec24a0302047c435bb500673065023100c24e68a4475abe1848f82aedd9e1c18dd42eadda7c906c57f75dbad46155d0084752e843b61ae312b0a410b252b7d02902303513190fa06a429a3d9b75aaeb099f94d871b4bce0cc8374b94e38f429e7a3c0e778a7e7ae2c2f8f97c00420d0d548380302047c435bb500673065023100e7173542ae403aa7f7c31c90a39de7d3d7e57d6e4190066f4a99ea482548f295b474ca86c90c6fad25f6d4fd9e6aff8b0230283dee4f4adc539e606e8254d43859a00a7d70cb323e43ab399ff19222a8833ff8bc73e09892cdfd2182a77b5d7560ef0302047c435bb500663064023008463ccdd5bdb2080268c3687beda70f112a7fe236730bf26b321508c92f8f4a92f8761a516741d12f005b0954d07072023011613dc6b8079b637383f511c2331409835dac418967b4af79910f2657763c60afd8569e07ab15a7900271ae4b594deb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304ae71de7e7c97633f51713a689f9654a2abb111dddcee478605c363bf6034b44eee7c3380b54038c5f574b9ed1c0feef02301a537d7d02dc07ec41a0fe2ca7ccc2ec7134f2b0664dfae1882b0935d810a7cf9d91caf15cedc33f28aea5d7a6c829cc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c789f9c60fc8aad68cf986df31513f4f6c22d79f1b3ba75b3357ee5400029065d6ef4148c6668ffd472f59629b8d8c4a023100e88bed9a9fd136a1a8b71351e93877a24c1523890638bc3da49d989f17229295cd6bd43ae7c7c57f60bf9f39c0c9f0ed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cdcf7119d7bc800b450d7ba390beaf8465eb62e860109f3f7af6fbb2d45113412e2f7f306f33d8ba57a84aa0700b9dcc0231009cb99abb98ec05482ea54c5a7918e04bc97c4f5406ee05e1a07b691ef693f2c1e7bda1a81d58fc659f69ff84388de93c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310083ea62bd9d58666cc7c23ed85192ef0d5c1886bfd190ff0ccc399c10363b1dbda6d40e85d483a264f00e9456f40f012002310081027122d53251706bb92315dfab335c1b14b208ca0dfb40736e26fbab1407c5f9390ac4e437e64c29ee6c9dec30d3a30302047c435bb500673065023100d8b87a6be0f0c0bf36a0d8c7373679fb504bdca712af2d9e1172cca9b5421dac50e8170888c96573bb61a39878c57f1d023056bbab85d0e609a6598738c50449bbae0423010a4b6272beb31ada763dba059a14efbb93011dc6d4114c15a9ca7dbb5f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023079f9f34dbfb621e09440df3822f73549e8dabb2a381d62b654704b6f899896bb3bd571185592cdb42395dfbcc7f30d1f02310096307dba26a68fb4d81ba636006a8ccb9f138557322a1d8d874cc4667b136c252dbdd71ea8c455c69993da5b1db5312f0302047c435bb500673065023100c0c4874516afb94a5ff50e0e69d95a509086599f23bfedb7216211ae9940e4823caaf08344b5806927a5d8df602e1acb0230519fb7805b2ba384af273d4541f72b5e6abe37289403ee8073b22368d747f8092935684f724533f2d667fca15186ec910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023012fa57a9088f0dd1c32d2d9606e9ca65dee76a9bab917cfd35813ac74e3e709947fbd17367baed2ac284994149ca8f66023100ea7011222357cbe736069e2a6688e94c218f25749390ae64f00b1b6c63ec906a09d443528b316e04be50ef095b9884ea0302047c435bb5006630640230572cb88bca9e7a3b73b5fe29b6cb6fe65e933f7a5ddae6556a1a090a8a9d0b8ec23f0dcf50267bd1a6a5ee235a702a7202301f52af23d05e25b67d2c9a7c3f64b690365afd9ca2b11db2f25b769be65277c932bb01f82d38dbcf403bb8916611285b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f93a8f41170152373f67b223bb0b177ab8bb48d12e2698ebcc5aecc3eef309bc12a45d4740ed5aebd32a37975ccb3a9802300d6ec599901d88bea491e2441ef44e0f498a90ce653203f3397a61c01e7f419e8bda55ab0828e5c595c8ff396ecfb3b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230492970203e30e1d4af220291e89d642115a2d2e9d681c4cb4f57199a6d46f3e201deb50714589c81f67f8156a9ad37aa023100e2649917f09966f849cedacc1953cef516a08885556646030164dfa687617b2d7b96d2d1c8db2e5b686dec9e2570fc8e0302047c435bb500683066023100bb10fca81bda4e908d263b011bf4f0bfe3c205301f72182454190c9554212cea4a43d980833754d32252644c29aea920023100d41ed3b8f1b009f8559c38f87a5f2a2e5c0ef146bd101ef8fc6d24eebae2294b0b8253097e1b20a9f39ea38332477f450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a451d840a38c54d27f6d9535f8038069c8592b9b24e4322dac3c67d458d95191e7b8203bb83d134091dfad05a2f32cac02306c98b5a29224907d0d6ce7cb9e52bf6121396bbbb4dd65b427605a05cf8430067891ee120dda6ff34e1f19dd0091a3e60302047c435bb50066306402305c1766bc55e4203d056777e61fd6a3e34e3c320032b5cbf91b0fd24bbe29553685e720e1d65ec460dd60806cc14c425402301c893060a8e87367203b70f6b4db545ac2f58de85bf107af016230b4c5937642bd75aa693a495f05f7a9747bb17878cb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302ab0bdceaaa8c3f7cb19bc600dae67561b6ab39b23bbf63303a63f6db03c72fdfc24571117f3c1f62f48eec3e575b0bf023100f86c2075e79ac9d211446d9458eafa4e9fdc213ab1b9102f221ab0b758f891d0b37212bb3d4e838c1868d16912295fda0302047c435bb50066306402306d9754b8e14e8c26979b9fc032d727ae35b51dd00cbd983e5954de4763d09f52215198e1a05b584eb021f99e62973119023046d3d7e003abfba0ad836f8b7b7f92a4a1963aee7b172dd543113fec6318bec288dc7f15beb446d20292b857009007f30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008d62c62167311bfb9778837d05a6e332727f981505f083c20805aaab8f4b471448b65f875ef8bbaf7fb69d4fcf87d4a6023100f7f03150bdf6b1d34a4e36cd78c9d8152e003389ce8c84b6eb906d6a341c44f5b002717dab3c700e2583421bc01ca3570302047c435bb500683066023100e399720aee4bcf081f61a2e87b849b250d796c22d710387033368aabff1cd980f64657d09f299c900633125c5d554c53023100f15eb84ab57ae4a5a92decfb4f710716c5e23c13d11833270309e2a3f7e343749099194b1f61e5b817f31e053ec617360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009d2164025033944c1b392a9471977a6b8a4fb5c598d60ae509ffc2299a6dfb26609753073c5f7eafad7d75cd88ad8b6f023100be461a94577119e9dc94dd90143eb67862ca0ce71a6e8a81b8f05c0c234a65c5c47b76e4fb7855bfe8f168bc9e9526ea0302047c435bb500673065023013fa04d8e73ea54913eb9da159980d7eb53a625d0fe3046800e70b38ce136cf426d72429d618734ac792fbf0d2e799ed023100b050b07811413ea7ee913d616f9edf2fa48f05d22d819afb7b6a54b7dd9c1bc4c76a72837e0b706440b7acd27a23c8590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eda749611f913d4490a996ac7437df92953af353e572916ca5395a9447b7fb31873289db0880cc40070dc0c4fa2b994b023100f8df7a8fe62384be0b21e77bc13c46adbdb06b774c4dcd52e24b2d27dd1c356a393d91e096ce8daca1150ff70df63cd30302047c435bb50067306502310080d064c44a2e7c2924208682323444545efdfcf32a1c413c57014f209c6eaa1f310a24e3b01569939164bba51b919b6b0230201973a10a9df0ee9f53f2f3e47a0ad15f613a3e397156ea0b35a1d11f28518fdea987c9fd0e0b3029a5eaf656dab4270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008a3605cbc32784071b43bc882fd35871003c3748d818d4303464dbe57ef80299476e120cc36416a21e632cf157753e61023100a3e8178c5213cdfeda6e5c7e4c82af075c7be8a278b57f64958bb8ca3c78c648ca0cb88725ea0b7d93f7bdbc0c6833330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f2e540bd0b70a1d9e2bbf7f18d56c9e05f10cc46d9302527900a75ab9d2d3234b95b5aae3418116c99f37f6df408d696023007ac309a9bea98447240d44399d43756e1f14794e6c6700ddf55b5547ec3d538540330c7f3dffcec5dd94a202e0dae670302047c435bb500673065023100ad98f03a634d00fd5cb7e4f570214b350909c87db2c27a0d4ee0a232cfeb6f8efd2fe06f36fda22456a6c63bbea3c19a023006e2be14c98efa372c5081dce223ae87b192895ee6d5cefdbdfa8e625055f287d977bc2cc904f965efba45c91c6cdeeb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023016a78b7d5ca7baff4167a7db381efeaa9355e82cc8b3784593ab9908adc04fb0007c0550740b15ec5f6aeeb39e3cb04f02304b838ccae01d0bf784b23962ed18b433a0d053a141fc9aad026af4bdd83641ca8842d0514cc577c07bffde44e84162c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023070ed340a2eb254f10a071214da8f119d14bd9540d765076f65d666f79496d0ebcd5f7fb19fede3cc06ec2c092c7e1bfe02304ce0e2f6e6b4ab06bb7da816e3f9337e4fa86e32ebd83d8857a551600038b71cdd5710a05bac1bfec4f69f66041ccbf50302047c435bb5006730650231008280b07057fb1a72a7054b73dd15b9d2ec25e216ff90a71990a59653b58b1de9476f7477d469d6509faca38f554e9f520230397be9a5b119c1fa8a9593013393be6d123e3bb3cacead2ae0b7e61606f19bffeeb41ed27a469aaf1fa4520ce2784d9a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a480f4340c51945e03f07b5d3b91ece771d75ae250c975907e020d05c9c078577d59cdb6e4f1861a7fc1b2e71ece291f02301a4be6386eb38becf21a4aeedc512e189f3fe2d09a36001a58772add6795bf54744f96559d7c1f45792a7b95cbb549b50302047c435bb50066306402302899e02be897f224b1c47ee5d2c8c4d1afdccfa7a17474ca84a0a1a1d05fcd58f02e02f76604a29a91690158ac8fa9bd023066f5830fc0ddee0acde89357b641087385245ffa6120bb9bd5f62139fe6b69a0b50d746cf5b5152c463d5971cac6bc2c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008fca5799ccfd032af23418fd7bf6903f7b429d827f7582e701771835c0054fa05415215f28b8bf72749eafc6453dfdd8023100c2eff008a265be66f7a8e592ff3b4c57d44973971b3d8ae7c9985096e9d7cb3f4c5f456ef7107103223a7718469be9a80302047c435bb50066306402303f9b5b391cbec17b7065c0b34d232d577d9b217c103efdc8aca3ba0509ac76abc7924400afb57c711a59173b1a62954602305d4dd7c9b4a9b53a0cd4b8452301dac9c46dd0218b64ebfa17b26c5df75fe4768e9375021c049ef75d22a7a30a4c0b7f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230055ac906c842c914bf5fc4a306e8fd86f68b5ca8a12d91a2b3392dc6e0225b75d1b5589f57a90c646163788d7a0f64cf023065957fbbfcbab562f49b03a60c2b63c38c19000efd52d4087f4b503c01e81b27e22a6e776581db3c93c52dd98e12d9260302047c435bb50067306502306a3b847b120dce90a2fcedac59096cd39827b90228c3a4fc3b6b18b551d91bbceda9808805ced674a735cd0f9a1fbda2023100cb4d135631777817879e866df4c3f9675e175d912633c4629b8dd2b971f4ed3f6260095c9dae03c27739bfa30f9cb95f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e778e0e82b5cbaabfa3498c433029bcc50019252076d385f864afb868dd028babb8d055e42e4a4bc255a0bcbd4f244d002310097b83a80a2a306c4c134bd763e1932bd7a731d9532bce1d7604a492dc76d220bf7cb8949b40661d401fdf439a54b00fe0302047c435bb50066306402304e877a27e8d282b73f51f3ab55139a342365e696af37099c7958a768ec0fafe97a6df3ade2c93e2db76af1810b40dcfd023004ce9694f355dfb82588f99db6901012afa0dbc58edb791b494cad772b94145066191c71682e95269d40f6e4dfed75a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300e329add69de686c0fe113ba2f5ebbba60fa5ccd3cccb8bee2bac335f6de1204a08386bd766544ea9efe1d2b316fdbe7023035b4ef43d21a990a9c50120fcf0544f501fbfd7b69bdb14808cecf108d69916f4837166f721178229248f0aa92fec2a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bcb0325e65ce3cc8fe2227b17bfc4628f23f4cb4f066f966c93d9c8e8e610bc73438d544a88a2a0d672d12a6c31f0179023005edc6c7a8546b82b8c9e24dc248d7bbb2cefc230574eb4098799dcc53cbf46896c1d67af8103cb8051632101e1e46970302047c435bb500663064023000b6e1601f5d78a1ec12567386f6dc00223f80628ee64f309ea695be661d2f90eeb13fb7e75892193682b1fcd3b4fdb8023018951c9c7728f4e419334cb910ce994ad5d10ea61270deb3ffe86a31c7a01ff2e6ea4b84d00a908d723d8729b60d02900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ad0f64377e7aefdd677710b031b7bafe20f11acd109e4ec9105192f7add2503f185bbcc84a95c4768d1939b23a4a68ed023041f841a2aace74c037aab0293d278ae748dc89cf3b1e61d4d3cb9bed2d2d2f621790e0a63a795f84de1c5006f3a908c20302047c435bb500673065023050e6ecd55c1f3e0eedcef534534b71633754bd023374f25e8c129da9a54fbde3400640154a735a97e85befb98df282040231009cc5b73d304fce50bd489bc4a6e194cfe9c8c2abb6902c5bc906fc5bd961bcab14fbdd74a029094a41d2e73e4d1196230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b1524eac75b1c55886bfda242040bb803128b7fe75433c58e72ff334330e1b7787abd2ebf3dd952a25c2fc80c0ff25bc023100e671c5f23b2beb6912c43984b1c76c0cb1dea7d5bd5ca8823feb2e8f2450f4be111c750513131f68e30669759dfa969c0302047c435bb500683066023100a0bff2c3a2557cea04da6ec77559526629963a0c7e677645aa96b1fcef543b8f697350c304c92ed4e8149ca2ba96f445023100c4b8ec379a94bc1c63f43d99e1c8015f2c02ab0fc09e62a118fe614df9f910adc56e0c792e7759b28c1e1224e3806bb20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d87dfa6f6b31eead018e65d289650edf5a12e8ca61964a95c901ebbdef6e63bb104bd7ccc694c7f4755c47cb993142f2023100eb2af8ae263bf25e78d3a50984e7cd3df6d54a69c22a43c3f84571fd60501bd74c58df100154e013baa35d53441311f10302047c435bb500663064023035f8eb49f7f760328fa067e714e2f07c3cfa0a147bf1d38d719af67e13da9238ab8f15543ce09fdb3d78b6c5859b7fde02306313457dde2f6cfb6c300f71ef77ebcce9ac40a6d102c83f995a0fb664be4ee1a99b41e38039723c370b3ea5c80407930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c8e15b2fd0ac43e7d890b60946a27115dc43e4741b7378a9bfc91c2f603d51513d70168ce429fa61c18b60e7d0f9abc3023100dd57f248fd9dd424be700db6571ce8637938d20278fd22e9cbc4a44a07a27ae38a235c19a31a2ba9e4b23e2bbf05f3880302047c435bb50066306402304120e1b6a3ab0f3e9fd8721d8bac039a6069ca6306c68d199031f26b462c076ad1f6e17ce7dcc60adc18a8b3922b27a7023075990dd4e32eb4a3dcf4599bdf3bc5ebb4576dbde5867235d0c61a0248ba4610b0a3768c04b058718ba26275d1a4abc90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bedd588cbd55a009f0f75df3db87581d0f5d17d54baf261be1d2a95e94b6134fa346bd62c116e4308d582bb9b899ee07023100ebc938970f69dac6de9450e3e5518858e977fd78561def4afaf6e1a4a856a0462a86a3693ee648e51bb837eed18ae6f20302047c435bb50068306602310090fc00f40f0cc4a8de1137212b93da3e123947184c74eae80e9a264c809962fa5bd09b1d367b7a54178f47e98b0e449d023100efab38882dcb2fad01dad423351c835b1a073a22cdd8dc4e4c4a0a5bb2e47970e91b62d2b43262252fff58803504b92e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023023f650cde1065ffc9bbfcdf5d667763819a59892b0269ac324a4d550063cb1027a308773aa490ec2d4224d9f67eb2fd8023056a89cc8f987b6665bc7e9dede8cccb817ce017310cc085686b9ddc0bf6b4bb283ab8aaf3df70b1211b411e86e150bae0302047c435bb50067306502310084bd3b78fca6a925b37a4a65bc46f82a6e6becb70f2b9ebc21853d00cc0f8bdf7fb5060b6e98e4a65cefa90c87eba7f60230049c40ad7820387d2437fca3a922541831cf04e479c60439c63b98fffeae727ec0eff7ac7bc9d109ab0ee84bc0b159d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230690eff89091acca65369c739f964d6e30ea9e63d96d12739306f2c3a4f8ce86b00d632b8909102cd4a29364d5600de29023100a2dacae41c95d031d06059ec36de25b0da26122f42ab8f1388a522e7163fd790ad17fe60f6366573030573c8c700eb3a0302047c435bb500673065023100d4be99ac74f59cbf3a66a1350e03ba03762333e924171182926d59556f4dbacb3105d6beac909625c22ced3d6d3e3b6f02304818cc5252c227e76f83510196cffb1a71bb6d8ecf9e88334a555c5c5b4bcf3ce1eb7c2e111280c62aa47b09a106f8080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310080eddc41ea49b90e643af47ce1dd20f43208f74a401126e67ed6a00772fc0916543160b861ead912d3ac694f57b05ce0023100d94ca2b2681c12b33762a51c6a8ce75a3db9eb8ee248c2ac23b2a7ab5cb4e64ac52080c97243f9318befe2d00402cc230302047c435bb500673065023100cf1c53d3bcdb6d64db7fe205124553cba2cc41af89f845d3ad907e89b8b16af53a7527e5298da448b01666a61457439d023047b259e181686158fc1e21f6803fca3173d4694e2b0bc7c2f3f3262c7261851c4c100b256ed7995afefc391c6c47b5f60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b374d57b67b511a372cedbf2911d487fcafe7634b8e0bf9e094718c87fb708b93d6f7a53344a64ababb4f62d708334b2023100c2f5471de987af3cd8425eaa6c193c7097b4a0dca58b87084655151f570ba95a2ffa64ca9dc95a49779fad4e18adda710302047c435bb500683066023100d17ec5a4d992e944bc555adb0f3759523ca5903e21cda4ef0ff71f423973ac9d201905de3b8b3748cfb23175293c4e820231009cc51e6d4685f9ae43dd524c9ebe3ec61a4968df0a2ebb5837d8832bdedcd862adbf2a6ee77bb557e53efb1e3a2857de0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303b299bb76f4c5246505c0ff4b83f61763e0392259636bb3cbfdf88a3d6d98c9612ae6117b85a612b5ab4b3090f150c6e023100c283aa74766b611b2deb77167c89920fb06aaaf5e5c085d9b1e6b9f8b08fd07769a10d41ffe4e36253fbcbc75411977f0302047c435bb5006630640230739b61ee6d447879be290752df3f68b091c030077d1588724d361c501cc8d9acec0b1ca4b08c0d7e3ca6f420152c0a7e0230490b7fbceb63a828b295745c3ab76ed7d4cf5f9f31cda5584640bde5c2dc577889514741502804abe2b2fc0d7516fe3f0302047c435bb500673065023068cb8db6b05cac4c99d07ebe57a900fd18c666b41c02bc817dcf3d26d374dc3bb389bfd2867634c4d04aed50be1e1da9023100824440313279d0a2a3f3720b8cc7ea6ea88571e265f295d24f2714639c9af1420b7ed728ac83b3ab552c3efb45824cc10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bfe1fca7b4f72933fc1f88efa489cb7286a398524e2be0cbe49f1aab51ff9374c8bf77157c7ddf13668ca014baa734d90230479047407d30a424a371b295904e753f65dfd8bc5c5a9c0043254aa3a049cfd40adc38979f0ebed14f0ce54e11102a1e0302047c435bb500673065023072adcb6096cc002c03c0ca7e74b7b81b7b70dfde457e5f773840349aa5e51c963af1ec1331884cf38e78618ab1c602af023100cf6cd1f4e79637c327f3eb998ce560039a7632c8ab838d736e9f5a95d71c6ee0898c972dd52e8af59f8844315bc406180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230143e55d3a02a1b94ed70b4408d13a17a3195304cebe3bf8e1cd558d38ad85a60e6a433118fc74a5f2577f335321a6e520230537eb2591e84c7e0012cc3756296917310cb7d6995f4bda9681047d558cc1e7c3a69d8ef24ad841acae076b98ab61da60302047c435bb500673065023062f62fd2e7ba4c10cc06d2f57573973d855bfff1822e6a1fa6f91c02111fb8f502a8f66acba69e94b88206ae1c8d223b0231009c9aa9222b7f4b9deb39b641a94eda2caa765604022600115d336d4daad1b0d132a9d30d29d12f2b35fba5e3b991488b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f1e32193ff5a5eba366fc0459b22fde361267531c142c0bd8002730b19bf887e6b1ea4198a01f55c7467a836b315167102307a47689b2f987406483a638e0d2ffd00aaa4e87166579ad0a6794cf372567d6f41fdf1a147973af6f4001ba2e284782c0302047c435bb500663064023024f540fe1cfb05f09588be946a4879f248f5565cab638ac77b8ecba99ce7c820c2a83c98577ba8f020fd7a0d0c41d46c023036272c46a5f6f61182a4cd515a132229273c89b5fc04a98a6b4563d7345bbcc0bf1498cf6e47c72cd9dc0bc47938a6880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310082f8333df5c1b5529a56af6e72667a300372269f5ab64de552be4a48027dfb2502495a7baab56bf1c6390357f403d3ef02304d76e0290716ac0dde19bf2869515450d4d213208f93c96e29343e71085f13e9b2cb14b35e492a67db14180fdcaa8e350302047c435bb500683066023100b8fb4d6caad83323985376c453049475af8be2224c7e11d0c470db5f703b2f04cd3ca9cd41cbff7ff6987ccbd92a3721023100d8c12eed6b617fd4f2f8cd0174f58a653ed76f5b2ffb06a9139b1f394cf9380be541239f93b87fec3da522dd0f81f4b30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d13efcf4964964547f073ac4bd749c7a08d87ed7b031ef85f45e5c1c9c6a987a5e9e9770115c1fb45336a4018827499202302a76d4985aa806e4cb154a9527ae952d9e3913bd7a58872817570d18f57cf11aa795f3ec5fcc040f896ae0711edca55d0302047c435bb50067306502303dd843ad97c4e9eaa9587150bb38e86571d2b9cca4d4b838c174e7e42e2ea54b2967f49f160c5e6b9b94eab2b6b38bb8023100a0229e03aa0aa1eab0855aea5eb8086fc74901695f598e8f60c78fe4c75142c5decc39b2b1939dee363a6b8351d4b7e80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301d8fdba6d8757f2133905ff9fd1760a076d1dfb5c7871d5d8d95f9f07525e3574ba41f0ad49c8f739d80d66611ff68bb023100c0273f368a445b0ec2a450491ffdca9c72124d56bdc5645c47d62f4e5fdacfc0b0089ab189ac2438d6c0b2fbcd5c78ce0302047c435bb500673065023100af4ee3029fd7ac845c35874669d7ebe896db2d771e823723d8c7e0b5ef90be31ffeb527abaa95a1c81bd5b8e4a76be3502305cbd5dad160036bd6e2312b11e2a275053293de7f7bb37f2c270e101ef1771a93d44c8c518fc083648908652a3a27e020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b20e6041f2b5ca5ceaeca327b21c6acbfc171cf503edd55428428c2f5f7cfa7feaede9f8242d5811954bcd1d431584f5023075732f2d9fc494d3580d7430f12db3119e90e8456ab6f19b788ba21ef14aa66fea83266d9159a1bc8f2f50e616a6b5890302047c435bb500673065023100aa847ae2ee3f10e00c64e5825d7334e64cac33089050fe988efa3ab0089e77cebef4076567488325daf35853e6970a4802302e21af83c8b5a68c4e40d3f7667690c99ebd3fdc235961cfd21d8daa9126c6947be3175ddd0b14f07ec6a05aaa2aed130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304b3dcfb064d2fc1e9ec8db886ad3132d911b1230e0f0d153f968c50d13575a7deab1dd9556c16b1b4ed7355f5da78a38023021ecfece0029ad51b00dd33c8278b51881e6f0ecdfe40d16c3571cea07068aabdd5949c605db5119d906bd16aecb13180302047c435bb5006730650230150d331d789ef38c69d6b52ac43dab63e2581cb02600ec7954303e623413b8d90c9386eee3f7d852c3ca0d718430160b023100ac0aa01e5e9766b2289d97a6004d49903d5558fdae4b27f96374dc494c0144433b303f75a00a22c55a433dfe991bc2330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310092ab79297093b4ee7b3de03c49fcc2ca611a9547d6e1b124007661aff5f53b79b67eaa8151f8f53bc8143fb3cbd35a9802307c63cae13cf81710c1347569bf8318e093cbcb71556bc3714e38be0fd95ab34809c28d9597367b4aae4f73954d330f7b0302047c435bb500673065023100989480c9ef5867cfea3aede1281c3bfa688c4cbb82164998111ba3ecb44a137f66a1edc9bc2f1d15b2ae34f48af6bf7102305fa1f1cae802df2e2864ac1ff270d503a0c0fb57ad89f14e05049f2144323d5aa10649aceae2578ed5b320d2c760790b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bffe6e7929c802626541fd4e80cfae2506cf6a599532782cd4966e57e34357e14aeb3e0cc614fe9be3bd223b0ae457eb023100e8a03e505131c86676338a0af60df795c0db90f0ca3f367a85275b901aec9251582a63f6f6d716f672ee2fbecf6673b30302047c435bb50067306502302d74f1be8406e12c485c89834ac14c62e274491d92f56073e7ab07db587f9468dd27c38b4e5c166cb1413040cb5ed04a023100965c15efa308a8e8477654c9923cdbf7276b038c2d28af36b3f4c7f931b340128c18259cbc08cccf897fcbf04913ebd20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d86fecf063c8d1135510cc5237c0819cb64c0130c8b914567ed66f3f2e67dd5b21c104bbf70944c5bc14cb75f9018e80023100baa748c7c4ccfd15d2183200f8815abe6c5fd6df118b4f9b73f7516d78cb49517f615b15bf62c05561e8fdbd8162b82d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a04e267e6ae2496526d31b6f4d8c39005e0232ecf50263bc1c228bed4643b04213f63d2e2343961dd5bb8bd939f61f44023100f5ccdf19a44c88fab32eef1f30fe1836673e989259c7909566ef9d943c3cef32e96987a0509fc997477a1949743b6afe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b1a55bcdb86b398f064228e597275609d88d8b1f3158b78047f79932a2aaf226c4d7cbfb2c7f97451cfb914c1f09805e02301f26e5925a615b3cdf227a508482f452895a3bd1d80411f27c407d759ea1b671adb4987a6d33969236f539086643f9660302047c435bb5006830660231009c86249cb704927030a19215ce11a2c99daca237b89cc10735541f13661df8532598007225259b4a374435fa05a8ec15023100916db9981b6da061bd73967d9f2efd4e449a43c3ac05697bbdbea27ebb3b16e41592226d1b4c5b5374c2aa9ba5d96e080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f54341ab0a23f095d587f2febfa90b21db3b4c10d523d7ca5a97939e6f55bc15fefbb4cca99539c53353a04d3e4987cb02303e031689c1aa83d155a74bce1a10013e6a5fbe351d42b769cbfc1bb53602558f2616a6a729e4612e0005529c9479481e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ba7cd0d659ea23029df80f83384c4528a5c62d9aa904014471b36c66959c9b4659f9184d33e486a19e401fc4ba3b7d98023100dd78f8fea450a9e2897ce6dbd75d695882fe0f94a9a72b515cbabf6c778846fcb2b18a50f2edaeb7f8668ab54b33dc220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230519df69466b6be6205fd30d16cd4c1fa93785b8abf64f64cd342de3e342d790ca5a16b26ed39aacf47415e946cef75f8023100a5ebedacae31472917518ddee5b255d07963f0912951775ec82c9ffd1b2f8fad372f40f866672493f08d5fe82cc8eade0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bbd301d7dc287c9ad6e772311d00427254c14c0d79e7393895baf38e87d5c5eee2ae26f7a2c1e80617e3fa6b53cdf1290231009cb02288f6e0334575a80b0a08636f02bacc2ffa0bf331077abde2747c1987847ec528da9d7d52b502cfdbdf8d6a5e570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023008856ad00b1ee4fb4c3c1a9ed03d9a4c5179b7358ae3a0cc09e3a44edd1127ca907a6ed0c6a6945e151d6573ca82d501023100cacb870409046494439ed4d5f7b2c6c6d4c4dd4198de5af9f05a6c59c8847e4156a5013ee89975b8284a5f7dc3a62c190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230063c430826f2f75c63c8c27ef20ab8c185bd829fbfdbd1a27a5b3630f13acd6790aedb8277abcf1be14f56252832479b023028930b11146c36f597cc1f595069b47282aaec2f603eb8e9fc228c628d1309a08f03b38529272f956c63ae1fb6a69d0f0302047c435bb5006630640230453b0365eb7be02c30352c41768d8c9bf200258f9098e100962eb392a1447bd41680463063033c2ec2a754fbe9de98f702303632c8e339683a5a3cac855034c39e82df159400df6ed99c6e844e2ba9314096e3c47915e7872d0632c178e7756da88b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009542a07747b4eab415243671c24d23148510063d641282c30de00353a4d37a6b8d16eaa0b3e274c1aadbae68566b996a023063aae7b9b5569452d4090c48dd22ac0a1b8e5fee7a10303445921088ba56249ad79c3ca8a48d8bdee5f795381ce6b58e0302047c435bb500673065023100f5f097874baa36943a6837269b7231f347a896219947aa89c92c2dff86c822b074bb143ffbe762bd77e29be36f7f28a902301245c7d94966ef63d55b4012537a6907be15ef8f266d3f0ee4ad9c8c45a420d40061cd940ed4bd3f9143e3adc0fac3950302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009df131f67177ad194dda21077afda32f9de7eb5ba7ad41e050f8c20b6aaf2582aabca4fbf2fc1555b36e9f3bebf0fd7f02310096671f1c2d943f72594dc2ea3c0052bd78976e339485177132aeca4aa263e8c1112a4b5f2f58a8de853b1f3cddc166780302047c435bb5006830660231008f6db4b3046bb725508e13f93225372045ca36bf27eb56e5f6b9cac3e59af7e6918fc18155c1c88d3dc7cdf8ef9998f1023100dcc798a2fc5884836901e92f861ab3bb8067e1528540a8c4b4f5ade90d9889350b3ceee56814f0718a18e8bba625adcd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a030203bcd26ecd1bfa371472576cfdd185775b952fdd2b0ae2f9e4e54552da81e4578848e21e69f463a403e6ba36f74023100b9b8a3bbf0eb3e248c64cc97b7d77b9d8bade88bd5cac3614fc40716e540c9720dcc31c195b74c2efb87981b5b02e77b0302047c435bb50067306502307ea3255480e74498265787885aa2d62b9e24be3cac1fa49da45ee8eaf1dabc3f1aad98474f024a6a621fdec2c66cb2ba023100da4189bf708689f800002658ac1b4956b6c4231f14a59bf73bcf15d1c1f1e722b4053e00667cce828813af8ee149c60f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305d9921f97a947e47b1d4872fd00ddbdf75e113c1186979305a65f424c3bf7e7861b937ecea013990f36d51c2b31b65cc0230723a0f6e6fbde2745b2ef3c6f9e08befb525653440f75f67f78f0e8b7dfeb78de5313c3643b13e867eda25bf2358cb670302047c435bb500683066023100fe5ed48c3b009f170971b5d23890f6f0e8196fb27ddc484807a920cd69199fedd43eacceaadfb34231a1cedfd7a385e3023100ea896555b023e7bb608ad4e3cc030b9cd86b1420e28d494452bc643309665a8e7b10b6da18a193eccd4ec86a52e92a590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023055e84bc3cba5f3efc7d14e5502a5786521a6e93e2b8c539909b5589ee9b5aa0b158f056a12c69c1e32bf989c8404d80e023100c0e372fe13301ab4c1c434c8ba88e627c6e4660f74932339a5372c961c59b314e23c1445f05922821b39b0870e103daf0302047c435bb5006730650230674684b437e9cd209360ac496c2c08cbdfbdd852b38d7a540eade7bff6c8ba9dbc163e5011128679f233736725c245d5023100d5c8ddaf1467a49f06a183cd920383e8268b627214ff4ae4c19be0eaa08c488af1561c08f5d30dbdd48ab3f037820d840302047c435bb500673065023100984802dd08ebed8f902a6780cf977b098ed4b93441225b1bb14ee09ab2a391ed06e1cbc102e43a7278f3474ccb6afef402302dc80d89f169b952b792d945fd2bb90f0d5ff2308409afb016f9a7cdc82b80775ea2526800533194378a77fabc4d4bde0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302f8ea0fca5ea5b10952a5f73366e78d59c0e76278e83c3ea32aa2ed1024aba906fd627c7f8f6d751fd1ffc5e08c1ba5b0230762ff7378bc498b966551c4437b834dde4c0968508cc326025f8f63efc75f1bd1242989cebc477af67b69bdc84f66d2d0302047c435bb500683066023100ad615c710263f647e8432e261150db7176f6ba8c4fa7e80f4d4de5078afc06cdfebc87a7cef377212bb7e4a7173b90590231009dcbe2de17aa0119cd840935bea3609532d18c165b2360ebaad717c4afa9b7e3e423d204203ef3900adedcea42ed72b80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023071c6cca0bfcda40c965e746bbdb6d7b3b06528d1d3e58072eed65f125ed24acab70c26f6a75c68a9015fc2e136ddff8402305a2597f0417e628d889fb77ea4df12b9201fc43b92fb5b9a5b069784083d2235694212d7526dd3181a0bb1832c6d035b0302047c435bb500673065023100f3ea02752192042cad25341768841cc8dabf0194711da2dd9ef96d4d36d35839927816cce1e79065e7b7952146546d9c02303cb74b629818154e287dbec7030ff6134ca8b513cd19cefcbfd49599495628636eb9ff954ecb36c64eae351cf194155a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300c621482d2f92f3f4a5f9b6a130c9ca6bcf9dad671e4b90355ac542e5307fbb8585e415af24a957bc35e1530fa043c8e02300d5a8d4ed2fdec8f57029d89a4fecbe4ab9c841b17ae50b3ad3e04bacc96ad0f04ef9ecdf398902a9e6c2f541bfa759c0302047c435bb500683066023100c38319826db378b850159034f67a1322dd92fec3a4200ea3b0d147ec9e950864076b59950cc7aa9d5fe963842710320b023100b5062087840a44bd17fe30722e5019509231cf59e3b8180d990b3f2a654a4b51e8fd92a6f2af85e1736b9b2e052d04950302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f6ba0880f7f791aa1dd6716d84b94924bea6c124a5e161834c04911223fe0346af8052d3b8c1cf1eb68da87b305e274202303ddb2d0397e06226924b17eee51b4f9fa63679e177368abd96f7b2cd20634e92ea78ae460cb0945c0578da1f296300f90302047c435bb500683066023100d5b2912a6ea67bcfc2f325a1aa688f7f5119973af7643f048db67fff4aa158951b8a14700b296508f08ae08c56f0c7e2023100c78c93c81a6f427b77b795c2faa7df47f41610397e2c741f56af6412a8f01a8df55709f1610d7946d90e53a2ecaa7b930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302ede5f1a7929e83b35ff28d2ddc5e85061cf73c306c9aa250a3dcf1a87b986d9c4cb2bf7673f9d34b15402bc4c0c189002310096a9615a43bdf05ce2bafacfaade8c91207991ed714e7ce7dc8ee793d7d326fce961e91de526fe9ed3567995cb1559ab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bec7bfb508758a6bae224d31f58b268efb9fd4667301e8932b489dcfb8772614e3271a519844e2a704c822741d2ab36e02300110dc03c238ad6c6133bc79f3fa156af77ea2087affdfdacbb8025ddd87da89ceefba97d68c51a6f95c927c0af3e1ca0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301934ff3f7956ccbb68f0e1016504ee436fd78001ee54cb0bc6e98f4021fce6530eb8b3e06858a47fe055e932a4ca1e83023031db2326cfeba5c4da2af57ee6459dea53483181c2a6be5188b0b23e39b35b8e3006f6ab2bcd9aff2f69c0fe4a9289f80302047c435bb50067306502304112536dccb7f9e5f5af5bed535e4e00c86a7dc4f116596ab9ba21351615d29e50f6d7e697ae004ca08e89100df6ccb1023100cd5980ef352ed0416ae966610be7535871c251590d7143b0f82c648166283dba9d20c4eb16ec7d3a997a5b8978f2331c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100800493217955b01f973aa94a36cdaa016e34a6527944bc515d33ec94946af66777c68cd09c647d7d58b56bec5db33f4b0230547286cd974d483adde9cdd9af9b2b5a55b152d780b85a7d2b6a8777d017c0d98f155f67e274691415f73ae57af91d440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302075be49bb0fb2559f72040b95f358068790d7d1b30e3dbf7024b2fb311e3c85ed38c53c6be6b404726fe7fcfac46de502307cdd07ee555022770c507524ebd0db943a30446fc5d7326575ea173dc225ef6564b7e812b7016b928920a49c7e7bbe4f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300dd177bf907b09fd9342cd9b7883efa5c805f297be1e5ce0924ec26642ecaa68bb9fd075590fa670359281ab9db479f902310091a85bfd81ca98df762c2744c022966c2134751776ffb6d595c46b02cbf86f7cb7841c4758e16291916a440d4deb3dfe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bc5599671615fdb994262fec3347d411b0084bc687bc34066d2c2db47765bef54ca1272288096488d2a25329ae6a8fdf023100acc81659a99a65fe82a40f814277747164ee84f5de5d02310ae6f09826661767a01c2eb8b2d04669357d7d20c3e7a9050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310093e64ada2e35e3ef76b855d3cb44b0d917f0317e9f57a01e2596a01f7c66fe6469361c84ebd5c76370f825ad68ddbe0702307608e4af77948b503286ecab4f3f638776fa5c2d296b0bf112c7f239e8c5ddc12f144a6dc3d9e96312d5f24745b89d330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b2ebfb4c472b3520cf7f3007a66299ccf3a65bab68c901d5cd46516f0c4f2a8fbf120d8f15e7c70694fe7553f6ef49d0023100eb3ed8191757ec17d4c8ffd8457e49eca2a02c014edb71567a08f923a444efcab9ecb513be9b7ada27222557fa98252a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f665a5772be656e1b53e4e19eb0fda3a97b11ae403f45cf076fd06c699cd4b1ff0add9c659aa06e67a63764e7661a085023055bcace7676359fe366ff129d071447e9f6bb27d02ed8e97be76093d0ab342ca6493378cab9f15e151b9aa8e92c061200302047c435bb5006630640230123c445d40efbe08368e1bdf1b2d74c0a566a97c1a426471125589e324c0c1a1662225651e1e5295f64c4319c0e3f95202301daa3b7d8c2108d26b6068ada42ada65a75a1f0eef0b7a738040c518755260c45e4df5bbd8eac6a6ddea094f4eac8c0f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306e0960af511b7a9f3f7a098a53f925a630c44c81111310b24fb3a2baf549c50f5c89684101c643dd67051300cd73e6ed02310091f97b1ca74925e6d6a0ba4040cc48efc3868555232e21c1645fd98d745a284a4b39e8ad0eaae0da5effcda06c6251bd0302047c435bb50067306502300c9396894b87b32bbe7120712032150ffff2af075b75a3df756b6a66bf5b7b76d32e045d540bf1dd19358369570bbde6023100bec6c300af77ad4c246b5e897c5b344ac15057f56f778fcf118db13b49a9833a755ca0ab5bd5782724511b450a43dbc20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023041ab822247338ac16fc988dbb2426d0d25caf5b9d21734227a432e163df86145c92494c841d01a2b799edb8b74a373bf023076caf5b96ea56dff5523b3a8ae2673932e8bfc72e905b8f71b932e8bd92018be550910fe43cb2aaf879c4e1b7c4d02550302047c435bb500673065023100adf29a835f807692ae599b86d11b69dc58ef3921a686152b9e952af66e42324d27f730b7f3f59e3befb7a6f3eb198aa102300d3557037915ba37d2578b87cb9f6e6397a7abd1e6b017d0c9292ca626f21c1dc475a28b3779352a4f97d8178f110c1c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023012f6bc51a2f97f5e01f4c757f4d7ebcd1938e340ec979c29f24a5e46b2d25bbb058c7678e2bf889fe3446bdd45bd5a09023100a0d86601557c430ba962fc9bbd4a18925787f67c828242531a8cdd3b402e219d89e8913c03032950b8a142577d5d821a0302047c435bb500673065023100afbe2fee9bc33f68a4e4f60603325d02aeccaf3bd2090830950d88e613de4078cdf93a4e1a23b80246c0c8c596faa65e02307abf9ffca223a4e51dbc405820a486af55ecd9d183fd557fb0ba05130f42369cb2296c833fc2e87ebfd732bbc2de8a780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310088abb001290d7a13a7bc760dce2d65bc10bcad9aac91b5673d65f5139f609eabcc2fa892691e38466207e148b0ec178b023057aaf22faf09d999e56f3204987d5e7cf580595c8a86aef9077c0a3048056138cedfc0c266c5b13f972f282a4f6dd0f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100834d26d08f6f6c14ab27d55d351eea1030ae940c26d054f10f359f400839e5679e1a2493a4b418a6ff03cf80dd868fa7023026f65bde1343bfd534479a506190c393fffec44b8f386618cc346aae60c675bc95885788f600e11867de20a3c10759230302047c435bb500663064023051f44ac16a25e6c27f8df618c30297a5cfbb2b6ffb55aeb38329d7c1b77d7b220688f8e9777a07ac5147205f778de3d002300dffc20a1f34de598da5bdf895fdbcc7985111a40d04edf5e1ac0f7e6badf7191537fc3be0c41d7665888f3b26195e900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230451216c7a2b593ef0bba6ed54f5fffb5fab7d1aaabd3e52ace3af2c8501c2868a42947a91da5aa1f2915d41c229ecaeb023100face799ee922e9e086e2dafe2fbda4dfbb4cb13f376d53db557b3384e4c64afa4e9ce30fbbadab398ea2cc77af082b090302047c435bb500663064023018b6cb0493e343e02faffbf7154f796216c6b0773236df7ec18fe20bc71d4ada9247446767e9c1a6a1b38c9dbc3a6ba402306c0d8ad95afc7ee07ecb2bd0465fd140cd24309a02d2ccdc57c65a59c50aeb137cead41383e42516c8eff904fc7f199e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a5be299251cd6e2763951138a43c4c2a2a3c73ec3df73467d111d393d34a3ddd77118c9a3e9b4ce0a9e59a06257b48d2023100b1ebd4412b09bb4ce1d82c579636d51cbca83e627cb8cf654be8f41779b26048e585c64f459a48831d77ba10e343f4d90302047c435bb50067306502307842b9ab609296efd4a54316e24e6eac0ebfe9e3d3f0047dd7013a62967f763785e2de61082b159f990da567f1833a5e0231008ca9732290b2ed93c00e9a8b1a10ca38ecebf8175c1433796518987a7d05f56e0905e38301bbb38d85149b67e7e05cf90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310087292794a75704c5267329359f440704790ebe50cd2e9f2fdda554b1bedf707ab15e078daa647308460389e2a97d04b5023100b00beaaf9b756136ece346544a9c7d2c47d3ea1ee0d9988ec8d906a485b691544f4fc116981c2710b6862ae48abc929e0302047c435bb500663064023075c9eed3d15225c25822bd45fb76f5e2ecb6153caaed695d471a04bc9e2f74ce18240956b0eca0a25d19fffaff5bb1b0023066f3ee79e434b438ce05331f90ffb43266016bf987709b1a2bb853de746b9386d3794d497b5c44f179f1b7fd5ad30a9a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100db07b07f1dbfe56c7588f17ec7db2d3e13a3bb734c4a202817f9561b126499531108452550ce1bacba6efc6b05ad9312023100c979a84d0b96445262b6bc7260d7650424391971eb38d913566552eb8fa40afcd7641c4e4290a6117a5140eac706c1bb0302047c435bb500673065023100a2d2b9cd4645b3c10b04a38c951543275a779e38b5574187be7bb4ec9df053b021ae8e92e32d6dbc4be82734a582c249023021fd3732f7063004cce44c4ce9eb4c35013235e6e6017948a556a7a966e7a92a238f01682dd7065b162185ebf890323d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f494530b94ae9fbd87744a8fc0c874ad622abcdceedf7fb1c484468ecee8f7e73a977a42227428640a0d2a3924975426023039078df8a6396529cae46062f6b14b80741524fff9369e3b0f9a2783a6e48635888bfbfa98d164643df3d2869949ead50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230193757108c78a5262b7e3558eb52ebeff2ae7ce842ba70ee85adc687f65d8937a33ce8e85aeaccaf02d9b3e79ea8c6e402301803888a4032e50fd2bfe40e7946866506b0267a929d7ebfdaa6db5a609723b15db271d304b13f281892c09bf64610e50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310098a00daddd8dc0a053c33262eb93c7c5db62378c9f5649162e083314344baf03c9939deb0c0cfe109b1dee74e58329430231009333c68d1c812a4d17247b7d975a79766447acdad3a1a365097e3cfb32176b3d2482f70b3723dd1fb27e5ccfd0facec60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b5fab29995ca39f24faaf845639ac4371afc9a03d64b4d654cd54c42e23b9d36f40a35869e4d7fc1e01f362d56451c640230025da0100662a5698018a2e5b38ebc9c1048563552fd2b34d14ca0e17e8cadd5a02de6b4d38ce9371816b90922c9b82b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303ac99bbe7298241251e5dd33c673a9da8d3e0269281032d82422f262d2447be737579a99ef497e9dad25e0b8b61c762f023100c4e58963030c8216807bea0e57b72e567f2169d6208c31c8b9f97ec0e6dd0d7f8b278933affca04badd976af005d0ce20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302b4cc39dfbcaea1cb510d4414b407194ae971f43a07c4373600d91c986fea8e48be51a1a549c1bb61647d135e405b5c8023100c0d58a4edc4a4328a3f58c3fa7f839c883b7381a479798b7f968eaaa4b0bbb845ea93a9a70981b90a51540908e00c6f20302047c435bb500673065023078c989a93bc21c0f17b13df44c52bcbb404377a6edc936d3e0452cc0b7c19c98e37f23cef34203fce24743cc0ae70d23023100fbd644967437205c15825e146a3e06013b153c4a961d1eee5658ae6e067c82c3e2f0b38a093c3e5257d96afbff45f36e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a1011ec112c6de3a8631ba17d2d9a0a642974e63ccf858495edd91c2648013511eb8eeb4be233733447c0a4f0354e2d4023100b36668cdfb3311f818ecdcf686c2eb18dc0e96b9e9eebe0d8eaa5d4684b303f0c979c38bb1ebd600f933658f29bea1a90302047c435bb5006630640230231d0cf713eca6f6ac0624b6baef7b9dc8cfb893e8c4ee5e5b198b84e44184def3f9f0e9ef146973f8b635e6288e2a1e02307dc3f8b6531e60cfaaf382835ab4eca1b54f76d53d3a03cdf87e51faf0432f478a3f5acf02d879a1f0ab81c4b86b7f8a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023030fdd9a86367356d48c71d4c556c3ec0468503191c1c182d15c38eeb2f2aa30c99e57b5b8b583f526205cf9e35e1c198023100988ca13295d63a6d4a1cde28d3dd1e78bb1865d10db77834a4cb1627ec6f0c50029d608769372248c6fcc82b7074ecd00302047c435bb50068306602310096029de0e5308d186b95fad4f677f7a6e6bb44b18b3450092ac1144808d239cb77cd93cea61e654e6f0095f64b0b5fda02310088d02357feefbf4aa12d9d5868977b003dbc56f49d62f0c57858b74e4098f628c3e5dd73dd98a1f04d61beb6cc2577f70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a20ae97cbfe2e2f2e6b8ad314a95127838cf2e6a8c21d0070655fb37c7140856697bc6e1cbffd3d5566d694f6b35a09a023100faadc468ff76a1d203b2b5fd5782600106912c73443806fa23a57a0d8c0ca4b1a51f0ddcb032557e39931f5a2e917ac20302047c435bb500663064023036d4238a7e84d8374f79b4f892358d84f5803de0a42b92f1db30b1ab89602dde25f9eeec1435a2cad90548d93c7747bc023063d6b03971a02b900816480e12cadd2491fb6ffe3174ffb2fbff865326c04488a91d9af2e662e431e0597ad0b93478b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a278ee9ff0643022c242a32664c57b398f9da34a031b92115a93f28602112fe456586f24c279c414ba985aa7b1a00e3302307c219adbd04b0d7efcfa45b1e83bf8f5f10f4062a5f05b3e113a90b5db2294f959b02ed59834c116977a79f0f222f9ae0302047c435bb500663064023003a3805d43ed691b4dcbeb58e827c09c966b5e5ebcccee85939e5866b29bbe8baffc6b0839249c09a6fbc00fdd1c499b023056a97c76bdc148eaf3c84161aadfdbf8f9ff684d2787876f4c26d4a44e333c7bcf2fdb7fc9c250a87988ff07e4ede5850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ad2d25ab14d5d13838d68d4ebe50650fba6241fa959416f4f8a9f654078d7bc83d278f74daa05829cee4fc86b15312df023031ec155852646d648ced9c4ee91fcedbc0ba6baa47ce192be0f94fe2098e336b9c53ef922b12fd06fa7ebca2f01e2a2b0302047c435bb500683066023100d8a74d5080fb330fd425ff01b5d33e90f5b31f62ac4e14cc1e071c18c5c45001451919005b9ff0b446f159bcdf58e1aa023100a67070cb9a0ef84b5b298ca673dcbc6dcc3ac1667850eddcf0ab702e8ac07158c6e383e68ddd1563cb30b72b9cdad7b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306b72490185f363b88e61f2bd5c9177422f62decb44b9b485517e53ff7ac5ba885b4ad30e18f825c91ee32ea3d94dd639023001847a44f8fec83f23ce802ae294299f42dc4880415dc08d136a3e135d17864d81babe368331e3bd6d6c143fe18b4e530302047c435bb50067306502302323a0a1a180bc25f0c3d8c3b1a15a88843c14ba5bc1fcde46a8e25e5b9b367652d42b3f664fa9ee6fda1b3162d9c791023100d7050badc5ac5d98cf88080ff4e163a72e113278458209d9eac36c134f516111f98bed154f727f9194074abb0d95d1a20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e1344bfd82ffa709f71223ce60c0b8fe28ed7cf01352ddcfbf2056625f1ed30b29857e140bc2d3aab76b0ecd9cf13285023100c6ca6b12571be8d9b3b8ea6644584b2152e0361bbfc59071d3e7c21c0f3544b4457195ecca11810e3a0a7a89250fb6f80302047c435bb500673065023026c27b323141ca1074d8e63d776098b1403b43b4b3dcc710214913b3ee8cc9012f5030406d95bb56b4959bec2763ae1f023100fac5dd4dabdf1f67f4cf469f85932fae49d794599d87f8744efd5776418e02fd094f12ef6e2ba9bb172b0138be7db67b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302b4ffb59c8139cbce9f5c4150efacc4c946f3e5329e19b55a34b3ce7443dfa9eb07bab216964f814dd6cc0f33528cb78023068b57c2eb13af52158296c8105f33db4626b78be64fc5d1cb6769bf15821cd0346b3e27afead3ad57e3bed92aa797e360302047c435bb500663064023055c1200bdb11ee5c9d72f7c00a76d7a607fcc9043b800f1e1c3b69f8a16bba37cf8e37aae034f8242ba7f819df85158602301e68a22358d146328f075e22920cd516efdee73ca979cf4a222b299570becaa5b81635b5a93aab5c94cd60b6f049fce80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303a6d3e9b3c04bdb6dff36ac5fbbcad204e8ee75cd2f25c98de01bb08fb08470bfd426f1e203a0c534f4187dfd16b8a7d023100fdc57e405f1e685b0fd866612b397bb8445356ff0d10f1b20f2666dffecf4264e457e70ca9884af813fa1f34373223540302047c435bb50067306502307d9f4ffd036e30596e44fd826715d76683c5f4a0d44af571f62336e4e61149741308192c4d3ae528d7a045ae780f91ac02310088206ec5a2ccacfad0c84298178936a1e30c1accbe85193f9a80317b1b9a767fde8c422376526398b7a445f72695c3b30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307f5aa2727972ac4fe1d48f6008fd6e8a67d4293b5a44848d79032451471a96de1a939eb2510246d187454834e16abfc20230619281b0d6deef6943bcb095a065ca3ae63fc36e5ccd1bd81ee87f441e0e60cd06448acbe574f828916bff45d81bed3b0302047c435bb50067306502310094d3c61a4860e5d2bfd7fcfa60c5341f3f2bf6964d534425fa75c64852f12083844d3a41e1e14d400b0c29efba999b8702300da8836cd714681843938e8f46977a3a96e326657974632c49ccf48e3dba07bb1a740d69e99694488a9dd216e723462a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a46fa5a816fab36fedaa172179cd3d051679830f3bf840a7f5f0c5dc11c72bdc7c36f605646c7d4851959eb2bf7eb576023100b93d3761316580a4bc7d7af61137277d575b90c0c5bb6a3ae1330247f2dac8ecbd3f491f2de7f0da30cfa4b4c555f6840302047c435bb500663064023020c9f8b6323d9ee5131bee0e569f6f7cd6a048413208b381f9fc86da665ebd07801769a00112a8eafcc62a53575b83bb02301a0d74bbaa633e905396c8adc10af3d67c7ea90f310260544edf173c164521db62971b34f63d52386de6a9e4d372e7330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023021889c2f2bd41d84bd96356e770a1f8b7c7599f1034c4c2ba03ad44632553d42a54b4cf620cb656fa9465e4fdd2a83d20231009c942e09ce2afb5fd12c105cb2b65ee78b450d2c4d89e3395c99575e1d794111a31ed2b0255ce56f57d6c5cff44c99510302047c435bb500673065023051e96d447ccdaebff425e2862b1bded27a15219bf979aaeadf7a6b7f75ed006f04cb25e058b59fd11cf0b720b7320433023100dbaeeb8cde2883455061911c96998f7eb291b4c7840fa7e32276b53dfb39f033a14a715ea04fe296a4fdbd25828ead780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230355c19dd38041c5b62c3da5c124bf37d00a777700f627e595336daf5447fbaead451ce32efe3635330319ec91452d6e802307b214199b5b2f900f35455f2a4e518db4152f380f2d3081c0a1e7e5f2eeaee6eb68a1896fe49de5e6c6c1a349056e6830302047c435bb500683066023100e6e054152cc88b186ba53737210df4e993db15821bac10ca05bbb032eac4db75c275b79ef9dfb4335c954ed752a7119d023100dfcb2906b55c9b6837d4b144ea3fadf6b1283643e65fe831b6b9683ae60c1179ba70762fec461477de3a4aebc094871e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e759cf30fabea8d2c37c22529811192385399d8af4bfa968903447e14bc4d8b667297b50f9e7ed0e82223fa8140465b8023100d25795061b750cd597c84db8a0f04cf93c948ac9b2e997ad5fe024ff1bdcb420437783e1b165fbca49258679673072ea0302047c435bb500663064023019d5fcf869f9210e6786e852f0f339a1805149fecedd0b6ab929a47bba6219ba2b2e8062af52e87dc8da84d95a12eba1023057d6a1dc1fd1a719054e7cce66872b4d6c5cbbf128dcb92c25468f0a7f91a5ed1d29407240a654469f61e9260de017e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fb23d2a181dd99424ed822ef0bdfecd933d68f20febe5653ca8e71d07bd1ed67aaa67e1d1ca69618437306a89d50154602302d988f1b368c467b31dfa6789c37c57a9bf21569a71492df36bd23a9b21997eea3bfd67d1e7d01b46ddd1cd4591dfcc70302047c435bb500683066023100c7f24967b980813d896c8418088df63985c6b50a61ae239e7962737aee8256b0338b6324e307927d424d6f2ad53444ad023100c591e19d4ccc2393450b5577976706ff4c36c16502abcfcab843093e63e83edd0d32b3592fcf48478b6ca266e639efa10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310082a5abdad80b292bc9d9bcf140f18f5165df4159fc50b1332f954fbb3b1fd117bd8da0bb1b5f74376d496bd35b32e40e023026f111a204b9f172559cc340e8176853eaf4a90a3f3dad94f6e284b438720ff77eb9240808eafa354c7d150ae4d6da3a0302047c435bb500673065023055cc00a721daf60cb74b2f9ea86e5ccba38ae3f509846d9b84f3d8b1deeb50a70c4e82f759133b83cbe084d97c79738b023100fb7b443c53bb79e9e05c93c7355c1c439c5e22f9eb7db1c7c2ba6dbd53e830095810de6844bc9a2f2bb8f0f7a007416a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ffcb8c8763788d4329cf739b30a484cc71c9d8757072a7615f3fade6a9af48f37f9b66e5c1563cddd4e0d3adb071911d023042b0c464d0a5f3627a4ae138944a8ceaeefcd188f89368cc11d5b30c41985a0ac42019ed9f6e503daffcfa300b34cc5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100befa02c5df0a8addd0052f9f05ad7f95f2e6e46d4b533f41e718689131e501d61cb6e2d1268358bd248c2a2e99cb6b4b023100c016eff3b0b3599e1c63c450a7ba29dd43dc07164a88f892455cb908a25a64381a3b0faa7fe13095e1badd387275492a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310082675d0e19911531227f53d1452cba6b4c4d05ce4d8f06487ebeb5de1d42c0a339d45ba4e19a1196fa7febec32c52167023100dcea9d5778e1663fd413de11eab1685ea85c85cc071ea0b5fe3a029579a237fec85e42b56a61614351581dd370b865c10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302e879ade496b35f5165fdbfcbb46008f5945d5f30ee4b8cf7ddd24abd55c66907350e39b85ab44d818e3463daa13459002303b880447d7df014e5665a989106c757d03606c561d265432daaa768ea27089e826a1d7d2c6d1622c1a3b23741293ab7e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100df08d0455a4853bec6899bb898f4414055465d733a68f53eff93a8e9c080705727a745b42af172c12917c89029128674023100d71a4847805739892917348740a7435f2e9280976ba40ad7bc38796cf738605569ab904ec0b5e79c58d7fd7f1c4f6fcb0302047c435bb500683066023100d160cc2b33e94650574787a3845f75cc7fd296eb3b364a996f6856a097ddde73184d913898775f2a220652873630aac3023100b45158a327c6f30ae9ddb8d4efca02d1e7a3a0178ff845be3f3ae34fa82c65e5c481cc08ca510dec7a778d130a20d1430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023030dce35bf145407282dc380cb0afb66624eaa47dfcc1082873c5f94220905c8ae0bc426109740ee155d0ac5488aeae8f023014a4fe4c9bc292b92bc14c997dd90c6bb3d7b03630c09e831a05282db88e40581c9591b1ebe781731c305501f9bd75690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023051f839a00cb6f9328ba99b3074d57504e20fad3cb73efbcec910384aa973e791d245ce2c28372dbdf5b80b0d4974f300023100ac2408e0b429601acd2f00b01ae4fb76fcae7846682ec14f66e24814ee9b79aa674d4186da83ee82ee1008caa286e3840302047c435bb50067306502302add0c5052b2213f4277d4ff2104a94bce20f91785f834c5238d447db3a40495af71d53874e227d337b3357226bbe2fa023100c7a4ff582c816867d8f7203b57286fc750e00f496407f723d236bf432eaced3b41896fd4332a40be0595d3b3fef76fb70302047c435bb50066306402307945058e4b6eece220c8dd4c5ce1dd46409bc2599beddca45f5adf455d515c56be44c665bd28e711d3ce58ed34a1989702303362dae7d55e72c2dccb73c31f6144e9f06a1f3262f65099820c4d71d5a7e6f2bde484511f382dacad530f54f938dfb40302047c435bb500663064023041fad1265decfbe5070dd57340bd0966d70bdafd5c16653fe1b6c994159e1302e6915f9a2ee134dc2fe20c04a4fbef0602307a546cc2c764b582cc65fd4c289963aa068089df00784ef27240c0af968c4ec0d1e8d35a975d1825993b6bc40798814b0302047c435bb5006730650230288cce1a1feb4afad25490dbd185383f91628e287f97af189e54dc365dbc2da993887cee44785bfb93a99d517dbe38bf023100cc56b248c48726c33ae46dd1f8e41e8aab6dff0fcbc9272cd9d5c513bde1bb347561e606f2df190f3f3d7c99e79f35740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ade634b3879d59c90425bbd1a41cbaa2f0a4eba478300a7bf7eddd2cc2eee8557575f5c661bb80fd630b4f0360f976a902303e2b8b4fa8c759e3a648fc165be3a8fea6a13c237c03bc028148520ad7494e09bdbdaeadabc8d414ecd2aca7787428290302047c435bb50067306502301ce2b396311c2084c3fe948ed514930a1f37c08267a25df15e96b5b49473f77b92fc63aa6ecc50e9ad49ecd5de39eafe023100ea180ccc8f807d7620e3086d938151dff1a9e9ee8c4a277dd62822283af2a9a6eba94939159e9f788b638bcc6e268ff60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302c6fe11d02ba31356da277f0c63f4924b7d6cd5a40abb05bd915fcb8f7a1b7e7e45ee57b5a970210e0a2a37abe6e9adc023100a0270fb4030d5f42247e5a994b4f00b5f5d12939ccfe2e868d1a0cc5e5e9e95e2df9cb995015ff0cfbd34da1cb3244760302047c435bb50066306402300b06e32686b5d584f3c060ffa306df3f74b6c39ce1e953b48a8411a0138ed5c6ccd7d41a1d27f8ed9fd1c6d25afbff4c023060dfdbe56b2c02fe8e98819a1e4e18d3fff1a6901122d9b3b1f51215b9f2a3e1f3f11eea5e47ec2cc246e9b785312a240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310081a57553e26e5a940fe316bb15823338f36abe58587fe4873ce39bf98de9da26d4f41dbd88ce345109e5a7d2d0db209b0231009bcf9dfd9cf40e2fec8be45dbc073d73cd13e0c943adff5b6278b4c0447b84067f929301e3a0ec2e8d5a585c8b48797d0302047c435bb500683066023100e5f6672dad56845e3e82e8820839f5f47d1fc0f7543cca5365cba446ba008d2f340c6826bf994d8d9dab42eda77de10f0231009d4d845d7035e13ef80f67949185dfd0b9b9a597bdc4746a4c37916ea5fbb154cc8fc59a7f60b549a18463348f2c83450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023067767ce1ec9b1a7a44ceebbb51c56ade1a25f28670072cb6bedaa5f888014de355f736e1d92e86c145f28be97d40d908023100e98cc659b107630dd18e77522905b4cd0ff44e49df71c2bfa65456a0067a81fd5899ddc71ef3e9020e48e432a5c8953e0302047c435bb500673065023100c3faa9ceb5226cd2c4ee308a76c0b29b2f1c4bb1bc3c2c4e20f4ae19bbfccae8fbebd1a4c0bed25b00a05a6361cbcb790230430e819a6aa05806e7e426c210bd60c1cf19f4d4b035f1f64f58b4fc5879b73231f204903e6d7e647c98cf5fd4cdc1e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230432ecc2e81fc899894f987a42bbd5bbe9b2793221044398bac882e71c5eb53f0c4a7bbf9cf05991984053c226e89d5bd023100ad2226f515d5cf2884e0895bba095f4f6c01a9793352bec1eb2b005a05e237f20aafd3dbcc234093285bd6466787df5d0302047c435bb500673065023100a9b469cb48b1889e6a821eb22f332737d9ddaefda18a936bf66dd5f7e8b2c29154b35d6c21209c93876d390090f8c1cc023057fa57f9ed022663ddbb5542fa8ffc783020a0b3fb704672e4e3015172511d403c2e972ffc185b2226fec8430b327fa00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230412e3e148af85a0da7e233379dbb2d54b09ada79693d19caad0555b927a9d7400f37632b498cf6a3a04e445e6fa71aca023100b5308fdbcb3c3c8446da026f12a2e1e1e9a5b3022ed24ee8e62b2b6363de633a1a383a6007b99ad2e93cda693490f0ba0302047c435bb5006730650230333fe68d1b6af196335c26bf155e73b5475483a13e85f2168fed25193f471666e0abf5892cf07ff2340fbc33061b9b680231009b27cf647f0bffb2689e21f993ddfe1036abc202af3880734830e473337e7004d632ec7cf184df3fd8b85d85d24b662e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100eae6a685e3572a0b3ff73bdcdd3ab1cb04c1a2d1fe93cb0f9918e338afe3309317dffa966a8e47c2f56c29779e940df10230011940f0e5468b7df0de4c2accc4384c3b42c673f36546f4d50afc6e40d79259301653893239451ae112082caf832d960302047c435bb50068306602310081e83a615e1d5aeaa98a7e46c049fa77ffcb98c41fb4009c6380d8ff6efc9431e0c3c2f6ffafa3bba1029de113bf212b023100afdaea82b67f8249a9c34819864da09db6017e224528caa8874435f455d44c8a3176c79bdf1ac0f67d75178d0a5d27150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310092ee5aa810d21ef9e813bde129c5f35184349a5a2dc67f692f8d3f249ba8c336ddb50f2acf2a01a1c5b07568880c9735023100813d9f96f14780e65de20eebc6c85be5b61b18336f781ecec4d279d35b53909e4ed316a3debe06d764c4a793b46a73910302047c435bb500663064023028237b1afe7dcdf24a690e8dbc8a22af933e23424bb9c3dfc0fcd34144842b336723cc7b6b4641e6d7b8ee82b347394e02305751db1a442bd6ead9431bcac2b692b99589eb1faefaf38f5ec5360e8b34c5c12d546623cd1ad5e59d563d9fa245d0260302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302a1ba593868c783a479c771e0df3b8b8ea2afa373a59feef58bedd2b08113b9232b538d159d3de23e98d7fa70aebfa3b02305cf7842c957669cc9a20454eabebcc61a23e59b6d54424bb2a2f06ccffdca876c7e68e1d82d842dc4d43b2aa0b9c4e650302047c435bb500673065023100cab6ee1637cd94e9e4baf94c8c73006d06016a89949d779b13e364a118952821b8ea0f6e395ded275bf454b92f51ca2202307346d8f1e47b15b071ea4db8fed9188fde86d5f067ed43d37a6bf9147e2534ffaf114820604b95f44a0337a0fa56f1210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023036fc41c993943863188f149b96767d8301cb465476c850be4055988679d4ab9f00fe95a007eaf4722969dc33067ac328023100e4ae10dea205d565f7b5c117f94ece6fc70eef13fbf75aa36e43f8494d7d49b2333be408d0ce5a369028829461c666560302047c435bb500663064023038fc730837ba6c9e8086e6955fbb7d9364553ab655787575425e084ae9e039cf9b5d093f178e0cf1ac3334e03248b87c023040ec3ddf4d5df186d599057e1a0d6de2414ccad9217275fffc1ae70baf415f2407f8a52d979c26f3bb82b282759bed500302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303021b1f0f8486326eed38a83b7aabb278020db2a004507ef5c06777a6564cefd4a420c9ee730a6bc981b19440801079d0231008fb4a9b7dcd1edf8ad96b80385d602a643001f8d6323b5584bb32a5318ba9b0129e6606f368dd64c714d240e6d3c5f010302047c435bb5006730650230423dec0daae9e6eb993b2425ae35661a6d1173041e24a062941f47381a468589fbf3dbad9ea22ca5bd6e24aa48d090a4023100f7b6ff8039dd314d6c69e2350acf900fd706e640fbb9a7c4b54fe57577c438145d8f4c3ac0bbd19014739589eef0d5b00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c5eb80d35e3231d2358a77593f26183faff11a215c541e87d222d4ebeccbdc2252dd1ce9a6c8224b58a6bcbebb892623023008751b5f1b58ebae5edf38e4067869598adfe78c5676b054e87bcb5a0478cc0ee038a2ce6699b51511c89f79d22c963b0302047c435bb50066306402301a2ebf2adcb52e601002c64e2fe37829035c54cb72b30e3da70fb2d9db56ceac3841e8b307928fd0e8a5b0b24ee6290302306dc785c66d2c6bd16309f1f3d85bbb0374dd6741bec1083945df5e315e66bfb1f530d1c66080748ef7656d20520bd3f00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e57a2a980403e0c3fbf6a4cf06d5d536b30b89d7f04fbc60dcdddabe63ce98afa83e372a01901418ce35b994fd38e0a902306d6822ac257c61574b3488924335d7cd2f23684795df137c40cb4bde3a4766b1d189cf64d9e45dbc2bc69c36f74d021b0302047c435bb500673065023075dfd308ee67dfc6bf2adff835a22772f817585c68303ac87ed4aafbb0a7cf5a21d0787dc6fead807e3a984b40d62615023100df711295ebc52f56fb31f5686c340d8fc32b8e418af099506a188d4587aa26abaf403598763ac7d506ce30048c7d86090302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ff549dc5c4fab11b307cd7a261adafe67a2cf84d9da112c580b0638ce93529075eb2f99296b5108753354f4d249eba0e02306d7648492ecfa4bce2d28682573ec9690b112f965d48b2c24fce17d70076661ac2c1d5f1aa9b6c3dea2a101ea1f92b710302047c435bb500663064023011a64cfdac5ffcc2a832bdea2370330b0224a9721865da70775d9b92974461c39adc9cb9be522991718cdf5d23b673f502303989c709bb6e78d59f48336479a2aff03d40ad7f66f982f2feb1fd380cd93de71cb6c53270a9cc7502dfe45c523e83240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a0a79ffb27581f9ae545bb9c69b28c47b62002f0af5073e456ce5d79f1e6513265edff2df007edb48470552c1360ae7802306bdd5ef3c17b346b5946839770fe7e2dbf661e70c472229387b2842d4a14f1e8b8ff99a4d2dae919f01c365ee1777cb60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306dc1f1a6a69702e6851561ef69049b2be89afb1cbfaceb26428acadf0224b6a8974efa55c0e9bc76e54dd2bb3487974c023100bd444f020a0867ee3c48beaa0cbda1199393eab94b9d71b6d21292354e629ba5cb63048012b213a4277fe40caa85a4d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304a35580247413d048e34925ff7cbc4892ca6a1ec09c39ed51c9504fdfe1c1f8500d7a3288a39856f9c6458b3dd5db70902310092a6cfb8828acab6dadf9686d3528cd2e1c8a595093315d878675dc43c40d40fb104aa4581186aa9aec4432f787776570302047c435bb500663064023022cdfb417607dd03b5149b14246d66c3c4202f250f456480a6ffe7424484d6ade0a1aa67bc8a420549a2ea54dec9c1d102305d031b188bdeb542507a80c61cd43285239620eaa6758575e785e88877595f52dbdfa96075250fa4549f42a14a5e325f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023068baede1a186f14ccfe81f11412df8b51f5b79e291e6aad5cd2ea3e28574117c2f09c6ea84dc40e2414711eb82e772e5023100c3bdc78036915ffe5fb6ea975da5908724aedc2c075c9f2c425105be6fc8247494ad2fe4fef2ea7820a4e2e07cdab5490302047c435bb50066306402303744c4a73953d6b330163cdfe1ab3ae459aa0c3eeb8d79e407b45789cf1aea7c5775743070bef9590bf7d73759a35d8e02301e60b111f4413c41261bc973e408f5e0c06a9a923ad240cf228743e80f48862eec061837038483992ba4f63c2022bd640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f098c0b0b213939fb5cd5e1dab99d6a1d5ec953b8ba6e29843c2d3a4c9e130a6bb3456853e81ebcfa722e74b5ce4ab7302303b674953672bcd6ded0cc48b506cc10166dcc6241ef1dc07a1479388ab9398b7b854465dbf56637ec98027b497bb5ecd0302047c435bb500673065023100dc2119a2e710c86be67baa1b0e39fb0ea87c6229464bea5ae8501b343bb63229060f6082d896f65ad09cfe1ae64baf8a023054e57bed85762f5589bce03c0664886e4019d61940500e3d969958e10633054220db01966d143ad835a41f8750bc7b230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305e0742e8b49ab00dfd8c81afb31c26206e371871ed63a5202f1b576d8a0e7d6e3c3c921cfd1ed10569b02e78a3a5e036023100e4eb61aa4017e1345711ad9f3afa3e393d8ef86bbe4e63cd347108f7b5e60c963b39bb4126007f741a185e280ac834ca0302047c435bb500663064023061a27d71c220759165cfcf4447da1a6bf40c8638ee976cd3c4828247d92995e00be89519596568e3747276c253cd9074023004e61aee279106d2fbeb356743935a83ec08c57e9aee0fc3443adca88b9301599d283121d3d538de16fe914a9d4a0a460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cee78339a98875f6f393de536166db0f70c1528a1f1edd6cf661a60f8f70b24a6cda1befd6897e4d294d0c2b88168d1702302b17465bf544cb19b2bb9c0e6910371f6645d64b8abab7e44d77f1e8d2c1cfa1ccb97fd442d3960701d32653529ca7060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023048c520df4f23fde5758f0056af1518ee389e3dcea8e8b76e49ad3029b1ad3f0a7da533dac4fbc09944a869c4124fc6e4023023402bd0f0bff683f6f1649a66cd7ccf2ce196a80ad156c830145c44a896f260788884d08dda9002fbb73113eada01580302047c435bb500673065023100d8e154f382746a4e80ce80918f96e2597d509086e01640e194d26c01bbf378c644ffbeefb871e420d610595d1a89d038023078571b93bddba4ab1203df14213e2a008282d0f46fd7269ba0f17ad72b21a38ab811e5a4e61e963639364eb9a2965d010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008b248b12d6b751f31f5c93f0dd4d50cbf3e02e378f9e8aa087c287fe5eb8dc9830a2ae5d65113f7923608f7a7617c5ae02300c694c1a74255f97c55071cc69a2bcb984c24a6507aee7d5d7afcd92a21c989b3150ef370ae930bbd9bd1f1566b027ea0302047c435bb500673065023100e31af25012cd951f6c8e15ab7acb438f6d234b3f285b552fd19138f4207dd79fcc60dffded131936a21eea86e0e9057b0230677eb8ba89ab1667a39c0138e1ea5fa5873c09bf810d57f74353fe42f8d6d4d52bf1a5fba722f96ccc9093bd878223160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023074534bd106e6d44f04035096f2a2521f1f6a93bb0285643e0932948f8f09135f4ba00f7f96efcf8f3552d937b3ea64e702301dcfee3f8954535df0ef87cbfd8739a5bb40bd098ed44ebccd3af25ddef2221832fe92123161bbe2568338b9267abd1e0302047c435bb50067306502306e39c911098d8ff19e1efb217e34bde50eaa8121237ae96cd03cea16bd6e1322618a38c60b258b6ede60a6a37c0ff148023100cb0b897809a8bfead9763d681e9a42e37c6ab319ce896323ce27467e6f4e36a03a6f1b9662980854f61a3a6e4e064f120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008d70b44857632b8df54f274106ef310c85ceaee9a91533a5eed4b1ef89e20d96f8f5dc889c4395afe88a5c884710c41e02301d08afaa001411f585b0a4d1f714d2364c33219bc46a7a0599e42098a9617a23e493dc38d4c11c0f2a8708c7d11261e90302047c435bb500673065023100f4dc1f143219e4f895c844baa974e482729567546758c81932af0fc3a8e4a2836eade8dd07a66241b487e71820d0a7f4023014e5cd108c84a064c98b9a83a47646960036c3a0515fda563715a94bd789650028150161cb584257b135bb8260e19c180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023010cafa511b0d0ac25f6bb3cedfff0e7c3a1c01fdae9fd83489b55a129807a7d71f98b5a4a8e39b6d346cff4dc7c29c5a023100e06874643027834e9db1b6c669b9f599f41bcfce76950dcb0f96408b3df95bd4a3abbed68cfc8cb845e9d9185544bce70302047c435bb500673065023100dc87eec2b7e6411d0e9539f80037f6969543b1a82529233b406061609d00ff8ee052e9af0fcb57f19f72eecafb1ad58702304441ca7cf5291b45c48a3b6f122878d3ad16ee5f5ad8f94304c9598193ec3db2d9f09c5cdaa504d7360280c4c42913dd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304047e6972d77cc9b8bd4485dcb6d3c5445d8b4cb54a17706aebbfe6675aefc0ec568fb5d2b54cdc47a779693ebbf2d8802300b00842b5c08bc6ab50133d7c3b1a63670dab2bcb8bcd56ad4ca6c2ea81cb6a34f82041ac29646db082c69c901aedcf10302047c435bb500683066023100b05ef87db452fa8fd7bf41fafa68c4228ebb1a192196c53f0dbf6b702fdfa617d53b5e63bfe66f0dda3a984aeb57c9fd0231009c6f7f7bbaf9b2db4b0ce78121cd70a3f5a404b2a42a67d8384aec339c0e51a04efb55279d57d90161c9e3d37f7a9ce90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304210c3931a13482a984190114d491cbf5131b917234693f545a278f60747f2d610ad5e3be5d4ef6dd0c94c908b0a05ae023100b687fcd6e0d55543e3f8663f8d11220f4faff28654ac6f0817d9bad7aada969ef2bd7891ddee785b2f150b53af7005000302047c435bb50067306502301aa01ed1821a0f3cbc09dedf0d0d6cc33932e90203b2b6511bb37ca8a2e76c4f7206b785ba7108b936d04ac8f5dd9671023100aadf4557dda88d6fdde4394e7512bc553c857b0df22feb7be71bc68c976759961a27d2aee828f06ac4d121ed2988c6340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bb1c7361b5f1383250df8b0c946174df98bbd1cb95ac571292e1aa01b193701fa4222c9899e2af1ffea4d11ebe012d460230092f969bc691522d739ea9c14d63a588c23d2ac079bbbb4b0f86d3068c6c5a9703252612f774d51981b3663eb557a93f0302047c435bb500683066023100be0408a2710b4418c98cf69b4f64b60990cf0266becfd9aa6a8999808cf901e91b3b8b1955bb62a4bbcb070600959415023100f683ea1148856ee7647224751b5d2a0754d174f794e67e6ca67a37bb2488f47ee8fda7ba42288041f7e52ddbe6d5c9720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009def2ec9f66407a074a5a94cbf0e2c6b554e3c540c1013f8baa479577792c411300fc809cd49b1b4fe0032d26759d492023039eecd9fa1643c7e62bbdd4af289c0629d5b0432c95e0b28bb6ca0af0b527ea90980dc47e6e81a35bd4eabbada1f03d80302047c435bb500673065023056514dd989fc16c1ca91b941582822e08d3e362575974df9e16d0500030edfc2506fcbb33205b818b324b659ae6d91bc023100fcbbac1deff2c5e23f873bcff584690f886b9e07b684f6d3e59b843cb90618e0842c3c03280a8178a3386429cb002b040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009afec3310d316ff8a37d86045adaa503a12c44f07b45c4afc85161d336a0803b25776e6b4addb7a03247a0ea1bf24b8902301621dfbb923a36d89c0b37c7d07bd4195feae9921bd7efad9303f00264550bc709e8c02e4e09468f01e74535d32da1b40302047c435bb500683066023100826372685c016e492d7ce09099157cb4ced04677efd045ed350184babc2ca4e32d00ffbf6af6580da0ea11382f97503b023100b1632a36e9c59b73505cc72bd201b1037eb293aef9cb22f7ef6dae88cbba4b7830a29ac3e9c62cba6d623ed73af65f830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302bd832581d1ab269c23d835eabd0e29c6e909890363e61dc1d75f0436b32248fa2cc23ac69ebe54c5eb67523078a39c802310096a0a00686d48f4ddc19d8d20ac79f7560558f62cfafe9d4132bdf3fa2904fbebff783c6bca161ae3a6593ae2ec444d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d3ed93f78f194a61a590979eb5b6bdcf2e2e6baa1b23059894b65c81b407a5e0d628d083f159c6eafbc9ce3c3d9e7fcd023100a67ee7ff7b6636e3025875815247cdc28abc0b83a1bd2a8574f3ac61851d81bbcffff91d34014903f42d71e2db4813120302047c435bb500673065023100f01197a697ed08edd458c380f4e86d1b13b31a3fe4487b2604ec51598c6d485759322a4b4457ffc757880faf0e5ac06b023054ba9abdd6888d430bb0d7f22b4020581a45a70a66decccf8feee152a95a9316738a923000fe75e80dfa4318f295008f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023064758909c86e9847ac43634e89e971aa35147452d363ff84cb7cd5a0505891fc87bb412902f0b4c741975f24986fb942023100db4eed882cf1e136fd2f0013a3131b57739f880c2a85d2448fb30b10a130b77dab186db5635454491ba3f0a8a84c75960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e24b7b83412fa1b76f98cdc9dfdd954a2c5745eef503e98a80181d6470a6c0829df2417fd5911ac33324d7dd4d48297f023100ddd9ac25e78ac784f52453944bf0cebcd5c940770fe6375b6f6095c58f05795ae0278e3f4e36f080b26538a51ad60de00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023065b59cbb62b0e8e1e67873b6f93e31407cba74ede772884cd74eab9d3a484579cd7b0a7029df0b3bbed80ff50aa9bd41023100bb4671ad69d2a55faef007f0cd9541eecfaffa60c58896fab036be1c15f7bed774f7de9dbfa985d6acf3602546884d3d0302047c435bb50066306402306faf414bdb8dc156c97515ece85d5d3f40de44f6cc0e81554597527da6f0c66a815fa0828f3eb0547ac56c35d4c8a6700230222576ccd1ec20d1067e87f3b1e71ea5defdf28438d355524be7f02a02f67cb79f5d311c0b9012feb28a3821ddbfc0c20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301b973f4afa23e170f9e3d971de1037732378312620a40818b48eae1265e418f92540a83a467c11692c5d90be82b5b77802306f9750dd8bb9d2300268a71b4c6581d346ea70c9e78fc47c4474162ec170d79c5f10806b69131ceb2adaf708c3fbcffb0302047c435bb500673065023100cad5467a7b577b15099106477f7fe9ff324f3bc0e565019c3debabd5c745bf0c0c90b0c216dfbd9f3982f1aaa7cdb5fd02304591b1851cce1de26c4cd74fde3d9a18d69a3018ea4f8e273ca6d82eb65a1049a3ddf3092a9932475d84b48a21d6a7980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307127340ba1bf7ef048c8c3c7c66853120d298b4a774869641e5ff600992ca319db760319c446e2801c4889b14627c7180231008ac08039af39c56115b95ed73d7b6d84c167bae3a1c1d277818fb6a5962d7826fd5a04b83d3a134b27be16818543891e0302047c435bb50067306502303d5ee5582ef9b7e4f5b88ba203cdcc2bae068f61ebfe8e67f1efb0d4346ee93bdaa3cd36200dc12d036fbf30b44208c7023100883a0d082a88caf58562d8b5cf76aa576c2c76700e55b5d9ba7b525cc9ba5bc4feb02dc5d07eb8375841b4b83a86c6ec0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d3ab074f5e84fc35c06677aefb28732fd8ec4fbfdc749186a6e1bddeee0d566a0f2f1928865126ddebe58cb0e1d83c4702301160bdf9c58bbf7c84bc3b41c37c411254480b1bb0b0e01fb65301e0dd28f71a99357ca3804554968cd96d6811c07a100302047c435bb5006730650230178e18404bafdc6a5ffa0c9d25b99456f99e3f8973f8be7050e972c51c3d16b805ee3da3450708f0de5385f622542cc2023100a57cf446006f3d9549bbef74d9492de44354a26d403d31586086924e99b278ac583d1e7c49e7d47e0fd3369bd7097a500302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b8e7fdaa8e210c5824a25c945a48e49d0880b2a3bd13df6f72347a5c8fae4f6069cc68581bb71ec0e47a19ed2ea27c13023100d316c3d32f461f8dfb8b1c9c8c0be9641beebacb52d9fe45a0873a36baf93e5d9cbbf47b9eab2f96b669e5d7d1a855560302047c435bb500683066023100d8a6d197c913f159ba7f942c16a96cd9f4dcd5e35025014077564749b994c8107ad855363dcb6c91be26d9f5966e4e99023100e4c60996b60c7cf3087a4982c1115d2f49deffb8cbd004249b742c092b3a647542288dbffb48e5fafc7274679a3b4d260302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305572ad7613dce415fd80113448bee73bd2abaca38a3f0b328e9eb5c5144fb0a289076004b774943139b1f0405936431602301cccd1de07571c48cd58387da402784a5041b0c64ce33e585b61472bbd82aed90969ccadad42dfb0d6ac5887c2f1e5a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304686c157e5e48e9ef88df6dd86bfb2c1b4982d53f16a24a9ecf2a451533a3f447dbd6f86d6a7dacd9243bde85bbad212023100c7e64cd90bde37d8865b0f8a22db10c49890977c8ddb79de79d6d845642f3670362a89ad2790cd07c929740d967be6770302047c435bb50068306602310098a03f4b2ac1fb13aa9be1fa37b98ed8b099fe056c1faab04bea4c91b00ee16117171d0dfa818b94c5b26d3e22d63bbf023100f57adcffd494ddf722a8caa1cfb47e6a68aebf5e6e3f8876635c1763f372363905faec35d13a8bb630f5eb5dba7aadb10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301648668138f68a5f44b8248865ea4ed5c000f417ba85be171eca825b55a968d155eb8c96f353d7828ef3949b781cb3f5023100db470d4a8940399c37ab6d03cafeee40159e61579c91b23a43579f5b39db5f69cdc5e46ea99ba2e9c6e7655b34b407700302047c435bb5006730650230799151a89ea0b15eb3988c0b752ef0e55ee6d30b263f83f4176fc84b65a3c6193cc6e5ab26b72ee4adffdfa936392905023100c6626a2511f13eb0f7b4f35559cdead1eb24c057c324914ee722fe64028e0e3b64a5d2e39cfb74bbb2967bba9810baa70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a5c346bd09d28f34548c11515304465ea5d1c746cc6ccff611d6425d768bac0acf4e8fd924ca2cf498586d45c54ef1d602306864d9440429209108453865b79ece4fd51b0a74b0c45455dfda9c1f92aac6691066839a4f79fd20717740ef828571800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023035b80ff9cec6cd6098a3db096377a459f543c5fe79c89a98eac4e9e07a33fe1c1c831f7591e9f10c7bf574625bb976d2023100a4d7a1e398ee0eaad3027282eb5cba70e3a29676a28897be30bbb1b995494c265eaeae1755e7eeb7f7ff11cca27a74740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f8195cc70ede21677800dd63ae0418ee45c16c1a099cbfd3f1207ae1a51069a5224781aa7311e8ff46cd12beb58d9ce9023100aa4f06c2f9a55ee2f61cba09721233c6dbf952fe1cfab7abbfc53f37704bfa049c0c4720cb3a346b160e38250559751b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303782b9f549d32b68a9968cb2bf28233e74f67911b6b0aa0564423bf8c69cf4755cee2a0655ad126c64bec956c32ee14b023100970a02b07d408271dfb5f714bfef47c3b155b053582127ebcbb2a5d756251465400239a544a05ed0fadcc2c83148fc1a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023077eb7de472d9e36f611e486e104cbb117b2e31610939753cecc3c7ab92182065cf822badf5370b5acd4356456cdb2425023100a911280b50b7d641cd7fe28e2a209ea29a4b8f8d2e7e6c7cfd64cb911e6ebd313656bf875e31f6f9d48160ba46b0c2680302047c435bb500663064023050d98c5465101fa0d3a27d040e1ad0324c277c46935b080f2f8d0fb4bb101b28099fe14659326714f357ed0ca5cbfe40023077cc0f99fc5542976a8bfe1c0d7ef91c454c56d331e54914657d29d242df52ad1a315cc066a6cb36165d4c6d2f79f4c70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009ef1e21844c654bf140ae65420070dba97952bcae253c3631a9092208656d8db0fccce33573bfb6d88457a164bffbe0e023100cd3ee4792000ae97bec56bea60c5d0b2f5584d6fb32bfa6a8b4559ba96b6581b6646b1c367a976d101327504fb3f91730302047c435bb50066306402301bb092e980a51bec6c1783e42c3685e1ad2fc234b7672cfbd0e85e23d2f5b203d936071f40d0081e491653e98baea2b402306ef22e502ddd49043926f6e32d83b104c03b5887d34cc5479d8326ca2a5a670e7043a244f53f81b0458e6fb61639e5160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dbc1f796f366a1129b23431c6b8a0a7c70bf383b330152b4af7f9c88817e02e67559c211a9dd97d2128f6fb5c4d3ab99023100be03c23bfc7d6cd94ba1ea9b144784872e579d867570dd67254fc83072df2160c4ac115720020c293e82341ec565951f0302047c435bb500673065023100c60ab894e6ed150315c1fb863b2c961c5d17ee77f01b51ebe2e97d3aa0edaf8444d4b9eeb559bef6382dad1ccab5f54202303a4f9141b02f767d7a30e90f5a15c7288c4c9c548478f727b88c7886397a6e61003f09c41b5c1187092c36cbcb1427ec0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bc958745c5a9565649d855c7268c0ee4ee8f4660968f06319cbc80a91532f4872fe7efa6d97be08064ec44ddb7e247b70231008c2761dcd87367c0c968f796698fe46ce0122d0b7dbee5c65e17a7f9fc318a873a380c744bec159a12c64409c7bca09e0302047c435bb500683066023100f2757987359b1cda86bd6ee3abd91bc38ac50588c574db00ab745410f2436369afa08a2dea5e7f239758df558403901b023100e0b42a32687dd339ad1ea5d8efb26a914c08f09fe03ac67538945f3fcccdebddb2f37499da23d7ba6534449bf78608490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cbaf559caff6208d7c378dde5cd8a0d8b392167378f2bce7d69fed97b908e9e010b4573eed82e01308b4effeacf58382023100e17af83b8e099e62c05b1209a776743d34f0c545dcc674cbe98800b2bb6429ab82d47af224e3fa82f1f98a32dbf1dd050302047c435bb500683066023100f8d93cc380e47673f0cf36b2ee90628b6fa5c66c6360012f3b5b6abbcdf21f9c2dd28728a97dfcb25c0976ae240e9263023100cd40a38ff136eed2a38e0174315c77e1a7d11b7582ac26923af81e03e03f3daec21c948d37c2a01ace805f4f8946bb520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305f93885b7ac7a140ab973f6882bc239b58ce08fbd6e5825fb649033fce24ce5293cc2523147cf510190a390a3aca3747023056dc7876ec66346d0b34902c1370b1c583a218162f6b19524589a0fbcf875d1e71c0125ff6b32fa0bf7f96944b0f19140302047c435bb50066306402301e856093b7db92d6e49c4d6f8344645d6bf36696c65a0cd5d8fb7e81acdebbda3ce7ecd21f5287bb6219f3bee3bbefbc023075aa5d9a4cc7bd2e5afc23ca1cb027194f108e1796ac2210ec5fe1b9312854857e51a8f0a73810e02ea22fe71d71a5f10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f4fce27710443b153acebbf0a00082cc1ac28af44c8d364d1cb4c675fd12c11a74b5ab075f379ad457cda50753e1001e02300f3640f4f5df91f9f1103cf4b64b1ef754f9df3f1ab297c4f8859c63a1b4f66f4912d0def44253b8839db96cba14eeab0302047c435bb500673065023100a9c45ba98a2ed14e1b9b6b5c68dc96856692b88dcb3144f46f963c2151a3b2132b6b2dade3619119a4d5c17f4efdf5eb02307a6e666ad6de4fb6d6cd9e8eb3b22072e7411e7ccbfcc5d8e11e26081b842a7fdee2f3fbb8bdb322e89e1c11aaeda2d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023049c7712d545b99524732cdc48647031b5e15ca38b6ce34ef5791f93766f8880f266172dd12971b87870a9933f75928b3023062907375ecf0c38739bfe7f8601429e6bb922b1603d202f6800e764dc6954eab55974abad0c498ae2ac851fb80b0436e0302047c435bb50066306402307061a61a14096921dab7d4342c8311dae64033544d8247c0f2af60981e41a8fed380c75b568d656547137e44a24ec1770230435bc914b7791e8eb8e9ff51cfcb4bc5858e64fff560e6f440295cc462cda79b73d90d0632ce2532c01302685966d0b20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305d52f533e5e7492b9d2f425ba4138718c2d4373588ea5afd1a3c9dff55ac7650d77462cc3119bdbc25477f4ecd78512e023100b1f2916d356d6ecf309e76c0f896b8b218e4621b10c9a02e53898284dae7154d6cfec219f6fee1f09bb6b493d8adc17f0302047c435bb500673065023100e674a75e8bcdb88cf63a65ab464124d64c173c6aa25076df7f4fe79e3bb1afe462d96f6d29f7bd2c86c9328e7412393e02305d8923b3206bc2d7acea9e883116fcea64857883016a243921983b9a365e3cd5b0d10bf667497646d280eebc54a8120e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100adba498fc0b4c3c3f10dff7b96d451340128f4cdaa94f5258496a4dfcf6d5c3bd7d2d2c199f8c4e1148fc2d71f4ed4be023100d6db6734a418d8b7f290fcaec53361358b707c56107e4ffe2ac0ced1a1ade4e80a1e029b33697baf93f70ee2daded7320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cf638dcebb09bef8375bcf4f39a9e38d82f9de89bb5b301371585577e8d217b182befccb7961fd6a69c3b0f118f3d45702302c63a9a14ea7a5d5a33a0c3c9b2abea2a17694cf9c7cc1e5abe4b0308b9a465543df0ad463f6e136b52ca50c95e8e9f90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c464ad20bdffe7321a40bfea85c5ed23bb1980f40ba9ad839e43ea2ec879129711fd3a7930eb0c97954d99df44076d88023100fbdc3af68da51c0a0082f088f5230d0d2ea74c8828b38a7ef8d9b87b27a3f853838a942e9832aa4b381eea5813b9e0f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023001b51fdf7847627aba6171d7a37271f90adb65ba1d0ad99f64e5eabc3fffed97c6dc76248990903fd45009ac0aafb39302302e6617253e75396176606bd9a9d009f4503d28130d76668f4b6def1cd90a373fc1db049d6a5ab240da9919cd7be4947e0302047c435bb50066306402302b5e533ecb0a405ef290c584c18bce2ebf20eca0b2c938250e3182fc3ab8793fd6e6b3b09b13bb1b5010fccd98ab255302307e077cc531083cb280d9d6917c4aaf264d28f46682f242e742a567a0e74528e593bc5920f276e1ab4d0b3fe749be5b770302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300cabf5c62b6e26c28bae6fe3444fc91d1092a034dd179e18544a7073c44aaaa2545794de4795bcc1624b6e80c0f258a5023100e639f8ed39cd17814ddb3dea85bb38c4e14a32791655d352e3767e7360ff9c87df1fc6e165c007e477db2ef3c7eba1970302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fbde1f8e9ea288d2ce0216eb41100aa26e053a2c83516b7e4f2a57f83a17819fe7efe766f53f95595aff59162f9f5adf023062d3a7a1475058696c593a8f88c87328fbd0b5982a8676cfbb6773cdc0558b21aaf7a89db2a3644c8d6c0d04f52a31670302047c435bb500673065023100a047a0f8a8bcba6e2deff40006383ad48ddde7038300eac3ea8e07f0371586e6de673f3d9df0e78979e6fdd50a0e9a580230170d4d80d9504a0e28a6bae2febcd042011554a96589fb9663ba3610d69f73747457d9b42be6886deb8ef61a5ee51c390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100847b1b1b0d2c0cb9c5d19f967020ed36f0eb3ed64aed7e5bd810545c3ad5805a2ec1b8d4f92e160c8c8848e28c0139f4023100ce2dcc55e96997bc30dd6e1a4ac92d01b27703a23a0b3e1c918cd57411fcc3aad92603ee868a2fa17a20519a2ab516500302047c435bb5006630640230782ccec1648f832eeba2f694cecee69541e741393417e0266e2f99e020f139cc21274729864744a53d8613295307fa78023065a6b0a1669ce2ee5786f6815b521a2f5476a43e38ae9781f079157f7afa77a78ad394c0d5cc847eef69d248f6debb340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bfec4b00af5ea02e04110bf16d9bbb527f36aadb1a72da9e389ef2d83fc03889ee6974c881f38da3f3fdb800db99c2be02304535827ec1b83006cca402fc0ca3a844ceb6b74b9f59cbe69295c2b5ed9def9a5e6bb1f9e50f731554244d87ee1f1abe0302047c435bb50067306502306d91d300991965626569cbab6c11c47d11d58952ee644cacd33d4c9864ebdb8d76e60feb0791455f03600795de8d893a023100a83a2ff31bce74b0a2de9faf586df39b3be1a0b49dbddeb632b78c00cee5c5f3a12b809215a48c1f1cbe2b20bfc29c6c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304569372a2e7c9c9990256efd73d1bd5756a692f6b3a44ddcddb74da5ac05068f383dad9277b8d1f609daf9fa49b391f5023069a023d427584fc1c38d6d8bac00e3f21de55708fde82c38c4a98c37837308d4abca098db20f155c85e936eeadd0d0ac0302047c435bb500683066023100d5ba4f58d7c401939eaf1da67553695a9c7344526664374b88db75278f3b6befbfe28599dbbc8ba7c6f0836111851b35023100a866e7177491ee976295f0a7e19c62e76be4a06a323ad5e3396434b76e717390bbcbfc5cb5043f04cbbefd7e5e6ec35e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023030aacbf1981233d7847ea01cd35f1d14b063f738c61b1b09055adbad6ff2e8953f287be96362c30558596ed63c3529df02301793365b910cce48d5a02cb48a54aab4fd216fe886e7d47ba3e4ca7ab814e562d3374445dd6848cfc9e7ac4f59c2f1dc0302047c435bb500673065023100caaba93546d87dfc0cb107c5fefb81074b5622cce624cd76679f0f9b2c818aa37db80a97e4afb169cb142a27d4fa556a023023d32bc06411c28efe3cc1c185e42b4c361567e421f6f61a3c022e0c614a1ba27ffb40834685f7de4fe327fcfa9562100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fe23ac9c2bacb749683f97a0857590cd0befff6003f6e6014ec46eeb1f71afb94f2f394c77748eeec4a333ed6d0166e902300a52aee5f71ef14d1b145fe36222faf77af8e88439444c0b13bcc4ff5f6aa354f3b8847d74c3a9210720a64771c0e1a20302047c435bb50066306402300cd2d84044aee119646827499773458cdd48191d245dbbef6c9550f2d5e2a91e0959886891b293e0c6ee8f771434e343023050e8d5e148a55e5a27f9370af38974933059a2448543d8c05a944251de840e84699e19cc03a6c7ac219d5446a251b5110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bd1cb4aafcf0e49c3bc83110f1ea3c6780da62a659d01148ef4425db39049c6f636909bf37853ef8b51a44dfe86cba4002306ed98518affc7dd596d4966db4959a469e9c75ce174c15645a8bb8150741bf5a6c4ceb60cb39fe147f5329daebcae82a0302047c435bb500673065023054abc5e8dc47415676d756067266f13a30a3d6e7acc39b704d58e44f9def52f71f58db66f7f9f8537e8c3f71d4708cc4023100c1ba7114fdeed37cced7c9ec92d36ee63c83c1e00dea7f931db111a7686638a383092a0678f2f6ac7b5dad4127e64e480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307618d3322dd4abe5e97fe83553dbe55da40a426381c255805c9cdb3eb2de5424e7490d120ee7c40d95b73124f5dcfc32023100ec1fa707652d7033b320022b5aa6dff9c0834fa2d573a7d659cef31bbb169cb7a9a1543cdb9b2df22da35cf4d35c25630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c8c5942cbf2b1457e3621b24bb3116f4b9b5b2c249ecdf47e55abae83455d3f9e8b1f8141416548d43f19692efb1b5470231009244698df756d6dd7da459cb4710637317e1ac0470739cfdb8602cc3aa317b573068cb6e2a26c008c22523a9f54699280302047c435bb500683066023100d4c8909563ecb8b4d8895204245dd2e142537f9949d24bfdadf6b0d6eacff53c72418925a7e43319c8f90ee0b2988559023100a5984c3c1ecc0b3217cd96bca444c0e0a6f35f0c7c23b214058391e5525a3bc686c66ec480269e2f32501bfddf03d8460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100847d4b969fb678573af713445bb16df0c9b2a4f469b20faf1e182aaa8f4690418d9b55d684438513271797324cd91e3302307b4563195e60e5125a9333f7756e3b13a6d045c54bc9cc5d7eb2a9aa150abade7e4ba94a5a88fb90a322e5c67574ec250302047c435bb50066306402306674f17bede6e3440b364fe877eb0e6415a8874b6898eecdd5639aec6218f2d5328ba8170f63502f971eb342b18d770f023068866364d39ea2db1c267a8ce208020b9abae7523140c60d3bf9cf2902f1de68d44e2e97c939345d64ee7c95dcc5c0dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100928c5f36a17b0d6025f9ed76347525b079887fc51e0d17eadbde40e4d4e4d2c76fa2bc665ca13f7589ea1e9884236a7e023058d800870a27cef5de933f2b6846865742c7072945875ff43019420ab2f6b5e33616d3a654687b5d52db93edb6b7022a0302047c435bb500673065023100e2874213f7afc1ffb9552e56f74dd8a8d14d8579c74d7065f33337c07c03c4d33aeab02db649b66cb1df4a37147d1ac302304710a43375e5e7022bbfc1bd28b323076cdf7aab5df662ab21657949631a5202b79821bead6f20ac7a56444f1c813ec50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302b7d303c2cfde191a8a1c65aee4aa0bc4d80469c9475a1030b697aa32b999d2a6a4fb4f5501dd09b5c464ceb345312c6023100a38f1654c4ade3e56b309ee13eace7ec01b91562cff74f91eb9b2a8f33ffe3ab931080119dbed54aaa6996e9fd86891e0302047c435bb500673065023040d915653b4c2204ee051ad12eb88fd46f5dd95ee8fe55097d4c058335147cdac27c99b153604eedfab68cd55474a409023100afda8fff1734a27ab45e57ca90bad5b9e0a348b40386ea46c6208758d4695acbcd9781dceec073a77fc21f8039ef65e70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c13a6938d3867b41a5aaf1cf517b1cd3f0b7d225fa253505a643d24215fdd39ec61054727de8474d509a3ff91178926502302ffec8819c47c0ff0e3efcdfe0efd4b00b731eb4fdcba4ad7c1d197df57eaa8791d1a2b2cfe12225a0c91d921048ece20302047c435bb5006630640230058eb64d4f6bbcb69091e78f4432980c45cab85858f679cbec9bf40c896fcc0b28e9f2a969b0a4b0d9005533abc1ddf8023040f2041363b1cf203475edd6f1fbfff85f5bdb6bebf1ba885dbee4c6daeb2ae9154a2ccd9000ecb2d4d1202430c494460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023007de6b682ddb5a259e14aae3050962f54031e53ca9616edfe2253f97fcbda3697f58be4a48842b511475f8fa74d46296023052320c237665b925d95504f6eccd7d90ff74e9e6ab0b4047ee92c18a4b67bbe836d462d1a97d13fa04d76e1b0afe82a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009a21867e3ad164737cc9e828bac057d3457409eea9d5e84aac04010919f56b7aa0204d7eba2039ec24217187451d4cec02307fd5712d3238973bb77617f90c29478da80b50f3f31a5beee5895a92aaf713f0d57816d848f4e7fec38d50dd71859e4d0302047c435bb500673065023100e78b1595e3d8db7fc294cb062ba021e3f68c938c3c6664059c8eb522659b818bbb8b7a1c11615c9bf0d33539e77d5d060230779aeef9f845da0d1f5eeb92a288fb4783a58b25ea809253998cc4fb07a9f813cc3c2375a4672ae03ef6c0681bd886e30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b448779aaad99d8cd9b09dec9aae94e642caee774a0a167299bbc267246d29081cb4ebcd6dac9db13bf0d7d8125c95e7023100dce1af2941d4a6c164635d27e0de81036ddea4aaa0680700523360bf68990c52de6fbcc1c43899ef7edc37551dd05efe0302047c435bb50067306502303f2f7784acbb688802b798f861453cadf026aef9ce34773cd33d78446b61af62b12189ba9b2614fb18025b4fdbc4b603023100b731535fd310b3c5d48d255f25239550ae2da720eeaf9da6de11e40ad0e326fd70544a8cdbf2fa76c5ecb1fba61785c10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230629c4053d7621432b95ac7db1db4709446b440de6c75f84a7159c55104edde8fe07a0571453a783c4547d94b1c2ff75502303b9a89faa87f87c4a47971d14646e0c41161060cac674115f2c3b2fc5ebd33061cacb7998801bf988cb243364b078cc80302047c435bb5006830660231009f507852ad96bc843d0ca7e99722fc8f8143f5729bab79f937b3906495a2cb8390c002e2f273953ff4e98a33e0f6228d023100e0ba3cc3ff45174becd542e8ff39f30fd156b5b421c9854ac9c9b58ca0101df1bfc46974bfeeba08dcabab703649cff60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a66667c73345360bd766cdd6d89434c27cdbf1db6228684fb0f6fac4803fe63b16a569bf695d1d622eb94947ae9890f1023100a0438cdb4b69700d5677f938dc5af25784419a50687789d116c4bbd1a66086bc699e8ebf9126ba601eb7112162d0da470302047c435bb500673065023100a6b8c7ea444d11ada699ba26984e82073f9f7bd5930930f72dfc2361f954e760060a0e5bc8ee6d2a8bf94f39a537edfb023047f1a8365e900f4654925bfa53d32d53087501f89f8f32cde77c8d37cbdf75d9cbbc8b0958765995a7c92ab74d9cc5740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230794ca973b59a95c39f937d1046ed69968326c8f085093ca6ef5835433596595f4c26bae05c17300bd9942bf0dea070e602304a773650382ada03c7d81012b0d31008ab3c19d18d2cc73146ce4350773ffc650a8855fa72dfeebac2bf75a040bb12e90302047c435bb5006630640230429b95503c98d6cd1ddece2100f7a604800b7c421791ef47f00b13d04e7c52e8dd4a60613af116fc00a8fd8bc33c68b7023056f77a6aba0f5db8311b989665e1f31651467a8139d9e426b282daf0bcd25bbc594ff57180be58706e02cf5fa42c01ae0302047c435bb50067306502302c99dbeb5fedc09fa8a57d89a9ce5a93dce1ae4dd15c2bc26ecbfa34afd3bc2558139ff2660e8aadac53f650820a95f3023100f8d19d37578aa0d8279588810c90118c4038dcd4820b5f1626be08248c1f3ddf9401c9ed5265807b5bbad1c4c6e574640302047c435bb5006830660231008a7f3143481b05f155229ee770e5e8d59a697e89ea706769d1f973316699bb6c8ad6308c1d766fb005219bdbe91652cb023100fe56b4095324ca3f7958f8fe55391a9101bfb363d9c180961e1f07b92e8d33aafae11190e727dad1872d0248ed39c01c0302047c435bb500673065023100b9de6d837c1b966bdca85da0843738ddaaaaf5e5022a2365844977033bd0ff8194d83c2f97daa7b1fac5656306d1163c02303890886e018e8b3d6871a28432004758f85ad25b11bb71c9f65d743da07858f718dac32704a11476a576fb374da3eac30302047c435bb500683066023100ba43a3a6272dace7ed8b326d25e55ec9979fc4118ffd6f959d1d6512342d0d786a08f0736ea8a15947f9fac297464ff5023100f45bc52b258be435688374611e3b95fa780a9be253fe448a601c77b5e9871d70fbccd55d70aa25de536cbd9371f00ddd0302047c435bb500663064023044c353544f40c1439ad5de1c579cdff3e45c0dabf7fc862a1bec5f1a7ab8525f8ba7cbfcb8c418561c848c294e1ecf21023034e7d051fdb3c91b486de0cfbe776addf6ec2091cfc9c880d857dd6c4fc8eb6de96a269cff7bf4d3745ec9e7bb1985950302047c435bb500683066023100952a6a923addc0e8647065439695331b95ae37877e16efe1a4ec79671288dd9c5506020c9bd77cdb717681a6b12fcd7f023100938ae5668af76b6838b0cf0a39a8f5c5866491c1782ed1c978c339dcd6dd82e083947db1096b3c54c9d126778048feb50302047c435bb500683066023100869ebd715ef85ce0855aa745fa286dbcf7f8f9ba0e253478089645ed191b1efed95a38f1c51de0bb2b507cb63e705919023100eb5bdafeab6956a48087566c3c5b94b7928554a5afe42f349e7e83c894219e5836439f72cdfbe7639064afa52df902290302047c435bb500673065023100f30ebb5cff939b94cbd4fc3816dd23521178b353daec967927b7286d6c364c241b403e9720f92f3c5506de1a899de24a0230140ea75a7025253f218cd2699d27a07e75ec487593b12515a0e5af5a627d6e8e677c834dbbe300f8f5790496d7d7383a0302047c435bb50066306402305ce96f06f43679eddb3afb3aaa6a918870f9525e6deca0f5466931d3232907c0ddb7d7297d3c0e68a0f3bcabe7542fa902306b1a98973c847ead00be34fa14522c4b80e9424308c398e3f497a1fa2a019ba556eec6513bdae4b811447384fc249a820302047c435bb50066306402301dbd9943281d050535310e73d8dd190332143b9c91a61fabef96b170673a7fffd43377a08ba4c36d54af290480cb7ce00230103db2e9e39af7003e97b1e3ff956dac7ee7c46d44981505867a083b074df63b31bc09fa2dfc981c234bfb511c9b42e90302047c435bb50067306502304ef1d38980bd0fea7bb629fb593cb55785dd7376a66120022451073859d652d18360b62b2a7711c61deb84506ceb41a6023100af0ef4803c5fb403473b77fd7f4449f6848a2416d609e923a6619b9f018accec5ad3a5b8c19f8928c14c1a2fe4506d600302047c435bb500683066023100c0e9aa6a123a9df2584d2d48c0b5293c738d9488836bee08132719821cb796d3f8b7331023cd121a4ed36a64358561bc023100af8eda1799c5c7789c0d537db17d72923abd1db1b117296bad85f92e171b26f67b08a992c37608eccd7593e7cbbdff6a0302047c435bb50067306502300d0368eb86edbfd326cb2181e85bdc909f33452a02a73438f90d9112df76407d1c0bdfe4058b35e36c3aba2c8e7c002b02310092c77531ada9d7059cccc7c1fe71408682aaaa4bfdd3ce89fdfd4a6b7cdcd2dc917cbcd602ef4972ec798cfcd42bd6d40302047c435bb5006730650231008852a27366e34344c6a4ff659fd8f5e0a2b43c87cc9eebed73a6a436ac849936a7aacf7ca6e1e6b376a2c777c58ed4d102305099933ce6af6a21447292476a8b54785ce00cd88ad4334eeb0f0ef53503a15979b2ee2b0a113b184aeb8109096332540302047c435bb50066306402305d527752f57c581938dd54e8ae51e039b3b6351c3a275620590fd1101ba7121195b2ae781fed2c514be8a75d938b77fb02304f37ff538b7f86dd52f489bfaabf445d005cac8117bb9a4abb41fcfdbc82b1ea1eaffe8e3a5536e32535d83a73a6bb230302047c435bb50066306402302946be331953df849bd524e2163548c8ca1d34bc9ad0f0103ad1b0b83d940886d14a9ccc83043af918b9843be46a1d2302306b91279361ca78922497ef681889c8f3fed226203c051dcc6a0681869243e3e4b16457a4f42ebef52dbacf61c504619f0302047c435bb50067306502306876b7333ad769895519ec0dbf6dda1d7f31417b115567865b6f6683c18869c03ebc908940533bba3643cb3dd1d3e2b8023100fee382958544b6ebe8b98313dd3cf8c56cc982e119e80d9c4f10e0dfe935488ffc4d0094a40cf32806437a6a8895a9b00302047c435bb50066306402303b70a5e8378a84143057a7e243452edfef71a818a4794ae9ea521b02cf1c79b03f528c1dd7bdf3fdeff7833104f5619502302036b2099d7997e876f764eeb4308aa867cce5a7a141be33df1d625e06b68d4904203bbc94929072105af02d1624a6560302047c435bb50067306502301ed22c6307bb87c96289b6e5cbe318d2a0e737d4fa3b51b035a65b18f3533cc20964acb0543b845c3951cf0812746516023100ac1f03acecc183131a5583a6ad72a7f7351f14b00be8117af05b8008e6280cd1b9c8cb7107748ff773af10a7afe640c20302047c435bb5006730650231009d89a8ae990a1027b3d718716a0c4f434f8621b7d200df9b13f7cbd3ed62d8172041e59488d857f7ab786b99e6b2e2ed02302c4efc342bd548be857f35d8c0564030687295c3d06dcf53b4f5b992be64641a3cb50ccbe72b7264e7d553fc7eb8ca630302047c435bb5006830660231009c56782fea745628777640a4a6c8d6fd36a873c96b1c6929e61096a04aba07277e1835df98c21b4403ea61195c4c69fd023100f1b855aaa9412782904c5aa6a5247391b7dd0cecce0bc40792562bb045c7f11cb64644e7b3efc165ebf0776a940e1ddd0302047c435bb5006730650231008782c501e2392112ab29df2d898ff26a580d67c1b9d0727bdb29d4be8c8ac4b2bdbac7954cada0ef89135ba527c3ac6d0230554acd8a84c23d5a23ce48117944ed9cb48a09a95cc3be0019f72053ede62ef119a33585fbaa776eb32dcdd8a873d8610302047c435bb500683066023100ab9e43d846bb589984af2a15bea9bb6fd92b41e7647875cd34bd895ac6a30114b06b21aef4e91df43347b7148a62e8e002310099f4339826f8842899e321695843f4c6b6f0745f6c03b1a58140a1632ca6542671c43101148703f3cc6482b375333a760302047c435bb500673065023100c48cfadd39b7520335b1c125b6d2cd27fb7ed4348af3d8bb8b54e8d124f8ac95ee483238ca55211272b116c5fd365f4702306ef53d23515cea338b636c3dbac032a4edaeae85c3f333128de831ab473c816173903239e851a3f37d748177262a36440302047c435bb500673065023050334e2cc9e8a419f34c0a6c1d00ea5aa7533ac306c1004e3bda966030a6250bee2cf28bb88bff26338b168588026aaa02310086d480165dbe142b2641d96e93e154d2e410bc1e47540d9835fa5a07252df919b9af5f40fbe5c43562771921f699c51a0302047c435bb500673065023100b8ed0ef62a029b76eb804ff06a2a709088daedd5845f0e6b3135f2860517a71f1480519e1af6bc81cf48f3c6d75ae63c0230105373ff8f6c82d91ae7e80a6b499eea0b50e6a89cd1d1c28d45f86942e042f76a2a0bac5abd9271c2ac42f58632baea0302047c435bb500663064023100afaf533f4edcd0971cea2926b9ee9ef62d00f6b1ff11d5a54f48b9db1f6c30d05eac19035aea8ae4fe13aa2d67016ce2022f51eb976f6c1fe7ab3fc52169b150b5afb3e50e090425a82eff2015ac74c4eb96fe60abf7dd6f5814668bc2cdb09e630302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b89cd07d6fa96017682c04aa8d2c84658d95f0a7719176495287e759d7ff06de33754ddf432d3a27b09890a5442a287f023100bc6762d9a9f88ce82badd0f7e0016745ad05b6f84ed5ac74a205053f5dd2b123c5f08292d0e66f10b89c985ec2c98d570302047c435bb500663064023011598ad532aa7b91499f60837d0e29ed530223c43c8d6f795b8c1cdd82c0548742dfb8960bf7667e10068f80595328ab02300f632df0989ab4ef4221ef3e6abeb917643fcd5ec8f9b5481a146539d803c6e0d279d1e79196dde5c3fe2c7b2e56265d0302047c435bb5006630640230563b1599dc012c3d479479ea77b095fbd673149f21c1be792381bfabbfb13c107dff98026a8348c285bdfa81dd8993b302305f264da15fc7c8191d69b255880b73f8f7d87ce0312cf9fd2e8501d5d2bcc9233759b6e8e3ee0d9fca270d140b56ec300302047c435bb50067306502302ed4ca149431ab6455d1ae04cfa949767c46a697cec5954064bbcd5f9e8dbe5671760fc6ab9f6e47801a5f80dfd1463c023100d48af17f5ac9820bbbf79d75749368fc9523f2c5ebe84450ec6d475d9015639359d62f250e77c69d672528b5bb19aea50302047c435bb500663064023068a0008f6d19cc61685bc2bdd0fc541986ef420fe44bef44fdbc68b66ad9862e0a0d5ee714836319ddfea392307434690230474d771ce5350d9ef360664cb0ac0dd0aca9fc4c2dad049ebb2d802fc80e069badfdd24f7ec43de691232610eabd6cec0302047c435bb5006630640230710593e934c37dc56447eff0ea0a4295f5f5b0fd3613fdfd278704cbe9ec8a8232a9d4299bd09f002c048f8877277a2302307825da232573f9abc406f44d7c9b3e69c13dea6abcd9f53a17aefa199202dca9c9ca59feb575fe805fc0d6f01ac0cd3c0302047c435bb500673065023100ea070c20c8e7714d10a87d0aa62e9fb4d0b4005fb53e90ad601f4de8b913c64c5191622f9bc0b1948cc79baf7b5db2e2023012cc57e1106b5c9ee6840cad445ea15e303481feb93cbda85ec3b514d0b9c6e12201707512137b312bab2e94b12d5ac10302047c435bb500683066023100bebedcdc3e10d2bdefa150dfb1281737025d3b7e1d84f4c02b129bb8fccdd1a0d0ec6d044240a24acf1badb62884d462023100f6fda16f4d6c6fdd95e370336196b255a207c1893e22e57b8ec260670948cc5150957767a0c98aa59b33ca1bf0c49e480302047c435bb500673065023100f2423616360af12d6e4ae24afa90a36243150ac22cb84a76e060040a6cd328ad8f26a2bf5fc5519809cd3fdf14c0eae9023048f84a433e827568c49241b7b019f2a9ba6fd723f00a2bb655b07186562be9872bc91f6a7972f310d111b8794a2807c00302047c435bb50067306502310098520a3c8e9168dc81831e33826b18c39ac4d6253e69572c724586237b543c37923523edd0a337e91047e27dd7df018002305713286768557782f709813d221b197e68affc7e3ca3a9383101db96bc99a07409eb11be379973aae8a1440600b5c45c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230089808b1c71d35028b105a9e742eb61c1565381063785a88c857f607fbeac108a360700e409d46fbc345abb87868bfcd023100a822e06ae2457d76c0bf7807319eb048b7f1568baa682eed0e3eae0e9cafa67ba5c811b14e73f86dbc648a3aebc4a5f40302047c435bb50067306502303ca0a28bb969d1c067514abd4056343e6812c700e52a7c10fb5795875bb35d10895e649d0802a1fdd603e83406aebea5023100ba6f2e35422b8fd211cb9a90d3cdecb35b94ec1b6a6b88d2f74d2571fb10b81585fcb8dc0f5d920732aba67f8760ed740302047c435bb5006730650231008073105641375d89e684441f6d79089e658097080d9db35a33f4ed7a6d9bca63c5646ffdcd2fbfb857ff370ba2f5acd10230485a54226a074ab6c7e4e4fa4c554f59d96528969635ccf9028382c85ad2b0f3806cc277669f36ddbd69c816a6c68ea40302047c435bb5006830660231009a2770dbcc391847d227ee6039f72a9ef8e798f0c50abb523d660a7bbfaebf91027041f989fc695defeb22b8cd59e071023100f2a2ca66824077ce42bfed0b73293cb7bb7da134dee0732421adeac74261db06e3a73676f1c77f9c88a49571526172750302047c435bb500673065023100c0e57d536570a5d8c7b3e2e30c6ff7864478cac92f3242cd7a1d0c14e26fa2e7e3846136d843660bc446a4cf979ea3f00230077008eefb5bdd2e4585b406dffc5bbbb267aaf77169f895399b106b4f02c00cb1200f4c5ebb5407494f714faa66f6240302047c435bb500673065023074d3479683df4b233c1e6002f4d7e029b27382d4fdd834c128210613640a22305e49310890f3ad296c63d32a9ba96f2b023100d2eb51ab5c6c27d8ef64cc474df07976ca1f9a9a96fc03b5550bcc0ef4feaef4a0ca912f29b17c59890d9721b0ed72c70302047c435bb500683066023100d78048b92f28f612ef03a9243a313473fec50ec4e961dbe566d21cd5169e395e389f5b6000e73db23d5115ad3c849e320231009f0ebe941c77cd258bd8e52e30fc8e14a35bf4d7b2a7aee5d802c25f1f47a0d74cb0108f18ee4da820fdce577d2a71130302047c435bb50066306402301ec829a143c35f9ccb3ab95384b596298a2644dde8efd8b34163bfcee3e7cd66e152b115081e849ea62ea92a87f4d2f9023050ded61491f3cd14226d59dde142d07fa371c240d96b3715a0132246fa3236af501a5bc42bfae90950b14f3d041c67140302047c435bb500673065023100de06978ed7c5ccde24a5c0f192ee8ce1f3658f6e68e4d9bd079e3f3d259d140f55f11a118386e9c02b9bd153a27cd1a20230431295f8bdfe955ef513f911974eb68fddf1cca253d3bcc424b58530b624296dde6fd4a910b74267ae6467df6a67811b0302047c435bb500673065023100a8c136f61100220f6561f2bc4a32925dc1f0dbc98bbc33218e47d8aaf2860cf71ee431ef1fbc3c2a7f633a7f9f71972e02304fdaa331d21fc2083d3c115ed7bd6e92709e09c40bc064b9a2497899379ec00b3511ff46c139aeba2988c449da0a7c190302047c435bb50067306502310098ebb21ae0eadcc4ee69301576cdc0f8180e7dde098f396b260789e0dc2b33dc5fb0932230dcdfc048a3d1bf559ec76302305d11a28d48700a25d0bc44c69ca35d64e4c958dd77d01edf461cb386239acdccd851c673ec029f18ba5740ee02be7bc40302047c435bb500683066023100d8a9c33c7f0eef55ddcef742d1d5d8c7aeeded8c59060af12ce638195402d369c7ad046307762421c13ba255db2562fd023100b351b628f28635cea9e94be4f5359a406d2a992676e9613c667932405336acb12a07302530f9d478f10e3d2c0388fe7e0302047c435bb50066306402304c918002526d9c8fa8ddb6d1b188fba21dbb3ffc8e5af49cde17e68cfa6882d17ce9f2c0266ed072e9b81c3e24b95bad02302cd33e81c759144f7bac09314c190458833d27b81c4e8026c6c81379c04e11eb41087621e7749a117a01f946e944c1560302047c435bb500663064023040be3b2cbaac5158c66da73375225b3ce75f697061f1325fc868279ad71ed5a22432699d16594c359544cc6d0949981b02307fbefee1530729a848738b04fe6ae4ed97a38a7854cc19ebb41e098174fb37feb494242f3d92decc056ca73ad074f9780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306bb7be907ab6b608bf8e29920ddd8a381e24e0553b7f7dfcf9517169677b41cd58d6c7ec67b443972cb035b6779a54ee023100be5fd35aecc542ffa8a974dd9888ef430922be9fe2422ace45c118c3e3d3187ea89b5c5d5986f5b9e9091645f86c11da0302047c435bb500673065023100aae9ce8c250104651d60783f5851ba10afda0203069e5c3440bf6c17a7aae3cba54eba5774a12eecb7d9af25224df85002301c8b8c29b97d1ff3aa99ab0b6d32a7d686722b386e9f6ff5bbc413f66a7841decf09f9dadc2583dbe4193b241531ab330302047c435bb50067306502307d85f1d7830f0ffa7b1d5c0ded4d351df16fd3ecfd7b4bdbfa1bd7705e94d5cc24e44bafab3dd8e69811e6900a8e0dba023100d66ff51f8ba068835410dad7c121b05d4165e5713e00cae26443cf63d6ea8e0340e3c0c8bfef60106599f4f34b6077d60302047c435bb500673065023100b986e6b6ef9c51886e632a1eb8ca14f4f9b41b9cd7ad10b9cf04d35b07392433e2c783d7d51320dcb43578bd9267600b0230571385b9edb7293bab3e3e59578a0b88e09ec90c9c3778b101752f7f477388f2b96b3c5fad10e6665f9883f2fc9e48a50302047c435bb500673065023024abd9d1356be4a69bcb6e4a1e1910d7576d1a36ac7bc076325040691cd976c014fd5e089116eb3064325bc9c7bd8070023100c9a65c6894aeb060aa3a395f4c519791d6f4c74a2f6ceeb6174ba1dbe09e65310e5f5e0a7751b93a8bcc215214e2cdac0302047c435bb500683066023100e151cb34138f84d305c8f1ec46ecd511b37beb333eec9c98575611fa4827ea5dd85df287fc7ad625cd2fbca1f6f8f4fc023100d0fcd3f65e55601d3c2ff57b02d98f103514cd7966ef30d7dcb29fe5a45e0458c3bea7b043e1c549334388b8f0d12b9e0302047c435bb500673065023100c887d79eae834657473648823b9d014257d06c430853a12a2fdc0b4886ce7dd748bb111efffd72e30aa7b8394722fccf02305d96eccab1de2c1930386d30b81676c3c192b8ce4b970216375106fd6d1d83aa2053d5aa67c679bc43d886bd5abccd210302047c435bb5006630640230534e555634f1b018e77801cb37b13aca8cc4297689b66ead61382d2589a25d5973ca55805ca294b6d31296ddd6a371580230055f9dda51a043fce809868283c2daa1dcf26e2145fd5c5d2ca351879e236e3286d61df8b3ef6d0aab907b4a6f84371b0302047c435bb50066306402306cd76b88f739d59b2e5f7803c3e601e79de896eb633cbce60787133904dee02ac1c12cb6ad3d52d3d05080545be862ae023040cd7a0eeeed80fda834da82a515eef1a39038f2a5c7689320429b7272a6e00c80d846ac879da4b0c2dbfaf0eca2dff50302047c435bb50067306502305ee4cbd26a86eba299fcc88639513e0c45e79df1cafabc00af66b26f65ce4a108181e7dfe33c3038c2ee16995112796b023100cad1e2a28b5df0d7f82219b9280699eb38baf46b12b9e19028e94464e0159352a3d18ec550511f6ebd9d8bd0ea64bc7a0302047c435bb50066306402303c855c8b56e8c635520cb2e54687b024c8943f7600ba4a51f1badc6e3695aad409fbf158687bbbe253838037531613a302304c4dd2ab3e78aeade025b908418689d2db2a94a5e5682b157fd49162b833c52cd160c93042c0a67a3c802b34375f83120302047c435bb500673065023100d04100461213796646cea3485c4d04079ddfa6c78b15cf72b0db5af367e86d9e4f364a6f62b690bf6e2e552c7608306a023025e28f3c57f1ecfaeced3c00ef413bf26a2487fdae30115fdeb0b3364e3181b356e0cdb2702a682e0e838e743e5686380302047c435bb50066306402307278c4d6856ef067385256e2ae82f14db62bb649f6abf0ae2779b7ee4601c1497382b7f23711d4963741507f705a6a290230066471ed3b2467e59059597389ad48148a2cfec5106b8f0bb525cc65664826d918fb2d3242baf85a521933a6b4f929a00302047c435bb500683066023100cc503ff99a1279017e8ca6525f4b289e0c383ba69bafb43c99f4ad3cbf9e80873f46d7273bc399fbcbbf4ecb40ea06e5023100aad8075c73c20ca46df3b5082c2e87a0633fbe90687f35f10d3af90f16cb43f4357c3198459ad87f010b5b31912ae1e40302047c435bb5006830660231008264d0ac57835461d54acbe6b04f1376c09ae7ea022161e01a6349c50fb6d303449c9c82c9fb4f2026c61f591a57a8ab023100c08bdfd853c66154c6f8f80d0ba719121c5cd793204fb7110b4019bdca3a1ee1917570eba2533c6c5ea26f9ef99fa4970302047c435bb500673065023100dee410a397cc68ea3760f31e9c6ce617bfadf8fc6702d9f0401d07658e3680c10e9adeb54033b0134eeb9dd9e0e78193023037f52f322225f4c13aeb03f829db3d38fe26dc5d65d2421309bb2594241907c10535293878ded662026085ece27df5070302047c435bb500673065023052fa631e384ec1968ae098989ff0299bf3a244c4eeab8e160f94af8a07236755a67eaa7307df0a677c982c861d0d1f40023100bffe1f280dd074c7d674ea6dae89c899ea9864aeb23fceff350d867b66e573cbf2798789e226fccb174e91ca3ea928790302047c435bb50066306402300a88540882e0b04925fa42b73a6d85d45752626bb6c9d5c3fbbf3a06beb1a936b6db4cfbef806594380ff890bdb55b4102306f054cfaf3ed936517be5da3674f61e3a89d18fda848482c8f05ce03ee4c767ba98a2048c088e1727ff86748d6aa26910302047c435bb50067306502300d021ab62e9bdb6fb08f51547e0365d994da4ba6bd0aabf4b7d6c6ccf33f7f1c253a88451dea1948287289f30a743fc602310084a9c588ee6ed79c9712c59f1254caa5efe8c6c183a81269ad89c550e79c907035a43731f1a13f2f53ef821007d176570302047c435bb500673065023100d80878e1cb9b2ee7529531e930c647dbe89ef08ea920b3ada6274b6148d76981fd3d000b829c383d5cc881dc242768d10230499f02626fef978b7b74c17fa6e549e90665e12e97a252cc12ac46eb6ec48d1dd5aae1d62c15b6ea74eb2931f697345a0302047c435bb50067306502302e4d6e615432279c449a0fff685f327a1196abd3fd50fe4e65e4634b34a07f44756db261221451342face3b33c6c507d023100c58053d255389c215923ed2e8ed106314df0d78b39ecbcd7adebf006aabc2649047c8c33758eb227bf05e7832a1a494f0302047c435bb500673065023100ef5485bf7b21fffd578db58c19191f63483c2fa63988f9fb649351f8bc78526120bd925cc93abaafc92808988c839a63023064a80e68f975ae7f71b5ecc89ddea5429562814cc4cfea89f27952f1603b6cf422a7f8248b40890bc5311a9bce95f92e0302047c435bb500663064023020d1da3f5568328c6a54c905475bd141b9a68417fe1cdb8c91a8e39343cfc2eb537145ab71dc922528402ce8708dd16e02300aceac127f2aff76c4217013f54d00db4ded80b352a2df90aae857403f1e5fa789e8f29ca9569176264209cfae339f290302047c435bb50067306502306a21514551204592b008d302e9aecb952619495796a689b65da957d7ee06ddfb6f0f04cb12b174a884a2bfe7464403ea023100c7e342e28a8bf83341a292bbbd2fa802306de82d5ce0df8fd27890d870165d8c63ce821968725600aa4cc5513532167c0302047c435bb500683066023100a3654f844c7f0a2f125178ebb6ffa30c369bf7f76d6156c872653eb2eced8e56d6ea420a498d68050656dfb4b0be2d4c0231009c8aee7061d4e4e717b4373eaa933bf98ad5f3af7519402dcc2fd788b61a53d833a436d56cae945570ee3a385e06fa8b0302047c435bb500673065023021955e07713d9028de920680e2138abc1bfb4657f17f16c8edcc64b2c3157eb33a61f76b6cbda5036e95a7ebbbdca368023100aa239340f7a4792031e3a49aed8e622255f93866b2a680166ad760a3effb24378a156b378ae04e44a0933fe632f555960302047c435bb50067306502301fbe4f105ebc2ba47b88c9b1d8c6d1aeda11672d3684630954dd5dbf41cf76c763aee8020bc8e88cf50f020d1407b549023100c69eff92222c48661ddda2cc911d577b635a6ca89dfdcc4cc812043c70c0930a538ff8cab51a3c25eee76b4d2f1868590302047c435bb50068306602310089d06b719e1ab0783b95e2f71007ac6770e7586b619dd442627552b5ab96f4caca67d566efa727a08d821f9e19d5e392023100b3cf117d1a0fa5c59d5baf30b12a3dae01342059a86fd66f2f26cf7eb56ab454106438ab7dc32bcdf89d00a5852e24df0302047c435bb500673065023100e26df771af3495c3ec2c9eecb8e1b67ef81452ace96da923f7f8c907af451b91ebc2594416758a3567198e474195cff502304cf2a4545c7bf59982f23081582878cc4e5b40f974a9aa0684c99d67f458b686710c22a3d035686f37aff069776974da0302047c435bb50066306402305ca4ff464ddb987e5b0449744e96b2cd11b266f552b1f93006c3f0382d4ce6b99ed10a3109850c0b3826aeaa79cee1f902307792620c8a954e863365c13da34f4491a74210284bec63d82e68cd1d440a5cfdee028cdcbfc34a72fc3b7228035fd2000302047c435bb500673065023100d27e00e6c0d4d4727dd70a8694c857b19efb35b4a2eb049f05b8ae59a6041e3474bd31d8aa9a323509b918f71d885de502300796b74992bdf768d72f7d8e6703fa0e6f7e68ed4a18d4cdc427e4eb8c11f7656186aff54d4753134839de9c297457d10302047c435bb500683066023100ed50830ae242e07be13671568e046139deb36bf210eccbb0249565d4683cf8f73fbae0a6b82644c7f5b6cc5fa358880f023100947aefc46f188892c62089585ead7398269d56114fb4fe638f20ac23c24b95cfe2c874ce0dbcd62549c5387a12ea84a60302047c435bb500683066023100d028b1db0c62cdc69f35579b64ce97141952c04ce9e60d96f691d634ab3ef311f581a15a75ec543be72a3a2c034ad17d023100e921fd5bf8a43d1fac14fa847636a01e4a80f915ee9e58c7442ace93101eff2c173522c6ce1d1183044490751a3378220302047c435bb500683066023100cbbaf1e1cbb5c25d6355f9f2f841f27bacaf80d2826296b0f781c2024663dbf7de97510f8fad8abc83973316bdf7f014023100c73568d17dc54ea86660b09cf9bd14d12e74fd44b8a469187cb47dada2607b2de77c4ace5433220d3856951d0e5e530d0302047c435bb500683066023100a579b24537c2f0c373636f24c42296c2442871c610ab7320ed721b731e489e4f274d45b073380f2dccfb42ab88048a64023100d023b450b852c3c4936ce04756bdc8fbbd84edaf970920f53f807a7933d67e6cd13efc8e13b5f61be639c8e7367e628b0302047c435bb500673065023100f52a0268a33138ab204a1fb37d7ddad16669dc11606e98aabecc4f5a7a3151a578b26108960dbf493347d4fcf96c3bad02306bc9f40d5c1e17a36f63f2347db054e6ef1bae0cf76040c761a681c460f1467d3dc31834e62fd9fb719f81b2a83c3a000302047c435bb5006730650230032769df3af1b09d74c05de7ba22c84726a1c05ef9bd89191beff85ff2c9b6c97bb76f383c9daacafeb6b52da6d265d402310090fb888fe5d7d7eb3f0a633cc4277b8ec39fb2352fe24b3266cb97be3cab3f2109ce0421cdf85df113651ee37faec4bc0302047c435bb5006630640230488d1eeace7d74092c8e69835349a26b5f28562b4c2511b91bf68adb6cb9cb1fad43c70bf910accc2a26ff3fdbb7425c023027049e7d877035a9608cebe7169bdf0152bdfb41048137886de7dc6df989ae8ccf510fdc347af441f956669ca083e0bf0302047c435bb50066306402304d47e8dcea3fe2baa04cfaac67643acd5fcdb0f67358340c91d5761f1a5daae2b4739e692fc1ef1a560a8ffe4c18557802302b84420e993ada7b63629e603be364dc5e6f0f64af42cae4392e45916ec0092f74f7d66cfc648db36053ac039afb52400302047c435bb500673065023100a92da763e44ec12bb73897d7d39440017e87f0aa21960ac387e040ea06807808807eb92537ddfb9257e5559d0d95694a02305b1323b44f2abb300a0222c47810cd6ba4b0786d5789d75c1a4ddf0a3e2abc81d6147f4d9dd3f6742bbb7552969205dd0302047c435bb50067306502300b868c96e4694b18e03f44ec942cc891ea09400a8951cc4811d657b62f576b3bf54c4564b67fa565628c6f0cb3258d0a023100b8b1b6042216a531d104ff69853a41484fb3e5c3119d60424169df414d253e76a1b1037100a811308508c67c39d3ff1e0302047c435bb500673065023100b23334c3b522fe378c7dc026b2c15df32d301a9986731d9b955a382194057c6f2ec1d7ce26063b5f266a6008319c28bb023018bc2a30056ccae62519dd6e81e0837effee0ee1be4c25b348446e3052e1d4e58fbda8c597f57938e3e9f1a019f8f15b0302047c435bb50067306502307e04263c969b27bcede1c8d81fa603c18bbcb24317cc56c5936ed3f4c8455e641460fac5f05eb39e0d348899859c38e8023100d167700f377ae6eda5e0acf09086e3e98c9826a3e33407f5e26ee3c43576ced6aaf4994fff60dfe971f4dddfe8d376ea0302047c435bb50066306402302abaf64435b3111f22186b9c48868d8a2a475872788c72f6ae8209e2f97368ae03e32ff842d1d49c7c7b6ccd1696c31a02307be0cbcad2689a719d32885f1efa00ae82b653c3bd99e4bcb65d0037c2a0a5766bd92f91375d14320a2076139a5bc7d00302047c435bb500683066023100c28e9492cc60f9681aa9cf69f0e31f3711b3cd823a9903d5b7f3d7310d2bd6aa7f9c334f504296675f9066f1578cb5c202310094ef7f369582d54393e08c4094f7ca136cc09ac63cbdc2a3cf499f542f3165d2f68643816a40a69bad1fe3ca11c5e1b40302047c435bb50067306502300351b96e3e6b17f2abc7e2b0c2479049a2de9d0268a0067ec1b71cdfa4fda576ed2efa2930fcb8f116aea019161b0e6b023100f94a3ff945eca2fce93c6b4fbf17ebb14c25656c7039b679c6532aac3ff0fafb4ee0d2278444eb39492cd5df65b5bdb90302047c435bb500683066023100d1d5de5a8770eb1d36752b448a5ef941c1245853b2b24a099fe20e2faa21f668fec51505dc75bf370bf4b5acb7059401023100ea07636646cb069480fbe1da6e60e25ac39a44480c73c419df0588423fc738004862ff6390dddeff77e48660ffa53bfb0302047c435bb500673065023100e485834189563366cb9c1aa2f731cb15757aaca4277dcdce9d50baa398ad3154e57dbb1f359a7c296f0e0e2a8d0b493c02303b36980e00f53a713c13571fed08ff96b625621336932026d9097602d7346dc856844c7d36234dc8ef2e9879d2209d870302047c435bb50067306502307a8a7560170a11d9ae6b248ef630c279c141db615abb5c86e27d01a35df86875a8d30d6c11cf47b620415b84e0b471f0023100f348301940fe4f744f57c296b7a85ab95e6ff994939f73eb74b288a5dedb42e0a1cedeafc4ad6d3210345adcf85344790302047c435bb500683066023100cafe5e510757ed9e0cc5263c8bb3d2b8abfbf74c120d714f58a35754a00464c7534d4e0f0ae9fec487871493eff85842023100b04a1c0ffc5e1e91a7076b8a64c2f828e1a1266ee33f2eb48dc2d5316ac07d5f967e9f9590717f8c4510f4b6ace75cb30302047c435bb500683066023100a546ad7faee0603bb3645f3642052ba0eb8372e3342851b6310dc35fda0003881670ced278d06a844be1bb03cdcc24a9023100d42d27c2820cc97514fa4b77a559edb4553d0a090fa541dcb6cd17c4092b56cc09c5f8127a560c0640e384add2acbac30302047c435bb500683066023100fe3f6ae5e66b1b16da530b8675c116f059f7333f0f22cf433de97ccaf964a109b047150ac1a9d7c73f4cab3b13ea96aa023100f5fc9f7f771ebe67c1a36936441469811e775251e5dec49d77a90fa312edca6a7abc6771fa02bfa14028d25c9a14bc2a0302047c435bb5006730650230269a410ab30e20bae42b7fc14d9cbec1befe2a36450facd4f336a558470ededd2bc6df44427f11611c0f2165a4fab8bd0231008388dfcc62a1d47056686d4f7277764e66f29ca32e2ff878f80b89e7211ff8205d8fe8b0658dccacd7e0100dab2f6d140302047c435bb50067306502310096cf4cabb189fc7c0f00a2878d1ff56fc8bbac327a70300f33d0393a7bcba1ae6549a67aa131df3ae08a4a16227a8dd3023031e11fc7ddff7eece2af7fa00a651f3175f6d9b9f5152caeebec26f42347f6b2d7c5d65c59404283f45c09eb913c80450302047c435bb50067306502301aa8d6dabc17cf6ce77021ad0cd9060957d43ef7a37ffe619fbd253b9efc314c89274827f79156e69fd52e2167f9cd7e023100eadeaf77829709156183a455aec06e6670c1df8d2986d29c379c698807670e4c8952ef036b40fcb4dbe1395b5e2aec1b0302047c435bb500683066023100b22cf351303a2e0496ace82f4303250e28dd6dc629d4f05b96801ed336e2fed7a4a3f383f28fc9ce6415354139a3f6a9023100ca56d3d3c2f034122e0e2071b098d9619e191ffef17ab1bf5a8045e7eca94eaf6258ba592bcd6d7c681efde560e536140302047c435bb50066306402303ca2bbcdcf62d75e3560da80508835f2a6c97092da9369c1d5518e0db4b51c9d93ca365dcedbf67fb783286eeae8f87d023070c67d3a8a4d86670524ab2ca7be737eac20ab98a7599cfc9c4ce514b5f98cda5ea98150fa7d4cf833267dbfeb7355600302047c435bb500673065023100a0e18fb7d5556bf202b4a6edf4eb5e6c162850b541af230b47154f0a49f24853cdd613308e5cb33f7dbb00ae6e4928650230046519c2dd2b4b2e520db9cbb982623c9870a74ecc438182798b3995df60fc71f634ef01ec31f6b0bda70fbfa32b65770302047c435bb5006630640230541a65576537adb5b3f1dc073685b3b2b740162de66f5888b607cfa2f0576904d8735670dd661c8bc644ea74294cd4860230647af2c7b3afc7a3bfec5359e10c24e4d6787c69ce8d8c05684ec790c51ab3b359116845903fa323b643b49f5380495f0302047c435bb500683066023100e7385fe6fea5c5fcd8f3350b60a957726f8152fab62a89405741f83b07030a22c9e5ea50f1158b9b6ac2d4e6fc0f32e5023100ca9a6ca2e16290a867f657485463d5d5bcb27876cf4a3d93788b1b3e531055c838481e9bf8cf0a1690525cd625157bc80302047c435bb5006630640230032846158421a28f7cc682ab6ec6d33754ac7768215a48791b87598789383bd7f3063fa72699504b0b571c6a15c6c9dc023044b1eb8f15be793cc643440d7398ec8efe29932f16bae668e399a5115138309a1382bf393347afa51b4cf1b0551785dd0302047c435bb50066306402302a42fd4792fa7812eb2077ec37de7d5c0fbff8920ff6938c8f6a6d0b551f8b53a999415e117db0a571b5af90aac1411402307e929c16e5c62284ee0f46c0597c83f31a65aec2ad662215f131c58abb497f03ec95f14ee4a4bb2dc986406636c42ef50302047c435bb500683066023100a09787225d342df233e104f2c094764b2dab8b18df1433f87e35aee6bf7c8db8455f3a325a9a7eb4855e3ae17c228fec023100e6ec1495daceafe119d3c21cffe6a537e4d76ad13d06c8aa187918ab1f48bc3acc4089befb886912b8df8b594f3077270302047c435bb500663064023057b9f42f95f71b76456997cfc995c0a84bb728d5462b3c543dd67158cd74b59ff25a0c9cd338e4e950bf1ca946f2a5ca02302fc03f7887c6b212aad1f681232ed45908c45542bc862ea3097f844ccb77766dd90534bdaddc34332e61d202a49980b40302047c435bb50067306502306bcb5d26594fcce059f06ba41990baef609a02c925936611c2798ce55f348005d8f05d414227e8eb8b62aa3a2ff0bf90023100a6126b545d629246fcfa1d09c067c67fa06111c5a5953a9ac31ec285becf11ec22331f36567d689a683dcb8740d4a3e70302047c435bb50067306502307b559d76a0193faae2307ea51b80c70324d6174b04d187bcaa4eed3784ce42064a9c4022f33c47699dcd340da092d029023100ce30d4832fb6ab6c21aefe7fe50cc8f2c15c8e83186375334300c8258d60e0ed3157b512411dd58a368fd005ae3c9cbe0302047c435bb500673065023100ad37cac62b3b96d2eb9c38b87ec30276e1f8bbf6f50732584637468204aabdf82517555a4e5f7c636bfc5e2fffa98f1502305ef53636ebb472c18436eae1bb80cb142de56b5cb056d83b013c7f00f6baa9593f1219ce103f58ff908cf8899b97d2060302047c435bb50067306502310083af3f0dff20023c8a6c015565ced847ebba7c264df65206da1f72c68e38c08fc7fbb589c8816db8f5727c1ee88f00b2023027f98f290e5335ddfd31ff4862671aed0d1ed4fd2435b5b19159a64a2f071745a54ff11f330bc002933d42a541f858580302047c435bb50067306502300d4247ad9097649d780839ea421c33238a5d2bd6977f12b1a9fb599fe79cd9172f333b28432a207cf5ab13cb787330f3023100a4f43f5c88530e86aa1b6cee249666639216cc32aae8d67c63e62bc7a6f0f6bfe36a9cc6586f3ad90b44507922994beb0302047c435bb500673065023100bc0cd160055ddb3f03e22c2963e03a882b858f230ffe892d54b6c6c2a538bf45892a8948f2b73f75383830087d315fdc0230353af9fe5291b6bf2978e978e67135f236b67143a92c39f55f8060e7a06f780373af43bc0f92f61fbf9e4af234c4323f0302047c435bb5006730650230503d01553e4850f147e4547a619f5e69d78dd925f4c94910c74935642419f812695c27b61a65449e5373fb2c300ae2e30231009102e9bce516eecca2b92222c7ff574a7a65a6398d4e699b2a13d2186f13aeec13849ff1b92a3851f25c0c25e75c1ff60302047c435bb50067306502304ae69eb785407648149b8e3a7245c8615cef616945049aaf0ef160745f113cb29fc95c75f3f64a0a57c6d7c793c9bf96023100df092dad2c9dbcc241c246877ec3f9e2e999e63abb8a73d20dc52e9b7239ac31da53ec992a835e266c1145ebe81cb0130302047c435bb50067306502304c651971e2975572b099e9cf81602b62e29e92f1b5fa2ed52ccd61252283edbf25dd77a152224b2f430b4ecc0b851248023100b97eede90a5f10700a93da1f0f00ae0b3e1df052a596fbc42441e33f76ca9d6ba31224625239ae181967d95f00334f920302047c435bb50066306402306a98dcadae5379e7f503d7739613ae7803363a3054a8dd39aad2048bbaba885367bdb030c4989367d442c3956fefa816023028f3e043b56e1e6ff60acf1043d3feeb33773d0c6959a1b6735ae2c0296a15105c685fa24903038735a24f87f805f7740302047c435bb50067306502300c57bc49d7e3588d40d7b84e736c60ab432f5d6eaa86dee83b1605341e4f53ade94b514b0c794d76dfaad6b92216507f023100e081834f580ad7f31ec8917ddc63bf46765e50b715296d674236b9c03788db1b2956216f215511011b3c259f6ed86d5a0302047c435bb5006730650231008e83f832e47e85ffdf6c9711e0245707e2ace76daed1fdb69e35f6195d8afc2e6182868ffead9195996dcf63be63928802305b183486ec88d8b4f34c26d468a8966aba3f6df7cfae81380fae69c10bceb339ba083e0904be283f3d21dcda4f80fe340302047c435bb50067306502306d38193ef6d5516d35fc75d888a6b9a9b5eb6c50e20066c083c1c00d59865708da6b542077a0210510ee16ea46925b71023100817713a7197a06431bf8b581fd414a3a0b0d5a523462d8b1f3198ae1a907824dec31c9508a312ef96ad2f4b06220db290302047c435bb50066306402305af4c84be0119fbabe9923b0c1fe8ad7193937862da59e54f0487c77d48fc40ea582fc7a463ef9e7592d59b97b7d762b02307332abb1ddc465a0c2ddc80a2c15100cff2cf56bf5a977c1d7ae33ac05a367afa419567246497f1373a7ed67c42e48a70302047c435bb500673065023100f0d13b62f000fdf1a8be06dc1410c3ea3679d050979a6263ab0d5a34fcc9b2cb2b4f2bc51a77b7c6e346134aec7e2c2202304eb9b95130caf1017015323a223f61b8ffadc88bf376d65cddd6a0b04b564b602a4fd237250ce5a4b5f1185ab0f82a510302047c435bb5006730650231009db5cc683436e1b69fadb972747f9df69b7da9ec6dcd8b593c1356ec640e69372d39a3f799292df46ca14aeb6ed57a6f0230312efc060f9ea18b35f974d5dc95419994470a3584d979ac905314dbd2795d7a1affa72e2b21a0cfbcfbd6e3be01206f0302047c435bb50067306502302be2f8d661f3a3bb4c50403988e1423272984729c26fb43d949e7c9a1a0f0e3c375b04afdc1e45c1976432db6c2b05f70231008094c29c41af3e35f6eced4d4520aa7a1312994f3d3911756d20f06544a0c1f9015a3f64ffc1229d3b0e3348f8c8cdff0302047c435bb500683066023100c9231c159bbd2b6002e09af91d8172eeedf01957873ac626781ddb731668f7a840a27a294320a3524a27167eca91f372023100b5c731ec29d41ccb71cac0d793a384df6191253a90160895f960eb6200d7195ea3b1da1d3ec796bb446d0a10aa5cd99a0302047c435bb500673065023100b32ff7b88a1cf7057b3d56f699c87b8ca810af6f67c5b07eac2b10f7708d9b3e70ebbc676573b76f77793c49924c0d6d0230278f41fa5195e60d2b8784ca051fabaedc0de27967d026cd0cad58618657b168d8334313ae57357d4978eb03d67d41270302047c435bb500663064023071aa25f9c26a39744b9b4569b7efd205b94ae64769504b07e9930707b0efca1a44d44acbd8779ea14da5732077ddc712023048cbb4f3ce293a2a2b5c9bde11bef3bb8a80daa3db493fe7f8b9fcc827ac2928f685892a7cae61d433459fe38ea3c4540302047c435bb50067306502301411e34c462cbac8acf101a61960055322561f8dcc1490656c1b8035b958582c4b6de807469da84fb27953b5fd311673023100e490bcf31a2d68c7363f137852e6ddb5b47d9c300c8d7814c34c560080f9d0027a87188ceb5f357dc74f3a4d35c0b7680302047c435bb500673065023100cc40959ee2eb6982810efafcf05a5d7c5cda43e55e2160fb7cded368e0b1a2568bc3df18200f9dac95ce1238cb8f095a02304ee405726c5a106002d6cf00ba7e11c234c37c4489a9b154c3bbcea9699b09afa0f4d2ab32c9f77276cea8e7c3c02eb60302047c435bb500683066023100811e20f715504d871d13c40345f66025ff14d1cf920b4bf96df1d7cb3d9d22fb7c635b7425201d657926caae78089eb8023100c8e4a19d3a98d8f6b3b8449d58d68b7d9e598de68ebfaabc344208cabea598609288aeb61c9cd4f89c0df2fe509d8a480302047c435bb50067306502310099120cf5b6bfa0c5f9ce3ec2072153a9a1dc95a497e9898f669c8bffb8a6d2cf4a8175cae95e2168024d4c05ee243c1d02307562f5e8d9ca0ca6eda2fb7eff17e137372e8eff9467a3f8759dc168c0122a9e406b39e7c6c054b012976e1d1a45e6750302047c435bb500673065023100a63c88482228bf727b9ffb3529329ef293f16918f3cdf9664f1177b2c1ff8e753550f2b02a3a44eb8b5c499d796cded40230263ec94cc0efd78f52540e90fb0d430ac2d306fea13d7780f342d6ecf866b1af7695d42edf52c145c7865358e0af6f6a0302047c435bb500663064023028b0f7a69e783852d4b24b8a0dae11f473379d1709ca51bf147a6058e18fc69dfad425f1e7015195502adde85d73265802302fcb7a496c2b2cc0bee5acfc891167c64c9778bc24e0ec91a0c71d5126166aff68a8255328f1348a804b35f02078b0540302047c435bb500683066023100ca4e538b0eb37c3c3f21cee5bc691a93c9a4fe34d7b16cf183d2cdc187a04706547b8b50033c39c0edf43f8182c8fe0e0231009b862ef485c1a5a63716dd0fea192eb92474bcdf0a247958cdf3fa4bbc1f7fd10d0667a180f341af2f5910c53341aacc0302047c435bb50066306402304aead4ae887f4a4d7d0d0106f0e447b23a5611b6f76ec9ecffdcb2ff765e376996516f17d1ae7f4606640cc808cffe8e02303b3907ba5a35301c747944d7aa878bf47f7030cbf6df0bf8a7244a4ce18c3211d9450f557b608a6faeceee7d4ef00bfe0302047c435bb50066306402306a47f08b63064d3532430a2510c33127bfbfd6e13c3910f024c27a3523888cf91387192faab33ce55d96417f980825ff02306e58959d0d7b24e68c107411f02306b0dd92a27d4015693975fb81ac45228c6edc45ef3a00bbc67f75b0c667b6d0a1490302047c435bb500673065023100b9bf8801d5da6c5930e94ceef7da561c392e49e8ea532e35ea082718a282049768af8f68bb0812040a72e46853667558023035dc0f32adc9198ca02925c8a70548f26bb5e5f8cd27ebc365697ffc4fac6e38dcad11b271d5ac52309aaba09b1979380302047c435bb500663064023027a095b12d35805f683dca86e9519aaa0b4a8cde0fde8740c5cb14b598d5c31cd0faa7a5f517d897de7491ae231864e2023031509c60bea434f86c70467178de8bae7a21a1f9f489d02d991898ffb55d39abc8e0436a2958250291b0e6ebe16bb1550302047c435bb500673065023002510c239718e83e5bb9c40a70304d3b39824d061df241bbf23bfd2a6fb95a778b7b709e2212186c3e65761109a466d7023100c800b04bc93dafcde721f1575953d7b2239997d4f3484712168cbc82d34ae5cafdfd601f13cd80471ff3984c9df6eb430302047c435bb500663064023038748e06d0399ea8649811eb21e7fbacb465a03f43c3fbba673a1999802dab80bfbcdcf8b5f240830a3227112c2471e50230415ffdc8036afb13bf7f28c5ce433d4064de839bb172b49dcfdaaf2f5591d458b4f755f3cc94e6c329ef81a7f4232b440302047c435bb50066306402302a1122fc0218f8d930b3850adac0b9f618bb03bc6f902523f457b2bf0038aab9aef88a0f9ccce3663f12d99c2feb107c023038c6428e763373cb32c2732102422f9b1dc9f1e7e8f5b0f84b31fc49dfe16b3777bf8c381e170c606f86dbb3ba4eefd40302047c435bb5006830660231009296cf762787669a5bf42e018342f92094660ffaf92a5db63e15a8116ed53907bab67f4c777eae2b7f00d2c90dd4e452023100f06f6326e8bbfb7e603e1e2c65320f7eceec0a319db0db0fd01205ee93c0e96be3f6fa7c279a276a1c3cbc852416d2d40302047c435bb500673065023049131511ee26c15c2f103fa8f69bcfb74e47e0883be4b06dc033bef8d9e46cbe87b87140eaacaaf33d69af0422a79970023100e007c824a70b15c23c6b02950c063ac7696d06aca74ce46bda333a7b51716bdbe7717f5ade70fa0969668c2c9ea3c8330302047c435bb500683066023100f8ee19b8cba498ef6a4c1b73431acbf1303418b2de77fd670c235ebcb90dbd47df840b716e2145b812753185870813e3023100e32a22a1a03e192ec2c01e3ac56fe5f3689a74cbedd335c7b19c49d6c8de0f54c037f360dc1b1595e40b457952c98c840302047c435bb500673065023017e447a5ee84dd1727880da9134c52f433d5c2adec376990fb52e7000cad603982f1a0f33f4abe429aa57dcf0297f481023100cbf61a9f073a1cd92dc4c99ee99b12dd88b0f4196a8111df1af6fad1b24def16927289385b4bb12bd2071bd56cde4ff50302047c435bb5006830660231008af757de9643e5f2331f67bff724de8615cbdbbcb0bd309080297734124226a5a2be0ae0c93d770dfbdbc3a95814c5f5023100c9d20bdfe58f7b5679d90c4ccea51997e77abb56f50acf517e2621d9b90446c02f8bae6694002ed966049946b9624e250302047c435bb50067306502307cc103a0eafa091efb83ae692e080bec44ec4ca1f2bf7992030ca3c8bef15a7bcbf6536b1060fe846a2dd533608b633f023100a90fc50332c82aa20b0838d26fe046292ea9e150be465ca5cdad1cc6d472c50276b9fcec95e225280e205c23d2e8c0150302047c435bb500673065023100c7da3f34a12c178a689c5801c4bf6be8767e1efec729a59e61f8f9afdadf3e925eb5efa18f3b0f1d1a12ae66e2d508c402303737c16b6d43c1f77cce932bb6e93ab06b804fa1e48156c3f4efca9b077cd91142f14ae71f861862f1de1042a70cdb730302047c435bb500653063023009f292c78900dfa458bb12d3598f5265511824a7ddbc1ff34bd43d5ed20b35ff91165f24d1c1f0fbddd047adfdaf4ac7022f01f05f6fb723ce01b769fa51ad342b54498762a1b082fa479eccf05a52510ab5c07cbe931974990fcef00792c21fd60302047c435bb5006630640230271088699ea7516b3676b2e4574ef13fb3769419721fb93fe4193c7156f698a2edf9025d6c9e4c255ecae2905e22c17a02307fc5d4888c644f6c23adcd6a1ad7fbc81e30c9ccd9f4e57803224da3aeb6a874e4d874df880c5f05729ae8c07f97804a0302047c435bb500673065023100a03ee3700a3869708a7275c070b2b706e7fbb537d6da5818ad75dcd18f149edc2bd2c69b07499c2486145e49d6daae8c02304ea79e4301e1446450f260889abe935e83c5ee948adf79b8f5a4314f6e75680fb725775be24def9d484aabf76dcd51a10302047c435bb500673065023005d010bb5439fcecd5956b35d6fd9d450a496ccb0d21657909bea63c3b298fb357f99866a576425a2fcb7dc1fdf6138702310086fae60f08761c0d7ce6d6d16855b63a1544a2eff47fd031eda677e438b893a004b7828cf16c1b02fc2699b65451b21e0302047c435bb500673065023100f05e9a5f621bc129e89e73b56361d5afb0b53dc7bb2cd44e7abab75975e7cea788101280b3110f0f801e08e58336587e02301e249de8b591b66ef9ebe348b5375916599c301b1ced110670c71d48cae76023f2086f375cde6375c269ef525661746d0302047c435bb50067306502307dd11154a4ae05517ff90278d9cf620aeaccfba5dccf3004006cb390e7f58bd9d4fb26c92fe20dc260d4720eca67249a023100d3ab6441d4847b39d78c43a3f036bf86bcfed02dbe0259cd9384343244bd2bdeda4ce603418336fc91f6b2a49e148be30302047c435bb500673065023069d866708d958aa04b60270c2a88a10d78a4ad1905e9a85ceb68e87c5581e8dcaa4e5d787fe69793bb485121b7e918c60231009aa39d57600263e1c9aaa4438ecbf0e39dc8193db1ae9b5d20c91b218d64c917b4badb9a1924e0d88a1845d213cf216e0302047c435bb5006630640230101b2de5ea46ca7accd2f3abf59ed84ebcfe9ca5751c6a2e75f290ad103bb09824b281279132f19a97e3227360b60852023021dc7db759a422e4aa453838c853195d260c6f4958e5f44a34fbb8e31aeef20ffb869a1e573aabf33aa98f0c85e0afa40302047c435bb500683066023100e57583947864ea90803033e275eb06811cf06537fae35c67ccdb7f22816f58f61a9f33eb8cc83f5e25a11ae801a211d30231009dbdd45716bcc3be8b5135d4082ea517f6e5e57371eedef8427f4429d507eb5bc1b2a900b6c7f3cc253ab9dfd2f5e7fe0302047c435bb500683066023100967c42f0a961adf647d2919ec11c28cd15d71b82eec942518176ff4318466dbca56321c7c750aa823787c2d2027f3b22023100b77d64c2c9ae06dbeb91cbd150ddde2310ffd13ceafa185530aa6803482ea929fbc773f8d78e1a1a23552e42c1e65ccf0302047c435bb5006730650231008afca2ff3ffdf6930cc745643b13b6ed03cd1b5b91ab447cdb8e36f208e9ce0fe14ca15b3453ba8aa5f83de8dfd8b1a6023042bff672b2b6d6d8844c51df0f1a130b604ab433fd4e23a0320d371f243a787c159046d0e3390b8b4128174163ac85490302047c435bb50066306402304abc0105f57180b655a3cdad5fa192f5e6f5c4e0a144c43ceb0bbd0b63b33359c19b24526fcac59ef3c9da0086b7c618023018613b33b485d7e9bc2ae20a0272d775e3b604d3ba08d91b698587c01269cfd979593e63ff1043007f55f1013d8587010302047c435bb500673065023100e8df304b26717132cdbe1352af239491323a1672fe8eb3b1c51aee8fa1a504a39864f882f3569bafc0f1927bd455592b023024d363654678f71d3649da152d8ceba153e2a9739269813267cc80063cb5426c9cc2a1de7c0552c0ab8a3bb19b5e653d0302047c435bb50066306402302bf971e0bbdbe0b9b81593e5ab31492695b823525811befa47777da17229d1407019784434dae123879d2d0df70bc716023024cdd5b2469e403c5d6b24180179ad7946325dc6aaa581c05a95106638ee0a2bd357571684b0e7c3167c45be9fdd358c0302047c435bb5006730650231009209b093993cf428f79c439c10eddfedac6bdad5cb4743edd4a7a16b8ec67a577d469626bf5c1824df9dfbd947a9a6a1023068f3b82f84171a73f775a7efdaf68c3227833f1e5b70d8d0dbaa4bd3b4e09a6c8a006f318bfeeb2e208c407b16c980fb0302047c435bb50067306502304aac22baa083faac548e9af270e1f769f5ecd54c21f849308b5ebb7d40ac4835d88116dcd1006756f51785d3ee874a0c023100f22ecf548e365744cf410ebcb0f1f0ab75ca0a0ddce3ea5231bf78c72f4c9185fdaa4e3448226d4a2ebce872e33564d70302047c435bb5006630640230697c5085e5834eaea89c56dc04f957cfda63f9420347dea24522db1058d11e072c7dc3f2a337e30041fd563dd0dff60802305838876ccc457d8e9f6dd1092be5aeea2b2ae6749cd578636e146eda7bc934477317f8be53a322f6e51b95b156d6f4410302047c435bb5006730650230350d9c142ef52d17b69c572afb3b7e8c0779749a9d9d2ff615ad13df7802a7adc520fb0696a8c09551a67befd150e3c0023100e697a7092687c5eb9a194365803ea80af7b9ae94f6a36e36d6b974b77baa905e685e12b5b716b8c3333c4bad445bfab60302047c435bb500683066023100edac209ba3fd1151dbc2f1527ef5de6289cfd1da9dcd8f0dc051f7cafcd5f4968d186e3cb568a803d15a8ffb745f20b9023100d25aa518b71c3d5ba30beb03cdbcca75f69401301f78b3588a903b3d4f0db17bc9472b3e951d4d182c11311a49ef3aa30302047c435bb500673065023100c72863ae4c20d9fee42d85b0580e821159f0846a954468a25d3c95770952f41f0df70442c51c90f13adba7a7635db013023061a13a91712990c12af89b2d6c45e4afe46b3a76efee84b9125fef20da8d2790c95e5b085c22e2bec7a7dadfd3b881390302047c435bb500683066023100966ab546368675e51913ba255824add6c0c6a23d58f4c445c02853fdd28579e582ba23d696adc0730d1852f9961d2309023100883110f41f1e4dcfd2aa994431497f9a6663e26463059736645349cec37fbe3eb6165eada0c5431f96dc3fa14451bd1a0302047c435bb50066306402304756bf5311487c6f93b7de0de64e381be164500193e7800edeb906eec7aa9aa07bd72455da8ac301839c8a9bd859645502302b6e6abb67bb7a6c3685c241c7bc0d8e914469f5c23cc34f5b9ecc54d3eea43c0722619765f41cb986e7340503eaa46f0302047c435bb500673065023100e7a9820ec495c8ff93df0bad25d3617a0ce10d811be015b8a7ad9b72b5df08ef883f0936856b450ed68ab9025ed3682f023070f5cc7a8305bd946aec2ba4292636bddbf453b9d2acc0e2bbbcb7cb45d3419b7ea803a8605de5eadfab1c1a10c38fc80302047c435bb500683066023100a46524381b1b6e7354872656001bd441620b4b13b9bc6d9f56211356cc1c33e535eeb480622103eb04fa0eb686fb15c8023100dc944187aca51df7a110e2fdb249d25fcc625a7ff35c712ee6eb1e0e704bc6428db4185c305e78ce53e16638b58937b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ac8cdeb793a73f049215ec54aabfbc91e991eb9acefeaecece801e544262b34e28c3b8c11094505cb96633537e89e9210230758711b15c5374875bd27f4af5eb949e029a62b20379aa212876faa9084f6ac0227fffa4b8051ae3d8c69318e43edfa20302047c435bb500683066023100d0c994ccea66497b183668387fbac45285037faee88170cb7ad9e577ff5b23f76c295ba5a112d6106dd2ee3ef509ed21023100a3fa6ddc78186a4ef29ce9414666e9e8b542d22a1a021ea283cbff8a66d4dff61a506bbbdef3ccb30b4d413e23f1411b0302047c435bb5006730650231008014945814daf8b77b0398a3a5ffa9c2aa223d5022e68a8d699cb13b8b94515a3718c831b3260b73d3c53233f6057166023002cb58bc4b6d43901e2257d08324b425f377586ce60a7836dad045884d693aabc7df388f4ade80d9d5cf44f9f19307a40302047c435bb50067306502307cfd145f57eb432f6aacb6012a0b0986fae8fcbd1b7af526a37f12a76932d33248ad3f7571e06729ea05d87caf2b21a8023100a43d4123b0c75ab3d54cc8468e3f77e1f3ea684b9809121400f6b59d7797cbb3b6cbdf0cfdac4996f3bfce76348911140302047c435bb500673065023100aae9b21772181c9c2340bd71254234c6c9d5ce074b175714e014016cd677f66cdb1ee20cfec17546a6c4c31c035a3fa202303f01e3030d890ece527f4b6ec0606e7ab73ca37a7bfa0047d8f307655632485038c74f5412900f4fca7f7016e461370f0302047c435bb50067306502306149cc0f1536155816d0fe58b1b020d30160471312c1c153a87dbfb1f8cb5de54eeabb58b175987b3c56ef65b57ff0d5023100bf8de47ceb98ce5ac1c690e5c9755a6e926b83ef977c07d33852c0f3938a384b4a969852667fd12f95d093507852e3400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dec71f5f80ce5c0e5e104194dbe0d37077806366e8d8b783a7dfa2cf0d4ebe6957b3b74a160fd8ff764b62f1198925350230253e0a9d2f9eeeb67fbf71a218f939ae9875d8607a44f21f2ac03e75dcdb4ad63b230c03e33a1cf2769046d428a4a4380302047c435bb500673065023100ec3fbf64367cb53771e47639a0bae44150a9cd4506d1f10c8f464fb2b5a8e18f22e8fb11bcb589849e2c347ccffda9e102306beee50bdfcdba905401801c65f94c06250158fb85f1d80c45f89d64af70147076367ea25295f6e57c347ce5d6bf19c00302047c435bb500683066023100e4c54d6db79b86a582794a8d49203ece68ab6fae848adb9b9099e6b0b1ada965a0dadc9a76776ea681efcff2386487e8023100d58ff4d330dfe07de52ef1be12a12a16706b063d133d5360c187713c39da94c2741b3d1fb80ca1c84758f4edce5017e90302047c435bb500683066023100e051aa675d959dd11a66859496cb3f16aa218240540ba1c659cd9674e55b6fb427eca6e2b2cafb4042375dd3dbeac39402310093fc92cfbbb7e28142763528317952092848c803e6c6ba87d520bb3649edd0779648473a6927071c9f71556b2042f1790302047c435bb50067306502302f01737358f8b734b55430ccc06cf39fb11438ff5e63f77aa2bdee667b627a3230fe010a8200aef9d3068e80e230aee50231009820a6354584d8a902dfa1b9b577997da0b93988a82aeab06868e6e01bb59445bde12ed09c9b0fb378a43d94b4aa92a40302047c435bb50067306502305204514cc1ad425ed9786473be59e2e3ca5f65454e430c19fe46a12c1cba37d765ac3a9db439f3797f85af8872ed835202310089e39c74046a94df104a74afbd27092e0eefefdea41b8a31e9e61d9ff0f2ee4c44e3be2aedfae5c41d50f53de28495570302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb500673065023100ad9cd4ea073117ed83db535fd2bc87f2ce3c13a912e17fb7fe88ab0e8b536fd78844d5ee568c7fc4cc830edcd07fd92e02305dfc6399a93009b635a1e99291f4dd75d93397608271a154c0f494b90d56b97f9bb44474eb66b7150ab1032417d628980302047c435bb5006830660231008451794d29f0a1a24a5e8d45a1e229e6efc98b086907ae23b5d934b9f14fce708261e48fcd25e21972d9d7f3f8e208360231009d2cba5fd584077455a62651f9d3e3836f68734777680ffd71433f27458a469ea2094701bb1714a8fd097692f9d5b96c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230756e96740eefd8effd357455eb064fbabc4accd5aeab127e18c881f008f9b57168f8a5628f0bc7da3343c99a52cf7b13023100d0dc94c273fdfc87b8ce05d94937f04ed94352427b262019eccefe66c79de0cf7a38d5fc9d7f70a4799d80d69737ae6e0302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb500683066023100fa411058157ce9922b916de8ba2a928b2c37360748962eedba744a3ddc4d1c215cbc4d79efc8a3106c4b9e2acd000ed402310093de1569234de7dfa82b9ff05279c0acc50196ad50bc63220df89be4572bea8f6d9c0202fad4b8d4075cb47cc48e5aa50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023009e7b93ad52bbd649386b302860e5ac9b3ca43471298a88b88314859346c1ddde9952a49c7616a7b7b93ab8576cae38602306cc9159cd14f587893f8db6566cf26647c4d715f38fe13fbeaee59726373f6e00a77fa416afe583137e3146d1c6824ab0302047c435bb500663064023072c73e3cff394229df1189b8c7b7786f241c20cb98330aabfd202715761883b93b9527207ecb53c5248ec5850d3f0d2e02301453df96df38fa872bb3373cc3cda22dde42690fc3f3bf7f8853ad61cd2519dc8856c0872c856fe87914110164ce3e0d0302047c435bb500673065023100d680f360d3a85d21258ec9b8bf5fbbb3811b5768273ef8626c4cc6ac2582d8be325d686c3e1c2e271b36c0021a7be64502307b2358e37d00e78893882b89fa5cba87acb0c521a72c0ea5bcf2ecbd34186f04e024193ad7683cd0803ede1d3e48ba680302047c435bb500683066023100f9a28c2f1f2fc4d92a9a21e29adeefd91a4207c5d25c4882f6b1f57f3079497fd36cf49172b3125442e7182b4a16857e023100beb0d11ab2601fb428cb5a0cbceb7a66a4d29b9dabddac1038d7d0ab7d0026bd966002a1d736a8c7f212e77d114c01cf0302047c435bb500683066023100dfd624e864e8ecc44d966d0dbc1aae7b5a70bb652a1840c0de8739455acbce81e9c45e1f9e460b2ba03809d1d5111efb0231008db129c4278ef5491d106f282f69a9ee5cacca113d4ba114d3ee9f2bde1aeae99214c267a0520ea1d5d17c4c8f314cc90302047c435bb500673065023072295c64a9dacdd92e1f389f7e354fc7bc73bb52dc9e0ededd3203513fc10ffea9cc3d95046f0e9ca525baf5dc6c3e87023100e9db12ea4f8064ee2db288f0191294f363f5a0d62d0954ba043cbe95b746c77e65e8bbe977bd760fa09abaab404b24ab0302047c435bb50067306502304a29fd5ff293aa4fb51498c1771113a0917b97a485a7ce45af1cf75d22f7b4d541380b34e94654b8c2a426e155137e36023100d425f3eca27b608384f155890e7501cc4c7325f18ffc22ae31099178bcbf375932f01e0d1c18d34f9113d611d1bb078c0302047c435bb5006830660231009f460c7b2d910064638b51c65932e53cd6dfd605d3b0d58d60b9419896e34537bba0430a6b8febde956c825abf6a888b0231008ff1fda4694f0b379ee2082a486f94c8973d10ea00bb7a817b329dc6633304866df005797a731c49eb7ab4e52a39b09d0302047c435bb50066306402300b8c98e45bff4848d9b66a22eef31336a6dfb539eae6103a51e5ac168d9a972d4a5ac44e5420d08a380da886a692cb4c02304cfac5725c2bdf097079a228db3a7144e8cecb18d9b12b6429ecb8bfca917aecb77d7d0b31bb4e5044c47f1c46f8e0a60302047c435bb5006730650230457fb843a113e82198e5fc9f1f2b33ea8a0cb8af5721e2e900c4e5c8857b724361f35d14df7a1b3156d7a9fcf06bb5d2023100d718b024aa6dc83883d5b5668e2e99ac77a479cb1ffd11bd2a1e560ff822d32a40c200f9c3dd4ad0cc1a6ec38a698b9b0302047c435bb500673065023100c3aa5837b4f9fdd5c7c760741068c2678dbdf6abfdf9343389cdeb16b2ea70693f3bf9d931aa1de7b8cdc30e45e8a9db0230598eda7e3d653fdc017d16cbf644b90bdc34c663b0c4091893710b8a00b4f564e054518968e03abd630419ed6544003a0302047c435bb50066306402303eea3cda17d8febcec2e1c50e7f94783e548bf3a1345ff718891bbc7e2940ebe2c1c45d7004387b3ef6417509880e5b40230704d2a52bd9a987383a38eece962d8d4cc49e17c23aa947b5b5713ac4b81ecbd76ecb9eb69d0fce016a96be2e6c58e860302047c435bb500673065023100f06da4a22b9332fec0ca6ff006cded6c9fd05dbddfb65023c3a0eaaca6a379fdac2696556382423ad2ef4739a0b2b07c02305753347a273df383eea6070a5a74aa173171e95fbe059c352eb0b1203efa73f399dd675d49d34e663bf8d52370ea667a0302047c435bb50067306502305816c007a31dd5709a5784985a9119bd2614d8f35da7e38c43df94ebd748559953812412bb3c8f242076e847adfb9e60023100f5ea489d4e8374c749a48657d52a45cf05e9c117cfd2dd959bc4412539541e47d196d8f63b1726e8869308d066ca25470302047c435bb500683066023100ad8c68707ccd6bc2d19f6cf74cf5a139912d229715dd8ccfca534813c2d5b0952e9ee40e42f820b81c0336eac34ba2cc0231009d1b073062d41133d196dc8215c5fc08e32220ef3fa5329f0acd7e1a17946f85f7c3f16389ce5eb6d610eec96544a6e60302047c435bb50067306502301aef7bf210a813fae4850aac31f9b331aac0f459accec5bea534f6ee1dc164aef8576df1e0334b4cb7001e035565e7da023100d45bf52512cba2305d303ab53af88b1c856fecf259347b8bbb5f15f58bd4906098b6edd1b90068d3bd54b536bf966f740302047c435bb500673065023100fdcbb3c5e30f67171a94ca023595131aa4ea226157d17950f8d26ed9715fa015c865a9c04691b32d3a9fc1511b62d69602301e844d52144f0585f33aa072bb739c72f2ace85f49e71c1da1b643f4a24fcf66dca33698293e5912529b6f5cb45797300302047c435bb50067306502302cf7807c40195311d8dc8cc2ae08f1fd6039bc8d6ca655bcfaafac46022f30991eaf836736adcb1b3b841f6c13e1039f0231009696ccd30f310d3447e5d2850602e7907ea05f3a93fa9af08d6c7cedca358efd63e524b6a6d2edd5ffb88239447e25a40302047c435bb5006730650230693dfde8d85399f2ad89a9a55cbd4a51165e66ecab5a12ce9358da9647b9e7ab5b7b715195df04e30957532981879a2d023100ac6006f138aea857a23c2e0796b9787ec908dcc791fd56e7844e52d9322a9a73b898ac2a361cbe73f0d63e3104bc5e9c0302047c435bb500683066023100cfe51d070e33011f95967f971da3525537d6e793e4976778322a04c8cc1f1f4df802e749f223b833d4b107175a3e0731023100f2b667e4fb9e8f631abca36dc41e84b88a0c5afc4c4a9fd1364c39b556552c675173361925d67c052e1e806283e02b2f0302047c435bb500663064023039e8297606e2eeb7ac7163fa9774ef53b8908fc286308917c1b42baf66176c46a7420b7c2c29fbdc46709ce52576dc2d023078f469dc8271998da0821e460982fbae34764d9727b054b89b87a9fd4a7616d3bb64b152d0d102adacc0cdd4a89fc0710302047c435bb50066306402305abbaea34a5bf8fba8827d01e494821339ba467b3f6bdace4a2cc955386c9b486360d142643d239c33942dfcdc82493e023003d4170a2cc847cbe7260de2f401262a90e15f55c93b7e505fe9401095681ec4f674f6cf9d5b278e20390ff42652a8fa0302047c435bb50067306502303a530d439f73fe6a099cceeb4f7a031079c93a3db4b2450007ff64f378dabfa6e18a083032a07d88b383fd907b67e2b3023100ae5e0f2ec4f106020be4a9884d497f3c9ee08c0cfa9792f691769edb451a0b3d86ee2ef4191e2555a3db4b62080912ba0302047c435bb50066306402307ed013e09c3c2e82b839bc8b2fa9e6ccff452b32d24cc7f5ef607d66d20785afd551000194aea90a837950e6f5cbf1b1023032d6516ba0b6b8772b161cd66695f7a193de0e07eb71b083726741ba0b74b51aa533cbf2daed77d0addb87893978067c0302047c435bb500673065023053047fd313068809dcb6cded6a79005b2923c4da5b9fcc27a4decbbbcf2d8b2ddd6acb7de74dca4b99422d8504539902023100be6816ac9df8303055f673bc68e0bbd0636fdb9cdb294568feb3cab6b2a664efc7a8975bf17c486c0d10d4562a8a341f0302047c435bb50066306402306ee2fcfb42d62303620ebbdcdecf2f692e54979da57db47630f9f4f5d9b683d6a65ea878cfc61a936f4df7396b05b9fb0230046bf787cba90b60964dad917964e603ad04e89b22b054972fc82857388ade687d76ccf8a2be1a15021be3dd6e8605260302047c435bb500683066023100df812ea80093da8229fd09ea2e9f5052a72b17ccdc27af63522c73ad9ce34574d4d7d3e70771dcf94dc5eeac01d30e5c023100f0aa356c31e9164d60223c87b81ad219c70490ccfc6d30da0d4d0b8191b990167fac0234cfb2849e42e988b3332cc7740302047c435bb500673065023100c59dabf5d27297e7015f9393a89bac6f9fc717efef03741553a5cbb51589c1bd9ceeb1b1e4e7193fc40c5b60ceaf481502301fce5980672cd5b70b0b101342c3017980d0fc0a4e97a48e4d7aab466faadc19ff308d01fe2d089b5176c755a70c8cf40302047c435bb50066306402302f3b593a49d672d59f81652aa7d4c40986a827518c8e853a208fca290179ca0797bd2d1fa9f841db21e31dfbc081b07202301cad1ead3a8e11a571c64f3fa5c785299ba66a285250e9676134ff7754c8d5782a2b30a32376beea74c38c0c88f7ecd00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c122289882b80aa15c9656abfd9694ee607f20a7c055a42c431b9be8d41a277a5afece1661a8815a82b52fbff7de7d03023100d1e5b8c25bf4df482451ab9225b7d4e2c9f817e2c957853b79e662521c808346efac5e4ef3ff2e66ba49b84cc55003430302047c435bb5006730650230428e66645731bcac2116d94b21a131bcd6be9f64dc54ac56fad087958e55f781a266ead0ba1174b6dbe969335991cf860231008e33e81233b417bc94e9a329d7c6d659d78c3205279f3ea7e5b6529cd853f2908b9d1f384d5c3d4cd76c12e76728dc0b0302047c435bb500683066023100f7869072bd7e9b667a90187f31cef71aab2bf1bff7d8e3c1db5fbab0c4d9eba85b60af0d0708194771efbad711f3cd6b023100e1609b098b8caeb8fd139d72d4063a316f94a39c53383ca6f562e482f471a344b917c51d0a5b98e3c4b038e1358554030302047c435bb50067306502310098964fd18f95400b40345c3f28e9ce07c6d9ab1098c8e619a305b388f6c1e298a5fb3f92397132e5e00d116ec1c021a602307a55ed70b7b3063b9cff77aea1cdbf6c3f8d5c14f4d19e90f2e03f5f9ff530b5cd5c733698a73cd31f7d981208f5740a0302047c435bb500673065023073d8cd5e68c1b396afcdafb1ed6cff215d500583c38985e528b79276aa988504f932c451a8512a7bc720f5e588d10d69023100dd12e82af16ce70fde1d4b016c13517e48985c744c4baa1882202dbb7b883c1ce6f883e1f7b01ceaa09eda90cb681d800302047c435bb500663064023047896e1e501b9541e5c3f08e44cc5f15d13300f5317a84d6d5b066354d3b833be47dfbc1498a3e757d8e42787da5589c0230696cfa790e2226d78e3759735b3bed47aaaedb25af783f88b2f9c5800fb5433f2fa0770426707e549ab128487a376f3a0302047c435bb50067306502300f6bb58ea46e9fdd3a2e7232d194c1e8a42fe529919e173784e0be42a9e095afbd0f01f30a380b74be2dfb6504b4d849023100e4e5cb0db4cbb8b2fe141d8ad0cc454b86204b0bd666fb5a3cbfe2da6d35ed27f74343900756a2feda2048ece9f689690302047c435bb500673065023100aad4936558373ffb8f84e800860427283bd2dc58b3721fc5b0150ebdfb4ad62aec6b3dd5929e892422917df76a4809ae023042807cc14019346110d9fbc2ac22b148552aed55b7ea34ceb3a045cbfaa2aeac386231c31edfde43e1c4630b62c416190302047c435bb500683066023100babe990d90a7791f8f491870ad93b4864ca10511d219f0181b7ddde115afc9167c13bf35fba88fb6cb472f4c1d8d467b023100e26e8dd756940fcf234e134dea5a38af8b900114b9857525be15d683c4089758b262dfc44612943d1b6a63e58f4b42d60302047c435bb500673065023100ace8de02c2f162f683d458b7be8e7619937ddff52f5fab8deb0998acc5b6b6793414198f21698a4bd30d6e7ba7cb081d02302f50a5b7841015e87d0400e28bf7347d00192b87e6407f216989fad4bf0b2e08dc61d0e97ac8922885826ebca1dfb82b0302047c435bb500673065023100da67f1c74893ed329e1954e3efa1a84bfc86ef87da7078c915ce4086aa4372922455a0588c6e2fc87bb287443621601a023069f624043f960f574c6d12f56492f1e6bed6040cedf0fa4a10afaf659d04f8665d27f0d26e691e82f0e4c20c79f756470302047c435bb500683066023100c4ae42f9d8207bc061fbc9e9c23dddfc47bababcfed92f521f6f6179f7e06294004b4224b89870aa1e69eb2d13c570b4023100bc8b645044b1c7264d5379b5cc9b2f1f058ef4ed96df026c597fa7efee84bb651c4f777a39d7ceb2cfd9481412e543260302047c435bb5006630640230069c300670db13051cb37bc7e5a3eef50eeb8a22db87cc31ba6ab94aaf991b5c6f9cb07b33dd745f278e1793fcb8aef202302323250b7d1b40b68eeda37f1db8ff6998a2131ae6bcc7075d37f70e73ec4c3ceeb5ba757f53542eb3ecc52dd13714820302047c435bb500683066023100cafba2074d0e9b61e7f71d8038aaa0d34a7c059b56058163a90dfac01c6ec2432f6b7bdb27fda95edbc881d67d63b8e9023100cab61df1a86b905ed88bfe58298b77ef370733dcd9b9772cd8badb9bd03c74ddc1d80f16c07f9947e8523d516bb76d980302047c435bb500683066023100841bf2ee5f727182656fa59aa9232ff0860ffcc5f17add2e00577bdb867cc2a9edf6eb848c97a3674abba15e7bca3feb023100ed6d697d9e73c35f58fbebf1e6a1e30d7899316b9e9c6a632402ca076b407a8b88fead3c159382b34ed128e94a9d16720302047c435bb500673065023100f6a0e084606c2cb7caa80b59628472a5bfa9d5c695deb384be0c302bf04a6ea2cb4f3d040bae28a232881678860292f50230722e4f04f791688b7f68a7d5c3dcf90f20369e7a5bf8ccbbc197cc5dce059dc2d8e07c41884d871f0bcf28e86b8795f80302047c435bb5006730650230486a39263faeaa8ea1956dab9c427cc0be2d1ecdff8f87309cb22b98c1b9bfff477d286d75b36a5d720b1e626ef926fa023100c3d9b6f161b4dfe8b1b2c0326b1adc61069332427d91d046f6c0e0a1024e32ff6ce3ad050e20b7ebc68ede6dbdf07b370302047c435bb50067306502305fa5df2587bd6d14c4cd0591e6c5184914c76a1d94ece8ea7a8abce66dfec3704faeef4f102683f3308cb7d6e2be551b023100c8de67e780d2a289e3e625a1e3b170fa33cf760a8f0b1f45be619be04011d0b33167316e7bdd60b14f2c4cd2771d31b60302047c435bb500673065023100c8df779c6b89eab15d6dd19a28c3c09284c420043e46030af749089d33612cca9c34f372c47a016871f7a170f39ca85202302a52ca7589f893ee9ef4d23595883c0c47239c715496317ccd3f79c76ca92df47a4c988b6a6b559416d0e6e91ab7a3b30302047c435bb500673065023036759316f72ed7d2d0f58814d8c63fc8fb480bd6c69a24236b2c89d4c8b23b66eef537f4121cb8c66d085e92f582f5bb023100eae23e50cfefcedb5924eb62bdbe890d99b8093fa17b2ba9a40451eefd8053c06c6d322b72418ce9e0a74d8463bb6d590302047c435bb5006730650231008909bae469b58655404f09419da1d21020e61d876a274ad35d73e85d5a6d7be6fface2297c15f976b02912c6984c44970230519370bf91132d1616299147f0f58cac19d22fec8603b26fe926d6335d66dd75a2b0a83ee20bf95f7e816b8aac0230dc0302047c435bb50068306602310088629df72e3046add8efccd8347762d105b5ee396345db1596acbc4b7eff6d43f9b80d13ab17473df0045902c4457615023100aa1b8d0358270595c934ef933cf05bc8519886ffe4ff0ceb585c6a40fd71bbc99cf11318946961707e07e4e5b42dcf960302047c435bb500673065023100c7267a08ab64d981ab2ac85f1ac5471d8eb1a89e329f0535b0a17a6b60aa06ce9dec23772733f2f9cc0c3766d02059f1023036662d0e143ca7736e1e317664711dc7324f3f56c5d83324909ee0c3c9d516f97121e2111165732b635e3edc9830605a0302047c435bb500683066023100dca463489fd8951379632c92599765d732fd55884ff61627bf6a0038a19831752f1f71fe7102b8100cda853898ac38040231009d9cad01d49ce8733b5f5e81232fb4fa621f7d3bbc89118b89fca8b98cdd7a67e30157639cb80d58ab2d3ab56a402b1c0302047c435bb50068306602310084a5090d5273cd3a10b364f9f9c397e87f02b3be6b3776393d1ddfafc37a4bac159ab9f6e0034794ce9bd5b59a95008102310091e9d0bc09124f4700a6cd225fb318085c2b5156db8fc9baea041424b4886a8940f74de95f8aa35c8efe642598ae40e60302047c435bb500683066023100af34ccbd6652c1f0af3a46a926bd05fb9da11afd30d7d2e0d08565910273f1cb6f18a03d1ee56421153f7fe01fdf718a023100c747b5e074a1d01fdddb8fbb7f22ad0d0de56c026d00fe71563e1078e70d127512a6632244c5cb394e7b9ff2364ff8180302047c435bb500663064023039720e2bc374711f83f5499e2dda765679c505ae5d4fc6a75eb3537bb6d9617c73e3387db542925a2250e1ca5d00fb84023075833c0c41a3639185db416c2f7b1d2cfb6056206b76884157517e805c48d7924b8bf1d0d938867f7607942fe399f5f80302047c435bb500673065023100841a854079b09ed88ac8d1452e2cbdc1b4984b085625d82e9752e9d050bfd7162e5095b47e4db2c9927c66cadf2827d9023047461ec65cf72815cb21e053ade40d9c4f3bd408e335c2ef9a0760fd80dbb402354cd9d8ce6f33356da8b0b200b27ce10302047c435bb50066306402301b5c7ae6d8ed15ff8270577825362ce1963c32b720114780f9d5efc435918d8e2d8861cef936a66e919d480794a55e7402301e30184af84a0dc115acf03bfb66a311ef95c128eb0bfa12c0ce3cc8574296a0e917a299280eaa564a3aa33aa702cbdd0302047c435bb500683066023100dac7fd9c7e6b3f4f7e56b398dd44fa2680e0ae2efd58b24884a85b31b74c295536a6089799217e80836f550b8f85a716023100853c9ab3ee7dc4def3cb9637de6ae2da521148dce7453bcd9ab76c5f310bf548dda097967a872508c05a361feadfdfb30302047c435bb500683066023100efde58473cf3d29788a1e2a11892f4d9e23b784514fa48ad43b86b55928bbbfbc881c4cb679b6cd0816b426bc95c517a023100aa467af77527968f1bd00138ba24aa95906a72a7498040f08e2355fc8ffb69700668665a0b4d70a22e827403f1129b140302047c435bb50066306402305e241fb1c1f491b4b4bd3212b35fc6860de492a8152b00345ba072a5688bb09f41cf2869edf29c9ec048209ec04f51bc0230364023b658c1e39d0c1b9295c25982473a6fe4141b14722cfddfa5a7936ec8d9f9b6c745f60b84a7d08d1f0050dfd3f60302047c435bb50067306502301b3145d53ef3487adac05541de2012eab88ed4b3292986e40dda1c2ade3e415589376f6efcfc50ca3bee9f35c29d1eca023100f09cf3befbef60c4c432a88565b9e777dd508d2b1f8a652c2ca94948200058ab7d0c949cb5b70801f986376bfbcd48160302047c435bb5006730650230752d088661b10ba414eb2891d0a1d8cdbf77f06ca7d5af20d7634b3d832be453f86e40c04efcc0201211a376ca8c5f35023100c7be0c0be8db00ef7c7f4725eb62f10e67d4dde72e80e122b9eb2a0dab9e5531da4731e7d1ab1446d41e6174bd5482400302047c435bb500683066023100e7397d2abd56a40443c1b8371425651c51ffb27abad7216bbd0d89114597b0e4e6dda7d457d0f4284d7571cc84c87264023100ebeee6ffac045981b7a40720fa9fc517aba82c93c4de155700b096a94a7435862da875c813b344f14f2862f086998a250302047c435bb500673065023025c22984011b821afc1cdaa50ca9586dd6a4b460eaa7cc59d21ffedee515e7341c89c3622d3f74347c82b78d293981af023100aac20411d7ceac78b3e2eb75951bfd844e72fe4484b56246c6fe6ff702376b478cd283662c43f2f4716c62c44d2c05050302047c435bb50066306402300b75254dfae699340036073c01db7b208524c022550cbde2a01d562a4af6e537daa2f33fe969ac3205f9f9f2b6d8cbec023042add6fa92d097f9ef653d11974eaff3bebed930fce87520504fa1b76c2b2483225853eb6cd5d583fed4e37706ac3a5b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300c2b25a18675b6fd5eb9dc8910207479b7476b6a8958b1eaa919214c6d6dcd5c9b8929232bfb93db2fb2ec09bdcd3e6f023100ecadea1bb2cae46408687ee63503f0aa39f8f63ffb1e10c3f55947552e139dfda4ab4a2dfa808882d778680853fe90fa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d6e483bddc191028b9790fe853309d5d6270341cc180ec673e6f42a654fb52038afb99e2aadf9026b21a102c041a2970023055f840206bd1c9bc271b6dd26873436d01f8491899181c1a3c62ba307cb2398b7ea807288e5a36c42647993fc812a62f0302047c435bb50066306402305013355161cde55aa840b37a7977635f1591a97c798146520dbe059f707769c7c7810bbfde2e83beae8797b2df8e4af3023031b7b8135d36bfe86e1d7882cf132d312c74c7a1d651af71b578450a56e5c0c0047be7ea7d1cf71feb485f4d0961adfb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fa2ac98b3973da8d7495bf768627c444279e077c874fba324711faef1b2c8b24d780a1f50fdc08f9822e91e1a3a18164023100e62b17d752d815b023b2fe05158f6143e3b916c46282311eb961e8b5ec89de918953ee5be1c45e210107ecd6aab0e3f60302047c435bb50066306402306e91ff3ac1da79315061498446ed62676b86ae6b97c8e62efe9b781ffab4e5b8ea91038f6e240337bc82a05889926bbc023027ccca7ce5070a352506ec1b44d6486607d08d730da8e4aa9c73290cbdb359baa6ed21cd13fa0d52f3ac53f0bfa5f5850302047c435bb500673065023100dcb6e97da25014858a949f767fa6d5e0af9a9c7111c19bf3cd5c6342faf31564beea98faf6a259a28796d5c9b5259c7c023034d64b1ce018531b26014c380528d6ee6d73ecd70919eb3565a17647e08d69d1e9c3bfba38b62241ff05f492865ffaf20302047c435bb50066306402306e7831d401d4e40cd8ae566175fcf6b5bc9769287d43f66db884e2591cb2774f051d1dbc13adcec04ac4b119dc4a45fb0230663d6ef654c49d03359919659bbc8fe5f43d457aa1cfaad61d0f67cbeccba310f6d25f90cd80557c9ae35258da10c4ad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230496ebde0ff0762b05f0e8b1abe7c05ddc6fe7bcd5d44e3a902a6beb94941f677ad7df2714963cccc2f1b172e9271723a0231009a9a63c29d8b5311ee020c2ef62aada9b21f87c13dd8a45983837e59ffff56a3ba885f10d0b64b90a9de8d3e1fff7bc00302047c435bb500673065023100b3c030b26ce225c416daedfdb6898f07803719bf7b68d9dcd0a8df28d815fdf4a9ff7cd755c0848dd1a12710689b98ea023061f85ad16186c516f4409b77255ab7ba8325274d74d0e0334c88ce9155ff135bd911156bc3eb418e4a2bc4ba097892030302047c435bb50066306402301a81e5f860492a90ac53c91d0af56ac1ea2a8c5642a26c07d4c7b2c9388ce166e59a65b98288b1abcf86f2233394da70023038a20e4bb6197ff786d4817aa7a764c2bdd8b8bf47fbf8d3d729c80066d0fea0a04178022c4b0c916a613b88334d2d2a0302047c435bb50067306502302cad7aa5018fd08cd65b5ef5b1237568586b3937b447cecf0df753f869bf6839b94303a788a4a6c39d95fecb9c215c75023100b0d05403c60cf471e2cdb1f6ae28698503363f970e94886a215578391ab18550f4f435af45aad71aafd2c6dff014b2e20302047c435bb5006730650230789f8d3c228255281ccf741f1b1db8a4927948302b7ce35113f5abe778403d1466929983a57d5ac1510851eeaaab2a4c023100a71448dcb610d2bf1efb352a9c754dbfd5e8976649ae10021d08293c85d03b3df56e17ec4ce7094941213a7c3e2c70070302047c435bb500663064023011d0fe6bbdd8fb4b9faf81c1cec5fd3fb885b5cc4af48635a04dfcd4a719f3db1b067465586ced6b833455bb67373eaa0230261f51e58f216d4cdbf87b20ac4ece28bb2a2c534eaba27ef23a1fec2e1a553a59d915b54fc4149e8bcd7eaa57cb52830302047c435bb50067306502306197543b7c2b5bd85d90f86701d423ccfb3c7f789b046f0323094e6872127ea6c41fa82843a818c3b9edf2d6d70c00df023100de07ed85a77055a82521abd6225ea29d6c23c82f0f644f9d28ee058490675177eb9253f5f85a7ee1f15b19ae912f1ac70302047c435bb500683066023100eb18564f71470e7d6a92f176af18bd50bb514f0e2b53163510d1d166ed7f0a3008b69ac80a0f5e674df3161dea0fd47d023100aca37a7ebd8dba369c7a90e1bbbddefda38959d28280b901e8b35f4a0f2c0a7ffa09909838888d856542f4e38d2bfb450302047c435bb500683066023100f286d41dbc2599938809b19ef3bb27b47eafc314f175569f4c99069c0a6d911392fbb1ce4ff0129558c0f6921eb58c52023100865c84cf15f35b308d5358647c886335a7d72ecf5c1ad4f11c84d0b96f046ff138deec6ecef553dba46eccad2bdc72c00302047c435bb500683066023100c9d3cdeff33b9720fe8a2eb0c30269b3c7e3eda14890aee80f49c63ccd32b21b3ea9390bde622982f1b002f62fb2938e023100b3bfb0d2f0b0b67194f60adaa0028943c084e0e37ccf36b5149829050d9f92b7a03f15801dc8a21ccff1efb67eca54b00302047c435bb50067306502310081c01a174d5ee16f729845bf165554779a0aaeaa3863a1a4026918a23ada48ae47255c2329c81c3bbf3a679a3889f48d023073cbdd678d9c1222d4dc70bba95201d794f347ff989e65b43f59a7e4b6c0945de3a24aab274696910cd0b13ecd0294850302047c435bb500673065023100cd6ab4999d94d85eb6e4a6f108e9c3965a1e31d1716ae90d00ece5cf8253d34bf9d55669db77448b63ae117e3960769602304739d340f881fb5c540a9a620233ecd13e5e0c610144e1f21034801bffcf750ad24edbe55aadd689f0b767817d37e0ea0302047c435bb5006630640230568e30a30cdbb2e48c0f9147f40dbd070a4b2b518987c2e4499d4b08057029f574ebe86f6e6eac69da052428a0c5969c0230795166453db4d4295cd5be0d698a1985a6e2615ca2886b39f904778c872e49382a69f75f7fdb8a832dc6b5b3a44bb9120302047c435bb50066306402303336778db562f15cf4534b3e94c224ca71babc95324d8d562338411215dbac8e249a5ca6e43aa6747225a9daa54b6c04023024cf315705191425c13e6d36e67696b652e79728deb5b7a4d1363f888da4f935ddb8ed8c56fad569b23d55095524a7e70302047c435bb500683066023100dfac318591c3fd0538bc8abaa2a1106c52922d88fe49f66b356ec4a3eae0d5324e6132f8293eda9d8fe38f8d4078f9f7023100824ad79a29ae58f1a3e2c647985b30839f61d9c590455252386bbeddcbe00e1d8945c1da416c5ceeaea2ed299145977e0302047c435bb50067306502302233921fd1fe8e46dfe148dd9901e41a94d66e41a5f7d1a5d7183c0c271eb9b5643d433e76f999bacfa2c8b3ed584169023100db2d9a072a9be3603a610110e273e99577bc313dc1d930222627246b87be53630a65ea29062abbfaf848fa9c0ddd99230302047c435bb50067306502304f545afc539b6528d94968dc9367cefdee2cecc343280d2b15242f93be096a236613875c81bc37f8e40570ad3b585e84023100d70ed3479945907a8430e096fe6e37ca1968aac4d3e5a453d70f3cbc4558544f63bc87792d9b20c359f93933334d46150302047c435bb500673065023100b47962a4d0ab8b0c0904ecee4501b580afd83a9f5f869366a2d4aace15276c64c622ddd7b3be983378fadd6a022118d10230118f064639716de7417973006d7244df0fb35bb6a6f2e2a1bc3c5b46d2ac6c4655f2616b9e41ae75c01ae0b4e9d510060302047c435bb500683066023100f070ea76972bd2a56031f7ca9e894d59124fe37c0a857fcddf19dedffabdadaf78dc7584bcf1766c5cb26867bce3fa00023100d41e5eb10cabb1538d4e7bf371784899e3dc5809d029fe409d82fdb732917863797f1e54b5d8d9ee182d1855f68ee0490302047c435bb50067306502300ad93f10465ec13b61521f46bf8b5720fa05315e372745c48255ae129f4f484704cfb68fd1fe5b0b724a8e3def2e34d4023100ceae837db94fa9482bb6fdb56fb8f5bb86473e5b9ceb581be2c6747bc506a21b8b69be320e37d2dbaae169fcafdef2da0302047c435bb500663064023037ff0362cbdaa83fab44d16fe8a61d174807492bdae5ef7e4847e89d1a122d274c2b471153877cdce9302303b26895e00230462a5c8b25953c040b4079dbb4e195a7497d5a4600109201ecd4dec8820dce8ceb7fd81ccf3836494e2477c6b3f8c7e10302047c435bb500683066023100e0d6d9908a3f0e029740322433c96c0a1ecbcfb1c82e04c67bb5aef96a2e039f53520852abbf6ed439b8bc20082408c5023100e3db41b3a5538b2f09d392c85a6af5fcee77e6df05fe3467b2757856c4f988718cf8f4189724135bceab248d65a572340302047c435bb50066306402301aa296be2c7867db08710014d85609bc069f3512aa3f6f722c79c53fc524866f19b83e3cc6d6f26e086251223ecfa0ad02307c5a81595f646090e2953669857f7a74e8d226d431464c0c8f5b360f1f116bcd6fd95918182032b1fb416e92ecfc3f930302047c435bb500673065023029016f060e8851c9d23f549f350c76045713ba37f1f8725a0812e0b2ec0d2be727580e8c84fbd10f707270458865656a023100f386a2d686eb13943360ab66f1ded55a9209ff148c41b82c19bbbc7e74ca8119ff99e042ec866c75e74913c1244224880302047c435bb50067306502300fcb9886b7a347bad9aa43ad648de4d79c3a2ec593422266620aca3819210d2b54ccdf1315d3be6d422ef29dc9b9ed76023100c3c872fb3f89a3c0f188bb2ace78bfe134ee2e4ed3b1c806ecd8e75503cc2ce9065591b0daef1daaa52aadc8ee23c91f0302047c435bb500683066023100bd417109f5de788fd0005f98dd0e76f941d54f6edaba7aee512e648e1cc0282abb95f931477be7dc8bbc0f3c244c4a38023100b0992cc5245faace3722afbdf46d79cd5008930b6f6988fb7f67ad8b425888c6144936321d7c40ed6abc16d3b314d4530302047c435bb500663064023028248045173ca9e5559596ee0904e6432da652b5ea59083bcafaa66d6f456f115aaa9a7cc5fd43be00447340d100614102301e540d2a62380745c0456790e47ef48c28e2c98cf946ed00435d08bb8576d9908227df6fad4704d7d0fedf744e21dfaa0302047c435bb500673065023100e84069b63ceeeda7c82655c3d826cebb2c7c8e82cf4dbd29fc9e18513c0c5e7162eba78db69215d1165eae693a30be3c023059420726e032a8a021f73ad6d6285e2dc7152c53137c0fdfb000111b67a29182563fe66669ef8249bbf7f17596b213890302047c435bb500663064023006c2db5ad4bd2ae875fa7d9ff4d1be973f81571f6e53197953dc14a810ae8ff03e818b50996fba27e55165420d46e6f30230311c81d9e43322d9c94d1e63407a8bb9a9c56a7076bec024c30f3287efb89be1670c04a3dd38693a663ae535a2c25fd20302047c435bb500673065023100a057e468c85687df5b2eeb0dd74cef15fc806e0585ed332ed8cddd12f283a0865c252c36d629ab27c9926fee7f0d355202305617ac24127170b6c3206f01c26bf1e5d8afe85c09146ed0bf02a3363f54dcd5e39a8a991ffd5bd8d26d8f33bcc2437a0302047c435bb500673065023100c4d3f94a3b27ea12b7c82e71ff17309f68c4266ace457ab75db21b9062e004250a2cb149c96a3366723902aff9dbd50802306517bcfe75b4a4e8ff9795a01391e43ff2aa7bf765d1b87abe7eb36cdc11e94f6f6e93c0f05c5a8b633ae87e6d56fd2d0302047c435bb500673065023100e7070158fd7f94c7ec8409cbfa4a7f70348b95913cc48109b0187244b9b25365410840dd0e86ad6fe11775a51f37849f02307facd03e6ab152495b4b8675768107c9b486bfc4802ea48893ae57b505b4b8243d2ea7279c484533137be5a7830c44920302047c435bb50067306502303840e806055a85388108f8b1c04d2cc6a175fad7945d6377a4d669ec0a8ca3995de954ca81a57f3503d77612ee53fe0e0231008eed1afda07795cae14ad5a5b9a91fcab84d492779ba7e973e3bf9ce0db9290e9e2983ecc70ab2eeacc0be70acc4f9d40302047c435bb500683066023100f1cd989d6ba3d256f8b90eabf7eb7f9cc06d8657241d095e8ea067cb2177160b5ac37a89a242863f6ced7e3f9e1370c1023100b7012e8a2957127b6f430e0b2deba2cb17976f1dab68cf59acfa5bd29995bec3a9568fc705c43116671788ea3da3d5750302047c435bb500683066023100c3b101cf2471bb6067c1cc4035aeb55b3626fd95cba52c735be03e4f89f95168d53fda4d2f2fb52ef71caab05a30f577023100ec89ef2de35931cbec79c170beab7f2fb10a83daf571e5c24eaf804849f5713ce1186a29b0e18e85d8a67ab2b30b37850302047c435bb500673065023009264eea31ab15465ae2e08c7f7efdbdd766792f3c940a8d734fd61bb21230ff91c82744fea22ad45c1f37fb8bfda77b023100eca5d084dabc5f74a718fe4e798e37bd3fa59b77ddb9e767a9ea7f757e011327ce422842cfa3d138b879e56fdafff1980302047c435bb500673065023100d3322e0909161378686de2a6400f9ec63250ae90f2668d6bb6d2adc1e7983b7286179d42c2c88a6bc472b6ff87682b680230479cd9e52fe936c30e417fa2801e8103369f866ce3e770415798c9aacbe1b5b40fc235f3173b7d2c2ecc14a7b4bc1cfb0302047c435bb50067306502303976a46c347260e900efb2c5580840c888c49783cdbdc5254b061cc817e41f56031d35a6b513d4a5eba469a34e117592023100ad3cb9cd6f8b234e959218519b99b4fc4b748105d7fe55aa4522e9a375a67584963b99c665c1a9180b1cb1ab33ca0e0f0302047c435bb500663064023052f6cc05f63ca2b76177ce6636d4878d7d9e543d955e247cdd458128ff685e00253f08e0c7c9772809522f558764afd402300767d0ea566f0a551c08310929a31e5f103263677521ba4435ae3de314ad9a2ea40e888c24f8fbe684280fa115c0d9200302047c435bb5006730650230296533becc39c139d9fb59d84fd25330ecd5facd0664c686477bd843ac25f8da1f83bd9e062ac1a5e05848994cf70298023100878971aa6d70d87f236593853e80b256ea73cf0542f0fb4a26359c326001b405edb695bb0045fae78eadbeaa060e3e240302047c435bb50067306502306e2bb7ff50bc1397bd7ddd40bc592c50512f0fb3a5f37c8fac8404812445588744c21354627c950e2be7e0ce07e72ddd023100991d3561ff33e3e2355464169472f0a32cf8b2d0a29f9f8fc3d72520ec499bca7a80c0796b472873a8fb5116064fc2170302047c435bb500673065023100b1e6c3a6d273496097e131e32121469023f1eb08067288db5e358144bb8ecdde8bc696e0ff877fe1c2b3f4679637772c0230040e44de5a4b98a042b4e0c86972d18456a9de79fc73003d908a706504b6e1a8a02ace67ce7769021a274a5bc402ca250302047c435bb500673065023074fdb15b4128d6272515c7db795177ee915dda91be3da1d65e7fff85e8cc53b25f3ba8c773230351c82cb88d0c966d61023100a639b9f95b3f1aff1efb5ec6742af830512f2ada79773a2b17a76a443771bbf8c24b488258f0be5266941489b4c65dc20302047c435bb50066306402306a54cdbc53d572ce5853b0bb5b569c906c2ae21e0af367da954ed24a3c964ba1ec4699d04a41657ae324c9e7033de996023001c9f63e20a48a37b87e4fad46825e6d1b0527e25a704a04c92206d3fbe16f748215fe3b492880dcfa1c633a81b625810302047c435bb500673065023100a1bb88bcd9ddc87a9fbc09451d4dd7afc234902687b24bf6352f3c7f8873effda4c0cb8e042016449400b58b0b1e06cd0230017bb34bd96a05f27e6f5b13b543769b9b1e676b26f5f7db1a391e18d55f8b8d3478d7c3c8d2d9c52255d2f68268862f0302047c435bb500673065023100c6a117529eae9c1526633e2c53217c8eeebf0901d5c6d160f2b9adbc1198ca2f832af55735898a682454c238526db9bf0230021100eb069dae99c578fdd9cc0b23c5d28655fc2a09fe91d515741a7ee9ede3f5b8d9f18b0c3f630039705ea222ee350302047c435bb50066306402305857f9e0ae86ded024506db278ace4766dd12f1539fe750214c2fb90aa1a2cbab38107f0cea9a810582bfa0cf83b89f3023005372212db402600b54f39f4d9d02c9b20e4687f4aae4ff652a5218c7fa664ff2d932fd0ee0afa9d2ce93e0c2d5bbcfb0302047c435bb500663064023068de8202ad481cf242dff41b9d39f65c15213081e54775d49cb8b1e641074ff6d1cff2a99f04c5f9b575216c2ef0e383023034676acf56a445414bd0ea21a466bbad73644d71c6b784871defed16b6eb905e2d966786fc652f8613862058934ee27a0302047c435bb500673065023100fb7ff2d6c283a79934131ea1fcaa97175fc46291b84a394d0357236e14741d824a6933ed29dc8483b2d87a35e391e96502307a125ff1956c142aefe34ea4394fcf6be9843a580dcc2f157e8745c94320315feec64bcfde56cc01125054e014e373540302047c435bb500683066023100fbe3d78f39c138be56993e119d9b54df53f4c9d3f8f566879efc81c8f5a0f6517448d023383a124020b3b83a16251cc10231009529bee7875a01ffeb6efc9ca6953d27e6ed1506b0fc3d6fe69d5c8fafb71fab8bcc254dd7159b7add767ba7f8660d890302047c435bb500673065023030c30e2d4c498b9336580d7c0726133f70f75a18d627e7e545e15500e92a70a763cb5612d830ac3151f8d7c90764dc370231008ef581a0eede2741be8dfd7fc15169b005195417ce70f0279ade9566280a3126083821972a4aa69f75d7ef6f9f241a020302047c435bb5006730650231009f307e4c3c5d3e3e817f9510278c62ffe6716002b2ef0a9f3993b0579d97567f28d5acb805770d1c61c422c218a6a37702305bdd63fa6ae2a4fb9f13b01d10fe4af694c7c46ec7b3d6bc0fc914a206facac9c6627a141d0ded14c51f59afe15e498f0302047c435bb5006730650231008884ec2608e2505cc6b073f64294a8a79a9d946763df3cec89e5e5a44bdd937905a4c37464bb28f177a71b4c3ac3e89402303a255cc638da0cc95db2496cada966f148a323badcc421226f8dbf4eb56efce7eb8fb9760ee20b7c327642f63b3430f80302047c435bb500673065023100f713857deeea5dc868dd79d7fc4203f2e739fb23eb9b01399a9c49cd86875b8cc5864b3a785df6382dafef0250d2ccd6023051ea5fa26ca72fa55cc814766b60599a7d576734a78a7eec74bb9ed3630bf6cef44a52f6ad7137c579bd9c0b7f9d81140302047c435bb500673065023100c825f01c41f61d4128b68deef53a69a22e864dcaaa7e350a0652a10a43dd85f71558eb05fe0fd8ac68e788b5417d257c02303e646586f4817f689e5ff1ca6b963ea67ce2222d23f258a4ca7e196789c0dfa05cb4c4914f4af2962d473789b30bd0a60302047c435bb500683066023100db585a6a43be0fe100a97eef36137628501fab6be048687063dbec71ffb9c29484e166caa113c1d0ddf721224f7b9e3d023100d01390d832c8d9750d84eac9f7a30eee4a27eac09d1dcf136bef932bd7d1be1b8a3eb5b5db9263272779ca73678f679a0302047c435bb500663064023048bfa0c97412e5b2374a6affa453039626fe99d8aaa1ec128af3ef83bbe095b6fa2a3c83b2a7a7849e77fef2666790c8023071c056b8c765aacddfca2480451284be44ad29b825255661a6988347785f9dde9a3e73b58d1c7165c1a236c3fff45b8f0302047c435bb500663064023013056676789bffda018be5681334e45046023eaeaf2adb6bb051e30a4e97522f15ade2b2a8237e360c641712c879b22702300d323e60dbfe574ccf5664f9cb3513d98b7981a63da49172e9fdafaa44d180bb4bdd1ee90f5e0faa7e101b60205d4dbb0302047c435bb500673065023100c212416345358196a03b5fecb8f9f39d781a25a562ef6bc969692d2a544a46c2f6f93d866a339df52bb63480627192d002304e3408e78eec507034146ba637807ca4f669c464f2fafc8ba171f1ac3e8af5103551ab3c2b6ab19179c2f52048a678b00302047c435bb500683066023100dacad83da20086282eeb65f5c5ac6ec18705c2f2bd4e08f884cd073ffd01ec967447550b360d68faa75f5e5d5ab09126023100b455c1ac8e6360523049ea49df08e7327f94e5333da684782b0df7f807c1af0ca960ab806eb00e305a9d85ee77de979e0302047c435bb5006830660231009c11ea7787a625e07b930a871802faa32379729a594da4f1bd56c027e5a12122dd5d699a679a33e839d70a24d900e7ae0231008adabdc5db709ea8c57f45df2ba35254fc19792a11cc0970d052748a4f1a2bec2ae508851ea354d5f746a969e58b15740302047c435bb50066306402303fa6ff6590d0eeb5058c34c341f7283337855c1ed4cf7dac1c3825b962cea141f945a2e7b086ee606d703be750aae15f0230250277775fe03801638de322ec2b1f99cd185fcb0231ee94e72138fd9e4928d45bc40c9575aa876c1c8a14f7a1b2830a0302047c435bb50067306502305ca24f407013e6b66341e061bf83d16e26201446556945f8593da520c1fc17fba36ea3439af37b09bc518139afd3daeb023100d33f3de2b15adc12b5740de4f1ce39282023fe961b22a13a46ed3a4328eab9cb7bfb68f8850b89c35cc7b91e025dad510302047c435bb500663064023059f764aa971d9d713b829bf7682a334834bda63d4112bfe88d08ad47fa1bf82c401d7f1162fbc3d65c7f5ea5ffa033f20230060d631c091426687c7d6fe5ea32d9443abe536b3de29add7a47359168645b99361eb5a92db7a0bcbdcfe8d65eafacd10302047c435bb500683066023100c45a5fd5853f6b7a9b25bedc0da3d39f6b153fe323c78b9c4f408ad19e6a157f4cdb0d663ef51e3164a5e8fdc897828a023100e06620ff16866b4586e539945f530ac44d4282a74cf50035a88565af41abe8dcaa7243e074e7478c83d7fb7ed7e7b0900302047c435bb500673065023069f50ce3ecc4af91194f52223b34a8720ed9a784d18abb3ace890ea56e86f2cc590082e315cda9fb3e8bbe52250ed1b902310090a76825e1d1c00804bba92a15c5c1b182f979d3f614bd8ecd8ac0bd583c0e6ae8934eba2a2a2832697b716bdb332f650302047c435bb500673065023100b0d8fce4adc87b22cca3bcab75fb9c95afac6ccf74ff284c92afb4b9284f25701f139216853dcd581cf5d3d12d86b10e0230181619543a6e683fb53df726235309b2031b3346161b172f2164ae76b071107e561e244c34ff5e0d63f3943f823fd2340302047c435bb500663064023062fb77abaaef0b55a9b37278c183649c8cb8a418d05195a35b27a493dbf3e15540da6443c6995155a405f7d5c1c16a630230186dd333c9454bf9fbbb5f099289bc6d1825a15a7a8c32fe56e317259054ef30655147ee710227ad2b4fb1df02ed09160302047c435bb5006830660231009f937d6962f02f8de2d0e3c14854ad91a6f1cf2f9bd381c681110bf5477419605bc46628039eaa3fc255f1c84f052799023100c7797ea850970347ddef21eed43ecf9fda3ab3c1eba782269fea5603c5015ac5eae15ef12579b5249d492bce1234da230302047c435bb500663064023005cf4bb00910cc4d2ad00eb203d09103481dde07a93413b56fede590010e868f7a38a4cf3d0066e23e13dc906122d88d0230648b7d6f42c10f142fd54b01f3f1f0269231aeccd29bcb86b8bf86536b977da4802998c6617c4479d734d94d0708b5a40302047c435bb500673065023100fee3ae2da64c910fbcf91321dbb776af482c82b5ad6642e26da6d1cf48a81616e192622469ef0bedad269059f141a35802306e3fa930f44556653c4a8a04b933663a1df544a2960e67a543933baa535aec937cad11506cb4c2d0cfd34a7223a92dff0302047c435bb50067306502304a06fb615d7d66c25fb2815e37b22947ebec45c632163e3ff4e233d62b993d0a3d7cb74f1680448dcec66a7c6c2aad81023100df74d5f3b85380c0e94ecada07037fbb809afecb0fac4331038a4a1b8520ad18e52df5fdf275262709c0a8c83b6dd47f0302047c435bb500683066023100862a3f380837d3e92a1ea1a9e2cccd8cb8745057ff468b00e7c4ba4301421735a4cad450a53c3ddc56e93894daa58957023100d8dd3851c293045b045b82f494643096a4ad97863222bf05723f1cf5026dff9436e562b418ed020c5c2cb1a76cef3be60302047c435bb500673065023100829cdb8e7f68adc313560fab76f9eb03e6de9c5ba9ed5cc3bde90f1ddb5f23d805c8d1ac16f102ee7bf103123d5175ec023022f57f995231f51036c74ccae929bb4f42039c0640ec5d7f470d9ad6142086fe11a590d1e5b3fbafbd5ba5396a106cd60302047c435bb50066306402301dd3e9a5dd9dfc545492115afc380289187e4d9631afb265d632ece50af5464ee6c926901ce9cca06ee150d8ddc7c7d402303e7e40dad6d5dd3d4ff9853413dfb2b889b869cc55acaa242d6e3d6f2c869724da0aff2592fa30278f4617907297c98e0302047c435bb50067306502305c7b6240146b217e5fa832f941f9132b335e6bf5f79ade21962c9764ffd6df6db8d7174d148f17a7bcb10dd3387ef0d5023100bb66e6af935eaf0ff9e1e2099109ba72bf549ebaaf792197176150a88f9400d904f5352a935e2c3093195e565030c3e40302047c435bb500683066023100ef210a8bd60ea0a5ead833844aacd30208e5d88e36303a3f72c6f573a3e23b1610e7c2ce90626812761824169a9ccaf9023100e42306a5f10342e20106cd34a73047ccd9c1dba9153ec04b821be47bfc9ea347ece95c480f4e491fe189030d415d6b7a0302047c435bb5006830660231008fe2633a1471e69fadde361ea327f3b2cde80b6a74e8273e1e54c922fe8b6dcf9a415a37ca4557f0ef820877c6b0ebd20231009ad91b0e0cb17e451d1a27ae3ebdfb308fc22714d313c56a6bf2a10951bb2f6334c17e4b8105ba922c28487db76a01580302047c435bb500663064023048379072dfbbc9dcbb8aef1055cf926d58ebfa82ac444a8df73c32ee1171fd7faac156f5cf55fd80ab5cb58aab8b055e023019df02bccb9a85b03dd89be21d508a3972d113b828be72ff6f5b6d13c497e7a97f7eef4a90ffabbdfa8d49e1cab6226c0302047c435bb5006630640230237f8d69ea1dfa553f7d77109eab0e5c850b2e56e44bf580c9db8a60b2def424a7a6e5717e4b59bdc03d45f07a2b93930230258fd97751351ab03ead9be01cf6258cf4ec0c2b2d67e26efd527a789ec9719fe3e44b2771b3648d0f66a05b2cf7bb180302047c435bb50068306602310098e96d3c8241b4d765cf47e9aa7ccde92785096dc892d3ed96ad470e26e01b1b34157b477c073aec503e46f5d5d95642023100ee05b59fe03bfd73f77032ce4cea993b7322495c7ba9da8f3cb885ec5c773d5ea12c175db1a195aa8b51b4cfac367fd10302047c435bb5006730650231008998ea63679b83fa16c4a631173a6d97b9c320e5d9bd02a52ef363c00d0b971dd1e464183fce32782a6f2995936af037023040316911d3c8793dd7f2b8dcb5ac760c13db09c198453ab8c353044538566467988c30823c1645c6296dc0057e75c1850302047c435bb500683066023100cb5525c9573bcf96b164c7f4fc9fbb076c10a02ebb3d4a7799cd393915a60575319ef8b517902a28a0b767418b014290023100c17c23db4d88cc477ab109da0877dba2ea0e48ec9ce25f327a972b300480c759856bde8ae7aabfca445a189f8d08e6340302047c435bb500673065023100ac3eb0e300e74ec278088ac2a15e125d9e72946dc98f8b45bf20ffc49dceadc840f195f327e7c44124ca9b5fd3d874f302303207039f70fd382d6c7f06151a4467315e91f2105850f4f881ef847d8bca830b44243df808b83027529b7ef26e5c42bf0302047c435bb50066306402301cc8e120181a5fdb17802a5b825392edf4ec230639be4fa39ca726ccc9dd938e71dfcb851939ac3804d5e9e5b6ffba100230488b4a52ad66ad6c45ea035f4c29fb7bb68f9ef1ba3cf5275ba173c532b1883f27cd933a2ca31f87ed079144c8cb4e7e0302047c435bb500683066023100f1ed1dd4ece2182c30a803da235c11d3535611af048f3f3f8b214b3f9ba5fc3e277ffaf44df8166d11c4d8442bacb04a023100e844b7bc3b619716541cf060e3e430f6598f5b861ef317c68b7daf31feac587fa761f6b4d02bc3dd4ded5da3746731910302047c435bb500663064023063c1982d5d7f274fc1eed6296a8b398e8779113925730719212eb593b37503183d155b2a9444c4d943cd8e8b9479cc7f02300d32fb4e1f190834dae207f1db71a13f055b6b9bf34f3bb5d0407de88224f0e0cb3903f968f7724dee0341c8d852b48a0302047c435bb500673065023100de2b6842350b3c7a4954badfe5ec77785bf92697d270fd5aab4e5905a010d50386add77d7f7c89a271a4a55f001a5e9002306985360f7f9cd818af71a36a4cd0a0ebdbad7a2bbbafb64a08fba479e5bdf5ac6e185f0505b65c65e4b8285bddbc6c7b0302047c435bb500683066023100b594b13097c6ca461e9fd068cbf6075c538a92bd29d249d8bc3549fe8c92efad76e55c536a5c5896bc53b26a177feb5f023100dc1513d79921e7bf7d126200b7b7f317bdc5d054f20189a2699a78dbf98538c4f78c284a4aa87a31f328b17e6593674e0302047c435bb50067306502301bee15a71c82e392f32ddcc69c8ce9c9845a155c7018498377ade9b1e09d334e76223dfd42cdc4e1a6e63e4cf510c66a02310081cac908206ed658403ded73f5fd6baf5399978f714fb99de63b3889b63423072d9f349f2be12eebf29104834fdc4a960302047c435bb5006830660231008a180ffe4f9e19d45f460ef0e9310791e59b670c6088f152da29b262ced913616426ef2c2ced94ec6395e94f40aa61cb023100f9fdf19ef16099f5cfe668c865d14e98a14b724f9617f51af001f8debb64042dd412e6799bb450fc0a061df6452bdc0a0302047c435bb50067306502301ec27a9f28dc42fcb5655bd73d402222700586d8046dce2616635a5b9a06c9dd8bc7478f729f46f349f56b37eaf50ae50231009311ee745d95a3a36ce7c11c3f2dcffe70b941e85422d3c919fab44aaec1bc156865d8a447353443675296ee9c4e4ab40302047c435bb50067306502301ddd81e3541f21dd2f4ca3170cf909044c7014ce5b415f5f616fde375f9bd45a234bf5c4c06075ecf5a0233c4bd8df02023100b9fec8ae0c9dbb8cecb81d39ef4bcee724fcecee456c0f25ea4d58084833187d73b98697ea32558161d62ce6677cd1340302047c435bb500663064023017a9df2c7b41603322a26422406c438f867e98010b55348ad2758cc7afe582a8c3782d6086ff8d167d1018ddc7f0c24702300a356c2f73102cea0cb6e9e1e9024f4f7e77be5cc475a4bfd618ebbb584084589e0e1b5e7ced710280764ae4a28a1ae60302047c435bb50066306402303c33b780a435ea84b2b20ad7bd448c39a5231ce874b4f9783752636cdaebd263b1d81c98d5ab69c8b69a19a82a97691e02307b0cbdfe3b282ea458cb32c791540fa5878ccfdc4138dd0fc825b76a7a92a4e2eddc494c883c0fbe88d4cf0aafa8b32f0302047c435bb50067306502303bd5b7e751d6542c3ea3258bb634195c4379c54e8b8abedabc0f7da3c12ed81528b8e19f8b8586ec75a72870968074a4023100c17dd1dde0a6ccf2a861c9788dd44a3ce51da2e293ab67a0243da771fe3fd9db58b9e5842ff40393d8e94201b7cfbecf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d927e43d1effb11d3f3826856ab58071125d402fd10343b5cffe2f50331e935dd01a0528d5063884fb38d14f3e50915702300a4cd9de42552c98254dcccd5aaa48617950be05df584c29587e674335bdb7ed8afd4fa65a08911a29875f17064b7ac30302047c435bb500673065023100fc56914a6a6fd934a7bd3d474fd8301da702f3cdca203b5b161e0a6bd61c36b2acc3e515f6187ae0b1bfe8b6304f5d3b02300c188c582189bb87af1a5b539f0cf7db9877b5ee1d2c7d3d0a804de893ad42fb21d49bd367bd92d022866d99e402b0d40302047c435bb500673065023071226f99725f3f7c4141e04ec3a6f93b9db2dd7ae9956c4d3c1e0058a14d94ccdd2c34851ffb0033fd659a0ab0017ddc023100bbcdb6154606bd2aec7e42c89a1ba17c2c6eeb6e56a53612607950faab25746101df3baae8fe4567ec10c5422c6346d60302047c435bb50066306402301380b0b5bd06bbdcd668537c9067f613be71e1e9b167ece913d49dfb0842ea7398c3af1a8631c42e5cbea2b788354a9c02306a3519ff1f87c2b2a6a072850c05310da3f22d407b6d7b218df7044f0bb44ea733e3d82450a075427833b51224d8c6b60302047c435bb500673065023100e1552133bb4713a236ec60d3bb0ec54561d44a287a285dfcea4c7399790843e14a74226182ed25aea9fb41386a018ceb0230388f1ea7ca202f995d7e270f224994b7cd6ff64dfdcc5a9e9250112c310869e547769b0c81aa5c97d0217c7bc5e3b7af0302047c435bb500663064023028cd2aec4313a2285392d98fd443cba296c324eff343e10c76f5a371db4088ed54377d3da7ec557b4b575a79cf5a1f3902304ed2fa0b5226564cf5876f240d1add99382f65ff30cd181177fbb1a6a25ebbad6793d18e08ec8a989a75e1f9298c4cff0302047c435bb500673065023100a53213c624a9ca88f00ee795f3b2d155a6cee3fe3adfdce46a847de544212afc2ffe2bfd243705c4f8dca03d86faa7a102302541c60421bfc7453e08a10ea3f0c85e167667fc1c476037741e1e1d47f24c60dd2916ff607484c6bac2f5d4758b81770302047c435bb500673065023100e068e2eba424927e3c4d5f77f9f26758457acfce830edc4d7fb56b72e5adba0b5693de11cd128058265bb889e2bed98d023007f504add4c61451e9e6ce0ded6b9d5007c6b11ad1fa20e8cfb150b7f70c8c22c380384ad8681b2c301f61ad80d144c80302047c435bb50066306402307b89844e07af0d5648f2e17c623acbd3ed8c2f2a45dd487a79917ffb40c96bef09aa4f993dad2f983ae7e873123d5c6902307fc491e7599f9709dfb0dafb53b60d02ee9762a16883c482c66d504fa396e8f347ce3ba1af3b6c2da343b072f12f3e770302047c435bb50067306502305b4f7110bf3f5b6638769758d96523415d5fb5779c30f277625cc7528424a14731dd855c01ffaa59cea03da407943990023100bb2877187a148feaaf344911de47d614aac3dcf01e095d6bf0a48b446055c7ce5036da61fe03fb12ba5572e9bb9771cc0302047c435bb50067306502307cebcb75681c2481861ae342ca9a9462c40fb70480ce1ab75705e79b62fc705915c8411c98bc411b31c60b38ada7a871023100a78b580c829e1aa9467c746951e006a6b2ad1d5574fecb6d5bc54674cbdcf4118175ad6cb4233d72345c60ab16810a4f0302047c435bb500673065023100f52a70f24c73c7302e959d3e1732aadb36198f31d6c3cea3791bb2a1afee59862f6147093ed47855550e46ba545fc4ef023033ae94e37c3abb4db7745e8f47c8700989fafc4b1eb2bb5f107f0bb6b47c5653220b48bd3bcd16a59af7c17e5e3205e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023057bbff0f2a6eb91088b9f1bf1827d62cf251f52c47ab4ac8f5f76355027cc914fca8fd88f1a8c39fc4cc737c4efc7d33023100d0538eeba4eb23228dae9f9e805d926104a3995026387369ee885c1a26ef96aa636edfc01488a1a9e46a7ecc262322c10302047c435bb50066306402301dbdd1f9234a7d342af5326bf1e0b18b16131768ae39c64820513b595608bd7c93378075e27cf80e65888807750b961902303b288f2d472f03b08e8503025d46468023919bfec29f694c19c1d7d1595a63ee4579d96565f7eca79cee48546a88788f0302047c435bb500673065023100c8fab228ea5ad1f87be10e69b7a2f07182e30ef1591be3c2bfcab328214f7904ed281adc32c8cd62e325305eb09a12be02302da67690116165524fb4cbeaee92206e95abf7f24ce4fcbd168a9640e2d5b2656cf92ce8d6e168f1d2d9bf29cd5ec96c0302047c435bb500683066023100b1834111a8ae7682b5a8b6333421d1f18323f09854499d55d74347e2f81e48f4925aac218752dc6e393c2ab00e8e082d023100c1d3cbac56fe028882870a43dd2062bb0f708e455d45997f783be208e1164b06b5f7501fa0c4afeb66aec366db4575830302047c435bb500663064023001c76d8a1e946fb9497212d20604d2626df299fbbf3dc8bdef01c9eddfd1dc67ea9bebe4962c944ab7b39830ccf62cbc02300efbcb66ba358f427194c00cee26737ba52f60615a3e3067b7595d2bffd69ab1b0cba2e69e79940df7b3bd234d5f50380302047c435bb500673065023100e2778843bcff16a6040ed6602d0fd8b167436b6535296ed33044db01f3716d555a8a441027396f00fbbee80a682f075902302b2da549bd73a9216605c37f9fa1f42ec8e790101f76e4d452158cbd15266a4420185d03e5e23b4b19656871e3a6d15e0302047c435bb50066306402306b79bb61b1fa69c764137d03c9496241782ef6aeefd4b299252b26b13430bfcd35654b9081e11f8843e63ad5c3c0926e023031989ba0dbb56c027180db5db33c4418940f84a8e4cba8728edf4b9ab819b143f81f1d3156759b3b6b7fb2a25e8f19190302047c435bb500673065023056b66a190b14207655fcc337ed853e34878f803c0c28d3df4f7a6e507ea585ab72f1a0a1538ba499b6a854dccb4c20bf023100cc38a7ba314bdb6611df3dcc6134d2b19e727f80b1229ef6551ac9b006b2cf1b1fe37abe7b4b97a5a9997622dd81eee30302047c435bb500673065023100fc78e348255eba9becac64b33d7c48ce9a779be44ead510aba5c8d2c10613bf46952a3c18e6fd3a67ce1d76b9b98bf0b0230107e3dc839305074129557d83064101f9400c4b96ff5ff10c7507072857508fa982dd98fc2b2754378241e641112879c0302047c435bb5006830660231009ddd5406afb6e7d78de646c17cf773de8bf359691176384836ce0cf69d25b06ac641e363ae23a25c1dc5b8e8bd51446f023100e3b78011dd7ad6c0b3f7f5c80106eaf33f3c34a13eaf93ac6dbc08f269ab20c207f10b3a1247e8ed7eb70abecaa341860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b8f1bdc9b8f384b32f04be70a2566a48a91ab65ee4247bad51d998e3b1315f5a3381ab6b779da7a271b9430a1ca6d5880230124b4731ec344f49af956a8157d8f9776028acae1daa3154c632abb86c3728f3e65c91ac165541e888dddf273b9d75d50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e26dba63565b65ac30216e2d77710c9aece4591b9acc7b91c80cd894c9087aaf0c23fa0cfd7658d47c876c45758c26f2023100c5ea6cf46b7cc230bb64aa233ca6f3d5022635724a902558620b591d3b4132a36d24aa500953ddbe470eedc602cc48c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300c1f62886b93a859eb5f687ccdca9164b7f9affa0bcbe42ab42afdc29730ea980ee54da21c596be2c4f0482cadae93fc02300c87ca6e81ded462753fcc031d9202b66a4c9989e78d38b3f105ca57900fb26ecaeeaf8ceb290723c699fecd9424c9c80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cfa4778bd65cbaa46133944bb0e3c5a517f3fa98903d89fead9dbc95e05a3de673a5f7e648e717a391eedf8f102900b8023100ac7968b8b6f3e7be16a434cf2f932e37bd8c029f5be809ffd1f3811e6e4874acc195d96ebc19d28c4b7e568ab9d11a990302047c435bb500663064023050952a98362f74f7dbe3ab5974a0a1dce1d98599d2d41881708efa8d56206aaea2e7f8a3616404731360eef356e1c071023045452d113be8634540c7fd2a714ea002b8482a0f728b45abd553f361a1fa03325bf960b4751795a997c5c8ad8f93eab00302047c435bb500663064023060594592a1f1b1449539b6115590204cc1c279d4b7a395c55eda103033b260f4196dc78b60e8bd33deba58d0e2b622d50230685c33efebe066411fb0e2c0b69c2ac658146ea9442c3b15db7cf114a81902c932ba31a4f790b7854672d9b4d4dfe5b80302047c435bb5006630640230105b40135c701819e0b5428fc69e57124a65ca09ae373ff68abdc12eb8e63549690784232c3d6232106002e7fa3315e602300e792997a7c912d32c2e5dca227fc2e069c42205c1183983007419dd194cdbfd301c1c27767f58758f3a5273bea521690302047c435bb500683066023100b0251d2324b0ab4d2143e9acb2739863b52e574a6296d8e246a35b8f4ab8b5c37af5bb12b8e00f76b5e44292954f61d902310082f54aeb297e20ffb4817f7b7196a9afba40c8a336a549d13fff9993c0964c38e69d9db4fa79875b35e372f61da340ea0302047c435bb5006630640230626cbf71baa03929b687ac8176628746cf6e55d0b311c289f084a1c268818a3cad95aad7592a71339acf2d2460be992102304bebf820ec1006a3ae12aa4837b4fc53d7bd4a4ac4ef865e889ebfd1103cf97e5fc1ead6be2af465bbfc295978b52b6b0302047c435bb500683066023100ee4854a87e99cfca5b9f72ac933b4e2c658f60e763dee6c7528d3771c8816c15b18d5b99c02ffb21d6ff63e6ca5eeb01023100a843934122fb033210c3f10bfe28e77c0ab22c0d135d589a6035f3648e5cc35814e0814844ccc0fdb4ba1c293dafb1ec0302047c435bb500673065023100a7808de3e695796416032e2df1983be7c273bad8131ae2efbc8405a8d4a1f5f753983b2f278c2bcb87ec022603feafaa0230467755e4dfcd6b638fb7f0fff9520aaf215a8260d815dd8865db2a354d5368616dd64c768211229a47ec49d525a0cd5f0302047c435bb500683066023100aa4b986311139fb05ea5ce1be571e9e8e8149e61094b7bcd431cc8f837bcc8c3e6d25c539437202b18dcab8090cfb8ae023100f64d998f617a09644b29bef64d498b8bddb9dbe9e52fdc2556f7ef0c212d29d0a47a75ae5a1d2260f61746c1551fa4cf0302047c435bb50066306402300d6cf08a5dbeeeea32b662dd99fb7bcc7f6ecb67cc747c1911103a7c4b796f6ec3dd175176368c9906f572a02237944602302cf8d96e9b4a1f701930af0a1e873f23058641de47ac5db8cff71a4b46122283f9fa8b6901c796ebc5372616e888962f0302047c435bb50066306402301f4047fd1e44298bff3357fcce92b499af1154ca5ce5d5942eb121fb9e2fc2fe5866289301dd443adc0e7faf2b57bf2d023016c09c8854e99ed7bc06617c8ae7ade092baf031f892d3b7c524ce535bba03bb0d947fe9e3522884efcd5998a705f5120302047c435bb5006730650230796d8db3a2fcff2ed1cba6ef986310c2631779d9f06bc98b000ac48389eebb2f17fe4423a469da1b4354d2a178040a52023100f67282b4fdc15a6ed40bb196da175a434f29adeb876a29a68bc9c75d8182bcceb26db11846b8b49fbc23f379264e55010302047c435bb5006730650230536494c29b50313be22c59da9b3313e3eff0e1a4b3409a41e2fbb1f05468171952ad3709149fa0e6018e0f9b1de474c2023100d5a0711613fa498dfcfb92d879a21ff1773403225439ed426a5c94f352b591eacc3128876f6514063638d571275468180302047c435bb500673065023100ec278994d3ebfff68fccb23f130cd3cc133cbf591f625d06148c01561ef9773bb98b4fb9abcb09d7b11b4da5ba3c3fe6023063f63868123e765dc953b1770d9a30da73948d9ee685f44c1738e0e7ed943578cde55a20514002f4f302fc3564900dc20302047c435bb500663064023039ee9847f813c5a48926ee4010674203611cc24dc47eb81b745f8e4aa43ad757484aa38ad2dbd6306b7270828818278102304cd57479f177764f7af9ea20fbcdb3446306f37d417603031c87eedbd6a4c7bf81878276c6b9bb5d02b9eb1da4592f790302047c435bb500663064023046ebabfd71d7a25bed3f7489a17ae2529f4c45a19fefa2c2004cc4b69cb179e03791f7b322fed35810297130d4dc180b02307ff54d9b085648d2f657c7887e6e1ebc0aee60be5ccb1d31ac26bad2e193235f7d00663cde5614d99429f029fe317c050302047c435bb5006630640230021d30ecfd5cfb936bf46871d5c7b52c9883596397f36141df2889ad80713e41b3aa83aa3b4df748c33cb2d7c63cf6d902305382912c77f721879e2e9363126c87ffcd287d42d2dd428977e82c1dd40f4e7f8cf05c230369fa14cf4dc7533c09acf70302047c435bb500663064023044cfb4687fd431e327a690b9b38377b8a9cea867f3c26ad2f8f35e726743e71656a8a9063409d7fe5f13580ddc273b37023013b97ca4d9bd8646330af33a0b9d1ff96c8b5f38a5e50a18e8c05d03ee09b039634a7b6a9248fac29c9b95b67db89c9c0302047c435bb500673065023100f6a754a38ff935bfe7766443d499eba421e98da9b7ef6c1ec0e06ac79eb7ae23aac2903dc2bb58068fd4084ec9d008f2023050ee356395801c6df996c301e822140259ec6641bab4aab6ba97ff2206118ef218ffb68b3158d358f4fdfb7a488a6adb0302047c435bb50066306402305ad44564ac5bd0a42243b4061e85580413eb01254e6c00ce71276ae31ff3f206eadcdf23537776766822bede0b2ae2a202305cff30e912380b5a9fc6ba829f593001d7baa04fd36c39b4bce55eca32827058eed34a8ab1ab9da424fd8d6b485f3d120302047c435bb50066306402301b0ec344ee326dafb4135bfc03a3f60b877db611818f7bd9a89f089b92f91a8020b4182d09496ec9f3bf99cbdd1b7c8f023013904f290e07bf5b14c59aa23563d2996644bdc5b6f88256457e491ec26440eb3210b3caff5be0af793f7e55cf2dbc550302047c435bb5006730650230686fd28873b8e669db92eb73aa2b97f5b0333e086cf097de11ce2df96e9fd244a9d9fa1285bce5b4389e07444a059c50023100f46205c0f4a692aea6b269ee2bd20c4f3694de8a72f77111fdf69d74f1650815411da9bfb14ecfa2584768cd189eb1de0302047c435bb500683066023100bea02e63bffcafd0cc5f8f49b8ed98bf8d247fd5611c4fa8dbff2327f503b1525c2912785b0f3df387c9a55e2a439fbc023100ec73317d9777f5b5e39fc181cb8a8b1eda133ed2966c94f8eb1e33497e2dd359b3e30afb23a5d5bee8d7f10570f45d070302047c435bb500683066023100a6f982c9387f8af17c0df43416be21013e4b6955a9ebe770e0a37ab202fafcf84bea3ad896257cc17972ccc8ccbb366f023100a2f9694e97b0164d11192f9e9f7b2841425c2ea0cb288fafed00586af2e2bf3abc6fe5171430578aafa15a3344c477370302047c435bb50067306502310085ecfa6fb92e37d2bed90d2e5046fedb589ad86e2a93ba84c2bba4431adea2818c043b5faf37b316d6d8de97e255a2d2023028785eec7936ff72abecf543c25ced14a4467ee687236655240bba1c0ac44ba8f0991c6eb933a2d93a62188be771e1df0302047c435bb500673065023100ba5f91c37cb4c90c5ae15e90e7903b00d64c5430062ddcdd21523c2f6f1276934e1b4041d8a9f1c19d6091953894bdba02301735817d4e127e2228c2681965516d006faa5032c2ed135766351d32076f05ee29810877250ad864de33f5d90cb415550302047c435bb500683066023100aa2fd004419c79700c6f1ba76b52d3fd65f63748a27cbf898026c8d8325335674ddb4a7f766a5b157abf2ae7a5c5dd97023100e7f88fc91281fbad8a16151802c7600abb61bc6a0a8ad74c1dc9e61675b107bcf2fcfe209206e188afc17380cdcd34660302047c435bb50067306502310096659501efea1d26c7e7384111d988bfebba915d2b480d644511064661d4d42f1609dc8cc768b440ef33cad4f68fad43023028f13a3429c706806add0255b46bc55d8e85ab37c1c6bf6b8e9a41ceb0f74999c07ac533a6b1a2854ee630652df94e630302047c435bb50066306402300ca8eec266b17823276f5c5b432fd322a17a14474f21ed9d551951a88dedf9528a7021c99cb203614a52dd581ab9a44b02300f3d4a23be159e3c034b14c77c77a39eec5f1242475e4520fff6df6f38984bdf602be225da46adda5559670d579c5acf0302047c435bb5006730650231009e86eb1798d800e9a37749b8019b1da5071f7547db92077d4ea57c283d26ad171939139fada8f3856068b15a0091284302307fcb43270f24853299eeb0c005450d33d8e21725464d7f9400073fdbd32e9b375d84768e16e042e2cb5dfff31f903c2b0302047c435bb500683066023100bc8fd692717ea79217f6d281326a4ce3014671e8610efc166c496c4531df5a3f3b831f1cc4d8cc211ae3ded7f6186a3c0231009c8b36bd251fcc7aa3c99f52405acd1533dfcf4d03fc72c2286c369ab34ca31d23fec628e34c6be029c3ea3834194b7a0302047c435bb500683066023100cf19cc8a1deb67035eceb80a59ccd8a599984d23354723312209a24296e930e9e7cb77ddcfb507a93210d6bda34fe25d023100829ac943f070683bb8e221036cf2a819403b589c2f11ec7013da84bfb10b05406f7fa5059bb48b80e9cb939cc93ee1050302047c435bb50067306502310097948cd576ee4a7fde2e6516a602011f099192a58f2b9849a78314e9a16163feefd1f1284c431d5d2d9333f82b6a756a02302c404f7ed2ff9ea6fe94faa587bd8fdfefe26137b0b1c000604ad55a675873f0d53b47866f916cdcfdd3def7c09399cf0302047c435bb500683066023100f7b3d5743f43b57be767b1d4c005e64a99446eeac4b4a237ed2d1fa387e907b7fd2014d46d39b137f61e3b66b1a7a49d02310082f29e450b174717f9afe49a9780ca0dd8e7dccf055992583f64a52e3500d4f65d1f203c3a37d637d0540ea256f1d5490302047c435bb5006830660231008c32c89b8a184e0ace213464937ab77b5a61b8a2f9f87a16ac14fb6ce5df79a797eea21b0f26516d2e419d4c599eb1d5023100c793fface7f52f99f9f792382e3487b0713716c790a19c8b311957fb1fa746bd7f6ce035e0edcd0643041b00e141f9750302047c435bb5006730650231009f7823a7742a8d7ddae89660c10991cd2eb323b080be3003e712b8fdd233c5b4739306c440e1f82c5979dcb2e7499abc023031424e55b8c51103ab3948d0e6d420acd239feb0f68f8f7425c8a239b83400c7b1744ff4d3c1e07e01613c32718998350302047c435bb50066306402307886bce581df2421eefa5f001bea0f34683fbc869914fca5752331afd27b1d44e6e80d4672475280e69fd11361285d07023034bed765b55fb54b5f75457e06f7a97ad59e5ec712970d366701170be7c8fe8c3846d2e0c4349d6ce5787e2ee3469e4e0302047c435bb5006630640230709f13ef5e8aa245d80afccfaa298e634f594d372c3bc80dd2e0a320f285c1972196798a9520b54b8c135bcdbdeb832502304277da0436fd2df3dd36033650894533d26df77e569cd57ec919c2e8f48d3ad29fdbf0d0f37aa72865331c8eb4379de60302047c435bb5006730650230173188fadf5bb56be30ac778d216b917417608baed1d00c12e396e2fa48ee4b98181d207b1b312ae112a834dddda00d70231008381fb25a7073129c10a7b5fd902f5303293b0f368d775be6213995b968a95719a755ccec1d966bce21f24cba1b315c70302047c435bb500673065023100b8643fad96304d9e7c43492df9ed4c90fb7150acdee325eb3e3a29681d44b3efb3235f32dde62de95a0b249b29eeca0f02302336c787a57c21225cb2b81cc85f6397833f1414f8667b4a0953371d0720f701beba2c7b9e04595f1fa95c72348511460302047c435bb500673065023100be4d43fa8e166abd7444eac13f9ecda2b0135a58bc9fd3dd2f9c5752aea9b2b6eada8793cb90037437a2bd44908b7c6502302e2ab61f569646611c4ed3e2b19a40c4acf9429ea4200ddbfef0ef7b858402e877b8c8b4d31d37e2148a2c787d3f29be0302047c435bb500683066023100cc3da3ce19c7fd7f897369c8e01323dc420494780fa9823489cf1702612916b95bc2a8334ddeace7308aa515326ce2a4023100b121dd99724077931c942941e5506ea030fa73cbf11632717861ca00267b4fb7e60a12db3308ef01e541daf795fe64e30302047c435bb500673065023100dba48c2169c38ea7a0ac1b9cf26dc050f75006f4ac1966970f5533e6684f1830cd36a1798850e709083cec4e8389ab210230489b42ec981fa6baeaffeff8169f117236fe703145a907a308384d0f3721c3d4c3ef136918acab6fcbf89be8a3ad9af40302047c435bb500673065023100b7ec7a6c555eea4c9c1afdc7f1a00ed61086ecef401a7690857e9fe058ae2f87b2a3682bf453fc206781a9932e70b18e02304043cc2e315b4caf98b64081c7dd9834e3b8ebd4d4b6401eaea2f4804ae06260677373b2fcf9771b70cfe9db989c28930302047c435bb50066306402301d8b85cc8e726c3cfd0368d685bbb40547e8c8e95fc011eec88b7505e35dee3fc8ee603f0d55473e087cd5c6282256ef02301a414fce9322bce663c040ad022a99ac1ab6207c2a296392664a6b2311dfe041875054db04438dc0ee75a911a6535ac20302047c435bb50067306502304f76d39118be2784ce56956837db25ce049658a1c5d40bb019537fa8fcf4ca3a283afe7264bc229220aece59f8058856023100fae2f682eeb2c8f4c5325e79285337791fcbc5fc0e1b0b737eaafc05f4ce234e18e89ff23e16790eaf12c252adbd0b040302047c435bb50066306402304a88d9fb6b849d65a7b697e7c067375cc8dbba41bb8569c592b7d8a00b1c6dc612fcc5e7d450006e2ffc0e38d1d55c0c02300d739545de0da6ce9ca50f50f0c5aed2ade7ad21b8202c89dd9808d5e078ff6cbabb3b6a9aaa6b8b901a9fa447eadc7f0302047c435bb500673065023100cc04a38584606bec3ccffb551f8794dd9db8b70cd787ce834de2d877d9f4e90f23aa84da590fc0461def53731dcd0c9302303720fb95b37ec7f509e08d99952a22b9372f568d14af8307b84fb8353e7dfe123de922f269eaa6f859e3864a255e709b0302047c435bb50066306402300195e16f7b6b32896855681eb509200170005387665502c16febb7cc46bd3dd5ad12acb1998a8dd09e0d9656f77a293002305ba4b5978d86622f29a8efe449c665648f333dcd9072a17f15fb259eb3e3755ef6b494fc369e9fa11ffce43adc7709570302047c435bb500673065023100917f4dfa2afb7d7e9ad21f1465c05bb976a1b0f1087ab9b28dcdde49c2f959c1fc1091444f68fc4fb3d9a23ab9830653023057b8755e05fbd44d7e60528fa2238848b193f8c7dec156e83d136ad669aa08beb4043801aca56264b09dde9a832d7fd70302047c435bb500673065023100e1cf1afd80a977b73d9cfb6a4e6e75a6e4c4fddf71e6fd98f6452caae9878e04f8faf20c49965d2fada70c5b68afd6c60230097032f5007b2f2d07589d828ca404288d39a9fc2562aa771f920fad17dd65c6763271c919367cbfd2eade2de292ff2c0302047c435bb50067306502302fa799050470333951c1821273f3c4f12c81186b378219b3c3ae8e6c1b920492fa7376a4b5ea77c5c250e5faff1e594a023100f1831ee6d86c86342fe11a638c3ef8867ff7956c4bca0fa8b853e19a23bc0553c14d9146e89631b1b6343bcf420feab20302047c435bb500673065023100c2c460e26eaf58d553ba790a25503d25e93df1bfca0a6f8a808cd476ff92d032d0ac82a9b2361db965baf454776f2cbc02301928f26e5bd8371e2b2eba9bb08e47b192f2d138779225bc9ed16ba1fa07d958678261616c18f7c9d82da7a08feabe3c0302047c435bb500673065023100d5bd8ea4b2a979632f2c4d1b37e1e684c14d69fc720bb81169d548876efe727b3dc40b3f2cd5105a94525f10b1fe18970230389c5e3a9fa255a89ff5fffb374eb980646020d23808b2ca9a88b0174d6ae37a58194f51cf796b0937e888c5107d5dec0302047c435bb500673065023100a2c0f209e26d0f430a5e0e83b52d5efe64fa80e25d26902a017a5a492381c4b37e90ee4062d806bcf909a837892d6b660230541a95d12fc0a87b8375fff3ea9e5a9a770c1a6c5ee159d4493eda350a669ba2a0f0ad707f948e34dcd959777119c3570302047c435bb500673065023100cfa5711ea33d7a3a78fa20dc14aeae935ef8eb04e5c3d269d9496f53b26189eb85ad36a217773176832151f0153a321302301ea29453f8d8ad45ce08b64724c2b0c6796b9ee1df72b6a83854d3a32269161f8cd658ab872db8c5b6513ca8e3c475900302047c435bb50066306402305b3ac265bfd3b3ba256abecf59e80e2421ee2499b74dbbdc172ed13d31fe63b8189ffb2649e19da51650f32912f9dc85023012fd04d8d3fc5ef95a87f1974f6575173d82f47c44e815faa815488ad796adbf102bb6c396727151651cb21ea8cc8a950302047c435bb500683066023100a373de867b7de7e1672cbb1ffa3b0332a483a842615746d841239d07213b86724b5323cd601602750a7e16d0f9fdbe230231009191138c78d6c6454ecada1115d69c2a447cf3c7e5e866252eabdccfd80002fbb5f5efce66fa4492ab8a890471c88ff00302047c435bb500673065023100dcb5c335a6327008eea4603b3443a1166fd4cb360219530af18d7c04c18f54d2666957307e5c645bb2c00cfdb61a403802303714151e0bdf20307f9643981ce5d5d884596d981550e485585cc9cab986db8791ab8227cf4f90b9a1adb6ea2b37ccc50302047c435bb50067306502301f7f117b3b342cb30495b351760aa344987f6584125ac34f14719f3c6899ddb6cca58dbd26a1475325f0038990ff48f9023100c88f9c6af8f8058cad30d3e40e82e69479e43425ebbb9c0bcc6a32e17b59b60637c2dfc97e849f71775915e68d3bcc160302047c435bb50067306502307dab97fe0183c924de96778a24e46f6e182a4043ed01f203acf1fac099cdd091c2bc1d78c5861876055191647ad901e9023100c7b2894b51617edfe689a171a80b50a1342c70b04228de0d4285c2b6727813a5451d23275f5cb70c04f8524d823632a30302047c435bb5006730650231009dcbc2f05a118c3f33e243544ce6eac493df8f97ba74c4e7b737fedb01a687331eda2c7558b2ce16126ccd30ea05d505023001bc0284114bc2b0037d43da7b35cbac4b811523b451ba0dbded4867e31c8842ba6cfb480390d4c18f99e25725b7b5610302047c435bb500683066023100d3bde791a59148b5c922d4ed36fbecbf289dd96e036a095d6c8c9afbefaee1db651950294e7dbd745da2fc8e96c29c90023100b83e828900d94bbaea93a8918b15e43b936e4e15e9fcbce94348bea0cb2c1a4baa8a0e408725d1300368badc5ce8f3b00302047c435bb500683066023100ee4e7dbd1eb6d96b49dc224c613bfdcfcb71fa043732dfd8bfea58ee9ef98349b6c05e6f1f4ee46b510510edcac146c8023100cca8e0417826a86bc63f5a750edf4edc321a946e766c466018afae3b8e624e9ebb0f074f1860624d13d1b7b57a1d51840302047c435bb5006730650231008cbaef52251e1138d8ffbfabff488533774cd56fbac2f86ed4d6d8ea2b2504c44b7451a5d94d66d952c7f982223fa8a802301c584f1104fd0cd9152d660e8c4a9b17406fb2ed40e646cc1daf50dcdc7c5c3956697ebbc5ff6dbc4bdc6f8386b60bae0302047c435bb500683066023100fea51ca931c4f024edbf5ff560c9a7a4a46f079a8f750260af6243debba2b895cd7e5c6fe9a344554b5bfe24325a6f9b023100d281bb43a1f4524420f4a2ee769fd744f0c3770e16e0977f2904962a2d778a2bc03ad2f1c5de8b6bb98f7c49e1f378e90302047c435bb500683066023100b5866e98af5fadeed4223ff313599407f100730bb575b1325f91fd10a50219a97ff7367baf89dc91505329f69dda558e023100a4920df5a368b3f53f7a493870a0adc118168c458571dea67dc55c8e655c9b09379656597ca648129fd7fd8cdf4a5f500302047c435bb5006830660231009b08fc2170a598557af53c6313351bc569bf387a54e2d043eb3e5e9749d794f4f19367ed4e5d538e3a52751f3db795a10231009b45642b5f8924ec720af8d2c3ef7887daf3a16e252f9e427218f5f938b0bee2511be62b9d995096e142507d1d69ad740302047c435bb500683066023100dd949210911367d5b6e8018da4ea240c74c2a3d327c4a86afa3f80732ef12701d5ea6b61b4db1e10cf507d1990b12edc023100ddd0982791285642fc4cff4c71ac0a9a955fc88fc49cb2d0088e45b098d43c03e6727f1166e40cf6bfe5d4bd89b3eeaf0302047c435bb500683066023100cabc228cd57bf2cd330ec5ac4521e09c03b6c070f69e485556adf25677fa30bdfe37f3824074ce1316747a4589b28d3e023100afa9e953e164ba5c19a95a5c09fd22e6c055b2112e33dd5c0a6bf0e49a9f91ca0edb3cb064a893868fab97d324a7df190302047c435bb500673065023052a19a4e5def0d0040f01c142dc6ffc66b41a65c021a8d3989684b3bbdb3d005e93030c639b35159a096a6457a67ea03023100c93823c7492a4caa0e1402a43ca608929618b6c77c467b383c41c3e3126f2e5abb9d0d354e97ef583757adbbecef5a980302047c435bb500663064023038c0fb125c06852ba037b525d1a8aa6b0e61fcacefebe9af45ee86990e81a89f2009abeff0a3e81dae706ed65d0491c502305ef892b5568b65ba1ee5e69d6e839f3358e0520ce74b63066f8de5b7a2211205ee6e16446df2ff8a4b66671a97c447630302047c435bb50067306502301c118dc7fa016dc8b92ba462499a522fd6c21dce8bce661ace54499fd442ca92d19180e10b65b87b389797cee7e18087023100912192a70f7bc785df05862fd812db085ca35a9080eefc0e6b38480e28e81d7b93a7c5a2ecbc4eaf40f5394151a935e10302047c435bb500673065023100b8553776af4a01b113855dc01e0d49acaa5d5bdd0a004a8e4ba929858b643d8893e60193115f2a4c4e9ef44e0c911cfa023024dc342e0ea95e3525864b73f7c483d7eb25bfd1d67d2fde0384ca972437b34232b3f1563f4bef8c423a7841244f53ad0302047c435bb5006730650230402fb84d068369346963d8fb938363c44e1e7362785965c3ae4478e8f35a8e5864820ca4157141cce6df501c9c45b2df023100b41d230ac39c26f3255fd343537eafa30a90281d1fba376ed44d925d6d1e3f6b364c8a47a43b9246d52eb048baf1f92e0302047c435bb50067306502305537f894eb8771ee2bf574c2672e0f37dbccced62d6baf4b61a1cce847d3b05e50042c26862b6ef5fd11b19c70b6698d023100e681091b5ceb0402e6f27d8ca4bb3dbbc69c4c036489fd0aeb33b13fc5d5e3f84cdb8ac4c91b84961e765ef243fe975a0302047c435bb500673065023100d96d8e0948e557af0472b658e0aad3dbc544debe0c69a50dbd1c1de8d37fd1a22f5e067fed7571effe9cd9217045d9b802307823c44af2b36f9ddd709d0b0b2ac24ac2e98c8720877f951d55dbb5525b7baf4a30cda2027a10622c070c89d3f163a40302047c435bb500683066023100b77e92096fe8f8e1e83fb6280e7b66b58b8027667637eee093648618b44720fcdb7e0fc6e3daee0a0cd3c810adc3c5a7023100d8d87b13d4005552729b016e4381c21b7fd312a492501ab033573a99a1eba3b69da3063712fe6c28572feaa4414ea7400302047c435bb500663064023042d6f89d4bbcc08b09585b787adca76bdf35df6536d6232fbb81c1d3cd0afac20b3699e6d8f3f8b695da5a3d788c4c45023002e9e26b87803ec49a6affe3140da73b21583b8e80ee268650d3b0a7285c0185620500a9d2df3ce8b64eed497af99d310302047c435bb5006630640230150ac8fdae2582074732586eeb723ac4937fcde1d858e180aa6488262ee9a95664eb7835c079ceeba448efa2faf7f5490230703358ae31966f6d183f62415e17066f50597bcfabbf2529cec0cc689ccd90bef9392d23eccc2c932ed52dadc38552e50302047c435bb500663064023072f75a47d6fb4972213f2d405fdab572c7a423d971b3c058c4e78b20033518c285908a6efba996de4b5c7db6027de32702302e01fbe7ac912f5a87f457d02c4fbe5c33c13d11605b1cd463bfaedb626048df3b5926dc6f4dcfcddd78252d158f7a300302047c435bb500663064023035d75b7e209ace247e8142846f6d3e0c8307e1ab0a640ac31f5361fb48be2f74eb4ffd8a01c32e38616eb4d793de9bf102301fbafec70ac6f688eb3be8cf359d866d35ea17e50abfbebd2c829a82174f2b10f3ffe4a0a2affc1da843e82e01d15d5a0302047c435bb500683066023100e47ace449a923f602367812daa1a16768f26e2ccaedc9a24a9ccd17eba870fb4151ae917464ac9a0dcacb96560bc88af0231009e216a0f0d99ee3123dcc44890d8ab57956b21e0667074f6789e914552b8b0ac525e5f309ecc4376ed722a714b4c31f70302047c435bb500683066023100c17c6e968fd3163560286dfc0043687b3ed5a52d53e98ac4c32016c730a8cdfc8bc814c1c1dbb57c020e11ae1e52d30e023100af6dcee701ce4a5c48117f88e50825f049877a937cb3fe00ab0d20f412b7156107de8094e1c3c9cc08870d256a7d254c0302047c435bb500683066023100fad3cfb9ec881fc6e205c325344b797597dab39c7b454e5bad992087b3e549d2009e8e3555dab869cea969cd35c5ceb9023100884953fde17ef23a612ea86bf2623e3f9cb26194b4a28d9de9b86063147f0bd08eeaa8a570f9fd48ea4cf39d6f046efc0302047c435bb5006730650231008a05e0f279ba17ee4058e6f43d0927e32a9d1819c185f1d58cda223d876974bc2272ce618ee53448a393f754a8f0a5e302305266cd440f67311e6d6bb9018f5f756ec8865dda74f6a8aa3a3c9972b8d0eb786876254c4a1b323f8b85a1d8c172802b0302047c435bb500663064023046ab1b62433ac590d91fd0ebcf5216890235e81aa9d73c2d77c41034cfca44baa4c3532814ddfb7c7fe22eba397fe6a8023048011a75f528290b3669d14f0fcb048f9372f7abefdb065450cb303e38545278bac931adce28ceae89c034cba0f80ab00302047c435bb500673065023063a99fa039f75919768412b01af1eb816c77d6179f4e740094ab08d45cec27c40546bba56a2682924c7ca0f593bc322a023100cff9d7b6ba19c08db154e0b7584829ca7b2d7daf5b24a50579aa7409d1dc2f50c1647caf00595ad5869e23e1a061ac000302047c435bb500673065023100bcc919c1602f132e953250c7228d208f5db5133fc9de22071ed58178bd17212517e2e732b7093f5222a425874f97011002300589fc3443e99f0eb50d35146de8a4371a32bdff6e8780a3850110ca4ecd75edd0e14fc296deb150bb184bd79e1b1a310302047c435bb5006530630230198bf8969470c43ed553b1659557b9ceac3e0ea87586c0ae44f548a51038408eab7d40f38199afef2499b1a72bc54dba022f426aeea7158cd171418f8189c01477be1296c25e6cacace6011f8618590b4a3e18816825577b73c4e216a8ae6629b00302047c435bb50066306402303ebd179d7033d8360905ecc0ef76958a6ba4a4e82976678afa282ade4785d9b7b6288bf1bd68dfc54b1585c11557907b0230593b8a5fcefd3ae905a4a323863ac12f0fbbd37e0f0de151906c627b04c3ea9d15457695b10892dbe670e3e5f23d8a470302047c435bb500683066023100f1f225b28b876fc621f072f7730d9a3db6adf5f8c73fce6a4506b748ffdc3a443db834ba519d7628392883f8d1446e9b023100ba4625451b4c45214d8a97b60851207196e3c816682c1466039a4732a394fe5aed6143461108d38ef4144add86e0a4340302047c435bb500663064023055a95069b8202f9a56eb20bc1225b80ab055212b0bdb6a39034cd18e771a4e1cb51ed9b9cd576dfc77470a9b91565219023069210b4f97c92b681bed3a3f5c43532af26439623681ff7c9d00c1a3560d1ab8e94209aead7e4f8ff47326c3544abd780302047c435bb500673065023018e23efb5c6e508c2759a5c4046228be5ac8c2780a5d3e07a3556bc65ee56fb510fa766786abd50a7cccc3d465196425023100d30a68434be2229bb3da77d29d1490a6d22537575c5513c6cf4110fa372b69ffbc836c54c40af59ed309fd05d86928910302047c435bb50066306402304d1c48d44d1b6631cc0a2e07b38abfd264f0775c064eec370ebb1e09ddf06a0c0b436908f9dd581573f60928fe353eb102302f5e9220cfae9070bf88f7e4e63cd8dd53b2538a4cf23e81cb1b1047aa48631825624a46db71368a3609e06390993d1a0302047c435bb5006730650230009dad026e42f5a3df60bda31692aa15faa76a49bd43ee0800a699eab4bb5ec733167c5a386a887ce7f471e2ac0c39b2023100c44d6738be520ff36a128471deb36a088ae6f711c79dbcf40942356d8dbea882ddbaf01d39e42daa2410e2e7e75d0be00302047c435bb500673065023062b430951c37e2e1ac98c823123334dcd877584e6e0f0c2c9250a198bd4c17b2de54aa0d430c67362760794281d9e581023100df433c06a69e078907b1aaccc426cb114acc4a516535ded99dbde1e3177d7d20660a7644a7ca84ead3e0b5f81625bee60302047c435bb500683066023100b1067911311be8e248ceaa684474a916dec32716ed55412c1842ed9e386a2f2da3a4cb321925a799141750361a34e972023100db9091ee4e6e4eeafd9937ff81536e08b049c8ef92060199d4373f6b55f7f347e9513a611a2915d8c2442fcfc40ee1960302047c435bb500673065023100a1e1c1f6c31ad2724b3fa26736c9c8065ee7e1cdfc0137088133edae2447297fe6e16c1288936ef1ab093c438605b04b023070cf59fdacd3018ecb596bb23c0c4402fa0b866f38ac9d037257f938c854607570b50712b6e0ff78db1b290f378124470302047c435bb50066306402307bc671c9751be4e0e2f6bed19d535dd5969809fd9eeecd362e6b6630489345841a430d5cc868ab52ef7a7a9aee0d88cd0230603d9f312bf5d99858a28daaa79273e64de9c5ed952175464f87a769f22de4c70231da47a2001938abf6ed44311e9b8e0302047c435bb5006830660231008925df08bff1c4075df5ccf1ad35cb465c3ade42310a6618127a0b7d6087606a31ffe2b900c664eeb6484e5074951e8e0231009be6bc5ba7f365a89663abe96c352b03ea38ddf67520b99853fcfe36578857fb6416c400e4f38434d150a5ad9ff54b680302047c435bb50066306402304abef27cfcf14a9eee2f4afe8875516a88c20cd692fe3708f861c9e9588f4194ab297e3164a7b943488b9a4f7a55613902303810f39624bfbe3722bb3f3bdcae53d9bab37b9cffb77bf5e9424c170da8877ad192550af703f7840777dae4862e35a70302047c435bb500673065023100d8de64afc3fafc9d0d43719e76dcd9075c6d1ec47e2470064d9a0923fc738260d0da3771fe2b27067ce7c9d67de5caef02301da1350c62eb1be6089d3f9ae29d3541179e54dabdef26423f572366539cc2545f5248d9907da0529e3e0019cfa63d7d0302047c435bb500673065023100b5028838d1e3b6b68e8db15bb3ee8682944437bb4f4de8ffd0a81c32e178f2ce49284fedd4a5e37f31cdeb2368eef690023025825a50f907307bccacbfeb2474ba42a598a0935c1c5402111c88f5676e2c206023f90127d154015c284143c5c01b1a0302047c435bb50067306502301002325f18e7af2851b022e6ef42b1606dee121b7549236c4bda9707a9bf3db2237127d8158fba09f74f0baffff09574023100e929543a8e17391597d8d32f8c7361b9526aeb95ee1c5c0da54ab8b18b480ad80a829e74c68e4afe7ac227bc369d4f670302047c435bb50067306502310081c8b37f1f8c9c54076c1f6d08c17afe64897984891bc90aad23c3651681a6af85c4f4cc82cac7af1ba009906d6bee6a02307679e577556c51397f8bc495f4d6ab4e599c1dacf9d033ad677a2aaa3a3c58e04c7215b176d06ae17a369f9640acc05a0302047c435bb50066306402303dcbbdc79dab2dc2aafbfb0df01d53a87ee34a53df79e4584c4fb9f862021f06dd2c7861d7477487dfacde9a598ef7f3023003b40d4f05debc832ecdcc57e09938556ab80b6cb11af09196300e4edf500e48cd9f37f3676970fca097973016392f440302047c435bb500673065023004b57ec57e9e4436f254f5434d80a749419da7e07d20579543c5e20d5a00171f1b9b8411ea9774427cabec64e4c5242d023100f50b8de3338e4ee36d381b530e5de912bd8d731b3e77b5ef41812ca05001b262e884cbc444a177b5b991a3a4543e21620302047c435bb5006830660231009e5bf88ec4b3da999beed717bdb10f2982e16a385c62c0b0ce602704a8d364936670b0f0a5e4be8a3b4f99f9cb339d44023100c5264d473c95825bf7749cb8a03ab57b54af7c1119137626e0417b7e75cea3f48b918592531804f24517fd841bdbbcf70302047c435bb5006730650230738d9a7bbbb77a81fbd0b8a69da30211a12454f20ac9a325822900f1b0180f6a09c939766258537fff3cba97519f13b4023100a7f4746f6834214b984ff28b547d1a4a4e628eeb7799ab468f892ec747317ba4e5a8f4fc23ebe42088b567e11eb20ce80302047c435bb5006630640230682f232d5968af9d758e967fb5d76bbdb40eef92161daf5888e4a1215f892b83bb79527a50be240d3163f98ea61bb34b02305ac4fb57f13664d379ad92ea015dc52d3a6160061884b5e0260504b88aee34dfbc332b6cf73969c254113551223136b20302047c435bb500663064023074431943b194d60e4b3c36eb7991fe914abbe028bd4c8dddb9f02854ecab2169f3136819260c31a882dcc6e1047e6dba023011bab59284b25f862369407f24925ef7c679972a5dfdd49cbb5a07a7cd47ccebdc266fb904041952917c3853d16e43a10302047c435bb50068306602310087bd8d704fc2942e091305e61bbfe38c79eaf39bc8327b6051015474ab48286382aacac58bca5b83195f7547e82a5e74023100f14480eaa9d6de18bc95d422430103eabae3201b8a780120e14a1254df604e7af73f689a4ab42cc152d4936860409a6a0302047c435bb500683066023100c57318bae181a0ada79b94cf19b16bc9824f547306a2497c483fa5fbe3b8cbec6a621381e748009143d46833a543f8a9023100fb902345a9b3b6bca0c98ba4cf337d902a6d5fc28c195305da49f77ce64dce46518158edbf468f769819554ee7ce3d4d0302047c435bb500673065023079acea2b0ed5573aeadd5d96278df424c0b20fd23f9bff903819954f40c14d925c53f53794f248d44ace1b86561301d2023100e447fb22c06fbb6677b8014ce31d9ca4f08f92bd2a622462b0701ead0253bd7119227b46b82ec52d6de83857c7a6fa2b0302047c435bb50066306402305ae1a8674a8af151e86b6a57b8f83adffa0e7e376a81afa323b890cb7a302df7db03949ac52c3139e523ebc455d9bc1902304624c402b7bc20bbcf2b5c2d2986a698dffdc464248aa60d48309870d59971f2aaa55ebb99e5df5ce56b25d8a09177c40302047c435bb50066306402301494621cb94fc7a7d0a0919a2003ca99705ef7b83aeab4ac77c66dda63f25b72717c3cd00f11c036b801d127d58f6b15023043c04e54077b40dd10003c709e2e3e93bb21244f1e48836c0166e68ad39e89e7aaf916c99ee4ca25c77e8d0c756386ad0302047c435bb500683066023100e6f1733f7b8d039728fa1dc141fa7160dc7a2d27c1ef728c423ae2160dc40a105fff1f4ff11e699ff7d203f539b99ce70231009a6338a92545049c2135925271866465b0add9229bf6a07d2e7b0a8832611be040e0e9299f4ce3705bb301b4a5ce638e0302047c435bb5006830660231009dd5f64f68d014c13a4de677ac345092557b2c32f3ed1e3d5234d3f0059a889306f4e96fb636817b0ee0cf4efa637c2e023100e1d6ee050b82baab57c9780d36fdcc0fd5743064025d43ddb84dbadef5a9da1d149494a57b65bc5af777f93dbf0917e40302047c435bb500673065023100930f2a83b2ff4edfb3d1eab9892001403ca88251f0d718d62beebacb5440319d06174d2e2f146234546f511ca034289302302317b788efc85df53594451b2029029ddcf7bc786d1e6a83342e70cb12af047d782844f9dada91b6904fb46b5d335e0a0302047c435bb500683066023100fb11b5f19ef89c0f3759cc26fa00e3b5058ad364580f9ed2ecf7e68fdba55e62b13129994d5b9708a5c004594c4d5b030231008599fc6a4ca36e27730660c438b6da7616e162b08e35e4ea27bb605947c766e5e3ae756d795261fdfd7c18034f6fbf460302047c435bb500663064023008d367bc73a9b3b09f4759554963d5f5d3403f11fafc52df4f04d59da347784f588b3743cf47d324fd9c15af78afaa8302304b3ed8ee8881a1a7899a0512de6b9e3ca2d3137f14fa1c7137a2d14baacc38307aa094461c18f6146c9d61165b2a959a0302047c435bb500673065023008de6d2867115f48407bc5c29dc5c09eb0e530a9155cf86d1f364b96be10cc39291bf0afbe9bb4f6fe6981bc09fc7e73023100bbd9663ab8ef0189fde1eb476a0ba4d032d2f08e4c294f5541c082f2db8949a77c4c990a56b4c9481bf58fa1e4717c0b0302047c435bb500663064023021a85be930183a8d922dff16dd898beee5b52ed360f1525041f85c38c65080fa4c0a01f70df568c26371d01cb91f7c6c023028661b8e2b969229f02754fbbbb80c60ab3c4c05da4e0cffa9812e84f68603a46e52ea29a05b3fda1afa5d03a5a5d7930302047c435bb5006730650231008099289970d1db982c22c8074e0fb20bf85c49b1484259936bdb76f7fc36a69f25fab4d298065d8aeab58cb64c2cec24023072ddfecec602b600c8e06f6f9b7d1366bd680c493f4bed4c6fe04f0cc1322dca6cc67438b6c67971abe10e26eda543d20302047c435bb500683066023100d1b1a27a165dc46cc0bc22b9bd3edc1a69f15b2c135b594d81bab71c8dcee9370ed7fb9b90756ac16a256293ec504799023100c3230c723ded9a8a44a9329b11021603935a8b38a2a646d2416ccc07bbebbd16d1bfe4c622cef272d226b15550af99de0302047c435bb500673065023100e979d994a6c5f1f5c2cff44d3e8ad914be761dd2a3fc6e884f93a5f044d454fb129c3ec904be1d1f42c29785411599a2023063c9f032014a002bbb7be58fe0370b28b5e48387d6786dd540e72d8beebe9d89d1e43a869394df20891999262b752c070302047c435bb5006630640230153bc0b5f387588b9f2003d7fbb36ecf7f631da4f41de8fe39ed00820e56fd771b0d0f96e8e97cb06335cfd7af9ba32f023030fa86719bbabdeb2360444871e96007da64afb2cfc14f1a3e32968bbeca9681a8bfa0a90b4919c5f809711b7eb5ad040302047c435bb500673065023039ac0291aa4a446c524ec4e71ae8873e76cecbca57b60d926eccfd61de4472a19ab64e23610d774a611ed37c3c63945f02310094fa029ecfb6fee0b60d97b8b54059fef5f34ddc62f055e65e9290393fcec5b41d348f4d10cdf05ff6b0110b8a3f2b330302047c435bb500683066023100e89d6e0e54e748990b8baa3f666fffe2742620ac237d07ed1985b33e72e7e2bac17777a09b98b3989048b7e59ba5274a023100883a61ac444fb727abdce0736530ecd2717ea1e16b674f255c34c471ae5e4ff5099316d8bb69255cfcb674c24321e1e10302047c435bb500683066023100a054692f1185d6b9742ee56e5489fe58832ebc0bc33766f49d61bf7ffe92368691975c1cf2a83995550b1d9e00a3b837023100a40abe72d6c689f4f97dcc85a86e3f2b438e502c05fe0c06f283cd457dd2f12060fce748bab03840b74136c9f1c5f3ca0302047c435bb50066306402304e4f0e329e1f600ccf0f6d502a12a60101e080a9152d6012f7e008eacaf2c99264d75eddf3732dbb5e1a7995264d2faa023008c721f5cef80d9c54b3c8f9e6a70c60a0997443370aa86b9e6527f25d7c5e1763d9f4c8b2e4d938331d0072cb12669f0302047c435bb5006630640230391022cd6e8b4c3df7da731b994ca0bc6a87f311bcfbbc04c499ae82b04654a9f900b7a6edd1f9ffecdb88e212377ff3023045558b301295b85d77352e298670dbb75447c2195457e253c5dd9f2f3de77afb8b1248cf790afdc7920866ac0e8299140302047c435bb500673065023100e9273e3d5fe3244e5e0f63c6418ea1570c7db8308231a83d1ab2907be2f4378c27f7ab5000ecf40ef9dd4a01e23a498c02305db55d82b71391bdbe3322ce338aafab17c88e12f45c694e556f5f1e5c2bad4d34516ffd9a12df191da7f4e2eff522510302047c435bb500663064023016b5f88ee15177455617444df8941f39c6b4598b9525694f4b4aca9c5e067cb40089a3d82bf02811b7378bb8034a055f02304d83e6f0539797fef0619535253ccfe4325ca1d4fc7c981e7a17d4599cffc20276e79e7ccd526190b0632a1c39db73630302047c435bb500663064023071f69734006e29a2cc0496d4bd55eabfa123494f792d9bbe7d13d26773bf34a98cd1f7f9494311d1df93cbd7b2a81561023040004f01d75b8c9adfcfa83b109abdd0611d972a03ecfa50ad89e3dd95355b843699b9240285689f939f68dab30b71780302047c435bb500673065023034933001e44e52dbcb02d1c850d880d2b536e3e241285ad97e19958b70d8ba23172ae17efbcdb5ca555384da26cdeb39023100c745d1390bfc030cb21c1650e18b2e57fdbd4889cc095ea5fa387e3b312bec4aad00719ca73437f733b605198701e2640302047c435bb50068306602310085402f1c91672189fb0b7ce1e0ad0c04d8fe8587675e09e2db5c2bb72fb8e981797ba62f92d77ed8a3f4540e56a49096023100ee37c90a5a4701270ff4ac372daea2207d698d7071c329807aef4045b089d0726fbe6b01c7a2997c32c69ac71e5b13080302047c435bb500673065023100c4a9d6a1d8f9b4cb399154fab2ba0aba03aacca1b14b4736960d7b3c42da0cfac8199dc89d65227fbd3e3d66e742e463023026ac8522496dbf02b5c15edaefa57fbc7259ddd020029ae0a0e2ec9b6cea93fdabd71d843d35e295041c74d4567aca460302047c435bb50066306402304d10775ba34c5da1636cd87568cc2aead80d651edee892e58393228da1969438126d10e3a9d7639aef08a294df540fa80230190938643d0e0899266784ec507e117823b96d678198dfef755c39b7c99c7506766edcc85aa06a7c24d654716198a61b0302047c435bb5006730650230680e68e8953c90e2ef3be4db7ff7844f13bd5cbbca06e80f97cbdc975524ed518c90232b86e036a3f7d22280b23c002f02310099ccda97b3dfb628da26c79093b436789f873581d500d675ded13c8973ee4802b7f85378e03f8d8b3833b03b2867411a0302047c435bb500673065023100ccb5790623beec5a17f0e864490e3fe6cb90f72246552eec8fc8dfb361c2f628fdae82c55881f78f7c476b64d601b4c4023055add17e18267e0766c5d741bfa8ee7e97435ff0dc88b5934962a3b4208a227f9086f4dfd9ec0f43ce501e963e6e586c0302047c435bb500683066023100b759b64bdb6c951b5f46f4ee65429267aba6dcae0b692e035f979229f56b526429fab8d07c945d731b9ff38d58379aef023100f008a0232517ec23e63de6acfb598f6301e7c67d2ae0cb3cd3788cf2fe56de8655e2c62245d1c142a331b109724faa6f0302047c435bb5006830660231009bd1dde9dd8f72d46d8ab53cf2932104e0958265e7b34c84cc4540e52f414da9ccb496dc5d282f05dfc754f96830e53f0231009ba2894c6813f9ef9483031d919c06865ac43516fa79a95c535c6fd54d956d216caf8509319c6f2f15e50a77c60945f40302047c435bb50067306502303debcc3eb7b537c398b40754daea175b63cb9181bcc09e7c2ff8dcf276c9dcdc9f2b9974a7fc88ccc7a9790ea4f21ae0023100e8af7d32fd7a71dab7e03671e472012541fb401b8f9c7b8f2a732ada8e11c4efb2cbba10107dd665c4b038d5afc5e4ea0302047c435bb50067306502302350163c0a7cd5de154466283219d02ebd835bdfa671c28c6d639e4df723732a5b88fdab8c2dda271511fe4ba74665c002310099045c8837b3fb33f2e39a28f7880141c78f789749ee896c742e78f68e6f4f9e594a72b53aa5a4c7a7d84e3b120d72770302047c435bb5006730650231009fca4520509871f903667666beed6f28d9ed7b0b19a31639f7842134fade4fb734829746b62d0148e6a2e56bdf9dff420230388e9cb8842999879f0c724c2b316e64cf4bf7ae353dd29b4e7b91cd5bf51ae38bbc41681f57cce5ca75a728b3012b8d0302047c435bb5006630640230404dc3450f41b03fb8887c4b662a9cafa8c390134fa64bbf0fc2ce748987127043cd8cda920697d8f0304808ad3ef98602302468ea2cb0080e09a8018b0ca1d15b4b36e622b7da46701c2f4a2d78c2e352c2e66524b9fd8e13ec5b8603a8af221e790302047c435bb500683066023100d0cb5b35454923f1918808e4bac68375417826a42913d573b39899d01ee8fd1f18a7bd50ba83b8a262ff3feb2c375ea0023100e2141154d42709210a7cbeaf1a6fe1c11af9c26d7a1a37849c535ca58e2a1c443aa9b58aab9fbceda12a8fc1142c85a40302047c435bb500673065023100d06645cd316444c0caedd77f81ab769b3131609a16475e58a1b44538a49268f613e981ec919d7a3487de99796d1a2156023044013c3282ef4bac6a5ff045e0a6cf7f6b3a092675ddbdbd500e54921d5fcd116522b2ff428106d6fe2207a6954dda460302047c435bb50067306502304c575fb5e95ef839cf4de9ef82790dbff81cd03fabe78181094b74e40dd816d87e523deb6a6c637907d63ca326c9b53a0231008d2ed9dd92fd795c1bc4c0ab76f838f53953f65c817c9a7ce0b3ee269748af2e48cb5dc82b062834b747d5d13f1d8d1e0302047c435bb500663064023048181f5382431eb8afbe71d51450c6b242735d93944a5400a041114d610d0e1975595b9ace984d3bab1d1b7264242e79023012ccd590e4bddfce05bb4962065aaf196a6e227da417ad673f8b6b22c63aa7569451fc8c9648ad46580bb10d531411590302047c435bb50067306502301da538e07d0e3a1f38dd1171ba473cb8cf0560ad101ac3b40438d9207082e4a22b9019f86619b6208b34eac50f64d1540231008b121fb9826441c77ef698770e123a633c240426b010036952ce5c8b428b26ef8d4b1a8d1ff2d3003bdff01b230ee9ff0302047c435bb500673065023100f7cc55dff046929d6fb2dea1d556048eb527b2c1c000193d0c103487fe2f933501d78f7d11c774d5db9287f0e193c598023012dae115122eba5e506efcd3615f0e9f95c002ba761cee61049aaa9030634ee536fe6744ae6bd997635e33e14be3b0850302047c435bb500683066023100ea5c6d25eeb54937dd5d89365d5095dde4e83ad4287440d036823eca5888307eddd3b81225c1236fd7fbc0ee76cd7770023100d13b9d7d3165984f0e278af2bb0af9d387e7d3d9cf4012ab201e9e21acb1c3f392098a9b4456fd368eab518498e873f80302047c435bb500663064023026b6a4a3ca2eb7af360f4110d6960799477cec6f8d0785c671c116203511d485fcccef22aa70bb4f8b9fb8461ac31f8902304f4895cd30fb9642c70ee957f4f73486222be382c826e5b54259e18b9a3e4fd763ff71770d04f100f4e6068822f122120302047c435bb5006730650230173b27039e90c66a7dde4dd8ce08e1035a82830d72bf434f60545c863d0d811b49dab7d518aee6411bff4f0683dcab770231008d3fe88effc045568229091c0a63c843bc034e844c4b597929813f5dd453a5f8b1cf0280326c8ed4f2b32cb013c51ed50302047c435bb50067306502302f591848a02a084770307e012835e74817394a8637b8c0cf07e63e86f52bda6ca39102adf3db350ac077f2f82bcb8031023100864fe5d859105d49eb96e303477a8ef958e52d67f09d17e5e2e4a0a5eb351133bf2c3c9312e3103c746b8f46235abe8f0302047c435bb500673065023069e94e85cacc34dd2ed3e45252976801ea549715863ee323e0c1aea7286bf2c462c29c55a43416b465416b3dd49a0560023100d1c071b419f7341eaf3d3a80c66c1758b2be4d802063c3dd65c6f406887bf40266e079effcf0726418296556b4d4c56b0302047c435bb500673065023100a004a454ac67465f2298edd949565537a260255082c7549c0f8b2038bf5a9b35de7654899d44a44a795bbaa77d5f1118023017f67c0e8af7f50d8c06c5d1ae1ba5d908a32d9206eda1f4a470acc646fc8df8867f315f49e4bd7ac3e40a3e33c537390302047c435bb50066306402300ffc13426589be5ded9a567ba0dd287551e704dd328c87a7e08d9d8a3cc2048cb81327e93ec3acddfb9d014c42f95175023003a2ff3ca9360f5740debd5f6a861e810510a6f9e5b5bb68aa374b69b8a3efc07e180e07a777779dda96379d4c06137c0302047c435bb50067306502303cd092a8c1a54825938d03c285329b8b49998907fc98ae381bea6ac16020075f6cbe15967ce2239c60aeaff8ef081e78023100980db98cc14860f9adaadf7d7423814363a299dd48f0918aa9b05a9f0f5be263cb98335d9c6f12d29a65c3bac5c297c50302047c435bb50066306402307c942f6c8f5359600510bdd98d3df43e048b4ecde9e2e0e07f21c83960551a56fd79caa68b3c41e1d2bc198ac9337c4c023076230bed9e015e34eff3507a0deba5f27890c5ae2994d3e9235e93cadcc9b96d0d0f625e1841562217228362404a59d40302047c435bb500663064023053cdf3b92e01c889c7e979f1f23446bab850dc6a5e654e7e99b948c97003296403ff19c8aa73250d0bddc552893f29a702304b7650fccb9e3da4a85ad9f1ecbfdc36e32b790ad8ce23632f4da418be82761803b698a599e8c2c3e3ece62bb6d7d5d00302047c435bb5006830660231008fa5b3b3ea7fdae3ff9bc7c781777ec457aa83b73b47294633ddbea17bda7f1bc4bb4529a01a440958b7516a2322853502310088d55816498de252798f8afdd2decee63993e1f7496233f98f41b193f0bf2a34f578696a2d06a8a9a3190632e6f7156d0302047c435bb500683066023100d9aa7e74807206376fc1700b889f1d29dc618175ddc7604e6486cd0a457c027f73ecdc11cfb78f27cc37c704a176b7f10231009fefaa469f6e552f6a0f68691a7aba5a61601fbb785c1d26e8ec0e7a3cdf7653b023a202f91315ec0e2b82d151a6cdd50302047c435bb500673065023100b55c057d7b941f75ddf23232cefd936cef2d2fc8ec071f862969ca1330b9e830c9b458747a608aae4c1090a9ff211b5602306e2aab6dcb37f310e571634cbcc7aaa962b6fe40fea5b21c61b8788e223e9cf2f66dec0f657ece7ad41cb82c541dadf10302047c435bb500673065023014911e443aefc0320c708a3a593fac15a94988fdda751456088e840b6f84bd74d29a28beed82199d071db8eea682e280023100db072354076a71a6d936f0938e2d5c46c39cbfe273e471cae9fd8e500744b6aac3f50f09245b908e92f4b745fc8edb7c0302047c435bb500683066023100d678f1e030ace8342a3fc07fc9076347817bdfe1e2b0333bd496cd3c04eb382777fb86dc121388df534165394377943c023100ed6c1818176c2415f73d1b0d4b4ad176004fd1555a15a6bfd179a7d2e90e48b1d2be841ec70960e35c10e06e118f3be20302047c435bb50066306402300565ee08b2b73bdda222303315e32c559760d510dd84f606eacfae1056e16b3d34302340ac55ac3ba67f6ee52362552202305b378c4cb108873ce3769dcddaea6dd5a3234e2778ff582397ca0534035633aa4d76e5fa8083d215f4d4e88310c1f0310302047c435bb500673065023100bb5fda288ef28e0b7920ea48cb4de36f3631018873f4bf26101d7087a5415055a6ba11cef8d80aee1342b6e5ec65a57102307eb174f3ef94cd419ff8beb6594f7f552a7c4f4653011780820b4559fa92e6058e71af7ee046e52fd352a3886d5b29e20302047c435bb500683066023100ce06c0fd08921cc12aa1ff99ec0fd9c72ad5f779ec714889495f9d386a823612434b882e30dc69a8b45555197ea54bda023100afb60a846551f8ee78425aaf7771c7880ff665af74d77a06f9947485f2d0029ec900fd63ba5f737be85aa1febda9f1fb0302047c435bb500673065023070ae5f0ddb2780f2a78845cbd3c7830f0d0083118f092172ab2c169d2dfe9764894b4e817a689450f95657bff90bd6de0231009559cb982c6b286dc8d24b28f0231081a2e6089f0b6f9b6b39e7104bb41a279f04c5ef757c2236f9b464d5bbad3fb0b70302047c435bb50066306402307f9d8e917ca20adb5d005048fd22efcf469662e19e5bf97b4351459334542d92d9077e9ade893f366362ff9f2c6f97ca02304476d465f3c25c959cc403372f0206b80fe7ab00eb50389ea067422f6d714569be8501b061d6916a4bb871fd84242cdb0302047c435bb50068306602310095aa145716090cfe8b6c7e3785e53866611e17df28f6d123b5b5759af531defa346db83c520db7cad85c52f2a602ba02023100853dab84c71866f77d133836ea9ec9c2325db79a1980effa99a0a0df34b3ee20c7e9e87fdf56dbc272ddbc01bdae82250302047c435bb500683066023100830feca5ff3b47478d7f0feed00c05397492d15eb3fc9497dd49c6181ba1da99a37f4a2a81efb2f600c0319636f3c18d023100969e8f163a38d957487b32b9a586d9b4cc6f1d3292aa20d25a84074245317426a0b56408d7253fcd7fe6c0bcdcc9c0db0302047c435bb500673065023100a28bfbac01a306300d8854f7f2823031745522d7a0ea7d50b54f642074b439e4bcea8eb1ef2771258460c4609c90c803023028ec3931e6eb320f27042982c6729b3db19811ab8041258e861a0873a735f5b45b88f65c7091725d043836fd52a1a7250302047c435bb50067306502305304f0870c33465a61364e371152c345cff27ab22fda7792dd99015e2551260a102fb96e6bba8067ffe49058c7384cfa023100fea18d425cdf329c0cccb8ea0ea01b88677c400bd8db5fda6c9d027ecba94c4f70d6fe630b26deffd3ad34356ea7964f0302047c435bb500663064023056818183ce7d460e0c92ec9315c4480d67f5420878203356f513746907bd3e0ccc5a019095df22d76a37f9be9f633e0d023015aa386cdee634c61c2d238ccdf942bb73d3b4953cae351fc31cd8401439494b703b2d67783fe0c17243e10d2b5cc2260302047c435bb500683066023100d065d75a4dce19a476575260f9eff3db1e0b1f2089525e7f7717874fadd76885cfc5a0eb3e3547b08b41cdaa398e08e4023100c7df2e156608f2eb312e369b037d237bdb62a65141b9d6b76ba41f5e2f1af0ae6c5541305f34ffa6591f4617299bd8ba0302047c435bb500673065023024760e07db9981ab7d9c4efff9ad2250b8c50cbc885ee59578ce138d9a19c4862faee6d37e9e1c7e50885ea4236f46b2023100eb51f3645c9739eed042dcf023b6ab4b1e3d0008371e899039f426d65b2715c2e4cb9913860f36c37ca04e0f65fef2030302047c435bb50066306402302820150f76d9f60eab8b745001c4dbfa69b2619f8166cb7ca1242f7130152783bd38a136c8c87023503add81e341308c0230071ce4e0e70502efeb7226a902aed3673680fb78ce95f0079816058d561762affad5f54282ec21e7dcc5ae3bf16f6ffa0302047c435bb50067306502310085ba84417c83fcf9c04d0ee83c624d116aaff9f411a256c1b4d8bbc28cba0163c9253a17cf1193050b66323fc61cc9ac02303ca0a1ea80b96cb0db4de39beaa1bf07628a42208669a595d1254bd2f0a8b19ffe9ce557d0bdcbd3b937b34ed223b81d0302047c435bb500673065023100b8ff72ce0bb31651a1b2df7f190e3c425211fd8e7db339062e87c9df36263b009a5d67c190db152ed1dbc926b59f631702300bc4ebf32709643a62c133a7df898df422e66bf968374cde3959267db2c16629fb4ad73f4743f68c8f442ccb8d1485e70302047c435bb5006830660231008b49dada2d624dee22624a808c18099db07c5bd89896e8f376b6d8443c400051cb543d7fb8f1678073683c46ae60638e023100bd4bcdc67f590addaf819fe289cd14cb686d933b128a6ac5d808b6e29004ff8f6d31a360a38577f180060138fdb8948f0302047c435bb50067306502306ca46838110f1ba269794e09b93e1d06971ed244f23b59a5af72374739f0896fbfbb5ed6a8adce52c35e10f9c79290490231008f0280ddf4c79e46d2af91f6571a6349e5e89cc2c3274eb13cc3da8e7c9cd830e3341478a996b4126d456e15a8bc55620302047c435bb5006730650230227207bdb1d81cdf30d335c11fd0eac58e1803e15dd2d0d84740f87fcffdae8f287f5544db3c7b4ed875996ec086a051023100d565ecd3d152bc0d55b977a68996816bec6ad55a0b72edd29e93a8cee7ce7ff17bf304606a3071f6710aceb5f95704030302047c435bb500673065023010db865abc26cafba185cc0378401c588b17427784cf98fd982b7580279c700a32a66548bd210a984d1027ad4f2d866f023100d28142b5cad33adcb4b9eb72ffb035fc756a2f3a15d2b2464ea8e561903607cbe5cd92049fa34edcaad399abba6e5b250302047c435bb500673065023100b8ee2e1f202656fb58e1e1b057909f7b19a90d6ab03868f0ccc6afac27db59d73f10766985377addbfc731d97951f50502302e85c35c7c26b70318fec8cbb34a66be329d78e357ab829800b5de4367ee927198dfd473fe6955bdd11d4687627e06e90302047c435bb500673065023044b58605817b1f7bf400648eb6f7996e9e830cc4e6088f0067bb98c74ccf2df2cb081028cfd69b60e8cb36120947b10a023100d064f6da8c831f12dce95e236f2aec55d33c97529b371bbabd3a430b47d2a060fa3999dbc26cf504d06b6f726e300f170302047c435bb500673065023100f7d4d9a6fbc05c0b18cd362beadff450ce4db796bebc8aedd6e43c359862ea22787f0275c3af7fd0da5b62ac22e4a24d02303c36cddcc6a9a27170e05d1ba23871ba4ea2b99031d4161697f73d70eddc8be0181c9984746b512292ff1364b06f4ae60302047c435bb50066306402303aad127933596ff9c00a8b192d4299e88690ec0456c59606edd81d9f5004e2795a20d3e6f37da50bf0645088e615f84802301da5aed901d2b800aa80a2cacacb968f6a5e7c3059fcc3e9a3d20252ee51c770fe0475f953cfb88763d1ea59b2ef19b50302047c435bb50066306402307d63acdd3519f2d04fc70b73dec74dc4295ea6b9760151abfd6b8c952ba2d5807b8c6137531acfff6eb22b32012ec77202302d0351ead8e2df70697d0a404174fc52ea0eb387261ddcc885116259ddc88516df144e580dc43c977952029e100e1e7b0302047c435bb500673065023100bdab70de158b5131de3638ff40ff816154a2030f6043d3fb8855ce9bcafbc68afd661241a41c490452c37687d25dbcfc02304656af5f87009ed90952a3f2b19bc0840683a87b58ec712af09446cefbaed6311f3964d9638d6c726584c318bad0d4830302047c435bb5006830660231009bb2a5f25457f4eb8e0c61ad2ac45170908f9ba04e43313395627c9d97f5aa75b285cd6325ef102e09096da204b82aa9023100a0f6ca3422f29fc88dcfb2aecedd87db11cfb4046fc9493b4784bcfdc9b244b1768f73f609c88b7af53bdcfb74fb4ec30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302a9f1f1fc81aa1c6a37f329cf5e189aef26ccceb5d12db0f637e1fe585cfde1ae971d98f6ad5e352385b87ba1a8fed470230018c83ffd9b669f0837cd4a9381d59149c7d07e01a35d3d2047e4891f7762aa0e17ee4f22f0722309f5152c7bd9efbf60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230039ba1d73b21138898a7c38a9d5279813ff3737b2a06b61ba0863046950cec766644380aeacc55caaba7af827e556911023100c0a9d4ee3b598ecbea5efc0918416be6a179ed33e0afdc0cb9b02727e79361c1853bbd52be33ed2366e7c7ed0b2e1d6c0302047c435bb5006830660231009dad6abff1f5dc9c9b54bf866133375359e46e7bf382b6a4929c6a6ca802d33e88eac3fc2b1ecba25ec829892b2fbbf0023100f90dd0d2a9026dc601a83eaf978f9cc78b8c7d575306dc54f89511d55c64aea4d44c974f805299d45c4ead245676b1030302047c435bb50067306502303769ce923ecd3eae78824677dabe729225e08100855f1e07d9049b1bb845cdc2bdad0d34363a61cfa3d5326366ebb602023100b843cde65f829d009357acb37385a1715f5054fa1fd5416c9495fa978a7b9b212e3f739651d2228910e9a455b2c41c7d0302047c435bb50067306502302fb36d1c2b9dec24a578f3701126ab898eb0d3f58a697895989cecce801e7e2652379bb4c8e8d6ad46dcd677b6380781023100dda134e9b7fb8b5533621fb991f614b8cf11ee0eb09c6e779bfbff474e566b5ed8f32522a5cd6a493f0425b37311cd540302047c435bb50066306402306ec4ff4fb805c8cb7b5c78813046757f64f4104ff9449437c947df9bd1fb11f23fa3744568720c0d836ab8f87d9b8f84023067473bcfe4ed00a671d8e327d1dd431f9242a65ba55be2ee50451de0a5842a88ac277a2cac0170cfe683b70f8f25834d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ff4d321b2aa0dc14c092d252de2d86af8c26a344727ff8cf03665bb1e7e680b05e43d3ed0aef162b6f86d1ada498f81023057085a589ecaba130530c5c7a5353adad9d86af1f31ad46f119b9446daab911e0803e3b1288e419ce05276bcbd0aff690302047c435bb50068306602310093c999fd0feb2eb6129a8f7c24bfe2c45a2da5cd20f0cbde72501bc80751385fd684bc34112e5432503f9d5539445f88023100b3061e4b46000e21202d64afd40417d19834a1fbaa3c6ab0409b55a1c5bf298b8341ab3a94f67e9a951b222aa4f732e90302047c435bb500673065023100c51d64969bbfa3fe765b20e6026ec36113b673719a1da8993afac69b8dbb1e98e1bd1dc9710a41520873efc920ea757d023072271f048ca1751a859508b994919b2f98e05ea6e0633d060a6d40c4c8648501506fa725fbc2071dfe56e1bbac6f87da0302047c435bb500673065023100b4ce82b214f3a68853e2d502e094ea48db17db048b25bcfdb496ae2d61fee33ded46a261d652155b84f7beb77d0f34160230101dda130d09375d21301a0a74f4090aa38504cde22b4306fdea0177f998bfe87851447745daa69f03e900da1e0346660302047c435bb500673065023100c2f1e269cfb7e558cad1586146e0515ccf9cbfaa612d1ffa1b4d82aec9ab768ca40b35920e8c6ed30d439a5e810300e90230281706838b5149b678101a57bf1be9f9794ba2a87d3f77f924b0a446a3adc1b8d97b1071f8bb592f69693580f12a1eb10302047c435bb500673065023100ce5b0a95e0c6a43ac62b605e2d8fb55d90da07c2046cce929a7ade2bd16d490b379f962099ac461e1f2e220b7a6bae740230763afd107e726cca4e2b8faa8a323fe8ba9d56ac716445e7fefac29533e4221774b37479913f6931e166f2a9c1b266230302047c435bb500673065023100958333f80b6ed0c21e85c915ea68832542dea9f40a02c5b0fdf3bac483812bdaa5d0b357380e9266b20290d4433b85440230310a759344e4b9817825767fb1d5cc9972b757893b3c604f0629dbd2d35a394e5a459c1a96dd61b2e79893c26175418e0302047c435bb500673065023100cb807edb862354b96af90f16149a6cde9c7fbcb00e082719a55c17e30c2039138cc578dcf0775e48abf8886b22df72c302301785f6cf6b1774268c9de84ed831d61ef1ebac01b8fa6764e125d9b3710bfa72195b83bcfb9ac553419fc4bb2306930a0302047c435bb50066306402303e58e026bd541ef0e53b92a2451227601a2177ab0e8dd99e6cf3d5f1531d7f12363d916df6c9a3aa92a4405f90eedefc02306c8ed3d9e8fc08c56980f3864d22b125ce607256d2c3e6c25f93a428ceabc331016fcab9504b38eba9f0568e1385178a0302047c435bb50067306502301f7903b38fb0b20f769c03971ec065c64dd4581d4554debd463ee7a667d5944379dddaa58c9b73c7566b0d5de9f43234023100da7ac363e32dda3bee0beca54d2450be965200df7ee29bd12f8ec9279572c641d0bac08d5c47306523058c3f2f339da30302047c435bb500683066023100fa8481946e15d3730f09eb10b0f542f09223b431b2bdf81c312345e4e2cbcddf342bb198b83dd9e3fb6c4cb2efcb042a023100aa426b16787058a1b5d45d95d78042b04fca45b443ab0d153948f99cbd3d795be2d216a63c868cb857b0f2822fdd47e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023049da5b8780fd9b5f73bc093193420915988fc65161797d0bde964524ec71fcd4ec351179fb4ffb2e73eb0be706a6bd12023100baef8a7ed7823b48d25b9770ce77018f661435608626056b91271c0d96b7301d97ad6ada20f06c2328356487d5d033270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301b01c886d12866eed917f99403722e25b96a1e028a6771da7efe6da42321a4fd8f5301549670e05e5fe0eea2a86f2d5202305d815ebab8c6ae27d875d08f9a5626ea86f77c9e3588e0a51ca75a2e73547d1541035a347dc54bb95d66edddec7661790302047c435bb500673065023100f83430208031150fb1184b875c62116791b9e9f43c55b14332c3294cc79ad6ff81c264011dc57109ff62687128c7db0902307efee7768eb33d703887c8fe51b79862d5bf65d2ca50a49ee96b3b5ee27574896da00e1f1fe8653c7e986f7aff2488d90302047c435bb5006630640230174a168a250264daf9613d0923f164bc369b626c5df2971dc7ede109e5e95f0c0c3e7d8e40a1a32e6b2b1e59969f9f9502303480c5a2ca9b50a25d915e41c9632887a5395fe1c42d93212cfc5328bd721f64e7b10b1901e93f37a020357c766998a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301d9eab0e9b82adfd56be2c8ac1145e439c28b9c14c68fc03d8e92928028e81c06da8bbd94123570c4c4f31d169d031dd02303c96a87f1879ab19191cb0f74f058f94a9d87b5a6a51ac15087a5b39fa1346ff9407465ce83dd81585ae7ac3a424b4f50302047c435bb500683066023100c01bc654c3d01c3f3a44b993f1bdf796fa9795078ede6177f1c3695c6d6c34db5e9e5a2531c38868fc014d6e9820d102023100fe0f64f3a862d7fa754565ffcdc82bf7ea4e5a537b3dcf7efe4a14d7e926c352629d7a115f55be8a1aa42a88d0c31ed90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dcc086f463485ad2760a5d73669b5c681069daf41d3371a39e42928e17fd4525851be2e4be08382cc5fc3fe820a4780502302e074289b739bc91d92a0dfd7137a4e51b9dcc3461a656ec32a419e3bc07ebf50e15f3004458f34850e65153423f9c5b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d81c7f58b259cbd27d3b5d87f42d2dd260a9fbec953a0dcd27e881804fd2e020acb0bf55bf08e7fbf7f44869d6348dd0023100a4ccede5f552bea674236b07f68d6bb901074f1c8a8cda02fc746322d3b46b88ed4c85e15b5b9dea705c37fb6dd74b680302047c435bb5006730650231009425add9b4c07554e4068ba76ce8026aa1eed59e4c069d62e88aea0665f5ba19dc78922a71140d9b7eda0d34deb928f802307ce1a39626ca3608d8400eb280e666584e9d454da335f334dde7406dc90ad46fa5118b3ba4d2661d2ceb6ce42ffdfb920302047c435bb500683066023100a74e3a785d6f4d39222f02fd15a84e1217b701f199f01add0ccfcec57c1ace5cf398392b44e0b0124d5df65603d7bbf10231009dfe524d05f3fbf64bc1620487a13841f4ab63fe396d8fd915197f9fa4a10011ec71165c37b5966007e3fe90be3993ba0302047c435bb500683066023100c1871a6d26dc3465a2add276a6490d6b3bf56fad4cf8c23d2b123f17f7d14351d9eded0e1820fc803cd8f8f4610e1428023100cbc3df1b5c0af220c0b38451dcefdb8e5cbb68853a027ec7b52694292b0844596348d0a257e344ba596a8b49419c38ec0302047c435bb50066306402306884d9409b4e14749279931c4117f6d2448259a4fe99de4ebf4df99af52ad3007912175b2126a4a13104959044160d6102307ffd000609a4c0fafe2e77f1205ad378dccc81592a1b22577f4b5a09fe3e0876f8c419554484daa097103b28072462f10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304df6e5619d02a503130922103293ada854c162e158a80bc2c6afb6d49bdd30918af240145ea45b93878c01df330d4f8e023100ef89a079bbedb991f26543717fda4f82bf9997d37787f3fd0d95b642a5b029d0bb8da1099255a354b6e3c5130c0b56d70302047c435bb50067306502307c8f08391a584d65fa6dd605b34789ff9ca14fb917fa0fc2bd0de49b2b7639d5c4275a90415fc60f9a509a92a30a6fb5023100ad734352563467019dc001850c5cd81f4229fc1ec4c210c858d0206efbe1db6d655899a48b82ef9d11af1f1beb18e3c40302047c435bb500673065023015dbbfdfa260e5e855b5d776a793139f8b724a83661a9c3d00be5fc5817b5d1063e35060ebf1d97ad8e15df52a1f6e55023100b59a9f4def1820f81bf6b2495ffc32bdb564fe152ef3c376be9593d6bb72fb9c889a5ddb16cb2832ad664aeb0cae385e0302047c435bb500673065023100b7f6e25e06a7845c0e3c7559ffef8148f564d83eca63f1353dcb85e795f01207ed6dc8c0247f122a8f3daafb378ca861023079281298a8ae74ebe9eb0d17d68f94aada3e89f7ffcfbb4da83d2f659bf8ddbf39ec9f7f5ce91a65a600845c2f50e98f0302047c435bb500663064023006fff15c4726556510f3ca53c0b09dd2713eb0cfc5ec1436e6c45f18eec4e0920ba6b2e257e9503e57b8f19f666d6d9602300d108c74615608e43cc4f5f984953ab299d946932c504abb88ea259754b7c7381f8379168b7b3dd8d5a6500ff3c9fa3b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cd1d77d271d839d3643d826a479e76652a067569b0dea628ace82975a493fd16bef3bb88cb9aa82eed8b8f3cd2bfbd4a023100dc230219e0c5222e6a9371c507ab3122636188802f24252ec5c16db9e738cd53dbe671d5e468bc1c9a68bc2034ef81580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230287f4afcb374efa2e0a583c8c4635c93d9073cdedd456661d55a60ae130248f2a30b699de7eddf014e6526d1eb29b31f0230229f8752c1bddd2d83e0745e2b1dc843f00cf6c6cfc13bd4b347f2f0fccd6a26dcf125f5969ec888eb50c02d6cdc5e0d0302047c435bb500683066023100ddc907fdcf9a52379e7026dc94f4dae3d8f08ab81d6db319ede190343fb50013266b7901f564a261af26ea50121a1d07023100d9b1cc6eaaf0622170b9a4e6d727c483a955b985073a76cd4d93437b9b19855684ee974b47e98e5c2c9ec0721901cb070302047c435bb50067306502307074b2d131c9bed1c685b0a384a232b5cbe4299eb1b82faf590a5f3fdc3010dfdb73dcdbc70aecee8f87263476ce926e023100dada9aaced4270afadb0e6343e85a1105385fad9cc236897e1d4da6ca89618c0fa8418df97edfd580cc04ac4b42d91260302047c435bb500673065023030406ee772f8af4f0506deae256847f80af3ae710ebfd527b5f5acff84b4065fcd772e8c171b90a63bb34025bf04ad7d023100852fb41c5e11f2da16371744f181f90b50d2bf3c637004001ac05c8ae675acbf630c0d7b138038ef5ea33048092ad95f0302047c435bb500663064023077d6022dfbb3bff76cb2881e4e645bb223118025fa987d30727423beb77286968cb81b85948912b9dbcad437d8bc99da02301602678b552e232044d842e34f4fae20bcdc77f35652efe7f5dfa47c34e11517a7f33fcbc861c18a88d5383347f44bdd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023037569f16d92767866413218944a7e958f9f7e542662edb5441aaaa7469629b569cf9e5955ec370dae445cad6533f2bad023032eab0295e4c5edbcdaf557915b6d0751f5465940c53d0859dbfebc25c75631c9b9eef7e941daa0163527823784f1e6a0302047c435bb5006730650231008fea19c1e01d0f9c562c61b0a332e9edb94debf4a24f198857cff1d917d98a99311f545df0c08852b56e0db7ed25ad5d02304b5bf14f32971ec1d10e79b6c4cdbd8e486e0dab69d01850774e015f8c551587aa43bc2f6bf73f33f65629682ee29e5f0302047c435bb50067306502307c98cbda90afbf52775dc98ccf511314843033282ca1ffbbc3c6f3b628c43652ad7239a748edc96481798d975a2d178e023100ff00c213454e8b972031014ef0d949dc634db3a0e3dcffa794b6fdcbe7fdae53f5a9ed3baf188c01b5613f22ac8843210302047c435bb500683066023100ab7d6f35525948162c46829e8062e4cea9df70c862994f16f55149cc9c8dbc273489b9725bf40d30efd73c0d30fe9bae023100a787d9356732103a53c754be356c2e35e12901a363d373430a7b5356fa3041e595f5c01ed2545f28871cd1e7785456120302047c435bb500673065023076a22b7ec636030074b6dd68405d2ac235d326dc463df1ffbeec77ee558a4b04c020478ea1322d9f5e435af41b36fedf023100ac8d36334ed1149a6a70f661fd049e074ba9436d6b20f3e06cd823899d8f6b8f68c9214b68dbf8f7042c6c5fe2764ee90302047c435bb500663064023049a8a3c291e34b4faa5f0ff7b5e21723c593f4b04f616fb938fe61e432b493ac962b1b17ffc3ab8ac95f352d9fddd8f102305f9afcc5287a61d174e655f86567201f2b20d0d036351cfa91b5baf03cf095b59e54ed3e7d3dad8764c7e93f6c7029090302047c435bb50066306402302dd5ea08bb6d16f91b7168cd7f0d5dc76be80b90af317c13f1ce65fbd5ada3cfb405f75d53a8146ec6abf4854330e81b0230748a14c9bf04ebc33e6ff7429a95b8e0a95b73adb2c93dbdb790a07b25acc860b19145962933d0d3fad426ef0488604c0302047c435bb50067306502303905af80acef8c9bfcca8dc91ac2a46c25bc3db51aaa2c6b53b42efc73a0464c3bcfbec1edd29c6649b8b6849b843184023100ac0f9241ccd0b73db9379cddd3d5d0728d07711307e3ec36f8a2408a741c4af67f9a841ee00a46aad00cfe0ddb458aa20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100af6ede4c78931e3811b85aa6dc5cebc495ac4cdffaeb1b8a6cfd722e64ddf8a5cb7b833cb6f603f01c36c1b656a91196023100970910553bd5e19a56cfcbfdd76d0c4bbc6f0e0d835e236090d5caca61bf20660f366455dc3aa6ba2403150bcadef64e0302047c435bb500673065023100ffc43d51f3719080b633dc33804b459dd5021fe2baad302bf3ebc0587192d755c4e81a0f1469805de7ef78cedda55eeb0230760ac4d54cf3cadfdad09667040a7ccac6728a84b958ade1dc9ab61ca2658ef5e0f8c4fb7dbc67af17f6e44287ee68440302047c435bb500663064023064b41c41b19fff33cf907469d437a53860e695cf34227cc23d6ea4bc2813d15b68929425b66930a1247a9a23fb1b0a890230581c59cd3fa5ebac5bfa01e586b324769ec243b6a5231e914bb800698aaceadafbb97fc4c75bc6eb5525c094cdba53e50302047c435bb500683066023100f4487eb0d92425c64d3294891497ac887b74685b9f694a9fb4b8055f1899989a98472e61cb3013512241f2506e0172d4023100ac6bf3def71cce005f6910a80ea3fda576e919871114f8efd8d192148ae845f1953b76dc12355b6d7b6093da0895b54d0302047c435bb500673065023100bc1d5975e24944862778d096d02a5523f9af87d9edec1418f6d773a8cf1c6f99a4dfde9e99bf3a7f4f5b31ef9d8347560230519f2dfdea50a920b0fc9d73638ccad6a1744bdb0bd5191b0715c4087a73eec955ebd4f85d8ff5c7a1bf7287b008ad040302047c435bb500673065023100fd9a5c906064227be82087c5d5f3a7846c73cf3c1478e42ea0be9cd620d344f0d9b5833c1c9ecf6daa96bd4f150102a9023075efc43ca6561b1b6435a6fe4b14640efbef2e37dbad9831a611d0c845afcd0cd69771014645d9ffbf248f904791c0410302047c435bb500683066023100a40025ab0d2fc5a675395d3e0b080bb017da48dde278968f2682445d191d1764fb8963046e097209e494b5cedd8bd0f2023100af8df4a7f1842bedc79c371db3254e4b72fdacab71f2947fbeccd147908e8546c4b3daf7707ff67069cb6f668786718f0302047c435bb500683066023100f3a9a374d63d3425bc7df649eb5149b6a9f4d7dfe1defd7665cc95a6f1c95e48f79b02ccb50f3f58ee8fa85673787506023100b379bca6f2a6e9994c9d0212e5e7022dbf8dfb54eef58732ab43995af24024f72f72564eb805c3f1976bf077fb0ba1610302047c435bb500673065023028df356fa277aec4aafd0ab3878867a4d4d9c49c06ea0af2cc3b642947043bd8ca780a727bf6896f6befabf63007eef3023100ab88407ffa96deb4d8a232f74bb5972f5e3ede89a66f723124f7e9bf47178d2318cf2be94b30e46e015e10a56237e61d0302047c435bb500683066023100bf13129a9995844c63f66cd9257e5319c93fead6bc979788998fd57eba48768d9665c1b2e98e0d55a52eb111fbb374dc0231009fb27dee37cb1f80b8639b23f22a0270f105247aa459faf0a064e60f01c9ce142f5114454c17af399c3d16f63bb2a0f00302047c435bb500683066023100c4f10c9b4bdfb47bb415b3a1467695f8df1346781f3fbc97b385dab846cf966f7acd3f075f75a32dd047338ca233aa5a023100904052b74b19dd48365ab11615acd4af785258608476c2c3c0d4234e6e33c64ef77b258a33217a0235656ba86470c27d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f478180da9cfb87295270fe5355fa3759583e6ee886bbbdfc1b025db560847756a497320f2166e79d47e1a1bf1ea6549023100e90f9a520e0ea2bdd1e14f0de70f33315758de511d63f225828dbcf1b06286d5ed23af6ca1f558254e75f46efec45e120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e639171ed853b8f293d73471ff5d93fac696c786d4f7a32e651633bb6d72ff71106a41b41cd038ee5bec8e59bebaf57202303dd3bdb1351032854803c47372075de5d313fea880bf1e028859e377090f84df2ec89f6d25416cd490f032b51550e3c40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302e99f142cc1a20b09fdfc5998c1ce41429171c150dfabc518a6e5069c31a91af69ca7f3f8236bd353783310d212bc14e023100a61030ab60c2cd713ce5579f3bf6b09285e70e881a02c2b1c38fefbd5bc002450e67b1b9afd533f26ebe3a66db9383450302047c435bb500683066023100fb800729f3638561e4f7b68862870774af008d8a247b68f40d47c7556191f01a2f7a538031672404e01339c585562f35023100d69aecc68bfdc2f28a080e68d3e16e560c263ddfe70653b8432312a25de58f3a548ecca6025246645e21f74c73a7142d0302047c435bb500673065023100ac8ed2be6171a8dc0eeba290f15b9a5a738bb7def3c8a0fa8cd0e8eba773ed4cc1a69f69d08948354b57a48ceebdfbb502300709993fdf7180147bb5dd66e51f678282174dfc12f4c1bf0e3f6d087ee865fea2de9c9a754f427d538d2161cc213e020302047c435bb500683066023100e8de46aa9bf783d29d27379f30c429bc6871c8ebf58be8f5c3df9995a648d3c5718d32607a69fa3d66dcfe4ff96949940231009be737a7681b1386d7767b8702bf7ed16db5babbb2c6b0c4a229c1cdd057014805345ed429abb0e6430fd395304a38460302047c435bb500673065023100f01220efc4de8a01409fd17a6c56ab8f8478a75cf08414808056eddd8ff940f09aae461d965cd367bab6b584551923ff02307e48ae868e17316abebeaedb51062cad8ac7ef724bb712258818612d0f8c8c7d0c28719a30cb94eca4ec5bc1d3a056bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064022f6037638a96912a91ed9cde8b155022971e8be37c9445db060cd8958dea3d119fa08d789cab7362a22373b25346720e023100d1794cc1f668ad501589c569f92c6262dbf807f830b8fda31280edcf42ef65b9f1abff49e220d39ff7cd84a5b896d55a0302047c435bb50067306502305bd8ba6b350d449a1e50562fddbd373ddc1bf8b36e2ebef0fecf2a485ab644fa27a9ceabfe45aaaf59aee1191cb0fbd6023100b72e4466602f5a0f0d49831eeb366b721afb6fb5df70d7604bae21a2db25c3bef5913c7edfaa27eb53f6310f13e2a3790302047c435bb500683066023100c7a222434ac554bde75dfbd7fd02737727de8e316c65fefb041a5fc787071267c5a8e39a28817ad6f11ba3cd0af7f938023100ab66543c16712160c6d1738fdf1439622b7a0a6c07903174fc9fd997e673ad59dbdbd1953ef22e760ffe747a7df55bfa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300d19eb2c92b0db8d55557d083fbb9fd37f6dd8f6876469d66eac095e9f672cdedbe25a2f418ee373a3314bf4a073c9f1023041813e7ee44a876feb34261688b5c94dd85e4ecf26fa87512fdac10177ab2e6ac0ae0475d570f7ff799a214c96044cd40302047c435bb500673065023059888ebc0f595cdf7eccaed6120cf3fa2c05ef25bb59e7d438a5a04a24f127a409bdbe235a97e5c492d69f2073d0ef32023100e3bd3bc8276ad4b9849ba466351b97f40dc3ed3a5980bd507052eb25efba736aed7eda945bc916273c5bd890c6e903470302047c435bb50067306502302e533002e4a33ff25b57afc95612986a65911dcbca399940e20ebca4a3ad465fae914385ce7e0452e9729f8ad831c57f023100da712474d586aeea0d21c6db1d68437c1f3961844078b6f051f5a73aceb49c55c3d2c1f06e3fe12b33cffc832f6b6d3b0302047c435bb50067306502305d8621ef1e167741f887ca433f8a625add140b18f2cbc41c83c559aba5414f4c5c408c5d4c18ac9a236967d76504c575023100c4bc3b00f5d716e5f73656838c513782d8f2db2d07b90988b388fe11b560e0c008a6ddf51bcf1a95a9d720ca94a2f2b00302047c435bb500683066023100bbd019c9dc53f696d3f16862d1b1c7c3c57d93d941e790b835a57e43a0c1d54fa6c7a177848370cb70355893d71dfe0e023100d69b202d98974357e26f5a76490ee2d2a3f21f2931d6fba9b581ee95b410fbb0de575238937dd9254be1516804a92d6d0302047c435bb500673065023100abb1e137e71d305d19af00eb33d96c73d60c725eca8818c42b1e1cfbd984ced562f4c68002fb9144469244be3c7f4a5f02303d1adf68058883e21aea5041e42266c8c4694b3174f67e77e68cf6324d3d5bfc393a0fd44c8de2f9206f6c590670f7080302047c435bb500683066023100d1e9a268854fb9302accf7fde4bf37f108898f3b67de4f80cbdf964ca00d34672850ab273b60ca61a29bec34dfacaaf9023100a4216ca7d699d6814291ce0e493516f8fee1ee229720f5ce7f6525edfef1d9efa88b2c8ae0bdb4232af344c260840a470302047c435bb500673065023100d1506aedf63a1f88e2eab96fd6c10658c39dd8ec8d6b1c7b8d6ee4b33097fe9eafe957b172d23567fcc403ffecedd41202300b85c6d14bad1bf33e2453b6af6cd7053af8b25ea8e15e875df7acc69d331ed06d57d4b029e15041d241ebe7154c08e30302047c435bb5006730650230470691cb0f5fb9f8568dcde958aa2cc89b1e8d7f04c3571214927bd0bd8541c28ed2c57f841a247fea39abb77005fcf5023100fdf49e273b7890f5b77685d4b3a8115af5845fe0028f74c328782b295101a59af5f7dd294fb494e2481b277f3917cec70302047c435bb5006730650231009e5ebb29cd975dc1c11b0694326d7fe5195c8e84281ebd6adb8beb21749974c30f738725f0e348dc0e5c7ccf4490e54402306624cb32f815816b4694e157d8d450f7b8ac52de88440af60753291ef401435a27225c4e0d96f6b8a79d3581247e5cdf0302047c435bb500683066023100c3f4ed4c97c5d60197bd9f2b2b3d4bcf26023dfa5fb327b905633223fc4a9ec5bbb129afb0c123e478646ce5b3e9ea7c02310084703f7f2ebb0c2a38e6d6448ffcf76f3614515d745a11d0083e802d6f8d89c70e7454c190650b9c90f165c45e7930340302047c435bb500683066023100a958acbbf6ee5538be0926b84a192e46ead9e6d4ba784655983beb6337dce4933a98918b0e7afccd77a5352f844be2c9023100e2ffaa28f3c719234bbd9cbc609158d70e9b7a8dacf1c6744b673be6ec2a1624f7ce73c063978e19ad3b50a2f2ca6f290302047c435bb5006630640230502990923ca58583d21dd155f50fae1747c3b2c068150fae5e650431b48057a46bde65ddc4f3b7b4f4eb1f954bc858570230345b4e97bf403fcae719d634960f681d4c009e1ca6d769b8c9cda5a501218409fb4be986b329f9cfc59680780cadc9c10302047c435bb500673065023100ee35ad1169aabf01e4f5f362fb9ecaa173e612809af06bd35de4e680548df1ec9783b8d2e146c254e64005a0a3b592a20230640fb495c3b070b7b2ac72efe6c7c43e8dd643ba38e36059f6bb3d74163d1a7ab43dd4f6a9629fdeb12b8dc0e5b64b880302047c435bb50066306402307ea3055b1d788b3322d84c1736a7efc2d14ba2e19774e71ec81f886f0942892588c19781e70db7ea109a2785b96ce46c02306567960e95f1a465b5ec46896fcc7ca6022463b1ec6c038bcf5628159109887cc5aa3382c1bb0f5511845aa52bdc4aaa0302047c435bb50066306402306cf9f5fde67dcce7a4d2d67149a71112663ae8143daffe2492ec4696fe0f4d6c09da3002b8c30a1e8e0f9357ae207d8c02301b2663df26280221ad34550fcce2dda2c672ed931cf8239746a43e90e25537e9e7c3df198d264f0fb67769df262e0c090302047c435bb500683066023100a8d8fc284a8a09ef42b8cebf2e430b95af0893669e9148a1e163344aa6d800074ccb733011387169acb6495cc9bec6a302310097df117932c7f33d4f6f436fd0dfb08fde8d32623bd84a850216a3000c40fe7d2268c6f5dbf0037216fe668bfaa73ebc0302047c435bb500663064023078d3b48b933b0422ce879898868945213c3b6dff46c21dd1c491911ce1a86c8a99330f227963d7cfbc7111c4d17b443a02301caba6772e0a7a889ea3332ea06eee68eb49d86baa2b7620d9940969d719b87fd271b19ea89201e281eea14beec615bc0302047c435bb50067306502304a96005927dea093437d660390f831d78a20b8ca98ccffec4adcccdc7b68219752cc1a50d28d0b941df93a8f8ca833b00231008688c928c3ee70531d80d5a0de9d54ad53cae65576dc45a0bf0933a043c95964a6ebc896a37d2f3c0ac5a6166578435a0302047c435bb500683066023100a7f057fbdf987da072bb1215cc67da242443e6ad301f7f92d2b65413e902a19a0a5fe62764eb4470ad4cce79476d5470023100d3881343178e859c5300736de93322f5c9bb28346e521207a738cc86c149f77f4a4c7511284be9197d147485775e9f640302047c435bb50067306502307dc7e76514c7fdd1e2c2fca2ddcbe2b25ca62778cb46bc3fdc5184401848019a21adcf8399495f2ad783f54619c472eb023100e6d81207b885620b55d651948a80f64da7b262443bbca88760e12e790ae61095edb816b6662a2cd88e792cb2034a00d10302047c435bb5006630640230470d9db9f9b0e22148f619a7c803d89931182133a8cbeb46066bf41c0f14cbf16ec59a834ed51e0b7e2cbaf658b374770230323c6fc44d4b86798b5ad1a3f0b0c82b45a624dc70e43bfc12fced8a658856bfde572d113678f4240f705ebe40ccec290302047c435bb500673065023100fcb620ded71cf6f93b43a1b7c0cb29c04228361d6263581d583a6863df1dcb4aba53bbcef1f687c09f4d67aacbe8b32b023074b0df3bd7d8c5ff98d9967a53a539a0e1d0227a314045d2d06275c12f530f0b6fcda1d861c85ecc75c0660847c6e95b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023035daf18ce9879d1d49441b7b2d5cbfeca3299ccf2ea6c0783aeca17a03c63b9512a06c9e1c07c0d2a602571d68270e4c0231008dcf7ba35c440c6f5a9134fc1b15e5675eccd64b0bc925b2219f9d05ecb7915d54ffc46a0725a1d9fa3f69c43064b1530302047c435bb500673065023100d3bc080c7d82f20479e8b43fd075d6bb875ee8cd043c3166d16e45fabd940a1440ad5369d6746cc5b236db3ffa082a14023032fa7f206a657131fd357897ec81db0f97046290afce88d91d09beeaf25d89f066ff2d5655bad9b30742aa9db58026140302047c435bb50067306502310083261d8ac0f52b3f7ab662fd84d40c0b13c0d12efbac2330b54f7945b787238f3390f3848a4e4ef276dac8984ae44bf60230342b4e585e37c0e5bc9d4ad63ba93e02cddcaff9913f50772288093d769ff42f1891a59b0c32362b872a846ce47274c90302047c435bb50067306502306b1915324879e52a42f20d03111b22c4cdab19f0ab2a01cf0e2c890a70fa428c19f73daa5afcb39b0fa70defbd9cc178023100f482ee45c1274a19a5aa5fc2e9d1e68a61cd97ea1e0da7bdbfb19a6492ae06125ccc32459bcb03ca4eae2b2c48a80c2d0302047c435bb500683066023100c6c61b241073aa2f254a62c5a3f6dffe2c2305e32fe459f3613a2f335d1f091727693cb2e5880ecb949ebbe5a3513b10023100de647a056c723e19509c4a19cf3b8eb9be273bfc138251d5384bd0e125ae5b2b31f4495ea43fb97b59fb34364bb409020302047c435bb50067306502310093df4545966549e74f6d144d02e3e8a4ad799b3924a197e70226d8d5757ee68cc1814ca066dc238b95f077c39e926527023026b6060de62fc8f7755972d49989c733bc3fa22d3192f17a8428b8ee3ca7a13c525a2cc103d0b279fed66a5ff1b5414b0302047c435bb500673065023100f1bbafd7299dab9fd937af8ec8ef9fc6aaa1f0a53c3ab7b7b7257beb2e975d2edafdf116685653e088198476e2f6ba9d02306b53e4cb45f4a233f614ecb8fc7648685396adf24819383d1a718f5ca2937f38a25a6b4b9477caf3a14c3a92510ac5730302047c435bb500673065023075b6ec235552fde67014ad85366978d5448d7f6eb131e427aa52600dea114e030cb633b96770a4a8816189e8ea11cd38023100d61f7e16a4f4f9c831d5b12beeb6d23c5598905a4ec7e7bd8f2d62c5501e7fc553ef93e933146c480d2d0b225e025c310302047c435bb500683066023100e132a636d86402c88b32c0cd28514778e24b9bb57f68d4923fa5fb5143425e9bad277417c64b8cbf5d30b2988c56cb8b023100cfb82b4eb7f8a6e421b19843fbcf4e032553ae418a58c1fa95d16b95d95c16a01e11feccb1b8c203afba230f9fea37680302047c435bb500683066023100d8339b58f76e46a094567d779802d59f0c008939812aed048e7a22755d650c6f75b12a54d6691c3944dd29a183f63ba7023100a8c6943185caa6aaf7eb3e6e8598d98f2419cf0c58e597bd5f8babbc6c3654295743c871ba8c4493e575a1dbb41d89fb0302047c435bb500673065023017aac8029ca5a7a672ff5033eb4e598091daec605d3cb76d2628b636c9216dcd09a834be15742d40a281fb3ace6f76610231008e178bea5fb09be5240a06daaad7427dc11b0fe8e88573609445a73056fb1fd3a9cbbbdf67f64aa9dfd8be0ca049b1cf0302047c435bb50067306502303757f62cde35c97dc0e7ef45b0d70d109afa4a9ac564d77c8ef1efcddf12031b7df4f639ec02cbdf891073d9a5763384023100d817c8452fdc5f29f5b4c21ec17f4a4e2d64bd05c47413f05aa0ed56c726448b26b7bdf43b46db2919e1582365cd154a0302047c435bb50067306502307e0d52bcc2c11f1f7d02361b4a9fadeb73ab3776789dfe097aae7194e3a4a1dc1653c872dd8c8ad0c60e6247bda2d156023100f76324a58f70305a4371b77bf761c463a9d319832eef4e627d7fd2b84a215457b228064f96a9bbd960c94a36bf4b6ec00302047c435bb50066306402305784afeebf67b35ccc7088f2706b001db215889840974a26fdf4c313f0428167b1f6fa65048db744a7ea1deba1151f8902304416f616f233a2da543bd0ded260e34fec6cedbb27bc2271b9e9b1d0a85f48d30f787ae9c41966bc1482b77264bbe25d0302047c435bb500683066023100b1525e7da5a3017c3e2d98cc38da72b8693a448e915e25a56da78c73e008ba811696c3156c08354db671d2ed75da6d0c0231008a13e9090a897c726dcd8417278c903828e0e131628911fd09cdfc8ff08b48f656d4b99fe862aabc36c4d57085a9e0240302047c435bb50066306402302ee753653da1cbdb4add77c14a07b41504a30d863c06237c77737393ed02606ed943e2a3c530025b9c05aa7699b7d588023007f0218bd8839f2b90c001f36eb72c1a8f4b3c787e1d9b6c71fd81d30a7e70f7d70f55b29c98be160544c07f64fffdc80302047c435bb50067306502301d41eb10da5315c6e749fa4d35dd29ec4d51d237b56dc821236065d58e259ee8699816a1b5ba8d039a68ed76062a631c02310087d3004afa16f0fcfce9c7b5a5872b1ddfb7ac8ec223338d2a3f0ae0ec4bd92106d224e1ce65e04a531f536f280a318d0302047c435bb50066306402302147df183de7cf090bbc0f9d35fa8c02985ccbfccb2202417783dd0aee4cefd8c0a1ff43daeb39ef8b4d03202d2d4703023042108722b34219e4bb59c38c66cc98c9ee8fbc94dd3bcd9d3a1b029e9fcb42e45cf508f2a2b4dcab8ef04dbf78abe3ee0302047c435bb50067306502302b29c0bc39128fa06c89b1f4031425bef70554c2bc4f5ef46e1776bf7ac464446425ecfe04411aff1c0cfe6eec45010b02310082b1c1404eebe035ba2cfb4ed81692559d1cb5b4e118e0e0f26554c3447f9eb4c9f96ac2fbe7cd560224bb8c634c84850302047c435bb50068306602310089515cecb60c102171e7390c1bf3689b97a8783c953f7d22b0f0e7d92e80890004f5c29a1bc5ba9077a17108aed616bb023100bde6b1cfe52ea6da798833123d7147a9bcadcb1a7b980f6a8919a74ff58298a82b1941c523a71ac87ea911fbd4cdfb2f0302047c435bb500673065023100c08dc02ec0fe4e07424b9d5f8992d0fdf5123200b58752bddc89af43b95f3da137b2872772f03d4409f97af42e82618f0230442950cd564876a26f149a53a58ff23927c8d708b96164e80e7a90f525cc78db174886296359fd1783d1de03a682a6980302047c435bb500683066023100d0b9440d492fab0d67452066ef511bdb2d6f1b1005c47ac145492d1fa06cdbf1d653c2899d2c543d5c1ba2fa897ee3b5023100949a9adf4b84c8ac75ac3a741bb98e5ae472c8a7e4b698be2d6179a42b773daa0de767ca8241922ebfd3e416c12258540302047c435bb500673065023100d79c809ec1e4b006000a33188675b6f6d9648f86b3b399123cbbd58724b9a0eb03cbab436f7907e3cae5455c54c4187d023016a3b6a7b2a8e8916c41d8382f2ec0cd4378f7e956a2012efaf3e5d70428d7e18b325005baf208b533592fc3643ba1930302047c435bb5006630640230463be61693e2c74cb969c29aafd7e4ca3403af1c71b4194882a6fbe024a6eb79437ad64fba40a44be75f90962e7200260230210200a6fdff2dc4c318876df4aea757298fea4f8d8ef3bdbae333ae86513dbbfab5067d686fe29d8b8c06e146bfd7e30302047c435bb500673065023100d8a86b4f57bbc75e6ed6348781bcb1f12e6d4dbeb90c59e7c20558770597ae1a25acbac05b2b26cbca73d8b11fc30eee02302d1752a81161af8cae32df4b685600b07f25e084a3574347bb1919835e0e14d944627b32c5a189edf233d22aec1388080302047c435bb500673065023044cdebece1e54790448bb8f4cff1101bf8169aca0c063ee3765f50aaed22a544a18d8c5931f08bd3c968577ec7031e0a023100f1e9529a13af56ee859317cfc2c5dd8bf39d46c25ef8c8b70916b3c20a5a850234d878cff1f63a3f99ad267391da56d70302047c435bb50066306402306fdfb7a7c029b521ae77a6394b60a7ab8fa946c5c2baca73d4f99eb5be79f7c7c3bc964d4575d9fecde160eb7f3e3ac802304f54f00c2bc08ee427824c8a0accbbc02f111a31c0083759fa09ffbf7ac3dfc0924ed81ef19f00935453a9fdcb73c4900302047c435bb5006630640230171e9205c68cce627f74c95133257827350512de0b3d28ed18912112c36ae159057256ead252489a3537df850824d7c7023006de45ab6a1f2c4123766fb1cda250ba7b39422a73fc15f6e27f5886948ee9f2368d26b055816c9c9259369c49fae61e0302047c435bb500683066023100e11b9ebe2453c24d896995b0bb2f4acfe6bc21fdaa33bcba66d30d18115e6e3ad918f1b0d59fab7615cfdda8fc2b195f023100fb89f979b54e527d659187d2728ffcbc216adb7d5db44f9ce718f8f453f252862e861788c62c61b972be614cc05defc80302047c435bb500683066023100aed8b0300b94badc4cbadcf26490ed71767019b0b72202d8f9d70be89e6853fd72efa1bcbb7dcddcdc3673810af920e4023100b5ba78c4248cb27d270d101e492e3b591f31919354bfe53f1a1b230973c73f39788fa00991ebb47706891269d8000d8c0302047c435bb50067306502305c1efe6bc7ab792d25d3a3f922a29b39fc4731d2d56fd691c78ec72e98dda02273c18a086dce7cd8c6b60ba6daf7224a023100e47063a3c69f7d89e07e915aeac7271e8f2574ab4c2dbdbf9bf228961ccdf05c7797f4e8afa6f08502f6924c11f67eb60302047c435bb50066306402303f90d35c2b442081b8bcdba126dceb8c22f494400da5e2bda98cfe45072fa38fe36c7c7a3e260d95a3ca66a77b39d6b702302ebabe25d1ed612fdc60cd3c2578efd227b30e24e29b0ed0e6ddd6fc4351f5b6449146f402a81acdca9c8c53fc5df0750302047c435bb500673065023100ac2a6381d6ae0c56f1b65d15b872570b370b6b47d24cf65885879a121a529d9068e4154a9e6e7be8a56d9b110e0880d10230383d5d8ee6c920aac0c2522ce862e8f00784487e492b845c5e7d5575676a9eeea173599133b79231591735699e787db40302047c435bb50067306502310088dd41ee12ef5381de013f6252d9f9d29ce3777ae4ade62d4f482ebd31d37e4d42066d53b629c3a23b915f91cf3f28700230026663ce4adb864ed528f12597de120c3283c754755912ea711b04938a6058bb92f46ab886abe6edd4ba4fd9478324460302047c435bb50067306502304164763fc9807033b2303abae0d4cbcdc83d8c7c2bd78b3d263ecc0387ccf40b78ba0881b5007870dbeeff64f58ae272023100c0140644d8935a4e61d2e4fc91a69a28fba27bce434997b2f175f77a9348cb930fc3328a1d4d55173f0df130da59f3af0302047c435bb500673065023100850a8b4638c1d5db932c28b3610489648fe8d26feedb69f1ec68d1ecb1b3a276b3571feed48968eaf2bc9e88e49ae4bf023059aa70ad7e21fe88f0d5511a0748d4f2fde496c0770dfea959a796fd1ca9a20b4a87c41eed15818829abcc9dde3a6bff0302047c435bb500683066023100d4db87164ba283b3637d55b1e1e6036130784baf7163666c8e85009a641e6294c2b553b612c9697459d00aa4e48cebbb023100e4e46c4a9c8039e518a388fa7832af5b6d668515e88288c2a1b70a068b397525c58a564a642fab5ec5fbecdf42faba3e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301366801e53f5912cb841426579f400c6f30c730e2f3f33cdf4c1f5a61cc6653c777a7a333017838afe2d2fc8c841918f023100cf078f531c77bf550f219dca4c057f9809a3554f668843b9a49c3f523679b37c3ae906644b3f73135ea0b6b55e91bf890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023077d892aae96fd9222fd2ae872ff232daf065d2c8a4fc996add7f7e89c55a8b9a391d51d1eae8bbfc59087bf77dcdf21402305081be5048e055da750f7424256e53c7fb1a6d5c5810db2c705b9e63c9c4f22cf62eb6944d1449df9ce8ef66ddec1c7c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301e4b66eee7c382393b877cb5d79c81097552a4ec4025c05f835dba9a32699853bf30ae6ca319b96fd5ffab25e6b6f8d402310080fa7dec65838e4564b6f6909a889c00dc0c1ffeab23f8d74fa3874237396cc7e9c71faaaa4a3e1208d64c870509d8b10302047c435bb50067306502302e70005d4fac1f204f23eba126c3b998f1fbdb57fc5c7e050e70728c655e1d211f7e5cf1773a635f270eb8ecc783b6b4023100855f20928fec5dfd4d2ee0eedf543c9494022899e68c42a364f430a23f7916c1a8c38beb20d662b5fdc71f52b5a9492a0302047c435bb50068306602310092942a44d12b9a2da09bf5832f02da35d076bfdc60e55af5b67c154421797d253131d26bb72d6afa7591a0fa1061804c023100d731a2808e41f9bc38dae7e5107db1d2e43fa3caf342a65e9b5f12b43fc86f9de9312c7fe361160858a24382bba4a1590302047c435bb5006730650230169907d97f89eee831ac4c0a053b5a6ec2a4d02584ce723b4c6f9aa54d52caef16f34b69f16610c0e910b84393bd7da3023100f8cf7a78e9d360b3d2680d098d38bdfd02be3ef30779eb1a6fa4887c1dc0b9fbd3d2a0f9d31a77f7fd92de4b363fa9780302047c435bb500683066023100891d53a12c9b3e79e6706d08c6e06d70c9f7f8150d05879317d8e08f7dfb3e46c257a45df655830d428a748ed8c998d4023100cd59175efa59114c4286bfbc2f4c0ded0a8226a989071d0b94ce8a6053aa94d393696db7f3088a341e1b49560860c5f50302047c435bb5006730650230506c365ceab5a753685873846ac1831564855e88590f9477629e8d3733c4eee80837638e099c9fcd54bb8ab2805f5818023100dca66b72c0a72121556d4b017f0942a4b0370c40d9af9b7df54b2c8529f1a0b4e85e77af8b2ae235275237502a68153a0302047c435bb50067306502304859f5f964119c33c1f2675359fc05a7b120dbce030cafafc9a1d32948fb6b09409a7bd3ad48de8af16b5f763fd8995b023100cdf4b04726e80d5d3478974213a43637a455041f9069f47dd9e4ca592f484e1057ea4c7d9321abd05053ea7bf17c70300302047c435bb500673065023100992fb1556fce278d14ef3c348087fb737f69ff9201833e171272496dd2163f8857a5641f58db0a635d684b30ae081eb002305221811de2e6f87103cd323ec820dbe962f7ec1add27e101c7af3ec246062a7f39d3d889a71497017df34862c8a070400302047c435bb500673065023100b9ebe0414891aafa446af4259c3ecd323707e699e92a3ca366f3771f957cd9b33f981a5843b8b986d046cfb3c0bfdc5302307f182acee7e941abf08186f72200b4b6361c816293c2870d882cba10d17f0de61b47ed01907368a3b9dabc6ea1e225670302047c435bb500673065023100acee0554e22d98d48cca1f34fb377642b6b50a0dd6fa992f3756418225ecab401a2cfb9841ee242c47c7f6d762db6a630230083ff16ed6a1f2553eb4d5ae332a9ea81053bcdf3c3a09c44ceb97cadedcfa67783be18e08ec0c67015e56f165b84d300302047c435bb500673065023100f3a830ff3273fd11b165457a89f7bd996842f5fd4279bfe0b74c4c4c3089711e52ed3918e4659f2680292658b3dab60a02303c84689e10f844a348770372a0bd151fa3297dcfe95f56bda933af4119d391bdce52d52e306755836ca831cf8254c6a40302047c435bb50066306402303f5ad038f00f3e7ebc9f390ffac763ced5599e4e6a79be866dc03723f18d01986aa8ffdf8dcfec023ddebed7483b60d1023046d394f682f17d8d9266c1ad55ab0e380699b0a882735efe1958e11fd98046defd4bcc2304274f4c42b8085555269cfa0302047c435bb500683066023100f451d64f8beeeaa3c92eb58d0af8684a0640428eb1c0c3c69a028b3bd606a4241027a085f37e5064c2c8470745f73ac9023100efaabb80b48cbb1fa028add082dba2bf0ba531405ae0b0c635fcf98ea80176f22b700b86070aa96a210eb6983e61a0190302047c435bb50066306402306254925c1dd345931e0d7d75c0e741a928fdcfda8f5f4f63c7413f2fa0a0e8ece51b287bf5618ac7f5c9d8113a7bded90230084b118196192bf0ada19f399469a3fffa2bf60937e2ce7850ec5461e02f774aa30adb4176ca39389b6b23f5fff9663a0302047c435bb500683066023100bedd87c1d7927eaf785ec3fb78fc03603de6c343910c62eeaf8966e1d786ab0db0002f7244cf1e30300d337f53a87887023100c7e400d886e7ff763f3e75431384998760c026c3a1a3c79d685307b252272dab62ac733abe3d6f57f56e8decb74fae6f0302047c435bb500673065023100eff1cbbfae5d764db20d87bf157fa451f696a0e7a2e45be483a8ecc4343460599f61123322cd61373093e81c9535c68502301ad93aee8e0044f03b935a32c665665624d4e32ae612230c36a7108bb4aee357a2d0e8c1ae0dbfa2a8b70d57ddfb1f190302047c435bb500683066023100b34071f54a87a8790f18074be8bba20ac6eb3d60a59475eae30326abeb01947a2a33eedcef67809d51f7adda970ffe760231008fdb31fe2310084724a809a1e6031e0ac0ebf80b451a585deee048adb6a4abe45086d6effbe09caa29c77beebbd0ccef0302047c435bb5006730650230156aeeceefbd5c320422704bbd330f41b888469242dc5af0e622108052a8b19a38d355dc99899652c7fd4b793b3b113d023100a1401604ec5d0637e628fad4f4be9a515916b8434b1e84de08cff29dc4f4dc922f09d442d202931af4471b5398dd7f510302047c435bb500663064023038406ba4cf77f6a21f05b9ca5d6f4f7a42034e39f7b9b56402d139cd2c07453a477d07bd06811ef2fb892b781a3ef5c402306b5a9835160600c54660cb38b4b76424af4e1d9faaec837f772ca5b90a084612edc145cb8664da37a57fbf2191cba1cf0302047c435bb500673065023100f48bb9b6c438889cf2eca838c021eacd1e51c4d35ac31ddb6dce117507766b6181492626bdb13d86501854cba89eacd802305fd93ccd5736cd1b7324f1ce91ce904b06ec01fc4ed6abd485818b73f7634ec8518e6255fcd4a6c860b1944807ab07b30302047c435bb500673065023100b804289ed6178070ddfe74e701d383e6ec65dfdecff7a1ff0c9f08fd6df0a6ad95ca2c159cfc53df568a27c12487af91023040d0790e53c1a9ff171752a83dc4882201cadd9097325e14c0c6569a59bd107e78e02a8ad7c55dfe7a7836f9440be1650302047c435bb50066306402304f13f6d66e3691ee4cad186a15cebc5d875debc85a720c2c13dcf530191281bde8f1c33de98c10dd887b11c89fe6431c02307ee59ed0e422bf090c2a8b210eed8fc2a2a9b28d3f36c57903b3a9eaf3451fca588975a6d815576e9d036de6afe4c5e00302047c435bb50068306602310082dfd5b3fbbaeae6ada7ed87a190c233680ca1ae03d108a090590f3aa091ad8fb76fc54f6e99442fbd367937dec502c8023100f129133d585996ff0859da43b555904229f4c3b0dd6b028ff11fb3464509f5786b2e2faca745b9dc30abeba0ff25c4070302047c435bb500673065023100cdd6c3eed57041031ea4f36896d4c46bd5f2de75a379d29e86b023786863ac2009123d11bc4caeca02002ed157e48f8d023034a1f190fd707841a192eeb98986ccc70465b329f1de9c699689ce16355a578d17de0cb92ae4a4a0d6b12e5d3281eb750302047c435bb500683066023100887dd22283288a0a4413ece3ddaffa54f47293fe659a4113c28d0f992d36b64a623ca6d49cf8d9689caa72b1ae2503a40231009fa7cb2db6b350f5e9d7d0c098d3f8c4403d3a6ae5ea764921db6832200e95117276d7e84520e6dd567c23c8805965de0302047c435bb50066306402306a5962d5e2fc8c5ba12fbafeaf1240b45dd35938aa2236d0f1dae7fa4e204b492f86ce493a7a274e42754a11189fdba7023040c18d3e558256887952fc4c871e5f1c84e41d6287ab2f656a779e1127277336c02fca93e566b020eb1da1cce296a3000302047c435bb500663064023062f8dbc4d3fe4ffdf77d71ce61a213bbc62b164cca2a3b8c58e802d36e6bc00c6ec220d49029433f0f092db798d3902c02305847d387bc6bfc83b80bc91bf66e6c5b85293e3726224d6d4bca1aa4b6e0209228ad24655e2463227a67867428998c4c0302047c435bb500673065023100c0756f1a4debdf3e173298832c0f3791382f287f374d240bf8422ab2d2c0822561b64b26549c2f1d4438a49f1bd2c20a02302c149b7fcbce9e5bb756dd2b9132d3d8d5754be7f0389e189e93fe5c860d686fb17ba0b78b04baf7a961d024b3f1896d0302047c435bb50066306402305d77abc74202432cc304744c2ae42159e1e8ead85ebe5f4c9601c9dc40a93c3e9704f979c17993f2ba6ab8d9e52e406c023016979d1bbb27f847caa3b3fe699ab901fbb70f0b8ce0b6375e911b7891c13a5947977a84600a953bcf4a1774f67c607d0302047c435bb500673065023100ba2b2556f5854ff3718c1ceb012eafa602ba557eca735b0673c6fc556b814afefc24a09ac7868a0e4a3e05404df4cc02023003e15291e26425815376c44f78a89089e88eea100d5100695a2c76ee7ea2705dedece82df600c338ce5a62b5f6f60c190302047c435bb50067306502302a8bfe13fb08bdf2be86da5f3a8c3f58e49575a27d69180b901b194b4cf8a6a152081fcb42786218a26e201a922f54e9023100ad155ffa0754eca2d498efbe56a8ace3b09a5e09f9c091da84311b915bb2bd27cd88d51565dd7f583445243311ae05c90302047c435bb50067306502302aca469765efcc17fa4c20a3dd9301082691ff93a6abdd69a9d26ed70cf671c4a618d2c8e2234c588051840cd018396d023100c7ec0c550b3794a79ab3897a09c6ac680d138ea680c5a992cfe2486b16d9abb8dd086d7e9694862c04c1bdff67de007f0302047c435bb50066306402304415545757769f448043aa2e16e1686c94da94a2f4c6ed111f3d19c2f657a29619c5ebbf3fce4bcce019d21b9262b4c2023058a5cd9f9c95ee8015026aa3615127c3b7d595f6352aea33f9944e243dfd34fb4d1639342f05b4dbe192dc4969fbec2c0302047c435bb500683066023100c3f28a66b1ce1c86a141e9a50bdeadaba6629ec6bfd233dcd661c855240c2847f8de3a2ed671436bec9ed14e6a6d0eab0231009be813bb5303591f9442b9618007f6fa8970660c2368890109aa96b10e3e49e937b20b12a5a27596b29f8dff12da8ebb0302047c435bb500683066023100b59e5859bacb7870c28ac75c386cca23ac32270aeb7472dad4ca3d8ba0abea8207f554c2664bf66767c53d3f4b4628e7023100c6a7741236a64cd3825965888f49c92d26873b9108549f70d57a1acf643ec5719da0d63324f71d61b96e1ae2196225d30302047c435bb500663064023077ab0e66271d7a6d239e1d79fac84f4e362c70450b318d39d4523abc8ff42885f143b88b840e7ba78faafe25f337f5b30230789dcdc3911d21c9f31423676549a9061acffd787aab7279085e4540c7e0671d28591b3c5ffdd038f498f8bd1e4011180302047c435bb500683066023100dd24f02bb93ba245b60acc86de84ccf27add3cd81c5e48a5ba8280dfc25b224ace5db4a7dd2620046ab2bd0dd49e8c35023100ded598013fbd6722874d009edc4f7a6835d29c414a8b0ca4cfba5a820e8596b31cd23d8d7a8ac972ab9563e5e79b62070302047c435bb500663064023056daf108a6906832897fa91a29b92936c4a05f2be71c44a371bddde5e99f2f60242a557f240a9f2194b8486958cfc6b40230627eba31abc845b04c65f512b6d8eaab37519fb463d99963dead6f79685e1a88b1548a4bed3529437b110c24b7153c500302047c435bb500673065023100a123e96bf6e64622235e27a8e36f693aeb1e4b4b7de75847c133fe0b8ee32eea8ec0882461c37441eca218dec1ac506d02305e49e4db6771408e575ea35a54014e913276fc10d42e9665ad2ad4af5901e8aa5efdf4782577a1cda8405b6cb4dacdf10302047c435bb50067306502307dc059ddb87708f43d988e1a282aa4f1926590865edc9f664114cac2724cac638a660b2fe8016e080bc1ef847ef000190231008cc0cba83125406d092aef2c9483f47cecd211357bd923d98dd2ea91cdb03e1565e682aad7353f17275df8e67c88a8170302047c435bb50066306402301c604d7609ac5b2b9dc8b02ab3f42a95381933a64c30e0ab00eff9b78a95557a2c9b975f5a4128a3129a6165d0f7666502302e17a6f742d44b28aa62dafab99404daad63d53bb18b685ae24b47eaa87b425c515fc5393d96ad3626996e7e59da52230302047c435bb500683066023100ad49563b6e21dcb5692d3c87d42887c1f2c3e4a5026b7574804427ef33d3b94f75cd786e6ede0d18d06b139738cbdd43023100a649b6d5a4228908b18930d8ac0e61e9e3fbcd16a62b943cb0d3199ee8567c91924b0c3ce3108555796216c26909d6de0302047c435bb500683066023100de890af209d2158334f72df5263e44a23b8a57b09a93c26cac7e2763919be1d211d7425c7672d8c89cf1df6691a04fd9023100f73d37a6bd6ce3c2c3320f42db49b7aad6afada7b23255199270dff3d3332aeb15d1d2d0f629bffe8d62bddd533f48cb0302047c435bb500683066023100a5ea526fb666d1b146525e0fb600b1a8b41d11f372bcaf0cb25be24daad14c24225f5ed0d04b27fca3b624edf17ec194023100f9146028c7e3a39e9b430e5eb499553208849d030630a33605a05a5ca8e442574d70ebcb9cc6efdd92c746ac1bf45c040302047c435bb500683066023100852b3d0c502ced09176b898a7cc81e1732985fbab5f580d31c9b9c1cc614af40dbbfa0bd4631e5d7c6f62924f591b12d02310092ceee5a3c12bcddc91672b35bd9c80bd91a401f2a2c5e02f46ef9f66de7a8d641132aa592fd0e5ff537014b8b5616620302047c435bb500673065023100959510e54d5ffd2b2c6f6f2a2da1dc370093c90dd1dde4da9a80b1bf16c51d6432f859aaba3236abca06728a8da6802702301dc8c3fa137338f8e55f2282428257a138b4234beb44b5deee0d81a06d9ce1494be0cf0be89bb15f99c53769b930daaa0302047c435bb500663064023071267eb69da9d4dbf4363af7fdb9724cf43d0da94fff9c5fe50534983f59fc4be55bba10c1f0e97cd70b34006e01a00302306278de08f180fe13a499240aa3a7b7eac4924be2de2489555df1cc636f65b0fbb5e096708bdfc40215ad3b25dd3d5ccc0302047c435bb500673065023100d1292ffa3c309dafed5e03db00754e532c2762615bab598504258ee206e4a24a1c4cbda0fa449c76ad49ef77ae5953d502300bf11f86ab4e7295793925e08acf34053d01cc9c81d6afd50b4ec874d8d98c55c1b58e30ddc3570de61d74eb11c82e7c0302047c435bb50066306402306b5dd18cde6ec8c25fd74e244e36a01cadc05aaf12c8a76e25086914c6ed2277ed65e366e00d6cdb89ea4684911a260702300a41d2e11a465a83bbeacc67aefd75eeab36078febbc47e43632a7b4faf8b6d14790b1a11dd4ac5f19efcb309f02e2760302047c435bb500683066023100aef9512bace8fa7866f9a7337341f12c32137340ce72ab12da9353375449b30db7552dd96ba42e307d2531d62ea838ab023100d7d601658c016c5a9bcb898f55e214bdbf70cc7747a45d394947346783dca29c3192eb8513db9fb3a92b6623aa4b657c0302047c435bb500683066023100aa024082a96e02621d20f3bf5b5dab081fed0b4f3e3547f223e0f5019b1112686270d197f69e2350281874eea5e9b5c9023100b51da6f18de02de5094782959dd4ed443536ed75d60c60afdac04eee8a3520520bab33fcb69544b550df3313fa2d78f00302047c435bb500663064023075037b1c29630c0c1b5fe819adb43d961496913a69cc23fe3e12e43059b277558e502b194a089dfe4a17d9799d3ea72d0230199755a158c4bf19a4ec8e3c3fc7ddc0435a55719efeb9a4539f341c1195a534f4c148af92a995b8f0c79695246ecd6f0302047c435bb5006730650230428c085c64f0ce467c660afe92f43cc30078e25fbced654842b0f06368f74acff71878e4f23252b0a32c55875368a828023100a937de7022aa6d507037d650fac7888e163590cc2ad767830e163041f033b4e545e54ffa77a5bd9c0c8b7a35546277b20302047c435bb5006730650230407c43f9df187bf75ee81f8490821ce68aecafe65375c814043dbd0823450cb0a27f3b688e814d03ee1279e31b48ba30023100e43a3341983de57d547356aab54b2fec4559d575cc47f234e3e47d427aac4d127c10ff96a552fb1a15970bf79319b8740302047c435bb500683066023100c712b9ba6ec4acf95e5b1804934a1c70d6543a0dcbd740caa5d050aabe7069eb3b940a764a71cc4f420fe30f6ba51741023100fca5a234aa8c3e3d1194159a9772f3f1abb22aa0a3537c6419fb108d10ad3a3ecc58db9f059a3c8fc7ca770267ed5b040302047c435bb50066306402300294589b99b3890e9258bb2a6678897b1897239a99c07894e086f3b516405f5aec4e5adf0babaee04f34f0e54d9b9c1f02304f6d6f258705d54d4f2e87df4e80f9f2629625b61904c35a71f7f6265bb887431ad6e1d096f0030e94627bf9b93d07a80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023062a93fc57df862e094a5cb21027e1a0c3a9748d2d2c3e8f92ef291a0a1712b2068e0970923f043f975ec05daf789f92902303b4a4a97242bccdde840f7fa5482ec123464ea5173af50e87bc686778006dc9c8fd64db31247f3ad66b0eed0f7337b610302047c435bb500673065023100a75b248fd72ae3200507412d556ab342f53f8ec68ced4fd1be26b3f91b20c295f188d6c492b622d30d2c4b60542247d002304d71416d0e60a5a7db2f8f01733e874e7e2c82fcade75fb4f844eaa29d706bca783ff1878bb5b9c89438719c3d81786b0302047c435bb500683066023100a1cad91f77501b6bc4e3c837902d359db6325c668d15749f2dc83b1de970ba8f2c38e701dedb7addd19c750de6a4593c023100a350e7f1d1850ae864bcc9f2707106a14b769edd009bafa5360a8aca6cf06ff95ff57c8733c35fb85f56b577abe2d08f0302047c435bb500673065023048b5a8d118562c0bc044bf3a0fde47337b8f6e231d6dee269ec54b0f309d8a0b80f579eefcacf88ba7351d10c5b2fc2d023100e5af088efbaef0d6f21d0a231fdeac9bc37ec90540fac1983c219a58be34c27e2b1a8a006a4e774af043a02cc45373fc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306730d46c53ab811fb3bbd702be57f1f085b546c2bba9f97ee04f0d4b621a8d195e50084cf275aa73fa6a72d84056d104023100d097dd079a9b8b856ef518e1e3c9bd2b62c60008a2bddf379ecb07012d3839b08af108cab5ade9de541fa562686eb7e90302047c435bb500673065023100d6ce3ca63413bf9ad48dbc7d2eae2e504793f41f0d11d7d738bf05e82115949cbdbb43d562619e7e84bad4bb9161b0a4023042667162043cceb380f1052a5dc845e8d723ea34f5b29c5988d8906aa538faf4bd4b456b774270bf08751a668967a2230302047c435bb500683066023100ac66d3966d33542ed6156ac8a72d9f8d7f646491076b22f408ff2a80950a361cf2844558bc0ea4b9d148da92736a4e0a023100c4f3ba85b669d0f9c14a1f1aa01c229ff5ee054068d3d58f8aabfea8069e3c3a1f91bdf49f381fc7f0a0e26f885865d60302047c435bb500673065023100d11e96124b9027b8de88c918646d7940ca969a81543ba25bec4f8635382abffd0fe92b46b937a20a03e7867fa40acd39023037ab15dd8f60ff4bd3682c0bedffa5775e2b84b6079c5185daa54632f163abca4c9a9fda36a0cef1a5dc9558bc4387640302047c435bb50066306402304e23742b9057261ce8628078ba1b883c85bbd1971ecf4feead5b35be20eefc268c3dd0871567a2bcd0bb88ad50c1a9dc02305503b2ed6134e07c8bd5623017be743bcc9955f61ed75d5ac0cf7fa99da046351ffd1a54381aa1f19efeac7f453442520302047c435bb500663064023061e12006225d9ddc5c38884fb6f34d454a2aaff1b0a7014b48c3e51066f9cb0531e8990e5caf1488fdf088087265079202300d3125beab5aaea046401e5e85f544718cf8061100e901915272c10eb476b6809cc06e20b12af744f839b7fcf9ab66a10302047c435bb50067306502303dbcd101cbfc0d742d0050f28bfdeba088783639af7d20d47fb260107975c77d489bd4e9df2920dc7d422d245b76b8b1023100e9af2e92635248249c1c7417759323c63d6c909b6b0f220db0746af51d24cdf675d0a0c21fe63466e038507fb8872ef10302047c435bb500673065023100d229ab8d9eb9530eff1cb465c23fa6f5e82cc46f9af00421762e9b663b890d5ee2ca2266742b7cac7e06cb4b223fae350230429bfc6b0f360d969d0f34c6d218e6e02e3c112c96307eb6d152f353d9e4e84fa37a28e0e2ff9aa45ebb500d60a1e0440302047c435bb50067306502302527802d9ef740572fe590af5213d8510a43a78826ba48b3c7f6819217ae9105632a065f4e708589103b8533d485914b023100d0d136a3cb65a81fa7d4406f0516d458ea1c8970305c7bf00bfb7dee7a80d241f28351353e8b5c0344b0718181e424bd0302047c435bb5006830660231008a2cecd3c354df7db08958142de42f94e48f7e7a4fe9aaf4cdc7df17e461f2098d9324fe6345bae6301425911b4bd13e023100c7b0907148e367e39faf06f39d8c2997929897d9a68e4a875fff08e802218164cd36e719742efd2307dc2508cda2a4340302047c435bb500663064023100b3ff322af7a8358317abdec906e844c4b8fbc21a8d65233abcc9d7687d10e8b04c085647c58e5f6b2fe34a794bcc6572022f1e1efaa38d2eb06b6f3305de8fde23920fc620d7585084249ff43aceacefa5c4ea13a82713094fa81f8440f1757bb30302047c435bb50067306502303dd0d40a95e436ae044fb96501ba09f26135614a78d787757af8b7a0654e607406b3579fa1b57cfdbe9270330d51ef72023100ebb68080f4bb049b0772002a09ce73ca09fbec40ca257be9695f56a7729fda44fe684003e0f39e4097d7dd43cf6746350302047c435bb5006630640230409474d2ccbfd221d1f7a6f8439ae12c6122c9290da77deea14b7a3e947cc1ae4e85af7dd67abe0cca90b369c160690f023061fe31210531d92df621593c928df25846d5d0371e45f53b0f642f624f1aae16a821da04438b0bf2f921a9cd37d4f32d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023054fb2575eeae3ba22cce12093b73816c5bf571c3575908fcfb7494a9ba82a5c6abbcf409ab4cf63b3dc7778a2d1df6810230142797a1f7e1aea4c8a588e3202790c35b5e68ce95adc269f566844d8eb65f99ebfeda527bd415f4c48a963155a7b67b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310098d7a5cb95014062450c2a694f9f4d5d5c77c368a2050a3134f6ac7e51ab5e441dc2e16bda00e9180124384fde63f32d02300eb5e7c47ff4a8be17a8f6dd79cd624b41bc76325396450cef7434924c41bc20d0be07db9d750500d755d927ed0610f90302047c435bb5006630640230223c5063921f889e80bf6fb3720a2d6ecbf26b38ddcea249614400a281f0eca91c69d9faba4097937ece36e93318186f023047b88d5b4a31cd898b05cb3b77990e91d347b4509dfbc2666132b620c93f337ad79279b115239533ef1bd959badc1e570302047c435bb500673065023039bbee377589806477bc77adb07e02151170b4844b9ccc5cd961b838d23c30319c1317fb58fcd560d485e45b54fdd707023100e38db3e869d5f80c36f841cc06c51839b86a272ad25be8621a0698e3e46c37fa049f3fc358aaa0d159449414265c6a280302047c435bb500673065023100c293eebd0bddf86ce0079f88251adc42643db6f0ab050f2b3fa79e9743b7c5acdfae21f2d00c6e8ea58cfac23400bde402301f42978fa6d1d5d1b0d9ea7e4e16b6ad5e2b14ea525fae8c8a2413485dddc6ecf802d2349e217a71a8c79ab5f751d81b0302047c435bb50066306402307077b2a2f9045697fa1ffb2b5e0166ae87a36cd525f1a4b2df3604e5e6ca2c0f7e4a0ca8e1809cfdb6ae31a2562d7a46023028d611d9d81b329e6f2fad8a3bf8ee946383b4173d69dcf368e083c072ebcc6b2348ab2ba7a0a04313b00f3e84bc07170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f532c019900193016ae1af89a2a3133b6209573678c67f676349cc4e7cbbffe98b54c43ca74fc470d4370c5bfcaa68e302302b126b9782e6fbcc963cd1e31393f9fb2857a75b7a75dd3a8f522a4218096ec3fce446c582f58ed58cb599ec5bd46e190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023029b8d8e4ee14a43eb01b3ee7bb8e18c5cddd8a76256143549d9b49f1af40810593bec33e06fc083f5ebb8ab71a2904c0023100a3846ac14224989c58526fc64624132734454e5960d467e1e4cc1d39f23d9ecfeb4d80063cdf0026368c28f0a74adcf50302047c435bb500673065023100bb47958ceef19be5b30e29b0b9cf58abec2617d1a312235bccd7e8e35e67c798146d0f9eaf9c04f80f0826de66ea2a2902300862a4457e5b8435c04ba570eac4642ba489b8c3137e7659be652741e89fc5eb37ed171eeee1627b6ec10b2b1244d0f60302047c435bb500673065023100e8b90324241966b137981a53c55396f3d0477476cdbb825e7620308c723db494a44f831988ac77cfbe6e097de072ebbe023032faf62e79bf417c64a66662c0a07fd36349b043877be4bc62f948d258003254986375a31ccbd8d022affd093189ca000302047c435bb500673065023024f98571c863a9f251bf1efcd1d69f39358387ac8a26435beb076bffc8ba80e05444dc755ba7de7b53a38d76d5b57d4a023100c544eb9097b7922d5dc7892cf8265f79b9f6eacf7ab87ed44bd4a2009db5994acf609c276b11c1df28d540e0a11fd2e70302047c435bb500683066023100f349680b6b03847c244e9de22d156066f0db574a5189fa62fb323d9bb84dde4d8102aab63016dddedf3a07cdb8ce8bd8023100cc6db9626f8c1c6c45c0e949291f2df0c229c03aec7abdec86ac00644e55ea3874632d9de8d08cacdd4f5d8279af64c80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100edb780c7cdf70525b2c2b8c3c3e2f5af52be10090970a2ca1b8bae602687fc6cc67bc8292548f6d62c171bd289072eb6023100ef0fe20c7e9e97dd85fca7c3c602eb53a5e6b33c1db9bd2e8b3ee46545846601304f0eced83030ef8a6bf054d319b1ef0302047c435bb500673065023100c802786317c8a04f0bbbf971d8ed4ad25d39344124ccba463edbe7f033ce1a4ddb68bb492f3d5954b3b69ff73d23befc0230770185f74b596d328d9855eb370e80df294e5d0097385d8aebe41e5ae5e937b7371be8a03677bc29cadf2043b3e606c00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307647eae8dccbc2d508b10e91b4798474db864bae6b7e7e6fc6aebeb82313f608423ff02619fccabe45e1d1f72bc02340023067dc96f0057ff4cff884688b4692786f7464341a2c089f0cb88438d76748a0fc03d451dc76ba39f5622217e6e37837b70302047c435bb50066306402303402030bcecf97547593188834ad82557c399df99760bff399169edafccaf4486136707ae18b647494f5ef0a1cb6158b02304f3f4dee8a8d1c640cec1a0c0318a53f7a3f42f53259afd72f1bacc71cff2d0aba789eabae8b2ad21c2a88cd9e816d040302047c435bb5006730650230596eb87288c384bcd5fc54a7852e03f7acdcdf85349fa055835e83a1ef682e302777d4b8257a7f5f22f6a2a9756963b7023100927ae5bafc17df5fbd206c2999307251346579c7c85780e7450001ad748e51a470425f13b052f464608c0840aa19253f0302047c435bb500673065023100cc3c6b46b1c5d7db7db92828efe4816267dd5f4147a50bcb51d2c4bfd628609f3aa734cdb03b75322e2cc81c07bbe7d902304498b7892e58a0af68e691632c14c0d14a67d0924f413c99a878379d39bf01492361703ad29f97690745c7bf3950ebcd0302047c435bb50067306502310084b383da485d7a690a44fe520bbf5c67b34146dbf5b8e8f4c290125311e5ae2fcfdf67f2fd74b55a3ed5fc82d5bdbf1c023006bfb8bad5ad1aee2b1f3c73e359de336c83993662870df70f464c1f2d09cad59940dd9fcaab110f6c5b917c1bc406150302047c435bb5006730650230402093e82f37b5e5adf30c78c12466736ad49fad66e6768d414303a535b60b3ff2e41069b0f09258b4e919b3c8a5e5b2023100a19ba7e1d2f7fe909a43d5cd626cca117c48abef5d0ce55e184988640a931854b7505bb7f041a9b24ecb5e35dbbc326d0302047c435bb5006730650230094b303dfdac766710373fdf0e64eee52b677eb2f25de4d7013ec1bc524d665fc93c4b9473ec307f7aa6271593d3e9ce023100d15fc0a90215c84170d251b47ef063a053bf8c9e8343e609b5a35fea84956fe847c81f425ee1f6fc5bbbcf850b4ebf660302047c435bb50067306502307115a36f864c6b1ce09c1e9c131daeb98c9976a3300b93a654f24fd457667a6b69b67fa6d9fa8336be954342c4918548023100ddca3b380329cca4f7580464d202485b7ff5d3d817f5e95c0339e182eb53d3e1db0369069a299a0fcf0ca4be3f76ef090302047c435bb500673065023100bb34c502d1e3d9d939949c92331814f3f8bb0c714b0d14079af458d969b01b8cb49e327acd15124481eb71da2ffee3df02306f3c3a70e7ea73f7b32df1a83b9f1780922ee4d27c2fd2e8be96ee535fb6ac56e59d5fade7e9c9116be8d8fcad51f7830302047c435bb500683066023100853cd9088440ce2094bf357a8858b795a0d9e8adabe5a9d13a50f5bf9bb7715c9b09786088fc540a1a164920b1707fe1023100ac36e1a188d1aef7bd2d5abfd57a20693d601f88fc848116d83565a68b138ecc59e2704c83c6fd86396fca684d850df60302047c435bb500673065023100eeb75acbc116d37303b98734aacb3261875af72db521ea8b8662c9c66b3fdc4f7d7bbbf5395ec54d9666894d725a56f0023033f0242ed6e57f9b65f9fbf69599d8f59149c3273443bc9b04af044e32033a185bf4cc7be00376121b784dd6a2c3736f0302047c435bb50066306402302623f0ce43d1a33accb66d2c3fb0a8c81f1ce2eadee11b023e1d309aac26bf1d4d4e77af8f1c6e985da2331cc69ecfca023026ec502f21f450fbcec27dcfdf697b5ac5211aa39fbcf9b7317c798a57b755690960c425e26c88bdaeec091139beb3a70302047c435bb500673065023100b56b5a8ab1e5c38080b3df310fc1dfe4b1799c7f3a0f4fe9ee3a5446b53429514bde1c1bdeba922b7a1d9429cdf60dca023002360fc7ec6bca9ff0493326e0347ccc3aef8b9709acb43583dca74a700a3273405c5521503e263f715c7b8bd5e329470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bf252ae5960263f1765686cf0d4f52706e0a399f9f0d18bc173742116af28e609b4eed2a704af19395741683630f50800230620904a98626ad9b6da27e6557071a48aae7f34f0eefeba2c564235e55c890a8129bc5616a09599f87218f22f13d19e50302047c435bb500673065023100d1419d9fa7f295374025e72b345ff880f62c4c1a165c6b9cfb357afa31b138059fb7b5e2665b57f64ba40ef412f2d26b023005199d8cd3205ddbb41bd96003880aac059ab69541fb29fafca69308f6f4f3f5c5ed2f6d64e205da56e88ee2734ddd9e0302047c435bb500673065023100bc30bc59973f347891e6a34952662f3d1fcb115b09f44d9cf529c699706de0c1c5d0c123aadf0f1149b28dcd1f9abf3302301c3eab8d84266297400e4f2e9f8868af676b4fc53a111efe0a763332007d407b4f6d509f8f2c2625a34f7ac748fdd7ab0302047c435bb500683066023100f389bade62a4dbeb4e4306c113b4674f0c66d62699d7ae5c3bdc2a5c8329e3dc5d9b00b1cedc67ba5b721fb7bf212d0e0231009fb80b7b00126ebda61141578dc591e1689bfd9bf47390f04783a6b94a8f94e04a33ae0d97bb438e78cc1f12080955a40302047c435bb500683066023100d42993cf6681031d5a2a7b3b7c3624b2681d476ce84852df2c3f166bbc470d283577d39d3f4afc0d8df2ef325f7e639f0231008515d5ba84ee141c6893fc1b2abb7ad853caf86e632019ad448316b0b50b178da78277f31b0437b5df32461ece18fc9e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b49ce6f08efe8c1fdfb290c4192710486b31ded3b484fc1bc69252dcc308142bbd8bfd2b4f5311182435d9813bd22bac02304fa515741318572454b45a055db27fff7270d35d090ab9f89a8b63b688e41f834422bfc6c6c2eb7a76ef0bb0538d8aea0302047c435bb500673065023100c76eecde9f8fc3604580d1b36c64c3edc4a84a6394240f7d0bf5e3eeebb43ce864e0a90fa98f89357af4d472ec87c2ec02305323e440a3573cac2d5ea0849f1c9d3a178854bb2ca4fbb885ef4051b4c177b5ba82fa0024db951d1b1f43dd24fe158b0302047c435bb500673065023061449f00a76091fbb1b1d1996157d61e972d5a28e562b54fcbe0e85f89d65f8c93d7bcab35c9091eb17789a33861678a023100adbfa05ab2c36a5daee0a8ac285652d5c95a44b08b3e92d4142a45b4941535b76dae33309e1de817aebc793755f60f890302047c435bb500673065023007bbb6420f858eaf9b0a5937f2fbc3c72c218a01e52fe6fffd2f91a3093f50fccd7f1494daf27a520aa566e895a161e4023100a68b4b95a439ff8dd9a286f9091c65080bc259435913d731d6746ec98ce846d64bdebab648a5d1920c9905b9cf62c39b0302047c435bb500673065023100ba9288ce3edc2f02707669c6785fb35ae33bd5e69e4628e4f3253d31923b6e5b9d5fe07fa50fc9dba325a4541d284170023011e7a30e736e4852b424cd79b2a606756674aa6d0b393ba938780f09c84e2c84464289ee6a6e5e5b94f260185c7e62d30302047c435bb50066306402304d3018ed1b7fd9cfb4192d28d5dc83737ac310026501fd59106236c6808798da14dab7d2ed3166c653fa0652b36a984402302eafa941aa169b47a4833d0aaa94319e79e7bb16933aa1427dcc95afb4f2695887ed829fa67055a0debb071ecd1a71fc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023015a5f9ec25b2ae3151f0b26532b44ac36a812d3980becc30b6103e97fdb1665da542e0ff010a1dc2f320b107fd5861c502306039a8445e0dd124b1f054b591ffb33c3a38cca58c0aee97a1f132129b859a8a7a597489c7ff45197ead7276646224180302047c435bb5006730650231009e3743131b9e18364a8fdf46b37de4abeb77b40ab3c79c6e2400490497b51eed42734418c669eae06817ebb4c8c0286f023076b27c330200f4050e03a2a223870d569b4a3b9c25f7ea8f1c9eeb43fc749ac0d1203d826060c43356fa4a9eddc3438a0302047c435bb500683066023100aa7c131d0a8e709f84eb893de777a8cfcdd21f87cb474b78e0e15de91b12983f6c1a1e50b7f361b953c4ca9719e7f2a2023100f84677ca674f2306df8b882c63777127be3a58eab73ecfc934ec471ccd01bb47220c479b6e614bf76dc2c132e172c05a0302047c435bb500683066023100cacf8ea2b4acf013f9154b2804c620a272c0050193c8cc4a5687e4cdd2bd251d00bc8e3188ba243f337430707a223e48023100b8baf32d3f280a2b1d43054e80410efd47e19f8aa138d0c794fee88c0e052a557ab39a140919f4e298279546c7d624980302047c435bb500663064023005293ae234e03e4ffde38fe180b5cb56906e858bd894aafffd0d9d46521ba4366779de9467721592d8ad7c6e4419743b02302f851aefbb0645424c44b039b61569a8ae432b41e6ce46d6ea59dd551f9af58dd19a3474c1ae44fa8be5ebc2c5a40aaa0302047c435bb500683066023100d97f1625ad7c5a688760680ed16c7209f5cefceaf47bb4d29dd6674ee4daee02894af58952ef6e902ffa8d38a90c0149023100dd399b5c87deef604479c7054b5dc8dcc346fc0842e24553df9ef90e1b326f3d480fc8cf802456b7620a50015efc80350302047c435bb50067306502301bf0dc25c85b2fb317e04f3c1de0258b4a79de4aa3ec27b4cd2eec32d9879b89fde4cd909817014926b334b6b4ccd7da023100ab133efd76598fc09e97067a1bc4346bcd30dc240309d4224bbc259e76aff5bd5a464620a24bedd6d17019d23fd670c90302047c435bb5006630640230495282fcad063e8dd7dfae82df6d27b7f5115fff2026789959d9bca2f582d949b2791e8eeb1c801bd1cf392c76ec00b902304c1b2fb14624ab5fbb40380bbb616f4c3e6dafcdd42ad435a679874bfecfd831f2a2b4e0a6a7cc43d7bb67c896dd25e70302047c435bb5006730650230089f5e83c5d54ed4f499acadfcc209d9bfc707db42dfba564ab534dfdcf1a2495a459d541e4d9fcc816e11c9628cd6cb023100dd2afb029c54fad00515c77da7b44eeb5f5af25fdecdcb00e269a8be2d50d7020d993a6364ef620b85e318fc0d1bc61d0302047c435bb5006730650230107c0e098748476eddb8d16dc7fc50835843d7447894b88a534b66a803c1181783dbe0c3b7519854eec650b5b3cf4ac9023100e3fda8dd80f6204a07bbc8547a5a98d94fba25c664c4a0d90e1ca540149f2cf570e077d1c5fd1d857177b034868c640e0302047c435bb50066306402300a08831bdd43aeba3c1202c743ca3e87dbc51c366fca90662ff01bce3fc49d9527fad1f1315a0788b68ed3c85e60b2720230529c5a236dee26b0f77df1307650c1714682f58831a0b7005c10e88a495ca765386c8bcdf2cac0291bbc78359dff52560302047c435bb50066306402307152c014ccdb5ad462fbe2ec9ef680590b2d37e50fb6b42e2d76f1154f3c8543191ee746dc25d63d478315ddec99089202303f9d7e75840eb80483fe3d51d1c0eda3f07ee1746810b22ac0864f41defe71e750b502beba530de0c300741ee8f9fd4b0302047c435bb5006730650231009dc06754ddadddd52b46345606cd182008b389d2831604fa4af6908479325992bec784bac72f7d49c0fbc155aca6121e02301f7a45695512f0722de4f0767f92e46122f3cdb0f9cec327d6dfb0eb0c1e9b90bc919d15c4ae882f05afa2885a72cf920302047c435bb500673065023100d508cb84b65ac895536fbd74d5853b69c45299b58294ed3efab85d67385efeb1378bdf230daa8135f7b8c65ecd4c296c02303a1e4f57ec9e62bb3b65c0870a512e6a3ad92083896d91d3b36d9e56634f4efc1edd3c88426f2a05e831fc6e0d660eb50302047c435bb500683066023100f42622f8b3eeb30cade8307a3537feb00e231900e134c2dc29ca9095ca9e78e872eaf44a220b104ea23dac9687fff1b5023100ef652cbda4f9551a220485913a23c9fd617574c224a71a9abdb5e21d51de583533c0bee33d2c7a84567862fc85b8cbb70302047c435bb50067306502307387e79df90019a107af865026f784dfcbdf7c7145949ea3b356016fdd6c6a181e57b8f81078890074a1f5d0ce0c6080023100a9ff2319f5d2a6cd1c51d9dbd57cf3c64c37c7a25d6f0800095b9725b00519b00755db2c0e34b1625193dde2e83d111f0302047c435bb5006830660231009af9e31e3ad74d2ac4928eba5453d70617ded060433fec401f36e0b5f3b7f9752c8a7f3d16f17fb56da36d593d1456b60231008f48bfd37cef93c65aa5226af2711fe36de1886151dfb00e08ba574d27bceba67b1b8bce95892a0343447cea16a362150302047c435bb5006630640230733bfca58e6b93f78b6f25329dd7f08117204550cfcf8b93b5180445876a7655b27e8b8702d38c1339e4fd89eea7306002304a70079409296cb1601e45d83873bfbacc3bba4cba51fafa618c0913819bc415a14d22724f8a2fc9579c8a2767cc52990302047c435bb500683066023100d1390729ddb1ea5d78edaf20fb1adbfcdb73a46e7c78816226f0a1d342fa88309b694a96e24d85e8a90cc7a7192fd0330231009634f606a910155e91aa9a9dce704d6cad253f147b6c532eed0401b2dcbf2351c608a9b208eb7027a445ac4fee59f1000302047c435bb50066306402305c3217c96868e843b9013fc80998e41edb3e2a0ef5870b4c791231792ad91fceda74127fdbee426660895ad796c540c2023018cd8cfa90806e1c70ea0d0c9c63ec785120b8b8e2ab218eafbdc0c2377db22a9f19e97ae04dfb506c5f462df55bbcbb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c000b9186b1aaf570d652196a5adeea97e80fe9265c884740eaf8904225fc47dba6010fb866b044afa0fcc035214ce52023100dced14bb270f6c07e5cfc66e657eabbec9554fc5fb31c315d1271648613fca55aecef9e6bddeca5b20aaa4a61a883a510302047c435bb500673065023013be1050c17e76d8f63d35428488969cddf6549c42afe0b001668f939a7abcae26d1d3773fd9fd08487f15db8452e840023100b029a662295fe92c60c0f477ed9d86cced99bd1ea9e46a3aa6a760456ef41e3d88e53d83e7b2fd3b0e8b5d75d66881a50302047c435bb500683066023100864303e68f2db85402afa345a70580012823023d7181f719b7a9eb66339d6f8e6fcbdd19f6834872f2ba68805163ab98023100ce63bdbe07c62b5a0573295fa2a6fbfcda256dbfeb74b36fcbbeea87121085a261e25ffe9078f70a9cf370fd69c871f80302047c435bb500673065023100c8aa0b924ac54e3bd03a635b517b268ba8b64332f8af00625decfbaa046a7043917c62f3515a90b8ab6c814e727c7808023013f84e0452f668caff4edcfccae3d1339b0643281687e733663dbaa044175841bfd960794f18b9e76fcf3c356775066b0302047c435bb500673065023100f2cc34f98e86f3749255f2f72caa06a8159089983f997b0c36a9465160fb6467f1df1191a8de9e392cde6eb3c1289f7702300a1427bf453dfea2be2e09b392e6f81932d8733776daa5c905e1441de25cc488e5ded3c8dacb6eec16437738ca3fa4820302047c435bb50067306502305e9f8b87b9f6a0f93e8c80b35415a52eb0c25f96b56fcaf57fa1dbc7d9b02b7f09ae4868121192ea8ff1e5b791b1e7fd0231008c76588c5882e24fe9cdeda26a405c7fb86591e8c289373fb37710aa5cf20e975eed9d93619fea08471f65af41663c840302047c435bb5006630640230094a13c504194ffcddbaa29c56b76eb5efbeda911516f2d42ef9f54d59ddb400feea80b3b723c2585e03256d1cf4e4090230541d9cb1b9e53e18d7a5e249cb709e7f2ab6d9262fcf46fd4967d0bc47b518dadda7d1bb49b7bdc52da1b91ec8d6551c0302047c435bb500673065023100a5d75b323747b09ba2b02c8d9e133293976da856731e26a4d4d76fa8a7a9b61346ddb79c1b2bd74a8e7fe8e5be478a900230263273b7c0410c3fc754b913416be0781d4ec75a47000b6e720b422b5a68195cd58a8c37ac9e067ba23752155b2e1e7e0302047c435bb500673065023100947d2ad3be50715d7a4a87eb1f5f5b7a161e108726e0cf3414ab676e39fb5f056dc35320fa08db994e7419d61d48034d02302122de93b716f969ae86596a44394d7914cd941a11553efc56abfe05973bbf751145d58cba986da124b548140e12adeb0302047c435bb500683066023100e3401465d7bcc60e99d62e59ea6a500f7de8381a66f89e2d7295f676a2762d5e671cd4677fb4c718ee5937bb580fb986023100c7c22a04374875ea76c837d850be347320d0edb334dfeeee9668928c9f6def2292f162fdfb2d837c4f780d4d270d0caa0302047c435bb500663064023057f6c31e9932d92b972d14a978efce9554b882d937e1e99f2d535dcbffbef3272656ee8d6a4fb0ee486618c852c07ca402305588b2ee385a59407063b40b901f4496e9eb5213aa15809560590c4c39c338668f0d63a57fdcb384f7ef4346cfdcf10b0302047c435bb500683066023100f344a8b5b254d221b02c7d42f9b3741f1ab3975e7d293189081ccd737a39240b8e892ea27d7b5c9fcaf5dc51d91a38320231009e628b2f28015fabace0bf4746fcbfdaba02e8dfe4025f51bbb49b691d1eead62f9a0818340f95395837ff8b7ba07f350302047c435bb500673065023100dfe7931c2ad3a730bc9520034df1a4f6ba3c88c6a8fbd26585821b265ce33a3d02661de627d39feb43f2b98459f8e84e02301035122cd32b56dc3d19da85e93f0977f60d0521cdea623784815212652edd2882b631ba0a267d222cc33aba732c456a0302047c435bb5006730650231009e781ace54981805907baeefb12255a944dc31b8bcae5f41b64c86cffc298d3e482b04d1254b38d1560753775ea6f236023033df5f8afdf40b8d5b308ab59c0956f27953461c68e2ec9fc20a4ab594ec55aa4fc8b19686bdeeb4c2ba3a279384b52b0302047c435bb500673065023100cc4fea433890138d0a5f2610db27d567dcd1162e580f4987976f5d65db1de01b51ff4ab7c8d3e7c2c5822302999738c20230402467efab26d1be14c01e8ecbc26c61f34cca53127bab1c447209f6459bd812e3f75520ed0a1b7d89908df46df6b3b90302047c435bb500683066023100ade9180c74999bf6166c7ff381ded64080c12e35bc6e7892c80e9f7044742dacf988f08c59a4cd3b100dfb6f23dcf4ac023100fb656b103751c5d45973c3cc880b155d200ba66e026fa284c73f0e951355c623f30b327d5fc0ee65adecba022d2a78470302047c435bb500673065023051863aebe84ecbfbec72cebc310ea493f2bd00c505a7e9c43ef70039f5d53afcb01bd1b310a0d0a2f16f2756923fb8ae023100830eb9e622fbc7291993a09617dde79df92fb6f5f11406a4c266c77a625dcf798adb8e85424e2b3cd33125d3f6d122ec0302047c435bb50066306402304a0ee5908626ccdf96e7dc9d9b729512086b529791801a1f0516dfbe6a11bf4ec250871134d2444734d78804a39106a7023027139bec25162027d60835f9aa26d9749972216459985a4253afa6188c67c5ee59c99ba7d98e309a61cb6748842ca3310302047c435bb50066306402302ad85a212848ad51028f9b83f7a67484be5ba95645d35e9eaa4219b193ff85bfdde57f178c84c58f81956a8df90f2e4202302d6ce5a2769db353f6677943186555663dc10e9c4580ce98a31916ca943cf8f6f3a3384d068984aea315fe5610fc7b020302047c435bb500673065023100cb62b1136f05761c994aa161c1a1fbd7c85aff723f4ed73e2c42df6c6e0f81e2e630fd6d2340efb6a64df6f5ffdb7b7902302bb2c9bb1b272c5d90f0c5f8217e6be97ec9a3a3690cec3c73ee8493cccdf2df15c87b39a9d5a4a06db2c16440c0d6950302047c435bb5006630640230267d443db9df9e6f28108a0c39bff21987105af7bcc3335558b93493cde05c129391ff4c8ac3e097c0d09d4bd9d0836d023027c5685f7b7209d75bcb6630544929fb6b9d3cd85c64d1e173a26b4c733d12a1e4bce65bbe178d180a1998154eb398b60302047c435bb50067306502301f69ec3b37f317872984eb60442a85f94b489cf1c35ab0eac97752317cd91f01d1bc67d1d122038f76ae3bfeb2e2e70c023100a0a98c397e2fc75513a97bcb15205ae812d84940bd9e6b2d8483c9128614cccfa5574685922ba06dfdd2664307ea6a290302047c435bb500663064023029a96e8e4cb79775493ca6802398c16289890a279f98832853fbcd4c23d7d105a06ee7a7da7745ad8ad7d4c309211a3d023011b7b6f257c5422f9898e655d9e2a3d3ba39f988a31f859f068dc0e63136dcccfd2f030bf18fa040472db1040029223e0302047c435bb500683066023100d4fb2a20fee7ace759a833d1028124dd08bf88390f023fffc4bf48e8bda76f44644c864f100df06245817e8c51e87b66023100ff287a0279642f2d0be84d533d4765965cdce2d93a281f258e82ce01b00bb6350dd764aaa6f0319db15390f95cd603520302047c435bb50066306402306fb2dada1d4a092e0174fb0e1ca272d55df578526f61a8036b6d17b2017d3da51e54181449688092eef269d36eeceb65023042fcc7ea0356da794969030acab68d10f19614eff46479d13b80b1e9c64c60777eee840f29dfb5abd3b8f3fe30e60bd00302047c435bb500673065023100c43615f503419211a5b25de93aa408b2fbbe5ea7ab2020ec88af99963228630876c6169ed9e535d2353eac09292eb0f50230061141f80e7d9111200aa22dfa9806480c15dcb66e8acf96b9590d7d50849754b99c8c08f92bef82354354948e512a050302047c435bb500663064023004d9476cc2347a4ba909ae1c0fe54705b60a82d62f586490226cce04be92a569cd73f3cf88cfcbbc66736352e309ad1b02307f3f0b76d9f0ae67f53a6968420e65f3daae06ed7030b439a2edc49aa84d3f48cb1d11fcf16bf4849cdb69fe98b2613f0302047c435bb500673065023100d390b322187f7950ea1d153b5b82f0a8ff4d2fc4dd25f12db5901d15e0f3dadf9748dcf601fc73dd772f02df7455aa1102300d10998b70ea88c9459977e8238e2d03655a617f8367c12c1f6cf83555171b7d0f6d9550f1bb114b7c51ce670ceab0820302047c435bb5006730650230091aefa3498807d88b97a84060bb12765613d4043e469e61f6a408d6bf3b134f49e0d03bc352d7c6103ab04f7aab916d023100f0cac9b78732b448dfb5be9fb7466f64a8582b72de082eb5b0b18e79466ece35188ede2c8c91cb96d9731d403ac310f70302047c435bb50067306502304624726ba2156fbfdbd9c3bdc79e1f6b88be3ae912124bb077ef28d305bb1b77b208f0f38443fad08742f7f8253934bd023100af5df730b454a2778dc0e58957b0dfe51b4db59918dab7cc2c6ba29f26f4e08b09a21d6d44683a21515dfd346a8c474c0302047c435bb500683066023100d25f78772ac2ff87e81cf9a78c9798dd588573badde4738d3b82ae2a4a31c33c0793f5e9bf9f0100c8e3eddda23e4a0c023100ff7f6b6f5a5e8e69e5d74f4c42b2e5297fb45e3036befc5f776c4f31e9a48b43eb22a7d64cbb25bb7932f99876b7eb5f0302047c435bb50066306402304d39f8554ad969215781e3af69b8bfb308c0a03ecbae922df1c925f5dfdcd171073b90754493e62c3f951f68af02313402307495a8f59f569dc5c1dfd9934e08ca0ac069737993064f02fd7d95f93520ccd6c16f4e3a2f42b69cb3dd3a46b61e93a30302047c435bb5006830660231009024bff44f36305c6d56046864cc561a96732106871a1c95b77a5fb82ae8c195542fbd279dc21db5d602af0ebf1107510231009f8b0a8b5aa3ea8a4c02cca895a95070af866f32e6b1436c20827decde3f9b32cab1526058c776521df064a0445fb8880302047c435bb500673065023100c53fe255d17902a893302aed42bd958246f8a430633171320808ead581f7a2c04d67f3033a35ebce626e764f3ef27b600230287fbcb89f5cc4aeb45748128e1cfa2bf82b529e60f286a53046583eddbaf21274d7f65b50a38df3d51dbceef94bd4180302047c435bb50067306502303924b82337749e3a2bab4905ec91252b3229fea397078acb2ffefd6f0a427c68361e51e30f4efae330d2a90dbe2c57c90231008580fa4aa8f325016f4591c7ddd7209a7654cecac18b9be61f13a0110704c5f58b24e5566fb45acc0796b19024b6245a0302047c435bb500683066023100b8a7ad8108258603ef0b6ed81978fcf2cf38beca5bffde773899cfc5f0150711adc9568c492e22718ba13ec39f200b260231008bb0216d71959f896bbb2b0c0214d2b89ae382e71589fd61e0d3a108fd844f2e2e5593256cc960be63e5ff6d991ddabd0302047c435bb500683066023100c504154e0632b471d6ece5291002cb0f4b7661cf1e1fe6905ea20e6450ab840fc3bc2c6570a3c3270d2487f2405d1dd1023100a2cee73ebe8bc3684c7d29fa40be3d5feb204275f7bbe500f0437cfafcf62895ce7574e1eca539dda638b625a33c63430302047c435bb5006730650230158012510badf6adab876250ca054f4056693e8e34093c4bad3d3889d6729b77b88f04bc2bf1cd1ddda5b19e93cf62fb023100c5d6ab59429e8e65923f6ac011668ccabb7d526f63811aaf39cd79768cdc9456491b8aae06f49ec61bd76f0dd14dd45d0302047c435bb5006730650231009fa8c8f858961b053e5233d619b46934c567b80ba8fabed812d0480bb5562bea928249d5643a0931b294126667ef0f710230042d421c6458c274c65b0893dbdb7776f2bff9c2f232e3f9f80665ab1b36e2b0c872268396fd6ef4f2f01afb9ef675590302047c435bb50066306402306c3b73e4a1ad1b5814be0fbea0446e0d77fcef41da36a1acbcd73e0d1e12d54eff7346004e32e040e86d4cab626b30c302304d754e50acc60caa692722e86bf19a1b65fe3f922dc2294822a696588c5bad87c4747d0531095e9f9e98fc1f480c569d0302047c435bb5006730650231009eb9b5e106294765f90cb9082ea0a37f231055c25b89ee81bb84c9b9ab700d67ef96fcd26137974a68cd8aca9a0786f002302dea957904d2cf71430634f4bd4873bf180e5e24f2a62888300d0b40c8f58c936ba52a7ab06c4fde7b52ee9c67bb5bc90302047c435bb5006830660231008a7082ce21a7c6630502f5f53c7fbda794d5da700ea7e0d4f1a395b5c33891e531e9ed726e243d94f4074e1077a59d0d023100bc8437a3543c4ec9c2b0863e3972025df8ccf8178105c28266e85628556ddf8b653a577955bfa5e0556914c88d1671f80302047c435bb50067306502302187935a2a510644d610fabb83d35ebe109db7182e4de83897a3788acbb1a3857a1d58a682c36747788a86870e788336023100a0813353d1d6d35b2ef2737c7837cb9945bc01923697c83d17f62299b535380412c0f9af355431fa85d615be589b3b720302047c435bb50066306402307a524d672e87be20507e5b13993a6902f795ff7a395c8705508a77eb1965122fcb8c4b235124dbe9b0d3ddbcfead545002301825b0b79428ab718716bf1aa7a010adbe74fda08b637b70c11497893f0e28a66107301714459e230d9f3e085b0ca68f0302047c435bb500683066023100a5ffdce233a58a579dd585e4218642062b340a46576fcc5ca1ad08588f732b26758022208cf50b6745255e05dda0b508023100e287c4569c9817ed43a3a548f757e43ec8c31b5a65274d064a1caaff8da4e8ac8fe162eea13702b297cd76ce9ee25f7c0302047c435bb500673065023074662afb2378e4d57972c01d5a8f3f7d191c8c78c74a4a10c7b75e2996bf251dbbb12cd002ed4f3c7386947d8b10a17402310086f1a45e5a62175f00c8d0fb960efec775df8213ebf1d0123563123205ec0ae3839aa8ab4786702fbdc7c737beb320600302047c435bb5006630640230569d1ee87dcd2d81c394d3f2188776b1cbbb11b9c57813018b4007d8b9234e014ce0f6d552890330c5c8af65f228abce02301bfd415a098122d6ff9abd6a26babc1924978167b146725b220177b50f9bc93fa26d6e1584727de60df51bf6591f8ee60302047c435bb5006730650231008a83613996e9f62386966cb20de6c419d43533ed04383a436276fc87d923675760f74d0f50c43acb5bcf9883f16b6b2e023030d84538e9ce3b7e89552906ef2e3a488a727c126f6403ef60c2c70372c20b1610c140f4d84bc05075c451292d5e69920302047c435bb500673065023100c95f7e5e93c913ae7e065ae11b6b2a849b0c1003daef4a240bf09e903e4ed40aad366721d78df42f31ebb45fb91fbf4402300ea3f2715ac67135cdab3787ad938f093ca188fe040389714db969be2e1d93608b84330fc817a1c983b7cc8123a160330302047c435bb500673065023031ab312da41bd24e049b3a8e525b4d105f5c26d05da6e6ae19031e50f9306d729e22150c6439c754638c223efcf576ed023100f918ea4dd39846d4ed6c2008bfc0072df6c0b0ebe198cdcf7515c6174e024a48ad3abd50ab2106562802fb70bd6e454d0302047c435bb50068306602310086cd727c26855dff6cacb23fbc8acaae5a34a0cac027c57f799d3f0411aa2cc7984fdb52660a6238a3d4e72464b526dc023100c4027a75a3f7ff2236fa4747b825d2debc34bb01f374a91a2a5dee098bc28a268d34c1bd0052e1a47e4de76be27684b20302047c435bb5006730650231009ae47c5474a03e69c7eb98ff812989ddcb188d493c20ea66cef00cb5d59b361f30196ffb0f2b30f25286d11dd2a6ce150230142d3a588a1b2a834dbb74309c0d822a6bfcd15e884dabc8e0a73386f445f6e8d65de2e9a8568536bd4c531008fe74180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023031baf84d4007bbf9696284de5a701a5fc8314fbfd7742e0aec0d80c67cb3b4c71bb44aadb53361d045b9cffc46a87dac023053ca7a83f48a3e949253d260a6e429cb049033c04436acee0f739f042ae0c5721b0b050e051e5ad642ed8b51965b0d780302047c435bb500673065023100a3307304308c87eb9f8cf13996fbe8c293fdd1cd199b781e417805fcf79fb21a1ee099e3f1d4787190de62f45e436e540230549ac5267955c1dd8271190fd428fa2d663a93c50d86ff137955554192815a95692a3a55f7897fa2d6b99fe8234bd0720302047c435bb50068306602310095f29e868731086eab866863201137194868f52ad42fdb4ef747dcfef5fa58b16b67a595b88b45260ddc424a41808096023100840b1f315ab4bcd78b906931e01db722bb7b5131b36e2cef39ebe44f28b3e91b1034e9bce460e07e12e5bc1f9e2e5abf0302047c435bb50066306402306fad88d98d690d0062126f6dfe7383bf1d36dd78663e1919f00fe0a3029324a69eb13a8e1688b244e5fbcfc30cf9235f02307a04dec349dba0b54a11fdf890abfb7e0ac67bacf4b78a0846db0cc04be084547f6fc5d940edb6ee495261971f4409480302047c435bb500673065023100f3d6c038b6b867e5833f893b9579e4575db96d6d945c19bfa4db4949a4955d71f8c9d1d8d128c92b0fdfe15135d0a967023029cd5726d430280240d779379be45f21ccf3a478546042590cd02e4b92cd0b5bcbe36e0125054b7af35833fed744dc2c0302047c435bb500683066023100eee751af34e23353a74a4989e52eae7d6cb1fb371bb18a4906c2a3f4042f4116590358795b1a556538118a6b723a2b96023100b1059191cea1bb843bcba5379089cd359cb1a5fd059dd7f6cf5e637596f2b74936feec635ba767af09b095e48dfcd6e50302047c435bb5006730650230536d0f3c8ebe677bf83c1241dc576e62a82109dcd27614bc4c562622fc4946bdf487c7dcacc04eaf29a188d9ab1677f7023100efada1308305533ad4063c131849ae905fa6f8071a0257abb4975fab347683d3d5edccd43110469dec2104f86dbac3f80302047c435bb50067306502310082a2cbfa79a8c00763c2e62618017ec9a35a3b34b4b2a6c94700334fe9792d5213a23460a657a750c6de8babeb7105cc023041a39479466b385e651b185bf58ec15d7a8e32e9ac72f2abb5eb4c69297fd7ffac780cf993baeb5d9f4caf708a8bb2390302047c435bb500663064023033507769e06b39bbbe4068030ee7aaedbd5037d7d4ffcba5253220a8d07b860aa9a45ec9d7484d776d94b018e193d52a0230129417a739df893a89c71a52d58e2056a584b14d6d92e03cfcf18e1323ce75a12ab6c11238a15fc5564016034b88fa6c0302047c435bb500673065023016f89366cf11e40ade9e6231c2b18aa89bab53a41a75e2dc080ad7ff686caea0f492a680f1e228c49827210840ba3fa8023100ab60cd6522e146e1ae5e424b0c1de2915ebfe3ddc0799098fb0d188c5da1baf936ff5e2299ade25f23b3e925679e73ec0302047c435bb500673065023100eca620040ba7acdc912aee3b01f4a423d2492d2d83c3331d211d58d5649511ea2a7cb807acf131928a0bf4a7766907cc02301f80170fffae3da05b582e7d93d5d32c30f0c8da354d8e1187bd835287bdecc0ae3fa7bc78944dd8d8087296c3e9aaaa0302047c435bb500673065023100813d642d26b36d901fd7114bb2917434fa36ebd628648abe228c0e7504ee6b048a531907cc88941177e166239dfae26902302e9d9cdb80d4b83f7bd61ba1d4f1613319bf4736f3a6d89f96776d8d74dcb6c027c9152284a2e861a4f71349a76422ba0302047c435bb50067306502300767978adb441e6b5f4cd1779562333746d369b0f5f88f32f7ffb6cde674953fd70956966a00ebbdd2d7fa8a1fe50284023100812ada91ddb46f767856bd91f3b7a006bf1130525fe20b0fb3d5e51ee3b0cfba08a3d02b706d0826114e1e534d0093420302047c435bb500673065023100ae4ccf9f0ef04b19268ae18f50037cb00810edada59c79a7c83f2438bb405f910452fdca57a19bd618fb79066f49148b02302e3cb288bfc3dfd48c5810065fd482f1508a92436dee8d26fe013555ac20efaaec535edbf58ac363768e211a3025ee6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230415963023e10dab3aa1f1bc1eeda3108f0e181002a497449d1c57bb2a283990990b7a4eee34983c6be96b1eca0f57577023100b52b7d7d654e70eb28a7141e7caf7051fc3c5a6470ef00271942e07283b710ef02f987fcbee8d362afcd616cb4ee68d40302047c435bb5006730650231008fa870d75f8e5cc8e5160db168cbfc02c8f9337bc6693707fd11e2ca8bc380bdb2b100db5386c45e38d4e7ebb37a879b023045174238ac952f0a817d6e70ce3eecaa8d0b282e9f515ab0e826762aadbe36297dc339a7165a351f56a4e21376eea7c80302047c435bb5006730650231008613120f5d5c9b2ef3dca2f5aa94fd0d28c75e4e0043487807beabf92140687002b17af1a82fcb1abac3239c3c5d293402306561b2913d5198aaff7fd2a6fc8ab261d9e094005bc67904d9d1447082302c070eb285200a5f45ac3df8f4912bf547440302047c435bb50067306502310094754236a5e04c3e1024641ab7c905e8a2305b38659411e3ee1e5044f11ff6a73c23f1df413dbab85f4769dce52bf219023040cc620000c097b5c9550407dfefa84f33b1a5ddd1769b092a9c3f0e6f14f93f3fa42a3e4bfe5d777dfeaf186d905f3b0302047c435bb5006630640230599339fa04b753392d5fdd5b14f41c3f796d6918fe153c866ffa076588e9d38e801a5d4d4eeb179fcfcb29d701e3ff550230722bd4c57c6372f3821d4795531ba1482c8bb8c720698ab4871daf5014e0fa5f902dc04fb5595fd4489a8b35cc8dd8110302047c435bb500683066023100ccd0b221ca73eed8950c405b69cbafc21a024b0b95d76d4627721604f62793a841c1cda7d953319bf819403a512418eb023100b8e1fd71b6ce735086b4437f3daddc7e1f514238e05a5bf0cbf8889c5adc0950a34a1ce16df375fea2250408c292c6540302047c435bb500673065023100e1f44b78c2c036eb537661c2b426def520706d1b578716c09e5f43f898e722291375553b6afd1176423cd747b403331202305f2e1d456239c2b44b417d516f5506473b6fb8667db63287e83f8e6e0ced92665ec92fa5b9cdf563d1dd8e7526932ebf0302047c435bb500683066023100b667c98961fe04c20a23127c5d1106ee719b37f216512df7fa9fc86ff9f86f99a5f483bfd64e508074f8473b80f33976023100d2f77bde2543c1e7ea05928ee33c10feb367831fd9bc33a57f4ef079f3a96af1889769d762211eed0cc7b2e5b8f6bae50302047c435bb500683066023100bde7c7cb3a7adcc1bbc5bba7b1923d632eb6b7019b4511f32eead542cd7948ff096caef827d30dc00dfa1643f75fa9dc023100fd68e473ab833d570bf986d05ed5fcf0dc691a1c01a1633914ec99e03be6f48356868d9e9606d0d229d3d0ffa73e0ff90302047c435bb500683066023100991729874e6aafef711535b2cee4e8dc6741eb5f079cc870890ed70ab7fcae048717b52435e4266db01809bdf8216522023100d8d6a6b688a5f92ce0845d30c5ccfb362bb3af240affe4b580cb956c82cf5c5c718e1dc552c74223128ebce4c9b20e270302047c435bb500683066023100e489971d3dfd3cb56f161aeec7718883ebebd0d0806b802a7374235746b8abe6b01a01f6406bf9cc4e370e3aa9a49591023100e7d7fac4d600dce4b3661f1e3bf2ffd9ffa0a84fd6070ef94a09b19a85d39a1d5a36092120a418c5e812402e7a5459610302047c435bb500673065023100bd441f751f1d17f8c3fa5310dd6258c3cecfb6c562ed0ed8843523ece0b7263fba7e01dd972230fce910bdbfc1b5494a0230383dfe0bfc100b22a781133a85dbb040d6e2657410260cd9c028f268200d183262447d07244270acbb0774371cd9fe660302047c435bb500673065023007747a5c254b97ac963085349f9f014e64139e0284871635bfa229e279e79a5b92643787a5d687e74582e139eee6ef00023100c002f3ab319f393531e2b0ece23541eb57a3284a346fbeae815d84ed9a2dc4f7ac28ccdd046eb0dba761b54e0b30c8ac0302047c435bb500683066023100a51283a11e908de63c0fd4e02f4c342ff8ede1d51e305d5810df7df281c75b6326984ae6f6211d38addc5113b567e504023100b25253bd3d6122ccaca1c501ec8f8ad5d970afd45e531a65d3724d2989ef1b9d4f94cd132ca4696b518ad46cccae30cf0302047c435bb500673065023016afaa1a41cb3c3197a879266c5f0564720149ccbb7ff1632da84a3176b4b15708a4a271aaf0435d346e6e66c8e34911023100b923b4781402808a959687f43c571d5948b2be18b83e1653b781514e1a486bd6eafe4031b6640a8adce1013f5b38db4e0302047c435bb500673065023052451dc3e391dff8a2a0e4ef00b486698cab4c446f6fcbeb5cf17dc6adfd46c0f93718ed3ab1ee662c0e557812fafca6023100caa6dbc7d5ee2158bf910a04a4a0173d10b3af34f418cfd6471435b53eb96e2848ad6b5c96451438443dc2d96cb5dff00302047c435bb500673065023100b14d8e721e7c223d6093f897cab31f6435e9ce626caf0590e3c3a7e0c89a1b2ac50a5d563655355480a64c6d5deb15190230354bd681cdf97fcd75afd21b1738327c9c05571698e2aef817a178399377bb1b115209c38760482643bfc563348b0fc50302047c435bb5006630640230104a4109f1200f68c9a8f32ddb7f50c5408a4ade9487527049c1c2a4b2ef57dfb72f5abc63a64c5cdbe73b074d8acaeb0230548d327284a778d09c6ee0373f2b5e39e1ac52dc546718be80e08a071c0ae2bbfc05a52632cf8bb10049f3e8a77a78460302047c435bb500673065023100950207ea0aabfdc5575e9eac7463c3bd6f642405a9876216e0c3cf7ad35426b6ea434b3692d7f15805b96d281d6bf2910230719743be373c7fc43216fc779f6aa7dad2f431782aeacec2bea897479e4f88bb2f0b04cd257637af67ccfcf2dd447dea0302047c435bb500663064023043ca356709dd7caf3af21b3032128ac73b5172245243803dbfbc565fcbc1156e25ce1a7a8cd3eeb9f515a0f8cfc7837202302dbd479ca0ec8fdbd706d9ba8fad09324390cb9baf888f3cd7e2a543c0ab49a79a090b4b63ee5fabcdc8a866290044420302047c435bb500683066023100f394ffe07295bfd4bf0b705165941db4aedec062d1998a192daff3f916fb9867fdf7b74fce08f05d9091dd664da3802f023100a51c17ef7ccb030eb44bada8e885424bdb3b0a07a7df44e691f0dd9070434aed6b3dae4651704bd5d8f9c2b76b1b62220302047c435bb50067306502304d40ec78af74567d11bf85db639d5c60c58e00fa0c136ef7bf66420d46da79e0e12a5a6a6ff589687ed6314a2c3f3aef02310098ae436069f3f61d6ce5273a94f8d656337245ea0ef807893c9962ddd7dcd6b9cb7530f3e5a467627d1824e9d6857aa20302047c435bb5006730650231008521f9f40c480a11c46ec985865829f753ee5756cf56323610aa790071115e731f3ae5fcc14ca6a174c91edfabf4b0aa02300f8e1ad97c852b0e1d2bbdd44cae5a97a83e0c3e12bb63c1d0142804094238651004c61262b987b6607e36e13375209f0302047c435bb500673065023100f346ead4469d4fd44ea4faa8862920cbeab3b22c75a9d82ecdba86eeb07834278c6169590ac7e624cb985a0c6d84fdae02306ed1e5b2ec9e7ce9075579c496d881c4fc91b412eab283341784398adf4ffec2b67a3ed050c0110994034bde97b1e78b0302047c435bb50066306402302b36b5d54da9a2c3f0d9fa5deb406adc1889d48906d1d4f337ebf624fe08d04015bbffcdc8b653e63291c3adb68b914a023051a3c23a36f5812c97057d7f0516a8f49277a92877f4d842f452928c68cf553a1095030c806c6e1f1f846653e3deddbe0302047c435bb50066306402306d0c305824eab157aefe8b5316fd7b77fff6fcabd2f320b363dec0b6edcc11b4375dec81f6117979c0da73170dea0ac102305235564b480895eabd130f90fd983bfa6e53272e7ca69ed0bb5af10188fa78eea9c8b078ad53c2b5ee76490fb837f5720302047c435bb5006830660231009d83d176cd4e68683a12d47981c300914649758430f3cec3eb25d0f77f53858688d57ad3c51a356aa1a34ce1524c4b7c023100b2bee494c94d362597c9b27f121d8bc5689b8f5f4fa8a06b2e4823c216f04b8a08bbd3b12fe61a38f5bab007d10b127c0302047c435bb50067306502301ba7a02c31ea1f8af31f57910450546f6d556831a3208a81733e631376773fd633a8472e234ba548a71dd064e659dd1f023100f87e8576cfdce4856f459060f9bcf67448b89e6cf84ec940ff224d45f8e94c4cdf4ec7888dbfe7a47adeca5dc8debcd90302047c435bb500683066023100cfa7fc3a4a125bb7962c0cf8a87c1db691df03c0846a3bd045fb3b650d3db6254f6c40adc94b5da96db27c87ea8d9da8023100a7a92406136abfac1f105bb5ea1bac966ead2c62a8c726b0fda97da2b16edef0882a4b367d358a6d63fdc46c6d8e9f300302047c435bb500683066023100944a5cd77caacf64a5233f159a0521363e4c9a2550aaa53ebb5d57ccd96ed4c5c4fc58784ebe1e9e0ba6cdfef160b806023100e49178dc1084fca6ce4f9aea865be4bd308170e1f2217fc7de56474ed563e3b8ee6d9230961a955f5a3114ebe7aa9f2d0302047c435bb500683066023100b31a015c61133cde69b2327fabec3152f9c16c89f9e2eb8cfbdd272d458cb5bea6dfcacad3d40a5b7b048966926135ee0231008ffda78ec2becc7bf63bd6272542de11fbdf0ce39fd7f2890b79b4d48e1bd132aacc99143548881d770b7477541ff3430302047c435bb50067306502307e29c6a5ac89ea358bf8b7a918b1c679bbb72fcb0ffbd75e53db4c6520eeeb1a13838ca1215a09abe57b4a7a6a7361c5023100cf07b4927c59421f1c8d7e0682479137316d11a1f01fa1fb4ca70596f7b8daf5696ccc5b3413d1d26a4d1d06b86e2fef0302047c435bb50067306502307d06f9b8d9ea08c690f9aa71abbe738e16792d9e6e5fb02c00e62365f3318323a2154fa663e46921fa84153d7c5f684b023100b48c58e76b8eb0f2a4a2cc46c26b89e5c814cda893e1b188c20e961b19420823e52eef996b8d3596163fdb7e0d3c91ea0302047c435bb500663064023011679e67f2859c0be8832cc2ba17d96e05c69b271b701bc6a503b1945f2bb7b922ca889db1cdae921bccedc93497722302300679f2578ddab3844bf6942e73bc8948fa1ebf500d982b9e66826e9b167f0278e692422bbff5a739d91d19604a553c070302047c435bb500683066023100e9565b5189b91d8a8bf5010e3fad173418651bea4f9eed5141ab1e581e5e9c501e4c88004eff124d842bf31df91de1be023100a0f9a4b4399c6a0bf34ff7cfd055fd68f3e1a9b6199c50b989fd6682a4fcdd04bc54470c0d94a6a5418dd040a8d938980302047c435bb500673065023100fa720228bbe1ae07bdfa8e379cf10829c45e90facb29111ecec93141031ae49954ba7c11d9b5a28eb05e6e5a380e4d150230405e12e973b77d6aa43940b923239401574dfbeb0783944a92169617a20975f810497b19837e4138ec6c94fedd8a708d0302047c435bb50066306402303b0c5d35c472cc6766a32bec659bd5bc55d45ef37a0e915c0d212fa689c169cfc85404ef150b0cc49947135aa24917320230242a277c4fab1c51274e69dd64b6505f74e50e1e078a95221685dc70178641d82ea576c7e488ccab38a708ec7ec83d2b0302047c435bb500673065023100b62857e822b0d0611eaee23b3464c01da9ea52626b82771d0ea45119af11c8cbb7d5e15250fd0461cd0092cde552969f02307edd4304b5128df7ba90bd27aa9d6719fc983d945367ccab98e9415e08a7dac8ecd835d5a7194072d8bffb7c6686efd40302047c435bb500673065023100eb2f6260bb1182407c8967ae1d6520d1d20ba673fa683bcf96c5e70a973a90c0ac1cffcaae18a9f4ac703b332388843c02301df643d3e11d894e0aba4db9d3aaabd1b6189c7e653288669924c4938e0b5708aef674e433770df3694ee8501269ee590302047c435bb50067306502302c6b8b13461e5c0f6e1df0d0ff90247858bc89ab29e950e2b684048285d5ad24a2a3c65079328711a399f97ac4a0aac6023100ba7656e661320f6a050b8df60f4a53d39181661c417066f13e61b3d2e032849d2b0a75c01eaf7d19314135c301aef8bf0302047c435bb500663064023063c380b1efb059cdeb05cb8a171edf3bdc1d159078172f9ebeaa29da052dfd72694fe7c08ef9dbd4b4e56d4b0441d92e0230336b988d96b978c5dcf9d0415929a1979f911e761640be6571cc54240153cc26e0f505ad7d9640fe4c22e116f9f7d0610302047c435bb500673065023100fb2ec6a1d9dcfb6afe28253a51fef36f61a5f19b7056b9d157aebf2c469fbcb71f6af55056d33a6b291bee37a89f70af02302cf673b16e037fa723e325fe44a5ea5b54959c48d6a7cfa4e4a63227e9579026185cd2369b538fc5169d407f7ffe0daa0302047c435bb500673065023006fce8088d1d142542b4847763a1534127205ca6e8b521c1c195d8ad7d1659d40b15d7f5553c1c16fd7936819cc808aa02310087495e0ca68571d36945419ba0cc9444a827e426944e54d82cde89521f3b709ab2255bf5bcaa4c4daa1347a8dbc8c67d0302047c435bb50067306502305e02656a917dbdc9dcc10959147941edef00f68baf502cb82b280dae7d656e182eb4e4a74e08adde87be19cb35f86b92023100a3bcdb82f23e80c606470a2cd7032f1baecde30f8a01e938b49e30e870a2c3ebc89802108121d8f605f2a06068ed385c0302047c435bb500673065023100f22e090e5ba2aa2c123958fe294f44cf41ad2b8ce6e8ecc81355b0683af19a79dda24bba807141e497a7b123d8c4a3580230455a5a5888c562b8dac7a7573b6b4c6324aed056ce268d8519d815703f7816858cae5a95aaef80d175c98e65d8252dec0302047c435bb500673065023032dd2d84ed8f69021bf0e71f61f04afabf6f81eb9cb90a02d2a63b303f30553ec4ea47e78fdaea6f607dbbbcf012d360023100d75dd3765ba8abcf272848dbfad6d25cbe3a7bf7b3fd68869ed74230b6c08a23448c0fa83a61f0a21fd12478c21d74c20302047c435bb50067306502304431d7af16f5749ab86cf6f77765714c6c3242c6a52fd6e5afaeeaad93fed842f2e786434fa3ebbef1f950178c8ab8dc023100de9b9cb325f3854d232183119f6270e57214e02706b6dd67abdac9b565bc2919fd5e4d3356a057f9ae83dbeb1f2473a00302047c435bb50066306402300e675754af74feea9bf6e5f1dc53a9ceb1435715d1228d765cc3de3f4a5723297b23d745931c58a9c3c2282eec8cff8c023052c0230c475cd8df4812454de953207d0ddafe837131cc5251c17f819fc1d3d7403509224f27a103c4edc23c3b8de1360302047c435bb500683066023100a1cefa4cbcd98342257d7352d9486f17c831998706e766ed5523cb023cdb2757025fc3efe5445335e8e47a28804141b6023100f21bff6b9acc73c2157245d3a64f18ab7da5ab9170c3740e99202387f0ba50f8d9b42116413de769305d00eb2da408340302047c435bb500673065023100922ea9e3a4645417817e64da55e1e26d1a8d4d5ee30f1b5ecb5ee442c8a22b5a339baec88d62f1ba9a9344bfc8138c2802302d0bb5476568103e25937def7741c88edc3b51a13eb777d57bd7d42f47d651d7ef9e2eceeb6a7d2785e6830a330ed2b60302047c435bb5006830660231009bb958f0c18839e58b833e7baa72b241e1aa67c0a12fd46c1e29129eb05948ea7a7933e20570fac706060062de03e538023100b4366b579607216b88e738c4d1de2a38e5d416493c54e13c61f6fbde2ef2ca6561b0cd87ca4d86c3d8e36ab27d6b2f790302047c435bb5006630640230753df14a8d31170fa85c277d206101b71d48e712736dce082dc1f913000707334004b5a805682abf7d6cb74df01e2133023051b2fc87dc782b1e2497404d4cea88f018f1f559f09baabcb0b1adf09e17c93acf6b3f8cc46b97e8b660953218ce6ced0302047c435bb50066306402306193dd3e69571ff5a675cf89e0311223b55bdc3cc66d4a8a8253a3d12aefe2276f4bfe19dcdc208a7b95e826be73d6e902306291b80922a4d86a7a96d2e19b280404d7038948117517cf6077a86f4541fda72d3929826291e086414c9631f3607a310302047c435bb500683066023100ee1da833bf0a47be07e4705a2a3aa2b89232c34829804a10d8b26345dd8bd8e6904ea34087688e5f321b9bb9dc2613b9023100e0e4cc532d188589caa7ba1756c5a3eac68977f40df6a07913debd7e90e52dec4eb8cf64b729111df5bc840e070e260f0302047c435bb500673065023100cee699e8f09f02fa8187c2c4f7a465d181528c0177464f7cf36b50803cf58734bc2170942867c9b33e069cb9618e197102304c7a3fc33c33beed5eb7ff97343a00aee5f9a137cd0f3bfb687c0a5f843a1d2f27740c3298d248fc2d0d2b2e1555574a0302047c435bb500683066023100e5f8711b54588e8a12f24c6fda6419f259320b74e6f3f3b03c51d32de618978d60525c4538eb9505ac4c7f472ac4b8230231009dcdb6c04826dceada7fcd94da689a2c4966652aac09681e9670c75e147758677a7aab8babd63b4945c293a5e7fdc8990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300dbc8a535b15fdf44e8d19a59108cfd1cfdab2654cd22edc31435c768224bfe11f615e3fe1d80d2257ec7d1f8474278202304ec4a4b2a1ef89e437a08542bd82d4a90e3f0432bd3d295a6de30879c1d714ffa985997075a8bf269020d316275a0e450302047c435bb500663064023013e10f659d24b730b9cd0e657ec2f89be3ee8943e5ff8d6c3b90e1a2cac37994530c0f31877b96103679c52e9382eb8802306df20534b27b866b1082dbb463ae02a21293be64ac502a83b58b840dd15a684ab05c9e09e95be0bd5d19c49f1821edd20302047c435bb50067306502302aad3db327c1836b43239d0904cc1ccb21ce7311096058b662191fda48f6922051d9eca5783072ad7dcc3875f9444fc3023100e493e0d8231e4d16f4ce13a8733bbbdb971acecd546aa21fa12ea0bcd55952a827816ed821b7b3ecaa6a2a0208ad717f0302047c435bb50067306502304b819a227c0ba382fc5ea51899e6209ab50929487d8bdd1efb29bc5fb0f731debd1aa0072d310e5812bc5def75cc55f30231008fcaee97c9806fb33269f61bb5b359a022a9dc8b931aeae9e5533ad61d1c5eef8805e874f3aec704109cea67e11f00dd0302047c435bb50066306402305a2b0fd61e023f9837ed09d6dace172f874c3f229eb1bec130e8c099a306b0f350976c1ceb7d2f400f86a504c80949c002307648bf047c243e0b632e8d9db264d68bb681329dc56be433b9e417d9692b98dbfc1f8ffab06b3975d503f7c13a516b2b0302047c435bb5006830660231008331c0988c7316935315bd306a4dbbf73ffa3c0ad5d4e662f4d292a7339d68a1593752231a02001a5084b7022d973d09023100ffe469eb416e96e47d470eb7fb9020378dfb565ebe1808bbe595b5ae2bfb56d7cf235535ad4f83806bb796a08bc3996e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f7c2884cd5535ce4f5b50d8172e9d1a2b62ce7b698a168cb474d094532eaed25f4924488226017f96be281980da18a35023100f6f476861b130eeed92c95db7c127ce1f6a829ab05fc3f41f341079ece84749b225ac7cd7e2a320d475324ee3562174c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ea1ce00755738cbb907d9dcac816aa1ca4280dc522597ce5fc501353364cf4f3e0a1bbf0a3af2391e40d81e1fab5109a023100ff4dd6e1be781f614bff44f28f34fa6636d147d548b3b9f73d46e869e3a6dba5ef1b395ed0039cb97fabc211065b05080302047c435bb50066306402305f89702b0d5a26e77d11a81e75507535d881c3d42a07b414ddd8d238f990f0eb2139530756bd628a27c8009d964a881802302a5312979f7445f6107039da371b672326fc23e51b5b2c5b5fe63f33da5e12758b0240396f03da0d6116caff6a9f94200302047c435bb500673065023100dbc2b07fa49a879ba3aa428974cdf89c72bf26f246a9d08e0e616a0735475bf4056e6bdd8825015d2ab1edbd2cf7b695023034593dbea58f4acd1f0ce38cd93050541db8ec143b9798216766be7a6025595b2d9915c041b1a9a4684ddbc9a6002c2e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100feaa41d01b9f5a54da566a22fea58d35f43ec48d537935ccd5c6482ca4b7278d2fee3632cd289ce00301b9f8b5711c4f023100e6edb4932f3fd5bbe0e10a7e7a2f61c64784a981b288275dc846dd84cc414be8d60dca733b8722dce4b3f022329c949f0302047c435bb500673065023038a683cd5b57b462bd10c442cdccb6f8bc2dceba9cbacc6e62906144194c6a4183f42f82c31270b54e2f4d4a35c04d04023100b3a27a52424ca27b1fbc17eb2905b243d68c1b3e70712cd71eb1193eb5e6a7b712546d25f4cc86113a2ab6d6cd6f18c70302047c435bb500673065023100c5503ab1829348e8988811adb8c338d0620453df359fc5cf6ca1461a8fe1b8ef1e8498c0ba334d105012ba0b0976ce0e02306b554dec93c894f91ce4cb1aa2552c74c0338fbbb2f7e7edce40d956e1a567df5e9a9be9eedd771034865aa32c5cc7b20302047c435bb50067306502302bdc494578d9040f7cb06b71482e96aec7b2fb657cb01b68572e970b011bfd422d23824c742c935f0d1c67c456a742c7023100aaf6648e1da1ddc2bcc102b4958a61dc55de84488161db18b97ab113bd420d1e94a3b860fb2950a70c5172062678a4820302047c435bb50066306402306580561076d19f57e7ef73652c6091159d8646f185561b591415cc6f2de7ff5a621a909a15cf7d7834addb3a4e5fae230230541aa00da3b0b2a7687e399a5e1f6f313e25d56dc12652cbaab5de9708b2db643f2cce122e449fefba18ee1bed7bdd810302047c435bb50067306502305bf200d6cea19adcfc8205f67cd7d1554c86eb3dcdaf0e90249bad972a7bc9bc9ff910872f5dfddb0cf351f586912a0d023100d691dea3f4b9113c85511b285bab42a8ffc7e60a447e3d3503555efcec586065b7c38510187cbabd34c697c8cba225bd0302047c435bb500673065023009f726ce4e4c210f7eb61561c36c532fe9ec441d858141a287cf60812be155688d6b7ec67c01d8e2d2988f54c1e27e5f023100c55ece3db45eadaf285b9791a5fc97e710fb194dfdaba564058b11b3d12227a531706c3049e57557795d85b23bccd9db0302047c435bb500673065023100e2492ae9066b3150c46e85ec402beb573d7b72c83044e9f306a1f70dfdb38bfb461378993fa03c93baf6d90a483d0a90023052f5e37ff2438d3df0563d5756933b188729d7288b716ee5474b7f76574800bff5334e66db0b8589303c4fe9e6a617400302047c435bb50067306502310088fbd6eeab19fedb7dc597044f7d9e5465090594763004879362c4011e40e14e52dd9727948ea4b471877792286d023602306c2a8bec21ae49609529d01408c338a56ac6efbed598228620255bae8d6a514c432590a7f1e53803466a6f225cf784660302047c435bb500683066023100d4f836ec11cd7aa40307fed981660378139461fd4261799fd4d7d45df6724161962798d3ca6f244fe35a89246ceb207b023100aa03d1ada122e6a617ff76e75c12a9183974cc6d525e856685298f896ee486345c3dcd713d4c855f7c08f9b37eef1dd80302047c435bb500673065023100c256eb9974de9aacebbf45b62a4f7280d89effdfa976419837b3eeb44c18854fa318a9cdfb207cba9299c1c4fd280d0d023042be29961a21bc9f2f5d9a2490e6810320c5f0cda9b3ec83e4c0497e46788102c64f9c3cd3dcd6d2a0721bc01b2155210302047c435bb50066306402302f9329b60f6ac014d8ec8ede6c7ffa20f528ac43774dc36b85a9b77d39a761ec8f5e7efb10c3f91dd53abae0d173c881023048b60ebb5115d0e9da15eddccf15fea119446786613ed247518a71e006a518c8bb3fac1269a9de249e60cd224957c3450302047c435bb500673065023100cddcc7ab33afb84604e6f35a7f8917e90d1bd0a9f7d2c2924f5d8047ef17e0c32b88c3ae78db4b3cb0ef958a9d35befc023033dc1c5fe7264feb60fba065a90f894c4bebb6f39adc70f491616077efc72e63fcc0ea0730e9893eeeb1455de53ac7000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ae78e50605a5562908c497ac63715b12356f514bd1fb2e4ced6e87e8c97790d1ce18df73ad73cf429c00eb490412f359023100db40d95c5fb3657e9214cd9819ea6b7510d5cbd0be128d7ebd02d58c5d504a5d18c98e8e2bf3e2075347d92b0379c9170302047c435bb50067306502303f5ebeca8f4b5961cc8b5a12da27c18664e9df5d7277529df6cbf98b0aa6ad57bc1c32ef751b8aa81f31d63d4ae9a48d023100e4656db013e04a6b79ea5602c73b367118c95834b1f6a8f0fc49ab757ce674e8c330b802b7b907f590172453129c82ce0302047c435bb5006630640230517989dd9a194a1ddd4c61e9a66652d0b6f204ca860ca4ea56ba24982f6a24f2c318b3bc789a7ada55797c348cbfa628023029bf025720096199092d721db8bd1a6b686ac6e6f1a31d46db55150238a440101e88871d4121d36f42cde150952d42680302047c435bb500673065023100a7c82142db46f43402fd89ca6eada83b9b366ac4c00ef409d46d838e04a1f1110691678cba1a10c95e84a2becb58d419023033b6f5e11686774e0467074169b24a79df42f95a80bc02f7719909f6545de6501e1551ea8b186459325d8d558d6a8bc50302047c435bb50066306402307965cbb2c4b5b58b3869f44c110a79cebe00532777e3b1ac2be74b7d286222f0994b3e34c314803e3ee139126aa458af02303c9758770a6094b65ef361be0d523596e3117f1ff44ff7d3227bbb4931522f7c1fa6b7c58b66d63bd646cb1fcd34f29c0302047c435bb50067306502310095a08355886c50eb59d7920079e99a2a85c180a3e880b8d53ad8487913ce0d4257c5946fe2aa725719b9bb17069fac6b02306d6cee914314bcd008d2990c10a055653f3d61797f042ce6644909d228593256617560496dfe5235635242806c7c2c2b0302047c435bb5006730650230330ad9bd694e65ba1e3f3f26a1cc84de99043e29c719cbee1ab5b4c881e72ed6e63fee5df7f1889f4fada3eb5b9f53d4023100c34de60142d9492f10482ab3a80abdb35b2f2eb4fc0059b1d778896cc0d61b3fb68034fd7579ca8574b1db8af65b73a70302047c435bb500673065023100cf94067d62dce4a02d6dee8e11adb80a1945ed2e7322506847f120b01ea28ab7485c1f32f6f70f7bb8fba88fdf25f57102305510e14e147cebbf4d0065db06d0c547a1e26cae457e989b13bfd2f08dbfb2441c92951c753da19f34e0c8c1697be4f40302047c435bb500683066023100c179ee4aaec344c1471bfac92f703069c448e809d0ac42bb4d0880f79825a39a7c180c8713f23989f5aba4679f84d984023100d236297ee6f9d2289110cc19cc53ee76d02246ae1a9a5297814b55abf5a56c47f7d03b4595940111cf2a5ba18b96cb710302047c435bb50067306502310086224aa1d2e8c7df4c46507ebdf9b993ef3066bc10b9a216eaddcb7706cc8c6bf3a0d5396497f33d94a0f733325b2e99023008a27cce52017680718520afb0ecf54b3a5d91a67a47d3317bed85b7aad1455958fdb447d1c0be11ca31ade525459e0e0302047c435bb5006630640230574ddbd146d68a34a7a05081ce8e6f3b43e20b28628d4e7ac228db0a914b8a02e027e7d89584267f30b22ef90cad1b7102300f76e7525673317f4f4c83ec46b6972f9c7fa5f677074df37b83aaa236d7bafb86d074c1c3a4de4ba49d40cc13ff00aa0302047c435bb50067306502302fd20025f5585c4dd7f1bc203e7b0e1c6f05570e8977783acf935f89f09ca35d82a35dafdfa5907fc5d983ec19800411023100bb91b77154240b3cd45eac3d032b31c2bb1cb40d11fd05a566248b2b458a52c38c3921b6a9771373c475f42d53d6cee00302047c435bb50067306502303f1d5bbc2879084787c597016bdc2e410de69eca51ba6ec9d2efa83d9f1cca0f3771f3a8d2c77b75218b9c6a8b0776ca023100c6d176dea3936a367cefc8c398dd0982023a540f777789bc269dbf6d5313dd9607fa8806b5b7644e7d3f5df21b638bdd0302047c435bb5006630640230637d4ee6d8180d4df2bc24221bc83aca969c5546004243d2425b36d0291007382264094b183d5f7dc27b4ea072c2d906023018258ac334f518f9c6ea130f3173ebb5d2c7377c7bc6052c691ffe2d4eca22065d10c758d86368e61a8b468631dc24340302047c435bb500663064023024760d0cae053a6e11b4bed029e0d2ec94e92f3940523e4c2a95c1e274896be9f3c94e00d36ef3317062df8b3fd63d85023071cb8eb970e9b3da3c6d45b377ee9df22964ef37afac5f6e0af1ebff1375aa6b4d9d17affda4e432c24f57e70e3902c40302047c435bb500673065023100d8f588e9658dc45a4b9f39fd89840bb50e778a48aa3fc6cc2bb0123111b684ccb6467ad7622eeae78ae645bcb7ac6e690230551486f020942168d6271d2c76344c9b84f25b9041aa24baa6d84de8dc6510653fc1b527e6fc548f963d3de21002f0450302047c435bb50067306502302e7fc57bca9717db3e79e59974d51a0fd4eba98793cf8c9c4c0fbebbc45d7b402e6afa89c87d4c25c2c8292357a3d605023100a2037857b18af443ba5af21edbdaeda5906716907a0e904485b78aea6372dde4873a1f2b0bc04a4e0d7f0a7ee03bb2fd0302047c435bb500683066023100c77ddc431219aa40bdabc644bee97e5e4c343527e735a2f5018a6b3b37b7086746ecc38dc15fcac460dd4c775d78307c02310095e10a691b5880c12ec4828749955c4f37d73dedfce88580ddb153b53ef929334fe8614bff4e1fe40c2ffaa0db4a08dc0302047c435bb500683066023100cfdf28c27caeaedca65eabcbc57aa03170ad4cc2eac939633b90595d176f163932d66a53b9b412920d9cebfc713cf3ec023100d3eae55839a29374e485d03ce260048813904a02a8c34c1206463a97b7618c4d9365e15d985edc5e5d4bf57e19457db10302047c435bb500683066023100ecd212b0aed267eff3a3c9df57a715a1d59509adc0f88c7476e377a1d042306c72fb9576dc5040a0fecb9b4e0a380c1d023100cd48dac1ae5a941012f29ada2f9036e52c1d3e0907e10bababaf876e8ae5686432efbee9130a63dbeec35a7f89853c600302047c435bb500673065023100f4fe39bdc638bd8a2a9c1ee29f5d769e43ca15c8d911300d50245a084aabdcddb1f6d597ba56075d3ac43e3e93e73cb902305f8e780b261942b1373ef10ef3c511ef61d15eb6cfa85635f07957d76a1f6077296f2117654e13d14d7dbae84ea1d6120302047c435bb50066306402306bb162872b3662e3ec5416318336922d458d87700b73786b124bff6e63973bdb7853cd0dc136e4b3317f70ddd559e70002301d6bbb66cb3d66097a85cb3d8fe660954e27048a687c10e6b73c7208103bed5e1fabb0b0cc80d095d4d2fff5d98d2f210302047c435bb500683066023100bb6fe7a2833b64e2e4403f204964f2fbfc753380191864ef2475612b1a458902cb1c779e177993ab33cd9e65c7a0fb1e02310097c0869f19519c74e591974e311ab539eda360b7bfb5c675e0e086a70d32d3cf864ab68c52beb95a007e9122bd62f7350302047c435bb500683066023100c2afbbd7484fdf72c59a1b17cccd0fd18212bc96dfb1344f11d400bf79a76b173cc45067c0aa831e32426579478cbbd0023100b31fa44eff9d5447e185ef5727f5e29ab4d0ab2674d10f41e668a8e4ca3436c91d92e184ab68782b6b98e0692be5fb200302047c435bb500673065023100daaa0aeeaf514a5a5b0ade650ef49023e61f16d31030f5585eb161c3b0bf1abed65887f24349a5202256158834fa7068023056c86ad9dcff02fae3c50431dde10573418784f5846a786beef4d99ffb695d6edc80f011ab2e9505f191df449106229f0302047c435bb500663064023066da93345e8504fcaeb848ae762355412978c01315d4b95d6ce6c6f0b62e73b2fa7403644855d170ff06073e33e1e23f0230603774bce5d2ec59e393adc4b0503b7611455d9260d28c854a0a72b71e2924a6da6076b6e53135853eb6698d6839ff1c0302047c435bb500683066023100a70e5e62f635900629cac59e4b903b50849a7efb7de3f13536bbf91e49b085f53eafa922a86990bd238dc19e9d76d1da023100ae36e588a22812e206576c628ab97cc20aa733461fa0090b57ed77a1c9d6d361913da285a5d52b8813f25c940f3415b90302047c435bb500683066023100a81af73681a19e84d210c09401469a2ebd9a82ef6139fa1970a9517487d8ec79b3c1e0a78141b1a9357bf15b493ab50c023100cae9ae02616122397ee46b565f6291274e9a589ef1cbc0e48eafbe1a2b65717e069459cd0f35437ff9ed0024de9c483f0302047c435bb500683066023100cd72b80e66e3b75eb1daee2af331611550b501afb19602d3eb4f1816d870c0cd4159fe1a5ca9498f6f3cbc2c526fb08d023100ecde7c0ca2a5b599dfb33a3040c110983f5514e8c89fd5e64d8260caa673b333bb13dc67209e748a19c5ad16443b32360302047c435bb50067306502301775687499854ac0f4ffd99e989eed3d66042abb2f9a1d5bf0c1f3f0b76ff7e2b5d24e9a070d93946447f963a11523d2023100b1266b972fd9a2b61ff026d83c1e9bbdc2d036f9b332fe1a078f613d9a4ac65bb01c1f47419158d86cd6fb195edfb5fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009166e7761da7eb5441c06d84752c8acd2256f8a8d45c164842bad8a2a4691272032c2dd38e2c03ebacca0c907d2065800230566844afe41f960d0baec49af5544bb294a25ac25e8cdeb9cc3819a5eb7f3463a2381dfd6835afda8b57f8b1ed548cb80302047c435bb500673065023100bc3eaaebad2674bec10c542d0a81ec88fcc325def059f4a821cd19456010b858fb337ce6b899438df75d7356b0a25a510230173817535938e7ab4d0a9bda64280d38871f3e69d1eb8b6b43efb1712eb7853bc3d4479b74878d0b68a4871b72c4fd3e0302047c435bb5006730650231008fcdb4978d8ac134bbd29556a59f65de061ea9681842562a533612ffeae65b3745ac22c70335f0cd0cb44f66db29279a0230476a7d4b3f5d15068159d6d895c8e1964668a09d510750e57114bf418a414311c7f0daa2f957da9b55dd38e6c6abc1270302047c435bb500673065023047134830dc9f9d86c634610ff83ffa627c4f682c81515aa0b41f7f59563b61ec0a6e78d2f8b79e796e2d2653d609952602310095b5444b49aa7ff9f9365486bd0144de175e0b2376b8071f45965d0088deaed41715bf78a079aec1903ed6b866dd04e70302047c435bb500673065023062e49eda901b97aeba2afb2af8cf1704876b56708e8d0e78426f2c99cf65aa88922e2a7383ebca16ec21e9be16346aae023100e92c64439524e0c6798a0242b285da9874cb8a9b8a14a48a75c837fb95bb1ace0bf0918d7a1f436886864c7e05b079dd0302047c435bb500683066023100f97b8e658ad8904a9fb18aec6fcebd17ea05e699b4e1c1c7c3ddafa7b420c4927f614d999d1c89d71ddbfe76c582970a023100e8bbe37d02e7039ba812f84965e699ea825f38888088ace3eaaf3f08789c8734b653a558549ad561005955924b40e20b0302047c435bb500673065023100dbaff0c5659a3ac723d3203b8f6e068b3e113560035bb00e267fea0cca9b54f63fef05dee2d6d2ece3824d8fe148b99a02306581894518773310115fe325e70d235f7605a92334e232da7825c094f241aa31a1bc9d221356259c91d3126fc8c6824e0302047c435bb500673065023100d833f3beffe31e312efc5ca56e15b4e2d1bd3da2e0c4ba29073b860b75ee3185b19b9625cc85c0a38a4885a7e441bbc702305a31c9cc3dc85e915cf9c9ba97a6984255bae6ab64cf5acf55d28fdc71519c9a084ea968a6004b1a77c138c05829ad4e0302047c435bb500673065023100f08783e0fbdf28c3d637cba6dfbd6a750f8e63270285cc616e189ff440486ff83ba841020aa8e4b64a48a3491718b04c02304bc2083d23f090ab601abb254b8de89d745336ae53aed7148793219ed9315f113f138dfbab08b5ffc605235f99817ef20302047c435bb500683066023100cf51fc10c04cf91c34297a067584de1933587a1001271704dd65479e31112755c4ae040228f4bcb50ca869f19251d7f80231009c0f6ce59c92ef2f2e20ac4222e08480dd994e92b7aad4a13a9dcdde31192dbe342ff97a4dbdc736ad737b38a56f60650302047c435bb50066306402300e4e15c96195f024d70247702306ba75d39f15c30f2a24dc97bcce88fafaecfe766ad2910ae9e6bf4b2caa0fe7fae36a023009adb376362dd764912bc96606a7b0a5b0ef290f3e2bcba1d614791d7aaa2a1b7499b19123302d81df06f924402e93b70302047c435bb5006830660231008423eb089c2e0a362fd666e9045455b039aeee66c276f88b8d54e33e5c1f373f7793b72b034d28178b2cbc153acd9b9d023100ffd22cdf8b57925b752f12a6a25ce328a864d9e4467b346955b49bc14be1fe06d50ebc23880478e5cc675826242ba07b0302047c435bb500683066023100b6f6d6e89fe1aecb22cc180fb89f9f94fc1d07901358228f3738fcac294d07fd064598dedf78faa75a2c20daa4a98d10023100afc820658880a8abe6ac73c4f0714f768b9feff3dfa91780f5fa461c66d6f40c7f9ced7dff9d2208776c784c5e1101260302047c435bb5006730650230793550c06ac4e27b1714b9f513f9c537101e67bcdc1ff8f9994c54f07d91b8b6173fb5d30b2fa31f73662cfd4ad9b2ba023100a2d477b651b61b53c86c3a0125b0007251aed38bdea4e4561f5dc2d9f0ff47e74b9839b6a78f96a122d175175b9a39900302047c435bb500673065023100e2d567c4752cf2ea530b58af5bb487e5b64b1cca993ee919eae8adc7f363a9c1e4faa41ea32f0b467b443770ae4c2e9502306e5c5367211e2e96ffb237597028104e814c628b44d73b07aec7d2f80982e76eab4fad6f0351415e285d0c00da30801f0302047c435bb500683066023100b5dc1a88b549f0fe3849714681c6a5f2a70ccd0be2b5fb235fe643a46c08d94fb4e2463c1ef5e862ee3361e58016c475023100dde6d82c7463e760d2bb1f082632447726ff75b4f8cf573e51903010f9e6f43fac7038cf5e13b2c233e4f18ce842d3220302047c435bb500683066023100aa2322f837effdaea32c3e5b6f3a1083936aaffc057aa3dc37e025dfaddbd1d3449e5c8b9eeef32f6a4e72207db753ad023100b7729a1d2bd0ebdcffc74390060608afd207502d56001379f9c110952ca2b18ffd8b7eb2ff44cbb245b255e47f38227a0302047c435bb50067306502300cdcb30fd0cfcfc98b4570d00faac76d15207569da5d45bc00a3d9af7a0318b0619b7537b1a5735e379cfb5dec675a2e023100f1bf02f2c0ac793617e6d5929701564310d6383a354697ef149ba2db8e09fd0664d75206a33e055c965fc40a3ce83a170302047c435bb50067306502310098e9a62929a0e737300b5e22e084c4178c86196f548724a8283035993db8fa3e307bf14295e8434c3f500ff37efb5e5d0230156b46dfb22a9f9a19a6cf89159b7262eb702dc9d274a95ddde00909c409712e9eb70ff881d314948c24fec276e188740302047c435bb500683066023100f1b504950eeac05c3625141ace50d06ad4ed5431c359e6852ae5e879159462b6749578ce2ecb3ef45b0bcefb7e2dc0fb023100d47397989dde231e73b0889c827c8b40021c075c9913f04d2200fbddf0df1c13e4834fda0f432d67acdab063fe757bba0302047c435bb50067306502307e609bcbc32109721c289e659175370df87a6a16f6eb6d76c2e8febe13a2106d404585071719ec2885a07fea85894ac6023100c536e06876cbcdf0fc59f876d8d0599073b4fe2df30146b3a96a1fe26e11862580f3500ab1f6a0ee8e6127e7759897710302047c435bb500683066023100d7add7f4bed7fcb19bc7c44f80f03f43ee4be99b74b1bc06533e02b0d375d656fcbb649d79bc4db8736a60e55af5ada70231008c09e54a4b66dac3c6df5c858e51434d8332db44dec179a4ddd98bd827e7cb9cb4a8e3c0fd4b019b040fde550738edf40302047c435bb500683066023100a07d30a6bd37ec8aef20b048b1410ecf5deeae94dca451ec17e84b38410e6e15bf6f017770a40b956378b1eecb9f7c65023100c7ac046a0203a7ffc03f354b6e78baa17332bddc3b2e32e76bb86a7ca9f07d7526ecb161fac73cf5e9e7ddc94ee6d81e0302047c435bb50066306402303ca29081e0bb382c348d438f776926515fcc2283d3a2a4341da3b80a59d70ddd2bcd759a5e0d307ece8b416b7c146dc50230431eabe2e558ddf548b7f1259acbc30ee7c1e0f48b425d57b241ee1ef3c5154f70de8141c70600388817c25ca90f201b0302047c435bb5006830660231008add527e70183edc51d175910ea037a0bb0c3a094fceafcabc31bcbffb6fd679536054f350b81c12b58e2075fa885ecf023100d2313206e2bb435461ecee0eb6c4fafe97a66c5b0a6cb4218c5880fb53d11b2d5da80e6cf8c847eac4733ae4dd0c4b910302047c435bb5006730650230127edcad8e9144e616402a3dcde8d4a756cdcb94c7588a0e75b93ab6d5b55f4482a0fe92d26c755e00c54c799698e4e00231009e80230af22d83459ee40ec15f4ffcf28f679319dea9fd61839301c552547091ca52a133476b2ed096f6d41c2d603f9f0302047c435bb50066306402304643a9b3556d8dd081de4c23b58eb674eafad1eae5d79f2ed622456ba77344d8f571b8943864b740f1571583b16a42f30230520b9c74ca7c536a8b0495bdb8a4a81afbe18b4593b7505e1b43d9972eae004528f7f8ad61d068510d59626242f9062d0302047c435bb500683066023100af25cac526d751b2282925e508bee9741a318a017c848c9d42b3ad0c0f5d22fd84319a12ed992c4ba758621bf2f260c302310081d18b7bc439353c83fb5446ad187afb2269cc4043f369b2e5afb3c994194200844c44c0831e1186e1cf7c5567714d110302047c435bb500673065023100be0bd9328f389fc7a782838e7f0c08505eb5d33800ec303c99583777da5135f99284f22368715059f75b80a2047a8764023048835d3cda4a43fd4f9fab57ea8d295a18a19c59901a3b448099841a194588a400cf29ea618545fdc597732bc66276010302047c435bb500673065023100c4de1bbc52a832031cede0df1eda01dfd7fc523692ee6c999eb8ae0bc98b462852cc132b82fe80c978944e3994a9c2f502306e394655687440351cd6008d5857fb62bfae3961aaa7a0b14bc7fc450ec7cd2f9a2f822e7d3c6214b9ec85a5eb5e86d90302047c435bb5006830660231009b789acc518d14b581fa85301effdb7b1544fcf0d27af0f40fd91da430cf2e0fa6bad57c16523b1aa0e17330e4d90c5e023100f7838d53fe2dc780c17a778eb92b8bfb45a353e417256d085a78f34c94851755291032a734319b1edf599188b41554a40302047c435bb500683066023100c668739d76d53a032e8590120d8f7e9fcf4b6ffa1d9c7a21ca0865f7c8d474a99d9fad1e5310657ad80b480968aa2f1602310099848703e094888145edce0fbbe552584abb5cf12e9099f6eb009f4459c6620bcbf9b52acdd40f7e2a54c9dbef17acdd0302047c435bb500663064023076cead73066aae9a171752ececc5f76286ec3d1f50685f916351d45c780e7e006a712a63586222966aef7b9b1abb2fcb02305492f2e190492c225e42fb3333e714fac9a8f378c8d35f0b3cc686a4b8a92e517629e33ab44f6d2c40d3ba62781c21fd0302047c435bb50067306502306fdef8e7399dd7b2e62d5b3d85ac67533876f18c8a6e3e9831611a099c90f7da8012d1a877476653bf45c3f75d9a09e30231009df0fb83584a689cbb0e99f466b3f855a42c2432a9b915f1857859f2fd5bacd2a65e6745118a41f77ddc780635dce1010302047c435bb500683066023100eb294322cf40ea7400140594192c0af888aa6e978ca366defbc39574e1584afbae3454a14c2a4421d5410694213b1ec9023100b533edab36d8761ba9223102d29d1c0d437c4e90c85b55bd09a31ac1d3a10b42e5dd9eeff205dbe7ffd94c3c7f8ca0c50302047c435bb500673065023076be224226955d40a972f4a85b4eec51191046f351b602da78457f2c6d3613de99b7686589ff1b3530471e3026e04366023100962de93c85165eb55cfd4512d83cbea81f56c65315f2fa8840117c55f76422554f53fac817ba9b4056daa89c13e7ad960302047c435bb500673065023100c3e360e47963a6d2b715c04349a4ae01423ae866c0543b34e62fbdc22076396e7f2f7232909e65648c30ccf1387bfd530230638861711eced9f01488ac0d988c674a206f9ace501bad61373c081f16369761f0acca26c2b06d7fd3051f1436632c940302047c435bb5006730650231009b0123b638bf39924aa3ddfac975758aabe18ebb4e2cb6be068ec3599e9e4e383e4c88dd8fe9ceac2d4c0927af9dacd7023063e3cb4ddecfdc923efe7c98d82d8d173c5510a348720867096d9a085a59a29e6fa425fb25c435ba88be9fda13af9d060302047c435bb500673065023100fa2fe7c3de53048363135b0f0c953e9f3c04bc9e2104eb4058f146708471ba63224a098a38928ff83e84f2e0bc817b080230365b9ab3dd4607a8769082a65fb0f2bfdff883ad59ce386e31f0571f0c88b23278eef9ee37a2ff8242d41fc9fdd1a08b0302047c435bb5006630640230416ff494b47557a9439b49c7d28baa5e60975e0dda9fb4e3be61fbf24a80a43884d4b18693551c76ab9b69bd47427695023013c391debfd58c0d150e14940164de1ed61ed4e3f705ed60b150e48efa3fed39fa41dcb9f9c412661d059ef2ba960f4e0302047c435bb50067306502303dcfd03eaec3e52bf9f3e623d34bd3ecde41f095bec4f2e0a487c5c755ad8f522df465b0463ab27ec4c86bb8e4e9afac023100fbbd7ea97b648f2a800023c427e9d24e43a2b07328d8c73e0e0dfcc898204283fa462b3f47d86c9f0646ba4cff58ebae0302047c435bb50067306502305170f9b0cf641d36e453ac62aec60e8081ad678dc9be3242bff135a4eeb070b2d007bd4175f712b68b132486634430f9023100afc2a8b892ed6f56b0dc83848fb2a02df51dfd2c5564fa28878da30c9643c0dae95bfc8d9c33b9f78f4481862ddbc27a0302047c435bb5006730650230024381ec8750c28a48d74a566d2a56f4df220cd1ef68cf5e6089b9a0f9e95e59163333e0f1fe8d6ad908fa523d66d9ca023100a1f55c55124f2416f8ded864dce6199e10aaf2be8a413afc85bd0bef2507343a92d2e9fc8ac156b0ba76ba94939d45f80302047c435bb500683066023100dd56db3823a267ae15926ca698853306009de1565cf4be110c7c9a3fba9bcbf40d747976314178de53675c0809b2761e0231009d6fd774e4c745ec9590e7c504a27d90eb51bb40ada4dca993bc3d5483f084ec3df75ef05f4c70a77dba8de7d2e25fb60302047c435bb500683066023100d112cca321120d35f9ddd70e203a070ba0cfb1523e8f28fae16044d31406b652cf4b28b6992fe2129cf05b0bd1ea8f85023100e653d0b58fd76ad5052269c5e001d023a742f17874a44af1371bff90a9cd7cba2469e4e306e5fd8a5cb0e216d8cf76ad0302047c435bb500683066023100a5d26ce2b26a392ead4c2357be29f2c8ca524723af54c1a459cba564f7d3862883a77a07f2972ee5dd4917dad8cd131c023100e800feac21ca06112ad6c095faa5b18ad10308d92fa5ec9dbc79c68e5bc3e648b626c1c07d4b552d75648f054cc067330302047c435bb50067306502300158a12e95b13c6c6b3767ae7e89a692e9e43b2c920030408b66456ab8de2d4cc4323a690e67af22d4dd3743d09ad81a023100f16f59c62e72bcabda37891035661a036e100f1be5672849c262449f36de38d77e6bd49649a1ced7cf3902c393b2c3720302047c435bb50067306502310092865662395aea834bd1ce9b18baa6e578c6d90d96a1293183602ae4278ae81646abbb134cb2d26d427e8e4dd7ff95c5023027a6141a058a6145fc2158e9d511c6186670d0966410af2907f7d1d221cde978eebaeefc45ca80e2c8e0929cc4ca80ff0302047c435bb500683066023100f15879d7782f3f09d48b76edaf375399e5b3e7d49483434b5cf32610b06a65ec57c526f0ee27cbf72a8a96a28444fd71023100d592460f02432ff30ae26fbff121c936e16d058ab5b9b32f9a6bfb3c4ad1f1abbebbd913a38fde6bc8506420ee6e32910302047c435bb50067306502304d5fda01a7b8f6495a95f006db1ea22cb5a3fe582c0f925fb6b4846880797f558a14b6bc6a2067c6dfcb2db28b7ca63a023100d12922335869ebff5060651b04d720d3061d0a4f691c2b5eaa8a781b91156613c2bf131daa2f6b20e8d0eedc8840c45d0302047c435bb500683066023100b07ab0688c8feb89489a7ed350ff2176bfd8ba381366bf7e2c60b0348366d75b6f8c1d7de011c0ce289991193ca59944023100d356aaf4d102e7ac0b1be5c42ee2ea99f112a5f38c715d2441449737471db97e441ce244a50afab01a6b6e147cf6b6f00302047c435bb500673065023100dfbe2f0237fa88a230f06b06443b790c86b0a1f3e604790e938d522a2b30b52f938a3f8c873c22f9f10fe9d810f99390023016b4eb35ae813892ed69a77dd27ba17048cc5cb6a2fd9ff6d7469720a088c5e7c15c4b6836988385ea6fa6222b58136d0302047c435bb500673065023100f8c924a97f98f72d832827cdcb88fa3dc2fc298efd9bad9f8c520272b8db80e381965e4d7c41b5018e7a0a5e96423c77023027c4a9c0683b0cf9832128201e796bc00515742c0db572650ed64c89ee11397a004e0ab3fcf27bcb7da36a407af32f4c0302047c435bb50067306502306f6288a872f2704682653754dd94af63e69abd04fea251ef107f46c5215242b73f57c5b1ba4144487f72209d51bdede1023100fbfec7abe62e11051bb6de8ad5d3adc9383850c2718cba662c7a20a288fc5cad2e1367e1683d31faade90d0c366cf0290302047c435bb500663064023042c0bba83a4d334e67b04b537eae8eafccb628c37079a5734b58aa15096e512cfa92203a2d63460db21864f926e4764502301d92573448344eef270cc6990874e506ab02e314d5884bea908aac7e5f4cbf7223c6aa93c13b6240957191473e9629590302047c435bb500673065023030d983b25dfa50189845851209b7250a58a0f52abbd53287dc17630d0f7fed4d2a9fa398b3596e09e95f5863762cb30e0231009504e5612cb89d9476df2d548e88becdc76e84f3286e71a34ab480f6db207f061820a917ed29d9291670280ac5686bf10302047c435bb500673065023100d93e763d74b4e459578443045123cd0c9cb6529141d6882108cb7feafa5d4a17843f3084b929d59fe24cd94102c89ca302301e5d79f9cae0799b93749191f977cb701499d465a52a530fe6bca64f86b804e16a8684574c0cf8dc8f6b059b104afa230302047c435bb500683066023100d2334062a70bff717c9842dd63b25e012131e51f21c9c00230af3abe02da3f23d01285c1d79328aa9074ca8c8ec08226023100a8b6ed2aa55fc67123b68b4e285c3f3243515065a394c56042765d887c6c9aeeb79c90c5fe27e0c5d9c069e64f216fd90302047c435bb500683066023100ce677a83911e49d82f468f75df1ef13020eb29e1ef7aa5a2bb39df6b4f5f6aa799de2f4291347464aff0f295fd96b6150231009cffecdf9c7705f12675cfad1a1080d15e798d5f0af66624ef156936e348dae54b2555f817f583c466f5586a9071d9410302047c435bb50068306602310095f98107be275e2de2d2adcff80bae4cf1bccabe44a7df57f8e84daab54dd2f58528cfc36a9c3689863fcdc7b8f3745a023100c74f773b32736304b50411b2efe830af5482fbf333b1b951fe150389459cbc1632ceb1fc02cec8bdf7b9b7dd5afb1f280302047c435bb500673065023100b6a487427e89cd05074278606bbbc266d1869125bcd25f65a76971fb18204a384334130abd10960063aedbdf470bc8ce0230525a4fd3231a041fa0f1e7b223e0d3288b7341f7ab7e07b68e139dd4b496ed62004e419b1ca714947a495176cc2dfc670302047c435bb50067306502307f44a534c6450c79e16e35661a4c65deb50561ede3755b41842ee7753cba81441ba9625889704156a623ccde35b9531c023100e71ac31af01187232a15c53a439f59e65c07237cba8a8727c309d4941842bb34c7add3376d6e1cb9eb94749e4bfe248c0302047c435bb500673065023100ba0811de09d8c522dbfcd7f47ad571de8132a2849d2ccd8ba8e3f105fbe77a4c635d5752837b371e31dfabbe0bd9353a0230218fa37be11f2cd217e3a45c04d78f33c499c3fa1df138613b767d36389e16d06f149227e0fbaaa29b037a36c7e76c400302047c435bb500673065023100e2349975478b17a522fe2228cebee591d300deef0beb87ea3ccca96a98be56c9964f836d3f333bc277fcd1b3d239704c02303a1d9df0d7a2db0c7edaaa71d76578d585242477447617271e77a0d8a85041b4cbb7d96078efcf82e563a73a4fc676a80302047c435bb500673065023059ec92c1664208cb91f6c1baf0f77100f7ef2d35e1c4166415b4f1edc903b7b558c43db3f7791deb49037daddff0d1ec023100a503b16ac2ef61d9330c91750dd1c646d4b26e9ab869d0c7baf0fb2363d5bebfddd0531d35afc2c65055a3cfcc1855a20302047c435bb500663064023028fea5fde0ac1799be521591b26612ddb544af91ee87dd72c01538f7fed1bdba12abb1c9f7028b01aaa112201b551e2502307adc1d6162c18df8f071e3ec74d06f87da1bc94883e7378dc27e2c9da501fa947dfcbec46246455cf93f6a93623463c10302047c435bb50066306402306f76393692f0385203ca47550a81abaf62913c5990c23201db8d431032b744fb5b0ecc26720297d96f9a87d8dc940541023054c709ac6d778fffda1ab82eea5b1ce20fe13fe091cefe381c3cf5711e40f0e0d5b041605f398e40caace4eb4161ab6d0302047c435bb500673065023100923d4cc9132eac37b1c8f90d452bdecf78b414a96b21111cd2a589a9fe5cb53a65bb0ea5755beb7a510b21b8da9b38b00230238c71333895aaca93a7bfeb9199f3c6c6fd3b26d1e90223a75b5bdd3862b94d6dfb1aacff639b228623f14ee2e804970302047c435bb500673065023074a70d502bdb3a5d39ba455919cd073f33fac6b9b1ee99479d5686d3a1664bb3894a231a542e30d6f6e2a04d58efb6a0023100df46ec17f28207c383012b5f7b0c72dfd8aa01c758d48692b4521d1bb261563a4cb52bb9636bfb9fb498dc3f1ef69ddc0302047c435bb500673065023100f69750add6a76ad9f644380577ea3cf911bdb11536ca24307158f00a4099c32e824a03522b0548631f3ea819b8dfa02c023003a8913b5061d0f179fec4a564a55fae63ca701e25c2cd174b162e49659f0f942b4f814f78ae3b1f2a5682092575c6c40302047c435bb5006730650230760f533a20157cf7de349477fb3c2e4e6f652ae11a550c3b61aeefc6b85bca916a4c4aa27b9f4bf41037b24c03911a2b023100c730c8928f79be6077f8ba917ff551826a36eec5e713306793f9fdfe7f3799725f7d5b43bd9fa51c4e93aa2b3b8ea5c00302047c435bb5006630640230518eb2e85b997e680917e4ad9fcfc9fea447c8bb2ff5253c1a7c8b91f9d7cbeb2312d79bc7f1a2a8e02e2a907de05d6b023075615c4ec1b2824ca61813342c559a31b6d9cdfe96f8411d79d690ddcade622a5a28b60b0ced0723c2b97657a91afa9a0302047c435bb50068306602310096043cfd17eb1dd5924ac1bde7a144c9edb667e41545690640af95566aef99de22fb541a1c985b24f4ef5a8cec5668ca023100ad0495067555f8cb92d895c24ffb6e3e7b46a8c3247e3a5c03a8cd30937a23752b04639c95a0c5954734e0b497fe045e0302047c435bb500673065023001ea961cc30993b2c43acef8cf38752b2e79ddab33ee7464d2290b4b7514acc505e7b8ba743af38eaefdedf79ea8aa23023100d49dbdf854e5cf5b53baec6acc4107d065d467d81a37aa14bda61beecc59a1eb1ee4ca5900ee51c88cd9cb0a710e63be0302047c435bb500673065023100f41bbb3f27f0c8eef6036d28203e1b31145957f2220bcc9cdfc58b7b0cff88af221a66247642b5272a3fc8728601135802305831e70e2cee79bd493c2b0a431943629335d54b07dd8e21123adeb2bc36cb707a33f4d3d5396d6b2d7ed708263d7a3c0302047c435bb500673065023100b03c828feacdb666af560b602ee2930b37181756852e28acbe0f9dd4778024bd738b728fb5fb1eb78c2c5eec8c68c3bf0230172d7b8d2707492c4c7f930e1e1ffe9ea30608cb95cd744ba8916cf648e8181e20fa285ee178cc9c4ea581a74d736a710302047c435bb500673065023100cc48c87d32531df5cba8deb1c806ebc2a5fdcdb3cacac52d62767b06f85fad9e174f045ac7ba7b02a060127d377ab0cd0230162fe6098ce3b950e9a46f3762d8853917639e56380cf20089d0a9d486f425770b6fc6782ad5f5c005c02535d28feae00302047c435bb500673065023035bb47e3e5b7b254dbc3c53a30c452426c7e3390cf3a48785f81c20e52fd15491f365f109dc50141da27cbe8d6e83396023100a73440c0d442aa501c85d2ebb20a806e682aa490e58436a3bdebeb9d24d1a3deea52ced727dd35ff944a99f2d0c76d8e0302047c435bb50067306502301ed4a2b65eae6df7ac45778007958b0f8488e4236875b80f716cae77c0a9a649800917547c7491ac078df66dc9f53ad30231009c4be53838652cb1f60fc1a853ce4534c8653af9538c7dedc12d3656dabf344606ec71228f4f84e3f2615b6d923983060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303275d662cf524093d20a7a50fed758fdcd75644d69e5158b80c5f1f03515320e6b016ac53710569ff0c07b1b3c0fea7e0230198a489526618a47ca1d9a597eaafb2b137c963ba5c2a01bc0ecd3a7107e6a55251e84e5a42b4bc65e7a3d0352e5216d0302047c435bb5006730650230075c86c7557dc9383616d1e4eb085955bd2c586cc6c5b4a902a7f26ba27c8d5edfae0238b3c770cf147f8a0c65164cc6023100ede5fc07a5660ef86445b5b731f58fc1ba5e1391001405e9eda13f1484033be6a1e5962cc771ba91eec30dfdd0ff18fc0302047c435bb50066306402305ed1b24dca4a500697e79b43b5f72c6351977cbd2eed1dcfd2ffce6f10ea8e2c7e3e22ea81c59726dbbc5617c1d52a9802307f052d031c373e96afc4d8832cb3153082a20831190bad3b5a5181aa7810a8387697362dfa0e9820bb8b9e6dd7e125fc0302047c435bb500673065023100db55ee71c70a718a83181e2ce21f60670dde66ead4c40f236b784295c828bc98813950c77a0da1e305a4d47d437ddb7a0230507f37968eec378efd3dde5681d835deb2f035d9331a888c16019fc172584560214b1f8b39a00202a8586da23f07b8990302047c435bb50066306402306cb4d3ac04db95bf508e2db7ac1b15466ec977443182fc311e2116057231b7a3d194b0fdf7a7acbc2c653152a4316b4c023024ea9aeef6c2af9fe789616aba25534b622a8d7063fd6bf5d70d1434c0520a22f995035f810f96ec87b0f9be699a92c20302047c435bb500683066023100dccb189987a062e99996a1e90d52f6ff60ed79c352ccde7630dd52926ee991d9a5e7bb1aa74bf8c4fd5ad2a711182a26023100d52639db06b0a5bad30005a8fc6b08e3ba47fbf05f6f7a913b3ea00d6e594f11b84106304ebd01cbc2c741577771b8b00302047c435bb500673065023100a531818ff4e6ceb795747592395a181a6393a9d050e1172799be12015338691c5b7e635c4c1000893acf97afdbd00b45023017cc0dd8f0d363fd46a1fa54702748fc42d6f2b0b3743dbaa4d701cd1d2c5ef29b29e119f888502772da59a3731ed7e00302047c435bb500683066023100c2ced5f09c09560902a6461e3e571b57a72ea866420ba1493b0249d93c8ff0042527891fd468df2c8f6fd1d02ef8fc4b023100dad3996c2ee5bd1b493d74994a2928a1e948c147553190daaf2b0b132a01ad9362b161620e905ac20690a0fab0a493e20302047c435bb50066306402304420777696dd04565596c42d496f968b964f467e15cb16b39e9ca094eeb6241120528b22ddaac38cfb5a79a470f6c63d02307111e71d2dd29d4ec6f1939054bb13f593f5e94fe1c68effa4f9fe5f8df33cb2910d6532808bb9a5d03fac8d7d2c6de50302047c435bb500673065023058ec9ea75cac9844af30adb8688a75253d6259e5c7788778e456d98603967c8853949442cb58b4cf8b33075c3f3b3428023100c65f798650df375afc9ea87919199d144e9627c01fde6647b39481579ae75120ad97ea93b063153196a042a3acf311c10302047c435bb5006730650230035fe31f3f5ad6ee796ac3f48bf5f2aa03cf256e71941d70067c956571cda10ee937347303bef8f75abe70c7ef0f8557023100859d3163ed030585fad87007565d37e76981bec49f7e026fcb268842d0c21571669c81cdf541ef59b2f08b44ed5360d00302047c435bb500683066023100cb6db1219911c610adc5f35ca243718bddb5ebaa2bac90af07c16220f4d99fba728554deca48423a597e939c93033304023100ef1f2fba89780dd5ab3083846c1a257ddf50cd3790e19de781c72d1cad43d8b42e8e0547dfa958ed39d28a1a9c20392f0302047c435bb5006730650230784b4113ef467a0985fb454d9c29063270884d366f61d91ac4df04923f6eee2abc7b98838dbaeb0d67261f1274fbde40023100b82a869d62b9f714bcccedc4a0f45140afd31bdbeef7b9b33e19599455ce3a407c911e20ca16af400f1de4b6bbaefa9a0302047c435bb500673065023100d514e8033326c1883fcfaa7a0c055d4948d1c4d1da7ddfd2b4d343aeba161e51b997b4ebaca1838312bb39c97e43072702304b90660cc94ce30def018180c6c86daec42c52994ba6578ec30c8153da3c7475103f46ae521a75098fa08d111640667b0302047c435bb500673065023100c94f21123a2908d685325ed80e46f7f6226a676f0c2869ef78ce6f198077ba689dd6b41c8be00a0570dda4515cb0f0830230135f2f95e25400a50325021afefc11ca712ab9c1ef1d1671ad6e5099714cfedb0b1734ec1547af529c38f8f03c62edf60302047c435bb5006730650230537fa61fa83d5089f831897b944c14fefb53a725b14aa3f2e6afd9aa38b0c87e9df8c2492702501a7da3b527bb18b18f0231009894629fa1f85c2eb1af9344933a9c6358a86f6de405106bf410eab2712aadc9b2502232bc0db9fb6fb4f7e48a2e53130302047c435bb50067306502305da1c465d7bc65f4f61b935c34b8aa53966d27563e5034024540c1d77a0ccb6924db282df0d7c0146e52d834dd1f5066023100f0811fe69a5f41b450a5899992780ed2f9d360a3c955bec22f35424a87d062e5719c02dc89ee8e1b5bfbfa98160bb19c0302047c435bb50066306402302a312bf780229ab22df42c628b979ddbc3dd0d243b025a3d3d678f600802fc6fd87e26b389d75ea1e3b66d6067fd5be90230110ae4e003805557bb6c677874e4bc117662cfc17bfb83eb59e236d7f3b4638a3e4df9f6e3fd56ad6d5610d19d1c30a60302047c435bb50068306602310082154a211c655c3c97cfb0718a668a3539176ada17374296c605213f2ff8404baedc789383c0b020898ccfa9f58181dc023100b0cccaa850312308e2a8346585179b6037e6c2d6b0517a626bfdc084941e2f7ea7f66aaccf00c8754518655b1c9316f90302047c435bb500673065023100a8e0dd4749ee15e4f4a5a30962a5a7828f7a567048661dcf7ab480f15a1edd3d48d441e744ac1f988540cf6ef7615a7c02307e2eca9b9575aedea098c952a1800e21b5f8e7bbbbf537def149bfb2562ab73312ccfae5e674ed3058f52ec1754bfc7a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310089de9dc170d31f0c916016fa978a3dfeeaa6c99b3e8f4e7bc5bdfb1be67480061ba88987a53fa015813e71d2e021cf2202300ef1521b88c4bb0fbb0e7cc08924a549328e9324ab326d3ef5ae5100cc5953206235359cc312a3c87430061baa663e280302047c435bb5006630640230660478a2e7e628a14380e63cc5b7b60013177b496d50487cbbe0b94bb034d3e6ae609f4f7d243102e76487b81dfdb98102301286e23e1cbfdec0ad19413d0518dd3a1a1f309bb996a5478961691aa802b8f9c7a322e3ee4ca7530733882ddd1153e60302047c435bb500673065023100e6ca683c706cd5656ff1704f0a53f12efe27df78303b43e91f85f3a37b41bc983547a4aadfe4a3cd43e15c4df73bbc0702303f87bf94bdf304172574af77cec28f929349624a35b208a9c53fd9231c0f25493827c74d71e03bf39c5853b6931dcbfc0302047c435bb500673065023000d6d7cfc01ede196b6d7d1547018b3831fdd18207ca1f129ab29bf4c811722fba17c64056f659ef84f4610f1d2e58e3023100a4efd3b742ccbaa8ea052dda2f18efa408bce7f8c5230771a18430bb77de1ef2e9245d987bbf404179cf23651e49fc6d0302047c435bb50067306502305f38427b168a3cfc092a9cd0198a4f20a7ceb4e59d23fd21475dfbb2220c6c0c1a16543bf93036308a9918d46f418b8d023100e44b0b5e3554d3dd78bce5286acf3049a6503f3d578fa71410f1f80f2183ea5d50f691dc6758d6f223e79d150c8b4e6b0302047c435bb500683066023100d4c895d4d97f599ed3313f1f07034d901c1a1d7ce125a8c2964aac8d82e34c7f517be2e8ca2d82f5e24ab1fded92c6ec023100c9849cd78510aa652f94dbea3e5e0f9baf5d62a0922c7a9195e621bb0fbc0f71def13881c92ff089abf904a3b677c7530302047c435bb500683066023100f7b642d825e6a3b19d93c5b8d109454c20802f92ed558aefe23fedaceff4a65404f726d7954cd768c3dd3f48d95540fe023100c2f4ca2c52a4336f61494036811ba580faf626d3bfe04d07ffbd2ca5a8da89a788feb5473caec8677286cd79c6127f670302047c435bb50067306502306ecd421b60bd057264aac4e7222e5fd3d2613f1678ec5dba963c8db2bf7c10f83c2fd196d1a93bf61a3c7f8c4e67a5580231009d866308c56a80a9f49e3945691471c274161d37096069cb7ab50d3b6b0ec257ad530194e9dc378be9a8c8d5d849d74a0302047c435bb500683066023100ea5b1a983d6e1d19ba2c98812035abdaa69ba4d98e6c010c5fe49703279bdd7e34cbc5726eb560af36b38c520c88445b023100d96af6790c8d96176aa3c28ef065e6688503be5c01df7da2a7751b7d8b58f4d0c7e7fd5902ff33d4ebdf107949da0f520302047c435bb5006730650230567c8dcd696e0a3f6e6d04b4e51aab05809cbb289e738c132a0e80f25580e3363d3414441ba57158aeed46b5386aa835023100da3bbb4533dfe29c778b2e942d8b31e4d1b9e4fbedfb6c98827456a542818b8b4450476f86ffe2f02fb999ea9b6cbea60302047c435bb50067306502304866205c8863247a2878ca852646164261b4637cedbe2970e3a166ca2c45b77ac83a60471c4761b16a431754ff2a65cb02310097597e58efba7bf2af09f694b315999bdb890ac5a70bdd3ab63db49d386fc0b49abf8fd955c9a5ec3858f246033aab350302047c435bb5006630640230046ee4eef870dc069ba277ce10a19614a1a43978c944f63ea8d0aff3708c25f41c9b2ecc614704015b994e5a05b117d402304c4e5e6ee6fdb84132e4da33f2f9761c1525f78afb3d33d0c6b44f0012dd0ccb6885bca87fe8704e1fdf7d87b39c499e0302047c435bb500663064023074b86c0cfb9fd7ac24a4935d382a80a89fcefa23a2b6f036ce5d71046c798c020c4c0fcf5ddec65a5a74ddceef0c1973023046569d9edf6f541c96dd2aeb13312219510185d8f7c93976ada31a14c2e6c18ebb6e2926ab0974926bacd75a39c118c90302047c435bb50067306502301e85c39c7e76bbfd901712ee81addd57e64e2639508ee901d58a881a6a441195af1aca643333a7f86c2eca695e39c375023100e2ca8066e3c4c3225f25d84c3a19b68fdbc767672bb7423ca966623746cc8e3071320d7d5263505a3f67d7ca0399e2650302047c435bb500673065023100e62c254a3a88875a1c4b3169894ae5cc1b86b9e1903c1e9a7276dc825343aa773ee6a7153b9baa587538c27ca5eb3b1602302c424b529f6041b96a803105cbbd298708d936649a8291a7102d0eb211e1e48c77a12d908e66d3e6ed8ccb117a2d84d70302047c435bb500673065023100f0c389fc4f82a7e5852e6b6f2c6b145514c1a7aea21422a46197f696f7a608efecb1563fbabcbcd1e2005ccb2015680e023055fbd69f54e1bf504155fb4a0bcce03ef821f3fe417fd51a0956481f896a29be0d1b62cd8199840d601178f89784d27a0302047c435bb500683066023100fc7e9c9d61b68cee35e8fc2a32b776cc4d118ba772e3241165ac7de278d99aa6f56f8e3c9b2ee2ddbffa6fa1e0bfe046023100ec9d0e32577bcc1279a28b620acb2f9f83f695c44942f87d6cf4d5db14d81489cbf2b8ca1bddd3cf81ffeacac7f281fa0302047c435bb500673065023004db863fb67b3d3e72ef4562bbfdcfe45a32736a9bb9c5fe1358cc43db57a1464d41ca480ed0db7779bb0e9ff885fbeb023100c6bf908a782e2266259c574a064eaff616bd435ebb378eb12b1a8b93159952865359a68f6381e8a65ab43ce021d05cdc0302047c435bb500673065023100f6dae9dd8768d850984bb86f40342141bfdc0a5b82f9ded3afbec71f2e7fc3b91b0d703f20d67d545de09115118ecc6402304c8b8410cfa049e6b97b9232ec5229bc9287ffdf54e4e3c32740ab42d62c4e78bfa1d4c676b18775a05dfa6a7e28094a0302047c435bb500673065023076008a02d003cb8f655478e82f8677df9c196eb3c5d964a9958831f5355b7cce506f9259f8ea77b270add8286134e1db02310090ef143360c701dbab9da76b2c15459b38537eea16514023f9173223a8e1225e7ff43f77ef1917c6073829fb557017220302047c435bb500673065023100a96a7fe7a93211f355c03702b3bdb966d7b3aff455abe76f49c1bee194fed2bd9477042c7664adc1ef6f7afb282ece07023075a533c3d06e3cbbc4d11f3f818407e67ac6d8868900c356dcfcfb0cd386cc9405ce58849afc1e64c56532e334a2637e0302047c435bb500683066023100dbc4e01e9edf2471b442c88ceafd286f0a213e79e2fa7cb8980f186a66c1834a4e633ad02a1fe3b683bdb78f60b08f6902310085ab1e671782b9627d9dd40af0677f8aa1ed5cd6b267153c4f122acf70d1d70f84562927a4b2e49814319c30cfb7f24d0302047c435bb50066306402307d2ec7cd1ab554dc79f1e8b29c2b9de55dafa2b0304169da599e566ec4e9a568edde8cf958ed4736d4ac8dd01842d73602306fc46ac2eaae3e8c6d44abf9eed9074bab7d12274d394f33dfc5227dd683b546286b9d2f793601b3b16d8231f4164b800302047c435bb50067306502306a73a654aba71718d31d9608844391e7383b1e0b00820c78779712a55a41f0a45e7404e3e09416c5c6197cae81cd8178023100a8e28f3412ec375941673d5ef69f0e0ccc665e0d8b41a2f734f91d7ce0cb97f89652faed3af6615ec2c593768a8d13c40302047c435bb500673065023100bf49300848f78e4eba57d936db1a8d912b936e6bcf38e652cc912c51d13f5ab1af462ff149d941eb31ca38e4acc3aba802304d4fb1e010b26b12145f8be3b78b3634f16e330fa96f39e82dc552a4b7da6fbaaaae4d665c4764933b4faf2b13db2ef00302047c435bb500683066023100f18fb4c28b79cff4c62bf250d0c245da97e07278f2655e9cbaf6dba2f8e79cf473398def4d87ed1c0c26002de8c1792b023100b6ded80eb78a89a47b9137fb8c00cc7d8a7c9287cfa09fa7efd182a0f3ef9559418cb8e8d83a4d9f577601fc92662df30302047c435bb500663064023058c62788718800d7aa905b63d01ce84cf5251dad58c5afd7129092ec6496c42c7592d7174ded52c59b57fc5439a4d57002306a64d7bb990ca0c49141cdce56c3f48fd7fb3a7b1e7ccbab7d5ff76601d27d79a7113882629de9fc84a2eee590f4331b0302047c435bb50067306502307d113ba204324bff43efea342878e18f4e18bdd473df01ea9baa923ceb7c69fcda133055a55cbf19ae43b3d726fd2205023100e24d39f3393bd06f3027b6ef0a4397e918cfa0961c2d6b86685a1ff3429f1c0edba885ddb60edea83e6755876d8587070302047c435bb50066306402306a33b8058109c57390ee7e93a7ac6d84eec3c2b171a695d8e2041a024f27927065e1bfe272a12239e74aded7efca2021023048b10634cef2b7df720279f37bacc557c1afe8893d714a3d8c33f27902ff0808d1ea53b3cb5aefc121535e4f05bff1050302047c435bb500663064023032d0efbc96d7da00954e33aa5cc500516f0aeee9cd815bb482aba45be6b7411a906807c02e1102b252f68067569a0088023060294c62ba0a6a34e6f977f251316f7d5f46f5c3a5e0861e9cf3c0a1543bd87ca0e212eed65a38f7adb076d41c619b2e0302047c435bb50067306502310096e9d853bf3c76c70cf88f42d27df8f2686d6e1abef4353bbe0bddf5f2205c6a4624274f2a3cedb68bfcf9364feeebcf023028ed9d56532a4f6a25a0c22420d468848f5ec5b2433281bc5063b9aa172ae7ad1465f4ab94e92ead5d7c3db50f2ef45e0302047c435bb50066306402302fe8d84b00b39d035d46fa112ed9f7a832294c62e595a264cc02a752bb1e6abf9c0c81d5b035ca0f75fbff7396fc35ae0230084f31f231ace03fa89fe6b1ad4aba6d6a0ef2b42c98a7d85b9c901ef4580c296ead68c6757728ef8c63f55a29cb0ea20302047c435bb500663064023031eb161ab4c8ad02f80a46f989fb5c4772b84380ec6b9355a4cbef7fc48b50dfe4c1940efaa6cd2830ebcdee2f5209470230277b243ced51aed36c921342979b09bffe00aa29c4adb47206d267026e518526ab7ff84b484de4ca5962a3aabe5027050302047c435bb50067306502310085df748897cde894859c4a3085ca1bfc8f5088699e0b01dac18894d6ed3648b0f88b928bc097c653ae79f59b12400c78023025debc528ce95255473263fb3275e123dc2f5e3bf147c23788ebeed495249dd66416d64fc13cd083531be160e9ebad180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c0042e2c085d956ac8a162db010669f7c7eaa32ad0b2ed374310b07b7bc0e718d5997caf927497b4851aaf703ffb2ccf023100afb32965f5d2bb10918c921d7f1a15a4438b0d21cd47efb3ef749db2203a67bc2c95a86f5d26afe7fc0a27345d84812a0302047c435bb500683066023100b557eeade822230319d4a62ad265be171d4ecc16f2d862619d513ac100d571e7ac0b21b51ebfb9b47e28d708253a5822023100f723a0488beaaea89e84561b5af851856ac00c649fd44d584763652e4fdad613d4f6cfd5053f24b34268d934f0e888f00302047c435bb5006730650231008694c67c3941bbb2185b76656363edb1d6200d5095210e0df0f7b656886cecff6280ddc9050081866ff1e1732fcdb9c30230638d253cf44e088c93c1d17bde26fcd73a7fe40e2744de11a9e2de64e245c7ac29dc344729f00cf5e7ac228f28e6f3600302047c435bb500673065023049bcda10b7702cb9ac0ad592b69bcaec64389e85db931b6bb5ae24ea5b6eff5fd327932735f0a589bddf9d6af55af854023100b36e24df1edc82a467451bfc9d00d1977db078edc98cbb01f6ac369d339b8e013cb0e8462d1bbd9c698a9cdea6ce52ce0302047c435bb500673065023100b45aefa828c8d80afe2c340727b8f928f52b9f11e4008c640e53a716630bdc0b02ef0f34daafe274dcaa3bd14cbb688a02302617f4ed410b72e6c7d2723b0b657671a26bf645c1965084f695cd03359721e686c29e7da1127f21cb61dfdf343cdd0a0302047c435bb50067306502302b3deea8f4af19c821c8102cc8d298cd285ce8435aa68b031f137643e490c015cd1231c425a6b038dfbac1e2d15900e7023100afd141d8f682848d9603aa88025cbe3a3c9a4e8c47d8045dedbfb18b895ef95cbe51960722d69c282b9f2372bed779c30302047c435bb500673065023001c813732a493ebe86550b0fd81574e5641acb59c5a53d8ec5f87fafb585ac07c0e9083dca5eccbf5ee2cce7f930ec65023100ce5f715b71df51052fbe5341c1321e7176cfd9479f5dcf45939ae4c383a114503c67df9b943445676fa7e811a8b7a99c0302047c435bb500673065023100ecba3d8b359caa8da6b9ffaf189cbefb64b61eb007a99f3cce6ffe294743db9f768bfb1af57408b6c2edc6645bdccc440230488c50adda163564d574a55d98d67cea17b7b5bae2899148e0ee49e9a882209c06471d905cfc2b13834213b173cd60180302047c435bb5006630640230549f779cd428b04b2355371b301a2da3a67bb21e5f7ec52599e86eaad0864780af9dad70b998d7b61d580a7f052f1de702302e710a330082d3f9182350ee26eec72daffe04dc39882f6d21cec066c858662e3f58afb5ac40b4b1dcb91f39448926980302047c435bb500673065023100b7614371084288237a3cb8f87f4f0f75a9556d76c07cb0f21cc9f816c8923b668b4201961c2b05d88daa260f87bfc9c8023032e3fe57ee19722c3e16ff1b86226503c46afcaccb753a9f1a4b92f8628b8bd2444cd235661141e2e9ca662e6418c94a0302047c435bb5006830660231009c87ec0a8099c530fee201057bcf732114d74306748d680d887eedd9c20776f369ea64b3672108bce7a90abebf8c0c230231008a7c42b2eecfdae01b03ef688084bc1c765dd0dd668698535ac1f5f26502b691046aa3a818458ca3c45d383725de799d0302047c435bb500683066023100d5412adba680738ee11332f74c293992bb672db7eff8509e8af18ca978cb1bf8c0199311255f88a1c879de3871787fe3023100ea6c951b7fc07552f038867192ebd0e5239262b627c36e502d3dca738cf9b783775c4afe85b6bd886a34064de87804870302047c435bb500683066023100ee1289edba27cac290d380bae778fb4e9b883adab37621c532fae80d993a795b875a40277dcb38dfe3a24c7adbdd3f32023100b22c34d5887d3a807cb95476626d090b4a647c8aa8c9658f1bd0a165542fde9f3530bdaeadd5d680e221da2c929f4b9f0302047c435bb5006730650230753b7591d922afd55757e158dba80dfa36b939e040a4fbab6879ef7dbf398cf77d474a969e90f2d6edf5a12ff9f91dd00231008b12f35340802ee531c676cad34bea1c702ab5fd847bc6af725736c9e96cdc7de50d21909bbff1585f5225f04621574d0302047c435bb500683066023100a4493370596f0257bbe0df1777cc3071d6205fd3ddf1a3e59ede155ee14071900e643110945791c9e0d225bef9f2cda4023100a6bbb39b3de80c0c2ed78c6a9ec51904f46a3df81a118057c76830fb05e7a412b824c0ddd66ba82592a36a02cac2f1900302047c435bb500673065023100eed08caea75078a528fd2b027ae79c82d8637f6d4c41a4a447eaf1e33f85f79f2b74740640e196924e491f301f3638c302306b012fdeb9ecfff4d2b39ff287069eb196ef7a16e6d819c0a9075d4607c105847996d92bcbe2ca3bc293fffcd3a1f3ee0302047c435bb500683066023100c780429bc4638e389be04eb764e789575ba0daf4d4a8d431e0c6021ffb6e5f202c756a0cf773978ecfc2ae4407421e0e023100b610be06119c94c87c1a30f9de047a3fa377b31fee5388bc6a54c98b0cf13097133b7c4aeb9771208826b0355a59c96d0302047c435bb50066306402300ffca2b4aae11adc1a2fd4fb18eabed205ae3dca3edd9f21934189034b862cbaa981d3ee61c1e2b3d84e8a4a74f96a2602305a61ce2487592a6a9d722b9dd6357e5baef2ef428f099c82e8b17bfc6b59662c1efa4235044531c8706f667b80aa53170302047c435bb500663064023075aad59d29ef846709607e39a0ca8995436b863a6c7d34a25819fea652acec7d4f58be03c8c4990f25dff1b54028969d02300749e7f71cead96b7e75e2693661d5cb6f8fa00646068f433009ff807ddbf98894a2045a7784bcb16c6cda1b895879a90302047c435bb500673065023009d2633ac18537044e9053721e8df9eb791eebcd61a0610fb5f6d6601d3a444d52fc96bd8659cff56599ce9e7b54daf8023100fec1f18521bcbf9c1b7c26e8f678da44410bdad52ae2a8e2deafbdf6050e9a9e59c12660f999d4b225cbfe290af535540302047c435bb50066306402301fc7eba16f2fe8d50bf30a95f64a90472b45732ddb41aff8c41c6c1664a044bf0fbec1b84799365fbaad1b8f81a1fed50230386cde0ff98663ce4db93452d22e6f5ae60ff3784a027e2e3bed9ff3fc672f67bfa805dbfce97036a619296f8149cc6b0302047c435bb5006830660231008e0eb73849fb70be5005714569ad6aadd0bbe671330131965da1b47aeb4186f75b49be86d15b1b73d1e2e975e0bb0855023100865e3aba8fcea878ba6a44c4f2e59e80a6ae921c8fb69007338de2553f91344dc5dc2b5876c108538d46c4c6b52709800302047c435bb500673065023100c99c3f8c33ad4443d50c1be0c720f7bb426b933f5287a7fb0d18531987a4ca770796d6e6cca5c5b611c22d60a0a35215023021544300d2f5a018eac49dced52c3632458deaef15057edd928e937b261a3eb1f1a48fb5a16ff2e093b824765cf433650302047c435bb5006630640230785d0b5b51238683e8e5486b3416caf41b8caf7c58fb81cace57b48447b39f181f1bbb7961fd3468ec2b61a33218590b02301acd63e09083cf403abfc11da1694301460f601c03f03963ae9c78564b2aad59481964adbf80ac59ef7b5df4a6b016890302047c435bb500663064023037bf8eeb3a9d1a711d1801747d9f76c1218f0ef5fd59a020073b7565e3dd2761e2636bade1aa042bef7efb44bddbd7830230171fa68347fe7375fd885bbe49e47e121487012e2d0a248de95cec534ce9d58d5d369922e402742919ea7d26397255410302047c435bb500683066023100bab4f432e130ac893b9dc769a846255e4d997743ddab85861bd82ea82e3f4e46dc0d52f1c6d83328e02c7bab7a98a8c302310080badcaabad5b8715f6e2a644903b0c5cb3b021c8bfe6ce77492310114ce7d6e2f09eaa0f6245db795d84257deed68620302047c435bb500683066023100803c43dffb7874240a3439179456ec7cb382daec21db3d90f8441161f0dbb76ddb43e418cda6795083a463b5fc7c1661023100cc3c0d11fa9584c3ea8d3381fe1fc4f2a9ee5e6c7524554e15f5f69575a9153eef6c274a7ab00a1466964a1886233e630302047c435bb50067306502304c2a2cbb67884c018db2933f29ac447430d4a798670072234dcba598d4a98cac77aaaa7f153f36abf8ce97c87e7c7d70023100da12b863ef4d283598b1225b38ccaf848c7799b9acdc3fd48b32dcc4711774ad880f5bacce504196690b44989ec79d150302047c435bb500673065023100e0d74ae397c6fb128e013d7298e5e33430d9d9320229ab71b53a5bc0d0d9ec90092ccd2702665806ac735180b8ddd6550230325dcaee99c8ffaaaa593517aa821c9f4cce24ff564a43536704162ec6eb694f0fa06621468c56266390b013618d73b90302047c435bb500673065023029162297f5db463e45170f8371d8869e286f9a894dfcce1a2b9856078fb46a7c8aa5a174c5915c7079d4cd98a91379c9023100fc5841e0218a73d68fda484c6ae7881638c9b425844565e781fc12d9e320459868484f9470379db907346e5c5bf441820302047c435bb500673065023100b35d193a85505e99158409d415778136ab97c96c405ed244f18f775931a58f3f82fc584a6e0131ad2a520296ef0198fb023009cd962c9e011fa416642880696e9c6ef17cc18e5beebafe472546cc6976c49f39e868f0ec7b40decc96bcc90754de9e0302047c435bb500663064023066742a67f78c5e3cbee7255b2aba2c8c6cb39f7f3c6242bcc7b191f4b020666542e329ebd1853e50de76d0f6bd3ea40302301578d21d36a6a93630a64496eadd28bfc9eb113317f5e55265886bf025b66c1ce75684b7275bc937ca487041f3bac2c20302047c435bb500683066023100b3966cbc716c6594be45ed5ca2e655e07008a218b71cadcf6bb2f4376d661cae922c242c3a83beddba688f477e3115a3023100bfbc4c2ef5b95d754ab61895c62b1fda90b0c8fb632086a9c3880f05a4514d4dcc71657860d09bdbfeeff09a4761b07c0302047c435bb500673065023100aa6b4e1f0b204c55ec90d80875ad3e37dfb7e8d1218186f905752e822ed23ed3f1fa812d6bb3d0500fffe98cbb2f24b5023066ad25b9a0710d4e6b8d71c98f7dc4019242ae3bf8370a8603b57f1ff13fc04afe8eb2f7895767c32da555aba4ad91eb0302047c435bb50067306502305994c73695a46bbf84e3c2f7aee319094e2df9cb695a92ac86ddb1e774b4643350bd2f21c944b3ec71418214d4f7cd590231008dd0fd8f9f122ce1f87629066f6a862e3524c9b8578177ae886eaf4a8539bddad777bbd4c9f59f1ec8ffff69b339c4780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230683178b9eeabe75b5071076d1d155775a2a6df14befeafdb02defbb4861623b88e2f96526f1bed2b1a2d0e9a5b790ddf023100b72acb2c49308d27c1b125e45a6765a1751262631d0969790e114ff4c77c9cf5507e2d7a1ec18c97db8e7c13295aff130302047c435bb50067306502305a6f58b80fb04f204efecc519fcf50589aa3d235a9430c456c0700ba1e8167dbead23a5ec903f094cf022ccd43fac7a502310082af5daefbf503c6dea9537f060d3fed7fae2c617c327fa76503ca1b0deb607af101fd96c135e3471b04acf47cfc56270302047c435bb50068306602310091237e246aebb602432c832f6f06df2392269eb8bfabee9ecea663e16ea7b0375777de47e074acf4d1dc57b7cd8f276d023100aa241dcf53fec3a62c972e22931d038f5116274c09328fd8db4b88ccd1b02bd722ba377d6653d6b8b5713b310007aa050302047c435bb50067306502306a0ae8b66b4ebd3dac94c4701d3a4c028caf51be482a8c2f5b1ce6476595b266282da5a2f7d78a1d8f7120e9597c01350231008c2fdd9e8164727120510c78f7dec75daa2578885c1fe791941b2c4225a6279bcf01e5b6a8729915229b809c7a03cb450302047c435bb50067306502310084020cd049a69dfc0ebece5814be38af2c9b59be53dfe61b7f84f60e689f2b51cc382311d5482209851550379c32636d02300cc162722e3125dbfce802220cb872a7db919db6339d6b9b7b742f2c9b940a45ffc2bf172dc5e2868bee76193520a2b30302047c435bb50066306402306742e3a1362906e7ae93edb3077ae67cfccf2f0fbc82540118219396f5332355ac5e2a62244580b4d676f09e558c94de02305570a2d41def5f85d1b2d2dbb28386796885d196a22a542e040d64a7306f73b9e79b5178132b6997f56ab1488d0f4b5a0302047c435bb50066306402303611fd390baa40237b8abcc9cc3582538ca36b4ffb5f987fc71f4535df14321c74bc1eaf73f28c515dc8f25be00e79f60230215991f661154a12d84f25742618abaeecc86dacc0b754466534ee10cefcb03b0758f61b0e4702ccef4fe8e552da4f780302047c435bb50067306502304767026039da3c67090d3bc5e9958226da010f348d98a3d5248a449470d3db345f0756d1bb4ea542ac1f38d8bd07bd30023100fa9b883a5bf1242510b40a11228f0f9ceb36d929281aeb3262e2fe93e14dadf97ec140cd065078cfb7442fb6852f09fa0302047c435bb500683066023100e6e4e11200bea14388baa6c05f07659a8411172c87f42c62c29951b7941574e79ab95613677829ddd18694b37352f18a0231009f6b48d8e588b67283664144a5affbde4bc9f4a43845d06e47f4c33fdb864fc46d075787ac00c973c4c8027ed49bb0e10302047c435bb500673065023100b4efaa0256a8bd7ee5db0e55ba42c58e74144d6ce88813ec9ab8f67e59acd48bd3e2b7d98296254d8dc43be980d1abce02307b89a4080d4950a30ea3f61d3a844a143d3a2ad8d37b861480752b9c7444e811757279c51e02e4ae340d07bd889637f50302047c435bb5006830660231008be6e7348d6a759abe9d250bd9e1e320ec89a164486c996e77cc9894229ee2d228d0ea6db66f980c81a1bf6942c1ee1f0231009bd6a2b665366032273fcb9952b649e34101e69e2ad47536fd9033af4e12b31337d6d9d2dec3206e53dbc2303f7428760302047c435bb50067306502306ed75d99eb5cc1f1a3998408e7e61e20cee21313202debcbacbd66fc7ec24145d523f6472b768700dd82fd79f6f9e9fa0231008afc22fd5df6e083b73e433e7034783d9ab555f7234b715a3ab09015de1d7513d721302cedc5439befee9c7d1bcfaed80302047c435bb50067306502303064cef69d22dcfa6c0d4e5f3c639bfe502140686b995b4bdacf40e6e7aa102b4e8bed6965b14faec66f2274592ebf12023100b68edbd984767c0404210710eeae3ba73002768129dc7118f52a807a35e7194b1257e118fa6eee2a0e0d764db58492100302047c435bb500683066023100a67653a3f2ae1ef8dc45524ea208f4f891e7b7ebea6dc32e728e3365a8a0a94c24de94cf15c818bdf750f891a1a872bd023100d53703ee762631f8fca50446058c93f24c5ceb852a268d47df77919e41d76cbed93a9fe3bd9b9cc93c5a85f350e4e2d20302047c435bb50067306502307195c9d3982f661b9465b0ac44c48eb19ace456efa7f7077749a2adec8643fef32f491203b8895df33737a4b7ffcf17d023100befb0ed8e9abe9960e752cb6d328357e990ba72e9b4f5d93c2ce125c0a0196ec64c19684c89c088a4ad13a6bfb2def390302047c435bb500673065023100faccb2bce93140e6254b32882761eea94e54f06f8bc2fafa07f5d3965ad21a8db6d4daa0678a5307e752a8fe5c25eda0023071a15053324a654ca494adaff5043811082398cdef402ae7c4428dc6494a1ffb70448830f50143de6b71af95cf8ccd7f0302047c435bb50067306502307c55045fe7caf7c2e0e2657df9f53ef6c3f6e0744476e90a585be0242fca6c1defafc0064668bfde6e5fb293595e71a6023100e8fa392464513f6f54cd87abe2194ae891d1605cd58890ded86b7fb893e0404bb121102dfa652746f33c257d350b05f90302047c435bb500663064023057848f52dde86e707054cf6d5fadc770a5b51d3ef000474623dd2b44c84b7bb58a92e525a99eda7ba2f34f03dac9611f023006f7904261d53276549a6e38917b35af1945d6a65cbc81f23ee4023cf2314f9d26f48b9cd266c8735c8fc83c7fb3153e0302047c435bb500673065023008cb6501d6c2fc32e0997601f83e0c468a9cdece43d69de034d1d2d46d4919a9edb3c12f2793f8126d49209f56e3ec230231009e476cfbc06aa04c00c35136386d3389edd5e4af36b916331e730a6d2abf81dcbffb3171838946823d8dfb8861901e670302047c435bb5006630640230422aa256b64012e45be2c39436e861546994a45adecf89b48e4ab0927ea70a3efaf31bdb2ed7284f53b8fa93396c649e02306f678fbf41d4616f44f526f3194efb74f605e2a952000af8de89e90635ce1900d3ace5c12280254950f50f0751a806e70302047c435bb50067306502300ec5c97645008f67c4b6b90fc2ef88d30f164eb9149115c099d1b9ad2885c8901aab658b2969d839c968561b7fe504f20231008a40bc20418368decb9b96ae05e64668cebbee97eeccb0d94c74695cfb73ea106749614555a88ed7f589739579ec14f70302047c435bb5006630640230174b0e4934ed076436ec3dff3bef894c5833105d6f81cb24bf6ff2798c199bf736c65ef706a3532f9f489690d77733e5023077da6af4a98309f1a7d3c42215902ce45fc7512806cb6967b9ef5abd8c5addd7a1a9987e290c94955e8776593c81cd6a0302047c435bb5006630640230013e6c4c7cad560da8575cb6c770b0c10ede34b7125bab9cfc62ece38ca81fcdccfbef08052bd473bc7d02932e2f9c83023045b205eb21723ebd45f1c031b2e064da715d18e2df367fd03330869d9fc2b7dc4915d3d58cbbdb8068a476be9c0c3e260302047c435bb500683066023100cef5be904928b2857e2217045b9d70c985474fa618f8ca2eb5181b0d192a61da7cd173615cadb07586375571a90dcba6023100d578b43d618a5849caa49c55c681efebcca1eb66bb50c35f5553142135d6d49a2d54e739e29c38b0fecdf660e13336490302047c435bb50066306402303ccb21e5ec6298aa698cde77c45091526790a58011fe99342c37423bdfc9f33cb4197fecf35937c674687f44d9b1fc590230697c9689b4e48d1d5ac8da85a0e40a194b83ec1fb9f98edca8e5a9f2a2289f81704b6077a749b67ee9429fbc6ce653a00302047c435bb500673065023013041ecb1911f7f12a2eab10d9259733a5462bc32a5dc57318bda0f07ea805d6734c09be1b61a65b2f5923ac902af8df023100801291fe127ae742285b1b7fb124d4996bc1b05356d7557fd133286674c95de01cbbe7f032cbd02f4a129bf4045d42450302047c435bb5006730650231009c8100c4de912f5f2e1040b26d47f8637f862682d298707f7365651d569360637f9e09992c4f70b1f8b3efbfefdc1f0702306e5c0d3ba29baa0576d7fb7d9fa342764f86d2319f3f9ea881460fe03bfaa062192daf9bc0ac00256de828c8611ca1f50302047c435bb50067306502305c0eb827167b3cfba9cbefa87ec351ea06b0f0101068bc52f4dea30cafbd7d5a8a5521f7a12c88abfd626f9998bf1b3402310085094391746fdb1f27cd69f378c860f08a07b5329300ae68e303536038c097997a4694653bfd2e7a03ac4e812ead38ab0302047c435bb500683066023100cdb2373938030339bc1cf81a4391e3f0762d8532b47d7beca832f630df0cfaefc0bc32653012b7e62293c4dcf2549fca023100cc3643a7bc02991a96faf99a103153acf50fca16f49fee2fe7da14d95a0da830b3231ad0f4c0503cb3ae0e3e852becaa0302047c435bb500683066023100cafed1c943fd8c8f9929ef577d7630ffdfc3349f1954cabb5eece9c451c1c3e43ce6bea81d361e10cbbbd48d42a779f8023100af9dfdadec96fbd09825793c6a04e40698c4696325b738fe75d2b61d7dac6cca7c880c52f1e70c5d675cc4bbcc27a2f80302047c435bb5006830660231008ec9b0d78a566f4541a0c3c472faddb493a1d3c93b3e5302d6ad1abe8a9d7b1d323bdb05e198b0a9f1ed3de405d541ca023100cb154dda1ba21c213680dc069039e303fe61d871d02cbdc8be7a0cb1ced33ce93eb086a0211fee6687d85cd9936bedb30302047c435bb500683066023100903957aa1806acb4de298fa0140d6fe8e2d69963fb3e192473a3c385684bc5147d16a23ee948106ee2f868bba6f5fd0a023100c13721d28966be16759e7e9ff74b02efef52c6e1eabd19b7ca705d1c7cc2b210d87857a24278eae9b37f44ef0245f9dc0302047c435bb50066306402304e4dc4b7c524529c888bf11d8b4bd35e406af9b11acf19c4bd17e07e4705b04aac34d615d606c1731be8904f15df910e02302c2ec7555ef92c1da93f1179188ae22fb5a169e8802a39792596d8514b3516f72eb73a3f5a9cbd2d690a142c72da53be0302047c435bb500673065023100ec52e30e18c8523ae92b8ed4b940324e712826b1dc504228a0863038880844c8a3b8426c69c77ae31111ebbacaaf2b81023063eb38bd2565bc11a8764a8f8dfcce8b7aa97d32fc9da8003997820c44f1fd3bd20450371f64a2b1d3fb3318f9b09d280302047c435bb500683066023100c45028b973a01abb09234cbb218eee59750ac6b7adeda193d9e1043e8708dce5b39d53a4797504b4a5ba155673602093023100a7af4663a26b8c2b53ee77632e2cec5278edd38c0a42785c719255841d5f789ad4ebd7ddb0bbb096d7b7476efc3a95520302047c435bb500673065023100aca3472f3c8e84a07d4704ecfad97fd33960c417f1a0331629825869d059fb2d4fae2411dfbd137d27c49ee04d54931e0230290b27ab2bc2a07cbdb53a3b5efba03a0a5da53052cc95f37ccc6b01f80e658f6fc3cdfe361f724f321a18dc8567e1dd0302047c435bb50067306502300aaad17afa5e8df15d0e549bc3b9db2a1df16f578dc85578e1ccf938401fc91e7798c10e6fdefb33ca97363a83732f47023100a94b9ed913c9c77107f4c273a0dd33cc3c10660ee4bc7d0d1bae06eac9f1e0d8e21cc85da0701ace354e190a74886f4b0302047c435bb5006730650230412899f42de932925d76895184d60f4bbaff95766a48b89358b5f896c5a310930dce48e581775d2839a4c4a1b8d496bd0231009458d5316626c17d7bc14e8741d455ea3e26f7763284e630c7bbecad108cc03a0eeb21eab2c5dccfb5c94c3906b375e70302047c435bb500673065023100a6f9298929ed9aa30f048fde7c44b1b28bda6f257d7ff76abe3584e103ac4879b7c8d4a4c667eec98922fbf93139b2c90230514784dfd72c93850bee5857f78e813f1e0890e7188fc40a8e344d973dbae553c21b733fe1f1fbf05e9191c6cfcdea4b0302047c435bb500673065023100aa993151d8bd869775b9f9772dc0ae0c5dd376d454cb7036890223fbe30cdba8133e0532dad6a6f7122119fb7fd0ece30230423a5a5627a040806421c349f4c028cc846d5d3f8046d090c9e8e4e36b440829d475bec99bdce4603ba52f3bb06a694f0302047c435bb5006730650231009f08dc0434edcac9099f3b8629d6ccde6ba357fbbac9ddf306b6d8e617c999f8c6a5f1404142ffafb9b0f6bea88631d902306eccf46b553b618870cfb264cf6ffb01ae2eed12b93038efd48fc09af76c8e4c2774eeb7ef9939de1e14b178315a74ad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301e3b552cf1a92e6fae1b2bc3be4a3b614d0b6ff234e5955714722e69aa7bcb0d7110ce61edd5b502fdf90839f79e896e023047142903e4b7e5948bf86688b095e0fd8eea0223b3c72c9089c5efc1b34125df1145673df3819ca0fb4f1b7b788125600302047c435bb500683066023100db05fa4d494d6e6972db1b31bc5d946a8e070097b16842bd884cdadba415a023fa9cd89b5e413981005763402a9d6cac023100b1bb0ce8864dd7198a66f2e44ed2cd4fc734f9947ceed747abb63d3198b04efd09399d115d3a58ef290fb218319430690302047c435bb500673065023012d391e241cd5470a2acf76e91c9bb20475a22d7b6d4617de065110b498a581d96e8801ae30408b0754410a0a3c4f29302310095d45fbc431b42322e615ad16f9582ad8167edbed07e312e80ae7407afa52cece479708c007a05e999109bf6103cf8dc0302047c435bb500683066023100e794a77d080dfa22f55f52e715679f3975e9895327be712dc3ca152856299e886d7ce4402acd780d47a6360baea76e3b023100b9b565954a91da9021f96d5cb377159391c1da94df39165eec63f770899b903dacb3984b965de5dd3397061341a2f8e60302047c435bb5006730650230733f5c26b188d697046fa351818634589500d401ea695b7093d6c47602a5517b07b3f01241cf16ec7f839c0c5da93c62023100cc3e84fa9bc99a50a850521cf6592c66ac4bc3a84e5bf723e5110c2127756d6242d4728b215cdbbcbe4e2c9d56512fef0302047c435bb50067306502307737962207bf7f65e3176ce8c2716b1ae274874e1044db4b4847d0e763ca8591b042d0e71054dcc7534509b51d5afb0a0231009a67b4a2663379469e17ab2ffc65225a63b39386177df4687ee0a861b657007148e493e5754031ea42471823fbb7cd600302047c435bb5006730650231008df4c14aef6f0d14480dfdbd3573d6d06b67f0291d41b6b5421f7c8a740083cfdb6e09f8cda08adcec5aa051be69a1d50230268b35614d8d282a453603955ba593bccfa575076580a80f77eb92903b9a362c23dfe558dd8bb66216829a31e1a47f150302047c435bb500683066023100bcd92d4bc4d3bcdc53e0c7d9d8e5a14510e86edfb2f9f446df3d9445653c377480993f844aa73beb5a7798099170ebb3023100eb88b8867ffe937e09795809845261624d09146cda757db6c08bac54452bc64e400a2e04e925c5754931b6018cfcc1730302047c435bb500673065023100db363a0d21f0a7c75a3e56254cf0d03170a9a4e61a8bbbf15a91844a626e975a705907090f5a1a982e02d960ed0b652a02301b455514095074916844b0dac2e63dda9e1fabb450ef4f03f8ebd2d5f040fbb101ec16e1d3c6d08dbb89d478922c9f060302047c435bb5006730650231009c3d2924a8f783cff7d0a9c9e1bda16419c43ac8d63ddb48d51bf0a099e0ebe4c602cb1a7ee72a03851b56a56dea1c03023013a5230421e02e220fdefe3c87e763488a1ca8ed945470fc96ac7c99e4b88713442a5b0162b120b600795367939432800302047c435bb50066306402306cdd0d6b5c0ff556a6bdeb2fcd388b9e8756a8194676b237404a9a1de3276601a4a07ca3817451e1e7112b87a3392733023002b6d022ca0d518a67cbd71e80bf29892403994e6bf1878c855309a8fc479ae0252fc32d5bbd1d08813210389f0e2b190302047c435bb50066306402302f608496d56217ff43a7c329d0c1d7fb4b6de913c6eabef18832cc1e34018bd5d24d8ec9f09ce98857d3585bb26aed3a02301518ab10dc1c3ae8e96e73923536b10fa0f7f1bd4295e45ef17700bc561e9ba0de6a6b3d41b0bd5145f7b6aff8f93bbe0302047c435bb5006730650230568bbe68684c3f28ca48df9bb6a29d02df49de43236c09238591c7f22b6af9be5ea34b6e36e780db7e77d792c4c50ee2023100b78712b8a01040547fa7c4dd2e3bd00e8239bc67aa3276a64e90ad02a353cb92792de4e1f6519aeb80879005b21497870302047c435bb50067306502304f3099dcc4462df66deaee2b3edc5c13cd6d58b80372d19ca5980fe6c6e4a4dc2c5c9bdbf09a5a59a8393532d4e22a65023100b58288c984af25c7de7228d310875276cb437fcc42963b239e37035e0529aadc16e0b7ebd788c07937099c377f3c9e780302047c435bb50066306402302ed60e3e11b1faa1eac121a85d0f5f330609913731a70e6e3f71ba54e0858f263cbeff9cbaf8511f33871211251ba2d7023051c95b8022bf55f8f2328bdd74be0bfb8541db0147635816fe1c8870db96ba13ae5eaf3c58d644698c0beb37f5195e170302047c435bb5006730650230750483dd226d278c8437b35e53cf44c1b2fdd168e6509ebcd1d2d585f3996e4e0b5c9bb54165d3308c62fe496229a6f1023100a99558640786ba9024eb167842f9cedf4bba41e6367ec3e765c876c821e43b46a8d6f148ec7d2d268e41e49c989a63120302047c435bb500673065023100cf8b18e984694c45034e3cece1c9878733a65266956ddd6d47ed7e0b78627c9948f155b2d08c41014e56f69f5065b41302301f8b225ced946fde2df90f61ad2eb69fb24676704056117afa06a6e676f199ef45d7e983ab099d4eadc0e641293e72cd0302047c435bb50066306402301670a083eeb0933389f0a8623d998ab98f98a4bc60b490e0a8bca296dd0c24ecedebe7b35802c255cd7b56ed5756dc3502301a1e21682f63800e5309aa935bd9d2e9129a76851d8190323033b990ed91ae1dabe1faeb424ff8f503f14da9726d3fa30302047c435bb50068306602310087d5eaceb21646058fc308b287615f769d28f5b53cbe61cedd8adf6efd19526be2f208ed6b529c8e66e38c6ed4d16937023100e675497150359d3abdd9caa4ec1f69a6d9b1f21fba8ad94e7ec6bc5a40601d877115ec26cd684b4cb179bba49d3823ba0302047c435bb500663064023014e4a612466dbe3d0e8f4b5650e67e146683a90db81a605501e547dd3803cfa7d46a64d4d1a59a1eee869b1c0a99ebe102304a189de8449e2689e04c6e24434bd5b39f7357b95cda7c181d77be069f9c8d3a7ef99ff0bccecc05a64e2cfd2b137af00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100de425f1429eb866100d6f00f0d78ec806bea32b04b8411562464a520aa4f37fc0bca57c33a519784dfe983c713dc47a402310091d372470e90986b7eac4da903224f1d67d2315e324f49c98f95ac7119257237521b7264c2ea1146041935b7956d3ed40302047c435bb50067306502303768016ae8f53aad5d42e98f6e459bb41dd87810615d30386dc07a88cbd0e413b380c1d8a54dc1e743bf588b3b062412023100d10c1533084165811077529a21632016a87456c879a40c959d522219c782a4bfc59469a06bfd5a4f5495ca6b3062275f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300d5c664915eba49fd97830f4a76bfdeeb6d472dbde216a631070089d80ac6b5cf7defd4880283fc9c689495797838617023012a94cd3d9b0c607625c7d51668e8d6245937d293db99c10808c22dd26f550a3b8d2efc6a9b8f9278f4e7708fbbada290302047c435bb50066306402303298dca97c141bff7a61ca91b2bb384e3c962541190a08f8f86fd7b030ca32e5dd6a2d8136bec6ef9d40d5939cf965280230021617afa61720ba51014747a0f7f89002aea890f782fa011ad3d72b1e1c65944e0f4a4cdfe795d0acedadaf0bd5ac790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230065ec4d6e542a75b115d4ea5c08ab0d88b8a14a1cabccc6563819a3fc9b020b2ef25a49b592cebeb07843f65f330e2c5023100ab086d0633edb257008ce4c31115f2ece1a4470fb9f467e2d63ff982c77f766f0fc2dc7dc8fb93271829542140a189e40302047c435bb500683066023100ad088de9d6e51b311f8411c6c0b3350540c184125d369c69cdf72733e80c5a1f02b3b85659b154a42bd574c86ced839b023100900c8c6673e7d7acf04768656419a0877508f1117e58575c4a527e36a0d9dee4b54287082cef38c03c2c91fefbac274f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100984f5d5988684faf4731f334757f17f47212ade0d48225c56f81a78a84a5ec42ca4b6051e70af73228d6baf9d278cc09023100daf62843d79da31e60de9edff8bb10bd989a45d260942aef043faa574a139d91b0f30d4aedb9924de42bc8022febc7260302047c435bb5006730650230774207465fc28826fb15fc7e4796bd8910581036bec7ebab5b673c91fca73513d44b4a67741cf114c2b45d07c8038bfc023100ade88d3151bc12e0209e1442f43c2e4c37f73797570977408871ac82c592edd3d2f40146162783fff563023faee1f9a30302047c435bb50066306402302d40e387efc506a6b9bd3b108b22911c7d9d6f84b9d5f89870ed8eea1ff2b77200e0de68e4e997320ed36321b101bc5e02307666715b45f7330e6463f1114dfc5fc4744c0abf067804e1d4b8d6a740fb74237714aaaefd6e2aa0a1c7b1081e99ef6c0302047c435bb500673065023071130edbaf3090284a4f6559d2254e112b94cd71e56ef96c431adb99cc4f7e7dd5f056bf9c9c7868d1589fc86f48cbfb023100a2713a7d18da76f7601e7c0be4cebcca89b9982cb24e8a60c9766440d3d41369a9a2dd8a98392cf8c5b7f7296b7928510302047c435bb500673065023100e9d2fd5c34e4aed6b9f19d025aaa5cfb4f6effffd3f35956d6bc9643e0af4802a60e37096e70636d5c4082ae53b520ad0230505be45517c4a7990a9eec66503419abb82a5faafba230c1b5032a55f6b2c662b4d37ab8df0e39b99e75e533781ed1130302047c435bb50066306402303715eedb608234f5d23de1a29a9f30463eaeea62e3a58faf820915437009f10be8d58e28056b74e7dcde35f156ee24e302302d7cd137573be53fda7435f3ce8ba495f75f86a58a0adaa910a974a04ee99388d8091a79100de6ad4751d0dee1c2cb970302047c435bb500683066023100a5c3945ee74f137a45e58d4f0490bd45979b782212c6188bca34c071fbcf3bf4cbfb7899b373e4b6edc4c4da07a995a9023100ee677d5c7bcf482ec0843734c417af26cb85cfed416c1792559dfd860dfb36bea7528f19d9fe713f8a2ce462e2e6970a0302047c435bb500673065023100d641ad544cdb9aea64be8ba6c5ec40fd701aa0d2da826a0dbee4a4ff8f56b0e431b50bcdc7328ad5fcf1f1d13111d5dc0230730ac7f0e50eb34b39cfa72a15ca74a454f3444b92d6c3940d276d6ab064817e55b1b7d41ca4095f541ec54df6f24fb60302047c435bb5006830660231009f8e35bbcee3c53c39c4b9cffde046eeb4f64b6b6eef16942ab649ef2b2b0caeec7bf358e8f4701f9702edbfa3391b55023100c987c136af8829796caaae22ed586300924b65b907411ec83f4921067d75fb0673baf2baf942c9cba5865d3a031b9bf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008623a4af16bd9102c694d853d6b219a336c4beadc41940841f9d4dbdffa3074b302669dddad444a0e8210d2bf46246f302303a6914abc32c288d377be827259da75a4859dd16a0a36f661a126a03bd5fbd8f4cfceafdb605983796a9e2a7e948483e0302047c435bb5006730650231009c4d4f069dc65651b1c4af5f6a881a85f13a6bba43a92f05ecaa237f777c96b9c80a5d824e3f2ffd57806fb51e7f1c3f02302eb0a82dc283224d77f41f417ff0f8f7378186bfc61613f11f1a3efb740b5abbe18de59f8f7e5fe7bb0e91b683d95ec50302047c435bb500683066023100d034076ec29d4a3e35910b55c2b8443a2880a9131bf536d22f6bc052ccb5499dfb0bf025a22bacf620a80a0853da396d0231009ef9534ea459dd0fd97ecc8263e991d4035c139594198026a387c2a99907aebefba0083cbe0dc752f2dfddedbee16fb30302047c435bb50067306502300460d7756d5cde704e97966b5c7b947297c9aa797b70d80c3091e1ff512b5673e9dc8dd74f446a4184d4e3c6534bd0ee023100efcf76f58ab39e8d1b4e17fe9207788408851295fb357e5182630d4a93047d0086b1a5302a141010c8531859c755c5710302047c435bb500673065023100fabc8ba673893ecfeb79914049356ec59476404f1c911da9f477fb07c16ae70e593abfa77a451b1b432c6bb804f6309a02300ce53fea8fab5dfba29f2e073c85ad1f8dbc246db4cdb8772ccd0bd8ca153c39e112789314a5b4ababd06f7c825aac6b0302047c435bb500683066023100ddc3ce259d4803dd6b4feabecef43196c3d7f93294d4cadcdaef5f2064353e1c3c134a9f1a254268bc2f92f65a4a6b70023100e61ff70dfc21ac980fb99a07c7da83585102e2ccff3dd9165804d276be5c0a67d2fcbdcfd2fe6728c59afad2988ef9b30302047c435bb50067306502306a46a62c53efd780e40286722bc9f06eba863e94db825a0e6de15219022729dd832ce866c7353dab04d0dd561d8da8830231009ca82a38d8223ef0f550ef94dd02870483721433b86dab315cf3ab705c7d8bc01fc4e01c579374379207d038a48f4b9d0302047c435bb500683066023100c6513edb032ac2b00fa3e605f758403c434364954483656555acbfd1b17e5b64527d25d3f471b58ac16de682ba8fd245023100e6d5ce2bffb64223f1587127554639c059cbbe58c6a5fb6a36ffd0e7ec73331b5ad3e03448872f3c755103ded99b85680302047c435bb5006630640230534abb95601d7934427f62d7b629785c0a1414353addc17468c4b25374a62c6f0fccff454d282563386a11a250820b4502304ba2763abefa6fb7521f5a4d563f9ff919202c0c7430acb57d9172f33e42b0753a4af4985ede9a3ac773be943381b32c0302047c435bb500683066023100ae0e1ca53e57a2a1b1eceba443dc4980450aa6b4eb67ce10182441e8ca2a0cfbfa9c58e1e147c65fc8abf865192f4de8023100d99690032a5446e6614e30d2d46595a99526210d74fbd8c8a57295f87571a236dd02ed013ccc368eef2904335987f9220302047c435bb500673065023042e9cdc92344b16f40cc845aad04f00ba4e03a295b6766d8c33546018623a6fbe922f428b504174648d61200ca50da02023100d7efba96cb02be25d913fadebda289773781c44645de6c59469728b616011179133fdbd93e4929fb51d43780a3feeda00302047c435bb5006730650230389179be9b6bf035deebf6977774d12020ea5de0786c08ee0850aae747ed13a4280f9c3eae48fe40a9d209199713a090023100db74535de6463a5968eb934b5ed50401c4a302696a3f11a7fc16aed3cb1fa027f2cbef41649c73c75265c9dc28248b9f0302047c435bb500683066023100b868f65b6c577b5914f75ba625882382ea8286a56b21c27b22394ffeab84fdb5ae2423d12b970422ff0a08c5e16a30d1023100f94894e56448b147cc5078a8fe8d77a5f8009d9864fee09bc77b6cf34c60f424f5bdc7d0a8b9726e724fed1cb0f82ad40302047c435bb50067306502310085320a4e6b60efa65bd951a1f22e5e7114d32bed52ef05d61855359a30c67f22bfc2b6ded83bd8f87e54694198a92efe02304d84f9fb5582601ede6eecc4ee51a4d11c6a557136d85ace46fb7d20ddd38ef1fa8e2f3160396edcdb9b99179e09d0270302047c435bb50067306502307298f3007c1cfcafc767506887ea88c83654bb4d6a15ce99afd9abab0886ecbae0b7bb65ba1d144a2958a1f642a20bbe0231008355c8a873a8a9fdccd509e9077894d4f9e40a2a0bb729aaec1dc2233ed78830776da6d228277cbe874c7ac6452de59e0302047c435bb50067306502310095a9edafb82c0e19c375fa66f39ac009fd7f5a2c7103552435648043903a133f099f27fccf2eafb74d72c3e3a44f67d0023077010d905273f9e71170a979b5aef87fdc3488f0600203fe97a075bcbe12554a6dfbd77646d0751cbd62e5c47186a2b70302047c435bb50067306502305aa2be29e161d0e769e5fe807afe1fa51f694cd6a7a0861f478368e4f70325d4082e259fa58d9c6db0dcc0e7060dc9a0023100a060632638bcc8b6474fc0fccb50b41216bbfb7fdfdd202bacc5e8254d3f9b5127b749f64838101a69fd1d8e04a847700302047c435bb500673065023100a9fc8873fb656488e10d33330f82ec2be03a9b1cd2f642395912544bfeb1f9e6bc130d91d9dddc72274015e68aa887c502306ae0e0754e33e8178d459140c0501bb61d5a827f93790ad0d9b0a610e67e7f19b58a40ad324c903aa05e60f75b7896d70302047c435bb5006730650230560c43b9385a981707269820b2d7fe93182ef2ed82f5e29216623620be6002227067a5071e57e09b71f68439cb30fb17023100c29da3a0f48f6420927797cf7de782464a8defce7e4219b9babdacf2afed2878a8b78990013b22e7e9fa1ed713dd6df90302047c435bb5006730650230104f292b0ff0786928d7b849b0822f9a731c8c04f7e65660a6acf4d650880dfa751f4dd5c560744b69d4bcd9403460bb023100c9c63150996f152ad32bb971abe30e803d4f014caa482a0c781d5904cd5e4fb0e3bcbccac992226518a0ea3287fb23cb0302047c435bb50066306402304c151bb2271b355133c27d9ce1013e99d9dc658ce24c81a06a378bd933e3673d34c4a639398e1b980ed349543bf77bf8023072d82c6a14151296d77854bf3ddb59add964db1b1eadcb49fd9a5286c44a07718ba375ad00e8d08566fc96a3add0eafe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023017073a7f553ca443ce93b15492c21506bde3ad7c13d5b40075561150a6668d3dff7b10485b025f7419fe0bccaaceeefb02303ee3506f96761e68bd7636ce1b27400ca44b802a6ee9754941e64e0f7704f669cbf9ee434ebd3f236ae65a4e59d2a7fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100990f29326285ad587f6a4add47ee3b3a9fa98ea27b2e46d185d04cd05173ac4bcb5aa8906e6a5d8867398b677cceb28502306f07034233b0d5e0ca16f0bee8f84e8690d0983a681265f7ff9ffdd105975b94f2ffb71aef54399db08c913476bbc71c0302047c435bb500663064023025d4a46173cfb48d09c845ab7d42ad83b2d1c861a51049dcea63ba23fe9987dfdaf89a8e3f9c6f29fd85d08cff8ed2cb023034e5f0c54edd69b503e3283fa04fa3f0b4b7a6d0a0db6609d27ea9db23321f37e46c190b424f70b7b13dbf35b13c862b0302047c435bb50067306502302e606425ae46856a94d926d400090b2a8843bdfcebbd7a833dd4f266e7d72f71d976e75d15a78980c4052320570a0732023100f2f492dd50282fe58fcb4797f0e46c6e9265cbf72e74b72ae12c5ae8c498349861b207bcb545f79a58a59ee77d079a6d0302047c435bb500683066023100c19ae88444a2d4e82002f062e403739e9a280e029c8c774cc3df839c97b157985c686414c0162d13ea80e051e666cfbf023100dde668bfe8cb3e94fe08b7bd3e40dff352b50d28b09bf73a1e3da348b6f8c0ba617589271262a2514b23e0cba4ee7f7a0302047c435bb500673065023100a8b99a4c449dd986a29f0131385aeb6382f3ab8475ba06e4cac16992e8bc0538f7763f7cfe470d8f8aca349061b0229002306168cd02932b2d3f4db460b6c917e877650c7f4045d7b2f72d5c62d2b4c55b2ce6431738a7057f572267cca7f124f0d00302047c435bb50066306402302bc9087764041743e38b70d391935933002c0538a9e88d664efd276ea6474c36b73ee2b34da3f0a30cac694f86015380023073779f6790b3407766545f9748cda100d0116ee030ddd51a058df72154040c302381f8a57863b0493c97c223fd276e9e0302047c435bb500683066023100a46d75cdf4bea14a3a4a869692c9d03d94c09eb2bc07df8e221658feb1f8a3be14549c125f0060f94d3f45aeae392282023100b6739a8943a563969d507cf2c9f392fc7e2e9c587b5d20b32c590b908bc46f09b77dce85d77824856aa093de155abe340302047c435bb5006630640230684c20543cd0042e65cf555fbd5c9af5fad2fb04a83f898b7035246b690462b85b10d7dbd8890c9faf58282f5ec5db1b02303731aec68bdffb5d8f9d8d7354e4e94a5dab071c9d8d635449ef502305f29e038074b1f57d44e8034a07fa8cebcef5920302047c435bb500683066023100a0f34fba438073ce88587be27a2e211ebf4f7fb48a89d7ab933a8f8070cdf269060dbe8365f8d8c8b2e529f194840e3b023100e6d3b11f873f835d3b85f4dc9810a09608840afb8bdddb3b681ddd630539123435f8c7ea9fc318e6e580197824ba259b0302047c435bb500673065023079e4db804dd7231270beaf2de956db494ec1440c2127089bbe2c32e6af51acee872d107ee336e7b5f1d7b7d1969e1735023100cc0879d12fbf4611f467bf9d2010b5f9ba9dee1ba48e2c0694f1c52838fd54529e628209ffd4f29984550a903cc2aaa50302047c435bb500683066023100fc0e7a4b23424d9224aac0bb270115b7787ec851b223c3235a8097fae9aeb1a49c2dde29ca035fe233f1752259922797023100eb1452526e923c7fa243362ccaeb905c1ead54047beef403ac4be8cd0a68f76c7782aa71b0221d524bf4cceb6c3f140d0302047c435bb5006730650231008433040fe6609bf1a3ad4b1babe0fd11ad544af095051ae4998fd2b94ccabe858129998897019db91b0fa0d96051260802304fdef5ef10c6dec951cdaf577a1977aae0ad65e805c6916c25fe911e372bd951eeed8fead0cc95eb6e24257e83daf7850302047c435bb5006730650231008a2728b9cbb2b0b18b7631ecf6edac8e3830c2060fc621193574db070510c168ed47b004342634bd538ff95004c479f202301c466688feed987899572cb0578c5670cbf29cc7fa24a170d0537f7822b2ab5187c237f61890ddf99b27e4a7d59222160302047c435bb500683066023100feb91f053b5ca7358d5d62c3140c056e6f62c08226be275ed45c2c6d3c508a7d43b1c29af8e94ea2c012f6bc23290a24023100b82ddf1adf25659615cdbaa796e9c5e888516f2bb0aeb8da6ab16fafafd72086a006af34070adf1de7b64f337d0366c90302047c435bb50066306402305c5692d779c64a2ea512459b0332e10bbefc88fc63ead59f57fd9fd62beae58eeb4fc6b95e8650fd2698005a9315c22b023076e1379d7037c45fb29dc59aa0baa8ac2146a715a5a29c3b4dd291e02d6e25ae14a8a59d1f65ccf72396db341f359e7b0302047c435bb5006730650230662b3cd7eff26e0ed0e8d884c05876dc414d61d565987775305d1d6acf910c33c8784cd98c7fc268d48f879b8f9d614c0231009400ac47f440669b2a27c0959a057da8365b6a17f98b50f482548a98f2f6b4ae091b70b94050cc667a036dae6a4ddc3f0302047c435bb5006730650230056c7e12b3a87331b1ffe3f3ff88e9901b110ffc140ad9b7dc5c4b01a35b4e1bcb5192ac978be88994ba9951056257f0023100d9a08db43625d3cad78945cea8455897fc3593ae7fbc68938d8107014f972531551fbbf964e420dae0dd847639aa437b0302047c435bb500683066023100ec9ae2c40b3c5981e80ca874f455fbf138239fe5c5c21841bd1e1847c819f9de85ba9117e1f246697f44dd6ade6bc6a9023100e60645cdd177234e6780a16a5e271b8f64dd79a5b195db6b308358147a1efed67ec7f18b09b58ea62afee8a32cf3e8750302047c435bb5006830660231009f478a96c1da0807b384edbc03f45222fc5c6751e8d1126724be280d1b465281d324834ba01de9978d5832522d49fd8f023100fd183ae1eed442253563d839ddc284dbc0fab5d9c1d5c80cb38fb314240aa3801068dc9130472e2b324b761e8713bfd40302047c435bb5006830660231009ce4cfa4d6e553a01858f5bdbbc724a3a275d66f47806a855b0d8535ace7c34b183153fc8f078ed88b766c0c245beb8c023100d3f521bf7663944a5f801012a696e35d72ba407a6991805fd07670085af1e8fdedb73733b75024734c0feb96da6676500302047c435bb500673065023100a0626d9ba4eb9dc1ce16fa7e65cdd96815d79f1544faea8eb13523099a9864e96b70545b487d86279cfb486498cff347023045e6b899215ab661e9c0dd0d70e1d13b743ec0c358ad5c4270d30c598dac76ac0f00d210af734e9298475f4e3da42bcf0302047c435bb500683066023100e3f9beb595854511ece4a18d5f31900c30847b2598e1f55e3e454bff5738e65529b2562ebbb08e4eb6eb2db244275e84023100f408c9e08b0d51e0e9ef0caeb82e41ee28cfa4cfc24c19072974787cc7b6624e19fa48c2921f34629bc408eda85aa2cb0302047c435bb500673065023042ea20d9f5e1dec8cd6ee627c334a7a8c20ab272eb818b37ae0a276cbceff01c0ce0501a3af7756dc5299c46a03b6fdc023100b11f2b8e09afbe993c09122bd920d51de42101bd25ffa282347913935c4342eac9bcc9d3fac1688411ec4fdd811807dd0302047c435bb500673065023100a7c80a04503a07608d4423dac6f980715a99dccdc222e61024e18c96682fa63d60c8dfc1a1d15cc9bf057a2c0816272502307c7c945ffaab3b5b53338f886464f92c8803cb83e7ff8720befe51694266cbf25ad74e5f7616db6f181a86c23eed063e0302047c435bb500673065023100cef7ab3fe6cf5d48f2857d6aa7ac664bd4769d6036329fde5528c5d7d44a243fc75c8398d428c0bb2533d0cab0756cf302306d7931f275c421bcc6b55da511bdf8993cd03a777b2282b5413115e699fad2e66f10bd507c097354d0b0ea432c646e820302047c435bb500673065023100894acb4b4b4e0ff66b165037ef1bcdb61bf3116740087d4441811cac6faaee9712b58a24d19bbad68463f9006d0969ea02307836c0cc185a0a80e83dc537d9923934345de358d4d17e52e5b0e7fbe360c51f208f5bdac70418507fe882805114f64b0302047c435bb500673065023100e0186df54c86ea2e759778ff53749b6c69e08e889d055bc6e18b294e97f8482cf3e67ab7b29876d24b56d84be7268d4b02304a6c752dda41fd127d4e831ba371885d262a26b3be43ebef13004e3f39cb8e39d6575c805229c1d901a7fe75160a99760302047c435bb5006730650231008b4caf312f18c9e645fa060a41a830ad06ba9e21ff474ba3a45377bad0248ef84ab4c1deb9ca637aa6e5e78cd8bbb20b02306d9a8cb576aec558e78b6a336541852490a872486523b1d916e8ebd1976e8d9ccd13c1098f34455bfba51bc9155d416a0302047c435bb500673065023079c034e3e08a674b9705e2d6b598ee570bc3249ebe5422a9ad676d1101778cc1a5a62d499311ee75942635e599f397f4023100d01acdae5f983c7186234a60976c344e8815eb42f24e71389e2e5369dae21b1aad07db1afbb73b3cc0ab7cd2cc567c1e0302047c435bb500683066023100c9b97d547fb348d7713341e97130f3ec3e59aac0035b230e3d7e55697cff047bc5188567cd8dafe1522139f52ebf210d023100f37a3d5c15abdcb56e6f4a790db2a3c2475173d021dbdcfca97803b42fa5e3b1b05602dfabc9e9bcc46267da35d310a30302047c435bb50066306402305244eb00568c6295c53ca8c1ee5947f6717f9be6383fe19fb9c348237b44f00ed11f34d223ab4458897dc7055709bca702304f1e00a3a1622f40acbdb03eb67ec39e1669ed9e1ee1533b597e667fd7507001c63a33ef84a4a7609bb40dedcdd110a90302047c435bb500683066023100eceed022c01b9dcc3fc0eb7219ecc42e29f973790ef132bfa55c91f0df2df8d45b8039699952861e2da044d9fe8c90c1023100821b76052104d6c7d34344ea7159a7a1a2a9c53cea8bf940a651da8998f976c873eb3f5107199b186833767d5d0efff60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023072a89c219143669151a85c9eb84c222c7c051dbb6af677d1bf1b1660e4d1e160e42a8cd2ec25c5d540324b9add477df1023100eda550ea3ecfe9edc20b8d18825025021a949f011ff6c0dc46ad10c0528345c355f317b5c636069dae796e0ccccaa6d90302047c435bb500663064023022bfa3da9c9a99daec078a0a40527a96d04eddd83e613694451f5cf82d601ca873a62fc1a97d915f22666801259b1cd002306deccb66fd9f174c48b7fbee9495198a024869f3b3a6fc6d14a75390ba2dbba9c43cfa901fe5ab3cecacdeef3a3993a90302047c435bb500683066023100a2bd60783176afe2b2b39ccf5d67d404e16f13a0fc4379eb8164d14f9a07a036b7998b610e7a098b4a349905525d79e6023100d290c6b0165f9ffec1e9f88a4e0c86d4a6ca2ad9ce5f8ea0f9817f75e6dbe9118895cb15939c510efb24c900599ee90f0302047c435bb50067306502303e1ee3ba672f76abc5333da7bc55344e6811f17d6d497622267b82b96e4e92c6ca0aa90dc16ccc14ce0447d41dc941e9023100eae9f67fd0bad96164b8b3f72ebdc2396f35ad87bf19e55831dce9bf96e8b333caa74ba6059d788fb155d8a8548cfa5a0302047c435bb500683066023100e8fadca695b1c5d4206c32dc255579d62a3b2d44ca35c9c562a7360ca21657d86043a1a9a3823c8a451f0e10b0d6886a023100eab66e5dcf4a2b21d20c62d74832ea16592a0a07b3b92a2d79838bfaa97dfa33f3a0a2e99b9f259dd8bea8b252c5823f0302047c435bb500673065023100d62d9ee83304360dd8382ec351de8cd77d542c0296001fbdf0263ae8587cd190d57b43a2d0a49cdcbcde1ed34ed9caf60230292dc734b1aae8c2f34bcb7fad38d0f663ff1ce5cf7018e981c7c8a2a40099d5c6a4654dab30afdeb39184ea3b6e04a00302047c435bb500673065023100dac8f6dbfbcdc58bcd80787acc15b85bd35a13b4798dd5b1396ba0eff795486e2436d0137a074b25e053f267e793d3020230075f88bd48171fc4fa082bdcf63138187cecdff334d6da28d8232d477aeab5c634c0bf62d53a04f72fc51e71a399fced0302047c435bb500673065023100f7bd7022ed52ca4759b45b01d12bd0189ab5689cc50c25346d17bc2da0701d14a1c85d438de13e759a6342e69f1e8bbb023006ee54f3984e3d182df0973973d1172634798967027a382e678560a47dd86763658fe74d8c55158fa567ac9d2ef23dc30302047c435bb500673065023100825afb15fdd189569624958732710df1956f325e471fc9d9080063331eb39950c9cfed4f4813d62f5569208925c437b40230261fb6099c2950f29609b2e83b6f39a3fa36896352ee01a984a1185f4a3fe00b8f5dce84dd755ec217d0a7041b397cf70302047c435bb50067306502303bb4762de678950faee9d08517571a069881ed32e2703096cec6372608610a6dc39b999baafb20b9e51db43bf6519b5c023100d4b35d227413861eaeca2f36ac3974d959fb4ae39c375a87a51d947e62b0db9b35838f048f1b9a7bb6a20ae0afdaa2e80302047c435bb500673065023100a61bb8cbdbf725967a9aa81a6c036a00230b328077f67356cf9f0bedb6167ddcbe28ae6e3984f0965a105281ac1b541502302ef38c10290c46b4b3c6d3fca9bedcb199d2988ee41298c232a870eee1628ec17e607a9db09435bd41688e6d868a72930302047c435bb500663064023025cfb5038789a5c375bc1e39deec56be80fa3090e7b3d7aba0875a0651d532f6b2a4871bfd8fd361a5fa94dbeffacbec02307bd099c4fbe554ebe60bab03a23998f5cb6198d1a615c9a8332357f1d3471013fe31e35c6782f7fffa5fe3b8828e1c890302047c435bb500673065023067f2beee87763ee02d0af1efe1fa694943a68d0a781c290c2c9278bc3d1b652e78d8b9dc4366de46bfef63d3b7937c8702310099a7326c0f3409b3d8f1342bced11d6258257076f5a11b7ca8e6ea569c4617d556777a4cd5f9c179c49e354f9288f27a0302047c435bb500673065023059b903bf090f216d1c9a0e39ba9377d14683a9b59d04b05cbd3a98f7fb9c0fe1af1cd9317e8d41b971064bb0865a3514023100f053cab6e787829d9d107d6cb13c443ac818f41fe05968a5fd8394e568144208b17141927bb9ef3cec17dab4a0efae120302047c435bb500663064023072413a7d50fa160d82dff5f60150dafb94dad87f4c8bf44ab0669c36869ad295a751eded75d77a7674ba1a2f5880b34f02304d637a6594d4427f36f0fe8083b3829d65f37edf0f2e23d18c89b684591c97254406ede8352497d2e38413a61658cf040302047c435bb50067306502301589eaf413e0f1a2a51e5ae6eb40750949bd44053348295a5402544aee650fe781c837a62acca11b527221baa156c79b023100b756a169f8cf997d13e9d738b4cf84291b1800aa88629700cd99635e4ff85b7a92b2e8b331fbc68dc6a2eff5563e38eb0302047c435bb50068306602310095b98033b22e446e36c911626916c9ce003a16a5bd991c03765cffaf69acbc2d445e27b63842ff6acf26005b7a48a25f0231009695acc03cb76496019f064549d1f4c6e7e069d780df203c6ead9f698667de43655e2c803b3d8c068d8bdf2269d513cd0302047c435bb500673065023100ffcd9062b8d7d873c4ca07530fddeae8098a93fb6751cf6904468e3a55d221794ba59a38509dbe84091c147d9016448902300ee8f3a0209f0a2a63fb029604eb94c56e3e6690cdf2d3128da3e7e1983f101750b3bdb06c727d3a68d28f32fc8d18660302047c435bb50067306502300e018628f9fa8d4024309be6d43919c4bb131855b3a1891a26c12bd287b6e25022d1a67342389ddd9e90a04acfd1e1fa0231009d4b190b73c3883f2929e403b6bf475ce95fd837ef5a72616ae90872037c7f29d7916980c27fd711065ea83190d8d4390302047c435bb50066306402303188b33cdf35d954a40ef9efe3c054153cc35adbe59e7df28d0fa85a3ac30deb560cbe317aaebad373b208e05d6fa9d302302ac71aa07a30187d4cde41c3fbeb1536c94e31bddde65d749af9b00fbf89ce6f9d912bafd45985eeb0c0ad630ea034080302047c435bb5006830660231008a62397131bb11b957658a262b6d01dd10080536ef12ce604ff56d5ac03861ef9ea1a5a3fed725e18bda878ee74e5baa023100f17a3124b179778c3bbe49cbf1ed9fc3bc765ee03bf4d4edc02e4b556bf40339df698d376b2bbf8902ce45777da307d80302047c435bb50066306402307156dc8a420f31c586190e6899bf6286cba4fdf920d0b5d09009cadbb5e8aadc263041c69f04ac03f9519cc2de2c1f1102306786be965d5847cd291135c039b95315cdbecde158d93bfb865f0afcb317d51525a74f94e135782b6b967cc2c3a79dc30302047c435bb50066306402303deff8b0146bd25a933f2d5e0fd7bd30ae9e36fa2063b8ed9b35c3356a3d72934e740f1c5a6606e29907386c7436eba502304ce53174a2dc13a6d1b1a4012ddaeb0350e6a7fbb72f526123469683573d328e7d24f4f9d56dee6b596b74ffacc88d9e0302047c435bb500673065023100c77723ed13413f824fb1dcaa5e4abb7e7d58241e2f22a9666d15dec8d8cfda3ff244eaea028ef8d09fa65117b0cac6db0230419c832d1eb65b9416588e7608a3c5306ae473da31b8bb7e23cb7f6b65b8f194c6b487ff2a98f873e7b603726730d9510302047c435bb500663064023006f697a40f6c8e2f871d6e600835ae249c79e1124f1fbda84d151047cdd2c0802c1bad74bbd5e706b209beacb9018e04023020ca985ffcbffcc5438157e1bf7080d4a779be3ab5107fbeba4a46b6a1a44c745e44bb266b7e073b6ebba0cb8afeb3cc0302047c435bb50066306402304d9ccf96ec74bac699f953235ebd6dd04cc1d0d34a4a6f0cc61eb9b5b4c7e4a285f6e9b7bb39fcc08a706e15551c01f102303cb863c9ca45e04a897b305a6c7e7235f2aa9e01249330279f90ea755a0fff0db428680d26e3bf2d0912544ff8a000590302047c435bb500673065023100fb69407c4644175064129f59f8aa76dd2ccef69e8aefe1c669a41c06fb99dd3ef5f5c9759e52c48e3df227f34d5f2ede0230417f94ddc7ce0d4949b5d17724489c3cb4ecc86a33bece2ab41cbea9db247386206ea94cd648eb062be96fcaa94174920302047c435bb500683066023100d03281f15e59af26843075cca51f672dff08eaee38f947b2eed0c4968cb75b7ee78ebd730189b1d25747f2b930882a41023100963680988f2eb35baa264097d779a984d0d850c2e2b08a14232dc5252a99a308802d9794ce851fc9682b27798a5e4e470302047c435bb500673065023100aa0971268d6140ba2b916ded1e64369341148173f9b07b781ff226aeedd878bb584502c367b1714282f21c2eced88722023069862a385bd33a42c95d354bf6e37ffdd94711d34fe634da4f9cd71a1ca04b5611ca91e17b218f64d2a9315b501387580302047c435bb500673065023016681f2fc6c141f854e42d3316a89dff2772836bfff4b7f95d08b1a1e7bf02260c385021ea6f612a2981232f925466e6023100cc2aa142131f7750dff80432fd1aa6bf151b414873a3812025458a513f38f58c7b408382dc9af5e3a1805d4dd597b6520302047c435bb500673065023100f66ece23a3563fe064959cc6fb3ebde75bce4b2550a47362271f29803c1d183fd0e4fda1fd8c750bd85f7bf9ad59b9f90230548e776eb826af9d54774179faaff5840cdf0aed39589ab8d0ff163a110063cb75157675e82a8641c936375e40b8ffdb0302047c435bb500683066023100a5c66d270ec8a38dce32148da3f699a99057d7db87e7ddd9db289c1fc6ff08df5cbd166775b0679d62ab97a6a41242750231009960c9fc88c158f9a3097ffa670671f8185e2162d36ab4e4c160d6ce7b309f29d8d6fad0969a80a40a9145e1ce2e43210302047c435bb500683066023100c6d2f7ee7a3b4a3a29fc331661ec3d00b7799378bf223b6739a431b0c8d86e5fc688af3d2a28850542fefbbff557dc31023100898e370a0b56ea92906876086a081280cff3dcb8182248b7d844a36b4ae3ae722b2ac88adc75284e96f0b03e2686ca170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100aadef4202f9ff6c551062afac2480ca9e35fca513ea805911c4d917296896f2bc878b946248b73a3eacfde2b147131a8023100bd9bcffe84e16d97ce715429eedeec29f0ff7b0ba24dde0e4d763c1f662796c4100a04f609583f29eb080aab8038733a0302047c435bb500683066023100d892f2194f24402a994e9bacd0fb39e0e96d75ee725c03ce4fd499b586920d8648b7c282f9c891cdb3d135e0f06794ec02310088bd74c119214b72bd036232f0a122258b57530df98bdfd3d48ead38dc7a91267eaf39de5f63ca833dd96f58e1509dba0302047c435bb500683066023100a2dd8136c4454970635101fe11df87d5caf033b2420f6a87c3d8f196e123ff73cadc919a24bc82ce7ba23d79ab26202a023100e77aae9876a32b81975dc8e38120edb9e450711b37f0635a9cd8e952d17480ff64bf3af3b41e6cef229985f74840b6030302047c435bb500683066023100df402bf118c5de8c27a9705cede8f3edc2d31bcdf5e7f2dcca9683403cc16b5605ebf12b196e632d9dc0336a0b4bb48f023100edc547deb47f05aea6ef85ad7d58d1c13c295c6cb79fe2aded1b537a546de78fef01769b0cbcfa1f2338aca0cff51c660302047c435bb500673065023100968011461f9cdff8aef553362e8c80e8d797d0ca49bf6463931cf0909419c69ac8a6694a35569a8946bfe13b6a2ea375023064f63307a04f730216718faefd7f66e80805304b117589740d720e1467413e2f2fb622c6243c72fb2cf80ed2fb8076300302047c435bb50066306402303aec32ebb2426d2a3b56718dc5034aa2564109a6cd80ce5c404766c05ab883f452d76858d208aaeb8076942571ad080f023006249707fd7774409154bb448ecc557ca9f17bd71f1a48e880221fe82c05631ae9d135ec098709a9f0b1ad7a7a6f21070302047c435bb500683066023100b814ca310298c0c37bd9a83caa2100f9d9877dc2b4c11bca99f28cd3d5fee7c72c94815c1d7cd8d26f134474bfb8a878023100d68399af066a00af8339f9ddfb6ad8e935e67a01b791121fadb3d825910921d746516b5dfbaad425b815c74bc147bd790302047c435bb500683066023100f527650ea6f97395fff92ea59db9fd04a7b612e81c3fab58c56962d0911092e6d451e9b8f93a7081cb4a1717becb20df023100fe8b286d887ad8f37dc4a7c97860c8387788cb85d03009839df3d064ab64f8a7beee4f8817384a051fd0845f8bac6b350302047c435bb500683066023100861c89a3b097a5d38970b02685f7f743ed1ececdd02c6838bec0eedb39c253d8b540a9f1db3c3f06e19e75ac31bba5ea0231008227cbf8c291393be3c72fe4d5106015fa71932706aad7a9128494ec598df9ac3dd1c3853763e4ac7e9ee1cc68bd6f2a0302047c435bb500673065023022247e910f75f7701c6f40aa0111aeaf7d139c466bc2ce4b7403d37bb2513e4778049db49a795b7ceee1962f901bb51b023100870fc66e9a2d251fccec5fb357607d0805e581452f37057674d5213a8ee8abdb0d9f8c086791ea263d1ffefa98719dbf0302047c435bb5006630640230166dbcb08757a9ed19ad2c9243743fc20bc5eacc808bbae9086821e03bcdcf1d6bc2c50e8c4410160943f5940ccd64ef023008bd17fe19158967dc425e69ca8c90e2520967fa8f8b4adb3017c19942d7114652a430ff9f97835b476cd30a80ef12130302047c435bb50067306502310086dcfe80ba99131996985b0fcbbad592e782a18b32397bdd7a7ed1045271719585b816cce6463d67b53ffb37733ad37e023045b0dde8ebaf2d4f8cb883258fa4798bd83336c2f474d70b0c1bc260b1a8b14c327f4a4ccd512a960f13d6d704bd5ec20302047c435bb50067306502300dd9ec1c75c006beb2cdb5514b31504f444929732564078a3e1530b506fdee131776a503884cd6e552d429396c564a00023100e9a84d86595d37ef312be8da3e05a037e6834ebfca2beadc0c455b479680a934ed205844e29a1970283fef7a2feae7170302047c435bb500673065023100a89453a7e6f90ef41c2a2e0e8a363cbf843ad4c4c6d52ac6d59ee03f8cbeccec3d74ec1cb89aa649a40130a7992e5c4e02302e72e1a49dafb92a2dd3bc168e92ce18750eadbadd8b2eac281d06206cb873262f3d58d1867af632cbe860e2e62ff4390302047c435bb500683066023100a3c4abc94d24560f929b707e4c1c7638a8f2edc8e5c47865449c0baae96d7b2513bd416ce00bafa4909dd1e3141d1f19023100dac2d0c1d3730268fdc1d195b9d19f45bc0984bfea53e974f2f9907f5d3ef532d5a7ca9b5b17b751c3d8bf854e4900370302047c435bb500673065023100de4bd6e2933527d112b3c4ece6f880c68bcaa0357d6316f78e89f1fd5a1e4024000bca8a9928cd3ba1fbd5be2bf5ac7c023054fc0d6601e6178c51c2b6c8f78e6dac15f6aee71dd1c32384f3ae740508cd7d767d9a3f3983839c502cfb572060b16e0302047c435bb500683066023100a7e372180d32c4307349505ef4bfa6b6e95a16cc587e47201dd9b3421bae4743a1f3e5f8264186818bdf667dab0523f1023100a7704c6885f802178448adb69c9e84b0feaeefd53e6dc84d9c440d8cc58ee9680fea7997d983f27e9fef4ef0da44899a0302047c435bb50066306402302ce71f06c38d33f74627b432fffc24560048414ca3ad07d76c8f116a8090d45a349f8411e2ca6fa68147990b614efbc002300918431aa3b7cde0dea89ed22358872ef6d9be8abc97103f71c1f66d502df7d27deb39bcffad9db8dd7ab8481e4d57800302047c435bb5006830660231009575517981a22660d32d7cc62bcbfe75aeac639b6d84bcf51e5ee752aebe2f2cb18ee06dd2d60809070cae47256910ff0231009ef23c85cad8bc5f14545f96977158925e719e860d166c3aa7d3a54be2af5e29d527fe9d1f8928f86c484b6933243a450302047c435bb50067306502304dd2ca9bfcca424704563248bff51e070d2d81e55ddf06f73a92f63ad0d2be2af3a6c258aa35279fb329e11b7d611f27023100b4c7bcd05e2140b9dc893b19b8ff8b7ecc90f81abb8b4a05c042f318cec6df4ee6ee56acc27d7a42d7b8776a65817edc0302047c435bb50066306402301666ce12721d9ba2f07699da077181e3b39bcd1ebc856a320b9e17417365f4dc300d96389fe6207efa351810d4dc6cd402307ff50f242b2f10c72f3221944a70282002db777aaf16795d549e54a86c4e0a59527f91d9181f021c6bc2ede6eaa0fec70302047c435bb500673065023025a9e892f8e85b376440d19ad88c9b4c357759ec2011432f42b888a2a5cef6caa0843d9f608c6fc420be8137f634694f023100e9e945ff862c280fd326c6d4a4fce0cd77dfc748cbaa86dd236b899133b8729af7c349e70852e8e4bac003d813af77b70302047c435bb50067306502306308e22f663623a98ceb1d6eddd743a9bc6ff3bc3c29a6eb9c3ce2a04211c35dea5d063b4137acb51c3f60b87037e9c2023100a4325f2fe73d82057494f55986fb668e50012462a077ec12f3e4a381791cc55bce41bb6a4e8ce68b9a8b950db8082e360302047c435bb500673065023100a697fb15f03d2b38b9b13afd15f59bbf5828fd36cba559e6b374c261f02957fa151a046c9bb4576499cff74f6cff21e402303a08e0796eda0915c31dfb3b8c514887fb75cfd78403dee5851754dc93f10e9351ee9255d18104433fe430742f1d8cbe0302047c435bb50066306402301ff364376a63084c01c0f1f759306a3ff8a2bc452ab82f2301a03d418063309bbf4fb26da32e48804315b94d0208839102303b4b9c05110c0d7247bcfc8cfea511a2f70d629868678e03d56857bae17593963e4c973520b56680eae0f73e2262c3e60302047c435bb50067306502302b9d306d391cdf9820dc712d212fadb8a193a7011dc02f0762f6f72e2124584a67191f6294ee23ce533d80f73dd21a74023100e5f3fe74f1b8e4b2e7708c31e9a6fab54561039c39642ff65b583f062db0fbce7595a805eebc795a526fd6d22683e2050302047c435bb500673065023025f886f7e823add1d69d1c5a6ec8eeee9abc7b450217e9bffcbd84f1fa0b3a52198f2f392b70a9152d7470f1d88397f0023100a2bdf5fb1d47ae3054a04e31b2c290dbf79b6598d44ae75cab45f039c1886255725d298515833b2670b11374a8ba79170302047c435bb50067306502303d19c51c172d50a99388d1b4bd56233d388990ad20c7e446e467ec23f64364821e55219544db2ffe79f51314384e4fb4023100f10dd90d8a0b7e7b9615716641fab40fcfc8212f8a6edc46ef5e228d7db51e1a3ba8b7e43fe4a2989ff92add45fecb7f0302047c435bb500683066023100e2b9d60943c7ddcee65c827894c8ef032d4c5c1d5ac774ec26c58ca0468a4e2204d77d1eb952db2613792db5f4f61282023100faaafe150cabafb803dc7ab20e5a1b3b7aa43a413bc1930fb3e69129b006973df3381c07102697e2773ca0960adc52310302047c435bb500673065023100e8b237f8c933d754fe6daf8dc01f79acf0747631bfd821217f32659ba9a91282d1f15f71d86b253f76eee9ca14de828102300c3cad0acdd9e23dfb6a32342d62030c6b1a945424c2a5344501c7097d480e887b4fc09f46b82b0318d855eefe4a04f50302047c435bb50066306402302c8f5af56a82c969c4ecd373ee67241a253881eff26186e89e3a61fa7b59ce525a7b126fff447aa21cdf0c3857552502023069aad652d94035ddc9001e8adeae12b69d92d74e59185a6f4614671b69f81e5a59032d7694ca79ac5e09982e468bd16a0302047c435bb500673065023001739add78ebac3cee01332b6210b182988025486d8c0ab4a8646b10011f4f489f27b42e1eb09ad0ca7bd5b449b07f11023100cca9293d04d7362e5be0a1585e23ca3e8560c3fa3e72f9eb34399d79eb91159327148a087bf446aff020799d796ec6410302047c435bb50068306602310096ad529925650f02ec1770e2167453b39152610d9c51f465119f0897e9d55484b3e0e76d1735217c726d69a0dddfed5e023100ae6288ffc7c537a458ecd94e317d7ee572b3856986c83605e4e99913f480e16dd0e5c8efebde9f2c35ecc2574ef9256e0302047c435bb500673065023100f12262f5246a234de74a54ca4c459ac4b69f24ab4bc2fc8403b3922ef14819a426e4c0b980abd5fd74eee0eb3cbfac6a023075b87a5dd941813ce2b5a9aabad0609661375a2629db24c4c85fb9c5b51dd68c0c37bff5fdbc0fef1318abc0d42527910302047c435bb5006730650230457f0f6fb72f620fcdb77b8ef93d065543ee00018477c585f983890f4e4bc0e194b5c760a20b58f70d34b84c1bed6193023100a0044f0acd9d05337b16be2f0a9868e3c26e0c678ab97c1fe2db2ef7cc51b887c6a4785105f6e51f0cbb55d79271e2c70302047c435bb5006830660231009217e11dac2951153e507355df3a612f56c5629a303a32014885b03bef679e8464bcd9da2b0f17d809af33d60038e660023100c6a724a21cf4d81e165203554b67849675c5b97f7ce4f135df26ebcc92b3e690bf54bea148430250b85e8e90580eb0990302047c435bb500683066023100acae8aaf46239505fd813d00fe9a508610dcc8a54643de90c74c5d6772c17c2c001a36f74f057775cd928fc779559ebd023100aa2ff622d744b9b73b6bdd41233358626fcd7905f7aa15ecc34bf2c4bd9d4dd93dbc4e2b9a265b3885ee995c13fcc6770302047c435bb500673065023100ff2d7ea56cdfa12ef29bc7632b0aabef0e9c1a5c989dd405fd8e02c9a1ecec105bc399f741abab54f8f9576a54894aae0230388fbb6dda25292875503d1e92ac8e0d867bf071391063fbf1ae14ce3959906b2c493aa58a96d821b88707f2398e6e970302047c435bb500683066023100b8f1babf680933489f30fec6e241872c5915b95eb5abbb827b161c5726b526a6e0deae7a782b24b314838c0013eddf500231009b46a9b916c37843f224fd3815b7ce1aaa6b67c15fe8115102399421b3b03d08b0a723bd50e996836a75b316806e52ee0302047c435bb500673065023100abe2c4431f88e7b0e5a5c98c02708769a779dcd09b817f37a62be12dd9a8e917eb3c435c9245054e21f595a0f89f783c02302a80a05e5f8d99c9edada4ff01758768b300d93aee89b7e5d67a898345c3694d516783aab86c356d2c1d9c3e86daa4630302047c435bb50068306602310083f55fa29c9d589fdf89430c807d0dc4a683832f7b3d501f64062e295b0e32eaca9e8d74628d81581bbec25e55ee2ef6023100b38893577e39d46ca478a86bab2babd17ef5ccb61d8daeb7167e6796312642509ec537200f0718ab31142f856c2491930302047c435bb500683066023100fde544a1c65b4a2945b689999382c5c9fdfff4671c22d217ba2e46ba1c9251b033237a92dd8c1d27261ee8a366c32cc00231008fcbf37e4a64076ca72944d635b1e40e9c6ee935e47d169154cff65c69770c05deefa94e20b8749ff64586378e645deb0302047c435bb500673065023100f5b1a90000bb3e087894eeb24476cb0e60501e936da3c67c3277d0ce536723e0050e1a1803ed1dad0568cfcce9cdcb5c02302132e7986cf38703a495590c2ff7a0b96bc745a3f3eb15dca1875579d9535b5473af3b66feb7b690dc580412e23b38d80302047c435bb500683066023100bce6acf3bb00426a8056e47dc8a314961afabf3f99143a8c11857704ac19d546cf2f074bd6e74e56f78bf200fa680e76023100f4eb73476625b5eb0a31b60b2164c607262c64d203e40ce368efae31f4b19c71a1c7c27fd4fe08a80f75867a858ac5bb0302047c435bb500683066023100d5847f678a046624fca22673e6c9b8b9766c9773e6ae33fdf7e16a7ba7a48be35181c697486ed775f7dde7fb667d8983023100ea2dba4bc6a03ec4c86a4b2094ba6c14b75e08b88110f35f9de1209e8b9254beeb39d9e585cbd1d5b6cfd7a24def18c80302047c435bb50067306502310082524a995c956e6d2913447ac5499d5ba6c639c52ef2cae1a678baa2d26d430058cb1f82792a611e226332954e56a3a202307b9881b4ad06921f511e3205ed80dea80a52c4a846751bd04807c9e09b1a0ceb1f67e21736fc652753413311c8b2bc640302047c435bb5006730650231009d2e253fdbb5d20b0bc96e474c2d9c4d405a4fe92ebeb37df6c685dac93ede97f504f17bc325c3d13b1cc3c54fefceff0230788388f1500cdb1be59227db1e335e917b39ed4ce3dde20e883f7c9a8c70a86e0616d54c5722a51a3ac619da9b0ec82d0302047c435bb50067306502303f49f3f67ba27d1598a4903aa1b4c1739c60fca7a0e03d7eaf960f6988f990bc3defc09264e7334fa597e71023d501e9023100f0db277096417d5e48423c0655d6634e27a4858e953e1aa22f4eb81ff8a884779228c581ce373818b60838f5a4d797cb0302047c435bb500683066023100f185131b1d0c755bf25ad00598bc067ab733a1a59ffd6fc2903f181eb5f446c67f1dfdfdff7a3b5914d7c8ba83b567fa023100a60622998632ebf389af4007bce77669d3bf0aace2e85d60737c1fb6af093aff96a2372003e5dd8f99beba31cc2b2b510302047c435bb50067306502303504d21b35c192218367be61b53272c62084aac06680cbd50d51fd5dd5c96db397ea27768e51f5a86beeb91159f978880231009e6715b9d28a5aabfad1a9f79461a1065e561d1455c72fcd86356e97ac79bf62434d1ad8fa5aefbce2371844da8c000a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230497e5ae1a18139ea3112f0201e56bbca541151b45895d218e15690890c0c5e457fb6127b60ee64eacbbce5648dfd3651023000ac127d5b4bef1a739f9c02ec3c8bd65ec34234b4d7ce62f35a95f1da7e979c55d73d2e7be5bd2493cdf3428346b4cb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a936d913e767cf28c82fdf0af1d9732f8b77d2b40f9133d8a94097a7524250af59b5721f912f84a779e20e093273d5e6023100fa796812d55a429eecf552ff8ee4bc50f5f3beddd31f9ec63fc2008c8f945956de34f5bb1318992564aa315a3a477cbf0302047c435bb50066306402302f257eaf73f2f85654e691b821ba2f27d680f8ddabd4e689d78a8ca0f3a162657d1626544e4547018694674306386c0402302bcb41eec8d65079f739ad7637435d04556292bef25615decabfccf76ba124fbfe3aedd24210c9769b8a638a7b1f558b0302047c435bb500673065023036939501d0c93d507f24c024dd261c4745158240b340678796444fea989e0e1290cc37f3275c1cfe4e823050ddef0960023100c5b6200ed13ee42b899eaffa7aa727cdf97b420cba6f917b950113dd36829391a211f59fadb76559f4284b6315b0682a0302047c435bb50066306402306138dbf6ba32d316b7e6cd025901e0b758772f6d7ba2cca5bc14cb794e80c4d9bc72bbb0676464dff18b66ce5d5e91840230364cd66cbdbdda232a263b33a591ce3c9675fcb6dcd9e7eba3dbf5724e526083dfdf25ca20717e4d97625b5ed8136ab80302047c435bb50067306502310081e4460b8d482753e2242a147c8368d617c5765a1a86e098db36ea3f90426e58b49170859aa531c84716ecd73c09a779023055a7ecc0977be47be8ad27a335fdc3c152b04f8d4ea2f2dd06743f98bf952385fb43147110017aa70d7ae40f0b44a7eb0302047c435bb500673065023071d0840a7e8569aa703e50b9624156d708394ae8275f90b3fa6a02eb3d14f1c7239697fa86fbb458eeff5601d8a094d802310080b941aa6ace2179c33089fb9b100000bd295ba4241341bf7bb4fdee7428c67be747d921496cbf1ca16a2be0b4a88db90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304bfaa3fe24de9377a3a98dac8d0395fe0a97ec4fd53024d36b75d6002f24b442edc01195da97d729f1279871d7f00d1d02310080e77de13d8dfa73345ef187ed7b38a0adda7d83cb9ef3f75a52262018d63e4d581fc572738ebb9ecf9f28f5188eda500302047c435bb50067306502307ccd7515b73daa9fbd281c5462a82ce72c711f5290062a0af05c8ba6e6ce8c9f480f085b304c66a920090a0f0e5bcb0f0231008f870d5ead570c0152dffc55ef8aa56e9e294103115df0a38f859512f9c8f61929df87e52026f87ebeeb548cca41ecd10302047c435bb500653063022f470f65cb45bedfd48649e046ef77b9f1ee5aa1423ee34674eb13bd5e324d37ea582df538fbb1b3e11b50c88df9a9a902301869ab957645f2bf74d8db6439353a4536be842612c6d800a3eff3a6dd5a3ff258b1d086258aae1d8e2c18a4fc451b450302047c435bb50066306402303ef687f8207654fccbfec98c295faaae9ad86cd3b311470d9d8867a2fdd6e065a4dcb632d050924efdf73754e5597acd023003e9bbc60f8f064ab3b06411aa0e0db008d97aeca797b27a9d8f4a7f9bbd3d9170edfbb9fbac1d1df5df689b8be0c6ec0302047c435bb500663064023075ca5b1b0dd694d6d28b1a255296133163bad7d1f075fc8386be56fc8ea803d8f78820b115ea686ae34b0a111db2bfd00230135376a7c5363795fc885fd8fd611d74e8b82cea10bb568658a5d334357742ac18a4040af713c6bd6accab4a6714afec0302047c435bb500673065023100922ee67fcccf883d08695b2112c06526b0c00bb83c4f57681ef1f62b804ade6d1ceed694a09ec21d41b97957d0bd4ecc02303531f7dcd4755065731287cc0160f7fe61c34b875532fbaeb957e5ce8e2b733fac588221b487b03df76fd7d6495cda7d0302047c435bb500673065023100ea951b3393ca0058b053a3992dc3628361b9c723af81a535b7f3d1a2b3a099802070a6900f9d0b97c8ef97ce434c93dc02302eabe626731615b20f1199eee86b591fbe4fc02b5d7a2442a30645069daf3829a82b9cae853e7d8a2d64002e6c39b1e30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c2541595ecb9cd13f1ca31c1d7a404e811968305d5698d42c91d057cffabdcd44ea03d6e63be111b8b42c6f4d30ae8a90230016ba00781daf6002f706760d0b0e99e4f212675d7fe4014447ee0431ca2778262824581d77402c5de6369e1b09dcfe50302047c435bb500663064023011e9b261c88f9a01251e536876734988284047f933c97e70ab2bbebcd386841195651c529c217f8ed42b51fbb00ad798023041e01ebaacf5c9ce0403fe5c72bbb6a03f7062d7166a7e4fb334b66b22a2d2d7f5be85b14e76a9e43e80de57db4e691a0302047c435bb500673065023034b309edc78ac83205be765f2bef1b71f0749a1da5eb3031c3e8dd8557fbfb76bad95c7e4b32d33c41992de4e9ebca9a023100d3489178e46580f8e733549cfdd68dd11d5edbdb6b7ed97ca00f3f0e9f31df177cd5968aea58b5132d3562cd3da719ca0302047c435bb500673065023100d5b20a636aab5893f7352d49c36566f6fc2c09edeca04db1e5c739ec17753537bc78a336ccb0bd4e3daa98f1cb43fb49023026a7d4c2ccdb453f2566678bc69002a1597833e596e22979375e6a14f328989ed1c58a17cdf52a422a6ef37f5c9d9aa80302047c435bb500673065023100a90f6bc867e0cd15877a7a6168bdd024f6ff84ad1603aa6df1ced2de77d5be6ce3076b87ca4fa0dca4df9fe846030a5302300d8514d8ea5652092c2b60df36e10992dee03f915e22d482dec703c5c2254e9fb1d07bb82609d35274eb41a0c5f334e90302047c435bb500673065023073ea69d3c5c8691bd143eb3e82a6857d3f9b80d6aa177d7964a5147c5471326c8acb2b2d16b8dca973cec5093ba4bc2c023100f5811c3b6254b0dffabe38dd8c3c3048be620e91479865e77613cc601437e15f3897d6189d5424e3df67f73d7e4565390302047c435bb500683066023100a45b8e9efa12603c378cf5cbc4dea32877baefd7e75d82fb310424bd286c8c255ada4e467ce11ccf8b5d153cc113a0d9023100e506d0f28d66d5ef6161e3221ba5764dc738e4898473b048cf4dc47a96c46e3458a1d47187ad214ad440eb7fbe20cee30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100da380a546a1663517fb6c448455f677b7844e0fe8f80a2ad0654a3156dfa85d53a623acfcd6448d8538bc6f0924faae4023100c8c8ae40eb6e67cfe573105c03496779c397cd81705dc1ebc80eb19dd214118853500b76959ab1d83dab4c6defe3a62d0302047c435bb50066306402307372d0fb801b8abcaa771695f928940957534a03a61efba73b716074c8d67705ecfe7ddcb3cb67cb76d808c9cf014e9f02302c027c5a089f559780c65c3820a9a26fab4533113cb161c543f61ddbfeb981319af24a96ad8e498441cede3ebedf3b530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023065e4af03a8568c2a758baa1c6d69bb67dcd40e740bd16c877d25296ce2458a084a88c79f989992afb39c7720eabf6bd2023100ce94ad05a7ebcad48fed2680cfa152ac82836a3a4a9f1fbd056794f2ca6ee413188d6e8d3ea5c943fd40c0a82e95e33b0302047c435bb500683066023100cecd53b9e0253b9223d591509671b2772a148f0e18e308f33a8d07eb76b4026138f0a984acae52b1558468eb8890291002310083bf58a5e0165204dd7cfa9808c43c9f9c36daeef30ec8a55c5c0abdd015c945dd4ed4d6dacd129547d8651bfad885ec0302047c435bb50067306502306ddfce403cbaf1f88861156235a12858035e6269248e5cda4cffb2bec9db6800420745480422257b3b33ed4df6b00bd1023100d75d0fe06df958c841dc1d89c5f9547edead733831dfe3377330e2dcc8d74956af379f00e64f1768467eb89ef06369080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a9a776aaee8b98eb64bb77ac1fffcc638b5f81d56b73030c1777789d053b82c958e8000c20065a16b93dc5fddc12ff52023100d463c96b6528bf250c7985f8e00c99df7b428ac6488e5645e573b29557bf13639e25ea9ab59ccbdc006a32fd819c098e0302047c435bb500683066023100ca6e02036413b9cee1ea3134f40309c2bb28c1ed651b91334a99822906db524a643f0c16c58a4d0d16e5541b66071833023100b8c2feaf4b23452cac1cff356be5466d280545adfbab385a434102656d7d4a2191ff7013535bb8db01c0deae337802ee0302047c435bb500683066023100dca3527e5a8c174aa124fa1437ee0ce422196d05f84d19b3ea33f412d2f3dd83ee82e3a4958a54109ff63cca58d1a089023100e595414ad1d266f7adc98381f385e098a828ae23740dc24c271146ba8b96c8bba997466c4273ac9aae11deb870192f6f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023030362c683773c77808fbe3f46729618366bac0a091e35f181618297f3a9665930922d58f4bf771d064113111c7800f7002302b99065d244dbb51503dd33ba931fbe45c29d7602eedca5f8163bcb02762e3548593aee9ced03939ccbfb329c749f6940302047c435bb500673065023100b60d6125c1fabffb88e9a2d8f36ab1994c3e7956d1da0616c2d4082e952884151f41670659e50f6a30a0e8e18a706dc602307994436be8dd40624216ca3ad24eaf30d1261c6e2533f81d611fb80cb7f7241be5781b62fb7e97c503caabd949040e5e0302047c435bb5006730650231009046b7fc6c3a2702d011cbeb47890005d8e9b338893abc2dd82925bc5f588876d20d3c79f2287c6319ed9c7916458163023002e2b8545bb02b2dd62312600a07779b7379234ec3db6c4fb214039a09896abb3105495c5220d540001c60aaf3b959d20302047c435bb5006830660231008b9cbfecce207ecb7f95bf65d428c2497fc8971c04d57afc4b798605adf01a6eeffdc89f7dbd9137b7acc3c7b4d0bc11023100e2b01e8e8a18ea19ff83b1526844bbd94030a49a47e1870bb48928ba8656c64c02abda716af123280b6a742ce2a883970302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301145ec6478ad918cac5dccc0b3f1fcf45e6a3ceb24412c80972a9bcca0c1815c520c743520ded209cabb3ba85c8a5be50230376ad56218cdc86df43527ab159c290fbdf650f92701ee4dc7d231828f555bf27f1fd7634015f5c353d75221e50c9ee10302047c435bb5006730650230448ac1805eb4d50d92129d09a69e3a6496ead58ab8c56190d3488eda4bd2dff0bd55dea1e87c010d27a477dbfe3a72ba023100ae448911a1501f03e664721a8ed82c5c68cf485a9bcf3f00a4b499d128c6b147750b845d8cb05f4e65741371dd9caccf0302047c435bb500673065023100adcdb083aa45844288bf4a80286d0aece1a4fcfbcad276c53fcafe00563a77c77a052872071ad7aa76d1ab44978cdec702303755b8ac690770b1a54d270ac39f4cee792a129be76a005a84fd28e1ca1b2df4d9347912328657cde767b50d6ca3d6dd0302047c435bb50066306402300ff89720831006f6887f65bbf9685135753978cc294fd35d6a94f6e25166d6619541c353b38df8bc9d7bb24d7e19891202302488307db357384d1655d6ae2f9d8f6bb5bf433fafdece43969f904da7a7dbbde3bd003737ca70961519d327edf70ab20302047c435bb50067306502303efdd363bbaa436a3b47a1f805d2fbb68c6887b7fa119306d3d501a022bc3a38cc609cb4c6c11ac7006f63f47d854b4c023100d4b779515d9477d39fcf77f3bb0615326e480ac3a47ea55f7c702a50855a340535aa15f18c4762948ab1f689cb4643e00302047c435bb500673065023100af5f1ff58b10254e13984b6d47fcf1899dddee4fb9fb566633c940f25dd337ef6330b1b20476d44a47707571e31f48de023048b2ca06de061e6a629750d85c4cda210b49e0ca2351c89f83114f3014defb9a8f23197c3e91e633b2f8f358fcb8f0660302047c435bb500683066023100a597dd47d9977ccec5bfe57a9b6e30d516163b9d6bc2e07a7c3760409c76a5fd9f78141659674ab3fb4ea2bce6bb0c69023100f965bbfcea58a29cfcaf2db0ad6e93ddde596ef70d6cc9b1b9cdfd70f5c386c12dc61bb59c3c7e6602abbd275f188a0f0302047c435bb50067306502302158a21c806f17c1359ee238fe37e6be569a04ea1ebed7e29c9661e06237948ebb62c6e3d0546c7b3bc94c7209995c7b023100c2686f853473bb40b9f9cb77e017f87a27b7105957242a937fa7e0c9af4880c6ea8b5ef5c1f9611786e15010a79121780302047c435bb5006730650230474a83a4a0ba52fa0a041f173e8853f8270793927b57aca5ff24b61c945f29816664c5251abfcaea8e48b91d8c6d820d023100efc594b59b5e75ce52b3f59b7565742c65ca7e0cdf9d333040ab1d917c26391a87aa24a13a58d5adfabf6e9ec42d8cca0302047c435bb5006830660231008b2ae3fad290886574c3fe019bb467e8c7d5278b9241a5e99198721ee51acbb09f4770bbb1ad3da3ca51325fa348fb52023100db0a8002385144f790f7fb2ee068cbeefdce0c264fe74b5f3158f541b6aab423893b1b59e2db291316c5449f1e12b2b20302047c435bb5006730650231009bea61d0dde6da43b85c5531786a1f9d36de3e4a96de74b37dadaccf1135c58349066b2d040d68df24ee30373cac3b6902304c032607c11a7144b959da429f8361e319007f4b7f90e4f85cb74a268d7e6a5438e95ed96b095fa461cdc8e3f468d66d0302047c435bb5006730650230039962e8b55792577a6b05b2a7c28addbd2dc62e009d4989af67f7f1814a6bea9229fe6a62c62862dfac3724e81e22820231008e7bd3548e016095b8e1919c3ade993879680202e09b1bfb2302c0b4e7b6f7748a31f25ecacc32082c81ab89093673900302047c435bb50067306502310080a4126efb9bbe5441f91a11b7a3660a58e807faa55d3bb243f37b366b5d1f9fb7de2e04a9f04ca24ef4c60e809e68dc02305ed3ee1a790114f4409c7920e0fe0d7df83a9da3f80a5c33e5ad6fcbe77aefabf08fa38dd8dd2258b68b0461ae1002ac0302047c435bb500683066023100a72b90ec3a339092dcc163bd86a10f2fb668a7825f0f103d4bb8e69471e39f1ac2cb25d8f5734f1f13889aa5ddf4329d02310085dfb62c4cb0f9e07f97887ff55523f3bdc6520980abea4846c7e64b555d1b8b06f82f49f2181202b8b8d929b50707100302047c435bb500673065023100afdb47ca9215125b618c54f4f02770dfc1fc79551d809542021fb2ff5c8a75f2355480ec869efc0f1542cfa50419b66e02306979220eaa1a57d2bf010f88d6ed0f6337121fb7f6cccc9c861d0b0fa20f667b264b7b71d0ba42b2f5cce9179c14fd530302047c435bb500673065023100efaafb670a0c48c212f9816c9869bd4be0c5025d112259100fb57afb7a7430785936c7e04888837b32cecc02426a081002307e2c946ca4dd9a8e6ebdae3d1803933abc3d339f234499c69d92fc6215fbe928903b384f816a65af9b0cb520f4c7908c0302047c435bb500683066023100a565fd44c8680e687e12819ff9c7cce69560f88445dd708108feffc06db2c8b33435247074bf59a9a09883e417505aaa023100e90e4cdec6ef8a6f0d17a0f11ad4f99e9dfbc6f36c3706fac043ecd0c1d4bd2b99c17869de33bd82201f32671622fcb60302047c435bb50067306502301a2d00db5ae16fb2495c58596bf5a52f9bba8306f318b13f3dd2d4be4c811bbbfd9d0f9e3d36be8fa1c457c0066dd29d023100e1b051ff5c5797cf75f3b84ad87a4283c8449877127e71d97f412885ca230043e2a2a93c7774e9c052c7ca1df705e97b0302047c435bb500673065023000e299aabcd95cec8fb8138dbb3780a20dcb00a51118c5620f9299ff8f6a1a540e77e0d8548efe142fa28f17d0bda873023100fc92076fc0a055432f77fd254f82d5cd2c13d8ad2a1d046f261fcdf9f7f4e91a2c877241d95bea98a93bbd06cd563b0b0302047c435bb500673065023100a636b6b46ae84f152d25c7fa65fbb5bc97c37875353e83cd8725050d5574e32fb22f0bbbf1b43c78a1adf5f99c2ba751023009c8c0956c3c9fd0ae4b85010059adc2d7047ccfe87a7db421be615fa9dddc077e1ed4882a4b4af6f46b89ae103e05360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023049fe5096a8fa831fd4be9acbfdfcd0eb27dd908f6a400e3106bcdc7990157e205907a8eb0dcf5b9e6944c280655b8a0c02300df3454edf9dee15e546402122ecff385d8be269d64e2ca239fd7b52118e798cae6b533643cdd5a079a9ac47fd17bf510302047c435bb5006730650231008141026078dc5a9383a4ffac5b087411174153587c88acf8c3c9f38e52ef338d33fec9c2f9ad4fb7bfe30b3bc2c68068023015ed85fec67d197960c9dc9ca68048d409eaed5834cb67382d2f5599a6afbfa421278af6787860251c7e21109bbbb1650302047c435bb500663064023053a64e9196705f105257c23e769f1cf4dc65d279144d20a4c1baae7d4d319b415ec3e9343942844c84a4397433de5104023031e02480b9ac3f839cd913db5606ad7f9897671299241014a2af8684bbc2ab5adecf8ab3be897e971022d684bfe042630302047c435bb500663064023063147bda41dc47faab3456c46f33974dfab298a67025d91760bdcac5b6d2b81332235253a8f5f84e672ada0bbaac5500023063d7aa73fc7c610327d81595ae9cf05083ead440c79c14620a7144e83ce8bf179660ec866b58e41f8d7eab81ffaf09a70302047c435bb50066306402302a035e28ecd36a4ca730bd461c7080d9bce91f85adeeb8094da9e9dfb29386a8eb31d195d1637fa1fb9eea85b02a83f10230061bfe33467d0dec4dd24fb3f83a8961d002d8d550dd8a4ea9e47ba73d9f43ee0fb52a20e6d5e2de39f31702205f85420302047c435bb5006630640230120208bec9389114c917ec99af096d259a8ddc7475fc40658389ea19b7d1052a9d5c78f782aa041614b59890df3e6b0302304330d82f87e614a2a7f35f0f1fda5102290a8264ce69f6f71780a12c2384202f05ea8ef4e88549d49f578e80983a00940302047c435bb5006630640230426af19a27b540fea892e04c5a299890c6a93aefe5e02d92622735801d2cd4f9b710b5a82ab7e62721ee7e9cbf7a810002304907162153e278991d7f001ce91c75d6839bae7f804a77de7554322cc3ed3d5fb7bd8e8fecc32fb1dc6ec4c8b49702f50302047c435bb500683066023100cb26b8d32a359d3f399fff3274531782632d45e1021a4c0b36c10be310b9163d2c67b1bb06fd8eca9650ccd5b96d59b4023100b008152348d0745975934508d1f44f0f0a14769e975532d14af5dbc14861b28dc929aef06103ee0ceca5acb93960d8c80302047c435bb500673065023100a3b485dd6df0cfc736ad539af492938089ab87415ca70d4533bca3469dceb1579abbef40b0e30e856cb1980c118a060802307b3def547560b36dbdf206e2526d20de295241af65e31baf28f1d4145bdc1e2490386c3a42932383ce4ef2ee891ee31f0302047c435bb500683066023100e4718508c7dff2584334accb44879f52ef8c763eb395dd939cfa7a28d0de9bcf3b97e1dc91d3c0dd1066f4e4238f9e0b023100d10d6a0b329c1fe0f187e23d220b84c84a79d7e493960a1137b0a79166cbd90a068efef19a082bfc43ca10d9e552de770302047c435bb500673065023100b11fbc59a2088551a115d340fc4d9947b849f8eef548a25a6cbe14f28b2dbea77041a617b657c3282e9db216c989796e023023bf3c424775a97f0e855f27bc8cf5e1bc502f95b13622403e4b99d22f0a3b09e6d832a3082384d8d93b09bd86fea80c0302047c435bb500683066023100a9ee22286624f2870c4e25423ba8e731edad1c2421e1722be952fbfe54642c2393bf78343f20f352a3a0480cabbfcfd1023100ede996363bf51bf245578ef75b08b93aeccac93db88c4877bdf9bf6979d8ab6e97f5d1f5209516bd5b962be393b0a95b0302047c435bb50067306502302053e70c90e9f449f7a59b974c2e5b4f99be4912e89b783f9eb140d85d9f006b965712a9d5119584ff803f1ae9815b55023100dd8d0abb02ad17818c84cdacdd1c019abd8b6710276408a9a99b9dce9ad70938f6347dd3b1ff3f6ef0242563f52a04820302047c435bb5006630640230209b7c221f19b2e7c54f8842ae4e7e89f8862c6c74e58348b29c75f1c259294d9a0a8ad0342e7f3a05842524280ac828023009e2f8a6c3e328c9e83b2b34c294c3d5bcdf3f6b78203b6c834e7acf066a5e8df7352929755924b4810e08aedb5812a00302047c435bb500663064023051a2f21a76d5c5dd55051e1c3742a768b346bdb3299161d3478135da5b4bdf08360dab7a873f076c5ef2197ddfa4564202304ebf174d031a72c05f9703944e44cb2e0d742183384dc23ebf1bb94b956210237e54feb6b72058f168b851939dc885330302047c435bb500673065023100f17bca2ade0b9e8288296f9a9fe330b582fa81369e6103e3cf2cb35571deafa2770584aa26500753850fecb0b9534a0e02302cf995ac664412ef513c5a9b99105b440c4469ff2c32af41b273a8fb1f2d6e75ef9a334bf7ebc85b1c4f84405c2888de0302047c435bb50067306502301dd5e00f3e2701a382f76d73569c9eb30fb6e328ae291c1aae05a2e25104f9dc0770b290ed5b3ca953d9e485009d223e023100ccfa989c0f460afd2a048f150216d85f35f162a5c894d673076da66ae41b089f5d4b728da8a096aafcb5b6161ce6647c0302047c435bb50067306502310093527dac43d933baefda6f1a44c77fad5cdab25c5a3b20afff65aef8347e19ba8b4bb95d4452cece4d3d0a6be90f5b9902306686c0ad3a6cf08657490931974735cef18c884684cc72521eae1aa5ccde0c4e15e7fda449d00bad6d7d9667f9d2185f0302047c435bb5006630640230148dc202140aa9245ba682eb152ac187d97f1876ec50cdc4476f855650daa56502344e1b7e1391978ffb577d88328499023053a21393dff82ed0413ea59a776463a0afee7a980cbda069d1c090cee2b9d14f173ed32d64354c33926efb5c2bbc0e7e0302047c435bb500683066023100b2ab2f2dc563cd856b6e94f19e10b9eddae5bd8f896860c99290fbd2cddc00b79b704f1e09158a38c7a50f251315425f023100ff7c39ae09ef92d233220022842316553d30ad3fa4a1148546665a037975b4e271be2800de3f2e4442afcbcad84549630302047c435bb500673065023056d6a4fbe5f632d1962361c13f24965b62bb9dda714de60dc8be43090163b47b4ba62cd95707b581e8849890f2084ecc0231008dea439fd2aaffe50f73997aba2f0af6af4158fa1b47719998b8671c40071d5c1b930572c3e098dc7ecc7690820a36c50302047c435bb5006830660231009ebeff08fd1f4d75f90187b2caab4d9099576ea4828ee0f5664a88e3551cb9e52e26a75ff90461e6cda035997c627b88023100e8db219b6bb012c604ea19d7b17eab719da4f570250bafcfa55ba9f15915f6b0374cbfbd8ff884cb7aa9eb0934e7ee8d0302047c435bb500663064023010a68eafdf8f1810ae858bf4e332f60d3cc50b3d63ee4f13ec0d6c490c1ba49857d10255706a248e396bce5e3fb0b5a602301ec1164009863d9fa18d0607b171f2fc53c5f9b5cbf7f349b9ca059bd7d65dc656da9db1f12374ce6604c8ae4f5d82710302047c435bb500663064023042491839e1388afafb94447a09178fab2882468cbd48401387cd3b6c832a72173f5083a47a2541eb171742cdc683f20f023021d31b240cf35b1504f9cd2a89f9ae245e19ed0173829cf6d212c73a2d936ff86fac774d41032aac347f957f8c1f4bb30302047c435bb50067306502305cee8aa81b0f8c9806dd932bfc9cceebcdd569a5b5d22f561a16fd3224ae74b886973573370c7c233fc1902a5e9b24f8023100a7e4db6bb106f2346f898b5efdec12b0a9afb0b1375c88e500d080b3616472a375114643825e5b17de6f9b5b856a2b9f0302047c435bb50066306402306be22c4ac594ac049e57787932e369e693427f9662170e5f0e72601a281efa792f423fde6a3458e74abbfc99b7d1b33b02304f07588319e44d313cd4c1820fcc8e1773fcf0cefd78fd741abce1d6fa19b165fa2d447f353d9a7700b34bb5671b95b40302047c435bb50066306402302ffe6ee7318cd95753a9a63f123a9d72476681e1796f27982428e4635e5c80704a1b641b0e7491190b5bc80153625f1e023015d82fd3a2eb8e24300fb57e777347b4b6db05831813bd06df3d7a1b5ba2c5b63b7a76177cf3a797f8c1b6222e1a1b1e0302047c435bb500683066023100a7a8733ecf1f0d99d2d7e6ab4734f6f6bbb0176f0ca35d87de6dab7b8f57c5b8a4368af976a951818c35820e6207d281023100b7cb680c2a053aefd835e541243d713ac2295511fdd55499ee65a69260dc04044b54dda41a7bdc27a2fa010448c2fea70302047c435bb5006730650231008e1385fe806f1a3eecef7c12cd14fad83780d615a991d00a26545cccc0f00ab2194a5141479625a6e16ecd6a3877a94702307354b9806e7e0f36aff711be905f918d49b39ed27994617f32a8ff6e0c7543d56eda90e2633e2b0ea5991e8f4e2a32210302047c435bb500683066023100fdeb0563d74a650d56dba7505708f2e7d74eb6221001e38d8f173058e5f292cbefb9486324453c8e4d6a3076940764100231008adb8e7dfeb07fdef1707cbf492eb5ae9ac9b82c1d176053ba3bc51d69a28be06a2fa8bdde7d5704401d9b97ee94f6f90302047c435bb500683066023100d704f7dbcf8e406ed490f5193d32bfae59e37c39e50ee010ac2a919a542af00f301b201a5e7aa80df675b6e16facf4ed023100e87ea1d4fc033905c40ce6836cddee69ef590b5a4d5c0fd5b4b90c0d46a4a77c0abbf3afccb718e32914b94843d28bca0302047c435bb500683066023100b906dda061770f9e64156d122a9bb7f4271355d47fa568a392dcca04fa597f96e69f58c2230bfafc2b9ae122220cd69002310098d7dc17772ef570193f77101196bac1c00a5d36281cacaa03fea08d826bfac800a78080115e9382af0f9728ff4e7ce00302047c435bb50067306502307e57cf6753522b6d4de0cbd308c814ff7fbf1562fb2a8d82b49a61aaac86547d12a069442c2833ea56d03a64e40c186c0231009c134ebc7277f97fa6fdf44a07b5337419a93dc96a46fc7a2ce012b800c96d699af2e7234d652132c8ff0f1fc3e182ee0302047c435bb50066306402306746c575d4a14921b0eb7e65c78d433c70cf2f9db72dceb2d04f6f19db6b6ac0ed391a3762c0a55f7acc97dcf557170102304e9d6681275bb488b652686c9d3b04b9a8f9fad5b898056200699fbc36b0371386c6ed2b96ec87f153e4eda923e830f60302047c435bb500683066023100e2956d4e10d62a31fb8b32294500a25ffb81ea8e44816fef96464ab25dd97877b03e822297a0f5ab6b44a67d861d6e73023100a93707614d7139032fca33fc33529ecdb6e9b85e9b4b8cdc36325431033556187cf4cd862a26da2d5fcdc1456b3bfd230302047c435bb500673065023043d1c45b42d68d91e652971565a9a18e929d955361ed4fb892a98099ee5c815810411246fcd0884da9e455ca670baff40231009285a622bf3badb15a9e189b599031826ca12ce729c21ee28acf59459076a531a0d5d0ee298b7bd906b5cd2cb610cd820302047c435bb5006730650230117b28eddde22dd07b4f2d4fede96d6fe47c4859970c8b6053ea544a4c2ecdfd26118bbd6d4dd009759a7bab73f4aca3023100d907387dace3da10a7d945e6d09ccbb5d37c498f51e34036347295df53a88834cefb6ede0fc7b0070d5e9e0bf4f6243c0302047c435bb50067306502307eef8b8a158f0f4c0313b46bf9bc31335a5e27fd85908e8b85373e45968240b73e32f67e81ff234274ada4b1d005ff37023100b1032f81d8978495aa0d4b6b51fb7712e6998da2243b4b2bbf8e6bf839219c0c831f1017d07b17f29534c9c5ac2795950302047c435bb500683066023100f3804fb848340f593634fe38dc4628216046c70e732894d9dcc0a856418428591473d63e3eae492b5b33d6682d57e3ab02310097c1cef77dea9d2d0183244ee4270f584ef46a520923b1cd22d6a7c720545b2d7a3d4bc90a567e79a5f7e0faf2f7e3280302047c435bb500683066023100f4c336ac4e569c3a158f22e9f43f1127e684f158ae06f81c1a7ff491b8864c915be41d908dd74faa48be18298db4448d023100dd9fb22eee7e5937c2cd7d4a45079320e35a055368a9242d64dbc73a2012f5a41cf78ac78d793ed1189af54931b53a0c0302047c435bb50067306502306ec856c49d7b453aff11607e929a0f4ed24b151c1a928988a4a7873be54bfe99ffcdf1641049655db189f6d3fa57f0cc023100ef60fd10144811625b154e18dab394d2c0a6eb3ec1cb4dfb502d1d3725f21b815db02f559b8579a5a96e258f7335e31a0302047c435bb50067306502307aed01608e369867b3bc8b94e378541bafcd7035a8d54cc51f65132e0f141f0835bd7dedb85fe72189b6a591049ee5f1023100ef0803b9593ac9a27396c0a063d4642bb4f123203b392bde85a84d5a0ea66a53fd96d3c0fa039b2d8b516c9f4ab333c00302047c435bb500683066023100ac5076215181fc3ba03c295c536f07bd6839c7e8373458331d9ce754fcf1ba141eda7bee82482a12325695de2cfa6a660231009e33467e2113925cacd6e3a271306b851a256b586905bdd5aa99149b6dbf1317548ad24a01a72385944299bb48db10080302047c435bb5006730650230313eb679d8277d95eaa0ed137f84773102033381f26b7938b4a764fe0aba6f8342d436acb6ce9ed0324724c8dca88095023100a86a6ecac60082da6850e0c98a5600609913d49cb410446f4420b3fb7b7b3002b1241f6a38b8f538eda850b1028bcd110302047c435bb500673065023100a30386845fe25cb2c46eebcb7c6dee870fd272f33382889266adc6460b5f4928a76adff0c7cd6910ab28e0859d63e10a0230029b312321799c42661841de7b0cedb84ceffb86f260bc404abb49b147dd8d67d55073ea742f33da9ba493127f002fda0302047c435bb5006830660231009cc8991b14658b08c03cdbf3a8dcd24e739db1729dfab07ccbace72067df100e6938544a541cd5a42431be9b3659fdf1023100e448981bb7231ab02b92261ae050f3c0fb216fa5f74f577eccc83fba0bebda7314b8c4dd7982dd047f9aa0ec813eb8b70302047c435bb500673065023100dd6601f84e0e1ec6e118ccae5ccf166bc9eceae761b571428e5d3d7d5bbc94cff3c1b386cb32435b5ded0dbe528b808b0230642033f05ee1716cba554cb9e715aa00b74aca4c04e98a59023aae21e9b7b1ffa4db955a8b5f51a80b975abe5c7022f10302047c435bb500673065023100cc51b33ee52821f358c237f8259aa0727bcd04ff7ec886f9f5d984a0ad3e2183ccbc28f3d72153ecbaa3c55d762c693702307e0a29976a6a5d3771f339956f9cd7e27c46210f38aabe289575830000d1a662072422c5b34d86c0e389319d249aafc60302047c435bb500673065023100f90b75e0bb38bc4ac5325b0be2fffc6cffa33f120f77bd55cafa2e5beb98144e23d56049404c6c23653a335f7620a614023002746312472ceadff3e0c208a8f4f74eeeb0be868a9ac83b124598cb7376a0cd69ff8b65070afb2f27010d326dc970d60302047c435bb500673065023100f62bb822670615dd5acaa6e36cfa8233a9d2103ad59984e205fc2bcacb024f6e377abc5d4b5e9a6a07754a4b40800bc40230554d05f51712adfcf48dc02648e42e06887f4963cad304a7b613a7717164f252feb8c7e76340cbe8a057b256ac19fd710302047c435bb500683066023100f0de0e150ba7d374cf3285ff0cb6f1555db46a201ff7aa37572fc40fe67f092a01e0f246fe0395bdb6a87b84a40b108b02310087f0de64b6e5a2f732fb40fbd932123f073862b7aa3f269d7eaf763c28cc23e95e38c43ec77594d9ba932485c86e30240302047c435bb5006630640230179b7203a58e12d00f0429f75faa90c19db7235443eace4d424823ccf93134e4755bd6437e6fc14d40e1e8c71f12f0fc0230028058ea999122ad5ecc7d09c6eb344e0b2279d81cd7ea632f794530a56c5fd3ad96555e47e7b5f0312ce1ab588c15b70302047c435bb500683066023100eb62bb8fef116794ad160ee15e5d6e8abd979c2d1edae385ed29baedbbd952ff26b6c5d5299e86b47ac3d460cf28627d023100f81e28274f78b86cac67a2d322d5f08e15eb0f353968afb9597328fc3715d4c06bda6198b43d7d0d1527eb539eb019ce0302047c435bb50066306402304435112d1332998b4883fd6e78d31b1bcfb554187a3e9b0c5f6a25f93c11b7e4a7554b9cdfa63ef3e7f2786371c2db18023003283c94cbe1853c59d9ce342c3bd6e983980c78a5fcbd5958a4581dee0b82c23caa3f85728ad5dadf72599eda80d9a70302047c435bb500673065023100c300ef5c2d52efeb2a4eb25abb6e24aa0b2928ec5885dfdcbc1dcba25d4aee80f0ba3102d2d76960c504119dcd4303a602304be5b81d3a4741430f0e3c8c1f5a4ae3c6db19d4f89b88536e31848275b1b0777f195fa3b8f23fa65e4e88e64626f2cb0302047c435bb50066306402307f43bfcdb0b0941286444c0789f6fdffe716e75934a98bb09daaafa68f4721c7451ea324539e4e484fd59f3218e438920230731c11c8290d354952b7d9899acd22c994b1b2c94f47e06c65b3ecff716002b506e83d48191cfa88399543692073e8480302047c435bb500683066023100ce58e31663e9d9e29ccfc2d4de386ae1304c6e2d032ab68c8b61f22d015d26f2c0aa1307f6775f4ebd18aeac43da39b5023100e5b2959530980b010ecc57b79499d46197d1a38c88f136060d9d59838610887748c31213bb053f4860527990395f12310302047c435bb500663064023017b86f78f7ba04e287aa57d83fd1fc7364952dc47b023192a83a511d91f4ff4f094d94f8b43c29cdad28a8909c06d491023079bf306f1138065a0b16175e8f120f3e982b857316e64804c1dc00cee5796f947a7844b67b4a3175cec848a2ad8bfb0a0302047c435bb500683066023100e060156556b5bbfdbbae15f3671ef0f24de818528515332c00ab29628051844b2581e8255d28143e7cf23e6dba23c333023100f0fb87f7e62e7d0e27463bff1bef21347bc20f2cbc91cefd522422b3fc64ffd1cb6aebc29c29088477f340c6194272ad0302047c435bb500683066023100cfdb0f36e0a7b93e73bfb3f57196095eef0acc0b2b9c3d3b7c3595aea2cb52928efc2ef61e28cbc69c6e9a54e4db2a36023100fa7d614017488c635f716e9de8c4bae7ca82cda81ed69136f3d0008f89f1a862e5973ee675ec71025641e11a45c249520302047c435bb500673065023100a4518edd844a94a96dabebd083f91ab6dd76c0250da82e550caadfd3aa981f607cdaa40fa3e68fc657901f7f699fa86c023028dabf75fbea8f1bb58014f5d3f3caf0bf6325b3e36a6988b529bb2a065cc16e85e417dddd8d3c4707401ffafbdb9ade0302047c435bb500683066023100ed565bb80780ff0a1c8e868007d60a218387f3ab2719d0185cfaed78a8a8667f8cd243a0bde5a89b70bfa67d229fabf1023100c44ba9e3508ac7d85fdc45e00e4a0248d420f6275ebb82006e69b4a5a3beaac6aea781c7ddffe4032e47316f28bc55a40302047c435bb50066306402303c808484c8e8a95575da37fccb5684b57d75f398464c48901f15a882f00c302a4480d61ef4307a42fa5c81124ab1c33902303d9880fbae1b4d8298b386944d83183902cd3690e80be70779f63fb68f69034273d6d5a8dec7d2530bceed41e04988e70302047c435bb500663064023079a5a8a746ad1a1197644a872c9df02d5f1fc543bebb3f5717d2a093ae4a45ec639072b93bcfb549bf82649f113b7a5802305d7d7e4fb0f5c95cf8d2af4ebbd6d3d8148f5b77b27f0dcfb59f400f6671f0f53903896f183b73ac55d84535f8891f1a0302047c435bb5006730650230061d151178bb46b4a95ae698f52201451c1886746f86c570d9ee812d72459c0ed6d58ba8eb133d9b1b035c56c11c948f023100cc77d22d3bab7c4537ef6b0d89e92565f548949ed88ec6c251f5ef79e1b3c6e65047eccb3dd0473f7a3ece63f71e06560302047c435bb5006730650230469b0b23d4b441755542f123c60059d175e10e540402fe4b1e8ac1ad88f874340e64026b376a16d446c0eaf1a655d92b023100cd5db09d0fd950d9ec85d2df757cf422e19e0601b367da67e4be80bc346f18710479e85709d70d1599eb74a7f3c661d10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306b253649c7457f2a97e7dca35ae0416b25ada5169661fce3e21839a5ee14ac6c62132ae5f093ffb5e204efae93e995c1023100ee0241eb83e9fbbee1f5e9f863039a3f9433e9bb13862544146ea735fc51163e98175acda0aa792ac3bbbb0acefbf3d60302047c435bb500683066023100a4c23b12b5b184b0f2438316ee56465093608bdb6181fb60e341d2eb51b5a0df0a0a3345e2e85ef53b76f565ac26cd9d023100c053d4e52c4f0432feb872b166350646166582c6f30338ccb8b7741f4a0f481d3a7e203b02db24aaae887fad8a05c3f60302047c435bb50066306402301dacd4f428aa5bfa58e897053d50dce4577f2fdd72efe68fa8f1488196f56bb51519cf025d75f408067a467cd8e928fd023037519b4902fb45188799fd13887d5c00efb0b03417801efb12927f7bcb2c92c57a462249a0d43bff875b20231fdfa7870302047c435bb500673065023012aa4a5b8865de824e23ff2db46df4dc735799e592a4c8102d493ba62c8b5f8d102e08d1c99637970d4029192289a72e023100db044c9672f881bbadbf7a7624b2fe62959acb9b459cb3c6d40f648db73e6ba0e070d106b4e751df431f1576a9c75d740302047c435bb5006630640230024a7da5048b665e00b534cefc6c12f38478714bbae87050475440da9587adf4063f2911fe6bd917967decf3f92c591f02305ed51c1af0227f361a70da16d52bf33bd8f4805e7c5e509122f22d33c31a292611cf9728b33bfb4587ad3517903f5cf70302047c435bb500673065023100ba3761a3ca7b1bb7ca117f10b9611f0b7a507fd1eb56a971a58190d4f790ceaf1a7e876adb8eaf7523d5767969f99758023068002480223018a2a9cfb753c6dea2f9b19f06cc673b8fb8d294a8e3ecef42efbc6bdf9c8d42cfd1f19e1fdf78c236610302047c435bb50067306502304b1b2b8ce1e27aa2676ff75941d9d08e790d8911c56b369ee8a16b3fa3dd4d035864b1ecf37bf62634db4222940872fb023100cb2c75e93746d19525ff487c4a8d1dec34d89e448da15e7539d4622be26ac7a8b4bce3d2ad0c78900ded9b8d3942100d0302047c435bb500673065023100ccb45eb9d1d947dd594763db712f105513d0f006b0e9e4c5f99171d68b222bf3660a6dba3b8877a4ad1e8e42549bc5e402302cf4fbc3b2082b3751dd0f25a2cb608786d921e13a34a326ae6399c379abb0e11b2d3d1d0b722498971275f1a5e838a90302047c435bb50066306402303e5f26cee91907766caa7ec4370527b181e1c094348f507820fd3256f1d691b7033ce385d17025386df3f3d249c2fbfa02301ece46313a71b081a9fb4558cb1fe8703831cc884438680ce1f09885944e042d3bfc647404c7798c0786c8606042ba980302047c435bb50067306502304699822430b7ebf5468df8abbeda74680b1aaf83e7234ccd3caf085405dece0bce4f7631419eafd4849430fa3ec842f1023100cdf706f378d490ea37225e05a9e17f1c01f7721f07d646c15a524394e46552c475fa4b4bc983b3ee93a3b236a7dd2c040302047c435bb50067306502301554383e5e40d47f670f44f12e3479ea5156b565a7c34e3b1c75390507cf7d42452c11832eadef69df99fd2fecb604220231008dbfbb3a073e9351f0bdd2aa50a714fc3498df12257131bf37dc60bbff9e472ab58355ac048879143e566ea563086c5a0302047c435bb50067306502307635e40c618a3ff70e0086e6b2b9ed570fc2dbd32b9b79e09fad6ca5beb4f443b421d678fad9e5c7e4aa78b9ca4aec73023100a8a339a81b6a1a5e9897032045dd7cc18c2f284ad111174f430dd98eb1a5dea09c846cd2f3a289083b18afeca6f64f810302047c435bb50066306402302a1ce9c19771862a899fdc2f8adfef60a399457bc4a08aa7d8a0a6e5284d36c4401505355fbc50a032f638663930b5ab02301150f5f1410bb1e1c1558b332bf7770ff61361f3cf35887395f5bbb2c39fc1bbd102e14ffd8ff972275f729a5a3199e10302047c435bb5006730650230232869408bb7f24652ae0b7d8779b8f2a5a53aa844258c8fabd308ce4c13962620eabb994872c6acbd4f4127a2186fd7023100c6677aaf26e6af261e9f6bfe410f42885c16f0ee9eacea025080cbe29cc2d04c5866efea8020e5261ed78be2ca3dd8600302047c435bb500683066023100a1f630c59dd212222d56abdb8d3c1d10c370a1dcf057f0a6de7b7d31b115ae5022ed38962fbd0e36f8f5dc07670ee4a9023100d82be0188de8fc7afb473f679dd5e81c20a9723d95120a18b8732486fb17991a6e09d6bd39e331c49c7c8e49906c08980302047c435bb500673065023013a001b4d4b6406d40fa412fb6fc67d253568b67c78e1f5dcc57447d5744ebb26b6d8c1949be9d10d7b2cbd3fc1f76c0023100cc2a2f28d0b8a9ee98453a6cb736fc9858564d7a7fe39cb50a85120691765a9295c8b236cfd19bae1aa84ac64c7e640c0302047c435bb500683066023100d944f749229a9954261c52cdffa494dc34f2a428fc85c6b66d7eca7ea880720a6adcd3f19297275c700d3fc616802160023100e436f1fab56b4a0f12a152dd3bbc76e7338fa49d75fff08cfa589ee0d3c6084cc426bc11c7cebc2f62c21eae7a2948540302047c435bb500663064023060eaccd22f3bff300647540662c3fe560ebaf24d8b969b31969b10f0f7c11f0938734b1a4014b970d315eb9492b7db6002303e710a00a687cd6ee4043a3ca212ef1db816ebbedaf0e64d9fb13b96b5e086b0a4615229ae671b1fe66a9afaa407cc3f0302047c435bb50067306502304d32c7a6c273ff2a05a69fb0bc77b70a11fff6bb9014d1fcae2d037332b834fe7420d1a2dd71c0614139d3146f1e2795023100af6b16a2fbe85d706794cfae27b27084b37565f38d773c3f4458bb4beedc8c6650eeac116fb979dfaea37b01e0c813500302047c435bb50066306402301db92eba11d557a004f93d492684d0112e65897ae1f68d4e7b51d028205b8fdf09e69765ff44b7e0511943cff1d12c5902304b4dfec2006402516a2a0fe077e0bae4795fc9f46057c66aef1f0dfd12fb3295a2c74df99edd30972db2195b865aaa1c0302047c435bb500683066023100b01851e40e58af7ce3955f95d8b8d54cacde8e59d976877c46fc9d0aee8fb46f005d460149fbae367dfc1c11bd3d45c302310084c413f96186a81ecd8ee62e9226a60282dd67585fd2481bf5995749eb9567ae9af3e02cb6769ca05de5ab08797dc27a0302047c435bb500673065023100d9defe0796256d16c056dc2fc3fe2df8ed6268ea83a208d62ebf422b89009e29c92c20e0766fa214db4674ea4b3cc04f023001baa891da9898f9b24ccf44af7f4d7f1fc227d9762fab9f028c8115c0ff0006e99667ed0204543315d421ec5da2803a0302047c435bb500683066023100f80f4ca7364199990aaf39e30c69f6292714eb4f33c4ae3c690d97a77e87907037d99c5cf9f83528aebe1e7887dd17050231008a24721afc5b977a286c8de493b17edbd56bacd178653eef5e08f9670c68c5666c16c5247f972594ad68ea984b7223380302047c435bb50067306502304f168133c6f1fd6b80f3b805a8227b2a71763103416f47735392b45a00b2ac53b03a28c9f092c3eceb026ec5a0e1f020023100d48d803e20d17126a796b164b1c284380fbdaab4e7730956d079aaa2fbd451711626d289eff83e82d85a04a60a2db2d50302047c435bb500663064023053d067ccf1f30b207d20043a442fe08deb2cb8ac073151a305ab166b5f9246ce7effd01c431585f4e8a760ae02639b5702304e7ab63c31d0f688dd1ec6d2ca6d4b335cd3f0f03aa3b2a3920c823cc9ebe63ba2f908bd2bb0e5fd13cdcbd98efb92c60302047c435bb500683066023100ca3faafa003a5d432197878b28a5b4a91f43f1db0cf9b1a04f2dc809b17f279bb15694be01361f23fc2f9d83d4fea90a023100dd9a0b5a737345d677e107d219b7dd64842b4b03c4150632e8d026b3cdd331ceb5cec97cf0951fea2dd4c5c4718714900302047c435bb500673065023100d75b7c786b40d2eb2806f82f10fd9b7349aabb1b85d6d5e1c7a5bf772b058b2ea292bd17924b285e7194582b9a13fd7e023066ef7974a00d4e55de7b69ea3781d27f851dd612ad8181389dfd11af4f8019daa3f9abce40f6d8a9ea59c244e01095120302047c435bb50066306402304def912fce71ee14907d3e962bc6bb6a8e340a050f4c3b86ff1f65e70f6659f1a183c9e06418a54d10fd1f51071c9fe2023051f516404e3e70be1e6aad2fea2e390595ebf547cf170b5c5472fb27090a80b5b73572824d39e989efdc6c1c336222ec0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e20a427f8d2d7ffad602bce22e9f1ea44f73816bbfd20d03834165df2c401a164566cd43ddb37b5b0893b880457dfb47023100aa61ba7efe48a0b7b2288d82a76f6077df9a7b0964de3111c45f9cbe46cb17398cb092c59b455771239cc6f23f65fec10302047c435bb500683066023100ceaf03b2533b3b6957ad0c60e4c86a017ab705e30b016be27d29f252b5f1433ec752fb7370b5e462cee0fdd098c0c187023100cc31c66d83f647694b96d1fb1dcf7504690314dbf75b3c46d616f1d5dab55f5c84c556a26c253667bf7416037112cef30302047c435bb500673065023100c7366a473aff3229720afb3932bfff73f13047de22c06d90f0fa5735d6616e36633be098985d42a113face8f4ed6c91f023043500f959c9c85634a5099430118b66099be18fb26c952eb714e70deb0f9a3f849eca147dca6de6041f11be739845f100302047c435bb500673065023100806b075017c0e7bb961bb9b54c5f03393d8b640a85d9b336885a773843511be0cc3563c2e9e64ddbe31139af6edbf91402307d327114b600a22281e0015636213f5fea1ee0aefb740de230bdd9fff4782d1dcdc88cb5eb91af2520d4fe57b0fb59ca0302047c435bb50066306402307c38abb19be453dc276ef3ee47c8f254758b9075a9993aba3039e6a78dc594574e80b539d7bcfe0a69687fe43ba7758d02303976b0007cfe5a8337dc12c3920f1a5ed70a579bf6b15f1f0cd2e833c88e2a848116c35db3378cab3d6390c1f7407cf00302047c435bb500663064023053ed5ae4d3e0bc655fda502a996977bc9ba6152c9d454641fef96b64d9677259b82e8067d169d446d8403e7745fb399b02303a754861a53330efba0a5bda65f8173e9b3808f803c7c2a2577d1dcd2c73bf05c52aca38bb5c9abf463a5ce77bcbcaac0302047c435bb500673065023100a80ea40effad2641a5188bbc7c7d445de0374a000bcce2871b42e4a1e88dab2765985f0b22d65cfce0e1e2318f51a06402300da1476fe7f243266651b5fa055679433c05ed824e24fe16fa78637206c78bde945e445735315008fe8b82dcaea27ab60302047c435bb500673065023100e33cc13a864a3adf63f6ac741ad309e327e0af67145fc54e462ae9a136b0e65c40578a7da49e9d4775c3297471c65ff602303c58ba675d2aed8b4adeaa5e0f8249e13be9eb59f3156b63983c8df040a3731a87ba68b795ce79d8ca737391e0161f1f0302047c435bb500673065023100e68712e35a828afc287e10e9ac9ed2e309a93b4e80904bf4e7d4d785370c4bd8057356a89ba3915df71c854b86519911023015946b89b7978d7dd78c15b8632c672c3ba85a59485b587c953248d1f2a43205f13d6e3c6aeee60880bf4fddd3ddffd10302047c435bb500673065023100e9bd328f5b4fb8088e810d637e25ba4531397aadb982a0cd0f2ccd2ee13b1e496be147aa48a2762c63056903776c238102302b6e83bfd9d2db59f9e84b1e56b0680346c9fca59ddc59e4d880f0c63588bb4e91a15f231d854e2d4cefc0904c12887d0302047c435bb500673065023100ff533901a5096988678913e7da23929a24af91a1036396397ac3fa5f8713dec2a6b3e9263bc02981862e18ab98f0e7ae02302af949e89d07f52784ab63939b22618d671639e40aba7b937585b21f28ca9fe8028ceaeb342cd74554220ea2ca7c46480302047c435bb500673065023100c6e784bc9b6fd140a3fba3af060b2a975bac8d0e4c8dd61305ef15d4485f6b7611620376577ec3ad3b274b1c5055f8d402300fa5c711ec1cdecf895048ae3fb1faf7925ecaae9b83b2edfe6b768085f1ce4993ea1dbcc61f7fc3f3bf64301150eb6b0302047c435bb500663064023013248344f26a5586c89f64dd66ede3fb6b27264ef2b5415ff7b296c3cba5cd7f13bf3e27f24b347c68c27e4ad192288a023037373a81bad0ff0367d48deefc66b96602e5d1896d39db7970ff4929b41b655549e40ef90b60d7644db331193694c4bd0302047c435bb500673065023100d759d56adedab41a5730a9c794625bd778b4ab981c67031a60ea8ebc895d84fab92bdad97bb35a24b794e1100386863c02305d17f2c921bcb99bdb5443971985508a44fda5d0a480eadc765c86dd85c02c20c7a25ff7257628307e283faf825a675b0302047c435bb500683066023100848fe6d5c72f7e87cb0441e7950ce0a7062f1079b2f9e516b547404bf0168a51b87797ae9f977cb485af0b13bf138ffd0231008f97e20ecada2c233155458090dc3df2bad792836335e9eca8e03b0563c3761da6187c0c7fdaee722328e9fe9912089e0302047c435bb50067306502307653cce34c6af79ccade8dc5783424052ae51bb925ea55638f95aedbe12fbb9a5a9fd13771a4a29f6477ef7c370e6522023100a5e2f03c01c6dd709ed3c9e13ce0615df5efcea3007220160466fe513a995fcd916614562fa46e2632a7082800e5967d0302047c435bb500683066023100c69791902cf6f3d2c6b4995ef4644347d649cdb1f0f5618d326812a64f3a28f25e93797e95bbcd358481f93af5d97e80023100d4eaff6cf86e654d712205028761b4fc2365c00b304f42d73c24c6746614eb65f4bd4b4fc0073a6fa6d51f9479f6b4430302047c435bb500673065023100fafc7a89e367dc67b957cd0605b461e4572bab87971bdde6a29acecea0ae94c09a9ad77f689ee5b942a83d4288c49c66023025abb20666b042bf85849d08798944c8db19e909c6116288fd10efb7573a433a141d9a41a3dd4df3b01952479d1885a90302047c435bb5006730650230360fb6f32724e15ae34d77640ddb069794cceb0a2b71f2a0ad3ad0c569e346e06106fc0ac1a558f5072d6cf90da2c4e40231008fe517baad6d50c2222a580011b88c2a31593876f093ff3edeae2df0293e6992338eb86db60dad234eebdcebd25027f80302047c435bb500673065023042d055993253c294627d18763c0b670cdf932537d7997e382454b1fbcbb7c635ad210de4736b9780d106ad6c43d5d170023100dfd7d43766414277139a0b46c7cb46cf68c45f74cb40fc711f873b09d0bdedbe0e589cf15ff2820bbc4ad4b7e4123cf60302047c435bb500663064023062e28b2de0e117a0a259c8f7b99ea841a784876849c21e2faaf3cef91bd80b138585a67e055edbf6e48ae3c4fc0e5c5102306f6026b3af1daeacf25cd908391714aeb61f466791a3c38d54653a154c9962bf3cedf27400d1eda89f6a2faf32bb20580302047c435bb5006630640230621b9e8b86a52853102294844a193c09f1c7afea7faa44530f6c05c1e945cac2a4dfec924b2be299a96fb43fa457e73a0230086677bd1caac108b45526e96b4cd5972009186d1cdd7c111005c5e35d19b903db3215b3e7ebe8a79a4456e5374c90ad0302047c435bb50067306502303e46f90252c49fb70ad581967d2703ce6685b2eee49c86f29722df2e0d2711dc7da994a7b00e23bbc34e9efcb3cc71ff023100e40cc71f8aa848caa630fea72857749896de3f0120a9d5ee4e62b87b02272a1348b54c41a5f9310521c3b242a0b443930302047c435bb50066306402305b0d9e974b73a6389fb191859682da3d3918a4c0ac442c7e193a2615fdda7ec3acb705f2b3a3f533de250b99ace0f10702307ce5b08ba30efbcb82e48400898fa6115a1108b255f02db0390a30c4b6d22d1c1f7f5527ceb798ed58faef02d33e4efc0302047c435bb5006730650230590f5f211422798c3653b3e9e0385f241975e720a1e70f3c34f3771236a6c1bef51e18d35e003b93a2127120931427ab023100a9c87c5010751f787336aca14903b5c139130192e3dd992ef21b569f5bc663e638cec35bd24845d09308ed0c994bf16a0302047c435bb5006830660231009f2176ce062eaef25575643851af32324444e1090206ff92ba467a90de292b0c35cffb612800a05aba0227ed69997eff023100924ecb83ac1746ec2d19ad6ee9ab178cdd6a914b4b607e03e9c73c2b911a3675a578d63378d3bcbcb26360ec882709400302047c435bb500683066023100d8362885d56fa56fa39ff5a45087d413fc14f9b9f363e3d63f61bd0a49bc479f3b30ca73a6dc5ec89cc8ba6eec0d2a6f023100c60e1e94e27f38e3261c9f3a86dbe349ae1368a0e6107e015937fc61f6ee1ad683dab087d55a96cbe8e2610366b4fba50302047c435bb5006630640230795f21d21008b91ce1a5f426bf71cf970f3c53d82bb4d020d0d38e85eb34e9f0b634ed96887f9480ad849fd47727fd3e0230158ad85cd9366b20a0e1aed46ab38593b0ebdba248b2a0be07084c11354142895ae66d789838d4485abcffe95e6b3b310302047c435bb5006630640230681bde9d4ec40a059502045ee46fa87c25516c5e466efff167f23d415cd4ed78e2b0e2c7df4ccfabf208d9b1093d78220230061e676584085f7aca7b140afbdc48bf61e61fa7927caa761dc06337e6b2947a41b5fd1945f748bfdfb39ad692016c050302047c435bb500673065023100d805dfb2718a59a82e31a8b3ca940e1ce7a3573f511ee249a55c48c605421820496a91de5a860b722a7a26a2d5e4ca0602307e65ae086fd4842600d334b1d455b4b8fa96c169fbb21163597411450deed327594922dbeaa5301926c2a852f3e824690302047c435bb50067306502305ab1a1d43e0a804dc32b47cfe65aa963144191025cdc52fcbe667eece95f05a9e61d06240e2abde1b719f381f8473beb023100cab3e8099f4bc53e2599302303fb4771f36e2f3b16cf0217db4e61ba8026aaad7bf64d2d3b40c71cff4894b1acb6c40e0302047c435bb500673065023100ece390bce580b8e1348479dc7c82477826bc33270ed95b55864f63739dd8a10e8f36e52e59a10458294b4bececf3de5c02307e63ff9bfc8c74ff38609a8cc2aa9af9d149133582c4236e82c810093bdcdb0a4cf55bc337e6d9ead5f2f7853f5a80290302047c435bb5006730650231008c9f74bba274810009dd61c80e3935c526b862aee7e26e15b0e8a8af03e137a2b3f9502b8e52f21a334e9fbe2f62f6a90230548a43031e9abf310a40c324e4aa6149e22582c0d5dd55d52fc4ba6c1ea0e675734bc5c9ec44979ad13d88448ce22f890302047c435bb500683066023100b724b7b199cdae4fdcb077bc72680f2ab114f3776af6d52b2f48ac2468de9748a899455748504976763fc0fc8a397b50023100d8759a09e5ecfd9cbcd1c32a473c6ed5667f7a9356a919381c57d6d5a491cbb64b02cca41fd0dc4ef92311ab6969667f0302047c435bb500673065023100b1728c381181881b42f3f7f32c0b0c9fbbf7d57282f4af6edfa0e559d8043d2269df3cb6166ff566ca9e288ebde4f64f023043c9a9aa5d7e5a3b58bb6d45c87e2ae7a8f85f474972051b3ca282e9347ac274af3e8e5a943195c30dd58a6bdd297a040302047c435bb500673065023100f06b59a8c215402e62578ca5e806fd2fcea610251f50db8cc66607a57c37119aca7f9ea9f3a8853595b15739dc3e432a023036b4497a7c29402423cd5f2aa0f4f80826d2507975e263730a930a36ecfe12f78746589b4a75eef0ba125eaa1437ed9e0302047c435bb500673065023100c50cf29a38965be7b602a0a10e7c8132885d267e65122fa3ead2bb5a031ed93af2726503b4a5d119d8ea898c4fbffb2102307708bc378d9f83f9c073ee82932491b82aff1d682c8eeec4c6f5067487ffdb9a0b772ccdcd6728134a6f479ba9e131820302047c435bb500673065023100cbc655087834971b4a98be5bd4a3408088ebc703050b13577052ef361b0bc03b3a7adf1f576d4388c199c6ed5bae0872023072a624c8173eb8f39d8345ca76e68d0bcd5096fa10e32c9a01b264fe47907ea8e9982e78ea1aa2fea27d5de151d0031e0302047c435bb50067306502306b135c6e39e81ab6be6a5a3e00b32aef327595dca91f42df2a97c92d2bc1055385fdc72013cdf7f30ff4582f25becd41023100b9141869f080a95725283798e4af09b25fc0f6de45b18adb9a3d540b02616b5c4ce3796dcfc21da1ef0ab1e11addd9ba0302047c435bb500683066023100d5a80cef980ba1a114d88bf5ad82b3474e87c49845b8e2b38df23ffb9a5c59d85ca58c35e3909542d23f15bde905bac8023100d6e70d717341f753bb97512457969fc68fef821e505125653de468a3f35b904d38fc5e3521acc5f1e7201febed3d44260302047c435bb50066306402303c80b55cb878ee86571345b7f0a6237c66848aad572ade10cf9dd50e6f8dea5e3079e0b814857481a7b3c15a01b0c590023036a595ab47a6573e2e88bbbe882a0a8b507f249ca4f93e8366aa0c1ff774767ab5d8329461e989f90c6055c5ac03d2450302047c435bb5006730650230143f38d27dca9faf17697a6d997f52d1bb33887019405c6bd93a23e36a3ba9ff90853103a79bb914fa4548b7665f5e97023100bd9a10b806f12201a1ff28ec4249a57c0d811d38a3f1950932775325ac57ad644d9e88000964d7e9c40e1829f535afd60302047c435bb5006830660231009767873028a95f384583e82525bc2e7f5d0812677d2e27fda6d9798647803504b6ed3e2a12f9a3c352585b5854685691023100c41b90f694dc4ce1c88088c7ffb1f5f857e94e7d9ebcf4596497783cb0b3128f6e9b153d25749dee021bc7f1d82a64780302047c435bb500683066023100cf2c064043c995a807f61c19b8bb9bf45a499b9ae9a0209fa82d7877d9191dd73173a2421aad2a707782b5c4b6e5b322023100fbc8fc4ceb7423821bcbd466bd4408194a840eed20b082e170a482e1edd8eeaec8bb24293a761b527dedefa810c028b60302047c435bb50067306502310087385f24a840e2f2e94e2b1fd07bc1644b13e43db9aa5a172962f5f9026d5e21ea65d2ba54ed7d2fc9c3d9dba006469c02300e336b9b239e6f2871604c992034b2910c12ae7ab79d5da38288734169f20c3af54d54d170af038660263f833f8c47ec0302047c435bb50066306402303d4535f83044263f8cf0094859c065acfb1f30761befdd9e8e76f569da2df62e7ae2af2ddca7970c38d2cfbf04f99ea4023029a3da1d500488c6e00f0cc5fb86382a8d74000e554894bb7062aaf805b321e050ca8064ccf227074b6aeae2ec4775d00302047c435bb500663064023060ca4cd91edbb38d4019f7b9eb5808a9c8543b771ffc36360d34c9b029da8d75cce86bdddea79d4f316345b159b7e3ac0230658c7492061af549352ff257f7529bb700b75f7c3072cf5fbea5b598d255d34eb9a5d304406371f16bb8d88511b044270302047c435bb500673065023100bbb250afc828f7cabbe71870b2e4aa4c5fda21c6a3b427b1c826191172356d1cbc6daa8f48342fef98be288d442956c70230556c412bc7d3d1e55e6a4b719da67c40f56225e15ad6ecd4ce5305c546cbf3e774c096ff80ff1c3a8847d10a513887fb0302047c435bb5006730650231009ee59268b78625145e3b96af09dc4b1b9739e9dd646a5c0c7e67f03dbf230b76307190c0b917a55a0553bec09d6218d0023030fd96f561c1fe6d37f4863dba6c4f49a81e548a53a7fda516d35577fa79f669875ace37910a06d09faaef6b9db103b60302047c435bb500673065023068e936137d7b1859cefc55b0eb77b7c4d08bdb2c40836cd65e51280ae0e0d62b6d32ecc82ef681cafce45ef493ed8298023100a6c3aae2979d14adc9de64c990b6c7360d3d00306b03393218b824640eeda6fa30b3c4af7564031a71cd329f85d3daa60302047c435bb500673065023100e8536ff5cffcd26d95e9f6fc043238f4cd45e992f068fcff80ce6a8e95f19861aae5f10aa9966c973803fdcbd54e3f76023057fe45a5781836c494b6cfa854def04e5dbc64ee8b554247b9465a38b20f8bc7d5cd3aeb1147565cb8ea56c7f18f06b10302047c435bb500673065023070aa8d8fde02b29a8a4157ee62f66fb11d427df3f84ad4ae4ac38f3f153efafee9022b67d924e7f4810436d7a7c55f89023100dcb043086a29868eebb4e019c05fc671847c092034b6e9359c09c26a40504265d92a197037bb4fbdfa21be68b2172bb10302047c435bb500673065023100bc25bb0df0546e6b2c89fd24b52f7d0791338900dcfaea657a13a5092178fb230d900d25622a5a2f05607e35d17ce2f2023073fc5af3e1ad141a8313ebcb379688244e8197be4ee3b213e8f57821e9915f5b97283fcff0a42501959ab3586f5b17c00302047c435bb50067306502310093bb6be904baa7f92f246534f94491752ff9da76367c05f851c758ae33dff2be44cc7b8a61783912916fd9f2d383271a0230055fe7eae891af2996c80964b32da805bb262bc8c4fc8611ba3fae3623db3c63c3867e94da944956cb338aa51d543d1b0302047c435bb500673065023029143f6705979d8d5e01db3128a4b6e12e37a3680a609733780b578b2f2b68e0f1d75a5b5ffb42761f649d533b6fa4ff023100ad074a518ab3652a59c44fc11085b1130cd80f6de8ab1eec9fdd6eb8af6ec7465b8da5b3f132d714f54b9ab7056580710302047c435bb50067306502302a49aa1d0eca31ae178927d99fd289ba2960473331fb79cb090203eaa031c3b1f2123eb8fdb2e68ae9d149deb303958902310082d88bab038bc633bc99ce7af4a169e32f4d96e389c11866fd3ceea43b34d0553257ce53b532bfc82fe57efddd660e400302047c435bb500673065023021b1785bdbd91dd1354ac6014fee203987165476a4573d719d786a2e42c322b9108265c8d5cf08453378f225a68fe3a3023100ad8ab58970ceba829f809cc17c0912957f64817d6673fe291f429e6ddd39523a1af44a4277c77df56f163985017a123e0302047c435bb500673065023100df74930edf32c5f9c25a1b2109a3ec4a7edb2434416dfe4337ba313b647fb78497aac0aa21792dc71e098194babcbf0002307c0d75e7ad10cd443bdb0671c8cf5f2b3a5cf4cf9e290e553c574127e378085d1783e8f59dc03b8d8a18f144ea5f6d700302047c435bb50067306502302412ba768a87ccdbfc73300bd8d3a54d6bf9e94a78d423e37cead69cee91b7d8d3c36a7e03ba93ed3e5d28e00148d087023100edef3f9bf468f12ce9a9b6f6fb160ecdf0156a5c23f207df25c7ed7304e9e8d56c7450d15e433534c98bd3fe580491400302047c435bb5006630640230357be2b90985849bea6c93d7376edd22a33834f3ebe0554fcd177047589d5bbe517aa16e76bd08947f32d67b37052e6602306a0220adbf63dd3caadea608f1839eb8e2f4c0447154135f158dc0f41d28c79c1627cadf0bd23fc8d9b3f043eac6b0f30302047c435bb5006630640230687e5b9f06bbb43b3dfc0c1407d1ca5a5cd124b23a30bcc985ead47399770fd54c247800a30604ed731649d1e8e34d1502306eab0ec46edb7bdac30b9f88bc389bdd22b13d410c054545e3cb15482d314aeca46c0feb409e94d5265baaa4c50b56a70302047c435bb500673065023100e44cc911c85233431ef76e5e82e5ad1f6cdd94812b5ed60587212bdf5bbbea205c9b7d24c06620f4947876f853e44c4102303a3a28bc092a1f3a88acefb80128f9c6222e988a9d06b9685be7c382eef3e3c2359c49aa9327985b45932e9fc598b48e0302047c435bb5006830660231008467e6f9ba8759c831e3a3ee4bf7593fcab0bcce163a47d2682f5791b4c5b1e7ec5c73c9046c906dddecaea8988ef609023100b732ea07a451b59e377ab23a1a4e46ac9b2c1ac6e31b9a3d2bc85a84052ee5714a071f1d7e251cab5aff960fd168864a0302047c435bb500673065023001c84a74790e3196a9f4cde229346656acae88252ac0eaa415a07e409d484090839dcf9d4ceda0f13554b0affa6c1d96023100eca7a6e481109c35648b6776758ed2371158e0fb51d9acb6def0c5d41a50c5dff31423e22c4884bd9026dc0ec2ea96880302047c435bb500683066023100f83c821d1ca975b86d76e4a1f1a6e62b8d72cd8a3445463b28d588b1f2c15f10c65d6a210b1ffa461ee0b6998704ad16023100e05d38b1d6d3a92ee483f38cbebb02465f7f5ab2e7e46ae1e6149541215a9c87414d69379713fb30830a3066e2f61dd60302047c435bb500683066023100a81554e3a03dacd452fe768655f8491f3277ebefc95ebc9fdfd1584b0b814c575519255d136788aaa94f0cdb228e48b8023100a3646d7d88ff9dc6128db7ef55e9e8e62d13fd5213e6b05f423377c178f21573c08e33c30b37090c6a703e52b577ecfa0302047c435bb5006630640230363b80dcdbbebdce4aaa91a18516fda42a0db1360d37f1353322ee972ed1da7d7a1e16c7864e417fae8511c4606e5f6502300ad15cebc6a240d36717c0d6e959423ea4831ea26d37ac66124639ecd5fc1bd440ab854cc6c127608527e179d3ba745e0302047c435bb5006730650231008f8dd2af65ff9f93080a62cd1ca9a0c780f4bf488d3b11ee08643a8769c6778337469028074031e477c16ee757516d4102305190a175868d1b8a92d95bae5eefab60ea39d8f4cd2778d56fa65a619fb5b04a53a8b27c9211e0e5f82a31efb0f4f52a0302047c435bb5006730650231009d6d4d6e20e2a1b98f233eb0d6fc5f98f21c3a510205cf0772cfe118b88ec2e33763ccc1d9b72c4f9d3ea176d97f1e0f023049e1da1ed1e99606dfd59890e25ef23869b38723c9c35c8a13c9f9c8e05c1b76729122c0281ef1008d53def9f964697e0302047c435bb5006830660231009e2591bb1cf4ff92a0b6781634ad43283f37f574454bb4a07ddc3dedf30d43d71ac785e353851fa036be71523005586e023100c1ce957cfa07f46b10e46c1e9661a48b7fd84c6d96184247d5f0fd033685902d091accfe44d0505ff9983a03d5e069070302047c435bb50066306402302dd85ece658177ec906e69b08c9afa002eabe0f1cce12489a26be37a88865b3aa361b9e59c80ad6ea15e4ff26f997854023007562d1e59499706865273c253f73a3ac17ae9eca457ecce00f359c101541998af9ebef7b5e8b1d2af318b90e720bdb00302047c435bb500663064023071eaa585437db9d2e4ca599843863216a19890a2832f412fe0b5217d1a13e6f81328de45229a6d51ba09dc61db7a203902303e4223d24e76ea2eee87a440c4c29c3121a60b47c80bbdf5661cd5f23be2ada33bfd4081d8fe2415e7f3a160c2578c150302047c435bb500673065023100aba8dcb0c3c843897076f8667e9e1a45e8ba36814bc0477eb35cfb8236ab7b3a1314ed0a4125fccb6c29d514f8c491ae02306d58dcbc6bb0231ec394f23f1803a5fa13599b987cc93eb681ca62b1b27b5d4c244ad5e39d67c6e457d90c859548090f0302047c435bb500683066023100e817ff30e42c06b0dc3e8be40810110648f8ddb21206ab28c2a58f5c8f5a6e9dc3c5a280a5aa1fa1ce37fd51e7e7ac330231008951f64053f38c090f12bf965634f62249ae4ecef2ee382a0698a77ba5b3b4686a2cc2cce42faf835e3ac4ac86e677870302047c435bb500673065023100f1d40d3031363a6008635d13dc95204c5df978676dddcd3cc01f63c37c977ed0b04a714c35985a077f48ecbce6feabe202307647e257856a8d51562a172f5b2ae659262cf103d6233644a9aee0c00d1743c425314bcb4e6d03af872894d8f22c528f0302047c435bb50066306402300350317a2e021d2c034066d2c95b4a607fccca5ddd7292884cbc160c9914871e9c1fbca9de9a59dec79db38aa0735f4a023045d45235af995320bddea542a720ec09b94239a54f0648227ba9a0641c2c034d396536bc1e134fe262a49247e76c2f8d0302047c435bb5006830660231008bd687bd4fe1dffde811e1548d0318a39c844304c089df9f647c3d46add012f4200cf9b08dbda3d36aeb3974f89efab3023100e076dd91956f57001a7797cc5371891323bb9ee10553c67438f5b0a0069a595d0ae7fdb7b0570ee046e0f9ea0ba73a9b0302047c435bb50066306402307f60cf9c00c1d76bd0a96d8a81668c72cdbf6b787aa80bca614796110082f2b7e527ce77a67929773897ab8271ca2409023022d7b7af9bc9e1ef6db38b19ad865bd4d491c2f355185323b3bf7959c433e50d4d4c705bf8b8510db5b42a39080437f70302047c435bb500673065023069d664fb5c6846baac5e9d847bf0f330396138da9afc42554b7d9e72175dc0692d6cc23c3ba95467e6d4e2a4717c324d0231009d056ef6558811877b8c7cadd4d3b8cea2893bc6f661808cbcb830fc1b61f96064e701035f0b5e820eca1af3ffaac0810302047c435bb50066306402304c023420dd437aeab3b6494c09509620a92273c96e99d8faf101883c1a690bb3bde8c852c27c9398e9a8323ac22ba68f02306418ced260a66702125247f43624795df7e71bbefe9a756124b082ea044f9a5f6342408db9b796652bc19759b9468d6c0302047c435bb5006730650231009b1ff5c4c70b0db7cd0dd10dd8b2de50cf542417df1900213e1db3fef772cd27f2738d60b97a78963d8b049c1c81e7dd0230466eb31d0e95a1f3223847656c355f993fba29e60aaeff336104b17f50361e074ad0cb44c1bef9605a92a8002c159ec50302047c435bb500673065023100c5a694874757aa2fa660db19e0fb7a84c4b3c9bb519444065e61ce4726d053257d72cd9ea4116f62a13b75c94b6ae2d602302776520f98a6e053eef7314cdf4038cf6e7e2cf6fa79448759081ef02a9248b943f184de0d8b4e3e840a2990a1b30a180302047c435bb50066306402302563a76a1318e7ae90cccff7188dc156130dfe9955e5e7f2aa5a398290f1aa8c222b077804c69dc722dc2e00d857b25a02305123f6775d9ce723939fd8fc566bdec14b9a1c5e2a268bc3f04f9b6b4f00373772b9acd9d78e439ff353286db021ab700302047c435bb5006730650231008acfe7d47fb24105aaab1ebde73ecb34db724ede757d6b7685c582255743458a50a9850d9e9835ff6e7bbac6a9b5989d0230673e840b1859708a1142e8819478143c16247196953b5ce8969ec21e39ebe8736e72d78001350f2cbb9e16ebf56d17940302047c435bb50067306502301108bae4cc09d15e96491997e3c2e45de38e35fd433eeff7119fbe50c9318cb044af7366566f37deb98a2686e1692b08023100ed186cd57ba76d2c604bcb08e06eb33bde7a4b0d917f8b3ff294e27ff5ca9e11159c04ebafaeb6affe694079b9af35be0302047c435bb500663064023075a309419b1f49e5c8957d4449698f2a902ce66c683d1504185a0a695c31ea889bfe044a10085d53a8d4183c69f228460230183a5c468a4385acd103652ac9383ba7b98641890a4d99cab93048f02904443256d439ce51f65eb9f94fe0c8e811fa5b0302047c435bb50066306402307a3e28148dda5bdded1c4f8675526bf75db3c801a283746feb78f35ccc293b0324b6114881eb93567391d6da61d1eed50230306c2a5e7ac9ca71800cb5763216eb9db0009bdbd3363e463b378218ef3f737b75c2eb115ff4027b9277eabd240d88410302047c435bb500683066023100bfcfed052024b38dc16728f53ba9726ee194c694706230a6d4e7f5d145be1f3d0d66bda64d89032f871a54e568700ada023100a9b63818b1503630a0363920a21f031338ec90519df816e346ce2896e0271a88414a7cedf3693c89e5d7bd6a61fc248c0302047c435bb50066306402304b738084f114998531f95cb7859b9cf1d67b79e88ae98b89485625d61747e77aa3ee397377ea977f8dfdcec07902c2f6023047aa1cd8a50cd7cded7fe9e07f0f7e247e61e15c7673de6003ec0cae7adb34c6d42ae75143bd6aebafaba50a934094b70302047c435bb50066306402306fb46cd95596014b7434cdef10b208a1deb5e8464446bf238609aefb37777985383b6b9d7a963e3f3d6f451398aaf0fc02300dc3a5d3e237c1dff57f1e77f6633f9256ffb610b9e7e0dfaa56b2ca44f21f54d6d7173b86c5074decb770fc3be354430302047c435bb500683066023100d877eaa21feaa863266f07d6190facd4946d7516fb15cda924e27a8730a9bb6fa2053298e073e7a8b452525ebaec460d0231009ef8d4a48abb9b7999174a5f4c7be15e4c5daab7b25b7e8c6305955d075c65e654e8e0a5047476fdbba41a963b789de30302047c435bb500673065023100d7463ce5a9030b5ba3287b6b36dcd51bac5aea53eb29df60c67997994fd9b649d2f2a833616f9104c7d8bff8e5870b560230380d26a852c83998e758e3da5043b4c929dbcea3c1a26477f8e8e6949b2e134d9aa2f69f94a1ed8b963ccd3cce5087a50302047c435bb500673065023100b56936c52e2b4a3cceca0e63414a20d3573f1d81f0d44d89b8e512bebf18fb44ad480a3bb31dab1003e50b1ab4ce3e670230406958728d7f3d6aea4987590de934d432b33ba5aab968e247ead3e0d7310727cfb1da86d6e7f33ce081e90376fe534d0302047c435bb5006730650230104907ea6dec3ebffcae9f4ddf72b15ab2e600d8f28db54d9e5570ef7abe22ce7c658be479412a6037685e57838c5f400231009a1ff10b3c4bb48c3ef23662d94b1bf4006b333b9408f8e65fbfc242a54f0825287b1945c5b278c388ea390d412d15cb0302047c435bb500673065023100c11e3e420bc14aa41fb1eefac2a679f9a556db2b471178171ba742c9ea143b2e1d1bc83617069726920524d45a16300302303b49469056a1739d1d52a2c758ce86c48f8aa657750b6ae075e52cd546522cbc1c56a24b83a6262b23fa36ab3e63aac90302047c435bb50068306602310084f6515cc82c4aa264670b9b7fd868bf5cad5bcb7203aada76f8affe981334f8290c5702e068715e7b0a38461b16573e023100bab8616a9f2a9bae0d99aeb9378526e139d5fce437a5a558e65b9156eda1bf517fa678982ebb4a36c5b3f389f317c1500302047c435bb500673065023100eca094a8405b84da43ab3d390d62cc7f344c8b169d5928b4efc628c30af3aeac56c9d97110840405df990954a20a599c02301a51a5e4c0102419c544dc7def72007eab13dffdb29cf184f2cdbf6b35b871289f5ae22377a9caeb338fdd6c6afe06470302047c435bb50068306602310090d8bfbf947332dfa59a3b45077e08d4f9d67d9aaedd18be5d3a42fac5b9adcc6e6462be965c36e74c7ee22bdce2d5b4023100d9fbb380e1b27aaa2c1d90d36b3c536e79e849931294dd31faa07d76be27ba802f28b9cbd94f27c39c3c1ba6978547be0302047c435bb5006830660231008f12c5073dcb7acb36fecc02b384269bc5bb7e60a314d73e4fab20196d5e34b06a9646f1ab4e9d6feeb855ca85c59031023100c597ce789bf116f3588225d55cd0797c158fbfee32a7779f0501e9e3635db62a9ed38c0c31c7e996ba4f06894a41685b0302047c435bb500663064023071eb8e9b7e937de839092a7894d708e9452f6bf9582ae677afcd5ebb2889abdf1702118f5ad5f70564417e9b7f66ec5002304369b766bbbe342245716ed441c09fd4a8daa390a92ccd68012cbb3465389360c47580c51fdd500b4b136e63543436070302047c435bb500683066023100c81eff1b92fcb46cb80a83b693a95164c88bb3d413ac4d61bdf1931c24d3b5d8413cc0842c4c5a41f10e6b6469040a8e0231008539208f3fff996a0725f882465a1254600467aafef82812812017121e281f465396f294af42fb4476f65f139e0eb2600302047c435bb500683066023100be516c78ebba44933978b4356fd1ac7f9e436d90526fd8f14b098c4d61e24e427b69532eac680c0d5939a10a492b97f9023100f279ea64f49ace6adb3ba69b7d9f0177a73f17ca958e02f5efa36921ed30954313de9b60b4ca24d87341940a9fa0e84c0302047c435bb50066306402307ab59d407141cb4300efe54e34fc947f2b38f7efd861e4c8bd1afa879893bb2adf7bbd74641946bb9d8000004a8a97b702307a21b4ad28eedfc24529717087378d22a3aa234e8044dc1d56844da072f6df46a6e798230886eb6fc1e4b95998603cc10302047c435bb50067306502306b9d02842da9e23d223822f83fa50822ff0281b6fdd6f6582e8df8d50643a09c02d9bcdcd24089288a5b2cce83f4e115023100a07abf2ca0480d01747753f703146cb71489a82a28d83726840a6d9c5da8e1f0b773096fefc5db51a34ae00fd916a2370302047c435bb500673065023024da8209c085fc9ca69f9f965ca72e2ad7fc484a6b191306e31ad973dd2462c9945eabc6fb1cd6f2c6143e5142a42df8023100bffacadbcbe2ffbf4bb55e8d7fd0deceff28288acc1ea3b05d0f393bf9f6f9fef256e6919fd9dd0fe20ce4ac1b178fb40302047c435bb50066306402301e873e984ee7a17c643f3a2b7bd6b5fa686611173b09279401b91fae5195095ba523dd33c1263a3648af9c2fca526c9502300d1669bdcf2e7ed545afacee03f0f9f8abe1da0cf5a235ee1dd3218b4dbb09bba81cef6fab13e46041af02471d573e850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023068e6a443b075d38dc880caae3020d7708db550a795dc5d9901fa1dcc4165cddbf0c7bece989ac51ca5d5542f9a2cbfb102310085267954e00dd92593d6d143cac6ccbfc9577fd8eab641809e6c19b1e6a8873aa297de284ff11e4da81ebaf266adda9e0302047c435bb500663064023026089c9f5fc5a0a5e1989bdc546086397af732792f657eb9834e4a400515cc4b6c03ffac2454f64183f667cf936a3bcf023045e7d291864035edd16c40240cce93d2ccd77966caea62e37195e36047425b10359364f65f2d998fe68da85b0723cae90302047c435bb500683066023100bea662ad93e89cb3db28fb9ca42b497e056568f08e0e20c62d9dc3a204d36eaf24bee1d8a298b36672c49460930e38dc023100d554847036bfec5a3b99e1d91b8bdea54a23676ef6927f7f1e130028559606e7f1d01cd3c33315b95769a771d6d7b8ce0302047c435bb500673065023100872397877d51eb31fae9e1afe7c552d7044acdd1941ae6c9db8cf4cbd4e9892c9597fd63444fd39bb6941da704f84e2e02305390de8841a94c98e12c703753bf0ad03b9f25e3c726a76b6823978856fb2e08d68ab550efbb9976313d4976de39c77b0302047c435bb50067306502306df614b52ec5a45775bae4a1e4150ddc8b4ad3de0927e7f5cb32d87e15a016fc9c04a0d99e76f483620b1521a90e1dc7023100f44001faca91e0b3571d60ca315eb51d1e9898d48f7df937b57a04398b805eb11c2220413c99b4d30b2ccaf34702ffbf0302047c435bb500683066023100d543d6e73b6cb4439b4a4bdbbb7ad778d99bff260274a63cac3abc0f6e0c3532e85762126aa34b95ccd489e315a6e867023100ef5b27a91d56627aedb514eefea56bd7e7bc34ce209328dcc329f2148c857d2fc6c95eaf89e0dd5ab634cb3756ef386c0302047c435bb500673065023100e3728503c8059a33b4af9beeb47af6f069ed923b79bc17fc38b21a32f1d8f9e6658d4e75f2bfcff19129e02d2450909502301fa47afb6e88fb84c65d2259bf8526fb64eb741bcfe21405f01952102565528749f3f17a3d84494553ae0dbe753bdb9d0302047c435bb50066306402301d21f4ba6e65119b29754c54061fb14e3365d49ba2250358d50c4d1d914203b4d31062a8678e4676b32f0ebcaae1d16c023039fac2ff2562e5bc8f09289fa744e593c118d162c3a41df0107456e1425bedaec0a9f2ac91d288f387b23b9fa75c36f10302047c435bb500673065023035074855ed2aab41051cd5c22022aafcda7de825bc55bf96570302591a4467e3af3d6466ac94e386256746fbc10c15d5023100b7adb11fa3e1c1192e8074871e60d89f85355e5b50885993cf23296d0e43420de6775719ba6b4daf58e49c7b2b1958000302047c435bb50067306502310098c390b630801e7001bd988d8b9fc58f2ab851062780da0729b9a157b945409ec759efe7d06b1a50e903ac6d5280a63802301fe2d998744ddf61d7ebdd61dcf6278732f1c412844a077f9be3f21310b89b951de47856cb9029e7068ca1472aa1b6560302047c435bb500683066023100fa823ccef2e14b26f279bd41db96a230dfe3359ada3f004e14869ffe9b567dee42980c8e2e0315cb4f8cd116cefd92100231008e58a5da032670202a73a66b527af3dd1daf1f9344b8ef6dd3ef19cffbdb00b606a54ce97380f87f6cb62d223e999d7f0302047c435bb500683066023100c5d16216185231daf93018a5e4e4b42be592d0f3fb94472dcde13a72f588d3a7395e87b991a4cb0db0494c4537853356023100d2b4ac00810329df85aac03be84f477843d45daec1519de93859a96b330f8f92d6aed52ab4c5cfd8b98b3057e390fe760302047c435bb50066306402307166b15c1e3d52033ae4865ea653f72675bf5ef67a39e90580c5325770abc843ecb874010078a6fac197e36fb02347d802301366a9cc278f151b38b605be0e6dece19814799f4239b97f9d4897b921cdc248fc05a3385c0eed0c36b020b8d1134eb80302047c435bb500673065023100ff800711bef179a8d9d35e503ca11aa8a53663afc18797bc9c5d1ca4eabebf3a154dd746afeea39f275bc98d7544eb2f02302dc3a667260aed24ecc7c4a02d468bc8a3ce7704cbb4dea05fc54fb68ad06914efbb79334af06383731eb732bc23b2150302047c435bb50066306402307b86dccd63bbcfadffec42e740ed54622ed11758dc79432504eabca4a0e6015f119cbe638ec249736abca1fb935f83bf0230374eab7afca3604b207c1f6d9ce3e16ccf715fad698ac220c77cc514ab8a8f67a851486c1ee2f9f99ba7c3a7ab6801430302047c435bb500683066023100ac1dd1a25b3be4f9fc2c4c5c84020ba55cbc984493aeca9587386aa70058fcf06d4359cd97fd6be72fbc538bf4cdd2f4023100aeda17ea8152bba897425c9ec59d3b7f60252a7f2db2b3a8d0309d59dcfc16f6d4733059625745f530f5083d5d9c6b370302047c435bb50066306402307a36dadbbadf44770e9e7932859013984faaf11d8a09b8cd287f2f14158e6054237fd5be153fa43c2cb9d5e401bd41f7023037d68dce4c5f570dcc1eec5f0a11096686b02a91bb20cdf77a6583a342cb64c63aaaf5555c3c4504ef854fb09ada92a10302047c435bb50066306402301fd47ec0bd1368e71e2482d2f573bd8d971439b56c6052cef958bdca2e881cae5b9d8528c02240b9e92faf8e62e14c4a0230577ef7af516f2b42676cffd1ce7ffed86e19e5747e3f03e7b3d26d89851a31215484bcade29549112d7192958d3e617f0302047c435bb50066306402304b1aa0f8d1440a83b46cb8e72fe2cc1bb1c7209b466ea06813d79ed270f77aa77072e7de9ce0b92e393b197d2e9ad3460230297c4d005b5346ae76df9e69e5c07bbc68b0eeec37df5489684b62c81c11140253111b3c5a927c812cb263628deab02d0302047c435bb500683066023100f2a39b52bc3c90524daeb8a6aa39aebd67407d77458932980c8861452880c389139eacabc589d7a3a2a82ed269ab4a45023100bc90df280b456e089659527a723155f064e0dc1e732ace1a09d630aa5e593f501129e4fe808fd5db1ea8a048050996d80302047c435bb5006730650231009cd916c253249f3e60217c54a961486ca3ea426c74fdc27f18f84b5cc5ae2310c6639ef31479301e30d862100482eabc02301205a159bc7a1bbd31b606b2d1d8055de7b9827ec4f3afd2adbb5f44b68656fc65028a3f41af2fd2d9eab1d464836e690302047c435bb500673065023100c5aeda57266ec7fa6206622638d0b11a901255ff2d575d0c126fd820780c2f5108c4904061292656237ada80c977694c023039f57cb917ef8af2be1c8fd545b072fff5e3bba62b6ac0627ba896e4c4cee63b2e4b610a669120fbcadce05a2fbc3eb70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bafb38779eff3f5b63c31437550ce41ad6da0cad878bc6c2a5c89d795ebcece30cc71995b281e7a6542fbacca524624f0230078a9630214f599c5f3138369e577981d724035b50fd57c8e8e88470f40338ea1be7ddc372d9d9a099b6a55e20c2570a0302047c435bb50068306602310095051f073850a6e0b2c5fa413b1c7af98a61cfef9189873bc8c1bd5528d3793b836ff125681258f5d8e963f21b7617c8023100f73c6ddcc1976bc76270a8b52fd22eb6edade2b73f18df831ffada65e3eaaaf754dd889816fd494076c7ca6b88539c0e0302047c435bb500673065023100a104df9db962ea0d58b1eed55f56765d2522968ee4f68c3962b7e0c0b264f1b8c9d59a3d7c8ed8fc1fa107801a8164530230080d26e84a2d149f99ba94127b85475b80f9e15bdad21c19dc66e25c8640702957cf8ea5ae551cb1db0b85f1cd63a0db0302047c435bb500663064023028e7599c1867854579be99580186ea8ddd4f188739ad42ab76e49017f6a68bbe76f662f6e9169a0ae70cc1df9ab252e00230015d2b524e7c63deebdbb7cec6e3340e665cf7b8163091f7e7c8d1c48368447e800a7b1f9344ddc75c4250a9f84ad3de0302047c435bb500673065023100ad0655a63fd1312d6c07687e0c5ea8635bf68d1aa0bd297d12ce233a47fb57c8676c4b988c2fabf62bb52b309be63ddf02304eab5a60debca84c338381394a515d88560c91cad57ab6f52d4e0768935848ff15c1fd407279f765c31427e4c784bb7f0302047c435bb500683066023100d6d8d3012a4e0a990a2c85526b951b5abdad60eb7f38a6f946e4e93edb5508d2e059058cf9b838718a4545a41e3ab8f4023100fa0da0e4d92720e1eaa6a7cafb7d82b3616af04489f53f4b48d576843c04100b52566c33e3858abfdf9d949330b5c84c0302047c435bb500683066023100b82804a6fd4f3b68b73b0e3b2a690291c6164cde16523ddaf746a58c1e13804dd65a5eec06b47108e53c0a72350097bc023100d9a3c0638f18a28f9cb1a00b3fced9a7676a2fb60fb5543205eb6208cdafdac408d161168fa91db03d8c2c8d9db6e44e0302047c435bb500673065023027d9338f8acb06bc3052f975cca91f377ed38b6299ad2ec669a6aedf8f80410c0b655f86e87b7b936f3b7f53d5b9a6ad023100869b3f6b7a85b0c0a2d2ed7231e0ab47e3f75bf4595479c661681fe5da160f768113468497424bec1382d5e9275762de0302047c435bb500673065023045a7d427c0ea8e4e478fb687cb377843594c412f5576fc4bc356617e3b68efc160bdfd5a723047aadeabe25efdb322b2023100b7ad9f059ef52941f0cb2f3b0ab6a54f83ad2e9c38580f66bf4dc3a1a62b9688ef7962ed5aa056dde56dd637089280c50302047c435bb50066306402305b6cce03b5470c44868c52c381ea7ecedfcbd38ba3224c150658a99098919b49e32c0753ff6c5c037f2e676796f9882a02301f1152041f6e2a35b8502f427a2861f1ee7c14f2a9d36e064871ef488a05f8deea83a52428507bc5c5cbc7e71fe00a5c0302047c435bb5006630640230697f156ec3195646a108b0a28c119ced53e36caa57df4a41a5a4c05fbcdb7dfe1c2118be9796ec0e3ce0b9f6ead24892023016877b77ed313a1ce288ed0c9e50239891081abc71617b49ba47f32677705fa2625f3125388d1220269d5b431cf625200302047c435bb500673065023100c3b788c7144a2fef92a1312220c889568f21bd0d5d70238c42af64280c9d3e1cbe39b85e0992a2332e407153a84e49f10230477a451e74b080c47634afa4dc57b0377ca851e6af73e58d0cb58960cf0e9197dbe5fefc5a5af98d2f1739080843d7c00302047c435bb500673065023100ed624918cccc79971989edde468e0bb8977a3ea88ffd4f747f3df046da43bb457a77cddb854bdf1a9d942783d8ab445f02301bd6aca213c516a7c0282b7d6fb96f7c1904a8245e331ceef762d982f6270f6f176d9c242e1a3d78a1c62c2776c004060302047c435bb5006630640230281afb7653f7c51c3ed9513c45f68e850355eaaebb18e34e51026b9efd49c1918b2128b82921dc40d8d29938453024fe02304f42721353e2790c7c7a4e2a86ef5448690fe6558190e044772f2e2c70d17653cb665001fac3855e8ef22d5b281376b30302047c435bb5006730650231008a6bab2a0717c5cc6f995d1df1ef09a8f93a48b8a9ebef2db064cc544b5f39ba37c052684e96ef3743dd980cd9a70cc402307a664a4daae4ecce8bd53dbce1d48ef6ba7151f61debe3ccf789fef69857f85b0b67318a267b4b6d86912c82b1cb054e0302047c435bb500673065023010ab934d0170cdf247237a8cfe6fa3b414bf3320da7e63ef475d82ce76d19e4d207e738ead38d3e1e92106a92503c467023100c409650227caa4f72e3035f6fe50e21732c1f1e76a74cba08a26accd0a15332f21af38407c98a2abd4591c6badfbf86e0302047c435bb50068306602310098e2a003a64734e3f139b9b288ab1a48fb693ab8a5715fd72f2b2c3bc5ec99e9a87e9687807ed2304d906f730703daa20231008b0e63e8a4c225269b0289b4bc1ebe3579aed2fb2d6f9d69d102c952ff22a40b63f5b7e3ab7e95d9c7de9bc049bc39f60302047c435bb50067306502305c464cd9367b1df34f2ae77ffac037dff85bc4885306ba3e93777f43c1b730313581640c081f9badfa7e9faf9afddc95023100bd2c0a264088f46af3892132934183b4b3340757ce8b744a918feefae08136db5747d22c4b755769ec8d6f2446125cd00302047c435bb500683066023100ac9983b0376ef8673533ccbac0928f167d39d29588f5a4c0717b5c0c75b99fda6b0e7349d6964ba92bca25750751524c02310089349bbf62f49c3d04810f87268504b326ea706412ef65d6cc799985cabd9e5ebef628db2a656ee0414dc6912965dd730302047c435bb50067306502310084aedaa74103f4911df17816a60a99899cf31eef21d74c8e1f906eef5eb9391d2dfd4c75da9d7c5fdfaaff871d650e590230347d8dcc1a90ab58490edf3dd5fd405182ed99ccd866d16c3e90baa3fceff2b831d45bc6ab1529ac6a0910ff9d3e0f250302047c435bb500673065023100f66b3cea3cf6710947138255a97d0bc305c4a0a139a25cc5809012182dbca29a66b253219bee670b99060513a9ec270f02300d30b294c835079b1bfdce2cdb8bdf7b360c999ecb56c9cc9085a168588e2ef010986427d3384518a297aa42a7dd2cab0302047c435bb5006830660231008a1bd0f03c89b8305d1c2f9a859330b5b4e9101f7cfd70d42ac2e9d531c26dc37dc929ec8b1d7b3cc6ff0f8a1dd0bb8f023100deaba481a99964b6e0de32dbb513377521b03a70fb00322945154f62fd0848a4c863b71ee8f0ab91a4c77ef4350626070302047c435bb500673065023029be92b9b58f509db8e2fd053dc58e3d96133bfecf780e35462e4e8b05ba083464906bc03300ed93c38e6a39bb8afc23023100c77a64580d68f63abb3a9cf7ad3d856295689dc85a3d6320d4d7c30c6c0bd1482526856216f2d086c248a190e89a985a0302047c435bb500683066023100d2ab26d6d1cf0a43a6ed790d9b91918a317970bcd17ad157711333da3f782249fbabb810f97b0184a6cdcaa24c472ec3023100e2130fcf90f1d7443651f131d6df019a7a3c61dbe337d6951601f3e139d8b2af54a8f33a81a3d37b9fe2448a50b162750302047c435bb50066306402306199a8af0ec301dfcf17c5522f0a615b38d7ccb7e51364b7d0e42d03ecfd957d0e47c48b8b15791ad5b9bb64ac57b036023035d0b76fe675e037dfd1ab2bf40b9332ce6b1969a7ed9c5ff5fb0f99bd9c2f51dce6c9b5d0daa43d44b601f1191e1d560302047c435bb500673065023100cbc58b97d7336c4599b5014ac7c1271bb601edc7fda09a79b3722b7240f0e9c1cd13e4e9d1f175029710679d4205ec07023060be4ed436a08494dc748c3976e960063c1413ff3e57e1ed2c88495d4bf2007db8db5cca6e018711ee0855551e181c830302047c435bb5006730650230223f912a6387cc0299c7d560c375e01304068a2784d8486a125ba4b761da39432896c3b8e5c87101e017b8e4d7bc77b3023100f0e3915af04ca6ca61e918b6aeb1beaecad21a255eddf76155146b4939e75ef1a6d062b69d4f2ec71006b8a497faa8a90302047c435bb50067306502301c98aaa7dcd1dac2fd791ab0e8ce46b97b34d55c3dd8edc379e944585166f3b56b8825fd6203a4bb7697664055dd5e4f023100b65373de3ce3ebeda8f03179fe3fc3daf17b3378dd96e8b16bf938cc33803c1de960b93dc14dadbb8ab847ee762263920302047c435bb500683066023100f1ac124eaa1896c1cd9444c2e87a5434dc5b78d510c171441a54103a1ef9c5513ef0e0efb129d79fbaa37604d4138956023100f961f75584f5af0350b08c0a49a61f8f11fbe2a5a163c0dc1bdeca1438a0205ee4a64b66b99d261a19256dfdaaf16c350302047c435bb500683066023100eaf3401eb58a1664c8621c8bba7b1909234e723d2b95a17e43de114c66d589d3edebb9eb57696c996fb925ee3fd3f64f023100f152f183854eb84e162be2baec21e97739950381f3cf83b9585549f9d8c4d8cff0a5272cf92729c583b8d0bfffbbe7b60302047c435bb500673065023100aa4f4ea9e999ad1d4e1ea7528c71705357e7903ef42dafb78e2274c79f2aca41689ee4c420de93009c12277f34b43af9023036d8d90942e069338dd318364192364a7483c5793d73e3af51c845181b087583c089e354217cd9fc45fa659cb4a289ad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023041e8be9d65ffe569368730f310ce8f7f7b7de8eb1eee70323dbe072eba6e7a5ca976f8cd7e390304aa361da67fd1cfad02307d655054fe57aa38e9c6b53bb69f7f73a4496d8dc20f917150719625eda770f6a71586b8cc9667eeebefdd390589c7c10302047c435bb500673065023100912126ffba42e90f81d0483a31c1612f3eb55139878440d2ab2740c54ba120fea996d748fe7a477c5ea4ac2587da313e02300cf1191c19d3f5bcc82d5f60ef045523d2406db2716bf1f076c8b2c9bacea172605e6ad942e064c23509d3ca434566db0302047c435bb50067306502301627a48492eb7dc175700b84bdb238f6801a994bd837ede8b3e42c68bfeab37f03d4ed3ffcd57c4223f8490279611c6c0231008f6c2683060c057915607596854edc2135637b62e087bf4133d509e7d0727e28979390ef2faeefc91161efb16819fca30302047c435bb50066306402307408f433f697139c7070f53398ebeea6e663f170cc5d93e8fea46b592f72827e9d6630071f52e55dcf903997b78e8ebe0230449322d2f2886988004f8e9fa0f820293a586a01b7896e2f624c3b1f88436d3d353d3d67148e790db10c3f5c13fb1b680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bcbb0a546fa6ef24c1fe0b4ab02bf48bc7d0e366268128b54138aedd7156ec4ba7e2d07447e2952284c74d8470a683a1023100ea616838ab85cdcc520e1c39422bea06ce99ebe796f796365b327e4ebde49f81f32fa0dd6848e31ea7269b1f22ab16c30302047c435bb500683066023100d00a7a8b89b49efcbae55f3ed6166b398c90f6a8786b9bdcee846075f09e20884c5d326c7da0b3563376d030552b50e1023100afdc836bb65cbd8dbd32d0e8f6c9fe8221e27e17fd58c2a9f95153118158644b8987043de673be5acff98e13d6d1a9d10302047c435bb500673065023100c7a8291e981261cd2d097b4394d512a9916219c67ba5f406eef4b6d2dd8a1146b22b1a60e07b8b92ba684fe5da8783be0230210117005bc7bd0d11173a024d5a202a778fb1d64369005cb0cdbf5268dd5e805448b2e115b01df106d1a23c3f1861450302047c435bb5006730650230522826a3babc1137b379f9e5d72d69fbc9d9ae682af271ce3b58832548a63bb170247626329443c0ade3e3721bc4f727023100eda03fce1f6040b07f2bad4b83ff043a01feaee9954e27b45782eeda1ae5970a3524075509c86e0fe9c27393127bd4380302047c435bb50066306402303d92bb4fa1204f93e833978b472f552b0df0b6bf360623e0d11c6c8d6ae4685b8ba2db6b9b6c0b3c8853209ea5c293c202307cdddc5b96e57ca626337aced364a7be2f4244125e982616abc8aeb4db5f1c015d727ae49706561f12c1a6018b21f3130302047c435bb500673065023100bece11827960f5e5e019131e1252ea46c92e03584f43aa47d4ca5aec9ba0d2267ece45c2d4802f233a94f4601d77b0a4023019754b34e2ea50a5c2dc28936ba533678232c3148c13ec68a62f5e34402390f0a3d9c74a31baa4f5b97f827da6f0b4d30302047c435bb500673065023100b7c878da829a24b30a37a791a61e230cdc4555a0027747a1b8ac6adcc12cbdc92481ae9d877c3e78a95e116e9c73ed2402303b3d87060af115cfea06c4ae0196f914d11ae7591eecdff2547e5a9b37c757f4106f1dc81d61d9429c0ec46aad7ae4050302047c435bb500673065023046f4cff01460c41b5ee87f1747e5b96ae50b067ed6ba26e30b225dd2ae1231526fe0ce1f3951159450385d2197eeb2c3023100ae89c840aeb8275e51813a6d2b3569259cc1588123380b5c30b7fe2f15e15fbefac3bd89e863c340072baf98737c455c0302047c435bb5006630640230287f8d9678666e150b7f8662a4f015255890a8c77876705d6281390c327ef698477f59451848c297109a40857fc7c823023001dca34a79643e435bd4edd659a8ca2ec1517c65fa07be4ea3c35064d989b9682fd598a565cece2877d0fa34e10cdc100302047c435bb500683066023100ebdac0faf039d9e71ff28fbc5058d60f8ed57dbbf1c13aaaf569bdb5b1e11573665edad44f18ffb4de4e2b13eca596f2023100c4eb4c8073b636ce8d1b6a12faba41e322e9c07fad6689e6a6955df2a9e973820a3ff5b7dbe6dcc23110ff48bb5e0eb90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230735e6a4ca319d58b780f8fe5a338bff50a73f25a687a41056a4711ef72c5953a26686e5dfb326bc8e4e5214c657b1861023100cb08462c19c96c21fedf7ab5c7dcbbf3edbcd29e2aaddecc6201bff2c603e139ed8d96172cb9e0cab9f8ca8fdfed63ca0302047c435bb5006630640230584cf760427bec491c4b2597751d9e2560c977db23a0f7da0462d82af01c4b7ac08043963c5ace1c794bc94b74d56d99023069965493c172ed8d2f664c56f0af812d1f31fbc260891ab2ded69c0d1c87273ec95642de2489d45a9e8df9c51dc1a13c0302047c435bb500673065023100b9441578c52116a6f932f61b92b5cdb738930c8dd05ecbdd6fd329ecac54a96482d7f5de5546e1820e7d89390b3a8e6e02300552df9514ec62aeac61bf58f34c14abdf8f302dc49e40f1a50a6d1397348e323ebb55f5f1de1fa6ff2ca14708d6f7ac0302047c435bb500673065023068457373a06bfe27ed7ea776c516ba7d180a6740a66e871d00a69357b084fa1eb4aaf20e385ed0558d57212a9320798c023100a927cfbd83a6bb63734174a237896ddb6d63fb585b0ea69291108affbabc26a43a7e248713266a92b166f604d3b2dfdb0302047c435bb500683066023100e80359e1349ea4e014863c094f69fc50914889129e940cf060bd5872188104c8c53200e7e10707471d25486d5ee49d8d0231008a3d1be86654e198e0ac7a1dd78b59d0c86bc0a6370e5cbef3087486484151691f8afe41a580a14d647f5c4190bc04be0302047c435bb500673065023100cedb318e32678c2baa9e412445fddc4647588b26a2df79b43131137d98d2434cbac0d21de2b391bce708c96d71d1152d023067341e78f129dfe6004baa121eec3bba2ebce730bdc4b2620552fd6d2bff2a257026a70d8f5c2cdbee4c785f1cc1ddff0302047c435bb500683066023100f66eba8cd6355f5f1593ceaf71d4ec26fddb624c7d5c10149d5d959c63ce220c217b2c6702ef83a535237715aebc67420231009f4c9ef37acff31e4b2596edac03400013a65fa8ea83c801c3f5a4fbafb69eb19cad879e4781a0d8b7740b954c1e09a60302047c435bb500683066023100afa207a096fe650301bf76659df0697c59e0c50c7eb995ca38216ee0afa005bb031baba0ff82f3a1dc326d0576c3a811023100c064ec512393316bed7ec28799cb336766e438c3f35cea2ec6170bb8323cb3128a44851d2dd1b9a66d35ee05c100dd130302047c435bb500673065023016ecf8f478c49333c18bc9d560b29de5d08815bf3e9265658f6e40ba049f72048fcd7b83ba829e0d90a40317a5b54245023100a9a05894cfc73f0107be74f03737f48567aa3becd501bb94123cb17756287c90543672f63d238f584541d8be63b2d5170302047c435bb500673065023100aba7bf9ffe60e2338baab99e61581ca5819aa0cbbd7d43fba28f25e8df97a0758fa18b1ec347d9b57d695bcf25081f2d02300b1ac7d79cab524d6fa0c8d162607c3e400b5596d9b2d0ce182bc8a6df6ed8c89c9bb295975fa3776cd5c473f5eb8d120302047c435bb500683066023100fceae30b1792b25c811c7b152649d79e0ce38fa8c2fcb566f56ee0f33c75cfb227ea45f3faaa8e389bafea8a203a20b9023100f11d649c344fa37b0873e507a20b2241714f88838d66eaf099068a60aa8edd835af7dc56cf18cab913f58d9d0b5e39b30302047c435bb500673065023050f20ecab11caa0fcd8944c74d678e2d8e5e1054bec1660acf3a14e9849001e1fc7656a40225a6d7af69b75932f95f5c023100d1db98f6a965e3366fa3bad04026bcc16777dca5fb4907f8b8ed94366b828abf623eb226694723aba894c34457c02bb80302047c435bb500673065023072a5aacf3c585fdb69ce378a5a577a95f9edf675a606e50e29bfeb3f8fe275afc0c1c2a4463a801cd45eb33c77b412c80231008546f13a02604bcce1cc6f60bc1ebe062d8c8a12d4471e71ccce589ccdfe6bd52da36477e777cdcf8afe28c58f502e3c0302047c435bb500673065023100946ca5dd28cbd0fe47bcb14ad56bb9d98f905addf885e02a183750b967de90fd6dccf9ed6792060cdffceab8721a05fb02300e08af7e2e2faf7f7953c40b03f10f3466336fddfaa01f0319a6eb39681b62059b68caf28fe245dae75d3d620425b5400302047c435bb50068306602310084bc9170a0530df9eb874e0fbb838796b685c9d7b10686f6c44b9c86df832dbf2092120fff1a9e5f5a75eee48df486e5023100886e95b8ed92e24dcac4a4cde48222bf4b1852c627aa81875b76af84e003b34034e3cfdc7c7a00aea652c442f85223e20302047c435bb500683066023100cc14e1fe6d35b0bbf6bf95aa0bc5e70dc9666eaf593078d8d1a8af4e93a4fa78ac93990c2fb7d0c54da175cef09f0cad023100f8e79a497af9c02b7c61711e7fabf550e28c0df2883bf48e20596ae23036f5733d4e55056a51aeb4871c8ec81659fc040302047c435bb50067306502303fb252c60f9a709e8453b93e0158c1df1aee21cb67e9eebe2f068dec26415ac31d03e63377e0322336b5ab3cab036e78023100fe0090234a6fc02331b8bdb8e103f8963bbebbc3ce6e31bfa7d70894a91bc59ba410d68c711d6bd1f21591c382eefaa00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e263f2212fd6888568aa8554eb1f8167cc30ecf39ee589f889c574c81560876aab1c09ef5376ca14bb7533591fa8210002306d1397364a0b4fd79af26c402bedb2f06c0d8896be14637dda90dd6f0b32500570e5c74d15d01f796554c167bbe6bed90302047c435bb500673065023100e8442b94b1b0c0863efa9dde8fee27769f43ce5c742ad76ae9bd1706d7a311cdbcb36da5b4a392b269b9c987a793bc4f0230341184fc56b7bd504c571bf562caf3b9ef28031842c08633e8a5984a0fb8660a8345c577fec62066d8f768acfdfa595b0302047c435bb5006730650231008813d4c6f7de197e54c1547f99871c9137904e42892dbedff345ba3c854fa4642d73afdb2b7d0c91c7af9f5426a4c02d023060723a9aa0f874c6cfb4670d4176ca62a4586a3567d9589d594c842d4e994ab66f18bd2a575c1a07eaaf2871ad9a81ab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305a434456e09a755246ef5348bde5d6b37205ae8aec4765a2cca4f330290a2a993cfa673bb56d6257dec0b37c6e248fbb02304e2ab2b8ec23a0c0869f2612da3de446e14161a8e2c0ddabc8eebdb04ec8d1fc72198cb1c0f3d812d356f92ba7a54d940302047c435bb500673065023100bf0bcfb1faf0191da1588cb0e30785f3b053fa06f6fb62dadbfc48cf44f48e4182a4e05b11915bab536303b6693f12100230360fda546c920cf1c1be0d0595004c44964e3676e167769417ddb0116d7ce566262a11125b3079cbd7606c6ca0f422a00302047c435bb5006730650230424e287ce507cca332835384b9fc5c2b6a916e86ec66a89f0b354cc6a034a938540d68b1d7fe6bc0fd2e79f1d8570e87023100974c940e958195cd2240433d9b0c6a34acb18e171bfdb4dc665d6d527b34bf600c9d7f7284264c57bd6249b4bfc4c78d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230460a263d5e9ea19878206f375f544a9973d94572cd7d7cebf3e3d434091d38b76baea6ef7b4e6e020f0e9d550a641836023100c8fd7e14871d0193a9872f6a17aba87ea95289965ad71952e5517883e2d85bafa57386f571af7770fd0504ab596246980302047c435bb50067306502303091ca0b2595bff90670ad547da8f7571449ff469be13e4475bcc124364435a91e0c4b72185d252fecfd671dafe8aa0b023100edd507317248eabc6c152cc6f6a320c61a84f238a53c908dee57bfaaa1099c2c0b4d2e03a1dfb82fd90e4268e01ea4d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f8f12597954d9c91585fce5e46f99c35f9540f461dce2ef34a4248ddfb67270aa9612e6552ac8bfd7c6d59e1561c67c7023100898a2f1092ca1eb6a8a9f3245c4fba4349670edc62817bf25018ae161497c1fe4e4a6fe21e4e035b6dab73968f86f3590302047c435bb500663064023058d372bebfa2efdca6413f4755f6f2306294ad643c8d15e19f365b67ce4b8657ab0c9471b86aa1f87fdecce8b250463e0230331e1c35af2d359937fb7e1714bcb651a5477bb8729d19eae4eb36cce7cb39b5683283460179658b92aab9fa3c98cf890302047c435bb5006630640230685fe0660e21e8906d30d0facbe6b9539ff967bc0e198b280248ad0bbade02a01e5390d22eb54a7b0e37bf8fb633dc370230758b0d86c544c3598686c20185a568a4ad331e5b05100edce3c86f70b6d1d863c50feef8df27ff6481fc55c1c51cb14b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fc3ae3554ad847593fddd2060b4ee83cc55c7c249e50e47056441cab63ae427ca6b9d363da015c437a411bf19f5d96f7023100eed9cc7d340e86a36f649065f64497796e2a45c329b3a0181f3786c47efd3f674840b6582cc715c0f3038519a3ba57b20302047c435bb50066306402304b16cfc2ca70f81ba5ccf0d64dbee6592c641cae37ac6cf655a7ab811bee0e37c2a703a6a01e6f6f94b74d52c07e2bdf02307753742b24d2b30e4ea5cc96570da471b5e27f32adfb9a2b1fa928465d5febaafee192c74c99067ed278d2efe28488eb0302047c435bb500683066023100e2cef41eb16851713174053ad01906136dbcd9a6c48b6503a15e93c577890d71a1018dbac03843f295a1ddcab918db5a023100f8aa6bad378beeb51ebca03f2c2d9a55410ad642d28315f3d4a71c26d96f73777731d583cdee2e986005177da38a99690302047c435bb500683066023100c4946efe166c2022a63bebc84e5a9098fcb017b282e8c8c38ab30f55405eb5b06a2c3898db89979e2e08cb4c979e7489023100cb705b9fe1dac4df885eab75f84054393a8b452883d3f557c013facb72064b16ca68a88020f91930e5534742e8829e9c0302047c435bb50067306502300383d06d95621490c1a2bf5c6e325a4189f7cd37c70c1a2c7b54f0e904e51373e6a2a062cc9665b3b8f81fb637c17216023100a97685b389bd3eabda0d736d2c16e8b422ee804ed72214171d892ddde954627a8de6057e3430401c2a2a699524e09b2b0302047c435bb50066306402302d18428bf26726203f07ff57cff2ca1d98b977b94c17a54930718fd57359175bf022d047a963b82dae9c651e306e87f50230037cf0008faf3a97e81feab7ff36c9f52748b12dbdb8c703f3d2ba17dd1e7c0a4c27468a0bd0f454434dbe50606f9ad00302047c435bb50067306502300fa4de5543e54940493d77029626c29ac12b0bdc7ee6e5165df03dcc6a3ce15251add3f9b8ddf185fdbfcbbf63c959090231008988d4afd3f03cc1105d2c4e04d70590f8efda528851461bec1ed24299d293bd47d7f484d9a7a91d2a3f61253ec05cd40302047c435bb50067306502301cf06f38acbfd8be38897978b77831f3a8b9b0ba68fe378a7faf6f4a6112c58a2232fc6112616cc7747eee599ec6f0610231009c33fd0c9d682808255c33658e5e2f01a4aba8c28eb5047a72905f16024fb9d0a727a4c2698019166bd44f536c91ec610302047c435bb5006730650231008e9c1f9a682e71ef35d992f57c3e159c0bdc2d9e535535c24f2efe1190539bdcecb8e5131e24334b3578553ee56c140f023054887a60f7309fec67fe14d93c1954895059296c8aad0a782817707adef0e1f1614759387555b5203378e0dce1fb61e80302047c435bb5006630640230701e720cd52e84057e945877ac788c3259951fe685bc64b5688c526339a89742dee79525f9468f76ef35713c8348bf4a02303c1788dcf900ac2c72d00ac3b47ad52f227c4f8589b37e51bc3d9dc5097d43f006426a97522657f6560c0f036daedddf0302047c435bb500663064023010836fd6c1896a7c81d34b4cb08f4cae1b1ca329c081ec5a568639ad1943fcd0877eade25c786c83f51aad59d718c64202300edc5d409c8dc0e27cac33be6139381da56350e5460d8e816f55e14fec976c9622c135d12b2b70940be9788115a26f760302047c435bb500683066023100de4b445ff6a44d4259455e532073cbbf1cb9b4f0926ba3d37c177ab123ea7184ea2f563e4940bdcf0fdeb0a08a1cbb55023100f9b2552a095190f02990938e5640978bd3f8677e5772db83c5dd2b7e518abfbe34ae6d8d723c2fefc9ca12623bec22c40302047c435bb50066306402306637fd9bbde80b9de2e06ec85c74820eba50e8971ee2f71a0ff12992ba89f6f7be9b112c345149cc6a2b5b1271fe8453023074ae92d33fffb0d9290cdb231d648cf82a834e92c9024fb1e51385e0549a91e38e4ed32d935ad09dcbdd426bf09ffc760302047c435bb500673065023100f811374393c0a6e3540716aee22594b55e845d9aecd71fcb8023653a088757df2c97a35d31b10d6e88624535f178040d0230200fc4670b60d0a22cfdd10cc4763736ba77b5abc6db85a9e5bb6aa1a2d67aad39d5889422f9ad4198a6d66ee1ec38250302047c435bb50067306502306c8bf69ad30458cad4538267b7c76fe49dc9f65296c6125ec75e857b45ef901ad4af2fb997d77849df5b5a81bf0917d7023100fb3e4e020220ee378e472bd253b0fbfe9e434583f8e23f06fd7d4120e16afdadf112273ceaef7cb8b5b34f9c863b05a80302047c435bb500673065023076448b76d633476c70276d6459b7949329cde6769f8e7ab04509f0b03c62e2f3dbadf6167fa70d0f123d0675183ee09a023100b04a1930837895e943a54895332932ca86c47b501b14b28f64b0cda8ee0fbe8d070dc525d3e38337e15c22bc405bc34b0302047c435bb500673065023013e69eac10e934bd62c782b56a34a67f6fb89e0e8b0a0a9ae2f50835f3c5db9cc7c406df4df5a0568431ea8cab955fc1023100e37485441034dab8df12abf4ecc54fabc6f810722fb44daaafb9e65a946a784c857b63e0c4bf449e021e4ce15a3f1f690302047c435bb5006630640230022a885976bc171d7ae66da13fb2dec265e55fe218652e92127ab0b2cd5f78911fe7eab59259d903ad599a667dfda1df023079c87df3ad3140da851afe6b8b5f5926991074e4978260dc75aadb04de6c037282cff034213145a027d0de9abe9a4a0f0302047c435bb500673065023013a6a5aff8a35e2339bc40aae9c70b726949e2ec78c80b1ddf29ea5cb18429cec7181d57895e49f6970bf06759c5a45d023100d62335c454b13328c6fa0a26d66c07fcd2d0fa64cdfcb26a63cba3bc4361efb00461597542a55c08373cb3627aae8cc70302047c435bb500663064023023ec857e43787f2765a3f6c08b4b8e916656489720945ba8ef6e68ad5baf618f0110cc16d7ae762228763016f93d56380230620847e63a7498904a47774b832470ad115475a2ea47f64700c40f4e03d60b4006aaa018219f24ac086adbfffe1bcf180302047c435bb500683066023100fc7520bee3535f9a061abbeda5663347ee5a50c4ab45bfc4ccdbb69dc63eac41cceeedf884a644e0f8233b1e2978e45002310095368045fd44bc6c41f0e150b6093c79dfcde25f6767e7a5d9165a85c57417ef647162e6ed30d8477525ce9182c37a050302047c435bb50066306402307bbf116ca8e891f6317314f1c96fad246108313b2827b56a99594777267033527dac31320843218d3bffc3e420b0e1880230533a40e3ed2e941d8f419153db9dcaa0fc1259f56fa51b189160d710423f8682a13b479e7c07e52c8f6551315d049c0c0302047c435bb5006730650230122080e906491b249026b5fdb4d65609dda03b4857557230b6e326175e6e541f7c31c905db06dc45fe439b43780a130c0231009fe5ae4e2244dca9ac58de97a84ed3cd0ce9ead926161485ddb411c072ebf47e155ff99b806c3a5c5c8c75024ee6280a0302047c435bb50066306402301002fc077b04d4c0608c7f13d087c1d70720110159e6c8c6f0ddec2f164b747cfb7b268514558806b9c15cfeea05a84902303b78dd131c3311b1b80d3ea25ebebd64c70860c1a1bdec7ebcf43dad0e42cb9b8e909c144a71a05598cb9b3fa52855f40302047c435bb500663064023010889e6026c3d248cb96af8c3834c75d08922a5c20e3af53f82b4565403238a8a2c3b259cd4254baabf6f464e64635a302307137d71a98189920caa7b05fbcb4e50022db32beb4970461eade9f1ffba37e3fdfad72954e4c3a5026c5e08175e692620302047c435bb50067306502304e38657e6104c41ae549d8f48770790b5e6dda8a83306caf9313826d2eae6ff7b08a97ba3cbf6b3b0faa1fd68d9d4b68023100803fb069502e02455918480311341a75f609255880b411668934d4d3e9eee1e553c259dad3ff6e207512086b1b3382810302047c435bb50068306602310091391eab119074bcd2033a0be6c4a49ac6096513bfd27a4bbc851507dba7e0c7022c17ecdd38d857b74cb39872039bff0231009061f9689170ff0b0fd457122127f96f225cf87ee72b1a10a32ecd5e8a9ee9996a626aba92c03f4da08e77e5acd52db80302047c435bb5006730650231009fed24f978f5163c10364b87706ed56a95c01eafaadc8979a847d49af33678e35ac0b4124e17c757a6cf723180b9c56502305bd4d8ee3f849e2ab03d3eac48e69f0d37f684e72bbff3117550ac41ec2c8fb36efd90b12dbef5ca19d9afb45eb6282f0302047c435bb500683066023100fc16df7c4fdda81a9179353976af27e3ded268065b1cc7f6408324f12d44705d8f59e6f1b103772599a7f172e1cd0ca2023100dd7ad8504ffe63ce4dd4b8f9044edd8e04d5eef5dc74c437afb3dbf930263771d53c6e5eb9287ad2a139a86e597df71a0302047c435bb5006830660231009b8137d20052ca992687081eefcf9ab8885132fa912017cef0bdc0467f8b0feb2ce8754e989fb0354f5acf0ae26f68b4023100ba58798bccbbf627bc6e98c51c7a7938549558bd037472703492c3cee6ada5d9cd6d84d080730e453e91a45ab0c68a440302047c435bb500663064023042e2f63248e62567ecdc6946f294608c6a6eb086bcafc40cbf343b5b35c023b655cbcf9b73f70946043ffce87605229b023047ed2a1dd282893c044cecdae9d51d943b756311a819674dbfbb70585596c1dd85026dcf683cf19900340a8278f394b40302047c435bb500683066023100dfa4a450f1c21fed48647b5a8c8aa563b2bc5d0c7eca05124b506216565fc6f32c252c74a57eeac60b9b04e6162c5591023100f20d9f2bd8fdcb9cf583aed1ec5d422d56f3e0152ed168d0e65e216cab8945c25d336c899a2c6c3b241a6263932a5dc40302047c435bb500673065023034f84c72eed7d12846b521800caab66ff1672aff44e27e289828e6258f097c49b32449e7b362de4e015b0a89ea8d2db4023100b328282fc62814633633be4db33ba123529248fc15a9c54a0924589d35000133db5ab108dca07b5a87e13b8a521cddb50302047c435bb500673065023100ad06faa7f0718548c0d727735c662f807221a972ae950aeaaa4cc2fe7643c13d785e20e52f0bdd9a978a2eff199d0df9023038a6fbd6d58ebecd6f166716e1d557f72e41dd360c0a5d311b423e3d8048ec6559a3907f205c56442246baef01ea97350302047c435bb500673065023100bf2beb17fc994f7673973212dbbbbd4c76888f5fac1e4d5afb8db24ab16c9f71fc2eb3e25612e0316746b03a7a2dcaaf023007a696ed9c15797de09b99ecef2018797b9ff7a9d995366ecd3f74f4666540d722bb295bbaf2df7f98ed2c57dfdbbe1b0302047c435bb50067306502304507f028ef76239a38393ace61c41101ff09a3abc168788cd33a97e50a8cb1905b134aaae325eb74c942401971b6edc70231008ddc40b4fd52d3eca590bf21919c1d112da6520b36500b1f4ec139750118fddc2edd239e26d8abdbd302c463cd1dc5f10302047c435bb500663064023025f95e5e3b9877194377c0e2708bf3aebbf4d6c79458b24f0292c324fc31fdcfe42cee4d1962adb439e0fc92abd7fe7f0230232e1a75b41084a38d75b9c1a973c5f78b90c368d6d353296aedfe96f4a1037d99f2b566cd0d7e04f4b08c3dec992a530302047c435bb500673065023003c2f1a724a9eaf1c1e5c2f3e7e4170c95c709dbc76540aade24c98518b38572f79198d19339a487bb20986142be5c88023100de92fcd1e7a5e0c13947e6bb1cdb04bb892d6f03be3df50988b512f8c42fdadd95abdadc6566d792f7d1f2b6ca7c4b070302047c435bb500683066023100bbde9fd69b9807ff0dd7a89b9babd0e5fb07f4ae07d4fcd333fd989f57901d2ad1350a5345281f1736a121146945f7fd023100de5f0e46ab6d25988780eb256b3aeb82fb2cf0b16aec177acdbfaa833d5dc4c354b7234d8f8aba25db1e41836757affc0302047c435bb500663064023013b12e6527413bfffca58471b37f892d9939f7b5253ba3a1015fcdf47a70eb15f55b515f3220f14513632aad31b0c0aa023036f32290f332261f59ea74d6c5cdee08d66febe2b2ac0dcdf5a47e87468c22e93b33c06857eee9a862f6bf3eacf851f80302047c435bb50066306402305399b3a75740acc89b04ef9f71c102ac10f4f3f46b180b197c1e4b6635ba37f89224e4750045fa0a2c0a876cc113ea6c023045d3d77f9ec570fb82c10fa58938c5df55242e4fca948248f46ab3ceaf95bc313c892b033188373d2ef9d997a81326a10302047c435bb50066306402305efde3d569115d37f6089dceb9cd780e136e2370fe1ec71ac8cc6c49dfe86a57c099902da99aa03bdaea4b6efd2e7f70023002f50bf0f626e372483aeb7960c5dd8fd832ad050df3322ed1573e67e6ca01c822e1556e7932c1615bf9e22a37db346c0302047c435bb500683066023100818dcac02b75c5402a898c5a39f6e55bb232df4f5be0a4c27711996a2cf4c537f003d671f857d29fffa0107c90829c6802310084c2a6b2f092375642cba89a217081a88dc36d0d174662030ca528743e9454727e20a8194892a4ef694e8ba23c8a151c0302047c435bb500673065023003d9a0205763fdf140043b14e8b572d1c2ff2b9e1951569a139c259689c312954679956dd64d5030433781b6e51e6268023100e09ad95a1ab3cf7ace72216f8a7157dc52fd4c7d2ebf27ab7bb6a51e1fd0f447f51ee5ed57d532969a6b037daa05b7f30302047c435bb500673065023100b643fecaf7f9e8c60620ab001bdb84df6fe1a6bafbb346b96e7dd6786b8d37e319f8bd66a74bc43fc2599aef8eceb2ec0230445e44e6f2191b2da833a2f2cc6682dec73d8dca9a1f3b88bb4aab9983315a2c0152e68b72c38d83225cbaa2c0cd8f330302047c435bb500683066023100cfa9ca2ddec7d944b1fc0ef63d93425a5a8c81574aad01dc8d339036194a019e54800603324321c926164de76f35917a023100bade9273e14130c5be93af4ae700b4752775066e33c2beedd5d952835b30cf363e18cc4399fc580d307ac12b5653d8790302047c435bb50067306502310098e0e815b93ede9b31f2a9dcb726c1c5bc2d51dca450872b606060ff5c21c186ee92e7455dd0910ded24ecedd26c12c6023000b9d18355f1a169feb907e675b5cae823b72c2880f07939913e157babe360f681a9f16e5f3384b38c6b14b48db3244d0302047c435bb500683066023100e03172b392d3b0f42909e00b3cbbf1149dc6675aee3cccf9a3d64de35f58a0da3137bd13527a5420cab804b72c8bd4dd02310080ccba5c21fdc778c9438fdfbbb3ef4c743e7fdd261d8992939bea1472d7673c4f65e00854fd3d2ee360ee9f3567c88c0302047c435bb500663064023038cbfe6acc3e9381ac333f6d0de90bcfbf64f498588b21cb2213225b2c66e9e72fc81d20227251ad6bd3a4faf1d5d66c02307ed7e5ec4f3d3ec26480e8f86266b3c88f41602e7b05ed6bff312af94a8860965d7f4bd5e2129b75c517b2521f5e2b450302047c435bb5006730650230327f502816b98e00e8cf0af8976d71244fd84aa80ff927e5da5afb3126984dccf3bd95e36ac32974dd707b1cde82181c023100a99bbadc6f90740d2cc379d504be7d9d052cdc0daaa261931a22c6ee1adec70658be790a7cddb7dfed8c57df5854d8680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f90a0759b1311f0d047d4475349212fc9bf95c9feb7a27f8506fdf45d8627add86a93376f767881a6525328a4a0a421002301b5cae44713f69fc5f59b879c876aaabf12a7bf1077f3b3b2a9b1f7a0fbff9199c3887741a728479debcb9944800bf5f0302047c435bb500673065023100bb921e3e6dc51d936f0048411f44da70779d664408b4285cb1c16cc31492571656e30f1ab1b63f53dc747100d972e1d0023029755ccb580cd507043781330f4028ecd37cfdbeff41528c01556c3d22e0fd54baff88a101bbbec1dae8ef11e818f99f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230582cb997074a9bce05eb74d22462cdb57bd18161619454951be803535cb66f628c54a86e9525fe6d3bb96991a540db6b023100cea3d4ebd984338b291fa2891f0934c5296d49b2d9f3e1cef8706c39fbbe77bb6ac0b42b39b8bd6e557b791f0c1ad24e0302047c435bb50066306402303b9aa25e7fb6646c998325a2f48c1f8228005112b8447a94aaa04dbc6612fa815ffc8e2b7325a924e0e73311efc2325b023062feee4a62a520f80ca9ffd6a94c9c147054e675f745659ce6ada3c6b7ec55f20e62e3e36ddd9dece9db80e72e11f0490302047c435bb500683066023100f06cd0b1ff6899cce1d087223870b6549d52ecea437d77b9b64499b08642da04a0750c06c5065bb3d013d8e2a7341a41023100ce061b104379c7376d7cfabae4d6c3d4823550e3331b0af2d5bd23da71c100625da6ee0507308293b793517a82a102d40302047c435bb500683066023100bcce9396170c5a57acd388de73bc6bad636adb9ca661e09aa6569646687cdc0b5c26da3aaa490e6b7bb86e42de6a11ed023100bc435c82acb9fbdaec7727cb6e44a6a71c34be0a27a211c53b060ef472cfdced333019f430272fc97c3ef9c21766ef8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100936c706f7f4534a93165a1f09f5921a472bf19765799f8ee0460712d46a62ebb176ba9332a3ad70ba750d37846dbe7d7023100de0ecd161323c27b602827c390d29a5816621f5a392f01ed7e949bfa2a1ee5f3df3deec8cc7f9a2af17377ee6147853a0302047c435bb500683066023100b022b31b1cb01b73f91b2e19608d9b74456c81668090efd7f5788b51c06396600fa662e01572db310f14e9e5ddf454c4023100b0e1a17a40ff587da8431cf3828dbe6f27529f401922c13ec948f4b69f053f422c186b38fca83f9d17ff586ffffefa410302047c435bb50066306402307d136b562f00fde582b8cc9b5143f8b376229eb028376d1cb5b68b7250bd3d22933e69f96081906e37864147aa05d94d02303e746cfb6e0717422233b9028e5b06ae92724352425e6489ffe9be9c8f3d91591d0ca19afb0c53c9039fcb1b6994d10f0302047c435bb500673065023100fb33b87cc716c60433285d2fa264c3656a1185c4d23899ae95721b45a251af84f44c09e0a9a6a49cafce6c1877144a7f02306c311d0193096ad0aba9f0af492c0ae6656016774c1014796226cbf2328f888051dc3d3934fa9cde2d4f5e45bf8c91ae0302047c435bb500683066023100b797d641f6c89bec901d361e492bebf40607c534f606ccd75062cfdfeaecd3f4ba6c54c98d8f090f83d40ff3997fda8e023100f1794c391e8324d788be4493687a644d4519eb795cc3bba0f3324eebc39751a52b1f58bdffa21ff0206b3293deead2fe0302047c435bb50068306602310097315b8511a0575beadeaf841432dc2e9e3b209b75011ae2f47ba89f7bd0077708576209ff451b830b66745ca40b3df0023100cbec7b2b0efc945daa4ae98b439336ccbf5a39ad0570f276aebfed97de9a13980d61ce1f2d05a7e9906dfd5ffd2ea4160302047c435bb50067306502300c5bba9049fd8981ed5f73374392974123268c88ed0246527093fcbff7f9dcd1be22be3cd143b980e92f5b1f10f04d2f023100b7ff7fa9efbecffa0f823c7fab928cb52f4bf0de7312619833c2fd274450911da4a793210014cb496fd43760099618cc0302047c435bb5006630640230688465f35da3453f2e0269695a09bac2b70573fdf6509c22d4bc93f43729b012b524c9ef796ee7da72f49c56c0c72888023041bf023f21f18706f6f819746c910c415ac4b14d05d9ed6cfe0df86f12792630dfbfbb4e7e9952f06038187afc5ee7840302047c435bb50066306402305dbf534bd362ff9b3a7955d81ae6b00b77cbc55532335302b86acf270af5297644b7751be76a36c8b0a7327f4fa67e6d023072b71e10a9775fe1ac4f9289e8383637b5ea59e8ac1fb92990407407c924d8cfd789d229f4e1749ef94b839d7cafe1ab0302047c435bb500673065023100c74e8f6426e48d2418e8514d98b3d4151886d07b0a4bbf8f78b97731d2e057fd9d0f43796eef07f5d79bb7ece7c5116802305afe9e869c613d034ce56696a9f65687ff0276cc34807b782c50d9bd4d62de22cf5c3d7796123b871efd26da7c1971fd0302047c435bb5006830660231009916ad7d99ac05ba353c8a45f6bd895e6f740ebfcba9fdf6c4a5c4b490691c7e5cf746d717c293cdeff512035c2d80aa023100b8e0ab92365adb09297f2a09e3b478061566483fca6ee261f39b9a2014bd67237e5792cf6a854e0c2303285aeeb08e530302047c435bb500673065023019563d2df595d68c2007936d64751f8976e50a73b10e478d43073760cdf9e6c06cdf4686ae38ff22943b96bef0679223023100fb7a364da3c47b17c09480eb501e37f0080831a2c6249fcaacc47e5f43576a458716e82a250854fbfcdb93eef70c61b40302047c435bb500673065023100a1a4e7d6c314748a0991e8b7709a88dd1847f277dd22ab0766f240f2e70728fa0a616d5e8beda4d83309fb6c39fd8fd1023026159c5d7949d7a18069f69aef66bf594ba2e8b9e8035aa3f4a9720095b33e1a55cc8265a63b70e9e88bc541aecf2a070302047c435bb500683066023100dfb4d85d67ca97198fae0b29e6a5502f8c39856d2b7bd0be0dc0c3bfe1653eda5ec597ce1e35398c9b9e35ffc8b67745023100b9ed2271d4b4de46809be24c9c7632731f96996916c6aa084582c35aa62908e8d18c6c40d1af6968c233450673856bda0302047c435bb500673065023100e7a1b3c53342a3dd4254c34aa56477fba5122eeeccce0d489722ef216b20459834614b2b78de238b8fa8140890bf89f202301ef8479656b39dde2c08e385c13f465adef9d487faa059a86c77788d9f3c557385e6836a19aac41f1baa8cb7a64e54a80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023006991ee30e99b32256f59b267bd2788bc288c0666fb30270b50af91dd226439f601e5c1111a34b149e9c87db07d706b50230652ceea7c65810d86b7443ddcd5d52d306475a8317a16aac0f90dd0909d40ed96e7c5e48312a254bdf5bc9db6b4c2af90302047c435bb500673065023047472dfee9beeb2e3946cc1cfdea15b5a6f3e70de39b8b6fe62cee7b6a618062c31e6c98a83e3a01bcd7850e134473dd023100d53592d1321632d8b64c23ee52a77e6798e8a607146bd444d14a7106afa5818d4b05c181c3c4df20f88b26dc3f9a29ef0302047c435bb500673065023100bc41a86594635f1e2d95514c0dc4bcb5281bbfa6945b4cb95cc4e83544284ed3b31ff52e2311edc843a84976250fbfed02301a8caba268aa81c239a9e93b802f8f1cf75018904ab1b7bcd6d1efc294c038888662dc59c80d9481c53db2afd627ceec0302047c435bb500683066023100f5cb8574a79b0edd29ac716565fb4d0fbd435379b318e67b0f2f2dad44562ba7a90f458d4127924fb6961f0488b60ff702310096bfbfbde93749153b552e8d94d03efa9ad9615a2ddb5fc9a5e6b1cbd11f19053982b158123d4b559c65fde86df7afa90302047c435bb5006730650231008d375bef648c3ea9076c0088a37485d43cf41f5aa95364a125fdeb9f1cfe8f0f070c891405b326d954301aaa1cc12f01023008f23f29005c81f483975a29dc0d8640b0cb575ed07f01b6a7b4de763e32faa8fd6782d9e0f8ab3534483deb1093a9900302047c435bb500673065023004ca26328d7ec8c50349b16094d4440a827a16ba0cb3d1325db492db4d236c61105dc78b4ef4957329f0e4d3dd69e811023100b4450a8823f06c20aa99da90adcff54f77de0f9e025f469f24f2deae1522aa1e5435dd162cb606ee6ae22b9d94eea7be0302047c435bb500673065023100c5b0475a92692acb35f19d520328df334a14a5b343cae2a3abc1ded52ea292b91f8bc278373973546124dd1fd7f9321902302a6c2a0795a5ff4016ccb20fcbef509971b7b8b837cc842af2367add61d2cfe7d0d1f2bbc1a7938fbed38972218f2a540302047c435bb500673065023100d4b4b4059105659ade64c315b10de100196f725342c47bf64918058c29ff11ba23d9c9980e2adf509a12762d35e87e8102304f0d29c38b47e7b694570e7b2dd248669c662cc19ca7c45e2fad52b5332af10cf3f21854db2c42d2a27729d4e40f06c60302047c435bb500673065023100d6d311d6d6bdc39df14cf86a4619614227d5800169e7ab20e0e53f6a5ba47fb8bbb7878da3f652caa37bbbab02eec9a3023008a92d9ae01b0aaca79c177d2a7ff3bff4a0890cc46d654095f348b9ea1dd35aea43de8db7bf6c63deec076b6ae4bd690302047c435bb500673065023034a89f9f4020df355975d25d4596ffd502bcafebfd1b6c809a2093e6f5f8bb6a678b40defc3e807d759e214902563f47023100ef2c0e091a6e306efd5b3d48f486e6a469164c9e69e40e11d54c8ba356bb11cd8b32b2709f5db74878e0a448458d76e20302047c435bb500683066023100e303e92b4e12f72ad94f700ac524042e0005468f4c468308f1f8bca3cda9d5c9653b8ba13620f327c25609d5644b3f66023100c2a901e9efa3a54fc3b2d946b4b9698e4e26351f06350a2b96ee1eb23d8d483f47441cb11e5c4e000383156d185a01890302047c435bb50066306402306817a885071ac010c7d6c387e4065b0037b00cacf376fd2785c3c7161f2c69e71e79770cf08062ca5fe8a479cc6905620230386c2f4d7b5df0156dde456e5150704f1b2b3d483ad4044fd986e488b992581435708c86e1480c322eee2729b35a3b1e0302047c435bb50066306402300ce1618e1b94650a896061b93ec9ea6a364bb254a4bb8e0d89ed5dee4d94bcbc605296c3a56f46ca6e7baf99ddd693dc0230069225cedae9329951888c2f0c1d2e2e4c71377ca59c619560d227fa4eeaccd1bafafd7a8d797cc9639b290f25f669c20302047c435bb500683066023100e4cf1b80bbbe7dd5ef933d04c7a9f0b2594144f9e734f1af16c8be434ed15c7c1aae9b101f91b74ede5dc81fab2393b8023100db08d5f53559f6f73171fe0fedd34fe33c784652ba8921aa60ab37457ba5f96251345ee3b08f10b393dc8383c593388e0302047c435bb500683066023100fabec37d0a46118a55db5d0a2417cef74c3fadcf67f16ad49b22d5d992fd956f9ef466bdb90124de0ef05fc3e364fdfc023100ba3ad6ff24e5a7aeb81ff44636577ce51e36ee576263434c308b5e642a805f2aaf703e9226284055fa236d7dd9c53ba40302047c435bb50066306402305f5c313735c0fb01854aa16f6878860da98810d094f273e5a609c01d0ca1247ebc727b2f63dfd786fa4f0d5f04f4051a02305f12105bde1d8502e51f1b282262ec34978698f39d406677066b3e4d324dc14003a21a6d79e1df0b296d875d5f431aab0302047c435bb500673065023100c0e285cf680b5d790c8067d3c3483f3462e3b779d7ea0903d8f44a3672fd33d9a3680746ee445c8c9ba8d86427458351023027c56bc623f6e8a61d43b156b46e7dce23e38b59483b3233e82a4904e224975c490e312a5e6b3ec4b81d1fdc333f4b2f0302047c435bb5006730650230068bbb423802b22db1b4f52baf362cbfb6f6a328abfffac1ba60acb8021b1bcf819d88c876fb625de3e2ccc9ffd269f7023100b9a1d6ee1a0dd77fa2a4c631d5aa46c5a666276176a4be3f2033412ed3f8ffab21b7bf27edd8c5473502a027c9cc170b0302047c435bb50067306502310084f1063f13cda71cfc90a4c683e1ed122724a724247a22d8b832e9e8409684ed062c59772c3dbf9c747dca04f454a47c02300399f4d747ea281c9f802ab26e72646c81234505adbdaba83d4ebd72a2d6126ce65f4d31f8e9b1d005744f64890431b20302047c435bb5006730650230157ea1e042353e3dcb8730c179323fb0a3d7bbd050f346d4e685e44b3797341d97fe91c55415bb224c2f162e0b9fbc70023100e889d54926344c7eca55ebdbd8010605df90d9e415411132dada39427cf48e808c51b6964a96580280819d8c724fdd550302047c435bb500683066023100f57e678114d06838afbc09476de8f9070fb20b0953aa5d2a487e3aef5dd33e778e6cda108621bb6d5f1764b9ea653bc0023100ef3924a0d8b3c90b694df8ed0b120fc9b505858a98a9c1d95b63ea5f915754bcde9055784c829d871e55f0f780a754660302047c435bb500683066023100a6962bb54140f57bb6d620dfe257d5c72cd99b5f23a997bc83e9edc8a9b462e6b72df13ee909a8726f1540fd31f57a880231009888f4f1697aff361be43c9e936d284b7fc4963b0c24edd956e66ccc9690939efbc023f88498eb46b0f03ea35ba274e30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230275b084c09c3476f0179de2e8b8a6dbfb29e895f3423cbbc7bbefd99aa6fdc7787cb3f63af886c2ac151215af6a8f0bb023002c34b2e04be2bca0307ae029107027bcb6c55d25f16b04b1133f6db2ecdc5d332629f18bda618808643e723fc68926e0302047c435bb500673065023100d14c6b44d528665e930d30f52910caf45fded4a473cf7a68707e129674b54844e2564b7b5ee645e35e1817dda8fec30f0230180acf0cf9fb06ce1ba2b270cfc58ef6c0be9764e3f4916e3130f0dac84f51aad099697ac2c5b1c88bfeae3c4f6697850302047c435bb500673065023100e5291727f8d4122161d6a97b62444ad88b103cd473bad72d5549120f5b1d021e71a15637a002f44cc5e300a3960b9f090230048df50186ceb2c9164a0d6648075f8aee8986629edca2c37ece1e14df442bad1cb9cd77d3ca2d3814eb90da624623510302047c435bb500673065023100c8d357250433832d277c92a67aaf016be9e63eccbe6df9e3c7637916fcf6a26c8b39f03e76d057dbea34b31a23e3a6ed0230421b54b86cdb749e0b0aecdfaa3893400deebf33ce7b725da0041a883cfed222a34e8e0fa69659e6c6cfa70b0123b2f80302047c435bb500673065023046b87663cbde5bed12da000d1d311e3688d6b9767dde9e0314c848ec95cdfa56e037798fe3745a81b531d213aff20e0d023100bce127814dadcd5b4ba63397df97ac2f2f70140f764e3532cdd44231880908c8bda85cfb3ae96c46afec0cd9c450ab520302047c435bb500673065023004f8c35b0478e26a8c2e4d05a90f7aeab606dc0e02ce35e4f0ab4bbe8abedce2600625ab96ebff13934c182ca6562ac7023100c524f3aefd64d9a65281501a2b09165ca83c10ec84ae955aec7188abac072c3ed65813146a190d537b6b2553d4f869c50302047c435bb50067306502304f2a7b478a552510d5b3054ded3d2c2e1e66db33985f58b17a078a2ac991c2ed4246546df2afffb969c90c2c36a6715b023100f671a42a5acde9a973668f3d25e7ca1dc28226e53e8645c8cea0ae30bbbd9bfcf6ff7631273486980696b809bc87ae7e0302047c435bb500663064023075884962a5bf6776a029c9fd974f32aee4535903c87cc7115441f84cfb07f42f87ffe636cfa80d1f88909c48e36ef1ea02303087d4c58a06132ce7de1844fd056e625b0cfef8f61076191c5976fe27b390801aa1d1ca4e8af59400e78a897b84b2da0302047c435bb500673065023100e6931e3671e7523e3945d8664018740c557f26795b4f3b2d43313dadafe6fbbf2d63ea7e7a77d08e9323bbe2302345bf02306a83148a66727e30a966d7c922c0af8cc66eaf7cda4ba163c12ded2cf64139417ab9d104fd82e6750f311f8880aaab690302047c435bb500673065023100ab140eb8f5558f2849a7a95833bd0e9adbcdab49e38286fd7fc02652d802ca3d8c3730985ef4dc097d963191cb7a3f6d023027dd6467dfa5d74fdb80443d11e922b9a5719e9948675c5ed63f42d3084a13c7d0123163e2c4ca2ac05b1639f4f104aa0302047c435bb500673065023100d8840aa4ea939e866e0fdc8234f9e19c7c506156bd17550183108306882361a31a2110a79b9e35c0e17ab0e80eb02c3f023034109ced32f7cd0cd066a3391e76a5b0ae11d3e33c5b8886c0349a1dc47b6fda63620801c859c115f59c589296902adc0302047c435bb500683066023100cc49b589069062ccbc6dad45ebeca0f7e4389e29895e48aa832d15cc00af34b63a9e962c63dcce53a8ccafec0aa70c75023100af0a1e27afbf398345710b86bf50a245955c9547780fc636ddccf1bac80c369181fc2531afc01698eaa56c2c9371d3eb0302047c435bb500673065023100dd95600990b371504a2cc37635b44f9e0e516d7b261940da81c1fc0b45bcd14e58aacc55e4cf3a842c41746490651b7302305834e00e4d1de2573484115914d08106f618f23cc15dc534c08a77d53a1ef48ea37c78314b0c278d2171ddabeec9e0d50302047c435bb50067306502306686624cb7ce78197879d9c7eab549612ec10abd3ae974380094f14848d6815e25531147893b7246e81240b6222e0b9e023100af70d44173a9736d2927658f08f76a32d26d9cb8d76f2ba746d5662427909af480346dfc8c127806ed2d903bbb2790fd0302047c435bb500683066023100a2e862232e04e9d9d546878ced6020bfb97dc881b97b873270378db24eb8764c096de5dfcc604dfe02671f99a6fbdcf5023100b607f9fee854318b5f41929a42fad2b0ab6c22b10d3aad39bdd15be4fdf7d9070e5ca06918e29382fa0db49577fb79230302047c435bb500683066023100e351e7198c71e0ddff9547158b72aa3878c96696efbb37d84be3b7e375d155cbdb2aa3c00fff2b54244b9df4bd884bd5023100a120dcaf63c9eadaea0ff679c8f5a34221fc89173bbb62b5b7381f8033eb1034b5309592b5dac8d4b5cafa1875b0d43e0302047c435bb50066306402306a01a24e58b456475db9c9545d3bb95af7736f711b4e9fd8afaa82bf1d770e0bdd1d56f05bc083bf26d1526bdcbc98cb02303adc6676414d1c71284871ff020f82455762a1e86e190ffd4a866642a20b91f4046d88b795ebed8f5fd8c6f0d545597e0302047c435bb50066306402305960939515c6b84244820991982bd4fe86849fbc07ae49c2c4b015d26293cb4f2efc68c3b574e61560345f7a34e8e35a0230122b14e3b4bcf3bc05b37d4d6755eb52b6f3398ffff89a349a0b8abd3246f05054a7c780f9d017a118e3b7217b1f1c370302047c435bb50067306502303f4fed757e63743e94ab311116eba660548286ddbc2b6833616d2503657c262a7dc430bb509c1878dbd2bf2b27b7a6bb023100f94981eeb8e94635f8aa2547c8566200a5e4bda9e8ffe11bc77d43fe4037e5ce0220de99a0a8db7ca08fb06191181e7f0302047c435bb50066306402301d3ad2a4dc5565a001eaeb0a46d95be776fc927048a134f15be0094f88f39e177ce39e3ceb46038b62c4d8879fd12fb002304d003677b280c6ace72b9af4a07bd37e6bc5b62fa25f3199bb381f961ad0afbfe2be835900638a737dacac0d741aaaaa0302047c435bb500673065023100dc54e1a8f7b8d83e3a744050176a3ed0a2c0472fd41c8f0656de1460432f1b0020ea946aa0653ff45de06e15611a324702307dd99ec86c18c6d73366439484c1af7066fa55f193dc38825156e02aaef9d8191c0045995c185dc47d9ac4ea3e0a1bcf0302047c435bb50067306502310095f286b47817240c58e83418554acfa940f40d7da15646780608c5e2c8fc09718fc20c5dec126b3f635c2290ea02354002301e283b5b2a6d780b464b5f42f33d2b9ab4262a329f8851431277ea8b41b737f75932827b7bae293b05c59954205070120302047c435bb500673065023100fb7bb872eedc521a0c8b6af1e947de2f1c1d334e40cf984be9b3585319b2b2425253a1c4fa1134695fad732ace2a061702304feb2b63a8a39358dfbd42621ea0a6c426634e9f0eeeb98114afc486bfc3600b29a42333bda579d0c6bcc09b2ed7b72f0302047c435bb500673065023100d477684dac1b54f5cd217647e88a1d8b017ff726b0e8b411174c42050193f2b701c227455db2421df041ab92c68da60802301cd31a0bdbca8b7bb44766f2a1563fc2422f467dffea5988047c02b4623fba87155065f6be6681fd63bf8d77632557740302047c435bb500673065023100e745d3dcbb8a478394477b1b059bcc2174a35da298136bd8a71c40c2ef6df656dfaa754cb9cf3f13bc3c7dfd4a27a5de02302198b2a3b14a088135a47ef95a30ff1dac975b09f2ca826f61186f573f3c6f3cdd169ef6dfd8ff8c9a04d557eca1f3c00302047c435bb500663064023034640873457291ce1e6bddaa9b7f0219ce5888445b6e41e9ff3066e6642e4dfa2c18b642fca21ed4be0e8b1208a4418602305d69b4bd4bd9dcc0270d4c761093ff2793cfbb97163f9d0b189e2f95629079d970c8a7fd64f2be9481a5ae53f5aa07180302047c435bb500673065023100b545e06b71b8c605aa70352e35d48c4ae023ed799079d31fe2edc81646d35ee6e53c988d41bd12afcd39d7b95ac9df4e023003ceb47295c76753633f156568aef3cd5d26cd4782a21b4bf131e5b54978cff6e65c9402234a0f38901ab4be295ffcc50302047c435bb500673065023100f833a14611af353c4b73cfba73c55f026572c6f972492578ef3bce311694199d3e51d8043272769afc53ba55e15a8bd602301672195b08cec04512d1c1aa6083a348ab1e27a41fc73b66464d382909b72fb82570424a2e9efda771f7b8e7df44a37a0302047c435bb500683066023100913d0f6790a86971a11f47ec957731b6601e3b96e2d8704b13fd7a4dc3501c9ce9fc85aa5e70a6a80d02ed9c3e84e0f3023100c6a5861a64ce919fec5d78ab3e7d44a3df2e8f3838add58a6980c3832091101c64ac1f7156c73ffe8a051f0902d119120302047c435bb500673065023100f35ccb8391ecaf4f92fdabe2fdfae52bbd3ea299b32e57929e009156298bd0d6b10b0f2e92d0e3c67db48537fc3addc4023025922757ad52e4a6794be3f6f4d5680524c960e3a6d1659156d91be993a13c1c1d76cfadb75ac23b8d0a474cd12982ce0302047c435bb5006630640230290abc1ad2c37c095179e9f4ccd41cb692ccc1d934d08943ca75b9248b1242156f0ad568c761a59c8d36030cb221465002305a441d2201f784226d1388556b2c6d6c45719f3d8d1db58c796ac1d39d20279dabf711522792cb0ef77588e3617da1e60302047c435bb50066306402302e4eb99ea654671932d5b6cdfd2643d34e089686c786a972a46d859b50cead33f76a935310370ed32a5b427607dd202f023070894f5998a7b43ca11e860b87abaf8cf7b2f0b17a5ee39f3cb84da332b0787be065a130bc014b0196314b9961110bab0302047c435bb500683066023100d2f0b4aecb2abd0a6135adc7762a6811c7044f9e3b202e8b5a970285851f68f8d60de433bb4154a27d694e77f8ad8d2702310091a6d7962eb199fb70291b19dcbd83184a1e2e1715c6d00a06b0a7ba3a5e3929fa5c01b26fd4a6c7e04340c38823fabd0302047c435bb500673065023068d4b6407ca3508f188b17bb2b7147f792adf4d37f268e587be13a761675b750dc2624c0ba14ef08ff102cd692b032e9023100cf882433bd96fd977640ad01dcbeaecfbea28097c68c5baf393791a2b5adb3f77a03caaa8b4c727ce29e2f1120ed8b120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301d868bbfb1b6072850bfe36b4df0337acc8bcfcd6d224be744f091a575fda4fef23a01122900342964e52eeebf7e261002306aca83e999ebe62a2643ebe5e8730b6f7a34ddbbb4f5994543575037edf3573802dc8a802d0feeaa2a3c34edb891d94a0302047c435bb5006730650231008a5cdd54cf69dca505c4cbad08d4b8f46b7214320c0ca027038f1d736f2c4d7c998817ffaaa24a7965426cf834764800023003d0f932026c23323c8127d6db64ebaca0df393278dc54c4f519174b05590d6f3b2a6a12df3d357b4a755e7d8bdc92df0302047c435bb500663064023027f3abe16e6efc81bf98a68e9ef074d2c16332b87f80251d676ef325cece4326414aa736268d3b45645c60b17d3e391c02300f9d1b6f37c30f622c5db71e213cf83a6090906a7786d4f6feb9022fe3a345433aef872dad5e9e1a045b9dc5dd2b06980302047c435bb5006830660231009a81fbc122ddd1132b0dc38ec927f5ce5d29bb0f5e57689f7e8129b97c0c1e51e0f05ae96400bbb657bc64e9bb27baec023100e064be37db7ab0c135b2ae0e44dd1ac1c6f00813aeef2d086efe805c02607116bf8a8d1d74804a129be992f6a4b786e00302047c435bb500683066023100811025673f5227de4eb6966659c925ffec61629e7469a190bc0af7e28560f26de915309d0500b6eace74f0ebe4ac1a52023100b14a384f4c66b67ee8635b6fed1b994717a2003aa7a93598feff4ace66d4fb7cc4cb062f516c463eb95758549984f1d10302047c435bb500663064023060b68ebc5a160fbbcf9c5f13ad03ad7a6b6e62a0c898729cd4e13ea66ddf11c933b2b59f95d7e88744da55ac0986a1ff02307eac9748b66085aa8cbc02dad92471f6edd0c5322f144350eca69aba981bd49ac80bfd27df9e45bd1b361904d52f5c730302047c435bb500683066023100d1dcd8c620af138a17820f1da933a95eec86f4091c59f559db3695c08582093e0e16a4227a0879baee3111e1a20527f402310089939214bb881f9945f612b8596bb8bae0dae3ededd143cc76561a3282e4b2c2552cfef3ae31206d40656c8a1f0e09bb0302047c435bb500683066023100a8be2ad171552cd1a67b92089cfedf50bcb06201f840271c372bb58b8a8a4711b1b7df9f53bd5b7517998a61c0432d6d023100c4cabf3a63485836002dea5c74dd41bff170db7fd1b47e7b3657d5d43a664aa45a2dd4335488e104573d2ed2ee33a1620302047c435bb5006730650230116dc016fd1f76a8448c2eb58ed88dcfe0ac8c425ef43de928574f9cba6253bce29341160226f9163ad955ae300d6fb5023100d28dee4cddaaf6eec235598dfb05879463e08e714bf6a2c61b3b86732a97aefc3cb91404370ffbc13307cb83401186220302047c435bb50067306502307ff80709a0bfda780e39efe5d772055517c7e8e13d609508084e7045c3a49fa0a1245ed4c439e4f7dd41ceb79e4f3c93023100878228be6bba9cae9d379df499a95887436dffda93b07dd191534db328e4c2d0876f2569fd67fd0b85b39884259d43440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d12db51f20a6cc3c95aa0c9daf0f643154866871667c71a1239934175055ff9705fcc6d0f5da277fb43ba452f0a0385e0230254da0bdf23325bbe5fa558c6f7429374dcc062b3f5105087616758ac76e3afc328eec9b4ea62620332733abd4754e5f0302047c435bb500683066023100d7fc0934d4af1fb7344067c56d6c6a034a802cda642288808d9c883429e379c0378efcfa355adf53265bb48337c6c6f4023100dcbc383508ef0dfcba6347881e0446251bb48766cb550402f7720084a05ec4f615ff5b0ef33ffe6d5bc2576356d9a7bb0302047c435bb500683066023100af303a57f3f87b25330187ff414e2ac22dfc200431bfeb6f5d0e1817a9e33e2f5e9ec771b28e2a48aa8d82196d0f01f9023100ced1239b1c6ad393ee25540902fffef54cef701e166351fbe730a315ecd26ea0979b8544dc1f32e115f6f5b24b1e11d20302047c435bb500673065023100a676ef32bc417944da6ae3ebb0e93f66217ff16b23460c758e5e84cd997a05d6841d0f8e8bd9d917a2fbe6a6da946a1c02307f5058e064aed8b4cebfa65272c88ac2361ea39db676373c7f30937e750942d7d5259ed958b9c66a8677d635324e36da0302047c435bb500683066023100c5cb2fd5abaceed3b484575839306001da8c00c2aff16f47a03141fcccc17c3bbd849871e7a1d73377fc1fa97d334e89023100c52e378a19da82a8781b75125b56ce82527e0c5277ccc2db684ecd8b07acd821842c8cc5cf8e160a7ee9fa78cd58d4b50302047c435bb500673065023100a172d44d5e80c3dee5f40fc270950f71aef13adc41e60b932a6707e4fd62510980085513ff39ada8ab821e438633b4bc0230604e19d23a5c570315f925d23610c19a4df7a03d8bdc4f228315b4f643246d3bcde379a7df21c53332e05de1fe221c500302047c435bb50067306502307be8186a94f816053df638429239bc13a444a879783cbebb69672f205444c93e60769809054313f00ccdbb644cd17ad8023100ff567b33d2b4b58a35f6625bb5113619c205193da77549b3abaf8771161f8c1c9d9f9820420b59f1811e4c7787539a8d0302047c435bb500683066023100f92ecf29f91cec1f3467ce3d46c99fc72998d7161080dedc69ffcf375c2d15c28925a626a7a21c6dfc639e5d71eaa66b023100f00328d8289dd3dea5a32d92c54fd9fa4c6546900b4f551aa5b5c065cd8fa9ca361e379d2c78b3d933b3b6f4942886630302047c435bb500673065023060ad8c00a58468594dd520caa95b7202902256f1d68a83fa66d199537704c9f0282293ca62c6ce1e52f549538f262003023100c7113d048dbd78dffffbbfdf0397b923d27a4f336226a5e38a519c6864f785659b43c6a791f98cec8af6368eaa6882270302047c435bb50067306502307082fbcfebadf2b231c62e2dc4ea43bbf2178a7b0933465afa6564891f61a45f08d847f6668401cec5df27b06154bf60023100fdf34c81e782ae8911693aa1f711f9cb9a720d9eddba988ffbac36ac2a3114d0287e01bb9bae1e9bbb3b1d2e076485b40302047c435bb50067306502305c5401abc7240b0560fb94d056581bebe1aff06f318cb7f6f6d67ae6f4b94914b42fe069f7b3a89fadfd56a8937727e00231009be0385813e4fac18c0522fd081dca29a6095351673cefb52053f12c8347ab182e45202164b8218fd188b24914cac9680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b2bdb7218ecfbfe1514515f20a75e9a1b7493a82ea432436c4346153d520110b7681211e90f6e785e479d31751eab6a2023100b129b6c397671886be13eab24d65eddd34e95c4acba3503c1456f0646211af058c3c198650c227ff4fadfb9fc3ecb3100302047c435bb50067306502300e6fc4368218c13da12cdff752fbad3fef455b386bf96b23c0c276c655d0fb9b86bb4cf2fa90aa468e7625fb6b7379d1023100b99fa56dfc68924c0c6928ee8ee2513a87d0527653e0bb351a277fa5cf7c8284e2645fba42c05d1b3abd3c8bf9037bfc0302047c435bb50067306502304baf120cb25564902ac89d9fcb90647419e940fbc146bce725353337b4af3eb0b6a5ccb90c7d3211ad0e56a343941ad4023100c00f27f0ed29796f1377e7e4b3ae2abf7ead0372d27cd8702a52e110bbeab014bffbc75b71950651ba023b10740e97ec0302047c435bb5006730650231009af3dfe644983c752b9588f0a3203acffce7566aa81867c04564b10e61b8994cf33b1b63b4e328f22c4bdc0da9d0beb102307d58a4670e9f57a1dc468cfb4e2bb38db38500949419d48e494966186f1382d668e593d3d969588f23354f795a6e770a0302047c435bb50066306402304a7142735070bcc3bc3721410ffe265051dbdc9b1c71c4447c7eab63da4aa23a42bc8de5b8ca72502deda28e28f0af1d02302d02306dcc150a5275c6d00ad460245d3a33b45fa89bc39a4a48c7a9b635d34072b30dea30fb6bf2b3d74872104cf4390302047c435bb5006830660231008e2abee48b9dbf0c981841caab4a95f4faace80d7e83b80d043195d0c616ed47c081746b761df7206693291483f3aaf0023100e875ec0eb071f6076fabdd6b5c02d11ee00cbe7a59fca5bc9d8c13eac6d2c2c0a04f6807b3e6600d1240ca388568fb2f0302047c435bb500683066023100af1627b442dcfb7a04cbde0ccefa2fc40a3508463b6bb41843a5410ca476e6fda41837f30e9806e832944b754c30bd06023100864d562529d7be47f96a01608d04f3355d0aa2c1f0b405bf44fc3c8fabcab58ffa0100bc33510ad7f3424418eb6b4c760302047c435bb50067306502305a9b68e6db8c64c1f3ad488a76f6870dbebea5a94b258b1c70561cf84a0eb8023bbbd74f8d551a95ee67bf9c93077ce602310095de70015b7a010a482e303f4ccc7ac9782315eccc7ecf0a4aaee8b89642f1d12cc4924ea624e8e5e8ba61d596fccc2c0302047c435bb500673065023100f6ad9e78617fd0f01a5e3a2aa71e99f42dff58d17eac65e35cdf1bb780fe28dec53d44e8e59898246b608f9ec6eddb67023010987f9c6ec856da9b00b4101e8fc5c0388f3d3df9e80c670034b6d41772fa4a2d1f79e706516c128a6859e449c22e930302047c435bb50066306402300faf4f50b77aef92b517d71fa90aa4bd14aacf42c5df9ce11972b287d019f52d42c726b8a4f720dc6d141ad97e18a14b023042a8ef94ed16bcf29e325b248bdad75189e953a3386f66e9cff4b3206c13a0e888f4dcbe8a93e7914aadae0ff15b074d0302047c435bb500673065023100bba57a8b7235a52846c22ba8a437f46c7ed2acb38f9a1d1e6e39f112dc1ccdc494b446d1bbbb0c52d92b92a802b7f394023026e971e6871fa4fad816a3885cf94241947a2d99e2e731c019fd568b246ffaf033594be1c87e274c70d7f823d2674ee50302047c435bb500683066023100c0533f59e6fb24aa3c8bd4433f2ed27121e47176c997ff933592ed87f79f91fcf036a161e7fb4a0b7313dc3c927d3d66023100925d0ae369fea0375dad99dac435edd82bde56898744c20f66fd0cfa456ff270aac68d5a1f26f79b6413842804b1edf30302047c435bb500683066023100eca1ea810f2da011c48ad9513fe0b7cea6cc1c3ff7597ea95ea53f2fe490ade1b81d37131a47f9d897ef62c786cc714d0231008bb14186205805a9746c3d248fb13274fa70649aa238a6f041434d070ee3507e75a94806fa602f09daad5de2b529d67e0302047c435bb500673065023100dfbeaecd01eeeda9e2775e878f387c8a4860e94c00cde048edcb17ec38c654bff28ee4cb5d96551cae34957f8dabc8e202307b490c00698b46f5f3ae41383753aea50c0e9b3f66547b6e158dfd3256b737c8d44108b2666f1ef7773bedb83661e3c80302047c435bb50066306402307d0a9689fa8a2530186239526ed11c3955b0f8b9cab1bc62e617543086b4eaa34da1cf22256cdfd20d4a87adaeaf34da02301b3085b978d4e2a8f1e1240e8541f3e4586578e67163113e3d379c334bc4af6fef74ecea05f10874045521329c573e9e0302047c435bb5006730650230188ca16f5c6187e9b67809e21b14b15256cf14af9a9fab40e98358be943091de5fc6f6dac45c44ba60b19bf7fd8a8180023100f77ea2b9d190a69a1ce6cc49fb6366daa87c78bbbb4e6ba6a013ef6081660b8e6f7700e9fc9a54637532f849491820650302047c435bb5006730650231008f70dea0e9f3d5057f5181e0b36446e697a711b4fb41f790465cba918c19e28ec6a73a937968b6363bbf914c2c5e91e202307b25a52c78f4cc654b0203bcf65eb5be0c6a482490fca493b510b3a6bbb6501e552c6ca65d1237f0a7cfd2099b69ee860302047c435bb500683066023100d8eb72b9224b26f106781113968e89e9e0be788a3984d28ea4405040be187ee5f1067910364e4cc2a3b3280935e8f1fb023100d70acc7d4f8468b2e60cb6eb2850b7c90f8e0edbfd7c3650e21ca9fe4ce97fc028f180676c9ae41d085268167ad771870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b069ce1caeb2a5310a64147a8a05c96c88f57c146d5df3acb1f9654ee33194be2ed070a934eaecb3ec6513b047224af3023100f76ad261fc8285a1c52d2c0773791ba0f6122addfdc1b197d611d3957985c3fd590341815fc478bc5d5d8f72b981df930302047c435bb500683066023100d4457ad52e60dfa7134f2ab06d93774e1dd8c3f999f9df706e0209058bcf09006d8a84cb996efbbe7bee9b1d63d194e3023100de93d739eefba1ecb620e65ee938a65bc4d56f745ed8c36a963b7893678e4637d4d32e01a1102db28e8a3a5328380f700302047c435bb500673065023100c4782d6aea0a5d02984f7937d29e227af0e5feb6f0f66f3aa2459590b1564b95b7d5b8a5f12643b68f73fb15806634d70230686b5fb09ba52fe1b78097cea054226ac3b3080343d553c06d1e23affe01ebf2a5d468bcbff3d78ac75dab2ec6cc48bd0302047c435bb500683066023100a656f7a53b9664c58d23369c0eb756ea1ee366c08f25b949a01964b0c583a74457c39ff1adf487108dd6a16123d4ea7c023100e53f2bd082476dd312d094d63cb4b153c273366d84f8c3dc128c7d13380321d0a08acc4d2a9b4b9636d018bc60ab3a240302047c435bb50067306502307de0a02a151a43c53b6cda4c7c9a67641d777da6d080f9b3176085526091473fe7a46ad69949f5f6e39ffcec72ce0bc9023100ab6bcd6573475d986dabe9f9a7ae01d3cebb7595b20361883eb26c30cd46a385b5ec2144870bb9e52613c50e9c869ab30302047c435bb500673065023100d62059908adb7f5dd42a9c512891ccd69c1649b0a00cd14a50a44948d232c76ed03400b2a7d61057b6efa4431922833b023017c354e6a1fe3072a5f69d2fc9c3fedb87246600bc20f512af59cd23c56c6439d23a9aa28118d8314e749854bccc90820302047c435bb50068306602310099e73096a5fbb1373b23e647f973dd975b68387ec541752b52bf16f0a20ae3532d9a130b136acceb3064959a0a49df0f023100df89c3fa506ec35fc264fe60362ef3f6e57061abbf6322209b2a58d412b11d1f9dbcd2aa2f4dc4d18edf3daa8e99a1160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023049e3cfc185a9fe6aa4e0ed3f157fdc098dbb79b610693476534051e99298f124f242017748a8495e4e18184d569cc28002303d65c32983021609d5467fea7da5b6bcadb1bc197e24b406db2c7b62b8de52cad9e37b111db47ebd74e1d631466f125e0302047c435bb5006730650230133c77393b760bc375e5aaa2126e1e6140cc3fabc08e63c356533e8aba044380542b89d1b36530dd69a91f79d789f105023100ecf6381bb4e04e76fcb95bad6a120141cdb28bdce578cfc78baaa97d9da303e76afcc2a8a368c687d5d61e432765c3620302047c435bb500683066023100de4f53fcf5a922bb617da7ea80d0a77984d553aec76c71ca6a995c5a9a82066625967d2cf680b7fb5021edbfe501b7dd023100d9e766b44c21fcc9e153f813d7a01ee6b4738e943c7f1042590500101f7a97d4671db9158c7a18468b22a4bb5977ecbb0302047c435bb500673065023100ebb951bcabab4373f82c5bcd7e1a4bbb2a723ea6dba13aa29ca83e07c0984a14fb774f0f0f8eb2120c57257392713e9602301868ae1e608799cd7bf36f275557877c685ca391bbe3713cf71f47800f5d2ad50a282b4392c6fc3c6f6f57e25e6629ce0302047c435bb500683066023100b689ed1d6439f09ffdfcb4524976b589ecdf5fad5c52db1aed4e1670d3d0f1423fbae37f9fae17bbcc2efe94761c4fcf023100d8a65a461fcd9ca12c47c354afa2e206b964795135e05b5fb7fcaf0d9ad8baac00c4a7390b933c662acbd03b496435440302047c435bb500683066023100a160e966cbc8d0335a21be1eb78d79a8fbf905ab1b492ed5362c7eabcbd43e0ad3ee0de2c756b5cfe373f39d3c4f5dcd023100b26ecdaf6dbd213376f47ddcfa0524a612ef46fc124bf6b618b293b0506aea9b06d4b73f0a041f0094b6d6ab49391a8b0302047c435bb500663064023007a02fa306045eb54d0b31de2690f02b220cd1ba4ddbcf33e7221c8aa3d5e5ccdc15ea9bbc392b6f03a2ea6b9e1df46102303790e53a3e264987aedd1fa1fec9886f882670f026fd26af87c537ebd61912470874e9abc53c16343207f09bc09d3c890302047c435bb500673065023100db99be469b982ed23be4eb6e18de2c43f03eef45d950226b9efc1af57be288e4035bce85e2773bffe9f3e8ba56a9b0d1023071516f8445f9567efdee2399345bb33ea05daa6caea3f94ee5635da681ae16f389dbef9e0ada7787b6d8c343f81d68680302047c435bb500683066023100bd5f46ebf874d250cba573c6f17570d467a362ca345012465fba8579d0a9d40b9c64a1b6fe1cff19c62dfce4ebfd970702310092c7df0c3849473d736f95352a49b1c3ecd23904e95fd891b871397d7ed2b7df67e295657b6600b28fe757fc5c54543e0302047c435bb500673065023100817a006db8adaf59dd640b65f11d808723bf4503934dafacd5df1c51456184ff6cf1b2e1d3343bc58e5cd66f892b832002301bdea58c3910091f7d1eb0e0e4db36955600fbdb892f8c6ff93c207065423dc06090ce13ea3f90c8aee437ac0b9722610302047c435bb500673065023100eaf33fe2a5785e9536b8f5cafb41447d44ceec7d23cf52c5aab6c0369a3319314d8772e1888b636872f822517d800bad023079c172bda045c9b08878126cba4d52f64295886a915ce336877f8efb0f303736ba702c4876dc6fa86aa9294ec95104e10302047c435bb5006630640230143cdf8666718d6994a049dbc10643b86fc0807a2d9f0cc56f913f3e2b3adafce159933a8843d7c8bef2bc8e8c4ca225023034411659c2e4462a41de3af03dd5d723182be4be21169f24df22d8a58ca2d85ad7f2b2e17035dc4c7104d03554af1ff40302047c435bb500683066023100c949fdc2d6453d116fb745095a80a86a21c4332df8cf3909699e38b09051199b7290372a90287fdcd2e495492c631837023100abd862e4bd7664bf0dace11f2f03fa3c7ade838ee15b6d045c6d3e4ed4832d3f0f928cde1359db79b08ffbc7737222b20302047c435bb500673065023070c7fbe23ea51af78111ced3207452274710e78270f48e5bdeb4c71a39aeaff8558b935c757391c9454d1341799664a802310095e5069d916601d501bbc12b7772601d448efeba865cd8d98c583575f25656bef1a80f6161f587381a3f38080f82b4f70302047c435bb500663064023072fe764e75357cbe20e892a7727a4b1d2414ceaef818fbf83d38e0ad37e5bc769f7a4fa71ae4459e5917f5d4650d4b95023073dc84ae7efc51147b56c8b250da5c5f10e2ba1f83bd0c1882b193cbd4d1a016bcd131dab64213a8fce62e32bad30e010302047c435bb500683066023100d0640e8cd3f970bc35db21ec71e5dd743a3858483be403308b354cb3d49483aaa973d0fc14acd90c2d95db5b22fa8b0c023100a5204cda03983a4b0efec114e19212e6220677d2284e5041724bc0093ffeeda685c218956dc70934ba7381454e8f26b40302047c435bb500663064023043b2ba997b7c6e3e3c70e8ee78ff071a9ff46d24daf683d15f0750cedbcbf3230ceb0b0409b86d53b8e2a57476753923023005b03f8a52eeb6ebf2cf2eb7bdf4c9e19f076614937f1037dbc678e2766a6ddc446871e5c33cb00ad2a70b014ebd3b470302047c435bb50067306502304dd4d6f73d87e98086580900f72b82e0b96d3e319fe2b32c68805c718c6b23fff630ae783253ccd362e83b29bf90d722023100abfd7734ef3dde165893405e5b6382248f6ad0455ae6e84dff692cc1f2fc19d2e0d2e1f2e7776d3d3c53c74cd1beae360302047c435bb500673065023100efa029fcf22249d8317e887410360d1c63eb76eb9b73e4f70b408e9201e1bdb960ca2af00de641f611ca122ccc66b6e8023049583cf3a65c4fe40a9c7febd46f461aac31f503321a6fe8c11d3397abb5a4dc9fddbec8a4ac86ddb04ad303d85237510302047c435bb500673065023100eb6be8afb57aec96c89c3da93b67bf9c0dff5401eb519acc19bde9458479bd96cda1f3efb1ae331623c7847f8ad12e1a023067f604b641c13ff41b20833f5f52acf7484993b5037d82f2e95c7d5083ec3bbed573b77535d5d8de4623e093801572ea0302047c435bb500673065023100ab7436f6d9e3611f83cfb89b986e67591c1e873996495a56d15b0ea10c39fc2488ec47b10f5d5e1a2c6e43f81802c46902307c4962fb0cf1b3ebaa1f223d1d897f1fb67f120c384d1c986229e9702f384feb01540c553042db4566a12bc6c4f795d50302047c435bb500673065023100bb3a8c86ba4021f2cf08863bba7a0b2364d540e0ca61a2a0bb63bfa5cc5dc8637712185008004e32b842cab25bff5673023003fdb2ebad224e0a492622d13efa43e0ef7281734da7ecabe95ee381270396bb352bef84faba516d4571da51f2399c830302047c435bb500673065023100d20891fa2e0a7a2d2355e6885493e6cd08b74977154a4e2d2b94bfb56394fda6ba02b6a72b7758462d5f90ae7ed2bada02306d70d16909b3ab98c3b99289a9efe6393ad6f16c1bae08202d48a6ba3ac435af550c2481fb25c27ae418d92665862df90302047c435bb5006730650230247ec777cd252ccce4485f82c3cfb0bdab64ecf3727770c9d12f38890384187ca8b5f6341eee1eeb506f3b5432e1eff3023100c6e6ecbabbb1a21ca4d44c3b0c3fc714d923bad6e120773a42ce98d74abb0464e72848d94e90b4a50c859c9b2f783d6f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303fde4f9dc89364bc4a732cc7cf4acbface1fdf6ec6fce78962b8a43fed7f3d7497d39e068219b5ddeeecc2936b03adce02303a388c77e2f3f6dda05e71639586457a48572aa05085ce3d95814834ca3c5144a1426c4dd8a61757bd47c420bdc48a690302047c435bb5006730650230208260effc944b9cc3f87425df0a73735ab1ffe81e9112d3355275695461c278061cfc9b5dc0129e37ceefba60dc169b023100a5fbb35b180b5249e0fc21a7457b6145a2f1e2dba0a2c9402a41aacebc85bb712bfe8f908e2f7083d4838c15af3648750302047c435bb5006730650231008a9b8f7cdb8e8b5d54469f0566681d98b9fdef99b14129482bf5ecbc88243d40e733ac1aa5699cd8202294473a82c9bd02305f3e3e3825491be240185dda9238ffa98492eed7d181890f4d4fbca5fe4ae22a22b793a483fde9db6e4c6c0f9fd5ee290302047c435bb500683066023100d76236da52f77902c1dd32e20fa5739638334e6f8c111b3238d7baf07da7818c976c7b7f261e0fdeb069fc592f4b0ed9023100adc7374a550a2851242ce74852eafe41ed93804296e74c066b64b0ecfaec9a1d62a8fc50deab79423909821ac8f2a2c90302047c435bb500673065023100cb2bef451b70efd236d969ea8b2f717082bdd39e666f14b6379693619ce3b344de74cc73e2eadead091464740d919e7202300e43a2c15238e990e26e1cc138fe473f6adf7299e0c7a22229e7a14126b7c6d9529012308df4f44c7e605ce20608cebc0302047c435bb50067306502301b687311de92fd01e03f452a7ec732e690b289dc3e2238e233d3ea2a05138e1997d0b0611cc89aa19b3ed32b42cab04e023100ae953683fcc3503672a2b15f93888ffc5f08d821b577c0c19fd85ba3438cb52b407d9d8d85e91d32c5f699b9ddfe95ec0302047c435bb50067306502303505518f19928e6d4aa4211afc1999808c085efa1e64818e874edf11fd84190973c2d9dc2c4daef3acf256d76a9cac23023100d4419142a16021428de7e4a43b46e5c0c77720450fd91830dc113039ec5f2e04fff77cbeaec154802b897aa5a176b0320302047c435bb500663064023042397c175aefb714b3871e94f5a4e81701d9fabb1765a67b735f59497de086510f373473d1db4cb52bfa6d52ff4bc0ce023020f82455be8b3b16c1dbf1222d8c02ccb9c4c830e7bec802142342223ddb95240d96def944275814ca52e922063ca40a0302047c435bb500673065023100ee9e021c249b099166476193a0140296092d6ea47b4d5ddee3332928cdd7d05a27f60b2ec495eede5fb32f0d60cf9b4d023015ec4b0edefa63b592e31275bdb1b605e69e51e2259d9e4f4e214970a2fda6783ac9523549dfe83f8f54ad25686cb15a0302047c435bb500673065023006caae9031a646aaacf7bfd1cdb77db006002e3c71e2dd5675e8e9210a45aa31d4b286100c0fe54dc467605013f379a1023100c9840689dc54f4075be3ad3a8ee376f439320aaf874b6d4b162970dd6b79c7d6755ba6bfdb5d11ebbe6f794d5183dbeb0302047c435bb500673065023100a7ac267e51ddb417046bed658969e1cf63bc3a7220990beaffd4dff4ae620a36978a0090ca16e90141ac88980329714b0230113d5c05c6c4c9c69315edff92ad25bb89e05859cb38744d4249cbd314fce6961e715063d55ebba40e0984cd47c0c5800302047c435bb500663064022f09a0e5497f97bab5b5b3103229c10c985f9dd938f1d3a2c1fb64e8f886a3d40fea8de5d975778931aeb2ef7a8d62a902310083f3ed80e0759dc831244b3c6f2fe19449d1a02234c821fddf487d8fb3704a912aa341248b51170053152c2665b1e46e0302047c435bb500673065023014cf55799c36e34c28649b2289ea5f6902070f156812b1ebabc7ddf80a18fd785e1fcf1b8a33e553293e51f85a89e605023100c5a957bc55b4bf7246af5ce1fea3c416b9e6c99232b8818af3324773bd13834e3871ec5584e3c40dffd268f58609a4350302047c435bb5006730650231008327874bfe8b76bafdfe0e28c8ee9cc5644faf36c652e81b7977901579d08be32eab8d27e4c916dbc5db80a917c2b62502300b68a7e2c4d80c6d1a50f742cd62ad26ff27a350b371e17825a1a09b9d51cce170f7a5ed8293c6d7166ff7de152811490302047c435bb500673065023020d25fa4f8fe877065170f7b3a95353b5004c7f8c9d0cd7d880e9004051326bcca015df1f5f840a937897c8434bece32023100ec4575eb52407af9eec18836764142331443d6d03ad462fcc09ad4645e86174301d440933d33ead75b6cacbb832d14460302047c435bb500673065023100de3736648c63af1e8bf46776122d5ab93d9d2f2abd39ee96b7b1fc8ae1c230126b4e93cd0a70b340f7c6ae68c082642a02300cd4a9c31db970fbb754d02148d44d97189b2e47add1bc5bb9537d0f900913fa372b9b2b1c91b30958557317d3ebb4fc0302047c435bb50066306402306ffd37bb186b8fd50042e4305e64980321778cb8f4bc6b07c6333dc206e7e0f735c8c1db8769e5dda2ab36f5edbca5330230197db99e57ca8f5b2b9dd9cc2554903951118b7ec644af4310cc9e66b11646fcf7152a747b610d54700670105053e4e30302047c435bb500663064023057db6229d2955491f207c31d7ce0907a9be74188e8eb6a2aad5833228df8fa0f06ef1731bc32294ce18482ff69518dfa02300c88a4fb2547328db8f21e84f65a70c574f9ff736420f3f4147d7e66bef287fecc3bba5f0822ca2603a89f5b971408be0302047c435bb50066306402305d64307ebd11aa3f502594266f7a425376a2fc5518f67d86a11056930dcef1a92a38519eafb5f5e3812aabad62c63eb202305e3a1e4cd97dafe7196ef688c382da405241e283d6491e91092d0de5b40d91855a0fb957bafba42dba21cbba1f106f4e0302047c435bb50067306502310099651a7b91278224dc78046fd2d5f8573c7d425ffffa7ea9fed6cad91c76d1ad6681073e3631d3d6d8c579280b77947902301bebe9a15a54fd509022ab5cb80cb7e5b40308d6a514392af7b3c4c5c296b9d9a3196383eeff447243e294bc37cf89250302047c435bb5006730650231009ee6dfc9fe8a0050ecc304a39f5be59bbac1431b60aa664d9f581f7ed35a058af395ecad1b8e87b4d33af333340695bf0230754b99cf0a2335c5e82b96418b5cccebe2b4be68f109cf923bbe327c35069d6d405a7aab2e10857b8c45ec865b0564a20302047c435bb5006730650231009955a7594b9f5e1fff63908caa2d484037a294cbde3fb2fc37f45e31d6d0c6a7f39905d7841dbbb00fb7ac088e750fb2023068ea360848e832a226c4cc86bd6b94cb6ff7fdc4de6e8bbcaaa1e639bf5bcbfddfecd5014ab910c039b36521565e6c250302047c435bb500663064023050893caede5d886dda266edba2ebd88c016119b4d1c097247b64139068c818ba7c58a92b628344df1efcb07a2033967a02304230189a0e8c42f57b864726dd3ccaa00a0f530e4cde819b61726f354cf39dd723dbbd25a879fe4c231299e2c99a4c6f0302047c435bb500683066023100fb3f7d82db481915ddd24c7e68caa8008ec5f3c06496f93be9e8bc655c2411e2e03476b7d24d86a359c2ecf261ce8640023100a606cef911f2944cf0824bd2cccfb04e97590f17f77c62d6fdf51f3f8ce54fe17740647105801076e82d422e644149470302047c435bb50067306502310086825317a1865249c87a2d0d456c0a894e792dae56c3b034c3d727d57a32ee1a426ad1bf8d923b9781f29dc451fb8f0402307f4703d1eb1d3a56d36b789be2e3c933ea9e1ed365f7e2baf6958485bc5dc1dabf415070674b5487525795714795d19a0302047c435bb500683066023100950eb15d527220a1860f6865823c121a18e61a3bf9de8ab851aa2e5e11e65db6ab5f7d3e9b72a3af3cb36bf9b40c38c0023100d7d2c4e82920285dddef35949e805fd30369192bf717d59339fbadfc07182fe3c4fee774017080b8a7c51811ec8ccc1f0302047c435bb500683066023100a6a761bc2fd531fbdf12b02e2bc4bb17248d3af16f7f6c7de3a98cc6e60af28c5ed14499f28d4e10a1c8592e921f91390231009234af156a2d25db47a9557a083ff16144f271209b317d5c262b701a6134017840c31d333a38e61cc5b1fd79fa218f8c0302047c435bb50066306402302276fb3009237be227b1cdbcf30c1b3516735df34ad62288812e4792b0aed0f5246a93399843783253eec11d62819d9f023064ffd66e53ee2d25e7c001cd6bc57b0363044b48fbdbf1cff6205566e961d176cf6451aa60a4d3cb6ca6024dc8ac8b120302047c435bb500663064023073f6ec7581dc2386ea7886f4ccabfd50d13ece50cb572f0671c9517ac33bfde1465f555a419f127a168505e1cb303c8602302080bad56ee20f5c2dea1973828c389fab9ff0354db98bca8b5aa6ba2848e47b87b8c964ecd67c7b558751ee0c1e0ed20302047c435bb500673065023100e49de4520042a3186e45d5c8a485f769186294640e060279778fa751716fe6569c836edf8c29af6425cc460a70eb76070230424e597564d38e618d655f0a601ee359426cd81e4c21ebbb5a411184df9f331322c483261080c41a9e161349fa4aed1e0302047c435bb500673065023100e1b610765703b429f6ae252279b6949fe0b8d84c916fcc88a8a1ecc2da5feff714ea05445339250b55b6790e3dc84ce90230604951ceb6cb5cfdf04a6a88279e933798af6206cc002f7b9b6bd49e613ed1aff4b36c3866e01e530e4e3b413b9816d40302047c435bb500683066023100a4638a3aec5364bdca295b2f802735b0bc06fac0494c415f2197e39df9addc298109812b4caf643f8a0148206f5b38fc023100f1e704d60f2d13cfd7707a5e6eb7ea2ea3c9812dbeab8609665b417a2f6df9a9b66d37eedfadb97087135c2d9538fb920302047c435bb50068306602310093b4e06a8fe281161d9259b0eb62e72fb59d11b2478d31312d19a238e7561634c5963500fb2f1ed6b3d2d8382e7ae58e023100970cc8446989a37edab0deed922e865c352bae74adac381d81c0667fdb0ece14d24c2c069611d6207f7f81a10046a6110302047c435bb50066306402303dcb3d2a802ca5cfa34f1ed4bec540fc85bb3241a30f1b4b1f81bc9138d1bc720ebf9873bc6c08d6a2099ea73f1a4f9c0230652bfea7447aa28b6cba18b41af8826b9acfce58741e5269f76891be17776f8724c3ad26658e6f869cf864302397293c0302047c435bb50067306502304d4cbf52faf9026a772c3e3b202c904e412fb31ee1eb538f65779056b5b24943483bd21c02f8baae9218fda898de39720231008a72e02e77ab32c3c5065ad7a0b660cf0c299fcfc801e6e15f1949a24472fb930087e0078895651be99f463847a608450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230025fb6823fb9b351e816afe133071ed2deadabcd823985e2eed39ea0a8507bc9f1d844d5526cfc33d0743104e867732c023003137f4bcd08e387d527febef161ec5b8559eca0775059c9aa3ed9adf65854637ea520876cc38c84cd1309e802eee5f40302047c435bb50066306402304ea36b40ccdb1bc76c488e8adc35a9e1b6ecd7c86e95f4b7335e0e7fb952099538bcdae64b9dc422acc509b97f4a441702300a45c7a25e14ce9d21f68311008047686b8233c4cf838eedaaaa17bfdf300554354a0ae7c0bdea2188f43e103a7e7f350302047c435bb5006730650230450e18cf813d28514ce63dff239e6e5b4fccd556d7cdfb1428bbd44699c7ef004f5f1fad72639ec087981ee78a7ad1c4023100ba4a410e1335bc853cc74b7ef03e55a64d6530009a584b4111800a59f11854f1774b093905c1fad504c7bee82f6f7d840302047c435bb5006830660231008caee4e34b2fa956b9dbcb00d8887348b5b3543c40825584c5fa151304df8e0e29328a81558f74e3b50810974c880438023100997832c98465d16e366511b82827935a1d85a1ce24d5734d508bb09b5b751bdee09fbbcd414b2489d55f4aa5c43f8ca60302047c435bb500663064023073b347b07792ffbae7dc2b4751f4529557981b73a15668c565a2d7633a308de1544c58ff8357fa8d7dd6372cc7811e26023013d40c40c34c5c79a57f0547a441cf37f87f045e453f86c748c73146f2abafac9c32af6f29b5899fe5d1a762fd330ddb0302047c435bb50066306402302c05a8fad045f09da5de7394aeac870aed83b481608cda4afaa9cccbc00249240dd0e552056e1147dab2021e29051c9f0230402cf033fbb9ba17b2caf417572180aa8032cd3468935868e37b581baf45cf447ce69ee4722058257723a7665188f23c0302047c435bb500673065023014f2f9717d1cbd3a4293ceb718215130111f64e3ee024dc854b3fe076e5c7f92c6de6d1afc22adcef9cbe3a167c51a53023100e140c510e66f6d47197264f8b70f618e89020e84078be7b1649b3b8ef55b47199da01439904bbdc88e16d859fc5da9680302047c435bb500673065023100824fe14e79af9c2011fda63a6d6a38666f26ab1b2b32e846e7f2e61b44fa3dd468a8197c70bc4e96addcda35ff56c2790230206c7210b73a2c8b955f153fff544c2a1c5dc02dfd30194281107461154755cdc049c5cbd0f54054862584041a8d9afe0302047c435bb500683066023100f31c6af0c8a7f87b3ce9fb026d8f3019be34105715cb9e4f56888dd9f73aec389d3bdc907b1d79883e26b0d8e0821a06023100f08938a6704448f60edc64fbb08aa4cd0c3a2a31bd792a7862de3ff5e125fe6f77d220e4116ed2b222f529442c9294620302047c435bb500673065023100cf2f2875fdc64667d62bb776894826400f9fe105133522e4ce376512b635182fb590624724f702d87275541eab33149e023024dacb0829f18635c944aeb1d9a6e8909cbc39c1bf7aedc629b622758eeb6eda7e8d2642edebf9cf4d339aeddaa5e76b0302047c435bb5006630640230546ac43d47ce5dc63507f3bad35ac6e9d70d47c3d65b5760dcf5639f692b516e31be1e66b4e21d0fbc1f494b3b15432e02300aa77cac14d7a8f43ec137f04f5ba8dcda7088273ec6e5f26d3edacd519389939c099e9bf5f2c90d30cad6a07f4838ba0302047c435bb50067306502310089fb11f1eb9a851cb18bf9cba8b9fc02c062f4e833afda4a660826373fd186827776bc05ceef3a57fd5453cb1022b7a502300e7f8758c6c774f2f29cbc34c36a78829e03be6820ad90fdaafb1f44e5ffe2d3e112d1176fd332d63aefb62c2c71569d0302047c435bb500663064023057582ab20640a1231c66d4373381c38a9bf5d32fc4a11e0650ea048cd0a8114486449c2f2c9c87081cf927b117ea8f3102304ccf650bac87b374f5dfbe468e185942cd88a66632963e6be8fbaa740c03eba6fd99d18c6d1c3fd70b701a6fa262c0250302047c435bb500673065023100fc236abac3f7de997a772d6407617d4577d45ba237427e2e96dd7acc7ebcff652ac602186abdf36b1a72a71de98d876e02304f2c465ba29d79ab2f254f4420e8d904b1531f60e42932e26a92440def0c63460ac9c4c56c07627bb43a275e0b414aef0302047c435bb500683066023100ec52f493ddd3be6e406bf1d8c42de17adf7010cc138aaae094187c86fe4dd4231b778625c7db1d1eb95749b5effa43e1023100abc826d5ca52d4c0790cf4e5a486e0572d103b0f3d531ea7455ce8c84293e3b69bae1f47c1a0284eeaff7dc0fe8cd4500302047c435bb500673065023100f3f949102559e870c6a2d463586ae5e8174b943bea9024b812f9a2b2f82562935aa1012c860023634e990b6c7f8f228402307fe614a87b658ad96c16f804d86ce401337319bb1312aff6e47580ef08dc947aeeb7e8523e78f65ba341b9bb7ee382d20302047c435bb500673065023100b310fbc1b5a36f10ae01c21fbc715a15bc86a36bbf168ebbb2520f4a5a3b2982177c89c696a56a97be8518610e8b897602305d490256f21143cc5229de44fead5834cbb176582b7e6e1daf292e2473176629b0051bdadca83cf0b691d3ec66da714b0302047c435bb500663064023006839a3a103285d3c5110c862b0e832ff61af9a0dffeed9d5f592ff12eb499dc80e79d693fb4a8de450c398d74d851e50230227205066e7ca0aea61f3bc6dcf477fe57ec50ce3cd52df8bf3a4aa31253430e2a0112aa35b79bbbabe86b75df445f930302047c435bb500673065023100a3bb8172b170e443f22795038ca350b02aceb9bdd18ea9dfde9b729e2ce90b7ad02e880e809f2c47c123e8a4c738fd74023051e71bb969494f56bc46e904952b7ca48ccd4233f4891bdbdb4608b5f80ae20e6eea7cd99b7bf74c1007505720cfda740302047c435bb500683066023100f31f527b6e677a5280d53a0958a7f217dfd4f951b766fd997dd15ab4f07e8e3ec547f6ca802c3f6f05924370cd81fead023100be8bfa0b19c4aaf722dd6344f30355b07fcd913f8d33bde5e5fdf23862737e35ef2a8c85ac0ed1d924e6087a5427c0e30302047c435bb50066306402301ea0c1ff0ed62620d8a94b28114324d1d29fa39180ebb5f46f023d77d98e5894fdf45d0a6388317bb44a55bdf31336640230011c30fed90f4bb4526572dbbcd763d86367ef9f0d16a456b4914b538a53a346b299c65b152d9afac6011fb2b2932de40302047c435bb50066306402306790caab4b788e8e7c0705235804992adcdf033e3421d47fc18f192818d4133d31b0c4c85a06fa6cf555ee1b77a11c59023012b7f2b25b25b7e130d62601335b4abc81efe9cd65c4789f22d8573d77368aea92d555c2e611a3108e3a86c6be97da120302047c435bb500673065023100fc81f0124dfb5a367b378c99066ebdff883ab15c43008aed45223b2b607220a665a462ec08e52d57316753d1da455b4702303593d6414b99a48a4bf667d2749c288a59341048c2ea1d1c8a2691c02053d110265ccc24d0bc2b7c57ef243c38d53fa60302047c435bb500683066023100d707f01497a811e30b873a268c6f62fe255bf60dfaabf5e259540a64d8a9fe683ed8ce2e07125e6a083a5b473834ea7c023100988847235189228a4798a6f459a08be9e4e7c69356506b2c117516a65124a5c1759c1f536e78dd67a68b2c630991bbb50302047c435bb500673065023100d4c8b97665b96e4d558e1ea5ccef16358dafd59afb73819437a214a00f06d099d07ea2e96ff09c89fd438cb6c1d1d98802302ce7328694d4c1b696c73bf8c5f712faf3a4caf94a32075ccb90799a5923b09b0d4ac55bf47bb0b65bd79814d8e196630302047c435bb500673065023100ecadf76817a970bf91c5e7a8e48f7e61f9889dedba89c24bcac574c23fbec4f017ae9b6384dccccb11e108ee002ac7790230275fff3945f5feea332fc18e7d72c33d9071a0a89f0f10f9f97da71c20b9cab0f4ec927774016329e474f13d83229fc40302047c435bb5006830660231009d4f20171bc6b66f542acc053d817489f151233b9380a954fda16913907cba844728d42eaa97456e1ba3d20bb8f4c512023100a88997da135524f62b64e74124697b2052337e43c9db6ad07e89d640c5f6dd51c928560fcf6bad054454ec9339ca54e60302047c435bb500663064023044aeee0fde79a7ecbf0ff1cefe903aa5940336b432da74e07c80e5ea3ae83ae55c307cc9f5d4dc6ef7ef1cc924b390f6023033adcbfaff15bd84dca45e3fef97caed9e8cd119256e77be234c0a8e018374bc9411594b51765f781e3bd4c3772fe7770302047c435bb50067306502306f0a46cdcedefc4a6b3b29827a2920f4f690ac90deb8ab895b1109b7321a86738e47dab105da67481c12f993f85b2e5e023100c9a9e03fda589d701de3b741ffc875e1523b6872473ddc45e5735c4d23d769dd3b80a9db4b3701e301697ecf05ba1dbc0302047c435bb500663064023073488d4c693b4674c907906e19cd6a2acafbfd12363b8994564915dfd17a7c659f582067c10fc3e7934dba160123413302300397b9bdbefa6f23b367f2ec9ba75aeddb6e70bece2e4c500a46b791011635af9553100b1274488cf1ce34f6d220d5340302047c435bb5006730650230054f84e91350c06312cf7ee82d4fc89504223f4606b86bac6196b81359f2eb04e18f5cac6f7a6ef56d6633f20201419602310084ba21703e44e7af132c09ecb37f36e2d9ed2eaaabd8722bb1df487322f4be3d71d9f3f8f6b317826d09e4427066769f0302047c435bb50067306502303e5f477731ab522bdd3096ffa0b9339e488e223691dc43d2203056b8bd1882b13971ff46b37f71ad10d45147213acd49023100eb3ce41b6fbaf8ffc01f0d4d04b6a5d13a4491900c8627ff5af07abec5fda365db5c5aa199fb44e2bf2002b47bc15a850302047c435bb500673065023100a7cf53011f3c526da1309963718a497154e41ae4e99a447fba849d57faa9d4e556bd65bdd068fc35e672ce2790e8914902307a2a755f726dbdb2b77a97cc28f2c7da781d3f798d58f06d0e3f513908df0e036f21de155404811606d2df06337b21fd0302047c435bb500683066023100ba565bc74efffae369c9a34976a056d33f39f399ff5a1cc8ad8b38347e83c8d7dfca413f2ff4a0a024f841af36bc62a30231008342fcea9b35d3596db9ae01f83b0c33af4a7526fae9605560499971f34306c4ef22260f59635eb0945c7bafea72e53d0302047c435bb5006630640230292b5e308be33c89f4aa819e591557f18c873c1e0a1c03c6ba035bf97a68babadb90cd12b986d4cdec8dc367016a6d4f02307774a8fd0a45aeba6823c89e10e0e3be57b5f98c535048c48ecf08d7e2898a6c5cd70dc588da4585b2407eb8fd6549010302047c435bb5006730650230154facaded6beb561cdad41ea2af98d54a1fbc778b127c031f67c25c1cb81e4e950b0b764ff4cafa6803602352da7084023100ac0b11e6b755efd45737d2b0cf5e6ebf899b749e79bf36581d48acac4206c59a24ac35b60519b0c59545660666c618d70302047c435bb500683066023100db8503d7d4235d46da219b91a41c3ef8c0b609646230caa8ec67a5aca23a5af6a53bcceb599ebfb1a2f315e211d2a3e6023100d1f23950b79594f706f60521c2891483a520a91f6c44818b47cc51ee882696ba7e088ab88f78645e9c5fc0c8238da2740302047c435bb50067306502301b1137f2bb2d00ebfedfdc24dd9b0366aca645e31f39de1e5f675f617b247c9759800a0a475483939a59f7c30e7a7fb9023100e84dcc357e9a4b7fd9bb1bdc392b9c4769678125f8739a4c16e3f64e5117cf24098519834ca5ad8c6eefb9a9132a6eab0302047c435bb500673065023100a3cd5fb8c67988ebefe90dee25acaccf0383d52e7453a58047822024bd026fba37cd03bcee24f4c9f0484108ef279f480230562487c03b4a5e72ae30f0138b6b308e0758f152a561496db5eb8bf6dae9ef8fc49b57266ea313020e1680f4e876e4710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310084a30aaf9c4f69413dc74339b9ced36d6821f3e90c10bd443f5246695f11cc97064c179c50c5e5174bc46c7b832cb2bf023100b760d4314833f16da697868a0317db8bf55ce8ac735876a25dd0fb7a838f905567d69809563d977b59af564c66a7a7220302047c435bb50067306502306dfd8398d7896ecf9b7798b45e033e4504407197c0c2274e41ec975a3df8deb98782a5fcef82e541126c5a3380d46c100231009955dece48f4a3cda8745a81889128565b3bfe096951f7caa3879754985ff0fa2ec566e6b14211b2f8aae4306bd7cfc40302047c435bb500663064023044893fea343ca4eacefa65cfc09acb60a172862ef17fa216ae9b1e08a89f7265c99c78c875d9c90de50465a32c1b8e5002304edf0b7be40d7ab61b01576b3018feeef26701c283f97b3bd2061955853a737eafe520049ab56360e7534cedfc54a5540302047c435bb50067306502300c47ae11c57d5e8a210167db85ed0450bcb503bb4d5bd605088a48390f27548481c509dcc85a308ef1c089d567938604023100abd7b2a6cf237a3fb7d50a62a036dac8b8c5028e9b21c9a1fb145621501542d60b213704c6c08ac20cab84dcf50bd7b10302047c435bb50067306502303baf3e0ce773ac88c41c4af10e463cced3b69b57aa3c83318fea3c87d4f8468ff85a14f098c37c26b731aee441fd185602310080b8b880ec3d3c5d60dba33fc8b38a3fc4eef131f36b4f3b63f199c16f70a2337c5888d88d4318403a257c6331a47ee20302047c435bb50067306502303c2328d2246f71b82b6ad4cbac2513eff717827daba44523c01da2810e329c8d02afae6557cb7c173b25515a0ce2e464023100c33069945adda0aaa307f678a0106c77c88cc2c5297f468d875414915430c00e6fbecd8a416e4a1af4419d0df5559dc00302047c435bb50067306502305348a2fd7908d22d859512c6808455cee26a9d122cb1d5e45c257a790f7e1f0464e59b87272ffffd1c2e1a2a8e2b20b2023100e99d6dd82ea1d38d1b1a362419b43fcb2306161beabeac22799fca323cc071d41b4cac2d2eacce5386564be233322a3d0302047c435bb50067306502300e1811a70f142c7bf90dc45a5e60e9e92a681da84f1785cbb7f72830e9e732cf6bdbea4a82be377ccd53adf617b9b393023100abc6ec56dc21070268696bd1228f1cf68db775857365aac28ab68a9f7947e948c0decb37c5b8b62aeaefaf6aa75b645a0302047c435bb500673065023078d36b5ea221db709e3cce9fc49e1195b429198e76ff059d093f93363e18e9d24f8d2ad36d0c86d2c1c90b8b88e3fe07023100fb033c07b53cbf25cfbd462dad8a34ea6a80bda99034fa37c7fc04c62821441367df1f45c13987209f699ada13dfbee30302047c435bb50067306502310090704e0fc3ab1105aadd55469ffc64d36ec1eacf8937c930b132411fe050ae2bbe23582e4adc1baf94475afec5e2c9ea02301f3dcb1490c5a3bbb706b63cb9a740ab1a4a7c7bed035bca53b94dda67e6e771e5c9adc75502ba81015b733aaffa54e70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a154e4af529773fa4aa8970cca05b97e1db434cc1174898f8d592a1adbb7e426bec9e7403c0f02bd4ef4ede1cac8c85d02304a144a927f81fb6ed619dbe4a0497f10cfe7964fa9be251532677d6a1e35bcef679c9f24a956a81f3feccd6d1cee04ef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230035dfae7f8fbf914e8b7da61ca9a7d16eb11c20c4b8d8236d883b90f1dc5a2f5dcfd168698245d99be2c6302455ca7ce02301552d0e49711302f537e44dbb104c3047b697b860d5c352463b8c10c0cafd0c287c41ddb87cba120ba111ba2a103167e0302047c435bb50068306602310088dd0af9f0e44198c0a2b39d5a986fedae9697980f6b36fe745c33a3defc64694fdd3914d8872551d3e46edf7560b66502310093aa07400ffee490b9299e9802d458145689ba2de426a44acf9f58486b70eee432f194de5d63a1d50ea27a55a548c78c0302047c435bb500683066023100951ef6709b3cb733d15e198f3569e3134645d597dd7dd7a00f329701b53aecff1402d724e5cf6ab071a8a2429e8f528902310088aa1d2a38b6a7b41403bbf6c1299482b76439e293fd9ad507ff1da7f77af7da5b6af73808fee062581ced5c7bf3204b0302047c435bb500673065023100b06dd41ba7de3a234acdaf57bf5bfe4dfc1e7ee0d59f008c27f6aa95db079fde77d342b64c69b699d83271b216eedc9902307d115af473c3ba2a836c262df1cf5092da588b9f5906a5fad563440368f6d5ac8f8555789cad7a621a3a45cc8aa611f80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230400a90a6390f9a9f1482501f964b86fb2a0d296aee15ab40a3195089565f07978a2f383b82dad54eb368eecae5c3f00d023100d21843374f713bb4c144de183ca5c2410a73285cf820e79afcf0c0194bb8119480db2f34fd07ef743e0cd0e1becfef190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100df7b95d7e0e45371c27c218bd936c92df41f6932e97b73309108aa42c64bce1c9bc34a7dc0a314c90c7ab0e27091f999023100cba6fd191488ef215fea18bd6af9f686dc09008961039b4c95afaed410c9866b70d052082d0123c557a6021e730ab85c0302047c435bb500683066023100f4942d9566878d8f5243d3c9fdb53399fc2836fe3b75ef6976c9fffca507228613f4de5bef51698fb44e7efdb09688e8023100fd75bee364c4525fbbcef8fb139f63406c9a2677b6cfba00366d9fead34012dc55df7c3c641925689c6d2c0c23c87dd50302047c435bb500683066023100b384102d602953a63d116d86e5eec4c72c6cae8c24ec6715769a0f56170332610d5e4ade3b89e901ee2134ba2e5a387a023100f271ff60402d3f4ecfc67d4a968623d383cd26a9f1371598ac19d9fd8938ae532d2f84349f90d374095b560d1cff8d5f0302047c435bb50067306502303c07966c16cb5bc34f5125eae8853dfa3dfc546a8d447683a386b552dba3250bfd51e4506beb5d13189ab586856fbd990231008d99a0b11b0cf412a84bc330782f2d056c38dec0f7bad0220529ceeb7d87cea63d988cea591f6ce5f95c16bba10f119d0302047c435bb5006730650230314bfa9145e38d30cf8fb8b1fd45af6233342e2ce9b22599f6ce36ca64f3efb06fd5fa740c6fcb003ce5d3588f11deb6023100f8c9796b7849df84d4f3e4d03c24ea53b51b746129704e040184d7e7466a09620954caee0e3bb9781f8553240bd9b0300302047c435bb50066306402302d39fd8a4290f28e5de6eb59458b0832b5b57c24ffe2f99ec007153423152ec824cb1f9347401c8244b094258dfc3c02023024df0d6aa5e83a4a1f41a84a13db88779390a75dd8248a717c3d01a7889fa0f962ec6bdeaac5f20c8d0d627f33235d760302047c435bb500673065023100d69da1f668802ea0e8005bb04797bf35e1701916b7a8147982c0de1a0a1dc33f40e2b180446d1e32888c8f12d298119c02302e71c658182a0236b12b1f29d16994c5c9f233c2d4807af8d2b523798ea8e32812777c620b1b692f1f2fe2c4dbddcb210302047c435bb5006730650231009a1ec5ac31a810636a8a2b53b67b4da945707093d4b544e1c95f54ea5021a28d67a1da66b02ef4a574a6069c7cb59e460230731c3a628e9ab8ef013a235ca132ab3a2ef60899d7fe109de0da943d047cc8a837915d61f33ab16c82312b9678cd91aa0302047c435bb50067306502304365d637f8601c6ccdff484d461860ea9d5c6b9d4d143445b9486aba2eeba093cb83280d36c8e6ef74eafcb9e1c93565023100d6c691a675ac15af3dda37f906c5a8aa1440ceb4243b4fd66f70891ea0389ef68d187a28a084182f117dd6306987daf40302047c435bb500673065023100e3ae437110d1b7c491493a60bf3f7c0974ced4fb3cb747a9c9206a87757d445ce0c74d3e74419049b13d81402996753302303ce74eab43f3d32707a680858bf1162c1160cdfd7fcd99684f8e6dcd1f9ba22db2abd6e38afb6900e617c5d1af4db31a0302047c435bb500673065023100e3c664282379bf6c91f87d9588116814a035b7173614dd5a65970de83c42f9f62fb0f8f884e29485247afd8fd5f429bf02304c0b544aefb0de2eb1af336f27130c768f4b3b8553e64ac6791306dcd24f2327c287d2c557444e73925affc6747b26ba0302047c435bb50068306602310085de7b977b1259729690a859b3162e607b4bb92084b022b410672b5b75b161baa18afab811ef00205a53d2a346a84f8a02310086af4a02df7877fbb9309891e3fda5efb67b93c05243ceb0955bc55525312a2b1c592b08e5f34eca97e23baddb6591be0302047c435bb50067306502310080f813a380a6438a6f39f809640fb08d65a6cd67d7759183f38ccc5bcdd05b797af001705cda8d61e277668445bfc8a802301fab14d7673535d1071297b1a41f0b949a762bf378994ce27a3401067680105c38f98bcf9fc6368eebfe9f32ecc5fcd00302047c435bb50067306502305afbe6e523e8fb09be16e5f136db4d6605a35b26a36e3d712e654e94435d5e3cf4b8ac15bbe6d674bf148d7485b758da0231009e937f29e75d8c3612194d9defa9f7ddf024eeb2113406dbb23ace67eca5387dd52669a182f79909ef45132be88789cb0302047c435bb500673065023100fcf43f34b283636c1afcf4a64776c4ae52eec260477cf27996135889691640cdb8774b036f363d2c69a79eedbf9297ca02300d8a2d81dcdd63d49ff6a21d29501bd2e896a42b759bbbbcbd5ca33032f564b7046a641c19c6307d7da606bfacfcc3500302047c435bb50067306502300ddae1fdb6b6f5d5dbbd8136502cae441c43d55057ed28ddbbf0460d4389d1b8cbaa5fc241d25444da509db7445c9e8a023100c1d8ebf8a1c49e281d63f305be78ffdd355eecc34c1fdd8f772eb444f5e546d5342ff73b5808fc76c735760a92fd63100302047c435bb50067306502307a1540786b4f7152acf471463e4291f50ddda2f11b3c8686dc259715c3e91b4abbfd7513f7816e50939da6cfcfe21be2023100c16083be9495c4aa01479bffdceaa5586fb987424c88a9e60c07161a0ac686c8bcdf1e283b2c30bc8a6d56bba7bf43460302047c435bb50067306502304c028d15d997e3dc2c1abd3beab01cd9cddb1621e477c0c7f0e7584ff8866dd118429b1b6732357d30a162843f42301a023100854aab1e182c537679477e51b691b3e885dc0ba8e9795b92647526461373ae878867c98293138e26f54b4ce4ba1c8ba20302047c435bb500673065023100ea6f9cedcb8f7b8abff7a516534a1816cff85dcfa12ca75250d96e9802c5ebb22956a12a5b8e86afcc01822b102d18bc0230236dee9d4a07698f062087ac807bd07a64050b27bc4c02074a6eb059e147a4a3646d621396f055bc9b08285c4c985ae70302047c435bb50067306502301ca065becab7e592fcfd1924a46e6ffff76f8dd1e413fc9cc74690a64722153e866f8636f6dfd105f74192b88c8629ae023100e5a1ce4ef77656408b8170536b3ef8e71422bd18c6981c5db75c649d75e010bf32fb4b503f94820308207175b2207c940302047c435bb5006830660231009aace49024c38174ad4fda6423413fcf949974d8e37851041de8ba262a597f746be4713f0f3fdb293625fdda6f9e5924023100d8895b053adfd3c2b8f5a3247ea272555a7527b402eb9b23b75d1a7ad7f6d95fe8203d330df1553ca43b107c058294260302047c435bb500673065023100859d8f305b8f672206b6ba938e486c51137806e1497060ce2704eabfe033f25885b9e6450a71432368251d1e122375d8023034fc69fa93d50fcc9920ab6f404a3a1bd5eb7ac10ebe0151eec7f6a3abb9ecf5789dbd9afecffee367c7b68687bb6a3b0302047c435bb500683066023100bc83e8e723b07f8462fda017263fa9c11a182542147a33a6e0c07799f3569b19145d5d517622414a836c9daba76bdde5023100ff8244e1cc2bef07bf69db4710594102ca707762d5ecf86aba3f75805597cc43945006596a59da604d4c1303d2c1a1270302047c435bb500683066023100bc5d380b043523ca69a6245d7fd8f61ba2a225a77f654421ba113cd3592964a7fda8a8c9d1d69fdb521beb29312f59b60231008a071c5872bc91e972105b133daf4d574f744e32ddee5176252df8d25c14d29c8ad333c16eda6ac833328f966d9cffb70302047c435bb50067306502306de334e50bed5b62f9c364eab025a50354b9509ed8d79da26670042ff9f07876867853075b617ee8cfe0e319bf2ac678023100caa10c09464f83a8f24cc014f06760b8cad2caac2f018d3dc903fe626e84596beaa5c46981d58d02e64653cb88cf67dd0302047c435bb500683066023100a0109cbc6f74284250743f74db2dbced4492f9f63e7a75cfdce63939cb98e69f22b00beb05ca6ff9cfb39b38e794fac3023100a6f72c7f7b0f146bf2c199a09eb704180c686220e6e5158f3fd4aff059c1c438d2e3ef679990ab38b70ee5e3369ed1440302047c435bb50067306502307583cce5161bceccd751c2da4cb3e0657bb80988ab683ee6b84230d34b5b4a8a61fe9cbf5545daf7402c4c57abb569d7023100feecae2aa451d5db62ecd9c385b652b8813362fde1f8b17dc1fe52be2dab70af27529c14cddddbe31d9807f78ec5dd580302047c435bb500673065023100d8ecad56b6973f56ae3fec84aac82721e3a74fb1658de40429accd2d377a12c359e08e923e1d117952c97737052628e502307f3bf36acc119d43e6e99025e091e4ab25f14e663a56cec280a952a6e6a513b965e1df7cd1f21990f9313be19d54cd440302047c435bb5006630640230512a0ddece048dfe33745559d6d2f39dad223217d03c33e84f336628f101e38c593a607f35017eb3fd08069fd11f260702303fd95755c6f893a38cef7bd4b35519d9f181a06b7f4425c685afa85e3ddb009683527397ff95e97957182fcf7e2624a60302047c435bb500663064023002d2392909f3ca1b40fb8de86fd011ed109e027971d60397194f98dd14a2f835ccac9f0a890e6b31ab9a319d1fe8f3510230349619cf42c4581ccc4271bb5c903e5e69b299d34d8307ae2d8304b3cd57ba76ca6a7d073722693c9ee6bbbb039426790302047c435bb500683066023100f5124b99f35f4169259a83022e69d940950136031887785aeef39d75a1c290959e9da9c255140ba4437757ee301c9094023100a74b170f697f52518db0b902c84e5f75dabb7c8950940a0cf901b45d289de7ed4d8383772076f9f654cb8947ad63ba470302047c435bb500673065023100cae5d17854e3159ac1cd74cb42fb5204ebd2479c6d53e366a009c1485be694016efc995b3c8dfd176c2aeb673650a83c02301dd720db4d6145718405928c5b630928184d38ec7495561d0a5ca79e4cbf5efba3950447dbc7a019a3348b6ee740ed540302047c435bb50067306502301bbe0069e9d2984807675c2e8572bbdbe18823155dd6e9e42a741baee75c341926db53dea8a7a5257317518943aa1275023100ba65ac4235ded144c4ea923c22e19653f24c405df926f05dc74eb747fac0ecede625f2c9bc7f55e73e2fe5d6430a6dde0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023025a87469c9de0f73a3f861aeb1ebdbdcc7c66b4dc7e6d00adb49b500eb16138922432e1553e3d61ad7e9293e0a287c690231008a376ad86ff7a258a721b3427ddf1e97a0cb3f49f8a7dd9ed202de2b27abca2727ecc4c544f4ca1264b9c1278a2130400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302e068f84b26497fbd9e3d9427614f9904a8197f46bc1b168777dc842eca621621da53ad297be0e72284ae32caf3eff43023078b20c4d2cd2443a4750cd2210ad684f7833852d7b626f780040885e92a545bbf228dc04ea814d4f548ac0c4748db75b0302047c435bb500663064023005d478a7ef7ef5eeb3c4a3f1928a3c887b9ca762c8ac73e1d3ba310f885fbdc5a90b7c0d901bf8f07147c037af34c395023078afcd660411d44397cd78085e47732bd79c82ad43d02b8c7131df664374faa9323b95f109ecc64836248c47ba01bd5b0302047c435bb5006630640230194589da142b2acb95112f1e910e67a97967916d32c8a029e2826149aff1df2b1af740de11994d158ea01e1a271c33820230361e0b8e132a3b837fd3d21a354dabfdea23a40b7a30b58804b29fb34822f8d88e2232b7d6465adfb4454f119c6b19680302047c435bb50067306502306278cb0791734a72eb451f3eb2dbfe4cfcdfdd7c29a3527172859b1dd63221bf21781db4184c1da0c042f23e9eab4c40023100f6844377a22fca024d28c9895b49140d2cf69882a7e8effb5f97444d300ca33e7dccd00dda65e397196d09f3a1f437930302047c435bb50066306402300dd51aa0c4fc02b36d8b2c87a2c7cd8b9c1b5fbd0ce5ee51d929b652581a606b159142648d6907a9069a196f3306f0fe0230685e985771822861d24dad192faee0451ac6954fc7b63556c97b77006830a2592c7ca2bbf07c580861380a8434aa28790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d0ad44bd924c302f32f27878bc4561329c7886e70531eb32f706de3bf95541a1b0a442202a1285e39d69ca783d6daa13023061bdff0a4f7cbbc8fd87cdef6d80c6b48b46ff07b0df59c1dce5bae729bbccedf760051ec2559a388f5d21545411f6ea0302047c435bb50066306402306e63aff38272219cedf7cf92cca0920af9a3ce24e8bee8ea186e2ba8f7963efa654943c4b08387eb2355a89244d1e04f023072de54c24ebd2bf8aa47286085b72ac30afdabb9c4b156bd2205e981615fc3501b32292628349c8ab95ddd5e8248a3d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301432ac73689fcc74ae689671e4681de9da1bbcf74c8d9b2a59ad00e21907df23278d7f1b8a827113bca4e649ba24d7ba023100e8822319295b2df763b9cc61ab02187f25a411478c56a709c135fd9d2908d22e221e2618a5197668c978a8ffebd65e5a0302047c435bb500683066023100a502d0b283e10cbf7198e6b3bffe1a1bddef36c106a78d537ee499e9e9ea817f630bdf9d4105e00642028f81fbb3a88b023100eca47fbb5140b37760e81706e652d0bf35fd032b15cd852165b9e8ddf1d5ed51422286e063e133b0270df2dc59950c460302047c435bb500683066023100c8c6b5bac78c8599691f024e522454e7b32f807eb5b0343318ac74b1db2ef235e28a0cf7cc69f33cea88586328b05d88023100de053979b7d26ab95736ae484bded7c493387bd35a703069e4b3bf606d14a2a95d77fda434267f38f75393da3d6a9eff0302047c435bb500663064023059810c6d1f6330da269a0c25dcf8cf9f820106c9dcbfdf89d6930a55d3f36531c93653edf179bebd00ed25034e86bbbf023004eaa1f021502678b467334321b5ae6f45ce5ede47785d087a88b538e9abeac6f962b052e0b45ebd2d676d82b4b365b30302047c435bb500673065023100dbca80ab45e59dd1e02a039d6bef34204e8613e01f36d97d08133d527910c5ea9daa23d67af61154e261ad1ade8fbc740230486da4b2548ec109ddea06ca8f734da776c51ce964e2143afb212861b531c29a08d24272ab29402a6513423ff3a84bdf0302047c435bb500683066023100aacea409cb50ebdcf1fde7e908ba33c7e23180ddabdc2936a0cca247f0f0ab87dfad3401b7c5e0e89ddbf029d5853eef023100a7e999b510a981503693039702ea7741bbcc9c2aa00701ef4964dfe6cac2add8141a079a645a3a78ee56215a2e0e72470302047c435bb50066306402302399dca2b30487042bdfc78980ba7a033eb6fabb66987c7f1116d0e6a7d998213ef1caa8ec3288055542a8c358615c9c02303b1e7bb567b7265c66a3e03f0f019f151913cc714b1f8eec32f25e40f72cb66f5630d4d76e661995b60d72c2c61989060302047c435bb50067306502307556d513a9887c72107f7b05b33ae576a6d1680a57d5e737aedbb0fd87d819176d311f400d0734edbf559366355e92d7023100a0d248d6078fe3adf7d0ed1acb6e84147c57b7ad5f9b4598facb25936712730cf3db3ef086a3678c00c1df0e236570e20302047c435bb5006830660231008432e640c13e19114fe8602174a0c36c2b6151b1fcd4cadfa853298e18e1cb5bec0f36bc9c8136a63a05a2208ee7890c02310084d99e64ed5d3c6ade57481e2a7b557f21981c7d6ece02a37ed5cc4fc7440244f1c23fc416ddb86e4c17223615155f1a0302047c435bb500673065023100e19006703b008ec4067f6a366bdcf8876da5742b7322fa84693e48109f9cdb91b4e9e58de1ae20cefd00c44dc5a8e9d602304cf88f50539495dd57d2642abdd45936904a842ac8eddb2441e992cb439456c51ddd31a410a3d2baaf7d49e13500f3970302047c435bb500663064023039bd1037d9e164e46941011e360b53d8571b1266e4fb6ebfa05dc9f0f1d921f49b4695fad51f447e99ad1a490b11b66c023018d96ab631670680598b370307855bb1f2ba563cd168072f139cc79a5d0aff0c2c6ae08656bf9de1419b6072663f20920302047c435bb500673065023034110315e22279a4e99dfd04a0f137b6484cbeea913e5bda09b7568d22eb21a811959ce7d38a6e7a066f0f228ebef898023100bdaa3a1ebd53640071e5ad118e3de8ca2ffd0778f4eb16dd78b558082af45c9e55c358dbbe5faa152b2a194410b2966b0302047c435bb500673065023016e66f9eac6c2d12d47a9f666065cbb6aa5fa483416d1bff27675b65b8c15f34c33221f45eae380bc0ca95d1204ddc50023100b4a721a9fd9a8991ba02190d058d7e005a2679da004b7d8fd1ca56cbf55a353bc5b128a52caaad5148f53760a1e1633b0302047c435bb50067306502301cfd61832ee93064e0171bf71c4fe2949e2c31f652d0cd1734efcd7cef4cccd243983d14a567508cc2fce70cabad2c420231009102212f3d5f5ea9a6d7b33a15ee12a3b47f8b2aeaa70a3c7c3edf7c0eca6c123f8c50e1712980d7584399f029bd7a5a0302047c435bb500683066023100bf1cfd008d0d20c664a58f9e722e6c7798ad1744e350dfa5a8509e2c882575c0018fee5b8c8021d3b20e7eb7a07f23380231009f3e6b72f7e8fea9ea2b47a0fa3745cdc67e6dcdf05f153f681b4c10e2560b3399f59c4822b5b98d3ce6d596976fecfa0302047c435bb500663064023077c4be907461c55b6e544529ab9ecfc72066f4d3ec283ccc4d55af44a9820ad11258b7e69b1a7a3ef822aed1f1cc218e02302f5f17186919751ebe01cf8535dc4ea4a5220aa3a8a43fd1e4f0b7a53b92fab381ca95914e42f640fd040142206ffec80302047c435bb50067306502307373a297b048afd9195ba0bd5fadc81804446f30085166a3af5d6b89c3b9007a33937ccf6d4348774b0eaee0dbae52bb023100dade46f683c2aa23c05da2d7027be48986b658eb9d31b0a66949a614ca22ea298093724a83e4da395f0a9e961647cbee0302047c435bb5006630640230019311e67bbd511366b5fc3e0e4dd110f630f1d14ffade8f2f0899f36ec8a0bda9faf34cc9ca44a3df8f4009eda14d1c02304b402d2bc10b2de3d4a33c90d10f315071903bdc01752965a017cd137a700a74f18f778a1937f8d5643c65d294c40fb50302047c435bb5006630640230273d861a8a9c5aa7cc2a275970e75ffe8a147171f565f9f71699a5c4189c25aa1f9349834b60c3fce2072c6d66f56e8702304f6bb2e6d9425c2b9c0c0fcc13fa26a8e1be46d67ea23013b221ff522be0ccae8301a745002836b5b54d707f0148b9670302047c435bb50067306502301280a4eda7ff7cd2e1d09c151ee5a143ea3c10211cb4873c66be8b898ce796278341268f0f5d82b3fd172c8c093fa0ba023100d4c054c23aaa906908c82e1875384508b75e3d19c8f75b666587b453247458dc7454307958ed5fc585fcbd5833fafc300302047c435bb500673065023100fd71bb8a7ac67203c0fca47da1fbaecbe4214ee69748c6464c1c108be7987cceb815ca7d4bb9efe767864c2a8a24f6cc023046b4b23f74d7d31bc364cea527d87b981f0923e729080ae8b51c302c4fdb86cd774d45f4920886a98d95de9fc48b83f80302047c435bb50067306502307413fc72667073d98a21720e79d21b0a65b6e9bfd8b4c092fcf17472f48492d73e47b131bc507e0d966741bdfd4b1c0e023100e851b15248aa6c9311328133a34779a81b4e458de7837d5b81404e43b7b39bdec4919ab89cf7dac87724b59b4c70ea450302047c435bb500683066023100c37fb92bb658b2d159c93c69b84d5981f9a845460931fac9ee8ec06f8c2bda5e045d81a7b2ace6b8fb2e24eae0848ee002310099252f22ab3cdbc9989ebd795f36f23763882350771ef18370ca2f86649610f4216ce29ae0e3839e7199b689651bd1b40302047c435bb500673065023100dd9b896076735eadd1f3fa443973c19091a02a48bdd0b625f5047b2e06b78eb551fb2eec58ed48c9d81a6d6db2a5751502304127d4a26f844a2829e46ec9144becf95e9f94abba472fe8d787a38460d0cb08eb1c096f6dafee15ea1bb7e85bcb9f230302047c435bb500673065023100a798851a7ccc21f34aee304a55a627cd5be01433de4c5add55c605af194ee5a0b6af701f4fe55ea7b639909ce344791502306ff53ab41b795d4fa41c7fa58c7cdc61f6b2f762a90ade47c1a144c615bed7274fc621b1b2a941d23c8e1bcd6a73cd1c0302047c435bb50066306402303f3cf7c2a4217c15cc6600e322a68fffbabb1d51fac2229d2b2e437bc0b9f6fe7f2bc3ba8063bbf873a1498efd1b81dc02307481adeb8e25a574fc5a917529bc32df786961f185f74a4abb9c480533f60c647eac289d03a6386b88c5d6c0bb145de90302047c435bb500673065023058d901c67e2804fd27f398d839cbba244523fd361f6701d0c6383a82f0c35307dc9897d7753ae7c0d6f9fd61cab32f25023100b08bb16a820ca888607877389426c38c51057c1ad00069cde2b2a46f2e454e2cb15e2b2f27472f992b14d8810c9f86fe0302047c435bb500683066023100c0e76c222054743b9b7baa5f072d080df88c2c686c1dd8f8a3b79280acbd730e26633ab236946c23a4236fe56ba48e49023100fb074ace15c550b3b177df96785322cd3e9834ec18866a2f335dab0ddeeea53d89060c2151cdb7c41808fc7333ea1f2a0302047c435bb500663064023033fbf33300a9754152df47ba30e8a0343af906291f8d35de9f28d6eb2a397dd22cddd1318243888346d383841156ae2c02302fab0d49aa10b6926714dc45f60cd2d70abb096c14308648191a41bbf8b88849e7b7b6d5b09021a3d51cbb5c9dc5847e0302047c435bb500683066023100de4de68719214bd06244bb34c875e73a90aeabb1ab5cef71d747a375e733eb2b8fd3883cd7e4002259037aef5e4169b502310080158efed962e03685779188a85d64a30032e652e23cc207418026b30b72ea458644280f97e3cd089032cd5b9dd80a980302047c435bb500673065023100db32ac1463d639d3d1c7bed4720a8f2894ed4651150eea59a57794135afbf694b3c71cf075841c9f1ba9f7ec7a0dd6c602302df03fa91d307f3fe35313ade649116d05caa25439dbb03b537fef88b444ced1c1005bb44b9a0f2d7b2ac5565cee4afd0302047c435bb5006730650230071b8c8971fa3e6b2626064e4fa719bae51c9d82e2528bac20acead14b0ce02eff66b73e5ae882d178d974a71bfc65ba023100e91b2e48161b4bb5a44b594474b0de1fa616f244e3146c868c45a1105d2d7697d50e0ba828004104ddfee632a2a6b83b0302047c435bb500673065023039f4be3da422fd4db360db166121029bca658595f31c534baf4a5fed470472de62547006fac3d27d3f91368388f4ad19023100fa6a72fc98fc14563fd713a34ebf25b23b76ff7b2d030b6747dde029a5c4dfb9c15b9fbb66d1e50d05afe7b1478dafbe0302047c435bb50067306502305a688934259c7d17fb7a9bcb7d6672c74211ac8129d73bda6885b0aaedede462167da4ea43890012867468028ddb4697023100f2173807dee96f641df12c28c1d5a8b50af44883978fc8f91274a3dfb436c1e5b367547e470309476a92330bb1c06aba0302047c435bb50067306502305c63a66585c3d127f11e1833524a597034fbf76b036b55b46728463897f2978a4bd7f34400a00aeb2ceb371176396b37023100fe060b8e8bed5b3d8e9b61ec6522e5ff9584eafdf7df3a89b56acf62b8757f9856c7e67bc3c3c0bec14666015bba712b0302047c435bb500663064023003a2c5a6357f293751ef3f2653fcb5a7182b4490f74dc456adc058356f1b322cd78ebe31e0d7e772a17cb68b5ded66c702301dae8cbacb4bbbc040384930bfa322c5106645e1e922b43789162f1cdf3ed695de92301c2b68dd4449375d2858aebc620302047c435bb50067306502300090609496f4e687cdc0c12c867d593937822766a973a7b6f7afb68597e5fa885d4160e1705c03e286fa952f2e56eb7f023100b3ba56529e1fb30df95eef67d49640871c5f43380868975fc89d4dee53fe666c2922864ad7b535194b19fe95b6784c5c0302047c435bb500673065023100a01f531d2cd32e369b3ca560dc0642e433f9ba02181b2aa0fd061f93377bf36d8338ea01ea391dba7b55e2b940a3d04e02307eb78b7966a3461f6021df75c001cfd2cfbc7be058afa0410011058eedbb38574e5cb14256738825f8f42f5449eb7e0c0302047c435bb5006730650231008881207617948f2fa08d0f18b5d2f72f892fc02fc30745c03f778a4b54c82bbddf1e2a249ba0f99cb013b92ff57659f70230132389a9d69348c9abd96d35864a633f277226688b3c77245473a29aa3a3baff028000daf4efdec56327c2fb324b1ab50302047c435bb500673065023100dcd4c95fb5cb62c59240313292428bcff9d48c2139685e507bb2e7926d64173a3e1b6bc2612930dc77497a74e03e2100023060fd94d636363608a93d668a9a349f82a1e2b73ff1cb65724299a209a3aed0a54b13c746c686ff2049cf879f261f570e0302047c435bb500663064023031e0837859c1c0d42f3536c119106823f3a81d9328498dc8451cf7333ff6f0c8e6eb11cc797fcc489e603b5392a1c5d8023062efd75eebcd48796ef5aeb3b542d67fd007d35af73a1d009603e9a49ee3fbf4cc7a19e361e3d89c82d1ab7ccf43d5cf0302047c435bb50067306502310086db80a625aa9b01761e10fa268c42f22907c31aae8a5976b598235b4668139adc5cf07e4468b2f579001319bca6a5bb02307127a86562cba92ba45ac2f0b2a93f4f0179c8f71a62d18839a50810c3af0b81c70e7ed2e865c72d866301589835ccb30302047c435bb50067306502305cb458f50ffb0823725f5512d755e5decb113109d48fa046323be176866b27a9eafa3baca486dcbce2d995cf80dba601023100a8f61d44856fb2c560f5698e54f6183ff80c9c2560abd684f17e269e479abe9fee4420d27dcaf9f90db2aa491850e2e00302047c435bb5006830660231009de147350fc48a7ee8f2d6b72ce9fd3189dd7564246fccd0d6932f321ac19c63699b5ef485f34470035fbddc71d6e759023100c09067f4bb18eada752ce14eb1d55ed5c838ece3c74dc76f70e73e3d9d50c6ad3a549fcdee2380e409c673f61cf4144c0302047c435bb50066306402307411d245efdbff5628f1c4af4e236f4d057c46e18bdd42dfd563fced8ed608e01d4a32051ad955d92d30ae1d037afa6902303c36180b089f28a397c061e5c2e42156100c14133a69a83a62e8c41270f80cf0a0407ef9a1ada7e386ea51fa0a6a3bd10302047c435bb500673065023100e5805060aed0267e00bd102905eb4e5af69c08a9dfc33088e0dfe6206ca2dafc156e19ad79d4eef4cc39a260191c94be0230693ba5ef50ef67bfffd6707a8bda999ceaf1024cd97d5f8b6a2f89056972e5ebbfbd9acfaea3188d152669977770ced70302047c435bb500673065023100fd15090ac5521d6e40db73014176c6f0f08508001e2bbccafb714e96f0ba76b97260c7bd846730c676bc9ad46b90a54d02307d738624ec7994c7a8e9262e90bbfb366ab6fc93664c7901812020e7d8d6d2bb9d821d0d92f309abea498b6c17d2d5fa0302047c435bb50066306402304a74cbac62304a315b5e23a2936c319e7925cdf02808274eef998394251ff2ee793012295657b8e8326ce251f599a4a80230428882574bec3cb4e4f1a63a4a80ce3eae5bf8d7f774b356601dbe1533c33b3a33a2e544eece388f35617ea26a66ba3e0302047c435bb500683066023100825d3830c9ebd2e81cb6a3b77ac14d63703702f3579d38261d647f231b4f1d6d1947714619456bc240d8a3cc855462ee023100bd514af0d3d56d34106181c46493fbdea911ac456fd31af61207f9164a2ae9ea658632dc260f15e0f82374cf6731443b0302047c435bb500683066023100c5034db5b115a86b051fcb25c7c76cbd5482b79d204814042027de7243aa3efb3fd7707808b2a09154024e9607a5c7f6023100c2e575a7a01af8013759309038935833846b44c46493a53d88210d44ab48fc7b54b45052f45045f1afd9f25cfb3e63b20302047c435bb5006730650230259183db52d6bd648994bafd8560d6cdd0a52c52c7ba9c8a8093d203d8954374c365bd962c168ccc12ffdf682998d32e023100be3d42c63d80f0b80e805f466adf74cd0111f22ec30a7caf96a00325a83d4679029fa65d905f6014f4ef6a8342f3f5e50302047c435bb5006630640230436bc0baa421569101be55fba86d329e9c7b382e055168e4023eff8ead2958e7c5713450397ac9c498068e1db3c5634702306ef23b535ba1a7cc737248007d8fc5a72c9be13cef813460fd8ce59e544fdd01ebb97b824afe2bc0dff513dc7cb5474f0302047c435bb50067306502302d5746b0a7db0c6f92911043e8fb1f1a80a5accf7a2c321f8709fcb2a8845f8b1a5470c5cab991b23ec543792597128d023100d03c0413add90764cf465489614d639337c356bc30c0c7be3d25ef960682983f8b2c39cdad9c133e154cd0f69c34b02b0302047c435bb500663064023014cab412ef4fc64400a0fe6552979ceb4f017b1a3993e9a1ab997320076c0f2eab40b039011af954ac435e8be2a0656a0230742adadc1b81513d58944494eef80a8df51c1532d272108025bf677b0038c27b5d0d6b99ac0b0da46b31515d9a3924e20302047c435bb500673065023100e4ee68c1026f1b72aff27974eae53810600742b066b44f014652d8b55d1e47ab9e11847b92dd660b9bc344f6596f395102303622101862c35aaa0c54b518d6895e387c952cc9c9f07b116295fc3994e2acb25846aace6d33db0d066f839519285f870302047c435bb500673065023100d78f40ac2da2abc5808a7bee4abe00817524f20eac82a6adcbbede8e0b8300f9f5f5e1bcc04eb82320e610c1904dda4102301b5d74ebe76a2bdbbcb957d84d2da9e805c2e7363a22da59ce326ce10162fe827203884e66aca8468d3f20aa5a2f41e80302047c435bb50066306402303a4bd7b00b38e9bcf39277fa9170b7fde30962258e2e94bc708876b52a6e20aace66ceda1bc08fb30f7f9a1f7079dca202305c1778e7a4637237fb876f7760eed95fe0442d88220f983015ea0e7fec933d841b829469ee4e84105ab3e04c7e9e48260302047c435bb50067306502304f8ec90a905162b2abff058acebfb15361b2d4baf5bf9c1b51f1a7225ff0f0365b7cc4f09277d2d14fe38bf35502204c023100da770cee70ba249e37cd0c43d8e71e22a0e3a7405d5bce0eef1b9bb694c5ec9496104ae85b44fb26d3535ea1b4a2fcd40302047c435bb50066306402303d909e8a2ca64b5f52a48f3c0886f0a85f1948b941cb6370ec07012296497126934172e1f1593757bbd185f57da958d902307a50fbf55d7a63e53895dc45a74ac125925cdffe3f11d372d8e9e2b9a070393259ac8d838b103e48c5368f51e333d23d0302047c435bb500673065023100a69943ee82d1566aafa76b88445e25936fe0dfe98f437629e0efb613163d9729040e2dd3fac54ef667e7cca05d00d14802303f6a55fc4819ca2db5c21e610e8ab20da53f09922ba9178533ff76173477272b31b3c2d339b106b89d7c10b5e062403b0302047c435bb50066306402301f5297f774d5344b4c995a3b1654015ed3d9f91a0c99689a7a42e958d66ab3e438711f5f321f7b1fec33d5f403ecfdd002300714a517a18336c5d59998a1a805be0c198c98b9923fec81071e58ecd85e6e84e1b1aadf458ea4c57b45cb8e3b0c35980302047c435bb5006730650231009e399e0f201cae93ee2f948c4c6d0461df2cd4226e5352be52ad989798a696181f36f68c4f67533732ce3e21ca4c6305023032bd168207d8908b86a188ecd336f791ae75afa3f28e420732f11e40a12dcf6fc52e575b05f0530da82184ec093b84760302047c435bb500663064023075ac16f6cf998978c7973f864084d047c0ecad6b910ec2f8e3d9ae141d7e6e0425e2a24f51f7f21c26a6c1b3888d8b710230385b92f66decb09376db143d0a0e78feb9e8022f68bea1b5082a2ef3f5051d760d7a6a805172bcca56f73593f902330e0302047c435bb50067306502306b671ba483c8ae310a731a1b6b2dc04a971bf55bbbff0c9e407ce696b3a2cb4e59018ebdc5698ce5561f696be8ce2f7e023100dffc4d86659c1a3cd9d185d36ae7002c62d42b169a17a08b87651c63a5d716e141a82576a9bd66e36b2e4328b78ecc8c0302047c435bb500673065023010cfd7c2a6d8e25a209b60f7e385abb61eb02a1a69b112c2e0a5d9835005a5f1578b298f57c0f57a9f7bda0269f43f2c023100c7909996b3c2e8e12dc9e3b5866b7df06974d8b02adfefc9598f18f923571e92c517898de624f01aa1aab0d6c4b696750302047c435bb500683066023100f55627a7f95f62a3d5dcab31bee2d77eaf09e73a9238d30c69af964ece246b49ff7126e83b04682c4dec3b43fc75fffa02310086c635e308b54bd67224a99f48d30de6aa4264bfdb16af3f2f2213a50e123aac0e570cf589d9c66447d9e81e13054bed0302047c435bb5006730650231008cbf8d301f78e71ee137f5ac62ed21522d7aae4e6dd4c1d926f5103b17f4c888a475f90ce54ff1bfcf07bcdede49cd66023047bf7effe81a79cf050dcfecfbe2e3519b88209c493118036ba087edf0d4990934362d3e828154c3f98bc87c24b590b40302047c435bb5006630640230674ac5e951df307a47c8d820461172b539c1c9f99548873494536c3a0a5a65fcb261fac56c88126265d6622569af28720230300d85659d8f75b5c3b0dc655191bf34ed394c076aa199e57cc4cc8b246d1c3bb82f388cbf8559310f2d6ad47e0820d60302047c435bb5006730650231008ac3e20a5ebe4c31d19130ac4efec1ef2eef6ef99beed308883817c78100062a7124eb48b1d5e950b644c3cc65c265b20230084cbe78ddd55dd07eb8e0057ec0050176abfcc414907452dab1428cc768e8942fa10abbc8215d78a8df987af7b9d5670302047c435bb500673065023100b54ebd6ec834fbe6c83d325247fee3ba854b2cd4ac7c6a36d7709160824898b57d5d70d888ea0a5e842aadd1d059a88f023002000269ad42e1936699eef51d48d915f522ce3a81d243e120c3f96bd3d4d34fcb39441db81aec898501d31e5df2ce070302047c435bb500663064023040256c63badcb9551489603346d79479d74385b06d79b5909ee1556e7c74f40ea0378d413ef8cc95c805a1a65758fd1e02304e4faf31c3a780c2e44c95ca84c475d6ca3787bee336e54eccebde618a1954b5ef7607581334e2253eea8813e3441db00302047c435bb500683066023100de5e07861fc78de8514f67c7a82bf76bedf43801f7ea9490b7a3d1e02f675eef636a860aa40dd8d72172b1d5bf1d16a80231009363e35935d8c005c9e143709a94aece55a96ce0f5b33a50d677bc8a32353000f68ad3abca37c4f62f699d645e3e55f10302047c435bb500673065023100ddd87efcc7e45d05bae5dd097beeab27e587b63475da18da53152e4de237423fe90b34d757d1f9cfd324b6ea60422e790230008762ff669861223f5e7e49f291e6acff986325845776f2032730afe89864b57000ff64e744cabe3bd093d1a44ce1fe0302047c435bb50068306602310082f3d802a4d566379938c14713d565a2ab9e760fd758913687fbd83d8f50c060d607d5b851a5ad6b07f32ccd8f3f86190231009808a5fe803d760682d2f7384bffa3cb8fe86510143e45c20735bf119744f885a569e5b2b6d979ac0065826e0c8ac2bf0302047c435bb500683066023100b971308d73f3233102d39bd68d5066beab10b9443a2017013572e12ca06e81c0b7088a84ae5cdd74347137b4d1044f9d023100b8f71bc3798250067228525766d234b7574a5847b5933f9751bc0eece7ccbc67ce517b39da101e9e59be203e2ddfdcbe0302047c435bb500683066023100b45aaae1aa0b36ba7aceab13dcb04ab86dc2858700eaca8293af00075be03dd107cf118d75d36c6950d3ee20521925a00231009966b8279df4a6825bb36643af547e09da1b963e40f9369f46220b867b7b8d6ffc896a045a607cd90f5529c25d7bf84f0302047c435bb50067306502304c193eeb8ef94198176fff1ed8649faf51dba55d348a467ccae815fc588a5e5b83774dc044a19f10a491c210be7427fe02310093a10a1bae273598fd7ae2a2feee0644e7e4b77fac7f27438d665a91020436cca2b7d5237cecf09fa1ada5bed39648e20302047c435bb5006730650230226d698c926c2226bb31d5c13eb1ff0204ffdca70de0572ec209aac3ead0c60213c88016a6cced676ab66a1da8d9174b023100eaed6d15d06748f6c649c63bb9f983783df9015ec05cfa660a7370a4f6dcff2265a445b94f04efb4f368cc702643d5210302047c435bb500673065023045fa3ab83efe15ed2251d8cd467246e69448fbb2bc79c1023d39e19844c601fb1412e2fc32b57aefc540db7b9c5a988e023100c963ab9d224ae6a62c8e888cbfc8d485a0095bf51d05ec3cffcd54fd36f63b7dd926ed5e388cc49a4753d3035655d1c60302047c435bb500673065023100bbc6327d6e2d05d63576df61e3a8adc53d9f9d68b29c4505d8e97e67fccdf91c3116eb44b72eb27888b372646a05733302306c6f282a3277075b3732f05e7c7a259ee49163fd718327ceeff3bf9d43f0e968175a6e99eb11b645e931baa557803bdd0302047c435bb5006730650231008e9aee238e1cc41f4d7a6da3b5b2d381ec66b7223e8c9d3605c38d2812f0fe2d7f18664805bb14ebd49f1e6b7fb3d0c302306ee72279b2f0b177d23b409088c4110549bca8bdf68638bc14bdf4f07dbde2954d6542da34a3ea3463631c996f93f7120302047c435bb50067306502301319b3845bdf51fb4f5d77b288891a0498c6b74859763cf56c3996335e341470f34a950b1c325a3026507deec8c6f2ce023100b97454f10e7a017a628572fd1441159278ec602e90bc03c52c752d9423440ea9ace8cc96ba80d9f4bb7924d2103275d70302047c435bb500673065023100894de65308b8b2f623c5330d12a4f89f4c1108930a7f9f7e5b0125278b14d57f8b96af12fd810231166c6d5c299045c502304e299ab5538652f73a476c5e198b29cf1305a8cec3abc7702a75bb602ae82902e66842f3fef34417876b09dabfaaa66a0302047c435bb500663064023044fd2c4ef64e70aa46ab2aa2904eda52777702d6a67dcd52c4f5ea2628fe72de2a42e09837f7d7ae71b25d491c44f6e902300e9a8dc67afffb1ad53b916a93591b18c61f799c6f3fd1579041c1961d7e2e3dec98dd53303fc2618f3267a856f0524a0302047c435bb50066306402305c678a26636d02f5da094c28363b5d3d25a48d1c3b7b7dd897ca0a0a6e1765aeea671b12418348234ec0a61375710d8f02307caa8df967f3fddd342490508f78c4ebb4753fc92d38e269c069804dbf803385686ba32d4ffc20bcac99e7bc4ceff2220302047c435bb500673065023100d7820395d53879e0f069d95101ddb07dcdcc80564962d254c3b6bba89b03922978db4e9717935a9b4178b28ef24e6e22023020822a4acf42e34c1d17469173a7c5b1ba875a2aa939092ea43815a77b9ec4a392e97e8bed2d0bbd22080834cb3277a30302047c435bb50066306402305b5a4a4a749b3d75dc534abb4e947890ec57df29b5ee7247b43afd607c86643a815d5fc396e6882c8440ab136000095b02300575bf591c0e6f06cea7d734281dc9f7a76b2f8a727d967c84443a5acfa63b047f9edc06207d965c36c7a9f2c09b72710302047c435bb500683066023100f02e706ee400d68153d39df387435b5d97684f3cc3d7c9c191fcc56e59cac6432f7df01098e58048eb9b0195753840a0023100c73b66e23d892fe659c9a22369bac920924348766bc41190ed4bb058204651d12c1897edc39ee7c861096e04f6f242390302047c435bb50067306502305439f2f428dbe5c156d7648c44f0be9915393642c06b2d03d16d234041d3f1478da8f5b962654b09231754561b62edbf023100dea032cfdd7a7a04fd8ca4dc3fb430a6f1ae728288f7dc702fd5f02a10c0914e7537a8664d9afd3365c308083ccb20660302047c435bb50067306502300acc9c3a6199c1c6fdc48f8b94d4acd594f4b3df08b79ef4deb3cb914e842190f06ee0d0fbf3775f58a9c7df20a20577023100809b718e0ce2b47b4e6a21e057708961aca967da2f09c5d34bef47a64e0575e787432fceae70243e8edbe46bcfd579a70302047c435bb500673065023016408515beea37b472cf060dfa84ac5ec9c37e98dc15f572d119c96cdf5bd4d8d389fbd2f9f541e1a22e7a613407b673023100817194b0a2484660ab26d89f685dadbd2a015c7d64fca71be0dcd8a8e8923f339767853073cd5276fc4223bf81a770000302047c435bb500683066023100c97a5b5e3623ff1813c10c89329c4320ca303cdc9f2c17a6da563da1c97076beb10be131c937b3fc16e27f286997baea023100d1c85dc1e6856e67dfd52c0ba26331c116f2c8db6bc72b20408b02e1629a32d38fa6234169504962908e2cde078802510302047c435bb500673065023100ac50f92e9112a5640c6b2d22e5e4dc02776e454fc497342b53a0c1474719527835bfa5fb8788bbf68263e61e49e67f9902301fd819864cc834a5ec291fe09a25d7a786489a84067ec0a24161a78f5e13bafa5d1d6f21aa7ef506add9d12d001b60c60302047c435bb5006730650231008ee94eccbe188980e07f39b2e84051eea7d9c70fa6048a2298b0b0b3fbffcc7fa978b770a43212f11c99166a615f10a4023015ae1faa140bfc03a425cfd14246bdef8b54ff661c6742565e026f9d06c3b4a9571547035c095da95d36e011876df8310302047c435bb50066306402303d8be670af7f28d11e340a59a6eedfea5ae1c3c2bc78e2cd84af955775186d7f36cc9ff7f0a212cf192cda9bc3500590023042d540b46424c1c727fd7b9fc410c5a5cfdeebb8251dfefb07a597d7766c82973e4e7e328d46b47475e490213ca3c3970302047c435bb50066306402302ca71bb1dd00ce878eb5a10e2e7ecaa57dca803abdd0092da73f9c0ad1efc8ef1e571deefc8ea9ea5f0d5e80b42c3194023036f22bbc5ac0dc143eb562babd883aace03374c2306af78926db3b7cc37a6ee2795d3a73377674294f5a4edf5498cf310302047c435bb50067306502302036ba789d891cf97a15273eef7c1bab3af46b1872a853247001f50ff1b079934c2dcc0945a209fa7deab4e6463238db02310096891902936d52a62bbb984fb3d6c2a2bd884a0c4040e52f0a5a09cab05e6dd605d438a9627280503d104812692555420302047c435bb50067306502306093eea430fab555646aadb9607f4c2b46a2c217bfd1965d97a023702122a71f75bbc06c8429b414821f1f454960dbfd023100866023e7c109da7a1234f2d182ea9be68cff591c9f789d604fd893da5f614d2389a962728674306e66e2b8ab25d1e9e00302047c435bb5006830660231008007f945bfb2ee352eb893737fc828ef7430346189930d8b2397838c573b8e466fb489cf3065e17806febff05b90f720023100c5652de26c5299d37ec711359066e49c8451e4f6ba2a2fccd24ca35f145a5e62e79b8f97e2ca26892c4d075a15d588860302047c435bb500673065023100c251c5bccafba3fbad79bb7d1dd0feb6f42b7236e1136094afb4c88049b38d65610b9aa7264e1930945438fdf5a815740230708b38c724dc1ad20f1fe091c567ecc292c00a415bfad62abb34e8f302a6aa27dfe2ed6733f807c286ab56378d9725ed0302047c435bb500683066023100cb17d8b900806abfdfa8c050f67eb7bdfdf0e0677116a7700ce7ee2f6546351b0890699abaee16c503b60f437a597ef5023100c61a85882d702c7b5432f63a4fa274e49092caa70fe41b6f1e4b8f7d45513c3230fb6f3782829611c63ad4a25b06ee1e0302047c435bb50066306402302731ca6a6fa3daf6a191b1d684481212cf48f5494aa034eb4cad8dc060c098d5bed62740356113fdfb1be3a83bb61695023030f017986643f59362af58b0999a0f63bdd1c8bcf53432cc2d483696d74fbc642dd6bcf44b9a06ab2390ccacf779e6110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304cdf6d8fa79282bfd777c7763d269fb3264e9100eb487dc83e7bad7f742b7e29e041f125bb7936c3a39f2a4a49a3dffc02302c48d493161fced429fb81017d427c06f6749232cdb010352829e308026bfcb8d36ccf5d5d0bb9720a0018afde75c48d0302047c435bb50067306502306bc113a0fbcf19cdd89e73a78f3ac84d6d7faaade816ebbc58f46fffb48547c4f6b772b5064d4fd53b1dc77607bf9656023100f874d3c082a3460d01f986cb0445a5f41d7f4691cfe0d356fd5ba388dc72358c4ff614988913619ae5160955d273f9760302047c435bb500663064023061052ac5bfcc5a361f576ff35a32c3b2ddaea90196a838ea6efe14b0a2b812360c6df6bdc5bf4cd92875590fe14102a502306e6d70d135a2ec243a571c56952552d55f2893f952363a9ee2bb1ae14abd8b8378ae0a2e4a30bfbb4b2ab8cc3a677b320302047c435bb500673065023100ae2dda3a9e55cd283f8a803de5713f515649090a557d653d6eda5efcd0d4021dddd12aa54ffc0262a65715812bffcb9b0230672982c26d90e6a750847476f87cfe78f5874d47e6d89c40d8640cf67c5f2e9ab001db9a2f99f9e4d8a70da82ee4880b0302047c435bb500673065023100a12535deaf323455fba6609c0733470f8fc340017940ac04ea03fce06a9840ba80802fa9eac715adf2f344d291e13dc602303a1e93889eddeb703dd8f4ccc7f8b668a615cf2d1845c681ccd90ab5ceef826b0d3e6205001935aab81ce6eeaef4df600302047c435bb500673065023100b7f56de5449f635e879dc5a8102071570b7fac715f7e77a273c974fbddf09a5db7d3f332b11d75684d36259fa7e02979023003f1201bf38cf97e2f72fe357a93e3f84d27523e1e2e9d7cb7e7d63ee147c11d6289acbc009a1431822c2c3d9e1956ee0302047c435bb50067306502300be7e7c8bbb2bef193bbbc8a0f2809e19d27c9655c703dd86b29cd9448177f68b567a450c791d496e6fd2596e13b7a790231009cf2e26daf6492f0b5534f9123ec86b0c7234c39a96ce36697480865a7cb5df7e5ec11484e18fae0a8f9c24189c726850302047c435bb50067306502310090ea569a39c3f4b277e9c32e86669dae4f2b6129e1615fdd7fd2e2378e4fd7ccd369d6048870b32828b6de66e96c20ec0230529bbe20d6989d2a7d7074ca53ca20859ea4c4aadf45f869b3a59b9215c69e4f65f861adfaff0dc2acf5a2833506b64b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cee2d776e0ff4201af4871e5d7093ce4251ba47d24d6a2aa0693aa65117948883766cc24397ee042dc7e6cc843b08a910231008cdfc9414f1a360d36df10c0c2ecc0e19d546448bd448cbffd3a88e49129e5f41384308db5623f2c5ed177cbc23fd0450302047c435bb5006730650230208b70e3d73ce0aa12189dc9261a9cfda60853824db7ef71d6b6c5dd3ff6d7826edbc0785b67dc9d94d71a9ae2435fe40231008ddef4e8868582689f4e343f15cf3f46e41b723a4a1d99c34bf720f813c321f7812f4f6a83b1ea99ab93db9ef89ea0050302047c435bb50066306402307ce0c6b38bfeeee94eac2dfcee10f0f0f2e254b3aba018efc866b04f47dc5c5c86bfab84f63998e7b27a010a083e2d9602305fe9d17f57802aa635cbe32255f0a5bbf43e33fe594ff6d425fd5db042acacf0f1408b75c8ad4c424fe52a48fce4ac950302047c435bb500673065023100f0f680132b5a790d6fbf0c5f6b17c9de74e5c75bf4cc5c3877252ebbb90598a9417be989161a94a914d71e6a7dc6d3f3023006db73a243da888f6685848cdaa8b9074568164e449c32ba4e4ccf6b1475ed6045d11ec4bc0021b7f8abfe66741959510302047c435bb50067306502302ea1b2a4219ff5b52332764edac2f839d14762b665cfe8d77935b689b7f5d2d25484fef466f6fbb1923c68cf10afd6f3023100ccdb925c7e9bd3c85ebecec53a776415cf290b5089bceb8eef1798795cb19d23c3a67e4cc9f4bb6490cc0e4ef2b694090302047c435bb5006730650230084bc9d6fdfd26af1c11c7c8c507c1fbb07d4f0a468b49fba5a41a9de816e666b466f6cec15714b264d1d35a4f164420023100fc900af0811b787f948f76cc0860239928d6cec94e2a7a618c88a453e5a2d4444daec790e3a5e2d956aa45fb86aea7760302047c435bb500673065023100ccdb70cb8e16312519e139d4cf498946bfe13d710e9ece1073ff2c130e4941872d64612020f298a0682e7bb88f035d6002304f5104653eb26c5513c7adb298e7f0badb9717680445b23a6c5d5c9e56f183e2c8e5984a2d4b7e989af2b9ec08a3d8720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305b57ff7332c86428beae9d9280aab5c67e7f877425bf08287e427c7db833491cea0336f8c4db32f6f7646f240ba113b2023044b5c61a339e36bfa2105c2fd4885bea691b64e0f0602d259c223c24c7da8c048e331d3c3b902f91defd5cfef7deb58b0302047c435bb500663064023078e22ce947a37a647768905cac401fc7b41122dc38c04e7a595eba46b1cb5772cf042202b268f4acb64980cb4cfd9c9a0230290338fb1ed31938c39740a4355c838338fd6ccbaf78129fd72fe37ee9c566c6a170ff237d695ac19f1ef526d373494e0302047c435bb500683066023100ed6c49101267260bd25df0d3a4f9c5b601d5ec21ac68ac620f891e7ee86cbd8a3d025180e96f9fbee5bf933bfaa971a7023100fe84de466da15b55b1c06328797ac334903bc3b5020e395a5e296ecf6c9abe21074c444cb9aaed2c1301c6e5ec024a3e0302047c435bb500673065023048b105b9729b8fac6283661b6713229fbbdf7d3336970484593fa1634b21274fb4b7ffcb25a21f7260b2981195d4e969023100a379187d401d301cb6534f6e06ab2848085e2b894aedc7b185f3b25f4f7631b748ef61d09417102a894ce97e9038d2c40302047c435bb500673065023100b033d216d84d66ba93abfff77348c9016381bf340440e47cef7828b09a8c5be4bf68411311172bc6376728704e30249e0230067942a482b93d8c4361b28ed875ef44606a51b2d4a0f9be2c15bfc7f1738aff493868893508e6a4a240d6bbe6d288cd0302047c435bb50067306502302c0d29b115ce9cb5a275fcd3c317b3ba68a71f08c9d2bef5a8da4ef2ed261852b54894c1cf34fa3e903ef341ee511a7e023100c6252702f3be8917db6ec21027d1b1b304487768761f532b14456b1abc44c327602327e964494dd215ecd7190611dcb50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307bd18b151461ce1bdc4eed14448206e3f729a08d27da109b38d471434faa2f95fe78920fb9b0eb4194f5d6bbfc6d1832023100d337b9ef8d5e61b62e39d7b8c9d0136db572d2200f65ee875d2f517e90be66c2993008706f5401a332257258943ec0ea0302047c435bb50068306602310088b58ae3e46cc824841036e39d760c2be79b25d594050cad15b7c609540f0c600db38705658d1856aec1388fa3f0d169023100f9da225626c8c6db4745e9500754b2c099ac19be07c07452b5ec4a030a591e29b737edf7c92dd79f8f1d5f534e6027350302047c435bb500683066023100bbdb7ab08de536f9439cf4048761bc3bcf0a1a4e4889dbf05f7b81b8e0e48d6335d4b7cc181b7d5df971a0f98f13fd1e023100834a9c004ba39fe2325d02d65b691bb891310219c50ff3936dc003a5dd131d1d67243b8c59d06123bc39a2d1f0e010da0302047c435bb50067306502310091828dc46aa1227ea9d332a6d2756b34c4f7180ac0328dc2e7080e8f6c993101600ecee4e220f18e15e6385be150534a02306b22ab59f7aed26f49520d715639e8ac0dffbd3ccbc8a1cc0ced1d0b5c915daa3e96cb54fa6918fccf8f045b99e09ceb0302047c435bb500673065023100917ce0758b870505202e50ce84ed3804fc9057541dc0331014d565e6acbb68a3368f8ce850f0d811dffb17cf4aa7479802304e969c45bdea5c46f8bd21092a73acaa1c3e6bce70273075dbe4b322a2341a7ce90eb657e99f65c31b58f75bcd8caf930302047c435bb500663064023061472a7d0afa9dc70da6f0ee8fd94c313352f5c4fbe97338ab4239398f35193c870a4a7275293d668fa7fdfcc125dd76023077f6b4fe0a2ef41403d9462046aec21c66daf43efde15220e65bd84f03447fbe424285d5c364c554162ddc673f00d5340302047c435bb5006730650230044762c205381debf174145bf08a3aa5564e158a085521d6ec394997ac25bfe74552f31ced0e3e08c471345ee495776a023100a98506113a1ce35c5fcda4c36012175116aff70740fc26df74e113980a0ef6c41839d97aa644682ac998811c25e944960302047c435bb500673065023100f8200cc827f4740935f1903d220b037e934d6e3754b7b5862fc3bf30f7a84e6bd97fbebdb404b790a86b9aaf93dc24f302306512666a17cc4912cb3bfa1560f5a253caf44480e58a5df1b1a1a4f05955720ca659edc45005ee72deb86699964b98d90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023021cbd0724371c6a083f40fcfecc0c16111e399ffba11a2a943b374485964ec2936c84d0869ce83c3fa59a5d702b601ae023100ea92646f002fe47e9611b731b7a86bfe03ec332ff6ebf26098efe8a2669dd3eb8e64e451aff349845cf3e91a558f33000302047c435bb50067306502302e8835f892130cb257c03bccb9e10e3996ba93347ea8ca36f8bb0cab147352b435a25a0368eb1f8e5a3f26263e87010b023100fdf0eb8cdd48bc55bc84040e0d41f44dd3e026349ff32a1db653a006207ef41fcd9bfdafab01a7445d92dd940c5d08600302047c435bb500683066023100896b456cd358c4737567c0a2d710fc60ed823415728cd0ac089d7c406aacfd92dc181bdef359ecaca389a0a18293f752023100bb44068802735cb7c08c621fd3072a5219aa250c894df01ef074693773c0ac1ff7b998e0a54913932cea398ec6cccdbc0302047c435bb500663064023003e83259e5c3250f6b293c10289e7a96167160e815a4de2d710e70e24c9011997f872c7228f637a019f3a23b0f42c32902300fbd4d66ca71c65bba6bc02bb02cc2d7e1c505b27617e9d19343e0778555efe67ccd5e805f39b31b57477d9ec04da6840302047c435bb500673065023100a473a823f919d38029ca791a232706e875672b74c7abe182746a2f6c79dc6d345cd39359c2b70edf5ab4dd861c16896502307b6f7fed7911dc8193bddf34e28c74727f5cb115d6c2b25ee068c143bf403b04362464f1d7a7f427954e4391e9058f8f0302047c435bb5006730650230614be44fa0398cad6970f41acd047e16d213859f06748bba64eea0858210d32625d64328fdbffd7079d696309dc98ee5023100fb2da0ab7cf0b701de5c045f469a53b9d04450bcfe0c034a2de1c821e070aa40b4d7a491df690f8b638cfdf73bb43cad0302047c435bb50066306402305dc9ced2095cfbed01606f4a574eb2d7437d084f84ef46d18ac3361bf49d7270a706879055d033c06983a974e2e86c3f02307bda24a63356de05d4558cbde65db1a0cfac6f3196f3d122c536235722e058b75a7b033115df1d6220b202ccef8cb8af0302047c435bb50068306602310086a4013b42eab4a7ef3e72d2a61d47e5cbf22e08d6945cc0d4823c25b7ecc4c01bf6b8ac3f84ddbe30885ba4cb87515d023100dcb44b356a4280aaa8404b8511ed15ef7e85e8918dd4bb4a071f0420ed071904651f20560761ebc7a0bab1288123ea2d0302047c435bb50066306402301f58608baf3c0a771eed21c29d09bc09db1b083d5fee62706559f74dd7a6bf1b6a60fd45afdd6cd7eff65e3aeb7148c002302fbd163f34ddff99f8842b148411283da8737d8fc43a552d4076ce9fc8d5c1cf6f253eb8863d45c87e8c25e32f382f7e0302047c435bb50067306502300619611d348b18551eda3943d9ae4afaf1db939cacf1db0b938cc6cb85ac3bde41363792f7b77b9509745f006659f54e02310096e13957de95458f5a9d01f988918822b15584c18e4509a9d921bd8cc91aea06782883de2c6afe3474dda8a911fe5d2d0302047c435bb500673065023100d2d6b2f4916251f8d5e31f7d69862caad028de258235508a4a9593d46e34a95f216b7abafe270708f0a1d172d12e9c4d02303505f8a270759429602a6d1c38b7e492923f3eca42f73f20e81d9668316dad720072d208e1faef682aed4b6543b9fb7d0302047c435bb500673065023100a0e2ec755c958c6424831fc6b8b54f5a6c10a26d21978e1db71e00efc7beb8f9e556dce61efb09528cf3b55b0aedd7d002302ea1a5b929e794bbc8170ebd2bf6838bb8d81aa9306f9b940793faafb1d9d3104f809f33cfa8199f859c51cc215625560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310098a528177d2eddb6a944929dcaf998020d6cf4e9f49c25de56b59d7a64f157dffdcc60a4de1cce3fb1040d240604df6f02300132653bc3013fb3a01ecd4c2435cc2ec31d41460c4cbbadd57a48f6b5769ea5a1cb603fcb772c1f1e87230bbeb706190302047c435bb500673065023100d65be50e4f6ee339f3001734f5a699a041da7889466204e52d5205e07d803d2df3ef3f6c5d2d9181d7cdf2ef09ecf18202307afe668b941120c3fafa65aad5403f04d7738a0c1ed746194a0c033bb3aed859cb6ad691bcc94e18c7908bcd0fed89200302047c435bb500683066023100d917f104a6d62f7714c4fb993f1f45dc3450e9507d1d7297d03f0287c9b9a10fae34798d97b6d48ef1546445c8891363023100feab64a8408e164ad521619cca7b4a5c20446a48a11650b134341a7632775e6cc7b05b97a548c71dd3bc0e743deaffae0302047c435bb5006730650231008d686ca94cb29dae962bc666de114b48d746a159e01601d1f91233865b0d0e9a373ad5fa8f5007c91d8a1edb5160b86902303e57d5b8d04b2700077c7c7d6a680b45aef8063f7c555ad3c4b0f17e96f90e85d37b5a0a2358e05c77afeb027edf57360302047c435bb500683066023100c75e92b28b7154b1fe34dfc27fdf6116daa907ca1f1660abc49774a9aa1f3f941ae3dfdff492dc2b116f9158694a0b13023100fabf61c1802b974c8d50d0d948eaf1803c2f81c13021be8466ede7bab3647e13925db3e7fd5aa04867bfa063f88225760302047c435bb500673065023100cc80a518bb244ce5aaa8630aa935a7e054361413b93c17ba689531584011bcf4bbf73c25ee719cee678e8212d5d9a86b02300152063f5fa5d9a5e5ea6e208a796ec66bf389a5eddfe7dc993dee1af43b71cbd86f93beaba22b4cac25a244d05523b10302047c435bb500683066023100f7e4585a6c1d87367cdf52b1d087549dce782fe466897db2d5a82aef44d58a226003bf82d8553eace6dc91abe365b815023100ac88f1f40157cee1f8293e913fd3ad2bc38bbc8aaac77556ab4079dadffd4612e4fa0dd8033cf167b01672742bab09d50302047c435bb5006630640230283ad9f7597dccadf62eb8bfcf1a03bbab690963c591f84e08f3b65d2e01f253706b0b3b3276be5a7212da5685d9753802304deacdabf472696bbdf30c5938f3f0b8329cb87f4a4318ca076091e60a9e3582256998e3c9da62f91733dcc8baf157d10302047c435bb500683066023100e173a7ae439e017c01633c7f54eb4ea29276493f629e97ef2e9edc03c95e5c5b980bd65f60b5eb4ea4cb51635a18bc0c02310094b3c5f47acfd940f6e0e65cafe0f11b9dadf33d298d61eac9ede4c1104807dd2654fbe0800d11774772f440b5b845fd0302047c435bb500673065023100a0163a3473c771416f59a80f3204de655fbfd478df03fa577763e589424ead919ec832a01df2dc0c9d048083c4a38aa1023019d6a561b3e5d1bde6c9452a0f445c4321b6f404c024ab64506503be827244ae28df92c608043304c5303b2147fef7870302047c435bb5006730650230218058a250dbc408e8c02b301d037bdcde2e39cdb137ad70556f6209640994f9f891beeac97586b6ab35abbc0aa7efac023100c765fafd55c3382b2bfcbee73960e89994790347b1aa1fcc2b34a1cd4b3ba8ba63ec18113a17b71fb35ad5503c7d9a8e0302047c435bb5006630640230009be1e4f9ab96b344f16f4ef741d3188008b15e6a1cc2851549331ede03a47f6fc55b61dcd2d2b38081fe7898c3f71a02304f5bd2a7fdc72553b766f318804b47385a804a10fe9ad0602435dff54ffa0d24e33ea5d90cc00f461ecf83d3a26d10bb0302047c435bb500663064023025673f00f4bb0a4187dd9a7f0e302cdfee41fed3b67341b272bde0acde9e1d681001bbfabbc0577411c7d4611522dd2d02304d3a212107d7b07c243c7a86360a96f15b70c903c6643306f4917b41063faf29b62d949da3e59b19b6dab7cfa6ed11450302047c435bb50067306502310093c67180ae69c4a0d75679789ca1c8b67a868a8746b0e3f266b194ce0f0c9453731f61412c1078ab8913e13e5a32b58102301b1deb263b8b573480da756bcea074762352fcff990ae839670060539d099d91919ddf5b2e0db2b3b7e35a57466d73fc0302047c435bb500683066023100ecc766c69fd9ea2b55839870f4da513e29635030d5ba8dd7d76216466bbd3e074c5aeb767d93f9bf0145c7deeebc2a75023100ca1ed371f8ef22861ddebd0c93486240822639f355466432441e292ccbffc0c0d25868c04589e5970b16eef97e7aed350302047c435bb5006730650230730062d8846a9f0f17102f000be2c3c1fc1438083c73182abd5665efce9518501f6f896400fa4a25061f845f77e81253023100b04c7c5975bf4fc88f2ac06a4b54d13de9c03854d93220deb64f9979c3f9405e2c65dd9b2709062fafca26f5c9dbe00f0302047c435bb500683066023100dff719d37028d6d2aa3745007ab957eded5bfe202b23e6157c520d1c0e30e84719919a19c9cc449e478e2eb9013375520231009ac984f711576acff7b38c02eae456c0f159ec2690af9650f06ef8c9156d82a36b9e64920c388bb7bb308dd415446e560302047c435bb500673065023036a2aaf2bf019623f0e12dc497f1d46aa57230553af13c66fd3dea8b1a40668b1d3e2cf30def2887ed8bb2519659339f02310088210bd6e080d465e04f9fbf229f6cd519b9829417a12a7410586721ebba5e94ff52c6b82970b219cfc856b2d62876f30302047c435bb500673065023100fa77739109aeb7b733d1d2b64e7276f8247749108bfc62d129951537f2ebc963a6b9c86a76dea8ce5e915c2ec13231a7023027da5f5e7df950f13c14da68d6cf3b1b9ae15c1bcca03d905e0d179e061440db8c3b39b5b151f2509ff47568f69c91790302047c435bb50066306402307a910d1e010c967f284e0a83dd2abd5f82347d25baaf9b2b7c296786e80496febd710ed564650c33cb8c7651285b36ef023060c25fd17de16598f2a8141f7d3fdc030605e6e28f54a490709cefc1e39c4024b15f6823374b38a6bfa0d46804c870930302047c435bb500683066023100c1055cf1fac62d53aa625cf0acf4636778c1c341f116dda514ebbce861cfaf692e606b4a8cb8e095fec93a62a0065e77023100de647565271e9081dd883305bd66ea325c2e94a6cf2fcea8e92d08cae2b2c79db98386af9461e2a124568d9d4b45fbf50302047c435bb50067306502301a51e5167a4c656aa28dae0721bf2b710272b68c43fc90d4602dfda318e6394c49eff5d0b60938cb54a1047fd7c5b510023100f839f8b7195ec175dbf23cbd79c84de07e70ba3385d6f68fdfb466a5fc637ccc3e4a3542739ca01fb6e9286879980c240302047c435bb500673065023100d3d46fce20443a298bd1ca091dd498eb200647227941393f389eadf7259fb250acde0126040ff50a5075844bf84c212c02304ca4514fa45f7a7e513af16b296b0166d43ddbee18882bcc2b2f9d7d6f67638f43469c0ce86e08fe42b659dbc8b05d630302047c435bb500683066023100f803487b6169b9ab680c79d45c2ebac6c42235c466a6a83cc9b0e2dfa0be4691a84ecc1ac3d31758b50e55d41fff93b9023100c9594236cc7c13e355209222f827c368bbfddafe12f79205c5245707f0c25b297860e89be23c8109b0ff50bb823843ca0302047c435bb500673065023027eb5da631ed57556022faf430a942c66c651da06556efd2d363e2f637a72a13282f00fa0d7b835940856e1c5e682c29023100bc605a5d44f24350fc6f06d1756e2fb88d31c10d5d113bb97838183dd74c18b67e4ac5e4544a15827fb6f58817417ef90302047c435bb500673065023077b76c24c0fd3d2602c1969fc2bf6ff2fa862dd5ca32d9195f4a72905812c81b950d93f075a8e17df7a5e14db025a369023100816b97804935d598707495a658803ae314be7029e55cbe94486a4acc94a2191664780f045cc4ed5ef8b44383dfa8d7d60302047c435bb500673065023100c555ce7386e937ba56121ae38145f5d555d5fbc6e2e24c92e91a001e08e4b7f96e756d4c2bae0657dda7219c7ee1da600230345422fd929e614bce42863da4f29f0cb1cd6ae8ad0ee5066c0a934240d326ec8575eacbc48c8ee158aa9864970ddeb80302047c435bb500683066023100d1a587af1df693e6814c2abb268239c358d3d3d3e20522108a6f13455e9b1274e8f384e6bbc6ac53746906fa68153730023100d2e5ccc15e6ae8e50744ff0a42f724c42f9f5f69c2ed2d1e3fe4e74bcca3b09a1febd74a4d920218d03eb0be6274c8310302047c435bb5006630640230698a2e9fd63d4694047a44611701657b76273671a6ddc18ce59912074c191b6e29eb37b1bfa6450f69db8fdd4bb8a5b80230590a914b577bd6c784aacabb893aa642f794e7a6f0255f1e95c842153493eba1eb95c29a00f464b8b1e62fe0d34763d00302047c435bb500683066023100a36e8e403b4dca326cc654a2410fb753b357711412ebcd999004b601537a423574f89fbc8d3a5cdfba228f783b704293023100fbe178b6aff00965728dedd540ab9883fc03d40a7f355488b542080ec09bd35a266f1cb0af7bb8c5f91b90ae9118f5210302047c435bb500673065023054a9de08e96ebdd7d9f45e9dc1e7cf882e94887b49d2bf539392980925ea7eebbfe29a62983c1a0a8085ae97c1b78a9c023100a4a2c325c11bc2b736a1bffcff63b10810cf632820e814f51c9eb7e0fdd0b6e24325eec2e2e62d101b137e11eacdbdb30302047c435bb50067306502306826ea75773e0a03ca6c2246dd7292c0e72df37e900cbb42375e72b40e1518a91122f325df25caacf96f10d9e056ea75023100dcbdd78a57b734f627c0808b1beb451a08e4c9abe4fbc4262c4e9a45c29735d8f213de3bbfc13d9f294b22aa9e279c310302047c435bb500663064023061aca666afbcb6c223c7dc0f6d893d1df4995a770ffa0c2721094d9cd63a0010526e97d017c48fb53d0152e0c659936402305dfa2febba9de006106f3625d79be5ef5363ca06dd72c9f3f0a10b9ba196170f16b58c002c50153db91e3fdbffd31a5b0302047c435bb500673065023100b9047c27f8b843056f8145aefe8fde4b276232daeeaa4b9f382ff1a5f3c72cf7f37d784cf2a831a3a5a0d7d1f3ad98c3023043949af1d698765ca33407210fb59b802a9b93e42524bc0bf173210590471d0af34f6c147facc82ca528e620c97c362f0302047c435bb50066306402301e77ca57207261eb051d3e9e525a7945058913aa04070573c9f2ad2a9a58b7d7b81d7363837d25ffb8254e5a98119e2502301b8f12d97bbcc3f2242eeb8dcdf06ae01da71c7131feb4fd2f9e5c5401d6d4602a56181c739a11213a3f2520432e83ee0302047c435bb5006730650230539933c28f24a7a2435f8b4801ddb1f6ecef420932c49f47624d689a3c608174599d0946eab40a7fdb942db7390a802f023100868ce2a1e65f5947c6783a77b088ef2934eecd268342dbb9bb4ec8f08a4b513a8a4944dfd824e2c3b622324d4559f5ae0302047c435bb500673065023100bddc49d63f8f4b0b75ffea85f6f6642242fe0ae6b202e10e895efdf55a49f0c799db0cc58f7c1c8eaf5afea3afe13ea802306c12469621a7a408f045892dfd60bd663960e6f6e69e42eb4e285add6c0164a574b0a10a1d5ff51dab17d3741b220d440302047c435bb5006630640230094623700d1dafafc2edbd8cf639a6db00ffd62d3df01ccc49ea080966cb2b904dac0380cec84db666f35b47e8be39710230287433864e603ba9eaab130a6a0649edee8dcc8b8800609a20fd9526771d530842b0c9266d28795d9e710f8696f0ebd20302047c435bb50066306402305a6edd7d87a13e789f51e4e1a70cd7174529a5c195c8672b23466bab306f514f016059f2e45598dd8ab5fdca0d4abd7f02305d299cc0d809879370134ee162f00d0366e4b5217d1ad80e92a2d6abafdba14a2fcae24366eeeeb705f45ddbd7cd40f40302047c435bb500683066023100b3b31ad37d51d3cf7f3e480ba3cef382052a589d67be67ed52bb08d86f8faf39db39dfdacb2a4e108df1b43860014ec7023100dadf64452d292c2c96f4115fe2bc37e13edb10caffa77f6405ffed5adf86ca7dc5f14893ce8e3e16bc8e7b15bdade27b0302047c435bb5006730650231009102234aa2e896b930fc7a4b0aee62b6405f86ee4cc45a6f27a66f189dbeeaef93411856c4899ecbfed2dbbc3851160902306275f5ed00506ea665a21567e18b8f7f287ce065c125d41093d84231216bb77ae415d761e83806b35c65eaa700cb7e440302047c435bb500673065023047457d99a06289cd3c89f3d9dbc1e8361fe5d2cf9458578b2215a4e85256140c525e7bbe5f0efa8dd659d8cf2ff24960023100eced1d548e2edb583fd62138ba4b7437aef55493e6d7ecaf3e6bb6d3fd6a613e03624a91d1921ad3d8f92135eb0220de0302047c435bb50067306502310092986be22493f3e2e2e12e1273f1a4a62968551dd57ea8723aaa0f0a661ab5a02c075e4a885c923a78d005c46084f0cb023072e0794869467be72618999695d9486e916aed6898074418a608adbb6b56e9fc3d06c765284603caafd28664695231ae0302047c435bb500663064023071b692e3b80cb8f13064ba37592a5f1696e1147fe25448b6ffe81ad5d6b62559c6d09c088b274ae99a2fdbadd09d87290230204f0c38273d243662e775499973b35467d1a33ded6536cf1fcd4bedeae24a8d29c8f0c01a96da9367f2e69b73dca8180302047c435bb5006730650230470b97d4203130bbbdc852495bfd94d318b05d826657f88cc66b8aeea3f063a258a82c1d16e4807d49367a005fcd30f50231009ae42cab595d333abdb850ac159c485d1e66ab6a8a7f410c16e949e37e284c06d795f31eccb26237bf51426392bb9b8b0302047c435bb50066306402301125d928cfbe9cea2280f52256e682842344758b626e77212729bbd28b0be1551c02205ceeadd7212a4c54d61dfe5bda02304b2010e64aa4ac34c6681f8c248458e8d67ef4855a554680dfeb229469a094f651ab3ec4df8f693061c1d4a35790c0e10302047c435bb500673065023069f97d0735c24d6a0d6fbe61e190715657681a037c1644167f76f696c5e1c3cc51f42c91cdedd393d6f5ffb50a34305f023100d369598a5c17dbbcdcc8f4f3f8f3130d32783e7eb40262a3742722940d15f0a1e832f244dcfc823620da427bed095c080302047c435bb500683066023100be41802ac54636488f4ef94cc3a37bacaff71bbf511d5a40c1eeb87f9fa6aa6b2d6b789b34dc0748daeb4c8612852f2d023100c281e9c1ab5a20c865548c6370d89c79265aeff75a7dc3658c3ffdd54a6025b405ee111283c8bf3c08cabacb38f6d0460302047c435bb500673065023100c3006dbbde36c061195ce94728caea36fb7eabcecab6dcee7e3a4ed5a4eb29c44b3154dd46cb571837b677903091b2d40230185da202db5e2a317399c1ada533b532722775da9806900764f3c8f1f1e82b318b7f9331e47e0010630cf66543c513890302047c435bb500673065023100d3f9a2b7c2e761db97bf211770190cbef4a5fdadc18e49f1b6c084aa5b4918a998534fd8a4a9153e883dda4ae0fe567502305a2854ccd9988fd70875011736bed6fcd646600c51c04c9a1c111148882e7ce56bbe472602e0c112b3e93b3cf264623c0302047c435bb500683066023100d8d7bae65a5036cb11de3a099ad0e9744cf3ff9276d6f78e7f5ff6b7d2b088565b9e87b564cc47aa688d738c15076d8f023100d073f05c5965ab3f332acb06d52d99a0c691d629e0dce5013942eaa3b635252e8e6cac39bb674b7d96486e802445542b0302047c435bb5006630640230016d0d4928816ac992af06007238aa0e55c208c78b5766181a779cafa975fa2e819cd501aeb712caccea5d1926ec263202303721e0f20c09703aca15832d246dd1e4efba9c6feedf8a16f1cbdf939d4caf4afc0bb63394eac882a6c69e5610d7ffbd0302047c435bb500683066023100d4ed88f435485dcaa5aab83c570d7b309c6323c99c2861a2ffefaa729bb2792e45a14c437eb87ebe1f1353f0ddfddbb5023100b891ea9ae819ea40ed6b498a4f0a1b79cbf164daef7a8b4485eefd233b9fafb28e424118e2102f889632ea8b3b40be840302047c435bb500673065023100a2c295c40cfea028a49b7d77a65be6d3ab6f625105332021140d5cdf209eccf71743e7817172dc9ee01c1402007cd343023031c82157743375558cb79c445282b9e65c63d7b5205e086c84230e1bfa3e8f1b2bc60709a47b55d4282e7a632fc517290302047c435bb500673065023100a23ae3bcf418ace2cad48a411b66d32b7466b60bee804e7c822db7fba6dadcd01199df8f18d8bbcf2ef7d120386254da02307d0a5221a4e651a32ecac8c5c8ef2a4e62a5171519c967dc6deacc537b456a9f2c3c0439e491fd299a72872a00ddf2000302047c435bb50066306402302c26b7ad9245baa9ca5a9727c34a47b1f96396334ac100c7d95f1c613d19d25d44894f6ae6f36db55dd04d90b2e3d74602301507da81a4f101428e7e9dbf54ca30e8485d5cdb06a5db9be946043a82d2b75085098a8676f6c94e9d7779a353868a4b0302047c435bb50067306502301d202852157bf5d0ddd5320d8ef0dfaf28f7070cd12533c3f32a1af0d018dfc68405a495aa6561b46b02434c5452e734023100d93b4c78b4c94a3507d5bb1a2652c21f86c3a91ee8a8e70fb81abce7f37900a7432fbb2c5e23bf4b011ecbc5d847f4e70302047c435bb50067306502301a681c2cbd001ca77c26d6424442bb0d8a5ddc33e32c4f04aac3dd444f3cb6b68ba935ab83171e95643f897071a7bfb60231009773ec0181acbfd94cc5e0589c57ab37a7e94a2b54fcf4c84a3c63b928311bafcff8c2dc280c4baf4a23459f66bdcd510302047c435bb500673065023062eb3c07bec7c91492123794edab240d7ca8ff04e7a9a41def54525a64bf86381fe9e1f9540124d4f7eb0a8cbc658ab60231009180cfc218b3882ec030855aed3ad26080ae0698039b44bd8d321b90842070369081ab32759e816b8cad36875729e1520302047c435bb500673065023100aa14996015a26bb8d8adf50a4e573a9a92d0a3165cfe3b1f4f88957c15cac03f211d76d0ed63c294b960388f92c4df880230232bbfba582c8a7e35404f7560cf4a9772693c5c5b2a819944cc715364f6ef276278762a44c9ad2d7acb9b431314d3830302047c435bb500673065023072cf1c1cb7f93592eacda43bc959f99e46b86872e485d51ad2741f3cabd2861c323c303cf61119f87e186066bfa0d524023100ba919eeea9c0066c14fbf971a5b89c37d743096fceb72e5450dd4f3eea82aa6a60a4a959a42dd6f111699beba293d0e30302047c435bb500673065023100d2529d5ee1cbae0cacaaf6931fa97308972fe69b9812b95c306a8c4c3b6b17e28312c79698189d3473153876160e7e9402307588899c0eeec6041e259e749fb3fcc1476c16240d22ec57ddc38a7a8f7f9352f8ea991be11de24178c539258506cf350302047c435bb50067306502302021a9c3a18f361c60c3c995f8b8ecbd6edd5248afa14a8bff9dff2703308eaee7d10f38c1c6848ff07749f1ca99ed1e023100a1772573aa1c2eada47b96d90e2405121126d77ff0a3d624e70563934c5f2baf5bbc099c107da32b2faff410ac6d85e40302047c435bb500673065023100976af585aceea42a7d08ac7ff76d9065eef6db1a4db519d5f8e28b471c217ef43a5ad8bd25be41082c5ab850b70fdfb9023020a57b73486f1f7e047a3714c73e429ee26dca4b31089b1fbc89b34423f55ace2776b6640075f0c723d99a6ff9066bf20302047c435bb50067306502304d03277c3e10f725a184a27b3d6be010c67a91235e6d15c37741def7927784c390b3ec9e3c7cdf187ea7fc5b35add8bf023100d896805d71511e650b696d22d0d307c111ee1dc87b11b715d0604e838dfe70870784b97f9fa297176ecae434ab95c4db0302047c435bb500673065023100a4fef753fa95a043833b45f42f26cd6e835e4739910669912e11775c097bbcdfd6f39436f8b94df5b1653482ad81de1c02307160dabb83d956a2588a25ee9cebd1cb3081acb8f94ce0429ccdca4b358edd132d7f76129fdd6ba2956fd283d6c19d2c0302047c435bb500673065023067b16dbe50292548d95d11ac6b1e9dc8bbbbf56a4501f4a703e40463017db280c0d4b87bbd2f32cf4147d8fc8a65a247023100c65e78e06ed417d517e403001a6f8460d343b1732ac1969cc0deb11cfb411cfa28f6f0ada44c8589ec9485aa63c7ea470302047c435bb500673065023024610e0e40cbca414cac10b6cf0b7439569e648fcf8547c9856f86b8de3d8c8c3e0d2e81baf0e1bc65e38c1a3ffbb00502310086235a903a53a9a072d104fc5c81f1e858efac88b33d7a999dcb4c53671cb30725e5c676dc7fc472ff967fb24052d14a0302047c435bb50067306502306411862240763208388455ec04aff13362921502cbfff3d78b74b43698371e3f3f83fa3f63427489b0f64a9217df30fb023100d199226039a22a778d41fe77fa1a26b242d5c093961e561a8e37a04f1d0c75337e491391523a5506069b198c71ee398a0302047c435bb500673065023044456bba62fe76e8e620fb3bb2b71e221d35a3fa202a177104f09a1c8cddcd598fbadad39a36b727ed005e8883912cf1023100d11ce7da20a27714c154e2daa7c69126dc9c9bdc75d24e37def6e87edb89f2f98db2bd0db07e7f9e439415c968075eb00302047c435bb500683066023100ffeb417e76f8d86bb9fdbd7464f4dcac0582e5267410906732183c732c982d93f50109f3e646e64b668074f91c58400d023100eccebf870ffcba061ed58111411f5b51fe7b90dce28fc789b79dab9b0209795ed43a0855eb000fed191e96d6c31be5cd0302047c435bb500683066023100f41c6b419c303740c7edd84dd5df3c6fe0f6d0a8d149c3deb937bb6eb1e36cb108b83306b477c2206282d47aca1d5908023100b41131d221dfeea00d727bf11b791efb198fe54afd331234897906e7330bb73d0ab95c5a3dd37e86f4994e605211cd520302047c435bb500683066023100a6bf7f158408636ca7a362ca7aec5d97e2c72a936bf796dc862dbf387e2829864d8ae38cde8bbbdd05d4070829a1d7ed023100de6f5fdfdfbc5270512b81c187a1517969d2f350daf2adf70c7036394146207c5615ac59e5fdf4d028a78f401cdd84a80302047c435bb500683066023100801855fff4be6b70bc3acd519d9a79b9ea7ab5f3a345f3b2827ed089b3332f56c9cbc1bcbf288d1afd727760864b6bc60231008dde4e067d0789470cae0be0d38f4561c13eae75ca10dca17f58c3955c8b9d2e5fecfe71943d6d6f8cf5ad4d83abad0d0302047c435bb50066306402301e68e4d76ba7b2f9d83d52f465656e78d397e69e1edc9983adc8514c5af24cfc7941f89922b019d1b471fdc7564af0670230100f9cdacf1c041afe41c04b0aa329dd5fb5c64a9dcd6b3a389f0524d35384285f22676e3e2fdba754852349081f6b7a0302047c435bb500683066023100a291904ada1991e576eb41848cd1e1bb00af435ca57e369ecd1213225d3a90dc97aa3c7277fe4115843ff02608468163023100caa8596acbebe994e792f540b93dc03d46d7dc5a1071f75282a2c4d6c8f8107d85e2de77e8ac9f7d37c0054857cbf20a0302047c435bb50067306502307b31aa497c097184390e78ef295838dc01ce31e7855da452ef837e0ba1d162070a3030fee6ffb892d24ef9f0c81e1678023100f932955eba4948aa72d4c0d2a1ea4554783a03e7e91f1daa84c9f634504be55fce80cf877789bff63c7e5aae4edacf040302047c435bb50067306502301f060983be1d721223585f106966ce702528d0f82b7e0406281e9f01f7256b8e0809a1aefdb17ed1a98de97abb272808023100babe1a6ff5bab1f44f4b2951fb1548cf06d115e34301a20f58e1ec4cebee06f4da17c276f8518cb6360733b5579588120302047c435bb50066306402304f908d2df996e51a7dec5af6c1678c01918278f25f84c14bc0bf90afe69f94a77f26a4915f8e401dc62bd2ede12291ef02305f0c329e45550ace146d976599c9e1d93de9cb919df17d1489a9435394e6e6687a46c9be3faad42d81a7f9a68f9924ac0302047c435bb5006730650230368641f066b6a01a86ec1bcb2fd2e350df8c2c14eea487efc4031ed92352eab0243fb661a5e0eb96af808d9353f81b79023100a47ee457fac865a7a184f554de58ef95cf8bfbe0d19f04c36bd17917371811eb5aecd01d266efb209ad37eab9618d8980302047c435bb50067306502304842b0e99c3a67d0731c7d68f39d3a9a049c87fb41147e7a7fbfefef45e02c81d5dad50710d1bd155cf24905df749a64023100989af092ba0395899ac767ca085422058462f0ca393521dfa7eb4b3c553c2d2e853f878e3025dd508fa312c3193bad380302047c435bb500683066023100816a4d70aab9db46445cc831c91c8ba30d32d39bc394f390b4b80151552cfe1e817b02de4259890356366b4d60b858d50231009b71f64ad2f4cf66f8e6e27af661f776d173a9c99a52566d2d0fe4e48200a8291995246c14649786e79406fb47eeea700302047c435bb5006630640230308ac1c4e023cc6384a4d98f8b7da3b3b08627d022ad38339daa88b420729d74b48deaccba28bdb761a51f28102e562d023059d0bc342aacfac1dbc9ca6f594b95134b6b9ce11d1fb6c20164ff81a88379007b8353288a552a75df0a09b165ad13e20302047c435bb50067306502303e39daa88ea31df9c2a1a5cab367498496a218669d69a4523d5ff2414832b02bca2e6f9487d6d59abbe22273f1735f45023100c17d150487112a4872f95422eb13eabe52606053bb72b75b87c3039f4f7dea14d02d2d7e56554d9c5643d53cd9e24b530302047c435bb50066306402300921e75a9cbe703637ac66898e22f77ad56d565c84a8170cb857825a2216beb8a13ad611d1e34ef94b906f062a187a7102307242d24c72c47e64a1a7162fe1b8c0e677adfe8013c55de66030b645c770a54036b4ab92bd8d3198ad2d4d55e43523540302047c435bb50067306502301cd58f31482d6a7d045b92a5b9a273ddad0d877e8b78e640870d02311232fdb63a3ad6fe7e1d5f1f04e573a62b6b7757023100dae22810f91a5e5466c22e8d6886c063c6b49a40f589f07a29937db51be509a338df6b6c0457320ab3a71fc0d1eb93be0302047c435bb50066306402307fa6ab0e9f19765d7d2ef1cb5d5cff6bbf2f5b67e98e9bdf933bfd255def7723cf91ec41056239a38790992b858eaec002301f42a372f81dfbf48832ec2e205cdcd881e7be317460153807a33aa1664901c0a96a7021f706ebbccff322daa9a1be9a0302047c435bb50067306502310099b9369e2ddc743a3d0c0fc75a527bd1810f0331e3b1ac67e370202787d64f59284de8c8e04e99099780e5a419b728df02304e200bd2671e0b8cfa6cef3508a30fca5dc0ba856a9fd900a57d33b737e29443f6a14ab7249a5595e97cb539242889300302047c435bb500673065023100a2dad9b906eb865eb97fe3dc92a50742af9f24131f09659e5ae80ba96ced1dcc32e712d3cf519fe4e696e753cf651497023004fcefc4c518dc1a7491562c0ba337bb1302f5fecdc7409393ce68a7bc8aac16def08b196e914136da67044d85a4f1460302047c435bb500683066023100d44019cd5bb9fb2f446fc9fb5bbe1348a7b425862ac6f735770deaedfff77c9ec622940f3977c50076a6e5b707f5018e023100fd0956cb4f96ae9a79ecb95d7531c128dfa0fd3f55d28afcf3479ef186c6ef2ce6ea555967b09c29afad7e633be22fed0302047c435bb500683066023100a9b09f687020cdfa507ddbc23e7ee5d94cfc91ef0882ee625d1c298eacaaa7b0649e14713b7321e7f647c9ffadcbcd1c023100b0bcaa6db2675009f4c19465dbf99f7156a610e45e6a3c72206a101ce75e1405dfefd5786629e7436ea06a1a69d3549f0302047c435bb500683066023100dde6abd761ca267df5d3510a436bcb957504e966c1563a791daaedd91886e5fd6ac1c7f25082795ccb4e15f111a329a4023100afeb365b1c5276538841e6979926f30fe1e101b60fb0bbe571548e4f7e38ad9ba392b669b7762fd6b39422a98d94143b0302047c435bb500673065023100ff7dacdd7c078931e4760cfef613ea0a92ede32b93cf5cb441d2f7a0af701d678c7642c221498eff5532e6ce2fa2e47702305fb1fd8ce2b5a2105d3dbe2a2e3dc2326dc711a3ea7273015a42672f5399a37fca47022c06d030e2a03969031878a3120302047c435bb50067306502304832f48b52d7caeafb2d4ceaec712db4fb566dc158150d9131d4a87bf22d857c65aca3cb4d3e955c6c81938f2f37ff1f023100e4eb8c45d3ff3bb53dd7d9d9393ade2c00f89317a563f31dfc8e8dfa97114b56d41e5100cc9cc68f6bc98b58200c4a270302047c435bb500663064023043ada21aa4ebeaebc6c65b387b0d5ef1b6bc7adb61270a5a1a61edd7974e4a755388bb2537e2f7c80d02199ae6359b180230751d81bc72e3dfcc8584116a5a4b4641f6ffc6bae261ffd48ddc3673aed8b00ea03ccdaddafa9403d27ceb62f4a222f10302047c435bb500683066023100c033e5bf9bda948aaf30991d0ae6f3b722f812afe20aca5d1b746b4b6015fcf29ab1023a4c69245264209b143f07cc39023100876f29a21a901bc8c7d51d675e09f2bb70e121ba809255507e3ace0b6f2d8669fc8b689194b637ecd15ca8d85362c7480302047c435bb50067306502303289144f2e4de905cb21bd1a22f1670183f67bdf0f66964876fb20c04f7594cdf0554c1e8fbb1ff6b9c35e569cd1712a023100aaa9c100f77d315483f4ab4edac25ad0146a6d09cd2eac13e89c3f0ef7c32951956c5dc37b39b5c45ef5cd70a25963630302047c435bb50066306402305175921a40e83b99fbb4b42eebc53cbabe84928242df931988267fc41d9986d00d498dff84c539aa81bbd50117a50a4502301ea407bd8fe6e7aa6bcb4e128dbc90529dd6ef617a944832fc18e6e1e9f1214fc901d7106db71a84ce1c5a96aebf98170302047c435bb50066306402307605f7d098d78763bb21e7bdbde27871ca203d2aeb7926242a34e840c22bcde42ccea4078feb92f410039c80890c13b80230318be49f7c888783db4ed0a01416565aaa5007c9af1132f833fdae0fb5f7cdfdeda81fbecbcddef3c014b61ba694f1c20302047c435bb50066306402302451587f41c4414cdb0b3b4c300c42228a53bb63b09de6018ce1f501e0ee3cdf902cb132983ec014e56b390554941db2023028cea7544210f1daa1dccacec918ba859c4d52ce9b0c79f5e9de7c533f01f20c430f553628e792fcc8b142176cb06f270302047c435bb500683066023100a7b324867feececb818851d22dd27eaf55fa48b0f95a90c08c1ef065796e2695a43e94a4f1969bdf6d47b5d26fdb3e91023100b28c72f49fcb9bcd4d86778472755c9e4c8d57f361ba5e14764cecc269b1abe6e4c2cc3bed60df6ede491ee612a5b5e70302047c435bb50067306502302df392f2c808fab00128ea613ffaba7caf62e9f7f902b224866e57cfe3f977f4443fe325f3b488bb39fcf384ea22a8a9023100a1573bcd659bf7f23c7dd3b5aeb84a0710fe27eed8f4fff0a07bc2f1adcce4572d28301f579288c5297e1f951406c7d20302047c435bb500673065023100c8939131059d96bbec3572d75a13f1d45650bcbd18dda22ae9103574c472327953e8e9ed955ffcdb937ee054b4660289023058076ab1f433cf8a470c18b944c0195d37868969b51636a35bb2d79234899fb1b6fbbb75f3af491d56c206982688cc8e0302047c435bb50066306402307fc64cdbc8e47c6c85fe15fe3c3ec3630aa741cc2cee3fd27f0894223458559ce6001dba877a7045410278deb377683302304dfb7b308af8abe377eb8df7c01f13462b80b8446c673a60d84cb69ffd62551b6c586c11902146a3f0f3b21694787e540302047c435bb500683066023100f6ef72c5f7ad2bbd7d6083c8460bd9eb9b04194576713c1d0f6f3ae10cd347a95f5ff73aff080633bf8aa479d6836ca4023100a45d6a03c1a30376f0671fa52988b4c70bafbd3c709ca539bf6bb1fe1be73bdc51cf9ef231e3edf5f8177c7c79bd43ac0302047c435bb500663064023031df3962be179def6a2a7baf4fc5eec5015e626b691ae4c5ca287f3684c5cceb5c9d0ef319bdf75333670866fc5ab75d023066081092692e504a187994cf934e8b51b0f5acb2577bbe207de15bad754926a418bac1c4e5b6eec553eaa8504ed57b150302047c435bb50067306502304465697f62bd2f22386c8fd8ba7e5c2e419213b111838a808472b25029160086e978ac5c60e12a27facab5b1cdab3ec2023100c91f687f3254bd5b53980850c8abd771b767338b4861df514b0c581c70686a1036f04b6ad553d637ccb9409dda21538a0302047c435bb50067306502304effe9d9175af98112fc5298dac662494088249a23ae736cdd0c011c45fdf59772db78d6c82aed33a5744b3ab66c9acd02310097e158f0f48ebd82f4b88956387f59b1c8ecfcf96e0507169d9ac08d0009aa390ee3e3495c37c35fb227a0a220f270000302047c435bb50066306402302170d0dfe0f160bfba216b30a4eb99afd9461a81a8b2af1fc1395e53e2f0b7ec6763d518b8e210f57a9cdc76a41ea173023045abd638fe088bf64a5c83506ace560e2c6c383da22e106981a064d29f5271c0a2e92ca394e1bdbecc48ef87cda4ac9c0302047c435bb500683066023100d560d1eb98aa32f76a20ba33e792d3ca11b0b247e10c8bade30309493f72e4c2e32ea5db2455c15f663d55e322ecc6220231008f15c7c0b5531bb9e5dd64809b9dc0fe4f8bcc2d154a5638685b37df49ea9dbf8b410d49d688c087766991ca869995f10302047c435bb500673065023100fb4ecdee696b0ed098a9847fbdf0c2e5260ad430b972302c66f94d514f9e148cdba936e4da0f3e09101b4b5b78c4a1fc02307ff1a39caa8abb5053bb1151419b43e3daad08d59979e84a60159108b74b89cd939312cea98a1de13acbd9a8190153f70302047c435bb500673065023020c8fb8882888d4953479d08360684cfaeb56aeab6682a71a14c9ac38063f2563fa1b13c2c4a297badb58886e7e08a38023100e1ff48a8573b6edbb9d5a295351ec1aa007fccebdfaac7c3ed8ba3eb9a510266bcbdfba79ec3982f072f8eba0e209cc90302047c435bb500673065023100c817b72f6c4ae1e1a80705c23404203036fb6f5e56a9ae642f14272ccde1354937821359add7a59a7c9f7e9be139203902307f48d8d2d3c03e5908830aeef3a96ae15c1f94d13131ddbefb70f22765eac5a717ab718a67197e5c0cddae8edea43ebc0302047c435bb500673065023007ddf4b7c8c6a1609b1a4c83ea00234dad08f9ff554bdb5883d34f75f014cc4111104521be36c76e63373ad76ae8e8000231009748ab2a7bf9a281ebae4e197696093e8c18ba77da82fc12e5228ca2e2d9ad872a0b09c7c943428854cddc4ccfe061ff0302047c435bb500673065023100d209912ae89c061f00d7705bcca8e2c6772157b9fa1857c4d1fdfedeb3746e2c3fb0f8f669708e612ccf73ec8249f50702300633144d5a1184e692ed8651dfccd783ad3ec895c9aa49599ef0a01ed5d99c2755690f321220fa7a8a6c1d31c0e549850302047c435bb500673065023002c55ece5c2cf0679a330777f5a6861d85f85144ac2825b38f97a4c3df207d7d0032aaa00989aae3ded8bb4d0cc70c8a023100ade7fbbf93856c26398c5423e86945fb23494f5d6db9e670de56214f618ae2a3cade6300324acb795ba7f2fc017034ab0302047c435bb50066306402305dcfa0bf1b5e17bdd1269c6223b91fa85f452dc0324e6aec4db871e27cf1d2b36078a8a55e42bbdb9ea73f219ebb5c4002301069794454fd45fe7ff05a333a7a38e456920f45e950b41eaec3367e45edfa7de30c519b9646754d616e1ab4b77aa6bf0302047c435bb50066306402301035333102ea1d584be9a0b5a68c4fdbce9a2f51eb3d6efc38000f57df2b975df27b62336ab41289fd2ec4568c85a90c02304e671be5e4115aa3ff5ababfdcce5b4370d4aee19eb0b447606d4aeb138951ec042c448f9928b00993d2f24322dc84990302047c435bb50067306502310086a412d2712ae1f8551af7d3d5bc122ccb6f62171159b1e0af27e4dd24a24e4a440aa286488a4a59147b1bb7899d52f502304b375695c3610d1a0904406a8b34844ef0fc7767e8c2a46205450e28a999b6eee9dcfe462a8bf545a591606340dbfedc0302047c435bb5006630640230180b4089bfd7f1941dbd21930e6fe8073fa9ff9730b2b85dd0e131dca48b04b6b2fc6bf44d08a02dd010c14a806ec5a50230459ae7f74d2ff008a70be208a25aa66e5cafd096478e99bf2db8104d28fe80852687113cdd09da525c9b01a096e7fe320302047c435bb50067306502303bb127bb3cecc01c19599f374ab09b97d0b8231439195ca6836339cf09cf5d5ea4291530d3f4a5f4a9a2aa84f487f9a5023100fe29c080be35dafca092e4edb76ee82b9509ae831da9675d582e0b3bdc75e39375bd6e59d3c0e1d73d22bc7e7d77b47d0302047c435bb5006830660231009e312cdd407bdb44512f593f52d1cc6cf7c2e68911a01983ea9d48dd3ee34513b368103f827bebba8357be7de10eb803023100e44eb3a2e5b5b916b4ef264d050ec7c22842d46a54af9a4e6966708ca319197ebd190542bee8598ee634b6ec921957a60302047c435bb50066306402306cfaa684fa9a652b4e1988533460ec7c59c58140f0b6a9c866c3a4c1e9f835dfb724d61c7604ca43dc269170f81f269302305e9fc7bddd8d4ea27affe9385e5acd76de04e761c91e9a26e4c562b5d09b8aea69a98f51cf77af43958c5343bf07fc600302047c435bb500673065023100ab40133756bf0b130edd0e34c66d2413cd633c8daa5310c5c71f96c39fc6317011f782e3606d77033a29721a95f9f64d02301d2356f95d58846377d2d365faacdf57b25148c4a721556845feca83d3ada22508d5f68c3693f82b1f2b0565587b71880302047c435bb50067306502310087d47a207097542b0f5d383259ad3cccaf05fb9b289e389c374bea79a721519a84b555a4466925e1b3a409364514977e023046016875db7068a6de356c5de157854da806aad4c4ed37fa4c3c97b11f0e65185cf76094ca11457df3e17716d5419a380302047c435bb50066306402306d234b67901d838e5a87db812d7a2f9fe8d5c2c5a66a91654c63e374ac2cfed0731b0597dc1ae4deec2fbedf421b741102304a122194b8c9ebe4649c21cc1d910600c61d0befaee64ac9faccab8dd59b30b45b436b8cf62e8f200325fbdb371d14e10302047c435bb50066306402307e16713e53edf5842cfc492d7c26d12be0087d52e960f9009e28b22c713735ffe98d5830de56813dd3eb964b7f0889f802304d65e890783e0f24cad22477baa7cf069708f78ece2863cb2245a3e629b19b5a67fa1bb7c8f78b96f7b0edf52407476f0302047c435bb500663064023012d2323cabc0c2b6aa04bfdb1ce300509c5ca901bac2ed57a93c6d80d6b1b13f5452ccebe4a56709e87a12c103f7a18a02302a2c5c39307f8515668bd5527183b60b48176aebea5c444f1f302fe581ff86ee30210bc186b4c20be47cd8d0a8427fc10302047c435bb50067306502307a69714538e796d75fe636735067b2dfd444a41144723ba219533a68232073bf103be2063f08c83d6a0529bf5b51eac3023100ea24bc80cd8df3ec8c5b6e301063dc5a064332d157cb1ddc175d67cce03a56786512c2f92558660fa45eb93b1eb251720302047c435bb50067306502305fe4038376e4053a1321800b74238c9e02310e3a63e03893332f2eb5c3521e413b92db05b5013d45d463b449f278ca20023100d48f0e542433c9a1feecd6f733442cdaeab0c2372d2451f0453876d58cd38f8f396e2a8bada74daf355c70fb41a1af6c0302047c435bb50067306502301e171b71291e772ee5edd685a7fafd7cddf13202f0ff5cb6cedf8e42dc999bc928b775e658c1094d110589228d30256502310090979e4a08261f5cd1e363a40ee2e297afee270645e03fb4ff43ddcae0d0e47cf42d668fd367daf4aa01cf6a852207d80302047c435bb500683066023100d51c068d1845293e317a9aee0bb57c62df6897d50ecbd4a8f210c969bd1924c597a3844eb0024d9d03090b75312f5903023100c6373d2627ec4a16a49d0644b2af2d264a3c286660f2f754131c3a5ef03be4e56df95990ded020a8562e75b8bbb88b170302047c435bb500683066023100a89ec5af3466aed91c636289a4e89202c3611407b616ec5adbbec9f28b3e5396835adf986d8eef25faff248b9144635c02310081a2b87719b1e1ab384f847f815d4d0c6f40e15a3b0320f02ddbfeaac5d799fe762bdbfb9f24d5f1b2639eb6f8cb04d30302047c435bb500683066023100a2e57cd52a42e61aef8c9040f6c134f0bb269c0dc06d8c3e19fd250eb9b37bffa12c4c6ea5f972f07c514892a2b6c6e3023100e0a0db7f275fd7c06671a5184757ac25d15fc3c7db38e2d7ad0d7839a84e8ee5552fbf4971774308601f2a335997ddeb0302047c435bb50066306402302fed86c9b61fe95cf331503df50e07f23c57ac5e5a7f6431f29714869cb852994ca55d94dbc9017c599a1ae42b3c0c9f0230253530db7766b838ef1f12b5565197c2b4e6f3973aaa02b1135d953a4b518d75b554d8715316e9663992f34f815c04750302047c435bb50067306502303560774bbc1cc9cec61880f5bca5442067bc2842c7aca6f71a086c0727877b44eb3b7e58744b7ed168ff7fad2f498e31023100865b7e0ec08d8f25127f15f72666624e55aa595cad96c0179b0df42e4851c783046afb26e0f2f3f7209573443c7c220a0302047c435bb50067306502310086ca1b5a6b9f5c8ba513f090379cd19dae14d5dc942a2d05b8c707aac04a149d895e475e36d66ed8783dbce8dee2a39c023026eb9486a79020d32d1dd1dd439be419d6ddd9a6a01777879f400e8ba7f0a1a579f38dabd6165050765a0b839e6897b60302047c435bb50066306402307e5ce8c06bcee86e87eb8427d63bc427910b34c4810422f9b84bdcf041ca24cc6337f506c08d2ef3cabe0573fcf4791602301d30d372ddcf70f1880b17a8b431638f6d1c2672ea95cdcdb3f89a3615d4efdf859116b4ebb9702bcc92489abd18d1930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009ab0901bd327ca6574c4d34f2642ba1df9bfea555e34f8948e734f388916d705e33deea74de5b40cb35e0925470b201d0231008e590771e941a6c57fed90bd7fa95896d33e7bf847688095fd29fed1da7a8bad56b674c702b3db1d24ad5c3ebdde52060302047c435bb5006630640230654a51c913d1abf2f95a899f803e7f114d7009cb5dec77d6fb917d84509da106c5a804b0d97476ac2b1861245ade41c102305f8b62a6f719376217b70eeb8940447d9636e79542a7d3f18103df22362c04eb2ac2be1f37c2539c22ed8ee8cf0ef5cf0302047c435bb5006630640230509a860d36562c69e47004161f09d7c4a9c56b223e8891ca656ee522d6104868af6f46a92068d7b67d004cf3824fa3c3023079144bc32a932a5e07bf0d08f876cda2915e212bfe1819276359a0b5ac3d64abfbd30ed013d3fcf28c009d1ee41c66660302047c435bb500683066023100a266a7ad774b9331414d315537dc26f2191d1b46822f9e68ae53f1c8daa4f81255f71887c2ab46cbf797aef4804c1fba023100ecfdec7e5df5cf7ba89889976e733c27846703df87f9a31995b7b6d6a6b1c133103e3fd09a2ab149363fc5d40e14aae00302047c435bb50066306402303e0ac1490dfd8017760944093d34945bccf8e8cc92d6e951bdf3fc1ce5582f0761b0bc3b6432031033ddb3f9ed56d2a00230110a5503627676f66191de7302f355654d8f5164c84de46ad90975f204ce8a2abe802d56ee4af74d4f518785d02a7fe40302047c435bb500673065023100a6273393d8e1722e8474fd40e374d4f8642bb1601d1f55b6275f8c2916ee513124e15de313904172c65cdc9b96ca8fa702304530844239fb227a25656b312add21efb0e79cd3a78cc5ddaa1f9a942fe721215b7e6c07da564150c2b7f1eee8d8128c0302047c435bb500683066023100c21da9994a7644f9ef9279d815b0d1a292427e9022b08ff5be77f23aedc15894107e1184e6f9a479429c8355b28915250231009b6e5b2b02238cc3ebeebc4a030534f0aeb85a089d9df4aa5fd8bd23506a51be75ab6d858a709ec85f2ccafdaf62c17c0302047c435bb500673065023100fe9223d78f1b4c0d3282c9b140d593b24677cebbcf233998244b88ff086b45217c7c874195bf45eb4155f4705681603e02304a7827bf572a8b704d0f9071258d6d66e814aecdd90e0a83fbb2d24dc5984ce77db92bae9507dbbb65ed0e6db236d7bc0302047c435bb500683066023100ad918f1cf89489af333979ce9f6108dc740f118fe754a64a9e7fd8222860a7dfa60702ae37b29cf77929d7851c58d7ce023100c2f2d1af99a054a418064a9d0d72142ad64aafd6642685d94870f93a8199779a7e57db0f23df121a67a723341b00c7210302047c435bb500673065023064adff1012fc57604694878a28a509489dc6636be44e02cfe6a29119afbae0a0f5e009f26baaf7a1a59f867562b80ecb023100832d5414407480bf2ca45e39b56bfb2045979fd884bde1ddc7065b93ee6213b5f5c0d3c94b3be7d63ebe77dd128ce88f0302047c435bb500673065023100a263920ff0100ea4cc6bd29c246abcb9af837af4cd67d07e300cd4a633247540698096fda814fc84bc944f28b70ac0ac0230660afba3a7abef7e18ab5aa4ff4fbb50139f3db7be6b72f93ccef975859590ced183be4290214bade3f7ed16e6d7d5c10302047c435bb50067306502310081c5142faf136943fe1d0b7e52684d0cfbe5a095df0315bb95f11fa0bce4d0197894baa8ff32e1de69f9e292cb294fe102306d141a8de65222b8185c58dc453197ebfc454f3f80322c628cf32562b4a1bb975858031395aedee294965376537568070302047c435bb50066306402301e1f6454ff0243fc034b6fe397a6b98db21b4fc893012f80258339e12c0a06fc8dc27babcc42e184a3a957b03cc7746f023000f4efe81f80ec3bc1a312a765de2309ac799931ab0cde67157353d2654caf77463645fb071dee793cbcf4b62f8eae1d0302047c435bb50067306502307a58a408e9d5f26548c55467e3e11273391849c1cc0eb9f7be9a8741396465bd7e84e6c7386dd9057b25ca01c4180a4902310090965d4a1c3e04ab3a63c8c8c4ff5b997812f45b57e46d21e0189949fce5db1949de747fd64825af3446c2c77f55c22c0302047c435bb500673065023100e7920d8f89e32dfca545ab7e377f2a06e7014c0e5f741f6adc95ee2e4920db006061873272c6ba6ebeb2e9c4d974f8da023038dde3c7d49b0b851571c92e10ac502974e3b9b5037b3182223bdf50ed2592530b8c377780ab38cc9a322e418e3c43440302047c435bb50066306402303b3bd25394bdb160ba0ab0e1b5e0747fb64502ffe2c967e4023622daf4d58d76b82366a57f6cd777289a5821e8ca893702300bc311d2b39af2733e4ff3c32f0b571a3014cd0a5a1443b4dd4379d472197c50c5b85db6d5595aca2c456612353679b40302047c435bb5006630640230080640fcefeb7c7b8c07cc8c535059ebf137abfad74cd4247edfc787146abb7d7671508b7d1bd95975146e785f0a91760230212cdc84c44944b00f3a0459227172cd9a040d6790a75817839a7d736bcdd3c6dfc9c6127a9d41f159e17abaf478b41f0302047c435bb50066306402303945c6aa1bbaab503387aded858a761bdcabb45075bcd78419a157f71e229c5cf44e6f7a007e643583f64294987d1a6c02305ff19633bc1e65b4776a733d2cac9405919030082979393bce83c6c25423d7ab7e0645f32c97080e232e378bbb5531af0302047c435bb500683066023100ca2b50bb8c7be1140c81e235fb581e5c4244e621a9a57f0cbb36fba9f52529cbf35fb6d635ba35e2ca40bb90ccd152220231009314398559cc51a4fb7f9e6654ad106b8dd3a40b3ab86c61ed46e533a1247779f4cdbd493eb34135be6a058ba30b34ee0302047c435bb50067306502300ff072fb823b43e77a6f4e1f9f38a1dd731ebb897803da17c3af4dd1671cf760648bafd459bada2ab2a06139197e0e9f023100947acfc0fcae0a6b2f98838698891ef7fc3a8e74a57af27d83fb8c7dc1d2d75bda3bd0957b0576207a4f481fe513b7610302047c435bb50066306402305940222848d22e058c2355fde0a74f3d378b5ba673e8ec6279a6271b2f18f0225b71ee7f1afbbcd695f150d803f564a702303216e2f27e7e691665a20d262519cc47eb6d0c7a64f50cf78d48d4576c943062748e84442f2e4e7f00b728c13a006aa90302047c435bb500683066023100bbd6a30dc21d74013f3bd72e61dc7e500ffdb3f0a4b17275f3c2b4d699f514bdeee830471458e2609ae2ca6fdf528d44023100cbe4019983294160541c2fc54245591b17c9e747db3d5250c5a2f5707e4ad8588fab61644f000da2eec855a122c8d6ed0302047c435bb50068306602310094d5e1d01e338d70f22054feb5070d290ae61af88b1325602a9a386b1c8e5b69b233d105e9d80b4d3888fcbc9b37349d023100919f54e19b561acafcf4fdad1d433dae901163fd2b8e6b5491811a8fb2dac31dcd4817d8d7a0555990968bc8c4997c2c0302047c435bb5006730650230512b694d3174ecd056173e6ad72d06134b75095cc09f24debb63728ff2ac32efe293a0dddbd998f3ab4c960c315f94950231009f4246f4c9bc286cfa4c5750acebfb7cba363ec66b1f1593ef5d2ecf6631ca945aa4613257ee0be2f3019373c3eabfd30302047c435bb50066306402302cbbeef0b3f21ddaf7a983092f853ac1ddb684de70902caed6073fc456871ecafacc6f599b72737a197f678fc82a0313023044680d046e6a6e92ea473cf42c41af7e1dc831175bb67b055445f5c82e6686399f7a063530d3be13bb094db7edb917450302047c435bb50067306502304ac1ae4200adf6d1006dab992a64557c04ce814881780f7a3c65de0077e91457f184802fc51b11cc2c4e52cb8a7b09280231009aa5293cf7fb602d06413262dd7c0216c2a1cbaa971be8e20d2fadc8d3171662b778961a7d97af02547d49cc09ff12e80302047c435bb5006630640230138651bf390ee09bd8c2762ad759881a0a24ade75b43eab21e4b05bcbee2aae72f49987fafd4549fc63ac477ad85552d023065943ed46ba6d81e59229a311c671442a610212b3cb04224a1ef7519cbb8f31df2c8ab29fc0fc62061bc4236e94326960302047c435bb5006630640230649a502c3924efafe9313d1b890939eeba6328e2fdd3374bd9814f3c49da91627f6fe7e9e05e19c919c5cc6c34ce0f6302306eb9b3363825a3be9d1279b255bdf326c0a47e11977d11a1b4d30732058e2bdc54fa2be1f2ea4ad9f65d8ac386c7d14b0302047c435bb5006830660231008b2e1b4a3743760ff0fdf4885134fdfe1186c76e4f9f6a3b142d0421fc52dd50be080bd992b3df1e389c4767b372527a023100dcde2c44f70bdc4b0c0f58f9f77328c3bba8bd32567caedd80c727e6314de0369fff0458ff432769e6a68234aaf89c6f0302047c435bb500683066023100c4f2f26c0d4ba3e1c5d96dcc9abf747bbde13d6444d1c1e3c511788f7102d4fcb79d8d911d14a9744b4105efdba003b0023100e26e9a93dd6f4cec3f2216b6628345ac91ca142bcd0f4c1d680917e14dd2a03d54d948fe47529d725e6953c83353e9790302047c435bb500673065023100b359f521e7932a4543ab13087e8d157841619c04481506a804ada4ce9a541d87b958a69e679faa144ff00f17f3685bf8023005cc4faab4c24ce86118aac6ff265352a56e4575d9785674df3707d247350ebeb6f54b314fc3eab6c2b7fe5455f0d5c30302047c435bb500673065023100e4f8713d68262b4353b3662da81bcaea99fd307f672710781320f06ef344ca5ccfc4419914d548446a9c3c20f083b2f30230716c8fbef83f1d9ce9e831eaea76436b8ca671a30148246f2cbf1ce94a7e1ef77eefbc4daa8a8ea47f272178889521350302047c435bb5006630640230637d409217c70e79d0da2a7d1717cf834099603a7518a04740be3059c425818a663e4c191e76da98cc50aa77132e6b8b0230656e4337df3a5fc2d12c1292403cbe2748b5b0def4ce810400bff5fb5bccca3bbbea275c2f4cbe2de6c367a22b14ed100302047c435bb5006830660231009d0890ad5415c4afec0905b9479098eb70732d78edd3cfe546fe0dd9efa854b94cd9dcfda55f4ede67e3f37c1c7b028a023100cb1da57ddc00c98c900441c96fd6a1e12ef44bd215497abadf0e1405d44823f9f8e213ab2e4e34ef3bf2a527dc986b040302047c435bb500683066023100e95f0826849b9305fbd8273b439c1ea811411ecf8d19a31b91dec9e4e1d8b9d27d5bb387a8e9927cb1d96d92d2f5890a023100a591e4c56da764f5a39f08d7672826b70de9945fd3bdd9abf0182460b1a75a0c3054b3b4f5248b10366ab94453db66de0302047c435bb5006830660231008f694995ea6bf740fc870ca3b5b659ad404b3bb1ae313e3f2df26700cdd65ef64732cea26927c2f8a2a83ab2621598ba023100bf2e5d56ae6b0aec1abbd32fc8b8fc3059aba5f213d0ccf45af23196a78738b61881709527ecc7652b5a6e8592e5f8df0302047c435bb50067306502301142cab899ff984f480ddf1c55fb1b2bd71e78c490c2b9ab1db928dcf732c94f57304c2c68e6753c83b6a7e861e0116c023100c452fc320e01ad401a47b26a72b6fe68fa8e4bab716af3bfe0f5deef35315c44fa2afc418c614ed58d4c2665a0f8d0440302047c435bb50066306402303f5d2f6c3430bc29e010136b00980d49f72fab4f8b6bba0deada7e94ea3e4cfbcebf76f49b48a59eef9417ae6ca4c8ee02305d3607c1e8b8042469e1c8e93539add571a6abf592a37f5e87ec222dbdfc461bb5a2814706cfdffbe7ddadcbaa78371e0302047c435bb50066306402305a5f41f3a4846759c733798d9a7704c8931d8493ce33719cc4429c5ed2d3cd412d1788b1d374eab0d4ce1eb01a5b6814023073227594dabadef6f7c70c29d836bf65f3ef44f6b5144041b7b8a1a945aae128ccbb54e28de3f5036778f3320924e54c0302047c435bb5006630640230696de3176db79471a7304bdfea075b81dc153a360eafa7919af592f18c76fae97a9c4051ab002632ca50bff9ba6b88520230677ba8beefe9fd29a80010ce28c492b929c5db83c997dd6ce60f6a5750003be7cf17c24f04b3f44cb2a4e0c9b26e78730302047c435bb500683066023100a281ea2699981fa61c322e1acc56e0745b12412b20374dd2c4ca390ca65cf6f27884de82384ca8ed8750a92be9913270023100b42fd29b6c232c274198bfef9ab7c2f9b36be08d9a71de2bacc08f2a2b3a4115c44b668c42cac322443552157ff89e2f0302047c435bb50067306502307d8c77303a03e12559986a525edfa806722337e01f85c69e7541623dbe607b052114c0fde81b44c1f3616c1791af6530023100b72a515c0f39e6a63489cd0d9a08a1b038cf8d02dcda624fe05217c95d722dc5a801cba983e548c0cce8925aa850ba730302047c435bb50067306502310091d299a65a17b1c38085df9015f082f1ea4c8aca9ab880b86d24c7bceb2ea2c3068da1ca8ccdae83e29fe61de69df6a802304652fa7ff7a6e08503f74c2c12c495eaa443d46e9d4b5f5c6eecdffa8fdfa32db0213b2d8ae4d46e3923ee99bc7533f60302047c435bb50066306402303194b8302b1f0ddc883b51d82bf0c4254b7b417c84149ccd6bf55d95be107d12e2f51ecbf336978b08830bbf8597d1ae0230797c29552c24e4b209f82050ec90fe994bddb238fa08de7b33254702344c030dde9fb3fb3abee53f6aaeca669bd20b2f0302047c435bb500673065023100deeaf305d4174dcc6b85bea4422e234013172e9657552adca732600640b4ac15b6e527aac254feca8410316568082fd40230237e48340c13f49bc86d45ebcd206c999c3aee2f5b3d1cd2a326a5c6ca31ba3908bfd4cac33dfa0d11b31110dd752c960302047c435bb5006630640230024ee994063754d90253b315addf0c5901707e26aefc982073f9e08eb6691002d1bbd3cce970ab539cc6d99d85ecfb1102307cecb4556d7505a9e0de181db9908bf2850e9879e2c2b4a1e8fdc9f5bba7b749514a727d7fcf14ff41e4fb23e5e7565f0302047c435bb500673065023100fe9a7f0b5e734fd86fe1d122ba59f62dc5b59ecee76d026dc38b8f4f20ac5aba889111bcea8707357c59591767111aaf02304ac03a5b0bb9dff259357ca59568b7750eba076b8343961aa02d9b24ed9f3e8365e80956bced268ca7c3cac16b9f41c60302047c435bb500683066023100ed10ae75dcf663b2099bf0184dccb04fb500d6ca592fae9fde0ba914fa920d85042b98d9258d87a5a2b1571582538009023100d0b20b9d48889ec40d4f7266bab3e46454a8b4e61e0fb47a14fecacb69b770a24b3f418bea4ce0999e6c0bf6d204adf60302047c435bb50067306502310096ddaa8d678af5dd921fa789fdfd23db85e43ea6f56252823e7f17ef67ce692340a2380b6c4a277b1b5e3fa18aa474ba02301b3c8a617953877b29f7e20c5623f1716fe88a1dbd9cf99f99acd4dfe87dbaf88271f773ac21eabe1194f64f4ed777490302047c435bb5006730650231009bb7fdbc7e05f7cb098da6ed7b4f6d7e71750e8e482099d16c6ad95a1db6fdc7349505642159f02bfd5213e6ca7c175f023022a607778026fbcb77eeaaebdafcfb30df5bce86f5ea018974ca2a65d3814f3b65700bbf62af9a05bbc7252b9fd4c5950302047c435bb5006730650231008b3aff17b7ab9feea58433d530b6bddee5879dbf674c2a38da8abdf426a372ed5c3bba6cdf88e6638ac9a4e67d3e3a52023026b0b12f037729aac92f6a6092e704623a7676fb8190fbbdcde317e322380eb633888a01b5a3ed90f48785f82eae42ee0302047c435bb50066306402307659cfc662a94b4de5b416a1de679e35d9010703a2686e89cb765adc3e80496fc154f80915eff05f68d10e1b745a076a023050d01ea9a4f0250728092843e107283483a1c0ddb79252d833b53496d109c75b0de0a65d6e7c88b3b806a10e5ccfe26d0302047c435bb50067306502310098e4c5e18a770a69afd0070deb2e2edf1f553cd208c650316db303054423128bd38991fc259e4912c365677fd816875d02306939a968aa3c5ffe47a6af0712cd1060978813bd1b16dad740ca4a52b82867193dba19e6ba1b06fd7978a020309621b70302047c435bb500683066023100d84d76214f47a4a2c8fc9a97632977807b8486b5a6590ae3ac5416eb5a58d5b9796f91996df44097b32a736fcd773bdb023100e30084f182a0ad425f38f2a3cf2454ff5a103a7d51fca9a54f400a5af27da2e943a27c574e8bdc940e0a14e2ed4de4e70302047c435bb500683066023100fd80709b0d9e488bedabb097a8df5af562b6486337834902c834b5b2a92cfcdf37fe58e0c934eae0473f61c2e1dc987e02310093e6a7e7c6205a711add07aa09a0a4bfafe33361bb73da95374b0ba0d3f9f7b7008fa3204c7820956c4529e649f14b860302047c435bb500673065023100a88bf2813db69561a27c992dd72a9412c2c61d430afe744134a1a001f782e0e2441533781c5a36a2010602a9a436c1f902305a149ed99bde6d9a785ccafc3d18f50b326843148e4e250ed09c0f707ce64f6740f5a50237865eb622d9b0affe312e6c0302047c435bb5006730650230236a1475069cf5d978270b788b26bed19bce0bb93f2615799d11c3174ce52855044e96d8b805644fc3fe9e5729181a77023100c6edb56e36ac5fd9823de772655473947eb9591e4b8eec6c541527cb2074cd617073277f53d117514b5ea38e53db244d0302047c435bb500683066023100a75695a77a66d5bc2fde1d14a1108a513f2dc06448733e1380f491befc26e1d7974aa45c8b65bc7c4b52a8853b04ad69023100f82cbec7aae83eb97dfdd9656c390edf12d68deb5f9a627ca3b9cf44d817fc1c977d30f3e274f9919d93a6a2f633c6570302047c435bb500673065023033055c2d97eb6dd3af1be858621b609230376d8cad177f335558476fb2c0d329325e3059a772d7a5817964191fe8e337023100f494695e3b016e7040bacf2031fadf04fc240d31c551bc343eda472808deae29fa6531fcafdbf747971604ffeda6d1350302047c435bb500673065023100e022bdb84a647753feb078b60082869a45b2d2a4757707f3b454f5a5e803e43fb37daa6844afb50a2ab163537102bc66023041775aaecb3f115c277a76a1f51c0f7f4af992ea58659c6219026e1f6e376dca0d6e0222fd1e35631cc190980ea407010302047c435bb50067306502302bdde77965609e916039d9be0d43c8985f1c53f4ac79e1ec61a0e061b1aca780c8969cfdb1fc85093a3dd49f8ec8817e023100a201c1b9d5243c312522f4c4121e5e95f13aac3b61474f6a594d4e27a3177d9aa117403846ee896a2332c2ad0d54b4690302047c435bb500683066023100ab4c7f31660d3c34844a9fc688b0fcbcc067e543e955267f3330e7c291397b40b172122897eab67c1002196484a213cd02310089763488e3ff8a3e441f8507ad528b7397d01beff0eb0dd18e267eb949ac54583678771e20b99b8667884825b702cf450302047c435bb5006730650230258234b3f770fd3f139556d305df3c25787fbebbe558253ae406cc4250cbe2ca99a951dae0183507c2f169663838711c023100843490acae085ecd4a47fe63fb1ff810e556ca3e133537c1e7238b74a1dbefae4961556f77da32a09207ce1480c1b9e90302047c435bb50066306402305ee3a86559255bf344751725ae0bf87b13745def4b3d365de853ce26e2c72b7321ad5b7501e6c381dcd4bae8253a94ed023054aaa3b22c149cacf97d5375e2bd6c8cd42a453671647c7c6b8148bd66714560576dbab670b5c70b17858dcfea7da7070302047c435bb500663064023034b26045eece12aa08b2e35ae4a5e699ada0f05b932b5aba72678d9a7f2d59de07088211761d6e378121196f7a01c0ac02305afcc4583a0b7cddd646a346b8551ff744d8d5bfa74f21e2a0379909d2b8855a31350d6d91fce0ba4125d98f6f8bc43c0302047c435bb500673065023100809ddfa27ea0026345d162a67d8f6f40d37d0add1733892bbfc4a585444711a450edf3d5b6c1c6a5a6895e5a3492db9002305abafff5cb9df35501635eeeae3e074cfb783408c07c77f6eb91c60236f29c806fbb72dfed6d3e9f7bcb0188396c7dec0302047c435bb500683066023100facd9498179a7048562468bcee3f71ca881b66c6d548610cc4853fea878e14f3ad34557c20c9f71d0864dd50189dbace023100b38592b9c7881d7caee9d949970811582c46ff36dabbce768d94e84ab7c58fbbd24b96b2db9a0c018e9cad407fc672d50302047c435bb50066306402301b0b1f547847b91c422ea9d220717a5d22d8d81b87a4905b3394ba23bda6cfd5d56cc02634de3d065b960f48b8d6d95802301b45380b84a1dcbb4f309a66afe3f3807ab9e37c2dd902e42d3013a9038f6872606371157a0b8c6e630443768e1e8bc20302047c435bb500683066023100b8217bc9f0b366e8274a42f4e93040e042db1b6f92aa60e979c3e3d412a75cb9b3d164ebd655ed30e7fff708b3fc0abc0231009123a5412018a5adb15a13f57fb53c5dbfc64bc15749a797ef87dd9fe921a5585065b47a5ea1c1d94f81c047e6e890ff0302047c435bb50067306502310086f45305bed8be610da6d121f4d0f4e1b8cf046c1e88b55d788509058ca4f423ce4d7c917952af58ce4e363efa92866a0230346c2e3fb8bc2eb2bde91e2969bcafd25b8ebc9340a7862e9c486facc9be8bcd6b866963fb94ac16387f8900493fa03f0302047c435bb50066306402305c59f0e5f34d6883271b47eeab710a4ad611f030a029ec89dc0b6d45eec20d6f0885185236c0f5779b3c4a0ab5fa0aa902307b712a3837d86374651a7ae8b72f49ac044f96eb9a1e059c40382868018646890ebb4665ef21ef58c4fff7f61c92b9da0302047c435bb50066306402304687deea58d03af50c9cccc38330a8e3d49063a1f78b7754ee3e68526b1121b70fa9d50926881050c20961a0782f94e802303679e41a0d71d20786ab2d52441bbf05b3063197ba2c0b5235e076f94cfd584246ec33e34ffeb100e4152250445410c40302047c435bb500673065023047b6b8868043322ed1a29a0cc7a688b59e78685458b5f8dd5f2eac4631d4bce9c5210c81b3888fd0471baed97b49f407023100d1fa6ff1d90e07ce3635fdc57a1224c34a07fc7763c8445b48ced53d2cca8976c2eef283d0e824ab5cd4f157bb45d5a70302047c435bb500673065023100b61270e912317f5daada36dc6dbf1f2fb19ec894312c6e4c06e98fa1b756c291934bc6b3cf84fbb6695d642f592bd91a023040d6692dd8281b65a734453aad159b8ef335946e754c1703c496c87287711cae96d98ef83241f2db6cebe2faed715eb80302047c435bb5006630640230232f16533aedc460a1a0165581f83a9e18471152e15872fb055f6ced97f9b07fe632480a1ad2eb0f9d73464693d5126f02307a9f10f692f94a4a0e9b367a60d82a79fb3d8ce20269c26cacb77ac57e0506c6d7d5aef296665b7df6a09f16562a73b00302047c435bb500673065023045551afdc25689797a2be1b7b9d5e15bc22ad89722c891174f56188f9da2754bbe4892c6722dccd696db18363030becc023100871d61acf182e1aac5482c6786424a788d1e09d929e54b242fba1b59513b129e21397d0984896b8c69905288844d95f90302047c435bb500683066023100a37f0773ade107ec3a98b51422ac0c82db6f95784dd29a0c6cc7605cc9e858488d11de80dac038033d4222e6869610fc0231009bd5deade3e2f487d692b34bd76f77b065b95c2e71bc943b14b1ae44bb72395a92d12585038c2fd02991ca6174e5f9820302047c435bb500673065023100f869678b92d3119403386de4be9aca416b8dfbde5e66c2f6647d7e74c1bd3804b041788a6db63de239acca03d9702fdb02303f63f694ae4afea9aa59a1413337111ffdfca2ec32d3bd58046c03abb61518e185c78a0c9e7567e75aefd327fac4ead70302047c435bb5006830660231008ff9c83c57c8ff332a249ee8ffcfd1647de1418968ceb136dabced92cd073101c198c35aafb416c85085116f3654ea26023100a91f97023b005ddc7ec2c3260721b4a36b77c946c82630f01580b76f422092527d27d378cf492afa48c2b1dd7e92df9d0302047c435bb500673065023013c289dd2e3c2ba94cb18929c81a3f045a8256221d80efec9c7eb8391c500b18406e1f7c79b7879eb77c9a991462f9ee023100c08de9b4a644674422a62b0fd1d75364da17bfd460a1d69120e0aa2a36ee7abc2c14a4cafba4af6fd5a9854554bff82d0302047c435bb500683066023100fc527b25e6608be4516db3cb8cabb1ef8ded64d609e7f2b84206d155514153b1f2111afec208576ee5a00f7308f400c8023100ccaecf2be3c6b565c5a8a02dee349d63d70228b12ade0fbeeeb39ab9629c49b032685e2b5ca253fee870af7c71a543970302047c435bb500683066023100b7d967397da3f72c35d364a8db8180e201280e9b050be4fc7110aeda2ed9b4baaef29249fc6988421f524773a84bf056023100f8c13f7dda2d0115f3e0ff083e23e8c037cb83be8fd7e38c0c32d4b489f16acc2a3e687de39b2903a6ee1435f0c644b40302047c435bb500673065023100ad9370c1e1fa0546f851147c15126b32559118a116ab45e863f9e5639349500c6adeccbf8350f92994e37c4c0c29a189023031893efab31dcd47891717593832628f972749ff67755aff1ebf747b8dd4ff50ead25255bf468ec3486b5b9cf309cb490302047c435bb500683066023100a6b78acc790de39fceafed00e40d763c432b2efe6c83c6c2f877d2ee5600612be7de424e19391d97478595cb59e284cc023100ca862b5135882ab09f1175f434a1a091c03a9774fa147f74e45a5a7e607667adbc464701e19888cfcbeb141cbc6b0af20302047c435bb500683066023100eb6575ccb4e23e38d5302383637bb22e3881e7da47538a063bb9929672f5e30abd1d0e2cf42016aeca4ee0ea60c5d78d023100d2de090eb79f36431122d9c0913fd2cbe5144b9fafde76a33c9bae11ab864cfc035fa43ce1e619a300d252436358256d0302047c435bb500673065023037b01d1defb9a23c8769502d7f37a636ebb1f8b6dcd5b2035798e85a8083f4ea6b99a6ae7ba88f3f42d0d1b65f292e2702310088d84b5cd01f75f78009a6f8a4e7981f2b43597f3861e289fb1d7e596fd056bdb444faab5f16a414aee52a2d6be474760302047c435bb50067306502307b39d0fdd7047497cc86035a7ffff2e3259bd4681c9d4cc1d933a97e8ac4761b7e6db0df6e0e3cdede8103213ecc708c023100cb4924f340a4da7a2effe979fc76cf5f198e3bff571b80c665371073488ffb5275c98387a8c084333bc227ecefe132020302047c435bb5006730650231009dde507eca3e38bb616d152a3eb597591ba4a6e30fe2d1a3553fdb53926ed9f574ac6d0c56eefff5901b66decea7e43e02302213a07c05114969e1723c5a486c7392a8e2ab94eb500ee72b3e862819cdd9de2c8a0bf6a6f67013a4f6ec5bc626a5410302047c435bb500673065023057921e7ec25d415baf6ed86666eb6350dbca0839b54e2a41f027a108e300f1f43dc46ea7f9ca339ea6177e1997ee27de023100866bcadeeea5e839b3f3f8eba497ac796f6cf5512c9d6ce5af9a7bc3fa175e03d1c844d86281b7ede84185064eb987380302047c435bb50067306502305f44a6217f8fa98ef0fefe0a46279b8d09d7d6a6b8d4c5831f8b7fdec35015c307f5cfe35e2234902135884de610e175023100adb2ed4db5e9b20bca8b59f20a550005f3b2793164c3479da1f9649303d97b4c645ffec70b5279dfc3605bb0db094b450302047c435bb5006730650231008caa84ad4f1e5270265a47bf1bebbd2aecec0cf93292c11ccde25281e71ddff6c65bdb184c9be27af7743e1b6d23eece02304a110e7cc48b2c0d9ba242f44b5141ad8e90224c27a44370b44cb499ddd9baf3e03862116d9e52e523a963f8ac0f5a860302047c435bb50066306402304f7d85957abc394ea61022634e93d98f4c57fe32483656f1834e4db58f3e3fd2ec1e1d7a09e0f3773e5f50ba08db655f023006ed861b69316871f8943daecc8ca1f962e616a73d54e4f3ab122cd76a6b37388f0212b303d3f176cd146a648e5f61e10302047c435bb50066306402305e565b41722742566c43b953c63d22a409fd467baa6f7dd694530070a620be80d3c503fbe3ff58754cacdfecad1f8e08023011a23d974e26dd866c8d25ea491e52f401829b38aa705e5fa49908d3301abd7f5af3dee6b45720e18c17cc1ead3676780302047c435bb500673065023100c4bd1734fc34997727cb81a635cf58833d5da2f7f14ab080dcc269758815491094ae7dd34837a4c415600b280b8de9030230055ff405d8b8d9c3e0d662706882d108982c1b7d71ab179d2f12f3522e9917222ca22ac995e71dc4839a76e2ff94c0bd0302047c435bb5006630640230679e1e0bd48e3fbdd751e0826be3346156681766d4e632f743297f6a68f38988da454699f911135c49837500aa8980d302301a0ce8c6c0ee2450b1ab96f41f8518e8da72eb211f4664abf373d80c9601e07cdf925bf6d0ea4382779bd4a0220d418c0302047c435bb500683066023100d147f1f7f2bb85d40d0e64415db240577d3834004fc35a69169e1fccca4db277cc279a0d4de7dae66f674f84081882dc023100e1b57cbf8ae7b18f032f03ce05ccf684db97df48c4acd9a4f6aec329e5219122b1adf99cfda39ff446a0c2cf638223ce0302047c435bb500683066023100cebe37935a83be9db9a4db89fad5d93cae9339a7096b5b962e60e629ef3c7ccc11212f6fb0bb0289dd30146f52f21141023100bdcd4c38f36ad4d1f2cc27206889ab4ceff4c5d2afb7507f93643762e748b9691998c885645d4d7ffd68f79de1eda0af0302047c435bb500663064023014685497611b431fc7fe00da2a41b626b35200a3d19055e7c5b1c169436e7e70dd3ada03ba35d50ece5b4919db2999ba02305fdd46aba80cf0de5b737a8bb2fb85e424209c482ca34f0971078c559e86a2965140e2e94f918cec9a0bdec0f3409eff0302047c435bb5006730650230626729932f53f706828c180c2dc8ea0ce15268d8d285636ecfc0ca98abc95024d411b98c63a47a97b02f2b1c4e765a44023100837e827be1e4671ed4755e537df37a0143beae43b300bd3fbe11b1685c17ddcbbbca862c18ca8e6bfe01050e1341513c0302047c435bb5006830660231008119bf3c0363bbf947aee25de40a2e50ddfa22704fc89e406528d698595601a110fae1ecde09b1e4329871f6f4e394060231009351dc72c3262bd2e20f86e9714f1d513fcc5f956a665cc40d9e0db57146ea7e17c73367b8e9492f77bb7ac1fb37ec120302047c435bb50067306502306f9cfdf6fe6a48558f341be89a820186ddba0916966eaf5d4dc5a5948247055740741a7d1dcf90c0bbec725f08b14e4a02310082d7b4317c8f15f54c380ef8dddeb8e59e24eecfc21b18386f633e9ee3f81f4f733929c4aa8b63d02fabd86e4ec3c21a0302047c435bb500663064023026e2f30343cd431da781f60cad4923d59f9f03f3ea7ffaffedb250ae9ba1199bde5ba2fa4c99b2eb2b09ef89f22a82e3023076d61b1cadaf17aa6ec3d00fcb309ba1b0530fec25e0ae4329cce3b50fd2aea1796bb7b7e854e5afa5237b7fa37288930302047c435bb5006730650231009116558ecc2bc8d15c05e6c809f36e5d316beb5db372c4f86db18134e6471f68134af61aac5b5d357b9143d10669c86a02301e57301abc63b12be2cc411278ac5eaad2fbeafcfadc1ae56c18c0fe9b34031693cccf41f53d7c4989e09f97fd5f7dc60302047c435bb500683066023100f0fad74b7b947f722345ddf8847a95ab6c849e6aa1b9330493569c050a3701367e0819f197339bae5761e05f92ea882e023100de3ff87dcd21e6a5af50565a423d583bec7ce9825bfa21b91e056d4cfa813a52306b303aca29bd7a262bdb69dc3c7c740302047c435bb500673065023052f218d8fed1034ecbbadafe0ec9ea4d6ae4a0d200b04621a0f012a938bcfbf74ef3b3b86f4770e0462be91ab2b2727b0231009ec913b4964f3e42eb371a447558b5c16ac307ef7edfc0c2b5920e19c4e9e1354f0fd3c44b7e78f4a346231049ae625e0302047c435bb5006730650230091d73a297b54d7d9b22f554684b68ae924dd1f5e32b5bf4cd4fe93a2fb7e801b4575365cdac88bf484bc09629089b68023100d1882f06823d7553ae48c4c7f4bc6fbe68fdb30d44546e1ba02a886cfbb34bccf47fd527d4820c35068ad6b3412685bf0302047c435bb500683066023100f596da7a26b867d46e370f71056b8cee05a3451227e5b0c4ccaf3bf22c9749c72f13dc32f734e8e778450c25f0753528023100d8e40182d5deb22bf9fc08cd174757d32722b1584098bbc5f2c6991b96a28f34d21808ecc6c88df23d745de9eb9c108a0302047c435bb50067306502302104535ebdb97a3549b6529fbe341236c8411ce6a6a66afd3164a9b5bc90ae1214180263752c5b92f0afe0224fb8e2dc023100828e7eb89828b59af973aa34332948ca9113d395a70ebfd6d0eae3897a357466f41d653c7465965e273ead4dd0249f330302047c435bb50067306502306f270ef6f6daf0bce72f18272b5020ade40871df8b02d6f8d886ec5b2a0f9d0bc202a00ad2acfa4a6649ad5cbcd53821023100e925f258fa4c74de5f225aff82e6e2da9f0bbb6e7fe4060ad287dba67b5a3f079d3c36d92e727507ba7a96fa2c3f28c40302047c435bb500673065023100bfd922276a34f357ea65a084cf91e3454fa3e77df891be54ac8263a3665a64aac62fe16b7564a795f1525a38d5304af9023020707884d62299f18be9faa7fc42ad3d35bb92418946631c8419cb5920177eb94c84a5091167a29eca3e4e863912d0fe0302047c435bb50067306502310090a964a8979fb53a39f952d20f976c716092d71a9f5ef5c8448c012f98194f2ee7d6d714e2781fc1e979d5392fd0e44102303187e7a43565c01a0837df9c44bd056e08b0e50119a07de06810b726b256fcd53625d5b5b147b638484c5bfee3a89fbc0302047c435bb500673065023100d5bbd84ae1c357333f8930fc598cd9d55d6c1405f694e850313731a8ae864ea4be950d9da598d50ea1355b41d84d03630230014f53012152e2cdd978d9975bfc4a545db07a4a79565fdb85d4ce639df5e859675a635409a8b7058c971819cfd2a1e70302047c435bb500683066023100fcc11dabdc22aa590a4c3b7a5b36f137ede2af021325769ce08c6bd86ba7aaf2a1925ec82300f51deb527c7f9ef4a303023100b1f2af139efb05a187e401110ab87000bd49da10b9fe3501a8c986659215e7cea037e8b2c7ff24e2d34c348a636452710302047c435bb50066306402307183ab571e54f7149e168ac6e94cddc52793e979cf4569b3670bf112a29fcd540e70ee67137dcb3bbbe81cc44e05d905023026f5a740eec3b16c06628fc5bf2c7285f239136013457cbb614ed3e46d7ae1fbe548c2943f965880f81510a5620c88af0302047c435bb50066306402303c0adfe5dd43df259876349584b8359a690bb2c9fed901bf74d5faa05bbeeb1016bf1f032102a9b46c6adda0052eb00c023027231d0465e87e6793150bd352134f0fe8f6e0caa857486d377a28bd6f7f24cff9e51cf811ed80a5b5bf1ea9bca9698b0302047c435bb50068306602310093f7e304d673c80057c0bb11cbfa29f176855ca3c9ef35c120e9f1ea239899aa2daa313ce332eef05786bb16f64f809e023100b3c341e654cd13c0711d9e430984b3899973faa09d348706c0e8928ad6f99835aafe09e5eb29de287ce494e66de8fbab0302047c435bb50067306502303ca6bce52195bccba35c061a8b99948d9952314a95598f11864322dc160af09da20d3d82d541897648566fdc7a66062b02310095944f66206ad0860e606fe90b89acd412d6cd7a672846c01a971bf8fc2c4e09c255f8f948df7d41f16d07d508086f410302047c435bb50066306402306822003ae9ffff8896c0acf8b2a760a80165a29d35ab3e3a24269c856652979a3d0787ebc9645f2b6445dc1b9e576245023038566f086c0ea740d96ececf0f72e52817700f732266cfe45cfd1099c128b348a4fd9c984bfbedfb346d8c7727fb37040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100caaabcee9fa274639c854c9d9e05702d521d021ab2a94efc61cf3ecce8df124baf32a65234bdb4bdf41fa066985436f7023013518411f75e75922028ea6f8cf21899355f5094b3828d385d10c22be99f958da3f8aa496d8970073e58c443555603050302047c435bb500683066023100b34a75b3d4acbf020b1f1e88b4c557288d11843eb5e4d518d2923cc234ae695af4d9fb85a66650d34abb6d95e46dd971023100d214b77a4a2722efc277de01207dc0ca8f61773be1511f4dd594dc075370b3710903f8f83008009d2f71cafa54cd3d5b0302047c435bb500683066023100c481838b1594eef0f1de61cba4dbae73b17a6cc71de7bc437c993e09cd574df5ac292c7b1d276fc28fc5c97e322cface023100a04b6364168f5b54a869f931df95bff5125e9eac17db28f56e0f58d639c9038df671a00a33b8836fefb05add017a3a1d0302047c435bb500673065023015bf1f8243de7d0c9941b99d269217bcd3218fdf4c03ee59150ae9cc75eb603f3d240d54ab6c2cb3e348394fe8198cca023100ae43769d67836a6647dc68e94c7a9258ea2ab8ff20453997d29b299629484d7077dd605f2c39ac8de7fd20a144b073320302047c435bb500663064023039b3d1b27da49f3569f6194db683a21255d46f9d5b6e265aabed7b30c136aac27bc2aadfc4e3fe737da9581c89ccb37a0230172b6249f4634d9f7e3cfebde735a4d5c51577ad4fb9571b6f4f40f124241feccef905fd7206d81d5da28418f95f4da00302047c435bb500663064023027be9a755135c351bb85b420442c0ac6a15e61481454dd28c86a912115dedc84908d358fb292d4b7bfe4ca934111fb750230595a75f4f13419316b49073c2ce07cc7b74bc2297cd4f1eaab585667946999d4ab02dfc1ee42691ea0e99e61d6acbde20302047c435bb500673065023100ca0c768db075ff11f84f5ae3cd445f16e97d826bca491f778b185f5190c751cb038841ee499ab98c7763b32a7496fedb02300f943d7d6d8cad9cd1cf71ecb358ca0914711370011faafb36ffea7bb39595d078855d5bed9840c853cae7577887327d0302047c435bb50067306502303e5c6ce099e40fe99d7dd96252e2dfda6a1290f89a14ca88ee481a6e15dcf3d324d473cead09db4d2b80fc2d439880d9023100c582e0e704641c662cc32230c6ef5f63f56492d9f3f2b5cdadef96616d9e37b10a5be36a76b49ab742381e9aca4299a90302047c435bb50067306502307089f7cdc88d83f02636d13a63407a28e5d1320b12c842700ac4ba8d6df40eae0cfefa1eba0e74f96d55bb62d2f13cb3023100a1aee21baf64bdb00910a6af809134fd406dc2c07338d111dd8d99e6d4bd2b705bf68fe1221e81fc2f78a2b0123fbcec0302047c435bb50067306502301e95b7bdf604b311a8b931498c6aaf81fca41defbd1bde7de482a666afadbaa5058aec41220048208de4cd12cbda4dc8023100ce164c303506d27dc3cfe412d9ccf2f7c9b976c7279c827de70936083fc89a85534ad684dbdf02322328bb01b31ff62b0302047c435bb500683066023100c56c3fc14a2eef9c5e3486749fa4bb6a2fd61bf9f7c79a408ea7bf9c854964f3a8a4435c4682d0473e5150f7c6830475023100e8a07ad4f9aea51c4fd855a34afb3d5c52abd584439b8a9fc3a5fef5b173b9383d4a8e4a984e58bc7534b73805b9b1fe0302047c435bb5006730650230136f5658b246d57bc18dcd0ea18ec3a384d534007d74807e3698a5c5c011b2c1e88f054ec0eec4aad60c101cd93cc1cf023100c939c13e07f9cad7e28e5084733fce3300caa6cbdb868bafcc677342c2f613f78df613b8aeb6eeb66c49e7e83addef180302047c435bb500663064023006b2aeb13d425fabaf874e226d9d99922f5d74b82824afc7f9c7c20172afab46ec8495b33235aea32f9f0d0bb2ba76f502303eddcb559684294cb8624a58b57fdd4997ec1b6473b39ee3036b534c95185046397534d3467b7ad0728c655ca92c503d0302047c435bb50066306402306d9083ab372b1f71f4a1ca7ea934b59525bd529bde91f2028932bda820732de79ae22099cdcefd96bf5575b11ecf232102302aa7ba8d8fb4bcff9c5a22583f52c885fa23e6286f94b4427bf0558bb7d9be34e8b35f3356c4f26a04eea86eb33967770302047c435bb500683066023100b01b0ef9d28e04cdbc2bfdc166e0a0f9e60ed76997a6ee6e6684f63683aa5ace3d6daaf1e1ea1c05fda7ada23b6371cd023100d66f656fe686ac426507a1f358d57d243f7b1ffff539b5c0b752915aabc3b0b339097df6d4e5c8bc9b4d08376d4e256a0302047c435bb50067306502306053fa58c8519b78b9ba30d87279b943b5440d20fcb175b15d4167a8bd0a733a3476f92e3ca6b2a1129d3eeadc2924b2023100a662cebd399f2e696c5ce6102e9c8425a7d085f365a85ba118aff6a94c162f02ccb13a78745db45d7dc0c55554a59c6d0302047c435bb50066306402305774f7305714d6691685c0d2447e11d0bd9e5ed17d904b1a19829f26004660266e31831e177522e0e38a443669e4c4e502303b1d2b6cdb226ce677f67bcb93dd68480147e236140192118afda642792beb64a46378ae257ac7f2defbbb81221db4150302047c435bb500673065023100c2ac571ac6fe53e27fdef87f47e0c9dddd0b5f3afaa6a16b6462ed2e47860ec912b7021347cb068cf0a48476f43b5676023065195683b1f969e12303200b270ab7f00af9d8865ec3ec3039b28a2b46d38aacbdb3ba0ff6ccf0b58178799788d5fd350302047c435bb500673065023034a66ee3c2614e9b36b91f4969de423523d15c143d611101605c558b943737ab7da4040c57c057c38210d1406c076049023100b1b713fea44494841acda48ca7060dc94831474bf8047a23820921a769103b2cbd79d9e8ff0f8ba92401768deac689e60302047c435bb5006630640230705319c0de6b5d13edf9e0275222bbf38477236b0f08ee6a9b60c221d2c6bf58351f75292d5a3f049c2b5a849da74f5f023071f71d2fd22c0b3a6dff698462c78ec15d970f910135eabc85511b476a635018e8b1167a4f771dc7a009564e1f8c5c380302047c435bb5006730650230666b712178a19eef05aeb77bffbaf7631acce04a12ed4064d0f0481572649ce1800c60c16238595fd824cf6213b2072f023100b99549d984adbfc19351e537bb8aa789483612d09ae94e09cfc08c331fb1099c2c1221799e57e05087ba5ecaa9b043c90302047c435bb50067306502302d1438f4f46a6211892569b2c360b39e743dfec91bd377f792fbd16bd6f8079296d7bec0327e6ad99868aa523ea618c6023100a13d133dfc26e9cb65ed7944c9d0b25a45e93138c8c07f15f4b5b3216c5d2c8ac77c2932213e93d4546a76453196bf1f0302047c435bb50067306502300751390ab8a8ce5613b2682400f3303fbe9367ed65e18f5ffce40b9db8994da96705eaafdda650d3124945b50b9749f4023100af7905c407301c9531358b0de7a1a5d4773f5b168668f5892c1fe16b3a4e6de25e0278b97cbfcf4d161cdbf1f60abc700302047c435bb50067306502301216d2c181b41f5dc3dc23d838d46a1a34f510a0545cfc74ee90e90b516bba8d3228d19afdad1f74254a5142b71aab50023100e019884eec18d26923a72ed5f1c1dd3502514ec7a4ac103f91ec18f11b7e3e7f09387c9e70e8309aa93d9a58f63701660302047c435bb500683066023100c4be5c5b32c9dd8357f90b7ec66ef3095ad32b2b6ce72b1187a2b88eebee97548f54cfb3842b8b01486bc30d0c2fce8b023100c8e1317959d648b8201ef921b9c8f6203316afb99dfee046b08adc9bbb57aedf0e645d807c9af93a349be9c6861893ce0302047c435bb50067306502305defb30dd3e25485bc9705587f1152891145f11cf7b6397ee174ce7e8d9a288cf177b1a3258a139f9e840be2fd091c47023100d3798db076d46485981b893c44e8648a4a6209d5cd5a1189537f507ec25f2d272d366988eaa5d21223919c69191cb8ee0302047c435bb500673065023100a2e1d04662f05e44152675d64c8d88feb9ad7a91e67ffab2f0bd54c508a76a1ba822eccf51e365295f6cbbe59d1164ac0230130553b370a3a344dd10f22c84e46e4ccdfee1aea48b398fda398ddc13eb92641b50c2494575cafde2a63bcbca3526a60302047c435bb500683066023100db3f0b048bf5067e35e361ac6c920a2c44dadcd49ccbffda0c44138ceb03ae8c5e6e1d889eaecc689d0d31936e0c120a023100cd8e397b4d187b3fb79354d4cc3f9cfe09f33dec702ab2e96b434693474e9b5adacc6d5045959387286e991280bde8e60302047c435bb500663064023054eb8e34fdb19afbcc45380dd2ce43ce50bd9918511a7d52c9dea9c05fdfd539fcaab10b1f655bd14ee172fd1c40c850023031ba1ba260590dd36bf47d3c8092667657f57bb2036e51d654c421eca086c811f060a346c0442b22ea7864369e81aab50302047c435bb50067306502307421dee05826351dff08bfb3e731206c6934706783be5626edd7255db7dafa04f759b7586c69b40d3708bf6571f0e81002310098f9757fe2c23decdb5df147e3cafef1c29901115d45ca506f43274b87524121c9fef02a3a33ccc7cd034efe055efa560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230775f9c3a701d2bc4920a46a345125ef6216582fa009806d5351a4ef6112f842ad384848ea5bed581a167c439c882cfc302306e15720aaa0c1b35c631e7a22e558a8af91ded7ed7f7c9a2a1eb9c3f96bf43c10281a1722bb7319fab5417775fe648600302047c435bb50068306602310080df39567bfba55a187a2719397e7cd4aaf90e4d73365d5f460171dc5c069d3bbef26efe06445a5e76971f38495668e60231008587bc02a403006f08fe0d8a7c2bbcf6ada9995c63594f2c3e431fce69922f7b600ed2de61ad0fc59de91d4179dae3760302047c435bb500683066023100fccc69fe0ba6f04b9abfa070f8eb6fcd988fbf24b8b62403a1aa1937d9edb5f23aa047c5c793e406decd27951e22dd33023100a98e3ea631aa6185385bc77410c40de74ece12bf38aa79cb782d7847273f9d7cb2869d116168deb5e8938e57d10e2ed00302047c435bb50067306502304bd5063e0777431586b63dde781e61d63e76cad593e7d2042eb8b0505d839a4226cf508e7f8492e8cce0c7022095254d02310084126a7bccb6de4084b687ee6d63966c41256bd65ae05f3f39155d7a3fae57670d92dbea453cc5973e44c13cc0565f150302047c435bb500663064023072dbae87ca67e7bd8aa98767811e26aa9bee72063a6ffb9012a3f8aff7b57a698713b085483ac9c867ed92da00350b61023016c3541ef8f70379b7fbcaba307f658e4bd00ee01728d836bbc1326cca85892431fd9ecd6dc95ce9ecaa174e483e83d20302047c435bb500673065023100b7e770eaaec42220a17eb9fbf5b8a6a45242afb81f68bde5e2dbcdfc5a1a70b20ea7067f15a4d3200a47c6e6112cc3520230204d43770b0aba2b891e1008e04c0293fe7d5c127e2beffed8b31fbf4c261d2bfecbe003628718f4e6b67c439421a60e0302047c435bb50067306502306a0b0c8c9611550c7eeb09c7b6357012689c9fb652f0d890ad70465c44695ee632a8597660b479ef784bb8a49be02001023100a91932240de9f3eabeef34c4ca4998d2430e76e8e6a654035d1e348ed593353754160ac1ba9f1cbe4ceba584ef749cfb0302047c435bb5006630640230426b73bc43e41262cbd6a324225df4dd6472a0a9583b331b6bd45582b476b463beb6cf1ed3e8801e063804f529d6e77a02307379f00e29295049f32f37415ea36dfb8df3b69a5dea62dde349155b44e92cccca0acd3808c833131d7a54f468272f0c0302047c435bb50066306402302e4b0ac0116f05cc725d15f1d93c60c84971ab21c05ffd07ac940717d6eebc1181e0205098b89bdd7fb79677199c09eb02300b71f26dab25b921281348cf3f20dc9b2601887cc86e274cd1d771112bbcd894311818d95132b062d7a9550bd63effc00302047c435bb500663064023001710c7800d1ffcb43004e3ec55d28f5183ae95fc0316901f2d939aec71cd2f98a6b411b85e4fc706f966ae71e22728f023007d8bd3417ff1d593aa11eee16feab7c20313293d03e6f9a636af68e41838a6aaeec4ece87e78b8f0658a42f62c93e2f0302047c435bb500673065023075f1d8703c5a344aa938d72992c26fcfddf16402fb483b7bc0c21cc6cf4b14356198dda1b49368097c68a6587dd62afa023100b77553afa1644be66b4e03a650474fc60290ad816974f5ec1f6ebfddcb4742c54ddad8d4bc1e9ab76cf4dc9a8bb63b1d0302047c435bb5006730650230122027b72c412baa1eb212e052afb13f260207e2ed9ae14083c5652d3094e688e4e4f793f00355f0ac02a50a71858be1023100b1cbdcb7ae61ed8be524cbc9cb09f96f0b0e522c2e561e1afb45109a1b612f40b4dab42a22178a8ab3c3c2aabe41c38d0302047c435bb500673065023100fd257844564a9e20c2cb6daa4f3de0098a76458014f9e80436f9a4012b42878f053dc5203a8731db8338b45dcca9c5b40230244715a048282b2c1fb5594a74dfe77b5f89840953cf873bada4ceacb55a2470d0731f2053ffd213e9329ee4303517bb0302047c435bb500673065023100d83953b925219f461c43f8492ca3b1e7bbc7243ce420e3e65813981331a1d8a88ade4fd41f8c993089ac062ffda1fb8b02301abe9774abeed444b94198380d08fe50dcd5089e205a7e1291ccc879910ac1b9e6f434b7e5f621a3c3bd50dac8f5c6bc0302047c435bb500673065023100f1557368622ddc7cee2f19b6d8704f52b610d7276f1342fd6c903c3558b975d193e321dacbb5563561e34de1ef94345e02304cd5773e946125d2b4c9e3cce6cc9a6bdaffd9c97c7f2233b64c59eb05b8646f9aad40d33164d0f9eb2864ce80d24de20302047c435bb50067306502306b0dbc6a85dc43eb9c8047a0536e8792194f14d1ecd1bb425c12dd0485926cfd539d15d8d002273e560bf06e0e277171023100b05d30911a3bbb0ee43c71ac430ad328b61c269d5b932ea9a8e0974dfa4f96bb426940937e065e88ebfe6fd8969a00da0302047c435bb500673065023057944e7e3184b59628d890090dc229ef592c15d0e335090d6cf76e6cee4cd4cadf8fe498ac38c8b57737287508a3ab080231008cf908a5e565dda93554e7cde312ee1a3475818f33703d339e5ac06d123bc912669b10bf1904230c017ccc2bba2fcc1f0302047c435bb500673065023032eb8e079f345bd93ef6355c1e861618680020fb18eb27d238984a1b8f53b22a10e952aa01ce1b75a3e217d23a448eaf023100ce150bdf97f4af1b733203f7c2c55b8eab8377f79e428dd3d30ac2ab514ce909c4bcaa3e1f7dd8ecdb06ebb1bd323e250302047c435bb500673065023100dacfc8aeec5cdb19f4673b2142d9282e0c1d6ce671a7df71b44a32d0613ca07d8458fb68257f519cd8a0453b1e220ffc0230247dd89b425cf1059508a0faf05fe2a4a69b019574dae6d338ec4f44fe43a98b72b93871012118e292205672a405f9f50302047c435bb500673065023043703db770acacf344b1fb7db4588819ae4bf36d9e5f8d575cba6937f52ef13d809ee5f1ba3a198d22a79acf348c621f023100de715ca352d03551048bbaf89139f1e49c1076cf6452ac1086a44e5b44a8e0499fa46dcfd7b94f90939e648a8b8459300302047c435bb50066306402307d863f7a578d8792fc9f1d62fe918d6e8a4222d1ec967c983d04b6fc0682bd81f4bfba50e86c88e49fdb5317ed9d69a30230473e7b9b3973be8b9c0908b60761844bab1eb5d7060074977eb1f839b84f6ca8eb14cef9f124cc8d8f694d6d42dba9c70302047c435bb5006630640230555f31197aa28e2742489e274ff787422c1e76342d2323fb50134b87990f247cee4feb0495b93f1987c2b3ef173a398f023056fd9c5775df652597f6c6ec68ff1300db952de823c1534c02a5a64c8bd42904247fc574c971039cd2fcdfe19e46e8030302047c435bb5006730650231008560fb874623b9f830b6f437ff26cf8506e6601fc7569af2a60159044072a519988b804618d8db9d069988de9b2ecbc40230790d3e0f059ddb0f4ef0a8d822bacc1d2e2ada4c0dfc85f9abf28c73bb3a92bad0ed137741320d1096a31fb6b04fcbc20302047c435bb50067306502303e8bf0c8df7e87baa6e87b596fc39172f07617381017a3cbab23d8cc004b3097b7b8b77257ad8ba06f1bec3a8717f8bd0231009ff6a0cb2164f9b896c92cb5bef6fdf81fce71d1c39721898cd9e2e6ba839da90c4aa578a936f598f6e64edc0416db640302047c435bb500663064023001dec9e1d7cdf643d2c91cc952c9c0869de3709e0f62f2f417f1b4b59c9b84f4dc625d162a543eb6e6df12984ba0e97202306d9e66e822d6322f015fee6576d3ad656b64be242f2a37265ef23be29aa8f3030c514f21315423e1ab4b2648bdffaf8a0302047c435bb500683066023100997b697ccac1cfe41b898114bb0328c5091a93139d38002b9a4a9a66782225f42a9225def6678efead33565109e273d5023100a3e69422d503c0627cdd8c48d59e4529de981a0257affd7a5f71cb48910df7bb59ea0612241395b9b312f335fadfadfa0302047c435bb5006730650231008e192acec6181e6b41fff0afc497ff6fb87ad7a4a8b4a799f8657c4b78e68f2e273dd9b57f0646eb2a18c214e292e5fa0230784bd523e98a87e7f517525f7282219c5967b0ec12f334a042769132e320eaa9eb88efe0e003dca5fdcfe4d54d2215910302047c435bb50066306402304f8e3d77b4c170103481f32eed8b41a9530a097e1bf52bfdc1d9727ffc67ba0b80a6c4ce4b96b2c12b9b335572cb316702304ecce5ff2c205b3ad3110fd6ca055d3af846b4463b4b230779bd51201c2e6949678f9a40ab04a1fb8a84a225589aaa3e0302047c435bb500663064023015b4a4c2a5bb00be70952ab8fb3eb119b5587ae8a9452838a70a937c83fcca0842edc0c0eb3ce002ee2947c0572cfd04023014aa5c2fe7e9bc125dd75b03abe19a61df36028eee344d6ddc6529f08a0903ee05f9c93f3492fe7df8146b04485c68390302047c435bb50066306402304e60ebebcfa76c1a3da953c1f5e3829bc036a892e3aecabd8995d3793cf9cc74553760f4f554a34a366b13393ee56e0f023023eca2561bfd756fc1eabde0109f9cf49c7783d03e238ef8fc6ff9c8b76884263cfedfd1fe4641c6e20e60b1a04fcfbd0302047c435bb50067306502305f5ce47f2b5a0860f72855e6e272eb2ef3562ba00978a714003b5d04b17f63fff3b2d1902cdc9972dba3acc45e2df89b023100ff27468bbb05fc94908c57924a49044e307d3deb7bdaa10db670339a0a171610a3ca3addbeaa972b033a1e6dfd7bd6940302047c435bb500673065023100e7ef427f41845a6abc2760d3e689ee27aa7856f0979a5abf5c0d8f14d784c0a8992793c5aca52cefb347e3d9a557d3f40230357ccfe580f9dde0a3bb34d7d2cf35c182937c9aefc7d23afa9e0b026d7b18e544cf587afbce166f2a288c729769c37b0302047c435bb50066306402307d7effbcbf0ce84ca5618d6f917043357eb9052e0620abbf17959207548a0ac63398be6068130e24176f4fd7918e02700230648502ff45e99346948f708c61936830c29a57f844ba31289c846f19d9b1a3abbcc0d803126efb974360049a6c7904370302047c435bb5006830660231009edc6b6e73742586aa967868d20827c09cd8c08ce0903055d023fe6a5af3ed1547ebd07d6d89faa2c66962f31b014e63023100c4bc9787d90296c82200a5f70b919fb9ff2ed260d36a3801d9a346391c1a1fac371947716b3a13f8f713b199ef5e06100302047c435bb500683066023100e52a62fb06a846df7082515c734b2569cf559ab5d1510d90f15dbe5f31ba502fc2b8a193a7d36f3abcb4f78f338633d6023100c24642b9506ab9e706262589a2544303286f2cc79e0d30c3503de004f93cf848c205e96983f1a2e3f0c661ebac594b5d0302047c435bb500663064023073dcd93485089c771f159b6b3b15269e1ab1e7d65b229749cf474ae1f772972967762df1f7ec851dc9193e87cfb4535d023062069873cf64bde2778fed82995e4228ddf7c0edcf598f4f374fc4475172ee1bdff7fc2907422b07cb6c3ad08140cb9c0302047c435bb5006730650230361cfbec3b6ec4b93ff17d6276dba8c6c20470669500558e1eb2189cc533fb2439951a73affcbf70cd5aac09c43bf53e023100be19b57b785510eff320a42008389d447e0d1d124e7a1ee14b0a815c95a2afda21b60c9daa6ff4c8fb654e8551af6c4e0302047c435bb500683066023100958a1f8f8723b4401c7b5133764158af08a8d2dfa3ceb3871701bbf65a77d8dd1c2de94d27b61619e712eb1cdd413d88023100820d26fd651b87d92de2740b687e6019ccc3e765a1a43c4cea025d321e69b6232ff6eec21a4d20430d7c53d0e2f560290302047c435bb500673065023100f78973f62fad697ec126b9c0bf99654430d0443322178436e49eb0f70d2efa83d1edce7c7d0af578df1c7ac45c2a4bfd023020102a5ed45c2e5d7197778cd8ba71335fd895959120a0d654451c10cadfc4eb56ecbcffd5e793197a16fd1bd487e10e0302047c435bb500663064023004c4cefb3359df08040f97cbdddaadfa127bc2af30f6855c1b58ac591eb9133d54df9b3ae749deba173208cab023315302306274b6d8d1c8f22794a252502a65420f08f8a6e7d7da1d6f9632c18e428c4e0dae67e2c6974f9fd7c5f7a36faa34c1cc0302047c435bb500673065023100e1fdcb7a9baec418ed9c67123a3e90dfa498603c0a6e762411e1725cbcb8a2b1198a5b4680d90d1c5c570f3c396a95250230315c24c7b446291e0b985c4a1fa4f1250ccc60927469bdcf18ce98ce0a721a48f80ac7624ae6b24bba82fbf60dae76790302047c435bb50066306402307aaceb43e298c2dae7e710159d1c88c76eb0d93d0c64fdb49a690271f02bae999f0b917dce98fb60b2b7b2323b73b14e0230141431ef06e6cf416669071204d88ce4a8fa7dcb3ba20efa2ea0718b13a24b9e615415d70bbaa9c7d3b99c19678baa580302047c435bb50067306502307ee1bcffd1823a8cf6e0cc43d93d28fa2101e71612970c9d88a63a27603c78d45b6430ef7964bc01cad04420ae24569c023100c37089f71f9459363a6942024ff89a3fa5a2a1105e40a0ee4247b66f388c694d221e4ce03ca2e1066498982992bcbb490302047c435bb500683066023100de1229bfa22d2ab2c68620907290046c72ac6034dc0f4e577c685c5d59d8c949b2915dc8d3f401e991bdbce8b20d1ec4023100d718c666c22bb125a1c85862d0f2571308cc5bcd1d93fbeb7132cba84ec1f79fcdc4269cf20783b9d2b729f8fd506d360302047c435bb500683066023100c84f497db5b76d740509394400560277211254861fbea4c669a98e3f0d033712c0c352c74564f77599e37ae6981f68fe023100ace43a2a3fbf9a94ed0e6ae7ae321f0d29dfdfd0bd1c349c9d236c491930bac35e1bb23715debe944f903f481d3d87080302047c435bb500663064023014a40b90e3d98b1624ee1ec7570663bbde25398d5fc86707bf08e2d66844836ff5b5ad955f1af58e3d96e0481d1885ff023049f56ed75dc817806576fe7ffca64aa1f419a1e059ca100f9f8f179aaa0e869fce0ec0b941df6a255e2b1b5a603ffd4b0302047c435bb50067306502305fe4ad375c72aeedc9397c7920f991be746ecd2645a1ffe28924c06d0d247967939df75376a97de23836926ffc55084c023100bffc3b135edf79e7beab601afea3a7fff2a530180678b6871b724ccddc358a8f7c5751b50f01678020f4ab9d3fd5f7420302047c435bb500673065023034dba762c7ce738f36ab64a9a49c4493895587122e0111c06d50f90f4f94172179e6c011ed103cd374f1882e7c0410d2023100b1ee3d3d5e351b217875ac1b5118e6ecbd01599d4c636a713a5c0fb1e8fbda5abc8a807a323c308f15e208f24c4ded0a0302047c435bb500673065023064fe40521b65e35d9ff377a0076b4fd6fb318636487a86005380c2891516263016df7096ff50e8099cd485207e238d98023100a901fb38f2a900965d071aef2ae319f58bfe90a59bf7d3dfd590e4386c6ac41b2cba0a201fb807c5fa8799c2ef07be870302047c435bb500663064023002ab5f29a0540bf3567ccf70a66c830129037f8645609c593f0e034031acb6115fe89fd5bbf33419f5ceb1e9cf440b2b02305c0d1914b91e9f469e79ddcd7dca162e5fe6a3edcdc43a8ce7985c9d6818a5ec5c3d5dd64d3f213c46b84df8b049cd960302047c435bb500673065023100aa27c573a0aec247973172e680f1bf9a321b8e7a75d4c4549d9a8d5fa6e225589d744ab1ed024357e90947a3ade132cb02307e3c06929dbbcd125bd64df6453fdb5ba28a6fadd354427866b82e1ee33b9799a4852526487f83ed65ba21055ca9bc5c0302047c435bb500673065023100b86b4fce0843049a2197ccfcc9afd6c30c280388a4ef8842833c36747fcdf9c209844ecde07c2828b4aa3215e9f8233102301ca60caaebf858cd6dc80c637f719365af9b7554e258a6264d8ad38e6c1560c170b3557c52cb0845f57dfa37919a35720302047c435bb500673065023100bb6f24dbe86a45ee2cac434c4d495022f4d5cb6c99acd72dc7606e16a9506917d523e7ef89ad487c9ac837960a54466702303d1ad870cf109f3a0e3e20e1f9a53b3e9f63bd3986489b48a39bfb865b3387c4943e1db4ad04a94d43ea35aa36c5e5b50302047c435bb500683066023100b930d3513aa1a8c01dcdba354bec55325e73c61234256e1969d0ab3323cfbc87d0962892f643b218128535f6fd09f4ba023100d53df9f3ba68670b0d40af014f6797271ddeace69ba58564ee136afb1ed59d72d25d51e3dc48273a86652e3bd83e5be50302047c435bb500673065023100d9a87761d2088f656856e546fd15ae7a6b5460c0f2688b7022f4b6d4ed336e22785eb926bd6de01783af98d224ce5a7902306223235b73f88c88c8860c09b54aeefc840343cccbef967f1671a3bd6fd9084b6ce2e29e136b8b7359ef7b85aa7e97310302047c435bb50067306502303fe74cde6421b35b904bd1bf0d43888760649f92c20d9e12ec4ec8a8634067512558a4f1989eeefdb9cf9192283fb9910231008775e8d9ae9cde1235e158a94a6d29281378ebaa187096421332da4ddc7ea4026ad675a3785f56ba40ea7e84333dfefd0302047c435bb50066306402302c40f738358a2fd2b135a3c22aa8abdc6d8545ee6fd862400feb82ed242caa60814dab1c215ee332dd10fd31faf228e402307980227f1d38d98dea8b23042a7d4ea18d32ac2052e72db7e505748396b69321d74ec7d1be60d4b72a56daeae58cf2e70302047c435bb5006630640230624af6d1aaea43874b5dc4b7ca5312021cfd77c97ebb5f63a78a3899b4651c56095f2af511d1e740b683414ab7b8ea9c02300906a45244049d56aeaa78fdc16dc0c5b37186c55dc26bb24badb45c4adde44162e0ae55c2aa209c4a4abd716f8a74b10302047c435bb500673065023100f3fcae60383948f6ee170d2e713ebbc495acef6821efc354309da442391d782206539bd6c744d9673c2d56e2dbdbd268023016bc818acfef1031463cd5f0d27a962ec74a300a158e3667b03deddc3b2f6b64f0ba54843ac519ed0f8c9a59723d60560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cbd14fe05000be5e511cdfe6afd441a3d39ec8f3d472351d20094ca36b395b04c6c3e5141fcfd134279ff38ab40cb69d023100fb1f0d2513fc99b661a881b3ea06add4cb650ebb1b45a8fecbe0f66e6d723c6fd07b91d66cb3181795a6f189cd3e84560302047c435bb50067306502303e2c25db09974d3966d1887515ceb52789cd51ade38b2b5f62cd524f0c0f3e70b1ac4557dd07bc60b90be7e45436d2a1023100ae7e7208ccf0d0bc4454e490e46b2b73d6bcd41891e81668c6ed1b508033ed8e08d80ee0c7f18d2f32755d88483d2dae0302047c435bb500683066023100a547de4f3d00180dcdfdd4c53e93f2f869f1a6f431702150cb9792123dca20cdd7a0ca901d9184e89f73e47c336989e9023100d7986d9b3c192dc09fc3a5639bd41bbb062ecfc5fd14df34ca37685cf51f55892735746faa07a5b5f436f928720b819d0302047c435bb50066306402305c1cbfbe05398921ab87333a64503df18c034a187d111efc29fabb1a6581aa1ee39ee10c1fd0b48e33ef338a6f9fe0d002304d1679994895455f5cf5a3612db21a8cd296aeaafa9c3ce5ba34dfabb9146b9acadfc74c8b4ed6c2b909da73fdbc52fe0302047c435bb50067306502307bd9fbd88e09a007bc8e9db34d8401b486ae1a889b9c75990988a7db7c5ca73c8ed719529f35d20e463a09fddd0621c4023100bc843fe9600bd35bc5f029140a04e6da0a6d9f6d79eb0e6632ba93498b4a2f66d9da9fe6224f6d3dc5e0a0caa4e77d480302047c435bb50067306502300bccd50e60f7eee9ae2332837da3122b717bce08bd370d73446e88c402cf6e90ec2e1381894dc75475f19cc9c3fd1b9a023100bda6b09d6f966af29c9036975535b982e2b293a5b6502fe178fa37b064947f297b78b89cdabe71e6eb359631e2bcb9d40302047c435bb50067306502305ace5edf46d352afd75dc42c6938fe19ad863a823c1ce5fc477c6fcbadfde32a129be25217a43ff3a9bc221fde7c9ff5023100981d7312482130e22829bd715f1e7d8fbe4dd6423f7a2172c1e7e5b85531434e447765813ea6e92ee9fdadc05f9d33410302047c435bb5006730650231008c055c0a60ca69e3185ebbeb9530aec02ae3d9158972061dacc702be25e3bbc676cf0056a84ac552fb810866fdae7140023072aae15ee11c85ef4fc42a0d799bd276f78b25d1eb42b1be195b79b7063c6e231c8a6d53efe387d488763d3e82f795280302047c435bb50067306502304f54c87213bac89353484be12fb892e39474cdb511b839a0aa00730921817f846bc8cb2b7f6daec1e224a2576203e5bd023100f7c82a0099d1e30f3b7b2ae483101a9e83fe445a276d8ee756a31f9e57c80dd5b6db5fded55bc6a239627aa8f10d00c00302047c435bb50067306502302200d98ef1efc030f64af022ca53620d7691ef2616bd04f91f7c00e9b65fe9f7db00ff108a823fa67a2848abe56cbb73023100bd2a21c56d30e9cd30a879c418bdf4713e79a72bafcdb0d3497444bf1499d3c36ad9be89778e78e08d3822a2bd6de2d60302047c435bb500663064023069f211f577f4225fc8ccfa8b87374909735f214ee42efea09f4e11e125f77a6cafc41e98230ade1fcd1ad19a04391f7f023041ce205cddc37d2c6a66b095ce76b8cfc9722940a8a51d4071ead42acf83176cba22c658b7b18e05589e2d29b4caf11d0302047c435bb5006730650230551385a947f813c2eb12df07ad7d07322177317518f60cdaf2bce03ca3b30b6efd06eb2b1f9be932ad5960eadc41c02b023100dde69b1d99da5b51657644ac60e544058fe84012bd68ed6f6424a4f229fe0383d1676827c695bc2c1ad6b7cd8648d0700302047c435bb5006730650230018094f5ff0e7d122eb9c99964c1efbac76857b0f3e1bd489554bf46c84b4af27eebbd73be372030351da4b403acb2af023100cf753c25247bab0deceb714bf0a53fe1b015cda32c7bd3992a28b288b3c7b534d3c10c23b9d524297e1d5bd0e29c707d0302047c435bb5006730650230169054621335ae3c317af12ac957a447a98793a5fa394b4513e0deaf6330c8024c5e27ae1deea441268c2b853b871fca023100b4a917e146ab740ec1df3e103969f58b28d35cd5ae761aa67a4e67f681c8f124a25be4fd1849a1bb91fc89b7b15ea5c50302047c435bb500673065023100ad575e3cbb3af801850bf67ce81fa66e6263bb4e059c754769f2b687a05c11ab9cab9354659fa058c4d1ab94ea11405402302b1773e9209af49e800a79f8a4c1461a96946f2cff3a3bc1e8efa9d3d43d28615950f22293f3cc62e3df9b0a0c26cc790302047c435bb500683066023100fb8c4240482f605f0a9b734a640dfb3b6dd7425c25099e540fd6fbccf994bd3d08de128b2a65d24de6667f003b515dbf023100bfb3a62f966559bb212c87ab6a24fe90129f9595c3cb8762a4cf2c8f7922621f4e225cc717d78eb0935e6ffc9cae5d4b0302047c435bb50067306502303f9b59dcf3041d71e8606c93e59ab8fe81a9909a600641a29c5fdf8a1e62f8d6a84664d4aba1ae500246b43cd5ea62bf0231009d808f15b5ca55171117614872270bf56739f8ab455fccab98a05cda45ec419e1432744f7c421f9fedec08c20b3942db0302047c435bb500673065023100e054321cb569a322bc8758a804d932ac2338642178d2fa2a9c954eb4ee7aab61ab5879041d4969f4fefed38aea962ca2023038756ebc7584a0a6eeceb5194558d226b746613520a61e95becd564afd0a4e9445c16f2a13e7956cbde2823a49e032370302047c435bb500663064023003fb4e84bab45d4f1833175a9978f17f3cd23cfcdf98c70874a8788d08fb8ac147014235da3b818d5b562fe63a524a30023018d27f96883a99fc0a39618c9894ea91da43395596f6519184c0ec752074476dea0443b676cfa8a582ecaecf0b91fc840302047c435bb500673065023006501cf7ed54007275e626a7c0444b0eefe0e98c926c4e5b82c1847c02ec9e139b79c92075be8fb953562a35d3124f47023100f797dbe8c91188e95178993c618763c38198c4fdb5032749a4e531f481118f58fbe6e3dbe71deb6eb56134c03cdb95570302047c435bb50068306602310089945db7348457b8fe44275df5123f679f99b2a831165b5e01b96c213f5f55c72d5be35e7732ee51142065bc220c8ba2023100ba12dcee6ff973b408c1260e6418a756a7f571d8152b37452505df1a52050f9352b79c6141d0b83c4cbb6124369034040302047c435bb500673065023100db6ba91ab74698203e76e3f233b235334b854da019daa18864571a1e0799e0d0530d5efa69c66761b6ad0a38f322f26b0230378936fb6fafbb79f19c9e7126382b1ca6a42ad6f07d2caaf7b99dad813014407f42f3e050febba647e4f04591db1ad60302047c435bb50066306402300994e3dd3cdde81d723e68a52ba0e3d0ed437a29e08de799c4ef2c51d25e056293a344d6a4539aea6f673c40bd274ef202300d745698fff69f67dcd622f33194863ed3c8216eb696545df110ef18354fd0f4f18662a0c544745cd3d8fa28b49f5f050302047c435bb50066306402307f8a0392ee2f2c6df05900578d2fb87f2c6327bb72713d521d8b1f51bfeb50be16245425a5fa5710d868a0451c356a4002300ef1763a523219e39dfee4bb10d2f916dcefbfb376c5b8147a1c202579bcf611e0abee2c8c85b0b6568eb738b032d6b60302047c435bb5006830660231008e55e239d7d913e4e31d20348f1b9923ee1c0b7b3794422b54a6d142e8632fd44215f8290b9938a45bade607f59bb1fc023100e8c776f8aab42ff39a865225d682fb2e5efb17d91212725b5976a4ee6deb134de4873e0600f9c0159a8a9dfd4826c86f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100903390d1fb415f00c722745fd095cc4c2ff350efd5134797d596ce0127a7096302d8431ac42b8e8a618b1ae0cce58adc023059153f7a4e91a731d14a84f2b5d9c015ad4f875e2efa51e5a88480b8a23d85c1ac278b3c84aaa58da2a8781a5d4cdb630302047c435bb50067306502306e9976dff5c717ff9a46e36bcd337030abdcd0e2f023d883d6f615d16b22a71cc852fafdd1f1cc9c62c300910eddfa07023100e3192dc78906c043eae67b2267f5ead9d26cee23aa1a2f4ef461d06198e04c079cdbb3b9a3a1a3814d59770502cf7dde0302047c435bb500673065023009c8cdb95b16f385ef45980595f20cf03beae67b10cda5390ec86ee8c73bea6fba370809b78e7a63ac221b9dbd57ecdc023100dfb2e085428a1985bf76d5659a8750ed2836c94edfd7bbc8ed7de2acf0896a71b60ebca4cc23b667fd9b03be72d9b0740302047c435bb500683066023100cfd4540b6192c2134e6b4d14a035dfe9cbb85691feaca5c1cca92210e19770424cdf7bba51ea9f1ff7f1b9220667f40e02310081c8b94301439460341440a3e4a503ae5f99ca57c9e7cd9a69f4a288e412ed27a0964355124599ede70d24e7edaaedd60302047c435bb5006630640230371f7e307ec13869c482405a3e708f6346fcc54fe371c968ddf9f7e5ca0d708bf00d284fbe3579040af865010b1e005702306098841b789bef8a4536241957a063f547fcf0e62159a1218d1478a3661e5cb6828b6dd51237426b85e19ef3236111b90302047c435bb500673065023100b48a3f72c8a3d526f17b0e9e8152b78355d7ca0b043bd66c1ac10d4c87c99c37e194b9264854a3d17dc4ccde8e8636650230014a9a2b7018c4568e5b80fc78ac73e0da2ff77c0017607cabc6730f44d907e881ee5ffae6ae775f280c086e7a6a77dd0302047c435bb5006730650231009f01c875f69f599fbfd9a735926af2cbe6291414ce1fa1264ab13f51105344b5b945a9afe53af26d322a3f247ea7dbcf023030f93c0a5d8b32595c885347747c656b6eeacacb058498f96cb493e3761c71a838bde270291f9b9815cba481f98512b80302047c435bb500683066023100db98ae7c953ca1f19699c5a0adde6deb6505a4c392518b5cd7d1d5444d1a73e3d0fcdf0118cb2e17aa8c6aa608630cfc023100a0d2677bff050d5e31206aadfa4bcd6210316770f936eb29146304f79432281c4ca97d01533b53a2d4fc191944afc9dd0302047c435bb500663064023026288abf4962a47f6dce639f855a80b0892fb4fcb7322129b6db59d91345973a81159d63ff88c74b7735202b79dab624023007b2d22e7d93167c94addc32078f2341a4960c1646b5f6d9704bc1e9af878483b312621346603961e0a8cf38553464470302047c435bb50067306502303808f569a7df2851edb8cdde8121aeb864d21760008bde94e887d6fce910c66bbc62cb0e20df63b1bb250682db4e744c023100d974faf31c6e327d965d1999dac180729ee8c1c7abeba311a08aa016923696a78f866b7150155d17e46ed77b1bc435fc0302047c435bb500683066023100c66122ebd6f6c7690f10bac8ec98d8b275150854b4a77afb0a6eaeeb81ad126fc2ce8152d32bbcf9519e638c1ae9adf1023100a191eb0e13fb25ec5a71f0e2fae4f707eb220400c2e125b638217056ab2933dec010fe13d2a44606d058021e97c2a8dd0302047c435bb500683066023100fb96d4f0875fbc488980685d29acbdd5603a86011c4db76476083502ec0c1fed9048a28f7ccb7872f45201dbcc3e926e023100d2faf6c5a8f095520bb9e8ef5e1a330f72e0a6dc07cd738464264a0eb536de2ac0824ee2ef3a4997faf7d9e506bd94dd0302047c435bb50066306402302128b1b983db6ca6f56e1441e4f5f92a733026a4bd96a033a7729e91d0eb075719fae60e1f4410db6691b340fe65d98202302e01be2f51112486f7fc95f8b621a7212670ec72ce9ac4792d97d18738db6e74d369e69f985ba02ac8adfe5ea61057f90302047c435bb500683066023100f9a7826447e42b556e98521060f3eccd3afc1ad8bd872b05aef542368dbfab79eefbceaa02ca4789efd4e11e9b69f86f023100befcd10d54ddcc32d6c56f3224daf2dad08393c773f835e546401c16cfe219db31837c90973816398e49c255f6227c180302047c435bb50066306402307591a275a7f4ca2a58544017bac205e769564b484b4a040ba7efea971c79a91a0634bfef52bac00572d2cf526037ea4002303feffab894dcd9c9544f5743da8e6f2e698df01d6b33aa3527a41562799c3bd1e162fa54dc7eceb4a8149331830e735b0302047c435bb5006730650230179fc6ccf3d011cf445a61c8d5f0f75e68bfc009180ab53e07115415e9a6c36c240d372d6d39a994aa520ace832b6187023100da40463b30442ddbaaa6e10c31f881eeadd1bd66cdb069d6eb9595be7663d34389d6580facf1cf4ad22877e36fa0059f0302047c435bb500683066023100e2079c690b67c8b413937d652b541f1a97926ed245ede82eb36c1de780d156b34423b98b94597e6781aa192770d5ae5f0231009ce83a8e7a32e22cda9d6ac29625ee5d3c2d2ecbb5ace57af17601363ebaafa34c91edad2702518c6811d143f836a7980302047c435bb5006830660231008dda365f0c780447e0f5e7b77ae220d0cbc32c97ca3b6fb224b57ce388eb498c4fcf5e036fb7a59f414fe71e5094e600023100edff25e560fba0cc4e1a7a15f7f475a28474ff6df02467a11b5c9ed20e6e322181e2ae021c0c797ff0f353bf4aee8b1e0302047c435bb500683066023100ecc32177381d6633f3c101dc002750027f9ce1e68079913aac863d17089df3c343ef12ab8dc2eefacb41ac8695b1d092023100f2d663c2f77118326db22d73fce4c1421ea47aafecf2b4fd5a99336e81ef7a375bad308d90c8376a1ddd0c767a9867a90302047c435bb500673065023100d0fc19d874b09b263749fbf46b98064cfc05f238e19ca497470e1caea4e4ca149fae60c3ed1a1333d7f68e7a37564b3502302ab441927b976868a7fff2e256bead6d55ce1ba6cbdc3d0333125c91d2f84c18977059e7032f127adbf385312c77f5890302047c435bb50067306502305f0e4489bc02a6347d245c35b372a4c400dfbd3e9da94b7c316ab04b76527b73aff678e2c86af4456af77e29bbb8dc9d023100cf7f25e36b9bcb0fa9cf25db68eb55ef297d0ca7c47346c3a5cdf47e31f99c97bccf47398cd42204121c3e4e74ebba730302047c435bb5006630640230797952970659d304d76e9c40ac64bafc3c3371fa4a062c4551a19e4263d69de1d86f55fa5fdd5f876f575b56bdbbccc402306d4dfa86b924a4c7cffa95c0ab254d805cc4417844cfc977ce8e9163c9f541d36995a1ab53c8f4b1903384038eb0f5a70302047c435bb50066306402302381f2c05e087134543d146def3721ca8a082924b5a775a360e817fbced286114fb17a1f3cbf19a602beed503bba74580230095a82e5e4925b72f83568ac52cd26013d1e1f149a6d42aca905f3823ce9ecbc1000737e75f7493a14fec8aee89d920c0302047c435bb5006630640230690fd489f759bc5b24870ba8fae27421de9f636de7e3c3b72c0926032b4e612d438331b1f3aa9949f851c8a81db0fca402306b56cf6bd21a3aa11cf8e37a99517843493a42832656ee0cf40d42d95f6eb423687d0f2c113018238fcfb3081ba434f50302047c435bb500673065023100994cd6e48ca092801804c76fd973da14aa90d54cf9345ff963f32d6f6736344133c9c10486b3a38098be884a86668d6802305d5a90858cd429d74f446787508172486db67e2352bd10e7680585b41c242fca638a0597262968a5b8fab80024998d140302047c435bb500673065023073374c76928dc679c718424052a3f7ba6d5a3a8699344d9081cab0c6cbe3b42061d6b4b9598117d3309a72234b572dcc023100ba84f6f2092f08f4664ccfa551491dfb855ccd7993cab235913c05b90e111430cb53dc05621a0cd5f74d81df64fe031a0302047c435bb500673065023100f4e4ea7993d66549e21f466297bc7142f23582e9cc0042d91b8fde7961afa32dd5e13ab8e5dac455c78389dcdc461ad502301126afb3f1ada6cb3b728bdddb089414c8428a8dbffafe60362894299fba4a646bf0d77840dc8313e8138b6a21fd6d190302047c435bb50068306602310081bb95377bf070dd7604465c1b71a15024d5f2e82ab0e4382e8bb121aa22b16f87f51e8020d66a6f58bd18f616124e6a023100941db872e3eab87c919e83c8ef69af0c99ddb0bc6c73092b43f70a2e30df9c722bd1db57b0e22f8110a8648323fa8ab30302047c435bb50066306402303cd07e8ef06f50621e8e0b9c3472bb4ddb1bb3bf71e51db9fa12a78a1560a9447d9aa5a26b30b2e60d6106d8fe87a0270230253d4f2d5b335a8ee68779e817991ff3d71ffd042003aa482d7728b346f3cf25e8bb5588752c447abe425f1b22d13ed30302047c435bb500673065023046f4dacd938e692bccbaea3ecaa59c201bee89a8c3454f5662b124e94d15f9c214af1f7984c8ed8d687ef29e223f83020231008620a62d8cdce5cda43b1c1527e6218b203b8684c97e3a39a3c740a04d12b4c2923a6be9ca846ee0e507fc556ad1331d0302047c435bb50066306402301f50495e58c09f78a04b9bcf7813a9a2b3c656086178113e95aa33ad60b884ba7ba2abcab981c4a3bc824cfc0a38bc6e02303eec974eab35c1a85409e750fcea36edbf49ec1c0cd637b46fbb54c5d2c1838fd8ec47c02827d5f0ff8ddd23a525258f0302047c435bb5006630640230787cacd46acd287432a1c74b376a34662717b338da258d24d1d3f8d14f6e04411531377024f22754aa3bc58dec946f98023030861f85d8a670818d797f89c0bfd71d8a477d2e5ac86a1c11ae3a5b8fc6892c1d9b21f2edfbb123907bb3c4f91cf5370302047c435bb5006730650230496218569a39996c85e73b9f336cebcdb6ed4b1a56b997cea795f99fe652758ee70b8543f78249399dd8f6298f6c19d002310087a58bc0b47ea05d012ec66fd9ea1769399125836d21839b54ddc8512aa3d24bfd5b39d0e877ba33fa22b1ef967b8fb70302047c435bb50067306502306c2f12b48bf40502f2e9df45503bf0a3a591d40efec835480b655e82db2247d738b5ba80c4c7140df06e2b4126f15ae7023100f7228ba9cf289d479184e2b8923d0633aa6a94d6251738baf85e609b77dd0fbb1ef44882d493630132271e8c8a68085a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e63ba6573cfb305b506af0575f72b4fd67df27acf20739c4c8995a239a76389e86fa96cf314e7ac0438dfd294de54736023100d122bef972295fcdb47689de28391b858f579107bc7e5080282b846df625266e2c286b5066628f82b464308e8b2cd9eb0302047c435bb500663064023039d5d42922cd0bcef2f426554565690c9cfe77808945ee157987df2c3041d6f5cbb34c77393106f2dedfee1ff54a46a902300d3e1b15387bf6547213540f13115eed0c94af5d6d0acee044bc5bc6277fd83ee56cbaa63486ef9ccadfd92438bca31e0302047c435bb5006630640230796dec4c80d43f9acda8b1ec2dbc2912a02a9c8684c9e1813f7441d48aaf2ac6069cf2581b3c1eb300ed838d96c9ea9e02307940ce3bbe2b861a2d35bf6b97952aeb64fa01209cf923a8469bfcbf09e77c5bbd227f0432302515def86f6e9c898d850302047c435bb50068306602310084e99919dd52a57baa2de48af2a319b4435fea25f060e792225bfe447348b5a74cd651b478019b5bd4c1dc564152a12b023100bd2057f47ed1165a5f912cf3ca27ff79f6be2daa9b07c8561a4dcb6625aae4c6376a4fd8b77b8d714a879b6d29a354630302047c435bb50066306402301bb532ebb7f7fce0fac64f2402a8bcdc23836e7c43fb40cfa79831b1a28b1cda849cabce789eedd0c3c51bc4969d1d920230668d4baaf62560f6996689fe4f02264affc239624332e58317cdb34430af7a364145300c9aba0b4184656cd07180061c0302047c435bb500673065023100b670448ba47f2a2ddace71f3d2895379c585650257dcbae492bf57c71cfc55a6a0567bd7019b18bef613507d37199a5f02303783264c044ab6eae61ba49c559b0c39178e838680ba2216d376ac3968a2d5c3048bd8114fbe82977c11c9c6652f272b0302047c435bb50067306502303d4cd3de9a2cbcd4141276fec4905f63802c8c6c6230eff061cf772fbd6b4b58c56b8074f597a1aa03cda8e2d14d849a023100b69480a7b27fb0fe56f505619887dfc6ac93e45968ae43ffa6438325903f7cfb1bec2046d3a4c0ddece6cd49b50480d80302047c435bb500673065023100e6acb7376319ff8b6de9d668fb982d004f6b40a5e1ac2839bbe5e61e982db7691c65050418155a0c77db325439b859c202303f101c4cf4274b3a97c93e23b620c7f8b50191eb343c8d51d539128fb10ee3c02aab50a2dd438e1b433690499a0fa61a0302047c435bb500683066023100f2267aec15e125174450fa11dd224687d7c1c7de1d1c9f9a881b376f31a88459cff66878c75bf34b9b28b3fc3aacf67c023100c10ba63b7fff44f2efd6ce1ab9e2a073e2015bedb2fd28dc89c3a7fb109276616cbb8a867c47df3c61a89dbe48e820c60302047c435bb500683066023100fc56f03a726bfe7b4af9b9725e8555890e58bfa3074964729948e3720af72b23a0a53b1700113bd7e45ad41f7866807b023100ae90d9b1799fcdf3f694a5a95ff315d576fe39a5aa47441f53a5b69eeaf5d336664a80dbe11c401ecc00ffd21b09b48d0302047c435bb500673065023100c4885390e2c2e41b9485fe7be6c3912a8bf934b17ef30495b3ee2f5c04c8fb6738917b8477b8d7bb2b6c980377ee8dd0023076b5620a9132a6a414e43a2258322fe25088e71ee23dfd60e0c500b9cc384832a4f60586798f373baea4af03ed43bdfd0302047c435bb500683066023100fddd7fca8a75eb0cff72ba379c56474ccbbba031f315bc852dbef981d7ec7bae34aa2eea5f0772c6b16e5de4dc243edb023100aa8fb0fe3b003202eb0129b430d9855bf13f8775b5f428c9f60a35d066ed1fdb000ebab936ea9a32d41f5cc1f11f4f3f0302047c435bb500683066023100cd18902eaa468314d53bd73c0877ec54e257bfeb5f8f64d3cdb0b3c98aca91a56ae87f09ad19dcdeb93843d4bacf89ef023100891e46b6d3249e7d556d3fc16ab1e41365f290918e058c0ff153b97ef2f00147c227436b2c8812cf2cbe38db8898408b0302047c435bb50067306502305066405405fb2f1046c67c8b4a217a90929124f1c0d4dbae918b64e34a9b15be6912cc250c025fee8b8d88b0bf102bdf023100d3682c1c40e7a38ef8d558d695eca1e040ba519e0ff02610c105ae3e8d5258ed71c1020fd971d8a90ed02fd801e9b9ac0302047c435bb500673065023100dd7d3cb4d2ad8a63c4e7309542b1d62b24a2f04532b6c5d1338666537a35e8a91a9ea04c96a367035416ddaec2f1187f023012dbbda12093e78892ea096a12b5bd478d14197a837bdad79411e17c8e808a1905b0694279d61225f6f302eafe2e7b3b0302047c435bb500673065023100bdc5662e3dfa5e378e2c56631c7f019b6a8697e53067e1700dcfc1604c90e52ed531f5b4441449af5cb549aceabaf60b02302a68eb610a59759a28b9217dff9bb942a693c981f998a25d4752ac3663709526e880adf8a796cfa1d15100cc1f59a6080302047c435bb500673065023100c7f55c18a218ee7c8c5b82ee15ae5d0c36b25f9d1df526ef0e5fcfd7a72512511e0a550db141e37daa9444aaaf51ae5d02300bb45cd9323536e29564e565d2bd74c2af2374fbb705d8812fd1d1cf0df0a09b3633d787bf7592572400e120b1b2c8d20302047c435bb50067306502306cd7210b77e6dadefdee0d4e6a607c879711297f545de88e0dd342632b189b3bf9879c3d13049b9705ee4f19d1f743d9023100b067ef6ec3d57402580405e4ea1a1411ecdbfa5fd8516fa6baea0b6370e39a30834e420ed83e4c415fdc89ba4c64e28f0302047c435bb50066306402301b23f798bfccf97169c51f27af43598beba632bc38c4dc0859b9a69587ad0395a83dcff7960bf892f514adef1a69c7f00230244176df23d21e9ca8f1d32ace98484ad166c0b0efb51087958150253b190f763567624768c934dbca5eded06f3fa3970302047c435bb5006730650231009eb7ac611cb3cd90438ef92646fc8dafe4de0f727748fae1cb884111e600324c3efac2cba6b4fb78a6f0de492c43fa3a02302aaf796958046765f345120ad27cc339b1828fc91424c0bf490d3ec865613db7077da851d4fd88c10a288fbc9d39da0d0302047c435bb50067306502305f935e10d5926cfeda40d1c4b983f04c2893d6cc02998b54a028b70c34a0ea0d9532f0d642057fd71bb396ff1f36ef37023100fd9fc6ede16e73d91c8d8e55d28849a397bbd30b90c980d7220864922325fc37aa164dbeabaeab55cfe4d3323bf9de550302047c435bb5006730650231009ced4a622515c6f08e179a8f250d4bb0f1cebe4f84cc40235f96d34accaf5c6094f7ee99b385b2823c08a22eeb934b7e02307fbb271d5a8915b3f1b4d96f6ff7a19251465031492144ed841768fd8e4e57f5e45324aa5c8dc6adffe8c71920f5c3ea0302047c435bb500683066023100d2bbab35971ed756847c366930156c7ec6d33dcc80f121219e534a9c376a7f0fcf5f319b18ee02942de5fd7405bac2fa023100a007f61f5a915c278118d4536ad1a65ca6d9228752a77348f9d72e6d9c293feaeef13b97a378d89f61a307095cc882310302047c435bb50066306402304ff424c32f37888fde7b61e132f1d108f7fd2f0ff325ecb8ecffbde3d366cb1f908bbb377d677e96211fd4431db0c24902305815d870d75723cd2e5e01b8a70c97a5105f592f33c36222808458f8b41470fc14a6f516c828ad44df64c581ba9be20a0302047c435bb500663064023030f9299dd1844da18a457bc11730924d17f894dd5a5ec0d68a6c0be04581371744a59bcac56124c82f1d8ef71aa95c6a02305bc1ae69da49b23c2265ba68ea87d9a870d305f80975d7bf78cc5299ac028a150bc5b6d4855f29900403215915244cf40302047c435bb500673065023100e087683d8d9178ddfc0b611432cf1e469ecbe84849fe69cc4a1770c0f28a9176200a3ad9e9cb4da2af19ff2d1bf4b35f023018e3e7349e55adb084b4017f764f660039fd6e973f74a4b4c65f95d71f98c49cfc33969a7da664d4c7dc36dec4bd1a7b0302047c435bb5006730650230439ac1932241fdc9b91c296f78ef4d6b5d18809d6e13896ad531254beb96bc08026a1154006da318a41aa3d723c920950231009541390f9011bd721fecf3fda07910af3991b3a977736dc32c05a3814fbfff3250e464e8406f3d3e288b9cfbe465da9d0302047c435bb50067306502305645569663dad6445264a4b69a084a0a9dd06da63a1f5ec97b11d0c58b478572ec6a83778c9b75687d0d937315eefdba023100a7cd94abe58c50e990527f163161e485c8a797cb56f0150b48f3179d13f8e832dfabb267781211c0973a5f3ccbc89f0a0302047c435bb500673065023100ad5278c3c183e2d15c3f1c77cbe6f4fe1d0e5ae5312dc4b6efc7d980b3ada4b1ae9ce22cae44588c4f2a1acf5db3153602304f25f8d335c5359dfc8edbf8eca32875627374a848959ac671da8282b73917ab8bcb9932c6d7434d5aaca8f05b1e43090302047c435bb500683066023100acbfcbba1c01672d2ccc467c62b0fa49a62ea864d27b40d9a601571b1cb506f55da037cf432989021bb219a5877e25f3023100d9547475e499e0abbc26b70cbed86631179f5fb5310ddbfd104d7a63aff60c052b3f0499ed541eb1238c0194d02f430d0302047c435bb500673065023100a152af4e65900472bd1a8467769559808c4e7fc2d29b4f69f85d2adc24931456f9e73086b821a91a3ce3062aaa1ac55c023033bf0af563b6264c9a44801632883dd1bb2484a8a2dff4298c3499691a5785883a4ed9a1849b4ea7533b5ec4a4a1fd580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230254e6ae629ec71214b04658c15cf3d81e5b32f333967fc3a780de9936e5b02c68951a881dde2dd0a9c9d1b039f1089de023038e4ba6a43a1e985b0f34d723f45fa72e07e2fc480fc29432adec7009117b91a63ac2d1b4ac9dd1ab4a3b2096345723a0302047c435bb500663064023029669cd0c7a109d978c1c74828e54185c9ca3b361f35458da21533d314c9ccc8239186be68b68930cc2edde7b6df8d2c02301fec0eb16dea7c531917a791661eda445730d0c8be55302c2de47879293d2b09427fb2fb5c2b0a94319ae4874ba349550302047c435bb50067306502310090cf8db38018da26daffcb07475a7ffd9718524c01e9b2cffe6936c535b84acb1e506cb1233970734fe2eae8d40811c3023066ce0f9a7eaa39ddd30b1280283b7ec6b54484986eec662d6ade78104e9cae1df04ec8124545a053f46ee327377c3be50302047c435bb500683066023100d68cdd28b2d16055c0c5383bbe10b9e14e803543b641cb2d275044ca4686b50fcac72c04110fbad2caae26aec76f0a66023100ff93c3fef869fbe2d58767b0c08e063f12e01cd6c84927d2efde99d91480b3bb9cbce14ebecb5ce9553a3d4126e3ebec0302047c435bb5006730650230311a2e6dd725cc9fb9d6c8bd804cdae9bdb9f62c3abe1e6791e3e3027a99facf4f969a2a7c35621047332785266dae050231008f09ad93285659cf69235bcf2e95b80d87f66d68f2415a9f023a059c74eeab08500fb321b1b0e4530a6256b9869047720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c9a325d76c940c40b25cc052a7b9d5999440c7093de35b3b54eaf2dca0a318489a3e0b1750a841993b22e1191ba37e5c02303ac013c484b06f398c9208542659c95864a99912c6e2ace988f6c7bf2d32a98e7dbaba44d2f759d538d2f0cf4b164b020302047c435bb500683066023100d6165cf4ec5a0c1de40961fb88599cc79d673fdd6dfa12bc965fdb428a6ff19aa3456c2e872a0f637d74bcaad001c147023100b067b07bc94dd9a38cdf20b0ba509ae7f6d6c7853e89a0a56e5ac56da7c09b23faf762e53f087f649b1854ed04512a940302047c435bb500683066023100ae03c01ae9dc3f823b58c15525d1aa5f208f5cf4f32c524a9fd6ae951eeb127f7c203a1a4e7bb16adb358e0b5c245209023100faab42a9f03d9b6af7f1f674aea9c194bac6fd08898bb357ee9bb20c800170342d1d57e69618c4746fe233d06c040f060302047c435bb50066306402306a3c8be2b9f4c58f891a86e6335f9714aedd9edb5ad2795a2e3a450ea069292e4be8d8f6dfb0359d88aca7c9a02366a702306ac2d50bdc4a3b477c76979f05d5161b915398255b5328f63bd3377cd59af7da11067e611ca12ea667e8649e5240d3030302047c435bb500673065023100b1112f3d222258897cf0d3216174f10698bad4789c7b4e56a68f05c4e22c65a76560704961d04bbb77142f57e0b05f1c02304dfd8a6c6c9a9d12dc001daa10a0ae3bd918e0e116fc42a0afc6f45b690f10633870248a87e3d50ad922d70d3c6129250302047c435bb500663064023064c554f8e18b57d4305192b81d4bdb6b4976700da6e4f88fc66d8b46d3fcad0dc9b38a9b2b00890a91ec22623e0c5b590230197f2ff9b9173e458ec867c8b1089b3ecdd32fea728f83f35470b4f0e46694a9df7be8d70aceb22a65a9e2932396a5a60302047c435bb5006730650231009454a7c36d116eaba1e6561fe73854a9e9949b63bc0308ea8145226bfbdf787a95eea03379a4e41ac95a8bb2219635fa023003d8621c02055fdf1725dfc5300963ac2d86f0da0706230a27cc3ccbaa16427b4717fb59d1dd02d9528b0a6e68e1b7af0302047c435bb500673065023021e64b463496d2e06147c158d84a0b3f6581a8158509aef46b9bc8d8f8dd0bbf9a006ecc97833b4fee44d7dc7b0b36fb0231008f934be7762c405be328d25b46579540d91bd2495a00578a5ddfc1287bb484ac4da63777f89c85a46d3955ea0a426c760302047c435bb500673065023100bb05f6e26f0069e4a19ee51cbd71a044d43b7906f834c1c4f18c56ffc65489d97632b1693c97f4c66c049ff446687be9023050dd3f4c398e9aa777b7218b1127a1046b36f7d8aaa8cbbd1adc1c87da3f7c33adeee7d1f88ac676fc340a4e3e5a5c470302047c435bb50068306602310087c9fa07b70e13aea99e45acf289713cb081a02881612c3af1020aa8f83efa6547ebf61a75dc2073ff2ad39f0cac1a8e023100d4d38f7baf8fbe933dc61550499ba668ca2498d6372a0ccdc289107b8ea722b0de25ef0f2d30da78a3e7bca4a7bce1730302047c435bb500683066023100ae54926d1f70cb5fa36be29f2d22fad2cf45a65289b05034f119c484d2e3b3cd1aac725de7938c6a8239d4b712d7fd54023100ce0b3d4408a38939e22dae3b89c33c50416ed180d36619f0194daba24eddd96c4198cf74b05f64a678afee6d076520830302047c435bb500683066023100a7920d19ea2fcf839e78ea77e1b7c14e1f84c04e81a8b6b2110d9ebdd72ab673fc6d52263ce392e74980cd6b03870cb4023100d76fbd35468413473ee9c23bf51bdd87821238d51b758eefb0778699f98f8e98d7fac66c616b51bd105d22c899150b120302047c435bb500683066023100b101451abf160b13c1241ecb451318c639dfeaadca2f64fc714f05a505458e54d43de6d9735c1d2f1ad33a294b8a7a5e023100b1f4d1b6d45b9274aa705f7a3eed5d7ce76b6768f1b4c390390b3e54b5222c7b16ef197c10a53ec41848ff1827253ca30302047c435bb500673065023100b5d840dc6a1a4bbf037e8291e962f05d9e9fb035c6f7db266360812da76e50358f76deab1645d120d6435f99e752b4e802305db6d6a309cb269ebb88482669c58be45b59e805b9a977e3b4eea51887dd26222c044f0d7ca3b9c5af08eec362e324550302047c435bb50067306502306b52822514415f561dc08c85cf1fede2d92295a8e367bfeaa953af3e6b988813b3d80bb236808670f9385c0bd3d78522023100eb333b779339dda346c7b78e27ffb9085477160e1994559cfc7b94228ea1e40fc4b71d30c376105622ccc12ec653af510302047c435bb50067306502305e709d12cb1f11ad0e17111e6d7a883ed8059eb4ea9fec4818db673fe1ff15cc57f5dd29146dafb167618e317d0d5c78023100db37df51b6416d4385472971d699c0a72d4bf9d35296d4a06553d16714defc22b7703ac0f7cfbec597037474f65c135c0302047c435bb50066306402306aaf807f1502aaffea6242ec77ca416cf66e1566482627bc08b3a0b2eccb45ab34c4937958e0f706607f6c3ddddb237b02301c7c4b8b23b41c28fefe3d78abefebee8688f44ece3333221bd5f9959cbb491479784840ee3f734d6df4adc9365acb980302047c435bb500673065023100c2e851d0c2b4db03f22564564d1a2df5d2c5b3ad3a7c60b6da5298df2b9888a6503683951dcdac5b7e8fd84be385175b02306857ffd2f8f43d25f957ee22ceda3f4a74212ec5bcdf33fa3597926851d59ff18fb9ff309c8059a005bc0aeae29e1a5f0302047c435bb500683066023100822e5ed1968a6037df6d7125b7105ec1c5c0846069041120db83b31e85c6fd1361604390280433c02030b1018365015a023100d7114f38b188aad3832165ed58d6db5126ea09c625c5c51f5fa02bb56b6f624cac6522a81e6e51947945a53ae08962990302047c435bb5006830660231009afd04d0f4cc6a5acff7215a1c44596342f194a1a1c8e13e55ecf57b54d5dad6c16dbba7c73e2bd1042ca1b08aa1bfc1023100e5a59dc71673095e9b503c3d42bc81ab63443492ced34c714f2fcd615920ff87cfe46218faca9848cc025b0d0b38667d0302047c435bb5006730650230673304a385b3b5d162979d424eec73b47e3f7d8433d9733da8c74e4959ea4510fe0fc526c27641aba7f2818457db772a023100f5921716cb0def9a2ae1bb2c05a5ccc593f4ce593dea183dbdab390b79e76b45d6fb6641ca5294379e12ea639f3742c90302047c435bb500683066023100e1011ef9d06222fb512a251d830753a8183491a2bab5ab968297c2f22964e740f56cad921ddee20bc6cc1bfc8b2d69c7023100c2b5ec20bc61a074140a8a2dc411864595ba7cec54ab0f0bfb1faba8066404579125e453a900094317c1bb2d07dfe2290302047c435bb5006730650230796f7143b8d8446a72ef7d4793a4103273bc72cc349cc49ae9c70fc2ce822b0db9b6db0ff4ac81bdddc03577ad6877bd023100e161530e486356b6a0e93c881def8d623be13a7aa0a502d4a1f620bd0ef9a61a0aa5c26e90189d632aef6f2804532e050302047c435bb500673065023076e6c2958409631cf44122076cc8a6c4f1bde275eb2c1c080c947f709c6757a3e064d127dcabab93841960d047bb7f18023100dab38fa881e51bd0fbf2c72107806dfe48cea9386e14a86d3c0213305aa8e3bbe5f0213a33af9605950a091f49dbedbe0302047c435bb5006630640230397169e4c9a06669736906d8a95b4a37a4169b6966389e8cc374ea88385ea982fd8b3c21404befb2c85ba791a559a52d02306839f0f3adae49947e100cb3febc1d5100225d5e3c110f2cad525d55eae14bf6550fd578009b8504e165e859c77862e60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307fd015d2cc81091f930479df3e0221ffe3d878ef34ef05afbfaf17b6962384145ee044e958938f7b9412ab4c32c2216502305964cc7b34516da5d9de940df0ad38bfb47dbe521ab1476c397862b1f370db488a19cab96f3eb2adb792dbfc45e3e0860302047c435bb500683066023100cc53292df3e494d51badd8f94fd1177689feb54bad9d4922138edac5500c5bd6b065485b7fe08b7340ba03d0ccafdec402310095e27317110763e2f7aba8af551cdf8f0d4900c106db7ae85ea2a9ab2a792c9b94dc5989037b441854d54dfcdb37386e0302047c435bb500683066023100e984ea47be7f0ffba66e0151c87ff7ecbeea9f03235aff47b327975b9fd23dd7e480777800ba6d982b97a82a3d023d99023100be27da595bc750e275b97665a26e9ac24cb897d641185f6ce770c398d8917cd2dbc1c60ba9c4befd6fb58a2629a577520302047c435bb50066306402306bcb9c9913990701a0f3c2fb15e0529ba40b757125fb3397fc773f1a821dd6bb779a0d8f4645da9025efb5482a8631ed023001c92f0f1d74ee63b58ca4f1b054f8b716c0370f117edc2790b4d8ba9b60dd4614d02806c8b8f9f095281253920477100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230193b2e9b10a37783a1a12241dd16f68697267ae8844acb4f98e15cdfceb99176737fbca0991eed35530142034304448e02310094bf890a4c813a6d7c3371abeda5cd2115a2900e1f033c404bd236603702a113e3550487260e7d81eea2c592579b5cc00302047c435bb500673065023065ca2ae98d3835f1925f0db23a492e9a32b3b1aae340f4e0aa1e582b05ae80173f30931586f8c18abe89550b6395f1a5023100d65b667ab6fc3ec1562db6bed293bbc75abb8b01ce329957ebd03a0b42807624b4d44f3b5be9b00f33d18e5e2372f21f0302047c435bb500663064023048d1a8fafed04dd6531b6cc4dc7a71dfd407a346ecb3689498c7309e9f49707c1cc0e309a06a9fccfc1d435d7f9ba22e0230635c6a2698a828b0637d45ec94ab962b47e0589cea79b73f9f37f8900c0662153e389f30cff55a3f2cd7f95be73d8aa60302047c435bb500663064023018ff78c5020411ffd454b56a47ea1c729e58f5e8e8997a1401a23b3d091f947b4d58ac0138f9d7de0f8712300f501b7402301fa7fa1ec1ff00032915f9f295fcb5d94b883507ad55b492404e89facc81927a6e7a07a571f85b1b081de8b404c2657c0302047c435bb5006830660231008088aa762fed60d50a26466cbe55d52bff4c543acafa82115b77a004e3fa86920ef7154f94128b26db52a24b1586438b023100a881bbcd81335c1af508292307bee9b3f656d3d6244cc258d9db9eaa3ea33d38d3cbb807881170b68dc5cafadc96e5a20302047c435bb5006730650231009cb9d1fc825a96ccb195ecb6b47c36d06f85630bff6c60938735f4c6f9b3e678c44d621b03f1cc8445c10c7dd3b85685023015176f50c03e6801ef59b67b08b690289bb82e1b6a2511aeecb975ecc62ddead93a6b01fbdb37dd5c3d20c0665d950ee0302047c435bb500673065023041dfb53954a9ad90abac5bc6e994da582f3abbe9004bf354421c666f121960356390496f8cb81937ece5312851186c20023100fd7ec5e1861b03ad2d41d1497ffb9e5bbd24c36539097c7c11e8b78bf07b867ee0e531a1f6e6bab1c6f699ac3c96fe400302047c435bb500663064023028ee46373ed899f0617d072f5ea9973fa2375fa39d1259f6eae866757b26c7f473e7d172394bf6b626ff6ae9c5aee81e02302ac09c831e87d5444bfa750dde043478dcbf2e380893963490271ca324d2b7c872ddd925182fac28bdc59d532e7c17870302047c435bb50066306402302763fc7253544e4f89e3b2aa07facbdd38fcb580d9de0d4f625abb1953745bcafc5f1cd084c8c008d5c0b9171b2bd9b9023063fc9d0f6b7d5b69200f52f9def12f3a904dd1fd007a335e27b041698f6c63c038d1f7f11f14216f4139b72a2c5b1fab0302047c435bb500663064023079482537943b97e17be11c2887804b6aba320f21c3713968c98c7b3dff4b13304478e1bcce0f8d049362fdee66486e4502300cbbe074a3e963e427b2739c12001fe22189280c2ba45469e1f9b8ab6c556cb30d6ae7f0d0805450a2c05dde9db2abcc0302047c435bb500683066023100d4097b8dd2e4a33769024a6a07ac58d6879c217fb8bd51ce7e24c59beb27bdb16a637a9e56686380a33fb6d43678ce3a023100a87c0c69bd0f4cec594289851be806c6a7f1f436b026cd94d6c70b1dece09a44680f98ce678bdcdbc040516e439788470302047c435bb500663064023030dc50cd9f89e042d95b32c4e6213e584acff3e4718c6ee09a2bae342138941e2d98c734abd4ed3ae52f4568542fb12d02306d432d9b6d3d9268d82e173c09e863f9dfddd30f81923ff1c67998be0c026bce309d83c55fc9e90e09759597513538c30302047c435bb500673065023100df219e9e795bc8b6d875d7746bea455ca395330ec6083d0be124baf4bf3a67b8a96cf1fdedbdbafffa203d821afa06ac023010ebdf6d1d45d98ed5db0b0fddca420012632aa179a7dd786dffb54bbd5b42475aa8bb1b7297e635b78704265365c6340302047c435bb500683066023100af0879e4fea4c8550d0cda757a0fc7f6b8669bc0c1820a88ff2ad607e8f057574ff54f8b736b983dddd6746ba49068c3023100a464dc0d13801c190e063953fd3daaa9d5c04296372fcfa028a858c46dfb5c72aa478f284e5c3709a9ca81460dde2afa0302047c435bb50067306502301795225fc01626366ae119d05d6635c5dab5abadfad680a02def140b3ad785ee7f2799d31a24e7949e564f5804710431023100e56e612f957c3897ab7bb459b73baca7d4cdea3881a1c0ffe8d8611f721d95169b921d925d3f6107702c4d3529a3918a0302047c435bb500673065023034cc26fd317886d30e8c2d93d6de7dcc2bf5912e9d6c23711b1aa889a835f82cc25e2bcdeb59bc094c26015d9eb1cc2c023100d9b77416be101f9c714cb9f00a2ef6a96261c3becf74ee29bf3c7e14e63613e56f7c1ddb0cd56712364179e87377946d0302047c435bb500673065023100a0c70f396539608097bc56c4de08b5f3edd3db4fcf32ecdff7330cb258a678985cf49162cbba86b66fe095d70a8cdf0e02303fb30b582bffa740b66a48e9a4a4c48355863805346bdcf7a89485146d2a72baa577745939733c35e06f01694cda95930302047c435bb500683066023100e2e3221914c60793ad7fd8eeec75af1171f97ad24a98ea3671a8331285be2bcc93b399809b3995bcbd73a10752f1a381023100960b323918ffb3588dbd425b9e484b00efb7dc1af0547862cc04433ae75b1260d5ba024a8f6811afca9102fc340906340302047c435bb5006730650230228835ec04410a03af05fa60540c1dd8268e4a60d691af301bc8d27b82fcce37dd524381aeb0e1e0c98f42a4cc592150023100d92a7a2f13da7e18c7c6162f345538c86cb8e1f8d06c474ed67cff331dfcc4b492ad5ba6b983cdd3c18482ff6551e0710302047c435bb50067306502304f5baee96b91107b164d2a81ca126f8a1f96a942dfaeaa78f18affb325e4aeeef62923ac660d5cba58ba30ab104e12c7023100b591a8e97aeddb41928919069894f4eeec319dcf05e21a1f278c2e729d60090ee74c14654475d35c207c38ce45ed75290302047c435bb5006730650231008fbba28c06e648429ebcbeb979de9de944ea0c2cdec147626a87b2526b0887a6a205e0f0583fe985839a8381567bae980230188ea0cbd80c2493d0a3d5e0e16a4c9d81bf894aa6f2ade5c19075f739467416e51e962bc872b0dd56369e50869f86910302047c435bb500683066023100a81554ad9cf27f0f4af75bbaeb7a2072cfe8080edae50a41ffc8796ccf90a094e733afe577fb4985d9a1be53e6b06b74023100abf89d2b8e2994b1aab11e3f631a850b1f1da3a523c0a5c0807d48f80fed6b807de764613fcc97d74e72c7abe8badd300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cc3f488b428e6abe86cd4a0fc80b6d6832f40a9f027633ff78abc5862f78c0388c5702d238b7a374b3ec7d9596db0c3a0231008121d88110c6246fd54afb0428062c7eca1a2e78098ad7561a88ea760144b7bad4f1c44704de1c4f258ff8f921774f240302047c435bb500673065023067166babdd798adbbe637009924909ddda14bc68a779b544350640f9dce4618545cc3f19793d590a1bbaabd8d9e892af023100fd911c0e51fcfa872d32f40a8c1cab6976efb9c977b54c298a094ea926b686c381e332ee237fc6a0ff411cf87bf110610302047c435bb5006630640230448d0dbf33a5f0cb28a7c58c3092a2845552f1fef0251adda3fe71f27bcdec4172cf9506c2c040210f879d153f3100570230609d7772d619671a61dc4321e6a5b83dd894f2c1f9381cc06bcd5d5d437f10ac29e7685ca0317e2983db06d3f7a506040302047c435bb5006730650230744cbc37a81e0f6e092f1089d4446963dcc9053171e06469e0c80e42a554f0f754fdd3541b106c573897add8dfba509b023100a6bc6fec387f2118cf99cd53773e2a3aea3f5f84f5ec0c762f0cadd8670e5d5419f0f0e926bd90abca391b0e9de9c8e10302047c435bb500683066023100eb1063d958ff763149c1799da9c926036b1b130155bf8cdf44c0b8b627b0ef8c34c7dd62b50f98eca9c72908ed570a24023100c6dde8e767c5b5d2e08773811522768809008b650de0c8afdbf140b083e0b0c63e19fa58143664c67d39015f4058ecfb0302047c435bb500683066023100dce19d7cdb12090bf7701df9bda725ef1445c56dfe89ecc42f1fd0d67c4a8c14ab581b34abc728135d9088dd65cacefb02310081a26f421568c7309ee76d7fc393c2608f1148c61ddfdef03478f60499b04b4fd65ee4a4fdb6406cd6acdbe47af270680302047c435bb500663064023056466c0bd5337fae593549f3bc33bd0b950eaaaa96f47a1c765229d6d4b5952bf2a428d1458064ed17f294b0d367a97202307da0224fecd417f8c02e7f4b294f9a8229703af0fbcd090c945c7dea7aee7bb9f02365b55175f8b3400ad5f680b1bc080302047c435bb5006730650230180baa62a97adf3ee5420f533bf3ba31ecc2e0b0f2f051b21c25f5e13d921072a341eb07c5061e3c3182ac14f1f7d30d023100e1cc722ad90851b5161440048612a814f78e56940ded9b7ceaf1bf36ab89f10955400775e48106f7f23eda318af5bed60302047c435bb500683066023100d5b33668d5fddec816931675184e90b3f9b58e07cd6348f021c3dde7fa88c94ff92934772761086d0cd5933e4d24610b023100d24c0bda548e649f90f5230c5b29855369039f7f716d1834bf819b61ef47f06b661e87e2efba814ae619bdf4d73ceee20302047c435bb500683066023100a1a16e89f652fa7d97b4d32d082f8c7df8f39d510e863cfa0208cd9cf8125e84abfab1c60c50be587411e1a7d6267dcb023100babf25029ef992463c779549f84d83e3adeafe0995a038e25234d2c3489a29a2b8cc0f3de960b0fe8d39adb4625e6eec0302047c435bb500683066023100ee45777120f60c68a52b13f319ce12cace2a12cb951566056969d78859f57b28bafd3724af4fcc3b84f9ca3a95ab8142023100eb7f61ba2b10a7c5236f33eeff77674fe3f1de9743943d7b09cbd6d06fbea62a64ecb18c283fe2209b9d8d4b2ee2f9130302047c435bb5006630640230059cf3024222d1f78d2f668d435e55f55b4e87fe7c9202137770c7b0c86d89ee2858ddcde301426e4c2d67097318a8fe02305f7a9e8cb75c766ebeb0384c693b016a1c4e14235dd769eb9631f4c9813935f16741234d020db6cd875d66e7393a09f00302047c435bb500683066023100bd827e49aefd992e7dfbbc9782b7b511b25f621d201720e4642ad8a886d000cc3d5e55268775cf887af2dbe61459e691023100eb6ad9ac020ade2fd785ab98a18d0d0410f52e704a4219cca7b344930cdbf713b45c22e1e043aa5849e86165cdbc04470302047c435bb50067306502305cc39f3ddc1fac0bcc8c89ce775165f35e41c85c7a92f3ba24482acfc200db570e86c38b3b6859d44cbea09c73a52724023100daa3c906ab630beafc5b3c868f99cf920db49df223314a380ec9f780be9711be6e7a24fbeba89fc664eb7d955c8f347a0302047c435bb50067306502301b8f2c989b1e83e4b482239fa76d208c0258d1e535160ddd4ce02f897a4adab9250229b8fa4950ae11079f8cb23e63dc023100ef45c4b14d49aca6b089c6f71bbf58ab1bd80aab65cdd4c157dd9997104a3ae1b324e471948eb9fc25a022a7291baff70302047c435bb500683066023100fecf041dc8890f075282144328b1bdc1e65c9391724e2eefa925c60144455141abb3f2ad9733eebfee222415fdbf6468023100e7daa81df63fcef327c4224d75b432686e525eeaf9998f274963fdfb12bc659084f10a3ebbeb1a59f035d7c0cb38fd220302047c435bb50067306502307cd8de410ea68c402d66c152ddb3341a7c3b749295d0d9fe6e365bd30f264d0677ef0b2732f06664406a9abe4e4775b4023100e187c8a3894f2533a2dc5802570953ddc715abbf1b931288068ae721a3503c3bccfbc8457a9b33148ebb091aff1934980302047c435bb50067306502310085ed2c9a95d3eb89a728c00c06cdc1996f729fa9c844bef0c56610b8863fff988033caecc29337c7a648ee5eccdcf288023049f0f786dd2ac675ae11cd59669e9515f8f32b0e5270fc6039afdafa9918ae41e1a9558e3c87044d614f39a67f1317100302047c435bb500683066023100f6a21a5452790971c322bbc45a56037490559bf50b723b5bf3a106a37c5efde77312db8aaf1f26ac4596793d02f00c5102310086fd4009043d854258dc50801db9b1f4dba9eadaa269e9ba5bd4fad90c9d26573b67a9756f96d765ddccd9f6059b53af0302047c435bb5006730650231009bd331b2dde4fa5e9701c120aabae4c0ff5dc5ea97c61eabfe995d3b64c86d4768b9f88161ee9710cee0f8aaf1ba124d023044f55e2fb076d1f328d3523fbb0fe15bf7062cada53273df5f97d90d08ba072cff95c42408e96d0ab167eab7607551da0302047c435bb500673065023100c82cf351e73c3bd0f823f43ed74b3d19afa57d088a8e674e440ace482d2098fce08a51a6ea208cc2b076eee34f86be9d023058b9c8409cbd5574f13f054e23657b017e70f38b815f6b25b102b7fa2a3092b19f597197c9c5262b628b8864edf03d030302047c435bb50066306402300741691f9a4382c1c5ee342997ef8f88fa21e01b751da34ebdc471d692903d71b480108444f032544df3cc3e01ca87b002303a16efcd35f73b4f3ddf98a84a98fa75072f90860f6d8bb467dbdebac2a24ff06740a033180733f50d34892fe7b71b6b0302047c435bb500683066023100c34586fc949546fc4414fe2ebefd72e9cb4f0375c1ddfcbe9f185ae1739d3a6ba86b2d24ec4b899272748f71ba8d1b5c023100d55a97cf14f92a849842fda21a8dd50f19d767377dd8e4e060cb9dda68b28558731de914b1f708e0c217791bcd5944b60302047c435bb500673065023100bc168a5601d01c2ad612c04e22978ddd6aa34c6a2927564266ea943c0d75f39ce73708b49c02340007ccee498db1476402304a1093e6d6268acb947166cdd66672152fac0c9bb74eb3e6f803b7b0f09de0170fecb1ef54de6b0e6fc109e8b2c0cc410302047c435bb500673065023003f6bf62711408d8b0b0425f28a7397fd5a1e279769800f90ff5797a25ffae3bc7b9b83de4e096cac2a5f593312a831102310086c1efca497405943303b3e49e796981f9abd5c1fc54739b64bae4fd3b13a148c7c9dc9e5a8530026c798417fa1305c10302047c435bb500673065023100e5154254a6ceadbb82e8af5e3760fe3833f345a3bfb22ef665fa6ff3da55f99f0f8001c299504b366c831854774d715b02304ff77eb514e4888e5385fbb9a097d4ae9003a4bcecb6aaae2be214abf75ff1f2177e01ae29e516a150f36c5d94df31950302047c435bb500673065023100e2fd48a3f312a0711edb8c4ce9934aed6694bbc2aaf066d33afaa3e8ed095395306ee7dc0a4cb9ed37a287ae8e49c411023069126b036b783848c1eaa869deb2c47ce02eeb07fde6806f214c6136165c0e5a506a356a68fa953bb777e53913394a9a0302047c435bb500673065023100e9d70dbb7843a9c17a36c6c25cc5fd358693ea442ca692f76e87c23c396ace14fbe522b95ed844f7b67fa4578eb3a7ad023034116588520f1f5c8c7b0c79d2e6c07c9d5992008890fbb9e4a922462167200342122f2ecd963d5688c3c0e238d1a9730302047c435bb50066306402306b340cf1b5dc6a90a0f526c769a3abbb8fdb8376993cf84a90327c3f8a14b75b5f4ad0c004c147b3eb7aefe14bf82f0a02307e2ac050ee1713960550afed0071641d89321afe3611d2ca254817826495ed32069c2ff02417e0753618074ab93ca1210302047c435bb5006630640230232723388729ad680dc31b01e42c00e7dd624efe36ae9f9b13336e7d1cd63a7a6f137317f4983d0c27b4bbb0748befac02305ba3cda812e2864afbb210d522bb9c668562c95f2396bf1bc6353df90c3c840fe06aa374fd75c914f2cf4f83cc933a330302047c435bb500683066023100ed5abc21904502aa13eb9f9ecf42c60ed7210eed9dca1165b6ca9be44896b797f265b0b23a43a5c8ecad06cea71dae0f023100c7031f2fa2483c17894612e7a183c18cd4c63a7dd5188fcd5378d41dbdbabdcdee191f0abb8f90702bdbae9b001447df0302047c435bb500683066023100d17dddaf48a03b15ee43952a8653b9de051eb51af52f8cb0513fd7c02704abc2136e3c3e9f780e2905f8a122aaaeddcc023100a5d2e7bf0f1f3b04ed00b28a37c9b0ec8f338e43737009c7217c093c9ede1464e762e8736e013d2743d1792f2456e4df0302047c435bb500683066023100ee934260b4a46eeb2854ffd00baeec6a124fc425146da5adc86096dd0e59e9e207f075c105222faa3478bf98d453532d023100c9ebb2686d148445fa9910db085fd555d90f16c88d93d08677e7a0c1a1baedca5d045b9cd8ed0b28394e029bd02ae6230302047c435bb500683066023100abb38ba1080ea17f26ed988199d89328da0b98e8d4283c1f0ec5b927475d0328403c912b364cb617097e93d02cfb88e7023100f5ff7753a31c52ff0bddc78cb6d14cf8a2c36bfc0440066308d17a72e1d5c686953cebc7afd486b751f467f398648c3c0302047c435bb500683066023100de982cce49dc84f1563385c9243519e9081acb64630ad4a30230e3eee7e312e35e0aa93be46af05e849cafd922fd0868023100c5b2635ab896041b12449a4a0e19233540bee2e867bdd6b1ab5f5061491e41b0dc685c7b4e36ac7dbf4e8ccbc1a569a80302047c435bb500673065023100ce8b2f53569b17d946260d2adcaf80bace96bc08db119e6b1c7db15889a4ee3c223ede1dba8853b80cd30373c2f6c3dd02304395e6eb1cc550cb7b23d8f0b0e593cdcf693d6a161f01287041f194f4344e1934da5cb92165ea1c598be1324648abb70302047c435bb50067306502307ee5bac6d8163b597b776266389ffe1986117dc993fc0e4ada585d2535f0fb90ccab466ba927362174aab0a258af86af023100dbb422cf54a8971694d9c662b6fd73fb1eb5aec9f22aea0c9b21c81c74ef8dfb3c35edb902e9caf6a11336adac4af0630302047c435bb500683066023100db9b7e1b030b8f272934deb9ce8ccfa1fcfc41464c213cd1139c9b48101d27e5a2a164294ab7a601541dd0e4eb3a4c3c023100c598d3fc668348e879f3ae179fc3756ea7a699be51e96b951b72784bd0ffa323eabe8660db22c6e11d52ae68347e89300302047c435bb500663064023062208cc30e2cc1d81c900c2326028d7336aa1826b411dc275b9c53892c3e6fe00a3930bcf3c4da9ec83341769076a516023001e2aa827655b799c1c30c92baa6d6a2d46d8c11e7f577238f24d013d7538e7489196d1c22d5b2b3d441371234e066140302047c435bb500683066023100f209cf2bb4dc10b423d2e385b60db10a0f9ad189123e04e20b8e9f34d72419a4254785c5fff7292ad9bb14e5fe06be87023100d862ff0f3495b6eb93e8840972ef4fc46ab030fc830cf080291ef2b36127c0d3c088c0e479a6d9e546692295c53969730302047c435bb5006730650230502b4f14c277bc570c4d5ebd7b5f6d1726a596cbcf758d8cff726fb7b1ab1f2ec2de7be9862a1870b69e72435eecf357023100f997a69a79aa19037083020d27eb01010bdb1d1d005f2378e1d945603b8f3a58a2302be467fda0f24e904bf3eea3f7110302047c435bb500673065023027fc30556d3f49248774922c34472215a946d7d40d7e9c8ec0ba345c31658f6ce544645203b5179c0fd3d3ffa0ca2afc023100ca7cffd5eb6bc01673f45be615c8d5ac66d26baceb84f61dbd6423502a89a6b3c15d8b49a5cf6579585ddd5e6826a67d0302047c435bb500673065023100b41194c62e3e58be1a8982963400f43b9bfae09ee2158f32897d3b2abd5a717426dcf7526dc22f454288a55c3e327d2502305be49e236f9c385cffa82ac8ae554e7dcd07d3f8685c19ad3b51f9a37d77e85b3a5b382dc9025e506552e45c2101e7130302047c435bb500683066023100af2c3acfcc0316dd2fa23753a369255eb408381a65774f2bbcf75f4946ba92fb29bf0df7fe203401f421e9f4e79cc95a023100d844ad03c9975c9c8e47e08d2e66c141516ac3f5c6e7e8a28e2502e55f938bdc9ccbd137a59a1f7dad13aef211d01bb90302047c435bb500683066023100e0d7832213a1b26d5c24e60e8c38453adead6be2c34ce796040f1b2a3e5fe69d5c21b815e4c56a9ab4de08e188a09e40023100e5639bfb45a8384d7ff4c56f96ef34a4a31e726d6850c2a70b146cf24f7c028775840e0dc02436382afec0cb34d22e5e0302047c435bb5006730650230645b599db7368723b9ab58d5b92870671348b7fa9f0f1b4afa5f7eb956b38b243829e5bf9d7fb0d5525396d0a59eda22023100c92b4ce30c5c7f4a1536be1e3e0ef3ccbc73903cb52f4f3a8c95fb9918e03b222bacf7becc8e354d8bff67263b6e8da80302047c435bb50067306502307bf3e15b8223c19cd9fe7f9c0397a47338c3732964daaabacf84121da3edaa7b7e2456534b705bf88baff800cccc3578023100905e692abf9d79572382a1b8cd8d7f7d4a494b78c1a6960409b80c07ff0f660a3304e14e1dd2221b27c5b5ba6eba3daa0302047c435bb500673065023100ac3f7e036b09e41359dab1469f84dea09b9924bbdf7943d7d8ac647dd53e051a19f4f25c04ae9c2170f56b2ffb407c5f02306f41992b8ac30a5b950413c6ed690419d055563e64a9334d653a3d2efe95f8eaf8ad0ae2587716a2b28b40c9766636000302047c435bb500663064023052a8a980a69e3cb49a7fef19905e354e07060fed365f6e288595f7f42d4e8d96ffb8ab09a1aa54e3b0c2c5d50d7e85cf02304b868595eb34e21eff6c42b664e61beac712dec18534ba933004fc8dc31994c5d850304e6fe49d32b203005f5ccaa0390302047c435bb50066306402300731ead487ecdd82ed9527997cba729386d414749b1886e182cef235956a0b9f9ef8cb33ee3f06f41435ee48d07d4aa2023027e30feb8fddc3a3b8ffc3ed5a704f6da8df0e436fbdc2ad4cd1b8985489cfca498eb92661aad7ffb289fcd8fa97aaae0302047c435bb500683066023100d340fb509d45a8a853aa34a51a447e9365ba31aabd70504c9f83cc052f0133c3bda87c472600d856514652f78b0833b0023100a228cae31db80c8958bde5dab7bca41d81b8c8438fe4527d94dc84fb88fe38704944acfe2d2a6d8bc375d74fd994b58b0302047c435bb50067306502310097ee84338ad8fbb58f09125f22505bcc967208e171d73f12c7516cc59221a2bca607a9ed9503187e5c6e95986fc8039e023052323eaef8bee1b8d0ee63202ae8b11403a4e29cb45aa374f369c40387ba4ad978d85cc498ba5364feefb7c0ed44970d0302047c435bb500673065023100c6d4d4b5ecb7de477dac029fb33edcbed1269a93b6efb23647f8de9e2c27d84303315e7811afe8283e466be70067d88f02304b86180ada7fcfb97accccc186f43ef0a479e5736b26898d734e7d3564f29a0aebcc3250227c345972e43632889a12f80302047c435bb5006730650230208b74d1d8cc5778f1b36ca7fc6a5f731f87fb340e6d790c3d3ee3df742e6702426685ef1d01ba832e8bf2b96211fe28023100c633c406f5f092e8ef09baddbea21a21fbf8127740a8b81b384babb8048c07d86be25eadb0673f3ccbd4c31d6848e1d40302047c435bb50067306502305d0183eb307de5cbb80b7838eb3a835fb3b77b7f0b2e687b25f22083923bf312eb0bfe8afb2bdb6fd4e5ef33c0a45849023100eef115e9fc78938372e45d2b9ed44db5bf2ed81959ce31695f7c2874e587e48685f8ab0812a6526a7ed92a3d6fb573a90302047c435bb5006730650230234d0d705bf0f8dafe0dc1105de60dcfe70f28689da2ac153ee687499b37f801776dc6920b1f35f5b2383eeeab2d55c5023100d6c0a89d017f1e5acedbd2852958a2e38b0e44e8c52888a4cedfa91e6fe154cec1e274c5b88330d886478ea702a26a860302047c435bb50066306402307cf748235d84bf85860e7734ec6c5af0d504b52d359adbc66094b7cfe5d1e12a977ca2a0e1eb313af39ac21230bca66a023015e5c45cb08ad18364239a148ae7dc104870b4103e654d4d4cdf8f117a0f528c4ca866dacc15f3433bfdacca202fbc5d0302047c435bb500673065023100be102c45c8f8a8229d0129cff6f010be584444733af32dc40f4d5d60a083f595f52e07cc1ce4c9f0cfe3434158557bfc02307ee13efdc1555af6f4a5d0ebd6cf610419691f8d85ba10cae7d58098b70fac8ecd263d2d5cc786223220a2aa1fb7251f0302047c435bb5006730650231008cc2d620444044641c71aff79c616373ef55a770585a4598726c37e3c4699f4c793a83992f0fa1b995d8366089ec62fb0230607415d267510599ac7d088423acf80a2e11eb8d1dc5a693a57f0d37cb876b307fdfbc9645e5f02363002523ec6ad3c10302047c435bb500663064023022f688a8e4f6f1d4849a70bba082a2a68dd7911fbc961bae7ae19fe5ea3fbbaa9539f928d29d4cc4ed877fa05db38d8902306ac984ee7998af9054e7274245111f9eb8d28ab5a9897d3eb29ca6b6dfe82566837d16ed38c15bc3b21b34f8ded4bc4f0302047c435bb500673065023100be6f4a430a8f4c1b058d313b1ed0d2a18ac6d5014bbb54645310b46402ec8c4d9c959ab9fb081816742390b099bab6bf02305b1d60e3f3292ce6a63f153aa0b649643c65b9b84596e6ef2d3de8de0459dd0177adbd291992e6d62707cfb7ce12a7ad0302047c435bb5006630640230538fb8e79c37357383bc8c2e1a34c8ae91f4b4227125853b734f69d21b7dcd63babc8990aaa7760e166bbb2d1012abd2023065e9d500ccaa70db7edffdb376f149ade6bf0089aeaef1f00a3205890bc3b48497dd8af5ce3a6d8bcabd8182cce4e99b0302047c435bb500663064023037acdc118fe00836aa7f3f5a1441d6a8d2a9f10e89be6746df06ed5d9b0dda2a051ccee0753e4a4f656df4feda83b85e023077cee72dfe418a8678e188efb169f6b1781b1501cfbca6d6a2dbcff17bf0e7c0d80428157d251f62aa2f5a0877ac31b60302047c435bb500683066023100bc6b771b9035d2210ec5a1cca01ef4a552708e404f986c024cfb58f419f6429628b45311035765e29994e241ba8486a3023100ee3d0a41b87b551e547722b1ddf7aae2fab05df0b26f7e670ba96a2b0c79d021de773be4754f7968c3c3e17f0488e53d0302047c435bb500683066023100ce1ba732f254d487600206189df67f5a4f51006a6e309ef99c3c08cd4096453e9c0a9f67d8d477541dc9311e1da4ef04023100f4aae4278a2400879eb467b931d34d035db3ec977e9447bee6ea7dae46b3b9cbdbf55959c3625109027d994afc0b17d50302047c435bb5006630640230288dec76ed8f4135398b9ed66d9e20ea7b2e9d44a913e5d84134ebe632c1b57ce42b64501b734ee8e1745ec1c07cf55302303cb30d2ac2aab55a4b06e376052416fd163b70e2470ede2cb5e0b8c7543dab82c0630f95170016468b3d4f5d4b1160770302047c435bb500683066023100e02849ded99be8bf1a69b2df193cb37e0d3a4182602b7f17545f2e36e301d78a514e32ce206f2bc0b16301031b51d43b02310080aa3acd99fdfb2caca04e6473a2e8cfa6f8a904603ac450a3e8478f7f06f7cd221088b46f8b442584ec77052b81f1c10302047c435bb500673065023025f9ab383e1302085329a126a1cefbe76c0b5a4734ec043581e74b5bd615e19a804d716262de818a54a545778c56db6f023100d0562acfe1afbb36e5060963cc5a1234da2c6377e08957353909f97bf7f6548e560025a37b6a817fc85c776352bfdfe60302047c435bb500683066023100ff60f4ba36f068d383ebd7c67e0b75d0ac2ef20c8689ae1e2c382a820d37b14df6f1e40af03cf30d2e76f943597b58ca023100fc319e30ed648ba3e8d1109d15839019513a15a0c8d147158ed61bb347cefa9aca7f5d32ce8f159bdf188f794f16c2160302047c435bb50066306402305dd51091ff9857df914c6a0a7978193f444bb224e3295ce9daca353392db3b70c3c17bf8e963ef8a9a7e6306a5139c3602300562f9fa2dbcfd709ba0454a3f7e065a181cd43c00bd9054d4d4e74e10153f8716a6d2ac3fcd945fbf5b32b62ad7d7aa0302047c435bb500683066023100b33588aa2a63503ea2b2e9dd5f5b8dc6dd8b3205fcfcbfffb4d8ab3efee974e3864039321a887add317c6732a16a1c85023100bcd69a09732ae6d40a2aa601bad95008c4ea00d4e96e9cef8bb7ea13d3d66b39ab01e93b5d875e221f6cd8915076ea110302047c435bb5006730650231009b12d33c1541e21271fdceed947655245fc28767c93e05770ff757668c4304a6785e8c9ac5283dba4d88a28b73921869023000ca96e6aaa4e9d030595725c864e0e915a6c53b91ffc121e21b49914a1fb43003734c12e54bf144347af7bde472e76c0302047c435bb500663064023011a1a237505422b2b8fbd2386a0b9c9d079c757603fbf1074811992c7405281ac455c88d538075732d1c33b411be0a6f023017c1319a0f43974a6d17eb8d2e053f0c1ac603f719cd6b8736c5085e4964b9e49afe208da6cc12add1980ab8dbaecc380302047c435bb5006730650230401dfa842b386c6e7143b2d932cb111f9ea4762a64644fb144aa96e2a46cb1f851f7fd0b83e2909e7e45e91c814a84aa023100a5c0ba7a474b1e313f47baab9a61c3af00a9d42311560b9457166f15442080cd750870fcf0bcca133a99c037e2dcb0780302047c435bb500663064023030f82d6ca2a7e0386d4cb41b0345ccc2cd89041b8a65c7b290038823c6e2ddf765d8323d46ab6065e6a4f2ed230e36020230517b2b3380c878df054febd7bc80dfd41035d3d484db91a8dbd939d74999b2d99351dc39aba288d355f96c8225f395280302047c435bb50067306502304fca220c3507138a9d67cb1feeff6a760f35059bcb361f35c35b0adbd028eb9af0ddb701366dd7e9f1e7e8d62995929d02310084e52d747edf8d097eb299c855338bd398ebe6e836776ac520ec58023a6aab9e4e03c4df7204d45df7c66165d862a4bd0302047c435bb500683066023100f88f467d10478b4e458362b53988409efe4cf83f6277c352bd5be6c5b80dd9d945c32410a0f0696f920ae4bf0ac44d4e02310094c86a2492e9a1e03b87e3078852c1436333e8edaede61a822f0d5197c4889a6b8d6b4590f03ae5ede3dae1d67d8d03a0302047c435bb50067306502300684beed6f958445ea6aef052a3639d17504417787fe813508ace32e944bc9a2eb8de7fba4e9bb93a6fcdd899335e5f3023100fc8767c4cdbf54381151669e2549b271b78bc2584e7b01a489b663163aa760f6c4ab17f9fa44fca9ef2dd6f0463c58490302047c435bb50066306402301a0ac208bd2b31be3258478feeca5b0290641024c68eba20784dc4220c4af4af9b449dcb9d08247b41fdb535790fe107023027401100bbc33514e8b434713ec62948a9dc712595e7aff8cc83c3fa072858c078e3f24ef0a198d7bf6eaf4dcd80a71c0302047c435bb50067306502305191db91fad94305ff32462cfaf72a055bcc3d80507afd8d46dd609e62a0cc0401c353623835931a98b212b96e2441d002310098aee3db66d223a5c0c09231f5ba0980fb26c314ad6a3eab3e9699719566cfb0641adfc8f97bb04df49b20d0f542f1960302047c435bb50068306602310096647caf7b5237ef1962001bfb11f4026b6e1b1f9e81b86ba1d654c4e20f0fc5a3cc7a945aecedd74ea91b1cb857f164023100afb22b2a5ae124d91a113a7875a846204d0d7d70a9aa5092df3357a3a4a078bbf369f7d76254142d0bd8661fd70fdbc40302047c435bb500683066023100b143fe6635d0b1868465ba7f33e5e6e68660d66cbfc85e0d26d6ccc2cd66fc525e40c5957d3d61e977ef5bb637993b4a023100b9847a6fa931778c12b6435263d8b2903dbfb5ae2687bda6ff72ed835a3e724cf41f05fc9c1ab26621d4faea8abd89c30302047c435bb500683066023100b7112c68df7fef7b94df2b1348092d453ec13c20ffd73b2c1eced74137e8451f4f64691df4764eab687da9e0446b2cc7023100a36b12e6d3281b572ce16326f3a0822f0a98295914a334bcaf6f52c237f65f568c15e815ea267b036e32e882e131e64d0302047c435bb50066306402300e1d54f301372992aa5f3e832ac4af454787333a13f285606ac7ed961ee4f665dc59b2677eea7ba5b95da3f93b7a2b7a023056e2d97f6d39b922e0ce98b0ce2338e3e80197846567620ad920ba3629c143164c0c9a85bc49ddfb79c5ab3f80f2a69a0302047c435bb500683066023100964603ad402dedca6ce63853cd5d127d629c7f28435e70c933858a9487536f0d8289881b0d366dc3d23d02527c4a4008023100f4c8880fec99ce0fccabbc4bf1a1c2133653019d95bad65c2dafb6935e6f6f25f1e667709f10d82fd4ce05fc6e0d65160302047c435bb500673065023100a6b56010cb95fb96ede9c0af2b52472d0c0da036bb507b668961b66884d0385e39f05f1c0765d7412c201f25fd03303e02300e64107c842dfe05d3ab56559740903e54071b18409ad750339f330d5a77e760d8d94ea856ef5f3667745fb3fc3e3acb0302047c435bb500683066023100b95401ba6cfbe03f36f49b2886ab25ce11f1a6859e68358495e129ce93e284038860b46b6219a30758ce9bec5f88a750023100e797949b66bf22fe8b2ad4a6daf2279facd29e22f0b02b503b86d8341c3a9bdecde94415652b7092dd8851cce1a7e0070302047c435bb50067306502307a5214e4af5fa1a85a388bfea348073136180d5779bc54fa6340a1c1808292b4458fc5f50be5a658ec9f5b4aaf00e2160231008f8f16fde531b1db7e82ef4065f2dde8ccc3c97d4b13fe9bb341fb04219f40ffa91d3584cf228ca9a53c2e2f826c45450302047c435bb50067306502310087ac77a430e7490e8bd71225c1f2aaaa9a25bc269a3e64500b3d6be918cffb0e85772d317a54900beeb33f9d6a43fa5a02300f736b9fdbee30ecc4d0a2663fd9c2fb3c346d45d9f1ef495d6c9ddea15e8f110f6a1a46a54a05779c35e08c76e7cbe30302047c435bb500673065023100e688a7bbcb87c60dca493c95cf8826f213d43b1c184f140d695e29f72c694b74c2b4cfcc16cdde31322e29ff21703431023054e5523374a0d3cd67b52e139cce15efba9b5be759a1a1befe9171fa1027702d6b58c302274bf5fd46f4612f0d4957f50302047c435bb50067306502307ccc524bffd86f76f6023e68f37bee92e45777a112e5e2665c1ec3949cccb7e6259738ff75a2b6a9630070c5f873b8e6023100a525bf809d188c4942c8c0bfef0a60a3673d9709f6928b3b1ac94390e453ba03a591f10c2970ea1abb42df893491f38d0302047c435bb500663064023002415d4bd52f82ce84d74b7672d2ca027d6baa01bd2ef4a9fa7225bded7d2678f61012c0bf052b3d56ea05f1ccdcad66023021a778fe245512acf4c7bb0dfaeaa8eb7d747478977795554e9302e7a7b45998c8fcf51a0800b0b77a5425f168d41c5c0302047c435bb500683066023100f1eb1cd4ed62fec973d48667529f3bbb645351fffa14bd7d93f4d800438ecfd01d17ea0b86b750d99726ce2ba32a7f31023100d7595dc4eec8b84c2473c49bb5bcaad5e374e90f45e1b94d1b3f0c8a7f1eb357de358063367a5d4913bb27f4ebdb06680302047c435bb50067306502306d48d46831117b43c2b396dc708567381097e5ceca1d94cb28cdfa41ffb3b88fdf3308a89a1672b4a755006b765da057023100911a3c518698a755b069401ba4fee523b31f61088c0f2bba378eb49e2ad7f3ada647ace171aca279879630f908587e8e0302047c435bb500663064023019ebf27cdf601abd20a575a20c471ce2ffc1e0b94f441c8ba3d8c96382e22275fe039e613afa3a349d9b257260ef3e3602306136a4ea9b3d78dd71b828e745b3874601075e1e8b99c2f422a7558546eb1a304a76d70482265e65102012e0b10538750302047c435bb5006730650230071af2c6a041d22186d0916aa8a3d322cfb9571bdfc08c080c237a96a70116f6e09cd37002569249c180942ff4be111b023100bd8dd6ecc8dd7e64cfbd380e1d5dee7e67f1b4f0598f67d30e91ea1d6fb2cc74febb5e50a3bef3f684bc2bb5dc9ba0380302047c435bb5006830660231008d1529eb76311362c6279b3c486a2f28983836d783f588281f891868db1ba0f683dd4411c4b89e22feb88983f8386b68023100f58125a09fce876918956b833cb3f8878f63943fbe64ca9ff54ef50db4a5b87834f5db398a78a7cd9e66a5c5900cb1dd0302047c435bb5006730650230587444c7e251e2e9c3b8fa750ba8f2ccb8a6e5e0e69928961df20a706ead59b4f0a047512c1226edb18acdcfcdd661c402310096e79b6e60cf698f9429073a18611400db84e8b7982d29879a45dad95b91522ee7531a480ff7283e5eac665b9b537fd50302047c435bb5006730650230069ed5cc79ef86a03d144d43df21d40ac276b98773f7ee1cc066e1157585990a01536dc1f5ae5e4edad7c26623753a68023100cea75502084788490b0561f2f0a11961c60fdf365014e1b87c266605a67a5270d20fd92e63a8fc1bd3206f898eb9261d0302047c435bb5006730650230790b85cc856a8a3175aaeafa1803e8caffcdbacdb8402a386df112936a327951f5ede2d7d6d27d547a60a33a56555286023100934353718af4c4996265e18a30263591def5ad9f1dacfd28aceddd41ec3f292e9b5a61919ca4b6c08a40a1ba8da0b78c0302047c435bb500673065023100fa149c3788981e9ee3963c330872943429058ba257ea94de0462a7f530a1bcc57d4299fddd022fea62e86be2c14d350b023060d4c06625833eb499a49971ec830f54411654dadad6a4e8a70745176ca45470cb96496b1f9f152a93f3fa910647fca40302047c435bb500683066023100deac6b0123852294e300d4b25efb1084bca55ac7959691af832383994b29736ce434ac644d382e6b66d0b5094df724ff02310087a5f905ee0ffef7b21014a61232573c7b0675835a60472f73971347159b43099e16715080c024bb4442cf5ca14f92ed0302047c435bb50066306402307e8703f6eb12cf24af5a1260202dfcfac899ef725c37925444e053b6a757455c97f3f3133ea680a391ec2fe3550664c802303d40167355a6b345ff0a982d8f479c453cdf21e208b88973ab716b42993e28f9e1021a9018219256f7310baa5c21363c0302047c435bb5006630640230585b70fb8c3add73aaad1f7bc553fed03f4535529c3628aceb0e3a43b5e4e70914113ad3ca70c17b37d6e42566045efd023032981a4a00805795771c0cab895495ce6cfb3138de77b2a73f7b8c7a2e3b85a0400553fa356486412791c53c069a4a840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306b654880a048a2ad0853025e6e945684718798037386f0d661456d5ecab9c8764c40d74557f2b3dbb340e9b14f27d2b802304d7f9d745e4cf4e30f533fc88c0e25b602a27a105d56810ac0618e0cb1aadd4ac881e75a7891161dfe9c1c385c2a878f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a15bb55c08ad0dfccaed71c2ac892f3e34ecec0939336c903cf0bb81f63f20725a71134c36c8d69b8393babe3ee7ef80023100a7b66d2ff73eab149c58c89249303de1ec9e2b5168477d0d26aa0df0a5ee148b2d5d0bf91136721e7565c6e84580ab670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303390e05384c911f9304c1b568707216065ec24b4e1a5412d2317667bba8da86eb0b6230f5c98794db6a087fa6c958c7c023100b73b2cabbfdd5379d1dd195afc1979a196db8ac8c4dc96a78b157aac9f22ce2a2d9941feb24174f26485c061267e79440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302ac09b2f1cf2f8ce6e83572ef3b30530b43f03d660d80d21cfc24c85c04e98eb41b833eb9a99d5e8ac5011c4f795a253023032116c2a3f5b8104d27507c055fe7ac6f04ad7827a32fd51c492bfd2998b4cba298279f892aa359dc1f5ab168afb143f0302047c435bb500663064023076166da2bdd0d19ac2370f8115ed76263b83fc01e94c01ad38a158ff4ff4bc530da7f1b38998a80fd650f45b57aee74a023064595b7505614d620e5a1efb9e419df66ecb40a8c23aedeaa8eff70843aacb3d8d8933f05594671c4b37885497be29120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023025711e0f0122a340acbe9193f53aa6879c70cbb56390f378a0212d311dddd16b085d73fc1cd0e3d68df024d06b95027b02300238405a44c04f1b2376d537f7c9d66502d338f648206f8dec802c20035c64b51a3112e8e0ce4b060f347d0ce699b9a10302047c435bb50068306602310083b70bb72aeec6e7f839822e99b1bc84b4f42d5f94931e03d1dffa2a713ec591a052afe7ccb292402832c1c390ad1b5d023100fc68dbe25a0820f2eae5ba0ad960d2647e53bd09687d753acb75923df2659718aac87e564ffd2ec4f0d13a6e3581c0fe0302047c435bb500673065023100cf6d2aabe22d02c4a8ccdfadb4569029446ad6f4866fc9f31b4a12e2360dc6cdefa6c1108bc32c9df615fbcedb76743d023049d734eb26f96e12294136984ced4d70fdc793f367e417cbd2976af455af4700eb6721ade6f4032a112e31221432cfaf0302047c435bb500683066023100c4c22b379e90ef7178cf38ff04a3cd7bceb9956eb2a305855dadbf4ae18b9f7461488bec3cb2898f8104f903d24d8d4a023100ece5ea8dce5e4bcb7499e54642244ece0a2d37639a5ea4b8294dac9b0fd5e583003d719f38acf4e2c9f74ba1d28fa8940302047c435bb500683066023100b5ff96e0ad1142119789b1ce482f9c3868c94156ed2ab45a7e3bb76167900574aed57b40df983086d8f56c749f75fcd90231009a1ebb0a448360c8cb276daf730b6231664baa552911eac5120e307f279b3e8ef9062f6f7299fccc76188e640bd671480302047c435bb500673065023069630c47f655a657a1a849b4d022b7b33e087a77fe8fe3c950011cf26b12f01bfd87df0cf605e1c7a38b6496659263d2023100bfb8fe2742986a2b84af50ac87923c34d55788ef7f004122909ff5fb9916da5b748361de921ce3b3cf2690e5bbe99cea0302047c435bb500673065023040cbf3b5a98e97f698ba0c252532684e0a0b95db89c9a07040e63667ac286ad863d6ad738372d309d3c32ed5ea197423023100be61b97ece2adcaf316331c53723dd13dd3784e64e3ad7a8af06ca27aba46ddab268d0488f4068844b60004dcebd21dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100df2329b5044f07366d936b36eea4eaf00c3df8345ab2e0b5a6a9ab9626d6566f078c41293f758f94906ff81fa53bc54d023017e6c4a05c5c6fe7070bedf17b72e93bd0b3b54deb6349c9c89bcea21063bf35353a5387a1489ec839ba594660250ca90302047c435bb500673065023100d569a46222d6c3ada28abdcc20840d9075a53b5defe2143d13106313c1b99a4f6902f0f9f67cf2ef7e5c46a86540a99302301906bc41eaa9a54f418f16a3f3afe373264f01bcdc75c87ae68fce21463258f980516f275b78d21dbbfde0f36f10600a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008f44945ad85456c5c0d09ac8f86254ea13d2e0042596be605ee5534db4e069f7b2474975f2f826a702d794f013e789230230439890075123617366e2cfb413202a8c530c6a1a22987773218b46c48c532017c35f0a323334fbd944dd4d2ae5c1de2e0302047c435bb5006730650230504fb76617702ff478367ca89df6fcbe6e66153551b6e7fc2a9fe9f092b3895e14dafd5a77f6da92bf6c6ad764f96f25023100d257ee5067b3cb6a0a90b85d5c22fb95c3cf17025c633a66a7e17f04620f647d213e7cb09c658a8b4f0ba4f0d236069a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307f9ed5ce54618a427516ba93e784ba5dc0e78634fccc50058dd46013ee2df92328e774bccf64006f7dd75c9a4063612602307da786af69d436021078af3b18ec16e3a5aac915097bb7c11e060c16b7828ee0f3a3fcf34027526a94f3f1c2323510170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301da076da153bc40be830f663354f0bb177788ececadcefa60d8097c595b93a8b124b6dcc527d5bef5cfaa5b0fce2ce37023100981a32a7fdfe369eacf136268c54a2193cc8ec77d850231c7e7494d98a4260be81db970d1217096506df85787ae2319c0302047c435bb5006730650231008264a2452c62209b007cb566dd77f3b9e93bce9e090bfe0b151e1c8126a96afcb992d9ec17e0f127f58669391d4ac08d023057007c926c760493be1f364406194100b27fd470cf919979b5b3556ac9b1874e1318172e0f53b184e1350cda708f642d0302047c435bb50066306402303ec81295086b7edca9fe6b13be2d9a6a65da9f8855724649315925d6af968bc6fabdc83b8c54ed7569f54c670f2f2a9202300661ef62a5d9ba086cfec65bfd5051b1c42fda3448d6140188328e850da8541e94ac66835a36cc20f11fef7a640e214a0302047c435bb500683066023100b6f23945c999fb39a7f99b97fbbb3bdc6ad89ef2e1b8231e576bd88ec04dc09b163c7543920fde1cd954d795fc20c42f023100f8d19c5f3d4a770c34300de1d35cb6487a8c81b1a21265fd9448e443f66bbbf436ff50e679038f3291141a442f00074b0302047c435bb500673065023100e9ccec8f2f3971fd5d1eae6033c3ec1f9feaf30fd446cfe22901202dac015c63b5d438b2870f6ae5a9e018b5fd6738390230552f81597d38afada1705dd72116fbb361792becef945614703cc3dbbf4ae29fd45af262c32b93770a7e4d9c0a8c5e1a0302047c435bb50067306502305e515c7951b9d73cf2ab6a9a1b2156db0507bfc2e8945a9593e133be338cf7f9f0d197d470bb8e69ae40a64f59ba165d023100808a87c0fc2f4f3674868199d4abe5022f6afa4a2cfe67c739a1ef1fee52e15180a24beec739ddccefea45bac1e57f560302047c435bb500673065023100faabac24b07f8d28c1b3572cac6b4e069027ee9527387c9e2b669febf489019d7034e865eae59c7e55b9fe58884ff033023054298842d8997080e5c67f1b0cc2f1e300c9cb7282d9aa89bd59e392197b80328613a2dfebe11c356016e67cb619c9c90302047c435bb50067306502306addf62df01ec84a97f9739cd33a311792e856f6aa8141576fd6e2794efd23a0ddd3718eb9f2f0f109a2fb250d72d782023100db7302acc1faa08c5f699f9c38a1de5cfac58d5c49e055b3b01d469498dcb6a0da91acc9b332585eac475626d2f4b5ef0302047c435bb500663064023003c833723d8a7ca18cd8b687884c589b7ccbfb98f465c2c0404f439229e826b06a034080ada7242198f5070bb9bf83d10230188af5510ed9f67b57f2ca0be16f5040e31a099747bd03962b22b7be32299704db3c5ca44d25dcb0c998b8b2a149224b0302047c435bb5006830660231008d6cf5dd415c7e792a0e60b9e8d0121d0a3dd1f1340f0ffbffdcdba795e4d7a4f4fbf4680b14eda91c7d40db25613345023100abeede93de9c8a0412f785f706d393be5d580208cb164ce6d387fa74995b7c6aa4e442d0c050394521ed8370768183a90302047c435bb500673065023100f8d8b0c76ab1e8cb26c66bb289b86d8c24ae84868d4a35547abc0d377f9fbc95e9c82fb237642641bc2d0ab9eab2cc490230091950f3f5ad342ec79aaa08a26406aa7a9fc847d9da5f1d98db8f9f0fcca10ea3a4a9fa929aca367e1c27e7483f13570302047c435bb500683066023100f741f3a994ea67591817d752f934281a5376a891e46499b92b3bf9244a26fed0dfb027f1f198855b5b78835d522393b90231009b93bdec5956204db2e550a5bbc07ebf9e62031bbda27b45ffb1f5e7e19389414e0ee6bb725d38e83a470eb852f773a20302047c435bb500673065023100ec7279b0be7b81e152ae606d64dd2fbea3d32c12c247ec2a70e978e622e574f39086afdff6ac781677b5f5cc537f9b7b02305734293167af19975374954397eb766ffc9a77af2eb2146fd37d605d8a41bd64547c4fec4baf74c7a64dc768472f7c660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b5750fc2d45585fd852c21e9a0dab5da4860455e378c34745e546588e7543bf8b25374b3d7a2052381a79952a94d134502307e22af51f3d0bd827f86864f2771b0af181d5287c29664907f61186f278e5f88d4e956034d3354f06a68b64f27369fbd0302047c435bb50068306602310088c7b1360c434e8e7a9bfdfb093ed9a4af90339418ab1113fb779a6887a9c4eeecbe822077171645aaaa3f2fe8edcf8e023100c4fae13bd9e3f8523f0e544641eeea24f2d26c6f30ed10057bfdd694129577d873680aed5d0172aa6b55cc4aeefc4e780302047c435bb500683066023100fdefb9d566486c198ef129a9a45cdbdfed256981bce69b01cf5e096ab527d2159dda9490c42fd33aca713dd89fb63eb6023100d765001b644044479bba8953bd3e45d2b2116024a448ba4486874a3bd484379ea8a5e403dea20523e8b051ee61e0af7a0302047c435bb50066306402301679176d6873cae4013d2dc7cb55da547ad4be667d8e73fa229b1f3a0b0b1b3f96d3750039c7e27dd08e696f4436003502300df9a533ad5bce657337d2b71d968fbd8d277e2bb787c2c5e6dbd849cd4706e42d2ad94dd5499c2a539fc35921446d4f0302047c435bb500673065023100afd669761f53ebe2e04afde4be68cd56ff66ae6dfd10525454b684064d639e2803d2f2b54f1d7d3ba91c76cee89985c1023076de83f145fb43aad055a9706ef9a0cff8961a849daec22cd67cec526449789518e348141c79a4366ee88c58cbafcc0b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fbb132d474485621fa0c823ffd8c210228f2f33fc18fb96b53a6b8ccc8ab2b3c1d40eb1fefbb028437268aebd120da20023039168adcaae7be3eb9e1875e7e9346cc28541d31001299055d76110d7635d137110b7a8309b8ae2a99e09e5cb5c60f780302047c435bb500673065023100f1a55f70002b170f486d79040893cc9425d021cb4d71d09b2a5c96db0957fc63b6b8e6389e8c7a7eed84d93025c06c7302307dcc05354a56970be4166e84d2f1895f2907b32e5a723e025e5aa0e05b1371deba323ef76c5fa4aefea7e76e68c9eaf30302047c435bb500683066023100a9eba7d3d5af341938245e980c0151f68ac04af4e7d6b0967aa81e4c1458cac121026a634597e2937ecfa9c6c4d930fa023100d3ba2d0d80e64b855f5cba5e6ac3c2dfb4181afae1568f488aa874c7fab24931cd9bd8976683e6720d0546e7758d32860302047c435bb500683066023100fe9e0d6dbb57644e1b82764a11e820577dff21107451f70af4618aebe7e89a0711b4d4474064a6c71f182dc5200a5055023100bb0b3f74c385111d0d6d88b0cc5c2b19063036a5f09a187a169ee73de8cedabda201f2781e03f34ae49d78a293f4b9da0302047c435bb50066306402304d2569a2a42c60c0eae5c689323fc06c8cfae8919c4c3b9a266848c0267c4b792d5988a059e71293b897b084f021286e023008f5dce2cf61a1bafd602e79d2c8b48d55e8b98ca8a1b5829c59237b2ce7e9c0165f3e9cc2fa09b2202c46a668009a8f0302047c435bb500683066023100e9b4751031b40384ad67e3fbb398b977a0a825dfbb884dd1e97a2468be3ba7b758c1eff215e6d7ab3a2e347e2fe64400023100ab2921c515e8dcc1d6a745a20570f3d272a7550a2d1b6ea8ae2c809e247ff14014d8e18890b94ddb568e861e0f4cbea00302047c435bb50066306402302114c8aa9da714342be3a26c844132194e27ac318178d7bf9aa7c7eed8638d8daff7b2be9415f450e8d742a0888c66dd023066967e718097a87e4ff4bbcc0cd88bfcb9826da3a87822ece1bc029a3ba3d794071cc884946cf2379aeb56ce6cc4c97d0302047c435bb5006630640230573c83739a44d0f4ec1688d6a2d4dffdbccf317989ecd04705652ed0af3f987c2877715474ac6c269548290a6c20e78502306e0aa432b969844ca942d0bc35df39ffdf322c1d35bdce67a8d1a2ae7fa979f98e2732a85967c49368a8829602535b2e0302047c435bb500673065023100b35f9fc688d12b1239b1219ac52443bfb1a7ec2871ee6e46a61fe2fb7d64a850f58d314638dc63d404f89166a338061b02305216b2a576fb0fba893c30929b3612d4ff8669c192b6153a657c8d081a4974055f4018ac8c586493b8575f4cd54e5aa20302047c435bb50068306602310089ec0f55f8576ffc343b0632a0c951b0a3533ff86559c2605ef56cae06c364eedcd7ccc70ca492ef82151b38b07adbe3023100ae81e219ee6d5c374269d9ce3deb57a53e5ff39e94eafe4cafe7301d9dbafdb8cc7b51d6cd52ceec45580b9c781e0ff70302047c435bb500673065023100c2f318fb87d80172f80ad116ea99a7117a431d81481f7a66fa7372f26fa32b045d933f480c805dcaf24290c73879399402306275db0991283b1d19964e0f7fe5e087b5a8a3a8e1b768d03e559d05e173e42de4a41de2bd71899df43f4cd36f768c760302047c435bb500663064023024f5a191d7bce65d2f9c6c9cf2640cb751b5619848e0aeee679c768e9196cb540afc8c17146bdeffe5956a61f0b1e08702305b5e6088dd4184279395e5789bfdf2ee5e7ea9c1e87556392398cd5f18cb785d6cf32e099149359c44758264068ea2d10302047c435bb50068306602310081813f7c5912efe972efa45b823b01a4de00247e4b3eb1059f5339eecb4e2536594697f3eef174467c31661cafbf5e3d02310095f6ebda8df1a142cb8a6f7a53780d20e519144bea8dac98aa7327f9dfa2ee079520db5db64a7555909fd1a02bf52b560302047c435bb500673065023100c91f9500f5144f2e0bfa034e404f913d2b0ded4e1635fc831e26a5aa48c2cd2869a148a3200f0bfbd91a06c4278f104202302478ba79a95cb6041a4364618c0d846f67feffc78e6daacdf2ce32e3b13f9653f3a4d2e7a02ba38f1d3440aa0f15d4810302047c435bb500673065023100d28e954b3507844770eedb590722302fe476196cf7d3e2ea8307e1c927f9c43aed385a563b6d5c236c4c0e8ae7e3a34f02303048537f622827da02d022e610ceca8792191224904cb4885bdb07438d926e5d63ee6ca0f6d0066423a6096a5664ad230302047c435bb500673065023100eb40462b1019feb4393ff34c23515a830e4be20b3a20ecc9e56557ab305092877ad38224c54ac4ca2b102a8523942e52023046294f580d58ac363948aa183451deea76f6d16c979238e60a95feb3934d559f00ad14be95568fb4b8f6e8f1c8d9f0720302047c435bb50067306502305884d0821c5e838e39171f143d15fac77028d53027cb1f57963cc9a3f2e7ae1db16bf69fa77a027515f5159656d5582e023100e7fdc9c0c07c996f6385e2be611b85e3b9e841a9418f2061cf2ab51b05308ab81c47ae869869cd0c0d0f151106679f760302047c435bb50067306502302f2093280d6649cba750fbf18503b353be1358647e642cf3944ff68295e45da9fca4e93ccc93ac52425fac45ffeff0b502310091037d7be4a2134386378310ab90aed994c061c01226945093ccf178278a73f14d2e5c68d30d0cf9430aa5a16a8eaa870302047c435bb500673065023100fa5c0056151a1cc8400d8d806e02e9166faa192e9cbc7f6939a5c207f0ca967eb2ba32ef6b32110957110cd5f3ff0912023012d4efb199b6a5065f8b72b036d56a828f21bf43f9490f1c373f85783584c5b120be4fca2e786b7d7ea3edb90a56a7110302047c435bb500683066023100fa9546acb9e0b7cdf101370e128daecc1480178031b22eb60e9896bd225094e04f7e6eb0fd4be80450f2729255e7ec730231008f75dac0c0b182c7128159f1184fb2185fb6de259dd3aeb5999444a61c5da9ccbac2978ac17d5217f8d2a7c1170423210302047c435bb500683066023100d64cc6e1f5aca99e4e01b1f51382bb9ad5f23e5ad706379c2615f562bca993e97208cd2a71edffd28cb6b4ef78e9d1b7023100ea22701065ab1bd555615a45d540147336662c2a7ebd2e065a50a79f2bf5d3c0f8fa1cfd6c0921fe4daf382fbab4068c0302047c435bb50066306402305f1e2a1c5ce340cfe74d2e2d01800dee1bc3e0a873a5a208d0c25a5de13ddf8c0ecd01b70002803cf05a36680876716e023010ca7f7fe48957c344c65af05bf9753b954766e78e5fd91ad08bc9524428a7a6c72303d306d5e143abc45924b25b367a0302047c435bb50066306402302c8588cc488cea7d1a4d901cf970a6106143614576aa7f0ab767b6b5461a6216f6ae61c838237432cd7929ea61933afd023067a598f8de938fa89e69d190adca3932d6a49789195c8ab6fe702809fb27cc8cbc89e8091b445ebf6e56920c7bc459ea0302047c435bb500683066023100aaae6c24505fab09055c0d10a6d0bb01e3f59550750ab01fc7f6485f4f234934bed55dd2f1590e1071c181fa4b33c5b8023100ca68d5d7ae81f7c773bdcfa814d111f9cd4808f0005672ceb728715a9cad6f115398f94d62e96c253cd2dfb1e0994b460302047c435bb50067306502304f49a322bd326b3a116ef220eeb202f3bce8e8cc749f1fecb67578c0b056c3e50b4f7e6347686edf928062cb28eb6ade023100b5fa15eba7b19378fd57603baeb9122446deb031ac03111746174738f34a599b39650d582dd84d181c8eac6d8d0d63e60302047c435bb5006630640230221063c77917e81a64e70b948d57763b4a97d762624c957f57230904a64fa11caa3c10d875b5d11d51f160f478d2b167023079f37f6937b154ade6b27f9536aaacf943f04141601e01a41a8cbf2d6d1a137f16a0f39820a4cedbcbf4ca30d32507c50302047c435bb500673065023100df9de052756cdff42abea0e1f947d2162498817a8aa53c1757ce33f3c57653dea2872f8e02a0659a86bfb3e3db06271e02307136e36f6656a145e48ef5bcdcd50450553ca5d6781553f14f574136b30ae89cb5194ce7643f9996818b374ed74a6fee0302047c435bb500673065023100e3aaff13eb97e1a045a2103812f68ac26c2cfc5bc76998e9cdcd129a21f5f74cfc2f3312bf79f5abf00c071a05a6f915023013d70f539eb9ef0fde96a07b8896f36edf5e5f2a61a0cd61f04333a9fcb3be06b43b75c0f9b4b705bf3ed0b9488999330302047c435bb500673065023015fb7a90f979b2c3c3e30889c45afdd3a3f04f08aecf3dc4e3e568e474321d51118dd361e33ed553d17d722b52c3db67023100ba11e8d26447dde2b19983eefaf8066cb059e290f48e1b3e2232e865c24cb5132666a01dde3bffa34d2963c5a81af0650302047c435bb50067306502310093065be2c0c13312ce61f8925592e5cf6c27c30ed2d66590072193aa92c8acd98d94d74114dec4b95a90f08f5001154f023043584455d611cf6170b0db2bd5a4051554f86e13cd9ba35c184afbd27b088c65dadbbbfb7b0a9042cf8bbb2a96d25afc0302047c435bb5006630640230620b1453a4b18c884d966f1a435bd23609aeefcbd7fcff3ccef736719903595da7e924fda306408c5257f56cb3916a54023027393aba5d6795b46f6c2243bc9a1a1541e49d8aa37fac89b5a88d42d4d2cb1c46741ca5b8de96659c177e587a676e150302047c435bb50066306402300bb0872a1cc387a6862eb9d0ec92efbae614932bf3b171f302d75878be8c0fb20afb9452ceaf9baf57bdb46acb274c2502300d7e570e232030db7121b7be8db676a9474d1f231e92b4426b37e1876dc44beca83e6a6400af04eb60975262c4d471b10302047c435bb50068306602310097bef1b37b5ee854b7792a9b1539fcb0b7e9021da6bb83fb905b693fb07dc74b9622d7419bb0ca90181c0839fe1ab693023100b56fa3f733621ad066d65c4877e0f6ed67a14a86a5925a14fb801f905de6c5898e7e2fc41a49d8148faadaef46550e940302047c435bb5006730650231009d3fdd903a721c225f1b1df6848ef2aecccb115717bca13cba178840886609c8fa73b3085428f2cd3c79d753ca3d84510230386ba13ebe6a50161ae0e08e6e0d5444ce24371091f725bcf03369ad2539639f3bafd4501163eccb373272b1b89bf01c0302047c435bb500683066023100aae263177534348508751fb6c43796c3a261ae15ef069af7170ccd4c693f6af6485a64da5e494be766945e42e32202a60231008976f6fda9875ac24475c4f25b70bca2a9d79291b19c55bfc1e3fee3a1b1a6328e48802f8931eb004988c33c488440050302047c435bb50066306402301b6a78567c6fc2ae088e451ddb819b612a6076bb4dc30168c04e7fcbc60c4efc40c89090a96a79c78d6f832477df8cad02300a8b8f5df44ed7ae809518efaaa7a674395e262ebaf4e6e08172bc5ce650b2f305921ad0e3b521cca3a6f348348876800302047c435bb5006730650230216be13c42f0acda63209f0995450f2c123ef5ada860a860861d13dd0383327190281e3ea2c164d8d671003a30263f6f023100b30aa1055a07b44c10db69df77a9543edca0f3fa959f3675d0771c9710ae3b495edff0af1c0b8a2e9aa459ca63229d390302047c435bb500683066023100c63514059049f8f6b3c17c41222cc6008687a64a2e4fe645ea8916a7fec3c36970ad518b87b0439e9714ce5fb252fcc9023100b812972e846e3fc60aa32a41c5805241b869ef5357d6fe7baf3521db97e53cd681a9582bc4c136ad29d3a2676c1450350302047c435bb5006630640230158cd419c5ca88bf923c952db04e2c3eb0a2a224e5fa4f42944fd8f66443f947d2a24d62bc754877277423fd34c928db02306b82ea75a48965b785f8d8b5b15fd1ed566af6f8d0c5fe663ed539f66fa780b3cb9b60e72efe03f8b7d193d9c3cc315b0302047c435bb500683066023100d8dd22d7a5a620842a4fa7d4fe092a1e78f9ce3b66f505896de35a4f101c5ab4b55f54c838e3ada05da39a5467ef49c0023100e90c2b141805d09fa3904883be474a75e70dade7baa3b5f158eb355ce09e017aebe548764bd46a762238750abc4c885d0302047c435bb500673065023041064840cf846c2f1f35438cb3d4550c13353f77b03544562cea46f9a35f57f32f31f7d7f8ce3184c1fce794178ce971023100849284be3d262442432061ec58e1f7fdf9981c20e65d66feafc05ed8e9b377dbeecd7db3fd8da981db642a727235ecfc0302047c435bb500673065023100b571df0d1e484ce79aa53ec5c99cf538a8b4252c831a4c2c107b7df450b60f27a1819b8cf764a37d5a651c3f40fae9e20230552a635f39ec88fb46e9697e505d6d7c6d07cced3f3f01d2dfe3e90f33d0d46723d3a85c89b1812fa9ea182a9560392e0302047c435bb5006730650231008292864688a57c12b65e9d4d1d36fbf636fb34d4aec21ab73017f7ec4c1161f496f65b190fbefe7071071a2201757e7d0230434872cc162bbd7603cbc4daff3898d657160472f03692d9b308ce32189e8052046b6613ac147601ea6303246b3d3b910302047c435bb500673065023100c2a780c973180c6d60827132adc3da2f3e2beac80c8f1bda8318d9e28b82d7704fd0052ca24c97e99ccc10f0f21e1c470230651322cc42438931b21aeae80d3a175a961c5201d05e3cf208c6616da3d471d0ea8f62d8196b5f14977270fa7cf182fa0302047c435bb500673065023100a2501f4bb312c2fc65bdb58fbf62737edceb8a780343d1f663c263edbb8d0c138301623246ba2efac24d9e4bb31c046b023025ac754a9ab05ec591ebccdbf4ef0e075d4e591a044d0efe00233ded6c3d3ea3a808e3ea1e05df73a8731a4545e85e390302047c435bb500683066023100fda00e20ac984504f0cb9ad47cb57b8e8b7c2948b37ca4af93ad1421cfa9f7ef13a75614ecf23841c72617f881c1406e02310093848b7b9148219d44be20f6e14505f930951531173d041c81d75f43bf2bdc5df6b8477cea5b1a81c82667c81a1b0ebd0302047c435bb500673065023063a68799c00a3f7dd0aca553f1bc03a6b2ead9bec91df608471cc824863b357e150c5fa97b9b6b04ea5ace2a9ab957ef023100dc07029c4d7148c7d0dfdcb15afc52f3a79f990a87015ac15beb363506d299649c1f68731904cd224efff91cf5f409880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230198e7946e4ab92d5a5e3453b9e52a89cdaa4bd58399e3696f217e5e69256dec72b770d9a68d76368bb64e9f7cbc7cf3602310082199c3f0c4030a5a1639c7c1b306638f86e5614b9971b61871540eee8daf5de25ba1a917e53778cfd5553391ab248f60302047c435bb500673065023100e2f6fb33f4d748f1bfd8a8f4919975d825aaa9aefe54bf137cf20f74dcabb4306c888c28a09be42f73a8fe32439739cb023032ae1813dd803d3fe5e76f3cf09ce479c9cbd48c22df11fb834feadee1e614dcecd0fca69082aef7cc3bcc6a5c4e68230302047c435bb500673065023005278f7b269d7a1b2dbbb6a4d75f1d6c322cdd61d4383f6990e81713d128813631d7a1de015b02535a6ec0e85f14d043023100a7cc2044f0c78f6f351b4688369dc803691302e2b8cefca28bca598ccb34a006b1c21d9fead1ffe88ef434e5562651d40302047c435bb50067306502305336cf4f55df0c36a9e919b7e249d200f85a95363d320e4743a8589243e70b8eb89d94625acb2352ac9816769a85a218023100a75a4a20dcc027c85f0947d5d7cf8452017d308880cf1746ad38c79160ec1af829209cab4424e90ade11d2e76e458ada0302047c435bb500683066023100ecbed4946ed743f0164489396e82a8cd15ce9e6c677d96e441d31cbe753028c672c14392577728f875bdacecbfa1cf51023100ed7ce0d5769da434b44ff0e4e0c2a88d081ea87c74fe83ec12750d7a446980622e2721f9687d8e52a5d71ae6d090f4530302047c435bb500673065023025b9f4084466ee97f0f1400adbcdedad8f5efb09593a762ee1eb547ad885483a8edf35031a62aab3dc4440f73476927e023100f923f886c2ab4f71f19b2acd023028d2ac9fef26ae2cdbed2a14122778085a2e2c23daf6902ae03072b1d8eeeb1211cc0302047c435bb500673065023100d6ea0e0992753ff13e128e1ca1c4b47ab520cf37184ba8336192db55168d10cf54c39531568d4ae7d0a29c004df0bf1b02301216f7a7ab0a00f07276282ffbecd02ad3642994a410461ee7d14eb431320358f43f52615c8dd3fdf7918ecc88f397250302047c435bb50066306402306e539276e08b48ba93e4b9f466ee6127a66b61962db49abcaaa51e8dbb910c88d387b9fdeab6418945ce5e6f3c0ce54c02304d9a1b588dab3648d0351bb9b5d36236e37aa825ddf54a86a898141ba8bb96d738a575f31a2009f59ec61388a409abf20302047c435bb500663064023015dec6061a3d6fbfb9d167477a5c45120afce034c2c8c92685b81cb05927b72bbeb3c1b9b68a391ee99dfd828054864d02303e7597cb3eb466a3a18bd56f8f295f4a0e4c3798e0501952fb5936f6cfa83152c8883a3570a9f889b7ae97c61fcfbf4f0302047c435bb500663064023079ef83330f6a5256bc63b6baa5f53d0f95a999237146da83a04821b160769d25b837cd9f02eacefcbd623b7bd6e9ef0f02300c691164718e4aaab1d8c9e35d643b02de8af36b8547bfd6fc4a0b954b5ccc6c9dd6bbbceaaef205f10542f2cb5aa64a0302047c435bb500673065023100eaad7799eea728a2374d1bb6702601b1f418e90f0e3ca12cd05e76dbe432d6e97b6334fb6453e3a484def3f24b2636d00230119235435fd61e04ffeb945d75947e829459a4a26b46a9e451d0014728bc6878842e6b401ef51dc42bf45dd66685e8170302047c435bb500673065023100f426741f249db08d981dc0e465952e8a2d48848f1c58c281e1cb5eb983c758251101312a751dc4ed735bcb0cbffea87a02307f86abee37a9737d98991a688dd7c041f48d4e3e49e68735be98ae4da35f9f145d838d1468d92e6a225092149556a4ee0302047c435bb500673065023100a5ac4f60b9a975c9a3a90a256f7749f019d47f39e6b184f246d69e7dea9efb524db3b67c955bae9c503ea3dd41b3edf0023078a6eaa13322ca4fc9bee494dc57a6d8f7d68d32def8bb7a828cc7ff3871da79fb25e2e56024ed50f7fb4f9d97b097ec0302047c435bb500683066023100dacb09e5c1d7bf88680c36f79683e4b5b2c684c12d4099f0fd5b4c77dc48212e1fb77156d39a544758af1c6a6159cb4a023100867cb71fe7002f17dac06af3656e902b953d6dd46d3a7cbbb0a7fb8925172a8884a9b6c191b886ed262b03fb16df16380302047c435bb500673065023100ff0720fe2bb66d163653aa7a8621662a74ee59753742b6ac570a6c92c7a4c00e4366ede06d06c0b713cd84b17c5a5c5d0230132fca7302841328800a2fda7897d5b5a05c839a6360fe433a33eaaffdeac2c56cf199be0aa224bca8950461e2dfd5260302047c435bb500683066023100a9da2d10e53c44c98508dacad11fe3d11f82a89e9c54c261b51e88eb02378a2e43631da63fbef7ac2554c1743c7780c2023100f515f41603709458a1d45d841fc7ef7d1a5cc66dd128f95bdb0022d7a5c48e80942e11babd3be4cb38c929540b4a2bf10302047c435bb50067306502304acc5e407d02d5aea61593a2d24f1cde0894bfada5025c65a6f3dd6eb2d83288886e716b17b7746181e753ca864c0beb023100c89101ad0950a91d0786cc7ddaa53df0188955436cc3d82bb65a68c4efc4bf5c7eaecea73f6dd9a1e1f817aef18e5fd80302047c435bb500683066023100fb2a0af3b0878702f95177491dfd7be1929957dd991ee2de377484a90b7ba7028755dcfccd4cd8a9f666cbde1dc2fd79023100bcd21e7dc2c16b173a66cacd379da711eeff039b646beff97ab5a9ac07426852baf525251fe7f9e3883b54b5cee674c40302047c435bb5006830660231009c707f30a4672ce42478e55e205c5fec3934854c05e9465fec6357cd2c44512c02f428561589b252a9dedf6d826c272d023100a7d624041830025a644c136e55d5b97346fe4699a37daaeb1a58bbce3a8c16f0d9a8b116f3c008718d505a54bcd3860e0302047c435bb50067306502301b7aa639cf116cca26dc24e8e0ae304c6a697d749478160a9a1beeebc391d1ad0be0af7d958af914c8f5eb74cbb7336e023100f28c01e943b672fd87b7d798774517c9b57db2594cec98d01facb07511d9eeaffa1136ad8d673571c6a9004fb5026d460302047c435bb5006730650230409668863a32d436444683ea05cd966aede14eb102da2527fa37002035a6e70f3c5fc0d809d4b140ab4f8942ab14fc90023100c1536c9ab4098cd0c33c47e90d7ba6aa158a8253efd5b583102649ba766cd5fd0d8c86de323af6ccf64311a10be2f1e80302047c435bb500673065023023448991491b1b6b0c41c1216769c8d51add5d7f19e1e0e1561f4effb238d4df7aea00da0ca9ac3723f016d157ce6603023100946eb47e542750f9b4eaa58bc1fe0c3e428661c7d933cbc964ffd79df388f5606a2b41a4c243e1a88fa3cbbfc91b564e0302047c435bb500683066023100da4e0cdf4452fb60cced679a81e281b2ab8156ed6fcbe9b86440437b710aaa7ffd8eced3a5c8526570d6451389753f35023100ebe8381110291ff654dbb3778bfd4124e4b56aac749b05e5a156fc12be0f6eb515b9c806ce9098cda61d01ac7bc93b590302047c435bb500683066023100e445a07c2151a816658d683db99380772236c0cdd58345c6a3b311d5106fafdd9066ebbcca9e320fc672dfc3a4288c1a023100848a48b95d76a2ca0e66c8a235aac29a2a7c0a1a282b0cf5ec7b3994fcc15865872006235d7ef572849deb1a99eae5780302047c435bb50066306402304de35c7a0bef5d068e7de506eeb16f019b3bb26e3e5804f0d10ec2b44579974a24427affd6adbb7df4c3774ac2b910e502303ffc271d6d3326222eeb18e0b04cdeeb23f89312259b7f4f9ac524c10caad8834283cdf1dd9b4c0d7a6394344402f5ca0302047c435bb50066306402307d388da7dc045ae681a815ae555a93f021a2d4621724e388d290c9cf361a9b0aab010afae067c2afcb6155dc7ea724a00230562eb29dd4af942f6ee017061f0c16926000d2ba3c67457bb0973617e15660b5255d45589c01a0757054f41c8e428ecc0302047c435bb500673065023048a5117a9daa49e6e318a3b854a2bb323a1b09b3b448f0e5c1a2acfb2b1a387a0ea1f65237bd739abb71ed26aee0697f023100e411fcd55e4deb59a31ebabeefe01c3149bb55bd427d048db201114956b1b4d96e114b0e11fe46b4b79364b5a485235e0302047c435bb50067306502310096217421b6b82bf4b8b4dc81631f2368c36489f3ab1225669f2683b96727a970c0617b5154b4c33dea6a3ca52af5b614023077a5410662367a9a11932f77ee68d9864ff82a85d86e8d012cd7d4b11acd82beffe2625ddf0c49126b178f4ebf61cbf10302047c435bb500673065023100c9323e9f4d6ca7285507bede19aa454ab8764a243192e82577efa480bf808bd982a75b70116d7de2a7e3c78b7bcad1c70230551aa183223ac63c40b65267077d6b8d5bd13fe90aaf70e3e477d372e956d65e5c797039340be8b5031d866a98883b810302047c435bb500683066023100fb508c99c53e062bf8e05e50b3c6676b4cf9ef0fd54ae25e8260714593a0f677a6c815ddb7d4f462031035c6456c971a02310085674dc6f30d2362b3e08fcad39bbd42523e1e2707a9e8c1a9fa6eca205a8531fb8a29de8f6a7d04ecd13763496e53db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303a71a073a370c80f196a5898eddf2ba91b0d36a776282ce73889c45b1586584a82a8fec1d686d46603a4ab1fc58f5e4c0230557219ca7e29a9c195c24a48aa2486e94832237b18b8b34f5b065143271c5b5835a03d74a721ae522a10c239dcd576090302047c435bb50066306402305712c2a927bc3f9cde8cb0b9f3afed03395068735504be38ae68a4d99729b8075198c3842fc2704391d38ff7c2c525ec023053f80d6ecb6a8e44f380937527455e057398bf4e06c50fe8b4f17210325848ec4cdf9aa6cd888161b7e81677bdf251ab0302047c435bb50066306402304faf8e6ddd6292a16801d3ba7e4d0509dd259f5ee3bbce157364271bcfb4a796ac9a7b10e3bcaf303a15d2e68a1c9f2802306ab820a6694cf14a762e82394764b3c3ceaeef589ea86c3e2d8b91cf2c20d3ec2e6b152c23ab8258138d8c708aa47ff20302047c435bb50067306502300616c0ebba1c253d24381ec4e012fa47fcd5a7aa930bd20c16ba515130bb0c063047b8ed5f6e74dfcccc6dd99f350aab0231008c99b4457add2ac552de2fb40fa926afa4267f8bdcc68cbe092ed9709ff1b4b294d146cfee2e56c924a3b3180d0f16430302047c435bb500683066023100cec0e5ef4f99d373ea9426170c4a5af0bc502c17bef5228b06171a772b814049726c96d67d0574a2e9ec2906bf617eed023100b0269e5c8656af1a057d23d214656e319834375e5fc900cbf520904c33998a2e9a88137b6c56a54bdbce78f00f15fc860302047c435bb500663064023047f640cd0f2176b91ae5e766dc8b0e521e91ed85ec17276190185d8702bdefc21a76efab58ee905406afc88b01d6efb702302baaa39fe8b6c3bef8c6b2fd7f16d8061ca82000884eb0d76280743e14ce1481a2abfbef85f752191d3581419661dbf60302047c435bb500683066023100f00181b2fd540d4d3657298470d720adbb3b797c508fe653cba16335f008a5325abbe45173c7a37ad90eb2958f913984023100cde2338aacbf6ddbba72b9cdb56ffe4e54eb466ee7f2e3a522775b36fe00cff5299bcee0e13aed0929ad64c589b0898a0302047c435bb50066306402302837088a7a73f28300120460d8ed0c257fbc4bceb0ad775b1143d85648ba95b7aedbdba0aabc0ca439516126a1d285e1023041f9724541d023110bc6f158fce36249bb20a78260195a4eeba6107ff4a70f51c0382754eed046cd0b71d13ca312860a0302047c435bb5006630640230582a7bd5644976a5bf9d04e51bfc4405aa4048c3f3e9ace1bd29e8803c5a7cff92158785db55d73f69c2471451216290023050047c8670d673acbe47028db10c9f97d19c7448effa2c1688dd68dec00c18cfa38efdcd05a5ce01fdf61a5b6881b1f80302047c435bb500683066023100b67099885675b7612204dac726e5b61039c9d61be3990a26a0f2b038c6ee339f76be4910e7944ff7b13a6c87670ff350023100f7ba69b4f1d0dc6f8749cf7ec1e973d16c33f545cab4d03d23bc57f81b483f4e6a2b0a1d493506d2fe4788f0b4bac03c0302047c435bb50067306502303440a97cf7ba6be327362affdf920f66d75a8f2d23679f4bfcbe3ec075ec8689578fbf50dc3f6bc66055ff16a6e5fb59023100a62c89a6891ab027a7d9792603a9f387feb631abcefb0c3c9be74274126c586fdc0a978e14fb7a6f0cea7964d2557cc20302047c435bb500673065023027245ec6a4ebda5bf902f51343b0dbcd29d90439cb095a3c25d15b928fbeec21bbde92f4bdde6a9e9d2d1782d39fb18e0231009420c8aae467a713aa1f43f7779e64695b30da86cf05b2a6d70d06a8e7a9e5e2adcba06ec0181f1f1635c164a4417e590302047c435bb500663064023065f52727b292e2a9e8c3844711e0619a9c9121fcce20a3dde29b9f4215392e673851d6cb4a0148e8183737516e6c429e02303b9893e2a50a306c3ae27e38121177392efc5c2831023ff97c3ac0acc9cc439550d11f4e9d499b8a31ff0874848d257f0302047c435bb5006830660231008844af394ad3697fabf6bc3e20034ae4c32ea50dd3af103ffb8d448c91dce23354efb1f1de5ff96826146f46cc1fdc4b023100a53f800d6f1e4b3fb48e3bfaf4379ae4424b345b4ab5ac5b34af00c4177771cae77fc1779e775a1899ca7edd0ed998de0302047c435bb500663064023009f86ed23e21c7d8b1a5faad25dbf14c638c2fe79a9a6643f7e6ca981b08de6dd49a1db164a4cdfed4f0d3189ff27ab002307db817c588fb94e8fa3d687c362466dbbd9fe31c6891894cac7fd1f59ed08cb2fc11ec5f566bf8001a1419fa09e3236b0302047c435bb500683066023100fef25b7f940f56111c9076f1c2fa309446ba4236e96f5132bb2f5b77e0445d49cd48e81760b423116c8362fd51ed82f4023100db8a8d82cdc4cf174e0a141ddb7aaefa06f120cccd36e6bb0216fef17e713618fe856d58aeaefcf498f34958e66c3a4d0302047c435bb5006730650231008c7066322fafcf5b11581e95a7ea0d770ab6488e478cfcb0bc559a281f3c827bdd01c4e6b7168d93f5e4256db3844c6902306efb34d7489d9a5d9fd3f5fc7f38921e630c88f5382a3947eda3bf830b369bd155ee8778d67cbe2e6173ce1bfea0e3170302047c435bb500663064023003a66653d364b98cea8c1e7103f20cb8d3487f2055e346611080a98d68aef46ab996edc5c784f359476d7d89be8010b202307faa6ee492369a4f273710d5c61eea31c0161bf69fa733ca0603d74e8558ff75dfe4012062f751cf0be932c9369c8ef20302047c435bb50066306402300ef5a6a04af9e8874275735ff758b06785f66212a1181ee092efb78a83858fea78f780583a5edf99e4b638c0aa43b56502302fac748594b738c5711e7b448fff579a9d1e726d64730a88e2b38dc0b12f366476bb87bd980993058f2e2dc04c1824190302047c435bb500683066023100def07c1b4c980ecfd85a1dee3104bd28dd7e3e6b40df68a0e58f9418e09220e88683a24ed12bacd7a344dec9b4765be7023100aaff7a5f0d6a62362ff61e28f5e77e0c610c69f47458bfb1306b7352bfcd5fb082c0824f624aaa9ec7397dafea5fc33f0302047c435bb500683066023100f081ad1f6099546d1e97a4ce20fd5542b99228c632cd3912699585568aa499bc2e5267d33842e74e7a4241c2985d89f9023100e755a575ded78f6c5f0b1ae13b5a12130638e8217ba2972260ef90ffab6ea044ac461f6b4e5e976e44c9bccab8f866d60302047c435bb50066306402301e2088de53b0e7d3d4d954d18bec3315935eeff35c88407be087920b7ccc45ad9e70c5a34ba4ce264b3fdc9d4f3f4fed02303b7c3c30fe35d22a580435eae051ab6e7260e8972185335e8678be53cb9f6dbe3229884b6525297509c714d38f1192e20302047c435bb50066306402304c15e48ebaee07ed5d3a41d4cc9106886779ac08ab701e9b6670bf0d31a56010b839285b74e6c0bec3858a50297fb35e02304bc70a044f5d67397dbeb236c61ed889c9e8ceb8a04f939ca1bc5396ea14a084a95c1acf0f2282f88987d0766de04f510302047c435bb500683066023100d5672fd43240c48dc9fa3b0be6cac35871f38d241f262d5deb9eafe5e15c6188e89402e6a227872594a24e754e807de9023100884d36f5b722ef457364990bfc02520ac85c0ab181151445c8a6e7082d6f31a924aa7a986365e0c6293e3fbb417c0f220302047c435bb500683066023100c52278285ba792d7bb9febf2a9701043e679f05688dc6c82619580eeb628deaf2e595f72f51de1d13d219eaf03f39ee1023100c07c12fa402ccd3976f1dd72fe27ab8a03214ad3ca5dd67d4a94471e462fac35e0b0f9559195994b806408a0e780c5990302047c435bb50067306502302468d8b77257c740d51c9865ed42e1e972066735b711cf4e9e853eb08a3d0d2bfc01d2be608c219987cc55792d85246c023100924b1ab049fd4e7acc98768a2827c241db90850f3ba96e44ac69ba67a8ea8381cd3b6603e678ac39d34704490afab5d70302047c435bb500683066023100bfa059895c93e88707fa8d18cc78128897e3d24b746eb01b704e632573cf9d054d263fc19d7a1eba2048213dd79fe0ac023100935e77f89fa73af62ec1bd25e45f31c4090da34f5f61158fb49f89bf779a4fee3f1c9f77d37080c980dc80cad89f10490302047c435bb50067306502303c0636b5ef1e65f0eae67c689726efb4e7c505702ca854869267c7427fb550fe1bc17dcb8e34a6c0573423b07a5e65cb023100f7cde7ab5e0c7d9e4dfd0ef0ddbae166d7523ff0404169739dde5a085e2fa7ce44d3dce8deeed24e3e47ac1870e135120302047c435bb500683066023100e1e07eb9a757870b79a4c7671ea9522d2c0077d0d5455aea7d1d8edb7af23d754f8c8967e150a024b158345696b54072023100ec270ea88487ed3d0d3981f52d9c538d9156d94c0c4319aa5153d1423304f74389b3c88902d1ce76d12047894d3816a60302047c435bb5006730650230358b41eff8fb2555718a1292ed0d949bfbafd442265f4412c4a9090c9a0a2e82faceb20c8c16f1f5376fa2112ee674a0023100cecd02485ae2b3a74176622337f4d7d29da44d80345b86650ea3c81035ba19f98504a0a394a493c9ca6778b6dbe9648b0302047c435bb500673065023100cf0ff9f943a3241a8801132c2412b4390cfaef680d4b499ceb5ead5acca2db0780feb82ae00de40beb663627738a864a02301a1f1ea9cc90914d9bf2eef2d16f159812326b6cc24542862836cf13fd3cc2f2890a5f034bb0e2069d657d5f95eb72c00302047c435bb50067306502301acf299222f88d963455b2df0cffee82e2a824ee101092225ebd11a57c045385ef5dec90398d5c5d2eeeb4d7c8fffe79023100f939ed1e47325600a22f434a35387ef7aa0086f6adbc7271e0c0279d85f55500b4f9c22f6fd5c8ea4dea5371f6f419dc0302047c435bb500683066023100fde988fedfef975ef7d96fc8042dd4cfcb70e2cb0a4e6c4dc76e4460605517e46761cce757e4d526315c6d599e92f979023100ef289a09c0bf790741a251d7a0083ed7ddabddb90bfeae19eb33de1b793ee0f5adcffa6d03363e8a83f28418971f42620302047c435bb500663064023065954fbae62d4eb2f714003625af165317d89463ad5411af7c851029926d78b5c1fe75d16ae85e1f1fdfd5a14fe76de302301786b9a6263d87fb2ac0e21b9e4055bfb208c74280a39d75750dbf0962e45d2d5138c1d6a3a6a651be48ce902908dba90302047c435bb500673065023021bb63d76f8838413dd02f9aa7b2a084c422f8947689248dd2d9f1bd18ed4e90b73e7f83bff62762102f5b278cab2235023100e54d2afce4b7b27d41d8a1a21f2940f429e5a0e9f16ed347cdac1042aaaa1d7d8155af8bd10fc72e66a343c2ea0ce3030302047c435bb500683066023100c6e8c913144b9cd55b2989ec0599b867a5a1c8cc10a8f597826689cff38a7ccde9c55e48f4653d9274e85beb0e896711023100f9ca2f9548a318dad3a944e06afad811fe0b8935b601724faea6f428def425a2996bbf64ffa010e84f909609e124a0ed0302047c435bb500673065023039f80e18155dfbe69588969e8610c67f47f14d9d19c6a91d6749b49dd422acab39157472ab9d494cd4c16033c90b5536023100ec35f8cabbe04cf06ed0a64bba1d21172a143ee7aff023bcfc14c4404ad9c4a61bee925e6122e5458d8152acd7b816af0302047c435bb500673065023066b2c5b0787cfe66b661aa43b3bf32d6d6d6f80ea44660fc43e2c2b3d1b25db95eb856cc3f1cc77d1272dabe22beb02d023100c7009a08210c8a2a449afd64b6e46a7a399f28a842dbadecd72448192b0af758792ff1d365ba60d11c0a79423494e64d0302047c435bb500673065023100c8494530aabb78b31ba989054cd218a1806fcf2014ab00505c2ec9ceaa81ce7fd3f42d992cda154be5a9b277f773eb0102303d7442457a30557099735bdc94115a367b0d3bc35d2fda9ea38316057bff5ccb935b48311e034ee451efad04a08210070302047c435bb50067306502306cc766f5ffb00b362f567ecbd2c99f06229001d549bddbd627d10fa08d9b47658118c26a1a22bb5c8e6235eaf4dea52f023100f459d4df20f7c3fdc4711822064226f7218330f424051ced3e669287ca78357be6d861e98b8befd925080e258227a2c70302047c435bb500673065023100d54fb40ca40f33c0fcf8fc3d6785e0b37b19a7ba956afc7b56a1b72d268c5dd45ed2db2325efb79bab2b64948d0f64b90230349cc28bc8f30e7532f7c0301db97c88db1b331b2e307face25d53a96ddd0ff5ea457daf71552a05d159705700d8999e0302047c435bb5006630640230259f7534ce0ce3a9d30a2471303317facba1962e9ce40908b151eb8ae2a299d0b1c5dd8655a35c84a9c566843cee23ba02303ff273d70dc6326817c498dc5e0a67912d07d7ec053550254389e3f7fd11ced7e7948a307f9287c09d6b09047ba21c420302047c435bb5006730650230722b6aa426844779244a18c5ecc47ee7d267cd3ee64199a88ca83750f3fbd492027b749f1651a4a61228fac66f2938bf023100946b26da92253b0f588e5a90b59700657fea7b7119461dcc1046d99f1d898512268b97aa294bb44451d39c289901a3f10302047c435bb500683066023100b58b0a8b3b0afe4a4382f8e8d641f10b0fa467d36267c3433faaf00759eb3b53a6ba68eff4ed583fea322be86fbd6c50023100fd22decf4b602bfd5ace19ba454480414adb920df2cfc8339965407a673f20d3a8a89c3324d3c3f4002351daaf59c65c0302047c435bb50067306502307c231a11a7ec88e9880f019f2d23319693c2e313d747993b3ddc788c667bbbf46f9a3db61d0c420768f3054c0201c897023100a03285e77ed0b0655fd4a6dad52a06f5abbcc72686d143ae5ff802ef1c01eb4174844c175395421b4af73d88a03f44b40302047c435bb500673065023100acab3ae844c981fc7d37c81a047a1cab8fa9d9208945633e81a98cdff8f94fbfe203b25ffd8694705d6b9afe1245eac8023034f1eeadbbf30bbc37a33bb12b0bd8e85c083f0d2df9279cde55870bcdc0567d911bc745e4802127f1ebbaf2a158364e0302047c435bb50067306502310082b492ceb93ba01daca5400eb5cefa55c0f35859e25640c5c2adb1ec0c91fa2b039f1d43ba355882d4bbc09447a6224b023071f0fa42a40d15daadada38932f7398d8a766932429960d1a38c9d9b194e922e0a358eeca4f0f3c82562836ec71a98440302047c435bb5006630640230266a484b8bc4ef6c0239e7e150aa1b330cafa0aaed379438ba14c58093e553fab0195df1c7f11de23bd718c3aea82c3f02304e4508dbd5f7c83be46987b2c2297bbb82e62d7227b024fb48d667657f218d8e0546dee13cffa9d4af33b3a253c9255e0302047c435bb500683066023100fd957acda15e120a52b851a043a7f34c62e4686c976ce8bf6242c934dd91e11b1709f2517af851ebbf5fbe505bb1e167023100cb568657d2b5bb84a9fd149a424a5fac34250da1b401474541dd66eea38f9f2b8e2e99ab453c83f719fa44d99a82c26a0302047c435bb500683066023100ed64a187ddf009696259c9f51308e1dd6073123bb8d82005ffc674b86f52bd57f6f62d28a533b75f4da12e4cde67a35c0231009c7d184fcd85934f5a1cb01fb13ec82631e8c729fcb119d7b80fd3bbf47628591c77bea8b3be38ab0de97f9eb5b9e8ae0302047c435bb500673065023100dbce2ab87236b162c6786107519d2a2fa1bf616c6a5d2afe59da12e0764aa07abb3945fd85660c88c73ca997cef2df2902303eab103c8de474623b871dc48d9a3f5ac51aa4511c177b56063f9b2d9e5e3e0c89d296b09cd9c60367d62f7270cf7fef0302047c435bb500673065023100ce27e4b6dbe5cb621897f769f8ea034c7f17e5c4ab6b11634f84a769561bd0ccac0ab7c6dfdd7de55b14308de6bafb3902303561411e4d5860d423eb66144fce6eb9e470ba940ec4d7db9238cc62e06aa2faf8845881b16abd46e0bc290a657d6c5d0302047c435bb500673065023100855eaab86c2f5dbf250088c4635b4874df2a6e33e66d33ce0883951bc647219e391383f1a4833282ed35f82355db16160230307e105fd8f741fc1acb6a8602cbfb8af58c83b89d4811e992a78f6669e07c54d80d021acb830239f8469b17ad2459f50302047c435bb50067306502306e49609d461d519884a858c57ca351f5ad8d0e95c1fd5a5857bb924e92c79186a49ee5134328d93b573c6de4d85952b8023100f1b7ea5cd1f13fb4877044602ac48cf5c52fb0e2f8b835d9cd199dbb503e476b62a5b4b73350e15fdbee5312c9a752390302047c435bb50066306402300491480c1c063244a0be62f1e2a93dff649abbea60b48c9e22bc730d002026f726c1dfcbf5555e37618d25b243ff9c2d023007bdb6954cbc4f43c4e1622b9eff3c42c7695e2146660af29dd43452046b41245902f0a28da5547ad84dc84fa77858500302047c435bb500663064023034e3ac5b537998692ce3b55fad164fc63b60fb1ba558b6e154eba618eca33c8b3f9f0f4d1034f2839877af50153c717302306527ad0925ffc254460685f715622842c50d951492049a87db8f17060a02c723de4f05c12b97b67678ce83fd141236310302047c435bb50066306402300efce7b89498c3ec538f190f2c35b7e6cd3f8948f6292d1c3c1f1536dcb06e6a03f97efa9c0631d7796773fa27de0b4302301b38982c5c842e78a6de4b23123e1ba5fcbe3f773babe85fdca4a7b1405972179f3b2428b60036d6811ac38fa33fc5dc0302047c435bb500673065023100e09e67376fe0b9b2485fc8b427c43c49cb51164be6943e00fbbc81ece2495544727aff67ffcec1fb01bcb04a2fa1ac0402304ea063ac99745600e783d7d2f8070713d294d75cacd26e9b4369fd22dc56f4815996fbdd65a50528bd6ae550f3b41b880302047c435bb50066306402300adcc416aaeda7b746e6ee2fe79833da0cffe2776d530b16494a784c045aa71e0c93bd3b21e8a02d9ea756e323011e3c02306cb88fe02b2120fc55fb166134a7fd7346dcc58ed3a4fbc981312a4a5007f185cb0af47385b1eb91122be89b5a0f301f0302047c435bb500663064023037868c96c28d47bf44021d7b0814b072062e4262ab05c0e6ea242d9d7717ac6fd0fa5b84834f24df6032141344f86665023067a550cd3149258611abfca89edc546881e1cf4bc29f42b6caaf643601cf782ff5eb4453b9ab41dec185543347f368cb0302047c435bb50066306402302dbc7bae3b5fcb3dc9c595f68baa2e5ac2a9d9ad4b789437a2a1e3834f7d51ba990829981cc6c37eccc36eb4c8c86f08023017407b67a34c1aad77268421d0b93939614be1524b8908ec6a9ad3c23be914acc7cfd3029527672dff2363f7a64ec08b0302047c435bb500673065023100938b96556198a891859d78463391c87a8a98209cc75f61bd4092a1e4dbca02c5d11369f4f4dc1d3f4177b8478806c4680230762bfa4e500a15d0f824c9812477ea5fa71c7915023c28529f5c9dcb3247fbe47159455d60a22d9304bfe2945212626a0302047c435bb500683066023100bd997059d93075fe3a06cf10c7eb84d3251eeec56eb1cb933485b517325d2f0b6077bcbd5fb9ee413957a6d9e9c7b2eb023100f740652092dc59607a6acc606793c219e66296d0ffa42dc008829a12de99dbd31b7a1fadb5b82b3f80b58200cc06ba110302047c435bb50067306502310082ff101553a9ee644f341a3216516d6b11225dd8d004dee3f71a8871f9a6704012c3f1de2f1161f2fbbd26655074e8cd02305e3e6823fb1591466d9e26e46417208a463c4f8345b39deb5d7ca5962fc858bcc1cf182dae5f8c30cfd363bd0c9077d90302047c435bb500673065023040b8cdbdb7efbf9f7b487f0c2d6d1856628715a32b9aacca949d6c133b1c9966b059d20dc19e10515bb4b451f9f0c3830231009fa47cc4c86cbd3fb7e88a76e037070d7f1fda87bdbd5746848567196695b05036f6b489d12d924b8cd519e9ebebe4970302047c435bb500683066023100a0c71476ed8e30745fb70dfa87fd677683bf5b8fe217b38f7920c91c43895cf5d46fe4cc46f16032597b911d672d9267023100e0e57c5277b12472ea1cc0485a37409de5ae6618fa09a592e4e0bdb94dd7620e9d5defe39a5cfb8c8d757d1605c159eb0302047c435bb500683066023100fc7c1eb582f99721648c490d17b900f627166e72659f8a8878fb879132c304550e2eb4cc64ee9a20a95419630556e4950231009866d188f84e8d33c7367879584483aaecc797113a0f629242fe28d15bb0daa5b04708944a999682cd007aa15c23edd30302047c435bb5006730650230423b6d37ded723589b51b48d58a6165c4258b974d2de09e757ea5eef16164b3eca1d8cc95d3e5750b760456bea318efb023100dd3068c606266612e7ea66de076e448cc80c91760c5052cb44e8b2ed68df8586064b72ad5024e32f71595c591a0fbe590302047c435bb500683066023100f7dc17b3052a51aac4c7499e5b32916544def55f0211ce2e0ec0ac506b3111c6d42522ab61c2c4a098c341379c6c152f023100dc44aca624f8ce6d799a53fcdd9cdbfb3d882d4dcb5ff6cf6f9413d87effaa515199aa816661e68c6d0b239469417d200302047c435bb50068306602310095e2a4b5f3aca6466ece80cfdc5cccab481d85194b1106d2236f7a851afa1e2db8c6b4348aae9503a3e7031840a6746c023100d46c530f29200c609064c121903d9dec9a34632299bcb8a88f259ed4a82ded79d9b0a776bcc619416326c22d397bc8900302047c435bb5006630640230148ec73eceb647d23e9bbb5f939ec0e9c281cdcaad184ff3f1b014262e7da64931ed390a31c728f3c7fb7ea4aaff80af02307ee2e730eb7176b42101580e01bc238e8d2a564d89ac6992a5117ac6af444a8876389dcbd21b5f45d0945a1e0e0a83840302047c435bb5006730650230475e5476036a31356a09fb1337b381191321a0f16f9233d26780c8d7b93befcf1e61852be2da13529e014eb6afecbad102310092ad08b1deae55a25db12a68e12305c8d1c9053100eff9a0f170bbb5b4a4d81ce997ce119cd1ddd6459b7c3e2817c8c30302047c435bb50067306502300105fcc064d7f14e23edd58fa98cce277d6496df1a4e89c4556ff69d8f7e084b0d5b782bd3d436d71027181399c4725d023100ea4a2acd4140247e6504675c6df0a157df534536143d2b8ba9f85dd9f248c635f912dcb52bd1658ec8a7b9434a1b4a120302047c435bb500683066023100d6c838a59efbf33d11bc956bbfdd2536f3ee2bc57646ae440bc6cfdb58d51aeb58d22192f66e0dc1fd90c772917ed3e4023100892b4aea54ab81aa06b2b64d6ee2f14577ee01cebbb9d26efae81109313fd1b5911a29ae6e1e06987eb37a82f89824840302047c435bb500683066023100e085aba044e5125a8bd14f0b93434599057dc32b729bd36599c60341160879703ee987cba4310d7153709f6d4fd6ab0d023100d2090ebf63b31295a06089e6f467ac12c4a14383526938bb2984fdc1291ec3b8c795bf53a5af349d5cc2c0d7c733ed890302047c435bb500683066023100d36f0f9312850a3cb11aaf82cd596fdf4d8b1330fb1958f2e711ce34c90ecdabf9f1d95f3e267fa87163ed8c7b1f29b6023100dcd1bbdf8dccbee20c52de97b01340489d48901da3fdd321aafd948a76140536efe1334dac2dee8dd7b6b27be2213bb00302047c435bb500673065023100e3f407c1fd583860b62f84cfa6da12f04d47d22092f7302db34f9954f7ff5031618e5ae7f1ba9f35e9e844e7e69c5da0023016cfd980a69da4cde77add5b0d7e2d4c3dc5a5714842fb976693b3323fd95e04353588abbf9148ffd6e4f1486093b29e0302047c435bb5006830660231008dd284a0dddb4a03c3832a6585a9b2ac14e3150f5b8c8a5ba62216806391ccfbadf839582d37757cb9fe415b1acad3e1023100a1794233ea67f146c652d5189aff0acd968a3ae413c7592f2d56bf5d7ebb06718b7bee43218921a0ceba2edbec4903c20302047c435bb500683066023100d1c67d52a2036a61fb73fae13f01a1030fd4f29462d373d694eb17bcd90ef1cfd83cc9c9ab65f1c6259d9d165b342191023100ae49a981fba596f4313ab85b83b33c881dfab2930c61e33ff2d64415a605ff2b971a6cc36f27118df3a751318b2501f50302047c435bb50066306402305d5c5e78bdb39fd3b007aabd11199df781133d03b54da06386e6f1432401547f78b7528aa98b466bae3a73b6277283c7023001b5630a18136665d81a154c72df35cd05532a9e3ebc822a8b6c7812a56f9531ffad3de4d8a19ba6648416b9872a93dc0302047c435bb500663064023051e4833a72f57c8455e9e0f954bbab4a7fbe8767b7ff0533cdea1abc1f739d55081d9cee517bad5c7e9714e67742d8d702302aab8982817c0beb543446532bcda5ca5204c28f0c3a80e85544d481fe84e2e5c88a4b0cf331c5e2ca0acea99c6c865c0302047c435bb500673065023006274637cb0bb2b7b2bb737455e1e6fb3c05c6b368b599225f77b4002f2f1987366e0b5f0db32d2198a4e1c6ab24f4ee023100b7ebe81593f9515e7036508a3941c4153613e3653ecdb85537443e507832ba05fefb678770be9d62947a7c96d099f12d0302047c435bb500673065023100e80661e04a5559a3f9693870d0fdabec36d8719fbee2e00ce9a035c563e0706893a9fdd0558797cd40dcee95a5edd195023025f0cd6062bc406183a42b4322aa50fc2df98a34f3857bf638259156983aa0ad96fc4c25eb2e8675c876907663f392330302047c435bb5006630640230181a4e5053e7975330cfcd5ec49521800f1a0def3db3017b60a06beec198e78af3e89ab8dedb5d6b0cfd200611364745023062a57f3ab93336396979603a71a8a9e681297d78db088f106384bd93f11e1fb9ead344e0473cb1d226e0c3080acbd68a0302047c435bb5006630640230419648d04db95e21e8faf72cd1e0720b267cf4f8c57f15044b9e0e88664a3b5e19be1d44193cb1792bb414064f2748cc02302dfda21aec92a12a4b6c1676b01622ccfa3b99c2b5d553af70bf697bd27bd677ba458a991c88c2d0ec42a79d52dc7a240302047c435bb500673065023074b9a214803ac654fd77c7342b0f1e2d7bc95b2cdbca1fe4b040f4422263fc4f592e9d3b35659147fedc369417295b540231008df1921bf25e475828b7e55fd6bff540f390750cf4043c356d832d18ff688da87f82024dc2b28dcd2b6cd5078e9d3e610302047c435bb500673065023064f61c133f8e30374c26b4c19acb8eeff755b8ef757317a6dcffe2601a3c254f1620f7c2b6d3d637f74a8eb544db22960231009d47b1876b3f07eb839cdd473c4a8b586e8a8759ee004ca99644281b2f8f4faf11eb1023947dfdb99890442932c2e4f20302047c435bb5006730650230030395291a9e6848be282763dff296b13572a48fffab6f7b07f466694c46c53e79f5d85b219d59f630312f3db8d737d5023100e6ba99b0a9456bfe8aeb941c2e7e86ceede8007bfb74b7d636437ce4f6228a2861e4b8c8fc3986afdb0b2720fe723db90302047c435bb50066306402307753d617437d706bfecbb8961121284b26a5a90f3b4ac7b5432062736ae9b7075d580160d7749567b27977c515df4018023005bd3498cf8adb25b15febe21ccf15360b891e09a9fbff9dc8828b2f5d41ffe45fb1dc10245e623d310d84e29b33cc8d0302047c435bb5006730650230446d0dc9e466882d9989c30deb5ff2c269416866f7651da8633d7d81a88f683bd7ecd5775f4e3b87925c21410edd5970023100cc0d5c4a5f9454bded5b6b9e4c78a6d39aead960a3f0c61625af7a38421dee236f3c7e8b6ae22d0facef46d71b75cb600302047c435bb500673065023064aa56a4f04dfcccc266252ca8403c0b681d5709287723524ccfb9fe5185b07929e2a2938253e49afc3cba8a35e8ff1a023100b71f9148a8b8d41fa9addd9a95d2a679f13c9184e24f3f75b6fb08a82a4ebb0dbeb126e9a11a105c7afd96e7cddebbf40302047c435bb50066306402302442f830ad96dd04a7c511bed584cfa9fd508e2f40bc34a48193cac9f1852c70dccbca957852cbc1494331e01ccd22ea023012341ea9a9d80877de7a32e52cc376c68dfdf73a7a9ece74a60cbef148dd65bca08494f58df766575bbae545647b9db00302047c435bb50066306402305d1f818d7e1d852ad6a888e928b0c9988fe6c6c0ca529768ae7b028101031b492266d73d0cd7fe1ac910969e87e8568e023009c73432e8249381bf02ac84c25c724e5799654b90cec6847397eb4c36f2a5df721134d5051240650e7b0f3e4dc875550302047c435bb500683066023100feffdf37885ddee193ea168af8c711818454897548bff8886b5210bf4708d9696324fd388ca581be6f2bf12d9303c44002310090b98a925dd50f8c3463fd76f292d2d9f9f28c9ecdf09c3fed322a35ee61f2ba3e01c19b9fe42b6af1cc590f8a2aacaa0302047c435bb50066306402307bd97ed5f58dd1cf0422906ab579f01f2adbf22bd7e655a2113344f591690899d0a8db6f1ef53edb1d9a01778dd457ec02304b9ca5bd86ddda8a9c8d141cca6e77794e2dfff5903ca8a54bc5a7265c4e1b445714d1e507d367b7ecdebd3eef1caba10302047c435bb500683066023100df539c650b0c108efc6be4ff92ec783e274a5c63f17f5d2bc80cf060360f3273fa599cb2066ad83940a3c24c8bcd5ffa023100cf3024131def69b2cb47e2e7156040f216a20686c1ce8d9de97e252e37291defdecd3b468da988263b215a6c006bb90c0302047c435bb5006630640230128ea2790e592f50965ff785470c4e5fd534549caa4146ff772011a39f8cf6d3d0bad29fccc40d584b53509cc73ed71f02300c439d7fbe9b4f59c6ace0c612535589e947d5d77b1de99fcb148374f676587630aa1e7a61bebdc2f3e0cee19c07215e0302047c435bb50066306402305b68f53d9b6deb1b404739367a6c1e0c0f65ec4ad1cf8c6658ca4e14aae0aa7d9987db6c494084f4af13e474bed58d06023074dccb53f22ddf70cdf773d374ca457426f52cd08e99a456492d43ded5f9f2a386a94af13922d4bafd898dcb9a37db170302047c435bb500683066023100800c90deefbcbf8cce527711904c3d6b5b3ababa032b7d00b35f2d160fbae22935f52d920fa3032190cfbb952fab1593023100eb9a6797b4125a1bf20bf8ed9c6b191616a237bc44bf8cf50ba7625a0c70e88a188c84a6fb059fc357e8911e671c29bf0302047c435bb500673065023100e0bd8d1531a112738ff52929c98c2bf3182364fe16a10793faa3bef8a9ab85a9d1a6229c9b79189a36cee97af2d5d07c0230543a76dae8f73f5d37d6353c2fdbbe6b71258dc685b49b233a528101463f52437a8ecc8da45a73590f0b64001ac5a6ed0302047c435bb500683066023100ce7bc6ffaca141fcc52ea4f7f57297a21da7ed1f63f2c7c85b86847b2c151779368dd312831d739db24797a34c8654770231008f456be69252ef507a329dc86ef27992013a6f69bca9cfa3d39507729233284c9870c787922fb4548db6fdc641e50d320302047c435bb5006730650230495821a8a9f9caaf099a5e675b5cec3c9c9e1e59dffe3e7455df301dc63682223166b0042e3101a454f27e0eb9a4c3d3023100e5b46c40939e575e3ad550b0e2e43f3370a6c9324bafe8c880f9f18743d2cee57f2f927517eb2fe4f3ca616adbb067800302047c435bb50067306502300aac2fba4af27d3e011f0816ad7c407ceae814b418a89b0f252013bdef82c53a0897d842280feef5cf1f7c980f1fc969023100c15987fbb3890806fad70d3953d87fdd29d93580f582bfb0812323ea6cb4b28511cc078fa778e306d8d47798d5ebb04d0302047c435bb50066306402306f44d179166edcf30d346378a055cf0d9c76e5e17288d9bf0e4275eb23c7e1a8e7e1900b0f1beddd9bfdf58018b5fd0302306f2328cb9f7499347bab3d5fe1b9b0db6d874c1b7736bd6631459bf53726233ebf2db7a2e7513ab7a8aaca814ca78a430302047c435bb5006730650230041582c66cc5be72a94f8d194ad6c0166c3de81f9c30c3b3f9b085fe95eea70012dbb31c0d14c974280640235145c081023100e8be76663055f550aa218c357ee151b84ac08f2f956f00919237414ea53ae349b8ceeea1352687b3a2f39b59edfc97a80302047c435bb50067306502303bcdd0f07a89e7ae309042b28e5d1c8656f84a68f8761b01a38a16e4209a53a0e49a343f29935f2a21b3ba8f5646c809023100c70da115bd7a8d670a8b6864d13046c65c0be0633fc02a8ab1ee3b154b0271e113bc3860d913f68d2d454ecf94625b120302047c435bb50066306402301efe64c4540dd399aa056f1a6424788fc68a1b291a2e1307db84b80c3de3dfd6c04a8114464f107a0e265e2b6c2bb6ee023028433739dbf9c9c7ee097682c4c86cf396525ff10a114170241a4ebc56278016b691e8dde545065950988b1dc0786d7f0302047c435bb50067306502304b18c4ffe5cd50f5586e3880c0c0dafc9fd19499f12cbf5f384899bc145b4aca86c6dde4a94a654b9bd27c9d8485f4ce023100cd85f76322ef015ec082488edf612c84940bdb0b0245eb7b8cceade79fa6e9b08b1ba79d6f2ce72c68f9540b4f3723310302047c435bb500673065023100d6b8871428876d9b7c6b590f78618831f8eabc5e49bad12f9f1b59b2e85cd1b5be80b52a520bca18b25f876c14413feb023001afb9eb0a1861eb42094e53d39c9fc0909aa8b15429be4d2672a3b545eac545952f3b30b0e9ae74db70f7c0f9136cd30302047c435bb50067306502304920b2bf51aa668b3ff59a300f00baf9b3f369c446dc777bcc17eff6ff0408fac556c90226cf5ed18cd35700dc9d2f0f023100901805e8bc722a1b1472112f12a995d2fccc32e27f45cd56783253d62a683abe1d8405d712756fc679393e1a774552900302047c435bb5006730650230213f6190a6207c2f61484322b261eb1e538a23a89a0c1e7fa54ab44a30d5cb9f6904d14d9f0ac77680204787da289b14023100f1db21ca83bdba6a9d51bce9d4e214ab1b89aaaf607d07a14c9964c7572f060853f7077c2711793c7b12ec750737be280302047c435bb5006830660231009696df79b1dda70124f6066106a66324b8c2652705c1b7cd82a196975ec91eb66d8e8799109ec1455b6178439463da03023100d790d064ff3739ee57f278614f8579efc48c908949c70881beeaedc7d38fbe9f85c6f9b89b95334787b2ce153182e6000302047c435bb500683066023100b1674084aba8f4b1de6fe4f20a03f2cee015a7ce947619b59f7be33a8368e0e518ecf937095c8039c536570079e9036e023100bded79e1120fd5aa3146c6dc547682f6e58e30b591442151f132c4cbad762233cc307ae3336cdc5028ee2b71296647e60302047c435bb500673065023074797c4e55de503c135c8f94ee79f629a286056af55515a316472093e1596231c2dce418b57d5a5b814d534ed71bc20c023100a61c10a4b2af7635515754908627c8f2ba3aa8995484fc7ceb438fb73d7f84db555f529002ecd7955be27c007fe53f7c0302047c435bb500673065023100c21538729419c7a11cb1234a7a008cd3d9db16f4c0594e1a8d56751ba96dd3b3cb8c755c2ccc0d29e5c37b9dc7e6c3f702301d0b91c21259027d135bc2b66374ebbba10171bd5d19a89816489098da534f032f9cf67fc9971789f49506feda988ecc0302047c435bb500673065023100ae2006e64b26903a880b4577f29027eae96d6a900439293071d0f9cde4b9ebdf6cd8975d472e1e64d8664c017fc23b800230605c378d8d69c64966fa33d45deb002e989fc946b63c3e4bdd8e9c19191e75d85d1b032662acea2c2c08f1ceb681ad880302047c435bb50067306502305737dd746bc31b7cdd9f647c1b7dde85da8fa43a9012b6b89d17b2035671ae5baace83ba82bdfcd5d37bfac9c9aa32ba023100ac4f6ed3830e5bccfc56dce174d49befb0d1191c34eb61c6d121dbbe8dab50f4ed95788e30d1aba316f5e7096a68a75b0302047c435bb500673065023013d6e1cc19b4921f61296b634b0ac3f905cd3cd8d4303503ac604f036e79ff2b69eeaed4c47a017e59c704c736ff3d87023100a327182c096f04565524f9efa8b7a6ca5d9dd55c3e2729c2e5388a3a4e722057c2def149d2ce3710724ac07fdf0c2f980302047c435bb500683066023100e62d6e29f9bc47f9b5f871f0ab1267a786b50cf916a7c220fb31358c187ebd894527e5ad383f59f817cbfe7808224cba023100bab2e27ecaca67ad5e1497107ce4f5495761b060c6ef06b205c2d8434a74fe2306eaa63fe67add2adbf9c4d14c6449330302047c435bb500673065023100f35cbfacd3730f4a0bd70583a8e82100fed2988ccf707daf0a28df44deed2cd1255ba2e6ee1fd6668b63cf2f38e2867f0230748254f48b3ff14fda129c2f27d0054b17e0ccfc2013805c41b102d53a7e46075f89619f48236560be06e5c0b50489e90302047c435bb500673065023100dc2356c6883b96b3dfd07339f7b60e7377afc4e82c074abd9b0489d976c70058a833d6174b092f4125d32ef2991d806f023017de8ab8094947631799c31078d63f1dd530ec0e56f8090ea5a94d24e842ee853caa180447a193a84f70ef3f773bb3a10302047c435bb500673065023100b0d52627a42e45cb505b0a88c1ac1f7a508990d215a4f11ead91936e8d0e03bdfe3686932b97b2a8fb21ad88c06fcf3102305f3c6bc09131e08584c2c9f599e50532e1e9c95e2965a580f27a416e6500b10498ff4af38c04d05b34291cec19f33a230302047c435bb500683066023100ad3fb2a8709608252f33712838dc45390a7f68f57998e7b28067d958cce2e1bcc1de62b61fcfbcb8a15cbefd20ea10f6023100bc1e05064445948de109acd4f3714521161547992632a6a8051ac5fcc0af42f42bef5e670ce27b26652e88609f2f13d10302047c435bb500683066023100802eb65806152a67c52efd873028d249725aba7222a47edf6fb307486582e640805b58035d166b4eafa6a00fa676e207023100c5040afa4b2483aa3fd392e141af133517386f69b1e25ef23b3a9200e50378c75e905f943c449cda62b7283b2c86c80b0302047c435bb500663064022f669534f641c866d772441cd7f058e96cbd48cc5e268ee3a6005f2fd421ad386f2de3ae0a75d5718b4ecbad0944143d023100e02c74074c8fce8c37deed55b366c2ab2babdba912ec2eb5071d38bf9f30249832690529fa6242a7d6a119510971e8040302047c435bb500673065023015831799bc15b1dc6289dffb5b60ce5cd6351dfecac0eacb13b944b5eb266d53b2310673cfa541ee7e8f1fa38b9ca27a023100a3ee9acca519075a11e702e465e4ccc4662b229d243f2ee4eafdde0a16b023b5a1179125bcaaab0d4808b4d6e20bfecc0302047c435bb500673065023002b3f606f93754497fd396243b73415cefcd008052fd6354a7da11e6ef541ad62ced89a30be3e5e14d4e8c02cf927663023100b43f7512820fc553f8bd8cada2fadb6363c767ff583068d8f2dac2ec6f9248302bef2f5419e0e063f29f8b054066c38a0302047c435bb500683066023100a8e45e14a18c68a527c15fd16985831421b44cef14f24913aadf267263a8619501202cc7d06b95aa696924864a16464602310083fab2b8d080397af9e3b711d8e975f1035d04421572c0820bee056706334bc6f8f1b68525e7d1101742aae76e6db4d80302047c435bb5006730650231009d4369997f7ef66e509080a36683559fcc8e3440f8068830665c90372b9bd1fb99ea2f1394d1ec6084a3f3f39dd2c4b602301592bec442b65bb3e20b917afdd748154987fae12bd6258cecde35b916a3c9238f1695309afa68b07fd099f69f52b6360302047c435bb500673065023039bfbe6b0f9687440c5539c4bd67fc65c9d6df23f8ebe7ef534315239c1f0039ba2ad68099c598c8e9fa8c7e16a07c6e023100e353786c44d2a04a13bd05dbfd0a52072167e6c94188e1defeb8b5583e19a4aceadac964d8624a57934978e3976fc0540302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230613d4f408f8ce12b06914f86619d27a8c41f6ad0c7ede093ae43a7aa498d7cd1a11d4c9037d57ece9199223335899d4002303b49300ef936081eca300cbbd61e7f2b90d030c0e489246290f02dca97d334838edb5628ab8ba98b7eb334bc8034dc290302047c435bb500683066023100a124b8e54fbfbc23c6ebe696033e03796f3ce45189bc2debc0fdff69c6b992b662af52c7e51feecdfa30a7244225094e023100cf924aad3d1aa83873f9fe7c3edfce2f8a71dea52ad88f0d11dd6cd37172e3e2c0e9407467d75021756d4bfcfd1d72470302047c435bb500683066023100b0d3c952b8b7ad3da0b78ae6cae485026964e3366510c0016685f40b7428254590fd703facea7a56717326b1d6c64f41023100de936f9e8bfce9ed0e5dfbbe6165c7fed51f0c9ffa288e4afbe8948a06240ea79a4782b866fd356f6764c1b8cd918e120302047c435bb500663064023063fcf4c9eec6aa86019ddbb00fb60de7883114e33a101fe72eac89e9cbb2425d1c641d2dae36da302229abfe5d902bac0230303c189289f1d320174f5e737d47a5d4cf1b9e86907932b8681cdf0b9fb1c820815f04ba79b42ea52b7ff82f56b94bc30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c3f5e7cbbbfd1975a83cc98e69ac74c20735cecacf8b6cafe4042ecb52664f296fe4267cb0f42e639e0fa60bd0d3f2f2023100ddf6f6b7542ef404237e5816012e5ee87129d0fb2c33c155868d811b770aebf79d0875bcd457fdbd70b9145b707df2c30302047c435bb5006830660231009499501c356e9dd0ebbdd26ff8c3e8d947bf2df77e593cd6cb4bb4ebab481ca55a4c225990e11e620652910f9a5e6ee20231008c0dbeea8266f27132b3e0493d3544fb2ac7f0ecd9035526b8e69952b9f193b950a5fbfe3de87192381dfdf093ac83e10302047c435bb5006830660231009356ada276e663f3bbc201f9bced93df90f3c1003f0579d91683d59778fcc0325d0a6bcb6ae27ea96cb3881def787d3a023100b0ac78ecf1153feff2a6c12b4b60d24b005b5fe77e94427c916c20a3489e118ffe264502e14b271fa68942ff4204ed840302047c435bb5006730650230299f9ddda280bcb1154f472b5d4237a18156eb80b0de823ab1e3b8db27e3a5e5b12c8c6ba440a10017e4489b50bf0c8d023100c25c41ce97b0150afca9cf3cfbbaf0af89425fdecab64ca7cf660ddf51ddf29c516f6a5c1cf5d26840da41cd46a061bf0302047c435bb500673065023100860d28a52d7b675fe4536b2df79f109dc0fe8be28d88435e6b4eb2e8863baf7d98ae3c064f4f54b4198de91eee9273cd02305cd28e30b280f5e59c00a41fe20116f3b95ede256a6da766b2e8aab1a4c83120f68d7099fbc1cbbb4b1157aa54dc1dab0302047c435bb500673065023100bed2355e77a9ecb297f540d582c2bc1c5d8582e8706667638040c7bb9acfcc2f496b8c944e0379a3a188c39b956b279c0230416232067e5507f7a5345c85641b27c9e32fe48881bfb06acb73b086fbe68797ce48f1d0765b97c73081665ca8878ba90302047c435bb500683066023100b8caae53c313f0258f0a4cc70133dbbee968307329367f1c3f6b04c969dbcbacd1968523104199376c88a07e81e803030231009abb58f4fd70603b65a3dd3cf0f535d9169b8951696cbcc36691995b25be6f2120724d6c20e78b2192ced8464bd7dacd0302047c435bb500673065023100c25613d32b391e4a2c31c7343b3214a0e9f6b780754a17fb865f6b194ba70fdb6ac692ca451006b3fdb17dfff5a66ca902305cd0c3c7d6d8a014c64dcd4bc0a1789c9576e3118150c5702f495544d61b82fffe0d4fc80f714d4f3c538ed33c8c6cb90302047c435bb5006730650230028e2e18e358cee453e196a360f895c48f1c327124f30e62f85a9a8e4aa90fe5911f73a3966db4005a64452c797f599a023100d36ac8f887cc9631b03742c58dd7245cb0e72e65a8dcd2d08cd46f337a1856cb2de41a60be5caa2e5597d82dff2c82660302047c435bb50068306602310082813fbbf0ab4c1e16f2813f19e4d57cd9ca319a38734e83f23aedbe7543bdcd96cdf901a5bf2cd1124309786b491c65023100b751d5100f24e9ac2ab8f75bbb42d91904372f754ff488a61176a2088da33c10de482e562b858343c23a836a12b732650302047c435bb50066306402302ce305caca82d277dc2ad8b48ed94e1f8bd8bf0a36e20992576e229ce756051de235fcfebd5209bd7730feb66ca4e22d02302e9c5cfa1881fc3697b682c13b5d0c9dcd3e5adcca4336d863c067cd41fea322b83a32e12a05561c27081399c66be3a90302047c435bb50068306602310086b9d44a03a2f88e642a325dcaa652b2c22d4b1e732682ac39c568b45b876073a14eecd8178fe0ff69f838d4127548d7023100d1ce5356868ee35547df2bc159b8726fbe3eba8d0ad2cb5031eae570536403f1dc57efcc749cdddfb89d23bf5d7dfbd80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e7a53967bd17b0ac30568055d4bfd717540470f2800ecae75d42a0c992d8058c274df0ee6ed774b396f917f4055d28c50230772a1fe8272fa4b3bae5a79b650984d1c54c6dcab4a159d28cc72284e87a6b440f2be346ef6c2a1c51e2bc4123bec6bf0302047c435bb500673065023100dcb116729f4461495e28300a6d1566c5a8fce9830f5b41fcb8933ef658e7c24100bc1169679f19df07ae37677f1ff8ff0230515f34ba8da776f09ec93ce92a62b521fb34e477c220b507ebd48f3ec4e26654fd56512f3f39fb7f94e32c80e11070650302047c435bb500673065023100bb5727f52e93f4f5ab177036b60555a7b282f845b80c485b3cc4f2d8a56ad19aa5ba79292f01a053d00428b28f5611ae0230746ac381901b8a90cb12018cbfaf29dbc241dda2548ef7184371b819b2c62deeab74219e24d75c5d25783f048faf587e0302047c435bb500683066023100cdcfe04d82a11faf89d51542f07d9a6063d9969b54ef342a879cf39ff580b366f10da0f615f8a4cee38fbc069caae76b023100f2e92a7ad0f789e5380ad9e3847b0faab436139964e67d4e5739105f0db93e0720030d415fee67125130616c9b672f7a0302047c435bb500673065023058a2062d20ac89177d23571526faa4e8080ffeacc814aece9b06ae5b07d473502af1ac154b4a52d4027d6d00fda98001023100f57dc525b47b83a6a59102bfc560f273a876870932f3135db4b560104cd75aebaa64b910369b5b37ea7edf06f8cfd2820302047c435bb500673065023046403c7f722f6eebc3e6820c966d81102fd3e1c4c7559e7f6989c9ba7eb4765d5a98a94baecdad59b64b7894ea52dbd3023100956a48f93f3faef8156478f8fafba5b64c4e5470483efbb758cbe92b97b6b3663f8a9a600bed7b646198e994f2a10a3e0302047c435bb50066306402304260dfbac58a3c3f9dd1635d219501110cfb1c29a74da772120197ff8d0be876ac328a97c7aca65f4c8cc2492f9c25640230169bd7a4dc3cbd92e88cc27e6a68f162ade3ef5c8f86f89465e0ebfed45421236dbd6b1478c2826fe9fbaa80f50f88fe0302047c435bb500673065023022ccbab31785c74668a8ee57223f1460d39e2643318db44128e07c9ae62c3c1615a0474983b2d8b617683715bf7daf01023100b16e5fffcaba627b41cfe45efc0ce48b16e23aff0620737b0c4588d072c442c656c29324f9a2647d44a08df985d0d50b0302047c435bb50067306502303faf9699ffe8bfa7f15d4fcb892d08800a7eea8b5841308163f40716aacf81e3aad5fe1d938eee5c569d524300f0cd2f023100b6d7134a6fb24cfc8f58a0d0c30b09e30cc6d8af219f697c3bb6f230a9038a8e2a9e97d683b01355e347af9a24769def0302047c435bb50066306402305681c0ad78d05b107f8bbf690314279bf7c11ec1f4c3de4eeabba5311f160a8cab159a4a0383f7c6e1eb87c4d8719118023051b729512a8e4742c3c95c9d63a2cc31ae69dd8298a15a305f0e13695893b976d954bf04b5252b3255a70d0dfb5559210302047c435bb50066306402306ae2cbf88f0974ab26c9c53563db8a7c4f484946863b1a2703a70ae1434e878425e7291995e9ce02a2c45cd5012e1b57023039e04f35c73eec59a205b9d02baf6a5002c073b11a0ef86bf55b9159e16002f10b28c20bb24a581d09ab04060fde682b0302047c435bb5006630640230468f07e7499360f464192417f19df90a096ea4ef207612fcb9314ee109bb201ea383d33ef08a202357ce457040a18bf20230037f0c806f5ca59c0bbb090e54c09f09b9cf5f3306e8b5d47652b954ff59e2da22c97586abb9ae99e1f00043512a14ec0302047c435bb500673065023100d6523a95e5336264fb1c8e84ce268dfcf8f427de1338d1a949263fa7c53f1bac666d7b1cebea1c8c26cd608b85dedd32023041c6e9167afed424fcdd92db411c688af2a3f994e0319389d01382be7fafc2c596a8e75d4d778d3333ccfbf80c26652a0302047c435bb500673065023068aa8ba1446b63bec0b44977ada8ae0ed871d1c06285d52c6a4b20db40700c4456b9ade3019ac4f033f0348157bd4df00231008771caee3845b18e72b9a1766d4771ef33e59b4109504e17b00946ec347210f425aa89a924d59d282df8bfced74931c50302047c435bb500683066023100eb5a5aeadc858d33f8aadf833542339ed0820a675b4cbd0d7f74cc645bd34b2073c4bf62520c0b815c36d1c59b626793023100dd6b15ce5638c2e08bf6467ce756643c173f1e92d612027ab5275749b6e9a4e63eb9ee49d67619e89c2218cd18d1a4320302047c435bb500673065023049aadf5758c6782ebbd439e57032a0b1b02f8879f530f8a36ba502514ef2161748bad995c76bc284202258b5485cf603023100ce434725d7926e5bf49960b557cb30a5d002a52f7ee32856e1d9012d47a3d08ebaebd4002222d1c6a9c2a8b9e7e040240302047c435bb50066306402306cb910d2eb2afc54df6f4973b066fab2e7ad54e7a6d2deb7e849d4fdef14dba1e07b0f351f8ab9961d43a29f64da33a202303b6d7c5dcc33ac389187ef410738f92afa89e0d8665b8701c5ae037d8baf39c6b6baad2a388f7c4d9062458e514b85670302047c435bb5006630640230681aa282c25def8c34ca8734c53fdc797dedb306310c6820f13b60c0b77a9d68e44e25b8473f29ff3412b1e2ba381d6d02300c6e99d9e7476223d39042b1199df2ca5d6f1c8cb34342666b771dcf47dba9422b4be2bae896008ce7b3768fb5be95540302047c435bb500673065023100955a90f6142cb7edcee14bb8a8900783134e23485435a7c86340a36532eafae59dd6439cbbc7bdb9b9f3b4c942a4202f02306ad6ccb69056b42872bd8d7deca5df9521887b7e1e2f1e8c2cab5b882d6e3974a5e1581102bb7640ffb37284ecaef01a0302047c435bb500673065023001a5843862683bf0d6ce8ddab99ee97500ed9a77e62df9f2ee7d4b777d26d79c92a1ce83a04a0cf8728c13d8e402658b023100a0e7aed37ece493de59dc2456a92bc7a5da044895b127b6b6ca13a11024c6483f4a314277726fe21b62893cf141507900302047c435bb5006830660231009016b3b1fbe0a9db0302628208b5f354d66b6895a7650e32253e8f035271587da1e034f92b38535baa773523cbf3d327023100fc1165095c2bb6e55229565f0471b7b2182ffb54134dc0a8f8515560c714430d12310cf62ccca0dc917d31962cf44c6b0302047c435bb500673065023052313a46349ede01f697e984763c6b055ad63083b24e33d0c48f743f8acf55fb089e882330702c88b2d16397b124b546023100aa168304d572c0877f6905d6ef381fd4309dabd438884455d3656897f701ef5062ebb34e979d85f01339a536d785413b0302047c435bb50067306502303ab6be229da3c6f67e2aad0055cd14b10394b7cec28769deddfe0b4244643236f649941c502a114a464839f2b5a6799b023100a9039eddc53b3272f9e3f107245606a6aa2be91575d36fb91180ef1c7b24d60f0b3ac08255ce6e36028ecdfe19216c660302047c435bb500673065023100da72cf5d3f322a3af92d9a9c1214420cce73e6e640cdbf42542d9ebd092b394f6b7979c7e4341a0af07981367b2b82e702302daaa2b4753394b088da2e4ccce073e5b99f62d650bddaad4efa63d571afa6a699f0bb6601dbdc54161bf39bdc3977180302047c435bb500673065023051b4c3717bc721966eaad9bc9294e6c6ba90ccb15ea28513f5505a407fa3aaae2523f8d13e8d17101fd361e7f69b825a023100a3e11719f9bef0c98cf6471c62adc2d4a980acec14534a31a0bb4b1b4668672216960dc51984ac765033544099c206600302047c435bb5006730650230225d90765cee43fbbea46ca1f938cbec5b1d4b13147ef36d697405f1d220b735bd215b25a54fb9b8f61181bc498688b20231009db68ece32e53f5c49ea8a5f5332b6442151aaa83f603981edf51b50a49d1aec1a18aad115e407777c69a19a5c2635890302047c435bb500673065023100d845d6949c123e1e3d5389de939d2be04648f27b023a47ce608550525d6946d96ff4e3dead6df23abf660f14e8c14e8e023025f124768b2f87ef153fd5f962502607a16aaa5f05a28d56f24d2de8fa2cd86c154bf7ddb3a94f32147c0e23928fd8160302047c435bb500673065023100e0e1b032f2158a681bf07ccae7e20e87785c0df568fe5cbc4905630e7d52dc10ebe5b879d8ae8f4b1f1cf4fc3cd0621502307920aba0edf73027a6bf49ab3c0b9f2868707428a1a246653db6900e092c41f1988cb65ff9ebd97d03eb5ff118456aa80302047c435bb500673065023100a03a6e53db72ee964d07b3db9ea02c71fd1ba4a6fd2fd7af26b025ec91ca1a5c25811f36c0138df458d83348272d461302301986bfcf4cfcae200812c58412a8a83e022e846653f061a21e186558d275eda4532ce7c364cf0b88f05caaefe7e0b0320302047c435bb500673065023100f903c4463ce18d4733915c2ba509f75a68bd3e9f5b03d85d4dcee608f1a93f5d5b962b5d85cc4b8894a8ae0f68085d87023057d4fdf849395c30279718c94da0791ab71fab70783e5d72ffb3db08096f7b1643754fdec1d8c64372afa8165b0775730302047c435bb500683066023100a1f99367077d7dcd8209ad57c97438fca1a415692b59782166c21c443051fa43cf768889a967c6062868165c23648fed023100ccbfde3d456ef0633eecc94a1605cc45d7de12375fb3402fbc1f09c0b71789d0c56295209366021ab6031685827eec790302047c435bb500673065023100817644c4f2a0a91d2d42c46d01817a0b78273714d14e129322eb2529e427f0ce616a36578498dd92bb5e3822ff783bd002301b78e7db62124865985d8627df13b4dc9a762155dd34d5903c9e8143479b84d56863cc3633afd92b65c9e6eaf2fb2b470302047c435bb5006730650230275f5029011e011ddfcb78f2dde93f2c613e1440415d0b281cb07f66f5795cdb1171c6ee40ed05d7060a7b2e8f3e3a6d023100f12f53f3e21f49ba1a4f62c9d99641cfe51ca7a64d55c93ee8d831d2defc459ea09f4b124c6193161974f86f519537dd0302047c435bb500673065023100b9b19873d198c9dc771928a76ca3854ed98b87e5d5289eb2b45aabfa3a632a283cf865976de5cfe09f5ecf38ff9761d302300c29153fb500baff366b95db919e088f028429d44192be80cc681955a395db9316d254a2151dbbb338b3adf04171805e0302047c435bb500663064023028de3582d50700c3e8e130bab77742b9169ac55e14c5a5b2e5bfb0b36317234885ac64fb2d38cd40102dd01b4619d58d02305acab7b1e388b07bebf9c0304717a60b26cac6012b7d68d1361aa9b9f13f70791e05ba8a9beae75c98f912559bf1aa940302047c435bb500683066023100dbfc626b78488396623f16cb03111ee1c96231b7b0617dade23f85cf83263b50672d4884d2a6ccbaa457346370737ab1023100a48b8c4ca6f12bd88e549909732946cbfd2accff85a67bcd85b512ff909859858f1559cd86b42f4016f7b08bfb3b901b0302047c435bb500673065023048cd35dd86a3d483da23af9883328448d0d401ebd270f031d93f756df997c3c1c5dcbaf5c081b45368a25d7fc7e7f064023100ada8c78298babd017c400d260fb06552fa2005da4ea91c2305a1c8891cd057ca617a7d9b257cf4771a11298ae1a149f90302047c435bb500673065023100c2aa708c201f086f3ad5f84c7ba0172726efddfa797a26e01c911c1d97916ca6cebae8fece6d0bcf616ebc027aeef27702302eb4d477ef96c535b8292e5c0ce3d67956ccba79d0819874075d0840f26cc0aa7f79d6fadc6289786ce2278cd6bcca000302047c435bb500673065023100b1f49cdff3172f372a2b3784f29fb0d246aa53a14d5685a0907884baca6f757dd63991b8df0e87e77d80a8624cc51e38023008bbddc1ee4626fb95a2ddd46fd3897c59b071e9c90d3e0c12481e7728427e07730c9bec425ce6c1e526a0b6f2a117060302047c435bb500683066023100c3492f1df213a82f066c2df0564915cdbc7ff510c9acf289b7861a63b0fbc19e66a852bee5ef137cf8cf290241da8ffc023100d252e61379a308e089ffbbad8d4ca5f53d2053e421095692853a7d4331b057ca8d47fa62b142feda04c23e40c09f49260302047c435bb500663064023004c63b22a557b1e038c2e71384811d82c0c276c9a1685680e7c65e6568b4df1b40964d08188a8a3b8e6866b9f1b1fde502306a0f748a32bd19c67c67167c88ffd30b5fd5c4390923e21816838688ca7e1338603bc9747956c7c5116f728127ee4d120302047c435bb50068306602310089ddecc3c239d826314182f7b56fd2d12e3a4ee9d75acc4b30a3adf5ac57b360e6e44198c0c07267e3b8297eb7f453d2023100a0eb1eb3f7569ff558e833cd3c8c4a2a1bbce3c0de8bb3e8da7e6f7fc7f39f58b8e7f6c7f3308e59385edbd28492f3bc0302047c435bb50067306502301447fc8f6fb5f2e185f9bdf3ab66f729ae26030ecf5e989e2c15ab47848870853cfd51fad0615ca9fdcea9ddf0b26bb40231008906a67542f1c21372bfa75a08baba145cb8b708fba6ec56ab7753be1c11b87f2146bfdc86d70bd81e695e405f654b420302047c435bb5006730650231008cbd5fffedb7d56d37eebcba0ebce269e080aa8a6e1a89690b70c1328423e7353494bbba59438a8841cfb53d29e0bd020230206cb35be38fe3d0938c54085ba9e8c04ed4e676ff9f8b7ceae76fa0363780fbe83d2c026ad73bc51b240d2c0432a2d80302047c435bb5006830660231009f3ced31dd4b9a1e5dd88b72b0cbe1f0b223cdb7407ab3bc7bb1384895d528fd3b673f1294be795f32a3b0cd6307010b023100bc581a5d0140d8ff97926d91acd33d41087a797b76df43a2b10b9990993ae634e04f1927d20883bf0c11c3356e04b57b0302047c435bb50065306302305bc029225cec0b9b670ec93ae32a82c9c2a1ec340d478f45929ff75e76b9fb7b72307d34004c1812341d3fccbf92b975022f22edd4521a2fdc5c58bed3627cfdf59b2279c62c380619c2e43d1a7f946c9c3f2bf245b969043d019c5480d768d0120302047c435bb5006830660231008b546543d25495dd1d8661924c8786397207611a2a2ae1a14a9fdfdcf4e75a3c5f4fa364c46b29276d8193c5f925212a023100ddfe7fad96ce0010a6f34c053ba9a9166a08f231a136da4e4e682949a48aa2f44a3d7998f64f752ac1f08dc5b19663a00302047c435bb50067306502306efe02c3c7cc787897ace35ef1933d3b0cbbfe821d00b7868388bd3c8ea6ea40ae8e87a2e695991862aaab45dfc74f9c023100f502ee435d14e663e71a6bda3bfb9083c8344836169faa8a8253f74bc83d436ed4a72e284530e46ca48f57ebb76aee0c0302047c435bb50066306402303cff249d53228cd8d84ac0f5bc7b8c338f22e350b59f1b04c8b94bb9686af7f0a1253d5992f3b01a406cfa88c6b373830230526466330ee747ccbcf60c21db04181bd2b65f1e539dd8165cd72d5b3ac8cf40a2955d1a311a382f461146146369773a0302047c435bb500663064023000dd75ab02251422148d95eeca383d2cbb57b238bafa9fe052fe325e080d7037f1a3c3c3646593f7d93dca795c8608b402303204ec9e2bd647cf804e0f0a8567557da31d0b1f4772d5e244d77215fa167ab9e31d66d148e79d384977ed3b049e57000302047c435bb5006830660231008bc1dac183881fbfb543cf1b92bbbc0599c2f1846bb688a2e1479f89088ce15736b5924601d9bbe672bc7cad259768b0023100d483d3fd8a9afad95625e94a2d1077b813a93e3443e6e1d24096c4f1a9707532009d675194209f6ae77e982aac813d310302047c435bb50068306602310083223ee8d7fd0c9f587ee09e326c67198da4318aae3f4f9516dc3fc8237cb391936d4489b638a1148909b630932616920231009d3e6cdc8047c668e6b454748d7a16d0c8ba9bf4d110dd50d17f94122ae7cca1f99500d2c93127fcb1508acf3ad33afe0302047c435bb500663064023063a976b54b419723b75d9d3e62cd63e3e40f9472a7ce478b35131cdb606a9a1df018a1acda1e9dc931f6aba9aab8d6f1023007189fc0362ccc2a3427bbf07d10dffa618dfe9fe1d548fa0cb773bfa4e4ce392a283c1135a08ed731142ce48cdc23aa0302047c435bb50068306602310084f10016e1a88cdcaa6990277bd6c012a75a19a0d24c560ecb2642cbd26664c7b5f39a523eb657fc5cebacb1bb1b4ab70231008f16479784dc057d75407b5ad5a8eb01392e36e88e78831402ef0b4059259ba9cba7209ca775b66a9f3271f7d4211f1a0302047c435bb500673065023100e37884d259239ec3682222fe54e7851813a93f78cb0ac5714f39d9d6d3888768929f87ca33ede2424c42eeb33122c3cd02304ae8976b7a6a678ba2b66b39b66a7da2b18fdaf1143502bb996776bb4a04e0c4b8bffcb140c0679447e26cc871ef021d0302047c435bb50066306402307dc4bf87f01f3b533f36b49e19f721f606fe5e2c5b9b64b14e1cabe7365d070f00a7dc76cbfca70b05b7ec9db150771402302bddc4498b400f2979427371b9539daecae76dbfbd3d8f2f2c43788ce35ebb2ddf74aa85d1970333e63c9e655edb4ba20302047c435bb50067306502304e7894845048370e2b281b14550781d8222b19291fdc902182246edc68db096fc2f4ea6c6454313e859b5678c474960a0231008171cb9538d8015710b72d36635f183a1046b0097b14d61938e9e729b362e11f853dba0a50c248db3dc6c5fe8d55f1170302047c435bb500673065023100d8774768d9a5ef0d3867e664b963b4996a6198487bf34f9aefbb6430fad05c650626a498250ad6d4341ef732c8f5305e02303e7ef7a15a0d4687285410332d60290f7a614eee0228e77e496b286dc35779d8ee304298fafdc996180ccd73fc552af10302047c435bb50067306502306a4ef9629b28de97859e82ff317c7df80e5b8adcc06da743907acd4c1a09582027b92f0b5f12d08568dcc9c1f941dd560231008ecd8e25c2fe097a540b524d316c2b34cb817c5567f34c1c71e50d40a4532fb45a53c3c75bc11214b27a03505207f70a0302047c435bb500663064023007ec76abb982f310eebad937b3537b0bfb726c888fa4c63f5818515c335f4b56c66ca597ef5bb76374090fa3d882d640023066beaa063199c0bdee1ed37f803c4f75982545f94587c839a91308ed3b818c411a9c1cb0480c11c1dc4d18b017c5135c0302047c435bb500683066023100e9596e959b64c92364b8595381fba12fe023e00691e0d381cb472568a4be62116c68f8637497a822b3d3fe46e6eb4719023100e40d6240466fa35c55fd8d9fd2d779b6db70e5465cc1b5595c5d479266d9a1007a437ffa2bfdd937245651237a32cad30302047c435bb500663064023022cfa0672c0bb0c9b71c83df0e8238160df3c34cee64f210a4029494837ac32b90f9bf7c0789c1d3748f527591ed653a02304e19c9225a96957c74084df9ff1757ea71896ae8b945191fb389cc79ddbc4d2fa9713b2d69786052b5c40441ce4ccf360302047c435bb500683066023100deada1e33f319d21e5f646057f310ebdf198a95e2795d0244eaa7fb6cc42b800ab458a9df474eafa57dffa0a92c81383023100f067adad9a6ba02667368ad74797b9772bcd7c1ceb507d3b26d4cbd93f57388865079c37182b93e09f8e6be35325cd2e0302047c435bb50066306402301e50621aeb3063939567043330aca0407e597bd0cce320a5c7c493baa9b537c3cf9c17fb9bf5514ca204385f05fb5cf102302a0067484336ea1e73adfa6247935c9df4bd26af5c07b85296b17eb64f4749c3f2cd34dce4be32308375450e28d9528c0302047c435bb500663064023041cf6d5eaa99dfaf853491bda4fc55bf7e26c1208cc7f748f0ef715c61a32f53ff31fd9e773945954ad0fddddc314019023039478e631b96d497c52b5de48ad7822c13b70ee9c44350fb6914d82d79fa1b3440394fca5248189fd1916ce018bad4060302047c435bb50067306502306f27aca925cd062e6e7c5177ebb7e8d4af0429620f7ce5fcaecbbc1dfc211b0220c3b088b56d137ccfb6ab3e9204a4fc023100a0ab8903c526193b270f7e2fb09e96538091edbd3ba743dbc91321b5303762516731369a87260cb8e3f76b6ff3bcfef10302047c435bb500683066023100de5095e20a54739a607f551c03a12b0b534cb9e95098a6545dc180835d25fa64eac73525b583c7b1ec8fa4d6e56dc4b0023100f7d01091acea2057663149d758887ada37d99808f771aac9af90064c99fdf2e27215aedeb134eee302691276063048a00302047c435bb5006630640230177c5a8255eda61b4c89a11b9ff095fb7e6dea47b5ec53f46f6d14f8783527977719ba0853e641c874f4a900e0e849860230214b99e78f0a04f1388869f294ca34d366b1f4cdf08e3c27a68ab97b11dc7459b333ac2f801e59c055c6868c14cc02b80302047c435bb500663064023050f8b3a44210c734a1aae3a150c8d126bac0b7290f68b4c9cf74c8ec5ba8d9ca09e8ac047fb55a65f83a671a5f601c0e02302741bfe3065004add81a9cff5523e388f7f5c59c2fee0e4235a603287a82a43955730cea98002ebcfbfa539cc08ee1000302047c435bb500673065023023861c63733c53de424d052fcb2e377ba20f86b49128afa3559d5669eccbf79be1542aaef2fc4edacae9dd594aea48780231009a17574260c37d0c881ceb3a5b0406193833892416b45cc16eb7007fb31aafa7a71672a4ec07516eabe1c6fc9e3fa6c40302047c435bb500673065023100ff5f9a3de969bddd86f7877152e47b0bbc6dd69db760e154258f404d5cab085ac5fd44e0e2d9b1c5a9d3c32fcb5e38240230164e41ac27a0cc46b68aeb4b6b4403cede3a0aaa44c78625ffd4752ae3deb52e414bf019065edf65a9d5b048dce914d10302047c435bb500683066023100b97be41895bb7273bc82bc33c4cf08dd660dfe77babe3cbb6f20428cfdc09855630feb13323dce58e7007db7e2992765023100bc07fced525676241528a123df73eda4a197097b96dbb221229dd7caa121c91c3dbe17cf3dfb657f89c5564208833d6f0302047c435bb50066306402301cf5e65acfa8c80fa33ba6867a1960de2cee96d3ab4c779709130f8fe2b89a7946d7f7f4dc684b1d96f51d9a8faa7edb02307f0b3db423cea8c947ef460530bddac7514126a0443fb0e1198965a83531baf77e0608220ee73782e0c58e09bffe0b3c0302047c435bb500673065023100f72f7dc3c9beb03bc059a137135acd9642f493cc76a4167f0bd28e2354fc7e84b596eadc77aca33a7b6ea0042b7b274202304af129ba8cd691627f6de54458928c82e53e444b2fd2e67b33ab097746b36316d3fd8079ac57ae76b909b0f5dc38ed850302047c435bb50067306502307457ee220c377ec2f2380f439454f247a4ef39aec48c6d3bf687261166566df2e285bb2aa47267ecbfcfe9c53ec12657023100c245baa1b5d40c145b7b1d7a54ba380d3679c45ba20e6771fa904425916072dbf991af90de9ca313a9f36696f36875de0302047c435bb500673065023100db51b9b36918f01bb5fe31e041296060b46ad3247db82dc4e2e3d8d79ffbbf75e426a83a82a724880fd0c6bfcbcedb9b023022794c9980d45c47ba5a4b4ea1e1f628a6bbda6004a8efc5ade189d2b9e22fa5e27b2788a1576ad61db208d51df448890302047c435bb500673065023100ca7c2a09ba0efc6655036058bb6ef91cf0286fec04a72484ae12bd591a48ca59c129ab405c4427abafd6146fddb531fd02304e040502c9541c682fa0f11f331329e8aa627b482b5e95b2240cbdcad3c1b5f4b0604b51c4063e4d6545cabafd1faf150302047c435bb500683066023100ada6032d2005999c0cdbd1611ebe6194a2af56f48fb9f32a0eb3f5b7123df84a11f73bcdaa66683d349f73b8dd7ccd41023100fcfae3a8fb917ad87fac63648dd3904bb88a79d96cfd39859c73bc8a29912e2221366f92a79fa3a6267b4461e193a2840302047c435bb50066306402303bfce4961655061122594b5220842b759eb63ade1fc5c9ddb8ce29bd4de3a7351449af90c085132d479831814a10d36a023070e4a670d53459b7066508fb74ef4cf9a837b774d9920335c3cc42dd04956e882eb315fe0ab07ed726142bb569385d910302047c435bb500673065023100f14bf453479d2086ac787dddb02c79e0d405748f04dabcf2b8f6084f59b5bd4382f4894a3b96ed66eca774ebc14230f402302fec13f60a8968648905ac02489d5f08dd52f493526ac040ab0f5dfc763d2753310f3a666e45a69ed07a5ad86ecd8f410302047c435bb500663064023062408a4bd24f6f178c642966ebae063d89022e71a413460ce58f5efc283594e3419bb52b267f9f1f1461d763a66315ce023005464b45df5701f7a3991a068270ca82a015bf81f17fb5dd65e790956abe486c926f174e85b342d83c42b4c3780aad490302047c435bb500673065023070621a2c274e8c448aca6a657dea7c919a4f362b76fab48bd9fc67b4bf201fbf4db7024aa64d6603f10eae4bc5d57b07023100a8d8ee4e33b27321026d933870d32f8b1d327311bd71ccbc929147a59089fb01631cc563d43e7a1b8d50ed5cb57268380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d0692696a0c00769d1ffd5f0457e6668c08824bb705c70ffbb51b8a6b600296c5be81834c6336ec3f38f99f859a7b3c4023100ef97af10893c0ed8827dc14496e2a13f723ef363804b4c5147a5e61bf46175279f1d4395b5e28b38327c12eee87782bc0302047c435bb500673065023100f1b2822aeab44f13d377a61b191c4385d99b87c045e3b973069c143a39bfa6fd41f92bf9ad4748ea3cdd81eb7a8b61b3023033fc498a6e970a8307069738ec04934efaa5c90621fbc0747c2f36895564060287970d5738ce1f8d8dabba98a4fb5ad60302047c435bb50067306502303599fca7c7072da8752d507b569cade132e82b674596f0bdd1de89de197b65b0bccdcb62eebc8c4b626e7d13dae1d8f30231008d6d4f2c4259092e24a82c419dfa0c01f1379f7528a0d8f4bd969ba9afa600c920f685d3b9468b5d66e91d4be45a10b00302047c435bb50067306502302d615646615ef30bf995e391f5c0f211d1d4dd2eb390ecae14183d421d6c6830612c1dc94fa9fc3e1f1ffe26b77014f6023100ea75c1fd46ba33c18113848e0c63a0834da142616b5786c459cac6372c99f27ffb5b636d52c7e6c6b8e5a427574a33730302047c435bb500683066023100fcaa41dedf0999844d598f6ca783c659defbc34c420a9a17368c7ab2809d3affd0b665274a2057c766dccd5a2cd187fc0231009cf44c5b0560f0a7b5f43ebe751888a550ed5824f3e20e3a3dfe74a12a2e5fdb1c9ad4e678a8c6d68c2a21d6960fdff20302047c435bb500683066023100b78ae19b8f04e00976ec48ee682d03f0bbbe86ed3bfd3f85feb182c842754368230150b11a0718c9cbca6231d86a2973023100b9ccfe6f53a8a4cf6f8941f3ee02ce4870d1be4d7e21df68084f1e1a002905cab974e78318de8ffb24b9bb25614088f70302047c435bb500673065023051a4abba787022dff18befd6c5d152a0bee6c9f0b5250514be704a3742d71f95036024daef166e4a98f88d5f282f9b7c023100a264bddbd44623a907f6496c85ae19ab5699994822f72e8295ef06d29c62cd4c4f4a0ce5354db3dc8d48d27e4741dcd60302047c435bb50067306502305ad3d4ab72e42a7ab17a11e1c82e687a7010c74683d7c0daaae63d450573c5d306e09a5bb3997ba453ee0419575132340231009c57339967623b675e1e93eb1a74313f7cef7c846d36295b097cd969c046d745a4507453a2e7acf244dd5906669d0fca0302047c435bb5006730650230582f8c3fe4d4f88b896c44d140606dcbcce565f7cf6778966d3949530b0f781781673eb66731b172c613e3b02fa103f2023100959973e09e476a703eebe2cec926a9ecc088fc09f3238b6e916732f230d99719f2aa34be157aa6c4135fd45a86d751270302047c435bb5006730650231008f76e32dafe5f39dd57888af888e643ccfac6c5ca47154dd0c2e000d01bc13c620f465cbf6545edf337156ef94a37d490230324127dc5c96d1fda3f80d40003cbcf2077d33dd33dbcb431a6fc860ea6555666436aeeedf09a3f3423f36f9b78f0f1d0302047c435bb50067306502303d39d1e21918a1f74e44711537123f71c2740ca3284063f2f2ad2d72fb007e3f24a52eacb98fa493d0b7a670129de759023100b6be7105a63879e0036e5aeeb3eecb8c49e49cbb9bb0c60da46a236d38f3aa61fe933dab8d29612fad10f713bcb7b8c30302047c435bb50067306502306489d9fc644f831ecce88a7fff7efee48ab29d2ebf0d80b0ebd1b9b6549e2201366cc1e49cb779a6ee51712c01c2b100023100925f6a9dbad7b60b4540e8b8ea6c23901c0de223b7c5a9ff554185494d22dda09fbc0d6342f22cd4ef5246f7444bc6300302047c435bb500673065023016b831f4cdab1b7035fbf6951f50a98afce9fe7c6a20aee5cac4780b2b8fc7f8bbe1a2344222937666612f1935be4e6d023100c7d99b148b5509f6583e7f00a470d6195cc0385ae9b03a76dae2dbe2d33a77e1f291628e43eda6bca2b0e5db1c50b5b50302047c435bb500683066023100b47f22fc87bd77d3d4933302d0041c53c93b3f2b3954c07e7b24b25d8edfb0dfeb4a94b7e606a6e5d3c9745cd24ae78f023100cf65ee137cddf980023163a8b2aa6db297bb4fec939e9cbefada3b44531e0d3061061706d71a5906a8eed82d3198dfad0302047c435bb500673065023100b985683d940bd9be98cb314f1641c29ad1579c3af4dbd00c1cc95c3916db96356312487219affe8101a5d66c835627c4023057cfb2f4912e418e1820231f470160fb3f3cf09f4dbac634030875ab034d4b5b68eeb0d1c7cac7c6bf735832ed79375b0302047c435bb50067306502300795f6462a4e142e0d33ee132eaea97b28a4d0fdbc090651a96b4e9f755ec1e55668d682d1e8f1532fb57f714910e2d4023100857970450cf2eee00f20ce835710b6b90f37d98e05b71a8b57c93ebc2e4870e5e85f1dae9c0660558bad1c7e744baee40302047c435bb50066306402300d291b37e3852ebd452e0387975247d95ed59f4aca844e71117d6519844253ff13fdbc18d6faec589f4a1e68e97aba9502307f5393796f3e96c9e2f333e805e0ee65ab7c1396ce617ad74791704fdacd3208fade3d61b1ce1389a9cf0090842705340302047c435bb500673065023100d681c425b978b7970b34b446e98fcc6dd799a538889f3c5e63052d77c413c019420fbb1cb212dcecb2bc2dc42916baeb02300913078b3a095f335c2987b8515f6cff4bb0e29703dcc1cbcdd687c369c9ce721e989d665f5d409987213097783632540302047c435bb500673065023100cad4246260df7fee0a035b2b1ca5c8d74a0b35d2b9ae2c106d7d5423753be17820bd870d58e800fa41b766c0a95c6be40230335c05f2913c54985a1d5b34b437150d7a7457f6878e52ec39d5263b59ab8c9ff84dcc93d34539e8bb00ed19880259300302047c435bb50066306402304db22ad5e2dcd5894d29c9c755dbf5bf14ffd97138b3564d65513c784775400cc7e1a3aecc76385228ed4f8be280f4fb02306c3aed4aed2d4f4758ae44e96beeb870856dcabd68906bf536c1bc3c807640b0b4e719dfe10313865b2e3a5370ea50760302047c435bb500683066023100c3e4e289ec824e6098eb1ba3bf03af93d03ffba9f71c59049e941fe2fa6b37a8a05ed697b9b8988e4e6654f1d8f68cb9023100aa25a9957c1e61ad8377165e2f70452519300be2a08a41b840e684fad7fd7d2c79c8649b65f35ebe2430af57c4f6334d0302047c435bb500683066023100f0dc3a552ab4440a35717e39f8d7636e40af7983fc6249878b44f81cb115c0c14d338d4bcacdd4ea3424baec4931c5850231008b96e7a0c6f7952c82a0e30009281f22ae83b9675a9778b19c866c250af4e4f7dc52676538492fb9b82ef3d09ee9f4100302047c435bb500673065023100de8ec9930ee212f36de5aa7b07414d113bdd5d54256029ff684167b3df7244c149853c41b3744a965f40260d545fd3a2023064275e4ef52a6ca2ee62bf8fb5b934459a22636f628ba67bb7ee2075161fb39fc93d2b113e02e870cd2539790d9a320a0302047c435bb50067306502305f08486b688404f0ec994742866e03924733a226b750a3c788bdda9d64db72e25f8e1bc24dfe36246d13d29f3d34564202310088ea65f8d1b0b44a4535354bf610368991cf088a46e9a101ae781ab7be82a865b26906c4fa0c924f67b619e996d8ef7a0302047c435bb500683066023100eb2a604931ac7af7730cfc83447d858089feaccc0b14ef5ee02335fda8b1a877e36b144b6a79e2f99d2905746400d996023100e5c62065046cb7c42dcf2b86f52ac8d1728fff9ae47a37495e5a89e26dbdfc0aa4805304b8cd7cfb81fcfb53f2a4ac0b0302047c435bb500673065023100ca4f616f11636c2a9a17f3146ea2fbbea7318cdb8073d7bccb70df126f8b5a133366757f0abc1ac11af51227318b1ea802303b7fa8c202bd0221a4397007f1b95a6f5e5c5165467818ee57627ace970d8c426a5a6a6a83d51c86ec591bbb727f65820302047c435bb50066306402300a0b4887b55b4c98cb71d38efb07bf8f16d765f4f23e232da7d1bc1113a9bf2523b1065812f953198a2fdd5a040acf010230681c7a6c0b1d22e999257ff5c9c4e1b75a4a3c82f68ed033082470c4bca4164fa97d92460ce2b57bbd0f0b8d8715a9cb0302047c435bb500673065023079518e081b6353065646220912040bb16a3d6f3d1a9df943ab2cfd54cf61415f2930179e88c1520a424fc95416c48dcd023100e19a6c10c1485aabfa8079215a65972df8984959633545545202a27290511524f56081136fc7b7d80c8f1daac001f2bb0302047c435bb50067306502306108d3a7359c35d326af95ca6a6f64877574b154478168be43a9147097486eaf61bb04ae8ae47f5eccdc92cc13a96778023100ac5adf42d136074cad9bc832809796b19d044ef53e760ed2e924a603c4f85fd9605ba4f8fa0eea3b2503a0ed8b161df30302047c435bb500673065023100ff1eb39eb802da2a6a8f33e46591b960bf749d3f3647db2974056451f16e511c9ec870c959acc80900ec995b779914d20230030fbdfc590df8d858aa6add97c7a4ce1ac00988c0ed40aa146b22d4ce0054e5e46f66977e9e3822dfdcceee042e1b110302047c435bb500663064023006339747edf9151f010e7c2c17c6d40d016b828140a304578892ab0c3e232af566355699c669791105a65455c0efa6c502307b65f48e22e1a7a9240cea10001f15b3783bdba40239780adea2330cbd8a27102ae2d44abd41d2dce206b0fd757dd7aa0302047c435bb50066306402303db4d7b2c9de1bdd4516b3e6631694f5aec7ea50016fd57026131c3aa2fa172e2ea163310bc2bbfbf1dd2f7c7e963bda0230248a742c7bd018796288ea25012b9dc28d9538bff228742af89c4fa2140a52e571493cecf53fd7697526f8d3ee620e1b0302047c435bb500673065023047ef6d801f12d721ad8a79a3e5c88f5565c0db53c5d22e5b0589d34411a9b3d8f027490b64d4aae739a3dd0e6943c115023100e6deb2346b32d33360b73c85b589d70b13290556296bcd757684325f7093d0d7d723f2ff134e176075413bc21cb0acb30302047c435bb50068306602310088ab42ec5219ec10bb8f6f11074d027788e7c773b4f8a8b1aecd7f4e07d628166194faacd2cb8a71eae5bbb8bc8d37cb023100e9d3d7d2c9234260c86b5c75372fd29f2b8995d62947ce36df41dbb052942bf90d5b7576c749d3d42a4dcac16ea229600302047c435bb500683066023100fb2cdd2ce1bc61a3cca9c1898050ba323cf92b9450462263dff1b3a69b119b30c5f267888a0887c0dd65c7699585de7c023100d67fef27e08591b7c2dcf1422d276d0e28bd2862bed2163468a709a73e4f1f0c69a02ea9ad13ff5e82d9ded32f5837330302047c435bb50066306402301fe548e5473336d112becf3cf595bddb758b6b9fa394680fdf0b121b7287a2afcfd02ad895d26bd8d3cf4d8136faf9ea023051bfc5e795ae17c12be864a1cf07f19207644722411eba1998075667c810a45dd7b0c48edf77dbd3e96a374b8e739f680302047c435bb50067306502310092fe588e65a21da91af8ab2c03f7e863e5e7209f84f7d4d79f5ce28dea8974efd5c1a942180bc4d3a5e860727277a90a02304041784135b7396e55c3645db8c03a12957e77ff449d54c8d333dcff5025d4b99ff71a92877379a9a0d823a3bfda3c370302047c435bb500673065023100d4d6e27620de7f6910c1b6d9bdc2f850aedc02c2418c78e6de7e58b8ba9f7619a9cad47713712f4fe40e38ce1413b65402300bb2745bbe5eef18771720dd584f69106a588d940f02da8c4d25c2e697f58606c2db028aa28cd52398184151a58fbed50302047c435bb500663064023034a60d9531c5b62fedb1577f0448f4f8e983e5eb9ff1cf8950d1137b2a3356a51c2cf8c99e13ae93793251d69430e4d30230716289c37809202d6eb682c10fb15aaa90bce7bbccd44196e346b0c513847a759e7a2e4003c2053f8c85c0000d5d2b6e0302047c435bb50066306402304bf8ee9c2b74be881c2b5c54f631efb39c6e9ac6d79046e7563576b9556c3622626dc6df537798f9648d75819516f5e602306e0af1ca7d1b22ac5135ff98066258f6a1bbe29e37e09194af401317241dec5abf04dc618cfc0b6d0278ee05449839560302047c435bb500673065023000ead66a2396fc99c9c88dd25c40f21542b565620ab78680838ced00f7e43b8e11c10d39b4cce4abe98234ffd11fdc56023100e7890d1ae17662636cfd16b4d46478ad873832f0b63d4689c3ec51b353689394239c57c64b0deff64c2a325f7b0970cd0302047c435bb5006630640230767521b2a7cec80111de35fdbcb17fb7623f4ab74a11d3c9e80f388baa9c51bda568477be066a27fe8f769bd3d76e39002304ddf06315ddb9ea7535369889784484f11b3ef82da22b9246758992bdc8ef4783b35d18d43a093a363ff046527c4490b0302047c435bb50066306402305dbe9ee1cc296e54257be04a7012faa2af9b51ab72ebc45648e41785233d2ebfd4e5053bb122c96733c732a3d571dfef02305d3a93ee19c97ebca12d236a749fc1fbc0732378bf738793879d0a5a2285ffe1bd7b208e79e86e06bade182e768743e90302047c435bb500673065023100d8af1632391c994d16e78b6e351f45a3df116b8cc340605feed757ec58bcf3ca99e886807ba0d15460cb10e3ae4dbfd302303454a592a8e8294540010b4a3b0cb7809b770f0600883e8e27a0849c2cdd18a71b6b4ea44b2c9f5e57e4f8eb03a0919f0302047c435bb50066306402307abb1b8f06e406ace16a5d37426ceded1ab3291c2510976d1c15c2172054299800479e773c1214fbac2b2334303a3beb02303e7ff7d704160fa8eaa4f55c37c3c0c39493413436228749dbc4a182b31a531437f79088a8d7f7129fd27421e5dbfdba0302047c435bb50066306402300deb9d9929ba7addca3f83140805e5081239f741aaa4a1e4890598a2f9c47b0c5f4af2e5553ea544bb5525a821587a9202301627d9c18b9bdf5330e155b58afd711675db6d827235b53c2a913433fc015e0f85113514f52120b6da4635acaf2427f40302047c435bb500673065023044aaa05fb133ed14afad844dd3b0e6d2bfdb5e440a814f9b89989073d6cbf53ddc1aa186968b2d3ee52db932a288748e02310080a00ef0df77e10be69340ea99689da08ec1a9e9ee54317172e207f261b3dd412a348982256a507941b1dd508787b9cb0302047c435bb500673065023100d5c45e50f39a6d93d4987da5ac8f0f1e8ed14aa46627767934fdd1654164e544fcc828940948c28401d7707cc1af211602303d900e1322f662adacc9c86b49d749b1083a14a15eb4c35c7e5e1d0aab51bfd7f6e6c9fd5151196f377c23e4809878d30302047c435bb500663064023029cc71357a1bbdcd820aeb0d6a1190fa5ed571f08e52448762c85d612c0b106bafba66b362dde92dd5c231b4e5486b7a02302d81307e8657a919a0a127082aa230b42378faca450f03f81b5ecefe12687b8e93ccec56929f453014d492e2251180b50302047c435bb500663064023050ce6e09d8bd525c5c82c702b1bf8249abdea67380840be3f4aa6ccc4b03d55e42b6318764fb6ef56a56520eb3d1091c02306edcfce3e65e9aa928215b4d73300588ec0612720fa6ab850e3093987df636b891f56d9419485afa41c8acd4e80c8cca0302047c435bb500683066023100e38dcd1bdb0b1853e3975e4e53002ea553851a5855be0f2d23f6c7b71b2b350009cb3f2c445510c5cb728a7a646bb9eb023100ce29235443318b9a19d4c328ae549673f269a979c6f165bec78476470eea3d698dc9212d6e0675a5b4fd63751359f4560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305a289b0fff8cc8b1c2c8fa102ad0eb4c3c215246ae57af83d8aca9dcaee2068c32858f7361ddb06269f0145c9db3ac0f023047900b50882c39c35780175ba38e9aaedff35af0b55201df03a5a11c6a329fade6acdf8cbe1e3bcb38f21bc82bce988c0302047c435bb5006830660231008c5f9b038b1c69935b91be27bceb0eb50f458515918b5930028467469a3e45718f44c79181b226d5238778993707a4ce023100ebec598ae48ea6bfd4da419bb48bf69016715ccdbbba663c2bc887dd54d6f91e38b27f681332a0545391b196643bf81b0302047c435bb5006630640230175012278e157ac30449705e7c8e9b11d4e54781978153b3add95d49a5fa87d41ce9aed2dc1839621bcfaf9fbd6e1a8002300c069fa822da94ecba21ddb4e0910ce60e606ff9923760ee8287cbdb500618964e8f4228d992a16d3e16212d0bf6a8b90302047c435bb500683066023100ac06fa55af930e7c40032ab35c331bf7d57761aee24baada574c946966d4d26a4db3e80aaa52aad1f4ea14459663407c023100f25ad5d3bea8b15e58bd21e791dae877ecf1f6e866598f2a669d9a35e8b6452b6454015c92edc21f39c6a4bbc43b54f50302047c435bb5006730650230676342b7b29aed263f19713f12bceb4ac3ca54a5247202ce4972fe2a78da494ef011f66e8497510f199ac32c00eaa3e8023100dc2cc9f8719d6442271c45aef68eea1734fd5e48015cf3811e992f14d4b6261b173ae3b34a9ba5fd06f31c92a118a8870302047c435bb50067306502305d5a97ab51f0f84c93d47d0c88398e08b02e03aad8caae07381cd0bfee2d660c71629539588f80324d8730b45eb3b12b023100b8f6f8c2c0ab0b6c65fc2c4c1a02f4a9631d700beae837ca39698d91d818b0e587dede5f87bf17d72285028ee59a3b560302047c435bb500673065023100fcec105a0b1128ad3ff675fb2c5b74959b487c600bdac3888b9274b1c4a1ba1c43a64d6844f8284a37a2b74ea4c1b13d02302910b9506a19dafd5eb49f2ffd69ba00cb0262f1c0f9a44d2924130685017b561f1757e504778a098252d6d92a9d043a0302047c435bb500683066023100be6e6bbe3b9a9527c4f1b311aab3daf16f1844570bd01d7b5323eda9f7ce331a47e4d99fc41bdfeee1fa088d5cc1613b0231008e877847e76cfc435019783b1b1000f8ed0a24149a147a50d97d554f2faaab23f351ad4d80ea45efe1461cbee15ba49d0302047c435bb500673065023100c33c37eca7db02b850aa74929cef6781d3194fb77fd0188dbead180baed50190a7055157f2a1d3fc9aae1b574853ba920230747af4989bab728d8cc0d6318aacfa95b9e4f9e9e9b53b0e092156b3052949795c2c1439c042785beba33f28d84c49370302047c435bb500663064023030fcdb654e28914be23eff280b67c5875899d66a92c16de847cc60f995f0accfa84e5c06b2a2572a15d1ba8a070108670230076bc3c6b8377b7ca5590b38e1f206bd6ef6b856a6514417d7b5df8cadeba0c382a86570d0a73a00f3de0198ea28a4920302047c435bb50066306402301c2813e79a79936a4d05dbe73dd4f7509c67217a801cc1a7f1f4a87a4ec7fbb1b878e274464470d7e5e35492c6047b0302306ca16d4bce0604ee3787b628aa7bd0f6a292c3aa84f2db22fb954b376808042962fe95bd8e22e2bafac49f2b5777c0430302047c435bb500683066023100e1212bc0526da96a26f895ec9cb29380d0e7ae905a8f01497c9b3526247748507c5f5a2d958a1635d27b156aafac39be023100a4c612b7e086f2fad636a5ecc5c470d8295a240e653fea47ccf40be941625238955a5c2e56a82b6f2b7dab00d0e5bb500302047c435bb50066306402307d484ce8cc4aa512a6a214c8c95a3846162f252018d5d398d59b80b86954040afb40d55e49f4979a5b86eab5d846611902306d157472ccee1071c38046dfb91604214102f36d2c5d1da7b0125a108e14efd32b304aaf4f6f84bde68e33464fb5b7070302047c435bb500683066023100b8d1a010c9747f859bf3918f942c4678775c6715ac0c7120ae565533b3751fb67be709566fb21808d13723f692f65a1a023100d65791eae70be17e8652b7ca467864c37ac00da6bb650728a68bf93a9cf4a826a3bfa5ccfce5ef2dbbab3b2b66c536950302047c435bb500673065023100eda2c568f1808ab57b54febca08163580d5b24dccd9ccfb5de79cb192c447e394215e2c2ad88106e59eb31db87c523d0023057bb2a9700a563c3762d1ca6e662b7c0ef9a4ee7fbf41933ea321b9483e48547f3cee835cabfef7fcf9fe57bf98356820302047c435bb50066306402301a89c9ac8e3d7f3f606d7e09ccf151eb18a9021f0ca3b7ae682bb03b19e61d11592033bbaf4409a342e66a6913a692640230489ac6796653a6a0aff4fe81229c91ca95cd6d347abd6b127b285c6323eb570ad21b9eaa40d6c3f88f1b18126ede47ef0302047c435bb500683066023100df6e7be274a4be859b5faf9d4a70c8cec4b92caa591f9c298a4270d944234369c9fc991a102c7d2e33e6037f5f00d7db023100a108cdaf9d38c2025a53ac0f2b48f320f4ccdb58d462ed30e9498454b7ad955defa65bf900d0ffb56579cce5ebe1323b0302047c435bb50067306502302f549ce26be622ab08667de59d2e4a4120dbd9bd48937d7f5323ccd96a53a4fee879afd5a0d20b853ece1825ed79fb4e023100fdf4707aa0cc0120ea0f9b05a9ac4887c6b2dfdc49df654b9b9e853a1bf8c1201120329010e5922945c3e3f31732385e0302047c435bb50066306402307f003d9d23d3905c747d8c84447e0ca7010746325a856a65b96ae4e22568549bc4d8373f384b9e25469f4b32b19fee830230045ce5bc40a10f1afce04f061e9dbaf1e322fef1da9d0a7a9e9ca0579d9de6d0dd6f6fa58318c72a1ad2a767ef2e14d60302047c435bb5006630640230721a2ccb67496b2a204f64361560d9ed2718c5bd4a89fbe0926c2cecdcb2d56f2aab36e46f7b7d50484964746c1af55402304fd8f968dd25d397dc6dc7966854032a5295b5f4359774d6fd38418e0c8766a78006be8738fa8d6e4017c0caa63c19fc0302047c435bb500673065023100b7c757fe5df0e8421f1607862ed7c19a7f9949caa793bfea9be4e0eb3267d8d8f42fae46a21af4ee407f64cba7b8159502304e537f4f81850cc42902c588f12d2949d9c92f8de2a83a5496a72bbb5da0882d04d553b3c9cb611a742e382b406752cb0302047c435bb50066306402305d25ec47ec2da88c7e13a324317ce47f2997247a282d31c4f6761e946533031ee63117d8a5961b102377621f05581de5023015ef04de706c4c493359d70201b1b023260cf633be043837f3e4cb65b8ab2fc70614bf689eef6d7dd28c7e5ef7a3dcc20302047c435bb500673065023100ea175181776e5c08f0b3f26b1e094a6142be6682fc9504291066f9adec1776bfba6672b405642a5a01d51b38951a431b0230059095c3033dfe02a207ba4eb99dde1fffbe309b080faa33aae4b3229960e6a568fcef4b39e368475dd1af916f5d98ab0302047c435bb50067306502300b8c47c4a574a6d25799af1dd79cca205e53aeb8387676b434ad1d0098b766f3d9c1509cfa8df2d1a3a26355f7936b3a023100dfa190f7bb140bf5e0f80495f264350e6f6a717e2fe8049ee352340625b4e4101b3becef7bf341ca2e4273e18935ebe30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307772f17984568de6c0c7280d1f06bca012ae6f509ef6e571318a03556a589ef6af19919110530f25ed4f108e71a7e36f023100fcc6cc4e9bc6130ea6199ff0307bfa425bc059fc9de0bbfe57e7a57ffc847a14487d1edad77144f294ea780f1900f3cc0302047c435bb5006830660231008c48fae2eeb25b1cabf2ca3e4ac8acfef42c63345f974aa877bca1dfa0a738a3b6068adfda1662cdd402a051ce4663f8023100affe65c32ae5043be590c31e0e6f3d7fecaec15d7140fb3c0c336c73e5ddc0ae0b15c1f98f972acbcace202ac612c8840302047c435bb500673065023100a78fff37e8272b04afd335a4b6869dbe0c478332fd4fc32f7718c26c573b3f36c8289caddeb5e45fe564899986c467140230696a3217e537d619b4f1d7203009dcca241aa653d76ce7c41b3a940b2e5bb7510543550bb1c51f1c438703ca5685c5930302047c435bb500673065023100db5b92b24ddb4de9bee777e37739d18ca096171029da27a26b836d07c6839c392f5749ed40185df3b953a52160c954e402304b4a6d23b667e6a77b6e1555ce18045575569f1ddddce0a5862f45ad09d060b437a738f98aedb34e04e6db05c6fbf4940302047c435bb5006730650230122bf40f41fe27c67e5d5e84f0e22fd4e2fff6e56b7bd2e2b91405ca5c782f18ec6ac9d0b51a1fa8f00e06d1666c108e023100c35586f56c82920ad5acc445a63c5355a65b53a30bb2c2bc080136d3440b2607edeac89592e1fd49543c180bbc1884e90302047c435bb500663064023068385c1c967a80eb098e8e14d8df50c476ce06bae99551ba5148a0e64577f6952c3f3a1a19c492e63769540308af56b40230779817513a33ae9c8720cb2eb11bb78752a93c66224fddab940ce41e6a331bd92418941ef63b1f641afbf84a8f910bcb0302047c435bb500683066023100c10e0dc0da7e5e0bc593e8833387d91dee8d4e1e5f2a6a044c0be7f4cd198bad5a6653b3e473340fe38a26ba614ecd44023100d7a415e7f67a886b12794786877a9608f1b1483514a5aeb0c7ebab4c3d2011d5fd5aff1aa8a63f764fc6262e7a29a6830302047c435bb500683066023100b1d0114ce3624d797110dbd886d858e7635b9c8ff3a1b4723599a8fb18a8faf393c02f53d02fac7d76194845d1c323cc023100c0d30488ee327814aa52e708c2730496fc30c7c3dfa6e545d69cef121a79ffa5ac638fb181035c50fb317856a601e5cb0302047c435bb5006630640230496ff53173354dacae4a31d41bbc3a69a75d0112f60207d11c28a16bffa50e0f726d9cd8eb1a27a8ab1a90d69d28841502300e69fd9ea556d45159c6aadc5e2d17caa4b2c26e6e376a9c972da2dff93aca6812592a90b2e2ab5b74690fde25595b820302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230050e46146c84ae4fa75d3e9bf0bce1c6b0fe32260b88da54c23d607b3198ab564624adef7463715f99a10c9d894033500230546eb0f8ace9bc1ea6474d4dd24af5391bf68fbf6cde926ca1bff658c7bcb6f8f1700d7d257e8102c58620a3bce16cf40302047c435bb5006630640230337515f6fa382a5c3afb7479d26c28e6377a3b83a83c4bb08d50c875736c90c7a0f6cf727e1196d3695c29825d3f3b92023045d5d337a1cff3b094fdefce8b76ddfdc99a4e388cacc27283a1ae8cdff2ae7ba5c63cdf778ab91143d0c69b50afa5940302047c435bb50067306502301586e202d5603c8dbe61a0009235de10a115ed4faa34b48e7353879ca9d845967e47fe10706651b965edd0c1263925b0023100be23f5fc9e2f40f829b671af28535a3447b66e3200301bdd55c68c2a80aa2892e9ba444adc5cd8721e6f99971346fbd60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301b86530d042f03c6469144a4732b9b4e4d35deb06eeea89127a31d7fc829991127775962b16088f9388e84f230203c070231009d9bf364b6fc877573859d60e14390bba6ac86a4aade355c0fdc814f977c32906cc752e806fe3606d6332a65d278315d0302047c435bb500673065023100ed1cc2960dc74c7643887085e19c4bf2aca65454c307444329a4bec829c0467656bfb70e21401f0e1fa701cd275a863f023064670be3eaa3fa2f9e1364219895e0309231bce0ed313999405d77678fb71135712782b652d38807f39b3ebe35b191bd0302047c435bb500663064023005c5f8e233944a0a0c0397198009063bfbacf9c09efd4d0d62a9a0d13e3311be629bcd76321344bd39a17117e4f350c6023017d0ce0315bdcf9efc0c3e274c81ce8caf332da1fd57067eb49b81c251fffa0c3378fe07fb914b78acb066d5adef11990302047c435bb50066306402307dd819ae3ccd0849fb3485074249fcfc82b9c826e47801d8224f1b1ef48a4dd2399b63e60f3b417f1073dcbb4fb3b1a3023070dcee4d3d4c0abd0226b09debe6ee1028beac83438a6193602b7a18484581ebd19b28336449783532bdb11eeebc78300302047c435bb500673065023074d954233ba2678ed0c08101b9ef3d364936afe4d92b421a376c6c2fab76c147d5a332485eb1836994f504a9ebbbd2af023100a32108e8360d8dc481cd3de947392856cd3ac9779bb2bc996d918bc6904517a30cca961cf904ef63710f010b7d7c4fef0302047c435bb500673065023100a60d82332381119d490aef255f6fc6aed08772bea624002d6f34f30c88459a68806b7d6abc6ef37fadb4bef611e53f8b0230429d540312454fcca7c3b2f9b7b8674221e2f59892a029e6ef71240788782b874a68b8a49673e60fdeeb9a9a1160a6d80302047c435bb5006730650230123501b0dc3c16ca10baadd09be27df4c985643b1509a2cedfe7c39e2a49536e2016e3708c8e9546262d84e33426a5ab023100fb4976c2b24a51e3c44ff4d70c88057e5f87fe3c339bbe11a65c33b31ba0c5dfdfd35d7ccd0e8f1fb7186af9c88d8bdd0302047c435bb500673065023002296c245b0d5c7d6fa39d0779b49938aafbc0bb1ee6a1799e5862e0b82bbb3436e2293f5f6dd98e412f055d04aed80d023100fdff3202c0664b50be6e9fa929f7ec2cee06f33b7400781ad52ab1e52976176b24727644ce6601de4788fc40bc05e4390302047c435bb5006730650231008ff0812c66eb4f6ce3e1753908bbba73920ba3dc2f72035a6ab6c1d10e95b7990ec15a4aa070da7c02e25ec9a3d0359502304f7fdc0f38009fb9b2c9d97f02f8454a15108172e11a2f30aa8e88b382beeac528f2e48b11416e5287b6317cbe8b7ae20302047c435bb500663064023042cedd36c08aac825182b23061851cbd5d7c35eef24058a8653a5c6aaa84005c64443668e3a4086ebf39fc703745449d023065947373d376262fa7f75a90a2d6aa60cc1f3701af6ad352f3e3438b7c86ecd327ebc171816b1d90786f0dc21a90e39d0302047c435bb500663064023059e3de8e5a6bfeff13db91a6d3a556975cc0774ff629287e25547181fc8eb9f4d1bb52532ca96c45f1b27d5c1c96604f02305dac98b60d55f801d2e6c46720f36ae853f7ac77ceb855d7096ac80e3f53aa0b75d80368eb838f8f313b039d9281dd460302047c435bb500683066023100a5868a1bc75e720e381474e0d486dbe71c91c0e7c15c8928608f68abe7aaef42c90414909b944a286e272a15444cbfc1023100c283eb215bf22a86b5845ea6f3372310fdc85316f6b9ecf19c1ca1f4070189fc0fb26a0d898bf79a961704d545ba1c960302047c435bb500683066023100976747c21a3f318e896f87518432c4956cfab3aae0c8e07b495d5b95c76c5fedf6c31fbff2113d2a4b1f9a72060ccc0d023100f48f37726fa7fb2ae17061c4eab34293da6cd8cc4fe7153b6b300072b374836debd6804200afe80322aa0a3a7d52dd0c0302047c435bb500683066023100d74e073e408c6de6366b1a421a9ce38319ade93da101b69fd37afa71eb4abd4e78bd79380dd83c9976892abe4ce61302023100ec58b3e1473ccdbf070436785050b8ea90cd33f4b75fd383318be460d8a04b4d214f036dde8091eeef13452917b86bd60302047c435bb50066306402305d24cff21504ed078c0c7dec7eedf47b5b786015edc04039be46c3a5dbb860620722e46a0e7cb7e954281f6502617dcf02305b174ef5abd33700673d9b9762715ed7d3a825059cf2407f2b0c257b00bda2a0b33731393eb8df30e833dd547d8cb8ea0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023054601ea21eede802c0178832dadb3b914102b7a04eb829f5a58a6de0d522e3df2debecfad83b8a7de53143523cf8032e0230353514a1575aa86b7f832f8ec1d0b6f87bd9211c589fa291801956424dad5b21cd9f3abd18629ca6e2a5b801a29c301b0302047c435bb500663064023071e079d847f44599a9218b118c8dd40c8335aa03e0b614c64b8ad3f4cac256c31ed994bec234df26f93738e08c58857a023057d57a59e4abd4375447565738f91779b5511862ab614084996bdba57498769e62bb3c1fe4da2e8e39eb73e56890e4ab0302047c435bb500673065023100fef877b67571f129441a7eb7e2fc3525e41cf1e23b6e98c40f6af70e4468a06dd5c57b6fe50d8130f941aa77e376c39702300228709c1a15bacde79082f52a2e22763f25df0a30c4d77bf67965b853740eb76887f11f723bb2d874deba936cd9d53c0302047c435bb50066306402301b4a03979131c0d5e1c8f1277718ad27bf059014447c8c13a3aa99530edc78b55a667cfe838dcb4f508bdfaa60da340702305818de37c3ca0516b5c2d1a7594bc7f0b0cd4707272fc0230da7195ef85744ef1c8e36d7dc1b8f5c5c35e07240be6f110302047c435bb5006730650230099febf1a46fb6dcce6a01216e85e906997fc7f1389b902b8287103f51b57cfbd5e1c44a7a427a07e0c27a72e3ba93d902310083b1dc3690b9a09d0e0fed5341954175de5b664f93dae5ae873c7718dec4d6e0310e2b61dbfe6cf23f42431cda88bba90302047c435bb500683066023100ac1b45557a8c1b5b28aee70623a099e5dba0846435629b3ee25a25b8441699cb38a1138ca8a19404442c69a536f24770023100effa2bae807305f87a822abd304d63fa58b91d5281d1362b891c1454965cd4e6d69f7f6d0ffb50a491c08f68788e29580302047c435bb5006730650231008940cac27fad84d87fd4485850ac766bccf0d9602065ba2365dac4290ebbb80357f5fb83be3990ee8a8c272951449a4a0230611bd49076beddec069de7eb50d0f14ea53faa28ad93a5146339c9e00dcea9060340c0a5f98f90b178c24899c9599a760302047c435bb500683066023100bb382cc8ba462eb5c49524254990c3b291ee5743304cfa037cb72874d3db69cc7751eb1162e23fb151ec6bf5a35368450231009b7cf043be708d0a7e04868ab61f7af30be6da0ed295640aac0e62c6b0d03427f91dbbe204f5772963b3ad36c96d72820302047c435bb500673065023100ce11c78b72e50fef6ac81eab64003670f0fdbf4063a3d3660c7a3787f3dd69740acac1204da601280cceab4bf613bb7d023002d90a17f48f22035bc7f105bd75c02717efb1645cf9e1f3cf58be4507dd5176a0e7ab06109b7024336a5c58ffd2ccc40302047c435bb500683066023100be1cdbe8a1b7a1fb785fa041cb366062a235f227de8473be0eaccd8e9ad3a05d576e6ba94ecf3abb4e4ffce33d658c7b023100c2836e77609dc8ca8bc4e7645dd1392de2148bd184890b24a9ab693a1671812cc4cd2b82b9d48fae9e999e26228dcf8f0302047c435bb50066306402306467edfaeab47964bf77ab158926790c1c93cc47eacfeb0ece98071788084cb98aca23f93f6d5ae8fd00363a266a4b79023027b352196bf3cb9499638af9c7e29b168892314c0f4843b4b211f65ddb0e2715c9c8381ef0c7a782af05c96f3f04fc5b0302047c435bb500683066023100dafb6111db7cf5c512dc5cc4e04e917f5944af4321f160b9747253b758abdd1961a324f432e621c994bab17954be0075023100d7f0b53e543ad5e9e608c04017a4a8539033c0b7e1de58ecd0965c77c60e1fcd39a5dac65553a7ecdd16b07b3a38aedf0302047c435bb500683066023100b893ab551f9d004d6fd6351e3015d506a06ecd962aad2307407921884427a8f3acc4574ffcbd301bd01df6c99e80c9b00231008098a3a97585ed5c4ab0e6746c4f08b388769ee0fc3a90a623faeae2fe42872043df1c638da545fffeb11b1694c960b90302047c435bb50065306302307596cbd3229ee160f72b95d9e6c5aa57b503d52a7c5cc1842362ae55c7326d7673c33eaeeb27793dc2ab6f835702b705022f738155cba40935797f441ebc40a610ea711720a4f00e2b8c26366e52ea14c159f2d3b6efe5f5580b91e56b3e9deefd0302047c435bb500673065023100d95ac5704e5a9fcb6f5a1f98e26da21f4f3bac3a203ddaae1757c046962c0b301ffc05cb687d107e4b0bad2041e2432102300e6b75cb5a127d962a6bf446c97f7476635c51cee2bc0f8060b9e1698a2fdd9135c332828a7e432f1fcbc1cce2dc79e20302047c435bb5006830660231009999d72265d60809ac2a118610d9e75e84753a2e20f0477baeed0fa20342ebc36badb40964663229a4f0b6476e7971530231009b177dc15655bd18928fa04262092b108721ae3a68a4744860ba64d06a13f0a006d92ed3898cfa62c7161e1b3a75f1dd0302047c435bb500663064023071170281561232b5d70060a14693d17e58546a6803717ba0f3ff53d12d75bf440b0a6585f79c4269bcb1bf0eddd497d1023006878c0e2fde5120254aaec7ab735f38d11c94940b7a7327d8834b8b967e5547ff1d62372d51c3f285c8cc0ebc8269bb0302047c435bb500663064023022eea42b33511bcd12032c736c4da77c4f67b81effaf8e338ec5e44c333c535fc5c462ca29cb28ad8a37c40ee98a8e6a02307ba499c5d5c25a41b40dcf63c13e9681717423ff119d70c9f0850811b75738997b0987c7e475129a542e1d74db371c8b0302047c435bb500683066023100e0c9cd22ca9dd6013e4bd158435e91d70c9c129ee0abad7af3fea2c9e2d8bafdfba48144765ac86f2ead00863eac5835023100a16552fb62c40b269f010f694dd63d3daf9cc60f78c32869874cab05274b058a6f8a5d87e028762795058c0d3707571a0302047c435bb500673065023100dcbd4b492fc3457779f085e3fe063fba4ab239f5b1820b4e002cb51793a3b617b6abdfca138942a81ab3a814f1bc52b6023071809cd0ee2cba795b129ca116b9c09ac5f293a998ad195c2fcaa7d5f739d07d29c3719bfcefe8755fc3f80ee8cc86c50302047c435bb500673065023100af66bbd524e38fa20547323b72624727ed98c97654248f17de32c4bff9cd8c50445d185663e51ab8aad509863ed480a7023075205674065d2a99a3cee850b016a39aed44fdc1be83a5a098ff4e43b9c47df0ba9fd4ddc20f0af0ece3513898693afe0302047c435bb500673065023100883e4ae84289e93d6e10814a274aa89a57b4841e3ccf28ab39d368e365cbed3aee25f9bccb2116d41fb7f1fd1e29716902306b2a3dd48fcbea62586fb5ff6d9a0cda2b5cf22699f36accea989ef5ecf5506826a5cfca17e8c83e44d59536770220a00302047c435bb50068306602310097a04ac117ee2cc92c2febf671d5995c241c3204f13c3395a1cc052efcb22c35acec0429fba54fd2cc106262599a5c08023100c8232525d4fc971e6742c3f34a748f747c4284f847254c82fc9afe23606e68053d767bbdca44490e72589b8faffe56030302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c7df4c35bad25092c54fef9592ad2135b60ca74cb9687e608fadb0909c054ac9043a8c4e2facb8209dca93c39d0724de023100bb47d8cb126170090cd41dbff273610820344f236078b0c7579825cd884300b94ca5e8f8c7ce116b0dff470285bcce7e0302047c435bb50067306502301ca8043c7ccfdcd4b6a075dcb8168184ff0eca9c35f6cf87aaeeb0a037f73f95adf0a0054dbd135bc74b55710190b9ac023100ae821e7cd98964ac4e651f8a1529fcdd6a5a88683881dd30c54682fbb37f740c9bb1780813c6582db936f4b6f6621cab0302047c435bb50066306402300a8fe1047d5e9b6ecbbb3eaac05a08a552440b7512b4d11a3f5cbbae31402a37d58932c5a09239f400ab73ec09e73d350230600afeff0b1b9e080c1f7011094a56f14e5eb730f87cbe0c879af884ef4d55c2ed9c552956588cdf4c1c1e3c0cd91b9e0302047c435bb50067306502300d43e237e0c632c3b336f9058ff1cc4972265d5aa5f5a6d4f50fdeb3b4f5a43f0f47f748ee66bbea085fdc6cef3465d4023100bc10a601a6afbe644f7eaaadf6408940f5534a3850c2a5892ac3d15a1a4fee9276154a8b460cd5e9706a65af1ba0c8360302047c435bb500683066023100845104f3d8c81f128545b31d9dfaebc72592a3318908970b035132d157d5e7c32aa20b1dfd2ed24b112b77789a650e1a0231008db6232033fafd78d653b0f9d26a8397f6cdf80cd48298b94972c3555d60a6c1434d8e18d0e3171f66b7034b533da2e20302047c435bb500673065023073401497d4c57fda327837f1922d986cece2d0edd0c74fa616a9ef42ed71971700152396ddbbad3a13fe11ea8ad5e8b1023100f60361c19b3e589c248c00105d99187b976bb479302d0d8fd6167546e8c756805b4029e0a07b4f860d47c308e60ef45d0302047c435bb500673065023100d847bb8dcc3d522b56cc73e895d97cb6f0c2f341ddb696936bbcdcdf56771b164860d82292ee2c33ce60c7991d1277110230124f6cc4be793560743f73b19c31a60637f756e929e92030899aabafb3ea80fb64d7930799d1e79b32a6a530787608ea0302047c435bb500673065023053b6d6d6da2edd15e1bbe77d903bf9da78f9cfb72ce819616f66a463c0cca5e9af7142a4ead155c251acb6cf308a486a02310094c7e4fc1dcafb01cdfc3f6641e8dc18bc3d67cc15beecc51c7b5b14f131e1cff64eb4b67c53a64366b2ae8095aa88bb0302047c435bb500683066023100ee56d9b911858984af5a63fafbe4423d0488339c62c39b01962788f12731a6b700470a3671d225dc91da80314d758943023100a69d00cbd2a4287e18c51f699cfbd17b4987c778b7535dd67b80d9b84ade8f1c38b23a4e12071b35fd04c28ea1747e890302047c435bb500683066023100df091d58fcaa40fd0d7b5033dbf53908f9efab841863f0d6724fbcb93c1ac2fc361871636f995e7febaf524c9825dfe6023100c89c2709fa17065293d18b28473c1ed027e23af85ad3327db18d2f942f5f1c7626da478829852b55171f77d87aa93c140302047c435bb500683066023100c3c71b717c2992b9128aca69fb77ae3c9ead5cb432d1b959d8b1597e9cad3da2f438eed84d577157783445abf18a1191023100c67485d5e91c15114eb76d5f212990330cc4b6e7831f7ac7d6275227a5d7a824f812690ea2f66dc68b15c37664775aaf0302047c435bb500673065023100863f0f1ef0e29f2fc6b0b995da62bc9e4556a3e627a02bfdbece2d85a478d6f0123842fc21e5af0b7f75a43e37040a4f0230319adea8ecdbd7204bffcdcbed4361facc93c99d08c44c949ab527cb0fbb18d6cbe8f8463ad9ec291f05cfd34da113e50302047c435bb500673065023100ed82d98fdc659d9d1dfbe42e80759bf0863e81d8e16cbffd0355fe8fba3ab4546150e26e38be9b9eda212973f9c422ce023071f5a868367d90b9cf3a703831ec7d5cca0a9c3e49e55352214a6778ba69e3297c7c126cd4d8b7a8170023e6febbee210302047c435bb500673065023051999e3df6a32a6539b5270e938b280685fe141450188bc5928d618d74ba132839afa9884a0875b87db6f21a75d90364023100b960fd07f663e5e3ca59a394fdad0652d14fe63fb040c73d2ba9f41406f772b7b1a90df387007f2a7e9adaa77d4600fb0302047c435bb5006730650230111092a0dd0458c9ed338b0bdad08f964f7db9c1e64a6fbcb8a6fa0b59f01a9970b64dc9aaae6d774311e183e0176661023100892b54614886ee801d776e5ab5a75affa23767e259e4bb61b248476f5585fb07104fb83a134596990a1cc40673451f650302047c435bb500673065023100fd0351b093ca6390cfd0f10e50376fbbaa6f4e5de0d9775251c20d5365df951b4a0b376b863e7ae188b1b0ff602133350230537336e4ef0e2a3a56dbe8e1f5c45665db14e2af46ed1894270acff2b64a7396c08950721a0f1c7239828b048cd9410d0302047c435bb500683066023100cb68c9b1edcf079342cc47bdaf18b4995b3a40ea8b8153a1c0cde8028528a85426a3ab10eca5a4718fda5dd45e8e6dd702310088656f976034d742407f11dff9e837f9cf9dba0abd8677d08699b8d2533e8a58b209a7eb2f56e803a0a7bfecc49ab58e0302047c435bb500663064023056971de3501c293ac6d4e0a3dce60eafbad47087eef900da7658116c49287ac4c0edcdf8634fd4186564d39e1eeb1c82023012e2f661bd8e3a7e356e3886c9e3afab61367b18f4482d4e95d1e296f2da48f4004362f57f4765e45b40e98f4acdb0950302047c435bb500683066023100925da25d48040cf2bb226d4f0d67905c9e2640225c2507226fbf1097de49d91ea683e365e2511b9c92c41799654388be023100c7902903eda358012630853a065eb39f6f56e12d435cabb4aa9e0f652288db25c2b82402a1e48e39bd8d2a67f1d1c2910302047c435bb500673065023040244c373ac29c61e19638a3def2ba248c9696878607ba73d4e2e375b3bf021486b7aab4590771e259eec56be324c9e10231009408c4dc5fb23afbe46c132634688877cfee308450255ac293b2acd7ec8bdc5db65dc7c757940cae3c6b907b71011a510302047c435bb50067306502304d025599b2e6668cf42645c1568ae08589cd9e8867a55aea404a64d02eb44927150d79a58b68a708bcf29304cca8d0aa023100ff52d6c51a0db4ce97da069fb00501485693bc7dbfb8212cf78419f7b012b0fda644b0b0b203f2d3cd0ad75f926c78d50302047c435bb5006630640230376446b48501854a09965b684510d3c574da0d9319b07f5097664ec6891fa035dd57fc35304125a0cd7667f547ed45ac023003f68303e06d82ce5d864c9cdaf9b487b1b71339f852cb6d5038b4ee499d179694581b4610318beab12c9a72474ca9dd0302047c435bb50068306602310081e71e596afdbb96605a3daa12c5403dd31bf5660c2a9f93a993b3712041acd0b2dfb04c9e6721a6812984e63328094a0231008236ceaeae04aa2aad112203b3a74f25ba76288a67d0654d4926f705bf610c09af03617fe67d4f230314c212860bf9cb0302047c435bb500663064023072ad7c06a5a4c721dedc87310871195a0e4cd95985e3c7c469ca0eb252cc008e92dfbe5f6e7c7ed2c0d357617665bf7d0230092502c9ea776768a534e389b65d954fe786a2072a6fd36575f0c25b1af6ac64b3da7fc5a5d2c84e892f1b324df658980302047c435bb500673065023100fb630436e30e2d5917a2d715a22d6e8ac3b686fcd764109c29b8e57fd73e04b353cb771a85a1143ff4deca59b12deb3b02300d7d7f3d718171f814c536507f22752624eea8db6c2175f3f0438ffc2b2fa480376757a1b5bcd6054a642592ee399b3c0302047c435bb500663064023068175ae0ea9a5529da3dd80bb8c5bec30b6e97ba241d700279b758354cf892f06a41dc57f658b4c7b5b807d21b07b66502300495164e593df666bfd82d85c13cf98257631fce2fd542c42e54e7e3231b60c7d0c35e18d2cc071e8efe33bb3c895e0a0302047c435bb500663064023036f7485cd6d3260db1d665bd6d55cf08bb313bb880db3312ee65044cf1f426e409705ca5b564b34e379ac867455ea829023079f917275716d7c7444e9f5d713a657fd7fc34202785fe61b7a85cbe2527d16128a1fd81b6e10d0560acca661394a82f0302047c435bb50067306502302528d228d8fc612f3119db14682f70322ffc057c3541b73c317b0c2a8c15c3a31d3afacd17b327843fc7e7fb35e6cee3023100c5747afd2d6ca2e867c2e6dd3c08858814a9c6ca83c49f27325941fc3986e0fe70a3e573d82984111fa0035ed8e2a9320302047c435bb500663064023038e4a7d584b5aa1b727a9114a45e106ed68be8580dbb05f69cd2415d25c1f68625a69e7716dbaff4fecd860a4e0c002902302533aac72e6cfd090155c1214e2110f8a50f7f8f10ffafe1a5eac0daad88c902b8858089bbd5aaf06c821236e214492a0302047c435bb500673065023100b91d2d1e546a26c2f2dc18cf976a8795626f23258e41cc6602f4fb868def8110c37ab324e9bd90e8e5b0820c3a538a580230398913deeaf9cb81290019db7b2c14a234262afc9d25dfbfab70d39fe79dbe466102429cb6145c8af76ceaffc5601b140302047c435bb500673065023100c3329365b2dba61429875013aa12dada189aa80a15cfc8a82c6a427d4ed4b755d9d301b4ea46cd90a9b02bbb43392ba5023070afca989745eaa48ed07b7ebfcab33d79dc11b3b00a03089182d674d6c36f1065d4a62ee0514fcccdeec8362dcabf530302047c435bb500683066023100807d322b6ce22f639663e46d1be32f992e206a2646193bec7417735eeacb5ac26ee260dfd4a532fc472dfd21dbead05c0231008d0aec59b2687d0f829e403c8e2556aa2fd8298a985ff0767cbe304457dc057c698a70d48468211e29ac43fa193a47bc0302047c435bb500673065023011d4f4e64550d79928d7e8f346e8dbdc279b05360d95bc346fecdc3f7bb246989106d42a42e574f1dea7119addcd39e4023100d395753555479fc641c134bff8ebcefbf60cca25526bb51d386d7bed5236164c2ed7721d4dfd82eef3b6c09ac03e9d7a0302047c435bb50067306502307a1ea9a62694ecf4e995593a711a1ba5ffe44d7fe175c16bbef8046e016652d3d4ab5f74d6e01608e9e29ecf3db98041023100be315c9a0dcce4e13ce24aea6037c55cad0489d40f3c271d37f4db8c1b400aa14e1470a99b72befc1aff03652d1cc63c0302047c435bb500673065023039518d0473dfe04ac5a2c38643290c8a1f6a38b28c72b2139772954a3a211e1e19fedd6b7d3e393a312dc775e120c74f023100a5d2f27a217d39e134da475ffd1d3d2937304b49aeea651338e3aa1c81342f00c94199ae1c36ab0038e419ae6ad7b6b40302047c435bb50068306602310099e5cc00af1bcb5e54aeb3abc567375c81516a47488e3a7d12cbfec8e8b53022e798505479b7f39df93c2f46ba9eaaf1023100e88ca1b4e1ae0cbaf26ce54df4054e54984ae2c579f8fdfda72d245e69515df95f30d050ffdb90d5e49d1bc584d2d6940302047c435bb500683066023100f5cb83bb80b467f275026cbfed4eebdbdea557a0402cbb0e8b81336e9932bfb4add70048dcdcfa1ddaac535f95fd2eb5023100bf03bee0ba0faca04de08b6950985c53a04597753b85045526b8bc39c41756658f4136a00177dceb8b7c551cea73ef520302047c435bb500663064023036323e860b0f17c2c10359ef29014f11947a4eac4dc040dd6a4d32aa07fd71ef18ac1040ad9053574661e04aba94b615023021aa6f4c5ec629476644ec549d2196a46fa4310f9038d412f0992aab37fb08cfa3e05411067ab3125d70841167a81cea0302047c435bb500673065023100b7f397d977169921c1ddf13c5a293c674f786182c8cccfab3c07be757bffaf5643353c3cab5bf731def09251b6b42ab70230542d53f1886b27a1f9b1419dbd0acfd49c4e484d4be8ab0afcd18cebf0cdc1ff1cff7e7df2256e5944c4146fcd889b8d0302047c435bb50067306502304f577824579391a537246400b761e34b58a646c401cc3004099481dd890286ed5d51576562d4a03b814c7ef513c98d6b023100a0677c85621c572ea3f4b012cab4f150d0ebdfbdeed57a538858412094aca9388ba86ade5aa4308babe481fd420dd1a30302047c435bb5006730650231009b0059cb09aa8f94295683b982aedda2baaecc5d0913216a3073600cea5aeba402f071da0038ab9ad5c28a42910fc36502303217aab5451aaf4af7ce9862b16df5e06002d8fae3e1a61ed00881a712964f8ac80ee1537f5078938b690c603d3858ce0302047c435bb500673065023100b9ba66ff166476b0f5e061c9ac9149409db63946d867031965b564cdbe8d18bc03c22a02844c9a4fe651c3af959ac8ad023030ab9adb93c928891718916f5fd0dfa6f662833a1b7bda4c7a74363f01aa5287fe08c85a09e907b5c65017cd9ca13f7f0302047c435bb5006730650230731b607f709f04dc6d0bb200fe034347d0c91c30ed5733b3ae90c2346c2643bb841466cde23426d144ac5c813640a1fa023100a65a7c813e464deb74e3db748c03dddf82a86f6c4734f8f9218fee996d4497e2e5d412a5dc31fb3337178ab63b1a103b0302047c435bb50066306402307eddcedc8e9ea32ba9bd4b4e8dc53cf75f44442856c309737349a3c1f24ac62a52d7c9f0d972147c47086bf9fb640f7202301b982b6362fdf9beb3bb9b815df3cca2a3697892865746338718e0d04a73438b943340e72e9fd5dcd93b53dc3bdc98990302047c435bb500673065023031583ca41cb860494ee18761b5744308b95c57f17e9293ac9d1caa6c912cc000606c6c9d37b270d0935c79303c9e39ad02310081d9fc926f31e09d563a2b958f3a028ceef2412f95c57f3a56cc28ea7d4ed2438a74b07e82fe126bd77ac4208b53f8bc0302047c435bb500683066023100cf3e9ac5578f9b74b2f979110f0c64af2eb575ec0dc74e6ab53a2452d183adf3184ef777ec9f06a53f0a6e1407068948023100deff9cdc294e7d24a338f72df957222b08e53dcfaad63d3b67a84644ec4f651298fa93066a842ebae2d928649eda4ad50302047c435bb5006630640230713bc6f1dc3ae872e278b6d55a7d0c76f3dd80f3875a367d77ac969e444ee792a70c43e9f1a8ea40cc79673f8b5d650802302ebbdfdad936b01912f0fd479e5ac9df404cdb4c67b7af35a38ccfdb175318ade0e2d4fce5d29f597cb1fd85cf6df8710302047c435bb50068306602310092fa5576d9b4b03254fd4ec523f0869b5552f2a082aacb0a516588b4b708b0cc89af91595ea7390dc7076ad3a151188f023100d08c13e708174e5ab806960a1164bc84667c0e5527bae8ccea9458884e7f26f35ab5e691807225118eb797d8c041dae60302047c435bb50067306502303954fe0cb0f59c46237cdd0b5503f8023571bafe8e1f4cd4519e3577209f1fe1b20c35a64bd12e467e17917d66c357b4023100c7a1b3d7984878d1e32eb3bd226d1899289b6ac08e8843d6d2c7985ef62e51116d70e65651ecd10192326d94ad2e9c3b0302047c435bb50066306402302df062dd0f57167496b8448dd9b2ee8301f95c472f3f68105f5ddde21bae4abe5c14ea026865a381fcc63ab5f9f2ffd202300cd831c605e836140b6f7e6f38ef8fb8da40e622d53398a82000350f2e0b65c922980a52ff065807f2fde8e76de192040302047c435bb500673065023100e1dc027fa7f5c5efa35538c37f734d6a33dbb75cb96823fb5af2eece245051c838998b995103ef704adf5d4f02bcc3d40230594fb0e93a48273c02f28454d9bb3d261d48ffa88b492443a6084c8e2fa67a2c3cacc664bfb4804ea54b77d45655f8f50302047c435bb500683066023100d3ad650789af3fcec6b2b4ec4c21952b4b1e161ffbe0c19910e64b0b1cb4ce34b5a7c9ea1e2184689de31c3080231c85023100bbf197d777f190e50612b0a11a213beeeb45c9a6a584bfc80af835e00b3a5638cf157e341fe03bc4a910f71848d888a60302047c435bb500663064023076794b99c9a104833513e61e137b4a696fd2061d14b277789051363e89a621c3a7a76576d6bd4b92294c3a067a56dbde02304f9651f2c561db68019323d921f8713d71b18cf45c880f15eb17126285b3caf4e8fe47f0ed51da478ce8f46b3a7cde990302047c435bb50067306502304201db3758fd495e46db72aab2424f76646e70e1a229d43cff705763a68c631ca81de68c1e9342ffaebb0ba84ae662ec02310090cb4de816ac4bcfb89facf0ae9a953bee84d6f232f33f8626ab22a96bdab0bd9c3d5ef548dca4a30a7187f1bd450e450302047c435bb500663064023061500bd2451d864eb1fb64b983a9287272c85fb5494da237dd26fdffb330d756350cb9355b5c0c20fac7a3715c4436d402306cbe129ef7b2d59411374654014e8d25d0fa24d5ae583dd70c212c53a38884bb30b2525859ae64cdf94e215d47f0f9ee0302047c435bb500673065023100a13e76cf9ed4b23f3dece52377ade64f04d63fc9e0ddaa2a913e0f63540bf47e39b34ceca230bfb6de7178a2e068c8a7023001f77d8659c145828acc15be4dd32721d415c9181256eeaa8861c7999e9630f22f5b211ca213c60b4045ce8b9fe514a90302047c435bb500683066023100969f0a318e2b0294514d6b48e711c95989a6d985cea468bd7f11ab5cc3f96cece1ed91722f3f903fc0aad16da46fca4d023100aa7d50fd5cc4b826aa5383123b5e71010faa6457b2aedf7ae7fc11da051b06183a0cdbdbf7ae825fe7747cacc1ab71990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e37e186e2176945da1d8f767837d24ee8fb14893652b3636bf6c02d086ad6f526f878e74fd06c367c9d83b51385fefc402301e2207821ea702f2ae62785530105e2c13e16206c967ab71ded48fcb102d25616fb1e711bea024cbccea9fc1ed8e818f0302047c435bb500683066023100aee1be3b0e7024050332b32e2e066086db9f58c6540e499cc2d0a16f1dda6d9201c5f8b6a0444cd90b8bf927a92d35cc023100af8bed32a8576eae7d652dbc5d565f8cf3d28b2542867c57a3686e776f884b7ac7987337e773a172328cf3b82eb74f7c0302047c435bb5006830660231008d3a350faee33cbd8ff1937ceed2e149482423d6edbf58db33d1550956991a6fe476d343fe8c0588f9886fedd3f9b73b02310086bf05143177c6b453e92d4b1c02688a00558dc2b02a6158ac1d0b842eefddecd6f73100dce9fc68b2cb7d1b76ca84250302047c435bb500673065023100c5a71afa2ba3068d638a06b914add98577eb2ed6c3f5ae28cc0db723435d1a8063f4e278ece67b00eeb8ddd3db94b223023038afa4bcd3fb6519a8d9a9fca036a5d2af9131301ba6eb9d8cbc8e13a2ff1d3a6f2d76d53ed8b34390aebbbb7f1aedc10302047c435bb500673065023100ebee0f01e9f3fdd30ec1fb57be5e67d10b095defec4eebf53ae4ecc3b56e117c2a9ff693520781eec4eecd86d60f1d5702307644a43bd7c7ddd4098439048743fcd80265484c2c0fff4d688d065864edb5c4d0fcc6b46457a86937b57a1476e044e90302047c435bb500673065023100f96f2aee562334686a1cbed99644a8681ea64e80bd3ef6f8cc148492d906041ee517c356f1f416672fd10f91cd654ffa0230581a221ea2318db873b9a05db43f618eb59b8722fbd8107b00b800b21355882eaa08dec3da800a5c90ac0f37573d66b90302047c435bb5006730650230156da579dd4cb143bf83a118ccd72798b1965b9238e33210be2a880b3e64bde5e09c7a9283297c94eb910c86bda1880e023100c91a4b0461d07c8916ea37828c3f60da6255997996ee2c888d05aca491366ddef132d197d2f1559b4aa48c9489e07d9f0302047c435bb500663064023042c5ef72c88db1a6c2d0cdf10bc1236a2392f48ba7d2fed45fa09a88ec0f9b732c2a9e82a85cf5634579b261f160d8ce02303ee6f33a3ddf3590b2d68f37b3f1bf87f0ae1aa8329501bea9d4120fc32d9198bb78cf1769e20fbb5771484ba90841da0302047c435bb500663064023069282a14dcee49eef4574ea6c7238888a4f60c6ffa06fa3f9335e85a3725aaf484f80b21950441c41a0611e251975eb2023033b46eb67d04dfb8bffc17c5bb38a34254eb7ae2c16935bceffa3d91e181d7d831eb16a9fe9c8743bc2eed953725546b0302047c435bb50067306502300e0c36b7d352d7752820f6d18a3433dc92942b292de6d3587591e4f5b4b32c38438f9c5922e8bca102de623c16cf3747023100b94b91f16180b47c47cf5468f5f00cc9bf432769a8690dc3e2acafdb9b58b47609c9d2b224a74172c1495fb943cb21d50302047c435bb500673065023100b67d4c27972d276b3426308e5643228098debbbdc0591fd3a77b4b0a8d588a34f9324b925987872b6cecd6ec83c0679d023046c13ffdd76a82f4544b0433d03516b38d92597d3908f35da9053586af726026c722f693181140b94c82e29bbbbb0d6b0302047c435bb500683066023100cbf45e59c74a6fa07d2fd2e3454368cc8abe41be2bdb1e77b8759a50522a09ee5fafdf99c4680f0b46883e1aa41607c70231009ad797bb886a941ecf369ddd6b83ee6a045b6d72e0d2c2b757ef714ff4c7d6e5208b37eec03026687d54af1dc01664830302047c435bb50066306402305b3cd14f03b6245602c69176299159e74b3b6d3903d6d77c0435c98a39dfa98c1cde5134492017c2d24486089c313d4402305a58c0ec7d8d5590658e5181e7e4940a215a434a83ff63e7ce89f26560e4844d0f797cd225ec1d739089431cc7dcabca0302047c435bb500673065023030834e3042f06958ced0d083d3142ec54251e9347135db4705adb2bfffb6b72e9adf7c7082269e79c09a27fd0bf363f6023100e71b0f3c0e52bee31c4c901c86be72f5e5f6dd05bf2861d65b57eab7d160bcf6594804411c580efb3e33588c73b2e0e20302047c435bb5006830660231008d04907e05ee0e86f523f43116aa039153ca856fa582d34d9ebb719ca2c30ad39950e731f4059909f0f2adcbf9bb509f023100a2ad83405f719b7b6c860a341b9a7560bd4fbf791b4a448e7c2b905c7deb8f4d79d25183f95b6920bc88871eb71450970302047c435bb500683066023100c4d4d58d0452d27a89576ab5629c2b9d514117782b48fb97dfb174487f23b50cf57798076975d9b81c838179047727bd023100907c06cf780eb34f345ab6e9ab62521a62cc928c050c6b33cffa152d6cdc7b3bf95cda2c93ff8ae74af205da3db2eaaa0302047c435bb5006630640230761d13ff52e7ad771e861f943444492409da3ad58d24a0147855caaa33734fcaa30e3c32e15db9b78e520a9629b1508c02304d72c7a582a5188e4b79d3dcd5e804f47f4bd02149f62428e51423a49375759fb5cf88f9b14903f7cba72dd21bdef7150302047c435bb500663064023068b71518ed878c442b336f020e89e421876cd22931749496f5bd4e9d927067b83977dce00263d108eae2f8a2d9e3ff7402302dd1794177f97553b066b52024e0bc22e2cea398221158b4326fd14de45f6273e610746100e444e15f7adc34ed6e0c5b0302047c435bb5006730650230503cf4806d34402cd5e703d38c906a57e71a796d49e96662dced1b5094b93f543009751db08e7b6a534cd3120ba155f2023100f20791fdf884f7887c58863497f51d6ce81a1bf12baa787632ccd3f886a7e5db64a57f8d106d80f1f4ef24f0e5f382800302047c435bb500683066023100e6445affa96dd78e75ca9da11a73a86699e0c02b6308054888b9f9c7a160a77992b27bf253f4c376a82149ca0f140ddd0231009975929dde42e56eefb9967677edc857502f444665f78a0c6542ef52f5189fb8ce13df9b65ab56e36098401342f2fa670302047c435bb500683066023100865ac8e0294339efdf7731d4cb1f4d6e99ff7667e22233c280c6b06874e8aeef1596081758fa3b70571bdbbb52ef0bac02310089db240922e92d250e8c0cf3eaac69509c6621c2ed8cd8045bc3a6d934c129b331addff80b7aa03463c1709a206fb1df0302047c435bb50067306502305f5077c3f5fdbb06574d73d1d7c35c30262605e005a628b978e0533fb564510d8d934aeed466dfa2bc0d37022999254c02310080e4feee1ea57c09be84a1e712073551ec584fcb61a6aab068881ee7b207b7c37222432e54a685b12069c8988f5588110302047c435bb5006630640230099b660e7f1cebe1a774464810643899cedb88dd249ff191d8b034df8f2fcd7dbdf506c2c828e95d0311f55a4b4cc8bd02303d48a240a9b6f059ed046a8484ff623d7dc2fa44335eb4c59fe8b280b74f245e80fc49804048f2c134d1f41ea81ade3c0302047c435bb50067306502304253f1d13f732d37b9ba3ede60b1e14f94f9951bb0c92899d0fba66c50e6997c13695e5db5a34a0469c5cae4e3fdceeb023100f3bf4a260ebcf2eaea84c030c1871734d20fc3c7910ada9165a9d51f942928e074b77301eae7be012a820d14f51c59160302047c435bb50067306502303a293d3594fe445a586735721115750ae9496b264adc61deba18454bca093a7e5efa7e54f97cc5bff33824e2cde188ac023100f6d45bd72edf6e924964340b17e2d8dc92b4712e3a446581d3e8b15f1c484b35500088f5e1978e78fca62d3c82faa37c0302047c435bb5006730650231008b781f03554ed6c8be80ff172762f444c2f054ed1f5cd8bb0798d44fa16d6ab8342840c91d3993b5fa61c6c7b2407df402307a46199ba7407ac2e4531b25692357d5083baa0e98ded0bb05f443147135c016a57cfcb08fd654ef34681d6aeee061320302047c435bb500673065023100a0bb2fdc3196f6bdaeaadaa1506deb528df7197fb571e021dede95d3836611520b3b2c1896ed9c47e9ec9a1b4589e28b02307792d5c79d84dfff57e3e26622a8abcc168912e02cbb89286c27d7d200f462efc0da48982b5d1a3bcab4ada62e0772be0302047c435bb50067306502310086616dc4de477c204588b0a2fae62b8bae85a902458c6e5047d5dac08199accbcf1705fab057d7d07b2fa3c25b723fe202301a0441adc07f3456f699266f58581399fbfc7199105549f8b084d386b073df5b3b1eae1aec94d4051c24064ea89ab4940302047c435bb500673065023100fcbb6fda1a88d5a14451238fed1e0876768ba0d0d610880963167462958d692a54bf0c33933b80a9e9a895961a8cc302023004546e580633263fa193ed22cd41fab1278faab14520dac3ccc32e5ade096679da48b4608f35152cdf73e1944f4d9f3f0302047c435bb500683066023100a84cc764b6d04141ae731172a0021c42b5c81ade47e1f8b58ba1125167f21b72efd366b785d738ee01c3a007c7ee53ec023100b4188c2ffdcf13666244128536987d081745e7c6613bc98093cf87c13762c850ec656a806863b0bf024a2432d1644ef20302047c435bb50067306502310087be2d49af3036a068377a711f3e1f0b9623c3b31693c23028270e06ee08ab86d310bb80f0e4e631714c30af6a3b234902305c261157adf95897064c080d2afd42cc499863e56c8a0f683babefc65608c23e7ddde2a1eb7270c124bcecd182fddb990302047c435bb500673065023100ddd2920f50fe78147d9e90febd3843492734afde531a3a0c63cdf8ab9586cdaab25ba850def44e034625d2f24b88e1840230477f115d4ee78b6713715639343342f442cba8471f5b9b2731b8e65d9cf3d51f1d510250e85f149ea0e9ecdcb313d0370302047c435bb50067306502301c7f4ce00c985ed6e73cc94ba9e8e321870c7b5f69d63efce6528cebec742a2cbdbb65ad0f7b0fcfe5b32d3a72accf10023100cc7d0efd4d70949036af777589a261a122b5a9780ba3b86f315d8e60d25f4f611e2b23ca55b93139af0a5705c964e48d0302047c435bb50066306402301b1fff40b780a3ef3e7d322584fdcd9c6e7f2155e33dad2fd621ad31f6f9a85235e9970eaaec102514aecdb5c82ca2e102304b5cbef9339f4d9497c88332e388230cf955f2da37072891ac92d90b9a17c41e811b875875eb6a467ea9f7e5ed8fe5d20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023073112cf9e6253abaf7bdc1b412eb2ef632fe4e38c0a0abec3e507ea15120bdcab872d6fcd4a79fae31483082fa63390b02306d327ca29c589ee01e8000510e557d704ec269644eda117f63d9ba94a544446329f70a4feaef2f39ceb3a0b52660cce40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301c4d8c0a69cca079ae88f82c108b5fb64cd3f5ef8f75a866ec8b04a1e89c1b8ac08af30aa3a441b7922219143d936326023072b13ce50159e2a8b707c96922a9ae493c4a08090ec6287bbf76753574a2a25314df61d161c6266a11dc9d88cd5cbc020302047c435bb50066306402304a719d6d1b0e96451e2e3ffd2bbc62c542a400e77dcf3248f1727425501fbec0f998098d4e7b60c2fcc2d276135b115f02301ceeaba39a0987fff47a25db7503fa6a75fe0ee5a7dc2205c7fa6b0364b6c4995dc23de03d07b4429661d913c11417cf0302047c435bb50066306402303479fe83671f949a84ce64ee48082edf6e9f753ec67044387160bed63bf32495e6af64650147c2147c38ebe26d2601d2023042f2a7284ab5dec5fcf5384508276cafd312fb60abde5be499378622b9fd1bbaa2a32859c9f5ae72b2b3c7b421ff89360302047c435bb5006730650230771171b7b1cff302ba4b6841ffbbaa87944dd67d41430deaa2d66426fd0dfb24ad338a0f3311693a0c8e75b91354cebc023100a3ffd00b6c591acbc17ffa4b7fb806253c34c63a9b75817b32dfba7adb9248982988fc80f206177ee789a8053bf3e1310302047c435bb500663064023007a5254b3d1a8e5b843c1ca40e55d2dc42e0d2573857ca1d0583dd3624cb652193580c44bda112f98bfb39790ac023b602305785dc070dc7f04b6ac5ad9e37cf49d6eaf7b33c2e476371a2536b0171a8cc5f802bc989924e79c2303e42c6edcaa1010302047c435bb500673065023100f49c0f58f847006a33d2d0a319b08116d9443efb2448c448b3724960406488c39756ff7e662ab1acfc5b9f36697a1c3b0230378dcf04700d46b4a3891c7cc98e0a324448192921706d7317ea866f18bb404f22f0a073b76f0997e55e52f8ce587fbd0302047c435bb50067306502307406b5a4d99518a323f501f9bfc6393543b05f6d898ff27db6b2b7954a1a004381b704142a0bf9476491eb1602dd8bdf023100c35ee2ac89b68b2c4e63a399e659cb26150da2bd051efae16c3885c6be974742b6d1f69bc3b8081904921ec0890ba6d90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302b2e9c03e0e3addd0484486066bcf50af2c0d3a0cbfbd76cfdef9d066ed5e08055b10ffe1f2a9e84bf37fb5b06621d1f023100e963446505a37e46676115da4600d483849ed3ccb513a20a328c13aa7aa05a46c60eca7b910c0cb29c57998a07db32ab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c599216208abaadcfb3df885ab4830e964d3b3c705b307ae84ede087c1c86bdb13490179ead2d18ec35a26123ab70b050230646e5230e94b413508cba3a153e17d71d7811d2fd35ec101e39afcc720c0db3fa1784ea184b562c4bf87b87c6c5c2a700302047c435bb50067306502307d29ce906c5b95ac46d330e7bf22b9f518b567b6fe6c7ab2940349f3c3f6bcf9652e08dfa65357a902ceda81c0f1fba1023100e905e9f0b2429a9fbde27b896ff85f587aafcbc042083c6834f9a4a2c9e348e005c6b959301d75dbb460818fe1d5100d0302047c435bb5006830660231009a28a5bb43eb333ada36e31494cda9bcd9a2b87dd17b19c0f7946302e302bc6ec29f7452c3166b4c015ae4c6d1b1b72f023100e1106b9b2452c85badccff8fe019e9a7f338aeba23978164b8b0374408c403a724439e72e1a3e8388675ccdefa34048c0302047c435bb500673065023071dfa972dd52e6b8f4143e8924c2fb2a491d65bf341b68485dffeeeec605bd6c22996b0709dfb43dbb254cadfb7b52a5023100eda78a0ddfbf4cc7182661a59ecf412af3c9441d5734bf6ac73a2d34dafb1d3014388643b952e46cfa58edc357cda6070302047c435bb500683066023100b4f019b4fcf0066fe63739f6ca33a3a132ffb9bacb777c3fbb63e495f7efb66f96fce4154cfad9d9edc6df6d5b17851a0231009812961a95b82e38da14f2ac4a10b10f81f2c7b385a77ec22ff65e60a018805125e0a99eaa0aa2548a01b9e05d24f2320302047c435bb500673065023100de8f6562e99a45dee2bd853779114c1595ead6e371dd3dc0d18b3983a993ecc433ba1e3279c7659cdafa27cb7a89be7a02306f6befd346be8d64d0b847a4fdb36324cdc91056286d18173f9c4b47458750746dfc66d297e76e9e72ae9c33df6887ce0302047c435bb50066306402300a7b19593d3b6455368a54236ef8529998aa47766c8013755d6ef7233e85af73efe7dc2d6c95b8b7a2c808213540aa7902303f839d67690f8a2a54acc18fd20032cd1e78fc06c9e9722a260e54a0c0e939741f164ef171648c01e27c8a88bf9fd8ee0302047c435bb50067306502301a7670fdbaed0347d17c5aaeef65f6cefb799cf96e7b09553a93ad6bdf4f5b42df7fd25f94309fca3be72be659554945023100fce6eb6d402f5d5895754fbe686c3bdbbcb06c3de19f8d455a04ec7ecd5a530b8f825e5b3ac61e37d5943df10afe780a0302047c435bb500683066023100b90b79cf43259c9ff7de8854c2375a38d55b00eb303a8f9ffc360ced77225c85b41cea696807ccdbf59f5838f6fa9eab0231008b65493b53335f6de3877aecd3aff0728351f619d3c33dd2e095e07d17014a7efb61a9ec271ec8b7bb86a53ddf291bf60302047c435bb500683066023100d6113d4d844e3dfee55e382fc94d7fa4331782c93ddf7670926bd68dd7a68de7c786df440a66be9ea6fa5ba25143b33b0231009abd3eeb73dc6c7454c7bf441ffd0447e3f3470f4bcd8701c0fb6942f31756217d524e6583ff81d403e42b401828f4a10302047c435bb500683066023100e9d508c62f4955c97379bb0873d5feed6de90567ba4241421dd6dd43fd83f9b394635c3967c42560546d607c0e3c53f102310082ae95288f83dc3ad22e254da0627da60f6a767393bae9d6fbc63cdfb36db38c4ca5bb76ab553036508e1f500d6276140302047c435bb500673065023047cb1d2c6ff62f0906aeb2ab7ef7d6abfcad42ff321854e068310252e1b44b5946cb59e2db2a8f355e48a0972af8f19c023100ddee1cbd9fbc7247a300657b2185f0d2d1c01d6193750a897c894d272959253951a1d962a25114a60e944d01357cf82d0302047c435bb500673065023023dc8eece19502ef61fcdb2e40e0daac97b7fe92a9f5156cdc4ee7743ba35a9099a72f57f02fe40cd769412f7624150d02310096b4a0288703fab599e078db70f8a9ee575abd98d07f5cc4ba28866a5131bff055ccd2352658fead3b1616e16e2bbca80302047c435bb50067306502306c46dec444faa7f6cc608616f5d244d64e91cdfbc2c5971c6bcbf47e976752260dcf0c8b7fc565135a7def8432435995023100b26809ba02852aeb9f3172b0b825859be94cddef656f4f096350dc2eab42eec11b1bbca53008bd69dc3e0bfcaaccfee20302047c435bb500683066023100d52d0658a3ad3848c5d722501c911b676c06a9727d7c7e7a6fb2cd55e4b2999c4253b188c5ae2cc983a45a57f4e31746023100ff4180dc6f1c4fe1643b51409c3ff4b7bf3261575c7cc3bb69d251e68779931deb76738fd0040ac3fac986c7a0a5c0de0302047c435bb500663064023044f5e8707b35b104421645f7addb6bb62450bf17e5f013458b1431675a589e6f4102004695ce79e3240cd0321eb176f3023040b86b16b05cdcfa6267c7f71ff743d0abe841f06024634171b33e34d5ebc2d4bdac5ccda6c8d66f570f1eeee418db6b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230645442f7a365a6d858c2e57973209d320768714462eb472e8f8c27ad3e58ae10aaf39d931cc29bff9ce4cbdcc88d8acb02303c69768f6f2182a299482b1f6921dad74cc5ef5a24a823f4bcaa670eb9d58dd117c6dae57951463f1d5e0ca02453ae440302047c435bb5006730650230566c7f547a4e5ac51c75504080eacc141dd3e6f422a309561e3cedafb68a25fc7e79dd5f1f45eb2187c843db9afdee43023100f16b447073399c0fdeb6f71b494437299fac1f846978afe099f8669feebe99197db09d6c43f7e68297b29bad15a53fd40302047c435bb5006730650230297ca7c57be78747cc8d42b3455d56896883f538a9f00e8ef33e63ce2d9510258d543e0ef1f0cd08ced826a472eed8fd023100fae39b2c515079e1cf8a4e7b1600e321afb6e48c6978b15c55fa536c468f7eec239790490e474703aaebb3a4c891a5d60302047c435bb5006630640230626d2bcc39c709844ab77cbdd7502fd609fb0403642254eafde89a796ae5e65c389ffc0cd622590ea64a5008bf7f11570230744f76a7f84dae318f3f2abfa40465f9559d0f4290ad1d6ced1f3c7d3f0aa980322a105bcc59dd4a76e235f70f4b5e120302047c435bb500673065023057e4c0c61fdbae46e9d779031d015f71fba998b1c267f00b147335692e58cd269b65f87968dc8944eb954d1229843e99023100cbbe8c50ce33ea4c8773c3088f981ee2cd3134fb50d73232cbf4ee421715bf656b6cd189073b5fc5c363d8d9fa02f4a00302047c435bb5006730650230119c445e37d89b16110b3da386756cfd7bc8c87f51facc286488a25f741f5d5b2b71277f72e9a0d6abbfb7a2785a5bc102310084af55cd9bb3026ca5ee0fd20f1854eb6b45060c1b28c490bfdfbad489b2d54a689d4b733c53fd66af080231febc3b0d0302047c435bb50066306402301a8aff0f9b00ef7206decfbda5d66ce945391fb2d48bbac616428f020ded33ad8486c200ad86ff02dee0fa27f6dc20f902304ef5a39ffbc89510fa668d801759f44cf7034142fe27a5e25c29f5d3b37c3acc8a622a4f0b388ffd47f277f9cc1c8d8c0302047c435bb500673065023100f7a86966a7122b44b4ef86da7a4d4d5bce24ab88debd0f078d64fe8d7f23a83e9e84596e9d0c0440ecf38f7403e667100230690a692063c805d3db95516a9869d99b0c38fea16259450b8e6acff2708ebcb748904c0dc522d187af484a6a1131003c0302047c435bb5006730650230765fe50bd99921e928fb87f2403f8859927d3e890a405238b0f0c7c94f4627bd2bdc1c83dc1c36880d78fa1b10733a00023100c51038eb5d396b75142bc49886bc5527415c1a56db91f589837a867030f61324d26146d639e3ea55f7c20e4646a14b9d0302047c435bb500673065023002b61d176a601b8cf059cb12017a65c36d210c23960f28f985f17f23a8f278680aaf2b567c94e116933ff193204b071b0231009517923e11dd09cfe2d4c7b49124b01512bbabe8a692b85c012c1a696966501ddb460325ab2fb8ae86916b96975b70420302047c435bb500673065023100f6654c085452c30c4ddd36b9d881e20452688b6527803b6f6a9523daf4cd1808aa8238a5d4d972ae173e1aaaf6067e5602307cc8b2fbea0f1c271f3012735a06a9e5840f4ffc74c957e0749f956836c3902efcf18fe5ab1f8d3bc1fe295f0f8964370302047c435bb500683066023100cec99d32eb0b5bc75d6910650fa1138aa25f5304bd44eba1a9ccffb80c9db575fa90fe02f24f6a939a19a2348f79e5290231008f7dfe86c9a505a342c993e808e293ac2a1a94353cf6d8f0727f1d23f0874be37b2684c6ba457fce11a5fa5443d950380302047c435bb500673065023100cd8d4f3cd1887aa9ad00f9502d105fb366ee984617347ca81267fb82ddeb835ac7e5c2d82c8ee82ce355df1408b2bc6e0230029b1843a0a3f77f0152ee1f70216925cf7d6f320f0464c97782734b95eb7e95c287ae193a4f5e9b5eae65ba65b164cc0302047c435bb500673065023100c24f91f83f88cf47b5a09d1f1fe2adf456a8c72e61c94e34be37a1832bdcb0313a4530548938885b07672c8ea3bd90f502307322389bf63fd053a3f2ca58cc684f2128b7e8fbdd447e79257376ce59cceba5e9aa7a95da89aba2ef35d5dda7b9c9e30302047c435bb500683066023100b2c653f38cfae80fe2620086d55592f48d02294c3b780a3f74f1b509ef1979dbfcdb836d76fbaefd62321e1d4ed4f69f0231008b4f65219c4442c02813dd882b92425f1ec0171a6d403617cfca683f04b6fbc9e7988716340b5a0d844cc338a9c981c80302047c435bb50068306602310088610a85c0099ce1dac65235c64f884fa31f55d49b4ce1979d1285aadaaf8b551633914d9792c120a5935959d269d0dc023100ecc98f25b9c5703ed77166151a6f3be1c8efc609ca59e464779bf87399e71b6f46b93796ca679ee2e6abfaffd4f471d50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cc980dd864412a5244fee8269ca82ea9484db330ee083ef66e70b822c690097bbda13fe823a24d81805a9113755d3b1a023100b0cfbfa0867b67e919ea793acc95e33d290907d23c39a9c9d7635746eb3ea4ade30774415d6ef3d6ce402627290be1570302047c435bb500663064023038e99a240c70ffee19fe79edef3f799d7c4f88d9deb281279c7d76898446401662ceae7467ce0fa3d6d934266127d539023016a537f7499d80b4093e1c48553be98aaf9226e6b9c21e46ce5dbe7d90a9c06fbdf3e75f095890e4c4e949e3929475000302047c435bb5006730650230242328c24e4d2adb13b88fea966778c142c4a8f6ec6ec58c949ff8bb57d0d8f576002139606202998f5340f2f86f4841023100f60255f7fb042e302eebcdd60b3606d258adefa3b0df2caf3427b047b60cba1bc2a9a6381fd63e48d53dfb61aa3876b10302047c435bb5006630640230069ce57afef18454e98f35193be3a6bb3863538635ddc85229661baa13e4d12aa802e8c1382932db96bef396e21c162702301de5e40b3d0a45d75be187b5a69215218b29a3e56dfb45af86524b2365a8cbcbdffd8cd9863ae42d30007a3f2d61b4e70302047c435bb500673065023100dba2f4502f0188e238f1076107fa93caeff1f1b10a9e40241f4bbd075e1eb41311ae4178455efdef193fa6c0ec0b2c8d023050f81a75e29e7979c0f72e705fe7821368c378bd0f09751ddf072893e016ce9f0cddad9a59aa4ce038924b14363546e00302047c435bb50067306502300681a3d2e487cd2b9d8e93d5daf29fe93495263a8462df6270d4ba3818c81f7a0bb162e140a1c035bbad3ba7cb336e6e023100c781e916d1470e7995c6806e3905806035d2cbafa928f3220d1fa9726b5a7006ac54dfcc449dfe366981dce69f24f1fb0302047c435bb5006830660231008b9fb113e6fff0df9a9324c34d47a0bad735b6c90c59cdf26d428d0d85822ed8989d01c5746348835a2d04aa660be988023100bf3db6dd065f865ccc3b5202ecd6e24340cc7e7c00ef64485168f9b1eb2937eec46f93cb2c1849dbf38349b5996577520302047c435bb500663064023020fc2335b7d9f2244aeca0ff2d173a057839fd7cf63f50edf888b29ef7e376ae7264fd0791b444749c5c1a584228a625023002c79e82ffcb0f45041a87a7baf8ca3abd404e1d10894910905fbe83a8833d514becd2eeafa87c9619f65dfc16be7aba0302047c435bb500683066023100b1c9cac9e520382fa4194d289eb8d63d499c1b8363888fa477fd3a960033ab6abe7ee0121e56e2c83d487551c6f6850f0231008af52c9d20cc63822eee5744af0d2bffcabb260c85075f09b3c434e89d900378eb2799bc31e54d4aeedfcc0f44bedf640302047c435bb50066306402304105e3411b671a75293f44a48bb2e18a33dacb6eb507e48f4b68e47fc6aac773f1bffbaaee89ff7ed5416dcc31fa31ef02301f99d7cb277db6dd1c9c9805db696cbcea02fec8e803b37b91895ee3e8438287f83e285e3572571888086e5b4f4eb1360302047c435bb50066306402305c9b95d42152428bb61a589a4823a1557b2358bf86b669db6603a6519bed129764801aef2d9afac2c8c65f47a29118c902305444cf80d3013fdf12c24127dd203580434058e923c3deabdd128297a79a7fab3ce6be05568a575c30d594d70d5eef2e0302047c435bb500683066023100c2f3df55039f6a41428c403d0ed27bff02334a8cdc4bad140c76d144299ddf7ddc270c356d4995eab60ba29625b974f90231009989624c335763ff4a41ca27fe0aa074e2a94ef71726db932818b05de25223b4d1e2909c93fdd2fe753173f42ea5ec290302047c435bb500683066023100dc077b90ba2132395f68aa0a8a203ca9afb0a0b500682f965a4e33951e5eba876d2b4f4b071ec6b46f43a58b77d321ec023100b8891aebb35c842e897fde9218168eb6fab3f7c72495822cdf39bd850d872a8952d2c2a3c602c15920c758e8159ec4330302047c435bb500683066023100aab6cf4e79d81377713810baa7603c3bb86245f9a616b9d2de049cec6d9f60a187a17d18c2bcab92d1c8cf20261c20b2023100f6c922e5b003fce05043e79ac97be9aba3ba80d1733afdba3a83d3c25123c62dfe0f9d31981240cd6a25edc147b44b230302047c435bb5006730650230306d2b6f879a850cc63f86f3952c48311b6d9f50530f71eb45c7e92384ea9ef091d089af156e89977c068271d3a1f7ea023100aa14139ec2192fcf1395049342f5c960a349e5de5144fb23a8bcd23bc1528b20fed5b569dcdd8c10441ac0d2849aa97e0302047c435bb50068306602310098be60ca47cd518ea0f6480974ec1cfb07ebe4ec2c9be293b4e511b7b6af4b3d5af46c81e26319122a4638e12913715a023100c2662bdbe4f685bb4664ba53c4814ee905fcfc39f4a580aa69fd3689e6339b309c54d556e6a7774892d55c1d919628770302047c435bb5006830660231009b4d7f1d34b5df9380247fc045e9cf8a0ebd90719da68d675441f4106a9ef643c6eb8b49081c5bcfed09d3abd3093e97023100f1fbb4713f16ff7d12fb13e66a42f92ccda6d45bd17216ef7c72161fb08c45cc9d21b1d0715c83c5d6f88304ccbdf5c80302047c435bb5006730650231009c3a8461396b93c577db535c13ab05d4c93b674e967a94dcc8ce190c4d571278262f71ee855cc154bdabaddba89b472a02307e0585375b55d0488688b39e101665d94be6e826d9ecfa6f98d8afa58d98cd3a6d0037c7fa2c766f5fc12e3c878edf130302047c435bb50066306402303a7d6d5fa63969070011b811f7e730fb3e99a4d977bf6893391ed4ea36f9be8691f37aae274e5cb31d07ae17a957fb9b023011ad2d1e12ecd893e261bd7ff36602d492ebf1da8a436ca5bbd52b12b2b947f9fe4ecc0f1799a8f328ee5e13c2d39b7a0302047c435bb500673065023100db901e4251543319d92e0f8ce5dcf8053569e4ea2e7c578c1acba4719f92ef04290e815dc0f4be925877fd6fd5c652a802304ca2f1fee7f71b177259dd5b9134989b3f9361c1f8e835abe483534367ff77c01926ffbe453d29c5d14f0bdf4dcb7bbe0302047c435bb50066306402304a39236cb7d604cda5fc571919ce3760aeb5c3b2d228ab6fb027577579bd848bdbbdad28648c37abc45b22770cd4b30602303db468a97f7fb292353b32cc54a44a97340aefdd384aef54d4f042df0f76760a2b11705b23c3ae2c2ee107384edd03630302047c435bb500663064023073b46ea2d87c8117589a888f18a835d1c46299fc000fef31612cf8c2d88819e5c9b3330890a1e5d5b65cf6cf4f95f67402304f7f28565163b89ad5e4ee9c67e83a2ed6db3106c2499bb3bbc459ae6193abee5844b4d02df29f592e7851d894f0abaf0302047c435bb50066306402304fed887a1bdc1034332eb6824e54d56913cc5d7e3f427ac9bd7df29f8ca57f2a7d4020333e2b7f705530bb98032874e9023018767fbca1f379a3f61a7f5c9bc1833798832cd6dca7126a0a54e3fa01084e433d657805d098b95e36de426e7bddb0410302047c435bb500683066023100d2cb243674d229842b75dccc5b905054eab383e7eb6a787cda6b0f78e8d94aaf3a62b6c8f61a571579e1969b4aaf34fd0231008492175a830c067c84e4bde5d62b0c5e3bb42573fdcb95965ae93bde14468149e105e7c7f81501c1030578827ccfc3880302047c435bb500673065023100a96b44454e6563d41d553f35152309830977aec934f7456da3f32413c23e929f822362e8a1a4725deeafafd625a3630a02307e498482e4f16a6f639185386de1ad8acec63846a5bdb6cb4a7897901d68885e93871f30c217c518de450d564f4c393b0302047c435bb50066306402300f358cdf80a76b5a661fb7264adb30ea6898fd5e10a8aa747404dee2c5fac2e732aca784f84e16634fad5b0b580c81a402303f42f9218e616fa695edf972daf64d4f2cfc487baf9443c787c4b3411d067e1eb4070c718858931faf76433745d1bfe20302047c435bb5006630640230649cace1765723d0724177db51799c49376153f93c7f96b96f2c399654bde0f28373ba21ac292cb0d473cfecc7c479020230248581d6008ba316268c535aef8d5d7871e0312ee35466978394fc0577c3b709dde6c7e151f0bf585619cb85306375b10302047c435bb500683066023100a281c05005e188bebbfe5ab398a8ed9e3b1b79f6107defe8f067fdb707464241b2d18fd2eaea995951e2ce450d522dce023100abb13fee90b73fad0228311e9441aa4047bee6ac947214a2f51474b65cc37ee2de1f7bf8ad94f4851568f78986e7e59a0302047c435bb50066306402301e797732e2b382dc1adf5e7e727e6904d140eccc034e538df19ad140a99e9495801d2411305f38f26af9146d8322ada402303adec11de5ac61d851037e5503b05174bb04ff4e191b1cf8cb94f5b9df7c069f633ac4101c35ec0ed9c17082fa4ad27e0302047c435bb5006630640230703e3c527ba64fc2a57a6538eaf6592d15f0f204e5b0b5907453178c245f58a56acaa664d0a7ff4055511da58a9d776202303f494d9055269f82d72386acd3b82f012fd928aef6f6f320ad23d902a292b00d137e383f1d9cafdb3393a11d4be87de90302047c435bb500673065023100fab47bcfd4ebac39d00e1de44c35c74a58993e4ae7c2e5ac153144ee8443f1202d6b6fc18c7054927cd8686e0396d0f1023020471af4165f60df8bffcf9035b1b86e34c2cb79bdca624d4ab8db90ce3d9cd2c1d4881648f174077216c0f2292d9d500302047c435bb5006830660231008dad482f33aa2aee1974fd306956987d9062a3ddab5725f2c56a550d00e3d3df2dc20aa903f378fc6f28b55f4bd75a97023100f7f394dbc29dc2ba8ae81c8104c1eead97c6cda997a805266fd90af453301abcf95ee6acd3c100aa6bba28693c55238f0302047c435bb50067306502300529f72fa69b89ebebc2b9eca23ec9e423321d6c7adbfb196eeb0cfe5465e233fd131077926a71e8a7c284a3fed5bfcd0231008cb1a193d6004629157691cb9137033e54d70fa4a3af799261011c7c9af9d30e212d47b7bcccfc92213a6705e3660a4b0302047c435bb500683066023100a99003c93780329bc7f54459fccd1cef8eacdae580862e0e3c924428ace7c5f6dc3327932cc69dff620b1976503c05c6023100e3d75de234cbe0e6130eb7991541185e5b527563fc17a8c561ab70436026242a9ee3b7aea3c596004be2ac86b4f4b6730302047c435bb50067306502302c62a22b9b7dfdf071e81286ae435752a35c83f736851562582c691ec7749e2ab06ca86ed93f13abb1429051ee73bec2023100974c047cf6ec09cda89917782a289baf47a7532f941b6fa426fbdc833f62cc0984c7e5c0fa7d8317582f84410883bab70302047c435bb500663064023052dc0f36ae495863a26f56cc4a98bc0037c191abd487eadab61fef99522d6596502aeb7f473a96d4115710a8860487a502303cd263837aabeba4765798054526d3f76974a563479dde091e26860786c681e91bf64d480a34c55e74cad835e54333fa0302047c435bb500683066023100fcb017ad3a9d7c7c95048ad1659d8f7088f7c99503ac7bef6b7dfafa811c0a35786cf0f20facf7d25a06770d6ac693f6023100b8b8df46e214b41cb8d5e38182160542640b577c023eed95bc40e0f0ce391d78d4a12182a5d4725c6f74ea3e22b3c7b10302047c435bb50067306502306226ee7a9e85123f36f8656b14e515ce4acf988cbb7cc68f7a5e009850e9383f4a972eef2e9b1168dc14304d256289ea023100949370ffc4050e208d5174543c2f44fb7009725efccafda34abfdef03258dd411d18fa0c4bca255ec3791344cea8c9530302047c435bb500663064023039b0ee40c3d73bbb2871c36a784b47f64d65281bb764b3a1fc83d78e2a8ef5039c501125618be2fa6b01c975a20e6cc702305e3bcd986734214ad8a1235d4be8034d45bae54d371b0131aa546c021bf6603c2709af8d65bb10ba36835c6f8daacbb80302047c435bb500673065023100c2e030cc3f01a2629766b7c148398bcf6ba14f2fa2cffd9113ad2c67a1c0149d507a67413a9ce5df64947125d9c39f7c02300b7f141a14e996b6bdaa43f16275c3a14a326529be8ab6618c10f83c97647627c59744d82d41a890c7124fbc4abfcfa70302047c435bb500663064023017164f099f7831cd881003bec285f4ecff7511cf6e7b16ac777336f3ffd794c3abaa7469868893b5170f0a49dc24a43602307dcfec93d2e233c9fd41d338135b92268a117b6b7c0bbe84e70b7e66c9e08fabee1346115e3d0d8a3729447402d4b69a0302047c435bb500683066023100cff2bdd0d6f052f5c063444b428760229dab3150a3045f25447945421d8fec4cb233496d9fd9ac72f9bf748985a485fc023100a07bdee7814262d7b05b101d59a23944a356c5689d2ed6810dfb3dda67b1c13783201e3d24055b9902a8053f6929aa700302047c435bb500683066023100f805ffe7600d4813fa91f3694de26276860d0cd519781619a0879238410bda3096dd8769dde8740f489cc3ca8c0e2356023100c0914fb1a4c88b7b0acf9665f65f5a420befbf2080f687752c962508a9afe42878bc6625645f92fbddd22d8d77d880360302047c435bb500683066023100e5dc91e53a6dc7216ac9158435dee32e8bc448055df90cc9484c4c4e108f4c0445d86b89e1330788d5fbc863b73b31f6023100e6ebe1f8eadffb2e4b3d96786c2ceed4afe912c125e3092b2f5eb6bed361d30e0d5cc1ff0052323178edcaf5e141655f0302047c435bb500663064023015536228651993653405893687e4dd227567bd56b2f0a26380b0e6d88d56c77b109eacb5d13b05e1c7123956f5ac9ace02303f786fd333f97b416750331f621753c8dac4f89a78784701e812564a7f8ccd9ce202e0cb602fe374eda4f7114531b3b10302047c435bb500683066023100e8b093cc98da0698a2a333919837376fdcf0c40ef80c7217af836c4918de7ab824ebb610cc34104127c5fce388e861fb023100e1f4a1fc9365f195a55991590aae8bb0b55cf56088c991b81ab661cc068fb7fcf0ce00c08debc28dc330269c11423b8f0302047c435bb500673065023100f1fae4048d876661134f6b8b43ac34293b52257a5ed83c08e1587445bb3d65c6e94ff729f80f1e3eefafda7afa3a0970023038cd58b271834d37b742aa7e1e704109143ca55ef14b85e675ae464039e958a1b1299d3531c932315dc8ee6c717acd300302047c435bb50066306402303bbe51d72aa8fb9511d71d27fdaa6a652c0ed3aba7ee7650de160b124f87600660dd507fd6214b3f2396689a62a388e902300d38feb6bcaa1248951cfd28be280ea08805fc07b2e27d8cafadf6b8dd1ed1c9b6a48e09fe6611f6b0b2e8d85fa2de1f0302047c435bb500673065023100ffcd63eb8d9e87762159a052100fd5104436961899906fad7a1c0f8882c6e0ad434d42c3c5708fab1c78ec5d2ba4b2390230233f2f46c7a9e03604790d04bc28029d00831245c97a37e5b15bc9f01d04cd7ffb17441f3f23dd3547345f1b2a20d9030302047c435bb5006630640230114e2066404d500a1d56ae3f02039b675cb3f9600ee9e7febebcaf2fdb073c3148e6c560d343a063dc687cc4ff1b74c9023050f8aa4cd7bd95acd7b1a5bb6912a04c1c04579e0a32c60198de3cb7771c786f90551d81f28299c93df7652f1d2fca530302047c435bb500673065023018a148a9c4ae22b15a605eedf1fe1e7ea83b4b0e3c6c33488a0a26737642c509676eee616fb6235b68283a7c222b90fb023100918e16e20cb16ba1347f20afb0731daa606dd4ae80ef80a515a82acb39857609c7fb34720d8ae076565f419faad04f030302047c435bb500673065023005266e602881a8b996bd7de1f1a013462d71efda5d64d4a8a3876226f9d1bf77aaab650eb804b5f45849efd64e0fe26b023100bd32388fe5feec6fb0906e9b00b5e2e88f98285f93c4470ae766c09d7153d78b4e94e7b35288dfb993771492202ddd7c0302047c435bb500673065023100a88791ae837b92f476c03e92ed03f14990dbbb63527daa026d46443aabef9223f563f5dab6ae90344ac63e1b5ef94aed023011033a97b195b3e6399f401969015d27a7b0fe888144f54d4086a21f464bb19ee42ec3667eb1dda5dba9d011ceb80cef0302047c435bb5006630640230175efe0da3ff5ca902370fc8e20b7bdd1441658287eb767f3cf7507d794b44f22eaf4bbddb27ddd53592c50724693f87023010281862a6ebf09dbc184f2570ae3da7958ea747d1f4d639e439f8c2e7778c48a423df3a5bd2e9b690f0680f18f8bada0302047c435bb50068306602310086df57dcf70ec19aa7ec6b6a5e6415201e26f484bf510f0fc397a28c4057802614933b1735000ed02a3b078dc6119d0c023100dd30d566d873ccf59615eaea0e11f1bd077e0ede092a8dbb1eaa56fa493c1e8c0c8c2dae6bde330abb8c462bc232fce80302047c435bb50067306502310095d96e575b188000525cbe4483b8b6db2ff8dc7bf3870cfef376a24d17ccbc56256f1f5398fa0d3ac7dd968cc4fb50b602306fb8c441d00b93be71798197963d55a47ef3d008d09fddc8167fb3b16d1c9515551240c04eb2267e743faf932fc3e0010302047c435bb5006730650230021baed9391c925d63fb06ea4a95b9f16f52cc38f3f6e67b0f60e65f27c234ca5436f2c69e2b01563989a63a59854d4e023100ccdc0855048f00b8f211e8c24ac8fc8a5db34faa7b192e21cc9d131dff457288b5caa2e4745e3ccbe3e96762b43b7b940302047c435bb500673065023100f7d09fedf394b15992e9d9898048e78572833686ece9b82501f039ee971be9b03910c6a0a2c11edad6900f4e87ee85fb023000a95391a2d440f4c3514e0a09cdf9d68abd3dc539354e8636b1ff1bd6323dd1760f0286dab1012fe1b193f757270b4d0302047c435bb5006730650231009f1d74da4861760bc7da55a4250be4bd0f50d72ceb902d97d800d6b83d3d949e11ad853105fe0114eb9ea8eb9795789702301767f8ccc7396184bdd43ff5512ea98cb57a9d6ce05666d75e2c2e216ff452bd26e76a03c1ee37ec3f5a0578c180b25f0302047c435bb500673065023100842b922a1df11796a69a9bf7226bf0c44ec6d0bcce0c2174b33e0d77c7dfaa5f674ff10393b9b7d658a308e584b3778702302ff8d8e49074adcfd30592c30bbe1c2f3f08a1e2a2c7b1cd6afa6ebaf988a02979bec7ed9f64b4e28630ee30c3123c750302047c435bb5006730650230136a3aefd719d859cf0d8377743c2d288a0e11240a58443884d2d43e62b5e16f84566608076717e7473a5ba958eeaa33023100b98416417566f77f5c82903a3ccc48479b79914a59f856c26799d5b0c410873a4f180b87e0c6a2a23d1c2431615094bc0302047c435bb500683066023100c4bea895212754d7954aff46be669a1072405152cd64f51436046db259eb8451e8c6c025664a68110c8d73b5430e10eb023100e77f7fdb18a37bc703f6472de8f64eb8edd7ce9d999982b02d9cd5beb4700adfbd1bb25c0d2f3685fcf4f558e2a79d170302047c435bb50066306402303f53e13ad35e68518219b628f0346d8d2a7ae2e6e59a07d2a6e4e442a7deb638445b1cae466da2bfacef27d193648a2b023042d0f25d2eeee22c2adc71ad57430a03f86fc15924638c27b6131d3c54cf84cc447cf05775299058bcfe47029891d7c30302047c435bb500673065023100f63f9ebd5a9973e7c1835c8a04d1e384b4c928be01b9973065f6ec8c6090ec8766a9cf90d084e92f3d843a7451358535023041681e99f21548a18b00baab8ca0b52fdeb536b5ea44241d45d0624417fa75e7af8df790dcb1a057dcc074fa7a1711cf0302047c435bb50066306402307b4f8d4caf37000494e65b05a131dac570bdbdd9e688b5bc08f8637cc6dc34e5bc39b7b75d4286e23cb3e848d891888002301f0749c45ab22e66fa716f656094c08751030963b68cca424625fc83b0a05ce19d1301d6a8bb52114abce7cd712c3ca90302047c435bb50067306502301b68bc1d72f1a3ba8b413c90d6528f37cf1588eeb2532cb6892868e88be0d7c5b1b8d663323c582faba479eb34f0c31f023100f6f533d78839d513fe1a2379b3564b47e4ffa855b556d4b2284dc36d70e42f8fe784deb8159742d9f05b9a13a13a1f650302047c435bb50066306402303d1b3dee5237d8eaeceaf0de392e01aac3c80a7aa7f22826a776be45c005bc198ea0d6a4a655b6f2801b4ae8b6b165c102300a0d780399507222d3404d3cd26faf08d53e34d2ec490709cafe220494bb14e5f63685a65648afc2db502ebaf12dd9320302047c435bb500673065023100821847776ef1a55c5c7246b7c8fc8d11707799ff5b0ab766e96a6b1411113958615c9a7c0ae34bd35da17538b9321908023010d1598913c9382938b6df83e723f65aecd9ca223c0abec11ae57ec90ec0ed820af90a6c6b024ab4e9e15ee289509f6a0302047c435bb50067306502304ad2f01afbdfb9e7db70925b505c96398ce39942cd144e2047f44e0d0104880bc7968d008b6350dfd784d7993b6e705f023100c61c8d6346a778484bf33dd2185cba2f82223f6894f2a6fe22960c7e3526095b2e4301bfd67a567275edf57fe4d576550302047c435bb500683066023100e1417406c4c8fda05e74cb8b30b659ea77a0e2231f20c779e88866b1a5b654cd9a0869c4921a25feac5bd2d8a3ef6fb1023100914b4bbcf41c483abb4f21f8e5a596efa153bf433a3bfdc8bfb7dd90195a0b352369bed1f3ee011b945ef8f6496829ed0302047c435bb500673065023038cebcace7ae0a837918f36309a3140d8bd8dbdbce418c07e0bb7df99bd4b56e086beeadf582e52a00bd27f45b3aa07f023100b4f6018b486de85b0a0fc9471457eec89bf72abd54cbe09b2dd375e41a431aaa92c44dd9bcdff685b097f3d75e6da4370302047c435bb500673065023041a4bbd7464aaa69c8990f043c8bed16dc3304f0544cff015cebe39f22aa8fd33c13ff27d1c857928c21fe716dc982f6023100c4281b5a618b49198934509d979f2532f606e0435c53875c954097df4858502725b261f82c3d10db70551146834b2afc0302047c435bb500673065023100bf0206f4e94a87d7c74eeee0cd9621cd51bb2d9b033d7e9df44b2327306bacbdbb3792e394a0876f70c97bfc630a244802304e3bea06af4849de3b418be7dc5f6f87faad75deda46bf79c3e516c65ed92b642db21be902d73f87bcd739a8848d84930302047c435bb50067306502305d8d8bc2a4b3616dc5d0f8aec9183fb292d4809cefd995d72e852786eef3cbd86a9b9f3eaf0db37b0283e683d231d6f4023100c7b36471933384fa7ef43bc0202a1aadba3cfcb3dbfc2d53049e13601e749b2feb008bb235af05864ad1a075d29f13da0302047c435bb500683066023100b8ba4d1f9b1f7c4368cfb502a0963865250ccd066d23fbb311da2ce6283e3b0bd881ede574647b8219a1662780c1be6a02310090d0814d2e43be884cbd2310333eb1f78355c679c82f40142c39443489d3ccc3f30524da6d7f517f4c55ef6e42a7ce0a0302047c435bb50067306502303e09cc52e0d72898e2b39e81642a1fedc0c0b234440ebd0ac52323758c41cf0ba2148e3892f67ddfce758289d82f4d98023100d4d2d34e5905a490e0c2a47112ba374267d8d17f410704a0f5f1ed73d4126ca9419d918dfffe555ec8d1499272504c860302047c435bb500683066023100cf755a47cfc3d02c4275cba5a6891d3f92d3f0b272c09089ffe4fad354378e453017c5e3bcfca7b81620bf049a492c140231008479b28a2d40bb13966ce69b73e4ec3a99ae3335760445052f70bdb1690c1bf820811dcc6e7ddb1172f90d389e7169970302047c435bb5006630640230543c696fb0505cecb67f75b9142c8b776d87447e3b1d472ed613e8917a9a50b9b0d1bd7711af9f183217c33d2e8cac03023022a19eb38cee6391e878610eeb2430403991fbe535c0a54aba15e1809167010339a60b5696ffeb37b2b9656d2819c36f0302047c435bb50067306502303d03071248ec9dc45e3992e8f52d06dbd9fdb36ad9e5809f2acd2cd775004a581469c80db2274d927bdb8f0787ac4554023100f34e31825906960ecc12f9a11c2253d2d6c0c30bd55af040750f6412c4f448acb329ff53bfb4cd9b9b6974b9de5b32710302047c435bb500673065023100e37093ce6113f4bf0b85c0c73e57a3168c0c71d8e6f7053ea2d8c6bf7122c4c25a487d08b6b497e646d136128bffde5c02303b0ff9b23b04acdd4baa5d6704d0bc341da182c68d2eb56426124da357740e61c89ab5735c88df55e28086061a88c49f0302047c435bb500683066023100f71c2c6a3445285b30eaa9fbaa563f0a110fcde601b9748da6c69e836f65107ba0f9d47b8133510fc3454f03dc892ab1023100c606c150be47642f3bd8ddc853ad00ec2d4f26300c091f35982dea9d1fc7fbae1a0534217ef94a200221a03f3f0cf8970302047c435bb500673065023100d1f26d294278d25e5715fa528b6ea6321835a6af8f59d83c6414a2a1bb35ba142b9d4c8fd3a511e903fb17aa54018034023072c544308e43d9ea2113dcdc7015d0891954b588007d4bf2ab3ef0d93f0c5cd4975a8d4324eb5ed89c3948f716bfcd8f0302047c435bb500673065023100be16ce359a0185f2a942bc9728fe9648bb7de3cde1dc7596906a3cbcc28c0ca0d3f0d06d2e57130daa11a2287ad5b25002306e05502ff7cf1b9d48ecbaf7f6c0738c3a3a7cfb39029b3582b4775601297c88b555c1e11991f81eb964cf47e2668f0c0302047c435bb500663064023035453c8f56e437cdebd6379bafc340efc37bcc0dda97bd8e5938158f6225783f746388e4963e0bc03f234295a6da21fc023012060cfc1e5238285948e9b9d24d80b8c47efdd53dc7f23d77f8f09cb4c7150a6d1306ad6b1a12602f52c3457e5becb10302047c435bb500663064023051c5163a48d372fe67b9afb03ed2d966c8bcef86af631089ea9da01314b4a0ccaa71922b0706f9df1e282598177d3f2a02301360c1071ae698cdc386c23925ec15e4ba0889e4945158b2f21e48de9ebe6d06538534f86e176ba15122ea95107f66190302047c435bb500663064023002533727beaa41330520b7474df2347217968759e5926c51370797fd8df0510913be36616172ffbe7d86c6769fe0e4d9023030d757cc0995ef83eced228fb8a7d164a0434c6f5bee62077d444c40b83d9537c82f518a0adf587f53662b11aa04687f0302047c435bb500683066023100fcfc59fec94769ccc70f1ef413f613f6017e440fe4b701c722be6811e5d9a4ff34c8e60dafa40d8b1c01b3ed74184403023100ee11d0b9218bb82980bd3ff909934f25b93271d95d5badc7ac618268dc080b86bc7013be335191edb200f54b661e60240302047c435bb50066306402305589650b8da136fec9d7d2892ba5d84290f466473f9bf025e59089a8d08fa2c420964fedfd2565670d31224377cf9200023078a92f3959da95973944913690ae4bb2f78d89201cf11c16bb9bf53182a054c9bab568eb2a21ce12336651e32f102cf80302047c435bb500683066023100b3a37e919014d1c4fa3a222fa8a414d529bcd1f7ca81b891200e20d37418d761e23b44833a50f7ebf6a48a9385fc6e4c023100c89044dc28ad2d9f05d9c7acd50530633f6b1a865ee06884f1312d2cc934ff1004553dd8a11a5369368918539cf96d490302047c435bb50067306502305cb702fbde44c6ff963f5b8205b8ab8a6a09d32e340e1635b87f0e23a9cbf252fa9381e1d8d11ad7e967e452eade5bfa023100c9b730bbf17f3d5a5b42b2d070016f6edbd0fdbdf5ed57edd56872e9730f5e8979202e2e66939c10a699a22f8d320b0c0302047c435bb50067306502307d03bfb3177d420c5c02d2ddd73895c0fe4c0e70ea58487d3f3a3b2dfca6d10e714adda266544068cff8837e4ceb96ff023100bfe0f52e43893389a060aa549e14aafce791423b6cd647c2eae39f439c032e0dca2509da9a58132409cdc100efdd1f4e0302047c435bb500673065023039def5c49007bdf68f8ca72697af54eafef04deb837c94a548433734b96812063d44e0563c18a439217dfe7d7741c2bf023100bb75f464feafd5d0dd7d70f718c6045cdbe4aee40cf42e74f07f38d386a859715ff3695443ad6c487ce40a9075eecbcc0302047c435bb50066306402307191a0187ea430e6217b7930de4b48f67dc47324def4ff79f5743d603857c2e71ab426d846aa6e819ecbe11ec5e46f4e02302329c048f09dc7b21cd49f9cb353a21ea47fdc18e0a53612ccb3ad17f54e21c505e9849adf5d61835f8ce9cce90150990302047c435bb500683066023100a42c8895ec96c3b155f005a2cd85dd819d1db226aaf2cc1b9c7dccebda09b2efce864ae07c94f947906c009726ff22e6023100a902acbc18aeb78f999c1b9f686028ec08301042946148fc6e720c0e8f53083a2807f5c6ef6db964e7b1bb53646b1d310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009f0b3df753c8b27e7837ce2b346366b07c901f1b575085069005c78c939d17311b527428c3f09ac663e76457c8302a1c023100d796669f133750b81b467d8ff08c3836fd49970c3e7f21e7d25c6916c39925cf9a8c7d3822c3e3685bb3c59d1a49f7520302047c435bb500673065023100a32ddbe354e225b8153ede33e3ddf7f03182f82e3af05c1ccb076fd2226b0850c699ab6ab4cdd25f7bdc34f97293dab002306749e338b65432b3905ca994a92bb3043b149b9150311aa68c5fede624fc9eba3899d3814f7ce34a7a6dcb4efedacd220302047c435bb500663064023052aa7ce6036c51250ebfb9f382eb7452b8317a7e743bf68a3721d87f7438be22d03ebb503186d67468f25250df3da53802302292a5b4e1ecb3e5a1a091c43e8f5a13ed760c9f8f0b2bbdaf5773db6d00e97dd304f4cab745b66c5eb71944ae80b9070302047c435bb500673065023052a910d37be822067f960dffa5ea342a5b5ce727174ad8b548eec85b7bafe1af9bf4626f08a2a22985fe8319bb0d4e27023100e6528f05e8fd21dd754299982556d91f7811758b03ec6175d935ccfa4908387b9ce925d71998288540c52dc3ab5391510302047c435bb500673065023100c452a826e93986a518ca2b308a90ecd33bc2e10567b0522a5a279c24789212dd6f0e56cc5f5cd7824aed6abdad405731023064c2cd61f6336b5602c736ba358366f8e8aebb1c379fbabe831a38e556c2792d0860787ab3d1c1e23b278026b6ed72ab0302047c435bb500673065023100e7e16d469e87989e5d98a1b989eb8c12b907522c2b1c328ed314334c1e54905eee90863ad3ee83758586a7c2501dd0d0023006c0655144fbc7ab0f1cb5b21e715b5e6d6ec76afbb3ff33ea5ae4a4249b6368e681bc8963788feb724e821bcf72c3280302047c435bb500673065023100c3338b0b2bead26a097cc57c22f2387703d102c6b21ef5ac60b85a9fb0943f5fce57df28de7592fb053cdcd8157ae0be023061c0deb00621dce985bafecc36434a6a8c7e01121df40c6a635e3f06e0dd8a20c923d48898b1396011666e7aed54488e0302047c435bb50066306402303ca8bf10880319b30111f4864924aa3ce5c4db2c936203e8022209a3aaa200eb043e956264345d601d08b4aa31aac3cb023053964dddbdcfe798b9c5354780129b7946988e7d6e3a0d3dc22f569c979236573c846ff1c9802bc256a0eaae747a9ebd0302047c435bb500673065023049715ee16c3d0059ec32ac9a8cc9e895472e1437d4f1e3f12b25780eb480955d46725c9f495d5bce16a86cddb64985750231009621fecd16ef947a5ecca9cffe2402022908ee2be9ed86af61ea7f3a4a192e7d0c380bc1127f064998d10e8f1b3746f20302047c435bb5006630640230301ffa4bcd311c6a6f079aa38803a4063c172b63a4509a61a9511cbec87c80d519d60ad75be3118205838407236cd89f02303b0a3302c294853d2da52a1c323989b56bfa2fc2266f6cefea298cc1ebb2f3aa5852f9e88bb4bb21bf1f8d64ad5416980302047c435bb50067306502305f4d6e253cbfaf598a0dfddbdfa55a350c9b6edc1d2e0b1511e9cd1ac7f9b5b1031c14a640362247f2e757e076641466023100dbf9956291249a4c02887c257b4b7ef4e5ac183aa3976094aba076923898f2915df972e96db134a3edd97627ce466ee10302047c435bb50066306402300b78c68288cf81bc31e16b7a5dd874ad7437039a305d47ad3a5123a59dcc7043c36ffb70cf9e3f38ecd12ea5c14eabcd0230336393b550b35ac9f1046262dbc9f62535e3886e4061acbe0ab74f0149b793d80f1bfafd83fe38e302957a65cbe0aacb0302047c435bb5006630640230272545e1b055b4c7e4eeac8840e6061d50e6318d059367648144873b5a4162384e25fda351cbc12c1c0e8c8d6c16b68d02305a7f5ee7b2befd82542cc2c6c9781b432edd1a8cea572f5579d667ebd2cc1511c2a196456f53a32943b07ddd8499ff700302047c435bb50068306602310085a3b981cb623ebd473bfbbce7100e91685259fe30ae92b0489f8034eee8dc8fcd2a5c97e9d77a0aefc57146a9d7c5e9023100cd10f72c9b9278848bfd4291cf83c1579d1b7feda5b29687f21c82a8b6051a977c3f0d25c783839653590eeac5b074b10302047c435bb500683066023100a7d29e1eea0b6610077d8516c64660932045aa7759d46103a1a514f1a7df9cb59b1592eb34fd216bb21fb91eae4e86b3023100a3f6869006321b545685ab5d847e4b30bfd7925948ec72b71de43faab9e25387f2a7e445736d9339ab33e96b7f659f0c0302047c435bb500673065023100d6274cb29796fa35d172ddeab514a1770fc1547f79307948c5694e0e311d81aca5611c5bd18185feb9867fbb3a8eede002300f2e1d9b0384b56aa317f243b70fcc1564a68c89c7a1b35e1871cd6a7af9683ec7de0497d9ce239cfdb7effc01256e1a0302047c435bb500673065023053c65795757ffca91021c20d42e24b630ba1fd3e84a5de984d23cc47e06caf1d86032ddd972e85252c02ca11ade03d69023100d84af5fb783860e40a51257cc6b309eab3e8cb863b018b417186f169a1dbb6a0ce393acaa7f9cf7bccd96a24c8b78a760302047c435bb500663064023042245d9bca6162a6680891de74de73aef0d393384eacc0bf85415090476025dd53efcae77842177dd6ddc8df16fb43b80230033e634e55ce4f6a7483de8d45cb3f2e582e4cee8d211bc9051f1e56c3d7046a0975136f468b733b99ec89089a4b963e0302047c435bb500683066023100fd0c91033cdc89f29a619b2281610666681b5c3ea15abdeedbf7da4f935c29ddd3532c7f2deb0856a97f01abf4a7a074023100d0ab7eb891ae3eb80f02bff5286007e5a6de7c2be1c648fe339f0803ee2271cf1df4a9e801cfd5c5169c86765b4537810302047c435bb500673065023100b88d31dd2c158d357f3a07427c5a7fce656894bedee7c90da96d342d07e334aa978e455c5d2cceae72a0fe857c6dbf0f02303dc863f5e38de44d27ad7b3ea202c8e53d6faad0643ae40e3762dd67a78d8dd6cde7445124f6d26b59ca03dc835ba7530302047c435bb500663064023065304d02c196211c781928d4ba4c0f8091cec85399d69d53e705a3279302d60b93267e16e5c8d0d691760009abd4eb3b02307504f050116017d24317ebebaf2794ddb6091f0e4f72a541162bbcd5d749928d1fa69ec4737e0bbf03898d6a99998f0d0302047c435bb50067306502303615f5ffdce1cec4da479b06f780db99474732c2cebe0266e968f649d915bfee432198a51cfa32d76ec074da62afbb22023100a9f26eff46ea285a17de0d3b5128ae91eff2998936b82d0dae1989b74ed17580f0fd0eff31248810947acf426fab863a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304b4b34cb9850cdcfa278168467ee45025078386889f62fd2f206c415f333eabf7dd10495956895373fa83576c486acf00230488c6866c131c9805aea227eaa9da0a88df4ec8cf1b2d45e1e97d9341b80778dccd3fbc7c190ff5807df5a25112c7dc40302047c435bb5006730650230247ff6b26c7b69c027da6fd048d92743a59a314cd1cbf5c4f0982c1464a8ed18fe8c5ff3f20eddf08b7f89d456b3e691023100923e31c6385e7946f13eeb3787e6bb1aa3aeff9c082018e17a70000dcbac1db567185fc28991439d16ee2de3499d3dae0302047c435bb500673065023100c395547af1684e87e452ddca4ae6fe6a3f10d07ed31be8463f389a24809fdf4c5fd8355abdb064c5bdca32019fa1057202301189b1f5584b2abe76410822f032ce4e18552cfb315d109c8773ebf333261ced744a644b61d6ad2dbc0c33fd834b2dd70302047c435bb500673065023023df524d0a30f5815b002c2ceff69397d7901c9b3cfb2dbf2f7125bf10a0dbd4ca4b11d7f2485c556c903ed8a295f552023100db5afa6d06ae6a696a7c538df28ee95697ce2ff10c5cc46e5b7e23b5af848738ec531fb99d9d1ca6ebbb1a243939601a0302047c435bb500673065023068e4bb48dba1206a37ebbd45f6eee2923966f55213d65676e27ded9436f6825389e4ab0337c26d7107165815fc459c6b023100f8d70cf7f4bd73f3c8a23ddbf213d72e01eb63bbfa757d3cab786933c6550394c73244fe409d5ceaae478f76f845c5910302047c435bb50067306502303fe44a0766925ecf57149a44edc23dbec179599aa5471324e4df673c903787569e5f3b98e89a29ecf3626f547427c39002310085fddc1ed497914b02614e0f198900d835485a0159f7bb440375758817879215007c55707bdf146a41fcff0748eab4d50302047c435bb500683066023100d7203b57b06198d89a50bad05276122f30d972d2e9f1e4959f63b79c01114a4a496706ee49fdc0e904ff83c469bb2032023100a92b434dcc7b39ec0eca4d933d716ffbe84baaa36aa775703edc63d9b920ccaf2b1ea5103b013ec40a7698c0067f75e20302047c435bb50066306402301882fcc31badd68aac4a3b910443b88c222473890a713ac837d1cb220c9380dd3f449386e2dee0fe3f570a55561020b8023057df6d96cd6b8c5866a25ab76f0b8ad1818795236c4b512b39626bac5ffce81bc50cb0077dc83a562cd9b8fbd91b53820302047c435bb500673065023100afc577b2dd6d5329cee2886109105fcfda35310a2bc6b5a9f83b62b687e50906c6065fae8ad80f063296e2dfd4b28ef402303357b40697fb9928cc5953d90bd051e52aff46b00b4f87fb45fdb063ffb99e86c402b633192d19281307245388219cde0302047c435bb50066306402301da6f04a74362b8ba62e5f8fd9c57639047818c69a4eba4fb35ef558ab5838ad222833e6a400cb0c6368dcbc913bb02e023068f2ef716e5a7bbb967d6420a7346c173d00a91ea8d480f4a109360fad1c207d3a8b9c674881c5b08c5daf5d520b98260302047c435bb5006730650231008ec51491959d8c71c30de3e0f201069a42ce77ba17a0c58253ac70daff9bfe165fd763151b33af4a85c906f961c25449023008cd83c6c91646be82c01227e6f35af685f73c54641d5cbb1377a056f3c14946ea99c84c7fbe354e65b85ab3b7589d660302047c435bb500683066023100a304104b7246047dd3be078aaf441bdf21e8e3e01ab16c6b7c0c4b797dfc43c95ec6ff8f6b5a6f3dc40c6c256d14a93d023100b89e843381ae2ba5298222f6710df2c07762941b36ea712844935f2168df64a86d19b99c2d12a9eb5bf4b8b22356d6510302047c435bb500673065023100cac366d4dc35ffae7dc5b76f6e74375afc218102a26b311ca8dc5825f03a9e9ff699a12a94d79855880ecb00ff64c85202307ac6800e199c94aa37a5f7709d4f6a7d6b1c509cbe23e9916b72d6fddd900d8c48c4a19d0e22012e728dde9ac3b44f1e0302047c435bb500663064023037c8799e570aa37394ec95ecaa4b9811872bb33b0e6caf595a907a0650ce4c826436d6b6a15a6bbe483b3d21a15b988e023073604921ffe853887a14d18bae7657b5cfd0acf8d3eadeecf8aeef48630cfcaf0bb3e47455c59ce67a503c1551cbcaf60302047c435bb500673065023045f9528a7767937b9257f2989f89fc7d363f684208f07d4db0bd186e92ff75e0b392de286d79131e393ba4cf134c8887023100c1913b7ed54c65635282a51a67601a13935a36dd4e1ca812ed344553eed6941eeb17a556498766181b6e940d740bff010302047c435bb50066306402307c01d8ddd26bc74e2bf6db566830d39aee34e1f4caef2269522f710c24a713184db32d29c5714ccc529fd123ba9fd32d023077288eb1c0b3d76776f992c84427a84837feee2fbf2030051ab0917b32da26efc1fb08426daf6c2fde0f680fb793d4a70302047c435bb500673065023058188b34d03511f26174fe31b9e4426a68a0885bd7bc23eec151a675b362d69a650e2592cc5c760108294903e57b46cb023100f52726b64659c090145cf76093a6d5a642c5efcccca8dbac529c3c179b9b56724e33d199390b400240112e2500396b040302047c435bb50066306402305b03f01250c2c57e9bfbe72a84775aaaf4dd27760b3047483fcf9657c37fd267aa5918b1afbfca9acd4d2f6b275ae47d0230473b7307f89482cf77a9dba4abc055e1910f128418fbb54e28548e4f598b51f18575fa38b7147845d7d9caddcd286f350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f69b417ba4f51cd77b6b64bafbdc340eeb8aa0b7b2f7160317e6c37f537ea8be1650f221daa3758aa9df089eb8add0cc02303e00130e371fa76f79788c66f784a3a3f092bb0a740bc0c2f36ad80fcbe0eb4084d1ac0e1dc292d85ab2cd48eb69be240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cab56dfc5ca9ab8734ee78e0dd6dfefd01db2dbe5b79fd62f411771432150aa6c057a8927d5e4798d32261beed0c992302307021d78ccb91e663495286696571f9e3745f0d715a6db25b3393476c65d277f86fee3b3fee7c23cfdfb022bbeca4251f0302047c435bb500683066023100a1efe7eb2f4c7e49161697c5d920e8a08fe0094726b7654ed10483b576b6f28e27c72f65031207fc9422a29ebe4cc5770231008e1aa7d880e02ed93942a4079af0d1ac5cb873a328697b81f6cf130b6ae6ae286e45a3efcadb091dada6af510c12fb0f0302047c435bb500683066023100fa01b229097632a3370fce9319e04c72b2389d0a0be7cb72cbcc77a995dca4cd7f25aa65dbe78c7b306ceb97a3657fd30231008aa5a62ca85833edcc1f14787c760edbadb31e5ebee78e97da43b541fb151bc51d8bccccae5884f7c1ced82d711588ba0302047c435bb50067306502310089a4b26d10d3adb3d7d184eb4f47f228670cb415b29ffdff8bee66b4a9fb2f6b0b96085c8a04abd90ea0c49faba80dc60230123a8244066814c45b575c5a2ed5edcc4f3274c0c91984e495b3dbf967c81fc3997c45cd5869900818f6703f68a246ad0302047c435bb500683066023100ccce423ea7ba2eca654ce4a36f2dc7162fec7eed7ada9e0471f576726e220aff30a840c79a488fe8a40abade16675a96023100b81a6a8770badf51771c912d510077a3d989bb3aed2ae809bf20f1b8cb5edaf399886b729065dc377221fa98a844b21e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023045b5004562c4e566bc6678006fad90978b29ed5ac7c2745e6010d1d26ad143ffe4a7986be864d93c8c217f5d35bbd19e02300af808c1150df38b6c449ecb095c8ca959d87c04a06ba82cf0a6c8e67ac6cb747d3d88fcf8337c1315d71f6cd85f9b8a0302047c435bb50067306502310098906dd5f3b722155fcfaf2d0fc0082a219be62f92687b30437cb3c1f970f311838359b4cec71c705349a65ffe82e41f023072049f2dc7fa84dfcb996af48a8e202f8926d7aa2bed15ae1f6d914c18777d1731baf26db50916b01276fbf90457c5910302047c435bb50066306402302f74cac62647cee40b0a178e5b707aac2fae5ec21d27b31c99138c7aa7edf64e32a8c77a6577a6939fa51db720d3c64d02304a2e2a784c3beda3ccd71e0e96f1becc4220e6734afeb490f72d34a836a6561730ae86484874f780fdb19e4aef435e9e0302047c435bb50067306502303c48a64d21906e10b0c1ce2f07332b0d298a16edc2facb52678dbda0659d7a3ef836adf230997b9d3f17e567bf8f76c80231009b8ec1cf38cdd4c1a462a2a01055a4cd25ec1e8e9a0ed289e693cafcd1314a791efa6d72b1e24863f77e9507369f87e90302047c435bb50066306402305cd5c9651326e904b6ed2a80a3c11dc69997b67945b0b4a4ffd83a9f1d85951199535af8bca613ca27a98d507e45f30502302509b58dea864b5cbbeda355ef86735825b7b06511ae49aa20b1d752cb0052462bafa99affb8060aa2a39e2b4a7cdff60302047c435bb5006730650230687fe9469c9c4e8f45126a594323c28c4a34d9fb1ac83e07614bdfa3dbad49667eca8cf9f72fcaee7fb41fe19a7a646a023100afdb37c2f3eaa93e4bdb145a9cf58afaf66a879e3853393d6ff1cc8dd9cedef285b566d43d09aeafb7a03e20f5bff3100302047c435bb5006730650231008988306c1adf0093e385ece8ef185d8de7dbf689a78a0e08a47629ba4c8e6420bca1853c1cb935f175a5ff569b3e7bc0023053ea50e1e085c80fa4545f74f239c516272bf03a22adfb26821742fed9f0fafc991da02fe41af2365a46dd4a55a65c9a0302047c435bb5006830660231008ca7fdaa4291913df16365ea155dc3d6856e8b8057a14ae05dc797341c9f00564ead2ccda05a80ffee8166a48b961ec4023100bc9e74068111f160c55a466d0b4d08b904071b633f34816edc5d8e81e8e10063972d1603dba02c647c1b1b45d4cee2a60302047c435bb500683066023100dc5b9877d9a864fbe003f08cdfbb05ad13810b49090882ff86fb4fe67cc29a5a7726b28938fcaa09f7bb26bc838f375d0231008f00aa0c4f60ae91866610ad3755df75d47064b191db6ace64ce7540023debebc91084f3e8efdf38255c05ff1574a1e80302047c435bb500673065023100e1c01fc90f5c9b033cb85e6b4c857e777503c24caca1d0c3f8dd390b6ad1b4ffe69358a1d202b040211db0d4c250838a023003bee730d6274b3ba2e945dad62674592c66fda8ef22f340afb7ef4106d7b155b8623228bba9a4979e7912724f6d1fb30302047c435bb500663064023030922ee62e86e175332a8dd57ba1f7281cb79b7bd01ed8d75cd08b7124d05d3a8c54dea62290aa74a7e786b2120106030230350a59b1a91d23758c8cac6248bfcbefa928fcbebf4cb0d42f64d574d9d62ef1572a3c4f95c3e550587ea893926b00ef0302047c435bb500683066023100825db0d5ffd3149e74b01c367dd296e5f6abee242135fa43048c15629fec52942b711d6c83757a0b92df6d3972b30a93023100f4c72a7510594a0210e889a67528bad9dac95123f3f448fe38c7a717c5ea761cb9b2dfa087478594467c39148b9fe6280302047c435bb500673065023100a9e93d871e75783786e26df5d992f834e094b599a64debc33eb9dc0dfb32efa63d065e414b62681f8dd34b20575fccef02306f61770f185f6654a82bc5b5f4d5463c3619deb79a3b71987d5ccdbc1420e02b74896fdbf55f135adaa590482fb4a8510302047c435bb500663064023065f992b117b5256464482e9a3c5ace04bb66044730ef10d568f40220233e12e18884b42989daae791e4b69ab461232b202300f5df141e3f6b599c741feabc82367d7605594063c2bbb5e39f6b9a35380c011c3d6218ded282f2af169b1630722020e0302047c435bb50066306402302b0a9aef70a11e669450b3e27675db3e4b7e4c853465ac4dfbc00f6a59af4e83a733fb49470885f46bc593f5fb2820550230219455dc41bd2e6c8e5a3006f819bc9a1ec8b9e254cc43d94ab44bf8d775bc7c9d51ce4a93fb82a17a3dac834bcb9dcb0302047c435bb500673065023100e9a24d45ca247557d33ef57258977c19e4050525371762c18a8b78536529ceb4389969675c2556fb586d69cb7a8abcec02300dac57e2677f1b67b93f9fc7bda1bdd52c40d97dc74713ddc51645d3993cee0268e30489bb1716a8c9298473d898f9950302047c435bb5006830660231008477bb09d67ebfc91c331b2a599229f6158ec630eb6366868ea639b33360474e7641e897c98974aec39cc440bb4322b7023100f3d76fa54a30eef15328f3b8759ab8e7e9dea7d06f25e03fa4402cb3d099de4c64dfb98ab2a9f8ca127512956c625d7a0302047c435bb5006730650230263519dc7535e914efd4b7a94758f1824335da619e10157a6a67e0b5b7012cbfecdd027e12e82bf3fb0371e50137939f023100b498a17eded45a83c21c6f7954bb22e023c379e8bca56e4409b0851563e670d535665f4e4207339f95755ed220e7344d0302047c435bb500683066023100cc12db21c034381242bdd45b0e1d37146ac923d536455f2ffbdfce3abf5cd7ab705c02ff28ae6d9bdcc69238a23da3240231008e8d030f91ab36cdc9a31f27445c6e8febca2d5ea7e148c18c7d005fcbcbe41ee330584e8f3dbb5ca82e736d65daf0ef0302047c435bb500673065023100bef2b41057013c5c38b1407f14f2799a71842564a358f301a7fca6be34b8afcef667eb34b1d2ec60ec2a820bd0e732df0230330e6faefa321d11e4eecd2ea257bf9b80524010747a7a680efa72394b3e299265c356f6ae7009b89ab78f9531228be10302047c435bb500673065023100ed0645a436b4a0ff7f0e34025c63e360dc10b2efb58f4c99d76a83fd8ec4f473a15a057e726ffae69da0dfdade71a2b502305ed86a9d1d965b008c3f56c9dff5b38091b1384321203163034a95a6439d79cdbc37137b62e911fe483243edfd09519c0302047c435bb50066306402306865cfd739172971fc2220256c5976c75f74c8b78fe16c4ef973cda6ed753b04d124cdd3cbc9bf82b3803c743d75bc0b0230504363112a47088d74a385323ee326a81b1f196163a52198542c2871982dd8bec5ec7df4eb5774b7d5b735ce99d381a30302047c435bb500683066023100d2910be0c6109feb8bdf4b6967c3f01faea97ee4eb1e44e8414baf4349055ee655160b812770203e96d5010a4192d510023100d801213a2db8dc1868f6f989e6c489c459cb9b79dcf58e7e95aa5dbb1732cfda27eb2aaa39184293c626d57af25159520302047c435bb5006830660231009aa4c4bfc7abc80ecba8f52edcd5c065bf4dc45eafc9313e3a52381b788a01251107608f60578bf57bd30f3655ed2283023100e64f56b610bd82234891d96a592cb5e0ab3469a3424d7af16b26a600fb95b64bdf25de867a88da90d2815f24446296260302047c435bb5006730650230449e8be8d5355724a1d53145c8aaa4bb215131c7256dcf4caccb9cae608f7daf6721093eb24f9dab44bdc201d668641602310088f4be425d38c0207b6de1911990181ad565d250a943047db2ce8a6fb6d8c70b034e2dc4091fbae5d9e98eeed058dcaf0302047c435bb500663064023071c836e8d3787a19d42837336c4c4c3d6e2a3343e7dd490847da8d8415b3e55d41bc370fd40aa4eb84fc0d593b2046ef023075dde53a0d42ae03d4f409b5585c18e857852e3747701f0391bb999449974b1434eb7c1d6c4fd9776a438682930e13f00302047c435bb50066306402307086f3b41e3f58dbbcd4ba78300b3e2b8c97f728fb257793b6ce892b3d5d8a0a316d7f1f354374c9f5c7a37b5cdf7a84023067ee9235b5927d3297516d468e5a8ae713590cf16ef077a72f7aa745390b91099454c69061852c9580817752beca63310302047c435bb500673065023100bc88348425ab78f4b801fe637b1010360b888cbac585d0cf81845c774c17db6a65419be48b158f63eba0a1767ee2027d0230064536daaa14b50e20b80424628a12245d87c0894594f46216af3a249efd95dec33585ed92ccd95fd56be02f4fbc5daf0302047c435bb500673065023031e2929bccd4ea869b42c92456385a21dedc29d9864ad1fc845d8522db3eb92d3f4c04124e9f8de2a6bd4e4777f50685023100b817ef6908a74324f7cfb95828049e54e9c600274f87c1fb82a8548356623569705530433e721b951cd9e5a93d9c741a0302047c435bb50066306402302774606a8d4a44e4d562cd8b9cbe8056cf753966f6d820f0f203a2f93b3051ee4c3ac91bbf2bb4358fdf46878cf2af4e02302f10745dce1b23a99b52e47d08ce06f84265f0aa24a14201418e7397d56a601c8fcf9af7d65d224cfed9a0dfa27860310302047c435bb500683066023100b0812007dc098d23330518d780192180b479d3267b41f0ad609efa57640a484e01fb706000e556ab6e3cb71b165a0f6e023100f1de447ebbe4422eb27c3a948964e5dc1e8e1405f724421b2e77e5dd60309f66e4d77596c173d92e29d50dc97d9ac57b0302047c435bb5006730650231009d3302fc51941f2d2590c960017a830a8b804ad4a7e5d5e1f7379c55209d4bc393f1ba2173de180f9bbafd5ba01914be023030a52e6dbd50c29cee463dc8a8a174beeccc81fc6b645978b8e3172330aecc997718da1ed683a4d9ab5944af569a2ab90302047c435bb500673065023100c4849d839e19a97aff1b7bca6a3e372329b260bb4006dd262474a8bed8de1d09ed10a1385bf86a1a91cd8bc336fb51c0023038261f3a569b40e2baa466117f9282c6b7738c0689fa35f0796aa8cdb0a775fe7d9b9e8126a8f5840cc7b933857044510302047c435bb5006830660231008a95490284ff1ef67088faca32c532577c0eb643afe041c30ffeaf1e9fad9596c2ba01a8d9832959777021eb0b6bdc90023100cc579891328e96525f5c5434f729ca85daa1962e520b1b8dbb899894ac8407b9d8392194632956e416b8f83c1df09e570302047c435bb500683066023100fd430846d9085a4524eb0a1c8eca441b567e2ba29c9c97376bc6ee4cdf93bb984bb0b977b4bef6b26ab317b4e9b19278023100eb81f663dd8cbebd925f5445cde3111c0a93bae79696d3df797240b6536ba955d0e1ab1ec0ac007b70c6b4ff21045e2a0302047c435bb50066306402300b0599a1c257028d5ea1ff83af9ab8524a0bae9d86f348d5de21ddf60540bce5d3c65ba3d2bf1d24fd63c989fb5434df0230428dc6ac6ae0530b952de44ebcf352fb64679de53aa5ebf8f011be44190e423242a6f79137a60bd449e9104f8fecf4a50302047c435bb500673065023100af61120b53659fa338e0c5d1a91cef8bd4d6626acbf0ff75e1b622d05c68ae6862888df8c5fadc40cd8b7fcc4062a4dd023028c90da025afb001d21d8a77819b20957477af01e0b0af19f8b4e8861dad9d5cb122f594d617b595261b1ae28cc9f6d00302047c435bb50066306402301735dc16538fa8d033f68514765dc853bef9e7cb755dea2e8fcc6f3e801ee50dd5077ff92b5c7b1e740a052dc8a90c3c02307922174c9ee20ea1d4787d367dd1d6deaafbe5023bc8fad653a8c756c4b042322ed2e30b6749d837969d4385fb8d2c5f0302047c435bb500673065023100fafedbf4ddcd8f9165761ae94e3e5a58cee98d47025551d79496973e2f74a16fca648eddc3fc3d30a7822c9368c4526f02305bbbdb7a36f2428ddd48ef9def5aef3f9ac045f15538e7ac273bca27a2e0548979be307baa54b1690db7ef1417ead5ad0302047c435bb50067306502307e1590e8990701c5a31bd69f830f8141dbc36b847e433d92e8d40d299290920badda20dd73256a01bdbaaa6ea03d77e0023100c7bdd6fc89f75fe1b846dbec3bb15aae91d22b900fcc07e75fa1f9c38498c3b60e7aa91883684c0132886e0a87297ee90302047c435bb500683066023100ffa831d9bda9e6e892e6e2bf3cfa9512d5f96856d85aec355e77dc59c4180c7722b4f87aabcac6bdbebdb19f2b412440023100b0cb9b7b657eb309cd1057555675ae01e2479b2c6c6e369e03d4137c9c1d4873eb99ae660a096cc5f5118169ab04cd230302047c435bb500673065023100e62dac659a0a07c1b5719f45c71dd97eb0f2a717c8bef19238f270e34cf4c5672edf47f5d12385d554595a695d14397a023069d8ad7a582a62d58a9f6f90e37dd13b617a38d68659f5029038d2b73c98d5c5fc45ed87067d08a58239a89de09da12a0302047c435bb500683066023100d62fdb26f1844bffefa50fb3f0da322dd438d5b789f82b1ba49b9a318de7254aa4b9484c2e009342b38e7c5df7468674023100f4d7e923e6c04644a5bb1eff0675e6c99d46a6dccc248d3ca7ee2e882925a849f3d4967d880c81143404333714a78f360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230208aa41b511f63d033db66cbee1bb470d56086350e7dfc01eed9e6ee42bee5d7d35d44de4362214c4b777a9f5f82fc1e0230564e87eeb6dabfb9a68bd09895c084563c8296b677053fcefe06c9320fc27f0ac9b342bf07e801e55bdc119af2f16e400302047c435bb500683066023100a8ab0bf0a04c263f1066d1868700106da6a65688564524b0f1e41d697fcde8bfeafed969bf1a49e0ecedb69239f9ab01023100ceb4f5c48bab1d0fd44c0623d526b40087904cd53d0a7ef6a04fabc8e62b9a0e322161b41078ddb5c6d8a3797bc28fda0302047c435bb50066306402301c12e6c70d20145f5f5c59806c30c9e47a4d06ff25e4ea920f86709d4a26c337a9bb4f66978d6c8b7299a7a23a9f6ca90230299cb60262dcd36f9a17621ee049f4efce35b4f9949ce6de315028e4bc2d0eac827d6adbd7e86960eee88e8ac5450d3f0302047c435bb5006730650231009fb44e4d6cfba129d871f6a27d737d097c843f2e231907c30a91ad96b0fb0bd24eb4fe99160b226c2181dc2a555f1de6023011d03f346200dc7b2ab1c2b78598f124578071ef14248af9aea5d2fa00e7a557701640c1de6cd53ced6fa2d80f19115e0302047c435bb5006730650230019876082d67e4fb86e647f77457b582805c12c9a2a3e677e6f11681574799e02ef247fb8d273a4173f7a0da54af038a02310098394848386c880552d155b06d80c49930fb2d2fcd8a7f098d47e33cb7297c9b6678768f3ec7289f8cfd1ff1f698ecef0302047c435bb50067306502302dc07af7145ff4c588fe27ab3295585b23ee6928995142c857eef54a742fbeba03a0af21a5a210e99a707d0fd747096a0231009959ff8c43fa990d5756c8a274bd455127f1b50bdf1b31165331cbc95ec2d1f342c2f05eb2b05ac11332ec356711566f0302047c435bb500673065023100b08a5883fd5ce698a998588a0978fcc96384c8bc063d55c2fd68fd3f14ddf0c079beb5f946f48bcdf88bc0b4ce940868023049119c70f98f573963008da00dc09ea20db8222b5d6d137a6723c66448327f7637c0d01aaf77700541b6d35c07fec3790302047c435bb500663064023060e9c695568349411333851a04bf0d745376ef7a5c539a48d1bf2df3dd4727ef3de78d98e206bdb95bcbef28b0d7a4bb0230434f2d6b706aa325fe83f848fe18e4e371ae10ba340a3efa577b2b525f4725abc7e5876ed8a47d1871d1fec333f0e16e0302047c435bb50067306502304dace5df67fa5b32963d66adda8b7766b3b56363382acf5c0ecaa80366615d9b7c6dcfc8c26a74f761aa0232c7619305023100a8945c30f78a5db164163e851013232ebdbfe571121b169cbd4c25a8bb345ef6226d66992f52efbb8dd2a5696980f6950302047c435bb50066306402307713558b36c822bafb3cd5bd6095c48cdcbbf4b06e81ce23248910f8a7e25cec1960aeb525ebb12f39072511f1badea2023038c77400b1bb2ffd7a43be075c29f24524ef3719733264eb42c236a1d83d767faf63f0ea1934951b94aa245046c559da0302047c435bb50067306502306670784b942aa2bc86f7acbdd35a624d0da221294baa9f511870db7bb8b1ffa0ddbb811ecc2b29c2f803cf5c7acbf426023100f602157112bfe34b13913418ceea40994617e1ff5a70daafe1412d4ad5e308634055cdbe967213710c416891237c20940302047c435bb500683066023100992d547a33817cc23044a710ac14aba7728b5fc8f8cda220a468e1aee0505f37ca727666b432b46e7c70f5e4fadfb3a2023100a29ee504a876da9fa903eae3fc1541e0a224eba5d4e08a076765eff44b3fabbe66caaeeb0105fc82cd0a157330edf4670302047c435bb500663064023021537d34ef0251caefadcc516517c3bfafa5b42ff41e3ef7441dec3843a0dfdb628b7a329bf9c58285249705af1487af023029d21a53e43b9726adbf090967add6e575ebe94a503009af50fe4ab4d86a60111615d6ddcfb104d61f4b0dd6aa65d7e60302047c435bb500663064023011fdc00594e2da3ce53aabf472ad422530ac06db7026a5a6419c90c8ec65a6e12e76c3630cad609a85330527f697501002305c6594ca48ccf125fb8cb37fa4f9498d8b895ed8df0cab7b07177a156251d9ae5d31d46ddb2fb71a4d7707f12d242f7d0302047c435bb500673065023100c11ea79d211bd7fca96017a9b79b09e37d6c0c64187405ffe6786ef49a1805fd490218514c60fec25b12e8cf48fbe61802304b373a326759fdd0e2f38def27803c964adfc43ab292b07891f494efa69a1b1fbebabf9a8d6c1c9656575a3546ff9f470302047c435bb500663064023052d4276287f8c97acc3afb7855ed20e96117f6fe816b4b6ac3d69a9357bf0a161ac9d836bc2908f2f5d1410a7fd567fe023061b6abf617402f2d4a1f2a116aa62b21b8c1131c4abd05f9afd6272978d5952e61854c7616e94a1417b1e57678a1d2a40302047c435bb500683066023100e93458ac2ad8d2271d3f7a8d9871c5cacdb6a4fd5a4688d6b18fe0334980b2d77ba5ad88068c38b186a060640b750739023100f26b8c9a436e04211054afe90c96371cda45aa3997558468de7e5aa2573b854a1a7a7bc78a2a811ade84bb59fb16295f0302047c435bb500673065023100ca7cd6fdc1ca0e7de3621162595424a9b33b3cc77fca6fe76fe0a843d4cdac7bd1aa6f22574bbce52949940e9fe6904002302f5ed47595b927b3089808dabbf6a4f3d669bdfa797b4fba1f6d004bc4706091ad26794aaf4284e7fcf24017d5f01f610302047c435bb500673065023100b5d569305f5992a2c3e86b6948fb6da46f03c2d26b0cf57ab6f490911fb659fc8ea371390b89cd986f034cca26d9906402301e13260b107d040b5918476e4dd2ff93b72d4aacb7e002b7a753b11805d46eb8d3a8203e97f591439d433340a8f293d50302047c435bb50067306502306c1e349f3fc8d2d0a3644ed312dbdcad7b20dd38571b47ecc31c09f6dd0d43fe37652ed5acebab42755e68c103cdf6d3023100f56a50f97f223974e7718c1bf3078060c17d202e7135c3aa81862d4accb9ef658884484252e93c71e410b80a98151a0e0302047c435bb500673065023100c755143ed44716aa2b93283c052b9284556fbdf15c0c06edd4df535dc3b6c464fc441f133bb8f4df642bfe4caeafac44023046a6aeba66cad488cc60a2650e0d7cfe7a8d3488ea381a84f30fb3e1a2a246d90922520d7a504ea3c74000fad9b1f39f0302047c435bb50068306602310089d309b3038e5a0a0a9395660e02daf33abd19e3b6ef5447bcc9855ee8d262aa6bb3605f03d3db2425692e58dc2c69bd023100a8a82895dfa5cada3b06c47626782a923cdd5813a8a3bee7501e160ffc01f3b5cdab8356fca3c7b3f52c6168e1cd18e30302047c435bb500673065023100d3c78680f356aed77c89e3552a7661442f73e692aa32b2568ba39f0b1350c3138cd18e8cbf5068454b8e29f3910c0f6602301cb0e20dca89d39281016404159b876e069b44ffc43a59e0606567fa777ade7e955cfcaeb5126de741e372f1b830f55c0302047c435bb50067306502300a9f152058ccb9869414615a730580ceb2d99f3221b996fac64b36e628f98c0cd0f2cee956e012b43b325398c9b22cdb023100ab9869ae44e700c3ab4e28bda6df45b7f787efbb0ce7c71d7739d598ee2d4d01e6ca9a704358f5771606f98dd28329d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306b2bbe1af636abcbf9e29d4045a1a52f65dfa3768b400b126ad62f2f1dfe0677bdf0884853b27aea91094740eabcd381023023b0dc1fcab5a715ac7afc28a9d6176b6edb48d29de4bb2a92a3d38597a43a0c079af1be52bc9e491b4035538e4679260302047c435bb500683066023100a241fff553b425f87097c745e68fc450fb9ea5c41de2f8548b4a479ea30997c9159c235c47c982c8cfc6510b511322b6023100b79bd37aa94fa3694ff585b87bfff94e06ba16fc46e940f77d7f50d1618a8f937a29ee6f206077467d6bc3009892a36e0302047c435bb500673065023100c3ec3283b3ce40e0781152054d1fcff18571d6e596f0dc3c55d350b3812baee8374033f9bcc782cf8d48d188ec50bdfd02306f82720a31587c516908956f1b47d69603294d1e1a0fc1280da2585c3c99a24cf2a8dc017f737d7c2c8d02ee98990e580302047c435bb500673065023100c03f85c11e812943dd864bbb7072d7f67feb8187ff7e7ca95954f172f777fd270077e8a81dbe0a2f0d366ae64105e1330230101ce8dd64f16058685da4caf6ea139eddc874a0d867e2beca67e4ee8ed732868a505fd2c982c34483bd7177352979750302047c435bb500673065023055dd0851410a0807472d362c27a1d932df996ec660f65f1146a94827d0c56f9681def60018a00298e5ec2a98adbcfc80023100bc2025de63961bf8e8b05ec969f4c5f8c544cbfdb91af090a2eed41d1faddcd7bbccb6ab0a52efc99725921da01ab9d30302047c435bb500673065023100c171bc827b6119c7eda71112e180840b54b428eda6078e65f1ceb17be326b117b08bbbfde4f8de03c54ac140ab3f99e9023053dfd633ef94d58da6e0a020efff63a05160e551a7e7e78dada316c4be9680756cabaffa1f557b5e4b5f77ea7b29bb120302047c435bb50066306402303ed5880acf4cbdac520325bd4dcce24d09a959d43c2af17d6ee4307900fc5474012c846aeb62ed148661b1d100f652de02302272eb84fed76306d1eb8343c0e0aa7557fbe8f082193080ed079842d66b18b18a6afc2128a01de5b5c3b68aa4f34d7d0302047c435bb500683066023100ab1e56be182b4fa109e909b009965c6a26b15b5d76d30c0f3ad838b7b7e8ad69cdc87633ab10f91c628522058777fb6d023100acb8e1a5dd21239b417de856423d98e3269ba321832b82ab856f635c334f21430bbd3925cbc879f9021c42b9bf3c038b0302047c435bb500673065023100b46b191c9c1634f7bfedc3f2feddc9690b57e4f2fc4c2eb1027f05d340b9fa8f25bd266e861e0b1967f54fa129350a1c023032af6fdee686cecedaaf08a50d04df26a69db31d55491dd0a18677b20cbb99e3ca5b160283f3f3425594c65e1ac21cca0302047c435bb50066306402305a1a4df72fc4bc3af5ec08387ea4992b900ad542d7cd9d9df16978311d56ff7405bd36d6c3cfaeae18c13f420654990802303cd81e601e5a38de28a5b6a9b5b2b1c6341ace26434808c0a2c5494389bea3ef1fd929787801d97e12e2627897c807a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305f242c130cd44cacf527b863e2b1e828514f7abd13e89f0e0f3db02d9f9e7976dd759fced1da969964749fe923fc1b1f0231008f9cee17eeaf3c6bbed34e33cf407ea582bab6802e31de0b8e0e97b9cb19f20c544b8c543b3dd6de7b1c507f6d58f1680302047c435bb500683066023100b8682195598dbcd48c279d2df1e90bedbf2834b9009db461491543c5bfd8058a0a52c05cb4bb8394318af79fc9a9ed8302310092cf331719e548582e2fe9146b44d32520ef6379720a8feada90b3c92d328617aa811ac43347ecad771789dc3b9dbc220302047c435bb50067306502302c6c03815fc0881fc756d528300bf6f269d1046230cc1fdef28450482f37403f82e019f0d489a34130fc7a38ff641521023100a0525c4f04dc4646e2def9cf1292ceb69f3e2d8f8a81f4bccef61a88c0f50be0bb36f58584814acbb62757a8745b0ca20302047c435bb50066306402306cad98606d09877e114dd6b4103f2a2664bf47f4b279a7d456e784f2b6882a44e6f94e6979a75eebf82105204080461d0230521b649c2c2ca8b0c09ec9a1886f0501d7674a60ed1550af89acbe38ce5baa1ba860323041e0c6ab9424b1ba145ad8560302047c435bb500673065023100e1026a07c623db5e0d6df680888a516bfe3019c337775008b385ff4054a8014aa24b961c15984569f1aeabc4a25226b002302836c59e06df44c357635ae8657d9db88af7f53ff808fe834fbd33de11248cd0df08fd3b33b8d9d9584cd5dbf7eed41a0302047c435bb500683066023100d9d98ee5ea34c0528510e8d9609081f071282193cfff33bf8fab92d10c5bace02169ab65c943b87c71a01673c5e339e2023100a375d243c0d11fedc968e47c44069904ee8fa29b9c2db94790654d4c9480c196787a8793619cc1d8105d6c21b27650fb0302047c435bb500673065023100e3d2322bb811a7521f7163ca8a8e4281f1d6cf04db0441bdf7065e91a4a615395170f74307fc76476360088b40100c500230174f152f113642ccdaa081989f924335a6d55e788e23cbe934225e54d65af0837b50ad7d71ae850146521ae4459eedd60302047c435bb50066306402307ba77e06ea96cb9d5209a6e990a124e8e45787ef45077cabde3b5a07db878998419936a40aa314ba0a4c3956776c5689023055a8905aeb778bc1e07591c8da68da25a930f2168fe58a19637f90daebae36d47038b31c2d77d5d3efb1ad0bc5d382a10302047c435bb5006630640230381b17a9ada1de3c8d8964727f79c0a8de04debb554885e723dc28c2c47be8afb04408b313258aae92fc8657417b264d02300abdc013be79cfa2a566a550ddf083a17c08d40be8e9666a459754d4f642dcb1bf82fea36c9d8fc12451ae08982290f00302047c435bb500683066023100846838c99c4360351adc27de601e8aa3279d10e18d56eb7b1b1a1a8e45811fec7f34ded013792565aabba4498f25969d023100bbea15a46713c28d1ef69663d5de7e8862b78c673b4748829a2d5b74a4495cb5e0cadac88e2aca431f97a87f2ed31db00302047c435bb500683066023100d928f0f3bc69467663742ca94ee162620c40188c2e46e92a67072b2951bb30e39c8044cca635db938e0f28c381b38f96023100e845ac8d3b921c5e246dc9933e0bd49ac2d3de6fe96e6288350c2310d4c2aea438156181f6f7fef63bcd010e161d15fd0302047c435bb500683066023100d88861c5cb5558430ffd67898afc9b3cd025abb783abd7ec035da24c224219f928233883d11de62d1d1bdb78d05634c8023100a867f72fa94586581d522c4a8d40e16df8b33dea19b1f6671bb5075f50ab756163370b758629d7e076141ee52a60e3060302047c435bb50065306302300a41d070043bcbaba19b5c63347ddeed4f34c219b3384fc1edce317dcaecf5e67e988ed14759d4f7258afd533877de24022f4d1b5b982d50e514d0a32eeb58ae6f72642dba0364a9f0b3cb88b55c865d32639b4032981136d4a445ed7508a2a3bb0302047c435bb500673065023100b14448189fdbf0bcc9c5405d2d276eb03788269a0dfb78ceb6e9e9b3d61ad91c389cd92747c02a107f12d4c5ab6754e90230623ee47d1627270d4ee84ca63b896d9b0d63ec5cacb6fb7f833bae7616ba9f20fb8efb3624a53106daa19643a191ded20302047c435bb500663064023009141602bf6ee664b6b90586ce6dad34f37858e8de3c3c0b572929d4d8d024c4be0d6a85ebec854399b022da45814313023024c41d6003e6a5bf2a644e7ec31d1df28ca2888689bfc4afa2986cfc6f5762b58de9d040d1e48397c532257d41fc1a750302047c435bb50067306502301e12f53e88b3444d6823ae51cf40bae9a3ea6e9cf3cd997e9748c07efc33354ec9857fb10d033b1938ad25a5c18bedf602310084129f42be1298d280abd4bc35412b4e4c343a34cff158a59eb95b1a32bb3922723a85f434e82a534bbd630a588dcd4a0302047c435bb50066306402301e196dd60a10404259530b92451c05bacb0e9af6a823617748512cf22cb168ed1730a3b1ee0d58b95fa46d6584d466cd023069bbab16983df4dd194c62ac42741e827a69138392aa226b097c5159c5f157ba84ddcbb88c195901250851ef331345020302047c435bb500663064023046cc8549530ab3aafa01581516e2d536383019d36bd722cfe941a8953dbf8b5dfce1d58c3de93f796a6c280a3cf5be6102303c7f6d238f0fa9ee4f4aac876e1738c68d6abce2951f778e114c24112f33e2e0caea2957036deb5781676dad4168d8e30302047c435bb50067306502307b462d33ce9ddcae6d828cb61ea3a6e5613dc02a926c08072447a5d208e4b446bc3b60741801da7b9f020a4015b9f05e023100a6c2aab608c25c310653f473635feff825bd614249d1990630ce568aa3322588fffffe7741471e5500e02d04f8041edd0302047c435bb500673065023070a76976c9824d3b2a19b7cb9b0a30dd8985c517d7f9ef17fc893748e8a0b4afedd97f8d1989a130b620867a9be8fcea023100cba19fb014c0da086f6480db28c206f54922e8aa299a7421679f8cf5fe2d9346f83a147dbcae368d0df1b3e05a98b97c0302047c435bb500683066023100f3a2d92edccfdecfd8316d26fb41fc76d186eafa25942a70ec4c82080920d112d34e188c8bcac58ddf783f22bc4cb5d3023100a18cb6fb5d7d68684b583c7af18b87298177c14856815d3e426643f65c69a8ff039e1525e544c50f783ec9ba349eeb710302047c435bb500683066023100f0e75c7fce31f3ecc9614a3d06c33aa01c0db59384a21c70d502174f28d32fe1ad041334a6c18a8354d74c546000fa63023100a96f6c1382adcf11ee68b9687662fe3b3d62acfac74ef699aa849e9084927a41d109d2f5892ac50dc2ba5cace2c4a6810302047c435bb50066306402301ae6c3a7a9ce3fa44e4e696e47df2f6787d8e83946abe7363cb3340d21696c87e1da47c76df7b043166a0280a23ea5bd023074343f9427a8ccc136384b9b364704d69a8cce2d61594cdf4b7c8cc216bb0149fc4bbb66ccc2d074e262c10aac7942370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310093d3275b8a5b286703eee1507f87beaa1111f452f9c8c2aa3dedf903fe04cc513fc749715871d262d682248495bb7be90231009e3bd6ad77e9b42499ceb9cddcd69eb3fbedb6c8dda7d14119d86d26e9d6e7f84e32f7ae7f1e02c991566a9c733b68270302047c435bb5006830660231008e9fbf632939031f4e18c40b73e2d3b8f689487fc94614e476fcaeb8b8f7409175b85ea6ebd6ab678f45f07ea70338db023100fdfe76260011c4ea0b2c4c87beead176ebf5be89c75a8d3a2f46b5d7af648a3b08b611c823f2bcbd0986088bad6d50c80302047c435bb500683066023100eea2b20193ad208fea45cd648c2c87dd84cef99b07cd8121901ee2354b55b6990b1e5e3d73bb3eaf0972e15622aef8ce0231009b44fd1347f35b06656331393e416ce487c574acd05da738ab39001c92ae52295fb00bcf1d55bff3a9d473befc03ba800302047c435bb500683066023100d25adcaec58a3c1700b93ee0447b17b32bc3b82d19b56c71abbb59f4ae33c11bd06fb2d8447dd69a20db47050e1293b4023100ffd1bbf51658e3587f61bb371d9944eb0fe8ffc7415dd3c130725428d828c3f582db3768559a31795df59b0c843e9d740302047c435bb500663064023009686e699236b2597d2763b3238bd7240443c12ea00a4f58648d72805f9f441160348bab59d867bdc3e514e3ae03e12c0230402b81526c404ff53db197fdf19cef54bc18fc8c6abe84e6bf09d8c447a74b039327c109853867cfddff8c741eaea03b0302047c435bb500673065023100c69519024279ebf8ac39294615798eba18c0a7628a76c42ddfdaa20045f51d4a43b6c22cdba475597107996943a0967802302a9bbb70a6a5e1efe500eaad9d7be1ce67ed61f8869d731a5f7fa9c18169319e708b1ca42b89a63acca7959f8eb2960c0302047c435bb500683066023100ea5e4a942e5a890194ff7d7712e620448e515e463f9cc71280d0db565727c55e9e7e6d96f999646c8df0e7698cf4053c023100b18eabce239758af60d0b1132b826b459bf1ac8daf92475ce9f650ff727863cbd86b1e8fe3a1f9399fafb55bf70694870302047c435bb500683066023100ff3fffcfc5198445157ead29fd5f49e4731d5c6ed1ec420bf2c3cf383093234330634311b6d70004886d4a6c9d14338b023100f1fc2baafd468a24523d7601c4532e09e16ebedbb18a1de646b0bd06d17830f2746047b1022e673fba34a72ab820884c0302047c435bb500683066023100ee2c51960f5b1ce9e5f507b94cef3fd69147f56cd4a96ccda5c4ec5096e27e1d44ec8cecdbb1a9d8fedccc0f87e156c20231009cc748b6c927af8bee2212c1bf4c448a10193616394816e6a7e8342367d80be8e064941d3bce3a7b08d79cdeff685cf90302047c435bb500673065023078565b4b478f3c214783e44d87d4c20e12708db0b2079800aaf55be1725438cca74a40e1afd4478e195629a97792613f023100ae68f96cc0d88bc20b25a114d110a5ec1784c68d30a5d91439f520a00b693ee7d5cef243dc48d3eaeefce72b8bf0f4050302047c435bb500683066023100cc71f661d928e569e35dcdd6a3ccf483f6c63ed0d417641719148dd9ff1768840684cd0b1bbdc3c9f932214a4e02a0d4023100ea4dd8d0c771e9f24e4bb44a15c1fac39f25741f6555b53601ddd1ae3dc292ae63619b9ac6ebcbf3607f7816e8a037ee0302047c435bb500673065023100b89abfb4e5b4e6903b6678e91556867c25274bc8f97a8cc24f7d4a4c8a22ce8dc2de6e382428b6a0f4d80debe755fc960230714489d1dc0bd04a82e610640e2e951fa91645ae7eca2d1bbc891993f03d7f2e6807466260b958727580cacb311216830302047c435bb500683066023100bee4a7e7e7430b67a617124ec2438ba0564dde4c4d4cccc37c69ad8ecf00b1f85f297cedadf9d90a46693ff62be91625023100c7821daca56c61b7b44c5a4203356bb13ae86b179340f337874de4c306275c2f81489deb4321efb6099dbad8c51d70e40302047c435bb500673065023100f07089d40f0b0e28aceeeb2b174fad9b9c5c559ee616e59987aafe2e6a38b2b403a8f195438fca313f211c64e4803333023006f85468b7088420548c3db0873d2c1d4bd60d31c3037be788269addd3da8e6ba8c147718d15de65be9beb1649db4ddd0302047c435bb50067306502310088f98628d70da24dfa1e92f7a412cecac0f5e6cdb6061b19a634881138361d08dde2d83858a365534debeea77f5249a002301d3db4a88c50e0cc74e6092e62797a00eb44063867eb9537044c893ba82bf829baa141cc74cf683780fffe82c9aac51b0302047c435bb5006730650231008c294e32ef19219c00b7794098c8a4d0282ed54bce97e32e6b4ea4d0c1e0363ca5f1bc5d05481915823f74ff7b4a3302023030a62a3980583d51367ef73edb0b7473c317c0375578c46fbd177574ab01425a162ff23310f794d43c7b039193e6b2950302047c435bb500683066023100ea9a64f6534bfdfe88823702d6208a3a4684c678455a91f50d8820d61585772a3df9564ab3b0727a4bb68074daaa18e5023100e9fad4387515cdd24237b4f6e78693166844272fb26a6081f757679cf7cb7e2ef8f655a0f7cde1c9c3c804bce41fa0380302047c435bb500683066023100fd524e9979f7f84f0974bd08bc15cf4bfa47182d1fb4b3252d9de0e12c66d1c16d91ca64724fdf67777023cc17f724e502310086ba63274c7d91364350059f60831fb873c88184ff5cc4c89106c92faa9d979eb2b1b43ab7831cea07aa58b772645e230302047c435bb5006730650230765b487281c831d1598d9a44e3c0ccfcc9aa7e22749082a3d95381fdcdda4300cb1d428ad12090bfd20395906f0a0cb8023100c9fd742df905fca2c20e7fb170e435fd6545507de34e14902e675c59b67595352d3a8a8117dc944fee48f79128b08a830302047c435bb500673065023100c15a04ba656c3920952471ac6a6eb2f487fc2a2a0c87105595dd975da7fb4150a2751289fc69f25fb7ed93b13986ad9302306793e01f11e0a967cc37a3a92e58f8d4b0093c03b1211fe135ee460b75f784daf87567512cf05147214e19bd0633a88a0302047c435bb500673065023100acce40689249a396ccf94b0e46aa968790da0fb24d866a927ebbe3d5cfe3b94548af03cea315ad396d0de8b37b6c813d02302b3394e84a42b1630d9b5822e53d41836a4a1446e8203de149e095050f4a1fc75634d969ec782f4f0707fa8629bcf4150302047c435bb50066306402306e79ea1da77ee52999d6d55fdf0e41cbc6613a58343e82e0135b98cc4e8e62dad15f045f1fd931e66e5df5965fac914302300543ba492bb171ca85fc71d1147b346607871632e82bf93b8cf61e62a2c9defddb1762e88e68c799eeaf216cf6f7a9410302047c435bb500683066023100e0d4c80a3b013723d5617936afaea4ae6c3b64f88cdf02bda606c285a776181724d00eed2584be4c8803217ccb204cbf023100f904d8353774b07af87ae78ce1fbe6644f1782699b12c949dd219c73d3e4d385f068d66bf64d3795365f061dcebbb36d0302047c435bb500673065023100b47d058913dfbd4beb85fa7efd1872b81eb1e8b9ff221fdf5dcc10c66fc14e1f1d987d91cff1b48ec1283836092237b402304f7a1f1fe17977b2ac05c48aaa694c4bff0e487af90d73aea46ec764818c2a4bb05c080d8d249cdbb64e9ec3f59215040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230299e621034070f507e5c9b6895c949ff598e72dbf92441808330148a4a8717b50fb06913b5684f4fe3cb83efdd13e74c023100ef27eb1baa45ebb3889ed1175fe485d9bf5ed993da708293a14ec1cd690b4f7f753a159005a6836ecbe04fcf0963d1350302047c435bb50067306502301c3c4b62ba647d3c3df1faa2fda48bd7e39ec56433199b9b076b5445dc0f9b015edd885db286330308203312b113dbcf023100b0afd1bc398331d23d4cb58006e20f7d130b462b85b9ae584ff583f671582cd581fc0821bc323f03f775fcdaee8a10f40302047c435bb500673065023100b273b5087476605bb43268036d3ab9e89769bb88ef4da0e21c950fd99dcd4fba3ac28de91541a7369b223b83f14cce9c02302f265bb1fa5e5b138a07de27b85b3c19acd12b86e02257097d1afa9283abf4ea589ad2ee3197b77ea73461caf85ade7e0302047c435bb50068306602310090a4cb8ee0addea5511f93e727195f42fb7ed2c5f1c507f790288c151516e815fdb30ea3f6af0e70cc3e445ea0b0c0d5023100fe3f55e64e8d685de2c7696a3409566de2767f7a34f949101d2f965cc3c6799f948a488e8d3ee039c838527bf152a89c0302047c435bb50066306402303f2fd3599e9e1def482e7dd82194c14559490eaa07d573e9d3a24e95c01c43d50bddd3490658a58503a8c871a2c9319b02307fc53be2ff443be98d829d447758c3d0e68ce446889326a6f0e52a880c62e2b93a2dfe0db1956e47dce1c4b462aa30c80302047c435bb50067306502302da8eb95fe5e7657a48aa095d884b0daeda7a1e0ae3713e854a0b1f34d26546b100d3b51a5d6f7a3f82cfd1a8ff5c9cd023100f6d4a2c71fb18da42d51ae642c8bcdae589dda16e3ad22be3856a8c1566b1f68b692d5d15c4051189c56c42d0eb5b6df0302047c435bb500683066023100c6de89eed7db736bc7a2c1e77e9b28b77b884d9a8135c1f0b38da0a46a2854e4179a6833f8bb4ba7009422d79c6435dd0231009fb2a3828816fa88f98143993c6a548e8900578c95e8ce76ff4da0e27a23f4d043819bf357dc9f8c730d57d1a65d813a0302047c435bb500683066023100e29268bfbc3aa2ce94801c492779c367ea77f295f8b802c1bb15538cbd022f5d90a3cdd44dcb91c7f0758a3670d27ae4023100db912702487eb6128a67c0ec45c3e25538732adf49b2a6994c7b34c11b5856242cc653a1e051bb1a36090111842445190302047c435bb500683066023100a6f123b60e2154106d0ee321d426518cbc8795cfc0af8959ce77ebda00cd78640925116997558503aae936e291747472023100f3eeb377e6552327c22c349764f7a173371c0639da1b7abe54d592825fda7333a4fd2423e0b528701901148ea70a5c7d0302047c435bb5006730650230025c2f60577665d28edca2fa320ec1105cdf6834cffdb7e818d8a42360bc5b1a4e45660eac959c9e958ba173b6c84a02023100ee17b726d2a546b54566698ccbe63b5b532ee0d574262848d771e1e5392cc9ea0545286decab6f16ff03f7249577f6890302047c435bb500673065023100daaba9b2963af057354d1c70f5160f6aeb3cd8da60c54597218e4a37c60f01acefa4a8b9c66014b78f855f578cea4051023046eb27b5bda25ee46c7c5f326ec09ddf3d1261f0e7109e8e57f6e81152847278d0d8429ae7ce16424a5be2a9722a9f2b0302047c435bb5006630640230773787d34cbc01ebc6000344f0bbe5f88460ca3c3c5f71f2e410132b85b23834f644e8a84014ac66da7be3b2c60272b80230033d9daff247401a726fdb27802fee389523cf0e674242e61fda32bd390bb5caa346e6b07e7a7390daab7ad461ad0eb80302047c435bb500673065023100de5c770f8434dba31093ba8b58db141455a41d3e3b51d5baf0bc97e4d0ffa6d54e9e898706640d141a842db6f0108ac302300fd4bda688dac50cbeddaa5d6240892e5b1b3820375c71e6248c14db615d7988cc56612267538932f25392aafe7523310302047c435bb5006630640230362d1c5cb815d6dba971afc2eb564120661551ba68ea68e7a541c41f2caa5d44dc47af685f62c7cb69080c1bc5d67d9e02304e182f926ee45cb5a504337a0f95fc11814efec7353c7cebc905104e63c1cc44c71656ae19a5b4d85f5e336df91a067a0302047c435bb500673065023056ddb09c2bf1f0fa3941650e7fabca67ee152491c34ddc837b4ea5b56c11bf761cb74f798f000fa7527a681365efd40a023100911bb7bbc31ca9f43cb5b42e7ba8b3077883ec506ea1c628e407cd17f28c7db71ef40b9b6ad6fd1bc8a656b02ac196ce0302047c435bb5006730650230797044f302aadff5ff48cf98b17cb9cfc79251687c2955d7e3d59d8dccb21e75eeb76122b103a69c5089d97cc3c8d338023100b925da60b9a26e6e794966e39c0257acbb3d41a7952565dc3defd2213d464f0a1e8309ff6cfdef99885cc321d47ff5350302047c435bb500673065023100e31bb39ab70d84eaaa042456711494205b79cf434dde2b6a12f19b7383294f37067380b27a3e9a262cabd0b13dfa05cd02305af038f40a1ceb3dcece62602f410c6989d1633073d2268d2b18eb3ea4010d84138835497a5f47918c7daf4222009a890302047c435bb50067306502304b1c162f454360aca6b9e20bb8126184083afb28015c2ce17a6fbb4367aac20f2783185a4ea1f2042e019b2d1d9a1811023100d02571a18836a7f711e49db7683f04d5839a7220dc06f858d49557ff98d14df60a4f1eb05d77a272f805a295a4f3c5ad0302047c435bb500663064023042d5b610b597aa9f1491339c8afb0556c98373454117bcc2f994c741df6c56af288df00dfc68d69ac1e6cfd66729ff02023002eed9dd5e9bb2c01a6d025eb9cef90b42b6b83ab02a62de3969b47a2f3a0c31ea7dc53b02dac078bbc06e56acf024370302047c435bb500673065023100f2ee46c2fbccac6c29b90b9a838ad68856fc2fec5a3c8ac5eb9bf744f9f94343032a061bc8402b83f5c888d0a559beb002300f5ade0767ebf41875de336ac4ac5be0aab4f96962f52c27a93ae31cdb6dffcecabdfbb7ec1c4128df1add0d850f5b900302047c435bb500663064023025028210bb63d81c8b17170a6de3a9f870d40c6f1e862e2388e5267390b61378d45d9832aa5dbd7d47cc4bb7d4fd1c150230096fe23694e32f06ef92fbfdc6b41a8702b0dd1ef5c9cccef571b666a5431878c1818cc4d25ab8a64eccc1456beba4a20302047c435bb50067306502303aaba378276f98eca0d954d7adbb88bfe313bd99569fdfa1b57329ccc2a5e445abd0fac3e63de640ebc3ede696f47abd023100c62ace25210d7c78f2788dcfbfd4856efd86a97c3684e6e6458553419661f6393c91d2fdfe24072ab23f6e8ec07ae2d40302047c435bb50066306402301c058c071ad1f28aaf033dac2c8713740e36f00788e6afd3c07d0531e59f01b913a9c0cc32507a55065b423213074cee0230768863681995c175797953c0a9d6e293abc278e8745b7933a42fc0db6896525c671857a48db48714f5b8dd0a73813eea0302047c435bb500683066023100d987ecfe1b2ba4f6f67c14e2642adb09c30f8003204b927d8cb0976a9ecb45199e54c80a07e29dbbc7fd19c6b7ac2b2b023100bd8d04ab0542f3e85b719749d4c1b55b59a37bcaff0d501889b5ff0d7c1f617991320ab253175d5ac987deb3501e4b9f0302047c435bb500673065023100a65b470ed22da662b49a1a495a1904cd2feb63628e205914f889b17db6f5dc350f42c508fd75f1cef9745767d7e5a6400230177960a5417071e86e68b95ad70ca2da1cbee1ea4c51b994a8ef48e24b7e42d462d24abf0901a2f03a38150f160e8dae0302047c435bb500683066023100f4969686efd4f6da14604c1451eaf5de507f4349cc249ab86932238fcaa8919863b88e214f4daeb622cf67ded27a9e15023100b408ab70eafb224cac590df38e314866c34318b6f3111ced33eebeaf4ef2eb9b0fc95834acef366b0c88f1bb16d8fb700302047c435bb500683066023100a68b98789d2e1e19b219569122270055d4f736638b793301ffa15315ac93e98333923eb5e540f03797d9fff52185bf2d023100b6277a6df34bb0c1e0c9f9aaa464fe42ab0340d64e41ad8d27a493e84850434e782608b76626c9f82ef8fbc8577baa510302047c435bb500673065023064baa3b5646c9a9b5f8a4e6f540c8e8049cef9afda988f9af8765edabc8c34a805f04499ef3ef435f7c9d5f59d4e9fa1023100f660526457eddaa8b53c990b5dbf44819f9195ba4322339b45b2f9b9ac48f69fe5eb42ad1c963ba8b6b3e29f59def9f40302047c435bb5006730650230473aa5545246eb6512ab98e71e6d24ad4a91106a4cd29a10ea962281507a10ffbeb524133f39e42e45285e07559fdc22023100f3110b5a57e18ea319204bcb05f258d7169c7ee66b119d49b72ca8e0065446e319ddc3ab87f88d470fd773d090e4cd7c0302047c435bb500673065023100e18032af1662f1da439fc41ebc1ae738651a3fe12290511ee383d83d3f5657ab309a753553a968cb7c26bce7d81b71a6023053c4fc9d87eaddd778aeca6927729b85ffe7094e0e25882cabdee8051583804a39ab8bd853d46b9cb7a793c913ed21910302047c435bb500673065023058a9c2615df8748fe9f097a9ecb7129246999881841cbf88e16c6534bf450889ecc417ceaa52945295574058d5b2066c023100e373db94dc95d142ae3d040067cf0c5fc252da9354e8b503c2162f7265cebfe995b4aa3c4bbc3d483e861b54a443faef0302047c435bb50068306602310083d6dfa894c45fda01dabb018e8023da747234a4f0e0bd0b07687d226c5bc8d54d17a682161fe60822e11321bd6de7dc0231009b92d4500e3f1862f8e309ae8d62eefd746b174a0f9324a4fb427c013b47daa7bb61e3dda206201b2c00dc9d28419fd80302047c435bb50067306502301952a04f177c046f2fb6dbae69846093a8d3f9459ce6f7039b545d086778ed9ca4683ca0e8d759ea76d43629232a912a023100da8787fac733ad41e8c4dcea96e28cdb05928626f8f7a0c3bad2195dab64bf2f7f676747b615262896fe5d64103cc2440302047c435bb5006730650231009c8ddcc6e1191ec13249c89436864d582e0a8ff27f124040021a0795653a32096775593f7000ce5bd3b49ebb5b37a5e70230172f62f30f35546272209459ded09d64f90bc547a4752a7244a1534b1d808111da05d2238e58f333d110ff08d84542170302047c435bb50067306502303747c176d7e63e0b8d0e42b591ae8f9c14f4755f882cad7887074400fe95ba973767fea84c6277d875fe168b19918d6e023100e6e465e2bdb699c6ab2280015706d4f956f2653a81a750b4c0b6e65dcdaafd1597d932c52bf39e9e15e39ffdcefa86a40302047c435bb500663064023079aa6d4bb69f9031ccaad1adf17ab737cc69de291ab4d56aa91cdc61944076db88ba57087463bd5a504e0952b8a9f744023072b5448e6c71d0199c988bd4889500e6ab08803385f44ade85610ce2747e5f7fd5eb6639d8228838ef557dcc7c4092850302047c435bb5006730650230643e9762c098e7c263ad039360f1d3c4ecc5e1a7f6ca7635f74e179e4e11a6c12370aefbfec04234cba3b46640afda39023100b3a58ff6508d05f3e0520ea9946a5040d277a3ff885ab8658e50be648574e3031f7b516e8017369c2e98f235cea3b9220302047c435bb500673065023063a4764d5e8e50ec58f50bba124f38f11027da3ac7db2e2c9db0b0b5ce579aae0e23dc91fe5b2ccd0434f04323b2a225023100ff434bc3c8fc3a2fdfffa085921d06d33a8481f137cb5133240d90c56c7aec050f15d720ea2244467a9049ab64927b930302047c435bb500673065023100a58f177140d1628a6e067ff4112168b80fb40f27667afbb0070de06137cb0da4a1d30ab2e62e428ae4550ee8e81ef8f20230584c39b81eee6373997e7e54da3ab2b8dad6fdb84d98020c56bff407fc1a08667a1720f0060ac40ab898d867aa7903170302047c435bb50066306402300e1bbb0eed5488791789c4fa3d0a23352e33bd979029df4465fba5d0e77793af4000cf7a92bf0ff8fb22ba695d59df3e02304c4e69641c9fde4a65a813acfe5355bb524159e619305376dec0197bfca1149907a64a6c5088336a9a7fdc930ea7d1890302047c435bb500673065023100cbb400cf5021423387ea9d9aee9854aecd902ab6675807afed6b21e510b042bd4043a78ca53d9b5608e3686cbe0ffebe0230758e6d28983da86bcd962c9f12b5addaa9b4260b9f3e254260e9f831ac15a1da7b881b9523716fb7d2120a80b6a8b7170302047c435bb5006830660231009d10da2b59445c5e424ad094b071d994285a8e722b5e6ab776d996ba249c10a1c465a17d6d57d8499edee44873f989b3023100f11c6eafaeff505ec45ac1b36e2e9bd3eff84bc5e62af04ce22865ee659d63e785b54014b372e34efcaa432d03c4b8150302047c435bb500663064023053339e1a2e268e54b5a679beace1bf08f33db499cbc81db4f361275f02bf067634d238d9d139ee9da08446b5436dee0002306fb3768d4e994dbe328f345e98d280f8693c868f4e650d13ee3b87d49d262ebe57dbe7f4c5d1f486865e0f5f21a32e200302047c435bb50068306602310089462c98d5e79a884bce2ebfe299318d93fe057902b2235c26c1c1e599ee47628ba46df38d42b430d7d72532eacad64002310090f5c88508ba9238a51058b3103f6074b8f02817fdbb042d059d1736d516cfec4b22b16e5b3db86ee86a0eec2de84ddf0302047c435bb50066306402304657aeb2e01ccb7f4c7ce75d48d6f79b2cacdb0c74452ee2900d7727b9f9afec7d7be60f64ce6feb39ff74b390c2650202301fa4fe28dc2ca5040773def1a4a1f07eb6e33a4facf5ef6d1c3dac61a71c7f218c66f1b99ea3567504934076fe211a410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009c2705e38ab06051dd74d2517e0def1ae3a9729a033883f1d10149fe0c84d8ef12c88da8a1ed20f4db272f3c72d47e86023100a557fa107103b8975bb290dc1c5b91f3e16ad629df3b1f1426a8e2cc152d5b7f6b64ee634b6516ac04f2bc18036f0d4d0302047c435bb5006630640230449230f17c66ded0ba98ceee48128fa7c86bc8caccf26c838a1fe98f0868219e0cc674e7685b7e1e8973cd49cf77270802300e4871740e9c1a9c146328b01d79177da94730496928a88175021d84ce5f755c1334f6cc0aecd06abe6020ebf52628660302047c435bb50066306402305ea1eb85743eef1c463184cc8000a19c3f00f7386d82f884a24e9582dfece0886dcb2c292e8a918e3545eed2ee6d31aa02301018d378233754e174318a2f60f737fa3d1089f79b24dcced7fd2efdd0ef272bcfde2032df54ce36ed357353882583c20302047c435bb50066306402307099f40a3790a7a0230ea6dd26f95e172152004218ed275fb5641c8a4511493a752e77c635ec55c96fbe66541c3209990230760fb7aca5c39ea6fae88922ea430b55691bd8c9f4519e65a8a815d6648285d8956cb6db2be8de14fee061c86a6e16400302047c435bb500673065023067aa2bc2bf35c3551b7d63de603ef9da5eecbaefbb65156590299ab546c0402ad6841e9ac1c95afe07b9a4e0487e5297023100b73c5079d5e701df50bb0eca53420e2fd2088da3a91dff3faeb878ce7bdb912898f059d81fc0fe8ea3ada72ac742d78b0302047c435bb500673065023100f691aff3920ba843d662d9d50738dde1d67b89eb2b4e0dcfccb988fc26a3553eaccecc65640ee2bce78a4546768900ff02304adf98925f8ee9bdb4cf7ef74d0a0607c28f0c840bfa296e480bd9871eb3d522840eaff2215faf98a06a5c8739c637520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303cdf9e575ce528b8f10ae737aa8e833e00eaffa171456cdf85790d384f4d39c112d3bf4b65bca3f5f9d0bc8ed27a8a7c023100c33359dc830c0cc4e861b511d1e8a0ab6c7a36bdbb74e5d1c8e2f4f13595d99702d4ddc4d26d299cf00ebfbd3661e3df0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100954add8a31bcc75c72a70a98fd7e5afbfff8face12dc6e349beefca4fa7c2e274153ee05102a1b0177cc5d0a0319bdc2023100c682ba66d2c010b8b5316f7a0827380e0c8269a976f7c26c9b009f9893070dcb502e68dcdb36eb0db1d0ea7ecb758af40302047c435bb500683066023100a23d3de82c00140c06918cffb137d803160a77fbc9d19c6484b65454fd3beb1283edfb36551b918f040fbead9fa8878e023100e1cded55c63dba1653a5d573bdabc4a6945baac3362335753b1d999e803f34012543cc772695320197ed2ea79d8567b20302047c435bb5006830660231008d24b778db6c06857f1b095a6468775cc9dbe9494adf79a43648158d1de6cdbb33692ab8ba5a06265cfa418398967f5002310084a214af309d92b68c710586a8e5c48200a6f2ece635776a765900aa82168be3c62da17aa72ebc62c64bd480dabdc8440302047c435bb50067306502301f7664a9ecd59faaeb79a6f6fff3f701c4e2071494a2faac9b78d3c5930be13d33fec038afb30ac7203ab28bf7407fcd023100c26aa19570e680e013832ae8c79dc900b913431c8acca65bf102ad552062ff59c4b872ec956f35dc321d775595b9e12a0302047c435bb500683066023100e20692bb69fedc882a84ba34444c9a84cf7844ea956ca1a5785be401e353d7f365e396be090013a31eab2b87e1badc76023100ed9426d087e0636f650906c9eba0d5577e169e65c62fbc7f0029cb1dff4ede706952d33736ba8f8727fe6d0e5d5fb3150302047c435bb500683066023100aea4153eea131d26e439afa8407b371ca49f5758ebbb0c63e3e85edb2a827a5040c640fa5ecb18cf15f4b0f1c3f4f1fa023100dfea85409ee8763936f8c4d8a937c4de912ced3df56354c630a184f99490c335616d7e32d5fda9cb4db0aa0955d16c710302047c435bb5006730650231009e71eb7a9d501349e8c221f47f70ad5b205868003757948705f11f6200fcfdafb006f54090e1c74f10ee2fd82c51e565023006df61637ed49ca20037ef30ad834dfc9cc2c7132a2f051c3e40401ad2bc8e0e96a457bad353b76eb6727f77b093e87a0302047c435bb5006630640230394d12a5ec7c095b05ad3087caadae0245ef4f0843094a0d74dac68d897b1f013e3720fb6905bf6533454c3f6590f29a023035961f8b4909b6d2768af463f1e38ea6d01025e56843c4376fcf8c05e18161afb9780669fd3704bd0b92cdce1854b98b0302047c435bb50067306502303af1be17e2ec55c173c19c6d3889af29c69dbe82a108d1057ffb9404d0429f190a68327f2e064c76e51a7734c7912e22023100db62725807bb67a1a20e44ff3b75e127bf531fac9eaf433fab490b6a839d1b9d18a298c785a1416a3911c7cfd150148d0302047c435bb50066306402307def0c6edae3bb33a6541ffea9fb4f9d8bb1e5ddafa324e323b871fa6d69b4079ce68ad66c69d4e5806545334678c196023019d6339f395d33d040677601d43fcadad0d0443a49979931b64362e0def60174e3b69694e0e5e447a39f53ddb4f373540302047c435bb50066306402302b47b2e8dc197b5b80af0792ec898a984a446e6e67c1f3698c4d77c48123ec9d51ad1de1f3e8d70b84fcf8aa55209154023022ec1cbfe900ba6d01e4df7b90e16e0aa50f01ee882e21cbe9e2f7b6614790cf66d49d4579167361f670aa399d980f730302047c435bb500663064023010de956f75caa659fdddc28670fefe16b0b43edf855f7079ca9d1cf12e144184749986916ee048f10d7e3155527cacfc02307b40d9babefa856f2580e20d287c1fb9e1de1615462f8f7ba08ee074feebdf103186205bbd4ceda3aad60cc6a5060f3f0302047c435bb50067306502305308101aaca038ec0503a6a9b4ee050049bec2a6f4cfa4eef5c38eb4a3794a52f94c640a509034e4e41ef5b706634771023100cda5fe88459e7af0332921e0ec684b091199eb16ae54cc363f0c910223a04795b6bb7ddf65751c895293425e4d3b00df0302047c435bb500683066023100fc6cbe35d0e565e2982e077aac316fe3e339f6499d749464dc174d565370cfea280e091adb3b5f7a25cc183195fc17b8023100a2312bc1762c68d3c9ba33cfb73982876498b08c31f54f2de0cf8cbbea26c818f9d4daafd0dc993a89c46d3f1e1bee240302047c435bb5006630640230350edb38f8a836b4cbf646cd6a9c1e93c925876c8aa0c0243d1d94327f0ea881a9918c62b291704da70a67883a91d2ad02305ed2997f7c64e1517fb57a6c6e48a4bf73390a653260b50553f757900fbbfd8eb5074c890d626daa4fe7f2372965c0f00302047c435bb50067306502305804ac77955313a4f9d98f2de4e94ebcfec4073709e5b42fa10166db24c3c1c7713b09220f5dab5dc7e1c0edc87724ca023100d02de2baa94af8f6e4e98cd59f317814bf20403ff2d4ae6b44636c6817e09500466f8bb014c68a756cec0df706957fa80302047c435bb50067306502310098dec60180223cba0475e7ee6f857d2021fff85ba3d28e806bf9ad5f5506a23c21e441feadfb50262871c1e5c4549d8802300a6ed0fffffc843bb6bf19a4487b5e4f33b237a0e92e662063bbb1f0805b25e67ff5f373199d4ecbc5b0a7a2f270db190302047c435bb5006730650230346fe342aab03d15d065ffb3e206db09ba2b7d3dd70231001ef103567a0e7269e8328fd081654752f407fb8d36b4d691023100c87dbe7fed6b37510a053a3cffad711330ac23ae823495666ea4909ba7b9557ca0fb543917b53e7ad6da8c3c081219430302047c435bb500683066023100f9bca86eae832736c66792f6c0a47fcb33812470f1a292850c0cd82a8624c90070d022481f9c0a0795bd9aa0f1f37558023100a5f9e97f878a2e6574fd66275f350af613ea466099c82cbec1e3f6cd30b0deafbee33dedb5fd81bf6eddf263e0a434d10302047c435bb500673065023071fd78fb932d48ddd478d980db5f78e3e3e6d26cf0dce9e82c501fa7655516c01f7201c8a66d49e2584129ee89d046af023100bd2da6fc64c9890ffc859bcb7953bcaf1a8cdb56cec5015c53870959084f977d7b3ec1d6abe35fc82fef27e5daa3d6bb0302047c435bb50066306402303697cf0e32535edd3d869c3df7f68f4d166ebd9ca6e4d4daef4bb7a2caca616a75ce08c9a60f80b584795a2a0ef6669b0230355502a3b098495d20598354306d8ebef5e84a5c88ccc156cc2da11b2e2ab06e474ade05c3cd06c98beb24846706aff50302047c435bb500683066023100b27731935eae65a4cde7c42dd0bb872df5806de2e40131181f2d81ffd8e399a8f189dfca49defd09293597204fa9b38e02310090490305d3d94076668140b0256ffc904aa5a604abbe3e3e55838669a44df61c03be0b01d121bab7e21ce2b1ed95b57a0302047c435bb50066306402305939b4da6fea6f5b154cea843273c5db0013172e45d9659717d27dc2cd8239f0803ab451b3ee109d38b324794850dd0a02305c9b442ee1ed4222aadfddce9802c786617527d26dc9001e49c809a562363d1ac2f85856e95ea949ba9e85990e504bed0302047c435bb500673065023100de070c6dba589137595c8d0ed77e585966ac6756ddbe4ca779c53b0f73a76cb0301de4afd13a8beffe91988fbb1e3c410230617ebf12f6f43971fafd60bb0f5ac8128a230c697eae5eab857e39b7209eabca84aa41f93ebea2e0b78bfe2eb7bd42580302047c435bb500673065023100fe7d03be77938a0f466bef365f3484242868a218d9bd1e2b620ac3b97ad7cbb3c1f20f4ac4f75bb0218f8ede56ec47100230761cc02b4f312343e7b7e8b3b91733c50f88465837dceaf9335d62af563e66b3ce52fcb904296971336c7284045c28340302047c435bb500673065023100c6d5b003092f1ca18430b40c1cc904639fa52662d859ccbefad2ec42ab74e7f4454b71663402432c0495db8e9d7b603802307e28f5b8ea219e1fe1f79bf89a5d806aa22bd1abaa15cf6e6cf08d8fac286005bf4dd2030561fb3727cfe0fa6f0f145e0302047c435bb5006630640230681cb31d20afffd3ef7cd5b409297ba3e0f4e6aaec2e1db919b01340846bee8fa8fd98727de53b20b6b62f326185a4fd02305be56605eba271011f90af4304eacee81ecdcf189baf9454a5ca05a3adb725b982b807b3e2380fe43cc895ee6b6e936a0302047c435bb5006730650231009d547080fb2d214f03bb6b4ca9924c105f63d3ff38f21436a886b19176f566ea1970946def028ddd31d3535793db4295023076ade5a2b9e2cc93f68be8a016ff2082da0e0c0ff0f487c20370c395f3921572ca589b459e57beca655b51b8e865382d0302047c435bb50066306402300d63dd08df4c2763b6ee78d607ac3d30eedb2db146cd048c4d44898babbda67e82f01228f501b7b32af26ae3454e06230230613827b6b70e4a7d23eace552b846c0afff9ec7f8348eee8d76c174a31aaaf17e8859a23d78868131758263edc951d1e0302047c435bb500673065023100ad1325769aea3c9b2adee87b604c9f84ab9ba8f1de41f3238f4f7cbe58934a3ca861fedb63552eb6e4c64e30a891fd4502303de18a5a2496621b3a828b9d7df97ad70aa3e4065eb72dee152cd8f55d0df223379126db18da4d16304cadb9baf95d120302047c435bb5006630640230786abb86b9285d469c76f162f1d0dc8816bf0740352b8a2fa5faaaae76bbc6b0bfcfaf1821c35a2ca3c9a1890e333c3502301f39c7db1622a8244c61189b0add228e7768906d5e89a248b93914e0b84cd3ced72190a308995b7f8863725c772206110302047c435bb500683066023100caffd51d2d78fd60d8034354f2a243cc4992548770c615098c9cc4a71769eb3d3a467f862c80feaf955ec3ddc7075af4023100e5f225c458829531a0a5e8d86f078f36e6e9f5c78ccb5f3d4682756d02cfa03f4110a5c4875f2b062903b682243515c30302047c435bb50066306402300e1117f080f91cc64d10ecfad2cfbc05c65dd065e0069803fd0149575c67aa03d1ca034ca30f9e15b7f51afb6233c83e02307ddae4d48a4a73b20a8643fa70f61fe2b4d7ba2d26284ce71ec12562218c1b95290668ef3e9dda4ed92da7f4ea0cc18a0302047c435bb5006830660231009c1f7d6289638404adfbc6c832502ec9a4097cc53271e5cfb2b8a6173b730ac636034319ea6bfde670afcf88697e95ac023100a0efe09b8c7ff9f6c90693313544f88ed181ea2af11900c1e9e63f4d4cd2559716d586be7bc499edfff34008e0db0c7c0302047c435bb50068306602310099f35d10b9f5a34cb21541360bc293c16172afe1fe623552fdaff39d80f6a070f817d540ef0b81e118de1ad1f3ee9e85023100f522a005d612b964fb20bb5a0d7d5dd2029aed0f74f4c4062ca7deebf820936f882f3a8f31c282eda406aa21cbb431da0302047c435bb500683066023100f7d84d49b76c215ce6f55f5fe94285f34f78d1a1f1e9bca7663a777ceb301837130cbd26ef077a5a9d68851b80c89e0e023100f146db28e051ea770058f14267af4df4297fc9c0d40e3d763cce666638deb972849460ab1cdf342d6e0606d7be8a34760302047c435bb50066306402305f18a6ee927629d27389791474c54e8cf140c08217f3b29f739a9e158aa2f59c7e2ee9bfc1d22ea31b2cf00763966ea702302a265a4e3d6e5403b25b74191b6e5db46da2e0c91952098253d9c403f3f125fa8f376fc459f6c4399ecb191d5dee5a060302047c435bb500663064023050cde48f1482cee10438b418b5f7b9503bbfd809c0f94caf66a1e7ab799b5aff8285370f0317366d5c3defaeab938e1302300bb4cf7e544e2f4263c48c616a84339b57c2d149517bf0fe7acaa650457e489c05132524e8042b537322e3c6560ec5d90302047c435bb500673065023100d20f32b6b46bb24c7e52376283b572cfa31ab9d9c7be475575d4f65f1745022025b995e808ccd3e229588ca2b446d3d2023016f2a47bf069bffe6f82c705d404a93b0243e21ea67b903f15b6f9974bf6b17edd99c156ff26c60a5a972830aab374e80302047c435bb50066306402303d31115cf7efcfbcecf405027877cb51f7a0fd2ba26a34202133be8d7f4c64f5fcea9bb3d043631a74bffd0c0697436102301b2e84fb0cad57bb2bfc9af5c98b566ea70a126e030250463d5e1861ba63e204ec7730886fe948c714f3e19e028a2dc10302047c435bb500673065023100a3983b8b79e70f264e1e490ec9d4c358a1b6bd178a466ab65e52f0e453c6601163d5fad1817349c8a9e929f0192bf7b3023054aaea2e6b63752d3c6abe36baa874ad62a0a809cbbe786e02b3e8d86ee8e7030c368f55066552932a7a654871781f640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300650b6bab02d329f1feb6e67bcd563b3f3f52c25130290b8dccd6411693a521aff34fd25d309e38ae9089888d8cb488d02302c94bd35159891d526f086a97e00584d5ab12a4f61a490a044fc60148884b1415c00746ae459bb4228ab95e7f7dfa88b0302047c435bb5006730650230523c1a54baae42a975e1c68aa2f79d9332905e6b234eb250ae566bec3bd32671b65553acddf1f92bde928f22cdf69cbe023100c8e87aef2aad55e50761b438d97e0743cbe86486f4962a244600cf6032bfa80563179c128d499810eaa1769c8dc506440302047c435bb50067306502304c576f4c94a542fde1937ca2a2aa26e9b15c183ff4a5bea01659599ff2860d7a229bca54fd2a936b17eaacf484c31408023100f004f2960754ac10a2dc6f6577b5a7cbb6a9885aa0aa345dec64c81d0087a8cab7402eaa887ef16e97cdf9b124e513460302047c435bb50067306502304a67a93fa102ae74cd033e28b4c86534d87ee1bf514175792734e4ee7f6bdb7758fa7f851b1fc94697cd05cc0081d2370231009216695a7dac74b39133dc38f5e9c47d6689094fde43fb099359db4f5d7a6d4d6c40c96fdc2b94a75f1229ed8edb88850302047c435bb500683066023100a200f0161e15c47f7b5d2b9ac30fb7d2ab95325b8a6cfbe193ff6ee3546318896d8b175d60877e785bc54e72b198f99f023100b394bff0298eaa7f2fe34f81e60a901ebdd661093e6645b305cc4da41f0a893b4d2cba72eeb50aafa77eff851f2540190302047c435bb500683066023100d4c309adf86c718c3dbfd7a0fe942531dbabf4032ce9c5998387ec0940223053b5e49167d58bd3d26ae355509f6c0813023100dff6cd74c291e17dbdcace69ee4188b7531a4f65844469f5475a62c7689a736da5be6d812d7cb1cc24427d21ee109a940302047c435bb500673065023100abc8a08c67ef926fe27249f252f0565c9cd8b5422b052f763f8fa3b7f489db6edb3729db4562a88806690425e4343ea70230110ea9be7dd455e8ab324957a248df2241f51f50934da2bdb560d50f9d77e3d29cf8e11f0fe206b2bb55e10777dc9f160302047c435bb500673065023048b0112feb9ff0169f8300610880db799b3b0346504bd22e2aefbf0a176f75dff4a44a1d185eaa428de4167c344a9073023100f5b70c06a87e8f58ace0ee5ee6391df82b8df551b9edbe97e5be748624ff6023f0db40ca0616841db3afeec990f9942f0302047c435bb500673065023017f70417e4a380b715f670fb59282a0b1ca8e71ba4567c24b16cec15b2f810d663deba93f4a4466b127172d6fae41815023100a332c00514196f837f6680ba346da2b626f516c133c07b0fcd20f59d14a5dc59ccbfd4f31a25c6b79c0dc8958c3fb6a20302047c435bb5006830660231008b7d2efb5cb338d490a1e2e9eae620e53ca882d8a1d747f3646b41b403c35b0ccb7f000171d716c80b8ee48c41c7fbde0231009807723fe8ac6b5142515c066d226f9bd90fc40600a61d428b0c3f1afdc1739acb97667a7821eaca695485256159bdf60302047c435bb500673065023062479a867963e54fa721c7dbc0a28f121680b5db7e7b58c67d98e566755aea599faa3e8976c7114c80b38cd1dd044a2b023100c84335baa6b2f932e06fff8ac8c7f03907de722c9acff14bf09659f9c5fca4e4a7ffb6293f4dc81ab33550f1669b9b940302047c435bb500663064023052010e3d927798dede05073bf821856bd416e30ffd121896f4a1340c3c49b1b51f5922a506aec8471a5ba84947f1f618023035b384a79643970e22e8d8a2a509c3e9f9057aa786ba3ed76279d47078e6347a22d0c7023f74cddb823dda8ea738f3640302047c435bb500673065023100d867578ddace5749e286fa165439ab9f50510523b9dcdb642de06574cd161389b5cc9503cccefb1bf48b7a2ab900880202305fbc01e816d07a3c430799664be5a9199de156cf15085e6dc55d00aad90bb7ae1b78250b92a2a98a37d27f6f0cc7009a0302047c435bb5006730650230365b3cfbd1cf0b3c64fd3d8c3846a9b39e771346bd36e1e4b649982ca134998f615893b2c06a7bec029ee93e6a053a6a023100ec2b09450b6022b1a6ce43c610c94e99d613474e3dbd43ef7a7398aa46734c0666aee7151b910c4633602a79afa0b0230302047c435bb500683066023100f3327775a1d5886e555e5102ac797469e24dc62b5ecd6e21ee7a60b7f9c42ed3b1f3babd3b30543782025d6b5967fcf8023100e3229e175dfee56418c76e10a37b6fce86a0f61109d9cb431a8d186f0757e0167d0c1420f7ab210d0e285102640aa98e0302047c435bb500673065023100aecf8b9a0fe254f75dbe156a59e90530add91a16030a259cee1b1d7b8e4a3fd5fa5081d2f2b6d02b78cfaa65539ae317023013bc4b8c1f4c9bd5fb57df834b59aa536403703b2cca275def5681d391ee34daced9ea8ace27709ff4944777020e2bea0302047c435bb500663064023067ce02efd14d41dba5879a6ef846351e7cd4492089af85b5803b9d1f2a5f089dd73b459997fb09d1b3a6a8c9cd2ab514023024aa87e3c13d60f68179c18b067ea746b424ffbc0d2a7e2748314e7d0f1ecd664cb15ed2c5fc92840b77c6e25ee6d9190302047c435bb500683066023100935cceeaa034b4d13a4f81b409ae7d50436bc41886dbc3160aab741486ca4568099733249f15ccd35baee7edf198153d023100f2d128724f43107a1988119087cf212a4a1c6c00bea102cf13fffe0506320f0cb538e2a23c150ed4d8feb1e1597487da0302047c435bb500663064023020a256bfc0efd0cd0703726cdb213e7b1ef92389e95f90ab14cfeaf517998e829735f5b2c67366307debc97fb0dab2e202307b07128bd3d63a2d97eb2af6177a1c0f75eac5b3d32ca3aa5ca2462f5d5b904a779d10409d5a9d96e3e9c04ec72285120302047c435bb50066306402300a8ebd79e66ea7585b28563f3e4cdd1b25650ae4dbde21708a900f83fefd5c230be504b76cb950c0af9f75ef06447fcc0230536f85642837538d635c2d76233c031caecda3e62800e84978539f40be93581b7ebdc3090a027269aa7a6b0c6c89d57b0302047c435bb5006730650230490d9199069df6aef4147fde79de4747c70e5d19293b5694566bc1b0b490af63e899eba684097a872a5d262652a411b2023100a5ed7051866bd4981ddbfaf7e1abc81f30ad3024d39b71de9699336552af01c9270373725eb01cd2314c2499d6ff0fd60302047c435bb500673065023025146705a9b0987f940be2bbf9ef0b99f25f6f83aec8b07d7822e176ae021af8f1a0f96cfee1c9d6cd3a5444419258ce02310090085a8290633687d7602b1743cd6e83b34c3ea55122c8fd84e5d88b330fd9008982018ed2c7fcbe75d50f6c14f9ce890302047c435bb500673065023100ee3b5af543a1b40fed3812d8ac84c70c1bdb72976b673440d1a18afea734a8a8e53a3eca694998357172c1650d5d0d370230572e0dc3adb6e094d6a39430484fc507fb2fa21a1dee2060b9455b7109676e6d737c074f23855cd0cbdb13a8e89f0dd80302047c435bb500673065023075fbbdc2562df8ec857127d165690d960a8a24f28371e08291a37ad5be604a9d2d7b8573a5226bc509aa6606262619cb0231009e0f269b980d68e45c168e86c924315bb0621c96cb79eae92c71b96ffe07c5ff5fab1369097811240130120d7e8fbf680302047c435bb50066306402306e020a47f437458f53391262789768ea17971231b96e5cea47a79c70e85b941194b92e45b82d277838dfba5a8db2af9f023022420069c501cb14fb9eeb87798867b32647f9e006ee0172c30b4cc7c830b10774293060964ef6121d742f354e6f50300302047c435bb500673065023100f48413b1de0b0956c76281d6d7a4e9a19fb0b6960726f43920391b36d0b08284a0eb6db7ced7dd76c93cd5b447a0095102301aa1ce9f224832c490c7a679235bcf166c70cdb05713345adf57edf39858009f55412c935425cfc9ddabb2b01e771b670302047c435bb500673065023024f8af2b26d9871f606a5cb70ac6a40c817185d6e581e63cd2e653a5d96cdc2a7ab0597de4412c7e0cefdc953197ad88023100ab0bb815c0b608e9cb87487a07d7634b0342736fce3b7b12606010c9d2e6fd944e5203684f002fb49cef670b1fb00ac70302047c435bb500663064023013b4780f3423bdc20acd9264142f9d0501ce63a707912961092a6a902b89c382afd8ebe26b3422bb749524ee2432298002305cd8ee33de433e21dfa4ffd4924f82944d2fb106140d0ee163205f428dd75808ad86ba0470f6649cd787b868b4473c660302047c435bb50067306502304fdeb24872222b8cfc8232c6f1a8c73566c6bf3e5defd2915c13f4eef816355152df5ce323ab2dcd2bb012fe2b369c71023100efe882c1d0f8b9c3d017aa4c0ff9841419dc7e4c7f35277b2ba52f4cd8f822d2735ec5076f7578149c1789c05328be160302047c435bb500673065023100dcc1930072eb026f4440d0d59635c96dcdcd206256a54017ab569e5df198589cc814c8a1ead962d7d029fc3a611cdb3a02302a29799319b1a23ebedfa4b8fc4266f71f3fbe3d54f43cbedec9889f9de5a0e518a351216a7d585a3c7cefd427d6bffc0302047c435bb50067306502306d292f760d909603cae837401ae780f72e218d77ab933878eb2ac3770f8fdfb7adccafdaaaa5412a7d239f7df53fcca0023100da08b9b281c5a10a55f289e6257d7dcd867688e8e5580cd8fa2a44c943ce079917bb912adddc35573326c55c2a974c220302047c435bb5006630640230670beae87fe7f10ddaa8fbe5a33205dacf702451f03f86c7cf84a6b3321e669244d73935e98fe1659b15d6452f5ee940023065db1ea85f5b56d5dc28fdb7d9b6d7fcca4ad2e97e49185523be558ad273dd8d67de0e0e49361bc480c3f797b9d5ad840302047c435bb500673065023002aef087d8c73d560125ad8b4992e9cd2247356faf7d8d054edcf698cb680c29e57f81eeeafaafb03b0fd4cdebcc51ae023100d8d5cbb607f0b54dd43ef734daf12d5b52cf51f800f3aa6777203348eb316f4cb85a74813d82774ebb8708c4430a45af0302047c435bb50066306402304f1cd0901a519ba3625da0e4ada91e9639f39cfc274bdd41e683f1b5fe29236e98aa066ec122d0813e9601e57f1c01fb023074975204725697c3bc69578dcb40f48e8207e6611907412adbb219a245fd6daa8a4d257335e26651efd4a18592fc78630302047c435bb50066306402303463d049e829255a6b4c900420bd5c2f094e7c7b41824182a8a8810f95d9df9366fe2961327fd95bed4d5d01346fc57b02300710978b02941027945ef1068fe7b473b5d1e127778464e93ed574c9a06e6056407829106dea3df72a3b79cbefd3a3550302047c435bb50067306502303a320db909d62bf68130d7140b83e8cee3d7aa97a0621055b3f273a6ff1dc862376ce06c99fa0e9f0fb12c105504d604023100dd3b2e25e616cb7987684ddd7c1eaa49e46e7c647849d7a30c70a0b87bdce410b365a9f128739a2c00dfa816eff02efb0302047c435bb50067306502303b4e5433d65122968351aaa75733b34c710ed57ca8c9e4a212e04b12691fad9fc01c6bab40d0a6b29f7b1cfe7231e526023100d0a18a4d8d193eddb5929eb8e3b407b36aa2aaed6117c2422c46a7d258a02c920e67f4cb3dbad6628f5f21a635d05d170302047c435bb500683066023100c73a0ed1b116e5e9b7998202ae912ad8a2ccc9fcc62f5a436cff7e8a699a3efe7882e16cc045f9aed04b0d9ee81cec52023100fa3ed85970d47d728c24c3fe759a44e3e76615192f22ca779edb5f1117949e5eaafb8867a7df9ffd3a53a0d757999b260302047c435bb5006630640230100507aae7dc576e0ee4e429e75e16dfc02733da8739c4286313e5572d864fdb5d1e1dbfe0ecebdc431aa13acd6dba6b02302f92df3ab36990224c0df6b601b9f7584619df36fbe907559afc64509d87d162a6ab290fd3f6defba1e86efeedcf1e760302047c435bb500663064023068749e9d43ff477d960ceab47face4baf9cebd665f1d6e0e8b7b0d1b80a73011bde907863686dcae98f05ea0be95a2e20230315ea8160038fe02ac88ff6009079a0e0720fed17f555868eaf7cb14ab49608429ec71e843ae11a20a6eaf48daafe2df0302047c435bb5006830660231009ef4c4c6f0b75ce0daf51180ca094936627bb38ce0aea9341b4887407d6b1888b26b25905e7aa3deaafdff05188b5b2d0231008b595dcffb2cd8ef5c737abff18d15cb16fbe4b74a3430eef9ae47612bc894afc4a5a68b9a7fb2dead335b0df6629dde0302047c435bb50066306402302b09a30895ac9c97fe5e94e5600c26638830c8b305989a8b8bed959770aa425ee2f1c9566867fa3088c88db3130c7b9e02304649ba68acdd94be2a65a5ebb6b9db5102136d5aef153bb4f9239add302671f5645d5e401aba69b946780f87c0a3543a0302047c435bb500673065023031779781da29f93745eb09524e00f32853d5f3a67b3e7fb6dba8e723de41f50658a1ba20a8da0a5432c9d1f0ff5f5f07023100a9492dbfdd5249885214eedf9392dc89e2276e10c99625cc523e17b38f456bacc709ab27743313f730e27ea4a11795db0302047c435bb50067306502310089c810e0ae4f613fbded13982244437e8e4e6321c04c1143fdaee4789a4eaf62e055ee9ffe5bb521ac51ffbfffb125c3023075e2458fdcf8669b2445abc3acd834c9a4cacf862acd06e8c2e02ebe71df8dbde3407d286716cac67e332918e5f177d20302047c435bb50066306402304bd4acdc1af03f3792face1b25578931246e472848aa544f49fc0b0319186583fb282eb98b8c8ae48b94eee5dc35648402300fc15c336c2d331125c01beb6664c908fca87fd13ec5a066e721f7283a73240f8677c1d70e5186981e237965542f2ea30302047c435bb50067306502306f9062f0ef0b8d5e65cc1433a17bbd1df166073d7f57e861bee4cd025b81a12ef4400ced0a02bc46c99fce08d59283ce023100813bc5d970ed770b198a3402d995e1056663e441850c40d01fd918cf1d5f7fcb4776c719720fed31828e7ad2964b16ca0302047c435bb500663064023068cdf12eca1dec30233c2a8580f81243201d41d2c46f72c83828376917654bae748ea99e4e0375e4390abf9d71832ecd023031ac19e20f8e79fc801fa9e63ea63730ecf263f6f759eea2b214c2988739e62e230dc61cf37f2d684f3febac0ce4dfbe0302047c435bb500663064023047006b9ae6fc687aab2b107bdea420a27f4d9d75ccf960da0b79169f285a4e87653453410ef250542f041b23a723451d02304e6d26bdf933318979f53efccb454a693a49ec8bab0a226a31b735322e13f06484feaed7bdb364a94b2d70e5e7b50f2b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c8f1b819ca00da6b22e70aa1c7047ee935d20e12ba3c4485db25977f349dfa4b4968e52a9e4778d73f4afd2114f1c54602307b3ce825f0d64dd70c43c08d65d0c79dc98d9ecd0a61820484c329def890216314fe8a7789d864d2754f30a16b3df6ee0302047c435bb5006630640230199e08e6d76f5e78bc1d4ae38b18c4ff1dc74e2b92ee73c3663876fc788d528bb1f7d11124bfb34b2ad9b94ed2f66cf9023051a6bf59c501b1d03c7a81510a006a7274c2d9415643d0435a766eb6057087d08905fb8baf9a4b4f391124f4eaa7f0000302047c435bb500683066023100c16427a72d20c0503b4fb0a6a932c2635d0ae24fe04946bd72b23eeb666e63592c3f33f7baf36611e29a613a58d309ac0231008129d5f1da4c10b464dc423c143f5efaaa5f50a17275b4df6e64c20a4c9d68d1df15c2654629c74bb03f9e5caf8c3e990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230593571b2c61a8076cb51cb1cab177cbd76db894236af53142b287836fab4ab7e444fee949c47a16df41e11fe43d9978d023003880a28c2745462356f540965b398ce305bcb9fda866748bcc69433b13834ba40990f7e55bb69141284653c346a8df90302047c435bb500673065023100a2b430c5338edc8191b12b2603ef9a1fcf90a0b26c06bdb31811a499b0b3bd85e0cb4ee5c0ec5062c7fe1335b7da0fa402306ca074936a43cb8c4da1d4be00db5053960465a1db7c7e0654a96897e99d0d627a16c09f8a4d5696ec7e74a7510084510302047c435bb500673065023100810659c0b21198c5e8f9bd4e75affe55e974c6ee953879260d884ff11ccc07f1187b6cd66f2f08f47acf985eb27b296902304d7a3aa2a7a41307a741e420f6ad06f9415b593091105dd89bb66e86cc1617bd8b548ed66e9aa151abf61a09a77f75010302047c435bb500683066023100b86e9b9d7896ec8c30bcbc134d20a2b45d74effd368806602c224373498823f2613dd7511e12a3d13dd66225d8d968a80231008fe545511b92d504d56710482218eee66d9b712cfa68627464b3b540f2a51fb25f62c0fce9b663bddfd44a6ec57a1ab60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230453bdb34e6fe1af0dc389985ebfb3e41ad4633283809a6da428dc7ee11571c36f7aaa1ea60a64f74d42c495f65cfe2f1023100b1ab1f9c8821f2ca8d5d65dcbc2a51ca83e905213274c3f46af84363498286eba59a81cc4307a62b08c4971e706ccd060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cf57f94f6f9f1ab68144e22435014dc878e6ca36ebdd7c3178a7727c7a40c329dd80f24d96e463c2aea6c93e74a0d792023100a513c68a9c494ad52af63ed070ed214309603a80dc1bce7ed1886be39149320b9706a74f2ff8707f67d2299c21a3da830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023033f163719720f9970199b52f818fdbd5bc57b20895bf4ac6468816a2344676dcff887c4a0026046ca2d30c54efd3f974023036fbebb41f4fde602f347a7e762710ec3d9080f6240b188b19f9e5d7dc62485faaf36009894a5120e86c6050b12d3abb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023004aafcc7eb3fd9be08387264d436a7a99a97a4694c900da03418110adf35b343ee3d6ee0b7dd8a8873fe6e0b2e0b5bcc023100da7cb8b88270138cbef4dc134565937cd30ba4a3bbe3a154b76be6c2ad34e46edbd7394001f0f3106b08e7696366bd5c0302047c435bb500683066023100814a419c69ca449e80224c61ace620428a22b109c5d870a8812099fac19b71eaca517730d56b5c91216952bd05fdd4d0023100d7a2ddbae23f6f5c82ad6356cb2e9dd98f38dace5aa26ddbfbb4c38b2bda2540da5896f53ba00f2a406a20d9dc8ba9150302047c435bb500673065023100d8540028e0d45104bd32051df090de0123cc6f136599ed1d55b9afacce3bcb8e9436bc65bc486adf7acf7b3b24c35f5302303f2b10620f30c07cb208828e7f1ac8148dd39d8ed1ebebfc2f6955d0303358f46d9a461e484db1deeb91a2cafc8113570302047c435bb500673065023013d49e9641f431a984387b70399d954f08e01a2e3ebe7cdcdeb928f8b61121a90b30760fb0eb492184f66b13c7deb442023100c86e0ad247db109f1fd911470a7076cdcb6e257704655eee1c10ab30586f7255a6a0064fbe91021c76e5b7d5a90756a40302047c435bb500673065023051a4179ffba19a447061d6e9dadf45656253edf60ae4f5df4741a07475bab48cca945c9dbdd86d1302781c70c0d204a3023100cf58162bcfcbc0507f904baadc075a52c49c8202b59295c3bec1b1b0b54f2e87d433d3cb5a1ae5e35b07a96c9b0a5d3a0302047c435bb500673065023020d6df5d61da511d88ce634b343312419aafee5b111be84ad7266d38ad4fa7bc322bf3e988e715086a54988b3d2cddfc023100e2479833d8e6a913c7688e4f651e99023c084a5f58ff609b879b48d44273f265a5c13227b27e21d6efe620c030e68a360302047c435bb50066306402301b3b44a84d90f2c065529aab7326354973898edb3facb038c96c0690c0095de7cdd734b705d783c18f5ba48ea670a65702306525ebc1e3ec13e62cff91eeedf5f1a862e62a5a1170e938077013989f715760d5e8ec3dbb2bc93f87a05061465a3f610302047c435bb50066306402303f102ce9e91e1fdfff3e9bb79bdb599b12f59747aa5c51faf8373cbe23167042bd2eb9079e2ba1eb85f3a7da070eb7cf023071cc5c786841d81083d7b14df7f1977062ef4fb433f4591dbabb11f35ec7362f9b98a214022dee62fb06c6ef0164c7e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305b6c50ee286187baf5098aed20f5c5347f6f43b077052890acbf0a3637de320965ccfe5af76eee5da743030e87508d0a0230330d2de033faf9c6891bd676957724d7f689a6b7f97124aa628bf7b1d4c3363d6d313a137aac2f956e4980785cfd81a20302047c435bb500683066023100fc7999b643417d2ec7f208c64dfeb5b1037e836d2bff6868ce4ae7973e72bdd5fdddb1d49702c740bec10a49d5af57c1023100e9662572adfafefb130c950cb950fbde4f5e1b3c433287f82f6230af97797de3b7d6095c1998ed5f18fd3e825b78f6c50302047c435bb500683066023100f11161b427bd645030e56ccb3c5bc7b09e7eb7d549ecea0b5077de918f821dafab3eefefce8d4d646bde0bfcae138c5d023100ec82d79ad89f3e08013ea8517d9c03517a66f52e7e075ad4bb3a78f37d35a2998d270e3abb0b79e4e94ec3119dd4a98d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303f5b9b7d72adb57b497b67a9f80b2fb4c9b029c99edb26b96bb0d87aa6d014495051312fd341117b397f8504370807b002302dfe718bf4768f1ab19555ccb317c7b1585f614292a81e87f446ad49eeacb8cc8f902a2f51134d9fa92a92175e6c85330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310080a2727136d8fc260c0e06ab80a13575ff90f10089ab8c44525e49d52862bbfdd33807f2ec0cb502d23ada62652d9a1502310085f6e5766736070a6b604a99699fe2088a9efab5c6a620314bfd1748a4c474390040bc9fb35bfd1e85c5dfe6ad075b220302047c435bb500673065023038c9ab0d259a4742792645234850e490f3d126b2ef047291fdc28abda34500c2624c74f7ebf71594b71a322779cd700a023100a68901b339477bfa000cd840f5304d4dcf85f509f45be87b3a278f39069bc09f85b70b1ba2a1cee0f029e285de27502e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310088214d38473b3dc8dba15c63fe16dc2e1d94412c22e5081a359eff91c36b1380e0af4059c64ae1ad83f5476176b10cae023100e6150e5c48c426a4152c870f89ed59069fb8ac4ae20921050edd603eb393a5aafecbc5a90810f117b8cced233970f6480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230563486e0028b28d8d1617ae8b8c8e2f14a7a76f739c26ce06231ede1870274cb9ecbf731910b21df7c4269aa4798890a023100d7c2a58e90d41efc3d4d0abab1918daec31708d33b9e330c156ca9f1f4d4a8ca31d1cb9356d2a165fb131389a08f4de20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023068ec550dbc069bf61b99ab6d808200e8a423e2103e30bec59f2c000d9024d02ec11dd11577d3ec27cab6efef833dcff7023005ee56fad8e9ee38b6aa8e897c947d9426a1cbdf3d11c6a2f0e099b61e318a5f06f07f70b18ce3a14de0c1bef234768d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008f239b3bcd814e33816c8905f44b373f67feb44c608a333a48fc160ece97a4f4f7638dee2c01303d982b9ee666cf3ff2023100fe4f6e4b458508b17577903cc0c746471979981df0620ee11768b19b1fb8ba85ba6e84fc89ef7cdd3164e0a64a41d8b10302047c435bb50066306402300c4d96e504477849e9d624b190fa34c602c656632c8b51753354f6f6de3316bf0cecb193c50aabed6b04f7c5c62a684902303e889f8e123392f772ceca785a1367cb76758a7cb530d681a02ba527b10ce1b617c772f4352842998c5e75bd69ad9f870302047c435bb50066306402301e68cce56d86eab9355b356b2b765744afcc89fa610c003e1f16b32cd768cd7845fb2eb8ef518daa84755a93644bc69202302742ffb058cea49317ffee7569c8029dd123de9275e2bfe92a4988dc8ddf7a50353f522f66ab0e00ac7bbbe2b1368a140302047c435bb500683066023100a3156406f4bf9336e0833165e732be2f551032d96a66b3495d792e31812f493572a4d4e7342c41064cf77f469dc10357023100b42205fbff0c16c93566bb922ec99810c7fd61c85d193034616a8ab665e18a37751435b100bfe5c5b39e775804cd95810302047c435bb5006830660231008bdf02f5d474cd87f306a830b8cf3526735b1ee03e30ec6a05fde82ce3dc8dcd8cd87ea07dafc6216b984f7a89eb0dbe023100e4aa253c81667ea71010718d85c500408d4be0e0e8daa41477723a81e3efcd946fd91468b05d2d3d3690ac2185cb50ec0302047c435bb5006730650231009353eacd6270f64f8b226fc12e5211e3d6f66df184e547a8ea7cf23779b38215f2dc9d3ad0657c1edc9ffd95f15e294e023035d199517a9617dfdbfca6da1da58692e077e3860bb715d6273b109b4a920b2a5834c171b7393000bbb32619045548620302047c435bb5006830660231009eadefca26006d916b98b51c0e5940510153c57e89c3fbc85d6e50959fe87e9c43302166ba531aff71497e59f2ea333f023100e84c23aa5122ade9715fcc097e3fd429dc2d557635e3854816bdc273eb961eed15500fa9bb38fd4a68e8b637122117bb0302047c435bb5006730650230502045a6b0430fcc8b1cd7ff81942fade16789603420e6d52c82e3d3f06c8bed013510d3d42092e4d04c0337e8a427f9023100fecc6ea681d55c017f80cfb1fc808ad382d24814f7362726d100eeb80a163574d58310dafb7996711d95d0cdf10289490302047c435bb50067306502301b3931616e195c80a042953c1cac9841961cfce7ca96acdc1049c2d61545151f9821fb359e675e88bb99057a1f058be50231009a6555509ed418e9ee31dce46372f2f58d9f4f41015c613adc567d2e8c18356e508fb50253901a0a972dd4fa0b9c969e0302047c435bb500673065023100f7232b62818ff5d4a04fe1a163f56070ad3f1f3dc10d8edcb97a9b3e150e86ad357f23103097feb454ba3c9820470da90230793a131a0e0bd76215b3b9a103b106d3f8c79daaa820ab6de27eb971e4ef615b0464a4a7855bfe775b982c8248cf42ce0302047c435bb50067306502300084f2923d292b4d7711570cd75bd4103a139bd10d36851689bd62ac7165b9522c2d7e2eb7b172e643fc84d7a709a03b023100c4c5d571bd4a95c3cecb0c5dc234f6a6c8f293170fc3e1c516ad39453f81c9e65923b0e7395d3fe86f5502cc69246d910302047c435bb500673065023018d12f8d3661284248dc860fd4af0e11a5202db7df1955886e1c1126a52b7b85bf00055a2ae1b8653903bf8c7dac45e2023100f82b362a389f35c11fb2602fbabc367ae2672d2c86ff50558cebe1eaf8ad130f22bb3d9eb37a0700c706f5376957bf150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230583050253ae900391cb7c0a6e4b28db963565686e76416e48b9d58481635ad9dcb0c166db60dc929d2a2f849f90763e6023022036e7914fe68ea6f86dc85ec016c155fdaf0066536e8d5b046746af01926391b98e0ae565bd9f41717ad054652568f0302047c435bb500673065023100c6b12897a8102764b3dd2598f10412dc5c13022e82ac8f75c3f9ae67ce053c95d9053f0f8b2a0c0483362e2368337730023015ae04d7d8241d3921a4290c38858632fdd4fe7c9387c06cb9256534e69c66eebb262ef7b8f98db2e494ad0ed4604eb30302047c435bb500673065023100bc27787c58c9f6184036151cdb22cd6fcbd314174a73d9d5a76a1b73281315f306da1e04df92e4c2498004669348796d02304bf34e75feb883c1a4964eca3fd5fb31d3188a5c0b351e1b163ebc5ae7286837847f4d8da52dedf3fe28c9e4ce9b09700302047c435bb500683066023100faacf4dd1d3ca41db0df9d95dd4f0e83437ec67cd5e1a22938243c9a7b870bf34adb616b13af33fbcdec40be25997d54023100ab727882c0e64b801e7a4e65d83fcbde2d7668d4b91cb206558a966969c670f6bd97fba07ff76f411530ac9380343e130302047c435bb50066306402302742af40c9c0edbd3acbf8c27cb8fb734d65b7f267b851752b57f7f93bdd051687ab6a784ce2b7cec73dff4addc2e6d30230123a83f4835cb9dfb16c20e6814d263f81261e451fdfc58a3ab4d2d11ba3de4549d1e684c6c8478849f719d79e0a4ae20302047c435bb500673065023005f092c9323b14b2bce04058511e995ba095456a708220514cd96be4d0c542e695137858b50a1f9b56ced9d0ebd6f3d2023100dabf4daf43208a1c17ef86d147425808d7fa533b578d8474321478dc39273aada8f5defc1e748af4a747af4bd66a59150302047c435bb500683066023100d7e7f56f8d402b67b50bd2578c55402ea9775ef666ea18f62f6933baa2d9f1e4bfd7853df418ccaf37f2379f729e5083023100b22a0726f736bd5d38323ce1c6da2a5771e1009851b29ecc1adbb73165304f0f17c4e0a4ccd0aa15d0c2ac55c52cb1d80302047c435bb500673065023100b275236c858878e0f179a74b70032789969edb5a7aaef945c72991825e0345fbf2f3da42440e0bec494f6ccfbc2f26bb02305c0071cd88980d42b3bfd8d9fc0ae39440e03cfec077369c8e9eb438de400a1595179dc16631b43dfb8cfb5ee33cb0c40302047c435bb5006730650231009314d7cada2b1f192b129764dbfc7fbe89593560705dae75fcb785c6720700c73471a8a2e32b35998d5152f437f3ef9102305ed7df030ab8c3ab887801a6d04a3f45011bc8c65eca112dfbfca433adf16f7ed847feb1948e6427ac2ca6b4b8913cbc0302047c435bb500673065023100e5f9b6b47a1900ec30aff2e8430dcd70901937ba189a2d92e7cc64833da3703b4cd0c16655791336a4cd2b509b80562402303b70e675f5dad619dda7f655df54450a0af60d266e6e397d489e3ab5b0590282e826570deef88a7d49105ba8658999f90302047c435bb5006630640230521acfbe2b266d96eb2caec793b32b8cfcfd04e5be3ba7132ffaefaa4f6c105e7fa25b79e9df2011339362c589273a5802305db2aa33b1404483f40681665bbd2c18925abaa337ac936e22f7d1e8bc450c8c787f2553568696881205a5829e3e95ee0302047c435bb500673065023010f6eaea6b3ab7eb733ec90129bb321b5c2080522ba36504c17b9b2f61ab72588ccc9b350cb63f636ffe7d6072b86f54023100de34f9da3a91e09e7c7da6374de2d601e496dd88ae11dfcc20ebac3ea7b700da553f3cbd66f396c413b4ceba847fe8db0302047c435bb500683066023100b6764c9aca7723a49edf0c31c95114bc3015d0e94fefc8960082afeed92d456a6f4eb11b84dd54bdd5cd219dc1cd47ac023100f7203b1748407f0e9e6359b7427b2aed8583216a04808b443cf3ae4747fa6e61f763fd60b491d9edbb45cfbed7672e070302047c435bb50067306502302255841294b96373be9df57465e00963d4209bac9b8487cdb6bd475f1f676e12cefea58eacf8c8f6c339edd35e75a4f8023100c541f8f06d271b5896f81a57b1cbef7bd9e2b61f651eab1a3c4347bbdadfe8d8933cc1d591d3092d0fe10d2b8598e8dc0302047c435bb500673065023100a699420c17481fa318ee0639ef3f0e467aa994930a1c3992b8ac33b37ad92acebf033c5c5a5b9d4c7feff23e6da33cbb023064ef06f6b4a82cd9e7653c01e6c64678229f8790e16be2bb5b6a38fe6acbdd6f1d2dccb81ec62b1fdadd4eeeec4b1ce20302047c435bb500683066023100d22645928191ac390bf011073c6c2025679105254b1e381b8b84bfe52ddd640ed865c76534f14b14a377e5bf59e2759b023100be960f2edd46c543ef2715f89b9f662dc994715e13b32bfe6ba216d90072fd358ed43c2d506a2af888583b77de0366170302047c435bb500673065023100c41897e7899c8fd35d6440a3decc3fc2f6f59172c049ea3fcc5ccc6cb7d3ef117fc0b1d6d3fac366e374a12616a31417023053ec316c39ef3f0e6da9efeb7fd379de77862602f989c2aef768d65f17e18e1a9bf94e67f68d4291a1654b591babdaba0302047c435bb500683066023100bb7858e078e8c65119d4b9836b96d8692ce8135e49257b67d548baba2ddc27dae0d7d901ec012eacb700fe627469228f023100956930503599c4f063cb2231a88d95b301cff3eafa0195a57c04be4f05ddf4add0287c362dbb2fb1830b2e675a97d4700302047c435bb50066306402300d26451b53f8b2007580990df68bad6b519952dfb65ae15ebb036b4dc415e234bfd55d605886ff8d8329398917326c57023061ec1d1e9c56e032c91d159252aaf117f3912091b5e8981c8c10d8b9c773566ded8029ec6475a235c0af29ffba4f3db90302047c435bb5006730650230506d5388710a6219a03d11f091a39bb8faadc9af027e1429c1a88e923be4bd97ab4d97b2d2d1fc2d918b8cc736e341a3023100fc31bca23110bcc5c6dec75c6a8bbe8d00b437b4d4c8d9a9bb1054d7d9476df300e612c15fd35d5bfe889ce08e3be9d40302047c435bb500663064023035bd4489ff00fbd6c890382be87b32b5d79e6199405ce14df6a1f90adc09e252f2fb1934d2975077ca0333f26d38a6b6023044bee99803b5ff2d90b7bc3953035528647e95b1329e223d96c065695c17acfe22f2bd3d7c6fb74d1d3fceca7c241ed20302047c435bb500673065023009f1e3bea6a6c319f68790dd5e4c8370af1b56459daeb4c638332cde84a874d907819e25a8f7f863a6849a7f2404e8ad023100b8eba4d252a1c58001a84f9de5af9bda2dec755ff9423104a65d9a66cc30594bdcbb742284a382c55ab7ddc8a953fb180302047c435bb500673065023100f9c7cd2ee72017574a2f32458dcc089fe45d230591fc0dda8412db5d5aefc9156ee597767a50745d3e473ddf6ec6810902306cfe199af872d16f47ffcd09198ce521c8885e9e0cc39025f0ab30106c411ec95140711f2d9929ddabefc44c216c721f0302047c435bb50067306502304bc8256b831339b2b7f3ca75ae1ee28d88edddf99cfad34edb15b7ff292a2d997f5c84f40c03a2b00722994cb811dd8102310083347732980bbffdcbedcb531e4ce02f33ae80dad15e096a1237b0162fe5758449ba89f4e0cd51f7dbc7248c27d626d00302047c435bb50067306502300bf50a2d0b6d5bbb8cb38027c6364d77d85e1909fc6955adace8c2bf4ddb0a47d7bcc0b9e43a85e12b52d2fa4711e445023100d9ed8d979df43a810efccc966611dd317d2f1e4dfb576eb21c7c5f491ff65ca52a127ee60be2c429ff9b4f3218ed3e700302047c435bb5006630640230701f61912f5e9c1af443e674fe7aee43aea1d0b8255fcfd94e41beb5fa06fcade8ef98db7d894103dd2851e4b387c3b402304c8faa531b207d4932b695dec306f89c92cad84a1fdac219f64b8bc4cf3c5ec4969c8ef79829953f1a13862f9b49bead0302047c435bb500663064023074c410f1c842824010f5065d8a515f4b269439163bf62795dd092666d54515c2bc62f6c4ee2e862fee0edb186dc2f1a3023073d307f0f4d2e0ee16f7522c752ea8870a2af6818b4f5f3a28b5c4f4dfe24307a25744326cb3cf50f3c2c9072196ee620302047c435bb500683066023100cd456ebc997081aa83940e8fd5a9bd69e5aae9622b3a2bed6a2f50dfe2b361e04b6f36d8357047a1eafe05e191d5dad2023100f7c374dedac44f52fc708cd586aeee36c62534f173f5b8f90bddea44a809302921aa41b10228f6b2062b6e8bb0f5e6170302047c435bb500683066023100c6b1c586dd970bf6b2918223572501794c0ddc115d2418cacbf8fe29754c649cfc362acd8fd7d363b5aa7c941c8a1074023100a17b9718c8f49d725ada705c3393d7f7cc866db619b3353827a7e8a019759c4ccee9fb56f6cf2539d012273d92d1b8430302047c435bb5006730650231008feb32bfd0c158c747bb0e8ed7c73099668048b7dd2b27cc6f2808edceb63d2a305567f717a8ea1318a40ec9c3e376ed02303cfdfefc63ca3b8dcfb3396bf2381604d329750ada8b86794fa84aff536a82715f2249298e92b334f41b328cb24c15950302047c435bb5006630640230060dc397f012d97ef86e6a784ff8086ccf7aa412abfac7bc0ed15f83b5ff73963d4c7b30b7856380058a13d5cbe4b87a0230177a4ceded9347d5c00235ab34b677853544816c702522fcb79b1898999c566e804df83e104e57ca0b09362cae9d7aea0302047c435bb500673065023100f99eac13695298e65f4c9fa6ddbf94ec41e373c6b8ff22d3d4cd00efe2a6a6996e873fa7067156251e0fe56f8e00ad1e02300c54ff8cd4fb083d01df817f0e23c8863ab2bd07a2a5ea46894b553fbc30f88467e6b6a1912edf6231f6ad20bff7e59e0302047c435bb5006630640230448af2bbb1a25ebf8ce5ecdefabb85d9c4cc4c9eb123bbe2b92f1d032d9a091f1f8c725e673ccfd12579f9c9efbabfa10230755ca97d7f85c361749eb198fe07e5ecc12c9e51384664a84ceeb6986b9183905c23db6d03415c2e37b16f67c6f7a2530302047c435bb500683066023100833322f861fb6840a8a19f294ad04f0a277938ae9d935141bec102efa6a8c996e008a09d857312993d986e9838b9c3ed0231009f8efcdde27e411d8b5d3b200bd54f85d402c89235f2fd6c9f7b3fbb91b6efa542bda248efe8b6993b2285be475e112d0302047c435bb500673065023100ab24286dbf53f526f0d279fb267bea19bfcfed3e2cb491c32ac79682d52b5bfe0692948d0f00b98527839199115a4ae90230137b0c2fc17e97d14720846fd6847b0f3b4706b2bfa36b7b4e2b8e78bfb14b829c349a030bde2b0094696dca578fe3470302047c435bb5006730650231009c7e6a23d9702a73a414e1a6ed2308233fe3b045656518c22dff643c5c27310daadfe3e6197e79ffb7a00ea146e147d8023045d1c67c20d7996f5472a8ac254529846d23788e64e02c575559e6a865f47621c21891aada7fa1ec568803d7ea4cd1c20302047c435bb500683066023100c61c0c8f7b3962522a1311d4de031a42d122cdfaa9917e338d7d6310d46429ec28698f3f5c0eca8de2e0d660fc723612023100d39b876498eedbfa921394ede1da5f7e0dd3e8d76b2f0a50fc61446eb63840f1ddb9f44ef3bbc09a9ecaf63dd0f3e5130302047c435bb500673065023100cac59ebef073fca8b82ea4fd27f8fed0e6023c0bfd5533c3eaef9d1f1e288cf48ef3bbd44bc572745e420456b04e0c1d023071e1856c4207ac496831ada0bd832e2e0c72f14c2a31d3aa0bef4e20d65f5f95e3976df3d02e2e3720dc4cc444f16bc20302047c435bb500683066023100ba24b8fc3f50422940344dd96e66aa72f3c9e60a4ed84da1787265a54c4667a74e98a6d05bb5efe0a26ab34f4e3c368a023100d0d5f9c51760da6c98e7ab071d0fb7b0aa99d44dc1bdceb96e6c348ada3f51153e045dacb2e5d1d300434ed80cc78b700302047c435bb500683066023100a5e0c1a704b49fb4f3987032e5992fdab52ce975f197af6117349e9ed1bd23b4c56ee0897f1caf993d4cb9747c434fa4023100c78aa514e58198a6d322865a4447de19cdfbade193410e2dddd40b459b39169d1bcf5382dbc99d53b0f1aeff78d8ef9b0302047c435bb500683066023100d5efbf707cd43e812ee2bd16672ee871c9f8eeb31122ce670cfb49ee295dc99acb90a12bd3b453c98c8a8e3afb997426023100bf94f28abc69f3c3a74750337aeea4d8d368faa32b5fffa9561453f529882b21bcfbd7ff294d69f7363eb8c95f0423950302047c435bb50067306502310083244a14d0a2da1963db4496fcc11d9583b464ab88ab4e53fb3e7881d237b44d3f25a8d023c6b25d65fe99abf8d4f78c02307b0e578f2ab7f96338dbd858f993acee5ea04706a72d2e6a70508c6d4c68396dcf58a7a25281935efc4d104df980b5410302047c435bb5006830660231008785d5568429d643483da1416c4fd37e67dceb8495bc73308bed69b1e2475f51a10887ddabf2ce44eb8ce44ec3b89310023100f10c8163cdecc1be660354bfd61e95bbe63edd68da7120849ba81b71226fc8b187ce0edbc45c4f74f3f2ea1fc74b1b280302047c435bb500683066023100aaf3cc960043defb23d5e8b10451430686279d358b21a1aea5c9611082d1b0cf5935e78a264fda71e8819c05f8f18336023100c05d36862a7253e9026e49332b8720f7b08a33d2ca910fa44a0eb881b734037d6bcea029ffa64e4d35267135d7672a520302047c435bb50067306502303b2bd7d2794e15ac31920bc6356c40373e51f03e3b0753b2556d2f1a6b349821de7e4c347ea6b7c19031d1638bd71b96023100cad3e2fcf9cad198a2bc3e9ea834e289745896c67cc1820db2c2b29044560d633653d749419a7cae972914e289fb74d60302047c435bb500683066023100f487f467c9d9c2d4de48bf553f0df5eb758d089b0c78df5692d43cf11ea25ae8dce2c1333a1f55dd07a0f53464ea0024023100d6dd1a1a3469c4ca851ecc74a739fed7e5b6ad2a2c2b4970ab5a5ce0d20f390b5c85a0f0711a715dd64b41409d6335100302047c435bb500663064023005567ef72cdc697f66eb3b66658c7b73755f5ee6eef8a6da92b30815e62e04ff46d6a603d6c10ae720dfceab70277f7102307ba8546230098eb15be0c248bacfa131cee41fcb43c2b9fce564da23d860e65ed8b1dba42507606558dc60216c7c6c650302047c435bb500673065023100cefa14031333a508dbab466460cb4e0d63a1e453f8080536f5bda63c8fca1151ffbe803a3d7545a7c3610273c20edb7302306db9abd2b07375620cfb672ecff093ef8f5b5cd5deab4f90a9e844104e52f4b467d1bda60187d5c710195122f97afddd0302047c435bb500673065023075b9b042a96a89c6a958051d90c31e05fd98ce7a70aa304934ebf75803e2a880a014f00fb81bfb8f206333e3c0b1962c023100fef169e7612510ea17f40517715a6d11c07402196dbbe569742d265b164b123719f808eba01706937a9309067e8c9e820302047c435bb50067306502310092d12c729f244c16c9bd2d63a71975e6803b94db4fab4173291c977224db005bf45a1119bf20e9b8fc3b4a142e7871e10230238956171027f313c70a849cfbbaa11d3b989e42cdc2f4d67907992c3585dde5d87cb1e8b836994fb1ce2abc66f3f5d90302047c435bb500673065023100c28235411666108ca6ac97245d0876cc333870793132fb7923bef6f1255a46756d7f0e767cc13bfcd38605b67c2c53c0023020045953a23e6b38dc2857da183c1637f3b59c97a15d4df3145c7a28aed4dbd3e5faac9a6cc6b433f05e8cdf1349ab7d0302047c435bb500673065023034a880cd451eb1fd8a1f58219e752e3f3353f96ed3204945900b2e275527e45d70245c47e154f7fd5e50b6782c999be902310091f5d72e6f64aed9b68913fc7b3f93b7898ce8f4a3be5c90578a9323ad55bf7f2e84cf9cabeebde62bacd6f0e44a9a7a0302047c435bb500673065023023a71d597c6a37a6ec90cb2dc104af358f661fb0a3ba48239beab1a7efd765dbb81eb46789c882a3515dde7a57831714023100ac77511a35313c2499eed3068ad709aeddbe7986eab6c00912cf4b8fd44058d8d4b7d6125e362be4ad133848b9dfca150302047c435bb5006730650230740c07315cab41f857eb3828b6a52b90b06bf9d22e078e7b39826657f7ab1c0adfe6f7fbe93a25cb27f291c8dff59ea702310086f4b3c6029a57860dcf5a77d77ca4824ea41ce984a1363b11f3b5ad67b48aa8ef37f997c3d14898569d3596cf68b0470302047c435bb500683066023100ab2c49aa53048a4a4c54b18147a233b24d3967374ea6c721ed49fc31d5e859d2b81eaa332a7e637d88603626ebe283d2023100809d8c732f4b7eebd36a720166186d71be95ff240edb2212ca6e5b82ff5e796679101c25f746f6515e4fb17b363beb480302047c435bb5006630640230121aa9245536fb44f890da7b21010242d7c397037ab4ec0bb164003daad42cdd33f213c225b09075ea771f1f210da11602303e0a27ff62ddfa680e2b3f28e43e3b9b6deed23b19f3237fdb67d61ade938d15ba3f876e96c38a34b569c6674dd262830302047c435bb500683066023100867a5431a3a51fe2e24e7aa73d173f39755b7ddfef3193744589e9e25adb9c65c5fbe6faababe36be0b861d3b3546c9c023100ca9da539925d9dfd3d1144c0a8c597bf7ea8125073521f4e07b6a625a249ec7dd7352442916ea82eb6b3489895602bb20302047c435bb500673065023100dbd0fb5d00cdda6506cf46d1a114d156647f5972e3d6e637905d04763b210cfd289b0e4f961a0fd8a073e40d48bf2ff4023039a2935ce90a1c22d2db3e7489c32e98b9617fbce6c49adeaf21f8c6604f16da5ac62cca200b319124b0cf3b65aa0a700302047c435bb50067306502303a9541f9f537d2e55863019fdac66235b7495fa53cc6f3af1a8c34e2d2f529f15435093c0697ede35b024e9500987b0b023100c1ff08a9a30be5eeaa3b1a3439af87167cddad3c3bfe6849bb606a8f029ed9c917fec5086d1887a4113e15e1e3b960510302047c435bb500683066023100ff44f7ddcb3a3b79b0bae81382c331a88f2fe76502487c363c30a87116fe873a53d8d4f26fb40de9c15cabc5b9b0b115023100951f41dfdea83445e13b6bc03f78363b58949d29bdf75d2db2232dd4de94d793d1860114c5a3d8b59ee38c84a50ffc140302047c435bb500673065023079edeb3ca4f9a0cbd57050b96db25e43f2ecb9435dd2ea760feaa7a72a4c89fe242f745d4ebbc281b5a78ae751ebba0c023100fabc2ca8cd41964f88f5b309ed8874181bead42d4cdbbc73ffa35575f8e2f829c0fcb4f448b66fcfde0a19ad053247400302047c435bb500673065023100d68d08829246d8cdbd12a864d5cf62cffbffeb8e98da152eee0e8ae2598865e5d45ccc8a1930faa7ab940e11a95ef42602303bb1a241c6b5bee99c296d0d584a7c2c4ad64cf58f24bb0db9dae0e8cf9872cd04cd14c95a22dfb9c68b79e447f237bd0302047c435bb50067306502310093841123f3123c85d15132a0bf147787cd302a2b37c424d2ed4ff78b8a2faf811489dbc9b87c2e54677e3adbb8f6ab1702300d67f0a14d6a382436c49958cd02c9d44bdf0282947d44335161f0d4a3a44fb36324be3f85b3b49240decd98befddb550302047c435bb500663064023027565ee808cc21e9b78b2a5da1b3e0b664bb9b7b3f86c5a9f892b6a05e7929e450698bb9d6d21cc6100da9a2b9cc6d0402301288a9a5182c0bd5d049e3f8bd960f9face86c9fe7ebacd0eb0798e6a4099cd1228fad38d0bd24511c2e78985f25f51d0302047c435bb500673065023100818877b964e61298c34b9ef77f5cd0812bc54b551c515438db08d807c0dccd6b90d40abdfb878f45f04f67d966ee4c3502304e10ca28cdcd87df14e4c9d0551053520f6052c1cd159c830b478aa90815858fd6f3f0373605e51ac1eee56ded4730490302047c435bb500673065023100a72e08ab9f96d04a21b1bddae4cf6a9f9dc520024b6527e713796c77a33c4041b55837efe502fd76af80eae2d291231302303548e9afc892306f0d72f3be3236f554fb235336b998d3561c1240c6f115bf62eb4e3e3b45be4421db5d86761da4a05a0302047c435bb500683066023100a0ca53da1387d4bfb13424c59f6a45002946f9ac226d804ff2196aa20ebb98679b51d968967e7218bc7ea9b9876b2f1e023100cd67032fe41c9825581f4e7db34f7284c3256c48d262fc35687a5f2a74c3a8350f34a3448ff7304c83d2276d56c8a1ae0302047c435bb500683066023100ff0d25ec8cdeee3af557e07092820d0119fb90f1e5858ccde65992928876c9e45877dab88115da2827efd367faf3bb0c023100cacde6cd7d0bae2fff67222c68aeb6d9c4ec09a8a20a85399f10d21daa4030bdd36bf4acd97e2b063c748bc06b9ce8ce0302047c435bb5006730650231008322b96e5d528dcc2c9f88670ef8891621c52bcd84709bf3651fc30f8fe63a43d859db0094a5ca251d935b5ee96fa7d702304cf3ccc003584bf0839d16d3e4b03aa9d0e700a9cad702141b5f14a631d0e209b11b2e20a4bef40475515644dc71f51f0302047c435bb500683066023100c5d1276a04b3a52be6d8c3f1eadc9ca9dc209e5fc671a540cbf806ba3b4c12d1efe3d12394718d5f8eb1db438fe21174023100bf3cb215921086b03b3b25fcf09fecb4a190517c94765ebee46a8eb987ac1eece7fd4db403c0184956252653c834b6f80302047c435bb5006730650231009a70a2d602519f612c2f07f99a5b26487a27abae895e5b8d86cf8a9e9fcc932c67af58475707d939676ca4de5287c47f02302ef7e81b9ae3db55944fddb371e7ca60f665ddd93901a8b58eebed99381883a7c52f82a434def04fa970dd9630f3cce10302047c435bb50067306502301edfbda552b758f7f7a79b5442729f4fe079f688b93feda60387d78c82a472548434f036a5924d444646759b3fcc6f4e023100dc0dad3ff8ab98561c9a3e12c78de093f019db371eb47a9a8f779f7d6aa2aaa50046a95adf07a27c2eba72f4317eed190302047c435bb50067306502304b337381afe8018ff69e775aef4192f51f7d6b63f28694da2b04ea7457383975de349a114ad6cd33155dd0753721481502310080f81c03249e83d927b7f69bc3fbad2bd6e90bbda9e673b89bd1b27a0be00ef0f1366cc605faeec66204e5aa1a25f0df0302047c435bb50067306502310089b7ffd6bd59c168e0f718b12afee3d8d65ed65a26bc55fe386120da8090bf97d700a79bd1629debd8f348f199cf0b5f02306b651780398758099cca213f78115f11d9afb70f2715f027a7c9c6f09b04d4d228edfcfe775725e0b9134248170587960302047c435bb500663064023016ff8409c63bd8ef02876e6094dbf4187509f94ac27d35bb0a693869e42049ce07112ae6adb22f9c0f46eff97fb8b6fc02302b3cf5aa81eda924f6a99b026e4b8dbceef2c5f07c5a0ba3046e4bcc8d99a2952cd342f98de57778dc600a456a8eb79b0302047c435bb500673065023100e2b42af5067ba500a617af9215e4e729b40e5709ed42604bfee8b90724ef616326779a8e32def0b74ba84cbdf8c9571f023006051d1ad642c2069f00588aa36dacaedbae6a04c87b20b5651bb5b96251435823a6578c01d0a00f94a11b1a4af43bb80302047c435bb500683066023100c025022a3ddb6892bbbdcbe2db785a9bdb1bee842e2845afc679a5eb7de4cb7bdf6385bb6262090b82b5b82b24ed7a08023100a6ae4374ce56a003005c4da077c0cccfe4eb28f43bbe74b46bf9f51e9a4ca4bd611cbb3025aeaec80c6efed29c80fc790302047c435bb5006630640230261e0ffeba4c8ec462b57ace22a3864c959ca6712499635b3455b22e4fcff2925ae165c2ab985b8705ba6eaff8d5703602303bec47668bd0c4324c7b92b244bb6a33b50fad526ae3981d4b2fb0032f1a94232f261f704ac7d632e50107aa8ca3b2940302047c435bb50066306402300841ee74a8f3945b7e1b5918aeabb5600a39bd1c00f8fe9b6c9937039bb96e3da916d66f7c85c16ec47ae267886397e202307f5b24c429c286476ea19ec7d72b29b10140aada63dde60dbc647d95061ddbf33ea176ed661e6a6d002d561ab15b49630302047c435bb50066306402301cd87ea4a7c3919d71be9d0d6d2314c63bf75172da1dda83903bc96492bdd3c2604df93dd5ca3ba19c25f7c187d1afa502301a974d3712b7df5ea879e2464a410211e19daf3253da2e489ae201a084e2ced2e763c3b50e423414f76aec7788b77adb0302047c435bb5006730650230690aab3d0fe5b05ae4ac0714c9bb2ec23d4a6443a18c5cc5ac376102aa89dd47a69dab1a61210cf91ca70acfd7619ddb023100b4706a89e06ba5f8901c08a8ec84ef31e2d5252fcf4fd787414d9c48783e1c3c5d0cb74fa21bf9cb200958f07ad7fb160302047c435bb500683066023100e9f444cf9477dd5ece6c077e65c31a82e266b1825503057a4d46c3902966ec136935895861c23719afdd638184c89225023100a89ca3a3f61592215046d1d4175dedf794b98ac7fae60016252775b2996cb50ce20d6c3472486e6ad00bd88b1e94e6a40302047c435bb500673065023100800528460a44ce6b98cddb266ffb6e1266e52b006818025fe7cc05ddde992d44165419131e7de4dd37572e2f72fe63ae02300efa96a43a2081e2057dbfc5fcbcf548189f0872eb4d1bb9b44be454c485d913d19079bd08dc095635c276b6f1c893450302047c435bb500673065023100f0a4b64247380e40ff54ad4916f579bd661625d8007c6f5575438fb46b4077fbadfabf7864c674570c9d7d14abcb5dad023014d16e32f952e21e8e6838f956480ed5485066cdf6d784a35017a2a23d0e2af21d68ca56164bf4381246c913df6c571d0302047c435bb50067306502303187a15e7c3ed8e5b77fa8687b4430777e4f2c5ef9249f6f32c7eee1d92ed8640dee3488b99ba9d4eb3fcd966a8d8f69023100ecdff49dd7803a81fa5a3817582cdefa816bc646773850dc6dc3536153882c450c9a3a28e366cc551c40af7208b76a040302047c435bb50068306602310099947c3a7c5a3ea1ef49c1911d844d22150a3b1b9cde02180a5a7760142c25a2e0a228018c5f9e59a0e35c2e64316091023100fa95ecb96ae98e93fc47ecc1752066473312ed7005f7c6b70488387e7ea37688309a3b28f7b75a5f2c779b560a73ea190302047c435bb500683066023100f1b399b959e48b893f246f313514fa4097d2d98ddcae46df67137b830ee18d4e258a059ce497520a1fbded580730971a023100949525156e7d1eaa4b2009778186fa772f0c96ad93c6f53fdb09ee2bcdb814705443ebafceddfcea6b31f5f3a4c951420302047c435bb500663064023022628d12a2455900c317394e809e84da10cb95807171eb7632fda45c3d3511fd89737b1fbcc844d8ddc5f5617836d430023045d7e0ed58d81e1451748f03b2b5848f0e602f93790fb876ced10226b25e71471ad65cc9b3a58275ff9c705b0feebdb60302047c435bb500673065023100e5e8cac038a9ae586f9a059d6763467bdc5f5be1fad5aa1f747437c9c5b4510cea8050f537530dec6b283f018423c18202302c8299ceb591639236a7eb1f4ed0d713511e5d41035ed3244d6b20aa397c8156027b57dd7f27da3f9f47cee29fc6248e0302047c435bb500663064023004085681dd38a668160fcc0f26d8bcaf73037985e720cd8503f84ecab3b347db3371e47ffaacb6d731198ad862c6884f023069ccae4fb2e2c402dc1eebcb17f83854053b49c14b41e0e3a3e0051f2c58bca2149c3ee9963011d074698cbe15db97710302047c435bb500673065023100c5e6ffeada6028aba6167538fd2183a33325f4ca4cfc7536eabcb7fa2aee2cc2f32f918dcf63b4cf37bc691e8854aa45023031bdaca7b789e57a2ee91e39c89e693a7f9efd88b2f5a507e4a4d87e74560dc16b5faf57e6f31c4f9723439bdcbd30000302047c435bb50068306602310087e5c6ce7ff636091b18adb2d691e5045edc3bd387392e46b35fbfacef732bbee4d1ea543377455e0098111217bfdf6d023100bd544fa9fd4ee6e29055883f79d212bab557565e94bd0d3fd7678de46163e3d9208460fa6c7142bdf4fc526616d8a8d90302047c435bb5006730650230676abb41db4969d6176375088ac14c3f212e3cc88d967370a01d9266b7a39a22293c26466d59e00f8bb4717a71118ea302310095fa52a8ca9b328395e49ea18ed9cb58d88be775cf471851f56e82adec45b7f56037cd0fcad7159fd4cef07fd415803c0302047c435bb500683066023100ea0fee19cad1b8e2ec03067fb742bcd00ef1f4db2f3693c0bdde16ac4fe65dc65a97d72280c1408400d4f1a56bfbb39b023100de926ddca063a606397ec3cb01fb85f3823070092c55208fd77bc14e2fa299408911e4f42a82fdf654b7fc04186691060302047c435bb5006730650230495759d5842fd8189355c5272a9876026b6d29be79c92b92a5e7b69dea68f67d0acb912bcef75c39dbd6c8c76da6695d023100e4e789638359346d9913232d7326a666a08ef427c9e55dc706a8719d1121e3703fbfa4a0515a4a5fc64411f34295413d0302047c435bb50068306602310094eca5ad0acac2c32247db80c2fccb7476e505a99b9961e355f084d7e39ab221ce25cace87b842af8145b6f596dd5793023100cb45de9a2ab9a9292816ab5d48194be0c7196a22775a793b35dd34d71c49d12c90d55c937e422bfdf8b997a63fcdc86f0302047c435bb50066306402305ab4b4028200bd248b3988aeac93b9d85914e1650a3fc8fadb2c0ef30f1a48f3dac1f609cb85138dfb6b3a3874b714b802305b2bed26087288b14884d53a266b8b0ba046aaa5062c0cd998563b1271fee090801d1e1e21d470e5b52dcf0d7cc43f390302047c435bb500663064023016b2b34bf9de40247f5cfbd2ce71b755cedb7d702eee2caa83c3ead36355b5bdc936a1380461b6c42eadf6cf461ca2fa0230119e676c14b3ba55914ab71efcb7b574f59df85e80c4c8da2b643ed0438ccecfae2232ba96707f31b322c2a6eb77b6790302047c435bb500683066023100960b79b3860fe1c9e5302314fdd80a2e9cca197dcd387a6b79409e3c9f78fff3108489eb16331b284fd530515b682d0e023100b699fe54e7b344ba081a894aba0a75749920c2118f75116a20b5259bf3ae2fc50c2d2eeb98663c6d84e763f92c15e0370302047c435bb500673065023100f958420096413ae29c90f18231cd10f8fed3b0b33932ce0c7945e5bf3590e00f761bf3ba65437a9def688ff5aab989f4023074906399b66a9a4b071d352050a18608b7032b85bbb9e131bedb83c37fd7069d37df08a5efe9fce67f0d53583a1af5ce0302047c435bb5006630640230545183635d8c52233780a5ec9bb7a0f35ef826a605d0d03b3ab43bdf47173b9e6208c94466a986ccb9573c24b0d63947023072867db3253e4b61afb603a7134a951898308aed6d0fdcba404c4286f70b839a92b78cc92d0994e00887b4aee1b1f3780302047c435bb500683066023100fcf01f9a16d890e163e0fd81b574fb58de302d7891c338641eee3737865c9da22f4fe33ae0374d537c78f383b76f49fc0231008bfe2bf554f4c05d08d0022299606be3768afbc70de2edf691305138b58f956e8809363c7aea6e902a6028f3aab29a980302047c435bb50066306402300c98c1bea63c9024ab9d00c868e9b9b938f3019dcccd10ec990a91b552dbcd63fd4117e52220b8b91b3f7fe3d4d5db5d023061ad1ab60592917ce2114c6effeff6415a64fd25cda56a313dc0586a6e381bd45381c03e43c8c04e706afd81641714c80302047c435bb500663064023048cf0f6c491dab96c52be5e4da53ab5945e1b96bb10005f97a716a0f492cb0e5c8b6e9bcf3b9704608605f917c541a3c023055446c057e5cac29d6edd42cbe388442efac5fbd610a3655c6d513b1a325c2dd98bdc42d4de0d94e5297bbe774d834980302047c435bb500673065023100acf2bd617ac616cb286d376e33ecb337e8c3f21219c255b13c4e75deb749d949e74a4135a324e34e3e12f2d7d26ca52f02304b48b3a94c93edb2941d5474b75b6d5743d7cca83a56404d3b061334de012fb46adacca8d299e34e98a46277fb592e4e0302047c435bb50066306402302047437c974fc92cb3f1936a80116085811a027eac399e234cf795dcdeb64021bf6481f58009f7cefcb975a1c0c10a6502301d885283111eef9fdacd7fc942eacf927fa20e211029db8ecf46f030aa9309dd48205fc75d19f058175aa4e7cb2376a80302047c435bb500673065023100dde66df8b9ffad9ba4d7340eeeece521f5f969bab55064d37b9296f037bd3b73320abfc6ff7d05c0fbd1446603e62ea50230658ba718469d64f01442d4a63d672544f5ce1f2769472f85dde9595b9689537569a712460212eec11e98cc03ed09e01b0302047c435bb500673065023100ba770cfe2351e19ee197cd60c0cd303cd0b129832f30201d4b67a678f5ce2cb698373508c05afc746050b994f83adab802300e66e03ffb59a65dae90cd0b32d3311ff934ad0677c4a197bcbe6825a9e4721b6e6100d843b821e372cbade2803223970302047c435bb500673065023100f117d42797f65301172b7ae4a589ebf07f051a9743c027af94965e3055984c8898e40f56eac0776403bec972ef2e5856023062e201c9ab57af079a6b9ef9b1727b04514bde2b0f1d27045103c98847a94dba0f0f55117ea6f14927412ccc2c94d10c0302047c435bb50067306502304da6e16830a55d648d878c049e21202f9bf6880146271501a0d61983b88eda91970f644b4dea3ebbc6f2f12c71ca386302310086839455c6cdb6b414a5f9632bb44d97c4b8ac3fe563a0dfdba46add5f4cf743b0ebe9b778caa333e738416a3d765c1a0302047c435bb500663064023075d705e611d3a51568f9a4c0f26956837dce40872a8baa9d95ea42215cd1b3bd3672dd38914ea65c13a7324224f4171402305852ffe6ab652138678ec6933f0af4ec32b72891ef16a1e33bdbe8b5ed08165baa9713e24d33935c3a973c3055a55c400302047c435bb5006830660231008416b3a1f09d21103ee4fbb3cf5bfad8437c706be6f2a7cd74568a3c3b8302189679c78f44062f368cf8c74084467aac023100deb1c7eb98b0c18551f35a20894c9c17374fb77eca9c96fa9819d214a2310b98044b8fa7a828072951a7eccaa189c9e10302047c435bb500663064023041d8744c347c2578fdd2324625213ed5d4096d38025bff9c84b2634ebd301d28fa4ad845bc8c7544c630df855d92bf89023040cd6731e180b0c63653c8ede4dc5706b4c388b10746f5ac3cc61f4d0b9ce86c90691accc3e7aca22a43caba5acc54fb0302047c435bb50066306402307bae1f1925aa00586c9e96adc5216449a87db5e4fa02aa0b4fa1d88aca4c32a4f1227af32188cf5cd1b06ef1fc7da6c4023043d849f65168fb7d7aa9019443e9025a5110dd1ab2a899272296f422dd3a39e31b0744e302591c459ea4d503039326720302047c435bb500663064023057de2ca47d9d48067e63b9fd772e4ce9c8024ccb9469fbd68b3126bca02dc1e78fff2b1147f25405c2f168aa8f4bc99a02303d04f94822103fa638b6d6b406b407cfed03cfcfdf10d9fc0beab091b2585445646d3d359e4e716d9995a1c0cd6e6a360302047c435bb500683066023100c9b55fdc0b63f62ac95b603a4a2776c8978f9408b33d1da304c5525364aea9958c4aed1c7b8beaae3e6d82f5acd4c6880231008dee1cd4067fc12d0d3933bd768a23b0c6faf4bc924b1c294e1c8d9ce5699b20ccfaaab68a91276c6577646fa665c6860302047c435bb500683066023100807957fcf0704b05989534d5295a72ed60619803038f05b08dab8ee273f404d83242635d9ad4c533dcf2c8481a4a2b5f023100f131c18cbfc0c7f9caba03675342bdd1981cdf28e2ab07aaa645c9a8a4bd563846c8e87018bbacb762a3e4acbd9ea4060302047c435bb50067306502303d8e32849f01dbd8fe23faf630e1396cbce01d6580fc5f815070b49988ec390aa11d59161c07042c172f56388ac2534a023100e8882be793996ee6d5969126781a7a625a981b0fded8264880ea9e7843cf0939c0b5b21b8d611112cd74d9a46161456e0302047c435bb5006630640230468a8837c3193175424d0288ea1d0fb298aae4fd4fe4ca0a3e6f6c0b63ef72651c8d1a3dc7c5cb9ecbe01b310d51ef6b02303c463562bb779c3c9a8c8fec531af32248a2457778ec8a0da8a9008befc3407d2fda9d87c039845835f92ab79b4428800302047c435bb500683066023100ce7a14583e55e970959b6414071e534017b58706b4acc7a20a19efc66574998c9431316c0407f3e71b4d7f5154d33d32023100d1d4fecd468a6e1343bcfe3fbae357aaf86eb819823cdb3d4580befc9ee670b3461bc68d9a34758856588280883e638d0302047c435bb500673065023100838fad7fd60a34b21816f74c5196dce3c143c9ec6a2d89e0480f5687ee3d2a6202127474ff0338d65799cec38aa6bae702305981525b90b2c62b21fc8150f9917ee2cb20d6cc583eb938d75154691579680a2d3c3892f266dccdbecfb36db47b23380302047c435bb50066306402300444477967ce0025e65d90aa467919f2006a2ce83602a7cf3895d8625f57f85a0bf2b94b1f53d3c7cabb0ffc161ffbad0230409e5c9e7ff56957be02a6a939cebe40678360f21e844b4b66043b7e4be087c48e6093bb5545c892c39b02b9c1a905460302047c435bb500683066023100de80639d13cd5b8a67274f9674c746fc605a281b5c5b03b2d9f9b678aa58839786fd9374b49717686d930b892f6e9796023100a340e183c8797d7a328a79ca169e6a1a29f8be77c7c5f97355b7242ff3d13bd2b401c48333284f085ba8b0128dfc9fc60302047c435bb500683066023100d67fd7a1cae0592470d26e20ff2967fb3d4fac00aa1a297bc0dec34d7e6a52a12e6c1bd358c4047d7edef07fdcdf1335023100e8af3e97c636055904d19a3a10ac58fc521bdec59a80cdacd811b38c0ed9bfca7de14bdbcda4e1e5fbb09fe4a2d79ba40302047c435bb500683066023100fa76de6c74ffae20fb3fcf6c4d425aee99e0eecd6ab0fcff75e34d10407d8fcfd6e1ae1dd9a4f31e0329d29eec1b611f023100bf207a43b8e415b1f4ea2c0ba04e1a26f5238c2d358f3f9d942f01832bd788f22b74f0411aa1698a0c265e158f2536a60302047c435bb500683066023100c538be7e5b6934faba1883cce32e0b4a900a4205140f648d9f037534517d7eae46164e4ed0002a9d2977f1e685eb4a84023100e0f184b1820bc032e6d5207f5b817b734d60f4840051ae7973d5cb6d442453d9fd7ab877ed237fa226e9f1e5467bd7160302047c435bb5006730650230418d35fae7e139423b9235ff571611411c8c107af6cb070d4426ad779c021eb54f894b4a07ce6412ac19436eae552ce6023100abb9a3464caa21ed0fd6febc3e2b925b4f8b75ae2020fe24fe478bb62d799e04eed6b3aebf0823ca173b377923689c140302047c435bb500673065023100c03711ac8518d0c2a393f70a20785d390a42542a2e6ac69257222827695da1c6811c87fab6d1bd34944420f3bdba91f3023004d4b6e9b8fce23f31935fc959e3d84ff6a798bcd589c8a02a183d2bbd37e19f5d3bced3b96e4d2e4afd4cebe8d757dd0302047c435bb5006730650231008c2c1748154085bae656c1afe320a4572691b6bd1b0896fd554c96f68b639859eb73f90bf20fb9e987705bc79297b747023003ede8c92e02f1913a50609bdf35bd4221a0bbcc5903c639aaf63023e8aa425a8b4a11fbaf0aa0654a098e69c7d7fcd40302047c435bb5006730650230184e705d54ad5f256e004a8f44ab4d14585866bf0c8ae00fc45485b84630a91ae4f3abc894e473fa074cf93b48b2921d023100f5f02188059f1850d4a7beabc0447b04dea3cb858f207fcc78d609a484e31b5762d367be7190376668bd38a3787e70b20302047c435bb500673065023100f45391c744bfc32b317b9af8b23dbd79e35bd665d26ce5c935ba7d4c5595588bcc77ac601a7f1161732223814facbbc6023003274ee75d3267814a2051eb28508a34d60f8d9d511efb7766fc401ed0e916f4fbfa383d621d711b9c47e639fea3ca390302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023025b0bb31dc06e66a41d68773d79f6a35fc2ebdb4b25ecfa8c2f4d5828e8b5472329fae2d3596ac3f2a5567f4c86c637a023048b25b3f6809709ee11d43cb2aa87830fab638843dc0d30f731baca714654f0144644f0d874bb6f1374a626900fbe3e30302047c435bb5006830660231008d95a023d68f39302244b70880816d246c81a4987c0a6b0865f759e82cd014337b5f60c437655c66e4142d708cabdb4e023100cf9a3a087c8dea37e85206e79f104afc57c7d519ae76aba3fdc0b1d14eca1dbd742ed619765032c768f9240e267099940302047c435bb500683066023100b03cc74fd9af21d0ece69123b63d43da9309012a1717943ba4275675c66a263d9df1132cd005a7e86fa7df5bb70fcdbd02310082e1dfaa18528a4401e765c9930d342ce5ea11509a665d7268e9e6de941e7d75b191142d8e084d89940d6c01ae09cacf0302047c435bb500683066023100d862d07f21bf7209ae407851f8d3fa478cace4a2a55d7f37d32ea8f63ad8480a257cafc76faa5de2af221119f707121a02310082958e85b0e8e3ccc46b0b24ed428b9a37805ab28385f96abd011c881b84ebf6977cc8ebb4a42e416a7e7278557be10b0302047c435bb500663064023027ac96f0135f0793b9a729d545f1b4a5741cca6f1941a179d91751350cc577b11a44c2d8ba181ea5211b802d1135b2350230584964d96ed30c7ae1caf52fd84e37aeae6cbde8f8126cbc1c5630212d2b1f4caf827146988493dea05d69faa4bcd3420302047c435bb500673065023038f5cea492acf56718cad04528e3ec9604bc444a8f0ec2f6e39bd2c8597d48388392966cfd4bb2faeab8d76bab1fc5fa023100cb617513d36ab7001c5258354d35fb9edcf844e9386136a36fd68852fe593357ddfd6734c97eaed75452850ee24c3fb20302047c435bb5006630640230510159218dcd8e881ee3c1dd3fc4be9c15b6294af8e012cd1b56ae629d6870916e733fbb7e31ec45265cf7d8db293c21023002bc327418945dd48fc13b33e0045ef8f6225a7066dbab813215413e30501abf6e100e70f651d79f47c0e1ce91a442560302047c435bb5006630640230523be14ff688c7057054e04fc96906eb723fbb6f90ace71394c8b148c599a9e92eecbe9fd54e656cf9a21561f0c687d00230111ce28d4dc7f74aed2988067bcd0df82cc5d9040440260777fffcda57c31105ff26eaef78edce1c028e38c1f344578c0302047c435bb500663064023063ed969c9c11df6abfddcfd10708cdfb9cd377ea2e3d55dfea46c9c2b2365785eec5f0ba37662b2e0e4c6d523aefc83802307b5005f24e11989e0c64a98f93322ffd0115d3e9aff2f1d8e4868341e484d00ff8b888599eff89a132bd6159c9a6e01b0302047c435bb5006730650231008af4068a5e69c79079ffaebde654c2bbdadc0414ffda13dfb3f5bb1e688df518746cdb6c3b9ebe62ad49cf5ed1b81f55023021dc7a54b2ebc89e722f2b1dec6be43e23b92dade432a3bbbf3dcfa765cae77ee24f5d903133172721db5dfdf66840510302047c435bb5006630640230482fcf5b9b593e8ded776395614197e057ab68dd742c64948786b7c41557a9ee00c4e6e350f8087077f26187c4833f3c02301d3d4bb49eb2e811c62050b187f6e9fa567a552511adac3f974e542f836780d1637d0ac87e4faaca8a0fe32dd2857fee0302047c435bb500673065023100f18ce19c19fb2456bb5c8215e1d572934d5c2fd1eabb32bd64602e6aec0bce68d03ca258ae91d81e64f4218e23bbbb3c023012000bbec169f500595156f1f0b47d4f7bb31efeb6ac90cc765a862b49d53cec0fcf68fa0e19b5dea8f972b9e0f21e4b0302047c435bb500683066023100bfd9b32d4365f0e6b6158fb6692f92d3619b76e8c39d074ef232ba1f9fbf383f4480ff6f6046c22b3429721b7934c50a023100d6eea78e0b8f871d503e4d0fd47f5f084f07422df2c503c2330b60a800a326aa802ea0ec5a725beb50bd141ae6a6fa080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300bb5439e225df6328efb154d8bbaace5704e7163821cd4f6de3b961605408dcfb7028d0d582e0fe744aead8283f7644a0231009c054b3d124792862dbb5252b4130b4bfe17dfbec860ed2ba480dd6ddc445106914f547a5d7d2ae4a746a3de878c86c50302047c435bb500683066023100c04018749779ea4014a210e7af3045d90fe2cc7c44564a82a75037e9fda3f5d6d5afdea68c5c5d85394b219e7deace76023100c0d39f4e817affcc9bfec106640e1afc195bcd43527fb38b5c085f68e779e113a404c4083654352d5c2caf79c51a68050302047c435bb500673065023052966144a944296a15c354f2e16d9bbf6f6114b25899845dd4882538a8d18501502e9bd6c9c82d58a9d34ffcde467cb70231008842090e664534901927e7f009dc19dc1bdf5cdc2471df79f7a950e5c87f5534191e8878a36038b81860828035537c300302047c435bb5006730650230562a3ff5e21acb974680bc71c01e40921601ad6a3c8bb25c370fa5c8d74dfacb87e7a192b5836ca0387704eab97affdc023100b7a06b2e071fb3d0032b239cb3f540f4a9ee444f43edda476483a8ae85763ac5b781c11bcdfe6faaad34d70a349734280302047c435bb500683066023100ade9e661d6015e5b4ffd447de454a8a9fb6d9f564390ff3feb89d37d7e182e2707766a8947752b803ceb7afe2ca9702602310090ac4fb3358443fc29bade6f545eaf1cb7627075f0359da22b9adb78ebaa52be6c7e6af71e8633a95f6af511aa02ac490302047c435bb50066306402303f07cc43b7b64aa837d1b49936f9110081ee793b4fe368c38138fae3973475958b1149f35d7362783f3fe2ad3d3d7472023041c8c184e4ea667d90d3e59552d9d8ae110406120cf643ff50b075f92de639de7023bb92c3db9045d4a4745ca8e4200f0302047c435bb5006730650231008b54161dc814f2733ea9eb65fda4bff748a8d442c591ccf90406ea9060fcdb9cf5a92aaa26df2d78c22d212a7ab050a302300148d374cd7208bc5a53538e03dc052d5488f9176a9358ac3be5201dfaa948c4fb22574b164d5d065bc29815b51b953b0302047c435bb50066306402307f9b2ccb8329b77eecd326af6458b525a3fc6d19ccc713e6629a9dbb2d4c289633e935529e44db3f526a322908417c8f02307ff111b31ded57035909be8939ab50e703ed29f796a617930f08abcc6c408c0bca8d218d758116af63178938b11f70e00302047c435bb500673065023100d1d76e96d17b4c5fa499eb4d50c71703318958c6cc3f44817a1112aa4d6d43a1ebe0f5ab38e2ea9786787272d8448cab0230563a192b55e1a04c4363ffddc8c6fb441648ae4e02849af8d6aadef13657fc452fccf089f0bc4ec7389a3f570b1226e50302047c435bb500663064023039d5e98062600aacb81d8f337b535b89444fba5748ebada3f64348139b033f45f10ed874ba9b12d0feae5116504f1127023067cab69a1b2d94e492850ab630ad8286c2db2b4f79858ba8be80dcaa54241354779aa7ed35d2e4af4859863e8a62ac550302047c435bb50067306502302c658dc107225376ad57866168d413739bb50b012a99c3a0fc1c3894c49a64be411bb3094fdebe4daded94c973b708fa023100aa188df86b748479cb52ca957d9e2c3b0ed93ddf3e07030f0d799a37a99f43a841b01d92125c829d08678dbda62855290302047c435bb500683066023100ebad29d8dcc6087cb24c3d575bf21085194ebe831c4d61c727351a89790eba8f05d23fdef293f0455b1ec7160de2088f023100bac8c551ad96e3055a9cad68d8cee9afa124cf85b3eaf7d8255e478c55160eef21902030f6365042729aceb361051c8f0302047c435bb5006730650231008b9108ed47662dd2739529c5939c8e5fbf1a5b5d72a317391f4cde632f3f1ca3b0632c0ed71aaf2a69fa6da6e612e32202300f19059006d4827b187a096e170dd427a5310a2a96993014a2576018206a1ae45d35f86b3c4664490944da217a31d1af0302047c435bb500673065023100deedb8f5558d38681e9945259b594b0fee2a389bcdebbe329632a44788565fb067796e91a8a818ca7a5a379e9c8e3bc7023049d407a9f12b1967fa8708cdbcda12945e15836dbb68b38fb8cab4b2066986276b12ff46393bc72971caf7c1d9a332f00302047c435bb5006730650230064528c900ddfede97b7e1c144688a61ab32a6b8713317a0eae5f159096a48be8aeddb57d3947f2f727f9e388b5a7f05023100ec17fd3b0b98467f5136e4e04ff5efcf766f6b193c680050ede1aad34dd47669d442fc42809cc411db250080d1b6a5bb0302047c435bb500683066023100c4ea18c1af83036e12e9190c39c06f0576d3e7e7ce24f9acc9e763a1cac2bb1d88017e90230eef3ee65674ff1bdf7e7d0231008923b8b47b6d08e210c34b1aafb202faf063a2d4977c7bc2253fa65a838c51fc3f9d149e4cb954216ae787ffc692c2670302047c435bb50066306402301910507dbc2e9d0fa86a8f5892588d7ee3c8ed10d36bb57d544a52375c3bbbde27a213f15d817524c5307aef0f6356f30230555cbe1726d63074c92bc9de59190b7ddc267541f48cb55cc579986a7ea493889039a9343316d5160489b7455d1f06cc0302047c435bb500673065023100988e5d6ac820064c15e6ca1979c4e3b16a4dec14d6deb9226f0066c870befc1fa3082835d2d363e86e11db988f60d4df023023c648c3b077e5c2f8b94f569cb46bea49cf757100f1578ee823b13a233aafb9b9d888237207ddf9e1159a92e0dd4b110302047c435bb500673065023100ec43155f87a50388832df75d1cca4ac8e7cdba79fdb8eafac56a1c5ba8cf428a9eab4f690921e14c9031b3307585e928023074548f3d8824df27b3e298b0c7ecece3e3c91b478b51f8471a7d7a6ec13070f8e704cff21c65b77ce14c05b9a1d8ad6e0302047c435bb50067306502300a608f4cdde90af704bfa693b29e621490916a584049f9e3525b8caf86a8dcafaf6ead886290e03b71ba4da8501e10ac023100ffde87eafbfd26e7aea245800ec78fe39e3a1920afed2b010112d307c6c92c5bb1f80e73d69ab60b1ba766335149e00c0302047c435bb500673065023100b35f13f55cac01f036356002f846c0269e679de9d77e8c9de69227392a98bc08905eb432ad8fe0b884cb9b10243854ea023012577d243f5d0663a197a6690601d12c3d2659148e272134120ce882687ded339d9f76551e93dc984ae4b44e4059cc140302047c435bb500673065023052517f6821a3a42f13baa16f6d989534ffb9ecf36202165e37277d666e17c1d4db4449dc4f3f6dbd763904704e37f27b023100bf52583b2e0d393a99800cae106302224769cbcc5995eea3e578a9a38694a291e4bbfd6596550bdd8328ec6d3c4106e00302047c435bb500683066023100f570c0ed63ed2f5da1f53536a827ecc22ca53838d1488dabfe76c049dc581dbc6463d4e294c7b8625c7d62a177a3159702310096ac8191779182cb827f1997c25217247820bf5c6b8677b320a13d72d92e40cf3e742ae2f01b737d240613887c1a725e0302047c435bb500673065023100abad125cbca13da02907e930fa85a3fa0b557ed42611d7b67517fe930b5b601ed12694819155cdfdeb322221978ad5c202300b5219641a1810932b38b2b42d5bb2c0babeb98246a1927fbc46a2391afb991de5474ed1edbbf41298d9a824053345390302047c435bb500683066023100abb6b44933c6cef916a6f43e4277b095e923db327fb3d7ae2506a4ef708ffd1d4f82e5183bb47a4dcd35adbf61ba8e56023100d618cce025efbbcd4a4e8a20d5e642fc79ddc10c7a596a74b5f94488843c10f14a475432a9abc9b3f4d4cb5a2a00c1770302047c435bb500673065023022be871a31edb3019b54594cd3ff461f7d10cfbc593bd917f50e0ab0382a852d5178d1aa67c2f9d94c62eee20256d5d1023100c0689d07bcc2c7395c1ed83d5c218ad8bf574f85d7ac23a174e9bd388930e50c8092af262c246f52b874f79ddcbc8ca70302047c435bb500683066023100a585d09df97f40d89e87e0a6ed075daf67b4ed38774e93eace26c513483889bc0b82cd62be8b8da4ad1dbb62b5b75db6023100d2c9535eb65e2d7af5c452c3c65a5814d2b319cb07a6c19e6c571bdc60fd69b8ddb5c5d1e5832d35160ba841352836d50302047c435bb5006730650230504a883580ff89d5788d0ce749165fadb247acc46c9d0713d3cdea84583ba887019109039c22ac0a995e1ee63313614e023100a26bc4e32fe5ed04f6838c2403196d83a0d4ed9179d45dc8a6e0c75d0de930a76d835a95c161d219a126ea39b74c97270302047c435bb500683066023100e355de28fc63b4b2774d1cebf49c5aadeed3faae44b6aeee6a7e45d83e3ed0bcfcff02e5a38676531297ef6c2f992f2c02310094ad27d1c4bc79ad393269dd0f272918df1a5f8b4d0223613e7c132f098a07f6e26a1c47201e6147770ab85e8234eece0302047c435bb50066306402303c7c64c802a9446b74f01c932e24a59866c6222ca5cc6f915cb874393dd2b36d55185fadd9ae0ff80bf8df60b61c074d0230711caa15011e34e708df9f1a3c804a59aafba71366b765ac92a0af9bd74aab290be8075eaeadbae2a3589664aab369fb0302047c435bb500683066023100ebe307dbac4ecda8ea22c8c118ce27127837cf66c27bb22a5cca758d959387b0e88e8f959e19bba6c6f8cd6f557efac0023100d62ef2f2b1671a0736296937f236ffad3e814eac29850fa32e2d4febe8473a5b89e89d469bfb900486994a91966d187d0302047c435bb500683066023100d188140b543c7a70673347efefe2ee7f9a83790bd78130d939f8c2715f69100e8ab4e36baf449c30e820c36893fd3bd9023100994a3319203d47acaa1771f86990f223c2b6a876101370c062bd38ab5a156c1242e845b4955a9abe5bb6cd8fe74073780302047c435bb500683066023100f8585f8012ce4422218e37b51935cb73ef160801a228770cabfa613f54ac83cbaaeb7ee102ded9e2e463ea7d6d9a5585023100cff66104924aad7c9125a4dc2c1beaf6de11e258522cb088f8ae03cc8acf78415a2f2592b894c071e403e5f2678bf0c90302047c435bb50067306502305967c35c3f9bf7d0c13d50a115b9927adce639e3bd3a923f062222b5c40bc0f41c54b2ad99f6fcebe356ded521c210b4023100fa0948abbcd7cfe71641db708aba48e5d29adde1fa0d5c1074cf433eedbce5e79961c838cc5ffbc09072f6d4288079880302047c435bb50066306402303c6b080fbffd1fe1b924b7141352a57f5ca8752c7cba0554eff73212f0912eb19560f551a1942c3ccf7850d795798eb502305f2080448fc9da007ffb2a2b0660ea76fed4d1afd2db0d414fd1932f282b61b3738288d531035291526c70fda979c1510302047c435bb50067306502303b5dbc85a4e475b8a8569db82ab296ddf925e54c77c72acbc5f8a02d904c299517b9e6235ea28fdfcabab2c40f7bc756023100dc2df5afcf94f88ada6592e47d6f2d9f429ec0e57c60fde0b5ae5b77b138b6c064400056a08cdfd735810f1ff2343a850302047c435bb5006730650230431648875f9257b844056659067aa61877dd270c39b9027776113166967043c8f6a2d3848d24e0434e05d7e894792eb8023100ca9e18c8eb2766b25e25eec47f079ec2ed778038903dfd7e64a36bfbe2c2b729a1b26575925939ee65a71763d3f97d660302047c435bb50066306402306fede7a736c3c25048c686eb2b74ba4e91928901b5896c578c7c9d0718261adc2f531b67885dc0f349779800c2c2cab80230116d77b315ae6a6cc1469e4bd018d28a04744cca7acdc9ebed99ab4fa830a844c231c567e424c53dcc03d83dad0cd2b30302047c435bb50067306502310083177acce49c61a090144d66c6f4f7b8363ae94d603c797d0bb3b38bba1509d97c192531413513f60300ee8282602dbb0230708207aa0edf33db9a60df8be92610bc5798d48c0083e74606bac04bec7e8292e6caa4cc6f82d4ee9bbd4b6a92040bb70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305e5c97e369bb3b43b09136938fd3fc4896a7657eeb95679428ca2eed6b8b46dce310ee5ffe8e733b21f7eb2dd6b130820231009550d72cd60b27dc687c358d9b2d88a9a7947556397ce84d5f5d928dcc192499094a989269aa3733cdcd114d775ef42c0302047c435bb500673065023044054495e6d059c190a716100840bc949a2d7e2b108e4f05615c8cce61b4f4ec86b161e1cd5a115320a0819bafb86c2d023100a4012f2c720bc9f8c7bd276737e3bfce240b4b45331f2db48097c10e5ce484e495b0d65a0be7fbf5d6081c0a534c66110302047c435bb500683066023100f6036525ececa311c6a3d6b7f507754c0afd5ae14966f11336d92e809d24335391340727de89a7de0a37b3e561cfa16802310084dc43ab34f783df76b221119ab6bff624387e2746faefcdf07223afda980951449c9924dee0ba947673eafa423e5b280302047c435bb500683066023100bf81cb6d8315b2828fc32fc0c33583c952d35f0dd28c5289670f814db8a35d8078f1c741bba9175722adca51b4784fe102310088b3e20f5a8cc835e7363aafcaf7dc70f685275a157d80fc0d5b17eebd6d9c35ed9675d94c5dbfaaa2c3a9753d3522a50302047c435bb500673065023100cb0518a0d5a2c20214590e7da9cf2f164d0edb4eb9eaab8224e3a77c71bb6b0d95e46fac2e9f3a91d74cfe5400b29ec20230343dd3c4e8100fc558765c192b85a0bf0d4f0a9a058a9fdd1ffe9f4cc6be663d26c32bb895d033d4cc8784d9aeef89840302047c435bb50067306502302e587a3d236adb19c43c8643cc3fbdd29a3db4954d24f84540bbef8d5ba577d82cc8554fb8c0d233e5011cc9f0c5aa5002310094d573916512f5a5cdca1518b717921582689bc78d1f0fbdf740e1ac43464affe2393a98fd69f054a08e75feeff022e70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304cb4d87c51579d5a512ae83fd607505332036e606b7e5175a09af7ba9d20c6ff37d47b663efe8061155e373ae9d5a5ed023100db348a3f7ceabb623454aed983be23ec6686c5cd367353c43f187403778ec66227e91bb146e67b5993294198d712e3850302047c435bb5006730650231008989a17b65a60d87b77077fa029b38e972431b0268474a4f8b32b7e346630d2a17fc9e84911282c8aeeac32f7b86860b02305009958b652e0ef980252065e1d73a13d5a458e4edc15099e3422c2d5885a51df73e76f4d544b0101bb7fea58f863cb20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023024613529c8ea94c53793004aadf0f1ec8c9bc1a0b6385354b76162f3a6774936db074a3b56a7fee4d4041e982ead4981023100c5395a276a6cae6c48a1b056b286f1c4c0eafc48bfcef767140aed4480716d4e6a6bd40c81fbea3b5075ffe75c8993730302047c435bb50067306502302370639948a09fde7ad906a1fea19970189ad6289a591a06bd90f4a12ec8ea00deba219137e2b4c2926595349b536a7e023100af0c35d70acbfb33eb38f3ee9eb87641d010f02a3bc8e4d01c1d67bb228e380467764023a7855cc51f433e3cb76567d60302047c435bb500663064023070728804c238c8a599bf7a54be971250f1cd32a1d28f7675089e8a191c86e4bb4b5f1b1094e905fe7b5c532bad4f86b2023077610f7fb5e2256384961179c726f5cf52a4d4d3d6b143e2dccc26bca9a46831a03d2735882c1eab6c0077f496d6cb890302047c435bb500683066023100a69c540bac33a4cd8107eee9eda128555e2d440a824a7e0348443a7047ece7101809ae23de8ce5cdba569ce47d24cde1023100deb383f313eb2b6491b5e3098a5702cfb886ea7287f629e7a0ff47a8181427a9bca5f886fc6db4cd0ec82ad4e28321910302047c435bb500683066023100b19696d86b3624c258d0c2cfe17777531f6fd161d499b6de0ef4d4d1f5ec802f23610201a6f66852d08244a66140865202310081de49a3b33a34834dcdf91bd5d38eb6de9aa84d72cb1b1bffdeacba73a2cd72a434612fcfa27a245de0f821495fd9dc0302047c435bb500673065023100c15ef045dab9c85c8a822d14892e064abc480a1e7d077715835e956e6daf0f770dba95ab08196e429d84a76565995e850230435d824958a75ecb29b81289e97a529d037da7024b1228ff1a81aed9aac23bd29fefbb630452b6d334e508411d9a64210302047c435bb50067306502306b31f1141d37e8a1dbd52f0f63e1126364ac606019190ca0c17e371cd25b70c3f9d1b8fea53fa770588026c1e25ee4db023100c548db4268f8307cbd5a264fa559f85cb83f06e41628faf9b63fde2f2769f4ced80cffe25e11c4c2ad4b2ea0fcb2541b0302047c435bb500673065023100b684a9873d62a8f3c44bf98499d03e63b2b6b3bafd60f2b7a7fcb2b2b14d51b1e25ae54393503724e002008f89916fcd02303f593ceca62714740786a9b6ee4a8fd9c7e329d5781c0eeaa37e3d9196de1a2fb9fd59d1601e5b722216481868fda8450302047c435bb500673065023100ac16a3a7eabf7f9a7724248c79398876f74c8a0536c65dd94c54a53a521ab31c4562a92f379c533360ec27a6020d62ae02306d19f920e2cccba741209e270a3a6a7920386f307da4b4137c33f9f77468408ee4173595152e0c4be5503392bd067d820302047c435bb500673065023048a0dc568c16e370b13e0c6045b2cdf74e1482da4a8737f00e35c24afc37a844d4d571daadc723df36cd48a4e29b2a4f023100c866323b373a55a6cd6a3d9984d44a1f2cc553701b8c1f634f5542212bbe9cdb398af428fb009600c67b22937a4e8e300302047c435bb5006630640230061a039905f6f1c8cde7ebeb18725f8ab80d6c584509742ac6844b4872c3b77f3c09b599bfc16a25cc2ab3d4be5a937a023052874810d40d889eea134a31d0cc4896d44b1ee5f22311b00721867b0face593e652db1e7c67bfaea6cfce4adbf0a60a0302047c435bb50067306502306d8780dbaee938f661cbc6d0ebb0d8833714e6035bf5a1868593a65a0ba46432e7e93f7aa9b1db81c9ec2ce9381f721a023100af6a80e25c8ba95aee8f9d631c8b77f15bc205373e8df6b584b0e3ab3531543c42af5c160b4c14886a3ca0433567c5f20302047c435bb500673065023100914a1b8d1ed598c7b373c151c4f2019360b9f95e9461bd249f1c6c5cd9ae58722babbd339f46b6be615f5d27404fdfad0230466be495cc6b505c4cffe1e6d98dfa15a226fb865f78bc4a587828c9b1035a4c2cd1bb3edaf3458e4403ec09d82fe6e50302047c435bb500673065023100a0a4c900d65babc72e10049f80570f0a17e93ccc3d8251147adef5990b694e3b1a5c1862957b0ea30146d6daf72feb6402304c391dcd4f6730306931373fc7f34f1e83e3ee906255e2cbeb9638ba8c08aeb498462e5840047386e4665eb9eb21add30302047c435bb500683066023100b68f6bca44b30cf52c3f9f8f5c0677f5201b3dfcf24d1f335d6d7a15ead4156b38b4aedd694b2b506911edd47899b42f023100f78b9be424febb81384c06c5934db8a46f805c11e0d58d604469a284a244b963d1c0aa0cbbff342495da05a5bf8f086a0302047c435bb500673065023100f97bcc35062639ad04f998313e75e826572d0da88b1e4cee433d8ad4d54d5ed99057895f14c74cb0316eb98bce2e71ae02306a38cda33b87613b525e95383f6b3dbfa49b3c3c97217ef2af11507e67a7d17fdc950475dcfd5561f7a69127d55a2a560302047c435bb500673065023100eddce7e6f14b94822c83dc4008d3dca6bace48e2b1403260cecc34b80475ce7ad70536f2aadc0f08b3d369f599215a7302303f96456fc1a1fb0832b69ac0bb2091e567671c84bc4375b252460acdcec27db94ab0c41a9d0dfdc78987d087fd2b81d70302047c435bb500663064023051e1e5342a8736968feba1e35dbb432827909bfc25a0edfd5066322056e03812f175323836a5d0c3295eb3219b4bcf4b02300419d39da0d6ff00daa8880b37626007673613acd0f5e0ae9387cce19347255f9fe11861e84b84df5291b8a0f6938f940302047c435bb500673065023033bf39161283a23c63e946f68b85f10bf35c1c4f95d3039daacb98d47ec6646aad28dbed88379dd8a01fa35e8776365b023100b78290797988ae13e532fea30be250ed9a08440c31918ea32f68767ad9b968c498d95ae2983e6f3a407738ec0cb0953b0302047c435bb50067306502304ee6cd70a10c3f33fe10923dbad4bd09116b0027c45edc721c24bb3f06ff3e5668851c351658c218890d14f34391443c023100820bd28e951f8e2fd6ef7f086102c9ad9d9501939b3cde24b3cd621c3ef7b0b49dc7a72209115ee276531931d8c14e7f0302047c435bb500673065023100f4c28a9e366704551577c441d5596f737df77779464c8e4c290a04137d5701eb394d75ec1124c9c2bfffeffa4b1cb32f02302fb5f5779148e901f40b8ca12a14bfdac1e40e2caa0131a285dd6f9ed602b9e58a84f9ab65d4e29f4d2fc2b92a545a630302047c435bb50067306502304f469820a81335662a3d9ea0d6f72e0d8e9ad88d916389a1ea63e106a6d7dcd3a47011a3d6ee5958eb3cc82a2dbb482f0231008f6c73fde58b74dba9b4d38e9c4acf4cd7964df4fdf6ea795364ba624533fe431f64b308d866f74aed17d40a300408390302047c435bb500683066023100dee67bca6b5cfd6d16d0ef1fba73d5ade23d638f307193148ee58b7ed3f3cc6878aa41f6fd018bdb86d9f6ecb0505dd6023100e99cc1f204d0817d872854521046dec612e58720ee9e212e7b4928c21f704a117d40acf65e65aa7b930855044482f9e00302047c435bb500673065023030fc92637e9fd8e187a3ce9a52eaa69255c5b805c050004a8272e99ad5c21bb3a86275ded92375cbcc66c61660ceecff02310080fd99f7032a50b1d2b5decd5303326bb791537e1677e8b396fc2e37e41b2aa25857da75847713c247ee2ea0f28dab500302047c435bb5006630640230294da75ff274fe521b0f19d083151053a0e815dd6e6efc2ba82d36ba30484bdeead06a2e5556676503b98f6d3b8ae8dd02305b7dbf9c32b20cbdfc701d08614b055fd42398d49f57d7caea694af070d92a334b498ad61c5463b21d81ee384ece3c1b0302047c435bb500673065023100ce46edbf9d2f18373963e0261c2bdc77dddc46f06c9a48a1900155980874984d45eb1b2baad1ae466d504b15a2b08b1d02300c11f7821a2a19debe9f168cc5e7e57497b8061eab2f94f4b015173f495d6c33c2b12c318e1dc55207b5bcf225f14b8b0302047c435bb5006630640230122ab16809f4ce141988121af3a335988269e7202f51cfb1fe1e2ef8adc30103b3633132057423d2262cefed07b62fc502305bf5c06265f0afcae79d9b1be9fd34eb11438c5610cc068a2665d570d786469d88ec83c57e2da13c9afc66fcd813e6790302047c435bb5006730650230319bfae681a489762186963a1c8f758881e2e191ec0637ece1b14ed83e9da5022b232d55c90e8924075069e7998262a0023100e3959c5a61e2a451fa44df09f1773ca16267372872a3bce35071fa0f6ffbb07462f17eb622e10a8bbd218cb819314e300302047c435bb500683066023100c48b2763def03f9a83fff9cab6c742ff7082ecf51ff69972d86b4372839495e1de4697154f4c5c3d1b562619506441df02310083a87290dc8789304a2e3e462a12f0aa6d53fe14490d1bdf707df15d5d2a987d8f66596d3c2d4399224c1b19592e75760302047c435bb5006830660231009703218fa56c419c2d3e0ea306621050a9f41e56b281a61901694b1641d0bb49c41f7a361d4e0df419ddd64788aff6be023100c99d9e22dbc0ed473e7824af29e95db37f57633eb2bd5199bdd3d03e5667baa9cd42c23f23ffdee3862c39ee6208d4630302047c435bb50067306502301de5e61020a949330602dd9d512dc023912fc567ca8bd80378436d1ac4e73486465add89b50746a237c1d9e1e1a104e3023100cd5dd817eaddc15063eedf7a693f10fe3be68ba58897d268ef51c4c0163d456cb12eb02ac0de406e0001ac6ff9b8c9380302047c435bb50066306402302f1b334dc31a48f1d23bad8a814d0f0021cb43947a7461fda86e9bcc913fa6bdafc03883402552fa631c6621ccb3a59102307959f8cc3dfc7fb36f57243993e6166bad1bc7e1e44106fc03b8a59e0417743e48dc45c6d635a96bbb2e2f08a558deba0302047c435bb50067306502301a6e275ad382336fa5a3cfeeea3307cd0085d94c0e571e332b96d244a3ff67bfbda22ac9c8c86eae07abc32dfd1fa538023100dbb8fdc9c3100c591f59d5747a596458e6365e1c5c7c06620038e6f58e143b955f484cb7485b41d278095d999b7bd6440302047c435bb50066306402300dfc2cc547ec2650357e861d735097f33b38e49c485cf8f36ee78dca7db1e07e05bbf40c7eac16d83b2cc656736262ec02307e71e44e5777a2d27352b1802bd9c46d6b3832021f147c87eb0cd78f8e0665e370d6584246a9bdb7c03fec987c6dec530302047c435bb500683066023100af9602016a4412714ce38725e48c8089394cf72f13d463c74eecf34d5a168cb4e33a66c14aa81eb63b1208de4ae8552402310085987075e2070ee5120745e50d116d9e297d75bdb52aeff641e368f1f0f0eefd9386556d77c77fbc8fd4ce289e36374e0302047c435bb50067306502302d40b3ed8882228c497b8619a467430f29c59596c81e7d5153920005fe5c77c8d0f84c472be78ae3fc2563653ed95f930231009fdb39c5fd0ddda3c9b03b964a4d290132099c6f165518a48df73b2e09fec13995621aff94bfb41e0825c1e0c21a21fa0302047c435bb500673065023100e9a9457f667d441268d8cf6cdce17be9333a46f2033648c1089d944e70866ee2b730650166d5604b82b20e149e8a72e8023057606b6050f28070c6648bdd534e33f19d39affcd80c10501c2655fd345c3256f687322c6e255f099c819052fcf05e2b0302047c435bb50066306402300e7c949f53e75514b6386a57d2d7566282060a11f6d4343137cdc153ecdde02a43b29f3043cbae679d477874c0f7ab21023030e638677585a89d95bb6f1965fb605383a856fe562329cfddf4c1323a1047db526eca3a6eb431e934e0da50470274ce0302047c435bb500683066023100a46e51cd281cadb1f6850734f62935fc7b45f08d23fd6c204a2d5aa7a8c7fd33dea6d1b3ff0fd5bc68163d6d04280abb023100d1d16a3e1e8550e1f7c5362951e31ca6f53637d0853036611c4133f4ed321d6d4fb432651dd7f9cad8511d9e3e2e2baf0302047c435bb50067306502305c3d98b719b1dbf78f3cdca23692016d9458a1fd0ca98e7249baefc48454f3836738bf353a5703038045b7599f58606e02310092184760ab33de58f81704f0faa1e74c22efe9d6b3d58daec08c46f7699eede17001766a7e0b64fd1ffc3262429f86040302047c435bb50066306402302a0590d18750374a6bf5e6ed1e6ba10156ec77f5e9287f58dfc617c9b69d2077f0feb011d7143e9f35262c8ccc7bd034023066948b61628d3c4fd80a239f225879bbc8339757c763ef235f97750abe5125e5e899acb37bd1c10493b9ec3fec75ca420302047c435bb500673065023100ec5beb118b6d880d31c6f979efa8532007a14c3cacc8f43ef297601011bac717a5d87429d7f03efcfff3ae9adf2a4def023009f36c5f7bf154ec5b4effa6505d85d19eac49de1f04d5e8d446731b634ca68e614483fbb30a969b80eba0a1bdbd12400302047c435bb500683066023100d2ee6357bcc5c79e5f59d15e1412d3f895b4ccb7831aaf209e9de568f928cc0ce1962f4c6c0c837a8dba7f47458d3609023100d857cf1f3ee8eb9a8f8fac33093780f0992c11db9955949f3be2643524d52c605fb20a4e50188bbebf58d3356b54ea680302047c435bb500683066023100f316ed00e68bd74eb4be6ddf371ad21615d0b1ecdd40305e91b0839967396c167a8cdc7180a2b3bbbf51e756c92a6e5f023100c160d08e4cab96d5b1fc96f7fe3e95c147d1fed75edbedf21df6702a2018e3d106c28472ed0344503eb026b4442ff5070302047c435bb500673065023100e6c0b29d4d94543ae9067f6d2e7142c5f0093621e24e06f12a11bf38cce221a1469691b25dc0f68418086733240c103602305ca1e0f64e34499e4f0dd53b6f38042e0053907399be38520881f0b0e78ba76a3b57fba0eaaccdad1ee921aad089b6e30302047c435bb5006730650230244edf17e3175118e03c30d67ab6bd954098b2f72a0c1fb0309558591c9f273e8dd29193b686dc5a798a42d9a5f3107f023100aa91c31d2d4270e6959319b5a4106e1f707fb8e9637c2db4ecc7bbb723d9c87681bc1f4ab82cf23d7dfdbe0b905c13490302047c435bb500673065023100a12165cee73d4d555f38dae21ccb8c53cc8e9f5f345d14727a2cb9373cf72ccddf49f71615df554a7b7166cfbe60184d023041d6bbb224f1e1fecc5789a4d7a7431816b95867076fa2410419c049202fd99294ed1cff2d2e1b904ea7a32dce21d5540302047c435bb500673065023100ceb52c381d442f11cac72a49cc62d94e66dfff64291199985de6ed710694797059014f53f3895712025ad23ad4c89f9c02306794a05b63efab1320c037a90164f8b281bffc4fca67b26114cf8146abfa2fe9320a3d55b6902b86a941753f7da2315f0302047c435bb500663064023058b0c3fa8fe8f755e9be57b8937211cfca65bb7bdf930ebf71159c2d7dfe7fb2fcf99a72eec2684b1c763bf06db067c6023078b3b7c14ef0ae5e603493de49ca991805f097f4db7d5dcc5e322cd1bbd877ebac3c469cfdcd791d56b2974a2b15226a0302047c435bb500673065023100c9fd8399f6d8eb9c91b5ba11143cf4ead70c8c73274d2ce0ea74fe9fced926bfda7d9f0c8e23428c375c081e33bab8b3023046a2eb95080166a7b2360d853f82cecf957655bcc6677dacecd12d25552b9e8df4b9a5661f98c5a526d89aa4488403140302047c435bb50066306402305a21f8b197a0eeb9f03cfbe9e374e217ba90b4a82965a37f3a4d6cae623c798b2da66718a0f3451258f062f2f82cdc3d02306987ea38de10a887b8f07f42a056cfa2bf0dff0c37c3e4c272cd0e4ebd4dc0d674d2c75fe1c8a5b5b7d5f8bfe9eb6d6e0302047c435bb500673065023100ea4d09d9f0bfe046e2b9483830eb34fe283563a248b8be65d2f49cff2b68297c10610260bb411301926fd2c412e113630230722986f21fcc7d093b6ff9bc5da23018d5212bcd8356558d310540e3f20140f3b3acf9ea25e44631e773f19f926d8b3a0302047c435bb50067306502302195346f18a6c4ed843c18060ec69e7732b3111d0315e9811ff510a8ec0df5a7a74f8cae20df1dfd67d90149bd4a77b4023100ac6b5cd27416e9fd273ea6c5eac74844afb344ebfc070545c45592450aa35f92a9d54307e5ef17f8e4b9d1a4111b2d540302047c435bb500663064023058b58e28712e86d888f9c4cc1ab3a4f264199542d3b4a1e312d11cecec77782946ccf1490791246b01f6d2f1d77f993d02306977f242862aed2208334e0a3285238cf96dd125ceba41bc8de23f56665059b063d454d628879fb70c38da4bce3bec880302047c435bb500673065023100b581b85df8112b05635cbda3e04ebf2c3a914629b47411208215f98d905a5236f7468dc7c7e43988c862859d606ba17302302818663a021b1aaa1dc900444f76546cfef8c3e52d1821c5208e45a47f6082e2be7054ab370cde86942b267dafd015ed0302047c435bb50066306402305d24335b1d22a97384aac35734a5682e62458c412e8ef39316e0da07c968bbda9ccae811cae57b32ebbafe7cadc5dd990230342541abcde63cab52ac983ce8e04cf0f46376ce6bc5014c735daf9be75f9073d618e27f94d334184117351bde4601610302047c435bb500673065023100ad694902629358eafa3dd190c98c29be7c9ebc6a2e637ddcbcd5fd90208594c2ca2e7f3b7b6af6ff467d02e451596b890230529391938ac22ab873f77a9fe518c09490ada8f31ef2118abd36df635f8cbc4755940072c1190e43079c42e1df613e080302047c435bb50067306502303df0ab55ffeee7443119a5efc062e91e254ae02a5e4561a6a5c6d0c226f066b5747236bbda56f68a8713ee1f6d2711f8023100822375a5f7a02d2f49acffdb959c4e0b6237bd1805a1a71b8af9c97edf56d8a222f6841737bae3ba68db6eeb513d906b0302047c435bb500673065023100d90a14009d9decc381f37c7958bc377104938855de88433b5ccfac9d7e4deaccc6c59b6b09f2867053a38258e1ced10e023073497306a28502cd320e4b2528b2c43b65766c70c0504ae5995081745cffbe9cfb19f04af654a4741b53e960c0a1243b0302047c435bb500673065023100812c3232c3a5dd424c232b76a1baabb3fadd4117b9ca0da962310d45349271d40fea2be461342d3a190539a07e53965b02300cfc505c315cd68b98b98a485de69559fea7976a012a2afc70fa22a5db85a2e9f2f62e3b51335b965b833e3c74238cbf0302047c435bb500673065023100a3e7c04658ee5c0fe315909b789b2a121171f27b4f965059195a8cd2f1163f83ff00af54bfab771e262c796cf7fc069b0230364a095d91f2e9f7ea30c87d11b35b56a342d45416410090b8c69c5361899ea289d0253502622edc69b503a47f4455030302047c435bb50067306502306cae3f07cb08f1378ae18ec8ce85db3d73e0bc51cf8af95dd8e17cf2f211352e5883f136ef09f98f75efa762fb0561120231008de17d2b641db82ec0a9b9b332bb2c1d95eecf5783fc3d482529d85bfe2a706b9b54c50f3567fe52467672e77186c7e40302047c435bb500673065023100b8e4d53646eeb52b51813e4dea7cfd0d2a5cc34c1df728ed10ebef21ed8f6b553ead532cd383b1ec06c5c89ad4e5ae8a0230459d1ac2b63b3bc973f6c34a52ece3f78a9d6ae6dc70083c28f4eac97f5658519d2b0482e18f2190df3e3b9f259f27f80302047c435bb500673065023066d4690b5cb12ce438dc74ccb5cae9e553c91ea32a0d0b5c2c8866faefb5cfa357054e7f8e8b119237d23eb57c4d5bfe023100e13a4da69efd386d9884a04ab6bb354c3e666f46774eae609f0b2c1f724235be01389687a659421ea86ad92dd40463bc0302047c435bb50067306502301ffed41771a27ec1d5ff05217bba087e53c3ba90a14d85429f127e6bf0349dd1f8dc262028eb64580e2d8fedec024018023100e3e48245b9c4726ae3099b2b9826f41d3f70d023ae9d69f2317387d1522bd6745b9b3f21493b90054dbc6a223e9f5b9d0302047c435bb50067306502307d6c5b2e3c25a50a4b36391c88dcf85bb7304c42b03bd3e41505b5b676d183b5c310cc1efefd48f29b239fb3589e4893023100a238e0ea885aa88386d2089fe6404be4dc77f3595e2926b9d38af2055f65846e9ff45f89ffec81f99256fe895a49883f0302047c435bb500673065023100c9ff50ddcec1349778dd461ae158b30cc474b8a9e7f770c8602be9a51ac87e94fd1edb7f9c637d999874f45e9999d67f023064ec90a95e799a7f0ea5e780eb50537d8524f8d6448ec805f0c0e6b540cf15b0d64ec669e13cbbf6737f8c2721f5adef0302047c435bb5006730650231009d5c9ec90e64101f00a8734289173c986e408311076f5ff3ca282a3006a416c9940d1f4a628a149c3bb60ed49e267670023003bb66f9399b7e9871ac5b4f27d165bb33f49ff24625d5550071d822bdcbdd79a4b40bee21ac23f1397e54db43e558fc0302047c435bb50066306402304f742680bf74bfcea99bc0f7fec1f27e28055ae251a01987bd8a5d1709d06d39d4a70d6a9264982ad813d23bf4d9c96902303631a1df8f8cc618ae4802cd482c83586442c82a5f7689c25afd4ebc72686d49154f179329fac81171478b3bdd0ca44f0302047c435bb50067306502300094f011dfe6fdde42269a76d0f443cedeb4646a5106e8aee764a85fb07226e832531b63088a2f280aa5643519b51e0e023100a1dbe47d05927c0d0f98801381a1de76498994953f082444a79f7691f20a2ca3f1490267276ce55994f76b42a8c783770302047c435bb50066306402301f97a6eb906d5b50cb537fc8e2da298eb2a8e8b45127d1190ef6b0fdb206496d2f2d48b4da2036db0f8b8c1fcc12ad5b02302408007a1413ecbaae6d29dd8e1c76b5eeb0338af132d3c7b3f5283993046c55817fad9af382f666faec748536e059f10302047c435bb500673065023060c5668dc983f5c2af473d0b8a48e231ccd3953611d2db55004480dda7906451a24bfc038c4829b87fd5bdd8116fb0ad023100a1a73638b8a0ec94ffbeaa906e5e6de6353edd0b95b13dad27b6cb281214122e2c1a8517af401ecc7d1519375b25ce800302047c435bb50066306402300183e4e4cf34885bf0770ca00b00c8f97029b1da5052a001b0bc5df37db3ac3e24087bc13cffc47fa3f677bb78ef5c23023067d912c18767dc906721753cc82102e310b3a84a8852610745343727862531f64c552c1161ee4e203867a703c88faa030302047c435bb50066306402304cb93cf6ee630356f115142958bceaddab440e1299f397f7ba6565a10b643d00bcebaa5bcccb673d7b7cf6679f98a34f02305ff82c2bb581f9db1fb231e731c237748d05bbbcd6f79bb00340acbe0a9888ce602956f0cdf8a7d9113d796c2ec15b8f0302047c435bb50067306502301b08fb03773282ceb51a34dac8b2ae81d557def858936015002d824fdd58240814cfd05d842895415d814b98f84831da023100c1ba852ca9cd2c5fc427f6db2069026d967f841d77cc6b0641a375ea4fef71c4a1233bbf0f54c96b908d68d882f2d1420302047c435bb5006730650231009e5a6f89c8000534de1fa319e6e348de4a52bdc8aadb706e797fbe97724a19edb36b31a716d2ce34d4dc89631e144c69023060751961025f1c2e53d6605a0dd535f5722d20c56ad4694ef182e5703c9157e461ffd9c83390cf6c835f78004dcc11880302047c435bb500683066023100d6ad5dd8e42c6779b34a36b758b28beb9dcf924d78bfb576624bbdfd89e688cb63a2d1dc73f51846efd0c977d148a6c5023100ffdb520683e1a072419a94347dafac63ce7c505d5c6a2f7bcc7a194b479d3b3c9fad53d9a58e864cfaf516f9fcf51afd0302047c435bb5006730650231008109e3c1ed887f0c67d60c2becf7c73b68b15cab39dbf87c057381ecfe4db1ddc9a58069b95cd751411148bb0c193c6f02303ab03aa2ada7df6d56442d58645528d5f68eaa8296ab3feb6bfb015c322e10a10adb4f4b65c04c7de191d4f62794a3460302047c435bb500663064023030f9ce3007bfd8f4ac8c7b358b8f23b126987b760c7a30cc9b687adb87dd9826184e6e539fc27fee43f5e3a26d17ade4023078b2a240db0ba321dc492803d8f919b38ac865b417255b7a368e6ba4d6d1aa6389badac555b1e3c21240c57cdcbff2f50302047c435bb500683066023100cea0e78be3936f1c2356743e9e4f30e4757f75a8cf7e74d0a2213bd39b1be4eef1bebced3eedf301e3eedb185e7eafe4023100cfca3bb17ac1fe2e4f233c477fb9ef8dc5d75ad4bcdc91ef93c2d459b5d8efa8eaec2e0add679adfc5941fb440f33a300302047c435bb500673065023016cad1b7d7c6cf32dcbd5e2936ca68fa4074245a503e67c9124fd48039c4be4533adc835a931807e7edb58f437fd55e2023100ab82fcaecb62faa8cb8d8dc33667d6eb6ebcde90c148ca32771b1192e51bd98796903677872a311c1f6dee720d0efc430302047c435bb50067306502310099e625bbe3cdae629813494d025b8f78263a6e89bcfd70695e3967af1afa04597a6306b98f7987584067060f27a8303002304bc59f3db236c30bc80c49eb376c286bbc4a7aed6390bfca20e7169c9c8ba7bcd67f7555dc2f8c072706585369f106a20302047c435bb5006730650231008d6756e214ed89651c0129ec271709cc04cd4691abf7a920f3aea680f6c32b4a623ff53e2269d7fb1d3dc5d4bb3f79eb02303fd4462987ecb6d4a682495050a4d38f5b357db0ab38b393c6489d98d2f8417f8ad346fe5da4136431662a204a85201b0302047c435bb50067306502300a029e8e086a8a2931cf96ef0442e2e5d933f33bc9e1457b9bf4bc466d7fe6af80c45a259d3c1bb8f7fdc39dca8c945d023100a0150dbc012552f715e6acf45826f72a09dfc062e852909d0df8fdba16de123b92e51e65a2e8a935da9022d2246d16270302047c435bb500673065023100ddb0653a4ebf32addffad4b55e02ba3bb9a6081ce93498ee41b1087d9d0d88964fba4aaaa8e6cce03814b2aa70f10aa3023008448c1311c8799c234ea3839f0f874bb6ec41408a7423f0b47b9a9636c7947cdf609b8944cdb82699b30d461b6f6e5b0302047c435bb50066306402300af9a7223d086de33666176898e92b52fc981ff33ed82461277e273b25279abf7904867f273cf85747657453b3beabf802307d2ee2c6672a1876d99428438f8ca0504f61d4bf8d0afe4ceded4c2bb1248688961ab60f78027010b4ec19603613731a0302047c435bb500683066023100ad394da5abd1d865889bedf3bba8f065ad19879613340fe069f44694ed67d6272ec15484e3c9d0f4e29ac9b554255648023100ef2e281b738aedef95c4869487639000dba97ec5dacd2f7a897f7a5162abb61fd935091d91ad7a17490d8735d3bb6e920302047c435bb500673065023100ab17e2893fd83839365e6b4d0a851064e555ff3f325ccdac63e639f3f339983bb70244002d4f97f7a9ea808a06069e2e02303f7ef537afd02e2e5e578e7a3a84ca2d5678bbff72826c8e6344939f86a5435bb4e1fce42e2ff197706535e1177123950302047c435bb500663064023051e7d96e26b36ab9c0b5b29a14ab2993b2326a2e76d6179f86079d7910db15cd0df1b8514b249c3b3f67f680982893180230470a50602017c29392a58a9db8ca00d6108aa7734383bb214d8c476dff67faa487d57636ed9053b835747c1b59fbc4cf0302047c435bb5006730650231009ddb28cfcf8a3f5013e77c6db4328209398efbc946eb5c168eafa8d5f2975ab4f3e30f4e993b479a1c91fdbf7c37cd89023075b755a2473c4c57c28150ece32b35734ac725b68d1e93e8c7f75e852d6c662fe0ae1cd8e43a87190bfb28ff8131ab070302047c435bb5006830660231008e4c1cbc9ee20ccf33ed41d389a41f68368ff56c89dfb3d60910e8c054bbd29d31f795d1e3f8ee86528fd913a3aa54720231009c83661bad2eaa9eac51990a60a90a2202773471de59cbb9bd2d77398eaf986cf2d6faf839d824696abdf04a5cf14b480302047c435bb500673065023100c40fba0d49fa06b2c7d62e3dd1f75ce848e6f4d224042af15c8567b4b06713f04ed5d2787770d42f9aab8238dd65740702304ebdac2604504e1d1e5fdac14b004a2759c477bad89c2381662742cf773c0d8b337e88d3fc93e2f55e6732bc996eca9e0302047c435bb50068306602310099f60922606da875f9cc26832d7d3550b6aafa9f264f3d8c825cd9f99cf00cb1cbf7f3493252555fd3a6b458da2d036a02310089003685ecb25dec7c831e4a33b76574defdf54b2c4a5fa07d02399374dd84903e4f82c5988680ee2b81acd8f1c385840302047c435bb500673065023100a1495503c79af530d77b8c904ba5b10cd53a7e92a1a702f842bce81b071aa3228e4777585b3eca8e446b30c612beb6d10230334f7d140e2ea6b257bbc6b0c7929f267b6824ae24c54013f5176c2ae37c34aed82573f9d9a6eae0682a48ad6ed212950302047c435bb5006630640230493598a857434aba010ffe51f8bec00e534cd368f91f8d8ce4fe3d92e05755065d2ad42c4230a634400d701aafd62dbd02304c64b99a23a02d93ca23c3e16b8c4c73e2f5167530369b42771ecb507c6971f421ae3d9cf45b5b7d73890c7c28b913510302047c435bb500663064023032aa821fcdf1d47857319fe38b4eb1c726f12fa1b10e2064e1fb5fd76f5280c533970cea5f983ea178a56bd4b953f5a40230029be2e0a2436fc8eabe0cc99522a5b34a4c60909d7fc48dcba9094b0bb17e33d993f543669f7cd419e4ae8ec08cd1dd0302047c435bb50066306402303cb0f54e111676567d53f6d731f8c1284620e0d1b412d2718eb217f6d3caaadfddebb7a08e7b42c282ea4cafcee36d5a02304db4d2aca4be660178b6ea31ca2ffcbeef6965f7a8cc5fc89633000e9a16747649996efa7674f4910620bb7b38b8d28f0302047c435bb500663064023075a16c2bbdd856b6031887551594a5c81470f9de963faacf0b9c4b49c3cf0fc9902cd65e03c60a349bcf10ead778192a02303dfb57fddd57d00b43e46278546487769fbd3d025ada070fc825b46a667f64546cda7dae3a40e33066373882c99954790302047c435bb50066306402300e7066f19df0729ff09438eb9028c8e95b26223a4ebcb2be7891795c046f849bf607098d0864840caf82f714d18b22d202300a8546129a6a03b18d77b08e86e6d325d24d7b2624c6bf95da0dd28376f096f269672464ddc37b8418a016d8f80c79990302047c435bb500673065023009915530fba8d6ec2344388a6f33033557a8f19bb2b683bca46e63a84602da87356fdd3a1e4f47a80296c8eaddb1aa2902310095b17e9f6971fd41be0fd9a5e380c3916de8b1cb6d2b8309fb3327a6aba232cb54367857373f5d7b435e9390698a551c0302047c435bb50067306502301e281f33f0a7793ac9cb7e35e86a3d42a625db05937af7bf62102c5677863747ef58fab3ce5c54bcec9c1009508d5ce3023100b167dfe9c6d112461b4353c917ba297d296c044c63592b9c08dfda4062a98fb97eb1326655add31d1cee8b02151639090302047c435bb500663064023024931fe4709b89cb0d7766bf6bd8e8e84ddbef830b11c03731d8d105f899bad2883631e25a0000fd9b2180a40261b3ed02306d9fb73dbaad2843abc739ce146f6d4e8cfbd5b86581415d6a720c7d05aef8c71f65fd769014afbcfbaded9966f699660302047c435bb500683066023100e5f766bcba907fc5763c248498d0f49842b356ce3a0f19e1ffc37a52d3b6165a7d43d7057c6b12bdc638b92aa9de02fc023100fdc4b962361c8d0787f9d7ffb6430db00ef2dd336eb168142e502437597eff373e4258900af159499b7477fe169855a40302047c435bb50067306502306958fde6fbd9dcc6cfda2fd2de6d003853a4aac0e769bd28711a89b356c1460bb7af821cd7c4fb30e34d03b3913a520b023100bf2148cef0f363328ffc51b7367e2d6841aee61fa0b6390de8bea10741762e516abdfb9fb906d80e6cf71894f70bf5a40302047c435bb500673065023100c0e34ac806c1434c9c19ce964b7b3898450e1fda910f4533b09579bdbe02cbc8151a2c4f003032c36f72e6ea03fc024b0230346c8536613f72ff191240ad46c090f79d204d85b42e6ce4e600af1c07f0696b76cf160c9208527f2c9c3a64068aad6d0302047c435bb50067306502307f20c46d25152eb0b212d8d7ea6458f45e6889462be44bdcc56fd4efc9f8ce6fc534d6b066ef8f64d4dc68851ae8525c023100ee4f97a6117d0ce0641721534c5b36cf499e75114c877f40444e2d0385ec4655c240a7277b1e7aac163db2b2172326220302047c435bb500663064023070401975b1641477b2ecca92ea8bdc790c0bf8e4429643afef163741089113e3e153e340fb7b6a86def0c03fa4f52eb302300f06d51352da049f00b24e7fb74ed3d1de4dee839227f95181655cf30a5af612877b90bd9908981a495786633d19a2ab0302047c435bb500663064023038b35cb02aca36aa9f76626ffc0fca32f62a23a0db1401280aac1d3fe7b1f68abcb48425296a8c803d5439003d7c58b00230308ea1f7931515672fc1f29c22d6602b07d956ebd14e5a0ca2c5fd019155feeff837f8efdd363b124231d36b7f341e950302047c435bb50066306402303498e947dc3e617bac2a557118c1ddbb93273223a3b91021d977f708652e25587dd5bdd6d759a4864dfe8fef569c88ce02303b90f1ef0e2fabb49a5a7870dca225c490c6006c603cc990a20c428cfbbfa84a6f3fe0466b9f37d8001700e40ba139af0302047c435bb5006830660231008e20aac39802bcad3a3eecc33aa271a5254f7c52b48883585f4bce426a973171dba07487048474f9c3d828afca16246b023100bcf9ffd917b77211566ecdd68329040cde596fba44be2846575c036e4549291582368d3ddad229c255114876d6f444370302047c435bb500673065023100e9115bc86954b875bdb25700f116095c0bec9bd82c6ea56846acab2fb024083899501b4636db8260546e117aac63838e023058163931a17b2285c2171a2a409d737e5be675a87c13335adb6859e3d3ddfafdd908dc60f0e2f6b17f2d89f28b6dfc000302047c435bb500673065023100baa42e00132d08e1545b8785a03f2b7c15e1c639b9137407028e3260add9d7e4fe076b2dcebccb782be44256d3b80a2d02306bee4442d02cc38e9926deab43addda1d95c11f54c91196e36a06b7f67cae16dfeead05b5e0e0e4889eca249c870f4da0302047c435bb50066306402305d2c4f828b28c44aaa2aee3daebcd5416994c0fb1f255f8bd1212026191e4aba962e62658bb2281bd1c5a650442494fe0230097fa409271b675820a31090769c0fcd0f9c8bcc8efe68bf3b6f58c1572f820d623ec174bf4b88f53eaf41f7de88d2ea0302047c435bb50067306502303348151d4d78219186da042547fbc2273ec93afa7b0876f2265b5be267b8a973e54a73d27b832c42e54f054a063f362e023100b5e7e1aa6deee7c59d980ee3afe38f6aea4c84aacd1112fb4a80d1a36a7fd54a4dc95a296af7f97aa190eaa7834eba4b0302047c435bb500683066023100aad6c4d22ff93e0bf15949bc1287621a97f5a7a9a0fc6e9f8ed5b60e8aac5a33c7fa2d72a6fb9d53cdfb936271fbb86d023100f7b9dddae1b06a6bc0117b44ba79fb9d685c0559cdeb9cedc399d7be2ec9ff6921aa1284d0eeaa8c2b1eed94dadff8d90302047c435bb5006730650230289a3f045d3803bfd9c7ed723f76eb43c218423e7cc036b6782d33cc9df91c3f07bb2c1f06448e00f81c34523f782772023100c120553d1eb8c13de764eb24a142b63ddbc039b1a18ab70557bcf086c366af6ef7479e761b277a6172fa3b361611ae2c0302047c435bb500673065023100d8830fe587f5cc8c4b8c4d992c00ff732a1d74c1c88c53e2daf6f815026723919de2cce32b0b16ef00dc314bcdbd5aaf02302d60846cd5bb476b4ec6f31d863daa90ebbe6ecdb3c460e94d491d78fa733840e1884cab792d39132996d46813441bd50302047c435bb500683066023100f88e97011d8208e9acc0951aa1f05b2b014804b7636fa03e090adaea0198e5b9eafd3547c6f4e4ebdda0d2c9d201d384023100c193e61d95adf52dd11a3740d5fc00b91af51e80b5c06c13002dc87fec545fab167d03500c7dc8f34974c4ce49e856b20302047c435bb50066306402303913a8e97fd0d29775509bdd1164212c782e89d6b1a992ec56cca40a963e0d0d8b692ffaf0edfe7edba848453d7d4cf10230270d9b7deb937ac7132cee4f8d9eca170e2a8d13662dd4631961f87d7244f4aaebc463cec22fa046f28dcd5c21a3997d0302047c435bb500673065023100cb93cb52e22bf1ddd5d1e2b78a107b5dd05dd7ff36ab26cb8808b5f2edb7d82458cbe792d409b760d0657176d615554502300f92390d137753ad9028b06007debb87f8bef214cbb3654d75824ddfadfa5d98f4b354b0554306ca5f71ddaff9975f880302047c435bb50067306502305b8c3169407d6d6379f4949512d4e191093fae6fdec7c2703bebd43f7bc0b73fb977e24f6e9b38d02d836bb077911256023100afe7659eb6104269d20469d5d8ab9526e4c79e5d86f1828432e08c323dd7f28aa85cb2de40e5c257209c1dba8d6ed2f50302047c435bb500683066023100bbc37792155ceca949195cef111d949ee2f7eda9a9031732be2101a73aee696e306ea0bb69c7db63443e49dc1a97827f023100af85bb990bf0827e221bef3da2d62f2991b3c5d75f8dd5984a324d28ef023f3e26685101c1cd64c72b3f5a33ce055e880302047c435bb500673065023007f6c1af1caa5a4b75286d7e2d8b49e52393e29d53439f9ac3f11e2345fb2652f8423aca536fc1af758b15553899f65e023100d138902de7c471f76e5d72e3d79ae954f25e1935fa9c741ede4b11e5db7351ec0bb1754a0d2a6846e5a7242170bc54b70302047c435bb500683066023100ae775a698d40d4c7c61037fc0ebbd00b6becfc5d56773b222ed65d8ff4bc7eb6bb9903e38389e682a624bb4d5aafd9b4023100dd8fb29aad62918896a61d325a86b968de41e13cc3f8c0ccf0762cb83b765a6a1fc24c9f2b1047bcae22c1c286090bcd0302047c435bb50067306502306c23cff830a05bbc3aac14ddbfb5706da846d1c32b1558387c8dcc0fa573377845f001befab82fe2c763ac1abb4b2446023100adb03f867dde857953553f3455122a347909b781db9c11bfabe2a2150118f8d5dec9090bc7e6bcfe8a8c2ab496d5976d0302047c435bb50067306502310089b637fc5f490654eea792aabda90b64416a848154fc3dac123a755cc52bd8bae1cba204bd0376f36e8409bde387df1e0230732b1b7f46bba0604e533718ad6bda9fb420f53075c5ed01ab246ba73b04fa815be1bc0584ca9580ad0f8e8ed73e49370302047c435bb5006730650231009e91b3088d52f18122b8d15753bc37205c88cc40c71e10fd888f03ce87e7da6768a98d43a0aeb2c91ac4caaaabe931dd023066363383dcf8010f96709899eaf06efa3ea53b9e00ee72c672bb07291627ca6ff5ba03cbe1c1c5d7df02109836b117d60302047c435bb500673065023100cc9c798fa7d0e28db9ad2e97119f74cb2b77d37d3535954ef73acfd918f4b09e63997bf4ba6fbecea8d05dbc89e0bc6f023028e031427978cd1a2cdd7a3904dd7f6d91fad9b4cefdcb26dd45fef40909f7128dd5878eb0479d30884f004d23a136590302047c435bb500683066023100c4f2c7d0967dfd1c8b3ede7c539eb7b03513a8cac88c2ed559af992b4d75688bdb5d5e44f6fef3e2a7d46fc174463614023100a90d83f08d8eee4ee8336e6312983f78c475b8b5fea160f46fb3ca64d8b00700333f580cb299fd50facc0339bfb8319d0302047c435bb500663064023041e0cede7121aaae6ce0ee58d44726e4718717db3a1b183e41d438b1d898342e70db8163dfd4af26b6b4b75bce866bdc0230520020d7f1d3995760d7b7e6cb35e102e34b5369b18149819d6071a4d16baaeddbca5d9221d6bcb7f922fb9982f46a480302047c435bb50066306402300aa59d37c272ff471beb999d3abbc7258c00ff485a785d5ece7d7ac98494aa037897fd96554a528110848749e8641e3c02300ddf3450282c67a4772bc038f581a399c9843b007d3b193296c93040c768c2381f86a04d85289528ca5d0331fcc71fe00302047c435bb500683066023100e1ce7201cbf67bae40b473c178bfa506e1eb809d988c98ce88b475f473ca4a19e1eb57f29f1f1c111cfbaf49b23192020231009b2434ce98255db3b9f313140c68c3c78bf2fb71ff4634f98cb9b281cb9023adda7b38ede7b6f8a9232b6e29484ad54d0302047c435bb500683066023100f9b9940da6213bcb5e31dafc9f116ad806f11671bcd22141ecfd2ebf1b3a985f1b5cf0fb6f171d76e1550cc9ca167770023100f027868fd77c9311cbc09387a1ba967cea4fb256292915301f843f2ee6080e46cc9d79390d66ad0bc314682f6c23bc990302047c435bb5006730650230020c0c239deeed7cc864482aec4ab126784b77ee4259c805af6ed68b2bb64300d18cc3a70ec7e9fe55e6ef064d2e53be0231008bf48e4e749d56d97e1812da52298d12a7d31a0e54d6e81caa20785ae7085aa8845df21abf8636da49fd7632b749ba540302047c435bb5006730650230727a0872a8005af81402bc2cf4846db2846a416dd47e6d7048c5c9ccce4153c4fa96048c634abcec4be81997d9d78992023100bf54808de166634478e58634a8e190ee2ec6a6f9b2fd3b76d95cecfd98b0f15afc29a86967b784c5e8ffaae728b582660302047c435bb500663064023012cb193c618dc6fa9446ce7cbdb256f950b2408d46118e93b92ae26f5140c1483f11fcbe1b1b1fdc08570f33097219f202305178c75388bc971b8ffcc6278df9878cb91c8c2254433afdb3d41e6bbc9bfbcef73122be3373016313d37533f78104610302047c435bb50067306502310083bb8bdf943d670e1e47953a1f2d8347b46bebc0f9b481bd81951c1fc24cde90cd6c5241b2bcf30aab9463a8f887585902301c8321ccd708eceeed28464997346eabed185d649502f766d0df8cc4b84d95552ff75be9d1dadbd8fccd37490feaab470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023064ce8352b6dd634a3333c4bd5bf41e892d32e51c37fd8ff11d8e3d43198892d3cdef2fcb72f9e93e439e1cf936f14d3302310094b89af718834e038aed499dc8897fa12fe1188a522c02a05a079e7d8f4da0202456dca062d982bc1aeb25202d69affd0302047c435bb500673065023059efd691177e366b83211f9127bacc252f33b2e3a1e2401a70e6c975089dfee11bc4787ab03e36d8990984620e8899d3023100814778d01a5b728d5c7142123f7094714d1e0962c125cb836a3ef071542efd706ab00935cf778265147faad129ccc9260302047c435bb500683066023100ebb9b5cde59f50561bb727c93a90b4d3e583857220ccb681c4b7caea3dab8576ac82ac870414038b339e2fd90f94f845023100c6b79909088fae08150fef0f1e5aa9099976ee9bebcb33a292e498c10c07217c123b107a5f7198709f5d57078713951b0302047c435bb500683066023100b2629cd44a81d5bace2ae4bc1fd1f51e552d36d917105802e2f88c3e7057eb38990ad1cf0ac8264ca1f15924a354c3b5023100bcf435158bceacf8ad809fbe41ab3d50d0cd17eadb105c35f5da9da2be0a771a1f867c72813ff08c0e653d62fa3038bf0302047c435bb5006730650230320a307250c492397e3b2653114904279b64d2e060ab3b1875295b12297b689d56f369885a4a858cdf5bb988e2460f4a023100e4e0399f5b2462c236cf9d3168b462581898b022bc4549e8c905ddfa5e075158ba5c7c673adc3ad47eb15b48b4bcca260302047c435bb50067306502306bec213c0f58bde2d033bc91dc224b6db7050ff8fc5ff2c2a6da41a04dc6f67f87c243865459ac55b7d18537c5f4ffd8023100c17f470538b52ad48680b640079c2c9784d043a3fd22f6a90f531e5afb9306b51f5389d9b25d1ae71d0eba67c6dfffe40302047c435bb5006630640230466bd32de907db87d750bf09ecc55108bd3e812c96c86d09300ac6c0eaf90dc459ede8ba4e8b2f7a258c6d765e590fc10230074d9cad53763088505659fed9152a609eb7496f6f755838a7a51a268cd0337996fc7a0416ee146dcda10747d6d6d6870302047c435bb50066306402301bd298a2f667006daf441722255a090c8f2f1c52bda6edf786401f5413a18850fdf16f7469538f8245f7ccb17f03a51302303a9166536c3ca6dfa6d19a453b23c784782b16ac5b2e23151a045f025fd9063cbf92c75ae6d7e1192139d2648c811b0d0302047c435bb50066306402304323ca3ac945f4d8b140591ee0ba2123dc448f9d7a1d4bc8cce0cc4174761aee03783df3a08a05a70055b7da58a09cf302305d8cfbb660f0c433856a69d42236df13a9afcc75ed71d761eccaec17bf181d0701096caebfd7a3bbb378410126e03d750302047c435bb500663064023033196e23a8981dfdebb4e9656cb47f182b56a2ded6df900dc760e461098b140832a703788861b6cdbf84ad27b8790f8e023074cdc33d89c6c6dba47ae007f1d7bbd1336da5cc6fec5ab7c984c2c10f93fd1e68d0a12b52a933bfb83c88401b1a4c440302047c435bb50067306502310088048d011c4fb41b331dde9a80d3ef3e40990a566c85dbca28468e621822a280ea354fc3f071ca30c8da7e9f7f6694010230465a16881150c9d8592028a323310162e78553aea87b2ebdb1c49540b44200d1faf3f7a82c7c048fa69703c1144d87050302047c435bb5006630640230453a4485b4a0ab0993fd78ee46b68d39d0344e579c6a3c8267aabcd966b8d5ec78c083500a2f1353850f7050948525ed02305787315a6f12812800b6b74e07cdf6aca6caeb6f984460400efb26fa07da80f6f189dba6070536107800a88e030ca48b0302047c435bb500663064023100eadd3350e491c964bf6283706f55cb410c90f87d46ebd7fd829a44a71cb2b35271f990b45c726f541143948707909544022f5bb8e9b1221d859a85b2c09cb4ff8b8cc47bd3ae40bd6b1340dd33418a706e8aaa7a9c069a45df6198a266367528930302047c435bb5006630640230588e4144575a1a3de44b7b6948bca7b1635a6a5551bbb2eda5763823efdcfc0c930d9c39ce36e7d7442566e1e4756843023076bb84b3469cb8c4ce4408be4a1e6c4e4d72a79f2948d5c0cb244046046fe1da9f5ce9345292b9f62b175cb0fa8999ca0302047c435bb50067306502306a94cefe9d05d26c56856c87992b8ed303c78f53b188acac33b7bb355cbdad8f2d5a7206c1d91f779d2a372788773099023100850ec945e9b7ff8994703383b6e6f72951d328e51ba15df2e99eee169785e489fc5f66efa0bfe9b650689cc98c73076a0302047c435bb500663064023074ba0d47fd674c42175d7467115bef1a15d409a937214ecd2cea45bdd5ce452d2124ea9945cd38a180ccac50ee180278023046288ebd7a0a789780f1a312c24f267559fe8f7b07b4b01df1001b20b28a9b76bfe0ef68edf26815dc30b29c39da14ca0302047c435bb500673065023037ec4b81df29c97f4e5fb5eb5cb8303d47e2ed17dcea5b8389a453e7896460b6c23caa18d80dec602ccf299e95a97039023100b5278170c7ac23d1335f83db29c53e60e69679a24fba0c8e1e5427a530f5a1dceff8e6a2a000f10d0b199e6730f858920302047c435bb500673065023018964bce502cbd3cc1cd5910a0b1eb0c10b30bb084188ad6e8bd69b31add622724250c266e978d6aadfc7d45385eeba20231008b395c076309f2b3440ce8a0a18e211a0a906b9a2e4fc5d1521da647fc23fcf89f68060fa664ac22efbe9528b41d52da0302047c435bb500683066023100c68659138fcfe27e70ab8f6810a094562be82cd6e648d07b1011e0be3691c4578883a0d30f158a846b856c2b8f8e2abc023100e127218dc49a6cd1e7be7ff442771b129a4fe6910847db53afad8f2e5328d72b19e103f75115b5c000ef2ba819d009bd0302047c435bb500673065023029ee4662630e27bae643f9f7486ab4c43fbd482218c0ef35c9058a1ddab09e13121c0df85be8ab1b9b1dad039ce3a3c9023100a22bceecd669e71aa1f3765fdb58fb8b26c9dc6c147a1b4bbe1b123e21aeb42fceb3ae12059a4b83315ba4c51582356c0302047c435bb500673065023100c8f1528cfe9fc24644bbd692d0e2c991c1927e9f8f1a29f26f3879c522969e3a32012a6a3ab01739d22cfb05cb7ff8a202300c87c01589f494bcad8bfd21affc3db69cb5e2b143a52894bb96b6fcbd1ef4821a33b2762a81203df8de24168b3a8ff20302047c435bb50066306402307ed6fdcd997b5a6536c1e2cc1d3fc0a025dd78f0d839a938aac876f6358e8b1fcb97cd88602bf14626f7b013f3f4aa0f0230274c2f896575f91df1406b90cd801c5e97bd586091d362f681610caf70ce04d91ca1d283b95929544a54463f42d642830302047c435bb50066306402307319697b0e79945066b45d2fbc5d2cfddc8ffb7982520390ece825bf3f1e68c2cd35ef29caf4c3bfca4d38b2ff3f688f0230486dd38abeeacd803363d17de98492dec6195da4b8d9c9190ba8bc35420b3bafa1c91254e06fcc773dbfaa9bc1fbdc4c0302047c435bb500683066023100a18dd495549f9631f3267f2aac11dc8e45c46e07ee8191f27b7306fbee7e39ca4df7dbc4070c1714e9a77168c2bb308b023100d516a7acebb7f0709c9ebbb11110a84f4131bbf4d9ea820645679ecf6f7a94cc71fa32ed429b4e48daa9579c95fc7c310302047c435bb50066306402300e95dc24a75b8846390c7ba3e5bad53bef0d5001fae1b21ef5a165d7bd5eff16077fed7eb3c64886bd80bb9a318527f902306e3add3874b145c3b563717f25975977749e8fd2b096a23cbda1a62f18fb2acb367a6cc9f6b5e7b4c94f27877cc262940302047c435bb500683066023100905620673a27ca2b97953b723441ab93c02b0530dceded0b4916178cd33cdfea077c8a86ad6f22c2393727d499281b030231009d18e7a86cd22fe21287bf8b72e17243ec6d28549884460211d74fa2698228246665d75d1794c0dbbb3fdf375b2219a60302047c435bb500663064023072573853629d2f1ed1cf458d59c449dc13c29da01a2c794c941f798a08e3850042801a77a2e982ecbd57ad3eb109cd2a023033272844ac22fad47ff5086ee95434ebc5a790b45b02fce741e37f03dca932b1c32403b57c2adf51a435570fc89a21ea0302047c435bb500683066023100fa4d7d0ebb882a209f7f1eb74ec89e739174497553bde7b15745f9ea1e7d156e738c0162f66595d77f380904e9046c700231008b5c078c053916f81b3929bbd922d96fbcbea5c873a3bbf31404f3f32764b3da0aadbc6dfc61a20831072fe017891d720302047c435bb5006730650231008f4e15406032472dfd6e22249b7feb61a1b8effadc92a1eb96430f23a013e0bf9db330f4bc3fa4905d41066fa251dfb40230463053bb1f5b8e995fee20ed6eca93befb28ea648720f66bd8327b396d780be94efe337a2d918792629454916e3d2ad00302047c435bb50066306402300a3ef354f120dab7966fdb0a884f310369191f7bd00fa1e2cbcae384683a52607384d5ebcd795395d484edd9a83aa22802301e59529ababe49cbdb33cd2b9bc87458a1a979d15e3964abac221ec58574b7bc890f96e1f4f727f98cb8a1216931a2cc0302047c435bb500673065023100b88f0896b8534383ede88140368e9514cdfa24a14dbd02d351227ac1a03429bc789980b242a7848129681b276d23a5c50230581bd6f3ca13ce98df589fbe4b79c8d83cb20257cf56db033590d1997032b8130f336f0586e3643b972c1aab97a359640302047c435bb50068306602310097ea18de366faae11e1aa86c564f7c87d9e8b33d458873905186be165c5280edf98d2e3c6d2e3bc70856484eb47b2039023100c2a6a2360e2de50b1afbcaaf54a0eea91f981e90bc588ed5c71b998df45df38daffbf2cf5973901d415bf3eff533b0360302047c435bb500673065023100d086554138368a9660b747c004299c136458d593211b693b3ab214653326b4406c43dd47d306383bdfd0ec1d8261843a02300bab08ee7d8c18c6f4a85195339244f3f62bdd755c2aff9b59ac6a5a257c5450ab14e22aaa1ef2b412af533abd541cab0302047c435bb500673065023100bbeec69424a569f16dac7a2cf1368e6423989078309d6b9365831f9923ddc7ceb4995f41e4a5ea6f09b74bc5966e4c0302300e9b169b71ad70f7106680bbe66e45b80b9f552c7880d15cfd254022aa4fe46a642a6b263f81fbea5114a3779d23dda20302047c435bb500663064023067fa2762929f3d9427eeeddf7ee1b2034c3e3234130aaf2ea6db9df9bd51dcb13bee2eda358bbe5c12a866781259a6650230363e236e90313f136bfca4778dfa3f433ae59f9e0165d923edb7e6dcc643fefa815d8d11ecd96ec3f26bd2d65cc12bd00302047c435bb500673065023100ef170710ad3fe46baa17e7b38c92f84cc362893276488b1e8a962e7d87aaa3aec93130f30d0ae382613eafbef5e9f72b02301c5a2a432d47d958acfef317fcb91321f43caa0626bdea789c7bf37a3aaf6d3b3dd6a58225709e98001ee011da98ee510302047c435bb500683066023100a8f4d54d968b6d7b3abafed22bfef62b80bf5b94e5502e0cb86d551a1759d9cb5d38e1fbbd4b436fdab142494c977efc023100fff0d32f782283e9f0ec4d6c66af436341b2c2fed6726cf945b8bbb6086bb0f2044338f2d1a3ea13ea3e506dbd561a350302047c435bb50067306502306a85c0a10598464c7e8fe82ebfed416778a4f6880cbdaf657f59743a463ff520c95d20706ece168acd8bac35505713b6023100d259f01117b1df73437cbbf2409845bebdab5b041abd7df3317b95672de19121a8883ab4e6d55b9ecdc18bcf8837d5460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304338eb857f5080c7ade6cf59d9ae3f3efeb33d720e0231cc66e0dcaa804a176221fb5d79eec519f2719a3323193d2b3e02301e057c9afb6e9a891216eba7ca61672b0761e61e4b7fbabdadbf1c018a059e4aed031cebb3165050407f60c183bfa9d50302047c435bb50067306502310087ae76315faba20f36cd36f240b9ba11cf09f6b19b78b90b7346e147ebe68fe1b7c72275b26d38dcff2cb774bc378e3d02303246fd49e0859dda5dcde444fcb4936cf1e5e5f4593b0a0ac1c3520a3e92a3403165480056bbcd0b93d9e177e88743f60302047c435bb50067306502302ab983447c2bfbcd05ae3632d5435240b105cd7e5db38afd3c5af316dfe7916df8c7bdaa309143c522262d0393d9bd58023100d1bbcda60137f439f9cbd7e402efb544e4a2bc5541e65c9c35fd2dbf3d409b859dc090b9b4b74985e2fb244addf953440302047c435bb500683066023100f1d764c80c1b21ccceb484c6460fb97a3428718a0e06e21f3751b8d2ebd45374e3adab601aa7cfa3c52cd8ea8fc3dd14023100eee08ad1f5b8bec65c66433ec5b91714caa8ddc4cbca3e2910eb68cadab8faa922ca84dc92bc644ae4b82bca593277f30302047c435bb500683066023100eb3693065e3639d2d6aa660f204e59241f2d885d9d4e06c6bff49786b96e7bc780bf15c923948000b0f1e253274f0306023100ba78ecf96f10960e8d7e62880798669f4327a70989f1c1979c6971a1e6f97be7c457802dc7f685c20f4accf2ec7599860302047c435bb500673065023100db3d2472df1bc99441eebee7937c75161e3ae3b9e5afbecf3d67372c6eb8b585b43739baf11060920557d4be4b2af7f0023021778d1de4925afa1c824292a37f6732c8b71289ddda04abfe3e7e18768840e50a3545c32d754f9e42fa4b7c353e69140302047c435bb500673065023100c4037592adb225f50cc129f8e2ed41869ad01cb02a4f734508cf1a58216681760a0684f9f652f726987629c97cf5967502305184bb886431deccceead145168280ad9ef786f6ec5e729be08a49876fa1d6e4404a39e30ef9ef344872dfa2231781750302047c435bb50067306502303bdbe91f182afdf2191260b251d74790fcfa4629e6c344a09b7f5a962df9b98a42daa0ddb1b6dea8d66aa55346a1d0da02310085f504052f0db4a8ab2d752f597afc4134a8b8815e05cef0fc0af22545d285972601f67f91e4861155848bcd608bafcd0302047c435bb5006630640230642f7a433d558971aa663a6a67c8cfb742fd1db34d434d2c9595807bdf6d0998b5c07d8fddaf5626bdec0368e8bc4d36023064ed16dcaaceac7ef7d797968d8cae784465021ddb172f97c0a773af9d24e53f3604ece251db797b8e653b82601707280302047c435bb50066306402300c986a441c30c255f51065d910147ce5dae8a7ad934b3e6dd12a6f7d63e706a6f31cf2bef32578c930f63d61899dfb9302300cf8c9dec0200d8d4f27ed74d8e458cf82699cb7aa02a2cff28be96f03ff2bdc9a343d38d630cad3d274424407096a2e0302047c435bb5006730650230231ecde438bb1fd796f6e9251b219db710b4e19a4aeabab2011cd22a02d2a40d711cfa27dc8a1eb5daab3248ff3ced0f023100dcadad48ed9c3c01f50cf22e68778fc3efd0b97eba6fb12ad077c5c8da6504487e9cebd6d89ccbc9c0e5a0245f8476280302047c435bb500663064023075356867750584374b8193dcd7a5804bbb0b022355ebbbefcdd6a6a089dedaa3545eb4bf4b9e5ed3a038c79ce583dd7302303c76475da4faacfe36769cdad94910ce1eae7b9084fb5bcc392657c8716714e61ea1b49600d338a6da0dd1e467229bc30302047c435bb5006830660231008b44bc432416609a7fc1fcfbca3af6303bd0aaf59497d87c449aafab2b82edd9cc74bf6d0b99508c4570b1a607b06f0f02310088918b3371502ca0ed33f6bbd9729dc76648a9a2ea9f720a7b9cbf739e49ef54b48a2436e5a1048bfb198b27d6ef77e70302047c435bb500673065023100b3b9856df3e75cf6cbdc1cfc0e7abb9db5f13ea68153a3cc555524ac832e8e0311f871d9ea5f45eebaeb482b1d7dc2b002302065ec69b06a48408b4b1a90d79e0a420902ab89ce3e1120ea15ff9562c8d37bfbc5ad1d7a3e0a86404420919b62d2600302047c435bb50067306502301a285ec8fffcd4ebfe9f7eb7594c2e1961500dd608e425e792eb8efdebac718cc527c81313829d9bba3a478f3eb035c5023100dee08f54d50f6854ad84670cfa030d7f5a8bb8b84c58faba38ae47a67ed39fa41be1159fc4cda99a15c925e0394de9a60302047c435bb500673065023100a6f97e8931c0d01c68e7ab113de680c8880ca288c86c0022165def9e478ae62dd4206ee3f3d4d04ba47a903d3c624e3a02306db38bdb5dc471b0d4edbb4c8f6ffbbface2d5fdd71a86fb81d11140dc12a12fd2d130864e711272c4e8f2a1695330560302047c435bb500673065023100ac2dc40ac8eb76dc6d68a12d7fb3c2260ac3e84988a4bd9a43b2c7d9508aaa1e251ca87a702155e6ae635d7c8fff310602303a8ea552073ad35c610fdd6ac54a0289f4123c37ca9120db565f84027c4e96682cfe2a3944929c21574de36711c82b810302047c435bb500673065023100b91967108ee63103080e08abbadeba2fbfee2603eb7ead1815f72a7ccc60aec4f0dcf838d66f9e519f03cf4b49dfde2802301c0acb5d7eb4dc10d63360d6a6bcdd849760995037b793a3567c2719ab0722947dd06e11b06cc40ea9a6329ac8c40a9c0302047c435bb50067306502306576e74fbc4b3564828477df22f3dc88d3f02a893bfdbe3487b05ababf5d033d464d35d41df441859cb891c719f91c27023100f735d78542166c69da34559f820cfc2334d36ec2381f39914abea43239b8ce8eae9ca85ff21207ae384a1903d96894440302047c435bb500673065023100abcb8f15ea71d5a6d923699d3323e685b28acdbfb47a67bdb11334eba8db29470d96cb3229d0e880265ec26202d518180230629d3e7a27072fbdc6cfc0a1814767a19f1e80e8f6c58f135fd34cf110f37f0732eac8dbb0396b9f178b39ca585cbafc0302047c435bb5006730650230073fd6ad7d6c07df98e18a95ec52d01aa105bdc733a583ce3765267f1ed6f767c2d5afcae639cbdb677b1b48a289f1b102310097595b7fd5015e66352de5a3a4776cecaa033192b8856c86390b70abfa903d45e479ccd281f18c19effaa4e9635b86f00302047c435bb50067306502300f785d57a2a1693e6c9b8d8e5fba03d9eaeb562e220783446563ee45327505066b5d92e04d10d484473cd25ad5994643023100acf44a66448d808783147864cdc12a76a32e0b3d69ef6c02ab491d27b90ce9b4e3e451df28e236ad93ada35c840c2bb50302047c435bb50068306602310089c07f6136a9a28322d52196eaefb381de2962579f365dde3b7d8bca794654cd24931f35acd149574bdf71a17f9561cc023100eecf36e25f85c0b436a58d0f127fffb518579a109355d4e2941f5285c73d71e2a522b03197ebe03e8c5db6efa96e6cf90302047c435bb50067306502301e1573da809f045f7d6484b942729018b10a371712be86446fe0844d9e28070f43df76c5f565fa0164d914aa90f9d48f023100c158b67c96187c59532373ef6792997813b208bc8c5f1bbc0dab4d0915ce5a1354710b07c670a2b24adf7862dfcd03940302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301da10343bc4a31bc6276f10ec2e287b9d91beccb18de00f6947b31af55cb3399323e056e525d5a29191ea7731a9af081023100b184b287d82d04c8bc877fe8219d9bd18ebf216f4822557dd555f2173adda8b9e5cf45993e08736ab2c91eca8c5bb9aa0302047c435bb50067306502307bf608dd7986be86ad8f779492eb883f03dddbe92fc8784306237dd6b17077b1e2b099a2695412fbca21905360957a37023100bef4c4ab6e39a5abf595325f6956c60af8ece7b69e6629ecf6e525a3fc7191fdf71d2425846e8e14114f957a840a80730302047c435bb500683066023100db9d47c0ad4b911779ccc6111667233535ca91dfc38ccc55475fdb1a68b3d21844963106f3a41cceaae27faec25ed909023100eeaf93a9f98e02d9e49e028f7081938805e2de5c91e73dde82ec4025fc7bdff302f102ed7eee41a64e1173bbc869e3350302047c435bb500663064023017b50c4541a5e51c0f5491f803ea4994cc7c8796dc9a52a35313cf1a57f813ee613670fb82dc6ef7aa1f37aaed92c4e6023056fab76b42992e2a5e88b737616ad63e5e4e044aa34c42d74d4a2a82492d36cc2e14de27ddcf01ff3a535ddcf653adcb0302047c435bb5006730650231008bb8127f4f6889ec6620196463cecd2a3975b573482e276e503b52702bde10d372992e8a67c7b4121ec32add049c269a02304704e1eaa2fe4b08d06d84e6cbe69569b26a712fcce31408fa12e652e13c592c0d559addf99569395a972a2e749c50fc0302047c435bb500673065023017bb5dbc1c34585d766453c705470a0f6b49e5f9c0fb79833af838f022f879126ab37037ba168ccc90a772a5fb32611102310084297ec656e042e8ba3e251979e90e0ae56f19de449965aa8ebecf56eb125d1c512eec1a7250a55b0d9076e65b0022730302047c435bb50066306402302515b2c9f52e78d7a169e3637554cb652655f596c45507c243b642df4c0f302dd0df5ad93d09c52ef6deb53962dfc3ea02307f6d8b0d2cc77b0924418db759f481b43a17b9eb29198ca65e8dc231b2d62acb0461c9546606ac34c1527bb7d11b304a0302047c435bb50067306502305e1444d5ed70666ad472db324a9a18c5aa0a559ab66b469eb3097f12e503bc284d31d4b8c140f53c09694481ef48f17a023100e7baef2db69d6b41e8dbf85f72b1a9236df22eebae9e939934098aece62cfe36369472013f18eb1bcba5008320bc378b0302047c435bb5006730650230536dad0c027176debd55a66353d603ee972d726a02a160f6fac700234be092485e4fa24c5a95e289eafc7067057efa16023100ef178abc18a5d36a171b3284929586b6d0dac3e92749f0730dc4ea65299d6e679eefad6180071cce79db09e1d603d6e60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302d65f94493e5f55e798c94a13db8134c7372a135b0097046700f0842c20b1662dc19e3f7870ef629775f7bb91e7c7c98023100e537e1a4793b9e3eff299de2b36212473a44578403e5cafb34a0cf1d0b3b14309fadf7863d1bc994564969ac736baa760302047c435bb50067306502310082699cb8637e672a99dde4500631a04a9856fdbc97d44cdc7f6b28de40bcc281c53ed4e342f1c3622c65d4c645f7c07202307d717d0725d0d0ea6100a69ce669131ad733a342b8a70b728e25d65ed313751642a8a721d6960d41b07b1fc326a8cabe0302047c435bb500683066023100b15a8a5a2d4e9b77c2638eb5982b53795551984000057cb6eb659ae197f6d266c2a6441049995105c4ff435738b9734b0231008616af73da89c065fec916f1a2c69a17be0cab54968713b7c683648e6fc2e28974a1680baec1824e7f0df714997ec7150302047c435bb500673065023100d48230257534815d1a9c8ee043424b88f1e605c7e2265002bab645d15772c7feeb71efe8484bf35203fca40bf9a6dfcd023017540a6cff048b830cadc0057e6aff3bca85a15802f2964c9d8036d86fc16e1c9e29adf3d6c24d3430b84b8306a86f390302047c435bb50067306502300199faaab87428327fd7ab3eab6a3fd8712ca365446e5eb9c9d859ffbe13e4c84d8869193685d0d0e78074c0544636c4023100bd093ff293ceeabf3c378d6669e323bd4ab7781126ab761eb586be453ad117a17076cd1b72f49619bb77367d595485900302047c435bb500683066023100b735f99dd147edfa3988208e5d549f96fe43ad6d113368298d20f63ae83c3cc7da595ca0718db1106ff0c75fc8ad6de1023100f3bf8d54bbf32fa75a68378a58c8129429a761fdf6ffdd4a58dd6b59533d4876c117aa99606ae00272d0bfe102b5b5d60302047c435bb500673065023012cb2a719e7897893fed99c0c2740b6f27642d13b44405fe9220e155aa5cc381d690b5a8e299f4a0dcaf7d9fd838e4d3023100fcac24bd0384df166b132fa6e47a8b9ac2a3b8b5eff4ce6c59d321a70ba9e9271e6e50d9a7ea32c49308f69e70d93aef0302047c435bb50067306502300b25b46153561ecc7151051b695e63f3e67d0378a7b70ed104b7f70afb9cb7fb551620e1a4977b3bc7c33c4373eacc1d023100fefea18863b0973d81ac9af17f9632fac27ecf930f19abbf43062b5bf2b8aabfebbf0bc1ba58538c7d809ed2bdea02900302047c435bb500663064023006700db02d6e218d0257facb11c731bfd12896a9b20c40e79b63b55f9a40ae6315b8317e7a0a30d187f04acaa45cb7fc023012f7ef832c52f4243f1e884dfdb82de6eb0f700ccc156c87f4436ccfccfa178b4376b7d4a5d3aeb3aa69a1c967a45aa20302047c435bb500683066023100d1c55a2641094f4a57e3be58443ad0f9af7503e56b609fc9035e1a87e791fd39183dd6847ee7db4863302f64af84143f023100be8f6b473849145e70cd502ca558f6263150476f608af4bc759a9c5042407a9085731f9d38cf6e5a6bdd2dc2addad4010302047c435bb500683066023100f20e7cf623ccbf934e687ac0b81729f460197daa69b925e1ae81ef43ddae570642a9f5c1842b191b62f86fb73d5e32fb023100e939d421d0c525e0fe969fbe38716d6cfff32e971182f340ad9eab82ebaade978e2e6930c08fbde49dd46c890814de500302047c435bb500683066023100dffcef0e3c07151ff446846e526add4ff3ca53d0d7018d4fd978809c3abf012457af0648c796eb7407babca194f57c50023100e22294dc479d2e551113cf311c238e5de7bd14783810a9de31e538282814d9e9b030d5590e9d91a58bea6f941de8958f0302047c435bb50067306502307db8e24b74fc2b254af63023889b0830b57c8a972c941378e155c46ff72f4fd183e0dcf793ebccdcb4f4d9e995981390023100ca9db8d28ac4915e402b566424048d5b7daf8cc00e1e8a5773a81d13976a47ef6d4936ab7b04df582975662f2c8ee6c00302047c435bb500683066023100baf99ec9ee0003b4fda5768ef43eb3dd13c4fcf09d1982524508f49a6410367f8c8edc8c30f6b65815280ae78d57f11d023100c9f2765d37d794f2638092249c29a9ee057713fe5c635a290f98803e3cab5793f29e34d630c4e1b0e4fda91c13e3088d0302047c435bb50066306402307d45fff346cfa95216c322f8497ab7a85167d5093ea43b8f6d67b27aea995e99ed79d96ac1db34e7576cf4b6b22f89d402307b343b14d660c2a4cf91676a2ec16abf9f634090fd4dda50ff111ef6af540bfb99c450dafd5beec35378e166a92f018a0302047c435bb500663064023044ada8d3174bb462b9387319b7cc0d6362a894ace4d6768472bc8084272958ede0a1fcf29fb9c1e8f69e78f6c03c08f402301b048b09b294eb59dd74f39369758f090b8b69d9dbdc806c955a9a4636d792bf5ffc28266a67475d7e0131eea13657ec0302047c435bb500673065023100c5e92731f6a0425c78292af0a562f647a6b4a2e5a8fefae254887461d148658133537216d53e0f85c715c7780a26ea8b02304ad807f3c093b24ae079e6f16b3947aa23462310b7e7522c5c12054a90245e56119898454a93897451711faebeac631f0302047c435bb50066306402300806b1a431c9de045744612c6b6fea4777537c36563fc095e0d3a49689d91c71733a6c62bdd974d39332b87789aa414f023012676320e6527c7139ef480562865a44639cdc7b96fb9d1404e9c8ddb69f22e4551cfff1c359bdbb0c62bdf89209c2c50302047c435bb500673065023100ae9351e6b78dd5ea1fbc445ef7c5ee3f6092bd4077c16bc95b67147b8525f613cb599909b1e5b563c410e4cb0159a5e402303cdde81ba81231763f08e9bf96d77c7d39ab5a57cd0a5a0fb6ea3911595c9849966807df51d26e44d20b3f96a3638fe60302047c435bb500673065023100b7c2ea39933793a921a1dbf3ed60a9d7741ac7a256e7941310fa837e5e1d6ff33f16232d61800cc36f474b19a6c28da402301af0cb3f7550770fee80836e38c35cc8a4b92b16179e93a570d211d46ef1127bf436e7808ef1592ea4ecb957361b6ec90302047c435bb500683066023100f6f6d50a7e285136f2ce7066a94e7eb8baf1295012197529ffeab549ca53f5fd9d45d3f1aefefab5348b15f04ef2ec620231008c59b0e5523a90896405bba76495f28d3b49f15e649284d2394643e219d49f0f29eebc32c35cb630df15fac426a206e80302047c435bb50066306402302b50a761c73fc1661225e814fe5001ee740cf6dd9ef3f0a111c4dc43d42ab1a355c1f0fb414e3246a7b55c00044d150e02306a92b35758855b806f49cfc2507687f3d4c1a236aaee7e7e4fb0130b86ca555ad0d2352d08207c56dbec0ee9e29870700302047c435bb500663064023029da161e95f132db43dea07125df6e6aa5317070cef5561cc8f2d81fcf37b8dac4846c0023179a80bbc6c330aaa7fcbf023037dc26dd82421e3aa8b8b7798ff9d9df180529ec97d76160e3a1d7d737ea0e234e4065c58f57ab9162fc0c6d82673ba60302047c435bb500683066023100c0b15ee9bcf5adb71d7fa83fd6fd57c11b133e88f7c2a2e4dc13efb7c35cb63b655261110eeb8bf644e158ccb3f51cec023100bc21e131d75b90a38d012d4f8db88bef4a51605a618536a082d4eaf4a0a50566f3647d0219a614e22ef959212ce1bd910302047c435bb500683066023100f3aa583af50ab5cd9553349361252ffb50a31284e704f6f56265f9701b72e164dd8b3a07b889e60bb1defb5a3cf8b393023100e4e5dd827cf9e228e4f986ced741262ce61df1b6cd9f275ef5f8e37c39d2bf998e0422dc230ba1bce69135511ecfe48f0302047c435bb50067306502306493bfb4a50627b9fbdf9dc80a77c4ea32f56b346671a079611ca9322f67f425fab10d6914eca422cc808a498048e900023100c114f5ec1d1a8862d8111a675feb8973dd953f8865c9a626f39a6e6cb860672543142cfab1bba6529b3b28395738eab90302047c435bb5006730650230121c4a84fc3195487c83eb6b379cf836e329d2f5b501cda11da3fe4601cf909d346d1105f9e1bec8f00ab1a18b3f41e602310084fd8b18b3d90f06d37923ceb2428879db7741bbd0d13fc482b0d6cff9e2524a89720b8e9bd08316956bbea6f872d8120302047c435bb50066306402304b202b843974c4c88a37e8de38bb7c3af5df04faf129054c1dea2b2ca654723ce8dbea2970ed30e89bb0a2bd95db5afd02307cd69559d7929578f753231a914dccb9d8b7152971103da8ac1503db43817854fd46810504c95e772978d5a5c908d59e0302047c435bb50066306402303891b2b86e6341642868e728953623cf311c4d830ec8e9bfe118f1ab50a28bbc3ba97b466849872e997b6dd40960e08102306e96d3f0fe398dd354c420b3c5d3a464cd4bfc85874e2eaea745de8a7b18bdbe7439ba3385d03848aadc72179dc0ab910302047c435bb5006630640230071789dcbf35642d4aa896b572b4514fe6a3df445673585e4f99ea253eb9c4c4d0f290f12e8e3b9a198547567ae75b71023064e2938f3eed1bb8abe63e041bc8e5ee9b8620f11acd99b5a78300781562f3f299d65c7d57a750e67eb09f42e08511760302047c435bb5006630640230799eca0ed11028cc396370c2338ecb5d2767b51cff01290d4663e10fc031f9428307ec2ea13d5442d3b345bf651f8513023005db97492dd2cbdb49f3dcb04490a9a71d8f856440bd9bd49683fac3606e8114a86be380318365dab260b9196ff328870302047c435bb5006730650230608f7e9b1a26f7a938f28acba9721f329cf2b0f58f319dbd8eb1bec62dfce6b492e1833991feb865ed808dabd05471b9023100de2d3551ca868732c2ab4c1233fa3fb090470cd1ade45ac28efac7a57056f2078f575e2901d69818f9555affd43925c10302047c435bb5006730650230395b20272d78d9f0305df6f578727a36728033465ad66c3878bb41330917bcc950ea1bf420aa71da7ff8a1e974354f3a023100b2bc57aa17a59930801f14ce99214fb12a88ca49babb52b23b46e119fe62a00fb3c88259141484af541fc788d92293c20302047c435bb50067306502301adb429eeac8ba7579a04ea2f4a7452ac48bd26802f33c15ae5f6614897c2da69f7d56bea0eb88f8a94e0e38a7a6665f0231009eea3ff1afd77eda40719d43db761af965b869ce482a3e292d5644c16bfbed264e4a0cac6e99e3781d0142be954acf3a0302047c435bb500673065023100cfe0f445b19817b6ab2bf323f87da0bb0924e986234b9e46dc309a2138ec35b51a73d984145cdccf6e8ed138b0a8f9ec02300e5282b7e8eea2d685141f6f716d1d48be1aac82224ca720a62fd9f78c99f807cac0f078e5f56f0ab489d0c77b7548e60302047c435bb500673065023100d5fd97da0b58ea2bab60fa253839f8233c5211184320b5d01d73c0de08dbc6940fd5612bc93cbc480efc8ac36db1573c023050bd50e20fbfca3f69b19b8a215c893ca388264353732760d7b1b89396521fb93f8fb0f4e5aa2e34529d4777825b6fd00302047c435bb500673065023076e2040f688b331b2ca2a7aee06f401c29a72f0366ad2618c8da29282c554b317c8ebf6c969ca6e1a1c62ff005aa2b34023100a6f0035b1c80c03306310fd5c4b2141f325439ac2ecae9746a5e724433702ecca53272c317f16369f23a69f2d376ebea0302047c435bb500673065023100bab67362ce418e2cfeedbd936048952290d1f858092bf3f2feec26272d02e5ddae827b223e5f5eb79fe4ae642491fb5a0230022796da767054e609d9a4fe28ae420a1d46187f32d447829a03de1f8542961ac7c3e07313af22af36a7d70210a0bdc10302047c435bb500673065023039265ce3fbeae2b9a32bd09426cab4e8f80c93c5271b5fb84cfe5bf5d12e646825ff7d7f832969149ea7772d0cfc7a12023100b926b52cd5145974fea729b4bdff812c510146ddb438cbe536509e9371c06e50b469838c1d65a66f2a560500ae3281b30302047c435bb500663064023048f35937800d65f1f9d207498d64a46fb9ea1031ac8cdb620762e4f033431949194aeadc89b096009824fd8dd7b7b5c3023037ca386af2ab7ce39678e9f76a8ca8d7b7b7b58f8b02226da4d2a2a293e0bea48fbaf63821c212bf4a9581de1f94623a0302047c435bb50066306402306d49f8c7cf5ea918a082efb65452bb552458c90bee5d165452fb747073ac27c55cf5d45d4f6282a26bb82de7861a6e8c02302b4a5ea627f4dfcea9f461be35ccd7ed6ab47d1198b0b37f6f6ca82e7cc311933867b801ea3f383bf6f8026f9c4155300302047c435bb50067306502306949be4665e033ab115dea25ccd3f89ec1e2158c938489f70fb01183655fec96de22e36d49343b08235b720b04a2cfa50231009d874b8ee3dce2aa313e6eb3c3bf52d04cb18b41894a01e00763e9585002db9035dc5f298d2dd7c0e74d493f549389df0302047c435bb50067306502306b859d6f9426a9423bd00874a31752bc48f387e297b3ef5e64e037487549e27fcd28c3ff4a2d6f7e4128e648a737aa3b023100c755ed1c25d2aa75e79ee7221bb999e98adf251815ff2fbae9bbab20ed95b8afe2552c4d9ab709387e3f31ad86d35f6c0302047c435bb500683066023100aa8c25f7793e08fe402eee96762a00aee9709543f28d119c3d4b15c9bdd3929254621d1fe41f6d266001b84199cfc61a023100e798efbdbf9923a13ecfefd95bc6ef520fab15e80b87aa3128832ae11d0ad9127dc0d5ce495e7b569cbcf7a7da24f5680302047c435bb50067306502310095ad17a4c6a5af0ea093e6466d39ef5a01a94e47198ff108f627b03f789eb2a0503c87785dcaf3893f8fe2bb3de3bf7e0230361fa3a671cbcc281949e45fa098070211cfb3812db7fc1c2d7c167416d0485e6814817d15acc1415192b2575b69a1600302047c435bb50067306502302c1fe694543c4e3108cf11036e2bf50f957a3b272915dbd0d3aab1fb5bba70a3e725b204e820811cd2b7f53b13961028023100c35a7bff355d1d5851b6c0197a76ce4d1147d7a890007d65f55e4bc1902fe418895de60b8afe666abf626f5362745c4d0302047c435bb500673065023100e7803b36f51978fea2ccfb8a05beb35a7dd4aa8dc0e766b60d18dc594b357580737c8bcb3618bfca00674ca7d7677a300230220f8b1ee32ca181a42cbfa109645529a727fae91338e69b7e7a8c13d666bc942a73969d73c8369b254925f21591cd940302047c435bb500673065023100b93298d08b3274fa564660dacee5f5943120c7af8bb0cb81e573a78acaf3198b4c4080da6462468eb90e1ed2963658a102301319ed74257ad257d22faa1cc6c0706542eef0a3807fc255748286e2c0c1f533e3819a2b635d6305ed9e8314586542a40302047c435bb500673065023034091390d534e7b846fbc9efd8de91145df44a0c4bd006cc6b26fdf92b6402d1bbe45cb519401689bca3bbc47c43855b023100a7c5085fdab7853ea8b3bcb6c8c10963cec5a684384c7658e6b91c741157a35f6c5965b232c03304fadd178b4a51de530302047c435bb500683066023100d487a033a3b288b0a8ef41e76781a4d05b4121ca13aa43cc76d6fc695a8c49e56604fbd2903cf3533588b21cc69b8fc5023100ff22971f192be630fd0f56b92163dcf1949939f9002720d0a13a478baba9f091956163cdcc755b44c6e870993ea389dc0302047c435bb500663064023027f4dc2ad30ee83e227d10ab980caf80886502c6e8adfe89fec1e9b705ea42f0a144bc15aed0a98cc398d122ae6175cd0230659e7670fc0378b68bbd428af45370be9a77301de48dcdde6689bdc62b825d61615353bc9cb3bc928b01ea96eda775820302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cc1208e99b8ff40746ff8127401373b21197866817d5356eb3ac167d2ad4325cfa03c4e7a4f915a339fb6c7bb2b0d400023043ae58d02c70aea0061284e277c53d8a30829977f0b1c2b9d1dd6632887b01191309428421066912822b7e80e82771bc0302047c435bb50066306402305c1f88970ae43e09afa4f91e97af0dcb760bad7428bf651f295f0d7ae134a33bf9e831f39ca3873292512c4c11de1602023015440c34c4d4ec09890b948c7cb00d4cc270a862fd51abe2e79ec74a4b4fa7bdae48f2c3cb4622ef07ebe5d2f257aa8c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310081a96d2768c99b53014d248aa33b4741488ffb829c3462007a3984461ff01f3463fb4da86c9f7a2e6e84805528e0841a023100d11dda1a875f06e11f2c8fb15d37629cea032cde50b421ee3a345d045a5dc98e95ff50882d95e94a5246dfaa04a274840302047c435bb50067306502307d11a1dce9934d8d4b7cea81388fbb88d58a53a5f5d6e4b2c00f7a7b482f094d29a25dfcc57c10ee5d3c643cd72421f3023100da13ec42640f7af4426f6fbde7c74966ba0db0fd5c31fc8be52faf76ccdd069fbe63586dd9ec1df9114a1a4a8c2ca09a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230490a8a19b047da41335e4f11e08449079f290892fbd208a3e937bd202c2ea887840d3c4ff695ae515a0c307319c71d2a023100d0c00934e0aa8a32abb1210cf52ec5d09079460bec40638a78354a6ae9ebcc7db3897daead3366d3b1d2a731ac1fd4140302047c435bb50066306402304d9d349c295a657f874e51b80ce67caf60108027832563b157737fb84b78dfa9363ea0e692de8c81aa83f720ad5466210230498759625b4169c4461c0d6b32d837b8ce040d1d8069f23c12eac59708d0762043abf2505ed9c47706075a2da6ba25730302047c435bb5006630640230451be884950260093a752afb537c263fc5d52de66c68535134e6c6f08832e0f46e78bdbca0a6ec0a15c49055b723bcda023009d6d63d001055788f8ed11e910f6c9e3a8cc7d7676f15675fd266f6c4b1df97486f442555503e9127fd76579e5ee0460302047c435bb5006730650230182129489366480d02a10da993986900f191db4380b46811feff1a40299a332a8edd29efdf2c28c0e605ea1988664c43023100e1c1e19a3df6081742129cdaaaba25b7a555bdd0db04fbbaa14e41c87da8a9aeff8569db769b384fa7175f50974bc2c00302047c435bb5006630640230182975391b84b18f231ed884cd268c7f36759ad89e5b57b775568c207e9d83424f8053438c7ebe1caa05168e4af28e6502306c37b16bc02f39b740820aa1368d03d0673a5199c6200c5f86fc76229e289b2a16fb2b34912dd514a5eb5b149df99ebd0302047c435bb50066306402305c7d688c8dfd8291b3827796756468eed4182206aa6a882616e454e39ace199bf78c2e5e34c8f9b567a64be6b725fb8f02301a5f570a82d30096d54cb5283d4fa96409221838d2337258f111ba02cf36f65e084cee3f7c2d9662a35de0d16a4ece8a0302047c435bb50066306402302712aeba930a0285e39a05e3fa07bcaab1e96f773cd60dd54e8fca3e9e3a417e05f9d78ac5070c98676806e321ecfbcf0230218b0648183fdab6d3c4dedf7cda5372d2665fb24c749c1d8d9571631c99ff9ab302b4c4f900d6db99392c7948471e2b0302047c435bb500663064023079e082beedef447a28b3f755e4392f602cf0c073f0700c2f0382b1a22349bd71171e157b1964aa902ec2df2ab59f8d59023010030a91ddd7f050ba27e4b5b29d8620cdeb4f4d60f9b0830517518350b77e1c9740d2b7192500ec68b383da0268463e0302047c435bb50066306402301a559733ec8f0a376b5ddf3bddcf6e80faca659163fe3fde8d0f134b6950f7b530c8a29f18f2d354e9d89355c2829245023026f5ebac2e17b1f52ea4ec7366fe8dba903a2fc64dccbb3e5b47b11fec9940306c43b8fc34f161824e39930146e6b3d20302047c435bb500683066023100b27a4c948e343fb225998bbc74b5ec4bf50a30d2eb72355ffc7126a62032c628bb4e0d7531874e06a80f925b4d5df7b002310099005e8e6bad7cb49d13cc9bf3b9b5eb07d42407eb475f362ec36907e8b4c9884011df7785fc9c676eee82b17355173b0302047c435bb50067306502304a444af10ff9aa27e70d0d67c8b1010bec3f33de1ac42aa1eff31594e8dd4c4e64c7bed7d74347c24a6bee9f0d840eb3023100ca61c2e381f652b612eb910b4ad7cf9ad9649295c15b6171c2e9e0dda3df62faac06c38e1f506fb563f738b912db9f9e0302047c435bb500673065023100f163081c73387c8bf2085ecea3e0c0f4d30b772c7ff15cebcd2fcd298e7931e7a7c1d4b637e9a1b4760874249f8f64e802305bba586fdda40014c3e3cd90b56856a3f3acd5b00c1edb94375c2086b13be95f427b46295ccb6f3f86efbb35091a5d4e0302047c435bb500663064023043575b02e205b9415770826322dd56b66695bdecd6a95f70c8c1a7d365d03043b36bb6ca06caf4ade52e799fd67e94ea023048c5c0d4142f6ba3282031a27916ac90c2f3e7ef85e764bbd1eeb902e183e24e196599a704d4e5501c8c0be0d5f8107b0302047c435bb500683066023100c5b6e0c061535a74d2af90c2b0183d2cd8229dcc024bd1c57f33ae5eea5832718cc6e58abe6dd588ece57d95f31c91ca023100bd171f284b2a3a8b7894e9892cbe12feccab0b2621e260cea5d4c92ee3de9b1df4b621da08780714294e7cecdcae1e290302047c435bb500683066023100ca8b3e4aac8a2e16588c6a99c39caf5af9cd4bb85b5742b096847a007ff88b72ed51870086fb202fa00382d505d890b10231009102281736384468aef3eb63c843eed31d554de453e15514d6f8bb25fb4f0c2819aa8c071dac81dac223c52fb3a090f20302047c435bb500673065023100c1d8dc4229e4650c6a232da533dfe52dde8636a658c512e44b9068c343eca3076faebddf8968747020e20fabeddbf86a0230208771ae90b0ef5ea11bfc0bc7b5e64d6a36f283d8153cb1c99bc3865e4ac018707e5191106e15c4bc9823fb364878a90302047c435bb500683066023100b266adcc4f2729775ec5376d8dff6cccb7cd209fd0569839aab45ada39a90afb71d50b3f45181fb9b80dd288e15a2b75023100c25c7ed0e06137a214eef69f4e743382fbdbc5771d8b43b730db9f084eab85d5b414f5c7c32ffa5613671f25ac57814c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023025e077f3f8afa4d6fd50946cc935becb1281c832b81c5efad754a68d3db161e8aa7472a2445f158c815e433d7d7e4f9a02306d1b0243f4cf196ec416e4b299b99ad3005fdc1c83234d5fee58bf6c53a8719dc96644df61fdf7179136dd0e9d5df1be0302047c435bb500673065023100e540c6f645fcb0657633b1883aaa7f611d2f41187e2c8ac6735f6ccde4da3e201e2042c6fcd6c62804cb35522e5435920230170d211acf19c76af4130b0c52f4df1f621c5b9a13d568c19a2a3934935c7d394227e4cf59d30299aef4051b726033730302047c435bb5006730650230361ab84f323335959866c38477a5a7ca8943c6034e95d9d1b2e80335d6bde5553512450e0ec16c41691f0b371eb70e91023100e78c21883ad409f8d74dae5307ddfce91152ebec0c2832fa6225c5254977ab7cfe3303edebb4d3cf0c1841b7da686b890302047c435bb50067306502304c79fcfb08a4c252a5a567c498f025745dd51b44538d8253f14298557428585c90263650c3d06a0bd2c3aac4d41e4cf8023100c53ed72217d90d9f1d3b484ae3aa995941930bac3d12e09d9d75282010885a56ae56d7f8cb2862da0cb02a399a64ebe00302047c435bb500683066023100ab21b88108aa61b2bc29d922ae985b3f7495df498923364eb71fefa8ababa6b7903a4412c455401c45388e1d0752e69802310091b65c7dbed9dbe05651716f081e845ec17d8f1b03f6f269dc7b39db6d660028da734954a2abafd778d9ff74030c2bfc0302047c435bb500673065023042e18c24f6910fd5ce2df5e6ce9f19b07e6532862a09c7834f49e2c168d31be372929312fc2e22a2de81bb5e9fcd4487023100aa3e3843d47eba681bbc0d247f12f7ef4ae20bcbb96abe738c6bbe3009acc3c6a09076597c257114c7222bb3e8edae4e0302047c435bb5006730650231009f0322609ea2360ae64baf0a7e533d8b429627e47268c0b019228a600f31a60833628ad75deaa435e58ff71a49dd327602304f4b019d1c0e55361a07806824e6e7169e5e622ddda0ab14f995cf48b9b86de5185f34b76af324b70ed4f681eca3b1a40302047c435bb5006630640230198ebffced894ecd3c02d8b05c07085f0c18b8a2fe5752fecd87ee72688e88a83d4c33e62706aea95d77d4c5720d947d0230047b81d311460658e675d08bb2dd99323d36ffae01190ca0fa3a814e9088340d048d30669d1c30b7ef79e9e67d63f76c0302047c435bb500673065023029f6b5e09f3cbd33abfebe0d811d2653d1a87c35762bb903d81005342bed9ff22eac7bac19381c6662d3fd13b0479acc023100be13361da41341b95d8b414bdad7dcf41ac9a8d19d70c22101e647fad3c2947ccbd8822ecfd93c5b257ba54a0ad36a310302047c435bb50067306502303e547a20119502ae364c35ed8e4331cbb3340cf04ee61c717da740ff6dd7013540fbfb595e4817aa019f5cd3994f60ec0231009e0a2eb8f555bb179e778f566ecc503619099437fa27db3b663b21312c19e6c080f864c120948d3a18abf9ce5c325fcd0302047c435bb50067306502306d6cd14f98e9f9b640fa3ebad0c11ad842722ed0278d19fb51cef184a12017813e3394d8f2356d299d865516e0f04b8b023100c3441a57257118c802a7ffec7a3db432ee86bdf3ea3956e88363507230fb43916c52ec8dbdfba2b61cf04ed0daaf6a810302047c435bb500683066023100abbe4f9c30802514527457f024a86a4998e1efb11d7926fdf5370704c868fd26ad58d328fcbaba684af61a21213fc00b023100fabeec9ba46c63ac2fdfd3404aad407a1a8cbb28fae1ee99391976d601f084aaa0ae7ff94135040c9905da72f22855330302047c435bb500663064023072edccde289e7091c851d2ca2b8f5fcec54fd8beeffed21e7e958c783a6fee637698a0622df8829a800f50d9da538c0702305a84d7c9dc8fdfc62f4a0c88fa97b129f43c70f573a3e928f9d484aece7c74dcbe593f6b506863f855821a6abc6ee3150302047c435bb500683066023100cca27780f5e5b911d26dca96326f5e495aa77558b0f3f4f9acdaf0b7a803b90b5a26df82a6f8d0b2096b82d7318f2f1d023100e475aceb143f4a6ae3695a728a2e9db0483c0cc133fd0dad0f81f7b800a1cdb9bf881c68f1adc3192fab7a2ef358d89a0302047c435bb500673065023100f11db2b217912429ca3f93aec83856b49bc06035de8cc24cc81e434944c85a5e4178c911429931ce1dd14f549e8eb830023034d67362d5a5f72311777ecdc3a7655b0a961bb9582dd9d02ba93c9a27980ae09657695ea92a662262c54547daa15b9b0302047c435bb500673065023100b3fe8e8994b310b57de321b1e2c9bf2d37befafd0a15736d208e0ffc29e861567a748774c574ffe0e4af95225f6c2e47023016bd083a97616d89c27fd710ba1c87041621e04d89d3500e3e065757a36ea259ea7a14a66efafc03eec65ea5c1e8f60f0302047c435bb50067306502305ee4aab8d09ac03a39c1cc1c344ef66c5f6cb52a7fbeec6bf7cdac5ac66da2b86a570bedbecb56dbb03977dd118fb935023100eba27252469c095e274e25b648af9fa5fcc32a58a3b72dda5c1042f83bb4c6ba47170f6ae87469314f6616b334c62f2c0302047c435bb500673065023100c879eb67e8241f933564dada2043289acac6e37784be4edb75ccea8fd422fe301b837b03903ad3eb1cf12a583e87b6a20230125deffedfdbd95ae9d96b4a280a61ef651ae5fa5c9d92fe794b3011bbd257e53a205e2d5411868a1a99884b3109bb040302047c435bb500683066023100bea150040c7138f939f9dfe95ab40126aceaa056548bc2322fbd4e6a2321d1235b784929e8cc2ae6ef53e6025fe2dcd3023100c36d27f4aa9051d728b12545951efdb43b03ed1e85b3206c8dbb4e467a72333db6374f5fd3750b67465ebe6ab9ed56e10302047c435bb5006730650230425915d36542deea095272a7e37f3d1c0693d9c0d555a214e648233584722ee5c99bbb9f62c4acc96b8531df296a65e3023100b31a06c2af95e44d82f3aeddf3591c91cfa8806365f0bb5af98ffafe1e5f641755999504b5c25b317a77ad7dbfd5208a0302047c435bb50066306402302149af462152edef59d4796c1c0192341fb719f151599c3a04fba36ebab0134c9ff1a5c4270fe8aaaddfa49c6bfad2a4023015d0d5ee9c980eb46b893b231efdd431684d5525e667ba4f6f1b51038ca30ec3d30a60690a4076a1dc6db6e175eb67a20302047c435bb500673065023100aefc0b1cecdd5d9f45fd418f30e999fb73cd2810bcceb3c9f7e2f8ccc6b7b60de6d41ead88112abddf7615815cc6e834023026887e2a285d5285d1d816f07fd098674d3617ad96a74d1ae2307f7d31659829b3e9695de053dad7725557d2565968df0302047c435bb50066306402307c0aab2b3b2cfc6121c382f92fc1b8704a7348c0ef30c4ac3d464087f48c595de8926d045a3137d0d0dddc2e9de01232023079364bc17ffa42ec5804691c8d3223815745953a7cb8cf6a8ca82ab3006a0e9c0d2749d8df297878418d13d2e0c8e4d20302047c435bb5006830660231009bc77a0ebdaf633c700af8c569b13d10488637e2847a48279694d559b1cfff3a6e6d71b9f0ede9dbf5da307969b89142023100f5417a859df931a24249097c211291fba84b14b60811499ec65ef7326d8a257c98c2c668b9a6fcd9bd2f00ea5c5933170302047c435bb50066306402306af0f5a472cda8cbda80f50445d3747f95fb7fb368e38f8ad2aa1938ddd676b23b8b7560651566b1d96b4b9728330e1a02307bbe402d1e46988389f3371de92ee35543b6f3a38f9e31920f081a2ed62862e5d8c1183efb263afbe50ff17d7c5bf0c30302047c435bb50066306402304e66bf3a0b029f2f42241efb909e12239c60ff989c9df2ee37fc5531ff2ed225065bf9ec2c1c26ba30c93d135459b551023079e1a899cb4d7b77e5ce90ebc6834c9d12ad1596d1f8bc9c3fd62b19a46c02b0c69e07a6e2a5fdaa472d730b130be8040302047c435bb50066306402301db4072dc593d36e935806cffe180af820c8a17a39ea5e7be0382525069c77b90a421d4b2cd65a939e5a70563bb47003023043be451027b0a75d4fe4b216728063e8d92922fe8d84fd2c21f2cd577525faff9ff4a1543f6975879a3c16b3868153410302047c435bb500683066023100d8da6441ceec09ec5d26d080b7ede852ffbb06b971bb22f7d2e85aca1f5b3c115275eba29bcf0a4db9604c00592c577f0231008216e2fc1051d366152222ef6a20c8c1c3adb9d06a0fdb6785e1cf61177c4a18d04595abd6e5f6d3639bed554148f2c80302047c435bb50067306502307e5c4b946f2a30e6f405a45c61fc30b43c57d44c61653a1069935a4ab1c9e6dcb7f216e7beb203d47825bb61a57a94290231008e4944879411c6cdd40b0c7ba27f8fc6f666987c0e0a5b8ef3ee5802135ed483243a8a76e76f5f06dd45672afa48c85d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a5557bc34bdd4e538daf2ee1416f4fd2ac89c47d335c1444c41f89c21f3628e61c75818e6a731609fa2692be781c8e25023072c3634550e217b2ceb184fe433cf3e53c6dc7a819226a133854b5f087ac423c1437ff0b58edd018623e2304927608c70302047c435bb500673065023069ce1456cd05773e0d6e1425de98da0908a893c5b949bd824da5169a5977157c6336ba7be205fe7b434a8c2be8984926023100a6335b071624d1ba198d715276b7bcdb5a2e337fe09e0efc22ea312887470a51d5d3ff2b62ad7376160dfc0979fdb4690302047c435bb500683066023100efc82454d85a3b6470043e009af2bff3ee73ac64dff65d8565fc19db06841520c21fd0d491055f5b28eb530932c95ac8023100b7fca1ce0dbb814db077489d7469f14ac405979d49caf26ea5fbd4ec15d0d1d59ae04ed7186041ca2cc268450fb6d3700302047c435bb500673065023019cb9cfc7ede1bf8faf7d7a242284d06ee0ce822b3be4e089bb8e9f7509f52543f99a3aad46da65c8144eb01890c51670231009876d4e69a4871abd47faa59101adaec20a6706f177e4576a0085bd3d2bc60530f9f3218997968b33e16e1722a14f4f90302047c435bb500683066023100e07924c47e16415db3d1609e2a71765b3c2d218ecbfd0fc011b8472b2683d952a6337e1e0dd35619876060bcbe5b9533023100a27dd8f3eff0fcb0e3ed7845d8b576d5d17192abd30aa61f6ebf90c4afeddae75df2e7c5b16d9add27b109c3c20d55700302047c435bb500673065023070b106c2b62cbcea3882e4a236c11fbd2692b2bef9a0401a55a4ca287fe65d6f2275a70cf0065cde8ed6648803c4bf9802310090e36f216ddaf5eb961ffc7728bb8b911751c67d960d9f786d20b681af11b278938b5d66f4df3a3e328671910f6f3c7c0302047c435bb500673065023100e949e388c81b8b54ff2460bdfad66f8852232e6854830a3f5fc7c96fc51dacfc65523307fc01aceebdb4b83de70b528f02303a912b7f5e59cccbb4f221049291702d5c6228ebb8fe88f515e116403bceda1aa65534dca7c3019ab5743eaf070d55f90302047c435bb5006730650231009e556d7001cfe67cf38f643c85dc1cf231338ab8e9ce7758e647db6876a2affc6bda2dae4c90d67a7718d2c699804c4902307b3d7833faf5b830520b164b4b2a2fc3cea375f3cfd510df464caaf0a6e38bf15d319548d50c9467509598d8b53f69350302047c435bb500673065023100a7cdc7cc48645893c455238a5efea3c08007d166060026fa68f664fe87046ba9fd235be8e31ec6926ba35ec62ad7474402303bd4e6e5df3493e1c314f1eec3f5c08f2f6aa979cc3f56c75e944a48377e956931886ce87879224e9858f630492c5c570302047c435bb500673065023100baf178c098bd0f6f2ccedc4aa21ad7b40cae253689cd3bb05e9357d52c4d45db6194045d27046956217abae2aec4c37402303b09346f86aad36a6b2177d98514a06457f5a47c8c198314a3605512ff18fa839cb8f805368ed4ecbd1fe1c2c8444cfb0302047c435bb50067306502305f8dade88aaa48f6cf34f6130185109fbce21588a065bbe46cc1e550ddcee9cfe18c22d505eb3c35dc63645553a1da6e023100812ebd92e95ad76820ac88082ea0aa0a500a1aceb0c657781fccbc70d85696b465a4573da2b333eea020d8698b37b5e80302047c435bb500673065023100d9828cbe0c41bb2aa9548fe5446f10277db69a4823089e7ab6883ff9099725abd8771ca33d1a30434297af2dd875999a02303ff97d7a7e7cfcff26ca9a1594b94cbca17fb3b5bba54dbb376d0ec8b0d553c4c16f5b6aff64bec15192ad469e96d1840302047c435bb50066306402301a4cddf683c148762bee08f645dfcbecb28719c07dc0345f86cf90be7c5d4c1b496ec1cac1b06badd24bc35ba54ad0c6023012028d55b30da0218906e012d3f10702bb15dbc51539a881f3866b0481630430026871f39a1ede69d2ce050dfec5c71f0302047c435bb500683066023100882b5c32f6c0b777c62b3a55c971ee66f90d32bc85094d95bd9b0543c9399864844bcda5cb765c4db52538a6ec4726120231008eb8e4379bbaf42f5e73ee3a736bc0f8765591fed88b36ba5f05f3ba0c79794ac200ed628846f577d07fdb621040bddc0302047c435bb500673065023100ca3eb11965afab2336f850001a3a88b6040a3cfce4a7e7cf5b35e6fc5b74bdad25e3224adf16e766f88cc83aae4aab430230192556ab6d1dc77772e8d962d2daf45c6c866baa1dc53be3a62e146b25bc71de0c4218076947d23eb1695c79aa6208170302047c435bb500673065023100a4765cdee552dec7d76a6ce1e2d5021cb1c9f04828c25f326becae624e1c1e38e6b978c16eae4ddf057f10286970aa6e02301fe82185be217629dcbdc97d5fa2afa5c9f79e8cc5a2f8eb0a8d29027200151c64b37811ba7fffc2e962f3c44377bea80302047c435bb500673065023100fe9fa34a08d708d3b8220f4f4ea52657369cc11aac0affaa908589c1b188447c0f5e3e736cca182fcc75b14c7c031e2602306a22216b2da546d4c7770ed6d36ca71e44c690fc233c7ffa32da54282474fba89dd98b723b625b0b1d11e06cdf4b49b50302047c435bb500663064023100bb3344fd4c1ba665807b0eb939ee5233e3c4834291b91c94cbe7c84beba49b7239a3142d05fa33d1239ed9debc645f31022f7e720ab31325a9cb53d659e9a9990ed1a5a8f9e091bdec6cc2faa863ff2531f929e40070d83369bc698377d4984cc40302047c435bb50066306402305c3ecdf79f426504e14434bb6cdba213e3f362a2dc33ba3bdeec0d1c15c2298dec0a6234e7e275e85c348bf655ec62d60230050a9228a3003ecb8611872838a42a7678642a973e77eabe2d5c4aa26fd7533b6d65be83e5870ba73fce6262441e2ea80302047c435bb50067306502306920df7bde9017c1b2e4b779fb61edd568b9f2d002296eda24f09634933c085bd0bd9b549dc6bf71ab9c07aa50d6cd0f023100c639a6b0840976c9c0b4278f05692001f74fac262ab896e6895fa7d0a2a592fe316bf1767a8542a6596c5bc797b61e7f0302047c435bb50066306402307acb56a53677f0ebd388e7a7f50c2920205c4bec036739337b4a0f5650b87eed6caca08bcd8227aceb278d2bc760d34402306b8d07cd447521f61a889bf2c997a866e3ab66a10834b2272c3777b7686feb48691b085c6e318dee7ce750deb01a9c960302047c435bb50066306402306010fba86e3daeec99f953176e8331b5345a0de073e8a66ad43a5d6625d054bf613b36a15aa3e1c667c0225ce0420cb7023021116c2ad1ea9a9b6280a49299230c5d5cd51151a21cc8a22a59f2fe3380f963d0af48f00ef6dadfd3210e6795e622380302047c435bb500673065023100d1393fe9bfda898b69f49986c3555fbd23f0fd9d579d5d6be55683a5c495e7ad7142d20b69daa6c6efc5bd5a8939c9ce023074c4e09db77a68daa35ebb7fa0b5008d64980c3e20fc11e1e2cd4abd2c28a192e610455ea8487c337f4a07f7b919704c0302047c435bb500673065023100b3fa1419529e70c77c1627818f7ea98cbc99765dd5d1fe164bc8e86d61474306a8aab19b7b0585dea22abe11189df3ba023022c95a365233a0d87070340a8556d9a83bc9c64d3ac75e8c060f0c41663ae34566f4429287f030b8d52ca5b8856fd1140302047c435bb500683066023100e89e90b924235c84c36fc939f2368c0ff7d1e6cee84bba66941603a8c36ae526401b0fbea46b184bafb5288e2249a719023100b42252e375bd432ed53a4d3ba0ddb1ceffe6cfb81baf789354972a8236c2738232647a5a3d6a66e463d4974d2ce99e710302047c435bb500673065023100dcee5175f61706476b91a136deafa3a345cc724b761870693e45c147b067df8bb007b9d8590952f9fe859a49bafeb12a023052a90ba69d2ed7903acbde36231d39913fb9d015f3e167e90b545f6292adfdcc2d4c07126d3528a1693d54136f575f560302047c435bb500683066023100e63c69bd59711365e1bd86887a56f80cd9afc7e2531ff48dfe86adaaa28c2d9ec4cfe8c91f2e88f06044237fb94ed18f02310081a4b7676884966a67e84f3cd4b95a0e239a27dbd3423f22b9acd6a24d20c6c95e0a08724780cb58ca800828c3473d1f0302047c435bb50067306502306f56b5b8f4ec7c0ab9fbe83e4a23e9a06117441b0f5692040365d9982b77dfea57a538836a36d4646d9c4538e65b9e5d023100d541d7ac0cccbd725ceaf8c092249c8a53fe719c62395546f49ccc0f1cf3b9ba0759e77dabe68e7a22427a9465a9b9cc0302047c435bb5006730650230374f0914ca37b730482e9869d57a1eb3dbb3a1f57f951879ea5480c87e6018078ff94caf54f9c0556123edfeebbf4719023100c2f203277c051dd68f6f2dcf9936774101b1fd13f553b1a5545e3521e6ac662ca7b833c1c8909e6c0ec45d38890b949c0302047c435bb500683066023100b7212aa021f29d9bc0c92d6cce8ce478378f4dc33b6b0e599f7103a316f284a99565a8cab9eeb2373043549df58672f5023100816b9c977944d6228a2a700de564bf9724503aefb4523d024f0baabb37a786e9bb70ae06f82f672bb39f494994d565310302047c435bb50067306502305f7e1c37abe6dcf1ef7ad34b01e4afcebe8b34d053f06abee91aaa551e3ab5494ac9b9d4f2a2d9514fa1be60de0f8308023100fe4fd41a367e49856a0571cfd9bcf6b0a39749eea29430f19c16f08fad861266bdf1400a9939c03b844c555e7bf5e35b0302047c435bb500683066023100a23956fd3f4abd5a3c63f39e1c5c45cb6489a4aac65e598c5d0c1940322d89850b34cb8d0eb20c67932033a72c56450b023100cd508f5f237e537ec83170f2b3c6c2b1892999efaeab24505038b3a0908e8abe70d8b49141051390d30268aeab06ffee0302047c435bb5006630640230674ec84c4549074da9aed14d7e342431b4eeca5031f0b574d5c6ca43e41b4d6dee2c499840889641bbe3249f14ce0df50230137c8024bd5f0e63c6741a86560ebb1b317b4a827d787bd2dbd2851d8ee3e2e05aab756a8e2b54b2f6a2bb6eb3987a450302047c435bb50066306402303ea4bab4cfa5fb6d6dfa7dc7bad80c73cb429fc2293536a2f9646397215c1d97efddcf213dee8807099ff16a236797a8023033d236fa509c2e271c8dedec43cb81f67a5fcbe4080842b851452c451689455d6a6311b3fc15586449c2fc11133c09ed0302047c435bb500683066023100c253a31d45ce52a7ac3008c4de05e677f16b4340cdaaa25986f63022cb0a9431f1f0056ab234f556026a24f55b1ce97b023100e9407f5728a4b7f2a950828f8c3e68cd2cbc2ca72e0bac5e14620a2baa94157176cd4754215f01ad3883c49e8a0c4a7e0302047c435bb50066306402302772932f694ba7a3a1f0f581650a5169266fa6f2516a39402ca6f3e7b5ad9161ffcbf7a7e25da6cd435d22efd364641c02301bca37118cf0fb94acd79800a92883e8de3414021d3a084d08a485be271662365e12200d58bb8eaa5da29d0a930777170302047c435bb500673065023100f57e655361b3f7c434a46335b1fb0466babd90522f2be82695c0058ca649ecad4e5c14c7c01183160625f9bcf858c5a302307412b2c640cb67eb55075ff7b1b81f54b736d51928430b0933c7a01ef2fa21a721d2a8e7566fc828a62bd01dc5e779d10302047c435bb5006730650231009b79932f8f4ce9a4f32afd58302d0282a0a462af2a62397b8b3e69d2adc1e81af49b47d67dd56c83f4e832f0c0e51cbd02300c128c14a0f4301241137a15fedd30dfea8548a76eebba3ed7c4eec2323e071a18c947c47cb0d48a2a2df9bef70dca7b0302047c435bb500673065023078b6a755cc60704056efa8318b8a13c95ce446ac9861875081c973ed05ae5eae6c4ae49793b1fc4b13835347c70110bd0231008564961e96ec916070a5b4e9941f791eaa0bfd865f817766e0a7c5e517b6148abf471407500d9dbdf783830625e0f9680302047c435bb50068306602310083ca3edd16e2be4321cad75bf383fd2c53f3ef63159d8715bfe407b41faa10e30a7bdae3b6f6bd0e870546c8d41c2dd5023100b794b91b6f38a3a711891f28f4517541ae4029762b6f25bff822c3b42c32ce8b358d8a147b30d99661858ccaf0a977d50302047c435bb500673065023100c1342b87e97b9c08ae41f1a7699ec31196ed6825974e1442dd6333e77e04ade6f62c55a02a5996a956c9495ee5d28daf02301b57136d905a75c90a4f4e2b7be4c5873943e66f067a65a9cd84af35eae08fd468b7e5aa2351220578fc8d2d72efaa0e0302047c435bb500683066023100dd41df2c63b919c9a360c3596871b4aa36588df6dce6beec31a08e61be3f7ab0200ff3fc0569ee087abef9a6d13011100231008c5891b3f1c5f984455e5aa5a3d2d97f5469d3bc7880e85928b437ffcd76faa8349b7e92676fd03f63135150544517420302047c435bb50067306502307a23b4945cc858e9b473f3a4afba427287933c1ad3e9aae80d21d2139366d07353bccb445acb23b91cb6c76def285d5c023100ddf99ab6863f9a4b3343bde5a7c16427a37ca44876377b0eb8a0edc16d5742d0ac9a648ba95c03a1a7e04ba0d37976e60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023004a8e013ed74204baf93077070902ad9ef27f31874e2d6196665c02f9c364dce7632370ebd67c0606a2a4f0986d31a97023100d9bebc764689c07ec34f406909100ca1eabdcf95d9368ae36daad864a0c8cd8cff1099b6f776fd494ed4e5be4377649b0302047c435bb500683066023100fd5768407a751cf02b70b4533363ec20e843426bdb4b489456c33b25078500ab73abf0d2d56cc7da46056b5cfcdc2d390231008f63873e8b7928a7615fa14f6375de47d97e626c6d631cbdb754b2a026f35bbab831bbb125f0c163f1c35b576a092b4a0302047c435bb500683066023100b31ca43abfb40f033cddd6d646567c0676f67f3979e303472fcefd87285ca490b223039efb7b2d6b6c839547a6e231fa023100e889e6f8feb010c7104567fc54de64201f8e5009aaa4adeed498b718aeb449b053a9f3cc3cef3842e480e59ae1e265080302047c435bb50067306502305da9973d149ccbf0ceb8812cab5f2d55b598a6ffdb36955b21dfb2b1330be16768e341d5b0897faf0e637942b16447c3023100b0542f487e08e0af03bcd1ad9833d35838628bf9c874b8de15a6a1d2a37f11ea9712d772ab1243c77f10ca350a59b6920302047c435bb5006730650230196cbba4cf0948acb401e0dbaf40a89621deeb8172794c1c58f18f4a4f4b22b9fcc46c55cc850a263b90f83f1e5da7ca023100c4fad7cb5bb63859af8699f5653f8bd069e4a5a2b257bf14b58b4a77d4aeabf3127ca22efadda8dacfd77b3c148505490302047c435bb500673065023100d48071769a462c42c3cda0e0a00e9c4ea9f9a1d7e14bc05a9ae24924af369812e2d5c5ae0130105be97f08a12efd0dc5023030a7f1d51b4f19628d4f74dd7153047592da289bf22e4d739faf640b976caad4986b71956a6e96f224c9bba8396eda3b0302047c435bb5006730650230321cccbb7f5a5003be2a9bb8a5edaaaa6b5a49d531b1ac6bccdcca6db7c231d9ef5342fc130a75bfae4e6976aef20553023100f06998d622fab84b0055c3dc69fa487eb49ed814f91da64219987e3d67b1e2f5d1fb27a08d8897b1e5c10dd9282112870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dc7e56b82f7cab221d96ba5216c294593dfede7c835cff981012042afcb6ea9eb7f7a5b719c9fd25512e0096d666a08b023100adab51036d78620ef15f50453ab7425563135e5f733cc76fbe1195e2e88aabdc287c1b90466b9c2c3e949d8dffa28b7b0302047c435bb5006630640230061718bf47f643c3844a20fe3b63451f32a3a9f2b9d5d2a3c7ed007c66eb3ff3656809b4420f17346cdc669a9df0fc5b0230535a1ecc34deea3eeb1388b943d2800a36cf8c9cb9f623d6b010343d80976f8b94b3ff6fcd19ebaf6fcdcefee6f83b4c0302047c435bb500683066023100a4f1f6f50543ec51cdf7855c29409668c0b73b032f90b2d5a7d250105d29b2653c30222a765d96e83c2a57413ca5042d023100e4ddc67d1deca68b37872649d68053d077ccd0aa7e20caba32d21961bf72cdc063706a36ea0b7ac39874ef90d25964800302047c435bb50067306502303b1a7f6e9bf294cccbb9a5e0f876b1bdd6c1d88f26b746bdc3f94826825616944f3fe33fe3a46e87270eac3c9907080f023100825222920118e2e3773b475dfd89dd337a830cd619cd835459ee583550120567226f3b5d08e33447420a36f499f78ee80302047c435bb5006730650230762659c05dab68b4a9853d1998e7c37959543225bb0797223a093d54ab081db653f3e5d3361d46f777e79a9a17d022e6023100f37b51f942b6e2017acf327bd5f9bb8b43b72fbf3c0f01fa5ccf1915c722ae4808f74feaa8e11970f0b80c1f1a8866760302047c435bb50066306402303291044a4f4e7adde9c50d0ed7fb1f165dd32411377009797c578981575ad926382574d485745bdfc0f8e46ae3377728023000f164b00bd94d269aa85f47a03a0488073c8790b3adfd46c610d6c08410ffa2af7c68285356144dde297743dac217980302047c435bb500673065023100d41c8c147747ba43d720b75a65df225a1bd6ba1c731e50cbf9347837fc1fa22e6869a709b9d07a6a9b1c8ee9fdb6bee3023018486cf74c0ae62991cdc53ff05b4a8f0617908e7476dffe200b7249709a8085a517271971f8c0690a1db3e217b74e340302047c435bb500673065023100f52acc349e4d0e96f49beed778f4caedc0d3da94b60a10f302f57131af98256a2c43fcf68fc5832f8e438dec03a2658c02305666751269a3c6d84c30eaefc84fd9fb901af2e67596f365455a7265dc72aef39841dfa8bb0cdd27adca87d3471787240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b5d61bdff6ab589f9bf7b41b33e532fcd1a350b37bdc597e7f5c8eb39b9b9cc5285b54192d557839c1148008a5d5a02802302cc66a018a38a5f7427597b9d67453299d9e9eb608860616b1e575ae7abe0e2bdeb42884c7227ca658903f51ec08d1f20302047c435bb500683066023100e2e51e7e174b466ea41d059848075f01db711bf19a6794c5a587a6a251a8e102f110256a8b9e53d38d8f05a1c1ea7ade023100c11eab93da54239ffee898667cd52d9d781920ecf5a1028e4d370da5ef1ce757c5a7fbee0f86ef1546ff2e6f044228d30302047c435bb500683066023100f1295070e52d1d9e212327cce636be7fc8f36eaa9ee9db4cbe9951e5ea564418d1298dc07e5a262f092ad5161ec357fe023100a975db33e2aef04f7115face23ae2c14b493329f653dd0666f9b8b889106595d031d4106158482f188b88eaf8be4a1d60302047c435bb500673065023100cba2014f4cd871a4b41cb67ceef191047621a084966ff1fb84157947bdf0cfeb5ccc939830dadedd02b09bef44b0311d02304e8ce87953e2f1d900e42f96eecd3367293ebcc80fe15f72f52ece60201face8ac155b895aa199ab6e285aaa855dd3b20302047c435bb5006730650231009b8bcfd30bb17f0c2fcbf605b0745d83d37090b1d5102d0f6b37b1b03c9aa201a67d06d3c4bd4e78e7fc0a11a98f3855023052bb5104b9b2929f9bd9146ac5534a4ce3b842606ec6bbbff6175b8a8d1ad2d2a4aaecbb49f2c16ad50e957608e160980302047c435bb500683066023100b9bb7c120c57f483c82b81e0675a7ce5d08868780eee298b412cda3e73bebc10bc8ef0ef652e26025c9c19db41150942023100c7f54576071e1e649906f3c02520223f195be77fbb28071002037e23bc64a1a9466a255a1fd9f4ce07dfde372d9a785d0302047c435bb500673065023056ef3bc504b04947187b44c4c737bd20b97eef8b0668c2e82b6853b11ada01c9b9a8ebe23979e413c79327713fe0d856023100ad7710efc0e53c2a7e0e224e255c83b73a6c4bfb247c4e86c3fdcf641115fde9b4cda8a191295b1b92d17367ca49a4fd0302047c435bb50066306402305501099a5b5d1a07d6f0d614bec04c1a79731c4b5a5df0e0a5ffd22638444b2078640c7b1777448b778e27b40e306163023025fd9dd779a851eca9dfc385cb0cbd1d0080dbe5949a38f58bf418aa574cc26e42e1abb53325c914066594dbb814027a0302047c435bb500683066023100d4c0944d20db60b1260cc8229115d60e0381b05cc7c30ee684a9bbdb39b13c034c8aecbe4c2a4e2dcfaf941822415c7f0231009f4a38a0d14d787e962cc07ee34c7711db3cff0531d2a317383b7055c8147282e70bb5689bc0347d236a2a3adaf6cfb00302047c435bb50066306402300fc0b740979d64265cde04fb105a118dc0c9f6353cf80ee14b87a0ac4b1a4290126287daf379f9d42c01bf266ac636d902307ea7e20f63f8c5b10f261bdaa058b5c37809484de6d5f783c61d5f4c3da1e31771904b43cba77a9cd2c8370e6fedf49c0302047c435bb5006830660231009b12a0c721e859093025a95a857c9f899bf3a5c102dca023eece04d4cff7382e7a15c7aa56b5f79b06b0b95cf80627a70231008e15526b35c00059993ec9a6352e9d624757e35071e0dbded1915b8c3d16ff75ee3cef77ea771057a03bc6e6a23ebd8c0302047c435bb5006730650230158f9aa03b8a7d66239bbd36d736e77c54b116cb00341e6a595d461935d278e5ceb71f08a017f0d51c8a97866b538e54023100adb91561ce331f4331e0682f7ae264c5ec5843dc702d390fb0d5a2a63ace7a1c5a9791898ba7ea3fe6f7fa6cc834c78f0302047c435bb500683066023100fa7113532ae0c25db19670e834fc66565e3efb13060a7a9e1e4079cd8a5465dd4e3ba757440790158e0ffcb0f401f5a7023100dec4ffa2cbd9a3339f441820bc889bd92ef75ef1fdc7e5b16cedd84403efba2e1413daf269f9d98f505eafba5e6d2e580302047c435bb500673065023100b0c68a6021fd01d9a22955f72ab40156bb26e15b813ee327d412e75a08dc93050ac33ab1dad2feed0524745759461f0a023047f1d3aeb13ee898dd27415809a5406eea180b3b246bf173bf7c1c882b7f18a17e0070c7653fce656916de6a6aa2f4ee0302047c435bb500673065023100c3fc5b76dd3d25fab1976009b0b5a10f8d543a24005c5ba5c975a6296ab1ced6317b7e2d9461d5406f2768419aa9407b02301ad8e60d7427a8f3f0f94b0e7e9d7c0184384c236536b9912c7da57648f5a330e4a5e1869331c3a5bd893cd9aa47aa1d0302047c435bb500683066023100a97d2731bc9033d0381e226d45bcc5aa25ff5014a8e11bf3e3f5484fe1daa28ef75f35db89aadee727c12c40d97cca8e023100d190a869433f48b9e704b0955e764ad6c24c78b69ecb1592ee806480570a7d4b4eba997f1db1cd4985d39958e780b33d0302047c435bb500673065023100e6cc3103e05cc321b004f496665956e0fa59af983aeef08fdbfdd9393d8f1cef6906b045746b71030424fcc4ae02a917023005ad10bce50235c813f829a233f61e8c68acf7da57a6a8973112edfac2be9f00907480a580dd397bcd843275188732200302047c435bb500673065023100803a81d7524900c2f120365456b4c1aa05f74bbb262d2ada1a9b2060cf78af7829841b01379e7b3e6890218026fb221502302e4fbbed16c8a8aec2ab23a43323307b329e3e0ddfea9a78b5dd030c8ffdd73fb212a90a0dc9f4ae32fed5321a96d94e0302047c435bb50067306502306a7f7b7f43fafe1d2a47f09eb1bc517b1c1bb992fcd980fa0fbfc5525f8a56e89774a1df093e52b3467e3ea15882fc7302310095e2ada37e378b03f2c465bcb43f0224bf31057a88dbbc8520b06131387d86b87126cb201eb6c790531d8469ebaf760c0302047c435bb50066306402307f843acc2cb96542972ffc9a5ac262eb37251bb6a8ce1eb32c78012699a0d90ee151e7e452e55a26c177f490dd96f9a202304e7a1f42581d98ef1c81840159bafb019e365b7996d204d1ef1aeee55c804f221742a6033f890b71e6be0d2e6b9c2e150302047c435bb500683066023100e4b3fd7af4ec1ec81d9b237c5746b1cb3276005bd02a486d87c7c38d541b6cde09b9b922616481749da89751ec615a48023100c7ad6a48333a21ffb70030a0a85d25f6dec3b3dd7b3f9d798dc2931cde3d5e5be9184edbd065fd9350fc214e161144360302047c435bb5006630640230346cc5352b07bbb015b83375960ee2c5ad32eaa1a717e3c6e5585b03327af5811c28c275b8e5fed8db0c4a47ae381bf102306c6e9715c661827a23e3d2a357c80c94e929e3906e9f021ceff8a2fab765bd0f4fdd91abf428a77d745202b50b81670b0302047c435bb5006630640230284a079a7a0368bc2376826d5c759eff844aa57b603809f52e33f280791c998bd99536c7b1ca1b7ccb527591f573906d02301970170ad7d9da68d9a9e02cbdca4926b15998b1939b3013d297f2dead5605d24c86bc974850f80a8397417192cb0ef90302047c435bb5006830660231009bdbfedcd22ee01815c8e91e50993a50478da50343d35bf4a91585e729139346934476c5784f899e1cb3d959890ced16023100f98256f35d768d5ef66330ed74f7d3e24ed1bdb31f5f4e1adea3fb9f605d8c2b8260ab1ebfbed1b5c1ccef7c329926a60302047c435bb5006730650230098a0dcc68c13908a6397b93bae0744edd518b7ef5693ca0806c0c7e63ea6f5f94210d80682c079974df5504c60442f00231009e9bf8356e7c90d8bbb81bf155f69e940f61f73c410f1afd6397db09d1b5cabfd425cf0f02c391dec5e1e5e0c369940a0302047c435bb500663064023049018a30f1ae02b5a3312a72174d12a36fdb0d640ddc884c90b49fbb745a26313a015742409dc33944028c2563f70098023073a3b3998b3c118a923361a0330becd3052236b69e51a462e7d73e46fefb565e8d9c85632c314d30c9cfa3a0644216c30302047c435bb500683066023100f24e22a6862f0823be7cd36dcdcf0a401e7d47da7856f4d61ec5791bca77dae153f05de39f268d1eda94c9d201fffe86023100d6d5d09f8d69f1321d7970f90238fcb318340bf6b59334cbb1449a97c5f407468fb2df1a42c10ececdec23778ded08e70302047c435bb50067306502307e7a5eb19c80a57a768e3a1d600585bc64c7f59d97bca469e3e1039c72abf748427ab6afa041903f7db4fc1bdc81a70e023100b59772c8a97c5589dee152cb6100f7c8701fc323f6e2d8de809b006775a7388205966310d0a353e697d59aca07b6d11b0302047c435bb50066306402303000b8d4c58ba87d51717f73a5663d259125df9c4d9ab5bc2963c732ebb04964528d652c181d0c11f8792d2e7a320c1c0230478c5efd64d215b06f6d39df87d28a4c91acd165ac835781b28bac836aac3c6748fd82be505ab515b7d0a2609aba937c0302047c435bb500683066023100c0e21263b21769a61ef2d0e2e67870f300f1cf82006b74dd2343b4e5f296ab3f03d2991d97862a3b04240480ae7fe15d023100b0aee6922f3ba34a17cc65c753b0df4c44260aa6e425c752363d52e84b23677da8f486b700b28b1ab5ace8c797a5b1c30302047c435bb50066306402307f56898979d55f67836823cd1dc1958c790737983cd733f487bbc5ce0049ae2f27a7931c2a02bba2fdba95bd674afecd023043b337ec115ea90e885494f6f33159d93fc8d65510cd5fcfb872d882575319bac6b1a7e8f8136623005d5b306b7255630302047c435bb500683066023100a69f985aa23f73206bd7641378048ea9606cbf4deb8dbb657e6d27cabc2ef4c3f488cffd70c219ec4214917669f06aef0231008fcda3c9ab855e4b364e89110e702b9a95ad18abf1c9b774fc51e6cd7c20e87a1c65c3c0edb194a01918604d51df74e30302047c435bb50067306502301db0c79664a4022dcfb401c101091a0744e379c71ec2eae95fbf28adabc304501ba77f58a5342b53c9599b98912e11120231008921159fe77080c5b3cd4e9625a7a78d9b22db3d4c726dabc36147d5dc45d117bb9a9bfb5e893fb5355861b411c0e65c0302047c435bb5006830660231009263a3a55a9d2e79733ea1b590af8c0ffc9af9bb1ba0a574987889b0c5a6a8e61cffb8429ce2d556dc54c244cfc0be34023100ab14cad4013c33479760aba7d630520e5d00b6f0b7cde7be47a6c7d6e873e933a8fe360c5bb5e2387c7a77d61c6b49e10302047c435bb500673065023100a2abaa56b4b717d6ada881570963b03e17be0073f41119fb5fe90fb4000cd3ccff827e8baac94f218e20a8aadc464af802303953c83effe4a24e389568608db275811b372b2b5d2522e4638a4e93ebe094f554fe464841067f456ce097bff5b2d0cf0302047c435bb500663064023063d97f2679ffadcf16195591020ae9c9e4f3dd366f44d26e234beacce4fb89238bf16813b72973fc066aea09119dce7702304b26d57bd598db267bac4db7557d32b77000756539b9098119abe2f0900020e292d75924d7acd326549fa859f66f6c890302047c435bb500673065023100bf90e7738b30ac60780174e32fc0c2b45c0bc5900345543b996a2a5c461d6a7e444033ba4902725180fa735668c738f4023000bba338aab0861978965c2ed7fbf9c98d8095574d94048b54698a00870d0b2b4d390f4d7517b7cb84fde641477611dd0302047c435bb500673065023100d58251b0f534cc3e02e1d98f0309cde5854fa088e04b3382bdc25f798081e0ca59c51d9d5c1fbb293735ee494c2e936902300ec1037a3dd119964e759110684099776c832cd8f58af5613265f0a1dec1349290ab15c92c39da1f821b15178714868e0302047c435bb500673065023032693c9d78e6361de209c16cff133218bada95added6c3f717f34b9ae01e3e688d74d071f9109faf23cfdf3592027043023100e07d2b2e5c37eb9995c992c3efe364abb144eb124905d0685b89764eb9351be69efe3d7b726d5806fefa22934858d4d20302047c435bb500683066023100ba375356a3b6be2440d1f7b8e7c8aeb07015fa42c59f6df93c20d88749146a8602ccda22a6d5958563f822d2dfd5767b023100ebc22b5779eb27892bd7effc04bdc38fa2264f8356fa12b3d81de2aee6f4716035fe08f75d880ffabaec2af2990c22590302047c435bb50066306402307b7ddcbf87d444c332b8f746005d14c1842cddd993ac9439c9283e863cf2582e07a30f2f6219b6f41abc4759bc693a1702305e83c8b88ea0e2c58b075186ea40104b14ac23fa8be2b3897cc889e48fa1f3c82a149f31aad78755b64df85c189ff78a0302047c435bb500673065023100f12cd3387c00a31ad9d275f015ca36f4c2e3050e34f8cb13bbb8288eccaa95ed89ba523897d0fa6a8e5a731819e7eadb02300de8ff0522f7e635935d2e9487d828b596f40b1c7477ac0a1c48a900ab036b2625676f7f57aaeca6c2f749de3550eda70302047c435bb500673065023100eb393167add56f187001e64a0c50df781f37bb20b76554ecce13e7a3ae09260a2d55855f871592e00f80001d4410221b02305221bb79ea5fcca8ea5bca6a6b9f53c24e2a4a0c4ad7e6855624ef78577809b44b157f736b749f49e6a02be9a7dbe5fd0302047c435bb500663064023069e7f90be4aa413d4d321620ac020725fd2c76ea0ee39ae3bd10afa9302800ae41afd94ebf858b05dc941865ae7342ec023021e5533b01219f582bc7495c5135a971c9bfbfd82644b96a202d55b2519f5bd18e31fcca3da2520cffca782b9b36717b0302047c435bb500683066023100c5605cb4db07039ecd14b1ce75fe58a1c61bda4031dd3b4d82fde0e447f71185804726b6731d3136d8b98a99adb8cf1c023100e135fe2a0eeadf3d7e6bc6f29aef0ed84b70c1d6d646db3a7286abac17d0a292567cbd30e628443a7ff4256266b654330302047c435bb500673065023100caa6237379c33c772ee501cd3b606aac9580874d882f9162f881c998fd9d4da1fa53974aa0da663aff6ebdf15032642402306c2b94465cc8f7867d2c5b4499bd0a25a7813492b7e66475fbb614ae8f26f25937ef9815f91116f8c6830f7c89cb622f0302047c435bb500683066023100b463cd962ac5ab91db7953b14a0dd066a6293f451f6b0f60840ceaa998f2e069772184b6d500748324ebd6e767f7c533023100bfd9a981fdb34a8d15f3fc9fb1a5dedb42891f34d06df0f4a2c6daa0dbf845ab2084c7cdfc44edd72baf575c02af0b560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306b9d06b2817b27c8bc39c55d9de3c68892d3b022fdb57bb4f220a10d63a3a495ffaa213bfec4e29af6287d36bf073fd002303af7a7a648a5c36ebeb4d7b61f7bb1b48de664ef3fbefa243f17c170cf01c64ebf0df49562f162b16823015ec8c6fcf20302047c435bb50067306502304670c4decfac5a4d6c3cb407e8e86fa6177d7256dadd53e47c931032c654e1b8256d78a268c30b8ee4db370c08e9a97b023100d4582b54028eab10819c1e9e687837b4fbedd5d80d0700d74c95451a04d7e0b00285885bd496ec43dece1c7516c02d4f0302047c435bb500663064023053f57d3f0545ab3ee52ea2d570687b379b7fb7859d195b653d1c2c985e7723771b28350644f72145f2ccd3fefd2903bf02307d870f0b328a7e2bcc0045f28d9bc953c7520aa90027a68e908fef1a9ccc4683750a0fc505985b9c92adf2d473c2cb970302047c435bb500683066023100ecc38e8567cc9473efc57f57fd439c8e614d00e23287c1d4fbdf121c895b431bd9750563e9e685fbf2afb8a8ae03e118023100c5d922643f39e5c53c745dd0393d372419b849e41eb90a420ae0e36ce6917aa850dacee2625e4749677ef9218adaddec0302047c435bb500673065023100c11f053943ec59c84d4ac3df12ead886436931539c9c049f77d7007e57afcad1091d15ba54b83992b51b46080d5ac80f02305d4b3dae136c6bb394726d824843c82f9ad6406b9c34e6ca3deab60b90da2fad0355ff8cd1bd8695941f41b5ef5458c60302047c435bb500683066023100ed8b9a89f3d593c56deccfd8e0308fb9ef65e4d65bb922ed2850eaebc13f908e7baecf6541959f55be114414c23172bb023100eabd8ddbcf9668eb78ffaad17c10a23759443239c785b8f58afa0fca21b4584a1e4d86c111a6c680dd807dd6027a73c00302047c435bb5006630640230695a9487efdfe60bdc45fa5f0cc089d93fa98c0f9f76830904b31fe7802f53eeb2e030875633acfaac4cdaa6dfb9a33702305a29215acae49b9c99d1df78e42c7d51b5235582c0c3b0c7cf647b84a3ab46457865b172c0486166228c369cd3712bd70302047c435bb5006730650230261eab5de31153105ba6342c6f3fb30dbd331d098e82378229606b1bec1288a904a7624dbfb5ab9fa9098345042720c6023100a187ad98d56c22977980c4a1a22a529cf6ba2d45de319b0abd357cb4e877413229fd4ab1d41fa5673cb0ae977235b88a0302047c435bb50066306402306628f0e30b725b20a9ad5ab1cd84bc7d5f3d861868ef0f3fe05033b1eb58c6b4f8ede53e90df38c06434e496d4d3724e0230172d6c8b3178e94a4350d1c13bcd085c147f255bc24ef035d8bc329f7606c581581a5cc9ce0f7297a9d68e93cdee912f0302047c435bb500673065023029a427b9a0f8b1eca652b22e7bd97b49a793908ed61fe86a48e1b4a3cd63f32f326f33089e7f14794666e6aef87e6a6e023100b0e243a66a52fd89a14239334aa68eaec49e384583e3dae217886bc3aad5d9744b6b58c9d2ed4ca3347a8a603fc7d8370302047c435bb50067306502302bef52247233868883b69833f99b79cb4c91ed7f53c8863c3e22737c40e53f4f67030f6c7da321d014b548be7afe64c8023100fe69948659e7dbef2c33a54cb7d529226ab998b618c762598ecd2f7e3a76579683da8e47349b01049f7c78c13ffd0ca00302047c435bb500683066023100d6e44d6cc2e3f70531b35f21530cdc8eab586fc4a20514ee59987cf3becc822e7f0d00c7a6291879cf64b59933626927023100a5e5825e10cdaaf262dcdf7e9f08f0f78f0fd922ba22b2f53333ce1f18bb6d78b50e4cd3ff6d63b1d73661dc4406c7750302047c435bb500673065023032bd402472b1ae86d249020bffae413fccba91465f70765169fe6e3e62dc775883bf816453fbbda7d4bb067f994de56d023100bf76080bb38baec415fef7886b1c3499ffcacae8a971e8105b909d0622765cfa7fd79b5983f4d0491000585bc4f15eac0302047c435bb50066306402301c452a275072abdb81e84119b50b968b509a4323093fecf2700063113f9768b1a181e86a961c10ae9d3914f68f5739c102306eff3ae1d067d87ffaf65aa94bb093da33895ed12ce0388ab75329751fb82438e2b580162dad9cff1ddeeb3e0c6840290302047c435bb50066306402301e5d1e3adead6e91f7650b8aeea7560bfd0c0b0f8bc644684c914683702924ff25812696827db9cf752a717fc458ba88023057c6c0bf30ba8a3cd779d6f343a6a6ed433b34425033d0f21c3d1b4736ac2e3c623d05722286ba6abdbc1826022d25e40302047c435bb50066306402305f688783f2e25f9fed0cb13c9bab024cf0a5ab3b5e945dcc64f2ca20075793f312301e07b18e9f9082be8769e59a2618023033e612eb974d03e1dc98dc99070107fe1e85f6d3ba0a17b9f5499ab185630c52590b34d33b2eac2f23cbd0548e0fa6c60302047c435bb500673065023100a2d9d8f4b20073bea25df2e860f65fafdda7c47c6319942d1342023d287d46fd3b38e5d9a6fcce9d732befca04df359f02300c0b53a21bc8492847e2d8c4242fd140436d3ac6d8f101989b279067036884b66fa386b6462868b63b102aa35b7712bf0302047c435bb50067306502304fec551239fc92a5d7b1bea451a01676822aa2ca72ca9241fcf0999443518b0a24108627cbc50e15150fa82ebb17016d02310085cb10a9393b39bd61dcd6c2171e18b61dd497463f49b0a02cb86984361f01b5176a0dcbc4703a51be2ef3d33fe097ab0302047c435bb50067306502302e9cf1e59d0568b2a90e1e9b315a41c9baa783a1910359f451f91212605cc8d9ffa42f748d6ef8d206416f3993aecead023100a9e304f5945fb6170de9dcdd96520d786ab1f36c15575af2b51475c9fc3cec94ac0ab1caf9732b69a0144a9f219d24320302047c435bb50066306402305430081f796987f2f1a93f93bdec723aa2f36222ff2e6dff2d0217c62aae8204a40bad2bbb9df7f54233936c115b939002305d2d433acdebd16efc8b75ad5d0d967a7fcd3014a149a52695725375573ce24bf57b710360949c8cf275df1eb81e5d7c0302047c435bb500683066023100a4edf3fadce7465052457e67fd90ec781a450d959473cdd5160dfa99ca7a343b54f693804856281eea28bef2e3eed76b023100c00430dba149e6e812df81ee94490c4f80280f1cf04da0d14b82dfbed24ff6b0f1add91665b901403b8bebbbc446743e0302047c435bb500663064023001a5a283129edf0c24c8a02519a2935a17c02b46935f61baa8de23ac080935ab8a0740ca3d0d4ee2311dd99650cf32f002302929c0003af98c437f72d4374565f60fab3d7d63a515c1515ef21b8fa67a51ed5ba1890414696dc655acc817dfd0270f0302047c435bb500683066023100e90cb2ccc13771098471fc708ae6330aee1161b9f72d45073033b6211be51cc70eb5d6f453b26e6d6559091b0605a2c1023100929a3e9c4e111f1f5a95a13d3c8f887093a9fd0b80b73b2c9c2a8fd927c2b013757de6daab42aeef18a591ec277e9d3c0302047c435bb500673065023100df673bc7f62e005b1e31be80ae81308abafb1c705ded6fa876e737453cbe6371f0a76fc8f5bbeddb86be291b9b1cda840230096263acc3c1278bfa25724194e1fddfbeab00a793446b5095e8962ad74e4ea232d105375ef7bfd712cbf0cff3ec10680302047c435bb500683066023100ebe3212106984acb16e99605fa4fd5c661bf27f60454b2a52c16173126ab6724a38b9a605b71b9d5b999909f04996b30023100d06aa6b11e8684b3f540fff1875fdb089e422367582e808035b3fcf718f6b16f64c6f0a67382037539ca1ad326da71e40302047c435bb500683066023100c617032a8a938121a809a3586d9ef6d946f3194742ee6fed059f34db525e36b6c8774c070bac8a6e1bae93ec819ba81f02310094e0db841ec786ec3cb5633805826205810a87bb3564767fa074f03174356bdd676f1d7e05abf0d6671a826482336c110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009a05ad2fd71367d645b365da9032919a5644a3c0a0f224b5bf82eca66381ba9ab7ccca7c5c53194ae5e3e9614379703802301b3960d47cd5ad709a61b8e5e991661d8034b6ddfb22c1f4d498c5fcc3b17ef7e480a96fd9efe097d929633265ef79110302047c435bb5006630640230345ea86beefc940b83ec391d2ae9e259dd090a6bfe3370b67fa85fcc3f022696601dfb1250f0e164ad041c93af46979b023001e7c2b0dcbcafe635adfff59431e299c5fc790da56092eb21553c650ccc515db7d44302f84e952446440c46d7d2db7e0302047c435bb5006630640230282b645c72578d44494ac3263c0fb46e7486d5f6ab8919fda1ec4c7dcabacefeec594bca91aa0def46bb3571c0bf2f8f023066ac757a9cda7ee4db092bd6abc46da33716c20bb286dbe0d694e205b37873e9f927a77bfa53c2118c1cf8236d3bfff80302047c435bb500673065023100ed9b64fb27d2b6a2241c64666e3a34d276c40f18e1d3cc1dd81fa69b27e20875054304ff9e147ceec9bc66be5d0ab88a02306472b1fca89cfcecc4a67ac5b50dc37d9d5e767118e495d87a0985f70b78c639c7a5e3423e94c3f0de22ab917398741a0302047c435bb500683066023100deab2ac959a91a8b55c1af01d3725306abbb56cac30dddebb0653d7f7320b2f32189811ca446f3e38224c143cbd101c802310081b7f7871a7a38a1e71ec0090fc0ecb61b8ccf1baf2bc1624d2d58f6e3d466fa1bff5d40d23876ae37b06454332befe60302047c435bb500683066023100ceee8d0354e4a62e83f814ccd0ee01c78d9a9c2f477b27ed065eed6f1563be0460e7ad303dd147f331e946628f13ad08023100dcde486bf9c814e15a20710abbb7d593f29b436191a5bcbe73c6673f74a6ec494388a82f5df02439a85e744816901d9b0302047c435bb500673065023067b10fa222d601f2b1b812d9d1e1731d686bf280e49e8752536633b9e9738fc665a981ca24a735c355daa8336af5b34c023100c415d7f320e51134343083d49c36a68ea39142770439f69d02920ee5d7e9b507ee3a93f576f0faba7c3feee983dc535e0302047c435bb5006730650230623565f704361cf765cb4d129a40c9cd6eac4a4304d24427b7ac1309357dc43486df0a9057575512afb5515baa120aa7023100c24860b12677f967ab7253691734cabd38b34f5cc48886ad98fe49c19380644c85f619ca7e0e2be8d1fa62e9f4c410f50302047c435bb50067306502300a5024a5c82b51f39f947d028a482ae165e3cc97c989a5fde8eb51f66a392bc2ae541eab604d8cea5eb21cefb8d31ac5023100bcd3075e7dc5bf1f8a2d7e736dca875accc0446b63d6edd4cbc6251ed3cb8dcf7ee791e184257b1a94ca877893ba8a4a0302047c435bb50066306402303fd58d7aefe014c37b2190c82a6ae3cf6dcd5ac3afc6e600aff02ac87751dfb44cee955412d88d20bec82230fb0c253d0230309c3304d00422f9ff76c0e27c2f3061643360370975a12d463cd31a272ce8df592e0ef58d5151153a2b49b986488c000302047c435bb500673065023100fe8c43ecfc345243d9e079f0518037eaa61e051561f0542503ea459364870fa5e92d105f195fcc77f2e9b3c6bb2ae8ba0230247308ed1032540a02e87c2680fd40a1b4275e115535990b167f6dd960a015637ed2a5a8e9a9bb37e09ea31666f08ab60302047c435bb500663064023003f671084dc7c0fb84cbaf5f9f6dbf9d9baccfbdf173d41db9e04b7cff2efd996cd22f993787a010bff3406bd4dcf449023017b9a7cdd2eee88cdd6189db202775b917913f874939b8f7a546422ddca0ed7f849ac5aa98b89520698c58303fdd3a630302047c435bb500673065023051a07ac4610692cf318b907b90d81d90a8cc332954cf13a7f381baedae212ef517cbca619aa5e40e2cad7437692ed4f8023100f8613049f997343617ae51b008d237254191b99c1205334e3fd341d1516e1f0b12dddcc3dd21ac4e85d537a65856fa2e0302047c435bb5006630640230479a4436034d0c48dfe47cccfda2d8894ec2bfcde45c09cf09286e18bd021a85c8e3020f614b3f3cb42c130f1c2d51b1023008630cdc4cb63f6c6cd44f4191ca36367356aa57dd89afdb32aac1500784bc5dafb9405c6b501b9fdd92d884dc6326700302047c435bb500663064023023b0e229e73c6d942bcf059b90c172256e51419d6d8e008d0ec3f05bc0c4d0e5f29c8d2989ce8bf6279f9fc85a43a8ac0230476b1ad8941fb160998cd2d6867d4dfb0546410cf6217538667147ff0430f687d3a0d16a7acecddde9956a18f71800ed0302047c435bb50067306502305dc93b84a58866035cc7df8e4fd25b407ca949001cee851e16b4c8838c43ddaaecf5af7ab3766642942ffeee90b4888f023100aa4b1fd26921526b554a9a27a35af3c440a4ab6a90102a4787c4009a3ba022b9fc6dfcf31a7864d1f9572e6b42871b380302047c435bb500663064023074a0a6088750da221b998f81705fde25565f69b1e124edfd741937a2dc34f9a0b90a8d481d5849684407750321ae26e00230523ce51dea12832933a8e7df65f6252a9feec095b41c7a34607671ba181072ee16276b1c93afb29b1a00e11c6a768bd20302047c435bb500683066023100fa2a6f6b473810a8bb6a56764c75c935dab96e28eadcd411ced0615872f4f3f6837c8f9fa770fe94b3083167244f6949023100faccfa1247b1fad6c4d5d2838a67f9e444d0521dd59ad8bba03a88d8cb9bfc5ddef33c67b64b69bca8b724811b025d4f0302047c435bb500683066023100c9c03691152c74e7ca52f9833a7ef700b521e10f7edc784912e9104029018eb714e62ed1cc6f851bbfcfb39bb63b05da023100b7191d7329ecac292e9a24722354373a292acc1258dc47cdd53680849903d8c804fc66f39991584cc7b6f8dd29e6baa10302047c435bb500673065023100b07161a0c4595d0e5f9e1fff3bdff779320dfb14ae69c1ddb289832c93c65307cebad57f495856ebdcdab9125921fc2b02305d86140b9734c0ffff4a0b0f5a09a1d0e88e79cc0f460f3166c68a89477fc0caf2ed0ffa87dc30570274dd03ecee41170302047c435bb50067306502307be71deace788a76957c90d95a505a043f9afb9303c8372bec7030e945aaf8612e9c53e27a6bf2ab23c9a7f33bc4a98c0231009ae7d2821eef330a047d22a47e7adbb661940e48e5ae39e7b2c0f6fbfd776c90d65b6ea9bc4f1ef81d1e61431be1d77f0302047c435bb5006730650230672ffcbab373df6be208187483b3bbdd3da321956394a38bcd60f3e51b8c6dcce1d91b7af5dd7c55cc64543e372abf0b023100a532e0f1137be5fb3fc7c564eabac66343e1553694b14cdd907e4a07849ac4701887f2f27baf36fd5046d27503d00b0a0302047c435bb50067306502305efbfa43438b4e25068effe0f8f1819dde0a9e0f81d66cf314f71e36c6a339061389df634db0907249e431b110b109b6023100bce9f023b149e338515bc1a80931ba40e567ceab22c1a6bcc71e1059feddc49b4be4950ede7d253ab36f589ec3abd7e50302047c435bb500673065023100b80db07fc79b0c4e91296170c53ceade27991c57dc7043856fc93a304ac0f5aca0fbc94018b30c3fcdfbe35d9768ddc502306a62ecdd63579039df45b2815f201c32ee9d760d6ecdaad39c1067a82d2c620ba45a63dddcd5210ea2775bb4e70049440302047c435bb500673065023100f16129f49e801ab695c3a3c8100a52c09516878996e20e876e65beed7485383049d59c9e039667fe81d8e14c1827f1b5023023ccc04bc18d3982635d736a9b9ffc9b4671a0a48adc8fd64bbab83626889e1926e9e72900c4335195ff9c9fa7dc876e0302047c435bb500683066023100c763ddc4d9dcdeabdde3751f7523fe04a74b34135f2331d7db738ad1d8da7bc3de36dd2263b74c21d18d13a1ab2b246a023100b8839149f772f937335558b660efebb2e546785b21a700b7bcd906260366bd2245d54a2747eb1fc35b905eb7c2f079b40302047c435bb5006730650230584058d6b070fc7df3bb7c6391cbcfb4ccb8b87a6cf3751336278ceb2f9af1d47fc8c5870eb14c1a0192b3162e9ef3f1023100f119aa0dfe3a59431bea35ce4f8b2b45884c75c6f5bf280ade3d3fef3bf2b690a141815dafbfd800f02dd23f0bb6ba4a0302047c435bb500673065023100b76eb848a50bc375044a981823a27ecbcd03a91d5d642c540d16d04fe8d7794acd8b693842b84668626e177ff71af637023031310435fe6fb74b6308d7c9369cd164002b329e5e86976ccb44fe41a90a3c2d46e097698f6c1e98a6ad5367212b2c150302047c435bb500673065023022e104bab61cafc84ad322dc45cc5c7477192540cbf77caf15f4d6e0dd46819de063f9e715cb1d2838742abdf06f7809023100a115d895f35432c5df7d6a341c785e1a41ffa7ec9493b40f2f40fa86d7bf63433132ec2e89639b94f55de957a43325990302047c435bb500673065023100ef90b23a04c7c765bd1f7e2f611f5b28bb584fd10cac1aa210128d8f913ca7db5bb4e3881be88fb8e0ecb5eba5ec020e0230471fc815636afde1a7f9c920c54adff2463780011817bf98934de50786dfdbb70c67c0a2a70d97b925f50292a6a199640302047c435bb500673065023049809304033c8f8cbb22ce280b51d042d67b659b0ea9b6e0cec6fa0c67eb66f8989164ccac23ac4fe65af447f07a378a023100ff7907d2dac31a21101caf8edd62a5fffb59b791fe2e462b0eb17e9ec91a95bec95980b1268ee416683be4f99fc59d3e0302047c435bb500673065023100969ec4974b19fe145b31ce6db5547dc8f4d68ae93a73296a7e531dd70cbe41ec77801c5dfdf0fd0169b6d44880a69944023054dc8f507a3eb34243cb9510fc57095c94bd214951b2609eeae6ec503a11c063f8bd7016fd806bec96bd7d90ad0e33090302047c435bb500683066023100f7365bfe067f882837596a1b7360751d177509971477e6e998ea8216e2b482bd15ff9df8ffa0b3b85020fcbc7e6fbcda023100e64f64682a5c06683b7528ab0eb5798e1d9c971fa5e217fd70a80aacdfed2e62bd3aa3eabf1609a57f7803298373570b0302047c435bb500673065023037e089b78f9ba9da25f7d56bf2ab20cbad40ac8e26804401ce36074e0b722bec19d0054c9e1e9f05e6397c42a3229916023100c9010f23cbc6ec8c60ce11a4dafe2e39422fb3105b21c0a611ab600b093b335d423fd0b89affe1efb7f981495a6300ef0302047c435bb500683066023100ebf559f3b27dc74443d5d27b34b7024b2bca8964fa3c383d803ef4273410339602feecef38445c24de9222c1c9615763023100d00b837e12bdc9653b0b3618942d8a8edf7380a937c5e4eb209818d8f188192db87db38d02fa30c3e463c4b0f486e8f50302047c435bb5006830660231008cea967677d672881348beec7275d5a2912fb0bd5902daee3a6840788b67b1cbed1b1e043234f0d35ad2cf39f2b9f21a023100d515296d9b28f02bdec750425897b266b04b13c95b15fcb8f3f9e89f47adc2c5d269d392280017f4fd6331eaae5e93fa0302047c435bb50067306502304cf5a55fa61a9cccb5dd3a1b0e93cbd9631911d82147efcc7dc79a3dce29c4d9b72789965dbba4c36e6b9d64f28c7137023100c0272ed9bbfcd818c1e8eed3ef2b11dc59a45f93cb03b249aa20e464f9c20d6b0a36230848bca61011b6588c021d7dde0302047c435bb500683066023100f7f6ae0fbb0c1ad2e375bc3a015dfe7d2be0f0a528bff357d67f5acdfa605454f9de57c58fd4d5d525b66c6ab916b33a02310082a2f67afab7cc75197fa1927a2064226e4c0c67f358c5319658ae5174878e5fb83f0c8eb39a9aaa7988eb0ff00460d40302047c435bb5006630640230193a70bb97896b433334e0cbbd4e939f7a5fb6412c72789a593ca9552b676068ba9c16a1fe8914867d95b83399041d8102305aaba037ae1cbdb5286d061861f5e21d19043c67a11586f978c65babf57ec78c36673678b0101a9077c93406c6a7a8540302047c435bb500683066023100d46ad0ac6e9d36edad72ef700ec9a266ea7993d2869c2e1c80a9ad3855ecf99dbf39eef053b053348d40bc7d42fedd2e023100f4e66668163e0257882aba312dcd29919e7ffe4c5b70fb33ff16d86f393a29d4e37b9c66ad69768ae2b5c63c02c196a50302047c435bb500683066023100e9c1403326eee1ec599bb9a5a82cfa23dbfa4de5aa15b36f9e4b0676e9b3dc0850fa7b54c69c2a2d90b45357210198c3023100cb9625be4a497f0116d34a15f934d7be0f014ed22d2ebc7153798090b16dc99090ab6184e6c775f796b153e0ed611be60302047c435bb500673065023100a82e75c8f5f9e7db6ab284cc7ce9b054d9b7b9e45595fced2b382306ad781d452239beba7d37ae3535d844614310ed98023030795dd8040fe415d6eec2c5bd989c4f7cf9d428c60075e973e254e512d33dcf89891d271b0142b15192d91d91503c700302047c435bb50068306602310095efdc1656bb83eea989de84472a811abd16d03766cad48e1a71d3cfda8142a4b418fb0bfabc5c817b24939e3972a3cb023100c9f3a1ca1dfe4bbc2ec56e1720b4a4f04f3977c1a53189d82a03089b86b5fcf29d92793de5cccbbedaa6790f04ed53c80302047c435bb500673065023100f9ac8fd0c80b35f929b25b3ad567083243845b06803090fe8fef9597f310dcd23511de4342816b8cfd7737a61ad272f3023002f1652c25cbd1525044d3330e231e26a818082f00336b64ddac40265ee231590da493fa1fae23a5f5341668b145ac700302047c435bb500673065023100efc3f317382347b1e88fcc0e2eca7952a148026cc41a0eaf0af9916b9d88d47957def39d8d22312b63f68be78ed81bff023038ca8988cbed058649568fdceca94bf8b4bffa018871922294c60f058a425940065dd9e72d2c8287009185a2f7ab473a0302047c435bb500683066023100bd76cdd62ec94818f5deb3fa9be065d5924d2c2a92c856fd439f331ebe320f23fc57e47adf6f1538c715aa1811c88fee023100990b797f9f7f62a705b1f366f2b25e725c59d8abe0cf152e23089a24cdce58491d2ad4685f3867b92c50d33c9a5d79970302047c435bb50067306502304daec886f31dc8940ca2ca3bdad10e9b0a11a0b9c117d966af25df7b2e4568fd70c36572672fa00c62153e517796b332023100bab3ea1b89050e57ab6eae5fb6d3b72e504da4cb19c2ecbcbdf51b65d04bdc3ae594b991554da2aca1a8d28efa3d6e5d0302047c435bb50066306402305b6c9fb80b60ef1ad5f5c5b1feeaca9a12fb417c033b0013ec07f917300718f31ac882c80f21ce384f615f1ad8d2c7d902307a2827c651f23ecc94f7ac8431a9101e7e650d6cc2557b4199e4e38154c1967c30cf7405a52761e3ab74613d5efcc84d0302047c435bb500673065023100b10da3589af6a9b4673331df3825a9cae93f3837067cd6dea26174119a99cfedeff748961adf6dc2680a11c892236090023066afa248caf92d0c5164660d2d0cd4582363044ed3240d44ba6af5569c4b0a18c2e657c3bb5acfee680c1f935bb1c5ba0302047c435bb500683066023100d50375fc91cd64d70f7ee56a35a4f03afbca62918d335b8f47e65a37246762874247f12c4af8ca1f9647ba8db2f92fd702310096f00e35807b6fe2915601304b0f2d17dcc6e8b13adde6da7d873e2256e642504f459d31136ea75057b729ffbc0808590302047c435bb50067306502310095220137cb5e204a9b60579d4d8c88624f474d530c3acf5f27d4b41130b940e857ecac7fc71e4339bcc6102194058ac40230173bab9d5863573a77cd126c3f596bffc87d3ab8e0a19ff04fefcd919b7ae04ef67ed9ae7bd3dee672188469aab763da0302047c435bb500673065023055f57114785a0e881af06b93b827d7c7c323f18f964045f82f815b0add846926dc7ad5b3c6e7758c0b213f066b13f206023100d2f38e01c402c505042ea21223b6d99b211fc59902092b4528e7da1a45c378df6d30be2968239bd3b832a8b705e1cadf0302047c435bb500673065023100de769949c145548f9507efba5b72fb6f77c7c7c7d2bb1732a5e570783014709f8bce165bc93cc863c5044df06960dc9d023064c1713dde58db80cba54a12bbb49152092ddb13d45b6a7976d440a013017a48fcbb4c1650c8c32577f778b60dd5d6010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023012fdb8d73e083179bb51d4ca06c5a9a2569f1f3030b0467eeef2cc7c2aeeb8b636db0b6401e2bdbdf09383765e49c188023078c585072c4aaa24eb89025b068f328d32479de32fe8b0f8b970080a19153bfa262e34412a20310b0046cde39b72363a0302047c435bb500683066023100f4c2808a0624751a0e34a0052df79e8cc749c072e0164704e6691d1b02dd7f3bc95efae23ccc5000d06f5527fb6c098e023100b0ebecd7214696ea9f5141f67c4e2cdb9912e72025bbf348a2bb58eef58200b6444ccd9d5158cea973dfb82d6eee36bc0302047c435bb500673065023015a9dd8f925b88fd7c4f82b465b8e614ded322c175e3b7a7985202d566d70ddc961c34da87e6292139876d8888af8d8b02310094fa94d2d43a9b65068d49d444a219c5731c1192766603876183f32617c81d54c64fea945d5c30cf20d643372618c7970302047c435bb50067306502302b98ac4414205a582c0fd5a1ad2f62a4c734f6132e19baa1c04cb2d3dfaf23722dad2c94a69ab720ade8967df4ccb5bd023100a173920f2095f64b355277aeaef27bec3ac9c576130fdc3d747544bb23e0c455144597f24b38e7dcee96b6f8fbf479ec0302047c435bb500673065023047fc73626800f425fe0846217e5154a7f45c98ac9b823f0a949334e28a4e6b854378e2d1581e05b7dcc5a02026dce7e7023100f026cdacfb4d92a85acb659f722999114ef2764d1d6dc2b75e4e9836606d16a3d4c5596820369e2ec1f92e0d9d94d3a70302047c435bb5006730650230035c005000c6c884615f2303858787bd4ba964b5a93101119944f735c3e32dd96e76d243c512c271d50a8daef14c906c023100d033e1f427dccc311500f2b0004617de30059b8434314c0601eebf32df67979e351004546c1415b5789bd9ce21b3d5910302047c435bb500673065023024020e2c77138e160ac7d86118f582efc5586ccda38064bcaf25d491522eaa72a740c64c850eeff5b9c1be46b43a5021023100ca633ebbc8f654e77a985a44cee6439373a9060360fe18d792e35536aca38a75e7fc38c810e490a502dade6ba307c6bd0302047c435bb5006730650231008ed6aeff77f7f36c668df04ded684f67c68be81531a53740563c3592f34d5627e5159efcb2df15105e0deaa800f98ea7023014277f33e407346dd5fe4db50605703570bc2d044577517ab662d3a4d8d32a5ee5bf69ee06be2b68dba861beace3398e0302047c435bb500673065023100d76ceac18586942f99c46c3e21ae20ca9a64529d2c5c6598d469b7ab704bc3eadd16584950e8e0b75dfe2a44dfe7c7fb023074bc57057758774a92068744ba0c4ff86511749da72571dc148347343e695912cee698bdcba7d6e9d608d5de4ee23a860302047c435bb500683066023100fc40f56cadd36ebdeeb0161c081cfd907a03f3d14f83cd0a31fdf48a6f548efaa473a86bac23e0905dd4145ea752ad10023100ce4b6fc170eb575a584e3955a7f151b2e663c7c133be8518ae64125bcd0ef9bf2b4b6ccc0af7a770a490ae2fef7b71a80302047c435bb500673065023100e04451496b24264b8313f771bd0e61d9d81ccc7b912d46cd4bfabb57551237c560976002870c86d2a74ea405e96cc3d10230731ff9e85d25de039973eff88f3d62abc05762601289b6824f428ae649d06239c87465f6c0215ec1bd759f1a714f715b0302047c435bb50066306402300469b7506d06dd83c73da5b817571fe6ac0c01b13086707f32ae6af55e450354ce5a1823dd70c8800b96722dca0feded02303bd3992bd7bde345a0fa7268876b288ff4a895521f96d89f5404ea0d93240947857981ae484fe185708189fc88ec83940302047c435bb500683066023100be50cdd21fe1b2bef255aee54a096722af3b0abe07a130256a5b7b22c118df13cd8f636a8fab39d0b2d79a056014e2d1023100d4dc0d2cc4ba067dc9aa2d5e59861a0214f666e1592ef6dfbc5323ceaac73dd891d536895d35833d159154ef59fc1ca80302047c435bb5006830660231008da06ca554acfe205d627b66c2d7fabbc8fbf040ef58a7aad8ae83ee180bade53970db55dac73a630d2e39a6f31b76cb023100bb3dbf1127b531807f9dddfcc5b138b4bbbcb2b955f4dfbf7ff620c7bfd8f7097df3359f4cd6ac0057a08e8eefc371fc0302047c435bb500673065023100f303d23ebd06b79f3de1a2a761dea93d4e3ae843ce72093e82b6d3668d735cdd140b5e21a5f934de956ce52d0b0e2cf90230790361ec4a3bd84c3a527139d929fea25961a8cade1d423ae30300a7f4096c1d211987f73700558241d0ea1af8d66b940302047c435bb500673065023100a0a37ca3b5f86371c8a8b7ada97101210d7171cec6866e2293151a37cde12ca343196fccf68588617ece6d4fe62c05b60230615b1fdfd567e465f1903bdd35a18005f0960a9e67ff8bbe5929162f04f440236c61b7efd1f0fbcecb894cd1c6ca8f9b0302047c435bb500673065023019f7d757f5a323da575834a4f2291eaf04cebfc6466864fb49abbf2a669749f86514c35b894ec2f5cec0bb386a6bd7f6023100c9b7a2654bc0e37a6a1da214ff592bf57ce29c26c014333d46e2307cb81be85277467ea063ed43f13edaadbd107b72db0302047c435bb500683066023100d6e0eae20c7bac098795d90fd9a057d6aa4d8579179b4358e3892edcb34eb83cec96d3d68e643d7f1adfac9ddd79bb29023100aea894556247c3278bf4d1f53e6f4543be0afb3be3e1f306632b8b62f4f0853d81d8b0538d62d5debacd0498be5abfcb0302047c435bb500663064023045a91abe8e37c0af64b16e6147c5d061d662dd80df9f5565892ec935422999c44d0721c0f84b1b319e30cc41297c85db023045686627337a771bb4c7802b74b32a2b0a4ac6fe1e6a4fc6df905b8979b3232f7c0438073d6c8e8a1d58ae408bc09eb60302047c435bb500663064023033a886f426ac02f643510db42f683acf26a3cb1561675d98eb71d5e2b6b0e252948e672a6e0afa56832b7eb33df8dc9c02302d7a4a78a18289898319e8156a92731a72e25d9ede5876e48aa1b5095e0c58c28db404a4654f268528344597569b81b00302047c435bb500663064023052f3ccb60323138a59066b44c62f0b544e9f53ee5aea3c28a437a5714f4e92c1ee116b2a8e725f631bd32044db2dde5f023049b174a6fbd676e714bd22d0a302546aacea0fa07a94d0b55fd235eb8c758d03a0bddfcd63e766a0f26ad6a4ec5f529c0302047c435bb500673065023100ffa037789e3b07205652f496f6a89a1dd6ca30d662a1c96e21908c6c987169013589f606f28798b308a6089dadec09e202306a55a0b1475dbdb5ad100dd670e8bade7ef1431f12a3e9a082368d2597ea8abbfe55fda0a8f956818b7747011d6016280302047c435bb500673065023100d9808ff18b2b3e39b2805391fe7b83abac896e92fea906150760435f53aa1e60d6bb5db0d5af0bd57912eba0434ef522023072b767cc67e7a152c2b0ee29df43833e6c11fe1f551153b0fb0b04960fbcd812c5e23ff37ea520a01637eabb362225c40302047c435bb500683066023100c6652d8fdd1e54c4e42e6cb9dcaa03954153ca99ac56d11b82f6a00a5125e81c18f8ba998797949d15dae41521b157ce023100940c1c036f8eeb972983540b8961a8a8e09d23ef077ba539dd7f17e53d09726812fd1eb1d2aaba7ccdc72ed20da5e4540302047c435bb500673065023100e645ff22c410a53e545e27b5dbac19b0cff0fbda71c48256f66395ea64efd1da4de5c6d2aa83668fce80383e7d1a8da6023041b2d85eaf685e48598ecb71d233d73c01df60ec1313add62a16590a228e9a371611f64b706856de66894031a61782b00302047c435bb50068306602310088dc88c19ed2334b98045c6d884f82e84de568a29250ec989cdb28e8170dac82ef5aacee6243fa61bbe15d745ffad9e9023100a13b69b777efebc0455b031e1b5c346d370844b641d889c881a1ef070d110c2152cd468cd033e4dfeb2fda1b7d0621860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023074742715469e216cbc0642a6b94b8d7036805cce52948c1c793c77b3dfa881e1098af923ea6bdb2f42c339e237a41b3102307e7cace601f2a7a79e19d09a5ebe332538167275273e79e8a23e636154bebb91ca22f5d069858b609bfd1c20bde346ac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304576554d87be2e14b2a7a72ab8aee61ca4c532e29d918edf065447318029e3f9c21dd4cc6be86ce576b60706ab2cfa73023100acc63e9d87cd9896490dd35589579bdc72db6170896743550f93208ee98cd8a5807652a96c6dbeb513f312a781b04c9c0302047c435bb500673065023100cfc8f86fe9ef535591165cbc9637cb31d11c842635e467779159892af8958ae48009472f602c748035ac4cc159e77bef02307bc91e23e767ae49becb619bc3cd290c315745a6a6d0884c4d5c4a395f1cf15c35288ead7ad2cbc718b946d801534e180302047c435bb500683066023100c360e10f90122870ec7690f8b3caa9edebbdd6da8ccf61dc462f0d3a120941d7b50248c83bda98cb5cff5212efeeffee023100eae85e5de0a9b5baa9420185f301d768281790e927f7779ef7df858490e1b95c2c0befc5a993c642873bb373059e4b780302047c435bb50067306502306966c8597ba00d37d577e29cf845a462197cb282bd0d9739ffafb05364464e15feaca94f817497083586e2be9873b2180231009e8414ef224a1c3fbf3387b9d2f3b1e9cc3b7b06be844db35ad7440b789f1591e93559666c1cfb0c5bc1564501afedb00302047c435bb500683066023100e286f14040f5f04ddf6146bcbc318c0676c186c1eb60e814f999ad1dfebee5dd6d20d04f00847efe6d56311350a64cee023100e65c4532a01e55083a25ac43dbfe49faf05f166b9fbcf4e97bdcd4918ad62e56be771d524fbe8fc5c6f76f58fd71b1840302047c435bb500683066023100d028c6855f6d6efeb700eb6c2cc40752fa45966e2ec80f91c80919f608eec7edf666d0eed703d85ef32f4c5bb574859402310098f4ff57743dcb7ab91c94912f884d9935adff5853d39c066ef1cae4f797c305bfded1e62f5abfe6db6c90a5018964610302047c435bb5006830660231008ca302426c25f35b58b23b5bfc1c5037f8e354e683fc1c952bcb57cd56ff83a93613f32e444851df03babdc1eea7283d023100dee92d5f8b911f0404db230a34258395254e332ad21625c40cb1a05c7652e5b00a6c8a11d17b4b9f2429316dedea7f3e0302047c435bb500683066023100d67e3c4802215f7b791f7dd4e65c232400f13a47bafe8f223ce093a085da70b4ab9ce7e91c62d2619d2f4ad658b1627c023100f0b5195ab9be9a525bd1ffe8d18e772520cc30977f7501ffbf68ce3f4a5706d41f2d068f47e7327d76ab73a9e6fe661b0302047c435bb500663064023055779b10482a95f26f3a9f1ae76a05e373b84f469dd1c269e2e00a77a86f3ddc8b8f49ec8d0c317a8e487adb93e2bfec023069674ed00a619ae30a4811e3f6edaa6a613e3e48e7bfe74f7c5948af4ed179d1f19bb3485ddde1f3089fed304ab10e2d0302047c435bb500673065023100d2b2a7389f393f2c337b3ce56bd54297cc5f4f8d5d07cd9a9cdddb651bf84b41eeaeffebec34409ca1c1ab5c79744d0b02300631c9d0923e9ea54742e2609dcf4159851c6ee26dfc5229bd9fc0a3640bf077c772059fdd0aad85280bdc51563bcba80302047c435bb500663064023068980a11c10518fc0332ba2f20e9ba98eff51326629849846e8c22da3cb1c1ed8e8f9665dfa64e176e1e64d6589e73a1023030fe475b07059a2b9d40cc294117858842d547743367d6a70e499a4ee93738fd517c6b4d44594da640565c7c3144c27a0302047c435bb500673065023100f778a201e2806994794946728209ec4c1dce50c3d67501520b6e0b33469217108c11a56458fc8fe061e688dab6e9eb0d023006dd0c37791f12eded31a2e09961ae0965b57569c9a45bd891de6415dafdcc4399b96a626f559ff487d25562240ae7040302047c435bb50066306402304dc4af937c68f701218eea75286815dc9a0b760941bde983386ccd01b4afc6af6e389782a0735780b1c697d6f2286cfe02304e88ef460f41f4b12e217df46bc19460b2e1d606a60ab9a1d0ea50fcf74a1feb9d415398b88a20b310e8638358b257250302047c435bb500683066023100c4877d0a37100b10d75effeac63bae130bdda20edd94444528968eda9c8f59e9e897535a572de3a86fee63899fabd189023100b65490a76f033d5c69bce05a43818a01df96713bec13ed7dd13897e1cec246b5c4f3de6dd28107f9f831ff9f8e20bb4b0302047c435bb500663064023065b72a9c971f5811f205e1d07ff9f4b635e31410c2f0f340fe9aff16b279bd67c9b8ea647d8a1179e80b4e8bb9a464f0023032599d4e5ca4909c3c5f901d07c7ea913859afcd6d9f15edf390e79b6ef24a7d79af8367bd1d4db6d515fb22abf5fc700302047c435bb500683066023100d67fa9f3287b8c8308dc1e70b9651e187a9610dd670b6b8966cc3458852551324b9757765ac8df2e62c7902d98676bc1023100a0bcb31dbc0afc6bfeb42aee8cbeda946791b542a7aed87116c1189109ebd3c0a6fa8906d955f9e76288a26512c6637b0302047c435bb50068306602310098a5b485bd890796f1c9e3ec5c44463dedac6a8c129cd4a8f28443fb8cd8e4a38e6fa154339a61065f288725098a73c5023100c3bc3621d0cd8386b975c1313e319d8475b264b3318b0430c9f1b54546ee8049b601a565da8f4b3d7fa57f046f12f4b90302047c435bb500673065023058555d3b8dd29b7cdba0e06baa5310abb4c91cb23d6fa019792c8218a5ce4151c7c1c1f9c9aa14f6f60598d66a33d03c023100c3594266e177be97174b8b6272593a6df583c037cfb1cf55cc88575e0dd0d4c1bdd4c7c32ed761462115f4ad731980c70302047c435bb500663064023038f81868aad2639152edb6a52cc8f3b1947b491dd8a32d3e8264441ada9e1822cb5ffe758d2e4e21790aebaf8bc30396023066d14956d1516007334bcf58993c9aa2e2459bcad0e6dbac124f5f18848ef2d61b57de638822433057b90aa776acd4550302047c435bb500663064023067df7714500e5e1490b06b849616a4cb7f0bdf1a7ebb3aa3c311d576af5f69e4afd75118fc629ad64123ea5b86ae2330023025026d26ffd33ea5bc0ba53e19ef9331d939b384caa7ccf452264e50a9a9ca6988de6bad3ea668eae7f2019921fb05fe0302047c435bb50067306502307f9aab2b8fe583ef2237ebcea82af749f1301d79e49cabe89fad8a3649e5f39194d010c5c66bf7f8dde2bf4ea734f6c0023100c07488f0b79d1ef291256095d265b4f5f7d95c7aa313f13041f15ba0c95c880cf559083cec87ef0d1d3b9549183866020302047c435bb500683066023100a0cb6e58330d3f008aa17320c8a594b2ac3f67b003b5e91801100d3a69d650386a9572d812835a6e7cc5e7abcf027c55023100d66e79baf29d80f4da5805b56904251c2d7baf6a8904b8a7efb709a0dfaeeac782d77b0bfc5c1da0295384c6ddb5ebfb0302047c435bb5006730650231009a24affe6991c92a05d6fae0fa96eff685898c36a8c5455905322f6633ef20016c103c2ef48363f07d11524c7dbf1356023046402767ceabbd735d4db044343a226f83da956e9bc7d0e0c5177366189a93871525b15e5e8ccefc4ff3091e837a6c7c0302047c435bb5006630640230161dbb0b92aa14c524f1cff1c8c46e3fe3ce0f06f94922adc56a0bb9e048492e03b3dde39bc9fbb55e0e3750aac98c4902304429a751da20ef11bcb2834ca31e83f6af98fb1812c54154f74a44cb06541caa23b482589c2d5a917df9d57f19d4aae40302047c435bb500683066023100e510bf76810fb04a7d3bea68f11899e6b0bb79bfd596491e9a38036c857edd4f52ec2edad7c11ac3f92c63c6afc4b54a023100f65f10a1831fec3dd05e638d6a413d889924e6d65b734781ce6747b524f8fe1002ee28ab5ed443dfc20b84302eb1637d0302047c435bb500673065023100aab439711870db275df5744a3a269d7a0a6fd50bb413c7e571476d3184a7d99d9356ccd28f59ad4aaa42831897f34770023045ec9088a3ba22b52166b4202155f2d70eaf4a90159eb2730daa8693b1e859805d8b466f67a961972f5965d1e0cfe1830302047c435bb500663064023032e76429d82751a5f30d33755f905124c278cd48cb45387891464528854c1308c5784eed940e9b6d0f65348c5972ecbe0230546a19363f32d1425cb86cec58c08ff1cfe7f62bb9f3b9842d5203ca4dc607e5064fa7769a72d0e8a6c4a0000cc9e3190302047c435bb5006630640230365b0097d02a5ffeb5291f125c3e8010cf56294dabc980df48f24bda9bdd863ac5aed9116455a3e720f8b07793824e0f02303339dd0d43565e4c179af12c0bd9b356d40299b58473f3baaa966b87b58b3e2109cfeaf746a93357bb8c420b785f03890302047c435bb500683066023100c3a9dc924a7063b1bd3a9cc6633c14c675b1fea7e0c0b953cc3d45a00529738f846c495b978f2e0a5f06418d60d95acc023100f6aaba2b9c80e6455dc22356005ccba2f9e14d90103e021167478ff42e7a52a6f893816baaf1f4dbaa3347752965af000302047c435bb500683066023100e6f384d2d32dc74c5d321a104786c8daa96d5fd34ef7753d1ddcd39afb788eede779426f7f72fccc1d2e51749d8a3231023100adf9bab7fcd7d726da0cff4cdd5ab65decf4d82c565c2ea2719fa62c2eb6677ebe9d96157a94cd286ea13f567c115b410302047c435bb500683066023100f0bb6f8af4da18c73693c9239e25a161db66617749e9bcb059b2348da280015f84024889840db367d25d4a05fcf9f1d0023100bf68c8e450a67ca54797aa85ff014fbc1b93600973499a653ce4d37e370fc544304cc6308fa4d00754ae7b7c99281d270302047c435bb500673065023023771f37e855e1caed04087f3b696f19f56709cb28cf19aa1fa2e437657b888303bc477401a015e75985148ee48bc906023100b366355f30d7403b945c4485b41fc16e4a8b247584b00ea20153ee19f480b22c9602a6f2b490d7eab0dc380d565367da0302047c435bb500683066023100b12468aa06a3fb5902d4f0ba922e30e8923db5211c1ad5cbea4703e1ec8fc023e7671a458fb6f60d48d49c3d15522c08023100c135b13304e778732768527adbf9d4978784ff4f3f7352603f1970bc23752d92686e12f56f36d144b7bfcaf1554df4ee0302047c435bb5006730650231009824991d72a0ee10fc37090dc55dee3b2450c115eb1bc234624ccd6601021a22119006bcacfa37bb86febb94a1a7ead20230184733b99a423dba1db3c63c4a8c1605048bc0230bde4a7e619378cc9ee80464680a8a1721be908b93080cfa571eed110302047c435bb500683066023100a855a9bb45dcf52cc224a58e5e9fdae8834a93e4daeca7321da75342e71eef0799f32e46361a812129c2437766066d04023100af37a63180f2107e8adfa7e7c334025e7db885c1dfc44b224eaa627b74f83fc49c889e59e102745941e5edd542df65f80302047c435bb5006730650230281c2690c17db0f7d98ce0c1934a9d466bc38d683460fb990cdda17ea0d309d9b38d3902c777814e6e6a7a9316c20d96023100f97405db7e9b330f476d6a8c04d291df383ff47cf002a119d801f92b8c7345d49e6f3ae7aa46edb93dfa74484af6241f0302047c435bb500663064023076e63745b0bdc75b7b9c0c46c93d4e275a833db161a14d52298de643f41197e00ec6b1d88ed6daa35535127d5982b05c02301acf569173c56eb4eab301be99affca85c468901df6a5a5843b1018ec4f699319b8c49adf0936cac79fdf2d3db8108730302047c435bb50067306502307262999c0c3534cbb713c4cadcdfcf1a25c88a2f554397c2334410b21702028bb6db12dd9b38d8ffdc788b2ff1dee2cf023100ec5c0d105bd0afa8c09508b2be2b5afeb91e1d2ddaf7e7f7950527bdf14d705247b15b8798bd17bd79a5e0ab653ff3b30302047c435bb500673065023100cfea79241f3d9642bd189d38d12bad023f0cec06819fb781ccffe9f398bea952809ddb5f8c117a5f4b96bf46ad48f3eb02304ebc961638cd83ef0af1a623c4defe1ca91de0cff215e9b92579d33993a25f8089807a3739a0bf7d5937304619a749610302047c435bb50067306502303de06a545654731adcaeab62b7622b11bb104d6db4b5b4fa943d0171a23dafe50e222b9c65f7d969314adb9d6bc257e70231009d6dc925ff1a3d5c6d16b00c887d6ec1f11e7672ee80c3d1434904467976b13ab667179a4da6f4d0e952126f270633160302047c435bb500673065023100f7dfc433127b94b6c392712060f69e5963900ca9d23628dc1ce5cd9f28ffa7244e6fa50d7fa70509364b836ea29de6a502300534ce69281337f861a01a7dd7a8b43bef928f8437d8be4d5bd4966be0f0a23d34ecc5a163b4a4280493fc34e1c2a68f0302047c435bb50066306402301f7bc5d903604c98ebb6576cfb6f409910bc82c5f97c8ac8eac8a24f184ee517cd69e681d25650bf0e857eff148de170023064b6fe6bca9a2ae4c698d75ce1ec3556a4597f44a0133e6a1f8927062d0d2ac812120aa665feccb24ab55ea830ab5fd40302047c435bb500673065023100f355684cd3cb8328755f36002992de80e96e26488f1e9c26a751916d6df33fe199cb94bd6e6ffda637a78cc05ca6418e02300df2a03d59044537024ec0d1bc0423cdf3030ea0676609108430ce922e8cd42198c766d3d7bbcadcdfcac60df23cdcb30302047c435bb50067306502306121decb3cefcaeb9f2441f39e6ace8185756218c51421109ce06927754c24ebe2a8670c3bbc7ecbfadac7603a5387f2023100931719a850b6988fe2ad0bb93d07bb4cd6335e480ac32f9c64270aeecb2e83911cefe38809e33ecb0d9f1c0c00c447bc0302047c435bb500673065023100a3e31e942d80141c20c08d836b7887fad9f558c2b48f03f27ab5ef1f7f3b02f007d67375aee6746c189a5ae9a4be6bbd02303e30e97a2aac52f7a22eb1c9864b7c5c38c4d3099e7638db92f41ecfd627ab9f1ed4cd0a46b04360d31c2d81c7ccd3440302047c435bb500673065023100d132c14b71545147fb5026ef53f3230677ae44e9ba780d6669f7122da59803c5b559540ea4e9385729baa967f6822eaf023041ef8085fadd1a21db6d2b3fc9ba7e909a451b699bfa1c739dd2b386b7daecd2003d71e9e52b51b60bc6551b5f13c9b00302047c435bb5006830660231009275b7fd0548761927329050c220e2c5da162a57f7ca601f4f1d05d19153350786a09363331c21592889877498ed826b02310096400129a102d782fa203f56f348985135445357546f835b9eab396fb1715d813fe5ab7e65a5eae14853493993116b950302047c435bb500683066023100f2da82c4ad457f76dbeca1ac8b7f90c99dfadc79d6d5fbf2d8ea39e5b96a99dce6142f13f02855e898917eaacbf97dd6023100ea152f1ae30cd9e075341cd1703cce586602ece6131986c7ad247056bb4c6051e1933a173be8dc88e6a98f09b1603f540302047c435bb50066306402301b091944daadcc12d69db87b445041b6417374e1f9838f326463568d1623467b4923bd085d46cf36a0a58f31fb83364e023062072653e7bbc7a40055c960cebed35142847fd13ab77758d6faaae5b7614683ef73034bb4176d29439424b5ef1bac110302047c435bb500683066023100f9a4a2a1218432ae92b01e969526292defa35778b8e90ff5740b93a3efd8349c514175b7f8bf6122a175f77766fc2470023100a336032058adc8804f257f2bc622c2162cf1626e119f32667f7fe5568e63701fa96b27a8f78f4173f04be8497cf3982b0302047c435bb5006830660231009d8cac897a04a2971137747950cb48cf1e38dadb75e05b0cf4ad10c11d0021fc09ea48a8d4d9921d32acb1664370feb1023100c19bd11e3bba114ce1bb1ce44ab9c27458b64f9c3f459a9214379bd60bf74a02a1bfe2b8bb238ab355c438653fa322f80302047c435bb500673065023048efc9dabc51e107b2e24cb8a232e28b94292164265b5b60059ed14aaebeceb5284deaf445e218ea0590e597f43a932e023100a7acaa865cf3f11ad129f4340b1b2d2fa31062a945cb78cb9ef469d46d85bfd6004be88baddaaec4c00feff408770b760302047c435bb500673065023100acbb26cb29f92277fc03cafda662036de386cdfd2a070118feeb7171115be5053b8c80dbed9886ba47aa7d04cb3bdc15023073e26bb67a27e492c9f200bfb8b048be447d9274498997a8693430471513145406214d595b3cc2a3896e01ed11a28a3c0302047c435bb500673065023100daea76b808f17d43d09808440ef8e94182c690c7257c4985e84ea0bac4ec98c2d36b9d4600b938ac7a86713c59d4222f0230589c1284e22bbc88f3c2687f57f407eee185ec0e3d33d0348a049707f179459c3986b6a6727bf677af00a1a7bdb5ee1d0302047c435bb500663064023046db33cbdc15a84fa966cb2679c296f11fc217dd9edf3fe9a435f4afdd8c2f499ca58e4d8b72ddfc3deabd4042035565023007cae902b4eb97a701de628c831d03d9e02736cbaca1a17c53cef0a89bdcfd3b2a5166f54359d475c43c6ac83a14da8b0302047c435bb500663064023065140f767119ac60ae1df5b7d439deedcad5e84bcc2232390295f3eac43d0721a7e18d957f3452787da3cf296a75f7fd02304b2eac177d9bdb810240c0c717b66330aaea49004a487efdc66723e1094e77648078dab3c8f4ed446a9d20679284c8b20302047c435bb500673065023007aeecf2f3eba660fdab49e1ae443e10404669c2bea2c0de2588dc87a57cf0fb27e0914e04f81ea12a204958032bf149023100a5f37742f3bb0c23cbac3c46e872b1bf454c6ea64ee094bb4b4603c9e27433a588554e0c1b454b7ffc0e9fa152b67eae0302047c435bb50066306402305d1de8151e019752e53926373fd26bfecfcb01acc19fbf02fccabc9580182160ece11a6eff39a168e6653fd89a2a05f0023075bc70b7fc599b49f0b31392f95efa6e163e06b5bbcd8ccb2477f393b3afa2d41860a607ee0a429d3595621ff9838fec0302047c435bb50067306502305acb8af2e27cc9aa754c745ce9af24922f7c13ba2b72bf3fe4dcc84b1d9cf2735a46233f8ee28fece6fb4376a85fe277023100e44aeb0f6f8595d77478ba9978f07a9c30fa880a04c2532564b144e3e63b132d4b0e122286209141a8898ec00a0d7ce20302047c435bb50068306602310084c10b8efeeba1b96c25543a17923a826baab1fb58f75eaead6d305806c93a723a1b83662433b68e13a07bc3a4fe0b22023100ba17576bb091fea415b86e82d0598be7c51beae711662626e51d0e7ddacd24516bc3d42a6b47012e4ea2b48ee63d613f0302047c435bb500683066023100e29924b61e2585632ee01fc564e8c5adae858d76838bcbf3612094ff89e0624bfbe2152da946b7042d4767558a2e7b52023100db853b125ff7e72dc00b73216b9f3277a41ed5ea2bda1df1faed5a80fd8c53e791e33d6bed56fe36ce4754581c7629b00302047c435bb50067306502302b2d6f6287a8edf48c4175764057191225c7fa856ece8891be3a5a5f5700bd55a47dd251b50d389d82789337706d275f023100807a07615bc746fc8adc61aae50515c29862271183ee96af74575eb3be28c67dc65973b69b2fbb39883597bb090ec6d60302047c435bb50066306402301d6f9b7dd1d014c2c31583408b82181c47b16db3a862446f18f7f26a978fd4274cc038dc06ba3a2f923c3ec65736cfeb02305ceb154290de01b4fa2572a9b86b26ad527ee51775683a33451012678c3ea63139ee78133c0b8d3b5a6b9b7fd2ac726b0302047c435bb5006630640230604c8f22bccad056d66d182f0edd9fcbbe1c4d3cd359feeee1952403be8ca27407ee8ba9dc2e23a781a938f5b03cdd39023041f555e470d86c186a375a4494b26bf3c26324d1bb27881ceb0aa70723936c443159bef5cef6c069f9b67b0849af973c0302047c435bb5006730650230314ed83509a8df3321878d2c29b342fb2eac53cab3256098384100f3ccfb89a0e71e45a8a2677e3faa6e97c1a247bf4d023100b462829555fb1d5eca59f82413ef69f9f206865a574cc3050a71faedbd62b5e291c78efe62d096be1d6a74de9df698f40302047c435bb500673065023100fca12c7ff9dd8925b02391b449e8692d66965ac55e5f47139667694e57e272fffa42013a7a7fab17cf115f9efde2b8180230141dd2b3e68e163f8ab6623c700777ca3a531eb486f0d59251bac15cd885f424f92c9115d986a52ea212929eaacf42c00302047c435bb500673065023100c44e13ebde8292ec49ea21841abcd942cb2ad09cf41b02adcee036032078d317c29ac250711f783cc9bda01f347cab2102306dddcb19e11ca3ce5b1e972997360b227d20598c2c326cbd92b818d8667bcf391929a0f138b0234f15b3a91900cfdc390302047c435bb500673065023100d8a8c6f2bd0d744d873c6fc2976ec731de6c1f209ebcc1e28c9d22c7d0d900daa536b9e9dce6a11ddf4726b354416c62023003db1eae318f1f1e0a55251605bb5af31feeb0c563313655381b80c04ed4ed569377f6ac5dc29bf16feefa7bdc30c2680302047c435bb500673065023100f66209296da87dd5eed5b5a62c841a8e0ae51d245f45cba20c2604b57b9d353039ef788f083310ccf9197e5884f90d8302303aa6a549f445c9e666b09db6db194b5193e936e8315309e8e8394c6d02e0ebb3983a75c2570785bab15cb48be49da4d50302047c435bb50067306502310088a35a7e9659cc75fd6c4ad2079e8c7e7524f45b51f297d94dc9a908328c4cfaf11fcd749bfb1ca1c0068af27e5797b802306b2ba1077f80b9441207b59cf63b04d079ab6c08094e330cc015bbbc2d7b96a60754ca144de19d676044f8a7eb346a4f0302047c435bb500683066023100ad76cade7f789d6a507e7b33175849223054a91ee42230aac366a65b7637a6ebdaceb78ed052d0832255f2740f1b69b3023100f542803e7cf0f59767ed3690e41b36ef31b4ab3aa9466dbf58e06c25cb785b7738c0e23ebd23677512d5f54bc09243c20302047c435bb500683066023100bf41125f90622d589d20ea35ba61751276799811f0cc8a354bf3a1016876eca09a99ac949c10c3d365ad361919d54c44023100e4c398cda73d69c1ebb3345f608af45d75b0bda1fc61e589a7c44685615c8fb69c78501deacdef5eb3e4af70d16f8c200302047c435bb500683066023100bbccc01882a18b8e3ac5350d235f50fb927401c9506c8a5a30f3b7a020117f14d5ac3605f63205f826770ca51634a7a8023100dcec13f86e058172b9e8f60423b2f6af64d13a1d6dc5a87a1ffeae7bca49562d0f0c1294d1190a6f0506dd419d30eb090302047c435bb500673065023100ca29578fede96ffa9ec8ef6a222291045768472d88bbd1a70bb8267962ccf4868ea464b4d35d47eb0cb2904f5d08976002301bc2783ae6a096dadac01f8563231331d3488771549e418d4fda621d1445bb9463ac744cf49e1c298f2c61307dfdd7d20302047c435bb50066306402307ac85c6ab120d462d139c79149b4e68a3528bf22b6418dd3b175201131f58a1734e25bdab80e22ce7b4be30bb6cf4ff1023070445b31ee14dcacd93517b0a1007e5cf659b531a94e4169e46d1e184b149063afe28aa81b232e69daad34a21a7b51390302047c435bb500673065023100b6e3552ffe4a0ffefdc5d3a6a1690ff846b3c8924385c03fc4a7de365d2447f0b3df873b53c34fecca6251a3cfe18ed60230230e1067ab06765ffcfee74c663f398b75fe4146df5864ed1ba40206c8e12968399db7d2f3c1d2ead64195d060ffdb1d0302047c435bb50066306402302643e0b0c97a934adc2094e42e42f74aff11a2a1941133df556fc836ebf91912561d9f0064029df13bf152ee6075e33402300839c66f36ec7f8aa7f5dd1f45ce820453845498da012d29ed8d50d348e23ce0ab5d8aaee6d1594b2c248537762af64a0302047c435bb50068306602310092d4b5bae7b89e15f0834d28290c7d7535549e54eeee2691e899dc8780608bc6a66f9e925beaf1feaf7ff6ab21f7c76702310080d1a1d6cf62b7c182cd48a42e47b9355a22f708f41c7b942dad55d948f9d3a45d4f6d520fd25f9589c80c3af93642e10302047c435bb500673065023066426f2b546265658bcf027c764ce4167725b251b52c761ae5ebc3f953e3c363b0a44c169f82e8d2a42fc3704b99b9b7023100e6c0626ee313826004a266c5b534f8f0d05594df9787a35b5108fdc6442d296aae65541afc45b23174343ea3aab79bc90302047c435bb500683066023100f9ccd8516ae07dc63341f4eee09cba913502bbbea200bb4c8cae9c441ad4699812a8b1cabfc1aa58f3bf79239287d632023100eba40a6bedfa13e1e88d2fb1a8ca1fe02010f63338e92afb957b0ef2292b23269d801ee5667f099b2e9d31227713c1360302047c435bb500683066023100e6296eb43be05d066e80ac427321846fe0d97370eb54ba11a0e3ab22a1460a912b53a0ec6c2d747eb2201cd714510c12023100ad633702356fd8067eb45425309693306c4b04fdbbfd14efe6621c963e9bdca627307d3773e4708b72b93588ed8a0f0e0302047c435bb500683066023100ee973d4cf5c60b3724de9766b7fa893ef00de09d922d4a868692673b2409ae6c8c262c6581da7e935f2140ee54954d4a02310083455123a8a62563bca7796f55f924e05622448d43ec050ce08deb9ef6f19e4010bb2347bb210461e2c4be66b5f522700302047c435bb500673065023065a32370699ed18156986cb358bc3b2eeeb11b3ee7c814e42f29c332c13c774b3e2860321a52f1d3bcbfd4bd404474190231008a09f082fdbae9ee2808294e941bce18fc4e66fcf049e71a1c856f6291fec32b5c18e5da10fceaa9cbe8e12e86a7ca730302047c435bb50067306502307d7b21ec8b5097011e8622f08e060ed3d79715666b36fa98cb0f3133bf7432997e6b8fde25d867f500cc846c670fc4ca023100dbb4e6df722ed5e448d3a4505e1d5769899e898f38da344e645fa73c1efdff5bb838448c3b9a4f19ed448ee146ede4a20302047c435bb50067306502304d497bcf5396a95f5284685bcd31b64569a59334482c9e44d5b3498214c898503cc36ab716430804bd168d413ec063cf023100f8f52bc83f933a8e56f1f53e210620e1be39c7bf4a21a29788d65907ce7ecf7d0cfc93c492166625e54a429c02c26a510302047c435bb50066306402304f8dcafde607504f909248ac5d961db3b8943c953fcab205c286643e52919e51880a5d2d7e7bc6e61fd693254581261b0230439a175cebee6d88bf35bfc867bbbd730c93df0bbb128540f5131660df1d26136eaecf0cc170cfcf45ca270c77417eab0302047c435bb50066306402307f976a504312f9a20f7b610608d529bc0a5c678417c6fc8c22c1ee032ad6c3e71a7fca37a2e2801ba9331df61728012b02306a32bf0ceb71a1a7dda319aca95b16c11974b2994bb0e571a0dffc0c3faad4f30a9afa5513e2ed1349571b0e97a3f04c0302047c435bb50067306502305ebcc4e49d5ec62cc5b63f45786527aff145ae374abc7208557344cd8e0794cd2b35641fb2a2b49c965594dbb8c514bd023100e2b334910a38adf27ef2d8bb4a99f914956695bb666a0b6a0faf897f6314d351ba116548a736d98d337109b57c8e938b0302047c435bb500673065023037675a5165622089c66d54699baa9b197922d98ae07ac5f536e5a018eb8603376441a6f829769dc892be4cd41584db8e023100a7d4b7f3c4ad67e82a20131ae800dc9b98750ada74a98846aefa20e0544b3e85a37a91896e30c17f1dd99f49cb578a840302047c435bb50066306402303bd9a50750fcaeaed8724d73fc403e29e1184aceb50a96265c4ab9dec93ddddb692259435ffa5922aa3bfb989de5efec0230707df937b7f6e8b8b396befe378c5dd88fb5afa229ac39aff555646032f573904cd1075cad17e34954e276683a1e0a910302047c435bb500683066023100c74faa13bdaedc89ee1f8aa275a97318f9a47cde107b4d0115cfa171e75b4228addc9adacb38ebadef71b973db11af94023100e643a547ddeec498d9e0e117aac92456de2e68088492f61444d204aeb3b907649c8143200f24e7664a00aaf321e2c0cd0302047c435bb500673065023100d1554195288c224088b50d963241ce177dc01f7cef08ec086c412e6b7e44d410cc76dcd27bf7faa2576720515c8ed7bb0230477501249ea8dec2d373f2f577cee316f0b2e2aa8d68c1cbd072c0c4be8d7d33289fb9b34a716f27d63b07086f28d4a30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023034f0e0122744125e70756a5e71137ea1717cdaf7526d71f9b7604ef9c987592aa475cfa0f7860bab85dcb06e411a6f60023100b0bd2685036f7ab4ca96d437f8b40b63f215e2ad80e53e5786c1adefa2c4c75e83920c0e89c98762b5041d899db460e30302047c435bb500673065023100a82ab9eb48e9ef1d41b771aedba41f610c7c11bf083c31da4aee62ea86922b7426e04e0cd2287530a55183bddd8ef177023073a6a94d423338fe1ae529e15d218a17e493268597eec31fa83b91745ec0dc52a1b566fc48da966125069afed1f9a3d70302047c435bb500683066023100c175fb7fe67d7fb4895914920da1f6f9ab2cd73f942357b643d3b3094b0d50336debdbabe850f9172e81af69cf6c0ad2023100b5f6ccab7fa2d716153f4c5156f2708968bf0d733c6994dddc038f5ca97a508827b073c1ce2ec157b54a82333d51164d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300a080d06be27cb0e746c8a618e32f2df0db884b4f534f3d82eb1da4c11dd0c8a5dab47d4445a44ae7d52632e007303c8023100a6e7704cd19ae5f8742c0af5c4b6eb6ad1c1aa609506a3878d8e7f1e3d32dea79ea44188c623000ac9972008a75c5ca20302047c435bb50068306602310098e305e08bdd74d3bb2ff887af170400701b60886540d2ef0d0da224375bdc7d4b8d875e5ef87d76c73ec448bbb3981f023100eb23820a64ec316d98de486cd832834db56bb553a7cb42580b4429bba65edd708467bb2ad9d9fb0ecb24769f26b1bc1e0302047c435bb500673065023100b46f448059c046dfa0540b4e976d145002779a741e4c298fbd4efae49cc0537c18c8e659a9fc39a9694bedfc3216a65d02307a612a8d3e179c61d56d9e613f8eb4bfad26903d41fb2947bd08e0e50bb2a3782e39e0f8deef5a48abdd58aa4b6e669a0302047c435bb5006730650231009864993993d78ff784afd46203743badbf85f02aea3ec4105569bdb76033e9ec94d7237d218d4ce6cf139c3d232c8104023046088802196b68d69b3cf4fb7facaffbe9f519c05fcc6a30483d4c2e6f39591baa1f0ba3c9eb3283b0f7161cd664b67f0302047c435bb500673065023004f86ae76b665be94889cf7ac6e5be1b075abf03ae3e84d351e7ded594295a5f069b7992e60a453276ae05640071acd5023100bcf270b31127409f393834949f3e58caf17a08da4c1d4e7cb3f3bae30a67b95501e835cceba294a101b12237a339b4b10302047c435bb50068306602310087f5591d3759355c84d6c184892ce9411c1f48c3be12be630471cd1d2fd8728fa138ca68eeefb41597d92a057673090e023100be7ac34da8707a0668d1e3074583af5077d69510152ab13be135cb8fec1d84f2291a02e166336707a42021c8f74d6f1a0302047c435bb50066306402306f98816c823e9cb34de58ffff1b5ca28840ebce996485f1ea2bcdf4ebce618271b4da246dd6692dd65771467b134206a023011d3f212bbf055f1779614b9f4103249c703adf3049f8ea6e94155ef1a3a73cb2ec66b737445fc31c4485a883ba2bd7c0302047c435bb50067306502303450d7201034cf4ac3117e70dbc128063a6ccde1108be4b2c018d622e69740fbaba6e92b0efd245081d7e64c76e1c0c3023100ff96ab94d1c041fdd1d881e03409775957134fa7611b5634c283abcb52af2257325c474ca8620b9d1bf64b458ce8a7110302047c435bb50067306502302a1c101d1f2ec89f70060d4401f8b67f4c247ea267d01c3e1dea59b5eb5ab4406875fd4e59b73eb42fc6a7ac73efeac7023100fd94a23b2580f99241cd082dc46c2f7efe5b7b23aab2d66b0f6eb3df0270cf8473fd3d42dd1f56153855c9f84d1021d70302047c435bb50067306502302ab13b8b1c4a3c29a692f4e2cf9f41e97d1a4a6d97adb6a2db78abc62e61e7e46894f2f7aa5206aded4ab9f4695356fb0231009e7909fc331dd8281c21151a31c86c5208ab4cebfd106330532c151991c1c9bc7064ea03bd9bfd3a90699eceff1d04510302047c435bb500683066023100d3934b7265d9f05935a5f28235535585ccb2f5f27d01f87e9482b3079f9ae216fb95bb79b2a4eddfbc1eccf2437e4a170231009b0289ffa00f11f8d87850228171588040834c5a254649838ac9606b831c8d6ec3603c2411c695f77479733e6ee1a8a60302047c435bb500673065023100a5052c31c0bd462559983905029ecebd992dbff3109d26867e441c9af4f080efe8d44e4ec0981436d1d565c9a070187402303c03c64c5f7250ab301759626aa7c573ed4859de7a287ebf16ed9e6ceae593c4d93996b3a09f2b9ab9ae2823753930210302047c435bb50067306502302e3141675a95fa6097550f9210528d13f32f2432733b0c8f9678475b1cf3f91f1d0a7d848967a74a0a5ce84b51629a46023100912c1fcaca2df9b283d19deb1c0d36152c38ae41a09ba35d6e3d608819d985e468813154c8cd75c035ff6f18b5049c810302047c435bb500673065023100df7d3dea622baf6341c1b6e4f7042add2eb7d2a51a14a623a013535d75a2f4d24d8ef9ce3752acf8647a292f428c53ac02304629162d132d495796e1f2a4c8b5f4521d925c128e0c6f30046f27486c1bf83aa7fde40465cb1befecece0652554de4b0302047c435bb500673065023009b157793b10837ca0d55895544e1671b60f2aa41750037cfbc8d6634fee12f323ce67e7a635708e25b92e2e8d866815023100a537c5a23134109cf865047039f5940c3507e2204bbaad26666401211bcc7da4f3d2f93e5f9b42429c1b9b2b94b3d4ff0302047c435bb50067306502302fd7bf3e67041fef0f88b65ae26c45ecf6dc956d8b4b6f4da4d27bfbbf32c44fcccf90be553c685a66307f64586527c40231009f967400e715baa406d29e348a87737175e35c7e08250d56810ed7ccb93fd8f3def1b5bf295e796a0824297255acd4240302047c435bb500683066023100f2576c695e7d677baed898827395958b30ef1b004d6481899fee85788cb6ff26a645829df5c1fc0900a28e9352da84df0231009c6540ac82d2ec2c13c50aeef16237772a5b6820c4185683f7d1c64f2291e427b9ab15f0393ed99ba15d87f1d8bcdbf60302047c435bb500673065023100d9556842f9c56a10736023c95ad3975e63ee0cb8fa1080fa95bd249f75887a54954724d1f38e0ef929fbe13b137b3bce023005f86a9cce6ac9afca97a6a3af8fbb3476f579bcaa5c03012fbaaab4b1ce7d1a41e0535f7f73236027c2f38759d79a600302047c435bb50066306402304e3575e649a8dfe6e7b9bce2c8dc29b90298fad2ea5748f69ab11d42d89413aa24d2f2738f0ec3947fa5723dc8b11da8023069bbdb9231fc13c72c2adb73f85c7836c88fd87221ef5d43de929a72e253b5761652e401c378a7904859ca9aa0de369b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009de8a96a39740cb0ec6a8f4a595116b9e9803bfbf2144b3d50c96a1b4f3de55710fb3be343113f1396dcfca1b0312a41023100ac9a496efeac901752b237fa72f81fc738bc463192bb3b5eb74e7a919907ac4ca3f9fe109433a025042f99506c80aa1b0302047c435bb50066306402307b8cdd9974bbbedf71d413373918b0775b32bc739a6b9f359fabc09e278f08ed9a63ffb46bd6565736b7b3880374a73202301172fc8fd084bf893561cd1de90bac1bc4801cee84d57334a6f630c1bb065268ac7a8a91fcccaf6dd02a143f48df51ef0302047c435bb500673065023033289a1cec221cd62a333f0485dfd11fc1bd1d18b2465d65f3636d000f2f38a18ec92a9c9e012986cd21c717afc19a84023100c31dc85f0a2f36d191dae69b9c954baeb1c98592568caa6224a65cc46bbe36d1f8e931ec73dfce8d7ae8170a3907c3d90302047c435bb50067306502304c41286e9108f0386ce1e9de288732062187d8f3e7cf168e04df902d5927cbd8359a5dc6df1072b6dc694736ab58635a023100a71809cd5bba97bed7738977a3ef092da3edb1a2abd41e3ff1c9c937a1ac0750073ac011b15b20d6320bd083a5d7d9240302047c435bb500673065023100e745ec2f40cc8f665cbd48dc083fb07776a417cb76fb2a0585cc9e4e575d13de7bd0223fe35c7b4c06384b8f7fe0ca4b02301ce2bc1fb1a54abf16101584cad160eead70c727f6faa369fdb864dfa72797136f754ae0405d422098e2e7eb09c2053b0302047c435bb500683066023100efdea9dbf8e6f1f2a28dcb0f50b13f50fdc0c81b67711c75a9575752fffae7509c44d30833cbd117b125b7f5be11b524023100eb68f926af51a3130033f1187bb267dc46745db41a5750b98694ccf8b07b9ea5603adf9cdf06836c42811f6be7c538e70302047c435bb50066306402300ad692ac11eaf7367ea39c31f53c7d0d9c6881a0a84b4d376df4e613d9f237c3e8c589b202b2b39e1c453a0f756f2dc6023008ca1da90d907aaea5c0d70cd14f4cac7a540384801427aff595176fa05360cc9e9dd36130a39eaa2da9dbdb28abade30302047c435bb50067306502301c02d7ae0dc1f337a6d60596035d0429446d6dcc3520c590f7adb96a1fe4e3f57e79884f25bb3d8606cbeab01f3f2746023100e765541eba31605db631da89d6e01a416fd664f3b7603862a9ba12ea03da740c9d4400e8fa1cadfabe2e6ba2d6cba2f50302047c435bb500673065023100839fa77d493f8cf2d8bab2a2ba99a81c31a70eb979d63399c0b9f467437690025063dc12effc3dd594d4c0ef792ffc510230093bfc9fa85d2c79394dcb54f1195a76b553905866cb0bff2dcf700a69f7e386d57ce0501c774cb4e781d6efca2d750f0302047c435bb500673065023100ae7fd5a3c0e2042d1e20e4faf073603d5c2844744092eb2e3a7065e71bd6963a89588b7b532463ab8e81cf3b081c52e5023045999f1e182628b68a1db7e12d11013a9296ec4c7b574b7acbae5ef8d53eeec1313163ba93796513caa78ab12c817b720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c23cdb765dc8708f124dc6b1dfe709311e0aab729bc7a1129e5b2168e60bf52aa019345d48bf6b734d65b3b08934add502303a2d8ac4f50b6f2c0cae0b57fc5cd81bacc6973066d54eb291dda9deea310e1b509b74f6cac816090e0673c9812330440302047c435bb50067306502301a3c748e25d10ef7aca4c43d41994985a68fc48998efe12f36c7e0489e1f97cf991aadee001480d62b87a71526c32c84023100e237002ffe1210c77b0e6d77136c32accee01a28c86c2e993ffd9180ed4b3085a387ce991d4b49706c4ad7d7ed0f1c530302047c435bb500683066023100aa65c35c244210afa2bbdd8bea500a4cb627ddb006a0c822bb3c7827927212f256467047d7f1ae50522699b5eba74cc9023100f56a4ef1846a634bf193045061b3cb8b9fa4635c879065f5ade8b6364b444e04db3abe50fa2fe8cbacdf9cf8ad418f4e0302047c435bb500683066023100e56c3de089cab9e407af93859c4ebebea6c26957e1aa419893b7326df8cc080be6a8b3527d72f51bbe6f749be6c89862023100bd038e1e4764f5eab53bcbb57bdd56d10aa98d1965e8f30219c6ba30320a7d8acda92d023fbdaa8ddeeb38744fc2daba0302047c435bb50066306402302c8c42c5a99f6a78a82b5ce611396b17e795bb4b1d4768e0931b6278cd0264c07af02b1054cca0d2922a5091906a85c5023061b2a2fe149e958c1ba669c7f5051082d650276e654a7775bda7bf2dfc8ae24b83f6cc2c5cec03420453c5d7a08f55e70302047c435bb500673065023030602bbf66e1585d3b1c1fac3167f0295ebc2d03bbf86ad5da8596aa2f6b8300276e5e9f30f3dd0784518c719c954d8102310096e06480b17f9870de4b7198afac4c3a6ec9ba2367bf913cd7989a9e2ec158b52726c53e06570cd141c510ae2ba03cd80302047c435bb500673065023043b5dd0c786752fe08187500af27a804f838c5b8317169c003e9179f48681868f8fbfa88cbd23f1313728d92a68b914d023100a641e639aed81dc4cccddbea57ad179781f9c235a7781a813a77236570686ae1bf7b39f896ff7cce5ee874ff1814f7670302047c435bb500673065023100ff32fec919e585240ae19a97eec80436d8029d00abf3ce711b832853f39f35e89d01f58243c5575d468af5461051440e02304820828759c600ffb0eebc896c514fbc64c21c97cfcb63159e941c9ef1b976a897c6aa0f600788d1af85e792fe8ecb0d0302047c435bb50067306502306731f29c146706172bbcf8da24734801655e60907c71f0b27b0d7eb58026a2b1b40164545f139aeca3c89d9962cd3c8e023100db0936a45f0234bbcaa5fcc02660056d0a9e2aa1d665429eb88f727f6b1c3a38e1e7e2ad799002bc007387b743c944250302047c435bb50067306502301a7cf643938de089cb408149cb8296a9dea4075d4625fa059103936ef282f727dd001aecb9ef0d100b0b343e38ec311902310097b81fd8f099de1ff553f49292d7a8dfa4becbcd2458c3e5b644337e32116abf4ad4615e47709723ff5412adafa850100302047c435bb500663064023032638a5356b3c176950e1a4a10ae2c49e2a47aed02c4839ec7753ba3727739e4b1eda317a040a7d20aa4b72efb1cbd000230699724843294a6933b3a4b84f560e6b0040840ffc099006ae6527b5e90899fbaa367593fe59e836b5661323f7d56fcdd0302047c435bb5006730650230440824fb6e407a554796c1057280ce9376221097343f59bb237ee948db6396490a123230134f092fa2364ca0f647724b023100df8f686b987b5245bae5281d13eb7f9d876854f918d43c4eca219313c0c3fe52ef3016d5d915bd83ea3f02afd3d0f1060302047c435bb50067306502306bf2f2cea34e2d06277abb89cf1ddb9e1dfdd502f24758a7f56132e0bfefe6e2413153c222648aa1df513f54e21002ad023100d970277faa99fdc40585b1a6efe4e72e2f7638a297f106e925b9852590384e9a9d6b0bfdc1a57c901795897ef5e2eb950302047c435bb500673065023023b7da5d576099dfdbb03702286e90e271e6761252d4c73f0e3935c2cbe0eeaeed7d8a1d9feff9c7a110cb86e823c315023100e822daa4529ca7a65fb091a7d93602dc03ce4d3ace82fc5da1a9185fb33fb2417c3f0d3b95e44d31e90a84ae9a3c090e0302047c435bb500673065023063491e7aa47ec40f7149db96e716832ad7457967abccfa2604cde7173b81d68dde6ede719afc32f61ba3d5b1f7934171023100e681b6702a4aa968f2f0c56487c1b054db3ea2e69b27946bdb1e9c6af1510c98637bfaaa18500cdc9509129bdbc78c010302047c435bb50067306502306cce6b27134bcc253dec2b561c847127f1dfcfbf8a51ada2d46abc3252902e96f164470cc8d82288582ac0f5b04919590231008852c8088cb6efa2ac6627bc13ec1d7cb99656253ca2138855ab5aff09f25b714e22359a32622c7e3da26048de45dc770302047c435bb50067306502303fc5dc722979462bd76837fca65ce1f5d6bc190050cb38915378de27dd6bf05ef20d0f38d088680ef7e49704586dc169023100c79efdade8b0d565e2c4ab5aa203d97c2e9ca55b99639ed9f2a5e4b36e9fb4a523542de54df26d7e0bc0913d0ae2ff9c0302047c435bb50067306502302f611a08f5ec547d448cb226d2ebbcaa586be2a4e143b14f9aa31ee3b7b11b81c5b0c0ef709a4e61273238bd8987044e023100a83b52f3675c691a702c5658ebd051bd290fa00361094c63ac10776c7c53dd8c6a1e98809a4456c3914fee72507f599f0302047c435bb500673065023100b2b190001bb99f16431dd15fdd213fda1b994651fd954c3548bacbbb8ca936a42177adfc9ed5f21e4da2fcb0b0ebded7023021c4989a514e9fda4614f3e21983d2580f85eae445aeea5d689e436d7b78702afea26b307df0d089adcecd946997a64b0302047c435bb500673065023034a229f49a1e9914aace92e16d20a49cdfae66008116f054a37f1ab6a39811a8f2b5a6ed816776c2d3350b5daf8d2971023100fec533abe6bda6f20c987d91ff35a647788a36faa49a1cea1802c0e9435e94bf370114449bf51a16c43f49748afb446b0302047c435bb50066306402303012db0a8e7728598e7d7aa91caa8346e718590c9fd6f0aaef1735394bf3a4fea824fa9c2b337be334083f3e3025be450230490f3f2f5bd84628736bb6a2b2e44e6c584bc748443c06ae494fce0078db5909645671b437d1c2b426cf3154f0edb9450302047c435bb500673065023100cf211de0c4d956854089ed3edcaea5ee91c06572102aff81c00ee452e391e4d98509cf0070884809dd86efa7179d0c1902301dd7672b82fb6e574b21c2f2fa91bfac6c7ecfcab47883f074fcd24c84d540a314ba67010ea65c28b88e056c25aaab8d0302047c435bb500663064023019cc06e7949221d691b28160c8f6931103d0e9ee9515684241f57095c9e0d538f74f13c66731b64a28255b9173746510023078579eafda98ac3e9974c388337bc18cee306afd967b4ebf4911498fb2925bfd0977f1d37e07901cce8e94de35d60e650302047c435bb500663064023009f6676f36f5f61c0453b196d2ffa2f457e4e32cf16a241af778935eee502e3ebe814dbdc8c8d871101ec7d9328600e00230095aae9d2e0954bcd386bfe4d5f3788ab77c57966f69a1e5f72790c6b320458fbf8ab973a40174ed0c7011c6ee448e820302047c435bb500673065023100e9d41395a827abd54ddd5f992bc5f21dbb24bb8e6e541dc65eaf84185eb5d98ece453e43a108d0567c3ed90ce2b98405023064cb7acfdaac36f92cb5d2a0890efbb97cd93efd3f9570aa43f5cd863337171b352cb15cfdb8c3213ff50c373ef7b39f0302047c435bb50066306402307578a8412f92979f60aa0d73771018592d7d51e00c684e98266a86b9ebc4b757e49d9c35b162828db01135b4033a412d023017407fba4588b535141a7ea9d6aad628b31a72f3c973150a5c5bd3c35b38f0917d4136c671625ad95f5785652fa82af60302047c435bb500673065023100dc2a1a5b1dfe1f32ce0cfe38d00b62c7c0dcd2231b56647536eeb2b3b0fd8ca56a3f8779685121146a4432cc638acdf2023039e3fe0e6b2185627fc9547b0db61a945da32bfbc99ffe2ba1bb0aeec47fa6011e91e09b6dbf1148c742cbacab9e533e0302047c435bb500683066023100954a90051c26ad2a17fba5b7c9352fbf76f3b2e4387d503e966f2c6d2fdabb00be6fcae4d7793ee9524c636fe7897134023100fffe382fcbfa057364a386c8e16cdd64b49de5a79e2b47bf04ff57daefed8ae6db52aa7dc0a719aa34a99926f3f34f1a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023027eb94900a61525c6d5685c4dc01ba738b808877dcb744b60e0a04475cf2cd334ca695daf776e00b69129216a4e6f44702302619de84ecc7289646c907fa00cd621b010752e2b12bb26923509f9fa7709fe996ace045ef1458572291e8adfe2fabd30302047c435bb5006730650230203b43223955d8dfe8a430e9e1d981e58409207132bfc88f3b6aa369ee7e16034ee6a6b31506f5b18098f542d4a15c5e023100f75113850404123c9e7158b61f085c97737788afdaf4e4d327a4efde8c82c18148fd6fcd1c4ff47f22c55e5608e5c5ea0302047c435bb500683066023100d01947cf63a43106e5f0dffd16200880481d44126ec8a3a1e192274632a87f8339ad04155202b1484b33ec9993a632ac023100e35b1d46ba2aa4271c6aec8038b4e0d26e200a66528d586d435480e243b4b0443a1da1c4072e3eb7e8fc80ec1719900d0302047c435bb50066306402302d09cb173fc7ad8ef955ef5cb08f8db3412abcc2fcaf47334378787d340bc34a23f8971e7876f268ea7e9c15e2a35a740230524a409ea8f9d2a62ae9ddab08db450294f874753efe067f8ea2e091cc05960780f4f68f141854874b1f62f9616d435e0302047c435bb500683066023100add2b66072166592930aeaf8e4cb6f6517cd5253dd1f245fb3c4e51bbc32442d438a50773881000639417453d96cbc8d023100edde951dbf7ab1114ad6c22221a9e433c509d780aa71ebdad2624e0a0a2b41bb7f3d317a524f388ff168ac44a20bac340302047c435bb5006630640230104ce2809f9ebf05d922cd181dd1cfffc50a304ce684856c729b91dfeac7b74e697c876f435310f7c1d53846c40cbc4a02302b96c45d7281a0a808c0a933dbe64f444f1aa12291843a89fbf79aa51d9dd930e37aeb62a65dfd743edf10c5512fceda0302047c435bb5006730650231008ec32cd30a4a70b3eb7b7008f99b8c012f02e07686977e2a7cff39c9290588c6951b027a18c9ed0352afa84a04cfed4202304e45b9195fd0dabe31d29cff513e34e3fab19115e03d157fdc872beb5563fcb21041763f9441413dff8305c3f56551cd0302047c435bb5006630640230176343b403dc74208762b90bf73c02c13f3786e4fc95042866caec83d290a9b6f3ca064d204b5cb23aade9a4ff2109f602300ad9e8b35e1b4f2fee93138a65aafb2617fa7a0de2e0f6136448f5ef3423a5bb5a275eee79247cf86e253f1ad5ab2bd70302047c435bb500683066023100a7079e2c5265e2d45220bed32516d391df72dd32291b62f459cb879ab58e8ebcdfecfd0ec4c9efda99d43bd9ebd6668802310082002d43f6b743898e3821a92e7a0d61f4f930cc4b56d48024cdda311cf2505b1b01b2a470ecbea9bfe73279e8cd008d0302047c435bb500673065023100be654fdaf48ad22f1219535a67e55a4a1c2110064ee8dd4d23f5c9e053babf2065e090245e2177a2ddc23238285ae05b023016c5137c687794c9e9ff9db16f5d5f34add5b3f5363d9fa55bfe897e9b693e025daf9e2b60d872a74aab6660be6eb13c0302047c435bb50067306502307c717b49597e062ebbeb133e2222e0ce0185acd47958fbaa3763a97c17ff6d6ac2cee32fa01a92b7b4d5363af61350ed023100c46246aa6d06f9cd59b3b89b939d06900838a1acd9ba11456e8ceb98eabacf6173060242b1f0943604b5c6ddf81ff56f0302047c435bb50067306502301ea707546a1a880adbeefd7343fab1e7d3078eb71d827aff79ac7358db0a55dc29317daa983262c718ae9b71057c9b72023100f779ba109d41ea00a0fec4df9050fa4933e76d2d05e58016245583a673ddba06e03fe1bfed22ed406ab525dbb8b2c3fe0302047c435bb500673065023100d4262373878d85501b86abd9ce9130af0fa68432cbd14871a24b341f1ed6033081638da3be73c5d90e5a1587de29576b0230227e233816bb8f2eb96a3649e311881f9e57d9c207fd93b2d54783a150f4f8a0e889b76688299ef4aa7a80d405e1ffa00302047c435bb5006630640230615ec0ff8d027ffcd14dfe0fb0c546b51ebac0ce81214a0b84954a9eb40c39e31a14ffb4134e29809d0d97ec4e88a73e02302fa84349a9a1890c64e9c1828a9badb778f476a75bdbe2c13feaa75e0a562ca5b25c98d6024d96e4b52af1c2841d14800302047c435bb50066306402300b528538f357c010330eda52e96feedeeb2729bbad0e30dd78fa96b69eab8bd2d8afc3f931c3eb55b6923409439994ee02301b803e84cac2bfde2b6bdb76926b5ebc823edd42e01b5a53097fc53de503d05c9714094c6a5a978423b0bc84060606980302047c435bb500683066023100bc0642f0eccc54dc44056044c8e8aafdfda75952ba96fd0b15970406181ad187ffc9ee14f2564d5f3b65b28b9daf8af5023100cbd44d6df5693b33b9f9182503693dd400179b99fcebd0cc54f35844f7c4e55e8cf08b93c0104ae18059211b08cbe0fd0302047c435bb5006630640230533b2c290623c4833348d0548f482116ec8ea3043e41b7c9ea156df1de60f61169f868510bd669ef2ea279114e785ce5023051fb6245e07e1b43f2ea8e36898951d8f65d66c0d6100b9724a66c55066e4bd0385ee251944ef17015f9aa29e8a61d5d0302047c435bb50066306402301cd2da258144809e93fd568295ca67c3fbc5df83bc7aba71c89a32fe73226da0556c7b7b3715874a05b11396c65ef1fd02307d70d91c33a85e9d533d58254ba39310f5337c0f65db18faa28c1472fbed2575bd4f98b67d33aa94eac62832366d2e4e0302047c435bb50067306502305d6d98de260ce4d277a1dda71cf237459c294ff62faa00dee080a5cb60d0475e0210a392f617d4e77033f13aada23fd6023100c0173468582cfb1eb648d734fbff3aa198d34c3789f64c81b14d2258a0b5014672eace46a0ae6f3557e58ef5a61866aa0302047c435bb500673065023100ab2823b6538f4335a2cd730526f253c98fc7239697de3846280c462d6c2284f8591c5dafd154c8019082c91f51fc5c9702300719d017e6638914f22f47ab2461f43293093fe4bcac7bdca1decc9c0a9c7c7411b67595497072deb68edd301846db450302047c435bb50066306402303aa118ca53b5f45c2e2a6798bbbab464e34d45ef241522e6f10a1a75a203969a3e3ef28ce8559a00c0621c27bfc8194d02301f10a96def2629f74a631c5d7c5b25504134a614e59f7dafa4ed532d4c0f510d7ed84c96a0eefaba842e51e2ec642f870302047c435bb50067306502302649c38ac6d462ba8c6105099150c2b508d710d0852a911bedcca094cab4524686113769ac1ce1686da9b4a638f4e3cc023100f48f441e5a37ef340116c9051e3993c63b321e3196cb7a91974eab0a595ec81ca85b4d7922bea2cbcd125f0717b52f7d0302047c435bb50066306402304a7625f7be4d828ffdee8b4bf6e77857fe641be136d513e82cc969a763a4d5069e873cbac6a8afe4eef0b1cd98188b6b023008782f5b89da470e45020a1555477a9268f2a01ea985375e4653f1a77d9c8e6ca8c74f1c3fee2df00618405c93624e330302047c435bb500673065023100a0c4fef1af5ee6fb950edae170cc490d34d968871326000ec72012f1e08cb8f15132158115279f6955342d2331301e5902300642d8521d5a1b1b049bad8ecf633c21de3fd69741011ded5467aa3313bab82b7329c06e21a54129274be9d536b440800302047c435bb500683066023100d838b0b5116c42b5ee326e05d224877bce15b1a106588ec6f4fee47d61494969ec0c495318c1c5f9edb752a43bb037dc023100cce749e8e540b87dc9e383896b97d76bbafff660abb10218f968d7408c910dc13a531bf0d72359b8faceb3f8ba86be5c0302047c435bb50067306502310093e2f2a8abfa7cb676e80034efe574454ba804e8b172fed3537d32d172ee6ce034c1fa63f3a714b4cfed13a1aec7ed0702304cd5dc9e425dcf79a8af990f57d20a8ef6c103089ee7889d6c768e524f685c4d0dd608180a9a47169b1dc9bdd45c038e0302047c435bb50067306502310080c40b11b9f700c9dbf84d8b3ee68d23a8b5d4bd5fe51ad6d2dd6f380b72efa394f2a8ff95d16870fd0eb11c9ca39ecb02301de50f8556ac2be1fbe48d4fcca288cedf4c377c1adb89a6bcdf6741a70f76599400f32671ac883775fb18d83f568d860302047c435bb50067306502307a4549d598d5db4a8050885adefd56757db752fc7e6f4cc0c4499dbd49d56cfa88dd1780a7d0bcfe0034637e3dbf7b3e023100d7eb389605b5c9ad3945e8fae68832aac81f983b3cc5e5e7a65272a982ab3dc5c2f51877475df7948230b8b682a5684a0302047c435bb5006630640230671a20a81c07ae60845c32cfee304fa3382a563d5c28728185c0a69c5151236afee708f9fb7ab980cfb8b14e043583aa023060ab066a1f59d234cd12e7bdb9d68ec5d91c2552f5ce6c53a686204af3c4e8e4ff4fd5073614f90a508b8f714d8e774e0302047c435bb500663064023066f076282527549bf7783736046c19641bfb93f038580870b434179edada3dfa35b42012bd8ddaca3467c294b2ac175902301afcd59d4bceadd51d47d7bc1853f4ceaaf6789c9c1a378bd9f46a845ef9de8c462516bb1bcfcdc2f4b7b518739d95e20302047c435bb50068306602310096a111ca67555de5218a11faf595899b301e38d7d42b89f5ef71f1bb5ad4222d4bd0e928f4a49fe89374ab1004a5815e023100b9341fc7e8e4ca44d2baa04eb24159f7725a1e5df9cd9d3a5a7c71750e64db295763a34090a3f58f842f14905263d18f0302047c435bb500673065023100b40adfc5834d9ddccae1e9a67c2e79f614234187ba7da6c1a20f220febf73a159a8e3d34b75ceb1d99e12b83da3934b1023076d6ddf4692b4e29b666125d1a5f1648ae6d062ad29f7bcc98451a97c13125c1c7a882fc21282a9eba13276d207ac3a70302047c435bb500673065023100c2f04753274a98dcb68a2fc9726f5b4ba9863e23b22ecd7f70e4b94bb5c49da85e9109cf0c79c449f9663f94742c0cb002303717cb71c19151abd68de32359a43030ca56ccd77ab53caddc9d3f72ae29e8a63391c4a8eec095927b98748a735de9a20302047c435bb500673065023100ac79ade29310569dc06a9778ab205946d1b8ba86584493c49e460bcc8186f596943b9efb1e66364bdbae20db8234df66023042fe8f06f854c1add20d0369cf928e9cd1f63558273fa95e5b58c51fbfe414ad93dc9238666daf4f0ffeea891e0c19f10302047c435bb500673065023100bfc2be4c0cc0f7a15fcb97c5d6bd7293095e11269145b62e186f7df3463f8d27569d76c804f235905f19d8f9299bf3dd023020c6d2b0bf99d81b5d079728804edd74215f7d07f423cea699689f0b5b1a51a30dfd26e0f53a6cff4c86e846646dce5a0302047c435bb50067306502301f963a92403a4ba4aa3b2bbdf7eb57dd1e3d20564b0fa232c5c06828380f1d92308031c5648b5cb2e5c417d4a5b44d64023100afe76ca1986abe42e97c9fee2be006939c4bae1dd73e96ce6a17bf39794f05ba3be61b9342341112920820ff3dca0e580302047c435bb500673065023100bf377ee68954ba481218609413b33f83e15282659e9c0754e6bbf30d2d6222a384173f2d1e1ffe84f85f71b3263d838d0230296fc149a38d1642838bcc36a5c8ed8c978322fc0e35abf23a1176453195353025a09829deea15e4f1a1600b247e13490302047c435bb500663064023059fc927a1928a837d26fc4b39a5af2cb00afee6d9544ae17dbc722bf0d17f9d7974c04e20b28fd2fc8989d774787cf0e0230143d1f577516faf04b6a951bbb66c957af8f7af61fa3ddd40c6b75033ec5c64efac62cbf57c855cce1ea0458924568de0302047c435bb500683066023100f7d2b99812096b8d5f0174ea8e72ffb0cf2ab1537c059b1c8c333b45b0892b5de65ff88ac3f4325f65b153995e6824520231009ad847860e27c7b4b3a2c367c0d46da225085e6a3e206d5e1ba456dee2b51ee652fa02731ea82eb082e4be9d96b8d9810302047c435bb5006730650230444f68443ca17daf81eea67c83a226bad950fb5f5d5673a86cc15df91ca20b76999ce7d2c854383bb6c4644a3f0a1bb9023100bb8750ab63e1d6ad3cac0909cc6bddd60b291e39861cda7e81fec968dc1fa60a3c8104c3de693dbf43d6a33d6b297e140302047c435bb500683066023100f8b66d3814b547dc72fe6ca6e14699469c643a0ae292a5502527424d3ecd29115438cf316655a66e0e649adbe5adcb1002310087d469692c0bad0bf5207711d50561b0463c01b7dee251ef23271bbe5104dbf6d1a83d61d7a09dfea3ddaac4bfb6d33a0302047c435bb500663064023072ee9f42d9843b9a2635117e93683b8561c78f1839e0ba044c20c1631e9042e16e7fb310de7ca50364063c26901134a0023042b5b86121963867787db7464b4d92e480c39e7d3d21f4f94f57abed36b7931eaed75c4b28b7acf57da786e12dd438b30302047c435bb500673065023100c7cb5b71b7387a0a0f72631461d959a764cf6ea67534533f08dba77eacb3fe0f5028b774a376035558206e294b3d6a0802307aafbd27f298c2e320d8c8c8989968b36460f748270124d50f427d70fda2117e0a47f111e4ce48bfd360a51af4ebaf2a0302047c435bb50067306502310096ec6d09dfc1a678cedb9165077901a2c876c051fc673f661a0104a1c7fdc973113c32727109d8b954153bd7381d2961023042189b4064e1a1fe7683eb51b28907d08613bea3385b7bd8972a14351c982ea3378fe11cfd4d4726b870c8f5107d1c410302047c435bb500673065023039b2115188747bd2cb534adbec993358d54267a196368e2f2f4c782da1ed69d22291817ae776706354b9c84d252c279302310082da4bb1d0b41ac76233023520ac911da1c6382f2594cafbc14b9aa05621f898f8b2d086a95dc7233c59237670a2777b0302047c435bb5006730650231008b781d1f48e1d283f7d28ae0d918a069700299dba41443dec073be84eb2cae4959b36006f4401a2bedb125ab813e8ac90230371dbbdd3061cdae217a91237eca377bb7a06805e58c732b7d321eac86d39b8407a3990eedc19f898df50c084b5476480302047c435bb500683066023100ce9f3046e1081161b760d073c617bf909a14bd9c48481bca11dbd1c7873b0da4644072aa1ad87467d9a8b71ff0ed0ac9023100dcfa63751ec7e81b7b29c63fccb350de462c5a3a2b14a9ef20167fada023602da888d61d27041d64b7b88d0ca74c82bf0302047c435bb500663064023007adf0debe21b061723e1b569bf86232b31165f58f1900d34c38409d9ae99bb8f33b7b6c0ec3786b8260e03b3a5a282b0230121cf85c527eb03111e73550b181980993a261693d69b0d29f4ee309ecdbd3a47105afca1b06d29aae3f3d027cce83870302047c435bb500673065023043af06af3ab3047b183a98eaa80c127a5f36af048146e1beb343c9b3bf3c3d47f59f6f116ca2c14e4e330018111b24ed023100b45c520d5712943eb37a2ae96a5a8fae367337750606338eea415b8e336edfb5c454660a03df6d9be259634077d3ed1b0302047c435bb500663064023058dd632249af4e484d42c848246bcfe4c41c602d789156ba9ab55cb1056d5d8e5b38daf3407588f80770dad804854b2c02305f1fb546c4983c0dcc6732b8ea8e2d73943b007daa327c9c4d5c9719f2676cb92326145e5f13826605fa9b2131aef0990302047c435bb500683066023100a296dc8a329a0ed7c853fe2f0a9172cf2eb511c5721ce61656dcb0bc6612944b9b32780ef1a34053daefbf3551f6aa89023100ceb2b8162a776d1aa76facbdf352e784e7498e1e9fb9503d34e1dfa8586c12d257b1bc520b73c80efed24f9242b67e910302047c435bb500673065023100abe9f7366438f1b0a9d0efd8b40433dd14a0edc130872d2534dc27d20defd1ecbb86c3acb5ca23e965a5dab8bb88bb5402306f9a5bec88eb3ddfbb1ff901aff3abdba76cdbc76dfb8d0e11f0a8064d8d5c0a835d10a77d39b5dcbf1b9f65a1afd5a80302047c435bb5006730650230797303b7df6e92cf131da9c48216946e892506b8a5d760f4277c7bf5a1277d0746bef20b590c7338e621adb12eb6cb44023100bb8a3927bf994127bc9e91df8cd4577427b7e3fdb26bc6d82ce9e22fc87250db272a054160ba139d513a8d099a6bbd050302047c435bb50066306402301b98c0975def788336906bd4d18bbe3c148854927a3d0aa161ef232124981bb097e1c9489f98c5a7fb0cf76488f082f302306b909fdca5e5500e0ae8e5d84f709c470f8cc6863ef8619c578ac471329685ed7c73bf98546ee6ee240dca314cc1c7cf0302047c435bb5006830660231009bc8b629790e4a915a5a60596f726aaaf4e52450b36616f4f95bdbcd5a433bb6013703573df8250db0192d811977ccbf023100e4f505e2f1cd29a449523aff360d9628f2dc0d18c4964cba6268aa9a4511aef75b07085ba1d5b2e698bf6309a6b290050302047c435bb500683066023100bd2f888673213cb93a21f3a4fe92cbf00b497fc26d03d86ba351b945d2c886b9f7b5251f5360c87efe8182a201503e08023100fa4ab08c1e16e463474358dbbfd823421ad72afd927e9c6e81e4468493a747f7f43daad72f541a5c477d372d0f4b4d8b0302047c435bb5006730650231008a607c7a1b08575e86a64853701d7e90f4193c584fcb8777fdcd039babdb769bbcc513b0d9d1e0b0a737f0bbd5322014023012498068f5bd03ec40aea03f52af8e6cb2d9b645592804078a7441dc35f45d2745e0e454cf31fa0f4d9c006dd77fa1a80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008deb7b0cd034d801ef84bd78006ef5369f64e9048fcac376ff78c0d45d88fcfb50ee097ad2234d865da8cf8e1c708043023100febbd27cfbe6d63aaee244aa46d1663cf0e5a7b250e0b866c01f82e8c9302c55c7491b5ca3a0d81819f745d71aa3db820302047c435bb5006830660231008d574b081adaa00384f6f2d1879ec109a27e78aa1756c77664893e5d1f483b3614c26fdc270f1f7af59e234f2473516a023100e9bfde697bf199eb80951bd82d19ec959b7bd1f472a1daa17ca87e65e05d9a2c14729e4fcf2d5dc7e3f182b14d660bf90302047c435bb50067306502310094626a0ef65599f41c2d44fe7629c5c2688f1854ba74770959c604d5fe80e31fcbc5e4f70ae302748997018910a7195202306fd0cb0ddb7915a81c7bd28f860289a0cc7ebad4114f4db35382489e29d205ecaa15b57cf47e68077aa6a18829ed215c0302047c435bb5006730650230536d90edf2d474576dc0d6dc92e1acd95bf651d31d10918494ae7ec17ab76c9e6c65b18f96ee40113767a4c8f55376210231009bd539d246ce7b03aecb718b7fa5a91e55774438e710cbe60725a243a33ffbb3ff7b6ff99a47fa9ae9e18de3413d94d30302047c435bb50066306402300f2bad4a4701cc89069952bab41c20260650e88975fde97cd1078565d2922ec020e237299ff7891febb8cb668ea07449023074a3b1226ecb8f31b48151770c2556ee8670fac56f8c7df86ae606cdf459846021d27bfbf6f3bd950e1c4d9a75ebd00c0302047c435bb5006730650230159f169d9691491414065b47c4a7fe29626f2e96ac7143a5fb5efb5bebefbf24aa1c336a6fc2968bc41a594287fd2ce6023100cc84fa65f20de22e65b8c3755e7031bf7281d4b8fffb712063f17f9d41025438696f2f911c1541124218595485ea5da40302047c435bb500683066023100f58991359fec5464a20d06b3a1c1c30f9c46b952a4da929a98f361a0d0b90f73563c4b5b72f9fb0dc69edb5c332bdf03023100a18564100bb38cedc6d5b2e4fdbe816b6a6f280d7a5699d00276795a7a1a02f2ff25844681553802f9466c9c4e0d67640302047c435bb500673065023100974bd0ca99f68d5dbcbc45cad5d757a0d5225be480bfbe2cf891b09d003fe1736b806eafe2f0480c332a81c705d2bc5402303226ac799d2e25b771fb3f3e70d5a0b45ae32ce46bd3feea1d3bb8e280c39e07aa951e9a971ff2bbaadd2442ccb799b70302047c435bb500673065023008727380d8bc2d1793e473de0f8f38c5f26d01c2a4c6d2725d24f5d689d5eb497f6774d99d01276609ecc4e5df90e7c8023100c678961a6bfefc6b3edf9baf15f4f5559b618d7ea206fa11ec8ebfb51d1a7abc653c039e395efc936402ff3a806d3b040302047c435bb500673065023100da022c39a3f1b2e67a3c431856f16913e4a031d9feed41e94d0b25f709908b0913560390f092f0075da1391c5b8739e80230718ff5e45c6c6686a8b74b86f7dc5e5a9ff35b24a7cd83953a3c4e0dbe560a4b0e5455a64000331ff26ad0cb40dd5daa0302047c435bb5006630640230198e35a69aa3515fbdc890951cf0c181383f76b68dc786908973aca4b07637981aa322721896c9996157d8b9ec0d2461023035f4bfadffe862fd9250fdcc7d3b136e198db08299cbcb1f3cc713f83b7abaab713504615a332af1dcfd4e4e83015d650302047c435bb50067306502305810949e0df844988ba91ca53d1a5811ac590f987fed6c3801de7d11ad78d32eaac7b1ef0cff3618dba91c15fefb6aff023100e341ae5766fdddcb497d6c74d71dedc282fe33a1bcca440a176af7fc1193a6d127abde26952f161e58e7f70a7e9bfe1b0302047c435bb500663064023074d2a75e1aadf7fb951e61b0ee3a5c405125a2ba8913a1c30bd0b8cbc402ec94252965d43d0b5476d4335ec87ccf284502304c21e60479482d8478c5ab93b7c09d4bc794f5132a104afce7d25d0a59116f4a85bb1377f956736c578abc49528fcada0302047c435bb500683066023100ba54598298d369e8328e19e127a5c377fe414bddc29507fb58ebb22abd3c30a5ccbbdf0ab0a14883fe704a0c09e4de11023100b297c49b9d8e1d1239a317f964055f5fbb3831facd4a00d34a8f6e938a3fa6cd4af9c77daa2ece8e3f79a71216046cb20302047c435bb50066306402306e8f43eaac874ba2dbd63abae174471202ade266ece60b5cb2ca25da54a12dc7fcdfc39f66d8142b4150761473f19885023039692249d082df43326359db958ec26d90219c267587f38211a0a434cfc28da0319a65ee4f92651f5108fc2a77805a5a0302047c435bb500683066023100d3198ee3fcacdeaf4e58175bd045bbba172f048f363d94b000a04a2c9497691e0661a0bfa8bcd16df9f312e1a908da06023100db59b3347c93793862edccf69cf00a0186294c40f25235a4bd3855821f26c93e2651bb0a8da00289649c2396f6bae3280302047c435bb500683066023100a9ff22dcf6480d18c93813d415f7d68eae794935ad3f4a1da98672ef5702a76d07c43e630736a1bc00a277cb35d33e79023100c0e2f6ae3b4b16ab208d07b486928bcbcd69d00c309f2a57d83b8ee8c0786ee4513b0987d17ee8c1f41f05462ed89d620302047c435bb50067306502310098934a0397d107f92fd3d62aa0ff275adec080354434cd0f2338d6e8d40c5462bc819b5b4b1a5107493dd334abbe2366023032aeb5c2b8a1bd60965f3570fe4607237031f626297f8e4f5806e0e3f29b62a2e8d9b76bee227d7f0b93119c1c408a560302047c435bb50067306502303d0104d826eab15b50157aa042fc0cd83aeb94171d85a5e47df06f1bc98d93674fb2884b179b594695f2184f1d788cec023100cf4a254275a185187bbbf83df1244c330b7fe45b29f7a0af21b167ab94c3b7235d3cefa5532185cbde9bea80ad0c26020302047c435bb5006730650231008307161628ff52eecba2d376312e9a7af10d1b5569239d347f0cc078e8e8554c498b87a3ed5ae7222e4f277494dfd8bc023014effb8f5f46fad31b1944e45eb737a3edf3cacfd5c49ca3a31c91887699d3af8ace2d1aad1014d930b53eaa1e5a895b0302047c435bb50067306502305cfd50c206d6f48ce525891d008ee03ac6363c29f7a4059485769ee0185ef2a5ddac9a790aa758f34145de6896ce7636023100baa6f4e0abddd63c0bec53707e4d5f2295cf3dbb9e07e7a14c5b4c42363222317414329e25717cd5d5e26cab1df3bf000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100be7137071ee470bbce6a40caff226efd13f22a440bd951a16015938e6f672db7323cddc64060f8c573867ae45632e0ac02306a3627f7f284af46f0f11529d1cedef36bbe72b6159a506c8a6aa4d219f0e22eea64c35389f343a41cbf543e1e7263670302047c435bb500673065023100e1840b1d24b86a202fa89c004712ea11ab7121fcdb9ca0f9e61d10fbeb1b31e8cd8cd0568723145aa30f19fb56a5924a023075d40219ecb926dd70fec53ad14ce7be6880ef445f4a96f4bf382951b5bbb5d90f64ff7c850127a4f6a5942eb0bebfb00302047c435bb50066306402300e9f62a924e33554d31e179dc2eeb836b452b766780b33f9e39a1207a1627983c83bf00a0960d7f76f70fe72607cd6e502304430b5c1422b7d46b7266ca8b6c6639b3676ba9d89a58f543526297ddd5ef98444705d86e0b53a5b7725ce73545166460302047c435bb5006630640230658006a6d4b31aefa5b75cf27f7808d5f8140e67d8e3d45d3266c12bcec1ba1cb7b0f27c5982894d26cf4c8ee948645a023058d0e694d33f30eaf4cd505dce24c7663e8874d1c5291137525f01be7066493b7d0fc20ccf05b1541f0dd0dabf2d94830302047c435bb500663064023057cbab5e6f8e6e913793419aabb1201a3984e6d6d91e7e6f8966fc86206d0ac6644fe56c7d6bd244a717bd4c10b3efb302302593705d0a7e56a0552b58b64d023c03c250ae7fa44b2c6e8886925bf21002fe0bda5d98bba86335991040eddb2f80980302047c435bb5006730650230787a774b3f3eb9e2b71b5e15225f3bc46e2939ff8feb2d8255239d7265df24b0e5d1dc9c1ca15648dc7dbd6ca44c0c91023100bb72bbc5df15944194cba63975fbe259fdd14b9a7a35338af0cbc1bf57e57ee5e4e36aba3ce510980863f38d8ae8445f0302047c435bb50067306502301f75c71feb580c61115ca8c6f0591d92160686aac05f56aa384a934e56b8d1235d6451428909a253f43082b0e800cfe4023100c9ab2f7abb82ea6507508911c048789de2e5edb729fc40268a8e9ab304e4de7f1e2069a5f963a22e93854ecbc124ee760302047c435bb500663064023037b74d27fa8b47aa5c37fa3836bc27aee6eb414012ee74d76f17e1e82f58efe392a5c10580a03c5348dd2c7e4034929402305a8a136339752f23d949c8c77693714817ecb92a31368045c36a1ea0fb0c9cbc170dd55f20a1e12e4b0260b4dbf4f02a0302047c435bb5006630640230467fdc8006f558be2c3e8ff4dd0747eea85bb6167776cae0d0fe4e10e00dbd17e9b911f409f479fef7cd2c42b90b4e7c02305a589ea300f6b8939d5ab95c4704ec9ba27fa9e841d019bd787cfbec7da316faee31f3f9af4a11b8c3932a5bcfc35fa00302047c435bb5006730650230484b225da58e5ae5d81c9ffd10ae06fca6ce9434e81354ebddf2f914a447bd1abf9973384ecfa8763fbca15ac7d819a2023100f963dc6d0850331f43b81193c2c9f080412ccab31bc7a8fd7541f15b4a9af84a4e80577d2c630aa0e1ba18305efc834e0302047c435bb50066306402303089e2cf07c1f1223285dffe46b45b33ccfabeb9ca3a584a9bf01bc0b5a0c45675c4cd4871b171379cdb2c41c0dc2194023059b2ab810c34d41b810f6ce13bc531ab6ba95608ae51c20959bb0b034f9de666e14a036f3cd7081fd9999aee5cf741f80302047c435bb500663064023033dc838560f03a1e1ff8bbd0c7c89fcd60d3e3f18f43c62e14354e21eee003f4e36a70566671db524efe3d4c33de09b302300c125693ab1df3098d75937c70cd841a3ddcbbc64fecb31ebef35902ad859b35dfc4aea0ffdc43aa9a5b1ac3d30c0ce30302047c435bb500683066023100c0abf4725bbb4c0a47aa9767fa4c67d797e413c9550e254f2b348da8a2436ee8ff204b2074bd60e40c19903cecd87172023100c0e92b159bdb35d1a6899c42ac2dd8e8bc61c8d14e36164139c42179afe546018dca31e409084dec7deab9d1ed8131e50302047c435bb500683066023100f712eaec045fe31e64363dceb03aaeb63bac830bc1d53e66f3289f4f15cf25753f28bdaa3117ee2343915eecac1f4b0f023100e44ccdd4ed6d4388217aa6603808578c2b9cfd38b7e2223f385ec8898e411b5e6ccf6e50c844ee1bffb857c8af63c8190302047c435bb500683066023100c62e29f22ba1015a364f35c4f919e8dd98587b19f7cb14ea3d0e81a045db50e9c3af3222c679915f16dd68aabe577946023100919cb91b160355a5e95f33d9eede4a8f0e85ca15a569e66e4bfb92fce0d19f8d4edf467910e958a0c4a5fb4eef9e58190302047c435bb5006730650230457231a09542a2f5a766b4a21322926342c1799e11260238d06c0c42254ae714cf62f0422b615f9c9b14d049030d3b5002310084c73577902bdddeccdc9f1dfbd9e20b1be7506cfc231c16e9bc87dee84e294b18109e7949acecbd98b9e89e8b83bc230302047c435bb500683066023100ad555243442a9033996c23be5e2a1850de07b86da1fda40335eb51171ae3b3fd8ec3135a198721864ef2f53790798c5b023100bbe565fbc3975123cf1b7c7c4974de4ef8a0038e6925abaacb878b5b9e7a7d53a222341b03ca3456b11af6b421f802a50302047c435bb50066306402306c9f3dfdff44d08d230accefbe78da602d9267a8b3055f360c3678a545be0df4981eaeb6e6822ebeaf79e35b5f576b0b0230258fde5a58dabaa5c9d237a26e86c6b0d5837a469230fe5010a6c61244cf74d16c7b11a773320b5311ede3b8511b04d50302047c435bb50066306402300f0d84a551fdc2468143716573f15258254a289d84c2c71d3816324237a44cae5f9ff5108d31ededbba118ec32ea57000230152c4a5b1659dfcb83f3f28b0b3ad139997cd981a424ca409e4305f4e16fc7a86097dfeb0d6c167862b704abd628f5fc0302047c435bb500663064023026de3f1063b09d710181c71a0c904a89663418244a9196a8bbbea6658ece52864bcb97a061a5a0ce4e28a838fd90608102301a58a223e936409743c948d4bf10234ed56e2d0325b8913067d7f1b85ff0b3a3368e3797e46c3ad87caa8bb5c6ae88b30302047c435bb500663064023009f75fa7ebf458f67404770777c8fe20a3423484cda2b5a8d96782f1270a9c1d0f02af56c5dced2b1bb27f11666b7a1e02306b06d2e3c0fbd632e7d8be3a87cfd6215ad9e8f98093757c23d7ec7f110f8e203e69f8e2ccfd5089d5c79322848e7e910302047c435bb5006630640230328b62b9d26a559854ecc8286e559f4006c6857f1ca3a16ada3dfe06ec1a5966366515e5ecd6259dfd7171480caa814d023070d1307c835d600e42259058742e449cfb7a5196cf11e7731aa9f0bce5e6c97b43bf6e21eb76f68a4533983bd3943d700302047c435bb50067306502310084e0dfa51bf355bb1572107306fde03f66366e614ac0c14d0399e8adf17c5668c340ca4f756463d3083304ba29ec762c0230570d2be8e84bfb7a197094a666fd255cab94a76fe9381dcdd597a3746cf5b5dd572a4567d4ac16fe83fed2d755aeeedc0302047c435bb5006730650231009541a1777385c6f74ce5cfb6896c2e8274b0f287c78fd335bcb1fdb1ece5b0b15155bc8e36637676999d0290f97a0ecc02306e4899b7e1b0256bcce7595723d2cf6eb0df4bf6d6fc3d9b7b6f4d15d07d06e2ec2df624b14105988dbd416e7c3ead1e0302047c435bb500673065023100f3b78cff7a61685a07cda03d3dc445d8af1c51100316265ece8b388d586cb80f18f0320be2a51d28d8ec5583522b68ed02301f5c8959742b2486e04ddfa8f3a7182c8f4dc1da3d8ab36bed0d7c6d1d89ed401ee0ab18133bf2d6d853fccd86783e640302047c435bb5006730650230494972f77bbd2b9ba66e2c7a787b7972bae1f40c74d49a9841395440d60dbbd448ed7ef41a4153a4080bcc05e0190e9c023100e47b895089c47004c5749d1cd5eb1a54d5a25dd18566f4af734ee546df9d048d21a1ff160fbc050d9ee35bf9fff1ffe50302047c435bb50066306402306729edf514a3911bee957d826be9d8a61618a04ff7351c6afa8b96579e231b9d207c5a7a34d38b7e45d6bdc401a326b302307af0580f5c8a80535303bc08f7f89eadfbd29d529f94cbde88c8780ab182b0a3b4aa587deb7854b450e0c4ead5b718740302047c435bb500683066023100f8c9ddfdbbce053cd50f49b6bd6940547d9c3a17f3a5270548a1d246ee436e180cd0167cc989315a58767f1c4cc534c80231009bd5986c30365d40c8ab53e23cd98942af542f9b8627738e74a29524ccd4e31b4aa2c35bba454e2fa7a637b1e83f99460302047c435bb500673065023100eb4592e8ea6eee53e93a941932c31c26eb60fbc4fd0b4b9fc994abedcade04a24605c05d103e4794745a34d5da6704fa02303f6cbfd528458abd4fa8448156caa2749ca8b9984e20d69a16cf7a2546d834ef83c89edb281cdd8b8dcb5951792959bb0302047c435bb500673065023011be9028a70927de4aecf0be0f4def70019733eac0d05ee2626a27fa5da0a069d9447ef4ae10daeacb41aee826dc2dab023100e39a633f3d0e3bd15855539a18230697af1ab724ab390b1dbf5739ff120c5deb6073a9ebd8ea1adf9a05e0e9015b01430302047c435bb50067306502305cfacf77fac062a72e8564fa36b0c8b41ae2285b03ba97276be25c39336410de0e8a83d78e2b704613a168d2bfc4174d023100e3100916d6671ebce4d057942fc46882e2e8ae79f01726ba32f2ea67ae4835cf862b67aafa6ed81746abc37b17d0fa550302047c435bb500673065023100f2ded4564dacbe19f55d5e9bfa9ee02b99b1345d70cce7c08420acb51f61e1e5340953f0297119ac13d2f28d0d83d1ce0230515a011d72bd5181ad2b3d32517584e92d8873075c27fd622c6a47baf6d83c13216948b860545f573dc00559fb5c3aac0302047c435bb500673065023100a6ea47764590831a9a8899a7c35a43372d088011e55a562a72b691a9944b72c7cf387136888a7aa6390d4fb13d6388fe02302c9d9a54494c132ecaec4693c851b929959c0416801ca08c9cc5a2d45f2509cafe4b0e48cc22523d1571fbcf002bb0670302047c435bb5006630640230579da831e6d569233e626bf51d7ead156b2343e5d01d48db860bbdc44e8165005b28015801bcd54d5071afdbcfcfc0b2023008670f4bfb1b9adab87f01479b915332ca0ee08cc7f5b9907a6f8a015d7e1771ad9866d5399f43a4e4d0898c94ab21df0302047c435bb500673065023100cd19b85af2e84c2ee9d562f7872e91f5ab18ffbc3b6c36abca7807a74672bfc13877af9aa88aa822508a0409727e30f802304a4e90cae12bcaa995d652f39d6a6107734b232a668245dab7a4b813fa9110bf1186eb2aeddf90ba7d870010dfda37e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e3067923a3f28bb602f1742e009df52e9a191d8d2d2855e7f1b9bb54884671cd33c7c88a5bfe28c042fe2e44814e2d0502306c74adc05ff4290198b6eb5fd0f7d57ccb770194a4037f2aab8161c83c00537fdfe6cb91c645659858bf1374820d72fa0302047c435bb50066306402300538e7d879e35027a1f9a15c364c38bba2e2a7885227936a1e9b2db8c25f54725ddad97dd6c9ef3bafef856c4e07a4ba023051ef9953bec4eac2df63516a9ecbdc097d6a13adbc499be16751f675a717638541fa6028fabcfe0942d98ea654b4c1ef0302047c435bb5006830660231008fdf0f1274f481f8d36d46f343b4ab9c30d1f5776cceddb241e2e1d7d4b944b7e550e491c686898fd305a48cd4a4a5c7023100e8ca13473a66006ca82bdd3f910d2eb16eb30e41de18cae8e48a9bdf61136668905c4c518e88f1285226069c43ed2b460302047c435bb50066306402307de0ad6a696b48ec2490e04180a1bd827f1e790dd6a850ac1010296877838f17e894218ed96fee2e886eeae14a846ff7023019d9355d060b86bcf299d157fa400bb5ad60b5f50253f1adc19065f6d46079c0a736f2f2df9eb1f00ff63591f61855f00302047c435bb50067306502301de6210cdbe54cd35511f36c0e8b1d617ca700e59e7cd7f9eca2f4c29e385f7d85db22e6eaf8ebf0f3e770a4a82fa1c60231009a276794770d1d6df4a5899cb9fc2ba004cfaec16d2a4e561c2a38aeecad0d1b50f12efe19170c425befa317ab75ce5e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f135a502d4402365f915a279259ff6ed3d359ab1cc4c12e97fed092b200a0d0e8b534f2b7f4d10ed4aab63986986ecfe0230145fc18d5c4493a1af51c1c0c38a75aeefa77c0181e0ffa1ff36dae770fde41eed10c94e670a5996da78cd02cb587c7a0302047c435bb5006630640230643ffc13e30f44bf40558fa22188af1b1a0fb777b623f4e1a3232cbdc5842296cc4564fc8a3a9e567c69c84b4c7aba7702307ca23f476b909994d0c31eaba2f7feb118b2c0f7819f3b29e35451d07aba61d205dfad0aadb0354ac38acbf4f73c93440302047c435bb5006630640230197d7c523e82f865771c28065c24d682c3f514d6c3df9d23eaebe7ae60697332cda88445e2784d10eb3dcbda03b7d90402304672fdc67b4747719ef28648f22a2b479bbc622ebfdd34170edacd2b01fe697bf5ab6d015988e1e64d537f044866f32b0302047c435bb500673065023100cebd45c83bf7da71f37aecf0db16c57ff3201047265e1ff5bcfbd9e63f83d9317b511184510a52f42886d38c61a6d8580230286ffd9207590cd1149911bc98842f6212eead7588a5cdc2b056f4be5b7eb039affef5e719573146efb9eb706323c6b90302047c435bb5006730650230310b84515ea5f64409653dfe71d12f0955744a32ce5dda92c316fdd935e1ce0e29829408b199a0b17a8694cd12563f53023100bef6f3709a62572e5e6df490bb4065bda2f3cc98328cb8f7a996b3ff9d784b38ce0b8355a5d4b123d011c235417e11590302047c435bb500673065023100ec074bc2d061855957768cdfad8f83ba779ae67d6d25b3db865de2336bf0dd286a3dd771c8f78f886de69229949a2db702304330de968bab1c8a713152581deb5e26365567bfcbd08b7245665081937572b04cde562c148a575d35d7bae4ba503bdb0302047c435bb50067306502302f54739c7f470f8d802bf63540d5e1b3adefa249165b60633a66571f25b7e9128a36271b366b03b0e11a854b023abe15023100b0080f160c07eba964f14acc4f3fe6205813f259c8c83e5612b9d4a808997f3223ace3d0de483df5e58c299d07bfdc290302047c435bb500673065023100b79b104387b078ab71c39a1277dfa731368f1f49cf7f00a548e1575afcbdfa5a583c9ab15e5e658dc4753ce071d64d600230229f216f13b13081ec761b7b97f1c81274e86234415753e2b848e4428e128347d624f71963b89e57d01ad3509ab3780a0302047c435bb50066306402301c9355b0b45b22ff015adc1c85cfd71d3981c3e6cad7eaadf3d6c7caed995d88ff5ba41851c9319ec582532c0e40f74c02300dd9b38a4ed5c6419f8617d418618932c0898338ea04f3558b8a8d7f23e4e703feb948c67b08166639ef9efff6c638910302047c435bb500673065023100e367790e96e0a780f79f1181f908cbad002f1a9eb50d01353fac46de14d1ef55195c44c224c44380eb607e68f09fe8fb02301c6e38b9ffdfa776340e985b900bb25713cc70a11cf032b6cadcd95b8c3f7d64693807e2ae426c7eda732c8cb4127c400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230211f65a19e1a3cb77474ce6a9afc08d8de35b0ec3c0e6377593807520ec27e5debeb0f79bc1cb10fc5cd6e61af5012d8023100b75968880f19325b639a1c9834198b14725a6e25d5377e5d15f188bc216ec1528ea927e7a1f799b427e4ea1837adedb00302047c435bb500673065023100c6bea7ba4ddbce1a44c8169f6a71f938e3f7650e4d255b8d99c55eac537e5481bb07732e24d4143b692f2fb0c1c676420230056d7eb79e9d77eb4b18026d3488a5f08ac35317c1f7bf27cf997d45113033fdd95dfdad97781c3c1ff8c85dbc6cb5130302047c435bb5006830660231009b64ca1b61a023297dc6988bb4f9ab8505a79b557b423007dd2daf21118013621f609dddd622bb19b86d929a5809e39d0231008c3a7655b1b6e1f3d5d8987d5d098a31cc61da9e20f491a87d5d1ef9d2f9f65edf915f20d5a0c69d565175dcc79ad01f0302047c435bb500683066023100fd63cbf5410d639f6eb344f921d1154b6acdd35c16e382e385de0935865cfc091981b7c47dd5d87ea3a823b1c6be639902310092a2ec54699c593eda9e28f48a583433a61bc5ad86d8a8e641cdf8dfff2c89083b3abb426d5d642f95378c0eda1b81660302047c435bb5006630640230104469559c74004a207c4528c963cf393f009dc0952ae3040cc7c3031c3b114974c411e7dcff88d9d8983f9cc2a9b1e8023056a1326ef1ee1b1d2dda84f95e20fa309559676d2b9d2897b00ef5ca07c9b40610a2b352b84eba44516048193086f9280302047c435bb500663064023031f77a38f7191297c56c34e4eba3f37246df88636412dbc6c12d45ece237a128fd006f544466264c930a70e1359e5c5a023045c2b3c4cd7ed0b31bd635f201e4573dd14fb97157f63af6265cd0229432a13c9593b1246ac3145e9ae4f31f42409a760302047c435bb500683066023100fb37e2ba240272da136109280dd1811b20470bbb21768f7231e6a40f7516fd10f831f93b5782d144c52a19e462ca2220023100992a61a52b90e65de42f1c3e65f420e4273a90463f0ab0095c7b98b2b0c9c192647181d231558daff10726158ab8f6fc0302047c435bb50066306402305e51e70e60ff6f13b72207e8f01a797e69ea46680a7c5804fcea7cc10cea5c6eba39adf1dd96b9b13d887c767607ac840230639aa1caebbfe02e43dd1e0cbedc006de03ed9de6dff3e5b2f38a7aae92e0e5a2f9228f68e50b85fe4026696fe1d83a10302047c435bb500663064023009e570ebddcc470662a4a7af82a7859c6ad20bd94d011dece57b6e5be69650728fda232d3267c3901640e2031f4ae0600230563d6b150ec41c434cfb0599542297f1a4ba7967aa3c7ce10b8d8a9fe82a63a02cef7c6bdafd6c9c3199c4e54cffb0650302047c435bb50067306502305cc1727e09e43b7981df0bc2abac4bde412f9889cdf5b824ff815541a3ab4a5cf4b8265eecec2c65d281ee493a8fa17f023100f900a2c1c3bfc30e9c7f45e06eea9e8290f8b13bce8e2d591e7d064222f0638e0e7a376a19180f66a93b56d1c702e04b0302047c435bb5006630640230477a02129f9c99862b73b2dde96e2929fab3a5600d46137363204cefbd7769854f855b6013ab7a9968c02235f123de0402301317ca4f56f68ae1d5638d7fe0649b8b891bcdafc06982ba4357035d74c4da14830aa2c11292687ffb8ecf1266bc1ea60302047c435bb50067306502305adc38d65d1b4a20180010d673b5539688dbcb0af2afe78009b84494f33fdb795bc0a6e186e37fedb3797bfbeef972e8023100bc2ee75c11dd28ac62abfc0dc770f1ac220f4dfddbb0afe76119a90caf8bdbd2ed4d40d1913a2ea02cb7f4a811587b4a0302047c435bb50067306502304d6719ef999fbf070e327c8b1292821a1abed8801d7a496a61ff8ecaeb564a87329dfe3fcae1757152a67e462735937f023100cdc902e5b61e6c645b1b24e60f43bf2bdc1ea62f6194f082c64c25a8e985f49888ac605d059f875cbc0d4eba9b0360610302047c435bb50066306402307599c04f1f264d422e75cf53a7a0e682e5375b929274a21427f783a4b7a86bad2f087dc3273dea7b9188ad50cb4ab210023073db7b1957a73c9ad8f4c54a40971625b73c2dfa81f38aa219f788e608933fab03b82d99784cf749c044d25e3b0ead160302047c435bb500673065023100fadfb1824312882d20b7308fe0be04ad6b48e1c8f7003803b9eba7ce46acbd956766e65e2ea6695c4007a26e3a516bdb02307e558cd19aa6b4f1adc1fe21b52927ec94b53a85818c240f6071d583d6ec6aad8d4a56027fb7047e8c6bb5eafbf4e8aa0302047c435bb500673065023100b41f813699cf7bddc80261625689380ea30a10ca6852689fdf94369f977a89f6aec4a77ba4f8eb4c9a9cb016cddd896602302b1770ee6b12ad7b22b601f10ff361a44efc7facc4ff8de550154fc0b125adcad794e2eeb8657e6d08d9194c6c2850610302047c435bb500673065023100da5bb144c4f76a875f19e9dd2ab7e822568f91ab664be7a141bbfec6d8d5239cb9b5eecb4af0b656af9f80c0a596fe4202307109b5222180f23d8fa6a763a4152724d2d5f13096e466e2fce36410aacf8930fa786d77bd0379ed44d7fd7a6ad4f9cd0302047c435bb50066306402306753e3061faf60611921b13a715e4bf510b6a0c2e693bfbd655952c9c105609bc98049b6d79ac0701480ac63b52939420230744e2b431f86ca20923bb5e5a12cfb00613a5a3b2a92ee44d57c886375d1dfc8292326aecddb2831eb8bb383555c7c800302047c435bb500673065023100e13cb8bde15ad7b805c53676c128b97b80d7f411252ac4d6b9cac68b64414a0141bbb6258c38a27c032f87342439ce1e0230368c232b20a9689c526e3ee62c23c470c11034c2b2ca4e49213b223b70ba02ecc4d617b45e9d7fbfa6f01a1525c0902e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300f00b43cee39ec072add279f30d7ab631d094f9bce633016b4af6d8b4fdc9ca919bb02acf8bfe3bdca1867600949c58a023100dbfc1383619396e91041163824bbb3f7483a62e82a1fa33b0a6516103941d96254658e6981f6f688d8af9e8747a89ff90302047c435bb500683066023100c02508c0573b18db0ccfa5d59fa20c88aba3342d086d4710d51bb1313cce7b87a12359e6d8981a604b662f015561fea6023100c3cd0847ac327e9625232323110c1e1650bf888d7a487dccb73b5de9e1ad14df7335017fb51cb421821de073f8ac441f0302047c435bb500673065023100ae748364b6126a34ccc4ed7e23ac6ee00b1a19e6d92f2366274d285308f7847b8c0ea30d2f6c686dd9ba3488d107477202302f7465687ff899ab3598d540a8a34e86b984781a762bc5c2beb0b06369373d71dfd79169bc93f7e1d6d8ad0d3abc74200302047c435bb500673065023045684c38bc574e90d899ae5ec76ec58869a2e4e7e6710750c4ab065816ef7a4e9bdb7ea31945e8080db8f548d27a8f3e0231009344f827c918424554e79e422d770364d542c5837b0bd923ff44eed6abb8741b7c6cf0dd346786adbe41a4eceab89af30302047c435bb500683066023100a25b7d14b3f0ece5c816357848660a2809f0fcdaab7fc87fc83166036639046776b760e4ca166c463c53796771ef08fc023100e75f56debe9290848c1a0bc5aef4f2ef0324527a804ba6eafac6dd4187d8eafc41eb7d77a5b81938cad25e61798ad16b0302047c435bb500663064023017609addfb505fb0181bf591e9407400e9f5b8724b9a0ed21438e2dfdc175bcdf5efc593c0672b8bcf3a7068fa372bc3023017081717e1fc80039402b39b2f0c489856a40c079a69761f2fb3f23d9ab3270ebe09aaaa88d7108ba88957b16019c1450302047c435bb500673065023100832a09e0ac68f8dfdb0969230932caf9e716154f9780491af7e760e4d69387dded897fb17b92379511452c4c3a2f35f002301c0a56922d81157ca7d3e1a281eb93008df32f5ca0aa8a43a132e748ca85e4a8b3a28b5662d7d01623ef897aa2382e280302047c435bb5006830660231009ffadb4bc9537666c2ac50d830285cfda141b0da071bd42c61487df2c48842585c6fae95b421e21eedfe9a3e6e7b3c860231009f2da98a08311138f78a9542081d3d68c04dea7c7adc72b9ad1ee7d66d41764028162e9e68b05ffe5dc5865521b4e3b70302047c435bb500673065023100ca065e52dfe22ce9965b40d529245ae6aa795031ec53b879bd2362d8480ab6fa7feae66cb9ee9777fe0f81e7c2dfceb80230481f602a7510df8facfaeb769bc132b7bb662f40f3f930126046957626f7cdaad1802ee53db4d357035f7cdb9dfac2b90302047c435bb50067306502305cd3885462814052e22386cbd4ff006f8b33db0db3114083609c79c35207e99f1991f5c9afed3e5a1aad9c9d4a157ba3023100d0ba7ecd26acf1c78e1ea685c2bb8a727fbe0f8c6b3cf2bd2cbf2318caddc26bbcc1263740479f7fdc6f387a68bd5b810302047c435bb500683066023100aa481cfbd7f04136350fcc5fbb1cbdb2ffda45b464c4a75d1ca2d9ac216759ff111bc15deb30019460b507dacd88c83b023100c9e3be92da9a2fa3754afca4822130d44fb24987d9cb254fdf0e20daa780f8b0277676b919e02a23f76eddb178f2bc1a0302047c435bb500673065023008163698fae5c4b3ea9529cc370fb30b4e84982ec9b38b0f34c491cff25be801dd740cbe9a9bc5ec9b4315f3e3a35bd5023100be0b60f3a85b857176dc049c0ed3d0d64f09cce55bce37cac86671cef7e37ab464513fefacb551c0634be51511ed28eb0302047c435bb500683066023100ea77fbf52b04c4e60bb72650169c8d76712c9a804630dc56997b2aee1ba3a07090bb5f051f72918fc8d8abe6b67cafc402310094d328644dcec975a7b4c9f1b4191c547aa9a3f8955c6dbcbe5b815635e871f519a1f53f37b7cf5b5822ab8c28ef64e70302047c435bb500673065023061bde8506e21ac75840978e84e69eb1fd735c7d0f3ab77877336d3e14dd9a154cf3db4ad25aac3f2de1e4dde50bd1b3c023100dfd64dbe994c02c9b6142151f51af7ec2f67599ee43a3fcab37c18fb614a2a6e38a5106241a1ffe42e8106eec439880e0302047c435bb5006630640230650d1e2aacbf6ca0831ef4de633082d3cea3919f5c752711d90b926da62de6171f9859edd71f170e5f84cf4ee42d59ea0230186c17933a1a6de0a79339700b8e35d5fe9055a29a7041047d19843563967839d4530b3c392f0b228908d7909e09ec680302047c435bb500673065023100f284ff56cedd5014f23d24128c842947286b5759b5a6ab8f7591ccbe00b5e97d0b99cb73c7f6cb619a15dca23b5a120502301937c433f52958e36f6b411d0d125b7618d405a2ef994b670ac1fd2987fb32df6dd837fc707c0e460c19a91571c153560302047c435bb50066306402306dbf1c3badec81c2f9e274e00bc16c4a635bce2bb7105fcdf1e91badaa2a4a66a61e19ac0a650aedb64f7b47fb0a58fe023053e5af51bb98b5df285bc75878262a2baf59763f812c758a80195a7b26df572771e1a634dbf1a1c36d882341de2574aa0302047c435bb500663064023006378ede90684633bca762792f08ce10d17f2c53f635168ffb85110e7fbc84d0e3d010dde22b7585b87666cca3d9328c02303f655c9a107b118f8d492565f8f47c3e473a23b32e8a85b97667d2eceab4d716cc7e98775cad8d176e5a5d4dbd3785f00302047c435bb50067306502306f25590d8b5657f5c7a5604409bbce6684166305eca0abcbb3a3c254d9fcf4943d78630e8e1793f1d63d1dd16b884ca8023100ec97f414514ae1c9e60440283996e3fde4eb35d612a78e84336ad776877bd0d69366cf9370f7b11379039d2fd038c8f60302047c435bb500673065023100f5f115e7675bc9ab6513792dea9ce32f5f7b9b3086829cb97447e67c6244b5b7b5e6ed28494077cccc1c090be0047f2702306cc69b4c60b09b664a340591757635f890da119b9fea974d31008ff75574b2ad74882a25549d439aba422c0681183aa90302047c435bb500683066023100b9459c96bec0b632bf57bb578b022d1b9cc3bcccb5b7f8cb8f9c03135edfb37d9e34888f178b534ffcd393d9001ad91e023100a69fa90c75b16dca112f735354c527b355c2ebedc24ebcfe343c7698110c3e571799ab3bc0f53ab6ee26b3fb8166ec130302047c435bb50067306502301617b7b128dcbbec4712c51310167e632aa893a262451c35b0f3183d543677cd2adc96d1daf7be9f8864ef5e5bdd9474023100a79a0be79bf35d8df6d644e162978ff7bf18ab1d78411ced8c603d97ff092254393feea5612580fe7358bb5b66a10e4c0302047c435bb500663064023030b7d7b63d902f236a01907f2f84495ff5e6a7ad59120448ca2e19c98e2e1d40af0b52a9e6ad78af623d71dbe488257602301c595a723d057e7ffde4d7320a205eaa9f3388904cedafa99223bad34c4296c68f7c68daf46f7815dc35faf72820eefc0302047c435bb500683066023100b68e237c731f6ebc5349c3b3309a72b04a4aed968aa4acff2d393d943607c00252c6af0a2f37c283ac7dc43d959c619c023100fcb8079b62a682fc1ffb1397f7cd602cfdf435ae7bc5b0516f46a4c7e38aca22318dc0a352bbb2d12a8ca72f890b342e0302047c435bb5006730650231009ed2741c7f109683e23ad26633388693245ac514ee7d038745e70606fe7352cbdf65ff13eaacae28a24c81ca16f4ccbe02307ecc79c5f8f92d25b67c5b38ea181288e92503289cbb58b6aa40576f69e19336e311104b8f6214859a03b106c65e8c740302047c435bb500663064023013c3c10dfd3a076251b1d81754547034e44600798563fee74e5ac6c0a99f6934b7e2641cf8e6e752157ff7fdcfc37d1002303b66f29f21c4d10591566601ef2a733fd8aaad36a5021a81b89df4d0ed794d575bfd93f2aa4771e5c2589fc141312f1c0302047c435bb500673065023100a6377c16dc1119cd9f80eb03042febd25070e0c6599bec1343b3a75c66d38ccf64e08b058bf5ed8f7f5d55adb7d406d102304eed40cfd6359e274da58b73ad58c618624fa0134f03cff5d15c77a65797912e8098c679153943afb3c9f0303bc8fe910302047c435bb500673065023019974fc206b74e356e779a5256de528df7e2196c9e14008fe2dbd91481c7ab30494cdb3700b47e094c74e98d262f95cd023100e9de1427a59c26021e7d653516f037092cf83c89030a629904a73e2fb312d1660534a2cea2f905409cabfc608fa0db470302047c435bb500673065023100e67ed0535ac5971dc7e6ab4c0a3e71777ed756757cbd9df94be79ff24baff2323d6f4f043a5a4bd8583cc1a60c9dd81b0230239ad219832ef77c7ab966348d4ae382f523ecc6bf1da95f44389da2357b155778471a78f6b39c10fefe1d3b561a5c420302047c435bb50066306402305955c8adbd31ebc036b25522e460848558d08a08b6c59cff6e8c693c99793d5bec8cf12d31917b80689e836e7405a96602304419d350913b2ee0c222f654a087b43c0a71a9f3f7aac2b142c41152022a40278a733a7b76de823d178b97e8ad2da5560302047c435bb50067306502301d4d6dc04a1144eb1d98ab6e425d48b8eaa6f6c789db903b6df79df6f1341ed6e1b55b76b8ae19122b5ec462092af883023100861e55322fb1885847e34cf9a98e2442757b931ac18c455f226a8fd981486fc92040bf044a093c67f9ab41a70ed6515e0302047c435bb500683066023100eb28277dc9507cb320d461b673c983a75cbe8aa78713fe4ae390400d1894c5597813e6e491b7420f3ffb1d781fdce8a2023100a35290ca4d384dbdd2ca3d0d69cabc029e8c542a460bd1c6abe8c70ca2d3f5b2964bb959c3efcbefa2fd5834aeb39f5b0302047c435bb500683066023100f78dd934b5120ea1c0258d309b29b03387b527467fd319232572bd5c5d43a613488cecaf3d00b6952bf5a7bbbf830df9023100a24b7ac7936c3c7cce83213acc1ddafbcffc71bf9846b814ea6a1963eac2a7cd76855e330e6eff4efac36381ceef84d30302047c435bb500673065023100e01760f3d88af97859e830707c98478bdfdff526ee0cedf41e9dcdc92bdd8e2c69d194db0345b870460d9ce173af721102305fc2012fa11792495be1d3b0e752d89151faae92908c6b0e7a81673c021188b1a562dd490a4a34e92f3b2e21fe54b9cf0302047c435bb500673065023100cce8bc3e0fae18aa4c5b071abf805b77cd4cac38ae664ec4520f2475dd0efe40d022e72d217f6d1d46af605312694e4a02300205a41a5d5dd4568018f21bae20655730b0ac5a37faedc8061e5e3df5779c78226f9cbeb20646b1372f3be6aca32d3b0302047c435bb500683066023100aebc88b5fc907da4ad466ed0fe8778e2c257b38d99b13c5c3fbdf33f400bb3aedf9aecc28b35a93b00dbfb3125b7ed83023100d4e493ec463e5d4f893d1975a5cd7306dcba83fdf641c53ef252b963e7cd66632c3d6089dea9cba9b507b0efded6ba810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a8f33883304045d0f55d49bb5b690daa31ef0a7218e27c502402c1f02c06d74ae3a126e92612a22667afeddff4c2aebe023100a094c1db41d2358502b4ab3153a446c3226925c302e969da50781c4a00ca912bdecdc98ae8988486a039f8863efeb9940302047c435bb500683066023100f0bb0f45beada9dd0c493e14a6de121deeaed07c3d1c46edecb78ae0dc31c2f745466fa04b36b3c0b8eb876d4ceb24ad023100ecf236778e246741f2a5c90fe52aac9e8fb6ad5c6892e95cd1e8d5bc9c7975a5a3e444fa38c018fa1e156a34072a8aad0302047c435bb500673065023021e888f2c5e96d9edd2b52cf8150071d5594ae4ac73f161de9bbebd47a5a4a163fd19301365e0ef766b563cd2a130e27023100a20567b1545c1f0aceebe98d4f4c662061ca5d77b4333f6482dd6aa71c496a9a0fd1b58eb0b373953140d2e7a03f2e8a0302047c435bb500663064023066956d99086bce2e08a92f9704e011f33a9c3fbfae44315e859ecf623cd64dd9284b549301da4d8b6a7e30045d72ebcf0230065ef17c8e13b065e034371d9a13c04a93f281031bcd609da8fa504b7bf1379302cb919dd4846a0e7751c619e5eff3230302047c435bb50067306502306938c4b447da4b2a7711e230556a5b65ccdefa759e5b109ac396ff66d0e9058ce6c5295ff7312c981d30762c6afb8c55023100cfc3c8f03a85999a307fa30eafd5b7c86e3ddb3ca211376619a02b29ae53886e89031339ab6671bf26f7206d03b9b4cb0302047c435bb50067306502301bcd06e4b70e94a08374c9dfc8097021ecfc744f049627be40122d68cd7ac9ae2f5c071441f9d2fafbd5cb0d3ba45857023100c13594fbc3a171e3da556beda4c99e623b53abf9133fe3eb59b9879376377a001e0cd2bb930c1ed7c8049aac062ff5cf0302047c435bb50067306502302d2d9aa8b7421cd8b348374f7d81d5610fa518d29bff2571955e2ec99b2ef059e65c4b0a704147d87630aebd3869340c023100881d1ace3319fa0492ed62190a024d534f89d4c4984149e5caa7c064b3bdb11a1711af872138d984a01021dbbddf1fb50302047c435bb500673065023100d1b93be81c671da273600cd48c06aeec7695a0db636513acefa1828be4ef58fd7b545fda89d5d21913f722c199e5ac6b02305679cafe4a3c94e285e2d79067ba252cb945e30f18ede5ce4816aca2ec4bd0829b98c01f3e05a3f5b257046f48b358850302047c435bb50066306402307fb5c3199fd7126649fb9ffa617a06ddf66e51383fec3e3c8f0dafded30ee5a00233faa951e3663888fd3c492a3531ca02300bdf5f9a534cc5f09e70fc7cfe5bb211672c303ac1ee1963fe6cdc05950b616b9ae7eae311a1c9115cf783e450c406680302047c435bb500673065023100b74327f81f28ebff2032327a7dbd28b1d80745bdf59432f328874ccacca5922f94b3c070be24a5fe5fec6fa18827739d02304e052795b2154b3c10636234b3f90d27e9bd64ee9df803336392404fdeb1c4d1e7bf36fe121511bb41fa9de2b6792fcf0302047c435bb500673065023100965879db0e5337955288c5b714d17f3b886b9a3c9e32ba4b3879119a15b827c07cea96d99d823a743dfc440dbc4d1bd702305e1e74139b641acac2e1f4928fa2677025bf243c3dfbff851e7592225daedcf62c56d2f711f3f002bdb37b87f7b926810302047c435bb500673065023100ac38947586fa4b073105b7a2ace0fdce9ad34185482e13bdd59f36a52cbf7f60463f00073a4b8fa523022f3a8db8ae3b0230585b910925c671e35a8a6dd6505f98e3cb47a97ccd887c34f115b277029d8f4b6bdb4b6450b89ddcf2256bb833025def0302047c435bb500673065023068e0834cca1679fd4d4320a54f3e16814fc4fb9ec1089e2ee68aab45e1619f1762be5fda85a20e06592c19cd88834392023100dc09926e599aefc41428d6070a573ab7531fab0cc13f11b73798fd55c0e009b3a9d065bfa67286930d0f46fe51e9dfdf0302047c435bb500683066023100e373f7ec79a3b175f458855ec9b58fa1075929d81e5c7397ca6c3a2aeda18b7910afb052bb036179758e4e9c8874cddd023100c9d2f52dbeaa4f09ba5b65eebbd9b43f9c335581330537adf572de962e18764c722ed1d271a3a2470121119d8e9a909f0302047c435bb500683066023100cace1ecf5c25f77febafee61ab1d6565244ed91ed6a3f1d08121ddad8358090c90dd2231466e7b42f598474f2dfcc110023100a68e7959f85823172d12f053786f9ddcf49aed47c1843b6518eba284c432578b10a909561ebe387a0728d87fa715daaa0302047c435bb500683066023100faa38388c04a1f788932d21c5e9674ce722c758739414f2605c37ed45da1465e12ee1e104ed9e55a6b066673e10af8550231009321f10d09658ba6d70dd1963d1ca61d0f3b9689d734f42665f25c289f4902d51ca57579a4830674700d623a27b3e7df0302047c435bb5006730650230559d2ffc1d5bc077f6de2a5c184c03c450c524276eb5950f615b836f514155219fbe6f4b64713151c50a4a5d065785f70231009ba375ae8483e35fecb835b652641e7e2ddf187b75808ef95104663a04ddeb45203fd737986cb8835244b8a9d856a8a40302047c435bb50066306402305c458c582c9d48613b415a03ea4e8bcc5829a48342bba3d79905303533f47cdbfd009bc373276c4c7fdf2cc2e4405c5602307542b652d52102596bdffe25603af736403690208515eca5e7d3de9cc7ad0ef35dc983b0298557dc2ff7b1d68b01a3ca0302047c435bb500663064023025254ac5b28d7989f76c42ae606f12cc1fb141099d4190102633281cbceff20e168e5f98e027d7d792a9f2799b13651c023072ec06716a78d1348edf76f5006b70783683525cee73bcbfe3686be2451745c2a50bf52a712c149412924c2ba30334d50302047c435bb50067306502305b4d05fa793b4a4c171e6b2f32bdfb5f19fc05e510ecc566e4ae205a9e2cee041c4c60f43e2d03cca16e5250b1bbfd14023100f000441229671fb62903c0e8c42f5e1c5059c9b7912fceb34235d3c535a2db59518b1ac1d1068da1b90139b31f2ea3ff0302047c435bb500683066023100ba313baae71b522ea59fb3ac2793cb944da866998bacecd6394da8f0b741b7d6dac1ff6440fbc4b3b7af03b7a28b7217023100951c50fd60808deaf7aeb120be7321b764f8139aa45d700db98bf81af2e48c2fabf097255912bbc0f89e1ed2d2ade53c0302047c435bb50068306602310082b32772b3e63cd9a6b0d7fb9e6a9b9edb45a87b4d7e52ce0bdcd2b5cbdf73a6a05f6a4cf527fa4dc85ffbc30b48096d023100eb0c8520c6a57d0d2e8186fdf326a8895357932a4fdf77a0a5eae7e268d11ffebc013f9c8cdc2383fb5c2218465f8b150302047c435bb500673065023100caadc643f0eab3687328f3c864cfe77028b5615e5ef2feba4cbb5de7792c65bdeb3b38a679e7297ad7d09dd8a863fbbb02305590dea56875cd9a3439ec967071dd0a78914cec3d33684627128a8f8d7e70b47feefd28e5f5bf5a8f7578431330b54d0302047c435bb500683066023100ad74c02e55c37cf501e2bee0bab5a918a8dabf605dafddc1a7fe95718b689154b914fdbbee3d548c1df5e6ac9c88577b023100b5b01aa1b814a7ec87f1d9189e13428a43eb181fc75352ad69b019da95b3e9cd797a37a8f9ed56db13a59a5de3d01a240302047c435bb500663064023065dda58140b4c039e660f8f5cc85aebc5ab2c627c80dc1858068d36a1af3cb0f5c18cde66cad02ffdf3b800616ce3dfa0230255496844d8eb242f6213dc46a86858009908b683f066e9debbf3db360ae7c0bfcbc2bd4adce25e9ad45fb9e26e9774f0302047c435bb500683066023100a17b9d7ffd479563a67c9b7443f8f3a4b21e699cae6d261eefbba5466d7993479595894dd29dbef60165ab8176635611023100f17c639250525e3b4928524da40502089085e6aa64051ef089d5b7efb38d81f272ae879e1c42fbdf13c7ba80f796817f0302047c435bb500673065023100ece8b43ebc1ad397e19be70ed451b29690bfbf49186b3267bb0a659be74d62dff4d3a44ca1fc5348ca1137c53eb70347023051c0224f96acc8ad79d73db9ac2622f3daa01bc873d4ed00b1660620fd2fa66a09079f24bd8a12306e7752f8a2e8ff680302047c435bb50066306402307d2e8b2fa7dcb0c4a569fdd5fea08427668c558c9d4d82a67df86465c59ed136cf5ca177174938f5400e946a1748ee5502307e4c2688d37a1a3afac9ba43cf632246caf61a7fa34aa3900a590ba93d1bef8ab788370ddc0cad593b9b3ad2ec1ce8c20302047c435bb500683066023100c37c1ba82f4a23977a46d5c2853d8c9c5711c771bdaaa018b6c0e692875d84cfd88777eb256016adae1a6a0944b2c382023100a6c034e8ed98e072d6aa4e78bb1368d2256facc37ea121f0e95992230e3a61362d4ed34dc6f34e1cc5de0ddae73196e70302047c435bb500683066023100df6c99cb9aecd44f9beaf97c39bcfc30614318c5f08d51a569ab2c5f3c79243aafdae28cc4c6e4671527b39973c7fa1302310085aafc107466f34222c83e851bb25dafa9f7622ecd3a5fc2610e8c95580b49d34d22247379e1557c1262f4e3a1cf47f20302047c435bb500673065023100bd2d6c2401c5fcbb2902acc286075a577918930e1708c26ea265723c9df767ae0d576ad929f5c3064a99ad84d009069c02305c0ee1783ba28d4fb13fb3ac39558a6bebafdea735e256330407607977baaf6d35815b6638a2e2aabf474b276a8409f30302047c435bb500673065023053397cca2d30174d11a732dd2705b53269778866a1f86f9b7e17f8798ba6b507c5c203e13e9c46b466171c52a7d0ea37023100b45db3d3d5cf2ba55438e1c95c539b0e5dafbc7424ad5fd52a72b41a755fc3f1ab3d61476b6a0911bd2f1c184ff462d40302047c435bb500663064023046d1c85d6a3dea1217a50a085c2a8572b1f218acf870545c3a103e7bee588cddb6be1b658626ea11f3f9bf669f206f2b023017b30108c35d30e8369d730e652fad1e7f909cf28fa72e6d1daa9ee0029612379f8068ff71f9298dcd527fec857343e10302047c435bb500673065023100d87cd82fda99a1506fa5bb777592d641eaa14f0d785b4d0e24201b5f3b992a63bab6d63d0656eea0e50f74433bf5aba3023023fb819d0364672add275db8e2c9ab3784e453acd8c86c33d5d05975639e183ae702a18e3b074ebe423b86a9d97776010302047c435bb500673065023100e37071af2aecd003046e98818626cfca2d5b138d3cd439be431e2c2a6891a8bef26d84d1295eebfad7380b5519478b2302302e76bba51740d2f13fde3532a673d775820e929cb35aad8013b548340ea03d44da4de19375522c496f75f71f909914600302047c435bb50067306502301e242fb64b5c0c956be35ccfcd02c5a9bf42a2215d25e6e003f954b6cbaf0bd093ee19ff2965e7dc4422ba1488cea78e023100931f0f5ff98e32123d7ddd90c19e70c5a08ad1f2f4c85e852a8618bbf4539800beaf86a7ea18bac333608fbc82ec3c240302047c435bb500683066023100b9d322878ad565cf2e8a2fc53de28bbb747ddccd9a4e562c946ab9d2bfa15118537be3ec8f85392ab5d7e5adef175c3a0231008571cc005a900a4ac21fa7b1cf2182c900768b069611465cb02539443b737f5bca12c2f8e76e0fed184436e7fa9c29b80302047c435bb500683066023100aba605224452faf7960415f846c0d25b62bfe0048bee186871d52b6c5af2f90f7865961297110a5c9d4531e4313ee906023100a227fb300fa4fd46dd9af641970d9f92ba1e76b8461760421d29208ebcdd119a1a2dce0022e6f365c8c35fd019b3eb8d0302047c435bb5006630640230049f813e8b5278bc6700335cb6f481b8441f4b1f2f97c05c22900c0e8c02999e58c8a862404d095d2cd6439bda2c66ce02301ed0009e28a56e5efb06f3ba96c2e1087531cdf8210a046b5cbde99756d5deff4afdf241e9c43ecbbd23939e28246c290302047c435bb500663064023053efba902ff24785e61836ac39a6ba41ea0c762375181ee3654a4ee5d4a6bb2373c2e5eb95ff077e2c20cd59e55e684e02306018e100eb6bf9760f81b3c6021119fedf4174e8c05503da4defdb53f37a2242016780ea1a8fdf2209d5bad8ff8487060302047c435bb50066306402303fbdd95c654c8735c5b7422bb0801d6926dc03a271b9dff795825fe81ad18296a73824e9c0d0695a83a101ff11e8dd6302306fe9c82408decbc6d2c328050001f8b6cc745fb25e0a86c19ffeb1da4930de72d4d0305471e5725de0581858de2e84e50302047c435bb500673065023100fc2d6eecb721f246c5334101988c575011ea207607094334c114770fff48479d22e99a4bc1c83b5315c9ea3a3b31d80d023009a3d09b26e820d244c45fd4024e9e086f92bc7d3ad62efc830e9a08a970eba44b1f322a48107fdd58ef48b4f6340b3b0302047c435bb500673065023100cd1cbe150b6f163d60b43e520dbf31253f8b73921dd571f6b3ae60ef7328894fbd83ddf48495a4301c88a602ef767b4c02305f87fcdf1e67ae91d1a47f419405163c8072a71a825f547e93601ec8a1593372d59f0c8948a2145236b13990f0c960bd0302047c435bb500673065023100e7d4041c9ca66f3cf0e62de1ad6143804e03ae2f0749968417a5c1536bd6e002022b4f5e5b36fd53704a86626ea9a74e023006668cb1a271f84b2d9f24b8538e0e5b335505d9a95f98612f7ba5e02934b628f06ffc703826d6cfb9f3520379eee2bb0302047c435bb5006730650230111f747c2fdca2c65c6c1bb44fd5d32f8b3a39077694c8e18492d653004b38f75615ff3cc590d57a574618ea635c437c023100cb395b967513b821641b01c338fb7419963966557be3af8977d26ed25fdbc54bd6356f2e7a7f615950b96d6985d25c1f0302047c435bb500673065023100f38e946f1d3eea8ca2c93a82659f74ff6c31e5db59e8dda38f962e93ce64f7bcbf5a172739d1d1464cfdca849a3d3667023017e8cb55c18a5b8c4b8634ff25c5ef06b09256aece73d6608b92fcacc0183d1db6208937931bd7f4793c3c7cbceaff490302047c435bb5006630640230249431a733b895fd59e04be0207a5364d27a41b49b7deeefea0b10a8a80919f93e6ef825cb3403075c240ce7ed3e036b023057c93a467fd3f516c3911d84d73b856fd45f4214b507cb2a50b91b8f1dd24adaac58708fb67f3dada26e721c58574c6e0302047c435bb500673065023065c620dc2cf50cbaae421e878df29b5d4452603f444d1de11ef6d41a5cfdf105dcdc8a1c92ac0f945d8d870885c2b448023100dccb12c07c9aaa7558914fb37657c0ddfe1ae2829170f11cc6fa9faca418f86b7c69906598dbd2804cb195c924e6df320302047c435bb50067306502301f7e5b56f9ef04f0bee9cc9589a20eb4cc31ae1b78f738c9f8997a4cb1997292e6a62c0531dea3855b68b30eec9cd2a7023100a91c3f296ba8297e879ed94418c5132a7ddc039a5b4af5767d8c90ba4104f7be27a9cc0e8ba456f023684be6ecf5dd320302047c435bb5006730650230599e630c7ba3bb9358f02e7bceca880bf2727e178a17a690185b1c79e215ea67ae03415c90ce8cf8a101b775b31139bc023100b2d92bd6d90cc0fe1be30d65de14a56447d78e2b4d2b139afd10c206062f99e0ddb5a673ef30f27a5c41ef9ea28b5e510302047c435bb500683066023100891355b475ece261eb0be4cbf41eda2a8362b818e84c78b491ed402dc8e7a476f895f663f8e77b5b889217562135abeb023100e6040c153096bbd16b34c07157f6a95549e1f68834c8d9949092ba178cc5fbaab0434fbbbc867b919f0851cefb7a5f470302047c435bb500673065023001cdbfc3763cf7a5e9e3e5c762d981a2c499aa3d5ec92fea77279aaaedc96dde47554231dbf2761505ab6b982dafc6d3023100c908c32811e53217148fbe294fc7f6f779091baa06f0f6efadfedbc1468f2a1c094d896eaf9f048a31edcd3f13e65fef0302047c435bb500683066023100b75341e0f6c122d92d89cb1b0a8ed1fe9eeffc035d2533325b943e7beaca133418c5a9530db19899c67b93c026f58b02023100e681ce17995774d5d3de5c654543be7deec14e7eb2f4b95adc75bb7573fd1cee283bd7a88afac5fef66e384175b78e5b0302047c435bb5006730650231009a55e25f4047ae4a7b653e1e0e79d6b2cf58cc80bbbe242d9b65e7e234663721347ec0b17f4629463817bc7a71df0372023061011057d515160bbe059e392340dd5cdead8f8468f4cc8ae532930374bf80308e500700ec0522e9f46df3fc23390d380302047c435bb500673065023067985e942283ec2134603722b4a3d1c04d69990d400ce57605eb5320e0629476f6b4d858de90538e5a6cd68313656550023100b99d557ee7ecf338f5f7508f43d49f45828bbd3f4709327b68487a6ab27b666a9e2ebc959b10ab158179cbd3aa6892440302047c435bb500663064023067a74e93b390a10215e41241df3ccd64c11ecfae28a0a920eefd453af6436ed3206f6068572f165a2d38d69f132ff58d023034c33b5df96acfdb00de2c97981782dd111a594a45aba3e8fba5d624cc379dd7e7b671d6b65f53717126c01dfda0a2160302047c435bb5006730650230138dcdbee245fa3df02260246d19e7f163b192174cc8a5235fddff00b176a09d747842c3f784c6cc95bc048bbc8f078f02310099c3c93e6f6aa15d3dc3555a953394b0c64d403a26c2b81d8d873a879c43a61372647bffa2e05d85b6c518890b912f810302047c435bb500663064023005e14ee5293cba5870436d0b13615faf98c5790e2b80c44ee3afd4e7fa34fb6d4463193d8724c6fd41cd35187528c50d023021224dd1aa8865c3181f443fc3f4ed7eaada828a19ae782b0121e0dd97b9d3eedaa2f9c914c62d01e9613ddaa4e386dc0302047c435bb500673065023100a610f6c40d5cd0b203df3d1de4a00ea9ac494d5df8ef13c27c0a43eb8fd4a890a3edf43617d9350a8922f8743a9de00b02307238d0aaef2e2304c15daed9203b967da4d8e7d80841f2b9097d30f3d34ac26fee205ea3c5a67cbb05ac261d417273e60302047c435bb50067306502310086f062461439e21a8474ece17d2b04fd03376bbcd3b8e224020aefa6ee0fcc6225d53311574cd043eab07f189205c98e02301240d0a036fa69d6b9333c9e7532519af53e8ef81a946a6f84e572682b0d8502dadbd7d40cae5ebf194ed6a04b3040e70302047c435bb500663064023066f0fc7453719ba6227c93b011f12d909946fe72876ad6ee62283b963d2b690da07ba53a986e7ea85b77902915124ec602305cf60e9b9fb38bcc18e4704a4679915bde28bf88800dcdbad62f9d6a7649ddbeb2fdc48820cd16dfd5d01572a725a2dd0302047c435bb500673065023100f6d44bf6f4287248850cf66c1852a5431b1c3fa033cb85144f77af291a638e5600597fc5d23ed9cb2a98694cc55a0cfe023039385e66dceeee65ccffab2fd991b00324ac5b51a9478701ef5e56e2dc7763b957224fbe4bb446eba5eacde65eee1d380302047c435bb50067306502302a53fbfd59dc970205ed4fc54ee9790ae25dd4b5604c4621bd4769b10eada98f237b0fe6fb4bb64cd907ac31a09ee97e02310085a7269220975e5bd5e4168d7c8c5768f7db8dec23fbf952a56e6c3508aa8ca76263ff8c10467aa20e2975e3e379f4e90302047c435bb500673065023100b5e60315f3c11f6718ed0b598a9689a00f240038c4877e2237c938950713ea1971d4858b79b3e2e91a2e978aa2d5da050230739b8a27441f219350a8611de9ecf1b5ebfb7f095f8036b173fbc4a7e34f702083ccbf7d2303d0f282eec71329282e260302047c435bb50067306502301f889b71af4d231733e6e658ef84afaf998993690515272c71b2415641f1f5e0a721700db4cb5f02de14c117d388461a023100b7158dd69f89b913eede26b3a163e7687b664b268d45122f51eb8c65693c466e79a291fb9d06a8f33db8bf083fb4b8590302047c435bb50067306502305f9b489e40183f39d0a1a6a59259d35624abba9c8c00625eb9314d7a0fee2d3aeb2dba53979038ed88766d2cdd74a281023100e2701c48b3b6f5854c138d23b403a662cf3d3848c00a1b8fe96e658fbe76199d4c07c5b7573dec44cd14a240e0efd1d90302047c435bb500663064023024dd767dc6e839d38dbea19c49a8828f2c93a443b0ef39140b30af83ce48194e4d8b893bc37d72e24cbfb4fc70a5c40502307388fa3d017636d9f5cc4739fb1cdb556d108cb65b11873bd6b73a2cc9c524f8d60255cd7a713ed58f2ae69f103e95290302047c435bb500673065023100fe7775760f8a8deefbf5c4266ea5912dbc79fa381ebddccd6ff7ab65c8687e4e6e84b1deedb27375bb7de3351c722b1502303d9b34761062ab59445e4278b94371d40a1f15d4ab075f2d65544aeb082c194eb8dde0d63b7f6487f09c148c997f40a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023048cd1018effc612e353df9ee172c34fef9ddcb2c8d7f7a2b43f98426698e1534e7c05203e9b943f547c8e22231cc24fc02310093990f9a400699a9bc92856fb0db8bc99261cb6c90511caf1fd2a7edcc92561abc5c890ad0727177a2713ee4792146e30302047c435bb50067306502301f790bf7b96f37a9d713cfbf4935a49281226b3792e35ee3d3814123abde37f251cd2286b75707b4ef9f1973f821c271023100c0c9d99d68b33dd4a7490793f3276f38e32eb3c72cfd36b87525c1c392d64d78d481a81b960fc5ed96e91537e51d12ed0302047c435bb500683066023100a8e533078ab510c2589ef5b653b25c52ebe31c706810b93c607def1e3430c7719ed19437b2761864d1bed41b57b5b7bd023100feceebd234397f58a06a35a43f7a7ce337ccc322ad33287d3ed815ae1de96e4ef0588543434df719ded470a4feed41b00302047c435bb500663064023059c5a1785f247b31c9d82f1dcbf1ca812155718117a67d6b395c23c2e90671af08614be5beb0f241f884a946a87f662302307c4e3a4216bad8cd46cf6794f8a3311b941bfff3fe7719b8042e99bd66429f306b6298292a8af1f4931dacd6ea13c9620302047c435bb500673065023100ddef977255f2777c628dbd13befcacb9e79c8087ff2a7d10a9be530f4f4bed7fd5755ff7ed62f0d937df99a2f42f82a3023014eb22c9e4a3e30f215375f7dbf204a37c32b277e3b3254e4da1c97471877eb1d36055430d3a845acce85a44af308d990302047c435bb5006630640230436255a610b0fdd397dbaf747dc386e821b0f5779e6a5ad61cafc4b31236c7c9fe9efbd1bb91c56750c8b3c90012bfc1023053ab2df695f690d0834db69c0164988731072286e9ebcf585277273c73613fd407b3380fd2d933c221eccaa2b3d6e8f10302047c435bb5006730650230061c9945de9f4d24dd3a6383dc262e34c627b03406a4e3f6f201173df5a9183acc2fda76b001d8dc660d04f64e079d22023100c1e2d5a5c2eb0fec520e4786de607ada35617c0b8ead88c67d8d2b66e8bc02c30cf7788d4b2125f2a48d8fa5759e95b30302047c435bb500673065023100a6b12d6bc1627171493ff36b59d5a52a3d1f51eb9420544883758b46a0453324e259db6d278318604d27a3368163548b02306bb9e2e4daa1482c3f82308ab097c32c714200d9c8765c3e1049353593f57c09e3da11102628856de7719b18eb3328270302047c435bb500673065023100a168858d3c16b99b81740391076a63ca6bb6fd1b220a6fafe84807a757bc4a34fa426750101b7641b0e4f652cbb22fd5023008a24877b4e3be5c0ceb8c7bed82753a39c76881498d2c90c9aa3dccca61cb98ca6371c00588b16862f61e5e022f7e1c0302047c435bb50066306402305cf878f4ab4da500e6eb9ac962d823d105fec3b4207e4824156c514b5672769c2ea2c864cfe9842fcbcf5dbb7cd570e20230240e44781c22e751f9c8d7c1513fd6991a2aa94c1896c0d45c7b2445af260d3041293e7743ade817c0cb948e94acb7e30302047c435bb500683066023100e28eb8f8ab5dbccf0b8cdc60ddb94c2eab0b3510af7edea61a8a8bf0d74e3d1e9e92fefe9d94494c8194be1503fafadc023100be57f73be783894ec959185d379a23967e78a6d6d062788512bb4b5ef588a050e34bac68f4477fca78e62a2bb843cb660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b490200318034eb48b7fdf497b573e9115a010943afd92d18e504897ceacfd8f61d519dfd717cb1ad7080db37a10013d02307e1668c6d83dd3e12e32b0984665317ffa2b04f12f4e17866188dc2dada1232adfd6797f4ec8f59f5100b92504eccb5e0302047c435bb50066306402303ac937cabc581cd45859d59fcaae958f6fa37f2e388c29acf4d9b11d5351701fb5bd5b0f96751e66e99f547e39df2b8a02302ebf848a22169251d7d65de4b7deb0558d50bc3843a4b21c0aa07a0fe3a93abcf83f686e68b805fa878970b109230fc40302047c435bb5006730650230053d8a7f845565ca01d8bc43b7ca1c6d689103574cfec061dc68f1efac16237b685ec9647f63aa3652daaaf55499673d023100b50b03e058cd4c82ac3458c3cbad55d1cab65aea5d9702a2fb66453432b63a557f8be011956b831d1e854bf3fb68165c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023016fdd210b002c509fb13df224da79b90cdbbb1d298a44ce286ff9815c5b24129a11e7b2fd056dac8aa80947072a1acb4023100af0aa38d5731a231206dc8d87313b60c11986b2347d6df2c02867fee3417410aaf64ecd819be073f209bb223601f007d0302047c435bb50067306502305587d55fb236040a9e7832199423d974de57648eac98f18ff37116aed04d2cb93004ad5778f5e1d6d5489d996b0c930f023100f998b33f5874e95daeefc8e1be52b8692ab1a8068a0e7ceed4fac297b95501d5e5e5c319bd9dfbca728aae6ab93949490302047c435bb500673065023065e1db7f2b098fe3c21479ac6b821dd59934c08946eff3b44cdec1a5a2a2e9765c55c57d0cf76a6a5de475e23b5d18a7023100ef4fd25719526a2ef891e079468e21e670ffa392377fd13f553f4803fd8254665eacd66bcf25772380d3d69373317c0c0302047c435bb500673065023100acd5d3f33cf668cb2677a6a1123e0c9d7e01f9452225adb6d5f2a69983753c5a1529c2fc42a1d6e2bff1efffffb534c002307623f91955c806e3ae43f880cb191ee3295ff018e4c5944b72541df2943f5f6fb80f8f35cd35813872e7f80368ec4fae0302047c435bb500683066023100b8d0ed79058668feaf284f59274f8010235628fdadc168b2258d19a03d0e649611b27eae08ab51cc528e80a11c54965c023100a96aec5d453440e28a419bd4a225b9b464296a1ce0a5e78762f682276bb9a1898a71112bfb22df34dd0d3262541d492a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023077516b33f451e4b3fe35318bf70a9e078ca19d074656d1c3bcde3dfc0ed65679fc14a0545cb882751b58fefa99ebf11a023100fc2602851af25bbdc629c9d0cd2793994940973c0819fec24f84e5b8ca68d93df130cae1ce6256f35bec1c30d58ba6ab0302047c435bb50066306402304210dd6301489786527a77577cff89511eb2d982a6d4c88794b3f877fe7da1d9c7bc793f92f67d7a97c032b16bbff63802301be38f2c04ee36b429303ce0a3b7f33f51245a993c57f851661b13986932d6d661fd81f55dcf715c6f3c19fcdb715a970302047c435bb5006730650231009424fbb9b6d0e447f2202298648de1b3389228ee3924ec0044a7fdfc297d1118ab4c3463d9b17cbc56de6a9421eb9abd02301d20c8ffd95be7a322f6238f6ef9fdceefd08e08ac8e417d8cde9c5e6c2e3a27e0d46f0fff4409ab4bdfa31f5f59c8e40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305788c174aa79e43a2624561481969267c906cd49222890557ebbfd3452440b59f5e895c72950df613543497d40597076023100cf912956a0eaa9435ba1bd9f5be81458d6a5f72a3c0afdefd360970d70972748f379b07963f952aecf9bb6922f8222350302047c435bb5006730650230644a449ca9d52f5637ccc962f9687072cf5d520bcc7ba14c93bb2a270f39f132b79f3104e10ee66ee1ff6bc11b9336fa023100c0b1f56d5802a3a208f7b6ecb1060cdaaad50811ae74b3a85b3155d4a81cedb777bd1abe0b51e9add270b2b002fd87790302047c435bb500673065023030b10e60c1a69e662890cea1141d8bc38281f1f805ef21a5f093dca01e56cf108953875d24998e8dae5c74dfa084f4f7023100f3d9b322740aa2d3b2ce77c55f4da7d2c08c288d4e84edc7206b01b7926635fdf23e31031dc88772897c223b6e198a9b0302047c435bb5006730650230453a3102116d453fd8b188b8a0a0aae90ccfac1c1656b547d3e23d1203616fc4bb9bb4f04ab8c8bf327ef015fad04987023100f8f98a95d043810270733e4f88c52409f91ec2f0d8a007b1feea98ae20ebe2534742594e22d13985efdad5c53255496c0302047c435bb50067306502305efd6e544dc60c86c68f68836fa2d7043de6865328e02a9aad3285b30379718e8dc6d7350707e27902a7f74ed7305864023100cbc1f367207eb1411a8094793e6437614abfe1a583bfa354b4312379f2249d1670483c2d1a196c307a7b8056bb6fe3ad0302047c435bb500683066023100a5ff8e7a7e570bb300a4bf1b2c359f29f6cb657d84f60c5725f8d71e00e2ddc62ae90d105f65f9f7ad5141461530d3d2023100d0cd37ad7f5614c45bb356d8ac679e39c2750c190d98774d20e2a6f9f16abfd023a3b7f9779b7e48fdad8a986c0f00eb0302047c435bb500673065023100bb11890b35fbf4711ad315b4a62deab0124da932e568dc229ce4e66a19b8802253930a6cfe33b3e46af61c06aa7671d2023060321728bff41487a757489f16f6a99c8ce724bc6c2cb43984ed6d5a5b94dbd3e2171ee8b41715dfce100a8aec9260170302047c435bb500683066023100a369801d4c373364a49caa3f812da48f65e828c1a26486cc79dc3a677fce56f27944f5d5272d9e52f8d79360c025b412023100b593bf1f1c654ea13e3f3489779a5565857f2e4e9c9a80dd3ee8d721d9d0e243246757fbaa35c4f00ed21b8ade89c9140302047c435bb500673065023029a239492017bb790785f662567475cb1c5ca4befec99a75959eabf733cecbbdc72534043abccdaab877e696cb5a5f0c023100c5ced4bda8422fe367afa9bebb2e702493e941a03ee79b183b40d9c62baca6f6be7a09df5a2c8f1ade9b547dab506fbf0302047c435bb500673065023100dd2278621e71a7f5dfb39fa1f3a176a61a73c1489c8c6e00ec0bf1b7fc0b293cad31619dc09575cb99fb6628aeb4ee8c0230154cc1456561b7662db2ac82aadae34f1a0d9af47b137895aa8cb43a2fd31bf696eb073823c09f76b008978261673fe50302047c435bb500673065023100df85cbb64c56284f03e2de962990e54cbf3ae776beadb706a90b698a068df2e58babfd177b6761fc863b69578e0eb443023033e7271b8d906448c1e51aab9ed2f03f7cd98e37caf583357c61c2d9e8278708d1264065100f7caba09b677cf806985d0302047c435bb500683066023100fc5baa869c89d9a8e2b845bbbd1d2226dfa92927bb0e3d489225099daf60a080b30cdcc1af4a74c6ea46e00f896896cf02310089966ad66c28018b545625e6620bd2f56fc8ecfbf9b41295f46efa760aac932562b7e39265f7c167cec6b061047962660302047c435bb500683066023100e6d66efb47b23a7957a05f9b2ab2c7097ae32bc7bfe95c259aaf02339481007ede39415f77874491177d6496d8a5817b023100f00b2815c31a0d4c086c2771e6a59ca87d4e3ca3ff05b031b15e770ae5555fe884efd1daf6ab931c3adf33473a98a5000302047c435bb500663064023046b1eeb7b133d19d88377c0f0ad65a70a2ff6c6739c09cdeff6df86091d0dbc49ef5e8c5f7e6d5b4cca544181cf63fe0023013b5e9e4911dc951d7b6ebce5ed0fdc3baa7715563ad980f754bb6aeaae962df4d502aa4d98f81170f46b394c824a4840302047c435bb500673065023100806f48c47cbc5395ac95acc02d15b3dcfcbc4a15953193577970c839b4e6bd1cbdf1ef5774c827c2196f67e45f82ca0202300fa4c140c53a2164e59014de388e875d78825b0f9877da42286233190b4325d7e33ad47c2080138cafa087fdc14233550302047c435bb500683066023100c3a76fa7535d185780716c98b5eb8904696ed8e6be0ec46bb3d9bc88869b4cc8e137797ee3e217711d5cc907aa59babf023100edfc5fbef7b21e4e9151baf729a3d27d4d6afb1ee401fee5dc3bbcc38a4b4489478b753f0d276d9e739092c8f469f8b70302047c435bb50068306602310086091bafd6e09389024e09283559e79ee0e131d5f6c135514f774c1c1770253dd9c340afb37f80e056f5d44d47983fb9023100d74b6ddd836950e35570516262865798f0c88f4fc8e66f49d571df1af066c3fde8e5afb810a62b328b07e108e05144170302047c435bb5006830660231008bbea2a46624f22ac82d653cb4fa2b1c7f72e7f933ab0193d6ae2ef335084280a6a50bb405579173e91d827c0dc16949023100c74934bed3ebf4cdfb13fffa50809ce3c2b0d088923a1b2490cf7b7338123b767e55d9b1f8afd6c1c837e4a64c695f830302047c435bb500673065023100f17f07642750529fd6a6f112cc03cd4ec0bf5c95cf0fd473d54b0b599c7a115e7f93f4bc34a7a8454ccaeab629106879023079e6ef6bcd81d2faba681ba24fdf1a4851bd9413189af5c18ea1be247201c4c1213373577276fbe2f695277c05c1ffec0302047c435bb500673065023013fba6296f6bccca705faaf55c8338deb796aecef436779e82ca39390126f1f11b19c1304e86440c6b5e98a2beb06c04023100890dd113b3a0a9c3e5e20e0df01625c89d85fa5e1f1de6e40e66651de83f43948d817c2dfb591972236f8d0eb64466380302047c435bb500663064023046e095b9d6f993cb034b4d3832852d144bcc038e216fc5568fb0307d64d1aa4d5053d2cc0d088be03e7a6723cb1e6f7e02304e1c015575504a7408b285b7d493a695c5e78c2b6a78d8ea5d5fe732ea88d817cf3377b71eb759c559968d716c1beffa0302047c435bb50066306402301af46763d6e42d4ab4efb08ea779d7684735096babc98c856cd5cc5ee8adcff0497c3911c8eb8a8a03e4f5db3cf4e976023055697452dd6a09a199cd925b9444c93cea57034ca20b2aa2dd7e798f3045dc7d9a566623382b6566ea7ab28be5b49f3e0302047c435bb5006730650230753935571ff443febe8684e5be8177de9e70e1187f4ee577d3702c00d582edd450536155b6c56f01725f0293938b061602310091b6b42c6f5d5e027c24fe374b90bade3ef7e7870d76c97a232e326154214f28a348f87b168b86e0c01fce3bdb4046660302047c435bb50066306402307f8297127cd478cc05ec6b7cdc3796634ebcad6ab5ffcadba5f35e8979711cbc22a85a1f42de1ee62156c2212fcf126f02300a8ce432d97eaf2e0822b1aad9c5b2c5e350e03866d5a80bf2b20eff151ed27ac48ce05f6dbb50fb01467c4741e702f10302047c435bb500673065023100fbd625f2270464ad10a92732e247b05a9ff2e31683c7cde03aa3088b395654725c5859857a0072ec7a8e95413bf1a44f02306909e692de354dcb9be99a62a15cef4764d753f1ec1820a74d126507a214c5d49478995d0fcce7d657f70b2cf84f26a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023029ec4d3e5ada2ea8564b98475ce720958a057feab9be69320b4a0a5cc64a5c779184c273cc7f19245da9924665e593e902300d5d095eaeb28d4f84a88b48958f16b133288086b2448a0d2a7bc9bdd56428ab6284668fcc5851c00b03f0f93cd5efd50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023026eec734c4b0ae7136f5eadb034f5bf276d2e0b390c3270be1286a42c178c75baaf9a08172b3625769a19d83ecc1c29d023026ffbf0813afcb9b66f2ab9b7df26287fee4f5444030597f179d3a940a1209b9ba1440026412e3b0481f7092593e4f7f0302047c435bb50067306502303e328c7dffe04b937cf88b8824729e77a7cb30a32839e0a98d438d07235ed8cf4be6fe500ecc7addbcaaf8496309f35a023100918a0be64b589d9a4342a2ef9d8f641760a0cfde86d1f49f47090875a48547973af2003eef42e12c7b0e6681cf2c0abd0302047c435bb50068306602310095bf757cf47f18ecdf02d32019bdcfa0455319a9f74b2625e3ea49078264afc011a366e132e9519a369972c20c67558a023100a8276ff1bc2acde59a6ef1e3654afce348c7487bad10911410852cabc4ac8e5ee61abd79a0b4dc5a93985d87ee6868760302047c435bb500683066023100d3c3c0e3867d726703066333f51ede02756556f6b6c96fd0ae0b2904c7c518f2b96b0fc7bf0d8a75c4b86d1a3b727ce0023100ee0a52375528bfd8ec983fa0b84c9d798a3dbf379d6ae16de3c7f4e77f0ec61b18512de12362b9b46efa5e8a279b4b0e0302047c435bb500683066023100e7a72e2df67453388d2d4433c3e99519fea1b309f9bf336ae7b55371e6a215356100d6da7860e649dd1989923f1209eb023100f70afd30bf2233b18669162405679879c734b93da9dae5f07fa96e1296e6a198da9bf92c9519d5b3cfaf60755237f8030302047c435bb50067306502303550b491992e762de04d4fbceaf0b764d6f1e9093a2da201a97b7f84839475ab592d0f5b78579f7280085324bed0198a023100dd98ed3b4947bb05ad8862eaf266c1fd698dfc539615f15697da0ef9882372c20c36fa38ad7cf147c4a419ac76c413690302047c435bb500673065023039e929134546fbd9ee52f4fed01057de016e78ebc8fda3ad9a3edc37f96a69608aa9210d30e813cc720ea5c5d7f251a4023100ea23784c84e9553f752692b6ec893bd076b0ca8cce4c02b39eda278ef1d78b2d40ad3e4552c3de4c8a0a7a099f3c15b90302047c435bb500663064023004d71824a1e1cb216fb7809093c45b1462c22183aa6ae0f796f87b64d3135811fe7da859f1563bfa60284f3a0eb811ae02305126112cafdceeecde883d5537fe5501f367b596a9f9e2fa277e8cfca8ba5eb25893417a0bbb1b3f22b64e563171df820302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023030f24685fe44ffa258ea4a25bc122967c16e7998f9d904f7c92b7efbbcb678bfe297bb711a46b33371e22c727f3cd4d4023100f89e1a696f9cdb6bd07da9e88d59d9f46ccbc3187fe666ff8975e24e12e4035d8410113281bc96d4f86dc9b3383d75780302047c435bb5006830660231008fbcd26729c795cf1cca44d98fa77caa27606dcd6cd3d0393e929827f517da61e3d34eaa4d883492b48ad9ab70b0cbff023100c5c3751b3a6d1d273b718a49ebc08f583764030d0aea3c324f15adc016dc259b306d005b5061126cfb952160999f7f880302047c435bb500683066023100c0b5f51ce529bce2566df98e2dc0cc854ab6316ba9ccebfc50e176a215cf330c0f50ef851a257bf2a58033b648d01bfd023100cf02ffe19e74f7bb4bf55f42e31be04d906ab3c89e5600fc7cbad6ae2753b9b880fb235258bed6a3299d5f657a7e94560302047c435bb50067306502306f76a775a990d4a89d866d1619bfbc6c980e3fc2a75fafcb275004c9f68cc7249858b723fd8e4923270caed2b765c402023100b762b3cf081acf9910ce181b448274981610261949bc597ba46ae1425cd0c94d947ba8024070e51ff766f12440acc4530302047c435bb50066306402304116176bac41c624e8a9272dceab7245f1444ee4a1b30fb7c95c5dccb22feac9d5dd7f7b65ed184821ececd10d46be2e0230323eb889827e46ace114f624444ddf9c2cd8efa1c202ba517ead8647e33220b877c83706bceef6e0226ce6629432f8820302047c435bb5006730650230275c6f766807343b04524cc4f07043eea7f728cc0678ccd082ced115c7ad3ebbe83ebafe5172c1c80349d7576bcef7a2023100ab00f9a9dd1a70163fca6f1038a1cc8a7d8f72c4c621d3f91505b3c0de39a48a7cb173a3ac26ef5ee008cdff6c34ce6e0302047c435bb500673065023100b55c41c264c43fbf09eaa95bbd41b70993ad55981b0b1b85316f9c9e6a71ef0a6adf957662b8ff82649cdcac707cb67502301af55fec898f25dee5a86df1b2c695d3a407d2d122ae3b1adb9fa1fadf87532c8deb7be15f883799706c63bbebfe96790302047c435bb500683066023100ff8384ac95940380600a0b6fae13743f7c0e1e0599a66e3fd292564d5648764146b970dace8dad50bdd8ec7ba39070fc023100d1880426918cabe30052ac96cc70ed1305b0217f4771a73cbe844e6c2d49392cc79e96cc9f3bee0b02c00a98a356b74a0302047c435bb500683066023100ea21e0120e093f4ff8b9b2060b43f8147d6b50023c619be81d378ce1a4605c9efc3c5e70c7ebf7de875ab59a8e33ca9a023100e548971db48d23e5352dc0b16adbaeaa3d81f31228b31143f6db3798cf922402addb1c30854c75332df9cea91c6ba6ea0302047c435bb500673065023100ba7a4c4624aacb3bbd0c3cb72cf1b58813eabce903811a667b9ff8d29bd788730aeaee453ab7bd8ac9c389ce858de9e00230777fc5fc201e0b720b7778358dc279625a0480bad4a67130878c5836d6bd480cb21089983acb7f3fe9ed6828e43483720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d9b30bc5c10f543fe8755eb35e2f8f541533e72645feef3b17a7ec6b78a4d94b94b5e2ac8dbc6353ff6810406cab67e00230141abe672e1b27346d0c3703f0d9358e8f0071688307d21baa7503b32acdb80a399574fd8adacd8b298270c6993f97190302047c435bb50066306402303b767cc534d6c836def0627c7aa28fd674730547a825935def22e19d3cad659933bbf66b98b27611f94545f84e90391902304f5a57d274711a94175ee3b989aa098a2e34fcd641dca79652f678c64bfdfe97390232fce26b1c26075234d765f711e00302047c435bb500673065023057e412f2e9e9802edc547b5e1c0b0cfb16f1069001f4f8f46ab1bff50bc3e74e84952957e927767d0ece9dec7c41fc59023100def05db29eb5365545a9522f6fb6f1e80e791cb4914a5db9dec2d16c5ea218857af7ddedc0ffdb1077ed9bd7a7c4d0dc0302047c435bb500683066023100f4cf5741c201000accff7a045e57c398da72651d53dcdf104008b0534f33411cee8ba061442a2bcb5c8d29ce0984530a023100f674f0f2416e767446927e1c8f993b5fb42714ea0dc01bbb833b7df75d7de05141a0d08c37a45c090aa98b3300c732cf0302047c435bb5006830660231008650e080d84b29bfeb98e22bfd485f4c8cf1fde18d51afbd5ab8d93cea6c5e0e5698a583c7453f79c0c163c8ca375117023100f5a2e4dc87d5d3b15168d63406e0da6712ac3a42b4dacca24ba4f7b6df6c6726677cfb6596965a397e1a06d5b9d0a1710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ce197a30a0bd97e0dc33211164a8b524db066f5accad07bb9c736e3e5f3934bd1276b4415813e3a0109e1b27877f22b0230054a103ac9575ae9893a43baddf6478c5aeefb800799645675e10be350ca6277ce4bf153085acd0fe13581691dd737810302047c435bb500663064022f4ebf5944b9c7225179f159d62d00d5c9ec845f4757d630bf81e0e74c354a8be3b8854113430063fe3d22b1fde8f96a023100933be033ac1c13fd93d4173d4c98936a6248b71b4bb639da3799e75c2c850f522d66b2807019bc6634d6a9d6bb6e9a4b0302047c435bb500683066023100ac08f8ae9ff900d335b88ffbf44ec9438fd6390c8fbf8fb271450084f5091304b73df7d2595c06294816a12481cd45af023100d6152c576111c3a39f8d654ad576172f5ad8d085d2474533062280ba81bf9d6be55183abf0146222f5397209dc00824f0302047c435bb50067306502300cf6e22eda9446a821c4eb426ab73ffd22310447796ec2ff5ec57bb912f1efa4414863b71d0e49dc096e0b59df88b7c9023100a9121e057293ac2f3d751c0bd541141b6947464912ac69cf4c33aac2d2adfd9a4ce44d2d7fd1294c0001e7a547759aad0302047c435bb500663064023070a47c49215e87c62a3864e083c4cbae8f152cbc3ee651c5d8795bd4da5a2b361ad56704a22e599583e30eea62bdfd9c023026109530dad7c529a4ce163cbe66c9730b480a55c345420442b2078f71d75d7b4f74ca5daacfababdd3c5e708cdb0b7d0302047c435bb500683066023100dca5f18ea9df7be73778e90849d6dfbb8aa2926be3e14b899c0859c5b9033bb43b04e6cbd93f5e86374c7a39d68b9985023100ca059f20c7273aeb94d1cca28b04986cc026e17fd384fa04a47a3898c74dcd28f1b82bfaf556dbc49226beacaf0009cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a0b39e7fbc8fc6bb554e2db5a56bdf3535504969f93e9cb4f28ed8ff7a9461e96dff68613a741e13f96eaad3f028a4a00230736dc06452ef820a27cf1e8e6b722a43ff372cc76159f926ec8e23fd79153dcdda2c989e420b6a8c50ddee83ef1e81100302047c435bb500673065023100980197f385f1ec2755d8c59eed488f57504f611b73e8728d4b255ea04b35a2f1a6590bc7a89cf0568a652ba37b6a3ad7023000fef71e175df1ab152d15a4515dd57083a5041db86f080a999edd683f4798afd97f92135704e4120fd5683d94f242bd0302047c435bb50067306502300fd854352c9f6d5893ab8d3754d45c3b2ccae448dab27da8719a323ac4c9e4149236008e89f645b571ed99c408dad15e023100efc6538c31cc1f5877745a00151d4e6ed3ccf537297b23c01dd27ef6204f2002056c0de78999eeb05c28c3f82d611e360302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023031e1fe55245fbca724e63dc814d1a183125e0f3b25a93ea5ce308bab182b896674c73976398eecdc3e229299e6f28f65023100e9050e1d5bd7f7fde47c5561d9395b3af7bb130de50306204c5e769c9cb6055d37d7f2c55ffc293b7b1f0e8ee684ee770302047c435bb500673065023100940ab9d23a343136938f86e5899240097a61e1f7730fe05037fbaf732e09b662d32fb9b5a453c9334eef3abef0359a1602301e9e34a0652abcb62305f568e675eb7b56a3089f57cc08abb2d8f42624db84806460009e97cf8c232f82597cc58ccdf30302047c435bb500683066023100e6e6b9d351675b8aa3cfbe730ccffd274f82e699b017c9d58b0cacee8bef78a26908e740daa5a3c2b3cc9fab9433ad2d023100f459e0a022a43c86aeba2f6c1ed39706c644619908627b8e2c44b06dfc37915fd4ac18b3fad7e1c41449de4cf4d3fd290302047c435bb500663064023026ccc12aac0031acc5e7f0405b0aa47f41206022bd41eb7e4011b8195a7f50eba459a35b8380aea2db168f8d173d909002303055bc7db2e9d38192b3a8440ef53e9cff285d7cb0bc7bc0f102d88fede8dff8a7ae4e04e1dba6fa4e0c6027f81a2f5d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301353f76c20e03cfc86c5f539df32ba891ee01878c733fdd3d467ec801491d8001f4480d46ce6d007be971d411d36c656023100fb2bf24ac6bba56c8be0b2e67773c40f22ebd566df3719baf8d3b15d841d98c8f86cb75aefae43f9b42a6cc1ac52b1450302047c435bb50066306402304758beecf23759f46175efd70c944780817cccd4630a1b2aaf7ed4f572b6dfc3a434163c646b6b72c0ba64fbe3783ca802302034f28326653b66580436145fe7af8c5335431bde56f70061dd0c082e2f1734567003be9f9d09f39512151c084e392a0302047c435bb500683066023100d35209c07302403cf92fa18553274e134ef4ad0184e51cdde693e5296989cac6688ea65e0c79a7de728c1d33f7c2ce26023100d8427ceca0676b49ef09e9991fda4819a6ff3f115ed6b5336fc4a4629d4171c0b8dafb473a58fd26b134d7088ec12b830302047c435bb5006730650231009d05baee398bda95b43be01082fc40fe005949830ffc2f984944ccf836485f035d149709b35ac31988c0a5bd16b3bda002306175ca205fd25bc1af172e0fb31961242d9cf806f767fae8c867606a6fe03e5f6e092e3dd8351c732679cb220325ccf50302047c435bb50066306402305654a78c3fcbdc78b34d6aed996aabe590047e3faaf48d31031519d0ff4c7fa7bd9623e19b5f4e387f9b758d84e71edd023047f4020681d13f613d0dd5132118b87fc946f64932c0095b3f6e854942d19893b73c99da8c38caa075655f73a82ff2320302047c435bb500673065023016c0b6514746dd3b9164f091171aee23f7d99607e612bf3dfdb817411b1813216b49da7899b1676582c97f339436a1f002310080b086a3ea61c7f057e0bf135749379f98d0b6afce21504f26c435095d42e5c592389daa5639ec5c18edd5aef8df20b30302047c435bb500663064023033a5a485195b9bb4ff49a5e93f083b375009c633cf9615dde64857a46919d5a8d5800ea821e0ad8c138b85c5091658f1023020a3c141070060ff84f9151276bea635a91a1e71d31e2cc1c073985191d8f49543a5ae6dd7ab02ae5bbe8713640398ef0302047c435bb500673065023100ad070b5e1e0bad6b5b017454e84f49d3d581039d0a1e9882ada86ae0d8f3ca3bb350c75a58e2dbfc193bbec856136943023062c4384f51ab72a8f87db0c40946681a9e2de9138e2a4af6b4705e5f354bb0c3cf308c996ef82ff01a2a056b5bd74d0b0302047c435bb5006830660231008dea6f441d2de97dc21f8e1ae52389c17f96206f62e00b0135fcf7bbd619da0a0927790807698c987e3d64586310dec90231009a33107c80642cfb2e35730defbd45e8b5eaa56ea87094fd243828301e764db15e291655b8849cfd17e992b61e0d34830302047c435bb5006730650231009387c88e394b09e2e5671bffab337cf17e395b9ab2aa0ef71eac54b630ba2c0bc132abd6ab6ef2e9eaff7e5eaddc87c902301285eeff8abe91f90de8f26805f9792ca9d6322acc1d4b95b207e2c28b79c0a304036a1abdac28966ac449039d90bf770302047c435bb50068306602310084697c9518e3f6afee595671c38851d9444f5bd85576b721780dcf016fe2e4f130c2cca5f50757b1388fac8a752dbd69023100c589105bead08a99b22176cb3ddae42366c4ad5a22d3c60fb1a251869afbdd3f5672d22b6cf02f0b5458df1ebb8d2f250302047c435bb500673065023046cfa75092bbbdf35cb8118122fa5fe56f26bb92761104b686f82c7591497f43514b3f052c9ee8c92c99937a75fc1bdb023100a5488d2324a57c3ea60361df1bf73ce509a941d3c4838b6355824063efebcce28c2084c0dd98d3987c5cec1c5ebda3ef0302047c435bb5006630640230078e3215ea257fe06670750e558b21572370179c9afc53076c26c4c3a99f9fe8c15603796d47f67d03081b5983a5e6ff023016a4579fde566d8d16f44eaa4d0dce575c939a96552a5c43900d86c0f10a1a909b8b35f6f6f97561c178dcc6542de49b0302047c435bb500673065023100d86a34e7b744610b36b28605912418688dc4b2c84d6bcef5c081a42f5ae502f786e2d9dc858f97482ae3be4fb017a4fd023075f113c49dd5e6803276cad4d60ca64c0b63ec0d9da7173def352df5214e09b2819cccfdcb84fc74ec02a0adaf24b2870302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230684ec9ef4c766e7b3458530308b08ca892a19fb553b892b02a36476235c6a8078aaad686873af0aeed0dbaef5c384024023100e3cc0689a1ca53a7a2d09dac30c580268549c46f58e8271c4f523731cbe5d6af1796459cacb9e0bee3483f7c9183cf240302047c435bb500673065023100afb2a457950db5b2bb895319364db0ef054895ac14aa9856fc786ed6440faf69561845aa8b95e13aa4f2f509a1726d6e02307fadf0239d4c5edeb2998cbdb0f568a5442a1dce305e2816e1fe088579e677b50b8e3b567c90577b679ba98d53250df80302047c435bb500663064023074af0eabd612986845b6df4a69c75b85c17d2d3319defeebfc0f4da8186bdb6db9066575b37a5646ec0a42ee98e8c9eb0230614db3c171575f3adec704604ed6c1497ecce013826b604c302dc62e97a14db5084d862c8c255e1e33c63d8482b7f1680302047c435bb500673065023100b1858740a162001706d0db6900248b3f6df34000db80ce7f769029a83a88826a618a326cc0c9ee5f575fca2d9333ead302300badd3c34ddb16e8895ae83aab49af6b553265396a565e74cb19bc199afbae68b96916e36b17464d19e07ef0b7b4e9e10302047c435bb500683066023100ba479b9332962ce3719bd11179dd592038845433eea8d68f757ed67258b47c311a76865b0da24a69ddbf2a97ada4b1f4023100dd0927edcd757902f570efcc651975768afd074ed2cc360f6c6195ad396a363aa0b5cadf90aae0c7a79fd8b77d6a72740302047c435bb500663064023054c47cdcfbd8e6c9e07c8ab59b91e48856c6da791e083fad261f1936f565e8104b54fef919edf85c08d17dee08382d6a02301c7ecbd4bbcb7a04aafe62834d5899b6ea269ce438a6b48b784830c54f1e5d9fe57f58da5da5dfe8d0fa52df0ea87f640302047c435bb500673065023100f109cf951bd64038d952b705f0b9bec6385df0ed551e0a15d5795f0988ea33d6dc65a64befee60b46b6972bd450db4e702300dbd5c4b55225bf182546c7896b07fe26465fc0ce58858c1be92964e1cb148ca9ccb4ddae8e3b31e1488c70c3070bb2c0302047c435bb50066306402301f79a5a5488800bc538f0f19c2ad191d4f246dfdb67226f42a047a16578eb7539b1fefb0e2f01e601e1af39a34ac3a5f02301b59fe330657dd95dcfd1d4da55980f30a60b7990bfec1f42814ed1144dd306ffd3d4eff59312161091952fa46a478d50302047c435bb500673065023100d15490f660849a5715483ffa9feb821fcc833dc8d85cb4fb738e64cbe27f7b97e75fa0c5e2fc76ecef32533335a6c402023019f7fce8a3f53cf241f7ed20ace259fa661f5cff2063903245c339c9fb62a3cdcd9ba38c943c9c277142b14e4293e3c00302047c435bb5006830660231008b3144163eed68405232c8e890ef84e6baec6404fefbcf793517f2969d4d28ac85f2e0f51f727fff43e86e22610df48f023100b7db84515aa5f727849edfede9d9045c4e39bdcc5ab5f4fcf19df8e784f7cc1ffa5e3449901a92839d1462cecb2a0f510302047c435bb500683066023100f5ff2a2c8ad8893b6d8dba084061b0823c7bc4c827cca232a234838a904594421c349573a0183558f4f1a6fce07fbb01023100a913c8f88b35ff7e3aa88d5d2689857b11204af24bf509a0721c520782c8b6eed82dec34823494b8fbba56006b00a8b10302047c435bb500673065023047bdb4e80beee8ea50a4cfc4b40c51a68f32f74fcb8085b112532ea4970fed3d3939feaaa6923be36376d0610b855c41023100f07d8f507010563979362c1ca9bd0bf7cb8fd139458449be946a30002dc3f4a4ae85c9d6605e660829c5fb6dcc5d4f3f0302047c435bb500673065023100c70923023e7a07e9ba4230c20033347521ebdff8ca4d8485706fb5126d46909f70cac94d29a1dacbf690daeb0bf56de802304d93dcf0a952bd54764160de33a4b2dedbc52d61099f481299de2446c2be006988128a2e7138ed0166217d68dd95637f0302047c435bb500683066023100826c400b941a48c1af7058c84ffaad302f6be12e770281a5255e9eca6ba6c4cbc85c0af67744bf8105cd0e6f53e56ec9023100892a8adea5620a51e6729956b5522b8121c9ad077497dec7013f95b2552c6f34e42e390e455b3171d15961afddc5efa20302047c435bb50066306402303babde3736207bf89aea20c48690fa5a8a20adeafa6cfb5351fb3c85d6178c3878d32e1cbdd12e98356b4182f6922303023006a5abfaddba124dd3fa514b9aaedad07e3dc6ac548b0fd9e23fa7bb398ba0c274ea873b2ca1e32e98ba0d894375e4a60302047c435bb500683066023100ac157bc81dc641a41d5743c2e79040a04fcb87dd51cfb8399bfe66ecdd46bc45b5a96e0ccde157c8e7d582da1c009715023100d455a0c644520e1cf8e438a26f6738a05de89debc23d274b1f9c47cc682419435dd49d4957690228ab8f89beab4444c80302047c435bb500673065023065c05bf31d5b323f0faf89fa2b437875e67b462b9ba8ddadb895033f6d3283464fddef3c0985c57dac5d67c1d7a83c180231009628c9f368a9189ba9ec92d629cc9ab92c45635a5f8ec03fcd43a1371c8c134577e17bed390709fa341125682f94e0730302047c435bb500673065023062314484bcb04a49101d68480566af4e8afd3495dc47c7b60ac8bc84057aef9961e4226dd9c43f4c14716d0f31fd5a0d023100895c9573369acae7de148c2d86809f063cbae9a594b61ed0b390bb298f2860c8f37cb7f4c5067675e310facd2b7c96830302047c435bb500673065023100ff2483b81e26e3eed38ab7356a3219616b1798c7300175806d5d1e93b63a462aa4dc707b25950b44a09e78f68de13feb02302e28ad1582fed5e6ead790ee9871dfa4f0aab4507e6ebbc11cc386e8bea811639b7e0a29b1f6ce82d448ebed232ef1b60302047c435bb500673065023100a55d0e837578bcf3820ddf23c8a99fa641cca62b6797b126fa2108b1189ee1a1342edc7fdabc6c77d295c059efd2c74802302a453d7ddb7e54b19e69a7e259df490df8cc7dbfc77b224f768d5d0651c7faf1de9cdaaa7ee9a615ee98dcdc5f49b7220302047c435bb500673065023100c2850b8d01e3ca6816cc713cad8c7df8f0fa8e862ef7d9ff2bfd3b950e841b241f82546b6fe6128981d123565f268b2f0230138cd65184ed36f9032d17cd43cc8f435ad8a67dad71429ca119bf06b137376cd38c861b57be471821f539496d3b22de0302047c435bb500673065023100bc40a96ac348e7a8c20a3c1b32d7b3be6167b5832418476c98cbc7428e60385805038ffd921e85b523fed622a6b45bf3023017e6c16f8fab4718df6749ec6465893024f95b808cc5d72c85fb298c97e2a654bf01355b66a03305dd40ffea1d557f700302047c435bb500673065023100fbbe0d1360f2fdae6876fa549e850ee892729870b5c3aa57d931782e06e3c824d7b1a75d6108ad181a276e3160843beb02302cc03b9561992c8d48e7c162f5caaf98dd50c3f8653f4434fecfdec7c7106b98aea88f35bd2b888951d07f5dab85f32d0302047c435bb500673065023100876a2d51735b372d177a2c6f1914cf760600d9d21665be671df2cabcecb10d7a2aa70e9cacf2a6b1f731b3cbbc706f4202307788f71ee1db67f748a553a7c249c7cc0f1ed4c34797cfaf3538ecb495a49c76994a0d5513c7695101ac250e239ecf7d0302047c435bb50066306402300cf8b186dbcba43efd61f61f3f8ebe651958a6fe5a0b187732492b4cba5e59b427407d3f558716251050a28d6f94d4110230075f953a8e00636999d39e97593606b71b7a16f03a73b50f004c0b8ccfaebdac9cf11819718e3e4bffd998aaf988ecd50302047c435bb50066306402300fe20cd231f50aa4da6f09808d7d619a7312e36fbceef434360f29d5193ede9f7632a421212a8e5af4b49dc964f0e56f023042660ffe7d32ef3485b2010615cd13b7efb1335397d5a52423390928eb26eadf09da4d101ef82bceb9ee1005815da17b0302047c435bb500673065023100ee596f62448dc4980acfec143d37f0e5a2d2e702887d65d947a1555677b814b896f3d2b99e1e369d31cf9c926215656602300ee8d9d59c2411de06ca57e7031b2ab8494838faee6559c761595692785bb8dc6910db8a795929803231f87c2db20ca50302047c435bb500683066023100ba6338b57b8c7059f5f44cfc3d9e15e36bcf67830e5f950eaea1739dff7f05b800e25631c541cd70926e619b5ab52369023100c1947180e9048aa70eea8d8f5650e6828f6431d22c5e08df040f802f29f278b05a4cd6acb61131d868c3df18d4c772de0302047c435bb500673065023100a9ea1724fa69fc2935b2ffe5ae1199990195ee2dd60a850a99140c4b5c9e8f7d214d7fedc3a8aa6c37badede6b5a081802302d7d74215579d50ebc05a26bf9e11d816a256ab3eadac3edf6111eae79b93acc0747617b5786efa507d36b169302cdbb0302047c435bb5006830660231008661d12c494f90e011639fd5427a054b31a4976c539064b0adbd041d77a728f7847191a752b1ae2261a00d5b4ab539b60231009d088b594264adfd08c9598bba47a89c63a95f98e4e2833f2ccaf63a3e91c38e52b93fe6c7395646289926fc3c793eec0302047c435bb5006630640230210d0b8228905ad971e606f152937929445f070ec2d8851de22169ce27f47de4c36f4bac3985ecf2597408f6ae3cba5a023003a5eb2090f17d8157d852256a1cdcd0e028a67196db345678e9717e8ac7bfb3b45f2a3eef1c4b28fb618b93315e19800302047c435bb500663064023005368340049fe0ec7ca6f55b749d917d3b4bd911b6029ae8c474863b88d894a6be2c172effa3926a9d982e5282e9dabf02303d1f627251abd850f819938058025213cb41ae658ee55184154d58f91cc45687e99cedb8b8755854e48e498d8b7b9d790302047c435bb50068306602310090ea66d6b012b23f9528f9e233c7c9b70eefb63b97a7fb46bec1f7503c6e21053b8166eb817aad2005a298d51e590e3f02310092a7c2d6bf3bc355d08b361768727bc8e9f8207d5de9f81efe296651bc90f0ec9adf1391adea159aa1d0e6f70b8266080302047c435bb5006830660231008d2c73a7e88ab7b726024b4e28521e173193768f831fadc8ec8e6c44751e7a0567b12a624b4c1cc63f90b7b8b04d8f8e023100b3a457e6ce0f4b271e079b55f5ec432df61806693bda24677088320a083ed2411d66e750f3e447ba5ec81a0d71c8889f0302047c435bb50067306502300fd791249ab9435515acae4ecf79aa4f6fcc6e9320bdca9ec6a2f17f09de9cc34bea6bd1fa18cb39137b3c9f4a1e48a1023100b8ad3a830c5b8184afed9b393f02e8b58656609f866e6ffa35eec26efb55b581b29502af057d214ca3ac98106f7c312a0302047c435bb500663064023004a86574699764d91c0628378a69f051ee820789a54ffea0f499a13b89dd8a5fc2f875f931777ca81c19276c47b85fd5023038307f68d275f578889f28ebc7a3a805fcac6ca3daae2cfc345daac8270ccdf96b9146bedd7f4b61b35e1122ddd38b470302047c435bb500683066023100ed0446020d62e448f6080e2021aeecb192b9e91856871c688b1f140775958720429d97cba08825dba701dbe6e9870043023100a9b2f78eeeeed4308edd5de52c48dfefceefb452232361116dcab704aff552ed59606d9ee45c0a8e1efd2aad5461ae240302047c435bb500683066023100fcca69ec4de7d49c01455395de5e5b45fb04091008f1e14ddbee91ee30cc10c65156d35e1a7d353ebd6dd8ca730e9ff9023100e0596aabd4ab61fed90ceea74b2d15f3ae78cd06c8686839368f2cdfa08476570caee8a984cfac6d82a9b41dfc99c2040302047c435bb500663064023079a876e371f89821339f175296d4055dd5dfa77062e4ea636b24c9d2f15469fdf6b9fcd404744af2eed94520a57711ed02301bb67e717f08da10b558c18ac12d6994bd86fb113f1f8958d86b930c733596438bf4c5929158f0418cf5e152bfcec0400302047c435bb500663064023025856dd74dfd846a7a646e8f9738bea7a61d565fe7c8cfc05856eea3b8213e1d66c573d970add6805c490e9dcef1362102300345f9137225bc099fc1e5c9c9aab140ccef37c29e235b9cc2822434a269fc9cffd825d3b5713b551ddb641f2920594d0302047c435bb500683066023100e34757bf7510e05edd5df21dae60609522f62ea5ada5af7cefec414b6cc67da7af4d7de37e1434b876a4174ce805234c0231009aab428d9c2fb402deb57dcb64e117797c6d0ae900c7bee36fb00e84be5124c7f4a1cf93d172015a2f9b5bfe762139520302047c435bb5006730650230358ab07da8b372dacb621808a3f2c42405e6935dd4f1f10cdc1bed82eb2e4320c481cb070ffc6c13d6342cf987ea4c41023100a4d4262ac89e0669e00a8ec8dd0172052b16009d8ceb4ba62d78669ed36298e79ece4e1f84eaef164533835cda78db9f0302047c435bb500673065023100c91ec4fdd29b3458ffaf52fd8879ccc373bf0aa41ed3b98f9d664d3f8f2b10fafe3c90feba31352d2c15fd3f9a17f55c02306a04f41fce9f5c83aa10d5cde12f09ef82bd06dfd3f9ab00af21d1ece3af1b3cb3e4d3e8899471acab0fc79e208ec0690302047c435bb50067306502304c77e36c66c79178a67548ddf80a3b1f844a26abbd3cdb27be147cd18f474216cc0b5d49b5f7e702f8bfd5876ca1aa01023100d287e73d35a88cfb102d859be53fb45ae05890c0fbedae34130e2b1a611ec5924147d2a936b0def305cc08d91c59759f0302047c435bb500683066023100b0d5986132216e23d0a44978af3d3c906463844ad7b08324f937ba10e00fb2cb5c3cb766c9e8b0f7061d0e97a7c3d53c02310081f14b0bbba03b07c97896acc8c227f8a0ec0b26ba01365237133ab713aae0a4e2032371b0bc3be8e62b2a2890c76c470302047c435bb50067306502310087c050ee48d086ba6a1023763ab73c9b98fbb3704848c0f927770560d0cb5be50a48aa9950068d00d3c57e1f1eee934302303f4a701cea2748ffc3cb58a206596eaacd86b842fedd3251a22c409a8904c5fe48d1b0197bf1c93d00577ae75f3b4dc10302047c435bb50067306502300fc296617d6458959e0fc05645fdf70c357db8bb994371913356288ed9eb31c7dec9d898834893ba8370e9df3c09e315023100f163793c908607765ba051e0077565222c05d5d8da3bdf7dee3e600f736fd492def7502f75ab9bf397186d25ae4089680302047c435bb50068306602310089b9d7e461211262bf47bdd585195c2786444e30fc15e681152a434427b894d865e73b00b6c6a2f61511533ae68ea03a023100f962e4273437a997bc5c8247af296ea6eb77adf87a021d69233dfec98ec769f18666dc2a591e7ecabed7ef87d50583da0302047c435bb500683066023100dc7f5b6bbc37654d36044e2c55130364af25432419a0b7012846f0ed68da49378f123b45c480461e84e73afd6e921866023100f3d528591fe906fdf675c9d1333121fb4a06e90c8b562d1f41b6c097fa8ce12e8e4bd009001d2369d9b54d3c8d343b2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d2cb06152ba16c4e8652189c33d2e06356dad799ad881603496c5c7dbab02a19e6aeb1c98341027151a96307f6c7a7ea023100f462f3ca26b502614a4d418987533a9400b0ecc8c8bc20ca852959f7ca3fb5fa9ba37f9267f94ac0fada54b045799e270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ad9e57f25fc79bd9c87e7db23057e44c125f6e0adee026175014b689d5ba25ed42fea8f31050b98c32f9f6fbf5f2a0b30230229a9672d27a2a374b5ea018fd9f93b83aef46872cd5eba1706301ac597a459af950ba98ede951d531a2d2e85002968b0302047c435bb50067306502306d4c6745674410c2071994a6c9702ac3baf1c4a6e5f2dc0853f8f7a95e8947036d5dbf390ccebb6f198ffc56fabbf88c023100cbffbbb90cd4766ae21a08e760047a4b880390400bd643c23b459b821980ac91a112a3a4632a0d920727ecfaa203e1a60302047c435bb500683066023100a874abf8623c1fdda0c477c73bd33d8a25aee094d45a33d32f7493179e6dbf5f1fbb84edb4290c19e37246a511562ac3023100fa1c31810c107c304d90f9e44470ee88939f4660bf5d4b9649412307f1519e0e5cce09630b2d5da077e8c74c5c19ef5c0302047c435bb5006830660231008585877518bcba1e54bea3437c3ff146cc86427c9c70faf27ac52f080d4104038e52e531fc165aec07e497091490671e023100ea908be46c79f7f8dbe3920fa8a2760af5f9fc40b8f4f8a1558f3bb01a48d5d3b2186b127a3fd2da97453088144be6d70302047c435bb500683066023100eee347e19928cf2d35cf1209fde12a7afcd9dd18e5773de4c35168295c86e278412874ca6ae5043d841625007d0a472f023100c14bc4901d69cbf0b636deeb7bdb065c6aa97e59b9f27cfe58006a771d724f0700301ece09475a99b5a46c9eae006ee00302047c435bb500683066023100d2aed6c426fad728cd7afe416defc46362ff121305444e4a0c7657237b000fc59776b6cf0d2c781a6caa19c069f23c3f023100b8f38654aeb01ab86308a9f5738538a0f6815d8bbddd5c2d7753fd8488d751732cf71507f4edc30b5a8b169c8398400e0302047c435bb500683066023100a6b2ff448bada62d1f74b7d3f55ad295367e377c48ced9c0241973c1625cbd9c0c86a3d9e81e1c77666d2beb3370a274023100ff2d65f280d6cfea79fb4b89e42373cf196a43224ee46c9ed47b46c0a7842c449f921a549f1cbd42fff9b0c2f3c799c20302047c435bb500673065023100ce6a06d6a600f5617af4c6787d2980eee9598ec3e6f2da229a7527ce6aa104f564bc1c1cb0d9b9e1a4f22154697ff15302306ce4804f4c8aad52fe4cb3a3ce297b9dedd46209b8419577bc9d2d1b1cca89c514ac0a2bf3c9e5151b4fc383887326820302047c435bb500683066023100ee8bf08574f1a979ff8039e22d1edbe63a2759394bb6b1608809e3f7ede1f2e932be9b29b5187912bad4c15cbd51001e023100a31942af198fd4a2501b1737d62ecc5693f27913918973eb6d25e8862a127b137e220dfaf1c0991ce04e0c43e716b5790302047c435bb50067306502300dfbb14685720219ea4ca61388aa3d1f50121d7ed3f1beafcf233b56a3c6c1b720302d27be1a28cdabec4b9f0073601f023100fe2753bf7836366a84a68d50eb258b28f64eb6560cb1eb30730f83409d5777784fb55d2f83f1753094fb0345c82595130302047c435bb50067306502305463f8d65db30a9a8a4babba862996b8f918e1495f3bed02fc62865be4567d3dca9db4516e2a835afc127741b4e517f9023100847cf5d1053dfae068d85b784806f9ea36766b3fc445ea6ff8b6b43aa52c466a19fbc55c084761db4cdb234830bb5e8a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230288d740dbc2f99744762ad67ff35fd6f015c958160fce7d90f127ab0a03324a84f110552074451c716e02ee22d3885ca0231008c61b4bbc8ea6a856f03413aacfc41d684006894ad7a348bc4ed92c63f28dc16c1d921f79444205b2ffdb221812071280302047c435bb500673065023100a4e58a5bf2fbd83a4e0622b9b54f9d42f9739820415c172d41f5f7cf179ec229ed8cd43ca5c6bd3a96a377240690e7d102303ab90f084957a18b1f0fb2ef0d8646610de07b00f1ea0a333ed31026a618686c33e761a85e08f7358aa034561db21dc30302047c435bb500683066023100f3f972f44a0f60c55cd15b4398682635f2c456909d660eb14aa8097cfb381176c23c31b8000442443695617affed1081023100bb9164ef595918edab7083a5404fe4788d90f14c019c3fb542d8a900228786733389a17b39887758b618fecad5fc30970302047c435bb50066306402307315a674dc7a738dab9b82e6d4ba6d143626b36b305ba7fd8be58e0c3062b022315bbf1942882dcd7584c28021a88cfe0230433e3a4f9fb7485ae215324b3272edf39e693e7c95875ee85b7815479c58f99253911b12cc9c0a0275356c904cd083530302047c435bb50067306502306748f799514c2fb02c5e38ec026668c6543b82bb93116e5c99492ee08c3f9e71ebebf710327659f5ca7debb74958d1fa023100984f4640b8de081b6405db5f3090d76dadecb0a410505978624ad4c98b4b1a1915a8ef03b8299521aca5714b1253b2440302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b3fdadcd87035eb2ef22ca729627daa8651c80a31046ca38fdbd6b38099ecb8f3c8c84656c5531e5adb6fa6e2f8310550230011999751e40630b45c66f81cf257b3651cd4effcdaa5a942e49ed5b6d661e70ca6ec153e0f22805d420664933e83c6f0302047c435bb500683066023100d8f3adf529d61af9e69de6bf8c7dd97c99b2493bb8111663ef2407bdde5f37a1c6293bc4f064af72da764d715244198f023100add8618e3dddcaadb4fdd7df6138e7c70059a022fb07b28f202a136c0e98cb1cd3db87b0f6f23cc913c45fcc7664e3d60302047c435bb50066306402305d3b3d6faa366ab90b815bf86c644b15e336a310a50bf1de836f4e2c8c32b81fa9ca509ea899b130d2fb48e1a91e679c02302f2a4a6a2c1c197dcf4973fc49a270bb76ea646d6410b31d85997bfaffc42b46b4a32b423244e73f1f76c3868090b0650302047c435bb500683066023100af971bc1383255d688d5e537cea179717da4b2119cadd88eb0db661a38240bf9ff7f6958b19f68bfc31b7c41af7b77a6023100f6c991535bdd1136e8d12d8c159e883785eb66887fe274cd6e8f4920ddacb3aa1b39171bdc56ecd5d8875198ae1470590302047c435bb5006730650230669501ad47ff7c951a06969c8a8a5e960d85be789c60ab698749409addbaadfbbab1b8b8340207c34a833d27f8c42d35023100ee9a55b5118782a0b53914f01a7d46e6b3a14b9bfe57832cb22fabda786e8ca50c71f2d586e4e704ddd47b1bd85ecc240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303048bf16ac2cb81de1145756686efb73a263cabe89b34ddd1ad36d5b3dfd6ef3dfc8fdc0223496a6fae67ccca4aaef320230262c624f293213843e7a450546f8fcd92c2c3e07416211a1ec912c9663142d6e66196e410595a70276bf4ac505034b7d0302047c435bb50067306502305353826ecdb82a7f52016ce62fb807db237e845004b33d78b17d49aea4deb5907f5599c959c2b92b553579d94ed964ca0231009b3958b90543491e0878414aef05bb38f5dc303c3923564d2a275d2d8a55e0939e3cbe827f8f7213100e9ef55118d5ad0302047c435bb500683066023100866e18fe5c9f9d693c02d0bcc353d0931e0d0a61fb0c382fd282c903b073f4033965695ba55a35f2e5729aced0a02afa023100a3642aba485347cac237f4d86ec93ea749aaf4c6491e75b612bcdf8551f9205f6709afced0865bdd8f4e37b29efd91bd0302047c435bb50067306502302ee6a5b445b279bf4ea8ddb43e83fab9ac33075614b6d73ccf7bb8dfa1d10f4b23801f94e72b03454f11c50d39bdc94f023100c79be887b1868460e7368b00321ba81b457ae08d3da73039ab2cb58af7a331362ad59fb012bc73d24e8b658f27487ca00302047c435bb500683066023100b39241b77e0ee1ab34c1061affe195ecadc7260d2330dcf63030e9731d5b9018bcd55052cdfa011319f866a019b020ef023100fe09ea1c397e22229b3e9639c0b4ac55cd4f5d580196d80417bd4aff487ed8a5aafda83e5fe4f3959ecb8cb6fe991ddf0302047c435bb50066306402306b7b9b014ed73c0922c2d5187d5f9820c7e7dc737cf9ff2dcdb415a8a4bdd96b98416f818c69cd7f880bc0abdd0639de02300ad45c6c8bdc9e75827098a3ba66e6dd8f5a616f048b7c0e5663272c67cbde431cf79e1cba98c4554b91f8758a372a020302047c435bb500673065023100fa91053747e10cc1790a90d7840bffdb1c0ac448c8393e0479a32dc69a5800f733a88640348dee5869dba0294e48e2c502306c6acde51d25af99758590385c21799f35839b69bf2ece9ae3233da2bbfa97149cf4fee3ce8524a37f07d2f8d01936a60302047c435bb50067306502301c32c914ce277b9ff9de472b0a68553f83e8c4fa53632d1f9181a2b329f42d6a8944aa29f3b093125d0536c3874ac7c3023100901a6bc9c303a2ad8ab18410bab014824d5b6d501e7d1a749fdabd01852ea2f56d32f543e475895ec852206ea6fbb1660302047c435bb500673065023062639874310383d57598642ee332f3f2ce471d3473b0dd21e6130ea75c449932f3154e4059bfedffbdfa6b852afd590f023100e07122daf9068a9262a5980bc2b8c289b505ffbba338415c68cbb3c284263b577b94f21d57259869924a62a2e97ebff00302047c435bb5006630640230049a42628bdd1f10eb6c2db16a077c9ce2444f7b9b15a699864e056dcba035de37ab486533508d157c32d2649a1e300102306553d15d6a203d9d845b49a24431c9836f4336ddd4fcc6b0863cfcb6a153ad88ec25469e0bb09b8983eb9d79409f4d530302047c435bb500673065023100c07ceb52f247e222f615b50a7f41e6a783f899f0ed5727620bfec0b995b9a835c7b37605456f317bfec33fc894e58e62023054087c76e726cddb06e1146ff24c8894d9b85e67bfb4948a3fcc0c750e59082f61e50d0157ad83581831b629d4ef0ab10302047c435bb500683066023100d9e337e9094000219031d25b670b24101a78f4c76293a31b469a0decd0a40b1b5592d406ba85bddedaa6fba5833685bf023100c46b4306adadcc929ac3588f25058c3aaa24d35ee281a6ec22e8a27e44ca66b662c8a700910f72e9323ef9a1a0b60b0f0302047c435bb500683066023100a3f5dea0bc402934aed30e234945fe717cce4abfbd1c98b8332ed75bfca8eca79780f554aca09e339135fdfbf124aa45023100cb14a23a72c5fc40b3c0a7eaf86703d7f0dfbb4d035515eff962c5b4e2f7e8b61795520f27a4e9f3cbe6d1d90163c7ec0302047c435bb5006830660231008b1518c41635b3e45c60fa2aec444164f516d40b2675ae5d3f942b2829af620767c744cf29893dbb7f5f6e72a46b24a502310090f2f48634b99e908f4f8fba4ceb008a77ffb96c4e1b6a94bc935adc08e611e11f12a8a88190312bc0b022f320e800b60302047c435bb500683066023100988513ff7f317609896b79f482a1c01c1d7f064950747fc2ab22c02b876999fcee2917dc3fc08d5dbeb6da5e5362a48a023100884381f8025428df3d37cb97d7ab2832077028a820bb4365596de40fe209c52e6a30ab2a82006a31e4025c9cb93500480302047c435bb50066306402301abd74f39eca3790b59ff6fd5c40edfe747401c3caf79d8663186f2736f0fa5f363642cbca63179167c2e58f061774540230578559c5a668ab59f53cdd2455859fcf9e489268cc12cc2d3cce68339865e05c0464393550a587b67669a46c8b39bf6a0302047c435bb500683066023100f013806bdc31ba306316f87230c5e117aeeb8aed1f8be16c0ef40d70e1024c7d967a5ae3212b6802f4523cb7c16ad6b7023100f49f8f9912283762b3e32c2197a3de48f20531bca14e804dc11a0445b20af77fb2c228da980b7bd940c1298e71150e290302047c435bb500673065023100eac716940512ff544ef391ba73782d81feb49f4859d6f2756f093315e7baefb918718b99da3a26d93e80e01b1bcc16f70230564434ed66296b081abe8f8b5f10ac2acbd007c42216329d08d0eb4b80899092c60165d05c08605d2b44720b4b94d71c0302047c435bb5006830660231008dd613497118de01cd3350021c6712d73ab3db8e0f1035ea09df1c6cd0757e45d4ab3d647802f3b753c33b19888808bf023100c3f1dacdefa3eee8d080ec354bf789db0281a686ed31c3c65963b4c458d69e53165eb9dc60b30696f2529ac87e3c73140302047c435bb500673065023100b2fc6d91af4105be8b5e0ccf4b4aa5f2fc842b9b67ec61f1694ac24e071a649b51e6702ce8381e3f76bd12f001d627290230279dc2bc7d27a4769e7eebbf5d01789972cdd7cce80dc4b7951978aefb0b8cb1a773d952ac3a6a62970557980781888a0302047c435bb50067306502301c02c6780fe3b258c5e3cb5a69dfd1221b79294d5ee448b4229e87c8a7b5d1471112a221bf4932d9be82c7bc8e24090f023100fc20c7c293f3dab29d3cdccd1520955c78f164b3e388b7c20863a2b2f2a5961fff121c6c9d051120ce8a5a1f62b87b8f0302047c435bb500673065023100f449834ca848be8a0b0406a4abc7d48cacf909a9bb12a46e98357a11da4f5ba82da3e34db66abd8cfb6924171cd7d3ba0230298e23a3f49bbb8e7f4f6455421e07eb95a5773f34187b4b43fee58f891f46c7b4ef7bd0ddc135df65883998801afc970302047c435bb5006630640230526c1d6e2b0ff21b99cfe707035c418dfeef5b596ed0e46e163f276fee71a0405aa61c7752c83b64eb52de4c6aeaacb202306134697f63cfc7fef2d46f8a5d0dc25cbd74c8a1cb00b6f10f2adf75db8d26fc811f2c661fafd9a0483fac06a9d250740302047c435bb500663064023066f2320080341cb03c04e12151c6aabedf6a7155cb0ac2fa5f198c600f0f65a0a4afe273eb53250f957e99b549fd0deb0230422e193b804c4a5729fabe0fc0abae2d8975e20cfacb3ac3d8e0634835c333d84cf9ef28cca1167d386bd0bc496c52260302047c435bb5006830660231009b0558cdd0615eb0ce652232330c6e260e58c70f7741fc2b018e3957df7431fd8fea412beae52e9a2d96abf73ab0f9a5023100a34ac8ec0c5becb6dd1d41c452ec33b2da95fd5bd0b4310314852352427f00bedc479ff0f311c2e8d7f9a5d3f76dc17e0302047c435bb500673065023100b21ada1898333ab47238a399eb668ae17e473fb93591c9baef3d35da404627efa3a3a857b137d4050236d70e1214aca70230241e357e6e65e2402db082de665d093f93d498c1108ca852cabeca6f4e5b32a00c4e15c7d4c78c218978145fe8c141f90302047c435bb50066306402305942e460568e726d8bfab469d11b424fab84d3cbe547b9a0c58b2cf9f303e6adf431c29bdad2719480882af2add10a2e0230127e762466353d10878e2d2ba57033118c4e9e3cc7951c484035b9a438cc6d1dd05b09ebc0f878341b28be6baceccf230302047c435bb500683066023100a2b71abd5caece33f3cd15eb440405317beed992e408009f8a8e04904f9d505431e577f9439b41d603b594fde6d4439c023100f0b0eccccb0396ced8e0fe60666b81e65776aba18819d256c2438f925821e2710a518288378e538045f94a25450f4de20302047c435bb5006730650230397ac45c68d6a595e70db21d83f2cb38c27a78320df1031e4de2626eab250cdde0c159ab10cb5855852ef0b13a32a8b4023100bed46c2655f34b2b0a4770cb96bb887149848ea7599f9b981bea02a5890a7e48f399fd7821b0d54614737ebb6d5b2c460302047c435bb500663064023001e912d80c7ad337ff1a138955d9322cba69a94b938a0f13f532b5fb3a67b69d916b7f71d17b52a936ede555ae5549c6023045d97f3623b5dd01f5bbb86bae68431e2ef8b6b0b33da64bea37c2e7455b6b2ec394aea3469e28194c9b13f9f91a95550302047c435bb50067306502300a88f78d4301ecef02d6a59fb9846c56037dc8f5b88a48af9aa7792978f287093d698a1c6f031c237389fb84cba79abf0231009ecaefe39a30b2e6827dd5aa12dc1f628b463c6c0795973abb050ea55ca7d7dea620339e0eec1584733b8776c5d58d300302047c435bb5006730650231009e27c6803c72b9991907b6c21a51e5c71671a4b3e9b9e5bdd0d9987cd5724f9444378287322885fa98736414d9b39317023057c038afec3d88d1827745b5a5db29e38e3f6db43e26e4a8158175ab3eaeed4df6458eb6c7b76fcdb3aaa39954f225420302047c435bb50066306402301668ebc1f7bd935fca934ddfae223ca419082a8368ea41e3f018fc53a1e80458264241b88a65dc26e7cc0860c7c645c10230612c52aa210cf6e683c81aa8827e996e394dcc82337ddc8d3cc583e810dfcfb23f0e72001ea4b5a1918e7ea8b632d5f00302047c435bb50066306402306c7fe598f495a766e3d8bbab2d426cf28226c724b19bd5440a6a9a14fa34c5ecf8a7c4b5621add77b0eeab984dffdfcb02302b2190f22ba4a10d9a7530c55876db1f3d38689f164cb2bdd976bf60dfcfbe890023d6e230cbd604abf30897445cbfed0302047c435bb50066306402303430156fd0e89290ac3ae6bb7cb62af9ff8ed9e16bad102c40caea9be7a57f9e20372308c6a932b26425f234cf6d42e602301d7085f2f52ba418d7b3646d7644ecaf1c398303630c856a9171c6af0f9be3588ac44c7564b1b4e8dc7d3943080107de0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008a86ec389fad191056ab8467b2acd2a008a37ee25bcc198f1a98a231ab9846b157e08042ce8d7e54fc95fad04fd2c2bf02305f467566417e9b89f4476b4334c2dedb6e90b39253e4e85b4089b3b5ef34b42fef6a6deeef815013b28fce23f6438ac30302047c435bb500673065023100e47f8db9add3253bdfb00600ea582a2c5a01c2d83465b7b3111f31104864ebaf52bd9bc03fd064c67baf367d88390e610230794e65b2ee8b62c9b3f1fca58b6586f0a204b10240499ce7080c614c0778ef8f9ba1fa9f9e2a78299e22d811e29292de0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009219b49866f2258816d5825e3e6a50cef49a4a804d553aea2ee50f932e74c5e4f15f0b87a983d9e385b5b475d7215b7402306ae86c5c6e85e0724f80f14c0a32e4d58d07fc14bfbc89e846e418dd8ccc47397a4e73e9052f6f332e664820441942040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301832b6c513c272136840ce9daee005b51f6eabb4e747ba1bf7ecf61fc7d370cf244b07c658253e6e1b97693bab5532be023100f71462451fb9dcdedaf069181ed26d408dd9ed31a47dae3bf8f47d7479bc899142b7bba6816abca582f37736524bcdd00302047c435bb5006830660231009d1c74f22168c9567444f385cda64fcf4afbb8f4d76c5d88fc9e65e9b30cb08cde58eb127d8f086d4edf5cd8d85b36fd023100fce32af8e8a8e95be3e9de6493dfeec3eaf200ce19879b601668eaf2318e3dc12f19469341f3748bc281ff0f6fcb8caf0302047c435bb500673065023001247e2a7a9be0a2ce7647230ede381bb9ad5ab26b18b4ade6c6486a293d109f5f207bec1242ea158f4840342b161fad023100e157b1d331718eb280b7453ba97cd6997d84bb4ed71c1528a7686eb9561ecf8ccf160508f0b6f6f4173743d92fba73710302047c435bb5006630640230677bf4e4c2d853cc7b8ae269e96bacbc46dc107f086fe9b366af2e93646f58ee4cf4e577c0f8330eb1c550789e9be22302300d3e01c527d4610c0b6e3cc9011bd5ad823a1715377b0fdf9bcadf37092227232f975a0add02ecffebb93664aa2a779a0302047c435bb500673065023045161f08dd124921143eb85d9f4803a4f14e5da0028b735c882db25b1f8547de89bb86ee6deaf1ddd307707d20446aa7023100dd67f2ee6f289bd4dd054200c7b0a1849d96f6992387ddaeca58ebdc944d1dbb2715981b9c21eb2af99e00a0373e18080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bb1be761f8c76cb26beb39c0f8a358b77783a8ed0be6c70551655cc2feb5b7f361cdf8d95245395788aa310b26751fe4023100a75450fcf572f1eac24d0a97af9ac60399753642e553afa4efed4d99f55fb370bb31fa741d883fa35b5023e2c78218e00302047c435bb5006730650230514cf12ce885b7893cce7795b4cae06ba05c153b22efbac0ef6a0a9503f7095f4beac61f8931433364fedaea4be64b2f023100a5173a9812d5d1c266671a441d4a998a4aba6931057c4f86f7579e8df9173b9a07e94e00c170b629bf0849be6d438e9e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ab1b4972e3f76da60328e391699e0828dfbee4ee79df7552ec96f91f0253060fcdcbbb3e9c6563847a0dbe1ab95ba528023100c63f21b5531eb77b376b4a4db651247a5742214aa8b8a378684f752916c51f54dfedc93535899fc7ead96ae428398cad0302047c435bb5006830660231008eb271c11c7cb4b349521613d82e9f03d8a0a45ab5bb434f23cbf55cd6cc8b351d67fd16d801221db06403f2e15d67f10231008e5f4735c9d46c7687cae374eae712dac1503df219b2295662c39ed166fc562ca3706a3942508322447532341200e53b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fbf47ae1cf9516b8a47d59d8adef291e55839387818d212e351073afd87833da54bcd73d1c93f62a73e65163f5aabe4b02310096c349aae1e47df8f13ed10bf120072e4f14392064a6dfd069ba9a520ed96fb1cd98588dc2538fb6c671c83aeca72f8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300ceab78d86a15dde53a0ac59314b0c8ea2b3343e18a5a9326ba9296d8a79623c582cd7767281364507016e8e0106a48402304a1d6f6103c2536601bad76e3a84cfa317f58ef2761b16c2fe2c54f4f3c80a038e4432fae4f82206fb66a58c1a52d3530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230528ca0d2d1d651be00ce85cea28fe90e2f7d5e89ba52eb6fccbea0d3a14f8bf6b1217072ef05c18e0346d26a0703daf402300d180fada1fe3c854864445fabb7ad7f0f41e765359bc84d46b4462e4b9acccc4b4dc5dcd1122568405eeb30b05a56820302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008714c59be4771b4352ed6331828a8155c81d61e0d314d122f4aaff97f443439e87574df444bb03f2caae1317277a03e702300257fd8e1b8070f56da1d171c8670fa5763724345b5b9f1d541b391d0d435c0d4aa8ae052a419104ae78397e7a2258d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009a4f131aea630159a36190d0a1e3298cc02c481cb9fe5492d2517d3162089f1a60c5c9b6f96aa222491a70652ef95eb1023100cafc101ecdd276d918d45e9bdc04637acf516529aea159bcfd2d56d1662ae8ba6b8e18d67d08c45344327ec4c49daba90302047c435bb50067306502305d61d1a585a12a489e409f8b5f2cf9664004a2f0ef3ef9a2008a2467ac2e59f6fa7b2766146a4fe535c1531880d0fc41023100816e294b00f185a568ad72e0b95feb519f2bd599e48a7e1d5509f79eea40c3dbecee3a40a9b04ce134e02dd9377ac0aa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009e394ce323d1d35a43375e829aa0d2fb8c45f8f5d6c03c6b733e987d7d42f860da4158ce26ceb9aabf08f6dff7df1510023100a01cc2a7c094ce183ec667908a308f45cd3f3b1375414f19b603446ae7b3f129594353bd7e172b85faf534820fa78c320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a1b45843465badf4885cc3401be66d18b53a1ff31bbbe269221089d882de368f6dd92fdb7acd0d7e1a4a4548df7de06f023100f225504b551fe2e4ffaf4f1ec9e18c9081506d83a0379c7caa27be59e55f79d552f850a803e9e5ef867cbea79d4a30d50302047c435bb500673065023100e8081bda2020d5875b71b02af86b3da73356e4cbdcfc633416dcb7e597d2f5fe6802bcedc707bfe3c254fe63775b3a610230395baa57092350a8f0b3604e2af331ff8406a7bb9eda2b1186cfbd01d3ce8fc1e0c130324e57164be630d849d2afb9c80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ab64b053f549678c8a32d45cd2b5525de2c6c5e291223b21a3ae3be327934cedbaa46068f63e9aaadfd0762634fd230b02303e2fd1d6070c87b0dabbdeca0b3a5fdabb5c63e1dd6b2da6106978f67aa179bad492fd2927667f3319d81c57aa67cffb0302047c435bb5006830660231009d7a612cde365a2cafaf65bf3de9a8bd1f276a6dcd19c45fc8b818800940603b95789ea0083e47a22b07e99cfa4856b202310087d534a9e3a80faf49166f87e8999f859fc9358c502335ea82a179822124b934ceea29475d9053518034644fb9cea5860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ae47a127a7f5c0ffde9fb70793e765e110efc06b3ea52e98ff5390cfa9344cf4d0ab168ffa1a3f62de92554beec1e8d0023100f7a919f9c6c55dd1e68bc6d238d011b8d0160ee2ccb546ff4ad14b745b32c96946278d9a601f0499b018b55323da08a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300c3aaa090092f132fccce289de516117f8db6ac980001322c471dfc26ff842f91eea1b5df4bba7b26e63d7595e65a11c023100effc7b5f464ac700cf18d0fa1eeb3fe7a700e3e58b5481b10a5fe731ec1149c5fde7ebf79e28a991355d4cbd235bbbad0302047c435bb5006730650230739fa9131d38f2dce2a879f50a8fa969e22c0b65ba932ac3c994d4075091fe813518f82b8252271283271fb68a91ff6c0231009be9b712c7fa4b3b4f0dfbc5c3c725e6886eab89d012eeb5a00e5d8559ba418644f8ccdd8dd509fba5de791f1e2e0e040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d1fb16474bb68f71fe09efce6596b9d380b71d7fbdea071fff16c516d15d089726b2828d7affa2be1a3640e22c0b17d302306438d79095dd1292e666516ef3e447478b540dce01e4c70f51169c725c887e3513329163f71d0598508de36567069b8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310090d63569801d13ec21cdf6b094df3370914f7e25a36c3a524cd6ff70fb5f70637bb45bdb520bbc96b13177ebb1a75348023064acf580e33bb9fd922b3622ea756e4b6660f4cff92326db3eba003d7133bf73a6b2f6243112ae407353d24658cc66d40302047c435bb500673065023100f1296a80872fb6c5635faf769737f251e1fb9aa8e3d9d3d5a42bc2168b76291310ce1060f50bfd8537867a05e4874457023058a4c0e7b8f3478aa601c25b4e779115eba0c561c12758791be4bade054fe6f1f61d5d700fbec48545f4f50483a619130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023003623a9841712b2f3fd2203822bcdee48b762a635a98732b4b45ba7477c9d800eea6be94800ea00c4b1ae832dbb6d576023100cb6881b5385549900b1af87306b5242d85cf3a71c88cd708ac50116a6bf82925c6ac6b259d82c1a872a55abc2e5046db0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023012c252e8c5b8effa172c32cc338978f371fb7cd78909867c50b01af1e4592a788b5a42020d1b9801f9cf07008808746d023100d5ecb689e36d57f133d97991d9733da7e3d97c29eca7e63791158bb0b819286c6f5357b822ea357bb49ddf4cac08abd40302047c435bb50066306402307a6313ef128ac0450ab47aa3c4d8a4e30a8f89e12ecca3f0130c8db2baa492fbf9213c18454fcb69d038401744d85f570230429c164e5e7a75a4c6997f56ad37ab0975af2d4227e14e65a6cd01ec037e5a7b4d8bfb9c836048380c27e39d8e42b4940302047c435bb5006730650231008bf9467dae6f884c47131d6b28ed457a8a43cbd6584ce346599981b09b0721b51fbdb15001cec689054bb1c48962555902306e4b71de67c5980ac6e477db14244bc8eb074e11e34d41b50f5f25dd1cfdacf9e5193d6f431c9553e3e6d27c8a30fa8c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023058218c2f9f4e3d0c36861e9caf3204fabc610ec3539b1222b960879a76b7a5a15f8c7af39bfb1b2d835761cc150d6b2d023100bf14b15780ae7feb3c3562848c3f161cb7c9372efcd8a781f566d393391bc2bd765d666bf93eee39544d77f11af44fa90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023062c6af60e369ab8bd5a82ac298efb13695a530dd03fbd40788b415f2b2eeae862d10bcc0cc6f08179fbc597b2d620dd402307698914af6ff74e1066c18342e4c8cae2c8a7c5a814837a3abc255b609fed0286ffea630954672d1137563e3ccbfeeba0302047c435bb500673065023100fc7fa9da06b94ba71c892b82de19024ca695e08c964c484e9a77dd39e155217984a1e3550c8aca0aa040671e9f49f63f023056df4b978ca25abe7b04caac44b1077033eef976f7c59aa02752e9948136e31f76c03f2227bfd8f0dde37e14a6661bd40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230446763ec269c692b7c25d07e4d5b69f9c54b2ae0139b6d387235c932b76e99d9b5cdb5f0093f5012f239f6e9ac356a5e02306ab7f3cfa2336f8a8b44e3ce62aacb880c56e6f098d15c85e005cd0f492e81e9e864c31d6368211560e63f5302c7e7570302047c435bb500663064023048e001965f724a7a477722175bf04eb6c11a972d716eae17f3b689806500556dddb7c742e76be94ba1fbf88b544529bc02307e7475a6a15f9e221164c8856aecc135e4155a0eb4f08e3ed4879ac8954713dcd5b79d65a03183d9cfb372e7c6b26eee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e3d11739df699b3d2190ad25f6232834e46c985c440c5825ceee713bf378d636f7a8f89d3f10c809ce095f8956b0098f02301992296137ead75b6475e4cda2e9ed614dbc4205f030ea3ed6bfb35343ac3c7ae456f586b1be3f8e8048fc62029fb9f20302047c435bb500673065023042782279637b2d8e3c294bd92c84af391523cb27e67a3999ee58e4c1d44f8ee95ef44776a8c017128b139805e50eeb4d023100e80cdeea160cd0e09a2c848480ade1c50133dd8dea659be5328eddc51c2e641e31e789e93dda1e4332d37a95ddaeb5230302047c435bb5006730650231008bb26649f3a002f5a57c5ce71084494e5651ad1f1bc3e9fbfcad85636bb5f86c883dd9a8192279415f7b1db3ae211d91023076c8832caf08ec903220ed9d99947ff3502c81fb6fa123c677464bea6c9b90a18c6680554431cd9cc53b5dfccce0b53f0302047c435bb50067306502306f280e4c8f7c47f12f2a25583dc5e663f3563f083fa63d9ab77bbe1198572016d7e95d2968c6c7d366037e4d51c850aa023100e50e9b554639ec33623f97558a17238cb355e25ab141f68b0117da46aef1e3c7ebe77ffa4efe214d486b1e9cd5b4ab2a0302047c435bb500673065023100d82615bf76c86be232ec61db94c8b61fd39da6728ffe316cf1e8e7c437da6b7aa09ee2c911719f2f0839484e729f0ab50230128ec5a24cd84ed41a37dc800a337e04f4d32625ec5b0d87e069885d8d07b2f98cc6f271fbc853526d4871723f277f3b0302047c435bb500683066023100cc690f9885f57fc0c48e15a8798af32e45a5968bfaffdf3765e98e263c18972dcfac796aa624b4306c858ac673edc64b023100e93ec6d4c84e00476f351bade1e04890287dc3b183e8dd8f6277e21fab8857faf572c147af4ecd7e11621102fae207990302047c435bb500663064023048c73b020f063c121b423e5e3152ac7afa04b9936e5db31a7743a2d14de32dd30a280708f7daf73f1231782d1423c40902305fc4e2b255db99a7410406f585943580b630fdcdcacc79431d899dfe8b3658886bcb4c0a462ebcbbbc97d96d255231500302047c435bb500683066023100ce2f96e1910e2959526feb204c3bbe28e839cafec48c45b7abc2677840bc56ab9b19e6b5d54d4fa0f918f337feef6fb6023100c29b0c8b738a973a938f341a2bb4f70b1dd533f169492b4e5c3a44a78090bac66455af453672e76f442c0848fa50ae590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d0d8e2961241ef8fa846f5f312158e485f09a8464a41f1553b395fb35cff3140aca982e72ffb1f8251133b9e0569745802310084d7637ac4f29078ed50e86bf4eb4d13614ccbdb2cb7142cb0f339bb078458b3222b2fc01a667cc264c1219c6f9302590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009f6ed634718478522e63530422ac52f61bf94a4c0ec4a87155d162d407e49ef7a910147b0c00258ac42e7fde0980d290023100d70d8ba40a8f1fd033d6eee6398a1bc368afd0867b7231327653f42c0933eaf3410188ae8a8c2ea07b3551e01b4f54850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a7198c814d69f8e069b83802731cc9fd239c88188be83a39a205f829a78e0c11cf1147b74f779b9bdff000fb2dd564f5023006f69926652b97e5750fde30572f985b512e2801ab358329563506ad16bb08c9e51f91be523c18a86913b4e6f359e78e0302047c435bb50067306502301e5ecd69384aeb5e71ee0d790cc96b2eb637740fe72a9f7f59f2d13f0d024fc2ce39fbc1955c199e325e39af57574ae802310081e132a6eb2a5e4d887df10b0f2e9fd19a67427e7c5b8bf665aa9b0fed0e47f5a88a74f42477d07aee4997603ba6de1e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023019668c1a3f339f0213b69918ecdf43ccf49888313204b61010f95f3c3cea5b142d2f68b70da5a214a8ef74a1ed5fe78c023100cf03c1b5dfef4815c62f423113a36c186f05fb0977d014fa2f8c71c7d224d6e9cc26d1b80245a3a998ba2155a7000e6b0302047c435bb500683066023100ab09f5ad12734ca44a492564e898f89f20e78afbfac02cda89560d13025c73b3fea3e0d2b2a5b7914b09c35b21b9ff41023100e6c69656461fbc905945bcce47594327f954a0c3d1b796af987c4114da35aa580812df64bdac1885c48ff734567a1ae20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306c438e4a3fc5a7a9e0edff525b04ab016ef896247a8e39cf58872e5c33642beb8ca1f583dec105b964779ff866199c5102306267e3b749b3804028dc9669bc69cb5786168767f3ac70eae7b982e68b5bb339068746ac30faaa68204d58c0ad6a90f00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301972d6ce7036fcff483243434d1e4135428e29a00514e3899d99d459c6509dc398c093c67b5800f44d1367b738b9dcb802307807777c26c0555ab4fd61752b0c76aeea389a09178e873950c2c267eb3f20d377b06cc72d11e74bd66d7bdcbe2aad850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304dbe6422b87571afa0082cafe5fa51540738d239d01aa06f4b862537d180feb6e425657c65031af11abe1566b706cd7402304b87b3f4c7ae583db3b38e999c8045a544cdf3b4f4a9c9d55f3291315a48b976afe34a961ba880712841ec764188ff740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301cf6fd3c0271cf1af829d3dfb1fafda5fbe8c3a1f424e1b6bb33611c905417f6de9d402ec1a1279584ccc89b595185770231009d2c369c53937e01a2fd9e5acf82935090f5366bd56142512d748a8bc6e3e38d5037b8f0f3ccc4bab3c6e3a16cfe7cf10302047c435bb500673065023100d30fadbcf04daad5f505f9034d89a62cc5746112f2961ce3d7751f6d70834eb542da4420318869cb6f4ad61b811e571002304c2b95b2622e65c49e645a36433eeb0b9ffba20b218ea2014ec5866aca98498fafc6ef04dca136fdbdbd1cdb91a9ae080302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302232eb0e37f10dd63fd16b90a41390422363d9f2a65f9439aed893ba45daf9290a3d5e6dfde72bd3eadc28c080f35062023024d8ddd8ea928762e97e48d50696958d0cc51883d7396fa5d90d59379e2356f7ad2a1d8633fb2b5fd08517418dbab3c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eab2a47c842384cc4824531194286141a72a3ddca12e6bca50d2e7a74936b40159a30f46ab746b194bfb543b2fd1988c023100ec56a4e1855119f4440146fa31c1f1889e6af74ec98ea0286a21223d4f0d25895267a6e0a0c800432d19ac59b6ca90250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300ac2ead458f62a2411eb13ccea7aef95be7b45a8e5e93a479363e63a6588e16dba306952617688820d6b7d7943485d89023052f7f6fe1e016b15636bb739be4aff1ae770545f57a4a032631cc193e5646484f2931ad1c1c6bf93f62319a153d130ab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230176baa82e113d98a1beb0e8cbe6bcd7889203f4fbf451ad2473df03cc3d99c1869ae029fdd2bd697a5a3c322c11265bb023049037fd32003f7a8dcbdf8d427cf29e0dd0e84971377ff5dd24f588b8a3537a0bab6be3c6d80f20107650c0db46392c50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023050ccbc6db6be95f508fba5220834e67a13d7ec0ff48580d3ceb44f5f7ee5e112ecbf92fd0b19e2dea97dc74ad626beef02302ff8bef062e239b184eeb925fbb5722a2e0c7e03b0e91ea47e1d53e9f20bb646af537a723430c99dbd900bfbde0e62350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307ffa05095195171ad37bec733b4395b2c8ec5441f74925750cb66bb9a4adebdd97829c7131b4b0d57dc1b3dc70b0b3c50230458286d6807913e409dc7a78ada9ec7173decaaa9d6f7500c1f0a902ee775745d96dc2ccb64c90a5f24ae39f0ebafafa0302047c435bb500673065023100c7eff785c489793d055a5eb1245b228daba2c8c39f57380788628fb60c17972879083f1be98e5aae8670c84bcb487bd8023025bc7204a542914d852c275947dbd21d3f2fa89ee0edf76b21be3bb55965d926158b4036adcc4ed28cfd1715256f33280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307aff44c377083887913790e097bb40fc05d21f120c35b49c82678c67a0d1fc951e9175976a4f1bdb5ecb76c6452c159002310096864dd3ebfd1f47e26274fd01e4f79d4ece38ae3945bfdb92e453e39d52ef3a900ef6398a61c67318f1b44b84667f990302047c435bb50066306402301e48d4e70510560b6474b5f80e00574f5e788db595209dbf3110f59d5fdaaa2fff87af7a74e4e43b6754b2f08a4a6d700230108b6f2c31970864224585fa5b992894facbfbf5ca4270c1ec3d4190370c0a06b4458a67dc95230a63dfd8cc5ee774e90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a552697d0f79336987330c443bf55c464abbc7014e1ca2b11eb6353fdc99ceeaf032fa24933a9e20412a5c36cd1ddb6f0231008889f9b71b947b82d9fa1b5fdb65e84c37eb4083115015f5b8c2d18f336deeb11352c0384db075f697d3ba607e7c90470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307472581b86c702acc40d4ac3e1f572d5c64aa59eb377ec53b6704168f877b3ab408c9eaa8f8830a62e456c49c9799866023042ffa922f170338b692f041fbd943b019da3c9b4945de381c7578c04799844d4e8bfcbb58ab40ec6a5f276b8c50adb8f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303357479835a06fbea9c93e9c8863ce41cf4e3f1e9274442adeb62e0d26047144dc2d7159b5df27b239f1ad53980fdfbc023100cfd1b8a712923710ae75c891c3cfca967a66bbfb6e91488b1f11f391b7866815b4ef97d9f6ac6161280f1a84879e64cb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230560091e5a6355532920d718f03c751c0c30bb89e234b2781d618ffaeecec071db7fe7f5f368677dc4009cfdc372d3cfe02304cee6863075269731cc33f0e107baf95a97e7aba70126dd05f2553309bd320d5aef8afe2bc62f69e6c6363d095e3f0010302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230472f19c93cf435266bb0d47d56c8700840f7714406ff75e32c24353fea3030e68bbd0e8f877191d4b23953fede7456bd023100e2a49bdb340131a54420bd330475d9bb029bd572c6c7a45e1b7544b1b2bceba1b85e0621df3f656ff038d200784d59a60302047c435bb500683066023100d600b4305d0565d186f5d28f8d43fd02ec971806cd0786c116a4b339e277c4793a03a27d845612f7855dd9666fba854e0231009033887ad513dbf3023caee87becebdd623759572301b1f96d39ebed1b88562637139c9bd8abce0b35c241aca1d8af780302047c435bb500683066023100cd426566f68c371debbe79fa7afe41c5addbeda5dd7ed887b93be0ee4ce461f8ffdaeb3293eacc1fdae3e72f40e47949023100bdfd994cbcb0abc2296a5504e016c65917aee49a5a60b9761a608dd9f53c447dfaaf6c9aac0a3a25ff570147ae6ccfc80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023020d363a487e287630d7f0409237f14ad80c9f72fe6cc682d64f6edb75ad24bff8caabd066ba43c34e205c2685763cd7402300d34004f8162fa188a7fd13efd01ffd17b4a7beca8dc287bb57ffc2d85e9c18f337391dd2dae7890c4f74e8ae5bc7b9c0302047c435bb50067306502303764bcb12690868f62a032a601804f95de584805345c295cdd3ac89db0b50593ddd9f6ab3e51b5e99b807bb99cd60d35023100d21374f4311cd8d485c87e9a09929025c935cf3a649ad0d82bc5f9a209563dc0eb0f1cc75bf36beeae423f1ce9fd82a40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230215fe47680ac81f8e4761c12e6898dbe16a38c8e506553d39bccbd1476a15164beb40b41dd310ecafdcbb35a44a58be902305d62325cafad62c890a9355486e9987a233453d89f336e56207ed991c55df08eee8ad3071c9c29df9f3a5e3ce03b06620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307528fe940b7292b7aaef6208ae7dde2ba0678da35c39d88c1ce820eca227dc161fb1fe468ae6e45e651cd737769e9be9023044107894d5718be9ae395fc1d343958d2e9ea9638db58489c6858d2ef1f6f1a1851823c780e17fe27e58b84a8aa5bce80302047c435bb50068306602310088825b86e7041da9643f8ea762c055c8b95512572a3861c8eade98b08a2cff9b85d748df8e93eedcd4570110c9246e52023100df469708cdd2a1e8ae736b109dfee8f9d986801db7a5cf167d21cb90d70b6c72ed0bf6c7d29b5e8c6485662498bea4460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b94496d1e8fae8372b046082cbfb14d4ce07ea4ae75c842cd33f8fcd18d0b02d2bd30293f83d00145475fda96f042e140230376a9004cd85475a9e3befb3026f2986c15d2ed5bba09f9b72cf710a4a4dcd3113165d953c1ca3281c20f7fa26d907fe0302047c435bb500673065023100c9146da79809bbc86ec4c82629812441f2944cb37d0f52e4bf2f9c03bfa7c13cb851c7dd7dbb350d95e7c3da90d381c80230524c1ba53fd375d19686c5ef3cc2ee37c1b52ff830cb9892b314592ae44c4849f3e0df7ca5a8d8c7f45ce8bfda2335700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023035f69e9302119542f31f1ec89bc892512f09a3481ddc6a5062a80d7a24986137b91106c7261148a9dd580190847372c0023100b4dd76a1939535096574c64a2dfc5ad779eed373500be2916ed957432b9c4d39e5c42c17bb80101eb4552cbbcb03474c0302047c435bb500683066023100d690fe83662322db3fa194e3166def8894c9e91ec8227a074e72840ad8a7956dd157ae8979b15a6b3a857f8f62ec44d2023100a82f62d22eefe2b76024c4fbdb4e163d27bd194fb51d16dbed412f00f3701aea0c8d0078baedbe7ee7ddc9915414fcae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230464e207bf44a622b9791f5cd5684a99659f8f97a864929ee81aabef25c10bfd1ee4dbefa9de6b15cd08dc25a41a0cff202302b8e49c44ee5bffaa336514e9cd53f5381db1091c648b7f9d621158b1d054abdebffcbff34040e9e0c8f07a7c1b59ea50302047c435bb500673065023100daee6ba3aee3f0cdf5e94cbdb44b3000528fa140d9e9f00c9d561669bdda55154e4cc057859af03b0a811ed6af27ae9802307ffc0154e534d486bb08ae059500806e78f2a1c092037fb9a83373d880a9012cd145b0ba8d85807888de032faf0dfdf90302047c435bb500683066023100e48a17370b4d0681b6759d0ad3fc5a7fd22fb8e1b23a6fdedc078167c4b97203231196eaf1a7f4f49c839f117f5984c402310084c891a0e93effe81997302ff32d3cdf9495785d84098a34044b51e4e07246084b48598f4ab8ba4cc8f2cf5391a6c8390302047c435bb500673065023100d62df943ce5332be97dc31c9d3631d629a3594047e82478254d1fc67b6e2051ff337731a3595e1bed40353741b418ce002307a4e95b1d4c4abd61e83ea310159cab9d9fa97addb549ec3e2b6c4a68d6635efe7ca55ef8f571bc44e3954b61609bfb20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023003c1983d86cd8d9b34b441c3c43f47a1b8f6a1b81db2472d0f4b3fb0939f4678c330f1183f77c6722a6d1ea9f6ec9c8e023059e9c66800f0074f4f96fdcde8d9923388c241d785ddc1788ab066f876b700542847015f7f114fa41d81e64c50ee0a460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fa4478a11840c3bd475eaec97687973994eba9c7c02ef2dfa7ae061a07297948122230a7f0f7f60b3f078d21df3fbea302310099a15cbc1675177a827b0bf8018d7192e69ebac55704dce9ddcb4908188ba714d213f73ea6401e20cb7df2f776f4d93a0302047c435bb500673065023076540bacc76e19c466a86f490a7a37834e57bb47f8c15e13f75169ee6560bfbbd8fa06dad6ff3d1f335b56a62278b011023100da932dbaa1bb8023fdf5e16118e40756dfa9a5cbd74796092c1c25f7fd830a4fbee0bc675c6bdbe98d1e19f41c029f650302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310098eedf176471f34931a3b540dbf8b50b78adfeb31e130609e3fbd104a9dc2fbf2dc6d79cd76156fa6896cfe56b10815b02307488a98fec6e5bdfb07512da5ddc9f672f0ca45dc44133ceffd1aa388eb63e64bfb92a6b7367ca4d16be8f64a693962a0302047c435bb500673065023017ca0ceae3a19f46745e7f02cd1e4887bdcdabfa5c9ed31b4398269afe3082a2edbba8c8243addd9820b6df5a7930cc302310092fb6fc7b469fdcee02c96217195dc22522ba67e15890565fb98fe2eb46ca84bd3d206cd986f5757941311a2ba7e12de0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304fc3cc9f3541c03a365451a3a772cccc24fb359d4b270e4a2e5e86d4647ef44dd919559d26a4b08405085b55a889c21a0230774e594fe69077133ac0c79edb8b2f5f8b66001f68ce577f5ce4414e3cbf1f958c2a31d0d09fc2010d7240a67c4d0d660302047c435bb500683066023100ff72260af04304553ed21a152a70f3eb32f540f1cd4b961829100882ee86f3cc706be049c0ad7eecba2d516e370bef8d023100fd9b354d93e4cac683c32df723dbf8ea537b1598f55944956052d1069c73c063759280ab4221e57f4c72fb9e38c28b170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301325c6198b5069afa5d8e9a0490d9b90cc5c79f9eceef57cb70f5d561dea88f431be467eeb96136d699d60648f222a3b02300cd79109c472f223bcec4fd1284e925150176ec75b99231297a3e2ac59e233974595da58911123b4ed102a22d25d282a0302047c435bb500673065023100af567c65324dc518b632f55b122e48b6dec09843218abda23066aaf74900923fc3548d9988bd7391e636d33caae78eec023004cffd8e0b94589d456817e99a03dc3445faee5cac148b6ab8b16974bb33459ceb210365af1495ee98ff467f9b825f230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100eb00f1f1f024f7b56e3ab848c8aef6c7ae95c96aa255f5791400d9ac05b55b8b192696dae4ec97a8a3fddf8df8a4574902304e8a35760f1015b0e501e2fac3875642a59db3d17ed9376cedb934ccdc7398d5d547d6e4ad08d960ef9566f2a05032d40302047c435bb50067306502305f14d202e742755b801ad7d3c9ce7634496d65e487fb6e1735b0aa792f41b47a72074cfb81a94842db971b21d24b45c1023100ad31f6bc73b8e8047767f7ec7eeb9bb60bd454d982d8555bce037fd02fa1d012c110308b6b8123461d92b7fef0e279aa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f99f87e21042334922c47dbcce079556a96600006b600553e2d49989d7c15da752cde0f839d581c0d5eef9333684f6e402307b079e1674650bba782e7516d97eb477f6c97b988561d189939b812c49a4aa59ae6c51e1a9901aec48d4d179d6de2cd20302047c435bb500673065023100b9619ed848532dd2c0bb939bdb63478cdffa68336144b9c849e09331f8ebc9d5c34ab2cba185f680ec60d59d0cd9a669023040705e05d3371dafe4cbd04b6ce1326c0054bf561d056cc9d369ab68c9d148bb3c373f08b5e5818fc499ee4082a186310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dc4d468b7709a3b94966719799c10cc507dd461602cd806f888e7e909cd5e2f8237fd5ebbff0e3a3a2eaa231c6b5c7620230079aaaa51a087c40c24ed91f7e2f8cbc59cca8b3fc2f53a26d6d8ae246ac4c67e45546dfb848db3e0f8ff576740d7a790302047c435bb50066306402303235f2712b2531386aa93494760d048e156399477a98b80dd7fd004dc15d25aca4364632b18bd8e99add2e4985c11a4702307cd2387501f4fbb9d49e10ea4bb81248697bf686a9767a32826b2c1ffa95dd29ecfc647279a6b8506487d758b928faef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f9e434bbaa07eb2931800a8535b4e845100f7e787fdbd5e561387599ad791eb35beb6246f6d45960682871aa892360b102303549e3b03579204d7505d23c65f7df74d1a7515bc068da7bb1230586859bc19906e5a8e1ffb83378b5b5ae63e8dfd6dc0302047c435bb50066306402303142b3c85b02290d425359cda95d45541b0650318e855ff11c8b26ccd6d3a6bf31e430e3b2b3c4f8a68d349e64d5d04a02303e0794e511fdd9b5ed0ef2cbc2e8261b2528cb7ff5420031283f6af9b6d50ee5e33aebde9acce89452204536367e252b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023073c85eb51aeae298661e2f53b909e40a236f268b879378504c620b2c4f2b4c04165a67ff84f5e2c7150e1f7c8c8d744a023100ca70458db4defe461cd27e9d1ed49e215a8e2e9367f3324da3ef2d2e03c0391256195a31a5e2a22ca81e9286629de0ac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230316625d27f874dd8f0ba111cdaccc472683ea9ab748ed7a6f40ceabfc2a4922e21bd7d78a01696ea9f849a42add2f0ab0231008205e10b964201ffa43ba110343d20e897fa84448e70ac7068deaa6906dea82576995057c79b3a9efb5c555a2274a29c0302047c435bb500683066023100eedd1dc5f4e66c25257db788e9b06fb18682482141ca76aa837384f503b997e24fc96e0ff70824273a5f9113f8b944b4023100d0338369490ff421a57228d3a3efedb9177911472827b625f31d5e37175463fede070dd2104565b0116ed7ff57e258da0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d7e684d3b789f7c0015586ca15c8caaaa4aa55c532f45c009f8efa591d78a2fb49beb39b4f825010d88f75745adc73e2023100dcdda98cb968224e34da13305054670dc48476459c52b578482230a53ab3b77b62a47a5c17ea914ba0ec992a0c44aa120302047c435bb50067306502302f16a3e18cafc9e784ea1d23a2c5711d8c7687cf3c0f2525c2d1e3e700a3ff50a0c5b332dbf12f0586783ac986d9ad05023100db4ca836b0286e29a76b955c7597313bc84737797d1213517f6d7376f0c5432e81bf13d92fee24b5f4b4f5cf3d07999d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023028fd73ac27517f17b21de9552a172eb1531a2e2aa45ac899984491a5048d771a02d66424823f01540fbc04247ecbb694023002468f5dbe8a913b59f61a73a607e946af5c870167304b7671aae93327efc150e23d82cd0fdd2e60424896ef3ac663a60302047c435bb500683066023100d07bd051f4d6aed67cf2a11523f5ce3adbf797759e0b2cfab968ff00ed3b19b99acf05886f7f016b576efb2869047def023100ce0e33e71a33fe8bfbb8b647dca6423badd16cccd1ae02274675cb57a5d812d5b816b4187658c5b07bba2f73b7d9c2460302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303ffa73531889114b523d9829ed79e084e4bc0fe6fb74a56caab6ac8fd219a287a86de3117c3f5f797c0899aea0b5edbc0231008b236656cadec704d3cabc3a8dbdff0fafec73375848f1d5eda9d27a894b268fabc68f4ac013b508cc624f3f8bb9c85d0302047c435bb50066306402307f46076c6b1df74e666c051321a384221b032ac25bff213706c0b899b3e47b3609a2bd01e8dd38747a85e452aef428e202306acddfb7939e3e4f6fe4fefd97862904773b5b1ab74968e7e4ba538816d1ad478b9231798e3dea2e01daf6e4ab0ba5370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306eaa979b34db004094046782fd2265b7d8dcd17a356152f06e62b3c0d83e637793aec23bdb99fa2ea801d89159fc5a02023060bee15847d84cab2337f29be838201dc08fd410296612359ddf9d2d5607ac1ed47ec88d484833bbc90b1c17e0645e1a0302047c435bb50066306402300fd76c74b104323bcfc950f58388064490287ccd9cad7aab02fe4874c93be88e6354862cd5a22fa3e7c983f24aca16e202307abae6c3fafb297e762ac0047ab9c64a4aa007da0ccbcb2821b81cd53484309ae24e11064ef1b4552e73b4de6fbb037c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008cdc8c55aeb205d98f1e0025c17ab4e1bdcd4a4b1133ac3e924df8d0f6a1663623507c4489e1c8fcee3a62269795ec7f023100f41cc4750f56cd4ac9b6aa402c228afa89bae25c0db8d31b00c726f0560646267e6597c99c099011d90a438b6699a9440302047c435bb50067306502307258df6dc954ce57dfbd0cd47030e833ba48c159a1c16bcb865f18c5bd81824d661134057c88d83da0995e57a25a891a023100a6a53666959ce16aa748f5ceea126cdf5bf35aca8fe6ee7f7f430ed15ac2fbd71f7c2dfe4ad045c9b9903e3e0faff0af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230589c7db0c1c47bbf545b13398660122294bb987108dfd426ba3fa5c811098d2c5e031de4c5130588c4f70dcb67ad6f780230624fa8359eb93fd50edfdbd6ab6fb3f3fef1ea555def633fe726ea16c5e76b70e0708501e1414e96288347b493bebd0c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bac814998d50f2a37eb94f5b0f63f2aae42b75a31fabb7441913cae349638a1b275452ce4753fd906375eca21ac7ced0023100fd5488977de74b3c9a2c7b5aef8f0a33f365b39525ac13ff55bf570301a5e78c9bf2f3b875f1dbbbc87877a38f2c84780302047c435bb500663064023060a7119d0c1e050484ff4baeee7d5fecc6796d3fcde54ea19fa1048f4f5fd2c836b8ee2d94e64084a7580cda4db8c684023006e620e51992dfc583fe8e18119fa4852b35b65df91e08e1e967519ca0a36f279a8c9ad5071487658c8ab28437b81aa80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a89cea77ffd1fac695d5ca13db992d146d3c8d4fa7b9095d05c82fe3ccfcf8f710e549b8c477350a03e84bcc0147f5a1023100e39e0da800379648e1441f93772cf7f2245be9e793c1ca2d1cd73a9266676ff54e2f3c0401fe95beaafa04fe717096a10302047c435bb500673065023100fc2b92bb1fb338a20bf34f619f5691652c12612034ab8c8db6a00e78d714ae4af209b6e5a70a34f04dd8c91d32f5fcb402302a9cf8f0c33bba37a1104ad9ff0d74cb9ca74ed38281382d5d3399b7e2721487d7b15e3e9b99e8c278f6f87054d5ce480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e6d1124ae2f98acfc588334026e2317758412907b767d2d567dfcb7efbcbe384315172f8c64aa10eff38b19833833a6d02306815d72bab09982ec45ae021d50acc3a9599d0915dd845d2c860e9f8121a6b8888ba39ee4d1087cf89a19b2889853b210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d2396c0eab0054b0b7bbc7ba997e8cfb7fcd3278d78abdf35eb1c8b4f6acee5e4ca2c8474cbd1eab08cae5ebf316c3e802306b4644532c5fe06f321b6181fd7b581e5019d3ad31362904c08e426feb1d6289b7cdf49fe1e35f742d0c9bd1d0cc775f0302047c435bb500673065023100950db83f119026fbaf7001e3f5944871d055e03b3a0ea8a633f0f5928595712ffdbf85d10ba6b908bb4066974fa6d26c0230612651e344a0d69ac9435dafcb5ea84e798b5ee79379b3ad0558580149f6dbb72b48b5cb082cfdd575dd746a09800a370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304b4c6c1f31ab3175c481c2a4c9055884fe575ce3f5a2d900664d6935230753c6b8966ffaeaa4dd7936d37d4a052141cf02306ba6fd84a776554c6c7bf42cbf9d7f6e18bd970b479fb00139bc81a5cc1da1175f581f4f383d7eb3de7ff546c3310ed60302047c435bb500673065023062ffb608c56318f9c1291f9592a4d4c3b93eb30091bad5d58a707f0b61f10b625dd298280e9a0393dd592b86ac1977b8023100f8f6cbce3d15fd20b375eb1390006cca77aae11dafaf59e68452f995439dd6c09b286246ade9f1e507229eb21b8a47160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d0b7de76a346a86fa199ac3d506731e6ea2ba15bfbe12bd150ebfc8170f07bd04496e039a6e116cec0bb157559ed7bd6023100b4aa380c06e151394cfea8ab179fb43db19fb93d0ce75aa4a827a6df645d8e3f292fc8ea17c175cf43a33c13af25bfdb0302047c435bb500673065023100a8c1e43f5fd97bf1eaa8389863da2ea9ef4229efb579b6ab560a05b8efb41603762f235c99f3650dbae7c07c80fadaaa023017a00baea4a18dd781d9f233468483b8ae4f43184c7c3231438faa87cf74145d0ecc3d7327b83350ada428e5ffc24d480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b5966a2e965e6cb3a7ee772fbb4b21848a1f613bb969d10934c9317c22a2410e1040699edf04ae7cd13e2a9756d3874e023100b5ef2fa3a04fd8b3abb1b146444a8e7dbdeeac00f35c86d2bc4cfbab374c48f2ed848f78b25ccf26bf9d3e9100cee7550302047c435bb500683066023100a156fa3671af8cdfd36873d6a61246ab23b1674c05e0d587d9f8e765a73d446ae0c2f1240ecad4fdd15c594ecfe78766023100e9c7268eeeb075afb56008d9624a2905f5fcb4fe9c5abc95297a9d9413f8ab0247d2d54de228512315245237fb57d8e60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230749e8e65cbbe3103bbfd8df9d1e7fe703013352e93ce1d19cffa13a9649b79bb499e8f65f426363be35f5a2a1c1fa17f023100879df64c8eb7279d0b1d55986e98d544d182354ebe1195ac32a17747d5582723ded69b598203d55df0f271923fe4b79b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304e66b32326c9703517d90b03c1b6936b5b0c2b7129901e00b0ca3dc6fbbc7538ae5db604e0689f0cf522ab7757b21ae802303da1c681ae5a80377988bbec978287272056b9c264ac9864f57769d08569ed27106a985bd27b84739e5f0368244b53590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023028e4f592e4dd464627f70127a95421d12ceb6080f359b32d7781e5b007c6f012582ab1b1fe4b2a1a98c90e4aeb3b27e302306ffa2b449372d9985fc99dfdd6c2850aa8ae2998e6902ae672ba5145b18704f88506a22c475551a948b250872a57202c0302047c435bb50067306502310091d6eb15298996f6dde5f9495afa9b6caf3f8314bcca7141ed3e6f363a041d71e1019a15e520aad6967998f6ebb16826023034e2e96cde6e1a2882631a68452a9cf00f74cdcf88922aabde5d9945e229d915b84dca9d9ee3448786b85dfb99bdbe7f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302cfc873085c582cfee0df86e5e6771804b5cd62cd36e9fddc0e6bfe3542dd87831dd203b704d11b2785094860a93f968023100b5edb2d407ab618438dac9944fce2771085dc2f50959c113b2f9c9370ceb9c66b862916a1ca0b03401bfe82597c376e10302047c435bb500683066023100a7f1a3fe38567d6de77dd09ef707142025d65306fb0b3ce3411725d3f28710ccee55705a01767958c9eb095cffe5f08b023100c1df5b4bc95527001d178393743c1622d753aba2a53b2c0f34be52528524b37e329de5b67cd11faf24e48550efe311b80302047c435bb500673065023100b44bcf7b5de30c487ebd71cebfad462216ffc24809aba5581019b2aa4fc1d671554d82480b93742389eb0a3d34793c46023079603b7214bbd08d9be0c7c90b0f701fba9120ab94e841e845c0e3a3dc8a85ce775de4f36b8655f960f682d5212702a80302047c435bb500663064023039719610ebd5caacb89fbde58a4dc91d88ea6eadf651e84694587d4fb873725f14b842459b68683c94ba4db9d4f4964c02303741b0ffb445a1d916551aee3a5824e8d7c41a40998a9e44a53c1e74a9854877f1215ce142974265d9c100068b3d8cab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023020c08e2b15a7d4d2cedd32ffa258de6d954c4cd43a554e4d5ba750dfea53e177215b6ea3f0bdaf6dfaa04f0b049d141d023067448db565cf79a92d0c65dc4482ef47fb4505cc370b9a962e392bb683da4e77ba2bf4859f2d5302ebbc0f865e79e69e0302047c435bb500673065023059dc5f5532f0c4d496e373c6815580cdd3d442563f58885cfcfb6a57496a4f61695b73d1e632f9a60091d1e126486d590231008911613eb861b4239359e22eee3cd659e4f6cbc5b237c974688bf2bfc2a9165a410e183ebfc3694ecb44ca78ee5283470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008ce3c4b42a09771db18de3f41c93ac68ef2af53d141f1bf40f61ef9bb1f55267aab5236a2523fbfcb5b9c5b54f2b68880230537a619966ad6dcf8a34d489774dfddb43918cbe0445143b68d496ef5ad300a977b77ef5c2a59b92767edeef20ad42220302047c435bb500673065023100f5024db805ea6476efa991fcb0875567fb05202c3a0035125654344bd71f82fb90b8938c12e08c6dc2bf308198d745f9023047a615fc49afd92e8adbf3bf77202a4b5e3fcc7b75c2c7e6ef43f07ba5e095bee64f9f5be920f358d38cafc37ed83f8b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301630c5f8eef1983e309c287bacc5658417e17d322b2525631c76aa4c939c2bf03b6f313dc0ae6bf478be3a6b7c77856c02304ec9cde2a8a1f62480850343e29282f46826335e20a7d8016e6672539d76c1a6ff6d27b40c7b55e3294c3b633a5078250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ef705e4a3907465286577ff530c31017d769c1df37018a894482a474bc0c6fdf87c69bed834944f58e8cdacffa4e893f0230615ddd4163e9d64cdbee56c040cb289f9b3185cc0ca8118d6448fc12dac1ebe606791366404029fcfdc0c224914eb37b0302047c435bb5006630640230465b1d5bcbf09f0eb35a02d6624f8c359fe333bf75312ace83c011f2685ff1112d535ef827b8aa3593eed066fa50078102301eb2c9a080006765523e7ba304303cc3aa182aca1472e9214b20a18994a6f9e0ec36724574474a48e98f3425355723b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b49dbef565fe5a083454ed6391058324ef434c176cc33641e4f97f836562cfdfe7fbcb77a0776852d5271c7255ba393d023100b6c93001a68f1aa279cf8357d6b618e7cb86742bb5ad20e9841581a4dd5ef9e6f50e4bc9f43e93d33ef4fcf707d0da9e0302047c435bb50067306502307a5dfba239502b174eed5938c6e2f01467a6eb9ff96da5d96aa0b4161bfae5ebfec3e7032eeceb51db53a219f1e8817f023100b9adcd2c03ffeca0e10fe966938a051d1bbf568cc045e4c613ff81be5695f3f78c504d0c9404a8c3ddfa6cc3be2dc6900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cb148c0cfb97c9618b90fac616f3283bf3dfcd70edb59e5be986aacd698ad360ea6dfa4062fd25615318007d7eed115b023100ba600f001b9d12b941eb242a406c0def0662d47e85bdb09cd98e9cbe1ae7fc9fd2b16e55c2ae01d5f35974e74f5c51020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302026a41f6dbbc41d90ad8c75666dd62c97577408bcb0cb2f2471268405de1bf44457befc3efe568e1ab4344ed271dec0023100e8d48701ba2381584c20f5de9cc70b4ceb108be45b51429f35c718fe241d645eec32bde00a0006a6ea0d8ca29ccde4570302047c435bb500673065023063df11c5d29c5b80ac1f99c8b263d587209a442530f8b68ccb61d84a880b01bc9d1894f95082a34e91f603e8f5cc1043023100c72c2c3fd9339a5b2d85b04b434d29a68b25beee08364d53c8f127f095f9c38d7d427c94d85d05a9b34d91ccdc74b2670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302f896050e059de39ff519a356485809ea04f05b012b1be836279c4d4ca74b7b5c9129cd678f905c8468358f92c8ce8e5023100ffcf8bb9ea666cba0055e38b556bf3587052de7a4c2e497aac9ba298d6938cd7135d6862e9dcc6fe7da0cc1e824c4e210302047c435bb50066306402303e77060706d7212b63801d59d86c0f108a24dd56e67970c70d0a749c7db97e676e2ef3906a5a23bf9aaba37af72133a0023056321e84e9c16e5503122dd06d828e1697b1ae6f888509756c4e30d2ef9068ca052e1ebb4632a37128dc13c24ce578220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f87423b8061111a734d6312b80eda9a2fed98129e57a357245d05b137ff5e184d80a36128f53d8b5c841f44b1a7cda6302303101d4079785789c6241c1d4264361e2de8d7f0fb0e30127935004c2077cbc30147d68381f1adcfab1fd8409a85f53550302047c435bb500683066023100b695e4115ddca9d7eac8e59de3791408dfc1f3560506aafd7a5a5bd19b51a20cce6fd417ecf636c478d6cc9b69a515010231009a51f4479cd98eecf1b8660d090999693d9225a484d6bc6cbea514f6c816a4cbb8ad8c105d78ada415adeaad98127db30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230465be5c713b845e738a166737362a19489ceec5919bfb05b5f92f0d7a2713eebdbffd07adcc8619abb2e295caae7b88902307c11dd05d5b8c27dbf986d4f1e69be4068275e14311a646216a315735b6d2090d307d2b6cb3544fef81800849805032c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310093b996a5a45a25ab834871dcc5e290153344c8d9c946601fef8cc1cf533b2cd5f2016079fc559914c9151dc54a54cc7f023100b141feea07f991582729ab12705f7229b4e6523c2c514c8427e4daf5e7d6a94ffdad0dc2a793e492ab57d60b25a1f9520302047c435bb500673065023100b07444c7cc0657954e2c5d06ad2dc5dd6e392c62fdca18e676ba6c85f5a88ff481bd54f5cb6572765f6bcdd5e9f0008d02306d5350696573e1a9af51a3c0329ad1f536a6c2221cdab3b0042caf1f6c6cf91eecc5b2eb105db97535a4e5e9d40c22760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b77445e81fe5463f45accc5a53e2e715ae009224b77002c2e1962ffe8826e37f19e80b22b9ed21d1ddac6ffd2cc11fca02307031c95cc1955cb0bc829c3c061ba1376a9a906e7d218f7d344201eea890e6bdb32eb7e5cbcaeac6a48387a75c57b60b0302047c435bb500683066023100f856dd28f3ece0d983854ef6e592a5dd9831ef277708ae68c21fa005e7f6642fecfbe10cc5a6459c9c932217145c6788023100ed3fa35176df9b137194a2cdcc89474fd2508d2c8182e7a5e0a452b3bfc74f41fbebe3eabd2b6a6fef0104639e83b5800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b5be52f48b9c2b18d7f04f428843c01cf8cb70f7f38dd595a1be140ec922b08bd63f87d00a8970fa817e146b7af2cb4c02303cf5cb1eea8c20301183c20d99d9e4d925c00dc7f21775ce411aed5538d9594fa481f314dedd6c9062e8b52a95bbbf860302047c435bb500683066023100991786f87eac6449bbd1e193837789d6da0a1a50d0741f21158ff4efc4afac406dbc7ab78a1a31f2ca06e73be38a36b7023100f4496950eabbbcd32e4a901165e58739b4d4f381427b7c76a63c5afe25982bb9055bb5ae38af994f4dde2b248334c0ae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023035a326af0b4cff20fb6ad5ae113d7bbaaff4d1891983d588e402c0cf1be5bbd3772b230239605096904b3673ffcc7ec602300fbd68893da105e3249363ac7a9379f2244aac31c98a458799a076253d57e73ae51622e9adf0c41a5b1a6ef6f2c06ea80302047c435bb500673065023016d29dd2c0d380a9c8684ee8f94053584d5f66dc36ab48c81daba769a07c9ef1902317bc17d3cefc5bcaf9b071e97f9b023100813050cd0f15e556a5eab6e017da687280885f2f51034c944f002aae35c63af2a8d54fa22d254e2923d038fddab22a060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d7d7b59b71577ca0d4f21dfd4eaa26972883caa5b8e8922ca291baec8211ba51d9b15cedd7ba2ff7d14243b133a7f7bd023100f3d976091b6a0439fd0f45ba4d3d0553e125ff832118a5b7af0740bcfc843e73ce2e93b0fed280db2ba356512bbe49cf0302047c435bb50067306502304febf89071cbe499fa592de37bde128a7db58687bda5045bafa78afbf41df456f6327eba2edd59bb499b9629a8bc9930023100ac8daa8b8efd882fb36bbe259f87b47cacac1fd5502f304ade149e702fa5017f65170253bac4b0f2944ddc0b5792c80c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cb80ff9aab00554070b518aa9db1949be685b09adb30d4c5f036d5c243fd0b6eb093c1331d08cbd27c603bdd2149731902302640115224b48025d5509a65927ef6ff9ff5229e3ba6435abfb8f39b9f76743aff2a3a3d1cf9936e3974fa473edb066b0302047c435bb50066306402301a7d94b3fe86b9a281a16cfcc9b1271d5c0d794bc596a7f4b977d921b02d48016ad1ded7a785d89ce5878145fe62b88f02301369ba7f8aa4710d17edee854ccd70dc279deb9ffac3436bc868de93785a483a678b60b9c0fa9042264ad1706e664fcf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c2387c21fa7f12fed3efaa839227721dad343f6bcf7a63c25a04c5956c62d080743bb01ef9cc7449216f770764ca3eb9023100aa3107583ef0a89eb42af085a443c86fda9db82237843b7387a7497761b48d4681419a07ad4a8de83c44f9682b05089b0302047c435bb5006730650230187980b1749c907168ab0e048df32ce01b3edbf06e79087ab6ef5c1c7bee7ff5dac2926e4f7eac6d80883bf94d645be8023100ce6e34c4953a07a90e76ed9f0fb3424b3449a31d776ecf3f48489546fac59a196bf73b920c3162599bfaab1ab2d9b92b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a3d8709d64b7234d4d9253d8361ba115d7f1bca7e9f4c34c2b41c51287b73f6c371173673945f549feeac1a48f20330502304a596e867964865f65db0acf34f1ec31fd89f24cbeef09c6630637a062051a083d4a67d9ab337458b4a49f4f439f5d5c0302047c435bb500673065023100e87480a81e7f2ae1afee2afda08329b0ba56f804ff48f85e726cd557aeb29914a8042697acc3a02990e79d2338e18628023046f6eb526687dbcddc26f1b787efa0fe9b69b8db457d2820d4ade31065f2c4d545f936c8fe7fdacf82399bdef1274e250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008f8e86ca2e604355c4ceeac8ab9921213baf71d61279c7fadb45f4c1cada2e0ca5a39af53999984f3f1212e6fbe8b54e023100d0fcf22bd6fd6e259b4052420fd46ee5b67f66e136856f2686ac1aa33cd998fda65af3c3b7c208ad86b41954886ab61e0302047c435bb500673065023057d609d5e07cc60a481853dd65dedbc4066ed8870813c4a4d73252845e4c6720708d42513769bdf126b5f90bee903cee023100ac720751887c32d6eb5032c8b17ffc225c9a2c2a72ff0d3588dd6d1ab9ce773d2423c1315d81cfa08f83ce9587233f2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fa363e9607154af3b0909526a395cffb7cd16802f4fdbfb48f733455e51a2a3e483cc8962d5ee41368ce81127965e9a0023049dc3cee791bc7640be176f96d674e7abc8a669b7bb1b10e5a2e0c1622ed76f61eb0ee4c9d60dc3183bd5176e4eb97e20302047c435bb500673065023100fadcd1a65fae5f425fab9ef4a6e5155dbe041194baf85d1558a85fee7696484ee5d31fbf4cca3cd73cac4a607962cca00230190375dde85a9b50c8026d9164ad9cb13895991a5d563620ebe75f6b91b0f431e25afba3cfe03100bf2d75a224af8f2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306b0cd3737dc206f85450b1fd3eea18ffb3e66cad8622f99dd95f3222a6e761277fcc9509afe79e2efc91dc79b7688a6502307ccc7f33a59890f146cc9bc990ed24cf69dbc795320a55ab262237ab05cb7235565dbb04b4b13cd981d148e4410484f10302047c435bb500673065023100a0e4e64e7d6d29d276a3c193ca4c925f7e7b651cd3285f8803e3d2714915778a0229ecc3cfbfd4b6b2ad4f8fb829424302307adcc59de151e32506cc39b6bd4735f151912d76aad7f15d860180858d45b9cf2c1dfb404bd20680e461436520d651790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023069e659c6eff77b8afa71fdced99bdf0841e9f97e80a9557fae8024bd35f1d38b12341bf90957119456ef241eeed57b0502300d5f6ce4b1b6fed1d64023110f8874d7d07d7bee31464a097c9bc79dc4cf2e25813daa39bde03a74b1107c99a87667fb0302047c435bb500673065023100f7bfde755b49c7ddf2c6b1b6ae6d2be8e3b9875c733aebaea71d53ae0b7204f5a19847396648c243564b09dc06c356bd0230315c74ea9c62a258637d050748361bf98e2e3969274db66873946fa54e04aa40228c65576049b0e36b5c1cd4134d51dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307c6b229766df6e3373dd13b8f55711a9f1edcb933b61ac5e350856ad43157bb9dbf82d03de5260e2a88e9cf6334e0ef20230493a3da763ff3d1624f9b13db021627856050f94d20fe676dfb3fbd8def160557a62d46f6df19ee11125e099f4462c240302047c435bb50066306402307fb0d84cb16ca90734c2eda9737d05484e86936d8a77745e1fad5764c6f6fe973e255608af1b134faecd2003bbc6de7802302633b5a37692b532e5befb23f1f5a720430174235595722f09411ab2674f75f0a6588db7e65af550ceb60435444fdc6f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f964fcef574845c7de692184bde034f5bffb78c36b3326c5f5b569e4ea0d0b23668e02a828b58bcdca66c5f656aead4e0230094d2d4d74a2c0282c39ddeb6f27467cbab14e57edc7a2610addcdda19bfd0b630e572932b615e2a7cb51e58dfb3725b0302047c435bb500673065023100d7968c8b07a1e98c68fec3f009e12ebb7f4edc2883f3af36b8b9348bda9e6f19925d1fe049c671649e00c7dbddec411902303eded10668a5e7ab730c4b36fe0072ef712e7c3d488e57de85383d4da58631796b8e7e317b45957b5b22bfc0e7be02b50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bd8df3600c8211ffe6c301b0490cac7c49540c43a3e7b50418d9673bc5ccb6e9575fd67f54da1f8cc2f6f1e7a84cac91023100f8192f3c28b1e468c804f742863d0e5095cb9621990f74b12ecea57deebcd01062cbdfd308c037ced1362e6b7aa9f0fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310088b74407648dc3c13793f564db6a14f27064afb0442347b3b974bfcda1d81705ce6aede9b79140ae489523a07aca7e760230394b11d9c67d8b68490371970c56cbebe643b5d4530ac86e8faaab62767b2fce1859f78e19e81860de0ee83e727b90960302047c435bb50066306402305f7b7f638585e712ff6c51045fbf2874af90964e552dbcb0e2e9f67a3a6175b9586a6ccc049344f80caed4ffcbd91b1f02303b797a45b1b066f0144eb9fd95f126000b6da7e1f0bc9e2ef4aa3b8c9ee73f55996f68b6e47cd9d7ee8e015cca4c88120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d2d204e1f232f7d67ab0cdb7e5eec3135c7b39d75836454aba2aadf24e81b2a02b8ea2d3a74d0fee3acf6b341207a4dd023020679541b17bf79e574a999774eaf40a190603f68d3a450e009f25d7a2fe18cb32d9aee81dc29cfc826ac771b69032f20302047c435bb500673065023100d6ec95657f67e30f276bf1f05ec0e4cb0d420d2ac53c86fe272d0f2dd77f06c2d1d0aedb79d39ce923ce0252b41e4c2a02302afcc12d8ce7ff5df96b54a5fc35f0389903bc0b42dd8edb58c929f788837e511608bd9da84da9aa4ef91baf26421e620302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023044894ed9a30aaca359ab725aa53e13b1e184c88d46338ccef5241d1fbe2d3067f55c3a437a427962842730dca0888c9a02304bd69113352349ea80646effd06e844fdbe2eac4013a9b63a5912f1248ccfb27e4d41cf41af3dd4a28d22e5c082c424d0302047c435bb50066306402305db3601900efd6e8b9cbe9cf47c93290c38f8e978d0a960d0c180c7ee2a5af6609924e7542b069cffdd1114f222b8e9b02304c29332a581e46baaefde0e86ce414a5d8913c5df8473b01d839fb386e7103dea22c9afe3e9c5eb1606e51d906bf001a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008c6dc86e1eebf9b09440ea9b0a6808f14b193f7e12ae51085eb03593823cc61bceaf83e1be3df6b6322d6c9584831ec502300fef0afedd96da0f91e2bfe2c3765a9d4954a1f503048e9eb91899ee2943b538a42da39cff88cbac256dd5d69ebb917f0302047c435bb500683066023100a735546f54e8cf11213b75475814eaecfbecaff31b4c96cb37870173fec61d43631504f49f34506f63078898bb6da8ed023100b26420ecac8aaf096a9a7ecae98b842142bacd9516abeab7b0310275d94c67c7fa4c582bcf7c6af8eac1ff2c66a94c2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302a904e56508c15e019475ac500ded6efc32ffa224ada13c15b130a2a76131319c78f1f940389745bcfeca11f3e04fb0e0230541d3cf3d077e6f110715733d59e1b100960cfcf8ef7730e7a9af104775376b0d518ee9564e504ac931c5ea09ef31e970302047c435bb5006630640230018ea2769f4c9fcf452b7d0b121314f1cb4d01b75c977c74f4afdbe929194474e82169460d3eda319747bf6d5aa1c84902305b05939ed2cef1b20e20167be42e830fb56587c245a63b0d6f515be931cdc266ee0e63b4349cfc6f39b176a4d2d6d82b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f1c7927c6092eaddf5904a18f725a419152bdbca1adf0ba1f68a2def547b12b7cb4b520e1e9bc818c14eae7424f7ffb5023038d9ff6c258863efa8c77ad0805ed586fe3b5779c17ec76512ce39ad2100c90f89079a5f3eb92b80b7001fad7ca6849a0302047c435bb50068306602310089f064c7e0202675f820f190acc989990b8a802cfe75dbfd29a261575a8b7a32d0876aea0dba0dc2f432f17b37e23f6a0231008ef3e34be3496163bdac6b16eb912d6e42ec834c1c6f182f9a0228566cb545642ea1718fdfb91dcc2e59400a69fd56e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307b9dd5d9ab6d9fe67ec0fb975e0152c963172efb74f0f9b82554d839d211f414e085bd907a43fed1384f636d8f9d70b50230664ccc5a73199238b5eeaee9045af3a5b743fca63e96a3a6d13ad798cbe6c6f179969ee60e25a1847a48b634744613af0302047c435bb500683066023100870e119ebd74f68f64a1e8d0d38e49c92b81799ed07585a956525f9fdcfb3613176155df1e2dd6d2af8f644e9726bcd8023100dbdee29343b635fe3a190237ea9a12ec0c121e3bbd7467a2018824ca77ab1e7ca4e50ac83eb80467a49c3aaf21c066000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023012bfde9ab34bef4c21f99e557535a0242b7afce05b8cc6df97c289528d46d8cf19f7b4dcd698245fac87e2cc13d0eaff023100c7d932e958e41c4a8f75a4dbedf399472cbe86db70e56f466b78ed9a1a998f18c2b7d8c9d26a6f05b5b78be072a89a480302047c435bb5006830660231008991fdb24d38055feca77d036c8dfced0a1166661542aedfe4417d9d3abd04c3a9197d77cefa9c6da1230b851504da6c023100f21dde1ffd15ce1daa5d5cf9b95b60f942c49695db5e0976fa3a9b61778a22b36153ff5ef8e66d6b4c1ff5820ebfd0780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c66d9ea906a519ccd0d1f03906a2dacbad508c339a793f880ed3499f20107f7064fee020aaa8e54c341237ee22eb83da023100c97031f040d7307d9436ac83faed5d930d71f2e76cb0f1cb845ffee3719fcfaf2b90fcb95f2534e9583ed8a97d65600b0302047c435bb500683066023100bf456e624e54de1f089d81e6f5ab4edf87f2b77ad9d0e95a118bd859d9b5aea1cc6cfc48bd63e4119c56286e38d13bab023100a45b4261596188d15fdfc786332391e838816bd26b306a6bf07cdf8501659fc99b6d9798ba932cc29c129c3273c298a40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100860968d79706b8d884c92625c90c448d0e1fd791b7332ad1d689cd8fd6390eaf16b3dbd060c970821b141c5a191c024902302f73a400add5509bc422676e67b3399cf6ec2b401045a63276123949cbe7d7c9c9f8aa71d28b1c82d6db11dd99edbcd30302047c435bb500673065023100d8b9ed0c01cea5b566a87354bf189cea952c85c7d6421c2460a68e294a1ced79dcc18ced5a5dd6342ea8f9632b8d95ce02307f1c35ff282e32f9579c31bd0917f6b119077675d2f07ce4490295f5d6bd383628805b53a0de455343de4929cc2021d60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c8fe9f59a80fd1d4dd984d0362a6c580d15a3f769467653113dc3e5f514346eba22c90c6b8b8e028b002dbba0edd0112023100d9b43b9a8b7a66b00d1ed262ad37a78a5fdc020fcd2b89d253ad3e3dbfab485ea528d26730cf02a35f4bb94c75f54dac0302047c435bb500673065023055f3145477035fd225794233ca8ed83e40bb3862d367e93c1b553d162ab5fd8eed04d322b9d4dbd7b73814ab72597123023100fbd6a40f8da55407f426647fca41fedc023e27dc3514bdf2de2749c1d6531d4fcff4d4710e72e390be36c103532ae0780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a34b730e787b160dea9395466e1579915b502f9f261cc7b60d710df2619f87cd3b39fa2974c6e2296c02f90ee3b7190c023100bd1a43c724cfe2264ae3c7cb8f1ca191c458eb73e3210fb0412b8ec34b28c9ed3a3da174bbdc7099af3e2744bc1a86f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302cbbbaf6ebb9d203fbf464b4048fa44f40a39992d2c67dd2292e45a8815d7b87230222162c6cc967c2b6f77c4079bba102301ce31d34323c091a19521bd19e1f495091f162a89228f795ea922ce9cfcca0b0de87c7b85e3b2058ca581114bebaac5b0302047c435bb500663064023012dc169474952b978998fa7943660202a1a2df7377fc107535405c8e0c87f77d18ff0c4dd9acf291bdd592611b2c2a5d023019a50e0636cb9288604a945b67dd76d7f1335ad0f1d504fb229a93379bf304e03b121e81c963b8ba1e1f920ae51f68b50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023042348fa6773a36d5b41532dfbaea36fa75bb020385a0d23833c58090f0e260b48bcdc61ffdedcbec87efb116f022ba870230567b3a8f6160e83ff3aa948180293d4c7bdd05dad94ac16d0e7e5fc1359f502bb1520b7b1e4ef3254cd6a6269dc9b7980302047c435bb5006830660231008b03a7bcd4f6b330bf454e76d77b66265b52e7d4eaa8424838d67393a8a68cd840ef2a3beb78a9a426e13816c4db0336023100a532a12c451d89eb2f017f1772a31d8867a53ca593dab28467d3e1aa6e9c5eba15d99ce245b338601e78051dd1acf6710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100eecfb2df9f03044862ae246780d63afa627b8940947ff2331ccd8a41692d4ff68555d60b7b20360cc7d10d76c024b3610230680f335ed7efe50695d5c03fb1184bf14d053667f0d3a27588d40a6d91e3bc971a641f3118156643146311a36557c1c70302047c435bb500683066023100879f0230df9bd9a097e5e776c120e2a91a639d27cde1594ca70f755d1a8a341cb977f543bd1c4ef7c326f4a98ac4e366023100e73f981461216e031a8fdcd74533103007c11b2cf3ed8c9534499ac80e5c5245255df8800079f7513f3952ceac3b75f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c73beac4b78c0923e32f85824dcae9d12e057fc189ae3d828de061006f7c808eedffc2ff32bf77fa7c192873bc2843f3023100c80037ba92a7b8cfe44c3bd8779c66e6249b42e4fd0f2a025a98ae5ab5cc8f1cd55407fe4bc528c4b91a1f2d4039daa10302047c435bb50066306402304b7ed9e9e22c1518dc3be4d23227dca472728cdbfd48a2ff7ab8087187e9df0898368678d1eb4f8989ebf10bd8a208ca023001205dbde8777b14e9fc59a2bea4ccc02c571a34b4b0e8834fd9af9c1398259f06df17ea8e5c3b2ccbce268f0298d16a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230286332f152530655d840b0e605e8739c116f44c944e17bdf1403de8651fe5610c5d27596372fe825fbbe3a92ea5845e6023100b8387823ef2db21b48169020d51434f3abca42f26a6200add0a5037ad1442a119b7a4d4bcfed5cdd2ec3e7d29f4fa9550302047c435bb500673065023100e97f53e758efabd067b569ee495c66d9d992312bef7df46dde2492e4942d08261a22b4db7f21d438cc1a9480db4bfe94023069c39de8255c4ba322573c9217bd448bbb53bd32ef6cd9c9b3a1a2a3a8bae661aab85409b3c96440154722c0c18ef27c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a0f17a80b4d443bb8a57a88810c0067497f7df23e4f9c957e451a851aacb139a314be0b5f40faf30ab6534355c4f7428023100c1d0c79ff092ffe2b1912b6ebce6bdaaf65d781cd52eb1c9a5034cb25e554258d884fe6f3dfd1a292ff2349290e825f90302047c435bb50067306502310093eff9ea08431595df0c44c75b0b3b3bf3c69960fec200d9da4b337feb8b2a0a5f0402a6e0be3d50c1e0f2fbca7e616302302504cd6f28152b9a4723dacf83c86068a70c1e0843d1e9d0012da33c099b180c9d3e83a5ad26f005ba1c867fd429fd0b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b5a4a69c28282e67b9898ebc03a59e54cb86c358caf9bd633f3939fa9a372fc0ffda083d3356461932ede18ded43daa3023025c6bc00d9ac1627e50260d9f24bccd8a199ff9615274230d6e171a695e88f305126857928160d30a58a7424ec4b8da90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bc43b6f62b9a353266ad1dc0d7f0366bf569fd4e7a3e3a75934668b3ad2a38204bfa448fcf62f8771ef778982cd4faf2023100f0f90ab889a1d882db9715afdcfb9c83b522b69ce939c94e32ff3d29f403d7337ed31293599668cee13051edaa800a7b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b64ac773f07d47a5dd25533a8e9695909cd4ba06462dbe4a3843d65e71e6ad79c56947e89881791f2445a83031c96bde02306fd3bf0d181333a11170d1292dfad1053daf37dc739be4448682a25d5038f3eac8d752374e3b11486a8f90dc7cf43c9d0302047c435bb5006730650230722f995fee2e2fae12fd9355c0110c7065c98b79967a9da71b0ecd7429600ca9e1e492a1927761f24a9b29e24b81f1b3023100a2c5a062b665b6836ff4edf569a6978f54ed024e80ca428388e8bb5a883f77307c32452a5730dd4dba99b846bf1fbcfa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c3476a22e8e22cae001c9ac294ef3e2d80a3e102195447b0d11d01a48c694ac619ceac1c3efacd74dd591a58269f1efd023100813b7ab8e25fafccd9697aa95d20e7478d472be8e18a07a10cedbef9c862a6b2ad463d039f5007845a6705f2847917a90302047c435bb5006830660231008fb473e38b36509397063dd03b94e2904b46eca512d0b1e888984b493acffabe05ee7417ba2bae70310a03eb8fb8bb72023100815e30055bce0e8d706fb2b3e9fad57436d03548956b2261e49987a538f4aafa3da437e2f94baff1bdc45aeef30d32d00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d48f1964d0103858bd1607b1675e3f49aadd89980914bbdad72aea0f106066a5d0bc0f3007d85f951f3d3e083171cf0802301344f444abb0b7cf3d7934ec72375ecca31cd2faf9b510343fa491bc7420cb306aed376e3ad0b400788b64fddc6c06710302047c435bb50066306402301b705791b433c95befae18db417daa1561a12dcce902c1e3b5d706d24b5a7cf8a8c644367ffc7692dee0cdbfefa3c62902303bf4e5d60824f54029e214bb3c9b89737c1bb78ce5e985f094760dd6efa004a67f99d28fa454e9df74270294aee3f0660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100dc03356ef907cc6d5711d0f5a721c48088d77efa63376852dcb35b742d6b409d94dd29a699d99c944f0e5dda61019e6702305105e161cc0ab7f264d8ca4aafe8c62c82f1aa35b3db673aee1fd9cc8ee6190083daab9acb294c4166696280f555f1740302047c435bb500683066023100be1d8e6cfbe81cf1e4ab16ec11fe09cb5086e6829d825c505385f67fac601bb666683a21aba2e3a753893faa28ad21ad0231009554dfe8a0b809a39630cdeb69287d245594a989840e1737cb892c5f87db30dfb5576715cabc39cd5a66a1cab00c6c8d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301fc0c75c01fceed9391e8e5c68df8fbde1933481f329ac6e77d6caa69013e2a3c0ec713968b0fc15eab5b0fb55a0bab80231008ede6a50feae995d09509ff2df8b113631a84f298dd2ae77e9e748d88f6a7b7a0376a6dcd5805083a2eff586ed608a520302047c435bb5006730650231009f20502cc6993cac7b37d10da1adc2e51e5281b66cc19cd17cd12c87c681ca1d0cf822ec467c42c6a63695b6addbdf6d02301b248869e5f47041aaa712a5509c70ea1359ecd71d41b4ca844e4e105ac9be2ded2fdc077a9a8f991b2bb25e37fd5d690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023036cdede50b64aac6508a48338e4cca8525a6522a20481f1e619880080685f026e5b0fe25f8ec78f1b75c3fadf304c6c7023100c331144c0c1452da2877bdd403808adb8415e7ee14563c6b84f9c4fdc0e9c0ceafaa0ee9758f943e2129522a93c546300302047c435bb50066306402300d165c99189e94c88592dd53f58f0f08564474db02635ea90b47c2ef0b0fccb2bb4186db4b5edce9b6d193c770395af8023032ffc9d618fc3fea9a474746e38ad3ce2e67ef24529125bec213e7c7b396c96b561b41dec68d28981a106a001557f43a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a83465df4d1450799df41a93ae799a6e966aa656126e6fe69bbd30fea13dc1546792112619c0187fccda42547685dec2023100b2e47e744774c0c39c33c21d53ba1c184c459e0ef8e3a10b8b62da1146c69292f5de79498ebe6b268fe7771a2e4e21250302047c435bb500673065023100a4bcf54696f7bda6eabfc29d6dbc6a088a862c97f532f514d932ee289452bcd587c0a52ddd4b342eba865a00b9a4d42702304fa5d69ef4f3fb3ac9ea7717a3eb52083115eff8fd22b9cd8457df80497d0d22b61677abd13520799418fb2596151c150302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f8e58571241307e24ecb7beb131dd9ea8d47c0c8e160d1f24d55e292dad66639eeea136bee2dbbb6ed1329bfeffa7bdb023100bc2d95b7b541c3739cd17710903dcb5c7f853cbaadcd312764d082eb48ece35efeb02a73d2cd859a809d946fc6822c190302047c435bb500683066023100ffb53e4319bddc9a14b685c6df69c4743973e88602aa3fb95144d47aed8b67b03d53d46426c16aed72216b89764fff190231008cb46a1c8d8fbecc0c411ce166be65d503dbffbe68999cbb7f4d471535e1ac3b48265173492888a3669a536c5e710b220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ac5cfb1aa3ef8f2b2061aae6e365b6633d2115c59e8bcbfffb3472deff0c8465f68f363f24972d4b85fbd08c7c95ccab023051aeb03b2216c46dfc4326cf2fa91d4ba33b687cf48a07ca1ad0b166d8268290585456a4a2c488ea53a2444b20d6c8ad0302047c435bb500663064023076b6d33548f58b5059d43d9b956f464cebc746c79d7246a07ec52c53fd3a0d66feecb9996541d41fb2e23beffbe2a63402303c28f78e4e9793cbbbe6722a602084fab835708a3ce8ad6d6c6939cacfdb49c2a21a483349d3055941aa41787d6c4e2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023064dfdbcb47a3f43b1fbc8db5b88223b79b6031d8c6754f60f60a8dd4403c9f1acd570678131e1ee563760a62b2a3de91023100f83ec44e392171f4ba98c992e11f7c02ae41aa01590e8b7fac77f0279ebce15a9626c951249c04495a2049df8468bd600302047c435bb5006730650231009e964425682801101b54da298a41a6dd1de2c4b1a5b8d2d765b56f89855f855e17cad7670134d7d3ea657add62e0b5da023022501aee25d5b1b09e5431f6a4e42a1d07753e72cca0c933ae36576b072f39963477b783d4673ca6b0ed449775c589bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009a6e8d024350aef7222da76c25ae27c8b9281158decc03040ed836c2719afa001ac981e93c7fa80471717f0e2638159302302a036188c88595dbbf42b0dcad1efc5dcb49ed7d2be16bfc0f758c241b126cde81b2f9fe9fb74ddebcce8f0f265928b20302047c435bb50067306502307bcbb4d0e27b5b65f9efc8bf81a660ecf9f939f61b88ebeb7c7f36c5a9bb6407ef8467a5ae769ead1d66b3e635672766023100d2a9203fb8790bac588b30236067faa65afd590f2880cff6ff04e0574264d33b1d42aab871b3eb731852c41b18a082d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e7978e2a264eb2c57292d4262ba598b82784d46626f1198e6f66a2d82d9bc080a46f1cea2aa81b80df29e8fc4a1343a00230586516d7bf01c6b031332250969929ac8e985b747d9cd55435f404e21754551c72985101d17d9ad0534d24f47c7a09030302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230775dbffdf5114d5c4a4298a63f6dec7f7f70b02ef46d359c6e1140fc64b42409c24d2de043e7d594915dcb640fdd1cba023055b316fecd2b8a86a41efcb47fd38aefe23ba9b80b261075b66555c6f04b1b419d7e618e98b47bdef88ab9f1a00589ec0302047c435bb500683066023100be8ab0c719bc0625a20a280b103ee07cec6b8dc458ed70a575a4710821dd3e8c6a21d4948402cbab0c80f2a7d2979218023100e198cd3442e180bd4325206c499b12358af3006e930d9e256eab0a307d552720de351bb15851ff861361781e3d6e19760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023012444ec03174943125d3888b1e04ececa53697e1edc77136f35897cee82286c84faf88cbd83371a9d20a4841afcc18d6023100d1e3b338fb249e39d74196dde170e7112046acd12fafba0b551d7a51559f46c13fab3dd84ce310529ddf337c53713fcf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023013f86f0f8245c81314bec12cef67cd01c27203422984b45e1347961a756496d4da8d773cc2f02f3f1077de36b8ea90ab023100f1e28c3ab2c09f33d18169796f9003c36e1de34c56fcb867975771b089d8800706a761ef82a6068c391848d5d1633e330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023047aec73edbe24fa1c82887a7f99c5934ec4417dc5052fdb9cfb77cdd0466ae1372bf948caa65a14943da9baa075e046a023100855718eb4ddc52aeacdf355ceafcf17815891ab873a2d590815d201a5d44400ee532aff8d5437bc79016d876520dfc730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306285914dd400fee8bf2ea3b17b01942aadb95da6c7068ce9f7182eccda9bb6d2c700664ab8c9595226f42877f3f0dd090230029f9c8ee85b5f10e8cd5b9c0b97b533d693811ae3ff1dc9085131965df42d76252741d085b4d79b3d5f3346f651b1830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310092c4e32df15284b20a49ffca75ae3551cf9322a979f9f2beb00d0d3cbbbb649f000f1f43f522bf384cc98b6df8c3763b0231008c090c1d70364116efb618ae90d749fa0ee90439e729c22560b0d587895b9838eb06cc6a15a59d17bc355755d89b20470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023060764f50fbd44f1c339477d04d345302dbcdd99e8912ec8648030e01e02b22b5e87b4941390145bdb247d7bb9915bd6a023100920e8353b049ba7987feef9f925d6717e284d4cb19c9288794e48d23ea230c35707deeb6f2d59224a0d00cd5460f47300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023053f8d0d93913897600c0e95b10b9d2d35b294ad3b35d10c4c1e03a80fe0830b17da9cccb27a245d6dbb5c52015d2ae0a0230407a04aa5d02541fcedd70218e908d01daf584a1bbefd6b735d84b9468a20044e6e7f6e790a4bac0fce4869b945a5e5f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bedd2fce1cc77bdfd3a3192cac7c35da6f01c20de101825aececf78d5e1e54e5810c261dd1859fb65211877a1a9b57a7023100ea40de8b81bab1d672de0261814d3f5861dbb54e9f1e428cadd657975ebbd3b31b4734f29e3553342e44a64f649fdb3b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ed22bc7ce8a880a902b910c094514cbe00a5548fc66236c3318d0fced3aa1b8bcd28fb5442ce78a985bd4bc5206bfcec02310084d8581fdd005b8dd2c0f26139a371fddb7104ee01036d7c9767e4c5ad8645c40fbff865100e6c717ff091e289f8b2c40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023079e0d439612dccf6c4aa90ec52bc4019a622e2a30cd3a57f94246d64d41cd4cd3dc9290780778d11676ec388dd28737302310087279f9b1158fd97e1fd5ee9c80647406f3649650df9e61ee556390220ba98bd4da91d6ba69dca98e4bd25e7635ac85d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307eddce7fde5a4967476c1a7ccf813329aed0d1491abcaf9276f7f474ec3a605ab9616001e82d7b163e8af05b7c0ef962023100812f32622bbd3a4c4ac30b6d3671986690a951101341dd6bd0de6ee21a8aa24ec470ece2db6d2453cbd53beb04d98db30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306edbf7bdd3ac9b985bf47f2ae0ac2de10c4bd5cf1aa36999c91f88ee44924369cbccb4ec12c07ac3cc98184deae3b67d023100c80402edb51d4f671c93847148e87dbc726b6da6dbc98a104c10735467ce3de24ce00d662fb6749048133176be4256290302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023030a89af5065c694b5af30fd1146b321f8f4bb559127d5cd6f53524d0fcf1499b72b455dc6782c1b6973acd0abb60b14a023028d793cf245de6e41a12479627ff060a56a9d324a6dea652af1868915f398578b742f4b72bd0616ad1217c1aa285d0d20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a96019fc74480b3bcedc7b04d2d226b614ca5eaab02a087a9454dc819d21c42283fe625e098b7c7450164e8130f211b402305a0f5c6972ea9e05fb81162d65e8cb7b1bbf399b11339cb5e159ce6fe06940acea7066eb9192ed6c4e85f1c48f1ab7640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230722244163edc0e99d168f80608879ddd87ecfd14b2f2a77bbb15391cefc82f1cd0e8fccdef3c5fb1ca7fabe0f537d3d20230531eb92667cc33aaa0fbae30da68f93e2f7bb44d2e101deb3fa1ce0b853413794e078325445c89f1688db57d223f28830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e9b5152581dc7358886ceb6355e5363e436d132c5cec6350510e018ec3c305d2c841f12033e870cabae2f5f5199fba65023100be9073fd719161f1cc00645df0b129cb188d4186fdbe7fbe00a71c2c3b76d412b548254890d0307076d86642e74c9d4e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bd75fa4bdbfb6274b48a80a14ce9e1aa22370b0790b93f4fd8b6e0970ea8836617263de53536b700d43c54b19d2a6c7c023019c3443777973a64b433184b5bd17d7d5a575aa8c9eeb7500287e4ecc80dbf76504c9405bfeb0d51cdcc8df47e60a2840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100faebcba145d2c2efd59aeb688450322b527cbed5326c4b0ea1b3dbbd94369e28d77fb61e536f301653aa5e7582b35b1e02304b4f052a6ace5283954f5397c0f955e66f4aad46298adf70f6f9749924420c315d235937d5c6dfd83ee280db644910d60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230301a23ee2a303d13147267e9c7e835e43087ba9489c482ba09029c6f3164c6341fa375c168f21eeb4654f93be424d239023003de17af8622af2821286a115be8b5379a52497538024dbc411039330fa62250e606b00236ba778a30f17d01980f281c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023029aed514dd9e1624c1e9ee1367e06dcd6c41fe7716cc49d40fb34da92b0b435e33bb955587364b0652f53f7514f5b8580230401ac7a8c50fce0cc4c0c86b95a9fae058d4f757d9d793d19767776e703629c9dcef66603a8d2eb63762770d9fb0626b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b5144694129e46750ff31ca73941aee4c010bd7a6e5371a85a17d4058e43ba40af7dd02327283ab3f79a4668312968580230266ff8b5dc82649b90daf2a6a77582e5f06edf3f5c465494925f2db19aa634e8a6d3e9d89d1364da766c429e44cc1dfe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310084dc50eaddf78dcfe8a70feca435b85517b6ad6c20cbcc6d2324bbf19747574479dbd9733d4657f0bdeb9ce95c9519000230277a54ed14bf2a1f7709d0e597153f789b44f16131e5ad8cafa327834f5fa014e0627e6b92effcd7779b5f0af8edba340302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100802e87e5800b2d430b2aedad9906b9376f8f7d5957e2782caec30bc6373e9783d3a8d0f50244009191eea257d78053d6023100fa2f752f352554f2e29910d87d7d998de03065c50fbab5adbf7d68563ff2c00b12938f598501e16667b7720f92c7f4420302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023048efda68c882a989d7968435d357f2cac518257ce95d0a7fec6b26351a32599eef1cdd9358857ed04d65ccf2ec76dd3a0230537dcfc1412b2872cf29ccfa64277bbd96459614aa5d6e69e3be20e007d0193a3bffef55e35431909bd4d3f63c0371b40302047c435bb500673065023100ef151b7e2f7530349df624a9d61454cde7f47b34400807af4c1aef8715d9c7e15a5b24e3ec20b11058e4b8f62d3106c2023064c3e09f5fb3da30460311b6bdc622ffbdbe2e135e52cedc9c4695b22df13b7b5f776a65d33f43449f6aebf234d67ad60302047c435bb500683066023100d2f6967040a37af19d8924b1a3a0aa0050cf7ee42b4ab781cfa365b61944b69658d21b03bce9706e05e2391d17a52c2a023100c060dea61f6e8405d73d0e38d57248198747b7a898c19c53522b75a1bf9c992abcf9b281ce720823ffc251331e0431ff0302047c435bb500673065023100ff3fea1712d10f76afb8eefcf59465afdc60b1a957b5a4c394343119fdb4ee2775ad789caa5b477282ab4d1069265b4d02301e6a1cecedd868fe22a5e2507e3e732b6ef25b718efb8bff87de6f74c0a1c04b21ac7963152bb605c6ef690d4f3415f50302047c435bb500663064023073f7f5fa7ae9e1eb604091d3526208fdf71e15ad27d41f687173ae2ed42655862a7f106f4f44a840371fa3e4a92df0890230085c84f0230df203911a5c9a41c536b204966edd7322a867c836af65ef2ef49a9a92d75fdb6566c907733d8cd54047bb0302047c435bb5006730650231009a3b22cf209815769c3f2cc6e4b71d5b5f5e544cd1039190057296e41ce338b7491b2232bff72ebbe547fc9bd8bd9e060230278cb3730e07786c4be9078dcb1956df2419429f2fa00f67c8a19841fd7ca77bf6178088ad8677ec8e55d7dd51248c100302047c435bb500683066023100c8da7efa284d4af24adedc515f1b9d1fbf54d2e381fae05c72b79888621b086e0fae5c32106a71ed12982c5e57ebb63002310087e3529f7cf27bccb39122eabc71e1db11e5f1836405a001805b75719e9874b90fbf3e2d5e15043341f9fe40d70f6b120302047c435bb500683066023100fe8cdd97ccce202be89da0849bc869cab4fad51e56dcf4dff75b9fd35201a07b4636878cf75eed507b965019a0253763023100a374432e563e70b370145d9a7e1b167ec26ee58865ffcde87dec292eb449c82f89f6f335429aee36db85079c9fbb55c80302047c435bb500663064023019da7b49b41a42ce9fda51b43fdc726711154ad15e8771eeee8ec019455f9bf1b2e216bf255c64e309a192fb5cec1faf02302f04f3ca7a8ea0db2b51a7fd33f15a1305464238e866ca6a20a84379b685d8afdbdb79b19bb24bf63e76a102165260cf0302047c435bb50067306502310093555ae59c82c1cf9ab0b1234c673890077d7f10467dfb86660cde533b2b221133ab77da9d164ccaf61e5744f102aef302301e0dc8ea92c463e21793d22dab6338b193b0f13b7b7620b338ff65133e74fcadf9dbd98a107c3efd98133df8980080770302047c435bb500673065023100cdc66d79a1b2ea159778d9d0ab2f8adb57254fe27a9a446d04ee8b07bdea20bcfc6c3c2c71a1e1a4ee255d04389d05a2023023476296341451110ad8936dbda28f1e75d67583fc8657ab863f3c57c8c57f04ffe94734d7e042355c775abdf0186c1d0302047c435bb5006630640230338a77651656640ea639b16d247da01f34244b55d9c8857726387f7808ba88a8613e00323ba29b91fbed55ddb524861c0230501be3c81676baa6bab929b967495cef1dc667b6fb560a2dbeb4501aa892d710294218e441172b48cba11627e45a38f20302047c435bb50066306402302a2ec47f929d880fe9e82a4583f89f0a004260711c35229a6e29d1d0268ca3e69ac1c2967d16af6b3b09474491deb78f023012d13e09f454537beef97548bf4cd052fd5d84d36107b67a7c6740032d65f21b726e9eb80e44124df17b61eb1ac4cdb90302047c435bb50066306402306bc7c5fc8045a547a041de19c9731a0750f3c71ade038326a92f86a197be533b077e5d957225d00c6c92b1f3af5ab71d023054e649fa58ac18619751b65df9cb2e53687434d661fd8b8e310de7b4502831cf6291a9e9948295545c085eb5f258784e0302047c435bb500673065023031df093320af6b7be5c1814570fcb8ff01449295ee3f59d449891e098a123a4a4351ac86deda75d22b3aff27b75383d5023100c9698d357fd78bf3fbf3691f01a4bb5fa3d29decf8e3049e1474fca3aa61c50914243f1f823f72666ed3ee721d4433b30302047c435bb500683066023100b63b3a6056410be797378077b6dfc1da2bef709ab671d4dbcef7180b1608b64b2682b3713a2ca514d37a413675530277023100c3c45b32ceaedfed3fe2821c68443b49acef01adf0430527ae9bd360b3187a3c0c46c64644e848f5fa067b1e32e14ab10302047c435bb500673065023100a361d3785a81602d20470fb37da303f60564275d57dacbbe3b82cc80751d5bbb1ef22f1a62935b134b88adfe39854eff02304ebd709fff543c0d27e731df9108aad27abd46fa65b232dc14067fc94beacec2b54f57eaf4f0ce41abd08c12afb59cfe0302047c435bb500673065023100b131f8098d674a9cf14c02255735ed170163ae9440fe5594a7406b3b7b3caf7e97e56dd632733944b711de70bd5867840230065267538c05a9c3aa62d5001ccf1289d9e7f9c1f9993ada2c0af86c05d8850f4be02dc3f6f93d820e0235050e12cbf30302047c435bb50067306502302bfced0be4572856f2751c28962f0e4f92e1b5ebc14cea3fc11dd781757dbd5ba1c02dfcfd0e4803128317e726b53f20023100fac6a78aec00dc99a7c7ce8d9936848a9b05834784aee95c291159c13a902348a76d1677cb62b04cb3aa37887ca7a1d70302047c435bb500663064023073cde834c65ab7bb8255425208008e2d6b68bc3c72bad09d03a3204be19af2a74c4e7b87594c7d20507983bd6cd9308b023021fe9877d47378a4bd55d3aacac76f62ac0dfc79bd701d88e422bc531d92f3aa702e1044873088877419885987c2201a0302047c435bb50067306502303d1168363a0c269587c16f6b7f4a896c3e45e9470ce6ebd33b9eb27df89d9b8572baaa894daf1ec6105b2e9a6423bf3402310099733e029357c567aa1bceaedafabf6fcb68a65a9a738274d5fd2a0b31b1089544fb755fe9786e6d2c5f43229d5ee0de0302047c435bb50066306402303e9be63ab209f0ff354c9b030e8ff980e26077718479897612a553df8969b7e418d0d0b94b511939e99e34c500863fc90230288a89cfd6ec11e5cedd946c08eec66154932a80375635939fb6d9edeb1decf01876baee1626f9ed5bf4f6a3139a825e0302047c435bb5006730650231009dbb99e76455c2c503f9fd746f569e0bdb597d40180a7ae0f7099a401e1ff5b2f5a32cfc914e1ddc182a30555ad660cb02305dbde8e6f8cdb9e9db685f70f71dfd74ff319fe6171a68a750a982c2c8a94fcd57a9bd4dc5066fdab4e3a80e4a99c7380302047c435bb50067306502300538cf62a65fedadbe0e0afb99a042d9d6b608392da4ad4e3e32293331442deaff639725529d2e8763e7d52c07e006fd02310092a4f1b01e4d4763c20bdfd6110731c5deed1951e19ac9af532309519424d48ad34d8cf23f07ccebfb92b0a024ceb9830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b10412140d0b18896772c7d3393266e771cbde760fb90d8558aded5cf807b14794e2e131ee11280956e94eac15942ea7023100fddad1f09e8d55ae1aaf2065fd9b5474673964b396a48b92f22b04a4ba6bf5219909d6b0825c2a427cf85ce44d5687c90302047c435bb500683066023100957a0415c4738a4fc3b07f457e0ba3b817e41528e659f42b418682d13a9a7dcef55cfa1fd0ef4aa5edd5834393633889023100c4ce4ba8471e7b8645d35b28af62bbe48d7947af2b30c436efebe2f59ffe3e72b128c157de3efd461b495726289b1be70302047c435bb500673065023100ead7782e817966db585156062de996e93680f2614c6704151b218e299f0ced8625ebc9b7c55e78921bf978b80649283d02306bf778fea3e39864a7c2827c5df2a7bc491ecefdda4b1cbac68be33fb848f1152a6a0f0f2f5a531703acd31e44723ae60302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb500683066023100d330fd6d76674b0b8bf54762875487f3ab289ea71302ebe4eec35a010db22d517ef5c866fbec3a499feeb1e554e7b285023100fdabf606c90fe0b046577b4f9f806f013e689941b15f94c262285305b386f37f784089984af9a026a39dddb803cc43700302047c435bb500683066023100c492a82ad107344c4f2c40c233dcffca64e28341a1f30a626d810dafaf30f6d626a2b9595d16ddc8711c2f616ca7c9d4023100fbdcedbcfcbed425f34079e675ab203b4faa6a821a8caee8c3109df42de2bf7e3cddd979bd16e57287a0ae873327f4620302047c435bb500663064023010d048b44ec7bf623aaabd255733330cb5752c7a5d686363dd97d58019ed668878aae00e1a38948b256179e97740c5760230494fd8c40e9b40c2238b0fa874e72fe8e6075f46a3ceb0beec01691fafabde42962f10623cc457433e2190b8be2d8c770302047c435bb500673065023100b6109f8cd439ec6b312fbe6cf4ef28045b0e2ecaf24ffcd7f08593d3676b3d6ecc84cc5481b74d0239650bdb82c1ad9802301ea748aa30014372a2be127e309c74c355a537b770099f9977d146fc9f573ebcfd486bf18b5aff1f1f00f9d8933e1fee0302047c435bb5006730650230219bc2e16ae2fa424f75ee70a3f3927905d71e069f21bd102afff27d22f38cb42e9b73b5f3699434ff145fe4a86c48c5023100ca141db0e3b7d8eb7a54f048077a3eb45c3c19eaee7221e378f4d04ced7f1aea4b1cbe074b3f0f35d4349c13d5e3f6ce0302047c435bb500683066023100fc0611446b1285850c37c00ab1403de687da10c7bae347e17cb5b763c0a3a5330f371da4ade2d36e29fb7f0f29f7213c023100ef7aa26dec26375e9ee0a3b0b3ada182f4a2481dbde1e72b8e33ea5acdca585ad5bc798ce97313fbde60a6d528dc44830302047c435bb50067306502304415dfb143122d6ddd0d0bc887112940f6571873323bc264ece43e16f74b09ac0d8555913c2530a9a27ecb43e9e41b7c023100f70fa527c449538a3139e560e51a7952dbe9c5adf2b4c71ee7fab375d15f709181532f23de25d3d9f73e7767e42d001e0302047c435bb5006630640230624d61c9d8ac2db63203a1c3050f7f1914b289df106cfd48ed2073ad05ee4dee0e6acc8c1ac38095ccc3f3af42ea5fe3023066f9701b81fd4a1e32d7aadd3818c10aace7d044044856bdf48496ffe3cf281f7d94b18553d492c3d6ddd892b9de59000302047c435bb50066306402307ddda1313958eb8ad007e08576ea552d78c9addd2637a5eeb70ce6d9a6409f8ebbf52772d4df1ea49d59d5e6e188f1d302301e72d2593a9041f18ac647cb623402ae270b81f39fbf5e013a3695f812d7eeb3f77e91be585e868ac1ee983f8cab225b0302047c435bb500683066023100bf22e1b420bcb8da2df281d5766c1563f199048e6333f6518504188550cd5364bfa6306af62b39efc8ea6a82760e96f402310091b028d87011fc527f773c39ec3ba6561af67b7de352569ab8c31e3085a886d1258f0dfcc64506e39982cb47fce148820302047c435bb500683066023100a9366942cb8f3c059c36bc8d739311b53f2c290ee63ffe682a4f6621e969f0d825f19e58178b4444bb68b74a1e3e209e02310098e6bbca959fdcf7499b702c4f71af2b32316f375a6db53cc6c6c56a5fc672fabf81219f0a86b090162088d637b1abf90302047c435bb50066306402307d4b3639eee2b6f14cf3beb71bcb016007e90c91a0bab59b97ef3e18f042e5e208cfe87cda071766acb6ad8e7334802402302d4e5a26d565b54e7ec174af2a74de507d61bbe3bd2ce70f9f5805433398702f069ea6f342ae9bdb41b1d59d57a62f3f0302047c435bb50067306502301f82d9db04b402fc92d8c5a3b562578ef9bead8d246a9aecbd5c101ec08d461215ea91941baf8ea0fa82d2cebda31481023100b0dd30a859c0a4da7a41ee33abb12f43803ff21031a4c1a2946170d74d742f06c24ffe0cd8047669e2c19fa1a25464420302047c435bb500683066023100c431292e703788ec63132aa8b5bf4aaad5353651d6774a0e4c63884dcdfe04b6fd6e6ed3e7e4d4aea8fdb23b4176c9e5023100a27ee81eb4f6ea9d39ae0309c907d072b74a71804e46e74472e41f4ad36ce9e125bf1f4951f934facd816082bb48cfe80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303bbc9a4a64801aecd6f9c48b5f156e1859c5f3c71623e8cf9be5b1abe3f88a223470ef6b267680d8ceb5e83ef983914b02302146d1277260f49c09e2bc6d8147f3f412bcbb37232b537480beee24416b730c2f31e8191f4bca02166793a2b1af5f240302047c435bb500673065023100d5ae8c85c8e837846b3faaffc3462bde94a237b7b3f592d53c28a75f8236e5db382d6f54048fe3ecc895ad453efbad0202306d23bd237294c91ecf96415719eee55b0ae41427b4dcccb817dfa9f3340227ba93a15715c992b3749b2920776378fc390302047c435bb5006730650230307bb9d3dd4df269a9a3bcaf73bf48276c285722971abad48896634e206c9411fb441d438d575960917e1ad09bc81e5f023100bff7cb852c53aa18333a98f336b51059a6c61e65b8025aaf12ecd622b133b7734471297a676893a2230b27fea3c8e01e0302047c435bb500673065023100be319d89bd75091d27804de948f609440646e243c1daf4153729e992cd1cbf3c4827b9dfef01e9cded87d053f5730fa102305d4b3341a53ffe2f92d797e8f03221453863ab40315cf1d5e155d0246737fa4cee04a46d18745116a18a4e6e857ecf8a0302047c435bb500683066023100af3d6fc81b44ebb316feb50db49ee3e773516e3f554800c0dcc3c52c859655a664e0b4921476a0056ded3d8bbb98f90a0231009a89d022f5becc9de26ae148f66280fc4513bdf6c7b9423b7b186289ca38d51dbbba1a55aa55b372872519e8c5d11f720302047c435bb500673065023035e0f9effe929ff3a3422571c31f1715e18dbab63eeadfea1102144e9b822e475cdc607e2eee2706f30f745e1cd5b0fe023100f09fc7a9a5fd6cef417ed0ab2c3a2eec609f1dec26f6035912e241bb614eb04589a735fc70ec81897a700b5ed17efcf10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023033b7e66e5e3dc56c6058f051d9403c46aafc6e4007e4218571e4c78da85cff23c6e3f56708dd9b684ae3d178a7c3d90902300b0a928540ecff65e04225ffd9e24bb149452b35aad2b0c12bf9aff84fe383097c2cb7a7b097751512e7c48823abdec20302047c435bb50066306402303cb5b6e11c1bf4a6f73ff70c970c27b01a793e46175728ac4b81eb9eda4db4863c627a3502f84f367d7b3df427f1e43c02304c42c69197efa59c1576ce2ed79251b50db38850c756c8c4ce06b7779a34340472aaca3451563167164363172bccc5050302047c435bb50066306402303bc8b753b4c979d19ec1b060c796d4f548390c0c810caa97a780161098e8c632884b6f6e7a78505a1a6bab6aa0ef9a4602303f13be87f58f36acca58e3566ce900a3a08f85d972ff6369ad498b6e8e795dac7fb8d37a39ba4894065a95f8ff0103c60302047c435bb50067306502304aaa3b946edec424af80bf0d748cbb647ccd9d5ea61649dc5a8c43cd36f57c5e4444c72e6972827b39f0bcd5df9aea7202310086a0dbf3a67588ef888dc3c191e84260fcec3f9668bcb1aed745e25047d3065f181da9487634fab1974751f8896b557c0302047c435bb500673065023100c7058cf7b6ae41cafb4d90beee8810d24f6309b5ce1897c1bc84aaf7a82899d65068c05069ebda784f20cc7bcae354a0023073888f2d5db4262c96bcc390051da2eb6b6acf8e43d3e1e45146349f0179ff537591e60f9972ca300fe51e74969bc0bb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a1115443c1130adb456a7756c71e82a543ac66a12fd9f4774d7a268d0d33dcc17375fb818f13f7af5bb6651f3030f673023100dd5d5579aa03a0bbbf26ceef71caca1edcac70c625376929bdefb40f11f232481b331e182cb1d7ad355d5654ba510db40302047c435bb500673065023100a551399410095ac399a53066f55409a686db2e398ab3c905db139ccbcb7285bfab71c57ec28e121ccea6a8aa0d2d8a2002301de88b6525a0716044d9ebdd648466cc71c6f95f2efc75012f37e002abf5b6319001bc4b9ed7067ab620c82469a7820d0302047c435bb500683066023100a646d375c7302d635583804a014b4e1d3b422e82ad2a55dff2aa4c17ee991c1a2f64e176d8f356ccea8891459656ecde023100a3ed388fc3102ab070da56823eecc33dc8885ec5c6038d5001b1f1c8f914e18208bd0a6498eed694d1c66bd5d3ffc1100302047c435bb500673065023020dad587cb59ef049ebb7aaaa57453e8727a091424a9470f8deaab239de996cf1e383573cc3107dcb8eaa3c62eb23eef023100e25ee8a7d1135782395872afcb393ab13be59ef27173f6189402be0c9ab6403b77290dec0fba3b6a81036ec9cfb871ef0302047c435bb500673065023100ac813cc24dd7fc488eeabf81345ce07ad9140082b940b281b313cdfa1c24cd397d4150c1022d4975f616d8dc53b812e10230610d81f5e3717b09c32afe83d56e2d2f18ff8a15f68ae20b998d20afbc388e01384e8e750c05d4d34461d58373b597650302047c435bb5006830660231008594be25a36127bd11f5d298c4f84f4553053c099743e73f44c413e5d0c44bffd1a1cdcd507d312ced14b6c7175455ed0231009cfc4889920dfcf8ce54ad3ca4692bf2aa098202d1ac0d16812718c81a01b1398be89040bedf6e14c212a793648718830302047c435bb500683066023100dadec28c5220d646988d8dde8a0e78318df7c455bd9c92e241d1fcc58f151c0c59b83c190a06703c7bd50443d878e2a1023100f1bf8d5bc4fedaa8fd51ecd2f4659a1f9b2a0abad27d8304629a9a3329b4e8ba5a1b53fc05dc11c8368a2a9bb6d46e9f0302047c435bb500673065023100ddc8f2ac811e88772cf594e86bd22a2cc1b1149edb943661bcf7f046380980924d8c700b2b437b3f7c5425fe06839dd9023060a11f9d032d897b2aca6d1c7fb7c8e08e8da2a6e27715083c56c559dc844c02309bec841b49c2e01bb402623f0e0ded0302047c435bb500673065023100a537bec4963f44d5fc01fb3f1c20116fbf64cafd5e102947548d6122735b008fa2f0a63b639e3de8208a078a6d4a8b5f02302bba1e672c1a03829cacd77be9234c58e6b5861d5aaf9e392cc3a51ad8773f810f1ca714e2b05ce17b32ec01846bad700302047c435bb5006830660231008537f7a863167abf7fe8a98339f9415789d04af8bb30f628c040f98debc555148dde944dc74c09769aba66f3133ed97a0231008d39b4c3058d5a0d88ba36e562435588b3b15b2392bfa4e06a872fee640ccf3993b470f616cbd4dff5a8e54512ccb83e0302047c435bb500673065023039b125ccca5dc59c8563772844ba3a48cfd7a5bba58f8d9b0ef223e928a8074b8f8b5d0a0d162784b68381e427701af1023100b2a159cf7f026714e5e65dba8eccb43fcb8eec7f02312c0aaaf898a659ad0810c69561cce8063ec9d515fa93450eb9280302047c435bb5006730650230794968d03068bfcdd06274a00da8dbd44d995b9178786df73e02938613a48d4008bd44542f88f3d02dfc51f85ffafaa8023100daab08c92bbc7486de2bcef97c1bca8e8964169cc5cc8c0e422aaebe33466205f45b990368cd2b6d05214f1d9d39afcb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023042a24053ea3d86994a72444fdad7f5d9ecdf66d25ef44f471c30304344cdf670a503c76d5abc045b500724c3f55ffcbb02301463ebeeab39f643df5313c2b575f81e061abf723a832bd25325f8ca180914030d57e5a603343cdb842961d473582ce30302047c435bb500673065023100ca54af9be2b99802306dbb9ef6e41884f78e6d9102b6882a587bfc87e8d950961938cd16d894a1c61c2f062a54aed14a02301eac66f62f5f8f48e18b510e79e2b8b285b55bb161a484a91b9a5a0c290ba75ec379b20796a394f86f6896561c14e6c20302047c435bb500673065023001f912505ecbcfab0c9175c1ff65c6a323126b5da5616a5f16224790c382354c02dbeb36bf0ec475ebcf15cb3f73d1240231009a5ec2a4959ba9a28db0f06ed3b49e217f62ca56a7e52311b199d1486eec4b67e9928f7b8a2c48734b84d3af19230e3d0302047c435bb5006830660231009f95c2dadb825e0f33fc2aff77a5d226685049eaf19346efc158711122944af3ae4642c0038f1641cde76cfd1b043773023100dc89c5117068870c4d2c92d40309f85e208ddb6effdac1bec6bdbfa3a222b8c4b18e0df386f9c2756532800d0f4654800302047c435bb50068306602310097491c1c9ea550365de4b6e6b64f376de987da7c7f274b7ef2756a3c9465dd59fa99b20fd48ff1262c118e745d238596023100a8db2f5adbd0119c14627243ea50044b02819d707b1788482d55523554641f92651681705db0c07a489239938f0cd3ad0302047c435bb50066306402303d4102c701aced9adce48e92a89bdf4defb0ae2996e97a922fa98c68e38f376f1fd7063690d6f38f72bd7265c0a8c825023074caca7c38327380577569708ecba202cbc40ed6fab1e2b72dc5d8f05ef6a549d04c4ff75075b295bee1fbf1d5a9ad720302047c435bb500673065023031f069bfd23021d4955659582bd69eb6c11c2dff59905baa4db33f3ace1859e3750accbf44a768fcad32f1bb2387eb06023100b91310bf81f4e2630c25bfaa22f633f1a3b105629d54e374501d097298cebf9cf4293301f90cff030d456df9deda15af0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023054f23c74849a23d9738cbfd2711a5855d3f5ae689ef45c248d582401c578db275db43d1b4e36f29a08b227afd5287082023100ce054502ab9d24f59716daded73461b19aa31968c8710239be741b34ee81f2cff4b3803993e0aac506925956542992ee0302047c435bb5006630640230499587a9d9c827152a9944c7a1a79e600c7aa810c07581e26fa743045df71a6dc35e1b502a6072ae12191d2b2579c0d0023036068e61449aaeae5c9c30ed0185b8dbdc9d69791d3c7401dff65dd0f05945ba591a82187dc17719c1a7db786d8dcd300302047c435bb5006630640230410ae305065a56c4d71f1ff7313ad876accd3575cf74746e1988e3cb21466eddf2bffbc71b08a5140b0d1577086b309c02302a3772e94ae594b4643852065612025766d72c92cdaae861ee10ae9c25527e41e51b9ef4c3bb92aa4206af13c4e19aef0302047c435bb50066306402304321b6f151d21b102065bf2cf1f00966f6c10832e5441387aa5f430b230e78832d88c912dd670a6c6aff3fde49819ba802301728f59e0249e1256fb54f68cabef2079637edaff4920387d7beb1d16cd1b33952e59e4ab9f3466d6417b1c5f0f77f510302047c435bb500673065023100e755dada7595acba1af9cad4d32c02531604056fb13cb701997a3016530b3305292ab302a67d7d4d6cdff5605fc34db70230603ad9bc847eedbae2db3b494a2a6afa62a92e66b72934c5254e05744190bc95a8c1ed7a40ed62ca09ac3ebf229b22fc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c54fb166e8c6053197c70c57cf809d849f2f62c219547fa756ead8bb4470b91e47c48c2b9eecf055259e9153943733e302305d35b334a5d2bb521474b5f583e31810df039d64048536ea508c316d5c537e92a5bc5fb1687a24760c81649cd3ca0f9d0302047c435bb50067306502301e260f0e06a89ddd144f368a8ec2789d9d52f612d6b50046e104cb9c412fdd745006c04eedcd50667ace8073c5c9fabc023100e07d830bbfa995baf4821354f685091277f5de47d2d5748f18411666caca95b0f368d3153b54d14b92a295b646612b6b0302047c435bb5006730650230110a553677f97f0f776c376a0640139d213a8ea719b0e6f059d91b30a0630019bccd9da5ddf4bfbda9beb04e4f567ff7023100bd002843aecfab9b306f410695ebcc7fbea9905f5aa79826114987f055b10bf9ce0db09e87bbca1059b3e5d07b7b09f40302047c435bb5006730650230037861eb52a8b3b15e08c34b6b615a36c63296b92e95c6acc8bc1e3b464debf988dd87033ba24b336517f5397b40b2de023100fa01be7562f242f9ff46e9f69bfea57265783103d4525e7bb0461cb98ff120b2fa7b1a885e7952eb84073f737ed61c7d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230105c5fe0185a001b23c9d63c827ee81399505e4e597396d33e7b720134d0545530867036afe845f33d808ad5df4920f3023100d18826a1377cc9831722896b509ec64a201a4100d6f218e5f10ba8240db5586743c3e0873e0f0fa0c4a4bafe45ed608e0302047c435bb500673065023100d7e7ac78de23d4df2523eb0fc2947bb3fcdd450ff20e709ae2368daa9b74007928b32c9b58706a0b0fb35796709d50500230173f1d3d77e99efdb8dfca3b4d805333481e61a4b3efac3a5ff9b80993aa76c0024294abd6e058c22d6867c150cdbfe20302047c435bb500673065023100fd17076892a264174d3630fe565639504bc376b3c836a8dce30e9e29da9e954c4adea192342e8979e0aa3a1591fc8bd202302a000765f48de30c21f2192051f520665188984dfc4e2657ca5c44ac1bcc85f9c2c208fd288f379ae189e16c7fee97340302047c435bb50066306402301db4c80eb0aa40271179f955741995384528460895952cddec03612568cb472be4d646bfa6498614cfaf09412553381e02304a7704ec1a7c0b448fcaca08a00aa8d4d6d39cca1a2ff9f32beb872bf160afc171ad27878253ce4ab50abd08166a2c9a0302047c435bb500673065023054b8629aab0a639b0e203763987d662031eef38adb127d7b0d5436add43530b5021c1ecd05b0b804785ac3768aba8b9d023100843f988f44589cff51d0972ba1ff1d33925969fa45b1b1eb1c9632180da103e36edd7a103a7d4228a319a7df5f52a9360302047c435bb50066306402300c7cbb81a883adf36c4742474bbd43ddba673c0125f52fc6f54f309bbef83c026535a836c520b282d02511e4edd3b3c402306fd0a15faaefebe8cbd8da12fff13579d4d8059c888a3917a50f076b891f1f5ce6a6a601a1b32124e3b48dbd5653f3c80302047c435bb50068306602310096fa1cc1894c1bfdba3ad26821ac013e826b0d7972cfdf90f6a871b9c28e385ae1bdea744239333fb3a638618c865d97023100c181203c5b6c82789dbce1ee9582b6eeff86b6f4b9b29ffe613980455502fb2b066cedad0581955119514ec3123d90340302047c435bb500673065023100b4d49b6ed460de688c277998dab9c418ce2842cdcfc98ec50e2cb82459e92ac079b040cb4ffdcbd1b25b2183d97e63cc023031d1787d8f1bf73b1c8a3539ed3ee1283b9ee6561d320fe86602bc95d47c4e55abbefe52733f7a0f4ed0581165ff364c0302047c435bb50067306502302326394cd656acfd323697e5112a555b360984c7f5fe4a6c5cad1dabab9fa7647e818ee5fef76bc2cf0527bd4541adbc023100b63366147346b6e3b8956136c3ca097e8c8e43ec5883159647730d130f58fbab9d0337f2f77a1d965350deef4d02ff200302047c435bb5006630640230683751fffc6e5892fc95054ea4cf68734ec2b4307180b60ca353eb7bb6700eb14e6327307c85c49c7273a7b8e008eeeb02303d51c15fe2b01fea9295ded3b9f34945345f7ec083c35755ba69b700a752a23ae0ffb076d5836fdd98efc6d194bd43200302047c435bb5006630640230596ee4f1b82e348dc60a37dfa9070adc0f6a87099f3b4b3fb8e5ef36c3f60fe07dbd907f3a2d563c32c14c8b57d5eb5702304ac7021dbb4230690a0735741e6f52c6bfb13c113008bff62785bfb4e90aa3ba6bdd4eaa842cf481075c8033903dbabf0302047c435bb500673065023019317e3dc8fc22ea0a4d392cd03bd87cf77945c1af2975b41bdffddd59412d8824b5d586728802204fe072bf38a0d423023100bba1a5719a340da5d4553769ca0c21e14a929a889643f652f38572a32b957776f64ee6d1dd9c560487eacad889d8d9b20302047c435bb50066306402305caa8c0243fed07beb2ac4d9f5cd3b1dda123d5df4ac6fddb09eb798b2d795b4b1be351a89ac1da4fbed07aa9fdcd9bb0230714722236292fbd67cc560dc4d618fb3366092f701701e75d1a0e93aa455da0bb747761a1333a895ae2007f046e5033f0302047c435bb500663064023024687603c3bf862419ae6f1d7cb9a4e2c05db5a01351cc374ca3aaa9d170c7913520ed5746e2ec648e9de1bb56c73095023064f1fd829e561922381e7f98b845b74569351638fe717dbd2329d455273e123d537ded994e57574328a73098d7e77f4b0302047c435bb50067306502301eec58abce00082838fc93fdfd45a56a5388e0fe3185d96008a39916198a600884725d7e443a4b0ffca53c8962691847023100e653a8c1f416c9e686a6527896a9fbae0c0162a3ba93987145b4290af3db5bfaba7ba22afa2f4c6880a99d74d11fe4f20302047c435bb5006630640230498b10a4da304113b9a5153219fa5abf39b88ab121c3b40fb28df629723ff53bd6e845bbfcbe0f2278e83f5ce57777bc023064a943b1908e9e3f426ecc66ca6077cdd3599ba027aac1a4ffdba7d530c00d13df63970b5e444ed7992ac1736a0e63390302047c435bb50066306402306c883e64ad01428a9bfb50ac289d2347b46fbeec614c499ea38f1a6deb26d0f96bb4d14eef95ded693fcb5dd820ff758023078f322318fceb4f227ee68d1d007f2d0a4d57688a69cb9ec227c5a4828c1252d8aa2bbb36257d439c2f96dcf10811de10302047c435bb50067306502310089d308e3af2ad295ddc388b1f38052a0596895d66327e62eadeee117d57362da6025014757651ab4f6f6df3bc69f8fbd02301f12431dc9069cb277481bf35327bd6bdeb9626b205ed5eeaf79cf5d6b802ac242ccb6aca2041298eb9b9eac0baa65630302047c435bb500663064023076c62ecbb542a4ed896263d4ebd04e4b36c5a8a2ccf0a9cc839cf2febe27b87daa6659be5e877b9a5a01c22d2cb24b57023040fcdc9d5c2c585d498b8c7e2ca6e6191b5866e0a04590240787bf2d90e998c86e8881ad9489381d440858b4b8c82fcf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b3238fd21f880a3e6e99c46fc1d12d0bc4c9e56db1a949009585dc49f6093fa206f3b9d9c38ae2ff72b3adb3ac6f526f023100e09d81368ae39b5bf191bc058cab8d57911672d6213873590d819bf2a16877853d40df750d8a1f77312ee572c34e6d640302047c435bb500663064023077605a8fd19f5892f4aa289ef7636b52e2d1e25f707b8219b86f20893992132c1fc48ac578df9818445d901fddb129720230430c743030be694b5e2e12be8cce66bfcf26d9c7e25e9be032c4b53cc03d4eff681fbed293a141f4d15132f7e1ec1ade0302047c435bb50066306402304a7257a691450cc15d171d8eb5f9d50e6c5339a1a872a9f3cba1fff2efcc370e262567d1ebca7c23209bef5caf160d9b02307844099a1734515bdb2914fcf9f4dec2171b31308eca65ad93c324401b5db950f5a882a9c7306e9ff2202dd4c0552f8f0302047c435bb500673065023100cb3442cc5f9cc171e5b2b41ebb65e0fe737258393833e102b4ae92bffa81ed48604854f963c4993307be42ac2b63c95602303c815189172dadd8b4980aeaa43e7ad51076744a03d28548a4fbdcbdf864a6a8929f33e138e7e5577d6575b0ed21e45e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305930a2cb7d4234f6bde45598b9bfa31b971da342cc64be60f41b9feb0c8fd357ecc9c2b72e4961cf0c0c89caad786eaa02306d6e4c0b15077d3ad51019f9624044fe3d5881ca0130c99fe5b1ad0a0ddf74903ff157cdae121727ddeee92e980ef1870302047c435bb500673065023100d94d07d58013ee0d85a1fe573e8a308b96adc6fff236bc8616259ab195a679ddacb2405b8d64b9f0036878bc601bead902301dcbe0064c2fc0b224be2651ff190e4b93634ae05b6529c1b33ea0bda47cfda2dbb615e1b1d72a2b188bf42cc8ed3dc30302047c435bb50067306502310098ddf967eefe18c4f0ef455d5c420a2eac7c07bec248c19f5eb610e7cae1089991d819ddfe70e80cd139efdb99fd1240023048f832429e6f6199559baee0619d12960b9cb7efb60eb0b2ab12b30d6283fd73df8a291d6bb5ac37d40a91421810f51c0302047c435bb50066306402304de0b9a3df9b615f1947392864f0c12e06fbde3533d6582b20b161aef0072739c39ebb086e877c1b70a73a695a420af702302c86cf8cc3cf601c573bc61ff76b2a7f057f96409f8f9a563caca5c2168ab3a8e430d090d4335861c95ebfdfb3adf5c70302047c435bb500673065023015473031cad0656b10d57448f8514b5aa5bc7a4dd659c863fa214c880400219641b543126fc3588f6c9b6f81a83d41a9023100d207360c62198a45be853a0be01059626e50e5f306142b25c619bf7168bd3707369a18f20cc569230154664265c64ad80302047c435bb500673065023100b9d26e07120ffd91315738d54bcebe55732b9b518f7fb82a1851d98593979784d606f20b38ba0ddac44b7ca8bc40a5f002305209db2b1eb0e96771740bb696754cdba937085fc68630709d82023806dd4088282332e26146e2a8adf2dd59e124e76a0302047c435bb500673065023100e70f362d182deea312d1673e8b47c475cf39ab75463ec0e9afc7afa264cbe4bc0621d25c05f8766457d0c977525a4509023074bb3349fd7e6793013be99f36e0e4e0a90db5c175e87d5e74d6af983c1734d5adcf152f9f340512c5dd8ae25ab6017a0302047c435bb50066306402303c2a99320d98e6cb47a94a23ac14a58a863184b4291b9798f85551dec73b2a8f4d1afdda1a112cc456ff839e6ef1d3cb0230764e7c7d7641e5c776932eba8fd1ab589e8b9da203e919147dd6a52770e405e6c3fd1d31bf837eb53301742a2564176b0302047c435bb50066306402304843628b55109ca671b325b01b0267a53b5a125792633a6faca2d64070dcb55f44c1e60ca2ae390673346435c78b3687023017814c1921abf71c1d45c5d24fc4e592a8c9420889ae27e358a2977d55321521c892b0eb03b63da9704f8be491f7ce680302047c435bb50066306402306353ca279c5db5349c7f2a305cfb039326a1249582a0ef6d68c515b5d84fb0400f5b2387872497c9a77f98eb3fd03b3802301c2e20dde8b862c6f04f832cb024ea74ff686d956e32b6904634fc30d99b61d6796fc1f11ee66d5a9d81b8a69a6aecd80302047c435bb5006730650231008a2be24bad0756a0de933d2115d2a5f19288b2505300a8d59957ad588a011de2d01f0227eb610910e574bf716435c58002301bc28a8359ad8f1a67e1e9a7e956cc2435eadfa93f6c11db7fad5d5ba96d2bfd8864aaca448d300b211921c9584c05ef0302047c435bb500683066023100fda46d48361b742821dca964d810f4cf8b8f3b6fd0175f9b5336fc3eedb2f7d12f74d9c0c267cc562b4a4bd804fccfb4023100cbc445976a5ae276f8d7fdbfe502cfc2c7fb186d3a027b3ec6c37d26e6d45970d4208e36ac60e8dd2ee3f73ae5ec168e0302047c435bb50066306402306233143216729dda828de9026aa31e35ce8a50490e1dda20b867f11b21cb3d2e1ae2cb99510a1083b938e5c9faa4cfc202300c48f68cdfc0fd7bc1d6cd5f5bf206fc9383b7ced393036afba99d1c2c71b44bdcb645113187adc92e3dfb9c0fb5b6740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301fc6d70649bdbaa17df540aa848689cffd5c3039c7fe9dec4c3c2a2d255571092d8e77241a3d0daa8790d51526865ab60230281f84d826931e7c4144584e9c7fde2482df9e4b802999a5c2f074020c43bac92c13bbfe3465416a562510e6da755dd90302047c435bb500673065023100deb85566ed2cd462640143c6c100c5e2abac9e99fe474a9fb5cd2496e62a1042869dbb23300a8aacf59a104cd847264f023004a5ed5c8e809c69a653e7906e458b463af54f1f9424cd543371dff7a0522025f78ec9b4709cc2fb305f88de4c9650620302047c435bb500683066023100bf763a03a9bc1eb94281e20aea75bebe2ccded006eabebf2d7bb3bf04618835df63d18432010006aacfbf0c4fc6992d70231008c0a39d7d9f7b9ec4b6f3bc4fb7be953eb82fad7d30ea975d7ed744cf98bc3c6bde22fa47a3ae00a9d7cf4c5aaf581b30302047c435bb500683066023100ae344669aaa92f0515691be8a01de6090b88f46b5cc14501cfa9f302952d96c05e49e2e3aadd66090d064e8c0ea4c62a023100f33f984645ac56089f864bb54c2ef322656a61ef5b4e650a352e78c42d3b99c056a46a530fdf2e8ece2011fa5e916da40302047c435bb500673065023100a28fe901605e36eeaf53af7e5d778b9e3b02809c5660e6bb6334ded638d3a6efeb74e3dcfbf5b68a53344eecbd8ca909023053b47a57e31778fd8b013670969a3274e353d8ab4587188054687ca49efcf2fc984e580a649b1982ce7886fba65973350302047c435bb500673065023100f6a9813fb0f47e2254861e8847a53593225e0fc15a31ed36149cdccdd96e7d5353f1b1aa76a0880291ababf2062dc67302305630ad590857a12b6f8fc7b899ec89440e79770ab4087360e43cb6d95074d7dc91f61dd2aab1082d5811b965279c74e50302047c435bb50066306402305f239a3aa15d780e71967498f7508165a7b111d9227d7b8af932839fd88a881e6ea1c5e709ac3b4c13d5925a857b633a02306c2bb319b3ee5b03bc219f408439c67cf902de6624948afd9318d782ce96439a7d46ed8dbe354b3a7421c23bc949ccfb0302047c435bb500683066023100fc4dcd82cb2f9c445ed4ad4e821447ac4db850c0d877a17cff0424ccf478af347885cdc1f8b17c98ee8d49fdb5b00761023100e44b8d78d5e0dd685c1d62aa4dfd3be6334b860f240bb346d759c3d6ae1dcdc165e0bd06ff0864a020c6ef2e09833d8e0302047c435bb50066306402300c21984a73c2ed7bd5e3944da9f5775c03e1de70aa5926685cff6d356d57c80c04a404b2c89b00f857852766e90372be023073198e9987bbdc33317317db76f50e5d7a1fb945f4d2383849171e8530183251292be1559e652e4fce3589051174cad10302047c435bb500663064023064e076032de34cd144bfe507242909842cb40b9d3845e9788e52dd86d925948bdf077f5b056d60811bde948b93711b6c02304a78c546ca0656476dca4acde8ad2d3ef55c3fbae0eb34d51e7ea3e6431ee9383bfb8c733de7f039445d3061f47ed8fe0302047c435bb500683066023100f2f6eda2ba4a5f0e64fd2e7e61054ac12372d1e13f3cee559e3bc98a490abd555548099f2bc6cddca804ea3430d7bd4c023100befc38ea64dbe4a07ac2fa18f2eb9a518e29d4f1b9caabba17c9c12ba9d222223de09af1f0c428715582fffe0abc1fe80302047c435bb500673065023100e807bf1b098d3c5323af609c5bd1e3bdea6c5c1ab4a16891256d66e3fd0243318b238bbaf6727444f4c64600f40fe48f023021b6a5ee7e84316b1ae96f4e45f02e89921fc5dc759256a58f20812c64808dbe35c95c74688df17211f145866bcdbbed0302047c435bb500663064023001343423dceca560264e7d866cf78e6d187437a030180852809041b2176dbd24095c8a2e881075d45f5c7758f65b8f2402300f590b07e86715a1c3448919dddc3ad383e64900a21c1642df4b8fe402d2bb57b281bdbed335067ff6499b8d0cdf477b0302047c435bb500683066023100a9a6d17b2d26e96472f3c3af00e75f4b7aea624e17f2dcc8dc3df0ed32584d3b81000ded27ec48b87fac6c86cb3b119b023100bc7f51d0590ee94f720327bdb60022cc089bb5f4b99b50d44ea2462cc98d32d451c9da171e71665bb280b9261f7bf35b0302047c435bb500653063022f6ca0454d5e5a474b17ca73c851eb188ecf0f797c6996e1811515265a2a2d2de67206f78d95686b27727b3eab7cf9a10230087be7e3d751fed08098dd754d908bba55e4cbc6c362e9993eac47a6f05577d7e3f821714d8a1853406e107d79aeaec80302047c435bb500683066023100cc4d15e97f306e13d1fbc21a71fe796cc293b818c7620e266dc784b1887795e729286144b2f83da8cef5315e3cd70f21023100f7199e81efa6969ae27a212b28076a0dbbb1b22a67bf4ab16d4ff544c9ab0b9eada3b0dacf2f3c713dc1a235405bad540302047c435bb500683066023100e1ee3e62264aa4fb7e7fa74073d1fe964a9677206685e00a95e1c8887b6fddc974fb47e268c35430d8f5cb66afa7b6d0023100e0814af8c13b864eb0cdcde6251e3eb58424e8340106333e784318c130ebda8331e67cb88867046e60efd1be793409050302047c435bb50066306402306287a0758f623e8ae5a0dbb61125214e9c48975c96623ddfc5f0cf3a47b91a96dffeac4b8ada41a7fffd3d40212465740230591ae755d853246d7987ce0883bbeea4e888fb7127a5f431feb191700a3e6c1eb9b4e3f1a1b156f3908040bbd84f149b0302047c435bb50067306502302c348dade37b6e70e1881d24dbb4af08327e90b5ee813b98e543cd2f5b8b55f804e0e797181a781e757659bc5b097e040231009a68dc58e443d1d355922a6ca5a744f7817ca97302db82ab4b488bda821f0e9093c1711d8af741df8afbcf13e0b753680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e3a22d0b76a975ac933f7ab060d31a57e7caedee9287c1c1a5c57bfa8d0fa9307f8aa4bb051cb245501fdd003376117e023013e66e93abf7ec10f73cbc7e80783b93681aeb145d617709e50b9c104aac51b41be142c16d4bd47800dc448be5886c860302047c435bb500673065023100d3ba1e917d1874845dcb7c8e975e2dcc06d240c67e271d27c514d676eb38e24a584c1f867fc090c477b93799185c5ddb0230519bb1903c985551d495c11cf844bca3124cc3962cea7a30c57a54cec18e4100da8daa8a80b56bcd33fbe8b29a1aa05e0302047c435bb500673065023049c736a38e2bfcd7b987567029cec2d398109d9f2a9d380a315a317c54a8cb39174cd3fc3b199017e733a6ff8b19ccdc023100cd8976b2cf5dc38df74c8d65fee72653f6d53209d37d553d17b518f3a8752794757b06731403b5d3f0b4a3d8d4eb94110302047c435bb500683066023100e648bc03dd439139102c6c6019fac45bc21cfb224d64ff7d911b4f9a7b2857d5518103a41f20307892b1b662be6f17c3023100b1e72fe76470f3db053e1ffba7593f7419f598f500342cc84a8cd0c339d3bc3215d6fa1d0ff663118d607a8eb22118dd0302047c435bb5006730650230130b2a2cf4683f345ca0cd9db3fa0ea636a5565960e9b99e55dea22fff24d2e9caa5a705b67b61e07da56d4573b73d600231009b9a817e08326dbaf44cc6310b39c0c28ca339f9dd06e1c310163a8a433b78ad6b4da8500c6d77af2045087cad3f294f0302047c435bb5006730650230202659caf68d29b8a355c0f16be88f2fbe49a535a02f5da7fe3d248a9755b4372b8fdbc6433ff022d2f8a530aad997c1023100cc723e94c3c3fc61d2c7f766963cf6459b66f778f15b7bed77f63291e4723a8d626778a00ace7559e7c1e29b75e7a5ba0302047c435bb5006730650231008b333ef1dfcdfa67414684e139aae15f58fb081d45009979d9aeb4e1387c3cc04897751f2f3624c42061547e3aa5ce1602306f88036fe6e08c9a79b2e790b1d036271e85211f38ce19918be9847814ac1e154b473e541892d053967392e20d2c1fce0302047c435bb500673065023100f1330d6a9af2aed6da7f5e0fb41311473161f12a881e2ece7e92ac9efe4b073431bb008ac9b93db747be04800d7509510230428b4da3daea131434f1918341e36ec937e3ec6d9480c41be7e4dd0afae5e494fa2dd0090256906fb98ac3a5ed639fc50302047c435bb500673065023100e927840a9faa3deecda76f944b7ebe822354031e6db7e93aee7953fce12e726d18075acead7719b40d0f7d4c32dac7000230364a30b7f44acbd9788510aabfb2afded9e6b7953b190cbb8a17e8c99a3c336ed33a62f4f0c5bd185aaa64f54f8205b20302047c435bb500683066023100e7a1ec5f85012ef51a9bc9ad879dccd1c21a1da2ffd580356d102797bb5f5de93e6479b933c917424c9362f4c006e702023100da3c54b0d74c4ca6ac4269cfcb3023a8997f58a4ceb35f2a690297fbcc81352921aadcd7c32c84faf5b29afc9f1b04170302047c435bb50067306502301e513908b928bf495a6420de5985ff3a44c0519cdde56d5689db33341e2c3b4925b3b375228985370fd090d1e7ae730b023100f2d6d7fe293ecf08ccf3e65456a1ff2fb32dc6ebffaca9f8d71ebd2a3ba2738e45115a1998ec63c056a9f3d1e822edbd0302047c435bb500683066023100cb8c16f97d2a7d03f8db7b573803022f2b0ac7304ed74a45243bbc6d8d290e407d62de17149f359a5338a35684f92a440231009996b87a7980a8a16741354cfd586c2828313c14b4625cfb2bb067cf2c08873aa6ed5a3822b9b48b286ed075f19ff87f0302047c435bb50067306502305060e682ff845b036a3f6539f7d49e622e2643d4c73d12bc33b68be2cbe569ad93e9ab60ff3bea7f72ceb54b562fdb42023100c3470900d9dd3d63729c5101e154bc0c6f922e587e4a41487558db67390eefb1e2d9b0f84d0f354a51f25b4f9d2b914e0302047c435bb500673065023100a451744e3426c4f2cb1129acb4d0a25b0132e90dec6923e76b11d9fa549885d887a290cee4c712a079b66a19fc2702b60230397cba24eeedc795dd5b5a95137c0c003efcfaa425ee8660ce99798cc496a4bf1d932225c150eff83d034dba47da2cbb0302047c435bb50067306502300afe41fd9db217653cf3909e91acc3d261d27f32733a75d0cca01d735ce1ea1aba124c73f769a597f1306002e2bdb00d023100fb422a1eeef14e32c24806bed65a010cd17264bbc4c11a5f0ae85210be3b32901eee5a670240e67cec40fac2f35997710302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb500683066023100ac1bfc48d47cb89d56501370a8a3b690547e2c9f165ae15fff85fe73116b9e74a9fdc7a852c9fe29806c8269dbbfceba023100cdd5048122ab6b1a8b65a9f1924b30b236de88ef1128dad9195fa9bf0747981f0fb760c279593602c43eaaf438785d8e0302047c435bb5006630640230534495efbc9ed84498368f4e16b01e9b992b08823e73d4fed2d75aaae02a8ab4e9ba8ac83a8bb7c8ea2e52a50387ed650230050a2bc4fbb6900be0661d2f29a8300a05a1fd0f2e5793ae7540a02ef004f1181fc22ac67adb9705bcc880f95db7e5ac0302047c435bb500683066023100a2a1ca5b860251fd8ad48aacf79cb107b29d6586f9f267fc54701950aa5f9a98c5921de432136da8611416fde5a8c2f70231008fa69e011f14db32e22e9c231b45073255a38a1708a2ec9a2a1845479d2a36f99704a9a728978df856dee709e0be2a3a0302047c435bb5006730650230338e039e8f7e0e44f3322809d9cedc3b99a2cd2fc0a96ab0ce2163461c6fb9ebdb696b601ab871a1f92827761620e105023100aad7add341936c13a89b6fbfa58dde7751138a6907cb3d5040ca4a30a3b3a5ed3d5590e1162dc2bff18455b05fd091800302047c435bb500673065023002290c58f0c972bb1179b4304713095163e10aaaf78f566eaef35c07b4d0e893d3367d1f9fc9a08cef4010752be23a12023100a22c4add2de40d02ac6bb86dfd2a529ed98f03c2552737bc416724c22fa457b43c44e6b736ef57a1a5e31e96af1078310302047c435bb50067306502301e178db8c6edaeb38bc90b14dcf53ffdcbabd1e7824f4e3041f8ded1c9f25d319792909572335b3d288389a8fc65e3ed023100bf93ca6e547c1df9e821a1fa0cba1765cb54f096139b6755a3ee366911e67688d119db4159cc401e5dd81e6dc5eb265d0302047c435bb5006630640230274d93fce90debb13198456aae82f74d4dfb3b9b324c5bb12605248b8aab2bce1fef59907523dcadcce5578593be5d4402305542d89a1d2822c9ce27dcd5a5d2a725fad16fe6531adbb1e4f0ca83e88a5bbf333e28e1cc7df6fe749603cdb92f7d9c0302047c435bb500673065023037cccb5d8018cf9dcd53c0bbaf5f0ebe50fd50e3271d3f48fe259150999960a1a79596a83e30efaceff8d6588cd3ace8023100c3cedbefc65cae5d4f8dd24204da96300c48c06c46c83e35df7dfa43964f4437b5f87823314f3267150c4b1d7aecd5510302047c435bb5006630640230105416710b8cc95b1799c60ba0815d269038b086b8328f3cf7602031f6ec9b1e92a5ff2946e381ac6237ff541595d888023032970702504b8f9b8c8f037afb042489dfffd42ab2a4733c6042f7af49a7063ea770982f20aabe79d59b90a50288d1600302047c435bb500683066023100cd03509922f990e48a1d5a88b4fd42e65f3960d1705d5c7b2a430a869a6ffa01a01b2ed3de7f4651373ca286265f1b970231008eb671d5cc249c259371175c1ab80b120d2994ad783a2968a0ea39d539ea7d5e62e3a028a84d3efc5433a635df6454160302047c435bb5006730650230051991d933a3f1d151f40a6d41fd7de78dd6b028ecba51bbfc18d6f641262861b819bbe763e840a738405911e0cf5397023100d75c0b72d66ecbcdde2159942177e397a9c804610592ba58de3711eb76217537ab0fbe9816cdee3b97e4f8142a6129330302047c435bb50066306402301f87a2bb5e351b93382a3e941acb06971fc72fa68cc39e65c0772ce75c9a15038803c827190a63c74a87b89d0047b82802305dbb21328d88452edbdefe853fe83c7b8ecedb34b00bca48cf533cd6ee54e6c877d966106c37bdca3a76d02481397e100302047c435bb50066306402305d08d955eff6951cfbb6d28c29fcdf26da1c5356c48e93c5ce8351c6aba0cafd70e83c6822198992fac4222deb04e84602305876aad7a77c91cc97bb3e10371752feed0fdf0400652cd377b07e26445a87697393d82b1421d584a6c140cd93d770620302047c435bb5006630640230244cbc3a69ff5a816820f5368a8dd9b313e56faca9f645904fc24560a79a56b01e422b501447017dce71d34b977132f0023013a9d93ea241adb1cedd3ce54f695d8369981770a01f33d61d41c70025821dba2337fc865e9f14e85009aeb9659889fe0302047c435bb50067306502302eba90a6da1a4509b2ba1da46226caa69a6bdf46685660dc764e29c90d89e52cb024ae3f344aaecd15bd608e327d9e22023100ea459c18a7cfe0e8761b323c332679149471c5e583f7aea2acd13624a64f9e475634fe824e1602641c25c840143985e50302047c435bb500663064023050076d2b78048448790c876641ee0b03038e82589dda803bb89d03fe2d200081b2d68fe938bcb42cb45444d6157f4a7702303b34938c5be2c424ab12ee7d9901235dbb5f43e14205c71be8eb0d4d8a7add1cbe9fc532d9c84ba0de0507cecfafdd6b0302047c435bb50066306402307b8a1268c47a4b7685a56cf19d2b16a97f3be52e3bee1164d3a74ae62c91f729b790d41f5121c8bbe228de3f4553d83a0230717190b5afee779201e2c9cd74d5b1aa7a7fd358857ef790daa5c406d54244eb265887fa648c77879ba9b58fc1c7396b0302047c435bb50067306502307482b17f0cc58824019acd28584ffc18431627456d4d726678e956d9da4f43c447aebb6311e0afc76c03d92c24d3c7d00231008f80f683e24524e76d7a663e9ce6c8077a692cd901c9df9f20bf348a2d965511b8d251159c2caff59f802b7881b1e4450302047c435bb5006730650230574f718dc50285e2c96ccd599c8e1983c900bd630e73700c6fc9445912df0b6f4ee4fc7ec295fb1155918d1e0fe2ba440231009e11e29816043dfae379d7898308a327f52f5978a1377a7065bb26c5a72d01b2f9dce17470d9d122f0ef833084e706090302047c435bb500683066023100be9b26031e782e7222512249c2e6da3b91aa713d061b92f0ab999c44b173ae8e0a28337a892e34ea70ff356153c2cd56023100cd44c5c0e7701cd444d8493f3d99fb322078e47570904c4a7c54b1ad3c01ef5c6ffbebb6a1ca862e0472420849c4b80b0302047c435bb5006630640230067403cd2ace70f3935c9b49b4e2fc14bfa5a0e0773658649aa1fda1b19b904d367d14504651d8207ed8cc2ef5e6f0e702302748f2e047173802e2bf51539870a49fbfe94b1ccc37b7dd75d909848e9dac4f4acd87715b13e4e93757e5854c8a96100302047c435bb50066306402301531c33a1b2419f7bd25a46ed60d0777cc3440758f5ec4ca2bc8ca10783f783cd57e3a445f1c292cd508072d00f6e35202302fa90222c81b66a94f230fd11c8f4b030e0983aa632acb72ed455b2a690b2d4b259b95170cc693eb5d95a668338440760302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008b5030a8c9894374149cc00f0f564bedf548a0089956519afd198c34a7d577adeacc3d8516fcd6fff11cc50c8dc39ee70230056dfbbfb0b115699ddc92142c52cec34cba425a44f13b8315e84e06f0b9215af16b05b63f2dfb4876202cbe8a1570df0302047c435bb500673065023100e9124c051bd40d25548b424f54e31ccf3b47a6c164aa8a3ed58c7ed2488e42192d866832e72aea2f0f26eb90d02cfa390230329ea11fb76cc01a754fca53849ded1985cd30d7d3fe21019d332d6c8a27430834fb46f7f525426723092478cfb3c1e40302047c435bb500673065023100b4b7df4aa231fc1084c1570d13bb8f7b7d974f742bb31f13d171967e3aa8f9aa139f35d1df89ad18ef0c175752f31f8802300784141d93e849c8054ab98c829f3608e4be717d04c275913dda977173271b4d58a14fa3af4fddf499801c0c260567560302047c435bb500673065023100f2a2b6504a02e01cc323e617c23c1ef372a509451bf89ad981c34c2cd25336e2036d3002a5a93c8a8ec63153b881d4bd02307067b527fda4777d3355861e96c75cc4c0f467489f6733a1b1f2d50400a001f84dcc220acb12cc9afcccc1d29d4cb1080302047c435bb500673065023000a7aa1be12157eecad275317e859ede36a6359ba2cecc76a5455c0479855858f942a1ee6e331c08fdfb982003be4090023100c85aa212748774aaa39fc9e225508c7736ace67c68c6a0c174ae3feb17a6adc3759896897bab638649c4dad4cd82ed6e0302047c435bb500673065023067609c21d9dc73fe4e6341736345961b77bd8ea496f54036745da479b09c274c404fb181400942edd9ee69c66aa3e71e023100e18b9792d732958fbe9ef1a3d6e0954e37f6298cad408d22f6ecdf6375782067675a7b0325ff766c10cdef59a2b6ddcf0302047c435bb500673065023100e3eedf374c780e5e0edd5ab8f336a026e87d9e38bb8ab111740a1ca585e05a2943e58a91705a3b92a3d8e0f3df9c107a02303a303fcf6478c7a3f2339180686df1a9d9fc75cc2cabfabf9fa2ac0f48cfb83fb0b92518e33ab17ec50d18e651dd3ec10302047c435bb50066306402304d92c2bf4596c6d2a8ea174e73b17442a93a858a8edadf279ee07e6b2f19a556e75fbcb6a4a51a2035071f83fa7dd9e6023078d510d3657ec278917fc188d2721b32b3d97828cc6b445973eb6f410a93ed9ee339c32c8eddcbf8a6e40c483e00eedb0302047c435bb500673065023100c115df3e1b97abed5d99e0599cf5818ed8089dec61db2d418b49d4118e68b0d11c90fa4afefb54a0740746d91b07749f0230148e445ec5cbef86ca020634995a5f0bf6f0184dfe26aea28caf5cedf42a325833228f6d6554e93a9d128e40f3ad72e00302047c435bb50066306402303afd7aa68e044c8611209c9edc7c611df3e5a7309e10a9e9cb19aee14a72d7ebfad2daf65d44f432f565ffc11ffa4a8a02303f8a0921f9d4b260b9d06772f6516ec90aad9abd54e226103459885844fe061a9ef554da9f39ad9455f9003942a932340302047c435bb500673065023100b9f2c801752cba7197823185f5901e2aac008e26827be60ad46714e4c234c7fef5cd6e09e5829cd576d16f412004b83002302d5eb91e2bc2dd4532758574c3821794126a36f62c3d8fe0a7d61ddf791aa6ec37359d89e78eaf27c968f2b0522d9ff00302047c435bb500683066023100c6064dc3e071de724900a37e1bc824e4faabe57c489e9fafb31f1b419358f8efe97e55d9661fd4a1289d0ffc0f849f280231009f264c9ff41612487f25e89a0f518bbd7b6db64de93a1d208d9f71b199c9983626f2a3f76e2ea46688fad7cef2e509140302047c435bb500683066023100c01413c2cd3f2b6af68796f5ea63d25d93064372e957ac1d456fa8d63e3ed7940f79b3ea67e5fef86445ab18f3b018da023100e1169305aa7226a936ed8d7587dc2ac742175c3a6444480122c5c54ed2b4573bda7b07e3e1d7a1fc040fa070230a985a0302047c435bb5006730650230309e99c7a96f989823cd977c91a0913407fc35197111e9c8b81ce7d02fab8f3834b27bbab4dedd45c1637a7509149c97023100bd3ad3862d8014e27e789adedcaa102813c6b23e2c0ed6fb1e9cdec8a20c6a36df6e258d454c14a1150f6e1fdfa11b1b0302047c435bb5006830660231009257c4e3987614401a14ba9b108f81b5736063e661fc3d53b96420ca02da51358763beb11ead1692c43c59d145f922d3023100a44c451506548f8d9ee7f90c0a33e83f51d107626d5aa74bf41a28cea8b92458ad7ff9ca27b4f35e1dc70b445adbf66c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023003c91fb2aa34b78b5032f9e346c2fa57b694896878de5d2bbf3108d793255ee5aa8be8dce46d41d60582e3b781ea3c6b02303767915b24453f358ecf135337f8536c6d4f5967cb2433f0681f575c3ffd602ea9d21391b855d0c4932fc1f94889cabe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b35585ddc164e317de6bf0f7fb706bb0288205d71a6ce8be03c138e068d8b797d55d7d22ccae022b8172a95193fe87ab023100e31a6cf527f3e17d842a73ad09d8eb40ab9eb0c4a91101f89a96da00181e29d5fbb74744997d2a17e7668285dad259850302047c435bb500683066023100d4dd2e34704508a3f57a5355de944b1aed0e6e1ec91ac42c70abf071d3acfb3619d020bc3b1f9051153ea01303745bf70231009b2b7fc97354be0c531f6b8a35229e4c1c12b226bdc518f3044c98c4ef3c17dc825509b808542179014fedc1d2ac287f0302047c435bb500683066023100e0ae75fc1f3955c4ed37c41d3971c8e5e25a9b075ea83bdad81b216aecf46607472537ae79aa81977a5630577b9c21a8023100d7339cc25efb204a2f879c305ed6451d147fc65d09351b80ba60645d1bb295b40753ccfd93a46808131721654234e9870302047c435bb50066306402303e8f86b383dd20736b2468e469bf1025f770b2f00e498a720683c61ec0e5a16867d3fe017651689bbced83353c7ebdeb023036c915d703d6a750ef53f83e8001a9a6fcb3c601ceab7e84b48bd99cf3c56d81482a7fa07882c059b8876fb86cf59bd60302047c435bb500663064023040333529898e39e5b901e9bc221738af86f908d47c7b32e742d925633f19699d213199837a4cdf8e0151e5dd02e879aa0230322699f5d1ac6f4546c12a75df9316a850289c012d0bf8dd1da92ed55ac900705ff2a1f78a08b7456d871878598246a60302047c435bb500673065023100ee9f0c5ee4d383efb621714f4727dcf0792a4e3aca8c016c79cd364e4a35995c79c70560b1f7fb7001c0541fb90afbed0230123277663f3110f78e192c829e21b8e2ffc63e7df51c66cc0c6b0f40cb8edb36720c4e1acbf6295eb4068238ce04b7220302047c435bb500663064023007e5d36e37bebed6dacf86f4b88ca7ae15d8d4fbdca81f8d0b0ce4516a67ccee7a9a1d9b2a06b4033267aa2af262122d023035ff814905cf5fa9948d2c559f80f9316c29db8101457d7faf2d8798a869e21adbbc76b9868ea02d6d8a87bc97dab1ad0302047c435bb5006630640230076af8b568a763d6d652d6a6204809bc1209a4403bf525490b421040d8e3be197162cd94e2b0d63068a495d1d626d5740230453dd4047b0ef99f0a9c397862acf56952effc9dc5fd44f6bb612d29cfebd63b4f29b30b34085bdcc5484cadc8559be90302047c435bb5006830660231008d07e738cdacf798cc4bab89272c21838b1daca731a2f38868d50bc854f1bd6a9b53768e26563d200054d442aa3d06f5023100c656c4e3aea8e0ad87e48df70fd17781e268af08ea99b2a676bc13d6227b2a8ec8e8f56817952fecf5bb7fe52ad27b400302047c435bb50066306402303f5acd7a14110e250a16e49102e9f9abaab7af05da6860ce7c627ea4806f9d209b326c50ee7dc1ac50229ae64e27c3c502303cea9e7b3a616a3d79412627d683ee610e34af140de7320ae9ded0cdc11b558a78710f00bf6131b2062dc804dcd934dd0302047c435bb500683066023100f0db5a0a5b170423a3fe04c88f96a0a322f88f451e799679280c84e17e10eee9f4e8a271a5c5a34b3562f2265e8b1161023100cc039ae853d7ce349192b9368c7a85e24bb3eb3c2b2b03c0a0a953d4203e6e37916a1d3bb84d82c12b6cc028fc44a7400302047c435bb500673065023035f31fb8ea39130b19312e7108db10b404df4ed22077f8f392730f0c40b7ae3a571db5643a16044b74c156bc102f80e402310090e35f5eda492075d6ba9a1d151d0c18bb46848ae895bc4e630ec8ec329242d5fce249bf0c833036c8223e4fe1ed148c0302047c435bb5006730650231008bde01a64330fd12713c264a91d8a56b66761059fc07e11f84d4ec1ee52158291080ec24c091574af7a8fb083808d93f023021f2ea999ccf51a8c0a107bc59df54ab003c03153b7928839b7ab6a48c255574938183b9b75e534ef226d91b3aafdd130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100efad1ed9a2299de3c1a60e29d44d7f5897157987bd5a02e9c5c22dfc7d817c5e460dc8c95e7449bd22214e2f2fce881e023100cd88828e5c688dbc9c673657121747b29a744d14be8a4c4232704b0b80ff50a503fe7dadd7e11f833cbdbc2ccdec1e0f0302047c435bb50066306402302afacca22d86b01b0a10bea23a93c483e7d049e79b4a59ea562e75d0bd5864c284bdb6a51058630df75c9c6c00b9673b02307d35e995dfa46ae1cf6f5ca299390c486a1d696b30da8bf1d98d9ecfaf117b428e5f439de0f68b28f1ca5a3ff0d7d8020302047c435bb5006630640230260f0aaa128763554e2ccaa019d12c6777661e92103b828d24b5f2aa8254eb53baf0622d24eef3a94b6f17256d68d44f02301c92d04e5522372a791563b999934e1fbda09e3a0f63a99c71cc269d292bed3ac948735aa34575fc46b87a1ff80f57360302047c435bb50066306402303608bdaf8e4ebeac40121969bd791580c1681cb2437aa11d800e121127459a2bdcdf9f7411e28c9b8d41b64e9a68d07202304773b0dafa3ef380e94dadb749ca38a665c13ab0bf062319046e46f0b53e2b6237bd549784d1500dfea7d88bc72ffabe0302047c435bb50067306502304f0379c2fae9de76124224a55862dded6a2cdad981540a22678527e7bdafd17839ae0c0784ad073be8c200657511d7ea0231008ae87de4d5d7fb2bf9da761af647317860825b8648c5aa3f986abd2339ac278a79c897462069f813f723c566b14f5ac60302047c435bb500673065023100c0d62b8346c830de5e286170295ec1f303230e18c1e4948fcb347b9e87d817702ad2a5c022b2be203465819db73ed70c023007efba2f019e6464989ed8792bf0b518dea2b5d7440cfe68e5ece84689b75e44c03cde265224cb0778b77e1caf3007800302047c435bb500673065023100c7889a17492f4bf311e6895bfa1de45b3865826afbdc6467ef4e86195c25f2835c5c4dbf7f257951c303e4bf1d78ba99023043423e7f4ab00b75fd3e0bbfbaf3cbd602a19098a294c1fe2596f8101a4a80d5441be1c48da9e1f7a4c3541840b2e2cf0302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006830660231009840e18a79d062084c120e74e4358cf5742ec5ed69bebd33954ac2b99e8663c744303f83a6d3935598ae4d48c185a3e40231008a701942530a54b8889b52742429b4c4fca28da650f22398effc4f51eabea9cc972b507bc8cb582dcaf038fe8b0fc6af0302047c435bb500673065023100fabaebae7962ba692257da8d900fa4032f1a13965cdce4e0e39ece8ac890594ad7270ab61ce1f5a648bc91c5e259c2ae023007be707afdd89e339090325f595e5244b99977a1d1087b34296cc1d87119812d6eab226e49ae8da17098d8973a8414970302047c435bb500673065023100b5b4d4e7557d9518a340bb564a6f0e3ee14086ac50080e55ae291d02e029a187acc0c2d08a24fab8425b558ed6532d3a02305b94f095ee0dc9a3352bf3297e08ca5283e1d627490d6357e95cbfba65599293b2a2c2c17f10daee51e762c3c60bd9c00302047c435bb500683066023100a29e6aad7680ea24cd6bc3525371f5638f2b1dd73c05d62b837c89648722eafc385647176af1a5fd5fa707d60cf9856d0231009f3177cbe9cda5bc5372cbf85a1dc565e26cc67da5a717ff4af66b966131fa07f984422b044ede7d89d15c16a21d343e0302047c435bb500673065023100a22113382d73eaf49fac093ba7c94b4629892fda411ee9a70208183ce4de2fd1bd1c8c8a3c7df2ca4cc451e6ac916b5d02302606c7440c6d9097118bfd6ca8948ef9d98ab8f75a3b4bc5613eb23811633c6cb5ece754042392798a6c07366343d8d00302047c435bb5006730650231008f10691e27e1c4e39bfa709976861680d279a41c5aed74cee784f54bfe36d28ebb6b9f92124e1b91c64d21cc10d2af50023008a728b4b0cc2d6d731caa8f3958d96a919c11d7a52d7ec43895fd09f63ebc3e2b3cd51e9e4d63a1e32229e66cbc29c00302047c435bb500663064023016dea8099ddfd5685ca5e8ccb11b5685e0e61f0ca4e74d6f77107518f2f243bf3ea263365ca1e55ac07f00238850147902305f3628440c34417135d31c313b1dabb4f53b63a502293f935542cc9dbbcaa3a98bd573c2f65b37552971a516fc6190a10302047c435bb500683066023100c808e0c8ea1e0e9fa91b48c3f21bd555fd2056946aa054ac2126a6f0faa5025c8b89261e165f5bf3acf2acb04e91974b023100d847b994b198aefc4cb89211e4e26e1d1eb31d4a277bde4c7b8f53893c96a1b0cbdeace4d065e017f5e3d38a56697f0d0302047c435bb50067306502301cf4e1cc6c41c1e1fb21516c56e5440ed3a79309eaba7145e2ac72a50990346911f8da1d20a9bf7a09dc4f65c63e8367023100e6918be8c117380f60fc39e5d06625ce6848e7165e31a844dc0384aeaac876ed83df85280f1219e79102d8f6e64970380302047c435bb5006730650231008d0772dfe1e5ae25dc132c3412b937993d2832346ecda4f074288543e23fca14a098db7a35ded9a2fc76e10fd343872b02304a68f1e4adfaf2bbe2f1d7d43b8866acc9da96db1987fabb24f907aa0314949c923a14743d24cc13df2ebf76bf934efa0302047c435bb500683066023100d99e5d523ad8958aa0e9f1fc3fc3149449496f1ecba3bf22c151f7b0ca8e10bd77926760bb1dc7260269051c1b213eb4023100819a592b7cc88d36739eaa0298e74c31c7deb19436bf65c66ac35843848e4179fbe6a2bad49d96b97985d472ee3b61fc0302047c435bb50067306502306b0ea83f596fec353e9b3ba65da96ffc23af555eac1f64b33ae9beee7fd2bea349fec3c4759f35b233d5eed2af1539b3023100f57383473a3c336c043d0ae25f046bbbd51f2d9a266abb189e0a03ad1a91e72e9527fb03b16db863f74143b96449b2a60302047c435bb500663064023014bd26d25d7de5cdc88dbe471cc4e52c05d79d74a1ec2b2e72ed4ab8ec730c11d469c05b100493c148fc7932ee278ffa02307ef5fabca89f8d444afeec36d82225d52021c0a6e3a4656df08b4be054813e902d22ef58ab37cc75cc9fb21d5250d9a50302047c435bb500673065023030d6b22808706ad67d62b2ebef81041f2274a12dceae434b4536bdb9329f1c32b8836a1050e2dff43c1bce4cd9167dcd023100a17ecd28cc66ac6254c8cedd588f1fbcd057415c110d9f7cd805384050f6fd6ec4175aa5240a4a4ea98eaae513d83e220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b4569470b748b68a8b7ebfab84f6a0159c60729cfee1518e50b7b654482635b2e37f7268875a13b29bc7d7a59137524d02310084fc5553322c84a167abf683281f93eb81f39c4a86b64427206abd37e3a8183e5f5576329579ff931552af4078624e7e0302047c435bb5006730650230356a881f58d1a62d3bd0257d86d09e941c4ec25d5b5ef4c052a3e2aa6eedef218ead38be24cc993b3219c4bb6979d303023100a14d75059e339b718ddd6345f9bd6c50fc78e5fab42563919f65899ed65ff4760a36628ae95826219f28edd754a092fd0302047c435bb500673065023100871a8580dca2ffc2bb6b1faf0f7c61703ab309d6b893ea875b791c1eaa7118ffd812344b21bb4d3fdf305a91d3f771cb02302674579f62638154612aaf6c4e0b28e0ecde64277f5593e7364d4e08f3dc81bd04fc3c41f3b37143d3b92370bd3573010302047c435bb500673065023100d4f418221f3c7c4a290ba54b21397b4eddf01720b1b873c0e6355fdd637979aedf29ab4b5c2a464856494c6f78cfa9c402300659a26f18aca927917f67e60d64e2bce7f9b4152450dd29777834fd97519929bf14fd3fa534f984ab31455c69e71b1d0302047c435bb50067306502304965ff8b226d311f46f4d5c7889492fa111abaaf2220bf4e9ec6e5fcca1dfa38ef45421b74ff54283c3bdf4a3f55abc7023100f7d65fbed0abed5c170fc30117293772ee7c6a76a7c767c129985c98b31502d048fda4b830255f5209783f8a875927820302047c435bb50067306502307b399750a672c4a87234d4e8460f3a2f2edba3651cc57a60220f83b1942a46ef7c0b64f47c85f4d86af3c2c7e4a76f13023100d096203398a69ff8378eff8b7dbcc526ab47e3fcaadcf54aa76d961af64058bba7f86eb03f109e9f0884f4309aa4b5200302047c435bb500673065023100a0ccc2019bb8a28d51f700e088c7a474ea2b92008662beed48789e05c2dabcb35fa4bc7cfa366d063e664bc15a1721c502300d1521b210096dc4328b22f9d8a9fb60e04ae1fb998f920594e0dc11c7f308bf990a087ed388638c62fa77cc7c5ac8de0302047c435bb50066306402304268d0ca89cdb8c0560ae5c1a5da244da1f7b93a29b40a92642daab46db994ad66b05aa61bc7e4a28ff2b48b6b2b76540230008d58a3faa3cab65ec1fdece3eeb11ec1372ea9191e961e25b7433c7623d562e435024a3fbc62dd0f1943f1bb6ebcf00302047c435bb50067306502307020127e0a7433d1b140561c70d7be8d738919baa048661e986908c8083fb219ea3dbbcde2362b60c4ce2ec433fae300023100ef40aa95ad79dc07ed40087411749b71ca3cbc8eeddd1b9f6da01d6081e97e02cce04d8d86b293cdcf1c1c1b150c56eb0302047c435bb500673065023100d90c3296523e1f08eecfbd044af25896cca5acfba8f6eb9280dc84536d15627197954d82b769de18ad7324355161f9fd023078d4297c9124a1bbdd40eaf9de7d5670c3da8f8aeeb19375a064737ee5c86fb3693c4fe29bc9cc1a57c91b69a4094ebe0302047c435bb5006730650231008e35082bc42349539ebd65e878e47ee3019d9110674b80a76f473d7608dc6b306a4fc5fba6efb976c4592bad10acfec0023029eb7fb8631c93b30ef5030257b2c38693adfacee0e79cd1f8c0fd7b17ce08f0eba8471ee35b1ed04d080b76423bf3870302047c435bb500683066023100b0d583a1d09ae9481d19c89f82005693c3f9d13b649847d71061dcedf92860b024d27d082a9433b361036700db178bbf023100c7ba864574a4858f249979fdf2e9f7ba44e4ecd1a84e852ae7e00e3e40e84f09ebd2bc76ff7f07bae4478ed5293d42e50302047c435bb500683066023100bc3eb0b0db74a644a71caa6c2dc22f8288b3d22f1371a481afbe9b27f70e8f480e6c6c65f9141bfb3bb01cb0598442a10231008dd60350a8cbd2dde1f51480f8654d41638e39060841425ad39ab500dea02fd4a7856dca417e00a76c588808a245d9eb0302047c435bb500673065023100f36ddf7a8768645f20d57a9d935cb14ac118807953c651f1b0aa1d3e52841c2eda685023fee162360bdced99d75f7993023027a3997f60c5eda6abeb8b685d034ccf9eb359a14d410f5c92dcdea6251ca6f157ca6da40019e1285d498f3ab422c9350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c2c4276275010e1642027c169b5a6f383655cbfa56d9e1c9462dd2e8b34c8fcd235ff54ebb2170dc0dba846663c5d37d02307208a9db191a59f76edfa7c61f0edb9eada19dee6ce1253497f3e8327a8ff427299cc4d1d3aa47423e250441fdeff6570302047c435bb5006830660231008f9fd449ce6af9deecba35e8706ae50d1eea09a3c48400e3f62290739de2f2f39d92fb38c7aab3b679cd7edc5f0e8031023100fb19080260ab3de0302327184bdcf6f192c775a9a685a21ee99764f1b5fb80037be219c63ac73a1b46c81b6d3a206a460302047c435bb50067306502301f26f14775ed97dd47211f7dffefeb71832244c4855e4d44e554638a42ba3ad98653d607fbe31df4b68a173fcdaaf32d023100cf8ee2dc96b33c44440ad644e721ab4c3d3522d6036e0c3ed29383021dd7ef5d16e2e297eaad0f8edc1b915137cf09430302047c435bb5006630640230067072c4bf7e88232d3ce8ac66d74e1dd440931d1f489abe894501729b5d464fac935cd78d6dddfeaa0fb95551e24fdd02307ad47437a2a1db8cbc2a691c6dca8aef190e68d68b01492a3e2533d3fcad73124ef4778cf429ab0a8ff0e6d0a19f75210302047c435bb500683066023100b8fc8ba00ea03729d65eb70fde41b0cf48419164fda9eabcbebe4fd8b53454e10247a8432efb57fd0598b089cc00ea440231008957534bc52df95921897c253db33fe695b1a8048a2edf38ee069b3f241b5d6a84e0601e9763e7f545439b3b955d74a80302047c435bb50067306502305799325f1b4c2a33f1c0ac80948ab501e109d60626855635c91d660c051d18fbfec383b93d49268521ca46c96cee3c850231008b45a95346ffe3d567116c411bdf0feb6093431074e800a4ee9e441d7a4e8c1298ee6eac059d36a2ea05730616d23a580302047c435bb500683066023100eb8664f7c1984197273b30ce18f729ac2ffdb09660aa0dffbbbc9f99c038f46a7a7f77a5f6b7cd0e17ed176276052fe50231009cfa7e3883aa6742b7c02d87c7c6cd1f6e4cebaf9caa46d8dda2402ce1197366e11442f440388223449e1d685fc344dd0302047c435bb5006830660231009b921c2c6deb890e304c21004d414dac4577fe2bed68fc267772859df9afb954fbb3d143bd06014238f0588d5e61f62a023100e4d5a0e64a58e60822242914ee6f1674eacc1741adcb48b7e6bf578ee1caa525f6a087db67a0e233740c043994476bab0302047c435bb5006730650231008c4a4ab83475b64579819372cb6bcb92238b9f2c3fbfaaa9ea887672135d89c8e457cdfce3342681b688ef9eb4cab9cb02300a477c5126c2a06aca4d7459380cd77e83b10847d50e7eb9629b562c78dd7aea07a86d14a554bd6cf420d84059a8358e0302047c435bb500683066023100db228d63b1da7f8d979028e3436371b8a8652de1bfcbca917284da7598581cd43ee295be5381ed6957ae85088c6fd785023100b3afa77e5dff236b1a73f7307f1c3c0af6ce705e7330c3f3c3681450103158f7ca26ca406c48bfb4b646ef454efce4900302047c435bb5006730650230724d360b674804edf958e908e3c33536f2107ac871ef45c2d21ec5a0b53b9556c3d09afefa0bde88276554df3d53a728023100df45ad8a298b0633f314404fe2f6e8a4a57512c309295fae3ec8110784708ae2a45dce1adb9709e47e0625cd113f76c90302047c435bb50066306402306b82e56bbb30947452d34e3882afa64997e3390179d714c77e07ec33a47113663cbc049ad4240039ac3014891fd5b06b02303a2f7bd9ee736b4100a1bb883f81b0b1e627dd428cde1450d1740fe60be73b7ad0c47f003f4d1efd61ed119cbbe208450302047c435bb50067306502302bbf2312e6bfb0b05f03c24d49fc4dc0089abf9c4be9b1a932d3c03d67b35a9a33fb87d89f9a2a2611388e7ae06df6ce023100edd82dd7eb43a25c042d4039ae0d13d4a8d05bb3786645cd47a899e774246bd4ae0c53d69d921255c5bc26789ce569910302047c435bb500683066023100f228119215f1e76896bcb2198dcfadf95c6b1e1532bcf1076fbd2c7144a3daaa656147d9f1815ac85be956d07e5ee78e023100f79c575cef7044d57846e3e9c80caba2a11ddf6b316c22a4996c02c978e3394d3dd3f26c5c981844db2ee5a8a70fd8de0302047c435bb500663064023053e85e94ac72e71d24c4fa53d987d9ec9f846a381761ef3cc3b9a532966af22c03b4623575a1a5920d95d37ccd61028402300185c47503c6ffb050a9ba3a415e3942c908ebfe58ece47d01b1717a0fb868875f2490d2fbb31a40c0898fd9ba8290d90302047c435bb500673065023100867c4a33abf02751a299caa557e3799d2c0a9f33c73f4e867c7e1585d8771ef87a0ea7b456414337868be4ec15ff1aa4023034447e1ae7bf651ca6394298420c3b6b24dcc22db080d1ae071ccf1d09f196cf5bfcd3b06d994c948d4db20c131226e40302047c435bb500673065023100aa6a59aeff3a55e706512b8cf6bf063bf8bc3a683a32110c558a2b340989691f68341af969936e0130b500da46686fe102306c96c624332a0457ecc234b1bc843df8f65380dc99cf96780a4156a28bcce218b1c74c0659ec6ce9982ef58e460f61820302047c435bb50066306402303cfc0185fdf442944117f06713463c088db50a9c2597dc8e7e64979225f18d121f73699463f5dadd08da253eebeaf09d02303452591b7359c39bf6640e707978a138530b25cf3e80bcfb0db08d9ba7ed3bde8e0d0b8d178bcd3af5b70b62f6da21120302047c435bb50067306502300a898750874f2a75ed33e93b333862f2985e6c4ad53cef66b749415277ddada7d0ea4a6777c83651f5a80ee833be434c02310092aff8c267a8ccfa21c45f8ed555224143135ee9875a2943c8d145bab6a0d50a6cfd2f47dd0f69f317d4a2ca6aa6d8800302047c435bb5006730650230067c589a101b370e0f224e49c45bb91ded55b147dc2d709de0a5d86ac18e187e10e7ba31be6b246fa9f95038acda54fe0231008ebe278dbfd2973892e7f24fe3a83f116335b9476219cfac20ca15ecac02869c184cdea4c22f79c51be6e2c817d0dacd0302047c435bb500673065023100885ff92454b846442f2963837f4c9c7f373f7ecde3202ad68bb77e6f441b33c3036ef8fc3f1beb98f8f8fae30f2c414102305ebbd65e7eef9b33064725e52a818d3ce43011111d35dd7d66cb32becad2e9f47a2989eed47ac29f83f5e0a34b68ef930302047c435bb5006730650231008013c2d2c770ff3846ff9619969bcca8297dad0bd9963de39342c7e35364001a5185ad32c479748039f16f63d46c2ac1023031057c9ce828a862ed5e96513f6fd83eceb0b3629633770b5521fae859252034e5bbf28a32f5aeacef005cf727ac03b40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b0b4ef213b19973b91532b59547fe3173d82faa263b2802a9f4d06c9384e4077f204dcd0325a0fd541d39d7e2e556382023100a6697af72de5655a5d7f406e25015dfe6179bedd5f75c4c569a310b0a9f19bee76bbfa53689b3c72fa13af2d30d6457b0302047c435bb500673065023100a3a62df1fd60621090eae3af92ec7b2f84bd7db372984e5c83b3fc769a188dc4331fa4b62f1cd81beb82f9ae882d110d0230124a614cd44a9d1fe97ddeed7468cbda855df700fc604925acb9664dda8d68231cbf15dad03536661b37c42ce41990620302047c435bb500663064023054cfac7d2214b22266f6306d75449267be9341cc05bebb1d0c5200e0625a9d82608519dc54ffec0b90ba240252a388a102307e67ede4bae33e2efb6b3626fdd659f8f3c50d2d9f807c28078118e0d3f924f6fd56f09c04a0ce9f02a90036e34d39660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304351b6e3c93870b5e59bd167e532c5bbd33ec03a11c47bc4e7a676268f18d14344289cf39576dd7d8472c2c2b54d872402301f3b04f81ddf94b10a8eb0218c00193a1fe382fc962ae82e65e2c23a52419af5c9ab1357437cef07f52a3eceef6a590a0302047c435bb500663064023071eaa36652aadfee372132aa20a11fdbb2da0127a4f1f58b5ebc20096aea3bc2cb87ea14c7824d17311d01179e044c6302303bec4727aeb0ed173abaae3e31dd29c809c20971df40bb1fa04d9ca4bafcff1260e99442f09548f7b52d9fc2df780fc10302047c435bb500683066023100dae1f501093ccd21feaf9fe31c2c6999727c1fcaecf9d5ac78de2a55a32f5e063370910b041464cce55a6170a45493e5023100b39ebd42c41764eb58041755f9c7f2fd866a0f14df72bc0df06491bb7dde06371469e05f240c0fea1f0c3d0223b826cc0302047c435bb5006830660231008938dd3d975878ad2f8e562d6e3e6b5d519efcb8361a1ebc3191bafd5d7deba64359c1c0f2c324768c5b613cdd9918f8023100e50294dcc0d9ae70983c9406b253d92b839f6b7ae967f19618ba07dcd6ed247813873538e12117ffa6f2dbd18c2e4e720302047c435bb500683066023100b228e4430b351f841dde6f9d600eec33ddbb7011b7f42c166b14dfe7d563cbbdff1d3b85ba9a24f26871995c6b827957023100913d448b9fe2fb8e12356c9adaf235814327fedab56fa385780109ee0859ef0afc9687f1b81650ab86d8266a501e6b6d0302047c435bb500683066023100fa13050e038ff18d70a2eab07e02cc1a8c3f55f1484e5095bf12f5c8534760caf6429851276142630b65390f5d83d4da023100c97a55fa4a30c19ef3bb3e1e65e636be310176bffca3c79d1b65a47594ccd7b28d6c41682fc13bed6ec7554a6f949d9f0302047c435bb500663064023019de440e1d41929efd05a16ac0b59a9799ef7dbc79a31b16ca2967005d0ed44f7831dd62b0e2a077cb93f4882a050458023037b12aa8fd756160a12b2e9c3c4ea8030b134d1a70547bc45ac157f63e8584806398176f443e076c294c00848b643f0e0302047c435bb500673065023100c6ca0cb748094b32c214229480ef1ee4d3a999048088bc1198d9c1d7f91ea240b1550f5c4aaf3692e1f01d395efad4c602306548a5313de329323f4f79314bdd5413cdbdebf95df766a0ea4fb73f808a157014fdc7016d8dddc93f7bff3c28499dfb0302047c435bb500673065023042a6631394886f4f4dd8de8a4f6c18183764734156895803c0935aa383cd81e13ebda8112afff1635c6390ce82baf3ef023100a9f34bc26971af36289f4908bb23159ff9bb158b1d1f642f3821f53addcb2984ad50a5c41a701ef5bf1e9f73892aa9710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008651c270a631505596be50193552b1ce21ebd58814081afc3b867e1e2df3d75fa942a9512d513aac181be98a5026e417023018cbbd06fd751294ccdef1fb1b85d22253d7498ada81a2932f5f9719d183669e8642ad98ea1869088d73f17dcd4e401a0302047c435bb5006730650230541c7f9c51af869a31bfff2185d3c53c4570bdad149acdb22d38fc79a1282d826165814d5eaeb526ce5bfb02665ba714023100b3d96e2fd07fe73539fce2985d7b62304ff9a7920ee643054e5c40afaa755d0cb4c3b31148d80246a16dfcd2915134c10302047c435bb5006730650231009460533f3870efe27bccdfbe78b96ea3f719610301df12acc1aa254b41d8542bd87981cad4f451e2f69096db409e9d3802306914d32335a027323e3aec1654a5731543a52038e64dcb248763beacb56822209477aa130426dfe4332814ebbee302af0302047c435bb500683066023100fcac39b4ca217ff235abc9f97d29e4e8d133ea47a57c43fa768bcd72b99de8e334b26bd02c0f8e9bd7f7c745e1c4202d023100af857a3c730b12d8b82f15c9eb3cf84febd1120534a85a2e1e17b2739f74c5b2eb64528fba36c401fc52e0b9099a318f0302047c435bb500683066023100f7ad1694ae6c036c23f51bf2476525107971d67ab56d857d54d1af22643ef454ab6a99552507530fd91970234f0caad60231009ccb208374d1513021bcf4c9ea31e75e024da98d33c316af2d4c7ed8a6e743a7f6f6b49c4c62189c290421a6cfa4ece90302047c435bb500683066023100ff28f81af3044eba0d10edb1b7e69a166d8082179608f368aacf88f8441653a6f8343492147276510f9fb1d35f45fe1b023100a76cdfc86e7072191f417020ce892f17671ba28c33a56fe1a1526cca940db2c1ee415f284a9538af40131de9d45c51880302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310088634840a1a46eea57d97fe215adb34cbb98f7df52703b65ad6d90c1cad980c070bca9beb0cac728be7fc0f49b4ce6470230174857fb855de2717f6732c0ec235ed817ac0bc471c366d4415672928d80e62f786b65e02575caaae430b32a36d380fa0302047c435bb50066306402301ce360257db0340e77f2222b10af2e42fee6ed733fa03046a25fdd9cd8649587107ef54f4e6e91b3a6c4968665d6d22b023023a920b7788787737f4a8fb6cb31c1e0fb87920a5925dd366fdf7646a54dcc59486005ab973e96c743dc72cfef1d7d7b0302047c435bb5006630640230337b68754385bd62ed50a542a8d63e674fe94190b2c207a04f3dd05d6d60415ff028a66df7caa6ec6679a3d363ce2539023045c7928d808cf11bbdc64f3450d7c37a50139532c8014948b063d550fa2fc6aa2aaea558665b40c093550a778fe9f2120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230393bf2ed20cec6feafdd6a4bc5c1714aa6b3a6eea73a67680ce638a120dd4e7aa39acc4743d974a186b62abcac0ad7e3023011c857ce9e270f2e7648e8d9657630fbd24b90e2cc2ffb3541b1792c9dc26ad2bc995b7b32d2ff0bba6aeabfc2e586270302047c435bb500663064023001b18a6bcf74d0e61954cd2f6dcd0b49acd480e83f2f3a2545b196be1dcf781286745ed0bd40a6a3dfd3448d703d0c33023075225a3944d24d929abf635a4ed32f5604577615a5d6078b4f9437aa5973e72e5957fe79bd8ab9f72d18f17c9aab877d0302047c435bb500663064022f584f20146c19fa1fc9fc9222680789dc4e27780449d9f1c13a865acf60eaa5b79f398fbcfe7dafa95e7f267dd08276023100b5b5398199a0497bf66770413835c354df8d36b37bdb5ff09e6b007d82396fb58daa45e2fa66b086e815169fd2af77870302047c435bb5006630640230393bf2ed20cec6feafdd6a4bc5c1714aa6b3a6eea73a67680ce638a120dd4e7aa39acc4743d974a186b62abcac0ad7e3023011c857ce9e270f2e7648e8d9657630fbd24b90e2cc2ffb3541b1792c9dc26ad2bc995b7b32d2ff0bba6aeabfc2e586270302047c435bb500673065023006885d98873cfa33059d5b3f70ef55ee493f339c3798c3c1ac702e7179b98e0b3c336a108bccc1a2fbf684d88db8268f023100a7a6bdd9ea4a0a9a57dd561bd2ab3863a458fac4bc9ddda24ff216793b3acd7e38b5a080db12ccf86f58889dc0d5b6050302047c435bb50067306502306e6ddbe4dfa0afbe308f99391801c5519db2aa02312b90342b900dcade0cce9ce5acafe0b442c63c0c741a915dbbe4a7023100c1844edd1eb9900d81e5a861fd5222517188652982be82861c4e0db6a4f5698111a72ed1b8f6de766e589cb0861d80020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307a49229ef0f0cc461e965a96b8f66429e5cc8fcf5ba801ff02e3a663d69b8ccce8bbe2d3d13ad339bb8951af2d645ce4023100abb9c3154f6293da3bfbd10bd752492d06dbb6d6c0c6dcdbc2ddb48f7df69b2f75087b264ac5bcfd0e087077b70f217e0302047c435bb500683066023100f83f1e2574f93b934e6557a8c4ec0f4947f77f8c4a05bd1ed0d121343a165822740f68cf754110f746c41b893f408c69023100e47022fdcd378cf898c1d26109df96bb74f99a9e9530e4391ee18c389497405b0a866e60443885fa9abf1abfcdfead180302047c435bb500673065023100cd0e933ef60d29681e475ea800b34bc28ca30f1b0d13d34a800880b61439209fa0bf52bceae20b1ce6085252c226c91f023062ab69881c9129de6b2b8c57ab42be16b5a3da4344768c46acb1478c242208d039bf6abc0b64f0d98dd3813c8d846caf0302047c435bb50067306502307bb99146596aa1787f60c141eae0692dc5a3c6b77cea5ce036d731b65a98968ad7a597b1deb2bae9fde08f7940619b0b023100c73e8f9b804e3228c334283f5e10c8a14db48211746fd937515e77b324eb7768b71e07d63f7bac836bf06ff9c61203fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c68c1baea08a672e954aec884e4ef8118a92ac69876a5646ce08c6928ba52c0c8b651a3b702cf873b4217e3cf35b44b3023100d3d411ae661f82342fbac6fecf45b21da02dbd270153d16c929aa3a55b24f034b7b4e5d09806ccdf69078c21330dbac20302047c435bb5006630640230116a2175d20eed2c3f03f35c2167d5d56f3d995d8e7dfcdb05349bb3875e7fc987a8f53d112a6c985c86abd5722878c002300f6fb6f5f8409ee916b0899dd589fe3ec8222697347d36c3bb11ac1bafa8a09bc21b5b93f4786acd977634435c39e2f60302047c435bb500673065023100fa0482211e0ba841f0b2a23fdde7bc0329a906c55b79fd52a955395781797525d1bcc1f5f8dd5f96a45c4d772f46332202301790c41b3f1043abfb51356b1179555cad7eef9701f89886c8d851df90ad0aa3345e6a6b66512f9b0eba27cfea8a4a5d0302047c435bb50066306402301bdbb35167ed76dd7ffc65524f4d247d39570d6ce385cdb142f95b68139fbfb91ce70109ba66750cdaf2dbbd28173be10230512f557242a3c07a76d1ed4adf0f5ef3a76ee0d3adfccdae7ceb0241b4a087318afbae0ae0bc3f9f56a1e50b566460c10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009608439dc377555bb64a75a746b43e365ca6afec026a247829ad263e2002cafc453784d4d2e423b49e290d93a0b7fb100230662903da40379aec797d3513eb528a4482ca8aeb05c7ccac7bba4aceb180c6ffc7884f4d879fdf0f893ba5b5f50c9d500302047c435bb50067306502310087b7a2e38239f21d668ea2db620445ad8910e13a9ff84b48771a8411506f806d378ead230ee88c8b38e8c8bdd573854c02302254f7b303b9e2b4f325b514fe165e4aa4200e7dbd85c3a58b3a64ec1993b7547d7369e6cef6297fefe5a380207c0e4e0302047c435bb50067306502301a580740bb4175b30ffb7f75fdb95217991005b847e9a374a902eb4cb4ba9d69b998cd28c223957e76808a3a854ebc4f023100be49e7e5f1825855821d0433a24328fc410c5372266505630f76fb8333e098202522d4a39b534401cc3ff881a05eac790302047c435bb500673065023100abeb1dc86cbb1a0ad81a280539fd033e902e65e4a42cee960acb74be706495dd1b58b3808875475ba0dd4c73dba0f07702301f05fe8ba028daf210347798eed88d7c132fb65e2d97cdbedacb3bcf8b53a6fb9a2c5dc97dc7e4676e25e47d954a75a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023040657561c86b85f9f85cd5491c44ec73e154be892fb5645aae03a3aac3d5260b667bd5d7a188d98787de72751bb45e80023100bb079c13096a41f1d51ab5c8a1a9f593a1d9ae591e3c784aa3f496ebc699b05c178f5de3282fef962833a2037246ec100302047c435bb50066306402305c68ed36e79122abd06604f7e82282ed17a5a766dfd596a311154c05497863e38d77b583e8fba136a4966770c04c324d02300233429164b4cfd036db0f4f6b22817d275157e1b66236fdc739db12af27e596559a3cd28871bc7e527d376ab6b0007f0302047c435bb50067306502302edcc5b4047c72e1e5e5e4f623085f28f8266161accdda93c4543a104a49646242ff286a697fece61b28e7b43a781cf30231008d0759d901737a1ad7beeecfcf6a73a56b19aa054481040d47a584d616762dcd7d8c556e45c2c09f31a054900f5d37b90302047c435bb500673065023100c6b866a885769e1fb00cf863efdd54e37f355a0d4c11b862c9e9a73c69b6ac75bf7898561de3b180cebaf6815eae6f5c023056c74e1e7e855daa230d6fd1bacb3f769e062e9f99026e0dec55e0b867ab25e20ba4d4c615d27f6cc612d89236e3c8d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230640f940eb17edc98223f96c1bf9eb0d05ccae6942651df3f78b2202424ea4c52f843ba473d3113dc1ffacc73f53b1632023100fa72a4ccd0d0a1cfeb494132bf8d25ce286de1094ed94f51c13aa8d9f1472d00eea549e07c64a3f2513223685ab2282c0302047c435bb5006830660231009221783087dac1cffafc75fc89505c7bf9b5dead0dc00cd15ace0da8ab338a7fed1e90cb83fa6c1976474f6786ff88310231008af52718df91fea17c4db4b0c733fc394d0828a2b1cd7a93538f5d73bf9dedf02bf2e87c28661dd6f3edd704f7ff23e50302047c435bb500683066023100f33fbcd570595f738618b694336b6d7da066ecb42998029c4a43c44f91689871eb6b2a77acf133ea80690f7bcac78ce00231009721979aa0a751884e308a4f963ef577e661f70a8598d760a61b90dcffb1802147da15b787113903f9fc3cd1e825f1950302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023022bc6b4178cfab39535b4c2a69e29d1c99cdd1b5789f231d1c1991ddaa5bec6c698800dc9ae0370dbf42bf3a352741c402310093919abac6400b9fb6e170843f0928cac1f05830322781f30516902dcaa7c662b5237721ba1f3e7a7dc0ac200286c50a0302047c435bb5006730650230307e5f7f51f07a9928bf887f3f01ac02ce5c4e91d4935595698fa59620732dcf2e7838464b3a8d1ab8d5dbd28ac8666b023100b8fdba748014c415ceca5e80193535f52616655e87667301a81ddce01ee81a311aeeb1df131bd0c88924135501385ba80302047c435bb50066306402306e14eb3d27d2187595cbf6a7b9605bb047fada58969e884da7e57e7ccf2fe7ce97f1f9fa9783ab8f668361bdfda7de7b0230015c0f162e8362799d96f6e8ee9ad96bb352e73f94f0455de064efb38d651f97eae7369c80f12c918e54f4900bc53f580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a5ca1aa5e1be85b9bf7316ee51abf8a291c110746888d65d4dcbacbc9302765c123398157d06682bd6093fa2ea0991d602301b08feef06d73144eb4b973457a4b1e9590224020cced133e0ab6e19f2372afa8101e41d08ec81a01dc1aa85639ecd080302047c435bb500683066023100a7acf6e9572dc6f85d2aa075671f93d15e7c7113f1d15180a706f37ef50b7700aa219e0dc73708df5ccdac33a8628fa9023100fc4c8936deb7ebe15bf0b5f4dd59793ae8707153baa7f43891ba24864a9a5f76dda09d7d55e50543d22617d7f1fb57290302047c435bb50066306402307bfa180af191a50e39b27c97f06faf67641f92793cc58a64c7c5a3424427a43adf75c18bb6ab067b50b5b30f4c76970d023016a8c820f00c1032648507c01385d7fa08c53b8c5200ff7eda64eda8d2911b3dcbe9453a8a73616ca46db3dd941ddc220302047c435bb500663064023020c7fb4d34da1f2fe9c874de867e43142727bcd159e12419ea4102839c2f3cf6958c3bedbc493d1775b5fb71d48808f80230229bc4e088d8143c526e9aa9c56c8937a7eda8eb5d49071329e779dd48159503d4b7d644e7c9d43ddb95e8d8ff9f51c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008c52aa633f81c0706a534bf6d05b4f7e6a7fd51fd706237201121cc2d40233573b8063cabd20c556b4401e1f8235912102305f31d7495908bf0997cb02c73bca37ce0539d0e058926870499c3dc9b6965976687b7cd862a385e9bae33fcb9622ffc90302047c435bb50068306602310093df2327e4da719e43b508675963fd62062f55d0adf89577af940ca7d66b814a476c3e8a931eabee388d9728cfda3ff9023100e4de20de3d50bec12408ae25b6d0fb6d08b52d4c84981bc7b712f18cb3f8e479edaceb8b8664e8819a4f6e09f0ed51050302047c435bb500673065023052a477f9c341e747ae520a4c14a0fba2f0f5c8b93aaeaa5ab72338541dd650187ef30cdcbce91b84c8307d6392b9c272023100a5b713165d18c31f48ab4671e225761db0c879c1f8d98052ef4102b680091fa73dc2cf2ba032bb5463ba45de640f15f20302047c435bb50066306402305b84f04d5869a5eaddde8125e0906861e2428252fdde52b39397994f8acc47bfd1d4cc1c661d9146d58a9ecc416deaae023035484418b622044e25f69b612604cfe65350fb5fe6f9ad557d2924332f74ed9f6e941b2b99e1fd932ab9d4235f74b64f0302047c435bb500663064023039009ec9bb8765fa7e7fa5832a0d4abf487da56c0b1d96372fba1a73ee595a2ad0c30fd42bd78e670d98138e17d21669023042dd1aab8a7ec75e3edb6b21986e95d1e630470341114efba0bbbaadba68df4bced1431cf6fac071824ff2703c60c2970302047c435bb50068306602310099c568ce9bfe96db2f035670434d5aa2eca1e5d267f9cc989ab00608799c64c5971e8fb24e6dbd173e477c031c4131a2023100d2bacfcbcc924e53d4fde4ecf015659dae798104ce3203deb7c281f289034ff418a9f990ae0d992811967753383526d90302047c435bb500683066023100ff6cf108174a69aef35441c1f96ce22d145ef27e607abcb5aba45a6852eaa3124698db444039278f024b7afdf8cef156023100fd81467d60b039301574af196db75bfb876586ef6033a73cd585774b8fe24f97b8e3ab729ba48ffc2b60e001c40bc0610302047c435bb500673065023100e1f3891cb784ac02312b7c500856d10bb92f1d42d94144e074a24808ee41eb2ef882aca74d8b333daf72cf64bf4a6a7b02304ee70afe352f82f0e975c3550ee60bebc04eed58c474756e1e9310b32308f458de9a8b90dfa3c16bad04c148a8d48a650302047c435bb50066306402306cccbb7c5318cafb8d8bc184f3caa1adadccae81b67b62270ef8bb4d11de22c88e2bf1fc1b8fdb317621375da334129302304b5f6ef5210fe9cda8081eac550994f3441104ce41b5d3c5ae31701f73c89a055ac7f234f01ca85688fbd0209aecdd240302047c435bb5006730650230360fb087850c94e2fe7aefae32eaeb2de267bdb49ff4b90bac2a9a5eda374a70323a9715a3c6fc42d3a1bb23785fe0f0023100bf86597e5aa0072bbf3d0e79e58c94f5f68f1eee60e148aa2cb9c9df459200e752ca522501489ddbf2bebea4465d33950302047c435bb50066306402305928d5c23a9e57009b32072c9ead388970ba38ce85a0700d34cdfc585c15b1f77b57a81caa75f9c91a0eb0cb4390a87e023008922c543bc7879e3b164aea8a004a7109a861d554015742cedeb6e13120ef07aa00940be16b9c8638401fff1ab5d2670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300228d67ee180964ac17ccd7d670209b96fa0cc66f28116446d9d0db1f7464d0df71712999455b8c4f63d0c6954106bc3023058aac7d9c6c41972ec3b008e67fb6ee319d8128dfb53a6921147d1942bc0d85a556961e07c0368640965ee356e3610ef0302047c435bb500673065023100d6172ae99fccce2925c438cfcf73f1b48b87e13b0b44f9b9055ee079db2940d604b08b5b370f7040f918cfd7ea83ac4302302a3930b70670ff2496450fd2f98e1065745e8994317ea80d1aa4ba3445e5e3f73a72a577ea4781092c7822c71aa895fc0302047c435bb50066306402302cda4884b7cea5734292edfdaa7e90ff1acfd586249615280fcf4ea4b930f6bd4e3a0e82b88c1b3dd81cd000d57c388f023072dc796ddb597aa04b6ff91223059d0de9cf3ee9e872a120dce3fe9af99a2f3576db4d94c1c36c16ff2bf216707bfeac0302047c435bb500673065023100ebc72f17c3a5d8ac7dc9d6d242068496ebbd468d71718513b5a7ddb45cac663031bc93a55d892e1e7a27d5e3de67857e023039a46fa3f2b0321542a8a6fd86d03b33b1c592695dacfb72d2a983b18d5d228e43b7e54bd958bb845af32f614a0477cb0302047c435bb50067306502300c5e303f578f175417050cb56437d9ed382c166d2f49dab23b7dfb825c73c3994442f07f3d428e8b6fc35a1e36eb0bbd023100cf3d59a8df77bb6ed99eb31ebcd88e4142760984dbfd52bda14aad6601c2e8f517cd9f7220ee8683ccbf149bae1aef820302047c435bb5006730650230335f30c44cc84bd58baa136ee1f76b06e213a87c24527463295b62bf267cad86e31cc0ecd55702d62123ae301a627f87023100bf7a044a8dbd70b786793f3d2c25aa6a7247a074535cc9e0360a67010be08d283e27689b3da09d773c5a5f82ab036f070302047c435bb500673065023100d983f05eeb5dbd3a5d8deae473e9ca4d9b7367707c1ecceba8d20982e071e45720bb2f6dc742643fbaa544c8dff884a002302877b70a637c1effaa229274d4ae4c1f679e172587bba332c64f1e98f11f6cff200ebafb70e35a1a4cfa019333027b0f0302047c435bb5006730650230127f5239ecada77d7799372a9bd775f25574ac5ec3a60c1a1934b49142ad86c714b8c4d5e0137b43d136d08a59603a46023100ba5cf9d59e76f4501de2705bc9c6cf9809bc55da86138d307bcb69cdb83b0531bdd660efb125311d67736e898ed32fb40302047c435bb5006630640230291f1763c76a93e2afb087ab65ce3f5d912bd27b6f44bbe17a6fdca1f30d8dfef8a5317960bb17592c8bc41e8ee55e9102301f02daef08b02930f6cca7972135f25640e0f40ebf0cedd29f1c3ab8aaa9f75cbcccc6ffbc17b173bb6979d4f5bb6a220302047c435bb50066306402307c796883ae42cbe2d831a1e2fda0cc54432a82f51bbdf464c8c3a439489e67f4f37ebd096d809ebe60fb105f9338cbef02304ae96c0d7fab3e4fff9d5570149b96f2dd7307995a02c1fab2090016b2a92d4b2203f293ce6504d695cd16d20630730f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008d7465291d423a472e9619a366fd34617c72044c56669692cf600ee147b368f4953f60fd007e69d4fd33971103548f59023100c8972e6479afb6ac31ccefbd739933fb871744ae1eb65202fe973409b86cc308a7543abac9fd0fe3b8dd957def5dfe990302047c435bb500663064023072351904407392d718beb4737ec7001ec7787dbc4c2ecaaf8f2fbf869a80c1483d8ef64fcf3b2aca279e8a333b43a360023036260eb276c9203d14cc209def9a4c3ec6fee3a64a54bd2c62f419baf867bd71befc9c681b19054b199940aeb40211fa0302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502310086705a49f6128ed841502f7601fd62b8a86692d49532166088e43cd8771b4dbc0a44f9fc29265cdf126bfac92d5b2a64023047a2a7b5ddab40e74bb1a832116732e4641fa33d0021030b08e32b6d24223b69cbaf198dcdc9a2b56a8f22d3fbc98d020302047c435bb5006630640230156476b4bfa242c9e86bf2c15a67ba2347ba678f88df9c516a4b4e679169acd7dd3776cae0261df728484c487d3d7b8c02301ceddb9948a7afb229269dd681c4678e1b7a604d23ea7f2ce3c322c5f887219fefb9fbfb44e55e36110eae2b7cfbb2e90302047c435bb50066306402300191169748090bb3a9b203399bb6f577d6f3204d5cf83e1988c0c68b8ee0d4a40f9561826e52b36e3f2787f9aa592f5b023026080e076a230cebda94fd90cdaab2b3df08d744767c8c64b101e73755f0d7cff6c973e07637d48b9542f92fdaf57e000302047c435bb500673065023100ddb261742c0c1d36ace282bcb0b67f708e5283abcdf740615739bd521782114f0a07bec61e3408f4d766978bee58c66c02302b090ecb59cc7a049a26906437cc77fe93a0af328bf3f9e2f9334a82f9801a61f00d737dad196dd285619f8020d17f1c0302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb50067306502303c8a03cdaffb945e62a9c4ce2f775f7747759a2dd1144e8b6c1d52762ad5653cc923d14111ee62756a87a493b4b77595023100b0dd19db8b71a486c379447aecb2fdd5daba737bc328dbb9bfba60b371c0858684a22065a7e916d7ee0a53609d29453d0302047c435bb500673065023100ecdb184d66b8cdd0bceaf66fec812af975c61050efd5b7ca69ba5b0570507721345231506442dce5f9b54f29b5f30697023075a466b77c8962e8286a78e85841b690f7cb2ccca13e3eddd0a330d34882e0da97e267ea79fa900aad37621b94cf1c9a0302047c435bb500673065023100c18c37b09b31e2ce2bcc020563a44c83efcdddc5bcc8fa1135aa67c17cc4d9ea5a5f3b7129910708de20110623dd485b02305e93dc255510448554d594c162bca5f721301b15271cd1ef56ec8213e43f569140fb09e6e8daf21ac214ccde25f4eb170302047c435bb500663064023058a24c8807242481abf4751fae5991e471c8f2dc2dcf44b3cad00742f26456c1fc5c5585de44e96f00d36079cf9382db0230695514f30df2f777b8d75b3245c973b41a4b66e8cd60ff68470cbd1342215ac096a6eb9873b9b0a3bf93d7ef74122f3b0302047c435bb500683066023100eacf46760c350ec9d961d7602421e6f0e53adb0e2de7d382ca73eb5c543ba8dc7643bb8d027466648a27d95460fa8327023100f24139defd24301ffe0a87b1507d75ad0e7481959239f40e7f73bef419d64a047fb5d1d6f4a8bb68d3918de03071c2e20302047c435bb5006730650230683ee25761af07371db24f056e4f78d581d2061e00ad5388f6c11d0692822155c7d99df3e29e2b1c293172ff4c3c916c0231008b3e599f24dce6f5e080ed7ce26fe7432d4fb05513c507c3aa10b6e5c8aa55bcc3d4a4c953e7c8fdf15d8b966f8f56c00302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb500683066023100a85cd21bfb01b9c6c5108156072e97348b81eacfe1a54ed40404ab6de1567c5ad2e2a9288bad66c0f12b1db66e1dcca602310086aeb771e9c8481a57ba2abf160483172e889a3db74a86e06749a713e2f62c0c416739d24bf24c8a4c5517fe8f7d893f0302047c435bb500673065023020c3794a4af433d78cb28ee7320127eef7df2cad8a1b0ade9287682593eba2dcfe9eb2b87e9ed5c83f31192408992e72023100d5313b82292f82fe2473cbb1bdb3e287ee86ccc2bb1655bfcf9b1b5b68fa75dd07b4e697168656d4e2ad4592db4206c10302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb500683066023100875f49e5b09279697ee05a7d030c479f7f84333ea9e9aa26311a20fe7ba4c17cdcbff72b2a14183f3529f41a5b565977023100f853388b88d2ea6592258faa906077e661e0f4e19ab20ad1918f062d3379aef9882f38307e7a002363019ca6158a7efe0302047c435bb500663064023040fb8d4f8a4c4303264d6182da215398865dc7b25cc195495a429b8de5a3cf679519051c92ee5abe15bd9b575a2499700230310893a3d56eb2009109fa696d71be486023617ef143fd83c40b7559ac694dec0304de3ce96031df3cbaf181c0314e3c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100acd07563b4c30d37789c4c4260536c60920b5d608d78998c775e4186ea72a2953c7a8ec8e1177827cd8ad46483c844dd023100ea4322de7a94f5d1ab968d8f758e99618ff9970b1c0c50b8e90745438988887fff4b8abe714c2dc9909efa29e1f6b0140302047c435bb50067306502307770c520164348f7827c8c8cb95d0cece5037a6708708d23a22645ec8478b0cdef4c14fdf52dd6a57ab4862348e8eee8023100ce4bcda8f2f30957a26f862ce3e568a2ab94cfdd7c57119ebed1a18820ae328920096b235858e9e11cce57d2a16c978f0302047c435bb500683066023100a41be21353abcb5b50498921d525000189598121e0968bb69b5e448c3b043dbf94ff571fd4e9dab4c26323c8dc5eb784023100ae5fe4e42d96309a96cf8565ee8f2bc0faf82f6b1a53889f459315959fcf8d88bc5a9930b6d1db9e822f75859fd77c380302047c435bb500673065023030d37aa547f14f156e7a294e6641c082f90512cdd2e7a86191d671cf0a973bb88fd1e0efe5fddd9dbc13ec7473b484710231009f12e1ec224a84107ed858fb594f4748a7417dcaca3bf32af6ed9336052aac0829432d7dc1aa080fb53d96644f3bc5180302047c435bb5006830660231009adc0ca90b080ccad49f3ec6faa58592299f901c5d0c6f4639a15b801ace93a1e84a706d669d7346fa242df7ec55414d023100c76c2489c6887bd27db2c495d86ca0d7e406938c97f105c00397d0935ea0fa08f215681f1713a73ae717e5ecf6a2aa370302047c435bb500673065023100ea69466a1adb6262e1c6377356bed02486b86b56c7698a728f36b5fe87410336163fd1feb764a46bd7e0c9f83bcec70702303cbc574bfc49beed4da3f53d1a6efffdf2ca6b37aaef39339e1b149afad6f6789ec523fc8a8ce40f212cd08ef74809af0302047c435bb5006830660231009eabfe68fef816c7119992cc2790f3bdf686c3271f5d1dbcffc27d7f026a2cc6ca99da73f61a2b264085403f7d39417d023100e36d0b03bc49f4ab4524f4f237e04609fa54ce78ee497081d53b9a8b47984f70155b622b4930ddcfa0210997f2402c110302047c435bb50067306502307c5a7a464e5b395e92b341ebf4f1089d5a98d79ad6ecbf5e25f1f2c9e83277c5591f314114781838c3a788b86e8a822a023100a160345777ad405722d3e09d5566fcd103ae680f28aa9c4292c17f5b3ac191f65e9d5cd6c4f7a2c2a4473a7b960245fa0302047c435bb50067306502307331e86c36962b54e5d3b83879c1379a3284542b7e39a05175716c6c2e5b70c7696232fedf1ceb390929865e9df7104c023100baa4ddf471661f25c8299c655084e1d202f378e60e1b32bc8509cd3976eac91aa920df455b8cf21d44553cdb5044a0eb0302047c435bb500673065023003896e086ce3808f86f194aa798263bb9f73f1ed0e8bd90875816edf730a62ed064870e3bfeb177f8331453bac676b8f023100e59a5efa825345d33cbc9bf7e9ee5a471502de8a91c50db79df98d4d3c76694e710b8267777c5fedb19b19464b03083d0302047c435bb500673065023100fbd9de24f995f66c41ac011520502d83d70d0b563ee22e3ef2e2b0ef1ffdeab72ad2ff98bc80c1346b75696a5fa9d5ad023051bdf8b77be7b5078f5e20d0f55e40a1e5ed3c15613bf054f4b4da99c81f401a2c53880b3b52417498031ff7cf3ba7690302047c435bb500673065023100d4f01a723ff2950a2fe0edc1fec8edeefd264773d93e243b28941917801ab58261be93f5d4e3cdb7e717595863a37bf602302732be7cfcd4953126e73b3b522c29f8893f1dd5a588e994b82d436e065d068be6be588e8e4533aa8134be334b58fe1c0302047c435bb500683066023100f8780fe41c801ec19a94c95d182520b40ef91499580ee8237560f3c1f2e4dbc84186144f361eeb9e8318ac8076704a6502310091f3d7bf92085b447ac77500ed6479714a34c0569ed180958a0ef6032ee8ea5cad660bcfc626aeebbc9fab7f856fc6800302047c435bb5006730650231008187521849089d0584d8be0b33715c6fbfc429087746d0a8b40e37a07c59be96c97ca84184bc59d0ed1509e40f7ef28102300a3d52032a1271bd96bbb4ca9784ebe72d651947b3f9858b7db11a6a8ce0817e2087dbe2ef0d61143bdae114d987196a0302047c435bb500673065023100a45f45e04143160ecee93921363f3db7ca9cc9a4357456ddb6252c85b81c634272308ffc64e2c1cb102f0f91e0f7af9b02301a1e81864f23d21245d7269251a0a5ac81124594967fdb80d354fd83002136b8774b1063e773b76844083c967f4b5ad60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f34a539e31a800c1c52abeba3aec2f650084c047c934b252e82d663139a89f15e15d416becce5fc4004e35d4526fcec002302817fc8e2b18c34b250feb2ab3ab986460a6dec8c2d8be53d499509f6a490fb3a51bd6e0fa4eb73f9d725ab788eb13ff0302047c435bb500673065023064a844a7136e526e217d7a287264564f00092fd292640fcd019099557185004fd15cd165c322cca1736839d8017814c9023100ecfd27d0d19990ff7c588a4fba77af5473aee940174e115ad0419c3d5be71bf9584cf0a3ced706cb360994dcb955680a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303daccadd048c1148bbdb633782cbf3b3702c812f7a299b9ff91ea459bacd466651d2a067084b8a57e3736f15685b7ab602310095956d1c4a3b7a0f1ce4620d339a94fed75796c8fd95a7807318f86d725a5a8b4d5880ca1d8b72e6bde9bc9e96516b410302047c435bb50066306402300a9394bfaef86909ccf961b3883faed3145089194b39e12f40797ddae19caeed63e068706c417decfa7857ec09e373c602301354f99e2760d8e7af648ff5c0ccf1a0bb3b95e3364c7f3654cb2832dab3128dbfa96e51dc06b142ad5f19972dfa2cc10302047c435bb500673065023100f57bc2872f85719b9cfd4001e2504f47872698a22249de35a076baf9e0f76a280254631ca303339902abfe56105dcf4e023011ece35115c3aedf996d7c6682e7c881cb0faa93d8a108c745f61013cb14e1c701ce6af8fdc3b71b97b5e5c7cce4c9570302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb500663064023001a87ff03042737708a6db0566e6c24616b9b054878ac76b6b3e2eb0c7f54d158646006b3a9deb450b3654cf91849fd602300aa9d371ccc3c9344aab32db138e2d753a7e9c463614a971e6ebd364f2efe34ee93a505d489ff987172d0d78ad8b0c8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023020dca7d86a57be0b359ea63d9ec8c4d03b54db95c9dfc7d5cab231992c977f51b83ae91130e210d97ce8c4211359659a023100af55c72bd67b2e35723ba2e3448bf422a73be385452cdacff30c56ab8b592ccd9b4866900d8c2e266f6a7fb89317be6d0302047c435bb500683066023100944b10064600fe04ff33bf52942cee883dbad0bb685d18ff21229fa1be782be3d79f8f1ba15a2908e6e13a5ec60c1b4d023100a4fa123084cf6e5ef78580191c34fe67ca0011adc5659ce164e61ec926074f26b49055fe7733ebd6bcdbe39d894b5e420302047c435bb500663064023043858f4e9ea05e3101b49354047a12d18b313447ebafe7a37552b22972336a784e461fa04283afe522cb706091934e3802307dea2e66a0b1f3ecc9112eb36448f213a827c559aa54834d732077c55e0dd0c1ec50a683acae2b22e0d71fcbb17467fe0302047c435bb500673065023100940d2fa115ff6ff77854b25de22ec757fa057f5d4eec81beaebc07efb4497cafc876dad58b370e10bdddc6c8cac0ea93023013ce6a42560e28a27becda051d142aca91ff1cc7a6e831ceb4dd450f022c4ba6dcacbf1cceb6acc5ef5d13dc8d439e570302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006730650231008ca49fe936a4b4fa92013b203e71436389a00469ffa141ccaaaffddbbb684a30054a84cbadc2050a780d9648b8d45530023004f43b0b1120fa4f9b8268aa5e117d5beb2e317e451aec417db3667951cdf633473ae0d07b9a7afa7d91b25906bb4c050302047c435bb5006630640230039b9d36f5030d402d1d3af29de55df5e2d0fb2cf55320e26dec6b93cff1d9a8478cc4e15c8479bd7dd26143c089b138023001964b36c4944cc60dece2983b4dbe6dd40c471e8404086fe05336baae907ee5fd48417eba53bff17541dad3b9348e500302047c435bb50066306402306a990d55e701f9961dd91294f96b11e1057e0390803b54791fe479dde96b18465e5c809d914f2f9091cc743b71d3f513023036c2e3d5e4fde9e4f0e750529081a9130d0a673b23e9f98cb971bcded21fc025a201cf806210ebb84cbd7c9418d90e500302047c435bb500683066023100ed1f5fc51381703a8cab0d499ec05c0478b5aa271c4fedf303b8cc30db31821405f312f9a86d036e926e0102f741924d023100fd7945a39ff8ef98a21021fc8ce1e77c2e628f54d83f479efb74aedac80fec09c4c6957dd5b801e6b4cefc456f38bcee0302047c435bb500683066023100a4c6b8ec618ac925a4430abc28845e8eee3150a989329582809a3ab4b2bc9a6e453116e3389a6526d3e8eef69e697a97023100e9484ff206983aad7150fb3756177cc7b01810857bbb4c56aec212dcd830db232517484f21aacc52df02860b6c704ea90302047c435bb500683066023100a1684a43b90a6238e9c4325a041cc581bcc6d77b605392ac90ab971661c0c11a4aedf3813aaf681868a96ca8cf3eb8cb0231009d32cebf1002bde57f61c72bc8f1629e83b322b2b981f9208d22a0028de799d90b394fb28c0fa4adcad9cf85345723510302047c435bb50066306402303fe54917cad55584c7744e52acf9d9b719f73790799658defbeee5f17b8597c7bdd869a6bca47669543a16ccaff50b560230013f7c5afc5e4a0ac35b769e4c1e9bb91efec3f589b64a2413f0f28779f0fde106ba43259eb415518f3959aed56ee7970302047c435bb50066306402303765b12d23461b46b97eed6d5937e74c76a71a567d29e1397e1dad4dfcd192afcd89010cd2da9e6d54edde212667ea4f0230297110cb5651dfa726271b077ac73de4a7b095718fbe4053b33bd968a9f8b08be4c53f48b1f031cad89dd36752d411950302047c435bb50066306402303f00cf03be42850581070c847e07d5391f35343a50f69c7e8a8790439c0ce8b63a49fbf89d965961aaaf2f391326d14c023067f62db5a7af0706bc4e2b6aa6c617f83971605dfb86a353ba43facf162d6a09e7a7c649efdb496eca1da8a385e855720302047c435bb50067306502304778b39d6306a5a174a452c6af7bfa159d198dbee5a2ed319ddd8c4434584aaa9996aaef3a8985a39b5a84c73d228b5b023100d5824f6e06a88e1aab3c07b5dfba4d842adcaf5424d0c84f87fc2cf1b5fc5b7aa9744f063689fb4a1aae93e6e61c23b90302047c435bb50067306502301eda2f28aadb257f2315fa76e66cbf5ae3697a4ea635a1a098c35065868a3a076064981851e410aa51f561d474c36cd102310099c8d4aae007d6ec9547e2030edff692fdd6c51cc68decf4005cecd2c84bb45314980943c3871f3bef31d742f59dbfbf0302047c435bb500673065023100d94c3e9bdfabf7778f3a52e6ad3914ccea125e256765bc270aa68072f30989087c17dd963e23ea51c4c2a25deda3f8c00230406595cea457794c3e55142f47b7c51d049bb9cba1168daeee182aa9baf265d1491ea6d95d634baecc3b8f255a5f63190302047c435bb50067306502303f57f41ff98fb3c02a3c86b0f8bc7cb28c91e2ea6eaf6706c240e868c2520ba832847876b1c4d27eedda80b38824569a0231009266845cacda6d834e0f4dbb0b76bc7ef5879db8ec13d5b2204cf62ab8dc2b8bf59eaf9206b0ca83eec9d4b1f099cefc0302047c435bb500683066023100b069991bec796c82ffb2ca35102991729ce1546e8da5a96e4aaa1d3a5db20da9252d396f5370c2c37e7ac31863218375023100fb4c5857401003ebc5bf56a5918074c880ebd604c3e930558291b251d1639bf8e70c0899a4e213a6095df50ecd2a28dc0302047c435bb5006630640230715ecb2c2994cbdb37ab6a1cb6cb521e3f2f0f129e2e217ec6a079cca46af888915ac317cf10466bd507637e8a9c783402307134567b3afa1ec1c0e979e0efe6c589967e0d977ebbe4a4309ec36846252132caede08c1b9d4358ff5fca4e2d5b2d8d0302047c435bb500683066023100ad94d0cfb6c5a01e2159b64438171cbaaaf21c721d4082c19fee89126357e9164c7283b13d835855cb4cab3cca2e7f7a023100a570da702ada511f8c84c5722f1ef92f9461262440f96179d29fb68452562d2a6341d631434ee987b06dbd37a257e0f30302047c435bb5006730650230101a51de516e39c2cd4ebf39f9fddf7b55acd20990c5d755807d3b8849927ed895171caf465af0f088e4d63aa7fcdf820231008a7a719a0df0c70142c0f4a63111ca362020782b085d3406fbe0be7e07f1737a13aa075b455280c1bcac71740707143d0302047c435bb500673065023100e1292a39243e7d5f4db34fb1f02204a37490afb8195532430bc54ba4bb364b634ff4e9d3001e3bee1f8be32f20017788023019582f71dc3a53adc8b6191a1f9979edc42c8a1d0cd14a1e521f4a464d1da66dfea9eb0c8b4b3a28858181036bbdc0790302047c435bb5006530630230642f67cc66932937f9c3618f929c28f64a56adc1e6279541a9e755204b3200136f5bac06f55beb70975d79e46652ee26022f1e3387fc1a39c776752c2e8fbd8e080e79f198b8d3d046af18a32fcaeff5bf70e000434755d5fa9b19d58afec14f8b0302047c435bb5006730650230238e5a646d3f5621cb4e94bf48bb17fa08332a10545d4dec1f9ee6e1be770876b02efb78daf68cba85bb76a8b5f9112b023100b73b4cf318e608b6a4a670c24526380ac729adddc2198505ad13086350015cc2a051bf6cd3a9cc185cc6f7b2493f2c270302047c435bb50066306402304ad7cba77d4a7def3461cb4ee9cd5039ad08980743b2ba64e5955dc5f42dcb7126066df51cb6a2832498917d104087a3023034b60a1b0f1dc1e5594a35a17baaaf3e1c4781dcc7b2a4a6038cbdbb837f11803411678f49124c2ca7350d75f7853f520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023017b7a86b056a7228e01d8f6b37667342fc554935ef3d6f2f4d1f41aef8db9fd9b8ac3f5afcbf94f413613cced7d5a8a702302d6a2d3c05974fe04251eceb31d4ded419beac22147ea1396d2d6f3f57564dba129f282b30d23697bba0b53be65bb4230302047c435bb500683066023100b05b72d665b290f126a1fadfdca5f8f3c74ef33840439c8d170f1c39a0091f8f47311b5529c638c0970523ec1fb27e37023100d7f8effe2eb20791375f22346e7628b809659b683297be9af4f4b3100465de8271596dc7fdcfaf04a4dd5712078a68c80302047c435bb50067306502307e6b9c27f67fd6ec22ed0161a96e31fc0bb4d633e1e5a057e0032dd41bde4399e97f52e0fb3ba46c719fa7e29aab8cc2023100cbbe6485aad40d8123d388a013098fb57bd5577289068c17429f7b3f6804f2689872e1c01a5b5da8da70ee63bb8e66e60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023065fe73284858ffac06fdacae9c70fd3e9469c51ad9ca7df996111025181dde8b89977b4a7629d3e1af8f8a430cb8e53e023008f64a4ff22e81e17d26abf7015fe7ee82756ee114b03b60f69d4eddd76a38dd52ea2fcc44edf8cb76c730d41fb0a4f30302047c435bb500663064023030fc6f335aa127268b7d62e73d53570be6afd199f1c78276e1a4c4af9ea62a059ebd4130c3094f994d28388f2e8399b1023054b3ca64a1ddaab5c5bde8977fb4ffcef0aa9d854dbac837759ca3e735534625de157dbda2a273ab3701310f371bad8d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bad7d8bb0f72b7789bd63b56beb3d844587dac1af9a4985a6522b327f5143a4d86cda6a207c76102629789926f8cf06502303e3eeba2d42b23d84ae39f0c7e7545ef85565cfab7f2d437c927a7694bb7a799cdc29c8b59993392fb7de62828b86e5e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b875be3acdf962687dce0af626ef6fb9b01990fa5383fc0bc5eaf9aa38e7b9c2d64a82ff199aa182cf459be90fce22610231008d4fb312219b23ac41ac9851cdb6ba3e927c43dc6a3a763f077567ab9a3494ff53d987bbc49861646ce0cc66631241290302047c435bb500673065023100a78ea1dba76982e56d2d5df56e5204d41ea4c0ce2c53a3e3bcefa9e23d5c5248b1fda81a835e5ca6a266064b137e2a6e0230410792c0c561f5def414c8a9ea43d646593be396b284a0b26d471da18f6c5683158abe5c352755e8f3fbb19a355339110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304a451eed6f641d7f970718bb76f78518a751cfe49a4e4d766d3a2c5181fd61367e7dbcb0e453cce007772e336914d91202306b0321aac8d88b1ec6df1bcd9ae5f2911aa958428632f1c6d54b50de29b55162755866f994ad8a7f2b5b7f69b7135c550302047c435bb5006830660231008636d2d00fe2830696fdce8c63478c405a0d58d9b96aa50b62a56bc0ba07ad78e640fb830ea5b4779e9f5bb86fc9f2a0023100a6a96c62070ab2f1f7ee3b2c3a0f8535297f78bdf4e635ddea8a9c1deec4e909666a210a6dc8ffc518623bf950a4cc7c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303de1f538db8c7b06e9fa2722b2376b1db00b19a3fe7f8073334559d5fbb90344c5ff280650994d79efec6e662577fbec02307e625da8deb9498e6d320af6a99e4d9c058521b0c2fb8dde5945715115fe4548eed21043c05c70bc59aa4814e3edf8560302047c435bb50066306402302572ec282e6533b070379cf572bf81ba5443941fb123f0e61c6cf79da1cae13fd56b252bdd88801e52c3e060c43b944202305a0435ac2afe3611c0321700267f7af1cdab140da6098c5560c3dc2c674dcb550596a097d43fb7a9f5fc992a2321e3f00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023059bab3b406acfdddf487be63df44c6480544a62431622eca2be496097340c90f39d7dc03741ca2e1a683737886640bab023100afb276bf56a673f7042717c62e4805bf370881bf339e091a344125325e0ee23d77240d41637104d1de4f30214c22a2190302047c435bb50067306502304d9d069f7a0269ffc3cea3c021c51bd1ac2aca04042aee42ef1ca070460ed2905176ac8d7d4477e8e82426b8929fc356023100e0a8611d20ffcf4d1bc5aa6d0b3a2bff240e177f4cae6cf56991cf8276a3f7e5ef0fb91228dc30248266624e970845e30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301bcc4d5dcb4f25c31493fb9748ca790db821a4eb2c5bfa94d233452e538999b86fe4ef417988ee663d3008a7bd6d722c023100ecb07ab83bdb1dfb60d51e6b7e712101637affd24014badcdbea6a70baae817affdf021b1c1adbd9532be7788eee6f6e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009f02772dff49733d9ed107e0854083ccc91ce9d93ffbb5984e6e7ba35a47e0387b0d5db9dede7361b19192f02c0e4bd802303a470622d425d762bc43ee588de8642cdcdb71d67a09841551ba7d0ee8d16a84d30be3671b3dad5f5d13cb943249dc280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230038ce3637a45149e6d685dc95a0b7afa6ec914ec8087c0a3c673aaef514b489b72bfe9da686a7920310d253c85e6263a02302e05e5ee6ba8da6ffad2ebed2b68aa454eccb4924b55c5ccf56b595412a3587b1c088414a3db0198e854b853c598fa360302047c435bb500683066023100f44926754425689427e5c3eedc07a70215fbe4efab722203fae50d80d6a9f8f1ddad28213b99d0b9d3ff79521a8d62fa023100e6d7fdcd3576c471040bb6da566add66334f5bea197fd742b841922a4515abb134583b77c42b3935411d431825a2edac0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023057deb7a61f33703891e6ac3d59f052cd0962bce47a6fe5c35bf774467b02b753c022a7e0c0572aa8d140416bd218289f023032b35bc10db929acd6fad77776fd5557b4d2e785d3cb2456e74c3c858e4268940f364de61f9f5b201af90e2e1958364c0302047c435bb50067306502302a92d836b253c806a807c52ca38197434d3b6574f24490c6c12e7b0d4948f97699c5e30c2052bb3b83941209442b59dc023100ae564c75c441fd94a6a46689ae8510a10ee7eef5b21f1b4bbd8afefe946f1b781fd9b88515e8afb45047ce806e2baaad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310097269ce18346e0102236aefdd1ede39e05062d5d4a0b88c66d996ed13bd5ddf2739b5be58f6e0b8999e62928a878cfcf0231009042fd659023dc032eca848d4e66ff1740a48d9e1028a97c89b7ccbf4e95eebc0b82f1698ce5aa10013e465b69f1a71f0302047c435bb50066306402302867a07ffff330d50a14bf86dd58fd579a8125c51c3e4bb7c3bdb966d4db7f3c1d09e5ec43d96997ec9dc73e10e9c5ea02303eb7ce02c0b83580c53f2b19036a8589d40373f72e94161ac1e2efad7711f716f949552c3bec33b7307a1083f083cab60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f014728d7ac713187e438760956d89380337fd1b0b5a98eb2814eec7750517ea8d52adb9575091ac75c6cceda419b799023100e6e6c2ca947768053ddedb16a19da31e0d5a9aa253abdf188ccc1491809f946c048789c6538ed64a1356ef7bbb5a700c0302047c435bb500673065023031ebdb7600acf79e7b4a8af5481c2bb2a95e5bc4a2c2e5695ee75442bb43232a6c937e232f22552952283ffdd2f8d2ca023100936e41b0121ba5846e890b5e0114c554433c304e0614a1fd7c4f6762ac6a4d1ac440423b5fbebd0709fd64429ae6f0c90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230052c7793a50503aa82c257ecc1568d1c82c4837df9e8ddbc648eaaeb8d221e58aaafdff566e8b8f9ff0d0bc44cfd3e64023100bb8c9410e46adcb11e0d25d0b54c4473279349e3da1acd8e942f3b4d2cc2aee15c4597e66fbcb51d391e4b95529eb1160302047c435bb50066306402302e1158623284576dedc7e5c7bf78cae8eb2644799ea2b9e56f799ae0075f9ebc5f7e45ae00d06efcde218052a656ac2502307fbb6c280dd1f6d85c70ab22a1f4331d51083783016dec44b6ebe6dcddf958e93f553f3c55cbc5fa17318336220da7b80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023008ab1321e59915bf7f001b563de62c9f9fca4974e756eb21be1e2878e7a2e6d44d401ebe7fec329a397bc82e2e1078f902305369c1e68d8f937a829fbbf9bee3087562210169d976e040d00f0cc9b94caf309569916478686bb510ed93fc860e64b90302047c435bb500663064023061729d88a09f79909e686d13f006c379f8d6e95c9bf572dd267e15832a7cca6d4a405aceaffafca8f0373eeea0e3eff602303dd0af4b84bdfef3807daf4ccf8d56e91698075b340b7bbc8b7f89ac5b1581166eeae960a37a60025cd34a1e6fa41c400302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301299bbe9c0809d9e77e95706ca811f709b7c6bb9fa233cbc51ec20c3a0069ed52ee9ebf5632340b9c49ce2fbbf68c5ed02305a0af6d11485ccb2bb8465dc3fe5046258874cadef365535244e35f0889b82d58e7d9fcd40b97de2cad180603a0af6940302047c435bb500663064023074789baf63b67377eda26fad668904207fd3cd600dd92539c8913550ce4010ffebe016e5754f609193ea1d0b28452ffe023015bea24cc8d65169b9f747d67c5ca24953db5734a3325dafefe74ba918a67e776f5a9aaa5c68e7eb2fdee7b346e8847f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ccf4d37da3336f850868c11e0b4b6c23bc6728b323a6122005f3c97c650c1d5fd7477acf53790225ebee25dd37755bb4023100fe137e0476c202d5e24c0d206e06ce6b32c59629fad83f608625f59f161edc8ab9fdb4876ea19319ccb423005b978f740302047c435bb50066306402307bb46569de3a243e48c544ce3b1cc6dbd222b70e96f6c0dbfb08b970f1ed640fa9542430e7e4a5d5735c3dcf3763440f0230264c5487cb1a58675142c0b1f861b616d7112ed6cc8a74eb57a5da9fc2e0737c1dd6164c785430d4023134cfadc10b270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a72a37c8918de0f7ad491a68d05ede8ddaf85ab687c98e00d5d0c47c0155441aea52a604ac9e233726bcc63c8e2c5433023043c0e4a76d8dd1e51fb94b0b6f34d675ad6dea49f680468a22148f6f9d9cc2eae44ec49457f3f9b58934b45cb45b140f0302047c435bb500673065023100e7e5974699911e6cfb1dcfdc743d68ad1c2d776c422980ce0db1a9a44205b44638ee660dd8328c36418e777f76b64010023018f18748edc4ab00fefba7a0aa8d0ac9cbebc249acc3ddcd081db7393d6ed11240612337ac0d3f8488243c03f9ea75ae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100936df5ab9036a9ca654eff8e2413012fa3d27b6f4c43635c8a8760d44fd385421bff1bde3d9fa646eea23ed916cd60a202303fc33d8dcd329346bb84719af4f9c05028a3a19ce9d2332a66a3fa160d80de85ecb2ca49e36d5652937f7083b2eb30630302047c435bb500673065023100b84051c9c51722df80fa0cffd08d73221be83710f47285d1d4d3498f95ca20f3ed4754f69c365fb89e38ca80832b66a902307d281b7bf97a592fdd5b57e0a61bcfa8f5e8c9c25f396991e9ea545b34fe35afb040b84b4013678dacbb0d78d39eefaa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300167b071de86134a9cb68ddd1f789f83ff9e7079377183659871e890665c59d4f60d20eb35b25823fdc21e71a113dc90023100ff4870c0894b404efc0b61dfdbd3e088a96df0f19c75037eb6afd15e1aed786965e556384bb4adcbd2baf1c99fa37d750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307b3d551a0b378d66ba8fd42bdee4d810a20664f0930421fd6c7284113fc7e65094a1a304b8de726cda24a34e62760dca023100eca245c4c0ca42232c940dcaa89f28dc36b1b79a361da1e61c8ec7234decbe3eaca5d35e05e0fbfb8e77eeebb1feefb40302047c435bb50066306402302840b015c6510e3a31a7292f7416ef4d3f6644802fcbef2344e2413d4aeabdd4b4b6aadfcdcd5435ad011a72a25dad7e02307747c4a92304fa5a4be006dc82968f65bf26dfae866207dd3f3a9ad22c9ae9332e8b6897971c27151fcd792a06540c9f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d91de9c4e788cc5bb552e9c4f3abe941933c8b5c5674a40128adf2f51c8300ef87461aa2f9ffdc157b6f22c5c918605f023100d578b92f2283b9d9567b54657c3caa9525a3f8e9733583a0be42a8d2e2c9d715cecc56cc6047bf0e7fae852e4f4553850302047c435bb5006830660231008c60db5770ec68ccfa3565a9517072c3b30d21c28d69865a06b752edd029f3465e2b7033a20c8025f771e2882db0f152023100bc187ca0480987d4ddf2e61547e6ccdd444cbcece26a3b9fde03c69502659b16e1c18690d2f895324b88b5f852f526ab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023002f1ef17385d0cfd6aaec19faa1e7951c4855b4e78ba8de16fb0dff7c987f5d5f120638fde3a6b7e2fc765927f5d739102301248c9112e400d33df64e5d0811b33d3e9c7031bdfee9e63840d509b7904dcef3e5dc7149dd1d9b65c235c95a2aae20a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230549e5d4eaa50487a5d41dd7f8707e9ab7ef58481d4aa3ddce1044b0a628d33b3c7f945d46dab875f9d0c10883977aa4f023039ee83e1f43802f2b4234886efe9cf27f144730d37cec9b9183555874552fd469768354e8250a5ad1c6d4c3fcadc78510302047c435bb500663064023023096dfcb002866e4c31ed97ac3b15b59afe1a0e44d69db33af4c3f71a1e6db68a46694ce393d3dcff5a6e3bfae9843302301bbd44b29fc0525cd412da9b995610399c4ff4173da4e95aa98f47e3d37365b3145c66dd4c653b173c646b52da14972d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023005ae6ecea989beb108fbe6024e62065d5a79688ab4ebf0088d8c90cb4affa3465d7d89b15688b037973ca4ec709652fd023100e27b5a1a4642e8d60af6ae2aecd49398ee55001188e3a5b39ff6d514c8d91ae3cc2bddb62bd785379d06217c335db0dd0302047c435bb500663064023069c755831f4c0ac9a52bc7110d60ead45097cf693d8a5b5eacb242a2d812da63633edd3b5c6e54463383a079aaac901a023045707832056f09e722f89646b0f90454f38f2e177851382182428b8cae34ef8721f6f7811ba2ac8aadd2da03d6f0d9740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302966d85b8d47e7f67258cea91283c2552488072cef020890875337f924377aa54bfc1e781ba710953717f24e75b93933023010f5588b697a89b3e1f5ebdca58b499c47ae1a2a10611f6f282f7ff93726117b9896aeb50bc125fa81ababe3061975ad0302047c435bb500673065023055f9e6cb97b88a8550f77179cd2efc0331c52906865604d53b8731741b89c2e7e1479c3f88b98cc98b5f59be20bccc40023100bbf07b57f243e8007ea92a1a2b7b8646afb8062a17ccc5b581be882f15d223193036c7407b47bcf62c184149f8e5df6b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d81c72ad3e2a50c8a889ee90f1128d2b92532353b4c1ba481a47ef347d20156396b285261ec1b8efe82e70f7b469f58002310091efbc1425edc81ae85f397e16cd1c02932d5c328120a5e3fcb7ae0a0129d34095b0f59b72a35bb3198abde5a23a57790302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230735c3c26c90cccbad55d21047fa34d7a9e0b8b7cacbc38910408cf5227658876cced91d1491300485a5adc89bd2d85bb023100a119190bc739d7e0b30e2a40ab9d05e88b772d67363be0b375c6c0d8c6dda5e0b40151babba4177cb91317a8c911e7b10302047c435bb50066306402302f890efdd2e18cfb16e741fabd4d2e8b10af31e0bf2f44adfd966c9cb557eaefa39a36cdda193175aad33d7da6f094e9023059defbca42502719b221fa09f07b65a338b2692e0bec49d89f36a9963f918b6d846d7893ac98d69a3db34bbb727fd5020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023053f6f0e4ead49c1dab50537655e3dc7b6c586fa09543a802b0da245aaac711b66753e7aa32a8dba714478d5081d348ef023100cf051662a143ed58d57a1ae607b31f7d7bf3811af06f26871da5a6c28556b2855042b93526d91a5a99499d17dcf147d20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230202b389009e7734d0b5c47aab42b551ea20cc3d53cbbcaacda46e6c461dad56605c13f86ac52b6e778f0ed5c2f320ec70230792678cd0dcbf3a7c0efa6c8290c8a529d047b6e1104f477d5d8f3c5e61425e247e79b3741b722e4a823483c5362d3250302047c435bb50067306502305187be2e7365b0550e40a4a3f59823405853bc1eb0a4a5528bddf3303dc4b3f3245331e1958db23e313801d53d077747023100fa565876179a01eac65a25f279c3e0a71809d5adfd447e36d6dc609e18e12b3099e1ceae9abcd2d6849cb00ce5475e1b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230043228d4caed98df3f6289025f6cd2b0f02fca970e9d8bb61c6a5a02197f1343b72d99b358abd161a4cb21279542b8ac02310093150c2a6832b8a7c514aa3a7bf9a76793aea8caf2d098a7973a6e4ed556ec60ce165945dd369517cb9b8f6f7151c5f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100934efcb781f12a93d54d1393957fe7f6499cb2dedd281cd39ddaf5bae27306acb94e4543d8402582ab3edc30ef97e1a80230028dab13edf4e299ce7aad616693a631fdbe910c4de8f8263cfcf8e6bcf0a2a6c3a7e5fded256ee213fa584d9b85ba100302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d5d38d9b605f750a1051333f8e11c1c97a44ae0f26242f44e2f9efe9ea9b22a309dc14493d82693c74b85772a269174802301b59ec4e8a2d643fc1acfbddda5ad6060a0e9ec773c03fb61db50d2eaf988f7a1d57a67436ebe33135f15272be92189b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301c6c59f4598dd95d83964ed5110b2b7c2069f277e76b1caba51e2b3c94b6a6a8fb19512c7bf957e19f875c3fc0dd130b023100fb25daa7de47cd129f425cc483fa804a886e21cce2c1ae75d0958bdad854d6348f556563c05b1f8211528d38a3f1407c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008349a95e01132fd55994a1f3d6663f5c92b5e016a011b7942eb37b35b6c23c24857d74ffdc401c052fe925ad3691a7880230415a812f47a9779db4d5a1879620e769a7e66b338efde47f0cb6b9858842adc66d8679d7ee67ee235a39b9fc9b4eef310302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023059af1d8a101544b6ecdd079b7cacb8088112ef3392b12646bc40bfe21431f751578ad49ddacf30070f5052551cf72e1b02307ac0e3e6f0eb70b333fd1cf23d2c4d45f55bcdfdf4f85a73ee62dc3b1265e6770e9b4e873eb77e7949c7e5eb0d9ed3ac0302047c435bb50067306502305c20ad31e4a5ca8718dcc25a1207604ae45571deb2df832905833b2de11fc2aaf911d287b3a917acbea599f69b222548023100e512132cef88e08fe3e231f8deb581a3703334845d6de70c6c12a62820fdbd5b127b3acda953782c7aaa0ffecf42bbd10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310084802612fdf6f2beca91c5a05753dde839fb10383b23100abd88c9eab356c0489ea36f3b63061221a7b4d116cd276e32023100bba606ba709231b148d3c87bf70d26936eb5c8071e9eb04c7ea1404e84e803381ed4f5d645cb7bb93bf0eb6bd37c0f6f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100aa27727e8fcf10f87b9ec5aef5c488520138dd9327b097ed549ca812cb78089f72aaf1af15a8e705e4bcd7900e77ffd5023100c1da5590550c92c6eabf7932be070a1de18565545e74c226887a7376938e708b108410fa9933ae0bf2f39b36d726337e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023078270d0d60fcae8387a9e2d061975251e1f9a7c44d7f31f56ab1c7ae283bb9e51ab80de3c366d855a631fab9222a4d4e02305c0e2b986f69f923f311c066bf866e7546442bd92f9895c808599b5e8ec021fe76859bac02e77246d435943362d848f70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a8edde79ad805a08d44d38922bafe78efff07fb42d532ff382cdc54796b1d590f11e02659a8525f9b02cf3eaabefc4d5023022d1c617ff2756ab8b3db9bacf3fded339d265505c91f1aac2422504867d25f76c6e8696e8d275589544accac9b690660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100949f10529df5f36283f2aa38674b6508d09fdab16ea059417756566c60499092f0e2a936670f6f023e5856f4f738b59d023100aa58fefc8aba99f46ee32492e5f90487000fe202f80ccb964fd7a694b62ec11dac7e000f7820b6300b13d15bf16a337f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230379bd697ca11a80e374386f3c9022ac558a3ec9f6efc31736baef19979ccd3ed29ce6162f0b7b95897c94d1c198c20520231009ce78b411377aabeddb20ef4d87404ddbd9ac00162428c5acd5f5ef409a3d6154b28287e10b61bacc74ff4fc0aea4f6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cf761c22fe3f838fbf9e006417a8c2f435cb2cd244dbcca6911e34ed0da7df254b1eb14e2667a8d4447b858fef0e795f023031c39643cd153af3ed46772c942d9184e0f4c8be668973efc834a743f260ef67780c366eda39877650cf84cdace11f1b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230413c3f93d5a857f20a047cf954badd8c5758535a4e950c661a9e6e602eaf0af36ad43dbb683659a581a3b5fe24fb4f21023100b438cd722dfa7bced588aacf2f80aeadf9b483cc34854c41ff1d6b2e46a05bc2ade1b1bda220b0f010b2042cf755a2e20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023049a53218ce106db50ab5182b7d004cc58a6baa6c373acc206c45ee989def63b3978be61fe0f5f856b4ff4c122cc2d67e023100f3abd3171255b2c1e36215c91673236b1db736782a601c1aefeda88a2e2c273b9d7154f139bc62fe1a156575df3f87250302047c435bb50067306502304846af5211aae21a24c3af585e8abfd048c06bb1bffea734170e758535bab45d9b287588df935db44c517d1cc12049f9023100cb1aca572171725f36e918b96e821b216dc5c0f5bd155cfb95c485ff85be35ef3027d385c59d34f3e0d92cc01992da960302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009db3f7f516639d9623724649a73aef9bb175f84975ede60f29b24466a7672f414432e5824ed51c9897183ff39ea2e89902301f8f324bc990d56d5fdc24e25658c4935b2fbcf47f1d1cb346de2f19ea6f1366e07a9e4e614bc2091782af825d2533ee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008f19c0943c2621a80111c38c956ecf647e54b071549782a9210fe562b112153ae322e35045d92a475abb1b2d8861f22702303282cba8a6fb1ed96bc45b2b044e10cbe1b3ed5e42bf1db620fcac8f717a63bc7b470b63636ebdeefdd7d17f6ec5f4700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fb392b7be50a559117287c9a2ac9e225ff4a5cac575c55297a720e18d79db7f07ef0bb15f0adc864bb22d0d670420e1102300189458abdcd33da6a295122356402d0bd4e23951777272bebf78d12b05520f28fad63ab4949789b0d9521d6f698b97d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100da570e4b4aeedd03f301f62c233a1e24afd91b0af936d68751a0518506374b9705df2e1d1d53c724ab460f14629b5c930231008f7097e71a987349ac6978542b0265e09ca5344ced2a2357569d352f1c7b5bd6fd2b64597239cbef96321fd422b639920302047c435bb5006630640230409916ab4b84b89928d9745fb8dc582569c7433180baf435b6e1d30240794deeec4a13d983b1acf00d88388c2bae96e4023014ee6b7f3fa2a547f96662a68b27813fe6f59d22abff7ba602ce4431ead2f09735cff0b73e3018808f42408000687a930302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302adb020148a6350d0d119751980db5e3f9fb659c6619b54f90881c79134fd7488466f0f29752e732cf49707877190b63023100a03497ad887afded9bfb0478b166d8fe8dbee74b653d1d4048c4a86a5ffb5c947621bdca8cde57e7a746c626824ff2980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023079f0caa9fb1ddc27958cfd6dd07ef5545abac032347308d42b89a14761125ff0945f392fc3109b7b3a37088ae581759b023100e68ff1a55fd64c7cfc49b4e3aacbfbbed3414c6d8f080cc639d72e79c4f1be79a66ea10f189636427217e3b2a97da2900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f389fe70879738f2de1323ae0dfcea5315c95c0be25173deda5b60bcb687c8c5a6390b09c9078295c125c15b524d5ae402310096304840c89192f475f7850200cf49b047c9a0b7b82c8239b64a516b7d6bcf2d2eac4ad6afc3195d6abbba8cdc9fccc40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023073bfd33ff94b22caf452887e31a4428fb03841341619d62f41839ca8a1285012af6a733b5bf7fa1398bf47b8069d34d20230160db5fa90fc3c3cf63ad6b7aa4e1d26da2bac9bcd4735a850b81c07c9ae916d0264c0b811f5f03d00470aec101d36370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c1bf7e5fe02296609b63c3bd5bfd010136402b9e65328b93409dc6588efaa81a539937cefed81abf485dc4f021c0df30023100995c2017508f547ff2105add610c4c94fa3ffb77d82f333574460b0f60497821e4d20f26914412c2cc8ef70722a14d7b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306f45bba61b48b0ec93eb6e4734db82c7a5b021291bdadc15fca003e09bdfd6c6144b0bbefbee6c1e04143491dac484d6023003d5604fb5605abc1379defc974b7fa1636b9bb5746f55cf84db4f954219fcba3920a43505f74d5476b42ebcfa4167fe0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008861db9c935b4d8a841e4532e1fe5a183f047aa85a2780302e0d2329b16be6fbda72b7683ac556eb9d8e46763572761e023030e214e70f00374f422c4c469eb82d7b8f1c43d588d6dc0c05395ad26b8e0f513c6f378ba87dde30bf47e6737a7146530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300f9f2c3af182dccea774f9a773a9593e5bd8ade887c3d5a215d451d09dad2d8f1b3db4fd2965883865b074f65f7c7015023100af0470c9be116271adb7abe2371d14911daf4b9995cbe5ded2c506e9bdbd4c410e0654b27adfa602f906c8003d5c8bae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d6464dba7e7fc95fac7663955717d911ee6da4c8add6cefdaada7189ae46c9b6d66cf048eb352053720c373b9baff13602304fc6420f2365caf00535c5982b8ce034a09225923bc75013fb4551e006a8270ee4eca4ec0b264f40fe9b30a09eddf31d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023026ac2ad763b53b67f3207aeb996ff34d7c705c65ad6eb43bb924226ca415be583df03f65f3d1cd4f7d49d70ca790689f023100cb3047e82d2448ff7f6c44c475161592851cd5c326507379921e14c5bfe704543ba42fcea80d3e66273c2206863e9f0e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d52d96ab8c735599ea42e89d8dc88bdc3f13ddc9fe9b5637de2df7da55e000d6933ad0190f249239a125932202ff08f70230124f09562d28aba4fa3db056dc653a8c2676078de4a09557a927064f2159d9857e29975b5134dc9164aad051c686f7f10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a1d857e07ba7a94de1d9b4c91a4f37d6806244c619bb43936f9119128f5fd6341f627772c2a23ccaa7d2490b0c97912d0230053b49c8ce03341a7f5f1e3adbcfdde41910add73fb381c8933973b5f656bd64c429e4c2d708350fffb2d583ef7030ac0302047c435bb50066306402306275977b212ce892e5d6a3c78bac4277640632ae001b026dbfe686de3b719c92bab759ab3769237e876b56f784caa78702304b65ac058e23f095f914dab969c78da5f8eafbeab4717e2eb9c74e6d575a14c6c374a3bf254b6e73eea0c85fe8d2997b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302e317de8714e86fcebcd1f62833eb2ae967e08002da6dcd419e8b99019f13f9ecab57d25107ddf02818f52716a2d0b190230634f8efdf3d90acb0a326381f7cd546bf4cbc34c26e2e65ab2c5d569f27855bc75534ae14e47092568d725b139f326510302047c435bb500673065023100ab9890c007586310ea90fb4070ffab775aac7dd016b1566a0bc651edb417e98f0f8c1fdcdd215ceb61582fae0c76ac89023042f9e16296f8a74c9367dc3982a31f9b88858abf279deafb27183efcf8d86671f345afbdbafc23511d106f4bace9f7a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301231fa7acb847f50e0bb60333bf088fe0fcf5f021f72c22b91b28bbcd77ab7cd5caed94ba2891169dd02eaa5ca96b4eb02305401896f03db2ce031e70b285dccc75b5495addeb7609eaeb1c605f168c6491fec0da4cd03bcf436b953292bb283d1d30302047c435bb50067306502300a6de65418ddc2fc2cf2c8048eb7940eab27fbd8d9d14a8d9482a51b05bb3b0eda6ece79cec60ec3f5c24ed0aa8d9ca2023100e235db9cc7941977960f31c5182f3887e79cf1d562728b446bd8dcde0ed6d60a2c659224baaff17d7aee5197ae93e1160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300b3e5100279fe396faa20c38811a545c92f4b97ea78f06da80e74893cae4601e3bab7801540b05e9143c619ae5d23a3f023033fbc89bdcca370f4c1ebb4069a26c136bef61971783a81c4171dbef6db323f855cb252ebdb9b2f278ec932c9e3932e60302047c435bb500663064023010e9b16e5428be40839d9bad129788fd58b5600f5b440c5f6ec7e44975b2a770691d3104b693973e2488db63ecc389ae02303cc09e1c00aac6a09203d36258d820d6485f26f783c89bc88e751a94d94bcb2baf1d0211e6fea0cc805208543faadc370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100adbdac71d79752ab2cc533551d5abfcf90ebaac5eb409acb1f75114e217a806789366324ce7e1d9761d5ca9919289a19023067249594558110ccd3b795bbc167b044edae178b2fd967afb14de5e0087918b06c14bb9a7bdabc991d19ec06a96af15e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023054a126e9f0d68680557b6f110cb2731a9c97e85f39f86c327df8d84a37cadfb78371dbed844446241e661917e17c31ac023100d5d0915cd022df861359f219af952e3975e20f4f6099973f1c23f6c76834c834a54af172f9592015f4a63ad34d9c08270302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a38137ad3274df050751501d9146e42f28f77973d9d1fae79e2d95a9a6cbe1bdf98c7255fcdb9c261c11c742c735e043023100f6ded2ce0ca2898a8da38e8ae4a6d21064b1e323cbcba79e80cda14e4f3cbaf815c0e5a6589c5501310e1a6c7dc503980302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bbaed3825ec96e59fab74c1170dbc2ec3002129ce3f63e8d2f5c74f1160a8c409958a83b448f89490eb34b7b9b8d6cdf02304c902d25db4199807bc704c9e50f5aee1bba8a3448afe27c5f2af34ff6606e998615d3dd44d968f64ec28320c02826fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c827c2256fac6d623731ab985b607e6ba59752d632b4f90a825be670488165095adacc3c1ef085a4260d8208133e8bc902303deb3675176bbde6bbf2cdc1abdf4597adafdf484544d445691a29ed49441afb134ca4b12b6673b206323ce8f46d33b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023067b9ce6943ab978aa83170c931f10c786d6b028abe56fde890a9653bf7aa841f08599c3ac1cf74b0df676d7e99939b51023100cea70e65ffe0873362effee954927345f04a0089e064dc67c5ba99bb358d514f5867006e7b44cbfc0a310168d626ff3c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307a5251fa51b4f1fda5ff0383604250ac0d7e7b312ced2e72a0e9bce4a257877175909d446d017eef880221acc8fc82c602305633752d9f7f94f3d774f3c4d2cff7118d4767939839f105d75eb7375a308ccbc2c00bf2967b73120aad6a35fc7b0a8b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402305ed70f5e38cd5458ace8e53b8093935a6aa4939a7908a4466f4afca484d0631c2129746e57030cd81e432fb243979d1f02307c153a13423dd0ca069bcdc8fcfaa86bb69c7b2ba5e00dd6045bdabc06f7a870351c8a0c0377987fe60913037d33bfa40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eb217a4e31feeefab17ad9022d5b0da050ac1ebe74c28321ce1f748d4aad9a0ac4310ca217d560d1597f0daf7163a120023100a8861652b2c9d0b08d6a1c4393e9052a0ea9fe6eaa122adf2bfcd894e9def28506d665b69cfd71409704bee267b56d740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a152a1145ae3e81e255fd95b95602ca9cb6ec55d04d79afaae06a93691ef6da52517daf34aa9d6a5d6b20fae3187fcd302307f928bb46b27da313ee329dce532a1b7cf8bce9d9d78774cb9ff9a55a491e22594028069fa97c01011f143db16799f830302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ecbbca305991a37856d78614e257cd0951b3e045d13ecfb4f70164e6a3101b769fa611a7bfe2e1f36a7b1c18b9137cfa023100a800d548facf8ce553896f12d2d2f96da721a895b4354f2bb906b3c4fe0c7248773636c7ef5e7f11ee73c3b2b52fa2060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023063bd22202cf4b2de7caafa13d54f56927f2eb9f688dea5704eb53e399711b5e59a039c885a2040d276a1452fa6e311a10230582f9e8076b2852289ed6c21525800d38b1dfe033c8c55ae5ea76ef19a09b914615e9c0f93c20d9045907569b01973440302047c435bb500673065023069640cd80427a750068779e92be57e9a88e75bee6ec56e394c3235a2cfe27cfe35b4ee7a517829299e15605e899a5ea8023100fc82aafb24b551c388f47c8a5e2a785abe7ef13f61349c1a01d8555a9faf8b98d73fc2d3ea5b412357b4269f34157d110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230116eaa210a419862b1b641b45579a89f4d31d39fa7c3a4be5bf1582ea2588251eedc898efae13b7579a99741800384c0023100a739947ddbba70e9f01224e19a1ef96b9dc426e59579e9f0f890e0162f9e424c2408d92de1c68d1976bf905554be25680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bae6c41e9d879ce1b808cb1698feb956f15359796330b5619b84751410cc3bd3aaa6191e1088fb4e19da9f9ac8e063f4023063f65543cd7fd6e0f8b8c1f92014ebce3c5abc18b0a205535f84120990bddec831bea2c8e7036712f7120c135a1888c40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300791e2ad34d944b734bb93ee47dee307ae4289ced595f7406736ca07c46056843637c9cd17554432553208759d38f5e402305e5ce785ebd8929550adc2eac0442e06b71a0caffa72a5d23100fc13a60b1c30a372de7c12c37581cbf6da516f7dd2160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023013f9a5ac39bc5e303ef1243dfe13683e893f82ad0ac7049fc8b6e49b25e50f63bb148d2bbe305e0da420b4262c60b57e023057098cc8c78e8923783470529889274d45267e06baebd38dead8171b33085f2e95869d685d961e1279b559da57225c120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306c860c96f6615b286beedc81c6dc94708cb9065c1e599f5f78c4682279e7652a64ec95398408a8c61316f4186dbb456e02303f2e57e686c252128a7ca36b129dae8e91dedba7a85b4ee821e2c68774bc894cb3522d7e447ebae4ffaed7498358c1970302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305889ef0dd9650608da3d49549d0da9136ab54b19cf3d101d6982f1559d09a3239e140f8e10a4d8caca37257ea4c92c73023100b8bedce64c732f52d02782d3beb97679e1f7ab4a8866e95d5efc32ab61b3c7d6f388bff43de90a6905420bdf3f913b800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023062f8780aa7f673ad2b53b5fb6028d83b920c450115713f140fc99ca1ef0de13a6b7dd71197774fdb7067f67fc33cbb310230075c7539194fc73065dc8962353e74b775600627219bd4426968ff3afcf9ea994b9cc99bd8e84106a39a1b4e223fbaad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b182861b0a338ebf7d02ce5c49f4217549c20b6be69e6d26d932c98d5ec96baf07d72f1b38b353a75674b220ccea8385023100c107c15e3637e5caf65b55c1d0bfdd88b2da1accf1886fd83c41f83d77e014b7ff656de2f95854b3c9cc13841bf1ddab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302bfd2f3844a5f0f80448c2f1ffe1a1192f2732e139303397d8e3d19b5289a0d55c20f84a20ae16dcc99cde168ed2899d02306d47b824f40d7132fd5c62565e264ee58d997f7db773d5d8789eb455d7f18fac6cabf491438d4fdd5dcbab9fe52c399f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302d2b68452ebe125079042a11349e635531fc74302c0eaeb795ba3e50ba71d660b78a7649535dd229f7a4e6b67daf08d70230612c2101e9770002abbcceca807531a0fe696f5d5b92c3f8ef7828c0faea7ab44238ed3867eb6506d700fadf5b9c51950302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230155fe80f1cd4685147e596656e4f19ffd9a9e2d3e55fbcd08b026151f3803304047741f869be5d43fb82ed4f459af38602305c7499f4b5e4e016afdacd29819884102ca028d386e359d4ccdc632aab8c0d731a5ecff06da6f4d5b6eb1a40bdf50eca0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301294df0a4e6aebcce3a249c9e31f02bf891de1c984d73213bad9981fb355fb0cccfbb310b17561e0ac4d952888209957023100fd5ee52987474dc264cf6541839a4fcfab8c2ed39d2e0bd0eeec0d6bdce3a26577780879499ccaba2f9954ebf8dcd4ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307e766466f09740062258c99d431c594a58f13478c8efc4dba0446ceaa66e1936ded42ba6fe21a5a5b0aa519b6d5241e502303f61c607397ad35bea11192fba5fba4bbc7d2478de1225a0eb8faf3fce51da2fca09a47e37d561167fdbae14d6c4d4d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230063b13177704588858977a2a1f98ee0e222268383f0cd332a6d544d741d5dd03d9069db11c73cc304813537166719bc6023100838ead5558f3995f57e02766881e85e7b4b93a7fddd090517db70a3d714cb3a16146e17139c7d92c18bf76ae45bb48d00302047c435bb500683066023100f1da5f7a92275d1e14c25afa7689799ff06a45cb891f8bf25e51f9ff2736e9fc6e18e5dec01ac270fb6e55ca7835f685023100e6274fdbf75d237cb80bc368fdc34f4a850315f05cb96b649fd2ff7ce6f2d9fa5c785549581ef9079d1b556fae8ef5730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230576203e487f061cb7fee583e6b8619029cb9a88810e2181b76bab39af23b2e99398f23e03ab534e97aad320b0a39f1a2023075b7663f49e7096ea087164224a458c9f4fe3cf94c73df36477458fe689689517bf1eb512c25fd2c2efbf7e92d0bbb7f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b132267ec7a3e7c46b9573ad7f73a4a6c47c5b3e057b0739132f8c8183ce0a6b2aa9362358a332fd0852adedbd6a8503023100d0fe5ebdb0c1969bea3bfbfd9b832396bdd19a9bd476aa7042ea4b94673efba54873072ffdf07209c360f9cdcbd0939e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100fa832b0cdd943324260299e5b230eeb64e6df9ba26825ac426a43fb92bc217a0b4b835df8141779750f68b06ca453509023100a51b3fd655e27b8b6077d10656b61aa081b11cd70f3319db09c59b1ff36248a6658a1dc3a9f7b1db55b5b03277135aec0302047c435bb500683066023100da20b5a694ffce63530fc87c80ed9b197e6af5d95b7055efe417a87fdeda505c44bf41dee6b74fb0f05d6ae826292b41023100bc2868896e6ea5ad39bdd67220205600300e8c11aef9654d7e99038375c63ad19fca3c8c5815d7a015807233ea0345e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a41d025c9312cfe50f72e5635e17114fba536eebc0b5f6cc810f4cb1602312f37d3c8f33c5031fca9cbfc762179b6ff1023100e5b2d034c99a8a85d534496265844469ec6731d1f095ff44660d555e9f0ed6e1aefcdcbf68a11e15258e4cff293a195d0302047c435bb500673065023100bdbdf17449470df22301f6330c7f6fa3c72402b9fbdc94026d40436fbd8a165a60f3fc6547f5d96b307efa89d15e56bb02301f55dd611ebef8d5e5f91cf674c949a26781e39426c85db72638c7ef5618a5fbf4684272ba37315b505ccc8ca6b894ef0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023020e85fe696380a7fd601173180d86cb521eebe1ba19e2b28f59d10c937fd87e71758a7553b670a035c1fb536fe0ecc3c02300d157aabe004f1daf6b954121ee9a2dbebd02ca29d01432357b261ed24b3202830ee0008ee95b99165e3d7015709e43e0302047c435bb500683066023100dced336955b36e576c94882c91a73295dec2505e2ff2b5b9f045b9e58bab7306514d69e567ab3bde7c145260ddef348e023100f07193350b58c70d4dd078a5ac04dfc9b090fb448b9ba284f0eff4be80c8ce9e4477dfded154453772956a03073b352b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310096569b66dd6959808937fe05d0f9690efc61127521191c48d323017cfb689bce4976e09adf4284469b7284f07f333735023100c6ca46b8eb131ecf749b545d40b67d468dd5c6b54db0a9db29620cdcb88647683e4cb50cd259da959f4fe3e9a2051e850302047c435bb500683066023100a6fc2e1b8bd99405448ad5f4753def20783efa82ecd4ac66fd491989466391b2a1441872bee9f802d3f2007023aa2a7e023100b24831f710a4464a4405c243fcc7e1008182c985b60cc3a76ff5c56d81ec1678ecf7ace621c4c995ebaae0544689c6c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023074385c4e89d1f9f7c421e3f9c20f7299c03f60c505862bc06897d675d06396d919fbcbae1a1dc591b09b1013266c612d023100d4eb850a69a2c0f92faacbbf269b0b1c9acb9df6e4aa57f63aceeeabef68cd40b780291ad79bfebe2bfe41914598c74f0302047c435bb500683066023100a73092145de525a545cc076e37c2dca5420d9c28bf358b1c40b0b8ab5f69a24fb16f7c7f38d2378c1bd439ba76f405300231008500591f46b61f63f5fd50fb617859e2c03eccfbdfdf8fe4e5a80b2a849fd736317d9854f00d351dddae00806e7c0e6e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303c8115da88c73131c64ae62d7dbb48654358c01d8165c522757f495234490c6cbca72800a1fc026807da4df015fa56bf02310085ee54c46c71cbea89b67e38a552ef0c0c55e83b12e0bc996e739003d5adcd229b0553ad86a4d79b224ecd146bcc87100302047c435bb5006730650230333bd4a0ea1dae358205f75d42825de0f6ffd2283fe6f6dbe2db2c963978c8eddabcd66d695ee47caebdab3b3147b1e902310087e271ff26ba2d6d180ffbef7b720474a1a449512bc1814cf039d5a7fb4665ef8c5cbd4784fbe9e1f6028af8c3803a3b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303321dfb321ed3d43afefb4e8b6cdb31082e3ab9ba6f4eae70cc77417d1ff22c557165379c6a0101b831b2f400988c84902307419d736fe6e755e7f4c839cf72d31072150a6702308a30fd18d5a9c0d5465a65d2dd077dcd2f5858051626c526e80ed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023017ee7dda40b2a8a426c192345a37c93c90781cb2142ee775c2198346de8713025ac6e5174b384a7279783a58fa29d22d02304127f2c7e14bdcc3f85b0e995d156d8d7565376dbd5c5a418957a619ea0eda3b48a2c9e8c5dcac211645a9a6523b99580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023025a0c239bdeb3b4aa795668f054e06f4ef3ec3b1e99fbcefbb30cb7f19a38c42d9c4bb0aa04a1c5ff83fedc384dbc93d02300267477c45bd65cbcd9522d940c472c855a6e1b571495ff7e11eed8c19f55a44f6395fcdb32821062ef905060eb3d9920302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310093132eed2f08e14c5c5165af99701e900143049c3df8ea12757d905b6b6700f3edfdcddd9e83656622140823372d26f902300209ce012b3974fc71955b252de2b4c849e230d30bd15284d1edddc89dee6ea068e6d814b1abe8e06d7e97183f4e98b70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305c90a4f9b1477fb55e585dc9d72173a054b293cdbbf740cb5375bc46808b0e27882ed711b245f6960f51a8ce477973ed0231008cbfef5790856346f30e5745bd6d593394d7a74ed172e42ed01c416ad7b445f90ed0a43414be6a26134781746d95307a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dc4b998ed5e8f6919c189905a911a99196690ec4a1bb9746d5a9628ff9d0ba0c4ff8cd2e3cc2b2e6ea26e5e3e56f8c5a023100a348fab40d3a2eca0f4033ddbb8c8090fe8027013b6f2ef36d3c1c24b074c150dd8a697555ebd9045cc3a3bb32f4166f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023000dda8e3d23efc4b9724676b0de3c98e356f2f13e0b460e4a898dbd08a4477e624570c900ff59ba4fc347d196da2c4e4023100ca642fbe5fa4f7c84e70cf5d68bf9636340c301bb76a2de7538d9b455c4d5f7360244b07cb96a4b8afcaa3fe674819700302047c435bb50067306502305c976d28b9417653cfc702e5e568b8bda84f5f8fdc7951500f716cd82a342dedc198bbaecfd6cf14e9546684c5cc0d7d023100a95e68f3656e83a293203f1abe664b4b5c18f6cd7c04af4e3ae58ae33c57b75d2d0e928315eb2a770ddc53b1e07757580302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300b13923a9f60f86b2a719abec5f4f06dffca95f9f272543a315570ced1abe404fc99a3ffa118ea07b7aeb83b5555578e023100adcf1710067096c603f8d1cada4c3f86471cce7f29d4068ec956135550ed2a372daf3dc03a5629499ad8c21bc839c8c90302047c435bb500683066023100a2ca13a9c5d10109cae296acb9c5e114b7a1be3f69cd9918375d9e9b1368265f9e13f9d1e40fad6aa963edc7dd65c184023100dbb002265300682e78c5d235a01eccec0455be6928222e4bdd0850b92044a73ffa114c496bf3ade356e09052478658910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100df50e141acf7e10a650c228fe35ec105226a9dae50a2381a3b0791fc96b60be80469afb3f9a7b2cc82ac689237454d2b02310089c23d26dad3c7e6dd12b03e515cf1a80b88ba6515350d6bbd14e87cb7f7bf986a6aeef62c6cf942ae9c19fc00c0d8fe0302047c435bb50068306602310088363d4c182f1ed9c0bd3e2d16255e608ce3fcfde8fa6234985ddb6fb611c1319becd4ede194d56838cbcf36fbc316ef023100b35c474e745816b27b52f6de476544fd6296bddc0df03ccef177035f79f6fd0abc058e7fe36f8bbbcd299e90e2ab167a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cb3c6d4d01f06792429443351196b5004c4f0ddc0a0d47fb0422285df003b5caa032ddac68567b49b95b9dbaf9c0981e023100d8d02ebed6cd62caad5d0f51577c52797ad6ec9daa0f28bc7d531fdf6792c6aa72296aedbf8763175c43aaf5256556140302047c435bb500683066023100eeea8a18917e66177a66692f4d497cf9238d5b57481d15911d8cad6f0bd90e583df546b55c8a244a3511d6c2675a678f0231009a753c810875c6c5423beca1d67719db303b57af735c59da76eac595f9b08ae33080d9f8c5d7303497bbcb10155b7cf70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b184fbe8f96c4de7be5654267d1c408e18e20098efa9fac16b825f08b48e97eb7fb5c34087425ac2c2cd4271f4363f870230177bf8e49880a2b4e8e839ad7ee4f77deffe574c336d85d1cbf77db7321445070f1d66b5ac280f8178183090177040aa0302047c435bb500673065023100ec119eaa5b140f6e8b6b5c72b444e2cdb197286faa9b68971cd072be73ec6354822b625303d598c6f61675be9c4d59bd023011c787096623aa507e4dd3adc79fe3d920b61055ba1f7e0a6af40122fdace1a83dbbb46710dcb9ee9086b5359b256f5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023004370a8a93217f943a9b028f0517687777c9661c68261eac8ca30f0b5ff38f8faa47b04b74532781084fea6b76f26f970230666b1cb33a5cb850d82861cb954beeb8a096c1f4ebdb34d6fba5ca12346f7965d7df63cdd4cf62218a79ea636fa2aff90302047c435bb50067306502305ebfc2193b549bff36609d6771d54fe3567eff92fbac4f538f20fb196b2cd8b93efd48450e8aaed2d619425ca384070c023100fa18b1e656611106faa5d9f96e5f0523fa8b37107810aaf88f50e1ec2e1561ebc8de39b81985b53cb6c76ed9b9eea19e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008c01c6e7a34de2f123a65e5cf9173e3e37293085d78219c72a7afb537c397a869e82e6ecf6892b9a98d5914fe1b0d2d6023027b632beb62fdb8c62c26dea07d63cd03719a2067a8bfef85fb095afd1737182fbad96aacc25225b8124f77795cf92350302047c435bb50066306402302f60b5b6e72097d5fa9648b4f03349ff199328b28e11deeca6e735392ac1b34b8e371c98c2e70df64626e0dda4f96f4f02305fccd235466ead1cb8ceea6dd3ca9a820873c2072dbfe962af6879faf14141fafe5ef99edf2a2c48caeb339404d194910302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023010fc7e3c7f8512da15b39de806534006d45856cb54913a51c176e61cb5d60e8338926857057e44b158ce0274db03cd550230148797e6be8d8b18cfe197df28ed693bff7f8cf9afe51931ae78cf1d2ba7253c7bf317592e31fb1aff824a8891c8bb910302047c435bb5006630640230176b9d6a0198d02f9920f9db6bf677739faad28d9836cf6ade47283a062c787e359f7be6205aa42a72e17bd369c342b2023059d61538cc9ea2043b8e64ee21357ac32ecf6ca8eaeb8146763732a603ecefe940642be812843d0141abf7ee062770a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230427d272d3d2ef3f7d21afc194be74b5ad3729a5ae0249803c458a4720502d429ed9ae177d1f6c6cceafb366bbb756978023018a1a779ae871a9c760147d2a3199c26a31c54a5c1968759d5439bf36280ed0e814472d42843afe27858d59dbe34b0f30302047c435bb500673065023100cd16558086639b6e2be7c58d6c8aa45bd9d7be72adb27ca21909403079e36e8e8a26e68a98abde60032859cce731c31d023046cf9701d1c6e122c5197d320f9d12b29057071986df36c071a1af63f7ef621124b3ecd8cc1546c7aa3d09682c638c7d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023003a9a246cf169bdc686f9cbc45045cb3c1fcc4621bccae11976f3cdf49e9802bff8614022b780071eafdedf0f87683f3023100a6b5d7575557c027270e31d0a684faf12953a7c7649dddd62392696bc951f96a16f8eb6b849cfcf6e2cf0c65d88ec3000302047c435bb500663064023056ef8abf195f14ec8f48c62f399114dabcab576f5e7c743e630a3076542513a85a0edc2d3f8895064212a8a69f893fa102307ca5efde9ecd57972d9c786025fd989a836f339456f6b4434435c59e437c49f4e6f6134a4b0ebc1ed50b0a199787b5ae0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305f98508a6955ab18d27febfe1d4b788f9163b224ce42c371136276c707066c7fe02507368a46ac3e0cb19c2f19bf0bdd023100f43cc6d5cc4656fe34b3d05710cb694968f26321c382d48cf8c1eadb3371a031cf3f7d1411f5f4ce23cec6bdb1fede210302047c435bb500673065023046df1fd05a9e8c76151bdf653313f08df875442b152f6f3ea1bb2ab1256331101c702be97195d064e354b0ea0791d2e4023100cb6e163a5458cbebc48522a87cc0bf5217929ffe786df4da3b7411605e42c93e260dbfaef0ae0567be2ed81c896d69190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304b9040d257358b5dddb60c4cbd29de370a95d5b4f7b702271dc597f7030de448dd2bde6b7a0a25d45a4630144ccde45202306a2d3fb4ae100f798ac182cea21620c2736d590ce431700db9dd6563152303498090b7586a86e186097db3053e5649430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300937aac23dbc6a970b9a4c1cec7295bbe8953b0cbffeaeb5aa504b93e6781b9f516a0f793e583f88edce4b939fc74891023100d114bac7e3cd41982d752a9d655c8702ea8af6eb870a57f9a3d9db632da45f8c03ea7f33eb0aa6c2ba9ac9fc40c9f57b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cab22392b46aa45922bafa8390408b561842e0d30c176df59b7d3a8da68cc815476e2270d45c5683d732c1a6dcf617dc02307ee49483e4c59c9edc7b393bba1295b2df87698c890b386648903b2987805c755663b96b2383edf633e671eb21b3b1de0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230378814c79e354b4b544a14fbb64afbcc08ebb8b8bcb16c0d56a2feedfbebe7a287fba87c32d27fa060f52a01ece6c530023007c8ffaf4125cac88b3d20b53d968f85faa9a7b21c75749a9291eaacb4734b43dd85bcc6b516a307a0e06924f3a661b20302047c435bb500663064023017528d3753e3fa54222c16ee7dfea912892c3b6064446199dc0375e202b35e0e371d5c0fc47522392ce76134ca108afa023052fc0c73d0de866795d85c8b5d6e9d47ae1751109543002c9d5154174fe5a337f1a408c33e69492d020dc097cc475d9e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023017b30c4b32e0f1a1f12420f1ae08243eba89d51d7ffde4984541d27c747b7a184709dd77f9a7f748a48151d4e8d4608e023100826a02506fddaa1d91ce3bffbf5f070fd6d7f95bd92b75c866d62f55dfcc8b0ab33abacebbaa6ab0f322033ff64ebadd0302047c435bb5006730650231008d53345abe74ade6f6b7921e6ef451679098d30c68ccd51e193de74ac98fda3442194c34ba193854f2e0758d78d7ff6b023013ff3b614164f9e4657311e545b51d01b99f89fc7ecfee1025b2098833a92a060ae5b883a32198c7b03a307e23123cf30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306b3d1a9ee125cbecb2770ed7b81a9dd5c72d092d6c3003e6e9856def25be3834d039f64e92b7882a4d8ef92d1901b843023051553fdd6f49a52192285d54e938f0e7a39b06ac9dd79ad99d2815efeca3383f07399be7939ceb80e56c2108b1c870c70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302ead9659303bf5f33d61f09d8d3dbf592eb40ead097ddae67e7b4e1fa25471e6d92e305698fc09f90f6e1d3e9c980b17023100911683ea7b74a866fbafcf8edfbd8e188c69fc283d2fdc462eca82819f11a8f00798ad0dbe0f138f33ee0cb091423b9c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301983233206bb38bfbf69efd7aa96fed2469298166e4de99913139e8b86bd986071b6806bdba8ec7e8e942a94114f0224023100836506b98d1b4d31620335f991ee67ca4325dc00dad783561d736ca5bd1fe6b3c9f016293a9525d396d55a7257f56aee0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230438bc17d3c3f923799f34c76cdac25da145d67fc9be819fa16ad85fde76edf38b722fcf491a9a8ba438df303933e861a023071085eb8e7516b99726279bee2792c94c1810a61bc5e6fedbdf4ffd2b09215c5a6e20d649fb24be209c72cb1bd19cf190302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c40d69656705a9f6854e1c4908ef2220891ca66dc8294b0600355f94499dcbd7779fe39e1f48d8b3097a2fa835c99c000231009547156eeec0db492728f856f4cc2a5fae2272323e61b7dc43656c3ce08b255871ba5af608c2ba4fdaf754ed2f97b43c0302047c435bb50067306502301f47e3dda9f660a6f8dbff3994983c53abd8c69c7e865377e0dc604e6710e77b836173cdaffd442fafda7ae8b2ace79b023100a2fc21c95ab76666685b7baaf4b59ae0e83f64b886cc34dd1daac523877c03eeb79cd56599e71288715a2d4a728f6c6a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f1981b810b237a7fa5871fb635d0d04962f7d78869f7b77f5b45637d318b60b85c24aec057ed3d549a30480cb3c50dd00230356c89db07bbc9713fb27834f098c2c86aa274940e1b4a456b6d3d39d0318f8f6b1e426b74cd570527dd399c32ba3e620302047c435bb5006630640230270949a77ac6f482303d54ffd0f692a02d9b20371310387d737b08e333168a19cff41d27f0d300927c66b6586bcb4ffd023045c6ec6dc1759f8f42c687f21c8426f87364347779e0b66ac157e80449312be7afa2849c08fe38cc5edd76d56bf5db3a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c8fe6b2edd63b5a3fe20c6dda47d76948494c271f2e806cfda1f5df751eb2c7ae8e16bdfcdd7bae9e2c64d2335c0e00302307753aa85a952c2a47aa4c24e1662b2c731bd17450fdba88e08593d061abe502ae5b5c8b7457be02ef0aa16b58203eee80302047c435bb500663064023070c095da8193091194d4fb5876c95b9074da7da5134708f49fdefcf595a46c6f9074f3f719fb1f53464e251f64a2fd5102300baf437a3481937af773e61dbe35753f67af72671ea50e2f0977fdf945574a4f421d6295d711b57f43d8f7e56f8692a10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f6497ec5f9b089934821adace33101aa1e7569db373b4eeabf5def0d533d91386c46eae3666a9cc86322b38fb669222b023100b25e9d10ba722daccef18bcd599c8f68fac188c1658b9518d3ce3c34ea8713646d3f5804e7a945f708983834f0b2b0d80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023053f03cc63cf4efbbf66f682bf30de5e0f36a68c5d44715710fdbbfa2816c84937e944c96971f842c34c755fe6880fac702302b257e047dea4bc8d406adad39bcd89b9a99433c000575af47473a534878564f5a85d73e87b5675ecb40569808152fb30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023053ad4c47b1a9f578d6581ed13a7413515650183499c59f79fd246d53f5b9e5bd8a2a52859e14946f0d3322941348279d0230600e36ebbed0c974763765aab4ec1e7a60e63c61128a467156e1ccc2564fe019a981feddc602487fecd239b2a8ca89210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301d80902d3bbbb3edde8766e56ee6fc854477e594c5c135ca71ef080a286010dce9fc90687aaedc4aded6f90ac831bd07023100c6e3ff25df4e5ff21a027a0e52ecea77a4ef011c42e0609f5134463d50f46d0dfcf3126ccf52eaa0d6fa6f69df46d3640302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303ab81e2c6e4f67c02191ef096bb179ee47f825bd62aae0325b24e4f6ac777889175fa1df22ca961c494660f7f705eecd0230021be762a8ff995050a10482131d2c2b17e909cd0fb6c370d961246577afd2156f1a13b611497993c727fbf4666c9eab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e912cf6a635cc6a47bda4727c082124d195c449c7c00f8a81e9ac68d124de39e88fa161902fd7ce5c6a5663b3e3d9fe802302758501c421a3b66f8bed8d37c851f9e8a4b86323e9fcdf3b4694eb9c1f25dc7eaf33487786ffd5c352098e21e163a6c0302047c435bb500673065023100851e2ddb1599ea4ea2a7e42e5f0d27d5b4aba404e71cca8deefddde8e00210c10b66c529ca0f40b42e83f382ec54094b02300cc3df4f2d4c82d23136c6fa3ae148e478a21ee4b212285c2c7ae681ae12b620b631c077a3d828ef2489e5f88e97562f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306ef8a720647b2c665e684a329f38773cbc9170897d43daac91ebb015cc3940bd600ff00ba42ffefbf623212cde8c390c0231008843dfc253a499be220c0f53ce001983c3b100d47a9cd8a0724e6f39c74fedca4a264c4c100617707f9f96e5179db9620302047c435bb50066306402306272ca1c5ee578d7a68aae371febc81ada5242da64088d16feb4127d3266db9554eddc5f3c18dfc4c612f187b85f809d02301ee9a244189eb93fa5e104f67656e970fe79ecabb8cd9fdeda60e744d9e677c98bd9d8d522e5447ec2675920b0d9cb5a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303656b9ec95e2cde87337f9b9124cb7362266aa94362d50ecdc268ac0aa3b267875ea2d41cfd6aa28508e72dc89f971b802303f8a4d7279cf86a4709fc0e89d096dbe7d5b99cae9ebabc330fc0f23708f2f76c98f4a66a0a49f2062c7d3faa17cf3640302047c435bb500673065023100a60a8859ccc1b9d55845678349cb6c4cb6bbc39eb0ce23f3da665402382772cc713b8f85512aa9332666233da63a040802307f1771d373dce9e9b4c2e36a6a44dc49796e4889c54aaab4991f4a1d4b57f415e1e124d045a6658305dff13c6089e5810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b754a4b106d7fcfc214675db68632f6a0debdc135151f17d1353614d86795164f98c3c36ab4864d9aa458ac775d2e61b023100bc1473ab9d32364f788d80fd1f443ba65f1eb0f78aa0c4c885adc5ac35ba6d4709543b655ba3cbcb7733d86565d938850302047c435bb500683066023100fe4a5b4eecb4f965475038182dd84b064940c31238a9c78dc785340b5b689578aa1c966dc30fd89487fae3b37d79c563023100b95b51e24fc8da5d36d2304b396566396817d1828732266b6cd6ca3a6c1b8a4183ad039d6c953fcac68625a14d8d37e30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009faa5444cc7da3274a8ab1d33d6352a4c6d0f9ee639130204857128782e4527a6436ec9bbb27aa8e9884ef6cefdc733a02310081022e4ff2d9e8d796ff351b4f9e43d648de5d927dad46948180c640177b96db3760cde34f6a83e71408289a9a029e510302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307ca274e8d44b6e09774dffe470f386b444e42eef6042d70ad5da588089933267db094145daad2a9968680a84d7960830023100d510c167b54c1a87fd1c431e8765cdbb9840e8e10db066c2d6c2d33809c1148bb0d8caede74ea8c2ea4677bb3e0faf310302047c435bb500683066023100c2f3736a64c5409497a1b0d9ae6c7901229765c7a59c4514cf0f0004636e6e86d5388a8adafccb6561d700780347f151023100f5672cbc96a7a2b1763ac11d57606d706b4e1a38dd836016ebae9e8d0b32a8f79dffcae8445990b506e291a92882d4180302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302b55bd38c87f2b17ce15162703bb378870ec73033214bc8de77b169cccc49938b41c3b02b19939f099adb4fa3a135dfb023100b46092cf4d81d3dd7400c17136ce1e67bb82af5bee0fbc97533c7779a471610c8d51f4c9b89c59370c39b0f2874c871f0302047c435bb5006630640230314f24a874e131dea57a41acc8a832d484e7f849727502cae57623f9a398dfcb2015857148b6dc695dcaad5e7f09ccc20230255dbf834c7e1a9f83402de0c98bb762fd7f2a587321259e0337e79d6ea1e7cb472c87d433d09ff500d048f8ce911b6f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300de47f31f5df8cd1b158c2051941bdb784691ba058b630c03fea262d28200ed384627c634b0dd175712109d67e4174ca023064956aaa2868d994ea062027754f121c95c1a047303c717cddeedfc3f0eb5a7d3e1e3b68cf03f7fec2cdf69348b858b20302047c435bb500673065023100e0ea045f012facd6c62eb47c1bf869c69e97881529dd7beed254c4a583d16935901ce1c52ef7d17d681f8130a177f5d30230546f2219e015f74e0cd2fad4cdc74e69b651ec035754bdf421979d12a0ef308ed29e88dd9cf6858d10da83048c41e8370302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a6d694ff8c6d4bd9685420bc3eb6a78c8ce8ba0fdd454ddbd36d8762c5eff6ce1823e382c78b4f5910cd97f7b784477f0231008cc8f89163ae0ad3ad6a0cb392ae9c0a5865ff98240a6bc66a09967f2412eb955737054d40f6890698b796f4b5e6814c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306d90b72a757860f2260552a66c2a1faab83fb03386993f0cbd0629304fd2bb6cdb61475dc14427753aa407af9993324502305253d47c179375a7b66c47c1c85274bd8ba7a44927308af24c15511faa680cec8c151167595f3291d11894f2874f40210302047c435bb500683066023100aa3e9b6899e3b57752d9d3ca461a1b5136cf5ce7ab0fd9ec5b4e389e768deb079659f06328a56c5aae07713ff780451302310089a249725e3da2c1a60ef4ecb970b1294176f5f4a31118fc825bd854df07fc743c278593af12d357c45ecf5d622fa3a40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304514cad4ace78470d29cb3dc9f82b91fd9a7b2dd56fbf614680e1fb3715769073627479cbfa551a7eaa3fdd09bbef33b02304e31a9c914221e273d21c7a6ad4a1273773915a6fd2a6fc0ac962bc598b7fae45fc2ca852507e73ab436ee25c5fbed730302047c435bb500683066023100b670fa31bc272af84ece14ef9f1fee871512926f1ca5b5b0349289c91550c754052b6068c0ba870f238b64355ecf5a32023100c013d1f82892654a255f8dd8577eda2bcf3fa397651781133da328702d6ccd6bfa305bb9a5abec332b1c5ad7940094bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306ec4c9fd6669993e136e0d6d2f4e969d22bd2980410f3e417a3d1df00dbb587d1ce86de9e79251a031c8ea8f5df6b07c023023640924b1472d39a262551f6396ddac38cf6451c3e38a0ef2410125c885772f82eea4831033bc19bbe62b0c2520eedf0302047c435bb500673065023100a1ef709f8ed79ee2a89ca734c902396cc42e83b507aef73675b07ce49bda4304ced78fa57cb748df00de7983d280eaa202300f6a0711c0a3f950d895dbef17839c8d013976d4e49385e85ae14305ca1179fe141bd89484262c1fed09870a01c9e0c70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402303a0db6e257e4c3692ba42147d546ac2ac0c1bb4824655f92334401c65d530c917d4db1016778d125b7150069d57e9d58023057e0a723a077554ae3fc0f81e5acd65c06f943f77f441777b3bdd36d3d75224731f565eb5c0ccd93abfe28417cdde72d0302047c435bb500673065023100d549458bf7e0e4b1915bd7651d59b3e6fd9b315c3466ab477bab1b7d8fd125afe0b29b9bfa80fef2201227402c9b436f02300f9b7a5e6c22be38bc00aa4b95f66df9fb61031185a0fe86f25700a8f3a6876741c817b4f21519c947588994d04de75d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306082c2a6e30e49c1169569633a494d21132b64f71de1f44f5cf15510c7db568c13ba0c4043c2d5a730a088b02e002518023100dc5e50e087d8416f272b15a5b64460e01898b976689c08f62011da51bf97ad22b89eb6ccef7778e5909b9439fba5666f0302047c435bb5006730650230694007408f26f22906c18d22154797a99cdaf29c046796ce779a0efae001846f30404bf6e2485fb105249005734d46060231008d5909961f9d97bd85fadec6bc334a27283378de3281698bc08e360c5da11a17153221ceed2b1927ef385a64d7ef73550302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b47e2eb696f2b0300a06a5a9c17247b68ae313f2c48be2e7fa788782c9fb16d5fbd806412a81ebf30af1317b623ae971023100ddcf78005da564739c685f88aaba839688474fdf35e4007127acb4a16194980f06e17a92006c8157c641ad2d1ee2a8480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310092ebe331d3e8639fc136a8d986b79403875d56949331e483487b8f22be332b5a56ea8ceacf80635e3d6a823184861357023072610996c5aa1795eb2f931e864cef3c15d3cfb9aa7b42ccf0b0eaf19321f3ed6f62b52bfdd4592cc9aa93fffb4fa6c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304bacf9b3782a4a61da24010b62798cb0e01152ed8c8419ddd4a52da26eae2eb5e8b86434c0ff9daf8d807cf9097c59e902303e3462db989649d126dfe8d6265c6d0c580fc59d7bd36e4f9980ac2e788fb2cc0a6ce014fbd5a798cf90cba00f7e109a0302047c435bb500663064023028e77b70f240b25dc52c9fb63a122dc69fda2ebf770d863311db36194e9480310386521b1a32d792d5f50a67f9a15c040230369825ff3ec048282e4dd1f19c9a3d665bc88f95a12c743b59779d55bf83eea9881bac064ed75a37b570705a80a13ca60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008b24c81df647a716d73a21846d74c651cded12e9c7a71d4dc08afd8f4742f68233d39384d53e5e061adc29bb26f8b5f50231008a987b76f0f23112b41e902746979fec3dfb1cb98e6fef747db48ac189d002a32dba9cc73e8f8c933d4922335b2bcbd40302047c435bb50066306402304553a9e8c12c726c4274dd5fd0f5bf94bef3419b98cbb32924483e2935d5c54e67d48279a6125789c076e53307dc66d80230203e3e574b2a6943e5a33b369253d4f6724f20446fd246e1d477c1fd1f04b8bb020132963156403cfaef9d5defcf74160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e1b0f9259a04d421e735f39681e0d8913fc964428577d557ff873b8b32356c20f402b8ae13bea48d4983d2602708aae7023100b0629a94b76576df9eb58bd05c512fe37326ea28f1357040c38e2be7b1ee7a60f64e413b3549f831a8efc3c8d7918d6b0302047c435bb5006730650230504d4cce83bfcf46218adae8a61c880913bf5365d82fed74467ff5c9c62c6b36f2fb89bf3ee9736ac84ccf0765b65ffd0231008cca872715b2e8d71d24b34a77e4c5aa6b5d8e68ac74b85e9a52e6ce447ec804713aea1f7fc834b247a163185a3f7a9a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e189521b711008bee7c3674c5c12bd029aed3fa6a3c2332592e562b3176ab59b1d737021fc62863468b61fe2eb6320a302310087264dca472fd0e35ba9cf5b0565ad08a0fccb8b460249c257d642803e2af5dd473d5555ed0cd0711c3cce50389d6f5c0302047c435bb50067306502305c6a511fe37381990f257ac4f3b7f51275a4f9d6508bff9822863ba82335471c51708fc8af94111cd2a776bb197c7634023100cda34da00d8372350da1655a2a0150d3a2c127cb9ff1e0bbe2dcf361b5d21a3e11a6da26827ec8f2d82624e94c9235660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b8219938b3b50c40a0e31788b4ccf12ba042766d88b4f44c9263e9ff3efbd793670b934a67532fc59f134b7e898b609a023042ebbc0c8abb44d17387c238365ab92ffd1f150544f78423e95efb9185e488acaa8347ed19e4967ff80e2d50452d4fc40302047c435bb500673065023071c934688a233e90f9478fb4198a292a30e734122bfee65ad3513a66171a9395d008372d0988268b3ef6231507fbfae2023100a92c77b3cc4fccc0b2f1e80b7b5d9a4f0c353aa00575d99e45f7b65d1ea2401551d3860f273146a9faaba88869c4fe300302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bf442f646d51efe0959d020c4fb2f1df6a339ad52765b1b3b685ad265361b4b09f8bab57d6cf91ddbf89b4d37313249c023003b10dcedb118b0c3acd8c94beaa315fe234df925927db7a2e5bdae24e83b0e0721f0973ea3c89c4049107df8d2ca1500302047c435bb5006730650231008bbb1420051e29e8bcbfefe4909ce64979637dccd3d4fde6691d5bef79d0cfa007f885c51b8c5b2a6a6f0c49411f2b9102304d68ac66a5e905e58b0e2cffda97b04d9ea97f612ffae2d422001a1cf6461d1208b1bf8c51131498b77e89315602bf850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100844ea2d4a383a7abbe50494b8d8744cbe419e2c243fd636952fdde9d5938fb805c149125ea4ffb5a04462ec834a58d740230049b7dbbb06c4cc0071a6db022865c1ecb12635208f3bc645c75bb0b400d0f4715851d443e9599029c6de613551de7f00302047c435bb50066306402300bcdcba243f4585135b1f6cd036961ebecb4314925e9dfb433d5f413faf2feda865cc4c09dbb2f7cf00b0a20397289ce02305fbfcde76a03307372ada5ce15cb9959d1bc4c151df31516567bdf9347a5c79d16c2c2ff423243c9b552f46cbeb1e7fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310093e6758c99b3a4c6f62cdb6907de744665682370b35a04bc68d7fa4434eb558ada27b286d19fe32e46e87112d945850202305b81c24cdc0aa478cb07bfe0fd514a648e120912e475de1d5e68644e6c6be63b8c1be4382eb6a25c267c5f60381e557f0302047c435bb500673065023100c3dda5d80cbe3206c490064bc662e84b92823f8cada43c0941628f1aa4d15fb154d79030b1c34e45b9ec4c276e49209f023055dec9e1f633a495c75fab09133dd6642456fc7ce7737f551c02c8eff4dfa61555944fc51bf629288e82bf817f5fe3c60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301a5852c3e83cc1b084d0fba1200afffa6658180d8f814df40405276d961340e312942543add0acee7619e632854af562023070b0156ced53314f5158840ac2cd7e70264912cc221510a8a2784015e4fbe702edde40ba649405f5798f9e3719b970550302047c435bb500683066023100b78e40c7820aa95f7bd339da41a9f29bfe24d6db0bacce52b245e5a09ec94e68d5cb67d701f5d52229c2645b0085d2b7023100cd2f08f5d9fb12967eb6f981a2f7a4a30195a7a847e5c5078c2c48a70462815bd7bdd8f2291112bc0af347101ff90c410302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eb476377e9770b65b106cb0ccde35fb797566a4caba59fe953d3a294e91154694844099b3516ed018b4f0781d0b4926c023100f752bf4c2f773fad89cb88ce3347580f167fb5c08d733aae9861be5cced74391077e1356579c17edbbabace526d09c660302047c435bb500683066023100d936b13339170d0d9a0f0b35b55a53290248c53cb25a801541c781d0faf4b25d8cd91115fe836450f6211f5f000214400231008e2b0e5d6990ac7791dcab2706d2290d26cfc9c1ffb2f81b4306d2de3d31b1bc428b281229f9421494649f75ae4c14a90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303c02e8907fe9521d1911503cf7914dba9773c096ba1e33ba7f074dbb4dd562d08c708cc7029e6f0126ce28c368732e54023100a01e510e69b675ec5992f9fcb436fc34dd950dd42c30e23f4429867594228489506559f68d6e92c12e68fca2955c89310302047c435bb500683066023100fca8972eed8159e200e64b7369110f80f45259752c971148da555ca3a3cb03c8bbfe8a9e855e21e80f82a96ee4c1f195023100dfc460dee9324dd829f551fbf72c7ff000d5e723aa394620cd29d312a842c840dc2b4f7ca7b8b93311b66357d1d70d530302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230247e32dcdd2e49c5f4d9956ce97aee713eea6cbd505896540080aa39419e45c8a6b1628cafcd11a87e5fa5bf5f8e49d5023100dec99b19338f9f1c0c2b271ff2f8c090569a7c24dcc23e1374e780b26f42c24cf56e5305e7e42fc2e38f6a498588943a0302047c435bb500663064023068083421cd59e939d2134c240a86d21c686640e093d7d53ae9f7d45b4ea8b83c31285ddc883b9f5f3d18519e6eac01ea023026387d716810293d8008aadc3998893a8e348c83616c1f9ef1fe1db4c470862ce429c85d94bcfbb4bc7cea1a763c6ed80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100990e0f1491d4f1b0315d0170584865b51a2908f364a0634d59c5a06493cd056857de85447cac985581d255f418d580440231008556a3edde75c4cb916e187bc5b081d1d1a43f580f909b6875c9e6ecb0e3d4afe729b00a4ee99a3761ffedc8ce21a6e60302047c435bb500683066023100c2d6e33f1e0a22221ee885a368b7148558e262a5ce1fbc54c804c439a68458285d97bd70459c670e579f86861b8ed442023100fd0d3b1ca82131550536687b5c7f786a5fa91bcb694ca70090a584d9db06de60fb7d6669a8e72d756bef2e6697d84e330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d90df2c5310fb38b0b9d2878bdf8bc313101dcbaffb3b3d6bdcf19e90cae2cad47e2f889987bc40cdd5abc3f20630a86023100f3026f273f25d8e6f1fa0c03e836c8dffa7808cd9cf791da5b1fe697829fd1acb4626ba4264f57ede84cb91b9e906a400302047c435bb5006730650230284191e5a28435d35e9df812f9ffa2c52393cb6454bad19e081145b5e75b9ac8c7f00e5961ff4897e0a79edb37f05057023100878e9a9da3f57d5f9f25fc3190765cfdc1fec1b9db0ad24112cf220331a4cafec08bf926ec4de37ba44678e8afd14f8f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023008808cbda034ebd91f3428359c19b532723c35fef8d284d250e070f5b4272e7b1e90d3fb7f102bd38c3f6d32094ce2c602310091906e158360a4c4fab98d853a5acbee148dcd531685a80d3d9333f71b6a3f7c743a71665a1c4e84ced51036c40c41a60302047c435bb50066306402302ba1da06805a073694feee7bf7c288b7742b25237f049a66c6bacbaa605fbce3966677e14fc7e6466dcb0e441cef04e402300b8726c0715ae1e2850a2f45b173b115402a4c0e1c41fa3f0199f5634d36c92d6a53f8a82a7b38bb5d4706d119c1c42b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100cf3a8fe52ecc2b16effa0dfbe5bfe1f0e3507d81a64f08ec8a876e660cf4b3ff6b405174308899dc2ea2d63177d87a80023100c07f5dd879ea6d2f23c35ba7764b3819ad4d4fd081f29a2bec7d964d2f6c36a4e6a78cd5778117ef577d548683120bb10302047c435bb500673065023044665d90c7db0195ff1e189ca18eac2e1c50b1d96f27e49c82f1131fbe688110dd88486b653050c8e48d35f0f47930b9023100fb8fc585340f731e91f27afbfc95dd0aac4eaaa34b6fd5a1237aa4c714f16cebe0dea5cd4b6478b2177fff3d6951e0430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502300ea2adbc5dca4beed6d74aba637bf2796dd0063a51f370073a82f536d568babba689c6212028ac7c9bd98929916650970231008035018b886cc87313ecba913ee296e3b767c5df09f35dbceab2a1e65b4b131269f9e8c09f7c553c47b8fd423c0a47d60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310098c556b2e36adb2aabc1dc9aea76880007a029c19fa6d37ca350102ad049134ae36d855838f0b74ee5fe235033e895d1023100aee0751ab2385d4c1777e3fc09473bfaafea937ed68a540e87d0c4dd473f47b469adeaa5c8f78f85b42d383c39331d180302047c435bb50067306502302696c624625f39d45a6c0d3bf3c65a1945cf2fa1c63e86d1c3133c01dac92316d6bda34a9e35dd49ca11882e0b8b8f7f023100df715f1c2b0166349a157d9dfdca43267b0621f222834b6fbba701de419ac5ab99dafac74832997c125114adefe398eb0302047c435bb50066306402302014be4c554a94b09834724baa85f4445c05d9d6036ea819015f9ea5dbd6ee019342b02f69d8609800b4add65e759dfa023042c0a945f6400eabdd1f7fdd78fc2497fba312f9c3f08d3f1b1d693d0d0a7fb0ca63e741576d5a0709c0913c14fd01480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ad55c40051f9bb141c0e93c5e3d8e3c52d89257b8ff65e4a5aad737c23fc70485840b07fd2b5abd7b3b670f9b5eaef5e023100a5211884f1766f6b402d0010c69b29553279ca7ca8812da829ad1f7cfa92d9b43f3a531972bb39723697586f1cd5b9fa0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303670a182172706a540310ef9fba6a3ea996c36b0b0d92f5aaedf3b0a5e0429388cf4593377c4657f98f689001fb1891c023100df813be86674c934dea01464f0d933c38dffb3d731f46cd37d5c90902e8d77549fe0e06dfa217cf3c41015bef58ed55c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305e3ec1da8b6e7f1c1c460dc98d52a01c2c197c86141b37c5a2b9ee6d32d072460708c2173d0f40dd0deec709317604320231008f42bac65c7db2f9b5b1d0c1c35a0c8a280b9ee89eab9fd24901a13c121f96284d57969f327d88277821fa1ef69b9c2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f51d57471fd768686296495ffa65817e1bd00d496e97a18251986d66cc780271ed50449fdf38b92ff9e53ca956b34cbd02310087ac5a8377d4719c866a313ac83f4e3b0f16bc60f5a683c12948dc6225b62eba0a623230d30bef290eb7ce8223b8c4990302047c435bb500673065023100f807054fa4d128e9410925e92e327b086670f862fee2512b054a3a2386544a28fb76c3e2df5d928cc8a57f109cb2ebfd0230591cec1b5d1b171c290bf67acb4e3d37643b092cc59658c43ff93fd50c282c56c7500f78a4de0c288be4913ffd4234660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023051f96540831c51bc034a71162bda86ff1115916b8e2a14bed4c0a927382d3bec049ffd1bad1b2375336e4c2825810acd02310088be1ddf1f2ef4ec08f79417236a6656f7140245874603befb8f42dbbab206bbe5d9a7826bdfe6c2ec5962a116e00cfb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306b42d8ce365c47566be77c52ee85cdc63d57f3619ff93665e243727d35ffa8c9cc0c2bd799435eae31dd098ab4d319b10231008602a800b48d974a71963cdbdfdfb820b47c7e13e6959a16d95ae79c795ab1ef2cc2a8cff88d617a7e520c8023e9d4140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e56bd8914fd561b2c3c855c9c81f36b50419e57189c383f3092f5fbf6c557ab65f31000f246a0ba9c6110425a73fecb50230280f6ff851622db921d31753ad955cc0a359903d517896608535717f7cc6ac01789ac8c8e395698cefd8169a239356890302047c435bb500683066023100da35153fc88bd847b579b93bdb7787a68e086246bf92605dcd61d039fa8054906f1b3f7e826dc21cb7062c2951c8f97a02310085ecd37f958926066325ee74ed16839e970f40a43d08ea7c782b685e1937d4b0f9a103acd3a6459f45cdb826a0cea2dd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f3b1e9fcb3e4126c3982c2a9c6f51f7ac967c37abed1f99c7b83a919403c415f17e60b1242dcfaa6a0cf68e5d6acb3dd023038b59f1faee7732e0155a319599eaa9f5f093d28f5cb233084ee9dafeed1d0cec643cdd3cc8347a9d8eec5fcce0d30f30302047c435bb5006830660231009c443d509db94e402b6e4876b291c30875dd81778f0b67f7754b73a4d88d2f250b0733904a01413dc66a4ef0dd47091b023100cc378a7f6f64ef9b8e89b31fd0ca68b671ed2348f2038381c6fd21ce4d724a41e26c66d1cf119f9fec6c0c89b7ecaf0f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300b38ea8b9e5179140287dfa4a6c0d411a4278f73ac74ae832c9f3017115d2f1814379f088fc6da8b2e8a48abfa59d222023024f2dd1eeb2090160306d4d50fb607dec46df52e38cb66430057a0918469ee586cec93db86edc7da08b5173b67cc53890302047c435bb50066306402304cbf5de792c37512a6541166bfe5e81eb46a71ada131760251d96ba1d02b33401eab2ed43f4718f96955722f5d503682023009f0fc4bd5b75dc87815a5c0f67e916b4855a58dfc35fefd9eccb8655982b8b83cb25cd4ae80163105b1be73dcfaf0210302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307ec48a15765a76588c4c972ede13023527539bd3831a24bcbe2f43a7c1ab9a6a873f94b54ec1f11aa44f1faff187a40002300ed38e70430f68e3cc42b7bc62ff8a2c98333ec2fedbdd8c9e0cf083b788475c5b9fc4e1df3ca36d4d2e88b36fd6c4c80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a862b1993075d6c32777e04ec6cb3fe23521bb1e2dedae6d3e3d594d8fe9967c698198e5a6d73c484f686e6ff2ea6000023100fbe46543eeb0e2c297d28d14e6f4746108554a43bc5cee1e972fafcf18ae2c677ddbb1134a22c3e02cf93baa254edc130302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310087bb4c73969ebe016a264f591a13300f700ee2d4a07fd1974a1396aa79078f0b73f8495591a013e8f6708ef8b05d210502310089c3be79e7509a27b32bf2b076abf9eb970ee0b36cefd8dffac519027a03a1da4b27402b4aa8903c62e76ef499c5e0490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100974167fc74381fe1a7217971773efb035720f104757afd7b8f7ade4c70362b9d7543d96cb57cda2ed181ac14099265ae023100c0e8c66b7a53fcd05b542e6929d7ffcfad469199a1ef0c2ccd1bbc60edc4ab59bbbf3b805a95879a30c3c9a4b22353060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a90506be503d523f7ff5ae4f43234c0838aded21c73e1abf2b91910ca9e7fc8b20690fd271ba42cc280109a6d346e6f80231008d0b63a0b9e5b2f799b953e3073808252216df2f7093bc4c8bf3b51152d97ad30011a1a152fd0cd32aff17f25a722fc00302047c435bb500673065023100d13c6c258faf6fb3669390ef74e6e9c06994b6b2b9d73de19039d6b5176aedf965b0cefbbd568ecc818e2660c980a6e5023076d637adfd0c214d049f932fe863d0362882e70b954e1fc763683f6c172c6ba522f0c8ff8e2952f14fcb0653671ba4a20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a7a3c24a31027571ceb17cbca9fa549842275a21e94e74b2bc6c31c5a3857aee360dfeda1b99655fb8f7752393565ae402306557ee80c9a1e295b4e3a30a8371cc19e4bcb6f8fed2a4a04105a02991edef5fff3611ff12ce4e1b151a40ef7f81294e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023006f12372deaa4eb9893449e9108be7aa91c935cf3b399f87170f102c5a3691f6d0e8ab121d82b496a94e7839194539f902303ac4ff5e5f5b90d5b231d065d6ffe9e281acf920c1ee7ac588ce1db7092d8d504d1c0dfa0200123943e3fa4a963c45140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d45cab873eae52df5dbd3bc214c9f342a95698ddbdbeb5cfde98d77e61a370be143cc511e2f80ded54470c42406fdc0f0230464f79fe292db8b1e049e8414e2dc6ab820fe6207020fbf6c88f5feef96358ddbad879e11e12794ff074465cc42eddfe0302047c435bb50066306402306ff45e328a578d30a1f61dfb6dc8fac205a2b8fe63092ee9dfc72c54eba7dc217578bb9555182dac412bef29cff858bd023014e95441ae86b0b163414925d6e6774fe385b4b6565203c506bde916f9f1e26cac427a4ef2e215074e2c54f055b5a3c40302047c435bb500673065023100bb0a0cfe26ba2c06309f025d93e243e213aad0e9badbbc2f99d5a16adb26b12e030403c022a2878cd614207447828ae7023035189ca8279e9801aeaaa2a3c5c1eed6d8cbb8cf8c3fdbb1a5c9a538719732661678f681d48a538eb3d999909ac2633b0302047c435bb500673065023100817982ffcbd99c292b891090b2aa5c1e3f0bff58a4f1187f305c707dd84b745bb2fe2f59054a16f67697a0be76bc6204023051524f2458631de022e003f200adbdf2f069f0d945fc83b4203d1f1c29afcdeeb505e0cb0807247d168e1b62330500520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c3e93168211ba3fdceb2e2668c58ea44fee05a9cb5e17ca2f461197e8ab85557d1216e16a91e89ea71aeaf113246c0360230321e63cfd92db8fcd884cb47632cb4610d8e2c0325caa3d6e40b22d9c7c5e2f5952c371d3c543375c42d2d1c5a8d842d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009292ba076992a63fa6a5f1ff661acafc737fc4c43edb3cf6933e1e34209e9555d5bdd550a30f0f8895e7726173214240023100931d42ab5b8ad1994c790837f58c15899a9c64a3c9c885824d099ae10333dbce6f93732a054318d73ae127359cf9580c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d40bbb656cc225d7c9c95fc0ab6b2eb128e2d145d9707b61ba7680e4fcd48461815df2417886846b5a6df319ac4ffea402300347133649150734e05580ef5e468a4be204cec2fc4ce4f272f5ef66bb0225ccce0e63c2a6cd2d77ceaf0b8a9e33dc4b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ae49a86da9e470952cf594c7132872fc2ed7e98fe2f6338fa6f316d34250d2066079f02515a534b659936d13062fef51023100c86737bf377a7b8d58972a4772a500ac8270f03bdcf3d9963605c74f14107b60b7e1c2c14c2fdd9c4ea8cddffb6b01fd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502302cca7df6ab6d1a718a50c35a156c5dd9cf61d9857904732f12dee993f9ea38cf01a29ec5790fa31d86596017b0fe1f8902310081799b72e967d487f2402acefae0a7bdafecc3156679ea41ac96ba99f85bd2bd299ddb63c329fe79abd766ec4aa863840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230266aea77d693034e1f7d3f7fb2883f3a021c4eb664dd1378e63f86c5f24305876560132e96266a079293ddde0742b4b2023100fa3b0c8103601edcffc7c7f34c136ae6a1f8a48972bc81c62477245f3c47ae50a05c7784199aca90a88f2de2bccee6d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023013247ff1e508c6214c1225dc947d48d19f195b68d395af51133eb32b46d83c2083cce82ce26a914395792ef6eee3f595023011ccd4325c7ea502e70aea88b9fe8bbe2a531ae1c946708499f5543a828f3ae02a37be4d26c54eb341e3d21a8787e1b10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300520e7eec649a9b456a417f2270b879efd3be36f283a9bdc3a1b946ad1bb531ff99f84d16e7ca2febaa01cfd5ecc880b02304f7d409a0f82e88979d3c4b9e8561056e481c781534a35f41e99494d3adb16cf1eacd3569105bb8059dfd797b8a9c6380302047c435bb500683066023100b748037b69ed956b6f34e9f4354eb5466bba43ceab354c3a7b83790c8ac0a0332271cbc00c7dd0a8358572d703bc9b96023100ed325594e5b17291f9760cfb894429a91b685c2764586d65bb1d62d04415890256600a4879190a9e20d7253e90ca38140302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305bae6de36350dac043fd26e49ecdc188d8b09476745ad09a29d93a2f5cd6cda70e1eb580cbe7c2d1a29261f4a322abdf02310085da8ddf6ff79855763c84767d12bd4f3586b27a6ffa9455a74181803f2dd5207ed953b26c70cba6c490eabc79b04d0c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100852ff98f6f4d4d79b419ee32a0451021176f127e7aedf56698e744e1eb93d3fdf7fc5b0cf273d447686ed46f5de46a930230069641c7cbad40fb07cc6c8f44bbdd444e36c1f97b3b2054e7a2f58306eb4177b4e91d7d4aec7effa50daaad6b332d990302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a4441e352bae11f2a26e1a5b6b7b773d04286888ea60fdd96fd877fd7f3ef461b46962d0198be4383822ee8db4957da1023100e0dcdfc9b8e3d5c41c60e214592d606d54cac81c7be9bb7ce1a56bb431fea0d2f9c98876b7016c4dbf22cd0c5d886d3e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303e5c6e7d9a07ff8c0e0b0137c9c6c695a148f8111f52951a2f5c6ff498382dc41c8b7d99a418189808d0023d3ecb8caa023100da4b96d6f81ed5fd474bb5e2af4489dc4739890dcfff4ec58176594673448f2789bb7c078752c9a0ebf8a22db56645be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023026e7aba5121e62e20caef85342222fbd5843de2aa178cda5c9961e6b92bf66b217181e89ea66ad5f56152f6a66e2dddc023055dba0878ef1e3e9e697ced6be585828968c1ba54dc78f6df794332d6073f85c69bb24dda8a82d42f416303590d855f20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023031c454c37b171f6795743805f489e49020b89dfb6457b840e093311cbdab2fc9dfff43aeb29df6686d0e7d305f07a17f02305b7ef3044dfb8e5cbd7110c923f11e8905e0cb425c0f4041604d14075e31bc2c4f3dbdca8fe0fdc9d2c9512fbaee05f50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ddf416ca1bdbf33180bff8bce8f4436f3a116c0cfc9aa652948548f39f352651372dcfe2100abc31124cbf4c15efee8402305f00261498c87f68f686552780f102004d1e2cb7a88729fe115ec6baf5662df0fad46a82278ab73c2a89197fa55e8a1e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023025112d8698b92d9916071944f2e34013202fac06379f424ce3f5c0252f9b3feb46611b3d5fff33139784e6d94d46feb3023100c08beb283b836913580d1cc2c3bf5a621254e2dc460f2aef8ee57de4516379aec0d124c601296e5f8ece0c100ce0f4680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301b1a1b0da6b971d5cabae6666f3908e584dcc9b7413706c587e06cfd91b30b4de663ec1afebfdc7557c528ae7eaed99a02303bbd1dee25ae863d44480d2a2aaf41e779bc75274806d59c2ad1a3a7166c97a458b06111b0fcea6ce6f344b763ace2c90302047c435bb500673065023004ea800bb79d625a9d897b525ec39cf2b6203dadc0a2a2f0a642e4840bbc2c84ce79dfcde2b3cfe01fceb10fee086c980231009067ffd0e00ae98000cbf5bd264c340da496b05880d2bcdb80647217ab77de52c9e0ce6a6cb492447023be21c0aa7f040302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023053a201354bd5ddef0b164d35df77472e2aeda3a95b7d9f6067c99b9acd01de038e002fab7d37ac3cf36ad360a5c697de023049de309b758be0885f637b6b8f26d9199d9971eb9b2646dcc9e8ccea8a286c79f0152990e44cd08fd9f46f42ccca29000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e03021de208f79bfa6f0beda4e24926178c02517a51bf6bec3382ad24f4b2b8ab6fdf8a581912ba9fa267ca79c3aa242023100f490382bcd7be60135244bb602f2b5518a6f130c455e5daba8a181edc3f779bc768e5f43cc36548d5ac4723992d6dd990302047c435bb50067306502306508229756e2767a6f4043687c4cf7721b2486cb3dcbd60fc244c0d62be5a285f757e29f983911ab97ce17cfe3d53bd3023100f07e8b021fc15ceba4b8911f1045376bb74b58b2ccbdcdbebbb51334aa37e9751b62829f9d4ee09ce5a032ff4eecc3480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ac121d20b0fd184f3041f39129bc9af4434a10c1d916b89940c4711e76db325b42197ce171ab6616237545fcf738b74b0230438c364739c9157a9c555725c8fdad67811ed02c4828a97748b1ad387ca8fee1e5644926e964937b8ea16b60ccfdc3520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e6b86264da1e287b29d2c22a594ed2548b72b7c6cea5b7cd940f116d4db31e1586c843dcf47fbef107703e92bd170095023100dbe2031360367f5d296e0d47946c3ad059b5340fd7a784824d30435bd3baa3a9868ee9cd77c0fd9296b8c58e24fd3b0e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307a6a88839da0e9774e124131471f616f8a536b40f4d971391c9eaf3c6e095b56ba5ae2364320f1883e8bb306f21515a80230050bc850c98bafb8c4c33a2cc3c394818a67e7939f54fc6b251ecaa180c26316d93505b1abc432c7c943ad3ee9af0d470302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100eef979e20d9cd98bea7245f883caa072adbd61d7cda24189a56bc9ce25ac27b733790e447701c484542eee05ff4580c8023100a991f2ac8a1371c897955901ca28be871da3a7b2d952be63782876c9a2c86fe5c643b39e24f091ca2e35196f4a5b6b430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303cb9fb2f6688be6310db1e13137fb8f28270d4da244c737e46500daf069776393645e3469b12d65978d0ce6915d6671d0231008af3abf0c6047630426de28773fbe3a1ec8c49a309e2962037237a6b2fefb090d6179c01148c50f1b1618d8b203c24710302047c435bb500673065023100c12eaa69a9894cfeb746535b6f330c6c7ea81e34ccb6f8445acc46d11b0cb278881ec6a8226dc0f78cfc74f30e3d37590230706e5db49ab6a757d48e0c4d78ccc0a2952ac2e845209b0af0bee20e7af1224012956b339d6d69d00a632998840908110302047c435bb50066306402307d8f49e84a66158e0413ae4bf73e2658413f9c329b298d584915d60d28181e9bc7b0586b72744e9e27e5e4a6773868bf02302fcebba0b5ef30bc80e8a62213e995cdd8fe48b2f102d720d318bbf4a77770355d4c35f5111ab18038368c0d77cf27070302047c435bb50067306502307ccba0e46ccae06594a8371d487bb54093d39c7c6be7ffb7c025a372c2d1533cacea70dcb44fd717ed1cf581c6e36817023100b3cd0b1d8513045ed15ec62fcb9e26b7025f4ed35211008c0022dbe3d98bb5c2cbd2783fa3ad81bd32c431a9e9dd89350302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305bcd114b55c14d5c3c8062b17ba1f4eca0466ed8b0feff1e7fe3a14f2bdfc019e0d473c8d24e1bdebb830ddd8a22f718023100da76bf293a0c88f1c8f4402596863c2ae41880f869674855f344c764eb09fc2d703d5394400003220310539d0192b4f70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310081f588aac182d76c0d8a2c58b221e236a75beb271c95473670ccec82d0497beee1b3862a330e019812656361f829a75a023100b0b883f0e4dbef99012d4a7873a3137fd110c4ec82ae04da47664400ced17d22cb3396f2a6aa40659147911099b89f560302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e6dd41a276d9ca63c6e56c9dd995ece2827c2cbbf3f88c8b8893d0bb7caa528792344a579584d4b1827ca4a96b2208d7023100d29d98471313be105097b79bac63558ac7768fa4d47e6d22904eaf6fcd54864c5c85a3d4a285108bff5b9225b0f1c8c30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d1349c2fdf9f2d1b9d59b24aeefd7a285052a400b729203408ecd48e5312dbc72402e3c544493dcd2d97767f3782ebb6023100a0930bfdefb57e26d724482ee1b9891a20d6398066c82aa5c2b3e4468618e5b169cfb14cc97685883bad3db8a3cef3750302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306be07278cc40ba5ed251cf6ec2665667e76c27a6fb6ce59b6dbcb927c5203b0b3a395b2b797cd06d5879d0f42e8b9d5c023022d9cd87604ce192fffd57d29c324e6f0754e802d3706f25fcd5a69d18e12f851827f7f145b0444706c067ea131d25890302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502307739a649b001880eb31cf2320acc02f2d99f994320f6e94f7635ac14a1d2bb9223824ecd86d201a0efa09b2430e2e583023100c955e7e8727b2d26e5748aff0a03c67f53b02e668a7f473b1cab5a8c10141ced292a973b2bf973ee530ec553191eda590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e6dd41a276d9ca63c6e56c9dd995ece2827c2cbbf3f88c8b8893d0bb7caa528792344a579584d4b1827ca4a96b2208d7023100d29d98471313be105097b79bac63558ac7768fa4d47e6d22904eaf6fcd54864c5c85a3d4a285108bff5b9225b0f1c8c30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c4d9e067f03c9ca9357be67b0a802e921c472bd0305d1d034c0346b37ccea6bd0ab95324709461f026c493602c025a340230583bd740cde3aa63e2990af40653db276b0f61074d898d17b65b866ac0a0c8650ea3e33af4fb63eda9ee9d16004dc3ff0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302857de4b646a4d22f6a527e5543c81e9c3f53971c4cf2605ba28c32c1dc9cfad87ba6a82545d060628d7a8a759fb783502300a843ee2f1c858bd693609570161cdce787f12e77f8faa3dbd121c36007c340b5f8c4205f3b7be6b1b87923957f5801b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e6dd41a276d9ca63c6e56c9dd995ece2827c2cbbf3f88c8b8893d0bb7caa528792344a579584d4b1827ca4a96b2208d7023100d29d98471313be105097b79bac63558ac7768fa4d47e6d22904eaf6fcd54864c5c85a3d4a285108bff5b9225b0f1c8c30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230458eeb09a87729399c7896abc10547f12ed4ae1e39611b186091214650908f6bf5ee3c93436b0400e7c8c78e1cee6202023033644301a97a88dd911e16b3e1e3f2cd8f6a6e8f40071744d3d69075ff7a6ea667f978027b0d87a38dda1f1ad8b5ae230302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230544732f6532fdc5f57f6c7de429232b095c2d58c46a5f12eb8177e280b85c5cee5ada75f89c3fcb7670d105612693e0902302b21f3d770edadc6841a370a41db96c20e859fd3fbf339e3639bdbbd9af25f7f5d2b1cb718023564ba73e80f4ee4f8720302047c435bb50067306502310095d3858722dfa20ca40debe1f54b76b7011c0e745ef25af7f9f02975c858494205d802654000d5c0f146aa5bae8fa09f02303d1ad3cc32f5d087d1efa3ea4c1104acbe299996435e3f346a2e259cbe1f69ac3c4bed9e9809ea93e34ff53d90c78f770302047c435bb500673065023100a88124413e11bf014e3aef2a721b92aea63942f611fa496b849f1801fbe7cf305817d4200426c41ec22b2426d936321202304538819a007cbe00a05d5e31ed4b70a8b49a5f7c45bc53d7bf22d5bce44387bbb65a96e9204595eba9623669a4cdc63f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bcc18c30948de29414d618831c709f912ce52ca9b6bbf4425f71bec47c2c2e61176c848485d891471c0548f24bf2926402310082636e632429b7e135bbd750b38886f13c73a9fbee94607aa50279784da182413603662cceeedf72e3d74fd28ce2e4320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023027ac18e0b4abf1ef90fd5ab6dbaa537b1dd43cb0f8635fbe0d3c788e87ef89df1384a4a91a550349333ec917a65f3194023030f202c583eaeb841ea0c8cf37ff6e63c65cc2e5d234e983a65b9e8860b1102169dd690a0c949e5cc898bb502e3551e90302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009fb0833e273baff14a385839b04ee50c596b4e3d4296299cc4c899dfa453be850b78b8d73dafe491bcd425d9bbc2b951023100ca9adb0398a5342021715f41615ce4a8c552b87d128133558cd023e754764f1e1d249944758d2ac2ab9a03448c4c34950302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100b0056d2869775dc5f5dafb7956eddcf9f5395b05087cc84573885329066a3bf40168658a2348a0160ee32abe41356177023100c348af8deb52707c5d2806372b4dec25c32cc4a9bd534f3dd79a0634566211b87429a2d15814bfee4c4d3f121ed41e250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086d4fc4587cdd98ece90dd2047aa2e76d8b719f5d6acfd1b3772c92c3e1042568f16c0d470decaef1289c7c152fc954702303c4c243950bc607574286c52a4841d3e4d78a5f1b01bf05728b94de8fdf532848c68ae4f97b4f8843f2928e5e7bfde1c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305990ebc1bd6c09fd4833c870b4cfe8be66af3ff621e5734a721cf7731b5746f287b1dc210874b9866094c0c8931d00a5023100dc8b8c4d3e139573aec550490b64fed097697b72169c300f7f3a5abbf9b6166f6248c1e0831a65d61da71d4ad62b92b80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023053a0fccc8ea3cd9b4094b9a98c7389c8e9976039cf0a6ad62204d37733d9a211f36a512f22eef74b58091c53b8276314023100f3de8435316f9d6f417a684eed829d78e97a8b76e60bc8242223bc134931222ef84306f0ba32079f9787848599a9d3be0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100837439c420136e34e96318c1d0daf6640f379490781a99782b67a70f59f9b5ed22156c48ed27e2ede263888d45ff27c1023100b979d345fef82335566c6091fd3ec861ceca6c8cdb09023ee71fa1f01c0319ed08822210f04c9d365d9f949a2a11dbc00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304e93d291d9f72f9734c22215ae6d20effdf6a6777f6597845127dd18aad09d9a1147ee8d36a10f75f0850ed8826e93af02305b89983c73a73d12b66c1940b77a6399c4f91170f0dd08137dd3094cb51a747238e130384081ef1d5d8e930e42b1c1bd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303d61c488b3b17fed830cd3e1fa87c9b8192b0da0a73bfd5383a00a171756929fecdb7452a08d89ec3d44c89be478f61a023100dbca6e12c24cecda6fd888362d8204f2597108385d62cbec6eb36159a82b6bfba3af6b2c7f2d4173b1a4485de934518d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ad78e047dd00c8fd6e48589fcfcf85f670c20175d0655d62e0623825c9aaef4791b009478594222d3252192c0ce49bcb023100bbebdbff61bfb1add1120c0f1802047e892588a4b64dbcf64aec1e516005f2f3df40c3a3c9f1b995bfa2c34a7bddc2710302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230129eeb189ec58a7f642dda97282d8dfea429ef53a649f13cd6bc3063a687bc60e7fa8110a6fa492f6a0adee40bd42fe2023100bbaef36cb69ceb380593ed091920a05339d96504c8d4863fc24699e361786b5e5e2989012cdb7a6f406e986c5f2060590302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008b1164e1ed71854cb348fa1bf1160791b08637b489ffd4f20cfb5694ffb612bf1a4fc231e386da53da351508d80705f5023100e3ca76afbb07802d031646dc3710bf57be9fff8b6549677c0bfc798277fb69932d1af026deb5394871475409d6addb750302047c435bb5006830660231008ce00875327cde1a3ba6a36db6ef9acfb5ad7af2575920bc26e8b1758fb1d58242762a6076e64dea3411efb10972a26f023100b01b6ae54b629e4166f7e3eb81d171fd6844a7f2ccb499b23c8fdb035b7c9f6663c509eefda6f226158dd2adba36bb850302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306c36740949a9f8a7fa9a40a9c33e97493a609348557ed6b2471b40ccd322fe7bda30c68602a95807bf1b78299abb0a3c023100e6a8ff7ba9c1264d366997b600f7984dfc80add8e9ac30ad548aed82c9e0837116bf6fd67c459d7802621d7719d0f5430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230345d6b6ddeb1dd9ac0c646c3ddf79afcd4169af2bc4fa5dbfb92b90d2e0bbbbc1e8300287a876e095e2472339a3a55ce0231008fcb2996c96e0a5fe31f8f0f9241985139174555ddfbf2c2bb0f8ec20bff0129d1af04bf18cd54692e32e0d135502c060302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008a7b72f7dbe3d93980e482a105b8534cfe6be21fdf6482cbd89b9a34cfc25bfaafc9a245fa46e896ae8a46ecae932e77023040b5eac87ffb96f713233acbe129b7c6a683a409cefa53101d2c2e3ca21ee11b06b6d5b591fc8a9d337f432c2aa1b0810302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c4163d088e40d8b71d1e86565ec4412fa21d828740c904de00b203aab2e27d412635efe87bbfb7dd750956adcb46ccb3023100866320f01ac306573d8afeb782c7319143e368dee6c5cba7d98e6339c03d0feef1f2b6be4aace13ce9ea3bd5d59e51500302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100f70c7290f64909ab9de05e77f5b7fdf9c0f9a5da61ed37ffca0a9e46d4bce613e24a825dabaaac5ed6f10e8f631baf2802303f8795d01a403168a1f3fb814cb3b700acddb20413e8e3ad4d0ece21328f45c694dbe2009b291e22fbe700f939b711f40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301e5b8846ebfd2b7c30a7a97611870d717c6a36d6b157cb3cb8e4ec19cab52c4e203376decf6f96ae962d21fcaaf9e1e00230143bcb267e48c25d723761d10f6a73567f1095ed342eb4ce038f12475706a3bdbd046eda26cfc87ec7a1eae3751192320302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009d5fe7c97a32e50054a34a6268c4226050b3a66838281a61b9f82daeed434e9202c1d6033e45169281826419f314cbf00231008cef8aa7c5b6144972da4c44e27fc979ca3eef433c65109a010c22e2a61a8718ccbbb695897fe918c0077e1d869527bf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100996eaa61f4f65488c34d0a8615658adc50c652419da88c64d2f8ced5f3cde20ad245c25ff757b85f7eb4f091495ece8202305806edb48df3c263db00a9b4eb9dd5c2e57b9931a318809e0e6659d350b061669b0b7c8458353214edfeb3ab4995bed10302047c435bb500673065023021066130305705faa18aa2d63f61f78ff1be87858319c87c5fd939d521d199788c1a2f77f77715ab9ff9edc2c858e2a80231008574007921689ae221f88ee5f2794421ee7269392a0ff819069ad86462bf4dc4bddff7171a9d5fbd3817fc35a08821330302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023027deff7126d4d5b1201167b18287ae63942e9244dae1a16e68ca3e4aab110cded78ddd03d3741441e5aa20a3c214978f0230625ede1d8eccb02763158bf05a6d46256f27306285793d3062e6190fb71a9a407c691f403eaa10e59a5f1f2441371b690302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310092f5730b1d71582ea94fdadf991ef824761c81061d9819f8ff8be4baa012fe8d40511df697106b9fba1cbc8254db7955023100e6870b42f720496dd6449719f0cd5846c66e07a86ebcc5edfc88957c8979f1d2006a3cf705efa3a9dce71a5d18258ca10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306948b64527e0ee7c00ac43db8c6100692e177a2a0927e7816f954fe3487a2111a5232fc347469bd46e22b2d08e7aaeef023100da5eef18eb5775956cb92731ff945959b248a24127dd5b665e96c456ecf21c7e953524662bfb18249980a0391107e5e80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100df9f4d5412dedae388d6945d3b859e9e8987fae55486a4430faed79487b4f62e86381dc4fcca7a939b056da49270e0e3023100847d4a0962ddd194a327d2f456324894e9ebf57f92ab2819c382752b60e8a60657249ff2266daa5f418251bba59833d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100eb3636d3d835e66e3ff46be6e1c94e5e803a3d7231cca7732a7de28df059573bdaabb22fc57c513e8d7b00e791d63f05023007656188409494d7de0ff9fe4b0cc9ecacd14f2f41a63f505ee0e1c81800a32f974e31ce2fd8b719349bdec0ce4613540302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023024ac9ed6c01acfb479bb0a416ff2decefb1dbc913143cffe70c4fa6d6e46bbdb8964d7d4260172f9b8f97f2f5566edf1023100ba8e5344633fd08fadc8c10112e564ac70c127fe8eae3c963db8ad621db7e7055a03defbf00b36cf27ec82679ea39a170302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c0389b80082dbfb0bb11520f7e472e64e2f3431d6356423c8c4b52dcc03f8daabd3406a853dbac86d2c921ba85bca62f023032a5bad0ba4e1d0ac0baab8fe7d94faeb5587333c33f71c091d093e44a0b041d7f94a1593e4421aa407e020e2e32f1450302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e76df774e0b65bfd601ce5726537cb9c5d95dd6f88dd5e588c43c0ac4f7d4fa3f6e1b91b82a840a68324c0eb04da5469023100a314458b37633f84dc61d6e1214d02a709b4fa83a41b3f3003075a9d86c45d6ab1a9b78ae3e7ebbac9d410dfcc88e1e50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023017d407bb39b6fd1b2e7cf095a8de6d035033bb83f9f50cfd75709ee04cae48cf768347c8567e11996c7c913eb854460d023100af48f6edc984da20bc3a4c3badadea2b0f6989c0b6499150283c91bd26756b9649be1830543190561c2b46ebdbffe4900302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023023543e3856c742cd060c1b4dbf30194d680e8362aeeb5eab423accea62fcc3f3bbdf645164ccf7bbda2265bb39a8de2402306a4c6eb1365fcd20782efe89f35dc552e3f98f155a8e4d0400b2bd207ebda4cebaab4f1be42f772f7d2055e86a60fa240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230269cd0f24e977df6a028137595de46c46d99d026deb52f92a0dd3206ea7459b81d903b0836333c4755e4df428580630d023100ad71056ef457c749953cb16a2b859ff9825975023544987f9a348ade1dfba14ac0c8a5f09cb3b98c273953da4e3de51d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e7ba886cf29981c8767eae61ea8a9d8c20e35fbe7d4f6f6f5bbe727662a93bd7151ad722df5ce981cd216b90d19848c8023100f2bf00211c682b82a513b4d307b5d4814ba21d7c04985100972b1008f371867baf553ca0081d96bb3a371ef2184793ab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dcef59e8cb096f6474b87a2547848a77babec79c8d2d35637dbe41e7218de9db6f68b41ec2b47518ef0ccc680e3af6060231009ef4c52b2c4a17a5bd2a1f63b1ee43954970680e7ecdd51b37213781d64e51210d90bd840f144bb3896f3ebbaf06d4f10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231009857eb9b319b77128217a9e3f3e9a6ea146fe34edfe0ba2c81dafe4615b5ae65c3e8d3ac2bb84dc6285e9b8ccbaa9b87023100c994511b4ed634a5dd94e0dc989923dc59115b5644c568da6e81f4fc2c9bc5ddc7a6aff4104b97f16178d300fe2b34480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023065faed7722378e8a3d87641eb796487c9f6558121b1f8a06f07ce13e59cf7b1025dc0cab8ab517d0b3f4bd2dabad45da023100b099a7741f633d316a5b7ec55066cea9a1617cefbbef46c2d290f01f04cf68b824f41131b76479d7fb519e77f0864a1d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023073018acb1caa5711123bd9ebdeb294765b945cf52be4be3813015cfe525a6196328c5520aa5d58fdc8d59bcaf5ee9d0c023100c3c68e422be2112c288f56192d7d352198d5394448999db3fa76b0a45a2a1f2c67ef20cc1b94133e6fe1024ff2c9f78f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301408fe90d10e431d987edac62e733819dd8cdc9976d9a0b0020de5cfae34abc38fea26a29a2e5e1f04695b29aaf0d94f023100e9f0facc48b8dd8201e7393e1b1e16cbfbcf65a7934369cf55e656c36b308f26bc8a43515dfdf59b70e95208344585240302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023073ba8a1560869d4830237002775dab8d50f4e8e6d36140f8432bf7e2f5945aa78bb2e09ba3f0788cdaec0874b7ee1365023100dd65ed726e86d4083e73f65d0eb25bae482548aa9000e979866baa7e23c8e833c127a6f059eb0314ba3b7c8bab0fcb1f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230041840958100e0cbf2d146b4f0d9c0aeaeef478c001f0bbf1b1d893f021704fd3f8dd93749c1cf6ec74c377111de986202306ea6c5e3ee4fe133dd39260967d9ccc39fc0ceb13e9c56bf88d022a76faea9757ada9e354321a1d07b6815bd0445d7cd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e4510bb584a1a800b7466f5e911a3e9154710fa195c4917322d1155cf4110f54d93323c0f1e1d5d18d884b9dd969c3270231008c7b24a6d74829599a010e096abe622ce127451179383d3620e9d1884daa213af2d38c6987cc03737c78dcf70601e44e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064022f5ba5c8be5472ba6501c8e76468ffb74cb54beed067dae06757807dafe5b4262139adbc352b6341f29798d25a8545e3023100e6bc50c90a3aa6a7a08a352cb9bc02e54bdd4a13e5017faa8bcbf26089052c0ee2063a72b579852619307436604862d70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502305118111096789a9ae7efcd0802f212106a6727f9e6d4c0e4ad4cfd8e04363704a5232745311e3ab5faf5063938b0545802310099601fb5d2077e6ae2fd5259593ab8ce545a723b6fcc54048b686783783816716806c05560562422bd900922788369700302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100964381f5c400ac783f2ae721f2c174a9a7bfff978f7aa1af9e7e24c3c044f18cf7ac635655ce94df269fcc20a9287f8602306ff554454738e3ec2597166ac7bcfdaf13528c9e028b122b0b7ec9bc6b4b81dff85575e9a11c7a9f03060043883db99d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100bdf669c2f82dcb89a5c10d27129f4b77671dc0ea4c498a325ac13b048eeb52528c48b83ea96554451d76aa4bc2e11354023100d9f9dfecddaa81c78437fc3ef54f2f67b90419e0f9f0d752093a490d08b1ca04d0dcb95f67b25dbda8c4d3e49884d9220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304c1c1c92d7dce60a95bbbdd0173f10be896816a2f1a69c736e9c46b9a1d295df034de46ad0bd651370c73ddd359c667302301d6ca09749019ad0e5d70ff5bea9438d4f4011b6ca9ea6c8bfaec2300a2482c5834f827a8e747993f07a7c59cbaf89740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023063c56d12da7d9e798dc229f9245841db3d54145304b10ae6ac5e8b9d1c196d723f26d5da68e12c75b666fb2ab9e0602802300ae366419e5a088aabe84d06415acd68f8ef22a148da5e0b78fa70cfadafa8abf7c4b387beeb94f1d54566f73c139a280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304ec4c1ff133c25bbc1d9b0184d920b1470b5b9cbdb549c4cc15dd9c093aaaae7bf8c3b75869e27acb600fbac6eb46f2c023020bff91d10a53a96f0b91bff7de7b32b76f39fa121cee6d6afc5bb12c87d559fab62c7e3347d23dc9d1cd9f0e24139740302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ebb3f920543ed9709ba7a6fc52261f6332ec11733dccffed443c6decac0c22b2e51bd4b777db710345e227a677a4ffcf02305382ca2e2af86fcf2e6157ee610ab2afd351a1277c32a2af3dcbdbb5363f4ca34fa09d3bd3b18e205e989293d211b36a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231008c46ea1f64fbe89a226b3e892e5990c4e2db0b9776468ec9778e0b1fae2b43d3eff48b8aeee6f5e1ff88b836f16459690230314efc5ef138ec7bb58cbe55da92f1ad86ed0b47baa5c800d4a9e5103020d992168768172a3e9bf4ef5a782ee4a37ade0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100d5dbf12bde6fad82801f8b39a735b348af6eabc322eb3de105a45d473a92e2d42990ec23a7e51abb5c73956be5bf8840023100851e240776afeca3a17260cc222c68e0613d4d2e1d255f6c2e4ba644040b009f7ef8d75c3c98e3cc544933f119707c000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310085c4a22ed5378fc9a35db05ed52bdcd2609c93f2ef315405330c29ed580256098a747bb3eba5694359925e63c10b211a023100d4117e41bfcaeb1ad55c970e3208cafe5079d80323955f704625bb1ea9f4a0d4927d820e111e041ccad1c21bae37f7660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304cf163bf1da77892e1c8f05c816adc72d324bb48ee30e9d1d2576ea30ba6bae7a415e199f6c901b1334db18248a06207023100e8755441a96030573ef469c54f066f03cc7981eb329ce1ba6e3612ede0cce02485f753cc754d458a9124f876d156acab0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023009c1ab9f65d43b4619d9238c762288e861eb1ded365ffa3a975ae719be15c2fa0c764a0bb0ae4296b74c905916a2280f02310097a48816bda7e4b0d00bacd6a92f4dbbf1666bb326ef488c8e4818f2c6b833905827d31fa320d0eedaf98940a4feb9e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230538db882c82d28c77b2ae04d584763bbd118e87ffed39158b74bb082ad10d591cb26213a7deda6665983fff215d3672702305181d60097ae5e57bf58ce2027823db94e4728c6fb9df1f89dfa71466bc88b23c517c7a2c83ca37bd8f1eb8879637a2e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100de830d3347d34486335ae96d3dfd41c1a277d3693e6ae1d24099b3ad0a96a82c114da41eff7b0e4cb9a0e111c21b56c2023014eaf349ddd9d051804ee4ecb158421909df3dede75c5e1552fb3768a3bb49780abd7c7773e34a6dca2057314f274c6d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100800e22b33cc89d762fc75667de7f481fe825fa7ca1698f50df563f489a281aacd156ff53fa7f47f64feef6dd69628624023001d5b57030e4e2ec7053fb463063ec977a19cb2080a0f24e85e10f12ffefa1e197681cc1901889b6859e4fed91f60e260302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301393a761f8005c239df2d1d5952b7918a63896b950136ff8d30e5464210d48489f5d638caef25bb2e22b3871988c11d2023100e6c94bd539852c01ccaae9bbc82ce8bf2b2d7aebabeb92ba73464f2e442485537f991310572145d996e8369c7844b26f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100e32b69b7b83477ce9d19debca27dbe46a7677568a824285ae0e9ca72d0727f90f325d2fd34cf6f1bc977d4358df879c7023072733b35e65e0ca9f6243cdd89fe6269ed88751de684bea699b8946c67c03d252544ff902cd124c91c5524cb8afc42e30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a62f2f0f51915141f3081cf25d769a9f9d804e0b9abd99a38dc031ddec3952aa6dd4fac6e0d8b187fdf6d27270c3fe7a023100ff53039da8415310c2e6fd95ac77cb4bcd52b609d48475c53323b2e786fd0217a361a79c83d83d25e87143c39c992f480302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023069a9e4c3582927b782b52e093dcef10a76f6780af070bb8806bd954930fef6ba954dc9258994baa0e0f7a984d8c13049023064b5d2ae9d501c095afcb5d9d8d775182e36a42bbcb2647a69e08ec935a8f22e7d74cffdc14768d727fdbf7820cb8b8e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ed9a03a35b921710fc9091ee9a86a337724c6584cc14892bb7beccc6d26a711955fd612cb118acd1f68eb3de49e746170231008f79f7624e1efe412a5d36154cd1792f5590a400148dfe53458585019b01a555dab5b5e852e1a6950b60d67d1b1c51380302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c55c063036d806947dd52c07a97ee7d902c142e846c80652be309850c7d8a0733012ee39eeb56105ed5c87591650387c023100ed06a0adc3190ef445f67060c4ee4024587c75ff24fa5a8f0d16c5fdec4f8f66c00d4434783ef0789943832e24e180540302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230768f82c245b7f81532cd09ca42f286fa71de9c3a6805c9f131b2e75e0a2b61ff37325cf97fcae46b212c4f6c13d67db1023054b3d8343dbf4a841cdab103cc71d175473ebd7b92203027f52c0496058c2813606662641e64eb0f8dd087b9a4bde3b00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ef08a752c091e9a3672fe8ff36a2c8bf5956b1ddc4c0f3ca56717ee3fb57ca72242b002707252d50da911a4810fbbb61023100a5ef8457e066f01e00c4f119c3d82badd7000dccc506e20c86a9ab84e84a23c4110c60a3fb56de2613dfe229c7629e110302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fe45335ebd094f2482f688d7e6d094611934a07570fe433856ec8b404527c15375ce6bd16313fdebb11d9521c02b8b5502304f5d8ab8c09ba5d81cc8a4555454a6b0de8f1abdcf8cbd7c54f810ccd714681c6bef793b4d2d1a0af8fab62cf04d48860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230568b3496db1e050c46d78776826debe1578389880ffdb75efba3b31340e825697ea6de813afa7933480ab15507515822023100bbda108c12c6bfd01bbea9b220c11dbc904f672594c241ba258149149f66ebebc8ce5e3c2c9875b101424cf2040722000302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230203c5b9677c9cfa3853aeaab930e7766280f4016cec4ea41b2736007ed8259ff0c39f21d659988a6074074b6af383b3e023066e49cbe82805cdfef4d02d631757081fd7c011bff2d16f56b2edf337b0f74918c62ed7fce7bcccb76f342a5822cc2220302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d850d174de92d4e38aaeffb9d38c40e6947b5599e1034c1cbfc35954b738c9f2f34349dcd92b16f4e8e2bc060799dcf1023013623ec13615baa32da47270c8d756b193b2120c74f40f1a1d5e76e83ea09eb42e14de995da501356488663e7a8a182c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fcd4d3994533d6b2c358490204187484ade53b260c2464736b57772c94a54598d8bae8ca6b07b31664adff98844884ab0230711a1cd1f4a624d498fd2684ef1a08bd37657d5251641df8fe9b12bffb3f750d2a87cef70c06d3181f23f832466a5cad0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bcb217f75976a073e30725f90b78ecf226892a97cbbc1a2a05fae8358066b566794ebb9d7ed285a38928465ad917d99902301c0a8abc92866f2b9107ecee016d898265f6ca10c5ed79e154a6f57417a0e694e3da46735b60969ee69fe7f2e14239860302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100da2ee9f2cc7d6f7931c403de84e973f96c9b490dd618f67dea10622f4dd339131e4db59e9c4c4bf6c8becb637bd31174023100aef16b171b7f4ec2f1131a3c64bf6e9a696811e54e36e647da4862c6c19a25d7f271c61b838214b42de4338155f4c4ec0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402302ce50e1b992fb3508fcb9dcbbaf8fd7a70706ebd2a9a63ddaa6b3f50f37788dd5ecde91b58b42f652bac9d8d0f2c41e202306d5be89b6e609644633e723da4d8412796e6e22ceb3eab077c16aa8563365539f4f81c44e373ada667e2bc50f56558a00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023032f875543f62616ec4fcab226619fd3adaa7a061095c11cb56d74b44aaab3cee8a7c0744978cccf16313c9f7d2a14e58023003cea007b2a2dfdd9fe85ab2090019aa4a57bdb7b4780832a52b0ff1a42656c65b1ad5f697547def248460eafc6c84160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100e1cc86e848f52fddd2f1349996a71870174b57b19f66a057e2af04ae563fe8560ab9057c90dcd6d5f2cfdbc37773718002310087030611dad0517af4c60178ca09bfb39a5737243f6f52424a6b82182a10e6683d845ad4d60fef7be1cda554ccaff31e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023057b0bc05bc7e89183681910e85d5f1d370aad65e739def0199908cf142c6239bec33076132fec64aa9b674a16a9357a3023100f677832ca9769683cb2aa6d0b9d8120bf59b460f57be965368f05a5c72ce646251c06a6fc1a39b313e67eff9d0d951680302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230315189050c344b45441a241216021d151cc3b34ce3c655cb64eb4d0a5167fe042907d341013f1887946c2f42701874320230345a72d39b9b6303c2f0c4e8b5e139a9bcd4df7a22df8feebcac38dcb29afcad134f32316fe517528995fa387e7608ed0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230643b0c39d107e1ffc82c16eace4d3531631499a3b567c0cc917df347c066ebd139ff3ae249f0a63cb7b9e363815e9acd0231008f624b4310922ebc8acca1962e5a945a2be12e791b6de87d2a869bf6464656462631d4b0d6a7a500fd9fc022fe4edc0c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100cd4fc75876fef4a3a1f8ee4492fc57c2f063bec4c8cd6a3fb149bdcd13035682382cc8f6dcf6a53544bd8a616550c65e02306e27b8a466680350177702b60ab8aa5fd6576a944a678a17d42fa33e8d175e4b551e2c6e7e5ea8cfee52aa9b6843946f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306bbec23d66ad27e73e717032d237ed56022ce8071c6853a404dae9aa6667c23d2382de3c34783064982b38364c197336023100ad9649d3f55137f635919a717098c8ac23b645bba174985c5afcf2f98018ba9112e9912138c9cf08adc9877eadb199d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300e4c9092b98088585db2e8ee18babd44ad103272aa26b3c51978d2f0417dc93498f54dd9ea5a38017c8892386a3128a3023021904276695717df882e517e977ae1f649f277c69e7384a2c532faab1f4bf77ab17ffa06a74d83a99a44b2f44db2e0b50302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100a046166300b5a4488a1e9eff6655abe046b12badadd0f30c0e1f5b180b21086b70bb45b81e5aba067bfd68443c69b9d1023069dfbfd6a49586114d07116e78b918ab7d6633ba75ee281f3915c0cdade7e0bc18bb034b4dbe9c981a1880ee26bc50a60302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008fbfa0686861dc21974b4b61da1b2178707d7e0a923323859f5e6a4a51a32682d831f02b107f2acdf146ce617ad6f5b6023100e7d30e663a98f80ecd7b2f867a6016532bd9a4b2fcfd2696cb51679c13c2f0d48ebe688320d68a40396c9d54081f57280302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100eecf715ef3382a0ac8a3053537f98c9d8b1346f3fe825a736f96f1fa0e145eba2bc0ed97aad9720be25bc01be99568a3023024088c054709e4e732a72948b2242d4561e08f818e8b4e0c5a97869da95a586faf403d15f108b2e0731d60ebc09ca5e70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306540acdbe8ff556afcd1d2b8f2ec1fdfd98a108ffcb6ed702ffb6aaf2383d4afe4f47cadf741670b8b5748f61e946c220231009a2ab67aa4f23a82fb314848a2a152a0469fce6d6ed4fa598602e2a4715a80c3ed93347f89c7df93e99f46c65b04f85f0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009c004732f49d8ac74166d1f5d6d73067db049ad1c30b969e2ed0b2d2e9ac1e3cd6598ec09d5dde17db538ac3fcbe9f0202307eda0ba9d0355617f55be2e1aa70471d8b8670b63c2a34aa737d64d5c122e8a023c0e9c26cda813c2776ec3dcb3948c70302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ec4d00d75915abf8cc5e90b38ac1a24703da238c3c24f3d43c259e1e8a7fa21b24b5d8facc8a0c8b3be1f18cfeb8b41202303849f38a80fa7ec1df81a458ed1ed0c523002fc5f87ae84252d6c512152f43f554abdb5ff02a7f0dcbb5fa93770f088a0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502303ecfcf45d6632ca201826e29c976cff7b726f37dc0d81ffc58a42c7aec64081fbcd2d563d471f5cc1669120f27c73e57023100ecbff409af616bfc4983739eb39ac20a47efdf10d6d07ef210a0bb77c9c265a29ec684f83e1409819d17b9ca960e7f2d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650231009fbb1afb5a6a27c2190424aa061c20840bda928fe73eae1424526c5a662d95a5fd8934681d6cd16f962253e86da46e7502302e8c7e40abd9f15109b2827ea8085f6046659bdf7e5b5f8997e2ea007ff6850a483af8741eb5bccb850817861526d0120302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230668204f9274d065a5b90050a925055959dc7912f330060ee8015df0388ee702136a502bdbbcc7afa4492ddf821c1255002310093ee660495acdd89d20a010fc802ef7de9222c3fa8987f33c7ac8002e5fc8f7d53d57c4dd8b5c33b558526c37bc91d780302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100ce5d523d263c41c852ce051b2f333c5f55ac555698cf37e81a78c42e4234fddcfe87b74ee594352f13336a0420377704023100d3474817e677d07f96f1ea70386389b5827a0ad0a9f3384f9da0a6637322f8007325fc298f484260029ca223afcbdaf10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100bbcc36dd02a448d8eb7e30cac0155fac9565dee8a837313817f1c99ddab9f3104c787789d112131729c26d31efe0fbe802304d18e7546d632736e9606c775203adf89d20289afbcadd03ab859fbbfe422c572bbe6a652c058ce9235b61b4b6747be00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300626f10285f885e20b2e32b06035430ce3abddb20768f4b47298a36538bac46384c41b0c056446a34d819bda5554adb7023040c54b06f4d253998b05d56c4f5aa88f2d6001c065398b94dba87a356a494f331358724a887934fbab8ecfb4d4f8a4e00302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100864acbd1a0b173296117053677f6a4bd090a4bb7c466f423a74b37670f5007fb08b65ec8fe6ce9b9614d5f2e16cdfee502305c033653e89555f5901a3c3f196e9e3bf5ca570b63cf784e4f94bfdd52f595a5cc0891c4c05eefb5369a21cb309f89490302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304e0b83ea491e0d731c28861b6cf3d84126f0094754e7acd5baa005d4472197b8d79110252f2609048b79bb97838a4102023100f1ea5259ec914cbfc4088fc3988f096ba2d115151a10035b52b6759dceb298904727a74253adb76cdff2a16d88c4b56d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023074b667fe8f97d1a3f28e568d9cf55d54c962a9fd5e8c27c79997a4ab9c44736a8b1555cf8ea5929d7df8cf8efc02f93a023100df455d34299f7fd5d77681f2c3f938cc91779090f267c56df872f458ea233117654791f07fd4abcc93bda039d58f5e4e0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301b4069ddb7973aa24d69cc2da461a5adf2d330ec55de407b6f454e5581efc1b0a7cb11d25272f2b1b84672290edf86e002301d2851a0ad849e52951c44bdd02d78e53d835aabdd89388f975396207488735f1be0b9a1dd37da1d18348c5fd6b346c20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f6a6037b250c996f2d09a40863e9bf9ed1c0a2b43fb4c50f48590fc33918754f84383a3d70aa88b02137ff16439ff598023100e45879903738ffc92f3f3dde5c17518c9755d41c65f8e59a3a83b1557e81ce281823b169f82459bdb41745b08fdbb83d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300103b9e3d7d9ea1864f7002104e599b22c36920878a81254f7a31262e36df7119a8424f558fd0e99c6bf6e09283090c7023039e92ef9db75d88fdd9922c10ca7ef3690452069b5a4ddf548e97b9eaf3764c6d51e770e5c97c823875be67c5cb97b3b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230071ed195cbc91ca6a6768605bb00cb33c88d68ef7b21ecfc44882914c38e4874e83931abbb5d1845aceaae95bdce8f99023100e3e5998c9f5e0bc4231f4f0d92047eeb92d7f1443e724a1b0cb642681e11ba69da3f7661f484540d020417a8bbd9f4730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402307febaf08d9303267aa2e73e0e0750bcbca19ca36d05fae7b80e4c0bcf33a304e4e1917f426adfb9ecc3b0680f936fb4202305202483859d202bacbe574ce516423385eb3459af1cf8e7c8744cc31f81bd860d19664dd460ccc6226f85cf174ba19dd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304ba2165442677235d5a561774d78253d2cce045cca4c1af957f032655e23c679bb439621ae9a9fd204ce37860e6f2866023100cba0219cea6697bd0cf089cda33cf0062367f8b7e07633670fa59570c97e80de615a242321956e8dd2429438b2277cc10302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100ce421265e08a0a9a61c1f24f7f6b6e590b32ace7b9f735b4ca01d02ff30bf8946069827880bc65918f4c45727581b27002306acc29710107e5e905b873708e295cc2d856456d9216ef1caed2620d0d8797645379f5825f876e946417c93882409a670302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a0ef7b3bb1fc9c3f5f5b650ca3bd259aa3402f8872818d6a8b92f6c605fa41b4639a3ed91075dc00796ce2431b232585023100bd94e0ce61d31bcc9a4d5908cfb79390b9339fbe76e4005e488f0d88aafe81a41fe9e20fdac7caeb0013a53f6d8140b20302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006830660231008a82ce5a15b3a737847c85b77d080c9b5ab5595736faefaa6ade7427eedb5c63e5817336459a6d5fba005f4ff97ab88b023100a83a62a9948b6320ddd367e5fa3b557eebd4574d44146699e2890ee7506eaa43a9e8eb4e2757a6047d8b267aa6c6f0660302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100929f5c199d0716604bb77a7b119078f5ed22fcc05e0800c85bd60e0afb271a19d78d8d35d2f0e30f00c026368ac0578602303ae9824944dafa8055aa62026cc8370dee05f0ccca74e234175a77374127451cd53dec5e83d446e3f0f1e275effed6430302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402304336dd2ee3203b81096a6886c902ebc2a93ac4ba9628eaeab52dd353183b9ecb54cc1cb15a9a2a0cc79b2bbbc22a2397023073ac6d3730cb9f3f9d9092db106057dd8eb2e26f3c571e514572653ec2d9f9977260d9919867841d157a715ee1a9588d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402306112fe728990aac16f78228241c0fb476bf21b926167a935d2f79b1a42803d5bbaaade52bdb39dc33fd70551245df22302301e43d858bfe082bb3cd13ebebd6db537d435a5138e8909278b6a21b1d64cece5df2e2f66fdf155ea6c04496d5ced185c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402300118716d4c9004a5a47b264d875d0c32a9727f24faba57b39c66a372d479dae8c260a7dbf4f1585ebdbf2f36335fa79002301b5b6df4e23502939076f1236eff1f5a482b7c4a43188eff740b4b6f704882ea097888226dc40c2c6138110224c636730302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230716800f6ec78477175e6897a1e01c7d88bdb2fd9cc47edd851c81236ddf92a74cd252ed48b12a40438f1f156d41154090230790f0111518de66951cb35fc73fe60955d00b9388e68b60b720635aad3ece6cc0b42310412e59bed31e3119751ab50d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304872af861d397aa2d44a393dd8ae9b6fc7b7591dcccadf22ef92430e59d99aa7ffd8d34bd4a7cb472a1bc9798ade15280231008dc77aed4d887428775b0283ad993a55ee584f7e5dc10d954060884226fd35ba850e202985d5bfdc360665769ae0e5840302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502304b7d5218f466e56be7a1d9d9d8f9553f9347b3d141974240bd712327255ebed5f2689bd35420673c041bb1ea6114d719023100a176fc7f1dbd31bab9caf302b538eab0de5d07ab65db098905b957bd2fc80983a903f907dfe1417be937f02a3cc5b7cf0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023022caab639c316172d25d994f7e9d6019ca2246ff5cc1ea191f85fcf22a767878968c510e7b136d8ef4fcbd36df769d75023100995bd0d6eaf709957a8aacc38577011c6bd07fc5ed0c97d6fd5bf156eadc49105172981cffa48ac7e2ad20a5b9cbb8520302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100c5b61bdba6e8d58193b1c3dce21e5ac4d267ed73d435a57a47e75f2531c980af3dfbac78f7aeecad3544b0b43ff2ac48023018feb30bc901a6a0092e18c6fd4ecd51d18301ca28df9da5fe19cc07d38767f7f6bbbc24943327bcac1fb41fda0f08d40302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d742adc4e069621160b99ab573b787fee023f7fe95c7cae37f4bf3867578246771223785a4dc79a9b3081ad97a2be8d3023069df9437d0d52f2bad9bc724d706adc5c5cf4da1b9843f4733cbf93dc34fda89dcb7c4f5790799893515da4fe22a41fb0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230612fca2e6224aa41bdded677454288fad19b4650c62c1f8f88e6c0d68ee206e099f90bf707e72079cb951494ba801990023100bbfaf9486d230ed6cc7e11a85df79033648af97e0a85eb68023383c8f70e616ac03839d033274dcb799c143d950ab97b0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50066306402301c6986061064a9914802651e2232ade76fdd2941d35b0c7013b3aa43a40a93253eb0366e603f5cf7a92fda3256eef5da02302a1c2ef74eedd367c044f19b52b90d76eddfb74755280fbe10c1821f9df5a09ebe276bb452b10de1f1e09fb758c390020302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100b49dc3e84e4a0cda920bb140d59f8eb57f345e3da0f08543d2d051cd6385b9b1b8d0c78b966d7bf2a0a23f46e7edf68702302d19f41c5624a7751a799e27ada960d5123b941c8d7cfe7bd1596c516b6708fadf8ce6bb0c52c7ae14250de42aa1b2dc0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500663064023050cad6134150f44d779b5c6952ef4e7fe3568d019ba0f40122b148fd39d02d72eedfc5cd36355f71896f361571daf7f3023032a10e8e94462e7411cebf8efa6d4664d01d00b0776ef4f2af6dcddf69b61a6047f8cf717cac79fa67954666403965f80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100dc706cd723a6b30dd1a74bfa5936ef342032ae31393673184e7fee3468096f9917c1e2687a6ef59ae8394543eaa6c6640231009781e06857dde4499a959c721ff20f81cb647210cc168e39a3f3ac6a98274615eb27cbb75a199e15f16dd6a4c56fd3800302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006730650230464071e663436d59dca0aaaf81fcf95b8622b23e5e85d6ad6985cc9a5f1d19a23d06e9f22d233f7c32b7d28c39c185b7023100e925df11869af8c2c49790d20f43e5cfc48dcc854a0cbb80138a0b28509bde16cb045481559ea615cdd5cd4f4a8788540302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502306efbb32a5c0ed93414086d7f9e0b484274294f4212918bfeb74a2028ea2bb3e7a904995ece0cf6a949f676b373b53d12023100ed7dcc83d29e2b58b79c19e714c4206578aadb6e294243445c9a6fe18a14f1ff9bd517bdcd90c9bd7cb8b7c1f9c010d30302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100d2d60b7198e53301966bf0916ac615072f60bb1539c928151cec6377aa1dfb4e0fc804d839959a83208678e13cd5537d0230787eea20b79960729974188d262aeb5c3ce13d91e3396bd7f512099ae8043ca6ca639692670d2d9ea1acf8f98bbb2a4d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301f8f21a9ae9f82fb2aa45adbf430ca5cd891f2a41b8e9e0dd9b9e24d6d024f20bdb68fe0d3386420677d15bf2b266d51023100b3383d26377b3f2cb881b924651669369aa42f4ff66e703f4a0f5af84ed438cf00d9cf7763617d46beb03a343a592e720302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50068306602310092258bf08fa0663db2044b0dcec2fe5149f8f05de5cc13c37bd82a1d1624c30d04a1a818b471b05db25ae794ad56e02a0231009fe27f362ebb236d8364a109db81fb851cf0e87477906cf8fae47d9fb464736ed4efae8da0429e3ea9e879b90f45c3dd0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100a1c3b5405af8b151a4e65cee519190024acb472c7cf891e2c480055fd1e41bb6f094dac0afac35c8e6d5c1bb428f53d7023100b4a0af41677e22065407949c7f6faf029fb69da6d1b7338e381fde7a333981a4dab27c238211b3be3c8efafd701ab0160302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100c7236b250a960f9c20c8cd8baf44515116b7f90369b0d06a18391644014162b4f5f2009db36d305f34276e57fdbd768a023100cb862b5f810dde0c77d163f9fb4209eb6aaa66abc59f16e196175fa74f6ad87c12e65286a1065734b596ffae45ad06070302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100831710d10fec6b4533249cdc7c5a7c615730aa661ebf0f180a454dd2ded437add71bcc917adc8f251063c642122a10a502303373f40f3ee30d40ae7a62a3c1f394d63da20d5a060aaf1551b453de5be97a5a0b2ab53044df50679d4d0d956f0d79ba0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023100fdd5bcd212f1f2f7881afeec294708493d0a14915e7176cdd3c58c6cf70880983d64a9f5577bf36a98cecbdf83edf8d5023000e188d9e319affbbe37911a9abf6a06f68345939b0c39a59609df5fe5a3a7df1b6f27647c1c6c87d83d5e8ec7fe97a80302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500683066023100f75a28cb420a90ea1f928cd4ec3c1d2418df8f69b0e7f37ccba51e9a337420d346df2113d1a6b63d84ba4d6eab945b26023100c2e30eef04f524ee3734a0930c9f51b5b846a19d99fc244d44916241c325924602ec67973326142bcf34fa12052bc9d50302047c435bb500673065023100f1bd1bcecd095b9ce337c7bb409064524cf63014787900948c2bbd8b01684582057bf778e3cf9a8b4b847dc6dabacf7a0230500b5081489b49f2b1c5b1df4053b130da2eb4b318fa6ef5e25aeb21440a566f15a636adc4cc31d4cb97c2cecb81945d0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb500673065023013347b7be5bb09b3a5919073b0494be34f4021a7b4324e19e185db5a0e2cb21bc92aa6920711f3ab5c464cb8d0bf4ea9023100b78114e1ae4cee4aaa8030baf7a1e6045eb14a1cadde2eec6fd3027910d7cfd65ed1b2eab7a4b86ec40961aabdade7ce0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb5006630640230117c9cdcf9bdd00901b3b0f13173bccbae2f86f10b6bd9d75975c904b470c8f274475cdb12cc50dd97f55e05d01b27f602304a5c1275c611c1b55702fd30a4fd74200cdd2d83f401805ac6e78d7d93374dbb542910d966d97aced96e6964e49bb82b0302047c435bb500683066023100b27e53091cc02e705d468a85cbb05186d1d859908a373562d6f142329f8e8a468d97c4ba7c9bc929eb5b1162d21ff98c02310080e33cb788ceb9794f6835f4d0831f2ef51f1f9c706532b96eed9d3f5eeb40788b0fe003100b31d576b28d23d61af53c0302047c435bb50067306502310086afcef6294d3bd27df1be29cbd843bf4dc91cc18f851ae9456ffb35fd5f10e30f89df46bf15df53a0b9044728299dab02301a2256321e9a4dd748f376e7db31f27e6adbca835ab56bbf411c5cc63dff5e4cde9bb669bb3ed1dea2270bff0a37a9250302047c435bb50067306502301a08e8661bdcbb58b91d52a2a16ea2d81f5b9fc2fa063382f03d4470cdd893d4bdcd93c66d2e7b71a9c4e5825cb46801023100c9c60ec8190b261b3d4e5cd37df26d5cf863f871bd941396992c9f2f4993df60e9fe3ee9f12937e3602069374faa8f020302047c435bb500673065023100e0eea8b94d748b86c6854279487ba5bbb335644fe83c531377203cb7480a17b4811f1f56ec7991616575faa1bc4bb8a4023024b86d207997104b8fb5270b8d723cb842f8977471a9f14f236731870d39b8f4cadcd120b9393b3629dc9ef828c5e3090302047c435bb500673065023058f75d8c3f5acb0f61b08a253ae8a51e739f4a69e03b197a42d490010c3fc11b269a7530e3991f2a97fb5009ac125671023100e7a956a5cb1b1f425662c2455923cc67c47fe0857e0dcd5797c9325c8a77184b0e973cbe60c1b5780d9680074bf827ec0302047c435bb50066306402300f5db9467ae3aa8df5e300d11bf6a487b6580b2fe26fc8b30c21addfd56dca0659c44ac6714619a98366c0d0f51589ec02300379d3284c941d3101e08545156b381d8057a89131e819b5822709c743e7f9be714274c387c3ca81b70dcea861523ccewbfY U]gA-1PkO*Nɜ5&CI %.!f(FQ]VO:&'+f)+U51jA@ԚTwu ]Pgso2\bāOD˺ 9JD3-jn\PaA Oh"xuNh.e`ۖ?<6ߐ : Q m:Q{F$@Ife:gDoh⡑N~DC7V"s`߮+ Md\l^8iیT')s"}I'JtHK-Ѯ<)\ x-i'b &.yřp}idD(lN]*JjHTb\X8zf5zJ)4PI TGiHؘ UۿhG1CyNό91p= @c&br6UMU4}a,vz@YFnq;>}xғR>p>h?gd  b ? RlH$H H FH hH ?H HHH"@HL`(89:6>2G2HHTHIvHXLY`\H]H^u<bd]ebfelhtHu3HvU*gLgPgggggCkernel-devel4.18.0552.el8Development package for building kernel modules to match the kernelThis package provides kernel headers and makefiles sufficient to build modules against the kernel package.fppc64le-04.stream.rdu2.redhat.comPVCentOSCentOSGPLv2 and Redistributable, no modification permittedbuilder@centos.orgSystem Environment/Kernelhttp://www.kernel.org/linuxppc64leif [ -f /etc/sysconfig/kernel ] then . /etc/sysconfig/kernel || exit $? fi if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] then (cd /usr/src/kernels/4.18.0-552.el8.ppc64le && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiVXF  8wUcn<y92%# ([4 8!Lxj w 3pM/& pWXb=}7tf ,TZU6GL U<; 9 PWTTL`9 lT50C> C v> i3w(+YW&rR9A9 ZqU4 +#+ NQ}yB tou&TE6gvDFMZB/ DZ Mh/<)zTX +w\8N$ixV B 6 YDHL\g8g6 4$,l 4:]<e M% _^XRJaCx 11xXWU3^5KxVPVVcX e7\s>FNBa|}S > 92WM_o#3sXj3{j_w:Xe cqknH~ "ER|3.u@@dzK~;yb ap{ m8?6]]R<<q yK< aX=cZ y jz'^}$m kjr&.<KJ7[ m #6[qf# Z>I#^lei#FI bv  f%&G0 TT) Oa 3pCU   * i0QA+ PA]w# MsD+kt K7} #ER!w\ "A& iUJ zK)  \&qa, sv#w1+5l CI  <VNX $J'T_NGv;%r%@&%P WG+\' 7n |z(  MJk %sh |_GR "+6C ]G&HHl  :7'G4T -x Jx U_o8k=] n) I }> o  5MQ~e.})f9yu @0 )  }\n l p  G 6h5$  u%:V' ""##!&!!("!! 8A& _4,o.!a7 5 s\ P Zh'-/_ Y7 *R 6#|t5 M[%+TJ=K =qk  815-xn#,Gj]nk C hccso$G+gT E d )2bcNZ_|qEXLUmaaa"af; l9G&b&[$!a h;r 6[pi #FQ;" ;i3leS@=14j Oi<&$|f/x[X[52u,5'%`%T'%<!gs  *C Im9>/#Lk}Y&nCՃ (aR9N .kie5l B.IXo$8[? %UZ> 7B3 Gr3VW;2 fKvaMH6l:O "2? ,.z:i1yYtX/; aXh-[A?tA8d6?qXk`%}!(\' jA[65d<\pL/kg= b]'6 eE6>PN AP{ a\AKGOTt:O ~2 fD*7`OJi' Ac%z*bpX.!x,b7F G  ~ \r*tVf=l   v fVt\"uQ 8&F!b[^]xk WiW\uk05J?&imcB S F  ag \ W"}Q|gt(I  1a\Z"*hRlm>'YJf e  Y#tUUKwxq  0or=xh, [ -Fn ~ o  b|H*'b4s/ 2(M-5=%{y kGpR %u N=(kx,RYb2(ZV wR{UoS hT-S LX~ gcex21 $ i5TC yv)*p Piv ~1 9;H[;5& : M /H3_<GSB8 _4^f0sqtVihO3YTcU< G1 24L;Qu'B- c4q*#!AR^ ^p;+pVcI TtZ% Rk ew-pF? b^QF^ /a2x\R>}j9:Op ' #"Z  05 W*b7/X,/Z)[KUu=[]%PfSG`Z"V$oN.ayIL &~!Etf[$'AQ)ymK6Jpm  w rl.  U6[q UE zk`c"YG 5BR?S8a[[ ~vXsntTIh; )we`WTz[4X({czmX_S%i*=Ud;E(4 FSJS=W+ )-k_.FJ|"J=uQNiMy$NX7| AM[$eQo5,)RMPBT]'+.#YD/Epho( # H H U^ 5eh@J\^(nSiiiii0e^8$F\mOzW . ZKcHS@vu[|zN|Y[_h_ `;vX t`' jzYNdXb v59!N\y]k<\R oTL5I&]R#`B5;"w-Gc &9# IO>" z 5B- s`GaOkA]!hzw $DP<6i  S,=]gFz 1KaoN}S$Q7W&&&f2Thf#  h_) 3m:9d!~od7|jQ }oN` ;7:/1-w J cq% Y &Z(xj@-\ 5i La9~~f#^ 'Ism p<]O}f@nzSYnkQhLH18 hD{WMhga-/zӫ +juqF D% ! _Z % R6Njo<V0Z PT!  &-ha$d|R% ;<)T39QQ'`b|#]?J@x|M9M<a Rqy)gb-5a[JJa|!{ ,-eA^a%W Ota_ (GG' <\ wcsli>i}-=~D-3/'  2aao]]e8]e3xb^U2 6/o^*;E4)y@|U +QMJ&WgRC 2UZS*E,)a6@vSD; {E+0=!x3gE j A?EBg[AVa 5g'pV+[_UY Sz  -QuFt M5 mKew$ADK!\8Vd nOcOBQlH9|4YL|! *_ n0;d ",t#zA;uEz#s~Wyzz ;R ITWp`3y Mb}I9*`}m r;$T6u@  hJdhf3= = v2,{b= q#CAvSZuD/-c|NIwW R s_$ G /S J#57p'$_ +:{XE \ P@ < ")" X .P_^gd%q/Vq^! o\2VO L0Yj4NIt =L6>Kp4 6 2/P1HV"I)"./M N| ~ { # j%}j?4=f&'UlN Eo [UA Mi%, {h}4?K!A i'?_ g 1.,=>  P $UM O+O?8,]2  'p)5N&&!6 %)4FOL&x[ WBK  / R&g R$' K.!G] ; 7!Z =2]>T AtX ? cd* {19u \q|#{$:%u M )0* q " o ,%E$ ?q+B Vva &exv ~60! $P2H!~1=%M.$~041!PZ g$N, [?o/c k,#$&@%$NJ"?%t4)85B st c  IRx Hk  . R T!,(4*#mS. M$   ,uf$%[\e*F K' 3h=I ]M "f  4x~  # . .@9g+!gPP<)% :  P 2   J g= 5L   (ar # N { ? * = 1 V  hGM N{)PV?(n>?Y^-b    [!F. t^q-"b zo (>6 D_S{ t ".& S'  > Q  T?(&-P Ol/ 0 (W/4Y/ dX+ e<Ci5Z8bCP 8S X %>Q;*#MjxIg6 F6 W8+ Yte46} DI M#^A"nj'(!H9K+>N$:K/.jjpN`bE-GLh ,;:#bk m| U "nZ638t i /aen NKb<1+D")oL~ L*1[.1:n$ 3 !2LI+ "c"+ npT+a R *oZC]6=k("W;G*UCgKP' ]1 uGp)gj/_ ~Bw &q O( XH^ p(X a 6,G)B )u< A'&>@ /%$) 1ˊ# k+!K6s$ xS@'m*1AWN d:tP,S ?nc>.]}^T];fO`  UF23#zX + zI0!8 7A 0 i=i;v5 I72Z  's)=+%U.lL yP ?  iRA(5H@[itZn& `| + e f .!&2J:`-< Z 42}?@ `?Y f!29~  6Ez1 ;-#feJn-q+$CR7M?a=a+)Q [oa! PjXv8Y[ 8 PM 1~c= v< 31[| { "6KQ K*3]cW-1 r C!/3 !' _ I/  K %= K&v.m$s }i)3#$R g.Jn nqTQ 1 Ni|!;5-~ A `}5dRAm* f&'5V+.7J 1-Cd{!3 /%t ?)cU M2BVF *WS 5 i V9Y! ?11l? ZX< "!}?p +~4 G=1:9 V1@1w/TE 7X0%'HO2_ZcpF( &S< iJ ~" " T1    a z]' N[fM"%H !00lQ 6.'/" Sd3qk*(/ 2s@i&  ?E 17 0'seC N 0[e% t[#tJ0  h &+XNcB `{( K 2o.W#W\k bO3|  0w=1; $)&! M ?5xMmJR8Bt f{*21 K;A)S q љ!6;j0u ?)~16G&<[R("  B\R @ c:uI5 lr# )yLH4(f  MfD  - tѻ4*p& f + 1\4k w c~P*G  X f*0` mL w { 9B \ OG vGa9u<  fh?LH+c4 zB dDvK*R\ R +% %G{ (,i l@ J|S!y+v/! E  I w1  w<tV:F NCg# $ "l7-99/|JN7* \KWv("=pN u8K  $ ,1 0TP!S KE!je !2 t \  ;,L?`? @5@%.;7P"h N3-)(YU X%= [ 4< _Ut-n&:2Y d J, 86./jhB  Qa DcI T 0A;jM$C"(08a TGeB!$!WG  K)9F:K1e&=(t, o .; B lX2  ԯ<dGO c!!"5 Bf_vj]"Nn{"$ 5S Z+ TL:%M+0Cu/kR\$"7ZU K?l8 v<IFS Y; b041 Rx , VQx$D R$^<G  Lyd;Wx M cL'uvF n"PK ?Xpq  %414a "/&D< $8 %\*>ao );&_ B8[ j_ ,D-CSH9(,W{I,"s- [EF{ZFh$" 2 OFyA-M@S8D%8L UOB Y,QORbY7FS p> pE5K&_T#-) )d$ }J?9Y57TK/D & 8d&3 [ o^ \^8"w @+@  cC CF [a ' Ic)F) %rW+$ duK6=t"|YN <{d 3 0 9 9 x%c#N$),B;@G*lU$4>2 , H>pp Ž $N\>hZ9 6DA9h(> G5tb !Z& K(F+Nb Gg+t !L:Ks#  5h6JjWgj.|:kt 6Z D/3po>]32>3;[+#c *`@>F"7h` ZN*k& '6bGM) w?2 d7z(@5$ gF%57 ~:M4&`m$%kLO mYV"h rRM l+ p!4 k pN/@s6 $ !O`|,E%  v 97j 1y Y$! 6-6&dV ,R 5$76`+ o"DSWp%A*;97T~%=GOJ=-Q 6<;b :?6N*& *1 Wy ^J jQ y@Zd  z']RNU jj Is'\KXa#F"x> 5y(0a1:IJ (d }fB-;_qX-P*z,?,W $9SB !  WRfkj5JE\I v_D Dw Cyp eSs @a4@4O%$. $ 9&%0ZBLa N0i 3~ 5 4~8p z 47B  Sfe># ]{5}9.Jg<3FE'4 #-%pTY4 qT-' 2paD{|0:D4 z4u=+m[=!<#ypF:l9' "  oo ) m1`?- v(&-!^   N@3*?xi Pi& _ia &'$ k.N dF%M/C_ - )  d 2M'A.U":upB_^)64u 2eLhK"pH q ?PRy]Bi  4B]" ?^Y[(>#OW:HVIi<x4 z k$rp*'rbD' +A c #;O h w -!;h @(1 \,// 1 (, .$i z!= #*6 S  Z  m/Ys ,a" 9x Z ;1F J G# $# ;  9 Y(Qx#:1 C [-'B:) I,c/CL/o ` Rp~ H_-1Ea  I>lpen&m .+)^ >W!#T:38g`/K Ya5wr e @n Mj=O2L P.s rel}Cf  Kqb R /5 U pf E0# @B b/TC  ',;W"$_(ruO:"s4 2GY9 5J@]-, n s"'4![E9n a kY|Hg9+f l-~ ! *xLIT G { h 76q _ }'O o>?75?K< f +hv QU j y6K e1 p p0 k m iS C . ; c %'JxE BB = y w (%4 ju`#Qp-O   r 3-Uq, M?<vAwY  E-)8[" #K^ !F h? V$B5w -*'+ x^ 2PFQ3o O#S48Ks@)I3 iv HOvX [J ~@W i pnh?im$UN : $r X*7O   - W  )t<!P "5_$ Z# (j R#(e8 ,BrfXPK D& (3t ,"e9Z$@/$< -K4#)e(i1  jC O[ JQA{JY h" cg O62K, i)Df $Xx mg  . >:3 ;. u ol%DD 2 $R$!R q%6-) : +D HK'0O Ou"q<RRW˄5&@MI+s bv-\jE ;{*4 65y) t*.4; sqJ.ob^ #M? ` 'C3,*E ! h6c 5 ! h1$a)  QD 83K4^N )KF"(+F @.G!2*Y{ $.] BY w67i4y  LYEz: ` Jp+)$]sfk 6^;eAOAb 0s zIo<ez%/Tfy/~ e bZ`4  X PyUv( ITS(Jnt1_!AaQpKRe )$*")y#[8X&<Be)R]",Vt̟"$b39n%v2*sS: *z `!+ |Ig L/$ ]$2 , 4]8(dA%O7;A-/8 5!{ :s%F $I F ZC O.PH Xdr$(;orV&} MgFs  _ j: *$!"3"M!bU!VI,# h Q3"D  !*. aVB^mSBe1BicYW72J/ %!  yHZ ]&;Z 6-%d) u #| PHVx=rdxh&C d*>= e+#G xmU8;S+>x@u/J\6"/O(KNUA- SC A !BM Q! _B`z 3h#( Q DOl}96 h d/4. e_&' /BAIkpo  '  (d 8*X[&= 5 2.vB c@h "( .wg , I k*< +5k'.s#}6wW[i>/7m%42|1C I]e)u0:L' rYHE W &&>QW^-]Z8t) | Y~z7zYbvA 0:y k8;@ <4  %&Q%)FLh1U^r'mz-ap=gH^o}mW | u!% G~y$ wt [>K( YG0HI0H0 X)Y)T ]r"Q=lAHhpS2T!bS|<J_P&wd  zW}E8a er<VV WX;@$6SJB$0'3)A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤AA큤AAA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤AAA큤A큤AAA큤AAA큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AAA큤AAAA큤AA큤AAA큤AA큤AA큤AAA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AAAA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤AAAA큤A큤A큤AA큤A큤A큤A큤AA큤AA큤AAAA큤A큤AAA큤A큤AAA큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAA큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AAA큤A큤AAAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAAA큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤AAAA큤A큤A큤A큤A큤A큤A큤A큤큤A큤큤큤AA큤큤큤A큤A큤A큤A큤큤큤큤A큤큤큤A큤큤큤큤큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤큤A큤A큤큤A큤큤큤큤큤큤큤큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤fgf^f^f^f^f^f^f^fQf^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^f^fQf^f^fQf^fQf^f^fQf^f^f^f^fQf^fQf^fQf^fQf^fQf^f^fQf^f^fQf^f^fQf^fQf^fQf^f^fQf^f^fQf^f^fQf^fQf^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^f^fQf^f^f^fQf^f^f^fQf^f^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^f^fQf^f^f^fQf^f^f^fQf^f^fQf^f^fQf^f^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^f^fQf^f^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^f^f^fQf^fQfQf^fQf^f^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^f^f^f^f^f^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^fQf^f^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^f^f^fQf^f^fQf^fQf^fQf^fQf^f^fQf^f^fQf_f_fQf^f^fQf^f^fQf_f_fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^fQf^fQf^fQf^fQf^f^fQf^f^fQf^f^fQf^fQf^f^fQf_f_fQf_fQf_fQf^f^fQf^fQf^fQf_f_fQf_fQf_fQf_fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf_fQf^f^fQf^fQf^fQf^fQf^fQf_f_fQf^fQf^f^fQf^fQf^fQf_f_fQf^f^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^f^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf_fQf^f^fQf^fQf^fQf^fQf^fQf^fQf_fQf^fQf^fQf^fQf^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^f^fQfQf^fQf^fQf^fQf^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^f^f^fQf^fQf^fff^f^f^f^f^f^f^f^f^f^f^f^f^fff^f^f^f^ff^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^fff^f^f^f^f^f^f^ff^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^fff^f^f^f^f^f^f^f^f^f^f^f^fff^f^f^f^f^f^f^fff^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^fQf^f^fQf^fQf^fQf^fQf^fQf^f^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^f^fQf^f^fQf^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^f^f^f^fQf^f^fQf^f^fQf^f^fQf^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^fQf^f^fQf^fQf^f^fQf^f^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^f^f^fQf^f^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^f^fQf^f^fQf^f^fQf^fQfQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^f^f^f^f^f^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^f^fQf^fQf^fQf^fQf^fQf^f^fQf^f^f^f^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^f^fQf^f^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^fQf^fQf^fQf_f_f_fQf_f_fQf^f^fQf^f^fQf^f^fQf^f^fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_fQf_fQf_f_fQf_fQfQf_f_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_f_f_f_fQf_f_f_f_f_fQf_fQf_f_fQf_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_fQfQf_f_fQf_f_f_f_fQf_f_fQfQf_f_f_fQf_f_fQf_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQfQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQfQf_fQfQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_f_f_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQfQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQfQf_fQf_fQf_f_fQfQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQfQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQfQf_f_f_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQfQf_f_fQf_f_f_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQfQf_f_f_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQfQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_f_f_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQfQf_f_f_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQfQf_f_f_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQfQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_fQfQf_f_f_f_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fff_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_ff_f_f_f_f_f_f_f_f_f_ff_f_f_f_f_f_f_f_f_f_f_f_f_f_ff_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_ff_f_f_f_f_f_ff_f_f_f_f_f_f*fafafaffafaffafaffaffafaffafffaffafafaffafaffaffaffffaffffafffaffafafffaffffafffaffaffafffaffafffaffafaffaffaffafffafaffffafffafaffaffaffaffaffafafffaffaffaffffaffaffaffffaffaffffafaffffafafafffafafafafffaffafafffaffaffaffafafffafafffaffaffffafffffafffaffffafffafffaffffafaffafffafffaffafafaffafaffafaffafafafafaffafafafafaffafafafaffaffafafafafaffaffaffafffaffafafaffafaffafafffaffaffaffafffafafafffafafafaffafafafafffaffaffaffafafafffafafffafffaffafafaffaffafafaffafafaffafaffaffaffafafaffafafaffafafafafafafafaffafafafaffaffafaffafafaffafaffafaffafafafaffffaffffafffaffafaffafaffaffaffafaffafafffafafffaffafffafafafafafafafafafaffafafafafafafaffafafaffafaffaffaffaffafffafaffafafaffaffaffafafafafafafafaffafafafafaffafafafafafafafafaffafafaffafafafafaffafffaffafffafaffaffafafffafafaffaffafafaffafaffafaffafafaffafafaffafaffafafafafafaffafaffaffaffafffafffafffaffafffaffafffaffaffafaffaffafffaffaffaffafffaffaffafafafafaffafafafafafafafaffaffaffafffaffafafafaffafffafafaffaffafffafaffafaffafafffafaffafaffaffafffafaffaffafaffaffafafafaffaffaffaffaffafafffafafafafffafaffafafffffafaffafffafffafffafafafafafafafafaffaffafafaffafafaffafaffafaffaffafafaffafafafafffaffafafafafafafafafafaffafafafafafaffafafaffafafafafafafafafafafafafafafafafaffaffafaffaffafafaffafaffafafafafafafafafafaffafafafafaffafafafafafafafafaffafafafafafafafaffafafafafafafafafafaffafafafafafafafafafafafafafafaffafaffaffafafafafafafafafafafaffafffafafafafafaffaffafafafafaffaffafafffafaffaffafaffafafafafaffaffafafafaffafafafafafaffaffafafffafffaffaffaffafffaffaffaffafaffafaffafafaffafaffafafffafaffafafafafafafafaffafafaffafafafafaffafafafaffafafafafafffafafaffafaffafafafafaffaffaffaffaffaffafaffaffafaffafafafafafaffafffaffaffafafffafffaffafafffaffafaffafffafaffafffafaffafaffafaffafaffafafaffafafaffafaffaffafafaffaffafafaffafafafaffafafaffafafafffafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafaffaffafaffafaffafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafaffafafafaffafaffafafafafafafafafaffafafafaffafafafafafafafafafafafafffafafafaffafaffafafafafafafafafafffafaffaffaffafaffaffaffafaffafafaffafafafaffaffafafffaffaffaffafaffafafafafaffaffafaffaffafffaffaffafffaffafaffafffaffafaffafafffaffaffafffafafaffaffafaffafafafaffaffafaffafaffafaffafafaffafafaffafafafafafaffafaffaffafffaffafafafaffafaffafafafffafaffaffafffaffaffafafafafffafafafaffaffafafaffaffafafffafaffaffafaffafafaffafafffafaffaffafaffaffafaffafaffaffafafafafaffafaffafaffaffaffaffafffafffaffaffafafaffafffafffaffaffafafafafaffafafafaffaffafaffaffafaffafffafafffaffaffafaffafffafffaffafafffaffaffaffafaffafffaffaffafafffaffaffafffaffafffafffafaffafffafffaffafaffaffafffaffafaffaffafaffaffafafafffafffffafaffaffafffaffaffafafafaffafffafafafffafffffaffafaffffafaffaffffafaffafafafafafaffaffafafafafafaffafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafffafffafafffaffafafafaffafaffafaffafafaffafafafaffafafafaffaffaffaffafaffafafafffafafffaffafafffaffafafafafafaffaffafafafafafaffaffafaffafaffafaffafaffafafafafafaffafaffaffafafaffafafafaffafaffafafafaffafaffafafaffaffafaffafafafafaffafaffafffaffafafafafafafaffafafafafafffaffaffafafaffafffafafafaffafffaffafffffaffaffaffaffafaffafaffafafafaffaffaffaffafaffaffaffaffafafafafaffaffafffafaffafaffafafafafafafffafafafaffafafaffaffffaffaffffafafffafffafaffaffaffafafaffafffafaffafafafaffaffafafafaffafafafafafaffaffafaffafaffafffaffafffaffafffafafafafaffafffafffaffafaffafaffafffafafafafafaffafafafafafafaffafafafafafafaffafaffafafafaffaffafafaffafafafafafafafafafafafaffafaffafafafafafafafaffaffafafafaffafffafafafafafafafaffaffaffafafafffafafaffafafafafafafafafafafafaffafafafaffafffafaffafaffafafafafafaffaffafafaffaffaffaffaffaffaffaffaffafafafafafafffafafaffafafaffafffafaffaffaffaffafaffaffafafaffafafafffaffafaffafafafafffafffaffafafaffafaffafaffafafafafffafafafafafafafafaffafaffafafaffaffafafafaffafafafafffaffaffafaffaffafffaffafaffafafafaffafafaffaffafaffaffafaffafaffaffaffafafaffaffafaffafaffafffafafafaffafafafafafaffafafafafafffafafffaffafffafafafafafafaffafafafaffafaffafafafafafafafafafafafafafffaffaffafafafffafafafffafafffaffafffaffaffafaffaffafffaffffaffaffaffaffafafffaffafffaffafaffaffaffafaffafafaffafafafafffaffafaffafffafafffaffaffafafafafafafafafaffaffafafafafafaffaffafafafffafffafaffaffaffafffaffaffaffafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffaffafffafaffafafafffaffaffafafafafafaffaffafaffaffafffaffaffafafafafffaffaffaffaffaffafafaffaffaffafafaffafafafafafafafafafafafafaffafaffafafaffaffaffaffafafaffafafafafafafafaffafaffaffafaffafafafffafafafafafaffafafafaffaffafafafaffafaffaffafafaffafaffafafaffafffaffafffaffafafffaffaffafafafafafaffafaffaffafffafaffafafafffafafaffafafafaffafafafafafaffafafafaffafafafafaffafafaffaffafaffafffafafaffafafffaffaffaffafaffffafafaffaffaffaffaffafaffffafaffafafaffaffafafafaffffaffafffffafffaffaffafafafafafafafafafafafafaffafaffafafafafafafafafafafafafafafafaffafaffafafafafafafafafafaffafaffaffafafafafaffafafffaffafafaffafaffaffafafffaffafafafafafafafafafaffafafafafafafaffafafafafafafafafafafafafafaffafafffaffaffafafafafaffaffafafafafafafafafafafafafafafafafafafafafafafafaffafaffffafafaffafafaffafafaffaffafafafaffafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafaffafaffaffafaffaffafffafafafafafafafafaffafafafafafafafafafafafffafafaffafafafaffafaffafafafffafafafaffafafafaffafafafafafafafafafaffafafaffafaffafaffafafafafafafafaffafaffafffafafffafafafafafffaffafaffaffafffafaffaffafafaffaffafaffaffafffafafafafaffafafaffafafafafaffaffafafafafafafafafafafaffafafafafafafafafaffafaffafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafaffafaffafafafafafafafafafafafaffafffafafaffaffaffafffafafaffafaffaffaffaffaffafafaffafafafafaffafafafafafafaffafafaffafaffafafaffafafafafafafafafaffaffaffaffafaffafafafafafaffaffaffaffafafaffafafafafafafaffffafafaffafaffafaffafafaffafffafafaffafafafaffaffafafafafafaffafafaffafaffafafafaffaffaffaffafaffffaffaffafffafaffaffafafffafafaffafaffaffafaffaffaffaffafffafafafffafafaffafaffaffaffaffaffafaffafafaffafafffaffafafffafaffafaffaffaffaffaffafafffaffaffafafafffafaffafafafaffaffafafffafaffaffafaffaffafafafafaffafafaffaffafffafaffafafafafafafaffafafafaffaffafafafaffafafffaffafffaffafaffafaffffafaffaffafafafaffaffafaffaffafafaffafaffaffaffaffafafffafafafffaffafaffafafafafafafafafafaffaffaffaffafafafaffafaffafffafafffafaffaffaffafffafafafafaffffaffaffaffaffafafafafafaffafaffafafffafafaffafafafaffafffaffafafaffafffffaffafffaffafafffafaffafafafafafafafafafaffafafffafafafffafafffafafaffaffafafafafafafafafafafaffafafafafafafaffafafafafafafafafafafafafafafafafafaffafafffaffafafaffaffaffafafffaffffafafffafafafffafafafafffaffafafafafffafafafaffaffafaffaffaffafaffafaffafafaffafafafaffafaffafafafaffafafaffafafafafafaffaffaffaffafaffaffafaffafaffafaffafaffaffafaffffafaffffaffaffafaffffaffafaffafafaffaffafaffafafafffafffaffafafafffaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafffafafafafafaffaffafafaffaffaffaffaffafafafafafaffaffaffaffaffaffafafafafaffaffafafaffaffafafafafaffaffaffaffafafffafafaffaffafffafafaffafafaffaffafaffafafffaffafaffaffaffaffafffafafafafaffafafafafafafafafafaffaffafffafafafafafafaffafaffafafafafaffafafafaffafafafafafafafafffafafafafafafafafafafafafafafaffaffafafafafafaffafaffafafafaffafafafffafafafaffafafaffafafafaffafafafafaffafaffaffafafafaffafaffafafaffafafaffafafafafafafafafafaffaffafafafafafaffafafffaffaffaffafffaffafffafafffaffaffafafaffafafffaffafffaffafffafafafafafaffaffafafffaffafaffafafafafaffaffafffaffaffafafafaffaffafafafafaffaffaffaffafafafffaffaffaffaffafaffffafaffafffafaffafaffafafafffaffafafafafaffafffaffafafffaffaffafaffaffafaffafafaffafafaffafafafafffafafafafafafafafafafafafafafafafaffaffafafaffafafaffafafafaffaffffaffffafffaffafafaffaffaffafaffafafffafaffaffafafaffafaffafaffaffafaffaffafaffafaffaffafafffafaffafafafffafaffafafaffaffafaffafffaffaffafaffafafafafafaffafaffafafaffaffafaffafafaffaffaffafaffafafaffafafffafafffafafaffafafafafaffafffaffafafffaffafafafaffafaffafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafaffafaffafafafafafafafafafafffafafafafafafffafaffafafaffafafafaffafafafafafafafafaffaffafafafaffffafaffafafffafafaffafafafaffaffaffaffaffafafafaffafafafafafafafaffafaffaffafafafaffafafafafafafaffafafaffaffaffafafafafafafafafafafafafaffafafafafafafafafafafafaffafaffafafafaffafaffafaffafafafafafafafafafafafafafaffafafafffaffafafaffafaffafafafaffafafafffffaffafaffaffaffafafafaffaffafafafaffaffafffaffafafafaffafafffaffafafaffafffafafafafafafafffafafafafafaffafaffafafafafafafaffafafafafafaffafafafaffafaffafafafafaffafafafafafafaffafafafaffafafafafaffafafafafafafafafafafafafafffafafaffaffafafafafaffffafafaffafafafafafafafaffafafafaffafafaffafffafafafffaffaffafafafafaffaffafafffafafafffaffafafffaffafafafafffaffafffafaffafafafafafafafaffafaffaffafaffaffafffafaffafafffafafafafafafafaffaffafafafafafafaffafaffafafafaffafaffafafaff_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_ff_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_fff_ff_f_ff_f_f_f_ff_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_ff_f_f_f_f_f_f_f_f_f_f_f_ff_f_f_f_f_f_f_f_f_f_fff_ff_ff_ff_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_ff_ff_f_f_f_f_ff_f_f_f_f_f_f_f_f_f_f_ff_fff_f_f_f_f_f_f_f_ff_f_f_f_f_ff_f_f_f_f_ff_ff_f_f_f_f_ff_f_f_f_f_f_f_f_ff_f_f_f_f_f_f`f`f`f`f`ff`ff`ff`f`f`f`f`ff`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`ff`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`ff`ff`f`f`f`f`ff`f+fafafafafaff,fafaff`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`ff`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`ff`ff`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`ff`f`ff`f`ff`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`fff`ff`f`f`f`f`f`ff`f`f`f`f`f`f`ff`f`f`f`f`f`f`ff`f`ff`f`f`ff`f`f`ff`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`ff`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`ff`f`f`ff`f`ff`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`ff`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`ff`ff`f`f`f`ff`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`ff`f`f`f`f`ff`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`ff`f`f`f`f`f`ff`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`fff`ff`ff`ff`f`ff`f`f`f`f`f`f`ff`f`ff`f`ff`ff`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`ff`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`ff`f`f`f`f`f`f`ff`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`ff`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`ff`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`fff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`fff`f`f`ff`f`f`f`ff`ff`ff`ff`f`f`f`f`f`f`f`ff`f`f`ff`ff`f`ff`ff`ff`ff`f`f`f`f`f`f`f`f`f`f`f`fff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`fff`f`f`f`f`f`ff`f`ff`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`fafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafaffafaffafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafaffafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafaffaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafaffafafafafafafafafafafafafafafafafafafaffafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafaffafafafafafafafafafaffafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffafafafafafafafafafafaffafafaffafafafafaffafafaffafafafafafafafafafafafafafafafafafafafafafafafafaffaffafafafafafafafaffafafafafafafafafafafffafafafafaffafafafafafaffafafaffafafafaffafafafafafafafafafafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafaffaffafafafafafafafafafafaffafafafafaffafafafafaffafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafafQf^f^fQf^fQf_f_f_f_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_fQf_f_f_fQf_fQf_f_fQf_f_fQfQf^f^f^f^f^f^f^f^fQf^fQf^fQf^f^fQf^f^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^f^fQf^fQf^fQf^fQf^fQf_f_f_fQf_f_fQf_fQfQf_f_fQf_f_fQf_f_fQf_f_f_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQfQf_f_f_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf^f^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^ff^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^fVf^fVf^fVf^f^fVf^f^f^f^f^f^f^f^f^f^f^f^f^ff^f^f^f^f^f^ffff^f^f^f^f^ff^f^f^f^f^f^f^f^f^f^f^f^ff^f^f^f^f^f^f^ff^f^f^f^f^ff^f^f^f^ff^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^ff^f^f^f^ff^f^f^f^f^fVf^f^f^f^f^f^f^ff^f^f^f^f^fVf^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^ff^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^fVf^f^f^f^f^f^f^f^f^f^f^f^fqf^f^f^f^f^f^f^f^f^f^f^f^f^f^f^ff^fqf^f^f^f^f^f^f^f^f^f^f^f^f^fVf^fVf^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^fVf^fVf^ff^fVf^f^f^f^f^f^f^f^f^f^f^f^fqf^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^f^fff^f^f^ff^f^f^f^f^f^f^f^f^ff^f^f^f^f^f^ff^f^f^ff^f^f^f^f^f^ff^f^f^f^ff^f^f^f^ff^f^f^f^fff^f^f^f^ff^f^f^ff^f^f^ff^f^f^f^ff^f^f^f^f^f^f^f^f^f^f^ff^f^f^f^f^f^f^f^f^f^fVf^f^f^f^f^f^f^f^f^fVf^fVf^f^f^f^f^f^f^f^ff^f^f^f^f^f^f^f^fVf^f^f^f^f^f^f+f^f^fVf^fVf^f^f^fVf^f^fVf^f^f^f^f^fVf^fVf^f^f^f^f^f^f^f^f^f^fVf^f^f^f^fQf^f^f^fQf^f^fQf^fQf^f^fQf^f^fQf^f^fQf^f^fQf^fQf^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf^f^fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQfQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_f_fQf_fQfQf_f_f_fQf_fQf_fQf_fQf_f_fQf_fQf_fQf_f_fQf_f_fQf_f_fQf^fQf^fQfQfQf^fQf^fQfQf^f^fQf^fQf^fQf^f^f^f^fQf^fQfQf^fQf^fQf^fQf^fQf^fQf^fQfQf^f^fQf^fQfQf^fQfQf^fQf^fQf^fQfQf^fQf^fQf^fQfQf^f^fQf^fQfQf^f^fQf^fQf^fQf^fQf^fQfQf^f^f^f^fQfQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQfQf^fQfQf^f^f^fQfQf^fQf^fQf^fQf^fQf^fQfQf^fQf^fQf^fQf^fQfQf^fQf^fQf^fQf^f^fQf^fQfQf^fQf^fQf^fQf^fQf^fQf^fQf^f^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQfQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^fQfQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQfQf^fQf^fQfQfQf^fQfQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf^fQf_f_fQf^fQf^f^fQf^f^fgf^8140b53f6adb3ccae8ad6693f35bcfb9b8c30ddc578ba533de241260e569ae7943aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079dc29552cfb129852ce42ff964f952c1be68dc5b3bd41adab7e14de9ed6e0f03b5440aaf174c0d632e1da77e31fe9f52ce272fa1e4aab090505ab216050b9fabefbb96f4597ff8af19eb584387506a4540c702f1c2017a6f5398ff0b3f3fba873e4ee9cb718f6904b9e9e77199f22dccf3bab611d21223fe0de4d3c493668260c61203d1d9284d3d8db4ea0a741a1b03e300e2a9c812205222e8fc026a458420220a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803df2db4a45a7d3624839e9e9cd0de0f3a4a71efe6ad3cc4171b2bbdbbe1ca4057f1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e3202547b9970e4a6d79e80d0995c11dcbf78d13fc032879a7417a6b5e8b0676a6ed2a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7f601391a2d0a9735cb8d3944593d4f7fb57361886d8128246e80719d9d8e485791521ef3382497c166c0e5ced0713b21471202df473ec431dad8a7ad4bc7b69d886cffa26ede9bdca9bbd1662deb0e3b8fd78ec886ba1918415db9e8051a6512d84cbe0e51ffb4446b41d01452f52b538b633e4eeaf0a9bed49539e2537e0cd3f2bbfe26f9610ec2ef55396441b9f3269170478f9971fd72ecdedb3806d45d78a9fa63f96f91d2ef67cfd5efeb9afc313b033447aa37c8e1a627b8b522e6a7fe234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d32e3498a5f4a7dc3d788925a5e23e27c29e54888af946740169172d4b4a1a49c30caaac37a040f1b4670018f8237274b8791919f7816c44dadbdb2aa22025d8c5bcf42056ef46dbb72e9b3d529e46a022692c79f08b39bea9c111bdc5e3ff6d43c856fd7b0f448dbff667d62904c000e382c767d263a394f6ebbc7f6a914ff719e10f7f81ce1d0d0665169fa2da9be187686025da32794e896aae2ecd347af9e3cf6a55d5843ed7143402484c9462194feca5f9bc6bc6a8746a74762cc3c5e2ee832eb06ed50d9d40fda1dd24060260573c046ad651ba0efd1b2246ddfb4360952afab5cf8288ee493458a394b82bb692cc73badeaf61e1e1db0bc9dfd4d011aa1f71f3ed51575e83a8808e09a515804686433ff0778d7b240f6c246237754cd4f66f1642f60ce5dc8b7c457faf88867e22e6b200ba8bc9ba6a8444281d5d79ceccc4ed4a8d8f0a543dda61132bfb483f30ee6aa1f17f31b950256d77e11077b598adb75a1555c6cc828c21d13d39ec18568d58c9a08933f86b54623cd254d3ac801ad379c877427ea8ea0fad5fac2abadb34552b9f0b8ba3b94a300bd7395ddf1855772125a9c1dbd3000990934550b329cf82e757dfa6ad63f900cf4f47b0ef7607912c65adb324080ddf0124f2eeaf0644d2a420308d70fa7598ea397c5f566ad1bc1c070d75b8acfad9884be9f5870df25b07c40f9ab80ecaa8efaa70c859014ce1da0e746ac21ac9012e5d3570ade0ee737f43f415b13164581063388c0ebca2b44ea746e4123489457831b8ba7a5b5a312c39e578120e3304442f9ec1987bf09fd30fe883cef09a120f5044a42a193d30118764d3cf499e956e787cd4aff2e26444379c708ffcc3030813c019e847d2eacf471513ea9bb667630cac2c093fc22b4815b8bbe14ed21f92895bdc003f7b504f935bbd15d00331ccea6d11fba4f9693f538f56ce17fd1436da2b236d1086e556830a64c28830b78865172d81037a89502082067c566aa3c5b6aebc25a7a1675846ccab8f5c2f81fac991cfa67d31e9efb6be9516120813981e6d5105db8f5c3e4df9616316b59df6140184e3186d4127da17c9ab8c276195ca50c21188b7cd13a6f39abb2d725a0efa7c01d15d5e1ca5a9d4757962861c5e95d4e86ca84e087d41c4dcaac35c1cce1d031566b762694ba34238b3aa911c56f112d79fd3c696ff9da61b50844961989bd95363a2accf969e9055acb49c4af21780a4ec38fcc326ca8a437907463dc7025da31519c51b4e027255cd469cd971f3f5ff4a0e76325f1cf2a3f2d4d0fd5a30d8df21d8ad7557ce89909a35735be610a011b498be060333179f9c555fe04268d6b168955b52e5b0daecb9b5b116bdd9ff082a597a74274ed04fb8b3f0b38de40a34e2230fb4f44790117e6840545fbc109b7cd20bfaa6ff0b6f7d0f62b7dad59a0d3abbc6afd647824f3f56543160ef1f62f1775a9bbdad2b2003bd6f7e988ce0e6671687bc54fbbbbb1fc7a728709980871a63992f0f225346236091481e3a3ad8e0045f905a9802da1c6d2011748cfe8de59285c7bec8b14fc3297b9479f9e491ab176d1432fc3f0e90ac3358eb843395b29d30cdea3dde23378d546857f6d4775dc8fdb9c0e862bf062e1a98a3cdd2f8a8954348476f8c586c3cf35e19c7673fdd540557bc29e87ae1adba8c025ef57007cf9432adbd4d290648a29cfc8a8265f1febc9839a0820d10b7ec58a00059e9a3180d3ba835e1cb28b93e83a2d15ff93df5ccef6932722be3000417596bc38888ec392e36ed88a9ca8d716d0b34b8ab26b3528531f04befc36db1ace14f666de33a547d7f78371aec9cecafb4375879e729bfc85f7b14f2b2ee11c8f36afa56d8310a5a585d9970c6780881b156d2f00fe8d5097a82ecd898ea44da53df5b193f8759c1aa9bfb9660d3abc5e829caae909a0c191189e50ba3d9e5102ab34d148dc41340b0806fca463aef05d6de016cd33184d19e1b150e7fd480da86f2dfe316f26dfccfd47809ec592b1c286ecd2b00fd82af56b7c890b4e3926bb02d21c32da9a9c828a888d8e461e13309fc9a56a1378eb6d004ce97049e7aa8cf927274e35b640e8e9582e7e1f5c075e58ec07401a5f763239aaf0be910d05149413c313fc709846ff67d38f5003b0d6ce8d2e59d3938c3f9fd1ad0a08747128445e443213c53693804b0b6376e0b1fe6c2a81e96dad128868bc72d95a8a9a52b3bf8ef5ffda62593e4ace706e18bc1add4e447f769e4a24e5dda946168d991a92fd04a30cb01f0205e434e62c91aa3b35e76f132611c07043fc9a10ae0ea393ab6dc388be8076e9571c601d0562ab265ae0635f8c4d530d34631f46ad5cb7f9d413fd7c6b76980dcf79f74f4ee8950608df428d011f8eae9c471bdfb2dc5af274f0d683f92bb70d7532d15671cce46d8b57a7ba5817e03c064f6b7b28c2afb33aa72c9c303eae02121a860790510a9dcbd62281579b8fd318af635b4709b72489bebb0a984b7f8bc4fdab6649f511d976b5d311bd2be1b45c940f35a483c7b44063b92d0b6883d7bfc8f30241c0790fec70be7f57cb1e72fafe1e5d16bd75218c1c469705261e43b7c37900f1b995fcc2c5f60a5ac5324a0d3ba9635613f125358f363ef17ec274aa587510853fd5d0b555de7a979c0eb4933ee9ed7e6319ff86f090e9e80e0078f5ef5cfd2403f21598ed263eb8973f542753f7f59e783f94afb99f988fc3766af3b3a0fdfbf50d4d486e171204a8ff60c2b0301b1447225969cf14b1278c105f7187d16a732d08cdec2a6bcfbc8045df789325e414301a31af88504d17f4d246f8efe6273e72da06110cff4fb49a24885f211dd1b75a65276b5909afc986d706418f72ead166a69459805c9b26ef836b1bb7b3f1faeb9e37c4f46e8a82da3a4d6a6c53b6a9b8b763410ccb7109191d44f4f24dd105f668c32b7e895ac8df93d3402395980cfa05d5d6335c06f2fb5bbe1d84b191d142ac43e44f08253c1613b3c4c990f1830720635c02f5b2a3ec393eecc109edd25f721107a8a6ee7875114453c23e2b5fbf36a220ba9895b774deaa6b4fa07319a7f5598d861c5990ee81ad85ce0830ccc05f3994d74c2a0c0012832a57357dae41c4a0ee189efb04add028abd5b4df1d59f8a9eb190b3a3b8cd79dce806e1e8c45e3e094f3b14b5337d09da9c7aed39dc5855529f0fca2c2608bef8b94422e2899e56400087be1be181d1840710b76113b7b655a22c65ddf13e3ec7eb930cbcb1ebed1243bc726e72c69472c4bb250a5654247cd6b19f8aa82b493d62b5372f9df198f553cf7d8d5a4a74ea9c0b291eae6d21cd6ee91b03508110a0fa1c93eb60fb03bbdc14a2cc4f6c3e5830460ba63ed37aecd1b8373b4cb108471d6a3e438156fdc510064ce1b13b1be3aea45fd2c21ee44df54512a86775b64521281f34e3d13a26ae99c4542293bc1cd983371a2fa24878a452eabeb465754f8986cd8d7c057d164555c5288e933386a28ff4b3e36b5c5f2025e22388eafbf70d32c242bf41548c3e1edf4ae5f75a98456b7f5900e673eec551b1f75d04c91aedb57cc7bde5468e4f92a7df627bf7c2ac72262ab81a2f61abea573ea80e7923a101bdeb181ea104c35e3090633be8aef93759f3ff3b299c4b7995fd3fc9ac34e26229a7b75c0f93977164ebc306d88d50be83e0a030061af0081ec5642952058f28bed9a4d77ad962165c563ff729160442e64ee0f1ff3fb60fc4f9170c5561fd3fb0a42cd03dd78c8dea7ce960c859c53603537f41f75fd184fcbd1804335ce2c82990d73e57948022b5b6db2d7342c4eb359359ce40937e41531b9b4aaeabb5b5d1e6faa888075b3318cdcfcba74364f49a991029b23093a991784cd98fbc469ae7a749873ad56a1750f5b4182c7788db21a0e2b370faf799117685cf07bd02b52c91e8aba868bd153e076ab21d3e7e78ca2841a338bcff71ed937b87371d42f740ef22f2c1b20e89e198848e8bbdacbd113d3315c15b8810ead3a4635788f009d3d0fbbeedb4e7df3c06de5aa264385e070c07a25b74e1e9c85e89b7cfee8846c38a453f349c2f4e84c4ebd47ac29a4005ac69b3dda6346a5cae74ce97acf88f179ba82d0795c296e3331f315ffbbac1722ba6452c931bf95189b1f0b05c090a617035dcad58a9bdac63635509cbd81e64ddbbd1c55441b24d2723ffa4be205950ea6ce1e1acffdb26f3bb320166287d05aa1e1987dd6576feed92ab91c7ee23ca2644047376e8f1c0ccf0c28ae37ba48a37675e92395b95b746dcd1d6669f62e979ce5b28a644f24d559940b8a37072896dc4d2e53c6ff26b1fd177d5acf38a226b6f09f4cf5a577e1d0676a8932b883a871e92c1427692fa1c07de01a0678e2cb08cb3bb8d1440d4d27e3634a2f5a35e3c609382e6aa75598d678ca7b32b90b6f50d2554352f3071213bdcfcefd84a3a124a289aafe2fd544ac37cc6e9f3e1579b02d37968da4449957b4fe1c578a28e384abced83dfe07ef00e690d0c1743c3c9bef28d8cfe253a1f624adeb411ee1b39fad8a20a739ab969828a0c78f9705981cce47f2ccc04bb82ff4562a455a031186ddd0f34dadc5d59997adc83c4ccf706a86294fd7865af0b342ee23a6bc69c2ec7385955e7b8bf85d3c218408e9fb7343d8e48b46080e22fcf626e56548f85e4ee878c2df12a6919b753967b9a86392741b609e8a4096c0455c7ba6bb4bad5f1a8dbd7b8fd1a89c454285a6a81fc11af3354fc9c0ae9802f538510f5e6636fdb8df307cab62346e4608125b19c0bf67c1b8d5cbdb7a16968899edc5bcf8c7cd0d4d03d569108fde6736b72b3d766a4bcedb8bdb7a725827616de7d5ac81d8d7d959e08c5e0cebd028a52e8dc4b77e07d061d5fb1cb38b59864cd0bde35485e5b298ec78a08d5c5da9cdde2c649e878f1c765ec425283ea382da8b47497c408bc581d92ade997552d38838d93db2a6b307de1e75dab3070bf96d234b14a56ef2cfac837864d4ce35da4ba8243262a9031046b9a3ac1d61f4a25c3ffe1e4b4e628fa2ecd87da46925d14201f8c6fed656258a787926af0afb84e8a4359be0b2e57bd789aea63bffe2f27e0b3dd048e8a72dd80aab3ffb3a493ff47dc70a2820f35b44f7c02149695fa3129fb0599265f3b5eced13415859cd8b1d6e64e1569327896facf2e21d312f5ac9af7a77cbaa6c0479e40b358e75a7716738b3262af59c3fac30233e8fb30446bc1e12d00d0819791bceb83055db2aa66a1e943e0be03362031f9d198f6ece3796174c4307865ae2596283b12ce87da7da7513a5f1a8de8dbe61eeca533a464cd67a6377952873f9d574c2955d4466ac5d8149c0748cef7e566e776af903c8a4c28c229f272e060e280ba03986f65422068419aacac6d0c9ee0236d4f54f59cb9d1461a2945efacf5ffd6c1ef357ced706d360f7330a1b84a998b0b54ddc97b7bc93e053488d71ee140e57d1f5d25fbfeaf5d93733982be60231bb5756a9334ee8d241e609e23d0221e7d5e5dcbb252be9f2132064f13e142fcbfd35b75cd080053e1707d267b8d9b52c26edef9442dcbffdecfd663a9933ef945c74f5432ec75368602d0c24962073e8d421dae30932b06feb3d4c574751118652bcba5d2c4515f8cacda67fc34d1f35314ee49ff2658559fb148831d6e7820ecaf3040770121438f7da40e8be1c427a1f0a88a4abcbec3466b6a7447df3313dd3d896fb058c255ed4290c30de613c83d6751331a19ed3b916ef522b82859f532ebbb151ca54c42b1a2e44403cb1f13ada21f8bbef060e79c7eebffd303afe03b14bcc66f672de4c62739f81839931e32bcece570651ff7377efbb4f36d65938f805781846b82f6d7f0c5db3667900ed62d8ee66c4f73b02b2a8baa7846470f13a864aea45c2f1264c2842cf6b64fb18251dc7c04d9c8cedb2786ee80490ae66e7074ec2e3dbc52a5f2f208eae193c5b3baef4a2751f49b3274f3a6737a36e909241e2105c66276d17c27696d0463a67dc3d055d77fbf3d405b417f1dfaa71d817b0cb0a85f552604a1cb1571ea9a9de616640e9c0e98eb28b97c31a6df129624e91d3e2267ead9be01c3731939f5c5944198461ecb2d9911cb6fea764fbb5d1eced9db72b28c47a93e3be2593f69dd78d7d7393472aa4eb92461f1f109a31175bc43c7670ece8d0e53353f5afdecbcd41dcfc0103c397c6abeafc14d50152ab1a081c398b910fd06df081095cc84a156ae040bb52002abb88543c0004a249b883c8c5bf0e19e57e405c0a3a32dbc540a0e452c914553884d931e223180cab23f00a9d2942636bc9c35eedd3c8d05a1d4910f59f9940880a66a4e4ffde03cd7e9c271ae82153b9b6ab2006cd0554cc9163ae049936534e1bb86c2d7cad5ea7bf80971ab396208512b8d6d80f4caa6c196f4d4619c989240fc8ce33682ba89e57676136d6681a101cf3ab762f3c1c4b76cbdffda41f5cca332552d1472030a27ac2e96b96f3658f6c3e7198c913f6b8904d76506a2e7cd8bb764b0eb1be443610a7423dc4ebf140a71fd1fcfe7332bffe7d8960c81be147732552073499cab1c8b906bca6ad4df2146c26f8bab59cbe20a40a7924c794ba3f0165b6b3085bc413882b3803d914734c8b63aeda6adf0667f658302e11115a526568eaa23e4cbf836ae1f22cf86d773cdcbb95b9e80b5b1cd3c1427ecb65a41a47b91b8b0db3e68a378a3beab585210a073577e121c5ee54d2cd875de2e464c102d6d46c4b9666ecc690a76780639ac9814ddbb0f545918b9f8f56c3e5b07581ff4e47080d022c7ab54223c7e7712cce85b5ad3046f440c0b0503ccf3b543aff93b9838e5a2a9e47e3a9b3a690f78a61e5353e475d6a821819a0637498459ca8df5f87e427036e594ddad894ad5210d0b11b76909caf1817e17536411ceb6d41b20ab198248c60e864907653ae21bbc0be5a529db8169c9105836a5766e7a9b45762fb270b92f844ac1fc1e579a87354179bca1bc3ae7dca593353e929705b19080466c2fb04d6645d6eba842a21a3d2283f06af5f3260a2907e6e7cedd20ad0bd6ef527c44ee7b654f1b9b01abdaef33151bb1788ce96f4d42d642454fa06c967b2c3c7af620492a5b2df7f4fe879a1eb5f84b648cc3dfade4f2df3754e1d1bf2f48ce3df98c030caf4080b494230a7bfb0e37b9f4431d979735191aaae09b8927a05157b8bf9223c1500863d37316ca81b002d88e36df1e1ef265fbce73dc236ce3a6e9e208717105c7b61455c40a556f18e55d22f7cb448bece89fd6c6dbab3b4254b1feb82bdd0adec7f9d870fbef893c576d0333ca49a4824e0d8d3f0fa29be1e6f53c4227a716c270fdd873b7861b5efdd4b6328dc1058b1de5587af907bc8d547e9c9c961b4186117874163b8117be2ee1c481d641e528a9b8d31bb8aa314abb365aff9969c555e44ac44cb08acafe5efb4ceb7d891acc6424ac2b528e7c5d93f58dde6c01c1541bcb1f04c33612eb2f577b85b5224d7b40ab198cd7da796c0ef4441418692864eb9933a4cd4d1331fa3b64e0d91c4128e03b48e2eae7ee3d6a190e3f8c4ddcfd86b1d684e5c97e9d35d57a659a0a78a1ae42d5890b5d7122b59c33cffa021ee9f8d62a52ee3fbb20831dd2898c2575c31757854ae4f872ec90826a12f6638b93be7a26c330fe6fa4dc67f38ca1a0c07dd8344af018cb50bc5b680645ced303da139891475186ca4dd46f95d7cab675df0268568d21d177e9914b93e661e0a910d21fce430f8e1e7cff62f0cc4cc001924d4f4c30542bdb305c3f9cb76ef5e3b68e94874aca0b01fbc431f5a55b4b298ab10905368e7f0b596d9af26debf6ee7a3c211dd4a3b73e345f30183e2ec7395e3aa595837b4cc24f347cd36018ca28066875229a71177ba43d2ddf53cc330ff076675bc54d1fd5e776854032030a072a3306095be0acb68ab37ebe79d9858a262797eda1deec6ec49e14ca948e8b38559bc6aeec023bd4f4ca264ee5797ec7015c2ddd106b65d95e1ec15883ffafad8fbe741986efbeaaaaaad2c9a82f1d41773a9b504ad76654f3ae2ce4d8e68d69e358ef88caa86f1e2cdf0c73c676eed997c5fd559a58344610f86102eaacc7f7a45cf53f17b4dd592cbeb9d6aa1cf3f56211564b6aec28d3339494746850e2ae5048c8b32befeb056e25cb3379020af72ecdbcaf2ea110def532acf608032edd4f58a732d68f478c2578c22a348161ce544b7eae545375145c8962ae513c9225d87a4213b0331b3fe45b7562ecd27c3d6e792c512a224c2a80046c166fc96d769898f980c51f201ee6a1d8039659612762f1add3c9116c9a9ab2bcdfaabddadfc70ce18009d87367b8b7ab4353409d337e2278721c18728ebd60de036775b54bc812b863911351c640902bde7e01a37d61669fad7b70c9d622a8895224b2ced0795dcb7afb84525d64752aa9fca71e9a69b272a3c7c0172eca5ca3b9a5b1c2de77984f6e7eb6801551cb40f58ecb6494c975ca12aec1dd58d2e18ec63d6403365a1312af976c7e3a5b526e08af97fbd426972afae6c6a1821e707a1ba632f5e98239819b66404d7a98e8db567b0daa49db68eb254f61131994b47e67d6f1a92b1f27851adb4ee2f7bf8fd47d2e850ac4c4458e7c6932015bb259d5611c70860acb7712c923da33ab747c62765676f5740c0a7699f503215dc6e371e332b7a7f5a6fdddbac9c860fafe2a6ac1dffb6eda6a11e9fff2f8d41d958e85458ce64160e2daaa8d78720a3c80ccd18a6124ddaad8bbcc85c90b219185f0d8b1a54acda8952e0ef305aebfa78bb1b76ef78f0f22f8cbf1d64b86508b4b457d535c6c36db02c5e3f1eee65927f1e571c61dbc097e76599169b91990033ccb3a8cce18047274ad80f2d8c0d6311cfdbf709a0d5e358719ea7728a568bdc1a869307b6a1d1633e4ac55daafff5fac1155a218b232ba4113fbb47e886616791a6de640fb4ab875edcdb4dec2c752090c8864482f5e56fa0e88b5bb5ef40f1dc985e247ca86d74b0c929717c343f20efc6c0276d24e8f62c08c92bd283043adcd2522df8f5a57671c216c3736225d79c8131b66be99905b84030c41235cad081f909f6242641ba2b5654344762cea0ff54c8d61c099d242dfcd10fdc9723f1890f724834a464d0ec30a11f428b92d83fdffb7d7d618b969e115d5289d199365fae45733a473edce6abb4840951a05a1938d04dd038efa1294e542349bf17458da3119fd918a6ac995ca5c5137657c6f84379e5a4d025a3fc34b150298ab6d2bfacfa19622c0fbb88d2e012256a2cf77d11f767add6590e242b566ebe73aa29c309662f33e1fd2762a997fd3f16fe88f7ac4afd7b1bab9167b555303541f95ce4a9e99707a022ee0c2b652ddf192869d9452c49a6c17cf628b53539eaa8d8f2aa7c7b504dd29db49a74e051d82d7f4ab15e9ec39c25ddca064ef5b3a3e862d624d4d16665abcb3a4f958df4569c208606dfcbfd9df6d1f0d62907e43e6ec2bd9ff91d37fb4b3157ea34e4947a8f50f08c55f1d0558aac52e0b495008bbdb98d4e4ced809c2cf43cca714634f49f29a327d8f453f5cd9f71b38b5a0fd3147f703cb00e190239330118b9ba5f70dbae84caa52aa1f49f11a7d7399bf8e61d231411e8524c920e0415a52abe5e99dc3e4b2f12846f4f33707fa4c464ee51e8c711be4ed47bf5007c51018f0c3615dea623e3a204814292aedfba9e68da6f3e299dfa3b723dc975ced97d3d4fafffcc4601e17cb683cedc22111dfcbcbb420a59e90baee675459f7b8e7104a9b9cc118b5d1d9edb570b796fa5edf30832d3a2f664e71240b863189de37da9a4e4a9bff787a77ad7036314a30119149f2845b80aac78fb99d2c0d479c0cbcf9c17144a973a38a72fac4e3bdd349df1c38607d8f63e49754718ec47627d42b704f78e9692c5adbead872ba420bf8bfb42cef6bd4edae17fd89ed611f361d00f75aa25c6e5157e8e2cbbc6b854e520b58c12c5be2ffd22aae917c87245ddba128b8d31388b3b0d6c273aee5a499f33cb5b69c164564553d34c32a98408ec1a7f7a0ef0e0dd3b5f91ffd4627f9633813d5827fc12089593223cf78475b6d5d7f406c17d8821ef3ce94a12fadef6b34636f9809359e54434997c460a74aa665b1e447b6676a62a22221ac8a2528e60522e40fabd3c0b4da4687fea69b80b90059c68b4243e2753b901fc7a352aa59677f4666ae06cc85756ddeaabe5df939ce2bf56380dfab623b6a2889a20ddf003631a00458269694a1e49b6fc8e4572f21361943ba64f8a30905f2c09333d60c4aeebb6a860f2803c16fe3139081cde6ac9bc1718439f6fd735147475c96ba6f10aad34cb5b86d87f54fa04a50135fe7600cce60de36e557f7216a43acabbad4c6b621a12a7115e32415b29a4a5e90537d6e813742de37138851938686cd4397d87000aecdf84603c71f16eef9573c3a8c4a195bd25d7b8dd1521f91a35223fc6ce82debe22a30591dc413032082f8daab5f030bd4b06c931aeea6f4a551e16f73b9195e26c8bd1ca2bc844d8b6d0436b5cb33d3e7625399d229642c4d989fd387353f3995e542d5da565b446c8b80469af051ec2af8230ad8c9b450591844756d7feb3d622af30316086c503b31cae96dba2fa230af5c006407df65039f840bfc887183d690e335d5aed3f51746b5e0a46f1e2ab109ebc383efd94edaaaed14457e236268e0185818cd6bc2f5526104a65a6a7a5478b080c92c6d361ffade46596643486f1fc406a3bb138348b3811e719afb4bdf2b59d41fa92caaa5465b7944e2f7ab98092de65fc3e21760910a7716dd2aa80b977f5e3f190ea0e0432a583b6a8cbaab65c1c686c4a18dab25e32d80148ef7fc38da1a7a518df04ba4b353c931382d641ff16d0b055c8fa6b45a728aa4c0caa350e2ab2b52188f5db5e2bed84593f64b96f9520d2c712cbe23950ecb781f0562a49f5ef4489b6a765b128f4e144d720b8a90bace5645da0f4ba857990a7f61ef117b3143c6668e919b4e860f342cba2389277b17fe1e7a6903c1d4d77f02f841bb8e0b7042309473979251b2b77e94fc1cc4ecd2d280036bd23c1d2a279a7d98812fb7b078dbc0e08beda77f3ce5dbcfbd20e64b590cbbef131766ab393b1d9b2b1ac9ab9529b661030c1861ff6add69d3bc808475c77834873df83d3168c1e5e97b99f069db274cd06e9093d4ccf45854b3858321a79138629fc5af0cdadb66ad8e4699eb2acdb1d4f80f142654c667a6efbcc9fc0d78515095b4f5ad56ca990832daa33e3a5665e6a53ffea81c088e1ecb0986982af12e04ac1aad247dee39c17a3f84880f52eaea6753c23ea8bc886a986113d83e46bab0141cf151dec00e2fa7df5fc02ff91d133e7b74f182dfe441be3dc8764d51223145291d99753306077f9fd7b7172ff1b519e7bc7c9b82566fefc24f29dad144250ce9ff9d66c97093d0f5dac8e18f1b3e413d8a2e63910cdbc4885c7d82e5e1f6cbaeb04c7e9f936b0d48d15527065e06c969d6f98cc5137adc042c864403e0f671d7871b78d25ce7913e528aca2c30b617bb13dcbe0ff8f940241e32580a58c968fa68cbe5b3ce7996110b395f67633afb53ef74e2c97eeb22a1216010f0f6c42caccd9efea034e39335355296a155dd8f013b0b8b05fa5778ff8ca639f2e4593e72d7ab3fe2c2f7bd4df77f620fc3783a7e8b8b96fd32e2c336221f6e43d8cc669b71c6dba8c96e7ab4307c9416a3bdc0430bb2c8af56a20e5742ec6df601d6176eaacbdd1d7b9860c7f87de27d6f8b1a81f2014bb71c9244e9a94c270bbdf5fb7a311f1dce9658cffdf13d37b5d82e10481f7b7d09d4e6a62deb3a81a55e288b92eaf98bb85081b289827d7753bb1d756c1a9386b2794c21d14275896bb8144bfa644de784897c99288eacb04a1b31fe974760eb77ba805f975e0686edd44a60adc7f73174ea2cb45e2b8dbb81918f5bea661b9d287614b2522c6235ef4e702aff54065eec0eb74dacf65c9ef5b958ce7a9af9845947fef316afd33ce6bdfe58c24e6f5eb0c868c10fa5fd9207cdc1068e295c1d9603391ce1e8ff87d1e677ec2a8003c8e0fb69d3f0ebed16b41520762a1039b46d9e90c50e4169cbbe09fc79446fa0374aa916fc57b1ad8af03f7c54395cbffff0c3f3560d2cb22f42a770d2e2887e06960822f1803cae8ed22be4452b59a20988126be21ba7bc3536174451c16ac011aec52fa30131c8983d63a46087fc415652907e49813da2cbb65ba2ec0fb1649d92898c5b0ea415c31073aa9cd8c7ed2b8f446693383a306694b4d280f94849a59fc7cae4963592f55b6fda60ac3e3303922033f503c3112a54ed9e8b6f91b4e53f54cf48d654d502668405473bbf0a541b381ac68d2f6e06d2edf0d9504bc2948207a8e915dba4a9cfe25aa6a2f99b5d94618190cd5be0b51ae668bfd828788c4f1c12dc1c807aa1ae4f665055c95990eeb836fc759dc50939d8c460e4b3fe1378c5b5ee6ab76bae9e10e65e47aaa0c1cc5b120868af4daa6571c95cb60e8fd5a093a7084d0ecb8fb17c4e94233e4c1813e9a1ced4ea083c9f1405aa45fbbea9d77acd203e51387bf256ab633257ba90ce27be921f0c91c8241b083b35ace878c28534c88b8e2842295c11476d300013958eb4266df4216c16051db923c3db2b01ceb4606f6d0884f845983b8f0b48f7b17629e6ed832ee0a58e2aa9d7f1e3d09125bea91b1a2756c29ac028d5d095ec4ec2bf01fa4a76e35e67bd119b85b993030c123ee7457da88847301e7f5c388cd78b0d470c52b716841c8df93b540ac93cb35e72a4f7d901f0f7542765c75e1ed04bbd30f1bddd32b7e614494235ff153827da72d56647df9ca76522ae8da1037ce34fec6c7295f95cfad4751859480debdd94efa97583bfe022574e6ff359d3eae9a0e5c3bb1ae425e989a5268dc9b171e63cfc71c78ab496ac0cc68227f9c974b6a8ebb97e8de7d9438024586ab190f5cf0718c7d8ad3e081fc0376a9154db98029196d3771d2732750efd10540a70e9c4dd2547c252629d4e43e9a1cfcfc4a0f7f42dba35ba80e091f0f9b5ae97c9a7dc993c29e2fb22ecb62b8d21903f5a3ab313540968b04078c22a498871d21f746d5be9035a76f9470b3862544e5265d79dcafe24a8a3a8d61ada78e00f2bddca42d79658ada50feff401b4ce623ffef9a133179d3ac3526f08f63a90a12097559778925dd0515764fc9370ec5fef19c95d1d4b70c5369853034c9703f72fbd19208f22a27c74820058c6d454d9cf174f11b363f1f5dcbda2de696306b40df9aff263122ff9b7f513bf705a52bcf10db17057d8e6d66273f82549d29bb1c5d3170e52fe3a6c5e131fe2c0738af2b93ce7f82984f57a255263fcb47aac314f327200fd3297c4c3591dc16dba703c9426de66e7230cd5408ac43699c3c3e185dbed68434847efc9ba0245e0502c4284b40ddae428d4711a54c73e39d9493680b8bf4c0e4396954c1034e0b40278c95446378127eb8f8943414e5cc251613e46d3872333172eb8c8135cc8611191ed80d97351b83241219154bf53df9a820ee7db1a65b901292cede8bc9efcddd32495fc8a2d52d5e18369a22c5bdf21d957d54e2244e3d9d40712724658d31de73ee3e51f2970f730f75c5d7975460e02611397f97af5d0cd06e43389c7139de840b959b03225c6aaa890d07953bdc119fa38af692a860fd477a2ddb8c11ec4b5921a2175e0c227cd45109fe50442d1339abe383e81edb1432e9da9767d371ab813b4955b3a0be691aaf8dc64be0eb44e21a279b7c36948df0865af1fecebcd92735e583eddc11e13af83c2055b7b0fadbdb47a0f3da068a17bf4281bf97d49dc515f625ebddc66f4dc93de4eb4a2623e11c9317dce9710edc9ce646bba91c681539d749f6d9c6dc277843f8518aa51f2b74ec5e2f1848bf5892419799adb785debbfdf33d7f16483204fb922c0eb57cfe680b849eb68fb7742d29ff7a8e7147d7b129573f69907a28c6d340749023177ca8c656ec80aa883ec0e5ccf38a8810302b1301b4da0df46a22c62f8505521311e4575bf35f98da29af2ffa6f8617bbb76ed84a95570e2b1a75f8b253a08e3c25eb886f8bf8a7a445f1b1af5ec7cba84b00964536b6c1a60606a9e1ffe37825dcd33498c5ef2e508fa694b1f927afbb288f297345c9e4afec9fc476818f248c28c78e26dcea6dc2f6ba3e65342b727e62be0ce6cf050f5215dacdaf4884ce604e804c68b467895e646989dcc955c24b26206be47bfb9f926aa0bccc41e6ac7ed1fecc5ff534d028b8b40110efc494a6ce368cfc4f71a80cf7d3d87cb0cbe60638052e341e3c1fe8c50928d50463b590da59e51f824c39b6c43fdf3595fad71dede50d5deb9b08c09d48921d613f210ed0e0e9bdf5135e9b651c28de684dfa50588a132645e1328793df4839d51a7c9189b8331a0527d9613596298bedf3e058b39f3928d59a270a05dd64e43feb7f5e91d41ae1628f34f339a656e0b3c734ab29fd87fdc2356fe919d3c2b58f1a1842948cd86aba5fefd11411b397efe153228e850779164a80735e088296aef61538ac616e71aabc75966698cc69433ec1786fa7f300722cd33cc92f439c968bb4f0aa40e6a5b648473f6237dd73c94139d14dc80dbe5eedef578aa778e820988b1e722989b12440aec25fd98bd4f639f08032fcd2d02e2cbb83223cb023451ce6fac2f7d84d7356e8963e9b1b6c29666d8df29315cdfb687cf78ebc8b23ce451424dbce87f17672aef4946e9608443852128bf2b982060fd7093d87f6eee4e7b75c4bb398b428350278e1d1cbaa04183cd99913afc99551e5707dd4a8214eecb6c9fef9eca28d0ba02485a7d5bd3ee0d4bcdb6c8b511ca43f01d1421b05448a30907f4a35d626e2ecb12dd12fa52281002fd940cd8484276dd100003ce42b0f292ae8e1c12b00d6463cbd491e9b63d697cb02dbd4da5d6888ab32463c1a6e1bdb55b07a88e9bccbedc3c948fa44ad9acbf224f5c953259af2c51cdc4ad99649c6908f52f39010f288f474bbbbd9b13c358c6eae318fedb50c907d0294616b98e4e80f85baa450bdbee8659864e6016a45336c43e111c79dd023b00980ea90e662a4471e6461a99771cc8d5b99f1941d0b4873427d7704dd4f8128eae5a23a577ae16c364e919f855202a87d93a300058381c2353754bb9a7562ab336d016f35df93674c7fd9487cb1c0f9ef2d388648aa224258ae74d6b79f07864e67d73fe7fa2fcd447e99f1f7bbdda60a3d410609e40f0f772f01a9f019dc6e89cdb4c55914e135d3aee201291ffbf787d679e4b7a4d081703ddfd781ea6dbb5f46bc001315384c2abefb20b42eee8cec6a6733d9aeabdab5e05833d6531e5a41c8652e09be5ffc2fd353c43b760eba4c632917e45ffc84c6557bb915a729392415bd5c9818efe39a21892846522a2ab844d2fd759841169e2c5e930a4544319ec8fddda58fb23f503531259807ac2dce16ac4505bb75cc778d5a2da1cc028fd022002c0443ff4f8ae6772eccdc6e72b17db8b741472fe810195c97ccc134b0429468cde24a9c8afa1349b4b4381e872338fe8b7c74bbd5f7de12ac6f95e54f0c6de92266ba712b4d371b5468f300225c530c710d097c61c52cbd436a9c327f7568c64cbdb7f7083365fe5ca2bb2ce3dd0d718bef9483efdf6ae5120cb70ce9a902e2104f0445b596adc067e37b80c850e898a4213cb9d67584b47245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395ee72ecd530f0e47ba5da46c052c26f4b9a953459ac4f6afbfaaece45a5ff82011960fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5edd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a9901bb3801c1b6cf9d36bef650e297aff61dc1cbbb9789d0e667fea057a262e39e86100b67666a4d14507fd43f105a251be7d713303af0581a5bd3b0d787c0a2aa9fd4f05382315c0a32fa3d77d08b9c75b190bdbef49eca11f61520db974316ef5b09915985fb3f074dc1ebc48f7796722a162b3f0263d3ffab496fc54482b2494bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d6bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b80b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d9175b80f0fd759d48de2f33001630dc4905ee3786cc6097fce981632661195691ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e16fa4547451bf5656a8624083945404367142c2a1e93b9e46c479ca81ce2b15dc862700d6dd1c194542bb1b7d6078c829857f179d549dbca9f9fff56d1a9bbd4905b9550f7574b59e8be2e813904f46198fb093afc816a8df6c92211325fffb8cded840088f864c7969facb4e46c115cbfbde5370b9617e772b077d62be3df8f049d5b2b6f178eb2ddd8e0d32c2894d31051830bab7b131979a636527a32cd914be8c093277041d16fe28db29f6fa8f905f4c6b028c487daee15cd8adae17a81b6406e399005db9ae973c5ee9872dc996129d1226069578643f673d9038ca46a17203b4ad62ae9a23b466c6e5d8273c3f3525073c096b52e7b06e80f09a7f945f078dfd7b6d81c2aacb5150c898f37a17ac22be28d013d772e75f5ef0acc67cc624c910bf0e2584ad7709fc43b875369898d663deb8b1de1328e47cfcd5cf6d3fd97daab3be354e524f76657059aae49b92884a19fc1edb6a6bc11a8f0d078d321e2f12f4b25ec9424f5c34dbdaa5cc64e4137f041be5f18b3e6cb5783f0fab9655298e24d49ba6b81e85c73f96c38a354d01b2d6256edc97c7f3ace7719a65bd184fb4c9187a7a40e04231cbc3f4990d42cce357bb8f498bc259d7fac96928a750f3af2d93f048136e222312ccf4b73395d043977551a72fb80cf08e869aced8d19a7e71032e2010256043e2e2c3e7b91d615a1f0a27b096a4169899d971457227db50e17e15b41fcb8c021ab1942ed9ff47185b2decffb701acfc4d2177ad16f8208839c92ff5fc2a3b2bdd4569ff1ec09deb2abf8d5022feb768157927b0e4e2a946963525f5bf94c71b18b539e3a242717621b4c39e2503a8a0c8b67a4d649104fa0ae61a7eb14aac6f7fcb7a82fdd255f7c294be3785ad4c7ad8263f6dcb2505706e585c1d0a83decdccd78eab1ddb47903145cb22e7b61f941453042895bf79b0e17629b896ffea7726674edcba7a42e93b0352506c648a4bec7a491461ad710798765079f69a51ed864ca3539a5e044383f2d51b3c60dacd300f6a02824cdbdbb8675ef6c213901e454d4205a24b785ff54f2ffcc22e011f860bd6f6c2c7888132f6f53b6fa84743c0dbd8e13009652a92e8256b84b235aaf9366b3488f836e09df24e2d80c5af1bdd7228857acf488d5815d3d8244e6fd3feabe243ea8c4492d30b7b9566079d72fb32fc9ad7f6ee32d73dfeb15fd52e36ab7b9628b7aefd55ac894eb3186d4815f08ca5bac06543afc01fed7d2702b2053c686812486db0f9241bdb013fc1a961aeb0385d671dd3f8ac2752ae1af263961c4e056bb82fd29d46155c4b526772997cc9c777aee8ede713520f00b34ff856f4b8f816aad35491cfb852598a9a0222878967072ea1e544e626a52d6e9b74e201b9606b86a899444285e372e9c4d714620bb217611ebb360309d80bf99dfeb64e97362ab7e42d7dd18228aea7cc18da54a53549135ea6164c24fffb0f7d1af1d3131ad44d0dcec7329ed0d761ca45aad69614a120631c179d916de0241aa6a001eee6152d5084327fa6da28fbec48679900f86af802aed738fe903da54c6e4ee4eec51c55ca19f6bac958d0ee35eeeab2cdcba0faadb149976f7a187b8cc109f30317b990fd5122bf285e1dad10fbe50b34024bb77c35cafbc223a8b152868206b8875e23ec7ca902027b3a169bcf541dace358934e87534d35fa28805e85953342324ab19f4186537efb01ce800bf4bcd9eba42f22247a3da26a0ca22168e6be5949a87bd086d181f32e4094bbe4ca0fae94b9cf57dd166bc490365018fb0aac6ea91b9b0d89cfe0419771f05b9c953284bc1f43d334f4757132267131f7514799c7b17f3d0922dd79b1ff3284a087395f296821fa33ab0d607a504a20feab165347f8043170f6275bd0fb61debfa3cd99bfc996fa5c3e073557479039c3445683721dbbb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f28dcb900e903fe30544817569a81caff5852865252045200b560c475c8d5bcc799961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0ced786965e36da745834b3a4f762e19b88ce9a7495ca7d63fb93c18f4decf93c709679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c829c39eec6a1b38966d26ff88125f937c39a819bff3cfd9d5640933480e17de1156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0867e0050b0495d9f3ed09721a3859efe4c26a1717cac734474cc560a418a26951ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5ebb081784d3dda750f1c2dd089fd64383151ae52476f2406f3aaf1a55b7ef8806ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a0d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0efa5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dc116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c819795105a48ed440746846b7c45aa42fdf7f8117f45ca6ab4b02ca2b9c2e56319cd15cc781243f332ba8ac4f2288eca4353af9c529d45d8068cf6ef2d9d6e92de847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3ded5e9bb9d0cd9619ca9659445558295b59c017b1481bfb1b7899580b384148aa12e5a60425f4998c02aa0a7c2ef5d85ee1289556d8cd86694dd9298b26f39d040f7cc469922e233ebd6abc7eac863946e6fe7d66c4b3b3364a54e9758768f8c2f51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa6946595ac7b9e40319d9d9d718db4c187c6782775d9a054a4d042cc5a1adcc779a40bc70343056bb250d50e357fa2f56ae37aea578d5eec47bf1ad458b669eb9aeb48c5714af7a8067dd71489fdadc66c81690efed6600e832ad5a138dc53f7d5881bb98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a63110a95c821edef343673a6e01f428e40416e3d68753ca99db69dd0b26cfe8af220e63490ea5e056751a9968efa99d1fb0f7c4a9e290c2bcbefe385b3f04866c32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f01541ec0cf78ab96f5efb851428cebbed3aff631a044b9af96b4c8c2213e82e76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa89d88dfd12a232904e5989bba5b71eb0526cdc34eb58ed009a9f46d12e4041387779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1df904ce3659fcb20977a62fac57ae645507fb1224fabd1124544eed9fa22bcfe919450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f81948425e513a4244d30c1d2602383a3481c40f0a8372a54bc869c8bc61ed3a7898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade3360183132d86dc5ccf71efe92f720ebd10842db80b3468e8be5db5f37ffb73cdd5623badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa46e133f7d855f83c84aa063fd85e0907b41e4dafa221f7cfaaaeeddb35c84bd295f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc8216e12ec7341871fa51040d3512ff5f3700f8ee6a9c08f1e22a1b42d97345583daedf51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c082da36b931047726850ccb98c1e71f8095ffbb9c441c0705bb8224e9aed7cab9453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123d732a7280ce412179b0a0fb56ec7ae4a296a864b2067f7ec15d1dd36c25a21033b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c8ec04ec8782e0a4203b191d970f27b82fe301ebb21489b97d97d73671f6f036dccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f847c05a5e56071a3ef62134dce4b51cacb03675a1e76022387dc5c598839eb5daf6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fab7e87bfc702737e8e78c9d8384b10347d63a2e5305852dc7796b9bbc7311fd03783f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a48b7aca20bb20446e70ffd55db62a40eb7526c84a670eb857abfb51711f44877b10196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd0f992e1a310f1f414fa77d3170f1208e81ee0d9dde0e9c5a4000b8159ffded7b0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a22b4629e7730fc418c1d2be81f2fc4171ee7a6e7b6b57ffa5486b6642a45b4a6606b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d81c72161388ed76a51113b35d47888767b7d8a7da8070438bc35d4c75e69c466973d4e7e01526dee0c4827e6e12215caa242f42041ff0d57b82309a3ffd9df44071dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e3593a47459d207f537070f5c107c5d53b71d793a28c46542fbf6d97287b4d0bbef47ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa34b0ec1ab576d074a638d45f0581d4a96be6045a1ef135a656a74f9b1798239904476507766a7212a243316a76f2df89b9ac8b7df4a68f0232dac3b38238b2715ffdacad0bb028a42588357e3fae10fe5b1541579ee42df588b38de71333264b81e24e387e1ce18afddc00ecfd8720ee145a48c61130c224300c8d2f0361b19bc541eb4e8896f7278f666083ae589456c9efa3b55b964f53c43e91a1a5d5e73887dd6fc4af066e5b5f65effe7d94d4ef607351e64e1f0e42099f1f51c425b4ad0e2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae5e4909d91b75d30afa3c00ea047779f487f1a0e4ab2017bee29fd657f5e3da75cfd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0ed2df772c1b495e65bbd97e993be010a0a68148efa1d7c238cac0d3139b81554da5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f474a501aefdddb47a4aa72afff6d4fe8cc84dc7ee7752d73bd09883eb6a07e3b5d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80bee22e47a6d6beeb7a58bc8cf1d265120dd984311a2fd965a9611f6f5541f89d4d0dbd9a9e86f867fde7879cf801302beab20f447427126f4420ef7310bfb6c82d045b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8b91c203cdec9aa4513dd68d16704bd8e403317f838cf951f40923bb110ecd350339d46cdb5bda5d7de02ce3093925a0687a84a1d909bf0ea61a7fc33d376973db5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2bb62025e51a0560da519e9a76320793a36c1907921a1ebb40ec4c3c95f45f3822f4be28a8422ef70cf1e711cbb14de0e8e338258cadeba061581bed9e67734e2b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b509dffdb56041182f7604f79eb2afd49630b70193558ba8151a18321c4d71b141faf1400937282ff975799cef6df1c38b415c0a73d0281f4e5f49caadcead482e8fc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e4b7e80803443ba934fc76620f629567cc7ff31fad9f19acf06c197713894fc08ff24d59493ee733510ed8035ee361363e3c4bb8d45c35cae3e6231a177a24286b8273eb06e246777347a16f58a9390c7c072d27baace1ba51593d1d38c405a03d6402ecac6e646d23e137a69e46df7bca3cca889f5d26d70d2d908db1e42f0b02a9124279addc9abb1c60e925615f8950f27f61351d32a381d3782c3c385b3b62fba36a2c07e01c80d8670aef9452dc9898adba4f5c5f151392f2e59ca5d658cc46b013604e24b328af307378f683622d4d29b9882a94ddeda8392322a276ed35c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d739141e23e0278437e5665365bc9eaab51e689542932605736dae32a89fc05d76a177996838a093c7e5942f84df58c52360eb36a7a48f6aa8ea3eed9fd3660d3955c74c6f310ee400d1d30b3aea49835a53738ee27ced4232c2d952a5b61ca7393146448319627811329c327506d383a95c089579f6f8e635a045a581ecb4d7450ddfc844a6b96c64fa002239ad670b6f913517b69dffa07627dc468c4a9725e5785a1b3361d97c86838bf197ea2b64ed29af82671d0c938e75f02105949abb75e8fe80faeee5370358c8446372dcd9fc6d30208173bae5bf6dda898da8eb84b909f1f9a8c8852c7c6ec43ceeccf08cf947d2a85e72c99b69f8134ecd9f64607087a577cc1bf76d2ae7b74aab73332308f43dfb6ff2468d4b2f32e84de31559431d7d954f260dcfee0d4bcc480484cd20e8429316d4508dea754a63cc0bb0f58136b903be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf540851ea2cba33d93b412cb65a649dc5f3b0e16538d68d754b9e3ecb3e79d1c39673f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b7260b14ea36ddd9dbb40932f3280655f3ec2818117ce342481f55be27e6ec84195db870822780a89462bf56bf3893b8d22c588527477e127ee6dfbc0af651dc957d92dbaa4145ac9388d35136be66c191d2221ffa23db7ea11156aa92925830e89f7ad4553be528ed7012deb39ea3051078e8e4a6cfa9a9fe8dd9832dd326d94120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af4c497ed6e8b4dfc2b8cb18b6211fd34871dd27a42daa84f438af55607650d883e7451e6b0a5362242ce2e6ddde2ffae71dd342c3c54b71104a3fa854c6be1310b86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c438423043fce6587fc34eec805f68e711417509267244c629bbe3138b1df445fb9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08026297c37f7957e21b7c1838f1c11fb67cf0e954a1da4dc8c6636f77f8a0d25e37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a347bb1b38a6dffc764f6592858d7f2f6f4e236db42161cb37506dd58109a7b6c35e364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f69cc7159de2b9e2ac09afb414fdf60242be9250718809129e45ffa78905b11eb4ce5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5efa9c5dc57ab8735b71d7f8825586ae3b9718698ecf6a1c30f15e602dad5aa908550a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82b857de81edf53951f3539b08a572b8da124faab968de18116a4ae7a81f63293a53461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558140b53f6adb3ccae8ad6693f35bcfb9b8c30ddc578ba533de241260e569ae792f5e5568f8e7cbd50f68929b4c7487cb67fe357f80e379cd9f430df51b4eae3fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855de007e0a56098772ff27b3a24cd4606ecc9911dbf22ee9746159316034cfff82e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855065f61648cb5086ca183885018483e8907169388442c822a04d60c3dd11264abe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab970820f149cf8373cb3529f8270e640a1d6db9984dfc9969c07ed9d9ab99b714e88da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a30b2b9a171e33e530250cad0c13a5f707813e5f6192f5eef9a46831a96e5b39cf182316e5841dc281df1b067ecc93a5d7f5b998aeb3f0d64fbe307a880e3640c553dd84898946657da98928aceb8631593816c24e2267fcf3e0e5ae107c96a6b7d647b34a1355673beddad0024e83ad810b0eec1641831145499b6f9ebdcfb13082496c45ab93af811732da56000caf5ffc9e6734ff633a2b348291f160ceb7ef84a19b465c8dd8b38407b47475888cd48b4277ac6a03975dca5a37db45cf5868b93997fc4343b8b04978fe71aa1fd0eb935036767809ef7601d7c167c6c8a845bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8654f6d6a1d39c3c6af0be2ccd384451de8fbbfd436f3e337bf581f80ecac50d9b71da3e2b6754b1fe16527484bd1187dba3b05823dabe43bac7a40e6af3ba741debc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e316712ca10f6cc37264eafa1abd88bf63b8fed29fc82590ff5d518aea7cda630aac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3cede7ddcdbe853f4ab9125ee84ab072fb1ca16a3c00baf961b532ee46a4eabec438fc0177cdd9ef205f2136200f1b0021252a29603a0ff68460047658a57f8706451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e43bbfb6b3f57b0542db92a7deca128b48f1b28b7e7ee62b01b955dcbc7153b13679c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46fb2eef9f3f2cf62598de90b49e9cb513b352753309b1f924378060b4b759e54dba04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f99055cca4ced779708ab825b44ed27ca88ae83aa29775125b80f8edcb1cb36538c078a30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bd348bcfe68f50e56f1008836b1906f895d4df7bd0b4fc26073c041e7c77ed9cb77964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5672d97b2259349d7c49f7ae714d252c3aa351436da39d66b4f39e741060820f5e359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e156c84fc860df0f904b54929c7b5f65a149b47501db3c245258846029f2e6f51d055c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457dfb46580ff0b885921c6af041f293cb4dd1cd51b5d51ce02ae04975893eea02303fc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544252b9c6b2c29e752e8c5f3927d94559ddbdd19abf6ff807c3954801f0c560d195e5976935d197dff9b232d4f106a955d8d39bdebd3b3ae6f48920593606c069c6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd71f9de24ab727c648a790ff671cc794d517ccc784d531830c6ae8f533bcd56426dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef63822daa4fb27c584207ba4f56c054b5ec42ce309f6a64f5a8dd97bae3f13126658a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383d22a8be20e77ff00005c018c905a9b59456ac019cf46453fe8370e7cf07154eeebcf3acccf3fe6982e77699272b727dc592186bad71fad57dfe043c73e37e975284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf845492863848d630e5d04a6e35f6179b1ee34fbe8cc2ac38d35f6fba33b451c54e444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b368f9c46c862aa00de581cd1a005c5ba50b782a329d3b3bfe0dc0a8cebf54267a614c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583e86fda55c49a4570a1cd8016aeaf2c5aba375acd5dfa6ce9aed7f701b4fdf6947ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cfa2ddc0a76cd5be325b4c4c5cb8bfaae8e19826a36b37ced6a05ec9cf4de425767856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e6745691534261b986a79d20ab4fba5c4c3a2d92e50bde59e66defef5d8b9d645c56868168803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a2173d395feb9458ff0d7b8d69579a16cd0502baddf17236139c2fdb13a0b9b8189c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e499f75f4995a5f48a83ce7b938796c2556ee0cd864ab598677017833a76a7368a2497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f23ed0ac00ee8286557799a9922518021f0f15cefa8d1f5fac39f05807ed63d6188ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bf814e16fa6a3c9bc5d611c84417ef8cd38aae00e5cc2fc70178e2b87da88f97f857027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db9243ea16d533587748391cfc049d0139d04a9420b5eb3a8b6489d74d246e535fb36dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e9451c8efba81360c8971f148e1ee8f1b7e3fa4886a97fa76ee7307eef614f4717e388cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f15497f6ed902d09f4ca11b4397757f7c43e508d29b367ad7003659ead59279733d57c12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f025f50c5ea69c42f5d4876660e06643a6b3672294c7debef16c2b72152cf3a8e9ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1d5f9fe0956268f1de883a72dab668c43afa984de82e3b5bf76552b72f8a62a59224f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda5bbda6d1d546c277fb63aecde1ebc4486af9ccb2f63bd5ef9b74867fbe4577ed50411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401610f9b8aee6385800717c205dc7d901007c261787c1aa922be20f38d73f164c66dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e9044468745aeac5900b532da79a3a906b852b42d73e0d751ff59dc896c6c07f7cdafdfdb5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb112c0800c502bd67dcb960f21c310bc398e65ce48ef39899a22f56c2cd86e403341df524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c021f3a6a2cceb3c3934b3473fc590fe3e776152369d7110d6f1eb6d59f7219dd3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b5693396bb0dbba3e6f8460868901b0e54d6ae3ca4c174d83f905ab30ca57e66bd498af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42cae94c3a81fceb66d2c421f40276be484fbf2ca00775eafd0c957f9515a055748e13d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5393dbbc04e2a7d18586ed65d8db15c1094034aec60bade9c8607973e04a711a494659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5d684fb37aa674bc47bbb80bf8df5517c41052ed80120d25f9e8b2dd177644299e986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2be45856a539df8b2a0027b6d4154ea6e700d11b0d75120f880328a5830025c0902d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d52017622458fe712985fe670cf24a95e82b466ae95d3e72e94e92e8fbcbeb12ddab29e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe53712d38edf71c4541e7a9a9d64ea1239e73f36df62ff508ebf7743bbbe5fcc12b9246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa32baa1c61fc2ee17dc3bb5e2f66ac74d525a67af34e479f00fca03c27752873f065aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c3d8f14457ce60687793562bd4092f09f475e700b092d22b4e78cf325716f2159a767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2bb31afb742516199b547baecef44fab916f1a979dc98b536d66019ca6cebc3d0852f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987d9b7132f8d62401f86db62a2df7ad32f46898963e9afebd3f68308b22700395080d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c64c2e7dc88caab9518889bc9e1929e0ef91059d2c543ea1d8f438ebfa3196ed6d5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f4b905f5f07f65d3972933768050b7a1ef8637c9a0e59e024ab9008ce4bac41aa44481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db8579f7da95bfca08b602331bd6a54a27684cf0dd3c7bb02c64c8be3d5adcecee2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c6706726ae1e843d692b56afdc3c7f1f43b5daa4d0418f9c95a4a19650ac24f436ee86cbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c7789e0801b7a50d21bc2036e84b516fa8421f3ccd500a1f90100619feeee52e5c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df56dd35a225c6b97381c34d0e1155298c836ea6d304ea25d38471f7d903b7c1b069d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed303f0477c2ac8220afd72e71d28a37203753ecc8c9ccd4e881e35f4428e13a5d4a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83cd1415b6437bccbf351a26eeb62caff1704c432c6eee24c5942d8fc5cd8fb85acd2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c566a3e62e8e0b55bd0e984455d7eebb320414e172cf366d408a6c4cf4af940efca4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a9c6e8bb427dc1c7a6b164c10ffbefa83eee634cea635323149925f3ded96364e72c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21ebe11e336286233fe4af1b6308a80e6d4e58886269e877f18d5635763ed9fbaa119df02c98ea2d73202fe4dc3e63935e565dc308770a9623ef7a18c213d0076cd502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567b19ad85c70a1801d6f85cb8ec4ff9b158c859ad6745ee1af480a5c92c0051a6d1d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c84260446eda5204f370ecb4f90a946ed6c1cdf114bf8f73f9b998f02489610396a4dff288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7abdbaccc715eafdae9c96cb74f5001b641c07f0c5667badaafacf032678c20bf7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43dfa4dbd8ae17fb5c9a4d7c3f4fd3ee2bf6b363fb1614d721d4c900a2af7e61963341608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec8482a919ba2d35103664f1b37677592cfcbad566a7410275caa0b63ba86f0e9825ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c70b35da192386048f4d7434c6e015bd9605072699fdbbe671d4ec989a85219336180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302efb9373d6ed75ff484346cbf26fe347584502703972b728cac8d7d48b1577d0e26f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fec0307537f735d2456c7c0b132cb93872690ba5533f7c95afdc25fc1809e991058c6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e93e500c44dd257692d23977de8bd9af5375f930642698a78612648c3dbff59c18937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28acecee2e313bfa7d7d38c092adf6a1e363780b1e2ac980ca3639cefb2cd61c24bb9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a0b5da9cfc53dc9e228d19904172c48ce2c1b1753126a8573a78782739c683ffd1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c386f6f0f318577d867bace7fb9282e5977bd415cc533e327e663cfd7159d9c54e38d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f31e1b712ce8700306b73c447d4fdd1dfc12335c257a3374f42a34207ea23fdf5830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd10cfd712c4717d149421049f1577508cfcc488532bd9856f04539ddb8a428bc49c96ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e26526270269bd21fa46241cbaf6fb6d1f55b1449eab8f8a9c92fa9b51e084db3ac92679fb30b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d4237d0f4e22f9ab6b73c34fb95d9639ad5206b38a7cc6cdab796768250c1c50587c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c97cbef889fd513acc9311a7ce9b34228a46642dd22bb930fd1223e64bda715f2c4ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9efa986db183b107c3493d6b920130ec6c59914460a1336db423de09e8ca49a8ca0f3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e847456a6da63f9b52e1101060ed3ebb2953fc05679c7f8dd9968fa877200f1179a66cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e5e4f21e1dc15bb982c4da23b062e41d607d1fa37e61dc16de209394691b46f28935f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad25ee539d9c8a355bef9c2ff409203f0220acca549201a9607fccd1a028acc8ccef1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd880b286bf9c6dcca075152b45698f8a2483985a29dd99bb97d24eca8f993c37d818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c180f6fc82368987399003145f1c6801c94282e16a4b9f53ac5bfc861695fa95cbf21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6133a980e0b88895b6b1f4ad38d094dca549f2b220252cc252b0c606d8658cbdfeff91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bd4f3733e4070bd93841d382d8f7eef2da9137165515bfa3ac7174f54a5145582ee2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c88c3b38fea3e8687933050d6ed5c31e4d5c59e2940c0283ea5b3cc92f78170e6f75e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d55a5098c031dd6f62c7139f08b0da1e4c4b7cb0a2ec95ed60489a9781c24b0d1cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19d8bdf0273b5cf16cc96e9e7d5b7ec98a928d792879f7937d66aef996fb056a1358d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5b9b13f465d09d371ded003452280f9fea33869fcb9e59810df816c087b51ba8b43b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97ded1bddbd7ed273d7fdf50cb095716f47e32579d1a560a5fd8ec65ee8e4cbaafec3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94cf863242c00a4687108668db0354f11e3dcf6b0a44b77eb655f511c3d8be0418b6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835ff10b8e4cf7da17a6dd46e481b5801d455639cd57be829656bdb95f309e27e4fb42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb33912535f0db74c46afcadca46e1ba72f687961ec1d40d159aedddc8586b930f53d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753dbf6fd3764ddf83f2bf9e31fbbdc9e5e669fedc1aef68d29401f74fe30aa63bebbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b33cccc0bf2074f47d79dcd814351ea337f9c6989e778dc42e6c849b9d29c743e2379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d341e8a4cd9dd6445a6e3998ca465bc420860d3dd6854d429a35476473160d99825effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47dfb5e3677a0188103821b0495e85278215575932166f36ea5eacde945b74d8dcd531a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39d6964171ed4cdc2445b2075eacedc5fb2a7848394c07d7ab97737b691b82d49ff5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725b954167d7dcb5c9ba8a2a6e76c0e365a55d82b4f903e243ae1bbd1d57cdcfa7cd699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2decc585a33cefaafa7f9740c99a3955abe97d29f0cc1c994483ce14312d29546478a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22cd7e168bd2def20538192db40792ca286a9ed5308179c40315abee64cf0849f88247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d287816160ed4c4cdbae9c2dae5d993d2ae0d32df58fe9cf04a27a29db990a1f5158eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6b8aa32bfdbdc7a5f0041a035409659e1c327f94eee90124ae6f3fd38323164d57cc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa466ef2fb9cb14f8382237a433353f1e2e4b5729ca0b4035940e6c0d1dc0fa368b1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd9819aa740e0f574bc671434fd53c3679da19255cad0befde0fc922b04c87b85da4d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a99335e118d9d097633f83c2104ace94a12bddab9d5c0f363e6fcc90ee40e89236b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c76b08232b3e0d28ffb31c3c29b684422ddd2d91472fef8d3cd1c4455b332f27ca3d8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdf192907178018c2039d2a67ab37f02f021b24fe519b564b55f31bd56ebb9b39893b2265d619efef75a02e183250c5ba4fbe9ad28223e59b1b50e5d7fdd89bcd3bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e451c0e785d94bb808b64ccd6b52ddc52a319e2a5a366c7f5b7378eaac32dd77d847971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf0607b97bfd6306e30fee0907fc528a9ad9d5f4780bec95b4dc33aed16a6ece1c4645462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e8976859817b92cd3acaa1d48ef613365a0895a4f8aef45b1e06f5fd7b1108c9d5dfc9e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c723323422c5a17f3141c18a07f7bd119f00fe1e7520ca58217597d6744dc925b6f1619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f846eb771d8d74e72e5c08b04de2ba0a30e1c861df91eb6482a97667df893411f090572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dc3fdefbaca1c465134b790aa170ee2ca700bc10128bb4440c2be4e7f9b5c541123824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2e955d4521509e408c7be37ce2f937b9cb1a969ec43c98da45fac913d41e74e2749fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ee47f3d86718b5f374c0da5aab2b8f918e179bd8f03f7e8d80f1e52698c932ec2749de385c0bb2e193dfc9f76f7b416133f40e530952fb279c3463904ee17c119be303d7848f67b968844aa0bf598dc402e9eaa4f6894e98420f7b4baa3f94b5eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc8143f142d479917039036e2e32762374bc6459c8873f8cd7e1ca858fdc9ec0a08327f64727521d2a86239303ee6898f9acdf9734fe42c9538e1cc3827716d32981c9a757204327137dfa219f40cd7a482ad105b590b2313bf89125600383e5529030f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90f0256e3d3b2755dee088632f8476bd342810a0c3fad7ebf09365aa2ef8377389668db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5e11a1d175c97bda7d770ce0aca4fe2b45ba87c74e0ffeb0fa9936f066cffa769af5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a0100fe66934026624227c639eadcd7f4b1ca402a9fb4dc5c0623d608d55bf38179977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda4010c9b60dcf32445d21de4daf194cd1687827fbd4a6e949837d135c66c058afef942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96faa6a60ebf473ac977b01ce5df020d84d05731a7b3f02b2ba95eeb1bcb835b8174cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae5427d30bc3ec2ed93b632f0b0b075e64a89a1a92ad45d9054f2d37408dd3ceecb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f0e961cc2dde40e383652465c7a68e29fecefe1e74fe6aac30593c1d44dac658f529a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be636f2a7e2ad2e17a4be153a675755afec6efca95e1af47f80afbec9969ee84536a83121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa5ebfb6cb7d63e3a2b9f9ce8386968025a7301eaa82c73be521b469f4c2704346f2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759e37474e36e181f8bf5aac04cf4681c22f153ff6dfcc63a6ea15b856785494f01eebd5a297a9a3b282745059cf74ddddf82df41a2fef816c89e1eee5979cd5e96882d455330b713bdf7e17fb8d0dc9257a501e9803e1e79484ffaa7abe3d62c54b2b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba752734853f450535a26acc69afa22054c9e86e865007d14e80a0e5e244bd456bd6991de252e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d15c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7447bcec8d21ffb2f435619efd4112d328bff5a1012e78f26726d867d6e62a704e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fb94dad7f2ca3adc1567396b0a8f69ae0683ee98f3404bea81c70dc6f34847335e86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319896d001c026b7400252e4d897755bf5620ec58885f443eabdd9d3e3a0032fd33d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf2d5bc5775d93331e6b8a734146280f79436545d75555c826163cb46731e95d5d5f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5d8675d4fbde504e4018a99a819f15bb6e7bc4d30e33899fe8e9037fc88e55a5867e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3055f4a09a5abf36245064d50aad8ac18b8b668b1c629c3cbcf3cdb469c0c59f0f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf526b923d82102002b3218ddd3ad49ea53567dbb4672ced8cc3c691dc6236318269f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0d5e82a88787320f1aa713439bee0614ff78faa7781217d3982dac17f1cc76c77df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a8652780841d69bb638361ee7564d9361b8ca893e02fbbc98f1488e44e698429170bed9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad4810e6bc334329838df86e1983d2a9053045faed9cf8638e399d435e6088a1b251938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f6e7d9a527cafa1b49ab33e5d83ceb79393a56c8bf018f73bdb458fd15268d8707e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0f52c78252f7f50689683cd2b4ef06956cf4aacf472d9af620a0e8a1d4619cc8fe55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c474c66a914e9bd8195f5b9cdf9383132c485ce15ec34a1bac7744b0722035aad0cc1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e33825fd0c61ca02e33825d669ef77abbf4f5503af22298d66cf31a02032652ece102381c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb00b7a08bc4a5beda49cde349e6d07cd185b44e872e560ff5b65056353c5ad94fd4a4339d822fc8b7c68c5180a45388ec96a6c7fb568c97d2aa495f88c917e221071cff2b5cf4b113285dff0ea2bfdeeb8953a213f2d9e7ef640a81dd33f70486295e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c35fe619401ebd67bb7eec714fc03656319364c79d574cd0268e3049eb20104d4c35ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777ebfb46ba4125e44bcb22661cc95374b861924cd7f07c9646f110e9fd6e170f5453eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f5468c48acb0bf28d5c3032f5709f88aac17058eecfb5459c57867785197c69c6de4dba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadcf6c49c2523bcf6acf607973d8705d4e224dda2193105eae9a6c7f82edd4a9aa63f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdddb524d4e99ca72b674afb00477bf232e80047564cf21afff760cb178579f9b170c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b68f5c742c7a2f4366f34faec8ed26f339b29147ee92bff60b1767810d6498ad57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc791d9cbb9d6e74b9338b5a00cb4c7e99ac9a749f2730ad4208adf54947cc566551db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbf51d303cafdcda4b25b5253daf655a836576880cd156f43232c87e6f5ea0b91192b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d34919983ac96517a2187e476fae716554a1e6ba83bd86ee6e79642217b6774b4fde4691935b2e46833b91e92a544c869581a283aba6565d2d05d997cc1e8f84c140ae28ec6482e54ba62fa1df4fb65605f05575826235eda64e210ef6138cd6ede0024e26ba13680476f751bf4f7d79281c128667885ed7c0e7e9ba7204ebe026b7cc265234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa6230caa5c86113a6bfe1f5b3da541b354bea1d13b0e6f2e3f2f6fd6876b74af81c0fedcec093121d08fc6230852300b579e89e0a2a4e794dbe434f56311e0fd02571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df9e589dfa23c80bb669548d54884cc4f2338e1d4371d975f660ea357a5beb7214bec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cf1f5fa9e60628014eb7cd074e6812559ed0fde72fb426a7fed8fb019cd4ec3425be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b40981e645b1d4abeb18c4a5ffe6185c95a48e708fa2bf7a4a7e1d6f292bbc2e5c8c340c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe8ca1edbaa66c3816606267ded3cd47a727cbf9e9960d80307eaa1bb7ea420ca31728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d6760fe9cafb8be6e6122b705c6c6018bbac079584fe546b62e45bf44efdc62a98c99cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e27829420785987b8276810da25444b9ed7c9f7f734359f14a70a3595b509529708f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdb867644cd4a20815b7d8be14902b594bb6e30a81ea159aa5c67f24212c92cbab6c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddffcf0ed929933cfa373d3e71ba42796b5b48ab461dac30f7afb53285903a8b6fadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95fa3ce8db58b46478c878e81172e6087a61af5668ae23684056eb127548b122eb408c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc00719badcd291d152446a6f16d0e35884409ba8eae577b37b01e091a92122395cc4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb8123b4d734b760e06aa8c98f1b2d87bc84af08ff6954f93fcf72ba6fb8b66add6d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c61465b3640ae4952d3d0aaaea51a5248395e5288a29dae87d825943ffa2ec9691479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c515fd6fc2ea2a5288f804ed6b8ba0dc8e60b4063bcf404e6c6c295d497dc2b10c1cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98be3704d68750623cc843a9537f7aa3207952f2f1be229e5952a4bf21af2a0cc7d0cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb85209e2d35cf29db6bea270fa2d69ede2a04be1ab0596513f0d1f3e51b2ed62604b3954a837004806dc6db5cb28d0e7ebd36e55b828fd5db2d040bc08ee7186ed85a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340da4b66d2d7fd6f15d6db5e5444edca2cfae3398d362a87dca8e2c44208f95b31333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c347cdf93dc10625c9095a83914208e9b420c03ef1a2856c78218f9cf83bc9225d2e8a3cb7026dcb29f07dcdb3b8daabeb0c1c417d2c451516b78d4d5b9b9df09a00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e1904602d9327c92b8cf7a2555b46e19a09b10c1df9d02b9fb1a34b6d47b596048d136401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9d508b340681f722cf50b49277e642517944fd3c4390d2757acb3f12f6828e66b5d9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e491065cea83c816253266584c7c1ba53568114e900677cee29ef3b5ed524f6da43633038273400e08e3cd5bbb771e8d3ffdba4d2e65f03dd275feadf8366cd330246eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfdc56b0ed63b07d6c031aadcd37702d93dc6e654ddeacae9a3d962398246de0ad04149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b81080a382daf8092689f5f459f662c423fed3f20722d927ad7ad70f5e3da82733cb4f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec07df1687514aa45113a54dc2d2c33df117ae0c1f265baeddc249e7a1ad25d5179cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f547716ad7761d636464c4eecf66ff228bd7746675b89efb79dc1287d07c29bbe7dec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3daca2b627f05abf61b69cb36b81f316cd306929d8db5ad05d6fe2fa3b05e33ab0374fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670617ad2450052295c81d43d22868f8f02cf66d05ebc9c8aed79404a9248f1cfaa9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd93670391ff15137f39937868b0d62118b5b0c13bdcc715e469164d5fd2de750c4c35284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fde422d11cab8f29fb609af7c59f87ae72bad81230fadf17c1f2a32f4e94e0aba31005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8554b878d421688ca473747ff17cda327a61acbbeceb733e567bbeb01e48470ee5b0d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2ea9e1d420b8bae40efc5b0204d7c0476ed09adb8fb2d09958cdf26561174bcaa73ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06ebeafda95570ba8814154e1a1e71d6f4a9bf8d4187187e2ef20007dd1fc9a9e6444fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a7886adb42a3502d203b6746fbb76d4b563ba96a528c953771430361883b139b0b436c4a1fde160e7d87974e3b8eeccf9dfaf67c021e0932f6ed99be4eaf8605eec458e1d37df2b2e495aeab3a1c817374dee6cb93f9a2e5d7f515b762ef1bc21251138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c551dfbe8951619c5124f8c5043ddd75e1eecd9c7179d2392fe83171ff6eb8ec8e8c323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b982d5838f658cba8110032a6d7522e46186d3dfa0701940e73fb3e1e0e69336ad38a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfc7fa7c8b4a949d169518b40ac7980c8943df91dca240d13dc174178078c787beac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa7ef9683ca9b8594069bee10cc37c223f17f56c9f6faa9e59d92164dffde2cf4a1e83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f27ae9ffeb651eb2d4c8edf2688c8d710086b2a688a7eaacacc1e59dcdd7287d43e37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927ce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa9614657b05d4f9c0f5d5bf3c39c90d1456bf03a8f1baf339e49d094af447993ffd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e1e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85531488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c133d2370368068fb55bb15e817a77318858e550e08e4de485629bb07c3070530b5aad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3edd9f914301c5b17001f4e344639ff055dbbbd7e17d47e88708f158dfe49f41b56cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35cdbd6f0184e08c974b3fd1b1b0f3e2500d4687092c3a96b07c591738a9a60a4422a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac568e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde7b4172703585e708e018e9704326387618802fb4c86e4a62b2e6a064deb4571170373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37d2b76b1cbe6830bdd7898c652e42d1329815c5a294af27631ac2f228bf24c8982d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2f39b405759e44a0ee8f103932e35c65a51e0de682169ca4eb48067054169946617203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a334396ee8988219b9e6383de3ee1b8057b4d64e9c4deb918e3730a210f4e2a2d5a421741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef4f5d870c5ccd45e947085eaf41e322739123395b1b4eacc79e99a1c2fde3ce5a41b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b24484d911574e73d0522b50f1c701cdab47e8bd6ad758846c4d7174102bb5107ee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c129454eea100e42813a6f2c983a3f4a54e2b02061251dcb04142f3ea6c77c065c1e744fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b43579a1a81287749357f4e71fccec5dee31b6dfdcd84b81076cd0e4ba6495ee2ee595a523ab4af9b318a7771751fef91bcaf9a480dfb44c57570e671d9a2fa6452d85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1adf2ddc61e18f136c9d0c4969997c55f1e97c9959448de5ff37e836319c24d8553d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1174863fc9203f6d3b51edcf61553d497f9243db48a7a814c18faa0ad977e90833e0371ddc25767e2d35cf364d0081d08d69d0bd3628b53974a9624a4eea4c54d583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa3f1b738627e4bb17cc4fc1b3e1b5c84297e7906f2cecbc666e9b03bdedf5b951785ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056f4015f8fb0eeacc5f2636f54d9ff54cb24f28454dd81f545de5c77db77b13dc6edab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98755870b651587339ad15209fb3b5c9b47faca217497f974cd5194b6d112cb69e7b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c53ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249a9b81962058b0284fc6a678abd5aae733df2a9fff9d9f7b345303b1c6a071e798b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12139c0b32a25ad0eebcdde074b0a29c3ae9829d8371e1b71c0838379db4d5081af2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f6107e27e9b34f21583f095e62c009d170457ee0f91b8fa54f90326f1b20122028204366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bcba323a34cb7ad0b3cf44c2ab458dca3e3581e1fbe58d7e3ce8943a1f1f87f8dbf51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005e4db9da88ebf5f691695276ce7fc1166adefb4b10f8737ae97497993c7b1d897162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a231067d7403111ede3984976545fc9c860eb09259fdba7fce03ca9bb4ed90b961519f8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a0578447538efa81dff39f824ad53bf0881575ed4f9914eb08728358b28827fac262cbe2f4f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838abe3ecedfb97d65cf33933c6c40812056dc13ec1e7701b95d9f24d3804f79978c7b401bec1b616c4c30b86d99efb108aec4abba6b426f63f21d918ae63ed378664../../uapi/linux/input-event-codes.h../../../arch/arc/boot/dts../../../arch/arm/boot/dts../../../arch/arm64/boot/dts../../../arch/c6x/boot/dts../../../include/dt-bindings../../../arch/h8300/boot/dts../../../arch/microblaze/boot/dts../../../arch/mips/boot/dts../../../arch/nios2/boot/dts../../../arch/openrisc/boot/dts../../../arch/powerpc/boot/dts../../../arch/sh/boot/dts../../../arch/xtensa/boot/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-4.18.0-552.el8.src.rpminstallonlypkg(kernel)kernel-develkernel-devel(ppc-64)kernel-devel-ppc64lekernel-devel-uname-r    /bin/shfindutilsfindutilsperl-interpreterrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3fff P@f[fe~@e8@e@e7@eeBeN@eee6@eeee@ee(e}@etVeoehy@e_>eWUeTeP@eKx@eGe?e;@e7e/e%@d7d0d-bd&@d!@d@ddddxdcU@cU@cc`cl@c@c@c@c@cwc&@c&@c@c@c@ccc=@cc@cۥcT@cױ@ccvc0cƍc@ccFcR@ccc@c@c|cwscr-cn9@ck@ch@cb[c_cV~@cMCc@c:c2c*c!@c*c@ccd@cb{@b{@b5@bbbb@bz@bޅb@bVbby@bb>bb@bUblbb2@b@bb@b@bbw@bb@b~H@bzSbu bk@bjbgbf@b_bX bT@bP#bMbMbF@bEbA@b; b8hb3"b1@b/.@b(b@b!b~b @b@ba@a aa7aaaa@a@aa5a@aza@a@aaW@aayav@amaaf@a]aQ@aLl@aC1a@a;Ha0a(a'@a&0a$@a#a@a@aS@a @aa a /a`@`` @``@`@`ݮ@`ٹ`@`"@`@`9@`D``r`r```@```Z`f@``@` @`@``@`@`e@`}p`x*`t6@`n@`m`e`c`a@`[)`X`P`KW`J@`Gc@`B@`?z@`<@`7@`2K@`0`-@`*b@`%@`#`"y@`!'``>`@``@` `@```2@___I@_@_@__1@__ܙ_H@__@__@_м@_v@_ǁ_ǁ__@__G@_@_ _i_#_@_/@__@_:_@___@_ _@_"_@__~@_}_w@_s!_k8_e_cO_`_X_P_>e_;_16_*@_&_"@__@__ L_X@_c^z^^@@^^K^@^W@^@^n@^y^^@^א^?@^ϧ^V@^^˳@^@^Ǿ^^@^'@^@^^@^^U@^^^&@^^@^1^^H^^^@^k@^@^@^0^^|@^{G^{G^wS@^v^t@^s^^r @^p^n^l@^j$@^g@^f/^c^Y^U @^Ri@^O@^Nt^M#@^F^C^AE^9\^4^2@^*@^&^!^@^g@^r]]]+]@]]]B]]Y]@]߶]e@]]]]@]Γ@]A]ʞ]@]@]{@])]]@]W]]]z@]]@]]@]V]@]m]z3@]v>]rJ@]i]g@]e@]c]^][]V]UI@]S]R@]QT]L]J@]D%]B@]A]@1@]>]9]8H@]6]1]0_@]/ ]-@](v@]'$]%@]$];]]@]^@]@]@]:]@\\@\Q\@\@\\\t@\@\\@\9\\ޢ@\P\@\ڭ\\@\g\@\\s@\-@\8\@\\O\@\\f\@\\r@\,@\\@\7\C@\\@\N\\@\@\6\B@\\\@\@\@\@\M\M\M\~d\k\eX@\d\^\\\Z@\HW@\C@\@n@\?\8@\73\3?@\@\\>@\@\I\@\ `\\l@\&@[[@[1[[@[H[@[_[@[[v[[@[@[ٙ@[S@[ @[ @[[@[[[@[;@[@[R@[[@[][ @[@[t[#@[[[:@[[@[Q@[[@[\[[[@[v[qrDenys Vlasenko [4.18.0-552.el8]Denys Vlasenko [4.18.0-551.el8]Denys Vlasenko [4.18.0-550.el8]Denys Vlasenko [4.18.0-549.el8]Denys Vlasenko [4.18.0-548.el8]Denys Vlasenko [4.18.0-547.el8]Denys Vlasenko [4.18.0-546.el8]Denys Vlasenko [4.18.0-545.el8]Denys Vlasenko [4.18.0-544.el8]Denys Vlasenko [4.18.0-543.el8]Denys Vlasenko [4.18.0-542.el8]Denys Vlasenko [4.18.0-541.el8]Denys Vlasenko [4.18.0-540.el8]Denys Vlasenko [4.18.0-539.el8]Denys Vlasenko [4.18.0-538.el8]Denys Vlasenko [4.18.0-537.el8]Denys Vlasenko [4.18.0-536.el8]Denys Vlasenko [4.18.0-535.el8]Denys Vlasenko [4.18.0-534.el8]Denys Vlasenko [4.18.0-533.el8]Denys Vlasenko [4.18.0-532.el8]Denys Vlasenko [4.18.0-531.el8]Denys Vlasenko [4.18.0-530.el8]Denys Vlasenko [4.18.0-529.el8]Denys Vlasenko [4.18.0-528.el8]Denys Vlasenko [4.18.0-527.el8]Denys Vlasenko [4.18.0-526.el8]Denys Vlasenko [4.18.0-525.el8]Denys Vlasenko [4.18.0-524.el8]Denys Vlasenko [4.18.0-523.el8]Denys Vlasenko [4.18.0-522.el8]Denys Vlasenko [4.18.0-521.el8]Denys Vlasenko [4.18.0-520.el8]Denys Vlasenko [4.18.0-519.el8]Denys Vlasenko [4.18.0-518.el8]Denys Vlasenko [4.18.0-517.el8]Denys Vlasenko [4.18.0-516.el8]Denys Vlasenko [4.18.0-515.el8]Denys Vlasenko [4.18.0-514.el8]Patrick Talbert [4.18.0-513.1.1.el8_9]Denys Vlasenko [4.18.0-513.el8]Denys Vlasenko [4.18.0-512.el8]Denys Vlasenko [4.18.0-511.el8]Denys Vlasenko [4.18.0-510.el8]Denys Vlasenko [4.18.0-509.el8]Denys Vlasenko [4.18.0-508.el8]Denys Vlasenko [4.18.0-507.el8]Denys Vlasenko [4.18.0-506.el8]Denys Vlasenko [4.18.0-505.el8]Denys Vlasenko [4.18.0-504.el8]Denys Vlasenko [4.18.0-503.el8]Denys Vlasenko [4.18.0-502.el8]Denys Vlasenko [4.18.0-501.el8]Denys Vlasenko [4.18.0-500.el8]Denys Vlasenko [4.18.0-499.el8]Denys Vlasenko [4.18.0-498.el8]Denys Vlasenko [4.18.0-497.el8]Denys Vlasenko [4.18.0-496.el8]Denys Vlasenko [4.18.0-495.el8]Denys Vlasenko [4.18.0-494.el8]Denys Vlasenko [4.18.0-493.el8]Denys Vlasenko [4.18.0-492.el8]Denys Vlasenko [4.18.0-491.el8]Denys Vlasenko [4.18.0-490.el8]Denys Vlasenko [4.18.0-489.el8]Denys Vlasenko [4.18.0-488.el8]Denys Vlasenko [4.18.0-487.el8]Denys Vlasenko [4.18.0-486.el8]Denys Vlasenko [4.18.0-485.el8]Denys Vlasenko [4.18.0-484.el8]Denys Vlasenko [4.18.0-483.el8]Denys Vlasenko [4.18.0-482.el8]Denys Vlasenko [4.18.0-481.el8]Denys Vlasenko [4.18.0-480.el8]Denys Vlasenko [4.18.0-479.el8]Denys Vlasenko [4.18.0-478.el8]Lucas Zampieri [4.18.0-477.2.1.el8]Lucas Zampieri [4.18.0-477.1.1.el8]Lucas Zampieri [4.18.0-477.el8]Lucas Zampieri [4.18.0-476.el8]Lucas Zampieri [4.18.0-475.el8]Lucas Zampieri [4.18.0-474.el8]Lucas Zampieri [4.18.0-473.el8]Lucas Zampieri [4.18.0-472.el8]Lucas Zampieri [4.18.0-471.el8]Lucas Zampieri [4.18.0-470.el8]Lucas Zampieri [4.18.0-469.el8]Lucas Zampieri [4.18.0-468.el8]Lucas Zampieri [4.18.0-467.el8]Lucas Zampieri [4.18.0-466.el8]Lucas Zampieri [4.18.0-465.el8]Lucas Zampieri [4.18.0-464.el8]Lucas Zampieri [4.18.0-463.el8]Lucas Zampieri [4.18.0-462.el8]Lucas Zampieri [4.18.0-461.el8]Lucas Zampieri [4.18.0-459.el8]Lucas Zampieri [4.18.0-458.el8]Lucas Zampieri [4.18.0-457.el8]Lucas Zampieri [4.18.0-456.el8]Lucas Zampieri [4.18.0-455.el8]Lucas Zampieri [4.18.0-454.el8]Lucas Zampieri [4.18.0-453.el8]Lucas Zampieri [4.18.0-452.el8]Lucas Zampieri [4.18.0-451.el8]Lucas Zampieri [4.18.0-450.el8]Lucas Zampieri [4.18.0-449.el8]Lucas Zampieri [4.18.0-448.el8]Lucas Zampieri [4.18.0-447.el8]Lucas Zampieri [4.18.0-446.el8]Lucas Zampieri [4.18.0-445.el8]Lucas Zampieri [4.18.0-444.el8]Lucas Zampieri [4.18.0-442.el8.v2.g6f5f]Lucas Zampieri [4.18.0-441.el8]Lucas Zampieri [4.18.0-440.el8]Lucas Zampieri [4.18.0-439.el8]Lucas Zampieri [4.18.0-438.el8]Lucas Zampieri [4.18.0-437.el8]Lucas Zampieri [4.18.0-436.el8]Lucas Zampieri [4.18.0-435.el8]Lucas Zampieri [4.18.0-434.el8]Lucas Zampieri [4.18.0-433.el8]Lucas Zampieri [4.18.0-432.el8]Lucas Zampieri [4.18.0-431.el8]Lucas Zampieri [4.18.0-430.el8]Lucas Zampieri [4.18.0-429.el8]Lucas Zampieri [4.18.0-428.el8]Lucas Zampieri [4.18.0-427.el8]Lucas Zampieri [4.18.0-426.el8]Jarod Wilson [4.18.0-425.el8]Jarod Wilson [4.18.0-424.el8]Jarod Wilson [4.18.0-423.el8]Jarod Wilson [4.18.0-422.el8]Jarod Wilson [4.18.0-421.el8]Jarod Wilson [4.18.0-420.el8]Jarod Wilson [4.18.0-419.el8]Jarod Wilson [4.18.0-418.el8]Jarod Wilson [4.18.0-417.el8]Jarod Wilson [4.18.0-416.el8]Jarod Wilson [4.18.0-415.el8]Jarod Wilson [4.18.0-414.el8]Jarod Wilson [4.18.0-413.el8]Jarod Wilson [4.18.0-412.el8]Jarod Wilson [4.18.0-411.el8]Jarod Wilson [4.18.0-410.el8]Jarod Wilson [4.18.0-409.el8]Jarod Wilson [4.18.0-408.el8]Jarod Wilson [4.18.0-407.el8]Jarod Wilson [4.18.0-406.el8]Jarod Wilson [4.18.0-405.el8]Jarod Wilson [4.18.0-404.el8]Jarod Wilson [4.18.0-403.el8]Jarod Wilson [4.18.0-402.el8]Jarod Wilson [4.18.0-401.el8]Jarod Wilson [4.18.0-400.el8]Jarod Wilson [4.18.0-399.el8]Jarod Wilson [4.18.0-398.el8]Jarod Wilson [4.18.0-397.el8]Jarod Wilson [4.18.0-396.el8]Jarod Wilson [4.18.0-395.el8]Jarod Wilson [4.18.0-394.el8]Jarod Wilson [4.18.0-393.el8]Jarod Wilson [4.18.0-392.el8]Jarod Wilson [4.18.0-391.el8]Jarod Wilson [4.18.0-390.el8]Jarod Wilson [4.18.0-389.el8]Jarod Wilson [4.18.0-388.el8]Jarod Wilson [4.18.0-387.el8]Jarod Wilson [4.18.0-386.el8]Jarod Wilson [4.18.0-385.el8]Bruno Meneguele [4.18.0-384.el8]Jarod Wilson [4.18.0-383.el8]Jarod Wilson [4.18.0-382.el8]Jarod Wilson [4.18.0-381.el8]Jarod Wilson [4.18.0-380.el8]Jarod Wilson [4.18.0-379.el8]Jarod Wilson [4.18.0-378.el8]Jarod Wilson [4.18.0-377.el8]Jarod Wilson [4.18.0-376.el8]Jarod Wilson [4.18.0-375.el8]Jarod Wilson [4.18.0-374.el8]Jarod Wilson [4.18.0-373.el8]Augusto Caringi [4.18.0-372.2.1.el8]Augusto Caringi [4.18.0-372.1.1.el8]Augusto Caringi [4.18.0-372.el8]Augusto Caringi [4.18.0-371.el8]Augusto Caringi [4.18.0-370.el8]Augusto Caringi [4.18.0-369.el8]Augusto Caringi [4.18.0-368.el8]Augusto Caringi [4.18.0-367.el8]Augusto Caringi [4.18.0-366.el8]Augusto Caringi [4.18.0-365.el8]Augusto Caringi [4.18.0-364.el8]Augusto Caringi [4.18.0-363.el8]Augusto Caringi [4.18.0-362.el8]Augusto Caringi [4.18.0-361.el8]Augusto Caringi [4.18.0-360.el8]Augusto Caringi [4.18.0-359.el8]Augusto Caringi [4.18.0-358.el8]Augusto Caringi [4.18.0-357.el8]Augusto Caringi [4.18.0-356.el8]Augusto Caringi [4.18.0-355.el8]Augusto Caringi [4.18.0-354.el8]Jan Stancek [4.18.0-353.el8]Jan Stancek [4.18.0-352.el8]Bruno Meneguele [4.18.0-351.el8]Bruno Meneguele [4.18.0-350.el8]Augusto Caringi [4.18.0-349.el8]Augusto Caringi [4.18.0-348.6.el8]Augusto Caringi [4.18.0-348.5.el8]Augusto Caringi [4.18.0-348.4.el8]Augusto Caringi [4.18.0-348.3.el8]Augusto Caringi [4.18.0-348.2.el8]Augusto Caringi [4.18.0-348.1.el8]Augusto Caringi [4.18.0-345.1.el8]Augusto Caringi [4.18.0-343.1.el8]Bruno Meneguele [4.18.0-343.el8]Bruno Meneguele [4.18.0-342.el8]Bruno Meneguele [4.18.0-341.el8]Bruno Meneguele [4.18.0-340.el8]Bruno Meneguele [4.18.0-339.el8]Bruno Meneguele [4.18.0-338.el8]Bruno Meneguele [4.18.0-337.el8]Bruno Meneguele [4.18.0-336.el8]Bruno Meneguele [4.18.0-335.el8]Bruno Meneguele [4.18.0-334.el8]Bruno Meneguele [4.18.0-333.el8]Bruno Meneguele [4.18.0-332.el8]Bruno Meneguele [4.18.0-331.el8]Bruno Meneguele [4.18.0-330.el8]Bruno Meneguele [4.18.0-329.el8]Bruno Meneguele [4.18.0-328.el8]Augusto Caringi [4.18.0-327.el8]Augusto Caringi [4.18.0-326.el8]Augusto Caringi [4.18.0-325.el8]Augusto Caringi [4.18.0-324.el8]Augusto Caringi [4.18.0-323.el8]Bruno Meneguele [4.18.0-322.el8]Bruno Meneguele [4.18.0-321.el8]Bruno Meneguele [4.18.0-320.el8]Bruno Meneguele [4.18.0-319.el8]Bruno Meneguele [4.18.0-318.el8]Bruno Meneguele [4.18.0-317.el8]Bruno Meneguele [4.18.0-316.el8]Bruno Meneguele [4.18.0-315.el8]Bruno Meneguele [4.18.0-314.el8]Bruno Meneguele [4.18.0-313.el8]Bruno Meneguele [4.18.0-312.el8]Bruno Meneguele [4.18.0-311.el8]Bruno Meneguele [4.18.0-310.el8]Bruno Meneguele [4.18.0-309.el8]Bruno Meneguele [4.18.0-308.el8]Bruno Meneguele [4.18.0-307.el8]Bruno Meneguele [4.18.0-306.el8]Bruno Meneguele [4.18.0-305.8.el8]Bruno Meneguele [4.18.0-305.7.el8]Bruno Meneguele [4.18.0-305.6.el8]Bruno Meneguele [4.18.0-305.5.el8]Bruno Meneguele [4.18.0-305.4.el8]Bruno Meneguele [4.18.0-305.3.el8]Bruno Meneguele [4.18.0-305.2.el8]Bruno Meneguele [4.18.0-305.1.el8]Bruno Meneguele [4.18.0-304.7.el8]Bruno Meneguele [4.18.0-304.6.el8]Bruno Meneguele [4.18.0-304.5.el8]Bruno Meneguele [4.18.0-304.4.el8]Bruno Meneguele [4.18.0-304.3.el8]Bruno Meneguele [4.18.0-304.2.el8]Bruno Meneguele [4.18.0-304.1.el8]Bruno Meneguele [4.18.0-303.1.el8]Bruno Meneguele [4.18.0-302.1.el8]Bruno Meneguele [4.18.0-301.1.el8]Bruno Meneguele [4.18.0-300.1.el8]Bruno Meneguele [4.18.0-299.1.el8]Bruno Meneguele [4.18.0-298.1.el8]Bruno Meneguele [4.18.0-297.1.el8]Jan Stancek [4.18.0-297.el8]Jan Stancek [4.18.0-296.el8]Jan Stancek [4.18.0-295.el8]Jan Stancek [4.18.0-294.el8]Jan Stancek [4.18.0-293.el8]Jan Stancek [4.18.0-292.el8]Jan Stancek [4.18.0-291.el8]Jan Stancek [4.18.0-290.el8]Jan Stancek [4.18.0-289.el8]Jan Stancek [4.18.0-288.el8]Jan Stancek [4.18.0-287.el8]Jan Stancek [4.18.0-286.el8]Jan Stancek [4.18.0-285.el8]Jan Stancek [4.18.0-284.el8]Jan Stancek [4.18.0-283.el8]Jan Stancek [4.18.0-282.el8]Jan Stancek [4.18.0-281.el8]Jan Stancek [4.18.0-280.el8]Jan Stancek [4.18.0-279.el8]Jan Stancek [4.18.0-278.el8]Jan Stancek [4.18.0-277.el8]Jan Stancek [4.18.0-276.el8]Jan Stancek [4.18.0-275.el8]Jan Stancek [4.18.0-274.el8]Jan Stancek [4.18.0-273.el8]Jan Stancek [4.18.0-272.el8]Jan Stancek [4.18.0-271.el8]Jan Stancek [4.18.0-270.el8]Jan Stancek [4.18.0-269.el8]Jan Stancek [4.18.0-268.el8]Jan Stancek [4.18.0-267.el8]Jan Stancek [4.18.0-266.el8]Jan Stancek [4.18.0-265.el8]Jan Stancek [4.18.0-264.el8]Jan Stancek [4.18.0-263.el8]Jan Stancek [4.18.0-262.el8]Jan Stancek [4.18.0-261.el8]Jan Stancek [4.18.0-260.el8]Jan Stancek [4.18.0-259.el8]Jan Stancek [4.18.0-258.el8]Jan Stancek [4.18.0-257.el8]Jan Stancek [4.18.0-256.el8]Jan Stancek [4.18.0-255.el8]Jan Stancek [4.18.0-254.el8]Jan Stancek [4.18.0-253.el8]Jan Stancek [4.18.0-252.el8]Jan Stancek [4.18.0-251.el8]Jan Stancek [4.18.0-250.el8]Jan Stancek [4.18.0-249.el8]Jan Stancek [4.18.0-248.el8]Jan Stancek [4.18.0-247.el8]Jan Stancek [4.18.0-246.el8]Jan Stancek [4.18.0-245.el8]Jan Stancek [4.18.0-244.el8]Jan Stancek [4.18.0-243.el8]Jan Stancek [4.18.0-242.el8]Jan Stancek [4.18.0-241.el8]Jan Stancek [4.18.0-240.10.el8]Jan Stancek [4.18.0-240.9.el8]Jan Stancek [4.18.0-240.8.el8]Jan Stancek [4.18.0-240.7.el8]Jan Stancek [4.18.0-240.6.el8]Jan Stancek [4.18.0-240.5.el8]Jan Stancek [4.18.0-240.4.el8]Jan Stancek [4.18.0-240.3.el8]Jan Stancek [4.18.0-240.2.el8]Jan Stancek [4.18.0-240.1.el8]Jan Stancek [4.18.0-239.1.el8]Frantisek Hrbata [4.18.0-239.el8]Frantisek Hrbata [4.18.0-238.el8]Frantisek Hrbata [4.18.0-237.el8]Frantisek Hrbata [4.18.0-236.el8]Frantisek Hrbata [4.18.0-235.el8]Frantisek Hrbata [4.18.0-234.el8]Frantisek Hrbata [4.18.0-233.el8]Frantisek Hrbata [4.18.0-232.el8]Frantisek Hrbata [4.18.0-231.el8]Frantisek Hrbata [4.18.0-230.el8]Frantisek Hrbata [4.18.0-229.el8]Frantisek Hrbata [4.18.0-228.el8]Frantisek Hrbata [4.18.0-227.el8]Frantisek Hrbata [4.18.0-226.el8]Frantisek Hrbata [4.18.0-225.el8]Frantisek Hrbata [4.18.0-224.el8]Frantisek Hrbata [4.18.0-223.el8]Frantisek Hrbata [4.18.0-222.el8]Frantisek Hrbata [4.18.0-221.el8]Frantisek Hrbata [4.18.0-220.el8]Frantisek Hrbata [4.18.0-219.el8]Frantisek Hrbata [4.18.0-218.el8]Frantisek Hrbata [4.18.0-217.el8]Frantisek Hrbata [4.18.0-216.el8]Frantisek Hrbata [4.18.0-215.el8]Frantisek Hrbata [4.18.0-214.el8]Frantisek Hrbata [4.18.0-213.el8]Frantisek Hrbata [4.18.0-212.el8]Frantisek Hrbata [4.18.0-211.el8]Frantisek Hrbata [4.18.0-210.el8]Frantisek Hrbata [4.18.0-209.el8]Frantisek Hrbata [4.18.0-208.el8]Frantisek Hrbata [4.18.0-207.el8]Frantisek Hrbata [4.18.0-206.el8]Frantisek Hrbata [4.18.0-205.el8]Frantisek Hrbata [4.18.0-204.el8]Frantisek Hrbata [4.18.0-203.el8]Frantisek Hrbata [4.18.0-202.el8]Frantisek Hrbata [4.18.0-201.el8]Frantisek Hrbata [4.18.0-200.el8]Frantisek Hrbata [4.18.0-199.el8]Frantisek Hrbata [4.18.0-198.el8]Frantisek Hrbata [4.18.0-197.el8]Frantisek Hrbata [4.18.0-196.el8]Frantisek Hrbata [4.18.0-195.el8]Frantisek Hrbata [4.18.0-194.el8]Frantisek Hrbata [4.18.0-193.15.el8]Frantisek Hrbata [4.18.0-193.14.el8]Frantisek Hrbata [4.18.0-193.13.el8]Frantisek Hrbata [4.18.0-193.12.el8]Frantisek Hrbata [4.18.0-193.11.el8]Frantisek Hrbata [4.18.0-193.10.el8]Frantisek Hrbata [4.18.0-193.9.el8]Frantisek Hrbata [4.18.0-193.8.el8]Frantisek Hrbata [4.18.0-193.7.el8]Frantisek Hrbata [4.18.0-193.6.el8]Frantisek Hrbata [4.18.0-193.5.el8]Frantisek Hrbata [4.18.0-193.4.el8]Frantisek Hrbata [4.18.0-193.3.el8]Frantisek Hrbata [4.18.0-193.2.el8]Frantisek Hrbata [4.18.0-193.1.el8]Frantisek Hrbata [4.18.0-192.2.el8]Frantisek Hrbata [4.18.0-192.1.el8]Frantisek Hrbata [4.18.0-191.2.el8]Frantisek Hrbata [4.18.0-191.1.el8]Frantisek Hrbata [4.18.0-190.3.el8]Frantisek Hrbata [4.18.0-190.2.el8]Frantisek Hrbata [4.18.0-190.1.el8]Frantisek Hrbata [4.18.0-189.1.el8]Frantisek Hrbata [4.18.0-188.3.el8]Frantisek Hrbata [4.18.0-188.2.el8]Frantisek Hrbata [4.18.0-188.1.el8]Frantisek Hrbata [4.18.0-187.2.el8]Frantisek Hrbata [4.18.0-187.1.el8]Frantisek Hrbata [4.18.0-186.2.el8]Frantisek Hrbata [4.18.0-186.1.el8]Bruno Meneguele [4.18.0-185.el8]Herton R. Krzesinski [4.18.0-184.el8]Herton R. Krzesinski [4.18.0-183.el8]Herton R. Krzesinski [4.18.0-182.el8]Herton R. Krzesinski [4.18.0-181.el8]Herton R. Krzesinski [4.18.0-180.el8]Herton R. Krzesinski [4.18.0-179.el8]Herton R. Krzesinski [4.18.0-178.el8]Herton R. Krzesinski [4.18.0-177.el8]Herton R. Krzesinski [4.18.0-176.el8]Bruno Meneguele [4.18.0-175.el8]Bruno Meneguele [4.18.0-174.el8]Bruno Meneguele [4.18.0-173.el8]Bruno Meneguele [4.18.0-172.el8]Bruno Meneguele [4.18.0-171.el8]Bruno Meneguele [4.18.0-170.el8]Bruno Meneguele [4.18.0-169.el8]Bruno Meneguele [4.18.0-168.el8]Bruno Meneguele [4.18.0-167.el8]Bruno Meneguele [4.18.0-166.el8]Bruno Meneguele [4.18.0-165.el8]Bruno Meneguele [4.18.0-164.el8]Bruno Meneguele [4.18.0-163.el8]Bruno Meneguele [4.18.0-162.el8]Bruno Meneguele [4.18.0-161.el8]Bruno Meneguele [4.18.0-160.el8]Bruno Meneguele [4.18.0-159.el8]Bruno Meneguele [4.18.0-158.el8]Bruno Meneguele [4.18.0-157.el8]Bruno Meneguele [4.18.0-156.el8]Bruno Meneguele [4.18.0-155.el8]Bruno Meneguele [4.18.0-154.el8]Bruno Meneguele [4.18.0-153.el8]Bruno Meneguele [4.18.0-152.el8]Phillip Lougher [4.18.0-151.el8]Phillip Lougher [4.18.0-150.el8]Phillip Lougher [4.18.0-149.el8]Phillip Lougher [4.18.0-148.el8]Phillip Lougher [4.18.0-147.13.el8]Phillip Lougher [4.18.0-147.12.el8]Phillip Lougher [4.18.0-147.11.el8]Phillip Lougher [4.18.0-147.10.el8]Phillip Lougher [4.18.0-147.9.el8]Phillip Lougher [4.18.0-147.8.el8]Phillip Lougher [4.18.0-147.7.el8]Phillip Lougher [4.18.0-147.6.el8]Phillip Lougher [4.18.0-147.5.el8]Phillip Lougher [4.18.0-147.4.el8]Phillip Lougher [4.18.0-147.3.el8]Phillip Lougher [4.18.0-147.2.el8]Phillip Lougher [4.18.0-147.1.el8]Phillip Lougher [4.18.0-146.1.el8]Phillip Lougher [4.18.0-145.1.el8]Phillip Lougher [4.18.0-144.1.el8]Herton R. Krzesinski [4.18.0-144.el8]Herton R. Krzesinski [4.18.0-143.el8]Herton R. Krzesinski [4.18.0-142.el8]Herton R. Krzesinski [4.18.0-141.el8]Herton R. Krzesinski [4.18.0-140.el8]Herton R. Krzesinski [4.18.0-139.el8]Herton R. Krzesinski [4.18.0-138.el8]Herton R. Krzesinski [4.18.0-137.el8]Herton R. Krzesinski [4.18.0-136.el8]Herton R. Krzesinski [4.18.0-135.el8]Herton R. Krzesinski [4.18.0-134.el8]Herton R. Krzesinski [4.18.0-133.el8]Herton R. Krzesinski [4.18.0-132.el8]Herton R. Krzesinski [4.18.0-131.el8]Herton R. Krzesinski [4.18.0-130.el8]Herton R. Krzesinski [4.18.0-129.el8]Herton R. Krzesinski [4.18.0-128.el8]Herton R. Krzesinski [4.18.0-127.el8]Herton R. Krzesinski [4.18.0-126.el8]Herton R. Krzesinski [4.18.0-125.el8]Herton R. Krzesinski [4.18.0-124.el8]Herton R. Krzesinski [4.18.0-123.el8]Herton R. Krzesinski [4.18.0-122.el8]Herton R. Krzesinski [4.18.0-121.el8]Herton R. Krzesinski [4.18.0-120.el8]Herton R. Krzesinski [4.18.0-119.el8]Herton R. Krzesinski [4.18.0-118.el8]Herton R. Krzesinski [4.18.0-117.el8]Herton R. Krzesinski [4.18.0-116.el8]Herton R. Krzesinski [4.18.0-115.el8]Herton R. Krzesinski [4.18.0-114.el8]Herton R. Krzesinski [4.18.0-113.el8]Herton R. Krzesinski [4.18.0-112.el8]Herton R. Krzesinski [4.18.0-111.el8]Herton R. Krzesinski [4.18.0-110.el8]Herton R. Krzesinski [4.18.0-109.el8]Herton R. Krzesinski [4.18.0-108.el8]Frantisek Hrbata [4.18.0-107.el8]Frantisek Hrbata [4.18.0-106.el8]Frantisek Hrbata [4.18.0-105.el8]Frantisek Hrbata [4.18.0-104.el8]Herton R. Krzesinski [4.18.0-103.el8]Herton R. Krzesinski [4.18.0-102.el8]Herton R. Krzesinski [4.18.0-101.el8]Herton R. Krzesinski [4.18.0-100.el8]Herton R. Krzesinski [4.18.0-99.el8]Herton R. Krzesinski [4.18.0-98.el8]Herton R. Krzesinski [4.18.0-97.el8]Herton R. Krzesinski [4.18.0-96.el8]Herton R. Krzesinski [4.18.0-95.el8]Herton R. Krzesinski [4.18.0-94.el8]Herton R. Krzesinski [4.18.0-93.el8]Herton R. Krzesinski [4.18.0-92.el8]Herton R. Krzesinski [4.18.0-91.el8]Herton R. Krzesinski [4.18.0-90.el8]Herton R. Krzesinski [4.18.0-89.el8]Herton R. Krzesinski [4.18.0-88.el8]Herton R. Krzesinski [4.18.0-87.el8]Herton R. Krzesinski [4.18.0-86.el8]Herton R. Krzesinski [4.18.0-85.el8]Herton R. Krzesinski [4.18.0-84.el8]Herton R. Krzesinski [4.18.0-83.el8]Herton R. Krzesinski [4.18.0-82.el8]Herton R. Krzesinski [4.18.0-81.el8]Herton R. Krzesinski [4.18.0-80.23.el8]Herton R. Krzesinski [4.18.0-80.22.el8]Herton R. Krzesinski [4.18.0-80.21.el8]Herton R. Krzesinski [4.18.0-80.20.el8]Herton R. Krzesinski [4.18.0-80.19.el8]Herton R. Krzesinski [4.18.0-80.18.el8]Herton R. Krzesinski [4.18.0-80.17.el8]Herton R. Krzesinski [4.18.0-80.16.el8]Herton R. Krzesinski [4.18.0-80.15.el8]Herton R. Krzesinski [4.18.0-80.14.el8]Herton R. Krzesinski [4.18.0-80.13.el8]Herton R. Krzesinski [4.18.0-80.12.el8]Herton R. Krzesinski [4.18.0-80.11.el8]Herton R. Krzesinski [4.18.0-80.10.el8]Herton R. Krzesinski [4.18.0-80.9.el8]Herton R. Krzesinski [4.18.0-80.8.el8]Herton R. Krzesinski [4.18.0-80.7.el8]Herton R. Krzesinski [4.18.0-80.6.el8]Herton R. Krzesinski [4.18.0-80.5.el8]Herton R. Krzesinski [4.18.0-80.4.el8]Herton R. Krzesinski [4.18.0-80.3.el8]Herton R. Krzesinski [4.18.0-80.2.el8]Herton R. Krzesinski [4.18.0-80.1.el8]Herton R. Krzesinski [4.18.0-79.1.el8]Herton R. Krzesinski [4.18.0-78.1.el8]Herton R. Krzesinski [4.18.0-77.1.el8]Herton R. Krzesinski [4.18.0-76.1.el8]Herton R. Krzesinski [4.18.0-75.1.el8]Herton R. Krzesinski [4.18.0-74.1.el8]Herton R. Krzesinski [4.18.0-73.1.el8]Herton R. Krzesinski [4.18.0-72.1.el8]Herton R. Krzesinski [4.18.0-71.1.el8]Herton R. Krzesinski [4.18.0-70.el8]Herton R. Krzesinski [4.18.0-69.el8]Herton R. Krzesinski [4.18.0-68.el8]Herton R. Krzesinski [4.18.0-67.el8]Herton R. Krzesinski [4.18.0-66.el8]Herton R. Krzesinski [4.18.0-65.el8]Herton R. Krzesinski [4.18.0-64.el8]Herton R. Krzesinski [4.18.0-63.el8]Herton R. Krzesinski [4.18.0-62.el8]Herton R. Krzesinski [4.18.0-61.el8]Herton R. Krzesinski [4.18.0-60.el8]Herton R. Krzesinski [4.18.0-59.el8]Herton R. Krzesinski [4.18.0-58.el8]Herton R. Krzesinski [4.18.0-57.el8]Herton R. Krzesinski [4.18.0-56.el8]Herton R. Krzesinski [4.18.0-55.el8]Herton R. Krzesinski [4.18.0-54.el8]Herton R. Krzesinski [4.18.0-53.el8]Herton R. Krzesinski [4.18.0-52.el8]Herton R. Krzesinski [4.18.0-51.el8]Herton R. Krzesinski [4.18.0-50.el8]Herton R. Krzesinski [4.18.0-49.el8]Herton R. Krzesinski [4.18.0-48.el8]Herton R. Krzesinski [4.18.0-47.el8]Herton R. Krzesinski [4.18.0-46.el8]Herton R. Krzesinski [4.18.0-45.el8]Herton R. Krzesinski [4.18.0-44.el8]Herton R. Krzesinski [4.18.0-43.el8]Herton R. Krzesinski [4.18.0-42.el8]Herton R. Krzesinski [4.18.0-41.el8]Herton R. Krzesinski [4.18.0-40.el8]Herton R. Krzesinski [4.18.0-39.el8]Herton R. Krzesinski [4.18.0-38.el8]Herton R. Krzesinski [4.18.0-37.el8]Herton R. Krzesinski [4.18.0-36.el8]Herton R. Krzesinski [4.18.0-35.el8]Herton R. Krzesinski [4.18.0-34.el8]Herton R. Krzesinski [4.18.0-33.el8]Herton R. Krzesinski [4.18.0-32.el8]Herton R. Krzesinski [4.18.0-31.el8]Herton R. Krzesinski [4.18.0-30.el8]Herton R. Krzesinski [4.18.0-29.el8]Herton R. Krzesinski [4.18.0-28.el8]Herton R. Krzesinski [4.18.0-27.el8]Herton R. Krzesinski [4.18.0-26.el8]Herton R. Krzesinski [4.18.0-25.el8]Herton R. Krzesinski [4.18.0-24.el8]Herton R. Krzesinski [4.18.0-23.el8]Herton R. Krzesinski [4.18.0-22.el8]Herton R. Krzesinski [4.18.0-21.el8]Herton R. Krzesinski [4.18.0-20.el8]Herton R. Krzesinski [4.18.0-19.el8]Herton R. Krzesinski [4.18.0-18.el8]Herton R. Krzesinski [4.18.0-17.el8]Herton R. Krzesinski [4.18.0-16.el8]Herton R. Krzesinski [4.18.0-15.el8]Herton R. Krzesinski [4.18.0-14.el8]Herton R. Krzesinski [4.18.0-13.el8]Herton R. Krzesinski [4.18.0-12.el8]Herton R. Krzesinski [4.18.0-11.el8]Herton R. Krzesinski [4.18.0-10.el8]Herton R. Krzesinski [4.18.0-9.el8]Herton R. Krzesinski [4.18.0-8.el8]Herton R. Krzesinski [4.18.0-7.el8]Herton R. Krzesinski [4.18.0-6.el8]Herton R. Krzesinski [4.18.0-5.el8]Herton R. Krzesinski [4.18.0-4.el8]Herton R. Krzesinski [4.18.0-3.el8]Herton R. Krzesinski [4.18.0-2.el8]Herton R. Krzesinski [4.18.0-1.el8]- i40e: Enforce software interrupt during busy-poll exit (Ivan Vecera) [RHEL-26248] - i40e: Remove _t suffix from enum type names (Ivan Vecera) [RHEL-26248]- x86/sev: Harden #VC instruction emulation somewhat (Vitaly Kuznetsov) [RHEL-30040] {CVE-2024-25743 CVE-2024-25742} - i40e: Fix VF MAC filter removal (Ivan Vecera) [RHEL-22992] - i40e: Do not allow untrusted VF to remove administratively set MAC (Ivan Vecera) [RHEL-22992]- mm/sparsemem: fix race in accessing memory_section->usage (Waiman Long) [RHEL-28875 RHEL-28876] {CVE-2023-52489} - mm: use __pfn_to_section() instead of open coding it (Waiman Long) [RHEL-28875] {CVE-2023-52489}- dm-integrity: align the outgoing bio in integrity_recheck (Benjamin Marzinski) [RHEL-29678] - dm-integrity: fix a memory leak when rechecking the data (Benjamin Marzinski) [RHEL-29678] - RDMA/mana_ib: Add CQ interrupt support for RAW QP (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: query device capabilities (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: register RDMA device with GDMA (Maxim Levitsky) [RHEL-23934] - net: mana: add msix index sharing between EQs (Maxim Levitsky) [RHEL-23934] - net: mana: Fix spelling mistake "enforecement" -> "enforcement" (Maxim Levitsky) [RHEL-23934] - net :mana :Add remaining GDMA stats for MANA to ethtool (Maxim Levitsky) [RHEL-23934] - net: mana: Fix oversized sge0 for GSO packets (Maxim Levitsky) [RHEL-23934] - net: mana: Fix TX CQE error handling (Maxim Levitsky) [RHEL-23934] - net: mana: Add gdma stats to ethtool output for mana (Maxim Levitsky) [RHEL-23934] - net: mana: Fix MANA VF unload when hardware is unresponsive (Maxim Levitsky) [RHEL-23934] - net: mana: Configure hwc timeout from hardware (Maxim Levitsky) [RHEL-23934] - RDMA/mana_ib: Use v2 version of cfg_rx_steer_req to enable RX coalescing (Maxim Levitsky) [RHEL-23934]- gitlab-ci: enable arm64/s390x/ppc64le debug builds (Michael Hofmann) - arm64: Add missing bits of AmpereOne Spectre-BHB mitigation (Mark Salter) [RHEL-29005] - [rt] enable CONFIG_DRM_MGAG200_IOBURST_WORKAROUND (Jocelyn Falempe) [RHEL-13214] - drm/mgag200: Add a workaround for low-latency (Jocelyn Falempe) [RHEL-13214]- x86/efistub: Avoid placing the kernel below LOAD_PHYSICAL_ADDR (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Give up if memory attribute protocol returns an error (Lenny Szubowicz) [RHEL-2505] - x86/boot: Increase section and file alignment to 4k/512 (Lenny Szubowicz) [RHEL-2505] - x86/boot: Split off PE/COFF .data section (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop PE/COFF .reloc section (Lenny Szubowicz) [RHEL-2505] - x86/boot: Construct PE/COFF .text section from assembler (Lenny Szubowicz) [RHEL-2505] - x86/boot: Derive file size from _edata symbol (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed: Remove, discard, or assert for unwanted sections (Lenny Szubowicz) [RHEL-2505] - x86/boot: Check that there are no run-time relocations (Lenny Szubowicz) [RHEL-2505] - x86/boot: Discard .discard.unreachable for arch/x86/boot/compressed/vmlinux (Lenny Szubowicz) [RHEL-2505] - x86/boot: Define setup size in linker script (Lenny Szubowicz) [RHEL-2505] - x86/boot: Set EFI handover offset directly in header asm (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop references to startup_64 (Lenny Szubowicz) [RHEL-2505] - x86/boot: Drop redundant code setting the root device (Lenny Szubowicz) [RHEL-2505] - x86/build: Declutter the build output (Lenny Szubowicz) [RHEL-2505] - x86/boot: Omit compression buffer from PE/COFF image memory footprint (Lenny Szubowicz) [RHEL-2505] - x86/boot: Mark global variables as static (Lenny Szubowicz) [RHEL-2505] - efi/x86: Remove extra headroom for setup block (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove the 'bugger off' message (Lenny Szubowicz) [RHEL-2505] - x86/efi: Drop alignment flags from PE section headers (Lenny Szubowicz) [RHEL-2505] - efi: Put Linux specific magic number in the DOS header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Fix the missing KASLR_FLAG bit in boot_params->hdr.loadflags (Lenny Szubowicz) [RHEL-2505] - efi/x86: Avoid physical KASLR on older Dell systems (Lenny Szubowicz) [RHEL-2505] - x86/boot: efistub: Assign global boot_params variable (Lenny Szubowicz) [RHEL-2505] - x86/boot: Rename conflicting 'boot_params' pointer to 'boot_params_ptr' (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Avoid legacy decompressor when doing EFI boot (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Perform SNP feature test while running in the firmware (Lenny Szubowicz) [RHEL-2505] - x86/sev: Do not try to parse for the CC blob on non-AMD hardware (Lenny Szubowicz) [RHEL-2505] - efi/libstub: Add limit argument to efi_random_alloc() (Lenny Szubowicz) [RHEL-2505] - arm64: efi: Limit allocations to 48-bit addressable physical region (Lenny Szubowicz) [RHEL-2505] - efi: libstub: use EFI_LOADER_CODE region when moving the kernel in memory (Lenny Szubowicz) [RHEL-2505] - arm64: efi: kaslr: Fix occasional random alloc (and boot) failure (Lenny Szubowicz) [RHEL-2505] - efi/libstub/random: Increase random alloc granularity (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Factor out kernel decompression and relocation (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Move global symbol references to C code (Lenny Szubowicz) [RHEL-2505] - decompress: Use 8 byte alignment (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Prefer EFI memory attributes protocol over DXE services (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Perform 4/5 level paging switch from the stub (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Merge trampoline cleanup with switching code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Pass pgtable address to trampoline directly (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Only call the trampoline when changing paging levels (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Call trampoline directly from C code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Avoid the need for a stack in the 32-bit trampoline (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Use standard calling convention for trampoline (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Call trampoline as a normal function (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Remove .bss/.pgtable from bzImage (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove run-time relocations from .head.text code (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Assign paging related global variables earlier (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Store boot_params pointer in callee save register (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Clear BSS in EFI handover protocol entrypoint (Lenny Szubowicz) [RHEL-2505] - x86/head_64: Store boot_params pointer in callee save register (Lenny Szubowicz) [RHEL-2505] - x86/decompressor: Don't rely on upper 32 bits of GPRs being preserved (Lenny Szubowicz) [RHEL-2505] - x86/head/64: Switch to KERNEL_CS as soon as new GDT is installed (Lenny Szubowicz) [RHEL-2505] - efi/libstub: Add memory attribute protocol definitions (Lenny Szubowicz) [RHEL-2505] - efi/x86: libstub: remove unused variable (Lenny Szubowicz) [RHEL-2505] - x86/boot: Robustify calling startup_{32,64}() from the decompressor code (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Simplify and clean up handover entry code (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Branch straight to kernel entry point from C code (Lenny Szubowicz) [RHEL-2505] - efi/x86: Avoid using code32_start (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Use Exit() boot service to exit the stub on errors (Lenny Szubowicz) [RHEL-2505] - efi: x86: Wipe setup_data on pure EFI boot (Lenny Szubowicz) [RHEL-2505] - efi: x86: Fix config name for setting the NX-compatibility flag in the PE header (Lenny Szubowicz) [RHEL-2505] - efi: x86: Set the NX-compatibility flag in the PE header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Add kernel preferred address to PE header (Lenny Szubowicz) [RHEL-2505] - efi/x86: Use symbolic constants in PE header instead of bare numbers (Lenny Szubowicz) [RHEL-2505] - efi/x86: Drop redundant .bss section (Lenny Szubowicz) [RHEL-2505] - efi/x86: add headroom to decompressor BSS to account for setup block (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove run-time relocations from head_{32,64}.S (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed: Fix debug_puthex() parameter type (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Use 32-bit (zero-extended) MOV for z_output_len (Lenny Szubowicz) [RHEL-2505] - x86/boot: Use unsigned comparison for addresses (Lenny Szubowicz) [RHEL-2505] - x86/boot: Micro-optimize GDT loading instructions (Lenny Szubowicz) [RHEL-2505] - x86/boot: GDT limit value should be size - 1 (Lenny Szubowicz) [RHEL-2505] - efi/x86: Remove GDT setup from efi_main (Lenny Szubowicz) [RHEL-2505] - x86/boot: Clear direction and interrupt flags in startup_64 (Lenny Szubowicz) [RHEL-2505] - efi/x86: Don't depend on firmware GDT layout (Lenny Szubowicz) [RHEL-2505] - x86/boot: Remove KEEP_SEGMENTS support (Lenny Szubowicz) [RHEL-2505] - x86/boot: Handle malformed SRAT tables during early ACPI parsing (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Use mandatory 16-byte stack alignment in mixed mode (Lenny Szubowicz) [RHEL-2505] - efi/libstub/x86: Avoid globals to store context during mixed mode calls (Lenny Szubowicz) [RHEL-2505] - x86/efistub: Disable paging at mixed mode entry (Lenny Szubowicz) [RHEL-2505] - x86: efi/random: Invoke EFI_RNG_PROTOCOL to seed the UEFI RNG table (Lenny Szubowicz) [RHEL-2505] - x86/asm: Make some functions local (Lenny Szubowicz) [RHEL-2505] - x86/boot: Annotate data appropriately (Lenny Szubowicz) [RHEL-2505] - x86/boot: Annotate local functions (Lenny Szubowicz) [RHEL-2505] - x86/asm: Make more symbols local (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Fix missing initialization in find_trampoline_placement() (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Fix boot on machines with broken E820 table (Lenny Szubowicz) [RHEL-2505] - x86, boot: Remove multiple copy of static function sanitize_boot_params() (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Remove unused variable (Lenny Szubowicz) [RHEL-2505] - x86/boot/compressed/64: Explain paging_prepare()'s return value (Lenny Szubowicz) [RHEL-2505] - x86/boot: Save several bytes in decompressor (Lenny Szubowicz) [RHEL-2505] - fs,hugetlb: fix NULL pointer dereference in hugetlbs_fill_super (Audra Mitchell) [RHEL-20614] {CVE-2024-0841} - net/gve: update check for little-endianness in gve kconfig (Joshua Washington) [RHEL-29030]- sched/membarrier: reduce the ability to hammer on sys_membarrier (Wander Lairson Costa) [RHEL-23430] {CVE-2024-26602} - NFS: Set the stable writes flag when initialising the super block (Benjamin Coddington) [RHEL-25266] - smb: client: fix OOB in receive_encrypted_standard() (Scott Mayhew) [RHEL-21685] {CVE-2024-0565} - scsi: core: Move scsi_host_busy() out of host lock if it is for per-command (Ming Lei) [RHEL-23942] - scsi: core: Move scsi_host_busy() out of host lock for waking up EH handler (Ming Lei) [RHEL-23942] - gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump (Andrew Price) [RHEL-26501] {CVE-2023-52448} - smb: client: fix parsing of SMB3.1.1 POSIX create context (Paulo Alcantara) [RHEL-26241] {CVE-2023-52434} - smb: client: fix potential OOBs in smb2_parse_contexts() (Paulo Alcantara) [RHEL-26241] {CVE-2023-52434} - smb3: Replace smb2pdu 1-element arrays with flex-arrays (Jay Shin) [RHEL-22143] - cifs: Replace remaining 1-element arrays (Jay Shin) [RHEL-22143] - cifs: Convert struct fealist away from 1-element array (Jay Shin) [RHEL-22143] - cifs: remove unneeded 2bytes of padding from smb2 tree connect (Jay Shin) [RHEL-22143] - cifs: Replace zero-length arrays with flexible-array members (Jay Shin) [RHEL-22143] - cifs: Replace a couple of one-element arrays with flexible-array members (Jay Shin) [RHEL-22143] - cifs: fix FILE_BOTH_DIRECTORY_INFO definition (Jay Shin) [RHEL-22143] - nfsd: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - nfs: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - lockd: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - cifs: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - ceph: use locks_inode_context helper (Jeffrey Layton) [RHEL-27441] - filelock: add a new locks_inode_context accessor function (Jeffrey Layton) [RHEL-27441] - dm-integrity, dm-verity: reduce stack usage for recheck (Benjamin Marzinski) [RHEL-27849] - dm-crypt: recheck the integrity tag after a failure (Benjamin Marzinski) [RHEL-27849] - dm-crypt: don't modify the data when using authenticated encryption (Benjamin Marzinski) [RHEL-27849] - dm-verity: recheck the hash after a failure (Benjamin Marzinski) [RHEL-27849] - dm-integrity: recheck the integrity tag after a failure (Benjamin Marzinski) [RHEL-27849]- tracing/timerlat: Move hrtimer_init to timerlat_fd open() (John Kacur) [RHEL-26667] - tracing/perf: Fix double put of trace event when init fails (Michael Petlan) [RHEL-19537] - ipvlan: Add handling of NETDEV_UP events (Hangbin Liu) [RHEL-19098] - ceph: add ceph_cap_unlink_work to fire check_caps() immediately (Xiubo Li) [RHEL-21760] - ceph: always queue a writeback when revoking the Fb caps (Xiubo Li) [RHEL-21760] - ceph: always check dir caps asynchronously (Xiubo Li) [RHEL-21760] - nfs: fix redundant readdir request after get eof (Benjamin Coddington) [RHEL-7780] - NFSv4.1: fixup use EXCHGID4_FLAG_USE_PNFS_DS for DS server (Scott Mayhew) [RHEL-7994] - NFSv4.1: fix pnfs MDS=DS session trunking (Scott Mayhew) [RHEL-7994] - NFSv4.1: fix zero value filehandle in post open getattr (Scott Mayhew) [RHEL-7994] - NFSv4.1: use EXCHGID4_FLAG_USE_PNFS_DS for DS server (Scott Mayhew) [RHEL-7994]- ext4: fix kernel BUG in 'ext4_write_inline_data_end()' (Carlos Maiolino) [RHEL-23386] {CVE-2021-33631} - i2c: designware: Disable TX_EMPTY irq while waiting for block length byte (Charles Mirabile) [RHEL-24019] - scsi: smartpqi: Fix disable_managed_interrupts (Tomas Henzl) [RHEL-25747] - hwmon: (k10temp) Check range scale when CUR_TEMP register is read-write (Steve Best) [RHEL-26167] - gitlab-ci: do not show (results can be ignored) for rt pipelines (Michael Hofmann)- perf symbols: Symbol lookup with kcore can fail if multiple segments match stext (Charles Mirabile) [RHEL-23760] - perf/arm-cmn: Move overlapping wp_combine field (Charles Mirabile) [RHEL-23757] - drm/amd: Fix detection of _PR3 on the PCIe root port (Michel Dänzer) [RHEL-14572] - xfs: avoid AGI->AGF->inode-buffer deadlocks (Thiago Becker) [RHEL-7914] - dm-crypt, dm-verity: disable tasklets (Benjamin Marzinski) [RHEL-22232] - dm verity: initialize fec io before freeing it (Benjamin Marzinski) [RHEL-22232] - dm-verity: don't use blocking calls from tasklets (Benjamin Marzinski) [RHEL-22232] - char: misc: Increase the maximum number of dynamic misc devices to 1048448 (Charles Mirabile) [RHEL-23758] - char: misc: remove usage of list iterator past the loop body (Charles Mirabile) [RHEL-23758] - char: misc: increase DYNAMIC_MINORS value (Charles Mirabile) [RHEL-23758] - char: misc: Move EXPORT_SYMBOL immediately next to the functions/varibles (Charles Mirabile) [RHEL-23758] - clocksource/drivers/arm_arch_timer: Force inlining of erratum_set_next_event_generic() (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix handling of ARM erratum 858921 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Remove arch_timer_rate1 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix CNTPCT_LO and CNTVCT_LO value (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Disable timer before programming CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix XGene-1 TVAL register math error (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: limit XGene-1 workaround (Mark Salter) [RHEL-19605] - clocksource/drivers/arch_arm_timer: Move workaround synchronisation around (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix masking for high freq counters (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Drop unnecessary ISB on CVAL programming (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Remove any trace of the TVAL programming interface (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Work around broken CVAL implementations (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Advertise 56bit timer to the core code (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move MMIO timer programming over to CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Fix MMIO base address vs callback ordering issue (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Add __ro_after_init and __init (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move drop _tval from erratum function names (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Move system register timer programming over to CVAL (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Extend write side of timer register accessors to u64 (Mark Salter) [RHEL-19605] - clocksource/drivers/arm_arch_timer: Drop CNT*_TVAL read accessors (Mark Salter) [RHEL-19605] - clocksource/arm_arch_timer: Add build-time guards for unhandled register accesses (Mark Salter) [RHEL-19605]- netfilter: nf_tables: reject QUEUE/DROP verdict parameters (Florian Westphal) [RHEL-23506] {CVE-2024-1086} - drm/virtio: Set segment size for virtio_gpu device (Sebastian Ott) [RHEL-15465] - xfs: run blockgc on freeze to avoid inode inactivation deadlock (Brian Foster) [RHEL-11344] - RDMA/irdma: Report the correct link speed (Kamal Heib) [RHEL-23967] - scsi: core: Increase max device queue_depth to 4096 (Ming Lei) [RHEL-11725] - smsc95xx: fix stalled rx after link change (Izabela Bakollari) [RHEL-22312] - ovl: remove privs in ovl_fallocate() (Miklos Szeredi) [RHEL-17933] - ovl: remove privs in ovl_copyfile() (Miklos Szeredi) [RHEL-17933] - Bluetooth: Add more enc key size check (David Marlin) [RHEL-19666] {CVE-2023-24023} - Bluetooth: Normalize HCI_OP_READ_ENC_KEY_SIZE cmdcmplt (David Marlin) [RHEL-19666] {CVE-2023-24023} - IB: Use capital "OR" for multiple licenses in SPDX (Izabela Bakollari) [RHEL-10238] - RDMA/rdmavt: Delete unnecessary NULL check (Izabela Bakollari) [RHEL-10238] - IB/rdmavt: Fix target union member for rvt_post_one_wr() (Izabela Bakollari) [RHEL-10238] - selftests/mm: cow: print ksft header before printing anything else (Nico Pache) [RHEL-5623] - selftests/mm/kugepaged: restore thp settings at exit (Nico Pache) [RHEL-5623] - selftests: line buffer test program's stdout (Nico Pache) [RHEL-5623] - selftests/kselftest/runner.sh: Pass optional command parameters in environment (Nico Pache) [RHEL-5623] - selftests/kselftest/runner/run_one(): allow running non-executable files (Nico Pache) [RHEL-5623] - selftests: allow runners to override the timeout (Nico Pache) [RHEL-5623] - selftests: mm: fix map_hugetlb failure on 64K page size systems (Nico Pache) [RHEL-5623] - redhat: Fix build for kselftests mm (Nico Pache) [RHEL-5623] - selftests: anon_cow: skip broken test (Nico Pache) [RHEL-5623] - mm/gup_test: free memory allocated via kvcalloc() using kvfree() (Nico Pache) [RHEL-5623] - selftests/mm: prevent duplicate runs caused by TEST_GEN_PROGS (Nico Pache) [RHEL-5623] - selftests: mm: add a test for mutually aligned moves > PMD size (Nico Pache) [RHEL-5623] - tools: fix ARRAY_SIZE defines in tools and selftests hdrs (Nico Pache) [RHEL-5623] - selftests: mm: fix failure case when new remap region was not found (Nico Pache) [RHEL-5623] - selftests/mm: fix WARNING comparing pointer to 0 (Nico Pache) [RHEL-5623] - selftests/mm: run all tests from run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: optionally pass duration to transhuge-stress (Nico Pache) [RHEL-5623] - selftests/mm: make migration test robust to failure (Nico Pache) [RHEL-5623] - selftests/mm: va_high_addr_switch should skip unsupported arm64 configs (Nico Pache) [RHEL-5623] - selftests/mm: fix thuge-gen test bugs (Nico Pache) [RHEL-5623] - selftests/mm: skip soft-dirty tests on arm64 (Nico Pache) [RHEL-5623] - selftests/mm: add gup test matrix in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: add -a to run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: give scripts execute permission (Nico Pache) [RHEL-5623] - selftests: mm: remove duplicate unneeded defines (Nico Pache) [RHEL-5623] - Documentation: kselftest: "make headers" is a prerequisite (Nico Pache) [RHEL-5623] - selftests/mm: fix build failures due to missing MADV_COLLAPSE (Nico Pache) [RHEL-5623] - selftests/mm: fix a "possibly uninitialized" warning in pkey-x86.h (Nico Pache) [RHEL-5623] - selftests/mm: .gitignore: add mkdirty, va_high_addr_switch (Nico Pache) [RHEL-5623] - selftests/mm: fix invocation of tests that are run via shell scripts (Nico Pache) [RHEL-5623] - selftests/mm: fix "warning: expression which evaluates to zero..." in mlock2-tests.c (Nico Pache) [RHEL-5623] - selftests/mm: fix unused variable warnings in hugetlb-madvise.c, migration.c (Nico Pache) [RHEL-5623] - selftests/mm: fix cross compilation with LLVM (Nico Pache) [RHEL-5623] - selftests/mm: run hugetlb testcases of va switch (Nico Pache) [RHEL-5623] - selftests/mm: configure nr_hugepages for arm64 (Nico Pache) [RHEL-5623] - selftests/mm: add platform independent in code comments (Nico Pache) [RHEL-5623] - selftests/mm: rename va_128TBswitch to va_high_addr_switch (Nico Pache) [RHEL-5623] - selftests/mm: add support for arm64 platform on va switch (Nico Pache) [RHEL-5623] - selftests/mm: use PM_* macros in vm_utils.h (Nico Pache) [RHEL-5623] - selftests/mm: merge default_huge_page_size() into one (Nico Pache) [RHEL-5623] - selftests/mm: link vm_util.c always (Nico Pache) [RHEL-5623] - selftests/mm: use TEST_GEN_PROGS where proper (Nico Pache) [RHEL-5623] - selftests/mm: merge util.h into vm_util.h (Nico Pache) [RHEL-5623] - selftests/mm: dump a summary in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests/mm: set overcommit_policy as OVERCOMMIT_ALWAYS (Nico Pache) [RHEL-5623] - selftests/mm: change NR_CHUNKS_HIGH for aarch64 (Nico Pache) [RHEL-5623] - selftests/mm: change MAP_CHUNK_SIZE (Nico Pache) [RHEL-5623] - selftests: vm: enable cross-compilation (Nico Pache) [RHEL-5623] - selftests/vm: rename selftests/vm to selftests/mm (Nico Pache) [RHEL-5623] - selftests: vm: Fix incorrect kernel headers search path (Nico Pache) [RHEL-5623] - selftests/vm: cow: fix compile warning on 32bit (Nico Pache) [RHEL-5623] - mm/gup_test: fix PIN_LONGTERM_TEST_READ with highmem (Nico Pache) [RHEL-5623] - mm/pagewalk: don't trigger test_walk() in walk_page_vma() (Nico Pache) [RHEL-5623] - selftests/vm: enable running select groups of tests (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: add R/O longterm tests via gup_test (Nico Pache) [RHEL-5623] - mm/gup_test: start/stop/read functionality for PIN LONGTERM test (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: add liburing test cases (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: hugetlb tests (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: THP tests (Nico Pache) [RHEL-5623] - selftests/vm: factor out pagemap_is_populated() into vm_util (Nico Pache) [RHEL-5623] - selftests/vm: anon_cow: test COW handling of anonymous memory (Nico Pache) [RHEL-5623] - selftests/vm: add local_config.h and local_config.mk to .gitignore (Nico Pache) [RHEL-5623] - selftest: vm: remove deleted local_config.* from .gitignore (Nico Pache) [RHEL-5623] - Kselftests: remove support of libhugetlbfs from kselftests (Nico Pache) [RHEL-5623] - selftests/vm: use top_srcdir instead of recomputing relative paths (Nico Pache) [RHEL-5623] - selftests/vm: skip 128TBswitch on unsupported arch (Nico Pache) [RHEL-5623] - selftests/vm: fix va_128TBswitch.sh permissions (Nico Pache) [RHEL-5623] - selftests/vm: add protection_keys tests to run_vmtests (Nico Pache) [RHEL-5623] - selftests/vm: only run 128TBswitch with 5-level paging (Nico Pache) [RHEL-5623] - userfaultfd: selftests: infinite loop in faulting_process (Nico Pache) [RHEL-5623] - userfaultfd/selftests: Fix typo in comment (Nico Pache) [RHEL-5623] - selftests: vm: Fix resource leak when return error (Nico Pache) [RHEL-5623] - selftests: vm: add the "settings" file with timeout variable (Nico Pache) [RHEL-5623] - selftests: vm: add "test_hmm.sh" to TEST_FILES (Nico Pache) [RHEL-5623] - selftests: vm: check numa_available() before operating "merge_across_nodes" in ksm_tests (Nico Pache) [RHEL-5623] - selftests: vm: add migration to the .gitignore (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: fix typo in comment (Nico Pache) [RHEL-5623] - userfaultfd/selftests: use swap() instead of open coding it (Nico Pache) [RHEL-5623] - selftests: vm: fix shellcheck warnings in run_vmtests.sh (Nico Pache) [RHEL-5623] - selftests: vm: refactor run_vmtests.sh to reduce boilerplate (Nico Pache) [RHEL-5623] - selftests: vm: add test for Soft-Dirty PTE bit (Nico Pache) [RHEL-5623] - selftests: vm: bring common functions to a new file (Nico Pache) [RHEL-5623] - mm: add selftests for migration entries (Nico Pache) [RHEL-5623] - selftest/vm: add skip support to mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: support xfail in mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: verify remap destination address in mremap_test (Nico Pache) [RHEL-5623] - selftest/vm: verify mmap addr in mremap_test (Nico Pache) [RHEL-5623] - selftests: kselftest framework: provide "finished" helper (Nico Pache) [RHEL-5623] - selftest/vm: add helpers to detect PAGE_SIZE and PAGE_SHIFT (Nico Pache) [RHEL-5623] - selftest/vm: add util.h and and move helper functions there (Nico Pache) [RHEL-5623] - selftests: vm: remove dependecy from internal kernel macros (Nico Pache) [RHEL-5623] - selftests: vm: Add the uapi headers include variable (Nico Pache) [RHEL-5623] - selftests/vm/transhuge-stress: Support file-backed PMD folios (Nico Pache) [RHEL-5623] - selftests, x86: fix how check_cc.sh is being invoked (Nico Pache) [RHEL-5623] - selftests: vm: fix clang build error multiple output files (Nico Pache) [RHEL-5623] - kselftest/vm: fix tests build with old libc (Nico Pache) [RHEL-5623] - selftest/vm: fix map_fixed_noreplace test failure (Nico Pache) [RHEL-5623] - kselftest/vm: revert "tools/testing/selftests/vm/userfaultfd.c: use swap() to make code cleaner" (Nico Pache) [RHEL-5623] - selftests/vm: make charge_reserved_hugetlb.sh work with existing cgroup setting (Nico Pache) [RHEL-5623] - tools/testing/selftests/vm/userfaultfd.c: use swap() to make code cleaner (Nico Pache) [RHEL-5623] - selftests/vm: remove ARRAY_SIZE define from individual tests (Nico Pache) [RHEL-5623] - selftests: vm: add KSM huge pages merging time test (Nico Pache) [RHEL-5623] - selftest/vm: fix ksm selftest to run with different NUMA topologies (Nico Pache) [RHEL-5623] - selftests/vm/transhuge-stress: fix ram size thinko (Nico Pache) [RHEL-5623] - selftests: vm: add COW time test for KSM pages (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merging time test (Nico Pache) [RHEL-5623] - mm: KSM: fix data type (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merging across nodes test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM zero page merging test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM unmerge test (Nico Pache) [RHEL-5623] - selftests: vm: add KSM merge test (Nico Pache) [RHEL-5623] - selftests: Fix spelling mistake "cann't" -> "cannot" (Nico Pache) [RHEL-5623] - selftests/vm: use kselftest skip code for skipped tests (Nico Pache) [RHEL-5623] - selftest/mremap_test: avoid crash with static build (Nico Pache) [RHEL-5623] - selftest/mremap_test: update the test to handle pagesize other than 4K (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: exercise x86 XSAVE init state (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: refill shadow register after implicit kernel write (Nico Pache) [RHEL-5623] - selftests/vm/pkeys: handle negative sys_pkey_alloc() return code (Nico Pache) [RHEL-5623] - vm/test_vmalloc.sh: adapt for updated driver interface (Nico Pache) [RHEL-5623] - tool: selftests: fix spelling typo of 'writting' (Nico Pache) [RHEL-5623] - userfaultfd/selftests: hint the test runner on required privilege (Nico Pache) [RHEL-5623] - userfaultfd/selftests: fix retval check for userfaultfd_open() (Nico Pache) [RHEL-5623] - userfaultfd/selftests: always dump something in modes (Nico Pache) [RHEL-5623] - userfaultfd: selftests: make __{s,u}64 format specifiers portable (Nico Pache) [RHEL-5623] - tools: Avoid comma separated statements (Nico Pache) [RHEL-5623] - kselftests: vm: add mremap tests (Nico Pache) [RHEL-5623] - Revert "selftests/vm: enable running select groups of tests" (Nico Pache) [RHEL-5623]- cgroup/rstat: Optimize cgroup_rstat_updated_list() (Waiman Long) [RHEL-18154] - cgroup/rstat: Reduce cpu_lock hold time in cgroup_rstat_flush_locked() (Waiman Long) [RHEL-18154] - cgroup: use irqsave in cgroup_rstat_flush_locked(). (Waiman Long) [RHEL-18154] - cgroup: fix spelling mistakes (Waiman Long) [RHEL-18154] - s390/ipl: add missing intersection check to ipl_report handling (Tobias Huschle) [RHEL-24612] - drm/amdgpu: Fix potential fence use-after-free v2 (Michel Dänzer) [RHEL-22504] {CVE-2023-51042} - sched/fair: Don't balance task to its current running CPU (Luis Claudio R. Goncalves) [RHEL-8854] - md: partially revert "md/raid6: use valid sector values to determine if an I/O should wait on the reshape" (Benjamin Marzinski) [RHEL-24518] - blk-mq: fix IO hang from sbitmap wakeup race (Ming Lei) [RHEL-21289] - sfc: introduce shutdown entry point in efx pci driver (Izabela Bakollari) [RHEL-11016] - KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache (Sebastian Ott) [RHEL-5178] - efi: libstub: ensure allocated memory to be executable (Lenny Szubowicz) [RHEL-24852] - efi: libstub: declare DXE services table (Lenny Szubowicz) [RHEL-24852] - efi/libstub/x86: Avoid overflowing code32_start on PE entry (Lenny Szubowicz) [RHEL-24852] - RDMA/efa: Fix wrong resources deallocation order (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add RDMA write HW statistics counters (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Fix unsupported page sizes in device (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add rdma write capability to device caps (Izabela Bakollari) [RHEL-18229] - RDMA/efa: Add data polling capability feature bit (Izabela Bakollari) [RHEL-18229] - APEI: GHES: correctly return NULL for ghes_get_devices() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Make ghes_edac a proper module (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Prepare to make ghes_edac a proper module (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Add a notifier for reporting memory errors (Aristeu Rozanski) [RHEL-1603] - efi/cper: Export several helpers for ghes_edac to use (Aristeu Rozanski) [RHEL-1603] - ACPI: APEI: rename ghes_init() with an "acpi_" prefix (Aristeu Rozanski) [RHEL-1603] - ACPI: APEI: explicit init of HEST and GHES in apci_init() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Clear scanned data on unload (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Fix NULL pointer dereference in ghes_edac_register() (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Scan the system once on driver init (Aristeu Rozanski) [RHEL-1603] - EDAC/ghes: Remove unused members of struct ghes_edac_pvt, rename it to ghes_pvt (Aristeu Rozanski) [RHEL-1603] - EDAC: Introduce an mci_for_each_dimm() iterator (Aristeu Rozanski) [RHEL-1603] - EDAC: Remove EDAC_DIMM_OFF() macro (Aristeu Rozanski) [RHEL-1603] - r8169: add handling DASH when DASH is disabled (Izabela Bakollari) [RHEL-6505] - r8169: remove rtl_wol_shutdown_quirk() (Izabela Bakollari) [RHEL-6505] - r8169: improve driver unload and system shutdown behavior on DASH-enabled systems (Izabela Bakollari) [RHEL-6505] - r8169: fix dmar pte write access is not set error (Izabela Bakollari) [RHEL-6505] - r8169: move rtl_wol_enable_rx() and rtl_prepare_power_down() (Izabela Bakollari) [RHEL-6505] - r8169: prevent potential deadlock in rtl8169_close (Izabela Bakollari) [RHEL-6505] - r8169: fix deadlock on RTL8125 in jumbo mtu mode (Izabela Bakollari) [RHEL-6505] - r8169: fix network lost after resume on DASH systems (Izabela Bakollari) [RHEL-6505] - r8169: respect userspace disabling IFF_MULTICAST (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data race in rtl_rx while reading desc->opts1 (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data-race in rtl_tx while reading TxDescArray[entry].opts1 (Izabela Bakollari) [RHEL-6505] - r8169: fix the KCSAN reported data-race in rtl_tx() while reading tp->cur_tx (Izabela Bakollari) [RHEL-6505] - r8169: fix rare issue with broken rx after link-down on RTL8125 (Izabela Bakollari) [RHEL-6505] - r8169: check for PCI read error in probe (Izabela Bakollari) [RHEL-6505] - r8169: fix RTL8168H and RTL8107E rx crc error (Izabela Bakollari) [RHEL-6505] - r8169: reset bus if NIC isn't accessible after tx timeout (Izabela Bakollari) [RHEL-6505] - r8169: disable ASPM in case of tx timeout (Izabela Bakollari) [RHEL-6505] - r8169: use tp_to_dev instead of open code (Izabela Bakollari) [RHEL-6505] - r8169: add rtl_disable_rxdvgate() (Izabela Bakollari) [RHEL-6505] - r8169: remove not needed net_ratelimit() check (Izabela Bakollari) [RHEL-6505] - r8169: remove useless PCI region size check (Izabela Bakollari) [RHEL-6505] - Bluetooth: hci_sync: Fix not processing all entries on cmd_sync_work (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Fix unbalanced unlock in set_device_flags() (David Marlin) [RHEL-23781] - Bluetooth: Fix not checking MGMT cmd pending queue (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not using conn_timeout (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix hci_update_accept_list_sync (David Marlin) [RHEL-23781] - Bluetooth: assign len after null check (David Marlin) [RHEL-23781] - Bluetooth: Fix bt_skb_sendmmsg not allocating partial chunks (David Marlin) [RHEL-23781] - Bluetooth: fix data races in smp_unregister(), smp_del_chan() (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Fix leaking sent_cmd skb (David Marlin) [RHEL-23781] - Bluetooth: hci_sock: fix endian bug in hci_sock_setsockopt() (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: uninitialized variables in l2cap_sock_setsockopt() (David Marlin) [RHEL-23781] - Bluetooth: btqca: sequential validation (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Rework hci_inquiry_result_with_rssi_evt (David Marlin) [RHEL-23781] - Bluetooth: btbcm: disable read tx power for MacBook Air 8,1 and 8,2 (David Marlin) [RHEL-23781] - Bluetooth: hci_qca: Fix NULL vs IS_ERR_OR_NULL check in qca_serdev_probe (David Marlin) [RHEL-23781] - Bluetooth: hci_bcm: Check for error irq (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Fix spelling mistake "simultanous" -> "simultaneous" (David Marlin) [RHEL-23781] - Bluetooth: vhci: Set HCI_QUIRK_VALID_LE_STATES (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Fix LE simultaneous roles UUID if not supported (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add check simultaneous roles support (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Wait for proper events when connecting LE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add support for waiting specific LE subevents (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Add hci_le_create_conn_sync (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use skb_pull_data when processing inquiry results (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Push sync command cancellation to workqueue (David Marlin) [RHEL-23781] - Bluetooth: hci_qca: Stop IBS timer during BT OFF (David Marlin) [RHEL-23781] - Bluetooth: btintel: Add missing quirks and msft ext for legacy bootloader (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: Fix using wrong mode (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not always pausing advertising when necessary (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Make use of mgmt_send_event_skb in MGMT_EV_DEVICE_CONNECTED (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Make use of mgmt_send_event_skb in MGMT_EV_DEVICE_FOUND (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Introduce mgmt_alloc_skb and mgmt_send_event_skb (David Marlin) [RHEL-23781] - Bluetooth: btusb: Return error code when getting patch status failed (David Marlin) [RHEL-23781] - Bluetooth: btusb: Handle download_firmware failure cases (David Marlin) [RHEL-23781] - Bluetooth: msft: Fix compilation when CONFIG_BT_MSFTEXT is not set (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Set Privacy Mode when updating the resolving list (David Marlin) [RHEL-23781] - Bluetooth: Introduce HCI_CONN_FLAG_DEVICE_PRIVACY device flag (David Marlin) [RHEL-23781] - Bluetooth: btusb: Add support for queuing during polling interval (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Rework hci_conn_params flags (David Marlin) [RHEL-23781] - Bluetooth: MGMT: Use hci_dev_test_and_{set,clear}_flag (David Marlin) [RHEL-23781] - Bluetooth: btbcm: disable read tx power for some Macs with the T2 Security chip (David Marlin) [RHEL-23781] - Bluetooth: add quirk disabling LE Read Transmit Power (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle Command Status (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle Command Complete (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle LE subevents (David Marlin) [RHEL-23781] - Bluetooth: hci_event: Use of a function table to handle HCI events (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Direct Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Ext Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Advertising Report event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse LE Metaevents (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Extended Inquiry Result event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Inquiry Result with RSSI event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Inquiry Result event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Number of Complete Packets event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse Command Complete event (David Marlin) [RHEL-23781] - Bluetooth: HCI: Use skb_pull_data to parse BR/EDR events (David Marlin) [RHEL-23781] - Bluetooth: btusb: Cancel sync commands for certain URB errors (David Marlin) [RHEL-23781] - Bluetooth: hci_core: Cancel sync command if sending a frame failed (David Marlin) [RHEL-23781] - Bluetooth: Add hci_cmd_sync_cancel to public API (David Marlin) [RHEL-23781] - Bluetooth: Reset more state when cancelling a sync command (David Marlin) [RHEL-23781] - Bluetooth: Limit duration of Remote Name Resolve (David Marlin) [RHEL-23781] - Bluetooth: Send device found event on name resolve failure (David Marlin) [RHEL-23781] - Bluetooth: HCI: Fix definition of hci_rp_delete_stored_link_key (David Marlin) [RHEL-23781] - Bluetooth: HCI: Fix definition of hci_rp_read_stored_link_key (David Marlin) [RHEL-23781] - Bluetooth: refactor malicious adv data check (David Marlin) [RHEL-23781] - Bluetooth: btusb: Add one more Bluetooth part for the Realtek RTL8852AE (David Marlin) [RHEL-23781] - Bluetooth: btusb: enable Mediatek to support AOSP extension (David Marlin) [RHEL-23781] - Bluetooth: Attempt to clear HCI_LE_ADV on adv set terminated error event (David Marlin) [RHEL-23781] - Bluetooth: Ignore HCI_ERROR_CANCELLED_BY_HOST on adv set terminated event (David Marlin) [RHEL-23781] - Bluetooth: hci_request: Remove bg_scan_update work (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_CONNECTABLE to use cmd_sync (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_DISCOVERABLE to use cmd_sync (David Marlin) [RHEL-23781] - Bluetooth: btmrvl_main: repair a non-kernel-doc comment (David Marlin) [RHEL-23781] - Bluetooth: Don't initialize msft/aosp when using user channel (David Marlin) [RHEL-23781] - Bluetooth: fix uninitialized variables notify_evt (David Marlin) [RHEL-23781] - Bluetooth: stop proccessing malicious adv data (David Marlin) [RHEL-23781] - Bluetooth: hci_h4: Fix padding calculation error within h4_recv_buf() (David Marlin) [RHEL-23781] - Bluetooth: aosp: Support AOSP Bluetooth Quality Report (David Marlin) [RHEL-23781] - Bluetooth: Add struct of reading AOSP vendor capabilities (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix not setting adv set duration (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Fix missing static warnings (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework hci_suspend_notifier (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework init stages (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SSP (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert adv_expire (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_ADVERTISING (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_PHY_CONFIGURATION (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_LOCAL_NAME (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_READ_LOCAL_OOB_EXT_DATA (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_READ_LOCAL_OOB_DATA (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_LE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_GET_CLOCK_INFO (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_SECURE_CONN (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_GET_CONN_INFO (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Enable synch'd set_bredr (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_SET_FAST_CONNECTABLE (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_OP_START_DISCOVERY (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Convert MGMT_SET_POWERED (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Rework background scan (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Enable advertising when LL privacy is enabled (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 3 (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 2 (David Marlin) [RHEL-23781] - Bluetooth: hci_sync: Make use of hci_cmd_sync_queue set 1 (David Marlin) [RHEL-23781] - Bluetooth: Add helper for serialized HCI command execution (David Marlin) [RHEL-23781] - Bluetooth: Fix removing adv when processing cmd complete (David Marlin) [RHEL-23781] - Bluetooth: hci_bcm: Remove duplicated entry in OF table (David Marlin) [RHEL-23781] - Bluetooth: bfusb: fix division by zero in send path (David Marlin) [RHEL-23781] - Bluetooth: cmtp: fix possible panic when cmtp_init_sockets() fails (David Marlin) [RHEL-23781] - Bluetooth: vhci: Fix checking of msft_opcode (David Marlin) [RHEL-23781] - Bluetooth: btsdio: Do not bind to non-removable BCM4345 and BCM43455 (David Marlin) [RHEL-23781] - Bluetooth: vhci: Add support for setting msft_opcode and aosp_capable (David Marlin) [RHEL-23781] - Bluetooth: btusb: fix memory leak in btusb_mtk_submit_wmt_recv_urb() (David Marlin) [RHEL-23781] - Bluetooth: Fix memory leak of hci device (David Marlin) [RHEL-23781] - Bluetooth: btintel: Fix bdaddress comparison with garbage value (David Marlin) [RHEL-23781] - Bluetooth: Fix debugfs entry leak in hci_register_dev() (David Marlin) [RHEL-23781] - Bluetooth: L2CAP: Fix not initializing sk_peer_pid (David Marlin) [RHEL-23781] - Bluetooth: hci_sock: purge socket queues in the destruct() callback (David Marlin) [RHEL-23781] - Bluetooth: mgmt: Fix Experimental Feature Changed event (David Marlin) [RHEL-23781] - Bluetooth: hci_vhci: Fix to set the force_wakeup value (David Marlin) [RHEL-23781] - Bluetooth: Read codec capabilities only if supported (David Marlin) [RHEL-23781] - Bluetooth: Fix handling of SUSPEND_DISCONNECTING (David Marlin) [RHEL-23781] - Bluetooth: hci_vhci: Fix calling hci_{suspend,resume}_dev (David Marlin) [RHEL-23781] - skbuff: introduce skb_pull_data (David Marlin) [RHEL-23781] - Bluetooth: defer cleanup of resources in hci_unregister_dev() (David Marlin) [RHEL-23781] - serial: core: return early on unsupported ioctls (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - lib/hexdump: make print_hex_dump_bytes() a nop on !DEBUG builds (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix race condition in status line change on dead connections (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - Revert "tty: n_gsm: fix UAF in gsm_cleanup_mux" (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix the UAF caused by race condition in gsm_cleanup_mux (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix UAF in gsm_cleanup_mux (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add parameter negotiation support (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add parameters used with parameter negotiation (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: introduce macro for minimal unit size (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: name the debug bits (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: introduce gsm_control_command() function (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: replace use of gsm_read_ea() with gsm_read_ea_val() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: name gsm tty device minors (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: initialize more members at gsm_alloc_mux() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add sanity check for gsm->receive in gsm_receive_buf() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix flow control handling in tx path (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix resource allocation order in gsm_activate_mux() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix deadlock and link starvation in outgoing data path (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix race condition in gsmld_write() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix non flow control frames during mux flow off (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing timer to handle stalled links (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong queuing behavior in gsm_dlci_data_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix tty registration before control channel open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix user open not possible at responder until initiator open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Debug output allocation must use GFP_ATOMIC (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix packet data hex dump output (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix buffer over-read in gsm_dlci_data() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix sometimes uninitialized warning in gsm_dlci_modem_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix software flow control handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix invalid use of MSC in advanced option (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix broken virtual tty handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing update of modem controls after DLCI open (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix reset fifo race condition (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing tty wakeup in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong signal octets encoding in MSC (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong command frame length field encoding (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong command retry handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix missing explicit ldisc flush (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong DLCI release order (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix insufficient txframe size (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix frame reception handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong signal octet encoding in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix mux cleanup after unregister tty device (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix decoupled mux resource (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix restart handling via CLD command (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix deadlock in gsmtty_open() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong modem processing in convergence layer type 2 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix wrong tty control line for flow control (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix NULL pointer access due to DLCI release (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix encoding of command/response bit (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: fix SW flow control encoding/handling (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove tty parameter from mxser_receive_chars_new() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: don't throttle manually (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: make mxser_port::ldisc_stop_rx a bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Don't ignore write return value in gsmld_output() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: clean up indenting in gsm_queue() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Save dlci address open status when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify gsmtty driver register method when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Delete gsmtty open SABM frame when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify CR,PF bit printk info when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Modify CR,PF bit when config requester (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: stop using alloc_tty_driver (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: don't store semi-state into tty drivers (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - hvsi: don't panic on tty_register_driver failure (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: switch rs_table to a single state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: expand "custom" (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: use memset to zero serial_state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: remove serial_* strings (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop mxser_port::custom_divisor (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop mxser_port::baud_base (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove unused mxser_port::stop_rx (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: don't allocate MXSER_PORTS + 1 (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove cnt from mxser_receive_chars (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GETMSTATUS ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GETDATACOUNT ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_CHKPORTENABLE ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_ASPP_LSTATUS ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_ASPP_MON and friends (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_SET_BAUD_METHOD ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove MOXA_GET_MAJOR deprecated ioctl (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop unused MOXA_DIAGNOSE macro (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop UART_MCR_AFE and UART_LSR_SPECIAL defines (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove else from LSR bits checks (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract mxser_receive_chars_old (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract mxser_receive_chars_new (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: simplify mxser_interrupt and drop mxser_board::vector_mask (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: extract port ISR (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: cleanup LSR handling in mxser_receive_chars (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: remove nonsense from ISR (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop constant board::uart_type (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: introduce enum mxser_must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: rename mxser_board::chip_flag to must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: rename CheckIsMoxaMust to mxser_get_must_hwid (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: cleanup Gpci_uart_info struct (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: integrate mxser.h into .c (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: drop ISA support (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: use goto-failpaths in gsm_init (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: mxser: drop low-latency workaround (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: check error while registering tty devices (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: mxser: fix TIOCSSERIAL jiffies conversions (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm, remove duplicates of parameters (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: do not check tty_unregister_driver's return value (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: nozomi, remove init/exit messages (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty_port: drop last traces of low_latency (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Demote obvious abuse of kernel-doc and supply other missing docss (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm, eliminate indirection for gsm->{output,error}() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix bogus i++ in gsm_data_kick (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Remove unnecessary test in gsm_print_packet() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix waking up upper tty layer when room available (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Fix SOF skipping (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Improve debug output (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch constipated to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch throttled to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: switch dead to bool (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: introduce enum gsm_dlci_mode (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: introduce enum gsm_dlci_state (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: drop unneeded gsm_dlci->fifo field (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Replace zero-length array with flexible-array member (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: avoid recursive locking with async port hangup (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: add helpers to convert mux-num to/from tty-base (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - docs: serial: move it to the driver-api (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - docs: serial: convert docs to ReST and rename to *.rst (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Mark expected switch fall-throughs (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - n_gsm: Constify u8 and unsigned char usage (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty: n_gsm: Add copy_config() and gsm_config() to prepare for serdev (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - mxser: switch to ->[sg]et_serial() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - amiserial: switch to ->[sg]et_serial() (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546} - tty/serial_core: add ISO7816 infrastructure (Wander Lairson Costa) [RHEL-19955] {CVE-2023-6546}- mm/readahead: reintroduce legacy madvise_willneed behavior to force_page_cache_readahead (Rafael Aquini) [RHEL-22476] - PCI: Disable ATS for specific Intel IPU E2000 devices (Myron Stowe) [RHEL-21011] - PCI: Extract ATS disabling to a helper function (Myron Stowe) [RHEL-21011] - HID: intel-ish-hid: ipc: Disable and reenable ACPI GPE bit (Tony Camuso) [RHEL-14732] - HID: intel-ish-hid: ipc: Add Arrow Lake PCI device ID (Tony Camuso) [RHEL-14732] - HID: intel-ish-hid: Fix kernel panic during warm reset (Tony Camuso) [RHEL-14732] - net: usb: ax88179_178a: avoid failed operations when device is disconnected (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: avoid two consecutive device resets (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: fix failed operations during ax88179_reset (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: Bind only to vendor-specific interface (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: wol optimizations (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: move priv to driver_priv (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: restore state on resume (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: clean up pm calls (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: remove redundant init code (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: make drivers set the TSO limit not the GSO limit (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: add Allied Telesis AT-UMCs (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: add TSO feature (Jose Ignacio Tornos Martinez) [RHEL-17561] - ethernet: constify references to netdev->dev_addr in drivers (Jose Ignacio Tornos Martinez) [RHEL-17561] - net: usb: ax88179_178a: initialize local variables before use (Jose Ignacio Tornos Martinez) [RHEL-17561] - gve: Remove dependency on 4k page size. (Joshua Washington) [RHEL-22210] - gve: Add page size register to the register_page_list command. (Joshua Washington) [RHEL-22210] - gve: Remove obsolete checks that rely on page size. (Joshua Washington) [RHEL-22210] - gve: Deprecate adminq_pfn for pci revision 0x1. (Joshua Washington) [RHEL-22210] - gve: Perform adminq allocations through a dma_pool. (Joshua Washington) [RHEL-22210] - gve: add gve_features_check() (Joshua Washington) [RHEL-22210] - gve: Fixes for napi_poll when budget is 0 (Joshua Washington) [RHEL-22210] - gve: Do not fully free QPL pages on prefill errors (Joshua Washington) [RHEL-22210] - gve: Use size_add() in call to struct_size() (Joshua Washington) [RHEL-22210] - gve: fix frag_list chaining (Joshua Washington) [RHEL-22210] - gve: RX path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: Tx path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: Control path for DQO-QPL (Joshua Washington) [RHEL-22210 RHEL-9878] - gve: trivial spell fix Recive to Receive (Joshua Washington) [RHEL-22210] - gve: unify driver name usage (Joshua Washington) [RHEL-22210] - gve: Set default duplex configuration to full (Joshua Washington) [RHEL-22210] - gve: Remove the code of clearing PBA bit (Joshua Washington) [RHEL-22210] - gve: Secure enough bytes in the first TX desc for all TCP pkts (Joshua Washington) [RHEL-22210] - gve: Cache link_speed value from device (Joshua Washington) [RHEL-22210] - gve: Add AF_XDP zero-copy support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Add XDP REDIRECT support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Add XDP DROP and TX support for GQI-QPL format (Joshua Washington) [RHEL-22210] - gve: Changes to add new TX queues (Joshua Washington) [RHEL-22210] - gve: XDP support GQI-QPL: helper function changes (Joshua Washington) [RHEL-22210] - gve: Fix gve interrupt names (Joshua Washington) [RHEL-22210] - gve: Handle alternate miss completions (Joshua Washington) [RHEL-22210] - gve: Adding a new AdminQ command to verify driver (Joshua Washington) [RHEL-22210] - gve: Fix error return code in gve_prefill_rx_pages() (Joshua Washington) [RHEL-22210] - gve: Reduce alloc and copy costs in the GQ rx path (Joshua Washington) [RHEL-22210] - google/gve:fix repeated words in comments (Joshua Washington) [RHEL-22210] - gve: Fix spelling mistake "droping" -> "dropping" (Joshua Washington) [RHEL-22210] - gve: enhance no queue page list detection (Joshua Washington) [RHEL-22210] - net: Google gve: Remove dma_wmb() before ringing doorbell (Joshua Washington) [RHEL-22210]- tcp: Dump bound-only sockets in inet_diag. (Guillaume Nault) [RHEL-6113] - rh_messages.h: update driver and device lists (Scott Weaver) [RHEL-22126] - vmstat: allow_direct_reclaim should use zone_page_state_snapshot (Marcelo Tosatti) [RHEL-22138] - rbd: don't move requests to the running list on errors (Ilya Dryomov) [RHEL-21941] - drm/vmwgfx: Fix possible null pointer derefence with invalid contexts (Jocelyn Falempe) [RHEL-3179] {CVE-2022-38096} - atm: Fix Use-After-Free in do_vcc_ioctl (Guillaume Nault) [RHEL-21179] {CVE-2023-51780} - perf/x86/intel/uncore: Factor out topology_gidnid_map() (Michael Petlan) [RHEL-22189] - perf/x86/intel/uncore: Fix NULL pointer dereference issue in upi_fill_topology() (Michael Petlan) [RHEL-22189] - KVM: x86: Constrain guest-supported xfeatures only at KVM_GET_XSAVE{2} (Bandan Das) [RHEL-7558] - x86/fpu: Allow caller to constrain xfeatures when copying to uabi buffer (Bandan Das) [RHEL-7558] - Bluetooth: Fix double free in hci_conn_cleanup (David Marlin) [RHEL-2555] {CVE-2023-28464} - Bluetooth: hci_sysfs: Fix attempting to call device_add multiple times (David Marlin) [RHEL-2555] - kobject: Fix slab-out-of-bounds in fill_kobj_path() (Waiman Long) [RHEL-20926] {CVE-2023-45863} - kobject: modify kobject_get_path() to take a const * (Waiman Long) [RHEL-20926] {CVE-2023-45863} - kobject: Remove docstring reference to kset (Waiman Long) [RHEL-20926] {CVE-2023-45863} - EDAC/amd64: Add support for AMD family 1Ah models 00h-1Fh and 40h-4Fh (Aristeu Rozanski) [RHEL-10031] - amd64: allow F0 and F6 registers to be missing (Aristeu Rozanski) [RHEL-10031] - hwmon: (k10temp) Add thermal support for AMD Family 1Ah-based models (Aristeu Rozanski) [RHEL-10031] - x86/amd_nb: Add PCI IDs for AMD Family 1Ah-based models (Aristeu Rozanski) [RHEL-10031] - nvmet-tcp: Fix the H2C expected PDU len calculation (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: remove boilerplate code (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: fix a crash in nvmet_req_complete() (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length (Maurizio Lombardi) [RHEL-19155 RHEL-19161 RHEL-19167] {CVE-2023-6536 CVE-2023-6535 CVE-2023-6356} - ipv6: Remove extra counter pull before gc (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - ipv6: remove max_size check inline with ipv4 (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - net/dst: use a smaller percpu_counter batch for dst entries accounting (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - net: add a route cache full diagnostic message (Davide Caratti) [RHEL-21457] {CVE-2023-52340} - x86/sev: Use the GHCB protocol when available for SNP CPUID requests (Bandan Das) [RHEL-16382] - x86/sev: Do not handle #VC for DR7 read/write (Bandan Das) [RHEL-16382] - Revert "x86/sev: Expose sev_es_ghcb_hv_call() for use by HyperV" (Bandan Das) [RHEL-16382] - x86/alternatives: Add cond_resched() to text_poke_bp_batch() (Waiman Long) [RHEL-15221] - x86/alternative: Fix race in try_get_desc() (Waiman Long) [RHEL-15221] - x86/alternatives: Mark text_poke_loc_init() static (Waiman Long) [RHEL-15221] - x86/int3: Ensure that poke_int3_handler() is not traced (Waiman Long) [RHEL-15221] - tools/mm: filter out timestamps for correct collation (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner_sort.c: support sorting pid and time (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner_sort.c: filter out unneeded line (Audra Mitchell) [RHEL-3821] - tools/vm/page_owner: use page_owner_sort in the use example (Audra Mitchell) [RHEL-3821] - mm/page_owner: remove free_ts from page_owner output (Audra Mitchell) [RHEL-3821] - xfs: up(ic_sema) if flushing data device fails (Andrey Albershteyn) [RHEL-8464] - xfs: reserve less log space when recovering log intent items (Andrey Albershteyn) [RHEL-8464] - xfs: fix an agbno overflow in __xfs_getfsmap_datadev (Andrey Albershteyn) [RHEL-8464] - xfs: fix agf_fllast when repairing an empty AGFL (Andrey Albershteyn) [RHEL-8464] - xfs: fix dqiterate thinko (Andrey Albershteyn) [RHEL-8464] - xfs: fix uninit warning in xfs_growfs_data (Andrey Albershteyn) [RHEL-8464] - xfs: fix xfs_btree_query_range callers to initialize btree rec fully (Andrey Albershteyn) [RHEL-8464] - xfs: validate fsmap offsets specified in the query keys (Andrey Albershteyn) [RHEL-8464] - xfs: fix logdev fsmap query result filtering (Andrey Albershteyn) [RHEL-8464] - xfs: clean up the rtbitmap fsmap backend (Andrey Albershteyn) [RHEL-8464] - xfs: fix integer overflows in the fsmap rtbitmap and logdev backends (Andrey Albershteyn) [RHEL-8464] - xfs: fix interval filtering in multi-step fsmap queries (Andrey Albershteyn) [RHEL-8464] - xfs: don't reverse order of items in bulk AIL insertion (Andrey Albershteyn) [RHEL-8464] - xfs: fix ag count overflow during growfs (Andrey Albershteyn) [RHEL-8464] - xfs: don't deplete the reserve pool when trying to shrink the fs (Andrey Albershteyn) [RHEL-8464] - xfs: fix agf/agfl verification on v4 filesystems (Andrey Albershteyn) [RHEL-8464] - xfs: set bnobt/cntbt numrecs correctly when formatting new AGs (Andrey Albershteyn) [RHEL-8464] - xfs: fix rm_offset flag handling in rmap keys (Andrey Albershteyn) [RHEL-8464] - xfs: make kobj_type structures constant (Andrey Albershteyn) [RHEL-8464] - xfs: allow setting full range of panic tags (Andrey Albershteyn) [RHEL-8464] - xfs: shut up -Wuninitialized in xfsaild_push (Andrey Albershteyn) [RHEL-8464] - xfs: use memcpy, not strncpy, to format the attr prefix during listxattr (Andrey Albershteyn) [RHEL-8464] - xfs: initialize the check_owner object fully (Andrey Albershteyn) [RHEL-8464] - xfs: fix uninitialized list head in struct xfs_refcount_recovery (Andrey Albershteyn) [RHEL-8464] - xfs: increase rename inode reservation (Andrey Albershteyn) [RHEL-8464] - xfs: remove xfs_setattr_time() declaration (Andrey Albershteyn) [RHEL-8464] - xfs: Fix false ENOSPC when performing direct write on a delalloc extent in cow fork (Andrey Albershteyn) [RHEL-8464] - xfs: check return codes when flushing block devices (Andrey Albershteyn) [RHEL-8464] - xfs: reduce the number of atomic when locking a buffer after lookup (Andrey Albershteyn) [RHEL-8464] - xfs: convert btree buffer log flags to unsigned. (Andrey Albershteyn) [RHEL-8464] - xfs: shutdown in intent recovery has non-intent items in the AIL (Andrey Albershteyn) [RHEL-8464] - xfs: aborting inodes on shutdown may need buffer lock (Andrey Albershteyn) [RHEL-8464] - xfs: only bother with sync_filesystem during readonly remount (Andrey Albershteyn) [RHEL-8464] - xfs: kill the XFS_IOC_{ALLOC,FREE}SP* ioctls (Andrey Albershteyn) [RHEL-8464] {CVE-2021-4155} - xfs: prevent a WARN_ONCE() in xfs_ioc_attr_list() (Andrey Albershteyn) [RHEL-8464] - xfs: only run COW extent recovery when there are no live extents (Andrey Albershteyn) [RHEL-8464] - xfs: move recovery needed state updates to xfs_log_mount_finish (Andrey Albershteyn) [RHEL-8464] - xfs: clear log incompat feature bits when the log is idle (Andrey Albershteyn) [RHEL-8464] - xfs: allow setting and clearing of log incompat feature flags (Andrey Albershteyn) [RHEL-8464] - xfs: remove all COW fork extents when remounting readonly (Andrey Albershteyn) [RHEL-8464] - xfs: replace snprintf in show functions with sysfs_emit (Andrey Albershteyn) [RHEL-8464] - xfs: reduce the size of nr_ops for refcount btree cursors (Andrey Albershteyn) [RHEL-8464] - xfs: rework attr2 feature and mount options (Andrey Albershteyn) [RHEL-8464] - xfs: sb verifier doesn't handle uncached sb buffer (Andrey Albershteyn) [RHEL-8464] - xfs: standardize inode number formatting in ftrace output (Andrey Albershteyn) [RHEL-8464] - xfs: make fsmap backend function key parameters const (Andrey Albershteyn) [RHEL-8464] - xfs: remove kmem_alloc_io() (Andrey Albershteyn) [RHEL-8464] - mm: Add kvrealloc() (Andrey Albershteyn) [RHEL-8464] - xfs: remove kmem_realloc() (Andrey Albershteyn) [RHEL-8464] - xfs: fix silly whitespace problems with kernel libxfs (Andrey Albershteyn) [RHEL-8464] - xfs: deprecate BMV_IF_NO_DMAPI_READ flag (Andrey Albershteyn) [RHEL-8464]- ida: Fix crash in ida_free when the bitmap is empty (Wander Lairson Costa) [RHEL-19681] {CVE-2023-6915} - mm: create a new system state and fix core_kernel_text() (Joel Savitz) [RHEL-5227] - redhat: rewrite genlog and support Y- tags (Jan Stancek) - Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d" (Nigel Croxon) [RHEL-22698] - Revert "x86/fpu/xstate: Fix PKRU covert channel" (Steve Best) [RHEL-22192] - net: tls, update curr on splice as well (Sabrina Dubroca) [RHEL-19065] {CVE-2024-0646} - smb: client: fix OOB in smbCalcSize() (Scott Mayhew) [RHEL-18990] {CVE-2023-6606} - smb: client: fix potential OOB in smb2_dump_detail() (Scott Mayhew) [RHEL-19144] {CVE-2023-6610} - smb: client: fix potential OOB in cifs_dump_detail() (Scott Mayhew) [RHEL-19144] {CVE-2023-6610} - ovl: skip stale entries in merge dir cache iteration (Miklos Szeredi) [RHEL-18076] - ovl: invalidate readdir cache on changes to dir with origin (Miklos Szeredi) [RHEL-18076] - ipv6: avoid atomic fragment on GSO packets (Hangbin Liu) [RHEL-22149] - ipv6: fix potential NULL deref in fib6_add() (Hangbin Liu) [RHEL-22149] - lockdep: Fix block chain corruption (Joel Savitz) [RHEL-5227] - futex: Don't include process MM in futex key on no-MMU (Joel Savitz) [RHEL-5227] - locking/rtmutex: Fix task->pi_waiters integrity (Joel Savitz) [RHEL-5227] - locking/rwsem: Add __always_inline annotation to __down_read_common() and inlined callers (Joel Savitz) [RHEL-5227] - locking/rwsem: Disable preemption in all down_write*() and up_write() code paths (Joel Savitz) [RHEL-5227] - mm: make generic arch_is_kernel_initmem_freed() do what it says (Joel Savitz) [RHEL-5227]- cgroup/cpuset: Inherit parent's load balance state in v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Free DL BW in case can_attach() fails (Waiman Long) [RHEL-12873] - sched/deadline: Create DL BW alloc, free & check overflow interface (Waiman Long) [RHEL-12873] - cgroup/cpuset: Iterate only if DEADLINE tasks are present (Waiman Long) [RHEL-12873] - sched/cpuset: Keep track of SCHED_DEADLINE task in cpusets (Waiman Long) [RHEL-12873] - sched/cpuset: Bring back cpuset_mutex (Waiman Long) [RHEL-12873] - cgroup/cpuset: Rename functions dealing with DEADLINE accounting (Waiman Long) [RHEL-12873] - cgroup/cpuset: Skip task update if hotplug doesn't affect current cpuset (Waiman Long) [RHEL-12873] - cgroup/cpuset: Fix wrong check in update_parent_subparts_cpumask() (Waiman Long) [RHEL-12873] - cgroup/cpuset: Optimize cpuset_attach() on v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Skip spread flags update on v2 (Waiman Long) [RHEL-12873] - kselftest/cgroup: Add cpuset v2 partition root state test (Waiman Long) [RHEL-12873] - cgroup/cpuset: Update description of cpuset.cpus.partition in cgroup-v2.rst (Waiman Long) [RHEL-12873] - cgroup/cpuset: Make partition invalid if cpumask change violates exclusivity rule (Waiman Long) [RHEL-12873] - cgroup/cpuset: Relocate a code block in validate_change() (Waiman Long) [RHEL-12873] - cgroup/cpuset: Show invalid partition reason string (Waiman Long) [RHEL-12873] - cgroup/cpuset: Add a new isolated cpus.partition type (Waiman Long) [RHEL-12873] - cgroup/cpuset: Relax constraints to partition & cpus changes (Waiman Long) [RHEL-12873] - cgroup/cpuset: Allow no-task partition to have empty cpuset.cpus.effective (Waiman Long) [RHEL-12873] - cgroup/cpuset: Miscellaneous cleanups & add helper functions (Waiman Long) [RHEL-12873] - cgroup: cleanup comments (Waiman Long) [RHEL-12873] - cgroup/cpuset: Avoid memory migration when nodemasks match (Waiman Long) [RHEL-12873] - cgroup/cpuset: Enable memory migration for cpuset v2 (Waiman Long) [RHEL-12873] - cgroup/cpuset: Enable event notification when partition state changes (Waiman Long) [RHEL-12873] - doc/admin-guide/cgroup-v2: use tables (Waiman Long) [RHEL-12873] - docs/admin-guide: cgroup-v2: fix cgroup.type rendering (Waiman Long) [RHEL-12873] - docs: fix memory.low description in cgroup-v2.rst (Waiman Long) [RHEL-12873] - cgroup/cpuset: Revert "Reduce cpuset_rwsem writer latency" (Waiman Long) [RHEL-12873] - selftests/bpf: Workaround verification failure for fexit_bpf2bpf/func_replace_return_code (Artem Savkov) [RHEL-17256] - mISDN: fix use-after-free bugs in l1oip timer handlers (Ricardo Robaina) [RHEL-2553 RHEL-2690] {CVE-2022-3565} - firmware: dmi-sysfs: make pr_info messages rate limited (Prarit Bhargava) [RHEL-21096] - xfs: short circuit xfs_growfs_data_private() if delta is zero (Andrey Albershteyn) [RHEL-19431] - net-sysfs: add check for netdevice being present to speed_show (Michal Schmidt) [RHEL-16007] - drm/mgag200: Fix gamma lut not initialized for G200ER, G200EV, G200SE (Jocelyn Falempe) [RHEL-21054] - netfilter: nf_tables: bail out on mismatching dynset and set expressions (Florian Westphal) [RHEL-19014] {CVE-2023-6622} - netfilter: nft_set_pipapo: skip inactive elements during set walk (Florian Westphal) [RHEL-19721] {CVE-2023-6817} - ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet (Hangbin Liu) [RHEL-19794] {CVE-2023-6932} - s390/paes: fix PKEY_TYPE_EP11_AES handling for secure keyblobs (Tobias Huschle) [RHEL-22160] - s390/dasd: protect device queue against concurrent access (Tobias Huschle) [RHEL-22161] - s390/cmma: fix handling of swapper_pg_dir and invalid_pg_dir (Tobias Huschle) [RHEL-16317] - s390/cmma: fix detection of DAT pages (Tobias Huschle) [RHEL-16317] - s390/mm: add missing arch_set_page_dat() call to gmap allocations (Tobias Huschle) [RHEL-16317] - s390/mm: add missing arch_set_page_dat() call to vmem_crst_alloc() (Tobias Huschle) [RHEL-16317] - s390/cmma: fix initial kernel address space page table walk (Tobias Huschle) [RHEL-16317] - s390/vfio-ap: do not reset queue removed from host config (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: reset queues associated with adapter for queue unbound from driver (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: reset queues filtered from the guest's AP config (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: let on_scan_complete() callback filter matrix and update guest's APCB (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: loop over the shadow APCB when filtering guest's AP configuration (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: always filter entire AP matrix (Cédric Le Goater) [RHEL-19575] - KVM: s390: vsie: Fix STFLE interpretive execution identification (Cédric Le Goater) [RHEL-19575] - KVM: s390: vsie: fix race during shadow creation (Cédric Le Goater) [RHEL-19575] - KVM: s390: fix cc for successful PQAP (Cédric Le Goater) [RHEL-19575] - KVM: s390: fix setting of fpc register (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: fix sysfs status attribute for AP queue devices (Cédric Le Goater) [RHEL-19575] - s390/vfio-ap: unpin pages on gisc registration failure (Cédric Le Goater) [RHEL-19575] - iommu/iova: Manage the depot list size (Jerry Snitselaar) [RHEL-10100] - iommu/iova: Make the rcache depot scale better (Jerry Snitselaar) [RHEL-10100] - iommu/iova: Optimize iova_magazine_alloc() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove two WARN_ON in domain_context_mapping_one() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Handle the failure case of dmar_reenable_qi() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in dmar_insert_dev_scope() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove a useless BUG_ON(dev->is_virtfn) (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in map/unmap() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON when domain->pgd is NULL (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON in handling iotlb cache invalidation (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove BUG_ON on checking valid pfn range (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Make size of operands same in bitwise operations (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Do not use GFP_ATOMIC when not needed (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Remove PASID supervisor request support (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Use non-privileged mode for all PASIDs (Jerry Snitselaar) [RHEL-10100] - iommu: Optimise PCI SAC address trick (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Use page mode macros in fetch_pte() (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Allocate IOMMU irqs using numa locality info (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Allocate page table using numa locality info (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Add a length limitation for the ivrs_acpihid command-line parameter (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix ill-formed ivrs_ioapic, ivrs_hpet and ivrs_acpihid options (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Do not allocate io_pgtable_ops for passthrough domain (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix error handling for pdev_pri_ats_enable() (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Fix compile error for unused function (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Improving Interrupt Remapping Table Invalidation (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Do not Invalidate IRT when IRTE caching is disabled (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Introduce Disable IRTE Caching Support (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Change macro for IOMMU control register bit shift to decimal value (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Remove the unused struct amd_ir_data.ref (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Switch amd_iommu_update_ga() to use modify_irte_ga() (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Handle GALog overflows (Jerry Snitselaar) [RHEL-10025] - iommu/amd: Process all IVHDs before enabling IOMMU features (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Introduce global variable for storing common EFR and EFR2 (Jerry Snitselaar) [RHEL-10100] - iommu/amd: Introduce Support for Extended Feature 2 Register (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Avoid memory allocation in iommu_suspend() (Jerry Snitselaar) [RHEL-10100] - iommu/vt-d: Fix to flush cache of PASID directory table (Jerry Snitselaar) [RHEL-10100] - of/address: Return an error when no valid dma-ranges are found (Jerry Snitselaar) [RHEL-10100] - iommu/arm-smmu-qcom: Fix mask extraction for bootloader programmed SMRs (Jerry Snitselaar) [RHEL-10100] - iommu/arm-smmu-qcom: Read back stream mappings (Jerry Snitselaar) [RHEL-10100] - of: Fix "dma-ranges" handling for bus controllers (Jerry Snitselaar) [RHEL-10100] - swiotlb: move slot allocation explanation comment where it belongs (Jerry Snitselaar) [RHEL-10100] - swiotlb: fix debugfs reporting of reserved memory pools (Jerry Snitselaar) [RHEL-10100] - iommu: fix MAX_ORDER usage in __iommu_dma_alloc_pages() (Jerry Snitselaar) [RHEL-1261] - swiotlb: use the calculated number of areas (Jerry Snitselaar) [RHEL-1261] - swiotlb: relocate PageHighMem test away from rmem_swiotlb_setup (Jerry Snitselaar) [RHEL-1261] - swiotlb: reduce the number of areas to match actual memory pool size (Jerry Snitselaar) [RHEL-1261] - swiotlb: always set the number of areas before allocating the pool (Jerry Snitselaar) [RHEL-1261] - swiotlb: clean up some coding style and minor issues (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix DTE_IRQ_PHYS_ADDR_MASK macro (Jerry Snitselaar) [RHEL-1261] - iommu/amd/iommu_v2: Clear pasid state in free path (Jerry Snitselaar) [RHEL-14152] - iommu/amd/iommu_v2: Fix pasid_state refcount dec hit 0 warning on pasid unbind (Jerry Snitselaar) [RHEL-14152] - iommu/amd: Don't block updates to GATag if guest mode is on (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix domain flush size when syncing iotlb (Jerry Snitselaar) [RHEL-1261] - iommu/amd: Fix "Guest Virtual APIC Table Root Pointer" configuration in IRTE (Jerry Snitselaar) [RHEL-1261] - iommu: Fix error unwind in iommu_group_alloc() (Jerry Snitselaar) [RHEL-1261] - net/mlx5e: Fix error code in mlx5e_tc_action_miss_mapping_get() (Amir Tzin) [RHEL-924] - net/mlx5: Fix fw tracer first block check (Amir Tzin) [RHEL-924] - net/mlx5e: fix a potential double-free in fs_udp_create_groups (Amir Tzin) [RHEL-924] - net/mlx5e: Fix slab-out-of-bounds in mlx5_query_nic_vport_mac_list() (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header (Amir Tzin) [RHEL-924] - Revert "net/mlx5e: fix double free of encap_header" (Amir Tzin) [RHEL-924] - Revert "net/mlx5e: fix double free of encap_header in update funcs" (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header in update funcs (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free of encap_header (Amir Tzin) [RHEL-924] - net/mlx5e: Fix error codes in alloc_branch_attr() (Amir Tzin) [RHEL-924] - net/mlx5e: Track xmit submission to PTP WQ after populating metadata map (Amir Tzin) [RHEL-924] - net/mlx5e: Avoid referencing skb after free-ing in drop path of mlx5e_sq_xmit_wqe (Amir Tzin) [RHEL-924] - net/mlx5e: Correct snprintf truncation handling for fw_version buffer used by representors (Amir Tzin) [RHEL-924] - net/mlx5e: Correct snprintf truncation handling for fw_version buffer (Amir Tzin) [RHEL-924] - net/mlx5: Fix a NULL vs IS_ERR() check (Amir Tzin) [RHEL-924] - net/mlx5e: Check netdev pointer before checking its net ns (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Don't offload post action rule if not supported (Amir Tzin) [RHEL-924] - net/mlx5e: Remove a useless function call (Amir Tzin) [RHEL-924] - net/mlx5e: Fix possible deadlock on mlx5e_tx_timeout_work (Amir Tzin) [RHEL-924] - net/mlx5: Increase size of irq name buffer (Amir Tzin) [RHEL-924] - net/mlx5e: Update doorbell for port timestamping CQ before the software counter (Amir Tzin) [RHEL-924] - net/mlx5e: Add recovery flow for tx devlink health reporter for unhealthy PTP SQ (Amir Tzin) [RHEL-924] - net/mlx5e: Make tx_port_ts logic resilient to out-of-order CQEs (Amir Tzin) [RHEL-924] - net/mlx5e: Check return value of snprintf writing to fw_version buffer for representors (Amir Tzin) [RHEL-924] - net/mlx5e: Check return value of snprintf writing to fw_version buffer (Amir Tzin) [RHEL-924] - net/mlx5e: Reduce the size of icosq_str (Amir Tzin) [RHEL-924] - net/mlx5e: Fix pedit endianness (Amir Tzin) [RHEL-924] - net/mlx5: Decouple PHC .adjtime and .adjphase implementations (Amir Tzin) [RHEL-924] - IB/mlx5: Fix init stage error handling to avoid double free of same QP and UAF (Amir Tzin) [RHEL-924] - IB/mlx5: Fix rdma counter binding for RAW QP (Amir Tzin) [RHEL-924] - net/mlx5e: Fix VF representors reporting zero counters to "ip -s" command (Amir Tzin) [RHEL-13397 RHEL-924] - net/mlx5e: Don't offload internal port if filter device is out device (Amir Tzin) [RHEL-924] - net/mlx5e: XDP, Fix XDP_REDIRECT mpwqe page fragment leaks on shutdown (Amir Tzin) [RHEL-924] - net/mlx5: Handle fw tracer change ownership event based on MTRC (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, fix peer entry ageing in LAG mode (Amir Tzin) [RHEL-924] - net/mlx5: E-switch, register event handler before arming the event (Amir Tzin) [RHEL-924] - net/mlx5e: Again mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix NULL string error (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix mutex unlocking on error flow for steering anchor creation (Amir Tzin) [RHEL-924] - net/mlx5: Free IRQ rmap and notifier on kernel shutdown (Amir Tzin) [RHEL-924] - net/mlx5: Free irqs only on shutdown callback (Amir Tzin) [RHEL-924] - net/mlx5: Improve naming of pci function vectors (Amir Tzin) [RHEL-924] - net/mlx5e: Clear mirred devices array if the rule is split (Amir Tzin) [RHEL-924] - net/mlx5: Dynamic cyclecounter shift calculation for PTP free running clock (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix trailing */ formatting in block comment (Amir Tzin) [RHEL-924] - net/mlx5: Use RMW accessors for changing LNKCTL (Amir Tzin) [RHEL-924] - net/mlx5: DR, Fix code indentation (Amir Tzin) [RHEL-924] - net/mlx5: Fix error message in mlx5_sf_dev_state_change_handler() (Amir Tzin) [RHEL-924] - net/mlx5e: Add capability check for vnic counters (Amir Tzin) [RHEL-924] - net/mlx5e: Expose catastrophic steering error counters (Amir Tzin) [RHEL-924] - net/mlx5: Skip clock update work when device is in error state (Amir Tzin) [RHEL-924] - net/mlx5: LAG, Check correct bucket when modifying LAG (Amir Tzin) [RHEL-924] - net/mlx5e: Unoffload post act rule when handling FIB events (Amir Tzin) [RHEL-924] - net/mlx5: Allow 0 for total host VFs (Amir Tzin) [RHEL-924] - net/mlx5: DR, Fix wrong allocation of modify hdr pattern (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Fix internal port memory leak (Amir Tzin) [RHEL-924] - net/mlx5: Fix typo reminder -> remainder (Amir Tzin) [RHEL-924] - net/mlx5: fs_core: Skip the FTs in the same FS_TYPE_PRIO_CHAINS fs_prio (Amir Tzin) [RHEL-924] - net/mlx5: fs_core: Make find_closest_ft more generic (Amir Tzin) [RHEL-924] - net/mlx5e: kTLS, Fix protection domain in use syndrome when devlink reload (Amir Tzin) [RHEL-924] - net/mlx5e: Move representor neigh cleanup to profile cleanup_tx (Amir Tzin) [RHEL-924] - net/mlx5e: Fix crash moving to switchdev mode when ntuple offload is set (Amir Tzin) [RHEL-13501 RHEL-924] - net/mlx5e: Don't hold encap tbl lock if there is no encap action (Amir Tzin) [RHEL-924] - net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer() (Amir Tzin) [RHEL-924] - net/mlx5: fix potential memory leak in mlx5e_init_rep_rx (Amir Tzin) [RHEL-924] - net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx (Amir Tzin) [RHEL-924] - net/mlx5e: Check for NOT_READY flag state after locking (Amir Tzin) [RHEL-924] - net/mlx5: Register a unique thermal zone per device (Amir Tzin) [RHEL-924] - net/mlx5e: fix memory leak in mlx5e_ptp_open (Amir Tzin) [RHEL-924] - net/mlx5e: fix memory leak in mlx5e_fs_tt_redirect_any_create (Amir Tzin) [RHEL-924] - net/mlx5e: fix double free in mlx5e_destroy_flow_table (Amir Tzin) [RHEL-924] - net/mlx5: Fix reserved at offset in hca_cap register (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix Q-counters query in LAG mode (Amir Tzin) [RHEL-924] - RDMA/mlx5: Remove vport Q-counters dependency on normal Q-counters (Amir Tzin) [RHEL-924] - RDMA/mlx5: Fix Q-counters per vport allocation (Amir Tzin) [RHEL-924] - net/mlx5: Drain health before unregistering devlink (Amir Tzin) [RHEL-924] - net/mlx5: E-switch, Devcom, sync devcom events and devcom comp register (Amir Tzin) [RHEL-924] - eth: mlx5: avoid iterator use outside of a loop (Amir Tzin) [RHEL-924] - net/mlx5: Update op_mode to op_mod for port selection (Amir Tzin) [RHEL-924] - net/mlx5: E-Switch, Remove redundant dev arg from mlx5_esw_vport_alloc() (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Wrap notes in admonition blocks (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Use bullet and definition lists for vnic counters description (Amir Tzin) [RHEL-924] - Documentation: net/mlx5: Wrap vnic reporter devlink commands in code blocks (Amir Tzin) [RHEL-924] - net/mlx5e: Add vnic devlink health reporter to representors (Amir Tzin) [RHEL-14659 RHEL-924] - net/mlx5: Add vnic devlink health reporter to PFs/VFs (Amir Tzin) [RHEL-14659 RHEL-924] - Revert "net/mlx5: Expose vnic diagnostic counters for eswitch managed vports" (Amir Tzin) [RHEL-14659 RHEL-924] - Revert "net/mlx5: Expose steering dropped packets counter" (Amir Tzin) [RHEL-14659 RHEL-924] - net/mlx5: Create a new profile for SFs (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, add tracepoints for multicast (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, implement mdb offload (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, support multicast VLAN pop (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, add per-port multicast replication tables (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, snoop igmp/mld packets (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, extract code to lookup parent bridge of port (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, move additional data structures to priv header (Amir Tzin) [RHEL-924] - net/mlx5: Bridge, increase bridge tables sizes (Amir Tzin) [RHEL-924] - net/mlx5: Add mlx5_ifc definitions for bridge multicast support (Amir Tzin) [RHEL-924] - net/mlx5e: Fix SQ SW state layout in SQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Fix RQ SW state layout in RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - RDMA/mlx5: Remove unused num_alloc_xa_entries variable (Amir Tzin) [RHEL-924] - net/mlx5e: Rename misleading skb_pc/cc references in ptp code (Amir Tzin) [RHEL-924] - net/mlx5: Update cyclecounter shift value to improve ptp free running mode precision (Amir Tzin) [RHEL-924] - RDMA/mlx5: Expand switchdev Q-counters to expose representor statistics (Amir Tzin) [RHEL-924] - net/mlx5: Introduce other vport query for Q-counters (Amir Tzin) [RHEL-924] - net/mlx5e: Fix build break on 32bit (Amir Tzin) [RHEL-924] - net/mlx5: Set out of order (ooo) by default (Amir Tzin) [RHEL-924] - RDMA/mlx5: Disable out-of-order in integrity enabled QPs (Amir Tzin) [RHEL-924] - net/mlx5: Expose bits for enabling out-of-order by default (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Add support for VxLAN GBP encap/decap flows offload (Amir Tzin) [RHEL-897 RHEL-924] - net/mlx5e: Add helper for encap_info_equal for tunnels with options (Amir Tzin) [RHEL-897 RHEL-924] - net/mlx5e: Remove redundant include statement and adjust code to upstream. (Amir Tzin) [RHEL-924] - net/mlx5e: Enable TC offload for egress MACVLAN over bond (Amir Tzin) [RHEL-924] - net/mlx5e: Enable TC offload for ingress MACVLAN over bond (Amir Tzin) [RHEL-924] - net/mlx5e: TC, Extract indr setup block checks to function (Amir Tzin) [RHEL-924] - net/mlx5e: Add XSK RQ state flag for RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Expose SQ SW state as part of SQ health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Stringify RQ SW state in RQ devlink health diagnostics (Amir Tzin) [RHEL-924] - net/mlx5e: Rename RQ/SQ adaptive moderation state flag (Amir Tzin) [RHEL-924] - net/mlx5e: Utilize the entire fifo (Amir Tzin) [RHEL-924] - net/mlx5: Implement thermal zone (Amir Tzin) [RHEL-924] - net/mlx5: Stop waiting for PCI up if teardown was triggered (Amir Tzin) [RHEL-924] - net/mlx5: remove redundant clear_bit (Amir Tzin) [RHEL-924]- libbpf: Add LIBBPF_DEPRECATED_SINCE macro for scheduling API deprecations (Artem Savkov) [RHEL-10697] - drm/amdgpu/sdma5.2: add begin/end_use ring callbacks (Michel Dänzer) [RHEL-19603] - audit: fix possible soft lockup in __audit_inode_child() (Ricardo Robaina) [RHEL-9128] - audit: correct audit_filter_inodes() definition (Ricardo Robaina) [RHEL-9128] - usb: typec: ucsi: Use GET_CAPABILITY attributes data to set power supply scope (Desnes Nunes) [RHEL-14574] - perf: Fix perf_event_validate_size() lockdep splat (Michael Petlan) [RHEL-17968] - perf: Fix perf_event_validate_size() (Michael Petlan) [RHEL-17968] {CVE-2023-6931} - Bluetooth: af_bluetooth: Fix Use-After-Free in bt_sock_recvmsg (Ricardo Robaina) [RHEL-20743] {CVE-2023-51779} - md/raid1-10: limit the number of plugged bio (Nigel Croxon) [RHEL-19121] - md/raid1-10: don't handle pluged bio by daemon thread (Nigel Croxon) [RHEL-19121] - md/md-bitmap: add a new helper to unplug bitmap asynchrously (Nigel Croxon) [RHEL-19121] - md/raid1-10: submit write io directly if bitmap is not enabled (Nigel Croxon) [RHEL-19121] - md/raid1-10: factor out a helper to submit normal write (Nigel Croxon) [RHEL-19121] - md/raid1-10: factor out a helper to add bio to plug (Nigel Croxon) [RHEL-19121] - selftests/bpf: Workaround verification failure for fexit_bpf2bpf/func_replace_return_code (Felix Maurer) [RHEL-15938] - bpf, sockmap: Reject sk_msg egress redirects to non-TCP sockets (Felix Maurer) [RHEL-15506] - bpf, sockmap: Fix map type error in sock_map_del_link (Felix Maurer) [RHEL-15506] - xsk: fix refcount underflow in error path (Felix Maurer) [RHEL-15506] - bpf, cpumap: Make sure kthread is running before map update returns (Felix Maurer) [RHEL-15506] - bpf: cpumap: Fix memory leak in cpu_map_update_elem (Felix Maurer) [RHEL-15506] - page_pool: fix inconsistency for page_pool_ring_[un]lock() (Felix Maurer) [RHEL-15506] - net: page_pool: use in_softirq() instead (Felix Maurer) [RHEL-15506] - xsk: Fix unaligned descriptor validation (Felix Maurer) [RHEL-15506] - Revert "x86/hyperv: fix logical processor creation" (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: fix logical processor creation (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Move the code in ivm.c around to avoid unnecessary ifdef's (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Remove hv_isolation_type_en_snp (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Use TDX GHCI to access some MSRs in a TDX VM with the paravisor (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Bring the post_msg_page back for TDX VMs with the paravisor (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Introduce a global variable hyperv_paravisor_present (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add missing 'inline' to hv_snp_boot_ap() stub (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Mark hv_ghcb_terminate() as noreturn (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Support >64 VPs for a fully enlightened TDX/SNP VM (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix serial console interrupts for fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Support fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Support hypercalls for fully enlightened TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add hv_isolation_type_tdx() to detect TDX guests (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix undefined reference to isolation_type_en_snp without CONFIG_HYPERV (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add hyperv-specific handling for VMMCALL under SEV-ES (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add smp support for SEV-SNP guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: implement and use hv_smp_prepare_cpus (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add VTL specific structs and hypercalls (Vitaly Kuznetsov) [RHEL-10110] - clocksource: hyper-v: Mark hyperv tsc page unencrypted in sev-snp enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Use vmmcall to implement Hyper-V hypercall in sev-snp enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - drivers: hv: Mark percpu hvcall input arg page unencrypted in SEV-SNP enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove the per-CPU post_msg_page (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Mark Hyper-V vp assist page unencrypted in SEV-SNP enlightened guest (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Set Virtual Trust Level in VMBus init message (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Add sev-snp enlightened guest static key (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Do not corrupt frame-pointer in __tdx_hypercall() (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Expand __tdx_hypercall() to handle more arguments (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Refactor __tdx_hypercall() to allow pass down more arguments (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Add more registers to struct tdx_hypercall_args (Vitaly Kuznetsov) [RHEL-10110] - x86/tdx: Fix typo in comment in __tdx_hypercall() (Vitaly Kuznetsov) [RHEL-10110] - arm64/hyperv: Use CPUHP_AP_HYPERV_ONLINE state to fix CPU online sequencing (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Fix hyperv_pcpu_input_arg handling when CPUs go online/offline (Vitaly Kuznetsov) [RHEL-10110] - PCI: hv: Replace retarget_msi_interrupt_params with hyperv_pcpu_input_arg (Vitaly Kuznetsov) [RHEL-10110] - PCI: hv: Enable PCI pass-thru devices in Confidential VMs (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: Don't remap addresses that are above shared_gpa_boundary (Vitaly Kuznetsov) [RHEL-10110] - hv_netvsc: Remove second mapping of send and recv buffers (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove second way of mapping ring buffers (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: vmbus: Remove second mapping of VMBus monitor pages (Vitaly Kuznetsov) [RHEL-10110] - swiotlb: Remove bounce buffer remapping for Hyper-V (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Change vTOM handling to use standard coco mechanisms (Vitaly Kuznetsov) [RHEL-10110] - init: Call mem_encrypt_init() after Hyper-V hypercall init is done (Vitaly Kuznetsov) [RHEL-10110] - x86/mm: Handle decryption/re-encryption of bss_decrypted consistently (Vitaly Kuznetsov) [RHEL-10110] - Drivers: hv: Explicitly request decrypted in vmap_pfn() calls (Vitaly Kuznetsov) [RHEL-10110] - x86/hyperv: Reorder code to facilitate future work (Vitaly Kuznetsov) [RHEL-10110] - x86/ioremap: Add hypervisor callback for private MMIO mapping in coco VM (Vitaly Kuznetsov) [RHEL-10110] - x86/sev: Add SEV-SNP guest feature negotiation support (Vitaly Kuznetsov) [RHEL-10110] - ALSA: update configuration for RHEL 8.10 (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: fix missing report for jack initial status (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: fix out-of-bounds in snd_pcm_state_names (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Fix for old systems which do not support command (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Remove unnecessary boolean state variable firmware_running (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add Pioneer DJM-450 mixer controls (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable headset on Lenovo M90 Gen5 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: fix speakers on XPS 9530 (2023) (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Apply quirk for ASUS UM3504DA (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add supported ALC257 for ChromeOS (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Headset Mic VREF to 100% (Jaroslav Kysela) [RHEL-13726] - ALSA: hda - Fix speaker and headset mic pin config for CHUWI CoreBook XPro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for HP Laptops (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for ASUS 2024 Zenbooks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP 255 G10 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP 255 G8 (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Add Dell ALC295 to pin fall back table (Jaroslav Kysela) [RHEL-13726] - ALSA: info: Fix potential deadlock at disconnection (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: ASUS UM5302LA: Added quirks for cs35L41/10431A83 on i2c bus (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add support dual speaker for Dell (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8540: Add self recovery to improve capture quility (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: register hpd callback on component probe (Jaroslav Kysela) [RHEL-13726] - ASoC: dapm: fix clock get name (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add ASRock X670E Taichi to denylist (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS UX7602ZM (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Improve system suspend and resume handling (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca: fix speaker route missing issue (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix missing error code in cs35l41_smart_amp() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: mark cs35l41_verify_id() static (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add missing check with firmware version control (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Remap Level Meter values (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Allow passing any output to line_out_remap() (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add support for reading firmware version (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Rename Gen 3 config sets (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Rename scarlett_gen2 to scarlett2 (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Detect CSPL errors when sending CSPL commands (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Check CSPL state after loading firmware (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Do not unload firmware before reset in system suspend (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Force a software reset after hardware reset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Run boot process during resume callbacks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Assert Reset prior to de-asserting in probe and system resume (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Assert reset before system suspend (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Use reset label to get GPIO for HP Zbook Fury 17 G9 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Fix mem leak when parsing UUIDs fails (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: add quirk flag to enable native DSD for McIntosh devices (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt298: remove redundant assignment to d_len_code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-pci-dev: Fix community key quirk detection (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Stop processing CODECs when enough are found (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-config: Fix JSL Chromebook quirk detection (Jaroslav Kysela) [RHEL-13726] - ASoC: da7213: Add new kcontrol for tonegen (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Fixed ASUS platform headset Mic issue (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Correct the process of setting up Gnd switch in AAD (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/relatek: Enable Mute LED on HP Laptop 15s-fq5xxx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GU603ZV (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5650: fix the wrong result of key button (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: reorder the argument in error log (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715-sdca: reorder the argument in error log (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt712_sdca: construct cards->components by name_prefix (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt_sdca_jack_common: add rt713 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-mtl-match: add rt713 rt1316 config (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-rpl-match: add rt711-l0-rt1316-l12 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: update HP Omen match (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Fix missing include of gpio/consumer.h (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Ensure sof_ops_free() is still called when probe never ran. (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add Focusrite Clarett 2Pre and 4Pre USB support (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix microphone sound on Nexigo webcam. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Change model for Intel RVP board (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix microphone sound on Opencomm2 Headset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Cleanup and fix double free in firmware request (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682: Fix regulator enable/disable sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: Fix broken channel map reporting (Jaroslav Kysela) [RHEL-13726] - ASoC: core: Do not call link_exit() on uninitialized rtd objects (Jaroslav Kysela) [RHEL-13726] - ASoC: core: Print component name when printing log (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix non-functional mic on Lenovo 82YM (Jaroslav Kysela) [RHEL-13726] - ALSA: aloop: Add control element for getting the access mode (Jaroslav Kysela) [RHEL-13726] - ALSA: aloop: Add support for the non-interleaved access mode (Jaroslav Kysela) [RHEL-13726] - ALSA: intel8x0m: fix name of SIS7013 sound chip in comment (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: fix for firmware reload failure after playback (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add Focusrite Clarett+ 2Pre and 4Pre support (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-generic-dmaengine-pcm: Fix function name in comment (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add read-only ALSA control for forced mute (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Support mute notifications for CS35L41 HDA (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Support ACPI Notification framework via component binding (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add notification support into component binding (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 merge RTK codec with CS CS35L41 AMP (Jaroslav Kysela) [RHEL-13726] - ASoC: hdac_hda: fix HDA patch loader support (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Make IRQ handling conditionally built (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: Make sure DAI parameters cleared if the DAI becomes inactive (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add support for SKU 0B14 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: fix Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: hdac_hda: add HDA patch loader support (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 Realtek I2S speaker platform support (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: scarlett_gen2: Fix another -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Use size_add() in call to struct_size() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: MTL: Reduce the DSP init timeout (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Only call sof_ops_free() on remove if the probe was successful (Jaroslav Kysela) [RHEL-13726] - ALSA: riptide: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: cs4231: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: ad1848: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: generic: Check potential mixer name string truncation (Jaroslav Kysela) [RHEL-13726] - ALSA: cmipci: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: firewire: Fix -Wformat-truncation warning for MIDI stream names (Jaroslav Kysela) [RHEL-13726] - ALSA: firewire: Fix -Wformat-truncation warning for longname string (Jaroslav Kysela) [RHEL-13726] - ALSA: xen: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: opti9x: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: es1688: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: cs4236: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: sscape: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: caiaq: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: scarlett_gen2: Fix -Wformat-truncation warning (Jaroslav Kysela) [RHEL-13726] - ASoC: imx-audmix: Fix return error with devm_clk_get() (Jaroslav Kysela) [RHEL-13726] - ASoC: hdaudio.c: Add missing check for devm_kstrdup (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add correct product series name to messages (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Add support for Clarett 8Pre USB (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Move USB IDs out from device_info struct (Jaroslav Kysela) [RHEL-13726] - ALSA: scarlett2: Default mixer driver to enabled (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: fix wrong sizeof argument (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: Fix DSP core put imbalance on widget setup failure (Jaroslav Kysela) [RHEL-13726] - firmware: cirrus: cs_dsp: Only log list of algorithms in debug build (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Avoid stale SoundWire ATTACH after hard reset (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Don't rely on GPIOD_OUT_LOW to set RESET initially low (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Ensure a reset pulse meets minimum pulse width. (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: mixer: Remove temporary string use in parse_clock_source_unit (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Splitting the UX3402 into two separate models (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-sdw-acpi: Use u8 type for link index (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Only cancel jack-detect work on suspend if active (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix IRQ not being free-ed for HDA jack detect mode (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Enable the IRQ on resume after configuring jack-detect (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Do not disable/enable IRQ twice on suspend/resume (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix sleep in atomic context (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Revert "Fix sleep in atomic context" (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Use dev_name of card_dev as debugfs directory name (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Fixed two speaker platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix non-functional mic on Lenovo 82QF and 82UG (Jaroslav Kysela) [RHEL-13726] - Add DMI ID for MSI Bravo 15 B7ED (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm: Shrink stack frame for __soc_pcm_hw_params (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Consistently use dev_err_probe() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Undo runtime PM changes at driver exit time (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix unbalanced pm_runtime_get() (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Make use of dev_err_probe() (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Undo runtime PM changes at driver exit time (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Verify PM runtime resume errors in IRQ handler (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Fix broken shared boost activation (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Handle mdsync_up reg write errors (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Handle mdsync_down reg write errors (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Disable power save for solving pop issue on Lenovo ThinkCentre M70q (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix a non-functional mic on Lenovo 82TL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - ALC287 I2S speaker platform support (Jaroslav Kysela) [RHEL-13726] - regmap: debugfs: Fix a erroneous check after snprintf() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/cirrus: Fix broken audio on hardware with two CS42L42 codecs. (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: NULL pointer access when removing jack (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add DMI entries to support Victus by HP Gaming Laptop 15-fb0xxx (8A3E) (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Don't try to submit URBs after disconnection (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: Do not error if a DAI link component is not found (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for mute LEDs on HP ENVY x360 15-eu0xxx (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Fix a non-functional mic on Lenovo 82SJ (Jaroslav Kysela) [RHEL-13726] - ALSA: ymfpci: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Override the _DSD for HP Zbook Fury 17 G9 to correct boost type (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for HP Victus 16-d1xxx to enable mute LED (Jaroslav Kysela) [RHEL-13726] - ASoC: cs35l41: Correct amp_gain_tlv values (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: clear dsp to host interrupt status (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: clear panic mask status when panic occurs (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: add conditional check for acp_clkmux_sel register (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: remove redundant clock mux selection register write (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: enable ACP external global interrupt (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: remove unused sha dma interrupt code (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Fix possible error value of *rac97 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add module parameter to ignore the CPC value (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify the reference output valid_bits for copier (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix pipeline params at the output of copier (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix the output reference params for SRC (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify pipeline params based on SRC output format (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix init call orders for UAC1 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: fix typos (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add VivoBook Pro 15 to quirks list for acp6x (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add kcontrols and widgets per-codec in common code (Jaroslav Kysela) [RHEL-13726] - ALSA: aoa: Fix typos in PCM fix patch (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: improve the depop sequences of CBJ detection (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682s: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5668: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5665: Convert to use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Convert to just use GPIO descriptors (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: change cs35l41_prop_model to static (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Drop snd_device_initialize() (Jaroslav Kysela) [RHEL-13726] - ALSA: seq: Create device with snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ALSA: timer: Create device with snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ALSA: compress: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: rawmidi: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: hwdep: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Don't embed device (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Don't embed ctl_dev (Jaroslav Kysela) [RHEL-13726] - ALSA: core: Introduce snd_device_alloc() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-pcm: fix possible null pointer deference (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix the loop check in cs35l41_add_dsd_properties (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Fix new control name check (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Support systems with missing _DSD properties (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-cfg: Add Chromebook quirk to ADL/RPL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - Remodified 3k pull low procedure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: Add a token for dropping widget name in kcontrol name (Jaroslav Kysela) [RHEL-13726] - ASoC: dapm: Add a flag for not having widget name in kcontrol name (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Refactor code for HDA stream creation (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add support for Dell SKU0C87 devices (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5660: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5659: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5514: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5514-spi: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1305: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1019: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1016: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1015p: Drop legacy GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1015: Drop GPIO include (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1011: Drop GPIO includes (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-jack: calling snd_soc_jack_report causes a null pointer access (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/cs8409: Support new Dell Dolphin Variants (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308-sdw: fix random louder sound (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: Use devm_kmemdup to replace devm_kmalloc + memcpy (Jaroslav Kysela) [RHEL-13726] - ASoC: tas5805m: Use devm_kmemdup to replace devm_kmalloc + memcpy (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: Add software reset in io init (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Initialize chip in hda_sdw_check_wakeen_irq() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Switch Dell Oasis models to use SPI (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for HP G11 Laptops (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Update the basecfg for copier earlier (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Simplify get_slave_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Allow different devices on the same link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Support multiple groups on the same link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Device loop should not always start at adr_index (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move range check of codec_conf into inner loop (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Update DLC index each time one is added (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Pull device loop up into create_sdw_dailink (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Add helper to create a single codec DLC (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof-sdw: Move check for valid group id to get_dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Check link mask validity in get_dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove duplicate NULL check on adr_link (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Printk's should end with a newline (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: intel: hda: Clean up link DMA for IPC3 during stop (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof-sdw-cs42142: fix for codec button mapping (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-mlink: add sublink to dev_dbg() log (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: IPC4: clarify 'pipeline_ids' usage and logs (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: add abstraction for SoundWire wake-ups (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai-ops: only allocate/release streams for first CPU DAI (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: restore gateway config length (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4: avoid uninitialized default instance 0 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix u16/32 confusion in LSDIID (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-mlink: fix off-by-one error (Jaroslav Kysela) [RHEL-13726] - ALSA: info: Remove unused function declarations (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Fix incorrect use of sizeof in sof_ipc3_do_rx_work() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp3x-rt5682-max9836: Configure jack as not detecting Line Out (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Allow SoundWire peripherals to register IRQ handlers (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-acpi: Add missing kernel doc (Jaroslav Kysela) [RHEL-13726] - soundWire: intel_auxdevice: resume 'sdw-master' on startup and system resume (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_auxdevice: enable pm_runtime earlier on startup (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add support for Mythware XA001AU capture and playback interfaces. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_da7219_max98373: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: kbl_da7219_max98927: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: kbl_da7219_max98357a: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bytcr_wm5102: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bxt_da7219_max98357a: Map missing Line Out jack kcontrol (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: da7219: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp3x-rt5682-max9836: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp-rt5645: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp-da7219-max98357a: Map missing jack kcontrols (Jaroslav Kysela) [RHEL-13726] - ASoC: max98373-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: max98363: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1318-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1316-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1308-sdw: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt715: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca-dmic: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1712-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt700: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711-sdca: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711: enable pm_runtime in probe, keep status as 'suspended' (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: make regmap cache-only in probe (Jaroslav Kysela) [RHEL-13726] - ASoC: SoundWire codecs: make regmap cache-only in probe (Jaroslav Kysela) [RHEL-13726] - ASoC: SoundWire codecs: return error status in probe (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/i915: extend connectivity check to cover Intel ARL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: intel-dsp-cfg: use common include for MeteorLake (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: add HD Audio PCI ID for Intel Arrow Lake-S (Jaroslav Kysela) [RHEL-13726] - PCI: add ArrowLake-S PCI ID for Intel HDAudio subsystem. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Print amp configuration after bind (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: set variables dev_attr_vendor_id to static (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5665: add missed regulator_bulk_disable (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Remove unused function declaration (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move group_generated logic (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Merge codec_conf_alloc into dailink_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Clean up DAI link counting (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Allow direct specification of CODEC name (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: break earlier when a adr link contains different codecs (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Move amp_num initialisation to mc_probe (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove redundant parameters in dai creation (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Minor tidy up of mc_probe (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Constify parameter to find_codec_part_info (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Simplify find_codec_info_acpi (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Remove some extra line breaks (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Rename codec_idx to codec_dlc_index (Jaroslav Kysela) [RHEL-13726] - ASoC: intel: sof_sdw: Use consistent variable naming for links (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add support for SKU 0AFE (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: rename link_id to be_id (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: allow mockup amplifier to provide feedback (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: reorder SoundWire codecs in Kconfig (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw at link 0 in RPL match table (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp5x-mach:add checks to avoid static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: atom: remove static analysis false positive (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: bdw_rt286: add checks to avoid static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: simplify code to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: add checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-client-probes-ipc4: add checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Deprecate invalid enums in IPC3 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: update dai_link_fixup for SOF_DAI_MEDIATEK_AFE (Jaroslav Kysela) [RHEL-13726] - ASoC: 88pm860x: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ASoC: fsl_micfil: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: bcd2000: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: xen-front: refactor deprecated strncpy (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Support ASUS G713PV laptop (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Update for native DSD support quirks (Jaroslav Kysela) [RHEL-13726] - ASoC: rt1316: fix key tone missing (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: change cs42l51_of_match to static (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3-dtrace: Switch to memdup_user_nul() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/relatek: Enable Mute LED on HP 250 G8 (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add quirk for Microsoft Modern Wireless Headset (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure amp is only unmuted during playback (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Add device_link between HDA and cs35l41_hda (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Rework System Suspend to ensure correct call separation (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Use pre and post playback hooks (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: hda_component: Add pre and post playback hooks to hda_component (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Move Play and Pause into separate functions (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure we pass up any errors during system suspend. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Ensure we correctly re-sync regmap before system suspending. (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Check mailbox status of pause command after firmware load (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Poll for Power Up/Down rather than waiting a fixed delay (Jaroslav Kysela) [RHEL-13726] - ALSA: cs35l41: Use mbox command to enable speaker output for external boost (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: add HDMI codec ID for Intel LNL (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/hdmi: keep codec entries in numerical order (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Fix missing header dependencies (Jaroslav Kysela) [RHEL-13726] - ASoC: rt712-sdca: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711-sdca: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt711: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682-sdw: fix for JD event handling in ClockStop Mode0 (Jaroslav Kysela) [RHEL-13726] - ASoC: wm8960: Add DAC filter characteristics selection (Jaroslav Kysela) [RHEL-13726] - ALSA: ice1712: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ca0106: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Use the standard snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: vmaster: Add snd_ctl_add_followers() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: cmipci: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: via82xx: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: maestro3: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: ice1712: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: es1968: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: cs46xx: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: ca0106: Simplify with snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Introduce snd_ctl_find_id_mixer() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add support for DELL Oasis 13/14/16 laptops (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Fix generic fixup definition for cs35l41 amp (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8821: Add DMI quirk mechanism for active-high jack-detect (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: fix SND_SOC_AMD_ACP_PCI depdenencies (Jaroslav Kysela) [RHEL-13726] - ASoc: codecs: ES8316: Fix DMIC config (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable Mute LED on HP Laptop 15s-eq2xxx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for Clevo NS70AU (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: Go back and simplify with snd_ctl_find_id() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take lock in snd_ctl_find_id() and snd_ctl_find_numid() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Introduce unlocked version for snd_ctl_find_*() helpers (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Make snd_ctl_find_id() argument const (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Add lockdep warning to internal functions (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take controls_rwsem lock in snd_ctl_remove() (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Take card->controls_rwsem in snd_ctl_rename() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: delete unnecessary NULL check (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Check for failure reading AAD IRQ events (Jaroslav Kysela) [RHEL-13726] - ASoC: da7219: Flush pending AAD IRQ when suspending (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sst: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ALSA: intel-dsp-config: Convert to PCI device IDs defines (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Skylake: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/i915: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Use global PCI match macro (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add controller matching macros (Jaroslav Kysela) [RHEL-13726] - ALSA: Remove unused Broxton PCI ID (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Remove unused Broxton PCI ID (Jaroslav Kysela) [RHEL-13726] - PCI: Add Intel Audio DSP devices to pci_ids.h (Jaroslav Kysela) [RHEL-13726] - PCI: Sort Intel PCI IDs by number (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Update jact detection function (Jaroslav Kysela) [RHEL-13726] - ASOC: codecs: ES8326: Add calibration support for version_b (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Fix power-up sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Change Volatile Reg function (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Change Hp_detect register names (Jaroslav Kysela) [RHEL-13726] - tools include UAPI: Sync the sound/asound.h copy with the kernel sources (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: ES8326: Add es8326_mute function (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: fix driver to properly autoload with automatic module loading (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-dai: don't call PCM audio ops if the stream is not supported (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek - remove 3k pull low procedure (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: clean up some inconsistent indentings (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix the issue of speaker noise (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: Add new dmi entries to config entry (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: Add acpi machine id's for vangogh platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add machine driver support for max98388 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: Add machine driver support for nau8821 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3-dtrace: uninitialized data in dfsentry_trace_filter_write() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GZ301V (Jaroslav Kysela) [RHEL-13726] - ALSA: jack: Fix mutex call in snd_jack_report() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Use dmi_first_match() for DMI quirk handling (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Make use of DRV_NAME (Jaroslav Kysela) [RHEL-13726] - ASoC: core: suppress probe deferral errors (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: suppress probe deferral errors (Jaroslav Kysela) [RHEL-13726] - soundwire: fix enumeration completion (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: add the system level suspend-resume callback (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: check return value after reading device id (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5645: implement set_jack callback (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Whitespace fix (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG G614Jx (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Amend G634 quirk to enable rear speakers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GA402X (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GX650P (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: Fix potential data race at PCM memory allocation helpers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: fix a possible null-pointer dereference due to data race in snd_hdac_regmap_sync() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for Unis H3C Desktop B760 & Q760 (Jaroslav Kysela) [RHEL-13726] - ASoC: stac9766: fix build errors with REGMAP_AC97 (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Sort headers alphabetically (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Use device_get_match_data() (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Use agnostic irq_domain_create_linear() (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Refactor GPIO support code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: refactor PSP smn_read (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: add revision check for sending sha dma completion command (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: es8316: Add support for S24_3LE format (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: es8316: Add support for 24 MHz MCLK (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5640: Fix sleep in atomic context (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for Clevo NPx0SNx (Jaroslav Kysela) [RHEL-13726] - soundwire: amd: Fix a check for errors in probe() (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add pm ops support for rembrandt platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: move pdm macros to common header file (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store the pdm stream channel mask (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: export config_acp_dma() and config_pte_for_stream() symbols (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store xfer_resolution of the stream (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add pm ops support for acp pci driver (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: store platform device reference created in pci probe call (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: remove the redundant acp enable/disable interrupts functions (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: add acp i2s master clock generation for rembrandt platform (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: refactor the acp init and de-init sequence (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: fix for invalid dai id handling in acp_get_byte_count() (Jaroslav Kysela) [RHEL-13726] - ASoC: hdmi-codec: fix channel info for compressed formats (Jaroslav Kysela) [RHEL-13726] - ALSA: pcm: fix ELD constraints for (E)AC3, DTS(-HD) and MLP formats (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: update pm_runtime enable sequence (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-dapm.h: Convert macros to return a compound literal (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: remove acp poweroff function (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: acp: clear pdm dma interrupt mask (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirks for ROG ALLY CS35l41 audio (Jaroslav Kysela) [RHEL-13726] - ASoC: cs43130: Fix numerator/denominator mixup (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG GV601V (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: cleanup soc_dai_link_sanity_check() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-core.c: initialize dlc on snd_soc_get_dai_id() (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add quirk for ASUS ROG G634Z (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-compress: Fix deadlock in soc_compr_open_fe (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5677: Add MODULE_FIRMWARE macro (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: wm0010: Add MODULE_FIRMWARE macros (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: setup primary core info on MeteorLake platform (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: pm: Remove duplicated code in sof_suspend (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4: Switch to use the sof_debug:bit11 to dump message payload (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc3: Dump IPC message payload (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Add new sof_debug flag to request message payload dump (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: core: Free the firmware trace before calling snd_sof_shutdown() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: test virtual widget in sof_walk_widgets_in_order (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: sof-audio: add is_virtual_widget helper (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_rt5682: Add mtl support RT1019P speaker (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_rt5682: reorder quirk table (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Make master_list ordered to prevent deadlocks (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Prevent lockdep asserts when stream has multiple buses (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Fix possible NULL dereference in snd_ac97_mixer (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Add quirk flag for HEM devices to enable native DSD playback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: Add support for IPC with a reply_size set to zero (Jaroslav Kysela) [RHEL-13726] - ALSA: timer: minimize open-coded access to hw.resolution (Jaroslav Kysela) [RHEL-13726] - ALSA: usb-audio: Fix broken resume due to UAC3 power state (Jaroslav Kysela) [RHEL-13726] - ALSA: seq: oss: Fix racy open/close of MIDI devices (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-ssm4567: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt5682: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt298: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt286: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-rt274: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-nau8825: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98927: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98373: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-max98357a: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-hdaudio: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-dmic: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: avs-da7219: remove redundant dapm routes (Jaroslav Kysela) [RHEL-13726] - ASoC: max98363: Remove cache defaults for volatile registers (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Add a quirk for Compaq N14JP6 (Jaroslav Kysela) [RHEL-13726] - ASoC: audio-graph-card2-custom-sample: add missing CPU:Codec = 1:N sample (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Refactor rx function for fuzzing (Jaroslav Kysela) [RHEL-13726] - ASoC: max98088: clean up some inconsistent indenting (Jaroslav Kysela) [RHEL-13726] - ASoC: remove old trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: use use new trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ASoC: add new trigger ordering method (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/intel: Workaround for WALLCLK register for loongson controller (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Workaround for SDnCTL register on loongson (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Using polling mode for loongson controller by default (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: Add Loongson LS7A HD-Audio support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add dai_link_codec_ch_map (Jaroslav Kysela) [RHEL-13726] - ASoC: add N cpus to M codecs dai link support (Jaroslav Kysela) [RHEL-13726] - soundwire: debugfs: Add missing SCP registers (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-pcm: remove kernel parameter init (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix SoundWire/HDaudio mutual exclusion (Jaroslav Kysela) [RHEL-13726] - ALSA: hda/realtek: Delete cs35l41 component master during free (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Fix endian conversions (Jaroslav Kysela) [RHEL-13726] - ALSA: hda: cs35l41: Clean up Firmware Load Controls (Jaroslav Kysela) [RHEL-13726] - ALSA: control: Keep the previous numid at snd_ctl_rename_id() (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Log correct region name in bin error messages (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: select CONFIG_SND_AMD_ACP_CONFIG (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda: add helper to extract SoundWire link count (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: prepare for code reuse (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: add DMA config TLV to IPC data (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: introduce DMA config TLV (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: extend ALH-specific data structure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add get_hlink callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add calc_stream_format callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add codec_dai_set_stream callback (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: add error checks to prevent static analysis warnings (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add Rex CS42l42 and MAX98363 SoundWire entries (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add support for Rex soundwire (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add support for MAX98363 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Modify maxim helper functions and structure names (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Rename sof_sdw_max98373.c file to sof_sdw_maxim.c (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: Add helper function for cs42l42 codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: Sof_ssp_amp: Correcting author name. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: ADL: Moving amp only boards into end of the table. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: ADL: Enable HDMI-In capture feature support for non-I2S codec boards. (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof-sdw: add Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add tables for Dell SKU 0B34 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add quick for Dell SKU 0BDA (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add table for RPL Dell SKU 0BDA (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: increase sdw pin index for each sdw link (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add rt713 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-mtl-match: add rt712 ID (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi-intel-tgl-match: add rt712 ID (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add rt712 support (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: make rt711_sdca be generic (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: rename SOF_RT711_JDSRC to SOF_JACK_JDSRC (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw_rt_sdca_jack_common: test SOF_JACK_JDSRC in _exit (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add multi dailink support for a codec (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sdw_sof: append dai_type and remove codec_type (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add codec_info pointer (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: use predefine dailink id (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add dai info (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add missing exit callback (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: select CONFIG_SND_AMD_ACP_CONFIG (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Remove unnecessary gotos (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Invert logic on runtime alloc flags (Jaroslav Kysela) [RHEL-13726] - soundwire: stream: Remove unneeded checks for NULL bus (Jaroslav Kysela) [RHEL-13726] - soundwire: bandwidth allocation: Remove pointless variable (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Update output control for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Update the calculation of FLL for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add registers patch for NAU8825C (Jaroslav Kysela) [RHEL-13726] - ASoC: soc.h: remove snd_soc_compr_ops :: trigger (Jaroslav Kysela) [RHEL-13726] - ASoC: add snd_soc_get_stream_cpu() (Jaroslav Kysela) [RHEL-13726] - firmware: cs_dsp: Log that a bin file was loaded (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add the management of headset detection for power saving (Jaroslav Kysela) [RHEL-13726] - ASoC: es8316: Do not set rate constraints for unsupported MCLKs (Jaroslav Kysela) [RHEL-13726] - ASoC: es8316: Increment max value for ALC Capture Target Volume control (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: vangogh: Add check for acp config flags in vangogh platform (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: tidyup playback/capture_only at soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: use temporary variable at soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: cleanup soc_get_playback_capture() error (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: use dai_link on soc_get_playback_capture() (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-pcm.c: indicate error if stream has no playback no capture (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: HDA: Limit the number of dai drivers for nocodec mode (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: topology: Use partial match for connecting DAI link and DAI widget (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Allow partial matching when finding DAI link (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l42: Add PLL ratio table values (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: tgl: unify core_put on IPC3 & IPC4 path (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: mtl: add core_get & put support on MeterLake platforms (Jaroslav Kysela) [RHEL-13726] - ASoC: nau8825: Add pre-charge actions for input (Jaroslav Kysela) [RHEL-13726] - ALSA: rawmidi: Pass rawmidi directly to snd_rawmidi_kernel_open() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: amd: Add pci revision id check (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader/topology: Query the CPC value from manifest (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Do not use the CPC value from topology (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Rename sof_ipc4_update_pipeline_mem_usage() to be generic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader: Save a pointer to fm_config in sof_ipc4_fw_module (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-loader: Drop unused bss_size from struct sof_ipc4_fw_module (Jaroslav Kysela) [RHEL-13726] - ASoC: stm32: sai: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5682s: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: rt5659: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: cs53l30: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: cs42l51: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ASoC: adau1761: Use the devm_clk_get_optional() helper (Jaroslav Kysela) [RHEL-13726] - ALSA: mixart: Replace one-element arrays with simple object declarations (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant log (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant log (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Do not split message string on multiple lines (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Remove redundant logs (Jaroslav Kysela) [RHEL-13726] - ASoC: topology: Log control load errors in soc_tplg_control_load() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: Fix locking in hda_ipc4_pre_trigger() (Jaroslav Kysela) [RHEL-13726] - soundwire: amd: Improve error message in remove callback (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt715: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt715-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt712-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt712-sdca-dmic: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt711: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt711-sdca: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt700: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt5682: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1318: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1316: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - ASoC: codecs: rt1308: do not store status in state container (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_bus_common: update error log (Jaroslav Kysela) [RHEL-13726] - soundwire: cadence: revisit parity injection (Jaroslav Kysela) [RHEL-13726] - soundwire: intel/cadence: update hardware reset sequence (Jaroslav Kysela) [RHEL-13726] - soundwire: intel_bus_common: enable interrupts last (Jaroslav Kysela) [RHEL-13726] - soundwire: debugfs: fix unbalanced pm_runtime_put() (Jaroslav Kysela) [RHEL-13726] - ALSA: compat_ioctl: use correct snd_ctl_elem_type_t type (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Fix an unsigned comparison which can never be negative (Jaroslav Kysela) [RHEL-13726] - soundwire: qcom: drop unused struct qcom_swrm_ctrl members (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-pcm: reset all pipelines during FE DAI hw_free (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai-ops: Split the get_hext_stream() op for IPC4 (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify input audio format selection logic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: New helper to check if all output formats are the same (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Modify the output format selection logic (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add a new helper function to get the valid bits (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Handle output format special case (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Rename sof_ipc4_init_audio_fmt() (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Move the call to init output format (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Add a helper function for output format selection (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Handle input/output audio format special case (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: read AC timing control register before updating it (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: use substream for .free callback (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: remove .free callback implementation (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: use substream for .trigger callback (Jaroslav Kysela) [RHEL-13726] - soundwire: intel: remove .trigger callback implementation (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF/soundwire: re-add substream in params_stream structure (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: remove mutual exclusion between NOCODEC and HDA_LINK (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: use HDA_LINK instead of HDA_AUDIO_CODEC (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: mark functions as __maybe_unused (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: move hda_dai_prepare() code (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: Kconfig: move selection of PROBE_WORK_QUEUE (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: clarify initialization when HDA_AUDIO_CODEC is not used (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: fix DAI number mismatch (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: remove use of cpu_dai->component drvdata (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Intel: hda-dai: simplify .prepare callback (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add tables for LunarLake (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add new mapping for HP Spectre x360 (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: start set codec init function with an adr index (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: soc-acpi: add support for MTL SDCA boards (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: add quirk for MTL RVP (Jaroslav Kysela) [RHEL-13726] - ASoC: Intel: sof_sdw: remove SOF_SDW_TGL_HDMI for MeteorLake devices (Jaroslav Kysela) [RHEL-13726] - ASoC: wm_adsp: Update to use new component control notify helepr (Jaroslav Kysela) [RHEL-13726] - ASoC: ak4118: Update to use new component control notify helper (Jaroslav Kysela) [RHEL-13726] - ASoC: soc-component: Add notify control helper function (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: ipc4-topology: Use set_get_data() to send LARGE_CONFIG message (Jaroslav Kysela) [RHEL-13726] - ASoC: SOF: Simplify the calculation of variables (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: yc: Add MECHREVO Jiaolong Series MRID6 into DMI table (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: simplify tone control switch DSP code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: apply channel delay hack to all E-MU cards (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: simplify snd_emu10k1_audigy_dsp_convert_32_to_2x16() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: fix+optimize E-MU stereo capture DSP code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: roll up loops in DSP setup code for Audigy (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: make tone control switch mono (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: don't create regular S/PDIF controls for E-MU cards (Jaroslav Kysela) [RHEL-13726] - ASoC: sof: Improve sof_ipc4_bytes_ext_put function (Jaroslav Kysela) [RHEL-13726] - ASoC: sof: Improve sof_ipc3_bytes_ext_put function (Jaroslav Kysela) [RHEL-13726] - ALSA: uapi: pcm: control the filling of the silence samples for drain (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove now superfluous mixer locking (Jaroslav Kysela) [RHEL-13726] - ALSA: core: update comment on snd_card.controls_rwsem (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: fix locking in snd_emu1010_fpga_link_dst_src_write() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: use the right lock in snd_emu10k1_shared_spdif_put() (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove pointless locks from /proc code (Jaroslav Kysela) [RHEL-13726] - ALSA: emu10k1: remove pointless locks from timer code (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: refactor acp power on and reset functions. (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: remove the register read and write wrappers. (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Update copyright notice (Jaroslav Kysela) [RHEL-13726] - soundwire: bus: Don't filter slave alerts (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Define dummy functions for snd_ac97_suspend() and resume() (Jaroslav Kysela) [RHEL-13726] - ALSA: ac97: Remove redundant driver match function (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [RHEL-13726] - ASoC: amd: ps: Adjust the gain for PDM DMIC (Jaroslav Kysela) [RHEL-13726] - PCI: Add Loongson vendor ID (Jaroslav Kysela) [RHEL-13726]- VMCI: Use threaded irqs instead of tasklets (Ani Sinha) [RHEL-17673] - arm64: kdump: simplify the reservation behaviour of crashkernel=,high (Pingfan Liu) [RHEL-8989] - blk-mq: don't count completed flush data request as inflight in case of quiesce (Ming Lei) [RHEL-18055] - md/raid6: use valid sector values to determine if an I/O should wait on the reshape (Nigel Croxon) [RHEL-17287] - powerpc/hv-gpci: Add return value check in affinity_domain_via_partition_show function (Mamatha Inamdar) [RHEL-20259] - powerpc/pseries/vas: Migration suspend waits for no in-progress open windows (Mamatha Inamdar) [RHEL-20243] - fuse: fix deadlock between atomic O_TRUNC and page invalidation (Miklos Szeredi) [RHEL-7989] - fuse: truncate pagecache on atomic_o_trunc (Miklos Szeredi) [RHEL-7989] - blk-mq: use quiesced elevator switch when reinitializing queues (Ming Lei) [RHEL-19944] - lib/group_cpus.c: avoid acquiring cpu hotplug lock in group_cpus_evenly (Ming Lei) [RHEL-8128] - netdev: replace napi_reschedule with napi_schedule (Ivan Vecera) [RHEL-19714] - netdev: make napi_schedule return bool on NAPI successful schedule (Ivan Vecera) [RHEL-19714] - netdev: replace simple napi_schedule_prep/__napi_schedule to napi_schedule (Ivan Vecera) [RHEL-19714] - x86/topology: Use total_cpus for max logical packages calculation (Frank Ramsay) [RHEL-17893] - x86/fpu/xstate: Fix PKRU covert channel (Dean Nelson) [RHEL-16175] - x86/fpu: Invalidate FPU state correctly on exec() (Dean Nelson) [RHEL-16175] - x86/fpu/xstate: Prevent false-positive warning in __copy_xstate_uabi_buf() (Dean Nelson) [RHEL-16175] - x86/fpu: Emulate XRSTOR's behavior if the xfeatures PKRU bit is not set (Dean Nelson) [RHEL-16175] - x86/fpu: Allow PKRU to be (once again) written by ptrace. (Dean Nelson) [RHEL-16175] - x86/fpu: Add a pkru argument to copy_uabi_to_xstate() (Dean Nelson) [RHEL-16175] - x86/fpu: Add a pkru argument to copy_uabi_from_kernel_to_xstate(). (Dean Nelson) [RHEL-16175] - x86/fpu: Take task_struct* in copy_sigframe_from_user_to_xstate() (Dean Nelson) [RHEL-16175] - x86/fpu/xstate: Fix XSTATE_WARN_ON() to emit relevant diagnostics (Dean Nelson) [RHEL-16175] - x86/fpu: Cleanup variable shadowing (Dean Nelson) [RHEL-16175] - x86/fpu: Remove redundant XCOMP_BV initialization (Dean Nelson) [RHEL-16175] - x86/ptrace: Fix xfpregs_set()'s incorrect xmm clearing (Dean Nelson) [RHEL-16175] - x86/fpu: Remove duplicate copy_fpstate_to_sigframe() prototype (Dean Nelson) [RHEL-16175] - x86/fpu/signal: Initialize sw_bytes in save_xstate_epilog() (Dean Nelson) [RHEL-16175] - scsi: mpi3mr: Fetch correct device dev handle for status reply descriptor (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Block PEL Enable Command on Controller Reset and Unrecoverable State (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Clean up block devices post controller reset (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Refresh sdev queue depth after controller reset (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: driver version upgrade to 8.5.0.0.50 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add support for status reply descriptor (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Increase maximum number of PHYs to 64 from 32 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add PCI checks where SAS5116 diverges from SAS4116 (Tomas Henzl) [RHEL-17365] - scsi: mpi3mr: Add support for SAS5116 PCI IDs (Tomas Henzl) [RHEL-17365] - scsi: scsi_debug: Remove dead code (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Abort commands from scsi_debug_device_reset() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix missing error code in scsi_debug_init() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop sdebug_queue (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Only allow sdebug_max_queue be modified when no shosts (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use scsi_host_busy() in delay_store() and ndelay_store() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use blk_mq_tagset_busy_iter() in stop_all_queued() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use blk_mq_tagset_busy_iter() in sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Dynamically allocate sdebug_queued_cmd (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Use scsi_block_requests() to block queues (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Protect block_unblock_all_queues() with mutex (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Change shost list lock to a mutex (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Don't iter all shosts in clear_luns_changed_on_target() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix check for sdev queue full (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Remove redundant driver match function (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Add poll mode deferred completions to statistics (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Get command abort feature working again (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop sdebug_dev_info.num_in_q (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop check for num_in_q exceeding queue depth (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_host_reset() device NULL pointer check (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_bus_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_target_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_device_reset() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Drop scsi_debug_abort() NULL pointer checks (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Stop setting devip->sdbg_host twice (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Don't hold driver host struct pointer in host->hostdata[] (Ming Lei) [RHEL-16241] - scsi: core: Introduce {init,exit}_cmd_priv() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix possible UAF in sdebug_add_host_helper() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix sdebug_blk_mq_poll() in_use_bm bitmap use (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Fix qc_lock use in sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - scsi: scsi_debug: Refine sdebug_blk_mq_poll() (Ming Lei) [RHEL-16241] - ice: fix theoretical out-of-bounds access in ethtool link modes (Petr Oros) [RHEL-15678] - ice: restore timestamp configuration after device reset (Petr Oros) [RHEL-15678] - ice: unify logic for programming PFINT_TSYN_MSK (Petr Oros) [RHEL-15678] - ice: remove ptp_tx ring parameter flag (Petr Oros) [RHEL-15678] - ice: Fix VF-VF direction matching in drop rule in switchdev (Petr Oros) [RHEL-15678] - ice: Fix VF-VF filter rules in switchdev mode (Petr Oros) [RHEL-15678] - ice: Fix safe mode when DDP is missing (Petr Oros) [RHEL-15678] - ice: fix over-shifted variable (Petr Oros) [RHEL-15678] - ice: Remove the FW shared parameters (Petr Oros) [RHEL-15678] - ice: PTP: add clock domain number to auxiliary interface (Petr Oros) [RHEL-15678] - ice: Use PTP auxbus for all PHYs restart in E822 (Petr Oros) [RHEL-15678] - ice: Auxbus devices & driver for E822 TS (Petr Oros) [RHEL-15678] - ice: introduce ice_pf_src_tmr_owned (Petr Oros) [RHEL-15678] - ice: fix pin assignment for E810-T without SMA control (Petr Oros) [RHEL-15678] - ice: remove ICE_F_PTP_EXTTS feature flag (Petr Oros) [RHEL-15678] - ice: PTP: move quad value check inside ice_fill_phy_msg_e822 (Petr Oros) [RHEL-15678] - ice: PTP: Rename macros used for PHY/QUAD port definitions (Petr Oros) [RHEL-15678] - ice: PTP: Clean up timestamp registers correctly (Petr Oros) [RHEL-15678] - ice: introduce hw->phy_model for handling PTP PHY differences (Petr Oros) [RHEL-15678] - ice: Support cross-timestamping for E823 devices (Petr Oros) [RHEL-15678] - ice: retry acquiring hardware semaphore during cross-timestamp request (Petr Oros) [RHEL-15678] - ice: prefix clock timer command enumeration values with ICE_PTP (Petr Oros) [RHEL-15678] - ice: avoid executing commands on other ports when driving sync (Petr Oros) [RHEL-15678] - ice: fix receive buffer size miscalculation (Petr Oros) [RHEL-15678] - ice: split ice_aq_wait_for_event() func into two (Petr Oros) [RHEL-15678] - ice: embed &ice_rq_event_info event into struct ice_aq_task (Petr Oros) [RHEL-15678] - ice: ice_aq_check_events: fix off-by-one check when filling buffer (Petr Oros) [RHEL-15678] - ice: Remove redundant VSI configuration in eswitch setup (Petr Oros) [RHEL-15678] - ice: move E810T functions to before device agnostic ones (Petr Oros) [RHEL-15678] - ice: refactor ice_vsi_is_vlan_pruning_ena (Petr Oros) [RHEL-15678] - ice: refactor ice_ptp_hw to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_sched to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_vf_lib to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_lib to make functions static (Petr Oros) [RHEL-15678] - ice: refactor ice_ddp to make functions static (Petr Oros) [RHEL-15678] - ice: remove unused methods (Petr Oros) [RHEL-15678] - ice: Block switchdev mode when ADQ is active and vice versa (Petr Oros) [RHEL-15678] - ice: clean up __ice_aq_get_set_rss_lut() (Petr Oros) [RHEL-15678] - ice: add FW load wait (Petr Oros) [RHEL-15678] - ice: Add get C827 PHY index function (Petr Oros) [RHEL-15678] - ice: Rename enum ice_pkt_flags values (Petr Oros) [RHEL-15678] - ice: Add direction metadata (Petr Oros) [RHEL-15678] - ice: Fix RDMA VSI removal during queue rebuild (Petr Oros) [RHEL-15678] - ice: Correctly initialize queue context values (Petr Oros) [RHEL-15678] - ice: Fix memory management in ice_ethtool_fdir.c (Petr Oros) [RHEL-15678] - ice: Implement basic eswitch bridge setup (Petr Oros) [RHEL-15678] - ice: Unset src prune on uplink VSI (Petr Oros) [RHEL-15678] - ice: Disable vlan pruning for uplink VSI (Petr Oros) [RHEL-15678] - ice: Prohibit rx mode change in switchdev mode (Petr Oros) [RHEL-15678] - ice: Skip adv rules removal upon switchdev release (Petr Oros) [RHEL-15678] - ice: use ice_down_up() where applicable (Petr Oros) [RHEL-15678] - ice: Remove managed memory usage in ice_get_fw_log_cfg() (Petr Oros) [RHEL-15678] - ice: clean up freeing SR-IOV VFs (Petr Oros) [RHEL-15678] - ice: reduce initial wait for control queue messages (Petr Oros) [RHEL-15678] - ice: remove unnecessary check for old MAC == new MAC (Petr Oros) [RHEL-15678] - ice: do not re-enable miscellaneous interrupt until thread_fn completes (Petr Oros) [RHEL-15678] - ice: trigger PFINT_OICR_TSYN_TX interrupt instead of polling (Petr Oros) [RHEL-15678] - ice: introduce ICE_TX_TSTAMP_WORK enumeration (Petr Oros) [RHEL-15678] - ice: always return IRQ_WAKE_THREAD in ice_misc_intr() (Petr Oros) [RHEL-15678] - ice: handle extts in the miscellaneous interrupt thread (Petr Oros) [RHEL-15678] - ice: use src VSI instead of src MAC in slow-path (Petr Oros) [RHEL-15678] - ice: allow matching on meta data (Petr Oros) [RHEL-15678] - ice: specify field names in ice_prot_ext init (Petr Oros) [RHEL-15678] - ice: remove redundant Rx field from rule info (Petr Oros) [RHEL-15678] - ice: define meta data to match in switch (Petr Oros) [RHEL-15678] - ice: refactor PHY type to ethtool link mode (Petr Oros) [RHEL-15678] - ice: update ICE_PHY_TYPE_HIGH_MAX_INDEX (Petr Oros) [RHEL-15678] - ice: call ice_is_malicious_vf() from ice_vc_process_vf_msg() (Petr Oros) [RHEL-15678] - ice: move ice_is_malicious_vf() to ice_virtchnl.c (Petr Oros) [RHEL-15678] - ice: print message if ice_mbx_vf_state_handler returns an error (Petr Oros) [RHEL-15678] - ice: pass mbxdata to ice_is_malicious_vf() (Petr Oros) [RHEL-15678] - ice: remove unnecessary &array[0] and just use array (Petr Oros) [RHEL-15678] - ice: always report VF overflowing mailbox even without PF VSI (Petr Oros) [RHEL-15678] - ice: declare ice_vc_process_vf_msg in ice_virtchnl.h (Petr Oros) [RHEL-15678] - ice: initialize mailbox snapshot earlier in PF init (Petr Oros) [RHEL-15678] - ice: merge ice_mbx_report_malvf with ice_mbx_vf_state_handler (Petr Oros) [RHEL-15678] - ice: remove ice_mbx_deinit_snapshot (Petr Oros) [RHEL-15678] - ice: move VF overflow message count into struct ice_mbx_vf_info (Petr Oros) [RHEL-15678] - ice: track malicious VFs in new ice_mbx_vf_info structure (Petr Oros) [RHEL-15678] - ice: convert ice_mbx_clear_malvf to void and use WARN (Petr Oros) [RHEL-15678] - ice: re-order ice_mbx_reset_snapshot function (Petr Oros) [RHEL-15678]- nfsd: lock_rename() needs both directories to live on the same fs (Jeffrey Layton) [RHEL-19591] - HID: check empty report_list in hid_validate_values() (Desnes Nunes) [RHEL-19237 RHEL-19260] {CVE-2023-1073} - ceph: do not print the whole xattr value if it's too long (Xiubo Li) [RHEL-16411] - libceph: fix potential use-after-free on linger ping and resends (Jay Shin) [RHEL-20390] - ceph: fix incorrect revoked caps assert in ceph_fill_file_size() (Xiubo Li) [RHEL-8003] - ceph: silence smatch warning in reconnect_caps_cb() (Xiubo Li) [RHEL-16410] - ceph: fix potential use-after-free bug when trimming caps (Xiubo Li) [RHEL-16410] - ceph: don't let check_caps skip sending responses for revoke msgs (Xiubo Li) [RHEL-16412] - ceph: issue a cap release immediately if no cap exists (Xiubo Li) [RHEL-16412] - ceph: trigger to flush the buffer when making snapshot (Xiubo Li) [RHEL-16412] - ceph: force updating the msg pointer in non-split case (Xiubo Li) [RHEL-16412] - ceph: flush cap releases when the session is flushed (Xiubo Li) [RHEL-16412] - ceph: reorder fields in 'struct ceph_snapid_map' (Xiubo Li) [RHEL-16412] - ceph: voluntarily drop Xx caps for requests those touch parent mtime (Xiubo Li) [RHEL-16412] - redhat/configs: Remove multi-buffer SHA configs (Štěpán Horáček) [RHEL-14477] - crypto: tcrypt - remove all multibuffer ahash tests (Štěpán Horáček) [RHEL-14477] - crypto: hash - Remove unused async iterators (Štěpán Horáček) [RHEL-14477] - crypto: x86 - remove SHA multibuffer routines and mcryptd (Štěpán Horáček) [RHEL-14477] - fs: group frequently accessed fields of struct super_block together (Miklos Szeredi) [RHEL-12504] - fanotify: add API to attach/detach super block mark (Miklos Szeredi) [RHEL-12504] - fsnotify: send path type events to group with super block marks (Miklos Szeredi) [RHEL-12504] - fsnotify: add super block object type (Miklos Szeredi) [RHEL-12504] - netfilter: nf_tables: set backend .flush always succeeds (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: no need to call pipapo_deactivate() from flush (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix memleak when more than 255 elements expired (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disable toggling dormant table state more than once (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix table flag updates (Florian Westphal) [RHEL-1722] - netfilter: nftables: update table flags from the commit phase (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow element removal on anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nft_set_hash: try later when GC hits EAGAIN on iteration (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: stop GC iteration if GC transaction allocation fails (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix nft_trans type confusion (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: defer gc run if previous batch is still pending (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix out of memory error handling (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: use correct lock to protect gc_list (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: GC transaction race with abort path (Florian Westphal) [RHEL-1722] - netfilter: nft_dynset: disallow object maps (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: GC transaction race with netns dismantle (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix GC transaction races with netns and netlink event exit path (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: don't fail inserts if duplicate has expired (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix kdoc warnings after gc rework (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix false-positive lockdep splat (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: remove busy mark and gc batch API (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: adapt set backend to use GC transaction API (Florian Westphal) [RHEL-1722] {CVE-2023-4244} - netfilter: nf_tables: GC transaction API to avoid race with control plane (Florian Westphal) [RHEL-1722] {CVE-2023-4244} - netfilter: nftables: rename set element data activation/deactivation functions (Florian Westphal) [RHEL-1722] - netfilter: nft_set_rbtree: skip elements in transaction from garbage collection (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: don't skip expired elements during walk (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: fix spurious set element insertion failure (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: report use refcount overflow (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: add nft_chain_add() (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow timeout for anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow updates of anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: disallow element updates of bound anonymous sets (Florian Westphal) [RHEL-1722] - netfilter: nft_set_pipapo: .walk does not deal with generations (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: integrate pipapo into commit protocol (Florian Westphal) [RHEL-1722] - netfilter: nf_tables: honor NLM_F_CREATE and NLM_F_EXCL in event notification (Florian Westphal) [RHEL-1722] - netfilter: nftables: add catch-all set element support (Florian Westphal) [RHEL-1722]- netlink: support extack in dump ->start() (Hangbin Liu) [RHEL-17272] - audit: don't WARN_ON_ONCE(!current->mm) in audit_exe_compare() (Artem Savkov) [RHEL-16009] - audit: don't take task_lock() in audit_exe_compare() code path (Artem Savkov) [RHEL-16009] - IB/ipoib: Fix mcast list locking (Daniel Vacek) [RHEL-19244] - RDMA/IPoIB: Fix error code return in ipoib_mcast_join (Daniel Vacek) [RHEL-19244] - ipvlan: Fix a reference count leak warning in ipvlan_ns_exit() (Davide Caratti) [RHEL-14290] - ipvlan: Fix return value of ipvlan_queue_xmit() (Davide Caratti) [RHEL-14290] - scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() directly (Oleksandr Natalenko) [2228079] - scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() directly (Oleksandr Natalenko) [2228079] - scsi: qedf: Do not touch __user pointer in qedf_dbg_stop_io_on_error_cmd_read() directly (Oleksandr Natalenko) [2228079] - xen/blkfront: fix memory allocation flags in blkfront_setup_indirect() (Vitaly Kuznetsov) [RHEL-15958] - xen-blkfront: switch kcalloc to kvcalloc for large array allocation (Vitaly Kuznetsov) [RHEL-15958] - xen-blkfront: fix kernel panic with negotiate_mq error path (Vitaly Kuznetsov) [RHEL-15958] - tracing/timerlat: Add user-space interface (Chris White) [RHEL-15142] - tracing/osnoise: Skip running osnoise if all instances are off (Chris White) [RHEL-15142] - tracing/osnoise: Switch from PF_NO_SETAFFINITY to migrate_disable (Chris White) [RHEL-15142] - tracing/timerlat: Always wakeup the timerlat thread (Chris White) [RHEL-15142] - tracing/osnoise: Fix notify new tracing_max_latency (Chris White) [RHEL-15142] - tracing/timerlat: Notify new max thread latency (Chris White) [RHEL-15142] - trace/osnoise: make use of the helper function kthread_run_on_cpu() (Chris White) [RHEL-15142] - kthread: add the helper function kthread_run_on_cpu() (Chris White) [RHEL-15142] - iavf: Fix iavf_shutdown to call iavf_remove instead iavf_close (Michal Schmidt) [RHEL-15675] - iavf: Handle ntuple on/off based on new state machines for flow director (Michal Schmidt) [RHEL-15675] - iavf: Introduce new state machines for flow director (Michal Schmidt) [RHEL-15675] - iavf: validate tx_coalesce_usecs even if rx_coalesce_usecs is zero (Michal Schmidt) [RHEL-15675] - iavf: delete the iavf client interface (Michal Schmidt) [RHEL-15675] - iavf: add a common function for undoing the interrupt scheme (Michal Schmidt) [RHEL-15675] - iavf: use unregister_netdev (Michal Schmidt) [RHEL-15675] - iavf: rely on netdev's own registered state (Michal Schmidt) [RHEL-15675] - iavf: fix the waiting time for initial reset (Michal Schmidt) [RHEL-15675] - iavf: in iavf_down, don't queue watchdog_task if comms failed (Michal Schmidt) [RHEL-15675] - iavf: simplify mutex_trylock+sleep loops (Michal Schmidt) [RHEL-15675] - iavf: fix comments about old bit locks (Michal Schmidt) [RHEL-15675] - iavf: in iavf_down, disable queues when removing the driver (Michal Schmidt) [RHEL-15675] - iavf: initialize waitqueues before starting watchdog_task (Michal Schmidt) [RHEL-15675] - iavf: delete unused iavf_mac_info fields (Michal Schmidt) [RHEL-15675] - iavf: fix format warnings (Michal Schmidt) [RHEL-15675] - iavf: fix string truncation warnings (Michal Schmidt) [RHEL-15675] - iavf: remove "inline" functions from iavf_txrx.c (Michal Schmidt) [RHEL-15675] - iavf: do not process adminq tasks when __IAVF_IN_REMOVE_TASK is set (Michal Schmidt) [RHEL-15675] - iavf: Fix promiscuous mode configuration flow messages (Michal Schmidt) [RHEL-15675] - iavf: fix FDIR rule fields masks validation (Michal Schmidt) [RHEL-15675] - iavf: fix potential races for FDIR filters (Michal Schmidt) [RHEL-15675] - iavf: check for removal state before IAVF_FLAG_PF_COMMS_FAILED (Michal Schmidt) [RHEL-15675] - iavf: fix potential deadlock on allocation failure (Michal Schmidt) [RHEL-15675] - iavf: Remove unnecessary aer.h include (Michal Schmidt) [RHEL-15675] - iavf: Remove redundant pci_enable_pcie_error_reporting() (Michal Schmidt) [RHEL-15675]- devres: handle zero size in devm_kmalloc() (Mark Langsdorf) [RHEL-1025 RHEL-14039] - cpufreq: ACPI: Prevent a warning when another frequency driver is loaded (Mark Langsdorf) [RHEL-1025] - cpufreq: drivers with target_index() must set freq_table (Mark Langsdorf) [RHEL-1025] - cpufreq: warn about invalid vals to scaling_max/min_freq interfaces (Mark Langsdorf) [RHEL-1025] - ACPI: cpufreq: Use platform devices to load ACPI PPC and PCC drivers (Mark Langsdorf) [RHEL-1025] - cpufreq: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-1025] - kbuild, cpufreq: remove MODULE_LICENSE in non-modules (Mark Langsdorf) [RHEL-1025] - cpufreq: Add __init annotation to module init funcs (Mark Langsdorf) [RHEL-1025] - cpufreq: intel_pstate: Add Tigerlake support in no-HWP mode (Mark Langsdorf) [RHEL-1025] - netfilter: nfnetlink_osf: avoid OOB read (Phil Sutter) [RHEL-12299] {CVE-2023-39189} - crypto: qat - add NULL pointer check (Vladis Dronov) [RHEL-19124] - crypto: qat - fix mutex ordering in adf_rl (Vladis Dronov) [RHEL-19124] - crypto: qat - fix error path in add_update_sla() (Vladis Dronov) [RHEL-19124] - crypto: qat - add sysfs_added flag for rate limiting (Vladis Dronov) [RHEL-19124] - crypto: qat - add sysfs_added flag for ras (Vladis Dronov) [RHEL-19124] - x86/speculation: Provide a debugfs file to dump SPEC_CTRL MSRs (Waiman Long) [RHEL-16845] - x86/idle: Disable IBRS entering mwait idle and enable it on wakeup (Waiman Long) [RHEL-16845] - intel_idle: Add ibrs_off module parameter to force-disable IBRS (Waiman Long) [RHEL-16845] - intel_idle: Use __update_spec_ctrl() in intel_idle_ibrs() (Waiman Long) [RHEL-16845] - x86/idle: Disable IBRS when CPU is offline to improve single-threaded performance (Waiman Long) [RHEL-16845] - x86/speculation: Add __update_spec_ctrl() helper (Waiman Long) [RHEL-16845] - cpuidle, intel_idle: Fix CPUIDLE_FLAG_IBRS (Waiman Long) [RHEL-16845] - igb: Fix potential memory leak in igb_add_ethtool_nfc_entry (Corinna Vinschen) [RHEL-15681] - igb: Fix an end of loop test (Corinna Vinschen) [RHEL-15681] - igb: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15681] - intel: fix format warnings (Corinna Vinschen) [RHEL-15681] - intel: fix string truncation warnings (Corinna Vinschen) [RHEL-15681] - ethernet/intel: Use list_for_each_entry() helper (Corinna Vinschen) [RHEL-15681] - igb: clean up in all error paths when enabling SR-IOV (Corinna Vinschen) [RHEL-15681] - igb: Change IGB_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15681] - igb: disable virtualization features on 82580 (Corinna Vinschen) [RHEL-15681] - igb: Avoid starting unnecessary workqueues (Corinna Vinschen) [RHEL-15681] - igb: Fix igb_down hung on surprise removal (Corinna Vinschen) [RHEL-15681] - igb: Enable SR-IOV after reinit (Corinna Vinschen) [RHEL-15681] - bpf: Mark PTR_TO_FUNC register initially with zero offset (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Fix out of bounds access for ringbuf helpers (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Generally fix helper register offset check (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Generalize check_ctx_reg for reuse with other types (Viktor Malik) [RHEL-8477 RHEL-8926] {CVE-2021-4204} - bpf: Check PTR_TO_MEM | MEM_RDONLY in check_helper_mem_access (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Fix crash due to out of bounds access into reg2btf_ids. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Add MEM_RDONLY for helper args that are pointers to rdonly mem. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Make per_cpu_ptr return rdonly PTR_TO_MEM. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Convert PTR_TO_MEM_OR_NULL to composable types. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Introduce MEM_RDONLY flag (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Replace PTR_TO_XXX_OR_NULL with PTR_TO_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-8476 RHEL-8925 RHEL-9037] {CVE-2022-0500 CVE-2022-23222} - bpf: Replace RET_XXX_OR_NULL with RET_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Replace ARG_XXX_OR_NULL with ARG_XXX | PTR_MAYBE_NULL (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - bpf: Introduce composable reg, ret and arg types. (Viktor Malik) [RHEL-8473 RHEL-9037] {CVE-2022-0500} - ipmi: Explicitly include correct DT includes (Tony Camuso) [RHEL-14570] - ipmi_si: fix -Wvoid-pointer-to-enum-cast warning (Tony Camuso) [RHEL-14570] - ipmi: fix potential deadlock on &kcs_bmc->lock (Tony Camuso) [RHEL-14570] - ipmi_si: fix a memleak in try_smi_init() (Tony Camuso) [RHEL-14570] - ipmi: Change request_module to request_module_nowait (Tony Camuso) [RHEL-14570] - ipmi:ssif: Fix a memory leak when scanning for an adapter (Tony Camuso) [RHEL-14570] - ipmi:ssif: Add check for kstrdup (Tony Camuso) [RHEL-14570] - ipmi_watchdog: Fix read syscall not responding to signals during sleep (Tony Camuso) [RHEL-14570] - ipmi:ssif: Drop if blocks with always false condition (Tony Camuso) [RHEL-14570] - ipmi: fix SSIF not responding under certain cond. (Tony Camuso) [RHEL-14570] - ipmi:ssif: Add send_retries increment (Tony Camuso) [RHEL-14570] - char:ipmi:Fix spelling mistake "asychronously" -> "asynchronously" (Tony Camuso) [RHEL-14570] - ipmi: simplify sysctl registration (Tony Camuso) [RHEL-14570] - ipmi: ASPEED_BT_IPMI_BMC: select REGMAP_MMIO instead of depending on it (Tony Camuso) [RHEL-14570] - bnxt_en: fix free-runnig PHC mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: handle invalid Tx completions more gracefully (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: take the bit to set as argument of bnxt_queue_sp_work() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - eth: bnxt: move and rename reset helpers (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: don't handle XDP in netpoll (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Implement .set_port / .unset_port UDP tunnel callbacks (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Prevent kernel panic when receiving unexpected PHC_UPDATE event (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Skip firmware fatal error recovery if chip is not accessible (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Query default VLAN before VNIC setup on a VF (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Don't issue AP reset during ethtool's reset operation (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix bnxt_hwrm_update_rss_hash_cfg() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Do not initialize PTP on older P3/P4 chips (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Add missing 200G link speed reporting (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix typo in PCI id to device description string mapping (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Fix reporting of test result in ethtool selftest (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Enforce PTP software freq adjustments only when in non-RTC mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Defer PTP initialization to after querying function caps (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: Change fw_cap to u64 to accommodate more capability bits (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt: avoid overflow in bnxt_get_nvram_directory() (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: reset PHC frequency in free-running mode (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Avoid order-5 memory allocation for TPA data (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - ptp: bnxt: convert .adjfreq to .adjfine (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - bnxt_en: Add a non-real time mode to access NIC clock (Ken Cox) [RHEL-10233 RHEL-11006 RHEL-4238] - igc: Fix ambiguity in the ethtool advertising (Corinna Vinschen) [RHEL-15680] - igc: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15680] - intel: fix format warnings (Corinna Vinschen) [RHEL-15680] - igc: Expose tx-usecs coalesce setting to user (Corinna Vinschen) [RHEL-15680] - igc: Fix infinite initialization loop with early XDP redirect (Corinna Vinschen) [RHEL-15680] - igc: Change IGC_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15680] - igc: Decrease PTM short interval from 10 us to 1 us (Corinna Vinschen) [RHEL-15680] - igc: Add support for multiple in-flight TX timestamps (Corinna Vinschen) [RHEL-15680] - igc: Fix the typo in the PTM Control macro (Corinna Vinschen) [RHEL-15680] - igc: Add lock to safeguard global Qbv variables (Corinna Vinschen) [RHEL-15680] - eth: add missing xdp.h includes in drivers (Corinna Vinschen) [RHEL-15680] - igc: Fix Kernel Panic during ndo_tx_timeout callback (Corinna Vinschen) [RHEL-15680] - igc: Prevent garbled TX queue with XDP ZEROCOPY (Corinna Vinschen) [RHEL-15680] - igc: Fix inserting of empty frame for launchtime (Corinna Vinschen) [RHEL-15680] - igc: Fix launchtime before start of cycle (Corinna Vinschen) [RHEL-15680] - igc: No strict mode in pure launchtime/CBS offload (Corinna Vinschen) [RHEL-15680] - igc: Handle already enabled taprio offload for basetime 0 (Corinna Vinschen) [RHEL-15680] - igc: Do not enable taprio offload for invalid arguments (Corinna Vinschen) [RHEL-15680] - igc: Rename qbv_enable to taprio_offload_enable (Corinna Vinschen) [RHEL-15680] - igc: Handle PPS start time programming for past time values (Corinna Vinschen) [RHEL-15680] - igc: Include the length/type field and VLAN tag in queueMaxSDU (Corinna Vinschen) [RHEL-15680] - igc: set TP bit in 'supported' and 'advertising' fields of ethtool_link_ksettings (Corinna Vinschen) [RHEL-15680] - igc: Fix TX Hang issue when QBV Gate is closed (Corinna Vinschen) [RHEL-15680] - igc: Remove delay during TX ring configuration (Corinna Vinschen) [RHEL-15680] - igc: Add condition for qbv_config_change_errors counter (Corinna Vinschen) [RHEL-15680] - igc: Work around HW bug causing missing timestamps (Corinna Vinschen) [RHEL-15680] - igc: Retrieve TX timestamp during interrupt handling (Corinna Vinschen) [RHEL-15680] - igc: Check if hardware TX timestamping is enabled earlier (Corinna Vinschen) [RHEL-15680] - igc: Fix race condition in PTP tx code (Corinna Vinschen) [RHEL-15680] - igc: Remove unnecessary aer.h include (Corinna Vinschen) [RHEL-15680] - igc: Clean up and optimize watchdog task (Corinna Vinschen) [RHEL-15680] - igc: offload queue max SDU from tc-taprio (Corinna Vinschen) [RHEL-15680] - igc: Add qbv_config_change_errors counter (Corinna Vinschen) [RHEL-15680]- s390/pci: fix iommu bitmap allocation (Tobias Huschle) [RHEL-18202] - net/smc: Fix pos miscalculation in statistics (Tobias Huschle) [RHEL-18203] - ibmveth: Remove condition to recompute TCP header checksum. (Mamatha Inamdar) [RHEL-12553] - net: thunderx: Fix the ACPI memory leak (Maurizio Lombardi) [RHEL-18244] - null_blk: Always check queue mode setting from configfs (Ming Lei) [RHEL-18182] - drivers: net: slip: fix NPD bug in sl_tx_timeout() (Michal Schmidt) [RHEL-6655] {CVE-2022-41858} - mm: thp: replace DEBUG_VM BUG with VM_WARN when unmap fails for split (David Hildenbrand) [RHEL-8517] - net/tls: do not free tls_rec on async operation in bpf_exec_tx_verdict() (Sabrina Dubroca) [RHEL-16720] {CVE-2023-6176} - nfp: fix use-after-free in area_cache_get() (Ricardo Robaina) [RHEL-6567] {CVE-2022-3545} - igb: set max size RX buffer when store bad packet is enabled (Wander Lairson Costa) [RHEL-15188] {CVE-2023-45871} - igbvf: replace deprecated strncpy with strscpy (Corinna Vinschen) [RHEL-15679] - igbvf: Change IGBVF_MIN to allow set rx/tx value between 64 and 80 (Corinna Vinschen) [RHEL-15679] - ixgbe: Fix panic during XDP_TX with > 64 CPUs (Ken Cox) [RHEL-15682] - ixgbe: Enable setting RSS table to default values (Ken Cox) [RHEL-15682] - ixgbe: Allow flow hash to be set via ethtool (Ken Cox) [RHEL-15682] - vsock/virtio: remove socket from connected/bound list on shutdown (Stefano Garzarella) [RHEL-17877] - vsock/virtio: initialize the_virtio_vsock before using VQs (Stefano Garzarella) [RHEL-17877] - vsock: send SIGPIPE on write to shutdowned socket (Stefano Garzarella) [RHEL-17877] - vsock/virtio: factor our the code to initialize and delete VQs (Stefano Garzarella) [RHEL-17877] - virtio-net: fix for skb_over_panic inside big mode (Laurent Vivier) [RHEL-7165] - virtio-net: fix pages leaking when building skb in big mode (Laurent Vivier) [RHEL-7165] - virtio_net: fix wrong buf address calculation when using xdp (Laurent Vivier) [RHEL-7165] - virtio_net: get build_skb() buf by data ptr (Laurent Vivier) [RHEL-7165] - virtio-net: fix for unable to handle page fault for address (Laurent Vivier) [RHEL-7165] - scsi: qedi: Remove unused declarations (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix firmware halt over suspend and resume (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix potential deadlock on &qedi_percpu->p_work_lock (Nilesh Javali) [RHEL-9860] - scsi: qedi: Replace all non-returning strlcpy with strscpy (Nilesh Javali) [RHEL-9860] - scsi: qedi: Fix use after free bug in qedi_remove() (Nilesh Javali) [RHEL-9860] - scsi: qedi: Remove unneeded version.h include (Nilesh Javali) [RHEL-9860] - perf/x86/amd/uncore: Pass through error code for initialization failures, instead of -ENODEV (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Fix uninitialized return value in amd_uncore_init() (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Add memory controller support (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Add group exclusivity (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Use rdmsr if rdpmc is unavailable (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Move discovery and registration (Michael Petlan) [RHEL-9993] - perf/x86/amd/uncore: Refactor uncore management (Michael Petlan) [RHEL-9993] - RDMA/hfi1: Workaround truncation compilation error (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Fix potential deadlock on &irq_src_lock and &dd->uctxt_lock (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Remove redundant assignment to pointer ppd (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Replace deprecated strncpy (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Use FIELD_GET() to extract Link Width (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Reduce printing of errors during driver shut down (Izabela Bakollari) [RHEL-18211] - RDMA/hfi1: Use list_for_each_entry() helper (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Fix possible panic during hotplug remove (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Use struct_size() (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Suppress useless compiler warnings (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Remove trace newlines (Izabela Bakollari) [RHEL-18211] - IB/hfi1: Drop redundant pci_enable_pcie_error_reporting() (Izabela Bakollari) [RHEL-18211] - IB/hifi1: add a null check of kzalloc_node in hfi1_ipoib_txreq_init (Izabela Bakollari) [RHEL-18211]- Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb (David Marlin) [RHEL-1231] {CVE-2023-40283} - amd_hsmp: Add HSMP protocol version 5 messages (John Allen) [2072238] - KVM: s390/mm: Properly reset no-dat (Cédric Le Goater) [RHEL-17383] - KVM: s390: vsie: fix wrong VIR 37 when MSO is used (Cédric Le Goater) [RHEL-17383] - nvme-rdma: fix typo in comment (Kamal Heib) [RHEL-10968] - nvme-rdma: minor cleanup in nvme_rdma_create_cq() (Kamal Heib) [RHEL-10968] - scsi: iscsi_tcp: Fix UAF during login when accessing the shost ipaddress (Chris Leech) [RHEL-8200 RHEL-8992] {CVE-2023-2162} - scsi: iscsi_tcp: Fix UAF during logout when accessing the shost ipaddress (Chris Leech) [RHEL-8200 RHEL-8992] {CVE-2023-2162} - ibmveth: Reduce default tx queues to 8 (Mamatha Inamdar) [RHEL-11209] - ibmveth: Ethtool set queue support (Mamatha Inamdar) [RHEL-11209] - ibmveth: Implement multi queue on xmit (Mamatha Inamdar) [RHEL-11209] - ibmveth: Copy tx skbs into a premapped buffer (Mamatha Inamdar) [RHEL-11209] - ibmveth: Use dma_alloc_coherent() instead of kmalloc/dma_map_single() (Mamatha Inamdar) [RHEL-11209] - vt: keyboard, reorder user buffer handling in vt_do_kdgkb_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, rename i to kb_func in vt_do_kdgkb_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, use bool for rep (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, union perm checks in vt_do_kdsk_ioctl (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, extract vt_kdgkbent and vt_kdskbent (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, sort includes (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, include linux/spinlock.h (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, extend func_buf_lock to readers (John W. Linville) [RHEL-3015] {CVE-2020-25656} - vt: keyboard, simplify vt_kdgkbsent (John W. Linville) [RHEL-3015] {CVE-2020-25656} - tty/vt: fix write/write race in ioctl(KDSKBSENT) handler (John W. Linville) [RHEL-3015] {CVE-2020-25656} - tty: keyboard, do not speculate on func_table index (John W. Linville) [RHEL-3015] {CVE-2020-25656} - Bluetooth: RFCOMM: Fix possible deadlock on socket shutdown/release (David Marlin) [RHEL-17716] - Bluetooth: fix dangling sco_conn and use-after-free in sco_sock_timeout (David Marlin) [RHEL-17716] - bluetooth: use dev_addr_set() (David Marlin) [RHEL-17716] - bluetooth: use eth_hw_addr_set() (David Marlin) [RHEL-17716] - Bluetooth: Rename driver .prevent_wake to .wakeup (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Ask ic_info to drop firmware (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add support for TP-Link UB500 Adapter (David Marlin) [RHEL-17716] - Bluetooth: hci_sock: Replace use of memcpy_from_msg with bt_skb_sendmsg (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Add support for MSFT extension to rtl8821c devices (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add force_prevent_wake entry (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add force_suspend entry (David Marlin) [RHEL-17716] - Bluetooth: Make use of hci_{suspend,resume}_dev on suspend notifier (David Marlin) [RHEL-17716] - Bluetooth: btrsi: remove superfluous header files from btrsi.c (David Marlin) [RHEL-17716] - Bluetooth: btrtl: Set VsMsftOpCode based on device table (David Marlin) [RHEL-17716] - Bluetooth: Fix handling of experimental feature for codec offload (David Marlin) [RHEL-17716] - Bluetooth: Fix handling of experimental feature for quality reports (David Marlin) [RHEL-17716] - Bbluetooth: btusb: Add another Bluetooth part for Realtek 8852AE (David Marlin) [RHEL-17716] - Bluetooth: btrtl: enable Realtek 8822C/8852A to support AOSP extension (David Marlin) [RHEL-17716] - Bluetooth: hci_qca: enable Qualcomm WCN399x for AOSP extension (David Marlin) [RHEL-17716] - Bluetooth: Apply missing portion of previously applied commit to correct context. (David Marlin) [RHEL-17716] - Bluetooth: Fix wrong opcode when LL privacy enabled (David Marlin) [RHEL-17716] - Bluetooth: Fix Advertisement Monitor Suspend/Resume (David Marlin) [RHEL-17716] - Bluetooth: hci_h5: directly return hci_uart_register_device() ret-val (David Marlin) [RHEL-17716] - Bluetooth: hci_h5: Fix (runtime)suspend issues on RTL8723BS HCIs (David Marlin) [RHEL-17716] - Bluetooth: hci_core: Move all debugfs handling to hci_debugfs.c (David Marlin) [RHEL-17716] - Bluetooth: btmtkuart: fix a memleak in mtk_hci_wmt_sync (David Marlin) [RHEL-17716] - Bluetooth: hci_ldisc: require CAP_NET_ADMIN to attach N_HCI ldisc (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add gpio reset way for qca btsoc in cmd_timeout (David Marlin) [RHEL-17716] - Bluetooth: Fix passing NULL to PTR_ERR (David Marlin) [RHEL-17716] - Bluetooth: hci_sock: Add support for BT_{SND,RCV}BUF (David Marlin) [RHEL-17716] - Bluetooth: eir: Move EIR/Adv Data functions to its own file (David Marlin) [RHEL-17716] - Bluetooth: RFCOMM: Replace use of memcpy_from_msg with bt_skb_sendmmsg (David Marlin) [RHEL-17716] - Bluetooth: Add bt_skb_sendmmsg helper (David Marlin) [RHEL-17716] - Bluetooth: hci_uart: fix GPF in h5_recv (David Marlin) [RHEL-17716] - Bluetooth: btintel: Fix incorrect out of memory check (David Marlin) [RHEL-17716] - Bluetooth: Keep MSFT ext info throughout a hci_dev's life cycle (David Marlin) [RHEL-17716] - Bluetooth: hci_vhci: Add support for offload codecs over SCO (David Marlin) [RHEL-17716] - Bluetooth: Allow usb to auto-suspend when SCO use non-HCI transport (David Marlin) [RHEL-17716] - Bluetooth: Add offload feature under experimental flag (David Marlin) [RHEL-17716] - Bluetooth: Add support for msbc coding format (David Marlin) [RHEL-17716] - Bluetooth: btintel: Define a callback to fetch codec config data (David Marlin) [RHEL-17716] - Bluetooth: Configure codec for HFP offload use case (David Marlin) [RHEL-17716] - Bluetooth: Add support for HCI_Enhanced_Setup_Synchronous_Connection command (David Marlin) [RHEL-17716] - Bluetooth: Allow setting of codec for HFP offload use case (David Marlin) [RHEL-17716] - Bluetooth: btintel: Define callback to fetch data_path_id (David Marlin) [RHEL-17716] - Bluetooth: Allow querying of supported offload codecs over SCO socket (David Marlin) [RHEL-17716] - Bluetooth: btintel: Read supported offload use cases (David Marlin) [RHEL-17716] - Bluetooth: Add support for Read Local Supported Codecs V2 (David Marlin) [RHEL-17716] - Bluetooth: Enumerate local supported codec and cache details (David Marlin) [RHEL-17716] - Bluetooth: fix init and cleanup of sco_conn.timeout_work (David Marlin) [RHEL-17716] - Bluetooth: call sock_hold earlier in sco_conn_del (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add support for IMC Networks Mediatek Chip(MT7921) (David Marlin) [RHEL-17716] - Bluetooth: btusb: Add the new support ID for Realtek RTL8852A (David Marlin) [RHEL-17716] - Bluetooth: btintel: Read boot address irrespective of controller mode (David Marlin) [RHEL-17716] - Bluetooth: btintel: Fix boot address (David Marlin) [RHEL-17716] - Bluetooth: Fix using RPA when address has been resolved (David Marlin) [RHEL-17716] - Bluetooth: Fix using address type from events (David Marlin) [RHEL-17716] - Bluetooth: Fix enabling advertising for central role (David Marlin) [RHEL-17716] - Bluetooth: set quality report callback for Intel (David Marlin) [RHEL-17716] - Bluetooth: Support the quality report events (David Marlin) [RHEL-17716] - Bluetooth: refactor set_exp_feature with a feature table (David Marlin) [RHEL-17716] - Bluetooth: btintel: support link statistics telemetry events (David Marlin) [RHEL-17716] - Bluetooth: btusb: disable Intel link statistics telemetry events (David Marlin) [RHEL-17716] - Bluetooth: mgmt: Disallow legacy MGMT_OP_READ_LOCAL_OOB_EXT_DATA (David Marlin) [RHEL-17716] - Bluetooth: reorganize functions from hci_sock_sendmsg() (David Marlin) [RHEL-17716] - crypto: qat - prevent underflow in rp2srv_store() (Vladis Dronov) [RHEL-15642] - crypto: qat - fix deadlock in backlog processing (Vladis Dronov) [RHEL-15642] - crypto: qat - move adf_cfg_services (Vladis Dronov) [RHEL-15642] - crypto: qat - add num_rps sysfs attribute (Vladis Dronov) [RHEL-15642] - crypto: qat - add rp2svc sysfs attribute (Vladis Dronov) [RHEL-15642] - crypto: qat - add rate limiting sysfs interface (Vladis Dronov) [RHEL-15642] - crypto: qat - add rate limiting feature to qat_4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - add retrieval of fw capabilities (Vladis Dronov) [RHEL-15642] - crypto: qat - add bits.h to icp_qat_hw.h (Vladis Dronov) [RHEL-15642] - crypto: qat - move admin api (Vladis Dronov) [RHEL-15642] - crypto: qat - fix ring to service map for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - use masks for AE groups (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor fw config related functions (Vladis Dronov) [RHEL-15642] - crypto: qat - count QAT GEN4 errors (Vladis Dronov) [RHEL-15642] - crypto: qat - add error counters (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of errors from ERRSOU3 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add adf_get_aram_base() helper function (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of compression related errors for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add handling of errors from ERRSOU2 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add reporting of errors from ERRSOU1 for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add reporting of correctable errors for QAT GEN4 (Vladis Dronov) [RHEL-15642] - crypto: qat - add infrastructure for error reporting (Vladis Dronov) [RHEL-15642] - crypto: qat - fix double free during reset (Vladis Dronov) [RHEL-15642] - crypto: qat - add cnv_errors debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - add pm_status debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor included headers (Vladis Dronov) [RHEL-15642] - crypto: qat - Remove zlib-deflate (Vladis Dronov) [RHEL-15642] - crypto: qat - increase size of buffers (Vladis Dronov) [RHEL-15642] - crypto: qat - enable dc chaining service (Vladis Dronov) [RHEL-15642] - crypto: qat - consolidate services structure (Vladis Dronov) [RHEL-15642] - crypto: qat - fix unregistration of compression algorithms (Vladis Dronov) [RHEL-15642] - crypto: qat - fix unregistration of crypto algorithms (Vladis Dronov) [RHEL-15642] - crypto: qat - ignore subsequent state up commands (Vladis Dronov) [RHEL-15642] - crypto: qat - do not shadow error code (Vladis Dronov) [RHEL-15642] - crypto: qat - fix state machines cleanup paths (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor deprecated strncpy (Vladis Dronov) [RHEL-15642] - crypto: qat - Use list_for_each_entry() helper (Vladis Dronov) [RHEL-15642] - Documentation: ABI: debugfs-driver-qat: fix fw_counters path (Vladis Dronov) [RHEL-15642] - crypto: qat - fix crypto capability detection for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - Remove unused function declarations (Vladis Dronov) [RHEL-15642] - crypto: qat - use kfree_sensitive instead of memset/kfree() (Vladis Dronov) [RHEL-15642] - crypto: qat - replace the if statement with min() (Vladis Dronov) [RHEL-15642] - crypto: qat - add heartbeat counters check (Vladis Dronov) [RHEL-15642] - crypto: qat - add heartbeat feature (Vladis Dronov) [RHEL-15642] - crypto: qat - add measure clock frequency (Vladis Dronov) [RHEL-15642] - crypto: qat - drop obsolete heartbeat interface (Vladis Dronov) [RHEL-15642] - crypto: qat - add internal timer for qat 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - add fw_counters debugfs file (Vladis Dronov) [RHEL-15642] - crypto: qat - change value of default idle filter (Vladis Dronov) [RHEL-15642] - crypto: qat - do not export adf_init_admin_pm() (Vladis Dronov) [RHEL-15642] - crypto: qat - expose pm_idle_enabled through sysfs (Vladis Dronov) [RHEL-15642] - crypto: qat - extend configuration for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor fw config logic for 4xxx (Vladis Dronov) [RHEL-15642] - crypto: qat - make fw images name constant (Vladis Dronov) [RHEL-15642] - crypto: qat - move returns to default case (Vladis Dronov) [RHEL-15642] - crypto: qat - unmap buffers before free for RSA (Vladis Dronov) [RHEL-15642] - crypto: qat - unmap buffer before free for DH (Vladis Dronov) [RHEL-15642] - crypto: qat - update slice mask for 4xxx devices (Vladis Dronov) [RHEL-15642] - crypto: qat - set deprecated capabilities as reserved (Vladis Dronov) [RHEL-15642] - crypto: qat - add missing function declaration in adf_dbgfs.h (Vladis Dronov) [RHEL-15642] - crypto: qat - move dbgfs init to separate file (Vladis Dronov) [RHEL-15642] - crypto: qat - drop redundant adf_enable_aer() (Vladis Dronov) [RHEL-15642] - crypto: qat - fix apply custom thread-service mapping for dc service (Vladis Dronov) [RHEL-15642] - crypto: qat - make state machine functions static (Vladis Dronov) [RHEL-15642] - crypto: qat - refactor device restart logic (Vladis Dronov) [RHEL-15642] - crypto: qat - replace state machine calls (Vladis Dronov) [RHEL-15642] - crypto: qat - fix concurrency issue when device state changes (Vladis Dronov) [RHEL-15642] - crypto: qat - delay sysfs initialization (Vladis Dronov) [RHEL-15642] - crypto: qat - Include algapi.h for low-level Crypto API (Vladis Dronov) [RHEL-15642] - crypto: rsa-pkcs1pad - Use helper to set reqsize (Vladis Dronov) [RHEL-15642] - units: Add BYTES_PER_*BIT (Vladis Dronov) [RHEL-15642]- netfilter: xt_sctp: validate the flag_info count (Wander Lairson Costa) [RHEL-11728] {CVE-2023-39193} - nvmet: nul-terminate the NQNs passed in the connect command (Maurizio Lombardi) [RHEL-16690] {CVE-2023-6121} - x86/speculation: Mark all Skylake CPUs as vulnerable to GDS (Waiman Long) [RHEL-3876] - gve: Fix GFP flags when allocing pages (Izabela Bakollari) [2140228] - Fix double fget() in vhost_net_set_backend() (Jon Maloy) [RHEL-7162] {CVE-2023-1838} - mptcp: fix disconnect vs accept race (Davide Caratti) [RHEL-15347] - mptcp: fix accept vs worker race (Davide Caratti) [RHEL-15347] - mptcp: stops worker on unaccepted sockets at listener close (Davide Caratti) [RHEL-15347] - mptcp: fix UaF in listener shutdown (Davide Caratti) [RHEL-15347] - mptcp: fix lockdep false positive (Davide Caratti) [RHEL-15347] - mptcp: use the workqueue to destroy unaccepted sockets (Davide Caratti) [RHEL-15347] - mptcp: refactor passive socket initialization (Davide Caratti) [RHEL-15347] - mptcp: set msk local address earlier (Davide Caratti) [RHEL-15347] - mptcp: fix possible list corruption on passive MPJ (Davide Caratti) [RHEL-15347] - mptcp: fix possible deadlock in subflow_error_report (Davide Caratti) [RHEL-15347] - dmaengine: idxd: Modify the dependence of attribute pasid_enabled (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioatdma: use pci_dev_id() to simplify the code (Jerry Snitselaar) [RHEL-10101] - dmaengine: Simplify dma_async_device_register() (Jerry Snitselaar) [RHEL-10101] - dmaengine: qcom: hidma_mgmt: Use devm_platform_get_and_ioremap_resource() (Jerry Snitselaar) [RHEL-10101] - dmaengine: qcom_hidma: Use devm_platform_get_and_ioremap_resource() (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: fixing the wrong dma_dev->chancnt (Jerry Snitselaar) [RHEL-10101] - dmaengine: hidma: Don't set chancnt (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: Free up __cleanup() name (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Fix passing freed memory in idxd_cdev_open() (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: make misc interrupt one shot (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: Drop redundant pci_enable_pcie_error_reporting() (Jerry Snitselaar) [RHEL-10101] - dmaengine: ioat: use PCI core macros for PCIe Capability (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Allow ATS disable update only for configurable devices (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Expose ATS disable knob only when WQ ATS is supported (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: Simplify WQ attribute visibility checks (Jerry Snitselaar) [RHEL-10101] - dmaengine: idxd: use spin_lock_irqsave before wait_event_lock_irq (Jerry Snitselaar) [RHEL-10101] - dmaengine: Actually use devm_add_action_or_reset() (Jerry Snitselaar) [RHEL-10101] - clk: fix leak on devm_clk_bulk_get_all() unwind (Jerry Snitselaar) [RHEL-10101] - drm/amdgpu: Fix possible null pointer dereference (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/amdgpu: Fix possible null pointer dereference (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Keep a gem reference to user bos in surfaces (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: fix typo of sizeof argument (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix possible invalid drm gem put calls (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix shader stage validation (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: remove unused vmw_overlay function (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix Legacy Display Unit atomic drm support (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Print errors when running on broken/unsupported configs (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Drop mksstat_init_record fn as currently unused (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Fix src/dst_pitch confusion (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Replace one-element array with flexible-array member (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Do not drop the reference to the handle too soon (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Stop accessing buffer objects which failed init (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Make the driver work without the dummy resources (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Stop using raw ttm_buffer_object's (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Abstract placement selection (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Rename dummy to is_iomem (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Cleanup the vmw bo usage in the cursor paths (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Simplify fb pinning (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Rename vmw_buffer_object to vmw_bo (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Remove the duplicate bo_free function (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/vmwgfx: Use the common gem mmap instead of the custom code (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/radeon: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/qxl: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/gem-vram: handle NULL bo->resource in move callback (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: prevent moving of pinned BOs (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: stop allocating a dummy resource for pipelined gutting (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: stop allocating dummy resources during BO creation (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/ttm: clear the ttm_tt when bo->resource is NULL (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - drm/i915/ttm: audit remaining bo->resource (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Stop accessing buffer objects which failed init" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Do not drop the reference to the handle too soon" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - Revert "drm/vmwgfx: Fix Legacy Display Unit atomic drm support" (Jocelyn Falempe) [RHEL-14510] {CVE-2023-5633} - ACPI: NFIT: Fix incorrect calculation of idt size (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add IRQ override quirk for LG UltraPC 17U70P (Mark Langsdorf) [RHEL-1021] - ACPI: property: Support strings in Apple _DSM props (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Remove Lenovo Yoga Tablet 2's MAGN0001 (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Do not turn of unused power resources on the Toshiba Click Mini (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Add 80862289 ACPI _HID for second PWM controller on Cherry Trail (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Ensure that notify handlers are not running after removal (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Add missing braces to acpi_sb_notify() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CBA (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Add Picasso to the list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_madt_oem_data: Fix flexible array member definition (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_dmar_andd: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_pci_routing_table: Replace fixed-size array with flex array member (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_resource_dma: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: actbl1: Replace 1-element arrays with flexible arrays (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_resource_vendor: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: acpi_resource_irq: Replace 1-element arrays with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: struct acpi_nfit_interleave: Replace 1-element array with flexible array (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: load of misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within null pointer (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: member access within misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: applying zero offset to null pointer (Mark Langsdorf) [RHEL-1021] - ACPICA: Avoid undefined behavior: load of misaligned address (Mark Langsdorf) [RHEL-1021] - ACPICA: actbl2: Replace 1-element arrays with flexible arrays (Mark Langsdorf) [RHEL-1021] - ACPICA: Introduce ACPI_FLEX_ARRAY (Mark Langsdorf) [RHEL-1021] - ACPICA: add support for ClockInput resource (v6.5) (Mark Langsdorf) [RHEL-1021] - ACPICA: Update all copyrights/signons to 2023 (Mark Langsdorf) [RHEL-1021] - ACPICA: acpisrc: Add missing tables to astable (Mark Langsdorf) [RHEL-1021] - ACPICA: Add missing macro ACPI_FUNCTION_TRACE() for acpi_ns_repair_HID() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix oops when removing custom query handlers (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Limit explicit removal of query handlers to custom query handlers (Mark Langsdorf) [RHEL-1021] - ACPI: SPCR: Amend indentation (Mark Langsdorf) [RHEL-1021] - ACPI: property: Refactor acpi_data_prop_read_single() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: warn on invalid argument when explicitly indicated by platform (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: Enable ACPI sysfs support for CCEL records (Mark Langsdorf) [RHEL-1021] - ACPICA: iASL: Add CCEL table to both compiler/disassembler (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Rework system-level device notification handling (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add Medion S17413 to IRQ override quirk (Mark Langsdorf) [RHEL-1021] - ACPI: LPIT: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-1021] - ACPI: SPCR: Prefix error messages with FW_BUG (Mark Langsdorf) [RHEL-1021] - ACPI: processor: Fix evaluating _PDC method when running as Xen dom0 (Mark Langsdorf) [RHEL-1021] - ACPI: s2idle: Log when enabling wakeup IRQ fails (Mark Langsdorf) [RHEL-1021] - ACPI: processor: Check for null return of devm_kzalloc() in fch_misc_setup() (Mark Langsdorf) [RHEL-1021] - ACPI: PPTT: Fix to avoid sleep in the atomic context when PPTT is absent (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Book X90 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: utils: Add Cezanne to the list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Expertbook B2402FBA (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Do IRQ override on all TongFang GMxRGxx (Mark Langsdorf) [RHEL-1021] - ACPI: make kobj_type structures constant (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add IRQ overrides for MAINGEAR Vector Pro 2 models (Mark Langsdorf) [RHEL-1021] - ACPI: PMIC: Add comments with DSDT power opregion field names (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Limit error type to 32-bit width (Mark Langsdorf) [RHEL-1021] - ACPI: NFIT: fix a potential deadlock during NFIT teardown (Mark Langsdorf) [RHEL-1021] - ACPI: Don't build ACPICA with '-Os' (Mark Langsdorf) [RHEL-1021] - ACPI: PRM: Check whether EFI runtime is available (Mark Langsdorf) [RHEL-1021] - ACPI: PNP: Introduce list of known non-PNP devices (Mark Langsdorf) [RHEL-1021] - ACPICA: nsrepair: handle cases without a return value correctly (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Expertbook B2402CBA (Mark Langsdorf) [RHEL-1021] - ACPI: Silence missing prototype warnings (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Avoid updating frequency QoS unnecessarily (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Use the "no limit" frequency QoS (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Drop unnecessary (void *) conversion (Mark Langsdorf) [RHEL-1021] - ACPICA: Constify pathname argument for acpi_get_handle() (Mark Langsdorf) [RHEL-1021] - ACPICA: Drop port I/O validation for some regions (Mark Langsdorf) [RHEL-1021] - ACPI: PMIC: Add pmic_i2c_address to BYT Crystal Cove support (Mark Langsdorf) [RHEL-1021] - ACPI: tables: Add support for NBFT (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Force AMD GUID/_REV 2 on HP Elitebook 865 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Stop using AMD specific codepath for Rembrandt+ (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add Asus ExpertBook B2502 to Asus quirks (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on Lenovo 14ALC7 (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on XMG Core 15 (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix ECDT probe ordering issues (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Fix EC address space handler unregistration (Mark Langsdorf) [RHEL-1021] - ACPICA: Allow address_space_handler Install and _REG execution as 2 separate steps (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Medion Lifetab S10346 (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Refactor available_error_type_show() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: EINJ: Fix formatting errors (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Adjust acpi_processor_notify_smm() return value (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Rearrange acpi_processor_notify_smm() (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Rearrange unregistration routine (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Drop redundant parentheses (Mark Langsdorf) [RHEL-1021] - ACPI: processor: perflib: Adjust white space (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Drop unnecessary statements and parens (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Adjust critical.flags.valid check (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Convert to use sysfs_emit_at() API (Mark Langsdorf) [RHEL-1021] - ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage() (Mark Langsdorf) [RHEL-1021] - ACPI: use sysfs_emit() instead of scnprintf() (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Tab 3 Pro (YT3-X90F) (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Remove a useless include (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Silence missing prototype warnings (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Bail out if extract package failed (Mark Langsdorf) [RHEL-1021] - ACPI: pfr_telemetry: use ACPI_FREE() to free acpi_object (Mark Langsdorf) [RHEL-1021] - ACPI: pfr_update: use ACPI_FREE() to free acpi_object (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Fix the _OSC capability check for FFH OpRegion (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: Fix initiator registration for single-initiator systems (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: remove unnecessary variable initialization (Mark Langsdorf) [RHEL-1021] - ACPI: APMT: Fix kerneldoc and indentation (Mark Langsdorf) [RHEL-1021] - ACPI: Implement a generic FFH Opregion handler (Mark Langsdorf) [RHEL-1021] - redhat: configs: enable FFH OpRegion handlers (Mark Langsdorf) [RHEL-1021] - ACPI: Enable FPDT on arm64 (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: use sysfs_emit() to instead of scnprintf() (Mark Langsdorf) [RHEL-1021] - ACPI: irq: Fix some kernel-doc issues (Mark Langsdorf) [RHEL-1021] - ACPI: tables: Fix the stale comments for acpi_locate_initial_tables() (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: use hotplug_memory_notifier() directly (Mark Langsdorf) [RHEL-1021] - ACPICA: Fix error code path in acpi_ds_call_control_method() (Mark Langsdorf) [RHEL-1021] - ACPICA: Add utcksum.o to the acpidump Makefile (Mark Langsdorf) [RHEL-1021] - ACPI/IORT: Update SMMUv3 DeviceID support (Mark Langsdorf) [RHEL-1021] - ACPI: ARM Performance Monitoring Unit Table (APMT) initial support (Mark Langsdorf) [RHEL-1021] - ACPI: sysfs: Use kstrtobool() instead of strtobool() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Add quirk for the HP Pavilion Gaming 15-cx0041ur (Mark Langsdorf) [RHEL-1021] - ACPI: processor: throttling: remove variable count (Mark Langsdorf) [RHEL-1021] - ACPI: processor: idle: Check acpi_fetch_acpi_dev() return value (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Drop unsetting driver data on remove (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add another system to quirk list for forcing StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPICA: Finish support for the CDAT table (Mark Langsdorf) [RHEL-1021] - ACPICA: Improve warning message for "invalid ACPI name" (Mark Langsdorf) [RHEL-1021] - ACPICA: Check that EBDA pointer is in valid memory (Mark Langsdorf) [RHEL-1021] - arm64: acpi: Fix possible memory leak of ffh_ctxt (Mark Langsdorf) [RHEL-1021] - arm64: Add architecture specific ACPI FFH Opregion callbacks (Mark Langsdorf) [RHEL-1021] - ACPICA: Add support for FFH Opregion special context data (Mark Langsdorf) [RHEL-1021] - ACPICA: Do not touch VGA memory when EBDA < 1ki_b (Mark Langsdorf) [RHEL-1021] - ACPICA: Make acpi_ex_load_op() match upstream (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Add LATT2021 to acpi_ignore_dep_ids[] (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Vivobook S5602ZA (Mark Langsdorf) [RHEL-1021] - apei/ghes: Use xchg_release() for updating new cache slot instead of cmpxchg() (Mark Langsdorf) [RHEL-1021] - ACPI: PCI: Fix device reference counting in acpi_get_pci_dev() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: note more about IRQ override (Mark Langsdorf) [RHEL-1021] - ACPI: resource: do IRQ override on LENOVO IdeaPad (Mark Langsdorf) [RHEL-1021] - ACPI: extlog: Handle multiple records (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init() (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Drop redundant parens from expressions (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Use white space more consistently (Mark Langsdorf) [RHEL-1021] - ACPI: thermal: Drop some redundant code (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: do not add task_work to kernel thread to avoid memory leak (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Take wake IRQ into consideration when entering suspend-to-idle (Mark Langsdorf) [RHEL-1021] - ACPI: resources: Add wake_capable parameter to acpi_dev_irq_flags (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Replace loop with first entry retrieval (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Deduplicate skipping device in acpi_lpss_create_device() (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Fix a NULL pointer dereference (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add another ID to s2idle_dmi_table (Mark Langsdorf) [RHEL-1021] - ACPI: Kconfig: Drop link to https://01.org/linux-acpi (Mark Langsdorf) [RHEL-1021] - ACPI: DPTF: Drop stale link from Kconfig help (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUSTeK COMPUTER INC. ROG Flow X13 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUS ROG Zephyrus G14 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for Lenovo Slim 7 Pro 14ARH7 (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: If a new AMD _HID is missing assume Rembrandt (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add a quirk for ASUS TUF Gaming A17 FA707RE (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Move _HID handling for AMD systems into structures (Mark Langsdorf) [RHEL-1021] - ACPI: x86: s2idle: Add module parameter to prefer Microsoft GUID (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add ASUS model S5402ZA to quirks (Mark Langsdorf) [RHEL-1021] - ACPI: AMBA: Add ARM DMA-330 controller to the supported list (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Remove unneeded result variables (Mark Langsdorf) [RHEL-1021] - ACPI: fan: Reorder symbols to get rid of a few forward declarations (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Add a quirk for Dell Inspiron 14 2-in-1 for StorageD3Enable (Mark Langsdorf) [RHEL-1021] - ACPI: PCI: Rework acpi_get_pci_dev() (Mark Langsdorf) [RHEL-1021] - ACPI: HMAT: Drop unused dev_fmt() and redundant 'HMAT' prefix (Mark Langsdorf) [RHEL-1021] - ACPI: x86: Refactor _UID handling to use acpi_dev_uid_to_integer() (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Refactor _UID handling to use acpi_dev_uid_to_integer() (Mark Langsdorf) [RHEL-1021] - ACPI: utils: Add acpi_dev_uid_to_integer() helper to get _UID as integer (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Add helper function acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: LPSS: Use the helper acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Skip IRQ override on Asus Vivobook K3402ZA/K3502ZA (Mark Langsdorf) [RHEL-1021] - ACPI: APD: Use the helper acpi_dev_get_memory_resources() (Mark Langsdorf) [RHEL-1021] - ACPI: resource: Filter out the non memory resources in is_memory() (Mark Langsdorf) [RHEL-1021] - ACPI: tables: FPDT: Don't call acpi_os_map_memory() on invalid phys address (Mark Langsdorf) [RHEL-1021] - ACPI: s2idle: Add a new ->check() callback for platform_s2idle_ops (Mark Langsdorf) [RHEL-1021] - ACPI: property: Silence missing-declarations warning in apple.c (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Use PLATFORM_DEVID_NONE in acpi_create_platform_device() (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Remove redundant print on -ENOMEM (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Sort forbidden_id_list[] in ascending order (Mark Langsdorf) [RHEL-1021] - ACPI: platform: Use sizeof(*pointer) instead of sizeof(type) (Mark Langsdorf) [RHEL-1021] - ACPI: property: Use acpi_dev_parent() (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Refactor ACPI matching functions for better readability (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Drop kernel doc annotation from acpi_bus_notify() (Mark Langsdorf) [RHEL-1021] - ACPI: EC: Drop unneeded result variable from ec_write() (Mark Langsdorf) [RHEL-1021] - ACPI: APEI: Add BERT error log footer (Mark Langsdorf) [RHEL-1021] - platform/x86: asus-wmi: Move acpi_backlight=native quirks to ACPI video_detect.c (Mark Langsdorf) [RHEL-1021] - ACPI: video: Fix indentation of video_detect_dmi_table[] entries (Mark Langsdorf) [RHEL-1021] - platform/x86: acer-wmi: Move backlight DMI quirks to acpi/video_detect.c (Mark Langsdorf) [RHEL-1021] - platform/x86: asus-wmi: Move acpi_backlight=vendor quirks to ACPI video_detect.c (Mark Langsdorf) [RHEL-1021] - ACPI: video: Refactor acpi_video_get_backlight_type() a bit (Mark Langsdorf) [RHEL-1021] - ACPI: video: Simplify acpi_video_unregister_backlight() (Mark Langsdorf) [RHEL-1021] - ACPI: video: Remove acpi_video_bus from list before tearing it down (Mark Langsdorf) [RHEL-1021] - ACPI: video: Remove code to unregister acpi_video backlight when a native backlight registers (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Fix NULL argument handling in acpi_device_get/set_power() (Mark Langsdorf) [RHEL-1021] - ACPI: bus: Remove the unneeded result variable (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-HPI-Hybrid-Graphics _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-Lenovo-NV-HDMI-Audio _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: OSI: Remove Linux-Dell-Video _OSI string (Mark Langsdorf) [RHEL-1021] - ACPI: Drop parent field from struct acpi_device (Mark Langsdorf) [RHEL-1021] - ACPI: move from strlcpy() with unused retval to strscpy() (Mark Langsdorf) [RHEL-1021] - ACPI: PM: Fix acpi_dev_state_d0() kerneldoc (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Eliminate __acpi_device_add() (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Rearrange initialization of ACPI device objects (Mark Langsdorf) [RHEL-1021] - ACPI: Rename acpi_bus_get/put_acpi_device() (Mark Langsdorf) [RHEL-1021] - ACPI: scan: Rename acpi_bus_get_parent() and rearrange it (Mark Langsdorf) [RHEL-1021]- s390/smp: move rcu_cpu_starting() earlier (Joel Savitz) [RHEL-8624] - net: fix net device address assign type (Michal Schmidt) [RHEL-6383] - net: add check for current MAC address in dev_set_mac_address (Michal Schmidt) [RHEL-6383] - writeback, cgroup: Fix kernel bootup panic with cgroup v2 (Waiman Long) [RHEL-17504] - net/tls: Remove the context from the list in tls_device_down (Jay Shin) [RHEL-17301] - tls: Fix context leak on tls_device_down (Jay Shin) [RHEL-17301] - RDMA/core: Require admin capabilities to set system parameters (Kamal Heib) [RHEL-1033] - RDMA/cma: Initialize ib_sa_multicast structure to 0 when join (Kamal Heib) [RHEL-1033] - RDMA/core: Use size_{add,sub,mul}() in calls to struct_size() (Kamal Heib) [RHEL-1033] - RDMA/cma: Fix truncation compilation warning in make_cma_ports (Kamal Heib) [RHEL-1033] - RDMA/uverbs: Fix typo of sizeof argument (Kamal Heib) [RHEL-1033] - IB/uverbs: Fix an potential error pointer dereference (Kamal Heib) [RHEL-1033] - scsi: RDMA/srp: Fix residual handling (Kamal Heib) [RHEL-1033] - rdma: fix INFINIBAND_USER_ACCESS dependency (Kamal Heib) [RHEL-1033] - gfs2: Fix quota=quiet oversight (Bob Peterson) [RHEL-14849] - gfs2: Free quota data objects synchronously (Andreas Gruenbacher) [RHEL-14849] - gfs2: Fix initial quota data refcount (Andreas Gruenbacher) [RHEL-14849] - gfs2: Factor out duplicate quota data disposal code (Andreas Gruenbacher) [RHEL-14849] - gfs2: Use gfs2_qd_dispose in gfs2_quota_cleanup (Andreas Gruenbacher) [RHEL-14849] - gfs2: Fix wrong quota shrinker return value (Andreas Gruenbacher) [RHEL-14849] - gfs2: ignore negated quota changes (Bob Peterson) [RHEL-14849] - gfs2: Introduce new quota=quiet mount option (Bob Peterson) [RHEL-14849] - gfs2: Rename sd_{ glock => kill }_wait (Andreas Gruenbacher) [RHEL-14849] - Bluetooth: btrtl: Set MSFT opcode for RTL8852 (David Marlin) [RHEL-2531] - Bluetooth: Fix return value in hci_dev_do_close() (David Marlin) [RHEL-2531] - Bluetooth: add timeout sanity check to hci_inquiry (David Marlin) [RHEL-2531] - Bluetooth: btusb: Remove WAKEUP_DISABLE and add WAKEUP_AUTOSUSPEND for Realtek devices (David Marlin) [RHEL-2531] - Bluetooth: mgmt: Pessimize compile-time bounds-check (David Marlin) [RHEL-2531] - Bluetooth: Fix race condition in handling NOP command (David Marlin) [RHEL-2531] - Bluetooth: btbcm: add patch ram for bluetooth (David Marlin) [RHEL-2531] - Bluetooth: Store advertising handle so it can be re-enabled (David Marlin) [RHEL-2531] - Bluetooth: Fix handling of LE Enhanced Connection Complete (David Marlin) [RHEL-2531] - Bluetooth: fix repeated calls to sco_sock_kill (David Marlin) [RHEL-2531] - Bluetooth: switch to lock_sock in RFCOMM (David Marlin) [RHEL-2531] - Bluetooth: serialize calls to sco_sock_{set,clear}_timer (David Marlin) [RHEL-2531] - Bluetooth: switch to lock_sock in SCO (David Marlin) [RHEL-2531] - Bluetooth: avoid circular locks in sco_sock_connect (David Marlin) [RHEL-2531] - Bluetooth: schedule SCO timeouts with delayed_work (David Marlin) [RHEL-2531] - Bluetooth: btusb: Fix fall-through warnings (David Marlin) [RHEL-2531] - Bluetooth: btintel: Combine setting up MSFT extension (David Marlin) [RHEL-2531] - Bluetooth: increase BTNAMSIZ to 21 chars to fix potential buffer overflow (David Marlin) [RHEL-2531] - Bluetooth: Add additional Bluetooth part for Realtek 8852AE (David Marlin) [RHEL-2531] - Bluetooth: btusb: Record debug log for Mediatek Chip. (David Marlin) [RHEL-2531] - Bluetooth: hci_bcm: Fix kernel doc comments (David Marlin) [RHEL-2531] - Bluetooth: Fix not generating RPA when required (David Marlin) [RHEL-2531] - Bluetooth: HCI: Add proper tracking for enable status of adv instances (David Marlin) [RHEL-2531] - Bluetooth: btusb: Enable MSFT extension for Mediatek Chip (MT7921) (David Marlin) [RHEL-2531] - Bluetooth: btusb: Make the CSR clone chip force-suspend workaround more generic (David Marlin) [RHEL-2531] - Bluetooth: btusb: Enable MSFT extension for WCN6855 controller (David Marlin) [RHEL-2531] - Bluetooth: btusb: Load Broadcom firmware for Dell device 413c:8197 (David Marlin) [RHEL-2531] - Bluetooth: btmrvl_sdio: Remove all strcpy() uses (David Marlin) [RHEL-2531] - Bluetooth: skip invalid hci_sync_conn_complete_evt (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add valid le states quirk (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: Add runtime suspend (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: btrtl: Maintain flow control if wakeup is enabled (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: add WAKEUP_DISABLE flag (David Marlin) [RHEL-2531] - Bluetooth: btrsi: use non-kernel-doc comment for copyright (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add support for LG LGSBWAC92/TWCM-K505D (David Marlin) [RHEL-2531] - Bluetooth: sco: prevent information leak in sco_conn_defer_accept() (David Marlin) [RHEL-2531] - Bluetooth: btusb: Add support for IMC Networks Mediatek Chip (David Marlin) [RHEL-2531] - Bluetooth: hci_h5: Disable the hci_suspend_notifier for btrtl devices (David Marlin) [RHEL-2531] - Bluetooth: msft: Use the correct print format (David Marlin) [RHEL-2531] - Bluetooth: mgmt: Use the correct print format (David Marlin) [RHEL-2531] - Bluetooth: use inclusive language in hci_core.h (David Marlin) [RHEL-2531] - Bluetooth: btqca: Moved extracting rom version info to common place (David Marlin) [RHEL-2531] - Bluetooth: btqca: Add support for firmware image with mbn type for WCN6750 (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for QTI Bluetooth chip wcn6750 (David Marlin) [RHEL-2531] - Bluetooth: use flexible-array member instead of zero-length array (David Marlin) [RHEL-2531] - Bluetooth: Fix default values for advertising interval (David Marlin) [RHEL-2531] - Bluetooth: Remove trailing semicolon in macros (David Marlin) [RHEL-2531] - Bluetooth: Fix crash in mgmt_add_adv_patterns_monitor_complete (David Marlin) [RHEL-2531] - Bluetooth: disable advertisement filters during suspend (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT interleave scanning integration (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT handle filter enablement (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT handle controller reset (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT remove monitor (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT add monitor (David Marlin) [RHEL-2531] - Bluetooth: advmon offload MSFT add rssi support (David Marlin) [RHEL-2531] - Bluetooth: btrtl: Enable MSFT extension for RTL8822CE controller (David Marlin) [RHEL-2531] - Bluetooth: btqca: Enable MSFT extension for Qualcomm WCN399x (David Marlin) [RHEL-2531] - Bluetooth: btqca: Use NVM files based on SoC ID for WCN3991 (David Marlin) [RHEL-2531] - Bluetooth: fix typo in struct name (David Marlin) [RHEL-2531] - Bluetooth: btqca: Add valid le states quirk (David Marlin) [RHEL-2531] - Bluetooth: ath3k: use usb_control_msg_send() and usb_control_msg_recv() (David Marlin) [RHEL-2531] - Bluetooth: Use fallthrough pseudo-keyword (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Enable WBS support for wcn3991 (David Marlin) [RHEL-2531] - Bluetooth: L2CAP: Replace zero-length array with flexible-array (David Marlin) [RHEL-2531] - Bluetooth: Replace BT_DBG with bt_dev_dbg for security manager support (David Marlin) [RHEL-2531] - Bluetooth: Replace BT_DBG with bt_dev_dbg for management support (David Marlin) [RHEL-2531] - Bluetooth: Clear HCI_LL_RPA_RESOLUTION flag on reset (David Marlin) [RHEL-2531] - Bluetooth: Sort list of LE features constants (David Marlin) [RHEL-2531] - Bluetooth: Add HCI device identifier for VIRTIO devices (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for Qualcomm Bluetooth SoC QCA6390 (David Marlin) [RHEL-2531] - Bluetooth: Fixing a few comment typos in the quirk definitions. (David Marlin) [RHEL-2531] - Bluetooth: hci_qca: Add support for Qualcomm Bluetooth SoC WCN3991 (David Marlin) [RHEL-2531] - Bluetooth: btsdio: Use module_sdio_driver helper (David Marlin) [RHEL-2531] - mmc: sdio: Add helper macro for sdio_driver boilerplate (David Marlin) [RHEL-2531] - kasan: add compiler barriers to KUNIT_EXPECT_KASAN_FAIL (Nico Pache) [RHEL-5622] - redhat: add new tests (Nico Pache) [RHEL-5622] - redhat: disable kunit by default (Nico Pache) [RHEL-5622] - kasan: fix unit tests with CONFIG_UBSAN_LOCAL_BOUNDS enabled (Nico Pache) [RHEL-5622] - kasan: fix array-bounds warnings in tests (Nico Pache) [RHEL-5622] - kasan: test: Silence GCC 12 warnings (Nico Pache) [RHEL-5622] - tracepoint: Allow trace events in modules with TAINT_TEST (Nico Pache) [RHEL-5622] - kunit: Fix missed memory release in kunit_free_suite_set() (Nico Pache) [RHEL-5622] - kunit: fix kunit_test_init_section_suites(...) (Nico Pache) [RHEL-5622] - kunit: tool: print summary of failed tests if a few failed out of a lot (Nico Pache) [RHEL-5622] - kunit: alloc_string_stream_fragment error handling bug fix (Nico Pache) [RHEL-5622] - kunit: Fix wild-memory-access bug in kunit_free_suite_set() (Nico Pache) [RHEL-5622] - Documentation: kunit: Modular tests should not depend on KUNIT=y (Nico Pache) [RHEL-5622] - kunit: update NULL vs IS_ERR() tests (Nico Pache) [RHEL-5622] - Documentation: kunit: Update description of --alltests option (Nico Pache) [RHEL-5622] - kunit: declare kunit_assert structs as const (Nico Pache) [RHEL-5622] - kunit: rename base KUNIT_ASSERTION macro to _KUNIT_FAILED (Nico Pache) [RHEL-5622] - kunit: remove format func from struct kunit_assert, get it to 0 bytes (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree(NULL) a no-op to match kfree() (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree() not segfault on invalid inputs (Nico Pache) [RHEL-5622] - kunit: make kunit_kfree() only work on pointers from kunit_malloc() and friends (Nico Pache) [RHEL-5622] - kunit: drop test pointer in string_stream_fragment (Nico Pache) [RHEL-5622] - kunit: string-stream: Simplify resource use (Nico Pache) [RHEL-5622] - Documentation: Kunit: Use full path to .kunitconfig (Nico Pache) [RHEL-5622] - kunit: tool: rename all_test_uml.config, use it for --alltests (Nico Pache) [RHEL-5622] - kunit: tool: remove UML specific options from all_tests_uml.config (Nico Pache) [RHEL-5622] - lib: stackinit: update reference to kunit-tool (Nico Pache) [RHEL-5622] - Documentation: KUnit: update links in the index page (Nico Pache) [RHEL-5622] - Documentation: KUnit: add intro to the getting-started page (Nico Pache) [RHEL-5622] - Documentation: KUnit: Reword start guide for selecting tests (Nico Pache) [RHEL-5622] - Documentation: KUnit: add note about mrproper in start.rst (Nico Pache) [RHEL-5622] - Documentation: KUnit: avoid repeating "kunit.py run" in start.rst (Nico Pache) [RHEL-5622] - Documentation: KUnit: remove duplicated docs for kunit_tool (Nico Pache) [RHEL-5622] - Documentation: Kunit: Add ref for other kinds of tests (Nico Pache) [RHEL-5622] - Documentation: KUnit: Fix non-uml anchor (Nico Pache) [RHEL-5622] - Documentation: Kunit: Fix inconsistent titles (Nico Pache) [RHEL-5622] - Documentation: kunit: fix trivial typo (Nico Pache) [RHEL-5622] - kunit: no longer call module_info(test, "Y") for kunit modules (Nico Pache) [RHEL-5622] - kunit: add kunit.enable to enable/disable KUnit test (Nico Pache) [RHEL-5622] - kunit: tool: make --raw_output=kunit (aka --raw_output) preserve leading spaces (Nico Pache) [RHEL-5622] - module: kunit: Load .kunit_test_suites section when CONFIG_KUNIT=m (Nico Pache) [RHEL-5622] - MAINTAINERS: kunit: add David Gow as a maintainer of KUnit (Nico Pache) [RHEL-5622] - Documentation: KUnit: Fix example with compilation error (Nico Pache) [RHEL-5622] - Documentation: kunit: Add CLI args for kunit_tool (Nico Pache) [RHEL-5622] - kunit: flatten kunit_suite*** to kunit_suite** in .kunit_test_suites (Nico Pache) [RHEL-5622] - kunit: unify module and builtin suite definitions (Nico Pache) [RHEL-5622] - Documentation: kunit: fix example run_kunit func to allow spaces in args (Nico Pache) [RHEL-5622] - kunit: test.h: fix a kernel-doc markup (Nico Pache) [RHEL-5622] - kunit: tool: Enable virtio/PCI by default on UML (Nico Pache) [RHEL-5622] - kunit: tool: make --kunitconfig repeatable, blindly concat (Nico Pache) [RHEL-5622] - kunit: add coverage_uml.config to enable GCOV on UML (Nico Pache) [RHEL-5622] - kunit: tool: refactor internal kconfig handling, allow overriding (Nico Pache) [RHEL-5622] - kunit: tool: introduce --qemu_args (Nico Pache) [RHEL-5622] - kunit: tool: simplify creating LinuxSourceTreeOperations (Nico Pache) [RHEL-5622] - kunit: tool: cosmetic: don't specify duplicate kernel cmdline options (Nico Pache) [RHEL-5622] - kunit: tool: refactoring printing logic into kunit_printer.py (Nico Pache) [RHEL-5622] - kunit: tool: redo how we construct and mock LinuxSourceTree (Nico Pache) [RHEL-5622] - kunit: tool: drop unused load_config argument (Nico Pache) [RHEL-5622] - apparmor: test: Remove some casts which are no-longer required (Nico Pache) [RHEL-5622] - kunit: Taint the kernel when KUnit tests are run (Nico Pache) [RHEL-5622] - panic: Taint kernel if tests are run (Nico Pache) [RHEL-5622] - kunit: tool: Use qemu-system-i386 for i386 runs (Nico Pache) [RHEL-5622] - kunit: tool: update riscv QEMU config with new serial dependency (Nico Pache) [RHEL-5622] - kunit: tool: Add list of all valid test configs on UML (Nico Pache) [RHEL-5622] - kunit: take `kunit_assert` as `const` (Nico Pache) [RHEL-5622] - kunit: fix UAF when run kfence test case test_gfpzero (Nico Pache) [RHEL-5622] - lib: stackinit: Convert to KUnit (Nico Pache) [RHEL-5622] - lib/test_stackinit: Add assigned initializers (Nico Pache) [RHEL-5622] - lib/test_stackinit: Allow building stand-alone (Nico Pache) [RHEL-5622] - lib/test_stackinit: Fix static initializer test (Nico Pache) [RHEL-5622] - lib: test_stackinit.c: XFAIL switch variable init tests (Nico Pache) [RHEL-5622] - lib/test_stackinit: Handle Clang auto-initialization pattern (Nico Pache) [RHEL-5622] - lib: Introduce test_stackinit module (Nico Pache) [RHEL-5622] - kunit: cleanup assertion macro internal variables (Nico Pache) [RHEL-5622] - kunit: factor out str constants from binary assertion structs (Nico Pache) [RHEL-5622] - kunit: consolidate KUNIT_INIT_BINARY_ASSERT_STRUCT macros (Nico Pache) [RHEL-5622] - kunit: remove va_format from kunit_assert (Nico Pache) [RHEL-5622] - docs: dev-tools: kunit: don't use a table for docs name (Nico Pache) [RHEL-5622] - Documentation: dev-tools: Add Testing Overview (Nico Pache) [RHEL-5622]- perf vendor events: Update PMC used in PM_RUN_INST_CMPL event for power10 platform (Michael Petlan) [RHEL-16880] - gfs2: Fix another freeze/thaw hang (Andrew Price) [RHEL-5340] - tcp: enforce receive buffer memory limits by allowing the tcp window to shrink (Felix Maurer) [RHEL-15023] - cpufreq: amd-pstate: Update policy->cur in amd_pstate_adjust_perf() (Prarit Bhargava) [RHEL-10028] - driver/base/cpu: Retry online operation if -EBUSY (Waiman Long) [RHEL-5730] - net: openvswitch: reject negative ifindex (Antoine Tenart) [RHEL-14350] - sctp: annotate data-races around sk->sk_wmem_queued (Xin Long) [RHEL-14838] - sctp: fix potential deadlock on &net->sctp.addr_wq_lock (Xin Long) [RHEL-14838] - sctp: fix an error code in sctp_sf_eat_auth() (Xin Long) [RHEL-14838] - sctp: handle invalid error codes without calling BUG() (Xin Long) [RHEL-14838] - sctp: fix an issue that plpmtu can never go to complete state (Xin Long) [RHEL-14838] - sctp: add bpf_bypass_getsockopt proto callback (Xin Long) [RHEL-14838] - powerpc/pseries: Always inline functions called from cpuidle (Mark Langsdorf) [RHEL-4666] - cpuidle: pseries: Mark ->enter() functions as __cpuidle (Mark Langsdorf) [RHEL-4666] - cpuidle: move to use bus_get_dev_root() (Mark Langsdorf) [RHEL-4666] - cpuidle: driver: Update microsecond values of state parameters as needed (Mark Langsdorf) [RHEL-4666] - cpuidle: sysfs: make kobj_type structures constant (Mark Langsdorf) [RHEL-4666] - cpuidle: Fix poll_idle() noinstr annotation (Mark Langsdorf) [RHEL-4666] - cpuidle-haltpoll: Replace default_idle() with arch_cpu_idle() (Mark Langsdorf) [RHEL-4666] - cpuidle-haltpoll: select haltpoll governor (Mark Langsdorf) [RHEL-4666] - cpuidle: Annotate poll_idle() (Mark Langsdorf) [RHEL-4666] - powerpc/cpuidle: Set CPUIDLE_FLAG_POLLING for snooze state (Mark Langsdorf) [RHEL-4666] - cpuidle: Remove redundant check in cpuidle_switch_governor() (Mark Langsdorf) [RHEL-4666] - cpuidle: powernv: move from strlcpy() with unused retval to strscpy() (Mark Langsdorf) [RHEL-4666] - cpuidle: coupled: Drop duplicate word from a comment (Mark Langsdorf) [RHEL-4666] - KVM: s390: add tracepoint in gmap notifier (Cédric Le Goater) [RHEL-11434] - KVM: s390: add stat counter for shadow gmap events (Cédric Le Goater) [RHEL-11434] - KVM: s390: fix gisa destroy operation might lead to cpu stalls (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping keyless mode exits (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping userspace-emulated instructions (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping kernel-emulated instructions (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping into program interrupt handlers (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: Fix single-stepping into interrupt handlers (Cédric Le Goater) [RHEL-9581] - KVM: s390: fix sthyi error handling (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: fix index value of replaced ASCE (Cédric Le Goater) [RHEL-9581] - KVM: s390/diag: fix racy access of physical cpu number in diag 9c handler (Cédric Le Goater) [RHEL-9581] - KVM: s390: vsie: fix the length of APCB bitmap (Cédric Le Goater) [RHEL-9581] - KVM: s390: fix KVM_S390_GET_CMMA_BITS for GFNs in memslot holes (Cédric Le Goater) [RHEL-9581] - KVM: s390: pci: fix virtual-physical confusion on module unload/load (Cédric Le Goater) [RHEL-9581] - KVM: s390: interrupt: fix virtual-physical confusion for next alert GISA (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: fix external interruption loop not always detected (Cédric Le Goater) [RHEL-9581] - s390: vfio-ap: tighten the NIB validity check (Cédric Le Goater) [RHEL-9581] - KVM: s390: pv: leak the topmost page table when destroy fails (Cédric Le Goater) [RHEL-9581] - mbcache: Avoid nesting of cache->c_list_lock under bit locks (Carlos Maiolino) [RHEL-15010] - ext4: fix deadlock due to mbcache entry corruption (Carlos Maiolino) [RHEL-15010] - mbcache: automatically delete entries from cache on freeing (Carlos Maiolino) [RHEL-15010] - ext4: fix use-after-free read in ext4_find_extent for bigalloc + inline (Carlos Maiolino) [RHEL-15010] - ext4: fix another off-by-one fsmap error on 1k block filesystems (Carlos Maiolino) [RHEL-15010] - ext4: fix task hung in ext4_xattr_delete_inode (Carlos Maiolino) [RHEL-15010] - ext4: Fix function prototype mismatch for ext4_feat_ktype (Carlos Maiolino) [RHEL-15010] - ext4: avoid unaccounted block allocation when expanding inode (Carlos Maiolino) [RHEL-15010] - ext4: avoid BUG_ON when creating xattrs (Carlos Maiolino) [RHEL-15010] - ext4: fix delayed allocation bug in ext4_clu_mapped for bigalloc + inline (Carlos Maiolino) [RHEL-15010] - ext4: fix uninititialized value in 'ext4_evict_inode' (Carlos Maiolino) [RHEL-15010] - ext4: fix corruption when online resizing a 1K bigalloc fs (Carlos Maiolino) [RHEL-15010] - ext4: fix error code return to user-space in ext4_get_branch() (Carlos Maiolino) [RHEL-15010] - ext4: init quota for 'old.inode' in 'ext4_rename' (Carlos Maiolino) [RHEL-15010] - ext4: fix undefined behavior in bit shift for ext4_check_flag_values (Carlos Maiolino) [RHEL-15010] - ext4: fix bug_on in __es_tree_search caused by bad boot loader inode (Carlos Maiolino) [RHEL-15010] - ext4: add EXT4_IGET_BAD flag to prevent unexpected bad inode (Carlos Maiolino) [RHEL-15010] - ext4: add helper to check quota inums (Carlos Maiolino) [RHEL-15010] - ext4: fix bug_on in __es_tree_search caused by bad quota inode (Carlos Maiolino) [RHEL-15010] - ext4: silence the warning when evicting inode with dioread_nolock (Carlos Maiolino) [RHEL-15010] - ext4: fix use-after-free in ext4_ext_shift_extents (Carlos Maiolino) [RHEL-15010] - ext4: fix warning in 'ext4_da_release_space' (Carlos Maiolino) [RHEL-15010] - jbd2: wake up journal waiters in FIFO order, not LIFO (Carlos Maiolino) [RHEL-15010] - ext4: place buffer head allocation before handle start (Carlos Maiolino) [RHEL-15010] - ext4: fix check for block being out of directory size (Carlos Maiolino) [RHEL-15010] {CVE-2022-1184} - ext4: make ext4_lazyinit_thread freezable (Carlos Maiolino) [RHEL-15010] - ext4: fix null-ptr-deref in ext4_write_info (Carlos Maiolino) [RHEL-15010] - ext4: limit the number of retries after discarding preallocations blocks (Carlos Maiolino) [RHEL-15010] - ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0 (Carlos Maiolino) [RHEL-15010] - jbd2: fix assertion 'jh->b_frozen_data == NULL' failure when journal aborted (Carlos Maiolino) [RHEL-15010] - ext4: fix race when reusing xattr blocks (Carlos Maiolino) [RHEL-15010] - ext4: unindent codeblock in ext4_xattr_block_set() (Carlos Maiolino) [RHEL-15010] - ext4: remove EA inode entry from mbcache on inode eviction (Carlos Maiolino) [RHEL-15010] - ext4: use kmemdup() to replace kmalloc + memcpy (Carlos Maiolino) [RHEL-15010] - ext4: avoid remove directory when directory is corrupted (Carlos Maiolino) [RHEL-15010] - ext4: recover csum seed of tmp_inode after migrating to extents (Carlos Maiolino) [RHEL-15010] - mbcache: add functions to delete entry if unused (Carlos Maiolino) [RHEL-15010] - mbcache: don't reclaim used entries (Carlos Maiolino) [RHEL-15010] - redhat/configs: Disable AMD PMF driver (Prarit Bhargava) [RHEL-10011] - x86/amd_nb: Add PCI ID for family 19h model 78h (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: provide user message where s0ix is not supported (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Fix memory leak in amd_pmc_stb_debugfs_open_v2() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: Remove __maybe_unused from amd_pmc_suspend_handler() (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Move out of BIOS SMN pair for STB init (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Utilize SMN index 0 for driver probe (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Move idlemask check into `amd_pmc_idlemask_read` (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Don't dump data after resume from s0i3 on picasso (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Hide SMU version and program attributes for Picasso (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Don't try to read SMU version on Picasso (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: pmc: Convert to platform remove callback returning void (Prarit Bhargava) [RHEL-10011] - platform/x86: amd: hsmp: Convert to platform remove callback returning void (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: remove CONFIG_SUSPEND checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add line break for readability (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: differentiate STB/SMU messaging prints (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Write dummy postcode into the STB DRAM (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add num_samples message id support to STB (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: add CONFIG_SERIO dependency (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add a module parameter to disable workarounds (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Disable IRQ1 wakeup for RN/CZN (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: Fix refcount leak in amd_pmc_probe (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add new ACPI ID AMDI0009 (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Remove more CONFIG_DEBUG_FS checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Read SMU version during suspend on Cezanne systems (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: remove CONFIG_DEBUG_FS checks (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Fix build without debugfs (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add sysfs files for SMU (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Always write to the STB (Prarit Bhargava) [RHEL-10011] - platform/x86/amd: pmc: Add defines for STB events (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmf: Add support for PMF core layer (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmc: Add new platform support (Prarit Bhargava) [RHEL-10011] - platform/x86/amd/pmc: Add new acpi id for PMC controller (Prarit Bhargava) [RHEL-10011] - platform/x86: Move AMD platform drivers to separate directory (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Fix build error unused-function (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Shuffle location of amd_pmc_get_smu_version() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Avoid reading SMU version at probe time (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move FCH init to first use (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move SMU logging setup out of init (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Fix compilation without CONFIG_SUSPEND (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Only report STB errors when STB enabled (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Drop CPU QoS workaround (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Output error codes in messages (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Move to later in the suspend process (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Validate entry into the deepest state on resume (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: uninitialized variable in amd_pmc_s2d_init() (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Add support for AMD Spill to DRAM STB feature (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Correct usage of SMU version (Prarit Bhargava) [RHEL-10011] - platform/x86: amd-pmc: Make amd_pmc_stb_debugfs_fops static (Prarit Bhargava) [RHEL-10011] - scsi: qedf: Add synchronization between I/O completions and abort (Nilesh Javali) [RHEL-9861] - scsi: qedf: Remove unused declaration (Nilesh Javali) [RHEL-9861] - scsi: qedf: Fix firmware halt over suspend and resume (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Do not touch __user pointer in qedf_dbg_stop_io_on_error_cmd_read() directly (Nilesh Javali) [RHEL-9861] - scsi: qedf: Fix NULL dereference in error handling (Nilesh Javali) [RHEL-9861] - scsi: qedf: Remove unused 'num_handled' variable (Nilesh Javali) [RHEL-9861] - scsi: qla2xxx: Fix system crash due to bad pointer access (Nilesh Javali) [RHEL-9859] - qla2xxx: Fix double free of dsd_list during driver load. (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix NULL vs IS_ERR() bug for debugfs_create_dir() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Correct endianness for rqstlen and rsplen (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix unused variable warning in qla2xxx_process_purls_pkt() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix spelling mistake "tranport" -> "transport" (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused variables in qla24xx_build_scsi_type_6_iocbs() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix nvme_fc_rcv_ls_req() undefined error (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.09.100-k (Nilesh Javali) [RHEL-9859] - Revert "scsi: qla2xxx: Fix buffer overrun" (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix smatch warn for qla_init_iocb_limit() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unsupported ql2xenabledif option (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Error code did not return to upper layer (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add logs for SFP temperature monitoring (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix firmware resource tracking (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Flush mailbox commands on chip reset (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add Unsolicited LS Request and Response Support for NVMe (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Allow 32-byte CDBs (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Move resource to allow code reuse (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused declarations (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.500-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: fix inconsistent TMF timeout (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix TMF leak through (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Turn off noisy message log (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix session hang in gnl (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix erroneous link up failure (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix command flush during TMF (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Limit TMF to 8 per function (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Adjust IOCB resource on qpair create (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix deletion race condition (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix error code in qla2x00_start_sp() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Silence a static checker warning (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove unused nvme_ls_waitq wait queue (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.400-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Correct the index of array (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Pointer may be dereferenced (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix buffer overrun (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Check valid rport returned by fc_bsg_to_rport() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Avoid fcport pointer dereference (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix potential NULL pointer dereference (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Array index may go out of bound (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Drop useless LIST_HEAD (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Replace one-element array with DECLARE_FLEX_ARRAY() helper (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix end of loop test (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix NULL pointer dereference in target mode (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Replace all non-returning strlcpy() with strscpy() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Update version to 10.02.08.300-k (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Wait for io return on terminate rport (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix mem access after free (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix hang in task management (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix task management cmd fail due to unavailable resource (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix task management cmd failure (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Multi-que support for TMF (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Fix memory leak in qla2x00_probe_one() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Refer directly to the qla2xxx_driver_template (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Remove default fabric ops callouts (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Drop redundant pci_enable_pcie_error_reporting() (Nilesh Javali) [RHEL-9859] - scsi: qla2xxx: Add option to disable FC2 Target support (Nilesh Javali) [RHEL-9859]- cpupower: Fix cpuidle_set to accept only numeric values for idle-set operation. (Mamatha Inamdar) [RHEL-15215] - powerpc/vas: Limit open window failure messages in log bufffer (Mamatha Inamdar) [RHEL-14968] - udplite: Fix NULL pointer dereference in __sk_mem_raise_allocated(). (Paolo Abeni) [RHEL-14372] - vxlan: calculate correct header length for GPE (Petr Oros) [RHEL-14527] - af_unix: Fix null-ptr-deref in unix_stream_sendpage(). (Guillaume Nault) [RHEL-2574] {CVE-2023-4622} - netfilter: xt_u32: validate user space input (Phil Sutter) [RHEL-11729] {CVE-2023-39192} - netfilter: nf_log_syslog: Consolidate entry checks (Phil Sutter) [RHEL-6044] - netfilter: nf_log_syslog: Don't ignore unknown protocols (Phil Sutter) [RHEL-6044] - netfilter: nf_log_syslog: Merge MAC header dumpers (Phil Sutter) [RHEL-6044] - tipc: fix a potential deadlock on &tx->lock (Xin Long) [RHEL-14830] - tipc: stop tipc crypto on failure in tipc_node_create (Xin Long) [RHEL-14830] - tipc: check return value of pskb_trim() (Xin Long) [RHEL-14830] - net: tipc: resize nlattr array to correct size (Xin Long) [RHEL-14830] - scsi: target: core: Fix deadlock due to recursive locking (Maurizio Lombardi) [RHEL-15311] - scsi: target: Replace strlcpy() with strscpy() (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsi: Stop using sprintf() in iscsi_target_configfs.c (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsi: Fix buffer overflow in lio_target_nacl_info_show() (Maurizio Lombardi) [RHEL-15311] - scsi: target: Fix multiple LUN_RESET handling (Maurizio Lombardi) [RHEL-15311] - scsi: target: iscsit: Free cmds before session free (Maurizio Lombardi) [RHEL-15311] - net: xfrm: skip policies marked as dead while reinserting policies (Sabrina Dubroca) [RHEL-14518] - ip_vti: fix potential slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - ip6_vti: fix slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - xfrm: fix slab-use-after-free in decode_session6 (Sabrina Dubroca) [RHEL-14518] - net: ipv4: Use kfree_sensitive instead of kfree (Sabrina Dubroca) [RHEL-14518] - xfrm: Linearize the skb after offloading if needed. (Sabrina Dubroca) [RHEL-14518] - xfrm: fix inbound ipv4/udp/esp packets to UDPv6 dualstack sockets (Sabrina Dubroca) [RHEL-14518] - net: skb_queue_purge_reason() optimizations (Antoine Tenart) [RHEL-14568] - net: add skb_queue_purge_reason and __skb_queue_purge_reason (Antoine Tenart) [RHEL-14568] - tcp: add TCP_OLD_SEQUENCE drop reason (Antoine Tenart) [RHEL-14568] - net: move dropreason.h to dropreason-core.h (Antoine Tenart) [RHEL-14568] - net: fix kfree_skb_list use of skb_mark_not_on_list (Antoine Tenart) [RHEL-14568] - net: kfree_skb_list use kmem_cache_free_bulk (Antoine Tenart) [RHEL-14568] - bpf: Clarify error expectations from bpf_clone_redirect (Davide Caratti) [RHEL-15040] - veth: Fixing transmit return status for dropped packets (Davide Caratti) [RHEL-15040] - net: fib: avoid warn splat in flow dissector (Davide Caratti) [RHEL-15040] - net: af_key: fix sadb_x_filter validation (Davide Caratti) [RHEL-15040] - net: dcb: choose correct policy to parse DCB_ATTR_BCN (Davide Caratti) [RHEL-15040] - llc: Don't drop packet from non-root netns. (Davide Caratti) [RHEL-15040] - vlan: fix a potential uninit-value in vlan_dev_hard_start_xmit() (Davide Caratti) [RHEL-15040] - af_key: Reject optional tunnel/BEET mode templates in outbound policies (Davide Caratti) [RHEL-15040] - af_packet: Don't send zero-byte data in packet_sendmsg_spkt(). (Davide Caratti) [RHEL-15040] - ethtool: Fix uninitialized number of lanes (Davide Caratti) [RHEL-15040] - vlan: partially enable SIOCSHWTSTAMP in container (Davide Caratti) [RHEL-15040] - net/sched: act_ct: additional checks for outdated flows (Davide Caratti) [RHEL-14032] - netfilter: flowtable: GC pushes back packets to classic path (Davide Caratti) [RHEL-14032] - net: sched: sch_qfq: Use non-work-conserving warning handler (Davide Caratti) [RHEL-14032] - net: sched: sch_qfq: Fix UAF in qfq_dequeue() (Davide Caratti) [RHEL-14032] - net/sched: sch_hfsc: upgrade 'rt' to 'sc' when it becomes a inner curve (Davide Caratti) [RHEL-14032] - net/sched: sch_hfsc: Ensure inner classes have fsc curve (Davide Caratti) [RHEL-14032] - net/sched: fix a qdisc modification with ambiguous command request (Davide Caratti) [RHEL-14032] - net/sched: mqprio: Add length check for TCA_MQPRIO_{MAX/MIN}_RATE64 (Davide Caratti) [RHEL-14032] - net/sched: mqprio: add extack to mqprio_parse_nlattr() (Davide Caratti) [RHEL-14032] - net: sched: cls_flower: Undo tcf_bind_filter in case of an error (Davide Caratti) [RHEL-14032] - net: sched: cls_bpf: Undo tcf_bind_filter in case of an error (Davide Caratti) [RHEL-14032] - net: sched: cls_u32: Undo refcount decrement in case update failed (Davide Caratti) [RHEL-14032] - net: sched: cls_u32: Undo tcf_bind_filter if u32_replace_hw_knode (Davide Caratti) [RHEL-14032] - net: sched: cls_matchall: Undo tcf_bind_filter in case of failure after mall_set_parms (Davide Caratti) [RHEL-14032] - net/sched: flower: Ensure both minimum and maximum ports are specified (Davide Caratti) [RHEL-14032] - net/sched: act_pedit: Add size check for TCA_PEDIT_PARMS_EX (Davide Caratti) [RHEL-14032] - sch_netem: fix issues in netem_change() vs get_dist_table() (Davide Caratti) [RHEL-14032] - sch_netem: acquire qdisc lock in netem_change() (Davide Caratti) [RHEL-14032] - selftests: tc-testing: add one test for flushing explicitly created chain (Davide Caratti) [RHEL-14032] - net/sched: cls_api: Fix lockup on flushing explicitly created chain (Davide Caratti) [RHEL-14032] - net/sched: qdisc_destroy() old ingress and clsact Qdiscs before grafting (Davide Caratti) [RHEL-14032] - net/sched: Refactor qdisc_graft() for ingress and clsact Qdiscs (Davide Caratti) [RHEL-14032] - net/sched: act_ct: Fix promotion of offloaded unreplied tuple (Davide Caratti) [RHEL-14032] - net/sched: fq_pie: ensure reasonable TCA_FQ_PIE_QUANTUM values (Davide Caratti) [RHEL-14032] - net: sched: fix NULL pointer dereference in mq_attach (Davide Caratti) [RHEL-14032] - net/sched: act_mirred: Add carrier check (Davide Caratti) [RHEL-14032] - redhat/configs: delete ftdi-elan driver config (Desnes Nunes) [RHEL-13071] - redhat/configs: delete u132-hcd driver config (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: fix a NULL vs IS_ERR() check in probe (Desnes Nunes) [RHEL-13071] - usb: typec: Fix fast_role_swap_current show function (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: Fix command cancellation (Desnes Nunes) [RHEL-13071] - USB: serial: option: add Quectel EM061KGL series (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Fix broken polling mode after system suspend/resume (Desnes Nunes) [RHEL-13071] - usb: usbfs: Use consistent mmap functions (Desnes Nunes) [RHEL-13071] - usb: usbfs: Enforce page requirements for mmap (Desnes Nunes) [RHEL-13071] - thunderbolt: Do not touch CL state configuration during discovery (Desnes Nunes) [RHEL-13071] - thunderbolt: Increase DisplayPort Connection Manager handshake timeout (Desnes Nunes) [RHEL-13071] - thunderbolt: dma_test: Use correct value for absent rings when creating paths (Desnes Nunes) [RHEL-13071] - xhci: Fix incorrect tracking of free space on transfer rings (Desnes Nunes) [RHEL-13071] - xhci-pci: Only run d3cold avoidance quirk for s2idle (Desnes Nunes) [RHEL-13071] - usb-storage: fix deadlock when a scsi command timeouts more than once (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Fix fault at module removal (Desnes Nunes) [RHEL-13071] - usb: typec: altmodes/displayport: fix pin_assignment_show (Desnes Nunes) [RHEL-13071] - USB: UHCI: adjust zhaoxin UHCI controllers OverCurrent bit value (Desnes Nunes) [RHEL-13071] - PCI: Add ACS quirk for Zhaoxin Root/Downstream Ports (Desnes Nunes) [RHEL-13071] - PCI: Add ACS quirk for Zhaoxin multi-function devices (Desnes Nunes) [RHEL-13071] - PCI: Add Zhaoxin Vendor ID (Desnes Nunes) [RHEL-13071] - USB: usbtmc: Fix direction for 0-length ioctl control messages (Desnes Nunes) [RHEL-13071] - usb: usbtmc: Fix bug in pipe direction for control transfers (Desnes Nunes) [RHEL-13071] - media: pvrusb2: fix DVB_CORE dependency (Desnes Nunes) [RHEL-13071] - USB: sisusbvga: Add endpoint checks (Desnes Nunes) [RHEL-13071] - USB: core: Add routines for endpoint checks in old drivers (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: don't print PPM init deferred errors (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: fix multiple times discover svids error (Desnes Nunes) [RHEL-13071] - usb: xhci: plat: Add USB 3.0 phy support (Desnes Nunes) [RHEL-13071] - usb: host: xhci-plat: Use dev_is_pci() helper (Desnes Nunes) [RHEL-13071] - xhci: fix debugfs register accesses while suspended (Desnes Nunes) [RHEL-13071] - debugfs: regset32: Add Runtime PM support (Desnes Nunes) [RHEL-13071] - USB: serial: option: add UNISOC vendor and TOZED LT70C product (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix typos in comments (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix sparse warnings in tbnet_xmit_csum_and_map() (Desnes Nunes) [RHEL-13071] - net: thunderbolt: Fix sparse warnings in tbnet_check_frame() and tbnet_poll() (Desnes Nunes) [RHEL-13071] - media: mc-device: remove unnecessary __must_check (Desnes Nunes) [RHEL-13071] - media: au0828: remove unnecessary (void*) conversions (Desnes Nunes) [RHEL-13071] - USB: core: Fix docs warning caused by wireless_status feature (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: add quirk for ASUS Zenbook UM325 (Desnes Nunes) [RHEL-13071] - ACPI: OSL: Remove the helper for deactivating memory region (Desnes Nunes) [RHEL-13071] - ACPI: OSL: Clean up printing messages (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: acpi: Map the mailbox with memremap() (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: tps6598x: make interrupts optional (Desnes Nunes) [RHEL-13071] - dt-bindings: Explicitly allow additional properties in common schemas (Desnes Nunes) [RHEL-13071] - dt-bindings: connector: Convert Samsung 11-pin USB bindings to dtschema (Desnes Nunes) [RHEL-13071] - dt-bindings: Merge gpio-usb-b-connector with usb-connector (Desnes Nunes) [RHEL-13071] - dt-bindings: Clean-up schema indentation formatting (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: typec-tcpci: convert to DT schema format (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: try to get role switch from tcpc fwnode (Desnes Nunes) [RHEL-13071] - USB: core: Add API to change the wireless_status (Desnes Nunes) [RHEL-13071] - USB: core: Add wireless_status sysfs attribute (Desnes Nunes) [RHEL-13071] - ABI: sysfs-bus-usb: better document variable argument (Desnes Nunes) [RHEL-13071] - thunderbolt: Introduce usb4_port_sb_opcode_err_to_errno() helper (Desnes Nunes) [RHEL-13071] - media: pvrusb2: clean up unneeded complexity in pvrusb2 class logic (Desnes Nunes) [RHEL-13071] - usb: move config USB_USS720 to usb's misc Kconfig (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-nop-xceiv: add power-domains property (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-nop-xceiv: Convert to DT schema (Desnes Nunes) [RHEL-13071] - thunderbolt: Make use of SI units from units.h (Desnes Nunes) [RHEL-13071] - thunderbolt: Get rid of redundant 'else' (Desnes Nunes) [RHEL-13071] - thunderbolt: ACPI: Replace tb_acpi_find_port() with acpi_find_child_by_adr() (Desnes Nunes) [RHEL-13071] - usb: pci-quirks: Reduce the length of a spinlock section in usb_amd_find_chipset_info() (Desnes Nunes) [RHEL-13071] - xhci: use pm_ptr() instead of #ifdef for CONFIG_PM conditionals (Desnes Nunes) [RHEL-13071] - usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [RHEL-13071] - usb: typec: tps6598x: Add support for polling interrupts status (Desnes Nunes) [RHEL-13071] - usb: typec: ucsi: add PMIC Glink UCSI driver (Desnes Nunes) [RHEL-13071] - tracing: Acquire buffer from temparary trace sequence (Desnes Nunes) [RHEL-13071] - USB: serial: quatech2: remove unused qt2_setdevice function (Desnes Nunes) [RHEL-13071] - usb: typec: tipd: remove unused tps6598x_write16,32 functions (Desnes Nunes) [RHEL-13071] - usb: typec: tcpci_mt6360: remove unused mt6360_tcpc_read16 function (Desnes Nunes) [RHEL-13071] - usb: typec: tcpm: remove unnecessary (void*) conversions (Desnes Nunes) [RHEL-13071] - xhci: Move xhci MSI sync function to to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: Call MSI sync function from xhci-pci instead of generic xhci code (Desnes Nunes) [RHEL-13071] - xhci: Move functions to cleanup MSI to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: move PCI specific MSI/MSIX cleanup away from generic xhci functions (Desnes Nunes) [RHEL-13071] - xhci: Move functions to setup msi to xhci-pci (Desnes Nunes) [RHEL-13071] - xhci: Avoid PCI MSI/MSIX interrupt reinitialization at resume (Desnes Nunes) [RHEL-13071] - xhci: dbc: Provide sysfs option to configure dbc descriptors (Desnes Nunes) [RHEL-13071] - xhci: mem: Join string literals back (Desnes Nunes) [RHEL-13071] - xhci: mem: Replace explicit castings with appropriate specifiers (Desnes Nunes) [RHEL-13071] - xhci: mem: Use while (i--) pattern to clean up (Desnes Nunes) [RHEL-13071] - xhci: mem: Drop useless return:s (Desnes Nunes) [RHEL-13071] - xhci: mem: Get rid of redundant 'else' (Desnes Nunes) [RHEL-13071] - xhci: mem: Use dma_poll_zalloc() instead of explicit memset() (Desnes Nunes) [RHEL-13071] - xhci: mem: Carefully calculate size for memory allocations (Desnes Nunes) [RHEL-13071] - overflow: Provide constant expression struct_size (Desnes Nunes) [RHEL-13071] - test_overflow: Regularize test reporting output (Desnes Nunes) [RHEL-13071] - overflow: Implement size_t saturating arithmetic helpers (Desnes Nunes) [RHEL-13071] - test_overflow: Add shift overflow tests (Desnes Nunes) [RHEL-13071] - overflow.h: Add comment documenting __ab_c_size() (Desnes Nunes) [RHEL-13071] - docs: basics.rst: get rid of rcu kernel-doc macros (Desnes Nunes) [RHEL-13071] - docs: Do not seek comments in kernel/rcu/tree_plugin.h (Desnes Nunes) [RHEL-13071] - docs: deprecated.rst: Add zero-length and one-element arrays (Desnes Nunes) [RHEL-13071] - docs: Remove :c:func: from process/deprecated.rst (Desnes Nunes) [RHEL-13071] - docs: Introduce deprecated APIs list (Desnes Nunes) [RHEL-13071] - USB: misc: Remove unused include file usb_u132.h (Desnes Nunes) [RHEL-13071] - usb: ftdi-elan: Delete driver (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: Drop unneeded quotes (Desnes Nunes) [RHEL-13071] - usb: host: u132-hcd: Delete driver (Desnes Nunes) [RHEL-13071] - media: pvrusb2: VIDEO_PVRUSB2 depends on DVB_CORE to use dvb_* symbols (Desnes Nunes) [RHEL-13071] - usb: misc: usb3503: support usb3803 and bypass mode (Desnes Nunes) [RHEL-13071] - usb: misc: usb3503: refactor code to prepare for usb3803 addition (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: smsc,usb3503: Add usb3803 (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: Convert SMSC USB3503 binding to a schema (Desnes Nunes) [RHEL-13071] - usb: typec: fusb302: mark OF related data as maybe unused (Desnes Nunes) [RHEL-13071] - usb: typec: hd3ss3220: Drop of_match_ptr for ID table (Desnes Nunes) [RHEL-13071] - usb: typec: hd3ss3220: Convert to i2c's .probe_new() (Desnes Nunes) [RHEL-13071] - usb: acpi: Switch to use acpi_evaluate_dsm_typed() (Desnes Nunes) [RHEL-13071] - usb: Use of_property_read_bool() for boolean properties (Desnes Nunes) [RHEL-13071] - usb: host: Fix refcount leak in ehci_hcd_ppc_of_probe (Desnes Nunes) [RHEL-13071] - usb: usb251xb: Switch to use dev_err_probe() helper (Desnes Nunes) [RHEL-13071] - thunderbolt: Refactor DROM reading (Desnes Nunes) [RHEL-13071] - thunderbolt: use `tb_eeprom_get_drom_offset` to discover DROM offset (Desnes Nunes) [RHEL-13071] - usb: xhci: change some trace event __dynamic_array() to __get_buf() (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: allow evaluated properties in OHCI controllers (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-device: make "compatible" optional (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: hcd: correct usb-device path (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: fix yamllint check warning (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: usb-device: fix typo in required properties (Desnes Nunes) [RHEL-13071] - dt-bindings: usb: convert usb-device.txt to YAML schema (Desnes Nunes) [RHEL-13071] - dt-bindings: Fix SPI and I2C bus node names in examples (Desnes Nunes) [RHEL-13071] - dt-bindings: mfd: mediatek: Add bindings for MT6360 PMIC (Desnes Nunes) [RHEL-13071] - usb typec: mt6360: Add MT6360 Type-C DT binding documentation (Desnes Nunes) [RHEL-13071]- net: xfrm: Fix xfrm_address_filter OOB read (Wander Lairson Costa) [2227304] {CVE-2023-39194} - drm/qxl: fix UAF on handle creation (Wander Lairson Costa) [2218333] {CVE-2023-39198} - x86/sev: Make enc_dec_hypercall() accept a size instead of npages (Vitaly Kuznetsov) [RHEL-3656] - net: virtio_net_hdr_to_skb: count transport header in UFO (Cindy Lu) [RHEL-6030] - ice: reset first in crash dump kernels (Petr Oros) [2139761] - perf/core: Fix potential NULL deref (Wander Lairson Costa) [RHEL-14982] {CVE-2023-5717} - perf: Disallow mis-matched inherited group reads (Wander Lairson Costa) [RHEL-14982] {CVE-2023-5717} - scsi: mpt3sas: Drop redundant pci_enable_pcie_error_reporting() (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Fix in error path (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Fix loop logic (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Remove volatile qualifier (Tomas Henzl) [RHEL-8246] - scsi: mpt3sas: Perform additional retries if doorbell read returns 0 (Tomas Henzl) [RHEL-8246] - scsi: mpi3mr: Split off bus_reset function from host_reset (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Update driver version to 8.5.0.0.0 (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Enhance handling of devices removed after controller reset (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: WRITE SAME implementation (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Add support for more than 1MB I/O (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Update MPI Headers to version 3.00.28 (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Invoke soft reset upon TSU or event ack time out (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Propagate sense data for admin queue SCSI I/O (Tomas Henzl) [RHEL-8232] - scsi: mpi3mr: Fix the type used for pointers to bitmap (Tomas Henzl) [RHEL-8232] - regmap: Drop initial version of maximum transfer length fixes (Mark Langsdorf) [RHEL-1022] - regmap: Account for register length when chunking (Mark Langsdorf) [RHEL-1022] - driver core: update comments in device_rename() (Mark Langsdorf) [RHEL-1022] - cacheinfo: Add use_arch[|_cache]_info field/function (Mark Langsdorf) [RHEL-1022] - arch_topology: Remove early cacheinfo error message if -ENOENT (Mark Langsdorf) [RHEL-1022] - cacheinfo: Allow early level detection when DT/ACPI info is missing/broken (Mark Langsdorf) [RHEL-1022] - cacheinfo: Check sib_leaf in cache_leaves_are_shared() (Mark Langsdorf) [RHEL-1022] - cacheinfo: Add arch specific early level initializer (Mark Langsdorf) [RHEL-1022] - regmap: Factor out single value register syncing (Mark Langsdorf) [RHEL-1022] - regmap: Add RAM backed register map (Mark Langsdorf) [RHEL-1022] - regmap: Removed compressed cache support (Mark Langsdorf) [RHEL-1022] - base: soc: populate machine name in soc_device_register if empty (Mark Langsdorf) [RHEL-1022] - regmap: Clarify error for unknown cache types (Mark Langsdorf) [RHEL-1022] - regmap: Handle sparse caches in the default sync (Mark Langsdorf) [RHEL-1022] - regmap: add a helper to translate the register address (Mark Langsdorf) [RHEL-1022] - regmap: cache: Silence checkpatch warning (Mark Langsdorf) [RHEL-1022] - regmap: cache: Return error in cache sync operations for REGCACHE_NONE (Mark Langsdorf) [RHEL-1022] - devres: Pass unique name of the resource to devm_add_action() (Mark Langsdorf) [RHEL-1022] - device property: Clarify description of returned value in some functions (Mark Langsdorf) [RHEL-1022] - driver core: Make state_synced device attribute writeable (Mark Langsdorf) [RHEL-1022] - PM: domains: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [RHEL-1022] - PM: runtime: Do not call __rpm_callback() from rpm_idle() (Mark Langsdorf) [RHEL-1022] - kobject: kset_uevent_ops: make name() callback take a const * (Mark Langsdorf) [RHEL-1022] - kobject: kset_uevent_ops: make filter() callback take a const * (Mark Langsdorf) [RHEL-1022] - kobject: make get_ktype() take a const pointer (Mark Langsdorf) [RHEL-1022] - kobject: make kobject_get_ownership() take a constant kobject * (Mark Langsdorf) [RHEL-1022] - arm64: topology: move store_cpu_topology() to shared code (Mark Langsdorf) [RHEL-1022] - filemap: skip write and wait if end offset precedes start (Nico Pache) [RHEL-5620] - mm/mempolicy: clean up the code logic in queue_pages_pte_range (Nico Pache) [RHEL-5620] - mm:vmscan: fix inaccurate reclaim during proactive reclaim (Nico Pache) [RHEL-5620] - mm/page_alloc: don't wake kswapd from rmqueue() unless __GFP_KSWAPD_RECLAIM is specified (Nico Pache) [RHEL-5620] - writeback: fix call of incorrect macro (Nico Pache) [RHEL-5620] - mm/page_alloc: use write_seqlock_irqsave() instead write_seqlock() + local_irq_save(). (Nico Pache) [RHEL-5620] - mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock (Nico Pache) [RHEL-5620] - writeback, cgroup: fix null-ptr-deref write in bdi_split_work_to_wbs (Nico Pache) [RHEL-5620] - mm/khugepaged: check again on anon uffd-wp during isolation (Nico Pache) [RHEL-5620] - mm/swap: fix swap_info_struct race between swapoff and get_swap_pages() (Nico Pache) [RHEL-5620] - mm/fadvise: use LLONG_MAX instead of -1 for eof (Nico Pache) [RHEL-5620] - mm: Make failslab writable again (Nico Pache) [RHEL-5620] - mm: migrate: fix THP's mapcount on isolation (Nico Pache) [RHEL-5620] - mm/memremap.c: map FS_DAX device memory as decrypted (Nico Pache) [RHEL-5620] - mm/page_alloc: add missing is_migrate_isolate() check in set_page_guard() (Nico Pache) [RHEL-5620] - mm: pagewalk: Fix race between unmap and page walker (Nico Pache) [RHEL-5620] - mm/slub: add missing TID updates on slab deactivation (Nico Pache) [RHEL-5620] - hugetlb: fix huge_pmd_unshare address update (Nico Pache) [RHEL-5620] - fs-writeback: writeback_sb_inodes:Recalculate 'wrote' according skipped pages (Nico Pache) [RHEL-5620] - highmem: fix checks in __kmap_local_sched_{in,out} (Nico Pache) [RHEL-5620] - mm: fix race between MADV_FREE reclaim and blkdev direct IO read (Nico Pache) [RHEL-5620] - mm/thp: fix NR_FILE_MAPPED accounting in page_*_file_rmap() (Nico Pache) [RHEL-5620] - memblock: use kfree() to release kmalloced memblock regions (Nico Pache) [RHEL-5620] - mm/list_lru.c: prefer struct_size over open coded arithmetic (Nico Pache) [RHEL-5620] - mm/kmemleak: allow __GFP_NOLOCKDEP passed to kmemleak's gfp (Nico Pache) [RHEL-5620] - mm/hugetlb: initialize hugetlb_usage in mm_init (Nico Pache) [RHEL-5620] - mm: mempolicy: don't have to split pmd for huge zero page (Nico Pache) [RHEL-5620] - mm/thp: fix page_vma_mapped_walk() if THP mapped by ptes (Nico Pache) [RHEL-5620] - mm/thp: unmap_mapping_page() to fix THP truncate_cleanup_page() (Nico Pache) [RHEL-5620] - delayacct: clear right task's flag after blkio completes (Nico Pache) [RHEL-5620] - mm: remove lru_add_drain_all in alloc_contig_range (Nico Pache) [RHEL-5620] - mm: always have io_remap_pfn_range() set pgprot_decrypted() (Nico Pache) [RHEL-5620] - mm/page_alloc: fix documentation error (Nico Pache) [RHEL-5620] - s390/mm: mmap base does not depend on ADDR_NO_RANDOMIZE personality (Nico Pache) [RHEL-5620] - powerpc/mm: Fix "sz" set but not used warning (Nico Pache) [RHEL-5620] - powerpc/mm/hash: Handle mmap_min_addr correctly in get_unmapped_area topdown search (Nico Pache) [RHEL-5620] - mm: ksm: do not block on page lock when searching stable tree (Nico Pache) [RHEL-5620] - powerpc/hugetlbpage: Rmove unhelpful HUGEPD_*_SHIFT macros (Nico Pache) [RHEL-5620] - arm64: mm: Export __sync_icache_dcache() for xen-privcmd (Nico Pache) [RHEL-5620]- pNFS/filelayout: treat GETDEVICEINFO errors as layout failure (Scott Mayhew) [RHEL-4969] - mm/kmemleak: move up cond_resched() call in page scanning loop (Waiman Long) [RHEL-8630] - net/sched: cls_rsvp: always try to match inside the linear part of skb (Davide Caratti) [RHEL-11730] {CVE-2023-42755} - vc_screen: don't clobber return value in vcs_read (Ricardo Robaina) [2221467] {CVE-2023-3567} - vc_screen: move load of struct vc_data pointer in vcs_read() to avoid UAF (Ricardo Robaina) [2221467] {CVE-2023-3567} - vt_kdsetmode: extend console locking (John W. Linville) [RHEL-3016] {CVE-2021-3753} - console: consume APC, DM, DCS (John W. Linville) [RHEL-3016] {CVE-2021-3753} - vt_ioctl: move vt_kdsetmode out of vt_k_ioctl (John W. Linville) [RHEL-3016] {CVE-2021-3753} - scsi: core: Fix legacy /proc parsing buffer overflow (Ewan D. Milne) [RHEL-14311] - scsi: core: Improve scsi_vpd_inquiry() checks (Ewan D. Milne) [RHEL-14311] - scsi: core: Fix a procfs host directory removal regression (Ewan D. Milne) [RHEL-14311] - scsi: core: Remove the /proc/scsi/${proc_name} directory earlier (Ewan D. Milne) [RHEL-14311] - ibmvnic: Assign XPS map to correct queue index (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Toggle between queue types in affinity mapping (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Update XPS assignments during affinity binding (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Add hotpluggable CPU callbacks to reassign affinity hints (Mukesh Chaurasiya) [RHEL-11210] - ibmvnic: Assign IRQ affinity hints to device queues (Mukesh Chaurasiya) [RHEL-11210] - mm/slub: fix a slab missed to be freed problem (Rafael Aquini) [RHEL-9526] - mm/slub: simplify __cmpxchg_double_slab() and slab_[un]lock() (Rafael Aquini) [RHEL-9526] - mm/slub: convert object_map_lock to non-raw spinlock (Rafael Aquini) [RHEL-9526] - mm/slub: remove slab_lock() usage for debug operations (Rafael Aquini) [RHEL-9526] - mm/slub: restrict sysfs validation to debug caches and make it safe (Rafael Aquini) [RHEL-9526] - mm/slub: move free_debug_processing() further (Rafael Aquini) [RHEL-9526] - mm/slub: remove unneeded return value of slab_pad_check (Rafael Aquini) [RHEL-9526] - s390/qdio: fix do_sqbs() inline assembly constraint (Tobias Huschle) [RHEL-11194] - s390/lcs: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [RHEL-11194] - s390/lcs: Convert sprintf to scnprintf (Tobias Huschle) [RHEL-11194] - s390/ctcm: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [RHEL-11194] - s390/ctcm: Convert sprintf/snprintf to scnprintf (Tobias Huschle) [RHEL-11194] - s390/qeth: Fix vipa deletion (Tobias Huschle) [RHEL-11194] - s390/lcs: Remove FDDI option (Tobias Huschle) [RHEL-11194] - net/ism: Remove redundant pci_clear_master (Tobias Huschle) [RHEL-11198] - net/smc: Fix dependency of SMC on ISM (Tobias Huschle) [RHEL-11198] - s390/ism: Do not unregister clients with registered DMBs (Tobias Huschle) [RHEL-11198] - s390/ism: Fix and simplify add()/remove() callback handling (Tobias Huschle) [RHEL-11198] - s390/ism: Fix locking for forwarding of IRQs and events to clients (Tobias Huschle) [RHEL-11198] - s390/ism: Fix trying to free already-freed IRQ by repeated ism_dev_exit() (Tobias Huschle) [RHEL-11198] - s390/ism: Set DMA coherent mask (Tobias Huschle) [RHEL-11198] - net/ism: Remove extra include (Tobias Huschle) [RHEL-11198] - net/smc: Introduce explicit check for v2 support (Tobias Huschle) [RHEL-11198] - dm: fix a race condition in retrieve_deps (Benjamin Marzinski) [RHEL-13917] - dm raid: protect md_stop() with 'reconfig_mutex' (Benjamin Marzinski) [RHEL-13917] - dm raid: clean up four equivalent goto tags in raid_ctr() (Benjamin Marzinski) [RHEL-13917] - dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths (Benjamin Marzinski) [RHEL-13917] - dm integrity: fix double free on memory allocation failure (Benjamin Marzinski) [RHEL-13917] - dm integrity: scale down the recalculate buffer if memory allocation fails (Benjamin Marzinski) [RHEL-13917] - dm integrity: only allocate recalculate buffer when needed (Benjamin Marzinski) [RHEL-13917] - dm integrity: reduce vmalloc space footprint on 32-bit architectures (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Refuse to create device named "." or ".." (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Refuse to create device named "control" (Benjamin Marzinski) [RHEL-13917] - dm ioctl: structs and parameter strings must not overlap (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Avoid pointer arithmetic overflow (Benjamin Marzinski) [RHEL-13917] - dm ioctl: Check dm_target_spec is sufficiently aligned (Benjamin Marzinski) [RHEL-13917] - dm thin: disable discards for thin-pool if no_discard_passdown (Benjamin Marzinski) [RHEL-13917] - dm thin metadata: Fix ABBA deadlock by resetting dm_bufio_client (Benjamin Marzinski) [RHEL-13917] - dm crypt: fix crypt_ctr_cipher_new return value on invalid AEAD cipher (Benjamin Marzinski) [RHEL-13917] - dm thin: update .io_hints methods to not require handling discards last (Benjamin Marzinski) [RHEL-13917] - dm thin: remove return code variable in pool_map (Benjamin Marzinski) [RHEL-13917]- cifs: Fix UAF in cifs_demultiplex_thread() (Scott Mayhew) [RHEL-7930 RHEL-9046] {CVE-2023-1192} - x86/platform/uv: Use alternate source for socket to node data (Frank Ramsay) [RHEL-13360] - media: technisat-usb2: break out of loop at end of buffer (Desnes Nunes) [RHEL-3013 RHEL-3895] {CVE-2019-15505} - can: af_can: fix NULL pointer dereference in can_rcv_filter (Ricardo Robaina) [RHEL-6429 RHEL-7053] {CVE-2023-2166} - PCI/portdrv: Prevent LS7A Bus Master clearing on shutdown (Myron Stowe) [RHEL-5147] - kernel/fork: beware of __put_task_struct() calling context (Wander Lairson Costa) [RHEL-14767] - KVM: x86/mmu: Fix an sign-extension bug with mmu_seq that hangs vCPUs (Peter Xu) [RHEL-7210] - net: tun: fix bugs for oversize packet when napi frags enabled (Ricardo Robaina) [RHEL-7185 RHEL-7267] {CVE-2023-3812} - Bluetooth: hci_ldisc: check HCI_UART_PROTO_READY flag in HCIUARTGETPROTO (Jose Ignacio Tornos Martinez) [RHEL-6357] {CVE-2023-31083} - RDMA/qedr: clean up work queue on failure in qedr_alloc_resources() (Kamal Heib) [RHEL-10313 RHEL-11030] - RDMA/qedr: fix repeated words in comments (Kamal Heib) [RHEL-10313 RHEL-11030] - x86/sev: Check for user-space IOIO pointing to kernel space (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev: Check IOBM for IOIO exceptions from user-space (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev: Disable MMIO emulation from user mode (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - x86/sev-es: Fix SEV-ES OUT/IN immediate opcode vc handling (Wander Lairson Costa) [RHEL-14978] {CVE-2023-46813} - USB: core: Fix oversight in SuperSpeed initialization (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Fix race by not overwriting udev->descriptor in hub_port_init() (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Change usb_get_device_descriptor() API (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - USB: core: Unite old scheme and new scheme descriptor reads (Desnes Nunes) [RHEL-2569 RHEL-2675] {CVE-2023-37453} - bonding: do not assume skb mac_header is set (Hangbin Liu) [RHEL-13959] - bonding: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves (Hangbin Liu) [RHEL-13959] - bonding: support balance-alb with openvswitch (Hangbin Liu) [RHEL-13959] - bonding: reset bond's flags when down link is P2P device (Hangbin Liu) [RHEL-13959] - net: fix stack overflow when LRO is disabled for virtual interfaces (Hangbin Liu) [RHEL-13959] - Documentation: bonding: fix the doc of peer_notif_delay (Hangbin Liu) [RHEL-13959] - bonding: fix send_peer_notif overflow (Hangbin Liu) [RHEL-13959] - bonding: Fix memory leak when changing bond type to Ethernet (Hangbin Liu) [RHEL-13959] - bonding: restore bond's IFF_SLAVE flag if a non-eth dev enslave fails (Hangbin Liu) [RHEL-13959] - bonding: restore IFF_MASTER/SLAVE flags on bond enslave ether type change (Hangbin Liu) [RHEL-13959] - drivers/net/bonding/bond_3ad: return when there's no aggregator (Hangbin Liu) [RHEL-13959] - KVM: s390: pv: Allow AP-instructions for pv-guests (Thomas Huth) [2111392] - KVM: s390: Add UV feature negotiation (Thomas Huth) [2111392] - s390/uv: UV feature check utility (Thomas Huth) [2111392] - s390/vfio-ap: make sure nib is shared (Thomas Huth) [2111392] - KVM: s390: export kvm_s390_pv*_is_protected functions (Thomas Huth) [2111392] - s390/uv: export uv_pin_shared for direct usage (Thomas Huth) [2111392] - s390/vfio-ap: check for TAPQ response codes 0x35 and 0x36 (Thomas Huth) [2111392] - s390/vfio-ap: handle queue state change in progress on reset (Thomas Huth) [2111392] - s390/vfio-ap: use work struct to verify queue reset (Thomas Huth) [2111392] - s390/vfio-ap: store entire AP queue status word with the queue object (Thomas Huth) [2111392] - s390/vfio-ap: remove upper limit on wait for queue reset to complete (Thomas Huth) [2111392] - s390/vfio-ap: allow deconfigured queue to be passed through to a guest (Thomas Huth) [2111392] - s390/vfio-ap: wait for response code 05 to clear on queue reset (Thomas Huth) [2111392] - s390/vfio-ap: clean up irq resources if possible (Thomas Huth) [2111392] - s390/vfio-ap: no need to check the 'E' and 'I' bits in APQSW after TAPQ (Thomas Huth) [2111392] - s390/vfio-ap: fix memory leak in vfio_ap device driver (Thomas Huth) [2111392] - s390/vfio-ap: remove redundant driver match function (Thomas Huth) [2111392] - s390/vfio_ap: increase max wait time for reset verification (Thomas Huth) [2111392] - s390/vfio_ap: fix handling of error response codes (Thomas Huth) [2111392] - s390/vfio_ap: verify ZAPQ completion after return of response code zero (Thomas Huth) [2111392] - s390/vfio_ap: use TAPQ to verify reset in progress completes (Thomas Huth) [2111392] - s390/vfio_ap: check TAPQ response code when waiting for queue reset (Thomas Huth) [2111392] - s390/vfio-ap: verify reset complete in separate function (Thomas Huth) [2111392] - s390/vfio-ap: fix an error handling path in vfio_ap_mdev_probe_queue() (Thomas Huth) [2111392] - s390/vfio-ap: add s390dbf logging to the vfio_ap_irq_enable function (Thomas Huth) [2111392] - s390-vfio-ap: introduces s390 kernel debug feature for vfio_ap device driver (Thomas Huth) [2111392]- netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c (Florian Westphal) [RHEL-8444] {CVE-2023-42753} - cxgb4: fix use after free bugs caused by circular dependency problem (Ricardo Robaina) [RHEL-6261 RHEL-7058] {CVE-2023-4133} - ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1 (Florian Westphal) [RHEL-5742] - bpf: Fix incorrect verifier pruning due to missing register precision taints (Artem Savkov) [RHEL-7534 RHEL-7535] {CVE-2023-2163} - mm/memcontrol.c: remove the redundant updating of stats_flush_threshold (Waiman Long) [2238379] - virtio_balloon: Fix endless deflation and inflation on arm64 (Gavin Shan) [RHEL-1672] - i40e: Fix VF VLAN offloading when port VLAN is configured (Ivan Vecera) [RHEL-6384] - libfs: take cursors out of list when moving past the end of directory (Jeffrey Layton) [RHEL-15148] - net/core: Fix ETH_P_1588 flow dissector (Paolo Abeni) [RHEL-14379] - skbuff: skb_segment, Call zero copy functions before using skbuff frags (Paolo Abeni) [RHEL-14379] - net: prevent skb corruption on frag list segmentation (Paolo Abeni) [RHEL-14379] - udp6: Fix race condition in udp6_sendmsg & connect (Paolo Abeni) [RHEL-14379] - scsi: megaraid_sas: Driver version update to 07.727.03.00-rc1 (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Log message when controller reset is requested but not issued (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Increase register read retry rount from 3 to 30 for selected registers (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Fix deadlock on firmware crashdump (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Use pci_dev_id() to simplify the code (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Convert union megasas_sgl to flex-arrays (Tomas Henzl) [RHEL-8244] - scsi: smartpqi: Change driver version to 2.1.24-046 (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance error messages (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance controller offline notification (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance shutdown notification (Don Brace) [RHEL-1728] - scsi: smartpqi: Simplify lun_number assignment (Don Brace) [RHEL-1728] - scsi: smartpqi: Rename pciinfo to pci_info (Don Brace) [RHEL-1728] - scsi: smartpqi: Rename MACRO to clarify purpose (Don Brace) [RHEL-1728] - scsi: smartpqi: Add abort handler (Don Brace) [RHEL-1728] - x86/sgx: mark as supported (Vladis Dronov) [2041881] - x86/sgx: Resolves SECS reclaim vs. page fault for EAUG race (Vladis Dronov) [2041881] - x86/sgx: Break up long non-preemptible delays in sgx_vepc_release() (Vladis Dronov) [2041881] - Documentation: Fix typos (only the SGX part) (Vladis Dronov) [2041881] - x86/sgx: Avoid using iterator after loop in sgx_mmu_notifier_release() (Vladis Dronov) [2041881] - selftests/sgx: Add "test_encl.elf" to TEST_FILES (Vladis Dronov) [2041881] - convert sgx_set_attribute() to fdget()/fdput() (Vladis Dronov) [2041881] - x86/sgx: use VM_ACCESS_FLAGS (Vladis Dronov) [2041881] - x86/sgx: Replace kmap/kunmap_atomic() calls (Vladis Dronov) [2041881] - x86/sgx: Allow enclaves to use Asynchrounous Exit Notification (Vladis Dronov) [2041881] - x86/sgx: Reduce delay and interference of enclave release (Vladis Dronov) [2041881] - x86/vdso: Conditionally export __vdso_sgx_enter_enclave() (Vladis Dronov) [2041881] - x86/sgx: Add overflow check in sgx_validate_offset_length() (Vladis Dronov) [2041881]- team: fix null-ptr-deref when team device type is changed (Hangbin Liu) [RHEL-13961] - team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves (Hangbin Liu) [RHEL-13961] - team: reset team's flags when down link is P2P device (Hangbin Liu) [RHEL-13961] - teaming: deliver link-local packets with the link they arrive on (Hangbin Liu) [RHEL-13961] - kernfs: change kernfs_rename_lock into a read-write lock. (Ian Kent) [RHEL-11484] - kernfs: Separate kernfs_pr_cont_buf and rename_lock. (Ian Kent) [RHEL-11484] - kernfs: fix missing kernfs_iattr_rwsem locking (Ian Kent) [RHEL-11484] - kernfs: Use a per-fs rwsem to protect per-fs list of kernfs_super_info (Ian Kent) [RHEL-11484] - kernfs: Introduce separate rwsem to protect inode attributes (Ian Kent) [RHEL-11484] - kernfs: move struct kernfs_root out of the public view. (Ian Kent) [RHEL-11484] - iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: Fix potential null-ptr-deref in pass_establish() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: add null-ptr-check after ip_dev_find() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: Replace 0-length arrays with flexible arrays (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: remove unnecessary NULL check in __c4iw_poll_cq_one() (Kamal Heib) [RHEL-1734] - block: check_events: don't bother with events if unsupported (Ming Lei) [RHEL-2407] - Revert "block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers" (Ming Lei) [RHEL-2407] - Revert "ide: unexport DISK_EVENT_MEDIA_CHANGE for ide-gd and ide-cd" (Ming Lei) [RHEL-2407] - block: disk_events: introduce event flags (Ming Lei) [RHEL-2407] - block: genhd: remove async_events field (Ming Lei) [RHEL-2407] - ibmvnic: Ensure login failure recovery is safe from other resets (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Do partial reset on login failure (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Handle DMA unmapping of login buffs in release functions (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Unmap DMA login rsp buffer on send login fail (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Enforce stronger sanity checks on login response (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Free rwi on reset success (Mamatha Inamdar) [RHEL-11211] - selftests: tls: swap the TX and RX sockets in some tests (Hangbin Liu) [RHEL-13962] - selftests: mirror_gre_changes: Tighten up the TTL test match (Hangbin Liu) [RHEL-13962] - selftests: forwarding: tc_tunnel_key: Make filters more specific (Hangbin Liu) [RHEL-13962] - selftests: forwarding: tc_flower: Relax success criterion (Hangbin Liu) [RHEL-13962] - selftests: forwarding: ethtool_extended_state: Skip when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: ethtool: Skip when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Add a helper to skip test when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Set default IPv6 traceroute utility (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Switch off timeout (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Skip test when no interfaces are specified (Hangbin Liu) [RHEL-13962] - selftests: rtnetlink: remove netdevsim device after ipsec offload test (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Fix race condition in mirror installation (Hangbin Liu) [RHEL-13962] - selftests: fib_tests: mute cleanup error message (Hangbin Liu) [RHEL-13962] - sched/topology: Align group flags when removing degenerate domain (Phil Auld) [RHEL-2524] - sched/fair: Use recent_used_cpu to test p->cpus_ptr (Phil Auld) [RHEL-2524] - sched/core: Avoid double calling update_rq_clock() in __balance_push_cpu_stop() (Phil Auld) [RHEL-2524] - sched/core: Fixed missing rq clock update before calling set_rq_offline() (Phil Auld) [RHEL-2524] - sched/topology: Mark set_sched_topology() __init (Phil Auld) [RHEL-2524] - sched/wait: Fix a kthread_park race with wait_woken() (Phil Auld) [RHEL-2524] - sched: Add schedule_user() declaration (Phil Auld) [RHEL-2524] - sched/topology: Propagate SMT flags when removing degenerate domain (Phil Auld) [RHEL-2524] - sched_getaffinity: don't assume 'cpumask_size()' is fully initialized (Phil Auld) [RHEL-2524] - sched/topology: Make sched_energy_mutex,update static (Phil Auld) [RHEL-2524] - sched/fair: Fix inaccurate tally of ttwu_move_affine (Phil Auld) [RHEL-2524] - sched/fair: Revise comment about lb decision matrix (Phil Auld) [RHEL-2524] - sched/topology: Remove unused numa_distance in cpu_attach_domain() (Phil Auld) [RHEL-2524] - perf vendor events: Update metric events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update metric event names for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update JSON/events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Move JSON/events to appropriate files for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Drop STORES_PER_INST metric event for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Drop some of the JSON/events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update the JSON/events descriptions for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events power10: Add JSON metric events to present CPI stall cycles in powerpc (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_partition sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via partition information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_domain sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via domain information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_virtual_processor sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via virtual processor information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document processor_config sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show processor config information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document processor_bus_topology sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show processor bus topology information (Mamatha Inamdar) [RHEL-11205] - KVM: x86: Add SBPB support (Waiman Long) [RHEL-11272 RHEL-9298] - KVM: x86: Add IBPB_BRTYPE support (Waiman Long) [RHEL-11272 RHEL-9298] - x86/retpoline: Document some thunk handling aspects (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Remove unnecessary semicolon (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/rethunk: Use SYM_CODE_START[_LOCAL]_NOALIGN macros (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Disentangle rethunk-dependent options (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Move retbleed IBPB check into existing 'has_microcode' code block (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/bugs: Remove default case for fully switched enums (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Remove 'pred_cmd' label (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Unexport untraining functions (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Improve i-cache locality for alias mitigation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix vulnerability reporting for missing microcode (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Print mitigation for retbleed IBPB case (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Print actual mitigation if requested mitigation isn't possible (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix SBPB enablement for (possible) future fixed HW (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternatives: Remove faulty optimization (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix SBPB enablement for spec_rstack_overflow=off (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Don't probe microcode in a guest (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Set CPUID feature bits independently of bug or mitigation status (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix srso_show_state() side effect (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix amd_check_microcode() declaration (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Remove amd_get_topology_early() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Correct the mitigation status when SMT is disabled (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Explain the untraining sequences a bit more (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu/kvm: Provide UNTRAIN_RET_VM (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Cleanup the untrain mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Rename srso_(.*)_alias to srso_alias_\1 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Rename original retbleed methods (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Clean up SRSO return thunk mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternative: Make custom return thunk unconditional (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - objtool/x86: Fix SRSO mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix up srso_safe_ret() and __x86_return_thunk() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix __x86_return_thunk symbol type (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retpoline,kprobes: Fix position of thunk sections with CONFIG_LTO_CLANG (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Disable the mitigation on unaffected configurations (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Fix the DIV(0) initial fix attempt (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20588} - x86/retpoline: Don't clobber RFLAGS during srso_safe_ret() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu/amd: Enable Zenbleed fix for AMD Custom APU 0405 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20593} - driver core: cpu: Fix the fallback cpu_show_gds() name (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86: Move gds_ucode_mitigated() declaration to header (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/speculation: Add cpu_show_gds() prototype (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - driver core: cpu: Make cpu_show_not_affected() static (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix build breakage with the LLVM linker (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - Documentation/srso: Document IBPB aspect and fix formatting (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - driver core: cpu: Unify redundant silly stubs (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Do not leak quotient data after a division by 0 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20588} - x86/srso: Tie SBPB bit setting to microcode patch detection (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add a forgotten NOENDBR annotation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix return thunks in generated code (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB on VMEXIT (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add SRSO_NO support (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB_BRTYPE support (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add a Speculative RAS Overflow mitigation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retbleed: Add __x86_return_thunk alignment checks (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retbleed: Fix return thunk alignment (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternative: Optimize returns patching (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/microcode/AMD: Load late on both threads too (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/returnthunk: Allow different return thunks (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86: Sanitize linker script (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - objtool: Fix .return_sites generation (Waiman Long) [RHEL-11272 RHEL-9298]- kernel/rh_messages.c: move hardware tables to rh_messages.h (Scott Weaver) [2181912] - kernel/rh_messages.c: Wire up new calls (Prarit Bhargava) [2181912] - drivers/pci: Update rh_messages.c (Prarit Bhargava) [2181912] - treewide: Remove mark_driver_deprecated() (Prarit Bhargava) [2181912] - treewide: Remove mark_hardware_deprecated() (Prarit Bhargava) [2181912] - treewide: Remove mark_driver_unmaintained() (Prarit Bhargava) [2181912] - drivers/pci: Remove RHEL-only pci_hw_*() functions (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_disabled() calls (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_deprecated() calls (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_unmaintained() calls (Prarit Bhargava) [2181912] - redhat: fix bug/zjira sort in the changelog (Patrick Talbert) - blk-mq: enforce op-specific segment limits in blk_insert_cloned_request (Ming Lei) [RHEL-14504] - tunnels: fix kasan splat when generating ipv4 pmtu error (Guillaume Nault) [RHEL-14377] - net:ipv6: check return value of pskb_trim() (Guillaume Nault) [RHEL-14377] - sit: update dev->needed_headroom in ipip6_tunnel_bind_dev() (Guillaume Nault) [RHEL-14377] - ipv4: fix null-deref in ipv4_link_failure (Felix Maurer) [RHEL-5427] {CVE-2023-42754} - powerpc/perf/hv-24x7: Update domain value check (Michael Petlan) [RHEL-13718] - vxlan: Expose helper vxlan_build_gbp_hdr (Izabela Bakollari) [RHEL-12413] - vxlan: Remove unused argument from vxlan_build_gbp_hdr( ) and vxlan_build_gpe_hdr( ) (Izabela Bakollari) [RHEL-12413] - net: ipv4: fix one memleak in __inet_del_ifa() (Guillaume Nault) [RHEL-14375] - ipv4: Fix potential uninit variable access bug in __ip_make_skb() (Guillaume Nault) [RHEL-14375] - icmp: guard against too small mtu (Guillaume Nault) [RHEL-14375] - ipv6: ping: fix wrong checksum for large frames (Guillaume Nault) [RHEL-14375] - net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr (Hangbin Liu) [RHEL-13954] - ip6mr: Fix skb_under_panic in ip6mr_cache_report() (Hangbin Liu) [RHEL-13954] - ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new temporary address (Hangbin Liu) [RHEL-13954] - ipv6/addrconf: fix a potential refcount underflow for idev (Hangbin Liu) [RHEL-13954] - icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev(). (Hangbin Liu) [RHEL-13954] - ping6: Fix send to link-local addresses with VRF. (Hangbin Liu) [RHEL-13954] - ipv6: Fix out-of-bounds access in ipv6_find_tlv() (Hangbin Liu) [RHEL-13954]- redhat: remove kabi-rhel810 directory (Prarit Bhargava) - redhat: Update .gitignore for 8.10 kabi files (Prarit Bhargava) - nvmet-tcp: Fix a possible UAF in queue intialization setup (John Meneghini) [RHEL-11509 RHEL-11527] {CVE-2023-5178} - sctp: update hb timer immediately after users change hb_interval (Xin Long) [RHEL-6045] - s390/zcrypt_ep11misc: support API ordinal 6 with empty pin-blob (Tobias Huschle) [RHEL-11200] - net: openvswitch: add support for l4 symmetric hashing (Antoine Tenart) [RHEL-10498] - igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU (Hangbin Liu) [RHEL-10475 RHEL-10477] {CVE-2023-42752} - ip_tunnel: Preserve pointer const in ip_tunnel_info_opts (Ivan Vecera) [RHEL-12418] - tracing: Fix race in perf_trace_buf initialization (Michael Petlan) [RHEL-8648] - Input: gtco - bounds check collection indent level (Desnes Nunes) [RHEL-3014 RHEL-3892] {CVE-2019-13631} - x86/microcode/AMD: Rip out static buffers (Prarit Bhargava) [2225261] - perf/x86/amd: Do not WARN() on every IRQ (Michael Petlan) [RHEL-12340] - netfilter: conntrack: Fix gre tunneling over ipv6 (Florian Westphal) [RHEL-12497] - netfilter: handle the connecting collision properly in nf_conntrack_proto_sctp (Xin Long) [RHEL-6157] - sctp: update transport state when processing a dupcook packet (Xin Long) [RHEL-6157]- trace: Add trace_ipi_send_cpu() (Jerome Marchand) [2192614] - sched, smp: Trace smp callback causing an IPI (Jerome Marchand) [2192614] - smp: reword smp call IPI comment (Jerome Marchand) [2192614] - treewide: Trace IPIs sent via smp_send_reschedule() (Jerome Marchand) [2192614] - irq_work: Trace self-IPIs sent via arch_irq_work_raise() (Jerome Marchand) [2192614] - smp: Trace IPIs sent via arch_send_call_function_ipi_mask() (Jerome Marchand) [2192614] - sched, smp: Trace IPIs sent via send_call_function_single_ipi() (Jerome Marchand) [2192614] - trace: Add trace_ipi_send_cpumask() (Jerome Marchand) [2192614] - RDMA/umem: Set iova in ODP flow (Kamal Heib) [RHEL-1032] - RDMA/core: Update CMA destination address on rdma_resolve_addr (Kamal Heib) [RHEL-1032] - RDMA/core: Refactor rdma_bind_addr (Kamal Heib) [RHEL-1032] - RDMA/cma: Remove NULL check before dev_{put, hold} (Kamal Heib) [RHEL-1032] - IB/isert: Fix possible list corruption in CMA handler (Kamal Heib) [RHEL-1028] - IB/isert: Fix dead lock in ib_isert (Kamal Heib) [RHEL-1028] - RDMA/srpt: Add a check for valid 'mad_agent' pointer (Kamal Heib) [RHEL-1028] - IB/iser: remove redundant new line (Kamal Heib) [RHEL-1028] - IB/iser: centralize setting desc type and done callback (Kamal Heib) [RHEL-1028] - IB/iser: remove unused macros (Kamal Heib) [RHEL-1028] - IB/uverbs: Fix to consider event queue closing also upon non-blocking mode (Kamal Heib) [RHEL-1028] - RDMA/uverbs: Restrict usage of privileged QKEYs (Kamal Heib) [RHEL-1028] - RDMA/cma: Always set static rate to 0 for RoCE (Kamal Heib) [RHEL-1028] - RDMA/core: Fix GID entry ref leak when create_ah fails (Kamal Heib) [RHEL-1028] - RDMA/cm: Trace icm_send_rej event before the cm state is reset (Kamal Heib) [RHEL-1028] - RDMA/cma: Remove NULL check before dev_{put, hold} (Kamal Heib) [RHEL-1028] - RDMA/core: Fix multiple -Warray-bounds warnings (Kamal Heib) [RHEL-1028] - RDMA/cma: Allow UD qp_type to join multicast only (Kamal Heib) [RHEL-1028] - md/raid5: release batch_last before waiting for another stripe_head (Nigel Croxon) [RHEL-9875] - CI: Remove unused kpet_tree_family (Nikolai Kondrashov) - ice: Don't tx before switchdev is fully configured (Michal Schmidt) [RHEL-10997] - fbcon: set_con2fb_map needs to set con2fb_map! (Wander Lairson Costa) [RHEL-1183] {CVE-2023-38409} - fbcon: Fix error paths in set_con2fb_map (Wander Lairson Costa) [RHEL-1183] {CVE-2023-38409} - mm/slab_common: fix slab_caches list corruption after kmem_cache_destroy() (Rafael Aquini) [RHEL-3652] - sched/rt: Fix bad task migration for rt tasks (Valentin Schneider) [RHEL-3872] - RDMA/irdma: Prevent zero-length STAG registration (Kamal Heib) [RHEL-6389] {CVE-2023-25775} - mm/memcontrol: export memcg.swap watermark via sysfs for v2 memcg (Waiman Long) [RHEL-10099] - cgroup: add pids.peak interface for pids controller (Waiman Long) [RHEL-10099] - mm/memcontrol: export memcg->watermark via sysfs for v2 memcg (Waiman Long) [RHEL-10099] - cpufreq: amd-pstate: fix global sysfs attribute type (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add a kernel config option to set default mode (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Set a fallback policy based on preferred_profile (Prarit Bhargava) [2218687] - ACPI: CPPC: Add definition for undefined FADT preferred PM profile value (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Make amd-pstate EPP driver name hyphenated (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Write CPPC enable bit per-socket (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Update policy->cur in amd_pstate_adjust_perf() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Remove fast_switch_possible flag from active driver (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add ->fast_switch() callback (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Make varaiable mode_state_machine static (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add guided mode control support via sysfs (Prarit Bhargava) [2218687] - amd-pstate: Fix amd_pstate mode switch (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add guided autonomous mode (Prarit Bhargava) [2218687] - ACPI: CPPC: Add auto select register read/write support (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: move to use bus_get_dev_root() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: remove MODULE_LICENSE in non-modules (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Let user know amd-pstate is disabled (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Fix invalid write to MSR_AMD_CPPC_REQ (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: avoid uninitialized variable use (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: convert sprintf with sysfs_emit() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: add driver working mode switch support (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement suspend and resume callbacks (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement amd pstate cpu online and offline callback (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement Pstate EPP support for the AMD processors (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: optimize driver working mode selection in amd_pstate_param() (Prarit Bhargava) [2218687] - ACPI: CPPC: Add AMD pstate energy performance preference cppc control (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: fix kernel hang issue while amd-pstate unregistering (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Fix initial highest_perf value (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Expose struct amd_cpudata (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: update pstate frequency transition delay time (Prarit Bhargava) [2218687] - cpufreq: amd_pstate: map desired perf into pstate scope for powersave governor (Prarit Bhargava) [2218687] - cpufreq: amd_pstate: fix wrong lowest perf fetch (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: fix white-space (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: simplify cpudata pointer assignment (Prarit Bhargava) [2218687]- Bluetooth: L2CAP: Fix u8 overflow (Wander Lairson Costa) [2152858] {CVE-2022-45934} - tracing/histograms: Fix parsing of "sym-offset" modifier (Jerome Marchand) [2229575] - ice: always add legacy 32byte RXDID in supported_rxdids (Michal Schmidt) [RHEL-3379] - task_work: cleanup notification modes (Audra Mitchell) [RHEL-1064] - perf test topology: Use !strncmp(right platform) to fix guest PPC comparision check (Michael Petlan) [2131821] - perf test session topology: Fix test to skip the test in guest environment (Michael Petlan) [2131821] - sched/fair: Block nohz tick_stop when cfs bandwidth in use (Phil Auld) [RHEL-2527] - sched, cgroup: Restore meaning to hierarchical_quota (Phil Auld) [RHEL-2527] - sched/fair: Hide unused init_cfs_bandwidth() stub (Phil Auld) [RHEL-2527] - rbd: take header_rwsem in rbd_dev_refresh() only when updating (Ilya Dryomov) [RHEL-11241] - rbd: decouple parent info read-in from updating rbd_dev (Ilya Dryomov) [RHEL-11241] - rbd: decouple header read-in from updating rbd_dev->header (Ilya Dryomov) [RHEL-11241] - rbd: move rbd_dev_refresh() definition (Ilya Dryomov) [RHEL-11241] - redhat: list Z-Jiras in the changelog before Y-Jiras (Herton R. Krzesinski) - Revert "mm, meminit: recalculate pcpu batch and high limits after init completes" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm,memory_hotplug: factor out adjusting present pages into adjust_present_page_count()" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: move free_the_page" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: allow high-order pages to be stored on the per-cpu lists" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: fetch the correct pcp buddy during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: track range of active PCP lists during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: simplify how many pages are selected per pcp list during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: drain the requested list first during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: free pages in a single pass during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: do not prefetch buddies during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: check high-order pages for corruption during PCP operations" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: fix incorrect PGFREE and PGALLOC for high-order page" (Chris von Recklinghausen) [RHEL-8539] - Revert "cnic: Use the bitmap API to allocate bitmaps" (Chris Leech) [RHEL-1950] - Revert "cnic: don't pass bogus GFP_ flags to dma_alloc_coherent" (Chris Leech) [RHEL-1950] - scsi: lpfc: Prevent use-after-free during rmmod with mapped NVMe rports (Paul Ely) [RHEL-2602] - scsi: lpfc: Early return after marking final NLP_DROPPED flag in dev_loss_tmo (Paul Ely) [RHEL-2602] - gfs2: Add quota_change type (Bob Peterson) [2224075]- bpf: Adjust insufficient default bpf_jit_limit (Viktor Malik) [2219567] - bpf: Prevent increasing bpf_jit_limit above max (Viktor Malik) [2219567] - NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN (Benjamin Coddington) [2231130] - perf/arm-dmc620: Fix dmc620_pmu_irqs_lock/cpu_hotplug_lock circular lock dependency (Waiman Long) [2177103] - bonding: fix macvlan over alb bond support (Hangbin Liu) [2117816] - s390/ipl: add missing secure/has_secure file to ipl type 'unknown' (Tobias Huschle) [RHEL-2852] - s390/zcrypt: fix reply buffer calculations for CCA replies (Tobias Huschle) [2227778] - intel_th: pci: Add Meteor Lake-P support (Michael Petlan) [2156847] - perf/x86/rapl: Add support for Intel Meteor Lake (Michael Petlan) [2156816] - iavf: schedule a request immediately after add/delete vlan (Petr Oros) [2231174] - iavf: add iavf_schedule_aq_request() helper (Petr Oros) [2231174] - PCI: rpaphp: Error out on busy status from get-sensor-state (Mamatha Inamdar) [2230045] - powerpc/rtas: export rtas_error_rc() for reuse. (Mamatha Inamdar) [2230045] - powerpc/eeh: Set channel state after notifying the drivers (Mamatha Inamdar) [2230045] - s390/pkey: fix PKEY_TYPE_EP11_AES handling for sysfs attributes (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_VERIFYKEY2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_KBLOB2PROTK[23] (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_CLR2SECK2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_GENSECK2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix/harmonize internal keyblob headers (Tobias Huschle) [2225520] - s390/pkey: add support for ecc clear key (Tobias Huschle) [2225520] - s390/pkey: do not use struct pkey_protkey (Tobias Huschle) [2225520] - s390/pkey: introduce reverse x-mas trees (Tobias Huschle) [2225520] - s390/pkey: zeroize key blobs (Tobias Huschle) [2225520] - md/raid1: fix error: ISO C90 forbids mixed declarations (Nigel Croxon) [RHEL-5084] - md raid1: allow writebehind to work on any leg device set WriteMostly (Nigel Croxon) [RHEL-5084] - md/raid1: hold the barrier until handle_read_error() finishes (Nigel Croxon) [RHEL-5084] - md/raid1: free the r1bio before waiting for blocked rdev (Nigel Croxon) [RHEL-5084] - md/raid1: call free_r1bio() before allow_barrier() in raid_end_bio_io() (Nigel Croxon) [RHEL-5084] - md/raid5-cache: fix null-ptr-deref for r5l_flush_stripe_to_raid() (Nigel Croxon) [RHEL-5084] - md/raid10: fix a 'conf->barrier' leakage in raid10_takeover() (Nigel Croxon) [RHEL-5084] - md: raid1: fix potential OOB in raid1_remove_disk() (Nigel Croxon) [RHEL-5084] - md/raid5-cache: fix a deadlock in r5l_exit_log() (Nigel Croxon) [RHEL-5084] - md/md-bitmap: hold 'reconfig_mutex' in backlog_store() (Nigel Croxon) [RHEL-5084] - md/md-bitmap: remove unnecessary local variable in backlog_store() (Nigel Croxon) [RHEL-5084] - md: restore 'noio_flag' for the last mddev_resume() (Nigel Croxon) [RHEL-5084] - md: don't quiesce in mddev_suspend() (Nigel Croxon) [RHEL-5084] - md: move initialization and destruction of 'io_acct_set' to md.c (Nigel Croxon) [RHEL-5084] - md: enhance checking in md_check_recovery() (Nigel Croxon) [RHEL-5084] - md: wake up 'resync_wait' at last in md_reap_sync_thread() (Nigel Croxon) [RHEL-5084] - md: refactor idle/frozen_sync_thread() to fix deadlock (Nigel Croxon) [RHEL-5084] - md: add a mutex to synchronize idle and frozen in action_store() (Nigel Croxon) [RHEL-5084] - md: refactor action_store() for 'idle' and 'frozen' (Nigel Croxon) [RHEL-5084] - Revert "md: unlock mddev before reap sync_thread in action_store" (Nigel Croxon) [RHEL-5084] - md/raid0: add discard support for the 'original' layout (Nigel Croxon) [RHEL-5084] - md/raid10: prevent soft lockup while flush writes (Nigel Croxon) [RHEL-5084] - md/raid10: fix io loss while replacement replace rdev (Nigel Croxon) [RHEL-5084] - md/raid10: Do not add spare disk when recovery fails (Nigel Croxon) [RHEL-5084] - md/raid10: clean up md_add_new_disk() (Nigel Croxon) [RHEL-5084] - md/raid10: prioritize adding disk to 'removed' mirror (Nigel Croxon) [RHEL-5084] - md/raid10: improve code of mrdev in raid10_sync_request (Nigel Croxon) [RHEL-5084] - md/raid10: fix null-ptr-deref of mreplace in raid10_sync_request (Nigel Croxon) [RHEL-5084] - md/raid5: don't start reshape when recovery or replace is in progress (Nigel Croxon) [RHEL-5084] - md/bitmap: factor out a helper to set timeout (Nigel Croxon) [RHEL-5084] - md/bitmap: always wake up md_thread in timeout_store (Nigel Croxon) [RHEL-5084] - md: factor out a helper to wake up md_thread directly (Nigel Croxon) [RHEL-5084] - md/raid10: fix wrong setting of max_corr_read_errors (Nigel Croxon) [RHEL-5084] - md/raid10: fix overflow of md/safe_mode_delay (Nigel Croxon) [RHEL-5084] - md/raid5: fix a deadlock in the case that reshape is interrupted (Nigel Croxon) [RHEL-5084] - md: add a new api prepare_suspend() in md_personality (Nigel Croxon) [RHEL-5084] - md: export md_is_rdwr() and is_md_suspended() (Nigel Croxon) [RHEL-5084] - md: introduce md_ro_state (Nigel Croxon) [RHEL-5084] - md: fix data corruption for raid456 when reshape restart while grow up (Nigel Croxon) [RHEL-5084] - md/raid5: don't allow replacement while reshape is in progress (Nigel Croxon) [RHEL-5084] - md/raid10: check slab-out-of-bounds in md_bitmap_get_counter (Nigel Croxon) [RHEL-5084] - md: raid1: check if adding pages to resync bio fails (Nigel Croxon) [RHEL-5084] - md: raid1: use __bio_add_page for adding single page to bio (Nigel Croxon) [RHEL-5084] - md: check for failure when adding pages in alloc_behind_master_bio (Nigel Croxon) [RHEL-5084] - md: raid5: use __bio_add_page to add single page to new bio (Nigel Croxon) [RHEL-5084] - md: raid5-log: use __bio_add_page to add single page (Nigel Croxon) [RHEL-5084] - md: use __bio_add_page to add single page (Nigel Croxon) [RHEL-5084] - md/raid5: fix miscalculation of 'end_sector' in raid5_read_one_chunk() (Nigel Croxon) [RHEL-5084]- s390/dasd: fix hanging device after quiesce/resume (Tobias Huschle) [RHEL-2838] - s390/dasd: fix hanging device after request requeue (Tobias Huschle) [RHEL-2830] - s390/dasd: fix command reject error on ESE devices (Tobias Huschle) [RHEL-2850] - s390/dasd: print copy pair message only for the correct error (Tobias Huschle) [RHEL-2831] - s390: add z16 elf platform (Tobias Huschle) [RHEL-2854] - s390/qeth: Don't call dev_close/dev_open (DOWN/UP) (Tobias Huschle) [RHEL-2410] - powerpc/kprobes: Fix null pointer reference in arch_prepare_kprobe() (Mamatha Inamdar) [2227601] - arm64: kdump: Remove custom linux,usable-memory-range handling (Baoquan He) [RHEL-2307] - arm64: kdump: Remove custom linux,elfcorehdr handling (Baoquan He) [RHEL-2307] - media: dvb-core: Fix use-after-free due to race condition at dvb_ca_en50221 (Dean Nelson) [RHEL-1784] {CVE-2022-45919} - media: dvb-core: Fix use-after-free due to race at dvb_register_device() (Dean Nelson) [RHEL-1841] {CVE-2022-45884} - media: dvb-core: Fix use-after-free due on race condition at dvb_net (Dean Nelson) [RHEL-1842] {CVE-2022-45886} - media: dvb_ca_en50221: fix a size write bug (Dean Nelson) [RHEL-1784] - media: dvbdev: fix refcnt bug (Dean Nelson) [RHEL-1841] - media: dvbdev: adopts refcnt to avoid UAF (Dean Nelson) [RHEL-1841] - media: dvbdev: fix error logic at dvb_register_device() (Dean Nelson) [RHEL-1841] - media: dvb_net: avoid speculation from net slot (Dean Nelson) [RHEL-1842] - media: dvb_ca_en50221: avoid speculation from CA slot (Dean Nelson) [RHEL-1784] - media: dvbdev: Fix memleak in dvb_register_device (Dean Nelson) [RHEL-1841] - media: media/dvb: Use kmemdup rather than duplicating its implementation (Dean Nelson) [RHEL-1841] - media: dvbdev: remove double-unlock (Dean Nelson) [RHEL-1841] - media: dvb-core: fix epoll() by calling poll_wait first (Dean Nelson) [RHEL-1784] - media: dvb_ca_en50221: off by one in dvb_ca_en50221_io_do_ioctl() (Dean Nelson) [RHEL-1784] - drm/amd/display: fix the white screen issue when >= 64GB DRAM (Mika Penttilä) [2231934] - gfs2: conversion deadlock do_promote bypass (Bob Peterson) [2225228] - gfs2: do_promote cleanup (Andreas Gruenbacher) [2225228] - gfs2: Make use of list_is_first (Andreas Gruenbacher) [2225228] - x86/cpu: Enable STIBP on AMD if Automatic IBRS is enabled (Waiman Long) [2227916] - Documentation/hw-vuln: Document the interaction between IBRS and STIBP (Waiman Long) [2227916] - x86/CPU/AMD: Make sure EFER[AIBRSE] is set (Waiman Long) [2227916] - fs: don't audit the capability check in simple_xattr_list() (Andrey Albershteyn) [RHEL-863]- redhat: fix to be able to build with rpm 4.19.0 (Denys Vlasenko) - redhat: add additional gating boot tests (Denys Vlasenko) - redhat: list Z-Jiras in the changelog before Y-Jiras (Herton R. Krzesinski) - scsi: st: Add third party poweron reset handling (John Meneghini) [1930388] - kvm: initialize all of the kvm_debugregs structure before sending it to userspace (Jon Maloy) [2179896] {CVE-2023-1513} - bpf: sockmap: Remove preempt_disable in sock_map_sk_acquire (Tomas Glozar) [2229965] - s390/ap: add ap status asynch error support (Tobias Huschle) [2110511] - s390/ap: implement SE AP bind, unbind and associate (Tobias Huschle) [2110511] - s390/ap: introduce low frequency polling possibility (Tobias Huschle) [2110511] - s390/ap: new low level inline functions ap_bapq() and ap_aapq() (Tobias Huschle) [2110511] - s390/ap: provide F bit parameter for ap_rapq() and ap_zapq() (Tobias Huschle) [2110511] - s390/ap: filter ap card functions, new queue functions attribute (Tobias Huschle) [2110511] - s390/ap: make tapq gr2 response a struct (Tobias Huschle) [2110511] - s390/ap: introduce new AP bus sysfs attribute features (Tobias Huschle) [2110511] - s390/ap: exploit new B bit from QCI config info (Tobias Huschle) [2110511] - s390/zcrypt: replace scnprintf with sysfs_emit (Tobias Huschle) [2110511] - s390/zcrypt: rework length information for dqap (Tobias Huschle) [2110511] - s390/zcrypt: make psmid unsigned long instead of long long (Tobias Huschle) [2110511] - s390/ap,zcrypt,vfio: introduce and use ap_queue_status_reg union (Tobias Huschle) [2110511] - s390/ap: fix status returned by ap_qact() (Tobias Huschle) [2110511] - s390/ap: fix status returned by ap_aqic() (Tobias Huschle) [2110511] - s390/ap: adjust whitespace (Tobias Huschle) [2110511] - s390/ap: use insn format for new instructions (Tobias Huschle) [2110511] - s390/zcrypt: Filter admin CPRBs on custom devices (Tobias Huschle) [2110511] - s390/zcrypt: Add admask to zcdn (Tobias Huschle) [2110511] - s390/zcrypt: CCA control CPRB sending (Tobias Huschle) [2110511] - s390/ap: add missing virt_to_phys address conversion (Tobias Huschle) [2110511] - s390/ap: get rid of register asm in ap_dqap() (Tobias Huschle) [2110511] - s390/ap: get rid of register asm (Tobias Huschle) [2110511] - s390/ap: Rework ap_dqap to deal with messages greater than recv buffer (Tobias Huschle) [2110511] - s390/ap: rework assembler functions to use unions for in/out register variables (Tobias Huschle) [2110511] - internal: add new files for RHEL_MINOR=10 change (Denys Vlasenko) - thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards (Desnes Nunes) [2233974] - mm/userfaultfd: don't consider uffd-wp bit of writable migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp handling for THP migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp special cases for fork() (Rafael Aquini) [2231554] - mm/thp: simplify copying of huge zero page pmd when fork (Rafael Aquini) [2231554] - internal: update RHEL_MINOR for the start of RHEL-8.10 development (Denys Vlasenko)- thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards (Desnes Nunes) [2233974] - mm/userfaultfd: don't consider uffd-wp bit of writable migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp handling for THP migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp special cases for fork() (Rafael Aquini) [2231554] - mm/thp: simplify copying of huge zero page pmd when fork (Rafael Aquini) [2231554]- redhat/configs: enable CONFIG_INET_DIAG_DESTROY (Andrea Claudi) [2230213] - net/sched: cls_u32: Fix reference counter leak leading to overflow (Davide Caratti) [2225202] {CVE-2023-3609} - cifs: fix bogus cifs_mount error handling in RHEL8 (Jeffrey Layton) [2215018] - KVM: nVMX: add missing consistency checks for CR0 and CR4 (Ricardo Robaina) [2190257] {CVE-2023-30456} - netfilter: snat: evict closing tcp entries on reply tuple collision (Florian Westphal) [2196717] - tun: avoid double free in tun_free_netdev (Jon Maloy) [2156366 2156371] {CVE-2022-4744} - net/sched: cls_fw: Fix improper refcount update leads to use-after-free (Davide Caratti) [2225103] {CVE-2023-3776} - net/sched: sch_qfq: account for stab overhead in qfq_enqueue (Davide Caratti) [2225196] {CVE-2023-3611} - net/sched: sch_qfq: reintroduce lmax bound check for MTU (Davide Caratti) [2225196] - net/sched: sch_qfq: refactor parsing of netlink parameters (Davide Caratti) [2225196] - net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - net/sched: cls_fw: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - scsi: lpfc: Remove reftag check in DIF paths (Paul Ely) [2229152] - scsi: lpfc: Modify when a node should be put in device recovery mode during RSCN (Paul Ely) [2229152] - scsi: lpfc: Make fabric zone discovery more robust when handling unsolicited LOGO (Paul Ely) [2229152] - scsi: lpfc: Set Establish Image Pair service parameter only for Target Functions (Paul Ely) [2229152] - scsi: lpfc: Revise ndlp kref handling for dev_loss_tmo_callbk and lpfc_drop_node (Paul Ely) [2229152] - scsi: lpfc: Qualify ndlp discovery state when processing RSCN (Paul Ely) [2229152] - gfs2: Fix freeze consistency check in gfs2_trans_add_meta (Andreas Gruenbacher) [2095340] - gfs2: gfs2_freeze_lock_shared cleanup (Andreas Gruenbacher) [2095340] - gfs2: Replace sd_freeze_state with SDF_FROZEN flag (Andreas Gruenbacher) [2095340] - gfs2: Rework freeze / thaw logic (Andreas Gruenbacher) [2095340] - gfs2: Rename SDF_{FS_FROZEN => FREEZE_INITIATOR} (Andreas Gruenbacher) [2095340] - gfs2: Reconfiguring frozen filesystem already rejected (Andreas Gruenbacher) [2095340] - gfs2: Rename gfs2_freeze_lock{ => _shared } (Andreas Gruenbacher) [2095340] - gfs2: Rename the {freeze,thaw}_super callbacks (Andreas Gruenbacher) [2095340] - gfs2: Rename remaining "transaction" glock references (Andreas Gruenbacher) [2095340] - gfs2: init system threads before freeze lock (Bob Peterson) [2095340] - net: mana: Use the correct WQE count for ringing RQ doorbell (Bandan Das) [2222573] - net: mana: Batch ringing RX queue doorbell on receiving packets (Bandan Das) [2222573] - net: mana: Add support for vlan tagging (Bandan Das) [2222573] - net: mana: Fix perf regression: remove rx_cqes, tx_cqes counters (Bandan Das) [2222573] - net: mana: Check if netdev/napi_alloc_frag returns single page (Bandan Das) [2222573] - net: mana: Rename mana_refill_rxoob and remove some empty lines (Bandan Das) [2222573] - net: mana: Add support for jumbo frame (Bandan Das) [2222573] - net: mana: Enable RX path to handle various MTU sizes (Bandan Das) [2222573] - net: mana: Refactor RX buffer allocation code to prepare for various MTU (Bandan Das) [2222573] - net: mana: Use napi_build_skb in RX path (Bandan Das) [2222573] - net: mana: Remove redundant pci_clear_master (Bandan Das) [2222573] - net: mana: Add new MANA VF performance counters for easier troubleshooting (Bandan Das) [2222573] - ice: Fix NULL pointer deref during VF reset (Petr Oros) [2227743] - x86/kasan: Populate shadow for shared chunk of the CPU entry area (Rafael Aquini) [2232451] - x86/kasan: Add helpers to align shadow addresses up and down (Rafael Aquini) [2232451] - x86/kasan: Rename local CPU_ENTRY_AREA variables to shorten names (Rafael Aquini) [2232451] - x86/mm: Populate KASAN shadow for entire per-CPU range of CPU entry area (Rafael Aquini) [2232451] - x86/mm: Recompute physical address for every page of per-CPU CEA mapping (Rafael Aquini) [2232451]- dm cache policy smq: ensure IO doesn't prevent cleaner policy progress (Benjamin Marzinski) [2227951] - netfilter: nf_tables: prevent OOB access in nft_byteorder_eval (Florian Westphal) [2221046] {CVE-2023-35001} - scsi: storvsc: Remove errant duplicate code (Cathy Avery) [2211725] - scsi: storvsc: Limit max_sectors for virtual Fibre Channel devices (Cathy Avery) [2211725] - redhat/configs: Enable CONFIG_AMPERE_ERRATUM_AC03_CPU_38 (Shaoqin Huang) [2219725] - arm64: errata: Mitigate Ampere1 erratum AC03_CPU_38 at stage-2 (Shaoqin Huang) [2219725] - KVM: arm64: Correctly handle page aging notifiers for unaligned memslot (Shaoqin Huang) [2219725] - KVM: arm64: timers: Fix resource leaks in kvm_timer_hyp_init() (Shaoqin Huang) [2219725] - KVM: arm64: vgic-v4: Make the doorbell request robust w.r.t preemption (Shaoqin Huang) [2219725] - KVM: arm64: Don't miss pending interrupts for suspended vCPU (Shaoqin Huang) [2219725] - KVM: arm64: Move vGIC v4 handling for WFI out arch callback hook (Shaoqin Huang) [2219725] - KVM: arm64: PMU: Don't overwrite PMUSERENR with vcpu loaded (Shaoqin Huang) [2219725] - KVM: arm64: PMU: Restore the host's PMUSERENR_EL0 (Shaoqin Huang) [2219725] - KVM: arm64: Restore mdcr_el2 from vcpu (Shaoqin Huang) [2219725] - kvm: arm64: Remove __hyp_this_cpu_read (Shaoqin Huang) [2219725] - wifi: rtw88: unlock on error path in rtw_ops_add_interface() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check only affected links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: send time sync only if needed (Íñigo Huguet) [2196823] - wifi: clean up erroneously introduced file (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Handle return value for iwl_mvm_sta_init (Íñigo Huguet) [2196823] - wifi: rtw88: delete timer and free skb queue when unloading (Íñigo Huguet) [2196823] - wifi: cfg80211: Fix return value in scan logic (Íñigo Huguet) [2196823] - Revert "wifi: ath11k: Enable threaded NAPI" (Íñigo Huguet) [2196823] - wifi: cfg80211: fix receiving mesh packets without RFC1042 header (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: fix init command fail with enabled device (Íñigo Huguet) [2196823] - wifi: ath9k: convert msecs to jiffies where needed (Íñigo Huguet) [2196823] - wifi: ath11k: Add missing check for ioremap (Íñigo Huguet) [2196823] - wifi: ath11k: fix memory leak in WMI firmware stats (Íñigo Huguet) [2196823] - wifi: ath9k: Fix possible stall on ath9k_txq_list_has_key() (Íñigo Huguet) [2196823] - wifi: ath9k: don't allow to overwrite ENDPOINT0 attributes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid baid size integer overflow (Íñigo Huguet) [2196823] - wifi: rtw88: process VO packets without workqueue to avoid PTK rekey failed (Íñigo Huguet) [2196823] - wifi: rtw88: Fix action frame transmission fail before association (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a few rate index validity checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: Validate slots_num before allocating memory (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Validate tid is in valid range before using it (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: fix NULL pointer dereference in iwl_pcie_irq_rx_msix_handler() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check link during TX (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add a NULL pointer check (Íñigo Huguet) [2196823] - wifi: iwlwifi: pull from TXQs with softirqs disabled (Íñigo Huguet) [2196823] - wifi: iwlwifi: Correctly indicate support for VHT TX STBC (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add NULL check before dereferencing the pointer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix potential array out of bounds access (Íñigo Huguet) [2196823] - wifi: rtw88: add missing unwind goto for __rtw_download_firmware() (Íñigo Huguet) [2196823] - wifi: iwlwifi: disable RX STBC when a device doesn't support it (Íñigo Huguet) [2196823] - wifi: iwlwifi: don't silently ignore missing suspend or resume ops (Íñigo Huguet) [2196823] - wifi: ath9k: avoid referencing uninit memory in ath9k_wmi_ctrl_rx (Íñigo Huguet) [2196823] - wifi: ath9k: fix AR9003 mac hardware hang check register offset calculation (Íñigo Huguet) [2196823] - wifi: rtw89: pci: fix interrupt enable mask for HALT C2H of RTL8851B (Íñigo Huguet) [2196823] - wifi: rtw89: fix rtw89_read_chip_ver() for RTL8852B and RTL8851B (Íñigo Huguet) [2196823] - wifi: rtw88: fix incorrect error codes in rtw_debugfs_set_* (Íñigo Huguet) [2196823] - wifi: rtw88: fix incorrect error codes in rtw_debugfs_copy_from_user (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: Handle SO-F device for PCI id 0x7AF0 (Íñigo Huguet) [2196823] - config: wifi: debug configs for brcm80211 (Íñigo Huguet) [2196823] - config: wifi: set RTL8821CS, RTL8822BS and RTL8822CS as disabled (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: spin_lock_bh() to fix lockdep regression (Íñigo Huguet) [2196823] - wifi: mac80211: fragment per STA profile correctly (Íñigo Huguet) [2196823] - wifi: mac80211: Use active_links instead of valid_links in Tx (Íñigo Huguet) [2196823] - wifi: cfg80211: remove links only on AP (Íñigo Huguet) [2196823] - wifi: mac80211: take lock before setting vif links (Íñigo Huguet) [2196823] - wifi: cfg80211: fix link del callback to call correct handler (Íñigo Huguet) [2196823] - wifi: mac80211: fix link activation settings order (Íñigo Huguet) [2196823] - wifi: cfg80211: fix double lock bug in reg_wdev_chan_valid() (Íñigo Huguet) [2196823] - wifi: cfg80211: fix locking in regulatory disconnect (Íñigo Huguet) [2196823] - wifi: cfg80211: fix locking in sched scan stop work (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix -Warray-bounds bug in iwl_mvm_wait_d3_notif() (Íñigo Huguet) [2196823] - wifi: mac80211: fix switch count in EMA beacons (Íñigo Huguet) [2196823] - wifi: mac80211: don't translate beacon/presp addrs (Íñigo Huguet) [2196823] - wifi: mac80211: mlme: fix non-inheritence element (Íñigo Huguet) [2196823] - wifi: cfg80211: reject bad AP MLD address (Íñigo Huguet) [2196823] - wifi: mac80211: use correct iftype HE cap (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix possible NULL pointer dereference in mt7996_mac_write_txwi() (Íñigo Huguet) [2196823] - wifi: rtw89: remove redundant check of entering LPS (Íñigo Huguet) [2196823] - wifi: rtw89: correct PS calculation for SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2196823] - wifi: rtw88: correct PS calculation for SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2196823] - wifi: mt76: mt7615: fix possible race in mt7615_mac_sta_poll (Íñigo Huguet) [2196823] - wifi: b43: fix incorrect __packed annotation (Íñigo Huguet) [2196823] - wifi: rtw88: sdio: Always use two consecutive bytes for word operations (Íñigo Huguet) [2196823] - mac80211_hwsim: fix memory leak in hwsim_new_radio_nl (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add locking to the rate read flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: Don't use valid_links to iterate sta links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't trust firmware n_channels (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix OEM's name in the tas approved list (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix OEM's name in the ppag approved list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix initialization of a return value (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix access to fw_id_to_mac_id (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix DBGI dump (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix number of concurrent link checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix cancel_delayed_work_sync() deadlock (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't double-init spinlock (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: always free dup_data (Íñigo Huguet) [2196823] - wifi: mac80211: recalc chanctx mindef before assigning (Íñigo Huguet) [2196823] - wifi: mac80211: consider reserved chanctx for mindef (Íñigo Huguet) [2196823] - wifi: mac80211: simplify chanctx allocation (Íñigo Huguet) [2196823] - wifi: mac80211: Abort running color change when stopping the AP (Íñigo Huguet) [2196823] - wifi: mac80211: fix min center freq offset tracing (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rfi: disable RFI feature (Íñigo Huguet) [2196823] - wifi: mac80211: Fix puncturing bitmap handling in __ieee80211_csa_finalize() (Íñigo Huguet) [2196823] - wifi: mac80211: fortify the spinlock against deadlock by interrupt (Íñigo Huguet) [2196823] - wifi: cfg80211: Drop entries with invalid BSSIDs in RNR (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: fix authentication timeout due to incorrect RCR value (Íñigo Huguet) [2196823] - wifi: brcmfmac: Check for probe() id argument being NULL (Íñigo Huguet) [2196823] - wifi: rtw88: correct qsel_to_ep[] type as int (Íñigo Huguet) [2196823] - wifi: rtw88: use work to update rate to avoid RCU warning (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: adjust quota to avoid SER L1 caused by access null page (Íñigo Huguet) [2196823] - wifi: mt76: connac: fix stats->tx_bytes calculation (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix endianness of MT_TXD6_TX_RATE (Íñigo Huguet) [2196823] - wifi: rtw88: Update spelling in main.h (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Simplify setting the initial gain (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Add rtl8xxxu_write{8,16,32}_{set,clear} (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Don't print the vendor/product/serial (Íñigo Huguet) [2196823] - wifi: rtw88: Fix memory leak in rtw88_usb (Íñigo Huguet) [2196823] - wifi: rtw88: call rtw8821c_switch_rf_set() according to chip variant (Íñigo Huguet) [2196823] - wifi: rtw88: set pkg_type correctly for specific rtw8821c variants (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8821c: Fix rfe_option field width (Íñigo Huguet) [2196823] - wifi: rtw88: usb: fix priority queue to endpoint mapping (Íñigo Huguet) [2196823] - wifi: rtw88: 8822c: add iface combination (Íñigo Huguet) [2196823] - wifi: rtw88: handle station mode concurrent scan with AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: prevent scan abort with other VIFs (Íñigo Huguet) [2196823] - wifi: rtw88: refine reserved page flow for AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: disallow PS during AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: 8822c: extend reserved page number (Íñigo Huguet) [2196823] - wifi: rtw88: add port switch for AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: add bitmap for dynamic port settings (Íñigo Huguet) [2196823] - wifi: rtw89: mac: use regular int as return type of DLE buffer request (Íñigo Huguet) [2196823] - wifi: mac80211: remove return value check of debugfs_create_dir() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix RFKILL report when driver is going down (Íñigo Huguet) [2196823] - wifi: iwlwifi: mei: re-ask for ownership after it was taken by CSME (Íñigo Huguet) [2196823] - wifi: iwlwifi: mei: make mei filtered scan more aggressive (Íñigo Huguet) [2196823] - wifi: iwlwifi: modify scan request and results when in link protection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable support for MLO APIs (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: prefer RCU_INIT_POINTER() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix potential memory leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix argument to efi.get_variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix MIC removal confusion (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix memory leak in debugfs (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update support for b0 version (Íñigo Huguet) [2196823] - wifi: ath11k: Remove disabling of 80+80 and 160 MHz (Íñigo Huguet) [2196823] - wifi: ath11k: Fix SKB corruption in REO destination ring (Íñigo Huguet) [2196823] - wifi: ath11k: Fix incorrect update of radiotap fields (Íñigo Huguet) [2196823] - wifi: ath11k: fix tx status reporting in encap offload mode (Íñigo Huguet) [2196823] - wifi: ath11k: add peer mac information in failure cases (Íñigo Huguet) [2196823] - wifi: ath11k: Prevent REO cmd failures (Íñigo Huguet) [2196823] - wifi: ath11k: fix double free of peer rx_tid during reo cmd failure (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fill txd by host driver (Íñigo Huguet) [2196823] - wifi: mt76: set NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 on supported drivers (Íñigo Huguet) [2196823] - wifi: mt76: dma: use napi_build_skb (Íñigo Huguet) [2196823] - wifi: mt76: mt7615: increase eeprom size for mt7663 (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable mesh HW amsdu/de-amsdu support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable configured beacon tx rate (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable BSS_CHANGED_MCAST_RATE support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable BSS_CHANGED_BASIC_RATES support (Íñigo Huguet) [2196823] - wifi: iwlwifi: dvm: Fix memcpy: detected field-spanning write backtrace (Íñigo Huguet) [2196823] - wifi: mac80211: remove ieee80211_tx_status_8023 (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 78 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check firmware response size (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add MLO support to SF - use sta pointer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: configure TLC on link activation (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix iwl_mvm_max_amsdu_size() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove RS rate init update argument (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize per-link STA ratescale data (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs-fw: properly access sband->iftype_data (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: only clients can be 20MHz-only (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix iwl_mvm_sta_rc_update for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove per-STA MFP setting (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use BSSID when building probe requests (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update mac id management (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adopt the latest firmware API (Íñigo Huguet) [2196823] - wifi: mt76: connac: add nss calculation into mt76_connac2_mac_tx_rate_val() (Íñigo Huguet) [2196823] - wifi: mt76: connac: fix txd multicast rate setting (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: stop chip reset worker in unregister hook (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: improve reliability of dma reset (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix missing unwind goto in `mt7921u_probe` (Íñigo Huguet) [2196823] - mt76: mt7921: fix kernel panic by accessing unallocated eeprom.data (Íñigo Huguet) [2196823] - wifi: mt76: move mcu_uni_event and mcu_reg_event in common code (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable coredump support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: add full system reset knobs into debugfs (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable full system reset support (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: enable p2p support (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: Replace fake flex-arrays with flexible-array members (Íñigo Huguet) [2196823] - wifi: mt76: Replace zero-length array with flexible-array member (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: add Netgear AXE3000 (A8000) support (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: drop redundant prefix of mt7915_txpower_puts() (Íñigo Huguet) [2196823] - wifi: mt76: fix 6GHz high channel not be scanned (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: fix probe timeout after reboot (Íñigo Huguet) [2196823] - wifi: mt76: move shared mac definitions in mt76_connac2_mac.h (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: get rid of eeprom.h (Íñigo Huguet) [2196823] - wifi: mt76: add mt76_connac_gen_ppe_thresh utility routine (Íñigo Huguet) [2196823] - wifi: mt76: get rid of unused sta_ps callbacks (Íñigo Huguet) [2196823] - wifi: mt76: add mt76_connac_irq_enable utility routine (Íñigo Huguet) [2196823] - wifi: mt76: move irq_tasklet in mt76_dev struct (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: Set memory space enable in PCI_COMMAND if unset (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: use driver flags rather than mac80211 flags to mcu (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: introduce mt7921_get_mac80211_ops utility routine (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix eeprom tx path bitfields (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove mt7996_mcu_set_pm() (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: init mpdu density cap (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix pointer calculation in ie countdown event (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove unused eeprom band selection (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: let non-bufferable MMPDUs use correct hw queue (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: add eht rx rate support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove mt7996_mcu_beacon_check_caps() (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: remove mt7915_mcu_beacon_check_caps() (Íñigo Huguet) [2196823] - wifi: mt76: connac: refresh tx session timer for WED device (Íñigo Huguet) [2196823] - wifi: mt76: add missing locking to protect against concurrent rx/status calls (Íñigo Huguet) [2196823] - wifi: mt76: handle failure of vzalloc in mt7615_coredump_work (Íñigo Huguet) [2196823] - wifi: mt76: drop the incorrect scatter and gather frame (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: rework init flow in mt7915_thermal_init() (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: add dev->hif2 support for mt7916 WED device (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: expose device tree match table (Íñigo Huguet) [2196823] - wifi: mt76: dynamic channel bandwidth changes in AP mode (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix radiotap bitfield (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: unlock on error in mt7915_thermal_temp_store() (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: Remove unneeded semicolon (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix PCI DMA hang after reboot (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix wrong command to set STA channel (Íñigo Huguet) [2196823] - wifi: mt76: remove redundent MCU_UNI_CMD_* definitions (Íñigo Huguet) [2196823] - wifi: ath9k: fix per-packet TX-power cap for TPC (Íñigo Huguet) [2196823] - wifi: ath11k: fix undefined behavior with __fls in dp (Íñigo Huguet) [2196823] - wifi: ath11k: Ignore frags from uninitialized peer in dp. (Íñigo Huguet) [2196823] - wifi: ath11k: print a warning when crypto_alloc_shash() fails (Íñigo Huguet) [2196823] - wifi: ath11k: pci: Add more MODULE_FIRMWARE() entries (Íñigo Huguet) [2196823] - wifi: ath11k: enable SAR support on WCN6750 (Íñigo Huguet) [2196823] - wifi: ath11k: Disable Spectral scan upon removing interface (Íñigo Huguet) [2196823] - wifi: rtw89: add support of concurrent mode (Íñigo Huguet) [2196823] - wifi: rtw89: Disallow power save with multiple stations (Íñigo Huguet) [2196823] - wifi: rtw89: update statistics to FW for fine-tuning performance (Íñigo Huguet) [2196823] - wifi: rtw89: use struct instead of macros to set H2C command of hardware scan (Íñigo Huguet) [2196823] - wifi: rtw89: refine scan function after chanctx (Íñigo Huguet) [2196823] - wifi: rtw89: prohibit enter IPS during HW scan (Íñigo Huguet) [2196823] - wifi: rtw89: coex: send more hardware module info to firmware for 8851B (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update function to get BT RSSI and hardware counter (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add path control register to monitor list (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Enable Wi-Fi RX gain control for free run solution (Íñigo Huguet) [2196823] - wifi: rtw89: fix power save function in WoWLAN mode (Íñigo Huguet) [2196823] - wifi: rtw89: support WoWLAN mode for 8852be (Íñigo Huguet) [2196823] - wifi: iwlwifi: move debug buffer allocation failure to info verbosity (Íñigo Huguet) [2196823] - wifi: iwlwifi: make the loop for card preparation effective (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow number of beacons from FW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement key link switching (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement BAID link switching (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: track station mask for BAIDs (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 77 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use correct sta mask to remove queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid iterating over an un-initialized list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: factor out iwl_mvm_sta_fw_id_mask() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: properly implement HE AP support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix _iwl_mvm_get_scan_type() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix getting lowest TX rate for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: call napi_synchronize() before freeing rx/tx queues (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm-parse: add full BW UL MU-MIMO support (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Support devices with 5-6 out endpoints (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Clean up some messy ifs (Íñigo Huguet) [2196823] - wifi: brcmfmac: add Cypress 43439 SDIO ids (Íñigo Huguet) [2196823] - wifi: rtw89: fix crash due to null pointer of sta in AP mode (Íñigo Huguet) [2196823] - wifi: rtw89: correct 5 MHz mask setting (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add tables for RFK (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add BB and RF tables (2 of 2) (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add BB and RF tables (1 of 2) (Íñigo Huguet) [2196823] - wifi: rtw89: pci: update PCI related settings to support 8851B (Íñigo Huguet) [2196823] - wifi: rtw89: mac: update MAC settings to support 8851b (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: fix TX path to path A for one RF path chip (Íñigo Huguet) [2196823] - wifi: rtw89: read version of analog hardware (Íñigo Huguet) [2196823] - wifi: rtw89: use hardware CFO to improve performance (Íñigo Huguet) [2196823] - wifi: rtw89: support parameter tables by RFE type (Íñigo Huguet) [2196823] - wifi: rtw89: fix authentication fail during scan (Íñigo Huguet) [2196823] - wifi: rtw89: add flag check for power state (Íñigo Huguet) [2196823] - wifi: rtw89: add ieee80211::remain_on_channel ops (Íñigo Huguet) [2196823] - wifi: rtw89: add function to wait for completion of TX skbs (Íñigo Huguet) [2196823] - wifi: rtw89: 8852c: add beacon filter and CQM support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: tx: remove misleading if statement (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix setting the rate for non station cases (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: validate station properly in flush (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: set STA mask for keys in MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix ptk_pn memory leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make iwl_mvm_mac_ctxt_send_beacon() static (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: track AP STA pointer and use it for MFP (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: Fix integer overflow in iwl_write_to_user_buf (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: move memset before early return (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize seq variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix spelling mistake "Gerenal" -> "General" (Íñigo Huguet) [2196823] - wifi: iwlwifi: Fix spelling mistake "upto" -> "up to" (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable new MLD FW API (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a new PCI device ID for BZ device (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add RF Step Type for BZ device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: scan legacy bands and UHB channels with same antenna (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Fix possible division by zero (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: skip dump correctly on hw error (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: fix possible NULL pointer dereference (Íñigo Huguet) [2196823] - wifi: iwlwifi: Fix the duplicate dump name (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: work around ROM bug on AX210 integrated (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add DSM_FUNC_ENABLE_6E value to debugfs (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: cleanup beacon_inject_active during hw restart (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: support wowlan info notification version 2 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make HLTK configuration for PASN station optional (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: request limiting to 8 MSDUs per A-MSDU (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix shift-out-of-bounds (Íñigo Huguet) [2196823] - wifi: iwlwifi: acpi: support modules with high antenna gain (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't drop unencrypted MCAST frames (Íñigo Huguet) [2196823] - wifi: iwlwifi: dbg: print pc register data once fw dump occurred (Íñigo Huguet) [2196823] - wifi: mac80211: add flush_sta method (Íñigo Huguet) [2196823] - wifi: mac80211: flush queues on STA removal (Íñigo Huguet) [2196823] - wifi: ieee80211: correctly mark FTM frames non-bufferable (Íñigo Huguet) [2196823] - wifi: ieee80211: clean up public action codes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't set CHECKSUM_COMPLETE for unsupported protocols (Íñigo Huguet) [2196823] - wifi: iwlwifi: trans: don't trigger d3 interrupt twice (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj-a0 and specific rf devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update init sequence if tx diversity supported (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: move function sequence (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm: Update HE capabilities on 6GHz band for EHT device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor TX csum mode check (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix A-MSDU checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable bz hw checksum from c step (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use OFDM rate if IEEE80211_TX_CTL_NO_CCK_RATE is set (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: convert TID to FW value on queue remove (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configuration for SO,SOF MAC and HR RF (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a validity check of queue_id in iwl_txq_reclaim (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm-parse: enable 160/320 MHz for AP mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: debug: fix crash in __iwl_err() (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8821CS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8822CS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8822BS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: main: Reserve 8 bytes of extra TX headroom for SDIO cards (Íñigo Huguet) [2196823] - wifi: rtw88: main: Add the {cpwm,rpwm}_addr for SDIO based chipsets (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Support SDIO specific bits in the power on sequence (Íñigo Huguet) [2196823] - wifi: rtw88: sdio: Add HCI implementation for SDIO based chipsets (Íñigo Huguet) [2196823] - wifi: rtw88: Clear RTW_FLAG_POWERON early in rtw_mac_power_switch() (Íñigo Huguet) [2196823] - wifi: ath12k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath10k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath11k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath11k: Send 11d scan start before WMI_START_SCAN_CMDID (Íñigo Huguet) [2196823] - wifi: ath11k: fix writing to unintended memory region (Íñigo Huguet) [2196823] - wifi: ath11k: Fix invalid management rx frame length issue (Íñigo Huguet) [2196823] - wifi: ath11k: fix rssi station dump not updated in QCN9074 (Íñigo Huguet) [2196823] - wifi: ath11k: Configure the FTM responder role using firmware capability flag (Íñigo Huguet) [2196823] - wifi: ath11k: Optimize 6 GHz scan time (Íñigo Huguet) [2196823] - wifi: mac80211: set EHT support flag in AP mode (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: fix potential NULL deref in hwsim_pmsr_report_nl() (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix duplicate entry in iwl_dev_info_table (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix the order of TIMING_MEASUREMENT notifications (Íñigo Huguet) [2196823] - bus: mhi: host: Use mhi_tryset_pm_state() for setting fw error state (Íñigo Huguet) [2196823] - bus: mhi: host: Remove duplicate ee check for syserr (Íñigo Huguet) [2196823] - bus: mhi: host: Avoid ringing EV DB if there are no elements to process (Íñigo Huguet) [2196823] - net: rfkill-gpio: Add explicit include for of.h (Íñigo Huguet) [2196823] - net: qrtr: correct types of trace event parameters (Íñigo Huguet) [2196823] - wifi: rt2x00: Fix memory leak when handling surveys (Íñigo Huguet) [2196823] - wifi: b43legacy: Remove the unused function prev_slot() (Íñigo Huguet) [2196823] - wifi: rtw89: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: rtw89: fix potential race condition between napi_init and napi_enable (Íñigo Huguet) [2196823] - wifi: rtw89: config EDCCA threshold during scan to prevent TX failed (Íñigo Huguet) [2196823] - wifi: rtw89: fix incorrect channel info during scan due to ppdu_sts filtering (Íñigo Huguet) [2196823] - wifi: rtw89: remove superfluous H2C of join_info (Íñigo Huguet) [2196823] - wifi: rtw89: set data lowest rate according to AP supported rate (Íñigo Huguet) [2196823] - wifi: rtw89: add counters of register-based H2C/C2H (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update Wi-Fi Bluetooth coexistence version to 7.0.1 (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add report control v5 variation (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update RTL8852B LNA2 hardware parameter (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Not to enable firmware report when WiFi is power saving (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add LPS protocol radio state for RTL8852B (Íñigo Huguet) [2196823] - bus: mhi: pci_generic: Add Foxconn T99W510 (Íñigo Huguet) [2196823] - bus: mhi: host: Use ERANGE for BHIOFF/BHIEOFF range check (Íñigo Huguet) [2196823] - bus: mhi: host: Range check CHDBOFF and ERDBOFF (Íñigo Huguet) [2196823] - wifi: mwifiex: remove unused evt_buf variable (Íñigo Huguet) [2196823] - wifi: brcmsmac: ampdu: remove unused suc_mpdu variable (Íñigo Huguet) [2196823] - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg() (Íñigo Huguet) [2196823] - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg() (Íñigo Huguet) [2196823] - wifi: brcmsmac: remove unused has_5g variable (Íñigo Huguet) [2196823] - wifi: b43legacy: remove unused freq_r3A_value function (Íñigo Huguet) [2196823] - wifi: rtlwifi: Replace fake flex-array with flex-array member (Íñigo Huguet) [2196823] - wifi: rtw88: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: rndis_wlan: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: rndis_wlan: clean up a type issue (Íñigo Huguet) [2196823] - wifi: rtw88: remove unused rtw_pci_get_tx_desc function (Íñigo Huguet) [2196823] - wifi: rsi: Slightly simplify rsi_set_channel() (Íñigo Huguet) [2196823] - wifi: ipw2x00: remove unused _ipw_read16 function (Íñigo Huguet) [2196823] - wifi: mac80211: enable EHT mesh support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: correctly use link in iwl_mvm_sta_del() (Íñigo Huguet) [2196823] - wifi: iwlwifi: separate AP link management queues (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: free probe_resp_data later (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 75 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: move max_agg_bufsize into host TLC lq_sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: send full STA during HW restart (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rework active links counting (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update mac config when assigning chanctx (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the correct link queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: clean up mac_id vs. link_id in MLD sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix station link data leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize max_rc_amsdu_len per-link (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use appropriate link for rate selection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the new lockdep-checking macros (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove chanctx WARN_ON (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid sending MAC context for idle (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove only link-specific AP keys (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: skip inactive links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust iwl_mvm_scan_respect_p2p_go_iter() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rxmq: report link ID to mac80211 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use bcast/mcast link station id (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: translate management frame address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement mac80211 callback change_sta_links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the link sta address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust rs init to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust radar detection to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust iwl_mvm_sec_key_remove_ap to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make a few warnings only trigger once (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: coex: start handling multiple links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs-fw: don't crash on missing channel (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use STA link address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: skip MEI update for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix narrow RU check for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make some HW flags conditional (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement link change ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust some cleanup functions to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_mac_sta_state_common() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update iwl_mvm_tx_reclaim() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust to MLO assign/unassign/switch_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add fw link id allocation (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust internal stations to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: replace bss_info_changed() with vif_cfg/link_info_changed() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add link_conf parameter for add/remove/change link (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't check dtim_period in new API (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust SMPS for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add set_hw_timestamp to mld ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add link to firmware earlier (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust some PS and PM methods to MLD (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust mld_mac_ctxt_/beacon_changed() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust smart fifo configuration to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: align to the LINK cmd update in the FW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: always use the sta->addr as the peers addr (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: modify link instead of removing it during csa (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix crash on queue removal for MLD API too (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix "modify_mask" value in the link cmd. (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add all missing ops to iwl_mvm_mld_ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for post_channel_switch in MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: unite sta_modify_disable_tx flows (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add cancel/remain_on_channel for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_roc() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add some new MLD ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add sta handling flows for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an indication that the new MLD API is used (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: sta preparation for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: vif preparation for MLO (Íñigo Huguet) [2196823] - wifi: nl80211: support advertising S1G capabilities (Íñigo Huguet) [2196823] - wifi: mac80211: S1G capabilities information element in probe request (Íñigo Huguet) [2196823] - mac80211: minstrel_ht: remove unused n_supported variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Use 64-bit division helper in iwl_mvm_get_crosstimestamp_fw() (Íñigo Huguet) [2196823] - wifi: carl9170: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: carl9170: Fix multiple -Warray-bounds warnings (Íñigo Huguet) [2196823] - wifi: ath10k: remove unused ath10k_get_ring_byte function (Íñigo Huguet) [2196823] - wifi: ath12k: incorrect channel survey dump (Íñigo Huguet) [2196823] - wifi: ath12k: fix incorrect handling of AMSDU frames (Íñigo Huguet) [2196823] - wifi: ath12k: fix packets are sent in native wifi mode while we set raw mode (Íñigo Huguet) [2196823] - wifi: ath12k: fill peer meta data during reo_reinject (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR report support via virtio (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR abort support via virtio (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR request support via virtio (Íñigo Huguet) [2196823] - wifi: nl80211: make nl80211_send_chandef non-static (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR capability support (Íñigo Huguet) [2196823] - mac80211: support RNR for EMA AP (Íñigo Huguet) [2196823] - cfg80211: support RNR for EMA AP (Íñigo Huguet) [2196823] - wifi: mac80211: use bullet list for amsdu_mesh_control formats list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix NULL deref in iwl_mvm_mld_disable_txq (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: EMA support (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: Multiple BSSID support (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: move beacon transmission to a separate function (Íñigo Huguet) [2196823] - wifi: mac80211: generate EMA beacons in AP mode (Íñigo Huguet) [2196823] - wifi: nl80211: Update the documentation of NL80211_SCAN_FLAG_COLOCATED_6GHZ (Íñigo Huguet) [2196823] - wifi: mac80211: implement support for yet another mesh A-MSDU format (Íñigo Huguet) [2196823] - wifi: mac80211: add mesh fast-rx support (Íñigo Huguet) [2196823] - wifi: mac80211: use mesh header cache to speed up mesh forwarding (Íñigo Huguet) [2196823] - wifi: mac80211: mesh fast xmit support (Íñigo Huguet) [2196823] - wifi: mac80211: fix race in mesh sequence number assignment (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add debugfs to get TAS status (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: support enabling and disabling HW timestamping (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_add_sta(), iwl_mvm_rm_sta() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove not needed initializations (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_sta_send_to_fw() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_cfg_he_sta() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Don't send MAC CTXT cmd after deauthorization (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add stop_ap() and leave_ibss() callbacks for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add start_ap() and join_ibss() callbacks for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: select ptp cross timestamp from multiple reads (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement PHC clock adjustments (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable TX beacon protection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for timing measurement (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: report hardware timestamps in RX/TX status (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: read synced time from firmware if supported (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for PTP HW clock (PHC) (Íñigo Huguet) [2196823] - wifi: ath12k: Enable IMPS for WCN7850 (Íñigo Huguet) [2196823] - wifi: ath12k: Identify DFS channel when sending scan channel list command (Íñigo Huguet) [2196823] - wifi: ath12k: fix firmware assert during channel switch for peer sta (Íñigo Huguet) [2196823] - wifi: ath12k: fix memory leak in ath12k_qmi_driver_event_work() (Íñigo Huguet) [2196823] - wifi: ath11k: fix BUFFER_DONE read on monitor ring rx buffer (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Support new chip RTL8710BU aka RTL8188GU (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: RTL8192EU always needs full init (Íñigo Huguet) [2196823] - wifi: iwlwifi: Avoid disabling GCC specific flag with clang (Íñigo Huguet) [2196823] - wifi: iwlwifi: suppress printf warnings in tracing (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: pnvm: fix uefi reduced TX power loading (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj and Bz devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs: print BAD_RATE for invalid HT/VHT index (Íñigo Huguet) [2196823] - wifi: iwlwifi: Replace space with tabs as code indent (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add required space before open '(' (Íñigo Huguet) [2196823] - wifi: iwlwifi: Remove prohibited spaces (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix typos in comment (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove setting of 'sta' parameter (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an unassign_vif_chanctx() callback for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor __iwl_mvm_unassign_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an assign_vif_chanctx() callback for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor __iwl_mvm_assign_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add a remove_interface() callback for mld mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add an add_interface() callback for mld mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new STA related commands (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new LINK command (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new MAC CTXT command (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Refactor MAC_CONTEXT_CMD sending flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Refactor STA_HE_CTXT_CMD sending flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Add driver defined dump file name (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Add new tlv for dump file name extension (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid sta lookup in queue alloc (Íñigo Huguet) [2196823] - wifi: ath11k: fix deinitialization of firmware resources (Íñigo Huguet) [2196823] - wifi: ath11k: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: ath12k: Add missing unwind goto in ath12k_pci_probe() (Íñigo Huguet) [2196823] - net: Use of_property_present() for testing DT property presence (Íñigo Huguet) [2196823] - wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies() (Íñigo Huguet) [2196823] {CVE-2023-1380} - wifi: rtw88: fix memory leak in rtw_usb_probe() (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add v5 firmware cycle status report (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add v2 Bluetooth scan info (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Fix wrong structure assignment at null data report (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add register monitor report v2 format (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add traffic TX/RX info and its H2C (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add WiFi role info v2 (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add more error_map and counter to log (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: use module_usb_driver (Íñigo Huguet) [2196823] - wifi: rtw89: release RX standby timer of beamformee CSI to save power (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: mark Edimax EW-7811Un V2 as tested (Íñigo Huguet) [2196823] - wifi: brcmfmac: Use ISO3166 country code and rev 0 as fallback on 4356 (Íñigo Huguet) [2196823] - wifi: move raycs, wl3501 and rndis_wlan to legacy directory (Íñigo Huguet) [2196823] - wifi: move mac80211_hwsim and virt_wifi to virtual directory (Íñigo Huguet) [2196823] - wifi: ath11k: add debug prints in regulatory WMI event processing (Íñigo Huguet) [2196823] - wifi: ath11k: add support to parse new WMI event for 6 GHz (Íñigo Huguet) [2196823] - wifi: ath11k: use proper regulatory reference for bands (Íñigo Huguet) [2196823] - bus: mhi: host: pci_generic: Revert "Add a secondary AT port to Telit FN990" (Íñigo Huguet) [2196823] - bus: mhi: host: pci_generic: Drop redundant pci_enable_pcie_error_reporting() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix EOF bit reporting (Íñigo Huguet) [2196823] - wifi: iwlwifi: Do not include radiotap EHT user info if not needed (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add EHT RU allocation to radiotap (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update logs for yoyo reset sw changes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: clean up duplicated defines (Íñigo Huguet) [2196823] - wifi: iwlwifi: rs-fw: break out for unsupported bandwidth (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add support for B step of BnJ-Fm4 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make flush code a bit clearer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid UB shift of snif_queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add primary 80 known for EHT radiotap (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: parse FW frame metadata for EHT sniffer mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: decode USIG_B1_B7 RU to nl80211 RU width (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rename define to generic name (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow Microsoft to use TAS (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add all EHT based on data0 info from HW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add EHT radiotap info based on rate_n_flags (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an helper function radiotap TLVs (Íñigo Huguet) [2196823] - wifi: radiotap: separate vendor TLV into header/content (Íñigo Huguet) [2196823] - bus: mhi: ep: Demote unsupported channel error log to debug (Íñigo Huguet) [2196823] - bus: mhi: host: Remove mhi_poll() API (Íñigo Huguet) [2196823] - wifi: iwlwifi: reduce verbosity of some logging events (Íñigo Huguet) [2196823] - wifi: iwlwifi: Adding the code to get RF name for MsP device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: mark mac header with no data frames (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add LSIG info to radio tap info in EHT (Íñigo Huguet) [2196823] - wifi: nl80211: Add support for randomizing TA of auth and deauth frames (Íñigo Huguet) [2196823] - wifi: mac80211: add LDPC related flags in ieee80211_bss_conf (Íñigo Huguet) [2196823] - wifi: mac80211: add EHT MU-MIMO related flags in ieee80211_bss_conf (Íñigo Huguet) [2196823] - wifi: mac80211: introduce ieee80211_refresh_tx_agg_session_timer() (Íñigo Huguet) [2196823] - wifi: mac80211: add support for driver adding radiotap TLVs (Íñigo Huguet) [2196823] - wifi: radiotap: Add EHT radiotap definitions (Íñigo Huguet) [2196823] - wifi: mac80211: fix ieee80211_link_set_associated() type (Íñigo Huguet) [2196823] - wifi: mac80211: simplify reasoning about EHT capa handling (Íñigo Huguet) [2196823] - wifi: mac80211: mlme: remove pointless sta check (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: Indicate support for NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT (Íñigo Huguet) [2196823] - wifi: mac80211: add netdev per-link debugfs data and driver hook (Íñigo Huguet) [2196823] - wifi: mac80211: remove SMPS from AP debugfs (Íñigo Huguet) [2196823] - wifi: mac80211: add pointer from bss_conf to vif (Íñigo Huguet) [2196823] - wifi: mac80211: warn only once on AP probe (Íñigo Huguet) [2196823] - wifi: cfg80211/mac80211: report link ID on control port RX (Íñigo Huguet) [2196823] - wifi: mac80211: add support for set_hw_timestamp command (Íñigo Huguet) [2196823] - wifi: nl80211: add a command to enable/disable HW timestamping (Íñigo Huguet) [2196823] - wifi: wireless: cleanup unused function parameters (Íñigo Huguet) [2196823] - wifi: wireless: correct primary channel validation on 6 GHz (Íñigo Huguet) [2196823] - wifi: wireless: return primary channel regardless of DUP (Íñigo Huguet) [2196823] - wifi: mac80211: allow beacon protection HW offload (Íñigo Huguet) [2196823] - wifi: mac80211: check key taint for beacon protection (Íñigo Huguet) [2196823] - wifi: mac80211: clear all bits that relate rtap fields on skb (Íñigo Huguet) [2196823] - wifi: mac80211: adjust scan cancel comment/check (Íñigo Huguet) [2196823] - wifi: nl80211: Update the documentation of NL80211_SCAN_FLAG_COLOCATED_6GHZ (Íñigo Huguet) [2196823] - gpiolib: split linux/gpio/driver.h out of linux/gpio.h (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192se: Remove some unused variables (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Return the original error from rtw_mac_power_switch() (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Return the original error from rtw_pwr_seq_parser() (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add 4359C0 firmware definition (Íñigo Huguet) [2196823] - wifi: rtw89: fix SER L1 might stop entering LPS issue (Íñigo Huguet) [2196823] - wifi: ath11k: Add tx ack signal support for management packets (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add BCM4378B3 support (Íñigo Huguet) [2196823] - wifi: brcmfmac: common: Add support for external calibration blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Load and provide TxCap blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: common: Add support for downloading TxCap blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4387 (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Pass the PMK in binary instead of hex (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Add support for PMKID_V3 operations (Íñigo Huguet) [2196823] - wifi: brcmfmac: feature: Add support for setting feats based on WLC version (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Add support for scan params v2 (Íñigo Huguet) [2196823] - wifi: brcmfmac: chip: Handle 1024-unit sizes for TCM blocks (Íñigo Huguet) [2196823] - wifi: brcmfmac: chip: Only disable D11 cores; handle an arbitrary number (Íñigo Huguet) [2196823] - wifi: ath11k: generate rx and tx mcs maps for supported HE mcs (Íñigo Huguet) [2196823] - wifi: ath11k: move HE MCS mapper to a separate function (Íñigo Huguet) [2196823] - wifi: ath11k: push MU-MIMO params from hostapd to hardware (Íñigo Huguet) [2196823] - wifi: ath11k: modify accessor macros to match index size (Íñigo Huguet) [2196823] - wifi: ath6kl: reduce WARN to dev_dbg() in callback (Íñigo Huguet) [2196823] - wifi: brcmfmac: support CQM RSSI notification with older firmware (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Provide a buffer of random bytes to the device (Íñigo Huguet) [2196823] - wifi: brcmfmac: acpi: Add support for fetching Apple ACPI properties (Íñigo Huguet) [2196823] - wifi: ath12k: remove memset with byte count of 278528 (Íñigo Huguet) [2196823] - wifi: wcn36xx: Slightly optimize PREPARE_HAL_BUF() (Íñigo Huguet) [2196823] - wifi: rtw89: refine FW feature judgement on packet drop (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: enable hw_scan support (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: add channel encoding for hw_scan (Íñigo Huguet) [2196823] - wifi: rtw89: adjust channel encoding to common function (Íñigo Huguet) [2196823] - wifi: rtw89: fw: configure CRASH_TRIGGER feature for 8852B (Íñigo Huguet) [2196823] - wifi: rtw89: add tx_wake notify for 8852B (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8822c: Implement RTL8822CS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8822b: Implement RTL8822BS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8821c: Implement RTL8821CS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Add SDIO HCI support in the TX/page table setup (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Add support for the SDIO HCI in rtw_pwr_seq_parser() (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Remove always true condition in rtl8xxxu_print_chipinfo (Íñigo Huguet) [2196823] - wifi: rtw89: add RNR support for 6 GHz scan (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192de: Remove the unused variable bcnfunc_enable (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: 8188e: parse single one element of RA report for station mode (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192ce: fix dealing empty EEPROM values (Íñigo Huguet) [2196823] - wifi: ath11k: fix SAC bug on peer addition with sta band migration (Íñigo Huguet) [2196823] - wifi: ath10k: Remove redundant assignment to changed_flags (Íñigo Huguet) [2196823] - wifi: ath10k: snoc: enable threaded napi on WCN3990 (Íñigo Huguet) [2196823] - wifi: ath5k: fix an off by one check in ath5k_eeprom_read_freq_list() (Íñigo Huguet) [2196823] - wifi: ath5k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2196823] - wifi: ath11k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2196823] - wifi: ath12k: PCI ops for wakeup/release MHI (Íñigo Huguet) [2196823] - wifi: ath12k: Handle lock during peer_id find (Íñigo Huguet) [2196823] - wifi: ath9k: hif_usb: fix memory leak of remain_skbs (Íñigo Huguet) [2196823] - wifi: ath11k: fix return value check in ath11k_ahb_probe() (Íñigo Huguet) [2196823] - wifi: ath12k: use kfree_skb() instead of kfree() (Íñigo Huguet) [2196823] - wifi: ath: Silence memcpy run-time false positive warning (Íñigo Huguet) [2196823] - wifi: ath10k: Remove the unused function shadow_dst_wr_ind_addr() and ath10k_ce_error_intr_enable() (Íñigo Huguet) [2196823] - wifi: ath12k: dp_mon: clean up some inconsistent indentings (Íñigo Huguet) [2196823] - wifi: ath12k: dp_mon: Fix unsigned comparison with less than zero (Íñigo Huguet) [2196823] - wifi: ath12k: Fix spelling mistakes in warning messages and comments (Íñigo Huguet) [2196823] - wifi: ath6kl: minor fix for allocation size (Íñigo Huguet) [2196823] - wifi: ath11k: Set ext passive scan flag to adjust passive scan start time (Íñigo Huguet) [2196823]- xfrm: add NULL check in xfrm_update_ae_params (Daniel Mendes) [2218948] {CVE-2023-3772} - scsi: storvsc: Fix handling of virtual Fibre Channel timeouts (Cathy Avery) [1986067] - netfilter: xt_owner: Add supplementary groups option (Phil Sutter) [2136194] - netfilter: nf_tables: can't schedule in nft_chain_validate (Florian Westphal) [2230460] - drm/nouveau/nvkm/dp: Add workaround to fix DP 1.3+ DPCD issues (Karol Herbst) [2229989] - net: deprecate PF_KEY (Sabrina Dubroca) [RHEL-1257] - KVM: SEV: remove ghcb variable declarations (Vitaly Kuznetsov) [2213807] - KVM: SEV: only access GHCB fields once (Vitaly Kuznetsov) [2213807] {CVE-2023-4155} - KVM: SEV: snapshot the GHCB before accessing it (Vitaly Kuznetsov) [2213807] {CVE-2023-4155} - Documentation/x86: Fix backwards on/off logic about YMM support (Waiman Long) [2229884] {CVE-2022-40982} - KVM: Add GDS_NO support to KVM (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add Kconfig option for GDS (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add force option to GDS mitigation (Waiman Long) [2229884] {CVE-2022-40982} - x86/speculation: Add Gather Data Sampling mitigation (Waiman Long) [2229884] {CVE-2022-40982} - x86/bugs: Use sysfs_emit() (Waiman Long) [2229884] - Documentation/ABI: Mention retbleed vulnerability info file for sysfs (Waiman Long) [2229884] - docs/kernel-parameters: Update descriptions for "mitigations=" param with retbleed (Waiman Long) [2229884] - arm64: correct the effect of mitigations off on kpti (Waiman Long) [2229884] - x86/speculation: Add missing srbds=off to the mitigations= help text (Waiman Long) [2229884] - usb: typec: ucsi: Mark dGPUs as DEVICE scope (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Remove ccgx,firmware-build property (Desnes Nunes) [2222463] - usb: typec: ucsi_ccg: Add OF support (Desnes Nunes) [2222463] - usb: typec: ucsi/ucsi_ccg: Convert to i2c's .probe_new() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Add ACPI property to align with device-tree (Desnes Nunes) [2222463] - dt-bindings: usb: Add Cypress cypd4226 Type-C controller (Desnes Nunes) [2222463] - i2c: designware-pci: Switch to use i2c_new_ccgx_ucsi() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Convert to use dev_err_probe() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Use temporary variable for struct device (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Switch to use i2c_new_ccgx_ucsi() (Desnes Nunes) [2222463] - i2c: Remove support for dangling device properties (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Constify the software node (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Use PTR_ERR_OR_ZERO() to simplify code (Desnes Nunes) [2222463] - i2c: nvidia-gpu: convert to use i2c_new_client_device() (Desnes Nunes) [2222463] - i2c: Add support for software nodes (Desnes Nunes) [2222463] - i2c: Introduce common module to instantiate CCGx UCSI (Desnes Nunes) [2222463] - power: supply: Fix logic checking if system is running from battery (Desnes Nunes) [2222463] - redhat: support virtio-mem on x86-64 as tech-preview (David Hildenbrand) [2229123] - virtio/virtio_mem: handle a possible NULL as a memcpy parameter (David Hildenbrand) [2229123] - virtio-mem: support VIRTIO_MEM_F_UNPLUGGED_INACCESSIBLE (David Hildenbrand) [2229123] - virtio-mem: disallow mapping virtio-mem memory via /dev/mem (David Hildenbrand) [2229123] - kernel/resource: disallow access to exclusive system RAM regions (David Hildenbrand) [2229123] - kernel/resource: clean up and optimize iomem_is_exclusive() (David Hildenbrand) [2229123] - virtio-mem: kdump mode to sanitize /proc/vmcore access (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_remove() into virtio_mem_deinit_hotplug() (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_probe() into virtio_mem_init_hotplug() (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_init() into virtio_mem_init_hotplug() (David Hildenbrand) [2229123] - proc/vmcore: fix possible deadlock on concurrent mmap and read (David Hildenbrand) [2229123] - proc/vmcore: don't fake reading zeroes on surprise vmcore_cb unregistration (David Hildenbrand) [2229123] - proc/vmcore: fix clearing user buffer by properly using clear_user() (David Hildenbrand) [2229123] - proc/vmcore: convert oldmem_pfn_is_ram callback to more generic vmcore callbacks (David Hildenbrand) [2229123] - proc/vmcore: let pfn_is_ram() return a bool (David Hildenbrand) [2229123] - x86/xen: print a warning when HVMOP_get_mem_type fails (David Hildenbrand) [2229123] - x86/xen: simplify xen_oldmem_pfn_is_ram() (David Hildenbrand) [2229123] - x86/xen: update xen_oldmem_pfn_is_ram() documentation (David Hildenbrand) [2229123] - virtio-mem: fix sleeping in RCU read side section in virtio_mem_online_page_cb() (David Hildenbrand) [2229123] - virtio-mem: prioritize unplug from ZONE_MOVABLE in Big Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level unplug handling in Big Block Mode (David Hildenbrand) [2229123] - virtio-mem: prioritize unplug from ZONE_MOVABLE in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level unplug handling in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level plug handling in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: use page_zonenum() in virtio_mem_fake_offline() (David Hildenbrand) [2229123] - virtio-mem: don't read big block size in Sub Block Mode (David Hildenbrand) [2229123] - fs/proc/kcore: use page_offline_(freeze|thaw) (David Hildenbrand) [2229123] - virtio-mem: use page_offline_(start|end) when setting PageOffline() (David Hildenbrand) [2229123] - mm: introduce page_offline_(begin|end|freeze|thaw) to synchronize setting PageOffline() (David Hildenbrand) [2229123] - fs/proc/kcore: don't read offline sections, logically offline pages and hwpoisoned pages (David Hildenbrand) [2229123] - fs/proc/kcore: pfn_is_ram check only applies to KCORE_RAM (David Hildenbrand) [2229123] - fs/proc/kcore: drop KCORE_REMAP and KCORE_OTHER (David Hildenbrand) [2229123] - proc/kcore: Remove unused kclist_add_remap() (David Hildenbrand) [2229123] - x86/gart: Exclude GART aperture from kcore (David Hildenbrand) [2229123] - kernel/resource: remove first_lvl / siblings_only logic (David Hildenbrand) [2229123] - kernel/resource: make walk_mem_res() find all busy IORESOURCE_MEM resources (David Hildenbrand) [2229123] - kernel/resource: make walk_system_ram_res() find all busy IORESOURCE_SYSTEM_RAM resources (David Hildenbrand) [2229123] - kernel/resource.c: fix kernel-doc markups (David Hildenbrand) [2229123] - resource: avoid unnecessary lookups in find_next_iomem_res() (David Hildenbrand) [2229123] - resource: fix locking in find_next_iomem_res() (David Hildenbrand) [2229123] - virtio-mem: check against mhp_get_pluggable_range() which memory we can hotplug (David Hildenbrand) [2229123] - virtio-mem: Assign boolean values to a bool variable (David Hildenbrand) [2229123] - mm/memory_hotplug: MEMHP_MERGE_RESOURCE -> MHP_MERGE_RESOURCE (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) - safe memory hotunplug (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) - basic memory hotunplug (David Hildenbrand) [2229123] - mm/memory_hotplug: extend offline_and_remove_memory() to handle more than one memory block (David Hildenbrand) [2229123] - virtio-mem: allow to force Big Block Mode (BBM) and set the big block size (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) memory hotplug (David Hildenbrand) [2229123] - virtio-mem: factor out adding/removing memory from Linux (David Hildenbrand) [2229123] - virtio-mem: memory notifier callbacks are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: existing (un)plug functions are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: memory block ids are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: nb_sb_per_mb and subblock_size are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: subblock states are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: memory block states are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: document Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: generalize handling when memory is getting onlined deferred (David Hildenbrand) [2229123] - virtio-mem: don't always trigger the workqueue when offlining memory (David Hildenbrand) [2229123] - virtio-mem: drop last_mb_id (David Hildenbrand) [2229123] - virtio-mem: generalize virtio_mem_overlaps_range() (David Hildenbrand) [2229123] - virtio-mem: generalize virtio_mem_owned_mb() (David Hildenbrand) [2229123] - virtio-mem: generalize check for added memory (David Hildenbrand) [2229123] - virtio-mem: retry fake-offlining via alloc_contig_range() on ZONE_MOVABLE (David Hildenbrand) [2229123] - virtio-mem: factor out handling of fake-offline pages in memory notifier (David Hildenbrand) [2229123] - virtio-mem: factor out fake-offlining into virtio_mem_fake_offline() (David Hildenbrand) [2229123] - virtio-mem: print debug messages from virtio_mem_send_*_request() (David Hildenbrand) [2229123] - virtio-mem: factor out calculation of the bit number within the subblock bitmap (David Hildenbrand) [2229123] - virtio-mem: use "unsigned long" for nr_pages when fake onlining/offlining (David Hildenbrand) [2229123] - virtio-mem: drop rc2 in virtio_mem_mb_plug_and_add() (David Hildenbrand) [2229123] - virtio-mem: simplify MAX_ORDER - 1 / pageblock_order handling (David Hildenbrand) [2229123] - virtio-mem: more precise calculation in virtio_mem_mb_state_prepare_next_mb() (David Hildenbrand) [2229123] - virtio-mem: determine nid only once using memory_add_physaddr_to_nid() (David Hildenbrand) [2229123] - MAINTAINERS: add URL for virtio-mem (David Hildenbrand) [2229123] - virtio-mem: Constify mem_id_table (David Hildenbrand) [2229123] - kernel/resource: make iomem_resource implicit in release_mem_region_adjustable() (David Hildenbrand) [2229123] - virtio-mem: try to merge system ram resources (David Hildenbrand) [2229123] - mm/memory_hotplug: MEMHP_MERGE_RESOURCE to specify merging of System RAM resources (David Hildenbrand) [2229123] - mm/memory_hotplug: prepare passing flags to add_memory() and friends (David Hildenbrand) [2229123] - mm/memory_hotplug: guard more declarations by CONFIG_MEMORY_HOTPLUG (David Hildenbrand) [2229123] - include/linux/memory_hotplug.h: move definitions of {set,clear}_zone_contiguous (David Hildenbrand) [2229123] - kernel/resource: make release_mem_region_adjustable() never fail (David Hildenbrand) [2229123] - virtio-mem: don't special-case ZONE_MOVABLE (David Hildenbrand) [2229123] - virtio_mem: convert to LE accessors (David Hildenbrand) [2229123] - virtio_mem: correct tags for config space fields (David Hildenbrand) [2229123] - virtio-mem: Fix build error due to improper use 'select' (David Hildenbrand) [2229123] - virtio-mem: add memory via add_memory_driver_managed() (David Hildenbrand) [2229123] - virtio-mem: silence a static checker warning (David Hildenbrand) [2229123] - virtio_mem: convert device block size into 64bit (David Hildenbrand) [2229123] - virtio-mem: drop unnecessary initialization (David Hildenbrand) [2229123] - virtio-mem: Don't rely on implicit compiler padding for requests (David Hildenbrand) [2229123] - virtio-mem: Try to unplug the complete online memory block first (David Hildenbrand) [2229123] - virtio-mem: Use -ETXTBSY as error code if the device is busy (David Hildenbrand) [2229123] - virtio-mem: Unplug subblocks right-to-left (David Hildenbrand) [2229123] - virtio-mem: Drop manual check for already present memory (David Hildenbrand) [2229123] - virtio-mem: Add parent resource for all added "System RAM" (David Hildenbrand) [2229123] - virtio-mem: Better retry handling (David Hildenbrand) [2229123] - virtio-mem: Offline and remove completely unplugged memory blocks (David Hildenbrand) [2229123] - mm/memory_hotplug: Introduce offline_and_remove_memory() (David Hildenbrand) [2229123] - virtio-mem: Allow to offline partially unplugged memory blocks (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotunplug part 2 (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotunplug part 1 (David Hildenbrand) [2229123] - virtio-mem: Allow to specify an ACPI PXM as nid (David Hildenbrand) [2229123] - MAINTAINERS: Add myself as virtio-mem maintainer (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotplug (David Hildenbrand) [2229123] - Revert "drm/amd/display: edp do not add non-edid timings" (Jocelyn Falempe) [RHEL-845] - Revert "drm/amd/display: reallocate DET for dual displays with high pixel rate ratio" (Jocelyn Falempe) [RHEL-845] - drm/client: Fix memory leak in drm_client_modeset_probe (Jocelyn Falempe) [RHEL-845] - drm/client: Fix memory leak in drm_client_target_cloned (Jocelyn Falempe) [RHEL-845] - drm/atomic: Fix potential use-after-free in nonblocking commits (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: conditionally disable pcie lane/speed switching for SMU13 (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: share the code around SMU13 pcie parameters update (Jocelyn Falempe) [RHEL-845] - drm/ttm: Don't leak a resource on swapout move error (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: avoid restore process run into dead loop. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct `DMUB_FW_VERSION` macro (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix 128b132b link loss handling (Jocelyn Falempe) [RHEL-845] - drm/amd/display: add a NULL pointer check (Jocelyn Falempe) [RHEL-845] - drm/amd: Disable PSR-SU on Parade 0803 TCON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix clearing mappings for BOs that are always valid in VM (Jocelyn Falempe) [RHEL-845] - drm/amd/display: disable seamless boot if force_odm_combine is enabled (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Remove Phantom Pipe Check When Calculating K1 and K2 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix seamless odm transitions (Jocelyn Falempe) [RHEL-845] - drm/dp_mst: Clear MSG_RDY flag before sending new message (Jocelyn Falempe) [RHEL-845] - drm/atomic: Allow vblank-enabled + self-refresh "disable" (Jocelyn Falempe) [RHEL-845] - drm/amd/display: perform a bounds check before filling dirty rectangles (Jocelyn Falempe) [RHEL-845] - drm/nouveau: bring back blit subchannel for pre nv50 GPUs (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp/g94: enable HDMI (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp: fix HDMI on gt215+ (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix one wrong caching mode enum usage (Jocelyn Falempe) [RHEL-845] - drm/i915: Don't preserve dpll_hw_state for slave crtc in Bigjoiner (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: Add Powertip PH800480T013 drm_display_mode flags (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi86: Fix auxiliary bus lifetime (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: Add connector_type for innolux_at043tn24 (Jocelyn Falempe) [RHEL-845] - drm/nouveau/acr: Abort loading ACR if no firmware was found (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for jpeg_v4_0 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for jpeg_v2_6 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: separate ras irq from jpeg instance irq for UVD_POISON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Move jpeg ras block init to ras sw_init (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for vcn_v4_0 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for vcn_v2_6 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: separate ras irq from vcn instance irq for UVD_POISON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Move vcn ras block init to ras sw_init (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix usage of UMC fill record in RAS (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix memcpy() in sienna_cichlid_append_powerplay_table function. (Jocelyn Falempe) [RHEL-845] - amdgpu: validate offset_in_bo of drm_amdgpu_gem_va (Jocelyn Falempe) [RHEL-845] - drm/radeon: fix possible division-by-zero errors (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix artifacting on eDP panels when engaging freesync video mode (Jocelyn Falempe) [RHEL-845] - drm/amdkfd: Fix potential deallocation of previously deallocated memory. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix a test dml32_rq_dlg_get_rq_reg() (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix a test CalculatePrefetchSchedule() (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: fix active size for Ampire AM-480272H3TMQW-T01H (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi83: Fix enable/disable flow to meet spec (Jocelyn Falempe) [RHEL-845] - drm/bridge: anx7625: Prevent endless probe loop (Jocelyn Falempe) [RHEL-845] - drm/nouveau: dispnv50: fix missing-prototypes warning (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358767: Switch to devm MIPI-DSI helpers (Jocelyn Falempe) [RHEL-845] - drm/vkms: Fix RGB565 pixel conversion (Jocelyn Falempe) [RHEL-845] - drm: Add fixed-point helper to get rounded integer values (Jocelyn Falempe) [RHEL-845] - drm/vkms: isolate pixel conversion functionality (Jocelyn Falempe) [RHEL-845] - drm/panel: sharp-ls043t1le01: adjust mode settings (Jocelyn Falempe) [RHEL-845] - drm/vram-helper: fix function names in vram helper doc (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix THS_TRAILCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TXTAGOCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix THS_ZEROCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TCLK_TRAILCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: Add atomic_get_input_bus_fmts() implementation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TCLK_ZEROCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix PLL target frequency (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix PLL parameters computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: always enable HS video mode (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi83: Fix enable error path (Jocelyn Falempe) [RHEL-845] - drm/bridge: it6505: Move a variable assignment behind a null pointer check in receive_timing_debugfs_show() (Jocelyn Falempe) [RHEL-845] - drm/i915/guc/slpc: Provide sysfs for efficient freq (Jocelyn Falempe) [RHEL-845] - drm/i915/guc: More debug print updates - GuC SLPC (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Explicitly specify update type per plane info change (Jocelyn Falempe) [RHEL-845] - radeon: avoid double free in ci_dpm_init() (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix is_timing_changed() prototype (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Add logging for display MALL refresh setting (Jocelyn Falempe) [RHEL-845] - drm: use mgr->dev in drm_dbg_kms in drm_dp_add_payload_part2 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Ensure vmin and vmax adjust for DCE (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Validate VM ioctl flags. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Do not update DRR while BW optimizations pending (Jocelyn Falempe) [RHEL-845] - drm/radeon: fix race condition UAF in radeon_gem_set_domain_ioctl (Jocelyn Falempe) [RHEL-845] - udmabuf: revert 'Add support for mapping hugepages (v4)' (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix the system hang while disable PSR (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Add wrapper to call planes and stream update (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Use dc_update_planes_and_stream (Jocelyn Falempe) [RHEL-845] - drm/nouveau: add nv_encoder pointer check for NULL (Jocelyn Falempe) [RHEL-845] - drm/nouveau/dp: check for NULL nv_connector->native_mode (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi86: Avoid possible buffer overflow (Jocelyn Falempe) [RHEL-845] - drm/nouveau: don't detect DSM for non-NVIDIA device (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Modify indirect buffer packages for resubmission (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Implement gfx9 patch functions for resubmission (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Program gds backup address as zero if no gds allocated (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Reset CP_VMID_PREEMPT after trailing fence signaled (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add missing radeon secondary PCI ID (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: workaround for compute workload type on some skus (Jocelyn Falempe) [RHEL-845] - drm/amd: Tighten permissions on VBIOS flashing attributes (Jocelyn Falempe) [RHEL-845] - drm/amd: Make sure image is written to trigger VBIOS image update flow (Jocelyn Falempe) [RHEL-845] - drm/amd/display: edp do not add non-edid timings (Jocelyn Falempe) [RHEL-845] - drm/amd/display: limit DPIA link rate to HBR3 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: vcn_4_0 set instance 0 init sched score to 1 (Jocelyn Falempe) [RHEL-845] - Revert "drm/amdgpu: remove TOPDOWN flags when allocating VRAM in large bar system" (Jocelyn Falempe) [RHEL-845] - drm:amd:amdgpu: Fix missing buffer object unlock in failure path (Jocelyn Falempe) [RHEL-845] - drm: panel-orientation-quirks: Change Air's quirk to support Air Plus (Jocelyn Falempe) [RHEL-845] - drm/amd/display: add ODM case when looking for first split pipe (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Reduce sdp bw after urgent to 90% (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: Fix power context allocation in SMU13 (Jocelyn Falempe) [RHEL-845] - drm/amd: Disallow s0ix without BIOS support again (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: change reserved vram info print (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix xclk freq on CHIP_STONEY (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: conditionally disable pcie lane switching for some sienna_cichlid SKUs (Jocelyn Falempe) [RHEL-845] - drm/i915/gt: Use the correct error value when kernel_context() fails (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix Null pointer dereference error in amdgpu_device_recover_vram (Jocelyn Falempe) [RHEL-845] - drm/i915/selftests: Add some missing error propagation (Jocelyn Falempe) [RHEL-845] - drm/i915: Use 18 fast wake AUX sync len (Jocelyn Falempe) [RHEL-845] - drm/i915: Explain the magic numbers for AUX SYNC/precharge length (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for renoir (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for yellow carp (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk clocks levels for SMU v13.0.5 (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: resolve reboot exception for si oland (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for vangogh (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for SMU v13.0.4 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: enable tmz by default for GC 11.0.1 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Only wait for blank completion if OTG active (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: skip disabling fence driver src_irqs when device is unplugged (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: set gfx9 onwards APU atomics support to be true (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/nv: update VCN 3 max HEVC encoding resolution (Jocelyn Falempe) [RHEL-845] - drm/ast: Fix ARM compatibility (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Use the default reset when loading or reloading the driver (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix memleak in aconnector->timing_requested (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: release gpu full access after "amdgpu_device_ip_late_init" (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration (Jocelyn Falempe) [RHEL-845] - drm/i915: Disable DPLLs before disconnecting the TC PHY (Jocelyn Falempe) [RHEL-845] - drm/i915: Move shared DPLL disabling into CRTC disable hook (Jocelyn Falempe) [RHEL-845] - drm: fix drmm_mutex_init() (Jocelyn Falempe) [RHEL-845] - drm/amd/amdgpu: limit one queue per gang (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: Fix output of pp_od_clk_voltage (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: add missing NotifyPowerSource message mapping for SMU13.0.7 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: don't enable secure display on incompatible platforms (Jocelyn Falempe) [RHEL-845] - drm/radeon: reintroduce radeon_dp_work_func content (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Have Payload Properly Created After Resume (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: reserve the old gc_11_0_*_mes.bin (Jocelyn Falempe) [RHEL-845] - drm/amd/amdgpu: introduce gc_*_mes_2.bin v2 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx11: update gpu_clock_counter logic (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: refine get gpu clock counter method (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx11: Adjust gfxoff before powergating on gfx11 as well (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx10: Disable gfxoff before disabling powergating. (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gmc11: implement get_vbios_fb_size() (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: fix possible power mode mismatch between driver and PMFW (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Enable IH retry CAM on GFX9 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix sdma v4 sw fini error (Jocelyn Falempe) [RHEL-845] - drm/amd: Fix an out of bounds error in BIOS parser (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct DML calculation to follow HW SPEC (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fixed dcn30+ underflow issue (Jocelyn Falempe) [RHEL-845] - drm/amd/display: reallocate DET for dual displays with high pixel rate ratio (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Use DC_LOG_DC in the trasform pixel function (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Enable HostVM based on rIOMMU active (Jocelyn Falempe) [RHEL-845] - drm/amd/display: enable DPG when disabling plane for phantom pipe (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct DML calculation to align HW formula (Jocelyn Falempe) [RHEL-845] - drm/amd/display: populate subvp cmd info only for the top pipe (Jocelyn Falempe) [RHEL-845] - drm/displayid: add displayid_get_header() and check bounds better (Jocelyn Falempe) [RHEL-845] - drm/i915: taint kernel when force probing unsupported devices (Jocelyn Falempe) [RHEL-845] - drm/i915/dp: prevent potential div-by-zero (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix NULL ptr deref by checking new_crtc_state (Jocelyn Falempe) [RHEL-845] - drm/i915/guc: Don't capture Gen8 regs on Xe devices (Jocelyn Falempe) [RHEL-845] - drm/sched: Check scheduler work queue before calling timeout handling (Jocelyn Falempe) [RHEL-845] - drm/mipi-dsi: Set the fwnode for mipi_dsi_device (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp: More DP_RECEIVER_CAP_SIZE array fixes (Jocelyn Falempe) [RHEL-845] - drm/dsc: fix DP_DSC_MAX_BPP_DELTA_* macro values (Jocelyn Falempe) [RHEL-845] - drm/fbdev-generic: prohibit potential out-of-bounds access (Jocelyn Falempe) [RHEL-845]- x86/show_trace_log_lvl: Ensure stack pointer is aligned, again (Oleg Nesterov) [2188093] - ahci: Add support for Dell S140 and later controllers (Tomas Henzl) [2222879] - s390/time: steer clocksource on STP syncs for CLOCK_MONOTONIC (Tobias Huschle) [2177649] - memstick: r592: Fix UAF bug in r592_remove due to race condition (Wander Lairson Costa) [2215906] {CVE-2023-35825} - scsi: zfcp: Defer fc_rport blocking until after ADISC response (Tobias Huschle) [2230241] - RDMA/efa: Add EFA 0xefa2 PCI ID (Izabela Bakollari) [2170086] - RDMA/efa: Support CQ receive entries with source GID (Izabela Bakollari) [2170086] - Revert "isystem: ship and use stdarg.h" (Jocelyn Falempe) [2229185] - drm/drm_print: Use system include for (Jocelyn Falempe) [2229185] - x86/mm: Do not shuffle CPU entry areas without KASLR (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/mm: Randomize per-cpu entry area (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/kasan: Map shadow for percpu pages on demand (Rafael Aquini) [2165931] {CVE-2023-0597} - x86/pti/32: Calculate the various PTI cpu_entry_area sizes correctly, make the CPU_ENTRY_AREA_PAGES assert precise (Rafael Aquini) [2165931] {CVE-2023-0597}- cifs: fix for following DFS links where sharename is the same as prepath (Ronnie Sahlberg) [2130474] - crypto: rng - Fix lock imbalance in crypto_del_rng (Herbert Xu) [2229700] - ibmvnic: Do not reset dql stats on NON_FATAL err (Mamatha Inamdar) [2227904] - mptcp: Correct the sock::sk_lock.owned lockdep annotations (Felix Maurer) [2228890] - gpio: name PCA953x gpio chips after device name (Steve Best) [2226775] - scsi: storvsc: Handle SRB status value 0x30 (Cathy Avery) [2218133] - netfilter: nft_set_pipapo: fix improper element removal (Phil Sutter) [2225276] {CVE-2023-4004} - macvlan: add forgotten nla_policy for IFLA_MACVLAN_BC_CUTOFF (Xin Long) [2226791] - tcp: Reduce chance of collisions in inet6_hashfn(). (Felix Maurer) [2176119] {CVE-2023-1206} - ipv6: fix locking issues with loops over idev->addr_list (Jiri Benc) [2123305] - relayfs: fix out-of-bounds access in relay_file_read (Bill O'Donnell) [2215510] {CVE-2023-3268} - kernel/relay.c: fix read_pos error when multiple readers (Bill O'Donnell) [2215510] - seq_buf: Make trace_seq_putmem_hex() support data longer than 8 (Ricardo Robaina) [2212208] {CVE-2023-28772} - seq_buf: Fix overflow in seq_buf_putmem_hex() (Ricardo Robaina) [2212208] {CVE-2023-28772} - tools/power/x86/intel-speed-select: Support more than 8 sockets. (Frank Ramsay) [2212508] - platform/x86: ISST: Remove 8 socket limit (Frank Ramsay) [2212508] - media: saa7134: fix use after free bug in saa7134_finidev due to race condition (Wander Lairson Costa) [2215902] {CVE-2023-35823} - Bluetooth: btmtksdio: fix possible FW initialization failure (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: fix the reset takes too long (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: mask out interrupt status (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn QCA 0xe0d0 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add two more Bluetooth parts for WCN6855 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add protocol for MediaTek bluetooth devices(MT7922) (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn MT7922A (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: Fix kernel oops when sdio suspend. (David Marlin) [2142489 2144730 2145097] - Enable MTK BT Support for RHEL (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add a new PID/VID 13d3/3567 for MT7921 (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: support bluetooth reset mechanism (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix btmtksdio_[drv|fw]_pmctrl() (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: refactor btmtksdio_runtime_[suspend|resume]() (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix bus hang with wrong privilege (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix firmware coredump retrieve (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: Enable SCO over I2S (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: Support wake on bluetooth (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: rename btsdio_mtk_reg_read (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: enable AOSP extension for MT7921 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: enable msft opcode (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: fix resume failure (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: handle runtime pm only when sdio_func is available (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: drop the unnecessary variable created (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add support of processing firmware coredump and log (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add MT7921s Bluetooth support (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: transmit packet according to status TX_EMPTY (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: use register CRPLR to read packet length (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: update register CSDIOCSR operation (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: move interrupt service to work (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: explicitly set WHISR as write-1-clear (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add .set_bdaddr support (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksido: rely on BT_MTK module (David Marlin) [2142489 2144730 2145097] - Bluetooth: mediatek: add BT_MTK module (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Support public address configuration for MediaTek Chip. (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Support Bluetooth Reset for Mediatek Chip(MT7921) (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn Mediatek Chip (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: fix blacklist_table context (David Marlin) [2142489 2144730 2145097]- HID: betop: check shape of output reports (Desnes Nunes) [2212164] {CVE-2023-1073} - media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb() (Desnes Nunes) [2153575] {CVE-2022-45887} - selinux: make labeled NFS work when mounted before policy load (Juraj Marcin) [1753646] - Revert "xfs: expose the blockgc workqueue knobs publicly" (Bill O'Donnell) [2223260] - media: dm1105: Fix use after free bug in dm1105_remove due to race condition (Dean Nelson) [2215904] {CVE-2023-35824} - media: dvb-core: Fix kernel WARNING for blocking operation in wait_event*() (Dean Nelson) [2213142] {CVE-2023-31084} - drm/ast: report connection status on Display Port. (Jocelyn Falempe) [2189645] - drm/ast: Add BMC virtual connector (Jocelyn Falempe) [2189645] - x86/cpu/amd: Add a Zenbleed fix (Waiman Long) [2226832] {CVE-2023-20593} - x86/cpu/amd: Move the errata checking functionality up (Waiman Long) [2226832] {CVE-2023-20593} - x86/amd: Cache debug register values in percpu variables (Waiman Long) [2226832] {CVE-2023-20593} - x86/cpu: Restore AMD's DE_CFG MSR after resume (Waiman Long) [2226832] {CVE-2023-20593} - x86/sev: Change snp_guest_issue_request()'s fw_err argument (John Allen) [2216284] - virt/coco/sev-guest: Double-buffer messages (John Allen) [2216284] - virt/coco/sev-guest: Add throttling awareness (John Allen) [2216284] - virt/coco/sev-guest: Convert the sw_exit_info_2 checking to a switch-case (John Allen) [2216284] - virt/coco/sev-guest: Do some code style cleanups (John Allen) [2216284] - virt/coco/sev-guest: Carve out the request issuing logic into a helper (John Allen) [2216284] - virt/coco/sev-guest: Remove the disable_vmpck label in handle_guest_request() (John Allen) [2216284] - virt/coco/sev-guest: Simplify extended guest request handling (John Allen) [2216284] - virt/coco/sev-guest: Check SEV_SNP attribute at probe time (John Allen) [2216284] - virt/sev-guest: Return -EIO if certificate buffer is not large enough (John Allen) [2216284] - x86/sev: Mark snp_abort() noreturn (John Allen) [2216284] - s390/uv: Update query for secret-UVCs (Cédric Le Goater) [2111749] - s390/uv: replace scnprintf with sysfs_emit (Cédric Le Goater) [2111749] - s390: Add attestation query information (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'Lock Secret Store' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'List Secrets' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'Add Secret' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add info IOCTL (Cédric Le Goater) [2111749] - s390/uv: Always export uv_info (Cédric Le Goater) [2111749] - s390/kasan: support protvirt with 4-level paging (Cédric Le Goater) [2111749] - s390/protvirt: support ultravisor without secure storage limit (Cédric Le Goater) [2111749] - s390/protvirt: parse prot_virt option in the decompressor (Cédric Le Goater) [2111749] - s390/mm: avoid trimming to MAX_ORDER (Cédric Le Goater) [2111749] - net/mlx5e: TC, CT: Offload ct clear only once (Amir Tzin) [2159233] - net/mlx5: DR, Fix wrong action data allocation in decap action (Amir Tzin) [2159233] - net/mlx5: DR, Support SW created encap actions for FW table (Amir Tzin) [2159233] - net/mlx5e: TC, Cleanup ct resources for nic flow (Amir Tzin) [2159233] - net/mlx5e: TC, Add null pointer check for hardware miss support (Amir Tzin) [2159233] - RDMA/mlx5: Fix affinity assignment (Amir Tzin) [2159233] - RDMA/mlx5: Create an indirect flow table for steering anchor (Amir Tzin) [2159233] - RDMA/mlx5: Initiate dropless RQ for RAW Ethernet functions (Amir Tzin) [2159233] - net/mlx5: DR, Add missing mutex init/destroy in pattern manager (Amir Tzin) [2117777] - net/mlx5: Read embedded cpu after init bit cleared (Amir Tzin) [2159233] - net/mlx5e: Fix error handling in mlx5e_refresh_tirs (Amir Tzin) [2159233] - net/mlx5e: Don't attach netdev profile while handling internal error (Amir Tzin) [2159233] - net/mlx5: Fix post parse infra to only parse every action once (Amir Tzin) [2159233] - net/mlx5: fw_tracer, Fix event handling (Amir Tzin) [2159233] - net/mlx5: SF, Drain health before removing device (Amir Tzin) [2159233] - net/mlx5e: Consider internal buffers size in port buffer calculations (Amir Tzin) [2159233] - net/mlx5e: Prevent encap offload when neigh update is running (Amir Tzin) [2159233] - net/mlx5e: Extract remaining tunnel encap code to dedicated file (Amir Tzin) [2159233] - net/mlx5e: TC, Remove sample and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove mirror and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove tuple rewrite and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove multiple ct actions limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove special handling of CT action (Amir Tzin) [2159233] - net/mlx5e: TC, Remove CT action reordering (Amir Tzin) [2159233] - net/mlx5e: CT: Use per action stats (Amir Tzin) [2159233] - net/mlx5e: TC, Move main flow attribute cleanup to helper func (Amir Tzin) [2159233] - net/mlx5e: TC, Remove unused vf_tun variable (Amir Tzin) [2159233] - net/mlx5e: Set default can_offload action (Amir Tzin) [2159233] - net/mlx5: Devcom, serialize devcom registration (Amir Tzin) [2159233] - net/mlx5: Devcom, fix error flow in mlx5_devcom_register_device (Amir Tzin) [2159233] - net/mlx5e: Fix SQ wake logic in ptp napi_poll context (Amir Tzin) [2159233] - net/mlx5e: Fix deadlock in tc route query code (Amir Tzin) [2159233] - net/mlx5: Fix error message when failing to allocate device memory (Amir Tzin) [2159233] - net/mlx5e: Use correct encap attribute during invalidation (Amir Tzin) [2159233] - net/mlx5: DR, Check force-loopback RC QP capability independently from RoCE (Amir Tzin) [2159233] - net/mlx5: DR, Fix crc32 calculation to work on big-endian (BE) CPUs (Amir Tzin) [2159233] - net/mlx5: Handle pairing of E-switch via uplink un/load APIs (Amir Tzin) [2159233] - net/mlx5: Collect command failures data only for known commands (Amir Tzin) [2159233] - net/mlx5e: do as little as possible in napi poll when budget is 0 (Amir Tzin) [2159233] - net/mlx5: Use recovery timeout on sync reset flow (Amir Tzin) [2159233] - net/mlx5: DR, Add memory statistics for domain object (Amir Tzin) [2117777] - net/mlx5: DR, Add more info in domain dbg dump (Amir Tzin) [2117777] - net/mlx5: DR, Calculate sync threshold of each pool according to its type (Amir Tzin) [2117777] - net/mlx5: DR, Fix dumping of legacy modify_hdr in debug dump (Amir Tzin) [2117777] - net/mlx5: DR, Enable patterns and arguments for supporting devices (Amir Tzin) [2117777] - net/mlx5: DR, Add support for the pattern/arg parameters in debug dump (Amir Tzin) [2117777] - net/mlx5: DR, Modify header action of size 1 optimization (Amir Tzin) [2117777] - net/mlx5: DR, Support decap L3 action using pattern / arg mechanism (Amir Tzin) [2117777] - net/mlx5: DR, Apply new accelerated modify action and decapl3 (Amir Tzin) [2117777] - net/mlx5: DR, Add modify header argument pointer to actions attributes (Amir Tzin) [2117777] - net/mlx5: DR, Add modify header arg pool mechanism (Amir Tzin) [2117777] - net/mlx5: DR, Fix QP continuous allocation (Amir Tzin) [2117777] - net/mlx5: DR, Read ICM memory into dedicated buffer (Amir Tzin) [2117777] - net/mlx5: DR, Add support for writing modify header argument (Amir Tzin) [2117777] - net/mlx5: DR, Add create/destroy for modify-header-argument general object (Amir Tzin) [2117777] - net/mlx5: DR, Check for modify_header_argument device capabilities (Amir Tzin) [2117777] - net/mlx5: DR, Split chunk allocation to HW-dependent ways (Amir Tzin) [2117777] - net/mlx5: DR, Add cache for modify header pattern (Amir Tzin) [2117777] - net/mlx5: DR, Move ACTION_CACHE_LINE_SIZE macro to header (Amir Tzin) [2117777] - net/mlx5: DR, Add modify-header-pattern ICM pool (Amir Tzin) [2117777] - net/mlx5: DR, Prepare sending new WQE type (Amir Tzin) [2117777] - net/mlx5: Add new WQE for updating flow table (Amir Tzin) [2117777] - net/mlx5: Add mlx5_ifc bits for modify header argument (Amir Tzin) [2117777] - net/mlx5: DR, Set counter ID on the last STE for STEv1 TX (Amir Tzin) [2117777] - net/mlx5e: TC, Remove redundant parse_attr argument (Amir Tzin) [2165908] - net/mlx5e: Use a simpler comparison for uplink rep (Amir Tzin) [2165908] - net/mlx5: Lag, Add single RDMA device in multiport mode (Amir Tzin) [2165908] - net/mlx5: Lag, set different uplink vport metadata in multiport eswitch mode (Amir Tzin) [2165908] - net/mlx5: E-Switch, rename bond update function to be reused (Amir Tzin) [2165908] - net/mlx5e: TC, Add peer flow in mpesw mode (Amir Tzin) [2165908] - net/mlx5: Lag, Control MultiPort E-Switch single FDB mode (Amir Tzin) [2165908] - net/mlx5e: Add devlink fdb_large_groups parameter (Add missing Documentation) (Amir Tzin) [2165908] - SUNRPC: Fix READ_PLUS crasher (Benjamin Coddington) [2218539] - SUNRPC: Remove pointer type casts from xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - SUNRPC: Clean up xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION (Benjamin Coddington) [2218539] - NFSv4.2: fix wrong shrinker_id (Benjamin Coddington) [2218539] - svcrdma: Prevent page release when nothing was received (Benjamin Coddington) [2218539] - SUNRPC: Fix UAF in svc_tcp_listen_data_ready() (Benjamin Coddington) [2218539] - nfsd: fix double fget() bug in __write_ports_addfd() (Benjamin Coddington) [2218539] - SUNRPC: Fix trace_svc_register() call site (Benjamin Coddington) [2218539] - SUNRPC: remove the maximum number of retries in call_bind_status (Benjamin Coddington) [2218539] - NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease (Benjamin Coddington) [2218539] - NFSD: callback request does not use correct credential for AUTH_SYS (Benjamin Coddington) [2218539] - sunrpc: only free unix grouplist after RCU settles (Benjamin Coddington) [2218539] - nfsd: call op_release, even when op_func returns an error (Benjamin Coddington) [2218539] - NFSD: Avoid calling OPDESC() with ops->opnum == OP_ILLEGAL (Benjamin Coddington) [2218539] - SUNRPC: fix shutdown of NFS TCP client socket (Benjamin Coddington) [2218539] - NFSv4: Fix hangs when recovering open state after a server reboot (Benjamin Coddington) [2218539] - NFSD: Protect against filesystem freezing (Benjamin Coddington) [2218539] - nfsd: fix race to check ls_layouts (Benjamin Coddington) [2218539] - nfs4trace: fix state manager flag printing (Benjamin Coddington) [2218539] - SUNRPC: ensure the matching upcall is in-flight upon downcall (Benjamin Coddington) [2218539] - nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure (Benjamin Coddington) [2218539] - SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails (Benjamin Coddington) [2218539] - NFSv4.x: Fail client initialisation if state manager thread can't run (Benjamin Coddington) [2218539] - SUNRPC: Fix missing release socket in rpc_sockname() (Benjamin Coddington) [2218539] - xprtrdma: Fix regbuf data not freed in rpcrdma_req_create() (Benjamin Coddington) [2218539] - NFSD: Finish converting the NFSv3 GETACL result encoder (Benjamin Coddington) [2218539] - NFSD: Finish converting the NFSv2 GETACL result encoder (Benjamin Coddington) [2218539] - SUNRPC: Return true/false (not 1/0) from bool functions (Benjamin Coddington) [2218539] - NFS: Fix an Oops in nfs_d_automount() (Benjamin Coddington) [2218539] - NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn (Benjamin Coddington) [2218539] - NFSv4: Fix a credential leak in _nfs4_discover_trunking() (Benjamin Coddington) [2218539] - NFSv4.2: Fix initialisation of struct nfs4_label (Benjamin Coddington) [2218539] - NFSv4.2: Fix a memory stomp in decode_attr_security_label (Benjamin Coddington) [2218539] - NFSv4.2: Always decode the security label (Benjamin Coddington) [2218539] - NFSv4.2: Clear FATTR4_WORD2_SECURITY_LABEL when done decoding (Benjamin Coddington) [2218539] - nfs4: Fix kmemleak when allocate slot failed (Benjamin Coddington) [2218539] - NFSv4.2: Fixup CLONE dest file size for zero-length count (Benjamin Coddington) [2218539] - SUNRPC: Fix null-ptr-deref when xps sysfs alloc failed (Benjamin Coddington) [2218539] - NFSv4.1: We must always send RECLAIM_COMPLETE after a reboot (Benjamin Coddington) [2218539] - NFSv4.1: Handle RECLAIM_COMPLETE trunking errors (Benjamin Coddington) [2218539] - NFSv4: Fix a potential state reclaim deadlock (Benjamin Coddington) [2218539] - NFSv4/pNFS: Always return layout stats on layout return for flexfiles (Benjamin Coddington) [2218539] - NFSD: Fix handling of oversized NFSv4 COMPOUND requests (Benjamin Coddington) [2218539] - nfsd: Fix a memory leak in an error handling path (Benjamin Coddington) [2218539] - Revert "SUNRPC: Remove unreachable error condition" (Benjamin Coddington) [2218539] - NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0 (Benjamin Coddington) [2218539] - SUNRPC: RPC level errors should set task->tk_rpc_status (Benjamin Coddington) [2218539] - NFS: Fix another fsync() issue after a server reboot (Benjamin Coddington) [2218539] - net/sunrpc: fix potential memory leaks in rpc_sysfs_xprt_state_change() (Benjamin Coddington) [2218539] - SUNRPC: Fix xdr_encode_bool() (Benjamin Coddington) [2218539] - SUNRPC: Reinitialise the backchannel request buffers before reuse (Benjamin Coddington) [2218539] - NFSv4.1: RECLAIM_COMPLETE must handle EACCES (Benjamin Coddington) [2218539] - sunrpc: fix expiry of auth creds (Benjamin Coddington) [2218539] - pNFS/flexfiles: Report RDMA connection errors to the server (Benjamin Coddington) [2218539] - Revert "pNFS: nfs3_set_ds_client should set NFS_CS_NOPING" (Benjamin Coddington) [2218539] - SUNRPC: Fix the calculation of xdr->end in xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - pNFS: Avoid a live lock condition in pnfs_update_layout() (Benjamin Coddington) [2218539] - pNFS: Don't keep retrying if the server replied NFS4ERR_LAYOUTUNAVAILABLE (Benjamin Coddington) [2218539] - SUNRPC: Trap RDMA segment overflows (Benjamin Coddington) [2218539] - nfsd: Fix null-ptr-deref in nfsd_fill_super() (Benjamin Coddington) [2218539] - NFS: Further fixes to the writeback error handling (Benjamin Coddington) [2218539] - NFS: clean up a needless assignment in nfs_file_write() (Benjamin Coddington) [2218539] - NFS: remove redundant code in nfs_file_write() (Benjamin Coddington) [2218539] - NFS: Add support for eager writes (Benjamin Coddington) [2218539] - NFS: 'flags' field should be unsigned in struct nfs_server (Benjamin Coddington) [2218539] - NFSv4/pNFS: Do not fail I/O when we fail to allocate the pNFS layout (Benjamin Coddington) [2218539] - NFS: Memory allocation failures are not server fatal errors (Benjamin Coddington) [2218539] - SUNRPC: Ensure that the gssproxy client can start in a connected state (Benjamin Coddington) [2218539] - Revert "SUNRPC: Ensure gss-proxy connects on setup" (Benjamin Coddington) [2218539] - SUNRPC: Ensure gss-proxy connects on setup (Benjamin Coddington) [2218539] - NFSv4: Don't invalidate inode attributes on delegation return (Benjamin Coddington) [2218539] - SUNRPC: svc_tcp_sendmsg() should handle errors from xdr_alloc_bvec() (Benjamin Coddington) [2218539] - SUNRPC: Handle low memory situations in call_status() (Benjamin Coddington) [2218539] - SUNRPC: Handle ENOMEM in call_transmit_status() (Benjamin Coddington) [2218539] - SUNRPC: Fix the svc_deferred_event trace class (Benjamin Coddington) [2218539] - NFSv4: fix open failure with O_ACCMODE flag (Benjamin Coddington) [2218539] - NFSv4/pNFS: Fix another issue with a list iterator pointing to the head (Benjamin Coddington) [2218539] - NFSv4.1: Fix uninitialised variable in devicenotify (Benjamin Coddington) [2218539] - NFSv4.1: don't retry BIND_CONN_TO_SESSION on session error (Benjamin Coddington) [2218539] - NFS: remove unneeded check in decode_devicenotify_args() (Benjamin Coddington) [2218539] - NFS: NFSv2/v3 clients should never be setting NFS_CAP_XATTR (Benjamin Coddington) [2218539] - NFS: Do not report writeback errors in nfs_getattr() (Benjamin Coddington) [2218539] - NFS: Remove an incorrect revalidation in nfs4_update_changeattr_locked() (Benjamin Coddington) [2218539] - nfsd: nfsd4_setclientid_confirm mistakenly expires confirmed client. (Benjamin Coddington) [2218539] - SUNRPC: Fix sockaddr handling in svcsock_accept_class trace points (Benjamin Coddington) [2218539] - SUNRPC: Fix sockaddr handling in the svc_xprt_create_error trace point (Benjamin Coddington) [2218539] - NFSD: Fix zero-length NFSv3 WRITEs (Benjamin Coddington) [2218539] - NFS: Ensure the server has an up to date ctime before renaming (Benjamin Coddington) [2218539] - NFS: Ensure the server has an up to date ctime before hardlinking (Benjamin Coddington) [2218539]- Revert "NFSv4: Retry LOCK on OLD_STATEID during delegation return" (Benjamin Coddington) [2217658] - powerpc/pseries/vas: Hold mmap_mutex after mmap lock during window close (Mamatha Inamdar) [2224883] - KVM: x86/mmu: Fix race condition in direct_page_fault (Jon Maloy) [2179929] {CVE-2022-45869} - x86/speculation: Allow enabling STIBP with legacy IBRS (Ricardo Robaina) [2187268] {CVE-2023-1998} - ACPI: sleep: Avoid breaking S3 wakeup due to might_sleep() (Mark Langsdorf) [2215625] - locking/semaphore: Add might_sleep() to down_*() family (Mark Langsdorf) [2215625] - perf stat: Support hybrid --topdown option (Michael Petlan) [2088833] - i40e: Wait for pending VF reset in VF set callbacks (Ivan Vecera) [2203921] - i40e: Add helper for VF inited state check with timeout (Ivan Vecera) [2203921] - tracing: Have filter accept "common_cpu" to be consistent (Jerome Marchand) [2210711] - tracing/histogram: Fix sorting on old "cpu" value (Jerome Marchand) [2210711] - tracing: Dump stacktrace trigger to the corresponding instance (Jerome Marchand) [2210711] - tracing/histogram: Rename "cpu" to "common_cpu" (Jerome Marchand) [2210711] - docs: histogram.txt: convert it to ReST file format (Jerome Marchand) [2210711] - bonding: add software tx timestamping support (Hangbin Liu) [2181339] - bonding: fix missed rcu protection (Hangbin Liu) [2181339] - bonding: use rcu_dereference_rtnl when get bonding active slave (Hangbin Liu) [2181339] - Bonding: return HWTSTAMP_FLAG_BONDED_PHC_INDEX to notify user space (Hangbin Liu) [2181339] - Bonding: force user to add HWTSTAMP_FLAG_BONDED_PHC_INDEX when get/set HWTSTAMP (Hangbin Liu) [2181339] - bond: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to active device (Hangbin Liu) [2181339] - mm/page_alloc: fix incorrect PGFREE and PGALLOC for high-order page (Chris von Recklinghausen) [2100592] - mm/page_alloc: check high-order pages for corruption during PCP operations (Chris von Recklinghausen) [2100592] - mm/page_alloc: do not prefetch buddies during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: free pages in a single pass during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: drain the requested list first during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: simplify how many pages are selected per pcp list during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: track range of active PCP lists during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: fetch the correct pcp buddy during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: allow high-order pages to be stored on the per-cpu lists (Chris von Recklinghausen) [2100592] - mm/page_alloc: move free_the_page (Chris von Recklinghausen) [2100592] - mm,memory_hotplug: factor out adjusting present pages into adjust_present_page_count() (Chris von Recklinghausen) [2100592] - mm, meminit: recalculate pcpu batch and high limits after init completes (Chris von Recklinghausen) [2100592] - compiler_attributes.h: Add kABI workaround (Waiman Long) [2215801] - linux/compiler-clang.h: define HAVE_BUILTIN_BSWAP* (Waiman Long) [2215801] - compiler.h: fix barrier_data() on clang (Waiman Long) [2215801] - compiler_types.h: Add __no_sanitize_{address,undefined} to noinstr (Waiman Long) [2215801] - x86, kcsan: Add __no_kcsan to noinstr (Waiman Long) [2215801] - kcsan: Add __no_kcsan function attribute (Waiman Long) [2215801] - kcsan: Reorganize compiler.h (Waiman Long) [2215801] - include/linux/compiler*.h: fix OPTIMIZER_HIDE_VAR (Waiman Long) [2215801] - include/linux/compiler_types.h: don't pollute userspace with macro definitions (Waiman Long) [2215801] - include/linux/compiler*.h: define asm_volatile_goto (Waiman Long) [2215801] - Compiler Attributes: use feature checks instead of version checks (Waiman Long) [2215801] - Compiler Attributes: remove unneeded sparse (__CHECKER__) tests (Waiman Long) [2215801] - Compiler Attributes: homogenize __must_be_array (Waiman Long) [2215801] - Compiler Attributes: remove unneeded tests (Waiman Long) [2215801] - Compiler Attributes: always use the extra-underscores syntax (Waiman Long) [2215801] - Compiler Attributes: remove unused attributes (Waiman Long) [2215801] - Compiler Attributes: naked can be shared (Waiman Long) [2215801] - Compiler Attributes: naked was fixed in gcc 4.6 (Waiman Long) [2215801] - include/linux/compiler*.h: make compiler-*.h mutually exclusive (Waiman Long) [2215801] - Raise the minimum required gcc version to 4.6 (Waiman Long) [2215801] - deprecate the '__deprecated' attribute warnings entirely and for good (Waiman Long) [2215801]- libceph: harden msgr2.1 frame segment length checks (Ilya Dryomov) [2222256] - netfilter: nf_conntrack_netlink: need to hold rcu readlock when doing l4proto lookup (Florian Westphal) [2188230] - net/mlx5: Expose steering dropped packets counter (Amir Tzin) [2223198] - net/mlx5: Expose vnic diagnostic counters for eswitch managed vports (Amir Tzin) [2223198] - igbvf: add PCI reset handler functions (Corinna Vinschen) [2153365] - igbvf: Regard vf reset nack as success (Corinna Vinschen) [2153365] - intel/igbvf: free irq on the error path in igbvf_request_msix() (Corinna Vinschen) [2153365] - Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp} (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix build errors in some archs (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm regression (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del() (Ricardo Robaina) [2139617] {CVE-2022-3640} - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_chan_put (Ricardo Robaina) [2139617] {CVE-2022-3640} - iavf: fix reset task race with iavf_remove() (Petr Oros) [2223604] - iavf: fix a deadlock caused by rtnl and driver's lock circular dependencies (Petr Oros) [2223604] - Revert "iavf: Do not restart Tx queues after reset task failure" (Petr Oros) [2223604] - Revert "iavf: Detach device during reset task" (Petr Oros) [2223604] - iavf: Wait for reset in callbacks which trigger it (Petr Oros) [2223604] - iavf: use internal state to free traffic IRQs (Petr Oros) [2223604] - iavf: Fix out-of-bounds when setting channels on remove (Petr Oros) [2223604] - iavf: Fix use-after-free in free_netdev (Petr Oros) [2223604] - iavf: make functions static where possible (Petr Oros) [2223604] - iavf: fix err handling for MAC replace (Petr Oros) [2223604] - iavf: remove some unused functions and pointless wrappers (Petr Oros) [2223604] - iavf: remove mask from iavf_irq_enable_queues() (Petr Oros) [2223604] - iavf: send VLAN offloading caps once after VFR (Petr Oros) [2223604] - cpufreq: Fix parameter in parse_perf_domain() (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: remove MODULE_LICENSE in non-modules (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Adjust balance_performance EPP for Sapphire Rapids (Mark Langsdorf) [2181273] - cpufreq: Make kobj_type structure constant (Mark Langsdorf) [2181273] - driver core: make kobj_type constant. (Mark Langsdorf) [2181273] - cpufreq: Make cpufreq_unregister_driver() return void (Mark Langsdorf) [2181273] - drivers/cpufreq: Remove "select SRCU" (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Drop ACPI _PSS states table patching (Mark Langsdorf) [2181273] - cpufreq: stats: Convert to use sysfs_emit_at() API (Mark Langsdorf) [2181273] - cpufreq: Init completion before kobject_init_and_add() (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Allow EPP 0x80 setting by the firmware (Mark Langsdorf) [2181273] - cpufreq: ACPI: Use str_enabled_disabled() helper (Mark Langsdorf) [2181273] - cpufreq: Generalize of_perf_domain_get_sharing_cpumask phandle format (Mark Langsdorf) [2181273] - cpufreq: Add of_perf_domain_get_sharing_cpumask (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Read all MSRs on the target CPU (Mark Langsdorf) [2181273] - ACPI: CPPC: Add ACPI disabled check to acpi_cpc_valid() (Mark Langsdorf) [2181273]- gfs2: Don't deref jdesc in evict (Bob Peterson) [2214356] {CVE-2023-3212} - md/raid5: Don't do accounting for non-align read io (Nigel Croxon) [2183033] - powerpc: Don't select HAVE_IRQ_EXIT_ON_IRQ_STACK (Mamatha Inamdar) [2218348] - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION (Benjamin Coddington) [2217963] - proc: Use PIDTYPE_TGID in next_tgid (Brian Foster) [2047252] - netfilter: nf_tables: unbind non-anonymous set if rule construction fails (Phil Sutter) [2214963] {CVE-2023-3390} - netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain (Phil Sutter) [2214963] {CVE-2023-3390} - netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE (Phil Sutter) [2214963] {CVE-2023-3390} - fanotify,audit: Allow audit to use the full permission event response (Richard Guy Briggs) [2055328] - fanotify: define struct members to hold response decision context (Richard Guy Briggs) [2055328] - fanotify: Ensure consistent variable type for response (Richard Guy Briggs) [2055328] - RDMA/mlx4: Prevent shift wrapping in set_user_sq_size() (Amir Tzin) [2166019] - RDMA/mlx: Calling qp event handler in workqueue context (mlx4 hunks only) (Amir Tzin) [2166019] - net/mlx4: small optimization in mlx4_en_xmit() (Amir Tzin) [2166019] - net/mlx4: rename two constants (Amir Tzin) [2166019] - RDMA/mlx4: Remove NULL check before dev_{put, hold} (Amir Tzin) [2166019] - ptp: mlx4: convert to .adjfine and adjust_by_scaled_ppm (Amir Tzin) [2166019] - mlx4: Do type_clear() for devlink ports when type_set() was called previously (Amir Tzin) [2166019] - cgroup: Reorganize css_set_lock and kernfs path processing (Waiman Long) [2193485] - cgroup: Fix build failure when CONFIG_SHRINKER_DEBUG (Waiman Long) [2193485] - cgroup: fix missing cpus_read_{lock,unlock}() in cgroup_transfer_tasks() (Waiman Long) [2193485] - cgroup: Make cgroup_get_from_id() prettier (Waiman Long) [2193485] - cgroup: remove obsolete comment on cgroup_on_dfl() (Waiman Long) [2193485] - cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach() (Waiman Long) [2193485] - kselftests: cgroup: update kmem test precision tolerance (Waiman Long) [2193485] - cgroup/cpuset: Improve cpuset_css_alloc() description (Waiman Long) [2193485] - selftests: cgroup: fix unsigned comparison with less than zero (Waiman Long) [2193485] - device_cgroup: Roll back to original exceptions after copy failure (Waiman Long) [2193485] - cgroup/cpuset: use hotplug_memory_notifier() directly (Waiman Long) [2193485] - mm: memcontrol: don't allocate cgroup swap arrays when memcg is disabled (Waiman Long) [2193485] - cgroup: cgroup_get_from_id() must check the looked-up kn is a directory (Waiman Long) [2193485] - sched/psi: Don't create cgroup PSI files when psi_disabled (Waiman Long) [2193485] - cgroup: Homogenize cgroup_get_from_id() return value (Waiman Long) [2193485] - cgroup: cgroup: Honor caller's cgroup NS when resolving cgroup id (Waiman Long) [2193485] - cgroup: Honor caller's cgroup NS when resolving path (Waiman Long) [2193485] - mm: memcontrol: introduce mem_cgroup_ino() and mem_cgroup_get_from_ino() (Waiman Long) [2193485] - cgroup: Use separate src/dst nodes when preloading css_sets for migration (Waiman Long) [2193485] - cgroup.c: add helper __cset_cgroup_from_root to cleanup duplicated codes (Waiman Long) [2193485] - cgroup/rstat: check updated_next only for root (Waiman Long) [2193485] - cgroup: rstat: explicitly put loop variant in while (Waiman Long) [2193485] - cgroup: return early if it is already on preloaded list (Waiman Long) [2193485] - cgroup: Trace event cgroup id fields should be u64 (Waiman Long) [2193485] - cgroup: fix a typo in comment (Waiman Long) [2193485] - hugetlb_cgroup: remove unused hugetlb_cgroup_from_counter macro (Waiman Long) [2193485] - cgroup: Make rebind_subsystems() disable v2 controllers all at once (Waiman Long) [2193485] - cgroup: Avoid compiler warnings with no subsystems (Waiman Long) [2193485] - cgroup: Fix kernel-doc (Waiman Long) [2193485] - kernfs: use 64bit inos if ino_t is 64bit (Waiman Long) [2193485] - kernfs: implement custom exportfs ops and fid type (Waiman Long) [2193485] - kernfs: combine ino/id lookup functions into kernfs_find_and_get_node_by_id() (Waiman Long) [2193485] - kernfs: kernfs_find_and_get_node_by_ino() should only look up activated nodes (Waiman Long) [2193485] - kernfs: use dumber locking for kernfs_find_and_get_node_by_ino() (Waiman Long) [2193485] - kernfs: fix ino wrap-around detection (Waiman Long) [2193485] - ice: prevent NULL pointer deref during reload (Petr Oros) [2153356] - ice: Unregister netdev and devlink_port only once (Petr Oros) [2153356] - ice: Fix ice module unload (Petr Oros) [2153356] - ice: Fix tx queue rate limit when TCs are configured (Petr Oros) [2153356] - ice: Fix max_rate check while configuring TX rate limits (Petr Oros) [2153356] - ice: Fix XDP memory leak when NIC is brought up and down (Petr Oros) [2153356] - ice: remove comment about not supporting driver reinit (Petr Oros) [2153356] - ice: block LAN in case of VF to VF offload (Petr Oros) [2153356] - ice: Fix stats after PF reset (Petr Oros) [2153356] - ice: Reset FDIR counter in FDIR init stage (Petr Oros) [2153356] - ice: fix wrong fallback logic for FDIR (Petr Oros) [2153356] - ice: add profile conflict check for AVF FDIR (Petr Oros) [2153356] - ice: Fix ice_cfg_rdma_fltr() to only update relevant fields (Petr Oros) [2153356] - ice: remove filters only if VSI is deleted (Petr Oros) [2153356] - ice: check if VF exists before mode check (Petr Oros) [2153356] - ice: xsk: disable txq irq before flushing hw (Petr Oros) [2153356] - ice: avoid bonding causing auxiliary plug/unplug under RTNL lock (Petr Oros) [2153356] - ethernet: ice: avoid gcc-9 integer overflow warning (Petr Oros) [2153356] - ice: don't ignore return codes in VSI related code (Petr Oros) [2153356] - ice: Fix DSCP PFC TLV creation (Petr Oros) [2153356] - ice: copy last block omitted in ice_get_module_eeprom() (Petr Oros) [2153356] - ice: properly alloc ICE_VSI_LB (Petr Oros) [2153356] - ice: xsk: Fix cleaning of XDP_TX frames (Petr Oros) [2153356] - ice: Mention CEE DCBX in code comment (Petr Oros) [2153356] - ice: Change ice_vsi_realloc_stat_arrays() to void (Petr Oros) [2153356] - ice: Add GPIO pin support for E823 products (Petr Oros) [2153356] - ice: switch: fix potential memleak in ice_add_adv_recipe() (Petr Oros) [2153356] - ice: Fix off by one in ice_tc_forward_to_queue() (Petr Oros) [2153356] - ice: Fix disabling Rx VLAN filtering with port VLAN enabled (Petr Oros) [2153356] - ice: fix out-of-bounds KASAN warning in virtchnl (Petr Oros) [2153356] - ice: Do not use WQ_MEM_RECLAIM flag for workqueue (Petr Oros) [2153356] - ice: remove unnecessary virtchnl_ether_addr struct use (Petr Oros) [2153356] - ice: introduce .irq_close VF operation (Petr Oros) [2153356] - ice: introduce clear_reset_state operation (Petr Oros) [2153356] - ice: convert vf_ops .vsi_rebuild to .create_vsi (Petr Oros) [2153356] - ice: introduce ice_vf_init_host_cfg function (Petr Oros) [2153356] - ice: add a function to initialize vf entry (Petr Oros) [2153356] - ice: Pull common tasks into ice_vf_post_vsi_rebuild (Petr Oros) [2153356] - ice: move ice_vf_vsi_release into ice_vf_lib.c (Petr Oros) [2153356] - ice: move vsi_type assignment from ice_vsi_alloc to ice_vsi_cfg (Petr Oros) [2153356] - ice: refactor VSI setup to use parameter structure (Petr Oros) [2153356] - ice: drop unnecessary VF parameter from several VSI functions (Petr Oros) [2153356] - ice: fix function comment referring to ice_vsi_alloc (Petr Oros) [2153356] - ice: Add more usage of existing function ice_get_vf_vsi(vf) (Petr Oros) [2153356] - ice: implement devlink reinit action (Petr Oros) [2153356] - ice: update VSI instead of init in some case (Petr Oros) [2153356] - ice: move VSI delete outside deconfig (Petr Oros) [2153356] - ice: sync netdev filters after clearing VSI (Petr Oros) [2153356] - ice: split probe into smaller functions (Petr Oros) [2153356] - ice: stop hard coding the ICE_VSI_CTRL location (Petr Oros) [2153356] - ice: split ice_vsi_setup into smaller functions (Petr Oros) [2153356] - ice: cleanup in VSI config/deconfig code (Petr Oros) [2153356] - ice: alloc id for RDMA using xa_array (Petr Oros) [2153356] - ice: move RDMA init to ice_idc.c (Petr Oros) [2153356] - ice: Prevent set_channel from changing queues while RDMA active (Petr Oros) [2153356] - ice: Remove redundant pci_enable_pcie_error_reporting() (Petr Oros) [2153356] - ice: move devlink port creation/deletion (Petr Oros) [2153356] - ice: Remove excess space (Petr Oros) [2153356] - ice: Introduce local var for readability (Petr Oros) [2153356] - ice: Match parameter name for ice_cfg_phy_fc() (Petr Oros) [2153356] - ice: Explicitly return 0 (Petr Oros) [2153356] - ice: Reduce scope of variables (Petr Oros) [2153356] - ice: Move support DDP code out of ice_flex_pipe.c (Petr Oros) [2153356] - ice: Remove cppcheck suppressions (Petr Oros) [2153356] - ice: combine cases in ice_ksettings_find_adv_link_speed() (Petr Oros) [2153356] - ice: Add support for 100G KR2/CR2/SR2 link reporting (Petr Oros) [2153356] - ice: add missing checks for PF vsi type (Petr Oros) [2153356] - ice: remove redundant non-null check in ice_setup_pf_sw() (Petr Oros) [2153356] - ice: restrict PTP HW clock freq adjustments to 100, 000, 000 PPB (Petr Oros) [2153356] - ice: Support drop action (Petr Oros) [2153356] - ice: Handle LLDP MIB Pending change (Petr Oros) [2153356] - ice: Add 'Execute Pending LLDP MIB' Admin Queue command (Petr Oros) [2153356] - ice: xsk: do not use xdp_return_frame() on tx_buf->raw_buf (Petr Oros) [2153356] - ice: Use ICE_RLAN_BASE_S instead of magic number (Petr Oros) [2153356] - ice: Accumulate ring statistics over reset (Petr Oros) [2153356] - ice: Accumulate HW and Netdev statistics over reset (Petr Oros) [2153356] - ice: Remove and replace ice speed defines with ethtool.h versions (Petr Oros) [2153356] - ice: Check for PTP HW lock more frequently (Petr Oros) [2153356] - ice: Fix spurious interrupt during removal of trusted VF (Petr Oros) [2153356] - ice: Enable RX queue selection using skbedit action (Petr Oros) [2153356] - ice: Add support for VLAN priority filters in switchdev (Petr Oros) [2153356] - ice: support features on new E810T variants (Petr Oros) [2153356] - ice: xsk: drop power of 2 ring size restriction for AF_XDP (Petr Oros) [2153356] - ice: xsk: change batched Tx descriptor cleaning (Petr Oros) [2153356] - ice: reorder PF/representor devlink port register/unregister flows (Petr Oros) [2153356] - ice: Add L2TPv3 hardware offload support (Petr Oros) [2153356] - ice: Simplify memory allocation in ice_sched_init_port() (Petr Oros) [2153356] - ice: switch: Simplify memory allocation (Petr Oros) [2153356] - ice: add helper function to check FW API version (Petr Oros) [2153356] - ice: Print human-friendly PHY types (Petr Oros) [2153356] - ice: Add support for ip TTL & ToS offload (Petr Oros) [2153356] - ice: xsk: use Rx ring's XDP ring when picking NAPI context (Petr Oros) [2153356] - ice: xsk: prohibit usage of non-balanced queue id (Petr Oros) [2153356] - ice: remove non-inclusive language (Petr Oros) [2153356] - ice: Remove ucast_shared (Petr Oros) [2153356] - ice: Allow 100M speeds for some devices (Petr Oros) [2153356] - ice: Implement FCS/CRC and VLAN stripping co-existence policy (Petr Oros) [2153356] - ice: Implement control of FCS/CRC stripping (Petr Oros) [2153356] - ice: initialize cached_phctime when creating Rx rings (Petr Oros) [2153356] - ice: set tx_tstamps when creating new Tx rings via ethtool (Petr Oros) [2153356] - ice: link representors to PCI device (Petr Oros) [2153356] - ice, xsk: Avoid refilling single Rx descriptors (Petr Oros) [2153356] - ice, xsk: Diversify return values from xsk_wakeup call paths (Petr Oros) [2153356] - ice, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Petr Oros) [2153356] - ice, xsk: Decorate ICE_XDP_REDIR with likely() (Petr Oros) [2153356] - ice: xsk: check if Rx ring was filled up to the end (Petr Oros) [2153356] - ice: xsk: Eliminate unnecessary loop iteration (Petr Oros) [2153356] - ice: xsk: fix GCC version checking against pragma unroll presence (Petr Oros) [2153356] - ice: xsk: Borrow xdp_tx_active logic from i40e (Petr Oros) [2153356] - ice: xsk: Improve AF_XDP ZC Tx and use batching API (Petr Oros) [2153356] - ice: xsk: Avoid potential dead AF_XDP Tx processing (Petr Oros) [2153356] - ice: Make Tx threshold dependent on ring length (Petr Oros) [2153356] - ice: xsk: Handle SW XDP ring wrap and bump tail more often (Petr Oros) [2153356] - ice: xsk: Force rings to be sized to power of 2 (Petr Oros) [2153356] - ice: xsk: do not clear status_error0 for ntu + nb_buffs descriptor (Petr Oros) [2153356] - ice: remove dead store on XSK hotpath (Petr Oros) [2153356] - ice: xsk: clear status_error0 for each allocated desc (Petr Oros) [2153356] - intel: Simplify bool conversion (Petr Oros) [2153356] - ice: Use the xsk batched rx allocation interface (Petr Oros) [2153356]- blk-cgroup: Reinit blkg_iostat_set after clearing in blkcg_reset_stats() (Waiman Long) [2212032] - ipvlan:Fix out-of-bounds caused by unclear skb->cb (Davide Caratti) [2218676] {CVE-2023-3090} - net: openvswitch: fix upcall counter access before allocation (Eelco Chaudron) [2214262] - netfilter: Drop fragmented ndisc packets assembled in netfilter (Phil Sutter) [2217795] - netfilter: conntrack: gre: don't set assured flag for clash entries (Florian Westphal) [2219357] - netfilter: conntrack: allow insertion clash of gre protocol (Florian Westphal) [2219357] - sfc: use budget for TX completions (Íñigo Huguet) [2179558] - sfc: fix XDP queues mode with legacy IRQ (Íñigo Huguet) [2214589] - memstick: r592: Fix UAF bug in r592_remove due to race condition (Ricardo Robaina) [2213205] {CVE-2023-3141} - audit: avoid missing-prototype warnings (Richard Guy Briggs) [2175322] - audit: update the mailing list in MAINTAINERS (Richard Guy Briggs) [2175322] - audit: fix undefined behavior in bit shift for AUDIT_BIT (Richard Guy Briggs) [2175322] - fork: Use IS_ENABLED() in account_kernel_stack() (Valentin Schneider) [2131754] - fork: Only cache the VMAP stack in finish_task_switch() (Valentin Schneider) [2131754] - fork: Move task stack accounting to do_exit() (Valentin Schneider) [2131754] - fork: Move memcg_charge_kernel_stack() into CONFIG_VMAP_STACK (Valentin Schneider) [2131754] - fork: Don't assign the stack pointer in dup_task_struct() (Valentin Schneider) [2131754] - fork, IA64: Provide alloc_thread_stack_node() for IA64 (Valentin Schneider) [2131754] - fork: Duplicate task_struct before stack allocation (Valentin Schneider) [2131754] - fork: Redo ifdefs around task stack handling (Valentin Schneider) [2131754] - fork: fix some -Wmissing-prototypes warnings (Valentin Schneider) [2131754] - igb: fix nvm.ops.read() error handling (Corinna Vinschen) [2153360] - igb: Fix extts capture value format for 82580/i354/i350 (Corinna Vinschen) [2153360] - igb: Define igb_pm_ops conditionally on CONFIG_PM (Corinna Vinschen) [2153360] - igb: fix bit_shift to be in [1..8] range (Corinna Vinschen) [2153360] - igb: refactor igb_ptp_adjfine_82580 to use diff_by_scaled_ppm (Corinna Vinschen) [2153360] - igb: revert rtnl_lock() that causes deadlock (Corinna Vinschen) [2153360] - igb: Remove unnecessary aer.h include (Corinna Vinschen) [2153360] - igb: Fix PPS input and output using 3rd and 4th SDP (Corinna Vinschen) [2153360] - igb: Remove redundant pci_enable_pcie_error_reporting() (Corinna Vinschen) [2153360] - igb: Add lock to avoid data race (Corinna Vinschen) [2153360] - x86/cpu: Include the header of init_ia32_feat_ctl()'s prototype (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/pm: Fix false positive kmemleak report in msr_build_context() (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/speculation: Restore speculation related MSRs during S3 resume (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: remove leftover comment for filechk utility (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/cpu: Reinitialize IA32_FEAT_CTL MSR on BSP during wakeup (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/rdrand: Sanity-check RDRAND output (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: change filechk to surround the given command with { } (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - firmware: refactor firmware/Makefile (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: remove redundant 'set -e' from filechk_offsets (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: do not redirect the first prerequisite for filechk (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - kbuild: move bin2c back to scripts/ from scripts/basic/ (Chris von Recklinghausen) [2181906] {CVE-2023-1637} - perf/x86/ibs: Add new IBS register bits into header (Michael Petlan) [2088767] - perf tool x86: Fix perf_env memory leak (Michael Petlan) [2088767] - perf tool x86: Consolidate is_amd check into single function (Michael Petlan) [2088767] - perf env: Add perf_env__cpuid, perf_env__{nr_}pmu_mappings (Michael Petlan) [2088767] - perf/x86/amd/uncore: Fix memory leak for events array (Michael Petlan) [2088767] - perf script: Add missing fields in usage hint (Michael Petlan) [2086837] - perf mem: Print "LFB/MAB" for PERF_MEM_LVLNUM_LFB (Michael Petlan) [2088767] - perf mem/c2c: Avoid printing empty lines for unsupported events (Michael Petlan) [2088767] - perf mem/c2c: Add load store event mappings for AMD (Michael Petlan) [2088767] - perf mem/c2c: Set PERF_SAMPLE_WEIGHT for LOAD_STORE events (Michael Petlan) [2088767] - perf mem: Add support for printing PERF_MEM_LVLNUM_{CXL|IO} (Michael Petlan) [2088767] - perf/mem: Rename PERF_MEM_LVLNUM_EXTN_MEM to PERF_MEM_LVLNUM_CXL (Michael Petlan) [2088767] - perf amd ibs: Sync arch/x86/include/asm/amd-ibs.h header with the kernel (Michael Petlan) [2088767] - tools headers UAPI: Sync include/uapi/linux/perf_event.h header with the kernel (Michael Petlan) [2088767] - perf/uapi: Define PERF_MEM_SNOOPX_PEER in kernel header file (Michael Petlan) [2088767] - perf: correct SNOOPX field offset (Michael Petlan) [2088767] - perf tools: Sync addition of PERF_MEM_SNOOPX_PEER (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_PHY_ADDR (Michael Petlan) [2088767] - perf: Add sample_flags to indicate the PMU-filled sample data (Michael Petlan) [2086837] - perf/x86/amd: Support PERF_SAMPLE_ADDR (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_{WEIGHT|WEIGHT_STRUCT} (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_DATA_SRC (Michael Petlan) [2088767] - perf/x86/amd: Add IBS OP_DATA2 DataSrc bit definitions (Michael Petlan) [2088767] - perf/mem: Introduce PERF_MEM_LVLNUM_{EXTN_MEM|IO} (Michael Petlan) [2088767] - perf/x86/amd/uncore: Add PerfMonV2 RDPMC assignments (Michael Petlan) [2086837] - perf/x86/amd/uncore: Add PerfMonV2 DF event format (Michael Petlan) [2086837] - perf/x86/amd/uncore: Detect available DF counters (Michael Petlan) [2086837] - perf/x86/amd/uncore: Use attr_update for format attributes (Michael Petlan) [2086837] - perf/x86/amd/uncore: Use dynamic events array (Michael Petlan) [2086837] - tracing/osnoise: set several trace_osnoise.c variables storage-class-specifier to static (John Kacur) [2175293] - tracing/osnoise: No need for schedule_hrtimeout range (John Kacur) [2175293] - tracing/osnoise: Use built-in RCU list checking (John Kacur) [2175293] - tracing/osnoise: Add preempt and/or irq disabled options (John Kacur) [2175293] - tracing/osnoise: Add PANIC_ON_STOP option (John Kacur) [2175293] - tracing/osnoise: Make osnoise_options static (John Kacur) [2175293] - tracing/osnoise: Add OSNOISE_WORKLOAD option (John Kacur) [2175293] - tracing/osnoise: Add osnoise/options file (John Kacur) [2175293] - tracing/osnoise: Fix duration type (John Kacur) [2175293] - tracing/osnoise: Fix possible recursive locking in stop_per_cpu_kthreads (John Kacur) [2175293] - tracing/timerlat: Do not wakeup the thread if the trace stops at the IRQ (John Kacur) [2175293] - tracing/timerlat: Print stacktrace in the IRQ handler if needed (John Kacur) [2175293] - tracing/timerlat: Notify IRQ new max latency only if stop tracing is set (John Kacur) [2175293] - drivers: base: cacheinfo: Fix shared_cpu_map changes in event of CPU hotplug (Mark Lansgdorf) [2178301] - drivers: base: cacheinfo: Update cpu_map_populated during CPU Hotplug (Mark Lansgdorf) [2178301] - driver core: bus: move documentation for lock_key to proper location. (Mark Langsdorf) [2178301] - cacheinfo: Check cache properties are present in DT (Mark Langsdorf) [2178301] - cacheinfo: Fix LLC is not exported through sysfs (Mark Langsdorf) [2178301] - of: Add of_property_present() helper (Mark Langsdorf) [2178301] - driver core: fw_devlink: Print full path and name of fwnode (Mark Langsdorf) [2178301] - driver core: fw_devlink: Avoid spurious error message (Mark Langsdorf) [2178301] - driver core: bus: Handle early calls to bus_to_subsys() (Mark Langsdorf) [2178301] - driver core: class: move EXPORT_SYMBOL_GPL() lines to the correct place (Mark Langsdorf) [2178301] - driver core: cpu: don't hand-override the uevent bus_type callback. (Mark Langsdorf) [2178301] - driver core: bus: update my copyright notice (Mark Langsdorf) [2178301] - driver core: bus: add bus_get_dev_root() function (Mark Langsdorf) [2178301] - driver core: bus: constify bus_unregister() (Mark Langsdorf) [2178301] - driver core: bus: constify some internal functions (Mark Langsdorf) [2178301] - driver core: bus: constify bus_get_kset() (Mark Langsdorf) [2178301] - driver core: bus: constify bus_register/unregister_notifier() (Mark Langsdorf) [2178301] - driver core: create bus_is_registered() (Mark Langsdorf) [2178301] - driver core: bus: clean up driver_find() (Mark Langsdorf) [2178301] - driver core: move driver_find() to bus.c (Mark Langsdorf) [2178301] - driver core: bus: clean up bus_sort_breadthfirst() (Mark Langsdorf) [2178301] - driver core: bus: bus iterator cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_add/remove_driver() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_register/unregister_notifier() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_get_kset() cleanup (Mark Langsdorf) [2178301] - driver core: bus: subsys_interface_register/unregister() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_register/unregister() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_add/probe/remove_device() cleanups (Mark Langsdorf) [2178301] - driver core: bus: sysfs function cleanups (Mark Langsdorf) [2178301] - driver core: bus: convert bus_create/remove_file to be constant (Mark Langsdorf) [2178301] - driver core: bus: constantify the bus_find_* functions (Mark Langsdorf) [2178301] - driver core: bus: implement bus_get/put() without the private pointer (Mark Langsdorf) [2178301] - driver core: add local subsys_get and subsys_put functions (Mark Langsdorf) [2178301] - driver core: fw_devlink: Make cycle detection more robust (Mark Langsdorf) [2178301] - driver core: fw_devlink: Consolidate device link flag computation (Mark Langsdorf) [2178301] - driver core: fw_devlink: Allow marking a fwnode link as being part of a cycle (Mark Langsdorf) [2178301] - driver core: Add wait_for_init_devices_probe helper function (Mark Langsdorf) [2178301] - driver core: fw_devlink: Add DL_FLAG_CYCLE support to device links (Mark Langsdorf) [2178301] - driver core: fw_devlink: Improve check for fwnode with no device/driver (Mark Langsdorf) [2178301] - driver core: fw_devlink: Don't purge child fwnode's consumer links (Mark Langsdorf) [2178301] - drivers: base: dd: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [2178301] - drivers: base: component: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [2178301] - drivers/base: Remove CONFIG_SRCU (Mark Langsdorf) [2178301] - devtmpfs: convert to pr_fmt (Mark Langsdorf) [2178301] - driver core: bus: move lock_class_key into dynamic structure (Mark Langsdorf) [2178301] - driver core: platform: simplify __platform_driver_probe() (Mark Langsdorf) [2178301] - driver core: platform: removed unneeded variable from __platform_driver_probe() (Mark Langsdorf) [2178301] - cacheinfo: Initialize variables in fetch_cache_info() (Mark Langsdorf) [2178301] - regmap: apply reg_base and reg_downshift for single register ops (Mark Langsdorf) [2178301] - driver core: soc: remove layering violation for the soc_bus (Mark Langsdorf) [2178301] - of: device: make of_device_uevent_modalias() take a const device * (Mark Langsdorf) [2178301] - driver core: device_get_devnode() should take a const * (Mark Langsdorf) [2178301] - driver core: fix up missed drivers/s390/char/hmcdrv_dev.c class.devnode() conversion. (Mark Langsdorf) [2178301] - driver core: fix up missed scsi/cxlflash class.devnode() conversion. (Mark Langsdorf) [2178301] - driver core: fix up some missing class.devnode() conversions. (Mark Langsdorf) [2178301] - driver core: make struct class.devnode() take a const * (Mark Langsdorf) [2178301] - driver core: make struct device_type.devnode() take a const * (Mark Langsdorf) [2178301] - driver core: class: Clear private pointer on registration failures (Mark Langsdorf) [2178301] - cacheinfo: Fix shared_cpu_map to handle shared caches at different levels (Mark Langsdorf) [2178301] - cacheinfo: Check 'cache-unified' property to count cache leaves (Mark Langsdorf) [2178301] - arch_topology: Build cacheinfo from primary CPU (Mark Langsdorf) [2178301] - cacheinfo: Make default acpi_get_cache_info() return an error (Mark Langsdorf) [2178301] - ACPI: PPTT: Update acpi_find_last_cache_level() to acpi_get_cache_info() (Mark Langsdorf) [2178301] - ACPI: PPTT: Remove acpi_find_cache_levels() (Mark Langsdorf) [2178301] - drivers: base: transport_class: fix resource leak when transport_add_device() fails (Mark Langsdorf) [2178301] - driver core: location: Free struct acpi_pld_info *pld before return false (Mark Langsdorf) [2178301] - driver core: fix resource leak in device_add() (Mark Langsdorf) [2178301] - drivers/base/memory: Fix comments for phys_index_show() (Mark Langsdorf) [2178301] - drivers/base/memory: rename base_memory_block_id to memory_block_id (Mark Langsdorf) [2178301] - driver core: Fix test_async_probe_init saves device in wrong array (Mark Langsdorf) [2178301] - device property: fix of node refcount leak in fwnode_graph_get_next_endpoint() (Mark Langsdorf) [2178301] - driver core: bus: move bus notifier logic into bus.c (Mark Langsdorf) [2178301] - driver core: bus.h: document bus notifiers better (Mark Langsdorf) [2178301] - cacheinfo: Return error code in init_of_cache_level() (Mark Langsdorf) [2178301] - cacheinfo: Use RISC-V's init_cache_level() as generic OF implementation (Mark Langsdorf) [2178301] - platform: remove useless if-branch in __platform_get_irq_byname() (Mark Langsdorf) [2178301] - platform: Document platform_add_devices() return value (Mark Langsdorf) [2178301] - software node: Remove unused APIs (Mark Langsdorf) [2178301] - software node: Switch property entry test to a new API (Mark Langsdorf) [2178301] - platform: Provide a remove callback that returns no value (Mark Langsdorf) [2178301] - regmap: Rework regmap_mdio_c45_{read|write} for new C45 API. (Mark Langsdorf) [2178301] - net: Convert more users of mdiobus_* to mdiodev_* (Mark Langsdorf) [2178301] - PM: runtime: Document that force_suspend() is incompatible with SMART_SUSPEND (Mark Langsdorf) [2178301] - cpuidle, ARM: OMAP2+: powerdomain: Remove trace_.*_rcuidle() (Mark Langsdorf) [2178301] - driver core: fix potential null-ptr-deref in device_add() (Mark Langsdorf) [2178301] - PM: domains: Allow a genpd consumer to require a synced power off (Mark Langsdorf) [2178301] - driver core: move struct subsys_dev_iter to a local file (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_exit() static (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_next() static (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_init() static (Mark Langsdorf) [2178301] - driver core: remove subsys_find_device_by_id() (Mark Langsdorf) [2178301] - driver core: make bus_get_device_klist() static (Mark Langsdorf) [2178301] - platform/mellanox: mlxbf-pmc: Fix event typo (Mark Langsdorf) [2178301] - firmware_loader: remove #include (Mark Langsdorf) [2178301] - PM: runtime: Adjust white space in the core code (Mark Langsdorf) [2178301] - device property: Fix documentation for fwnode_get_next_parent() (Mark Langsdorf) [2178301] - PM: runtime: Relocate rpm_callback() right after __rpm_callback() (Mark Langsdorf) [2178301] - regmap: Add FSI bus support (Mark Langsdorf) [2178301] - PM: domains: Reverse the order of performance and enabling ops (Mark Langsdorf) [2178301] - driver core: make struct class.dev_uevent() take a const * (Mark Langsdorf) [2178301] - driver core: change to_subsys_private() to use container_of_const() (Mark Langsdorf) [2178301] - xen/xenbus: move to_xenbus_device() to use container_of_const() (Mark Langsdorf) [2178301] - virtio: move dev_to_virtio() to use container_of_const() (Mark Langsdorf) [2178301] - cacheinfo: Remove of_node_put() for fw_token (Mark Langsdorf) [2178301] - device property: Add a blank line in Kconfig of tests (Mark Langsdorf) [2178301] - device property: Rename goto label to be more precise (Mark Langsdorf) [2178301] - regmap: add regmap_might_sleep() (Mark Langsdorf) [2178301] - regmap: Add can_sleep configuration option (Mark Langsdorf) [2178301] - regmap: Use flexible sleep (Mark Lansgdorf) [2178301] - platform: use fwnode_irq_get_byname instead of of_irq_get_byname to get irq (Mark Langsdorf) [2178301] - driver core: Fix bus_type.match() error handling in __driver_attach() (Mark Langsdorf) [2178301] - driver core: Use kstrtobool() instead of strtobool() (Mark Langsdorf) [2178301] - cacheinfo: Decrement refcount in cache_setup_of_node() (Mark Langsdorf) [2178301] - driver core: mark driver_allows_async_probing static (Mark Langsdorf) [2178301] - driver core: remove devm_device_remove_group() (Mark Langsdorf) [2178301] - driver core: remove devm_device_remove_groups() (Mark Langsdorf) [2178301] - driver core: class: make namespace and get_ownership take const * (Mark Langsdorf) [2178301] - devres: Use kmalloc_size_roundup() to match ksize() usage (Mark Langsdorf) [2178301] - class: fix possible memory leak in __class_register() (Mark Langsdorf) [2178301] - PM: domains: Power off[on] domain in hibernate .freeze[thaw]_noirq hook (Mark Langsdorf) [2178301] - PM: domains: Consolidate genpd_restore_noirq() and genpd_resume_noirq() (Mark Langsdorf) [2178301] - PM: domains: Pass generic PM noirq hooks to genpd_finish_suspend() (Mark Langsdorf) [2178301] - PM: domains: Drop genpd status manipulation for hibernate restore (Mark Langsdorf) [2178301] - PM: domains: Fix handling of unavailable/disabled idle states (Mark Langsdorf) [2178301] - device property: Fix documentation for *_match_string() APIs (Mark Langsdorf) [2178301] - device property: Constify parameter in device_dma_supported() and device_get_dma_attr() (Mark Langsdorf) [2178301] - device property: Constify device child node APIs (Mark Langsdorf) [2178301] - device property: Constify fwnode connection match APIs (Mark Langsdorf) [2178301] - device property: Allow const parameter to dev_fwnode() (Mark Langsdorf) [2178301] - PM: domains: log failures to register always-on domains (Mark Langsdorf) [2178301] - dt-bindings: irqchip: Describe the IMX MU block as a MSI controller (Mark Langsdorf) [2178301] - platform-msi: Export symbol platform_msi_create_irq_domain() (Mark Langsdorf) [2178301] - PM: runtime: Return -EINPROGRESS from rpm_resume() in the RPM_NOWAIT case (Mark Langsdorf) [2178301] - device property: Add const qualifier to device_get_match_data() parameter (Mark Langsdorf) [2178301] - driver core: use IS_ERR_OR_NULL() helper in device_create_groups_vargs() (Mark Langsdorf) [2178301] - devcoredump : Serialize devcd_del work (Mark Langsdorf) [2178301] - regmap: mmio: replace return 0 with break in switch statement (Mark Langsdorf) [2178301] - mm: kill is_memblock_offlined() (Mark Langsdorf) [2178301] - driver core: remove make_class_name declaration (Mark Langsdorf) [2178301] - regmap/hexagon: Properly fix the generic IO helpers (Mark Langsdorf) [2178301] - regmap: trace: Remove unneeded blank lines (Mark Langsdorf) [2178301] - regmap: trace: Remove explicit castings (Mark Langsdorf) [2178301] - regmap: trace: Remove useless check for NULL for bulk ops (Mark Langsdorf) [2178301] - PM: wakeup: Add extra debugging statement for multiple active IRQs (Mark Langsdorf) [2178301] - devres: Slightly optimize alloc_dr() (Mark Langsdorf) [2178301] - drivers: base: Print error code on synthetic uevent failure (Mark Langsdorf) [2178301] - class: use IS_ERR_OR_NULL() helper in class_unregister() (Mark Langsdorf) [2178301] - regmap: introduce value tracing for regmap bulk operations (Mark Langsdorf) [2178301] - regmap: mmio: Fix MMIO accessors to avoid talking to IO port (Mark Langsdorf) [2178301] - regmap: mmio: Introduce IO accessors that can talk to IO port (Mark Langsdorf) [2178301] - regmap: mmio: Get rid of broken 64-bit IO (Mark Langsdorf) [2178301] - regmap: mmio: Remove mmio_relaxed member from context (Mark Langsdorf) [2178301] - thunderbolt: Mask ring interrupt on Intel hardware as well (Desnes Nunes) [2216483] - thunderbolt: Clear registers properly when auto clear isn't in use (Desnes Nunes) [2216483] - dt-bindings: usb: fsa4480: Use generic node name (Desnes Nunes) [2216483] - media: Revert "media: uvcvideo: Set unique vdev name based in type" (Desnes Nunes) [2216483] - media: uvcvideo: Don't expose unsupported formats to userspace (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Fix configure initial pin assignment (Desnes Nunes) [2216483] - xhci: Free the command allocated for setting LPM if we return early (Desnes Nunes) [2216483] - xhci: also avoid the XHCI_ZERO_64B_REGS quirk with a passthrough iommu (Desnes Nunes) [2216483] - USB: serial: option: add Quectel RM500U-CN modem (Desnes Nunes) [2216483] - thunderbolt: Rename shadowed variables bit to interrupt_bit and auto_clear_bit (Desnes Nunes) [2216483] - thunderbolt: Disable interrupt auto clear for rings (Desnes Nunes) [2216483] - thunderbolt: Use const qualifier for `ring_interrupt_index` (Desnes Nunes) [2216483] - uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS583Gen 2 (Desnes Nunes) [2216483] - USB: serial: option: add Telit FE990 compositions (Desnes Nunes) [2216483] - USB: serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs (Desnes Nunes) [2216483] - thunderbolt: Use scale field when allocating USB3 bandwidth (Desnes Nunes) [2216483] - thunderbolt: Limit USB3 bandwidth of certain Intel USB4 host routers (Desnes Nunes) [2216483] - thunderbolt: Call tb_check_quirks() after initializing adapters (Desnes Nunes) [2216483] - thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access (Desnes Nunes) [2216483] - thunderbolt: Fix memory leak in margining (Desnes Nunes) [2216483] - usb: typec: tcpm: fix warning when handle discover_identity message (Desnes Nunes) [2216483] - usb: typec: tcpm: fix create duplicate source-capabilities file (Desnes Nunes) [2216483] - usb: ucsi_acpi: Increase the command completion timeout (Desnes Nunes) [2216483] - usb: ucsi: Fix ucsi->connector race (Desnes Nunes) [2216483] - usb: ucsi: Fix NULL pointer deref in ucsi_connector_change() (Desnes Nunes) [2216483] - thunderbolt: Add quirk to disable CLx (Desnes Nunes) [2216483] - usb: typec: pd: Add higher capability sysfs for sink PDO (Desnes Nunes) [2216483] - usb: typec: pd: Remove usb_suspend_supported sysfs from sink PDO (Desnes Nunes) [2216483] - xhci: host: potential NULL dereference in xhci_generic_plat_probe() (Desnes Nunes) [2216483] - media: usb: siano: Fix warning due to null work_func_t function pointer (Desnes Nunes) [2216483] - media: usb: siano: Fix use after free bugs caused by do_submit_urb (Desnes Nunes) [2216483] - media: usb: dvb-usb-v2: af9015.c: return 0 instead of 'ret'. (Desnes Nunes) [2216483] - dt-bindings: usb: convert fcs,fusb302.txt to yaml (Desnes Nunes) [2216483] - dt-bindings: usb: fusb302: Remove deprecated properties (Desnes Nunes) [2216483] - usb: uvc: Enumerate valid values for color matching (Desnes Nunes) [2216483] - USB: ene_usb6250: Allocate enough memory for full object (Desnes Nunes) [2216483] - USB: uhci: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - USB: ULPI: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - USB: serial: option: add support for VW/Skoda "Carstick LTE" (Desnes Nunes) [2216483] - usb: remove the dead USB_OHCI_SH option (Desnes Nunes) [2216483] - xhci: decouple usb2 port resume and get_port_status request handling (Desnes Nunes) [2216483] - xhci: clear usb2 resume related variables in one place. (Desnes Nunes) [2216483] - xhci: rename resume_done to resume_timestamp (Desnes Nunes) [2216483] - xhci: Pass port structure as parameter to xhci_disable_port(). (Desnes Nunes) [2216483] - xhci: move port specific items such as state completions to port structure (Desnes Nunes) [2216483] - xhci: pass port pointer as parameter to xhci_set_port_power() (Desnes Nunes) [2216483] - xhci: cleanup xhci_hub_control port references (Desnes Nunes) [2216483] - xhci: add helpers for enabling and disabling interrupters (Desnes Nunes) [2216483] - xhci: Refactor interrupter code for initial multi interrupter support. (Desnes Nunes) [2216483] - xhci: remove xhci_test_trb_in_td_math early development check (Desnes Nunes) [2216483] - xhci: fix event ring segment table related masks and variables in header (Desnes Nunes) [2216483] - USB: core: Don't hold device lock while reading the "descriptors" sysfs file (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Use memcpy_and_pad() (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Optimize early_xdbc_write() (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Fix a potential out-of-bound memory access (Desnes Nunes) [2216483] - Documentation: usb: correct spelling (Desnes Nunes) [2216483] - docs: usb: convert documents to ReST (Desnes Nunes) [2216483] - Documentation/usb: Fix typo (Desnes Nunes) [2216483] - USB: serial: clean up kl5kusb105 documentation (Desnes Nunes) [2216483] - usb: uvc: use v4l2_fill_fmtdesc instead of open coded format name (Desnes Nunes) [2216483] - usb: uvc: make uvc_format_desc table const (Desnes Nunes) [2216483] - usb: uvc: move uvc_fmts and uvc_format_by_guid to own compile unit (Desnes Nunes) [2216483] - usb: uvc: move media/v4l2-uvc.h to usb/uvc.h (Desnes Nunes) [2216483] - media: uvcvideo: Add GUID for BGRA/X 8:8:8:8 (Desnes Nunes) [2216483] - usb: gadget: uvc: add v4l2 try_format api call (Desnes Nunes) [2216483] - usb: gadget: uvc: add v4l2 enumeration api calls (Desnes Nunes) [2216483] - usb: gadget: uvc: allow for application to cleanly shutdown (Desnes Nunes) [2216483] - usb: gadget: uvc: rename function to be more consistent (Desnes Nunes) [2216483] - usb: gadget: uvc: fix multiple opens (Desnes Nunes) [2216483] - thunderbolt: Add missing kernel-doc comment to tb_tunnel_maximum_bandwidth() (Desnes Nunes) [2216483] - thunderbolt: Handle bandwidth allocation mode enablement notification (Desnes Nunes) [2216483] - xhci: split out rcar/rz support from xhci-plat.c (Desnes Nunes) [2216483] - usb: host: xhci-rcar: Use xhci_plat_priv.quirks instead of code settings (Desnes Nunes) [2216483] - usb: host: xhci-plat: Remove useless DMA-32 fallback configuration (Desnes Nunes) [2216483] - usb: host: xhci-plat: Add reset support (Desnes Nunes) [2216483] - usb: host: xhci-plat: Improve clock handling in probe() (Desnes Nunes) [2216483] - dt-bindings: usb: Convert Marvell Orion EHCI to DT schema (Desnes Nunes) [2216483] - dt-bindings: usb: Convert OMAP OHCI/EHCI bindings to schema (Desnes Nunes) [2216483] - dt-bindings: usb: Convert multiple "usb-ohci" bindings to DT schema (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ohci: Document dr_mode property (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ehci: Document dr_mode property (Desnes Nunes) [2216483] - dt-bindings: ehci/ohci: Allow iommus property (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ohci: Add missing compatible strings (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ehci: Add missing compatible strings (Desnes Nunes) [2216483] - dt-bindings: Fix incorrect 'reg' property sizes (Desnes Nunes) [2216483] - dt-bindings: usb: ehci: Add missing 2nd register region (Desnes Nunes) [2216483] - usb: typec: tcpm: Remove altmode active state updates (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Update active state (Desnes Nunes) [2216483] - usb: typec: mux: Introduce GPIO-based SBU mux (Desnes Nunes) [2216483] - redhat: configs: Add unset CONFIG_TYPEC_MUX_GPIO_SBU option (Desnes Nunes) [2216483] - usb: typec: mux: Add On Semi fsa4480 driver (Desnes Nunes) [2216483] - dt-bindings: usb: Add binding for fcs,fsa4480 (Desnes Nunes) [2216483] - dt-bindings: usb: Introduce GPIO-based SBU mux (Desnes Nunes) [2216483] - usb: host: ehci-fsl: Use DRV_NAME (Desnes Nunes) [2216483] - usb: typec: maxim_contaminant: Implement check_contaminant callback (Desnes Nunes) [2216483] - usb: typec: tcpci: Add callback for evaluating contaminant presence (Desnes Nunes) [2216483] - usb: typec: tcpm: Add callbacks to mitigate wakeups due to contaminant (Desnes Nunes) [2216483] - usb: typec: Make bus switch code retimer-aware (Desnes Nunes) [2216483] - usb: typec: retimer: Use device type for matching (Desnes Nunes) [2216483] - usb: typec: Add wrapper for bus switch set code (Desnes Nunes) [2216483] - usb: typec: Add retimer handle to port altmode (Desnes Nunes) [2216483] - usb: typec: tipd: Support wakeup (Desnes Nunes) [2216483] - dt-bindings: usb: tps6598x: Add wakeup property (Desnes Nunes) [2216483] - USB: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - usb: typec: intel_pmc_mux: Deduplicate ACPI matching in probe (Desnes Nunes) [2216483] - usb: typec: intel_pmc_mux: Don't leak the ACPI device reference count (Desnes Nunes) [2216483] - usb: typec: tcpci: Request IRQ with IRQF_SHARED (Desnes Nunes) [2216483] - USB: Improve usb_fill_* documentation (Desnes Nunes) [2216483] - usb: typec: hd3ss3220: Add polling support (Desnes Nunes) [2216483] - dt-bindings: usb: ti,hd3ss3220: Update interrupt property as optional (Desnes Nunes) [2216483] - dt-bindings: usb: convert ti,hd3ss3220 bindings to json-schema (Desnes Nunes) [2216483] - dt-bindings: Convert usb-connector to YAML format. (Desnes Nunes) [2216483] - dt-bindings: usb: rt1711h: Add connector bindings (Desnes Nunes) [2216483] - dt-bindings: usb: hd3ss3220 device tree binding document (Desnes Nunes) [2216483] - thunderbolt: Add support for DisplayPort bandwidth allocation mode (Desnes Nunes) [2216483] - thunderbolt: Include the additional DP IN double word in debugfs dump (Desnes Nunes) [2216483] - thunderbolt: Add functions to support DisplayPort bandwidth allocation mode (Desnes Nunes) [2216483] - thunderbolt: Increase timeout of DP OUT adapter handshake (Desnes Nunes) [2216483] - thunderbolt: Take CL states into account when waiting for link to come up (Desnes Nunes) [2216483] - thunderbolt: Improve debug logging in tb_available_bandwidth() (Desnes Nunes) [2216483] - thunderbolt: Log DP adapter type (Desnes Nunes) [2216483] - thunderbolt: Use decimal port number in control and tunnel logs too (Desnes Nunes) [2216483] - media: uvcvideo: Silence memcpy() run-time false positive warnings (Desnes Nunes) [2216483] - media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910 (Desnes Nunes) [2216483] - media: uvcvideo: Fix race condition with usb_kill_urb (Desnes Nunes) [2216483] - media: uvcvideo: Use standard names for menus (Desnes Nunes) [2216483] - media: uvcvideo: Fix power line control for Lenovo Integrated Camera (Desnes Nunes) [2216483] - media: uvcvideo: Add a quirk to force GEO GC6500 Camera bits-per-pixel value (Desnes Nunes) [2216483] - media: v4l: common: Fix naming of v4l2_get_link_rate (Desnes Nunes) [2216483] - media: ipu3-cio2: Use v4l2_get_link_freq helper (Desnes Nunes) [2216483] - media: ipu3-cio2: Update Copyright year and fix indentation issues (Desnes Nunes) [2216483] - media: v4l: Add a helper for obtaining the link frequency (Desnes Nunes) [2216483] - media: v4l2-common: add RGB565 and RGB55 to v4l2_format_info (Desnes Nunes) [2216483] - media: v4l2-common: add pixel encoding support (Desnes Nunes) [2216483] - media: v4l2-common: add support for new RGB32 pixelformats (Desnes Nunes) [2216483] - media: v4l2-common: add bayer formats in v4l2_format_info (Desnes Nunes) [2216483] - media: v4l2-common: Add an helper to apply frmsize constraints (Desnes Nunes) [2216483] - media: v4l2-common: Fix v4l2_fill_pixfmt[_mp]() prototypes (Desnes Nunes) [2216483] - media: Introduce helpers to fill pixel format structs (Desnes Nunes) [2216483] - media: uvcvideo: Refactor power_line_frequency_controls_limited (Desnes Nunes) [2216483] - media: uvcvideo: Refactor uvc_ctrl_mappings_uvcXX (Desnes Nunes) [2216483] - media: uvcvideo: Implement mask for V4L2_CTRL_TYPE_MENU (Desnes Nunes) [2216483] - media: uvcvideo: Extend documentation of uvc_video_clock_decode() (Desnes Nunes) [2216483] - media: uvcvideo: Refactor __uvc_ctrl_add_mapping (Desnes Nunes) [2216483] - media: uvcvideo: Undup use uvc_endpoint_max_bpi() code (Desnes Nunes) [2216483] - media: uvcvideo: Simplify uvc_endpoint_max_bpi() (Desnes Nunes) [2216483] - media: uvcvideo: Fix memory leak if uvc_ctrl_add_mapping fails (Desnes Nunes) [2216483] - media: uvcvideo: Avoid returning invalid controls (Desnes Nunes) [2216483] - media: uvcvideo: Avoid invalid memory access (Desnes Nunes) [2216483] - media: uvcvideo: Set the colorspace as sRGB if undefined (Desnes Nunes) [2216483] - media: uvcvideo: Fix memory leak of object map on error exit path (Desnes Nunes) [2216483] - media: uvcvideo: Fix handling on Bitmask controls (Desnes Nunes) [2216483] - media: uvcvideo: Do not return positive errors in uvc_query_ctrl() (Desnes Nunes) [2216483] - media: uvcvideo: Return -EACCES for Wrong state error (Desnes Nunes) [2216483] - media: uvcvideo: Improve error logging in uvc_query_ctrl() (Desnes Nunes) [2216483] - media: uvcvideo: Check for INACTIVE in uvc_ctrl_is_accessible() (Desnes Nunes) [2216483] - media: uvcvideo: Factor out usb_string() calls (Desnes Nunes) [2216483] - media: uvcvideo: Limit power line control for Acer EasyCamera (Desnes Nunes) [2216483] - media: uvcvideo: Recover stalled ElGato devices (Desnes Nunes) [2216483] - media: uvcvideo: Remove void casting for the status endpoint (Desnes Nunes) [2216483] - media: uvcvideo: Increase UVC_CTRL_CONTROL_TIMEOUT to 5 seconds. (Desnes Nunes) [2216483] - media: uvcvideo: Fix usage of symbolic permissions to octal (Desnes Nunes) [2216483] - media: uvcvideo: Fix assignment inside if condition (Desnes Nunes) [2216483] - media: uvcvideo: Fix missing newline after declarations (Desnes Nunes) [2216483] - media: uvcvideo: Handle errors from calls to usb_string (Desnes Nunes) [2216483] - media: uvcvideo: Only create input devs if hw supports it (Desnes Nunes) [2216483] - media: uvcvideo: Handle cameras with invalid descriptors (Desnes Nunes) [2216483] - media: uvcvideo: Remove format descriptions (Desnes Nunes) [2216483] - media: docs: Document the behaviour of uvcvideo driver (Desnes Nunes) [2216483] - media: uvcvideo: Set error_idx during ctrl_commit errors (Desnes Nunes) [2216483] - media: uvcvideo: Check controls flags before accessing them (Desnes Nunes) [2216483] - media: uvcvideo: Use control names from framework (Desnes Nunes) [2216483] - media: uvcvideo: Set unique vdev name based in type (Desnes Nunes) [2216483] - media: uvcvideo: Use dev->name for querycap() (Desnes Nunes) [2216483] - media: uvcvideo: Add support for V4L2_CTRL_TYPE_CTRL_CLASS (Desnes Nunes) [2216483] - media: uvcvideo: Set capability in s_param (Desnes Nunes) [2216483] - media: uvcvideo: Remove s_ctrl and g_ctrl (Desnes Nunes) [2216483] - media: v4l2-ioctl: S_CTRL output the right value (Desnes Nunes) [2216483] - media: uvcvideo: Do not check for V4L2_CTRL_WHICH_DEF_VAL (Desnes Nunes) [2216483] - media: pvrusb2: Do not check for V4L2_CTRL_WHICH_DEF_VAL (Desnes Nunes) [2216483] - media: v4l2-ioctl: Fix check_ext_ctrls (Desnes Nunes) [2216483] - net: thunderbolt: Add tracepoints (Desnes Nunes) [2216483] - net: thunderbolt: Add debugging when sending/receiving control packets (Desnes Nunes) [2216483] - net: thunderbolt: Move into own directory (Desnes Nunes) [2216483] - xhci: Convert to use list_count_nodes() (Desnes Nunes) [2216483] - usb: typec: ucsi: Register USB Power Delivery Capabilities (Desnes Nunes) [2216483] - xhci: Add hub_control to xhci_driver_overrides (Desnes Nunes) [2216483] - xhci: hub: export symbol on xhci_hub_control (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Add hpd sysfs attribute (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Notify drm subsys of (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Make dp_altmode_notify() more generic (Desnes Nunes) [2216483] - thunderbolt: Refactor tb_acpi_add_link() (Desnes Nunes) [2216483] - thunderbolt: Use correct type in tb_port_is_clx_enabled() prototype (Desnes Nunes) [2216483]- s390/diag: fix display of diagnose call statistics (Tobias Huschle) [2187995] - rseq, ptrace: Add PTRACE_GET_RSEQ_CONFIGURATION request (Adrian Reber) [2218454] - locking/rwbase: Mitigate indefinite writer starvation (Eder Zulian) [2077282] - fbcon: Check font dimension limits (Ricardo Robaina) [2213493] {CVE-2023-3161} - libnvdimm: Notify disk drivers to revalidate region read-only (Jeff Moyer) [1999673] - nvdimm/region: always show the 'align' attribute (Jeff Moyer) [1999673] - nvdimm/region: Fix default alignment for small regions (Jeff Moyer) [1999673] - libnvdimm/region: Allow setting align attribute on regions without mappings (Jeff Moyer) [1999673] - KVM: SVM: Return the local "r" variable from svm_set_msr() (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Virtualize FLUSH_L1D and passthrough MSR_IA32_FLUSH_CMD (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Move MSR_IA32_PRED_CMD WRMSR emulation to common code (Emanuele Giuseppe Esposito) [2124598] - KVM: SVM: Passthrough MSR_IA32_PRED_CMD based purely on host+guest CPUID (Emanuele Giuseppe Esposito) [2124598] - KVM: VMX: Passthrough MSR_IA32_PRED_CMD based purely on host+guest CPUID (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Revert MSR_IA32_FLUSH_CMD.FLUSH_L1D enabling (Emanuele Giuseppe Esposito) [2124598] - kvm: x86: Advertise FLUSH_L1D to user space (Emanuele Giuseppe Esposito) [2124598] - kvm: svm: Add IA32_FLUSH_CMD guest support (Emanuele Giuseppe Esposito) [2124598] - kvm: vmx: Add IA32_FLUSH_CMD guest support (Emanuele Giuseppe Esposito) [2124598] - rtc: lib_test: add MODULE_LICENSE (Lenny Szubowicz) [2207975] - rtc: efi: Remove the repeated module alias (Lenny Szubowicz) [2207975] - efi/efivars: Set generic ops before loading SSDT (Lenny Szubowicz) [2207975] - efi: efibc: check for efivars write capability (Lenny Szubowicz) [2207975] - efi/efivars: Expose RT service availability via efivars abstraction (Lenny Szubowicz) [2207975] - integrity: Check properly whether EFI GetVariable() is available (Lenny Szubowicz) [2207975] - x86/ima: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - efi: Use EFI ResetSystem only when available (Lenny Szubowicz) [2207975] - scsi: iscsi: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - infiniband: hfi1: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - efi: Register EFI rtc platform device only when available (Lenny Szubowicz) [2207975] - efi: Use more granular check for availability for variable services (Lenny Szubowicz) [2207975] - efi: mark all efi runtime services as unsupported on non-efi boot (Lenny Szubowicz) [2207975] - efi: Add support for EFI_RT_PROPERTIES table (Lenny Szubowicz) [2207975] - crypto: ccp - Add support for PCI device 0x156E (Vladis Dronov) [2180960] - crypto: ccp - Add support for PCI device 0x17E0 (Vladis Dronov) [2180960] - crypto: ccp - Validate that platform access mailbox registers are declared (Vladis Dronov) [2180960] - crypto: ccp - Use lower 8 bytes to communicate with doorbell command register (Vladis Dronov) [2180960] - crypto: ccp - Return doorbell status code as an argument (Vladis Dronov) [2180960] - crypto: ccp - Bump up doorbell debug message to error (Vladis Dronov) [2180960] - crypto: ccp - Drop extra doorbell checks (Vladis Dronov) [2180960] - crypto: ccp - Don't initialize CCP for PSP 0x1649 (Vladis Dronov) [2180960] - crypto: ccp - Clear PSP interrupt status register before calling handler (Vladis Dronov) [2180960] - crypto: ccp - Add support for ringing a platform doorbell (Vladis Dronov) [2180960] - crypto: ccp - Enable platform access interface on client PSP parts (Vladis Dronov) [2180960] - crypto: ccp - Add support for an interface for platform features (Vladis Dronov) [2180960] - crypto: ccp - Move some PSP mailbox bit definitions into common header (Vladis Dronov) [2180960] - crypto: ccp - Add a header for multiple drivers to use `__psp_pa` (Vladis Dronov) [2180960] - crypto: ccp - Drop TEE support for IRQ handler (Vladis Dronov) [2180960] - crypto: ccp: Get rid of __sev_platform_init_locked()'s local function pointer (Vladis Dronov) [2180960] - crypto: ccp - Name -1 return value as SEV_RET_NO_FW_CALL (Vladis Dronov) [2180960] - crypto: ccp - Flush the SEV-ES TMR memory before giving it to firmware (Vladis Dronov) [2180960] - crypto: ccp - Add a firmware definition for EPYC gen 4 processors (Vladis Dronov) [2180960] - crypto: ccp - Provide MMIO register naming for documenation (Vladis Dronov) [2180960] - redhat/configs: enable CONFIG_INTEL_UNCORE_FREQ_CONTROL for x86_64 (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Return error on write frequency (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Add client processors (David Arcari) [2156826] - platform/x86: intel-uncore-freq: add Emerald Rapids support (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Use sysfs_emit() to instead of scnprintf() (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Prevent driver loading in guests (David Arcari) [2156826] - platform/x86: intel-uncore-freq: fix uncore_freq_common_init() error codes (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Split common and enumeration part (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Display uncore current frequency (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Use sysfs API to create attributes (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Move to uncore-frequency folder (David Arcari) [2156826] - platform/x86: intel-uncore-frequency: use default_groups in kobj_type (David Arcari) [2156826] - platform/x86: intel-uncore-frequency: Move to intel sub-directory (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Add Sapphire Rapids server support (David Arcari) [2156826] - platform/x86/intel-uncore-freq: make uncore_root_kobj static (David Arcari) [2156826] - platform/x86: Convert to new CPU match macros (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Add release callback (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Fix static checker issue and potential race condition (David Arcari) [2156826] - MAINTAINERS: Update for the intel uncore frequency control (David Arcari) [2156826] - platform/x86: Add support for Uncore frequency control (David Arcari) [2156826]- ceph: fix use-after-free bug for inodes when flushing capsnaps (Xiubo Li) [2209299] - net/tls: tls_is_tx_ready() checked list_entry (Sabrina Dubroca) [2212176] {CVE-2023-1075} - Revert "RDMA/umem: remove FOLL_FORCE usage" (Kamal Heib) [2210153 2210849] - Revert "RDMA/core: Refactor rdma_bind_addr" (Kamal Heib) [2212211 2212217] - cpufreq: intel_pstate: Fix scaling for hybrid-capable systems with disabled E-cores (David Arcari) [2221276] - netfilter: nf_tables: fix scheduling-while-atomic splat (Phil Sutter) [2217731] - netfilter: nf_tables: add rescheduling points during loop detection walks (Phil Sutter) [2217731] - ipv6: Remove dependency of ipv6_frag_thdr_truncated on ipv6 module (Phil Sutter) [2217794] - ipv6/netfilter: Discard first fragment not including all headers (Phil Sutter) [2217794] - s390/ipl: add eckd dump support (Tobias Huschle) [2159695] - net/smc: fix document build WARNING from smc-sysctl.rst (Tobias Huschle) [2159734] - s390/ism: switch from 'pci_' to 'dma_' API (Tobias Huschle) [2159734] - net/smc: Fix device de-init sequence (Tobias Huschle) [2159734] - net/smc: fix deadlock triggered by cancel_delayed_work_syn() (Tobias Huschle) [2159734] - net/smc: fix NULL sndbuf_desc in smc_cdc_tx_handler() (Tobias Huschle) [2159734] - net/smc: fix fallback failed while sendmsg with fastopen (Tobias Huschle) [2159734] - net/smc: fix application data exception (Tobias Huschle) [2159734] - net/smc: replace mutex rmbs_lock and sndbufs_lock with rw_semaphore (Tobias Huschle) [2159734] - net/smc: reduce unnecessary blocking in smcr_lgr_reg_rmbs() (Tobias Huschle) [2159734] - net/smc: use read semaphores to reduce unnecessary blocking in smc_buf_create() & smcr_buf_unuse() (Tobias Huschle) [2159734] - net/smc: llc_conf_mutex refactor, replace it with rw_semaphore (Tobias Huschle) [2159734] - net: add missing includes of linux/splice.h (Tobias Huschle) [2159734] - net/smc: De-tangle ism and smc device initialization (Tobias Huschle) [2159734] - s390/ism: Consolidate SMC-D-related code (Tobias Huschle) [2159734] - net/smc: Separate SMC-D and ISM APIs (Tobias Huschle) [2159734] - net/smc: Register SMC-D as ISM client (Tobias Huschle) [2159734] - net/ism: Add new API for client registration (Tobias Huschle) [2159734] - s390/ism: Introduce struct ism_dmb (Tobias Huschle) [2159734] - net/ism: Add missing calls to disable bus-mastering (Tobias Huschle) [2159734] - net/smc: Terminate connections prior to device removal (Tobias Huschle) [2159734] - net/smc: Fix possible leaked pernet namespace in smc_init() (Tobias Huschle) [2159734] - net/smc: Fix an error code in smc_lgr_create() (Tobias Huschle) [2159734] - net/smc: Support SO_REUSEPORT (Tobias Huschle) [2159734] - net/smc: Introduce a specific sysctl for TEST_LINK time (Tobias Huschle) [2159734] - net/smc: Stop the CLC flow if no link to map buffers on (Tobias Huschle) [2159734] - net/smc: Fix possible access to freed memory in link clear (Tobias Huschle) [2159734] - net/smc: Remove redundant refcount increase (Tobias Huschle) [2159734] - net/smc: Enable module load on netlink usage (Tobias Huschle) [2159734] - net/smc: Pass on DMBE bit mask in IRQ handler (Tobias Huschle) [2159734] - s390/ism: Cleanups (Tobias Huschle) [2159734] - net/smc: Eliminate struct smc_ism_position (Tobias Huschle) [2159734] - tcp: Fix data-races around keepalive sysctl knobs. (Tobias Huschle) [2159734] - net/smc: Extend SMC-R link group netlink attribute (Tobias Huschle) [2159734] - net/smc: Allow virtually contiguous sndbufs or RMBs for SMC-R (Tobias Huschle) [2159734] - net/smc: Use sysctl-specified types of buffers in new link group (Tobias Huschle) [2159734] - net/smc: Introduce a sysctl for setting SMC-R buffer type (Tobias Huschle) [2159734] - net/smc: optimize for smc_sndbuf_sync_sg_for_device and smc_rmb_sync_sg_for_cpu (Tobias Huschle) [2159734] - net/smc: remove redundant dma sync ops (Tobias Huschle) [2159734] - net/smc: fixes for converting from "struct smc_cdc_tx_pend **" to "struct smc_wr_tx_pend_priv *" (Tobias Huschle) [2159734] - net/smc: set ini->smcrv2.ib_dev_v2 to NULL if SMC-Rv2 is unavailable (Tobias Huschle) [2159734] - net/smc: postpone sk_refcnt increment in connect() (Tobias Huschle) [2159734] - net/smc: rdma write inline if qp has sufficient inline space (Tobias Huschle) [2159734] - net/smc: send cdc msg inline if qp has sufficient inline space (Tobias Huschle) [2159734] - net/smc: align the connect behaviour with TCP (Tobias Huschle) [2159734] - net/smc: non blocking recvmsg() return -EAGAIN when no data and signal_pending (Tobias Huschle) [2159734] - net/smc: Fix slab-out-of-bounds issue in fallback (Tobias Huschle) [2159734] - net/smc: Only save the original clcsock callback functions (Tobias Huschle) [2159734] - net/smc: sync err code when tcp connection was refused (Tobias Huschle) [2159734] - net/smc: Fix sock leak when release after smc_shutdown() (Tobias Huschle) [2159734] - net/smc: Send out the remaining data in sndbuf before close (Tobias Huschle) [2159734] - net/smc: fix a memory leak in smc_sysctl_net_exit() (Tobias Huschle) [2159734] - net/smc: fix -Wmissing-prototypes warning when CONFIG_SYSCTL not set (Tobias Huschle) [2159734] - net/smc: fix compile warning for smc_sysctl (Tobias Huschle) [2159734] - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error cause by server (Tobias Huschle) [2159734] - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error generated by client (Tobias Huschle) [2159734] - net: smc: fix different types in min() (Tobias Huschle) [2159734] - net/smc: don't send in the BH context if sock_owned_by_user (Tobias Huschle) [2159734] - net/smc: correct settings of RMB window update limit (Tobias Huschle) [2159734] - net/smc: send directly on setting TCP_NODELAY (Tobias Huschle) [2159734] - net/smc: add sysctl for autocorking (Tobias Huschle) [2159734] - net/smc: add autocorking support (Tobias Huschle) [2159734] - net/smc: add sysctl interface for SMC (Tobias Huschle) [2159734] - x86/resctrl: Clear staged_config[] before and after it is used (Prarit Bhargava) [1989284] - x86/resctl: fix scheduler confusion with 'current' (Prarit Bhargava) [1989284] - x86/resctrl: Fix a silly -Wunused-but-set-variable warning (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to write mbm_local_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to write mbm_total_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to read mbm_local_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to read mbm_total_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Support monitor configuration (Prarit Bhargava) [1989284] - x86/resctrl: Add __init attribute to rdt_get_mon_l3_config() (Prarit Bhargava) [1989284] - x86/resctrl: Detect and configure Slow Memory Bandwidth Allocation (Prarit Bhargava) [1989284] - x86/cpufeatures: Add Bandwidth Monitoring Event Configuration feature flag (Prarit Bhargava) [1989284] - x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag (Prarit Bhargava) [1989284] - x86/resctrl: Include new features in command line options (Prarit Bhargava) [1989284] - x86/resctrl: Add a new resource type RDT_RESOURCE_SMBA (Prarit Bhargava) [1989284] - x86/resctrl: Replace smp_call_function_many() with on_each_cpu_mask() (Prarit Bhargava) [1989284] - x86/resctrl: Fix event counts regression in reused RMIDs (Prarit Bhargava) [1989284] - x86/resctrl: Fix task CLOSID/RMID update race (Prarit Bhargava) [1989284] - x86/resctrl: Move MSR defines into msr-index.h (Prarit Bhargava) [1989284] - x86/resctrl: Remove arch_has_empty_bitmaps (Prarit Bhargava) [1989284] - x86/resctrl: Fix min_cbm_bits for AMD (Prarit Bhargava) [1989284] - x86/resctrl: Make resctrl_arch_rmid_read() return values in bytes (Prarit Bhargava) [1989284] - x86/resctrl: Add resctrl_rmid_realloc_limit to abstract x86's boot_cpu_data (Prarit Bhargava) [1989284] - x86/resctrl: Rename and change the units of resctrl_cqm_threshold (Prarit Bhargava) [1989284] - x86/resctrl: Move get_corrected_mbm_count() into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Move mbm_overflow_count() into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Pass the required parameters into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Abstract __rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Allow per-rmid arch private storage to be reset (Prarit Bhargava) [1989284] - x86/resctrl: Add per-rmid arch private storage for overflow and chunks (Prarit Bhargava) [1989284] - x86/resctrl: Calculate bandwidth from the previous __mon_event_count() chunks (Prarit Bhargava) [1989284] - x86/resctrl: Allow update_mba_bw() to update controls directly (Prarit Bhargava) [1989284] - x86/resctrl: Remove architecture copy of mbps_val (Prarit Bhargava) [1989284] - x86/resctrl: Switch over to the resctrl mbps_val list (Prarit Bhargava) [1989284] - x86/resctrl: Create mba_sc configuration in the rdt_domain (Prarit Bhargava) [1989284] - x86/resctrl: Abstract and use supports_mba_mbps() (Prarit Bhargava) [1989284] - x86/resctrl: Remove set_mba_sc()s control array re-initialisation (Prarit Bhargava) [1989284] - x86/resctrl: Add domain offline callback for resctrl work (Prarit Bhargava) [1989284] - x86/resctrl: Group struct rdt_hw_domain cleanup (Prarit Bhargava) [1989284] - x86/resctrl: Add domain online callback for resctrl work (Prarit Bhargava) [1989284] - x86/resctrl: Merge mon_capable and mon_enabled (Prarit Bhargava) [1989284] - x86/resctrl: Kill off alloc_enabled (Prarit Bhargava) [1989284] - x86/resctrl: Fix to restore to original value when re-enabling hardware prefetch register (Prarit Bhargava) [1989284] - x86: Replace cpumask_weight() with cpumask_empty() where appropriate (Prarit Bhargava) [1989284] - x86/resctrl: Remove redundant assignment to variable chunks (Prarit Bhargava) [1989284] - x86/resctrl: Fix kfree() of the wrong type in domain_add_cpu() (Prarit Bhargava) [1989284] - x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails (Prarit Bhargava) [1989284] - x86/resctrl: Make resctrl_arch_get_config() return its value (Prarit Bhargava) [1989284] - x86/resctrl: Merge the CDP resources (Prarit Bhargava) [1989284] - x86/resctrl: Expand resctrl_arch_update_domains()'s msr_param range (Prarit Bhargava) [1989284] - x86/resctrl: Remove rdt_cdp_peer_get() (Prarit Bhargava) [1989284] - x86/resctrl: Merge the ctrl_val arrays (Prarit Bhargava) [1989284] - x86/resctrl: Calculate the index from the configuration type (Prarit Bhargava) [1989284] - x86/resctrl: Apply offset correction when config is staged (Prarit Bhargava) [1989284] - x86/resctrl: Make ctrlval arrays the same size (Prarit Bhargava) [1989284] - x86/resctrl: Pass configuration type to resctrl_arch_get_config() (Prarit Bhargava) [1989284] - x86/resctrl: Add a helper to read a closid's configuration (Prarit Bhargava) [1989284] - x86/resctrl: Rename update_domains() to resctrl_arch_update_domains() (Prarit Bhargava) [1989284] - x86/resctrl: Allow different CODE/DATA configurations to be staged (Prarit Bhargava) [1989284] - x86/resctrl: Group staged configuration into a separate struct (Prarit Bhargava) [1989284] - x86/resctrl: Move the schemata names into struct resctrl_schema (Prarit Bhargava) [1989284] - x86/resctrl: Add a helper to read/set the CDP configuration (Prarit Bhargava) [1989284] - x86/resctrl: Swizzle rdt_resource and resctrl_schema in pseudo_lock_region (Prarit Bhargava) [1989284] - x86/resctrl: Pass the schema to resctrl filesystem functions (Prarit Bhargava) [1989284] - x86/resctrl: Add resctrl_arch_get_num_closid() (Prarit Bhargava) [1989284] - x86/resctrl: Store the effective num_closid in the schema (Prarit Bhargava) [1989284] - x86/resctrl: Walk the resctrl schema list instead of an arch list (Prarit Bhargava) [1989284] - x86/resctrl: Label the resources with their configuration type (Prarit Bhargava) [1989284] - x86/resctrl: Pass the schema in info dir's private pointer (Prarit Bhargava) [1989284] - x86/resctrl: Add a separate schema list for resctrl (Prarit Bhargava) [1989284] - x86/resctrl: Split struct rdt_domain (Prarit Bhargava) [1989284] - x86/resctrl: Split struct rdt_resource (Prarit Bhargava) [1989284] - x86/resctrl: Include pid.h (Prarit Bhargava) [1989284] - x86/resctrl: Fix kernel-doc in internal.h (Prarit Bhargava) [1989284] - x86/resctrl: Fix kernel-doc in pseudo_lock.c (Prarit Bhargava) [1989284] - x86/resctrl: Fix init const confusion (Prarit Bhargava) [1989284] - x86/resctrl: Fix various typos in comments, take #2 (Prarit Bhargava) [1989284] - x86/resctrl: Fix various typos in comments (Prarit Bhargava) [1989284] - x86/resctrl: Apply READ_ONCE/WRITE_ONCE to task_struct.{rmid,closid} (Prarit Bhargava) [1989284] - x86/resctrl: Use task_curr() instead of task_struct->on_cpu to prevent unnecessary IPI (Prarit Bhargava) [1989284] - x86/resctrl: Add printf attribute to log function (Prarit Bhargava) [1989284] - x86/resctrl: Don't move a task to the same resource group (Prarit Bhargava) [1989284] - x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR (Prarit Bhargava) [1989284] - x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled (Prarit Bhargava) [1989284] - x86/resctrl: Clean up unused function parameter in rmdir path (Prarit Bhargava) [1989284] - x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak (Prarit Bhargava) [1989284] - x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak (Prarit Bhargava) [1989284] - x86/resctrl: Constify kernfs_ops (Prarit Bhargava) [1989284] - x86/resctrl: Correct MBM total and local values (Prarit Bhargava) [1989284] - x86/include/asm/msr-index.h: Add IFS Array test bits (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Update IFS doc (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Implement Array BIST test (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Sysfs interface for Array BIST (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Introduce Array Scan test to IFS (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: IFS cleanup (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Reorganize driver data (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Separate ifs_pkg_auth from ifs_data (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add missing kernel-doc entry (Prarit Bhargava) [1971937] - Revert "platform/x86/intel/ifs: Mark as BROKEN" (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add current_batch sysfs entry (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove reload sysfs entry (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add metadata validation (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Use generic microcode headers and functions (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add metadata support (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove memory allocation from load path (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove image loading during init (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Return a more appropriate error code (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove unused selection (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Mark as BROKEN (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add CPU_SUP_INTEL dependency (Prarit Bhargava) [1971937] - Documentation: In-Field Scan (Prarit Bhargava) [1971937] - redhat/configs: Add CONFIG_INTEL_IFS (Prarit Bhargava) [1971937] - redhat/configs: Add CONFIG_MICROCODE_LATE_LOADING (Prarit Bhargava) [1971937] - stop_machine: Add stop_core_cpuslocked() for per-core operations (Prarit Bhargava) [1971937] - trace: platform/x86/intel/ifs: Add trace point to track Intel IFS operations (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add IFS sysfs interface (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add scan test support (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Authenticate and copy to secured memory (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Check IFS Image sanity (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Read IFS firmware image (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add stub driver for In-Field Scan (Prarit Bhargava) [1971937] - x86/msr-index: Define INTEGRITY_CAPABILITIES MSR (Prarit Bhargava) [1971937] - x86/microcode/core: Return an error only when necessary (Prarit Bhargava) [1971937] - x86/microcode/AMD: Fix mixed steppings support (Prarit Bhargava) [1971937] - x86/microcode/AMD: Add a @cpu parameter to the reloading functions (Prarit Bhargava) [1971937] - x86/microcode/amd: Remove load_microcode_amd()'s bsp parameter (Prarit Bhargava) [1971937] - x86/microcode: Allow only "1" as a late reload trigger value (Prarit Bhargava) [1971937] - x86/microcode/intel: Print old and new revision during early boot (Prarit Bhargava) [1971937] - x86/microcode/intel: Pass the microcode revision to print_ucode_info() directly (Prarit Bhargava) [1971937] - x86/microcode: Adjust late loading result reporting message (Prarit Bhargava) [1971937] - x86/microcode: Check CPU capabilities after late microcode update correctly (Prarit Bhargava) [1971937] - x86/microcode: Add a parameter to microcode_check() to store CPU capabilities (Prarit Bhargava) [1971937] - x86/microcode: Use the DEVICE_ATTR_RO() macro (Prarit Bhargava) [1971937] - x86/microcode/AMD: Handle multiple glued containers properly (Prarit Bhargava) [1971937] - x86/microcode/AMD: Rename a couple of functions (Prarit Bhargava) [1971937] - x86/microcode/intel: Do not retry microcode reloading on the APs (Prarit Bhargava) [1971937] - x86/microcode/intel: Do not print microcode revision and processor flags (Prarit Bhargava) [1971937] - x86/microcode/intel: Use a reserved field for metasize (Prarit Bhargava) [1971937] - x86/microcode/intel: Add hdr_type to intel_microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Reuse microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Use appropriate type in microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Reuse find_matching_signature() (Prarit Bhargava) [1971937] - x86/microcode: Drop struct ucode_cpu_info.valid (Prarit Bhargava) [1971937] - x86/microcode: Do some minor fixups (Prarit Bhargava) [1971937] - x86/microcode: Kill refresh_fw (Prarit Bhargava) [1971937] - x86/microcode: Simplify init path even more (Prarit Bhargava) [1971937] - x86/microcode: Rip out the subsys interface gunk (Prarit Bhargava) [1971937] - x86/microcode/AMD: Track patch allocation size explicitly (Prarit Bhargava) [1971937] - x86/microcode: Print previous version of microcode after reload (Prarit Bhargava) [1971937] - x86/microcode: Remove ->request_microcode_user() (Prarit Bhargava) [1971937] - misc: Mark MICROCODE_MINOR unused (Prarit Bhargava) [1971937] - x86/microcode: Remove unnecessary perf callback (Prarit Bhargava) [1971937] - x86/microcode: Taint and warn on late loading (Prarit Bhargava) [1971937] - x86/microcode: Default-disable late loading (Prarit Bhargava) [1971937] - x86/microcode: Rip out the OLD_INTERFACE (Prarit Bhargava) [1971937] - x86/microcode/intel: Expose collect_cpu_info_early() for IFS (Prarit Bhargava) [1971937] - x86/cpu: Load microcode during restore_processor_state() (Prarit Bhargava) [1971937] - microcode: Replace zero-length arrays with flexible-array members (Prarit Bhargava) [1971937] - x86/microcode: Use the firmware_loader built-in API (Prarit Bhargava) [1971937] - firmware: Export firmware_request_builtin() (Prarit Bhargava) [1971937] - x86/microcode: Replace deprecated CPU-hotplug functions. (Prarit Bhargava) [1971937] - x86/microcode: Make microcode_init() static (Prarit Bhargava) [1971937] - x86/microcode/intel: Check patch signature before saving microcode for early loading (Prarit Bhargava) [1971937] - x86/microcode/amd: Remove unneeded break (Prarit Bhargava) [1971937] - x86/microcode: Do not select FW_LOADER (Prarit Bhargava) [1971937] - x86/microcode: Fix return value for microcode late loading (Prarit Bhargava) [1971937] - docs: fix broken documentation links (Prarit Bhargava) [1971937]- x86/cpu: Add Xeon Emerald Rapids to list of CPUs that support PPIN (Prarit Bhargava) [2215040] - redhat: configs: increase CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE (Audra Mitchell) [2215423] - docs: admin-guide: Add information about intel_pstate active mode (Prarit Bhargava) [2216962] - net/sched: flower: fix possible OOB write in fl_set_geneve_opt() (Davide Caratti) [2214027] {CVE-2023-35788} - scsi: aacraid: Reply queue mapping to CPUs based on IRQ affinity (Tomas Henzl) [2160149] - cifs: missing null pointer check in cifs_mount (Ronnie Sahlberg) [2215018] - cpufreq: intel_pstate: Enable HWP IO boost for all servers (Prarit Bhargava) [2175625] - block: make sure local irq is disabled when calling __blkcg_rstat_flush (Ming Lei) [2208904] - blk-cgroup: Flush stats before releasing blkcg_gq (Ming Lei) [2208904] - scsi: storvsc: Always set no_report_opcodes (Cathy Avery) [2217552] - scsi: storvsc: Don't pass unused PFNs to Hyper-V host (Cathy Avery) [2217552] - scsi: storvsc: Handle BlockSize change in Hyper-V VHD/VHDX file (Cathy Avery) [2217552] - dm thin: fix issue_discard to pass GFP_NOIO to __blkdev_issue_discard (Benjamin Marzinski) [2212240] - dm thin metadata: check fail_io before using data_sm (Benjamin Marzinski) [2215418] - dm: don't lock fs when the map is NULL during suspend or resume (Benjamin Marzinski) [2215418] - redhat/configs: enable CONFIG_MANA_INFINIBAND for RHEL (Kamal Heib) [2188737] - RDMA/mana_ib: Fix a bug when the PF indicates more entries for registering memory on first packet (Kamal Heib) [2188737] - RDMA/mana_ib: Prevent array underflow in mana_ib_create_qp_raw() (Kamal Heib) [2188737] - RDMA/mana: Remove redefinition of basic u64 type (Kamal Heib) [2188737] - RDMA/mana_ib: Add a driver for Microsoft Azure Network Adapter (Kamal Heib) [2188737] - net: mana: Define data structures for allocating doorbell page from GDMA (Kamal Heib) [2188737] - Documentation: net: net.core.txrehash is not specific to listening sockets (Antoine Tenart) [2175716] - net: ipv4: use consistent txhash in TIME_WAIT and SYN_RECV (Antoine Tenart) [2175716] - net: tcp: make the txhash available in TIME_WAIT sockets for IPv4 too (Antoine Tenart) [2175716] - net: ipv6: fix skb hash for some RST packets (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in RST packets (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in SYN_RECV state (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in TIME_WAIT state (Antoine Tenart) [2175716] - txhash: fix sk->sk_txrehash default (Antoine Tenart) [2175716] - socket: Don't use u8 type in uapi socket.h (Antoine Tenart) [2175716] - tcp: Change SYN ACK retransmit behaviour to account for rehash (Antoine Tenart) [2175716] - txhash: Add txrehash sysctl description (Antoine Tenart) [2175716] - txhash: Add socket option to control TX hash rethink behavior (Antoine Tenart) [2175716] - txhash: Make rethinking txhash behavior configurable via sysctl (Antoine Tenart) [2175716] - igc: Fix possible system crash when loading module (Corinna Vinschen) [2153370] - igc: Clean the TX buffer and TX descriptor ring (Corinna Vinschen) [2153370] - igc: Avoid transmit queue timeout for XDP (Corinna Vinschen) [2153370] - igc: read before write to SRRCTL register (Corinna Vinschen) [2153370] - igc: Enable and fix RX hash usage by netstack (Corinna Vinschen) [2153370] - igc: Remove obsolete DMA coalescing code (Corinna Vinschen) [2153370] - igc: fix the validation logic for taprio's gate list (Corinna Vinschen) [2153370] - igc: Add ndo_tx_timeout support (Corinna Vinschen) [2153370] - igc: return an error if the mac type is unknown in igc_ptp_systim_to_hwtstamp() (Corinna Vinschen) [2153370] - igc: Remove redundant pci_enable_pcie_error_reporting() (Corinna Vinschen) [2153370] - igc: Fix PPS delta between two synchronized end-points (Corinna Vinschen) [2153370] - igc: Remove reset adapter task for i226 during disable tsn config (Corinna Vinschen) [2153370] - igc: enable Qbv configuration for 2nd GCL (Corinna Vinschen) [2153370] - igc: remove I226 Qbv BaseTime restriction (Corinna Vinschen) [2153370] - igc: Set Qbv start_time and end_time to end_time if not being configured in GCL (Corinna Vinschen) [2153370] - igc: recalculate Qbv end_time by considering cycle time (Corinna Vinschen) [2153370] - igc: allow BaseTime 0 enrollment for Qbv (Corinna Vinschen) [2153370] - igc: Add checking for basetime less than zero (Corinna Vinschen) [2153370] - igc: Use strict cycles for Qbv scheduling (Corinna Vinschen) [2153370] - igc: Enhance Qbv scheduling by using first flag bit (Corinna Vinschen) [2153370] - r8152: fix the autosuspend doesn't work (Jose Ignacio Tornos Martinez) [2159264] - r8152: move setting r8153b_rx_agg_chg_indicate() (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the poor throughput for 2.5G devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix flow control issue of RTL8156A (Jose Ignacio Tornos Martinez) [2159264] - r8152: Add __GFP_NOWARN to big allocations (Jose Ignacio Tornos Martinez) [2159264] - r8152: reduce the control transfer of rtl8152_get_version() (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove rtl_vendor_mode function (Jose Ignacio Tornos Martinez) [2159264] - r8152: avoid to change cfg for all devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: add vendor/device ID pair for Microsoft Devkit (Jose Ignacio Tornos Martinez) [2159264] - cdc_ether: no need to blacklist any r8152 devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: add USB device driver for config selection (Jose Ignacio Tornos Martinez) [2159264] - net: usb: cdc_ether: add support for Thales Cinterion PLS62-W modem (Jose Ignacio Tornos Martinez) [2159264] - net: usb: cdc_ether: add u-blox 0x1343 composition (Jose Ignacio Tornos Martinez) [2159264] - r8152: Add MAC passthrough support for Lenovo Travel Hub (Jose Ignacio Tornos Martinez) [2159264] - r8152: allow userland to disable multicast (Jose Ignacio Tornos Martinez) [2159264] - r8152: add PID for the Lenovo OneLink+ Dock (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the RX FIFO settings when suspending (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the units of some registers for RTL8156A (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix a WOL issue (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix accessing unset transport header (Jose Ignacio Tornos Martinez) [2159264] - net: usb: r8152: Add in new Devices that are supported for Mac-Passthru (Jose Ignacio Tornos Martinez) [2159264] - cdc_ether: export usbnet_cdc_zte_rx_fixup (Jose Ignacio Tornos Martinez) [2159264] - USB: zaurus: support another broken Zaurus (Jose Ignacio Tornos Martinez) [2159264] - Revert "net: usb: r8152: Add MAC passthrough support for more Lenovo Docks" (Jose Ignacio Tornos Martinez) [2159264] - r8152: sync ocp base (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the force speed doesn't work for RTL8156 (Jose Ignacio Tornos Martinez) [2159264] - net: usb: r8152: Add MAC passthrough support for more Lenovo Docks (Jose Ignacio Tornos Martinez) [2159264] - net: usb: use eth_hw_addr_set() for dev->addr_len cases (Jose Ignacio Tornos Martinez) [2159264] - net: usb: use eth_hw_addr_set() instead of ether_addr_copy() (Jose Ignacio Tornos Martinez) [2159264] - r8152: avoid to resubmit rx immediately (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the maximum number of PLA bp for RTL8153C (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix writing USB_BP2_EN (Jose Ignacio Tornos Martinez) [2159264] - r8152: Fix a deadlock by doubly PM resume (Jose Ignacio Tornos Martinez) [2159264] - r8152: Fix potential PM refcount imbalance (Jose Ignacio Tornos Martinez) [2159264] - r8152: store the information of the pipes (Jose Ignacio Tornos Martinez) [2159264] - r8152: support pauseparam of ethtool_ops (Jose Ignacio Tornos Martinez) [2159264] - r8152: Avoid memcpy() over-reading of ETH_SS_STATS (Jose Ignacio Tornos Martinez) [2159264] - r8152: check the informaton of the device (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove some bit operations (Jose Ignacio Tornos Martinez) [2159264] - r8152: redefine REALTEK_USB_DEVICE macro (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove NCM mode from REALTEK_USB_DEVICE macro (Jose Ignacio Tornos Martinez) [2159264] - r8152: replace return with break for ram code speedup mode timeout (Jose Ignacio Tornos Martinez) [2159264] - r8152: search the configuration of vendor mode (Jose Ignacio Tornos Martinez) [2159264] - r8152: support PHY firmware for RTL8156 series (Jose Ignacio Tornos Martinez) [2159264] - r8152: support new chips (Jose Ignacio Tornos Martinez) [2159264] - r8152: add help function to change mtu (Jose Ignacio Tornos Martinez) [2159264] - r8152: adjust rtl8152_check_firmware function (Jose Ignacio Tornos Martinez) [2159264] - r8152: set inter fram gap time depending on speed (Jose Ignacio Tornos Martinez) [2159264] - r8152: adjust the flow of power cut for RTL8153B (Jose Ignacio Tornos Martinez) [2159264] - treewide: Use fallthrough pseudo-keyword (Jose Ignacio Tornos Martinez) [2159264] - nouveau: fix client work fence deletion race (Jocelyn Falempe) [2160452] - drm/mgag200: Fix gamma lut not initialized. (Jocelyn Falempe) [2160452] - drm/amd/display: Fix hang when skipping modeset (Jocelyn Falempe) [2160452] - drm/amd/display: Lowering min Z8 residency time (Jocelyn Falempe) [2160452] - drm/amd/display: Update minimum stutter residency for DCN314 Z8 (Jocelyn Falempe) [2160452] - drm/amd/display: Add minimum Z8 residency debug option (Jocelyn Falempe) [2160452] - drm/i915: disable sampler indirect state in bindless heap (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add Wa_14017856879 (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add workarounds Wa_14017066071 and Wa_14017654203 (Jocelyn Falempe) [2160452] - drm/i915: Add _PICK_EVEN_2RANGES() (Jocelyn Falempe) [2160452] - drm/amd/display: hpd rx irq not working with eDP interface (Jocelyn Falempe) [2160452] - drm/amd/display: merge dc_link.h into dc.h and dc_types.h (Jocelyn Falempe) [2160452] - drm/amd/pm: avoid potential UBSAN issue on legacy asics (Jocelyn Falempe) [2160452] - drm/amdgpu: disable sdma ecc irq only when sdma RAS is enabled in suspend (Jocelyn Falempe) [2160452] - drm/amdgpu: drop gfx_v11_0_cp_ecc_error_irq_funcs (Jocelyn Falempe) [2160452] - drm/amd/pm: parse pp_handle under appropriate conditions (Jocelyn Falempe) [2160452] - drm/amd/display: Enforce 60us prefetch for 200Mhz DCFCLK modes (Jocelyn Falempe) [2160452] - drm/amdgpu: Fix vram recover doesn't work after whole GPU reset (v2) (Jocelyn Falempe) [2160452] - drm/amdgpu: change gfx 11.0.4 external_id range (Jocelyn Falempe) [2160452] - drm/amdgpu/jpeg: Remove harvest checking for JPEG3 (Jocelyn Falempe) [2160452] - drm/amdgpu/gfx: disable gfx9 cp_ecc_error_irq only when enabling legacy gfx ras (Jocelyn Falempe) [2160452] - drm/amdgpu: fix amdgpu_irq_put call trace in gmc_v11_0_hw_fini (Jocelyn Falempe) [2160452] - drm/amdgpu: fix an amdgpu_irq_put() issue in gmc_v9_0_hw_fini() (Jocelyn Falempe) [2160452] - drm/amdgpu: fix amdgpu_irq_put call trace in gmc_v10_0_hw_fini (Jocelyn Falempe) [2160452] - drm/amd/display: Change default Z8 watermark values (Jocelyn Falempe) [2160452] - drm/amdgpu: drop redundant sched job cleanup when cs is aborted (Jocelyn Falempe) [2160452] - drm/amd/display: fix flickering caused by S/G mode (Jocelyn Falempe) [2160452] - drm/amd/display: fix access hdcp_workqueue assert (Jocelyn Falempe) [2160452] - drm/amd/display: filter out invalid bits in pipe_fuses (Jocelyn Falempe) [2160452] - drm/amd/display: Fix 4to1 MPC black screen with DPP RCO (Jocelyn Falempe) [2160452] - drm/amd/display: Add NULL plane_state check for cursor disable logic (Jocelyn Falempe) [2160452] - drm/panel: otm8009a: Set backlight parent to panel device (Jocelyn Falempe) [2160452] - drm/dsc: fix drm_edp_dsc_sink_output_bpp() DPCD high byte usage (Jocelyn Falempe) [2160452] - drm/i915/dsi: Use unconditional msleep() instead of intel_dsi_msleep() (Jocelyn Falempe) [2160452] - drm/i915: Check pipe source size when using skl+ scalers (Jocelyn Falempe) [2160452] - drm/i915/color: Fix typo for Plane CSC indexes (Jocelyn Falempe) [2160452] - drm/bridge: lt8912b: Fix DSI Video Mode (Jocelyn Falempe) [2160452] - drm/amdgpu: add a missing lock for AMDGPU_SCHED (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add the missing CPU transcoder mask in intel_device_info (Jocelyn Falempe) [2160452] - drm/i915/guc: Actually return an error if GuC version range check fails (Jocelyn Falempe) [2160452] - drm/i915/guc: More debug print updates - UC firmware (Jocelyn Falempe) [2160452] - drm/amd/display: Update bounding box values for DCN321 (Jocelyn Falempe) [2160452] - drm/amd/display: Do not clear GPINT register when releasing DMUB from reset (Jocelyn Falempe) [2160452] - drm/amd/display: Reset OUTBOX0 r/w pointer on DMUB reset (Jocelyn Falempe) [2160452] - drm/amd/display: Fixes for dcn32_clk_mgr implementation (Jocelyn Falempe) [2160452] - drm/amd/display: Return error code on DSC atomic check failure (Jocelyn Falempe) [2160452] - drm/amd/display: Add missing WA and MCLK validation (Jocelyn Falempe) [2160452] - drm/panel: novatek-nt35950: Only unregister DSI1 if it exists (Jocelyn Falempe) [2160452] - drm/panel: novatek-nt35950: Improve error handling (Jocelyn Falempe) [2160452] - drm/i915: Fix memory leaks in i915 selftests (Jocelyn Falempe) [2160452] - drm/i915: Make intel_get_crtc_new_encoder() less oopsy (Jocelyn Falempe) [2160452] - drm/amd/display: Fix potential null dereference (Jocelyn Falempe) [2160452] - drm/ttm/pool: Fix ttm_pool_alloc error path (Jocelyn Falempe) [2160452] - drm/i915/pxp: limit drm-errors or warning on firmware API failures (Jocelyn Falempe) [2160452] - drm/i915/pxp: Invalidate all PXP fw sessions during teardown (Jocelyn Falempe) [2160452] - drm/amd/display/dc/dce60/Makefile: Fix previous attempt to silence known override-init warnings (Jocelyn Falempe) [2160452] - accel: Link to compute accelerator subsystem intro (Jocelyn Falempe) [2160452] - drm/bridge: adv7533: Fix adv7533_mode_valid for adv7533 and adv7535 (Jocelyn Falempe) [2160452] - drm/probe-helper: Cancel previous job before starting new one (Jocelyn Falempe) [2160452] - drm/vgem: add missing mutex_destroy (Jocelyn Falempe) [2160452] - drm/i915/dg2: Drop one PCI ID (Jocelyn Falempe) [2160452] - drm/amd/pm: re-enable the gfx imu when smu resume (Jocelyn Falempe) [2160452] - drm/vmwgfx: Fix Legacy Display Unit atomic drm support (Jocelyn Falempe) [2160452] - drm/fb-helper: set x/yres_virtual in drm_fb_helper_check_var (Jocelyn Falempe) [2160452] - redhat: include new drm tests in mod-internals (Jocelyn Falempe) [2160452] - drm/amd/display: build with std=gnu99 (Jocelyn Falempe) [2160452] - overflow: Introduce overflows_type() and castable_to_type() (Jocelyn Falempe) [2160452] - Revert "driver core: make struct bus_type.uevent() take a const *" (Jocelyn Falempe) [2160452] - Revert "iommu: Add a gfp parameter to iommu_map()" (Jocelyn Falempe) [2160452] - Revert "mm: replace vma->vm_flags direct modifications with modifier calls" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.2..v6.3 (Jocelyn Falempe) [2160452] - redhat: include new drm_kunit_helpers in mod-internals (Jocelyn Falempe) [2160452] - drm/i915: build i915 with std=gnu99 (Jocelyn Falempe) [2160452] - drm/amdgpu: Add missing include for ppc64le (Jocelyn Falempe) [2160452] - drm/fb-helper: Add missing include for s390x (Jocelyn Falempe) [2160452] - drm/edid: Add missing include (Jocelyn Falempe) [2160452] - Revert "drm/i915/gvt: use atomic operations to change the vGPU status" (Jocelyn Falempe) [2160452] - Revert "kunit: Use KUNIT_EXPECT_MEMEQ macro" (Jocelyn Falempe) [2160452] - Revert "treewide: use get_random_u32_inclusive() when possible" (Jocelyn Falempe) [2160452] - Revert "treewide: use get_random_u32_below() instead of deprecated function" (Jocelyn Falempe) [2160452] - Revert "overflow: Introduce overflows_type() and castable_to_type()" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.1..v6.2 (Jocelyn Falempe) [2160452] - kconfig: disable DRM dynamic debug. (Jocelyn Falempe) [2160452] - drm/vkms: build driver with gnu99 (Jocelyn Falempe) [2160452] - Revert "drm: POC drm on dyndbg - use in core, 2 helpers, 3 drivers." (Jocelyn Falempe) [2160452] - Revert "mm: free device private pages have zero refcount" (Jocelyn Falempe) [2160452] - Revert "mm/memory.c: fix race when faulting a device private page" (Jocelyn Falempe) [2160452] - Revert "drm/i915/gvt: simplify vgpu configuration management" (Jocelyn Falempe) [2160452] - Revert "i915: use the VMA iterator" (Jocelyn Falempe) [2160452] - Revert "drm/i915/userptr: restore probe_range behaviour" (Jocelyn Falempe) [2160452] - Revert "dynamic_dname(): drop unused dentry argument" (Jocelyn Falempe) [2160452] - Revert "i2c: Make remove callback return void" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.0..v6.1 (Jocelyn Falempe) [2160452] - Enable A64FX_DIAG config option (Charles Mirabile) [2047817] - NMI workaround for GIC irq controllers (Charles Mirabile) [2047817] - arm64: entry: avoid kprobe recursion (Charles Mirabile) [2047817] - soc: a64fx-diag: disable modular build (Charles Mirabile) [2047817] - soc: fujitsu: Add A64FX diagnostic interrupt driver (Charles Mirabile) [2047817] - irqchip/gic-v3: Fix priority mask handling (Charles Mirabile) [2047817] - irqchip/gic-v3: Refactor ISB + EOIR at ack time (Charles Mirabile) [2047817] - irqchip/gic-v3: Ensure pseudo-NMIs have an ISB between ack and handling (Charles Mirabile) [2047817] - arm64: select TRACE_IRQFLAGS_NMI_SUPPORT (Charles Mirabile) [2047817] - arm64: entry: Save some nops when CONFIG_ARM64_PSEUDO_NMI is not set (Charles Mirabile) [2047817] - irqchip/gic-v3: Fix priority comparison when non-secure priorities are used (Charles Mirabile) [2047817] - arm64: entry: add missing noinstr (Charles Mirabile) [2047817] - arm64: suspend: Use cpuidle context helpers in cpu_suspend() (Charles Mirabile) [2047817] - PSCI: Use cpuidle context helpers in psci_cpu_suspend_enter() (Charles Mirabile) [2047817] - arm64: Convert cpu_do_idle() to using cpuidle context helpers (Charles Mirabile) [2047817] - arm64: Add cpuidle context save/restore helpers (Charles Mirabile) [2047817] - arm64: entry: make NMI entry/exit functions static (Charles Mirabile) [2047817] - arm64: entry: split SDEI entry (Charles Mirabile) [2047817] - arm64: entry: split bad stack entry (Charles Mirabile) [2047817] - arm64: entry: fold el1_inv() into el1h_64_sync_handler() (Charles Mirabile) [2047817] - arm64: entry: handle all vectors with C (Charles Mirabile) [2047817] - arm64: entry: template the entry asm functions (Charles Mirabile) [2047817] - arm64: entry: improve bad_mode() (Charles Mirabile) [2047817] - arm64: entry: move bad_mode() to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: consolidate EL1 exception returns (Charles Mirabile) [2047817] - arm64: entry: organise entry vectors consistently (Charles Mirabile) [2047817] - arm64: entry: organise entry handlers consistently (Charles Mirabile) [2047817] - arm64: entry: convert IRQ+FIQ handlers to C (Charles Mirabile) [2047817] - arm64: entry: add a call_on_irq_stack helper (Charles Mirabile) [2047817] - arm64: entry: move NMI preempt logic to C (Charles Mirabile) [2047817] - arm64: entry: move arm64_preempt_schedule_irq to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: convert SError handlers to C (Charles Mirabile) [2047817] - arm64: entry: unmask IRQ+FIQ after EL0 handling (Charles Mirabile) [2047817] - arm64: remove redundant local_daif_mask() in bad_mode() (Charles Mirabile) [2047817] - arm64: entry: always set GIC_PRIO_PSR_I_SET during entry (Charles Mirabile) [2047817] - arm64: entry: remove test_irqs_unmasked macro (Charles Mirabile) [2047817] - arm64: irq: allow FIQs to be handled (Charles Mirabile) [2047817] - arm64: Always keep DAIF.[IF] in sync (Charles Mirabile) [2047817] - arm64: entry: factor irq triage logic into macros (Charles Mirabile) [2047817] - arm64: irq: rework root IRQ handler registration (Charles Mirabile) [2047817] - arm64: don't use GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - genirq: Allow architectures to override set_handle_irq() fallback (Charles Mirabile) [2047817] - irqchip: Do not blindly select CONFIG_GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - arm64: entry: consolidate Cortex-A76 erratum 1463225 workaround (Charles Mirabile) [2047817] - arm64: entry: remove redundant IRQ flag tracing (Charles Mirabile) [2047817] - arm64: entry: suppress W=1 prototype warnings (Charles Mirabile) [2047817] - arm64: sdei: explicitly simulate PAN/UAO entry (Charles Mirabile) [2047817] - arm64: entry: fix EL1 debug transitions (Charles Mirabile) [2047817] - arm64: entry: fix NMI {user, kernel}->kernel transitions (Charles Mirabile) [2047817] - arm64: entry: fix non-NMI kernel<->kernel transitions (Charles Mirabile) [2047817] - arm64: ptrace: prepare for EL1 irq/rcu tracking (Charles Mirabile) [2047817] - arm64: entry: fix non-NMI user<->kernel transitions (Charles Mirabile) [2047817] - arm64: entry: move el1 irq/nmi logic to C (Charles Mirabile) [2047817] - arm64: entry: prepare ret_to_user for function call (Charles Mirabile) [2047817] - arm64: entry: move enter_from_user_mode to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: mark entry code as noinstr (Charles Mirabile) [2047817] - arm64: mark idle code as noinstr (Charles Mirabile) [2047817] - arm64: add C wrappers for SET_PSTATE_*() (Charles Mirabile) [2047817] - kgdb: Honour the kprobe blocklist when setting breakpoints (Charles Mirabile) [2047817] - genirq: Add stub for set_handle_irq() when !GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - arm64: Improve diagnostics when trapping BRK with FAULT_BRK_IMM (Charles Mirabile) [2047817] - arm64/entry: deduplicate SW PAN entry/exit routines (Charles Mirabile) [2047817] - arm64: Prepare arch_nmi_enter() for recursion (Charles Mirabile) [2047817] - arm64: Make debug exception handlers visible from RCU (Charles Mirabile) [2047817] - irqchip: Remove unneeded select IRQ_DOMAIN (Charles Mirabile) [2047817] - net/mlx5e: TC, Fix using eswitch mapping in nic mode (Amir Tzin) [2166015] - net/mlx5e: Use query_special_contexts cmd only once per mdev (Amir Tzin) [2166015] - net/mlx5e: Move Ethernet driver debugfs to profile init callback (Amir Tzin) [2166015] - net/mlx5e: Do not update SBCM when prio2buffer command is invalid (Amir Tzin) [2166015] - RDMA/mlx5: Use correct device num_ports when modify DC (Amir Tzin) [2166015] - net/mlx5e: Nullify table pointer when failing to create (Amir Tzin) [2166015] - net/mlx5e: Fix error flow in representor failing to add vport rx rule (Amir Tzin) [2166015] - net/mlx5: E-switch, Don't destroy indirect table in split rule (Amir Tzin) [2166015] - net/mlx5: E-switch, Create per vport table based on devlink encap mode (Amir Tzin) [2166015] - net/mlx5e: Don't clone flow post action attributes second time (Amir Tzin) [2166015] - Revert "net/mlx5: Expose vnic diagnostic counters for eswitch managed vports" (Amir Tzin) [2166015] - RDMA/mlx5: Fix flow counter query via DEVX (Amir Tzin) [2166015] - RDMA/mlx5: Check pcie_relaxed_ordering_enabled() in UMR (Amir Tzin) [2166015] - net/mlx5: Fix wrong comment (Amir Tzin) [2166015] - net/mlx5e: Coding style fix, add empty line (Amir Tzin) [2166015] - RDMA/mlx5: Coding style fix reported by checkpatch (Amir Tzin) [2166015] - net/mlx5e: Release the label when replacing existing ct entry (Amir Tzin) [2165914] - net/mlx5: Release tunnel device after tc update skb (Amir Tzin) [2166015] - Revert "net/mlx5: Expose steering dropped packets counter" (Amir Tzin) [2166015] - Revert "net/mlx5e: Don't use termination table when redundant" (Amir Tzin) [2166015] - Revert "net/mlx5: Enable management PF initialization" (Amir Tzin) [2166015] - net/mlx5: E-Switch, Fix an Oops in error handling code (Amir Tzin) [2166015] - net/mlx5: Read the TC mapping of all priorities on ETS query (Amir Tzin) [2166015] - net/mlx5e: Initialize link speed to zero (Amir Tzin) [2166015] - net/mlx5: Fix steering rules cleanup (Amir Tzin) [2166015] - net/mlx5e: Block entering switchdev mode with ns inconsistency (Amir Tzin) [2166015 2166018] - net/mlx5e: Set uplink rep as NETNS_LOCAL (Amir Tzin) [2166015] - IB/mlx5: Add support for 400G_8X lane speed (Amir Tzin) [2166015] - net/mlx5e: TC, Remove error message log print (Amir Tzin) [2166015] - net/mlx5e: TC, fix cloned flow attribute (Amir Tzin) [2166015] - net/mlx5e: TC, fix missing error code (Amir Tzin) [2166015] - net/sched: TC, fix raw counter initialization (Amir Tzin) [2166015] - net/mlx5: Set BREAK_FW_WAIT flag first when removing driver (Amir Tzin) [2166013] - net/mlx5e: Fix cleanup null-ptr deref on encap lock (Amir Tzin) [2166013] - net/mlx5: E-switch, Fix missing set of split_count when forward to ovs internal port (Amir Tzin) [2166013] - net/mlx5: E-switch, Fix wrong usage of source port rewrite in split rules (Amir Tzin) [2166013 2166018] - net/mlx5: Disable eswitch before waiting for VF pages (Amir Tzin) [2166013] - net/mlx5: Fix setting ec_function bit in MANAGE_PAGES (Amir Tzin) [2166013] - net/mlx5e: Don't cache tunnel offloads capability (Amir Tzin) [2166013] - net/mlx5e: Remove hairpin write debugfs files (Amir Tzin) [2166015] - net/mlx5: Remove NULL check before dev_{put, hold} (Amir Tzin) [2166015] - net/mlx5e: TC, Set CT miss to the specific ct action instance (Amir Tzin) [2166015] - net/mlx5e: Rename CHAIN_TO_REG to MAPPED_OBJ_TO_REG (Amir Tzin) [2166015] - net/mlx5: Refactor tc miss handling to a single function (Amir Tzin) [2166015] - net/mlx5: Kconfig: Make tc offload depend on tc skb extension (Amir Tzin) [2166015] - net/sched: Rename user cookie and act cookie (mlx5 hunk only) (Amir Tzin) [2166015] - IB/mlx5: Extend debug control for CC parameters (Amir Tzin) [2166015] - net/mlx5e: Allow offloading of ct 'new' match (Amir Tzin) [2165914 2166015] - net/mlx5e: Implement CT entry update (Amir Tzin) [2165914 2166015] - net: flow_offload: provision conntrack info in ct_metadata(mlx5 hunks only) (Amir Tzin) [2165914 2166015] - net/mlx5e: Fix outdated TLS comment (Amir Tzin) [2166015] - net/mlx5e: Remove unused function mlx5e_sq_xmit_simple (Amir Tzin) [2166015] - net/mlx5: Simplify eq list traversal (Amir Tzin) [2166015] - net/mlx5e: Switch to using napi_build_skb() (Amir Tzin) [2166015] - RDMA/mlx5: Use query_special_contexts for mkeys (Amir Tzin) [2166015] - net/mlx5e: Use query_special_contexts for mkeys (Amir Tzin) [2166015] - net/mlx5: Change define name for 0x100 lkey value (Amir Tzin) [2166015] - net/mlx5: Expose bits for querying special mkeys (Amir Tzin) [2166015] - RDMA/mlx5: Use rdma_umem_for_each_dma_block() (Amir Tzin) [2166015] - net/mlx5e: TC, fix return value check in mlx5e_tc_act_stats_create() (Amir Tzin) [2166015] - net/mlx5e: TC, support per action stats (Amir Tzin) [2166015] - net/mlx5e: TC, map tc action cookie to a hw counter (Amir Tzin) [2166015] - net/mlx5e: TC, store tc action cookies per attr (Amir Tzin) [2166015] - net/mlx5e: TC, add hw counter to branching actions (Amir Tzin) [2166015] - RDMA/mlx5: Track netdev to avoid deadlock during netdev notifier unregister (Amir Tzin) [2166015] - net/mlx5e: Propagate an internal event in case uplink netdev changes (Amir Tzin) [2166015] - net/mlx5e: Fix trap event handling (Amir Tzin) [2166015] - net/mlx5: fw_tracer, Add support for unrecognized string (Amir Tzin) [2166015] - net/mlx5: fw_tracer, Add support for strings DB update event (Amir Tzin) [2166015] - net/mlx5: fw_tracer, allow 0 size string DBs (Amir Tzin) [2166015] - net/mlx5: fw_tracer: Fix debug print (Amir Tzin) [2166015] - net/mlx5: fs, Remove redundant assignment of size (Amir Tzin) [2166015] - net/mlx5: fs_core, Remove redundant variable err (Amir Tzin) [2166015] - net/mlx5: fs, Remove redundant vport_number assignment (Amir Tzin) [2166015] - net/mlx5e: Remove redundant code for handling vlan actions (Amir Tzin) [2166015 2166018] - net/mlx5: fw reset: Skip device ID check if PCI link up failed (Amir Tzin) [2166015] - net/mlx5: Remove redundant health work lock (Amir Tzin) [2166015] - mlx5: reduce stack usage in mlx5_setup_tc (Amir Tzin) [2166015] - net/mlx5e: Trigger NAPI after activating an SQ (Amir Tzin) [2166015] - net/mlx5e: IPoIB, Add support for XDR speed (Amir Tzin) [2166015] - net/mlx5: Lag, Move mpesw related definitions to mpesw.h (Amir Tzin) [2166015] - net/mlx5: Lag, Use flag to check for shared FDB mode (Amir Tzin) [2166015] - net/mlx5: Lag, Remove redundant bool allocation on the stack (Amir Tzin) [2166015] - net/mlx5: Lag, Use mlx5_lag_dev() instead of derefering pointers (Amir Tzin) [2166015] - net/mlx5: Lag, Update multiport eswitch check to log an error (Amir Tzin) [2166015] - net/mlx5: Add firmware support for MTUTC scaled_ppm frequency adjustments (Amir Tzin) [2166015] - net/mlx5: Add hardware extended range support for PTP adjtime and adjphase (Amir Tzin) [2166015] - net/mlx5: Add adjphase function to support hardware-only offset control (Amir Tzin) [2166015] - net/mlx5: Geneve, Fix handling of Geneve object id as error code (Amir Tzin) [2166015] - net/mlx5e: Verify flow_source cap before using it (Amir Tzin) [2166015 2166018] - net/mlx5: ECPF, wait for VF pages only after disabling host PFs (Amir Tzin) [2166015] - mlx5: fix possible ptp queue fifo use-after-free (Amir Tzin) [2166015] - mlx5: fix skb leak while fifo resync and push (Amir Tzin) [2166015] - net/mlx5: Fix memory leak in error flow of port set buffer (Amir Tzin) [2166015] - net/mlx5e: Remove incorrect debugfs_create_dir NULL check in TLS (Amir Tzin) [2166015] - net/mlx5e: Remove incorrect debugfs_create_dir NULL check in hairpin (Amir Tzin) [2166015] - net/mlx5: Enhance debug print in page allocation failure (Amir Tzin) [2166015] - net/mlx5e: kTLS, Improve connection rate by using fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Keep only one bulk of full available DEKs (Amir Tzin) [2166015] - net/mlx5: Add async garbage collector for DEK bulk (Amir Tzin) [2166015] - net/mlx5: Reuse DEKs after executing SYNC_CRYPTO command (Amir Tzin) [2166015] - net/mlx5: Use bulk allocation for fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Add bulk allocation and modify_dek operation (Amir Tzin) [2166015] - net/mlx5: Add support SYNC_CRYPTO command (Amir Tzin) [2166015] - net/mlx5: Add new APIs for fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Refactor the encryption key creation (Amir Tzin) [2166015] - net/mlx5: Add const to the key pointer of encryption key creation (Amir Tzin) [2166015] - net/mlx5: Prepare for fast crypto key update if hardware supports it (Amir Tzin) [2166015] - net/mlx5: Change key type to key purpose (Amir Tzin) [2166015] - net/mlx5: Add IFC bits and enums for crypto key (Amir Tzin) [2166015] - net/mlx5: Add IFC bits for general obj create param (Amir Tzin) [2166015] - net/mlx5: Header file for crypto (Amir Tzin) [2166015] - net/mlx5e: Use read lock for eswitch get callbacks (Amir Tzin) [2166015 2166018] - net/mlx5e: Remove redundant allocation of spec in create indirect fwd group (Amir Tzin) [2165994 2166015] - net/mlx5e: Support Geneve and GRE with VF tunnel offload (Amir Tzin) [2165994 2166015 2166018] - net/mlx5: E-Switch, Fix typo for egress (Amir Tzin) [2166015] - net/mlx5e: Warn when destroying mod hdr hash table that is not empty (Amir Tzin) [2166015] - net/mlx5e: TC, Use common function allocating flow mod hdr or encap mod hdr (Amir Tzin) [2166015] - net/mlx5e: TC, Add tc prefix to attach/detach hdr functions (Amir Tzin) [2166015] - net/mlx5e: TC, Pass flow attr to attach/detach mod hdr functions (Amir Tzin) [2166015] - net/mlx5: E-switch, Remove redundant comment about meta rules (Amir Tzin) [2166015] - net/mlx5: Suppress error logging on UCTX creation (Amir Tzin) [2166015] - net/mlx5e: Suppress Send WQEBB room warning for PAGE_SIZE >= 16KB (Amir Tzin) [2166015] - net/mlx5e: Use kzalloc() in mlx5e_accel_fs_tcp_create() (Amir Tzin) [2166015] - net/mlx5: remove redundant ret variable (Amir Tzin) [2166015] - net/mlx5e: Replace 0-length array with flexible array (Amir Tzin) [2166015] - net/mlx5e: Replace zero-length array with flexible-array member (Amir Tzin) [2166015] - net/mlx5: Prevent high-rate FW commands from populating all slots (Amir Tzin) [2166015] - net/mlx5: Introduce and use opcode getter in command interface (Amir Tzin) [2166015] - net/mlx5: Enable management PF initialization (Amir Tzin) [2166015] - net/mlx5e: Add hairpin debugfs files (Amir Tzin) [2166015] - net/mlx5e: Add flow steering debugfs directory (Amir Tzin) [2166015] - net/mlx5e: Add hairpin params structure (Amir Tzin) [2166015] - net/mlx5e: kTLS, Add debugfs (Amir Tzin) [2166015] - net/mlx5e: Add Ethernet driver debugfs (Amir Tzin) [2166015] - net/mlx5e: Update shared buffer along with device buffer changes (Amir Tzin) [2166015] - net/mlx5e: Add API to query/modify SBPR and SBCM registers (Amir Tzin) [2166015] - net/mlx5: Expose shared buffer registers bits and structs (Amir Tzin) [2166015] - net/mlx5: Serialize module cleanup with reload and remove (Amir Tzin) [2166013] - net/mlx5: fw_tracer, Zero consumer index when reloading the tracer (Amir Tzin) [2166013] - net/mlx5: fw_tracer, Clear load bit when freeing string DBs buffers (Amir Tzin) [2166013] - net/mlx5: Expose SF firmware pages counter (Amir Tzin) [2166013] - net/mlx5: Store page counters in a single array (Amir Tzin) [2166013] - net/mlx5e: IPoIB, Show unknown speed instead of error (Amir Tzin) [2166013] - net/mlx5e: Fix crash unsetting rx-vlan-filter in switchdev mode (Amir Tzin) [2055530 2166013] - net/mlx5: Bridge, fix ageing of peer FDB entries (Amir Tzin) [2166013] - net/mlx5: DR, Fix potential race in dr_rule_create_rule_nic (Amir Tzin) [2166013] - net/mlx5e: Update rx ring hw mtu upon each rx-fcs flag change (Amir Tzin) [2166013] - net/mlx5e: Don't support encap rules with gbp option (Amir Tzin) [2166013] - net/mlx5e: Fix memory leak on updating vport counters (Amir Tzin) [2165677 2166013] - net/mlx5e: TC, Restore pkt rate policing support (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, ignore match level for post meter rules (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Fix 'stack frame size exceeds limit' error in dr_rule (Amir Tzin) [2166013] - net/mlx5: Lag, fix failure to cancel delayed bond work (Amir Tzin) [2166013] - net/mlx5e: Fix RX reporter for XSK RQs (Amir Tzin) [2166013] - net/mlx5: Expose steering dropped packets counter (Amir Tzin) [2166013] - net/mlx5: Refactor and expand rep vport stat group (Amir Tzin) [2165677 2166013] - net/mlx5e: TC, add support for meter mtu offload (Amir Tzin) [2165893 2166013 2166018] - net/mlx5e: meter, add mtu post meter tables (Amir Tzin) [2165893 2166013] - net/mlx5e: meter, refactor to allow multiple post meter tables (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add support for range match action (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add function that tells if STE miss addr has been initialized (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Some refactoring of miss address handling (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Manage definers with refcounts (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Handle FT action in a separate function (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Rework is_fw_table function (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add functions to create/destroy MATCH_DEFINER general object (Amir Tzin) [2165893 2166013] - net/mlx5: fs, add match on ranges API (Amir Tzin) [2165893 2166013] - net/mlx5: mlx5_ifc updates for MATCH_DEFINER general object (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, allow meter jump control action (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, init post meter rules with branching attributes (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, rename post_meter actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, initialize branching action with target attr (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, initialize branch flow attributes (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, set control params for branching actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, validate action list per attribute (Amir Tzin) [2165893 2166013] - net/mlx5e: Adjust function actions_match_supported() to upstream. (Amir Tzin) [2166006] - net/mlx5e: TC, add terminating actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, reuse flow attribute post parser processing (Amir Tzin) [2165893 2166013] - net/mlx5: fs, assert null dest pointer when dest_num is 0 (Amir Tzin) [2165893 2166013] - net/mlx5e: E-Switch, handle flow attribute with no destinations (Amir Tzin) [2165893 2166013 2166018] - RDMA/mlx5: Remove not-used IB_FLOW_SPEC_IB define (Amir Tzin) [2166013] - RDMA/mlx5: no need to kfree NULL pointer (Amir Tzin) [2166013] - net/mlx5e: TC, Add offload support for trap with additional actions (Amir Tzin) [2166013 2166018] - net/mlx5e: Do early return when setup vports dests for slow path flow (Amir Tzin) [2166013 2166018] - net/mlx5e: Support devlink reload of IPsec core (Amir Tzin) [2166013] - net/mlx5: Remove redundant check (Amir Tzin) [2166013] - net/mlx5e: Don't use termination table when redundant (Amir Tzin) [2166013] - net/mlx5: Remove unused ctx variables (Amir Tzin) [2166013] - net/mlx5e: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Amir Tzin) [2166013] - net/mlx5e: Remove unneeded io-mapping.h #include (Amir Tzin) [2166013] - net/mlx5e: CT, optimize pre_ct table lookup (Amir Tzin) [2166013] - net/mlx5e: kTLS, Use a single async context object per a callback bulk (Amir Tzin) [2166013] - net/mlx5e: kTLS, Remove unnecessary per-callback completion (Amir Tzin) [2166013] - net/mlx5e: kTLS, Remove unused work field (Amir Tzin) [2166013] - net/mlx5e: TC, Remove redundant WARN_ON() (Amir Tzin) [2166013] - net/mlx5e: Add error flow when failing update_rx (Amir Tzin) [2166013] - net/mlx5e: Move params kernel log print to probe function (Amir Tzin) [2166013] - net/mlx5e: Support enhanced CQE compression (Amir Tzin) [2166013] - net/mlx5e: Use clamp operation instead of open coding it (Amir Tzin) [2166013] - net/mlx5e: remove unused list in arfs (Amir Tzin) [2166013] - net/mlx5: Expose vhca_id to debugfs (Amir Tzin) [2166013] - net/mlx5: Unregister traps on driver unload flow (Amir Tzin) [2166013] - net/mlx5: Fix spelling mistake "destoy" -> "destroy" (Amir Tzin) [2166013] - net/mlx5: Bridge, Use debug instead of warn if entry doesn't exists (Amir Tzin) [2166013] - RDMA/mlx5: Change debug log level for remote access error syndromes (Amir Tzin) [2166013] - ptp: mlx5: convert to .adjfine and adjust_by_scaled_ppm (Amir Tzin) [2166013] - net/mlx5: DR, Remove the buddy used_list (Amir Tzin) [2166013] - net/mlx5: DR, Keep track of hot ICM chunks in an array instead of list (Amir Tzin) [2166013] - net/mlx5: DR, Lower sync threshold for ICM hot memory (Amir Tzin) [2166013] - net/mlx5: DR, Allocate htbl from its own slab allocator (Amir Tzin) [2166013] - net/mlx5: DR, Allocate icm_chunks from their own slab allocator (Amir Tzin) [2166013] - net/mlx5: DR, Manage STE send info objects in pool (Amir Tzin) [2166013] - net/mlx5: DR, In rehash write the line in the entry immediately (Amir Tzin) [2166013] - net/mlx5: DR, Handle domain memory resources init/uninit separately (Amir Tzin) [2166013] - net/mlx5: DR, Initialize chunk's ste_arrays at chunk creation (Amir Tzin) [2166013] - net/mlx5: DR, For short chains of STEs, avoid allocating ste_arr dynamically (Amir Tzin) [2166013] - net/mlx5: DR, Remove unneeded argument from dr_icm_chunk_destroy (Amir Tzin) [2166013] - net/mlx5: DR, Check device state when polling CQ (Amir Tzin) [2166013] - net/mlx5: DR, In destroy flow, free resources even if FW command failed (Amir Tzin) [2166013] - net/mlx5: Add support for NPPS with real time mode (Amir Tzin) [2166006] - net/mlx5: Expose NPPS related registers (Amir Tzin) [2166006] - net/mlx5e: Use kvfree() in mlx5e_accel_fs_tcp_create() (Amir Tzin) [2166006] - net/mlx5e: Remove leftovers from old XSK queues enumeration (Amir Tzin) [2166006] - net/mlx5: Lag, avoid lockdep warnings (Amir Tzin) [2166006] - net/mlx5: Update fw fatal reporter state on PCI handlers successful recover (Amir Tzin) [2166006] - net/mlx5: Make ASO poll CQ usable in atomic context (Amir Tzin) [2166006] - net/mlx5: E-Switch, Return EBUSY if can't get mode lock (Amir Tzin) [2166006] - net/mlx5: E-switch, Don't update group if qos is not enabled (Amir Tzin) [2166006] - net/mlx5: E-Switch, Allow offloading fwd dest flow table with vport (Amir Tzin) [2166006 2166018] - net/mlx5: Set default grace period based on function type (Amir Tzin) [2166006] - net/mlx5: Start health poll at earlier stage of driver load (Amir Tzin) [2166006] - net/mlx5e: Expose rx_oversize_pkts_buffer counter (Amir Tzin) [2166006] - net/mlx5: Remove from FPGA IFC file not-needed definitions (Amir Tzin) [2166006] - net/mlx5: Remove unused structs (Amir Tzin) [2166006] - net/mlx5: Remove unused functions (Amir Tzin) [2166006] - net/mlx5: detect and enable bypass port select flow table (Amir Tzin) [2166006] - net/mlx5: Lag, enable hash mode by default for all NICs (Amir Tzin) [2166006] - net/mlx5: Lag, set active ports if support bypass port select flow table (Amir Tzin) [2166006] - RDMA/mlx5: Don't set tx affinity when lag is in hash mode (Amir Tzin) [2166006] - net/mlx5: add IFC bits for bypassing port select flow table (Amir Tzin) [2166006] - RDMA/mlx5: Move function mlx5_core_query_ib_ppcnt() to mlx5_ib (Amir Tzin) [2166006] - IB/mlx5: Support querying eswitch functions from DEVX (Amir Tzin) [2166006] - net: ethernet: move from strlcpy with unused retval to strscpy (mlx5 hunks only) (Amir Tzin) [2166006] - net/mlx5e: Do not use err uninitialized in mlx5e_rep_add_meta_tunnel_rule() (Amir Tzin) [2166006] - IB/mlx5: Remove duplicate header inclusion related to ODP (Amir Tzin) [2166006] - net/mlx5: TC, Add support for SF tunnel offload (Amir Tzin) [2166006] - net/mlx5: E-Switch, Move send to vport meta rule creation (Amir Tzin) [2166006 2166018] - net/mlx5: E-Switch, Split creating fdb tables into smaller chunks (Amir Tzin) [2166006 2166018] - net/mlx5: E-Switch, Add default drop rule for unmatched packets (Amir Tzin) [2166006 2166018] - net/mlx5: Adjust function mlx5_eswitch_inline_mode_get() location (Amir Tzin) [2166006] - net/mlx5e: Completely eliminate priv from fs.h (Amir Tzin) [2166006] - net/mlx5e: Make all ttc functions of en_fs get fs struct as argument (Amir Tzin) [2166006] - net/mlx5e: Make flow steering arfs independent of priv (Amir Tzin) [2166006] - net/mlx5e: Introduce flow steering debug macros (Amir Tzin) [2166006] - net/mlx5e: Separate ethtool_steering from fs.h and make private (Amir Tzin) [2166006] - net/mlx5e: Directly get flow_steering struct as input when init/cleanup ethtool steering (Amir Tzin) [2166006] - Revert "[netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup" (Amir Tzin) [2166006] - net/mlx5e: Convert ethtool_steering member of flow_steering struct to pointer (Amir Tzin) [2166006] - net/mlx5e: Drop priv argument of ptp function in en_fs (Amir Tzin) [2166006] - net/mlx5e: Decouple fs_tcp from en.h (Amir Tzin) [2166006] - net/mlx5e: Decouple fs_tt_redirect from en.h (Amir Tzin) [2166006] - net/mlx5e: Introduce flow steering API (Amir Tzin) [2166006] - IB/mlx5: Call io_stop_wc() after writing to WC MMIO (Amir Tzin) [2166006]- mm: page_counter: mitigate consequences of a page_counter underflow (Ty Berry) [2196726] - ceph: fix decoding of client session messages flags (Xiubo Li) [2213062] - net: stmmac: propagate feature flags to vlan (Corinna Vinschen) [2174701] - KVM: Avoid illegal stage2 mapping on invalid memory slot (Gavin Shan) [2190376] - perf/x86/rapl: Add support for Intel Emerald Rapids (Michael Petlan) [2165766] - s390/dasd: Use correct lock while counting channel queue length (Tobias Huschle) [2215889] - inotify: show inotify mask flags in proc fdinfo (Andrey Albershteyn) [2163455] - scsi: scsi_transport_fc: Add an additional flag to fc_host_fpin_rcv() (Ewan D. Milne) [2169276] - perf bench: Fix numa bench to fix usage of affinity for machines with #CPUs > 1K (Michael Petlan) [2134284] - perf bench: Fix numa testcase to check if CPU used to bind task is online (Michael Petlan) [2134284] - powerpc/64s: Make POWER10 and later use pause_short in cpu_relax loops (avchouha) [2188343] - powerpc: add ISA v3.0 / v3.1 wait opcode macro (avchouha) [2188343] - scsi: lpfc: Account for fabric domain ctlr device loss recovery (Dick Kennedy) [2213027] - scsi: lpfc: Clear NLP_IN_DEV_LOSS flag if already in rediscovery (Dick Kennedy) [2213027] - scsi: lpfc: Fix use-after-free rport memory access in lpfc_register_remote_port() (Dick Kennedy) [2213027] - PCI: hv: Add a per-bus mutex state_lock (Vitaly Kuznetsov) [2184863] - Revert "PCI: hv: Fix a timing issue which causes kdump to fail occasionally" (Vitaly Kuznetsov) [2184863] - PCI: hv: Remove the useless hv_pcichild_state from struct hv_pci_dev (Vitaly Kuznetsov) [2184863] - PCI: hv: Fix a race condition in hv_irq_unmask() that can cause panic (Vitaly Kuznetsov) [2184863] - PCI: hv: Fix a race condition bug in hv_pci_query_relations() (Vitaly Kuznetsov) [2184863] - RHEL-only: KVM: arm64: Fixes comments (Shaoqin Huang) [2202988] - KVM: arm64: Fix buffer overflow in kvm_arm_set_fw_reg() (Shaoqin Huang) [2202988] - KVM: selftests: arm64: Fix pte encode/decode for PA bits > 48 (Shaoqin Huang) [2202988] - KVM: arm64: selftests: Use FIELD_GET() to extract ID register fields (Shaoqin Huang) [2202988] - tools: Copy bitfield.h from the kernel sources (Shaoqin Huang) [2202988] - x86/platform/uv: Update UV[23] platform code for SNC (Frank Ramsay) [2163467] - x86/platform/uv: Remove remaining BUG_ON() and BUG() calls (Frank Ramsay) [2163467] - x86/platform/uv: UV support for sub-NUMA clustering (Frank Ramsay) [2163467] - x86: uv: uv_hub.h: Delete duplicated word (Frank Ramsay) [2163467] - x86/platform/uv: Helper functions for allocating and freeing conversion tables (Frank Ramsay) [2163467] - x86/platform/uv: When searching for minimums, start at INT_MAX not 99999 (Frank Ramsay) [2163467] - x86/platform/uv: Fix printed information in calc_mmioh_map (Frank Ramsay) [2163467] - x86/platform/uv: Introduce helper function uv_pnode_to_socket. (Frank Ramsay) [2163467] - x86/platform/uv: Add platform resolving #defines for misc GAM_MMIOH_REDIRECT* (Frank Ramsay) [2163467] - IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors (Izabela Bakollari) [2170629] - IB/hfi1: Fix math bugs in hfi1_can_pin_pages() (Izabela Bakollari) [2170629] - IB/hfi1: Restore allocated resources on failed copyout (Izabela Bakollari) [2170629] - IB/hfi1: Use dma_mmap_coherent for matching buffers (Izabela Bakollari) [2170629] - IB/hfi1: Update RMT size calculation (Izabela Bakollari) [2170629] - IB/hfi1: Split IB counter allocation (Izabela Bakollari) [2170629] - IB/hfi1: Improve TID validity checking (Izabela Bakollari) [2170629] - IB/hfi1: Consolidate the creation of user TIDs (Izabela Bakollari) [2170629] - IB/hfi1: Assign npages earlier (Izabela Bakollari) [2170629] - IB/hfi1: Fix expected receive setup error exit issues (Izabela Bakollari) [2170629] - IB/hfi1: Reserve user expected TIDs (Izabela Bakollari) [2170629] - IB/hfi1: Reject a zero-length user expected buffer (Izabela Bakollari) [2170629] - RDMA/hfi1: Fix doc for hfi1_free_ctxt (Izabela Bakollari) [2170629] - RDMA/hfi1: use sysfs_emit() to instead of scnprintf() (Izabela Bakollari) [2170629] - RDMA/hfi1: Fix error return code in parse_platform_config() (Izabela Bakollari) [2170629] - IB/hfi1: Switch to netif_napi_add() (Izabela Bakollari) [2170629] - RDMA/hfi: Decrease PCI device reference count in error path (Izabela Bakollari) [2170629] - RDMA/hfi1: don't pass bogus GFP_ flags to dma_alloc_coherent (Izabela Bakollari) [2170629] - IB/hfi1: Replace 1-element array with singleton (Izabela Bakollari) [2170629] - RDMA/opa_vnic: fix spelling typo in comment (Izabela Bakollari) [2170629] - IB/hfi1: Use skb_put_data() instead of skb_put/memcpy pair (Izabela Bakollari) [2170629] - IB/hfi1: remove rc_only_opcode and uc_only_opcode declarations (Izabela Bakollari) [2170629] - RDMA/hfi1: fix repeated words in comments (Izabela Bakollari) [2170629] - RDMA/hfi1: Remove the unneeded result variable (Izabela Bakollari) [2170629] - IB: move from strlcpy with unused retval to strscpy (Izabela Bakollari) [2170629] - perf intel-pt: Add documentation for Event Trace and TNT disable (Michael Petlan) [2154066] - perf scripts python: export-to-postgresql.py: Export all sample flags (Michael Petlan) [2154066] - perf scripts python: export-to-sqlite.py: Export all sample flags (Michael Petlan) [2154066] - perf scripting python: Add all sample flags to DB export (Michael Petlan) [2154066] - perf scripts python: intel-pt-events.py: Add Event Trace (Michael Petlan) [2154066] - perf script: Display new D (Intr Disabled) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf script: Display Intel PT iflag synthesized event (Michael Petlan) [2154066] - perf script: Display Intel PT CFE (Control Flow Event) / EVD (Event Data) synthesized event (Michael Petlan) [2154066] - perf intel-pt: Force 'quick' mode when TNT (Taken/Not-Taken packet) is disabled (Michael Petlan) [2154066] - perf intel-pt: Synthesize new D (Intr Disabled) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf intel-pt: Synthesize iflag event (Michael Petlan) [2154066] - perf intel-pt: Synthesize CFE (Control Flow Event) / EVD (Event Data) event (Michael Petlan) [2154066] - perf intel-pt: Record Event Trace capability flag (Michael Petlan) [2154066] - perf auxtrace: Add itrace option "I" (Michael Petlan) [2154066] - perf tools: Define new D (Intr Disable) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf tools: Define Intel PT iflag synthesized event (Michael Petlan) [2154066] - perf tools: Define Intel PT CFE (Control Flow Event) / EVD (Event Data) event (Michael Petlan) [2154066] - perf intel-pt: decoder: Add MODE.Exec IFLAG processing (Michael Petlan) [2154066] - perf intel-pt: decoder: Add CFE (Control Flow Event) and EVD (Event Data) processing (Michael Petlan) [2154066] - perf intel-pt: decoder: Factor out clearing of FUP (Flow Update) event variables (Michael Petlan) [2154066] - perf intel-pt: Fix error timestamp setting on the decoder error path (Michael Petlan) [2154066] - perf intel-pt: Fix missing 'instruction' events with 'q' option (Michael Petlan) [2154066] - perf intel-pt: Fix next 'err' value, walking trace (Michael Petlan) [2154066] - perf intel-pt: Fix state setting when receiving overflow (OVF) packet (Michael Petlan) [2154066] - perf intel-pt: Fix intel_pt_fup_event() assumptions about setting state type (Michael Petlan) [2154066] - perf intel-pt: Fix sync state when a PSB (synchronization) packet is found (Michael Petlan) [2154066] - perf intel-pt: Fix some PGE (packet generation enable/control flow packets) usage (Michael Petlan) [2154066] - perf intel-pt: decoder: Add config bit definitions (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Add MODE.Exec IFLAG bit (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Add CFE and EVD packets (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Remove misplaced linebreak (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder-test: Fix scope of test_data (Michael Petlan) [2154066] - perf/x86/intel/pt: Add a capability and config bit for disabling TNTs (Michael Petlan) [2154066] - perf/x86/intel/pt: Add a capability and config bit for event tracing (Michael Petlan) [2154068] - container_of: Update header inclusions (Desnes Nunes) [2196368] - media: netup_unidvb: fix irq init by register it at the end of probe (Desnes Nunes) [2196368] - media: dvb-usb: dw2102: fix uninit-value in su3000_read_mac_address (Desnes Nunes) [2196368] - media: dvb-usb: digitv: fix null-ptr-deref in digitv_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb-v2: rtl28xxu: fix null-ptr-deref in rtl28xxu_i2c_xfer (Desnes Nunes) [2196368] - media: dvb-usb-v2: ce6230: fix null-ptr-deref in ce6230_i2c_master_xfer() (Desnes Nunes) [2196368] - media: dvb-usb-v2: ec168: fix null-ptr-deref in ec168_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb: az6027: fix three null-ptr-deref in az6027_i2c_xfer() (Desnes Nunes) [2196368] - Revert "usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS" (Desnes Nunes) [2196368] - usb: typec: Don't try to register component master without components (Desnes Nunes) [2196368] - usb: typec: Only attempt to link USB ports if there is fwnode (Desnes Nunes) [2196368] - usb: core: Unregister device on component_add() failure (Desnes Nunes) [2196368] - usb: core: add quirk for Alcor Link AK9563 smartcard reader (Desnes Nunes) [2196368] - USB: new quirk for Dell Gen 2 devices (Desnes Nunes) [2196368] - USB: quirks: add STRING quirk for VCOM device (Desnes Nunes) [2196368] - USB: quirks: add a Realtek card reader (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Fix probe pin assign check (Desnes Nunes) [2196368] - usb: typec: ucsi: Don't attempt to resume the ports before they exist (Desnes Nunes) [2196368] - USB: misc: iowarrior: fix up header size for USB_DEVICE_ID_CODEMERCS_IOW100 (Desnes Nunes) [2196368] - usb: host: ehci-fsl: Fix module alias (Desnes Nunes) [2196368] - usb: core: hub: disable autosuspend for TI TUSB8041 (Desnes Nunes) [2196368] - USB: fix misleading usb_set_intfdata() kernel doc (Desnes Nunes) [2196368] - usb: typec: tcpm: Fix altmode re-registration causes sysfs create fail (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Use proper macro for pin assignment check (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Fix pin assignment calculation (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Add pin assignment helper (Desnes Nunes) [2196368] - usb: ucsi: Ensure connector delayed work items are flushed (Desnes Nunes) [2196368] - xhci: Detect lpm incapable xHC USB3 roothub ports from ACPI tables (Desnes Nunes) [2196368] - usb: acpi: add helper to check port lpm capability using acpi _DSM (Desnes Nunes) [2196368] - xhci: Add a flag to disable USB3 lpm on a xhci root port level. (Desnes Nunes) [2196368] - xhci: Add update_hub_device override for PCI xHCI hosts (Desnes Nunes) [2196368] - xhci: Fix null pointer dereference when host dies (Desnes Nunes) [2196368] - usb: xhci: Check endpoint is valid before dereferencing it (Desnes Nunes) [2196368] - xhci-pci: set the dma max_seg_size (Desnes Nunes) [2196368] - usb-storage: apply IGNORE_UAS only for HIKSEMI MD202 on RTL9210 (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05CN modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05CN (SG) modem (Desnes Nunes) [2196368] - USB: serial: cp210x: add SCALANCE LPE-9000 device id (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EC200U modem (Desnes Nunes) [2196368] - USB: serial: qcserial: add EM9191 QDL support (Desnes Nunes) [2196368] - USB: serial: option: add prod. id for Quectel EG91 (Desnes Nunes) [2196368] - USB: serial: option: add Telit LE910Cx composition 0x1204 (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (RS) modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (GR) modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (CS) modem (Desnes Nunes) [2196368] - thunderbolt: Disable XDomain lane 1 only in software connection manager (Desnes Nunes) [2196368] - thunderbolt: Use correct function to calculate maximum USB3 link rate (Desnes Nunes) [2196368] - thunderbolt: Do not call PM runtime functions in tb_retimer_scan() (Desnes Nunes) [2196368] - Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout" (Desnes Nunes) [2196368] - thunderbolt: Do not report errors if on-board retimers are found (Desnes Nunes) [2196368] - treewide: Convert del_timer*() to timer_shutdown*() (Desnes Nunes) [2196368] - USB: core: export usb_cache_string() (Desnes Nunes) [2196368] - usb: ulpi: defer ulpi_register on ulpi_read_id timeout (Desnes Nunes) [2196368] - usb: storage: Add check for kcalloc (Desnes Nunes) [2196368] - USB: sisusbvga: use module_usb_driver() (Desnes Nunes) [2196368] - USB: sisusbvga: rename sisusb.c to sisusbvga.c (Desnes Nunes) [2196368] - USB: sisusbvga: remove console support (Desnes Nunes) [2196368] - media: Switch to use dev_err_probe() helper (Desnes Nunes) [2196368] - media: uvcvideo: Fix memory leak in uvc_gpio_parse (Desnes Nunes) [2196368] - media: usb: pwc-uncompress: Use flex array destination for memcpy() (Desnes Nunes) [2196368] - media: usb: pwc-uncompress: Use struct_size() helper in pwc_decompress() (Desnes Nunes) [2196368] - firmware_loader: fix up to_fw_sysfs() to preserve const (Desnes Nunes) [2196368] - usb.h: take advantage of container_of_const() (Desnes Nunes) [2196368] - device.h: move kobj_to_dev() to use container_of_const() (Desnes Nunes) [2196368] - container_of: add container_of_const() that preserves const-ness of the pointer (Desnes Nunes) [2196368] - driver core: allow kobj_to_dev() to take a const pointer (Desnes Nunes) [2196368] - container_of: remove container_of_safe() (Desnes Nunes) [2196368] - linux/container_of.h: switch to static_assert (Desnes Nunes) [2196368] - media: dvb-usb: m920x: make read-only arrays static const (Desnes Nunes) [2196368] - net: thunderbolt: Use bitwise types in the struct thunderbolt_ip_frame_header (Desnes Nunes) [2196368] - net: thunderbolt: Switch from __maybe_unused to pm_sleep_ptr() etc (Desnes Nunes) [2196368] - USB: serial: f81534: fix division by zero on line-speed change (Desnes Nunes) [2196368] - xhci: remove unused stream_id parameter from xhci_handle_halted_endpoint() (Desnes Nunes) [2196368] - xhci: Prevent infinite loop in transaction errors recovery for streams (Desnes Nunes) [2196368] - xhci: disable U3 suspended ports in S4 hibernate poweroff_late stage (Desnes Nunes) [2196368] - USB: hcd-pci: Fully suspend across freeze/thaw cycle (Desnes Nunes) [2196368] - USB: core: Disable remote wakeup for freeze/quiesce (Desnes Nunes) [2196368] - xhci: export two xhci_hub functions for xhci-pci module usage (Desnes Nunes) [2196368] - xhci: Apply XHCI_RESET_TO_DEFAULT quirk to ADL-N (Desnes Nunes) [2196368] - xhci: print warning when HCE was set (Desnes Nunes) [2196368] - Revert "xhci: Convert to use list_count()" (Desnes Nunes) [2196368] - xhci: Convert to use list_count() (Desnes Nunes) [2196368] - usb: typec: Add partner PD object wrapper (Desnes Nunes) [2196368] - usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq (Desnes Nunes) [2196368] - usb: add usb_set_intfdata() documentation (Desnes Nunes) [2196368] - usb: host: fix a typo in ehci.h (Desnes Nunes) [2196368] - usb: core: hcd: Fix return value check in usb_hcd_setup_local_mem() (Desnes Nunes) [2196368] - usb: typec: ucsi: Resume in separate work (Desnes Nunes) [2196368] - usb: roles: fix of node refcount leak in usb_role_switch_is_parent() (Desnes Nunes) [2196368] - net: thunderbolt: Use kmap_local_page() instead of kmap_atomic() (Desnes Nunes) [2196368] - media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb: dib0700_devices: Remove unused struct dibx090p_adc (Desnes Nunes) [2196368] - media: dib0700: remove orphan dvb_usb_dib0700_ir_proto declaration (Desnes Nunes) [2196368] - media: dvb-usb: fix memory leak in dvb_usb_adapter_init() (Desnes Nunes) [2196368] - media: dvb-core: Enhance shared multi-frontend support (Desnes Nunes) [2196368] - media: docs: fix minor typos (Desnes Nunes) [2196368] - media: dvb-frontends: a8293: fix LNB powerup failure in PCTV 461e (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: drop line-status helper (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: simplify line-status handling (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: clean up line-status handling (Desnes Nunes) [2196368] - USB: serial: cp210x: add support for B0 hangup (Desnes Nunes) [2196368] - USB: serial: cp210x: add Kamstrup RF sniffer PIDs (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel RM520N (Desnes Nunes) [2196368] - USB: serial: ch341: fix lost character on LCR updates (Desnes Nunes) [2196368] - USB: serial: ch314: use usb_control_msg_recv() (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV32-WA/WB RmNet mode (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV31 with new baseline (Desnes Nunes) [2196368] - USB: serial: io_ti: add Agilent E5805A support (Desnes Nunes) [2196368] - USB: serial: whiteheat: fix heap overflow in WHITEHEAT_GET_DTR_RTS (Desnes Nunes) [2196368] - USB: serial: cp210x: add PIDs for Kamstrup USB Meter Reader (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV32-WA/MV32-WB (Desnes Nunes) [2196368] - USB: serial: option: add Telit 0x1057, 0x1058, 0x1075 compositions (Desnes Nunes) [2196368] - USB: serial: option: add Telit FN990 compositions (Desnes Nunes) [2196368] - USB: serial: cp210x: add ID for GW Instek GDM-834x Digital Multimeter (Desnes Nunes) [2196368] - USB: serial: cp210x: add part-number debug printk (Desnes Nunes) [2196368] - USB: serial: option: add Telit LN920 compositions (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM060K modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel RM500K module support (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EC200S-CN module support (Desnes Nunes) [2196368] - USB: serial: pl2303: add support for more HXN (G) types (Desnes Nunes) [2196368] - USB: serial: option: add Telit LE910Cx 0x1250 composition (Desnes Nunes) [2196368] - usb: typec: tipd: Set mode of operation for USB Type-C connector (Desnes Nunes) [2196368] - usb: typec: tipd: Move tps6598x_disconnect error path to its own label (Desnes Nunes) [2196368] - usb: typec: tipd: Fix typec_unregister_port error paths (Desnes Nunes) [2196368] - usb: typec: tipd: Only update power status on IRQ (Desnes Nunes) [2196368] - usb: typec: tipd: Forward plug orientation to typec subsystem (Desnes Nunes) [2196368] - tps6598x: clear int mask on probe failure (Desnes Nunes) [2196368] - usb: typec: tipd: Fix initialization sequence for cd321x (Desnes Nunes) [2196368] - usb: typec: tipd: Fix typo in cd321x_switch_power_state (Desnes Nunes) [2196368] - usb: typec: tipd: Enable event interrupts by default (Desnes Nunes) [2196368] - usb: typec: tipd: Remove FIXME about testing with I2C_FUNC_I2C (Desnes Nunes) [2196368] - usb: typec: tipd: Switch CD321X power state to S0 (Desnes Nunes) [2196368] - usb: typec: tipd: Add support for Apple CD321X (Desnes Nunes) [2196368] - usb: typec: tipd: Add short-circuit for no irqs (Desnes Nunes) [2196368] - usb: typec: tipd: Split interrupt handler (Desnes Nunes) [2196368] - dt-bindings: usb: tps6598x: Add Apple CD321x compatible (Desnes Nunes) [2196368] - dt-bindings: usb: Add TI tps6598x device tree binding documentation (Desnes Nunes) [2196368] - usb: typec: tipd: Remove WARN_ON in tps6598x_block_read (Desnes Nunes) [2196368] - usb: typec: tipd: Add an additional overflow check (Desnes Nunes) [2196368] - usb: typec: tipd: Don't read/write more bytes than required (Desnes Nunes) [2196368] - usb: typec: tipd: Fix spurious fwnode_handle_put in error path (Desnes Nunes) [2196368] - usb: typec: tipd: Cleanup resources if devm_tps6598_psy_register fails (Desnes Nunes) [2196368] - usb: host: xhci-mtk: omit shared hcd if either root hub has no ports (Desnes Nunes) [2196368] - usb: xhci-mtk: enable wake-up interrupt after runtime_suspend called (Desnes Nunes) [2196368] - usb: typec: tcpci: fix of node refcount leak in tcpci_register_port() (Desnes Nunes) [2196368] - usb: typec: Check for ops->exit instead of ops->enter in altmode_exit (Desnes Nunes) [2196368] - usb: ftdi-elan: remove variable l (Desnes Nunes) [2196368] - Documentation: USB: correct possessive "its" usage (Desnes Nunes) [2196368] - usb: Check !irq instead of irq == NO_IRQ (Desnes Nunes) [2196368] - tools: usb: ffs-aio-example: Fix build error with aarch64-*-gnu-gcc toolchain(s) (Desnes Nunes) [2196368] - usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [2196368] - usb: ehci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [2196368] - dt-bindings: usb: usb-drd: Describe default dual-role mode (Desnes Nunes) [2196368] - dt-bindings: usb: xhci: Add Broadcom STB v2 compatible device (Desnes Nunes) [2196368] - dt-bindings: usb: Convert xHCI bindings to DT schema (Desnes Nunes) [2196368] - usb: host: Add ability to build new Broadcom STB USB drivers (Desnes Nunes) [2196368] - dt-bindings: Add Broadcom STB USB support (Desnes Nunes) [2196368] - dt-bindings: usb: Add generic "usb-phy" property (Desnes Nunes) [2196368] - dt-bindings: usb: usb-hcd: Add "tpl-support" property (Desnes Nunes) [2196368] - dt-bindings: usb: Add "ulpi/serial/hsic" PHY types (Desnes Nunes) [2196368] - dt-bindings: usb: usb-drd: Add "otg-rev" property constraints (Desnes Nunes) [2196368] - dt-bindings: usb: Convert generic USB properties to DT schemas (Desnes Nunes) [2196368] - dt-bindings: usb: mtu3: add properties about USB Role Switch (Desnes Nunes) [2196368] - dt-bindings: usb: add binding for USB GPIO based connection detection driver (Desnes Nunes) [2196368] - dt-bindings: connector: add optional properties for Type-B (Desnes Nunes) [2196368] - dt-bindings: connector: Add self-powered property (Desnes Nunes) [2196368] - dt-bindings: usb: generic: Add role-switch-default-mode binding (Desnes Nunes) [2196368] - dt-binding: usb: add usb-role-switch property (Desnes Nunes) [2196368] - dt-binding: usb: add "super-speed-plus" (Desnes Nunes) [2196368] - dt-bindings: usb: usb-hcd: Detach generic USB controller properties (Desnes Nunes) [2196368] - dt-bindings: Explicitly allow additional properties in common schemas (Desnes Nunes) [2196368] - dt-bindings: usb: Bring back phy-names (Desnes Nunes) [2196368] - usb: core: stop USB enumeration if too many retries (Desnes Nunes) [2196368] - usb: hub: port: add sysfs entry to switch port power (Desnes Nunes) [2196368] - usb: typec: port-mapper: Convert to the component framework (Desnes Nunes) [2196368] - usb: Link the ports to the connectors they are attached to (Desnes Nunes) [2196368] - usb: Remove usb_for_each_port() (Desnes Nunes) [2196368] - thunderbolt: Add wake on connect/disconnect on USB4 ports (Desnes Nunes) [2196368] - thunderbolt: Link USB4 ports to their USB Type-C connectors (Desnes Nunes) [2196368] - usb: core: Use kstrtobool() instead of strtobool() (Desnes Nunes) [2196368] - kernel.h: split out kstrtox() and simple_strtox() to a separate header (Desnes Nunes) [2196368] - USB: core: Change configuration warnings to notices (Desnes Nunes) [2196368] - thunderbolt: ACPI: Use the helper fwnode_find_reference() (Desnes Nunes) [2196368] - thunderbolt: Remove redundant assignment to variable len (Desnes Nunes) [2196368] - thunderbolt: Use str_enabled_disabled() helper (Desnes Nunes) [2196368] - media: device property: Add a function to test is a fwnode is a graph endpoint (Desnes Nunes) [2196368] - usb: typec: mux: Allow multiple mux_devs per mux (Desnes Nunes) [2196368] - usb: typec: mux: Introduce indirection (Desnes Nunes) [2196368] - device property: Use multi-connection matchers for single case (Desnes Nunes) [2196368] - device property: Fix fwnode_graph_devcon_match() fwnode leak (Desnes Nunes) [2196368] - device property: Add helper to match multiple connections (Desnes Nunes) [2196368] - Documentation: Remove device connection documentation (Desnes Nunes) [2196368] - usb: ftdi-elan: remove variable err_count (Desnes Nunes) [2196368] - USB: make devnode() callback in usb_class_driver take a const * (Desnes Nunes) [2196368] - USB: remove usb_bus_type from usb.h (Desnes Nunes) [2196368] - USB: allow some usb functions to take a const pointer. (Desnes Nunes) [2196368]- s390/ap: Fix hanging ioctl caused by orphaned replies (Tobias Huschle) [2215891] - crypto: jitter - correct health test during initialization (Vladis Dronov) [2214270] - x86: properly define CONFIG_AS_TPAUSE in Makefile (Nico Pache) [2193009] - zsmalloc: fix races between asynchronous zspage free and page migration (Oleksandr Natalenko) [2213146] - netfilter: ip6t_rpfilter: Fix regression with VRF interfaces (Phil Sutter) [2169958] - x86/mm: Avoid incomplete Global INVLPG flushes (Rafael Aquini) [2213793] - rbd: get snapshot context after exclusive lock is ensured to be held (Ilya Dryomov) [2214973] - rbd: move RBD_OBJ_FLAG_COPYUP_ENABLED flag setting (Ilya Dryomov) [2214973] - vfio/pci: Also demote hiding standard cap messages (Oleksandr Natalenko) [2207849] - vfio/pci: demote hiding ecap messages to debug level (Oleksandr Natalenko) [2207849] - mm: avoid unnecessary page fault retires on shared memory types (Nico Pache) [2213877] - mm: remove redundant check about FAULT_FLAG_ALLOW_RETRY bit (Nico Pache) [2213877] - mm: Allow the [page|pfn]_mkwrite callbacks to drop the mmap_sem (Nico Pache) [2213877] - s390/qeth: convert sysfs snprintf to sysfs_emit (Tobias Huschle) [2203380] - s390/lcs: Fix return type of lcs_start_xmit() (Tobias Huschle) [2203380] - s390/netiucv: Fix return type of netiucv_tx() (Tobias Huschle) [2203380] - s390/ctcm: Fix return type of ctc{mp,}m_tx() (Tobias Huschle) [2203380] - s390/pci: clean up left over special treatment for function zero (Tobias Huschle) [2214268] - s390/pci: remove redundant pci_bus_add_devices() on new bus (Tobias Huschle) [2214268] - s390/pci: only add specific device in zpci_bus_scan_device() (Tobias Huschle) [2214268] - PCI: s390: Fix use-after-free of PCI resources with per-function hotplug (Tobias Huschle) [2214268] - net: atlantic: fix potential memory leak in aq_ndev_close() (Íñigo Huguet) [2184353] - net: atlantic: fix aq_vec index out of range error (Íñigo Huguet) [2179726 2184353] - net: atlantic: verify hw_head_ lies within TX buffer ring (Íñigo Huguet) [2184353] - net: atlantic: add check for MAX_SKB_FRAGS (Íñigo Huguet) [2184353] - net: atlantic: reduce scope of is_rsc_complete (Íñigo Huguet) [2184353] - net: atlantic: fix "frag[0] not initialized" (Íñigo Huguet) [2184353] - net: atlantic: Avoid out-of-bounds indexing (Íñigo Huguet) [2179726 2184353] - atlantic: Fix buff_ring OOB in aq_ring_rx_clean (Íñigo Huguet) [2184353] - atlantic: Remove warn trace message. (Íñigo Huguet) [2184353] - atlantic: Fix statistics logic for production hardware (Íñigo Huguet) [2184353] - atlantic: Add missing DIDs and fix 115c. (Íñigo Huguet) [2184353] - atlantic: Fix to display FW bundle version instead of FW mac version. (Íñigo Huguet) [2184353] - atlantic: Increase delay for fw transactions (Íñigo Huguet) [2184353] - atlantic: fix double-free in aq_ring_tx_clean (Íñigo Huguet) [2184353] - atlantic: Fix OOB read and write in hw_atl_utils_fw_rpc_wait (Íñigo Huguet) [2184353] - net: ethernet: aquantia: Handle error cleanup of start on open (Íñigo Huguet) [2184353] - aquantia: Remove the build_skb path (Íñigo Huguet) [2184353] - net: fix __dev_kfree_skb_any() vs drop monitor (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to icmpv6_echo_reply() (Antoine Tenart) [2184076] - ipv6: icmp6: add SKB_DROP_REASON_IPV6_NDISC_NS_OTHERHOST (Antoine Tenart) [2184076] - ipv6: icmp6: add SKB_DROP_REASON_IPV6_NDISC_BAD_OPTIONS (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_redirect_rcv() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_router_discovery() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_rs() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_na() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_ns() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_rcv() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to icmpv6_notify() (Antoine Tenart) [2184076] - net: add pskb_may_pull_reason() helper (Antoine Tenart) [2184076] - net-next: skbuff: refactor pskb_pull (Antoine Tenart) [2184076] - net: dropreason: add SKB_DROP_REASON_IPV6_BAD_EXTHDR (Antoine Tenart) [2184076] - rxrpc: Use consume_skb() rather than kfree_skb_reason() (Antoine Tenart) [2184076] - ipv4: raw: add drop reasons (Antoine Tenart) [2184076] - ipv6: raw: add drop reasons (Antoine Tenart) [2184076] - tcp: add TCP_MINTTL drop reason (Antoine Tenart) [2184076] - net: fix call location in kfree_skb_list_reason (Antoine Tenart) [2184076] - rxrpc: Show consumed and freed packets as non-dropped in dropwatch (Antoine Tenart) [2184076] - net: tun: rebuild error handling in tun_get_user (Antoine Tenart) [2184076] - ALSA: Update kernel configuration for 8.9 (Jaroslav Kysela) [2179850] - soundwire: stream: Add missing clear of alloc_slave_rt (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add new mapping for HP Spectre x360 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable 4 amplifiers instead of 2 on a HP platform (Jaroslav Kysela) [2179850] - ALSA: hda: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: gus: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: cmipci: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: ice1712,ice1724: fix the kcontrol->id initialization (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo NS50AU (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for Asus ROG 2024 laptops using CS35L41 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add "Intel Reference board" and "NUC 13" SSID in the ALC256 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add Lenovo P3 Tower platform (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add a quirk for HP Slim Desktop S01 (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: fix PCM constraint error check (Jaroslav Kysela) [2179850] - ASoC: max98363: limit the number of channel to 1 (Jaroslav Kysela) [2179850] - ASoC: max98363: Removed 32bit support (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Thinkpad Neo14 to quirks list for acp6x (Jaroslav Kysela) [2179850] - ASoC: nau8824: Add quirk to active-high jack-detect (Jaroslav Kysela) [2179850] - ASoC: amd: ps: fix for acp_lock access in pdm driver (Jaroslav Kysela) [2179850] - ASoC: simple-card: Add missing of_node_put() in case of error (Jaroslav Kysela) [2179850] - ASoC: codecs: wsa881x: do not set can_multi_write flag (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: remove code for module namespaces (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable headset onLenovo M70/M90 (Jaroslav Kysela) [2179850] - regmap: sdw: check for invalid multi-register writes config (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: add quirk for EVGA X299 DARK (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing checks on FE startup (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix avs_path_module::instance_id size (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Account for UID of ACPI device (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix declaration of enum avs_channel_config (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix declaration of enum skl_ch_cfg (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Access path components under lock (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix module lookup (Jaroslav Kysela) [2179850] - ALSA: hda: Fix unhandled register update during auto-suspend period (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: test if a BE can be prepared (Jaroslav Kysela) [2179850] - ALSA: hda: Add NVIDIA codec IDs a3 through a7 to patch table (Jaroslav Kysela) [2179850] - ALSA: oss: avoid missing-prototype warnings (Jaroslav Kysela) [2179850] - ALSA: cs46xx: mark snd_cs46xx_download_image as static (Jaroslav Kysela) [2179850] - ALSA: hda: Fix Oops by 9.1 surround channel names (Jaroslav Kysela) [2179850] - ASoC: rt5682: Disable jack detection interrupt during suspend (Jaroslav Kysela) [2179850] - ASoC: SOF: Separate the tokens for input and output pin index (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix tuples array allocation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to program SoundWire PCMSyCM registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: initialize instance_offset member (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: use 'ml_addr' parameter consistently (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: fix base_ptr computation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to get SoundWire hlink (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: fix sublink refcounting (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix logic for copying tuples (Jaroslav Kysela) [2179850] - ASoC: dwc: move DMA init to snd_soc_dai_driver probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-topology: Make sure that only one cmd is sent in dai_config (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: save io region state in case of errors in resume (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-client-probes: fix pm_runtime imbalance in error handling (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: fix pm_runtime imbalance in error handling (Jaroslav Kysela) [2179850] - ASoC: SOF: debug: conditionally bump runtime_pm counter on exceptions (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix mute and micmute LEDs for yet another HP laptop (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add a sample rate workaround for Line6 Pod Go (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Apply HP B&O top speaker profile to Pavilion 15 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for ASUS GU604V and GU603V (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for HP EliteBook G10 laptops (Jaroslav Kysela) [2179850] - tools include UAPI: Sync the sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2179850] - firewire: net: fix unexpected release of object for asynchronous request packet (Jaroslav Kysela) [2179850] - ASoC: ssm2602: Add workaround for playback distortions (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix NULL pointer crash in acp_sof_ipc_msg_data function (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add a quirk for HP EliteDesk 805 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for 2nd ASUS GU603 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo L140AU (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entry to support System76 Pangolin 12 (Jaroslav Kysela) [2179850] - ALSA: pcm: use exit controlled loop in snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ALSA: pcm: simplify top-up mode init in snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ALSA: pcm: playback silence - move silence variable updates to separate function (Jaroslav Kysela) [2179850] - ALSA: pcm: playback silence - remove extra code (Jaroslav Kysela) [2179850] - ALSA: pcm: fix playback silence - correct incremental silencing (Jaroslav Kysela) [2179850] - ALSA: pcm: fix playback silence - use the actual new_hw_ptr for the threshold mode (Jaroslav Kysela) [2179850] - ALSA: pcm: Revert "ALSA: pcm: rewrite snd_pcm_playback_silence()" (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix mute and micmute LEDs for an HP laptop (Jaroslav Kysela) [2179850] - ALSA: caiaq: input: Add error handling for unsupported input methods in `snd_usb_caiaq_input_init` (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add quirk for Pioneer DDJ-800 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: support HP Pavilion Aero 13-be0xxx Mute LED (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ASUS UM3402YAR using CS35L41 (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Asus VivoBook Pro 14 OLED M6400RC to the quirks list for acp6x (Jaroslav Kysela) [2179850] - ALSA: docs: Extend module parameters description (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi-cht: Add quirk for Nextbook Ares 8A tablet (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use more existing defines instead of open-coded numbers (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ASUS M3402RA into DMI table (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ThinkPad P1 Gen 6 (Jaroslav Kysela) [2179850] - ALSA: hda: Glenfly: add HD Audio PCI IDs and HDMI Codec Vendor IDs. (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use high-level I/O in set_filterQ() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix error handling in snd_audigy_i2c_volume_put() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: don't stop DSP in _snd_emu10k1_{,audigy_}init_efx() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: skip Sound Blaster-specific hacks for E-MU cards (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fixup DSP defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use high-level I/O functions also during init (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix SNDRV_EMU10K1_IOCTL_SINGLE_STEP (Jaroslav Kysela) [2179850] - ALSA: emu10k1: pull in some register definitions from kX-project (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove some bogus defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: eliminate some unused defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix lineup of EMU_HANA_* defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: comment updates (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix snd_emu1010_fpga_read() input masking for rev2 cards (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused emu->pcm_playback_efx_substream field (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused `resume` parameter from snd_emu10k1_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: minor optimizations (Jaroslav Kysela) [2179850] - ASoC: max98090: make it selectable (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi-byt: Fix "WM510205" match no longer working (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Rate limit usb_set_interface error reporting (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove remaining cruft from snd_emu10k1_emu1010_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: clean up P16V part somewhat (Jaroslav Kysela) [2179850] - ALSA: emu10k1: clarify various fx8010.*_mask fields (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove apparently pointless EMU_HANA_OPTION_CARDS reads (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove apparently pointless FPGA reads (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused snd_emu10k1_voice.emu field (Jaroslav Kysela) [2179850] - ALSA: emu10k1: stop doing weird things with HCFG in snd_emu10k1_emu1010_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove obsolete card type variable and defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix access to Audigy GPIO port (Jaroslav Kysela) [2179850] - ALSA: emu10k1: drop redundant snd_emu10k1_efx_playback_pointer() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: properly assert E-MU FPGA access constaints (Jaroslav Kysela) [2179850] - ALSA: emu10k1: drop redundant snd_emu10k1_efx_playback_hw_free() (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Add an option to skip platform trigger during stop (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Do not stop/start DMA during pause/release (Jaroslav Kysela) [2179850] - ALSA: pcm: rewrite snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Split the set_power_op for IPC3 and IPC4 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: append codec type to dai link name (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: support different devices on the same sdw link (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: set codec_num = 1 if the device is not aggregated (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw_max98373: change sof_sdw_mx8373_late_probe to static call (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: remove late_probe flag in struct sof_sdw_codec_info (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw at link 2 in RPL match table (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_cirrus_common: Guard against missing buses (Jaroslav Kysela) [2179850] - ASoC: SOF: Use no_reply calls for TX (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc: Add no reply inline calls (Jaroslav Kysela) [2179850] - ASoC: es8316: Don't use ranges based register lookup for a single register (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Remove specific patch for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: nau8825: fix bounds check for adc_delay (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Simplify &pdev->dev in probe (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Simplify with dev_err_probe (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd9335: Simplify with dev_err_probe (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Remove some dead code (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Fix default regmap values for some registers (Jaroslav Kysela) [2179850] - ASoC: ssm2602: Add support for CLKDIV2 (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add delay control for input path (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: disable KAE for Intel DG2 (Jaroslav Kysela) [2179850] - ASoC: da7218: Use devm_clk_get_optional() (Jaroslav Kysela) [2179850] - ASoC: da7219: Improve the relability of AAD IRQ process (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for Lenovo Z13/Z16 Gen2 (Jaroslav Kysela) [2179850] - ASoC: amd: Add check for acp config flags (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ThinkBook 14 G5+ ARP to quirks list for acp6x (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: fix page fault in dspless mode when DSP is disabled (Jaroslav Kysela) [2179850] - ASoC: tas5720: add missing unwind goto in tas5720_codec_probe (Jaroslav Kysela) [2179850] - ASoC: ep93xx: Add OF support (Jaroslav Kysela) [2179850] - ASoC: ep93xx: i2s: Make it individually selectable (Jaroslav Kysela) [2179850] - ASoC: cs4271: flat regcache, trivial simplifications (Jaroslav Kysela) [2179850] - ASoC: ep93xx: i2s: move enable call to startup callback (Jaroslav Kysela) [2179850] - ASoC: amd: Add Dell G15 5525 to quirks list (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Print the format_val as hexadecimal number (Jaroslav Kysela) [2179850] - ASoC: max98373: change power down sequence for smart amp (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: conditionally wake WPIO1PG domain (Jaroslav Kysela) [2179850] - ASoC: Intel: Add rpl_mx98360_rt5682 driver (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add __func__ in SoundWire lcount() error logs (Jaroslav Kysela) [2179850] - ALSA: hda: patch_realtek: add quirk for Asus N7601ZM (Jaroslav Kysela) [2179850] - ALSA: hda: LNL: add HD Audio PCI ID (Jaroslav Kysela) [2179850] - ASoC: max98363: Make soc_codec_dev_max98363 static (Jaroslav Kysela) [2179850] - soundwire: bus: Fix unbalanced pm_runtime_put() causing usage count underflow (Jaroslav Kysela) [2179850] - ALSA: firewire-tascam: add missing unwind goto in snd_tscm_stream_start_duplex() (Jaroslav Kysela) [2179850] - ALSA: document that struct __snd_pcm_mmap_control64 is messed up (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: Add RT712 SDCA driver for Mic topology (Jaroslav Kysela) [2179850] - ASoC: add snd_soc_card_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: expand snd_soc_dpcm_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: expand snd_soc_dapm_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup dapm_connect_dai_pair() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: documentation updates (Jaroslav Kysela) [2179850] - ALSA: emu10k1: update label & help in config system (Jaroslav Kysela) [2179850] - ALSA: emu10k1: don't create old pass-through playback device on Audigy (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix capture interrupt handler unlinking (Jaroslav Kysela) [2179850] - ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards (Jaroslav Kysela) [2179850] - ALSA: i2c/cs8427: fix iec958 mixer control deactivation (Jaroslav Kysela) [2179850] - ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard (Jaroslav Kysela) [2179850] - ALSA: pcm: fix wait_time calculations (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Tear down pipelines only if DSP was active (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to retrieve eml_lock (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to offload link ownership (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to retrieve DMIC/SSP hlink (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: program SoundWire LSDIID registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to check cmdsync (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers for sync_arm/sync_go (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to set link SYNC frequency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to enable/check interrupts (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to return sublink count (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add convenience helpers for SoundWire PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: introduce helpers for 'extended links' PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: special-case HDaudio regular links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add structures to parse ALT links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: move to a dedicated module (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add return value for hda_bus_ml_get_capabilities() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: improve hda_bus_ml_free() helper (Jaroslav Kysela) [2179850] - ALSA: hda: add HDaudio Extended link definitions (Jaroslav Kysela) [2179850] - Documentation: sound: add description of Intel HDaudio multi-links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-skl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-mtl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-icl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-cnl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-apl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: make DSPless mode work with DSP disabled in BIOS (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add support for DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Skip interfaces not supported on a platform (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Add flag and state which will be used for DSP-less mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: Do not dereference hstream until it is safe (Jaroslav Kysela) [2179850] - ASoC: tegra20_ac97: Add missing unwind goto in tegra20_ac97_platform_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Clarify bind failure caused by missing fw_module (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor dmic codec platform device creation (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor error checks in probe call (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor get_chip_info callback (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove unused variables (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove acp_dai_probe() function (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove unused code (Jaroslav Kysela) [2179850] - ASoC: soc.h: remove unused params/num_params (Jaroslav Kysela) [2179850] - ASoC: samsung: switch to use c2c_params instead of params (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: switch to use c2c_params instead of params (Jaroslav Kysela) [2179850] - ASoC: soc.h: clarify Codec2Codec params (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support HP OMEN 16-n0xxx (8A42) (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo X370SNW (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Preserve the previous PCM device upon re-enablement (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update the acp clock source. (Jaroslav Kysela) [2179850] - ASoC: max98363: add soundwire amplifier driver (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Fix spelling mistake "schduler" -> "scheduler" (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Add missing mutex_unlock() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Add support for chained DMA (Jaroslav Kysela) [2179850] - ASoC: SOF: avoid a NULL dereference with unsupported widgets (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Use register macro in place of integer literal (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Use u16 consistently for old_legacy_ctrl (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Store additional legacy registers on suspend (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Store saved legacy registers in an array (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Move allocation of saved registers to struct snd_ymfpci (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Switch to DEFINE_SIMPLE_DEV_PM_OPS() (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Add error messages for abritrary IO ports on older chips (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Fix BUG_ON in probe function (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Create card with device-managed snd_devm_card_new() (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: dai_link->platform again (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Add a debugfs entry containing control details (Jaroslav Kysela) [2179850] - ASoC: wm8903: Remove outdated DMIC comment (Jaroslav Kysela) [2179850] - ASoC: es8316: Handle optional IRQ assignment (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Lenovo ZhaoYang CF4620Z (Jaroslav Kysela) [2179850] - ASoC: da7213.c: add missing pm_runtime_disable() (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2-custom-sample.dtsi: use card->name to avoid long name (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: add snd_soc_add_pcm_runtimes() (Jaroslav Kysela) [2179850] - ALSA: asihpi: remove unused loop_count variable (Jaroslav Kysela) [2179850] - ASoC: hdac_hdmi: use set_stream() instead of set_tdm_slots() (Jaroslav Kysela) [2179850] - ASoC: dapm: Sort speakers after other outputs (Jaroslav Kysela) [2179850] - ASoC: soc-compress: Inherit atomicity from DAI link for Compress FE (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix regression on detection of Roland VS-100 (Jaroslav Kysela) [2179850] - ASoC: codecs: rt5682-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt715-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt715: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt712-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt711-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt711-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt700-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1318-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1316-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1308-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: max98373-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: sdw-mockup: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: cs42l42-sdw: clear stream (Jaroslav Kysela) [2179850] - ASoC: simple-card.c: add missing of_node_put() (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ASoC: ti: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ASoC: atmel: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ALSA: hdspm: remove unused copy_u32_le function (Jaroslav Kysela) [2179850] - ALSA: docs: A few more words for PCM XRUN handling and stream locks (Jaroslav Kysela) [2179850] - ALSA: docs: Add description about ack callback -EPIPE error handling (Jaroslav Kysela) [2179850] - ALSA: pcm: Improved XRUN handling for indirect PCM helpers (Jaroslav Kysela) [2179850] - soundwire: intel_auxdevice: improve pm_prepare step (Jaroslav Kysela) [2179850] - soundwire: bus: Update sdw_nread/nwrite_no_pm to handle page boundaries (Jaroslav Kysela) [2179850] - soundwire: bus: Update kernel doc for no_pm functions (Jaroslav Kysela) [2179850] - soundwire: bus: Remove now outdated comments on no_pm IO (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix support for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Add quirk for the Acer Iconia One 7 B1-750 (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Improve the pcm trigger sequence (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Make hw_params reset conditional for IPC3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Do not perform DMA cleanup during stop (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Ensure DSP is in D0I0 during sof_ipc4_set_get_data() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Remove conditional dpcm_capture setting (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Update BT offload config for MTL RVP (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Update BT offload config for Rex (Jaroslav Kysela) [2179850] - soundwire: stream: uniquify dev_err() logs (Jaroslav Kysela) [2179850] - soundwire: stream: remove bus->dev from logs on multiple buses (Jaroslav Kysela) [2179850] - ASoC: tegra: remove unneeded semicolon (Jaroslav Kysela) [2179850] - ASoC: simple-card: add comment to indicate don't remove platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: Return on error in sof_ipc4_widget_kcontrol_setup() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macros for chain-dma message bits (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Set pipeline widget before updating IPC structures (Jaroslav Kysela) [2179850] - soundwire: amd: add pm_prepare callback and pm ops support (Jaroslav Kysela) [2179850] - soundwire: amd: handle SoundWire wake enable interrupt (Jaroslav Kysela) [2179850] - soundwire: amd: add runtime pm ops for AMD SoundWire manager driver (Jaroslav Kysela) [2179850] - soundwire: amd: add SoundWire manager interrupt handling (Jaroslav Kysela) [2179850] - soundwire: amd: enable build for AMD SoundWire manager driver (Jaroslav Kysela) [2179850] - soundwire: amd: register SoundWire manager dai ops (Jaroslav Kysela) [2179850] - soundwire: amd: Add support for AMD Manager driver (Jaroslav Kysela) [2179850] - soundwire: export sdw_compute_slave_ports() function (Jaroslav Kysela) [2179850] - soundwire: intel: don't save hw_params for use in prepare (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix recursive locking at XRUN during syncing (Jaroslav Kysela) [2179850] - ALSA: hda/conexant: Partial revert of a quirk for Lenovo (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Simplify the logging of requested firmware files (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Add support for loading bin files without wmfw (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Expose the DSP boot work actions as wm_adsp_power_up() (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Support DSPs that don't require firmware download (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Support DSPs that don't require firmware download (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Use no_core_startstop to prevent creating preload control (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Introduce no_core_startstop for self-booting DSPs (Jaroslav Kysela) [2179850] - mfd: arizona-i2c: Add the missing device table IDs for OF (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Add 12288000 clk freq to cs35l41_fs_mon clk config (Jaroslav Kysela) [2179850] - ALSA: portman2x4: remove unused portman_read_command,data functions (Jaroslav Kysela) [2179850] - ALSA: ymfpci: remove unused snd_ymfpci_readb function (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for some Clevo laptops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Initialize in_format to NULL in sof_ipc4_get_audio_fmt (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support Victus by HP Laptop 16-e1xxx (8A22) (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: update pipeline_params in process prepare (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set copier output format for process module (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for base config extension (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add base module config extension structure (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add effect widget support (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Move the kcontrol module_id update to helper (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: use common helper function in copier prepare (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: support multiple configs for BE DAIs (Jaroslav Kysela) [2179850] - soundwire: stream: restore cumulative bus bandwidth when compute_params callback failed (Jaroslav Kysela) [2179850] - ASoC: amd: acp: rembrandt: Drop if blocks with always false condition (Jaroslav Kysela) [2179850] - ALSA: sh: aica: Drop if blocks with always false condition (Jaroslav Kysela) [2179850] - soundwire: bandwidth allocation: Use hweight32() to calculate set bits (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add remapping for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: add table for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - ASOC: Intel: sof_sdw: add quirk for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - soundwire: cadence: change access to IP_MCP_CMD_BASE (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CMDCTRL fields (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CONTROL fields (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CONFIG fields (Jaroslav Kysela) [2179850] - soundwire: cadence: add helpers to access IP_MCP registers (Jaroslav Kysela) [2179850] - soundwire: cadence: remove CDNS_MCP_CONFIG_SSPMOD (Jaroslav Kysela) [2179850] - soundwire: intel: move bank switch routine to common intel_bus_common.c (Jaroslav Kysela) [2179850] - soundwire: intel: add abstraction for cmdsync check (Jaroslav Kysela) [2179850] - soundwire: intel: move bus common sequences to different file (Jaroslav Kysela) [2179850] - soundwire: intel: use indirection before moving bus start/stop sequences (Jaroslav Kysela) [2179850] - soundwire: intel: add sync_arm/sync_go to ops (Jaroslav Kysela) [2179850] - soundwire: intel: simplify sync_go sequence (Jaroslav Kysela) [2179850] - soundwire: intel: remove useless abstraction (Jaroslav Kysela) [2179850] - soundwire: intel: remove PDI-level restrictions on rates and formats (Jaroslav Kysela) [2179850] - soundwire: intel: remove stale/misleading comment (Jaroslav Kysela) [2179850] - soundwire: intel: move common definitions to header file (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Search only pin 0 formats (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add new tokens for input/output pin format count (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Remove the ref_audio_fmt field (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Modify the signature of sof_ipc4_init_audio_fmt() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Modify the type of available input/output formats (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Always parse the output formats in topology (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Parse the SOF_COMP_TOKENS only once (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Do not parse the DMA_BUFFER_SIZE token (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add a new field in struct sof_ipc4_available_audio_format (Jaroslav Kysela) [2179850] - ASoC: SOF: Use input/output pin consistently (Jaroslav Kysela) [2179850] - ASoC: SOF: rename a couple of tokens (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: Add support for bytes control get and put (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for TPLG_CTL_BYTES (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: set_volume_data only applies to VOLSW family (Jaroslav Kysela) [2179850] - ASoC: SOF: uapi: header: Update sof_abi_hdr doc for IPC4 use (Jaroslav Kysela) [2179850] - ASoC: SOF: uapi: header: Convert sof_abi_hdr comments to kernel style (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-control: Merge functions to handle bytes_ext get variants (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-control: Rename snd_sof_refresh_control() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: add support for setting up loopback routes (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set() (Jaroslav Kysela) [2179850] - ALSA: asihpi: check pao in control_message() (Jaroslav Kysela) [2179850] - ASoC: codecs: zl38060: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1019: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: pcm179x-spi: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: adau1977-spi: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Enable Bluetooth offload on adl_rt1019_rt5682 (Jaroslav Kysela) [2179850] - ALSA: Use of_property_read_bool() for boolean properties (Jaroslav Kysela) [2179850] - ALSA: ppc/tumbler: Use of_property_present() for testing DT property presence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Don't access EM2 (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Steam Deck Shared boost properties quirk (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: fix hw->formats cleared by soc_pcm_hw_init() for dpcm (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: only startup/shutdown on supported streams (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Enable cont_update_posn variable in pcm hw_params. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Add pcm pointer callback for amd platforms. (Jaroslav Kysela) [2179850] - ASoC: tegra: Support MAX9808x by machine driver (Jaroslav Kysela) [2179850] - ASoC: tegra: Support RT5631 by machine driver (Jaroslav Kysela) [2179850] - ASoC: tegra: Support coupled mic-hp detection (Jaroslav Kysela) [2179850] - ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU() (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro (Jaroslav Kysela) [2179850] - ASoC: da7219: Initialize jack_det_mutex (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: remove redundant DAI config during hw_free (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Remove hda_ctrl_dai_widget_setup/free() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Unify DAI drv ops for IPC3 and IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Define DAI widget DMA trigger ops for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Use the topology IPC dai_config op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Add setup_hext_stream/reset_hext_stream DMA ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Define and set the HDA DAI widget DMA ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Introduce DAI widget ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Use the dai argument in ipc4_hda_dai_trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Pass the CPU dai pointer (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Modify the signature of hda_link_dma_cleanup() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: remove struct hda_pipe_params (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Remove hda_link_dma_params() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Remove BE DAI DRV ops for SSP DAI's (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix speaker, mute/micmute LEDs not work on a HP platform (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add core token in each module extended token list (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for core_id for pipelines (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macro to set the core_id in create_pipe message (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Remove log prefixes for snd_sof_run_firmware (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3: Check for upper size limit for the received message (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix error handling in sof_widget_ready() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: don't squelch errors in WIDGET_SETUP phase (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Fix broken early bclk feature for SSP (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: process pending logs upon FW crash (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: don't allocate blob if it will not be used (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Fix incorrect sample rate print unit (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set dmic dai index from copier (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: update gain ipc msg definition to align with fw (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: fix copy-paste issue in topology names (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: harden D0i3 programming sequence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: re-add sleep after entering and exiting reset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tng: revert invalid bar size setting (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: Access MTL_HFPWRCTL from HDA_DSP_BAR (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: use SOF helper for consistency (Jaroslav Kysela) [2179850] - ASOC: SOF: Intel: pci-tgl: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: SKL: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: HDA: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Fix the device description (Jaroslav Kysela) [2179850] - ALSA: hda: intel-dsp-config: add MTL PCI id (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: remove useless dev_dbg() (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: remove indirect runtime copy (Jaroslav Kysela) [2179850] - ASoC: soc-dai.c: add missing flag check at snd_soc_pcm_dai_probe() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use struct_size for struct avs_modcfg_ext size (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: nau8825: Adjust clock control (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: ssm4567: Remove nau8825 bits (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: da7219: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: max98357a: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: maxim,max9867: add "mclk" support (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: add option to start DMA after DAI (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support HP OMEN 16-n0xxx (8A43) (Jaroslav Kysela) [2179850] - ASoC: zl38060 add gpiolib dependency (Jaroslav Kysela) [2179850] - ASoC: mt6358: Remove undefined HPx Mux enumeration values (Jaroslav Kysela) [2179850] - ASoC: mt6358: Validate Wake on Voice 2 writes (Jaroslav Kysela) [2179850] - ASoC: mt6358: Fix event generation for wake on voice stage 2 switch (Jaroslav Kysela) [2179850] - ALSA: ice1712: Delete unreachable code in aureon_add_controls() (Jaroslav Kysela) [2179850] - ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls() (Jaroslav Kysela) [2179850] - ASoC: adau7118: don't disable regulators on device unbind (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Replace fake flexible arrays with flexible-array member (Jaroslav Kysela) [2179850] - ALSA: cs35l41: Add shared boost feature (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Refactor error release code (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Only disable internal boost (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC (Jaroslav Kysela) [2179850] - soundwire: qcom: gracefully handle too many ports in DT (Jaroslav Kysela) [2179850] - soundwire: qcom: define hardcoded version magic numbers (Jaroslav Kysela) [2179850] - soundwire: qcom: correct setting ignore bit on v1.5.1 (Jaroslav Kysela) [2179850] - ASoC: jack: allow multiple interrupt per gpio (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Improve support for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Add quirk for Rex board with mx98360a amplifier (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Enable DMI L1 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Restrict DMI L1 disable workaround (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Do not re-enable L1 if disabled before suspend (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Add components prefix in structs and function names (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Centralize strings definition (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Move nau8821 and CPU side code up for future platform (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Check Bit Clock rate before snd_soc_dai_set_pll (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: use for_each_rtd_components instead of for (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: remove unnecessarily included headers (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: use sizeof of variable instead of struct type (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Small code refactor (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Remove unnecessary init function (Jaroslav Kysela) [2179850] - ASoC: nau8821: Implement DRC controls (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: fix possible stream_tag leak (Jaroslav Kysela) [2179850] - ASoC: amd: yp: Add OMEN by HP Gaming Laptop 16z-n000 to quirks (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: fixup warning struct snd_pcm_substream not declared (Jaroslav Kysela) [2179850] - ASoC: soc-ac97: Return correct error codes (Jaroslav Kysela) [2179850] - ASoC: da7219: Improve the IRQ process to increase the stability (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs and speaker support for HP Laptops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: Set streaming flag for d0i3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Enable d0i3 work for ipc4 (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Wake up dsp core before sending ipc msg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: use set_pm_gate according to ipc version (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce a new set_pm_gate() IPC PM op (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform. (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix struct definition (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Use min macro for comparison and assignment (Jaroslav Kysela) [2179850] - ASoC: soc-ac97: Convert to agnostic GPIO API (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Enable Amp High Pass Filter (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Ensure firmware/tuning pairs are always loaded (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Correct error condition handling (Jaroslav Kysela) [2179850] - ASoC: codecs: Modify error implicit declaration of function 'gpiod_set_value_cansleep' (Jaroslav Kysela) [2179850] - ASoC: codecs: Modify the log print statement (Jaroslav Kysela) [2179850] - ASoC: codecs: Fixed a spelling error in the function name (Jaroslav Kysela) [2179850] - ALSA: hda/realtek - fixed wrong gpio assigned (Jaroslav Kysela) [2179850] - ALSA: hda: Fix codec device field initializan (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: fix coding style and unconditionally return issues (Jaroslav Kysela) [2179850] - ASoC: rt5640: Update MCLK rate in set_sysclk() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set copier sink format (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Print queue IDs in error (Jaroslav Kysela) [2179850] - ALSA: hda: remove redundant variable in snd_hdac_stream_start() (Jaroslav Kysela) [2179850] - ALSA: hda/conexant: add a new hda codec SN6180 (Jaroslav Kysela) [2179850] - SoC: rt5682s: Disable jack detection interrupt during suspend (Jaroslav Kysela) [2179850] - ALSA: ppc: fix unused function local variable (Jaroslav Kysela) [2179850] - ASoC: codecs: max98090: simplify snd_soc_dai_driver (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: refine parameters order in function snd_sof_dsp_update8 (Jaroslav Kysela) [2179850] - ASoC: topology: Return -ENOMEM on memory allocation failure (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_free() return void (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_free_when_closed() return void (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_disconnect() return void (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add Positivo N14KP6-TG (Jaroslav Kysela) [2179850] - ALSA: emux: Avoid potential array out-of-bound in snd_emux_xg_control() (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: Add RT712 SDCA driver for Jack and Amp topology (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform. (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ASUS UM3402 using CS35L41 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Elitebook, 645 G9 (Jaroslav Kysela) [2179850] - ASoC: codecs: aw88395: initialize cur_scene_id to 0 (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: Fix DTS properties reading (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for handling spurious interrupts from DSP (Jaroslav Kysela) [2179850] - ASoC: codecs: fix platform_no_drv_owner.cocci warning (Jaroslav Kysela) [2179850] - ALSA: fireface: add field for the number of messages copied to user space (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: add delay function support (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: add get_stream_position support (Jaroslav Kysela) [2179850] - ASoC: SOF: add get_stream_position ops for pcm delay (Jaroslav Kysela) [2179850] - ASoC: SOF: add delay function support in sof framework (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: add hw_params (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: allocate time info for pcm delay feature (Jaroslav Kysela) [2179850] - ASoC: SOF: add time info structure for ipc4 path (Jaroslav Kysela) [2179850] - ASoC: SOF: add fw_info_box support (Jaroslav Kysela) [2179850] - ASoC: SOF: add ipc4_fw_reg header file (Jaroslav Kysela) [2179850] - ASoC: codecs: aw88395: Fix spelling mistake "cersion" -> "version" (Jaroslav Kysela) [2179850] - ASoC: SOF: fix intel-soundwire link failure (Jaroslav Kysela) [2179850] - ALSA: hda: Fix the control element identification for multiple codecs (Jaroslav Kysela) [2179850] - ASoC: amd: update ps platform acp header file (Jaroslav Kysela) [2179850] - ASoC: topology: Set correct unload callback for graph type (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Add missed "else" in sof_connect_dai_widget (Jaroslav Kysela) [2179850] - ASoC: cs42l42: use helper function (Jaroslav Kysela) [2179850] - ALSA: pci: lx6464es: fix a debug loop (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: cleanup Playback/Capture data for snd_soc_dai (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-dai.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: ti: use helper function (Jaroslav Kysela) [2179850] - ASoC: tegra: use helper function (Jaroslav Kysela) [2179850] - ASoC: sof: use helper function (Jaroslav Kysela) [2179850] - ASoC: intel: use helper function (Jaroslav Kysela) [2179850] - ASoC: sdw-mockup: use helper function (Jaroslav Kysela) [2179850] - ASoC: spear: use helper function (Jaroslav Kysela) [2179850] - ASoC: cirrus: use helper function (Jaroslav Kysela) [2179850] - ASoC: rt: use helper function (Jaroslav Kysela) [2179850] - ASoC: max: use helper function (Jaroslav Kysela) [2179850] - ASoC: hda: use helper function (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc.h: add snd_soc_card_is_instantiated() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_get/set_widget_playback/capture() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_tdm_mask_set/get() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_dma_data_set/get() for low level (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add missing snd_soc_dai_set_widget() (Jaroslav Kysela) [2179850] - ALSA: doc: Fix PCM interface section typos (Jaroslav Kysela) [2179850] - ALSA: firewire-motu: fix unreleased lock warning in hwdep device (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: fix uninitialized local variable (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor bit width calculation (Jaroslav Kysela) [2179850] - ASoC: rt715-sdca: fix clock stop prepare timeout issue (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro 360 (Jaroslav Kysela) [2179850] - ASoC: tas5720: set bit 7 in ANALOG_CTRL_REG for TAS5720A-Q1 during probe (Jaroslav Kysela) [2179850] - ASoC: codecs: tas5720: add support for TAS5720A-Q1 (automotive) variant (Jaroslav Kysela) [2179850] - ASoC: codecs: tas5720: split a tas5720_mute_soc_component() function (Jaroslav Kysela) [2179850] - ASoC: topology: Use unload() op directly (Jaroslav Kysela) [2179850] - ASoC: topology: Unify kcontrol removal code (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unnecessary check for EOF (Jaroslav Kysela) [2179850] - ASoC: topology: Return an error on complete() failure (Jaroslav Kysela) [2179850] - ASoC: topology: Pass correct pointer instead of casting (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unnecessary forward declarations (Jaroslav Kysela) [2179850] - ASoC: topology: Rename remove_ handlers (Jaroslav Kysela) [2179850] - ASoC: topology: Fix function name (Jaroslav Kysela) [2179850] - ASoC: topology: Fix typo in functions name (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unused SOC_TPLG_PASS_PINS constant (Jaroslav Kysela) [2179850] - ASoC: topology: Properly access value coming from topology file (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Wait for debounce interval after resume (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Don't set idle_bias_on (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add SoundWire support (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Export some functions for SoundWire (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Separate ASP config from PLL config (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Ensure MCLKint is a multiple of the sample rate (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add SOFT_RESET_REBOOT register (Jaroslav Kysela) [2179850] - soundwire: stream: Add specific prep/deprep commands to port_prep callback (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Do not run the trigger pipelines if no spipe is stored (Jaroslav Kysela) [2179850] - ASoC: SOF: Protect swidget->use_count with mutex for kcontrol access race (Jaroslav Kysela) [2179850] - ASoC: SOF: Avoid double decrementing use_count in sof_widget_setup on error (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Protect pipeline free with mutex (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Implement pipeline trigger reference counting (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Rename 'data' variable to trigger_list (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce struct snd_sof_pipeline (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Use the PCM stream's pipeline_info during trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Populate the PCM stream pipeline_info (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add flag to skip triggering pipelines during FE DAI trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Define pcm_setup/free ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce PCM setup/free PCM IPC ops (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Set IPC-specific trigger order for DAI links (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: do not free widgets during suspend trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Only process widgets in the connected widget list (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Set up/free DAI/AIF widgets only once (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: Export widget_in_list() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: No need to unbind routes within a pipeline (Jaroslav Kysela) [2179850] - Documentation: sound: correct spelling (Jaroslav Kysela) [2179850] - treewide: fix up files incorrectly marked executable (Jaroslav Kysela) [2179850] - ASoC: cs42l56: fix DT probe (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add buffer type support (Jaroslav Kysela) [2179850] - ALSA: memalloc: Workaround for Xen PV (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: use different channel mask for each sdw amp feedback (Jaroslav Kysela) [2179850] - soundwire: bus_type: Avoid lockdep assert in sdw_drv_probe() (Jaroslav Kysela) [2179850] - soundwire: cadence: further simplify low-level xfer_msg_defer() callback (Jaroslav Kysela) [2179850] - soundwire: stream: use consistent pattern for freeing buffers (Jaroslav Kysela) [2179850] - soundwire: bus: Remove unused reset_page_addr() callback (Jaroslav Kysela) [2179850] - soundwire: bus: Don't zero page registers after every transaction (Jaroslav Kysela) [2179850] - ASoC: ts3a227e: add set_jack and get_jack_type (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: create jack inputs for aux_devs (Jaroslav Kysela) [2179850] - ASoC: soc-component: add get_jack_type (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify probe-component implementation (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: prepare_widgets: Check swidget for NULL on sink failure (Jaroslav Kysela) [2179850] - firewire: cdev: use single object to dispatch event for request to IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - firewire: cdev: obsolete NULL check to detect IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - firewire: core: use kref structure to maintain lifetime of data for fw_request structure (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: zero clear HDMI pdata (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: prevent underflow in sof_ipc4_priority_mask_dfs_write() (Jaroslav Kysela) [2179850] - soundwire: bus: remove sdw_defer argument in sdw_transfer_defer() (Jaroslav Kysela) [2179850] - soundwire: cadence: use directly bus sdw_defer structure (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add FIXED_RATE quirk for JBL Quantum610 Wireless (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs, speaker don't work for a HP platform (Jaroslav Kysela) [2179850] - ASoC: SOF: keep prepare/unprepare widgets in sink path (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: skip prepare/unprepare if swidget is NULL (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: unprepare when swidget->use_count > 0 (Jaroslav Kysela) [2179850] - ALSA: fireface: fix locking bug in ff400_copy_msg_to_user() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: start with the right widget type (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Set compress data offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for compress API for stream data/offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Prepare set_stream_data_offset for compress API (Jaroslav Kysela) [2179850] - ASoC: SOF: Prepare ipc_msg_data to be used with compress API (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: minor fix for allocation size (Jaroslav Kysela) [2179850] - firewire: fix memory leak for payload of request subaction to IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use asoc_substream_to_rtd() to obtain rtd (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use min_t instead of min with cast (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Correctly access topology fields (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Implement PCI shutdown (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix possible NULL pointer dereference in snd_usb_pcm_has_fixed_rate() (Jaroslav Kysela) [2179850] - ASoC: codecs: Aw88395 chip register file, data type file and Kconfig Makefile (Jaroslav Kysela) [2179850] - ASoC: codecs: Aw88395 function for ALSA Audio Driver (Jaroslav Kysela) [2179850] - ASoC: codecs: ACF bin parsing and check library file for aw88395 (Jaroslav Kysela) [2179850] - ASoC: codecs: Add i2c and codec registration for aw88395 and their associated operation functions (Jaroslav Kysela) [2179850] - regmap: sdw: Remove 8-bit value size restriction (Jaroslav Kysela) [2179850] - regmap: sdw: Update misleading comment (Jaroslav Kysela) [2179850] - ALSA: fireface: implement message parser for Fireface 400 (Jaroslav Kysela) [2179850] - ALSA: fireface: add local framework to message parser (Jaroslav Kysela) [2179850] - ALSA: fireface: update UAPI for data of knob control (Jaroslav Kysela) [2179850] - ALSA: fireface: add helper function to parse MIDI messages transmitted by Fireface 400 (Jaroslav Kysela) [2179850] - ALSA: fireface: pick up time stamp for request subaction of asynchronous transaction (Jaroslav Kysela) [2179850] - ALSA: fireface: rename callback functions (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_es8336: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_wm5102: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5651: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_es8316: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: amd: acp-es8336: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI support for new acer/emdoor platforms (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Spectre x360 13-aw0xxx (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: compute extra delay for runtime of PCM substream (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: obsolete return value from context payload processing layer (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: move parameter for pcm frame multiplier from context payload processing layer (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Support mt8188 platform (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: extend tracepoints event including CYCLE_TIME of 1394 OHCI (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Add a HP device 0x8715 to force connect list (Jaroslav Kysela) [2179850] - ALSA: control-led: use strscpy in set_led_id() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Always initialize fixed_rate in snd_usb_find_implicit_fb_sync_format() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Enable i2s tdm support for skyrim platforms (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add i2s tdm support in machine driver (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor i2s clocks programming sequence (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor dai format implementation (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add new cpu dai's in machine driver (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: keep history to process isochronous packet (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: use circular linked list for context payload processing layer (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: use circular linked list to enumerate packet descriptors (Jaroslav Kysela) [2179850] - ASoC: nau8315: remove dependency on GPIOLIB (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for cache position in sequence replay (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for cache position in tx packets (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for pool position in rx packets (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for helper functions to pool sequence in rx packets (Jaroslav Kysela) [2179850] - ALSA: aoa: make remove callback of soundbus driver void returned (Jaroslav Kysela) [2179850] - ALSA: ac97: make remove callback of ac97 driver void returned (Jaroslav Kysela) [2179850] - ASoC: amd: ps: Fix uninitialized ret in create_acp64_platform_devs() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Check runtime suspend capability at runtime_idle (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Don't return -EINVAL from system suspend/resume (Jaroslav Kysela) [2179850] - mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform (Jaroslav Kysela) [2179850] - ASoC: amd: ps: use static function (Jaroslav Kysela) [2179850] - ASoC: nau8822: add speaker Bridge Tied Output configuration (Jaroslav Kysela) [2179850] - ASoC: amd: ps: remove unused variable (Jaroslav Kysela) [2179850] - ASoC: amd: ps: use acp_lock to protect common registers in pdm driver (Jaroslav Kysela) [2179850] - ASoC: amd: ps: add mutex lock for accessing common registers (Jaroslav Kysela) [2179850] - ALSA: hda - Enable headset mic on another Dell laptop with ALC3254 (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_ssp_amp: remove unused variable (Jaroslav Kysela) [2179850] - ASoC: Intel: sof-wm8804: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: cht_bsw_rt5672: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: cht_bsw_rt5645: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_da7213: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_cx2072x: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: More refactoring of hw constraint rules (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Relax hw constraints for implicit fb sync (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Make sure to stop endpoints before closing EPs (Jaroslav Kysela) [2179850] - ALSA: hda/realtek - Turn on power early (Jaroslav Kysela) [2179850] - ASoC: rt9120: Make dev PM runtime bind AsoC component PM (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ASUS M5402RA into DMI table (Jaroslav Kysela) [2179850] - ASoC: wm8904: fix wrong outputs volume after power reactivation (Jaroslav Kysela) [2179850] - ASoC: rt711-sdca: add jack detection mode for JD2 100K (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: add variant with nau8318 amplifier. (Jaroslav Kysela) [2179850] - ASoC: amd: ps: move irq handler registration (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update dev index value in irq handler (Jaroslav Kysela) [2179850] - ASoC: amd: ps: refactor platform device creation logic (Jaroslav Kysela) [2179850] - ASoC: amd: ps: implement api to retrieve acp device config (Jaroslav Kysela) [2179850] - ASoC: Intel: fix sof-nau8825 link failure (Jaroslav Kysela) [2179850] - ASoC: Intel: sof-nau8825: fix module alias overflow (Jaroslav Kysela) [2179850] - ASoC: SOF: trace: No need to check for op pointer in sof_fw_trace_free() (Jaroslav Kysela) [2179850] - ASoC: SOF: trace: Use sof_ipc_get_ops() in sof_fw_trace_init (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-priv: Mark fw_tracing ops optional in documentation (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: control: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: Add helper macro to be used to get an IPC ops (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Update documentation for sof_ipc_tplg_ops (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Treat tplg_ops->route_setup() as optional (Jaroslav Kysela) [2179850] - ASoC: SOF: Add FW state to debugfs (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Always tear down pipelines before DSP suspend (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Set target state earlier (Jaroslav Kysela) [2179850] - ASoC: SOF: core: Print out the value of sof_debug if it is set (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC3 topology: Print the conflicting bytes sizes (Jaroslav Kysela) [2179850] - ASoC: wm8940: Read chip ID when wm8940 codec probing (Jaroslav Kysela) [2179850] - ASoC: wm8940: Rewrite code to set proper clocks (Jaroslav Kysela) [2179850] - ASoC: wm8940: Remove warning when no plat data present (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Razer Blade 14 2022 into DMI table (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add new quirk FIXED_RATE for JBL Quantum810 Wireless (Jaroslav Kysela) [2179850] - ASoC: lochnagar: Fix unused lochnagar_of_match warning (Jaroslav Kysela) [2179850] - soundwire: intel: remove DAI startup/shutdown (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: remove a redundant comparison of sram (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Peakvol module configuration (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Parse control tuples (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add control volume operations (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add peakvol runtime-parameter requests (Jaroslav Kysela) [2179850] - ASoC: Intel: Add HP Stream 8 to bytcr_rt5640.c (Jaroslav Kysela) [2179850] - ASoC: da7213: Add support for mono, set frame width to 32 when possible (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071 tablet (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: initialize panic_info to zero (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Enable cache for AMD Rembrandt platform (Jaroslav Kysela) [2179850] - ALSA: azt3328: Remove the unused function snd_azf3328_codec_outl() (Jaroslav Kysela) [2179850] - ASoC: SOF: nocodec: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: wl1273: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: mc13783: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: cq93vc: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: bt-sco: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: adau7002: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: ac97: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: 88pm860x: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: atmel-pdmic: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: atmel-classd: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: amd: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: SOF: Revert: "core: unregister clients and machine drivers in .shutdown" (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: unblock S5 entry if DMA stop has failed" (Jaroslav Kysela) [2179850] - ASoC: rt5640: Allow configuration of LOUT to mono differential mode (Jaroslav Kysela) [2179850] - ALSA: hda: Error out if invalid stream is being setup (Jaroslav Kysela) [2179850] - ASoC: soc-compress: Reposition and add pcm_mutex (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_realtek_common: set ret = 0 as initial value (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: add jsl_rt5682 board config (Jaroslav Kysela) [2179850] - ALSA: hda/cirrus: Add extra 10 ms delay to allow PLL settle and lock. (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Workaround for XRUN at prepare (Jaroslav Kysela) [2179850] - ALSA: pcm: Handle XRUN at trigger START (Jaroslav Kysela) [2179850] - ASoC : SOF: amd: Add support for IPC and DSP dumps (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Use poll function instead to read ACP_SHA_DSP_FW_QUALIFIER (Jaroslav Kysela) [2179850] - ASoC: imx-audmux: use sysfs_emit() to instead of scnprintf() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Use SG allocation for SKL-based firmware load (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Introduce single place for pipe-config selection (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Drop pipe_config_idx (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Remove skl_tplg_is_multi_fmt() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Update pipe_config_idx before filling BE params (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd-clsh: Remove the unused function (Jaroslav Kysela) [2179850] - ASoC: rt715: Make read-only arrays capture_reg_H and capture_reg_L static const (Jaroslav Kysela) [2179850] - soundwire: cadence: Drain the RX FIFO after an IO timeout (Jaroslav Kysela) [2179850] - soundwire: cadence: Remove wasted space in response_buf (Jaroslav Kysela) [2179850] - soundwire: cadence: Don't overflow the command FIFOs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Allow for dumping debug window snapshot (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Allow for dumping FW_REGS area (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Gather remaining logs on strace_release() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Probing and firmware tracing over debugfs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add probe machine board (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Data probing soc-component (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Probe compress operations (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add data probing requests (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop usage of debug members in non-debug code (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Make enable_logs() dependent on DEBUG_FS (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce debug-context aware helpers (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop fifo_lock (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce avs_log_buffer_status_locked() (Jaroslav Kysela) [2179850] - ALSA: hda: Interrupt servicing and BDL setup for compress streams (Jaroslav Kysela) [2179850] - ALSA: hda: Prepare for compress stream support (Jaroslav Kysela) [2179850] - ALSA: hda: Allow for compress stream to hdac_ext_stream assignment (Jaroslav Kysela) [2179850] - ALSA: dice: Remove left-over license text (Jaroslav Kysela) [2179850] - drm: tda99x: Don't advertise non-existent capture support (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: Allow playback and capture to be disabled (Jaroslav Kysela) [2179850] - ALSA: dice: add support for Focusrite Saffire Pro 40 with TCD3070 ASIC (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add quirk for Tascam Model 12 (Jaroslav Kysela) [2179850] - ASoC: SOF: Add DAI configuration support for AMD platforms. (Jaroslav Kysela) [2179850] - ASoC: rt5640: Fix Jack work after system suspend (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: Clear DAIs parameters after stream_active is updated (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add shutdown callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Drop obsolete dependency on COMPILE_TEST (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt298: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt298: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt286: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt286: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt274: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt274: Refer to DAI name through a constant (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: nau8825: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: da7219: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: bdw_rt286: Refactor jack handling (Jaroslav Kysela) [2179850] - ALSA: pcm: fix tracing reason in hw_ptr_error (Jaroslav Kysela) [2179850] - soundwire: stream: Move remaining register accesses over to no_pm (Jaroslav Kysela) [2179850] - soundwire: debugfs: Switch to sdw_read_no_pm (Jaroslav Kysela) [2179850] - soundwire: Provide build stubs for common functions (Jaroslav Kysela) [2179850] - soundwire: bus: export sdw_nwrite_no_pm and sdw_nread_no_pm functions (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Rename KConfig symbol CS_DSP -> FW_CS_DSP (Jaroslav Kysela) [2179850] - ASoC: nau8315: add new acpi id and compatible id (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Return whether changed when writing controls (Jaroslav Kysela) [2179850] - firmware: cs_dsp: cs_dsp_coeff_write_ctrl() should report changed (Jaroslav Kysela) [2179850] - ASoC: sdw-mockup: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt715: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt711: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt700: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt5682-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt1316-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: max98373-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - sound: sdw: Add hw_params to SoundWire config helper function (Jaroslav Kysela) [2179850] - ASoC: max9867: Implement exact integer mode (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: ADD HS and SP virtual DAI. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for selecting clock source as external clock. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for reading position updates from stream box. (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add a manually mechanism for detection failure (Jaroslav Kysela) [2179850] - ASoC: nau8825: Adjust internal clock during jack detection (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing audio amplifier for KBL (Jaroslav Kysela) [2179850] - ALSA: pcm: fix undefined behavior in bit shift for SNDRV_PCM_RATE_KNOT (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix Kconfig dependency (Jaroslav Kysela) [2179850] - ASoC: da7219: Fix pole orientation detection on OMTP headsets when playing music (Jaroslav Kysela) [2179850] - ASoC: max98396: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: ppc: keywest: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: aoa: tas: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: aoa: onyx: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - mfd: arizona-i2c: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Initialize private data for subsequent HDA FEs (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Fix possible UAF in acp_dma_open (Jaroslav Kysela) [2179850] - soundwire: enable optional clock registers for SoundWire 1.2 devices (Jaroslav Kysela) [2179850] - ASoC/soundwire: remove is_sdca boolean property (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw_amp: mark coeff tables with __maybe_unused (Jaroslav Kysela) [2179850] - ASoC: SOF: dai: move AMD_HS to end of list to restore backwards-compatibility (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: support rt1015p speaker amplifier (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Check ops before memory allocation (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Disconnect substream if suspend or resume fails (Jaroslav Kysela) [2179850] - ASoC: amd: ps: Move acp63_dev_data strcture from PCI driver (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update macros with ps platform naming convention (Jaroslav Kysela) [2179850] - ALSA: pcm: avoid nused-but-set-variable warning (Jaroslav Kysela) [2179850] - ALSA: memalloc: Allocate more contiguous pages for fallback case (Jaroslav Kysela) [2179850] - ASoC: codecs: Remove a useless include (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: remove Experimental announce (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: read multi-link capabilities earlier (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove check on number of links (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove sdw_intel_enable_irq() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add callback to check SoundWire lcount information (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: move SoundWire interrupt enabling to callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: factor interrupt enable/disable interrupt functions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add per-chip enable_sdw_irq() callback (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove useless interrupt enablement in interrupt thread (Jaroslav Kysela) [2179850] - soundwire: intel: split auxdevice to different file (Jaroslav Kysela) [2179850] - soundwire: intel: add in-band wake callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add link power management callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add bus management callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add register_dai callback in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add debugfs callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: start using hw_ops (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: add MTL AIC SoundWire configurations (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Allow client to hook into pre_run callback (Jaroslav Kysela) [2179850] - ASoC: rt1316-sdw: get BQ params property and apply them (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: get BQ params property and apply them (Jaroslav Kysela) [2179850] - ASoC: Intel: sof rt5682: remove the duplicate codes (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: add support for ALC5682I-VD with amp rt1019p (Jaroslav Kysela) [2179850] - ASoC: core: fix wrong size kzalloc for rtd's components member (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: get pipeline instance id from pipe_widget->instance_id (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: get max pipeline number (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: rename sof_ipc4_widget_free_comp (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: set d0i3 register with d0i3_offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add d0i3_offset in chip_info (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add d0i3 definition for MTL (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Add helper to get/put widget queue id (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support to parse pin binding array from topology (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for parsing the number of sink/source pins (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Implement tear_down_all_pipelines callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: use small buffer for iccmax stream (Jaroslav Kysela) [2179850] - ALSA: cs5535audio: Remove the redundant assignment (Jaroslav Kysela) [2179850] - ASoC: soc-dai: Do not call snd_soc_link_be_hw_params_fixup() twice (Jaroslav Kysela) [2179850] - ASoC: amd: fix ACP version typo mistake (Jaroslav Kysela) [2179850] - ASoC: Intel: cirrus-common: Make const array uid_strings static (Jaroslav Kysela) [2179850] - ARM: omap2: n8x0: stop instantiating codec platform data (Jaroslav Kysela) [2179850] - ASoC: tlv320aic3x: switch to using gpiod API (Jaroslav Kysela) [2179850] - ASoC: tlv320aic3x: remove support for platform data (Jaroslav Kysela) [2179850] - ASoC: rt5682: Support DBVDD and LDO1-IN supplies (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Support DBVDD and LDO1-IN supplies (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: check also dpcm node for convert-xxx (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2-custom-sample.dtsi: add convert-rate for DPCM (MIXer) (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: remove asoc_simple_convert_fixup() (Jaroslav Kysela) [2179850] - soundwire: cadence: use dai_runtime_array instead of dma_data (Jaroslav Kysela) [2179850] - soundwire: cadence: rename sdw_cdns_dai_dma_data as sdw_cdns_dai_runtime (Jaroslav Kysela) [2179850] - ASoC: cs42xx8-i2c.c: add module device table for of (Jaroslav Kysela) [2179850] - ALSA: hda: clarify comments on SCF changes (Jaroslav Kysela) [2179850] - ASoC: SOF: fix compilation issue with readb/writeb helpers (Jaroslav Kysela) [2179850] - ASoC: codecs: da7219: Do not export internal symbols (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: amd: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: rockchip: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: codecs: da7219: Introduce set_jack() callback (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: probes: Implement IPC4 ops for probes client device (Jaroslav Kysela) [2179850] - ASoC: SOF: client: Add sof_client_ipc4_find_module() function (Jaroslav Kysela) [2179850] - ASoC: SOF: client: Add sof_client_ipc_set_get_data() (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Separate IPC3 operations to a separate file (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Replace [0] union members with DECLARE_FLEX_ARRAY() (Jaroslav Kysela) [2179850] - ASoC: adau1372: correct PGA enable & mute bit (Jaroslav Kysela) [2179850] - ASoC: adau1372: add support for S24_LE mode (Jaroslav Kysela) [2179850] - ASoC: adau1372: fix mclk (Jaroslav Kysela) [2179850] - ASoC: SOF: introduce new DEBUG_NOCODEC mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: use GPL-2.0-only license (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: clarify Kconfig dependencies (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add hda_bus_ml_free helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to suspend/resume links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: clarify bus_init and bus_exit sequences (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add helpers to suspend and resume cmd_io (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: clarify dependencies on SND_SOC_SOF_HDA (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: use helper to clear RIRB status (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add hda_codec_check_rirb_status() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: always allocate CORB/RIRB buffer (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add stop_cmd_io helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add hda_codec_device_remove() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: add codec wakeup helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: move all RIRB/CMD_IO helpers to hda-codec.c (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add multi-link helper for LOSVID (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: start moving multi-link handling in dedicated file (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: move codec state change to hda-codec.c (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: simplify SND_SOC_SOF_HDA_AUDIO_CODEC handling (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove all dependencies on SND_SOC_HDAC_HDMI (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove option to disable the common_hdmi handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Enact power gating policy (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Power and clock gating policy overriding (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Standby power-state support (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Count low power streams (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Restart instead of resuming HDA capture streams (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Handle SUSPEND and RESUME triggers (Jaroslav Kysela) [2179850] - ALSA: hda: Introduce snd_hdac_stream_wait_drsm() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce PCM power management routines (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Split pcm pages freeing operation from hw_free() (Jaroslav Kysela) [2179850] - ASoC: core: Exit all links before removing their components (Jaroslav Kysela) [2179850] - ASoC: tas5805m: add missing page switch. (Jaroslav Kysela) [2179850] - ASoC: tas5805m: rework to avoid scheduling while atomic. (Jaroslav Kysela) [2179850] - soundwire: qcom: add support for v1.7 Soundwire Controller (Jaroslav Kysela) [2179850] - soundwire: qcom: make reset optional for v1.6 controller (Jaroslav Kysela) [2179850] - soundwire: qcom: remove unused SWRM_SPECIAL_CMD_ID (Jaroslav Kysela) [2179850] - ASoC: dapm: Don't use prefix for regulator name (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Return ssize_t from sof_ipc4_fw_parse_ext_man() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: boards: Fix typo in comments (Jaroslav Kysela) [2179850] - ASoC: Intel: boards: Fix typo in comments (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use readb/writeb for stream registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use snd_sof_dsp_updateb() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: use SOF helper for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: rename CL_SD_CTL registers as SD_CTL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use SOF helpers for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: remove useless check on GCTL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: always do a full reset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: remove useless sleep (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: remove useless members in hda_pipe_params (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: use component_get_drvdata to find hdac_bus (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: start removing the use of runtime->private_data in BE (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: use SOF helpers for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: add snd_sof_dsp_updateb() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: add readb/writeb helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: use mmio fallback for all platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: fallback to mmio in helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: fix comment error (Jaroslav Kysela) [2179850] - ALSA: asihpi: remove variable loops (Jaroslav Kysela) [2179850] - ALSA: rawmidi: remove variable dest_frames (Jaroslav Kysela) [2179850] - mfd: arizona: Remove #ifdef guards for PM related functions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: fix possible memory leak in hda_codec_device_init() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: fix possible memory leak in skl_codec_device_init() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Support for loading external libraries (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Remove the query_fw_configuration ops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Stop using the query_fw_configuration fw_loader ops (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Add support for IPC dependent post firmware boot ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add ipc4 library loading implementation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add flag to indicate that the firmware is IMR booted (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Define platform dependent library loading callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Set the default firmware library path for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Add path definition for external firmware libraries (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: Add helper for looking up module by UUID (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Convert the firmware handling (loader) to library convention (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Save the maximum number of libraries supported (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc: ops: Add support for optional init and exit callbacks (Jaroslav Kysela) [2179850] - ASoC: SOF: Drop the firmware and fw_offset from snd_sof_pdata (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader-skl: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce container struct for SOF firmware (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Set complete state before post_fw_run op (Jaroslav Kysela) [2179850] - soundwire: intel: Initialize clock stop timeout (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: move SPIB/DRMS functionality from ext layer (Jaroslav Kysela) [2179850] - ALSA: hda: hdac_ext_controller: remove useless loop (Jaroslav Kysela) [2179850] - ALSA: hda: ext: reduce ambiguity between 'multi-link' and 'link' DMA (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: add 'bus' prefix for multi-link stream setting (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: remove 'link' prefix for stream-related operations (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: add 'ext' prefix to snd_hdac_link_free_all (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: use hlink variable/parameter (Jaroslav Kysela) [2179850] - ALSA: hda: ext: hda_ext_controller: use hlink variable/parameter (Jaroslav Kysela) [2179850] - ALSA: hda: ext: hdac_ext_controller: use helpers in loop (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: update the preset settings (Jaroslav Kysela) [2179850] - ASoC: simple-card: Fix up checks for HW param fixups (Jaroslav Kysela) [2179850] - ASoC: soc-dpcm.h: remove snd_soc_dpcm::hw_param (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: fixup comment for snd_soc_dapm_widget_for_each_path() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: cleanup white space (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: numerical order for dapm_up_seq (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: cleanup snd_soc_dapm_new_dai() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: merge dapm_power_one_widget() and dapm_widget_set_power() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: cleanup dapm_widget_set_power() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: ignore parameter NULL at snd_soc_dapm_free_widget() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: remove no meaning variable from snd_soc_dapm_add_path() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup error handling on snd_soc_dapm_add_route() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: replace snd_soc_dapm_wcache to snd_soc_dapm_widget (Jaroslav Kysela) [2179850] - ASoC: twl4030: make read-only array ramp_base static const (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3: Log the tx message before sending it (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Ack a received reply or notification separately (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Wait for channel to be free before sending a message (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Read the interrupt reason registers at the same time (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Log the tx message before sending it (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add TDM slots setting support for ACP I2S controller (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: protect per-core nodes against multiple open (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add quirk variant for LAPBC710 NUC15 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: add missed microphone widgets (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: add missed Mixer inputs (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: use right control for Master Playback (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: simplify the return of comp_bind() (Jaroslav Kysela) [2179850] - ASoC: ak4458: add optional reset control to instead of gpio (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Support System Suspend (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Remove suspend/resume hda hooks (Jaroslav Kysela) [2179850] - ALSA: hda/cs_dsp_ctl: Fix mutex inversion when creating controls (Jaroslav Kysela) [2179850] - ALSA: hda: hda_cs_dsp_ctl: Ensure pwr_lock is held before reading/writing controls (Jaroslav Kysela) [2179850] - ALSA: hda: hda_cs_dsp_ctl: Minor clean and redundant code removal (Jaroslav Kysela) [2179850] - ASoC: codecs: hda: Fix spelling error in log message (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify log control for SKL (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify ignore_fw_version description (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not print IPC error message twice (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not treat unsupported IPCs as invalid (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not reuse msg between different IPC handlers (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing include to HDA board (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify d0ix disabling routine (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing SKL-based device IDs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Support da7219 on both KBL and APL (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Support AML with rt286 configuration (Jaroslav Kysela) [2179850] - ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe" (Jaroslav Kysela) [2179850] - ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe" (Jaroslav Kysela) [2179850] - ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe" (Jaroslav Kysela) [2179850] - ASoC: amd: Update Pink Sardine platform ACP register header (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Avoid superfluous endpoint setup (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Correct the return code from snd_usb_endpoint_set_params() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Apply mutex around snd_usb_endpoint_set_params() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Avoid unnecessary interface change at EP close (Jaroslav Kysela) [2179850] - ASoC: cx2072x: fix spelling typo in comment (Jaroslav Kysela) [2179850] - ALSA: hda: Update register polling macros (Jaroslav Kysela) [2179850] - Revert "ASoC: soc-component: using pm_runtime_resume_and_get instead of pm_runtime_get_sync" (Jaroslav Kysela) [2179850] - ASoC: codecs: allow WM8961 to be selected by the user (Jaroslav Kysela) [2179850] - ASoC: wm8961: add support for devicetree (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Load max98927 on target platform (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add max98927 machine board (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add TDM support (Jaroslav Kysela) [2179850] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2179850] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2179850] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2179850] - ASoC: core: clarify the driver name initialization (Jaroslav Kysela) [2179850] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2179850] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2179850] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2179850] - ALSA: asihpi - Remove unused struct hpi_subsys_response (Jaroslav Kysela) [2179850] - ALSA: sb: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: wm8978: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: cs35l36: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Fallback to headphones for type detect (Jaroslav Kysela) [2179850] - ASoC: uapi: Replace zero-length arrays with __DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: control.h: Replace zero-length array with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - usb: gadget: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ASoC: intel: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: usx2y: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: asihpi: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: hda: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: firewire: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: aloop: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: pcm: Make mmap status read-only (Jaroslav Kysela) [2179850] - ALSA: pcm: Avoid reference to status->state (Jaroslav Kysela) [2179850] - ALSA: Remove some left-over license text in include/uapi/sound/ (Jaroslav Kysela) [2179850] - ALSA: firewire: Remove some left-over license text in sound/firewire (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add pcm_pointer callback (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add pcm_hw_params callback (Jaroslav Kysela) [2179850] - ALSA: memalloc: use __GFP_RETRY_MAYFAIL for DMA mem allocs (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Call snd_sof_handle_fw_exception() in case of timeout (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Only dump firmware registers for IPC3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: Print relevant register in ipc_dump (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: skl: Use the ipc4 version of the ipc_dump (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add separate ops for ipc_dump for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: cnl: Add separate ops for ipc_dump for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: remove the unnecessary snd_sof_dsp_read() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: reuse the common ops for PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: HDA: use IPC version-specific ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: define and set the disable_interrupts op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: define and set the disable_interrupts op for cavs platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add a new op for disabling interrupts (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: use power_down_dsp op in hda_dsp_remove (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: define and set power_down_dsp op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: define and set power_down_dsp op for HDA platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: introduce new op to handle dsp power down (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_da7219_mx98360a: Access num_codecs through dai_link (Jaroslav Kysela) [2179850] - ASoC: soc-component: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132 - remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: SOF: pci-tgl: add missing PCI IDs for RPL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: reorder PCI IDs (Jaroslav Kysela) [2179850] - ASoC: es8316: fix register sync error in suspend/resume tests (Jaroslav Kysela) [2179850] - ASoC: cs42l83: change cs42l83_regmap to static (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add pcm_pointer callback for mt8186 (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add setbias level for rt5682s codec in machine driver (Jaroslav Kysela) [2179850] - ASoC: ts3a227e: add parameters to control debounce times (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Split endpoint setups for hw_params and prepare (take#2) (Jaroslav Kysela) [2179850] - ASoC: rt5682s: simplify the return of rt5682s_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: don't unprepare widget used other pipelines (Jaroslav Kysela) [2179850] - ASoC: SOF: clear prepare state when widget is unprepared (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: remove useless assignment (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: clarify calculation precedence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add ops for SKL/KBL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add initial SKL/KBL hardware support (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add SKL/KBL hardware code loader (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: expose functions for SKL support (Jaroslav Kysela) [2179850] - ALSA: es18xx: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: soc.h: use array instead of playback/capture_widget (Jaroslav Kysela) [2179850] - ASoC: soc.h: use defined number instead of direct number (Jaroslav Kysela) [2179850] - ASoC: soc.h: remove num_cpus/codecs (Jaroslav Kysela) [2179850] - soundwire: intel: add helper to stop bus (Jaroslav Kysela) [2179850] - soundwire: intel: introduce helpers to start bus (Jaroslav Kysela) [2179850] - soundwire: intel: introduce intel_shim_check_wake() helper (Jaroslav Kysela) [2179850] - soundwire: intel: simplify read ops assignment (Jaroslav Kysela) [2179850] - soundwire: intel: remove intel_init() wrapper (Jaroslav Kysela) [2179850] - soundwire: intel: move shim initialization before power up/down (Jaroslav Kysela) [2179850] - soundwire: intel: remove clock_stop parameter in intel_shim_init() (Jaroslav Kysela) [2179850] - soundwire: intel: move all PDI initialization under intel_register_dai() (Jaroslav Kysela) [2179850] - soundwire: intel: move DAI registration and debugfs init earlier (Jaroslav Kysela) [2179850] - soundwire: intel: simplify flow and use devm_ for DAI registration (Jaroslav Kysela) [2179850] - soundwire: intel: fix error handling on dai registration issues (Jaroslav Kysela) [2179850] - ASoC: SOF: replace ipc4-loader dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: replace dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: replace dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: remove unneeded dev_vdbg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove unneeded dev_vdbg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add HDA interrupt source tracing (Jaroslav Kysela) [2179850] - ASoC: SOF: add widget setup/free tracing (Jaroslav Kysela) [2179850] - ALSA: hda: ext: remove always-true conditions on host and link release (Jaroslav Kysela) [2179850] - ALSA: hda: ext: fix locking in stream_release (Jaroslav Kysela) [2179850] - ALSA: hda: ext: simplify logic for stream assignment (Jaroslav Kysela) [2179850] - ALSA: hda: Use hdac_ext prefix in snd_hdac_stream_free_all() for clarity (Jaroslav Kysela) [2179850] - ALSA: hda: ext: make snd_hdac_ext_stream_init() static (Jaroslav Kysela) [2179850] - ALSA: hda: document state machine for hdac_streams (Jaroslav Kysela) [2179850] - ALSA: hda: make snd_hdac_stream_clear() static (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: override mclk_id after parsing NHLT SSP blob (Jaroslav Kysela) [2179850] - ALSA: hda: intel-nhlt: add intel_nhlt_ssp_mclk_mask() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: refine SSP count support (Jaroslav Kysela) [2179850] - soundwire: cadence: Simplify error paths in cdns_xfer_msg() (Jaroslav Kysela) [2179850] - soundwire: cadence: Fix error check in cdns_xfer_msg() (Jaroslav Kysela) [2179850] - soundwire: bus: Fix wrong port number in sdw_handle_slave_alerts() (Jaroslav Kysela) [2179850] - soundwire: cadence: Write to correct address for each FIFO chunk (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add pcm_hw_params callback for mt8186 (Jaroslav Kysela) [2179850] - ALSA: ppc: Switch to use for_each_child_of_node() macro (Jaroslav Kysela) [2179850] - ASoC: Intel: skylake: remove unnecessary dev_set_drvdata() (Jaroslav Kysela) [2179850] - soundwire: qcom: do not send status of device 0 during alert (Jaroslav Kysela) [2179850] - soundwire: qcom: update status from device id 1 (Jaroslav Kysela) [2179850] - ASoC: max98390: Fix dsm calibration reading (Jaroslav Kysela) [2179850] - soundwire: cadence: Don't overwrite msg->buf during write commands (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_ssp_amp: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASOC: SOF: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_es8336: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_cs42l42: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Switch to dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Implement 'set_bclk_ratio' (Jaroslav Kysela) [2179850] - ASoC: cs42l83: Extend CS42L42 support to new part (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Export regmap elements to core namespace (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split I2C identity into separate module (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Pass component and dai defs into common probe (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split cs42l42_resume into two functions (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split probe() and remove() into stages (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Use cs42l42->dev instead of &i2c_client->dev (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add bitclock frequency argument to cs42l42_pll_config() (Jaroslav Kysela) [2179850] - soundwire: bus: Don't exit early if no device IDs were programmed (Jaroslav Kysela) [2179850] - soundwire: cadence: Fix lost ATTACHED interrupts when enumerating (Jaroslav Kysela) [2179850] - soundwire: bus: Don't re-enumerate before status is UNATTACHED (Jaroslav Kysela) [2179850] - soundwire: bus: Don't lose unattach notifications (Jaroslav Kysela) [2179850] - soundwire: cadence: fix updating slave status when a bus has multiple peripherals (Jaroslav Kysela) [2179850] - ASoC: soc-dapm: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: bcm2835-i2s: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: increase SRAM inbox and outbox size to 1024 (Jaroslav Kysela) [2179850] - ASoC: SOF: Adding amd HS functionality to the sof core (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Add support for Rembrandt plaform. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Make ACP core code generic for newer SOC transition (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add ADCOUT IO drive strength control (Jaroslav Kysela) [2179850] - ASoC: ak4458: Add ak4458_reset in device probe and remove (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: remove SOF_RT1015_SPEAKER_AMP_100FS flag (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of PLLB setting (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of I2S1 setting (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of Micbias and Vref2 settings (Jaroslav Kysela) [2179850] - ALSA: dummy: Add customizable volume min/max. (Jaroslav Kysela) [2179850] - ALSA: dummy: Fix trailing whitespaces. (Jaroslav Kysela) [2179850] - soundwire: cadence: remove unused sdw_cdns_master_ops declaration (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add mtrace type information for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: icl: Set IPC4-specific DSP ops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add support for mtrace log extraction (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Configure the debug box offset (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add define for the outbox window index (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macro to get core ID from log buffer status message (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Only print LOG BUFFER update message info if requested (Jaroslav Kysela) [2179850] - sound: oss: dmasound: remove software_input_volume declaration (Jaroslav Kysela) [2179850] - ALSA: memalloc: remove snd_dma_sg_ops declaration (Jaroslav Kysela) [2179850] - ALSA: line6: remove line6_set_raw declaration (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec.c: use devm_kzalloc() for DMA data (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: setup rtd->pmdown_time at soc_new_pcm_runtime() (Jaroslav Kysela) [2179850] - ASoC: ak4458: Remove component probe() and remove() (Jaroslav Kysela) [2179850] - ASoC: max98390: Remove unnecessary amp on/off conrtol (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: add comment for kzalloc()/kfree() on snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ASoC: sti-sas: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: switch to using gpiod API (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add devicetree support to select topologies (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add generic pcm_{open,close} callbacks (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add mailbox generic callbacks for IPC (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: fixup snd_soc_dapm_new_control_unlocked() error handling (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: don't use WARN_ON() at snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Utilize acpi_get_subsystem_id() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Call put_device() in the scope of get_device() (Jaroslav Kysela) [2179850] - ASoC: SOF: Remove strsplit_u32() and tokenize_input() (Jaroslav Kysela) [2179850] - lib/string_helpers: Introduce parse_int_array_user() (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce function sof_of_machine_select (Jaroslav Kysela) [2179850] - ALSA: asihpi - Remove useless code in hpi_meter_get_peak() (Jaroslav Kysela) [2179850] - ASoC: amd: fix spelling mistake: "i.e" -> "i.e." (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: check fe condition at out of loop (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: add soc_pcm_ret() (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: remove unnecessary codec2codec_close_delayed_work() (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Replace zero-length array with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: codecs: max98088: remove redundant ret variable (Jaroslav Kysela) [2179850] - ASoC: amd: enable Pink sardine platform machine driver build. (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine machine driver using dmic (Jaroslav Kysela) [2179850] - ASoC: amd: create platform device for acp6.2 machine driver (Jaroslav Kysela) [2179850] - ASoC: amd: enable Pink Sardine acp6.2 drivers build (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm driver pm ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pci driver pm ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm driver dma ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 irq handler (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm platform driver (Jaroslav Kysela) [2179850] - ASoC: amd: add platform devices for acp6.2 pdm driver and dmic driver (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 init/de-init functions (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine ACP PCI driver (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine platform ACP IP register header (Jaroslav Kysela) [2179850] - ASoC: max98396: Make data monitor features configurable (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Modify dai_id macros to be more generic (Jaroslav Kysela) [2179850] - ASoC: tas2562: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2179850] - ASoC: tas2764: Export highpass filter setting (Jaroslav Kysela) [2179850] - ASoC: tas2764: Add IRQ handling (Jaroslav Kysela) [2179850] - ASoC: sigmadsp: switch to use kmemdup_nul() helper (Jaroslav Kysela) [2179850] - ASoC: max98088: add support for noise gate reg (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Use generic implementation for .ipc_msg_data field (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add snd_sof_dsp_ops callbacks for pcm and mail box (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Add dai driver for mt8186 (Jaroslav Kysela) [2179850] - ASoC: codecs: add suspend and resume for ES8316 (Jaroslav Kysela) [2179850] - ASoC: SOF: imx8ulp: add missing of_node_put() in imx8ulp_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: imx: imx8ulp: declare ops structure as static (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Skip IMR boot after a firmware crash or boot failure (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Verify ext manifest magic number (Jaroslav Kysela) [2179850] - ASoC: SOF: Kconfig: Make IPC_MESSAGE_INJECTOR depend on SND_SOC_SOF (Jaroslav Kysela) [2179850] - ASoC: SOF: Kconfig: Make IPC_FLOOD_TEST depend on SND_SOC_SOF (Jaroslav Kysela) [2179850] - ALSA: memalloc: Drop special handling of GFP for CONTINUOUS allocation (Jaroslav Kysela) [2179850] - ASoC: Intel: sst: Switch to standard device pages (Jaroslav Kysela) [2179850] - ALSA: pdaudiocf: Drop superfluous GFP setup (Jaroslav Kysela) [2179850] - ALSA: vx: Drop superfluous GFP setup (Jaroslav Kysela) [2179850] - ASoC: atmel_ssc_dai: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup WakeEnable and WakeStatus (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup AC Timing Control (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup IO control (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup PCM Stream channel map and channel count (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup PCM stream capabilities (Jaroslav Kysela) [2179850] - soundwire: intel: add comment for control stream cap/chmap (Jaroslav Kysela) [2179850] - soundwire: intel: remove unused PDM capabilities (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup SHIM SYNC (Jaroslav Kysela) [2179850] - soundwire: intel: remove IPPTR unused definition (Jaroslav Kysela) [2179850] - soundwire: intel: regroup definitions for LCTL (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup definition of LCOUNT (Jaroslav Kysela) [2179850] - soundwire: intel: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2179850] - soundwire: bus: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2179850] - soundwire: intel: set dev_num_ida_min (Jaroslav Kysela) [2179850] - soundwire: bus: allow device number to be unique at system level (Jaroslav Kysela) [2179850] - soundwire: bus: rename sdw_ida as sdw_bus_ida (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add remapping for HP Omen 16-k0005TX (Jaroslav Kysela) [2179850] - ALSA: hda: cleanup definitions for multi-link registers (Jaroslav Kysela) [2179850] - ASoC: wcd9335: remove always-true condition (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: remove unused definitions (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Remove dai_posn variable (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Add copy function for capture case (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Move sof_compr_copy functionality (Jaroslav Kysela) [2179850] - ASoC: Intel: fix unused-variable warning in probe_codec (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: summarize related settings at soc_new_pcm() (Jaroslav Kysela) [2179850] - ASoC: SOF: Fix compilation when HDA_AUDIO_CODEC config is disabled (Jaroslav Kysela) [2179850] - ASoC: amd: acp: add a label to make error path more clean (Jaroslav Kysela) [2179850] - ASoC: amd: acp: switch to use dev_err_probe() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: remove unnecessary NULL checks (Jaroslav Kysela) [2179850] - ASoC: Change handling of unimplemented set_bclk_ratio (Jaroslav Kysela) [2179850] - ALSA: hda: Remove unused defines (Jaroslav Kysela) [2179850] - ALSA: hda: Remove unused MAX_PIN_CONFIGS constant (Jaroslav Kysela) [2179850] - ALSA: hda: Rework snd_hdac_stream_reset() to use macros (Jaroslav Kysela) [2179850] - ALSA: hda: Move stream-register polling macros (Jaroslav Kysela) [2179850] - ASoC: SOF: imx: Add i.MX8ULP HW support (Jaroslav Kysela) [2179850] - ASoC: soc-utils-test: Add test for snd_soc_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Use snd_soc_tdm_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Fix comment typo in cs42l42_slow_start_put() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Move cs42l42_supply_names to .c file (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add include dependencies to cs42l42.h (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Don't include kernel.h (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: change es8326_regmap_config to static (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Add support for computing timestamps (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Save channel count and sample bytes (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Introduce sof_compr_stream (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Remove byte offset computation (Jaroslav Kysela) [2179850] - soundwire: intel: Remove unnecessary TODO (Jaroslav Kysela) [2179850] - ASoC: Variable type completion (Jaroslav Kysela) [2179850] - ASoC: core: remove setting platform_max in kcontrol macros (Jaroslav Kysela) [2179850] - ALSA: hda: Fix page fault in snd_hda_codec_shutdown() (Jaroslav Kysela) [2179850] - ALSA: hda: Remove codec init and exit routines (Jaroslav Kysela) [2179850] - ALSA: hda: Always free codec on the device release (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop hdac_ext usage for codec device creation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Introduce HDA codec init and exit routines (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Introduce HDA codec init and exit routines (Jaroslav Kysela) [2179850] - ASoC: codecs: add support for ES8326 (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop legacy HSW/BDW board-match information (Jaroslav Kysela) [2179850] - ASoC: Intel: catpt: Drop SND_SOC_ACPI_INTEL_MATCH dependency (Jaroslav Kysela) [2179850] - ASoC: Intel: bdw_rt286: Rename module (Jaroslav Kysela) [2179850] - ASoC: Intel: hsw_rt5640: Rename module (Jaroslav Kysela) [2179850] - ASoC: soc-utils: Improve kerneldoc for snd_soc_tdm_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add TDM support for acp i2s stream (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Initialize list to store acp_stream during pcm_open (Jaroslav Kysela) [2179850] - ASoC: Variable type completion (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: Fixup DAI sample format (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Add sof_mt8186_machs for mt8186 (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce function sof_of_machine_select (Jaroslav Kysela) [2179850] - ASoC: omap: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: DAPM: Replace sprintf() calls with sysfs_emit_at() (Jaroslav Kysela) [2179850] - ASoC: core: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: skylake: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: catpt: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: sst: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: tlv320aic26: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: cs43130: Replace scnprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ALSA: aoa: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ALSA: ac97: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: cirrus-common: Use UID to map correct amp to prefix (Jaroslav Kysela) [2179850] - ASoC: codecs: show PING status on resume failures (Jaroslav Kysela) [2179850] - soundwire: add sdw_show_ping_status() helper (Jaroslav Kysela) [2179850] - soundwire: intel/cadence: expose PING status in manager ops (Jaroslav Kysela) [2179850] - soundwire: add read_ping_status helper definition in manager ops (Jaroslav Kysela) [2179850] - soundwire: qcom: Update error prints to debug prints (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Drop no longer used ROM state definitions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: Use the FSR state definitions during bootup (Jaroslav Kysela) [2179850] - ALSA: wavefront: remove redundant assignment to pointer end (Jaroslav Kysela) [2179850] - soundwire: Use acpi_dev_for_each_child() (Jaroslav Kysela) [2179850] - firewire: cdev: fix potential leak of kernel stack due to uninitialized value (Jaroslav Kysela) [2179850] - list: Add list_next_entry_circular() and list_prev_entry_circular() (Jaroslav Kysela) [2179850] - ASoC: cs43130: Re-use generic struct u16_fract (Jaroslav Kysela) [2179850] - firewire: fix potential uaf in outbound_phy_packet_callback() (Jaroslav Kysela) [2179850] - firewire: add kernel API to access packet structure in request structure for AR context (Jaroslav Kysela) [2179850] - firewire: add kernel API to access CYCLE_TIME register (Jaroslav Kysela) [2179850] - firewire: Add dummy read_csr/write_csr functions (Jaroslav Kysela) [2179850] - treewide: Replace open-coded flex arrays in unions (Jaroslav Kysela) [2179850] - firewire: Remove function callback casts (Jaroslav Kysela) [2179850] - ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256 (Jaroslav Kysela) [2179850] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2179850]- Revert "softirq: Let ksoftirqd do its job" (Oleg Nesterov) [2196767] - perf: Fix check before add_event_to_groups() in perf_group_detach() (Michael Petlan) [2209645] {CVE-2023-2235} - perf/core: Call LSM hook after copying perf_event_attr (Audra Mitchell) [2172142] - kprobes: Skip clearing aggrprobe's post_handler in kprobe-on-ftrace case (Audra Mitchell) [2172142] - cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset (Audra Mitchell) [2172142] - cgroup: Fix race condition at rebind_subsystems() (Audra Mitchell) [2172142] - tick/nohz: unexport __init-annotated tick_nohz_full_setup() (Audra Mitchell) [2172142] - ipc/mqueue: use get_tree_nodev() in mqueue_get_tree() (Audra Mitchell) [2172142] - genirq: Synchronize interrupt thread startup (Audra Mitchell) [2172142] - genirq: Initialize request_mutex if CONFIG_SPARSE_IRQ=n (Audra Mitchell) [2172142] - scftorture: Fix distribution of short handler delays (Audra Mitchell) [2172142] - tick/nohz: Use WARN_ON_ONCE() to prevent console saturation (Audra Mitchell) [2172142] - ipc/sem: do not sleep with a spin lock held (Audra Mitchell) [2172142] - signal: In get_signal test for signal_group_exit every time through the loop (Audra Mitchell) [2172142] - genirq: Move prio assignment into the newly created thread (Audra Mitchell) [2172142] - sched,irq: Convert to sched_set_fifo() (Audra Mitchell) [2172142] - cgroup/cpuset: Fix violation of cpuset locking rule (Audra Mitchell) [2172142] - timers: Move clearing of base::timer_running under base:: Lock (Audra Mitchell) [2172142] - cgroup1: fix leaked context root causing sporadic NULL deref in LTP (Audra Mitchell) [2172142] - jump_label: Fix usage in module __init (Audra Mitchell) [2172142] - padata: fix possible padata_works_lock deadlock (Audra Mitchell) [2172142] - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() (Audra Mitchell) [2172142] - padata: upgrade smp_mb__after_atomic to smp_mb in padata_do_serial (Audra Mitchell) [2172142] - cpu/speculation: Warn on unsupported mitigations= parameter (Audra Mitchell) [2172142] - x86/speculation: Remove redundant arch_smt_update() invocation (Audra Mitchell) [2172142] - cpu/hotplug: Non-SMP machines do not make use of booted_once (Audra Mitchell) [2172142] - can: usb_8dev: usb_8dev_start_xmit(): fix double dev_kfree_skb() in error path (Jose Ignacio Tornos Martinez) [2156581] {CVE-2022-28388} - kernfs: Improve kernfs_notify() poll notification latency (Ian Kent) [2195844] - stmmac: fix changing mac address (Corinna Vinschen) [2177654] - net/sched: cls_tcindex: downgrade to imperfect hash (Davide Caratti) [2192308] {CVE-2023-1829} - Bluetooth: btsdio: fix use after free bug in btsdio_remove due to race condition (Ricardo Robaina) [2185961] {CVE-2023-1989} - net: qcom/emac: Fix use after free bug in emac_remove due to race condition (Ricardo Robaina) [2192673] {CVE-2023-2483} - s390/crypto: improve retry logic in case of master key change (Tobias Huschle) [2212794] - bpf: pull before calling skb_postpull_rcsum() (Felix Maurer) [2186521] - bpf, sockmap: fix race in sock_map_free() (Felix Maurer) [2186521] - bpf, sock_map: Move cancel_work_sync() out of sock lock (Felix Maurer) [2186521] - brcmfmac: Switch to appropriate helper to load EFI variable contents (Lenny Szubowicz) [2183047] - iwlwifi: Switch to proper EFI variable store interface (Lenny Szubowicz) [2183047] - efi: Store mask of supported runtime services in struct efi (Lenny Szubowicz) [2183047] - NFS: Don't report errors from nfs_pageio_complete() more than once (Benjamin Coddington) [2213644] - NFS: Do not report flush errors in nfs_write_end() (Benjamin Coddington) [2213644] - NFS: Don't report ENOSPC write errors twice (Benjamin Coddington) [2213644] - NFS: fsync() should report filesystem errors over EINTR/ERESTARTSYS (Benjamin Coddington) [2213644] - NFS: Do not report EINTR/ERESTARTSYS as mapping errors (Benjamin Coddington) [2213644] - net: openvswitch: release vport resources on failure (Antoine Tenart) [2190225] - net: openvswitch: Add support to count upcall packets (Antoine Tenart) [2190225] - net: openvswitch: fix race on port output (Antoine Tenart) [2190225] - net: openvswitch: fix possible memory leak in ovs_meter_cmd_set() (Antoine Tenart) [2190225] - net: openvswitch: fix flow memory leak in ovs_flow_cmd_new (Antoine Tenart) [2190225] - openvswitch: Fix flow lookup to use unmasked key (Antoine Tenart) [2190225] - openvswitch: switch from WARN to pr_warn (Antoine Tenart) [2190225] - EDAC/i10nm: Add Intel Emerald Rapids server support (Aristeu Rozanski) [2165649] - EDAC/skx_common: Delete duplicated and unreachable code (Aristeu Rozanski) [2165649] - EDAC/skx_common: Enable EDAC support for the "near" memory (Aristeu Rozanski) [2165649] - EDAC/i10nm: Print an extra register set of retry_rd_err_log (Aristeu Rozanski) [2165649] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers for HBM (Aristeu Rozanski) [2165649] - EDAC/skx_common: Add ChipSelect ADXL component (Aristeu Rozanski) [2165649] - EDAC/i10nm: Fix NVDIMM detection (Aristeu Rozanski) [2165649] - EDAC/skx_common: Set the memory type correctly for HBM memory (Aristeu Rozanski) [2165649] - EDAC/mc: Add new HBM2 memory type (Aristeu Rozanski) [2165649] - EDAC: Replace EDAC_DIMM_PTR() macro with edac_get_dimm() function (Aristeu Rozanski) [2165649] - tpm: disable hwrng for fTPM on some AMD designs (Štěpán Horáček) [2159583] - tpm/eventlog: Don't abort tpm_read_log on faulty ACPI address (Štěpán Horáček) [2159583] - tpm: Use managed allocation for bios event log (Štěpán Horáček) [2159583] - efi: tpm: Avoid READ_ONCE() for accessing the event log (Štěpán Horáček) [2159583] - tpm: Allow system suspend to continue when TPM suspend fails (Štěpán Horáček) [2159583] - tpm: tpm_tis: Add the missed acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm: acpi: Call acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm/tpm_crb: Fix error message in __crb_relinquish_locality() (Štěpán Horáček) [2159583] - tpm: Avoid function type cast of put_device() (Štěpán Horáček) [2159583] - char: tpm: Protect tpm_pm_suspend with locks (Štěpán Horáček) [2159583] - efi/tpm: Pass correct address to memblock_reserve (Štěpán Horáček) [2159583] - char: move from strlcpy with unused retval to strscpy (Štěpán Horáček) [2159583] - tpm: eventlog: Fix section mismatch for DEBUG_SECTION_MISMATCH (Štěpán Horáček) [2159583] - tpm: Fix buffer access in tpm2_get_tpm_pt() (Štěpán Horáček) [2159583] - tpm: ibmvtpm: Correct the return value in tpm_ibmvtpm_probe() (Štěpán Horáček) [2159583] - tpm: use try_get_ops() in tpm-space.c (Štěpán Horáček) [2159583] - tpm: Fix error handling in async work (Štěpán Horáček) [2159583] - tpm: vtpm_proxy: Check length to avoid compiler warning (Štěpán Horáček) [2159583] - tpm: fix NPE on probe for missing device (Štěpán Horáček) [2159583] - tpm: fix potential NULL pointer access in tpm_del_char_device (Štěpán Horáček) [2159583] - tpm_tis: Fix an error handling path in 'tpm_tis_core_init()' (Štěpán Horáček) [2159583] - tpm: add request_locality before write TPM_INT_ENABLE (Štěpán Horáček) [2159583] - tpm_tis_spi: Add missing SPI ID (Štěpán Horáček) [2159583] - tpm: fix Atmel TPM crash caused by too frequent queries (Štěpán Horáček) [2159583] - tpm: Check for integer overflow in tpm2_map_response_body() (Štěpán Horáček) [2159583] - KEYS: trusted: Fix TPM reservation for seal/unseal (Štěpán Horáček) [2135881] - KVM: x86: Add helpers to recalc physical vs. logical optimized APIC maps (John Allen) [2117761] - KVM: x86: Allow APICv APIC ID inhibit to be cleared (John Allen) [2117761] - KVM: x86: Track required APICv inhibits with variable, not callback (John Allen) [2117761] - Revert "KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu" (John Allen) [2117761] - KVM: SVM: Handle multiple logical targets in AVIC kick fastpath (John Allen) [2117761] - KVM: SVM: Require logical ID to be power-of-2 for AVIC entry (John Allen) [2117761] - KVM: SVM: Update svm->ldr_reg cache even if LDR is "bad" (John Allen) [2117761] - KVM: SVM: Always update local APIC on writes to logical dest register (John Allen) [2117761] - KVM: SVM: Inhibit AVIC if vCPUs are aliased in logical mode (John Allen) [2117761] - KVM: x86: Inhibit APICv/AVIC if the optimized physical map is disabled (John Allen) [2117761] - KVM: x86: Honor architectural behavior for aliased 8-bit APIC IDs (John Allen) [2117761] - Documentation: KVM: Add SPDX-License-Identifier tag (John Allen) [2117761] - Documentation: KVM: add virtual CPU errata documentation (John Allen) [2117761] - KVM: x86: Disable APIC logical map if vCPUs are aliased in logical mode (John Allen) [2117761] - KVM: x86: Disable APIC logical map if logical ID covers multiple MDAs (John Allen) [2117761] - KVM: x86: Skip redundant x2APIC logical mode optimized cluster setup (John Allen) [2117761] - KVM: x86: Explicitly track all possibilities for APIC map's logical modes (John Allen) [2117761] - KVM: x86: Explicitly skip optimized logical map setup if vCPU's LDR==0 (John Allen) [2117761] - KVM: SVM: Add helper to perform final AVIC "kick" of single vCPU (John Allen) [2117761] - KVM: SVM: Document that vCPU ID == APIC ID in AVIC kick fastpatch (John Allen) [2117761] - Revert "KVM: SVM: Use target APIC ID to complete x2AVIC IRQs when possible" (John Allen) [2117761] - KVM: SVM: Replace "avic_mode" enum with "x2avic_enabled" boolean (John Allen) [2117761] - KVM: x86: Inhibit APIC memslot if x2APIC and AVIC are enabled (John Allen) [2117761] - KVM: x86: Handle APICv updates for APIC "mode" changes via request (John Allen) [2117761] - KVM: x86: Don't inhibit APICv/AVIC if xAPIC ID mismatch is due to 32-bit ID (John Allen) [2117761] - KVM: x86: Don't inhibit APICv/AVIC on xAPIC ID "change" if APIC is disabled (John Allen) [2117761] - KVM: SVM: Process ICR on AVIC IPI delivery failure due to invalid target (John Allen) [2117761] - KVM: SVM: Flush the "current" TLB when activating AVIC (John Allen) [2117761] - KVM: x86: Purge "highest ISR" cache when updating APICv state (John Allen) [2117761] - KVM: x86: Blindly get current x2APIC reg value on "nodecode write" traps (John Allen) [2117761] - KVM: x86: Bug the VM if an accelerated x2APIC trap occurs on a "bad" reg (John Allen) [2117761] - KVM: x86: Do not block APIC write for non ICR registers (John Allen) [2117761] - KVM: x86: Add support for vICR APIC-write VM-Exits in x2APIC mode (John Allen) [2117761] - KVM: x86: fix APICv/x2AVIC disabled when vm reboot by itself (John Allen) [2117761] - KVM: SEV: fix misplaced closing parenthesis (John Allen) [2117761] - KVM: SVM: Do not virtualize MSR accesses for APIC LVTT register (John Allen) [2117761] - KVM: SVM: Fix x2APIC MSRs interception (John Allen) [2117761] - KVM: x86: nSVM: optimize svm_set_x2apic_msr_interception (John Allen) [2117761] - KVM: SVM: Add AVIC doorbell tracepoint (John Allen) [2117761] - KVM: SVM: Use target APIC ID to complete x2AVIC IRQs when possible (John Allen) [2117761] - KVM: x86: Warning APICv inconsistency only when vcpu APIC mode is valid (John Allen) [2117761] - KVM: x86: Move APIC access page helper to common x86 code (John Allen) [2117761] - KVM: SVM: Introduce hybrid-AVIC mode (John Allen) [2117761] - KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu (John Allen) [2117761] - KVM: SVM: Modify AVIC GATag to support max number of 512 vCPUs (John Allen) [2117761] - KVM: SVM: Fix a benign off-by-one bug in AVIC physical table mask (John Allen) [2117761] - KVM: SVM: Ignore writes to Remote Read Data on AVIC write traps (John Allen) [2117761] - KVM: SVM: Introduce logic to (de)activate x2AVIC mode (John Allen) [2117761] - KVM: x86: nSVM: always intercept x2apic msrs (John Allen) [2117761] - KVM: SVM: Don't put/load AVIC when setting virtual APIC mode (John Allen) [2117761] - KVM: SVM: Refresh AVIC configuration when changing APIC mode (John Allen) [2117761] - KVM: x86: Deactivate APICv on vCPU with APIC disabled (John Allen) [2117761] - KVM: SVM: Adding support for configuring x2APIC MSRs interception (John Allen) [2117761] - KVM: SVM: Do not support updating APIC ID when in x2APIC mode (John Allen) [2117761] - KVM: SVM: Compute dest based on sender's x2APIC status for AVIC kick (John Allen) [2117761] - KVM: SVM: Update avic_kick_target_vcpus to support 32-bit APIC ID (John Allen) [2117761] - KVM: SVM: Update max number of vCPUs supported for x2AVIC mode (John Allen) [2117761] - KVM: svm/avic: Drop "struct kvm_x86_ops" for avic_hardware_setup() (John Allen) [2117761] - KVM: SVM: Detect X2APIC virtualization (x2AVIC) support (John Allen) [2117761] - KVM: x86: lapic: Rename [GET/SET]_APIC_DEST_FIELD to [GET/SET]_XAPIC_DEST_FIELD (John Allen) [2117761] - x86/cpufeatures: Introduce x2AVIC CPUID bit (John Allen) [2117761] - KVM: x86: SVM: fix nested PAUSE filtering when L0 intercepts PAUSE (John Allen) [2117761] - KVM: x86: nSVM: support PAUSE filtering when L0 doesn't intercept PAUSE (John Allen) [2117761] - KVM: x86: SVM: drop preempt-safe wrappers for avic_vcpu_load/put (John Allen) [2117761] - KVM: x86: disable preemption around the call to kvm_arch_vcpu_{un|}blocking (John Allen) [2117761] - KVM: x86: disable preemption while updating apicv inhibition (John Allen) [2117761] - KVM: SVM: Fix x2APIC Logical ID calculation for avic_kick_target_vcpus_fast (John Allen) [2117761] - KVM: x86: SVM: fix avic_kick_target_vcpus_fast (John Allen) [2117761] - KVM: SVM: Use target APIC ID to complete AVIC IRQs when possible (John Allen) [2117761] - KVM: x86: SVM: remove avic's broken code that updated APIC ID (John Allen) [2117761] - KVM: x86: inhibit APICv/AVIC on changes to APIC ID or APIC base (John Allen) [2117761] - KVM: x86: document AVIC/APICv inhibit reasons (John Allen) [2117761] - KVM: x86: SVM: allow AVIC to co-exist with a nested guest running (John Allen) [2117761] - KVM: x86: allow per cpu apicv inhibit reasons (John Allen) [2117761] - KVM: x86: SVM: allow to force AVIC to be enabled (John Allen) [2117761]- sctp: fix a potential overflow in sctp_ifwdtsn_skip (Xin Long) [2189324] - sctp: check send stream number after wait_for_sndbuf (Xin Long) [2189324] - sctp: sctp_sock_filter(): avoid list_entry() on possibly empty list (Xin Long) [2189324] - sctp: fail if no bound addresses can be used for a given scope (Xin Long) [2189324] - sctp: sysctl: make extra pointers netns aware (Xin Long) [2189324] - sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop (Xin Long) [2189324] - sctp: delete free member from struct sctp_sched_ops (Xin Long) [2189324] - sctp: fix memory leak in sctp_stream_outq_migrate() (Xin Long) [2189324] - sctp: clear out_curr if all frag chunks of current msg are pruned (Xin Long) [2189324] - sctp: remove the unnecessary sinfo_stream check in sctp_prsctp_prune_unsent (Xin Long) [2189324] - sched/fair: Fix imbalance overflow (Phil Auld) [RHEL-419] - sched/fair: Move calculate of avg_load to a better location (Phil Auld) [RHEL-419] - sched/fair: Sanitize vruntime of entity being migrated (Phil Auld) [RHEL-419] - sched/rt: pick_next_rt_entity(): check list_entry (Phil Auld) [RHEL-419] - sched/fair: sanitize vruntime of entity being placed (Phil Auld) [RHEL-419] - sched/fair: Limit sched slice duration (Phil Auld) [RHEL-419] - sched/topology: Add __init for sched_init_domains() (Phil Auld) [RHEL-419] - sched/core: Reorganize ttwu_do_wakeup() and ttwu_do_activate() (Phil Auld) [RHEL-419] - sched/core: Micro-optimize ttwu_runnable() (Phil Auld) [RHEL-419] - sched/numa: Stop an exhastive search if an idle core is found (Phil Auld) [RHEL-419] - sched/topology: Add __init for init_defrootdomain (Phil Auld) [RHEL-419] - sched: Clear ttwu_pending after enqueue_task() (Phil Auld) [RHEL-419] - sched/psi: Fix possible missing or delayed pending event (Phil Auld) [RHEL-419] - sched/fair: Cleanup for SIS_PROP (Phil Auld) [RHEL-419] - sched/fair: Default to false in test_idle_cores() (Phil Auld) [RHEL-419] - sched/fair: Remove useless check in select_idle_core() (Phil Auld) [RHEL-419] - sched/fair: Avoid double search on same cpu (Phil Auld) [RHEL-419] - sched/fair: Remove redundant check in select_idle_smt() (Phil Auld) [RHEL-419] - sched: Rename task_running() to task_on_cpu() (Phil Auld) [RHEL-419] - sched/fair: Move call to list_last_entry() in detach_tasks (Phil Auld) [RHEL-419] - sched/fair: Cleanup loop_max and loop_break (Phil Auld) [RHEL-419] - sched/fair: Make sure to try to detach at least one movable task (Phil Auld) [RHEL-419] - sched: Add update_current_exec_runtime helper (Phil Auld) [RHEL-419] - sched/fair: Don't init util/runnable_avg for !fair task (Phil Auld) [RHEL-419] - sched/fair: Move task sched_avg attach to enqueue_task_fair() (Phil Auld) [RHEL-419] - sched/fair: Update comments in enqueue/dequeue_entity() (Phil Auld) [RHEL-419] - sched/fair: Maintain task se depth in set_task_rq() (Phil Auld) [RHEL-419] - sched/debug: Print each field value left-aligned in sched_show_task() (Phil Auld) [RHEL-419] - sched/fair: Make per-cpu cpumasks static (Phil Auld) [RHEL-419] - sched/fair: Rename select_idle_mask to select_rq_mask (Phil Auld) [RHEL-419] - sched: Snapshot thread flags (Phil Auld) [RHEL-419] - sched/fair: find_idlest_group(): Remove unused sd_flag parameter (Phil Auld) [RHEL-419] - redhat/genlog.py: add support to list/process zstream Jira tickets (Herton R. Krzesinski) - powercap: intel_rapl: add support for Emerald Rapids (Prarit Bhargava) [2156804] - vsock: avoid to close connected socket after the timeout (Stefano Garzarella) [2209710] - sfc: Fix module EEPROM reporting for QSFP modules (Íñigo Huguet) [2192382] - perf script: Fix missing Retire Latency fields option documentation (Michael Petlan) [2177014] - perf event x86: Add retire_lat when synthesizing PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [2177014] - perf test x86: Support the retire_lat (Retire Latency) sample_type check (Michael Petlan) [2177014] - perf script: Support Retire Latency (Michael Petlan) [2177014] - perf report: Support Retire Latency (Michael Petlan) [2177014]- netfilter: nft_redir: correct value of inet type `.maxattrs` (Florian Westphal) [2189517] - netfilter: tproxy: fix deadlock due to missing BH disable (Florian Westphal) [2189517] - netfilter: ebtables: fix table blob use-after-free (Florian Westphal) [2189517] - netfilter: ctnetlink: fix possible refcount leak in ctnetlink_create_conntrack() (Florian Westphal) [2189517] - netfilter: nf_tables: make table handle allocation per-netns friendly (Florian Westphal) [2189517] - netfilter: nf_tables: really skip inactive sets when allocating name (Florian Westphal) [2189517] - intel_idle: add Emerald Rapids Xeon support (Prarit Bhargava) [2156824] - tools/power turbostat: Introduce support for EMR (Prarit Bhargava) [2156806] - kunit: drm: make DRM buddy test compatible with other pages sizes (Nico Pache) [2209108] - redhat: fix missing kunit module in mod-internal.list (Nico Pache) [2209108] - bluetooth: Perform careful capability checks in hci_sock_ioctl() (Ricardo Robaina) [2196353] {CVE-2023-2002} - macvlan: Fix mc_filter calculation (Xin Long) [2186948] - macvlan: Add netlink attribute for broadcast cutoff (Xin Long) [2186948] - macvlan: Skip broadcast queue if multicast with single receiver (Xin Long) [2186948] - net: macvlan: fix memory leaks of macvlan_common_newlink (Xin Long) [2186948] - net: macvlan: change schedule system_wq to system_unbound_wq (Xin Long) [2186948] - net: macvlan: fix potential UAF problem for lowerdev (Xin Long) [2186948] - macvlan: Support for high multicast packet rate (Xin Long) [2186948] - macvlan: Skip loopback packets in RX handler (Xin Long) [2186948] - macvlan: fix null dereference in macvlan_device_event() (Xin Long) [2186948] - macvlan: add cond_resched() during multicast processing (Xin Long) [2186948] - macvlan: schedule bc_work even if error (Xin Long) [2186948] - macvlan: replace kfree_skb by consume_skb for drop profiles (Xin Long) [2186948] - tipc: fix unexpected link reset due to discovery messages (Xin Long) [2193242] - tipc: Fix potential OOB in tipc_link_proto_rcv() (Xin Long) [2193242] - tipc: check skb_linearize() return value in tipc_disc_rcv() (Xin Long) [2193242] - tipc: fix the msg->req tlv len check in tipc_nl_compat_name_table_dump_header (Xin Long) [2193242] - tipc: fix a null-ptr-deref in tipc_topsrv_accept (Xin Long) [2193242] - s390/dasd: fix hanging blockdevice after request requeue (Tobias Huschle) [2043875] - s390/dasd: add autoquiesce event for start IO error (Tobias Huschle) [2043875] - s390/dasd: add aq_timeouts autoquiesce trigger (Tobias Huschle) [2043875] - s390/dasd: add aq_requeue sysfs attribute (Tobias Huschle) [2043875] - s390/dasd: add aq_mask sysfs attribute (Tobias Huschle) [2043875] - s390/dasd: add autoquiesce feature (Tobias Huschle) [2043875] - s390/dasd: remove unused DASD EER defines (Tobias Huschle) [2043875] - md: Fix bitmap offset type in sb writer (Nigel Croxon) [2189478] - md/raid5: Improve performance for sequential IO (Nigel Croxon) [2189478] - md/raid5: remove unused working_disks variable (Nigel Croxon) [2189478] - md/raid10: fix memleak of md thread (Nigel Croxon) [2189478] - md/raid10: fix memleak for 'conf->bio_split' (Nigel Croxon) [2189478] - md/raid10: fix leak of 'r10bio->remaining' for recovery (Nigel Croxon) [2189478] - md/raid10: don't BUG_ON() in raise_barrier() (Nigel Croxon) [2189478] - md: fix soft lockup in status_resync (Nigel Croxon) [2189478] - md: add error_handlers for raid0 and linear (Nigel Croxon) [2151208 2189478] - md: Use optimal I/O size for last bitmap page (Nigel Croxon) [2189478] - md: Fix types in sb writer (Nigel Croxon) [2189478] - md: Move sb writer loop to its own function (Nigel Croxon) [2189478] - md/raid10: Fix typo in comment (replacment -> replacement) (Nigel Croxon) [2189478] - md/raid10: fix null-ptr-deref in raid10_sync_request (Nigel Croxon) [2189478] - md/raid10: fix task hung in raid10d (Nigel Croxon) [2189478] - md: simplify sysctl registration (Nigel Croxon) [2189478] - HID: intel-ish-hid: ipc: Fix potential use-after-free in work function (Tony Camuso) [2182388] - devm-helpers: Fix devm_delayed_work_autocancel() kerneldoc (Tony Camuso) [2182388] - devm-helpers: Add resource managed version of work init (Tony Camuso) [2182388] - workqueue: Add resource managed version of delayed work init (Tony Camuso) [2182388] - HID: stop drivers from selecting CONFIG_HID (Tony Camuso) [2182388] - HID: intel_ish-hid: Add check for ishtp_dma_tx_map (Tony Camuso) [2182388] - HID: intel-ish-hid: ishtp: remove variable rb_count (Tony Camuso) [2182388]- i40e: Add support for VF to specify its primary MAC address (Stefan Assmann) [2091552] - net/tg3: resolve deadlock in tg3_reset_task() during EEH (Ken Cox) [2159218 2166475] - HID: asus: use spinlock to safely schedule workers (Ricardo Robaina) [2186282] {CVE-2023-1079} - HID: asus: use spinlock to protect concurrent accesses (Ricardo Robaina) [2186282] {CVE-2023-1079} - e1000e: Disable TSO on i219-LM card to increase speed (Ken Cox) [2109782] - erspan: get the proto with the md version for collect_md (Xin Long) [2207724] - netfilter: nf_tables: deactivate anonymous set from preparation phase (Florian Westphal) [2196148] {CVE-2023-32233} - scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate() (Ewan D. Milne) [2171092] - scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR (Ewan D. Milne) [2171092] - scsi: core: Add BLIST_NO_VPD_SIZE for some VDASD (Ewan D. Milne) [2171092] - scsi: core: Fix a source code comment (Ewan D. Milne) [2171092] - scsi: Revert "scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT" (Ewan D. Milne) [2171092] - scsi: scsi_debug: Delete unreachable code in inquiry_vpd_b0() (Ewan D. Milne) [2171092] - scsi: core: Use SCSI_SCAN_INITIAL in do_scsi_scan_host() (Ewan D. Milne) [2171092] - scsi: core: Use SCSI_SCAN_RESCAN in __scsi_add_device() (Ewan D. Milne) [2171092] - scsi: Define the COMPLETED sense key (Ewan D. Milne) [2171092] - scsi: core: Add I/O timeout count for SCSI device (Ewan D. Milne) [2171092] - tipc: check the bearer min mtu properly when setting it by netlink (Xin Long) [2185143] - tipc: do not update mtu if msg_max is too small in mtu negotiation (Xin Long) [2185143] - tipc: add tipc_bearer_min_mtu to calculate min mtu (Xin Long) [2185143] - net/tipc: fix tipc header files for kernel-doc (Xin Long) [2185143] - scsi: smartpqi: Update version to 2.1.22-040 (Don Brace) [2162103] - scsi: smartpqi: Update copyright to 2023 (Don Brace) [2162103] - scsi: smartpqi: Add sysfs entry for NUMA node in /sys/block/sdX/device (Don Brace) [2162103] - scsi: smartpqi: Stop sending driver-initiated TURs (Don Brace) [2162103] - scsi: smartpqi: Fix byte aligned writew for ARM servers (Don Brace) [2162103] - scsi: smartpqi: Add support for RAID NCQ priority (Don Brace) [2162103] - scsi: smartpqi: Validate block layer host tag (Don Brace) [2162103] - scsi: smartpqi: Remove contention for raid_bypass_cnt (Don Brace) [2162103] - scsi: smartpqi: Fix rare SAS transport memory leak (Don Brace) [2162103] - scsi: smartpqi: Remove NULL pointer check (Don Brace) [2162103] - scsi: smartpqi: Add new controller PCI IDs (Don Brace) [2162103] - scsi: smartpqi: Map full length of PCI BAR 0 (Don Brace) [2162103] - scsi: smartpqi: Replace one-element array with flexible-array member (Don Brace) [2162103] - scsi: mpi3mr: Use -ENOMEM instead of -1 in mpi3mr_expander_add() (Tomas Henzl) [2163671] - scsi: mpi3mr: Use IRQ save variants of spinlock to protect chain frame allocation (Tomas Henzl) [2163671] - scsi: mpi3mr: Handle soft reset in progress fault code (0xF002) (Tomas Henzl) [2163671] - scsi: mpi3mr: Update driver version to 8.4.1.0.0 (Tomas Henzl) [2163671] - scsi: mpi3mr: Update copyright year (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix W=1 compilation warnings (Tomas Henzl) [2163671] - scsi: mpi3mr: Update MPI Headers to revision 27 (Tomas Henzl) [2163671] - scsi: mpi3mr: Avoid escalating to higher level reset when target is removed (Tomas Henzl) [2163671] - scsi: mpi3mr: Modify MUR timeout value to 120 seconds (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix admin queue memory leak upon soft reset (Tomas Henzl) [2163671] - scsi: mpi3mr: Successive VD delete and add causes FW fault (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix expander node leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix memory leaks in mpi3mr_init_ioc() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix sas_hba.phy memory leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix mpi3mr_hba_port memory leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix config page DMA memory leak (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix throttle_groups memory leak (Tomas Henzl) [2163671] - scsi: mpi3mr: Bad drive in topology results kernel crash (Tomas Henzl) [2163671] - scsi: mpi3mr: NVMe command size greater than 8K fails (Tomas Henzl) [2163671] - scsi: mpi3mr: Return proper values for failures in firmware init path (Tomas Henzl) [2163671] - scsi: mpi3mr: Wait for diagnostic save during controller init (Tomas Henzl) [2163671] - scsi: mpi3mr: Driver unload crashes host when enhanced logging is enabled (Tomas Henzl) [2163671] - scsi: mpi3mr: ioctl timeout when disabling/enabling interrupt (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove unneeded version.h include (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix missing mrioc->evtack_cmds initialization (Tomas Henzl) [2163671] - scsi: mpi3mr: Use number of bits to manage bitmap sizes (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove unnecessary memcpy() to alltgt_info->dmi (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix issues in mpi3mr_get_all_tgt_info() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix an issue found by KASAN (Tomas Henzl) [2163671] - scsi: mpi3mr: Refer CONFIG_SCSI_MPI3MR in Makefile (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove usage of dma_get_required_mask() API (Tomas Henzl) [2163671] - scsi: mpi3mr: Suppress command reply debug prints (Tomas Henzl) [2163671] - ipmi: ipmb: Fix the MODULE_PARM_DESC associated to 'retry_time_ms' (Tony Camuso) [2174220] - ipmi:ssif: Add a timer between request retries (Tony Camuso) [2174220] - ipmi:ssif: Remove rtc_us_timer (Tony Camuso) [2174220] - ipmi_ssif: Rename idle state and check (Tony Camuso) [2174220] - ipmi:ssif: resend_msg() cannot fail (Tony Camuso) [2174220] - ipmi/watchdog: use strscpy() to instead of strncpy() (Tony Camuso) [2174220] - ipmi: ssif_bmc: Convert to i2c's .probe_new() (Tony Camuso) [2174220] - ipmi: fix use after free in _ipmi_destroy_user() (Tony Camuso) [2174220] - ipmi:ssif: Increase the message retry time (Tony Camuso) [2174220] - ipmi: Fix some kernel-doc warnings (Tony Camuso) [2174220] - ipmi: ssif_bmc: Use EPOLLIN instead of POLLIN (Tony Camuso) [2174220] - ipmi: fix msg stack when IPMI is disconnected (Tony Camuso) [2174220] - ipmi: fix memleak when unload ipmi driver (Tony Camuso) [2174220] - ipmi: fix long wait in unload when IPMI disconnect (Tony Camuso) [2174220] - ipmi: kcs: Poll OBF briefly to reduce OBE latency (Tony Camuso) [2174220] - ipmi: ssif_bmc: Add SSIF BMC driver (Tony Camuso) [2174220] - ipmi: Remove unused struct watcher_entry (Tony Camuso) [2174220] - ipmi: kcs: aspeed: Update port address comments (Tony Camuso) [2174220] - ipmi: Add __init/__exit annotations to module init/exit funcs (Tony Camuso) [2174220] - ipmi:ipmb: Don't call ipmi_unregister_smi() on a register failure (Tony Camuso) [2174220] - ipmi:ipmb: Fix a vague comment and a typo (Tony Camuso) [2174220] - ipmi: Fix comment typo (Tony Camuso) [2174220] - char: ipmi: modify NPCM KCS configuration (Tony Camuso) [2174220] - cipso: Fix data-races around sysctl. (Juraj Marcin) [2181138] - netlabel: fix out-of-bounds memory accesses (Juraj Marcin) [2181138] - CIPSO: Fix unaligned memory access in cipso_v4_gentag_hdr (Juraj Marcin) [2181138] - netlabel_domainhash.c: Use built-in RCU list checking (Juraj Marcin) [2181138] - net: netlabel: Use built-in RCU list checking (Juraj Marcin) [2181138] - netlabel: remove redundant assignment to pointer iter (Juraj Marcin) [2181138] - capabilities: fix potential memleak on error path from vfs_getxattr_alloc() (Juraj Marcin) [2181138] - selinux: enable use of both GFP_KERNEL and GFP_ATOMIC in convert_context() (Juraj Marcin) [2181138] - selinux: free contexts previously transferred in selinux_add_opt() (Juraj Marcin) [2181138] - LSM: general protection fault in legacy_parse_param (Juraj Marcin) [2181138] - selinux: check return value of sel_make_avc_files (Juraj Marcin) [2181138] - net/sched: flower: fix error handler on replace (Ivan Vecera) [2180870] - Revert "net/sched: flower: Fix wrong handle assignment during filter change" (Ivan Vecera) [2180870] - net/sched: flower: fix filter idr initialization (Ivan Vecera) [2180870] - net/sched: cls_api: remove block_cb from driver_list before freeing (Ivan Vecera) [2180870] - net/sched: flower: Fix wrong handle assignment during filter change (Ivan Vecera) [2180870] - net/sched: cls_api: Initialize miss_cookie_node when action miss is not used (Ivan Vecera) [2180870] - net/sched: sch_fq: fix integer overflow of "credit" (Ivan Vecera) [2180870] - net/sched: clear actions pointer in miss cookie init fail (Ivan Vecera) [2180870] - net/sched: mqprio: simplify handling of nlattr portion of TCA_OPTIONS (Ivan Vecera) [2180870] - l2tp: generate correct module alias strings (Ivan Vecera) [2180870] - net/sched: act_api: add specific EXT_WARN_MSG for tc action (Ivan Vecera) [2180870] - Revert "net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy" (Ivan Vecera) [2180870] - netfilter: ctnetlink: revert to dumping mark regardless of event type (Ivan Vecera) [2180870] - net/sched: flower: fix fl_change() error recovery path (Ivan Vecera) [2180870] - net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy (Ivan Vecera) [2180870] - net/sched: act_connmark: handle errno on tcf_idr_check_alloc (Ivan Vecera) [2180870] - net/sched: act_sample: fix action bind logic (Ivan Vecera) [2180870] - net/sched: act_mpls: fix action bind logic (Ivan Vecera) [2180870] - net/sched: act_pedit: fix action bind logic (Ivan Vecera) [2180870] - net/sched: cls_api: Move call to tcf_exts_miss_cookie_base_destroy() (Ivan Vecera) [2180870] - net/sched: flower: Support hardware miss to tc action (Ivan Vecera) [2180870] - net/sched: flower: Move filter handle initialization earlier (Ivan Vecera) [2180870] - net/sched: cls_api: Support hardware miss to tc action (Ivan Vecera) [2180870] - net/sched: Rename user cookie and act cookie (Ivan Vecera) [2180870] - net/sched: taprio: dynamic max_sdu larger than the max_mtu is unlimited (Ivan Vecera) [2180870] - net/sched: taprio: don't allow dynamic max_sdu to go negative after stab adjustment (Ivan Vecera) [2180870] - net/sched: taprio: fix calculation of maximum gate durations (Ivan Vecera) [2180870] - net/sched: act_pedit: use percpu overlimit counter when available (Ivan Vecera) [2180870] - net/sched: act_gate: use percpu stats (Ivan Vecera) [2180870] - net/sched: act_connmark: transition to percpu stats and rcu (Ivan Vecera) [2180870] - net/sched: act_nat: transition to percpu stats and rcu (Ivan Vecera) [2180870] - selftests: forwarding: tc_actions: cleanup temporary files when test is aborted (Ivan Vecera) [2180870] - net/sched: support per action hw stats (Ivan Vecera) [2180870] - net/sched: introduce flow_offload action cookie (Ivan Vecera) [2180870] - net/sched: pass flow_stats instead of multiple stats args (Ivan Vecera) [2180870] - net/sched: act_pedit, setup offload action for action stats query (Ivan Vecera) [2180870] - net/sched: optimize action stats api calls (Ivan Vecera) [2180870] - net/sched: act_ctinfo: use percpu stats (Ivan Vecera) [2180870] - net/sched: fix error recovery in qdisc_create() (Ivan Vecera) [2180870] - net/sched: taprio: don't segment unnecessarily (Ivan Vecera) [2180870] - net/sched: taprio: split segmentation logic from qdisc_enqueue() (Ivan Vecera) [2180870] - net/sched: taprio: automatically calculate queueMaxSDU based on TC gate durations (Ivan Vecera) [2180870] - net/sched: keep the max_frm_len information inside struct sched_gate_list (Ivan Vecera) [2180870] - net/sched: taprio: warn about missing size table (Ivan Vecera) [2180870] - net/sched: make stab available before ops->init() call (Ivan Vecera) [2180870] - net/sched: taprio: calculate guard band against actual TC gate close time (Ivan Vecera) [2180870] - net/sched: taprio: calculate budgets per traffic class (Ivan Vecera) [2180870] - net/sched: taprio: rename close_time to end_time (Ivan Vecera) [2180870] - net/sched: taprio: calculate tc gate durations (Ivan Vecera) [2180870] - net/sched: taprio: give higher priority to higher TCs in software dequeue mode (Ivan Vecera) [2180870] - net/sched: taprio: avoid calling child->ops->dequeue(child) twice (Ivan Vecera) [2180870] - net/sched: taprio: refactor one skb dequeue from TXQ to separate function (Ivan Vecera) [2180870] - net/sched: taprio: continue with other TXQs if one dequeue() failed (Ivan Vecera) [2180870] - net/sched: taprio: delete peek() implementation (Ivan Vecera) [2180870] - net: sched: sch: Fix off by one in htb_activate_prios() (Ivan Vecera) [2180870] - net/sched: taprio: only pass gate mask per TXQ for igc, stmmac, tsnep, am65_cpsw (Ivan Vecera) [2180870] - net/sched: taprio: pass mqprio queue configuration to ndo_setup_tc() (Ivan Vecera) [2180870] - net/sched: refactor mqprio qopt reconstruction to a library function (Ivan Vecera) [2180870] - net/sched: taprio: centralize mqprio qopt validation (Ivan Vecera) [2180870] - net/sched: mqprio: add extack messages for queue count validation (Ivan Vecera) [2180870] - net/sched: mqprio: allow offloading drivers to request queue count validation (Ivan Vecera) [2180870] - net/sched: mqprio: allow reverse TC:TXQ mappings (Ivan Vecera) [2180870] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Ivan Vecera) [2180870] - net/sched: mqprio: refactor offloading and unoffloading to dedicated functions (Ivan Vecera) [2180870] - net/sched: mqprio: refactor nlattr parsing to a separate function (Ivan Vecera) [2180870] - netlink: add support for formatted extack messages (Ivan Vecera) [2180870] - net/sched: simplify tcf_pedit_act (Ivan Vecera) [2180870] - net/sched: transition act_pedit to rcu and percpu stats (Ivan Vecera) [2180870] - net: sched: sch: Bounds check priority (Ivan Vecera) [2180870] - net: Kconfig: fix spellos (Ivan Vecera) [2180870] - net/sched: sch_taprio: do not schedule in taprio_reset() (Ivan Vecera) [2180870] - sched: add new attr TCA_EXT_WARN_MSG to report tc extact message (Ivan Vecera) [2180870] - net/sched: sch_taprio: fix possible use-after-free (Ivan Vecera) [2180870] - net: sched: htb: fix htb_classify() kernel-doc (Ivan Vecera) [2180870] - net/sched: fix retpoline wrapper compilation on configs without tc filters (Ivan Vecera) [2180870] - net: sched: update the nat flag for icmp error packets in ct_nat_execute (Ivan Vecera) [2180870] - net/sched: avoid indirect classify functions on retpoline kernels (Ivan Vecera) [2180870] - net/sched: avoid indirect act functions on retpoline kernels (Ivan Vecera) [2180870] - net/sched: add retpoline wrapper for tc (Ivan Vecera) [2180870] - net/sched: move struct action_ops definition out of ifdef (Ivan Vecera) [2180870] - netfilter: ctnetlink: fix compilation warning after data race fixes in ct mark (Ivan Vecera) [2180870] - net: sched: allow act_ct to be built without NF_NAT (Ivan Vecera) [2180870] - netfilter: conntrack: Fix data-races around ct mark (Ivan Vecera) [2180870] - net: flow_offload: add support for ARP frame matching (Ivan Vecera) [2180870] - selftests: tc-testing: Add matchJSON to tdc (Ivan Vecera) [2180870] - Documentation: networking: TC queue based filtering (Ivan Vecera) [2180870] - act_skbedit: skbedit queue mapping for receive queue (Ivan Vecera) [2180870] - net: sched: cake: fix null pointer access issue when cake_init() fails (Ivan Vecera) [2180870] - net: sched: use tc_cls_bind_class() in filter (Ivan Vecera) [2180870] - net: sched: cls_api: introduce tc_cls_bind_class() helper (Ivan Vecera) [2180870] - net: sched: ensure n arg not empty before call bind_class (Ivan Vecera) [2180870] - selftests/tc-testing: update qdisc/cls/action features in config (Ivan Vecera) [2180870] - net/sched: taprio: allow user input of per-tc max SDU (Ivan Vecera) [2180870] - net/sched: query offload capabilities through ndo_setup_tc() (Ivan Vecera) [2180870] - net: sched: act_bpf: simplify code logic in tcf_bpf_init() (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for teql qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for tbf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for taprio qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for skbprio qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for sfq qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for sfb qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for plug qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for pfifo_fast qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for hhf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for gred qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for fq qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for etf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for codel qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for choke qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for atm qdisc (Ivan Vecera) [2180870] - headers: Remove some left-over license text (Ivan Vecera) [2180870] - net/sched: taprio: simplify list iteration in taprio_dev_notifier() (Ivan Vecera) [2180870] - net/sched: taprio: remove unnecessary taprio_list_lock (Ivan Vecera) [2180870] - net: sched: remove unused tcf_result extension (Ivan Vecera) [2180870] - net: sched: simplify code in mall_reoffload (Ivan Vecera) [2180870] - net: sched: act_ct: remove redundant variable err (Ivan Vecera) [2180870] - selftests/tc-testings: add list case for basic filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for tcindex filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for rsvp filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for route filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for flow filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for cgroup filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for bpf filter (Ivan Vecera) [2180870] - net/sched: use tc_cls_stats_dump() in filter (Ivan Vecera) [2180870] - net/sched: cls_api: add helper for tc cls walker stats dump (Ivan Vecera) [2180870] - net/sched: taprio: replace safety precautions with comments (Ivan Vecera) [2180870] - net/sched: taprio: add extack messages in taprio_init (Ivan Vecera) [2180870] - net/sched: taprio: stop going through private ops for dequeue and peek (Ivan Vecera) [2180870] - net/sched: taprio: remove redundant FULL_OFFLOAD_IS_ENABLED check in taprio_enqueue (Ivan Vecera) [2180870] - net/sched: taprio: use rtnl_dereference for oper and admin sched in taprio_destroy() (Ivan Vecera) [2180870] - net/sched: taprio: taprio_dump and taprio_change are protected by rtnl_mutex (Ivan Vecera) [2180870] - net/sched: taprio: taprio_offload_config_changed() is protected by rtnl_mutex (Ivan Vecera) [2180870] - net/sched: taprio: avoid disabling offload when it was never enabled (Ivan Vecera) [2180870] - flow_offload: Introduce flow_match_l2tpv3 (Ivan Vecera) [2180870] - net/sched: flower: Add L2TPv3 filter (Ivan Vecera) [2180870] - flow_dissector: Add L2TPv3 dissectors (Ivan Vecera) [2180870] - skbuff: make __skb_header_pointer()'s data argument const (Ivan Vecera) [2180870] - tools headers uapi: Update linux/in.h copy (Ivan Vecera) [2180870] - uapi: move IPPROTO_L2TP to in.h (Ivan Vecera) [2180870] - selftests/tc-testings: add tunnel_key action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add sample action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add nat action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add ife action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add connmark action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for xt action (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for gate action (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for ctinfo action (Ivan Vecera) [2180870] - net: sched: act_vlan: get rid of tcf_vlan_walker and tcf_vlan_search (Ivan Vecera) [2180870] - net: sched: act_tunnel_key: get rid of tunnel_key_walker and tunnel_key_search (Ivan Vecera) [2180870] - net: sched: act_skbmod: get rid of tcf_skbmod_walker and tcf_skbmod_search (Ivan Vecera) [2180870] - net: sched: act_skbedit: get rid of tcf_skbedit_walker and tcf_skbedit_search (Ivan Vecera) [2180870] - net: sched: act_simple: get rid of tcf_simp_walker and tcf_simp_search (Ivan Vecera) [2180870] - net: sched: act_sample: get rid of tcf_sample_walker and tcf_sample_search (Ivan Vecera) [2180870] - net: sched: act_police: get rid of tcf_police_walker and tcf_police_search (Ivan Vecera) [2180870] - net: sched: act_pedit: get rid of tcf_pedit_walker and tcf_pedit_search (Ivan Vecera) [2180870] - net: sched: act_nat: get rid of tcf_nat_walker and tcf_nat_search (Ivan Vecera) [2180870] - net: sched: act_mpls: get rid of tcf_mpls_walker and tcf_mpls_search (Ivan Vecera) [2180870] - net: sched: act_mirred: get rid of tcf_mirred_walker and tcf_mirred_search (Ivan Vecera) [2180870] - net: sched: act_ipt: get rid of tcf_ipt_walker/tcf_xt_walker and tcf_ipt_search/tcf_xt_search (Ivan Vecera) [2180870] - net: sched: act_ife: get rid of tcf_ife_walker and tcf_ife_search (Ivan Vecera) [2180870] - net: sched: act_gate: get rid of tcf_gate_walker and tcf_gate_search (Ivan Vecera) [2180870] - net: sched: act_gact: get rid of tcf_gact_walker and tcf_gact_search (Ivan Vecera) [2180870] - net: sched: act_ctinfo: get rid of tcf_ctinfo_walker and tcf_ctinfo_search (Ivan Vecera) [2180870] - net: sched: act_ct: get rid of tcf_ct_walker and tcf_ct_search (Ivan Vecera) [2180870] - net: sched: act_csum: get rid of tcf_csum_walker and tcf_csum_search (Ivan Vecera) [2180870] - net: sched: act_connmark: get rid of tcf_connmark_walker and tcf_connmark_search (Ivan Vecera) [2180870] - net: sched: act_bpf: get rid of tcf_bpf_walker and tcf_bpf_search (Ivan Vecera) [2180870] - net: sched: act_api: implement generic walker and search for tc action (Ivan Vecera) [2180870] - net: sched: act: move global static variable net_id to tc_action_ops (Ivan Vecera) [2180870] - net: sched: htb: remove redundant resource cleanup in htb_init() (Ivan Vecera) [2180870] - net/sched: cls_api: remove redundant 0 check in tcf_qevent_init() (Ivan Vecera) [2180870] - net: sched: etf: remove true check in etf_enable_offload() (Ivan Vecera) [2180870] - net: sched: gred: remove NULL check before free table->tab in gred_destroy() (Ivan Vecera) [2180870] - net: sched: remove redundant NULL check in change hook function (Ivan Vecera) [2180870] - net: sched: gred/red: remove unused variables in struct red_stats (Ivan Vecera) [2180870] - net: sched: choke: remove unused variables in struct choke_sched_data (Ivan Vecera) [2180870] - net: sched: using TCQ_MIN_PRIO_BANDS in prio_tune() (Ivan Vecera) [2180870] - net_sched: remove impossible conditions (Ivan Vecera) [2180870] - net: sched: remove unnecessary init of qdisc skb head (Ivan Vecera) [2180870] - net: sched: delete duplicate cleanup of backlog and qlen (Ivan Vecera) [2180870] - net: sched: remove duplicate check of user rights in qdisc (Ivan Vecera) [2180870] - net_sched: move from strlcpy with unused retval to strscpy (Ivan Vecera) [2180870] - net: sched: delete unused input parameter in qdisc_create (Ivan Vecera) [2180870] - net: sched: remove the unused return value of unregister_qdisc (Ivan Vecera) [2180870] - net_sched: cls_route: disallow handle of 0 (Ivan Vecera) [2180870] - net/sched: sch_cbq: change the type of cbq_set_lss to void (Ivan Vecera) [2180870] - net/sched: remove qdisc_root_lock() helper (Ivan Vecera) [2180870] - net/sched: sch_cbq: Delete unused delay_timer (Ivan Vecera) [2180870] - net/sched: remove return value of unregister_tcf_proto_ops (Ivan Vecera) [2180870] - net: extract port range fields from fl_flow_key (Ivan Vecera) [2180870] - net/sched: act_ct: set 'net' pointer when creating new nf_flow_table (Ivan Vecera) [2180870] - net: sched: provide shim definitions for taprio_offload_{get,free} (Ivan Vecera) [2180870] - time64.h: consolidate uses of PSEC_PER_NSEC (Ivan Vecera) [2180870] - selftests: tc-testing: Add testcases to test new flush behaviour (Ivan Vecera) [2180870] - tc-testing: gitignore, delete plugins directory (Ivan Vecera) [2180870] - net/sched: sch_netem: Fix arithmetic in netem_dump() for 32-bit platforms (Ivan Vecera) [2180870] - net_sched: em_meta: add READ_ONCE() in var_sk_bound_if() (Ivan Vecera) [2180870] - selftests: forwarding: tc_actions: allow mirred egress test to run on non-offloaded h2 (Ivan Vecera) [2180870] - net: sched: support hash selecting tx queue (Ivan Vecera) [2180870] - net: sched: use queue_mapping to pick tx queue (Ivan Vecera) [2180870] - net_sched: make qdisc_reset() smaller (Ivan Vecera) [2180870] - sch_red: Fix a typo (Ivan Vecera) [2180870] - wifi: ath9k: Don't mark channelmap stack variable read-only in ath9k_mci_update_wlan_channels() (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Fix an uninit variable access bug in qrtr_tx_resume() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: ignore key disable commands (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: reduce the MHI timeout to 20s (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Do not do DEL_SERVER broadcast after DEL_CLIENT (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix fw used for offload check for mt7922 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: Fix use-after-free in fw features query. (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix SDIO suspend/resume regression (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Fix a refcount bug in qrtr_recvmsg() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix invalid drv_sta_pre_rcu_remove calls for non-uploaded sta (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix flow dissection for forwarded packets (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix mesh forwarding (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix receiving mesh packets in forwarding=0 networks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix the size calculation of ieee80211_ie_len_eht_cap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix potential null pointer dereference (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: drop bogus static keywords in A-MSDU rx (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix mesh path discovery based on unicast packets (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix qos on mesh interfaces (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Serialize ieee80211_handle_wake_tx_queue() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: mark OF related data as maybe unused (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: do not check WED status for non-mmio devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add back 160MHz channel width support for MT7915 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: do not run mt76_unregister_device() on unregistered hw (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext" (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: fix MLO connection ownership (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: check basic rates validity (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: fix puncturing bitmap policy (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: fix NULL-ptr deref in offchan check (Jose Ignacio Tornos Martinez) [2183487] - wifi: wext: warn about usage only once (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: allow system suspend to survive ath11k (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: add LEDS_CLASS dependency (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: remove unused iwl_dbgfs_is_match() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix AP mode authentication transmission failed (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: use RTW_FLAG_POWERON flag to prevent to power on/off twice (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: p2p: Introduce generic flexible array frame member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add documentation for amsdu_mesh_control (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: remove gfp parameter from cfg80211_obss_color_collision_notify description (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: always initialize link_sta with sta (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: pass 'sta' to ieee80211_rx_data_set_sta() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Set SSID if it is not already set (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: move H2C of del_pkt_offload before polling FW status ready (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: use readable return 0 in rtw89_mac_cfg_ppdu_status() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: drop now unnecessary URB size check (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: send Zero length packets if necessary (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: Set qsel correctly (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix off-by-one link setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Fix for Rx fragmented action frames (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: avoid u32_encode_bits() warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Don't translate MLD addresses for multicast (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: call reg_notifier for self managed wiphy from driver hint (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: get rid of gfp in cfg80211_bss_color_notify (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: Allow authentication frames and set keys on NAN interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix non-MLO station association (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Allow NSS change only up to capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add a workaround for receiving non-standard mesh A-MSDU (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix receiving A-MSDU frames on mesh interfaces (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove mesh forwarding congestion check (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: factor out bridge tunnel / RFC1042 header check (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: move A-MSDU check in ieee80211_data_to_8023_exthdr (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: make rate u32 in sta_set_rate_info_rx() (Jose Ignacio Tornos Martinez) [2183487] - rfkill: Use sysfs_emit() to instead of sprintf() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Allow action frames to be transmitted with link BSS in MLD (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: configure puncturing bitmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: include puncturing bitmap in channel switch events (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: validate and configure puncturing bitmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: move puncturing bitmap validation from mac80211 (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: return error message for malformed chandef (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211_hwsim: Rename pid to portid to avoid confusion (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: add MLO_LINK_ID to CMD_STOP_AP event (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: emit CMD_START_AP on multicast group when an AP is started (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: mlme: handle EHT channel puncturing (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Extend cfg80211_update_owe_info_event() for MLD AP (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Extend cfg80211_new_sta() for MLD AP (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: move color collision detection report in a delayed work (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix use after free for wext (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Authentication offload to user space for MLO connection in STA mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: trace: remove MAC_PR_{FMT,ARG} (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fix txdw7 assignment of TX DESC v3 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8723AU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8192EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Register the LED and make it blink (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: set TX power according to RF path number by chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: correct register mask name of TX power offset (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: use passed channel in set_tx_shape_dfir() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852be: enable CLKREQ of PCI capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: try to use NORMAL_CE type firmware first (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: don't support LPS-PG mode after firmware 0.29.26.0 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: reset IDMEM mode to default value (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add use of pkt_list offload to debug entry (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine packet offload flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix potential wrong mapping for pkt-offload (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: disallow enter PS mode after create TDLS link (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine MCC C2H debug logs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix parsing offset for MCC C2H (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: deal with RXI300 error (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: debug: avoid invalid access on RTW89_DBG_SEL_MAC_30 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: mac: add function to get TSF (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: split out generic part of rtw89_mac_port_tsf_sync() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct unit for port offset and refine macro (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update Wi-Fi Bluetooth coexistence version to 7.0.0 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Fix test fail when coexist with raspberryPI A2DP idle (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Correct A2DP exist variable source (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Set Bluetooth background scan PTA request priority (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Refine coexistence log (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Force to update TDMA parameter when radio state change (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Clear Bluetooth HW PTA counter when radio state change (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update Wi-Fi external control TDMA parameters/tables (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: change cfg80211_set_channel() name and signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Replace one-element arrays with flexible-array members (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Support firmware hotfix version in GET_HW_SPEC responses (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Support SD8978 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Add missing compatible string for SD8787 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Perform correct BCM4364 firmware selection (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4377 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4355 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Rename Cypress 89459 to BCM4355 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: mac: Use existing macros in rtw_pwr_seq_parser() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Move enum rtw_tx_queue_type mapping code to tx.{c,h} (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: pci: Change queue datatype to enum rtw_tx_queue_type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: pci: Use enum type for rtw_hw_queue_mapping() and ac_to_hwq (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: support ww power config in dts node (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0u: report firmware version through ethtool (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: complete wed reset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add mt7915 wed reset callbacks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: reset wed queues in mt76_dma_rx_reset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: add reset to mt76_dma_wed_setup signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add EHT beamforming support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable EHT support in firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add support for EHT rate report (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add EHT capability init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rework capability init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add helpers for wtbl and interface limit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add variants support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add EHT rate stats for ethtool (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: increase wcid size to 1088 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add cmd id related to EHT support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add helpers for EHT capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add CMD_CBW_320MHZ (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add EHT phy type (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: remove __mt76_mcu_restart macro (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_tx_complete_skb (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_txp_skb_unmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_txp_common structure (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac2_mac_tx_rate_val (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix error code of return in mt7921_acpi_read (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: release rxwi in mt7915_wed_release_rx_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix memory leak in mt7915_mmio_wed_init_rx_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix rx filter incorrect by drv/fw inconsistent (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add memory barrier to SDIO queue kick (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: reduce polling time in pmctrl (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add flexible polling wait-interval support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix WED TxS reporting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: wed: enable red per-band token drop (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: set sku initial value to zero (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921u: add support for Comfast CF-952AX (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix switch default case in mt7996_reverse_frag0_hdr_trans (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7603: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: fix memory leak running mt76_dma_tx_cleanup (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix memory leak in mt7996_mcu_exit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix memory leak in mt7915_mcu_exit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: introduce mt76_queue_is_wed_rx utility routine (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix invalid remain_on_channel duration (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: remove BW160 and BW80+80 support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: fix POWER_CTRL command name typo (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: do not hardcode vht beamform cap (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: update register for CFEND_RATE (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix chainmask calculation in mt7996_set_antenna() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix channel switch fail in monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add chip id condition in mt7915_check_eeprom() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add error message in mt7915_thermal_set_cur_throttle_state() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_thermal_temp_store() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_mcu_set_thermal_throttling (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: call mt7915_mcu_set_thermal_throttling() only after init_work (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix deadlock in mt7921_abort_roc (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Fix off by one in mhi_ep_process_cmd_ring() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix compilation errors in rfkill() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: bump FW API to 74 for AX devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Reset rate index if rate is wrong (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: simplify by using SKB MAC header pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add sniffer meta data APIs (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: rx: add sniffer support for EHT mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: always send nullfunc frames on MGMT queue (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: remove h from printk format specifier (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: improve tag handling in iwl_request_firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mention the response structure in the kerneldoc (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add minimal EHT rate reporting (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: free memory on error path in radix_tree_insert() (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Change state_lock to mutex (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Save channel state locally during suspend and resume (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Move chan->lock to the start of processing queued ch ring (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Fix the debug message for MHI_PKT_TYPE_RESET_CHAN_CMD cmd (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Only send -ENOTCONN status if client driver is available (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Check if the channel is supported by the controller (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Power up/down MHI stack during MHI RESET (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Update mhi driver description (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: Update Makefile to used Kconfig flags (Jose Ignacio Tornos Martinez) [2183487] - wifi: wireless: deny wireless extensions on MLO-capable devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: wireless: warn on most wireless extension usage (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: drop extra 'e' from ieeee80211... name (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Deduplicate certificate loading (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add kernel-doc for EHT structure (Jose Ignacio Tornos Martinez) [2183487] - mac80211: support minimal EHT rate reporting on RX (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Add HE MU-MIMO related flags in ieee80211_bss_conf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Add VHT MU-MIMO related flags in ieee80211_bss_conf (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Use MLD address to indicate MLD STA disconnection (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Support 32 bytes KCK key in GTK rekey offload (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix extended KCK key length check in nl80211_set_rekey_data() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: remove support for static WEP (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Add support to read EEPROM caldata (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Add new qmi_bdf_type to handle caldata (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Fix incorrect qmi_file_type enum values (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: dp_mon: Fix uninitialized warning related to the pktlog (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: dp_mon: Fix out of bounds clang warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal_rx: Use memset_startat() for clearing queue descriptors (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Fix uninitilized variable clang warnings (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: wmi: delete PSOC_HOST_MAX_NUM_SS (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal: convert offset macros to functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal: add ab parameter to macros using it (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix memory leak in ath11k_peer_rx_frag_setup (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix ce memory mapping for ahb devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Remove the unused function ath10k_ce_shadow_src_ring_write_index_set() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add channel 177 into 5 GHz channel list (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Add support to configure FTM responder role (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Fix potential stack-out-of-bounds write in ath9k_wmi_rsp_callback() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no callback function (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Dump the efuse only for untested devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Print the ROM version too (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Use non-atomic sta iterator in rtw_ra_mask_info_update() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Use rtw_iterate_vifs() for rtw_vif_watch_dog_iter() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Move register access from rtw_bf_assoc() outside the RCU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use a longer retry limit of 48 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Report the RSSI to the firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: rt2x00: Remove useless else if (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt7601u: fix an integer underflow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8723ae: fix obvious spelling error tyep->type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix memory leaks with RTL8723BU, RTL8192EU (Jose Ignacio Tornos Martinez) [2183487] - Revert "wifi: mac80211: fix memory leak in ieee80211_if_add()" (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: fix a regression in adding rx buffers (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: fill the missing configuration about queue empty checking (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix assignation of TX BD RAM table (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct ADC clock settings (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct register definitions of digital CFO and spur elimination (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: set the correct mac_id for management frames (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix null vif pointer when get management frame date rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change Wi-Fi role info related logic to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change RTL8852B use v1 TDMA policy (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Packet traffic arbitration hardware owner monitor (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: refactor debug log of slot list (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change firmware steps report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change Wi-Fi Null data report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add version code for Wi-Fi firmware coexistence control (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update WiFi role info H2C report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: only read Bluetooth counter of report version 1 for RTL8852A (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v5 firmware control report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change firmware control report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v4 version firmware cycle report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Rename BTC firmware cycle report by feature version (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Remove le32 to CPU translator at firmware cycle report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: Fix a typo in debug message (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out-of-bounds (Jose Ignacio Tornos Martinez) [2183487] - wifi: rndis_wlan: Prevent buffer overflow in rndis_query_oid (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: fix regression for Broadcom PCIe wifi devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: avoid NULL-deref in survey dump for 2G only device (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: avoid handling disabled channels for survey dump (Jose Ignacio Tornos Martinez) [2183487] - net: rfkill: gpio: add DT support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix double space in comment (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: debugfs: fix to work with multiple PCI devices (Jose Ignacio Tornos Martinez) [2183487] - mac80211: Fix MLO address translation for multiple bss case (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: reset multiple BSSID options in stop_ap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Fix iTXQ AMPDU fragmentation handling (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: sdata can be NULL during AMPDU start (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Proper mark iTXQs for resumption (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Prefer DT board type over DMI board type (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: remove most hidden macro dependencies on ah (Jose Ignacio Tornos Martinez) [2183487] - wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add rate control code for RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Support new chip RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Define masks for cck_agc_rpt bits (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Make rtl8xxxu_load_firmware take const char* (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Deduplicate the efuse dumping code (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: refine AGC tuning flow of DPK for irregular PA (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine 6 GHz scanning dwell time (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: update BSS color mapping register (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change TDMA related logic to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: refactor _chk_btc_report() to extend more features (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v2 BT AFH report and related variable (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update BTC firmware report bitmap definition (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Enable Bluetooth report when show debug info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: use new introduction BTC version format (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: add BTC format version derived from firmware version (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: select CONFIG_RELAY (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: Fix global-out-of-bounds bug in _rtl8812ae_phy_set_txpower_limit() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: recover RX DCK failure (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct DPK settings (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct DACK setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: adapt to new firmware format of security section (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: consider ER SU as a TX capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix assignment to bit field priv->cck_agc_report_type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix assignment to bit field priv->pi_enabled (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8723be: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8188ee: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8821ae: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: get rid of wed rx_buf_ring page_frag_cache (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: resource leaks at mt7921_check_offload_capability() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: rely on queue page_frag_cache for wed rx queues (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: handle possible mt76_rx_token_consume failures (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: do not increment queue head if mt76_dma_add_buf fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: enable per-phy led support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable per-phy led support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move leds struct in mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move leds field in leds struct (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix unintended sign extension of mt7915_hw_queue_read() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix unintended sign extension of mt7996_hw_queue_read() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add support to update fw capability with MTFG table (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0: fix oob access in mt76x0_phy_get_target_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix endianness warning in mt7996_mcu_sta_he_tlv (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: drop always true condition of __mt7996_reg_addr() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: drop always true condition of __mt7915_reg_addr() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: check the correctness of event data (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: check return value before accessing free_block_num (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: check return value before accessing free_block_num (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: split mcu chan_mib array up (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix integer handling issue of mt7996_rf_regval_set() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_rx_radar_detected() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_ie_countdown() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix mt7915_rate_txpower_get() resource leaks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921s: fix slab-out-of-bounds access in sdio host (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add missing of_node_put() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix monitor mode bringup crash (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix scan request param frame size warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fixing IQK failures for rtl8192eu (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: btcoexist: fix conditions branches that are never executed (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8192se: remove redundant rtl_get_bbreg() call (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8723du chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8822cu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8822bu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8821cu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add common USB chip support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: iterate over vif/sta list non-atomically (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop coex mutex (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop h2c.lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop rf_lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Call rtw_fw_beacon_filter_config() with rtwdev->mutex held (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: print firmware type in info message (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add join info upon create interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix unsuccessful interface_add flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: stop mac port function when stop_ap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add mac TSF sync function (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Introduce rtl8xxxu_update_ra_report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix the channel width reporting (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add vendor name in revinfo debugfs file (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support Broadcom BCA firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support for Cypress firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support for vendor-specific firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add firmware vendor info in driver info (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add function to unbind device to bus layer api (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add ipq5018 device support (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add new hw ops for IPQ5018 to get rx dest ring hashmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: initialize hw_ops for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update hal srng regs for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: remap ce register space for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update ce configurations for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update hw params for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: fw: use correct IML/ROM status register (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dump: Update check for UMAC valid FW address (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: d3: add TKIP to the GTK iterator (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: clean up comments (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Don't use deprecated register (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: pcie: Add reading and storing of crf and cdb id. (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: replace usage of found with dedicated list iterator variable (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dump: Update check for valid FW address (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: don't access packet before checking len (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: modify new queue allocation command (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm-parse: enable WiFi7 for Fm radio for now (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add reset to rx_ring_setup callback (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix race condition with struct htt_ppdu_stats_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: fix QCOM_SMEM dependency (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921e: add pci .shutdown() support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: mmio: fix naming convention (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add support to configure spatial reuse parameter set (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rely on band_idx of mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable per bandwidth power limit support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: introduce mt7915_get_power_bound() (Jose Ignacio Tornos Martinez) [2183487] - mt76: mt7915: Fix PCI device refcount leak in mt7915_pci_init_hif2() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix coverity overrun-call in mt76_get_txpower() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0: remove dead code in mt76x0_phy_get_target_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix band_idx usage (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable .sta_set_txpwr support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add basedband Txpower info into debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add support to configure spatial reuse parameter set (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add missing MODULE_PARM_DESC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable WED RX stats (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable WED RX support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce mt76_connac_mcu_sta_wed_update utility routine (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add info parameter to rx_skb signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to dma queue alloc (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to mt76_dma_rx_fill (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to mt76_dma_{add,get}_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: introduce rxwi and rx token utility routines (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce helper for mt7996 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more starec command tags (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more bss info command tags (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce unified event table (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more unified command IDs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: rework fields for larger bandwidth support in sta_rec_bf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: update struct sta_rec_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: rework macros for unified command (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: introduce chanctx support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: introduce remain_on_channel support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: accept hw scan request at a time (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: drop ieee80211_[start, stop]_queues in driver (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add unified ROC cmd/event support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add chanctx parameter to mt76_connac_mcu_uni_add_bss signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add mt76_connac_mcu_uni_set_chctx (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: do not run mt76u_status_worker if the device is not running (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: update nss calculation in txs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: don't claim 160MHz support with mt7915 DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: Fix VHT beamforming capabilities with DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: Fix chainmask calculation on mt7915 DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable coredump support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add full system reset into debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable full system reset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_dma_reset() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move aggr_stats array in mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: rely on mt7615_phy in mt7615_mac_reset_counters (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix reporting of TX AGGR histogram (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix bandwidth 80MHz link fail in 6GHz band (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: improve accuracy of time_busy calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable wed for mt7986-wmac chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable wed for mt7986 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: move wed init routines in mmio.c (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix mt7915_mac_set_timing() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: set correct antenna for radar detection on MT7915D (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add spatial extension index support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce mt76_connac_spe_idx() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework testmode tx antenna setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: deal with special variant of mt7916 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework eeprom tx paths and streams init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: reserve 8 bits for the index of rf registers (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix bounds checking for tx-free-done command (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: Remove unused inline function mt76_wcid_mask_test() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x02: simplify struct mt76x02_rate_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move mt76_rate_power from core to mt76x02 driver code (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix and simplify unencrypted drop check for mesh (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add support for restricting netdev features per vif (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: update TIM for S1G specification changes (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: don't parse multi-BSSID in assoc resp (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: use bss_from_pub() instead of container_of() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove unnecessary synchronize_net() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Drop not needed check for NULL (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix not unregister reg_pdev when load_builtin_regdb_keys() fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: fix comparison of BSS frequencies (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Correct example of ieee80211_iface_limit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix memory leak in ieee80211_if_add() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ieee80211: Do not open-code qos address offsets (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: link rtw89_vif and chanctx stuffs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: implement MCC related H2C (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: mac: process MCC related C2H (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: introduce helpers to wait/complete on condition (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: check if atomic before queuing c2h (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: rfk: rename rtw89_mcc_info to rtw89_rfk_mcc_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: 8821c: enable BT device recovery mechanism (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: turn off PoP function in monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add HE radiotap for monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: enable mac80211 virtual monitor interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Check the count value of channel spec to prevent out-of-bounds reads (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add reset to tx_ring_setup callback (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add mtk_wed_rx_reset routine (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: update mtk_wed_stop (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: move MTK_WDMA_RESET_IDX_TX configuration in mtk_wdma_tx_reset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: return status value in mtk_wdma_rx_reset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add wcid overwritten support for wed v1 (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add configure wed wo support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: rename tx_wdma array in rx_wdma (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: introduce wed wo support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: introduce wed mcu support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add missing of_node_put() (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add missing put_device() in mtk_wed_add_hw() (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add axi bus support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add wed support for mt7986 chipset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add mtk_wed_configure_irq and mtk_wed_dma_{enable/disable} (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: fix off by one check of ARRAY_SIZE (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: add check for allocation failure (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc/wed: fix sparse endian warnings (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: fix return value check in mtk_wed_add_hw() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix parameter passing to iwl_mei_alive_notif() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: return error value in case PLDR sync failed (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: trigger PCI re-enumeration in case of PLDR sync (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: fix double free on tx path. (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: print OTP info after alive (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm: Update EHT capabilities for GL device (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm-parse: support A-MPDU in EHT 2.4 GHz (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: advertise 320 MHz in 6 GHz only conditionally (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: set HE PHY bandwidth according to band (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support PPE Thresholds for EHT (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add support for EHT 1K aggregation size (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: rs: add support for parsing max MCS per NSS/BW in 11be (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support 320 MHz PHY configuration (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Advertise EHT capabilities (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: fix race condition when doing H2C command (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Store WLAN firmware version in SMEM image table (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: avoid inaccessible IO operations during doing change_interface() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: switch BANDEDGE and TX_SHAPE based on OFDMA trigger frame (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: read CFO from FD or preamble CFO field of phy status ie_type 1 accordingly (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: correct TX power controlled by BT-coexistence (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Use struct_size() in code ralated to struct brcmf_dload_data_le (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: replace one-element array with flexible-array member in struct brcmf_dload_data_le (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Use struct_size() and array_size() in code ralated to struct brcmf_gscan_config (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Remove redundant argument offset (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Fix return value in ath10k_pci_init() (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add definition for some VIDs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: Fix some error handling path in rtw89_wow_enable() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Avoid clashing function prototypes (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use u32_get_bits in *_identify_chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use strscpy instead of sprintf (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Name some bits used in burst init (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Rename rtl8xxxu_8188f_channel_to_group (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Split up rtl8xxxu_identify_chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Move burst init to a function (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: wait for the mac to stop on suspend (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: iwlmei: report disconnection as temporary (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: use wait_event_timeout() return value (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: implement PLDR flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Fix getting the lowest rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support new key API (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dbg: use bit of DRAM alloc ID to store failed allocs (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: print an error instead of a warning on invalid rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: cfg: disable STBC for BL step A devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dbg: add support for DBGC4 on BZ family and above (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: use old checksum for Bz A-step (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix potential NULL-ptr deref after clone (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: avoid blocking sap messages handling due to rtnl lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix tx DHCP packet for devices with new Tx API (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: don't send SAP commands if AMT is disabled (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: make sure ownership confirmed message is sent (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: send TKIP connection status to csme (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Use IEEE80211_SEQ_TO_SN() for seq_ctrl conversion (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Remove unused variable mismatch (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: change debug mask of message of no TX resource (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Trigger sta disconnect on hardware restart (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: update D-MAC and C-MAC dump to diagnose SER (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: dump dispatch status via debug port (Jose Ignacio Tornos Martinez) [2183487] - wifi: Use kstrtobool() instead of strtobool() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Avoiding Connection delay (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix for when connect request is not success (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: correctly remove all p2p vif (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add HP variant of T99W175 (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: add support for sc8280xp-crd SDX55 variant (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use dev_* instead of pr_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Set IEEE80211_HW_SUPPORT_FAST_XMIT (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Recognise all possible chip cuts (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix the CCK RSSI calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add central frequency offset tracking (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential NULL pointer dereference in 'brcmf_c_preinit_dcmds()' (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix a typo "unknow" (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8192ee: remove static variable stop_report_cnt (Jose Ignacio Tornos Martinez) [2183487] - bcma: Use the proper gpio include (Jose Ignacio Tornos Martinez) [2183487] - mtd: rawnand: brcmnand: Add platform data structure for BCMA (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential shift-out-of-bounds in brcmf_fw_alloc_request() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Make QMI message rules const (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Make QMI message rules const (Jose Ignacio Tornos Martinez) [2183487] - soc: qcom: qmi: use const for struct qmi_elem_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix qmi_msg_handler data structure initialization (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: remove variable sent (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: Fix spelling mistake KIP_RESOTRE -> KIP_RESTORE (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add WoWLAN pattern match support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add WoWLAN function support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add related H2C for WoWLAN mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add drop tx packet function (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add function to adjust and restore PLE quota (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: move enable_cpu/disable_cpu into fw_download (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: collect and send RF parameters to firmware for WoWLAN (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: check if sta's mac_id is valid under AP/TDLS (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add BW info for both TX and RX in phy_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: make table of RU mask constant (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: declare support bands with const (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: adapt to new firmware format of dynamic header (Jose Ignacio Tornos Martinez) [2183487] - net: Remove the obsolte u64_stats_fetch_*_irq() users (net). (Jose Ignacio Tornos Martinez) [2183487] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add a secondary AT port to Telit FN990 (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Fix race between channel preparation and M0 event (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Use mhi_soc_reset() API in place of register write (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix monitor vdev creation with firmware recovery (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix reads of uninitialized variables hw_ctrl_s1, sw_ctrl_s1 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add 8852be to Makefile and Kconfig (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: add dummy C2H handler to avoid warning message (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops related to RF calibration (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add DPK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add TSSI (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add IQK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add RX DCK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add RCK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add DACK (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Delay the unmapping of the buffer (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Check return value of ath10k_get_arvif() in ath10k_wmi_event_tdls_peer() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix firmware crash on vdev delete race condition (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Send PME message during wakeup from D3cold (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add support to configure channel dwell time (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: suppress add interface error (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add basic attributes of chip_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add functions to control BB to assist RF calibrations (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to configure TX/RX path (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to query PPDU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops related to BT coexistence (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to get thermal (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add basic baseband chip_ops (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add power on/off functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_channel_help (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Update module description (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix reading the vendor of combo chips (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Make some arrays const (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix wrong bandwidth settings after scan (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct 6 GHz scan behavior (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_channel (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: make generic functions to convert subband gain index (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add HFC quota arrays (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: set proper configuration before loading NCTL (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: parse PHY status only when PPDU is to_self (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: move chip_ops::btc_bt_aci_imp to a generic code (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: verify the expected usb_endpoints are present (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Remove -Warray-bounds exception (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: fix memory leak of urbs in ath9k_hif_usb_dealloc_tx_urbs() (Jose Ignacio Tornos Martinez) [2183487] - wifi: realtek: remove duplicated wake_tx_queue (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Make arrays prof_prio and channelmap static const (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix spelling mistake "chnange" -> "change" (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Drop support for TX push path (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add wake_tx_queue callback to drivers (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add internal handler for wake_tx_queue (Jose Ignacio Tornos Martinez) [2183487] - cfg80211: Update Transition Disable policy during port authorization (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: minstrel_ht: remove unused has_mrr member from struct minstrel_priv (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove support for AddBA with fragmentation (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: agg-rx: avoid band check (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: prohibit IEEE80211_HT_CAP_DELAY_BA with MLO (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: don't clear DTIM period after setting it (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: change AddBA deny error message (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: mlme: mark assoc link in output (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add RCU _check() link access variants (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix AddBA response addressing (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: set internal scan request BSSID (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: advertise TWT requester only with HW support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: use link_id in ieee80211_change_bss() (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: use link ID in NL80211_CMD_SET_BSS (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: transmit AddBA with MLD address (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: wme: use ap_addr instead of deflink BSSID (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Process association status for affiliated links (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Parse station profile from association response (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211/mac80211: Fix ML element common size validation (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211/mac80211: Fix ML element common size calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: ieee80211: Support validating ML station profile length (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: support reporting failed links (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: recalc station aggregate data during link switch (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: include link address in debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add API to show the link STAs in debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add pointer from link STA to STA (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add to dump TX FIFO 0/1 for 8852C (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: set pin MUX to enable BT firmware log (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: ignore warning of bb gain cfg_type 4 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: update BB parameters to v28 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct miscoding delay of DPK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: correct set of IQK backup registers (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Fix AP interface delete issue (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: support station interface creation version 1, 2 and 3 (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: add creating station interface support (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: dump dongle memory when attaching failed (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: return error when getting invalid max_flowrings from dongle (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: add a timer to read console periodically in PCIE bus (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Fix authentication latency caused by OBSS stats survey (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: fix CERT-P2P:5.1.10 failure (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: fix firmware trap while dumping obss stats (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Add dump_survey cfg80211 ops for HostApd AutoChannelSelection (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Support new chip RTL8188FU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852be: add 8852BE PCI entry (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to read phy cap (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to read efuse (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_txpwr (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: debug: txpwr_table considers sign (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: make generic txpwr setting functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add tables for RFK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add BB and RF tables (2 of 2) (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add BB and RF tables (1 of 2) (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Don't exit on wakeup failure (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: stop tx queues immediately upon firmware exit (Jose Ignacio Tornos Martinez) [2183487] - Revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues" (Jose Ignacio Tornos Martinez) [2183487] - treewide: use get_random_u32() when possible (Jose Ignacio Tornos Martinez) [2183487] - treewide: use prandom_u32_max() when possible, part 1 (Jose Ignacio Tornos Martinez) [2183487] - hwrng: core - let sleep be interrupted when unregistering hwrng (Jose Ignacio Tornos Martinez) [2183487] - tracing/kprobes: Do the notrace functions check without kprobes on ftrace (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix a double initialization typo (Mukesh Chaurasiya) [2203370] - tracing/kprobe: Check whether the non-suffixed symbol is notrace (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix to check notrace function with correct range (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix within_notrace_func() to check only notrace functions (Mukesh Chaurasiya) [2203370] - powerpc/kprobes: Fix kprobe Oops happens in booke (Mukesh Chaurasiya) [2203370] - xfs: verify buffer contents when we skip log replay (Andrey Albershteyn) [2187456] {CVE-2023-2124} - perf c2c: Add report option to show false sharing in adjacent cachelines (Michael Petlan) [2193188] - powerpc/papr_scm: Update the NUMA distance table for the target node (Mamatha Inamdar) [2183474] - i2c: xgene-slimpro: Fix out-of-bounds bug in xgene_slimpro_i2c_xfer() (Tony Camuso) [2188408] {CVE-2023-2194} - prlimit: do_prlimit needs to have a speculation check (Alex Gladkov) [2196314] {CVE-2023-0458} - vmxnet3: use gro callback when UPT is enabled (Izabela Bakollari) [2183057] - r8152: Rate limit overflow messages (Jose Ignacio Tornos Martinez) [2153573] {CVE-2022-3594} - docs: Remove unnecessary unicode character (Patrick Talbert) [2207988] - PCI: vmd: Add quirk to configure PCIe ASPM and LTR (Myron Stowe) [2136922] - PCI: vmd: Create feature grouping for client products (Myron Stowe) [2136922] - PCI: vmd: Use PCI_VDEVICE in device list (Myron Stowe) [2136922] - PCI/ASPM: Add pci_enable_link_state() (Myron Stowe) [2136922] - PCI: vmd: Fix secondary bus reset for Intel bridges (Myron Stowe) [2136922] - PCI: vmd: Disable MSI remapping after suspend (Myron Stowe) [2136922] - PCI: vmd: Add DID 8086:7D0B and 8086:AD0B for Intel MTL SKUs (Myron Stowe) [2136922] - PCI: vmd: Use devm_kasprintf() instead of simple kasprintf() (Myron Stowe) [2136922]- net/sched: sch_fq: fix integer overflow of "credit" (Davide Caratti) [2187718] - net: sched: gred: prevent races when adding offloads to stats (Davide Caratti) [2187718] - sch_htb: Avoid grafting on htb_destroy_class_offload when destroying htb (Davide Caratti) [2187718] - net/sched: act_mpls: Fix warning during failed attribute validation (Davide Caratti) [2187718] - net: sched: fix memory leak in tcindex_set_parms (Davide Caratti) [2187718] - net_sched: reject TCF_EM_SIMPLE case for complex ematch module (Davide Caratti) [2187718] - net: sched: Fix use after free in red_enqueue() (Davide Caratti) [2187718] - net: sched: fix race condition in qdisc_graft() (Davide Caratti) [2187718] - net: sched: sfb: fix null pointer access issue when sfb_init() fails (Davide Caratti) [2187718] - net/sched: cls_api: Fix flow action initialization (Davide Caratti) [2187718] - scsi: lpfc: Update inbox lpfc driver for RHEL 8.9 to 14.0.0.21. (Paul Ely) [2165048] - scsi: lpfc: Copyright updates for 14.2.0.11 patches (Paul Ely) [2165048] - scsi: lpfc: Copyright updates for 14.2.0.10 patches (Paul Ely) [2165048] - scsi: lpfc: Defer issuing new PLOGI if received RSCN before completing REG_LOGIN (Paul Ely) [2165048] - scsi: lpfc: Record LOGO state with discovery engine even if aborted (Paul Ely) [2165048] - scsi: lpfc: Fix lockdep warning for rx_monitor lock when unloading driver (Paul Ely) [2165048] - scsi: lpfc: Reorder freeing of various DMA buffers and their list removal (Paul Ely) [2165048] - scsi: lpfc: Prevent lpfc_debugfs_lockstat_write() buffer overflow (Paul Ely) [2165048] - scsi: lpfc: Introduce new attention types for lpfc_sli4_async_fc_evt() handler (Paul Ely) [2165048] - scsi: lpfc: Fix use-after-free KFENCE violation during sysfs firmware write (Paul Ely) [2165048] - scsi: lpfc: Exit PRLI completion handling early if ndlp not in PRLI_ISSUE state (Paul Ely) [2165048] - scsi: lpfc: Remove duplicate ndlp kref decrement in lpfc_cleanup_rpis() (Paul Ely) [2165048] - scsi: lpfc: Remove redundant clean up code in disable_vport() (Paul Ely) [2165048] - scsi: lpfc: Fix crash involving race between FLOGI timeout and devloss handler (Paul Ely) [2165048] - net: sched: sch_qfq: prevent slab-out-of-bounds in qfq_activate_agg (Ricardo Robaina) [2192680] {CVE-2023-2248 CVE-2023-31436} - vfio/ccw: remove old IDA format restrictions (Tobias Huschle) [2187662] - vfio/ccw: handle a guest Format-1 IDAL (Tobias Huschle) [2187662] - vfio/ccw: allocate/populate the guest idal (Tobias Huschle) [2187662] - vfio/ccw: calculate number of IDAWs regardless of format (Tobias Huschle) [2187662] - vfio/ccw: read only one Format-1 IDAW (Tobias Huschle) [2187662] - vfio/ccw: refactor the idaw counter (Tobias Huschle) [2187662] - vfio/ccw: populate page_array struct inline (Tobias Huschle) [2187662] - vfio/ccw: record the page offset in struct pfn_array (Tobias Huschle) [2187662] - vfio/ccw: pass page count to page_array struct (Tobias Huschle) [2187662] - vfio/ccw: simplify CCW chain fetch routines (Tobias Huschle) [2187662] - vfio/ccw: move where IDA flag is set in ORB (Tobias Huschle) [2187662] - vfio/ccw: allow non-zero storage keys (Tobias Huschle) [2187662] - iavf: remove active_cvlans and active_svlans bitmaps (Stefan Assmann) [2153349] - iavf: refactor VLAN filter states (Stefan Assmann) [2153349] - iavf: do not track VLAN 0 filters (Stefan Assmann) [2153349] - iavf: fix non-tunneled IPv6 UDP packet type and hashing (Stefan Assmann) [2153349] - iavf: fix inverted Rx hash condition leading to disabled hash (Stefan Assmann) [2153349] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Stefan Assmann) [2153349] - iavf/iavf_main: actually log ->src mask when talking about it (Stefan Assmann) [2153349] - iavf: Fix VF driver counting VLAN 0 filters (Stefan Assmann) [2153349] - iavf: Change information about device removal in dmesg (Stefan Assmann) [2153349] - iavf: Replace __FUNCTION__ with __func__ (Stefan Assmann) [2153349] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Stefan Assmann) [2153349] - ipv4: prevent potential spectre v1 gadget in fib_metrics_match() (Guillaume Nault) [2188040] - ipv4: prevent potential spectre v1 gadget in ip_metrics_convert() (Guillaume Nault) [2188040] - ipv4: Fix error return code in fib_table_insert() (Guillaume Nault) [2188040] - ipv4: drop dst in multicast routing path (Guillaume Nault) [2188040] - net: igmp: respect RCU rules in ip_mc_source() and ip_mc_msfilter() (Guillaume Nault) [2188040] - xfrm: Zero padding when dumping algos and encap (Sabrina Dubroca) [2189212] - xfrm: redact SA secret with lockdown confidentiality (Sabrina Dubroca) [2189212] - xfrm: fix bug with DSCP copy to v6 from v4 tunnel (Sabrina Dubroca) [2189212] - xfrm: enforce validity of offload input flags (Sabrina Dubroca) [2189212] - ice: Remove LAG+SRIOV mutual exclusion (Michal Schmidt) [2120585] - ext4: correct the misjudgment in ext4_iget_extra_inode (Carlos Maiolino) [2193101] - ext4: correct max_inline_xattr_value_size computing (Carlos Maiolino) [2193101] - ext4: fix use-after-free in ext4_xattr_set_entry (Carlos Maiolino) [2193101] {CVE-2023-2513} - ext4: add EXT4_INODE_HAS_XATTR_SPACE macro in xattr.h (Carlos Maiolino) [2193101] - ixgbevf: Fix resource leak in ixgbevf_init_module() (Ken Cox) [2153374] - ixgbevf: Add error messages on vlan error (Ken Cox) [2153374]- kunit: make kunit_test_timeout compatible with comment (Nico Pache) [2168375] - kunit: fix assert_type for comparison macros (Nico Pache) [2168375] - redhat: include new kunit tests in mod-internals (Nico Pache) [2168375] - kernel.h: split out mathematical helpers (Nico Pache) [2168375] - linux/kernel.h: fix overflow for DIV_ROUND_UP_ULL (Nico Pache) [2168375] - linux/kernel.h: Use parentheses around argument in u64_to_user_ptr() (Nico Pache) [2168375] - : drop the gcc-3.3 'const' hack in roundup() (Nico Pache) [2168375] - kernel.h: documentation for roundup() vs round_up() (Nico Pache) [2168375] - apparmor: test: Use NULL macros (Nico Pache) [2168375] - kasan: test: Use NULL macros (Nico Pache) [2168375] - kunit: use NULL macros (Nico Pache) [2168375] - kunit: Introduce _NULL and _NOT_NULL macros (Nico Pache) [2168375] - kunit: decrease macro layering for EQ/NE asserts (Nico Pache) [2168375] - kunit: decrease macro layering for integer asserts (Nico Pache) [2168375] - kunit: reduce layering in string assertion macros (Nico Pache) [2168375] - kunit: drop unused intermediate macros for ptr inequality checks (Nico Pache) [2168375] - kunit: make KUNIT_EXPECT_EQ() use KUNIT_EXPECT_EQ_MSG(), etc. (Nico Pache) [2168375] - Documentation: kunit: Remove redundant 'tips.rst' page (Nico Pache) [2168375] - Documentation: KUnit: reword description of assertions (Nico Pache) [2168375] - kunit: tool: Don't download risc-v opensbi firmware with wget (Nico Pache) [2168375] - drm/tests: Split up test cases in igt_check_drm_format_min_pitch (Nico Pache) [2168375] - kunit: executor: Fix a memory leak on failure in kunit_filter_tests (Nico Pache) [2168375] - Documentation: kunit: Cleanup run_wrapper, fix x-ref (Nico Pache) [2168375] - kunit: use kmemdup in kunit_filter_tests(), take suite as const (Nico Pache) [2168375] - kunit: fix executor OOM error handling logic on non-UML (Nico Pache) [2168375] - drm: selftest: convert drm_mm selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_buddy selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_framebuffer selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_dp_mst_helper selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_plane_helper selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_format selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_rect selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_cmdline_parser selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_damage_helper selftest to KUnit (Nico Pache) [2168375] - drm/doc: Add KUnit documentation (Nico Pache) [2168375] - kunit: drop unused assert_type from kunit_assert and clean up macros (Nico Pache) [2168375] - kunit: split out part of kunit_assert into a static const (Nico Pache) [2168375] - kunit: factor out kunit_base_assert_format() call into kunit_fail() (Nico Pache) [2168375] - kunit: drop unused kunit* field in kunit_assert (Nico Pache) [2168375] - kunit: move check if assertion passed into the macros (Nico Pache) [2168375] - kunit: tool: misc cleanups (Nico Pache) [2168375] - kunit: tool: minor cosmetic cleanups in kunit_parser.py (Nico Pache) [2168375] - kunit: tool: make parser stop overwriting status of suites w/ no_tests (Nico Pache) [2168375] - kunit: tool: remove dead parse_crash_in_log() logic (Nico Pache) [2168375] - kunit: tool: print clearer error message when there's no TAP output (Nico Pache) [2168375] - kunit: tool: stop using a shell to run kernel under QEMU (Nico Pache) [2168375] - kunit: tool: update test counts summary line format (Nico Pache) [2168375] - kunit: bail out of test filtering logic quicker if OOM (Nico Pache) [2168375] - lib/Kconfig.debug: change KUnit tests to default to KUNIT_ALL_TESTS (Nico Pache) [2168375] - kunit: Rework kunit_resource allocation policy (Nico Pache) [2168375] - thunderbolt: Add KUnit test for devices with no DisplayPort adapters (Nico Pache) [2168375] - drm/todo: Add entry for converting kselftests to kunit (Nico Pache) [2168375] - drm/todo: Add entry for using kunit in the subsystem (Nico Pache) [2168375] - kunit: fix debugfs code to use enum kunit_status, not bool (Nico Pache) [2168375] - kunit: add ability to specify suite-level init and exit functions (Nico Pache) [2168375] - kunit: rename print_subtest_{start,end} for clarity (s/subtest/suite) (Nico Pache) [2168375] - kunit: add support for kunit_suites that reference init code (Nico Pache) [2168375] - Documentation: kunit: change complete_and_exit to kthread_complete_and_exit (Nico Pache) [2168375] - mm/slub, kunit: Make slub_kunit unaffected by user specified flags (Nico Pache) [2168375] - kunit: Make kunit_remove_resource() idempotent (Nico Pache) [2168375] - list: test: Test the hlist structure (Nico Pache) [2168375] - ASoC: soc-utils: Add kunit test for snd_soc_tdm_params_to_bclk() (Nico Pache) [2168375] - ASoC: soc-utils: Add helper to calculate BCLK from TDM info (Nico Pache) [2168375] - Documentation: kunit: update kconfig options needed for UML coverage (Nico Pache) [2168375] - kunit: split resource API impl from test.c into new resource.c (Nico Pache) [2168375] - kunit: split resource API from test.h into new resource.h (Nico Pache) [2168375] - kunit: tool: more descriptive metavars/--help output (Nico Pache) [2168375] - kunit: tool: Do not colorize output when redirected (Nico Pache) [2168375] - kunit: tool: properly report the used arch for --json, or '' if not known (Nico Pache) [2168375] - kunit: tool: refactor how we plumb metadata into JSON (Nico Pache) [2168375] - kunit: tool: drop mostly unused KunitResult.result field (Nico Pache) [2168375] - kunit: tool: readability tweaks in KernelCI json generation logic (Nico Pache) [2168375] - kunit: tool: simplify code since build_dir can't be None (Nico Pache) [2168375] - kunit: tool: drop last uses of collections.namedtuple (Nico Pache) [2168375] - kunit: tool: drop unused KernelDirectoryPath var (Nico Pache) [2168375] - kunit: tool: make --json handling a bit clearer (Nico Pache) [2168375] - Documentation: kunit: fix path to .kunitconfig in start.rst (Nico Pache) [2168375] - Documentation: kunit: Fix cross-referencing warnings (Nico Pache) [2168375] - binfmt_elf: Introduce KUnit test (Nico Pache) [2168375] - list: test: Add a test for list_entry_is_head() (Nico Pache) [2168375] - list: test: Add a test for list_is_head() (Nico Pache) [2168375] - list: test: Add test for list_del_init_careful() (Nico Pache) [2168375] - list: introduce list_is_head() helper and re-use it in list.h (Nico Pache) [2168375] - list: add "list_del_init_careful()" to go with "list_empty_careful()" (Nico Pache) [2168375] - kunit: add example test case showing off all the expect macros (Nico Pache) [2168375] - test_hash.c: refactor into kunit (Nico Pache) [2168375] - lib/Kconfig.debug: properly split hash test kernel entries (Nico Pache) [2168375] - test_hash.c: split test_hash_init (Nico Pache) [2168375] - test_hash.c: split test_int_hash into arch-specific functions (Nico Pache) [2168375] - hash.h: remove unused define directive (Nico Pache) [2168375] - iio: test: Add check against NULL for buffer in tests. (Nico Pache) [2168375] - net: kunit: add a test for dev_addr_lists (Nico Pache) [2168375] - kprobes: convert tests to kunit (Nico Pache) [2168375] - bitfield: build kunit tests without structleak plugin (Nico Pache) [2168375] - thunderbolt: build kunit tests without structleak plugin (Nico Pache) [2168375] - iio/test-format: build kunit tests without structleak plugin (Nico Pache) [2168375] - gcc-plugins/structleak: add makefile var for disabling structleak (Nico Pache) [2168375] - math: RATIONAL_KUNIT_TEST should depend on RATIONAL instead of selecting it (Nico Pache) [2168375] - math: make RATIONAL tristate (Nico Pache) [2168375] - rtc: move RTC_LIB_KUNIT_TEST to proper location (Nico Pache) [2168375] - rtc: Improve performance of rtc_time64_to_tm(). Add tests. (Nico Pache) [2168375] - lib/math/rational: add Kunit test cases (Nico Pache) [2168375] - time/kunit: Add missing MODULE_LICENSE() (Nico Pache) [2168375] - kasan: test: make use of kunit_skip() (Nico Pache) [2168375] - time: Improve performance of time64_to_tm() (Nico Pache) [2168375] - iio: Remove a cast in iio-test-format which is no longer required (Nico Pache) [2168375] - lib: kunit: suppress a compilation warning of frame size (Nico Pache) [2168375] - kasan: docs: update tests section (Nico Pache) [2168375] - iio: Add basic unit test for iio_format_value() (Nico Pache) [2168375] - Documentation: KUnit: Fix usage bug (Nico Pache) [2168375] - kunit: fix missing f in f-string in run_checks.py (Nico Pache) [2168375] - kunit: tool: Import missing importlib.abc (Nico Pache) [2168375] - kunit: replace kernel.h with the necessary inclusions (Nico Pache) [2168375] - Documentation: KUnit: Restyled Frequently Asked Questions (Nico Pache) [2168375] - Documentation: KUnit: Restyle Test Style and Nomenclature page (Nico Pache) [2168375] - Documentation: KUnit: Rework writing page to focus on writing tests (Nico Pache) [2168375] - Documentation: kunit: Reorganize documentation related to running tests (Nico Pache) [2168375] - Documentation: KUnit: Added KUnit Architecture (Nico Pache) [2168375] - Documentation: KUnit: Rewrite getting started (Nico Pache) [2168375] - Documentation: KUnit: Rewrite main page (Nico Pache) [2168375] - kunit: tool: Default --jobs to number of CPUs (Nico Pache) [2168375] - kunit: tool: fix newly introduced typechecker errors (Nico Pache) [2168375] - kunit: tool: make `build` subcommand also reconfigure if needed (Nico Pache) [2168375] - kunit: tool: delete kunit_parser.TestResult type (Nico Pache) [2168375] - kunit: tool: use dataclass instead of collections.namedtuple (Nico Pache) [2168375] - kunit: tool: suggest using decode_stacktrace.sh on kernel crash (Nico Pache) [2168375] - kunit: tool: reconfigure when the used kunitconfig changes (Nico Pache) [2168375] - kunit: tool: revamp message for invalid kunitconfig (Nico Pache) [2168375] - kunit: tool: add --kconfig_add to allow easily tweaking kunitconfigs (Nico Pache) [2168375] - kunit: tool: move Kconfig read_from_file/parse_from_string to package-level (Nico Pache) [2168375] - kunit: tool: print parsed test results fully incrementally (Nico Pache) [2168375] - kunit: Report test parameter results as (K)TAP subtests (Nico Pache) [2168375] - kunit: Don't crash if no parameters are generated (Nico Pache) [2168375] - kunit: tool: Report an error if any test has no subtests (Nico Pache) [2168375] - kunit: tool: Do not error on tests without test plans (Nico Pache) [2168375] - kunit: add run_checks.py script to validate kunit changes (Nico Pache) [2168375] - kunit: tool: fix --json output for skipped tests (Nico Pache) [2168375] - kunit: tool: fix typecheck errors about loading qemu configs (Nico Pache) [2168375] - kunit: tool: continue past invalid utf-8 output (Nico Pache) [2168375] - kunit: tool: improve compatibility of kunit_parser with KTAP specification (Nico Pache) [2168375] - kunit: tool: yield output from run_kernel in real time (Nico Pache) [2168375] - kunit: tool: support running each suite/test separately (Nico Pache) [2168375] - kunit: tool: actually track how long it took to run tests (Nico Pache) [2168375] - kunit: tool: factor exec + parse steps into a function (Nico Pache) [2168375] - kunit: add 'kunit.action' param to allow listing out tests (Nico Pache) [2168375] - kunit: tool: show list of valid --arch options when invalid (Nico Pache) [2168375] - kunit: tool: misc fixes (unused vars, imports, leaked files) (Nico Pache) [2168375] - kunit: fix too small allocation when using suite-only kunit.filter_glob (Nico Pache) [2168375] - kunit: tool: allow filtering test cases via glob (Nico Pache) [2168375] - kunit: tool: better handling of quasi-bool args (--json, --raw_output) (Nico Pache) [2168375] - kunit: tool: make --raw_output support only showing kunit output (Nico Pache) [2168375] - kunit: tool: add --kernel_args to allow setting module params (Nico Pache) [2168375] - kunit: tool: Assert the version requirement (Nico Pache) [2168375] - kunit: tool: remove unnecessary "annotations" import (Nico Pache) [2168375] - Documentation: kunit: drop obsolete note about uml_abort for coverage (Nico Pache) [2168375] - kunit: tool: Fix error messages for cases of no tests and wrong TAP header (Nico Pache) [2168375] - kunit: tool: Support skipped tests in kunit_tool (Nico Pache) [2168375] - kunit: tool: internal refactor of parser input handling (Nico Pache) [2168375] - kunit: Remove the unused all_tests.config (Nico Pache) [2168375] - kunit: Move default config from arch/um -> tools/testing/kunit (Nico Pache) [2168375] - kunit: arch/um/configs: Enable KUNIT_ALL_TESTS by default (Nico Pache) [2168375] - kunit: tool: add support for QEMU (Nico Pache) [2168375] - kunit: tool: make --kunitconfig accept dirs, add lib/kunit fragment (Nico Pache) [2168375] - kunit: tool: Disable PAGE_POISONING under --alltests (Nico Pache) [2168375] - kunit: tool: Fix a python tuple typing error (Nico Pache) [2168375] - iommu/amd: Indicate whether DMA remap support is enabled (Desnes Nunes) [2184064] - Revert "usb: typec: ucsi: add a common function ucsi_unregister_connectors()" (Desnes Nunes) [2184064] - usb: typec: ucsi: Only check the contract if there is a connection (Desnes Nunes) [2184064] - media: uvcvideo: Fix InterfaceProtocol for Quanta camera (Desnes Nunes) [2184064] - net: thunderbolt: fix memory leak in tbnet_open() (Desnes Nunes) [2184064] - USB: serial: option: add u-blox LARA-L6 modem (Desnes Nunes) [2184064] - USB: serial: option: add u-blox LARA-R6 00B modem (Desnes Nunes) [2184064] - USB: serial: option: remove old LARA-R6 PID (Desnes Nunes) [2184064] - net: thunderbolt: Fix error handling in tbnet_init() (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom FM160 0x0111 composition (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom MA510 modem (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom L610 modem (Desnes Nunes) [2184064] - USB: serial: option: add device id for Foxconn T99W265 (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom FM101-GL variants (Desnes Nunes) [2184064] - USB: serial: option: add Telit LE910S1 0x9200 composition (Desnes Nunes) [2184064] - usb: add NO_LPM quirk for Realforce 87U Keyboard (Desnes Nunes) [2184064] - usb: typec: tipd: Prevent uninitialized event{1,2} in IRQ handler (Desnes Nunes) [2184064] - usb: typec: mux: Enter safe mode only when pins need to be reconfigured (Desnes Nunes) [2184064] - USB: bcma: Make GPIO explicitly optional (Desnes Nunes) [2184064] - USB: serial: option: add Sierra Wireless EM9191 (Desnes Nunes) [2184064] - xhci: Remove device endpoints from bandwidth list when freeing the device (Desnes Nunes) [2184064] - xhci-pci: Set runtime PM as default policy on all xHC 1.2 or later devices (Desnes Nunes) [2184064] - xhci: Add quirk to reset host back to default state at shutdown (Desnes Nunes) [2184064] - usb: xhci: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller (Desnes Nunes) [2184064] - Revert "xhci: turn off port power in shutdown" (Desnes Nunes) [2184064] - xhci-pci: Allow host runtime PM as default for Intel Meteor Lake xHCI (Desnes Nunes) [2184064] - xhci-pci: Allow host runtime PM as default for Intel Raptor Lake xHCI (Desnes Nunes) [2184064] - xhci: turn off port power in shutdown (Desnes Nunes) [2184064] - xhci: Keep interrupt disabled in initialization until host is running. (Desnes Nunes) [2184064] - fbdev: sisfb: use explicitly signed char (Desnes Nunes) [2184064] - usb: typec: ucsi: acpi: Implement resume callback (Desnes Nunes) [2184064] - usb: typec: ucsi: Check the connection on resume (Desnes Nunes) [2184064] - usb: host: ehci-exynos: switch to using gpiod API (Desnes Nunes) [2184064] - usb: typec: ucsi_ccg: Disable UCSI ALT support on Tegra (Desnes Nunes) [2184064] - usb: typec: Replace custom implementation of device_match_fwnode() (Desnes Nunes) [2184064] - usb: typec: ucsi: Don't warn on probe deferral (Desnes Nunes) [2184064] - usb: typec: ucsi: Wait for the USB role switches (Desnes Nunes) [2184064] - usb: typec: ucsi: add a common function ucsi_unregister_connectors() (Desnes Nunes) [2184064] - usb: typec: ucsi: Better fix for missing unplug events issue (Desnes Nunes) [2184064] - usb: typec: ucsi: Read the PDOs in separate work (Desnes Nunes) [2184064] - usb: typec: ucsi: Check the partner alt modes always if there is PD contract (Desnes Nunes) [2184064] - usb: typec: ucsi: acpi: Reduce the command completion timeout (Desnes Nunes) [2184064] - usb: typec: ucsi: Add polling mechanism for partner tasks like alt mode checking (Desnes Nunes) [2184064] - usb: typec: ucsi: Don't stop alt mode registration on busy condition (Desnes Nunes) [2184064] - usb: typec: ucsi: Always cancel the command if PPM reports BUSY condition (Desnes Nunes) [2184064] - usb: add quirks for Lenovo OneLink+ Dock (Desnes Nunes) [2184064] - USB: NO_LPM quirk Lenovo USB-C to Ethernet Adapher(RTL8153-04) (Desnes Nunes) [2184064] - USB: NO_LPM quirk Lenovo Powered USB-C Travel Hub (Desnes Nunes) [2184064] - usb: idmouse: fix an uninit-value in idmouse_open (Desnes Nunes) [2184064] - usb: ulpi: use DEFINE_SHOW_ATTRIBUTE to simplify ulpi_regs (Desnes Nunes) [2184064] - usb: ulpi: Add debugfs support (Desnes Nunes) [2184064] - usb: typec: fusb302: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - usb: typec: qcom-pmic-typec: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - usb: typec: stusb160x: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - USB: serial: qcserial: add new usb-id for Dell branded EM7455 (Desnes Nunes) [2184064] - thunderbolt: Explicitly enable lane adapter hotplug events at startup (Desnes Nunes) [2184064] - media: flexcop-usb: use usb_endpoint_maxp() (Desnes Nunes) [2184064] - media: flexcop-usb: clean up URB initialisation (Desnes Nunes) [2184064] - media: flexcop-usb: clean up endpoint sanity checks (Desnes Nunes) [2184064] - media: flexcop-usb: fix endpoint type check (Desnes Nunes) [2184064] - media: flexcop-usb: sanity checking of endpoint type (Desnes Nunes) [2184064] - media: dib0700: fix rc endpoint lookup (Desnes Nunes) [2184064] - media: flexcop-usb: fix endpoint sanity check (Desnes Nunes) [2184064] - media: b2c2-flexcop-usb: add sanity checking (Desnes Nunes) [2184064] - media: flexcop-usb: fix NULL-ptr deref in flexcop_usb_transfer_init() (Desnes Nunes) [2184064] - media: usb/dvb-usb-v2: fix repeated words in comments (Desnes Nunes) [2184064] - thunderbolt: Use dev_err_probe() (Desnes Nunes) [2184064] - thunderbolt: Convert to use sysfs_emit()/sysfs_emit_at() APIs (Desnes Nunes) [2184064] - Revert "usb: storage: Add quirk for Samsung Fit flash" (Desnes Nunes) [2184064] - USB: add RESET_RESUME quirk for NVIDIA Jetson devices in RCM (Desnes Nunes) [2184064] - media: uvcvideo: move uvc_format_desc to common header (Desnes Nunes) [2184064] - media: uvcvideo: Add UVC_GUID_FORMAT_H265 (Desnes Nunes) [2184064] - media: v4l: move helper functions for fractions from uvc to v4l2-common (Desnes Nunes) [2184064] - xhci: remove unused lpm_failed_dev member from struct xhci_hcd (Desnes Nunes) [2184064] - xhci: remove unused command member from struct xhci_hcd struct (Desnes Nunes) [2184064] - xhci: show fault reason for a failed enable slot command (Desnes Nunes) [2184064] - xhci: Don't show warning for reinit on known broken suspend (Desnes Nunes) [2184064] - xhci: dbc: Fix memory leak in xhci_alloc_dbc() (Desnes Nunes) [2184064] - usb: host: xhci: Fix potential memory leak in xhci_alloc_stream_info() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up driver prefix (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: move driver structure (Desnes Nunes) [2184064] - USB: serial: make remove callback return void (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up attribute visibility logic (Desnes Nunes) [2184064] - USB: serial: console: move mutex_unlock() before usb_serial_put() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: convert to use dev_groups (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: add support for HP and HA devices (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: simplify divisor handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: assume hi-speed type (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up baudrate request (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up attribute handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up modem-status handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: tighten device-type detection (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: rename channel index (Desnes Nunes) [2184064] - USB: serial: kl5kusb105: use usb_control_msg_recv() and usb_control_msg_send() (Desnes Nunes) [2184064] - USB: serial: keyspan_pda: use usb_control_msg_recv() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: use usb_control_msg_recv() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: include FT2232D in type string (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: rename chip types (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: drop redundant chip type comments (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up chip type enum (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: fix 300 bps rate for SIO (Desnes Nunes) [2184064] - usb: typec: intel_pmc_mux: Use the helper acpi_dev_get_memory_resources() (Desnes Nunes) [2184064] - usb: misc: usb3503: call clk_disable_unprepare in the error handling (Desnes Nunes) [2184064] - usb: misc: uss720: fix uninitialized variable rlen (Desnes Nunes) [2184064] - thunderbolt: debugfs: Fix spelling mistakes in seq_puts text (Desnes Nunes) [2184064] - thunderbolt: Add support for ASMedia NVM image format (Desnes Nunes) [2184064] - thunderbolt: Move vendor specific NVM handling into nvm.c (Desnes Nunes) [2184064] - thunderbolt: Provide tb_retimer_nvm_read() analogous to tb_switch_nvm_read() (Desnes Nunes) [2184064] - thunderbolt: Rename and make nvm_read() available for other files (Desnes Nunes) [2184064] - thunderbolt: Extend NVM version fields to 32-bits (Desnes Nunes) [2184064] - thunderbolt: Allow NVM upgrade of USB4 host routers (Desnes Nunes) [2184064] - scsi: uas: Drop DID_TARGET_FAILURE use (Desnes Nunes) [2184064] - usb: clean up after dropping driver registration log spam (Desnes Nunes) [2184064] - USB: host: ehci-atmel: Add support for HSIC phy (Desnes Nunes) [2184064] - dt-bindings: usb: atmel: add USB PHY type property (Desnes Nunes) [2184064] - USB: xhci: make xhci_get_endpoint_address static (Desnes Nunes) [2184064] - thunderbolt: Add support for receiver lane margining (Desnes Nunes) [2184064] - thunderbolt: Add helper to check if CL states are enabled on port (Desnes Nunes) [2184064] - thunderbolt: Pass CL state bitmask to tb_port_clx_supported() (Desnes Nunes) [2184064] - thunderbolt: Move port CL state functions into correct place in switch.c (Desnes Nunes) [2184064] - thunderbolt: Move tb_xdomain_parent() to tb.h (Desnes Nunes) [2184064] - USB: hcd-pci: Drop the unused id parameter from usb_hcd_pci_probe() (Desnes Nunes) [2184064] - USB: FHCI: Switch to GPIO descriptors (Desnes Nunes) [2184064] - net: thunderbolt: Update module description with mention of USB4 (Desnes Nunes) [2184064] - net: thunderbolt: Convert to use SPDX identifier (Desnes Nunes) [2184064] - net: thunderbolt: Enable full end-to-end flow control (Desnes Nunes) [2184064] - net: thunderbolt: Align the driver to the USB4 networking spec (Desnes Nunes) [2184064] - net: thunderbolt: Add comment clarifying prtcstns flags (Desnes Nunes) [2184064] - thunderbolt: Add back Intel Falcon Ridge end-to-end flow control workaround (Desnes Nunes) [2184064] - thunderbolt: Make iommu_dma_protection more accurate (Desnes Nunes) [2184064] - iommu: Add capability for pre-boot DMA protection (Desnes Nunes) [2184064] - iommu: Introduce device_iommu_capable() (Desnes Nunes) [2184064] - thunderbolt: Show link type for XDomain connections too (Desnes Nunes) [2184064] - thunderbolt: Add KUnit test for devices with no DisplayPort adapters (Desnes Nunes) [2184064] - thunderbolt: Add support for XDomain lane bonding (Desnes Nunes) [2184064] - thunderbolt: Split setting link width and lane bonding into own functions (Desnes Nunes) [2184064] - thunderbolt: Move tb_port_state() prototype to correct place (Desnes Nunes) [2184064] - thunderbolt: Fix typo in comment (Desnes Nunes) [2184064] - thunderbolt: Replace usage of found with dedicated list iterator variable (Desnes Nunes) [2184064] - net: thunderbolt: Enable DMA paths only after rings are enabled (Desnes Nunes) [2184064] - usb: reduce kernel log spam on driver registration (Desnes Nunes) [2184064] - usb: host: xhci-plat: suspend/resume clks for brcm (Desnes Nunes) [2184064] - usb: host: xhci-plat: suspend and resume clocks (Desnes Nunes) [2184064] - usb: host: Initiate urb ep with udev ep0 (Desnes Nunes) [2184064] - usb: ehci: Use endpoint in URB to get maxpacket (Desnes Nunes) [2184064] - dt-bindings: usb: Add missing (unevaluated|additional)Properties on child nodes (Desnes Nunes) [2184064] - dt-bindings: usb: Add DT bindings for STUSB160x Type-C controller (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Sonix Technology (Desnes Nunes) [2184064] - media: uvcvideo: Use entity get_cur in uvc_ctrl_set (Desnes Nunes) [2184064] - media: uvcvideo: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - media: uvcvideo: Use indexed loops in uvc_ctrl_init_ctrl() (Desnes Nunes) [2184064] - media: uvcvideo: Fix invalid pointer in uvc_ctrl_init_ctrl() (Desnes Nunes) [2184064] - media: uvcvideo: Remove unneeded goto (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Acer EasyCamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Quanta cameras (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Chicony Easycamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Chicony Easycamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Quanta UVC Webcam (Desnes Nunes) [2184064] - media: uvcvideo: Add support for per-device control mapping overrides (Desnes Nunes) [2184064] - media: uvcvideo: Add missing value for power_line_frequency (Desnes Nunes) [2184064] - media: uvcvideo: Replace broken URL (Desnes Nunes) [2184064] - media: uvcvideo: Fix comment blocks style (Desnes Nunes) [2184064] - media: uvcvideo: refactor __uvc_ctrl_add_mapping (Desnes Nunes) [2184064] - media: technisat-usb2: Fix comment typo (Desnes Nunes) [2184064] - media: tm6000: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - media: gspca: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - thunderbolt: Add support for Intel Meteor Lake (Desnes Nunes) [2184064] - thunderbolt: Add comment where Thunderbolt 4 PCI IDs start (Desnes Nunes) [2184064] - usb/hcd: Fix dma_map_sg error check (Desnes Nunes) [2184064] - usb: move from strlcpy with unused retval to strscpy (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Fix CC PHY noise filter of voltage level (Desnes Nunes) [2184064] - usb: typec: tcpci: Move function "tcpci_to_typec_cc" to common (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add compatible id with rt1715 (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add initial phy setting (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add regulator support when source vbus (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Fix vendor setting when set vconn (Desnes Nunes) [2184064] - dt-bindings usb: typec: rt1711h: Add binding for Richtek RT1711H (Desnes Nunes) [2184064] - usb: common: debug: Check non-standard control requests (Desnes Nunes) [2184064] - usb: typec: ucsi: stm32g0: Fix spelling mistake "booloader" -> "bootloader" (Desnes Nunes) [2184064] - usb: common: usb-conn-gpio: Simplify some error message (Desnes Nunes) [2184064] - scsi: target: iscsi: Fix an error message in iscsi_check_key() (Maurizio Lombardi) [2186500] - scsi: target: core: Fix warning on RT kernels (Maurizio Lombardi) [2186500] - scsi: target: core: Remove unused variable 'unit_serial_len' (Maurizio Lombardi) [2186500] - scsi: target: Remove the unused function transport_lba_64_ext() (Maurizio Lombardi) [2186500] - fix iov_iter_bvec() "direction" argument (Maurizio Lombardi) [2186500] - scsi: target: tcm_loop: Fix possible name leak in tcm_loop_setup_hba_bus() (Maurizio Lombardi) [2186500] - scsi: target: core: New key must be used for moved PR (Maurizio Lombardi) [2186500] - scsi: target: core: UA on all LUNs after reset (Maurizio Lombardi) [2186500] - scsi: target: core: Abort all preempted regs if requested (Maurizio Lombardi) [2186500] - scsi: target: core: Fix memory leak in preempt_and_abort (Maurizio Lombardi) [2186500] - scsi: target: core: Fix preempt and abort for allreg res (Maurizio Lombardi) [2186500] - scsi: target: Remove unused se_tmr_req_cache declaration (Maurizio Lombardi) [2186500] - scsi: target: alua: Do not report emtpy port group (Maurizio Lombardi) [2186500] - scsi: target: core: Set MULTIP bit for se_device with multiple ports (Maurizio Lombardi) [2186500] - scsi: target: pscsi: Remove repeated word "calling" (Maurizio Lombardi) [2186500] - scsi: target: core: De-RCU of se_lun and se_lun acl (Maurizio Lombardi) [2186500] - scsi: target: core: Fix race during ACL removal (Maurizio Lombardi) [2186500] - scsi: target: Remove XDWRITEREAD emulated support (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Do not require target authentication (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Allow AuthMethod=None (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Support base64 in CHAP (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Add support for extended CDB AHS (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Fix clang -Wformat warnings (Maurizio Lombardi) [2186500] - scsi: target: Remove incorrect zero blocks WRITE_SAME check (Maurizio Lombardi) [2186500] - scsi: target: Remove duplicate "the" (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Fix NULL pointer dereference in iscsi_conn_auth_required() (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Control authentication per ACL (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Extract auth functions (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Add upcast helpers (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Avoid holding XArray lock when calling lock_page (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_session to iscsit_session (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_conn to iscsit_conn (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_cmd to iscsit_cmd (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Fix possible data corruption (Maurizio Lombardi) [2186500] - scsi: target: core: Silence the message about unknown VPD pages (Maurizio Lombardi) [2186500] - target: remove an incorrect unmap zeroes data deduction (Maurizio Lombardi) [2186500] - scsi: target: Fix incorrect use of cpumask_t (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Fix possible page UAF (Maurizio Lombardi) [2186500] - scsi: target: Add iscsi/cpus_allowed_list in configfs (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Make cmd_ring_size changeable via configfs (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Make sure the np under each tpg is unique (Maurizio Lombardi) [2186500] - scsi: target: configfs: Delete unnecessary checks for NULL (Maurizio Lombardi) [2186500] - scsi: target: core: Use RCU helpers for INQUIRY t10_alua_tg_pt_gp (Maurizio Lombardi) [2186500] - scsi: target: core: Remove from tmr_list during LUN unlink (Maurizio Lombardi) [2186500] - scsi: target: core: Stop using bdevname() (Maurizio Lombardi) [2186500] - scsi: target: Perform ALUA group changes in one step (Maurizio Lombardi) [2186500] - scsi: target: Replace lun_tg_pt_gp_lock with rcu in I/O path (Maurizio Lombardi) [2186500] - scsi: target: Fix alua_tg_pt_gps_count tracking (Maurizio Lombardi) [2186500] - scsi: target: Fix ordered tag handling (Maurizio Lombardi) [2186500] - scsi: target: Fix ordered CMD_T_SENT handling (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Allocate zeroed pages for data area (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Use struct_size() helper in kmalloc() (Maurizio Lombardi) [2186500] - scsi: target: sbp: Replace enable attr with ops.enable (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Replace tpg enable attr with ops.enable (Maurizio Lombardi) [2186500] - scsi: target: core: Add common tpg/enable attribute (Maurizio Lombardi) [2186500] - scsi: target: core: Make logs less verbose (Maurizio Lombardi) [2186500] - scsi: target: Remove unused function arguments (Maurizio Lombardi) [2186500] - scsi: target: Fix spelling mistake "CONFLIFT" -> "CONFLICT" (Maurizio Lombardi) [2186500] - dm: don't lock fs when the map is NULL in process of resume (Benjamin Marzinski) [2192702] - dm flakey: add an "error_reads" option (Benjamin Marzinski) [2192702] - dm flakey: remove trailing space in the table line (Benjamin Marzinski) [2192702] - dm flakey: fix a crash with invalid table line (Benjamin Marzinski) [2192702] - dm ioctl: fix nested locking in table_clear() to remove deadlock concern (Benjamin Marzinski) [2192702] - dm: unexport dm_get_queue_limits() (Benjamin Marzinski) [2192702] - dm: add helper macro for simple DM target module init and exit (Benjamin Marzinski) [2192702] - dm raid: remove unused d variable (Benjamin Marzinski) [2192702] - dm mirror: add DMERR message if alloc_workqueue fails (Benjamin Marzinski) [2192702] - dm: push error reporting down to dm_register_target() (Benjamin Marzinski) [2192702] - dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path (Benjamin Marzinski) [2192702] - dm error: add discard support (Benjamin Marzinski) [2192702] - dm zero: add discard support (Benjamin Marzinski) [2192702] - dm table: allow targets without devices to set ->io_hints (Benjamin Marzinski) [2192702] - dm verity: fix error handling for check_at_most_once on FEC (Benjamin Marzinski) [2192702] - dm thin: speed up cell_defer_no_holder() (Benjamin Marzinski) [2192702] - dm bufio: don't bug for clear developer oversight (Benjamin Marzinski) [2192702] - dm bufio: never crash if dm_bufio_in_request() (Benjamin Marzinski) [2192702] - dm bufio: use WARN_ON in dm_bufio_client_destroy and dm_bufio_exit (Benjamin Marzinski) [2192702] - dm bufio: remove unused dm_bufio_release_move interface (Benjamin Marzinski) [2192702] - dm stats: check for and propagate alloc_percpu failure (Benjamin Marzinski) [2192702] - dm crypt: avoid accessing uninitialized tasklet (Benjamin Marzinski) [2192702] - dm crypt: add cond_resched() to dmcrypt_write() (Benjamin Marzinski) [2192702] - dm thin: fix deadlock when swapping to thin device (Benjamin Marzinski) [2192702] - units: add the HZ macros (Jocelyn Falempe) [2160451] - isystem: ship and use stdarg.h (Jocelyn Falempe) [2160451] - i915: Move list_count() to list.h as list_count_nodes() for broader use (Jocelyn Falempe) [2160451] - resource: Convert DEFINE_RES_NAMED() to be compound literal (Jocelyn Falempe) [2160451] - media: videobuf2: Assert held reservation lock for dma-buf mmapping (Jocelyn Falempe) [2160451] - media: videobuf2: Stop using internal dma-buf lock (Jocelyn Falempe) [2160451] - media: videobuf2: Prepare to dynamic dma-buf locking specification (Jocelyn Falempe) [2160451] - media: videobuf2-dma-contig.c: remove spurious 'b' in message (Jocelyn Falempe) [2160451] - dma-buf: Add unlocked variant of attachment-mapping functions (Jocelyn Falempe) [2160451] - dma-buf: Add unlocked variant of vmapping functions (Jocelyn Falempe) [2160451] - kbuild: simplify access to the kernel's version (Jocelyn Falempe) [2160451] - hwmon: (core) Add support for rated attributes (Jocelyn Falempe) [2160451] - ACPI: video: Allow GPU drivers to report no panels (Jocelyn Falempe) [2160451] - drm: Move nomodeset kernel parameter to drivers/video (Jocelyn Falempe) [2160451] - PM: core: Add EXPORT[_GPL]_SIMPLE_DEV_PM_OPS macros (Jocelyn Falempe) [2160451] - PM: runtime: Add DEFINE_RUNTIME_DEV_PM_OPS() macro (Jocelyn Falempe) [2160451] - ACPI: video: Make backlight class device registration a separate step (v2) (Jocelyn Falempe) [2160451] - ACPI: video: Add acpi_video_backlight_use_native() helper (Jocelyn Falempe) [2160451] - scsi: sched/wait: Add wait_event_lock_irq_timeout for TASK_UNINTERRUPTIBLE usage (Jocelyn Falempe) [2160451] - iosys-map: Add IOSYS_MAP_INIT_VADDR_IOMEM() (Jocelyn Falempe) [2160451] - perf branch: Fix interpretation of branch records (Michael Petlan) [2086826] - perf/x86/amd/lbr: Adjust LBR regardless of filtering (Michael Petlan) [2086826] - perf/x86/utils: Fix uninitialized var in get_branch_type() (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 branch speculation info support (Michael Petlan) [2086826] - perf/core: Add speculation info to branch entries (Michael Petlan) [2086826] - perf/x86/amd/lbr: Use fusion-aware branch classifier (Michael Petlan) [2086826] - perf/x86: Make branch classifier fusion-aware (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 software branch filter support (Michael Petlan) [2086826] - perf/x86: Move branch classifier (Michael Petlan) [2086826] - perf: Add irq and exception return branch types (Michael Petlan) [2086826] - perf/x86/intel/ds: Check return values of insn decoder functions (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 hardware branch filter support (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 branch record support (Michael Petlan) [2086826] - perf/x86/amd/lbr: Detect LbrExtV2 support (Michael Petlan) [2086826] - x86/cpufeatures: Add LbrExtV2 feature bit (Michael Petlan) [2086826] - perf/x86/amd/core: Add generic branch record interfaces (Michael Petlan) [2086826] - perf/x86/amd/core: Refactor branch attributes (Michael Petlan) [2086826] - perf/x86/amd/brs: Move feature-specific functions (Michael Petlan) [2086826] - scsi: zfcp: Trace when request remove fails after qdio send fails (Tobias Huschle) [2159733] - scsi: zfcp: Change the type of all fsf request id fields and variables to u64 (Tobias Huschle) [2159733] - scsi: zfcp: Make the type for accessing request hashtable buckets size_t (Tobias Huschle) [2159733] - scsi: zfcp: Drop redundant "the" in the comments (Tobias Huschle) [2159733] - s390/qeth: Convert sprintf/snprintf to scnprintf (Tobias Huschle) [2159732] - s390/qeth: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [2159732] - s390/qeth: Use constant for IP address buffers (Tobias Huschle) [2159732] - s390/ctcm: cleanup indenting (Tobias Huschle) [2159732] - s390/ipl: add loadparm parameter to eckd ipl/reipl data (Tobias Huschle) [2159689] - s390/ipl: add DEFINE_GENERIC_LOADPARM() (Tobias Huschle) [2159689] - s390/ipl: use octal values instead of S_* macros (Tobias Huschle) [2159689] - s390/ipl: add eckd support (Tobias Huschle) [2159689] - net/iucv: Fix size of interrupt data (Tobias Huschle) [2192507] - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex (Waiman Long) [2176760] - workqueue: make sysfs of unbound kworker cpumask more clever (Waiman Long) [2176760] - workqueue: Rename "delayed" (delayed by active management) to "inactive" (Waiman Long) [2176760] - workqueue: Kick a worker based on the actual activation of delayed works (Waiman Long) [2176760] - workqueue: fix UAF in pwq_unbound_release_workfn() (Waiman Long) [2176760] - workqueue: fix a piece of comment about reserved bits for work flags (Waiman Long) [2176760] - workqueue: void unneeded requeuing the pwq in rescuer thread (Waiman Long) [2176760] - mm/memcg: Fix mem_cgroup_id_get_online() underflow problem (Waiman Long) [2176760] - net: fix NULL pointer in skb_segment_list (Paolo Abeni) [2188595] - net: stream: purge sk_error_queue in sk_stream_kill_queues() (Paolo Abeni) [2188595] - skbuff: Account for tail adjustment during pull operations (Paolo Abeni) [2188595] - net: vmxnet3: Fix NULL pointer dereference in vmxnet3_rq_rx_complete() (Seiji Nishikawa) [2186419] - tipc: add an extra conn_get in tipc_conn_alloc (Xin Long) [2177374] {CVE-2023-1382} - tipc: set con sock in tipc_conn_alloc (Xin Long) [2177374] {CVE-2023-1382} - net: sched: fix memory leak in tcindex_set_parms (Davide Caratti) [2181874] - net/sched: tcindex: search key must be 16 bits (Davide Caratti) [2181874] - net/sched: tcindex: update imperfect hash filters respecting rcu (Davide Caratti) [2181874] {CVE-2023-1281} - crypto: rng - Use a different crypto_rng for reseeding (Herbert Xu) [2193410] - media: rc: Fix use-after-free bugs caused by ene_tx_irqsim() (Ricardo Robaina) [2174409] {CVE-2023-1118}- xfs: assert in xfs_btree_del_cursor should take into account error (Andrey Albershteyn) [2183168] - xfs: prevent a UAF when log IO errors race with unmount (Andrey Albershteyn) [2183168] - xfs: fix NULL pointer dereference in xfs_getbmap() (Andrey Albershteyn) [2183168] - xfs: avoid a UAF when log intent item recovery fails (Andrey Albershteyn) [2183168] - xfs: fix memory leak in xfs_errortag_init (Andrey Albershteyn) [2183168] - xfs: Fix unreferenced object reported by kmemleak in xfs_sysfs_init() (Andrey Albershteyn) [2183168] - xfs: fix sb write verify for lazysbcount (Andrey Albershteyn) [2183168] - xfs: invalidate block device page cache during unmount (Andrey Albershteyn) [2183168] - xfs: invalidate xfs_bufs when allocating cow extents (Andrey Albershteyn) [2183168] - xfs: dquot shrinker doesn't check for XFS_DQFLAG_FREEING (Andrey Albershteyn) [2183168] - xfs: fix intermittent hang during quotacheck (Andrey Albershteyn) [2183168] - xfs: fix exception caused by unexpected illegal bestcount in leaf dir (Andrey Albershteyn) [2183168] - xfs: fix super block buf log item UAF during force shutdown (Andrey Albershteyn) [2183168] - xfs: fix uninitialized variable access (Andrey Albershteyn) [2183168] - xfs: fix potential log item leak (Andrey Albershteyn) [2183168] - xfs: fix inode reservation space for removing transaction (Andrey Albershteyn) [2183168] - xfs: fix extent busy updating (Andrey Albershteyn) [2183168] - xfs: fix low space alloc deadlock (Andrey Albershteyn) [2183168] - xfs: purge dquots after inode walk fails during quotacheck (Andrey Albershteyn) [2183168] - xfs: get root inode correctly at bulkstat (Andrey Albershteyn) [2183168] - iomap: iomap: fix memory corruption when recording errors during writeback (Andrey Albershteyn) [2183168] - xfs: attach dquots to inode before reading data/cow fork mappings (Andrey Albershteyn) [2183168] - xfs: get rid of assert from xfs_btree_islastblock (Andrey Albershteyn) [2183168] - xfs: fix use-after-free in xattr node block inactivation (Andrey Albershteyn) [2183168] - xfs: pass the correct cursor to xfs_iomap_prealloc_size (Andrey Albershteyn) [2183168] - xfs: don't report reserved bnobt space as available (Andrey Albershteyn) [2183168] - xfs: fix overfilling of reserve pool (Andrey Albershteyn) [2183168] - xfs: always succeed at setting the reserve pool size (Andrey Albershteyn) [2183168] - xfs: remove infinite loop when reserving free block pool (Andrey Albershteyn) [2166567 2183168] - xfs: don't include bnobt blocks when reserving free block pool (Andrey Albershteyn) [2183168] - xfs: document the XFS_ALLOC_AGFL_RESERVE constant (Andrey Albershteyn) [2183168] - xfs: prevent UAF in xfs_log_item_in_current_chkpt (Andrey Albershteyn) [2183168] - xfs: fix incorrect i_nlink caused by inode racing (Andrey Albershteyn) [2183168] - xfs: fix incorrect error-out in xfs_remove (Andrey Albershteyn) [2183168] - KVM: s390: GISA: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: disable migration mode when dirty tracking is disabled (Cédric Le Goater) [2169294] - KVM: s390: Unwind kvm_arch_init() piece-by-piece() if a step fails (Cédric Le Goater) [2169294] - iommu/s390: Make attach succeed even if the device is in error state (Cédric Le Goater) [2169294] - KVM: s390: pci: Fix allocation size of aift kzdev elements (Cédric Le Goater) [2169294] - iommu/s390: Fix incorrect aperture check (Cédric Le Goater) [2169294] - KVM: s390: VSIE: sort out virtual/physical address in pin_guest_page (Cédric Le Goater) [2169294] - KVM: s390: pv: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: sida: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - iommu/s390: Fail probe for non-PCI devices (Cédric Le Goater) [2169294] - PCI/AER: Remove redundant Device Control Error Reporting Enable (Myron Stowe) [2180894] - PCI/AER: Configure ECRC only if AER is native (Myron Stowe) [2180894] - PCI/AER: Iterate over error counters instead of error strings (Myron Stowe) [2180894] - PCI/AER: Enable error reporting when AER is native (Myron Stowe) [2180894] - PCI/AER: Configure ECRC for every device (Myron Stowe) [2180894] - PCI/AER: Clear MULTI_ERR_COR/UNCOR_RCV bits (Myron Stowe) [2180894] - PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions (Myron Stowe) [2180894] - PCI/AER: Use consistent format when printing PCI device (Myron Stowe) [2180894] - PCI/sysfs: Rely on lengths from scnprintf(), dsm_label_utf16s_to_utf8s() (Myron Stowe) [2180894] - PCI/sysfs: Fix dsm_label_utf16s_to_utf8s() buffer overrun (Myron Stowe) [2180894] - mlxsw: minimal: Fix deadlock in ports creation (Petr Oros) [2177956] - mlxsw: core: Fix use-after-free calling devl_unlock() in mlxsw_core_bus_device_unregister() (Petr Oros) [2177956] - net: devlink: convert reload command to take implicit devlink->lock (Petr Oros) [2177956] - mlxsw: convert driver to use unlocked devlink API during init/fini (Petr Oros) [2177956] - mlxsw: Narrow the critical section of devl_lock during ports creation/removal (Petr Oros) [2177956] - ice: sleep, don't busy-wait, in the SQ send retry loop (Michal Schmidt) [2184013] - ice: remove unused buffer copy code in ice_sq_send_cmd_retry() (Michal Schmidt) [2184013] - ice: sleep, don't busy-wait, for ICE_CTL_Q_SQ_CMD_TIMEOUT (Michal Schmidt) [2184013] - ice: remove ice_ctl_q_info::sq_cmd_timeout (Michal Schmidt) [2184013] - ice: increase the GNSS data polling interval to 20 ms (Michal Schmidt) [2184013] - ice: do not busy-wait to read GNSS data (Michal Schmidt) [2184013] - enic: Use irq_update_affinity_hint() (Michal Schmidt) [2101515] - ethernet:enic: Fix a use after free bug in enic_hard_start_xmit (Michal Schmidt) [2101515] - net: enic: Cure the enic api locking trainwreck (Michal Schmidt) [2101515] - enic: switch from 'pci_' to 'dma_' API (Michal Schmidt) [2101515] - enic: convert to new udp_tunnel_nic infra (Michal Schmidt) [2101515] - enic: let core reject the unsupported coalescing parameters (Michal Schmidt) [2101515] - scsi: mpt3sas: Fix an issue when driver is being removed (Tomas Henzl) [2166206] - scsi: mpt3sas: Remove HBA BIOS version in the kernel log (Tomas Henzl) [2166206] - scsi: mpt3sas: Don't print sense pool info twice (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add() (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix a memory leak (Tomas Henzl) [2166206] - scsi: mpt3sas: Demote log level for trace buffer allocation to info (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix possible resource leaks in mpt3sas_transport_port_add() (Tomas Henzl) [2166206] - scsi: mpt3sas: Remove usage of dma_get_required_mask() API (Tomas Henzl) [2166206] - scsi: mpt3sas: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Tomas Henzl) [2166206] - ipmi: msghandler: kABI implementation was wrong (Tony Camuso) [2182345] - hwmon: (xgene) Fix use after free bug in xgene_hwmon_remove due to race condition (Chris von Recklinghausen) [2184583] {CVE-2023-1855} - RDMA/irdma: Add ipv4 check to irdma_find_listener() (Kamal Heib) [2117129 2135976] - RDMA/irdma: Increase iWARP CM default rexmit count (Kamal Heib) [2117129 2135976] - RDMA/irdma: Fix memory leak of PBLE objects (Kamal Heib) [2117129 2135976] - RDMA/irdma: Do not generate SW completions for NOPs (Kamal Heib) [2117129 2135976] - RDMA/irdma: Remove a redundant irdma_arp_table() call (Kamal Heib) [2117129 2135976] - migrate: grab the compound head in migration_entry_wait_on_locked (Nico Pache) [2188249] - module: Don't wait for GOING modules (Mark Langsdorf) [1964563] - redhat/configs: Fix DEBUG_BLK_CGROUP and BFQ_CGROUP_DEBUG configs (Vladis Dronov) - x86/MCE/AMD: Clear DFR errors found in THR handler (Prarit Bhargava) [2190279]- iommu/amd: Update amd_iommu_fault structure to include PCI seg ID (Jerry Snitselaar) [2117775] - iommu/amd: Update device_state structure to include PCI seg ID (Jerry Snitselaar) [2117775] - iommu/amd: Print PCI segment ID in error log messages (Jerry Snitselaar) [2117775] - iommu/amd: Add PCI segment support for ivrs_[ioapic/hpet/acpihid] commands (Jerry Snitselaar) [2117775] - iommu/amd: Specify PCI segment ID when getting pci device (Jerry Snitselaar) [2117775] - iommu/amd: Include PCI segment ID when initialize IOMMU (Jerry Snitselaar) [2117775] - iommu/amd: Introduce get_device_sbdf_id() helper function (Jerry Snitselaar) [2117775] - iommu/amd: Flush upto last_bdf only (Jerry Snitselaar) [2117775] - iommu/amd: Remove global amd_iommu_[dev_table/alias_table/last_bdf] (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dev_entry_bit() and get_dev_entry_bit() (Jerry Snitselaar) [2117775] - iommu/amd: Update (un)init_device_table_dma() (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dte_irq_entry (Jerry Snitselaar) [2117775] - iommu/amd: Update dump_dte_entry (Jerry Snitselaar) [2117775] - iommu/amd: Update iommu_ignore_device (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dte_entry and clear_dte_entry (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use per PCI segment rlookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Update alloc_irq_table and alloc_irq_index (Jerry Snitselaar) [2117775] - iommu/amd: Update amd_irte_ops functions (Jerry Snitselaar) [2117775] - iommu/amd: Introduce struct amd_ir_data.iommu (Jerry Snitselaar) [2117775] - iommu/amd: Update irq_remapping_alloc to use IOMMU lookup helper function (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use rlookup_amd_iommu helper function (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use per PCI segment irq_lookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment rlookup table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment alias table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment device table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment last_bdf (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment unity map list (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment alias_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment old_dev_tbl_cpy (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment dev_data_list (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment irq_lookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment rlookup table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment device table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce pci segment structure (Jerry Snitselaar) [2117775] - iommu/amd: Update struct iommu_dev_data definition (Jerry Snitselaar) [2117775] - redhat: configs: Enable CONFIG_INTEL_IOMMU_PERF_EVENTS (Jerry Snitselaar) [2176995] - iommu/vt-d: Fix an IOMMU perfmon warning when CPU hotplug (Jerry Snitselaar) [2176995] - iommu/vt-d: Enable IOMMU perfmon support (Jerry Snitselaar) [2176995] - iommu/vt-d: Add IOMMU perfmon overflow handler support (Jerry Snitselaar) [2176995] - iommu/vt-d: Support cpumask for IOMMU perfmon (Jerry Snitselaar) [2176995] - iommu/vt-d: Add IOMMU perfmon support (Jerry Snitselaar) [2176995] - iommu/vt-d: Support Enhanced Command Interface (Jerry Snitselaar) [2176995] - iommu/vt-d: Retrieve IOMMU perfmon capability information (Jerry Snitselaar) [2176995] - iommu/vt-d: Fix error handling in sva enable/disable paths (Jerry Snitselaar) [2181397] - iommu/vt-d: Support size of the register set in DRHD (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow zero SAGAW if second-stage not supported (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove include/linux/intel-svm.h (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow to use flush-queue when first level is default (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PASID directory pointer coherency (Jerry Snitselaar) [2181397] - iommu/vt-d: Set No Execute Enable bit in PASID table entry (Jerry Snitselaar) [2181397] - iommu: Remove SVM_FLAG_SUPERVISOR_MODE support (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in prq_event_thread() (Jerry Snitselaar) [2181397] - PCI: Enable PASID only when ACS RR & UF enabled on upstream path (Jerry Snitselaar) [2181397] - iommu/vt-d: Set SRE bit only when hardware has SRS cap (Jerry Snitselaar) [2181397] - iommu/vt-d: Preset Access bit for IOVA in FL non-leaf paging entries (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove pasid_set_eafe() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unnecessary SVA data accesses in page fault path (Jerry Snitselaar) [2181397] - iommu/vt-d: Add RPLS to quirk list to skip TE disabling (Jerry Snitselaar) [2181397] - iommu: Remove guest pasid related interfaces and definitions (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove guest pasid related callbacks (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused PASID_DISABLED (Jerry Snitselaar) [2181397] - iommu/vt-d: Clean up unused PASID updating functions (Jerry Snitselaar) [2181397] - iommu/vtd: Replace acpi_bus_get_device() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused dma_to_mm_pfn function (Jerry Snitselaar) [2181397] - iommu/vt-d: Use bitmap_zalloc() when applicable (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused macros (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow NVS regions in arch_rmrr_sanity_check() (Jerry Snitselaar) [2181397] - iommu/vt-d: Use rcu_lock in get_resv_regions (Jerry Snitselaar) [2181397] - iommu: Add gfp parameter to iommu_alloc_resv_region (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in dmar_dev_scope_init() (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in has_external_pci() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove iova_cache_get/put() (Jerry Snitselaar) [2181397] - iommu/vt-d: Add missing "__init" for rmrr_sanity_check() (Jerry Snitselaar) [2181397] - iommu/arm-smmu: Force identity domains for legacy binding (Jerry Snitselaar) [2181397] - iommu/arm-smmu-v3: Properly handle the return value of arm_smmu_cmdq_build_cmd() (Jerry Snitselaar) [2181397] - iommu/arm-smmu-v3: Stop pre-zeroing batch commands in arm_smmu_atc_inv_master() (Jerry Snitselaar) [2181397] - iommu/arm-smmu: Add clk_bulk_{prepare/unprepare} to system pm callbacks (Jerry Snitselaar) [2181397] - iommu: Make sysfs robust for non-API groups (Jerry Snitselaar) [2181397] - iommu: Use right way to retrieve iommu_ops (Jerry Snitselaar) [2181397] - iommu: Remove apply_resv_region (Jerry Snitselaar) [2181397] - iommu/dma: Explicitly sort PCI DMA windows (Jerry Snitselaar) [2181397] - iommu: Do not dereference fwnode in struct device (Jerry Snitselaar) [2181397] - iommu: Remove duplicate ida_free in iommu_group_alloc (Jerry Snitselaar) [2181397] - iommu: Directly use ida_alloc()/free() (Jerry Snitselaar) [2181397] - iommu/iova: change IOVA_MAG_SIZE to 127 to save memory (Jerry Snitselaar) [2181397] - iommu/iova: Fix alloc iova overflows issue (Jerry Snitselaar) [2181397] - iova: Remove iovad->rcaches check in iova_rcache_get() (Jerry Snitselaar) [2181397] - iova: Remove magazine BUG_ON() checks (Jerry Snitselaar) [2181397] - iova: Remove some magazine pointer NULL checks (Jerry Snitselaar) [2181397] - swiotlb: fix a braino in the alignment check fix (Jerry Snitselaar) [2181397] - swiotlb: fix slot alignment checks (Jerry Snitselaar) [2181397] - swiotlb: use wrap_area_index() instead of open-coding it (Jerry Snitselaar) [2181397] - swiotlb: fix the deadlock in swiotlb_do_find_slots (Jerry Snitselaar) [2181397] - swiotlb: mark swiotlb_memblock_alloc() as __init (Jerry Snitselaar) [2181397] - swiotlb: remove swiotlb_max_segment (Jerry Snitselaar) [2181397] - swiotlb: reduce the swiotlb buffer size on allocation failure (Jerry Snitselaar) [2181397] - swiotlb: replace kmap_atomic() with memcpy_{from,to}_page() (Jerry Snitselaar) [2181397] - swiotlb: don't panic! (Jerry Snitselaar) [2181397] - iommu/vt-d: Avoid superfluous IOTLB tracking in lazy mode (Jerry Snitselaar) [2175620] - iommu/amd: Add map/unmap_pages() iommu_domain_ops callback support (Jerry Snitselaar) [2181397] - iommu/amd/io-pgtable: Implement unmap_pages io_pgtable_ops callback (Jerry Snitselaar) [2181397] - iommu/amd/io-pgtable: Implement map_pages io_pgtable_ops callback (Jerry Snitselaar) [2181397] - iommu/vt-d: Avoid unnecessary global DMA cache invalidation (Jerry Snitselaar) [2176983] - iommu/vt-d: Avoid unnecessary global IRTE cache invalidation (Jerry Snitselaar) [2176983] - iommu/vt-d: Fix buggy QAT device mask (Jerry Snitselaar) [2169568] - iommu/vt-d: Add a fix for devices need extra dtlb flush (Jerry Snitselaar) [2169568] - xfs: fix off-by-one-block in xfs_discard_folio() (Carlos Maiolino) [2112147] - xfs: drop write error injection is unfixable, remove it (Carlos Maiolino) [2112147] - xfs: use iomap_valid method to detect stale cached iomaps (Carlos Maiolino) [2112147] - iomap: write iomap validity checks (Carlos Maiolino) [2112147] - xfs: xfs_bmap_punch_delalloc_range() should take a byte range (Carlos Maiolino) [2112147] - iomap: buffered write failure should not truncate the page cache (Carlos Maiolino) [2112147] - iomap: Export page_cache_seek_hole_data (Carlos Maiolino) [2112147] - xfs,iomap: move delalloc punching to iomap (Carlos Maiolino) [2112147] - xfs: use byte ranges for write cleanup ranges (Carlos Maiolino) [2112147] - xfs: punching delalloc extents on write failure is racy (Carlos Maiolino) [2112147] - xfs: write page faults in iomap are not buffered writes (Carlos Maiolino) [2112147] - iomap: iomap_read_inline_data cleanup (Carlos Maiolino) [2112147] - iomap: Fix inline extent handling in iomap_readpage (Carlos Maiolino) [2112147] - iomap: constify iomap_iter_srcmap (Carlos Maiolino) [2112147] - iomap: rework unshare flag (Carlos Maiolino) [2112147] - iomap: pass an iomap_iter to various buffered I/O helpers (Carlos Maiolino) [2112147] - iomap: remove iomap_apply (Carlos Maiolino) [2112147] - fsdax: Fix infinite loop in dax_iomap_rw() (Carlos Maiolino) [2112147] - fsdax: switch dax_iomap_rw to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_swapfile_activate to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_seek_data to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_seek_hole to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_bmap to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_fiemap to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch __iomap_dio_rw to use iomap_iter (Carlos Maiolino) [2112147] - iomap: support REQ_OP_ZONE_APPEND (Carlos Maiolino) [2112147] - iomap: add a filesystem hook for direct I/O bio submission (Carlos Maiolino) [2112147] - iomap: switch iomap_page_mkwrite to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_zero_range to use iomap_iter (Carlos Maiolino) [2112147] - iomap: Change calling convention for zeroing (Carlos Maiolino) [2112147] - iomap: switch iomap_file_unshare to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_file_buffered_write to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch readahead and readpage to use iomap_iter (Carlos Maiolino) [2112147] - iomap: add the new iomap_iter model (Carlos Maiolino) [2112147] - iomap: fix the iomap_readpage_actor return value for inline data (Carlos Maiolino) [2112147] - iomap: Support inline data with block size < page size (Carlos Maiolino) [2112147] - fs: mark the iomap argument to __block_write_begin_int const (Carlos Maiolino) [2112147] - fsdax: mark the iomap argument to dax_iomap_sector as const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_read_page_sync const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_read_inline_data const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_inline_data_valid const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_inline_data const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_sector const (Carlos Maiolino) [2112147] - ipv6: Fix an uninit variable access bug in __ip6_make_skb() (Hangbin Liu) [2185798] - ipv6: Fix tcp socket connection with DSCP. (Hangbin Liu) [2185798] - ipv6: Fix datagram socket connection with DSCP. (Hangbin Liu) [2185798] - ipv6: avoid use-after-free in ip6_fragment() (Hangbin Liu) [2185798] - ipv6: addrlabel: fix infoleak when sending struct ifaddrlblmsg to network (Hangbin Liu) [2185798] - ipv6: fix WARNING in ip6_route_net_exit_late() (Hangbin Liu) [2185798] - ipv6: ensure sane device mtu in tunnels (Hangbin Liu) [2185798] - KVM: arm64: PMU: Restore the guest's EL0 event counting after migration (Shaoqin Huang) [2175146] - KVM: arm64: Retry fault if vma_lookup() results become invalid (Shaoqin Huang) [2175146] - KVM: arm64: PMU: Don't save PMCR_EL0.{C,P} for the vCPU (Shaoqin Huang) [2175146] - KVM: arm64: PMU: Fix GET_ONE_REG for vPMC regs to return the current value (Shaoqin Huang) [2175146] - KVM: arm64: timers: Convert per-vcpu virtual offset to a global value (Shaoqin Huang) [2175146] - KVM: arm64: Fix non-kerneldoc comments (Shaoqin Huang) [2175146] - arm64/sysreg: clean up some inconsistent indenting (Shaoqin Huang) [2175146] - KVM: arm64: timers: Don't BUG() on unhandled timer trap (Shaoqin Huang) [2175146] - KVM: arm64: Reduce overhead of trapped timer sysreg accesses (Shaoqin Huang) [2175146] - KVM: arm64: Don't arm a hrtimer for an already pending timer (Shaoqin Huang) [2175146] - KVM: arm64: Fix S1PTW handling on RO memslots (Shaoqin Huang) [2175146] - KVM: arm64: Fix typo in comment (Shaoqin Huang) [2175146] - KVM: arm64: Fix pvtime documentation (Shaoqin Huang) [2175146] - KVM: arm64: Fix PAR_TO_HPFAR() to work independently of PA_BITS. (Shaoqin Huang) [2175146] - KVM: arm64: nvhe: Fix build with profile optimization (Shaoqin Huang) [2175146] - fuse: wait for writepages in syncfs (Brian Foster) [2185834] - virtio_fs: Modify format for virtio_fs_direct_access (Brian Foster) [2185834] - virtiofs: delete unused parameter for virtio_fs_cleanup_vqs (Brian Foster) [2185834] - virtiofs: use strscpy for copying the queue name (Brian Foster) [2185834] - virtiofs: propagate sync() to file server (Brian Foster) [2185834] - fuse: add a flag FUSE_SETXATTR_ACL_KILL_SGID to kill SGID (Brian Foster) [2185834] - fuse: extend FUSE_SETXATTR request (Brian Foster) [2185834] - virtiofs: fix userns (Brian Foster) [2185834] - virtiofs: remove useless function (Brian Foster) [2185834] - virtiofs: split requests that exceed virtqueue size (Brian Foster) [2185834] - virtiofs: fix memory leak in virtio_fs_probe() (Brian Foster) [2185834] - virtio_fs: convert to LE accessors (Brian Foster) [2185834] - dmaengine: use sysfs_emit() to instead of scnprintf() (Jerry Snitselaar) [2181398] - dmaengine: Simplify dmaenginem_async_device_register() function (Jerry Snitselaar) [2181398] - dmaengine: idma64: Update bytes_transferred field (Jerry Snitselaar) [2181398] - dmaengine: dw: Move check for paused channel to dwc_get_residue() (Jerry Snitselaar) [2181398] - dmaengine: ptdma: check for null desc before calling pt_cmd_callback (Jerry Snitselaar) [2181398] - dmaengine: idxd: Fix default allowed read buffers value in group (Jerry Snitselaar) [2181398] - dmaengine: idxd: Set traffic class values in GRPCFG on DSA 2.0 (Jerry Snitselaar) [2181398] - ptdma: pt_core_execute_cmd() should use spinlock (Jerry Snitselaar) [2181398] - dmaengine: Fix double increment of client_count in dma_chan_get() (Jerry Snitselaar) [2181398] - dmaengine: ioat: stop mod_timer from resurrecting deleted timer in __cleanup() (Jerry Snitselaar) [2153929] - cifs: set a minimum of 120s for next dns resolution (Ronnie Sahlberg) [2182867] - cifs: use the expiry output of dns_query to schedule next resolution (Ronnie Sahlberg) [2182867] - cifs: sanitize paths in cifs_update_super_prepath. (Ronnie Sahlberg) [2182472] - redhat/configs: Fix incorrect configs location and content (Vladis Dronov) - scsi: megaraid_sas: Fix double kfree() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix fw_crash_buffer_show() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix crash after a double completion (Tomas Henzl) [2163670] - scsi: megaraid_sas: Driver version update to 07.725.01.00-rc1 (Tomas Henzl) [2163670] - scsi: megaraid_sas: Add crash dump mode capability bit in MFI capabilities (Tomas Henzl) [2163670] - scsi: megaraid_sas: Update max supported LD IDs to 240 (Tomas Henzl) [2163670] - scsi: megaraid_sas: Add flexible array member for SGLs (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix some spelling mistakes in comment (Tomas Henzl) [2163670] - scsi: megaraid_sas: Remove unnecessary kfree() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Use irq_set_affinity_and_hint() (Tomas Henzl) [2163670] - scsi: megaraid: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Tomas Henzl) [2163670] - scsi: ses: Handle enclosure with just a primary component gracefully (Tomas Henzl) [2188481] - ipvlan: hold lower dev to avoid possible use-after-free (Davide Caratti) [2188055] - net: macvlan: Use built-in RCU list checking (Davide Caratti) [2188055] - x86/split_lock: Enumerate architectural split lock disable bit (Prarit Bhargava) [2123535] - bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state (Yauheni Kaliuta) [2175160] - hwmon: (coretemp) avoid RDMSR interrupts to isolated CPUs (Marcelo Tosatti) [2158707] - scsi: target: iscsi: Handle abort for WRITE_PENDING cmds (Maurizio Lombardi) [2156588] - scsi: target: iscsit: Fix TAS handling during conn cleanup (Maurizio Lombardi) [2156588]- RDMA/cma: Distinguish between sockaddr_in and sockaddr_in6 by size (Kamal Heib) [2170083] - RDMA/umem: Remove unused 'work' member from struct ib_umem (Kamal Heib) [2170083] - RDMA/restrack: Correct spelling (Kamal Heib) [2170083] - scripts/spelling.txt: add "exsits" pattern and fix typo instances (Kamal Heib) [2170083] - RDMA/cma: Refactor the inbound/outbound path records process flow (Kamal Heib) [2170083] - RDMA/core: Refactor rdma_bind_addr (Kamal Heib) [2170083] - IB/IPoIB: Fix legacy IPoIB due to wrong number of queues (Kamal Heib) [2170076] - RDMA/core: Fix ib block iterator counter overflow (Kamal Heib) [2170076] - RDMA/srp: Move large values to a new enum for gcc13 (Kamal Heib) [2170076] - IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces (Kamal Heib) [2170076] - RDMA/cm: Make QP FLUSHABLE for supported device (Kamal Heib) [2170076] - RDMA: Extend RDMA kernel verbs ABI to support flush (Kamal Heib) [2170076] - RDMA: Extend RDMA user ABI to support flush (Kamal Heib) [2170076] - RDMA/cma: Change RoCE packet life time from 18 to 16 (Kamal Heib) [2170076] - RDMA/srp: Fix error return code in srp_parse_options() (Kamal Heib) [2170076] - RDMA: Extend RDMA kernel ABI to support atomic write (Kamal Heib) [2170076] - RDMA: Extend RDMA user ABI to support atomic write (Kamal Heib) [2170076] - RDMA/umem: remove FOLL_FORCE usage (Kamal Heib) [2170076] - RDMA/nldev: Fix failure to send large messages (Kamal Heib) [2170076] - RDMA/nldev: Add NULL check to silence false warnings (Kamal Heib) [2170076] - RDMA/nldev: Add checks for nla_nest_start() in fill_stat_counter_qps() (Kamal Heib) [2170076] - IB/isert: use the ISCSI_LOGIN_CURRENT_STAGE macro (Kamal Heib) [2170076] - RDMA/nldev: Return "-EAGAIN" if the cm_id isn't from expected port (Kamal Heib) [2170076] - RDMA/core: Make sure "ib_port" is valid when access sysfs node (Kamal Heib) [2170076] - RDMA/restrack: Release MR restrack when delete (Kamal Heib) [2170076] - IB/mad: Don't call to function that might sleep while in atomic context (Kamal Heib) [2170076] - RDMA/core: Fix order of nldev_exit call (Kamal Heib) [2170076] - RDMA/core: fix repeated words in comments (Kamal Heib) [2170076] - IB/iser: open code iser_disconnected_handler (Kamal Heib) [2170076] - IB/iser: add safety checks for state_mutex lock (Kamal Heib) [2170076] - IB/iser: open code iser_conn_state_comp_exch (Kamal Heib) [2170076] - RDMA/opa_vnic: fix spelling typo in comment (Kamal Heib) [2170076] - RDMA/core: return -EOPNOSUPP for ODP unsupported device (Kamal Heib) [2170076] - IB/uverbs: fix the typo of optional (Kamal Heib) [2170076] - treewide: use get_random_u32() when possible (Kamal Heib) [2170070] - treewide: use prandom_u32_max() when possible, part 1 (Kamal Heib) [2170070] - RDMA/core: Clean up a variable name in ib_create_srq_user() (Kamal Heib) [2170070] - RDMA/srp: Support more than 255 rdma ports (Kamal Heib) [2170070] - RDMA/cm: Use DLID from inbound/outbound PathRecords as the datapath DLID (Kamal Heib) [2170070] - RDMA/cma: Multiple path records support with netlink channel (Kamal Heib) [2170070] - RDMA/core: Rename rdma_route.num_paths field to num_pri_alt_paths (Kamal Heib) [2170070] - RDMA/srpt: Use flex array destination for memcpy() (Kamal Heib) [2170070] - IB/cm: Refactor cm_insert_listen() and cm_find_listen() (Kamal Heib) [2170070] - IB/cm: remove cm_id_priv->id.service_mask and service_mask parameter of cm_init_listen() (Kamal Heib) [2170070] - IB/cm: Remove the service_mask parameter from ib_cm_listen() (Kamal Heib) [2170070] - RDMA/core: Remove 'device' argument from rdma_build_skb() (Kamal Heib) [2170070] - RDMA/srp: Use the attribute group mechanism for sysfs attributes (Kamal Heib) [2170070] - RDMA/srp: Handle dev_set_name() failure (Kamal Heib) [2170070] - RDMA/srp: Remove the srp_host.released completion (Kamal Heib) [2170070] - RDMA/srp: Rework the srp_add_port() error path (Kamal Heib) [2170070] - IB: move from strlcpy with unused retval to strscpy (Kamal Heib) [2170070] - treewide: uapi: Replace zero-length arrays with flexible-array members (Kamal Heib) [2170070] - RDMA/core: Delete IPsec flow action logic from the core (Kamal Heib) [2170070] - net: Don't include filter.h from net/sock.h (Kamal Heib) [2170070] - scsi: qla2xxx: Synchronize the IOCB count to be in order (Nilesh Javali) [2164947] - scsi: qla2xxx: Perform lockless command completion in abort path (Nilesh Javali) [2164947] - scsi: qla2xxx: Use the proper SCSI midlayer interfaces for PI (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove the unused variable wwn (Nilesh Javali) [2164947] - scsi: qla2xxx: Simplify if condition evaluation (Nilesh Javali) [2164947] - scsi: qla2xxx: Use a variable for repeated mem_size computation (Nilesh Javali) [2164947] - scsi: qla2xxx: Make qla_trim_buf() and __qla_adjust_buf() static (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix printk() format string (Nilesh Javali) [2164947] - scsi: qla2xxx: Update version to 10.02.08.200-k (Nilesh Javali) [2164947] - scsi: qla2xxx: Select qpair depending on which CPU post_cmd() gets called (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix clang warning (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Reduce memory usage during low I/O (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix stall session after app start (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix performance dip due to lock contention (Nilesh Javali) [2164947] - scsi: qla2xxx: Relocate/rename vp map (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (GNN ID) (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (GPNID) (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (Nilesh Javali) [2164947] - scsi: qla2xxx: Update version to 10.02.08.100-k (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix IOCB resource check warning (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove increment of interface err cnt (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix erroneous link down (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove unintended flag clearing (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix stalled login (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix exchange oversubscription for management commands (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix exchange oversubscription (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix link failure in NPIV environment (Nilesh Javali) [2164947] - scsi: qla2xxx: Check if port is online before sending ELS (Nilesh Javali) [2164947] - scsi: qla2xxx: Initialize vha->unknown_atio_[list, work] for NPIV hosts (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove duplicate of vha->iocb_work initialization (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove unused variable 'found_devs' (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix set-but-not-used variable warnings (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts() (Nilesh Javali) [2164947] - ethtool: eeprom: fix null-deref on genl_info in dump (Davide Caratti) [2188002] - packet: do not set TP_STATUS_CSUM_VALID on CHECKSUM_COMPLETE (Davide Caratti) [2188002] - af_key: Fix send_acquire race with pfkey_register (Davide Caratti) [2188002] - net: llc: fix skb_over_panic (Davide Caratti) [2188002] - inet_ecn: Fix endianness of checksum update when setting ECT(1) (Davide Caratti) [2188002] - RDMA/irdma: Fix potential NULL-ptr-dereference (Kamal Heib) [2153377] - RDMA/irdma: Split CQ handler into irdma_reg_user_mr_type_cq (Kamal Heib) [2153377] - RDMA/irdma: Split QP handler into irdma_reg_user_mr_type_qp (Kamal Heib) [2153377] - RDMA/irdma: Split mr alloc and free into new functions (Kamal Heib) [2153377] - RDMA/irdma: Split MEM handler into irdma_reg_user_mr_type_mem (Kamal Heib) [2153377] - RDMA/irdma: Remove extra ret variable in favor of existing err (Kamal Heib) [2153377] - RDMA/irdma: Initialize net_type before checking it (Kamal Heib) [2153377] - RDMA/irdma: Do not request 2-level PBLEs for CQ alloc (Kamal Heib) [2153377] - RDMA/irdma: Fix RQ completion opcode (Kamal Heib) [2153377] - RDMA/irdma: Fix inline for multiple SGE's (Kamal Heib) [2153377] - bnxt_en: Fix mqprio and XDP ring checking logic (Ken Cox) [2159222] - bnxt: Do not read past the end of test names (Ken Cox) [2159222] - bnxt: report FEC block stats via standard interface (Ken Cox) [2159222] - bnxt_en: Remove debugfs when pci_register_driver failed (Ken Cox) [2159222] - bnxt_en: update RSS config using difference algorithm (Ken Cox) [2159222] - bnxt_en: refactor VNIC RSS update functions (Ken Cox) [2159222] - bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer (Ken Cox) [2159222] - bnxt_en: Fix possible crash in bnxt_hwrm_set_coal() (Ken Cox) [2159222] - bnxt_en: fix the handling of PCIE-AER (Ken Cox) [2159222] - bnxt_en: refactor bnxt_cancel_reservations() (Ken Cox) [2159222] - bnxt_en: check and resize NVRAM UPDATE entry before flashing (Ken Cox) [2159222] - bnxt_en: Update firmware interface to 1.10.2.118 (Ken Cox) [2159222] - bnxt_en: replace reset with config timestamps (Ken Cox) [2159222] - hugetlbfs: don't delete error page from pagecache (Aristeu Rozanski) [2188334] - mm: shmem: don't truncate page if memory failure happens (Aristeu Rozanski) [2188334] - mm: hwpoison: handle non-anonymous THP correctly (Aristeu Rozanski) [2188334] - mm: hwpoison: refactor refcount check handling (Aristeu Rozanski) [2188334] - scsi: qedf: Remove set but unused variable 'page' (Nilesh Javali) [2164955] - scsi: qedf: Fix a UAF bug in __qedf_probe() (Nilesh Javali) [2164955] - xfs: don't use BMBT btree split workers for IO completion (Carlos Maiolino) [2127493] - tools/power turbostat: Add support for MeteorLake platforms (Derek Barbosa) [2153966] - x86/bugs: Workaround for incorrectly set X86_BUG_RETBLEED under VMware (Waiman Long) [2184343]- nvmet: fix workqueue MEM_RECLAIM flushing dependency (Maurizio Lombardi) [2187618] - nvmet: use a private workqueue instead of the system workqueue (Maurizio Lombardi) [2187618] - nvme: fix discard support without oncs (Maurizio Lombardi) [2187618] - nvme-pci: fix timeout request state check (Maurizio Lombardi) [2187618] - nvme: fix multipath crash caused by flush request when blktrace is enabled (Maurizio Lombardi) [2187618] - nvme: return err on nvme_init_non_mdts_limits fail (Maurizio Lombardi) [2187618] - nvme initialize core quirks before calling nvme_init_subsystem (Maurizio Lombardi) [2187618] - nvmet: fix memory leak in nvmet_subsys_attr_model_store_locked (Maurizio Lombardi) [2187618] - nvme: quiet user passthrough command errors (Maurizio Lombardi) [2187618] - nvme-tcp: fix possible circular locking when deleting a controller under memory pressure (Maurizio Lombardi) [2187618] - nvme-hwmon: kmalloc the NVME SMART log buffer (Maurizio Lombardi) [2187618] - nvme-hwmon: consistently ignore errors from nvme_hwmon_init (Maurizio Lombardi) [2187618] - nvme-pci: disable write zeroes on various Kingston SSD (Maurizio Lombardi) [2187618] - nvme-pci: avoid the deepest sleep state on ZHITAI TiPro5000 SSDs (Maurizio Lombardi) [2187618] - nvme-rdma: fix possible hang caused during ctrl deletion (Maurizio Lombardi) [2187618] - nvmet-tcp: add bounds check on Transfer Tag (Maurizio Lombardi) [2187618] - nvmet-tcp: handle ICReq PDU received in NVMET_TCP_Q_LIVE state (Maurizio Lombardi) [2187618] - nvme-pci: set min_align_mask before calculating max_hw_sectors (Maurizio Lombardi) [2187618] - nvme: enumerate controller flags (Maurizio Lombardi) [2187618] - nvme: ensure subsystem reset is single threaded (Maurizio Lombardi) [2187618] - nvme: copy firmware_rev on each init (Maurizio Lombardi) [2187618] - nvme: restrict management ioctls to admin (Maurizio Lombardi) [2187618] - nvme: consider also host_iface when checking ip options (Maurizio Lombardi) [2187618] - nvme: move from strlcpy with unused retval to strscpy (Maurizio Lombardi) [2187618] - nvme: add comment for unaligned "fake" nqn (Maurizio Lombardi) [2187618] - nvme-pci: disable Write Zeroes on Phison E3C/E4C (Maurizio Lombardi) [2187618] - nvmet: fix mar and mor off-by-one errors (Maurizio Lombardi) [2187618] - nvmet: fix a use-after-free (Maurizio Lombardi) [2187618] - nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change() (Maurizio Lombardi) [2187618] - nvme-fabrics: Fix a typo in an error message (Maurizio Lombardi) [2187618] - nvme-fabrics: parse nvme connect Linux error codes (Maurizio Lombardi) [2187618] - nvmet-tcp: fix lockdep complaint on nvmet_tcp_wq flush during queue teardown (Maurizio Lombardi) [2187618] - nvme: rename nvme_validate_or_alloc_ns to nvme_scan_ns (Maurizio Lombardi) [2187618] - nvme: catch -ENODEV from nvme_revalidate_zones again (Maurizio Lombardi) [2187618] - nvme-pci: print the command name of aborted commands (Maurizio Lombardi) [2187618] - nvme: use command_id instead of req->tag in trace_nvme_complete_rq() (Maurizio Lombardi) [2187618] - nvme-pci: use nvme core helper to cancel requests in tagset (Maurizio Lombardi) [2187618] - nvme-tcp: use in-capsule data for I/O connect (Maurizio Lombardi) [2187618] - nvme-rdma: remove timeout for getting RDMA-CM established event (Maurizio Lombardi) [2187618] - nvmet: parse fabrics commands on io queues (Maurizio Lombardi) [2187618] - nvme-fabrics: decode 'authentication required' connect error (Maurizio Lombardi) [2187618] - nvme-loop: use nvme core helpers to cancel all requests in a tagset (Maurizio Lombardi) [2187618] - nvme: handle the persistent internal error AER (Maurizio Lombardi) [2187618] - nvme: remove a double word in a comment (Maurizio Lombardi) [2187618] - nvme: use struct group for generic command dwords (Maurizio Lombardi) [2187618] - nvme-pci: fix freeze accounting for error handling (Maurizio Lombardi) [2187618] - nvmet-tcp: fix regression in data_digest calculation (Maurizio Lombardi) [2187618] - nvme: add a bogus subsystem NQN quirk for Micron MTFDKBA2T0TFH (Maurizio Lombardi) [2187618] - nvme-pci: disable write zeros support on UMIC and Samsung SSDs (Maurizio Lombardi) [2187618] - nvme-pci: avoid the deepest sleep state on ZHITAI TiPro7000 SSDs (Maurizio Lombardi) [2187618] - nvme-pci: add trouble shooting steps for timeouts (Maurizio Lombardi) [2187618] - nvme: add device name to warning in uuid_show() (Maurizio Lombardi) [2187618] - nvmet: fix typo in comment (Maurizio Lombardi) [2187618] - nvme: set controller enable bit in a separate write (Maurizio Lombardi) [2187618] - nvme: set non-mdts limits in nvme_scan_work (Maurizio Lombardi) [2187618] - nvme-pci: harden drive presence detect in nvme_dev_disable() (Maurizio Lombardi) [2187618] - nvme-pci: fix a NULL pointer dereference in nvme_alloc_admin_tags (Maurizio Lombardi) [2187618] - nvme: mark internal passthru request RQF_QUIET (Maurizio Lombardi) [2187618] - nvme: remove unneeded include from constants file (Maurizio Lombardi) [2187618] - nvme: set dma alignment to dword (Maurizio Lombardi) [2187618] - nvme: fix interpretation of DMRSL (Maurizio Lombardi) [2187618] - ixgbe: add double of VLAN header when computing the max MTU (Ken Cox) [2153372] - ixgbe: allow to increase MTU to 3K with XDP enabled (Ken Cox) [2153372] - ixgbe: Filter out spurious link up indication (Ken Cox) [2153372] - ixgbe: XDP: fix checker warning from rcu pointer (Ken Cox) [2153372] - ixgbe: fix pci device refcount leak (Ken Cox) [2153372] - ixgbe: change MAX_RXD/MAX_TXD based on adapter type (Ken Cox) [2153372] - tracing: kprobes: Prohibit probing on notrace function (Mukesh Chaurasiya) [2183475] - powerpc/kprobes: Ignore traps that happened in real mode (Mukesh Chaurasiya) [2183475] - nvme-rdma: handle number of queue changes (Kamal Heib) [2160665] - nvme-rdma: remove timeout for getting RDMA-CM established event (Kamal Heib) [2160665] - nvmet-rdma: fix kernel-doc warning for nvmet_rdma_device_removal (Kamal Heib) [2160665] - net: mpls: fix stale pointer if allocation fails during device rename (Guillaume Nault) [2184956] {CVE-2023-26545} - block: don't set GD_NEED_PART_SCAN if scan partition failed (Ming Lei) [2151112] - block: fix wrong mode for blkdev_put() from disk_scan_partitions() (Ming Lei) [2151112] - block: fix scan partition for exclusively open device again (Ming Lei) [2151112] - mm: swap: get rid of livelock in swapin readahead (Aristeu Rozanski) [2035182 2182084] - redhat: require reasonably recent grub2 _only_ if grub2 is already installed (Denys Vlasenko) [2183531] - i40e: Fix kernel crash during reboot when adapter is in recovery mode (Stefan Assmann) [2153348] - i40e: add double of VLAN header when computing the max MTU (Stefan Assmann) [2153348] - i40e: Add checking for null for nlmsg_find_attr() (Stefan Assmann) [2153348] - net/i40e: Replace 0-length array with flexible array (Stefan Assmann) [2153348] - i40e: use ERR_PTR error print in i40e messages (Stefan Assmann) [2153348] - i40e: use int for i40e_status (Stefan Assmann) [2153348] - i40e: Remove string printing for i40e_status (Stefan Assmann) [2153348] - i40e: Remove unused i40e status codes (Stefan Assmann) [2153348] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Stefan Assmann) [2153348] - i40e: Remove redundant pci_enable_pcie_error_reporting() (Stefan Assmann) [2153348] - virtchnl: i40e/iavf: rename iwarp to rdma (Stefan Assmann) [2153348] - treewide: Convert del_timer*() to timer_shutdown*() (Stefan Assmann) [2153348] - i40e: allow toggling loopback mode via ndo_set_features callback (Stefan Assmann) [2153348] - i40e: Disallow ip4 and ip6 l4_4_bytes (Stefan Assmann) [2153348] - i40e: Fix for VF MAC address 0 (Stefan Assmann) [2153348] - i40e: Fix not setting default xps_cpus after reset (Stefan Assmann) [2153348] - dm: fix __send_duplicate_bios() to always allow for splitting IO (Benjamin Marzinski) [2183559] - dm: fix improper splitting for abnormal bios (Benjamin Marzinski) [2183559] - dm: remove unnecessary (void*) conversion in event_callback() (Benjamin Marzinski) [2179207] - dm ioctl: remove unnecessary check when using dm_get_mdptr() (Benjamin Marzinski) [2179207] - dm ioctl: assert _hash_lock is held in __hash_remove (Benjamin Marzinski) [2179207] - dm cache: add cond_resched() to various workqueue loops (Benjamin Marzinski) [2179207] - dm thin: add cond_resched() to various workqueue loops (Benjamin Marzinski) [2179207] - dm: add cond_resched() to dm_wq_work() (Benjamin Marzinski) [2179207] - dm: update targets using system workqueues to use a local workqueue (Benjamin Marzinski) [2179207] - dm: remove flush_scheduled_work() during local_exit() (Benjamin Marzinski) [2179207] - dm: declare variables static when sensible (Benjamin Marzinski) [2179207] - dm ioctl: prefer strscpy() instead of strlcpy() (Benjamin Marzinski) [2179207] - dm: avoid 'do {} while(0)' loop in single statement macros (Benjamin Marzinski) [2179207] - dm: favour __packed versus "__attribute__ ((packed))" (Benjamin Marzinski) [2179207] - dm: favour __aligned(N) versus "__attribute__ (aligned(N))" (Benjamin Marzinski) [2179207] - dm: adjust EXPORT_SYMBOL() to follow functions immediately (Benjamin Marzinski) [2179207] - dm block-manager: avoid not required parentheses (Benjamin Marzinski) [2179207] - dm: send just one event on resize, not two (Benjamin Marzinski) [2179207] - dm table: check that a dm device doesn't reference itself (Benjamin Marzinski) [2179207] - dm raid: fix some spelling mistakes in comments (Benjamin Marzinski) [2179207] - dm verity: stop using WQ_UNBOUND for verify_wq (Benjamin Marzinski) [2179207] - dm integrity: Remove bi_sector that's only used by commented debug code (Benjamin Marzinski) [2179207] - dm crypt: Slightly simplify crypt_set_keyring_key() (Benjamin Marzinski) [2179207] - dm ioctl: drop always-false condition (Benjamin Marzinski) [2179207] - dm flakey: fix logic when corrupting a bio (Benjamin Marzinski) [2179207] - dm flakey: fix a bug with 32-bit highmem systems (Benjamin Marzinski) [2179207] - dm flakey: don't corrupt the zero page (Benjamin Marzinski) [2179207] - dm cache: Add some documentation to dm-cache-background-tracker.h (Benjamin Marzinski) [2179207] - dm cache: free background tracker's queued work in btracker_destroy (Benjamin Marzinski) [2179207] - dm ioctl: fix a couple ioctl codes (Benjamin Marzinski) [2179207] - dm ioctl: a small code cleanup in list_version_get_info (Benjamin Marzinski) [2179207] - sfc: include vport_id in filter spec hash and equal() (Íñigo Huguet) [2159251] - ptp: convert remaining drivers to adjfine interface (Íñigo Huguet) [2159251] - sfc: Use kmap_local_page() instead of kmap_atomic() (Íñigo Huguet) [2159251] - sfc: use sysfs_emit() to instead of scnprintf() (Íñigo Huguet) [2159251] - selftests: forwarding: add tunnel_key "nofrag" test case (Davide Caratti) [2103797] - selftests: tc-testing: add tunnel_key "nofrag" test case (Davide Caratti) [2103797] - selftests: tc-testing: add "depends_on" property to skip tests (Davide Caratti) [2103797] - net/sched: act_tunnel_key: add support for "don't fragment" (Davide Caratti) [2103797] - e1000e: Fix TX dispatch condition (Ken Cox) [2153313] - e1000e: Separate MTP board type from ADP (Ken Cox) [2153313] - drivers/net/ethernet/e1000e: check return value of e1e_rphy() (Ken Cox) [2153313] - ipvs: add sysctl_run_estimation to support disable estimation (Hangbin Liu) [2182003] - scsi: ses: Don't attach if enclosure has no components (Tomas Henzl) [1975026] - scsi: ses: Fix slab-out-of-bounds in ses_intf_remove() (Tomas Henzl) [1975026] - scsi: ses: Fix possible desc_ptr out-of-bounds accesses (Tomas Henzl) [1975026] - scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses (Tomas Henzl) [1975026] - scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process() (Tomas Henzl) [1975026] - vmxnet3: move rss code block under eop descriptor (Izabela Bakollari) [2172579]- crypto: qat - add support for 402xx devices (Vladis Dronov) [2144529] - crypto: qat - drop log level of msg in get_instance_node() (Vladis Dronov) [2144529] - crypto: qat - fix out-of-bounds read (Vladis Dronov) [2144529] - Documentation: qat: change kernel version (Vladis Dronov) [2144529] - crypto: qat - add qat_zlib_deflate (Vladis Dronov) [2144529] - crypto: qat - extend buffer list logic interface (Vladis Dronov) [2144529] - crypto: qat - fix spelling mistakes from 'bufer' to 'buffer' (Vladis Dronov) [2144529] - crypto: qat - add resubmit logic for decompression (Vladis Dronov) [2144529] - crypto: acomp - define max size for destination (Vladis Dronov) [2144529] - crypto: qat - enable deflate for QAT GEN4 (Vladis Dronov) [2144529] - crypto: qat - expose deflate through acomp api for QAT GEN2 (Vladis Dronov) [2144529] - crypto: qat - rename and relocate GEN2 config function (Vladis Dronov) [2144529] - crypto: qat - relocate qat_algs_alloc_flags() (Vladis Dronov) [2144529] - crypto: qat - relocate backlog related structures (Vladis Dronov) [2144529] - crypto: qat - extend buffer list interface (Vladis Dronov) [2144529] - crypto: qat - generalize crypto request buffers (Vladis Dronov) [2144529] - crypto: qat - change bufferlist logic interface (Vladis Dronov) [2144529] - crypto: qat - rename bufferlist functions (Vladis Dronov) [2144529] - crypto: qat - relocate bufferlist logic (Vladis Dronov) [2144529] - crypto: qat - Use helper to set reqsize (Vladis Dronov) [2144529] - crypto: kpp - Add helper to set reqsize (Vladis Dronov) [2144529] - crypto: qat - fix error return code in adf_probe (Vladis Dronov) [2144529] - crypto: qat - remove ADF_STATUS_PF_RUNNING flag from probe (Vladis Dronov) [2144529] - selftests: net: rps_default_mask.sh: delete veth link specifically (Hangbin Liu) [2185801] - selftests: net: devlink_port_split.py: skip test if no suitable device available (Hangbin Liu) [2185801] - selftests: mirror_gre_bridge_1q: Avoid changing PVID while interface is operational (Hangbin Liu) [2185801] - selftests/tls: Add {} to avoid static checker warning (Hangbin Liu) [2185801] - selftests: nft_nat: ensuring the listening side is up before starting the client (Hangbin Liu) [2185801] - selftest: fib_tests: Always cleanup before exit (Hangbin Liu) [2185801] - selftests/net: Interpret UDP_GRO cmsg data as an int value (Hangbin Liu) [2185801] - selftests: forwarding: lib: quote the sysctl values (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking (Hangbin Liu) [2185801] - selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_rx/tx: Stop when wrong CLI args are provided (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_rx: Fix 'used uninitialized' compiler warning (Hangbin Liu) [2185801] - selftests: rtnetlink: correct xfrm policy rule in kci_test_ipsec_offload (Hangbin Liu) [2185801] - selftests: forwarding: Fix failing tests with old libnet (Hangbin Liu) [2185801] - powerpc/pseries/mobility: set NMI watchdog factor during an LPM (Mamatha Inamdar) [2186026] - powerpc/watchdog: introduce a NMI watchdog's factor (Mamatha Inamdar) [2186026] - watchdog: export lockup_detector_reconfigure (Mamatha Inamdar) [2186026] - powerpc/mobility: wait for memory transfer to complete (Mamatha Inamdar) [2186026] - crypto: drbg - Only fail when jent is unavailable in FIPS mode (Vladis Dronov) [2175712] - crypto: jitter - permanent and intermittent health errors (Vladis Dronov) [2175712] - crypto: jitter - quit sample collection loop upon RCT failure (Vladis Dronov) [2175712] - crypto: jitter - don't limit ->health_failure check to FIPS mode (Vladis Dronov) [2175712] - crypto: jitter - drop kernel-doc notation (Vladis Dronov) [2175712] - selftests/livepatch: normalize sysctl error message (Julia Denham) [RHEL-256] - livepatch: Skip livepatch tests if ftrace cannot be configured (Julia Denham) [RHEL-256] - livepatch: Add a missing newline character in klp_module_coming() (Julia Denham) [RHEL-256] - livepatch: fix race between fork and KLP transition (Julia Denham) [RHEL-256] - scsi: bnx2i: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Nilesh Javali) [2164956] - x86/xen: Split HVM vector callback setup and interrupt gate allocation (Prarit Bhargava) [2187810] - s390/uaccess: add missing earlyclobber annotations to __clear_user() (Tobias Huschle) [2183078] - s390/qeth: fix use-after-free in hsci (Tobias Huschle) [2183992] - SUNRPC: Fix a server shutdown leak (Benjamin Coddington) [2166107] - powerpc/pseries/vas: Ignore VAS update for DLPAR if copy/paste is not enabled (Mamatha Inamdar) [2184979] - cnic: don't pass bogus GFP_ flags to dma_alloc_coherent (Nilesh Javali) [2164958] - cnic: Use the bitmap API to allocate bitmaps (Nilesh Javali) [2164958]- perf vendor events intel: Add uncore event list for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Add metrics for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Update core event list for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Add sapphirerapids events (Michael Petlan) [2180657] - perf vendor events intel: Update metrics for Alderlake (Michael Petlan) [2180656] - perf vendor events: Fix Alderlake metric groups (Michael Petlan) [2180656] - perf vendor events intel: Add metrics for Alderlake (Michael Petlan) [2180656] - perf/x86/rapl: Add support for Intel Raptor Lake (Michael Petlan) [2180654] - perf/x86/intel: Add Cooper Lake stepping to isolation_ucodes[] (Michael Petlan) [2153896] - perf/x86/intel/cstate: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/intel: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/intel/uncore: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/msr: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/msr: Add Sapphire Rapids CPU support (Michael Petlan) [2156802] - perf/x86/intel/uncore: Add Meteor Lake support (Michael Petlan) [2177039] - perf/x86/msr: Add Meteor Lake support (Michael Petlan) [2153962] - perf/x86/cstate: Add Meteor Lake support (Michael Petlan) [2153962] - perf/x86/intel: Support Architectural PerfMon Extension leaf (Michael Petlan) [2153962] - x86/cpufeatures: Add Architectural PerfMon Extension bit (Michael Petlan) [2153962] - perf/x86: Support Retire Latency (Michael Petlan) [2153962] - perf/x86: Add Meteor Lake support (Michael Petlan) [2153962] - perf: Add PMU_FORMAT_ATTR_SHOW (Michael Petlan) [2153962] - mm/hugetlb: add dedicated func to get 'allowed' nodemask for current process (Rafael Aquini) [2153926] - mm/hugetlb: simplify the calculation of variables (Rafael Aquini) [2153926] - mm/mempolicy: fix lock contention on mems_allowed (Rafael Aquini) [2153926] - mm/mempolicy: do not allow illegal MPOL_F_NUMA_BALANCING | MPOL_LOCAL in mbind() (Rafael Aquini) [2153926] - mm/mempolicy.c: use in_task() in mempolicy_slab_node() (Rafael Aquini) [2153926] - mm/mempolicy: unify the create() func for bind/interleave/prefer-many policies (Rafael Aquini) [2153926] - mm/mempolicy: advertise new MPOL_PREFERRED_MANY (Rafael Aquini) [2153926] - mm/hugetlb: add support for mempolicy MPOL_PREFERRED_MANY (Rafael Aquini) [2153926] - mm/memplicy: add page allocation function for MPOL_PREFERRED_MANY policy (Rafael Aquini) [2153926] - mm/mempolicy: add MPOL_PREFERRED_MANY for multiple preferred nodes (Rafael Aquini) [2153926] - mm/mempolicy: use readable NUMA_NO_NODE macro instead of magic number (Rafael Aquini) [2153926] - mm/mempolicy: unify the parameter sanity check for mbind and set_mempolicy (Rafael Aquini) [2153926] - mm/mempolicy: use unified 'nodes' for bind/interleave/prefer policies (Rafael Aquini) [2153926] - mm/mempolicy: don't handle MPOL_LOCAL like a fake MPOL_PREFERRED policy (Rafael Aquini) [2153926] - mm/mempolicy: cleanup nodemask intersection check for oom (Rafael Aquini) [2153926] - mm/mempolicy: fix mpol_misplaced kernel-doc (Rafael Aquini) [2153926] - numa balancing: migrate on fault among multiple bound nodes (Rafael Aquini) [2153926] - mm/hugetlb: add mempolicy check in the reservation routine (Rafael Aquini) [2153926] - mm: remove unused alloc_page_vma_node() (Rafael Aquini) [2153926] - mm/mempolicy: remove or narrow the lock on current (Rafael Aquini) [2153926] - mm, mempolicy: fix uninit memory access (Rafael Aquini) [2153926] - mm/mempool: minor coding style tweaks (Rafael Aquini) [2153926] - mm: fix typos in comments (Rafael Aquini) [2153926] - futex: Do not apply time namespace adjustment on FUTEX_LOCK_PI (Joel Savitz) [2170113] - Revert 337f13046ff0 ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op") (Joel Savitz) [2170113] - kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data() (Joel Savitz) [2170113] - futex: Remove unneeded gotos (Joel Savitz) [2170113] - rtmutex: Ensure that the top waiter is always woken up (Joel Savitz) [2170113] - rtmutex: Add acquire semantics for rtmutex lock acquisition slow path (Joel Savitz) [2170113] - locking/lockdep: Fix lockdep_init_map_*() confusion (Joel Savitz) [2170113] - locking/lockdep: Avoid potential access of invalid memory in lock_class (Joel Savitz) [2170113] - lockdep: Correct lock_classes index mapping (Joel Savitz) [2170113] - locking/rtmutex: Squash self-deadlock check for ww_rt_mutex. (Joel Savitz) [2170113] - locking/rtmutex: Fix incorrect condition in rtmutex_spin_on_owner() (Joel Savitz) [2170113] - kallsyms: remove arch specific text and data check (Joel Savitz) [2170113] - lockdep: Let lock_is_held_type() detect recursive read as read (Joel Savitz) [2170113] - lockdep: Fix wait-type for empty stack (Joel Savitz) [2170113] - locking/lockdep: Improve noinstr vs errors (Joel Savitz) [2170113] - locking/lockdep: Correct calling tracepoints (Joel Savitz) [2170113] - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count (Joel Savitz) [2170113] - locking/ww_mutex: Fix runtime warning in the WW mutex selftest (Joel Savitz) [2170113] - fortify: Do not cast to "unsigned char" (Josef Oskera) [2139487] - fortify: Use SIZE_MAX instead of (size_t)-1 (Josef Oskera) [2139487] - afs: Work around strnlen() oops with CONFIG_FORTIFIED_SOURCE=y (Josef Oskera) [2139487] - net/mlx4_en: Introduce flexible array to silence overflow warning (Josef Oskera) [2139487] - wusbcore: silence fortify warning (Josef Oskera) [2139487] - skbuff: Switch structure bounds to struct_group() (Josef Oskera) [2139487] - RDMA/cxgb4: fix accept failure due to increased cpl_t5_pass_accept_rpl size (Josef Oskera) [2139487] - intel_th: msu: Use memset_startat() for clearing hw header (Josef Oskera) [2139487] - dm integrity: Use struct_group() to zero struct journal_sector (Josef Oskera) [2139487] - iw_cxgb4: Use memset_startat() for cpl_t5_pass_accept_rpl (Josef Oskera) [2139487] - scsi: lpfc: Use struct_group() to initialize struct lpfc_cgn_info (Josef Oskera) [2139487] - netfilter: conntrack: Use memset_startat() to zero struct nf_conn (Josef Oskera) [2139487] - netfilter: conntrack: avoid gcc-10 zero-length-bounds warning (Josef Oskera) [2139487] - thermal: int340x: Use struct_group() for memcpy() region (Josef Oskera) [2139487] - net/af_iucv: Use struct_group() to zero struct iucv_sock region (Josef Oskera) [2139487] - ipv6: Use memset_after() to zero rt6_info (Josef Oskera) [2139487] - bnx2x: Use struct_group() for memcpy() region (Josef Oskera) [2139487] - tracing: Use memset_startat() to zero struct trace_iterator (Josef Oskera) [2139487] - xfrm: Use memset_after() to clear padding (Josef Oskera) [2139487] - HID: roccat: Use struct_group() to zero kone_mouse_event (Josef Oskera) [2139487] - scsi: ibmvscsi: Avoid multi-field memset() overflow by aiming at srp (Josef Oskera) [2139487] - ipv4: ip_output.c: Fix out-of-bounds warning in ip_copy_addrs() (Josef Oskera) [2139487] - media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf() (Josef Oskera) [2139487] - s390/zcrypt: Switch to flexible array member (Josef Oskera) [2139487] - s390/speculation: Use statically initialized const for instructions (Josef Oskera) [2139487] - cifs: avoid extra calls in posix_info_parse (Josef Oskera) [2139487] - x86/entry: Fixup bad_iret vs noinstr (Josef Oskera) [2139487] - x86/traps: Mark fixup_bad_iret() noinstr (Josef Oskera) [2139487] - x86/doublefault: Remove memmove() call (Josef Oskera) [2139487] - tracing: Initialize iter->seq after zeroing in tracing_read_pipe() (Josef Oskera) [2139487] - tracing: Silence GCC 9 array bounds warning (Josef Oskera) [2139487] - fortify: Fix __compiletime_strlen() under UBSAN_BOUNDS_LOCAL (Josef Oskera) [2139487] - fortify: Provide a memcpy trap door for sharp corners (Josef Oskera) [2139487] - fortify: Make pointer arguments const (Josef Oskera) [2139487] - fortify: Replace open-coded __gnu_inline attribute (Josef Oskera) [2139487] - fortify: Update compile-time tests for Clang 14 (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memset() at compile-time (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memmove() at compile-time (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memcpy() at compile-time (Josef Oskera) [2139487] - fortify: strlen: Avoid shadowing previous locals (Josef Oskera) [2139487] - fortify: Add compile-time FORTIFY_SOURCE tests (Josef Oskera) [2139487] - fortify: Allow strlen() and strnlen() to pass compile-time known lengths (Josef Oskera) [2139487] - fortify: Prepare to improve strnlen() and strlen() warnings (Josef Oskera) [2139487] - fortify: Fix dropped strcpy() compile-time write overflow check (Josef Oskera) [2139487] - fortify: Explicitly disable Clang support (Josef Oskera) [2139487] - fortify: Move remaining fortify helpers into fortify-string.h (Josef Oskera) [2139487] - lib/string: Move helper functions out of string.c (Josef Oskera) [2139487] - lib/string.c: update match_string() doc-strings with correct behavior (Josef Oskera) [2139487] - string.h: move fortified functions definitions in a dedicated header. (Josef Oskera) [2139487] - string.h: add FORTIFY coverage for strscpy() (Josef Oskera) [2139487] - lib: string.h: detect intra-object overflow in fortified string functions (Josef Oskera) [2139487] - lib: string_helpers: provide kfree_strarray() (Josef Oskera) [2139487] - lib/string.c: implement stpcpy (Josef Oskera) [2139487] - kernel-doc: core-api: include string.h into core-api (Josef Oskera) [2139487] - docs/core-api: move *{str,mem}dup* to "String Manipulation" (Josef Oskera) [2139487] - selftests/tc-testing: add show class case for red qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for prio qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for mq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for ingress qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for qfq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for netem qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for multiq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for mqprio qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for htb qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for hfsc qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for fq_codel qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for dsmark qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for drr qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cbs qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cbq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cake qdisc (Ivan Vecera) [2172130] - net/sched: use tc_qdisc_stats_dump() in qdisc (Ivan Vecera) [2172130] - net/sched: sch_api: add helper for tc qdisc walker stats dump (Ivan Vecera) [2172130] - hwrng: core - use per-rng quality value instead of global setting (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - start and stop in-kernel rngd in separate function (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - do not bother to order list of devices by quality (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - credit entropy for low quality sources of randomness (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - break out of hwrng_fillfn if current rng is not trusted (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - only set cur_rng_set_by_user if it is working (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - use rng_fillbuf in add_early_randomness() (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - read() callback must be called for size of 32 or more bytes (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - explicit ordering of initcalls (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - Use DEVICE_ATTR_ macro (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - remove redundant initialization of variable err (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - convert sysfs sprintf/snprintf family to sysfs_emit (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - remove redundant initialization of variable ret (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - Fix use-after-free warning in hwrng_register() (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - move add_early_randomness() out of rng_mutex (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - document the quality field (Jose Ignacio Tornos Martinez) [2172884] - netfilter: nf_conntrack: allow early drop of offloaded UDP conns (Florian Westphal) [2183080] - net/sched: act_ct: offload UDP NEW connections (Florian Westphal) [2183080] - net/sched: act_ct: set ctinfo in meta action depending on ct state (Florian Westphal) [2183080] - netfilter: flowtable: cache info of last offload (Florian Westphal) [2183080] - netfilter: flowtable: allow unidirectional rules (Florian Westphal) [2183080] - netfilter: flowtable: fixup UDP timeout depending on ct state (Florian Westphal) [2183080] - ptp_clock: Let the ADJ_OFFSET interface respect the ADJ_NANO flag for PHC devices. (Íñigo Huguet) [2180896] - ptp: Add adjust_phase to ptp_clock_caps capability. (Íñigo Huguet) [2180896] - ptp: Add adjphase function to support phase offset control. (Íñigo Huguet) [2180896] - kernfs: dont take d_lock on revalidate (Ian Kent) [2126350] - kernfs: dont take i_lock on inode attr read (Ian Kent) [2126350] - kernfs: remove redundant kernfs_rwsem declaration. (Ian Kent) [2126350] - kernfs: fix potential NULL dereference in __kernfs_remove (Ian Kent) [2126350] - kernfs: fix NULL dereferencing in kernfs_remove (Ian Kent) [2126350] - kernfs: prevent early freeing of root node (Ian Kent) [2126350] - kernfs: switch global kernfs_rwsem lock to per-fs lock (Ian Kent) [2126350] - workqueue: Fold rebind_worker() within rebind_workers() (Valentin Schneider) [2088578] - workqueue: Unbind kworkers before sending them to exit() (Valentin Schneider) [2088578] - workqueue: Don't hold any lock while rcuwait'ing for !POOL_MANAGER_ACTIVE (Valentin Schneider) [2088578] - workqueue: Convert the idle_timer to a timer + work_struct (Valentin Schneider) [2088578] - workqueue: Factorize unbind/rebind_workers() logic (Valentin Schneider) [2088578] - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex (Valentin Schneider) [2088578] - workqueue: make sysfs of unbound kworker cpumask more clever (Valentin Schneider) [2088578] - fuse: add feature flag for expire-only (Pavel Reichl) [2109496] - fuse: add "expire only" mode to FUSE_NOTIFY_INVAL_ENTRY (Pavel Reichl) [2109496] - fuse: extend init flags (Pavel Reichl) [2109496] - wifi: iwlwifi: mvm: protect TXQ list manipulation (Jose Ignacio Tornos Martinez) [2152168] - wifi: iwlwifi: mvm: fix mvmtxq->stopped handling (Jose Ignacio Tornos Martinez) [2152168] - thunderbolt: Explicitly enable lane adapter hotplug events at startup (Desnes Nunes) [2130062] - x86/tsc: Add option to force frequency recalibration with HW timer (Prarit Bhargava) [2100597] - ovl: fix use after free in struct ovl_aio_req (Miklos Szeredi) [2176159] {CVE-2023-1252}- mm/memremap: fix missing call to untrack_pfn() in pagemap_range() (Nico Pache) [2168370] - arm64: mm: correct the inside linear map range during hotplug check (Nico Pache) [2168370] - s390/mm: define arch_get_mappable_range() (Nico Pache) [2168370] - arm64/mm: define arch_get_mappable_range() (Nico Pache) [2168370] - mm/memory_hotplug: prevalidate the address range being added with platform (Nico Pache) [2168370] - s390/extmem: return correct segment type in __segment_load() (Nico Pache) [2168370] - s390/vmem: get rid of memory segment list (Nico Pache) [2168370] - arm64/mm: Validate hotplug range before creating linear mapping (Nico Pache) [2168370] - mm/truncate.c: make __invalidate_mapping_pages() static (Nico Pache) [2168370] - powerpc/mm: fix "section_base" set but not used (Nico Pache) [2168370] - powerpc: Avoid link stack corruption in misc asm functions (Nico Pache) [2168370] - powerpc/booke: Avoid link stack corruption in several places (Nico Pache) [2168370] - powerpc/mm: Fix lockup on kernel exec fault (Nico Pache) [2168370] - x86: fix seq_file iteration for pat/memtype.c (Nico Pache) [2168370] - powerpc/book3s64/hash: Add cond_resched to avoid soft lockup warning (Nico Pache) [2168370] - powerpc/nvdimm: Update vmemmap_populated to check sub-section range (Nico Pache) [2168370] - powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt() (Nico Pache) [2168370] - x86/mm: Sync also unmappings in vmalloc_sync_all() (Nico Pache) [2168370] - Fix page corruption caused by racy check in __free_pages (Nico Pache) [2168370] - mm/gup: fix gup_pud_range() for dax (Nico Pache) [2168370] - memcg: Fix possible use-after-free in memcg_write_event_control() (Nico Pache) [2168370] - mm/huge_memory: use pfn_to_online_page() in split_huge_pages_all() (Nico Pache) [2168370] - mm: fix madivse_pageout mishandling on non-LRU page (Nico Pache) [2168370] - mm/page_alloc: fix race condition between build_all_zonelists and page allocation (Nico Pache) [2168370] - mm/slub: fix to return errno if kmalloc() fails (Nico Pache) [2168370] - writeback: avoid use-after-free after removing device (Nico Pache) [2168370] - x86/mm: Use proper mask when setting PUD mapping (Nico Pache) [2168370] - mm/mmap.c: fix missing call to vm_unacct_memory in mmap_region (Nico Pache) [2168370] - mm/hmm: fault non-owner device private entries (Nico Pache) [2168370] - mm: split huge PUD on wp_huge_pud fallback (Nico Pache) [2168370] - mm/page_owner: use strscpy() instead of strlcpy() (Nico Pache) [2168370] - mm/vmscan: take min_slab_pages into account when try to call shrink_node (Nico Pache) [2168370] - x86: Fix return value of __setup handlers (Nico Pache) [2168370] - mm: fix unexpected zeroed page mapping with zram swap (Nico Pache) [2168370] - mm, page_alloc: fix build_zonerefs_node() (Nico Pache) [2168370] - mm/mempolicy: fix mpol_new leak in shared_policy_replace (Nico Pache) [2168370] - mm/slub: remove forced_order parameter in calculate_sizes (Nico Pache) [2168370] - mm/usercopy: return 1 from hardened_usercopy __setup() handler (Nico Pache) [2168370] - mm/thp: ClearPageDoubleMap in first page_add_file_rmap() (Nico Pache) [2168370] - mm/thp: refix __split_huge_pmd_locked() for migration PMD (Nico Pache) [2168370] - mempolicy: mbind_range() set_policy() after vma_merge() (Nico Pache) [2168370] - mm/pages_alloc.c: don't create ZONE_MOVABLE beyond the end of a node (Nico Pache) [2168370] - mm: userfaultfd: fix missing cache flush in mcopy_atomic_pte() and __mcopy_atomic() (Nico Pache) [2168370] - mm: hugetlb: fix missing cache flush in copy_huge_page_from_user() (Nico Pache) [2168370] - mm: thp: fix wrong cache flush in remove_migration_pmd() (Nico Pache) [2168370] - mm: fix missing cache flush for all tail pages of compound page (Nico Pache) [2168370] - tmpfs: fix regressions from wider use of ZERO_PAGE (Nico Pache) [2168370] - tmpfs: do not allocate pages on read (Nico Pache) [2168370] - shmem: mapping_set_exiting() to help mapped resilience (Nico Pache) [2168370] - mm/hmm.c: allow VM_MIXEDMAP to work with hmm_range_fault (Nico Pache) [2168370] - shmem: fix a race between shmem_unused_huge_shrink and shmem_evict_inode (Nico Pache) [2168370] - mm, slub: use prefetchw instead of prefetch (Nico Pache) [2168370] - arm64: mm: update max_pfn after memory hotplug (Nico Pache) [2168370] - mm, vmscan: guarantee drop_slab_node() termination (Nico Pache) [2168370] - fs, mm: fix race in unlinking swapfile (Nico Pache) [2168370] - fs: inode: count invalidated shadow pages in pginodesteal (Nico Pache) [2168370] - mm, fadvise: improve the expensive remote LRU cache draining after FADV_DONTNEED (Nico Pache) [2168370] - mm/filemap.c: rewrite mapping_needs_writeback in less fancy manner (Nico Pache) [2168370] - fs: drop_caches: fix skipping over shadow cache inodes (Nico Pache) [2168370] - mm: introduce and use mapping_empty() (Nico Pache) [2168370] - mm: remove irqsave/restore locking from contexts with irqs enabled (Nico Pache) [2168370] - mm: zswap: clean up confusing comment (Nico Pache) [2168370] - mm/memory_hotplug: use helper function zone_end_pfn() to get end_pfn (Nico Pache) [2168370] - mm: vmstat: add some comments on internal storage of byte items (Nico Pache) [2168370] - mm: vmstat: fix NOHZ wakeups for node stat changes (Nico Pache) [2168370] - mm/mmap.c: replace do_brk with do_brk_flags in comment of insert_vm_struct() (Nico Pache) [2168370] - mm/mmap.c: use helper function allow_write_access() in __remove_shared_vm_struct() (Nico Pache) [2168370] - mm: use helper function mapping_allow_writable() (Nico Pache) [2168370] - mm: memcontrol: reword obsolete comment of mem_cgroup_unmark_under_oom() (Nico Pache) [2168370] - mm/page_counter: correct the obsolete func name in the comment of page_counter_try_charge() (Nico Pache) [2168370] - mm: memcontrol: correct the comment of mem_cgroup_iter() (Nico Pache) [2168370] - x86/mm: use max memory block size on bare metal (Nico Pache) [2168370] - mm/util.c: remove the VM_WARN_ONCE for vm_committed_as underflow check (Nico Pache) [2168370] - include/linux/swapops.h: correct guards for non_swap_entry() (Nico Pache) [2168370] - mm: set vm_next and vm_prev to NULL in vm_area_dup() (Nico Pache) [2168370] - mm: don't prepare anon_vma if vma has VM_WIPEONFORK (Nico Pache) [2168370] - page-flags: fix a crash at SetPageError(THP_SWAP) (Nico Pache) [2168370] - mm/rmap.c: fix outdated comment in page_get_anon_vma() (Nico Pache) [2168370] - mm/mmap.c: extract __vma_unlink_list() as counterpart for __vma_link_list() (Nico Pache) [2168370] - mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup() (Nico Pache) [2168370] - x86/mm: Kill stray kernel fault handling comment (Nico Pache) [2168370] - arm64/numa: Unify common error path in numa_init() (Nico Pache) [2168370] - tools/power/x86/intel-speed-select: v1.14 release (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Adjust uncore max/min frequency (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix display of uncore min frequency (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Add Emerald Rapid quirk (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: turbo-freq auto mode with SMT off (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: cpufreq reads on offline CPUs (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Use null-terminated string (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove duplicate dup() (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Handle open() failure case (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused non_block flag (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove wrong check in set_isst_id() (Prarit Bhargava) [2154078] - platform/x86: ISST: Fix typo in comments (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Release v1.13 (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Optimize CPU initialization (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Utilize cpu_map to get physical id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused struct clos_config fields (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Enforce isst_id value (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Do not export get_physical_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Introduce is_cpu_in_power_domain helper (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Cleanup get_physical_id usage (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Convert more function to use isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Add pkg and die in isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Introduce struct isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused core_mask array (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove dead code (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix cpu count for TDP level display (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unneeded semicolon (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix off by one check (Prarit Bhargava) [2154078] - platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix warning for perf_cap.cpu (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Display error on turbo mode disabled (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: fix build failure when using -Wl,--as-needed (Prarit Bhargava) [2154078] - KVM: x86: Propagate the AMD Automatic IBRS feature to the guest (Waiman Long) [1989283] - x86/cpu: Support AMD Automatic IBRS (Waiman Long) [1989283] - x86/cpu, kvm: Add the SMM_CTL MSR not present feature (Waiman Long) [1989283] - x86/cpu, kvm: Add the Null Selector Clears Base feature (Waiman Long) [1989283] - x86/cpu, kvm: Move X86_FEATURE_LFENCE_RDTSC to its native leaf (Waiman Long) [1989283] - x86/cpu, kvm: Add the NO_NESTED_DATA_BP feature (Waiman Long) [1989283] - KVM: x86: Move open-coded CPUID leaf 0x80000021 EAX bit propagation code (Waiman Long) [1989283] - x86/cpu, kvm: Add support for CPUID_80000021_EAX (Waiman Long) [1989283] - x86/bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from S3 (Waiman Long) [1989283] - KVM: x86: Advertise that the SMM_CTL MSR is not supported (Waiman Long) [1989283] - Documentation/hw-vuln: Update spectre doc (Waiman Long) [1989283] - nvme-tcp: fence TCP socket on receive error (John Meneghini) [2116939] - nvme-multipath: fix possible hang in live ns resize with ANA access (John Meneghini) [2116939] - nvme-tcp: fix possible hang caused during ctrl deletion (John Meneghini) [2116939] - nvme-tcp: fix regression that causes sporadic requests to time out (John Meneghini) [2116939] - nvme-tcp: fix UAF when detecting digest errors (John Meneghini) [2116939] - nvme-tcp: check if the queue is allocated before stopping it (John Meneghini) [2116939] - nvme-tcp: always fail a request when sending it failed (John Meneghini) [2116939] - nvme: fix regression when disconnect a recovering ctrl (John Meneghini) [2116939] - nvme-multipath: use vmalloc for ANA log buffer (John Meneghini) [2116939] - bfq: fix waker_bfqq inconsistency crash (Ming Lei) [2177565] - blktrace: Fix output non-blktrace event when blk_classic option enabled (Ming Lei) [2177565] - blk-wbt: fix that 'rwb->wc' is always set to 1 in wbt_init() (Ming Lei) [2177565] - blk-wbt: call rq_qos_add() after wb_normal is initialized (Ming Lei) [2177565] - block: sync mixed merged request's failfast with 1st bio's (Ming Lei) [2177565] - blk-mq: Fix potential io hung for shared sbitmap per tagset (Ming Lei) [2177565] - block: bio-integrity: Copy flags when bio_integrity_payload is cloned (Ming Lei) [2177565] - dim: initialize all struct fields (Audra Mitchell) [2172125] - XArray: Update the LRU list in xas_split() (Audra Mitchell) [2172125] - lib: bitmap: fix many kernel-doc warnings (Audra Mitchell) [2172125] - vsprintf: Fix %pK with kptr_restrict == 0 (Audra Mitchell) [2172125] - lib: uninline simple_strntoull() as well (Audra Mitchell) [2172125] - lib: dimlib: fix help text typos (Audra Mitchell) [2172125] - locks: fix TOCTOU race when granting write lease (Waiman Long) [2152051] - locks: eliminate false positive conflicts for write lease (Waiman Long) [2152051] - locks: Use inode_is_open_for_write (Waiman Long) [2152051] - fs/locks: remove unnecessary white space. (Waiman Long) [2152051] - fs/locks: use properly initialized file_lock when unlocking. (Waiman Long) [2152051] - redhat/configs: Enable CONFIG_PINCTRL_METEORLAKE in RHEL (Prarit Bhargava) [2156845] - pinctrl: intel: Add Intel Meteor Lake pin controller support (Prarit Bhargava) [2156845] - md: fix regression for null-ptr-deference in __md_stop() (Nigel Croxon) [2162231] - md: avoid signed overflow in slot_store() (Nigel Croxon) [2162231] - md: Free resources in __md_stop (Nigel Croxon) [2162231] - md: account io_acct_set usage with active_io (Nigel Croxon) [2162231] - md: use MD_RESYNC_* whenever possible (Nigel Croxon) [2162231] - md: Free writes_pending in md_stop (Nigel Croxon) [2162231] - md: Change active_io to percpu (Nigel Croxon) [2162231] - md: Factor out is_md_suspended helper (Nigel Croxon) [2162231] - md: don't update recovery_cp when curr_resync is ACTIVE (Nigel Croxon) [2162231] - md: fold unbind_rdev_from_array into md_kick_rdev_from_array (Nigel Croxon) [2162231] - md: mark md_kick_rdev_from_array static (Nigel Croxon) [2162231] - mm/kmemleak: fix UAF bug in kmemleak_scan() (Waiman Long) [2172763] - mm/kmemleak: simplify kmemleak_cond_resched() usage (Waiman Long) [2172763] - mm/kmemleak.c: fix a comment (Waiman Long) [2172763] - ptp: introduce a phase offset in the periodic output request (Íñigo Huguet) [2179072] - ptp: add ability to configure duty cycle for periodic output (Íñigo Huguet) [2179072] - platform/x86: intel/pmc/core: Add Meteor Lake mobile support (Prarit Bhargava) [2153968] - platform/x86: intel/pmc/core: Add Meteor Lake support to pmc core driver (Prarit Bhargava) [2153968] - sched/core: Fix arch_scale_freq_tick() on tickless systems (Phil Auld) [2184083] - qede: avoid uninitialized entries in coal_entry array (Michal Schmidt) [2160054] - qede: fix interrupt coalescing configuration (Jonathan Toppins) [2160054] - powerpc/64s: Unmerge EX_LR and EX_DAR (Mamatha Inamdar) [2134271] - powercap: intel_rapl: add support for Meteor Lake (Prarit Bhargava) [2153964] - dm: fix __send_duplicate_bios() to always allow for splitting IO (Benjamin Marzinski) [2184429] - dm: fix improper splitting for abnormal bios (Benjamin Marzinski) [2184429] - ovl: fail on invalid uid/gid mapping at copy up (Miklos Szeredi) [2165342] {CVE-2023-0386}- timers: Provide timer_shutdown[_sync]() (Ivan Vecera) [2174474] - timers: Add shutdown mechanism to the internal functions (Ivan Vecera) [2174474] - timers: Split [try_to_]del_timer[_sync]() to prepare for shutdown mode (Ivan Vecera) [2174474] - timers: Silently ignore timers with a NULL function (Ivan Vecera) [2174474] - timers: Rename del_timer() to timer_delete() (Ivan Vecera) [2174474] - timers: Rename del_timer_sync() to timer_delete_sync() (Ivan Vecera) [2174474] - timers: Use del_timer_sync() even on UP (Ivan Vecera) [2174474] - timers: Update kernel-doc for various functions (Ivan Vecera) [2174474] - timers: Replace BUG_ON()s (Ivan Vecera) [2174474] - timers: Get rid of del_singleshot_timer_sync() (Ivan Vecera) [2174474] - clocksource/drivers/sp804: Do not use timer namespace for timer_shutdown() function (Ivan Vecera) [2174474] - clocksource/drivers/arm_arch_timer: Do not use timer namespace for timer_shutdown() function (Ivan Vecera) [2174474] - misc/sgi-xp: Replace in_interrupt() usage (Ivan Vecera) [2174474] - timers: Don't block on ->expiry_lock for TIMER_IRQSAFE timers (Ivan Vecera) [2174474] - hvcs: Synchronize hotplug remove with port free (Mamatha Inamdar) [2167962] - hvcs: Use vhangup in hotplug remove (Mamatha Inamdar) [2167962] - hvcs: Get reference to tty in remove (Mamatha Inamdar) [2167962] - hvcs: Use driver groups to manage driver attributes (Mamatha Inamdar) [2167962] - hvcs: Use dev_groups to manage hvcs device attributes (Mamatha Inamdar) [2167962] - hvcs: Fix hvcs port reference counting (Mamatha Inamdar) [2167962] - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup() (Mamatha Inamdar) [2167962] - docs/memory-barriers.txt/kokr: introduce io_stop_wc() and add implementation for ARM64 (Ivan Vecera) [2179061] - docs/memory-barriers.txt: Add a missed closing parenthesis (Ivan Vecera) [2179061] - asm-generic: Add missing brackets for io_stop_wc macro (Ivan Vecera) [2179061] - asm-generic: introduce io_stop_wc() and add implementation for ARM64 (Ivan Vecera) [2179061] - ipv4: Fix incorrect table ID in IOCTL path (Guillaume Nault) [2176792] - ipv4: Fix incorrect route flushing when table ID 0 is used (Guillaume Nault) [2176792] - ipv4: Fix incorrect route flushing when source address is deleted (Guillaume Nault) [2176792] - selftests: Add source route tests to fib_tests (Guillaume Nault) [2176792] - mm/rmap: split page_dup_rmap() into page_dup_file_rmap() and page_try_dup_anon_rmap() (David Hildenbrand) [2179164] - mm/memory: slightly simplify copy_present_pte() (David Hildenbrand) [2179164] - mm/hugetlb: take src_mm->write_protect_seq in copy_hugetlb_page_range() (David Hildenbrand) [2179164] - mm: /proc/sys/vm/stat_refresh stop checking monotonic numa stats (Waiman Long) [2178001] - mm: /proc/sys/vm/stat_refresh skip checking known negative stats (Waiman Long) [2178001] - mm: no more EINVAL from /proc/sys/vm/stat_refresh (Waiman Long) [2178001] - mm: restore node stat checking in /proc/sys/vm/stat_refresh (Waiman Long) [2178001] - sfc: ef10: don't overwrite offload features at NIC reset (Íñigo Huguet) [2154500] - sfc: correctly advertise tunneled IPv6 segmentation (Íñigo Huguet) [2154500] - igb: conditionalize I2C bit banging on external thermal sensor support (Corinna Vinschen) [2130727] - platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering (Prarit Bhargava) [2139963] - x86/nmi: Make register_nmi_handler() more robust (Ani Sinha) [2037005] - net: tls: fix possible race condition between do_tls_getsockopt_conf() and do_tls_setsockopt_conf() (Sabrina Dubroca) [2179819] {CVE-2023-28466} - cpufreq: intel_pstate: hybrid: Use known scaling factor for P-cores (Prarit Bhargava) [2179183] - target: iscsi: use GFP_NOIO with loopback connections (Maurizio Lombardi) [2156546] - core_pattern: add CPU specifier (Oleksandr Natalenko) [1968108] - Bluetooth: L2CAP: Fix accepting connection request for invalid SPSM (David Marlin) [2148404] {CVE-2022-42896} - ipv6: prevent router_solicitations for team port (Xin Long) [2141600] - ipv6: Don't send rs packets to the interface of ARPHRD_TUNNEL (Xin Long) [2141600] - Bluetooth: L2CAP: Fix attempting to access uninitialized memory (David Marlin) [2148408] {CVE-2022-42895} - redhat/scripts/create-tarball.sh: Use nproc instead of rpm macros (Prarit Bhargava) - Revert "Switch to z-stream for 8.8 for CKI pipelines" (Denys Vlasenko)- ethernet: Remove vf rate limit check for drivers (Izabela Bakollari) [2172124] - rtnetlink: verify rate parameters for calls to ndo_set_vf_rate (Izabela Bakollari) [2172124] - sfc: Change VF mac via PF as first preference if available. (Íñigo Huguet) [2117449] - Fix genlog.py to ensure that comments retain "%" characters. (Eder Zulian) [RHEL-340] - redhat: fix duplicate jira issues in the resolves line (Eder Zulian) [RHEL-340] - redhat: add support for Jira issues in changelog (Eder Zulian) [RHEL-340] - redhat/configs: Put CONFIG_SFC_* to a proper location (Vladis Dronov) - redhat/configs: Put CONFIG_SEV_GUEST to a proper location (Vladis Dronov) - Reinstate "GFS2: free disk inode which is deleted by remote node -V2" (Bob Peterson) [2181343] - iavf: fix hang on reboot with ice (Stefan Assmann) [2181811] - iavf: Fix race condition between iavf_shutdown and iavf_remove (Stefan Assmann) [2181811] - net/ulp: use consistent error code when blocking ULP (Sabrina Dubroca) [2176955] {CVE-2023-0461} - net/ulp: prevent ULP without clone op from entering the LISTEN status (Sabrina Dubroca) [2176955] {CVE-2023-0461} - lockd: lockd server-side shouldn't set fl_ops (Jeffrey Layton) [2179329] - NFS: Correct timing for assigning access cache timestamp (Benjamin Coddington) [2180851] - Switch to z-stream for 8.8 for CKI pipelines (Michael Hofmann) - KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS (Jon Maloy) [2160033] {CVE-2022-2196}- tracing/hwlat: Replace sched_setaffinity with set_cpus_allowed_ptr (Jerome Marchand) [2174935] - drivers: hv, hyperv_fb: Untangle and refactor Hyper-V panic notifiers (Mohammed Gamal) [2172513] - video: hyperv_fb: Avoid taking busy spinlock on panic path (Mohammed Gamal) [2172513] - HID: hyperv: remove unused struct synthhid_msg (Mohammed Gamal) [2172513] - HID: hyperv: Replace one-element array with flexible-array member (Mohammed Gamal) [2172513] - clocksource: hyper-v: Add TSC page support for root partition (Mohammed Gamal) [2172443] - clocksource: hyper-v: Use TSC PFN getter to map vvar page (Mohammed Gamal) [2172443] - clocksource: hyper-v: Introduce TSC PFN getter (Mohammed Gamal) [2172443] - clocksource: hyper-v: Introduce a pointer to TSC page (Mohammed Gamal) [2172443] - HV: hv_balloon: fix memory leak with using debugfs_lookup() (Mohammed Gamal) [2172435] - debugfs: add debugfs_lookup_and_remove() (Mohammed Gamal) [2172435] - Drivers: hv: Enable vmbus driver for nested root partition (Mohammed Gamal) [2172435] - video: hyperv_fb: Avoid taking busy spinlock on panic path (Mohammed Gamal) [2172435]- sched/deadline: Add more reschedule cases to prio_changed_dl() (Valentin Schneider) [2120570] - perf/x86/uncore: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86/cstate: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86/msr: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86: Add new Raptor Lake S support (Michael Petlan) [2120365] - net: sched: atm: dont intepret cls results when asked to drop (Davide Caratti) [2168336] {CVE-2023-23455} - nvdimm: Allow overwrite in the presence of disabled dimms (Aristeu Rozanski) [2154070] - Revert "GFS2: free disk inode which is deleted by remote node -V2" (Bob Peterson) [2109600] - gfs2: Evict inodes cooperatively (Andreas Gruenbacher) [2109600] - gfs2: Flush delete work before shrinking inode cache (Andreas Gruenbacher) [2109600] - gfs2: Add SDF_DEACTIVATING super block flag (Bob Peterson) [2109600] - gfs2: check gl_object in rgrp glops (Bob Peterson) [2109600] - gfs2: Split the two kinds of glock "delete" work (Andreas Gruenbacher) [2109600] - gfs2: Move delete workqueue into super block (Andreas Gruenbacher) [2109600] - gfs2: Use container_of() for gfs2_glock(aspace) (Andreas Gruenbacher) [2109600] - gfs2: Get rid of GLF_PENDING_DELETE flag (Andreas Gruenbacher) [2109600] - gfs2: Make glock lru list scanning safer (Andreas Gruenbacher) [2109600] - gfs2: Fix use-after-free in gfs2_glock_shrink_scan (Andreas Gruenbacher) [2109600] - gfs2: Clean up gfs2_scan_glock_lru (Andreas Gruenbacher) [2109600] - gfs2: gl_object races fix (Andreas Gruenbacher) [2109600] - iomap/gfs2: Unlock and put folio in page_done handler (Andreas Gruenbacher) [2109600] - iomap: Add __iomap_put_folio helper (Andreas Gruenbacher) [2109600] - gfs2: Remove support for glock holder auto-demotion (2) (Andreas Gruenbacher) [2109600] - gfs2: Remove support for glock holder auto-demotion (Andreas Gruenbacher) [2109600] - gfs2: Minor gfs2_try_evict cleanup (Andreas Gruenbacher) [2109600] - gfs2: Partially revert gfs2_inode_lookup change (Andreas Gruenbacher) [2109600] - gfs2: Add gfs2_inode_lookup comment (Andreas Gruenbacher) [2109600] - gfs2: Uninline and improve glock_{set,clear}_object (Andreas Gruenbacher) [2109600] - gfs2: Simply dequeue iopen glock in gfs2_evict_inode (Andreas Gruenbacher) [2109600] - gfs2: Clean up after gfs2_create_inode rework (Andreas Gruenbacher) [2109600] - gfs2: Avoid dequeuing GL_ASYNC glock holders twice (Andreas Gruenbacher) [2109600] - gfs2: Handle -EBUSY result of insert_inode_locked4 (Andreas Gruenbacher) [2109600] - gfs2: Fix and clean up create / evict interaction (Andreas Gruenbacher) [2109600] - gfs2: Clean up initialization of "ip" in gfs2_create_inode (Andreas Gruenbacher) [2109600] - gfs2: Get rid of ghs[] in gfs2_create_inode (Andreas Gruenbacher) [2109600] - gfs2: Dequeue waiters when withdrawn (Bob Peterson) [2109600] - gfs2: Prevent double iput for journal on error (Bob Peterson) [2109600] - Revert "gfs2: stop using generic_writepages in gfs2_ail1_start_one" (Andreas Gruenbacher) [2109600] - gfs2: remove ->writepage (Andreas Gruenbacher) [2109600] - gfs2: stop using generic_writepages in gfs2_ail1_start_one (Andreas Gruenbacher) [2109600] - gfs2: List traversal in do_promote is safe (Andreas Gruenbacher) [2109600] - gfs2: do_promote glock holder stealing fix (Bob Peterson) [2109600] - gfs2: Use better variable name (Andreas Gruenbacher) [2109600] - gfs2: Make go_instantiate take a glock (Andreas Gruenbacher) [2109600] - gfs2: Add new go_held glock operation (Andreas Gruenbacher) [2109600] - gfs2: Revert 'Fix "truncate in progress" hang' (Andreas Gruenbacher) [2109600] - gfs2: Instantiate glocks ouside of glock state engine (Andreas Gruenbacher) [2109600] - gfs2: Fix up gfs2_glock_async_wait (Andreas Gruenbacher) [2109600] - gfs2: Add GL_NOPID flag for process-independent glock holders (Andreas Gruenbacher) [2109600] - gfs2: dump inode object for iopen glocks (Bob Peterson) [2109600] - gfs2: convert to use DEFINE_SEQ_ATTRIBUTE macro (Andreas Gruenbacher) [2109600] - gfs2: Use TRY lock in gfs2_inode_lookup for UNLINKED inodes (Bob Peterson) [2109600] - Updated dist tag to el8_8 (Lucas Zampieri) - Revert "net/mlx5: Don't perform lookup after already known sec_path" (Amir Tzin) [2176349] - KVM: x86: do not report a vCPU as preempted outside instruction boundaries (Jon Maloy) [2124800] {CVE-2022-39189} - Drivers: vmbus: Check for channel allocation before looking up relids (Mohammed Gamal) [2178622] - drm/nouveau/fb/tu102-: fix register used to determine scrub status (Karol Herbst) [2168648] - drm/nouveau/devinit/tu102-: wait for GFW_BOOT_PROGRESS == COMPLETED (Karol Herbst) [2168648] - fs/proc: task_mmu.c: don't read mapcount for migration entry (Jay Shin) [2174623] - perf/core: Fix cgroup event list management (Michael Petlan) [2162525]- redhat: include all certs (Red Hat and CentOS) in the srpm (Denys Vlasenko) [2179095] - redhat: do not require grub2 on s390x (Denys Vlasenko) [2179095] - thermal: int340x: Add Meteor Lake PCI device ID (Prarit Bhargava) [2156822] - i2c: i801: Add support for Intel Meteor Lake-P (Prarit Bhargava) [2156841]- redhat: fix the signing failure on ppc64el on centos (Denys Vlasenko) [2179095]- redhat: add centos signing certs (Denys Vlasenko) - redhat: fix "make rh-brew" not choosing _scratch_ build (Denys Vlasenko) - mfd: intel-lpss: Add Intel Meteor Lake-P PCI IDs (Prarit Bhargava) [2156843] - x86/cpu: Add CPU model numbers for Meteor Lake (Prarit Bhargava) [2153936] - redhat: require grub2 >= 2.02-99 (Denys Vlasenko) [2179095] - redhat: delete unused script and file (Denys Vlasenko) [2179095] - redhat: drop certificates that were deprecated after GRUB's BootHole flaw (Denys Vlasenko) [2179095] - redhat: align file names with names of signing keys for ppc and s390 (Denys Vlasenko) [2179095]- net/tunnel: wait until all sk_user_data reader finish before releasing the sock (Hangbin Liu) [2176344] - powerpc/pseries: unregister VPA when hot unplugging a CPU (Mamatha Inamdar) [2143007] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2172474] - net: mana: Fix return type of mana_start_xmit() (Mohammed Gamal) [2172474] - net: mana: Define data structures for protection domain and memory registration (Mohammed Gamal) [2172474] - net: mana: Define and process GDMA response code GDMA_STATUS_MORE_ENTRIES (Mohammed Gamal) [2172474] - net: mana: Define max values for SGL entries (Mohammed Gamal) [2172474] - net: mana: Move header files to a common location (Mohammed Gamal) [2172474] - net: mana: Record port number in netdev (Mohammed Gamal) [2172474] - net: mana: Export Work Queue functions for use by RDMA driver (Mohammed Gamal) [2172474] - net: mana: Set the DMA device max segment size (Mohammed Gamal) [2172474] - net: mana: Handle vport sharing between devices (Mohammed Gamal) [2172474] - net: mana: Record the physical address for doorbell page region (Mohammed Gamal) [2172474] - net: mana: Add support for auxiliary device (Mohammed Gamal) [2172474] - hv_netvsc: Check status in SEND_RNDIS_PKT completion message (Mohammed Gamal) [2172438] - hv_netvsc: Allocate memory in netvsc_dma_map() with GFP_ATOMIC (Mohammed Gamal) [2172438] - hv_netvsc: Fix missed pagebuf entries in netvsc_dma_map/unmap() (Mohammed Gamal) [2172438] - Drivers: hv: Make remove callback of hyperv driver void returned (Mohammed Gamal) [2172438] - hv: fix comment typo in vmbus_channel/low_latency (Mohammed Gamal) [2172434] - x86/hyperv: Introduce HV_MAX_SPARSE_VCPU_BANKS/HV_VCPUS_PER_SPARSE_BANK constants (Mohammed Gamal) [2172434] - x86/hyperv: Fix hv_get/set_register for nested bringup (Mohammed Gamal) [2172434] - x86/hyperv: Add an interface to do nested hypercalls (Mohammed Gamal) [2172434] - Drivers: hv: Setup synic registers in case of nested root partition (Mohammed Gamal) [2172434] - x86/hyperv: Add support for detecting nested hypervisor (Mohammed Gamal) [2172434] - x86/hyperv: Add HV_EXPOSE_INVARIANT_TSC define (Mohammed Gamal) [2172434] - x86/hyperv: Expand definition of struct hv_vp_assist_page (Mohammed Gamal) [2172434] - KVM: x86: hyper-v: Expose support for extended gva ranges for flush hypercalls (Mohammed Gamal) [2172434] - x86/hyperv: Move VMCB enlightenment definitions to hyperv-tlfs.h (Mohammed Gamal) [2172434] - iommu/hyper-v: Allow hyperv irq remapping without x2apic (Mohammed Gamal) [2172434] - smp: Fix offline cpu check in flush_smp_call_function_queue() (Waiman Long) [2169471] - sched/fair: Trigger the update of blocked load on newly idle cpu (Waiman Long) [2169471] - redhat: rh-dist-git should depend on rh-srpm (Denys Vlasenko) - redhat: change kabi tarballs to use the package release (Denys Vlasenko) - redhat/Makefile: add variables used in rhel9 makefiles (Denys Vlasenko) - redhat/Makefile: Remove RHPRODUCT variable (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: expand sources from srpm (Denys Vlasenko) - redhat: remove GL_DISTGIT_USER, RHDISTGIT and unify dist-git cloning (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: Use Makefile variables (Denys Vlasenko) - redhat: fix typo and make the output more silent for dist-git sync (Denys Vlasenko) - redhat: add initial support for centos stream dist-git sync on Makefiles (Denys Vlasenko) - internal: update RHEL_MINOR for the start of RHEL-8.9 development (Denys Vlasenko) - watchdog: diag288_wdt: fix __diag288() inline assembly (Tobias Huschle) [2171361] - watchdog: diag288_wdt: do not use stack buffers for hardware data (Tobias Huschle) [2171361] - bonding: add documentation for peer_notif_delay (Ryosuke Yasuoka) [2171348] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878] - ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878]- ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- cpufreq: intel_pstate: Add Sapphire Rapids support in no-HWP mode (Prarit Bhargava) [2170564]- igb: Initialize mailbox message for VF reset (Corinna Vinschen) [2103948] - igb: Allocate MSI-X vector when testing (Corinna Vinschen) [2103948] - igb: Proactively round up to kmalloc bucket size (Corinna Vinschen) [2103948] - igb: Do not free q_vector unless new one was allocated (Corinna Vinschen) [2103948] - ptp: introduce helpers to adjust by scaled parts per million (Corinna Vinschen) [2103948] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Corinna Vinschen) [2103948] - net: ethernet: move from strlcpy with unused retval to strscpy (Corinna Vinschen) [2103948] - igb: convert .adjfreq to .adjfine (Corinna Vinschen) [2103948] - ASoC: Intel: soc-acpi: add configuration for variant of 0C11 product (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add configuration for variant of 0C40 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: use common helpers for all Realtek amps (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C11 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C4F product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C40 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C10 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw_rt1316: add BQ params for the Dell models (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw_rt1308: add BQ params for the Dell models (Jaroslav Kysela) [2100582] - ASoC: intel: sof_sdw: add rt1318 codec support. (Jaroslav Kysela) [2100582] - ASoC: rt1318: Add RT1318 SDCA vendor-specific driver (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: update codec addr on 0C11/0C4F product (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C11 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C40 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C10 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi-intel-rpl-match: add rpl_sdca_3_in_1 support (Jaroslav Kysela) [2100582]- net: ena: Update NUMA TPH hint register upon NUMA node update (Petr Oros) [2167316] - net: ena: Set default value for RX interrupt moderation (Petr Oros) [2167316] - net: ena: Fix rx_copybreak value update (Petr Oros) [2167316] - net: ena: Use bitmask to indicate packet redirection (Petr Oros) [2167316] - net: ena: Account for the number of processed bytes in XDP (Petr Oros) [2167316] - net: ena: Don't register memory info on XDP exchange (Petr Oros) [2167316] - net: ena: Fix toeplitz initial hash value (Petr Oros) [2167316] - net: ena: Fix error handling in ena_init() (Petr Oros) [2167316] - net: sched: disallow noqueue for qdisc classes (Xin Long) [2168282] {CVE-2022-47929} - net: sched: cbq: dont intepret cls results when asked to drop (Xin Long) [2168327] {CVE-2023-23454} - sctp: do not check hb_timer.expires when resetting hb_timer (Xin Long) [2133092] - arm64: Add AMPERE1 to the Spectre-BHB affected list (Mark Salter) [2140727] - net: mana: Fix accessing freed irq affinity_hint (Emanuele Giuseppe Esposito) [2168969] - net: mana: Assign interrupts to CPUs based on NUMA nodes (Emanuele Giuseppe Esposito) [2168969] - Revert "RDMA/irdma: Report the correct link speed" (Kamal Heib) [2143088] - Documentation/sysctl: document page_lock_unfairness (Nico Pache) [2165737] {CVE-2022-3623} - mm: allow a controlled amount of unfairness in the page lock (Nico Pache) [2165737] {CVE-2022-3623} - mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb page (Nico Pache) [2165737] {CVE-2022-3623} - mm/migration: fix potential pte_unmap on an not mapped pte (Nico Pache) [2165737] {CVE-2022-3623} - mm/migrate.c: rework migration_entry_wait() to not take a pageref (Nico Pache) [2165737] {CVE-2022-3623} - mm: make wait_on_page_writeback() wait for multiple pending writebacks (Nico Pache) [2165737] {CVE-2022-3623} - mm: rewrite wait_on_page_bit_common() logic (Nico Pache) [2165737] {CVE-2022-3623} - mm/gup.c: use is_vm_hugetlb_page() to check whether to follow huge (Nico Pache) [2165737] {CVE-2022-3623}- perf/x86/amd: Fix crash due to race between amd_pmu_enable_all, perf NMI and throttling (Michael Petlan) [2085282] - x86/perf: Fix snapshot_branch_stack warning in VM (Michael Petlan) [2085282] - perf/x86/amd/core: Fix reloading events for SVM (Michael Petlan) [2085282 2086722] - perf/x86/amd: Run AMD BRS code only on supported hw (Michael Petlan) [2085282] - perf/x86/amd: Fix AMD BRS period adjustment (Michael Petlan) [2085282] - perf/x86/amd: Remove unused variable 'hwc' (Michael Petlan) [2085282] - perf/ibs: Fix comment (Michael Petlan) [2085282] - perf report: Add tools/arch/x86/include/asm/amd-ibs.h (Michael Petlan) [2085282] - perf/amd/ibs: Advertise zen4_ibs_extensions as pmu capability attribute (Michael Petlan) [2085282] - perf/amd/ibs: Add support for L3 miss filtering (Michael Petlan) [2085282] - perf/amd/ibs: Use ->is_visible callback for dynamic attributes (Michael Petlan) [2085282] - perf/amd/ibs: Cascade pmu init functions' return value (Michael Petlan) [2085282] - perf/amd/ibs: Use interrupt regs ip for stack unwinding (Michael Petlan) [2085282] - perf/x86/amd/core: Add PerfMonV2 overflow handling (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Add PerfMonV2 counter control (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Detect available counters (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Detect PerfMonV2 support (Michael Petlan) [2085282 2086722] - x86/msr: Add PerfCntrGlobal* registers (Michael Petlan) [2085282 2086722] - x86/cpufeatures: Add PerfMonV2 feature bit (Michael Petlan) [2085282 2086722] - perf/x86: Unify format of events sysfs show (Michael Petlan) [2085282] - perf/x86/amd: Add idle hooks for branch sampling (Michael Petlan) [2085282] - perf: Enable branch record for software events (Michael Petlan) [2085282] - redhat/configs: Enable AMD Zen3 branch sampling by default (Michael Petlan) [2085282] - perf/x86/amd: Make Zen3 branch sampling opt-in (Michael Petlan) [2085282] - perf/x86/amd: Add AMD branch sampling period adjustment (Michael Petlan) [2085282] - perf/x86/amd: Enable branch sampling priv level filtering (Michael Petlan) [2085282] - perf/x86/amd: Add branch-brs helper event for Fam19h BRS (Michael Petlan) [2085282] - perf/x86/amd: Add AMD Fam19h Branch Sampling support (Michael Petlan) [2085282] - perf/x86/amd/ibs: Add bitfield definitions in new header (Michael Petlan) [2085282] - perf/amd/uncore: Allow the driver to be built as a module (Michael Petlan) [2085282] - perf/amd/uncore: Clean up header use, use module_list from nf_tables_exit_net() (Florian Westphal) [2134371] - netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain() (Florian Westphal) [2134371] - netfilter: nf_tables: do not leave chain stats enabled on error (Florian Westphal) [2134371] - ipvs: use explicitly signed chars (Florian Westphal) [2134371] - netfilter: nf_tables: release flow rule object from commit path (Florian Westphal) [2134371] - netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain() (Florian Westphal) [2134371] - netfilter: nf_tables: clean up hook list when offload flags check fails (Florian Westphal) [2134371] - netfilter: br_netfilter: Drop dst references before setting. (Florian Westphal) [2134371] - netfilter: nft_tproxy: restrict to prerouting hook (Florian Westphal) [2134371] - netfilter: ebtables: fix memory leak when blob is malformed (Florian Westphal) [2134371] - netfilter: ebtables: reject blobs that don't provide all entry points (Florian Westphal) [2134371] - netfilter: nf_tables: check NFT_SET_CONCAT flag if field_count is specified (Florian Westphal) [2134371] - netfilter: nf_tables: relax NFTA_SET_ELEM_KEY_END set flags requirements (Florian Westphal) [2134371] - netfilter: nf_tables: NFTA_SET_ELEM_KEY_END requires concat and interval flags (Florian Westphal) [2134371] - netfilter: nf_tables: validate NFTA_SET_ELEM_OBJREF based on NFT_SET_OBJECT flag (Florian Westphal) [2134371] - netfilter: nf_tables: possible module reference underflow in error path (Florian Westphal) [2134371] - netfilter: nf_tables: disallow NFTA_SET_ELEM_KEY_END with NFT_SET_ELEM_INTERVAL_END flag (Florian Westphal) [2134371] - netfilter: nf_tables: use READ_ONCE and WRITE_ONCE for shared generation id access (Florian Westphal) [2134371] - netfilter: nf_tables: fix null deref due to zeroed list head (Florian Westphal) [2134371]- bnxt_en: fix memory leak in bnxt_nvm_test() (Ken Cox) [2112186] - bnxt_en: Fix HDS and jumbo thresholds for RX packets (Ken Cox) [2112186] - bnxt_en: Fix first buffer size calculations for XDP multi-buffer (Ken Cox) [2112186] - bnxt_en: Fix XDP RX path (Ken Cox) [2112186] - bnxt_en: Simplify bnxt_xdp_buff_init() (Ken Cox) [2112186] - bnxt: prevent skb UAF after handing over to PTP worker (Ken Cox) [2112186] - bnxt_en: fix flags to check for supported fw version (Ken Cox) [2112186] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2112186] - bnxt_en: fix NQ resource accounting during vf creation on 57500 chips (Ken Cox) [2112186] - bnxt_en: set missing reload flag in devlink features (Ken Cox) [2112186] - bnxt_en: Use PAGE_SIZE to init buffer when multi buffer XDP is not in use (Ken Cox) [2112186] - bnxt_en: Remove duplicated include bnxt_devlink.c (Ken Cox) [2112186] - bnxt_en: implement callbacks for devlink selftests (Ken Cox) [2112186] - bnxt_en: Fix bnxt_refclk_read() (Ken Cox) [2112186] - bnxt_en: fix livepatch query (Ken Cox) [2112186] - bnxt_en: Fix bnxt_reinit_after_abort() code path (Ken Cox) [2112186] - bnxt_en: reclaim max resources if sriov enable fails (Ken Cox) [2112186] - bnxt: Use the bitmap API to allocate bitmaps (Ken Cox) [2112186] - bnxt: Fix typo in comments (Ken Cox) [2112186] - eth: bnxt: make ulp_id unsigned to make GCC 12 happy (Ken Cox) [2112186] - bnxt_en: Enable packet timestamping for all RX packets (Ken Cox) [2112186] - bnxt_en: Configure ptp filters during bnxt open (Ken Cox) [2112186] - bnxt_en: Update firmware interface to 1.10.2.95 (Ken Cox) [2112186] - bnxt: add page_pool support for aggregation ring when using xdp (Ken Cox) [2112186] - bnxt: change receive ring space parameters (Ken Cox) [2112186] - bnxt: rename bnxt_rx_pages to bnxt_rx_agg_pages_skb (Ken Cox) [2112186] - bnxt: refactor bnxt_rx_pages operate on skb_shared_info (Ken Cox) [2112186] - bnxt: add flag to denote that an xdp program is currently attached (Ken Cox) [2112186] - bnxt: refactor bnxt_rx_xdp to separate xdp_init_buff/xdp_prepare_buff (Ken Cox) [2112186] - bnxt: report header-data split state (Ken Cox) [2112186] - net: Don't include filter.h from net/sock.h (Ken Cox) [2112186] - ethernet: constify references to netdev->dev_addr in drivers (Ken Cox) [2112186] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2112186] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ken Cox) [2112186] - bnxt_en: Use struct_group_attr() for memcpy() region (Ken Cox) [2112186] - net: don't include ethtool.h from netdevice.h (Ken Cox) [2112186] - treewide: Use fallthrough pseudo-keyword (Ken Cox) [2112186] - net: Use skb_frag_off accessors (Ken Cox) [2112186] - net: Use skb accessors in network drivers (Ken Cox) [2112186] - ethernet: remove redundant memset (Ken Cox) [2112186] - treewide: Add SPDX license identifier - Makefile/Kconfig (Ken Cox) [2112186]- ASoC: amd: renoir: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [2169761] - ASoC: amd: renoir: Adjust the gain for PDM DMIC (Jaroslav Kysela) [2169761] - ASoC: amd: yc: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [2169761] - ASoC: amd: yc: Adjust the gain for PDM DMIC (Jaroslav Kysela) [2169761] - genirq: Fix reference leaks on irq affinity notifiers (Ricardo Robaina) [2154842] - genirq: Prevent use-after-free and work list corruption (Ricardo Robaina) [2154842] - perf/x86/uncore: Don't WARN_ON_ONCE() for a broken discovery table (Michael Petlan) [2154044] - perf/x86/uncore: Add a quirk for UPI on SPR (Michael Petlan) [2154044] - perf/x86/uncore: Ignore broken units in discovery table (Michael Petlan) [2154044] - perf/x86/uncore: Fix potential NULL pointer in uncore_get_alias_name (Michael Petlan) [2154044] - perf/x86/uncore: Factor out uncore_device_to_die() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Support extra IMC channel on Ice Lake server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix CAS_COUNT_WRITE issue for ICX (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix IIO event constraints for Snowridge (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix IIO event constraints for Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix filter_tid mask for CHA events on Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix Intel ICX IIO event constraints (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in __uncore_imc_init_box() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in snr_uncore_mmio_map() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in hswep_has_limit_sbox() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in sad_cfg_iio_topology() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Make set_mapping() procedure void (Michael Petlan) [2154044] - perf/x86/intel/uncore: Update sysfs-devices-mapping file (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Sapphire Rapids (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Icelake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Get UPI NodeID and GroupID (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Generalize get_topology() for SKX PMUs (Michael Petlan) [2154044] - perf/x86/intel/uncore: Disable I/O stacks to PMU mapping on ICX-D (Michael Petlan) [2154044] - perf/x86/intel/uncore: Clear attr_update properly (Michael Petlan) [2154044] - perf/x86/intel/uncore: Introduce UPI topology type (Michael Petlan) [2154044] - perf/x86/intel/uncore: Generalize IIO topology support (Michael Petlan) [2154044]- net/mlx4: Check retval of mlx4_bitmap_init (Amir Tzin) [2150787] - net/mlx4: Fix error check for dma_map_sg (Amir Tzin) [2150787] - net/mlx4_en: Fix wrong return value on ioctl EEPROM query failure (Amir Tzin) [2150787] - RDMA/mlx4: Avoid flush_scheduled_work() usage (Amir Tzin) [2150787] - net: mellanox: fix open-coded for_each_set_bit() (Amir Tzin) [2150787] - tracing: Add linear buckets to histogram logic (Jerome Marchand) [2161509] - configs/generic: enable CONFIG_RTC_SYSTOHC (Marcelo Tosatti) [2135417] - watchdog: fix UAF in reboot notifier handling in watchdog core code (Wander Lairson Costa) [2131308]- drm/i915/fbdev: do not create fbdev if HPD is suspended (Jocelyn Falempe) [2156006] - drm/i915/fbdev: suspend HPD before fbdev unregistration (Jocelyn Falempe) [2156006] - drm/i915/hpd: suspend MST at the end of intel_modeset_driver_remove (Jocelyn Falempe) [2156006] - drm/i915/gvt: fix vgpu debugfs clean in remove (Jocelyn Falempe) [2115903] - drm/i915/gvt: fix gvt debugfs destroy (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix kernel warning during topology setup (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: Enable Freesync Video Mode by default" (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix double release compute pasid (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix kfd_process_device_init_vm error handling (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix size validation for non-exclusive domains (v4) (Jocelyn Falempe) [2115903] - drm/i915/gvt: fix double free bug in split_2MB_gtt_entry (Jocelyn Falempe) [2115903] - drm/i915: unpin on error in intel_vgpu_shadow_mm_pin() (Jocelyn Falempe) [2115903] - drm/amd/pm: correct the fan speed retrieving in PWM for some SMU13 asics (Jocelyn Falempe) [2115903] - drm/amd/pm: bump SMU13.0.0 driver_if header to version 0x34 (Jocelyn Falempe) [2115903] - drm/amd/pm: add missing SMU13.0.7 mm_dpm feature mapping (Jocelyn Falempe) [2115903] - drm/amd/pm: add missing SMU13.0.0 mm_dpm feature mapping (Jocelyn Falempe) [2115903] - drm/i915/migrate: Account for the reserved_space (Jocelyn Falempe) [2115903] - drm/i915: improve the catch-all evict to handle lock contention (Jocelyn Falempe) [2115903] - drm/amdgpu: make display pinning more flexible (v2) (Jocelyn Falempe) [2115903] - drm/amdgpu: handle polaris10/11 overlap asics (v2) (Jocelyn Falempe) [2115903] - drm/amd/display: Add DCN314 display SG Support (Jocelyn Falempe) [2115903] - drm/i915/ttm: consider CCS for backup objects (Jocelyn Falempe) [2115903] - drm/i915/dsi: fix VBT send packet port selection for dual link DSI (Jocelyn Falempe) [2115903] - drm/vmwgfx: Validate the box size for the snooped cursor (Jocelyn Falempe) [2115903] - drm/connector: send hotplug uevent on connector cleanup (Jocelyn Falempe) [2115903] - drm/amdgpu: fix mmhub register base coding error (Jocelyn Falempe) [2115903] - drm/amd/pm: correct SMU13.0.0 pstate profiling clock settings (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU13.0.0 reported maximum shader clock (Jocelyn Falempe) [2115903] - drm/amdgpu: skip MES for S0ix as well since it's part of GFX (Jocelyn Falempe) [2115903] - drm/amd/display: revert Disable DRR actions during state commit (Jocelyn Falempe) [2115903] - drm/amd/pm: avoid large variable on kernel stack (Jocelyn Falempe) [2115903] - drm/i915/display: Don't disable DDI/Transcoder when setting phy test pattern (Jocelyn Falempe) [2115903] - drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid() (Jocelyn Falempe) [2115903] - drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid() (Jocelyn Falempe) [2115903] - drm/amd/display: Fix DTBCLK disable requests and SRC_SEL programming (Jocelyn Falempe) [2115903] - drm/amd/display: Use the largest vready_offset in pipe group (Jocelyn Falempe) [2115903] - drm/amd/display: fix array index out of bound error in bios parser (Jocelyn Falempe) [2115903] - drm/amd/display: Workaround to increase phantom pipe vactive in pipesplit (Jocelyn Falempe) [2115903] - drm/sti: Use drm_mode_copy() (Jocelyn Falempe) [2115903] - drm/amd/display: Disable DRR actions during state commit (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix type of second parameter in odn_edit_dpm_table() callback (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix type of second parameter in trans_msg() callback (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: Limit max DSC target bpp for specific monitors" (Jocelyn Falempe) [2115903] - drm/edid: add a quirk for two LG monitors to get them to work on 10bpc (Jocelyn Falempe) [2115903] - drm/amd/display: prevent memory leak (Jocelyn Falempe) [2115903] - drm/i915/bios: fix a memory leak in generate_lfp_data_ptrs (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix memory leakage (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios() (Jocelyn Falempe) [2115903] - drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios() (Jocelyn Falempe) [2115903] - amdgpu/nv.c: Corrected typo in the video capabilities resolution (Jocelyn Falempe) [2115903] - drm/amd/pm/smu11: BACO is supported when it's in BACO state (Jocelyn Falempe) [2115903] - drm/tegra: Add missing clk_disable_unprepare() in tegra_dc_probe() (Jocelyn Falempe) [2115903] - drm/i915/guc: make default_lists const data (Jocelyn Falempe) [2115903] - drm/amdgpu: fix pci device refcount leak (Jocelyn Falempe) [2115903] - drm/fourcc: Fix vsub/hsub for Q410 and Q401 (Jocelyn Falempe) [2115903] - amdgpu/pm: prevent array underflow in vega20_odn_edit_dpm_table() (Jocelyn Falempe) [2115903] - drm/radeon: Add the missed acpi_put_table() to fix memory leak (Jocelyn Falempe) [2115903] - drm/ttm: fix undefined behavior in bit shift for TTM_TT_FLAG_PRIV_POPULATED (Jocelyn Falempe) [2115903] - drm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure (Jocelyn Falempe) [2115903] - drm/amd/display: wait for vblank during pipe programming (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix GuC error capture sizing estimation and reporting (Jocelyn Falempe) [2115903] - drm/i915/guc: Add error-capture init warnings when needed (Jocelyn Falempe) [2115903] - drm/i915/guc: Make GuC log sizes runtime configurable (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix capture size warning and bump the size (Jocelyn Falempe) [2115903] - drm/i915/guc: Add a helper for log buffer size (Jocelyn Falempe) [2115903] - drm/i915: Fix compute pre-emption w/a to apply to compute engines (Jocelyn Falempe) [2115903] - drm/i915/guc: Limit scheduling properties to avoid overflow (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Initialize AUX channel in it6505_i2c_probe (Jocelyn Falempe) [2115903] - drm/amdgpu/powerplay/psm: Fix memory leak in power state init (Jocelyn Falempe) [2115903] - drm/bridge: adv7533: remove dynamic lane switching from adv7533 bridge (Jocelyn Falempe) [2115903] - drm/atomic-helper: Don't allocate new plane state in CRTC check (Jocelyn Falempe) [2115903] - drm/amdgpu/vcn: update vcn4 fw shared data structure (Jocelyn Falempe) [2115903] - drm: bridge: dw_hdmi: fix preference of RGB modes over YUV420 (Jocelyn Falempe) [2115903] - drm/bridge: ti-sn65dsi86: Fix output polarity setting bug (Jocelyn Falempe) [2115903] - drm/vmwgfx: Fix race issue calling pin_user_pages (Jocelyn Falempe) [2115903] - drm/shmem-helper: Avoid vm_open error paths (Jocelyn Falempe) [2115903] - drm/shmem-helper: Remove errant put in error path (Jocelyn Falempe) [2115903] - drm/amd/display: fix array index out of bound error in DCN32 DML (Jocelyn Falempe) [2115903] - drm/amdgpu/sdma_v4_0: turn off SDMA ring buffer in the s2idle suspend (Jocelyn Falempe) [2115903] - drm/vmwgfx: Don't use screen objects when SEV is active (Jocelyn Falempe) [2115903] - drm/amdgpu: fix use-after-free during gpu recovery (Jocelyn Falempe) [2115903] - drm/amd/display: Use new num clk levels struct for max mclk index (Jocelyn Falempe) [2115903] - drm/amd/display: Avoid setting pixel rate divider to N/A (Jocelyn Falempe) [2115903] - drm/amd/display: Use viewport height for subvp mall allocation size (Jocelyn Falempe) [2115903] - drm/i915: Remove non-existent pipes from bigjoiner pipe mask (Jocelyn Falempe) [2115903] - drm/i915: Never return 0 if not all requests retired (Jocelyn Falempe) [2115903] - drm/i915: Fix negative value passed as remaining time (Jocelyn Falempe) [2115903] - drm/amdgpu: enable Vangogh VCN indirect sram mode (Jocelyn Falempe) [2115903] - drm/amdgpu: temporarily disable broken Clang builds due to blown stack-frame (Jocelyn Falempe) [2115903] - drm/amd/pm: update driver if header for smu_13_0_7 (Jocelyn Falempe) [2115903] - drm/amd/pm: update driver-if header for smu_v13_0_10 (Jocelyn Falempe) [2115903] - drm/amd/pm: add smu_v13_0_10 driver if version (Jocelyn Falempe) [2115903] - drm/amdgpu: fix userptr HMM range handling v2 (Jocelyn Falempe) [2115903] - drm/amdgpu: cleanup error handling in amdgpu_cs_parser_bos (Jocelyn Falempe) [2115903] - drm/amdgpu: move setting the job resources (Jocelyn Falempe) [2115903] - drm/amdgpu: Partially revert "drm/amdgpu: update drm_display_info correctly when the edid is read" (Jocelyn Falempe) [2115903] - drm/amdgpu: always register an MMU notifier for userptr (Jocelyn Falempe) [2115903] - drm/amd/display: Update soc bounding box for dcn32/dcn321 (Jocelyn Falempe) [2115903] - drm/amd/amdgpu: reserve vm invalidation engine for firmware (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable Aldebaran devices to report CU Occupancy (Jocelyn Falempe) [2115903] - drm/amdgpu/psp: don't free PSP buffers on suspend (Jocelyn Falempe) [2115903] - drm/amd/display: No display after resume from WB/CB (Jocelyn Falempe) [2115903] - drm/amd/dc/dce120: Fix audio register mapping, stop triggering KASAN (Jocelyn Falempe) [2115903] - drm/display/dp_mst: Fix drm_dp_mst_add_affected_dsc_crtcs() return code (Jocelyn Falempe) [2115903] - drm/i915/ttm: never purge busy objects (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix a memory limit issue (Jocelyn Falempe) [2115903] - drm/amdgpu: disable BACO support on more cards (Jocelyn Falempe) [2115903] - drm/amd/display: use uclk pstate latency for fw assisted mclk validation dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix calculation for cursor CAB allocation (Jocelyn Falempe) [2115903] - drm/amd/display: Update MALL SS NumWays calculation (Jocelyn Falempe) [2115903] - drm/amd/display: Add debug option for allocating extra way for cursor (Jocelyn Falempe) [2115903] - drm/amd/display: Added debug option for forcing subvp num ways (Jocelyn Falempe) [2115903] - drm/amdkfd: update GFX11 CWSR trap handler (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable SA software trap. (Jocelyn Falempe) [2115903] - dma-buf: Use dma_fence_unwrap_for_each when importing fences (Jocelyn Falempe) [2115903] - dma-buf: fix racing conflict of dma_heap_add() (Jocelyn Falempe) [2115903] - drm/i915: Fix warn in intel_display_power_*_domain() functions (Jocelyn Falempe) [2115903] - drm/amd/display: only fill dirty rectangles when PSR is enabled (Jocelyn Falempe) [2115903] - drm/amdgpu: Drop eviction lock when allocating PT BO (Jocelyn Falempe) [2115903] - Revert "drm/amdgpu: Revert "drm/amdgpu: getting fan speed pwm for vega10 properly"" (Jocelyn Falempe) [2115903] - drm/amd/display: Fix gpio port mapping issue (Jocelyn Falempe) [2115903] - drm/amd/display: Fix FCLK deviation and tool compile issues (Jocelyn Falempe) [2115903] - drm/amd/display: Zeromem mypipe heap struct before using it (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Acer Switch V 10 (SW5-017) (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Nanote UMPC-01 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix prefetch calculations for dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: don't enable DRM CRTC degamma property for DCE (Jocelyn Falempe) [2115903] - drm/amd/display: Fix optc2_configure warning on dcn314 (Jocelyn Falempe) [2115903] - drm/amd/display: Support parsing VRAM info v3.0 from VBIOS (Jocelyn Falempe) [2115903] - drm/amd/display: Fix access timeout to DPIA AUX at boot time (Jocelyn Falempe) [2115903] - drm/amd/display: Add HUBP surface flip interrupt handler (Jocelyn Falempe) [2115903] - drm/amd/display: Fix invalid DPIA AUX reply causing system hang (Jocelyn Falempe) [2115903] - drm/display: Don't assume dual mode adaptors support i2c sub-addressing (Jocelyn Falempe) [2115903] - drm/amd/pm: fix SMU13 runpm hang due to unintentional workaround (Jocelyn Falempe) [2115903] - drm/amd/pm: enable runpm support over BACO for SMU13.0.0 (Jocelyn Falempe) [2115903] - drm/amd/pm: enable runpm support over BACO for SMU13.0.7 (Jocelyn Falempe) [2115903] - drm: Fix potential null-ptr-deref in drm_vblank_destroy_worker() (Jocelyn Falempe) [2115903] - drm/drv: Fix potential memory leak in drm_dev_init() (Jocelyn Falempe) [2115903] - drm/panel: simple: set bpc field for logic technologies displays (Jocelyn Falempe) [2115903] - drm/amd/display: Investigate tool reported FCLK P-state deviations (Jocelyn Falempe) [2115903] - drm/amd/display: Round up DST_after_scaler to nearest int (Jocelyn Falempe) [2115903] - drm/amd/display: Use forced DSC bpp in DML (Jocelyn Falempe) [2115903] - drm/amd/display: Fix DCN32 DSC delay calculation (Jocelyn Falempe) [2115903] - drm/amd: Fail the suspend if resources can't be evicted (Jocelyn Falempe) [2115903] - drm/amdgpu: set fb_modifiers_not_supported in vkms (Jocelyn Falempe) [2115903] - drm/amd/display: Enable timing sync on DCN32 (Jocelyn Falempe) [2115903] - drm/amd/display: Ignore Cable ID Feature (Jocelyn Falempe) [2115903] - drm/imx: imx-tve: Fix return type of imx_tve_connector_mode_valid (Jocelyn Falempe) [2115903] - drm/scheduler: fix fence ref counting (Jocelyn Falempe) [2115903] - drm/amd/display: Don't return false if no stream (Jocelyn Falempe) [2115903] - drm/amd/display: Remove wrong pipe control lock (Jocelyn Falempe) [2115903] - drm/amdgpu: Adjust MES polling timeout for sriov (Jocelyn Falempe) [2115903] - drm/amdkfd: Migrate in CPU page fault use current mm (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix error handling in kfd_criu_restore_events (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix error handling in criu_checkpoint (Jocelyn Falempe) [2115903] - drm/amdgpu: disable BACO on special BEIGE_GOBY card (Jocelyn Falempe) [2115903] - drm/amdgpu: workaround for TLB seq race (Jocelyn Falempe) [2115903] - drm/amd/display: Update SR watermarks for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU IP v13.0.4 msg interface header (Jocelyn Falempe) [2115903] - drm/amd/display: Fix reg timeout in enc314_enable_fifo (Jocelyn Falempe) [2115903] - drm/i915/dmabuf: fix sg_table handling in map_dma_buf (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix the lpfn checking condition in drm buddy (Jocelyn Falempe) [2115903] - drm/i915: Do not set cache_dirty for DGFX (Jocelyn Falempe) [2115903] - drm/i915/psr: Send update also on invalidate (Jocelyn Falempe) [2115903] - drm/vc4: Fix missing platform_unregister_drivers() call in vc4_drm_register() (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix NULL pointer dereference in svm_migrate_to_ram() (Jocelyn Falempe) [2115903] - drm/amdkfd: handle CPU fault on COW mapping (Jocelyn Falempe) [2115903] - drm/amd/display: Set memclk levels to be at least 1 for dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: Limit dcn32 to 1950Mhz display clock (Jocelyn Falempe) [2115903] - drm/amd/display: Acquire FCLK DPM levels on DCN32 (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Grab mode_config.mutex during LVDS init to avoid WARNs (Jocelyn Falempe) [2115903] - drm/i915: Simplify intel_panel_add_edid_alt_fixed_modes() (Jocelyn Falempe) [2115903] - drm/i915: Allow more varied alternate fixed modes for panels (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Setup DDC fully before output init (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Filter out invalid outputs more sensibly (Jocelyn Falempe) [2115903] - drm/amd/display: Update DSC capabilitie for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/display: Update latencies on DCN321 (Jocelyn Falempe) [2115903] - drm/amdgpu: disable GFXOFF during compute for GFX11 (Jocelyn Falempe) [2115903] - drm/i915: stop abusing swiotlb_max_segment (Jocelyn Falempe) [2115903] - drm/rockchip: fix fbdev on non-IOMMU devices (Jocelyn Falempe) [2115903] - drm/rockchip: dw_hdmi: filter regulator -EPROBE_DEFER error messages (Jocelyn Falempe) [2115903] - drm/amdgpu: dequeue mes scheduler during fini (Jocelyn Falempe) [2115903] - drm/amdgpu: Program GC registers through RLCG interface in gfx_v11/gmc_v11 (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix type of reset_type parameter in hqd_destroy() callback (Jocelyn Falempe) [2115903] - drm/amd/pm: skip loading pptable from driver on secure board for smu_v13_0_10 (Jocelyn Falempe) [2115903] - drm/amdgpu: set vm_update_mode=0 as default for Sienna Cichlid in SRIOV case (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix memory leak in kfd_mem_dmamap_userptr() (Jocelyn Falempe) [2115903] - drm/i915/dp: Reset frl trained flag before restarting FRL training (Jocelyn Falempe) [2115903] - drm/i915/dgfx: Keep PCI autosuspend control 'on' by default on all dGPU (Jocelyn Falempe) [2115903] - drm/bridge: ps8640: Add back the 50 ms mystery delay after HPD (Jocelyn Falempe) [2115903] - drm/msm: Fix return type of mdp4_lvds_connector_mode_valid (Jocelyn Falempe) [2115903] - drm/msm/hdmi: fix memory corruption with too many bridges (Jocelyn Falempe) [2115903] - drm/msm/dsi: fix memory corruption with too many bridges (Jocelyn Falempe) [2115903] - drm/amdkfd: correct the cache info for gfx1036 (Jocelyn Falempe) [2115903] - drm/amdkfd: update gfx1037 Lx cache setting (Jocelyn Falempe) [2115903] - drm/amd/display: Revert logic for plane modifiers (Jocelyn Falempe) [2115903] - drm/amdgpu: fix pstate setting issue (Jocelyn Falempe) [2115903] - drm/amdgpu: disallow gfxoff until GC IP blocks complete s2idle resume (Jocelyn Falempe) [2115903] - drm/amdgpu: Remove ATC L2 access for MMHUB 2.1.x (Jocelyn Falempe) [2115903] - drm/i915: Extend Wa_1607297627 to Alderlake-P (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix for BO move issue (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix VRAM BO swap issue (Jocelyn Falempe) [2115903] - drm/vc4: Add module dependency on hdmi-codec (Jocelyn Falempe) [2115903] - drm/amdgpu: fix sdma doorbell init ordering on APUs (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU IP v13.0.4 driver interface version (Jocelyn Falempe) [2115903] - drm/amd/pm: fulfill SMU13.0.0 cstate control interface (Jocelyn Falempe) [2115903] - drm/amd/pm: disable cstate feature for gpu reset scenario (Jocelyn Falempe) [2115903] - drm/amd/pm: add SMU IP v13.0.4 IF version define to V7 (Jocelyn Falempe) [2115903] - drm/amd/pm: fulfill SMU13.0.7 cstate control interface (Jocelyn Falempe) [2115903] - drm/i915/bios: Use hardcoded fp_timing size for generating LFP data pointers (Jocelyn Falempe) [2115903] - drm/i915/bios: Validate fp_timing terminator presence (Jocelyn Falempe) [2115903] - drm/amd/display: Fix build breakage with CONFIG_DEBUG_FS=n (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: correct hostvm flag" (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix UBSAN shift-out-of-bounds warning (Jocelyn Falempe) [2115903] - drm/amd/display: polling vid stream status in hpo dp blank (Jocelyn Falempe) [2115903] - drm/amd/display: Remove interface for periodic interrupt 1 (Jocelyn Falempe) [2115903] - drm/dp: Don't rewrite link config when setting phy test pattern (Jocelyn Falempe) [2115903] - drm/amdgpu: fix initial connector audio value (Jocelyn Falempe) [2115903] - drm/amd/display: correct hostvm flag (Jocelyn Falempe) [2115903] - drm/amd/display: Fix urgent latency override for DCN32/DCN321 (Jocelyn Falempe) [2115903] - drm/amdgpu: SDMA update use unlocked iterator (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Aya Neo Air (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Anbernic Win600 (Jocelyn Falempe) [2115903] - drm/vc4: vec: Fix timings for VEC modes (Jocelyn Falempe) [2115903] - drm/admgpu: Skip CG/PG on SOC21 under SRIOV VF (Jocelyn Falempe) [2115903] - drm/amdgpu: Skip the program of MMMC_VM_AGP_* in SRIOV on MMHUB v3_0_0 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix variable dereferenced before check (Jocelyn Falempe) [2115903] - drm: bridge: dw_hdmi: only trigger hotplug event on link change (Jocelyn Falempe) [2115903] - drm/amd: fix potential memory leak (Jocelyn Falempe) [2115903] - udmabuf: Set ubuf->sg = NULL if the creation of sg table fails (Jocelyn Falempe) [2115903] - drm/amd/display: fix overflow on MIN_I64 definition (Jocelyn Falempe) [2115903] - gpu: lontium-lt9611: Fix NULL pointer dereference in lt9611_connector_init() (Jocelyn Falempe) [2115903] - drm: Prevent drm_copy_field() to attempt copying a NULL pointer (Jocelyn Falempe) [2115903] - drm: Use size_t type for len variable in drm_copy_field() (Jocelyn Falempe) [2115903] - drm/nouveau/nouveau_bo: fix potential memory leak in nouveau_bo_alloc() (Jocelyn Falempe) [2115903] - virtio-gpu: fix shift wrapping bug in virtio_gpu_fence_event_create() (Jocelyn Falempe) [2115903] - drm/vmwgfx: Fix memory leak in vmw_mksstat_add_ioctl() (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix memory leak in hpd_rx_irq_create_workqueue() (Jocelyn Falempe) [2115903] - drm/bochs: fix blanking (Jocelyn Falempe) [2115903] - drm/virtio: set fb_modifiers_not_supported (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Fix the order of DP_SET_POWER commands (Jocelyn Falempe) [2115903] - drm/bridge: megachips: Fix a null pointer dereference bug (Jocelyn Falempe) [2115903] - drm/amdgpu: add missing pci_disable_device() in amdgpu_pmops_runtime_resume() (Jocelyn Falempe) [2115903] - drm: fix drm_mipi_dbi build errors (Jocelyn Falempe) [2115903] - drm/panel: use 'select' for Ili9341 panel driver helpers (Jocelyn Falempe) [2115903] - drm/virtio: Fix same-context optimization (Jocelyn Falempe) [2115903] - drm/i915/dg2: Bump up CDCLK for DG2 (Jocelyn Falempe) [2115903] - drm/dp_mst: fix drm_dp_dpcd_read return value checks (Jocelyn Falempe) [2115903] - drm/format-helper: Fix test on big endian architectures (Jocelyn Falempe) [2115903] - drm/bridge: parade-ps8640: Fix regulator supply order (Jocelyn Falempe) [2115903] - drm/bridge: tc358767: Add of_node_put() when breaking out of loop (Jocelyn Falempe) [2115903] - drm/bridge: anx7625: Fix refcount bug in anx7625_parse_dt() (Jocelyn Falempe) [2115903] - drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Power on downstream device in .atomic_enable (Jocelyn Falempe) [2115903] - drm/mipi-dsi: Detach devices when removing the host (Jocelyn Falempe) [2115903] - drm/bridge: Avoid uninitialized variable warning (Jocelyn Falempe) [2115903] - drm: bridge: adv7511: unregister cec i2c device after cec adapter (Jocelyn Falempe) [2115903] - drm: bridge: adv7511: fix CEC power down control register offset (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable F32_WPTR_POLL_ENABLE in mqd (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable VCN PG on GC11_0_1 (Jocelyn Falempe) [2115903] - drm/amd/display: explicitly disable psr_feature_enable appropriately (Jocelyn Falempe) [2115903] - drm/amd/display: Add HUBP surface flip interrupt handler (Jocelyn Falempe) [2115903] - drm/amd/display: Fix vblank refcount in vrr transition (Jocelyn Falempe) [2115903] - drm/amd/display: Enable 2 to 1 ODM policy if supported (Jocelyn Falempe) [2115903] - drm/amd/display: Enable dpia support for dcn314 (Jocelyn Falempe) [2115903] - drm/amd/display: Validate DSC After Enable All New CRTCs (Jocelyn Falempe) [2115903] - drm/amd/display: zeromem mypipe heap struct before using it (Jocelyn Falempe) [2115903] - drm/amd/display: Update PMFW z-state interface for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix watermark calculation (Jocelyn Falempe) [2115903] - drm/i915: Fix display problems after resume (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix revocation of non-persistent contexts (Jocelyn Falempe) [2115903] - drm/i915/gt: Use i915_vm_put on ppgtt_create error paths (Jocelyn Falempe) [2115903] - drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table() (Jocelyn Falempe) [2115903] - drm/udl: Restore display mode on resume (Jocelyn Falempe) [2115903] - drm/virtio: Use appropriate atomic state in virtio_gpu_plane_cleanup_fb() (Jocelyn Falempe) [2115903] - drm/virtio: Unlock reservations on dma_resv_reserve_fences() error (Jocelyn Falempe) [2115903] - drm/virtio: Unlock reservations on virtio_gpu_object_shmem_init() error (Jocelyn Falempe) [2115903] - drm/virtio: Check whether transferred 2D BO is shmem (Jocelyn Falempe) [2115903] - Revert "drm/amdgpu: use dirty framebuffer helper" (Jocelyn Falempe) [2115903]- nvme: fix SRCU protection of nvme_ns_head list (Ewan D. Milne) [2113865] - perf vendor events power10: Fix hv-24x7 metric events (Mamatha Inamdar) [2149192] - perf tests: Fix 'perf probe' error log check in skip_if_no_debuginfo (Mamatha Inamdar) [2149192] - perf tests: Fix *probe_vfs_getname.sh test failures (Mamatha Inamdar) [2149192] - blk-cgroup: Optimize blkcg_rstat_flush() (Waiman Long) [2162173] - blk-cgroup: Return -ENOMEM directly in blkcg_css_alloc() error path (Waiman Long) [2162173] - blk-cgroup: factor out blkcg_iostat_update() (Waiman Long) [2162173] - mm/memcg: Free percpu stats memory of dying memcg's again (Waiman Long) [2162173] - memcg: sync flush only if periodic flush is delayed (Waiman Long) [2162173] - memcg: better bounds on the memcg stats updates (Waiman Long) [2162173] - memcg: unify memcg stat flushing (Waiman Long) [2162173] - memcg: flush stats only if updated (Waiman Long) [2162173] - memcg: flush lruvec stats in the refault (Waiman Long) [2162173] - memcg: infrastructure to flush memcg stats (Waiman Long) [2162173] - memcg: switch lruvec stats to rstat (Waiman Long) [2162173] - mm/memcg: Remove mem_cgroup_per_node from being kABI protected (Waiman Long) [2162173] - mm/memcg: Revert "Free percpu stats memory of dying memcg's" (Waiman Long) [2162173]- virt/sev-guest: Prevent IV reuse in the SNP guest driver (John Allen) [2087262] - virt/sev-guest: Add a MODULE_ALIAS (John Allen) [2087262] - virt/sev-guest: Remove unnecessary free in init_crypto() (John Allen) [2087262] - x86/sev: Don't use cc_platform_has() for early SEV-SNP calls (John Allen) [2087262] - x86/boot: Don't propagate uninitialized boot_params->cc_blob_address (John Allen) [2087262] - x86/idt: Rework IDT setup for boot CPU (John Allen) [2087262] - x86/cpu: Init AP exception handling from cpu_init_secondary() (John Allen) [2087262] - x86/idt: Cleanup trap_init() (John Allen) [2087262] - x86/idt: Annotate alloc_intr_gate() with __init (John Allen) [2087262] - redhat/configs: enable CONFIG_SEV_GUEST (John Allen) [2087262] - virt: sev-guest: Pass the appropriate argument type to iounmap() (John Allen) [2087262] - x86/compressed/64: Add identity mappings for setup_data entries (John Allen) [2087262] - x86/sev: Mark the code returning to user space as syscall gap (John Allen) [2087262] - x86/sev: Annotate stack change in the #VC handler (John Allen) [2087262] - x86/sev: Remove duplicated assignment to variable info (John Allen) [2087262] - x86/sev: Fix address space sparse warning (John Allen) [2087262] - x86/sev: Get the AP jump table address from secrets page (John Allen) [2087262] - x86/sev: Add missing __init annotations to SEV init routines (John Allen) [2087262] - virt: sevguest: Rename the sevguest dir and files to sev-guest (John Allen) [2087262] - virt: sevguest: Change driver name to reflect generic SEV support (John Allen) [2087262] - x86/boot: Put globals that are accessed early into the .data section (John Allen) [2087262] - x86/boot: Add an efi.h header for the decompressor (John Allen) [2087262] - virt: sevguest: Fix bool function returning negative value (John Allen) [2087262] - virt: sevguest: Fix return value check in alloc_shared_pages() (John Allen) [2087262] - x86/sev: Unroll string mmio with CC_ATTR_GUEST_UNROLL_STRING_IO (John Allen) [2087262] - x86/sev-es: Replace open-coded hlt-loop with sev_es_terminate() (John Allen) [2087262] - virt: sevguest: Add documentation for SEV-SNP CPUID Enforcement (John Allen) [2087262] - virt: sevguest: Add support to get extended report (John Allen) [2087262] - virt: sevguest: Add support to derive key (John Allen) [2087262] - virt: Add SEV-SNP guest driver (John Allen) [2087262] - x86/sev: Register SEV-SNP guest request platform device (John Allen) [2087262] - x86/sev: Provide support for SNP guest request NAEs (John Allen) [2087262] - x86/sev: Add a sev= cmdline option (John Allen) [2087262] - x86/sev: Use firmware-validated CPUID for SEV-SNP guests (John Allen) [2087262] - x86/sev: Add SEV-SNP feature detection/setup (John Allen) [2087262] - x86/sev: Check SME/SEV support in CPUID first (John Allen) [2087262] - x86/compressed/64: Add identity mapping for Confidential Computing blob (John Allen) [2087262] - x86/compressed: Export and rename add_identity_map() (John Allen) [2087262] - x86/compressed: Use firmware-validated CPUID leaves for SEV-SNP guests (John Allen) [2087262] - x86/compressed: Add SEV-SNP feature detection/setup (John Allen) [2087262] - x86/boot: Add a pointer to Confidential Computing blob in bootparams (John Allen) [2087262] - x86/boot: Preserve boot_params.secure_boot from sanitizing (John Allen) [2087262] - x86/boot: Fix boot regression caused by bootparam sanitizing (John Allen) [2087262] - x86/boot: Save fields explicitly, zero out everything else (John Allen) [2087262] - x86/compressed/64: Add support for SEV-SNP CPUID table in #VC handlers (John Allen) [2087262] - x86/sev: Move MSR-based VMGEXITs for CPUID to helper (John Allen) [2087262] - KVM: x86: Move lookup of indexed CPUID leafs to helper (John Allen) [2087262] - x86/boot: Add Confidential Computing type to setup_data (John Allen) [2087262] - x86/compressed/acpi: Move EFI kexec handling into common code (John Allen) [2087262] - x86/compressed/acpi: Move EFI vendor table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI config table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI system table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI detection to helper (John Allen) [2087262] - x86/head/64: Re-enable stack protection (John Allen) [2087262] - x86/sev: Use SEV-SNP AP creation to start secondary CPUs (John Allen) [2087262] - x86/apic/of: Fix CPU devicetree-node lookups (John Allen) [2087262] - x86/mm: Validate memory when changing the C-bit (John Allen) [2087262] - x86/kernel: Validate ROM memory before accessing when SEV-SNP is active (John Allen) [2087262] - x86/kernel: Mark the .bss..decrypted section as shared in the RMP table (John Allen) [2087262] - x86/sev: Add helper for validating pages in early enc attribute changes (John Allen) [2087262] - x86/sev: Register GHCB memory when SEV-SNP is active (John Allen) [2087262] - x86/compressed: Register GHCB memory when SEV-SNP is active (John Allen) [2087262] - x86/compressed: Add helper for validating pages in the decompression stage (John Allen) [2087262] - x86/sev: Check the VMPL level (John Allen) [2087262] - x86/sev: Add a helper for the PVALIDATE instruction (John Allen) [2087262] - x86/sev: Check SEV-SNP features support (John Allen) [2087262] - x86/mm: Extend cc_attr to include AMD SEV-SNP (John Allen) [2087262] - x86/sev: Detect/setup SEV/SME features earlier in boot (John Allen) [2087262] - x86/compressed/64: Detect/setup SEV/SME features earlier during boot (John Allen) [2087262] - x86/boot: Use MSR read/write helpers instead of inline assembly (John Allen) [2087262] - x86/boot: Introduce helpers for MSR reads/writes (John Allen) [2087262] - KVM: SVM: Update the SEV-ES save area mapping (John Allen) [2087262] - KVM: SVM: Create a separate mapping for the GHCB save area (John Allen) [2087262] - KVM: SVM: Create a separate mapping for the SEV-ES save area (John Allen) [2087262] - KVM: SVM: Define sev_features and VMPL field in the VMSA (John Allen) [2087262] - x86/sev: Remove do_early_exception() forward declarations (John Allen) [2087262] - x86/sev: Make the #VC exception stacks part of the default stacks storage (John Allen) [2087262] - x86: Increase exception stack sizes (John Allen) [2087262] - x86/head64: Carve out the guest encryption postprocessing into a helper (John Allen) [2087262] - x86/sev: Get rid of excessive use of defines (John Allen) [2087262] - x86/sev: Add defines for GHCB version 2 MSR protocol requests (John Allen) [2087262] - x86/sev: Make sure IRQs are disabled while GHCB is active (John Allen) [2087262] - x86/sev: Propagate #GP if getting linear instruction address failed (John Allen) [2087262] - x86/insn: Extend error reporting from insn_fetch_from_user[_inatomic]() (John Allen) [2087262] - x86/sev-es: Convert to insn_decode() (John Allen) [2087262] - x86/sev-es: Split vc_decode_insn() (John Allen) [2087262] - x86/insn-eval: Make 0 a valid RIP for insn_get_effective_ip() (John Allen) [2087262] - x86/sev: Fix error message in runtime #VC handler (John Allen) [2087262] - x86/sev-es: Optimize __sev_es_ist_enter() for better readability (John Allen) [2087262] - x86/sev: Do not require Hypervisor CPUID bit for SEV guests (John Allen) [2087262] - x86/boot/compressed/64: Cleanup exception handling before booting kernel (John Allen) [2087262] - x86/sev-es: Remove subtraction of res variable (John Allen) [2087262]- net: mlx5: eliminate anonymous module_init & module_exit (Amir Tzin) [2157750] - net/mlx5: E-switch, Fix switchdev mode after devlink reload (Amir Tzin) [2157750] - net/mlx5e: Set decap action based on attr for sample (Amir Tzin) [2157750] - net/mlx5e: QoS, Fix wrongfully setting parent_element_id on MODIFY_SCHEDULING_ELEMENT (Amir Tzin) [2157750] - net/mlx5: E-switch, Fix setting of reserved fields on MODIFY_SCHEDULING_ELEMENT (Amir Tzin) [2157750] - net/mlx5e: Avoid false lock dependency warning on tc_ht even more (Amir Tzin) [2157750] - net/mlx5: fix missing mutex_unlock in mlx5_fw_fatal_reporter_err_work() (Amir Tzin) [2157750] - net/mlx5: Fix ptp max frequency adjustment range (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Fix child PKEY interface stats on rx path (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Block PKEY interfaces with less rx queues than parent (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Block queue count configuration when sub interfaces are present (Amir Tzin) [2157750] - net/mlx5e: Verify dev is present for fix features ndo (Amir Tzin) [2157750] - net/mlx5: Fix command stats access after free (Amir Tzin) [2157750] - net/mlx5e: TC, Keep mod hdr actions after mod hdr alloc (Amir Tzin) [2157750] - net/mlx5: check attr pointer validity before dereferencing it (Amir Tzin) [2157750] - RDMA/mlx5: Fix validation of max_rd_atomic caps for DC (Amir Tzin) [2157750] - RDMA/mlx5: Fix mlx5_ib_get_hw_stats when used for device (Amir Tzin) [2157750] - net/mlx5e: Set geneve_tlv_option_0_exist when matching on geneve option (Amir Tzin) [2157750] - net/mlx5e: Fix hw mtu initializing at XDP SQ allocation (Amir Tzin) [2157750] - net/mlx5e: Always clear dest encap in neigh-update-del (Amir Tzin) [2157750] - net/mlx5e: CT: Fix ct debugfs folder name (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Don't allow CQE compression to be turned on by default (Amir Tzin) [2157750] - net/mlx5: Fix RoCE setting at HCA level (Amir Tzin) [2157750] - net/mlx5: Avoid recovery in probe flows (Amir Tzin) [2157750] - net/mlx5: Fix io_eq_size and event_eq_size params validation (Amir Tzin) [2157750] - net/mlx5: Add forgotten cleanup calls into mlx5_init_once() error path (Amir Tzin) [2157750] - net/mlx5: E-Switch, properly handle ingress tagged packets on VST (Amir Tzin) [2157750 2096109] - dm thin: Use last transaction's pmd->root when commit failed (Benjamin Marzinski) [2162537] - dm thin: resume even if in FAIL mode (Benjamin Marzinski) [2162537] - dm cache: set needs_check flag after aborting metadata (Benjamin Marzinski) [2162537] - dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort (Benjamin Marzinski) [2162537] - dm thin: Fix ABBA deadlock between shrink_slab and dm_pool_abort_metadata (Benjamin Marzinski) [2162537] - dm integrity: Fix UAF in dm_integrity_dtr() (Benjamin Marzinski) [2162537] - dm cache: Fix UAF in destroy() (Benjamin Marzinski) [2162537] - dm thin: Fix UAF in run_timer_softirq() (Benjamin Marzinski) [2162537] - dm integrity: clear the journal on suspend (Benjamin Marzinski) [2162537] - dm integrity: flush the journal on suspend (Benjamin Marzinski) [2162537] - dm bufio: Fix missing decrement of no_sleep_enabled if dm_bufio_client_create failed (Benjamin Marzinski) [2162537] - dm ioctl: fix misbehavior if list_versions races with module loading (Benjamin Marzinski) [2162537]- net: gso: fix panic on frag_list with mixed head alloc types (Jiri Benc) [2136229] - futex: Resend potentially swallowed owner death notification (Rafael Aquini) [2161526] - Bluetooth: L2CAP: Fix memory leak in vhci_write (Wander Lairson Costa) [2155872] {CVE-2022-3619} - net: Use this_cpu_inc() to increment net->core_stats (Antoine Tenart) [2152542] - vlan: fix memory leak in vlan_newlink() (Xin Long) [2051415] - vlan: move dev_put into vlan_dev_uninit (Xin Long) [2051415] - vlan: introduce vlan_dev_free_egress_priority (Xin Long) [2051415] - vlan: fix memory leak in vlan_dev_set_egress_priority (Xin Long) [2051415] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103956] - intel/ixgbevf:fix repeated words in comments (Ken Cox) [2103956] - intel: remove unused macros (Ken Cox) [2103956] - ixgbe: propagate XFRM offload state direction instead of flags (Ken Cox) [2103956] - ixgbevf: add disable link state (Ken Cox) [2103956] - ixgbevf: clean up some inconsistent indenting (Ken Cox) [2103956] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ken Cox) [2103956] - intel: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [2103956]- RDMA/siw: Always consume all skbuf data in sk_data_ready() upcall. (Kamal Heib) [2141420] - cifs: fix use-after-free caused by invalid pointer `hostname` (Ronnie Sahlberg) [2154172] - ceph: blocklist the kclient when receiving corrupted snap trace (Xiubo Li) [2162414] - ceph: move mount state enum to super.h (Xiubo Li) [2162414] - xfs: estimate post-merge refcounts correctly (Bill O'Donnell) [2161678] - xfs: hoist refcount record merge predicates (Bill O'Donnell) [2161678] - NFS: Fix revalidation of empty readdir pages (Benjamin Coddington) [2166364] - NFS: Don't deadlock when cookie hashes collide (Benjamin Coddington) [2166364] - locking/rwsem: Disable preemption in all down_read*() and up_read() code paths (Waiman Long) [2162139] - locking/rwsem: Prevent non-first waiter from spinning in down_write() slowpath (Waiman Long) [2162139] - locking/rwsem: Allow slowpath writer to ignore handoff bit if not set by first waiter (Waiman Long) [2162139] - locking/rwsem: Always try to wake waiters in out_nolock path (Waiman Long) [2162139] - locking/rwsem: No need to check for handoff bit if wait queue empty (Waiman Long) [2162139] - locking/rwsem: Make handoff bit handling more consistent (Waiman Long) [2162139] - dax: fix ENOMEM handling in grab_mapping_entry() (Andrey Albershteyn) [2128474] - crypto: ccp - Failure on re-initialization due to duplicate sysfs filename (Vladis Dronov) [2130714] - crypto: ccp - Avoid page allocation failure warning for SEV_GET_ID2 (Vladis Dronov) [2130714] - crypto: ccp - Add support for TEE for PCI ID 0x14CA (Vladis Dronov) [2130714] - crypto: ccp - Remove unused struct ccp_crypto_cpu (Vladis Dronov) [2130714] - crypto: ccp - Add __init/__exit annotations to module init/exit funcs (Vladis Dronov) [2130714] - i40e: Fix the inability to attach XDP program on downed interface (Ivan Vecera) [2121511] - mm, compaction: fix fast_isolate_around() to stay within boundaries (Daniel Vacek) [2149309]- aio: fix mremap after fork null-deref (Jeff Moyer) [2166088] - mm/hugetlb: use hugetlb_pte_stable in migration race check (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: fix race condition of uffd missing/minor handling (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: simplify the code when alloc_huge_page() failed in hugetlb_no_page() (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: pass the old pte entry value to hugetlb_no_page() (Rafael Aquini) [2158120] {CVE-2022-3522} - perf/arm-cmn: Add more bits to child node address offset field (Charles Mirabile) [2122267] - perf/arm-cmn: Decode CAL devices properly in debugfs (Charles Mirabile) [2122267] - perf/arm-cmn: Fix filter_sel lookup (Charles Mirabile) [2122267] - drivers/perf: arm_spe: Expose saturating counter to 16-bit (Charles Mirabile) [2122267] - perf/arm-cmn: Add CMN-700 support (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor occupancy filter selector (Charles Mirabile) [2122267] - perf/arm-cmn: Add CMN-650 support (Charles Mirabile) [2122267] - perf: check return value of armpmu_request_irq() (Charles Mirabile) [2122267] - arm_pmu: Validate single/group leader events (Charles Mirabile) [2122267] - perf: qcom_l2_pmu: fix an incorrect NULL check on list iterator (Charles Mirabile) [2122267] - drivers/perf: arm_pmu: Handle 47 bit counters (Charles Mirabile) [2122267] - perf/arm-cmn: Update watchpoint format (Charles Mirabile) [2122267] - perf/arm-cmn: Hide XP PUB events for CMN-600 (Charles Mirabile) [2122267] - perf: replace bitmap_weight with bitmap_empty where appropriate (Charles Mirabile) [2122267] - perf: Replace acpi_bus_get_device() (Charles Mirabile) [2122267] - perf/arm-cmn: Make arm_cmn_debugfs static (Charles Mirabile) [2122267] - perf/arm-ccn: Use platform_get_irq() to get the interrupt (Charles Mirabile) [2122267] - perf/smmuv3: Don't cast parameter in bit operations (Charles Mirabile) [2122267] - perf/smmuv3: Use msi_get_virq() (Charles Mirabile) [2122267] - perf/smmuv3: Synthesize IIDR from CoreSight ID registers (Charles Mirabile) [2122267] - perf/arm-cmn: Add debugfs topology info (Charles Mirabile) [2122267] - perf/arm-cmn: Add CI-700 Support (Charles Mirabile) [2122267] - perf/arm-cmn: Support new IP features (Charles Mirabile) [2122267] - devres: provide devm_krealloc() (Charles Mirabile) [2122267] - devres: move the size check from alloc_dr() into a separate function (Charles Mirabile) [2122267] - perf/arm-cmn: Demarcate CMN-600 specifics (Charles Mirabile) [2122267] - perf/arm-cmn: Move group validation data off-stack (Charles Mirabile) [2122267] - perf/arm-cmn: Optimise DTC counter accesses (Charles Mirabile) [2122267] - perf/arm-cmn: Optimise DTM counter reads (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor DTM handling (Charles Mirabile) [2122267] - perf/arm-cmn: Streamline node iteration (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor node ID handling (Charles Mirabile) [2122267] - perf/arm-cmn: Drop compile-test restriction (Charles Mirabile) [2122267] - perf/arm-cmn: Account for NUMA affinity (Charles Mirabile) [2122267] - perf/arm-cmn: Fix CPU hotplug unregistration (Charles Mirabile) [2122267] - drivers/perf: thunderx2_pmu: Change data in size tx2_uncore_event_update() (Charles Mirabile) [2122267] - perf: qcom_l2_pmu: move to use request_irq by IRQF_NO_AUTOEN flag (Charles Mirabile) [2122267] - arm_pmu: move to use request_irq by IRQF_NO_AUTOEN flag (Charles Mirabile) [2122267] - arm64: perf: Fix 64-bit event counter read truncation (Charles Mirabile) [2122267] - drivers/perf: Replace spin_lock_irqsave to spin_lock (Charles Mirabile) [2122267] - arm_pmu: arm64: Use NMIs for PMU (Charles Mirabile) [2122267] - arm_pmu: Introduce pmu_irq_ops (Charles Mirabile) [2122267] - arm64: perf: Defer irq_work to IPI_IRQ_WORK (Charles Mirabile) [2122267] - arm64: perf: Remove PMU locking (Charles Mirabile) [2122267] - arm64: perf: Avoid PMXEV* indirection (Charles Mirabile) [2122267] - arm64: perf: Add missing ISB in armv8pmu_enable_counter() (Charles Mirabile) [2122267] - perf: arm_spe: Remove unnecessary zero check on 'nr_pages' (Charles Mirabile) [2122267] - drivers/perf: arm_pmu_acpi: Fix incorrect checking of gicc pointer (Charles Mirabile) [2122267] - perf/smmuv3: Use platform_get_irq_optional() for wired interrupt (Charles Mirabile) [2122267]- wifi: rtw89: Add missing check for alloc_workqueue (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix potential leak in rtw89_append_probe_req_ie() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix initialization of rx->link and rx->link_sta (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Drop stations iterator where the iterator function may sleep (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: use proper statements in conditionals (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix MLO + AP_VLAN check (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix coverity uninit_use_in_call in mt76_connac2_reverse_frag0_hdr_trans() (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: Add checks for nla_nest_start() in nl80211_send_iface() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: Add missing __packed annotation of struct mt7921_clc (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: do not send firmware FW_FEATURE_NON_DL region (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix use after rcu_read_unlock in rtl8xxxu_bss_info_changed (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix physts IE page check (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix wrong power after multiple SAR set (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: Fix some error handling path in rtw89_core_sta_assoc() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: use u32_encode_bits() to fill MAC quota value (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix reporting of TX AGGR histogram (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix ifdef symbol name (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix firmware assert during bandwidth change for peer sta (Jose Ignacio Tornos Martinez) [2136125] - Revert "mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD" (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Turn on the rate control (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix warning in dma_free_coherent() of memory chunks while recovery (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: check link ID in auth/assoc continuation (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: fix null-ptr deref on failed assoc (Jose Ignacio Tornos Martinez) [2136125] - wifi: fix multi-link element subelement iteration (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix antenna signal are way off in monitor mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac8021: fix possible oob access in ieee80211_get_rate_duration (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: don't allow multi-BSSID in S1G (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix buffer overflow in elem comparison (Jose Ignacio Tornos Martinez) [2136125] - net: mhi: Fix memory leak in mhi_net_dellink() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix QCN9074 firmware boot on x86 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Set TWT Information Frame Disabled bit as 1 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Fix ack frame idr leak when mesh has no route (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix general-protection-fault in ieee80211_subif_start_xmit() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix debugfs attribute ps with rc table support (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Fix bitrates overflow issue (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix memory leak in query_regdb_file() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix memory free error when registering wiphy fail (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: silence a sparse RCU warning (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: use explicitly signed or unsigned types (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: mac: fix reading 16 bytes from a region of size 0 warning (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix rx checksum offload on mt7615/mt7915/mt7921 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix receiving LLC packets on mt7615/mt7915 (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: update hidden BSSes to avoid WARN_ON (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix crash in beacon protection for P2P-device (Jose Ignacio Tornos Martinez) [2136125 2134582] {CVE-2022-42722} - wifi: mac80211_hwsim: avoid mac80211 warning on bad rate (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: avoid nontransmitted BSS list corruption (Jose Ignacio Tornos Martinez) [2136125 2134511] {CVE-2022-42721} - wifi: cfg80211: fix BSS refcounting bugs (Jose Ignacio Tornos Martinez) [2136125 2134460] {CVE-2022-42720} - wifi: cfg80211: ensure length byte is present before access (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix MBSSID parsing use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211/mac80211: reject bad MBSSID elements (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans() (Jose Ignacio Tornos Martinez) [2136125 2134385] {CVE-2022-41674} - wifi: nl80211: Split memcpy() of struct nl80211_wowlan_tcp_data_token flexible array (Jose Ignacio Tornos Martinez) [2136125] - wifi: wext: use flex array destination for memcpy() (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix ieee80211_data_to_8023_exthdr handling of small packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: netdev compatible TX stop for iTXQ drivers (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix decap offload for stations on AP_VLAN interfaces (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: unlock on error in ieee80211_can_powered_addr_change() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: remove/avoid misleading prints (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix probe req HE capabilities access (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: do not drop packets smaller than the LLC-SNAP header on fast-rx (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix rate reporting / throughput regression on mt7915 and newer (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Improve rtl8xxxu_queue_select (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix AIFS written to REG_EDCA_*_PARAM (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Enable 40 MHz channel width (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852b: configure DLE mem (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: check DLE FIFO size with reserved size (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: correct register of report IMR (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: set power cut closed for 8852be (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: add to do PCI auto calibration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852b: implement chip_ops::{enable,disable}_bb_rf (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add DMA busy checking bits to chip info (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: define DMA channel mask to avoid unsupported channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: mask out unsupported TX channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: Track scan_cmd allocation size explicitly (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: Remove the call to "dtim_assoc" IOVAR (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: increase dcmd maximum buffer size (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: Support 89459 pcie (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: increase default max WOWL patterns to 16 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix deadlock during WoWLAN suspend (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Remove redundant ath11k_mac_drain_tx (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add spectral scan support for 160 MHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add support to get power save duration for each client (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix peer addition/deletion error on sta band migration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for enable/disable MSDU aggregation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: disable 26-tone RU HE TB PPDU transmissions (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for processing P2P power saving (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support WMM-PS in P2P GO mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: set wifi_role of P2P (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: send OFDM rate only in P2P mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support P2P (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: correctly set BBP register 86 for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set SoC wmac clock register (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set VGC gain for both chains of MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set correct TX_SW_CFG1 MAC register for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: fix HT20/HT40 bandwidth switch on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: move helper functions up in file (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add TX LOFT calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: don't run Rt5592 IQ calibration on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RXIQ calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RXDCOC calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add r calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RF self TXDC calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: move up and reuse busy wait functions (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add support for external PA on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add throughput LED trigger (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: define RF5592 in init_eeprom routine (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix number of VHT beamformee spatial streams (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: retrieve MAC address from system firmware if provided (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: add get_txpower mac ops (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: move firmware stats out of debugfs (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: fix repeated the words in a comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: fix repeated to words in a comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: reset pointer after memory free to avoid potential use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix failed to find the peer with peer_id 0 when disconnected (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: change complete() to complete_all() for scan.completed (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: update coexistence to 6.3.0 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add logic to control BT scan priority (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: summarize Wi-Fi to BT scoreboard and inform BT one time a cycle (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: modify LNA2 setting to avoid BT destroyed Wi-Fi aggregation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add WL_S0 hardware TX/RX mask to allow WL_S0 TX/RX during GNT_BT (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 Wi-Fi firmware steps report (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 summary info to parse the traffic status from firmware (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: translate slot ID to readable name (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 cycle report to parsing Bluetooth A2DP status (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix array of flexible structures warnings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rndis_wlan: fix array of flexible structures warning (Jose Ignacio Tornos Martinez) [2136125] - mwifiex: fix sleep in atomic context bugs caused by dev_coredumpv (Jose Ignacio Tornos Martinez) [2136125] - bus: mhi: host: pci_generic: Add a secondary AT port to Telit FN990 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add WoW support for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Include STA_KEEPALIVE_ARP_RESPONSE TLV header by default (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: Fix "Error - Attempt to send packet over invalid queue 2" (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: add multi-port ID to TX descriptor (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix rx filter after scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: free unused skb to prevent memory leak (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: reset halt registers before turn on wifi CPU (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: update LTR settings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: set NAV upper to 25ms (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: initialize DMA of CMAC (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support SER L1 simulation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: support fw crash simulation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introudce functions to drop packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: unify use of rtw89_h2c_tx() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: concentrate control function of TX DMA channel (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct enable functions of HCI/PCI DMA (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: L1 DMA reset has offloaded to FW (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for setting TID specific configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for setting HE GI and LTF (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: show connecting state in debug message (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Combine set grant WL/BT and correct the debug log (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Remove trace_step at COEX-MECH control structure for RTL8852C (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Parsing Wi-Fi firmware TDMA info from reports (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Parsing Wi-Fi firmware error message from reports (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Move coexistence firmware buffer size parameter to chip info (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Add v1 Wi-Fi firmware power-saving null data report (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: use void pointer as temporal type to copy report (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4378 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Support PCIe core revisions >= 64 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: msgbuf: Increase RX ring sizes to 1024 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Allow platform to override macaddr (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Perform firmware selection for Apple platforms (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: of: Fetch Apple properties (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Read Apple OTP information (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Support passing in multiple board_types (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie/sdio/usb: Get CLM blob via standard firmware mechanism (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Handle per-board clm_blob files (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: d3: parse keys from wowlan info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: iterate over interfaces after an assert in d3 (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: trigger resume flow before wait for notifications (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add handling for scan offload match info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: enable resume based on notifications (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for d3 end notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for wowlan wake packet notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for wowlan info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: don't check D0I3 version (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: cfg: remove IWL_DEVICE_BZ_COMMON macro (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: refactor iwl_mvm_set_sta_rate() a bit (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: rxmq: further unify some VHT/HE code (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: rxmq: refactor mac80211 rx_status setting (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: fix typo in struct iwl_rx_no_data API (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: pcie: add support for BZ devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix kernel-doc issues (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix miscellaneous spelling errors (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: Fix miscellaneous spelling errors (Jose Ignacio Tornos Martinez) [2136125] - bus: mhi: host: always print detected modem name (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921s: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7663s: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix random fw download fail (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: introduce Country Location Control support (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix rmmod crash in driver reload test (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: reset msta->airtime_ac while clearing up hw value (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: do not check state before configuring implicit beamform (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix uninitialized pointer in mt7921_mac_fill_rx (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix mcs value in ht mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: get rid of the false positive reset (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: fix in comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: add PPDU based TxS support for WED device (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: move move mt76_sta_stats to mt76_wcid (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix the firmware version report (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_sta_set_decap_offload (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_[start, stop]_ap (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt76_usb.mt76u_mcu.burst is always false remove related code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7663s: add rx_check callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: fix possible unaligned access in mt76_connac_mcu_add_nested_tlv (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix possible unaligned access in mt7915_mac_add_twt_setup (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7615: add mt7615_mutex_acquire/release in mt7615_sta_set_decap_offload (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: fix transmitting packet hangs (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: add rx_check callback for sdio devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: delete stray if statement (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix use after free in mt7921_acpi_read() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix an uninitialized variable bug (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: poll sta stat when device transmits data (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: fix the deadlock caused by sdio->stat_work (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: move mt7921_rx_check and mt7921_queue_rx_skb in mac.c (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921u: remove unnecessary MT76_STATE_SUSPEND (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921u: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921s: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: add rx_check callback for usb devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: testmode: use random payload for tx packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: introduce mt76_connac_reg_map structure (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Remove copy-paste leftover in gen2_update_rate_mask (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: split scan including lots of channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: support hw_scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: call tx_wake notify for 8852c in deep ps mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support deep ps mode for rtw8852c (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: set response rate selection (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: set TX to single path TX on path B in 6GHz band (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: enlarge polling timeout of RX DCK (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: enable the interference cancellation of MU-MIMO on 6GHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add DIG register struct to share common algorithm (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support TX diversity for 1T2R chipset (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: record signal strength per RF path (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: configure TX path via H2C command (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: parse phycap of TX/RX antenna number (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: use u32_get_bits to access C2H content of PHY capability (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Increase TCL data ring size for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add multi TX ring support for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Enable threaded NAPI (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: mhi: fix potential memory leak in ath11k_mhi_register() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: implement SRAM dump debugfs interface (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Split PCI write/read functions (Jose Ignacio Tornos Martinez) [2136125] - ath11k: Enable remain-on-channel support on WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix endian annotations in casts (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix endian conversion (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: mark a variable unused (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix skb misuse in TX queue selection (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: remove redundant variable err (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: add 43439 SDIO ids and initialization (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Simplify the error handling code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: Fix comment typo (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Add DMI nvram filename quirk for Chuwi Hi8 Pro tablet (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Use ISO3166 country code and rev 0 as fallback on 43430 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix use-after-free bug in brcmf_netdev_start_xmit() (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: calib: Refactor iwl_calib_result usage for clarity (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: always activate all links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: implement link switching (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: keep A-MSDU data in sta and per-link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set up beacon timing config on links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add vif/sta link RCU dereference macros (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: send NDP for link (de)activation (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: extend ieee80211_nullfunc_get() for MLO (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: track active STA links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: skip inactive links on TX (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add ieee80211_find_sta_by_link_addrs API (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: isolate driver from inactive links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: make smps_mode per-link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use correct rx link_sta instead of default (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link_sta in reorder timeout (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix multi-channel handling in netlink RX (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: call drv_sta_state() under sdata_lock() in reconfig (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: add MLD address to assoc BSS entries (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: refactor QoS settings code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: warn on invalid link address (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix double SW scan stop (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: assign link address correctly (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: move link code to a new file (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: refactor RX a bit (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: check STA magic in change_sta_links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: remove unused arg to ieee80211_chandef_eht_oper (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: remove multicast workaround (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: remove redundant err variable (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Support POWERED_ADDR_CHANGE feature (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: Add POWERED_ADDR_CHANGE feature (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: prevent 4-addr use on MLDs (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: prevent VLANs on MLDs (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add support to connect to non-transmit MBSSID profiles (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix hardware restart failure due to twt debugfs failure (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add TWT debugfs support for STA interface (Jose Ignacio Tornos Martinez) [2136125] - wifi: move from strlcpy with unused retval to strscpy (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add missing destroy_workqueue() on error path in rtw_core_init() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: tighten bounds checking in rtl8xxxu_read_efuse() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: declare to support beamformee above bandwidth 80MHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct polling address of address CAM (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: no HTC field if TX rate might fallback to legacy (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: correct TX resource checking in low power mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: fix interrupt stuck after leaving low power mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: enlarge the CFO tracking boundary (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: correct suspend/resume setting for variant chips (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: enable CLK_REQ, ASPM, L1 and L1ss for 8852c (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: fix PCI PHY auto adaption by using software restore (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: set TBTT shift configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add retry to change power_mode state (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct BA CAM allocation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: initialize and correct BA CAM content (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: declare correct BA CAM number (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: update TX power tables to R49 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: update RF radio A/B parameters to R49 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: TX power limit/limit_ru consider negative (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Update Wi-Fi driver/firmware TDMA cycle report for RTL8852c (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add v1 Wi-Fi SCC coexistence policy (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Move _set_policy to chip_ops (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: update WL role info v1 for RTL8852C branch using (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add v1 version TDMA format and parameters (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Define BT B1 slot length (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add logic to parsing rtl8852c firmware type ctrl report (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Move Wi-Fi firmware coexistence matching version to chip (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: update radio state for RTL8852A/RTL8852C (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: adjust mactxen delay of mac/phy interface (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: modify PCIE prebkf time (Jose Ignacio Tornos Martinez) [2136125] - rtw89: ser: leave lps with mutex (Jose Ignacio Tornos Martinez) [2136125] - rtw89: declare support HE HTC always (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852a: update HW setting on BB (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: disable dma during mac init (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: declare support for mac80211 chanctx ops by chip (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add skeleton of mac80211 chanctx ops support (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introduce entity mode and its recalculated prototype (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: initialize entity and configure default chandef (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: concentrate chandef setting to stack callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: concentrate parameter control for setting channel callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: rfk: concentrate parameter control while set_channel() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: txpwr: concentrate channel related control to top (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: create rtw89_chan centrally to avoid breakage (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: re-arrange channel related stuffs under HAL (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introduce rtw89_chan for channel stuffs (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: rewrite decision on channel by entity state (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add cold boot calibration support on WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix incorrect QMI message ID mappings (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Register shutdown handler for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: avoid uninit memory read in ath9k_htc_rx_msg() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix potential deadlock in ieee80211_key_link() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix uninitialized use of primary channel index (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use full 'unsigned int' type (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: move from strlcpy with unused retval to strscpy (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: read ethtool's sta_stats from sinfo (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: correct SMPS mode in HE 6 GHz capability (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Add link_id to cfg80211_ch_switch_started_notify() (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: send MLO links channel info in GET_INTERFACE (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: allow bw change during channel switch in mesh (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: clean up a needless assignment in ieee80211_sta_activate_link() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: allow link address A2 in TXQ dequeue (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix control port frame addressing (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link ID in TX info for beacons (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix link change handling (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: maintain link_id in link_sta (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211/mac80211: check EHT capability size correctly (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: split iftype data into AP/non-AP (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: don't add empty EML capabilities (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use link ID for MLO in queued frames (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use the corresponding link for stats update (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add link information in ieee80211_rx_status (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: properly implement MLO key handling (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Add link_id parameter to various key operations for MLO (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Prevent cfg80211_wext_siwencodeext() on MLD (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: reject connect response with MLO params for WEP (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use link in TXQ parameter configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: add link id to txq params (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link BSSID (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: get correct AP link chandef (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Update RNR parsing to align with Draft P802.11be_D2.0 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: properly set old_links when removing a link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: accept STA changes without link changes (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: prohibit enter IPS during HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add flag check before enter or leave IPS (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add flushing queue before HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix WARNING:rtw_get_tx_power_params() during HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add the update channel flow to support setting by parameters (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add mutex when set regulatory and get Tx power table (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add mutex when set SAR (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Fix to add skb free for TIM update info when tx is completed (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Fix to add brcmf_clear_assoc_ies when rmmod (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix invalid address access when enabling SCAN log level (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix scheduling while atomic issue when deleting flowring (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix continuous 802.1x tx pending timeout error (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: add peer map clean up for peer delete in ath10k_sta_state() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: Set tx credit to one for WCN3990 snoc based devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852a: correct WDE IMR settings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: refine leaving LPS function (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtlwifi: 8192de: correct checking of IQK reload (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmsmac: remove duplicate words (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: access chip_info by const pointer (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: phy: fix warning of possible buffer overflow (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix store OP channel info timing when HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix stopping queues in wrong timing when HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: 8822c: extend supported probe request size (Jose Ignacio Tornos Martinez) [2136125]- ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF (Jaroslav Kysela) [2125548] {CVE-2023-0266} - ALSA: usb-audio: Remove redundant workaround for Roland quirk (Jaroslav Kysela) [2125548] - ASoC: jz4740-i2s: Handle independent FIFO flush bits (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops (Jaroslav Kysela) [2125548] - ALSA: patch_realtek: Fix Dell Inspiron Plus 16 (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: Static PCM mapping again with AMD HDMI codecs (Jaroslav Kysela) [2125548] - ALSA: line6: fix stack overflow in line6_midi_transmit (Jaroslav Kysela) [2125548] - ALSA: line6: correct midi status byte when receiving data from podxt (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: Add HP Device 0x8711 to force connect list (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for Lenovo TianYi510Pro-14IOB (Jaroslav Kysela) [2125548] - ALSA: usb-audio: add the quirk for KT0206 device (Jaroslav Kysela) [2125548] - ASoC: rt5670: Remove unbalanced pm_runtime_put() (Jaroslav Kysela) [2125548] - ASoC: rockchip: spdif: Add missing clk_disable_unprepare() in rk_spdif_runtime_resume() (Jaroslav Kysela) [2125548] - ASoC: wm8994: Fix potential deadlock (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: fix stream-id config keep-alive for rt suspend (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: set default audio parameters for KAE silent-stream (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: fix i915 silent stream programming flow (Jaroslav Kysela) [2125548] - ASoC: rockchip: pdm: Add missing clk_disable_unprepare() in rockchip_pdm_runtime_resume() (Jaroslav Kysela) [2125548] - ASoC: audio-graph-card: fix refcount leak of cpu_ep in __graph_for_each_link() (Jaroslav Kysela) [2125548] - ASoC: mediatek: mt8173-rt5650-rt5514: fix refcount leak in mt8173_rt5650_rt5514_dev_probe() (Jaroslav Kysela) [2125548] - ASoC: Intel: Skylake: Fix driver hang during shutdown (Jaroslav Kysela) [2125548] - ALSA: hda: add snd_hdac_stop_streams() helper (Jaroslav Kysela) [2125548] - ASoC: sof_es8336: fix possible use-after-free in sof_es8336_remove() (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Xiaomi Redmi Book Pro 14 2022 into DMI table (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Add quirk for KBL-R RVP platform (Jaroslav Kysela) [2125548] - ASoC: codecs: rt298: Add quirk for KBL-R RVP platform (Jaroslav Kysela) [2125548] - ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt (Jaroslav Kysela) [2125548] - ALSA: pcm: Set missing stop_operating flag at undoing trigger start (Jaroslav Kysela) [2125548] - ASoC: pcm512x: Fix PM disable depth imbalance in pcm512x_probe (Jaroslav Kysela) [2125548] - ALSA: asihpi: fix missing pci_disable_device() (Jaroslav Kysela) [2125548] - ASoC: mediatek: mtk-btcvsd: Add checks for write and read of mtk_btcvsd_snd (Jaroslav Kysela) [2125548] - ASoC: qcom: Add checks for devm_kcalloc (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Lock substream before snd_pcm_stop() (Jaroslav Kysela) [2125548] - ASoC: pxa: fix null-pointer dereference in filter() (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Fix potential RX buffer overflow (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Fix DMA mask assignment (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2125548] - ASoC: ops: Correct bounds check for second channel on SX controls (Jaroslav Kysela) [2125548] - ASoC: cs42l51: Correct PGA Volume minimum value (Jaroslav Kysela) [2125548] - ASoC: ops: Check bounds for second channel in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2125548] - ASoC: fsl_micfil: explicitly clear CHnF flags (Jaroslav Kysela) [2125548] - ASoC: fsl_micfil: explicitly clear software reset bit (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: More robust component matching for CS35L41 (Jaroslav Kysela) [2125548] - ASoC: soc-pcm: Add NULL check in BE reparenting (Jaroslav Kysela) [2125548] - ALSA: seq: Fix function prototype mismatch in snd_seq_expand_var_event (Jaroslav Kysela) [2125548] - ASoC: rt711-sdca: fix the latency time of clock stop prepare state machine transitions (Jaroslav Kysela) [2125548] - ASoC: wm8962: Wait for updated value of WM8962_CLOCKING1 register (Jaroslav Kysela) [2125548] - ASoC: ops: Fix bounds check for _sx controls (Jaroslav Kysela) [2125548] - ALSA: dice: fix regression for Lexicon I-ONIX FW810S (Jaroslav Kysela) [2125548] - ASoC: sof_es8336: reduce pop noise on speaker (Jaroslav Kysela) [2125548] - ASoC: SOF: ipc3-topology: use old pipeline teardown flow with SOF2.1 and older (Jaroslav Kysela) [2125548] - ASoC: hda: intel-dsp-config: add ES83x6 quirk for IceLake (Jaroslav Kysela) [2125548] - ASoC: Intel: soc-acpi: add ES83x6 support to IceLake (Jaroslav Kysela) [2125548] - ASoC: Intel: bytcht_es8316: Add quirk for the Nanote UMPC-01 (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Alienware m17 R5 AMD into DMI table (Jaroslav Kysela) [2125548] - ASoC: max98373: Add checks for devm_kcalloc (Jaroslav Kysela) [2125548] - ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open() (Jaroslav Kysela) [2125548] - ASoC: sgtl5000: Reset the CHIP_CLK_CTRL reg on remove (Jaroslav Kysela) [2125548] - ASoC: hdac_hda: fix hda pcm buffer overflow issue (Jaroslav Kysela) [2125548] - ALSA: usb-audio: add quirk to fix Hamedal C20 disconnect issue (Jaroslav Kysela) [2125548] - ASoC: SOF: topology: No need to assign core ID if token parsing failed (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book Pro 360 (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: fix speakers for Samsung Galaxy Book Pro (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Drop snd_BUG_ON() from snd_usbmidi_output_open() (Jaroslav Kysela) [2125548] - ASoC: soc-utils: Remove __exit for snd_soc_util_exit() (Jaroslav Kysela) [2125548] - ASoC: rt5677: fix legacy dai naming (Jaroslav Kysela) [2125548] - ASoC: rt5514: fix legacy dai naming (Jaroslav Kysela) [2125548] - ASoC: tas2764: Fix set_tdm_slot in case of single slot (Jaroslav Kysela) [2125548] - ASoC: tas2770: Fix set_tdm_slot in case of single slot (Jaroslav Kysela) [2125548] - ASoC: core: Fix use-after-free in snd_soc_exit() (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: Fix spelling mistake "Sourc" -> "Source", "Routee" -> "Route" (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Lenovo Thinkbook 14+ 2022 21D0 to quirks table (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Adding Lenovo ThinkBook 14 Gen 4+ ARA and Lenovo ThinkBook 16 Gen 4+ ARA to the Quirks List (Jaroslav Kysela) [2125548] - ASoC: rt1308-sdw: add the default value of some registers (Jaroslav Kysela) [2125548] - ASoC: Intel: sof_rt5682: Add quirk for Rex board (Jaroslav Kysela) [2125548] - ASoC: Intel: sof_sdw: add quirk variant for LAPBC710 NUC15 (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: fix capture selector naming (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: use right control for Capture Volume (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: fix reported volume for Master ctl (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: add missed Line In power control bit (Jaroslav Kysela) [2125548] - ASoC: wm8962: Add an event handler for TEMP_HP and TEMP_SPK (Jaroslav Kysela) [2125548] - ASoC: rt1019: Fix the TDM settings (Jaroslav Kysela) [2125548] - ASoC: rt5682s: Fix the TDM Tx settings (Jaroslav Kysela) [2125548] - ASoC: mt6660: Keep the pm_runtime enables before component stuff in mt6660_i2c_probe (Jaroslav Kysela) [2125548] - ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe" (Jaroslav Kysela) [2125548] - ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe" (Jaroslav Kysela) [2125548] - ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe" (Jaroslav Kysela) [2125548] - ALSA: memalloc: Try dma_alloc_noncontiguous() at first (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add DSD support for Accuphase DAC-60 (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirk entry for M-Audio Micro (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Yet more regression for for the delayed card registration (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add Positivo C6300 model quirk (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS Zenbook using CS35L41 (Jaroslav Kysela) [2125548] - ALSA: hda: fix potential memleak in 'add_widget_node' (Jaroslav Kysela) [2125548] - ALSA: hda/ca0132: add quirk for EVGA Z390 DARK (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi - enable runtime pm for more AMD display audio (Jaroslav Kysela) [2125548] - ALSA: memalloc: Don't fall back for SG-buffer with IOMMU (Jaroslav Kysela) [2125548] - ALSA: aoa: Fix I2S device accounting (Jaroslav Kysela) [2125548] - ALSA: aoa: i2sbus: fix possible memory leak in i2sbus_add_dev() (Jaroslav Kysela) [2125548] - ALSA: ac97: fix possible memory leak in snd_ac97_dev_register() (Jaroslav Kysela) [2125548] - ASoC: SOF: Intel: pci-tgl: fix ADL-N descriptor (Jaroslav Kysela) [2125548] - ASoC: SOF: Intel: pci-tgl: use RPL specific firmware definitions (Jaroslav Kysela) [2125548] - ASoC: Intel: common: add ACPI matching tables for Raptor Lake (Jaroslav Kysela) [2125548] - ALSA: rme9652: use explicitly signed char (Jaroslav Kysela) [2125548] - ALSA: au88x0: use explicitly signed char (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add another HP ZBook G9 model quirks (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirks for M-Audio Fast Track C400/600 (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS Zenbook using CS35L41 (Jaroslav Kysela) [2125548] - ALSA: Use del_timer_sync() before freeing timer (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix last interface check for registration (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Lenovo Yoga Slim 7 Pro X to quirks table (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add ASUS UM5302TA into DMI table (Jaroslav Kysela) [2125548] - ASoC: SOF: add quirk to override topology mclk_id (Jaroslav Kysela) [2125548] - ASoC: SOF: pci: Change DMI match info to support all Chrome platforms (Jaroslav Kysela) [2125548] - ALSA: intel-dspconfig: add ES8336 support for AlderLake-PS (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Register card at the last interface (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirk to enable Avid Mbox 3 support (Jaroslav Kysela) [2125548] - ASoC: mt6660: Fix PM disable depth imbalance in mt6660_i2c_probe (Jaroslav Kysela) [2125548] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2125548] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2125548] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2125548] - ASoC: stm: Fix PM disable depth imbalance in stm32_i2s_probe (Jaroslav Kysela) [2125548] - ASoC: stm32: spdifrx: Fix PM disable depth imbalance in stm32_spdifrx_probe (Jaroslav Kysela) [2125548] - ASoC: stm32: dfsdm: Fix PM disable depth imbalance in stm32_adfsdm_probe (Jaroslav Kysela) [2125548] - ALSA: dmaengine: increment buffer pointer atomically (Jaroslav Kysela) [2125548] - ASoC: da7219: Fix an error handling path in da7219_register_dai_clks() (Jaroslav Kysela) [2125548] - ASoC: eureka-tlv320: Hold reference returned from of_find_xxx API (Jaroslav Kysela) [2125548] - ASoC: wm_adsp: Handle optional legacy support (Jaroslav Kysela) [2125548] - ASoC: rsnd: Add check for rsnd_mod_power_on (Jaroslav Kysela) [2125548] - ASoC: soc-pcm.c: call __soc_pcm_close() in soc_pcm_close() (Jaroslav Kysela) [2125548] - ASoC: mt6359: fix tests for platform_get_irq() failure (Jaroslav Kysela) [2125548] - ASoC: wcd934x: fix order of Slimbus unprepare/disable (Jaroslav Kysela) [2125548] - ASoC: wcd9335: fix order of Slimbus unprepare/disable (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add Intel Reference SSID to support headset keys (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS GV601R laptop (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix NULL dererence at error path (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix potential memory leaks (Jaroslav Kysela) [2125548] - ALSA: rawmidi: Drop register_mutex in snd_rawmidi_free() (Jaroslav Kysela) [2125548] - ALSA: oss: Fix potential deadlock at unregistration (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for HP Zbook Firefly 14 G9 model (Jaroslav Kysela) [2125548] - ALSA: hda: Fix position reporting on Poulsbo (Jaroslav Kysela) [2125548]- KVM: x86: smm: preserve interrupt shadow in SMRAM (Maxim Levitsky) [2097144] - KVM: x86: SVM: don't save SVM state to SMRAM when VM is not long mode capable (Maxim Levitsky) [2097144] - KVM: x86: SVM: use smram structs (Maxim Levitsky) [2097144] - KVM: svm: drop explicit return value of kvm_vcpu_map (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram struct for 64 bit smram load/restore (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram struct for 32 bit smram load/restore (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram structs in the common code (Maxim Levitsky) [2097144] - KVM: x86: smm: add structs for KVM's smram layout (Maxim Levitsky) [2097144] - KVM: x86: smm: check for failures on smm entry (Maxim Levitsky) [2097144] - KVM: x86: do not go through ctxt->ops when emulating rsm (Maxim Levitsky) [2097144] - KVM: x86: move SMM exit to a new file (Maxim Levitsky) [2097144] - KVM: x86: move SMM entry to a new file (Maxim Levitsky) [2097144] - KVM: x86: start moving SMM-related functions to new files (Maxim Levitsky) [2097144] - bug: introduce ASSERT_STRUCT_OFFSET (Maxim Levitsky) [2097144] - KVM: x86: Rename and expose helper to detect if INIT/SIPI are allowed (Maxim Levitsky) [2097144] - KVM: x86: smm: number of GPRs in the SMRAM image depends on the image format (Maxim Levitsky) [2097144] - KVM: x86: emulator: update the emulation mode after CR0 write (Maxim Levitsky) [2097144] - KVM: x86: emulator: update the emulation mode after rsm (Maxim Levitsky) [2097144] - KVM: x86: emulator: introduce emulator_recalc_and_set_mode (Maxim Levitsky) [2097144] - KVM: x86: emulator: em_sysexit should update ctxt->mode (Maxim Levitsky) [2097144] - KVM: x86: Bug the VM if the emulator accesses a non-existent GPR (Maxim Levitsky) [2097144] - KVM: x86: Reduce the number of emulator GPRs to '8' for 32-bit KVM (Maxim Levitsky) [2097144] - KVM: x86: Use 16-bit fields to track dirty/valid emulator GPRs (Maxim Levitsky) [2097144] - KVM: x86: Omit VCPU_REGS_RIP from emulator's _regs array (Maxim Levitsky) [2097144] - KVM: x86: Harden _regs accesses to guard against buggy input (Maxim Levitsky) [2097144] - KVM: x86: Grab regs_dirty in local 'unsigned long' (Maxim Levitsky) [2097144]- RDMA/bnxt_re: Fix endianness warning for req.pkey (Kamal Heib) [2142690] - RDMA/bnxt_re: Use bitmap_zalloc() when applicable (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove dynamic pkey table (Kamal Heib) [2142690] - RDMA/bnxt_re: Scan the whole bitmap when checking if "disabling RCFW with pending cmd-bit" (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove unneeded variable (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove unsupported bnxt_re_modify_ah callback (Kamal Heib) [2142690] - RDMA/bnxt_re: Use helper function to set GUIDs (Kamal Heib) [2142690] - RDMA/bnxt_re: Check if the vlan is valid before reporting (Kamal Heib) [2142690] - RDMA/bnxt_re: Correct FRMR size calculation (Kamal Heib) [2142690] - RDMA/bnxt_re: Use GFP_KERNEL in non atomic context (Kamal Heib) [2142690] - RDMA/bnxt_re: Fix FRMR issue with single page MR allocation (Kamal Heib) [2142690] - RDMA/bnxt_re: Fix query SRQ failure (Kamal Heib) [2142690] - RDMA/bnxt_re: Suppress unwanted error messages (Kamal Heib) [2142690] - RDMA/bnxt_re: Support multiple page sizes (Kamal Heib) [2142690] - RDMA/bnxt_re: Reduce the delay in polling for hwrm command completion (Kamal Heib) [2142690] - RDMA/bnxt_re: Use separate response buffer for stat_ctx_free (Kamal Heib) [2142690] - net/mlx5: Lag, Fix for loop when checking lag (Amir Tzin) [2112917] - net/mlx5e: Fix use-after-free when reverting termination table (Amir Tzin) [2112927] - net/mlx5: Fix uninitialized variable bug in outlen_write() (Amir Tzin) [2112927] - net/mlx5: E-switch, Fix duplicate lag creation (Amir Tzin) [2112927 2112917] - net/mlx5: E-switch, Destroy legacy fdb table when needed (Amir Tzin) [2112927 2112917] - net/mlx5: DR, Fix uninitialized var warning (Amir Tzin) [2112927] - net/mlx5e: Offload rule only when all encaps are valid (Amir Tzin) [2112927] - net/mlx5: Fix sync reset event handler error flow (Amir Tzin) [2112927] - net/mlx5: E-Switch, Set correctly vport destination (Amir Tzin) [2112927] - net/mlx5: Fix handling of entry refcount when command is not issued to FW (Amir Tzin) [2112927] - net/mlx5: cmdif, Print info on any firmware cmd failure to tracepoint (Amir Tzin) [2112927] - net/mlx5: SF: Fix probing active SFs during driver probe phase (Amir Tzin) [2112927] - net/mlx5: Fix FW tracer timestamp calculation (Amir Tzin) [2112927] - net/mlx5: Do not query pci info while pci disabled (Amir Tzin) [2112927 2129249] - net/mlx5e: TC, Fix slab-out-of-bounds in parse_tc_actions (Amir Tzin) [2112927] - net/mlx5e: Clean up and fix error flows in mlx5e_alloc_rq (Amir Tzin) [2112927] - net/mlx5: DR, Fix the SMFS sync_steering for fast teardown (Amir Tzin) [2112927] - net/mlx5e: E-Switch, Fix comparing termination table instance (Amir Tzin) [2112927] - net/mlx5e: TC, Fix wrong rejection of packet-per-second policing (Amir Tzin) [2112927 2049622] - net/mlx5e: Fix tc acts array not to be dependent on enum order (Amir Tzin) [2112927] - net/mlx5e: Add missing sanity checks for max TX WQE size (Amir Tzin) [2112927] - net/mlx5: fw_reset: Don't try to load device in case PCI isn't working (Amir Tzin) [2112927] - net/mlx5: E-switch, Set to legacy mode if failed to change switchdev mode (Amir Tzin) [2112927 2112917] - net/mlx5: Allow async trigger completion execution on single CPU systems (Amir Tzin) [2112927] - net/mlx5: Bridge, verify LAG state when adding bond to bridge (Amir Tzin) [2112927] - net/mlx5: Fix crash during sync firmware reset (Amir Tzin) [2112927] - net/mlx5e: TC, Fix cloned flow attr instance dests are not zeroed (Amir Tzin) [2112927] - net/mlx5: Fix possible use-after-free in async command interface (Amir Tzin) [2112927] - net/mlx5: ASO, Create the ASO SQ with the correct timestamp format (Amir Tzin) [2112927 2049622] - net/mlx5e: Update restore chain id for slow path packets (Amir Tzin) [2112927] - net/mlx5e: Extend SKB room check to include PTP-SQ (Amir Tzin) [2112927] - net/mlx5: DR, Fix matcher disconnect error flow (Amir Tzin) [2112927] - net/mlx5: Wait for firmware to enable CRS before pci_restore_state (Amir Tzin) [2112927] - net/mlx5e: Do not increment ESN when updating IPsec ESN state (Amir Tzin) [2112927] - net/mlx5e: Fix calculations for ICOSQ size (Amir Tzin) [2112927] - net/mlx5: Fix spelling mistake "syndrom" -> "syndrome" (Amir Tzin) [2112927] - net/mlx5e: Fix a typo in mlx5e_xdp_mpwqe_is_full (Amir Tzin) [2112927] - RDMA/mlx5: Don't compare mkey tags in DEVX indirect mkey (Amir Tzin) [2112927] - RDMA/mlx5: Fix UMR cleanup on error flow of driver init (Amir Tzin) [2112927] - RDMA/mlx5: Rely on RoCE fw cap instead of devlink when setting profile (Amir Tzin) [2112927] - net/mlx5: Unlock on error in mlx5_sriov_enable() (Amir Tzin) [2112927] - net/mlx5e: Fix use after free in mlx5e_fs_init() (Amir Tzin) [2112927] - net/mlx5e: kTLS, Use _safe() iterator in mlx5e_tls_priv_tx_list_cleanup() (Amir Tzin) [2112927] - net/mlx5: unlock on error path in esw_vfs_changed_event_handler() (Amir Tzin) [2112927 2150647] - net/mlx5e: Fix wrong tc flag used when set hw-tc-offload off (Amir Tzin) [2112927] - net/mlx5e: TC, Add missing policer validation (Amir Tzin) [2112927] - net/mlx5e: Fix wrong application of the LRO state (Amir Tzin) [2112927] - net/mlx5: Avoid false positive lockdep warning by adding lock_class_key (Amir Tzin) [2112927] - net/mlx5: Fix cmd error logging for manage pages cmd (Amir Tzin) [2112927] - net/mlx5: Disable irq when locking lag_lock (Amir Tzin) [2112927] - net/mlx5: Eswitch, Fix forwarding decision to uplink (Amir Tzin) [2112927 2150647] - net/mlx5: LAG, fix logic over MLX5_LAG_FLAG_NDEVS_READY (Amir Tzin) [2112927] - net/mlx5e: Properly disable vlan strip on non-UL reps (Amir Tzin) [2112927] - net/mlx5e: Allocate flow steering storage during uplink initialization (Amir Tzin) [2112927] - RDMA/mlx5: Use the proper number of ports (Amir Tzin) [2112927] - mlx5: do not use RT_TOS for IPv6 flowlabel (Amir Tzin) [2112927] - RDMA/mlx5: Add missing check for return value in get namespace flow (Amir Tzin) [2112927] - net/mlx5e: xsk: Discard unaligned XSK frames on striding RQ (Amir Tzin) [2112927] - net: devlink: convert reload command to take implicit devlink->lock (mlx5 hunk only) (Amir Tzin) [2112927] - devlink: Hold the instance lock in health callbacks (mlx5 hunk only) (Amir Tzin) [2112927] - net/mlx5: Lock mlx5 devlink health recovery callback (Amir Tzin) [2112927] - net/mlx5: Lock mlx5 devlink reload callbacks (Amir Tzin) [2112927] - net/mlx5: Move fw reset unload to mlx5_fw_reset_complete_reload (Amir Tzin) [2112927] - net/mlx5e: kTLS, Dynamically re-size TX recycling pool (Amir Tzin) [2112927] - net/mlx5e: kTLS, Recycle objects of device-offloaded TLS TX connections (Amir Tzin) [2112927] - net/mlx5e: kTLS, Take stats out of OOO handler (Amir Tzin) [2112927] - net/mlx5e: kTLS, Introduce TLS-specific create TIS (Amir Tzin) [2112927] - net/mlx5e: Move mlx5e_init_l2_addr to en_main (Amir Tzin) [2112927] - net/mlx5e: Split en_fs ndo's and move to en_main (Amir Tzin) [2112927] - net/mlx5e: Separate mlx5e_set_rx_mode_work and move caller to en_main (Amir Tzin) [2112927] - net/mlx5e: Add mdev to flow_steering struct (Amir Tzin) [2112927] - net/mlx5e: Report flow steering errors with mdev err report API (Amir Tzin) [2112927] - net/mlx5e: Convert mlx5e_flow_steering member of mlx5e_priv to pointer (Amir Tzin) [2112927] - net/mlx5e: Allocate VLAN and TC for featured profiles only (Amir Tzin) [2112927] - net/mlx5e: Make mlx5e_tc_table private (Amir Tzin) [2112927] - net/mlx5e: Convert mlx5e_tc_table member of mlx5e_flow_steering to pointer (Amir Tzin) [2112927] - net/mlx5e: TC, Support tc action api for police (Amir Tzin) [2112927] - net/mlx5e: TC, Separate get/update/replace meter functions (Amir Tzin) [2112927] - net/mlx5e: Add red and green counters for metering (Amir Tzin) [2112927] - net/mlx5e: TC, Allocate post meter ft per rule (Amir Tzin) [2112927] - net/mlx5: DR, Add support for flow metering ASO (Amir Tzin) [2112927] - net/mlx5: Fix driver use of uninitialized timeout (Amir Tzin) [2112927] - net/mlx5: DR, Fix SMFS steering info dump format (Amir Tzin) [2112927] - net/mlx5: Adjust log_max_qp to be 18 at most (Amir Tzin) [2112927] - net/mlx5e: Modify slow path rules to go to slow fdb (Amir Tzin) [2112927 2150647] - net/mlx5e: Fix calculations related to max MPWQE size (Amir Tzin) [2112927] - net/mlx5e: xsk: Account for XSK RQ UMRs when calculating ICOSQ size (Amir Tzin) [2112927] - net/mlx5e: Fix the value of MLX5E_MAX_RQ_NUM_MTTS (Amir Tzin) [2112927] - net/mlx5e: TC, Fix post_act to not match on in_port metadata (Amir Tzin) [2112927] - net/mlx5e: Remove WARN_ON when trying to offload an unsupported TLS cipher/version (Amir Tzin) [2112927] - RDMA/mlx5: Rename the mkey cache variables and functions (Amir Tzin) [2112927] - RDMA/mlx5: Store in the cache mkeys instead of mrs (Amir Tzin) [2112927] - RDMA/mlx5: Store the number of in_use cache mkeys instead of total_mrs (Amir Tzin) [2112927] - RDMA/mlx5: Replace cache list with Xarray (Amir Tzin) [2112927] - RDMA/mlx5: Replace ent->lock with xa_lock (Amir Tzin) [2112927] - net/mlx5: CT: Remove warning of ignore_flow_level support for non PF (Amir Tzin) [2112927] - net/mlx5e: Add resiliency for PTP TX port timestamp (Amir Tzin) [2112927] - net/mlx5: Expose ts_cqe_metadata_size2wqe_counter (Amir Tzin) [2112927] - net/mlx5e: HTB, move htb functions to a new file (Amir Tzin) [2112927] - net/mlx5e: HTB, change functions name to follow convention (Amir Tzin) [2112927] - net/mlx5e: HTB, remove priv from htb function calls (Amir Tzin) [2112927] - net/mlx5e: HTB, hide and dynamically allocate mlx5e_htb structure (Amir Tzin) [2112927] - net/mlx5e: HTB, move stats and max_sqs to priv (Amir Tzin) [2112927] - net/mlx5e: HTB, move section comment to the right place (Amir Tzin) [2112927] - net/mlx5e: HTB, move ids to selq_params struct (Amir Tzin) [2112927] - net/mlx5e: HTB, reduce visibility of htb functions (Amir Tzin) [2112927] - net/mlx5e: Fix mqprio_rl handling on devlink reload (Amir Tzin) [2112927] - net/mlx5e: Report header-data split state through ethtool (Amir Tzin) [2112927] - RDMA/mlx5: Expose steering anchor to userspace (Amir Tzin) [2112927] - RDMA/mlx5: Refactor get flow table function (Amir Tzin) [2112927] - net/mlx5: fs, allow flow table creation with a UID (Amir Tzin) [2112927] - net/mlx5: fs, expose flow table ID to users (Amir Tzin) [2112927] - net/mlx5: Expose the ability to point to any UID from shared UID (Amir Tzin) [2112927] - net/mlx5e: Remove the duplicating check for striding RQ when enabling LRO (Amir Tzin) [2112927] - net/mlx5e: Move the LRO-XSK check to mlx5e_fix_features (Amir Tzin) [2112927] - net/mlx5e: Extend flower police validation (Amir Tzin) [2112927] - net/mlx5e: configure meter in flow action (Amir Tzin) [2112927 2150647 2049622] - net/mlx5e: Removed useless code in function (Amir Tzin) [2112927] - net/mlx5: Bridge, implement QinQ support (Amir Tzin) [2112927] - net/mlx5: Bridge, implement infrastructure for VLAN protocol change (Amir Tzin) [2112927] - net/mlx5: Bridge, extract VLAN push/pop actions creation (Amir Tzin) [2112927] - net/mlx5: Bridge, rename filter fg to vlan_filter (Amir Tzin) [2112927] - net/mlx5: Bridge, refactor groups sizes and indices (Amir Tzin) [2112927] - net/mlx5: debugfs, Add num of in-use FW command interface slots (Amir Tzin) [2112927] - net/mlx5: Expose vnic diagnostic counters for eswitch managed vports (Amir Tzin) [2112927 2150647 2049881] - net/mlx5: Use software VHCA id when it's supported (Amir Tzin) [2112927] - net/mlx5: Introduce ifc bits for using software vhca id (Amir Tzin) [2112927] - net/mlx5: Use the bitmap API to allocate bitmaps (Amir Tzin) [2112927] - devlink: Hold the instance lock in port_new / port_del callbacks (mlx5 hunks only) (Amir Tzin) [2112925] - net/mlx5: Remove devl_unlock from mlx5_devlink_eswitch_mode_set (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API in mlx5e_devlink_port_register (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API in mlx5_esw_devlink_sf_port_register (Amir Tzin) [2112927] - net/mlx5: Use devl_ API in mlx5_esw_offloads_devlink_port_register (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API for rate nodes destroy (Amir Tzin) [2112927 2150647] - net/mlx5: Remove devl_unlock from mlx5_eswtich_mode_callback_enter (Amir Tzin) [2112927 2150647] - net/mlx5: fix 32bit build (Amir Tzin) [2112927 2049622] - net/mlx5e: TC, Support offloading police action (Amir Tzin) [2112927 2049622] - net/mlx5e: Add flow_action to parse state (Amir Tzin) [2112927 2049622] - net/mlx5e: Add post meter table for flow metering (Amir Tzin) [2112927 2049622] - net/mlx5e: Add generic macros to use metadata register mapping (Amir Tzin) [2112927 2049622] - net/mlx5e: Get or put meter by the index of tc police action (Amir Tzin) [2112927 2049622] - net/mlx5e: Add support to modify hardware flow meter parameters (Amir Tzin) [2112927 2049622] - net/mlx5e: Prepare for flow meter offload if hardware supports it (Amir Tzin) [2112927 2049622] - net/mlx5: Implement interfaces to control ASO SQ and CQ (Amir Tzin) [2112927 2049622] - net/mlx5: Add support to create SQ and CQ for ASO (Amir Tzin) [2112927 2049622] - net/mlx5: E-switch: Change eswitch mode only via devlink command (Amir Tzin) [2112927 2150647 2112917] - net/mlx5: E-switch, Remove dependency between sriov and eswitch mode (Amir Tzin) [2112927 2150647 2112917] - net/mlx5: E-switch, Introduce flag to indicate if fdb table is created (Amir Tzin) [2112927 2112917] - net/mlx5: E-switch, Introduce flag to indicate if vport acl namespace is created (Amir Tzin) [2112927 2112917] - net/mlx5: delete dead code in mlx5_esw_unlock() (Amir Tzin) [2112927] - net/mlx5: Delete ipsec_fs header file as not used (Amir Tzin) [2112927] - net/mlx5: Add bits and fields to support enhanced CQE compression (Amir Tzin) [2112927] - net/mlx5: Remove not used MLX5_CAP_BITS_RW_MASK (Amir Tzin) [2112927] - net/mlx5: group fdb cleanup to single function (Amir Tzin) [2112927] - net/mlx5: Add support EXECUTE_ASO action for flow entry (Amir Tzin) [2112927 2049622] - net/mlx5: Add HW definitions of vport debug counters (Amir Tzin) [2112927] - net/mlx5: Add IFC bits and enums for flow meter (Amir Tzin) [2112927 2049622] - RDMA/mlx5: Support handling of modify-header pattern ICM area (Amir Tzin) [2112927] - net/mlx5: Manage ICM of type modify-header pattern (Amir Tzin) [2112927] - net/mlx5: Introduce header-modify-pattern ICM properties (Amir Tzin) [2112927] - RDMA/mlx5: Add a umr recovery flow (Amir Tzin) [2112927] - net/mlx5e: Ring the TX doorbell on DMA errors (Amir Tzin) [2112925] - net/mlx5e: Fix capability check for updating vnic env counters (Amir Tzin) [2112925] - net/mlx5: Lag, correct get the port select mode str (Amir Tzin) [2112925] - net/mlx5e: Fix enabling sriov while tc nic rules are offloaded (Amir Tzin) [2112925] - net/mlx5e: kTLS, Fix build time constant test in RX (Amir Tzin) [2112925] - net/mlx5e: kTLS, Fix build time constant test in TX (Amir Tzin) [2112925] - net/mlx5: Lag, decouple FDB selection and shared FDB (Amir Tzin) [2112925] - net/mlx5: TC, allow offload from uplink to other PF's VF (Amir Tzin) [2112925] - mellanox: mlx5: avoid uninitialized variable warning with gcc-12 (Amir Tzin) [2112925] - net/mlx5: E-Switch, pair only capable devices (Amir Tzin) [2112925 2150647] - Revert "net/mlx5e: Allow relaxed ordering over VFs" (Amir Tzin) [2112925] - net/mlx5: Fix mlx5_get_next_dev() peer device matching (Amir Tzin) [2112925] - RDMA/mlx5: Remove duplicate pointer assignment in mlx5_ib_alloc_implicit_mr() (Amir Tzin) [2112925] - net/mlx5: fix multiple definitions of mlx5_lag_mpesw_init / mlx5_lag_mpesw_cleanup (Amir Tzin) [2112925] - net/mlx5: Support multiport eswitch mode (Amir Tzin) [2112925 2150647] - net/mlx5: Remove unused argument (Amir Tzin) [2112925] - net/mlx5: Lag, refactor lag state machine (Amir Tzin) [2112925] - net/mlx5e: Add XDP SQs to uplink representors steering tables (Amir Tzin) [2112925] - net/mlx5e: Allow relaxed ordering over VFs (Amir Tzin) [2112925] - net/mlx5e: Support partial GSO for tunnels over vlans (Amir Tzin) [2112925] - net/mlx5e: IPoIB, Improve ethtool rxnfc callback structure in IPoIB (Amir Tzin) [2112925] - net/mlx5e: Allocate virtually contiguous memory for reps structures (Amir Tzin) [2112925] - net/mlx5e: Allocate virtually contiguous memory for VLANs list (Amir Tzin) [2112925] - net/mlx5: Allocate virtually contiguous memory in pci_irq.c (Amir Tzin) [2112925] - net/mlx5: Allocate virtually contiguous memory in vport.c (Amir Tzin) [2112925] - net/mlx5: Inline db alloc API function (Amir Tzin) [2112925] - net/mlx5: Add last command failure syndrome to debugfs (Amir Tzin) [2112925] - net/mlx5: sparse: error: context imbalance in 'mlx5_vf_get_core_dev' (Amir Tzin) [2112925] - net/mlx5: Expose mlx5_sriov_blocking_notifier_register / unregister APIs (Amir Tzin) [2112925] - net/mlx5: Lag, add debugfs to query hardware lag state (Amir Tzin) [2112925] - net/mlx5: Lag, use buckets in hash mode (Amir Tzin) [2112925] - net/mlx5: Lag, refactor dmesg print (Amir Tzin) [2112925] - net/mlx5: Support devices with more than 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, use actual number of lag ports (Amir Tzin) [2112925] - net/mlx5: Lag, use hash when in roce lag on 4 ports (Amir Tzin) [2112925] - net/mlx5: Lag, support single FDB only on 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, store number of ports inside lag object (Amir Tzin) [2112925] - net/mlx5: Lag, filter non compatible devices (Amir Tzin) [2112925] - net/mlx5: Lag, use lag lock (Amir Tzin) [2112925] - net/mlx5: Lag, move E-Switch prerequisite check into lag code (Amir Tzin) [2112925] - net/mlx5: devcom only supports 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, expose number of lag ports (Amir Tzin) [2112925] - net/mlx5: Increase FW pre-init timeout for health recovery (Amir Tzin) [2112925] - net/mlx5: Add exit route when waiting for FW (Amir Tzin) [2112925] - net/mlx5e: Use XFRM state direction instead of flags (Amir Tzin) [2112925] - net/mlx5: Allow future addition of IPsec object modifiers (Amir Tzin) [2112925] - net/mlx5: Don't perform lookup after already known sec_path (Amir Tzin) [2112925] - net/mlx5: Cleanup XFRM attributes struct (Amir Tzin) [2112925] - net/mlx5: Remove not-supported ICV length (Amir Tzin) [2112925] - net/mlx5: Simplify IPsec capabilities logic (Amir Tzin) [2112925] - net/mlx5: Don't advertise IPsec netdev support for non-IPsec device (Amir Tzin) [2112925] - net/mlx5: Make sure that no dangling IPsec FS pointers exist (Amir Tzin) [2112925] - net/mlx5: Clean IPsec FS add/delete rules (Amir Tzin) [2112925] - net/mlx5: Simplify HW context interfaces by using SA entry (Amir Tzin) [2112925] - net/mlx5: Remove indirections from esp functions (Amir Tzin) [2112925] - net/mlx5: Merge various control path IPsec headers into one file (Amir Tzin) [2112925] - net/mlx5: Remove useless validity check (Amir Tzin) [2112925] - net/mlx5: Store IPsec ESN update work in XFRM state (Amir Tzin) [2112925] - net/mlx5: Reduce useless indirection in IPsec FS add/delete flows (Amir Tzin) [2112925] - net/mlx5: Don't hide fallback to software IPsec in FS code (Amir Tzin) [2112925] - net/mlx5: Check IPsec TX flow steering namespace in advance (Amir Tzin) [2112925] - net/mlx5: Simplify IPsec flow steering init/cleanup functions (Amir Tzin) [2112925] - net/mlx5: fs, an FTE should have no dests when deleted (Amir Tzin) [2112925] - net/mlx5: fs, call the deletion function of the node (Amir Tzin) [2112925] - net/mlx5: fs, delete the FTE when there are no rules attached to it (Amir Tzin) [2112925] - net/mlx5: fs, do proper bookkeeping for forward destinations (Amir Tzin) [2112925] - net/mlx5: fs, add unused destination type (Amir Tzin) [2112925] - net/mlx5: fs, jump to exit point and don't fall through (Amir Tzin) [2112925] - net/mlx5: fs, refactor software deletion rule (Amir Tzin) [2112925] - net/mlx5: fs, split software and IFC flow destination definitions (Amir Tzin) [2112925] - net/mlx5e: TC, set proper dest type (Amir Tzin) [2112925] - net/mlx5e: Remove unused mlx5e_dcbnl_build_rep_netdev function (Amir Tzin) [2112925] - net/mlx5e: Drop error CQE handling from the XSK RX handler (Amir Tzin) [2112925] - net/mlx5: Print initializing field in case of timeout (Amir Tzin) [2112925] - net/mlx5: Delete redundant default assignment of runtime devlink params (Amir Tzin) [2112925] - net/mlx5: Remove useless kfree (Amir Tzin) [2112925] - net/mlx5: use kvfree() for kvzalloc() in mlx5_ct_fs_smfs_matcher_create (Amir Tzin) [2112925] - RDMA/mlx5: Clean UMR QP type flow from mlx5_ib_post_send() (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to update xlt (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to update MR pas (Amir Tzin) [2112925] - RDMA/mlx5: Move creation and free of translation tables to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to rereg pd access (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to revoke MRs (Amir Tzin) [2112925] - RDMA/mlx5: Introduce mlx5_umr_post_send_wait() (Amir Tzin) [2112925] - RDMA/mlx5: Expose wqe posting helpers outside of wr.c (Amir Tzin) [2112925] - RDMA/mlx5: Simplify get_umr_update_access_mask() (Amir Tzin) [2112925] - RDMA/mlx5: Move mkey ctrl segment logic to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Move umr checks to umr.h (Amir Tzin) [2112925] - RDMA/mlx5: Move init and cleanup of UMR to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Fix flow steering egress flow (Amir Tzin) [2112925] - mlx5, xsk: Diversify return values from xsk_wakeup call paths (Amir Tzin) [2112925] - net/mlx5: Remove not-implemented IPsec capabilities (Amir Tzin) [2112925] - net/mlx5: Remove ipsec_ops function table (Amir Tzin) [2112925] - net/mlx5: Reduce kconfig complexity while building crypto support (Amir Tzin) [2112925] - net/mlx5: Move IPsec file to relevant directory (Amir Tzin) [2112925] - net/mlx5: Remove not-needed IPsec config (Amir Tzin) [2112925] - net/mlx5: Align flow steering allocation namespace to common style (Amir Tzin) [2112925] - net/mlx5: Unify device IPsec capabilities check (Amir Tzin) [2112925] - net/mlx5: Remove useless IPsec device checks (Amir Tzin) [2112925] - net/mlx5: Remove ipsec vs. ipsec offload file separation (Amir Tzin) [2112925] - RDMA/mlx5: Drop crypto flow steering API (Amir Tzin) [2112925] - RDMA/mlx5: Delete never supported IPsec flow action (Amir Tzin) [2112925] - net/mlx5: Remove FPGA ipsec specific statistics (Amir Tzin) [2112925] - net/mlx5: Remove XFRM no_trailer flag (Amir Tzin) [2112925] - net/mlx5: Remove not-used IDA field from IPsec struct (Amir Tzin) [2112925] - net/mlx5: Delete metadata handling logic (Amir Tzin) [2112925] - net/mlx5_fpga: Drop INNOVA IPsec support (Amir Tzin) [2112925] - net/mlx5: Cleanup kTLS function names and their exposure (Amir Tzin) [2112925] - net/mlx5: Remove tls vs. ktls separation as it is the same (Amir Tzin) [2112925] - net/mlx5: Remove indirection in TLS build (Amir Tzin) [2112925] - net/mlx5: Reliably return TLS device capabilities (Amir Tzin) [2112925] - net/mlx5_fpga: Drop INNOVA TLS support (Amir Tzin) [2112925] - ipv6: Use ipv6_only_sock() helper in condition (mlx5 hunk only). (Amir Tzin) [2112925] - Revert "stmmac/intel: mark driver as tech preview" (Mark Salter) [2122230] - net: stmmac: Fix queue statistics reading (Mark Salter) [2122230] - stmmac: intel: Update PCH PTP clock rate from 200MHz to 204.8MHz (Mark Salter) [2122230] - net: stmmac: power up/down serdes in stmmac_open/release (Mark Salter) [2122230] - stmmac: intel: Simplify intel_eth_pci_remove() (Mark Salter) [2122230] - net: stmmac: work around sporadic tx issue on link-up (Mark Salter) [2122230] - stmmac: intel: Add a missing clk_disable_unprepare() call in intel_eth_pci_remove() (Mark Salter) [2122230] - net: phylink: fix SGMII inband autoneg enable (Mark Salter) [2122230] - net: phylink: fix NULL pl->pcs dereference during phylink_pcs_poll_start (Mark Salter) [2122230] - net: phylink: disable PCS polling over major configuration (Mark Salter) [2122230] - net: phylink: remove pcs_ops member (Mark Salter) [2122230] - net: pcs: xpcs: depends on PHYLINK in Kconfig (Mark Salter) [2122230] - net: phylink: add QSGMII support to phylink_mii_c22_pcs_encode_advertisement() (Mark Salter) [2122230] - net: stmmac: make mdio register skips PHY scanning for fixed-link (Mark Salter) [2122230] - stmmac: intel: add phy-mode and fixed-link ACPI _DSD setting support (Mark Salter) [2122230] - net: pcs: xpcs: add CL37 1000BASE-X AN support (Mark Salter) [2122230] - stmmac: intel: prepare to support 1000BASE-X phy interface setting (Mark Salter) [2122230] - net: make xpcs_do_config to accept advertising for pcs-xpcs and sja1105 (Mark Salter) [2122230] - net: pcs: xpcs: propagate xpcs_read error to xpcs_get_state_c37_sgmii (Mark Salter) [2122230] - net: stmmac: remove redunctant disable xPCS EEE call (Mark Salter) [2122230] - net: stmmac: fix dma queue left shift overflow issue (Mark Salter) [2122230] - net: stmmac: switch to use interrupt for hw crosstimestamping (Mark Salter) [2122230] - net: stmmac: fix unbalanced ptp clock issue in suspend/resume flow (Mark Salter) [2122230] - net: stmmac: fix pm runtime issue in stmmac_dvr_remove() (Mark Salter) [2122230] - net: stmmac: dwc-qos: Disable split header for Tegra194 (Mark Salter) [2122230] - stmmac: intel: Fix an error handling path in intel_eth_pci_probe() (Mark Salter) [2122230] - stmmac: intel: Add RPL-P PCI ID (Mark Salter) [2122230] - net: stmmac: use dev_err_probe() for reporting mdio bus registration failure (Mark Salter) [2122230] - net: stmmac: remove unused get_addr() callback (Mark Salter) [2122230] - net: pcs: pcs-xpcs: Convert to mdiobus_c45_read (Mark Salter) [2122230] - net: phylink: Convert to mdiobus_c45_{read|write} (Mark Salter) [2122230] - net: stmmac: stmmac_main: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Mark Salter) [2122230] - net: phylink: remove phylink_helper_basex_speed() (Mark Salter) [2122230] - net: phylink: remove phylink_set_10g_modes() (Mark Salter) [2122230] - net: stmmac: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Mark Salter) [2122230] - net: stmmac: fix missing pci_disable_device() on error in stmmac_pci_probe() (Mark Salter) [2122230] - net: stmmac: disable Split Header (SPH) for Intel platforms (Mark Salter) [2122230] - net: stmmac: Use readl_poll_timeout_atomic() in atomic state (Mark Salter) [2122230] - net: stmmac: Fix unset max_speed difference between DT and non-DT platforms (Mark Salter) [2122230] - stmmac: intel: Add ADL-N PCI ID (Mark Salter) [2122230] - net: stmmac: switch no PTP HW support message to info level (Mark Salter) [2122230] - net: phylink: remove phylink_set_pcs() (Mark Salter) [2122230] - stmmac: intel: Enable 2.5Gbps for Intel AlderLake-S (Mark Salter) [2122230] - net: phylink: remove phylink_config's pcs_poll (Mark Salter) [2122230] - net: phylink: use legacy_pre_march2020 (Mark Salter) [2122230] - net: phylink: add legacy_pre_march2020 indicator (Mark Salter) [2122230] - net: stmmac: optimize locking around PTP clock reads (Mark Salter) [2122230] - net: stmmac: use .mac_select_pcs() interface (Mark Salter) [2122230] - net: stmmac: convert to phylink_generic_validate() (Mark Salter) [2122230] - net: stmmac: remove phylink_config.pcs_poll usage (Mark Salter) [2122230] - net: stmmac/xpcs: convert to pcs_validate() (Mark Salter) [2122230] - net: convert users of bitmap_foo() to linkmode_foo() (Mark Salter) [2122230] - net: phylink: add pcs_validate() method (Mark Salter) [2122230] - net: phylink: add mac_select_pcs() method to phylink_mac_ops (Mark Salter) [2122230] - net: phylink: tidy up disable bit clearing (Mark Salter) [2122230] - net: phylink: handle NA interface mode in phylink_fwnode_phy_connect() (Mark Salter) [2122230] - net: phylink: Add helpers for c22 registers without MDIO (Mark Salter) [2122230] - net: phylink: add 1000base-KX to phylink_caps_to_linkmodes() (Mark Salter) [2122230] - net: phylink: add generic validate implementation (Mark Salter) [2122230] - net: phylink: use supported_interfaces for phylink validation (Mark Salter) [2122230] - net: phylink: add MAC phy_interface_t bitmap (Mark Salter) [2122230] - net: phy: add phy_interface_t bitmap support (Mark Salter) [2122230] - net: phylink: Convert some users of mdiobus_* to mdiodev_* (Mark Salter) [2122230] - net: phylink: use mdiobus_modify_changed() helper (Mark Salter) [2122230] - net: mdio: add mdiobus_modify_changed() (Mark Salter) [2122230] - net: phylink: add phylink_set_10g_modes() helper (Mark Salter) [2122230] - net: stmmac: fill in supported_interfaces (Mark Salter) [2122230] - net: stmmac: convert to phylink_get_linkmodes() (Mark Salter) [2122230] - net: xpcs: add support for retrieving supported interface modes (Mark Salter) [2122230] - net: mdio: Add helper functions for accessing MDIO devices (Mark Salter) [2122230] - net: stmmac: fix return value of __setup handler (Mark Salter) [2122230] - net: stmmac: only enable DMA interrupts when ready (Mark Salter) [2122230] - net: stmmac: ensure PTP time register reads are consistent (Mark Salter) [2122230] - net: stmmac: dump gmac4 DMA registers correctly (Mark Salter) [2122230] - net: stmmac: properly handle with runtime pm in stmmac_dvr_remove() (Mark Salter) [2122230] - net: stmmac: skip only stmmac_ptp_register when resume from suspend (Mark Salter) [2122230] - drivers/net/ethernet: clean up mis-targeted comments (Mark Salter) [2122230] - net: stmmac: configure PTP clock source prior to PTP initialization (Mark Salter) [2122230] - net: stmmac: reduce unnecessary wakeups from eee sw timer (Mark Salter) [2122230] - net: stmmac: remove unused members in struct stmmac_priv (Mark Salter) [2122230] - net: stmmac: Fix "Unbalanced pm_runtime_enable!" warning (Mark Salter) [2122230] - net: stmmac: add tc flower filter for EtherType matching (Mark Salter) [2122230] - net: stmmac: bump tc when get underflow error from DMA descriptor (Mark Salter) [2122230] - stmmac: remove ethtool driver version info (Mark Salter) [2122230] - net: stmmac: Calculate CDC error only once (Mark Salter) [2122230] - net: stmmac: ptp: fix potentially overflowing expression (Mark Salter) [2122230] - net: stmmac: fix tc flower deletion for VLAN priority Rx steering (Mark Salter) [2122230] - net: stmmac: Avoid DMA_CHAN_CONTROL write if no Split Header support (Mark Salter) [2122230] - net: stmmac: Disable Tx queues when reconfiguring the interface (Mark Salter) [2122230] - net: phylink: Force retrigger in case of latched link-fail indicator (Mark Salter) [2122230] - net: phylink: Force link down and retrigger resolve on interface change (Mark Salter) [2122230] - net: stmmac: retain PTP clock time during SIOCSHWTSTAMP ioctls (Mark Salter) [2122230] - stmmac_pci: Fix underflow size in stmmac_rx (Mark Salter) [2122230] - net: stmmac: Fix signed/unsigned wreckage (Mark Salter) [2122230] - net: stmmac: allow a tc-taprio base-time of zero (Mark Salter) [2122230] - ethernet: stmmac: use eth_hw_addr_set() (Mark Salter) [2122230] - net: phylink: Support disabling autonegotiation for PCS (Mark Salter) [2122230] - net: stmmac: fix off-by-one error in sanity check (Mark Salter) [2122230] - net: stmmac: fix gcc-10 -Wrestrict warning (Mark Salter) [2122230] - net: phylink: don't call netif_carrier_off() with NULL netdev (Mark Salter) [2122230] - net: stmmac: Fix E2E delay mechanism (Mark Salter) [2122230] - net: stmmac: add support for dwmac 3.40a (Mark Salter) [2122230] - net: stmmac: fix get_hw_feature() on old hardware (Mark Salter) [2122230] - net: stmmac: trigger PCS EEE to turn off on link down (Mark Salter) [2122230] - net: pcs: xpcs: fix incorrect steps on disable EEE (Mark Salter) [2122230] - net: pcs: xpcs: fix incorrect CL37 AN sequence (Mark Salter) [2122230] - net: stmmac: fix EEE init issue when paired with EEE capable PHYs (Mark Salter) [2122230] - net: stmmac: allow CSR clock of 300MHz (Mark Salter) [2122230] - net: stmmac: platform: fix build warning when with !CONFIG_PM_SLEEP (Mark Salter) [2122230] - net: stmmac: fix system hang caused by eee_ctrl_timer during suspend/resume (Mark Salter) [2122230] - net: stmmac: fix MAC not working when system resume back with WoL active (Mark Salter) [2122230] - net: phylink: add suspend/resume support (Mark Salter) [2122230] - net: stmmac: add ethtool per-queue irq statistic support (Mark Salter) [2122230] - net: stmmac: add ethtool per-queue statistic framework (Mark Salter) [2122230] - net: stmmac: fix INTR TBU status affecting irq count statistic (Mark Salter) [2122230] - net: pcs: xpcs: Add Pause Mode support for SGMII and 2500BaseX (Mark Salter) [2122230] - net: stmmac: fix kernel panic due to NULL pointer dereference of plat->est (Mark Salter) [2122230] - net: pcs: xpcs: fix error handling on failed to allocate memory (Mark Salter) [2122230] - net: stmmac: add est_irq_status callback function for GMAC 4.10 and 5.10 (Mark Salter) [2122230] - net: stmmac: ptp: update tas basetime after ptp adjust (Mark Salter) [2122230] - net: stmmac: add mutex lock to protect est parameters (Mark Salter) [2122230] - net: stmmac: separate the tas basetime calculation function (Mark Salter) [2122230] - net: stmmac: Terminate FPE workqueue in suspend (Mark Salter) [2122230] - stmmac: intel: set PCI_D3hot in suspend (Mark Salter) [2122230] - stmmac: intel: Enable PHY WOL option in EHL (Mark Salter) [2122230] - net: stmmac: option to enable PHY WOL with PMT enabled (Mark Salter) [2122230] - net: stmmac: remove redundant continue statement (Mark Salter) [2122230] - stmmac: intel: fix wrong kernel-doc (Mark Salter) [2122230] - stmmac: intel: move definitions to dwmac-intel header file (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_do_config and xpcs_link_up (Mark Salter) [2122230] - net: pcs: xpcs: also ignore phy id if it's all ones (Mark Salter) [2122230] - net: pcs: xpcs: add support for sgmii with no inband AN (Mark Salter) [2122230] - net: pcs: xpcs: move register bit descriptions to a header file (Mark Salter) [2122230] - net: stmmac: reduce indentation when calling stmmac_xpcs_setup (Mark Salter) [2122230] - net: stmmac: reverse Christmas tree notation in stmmac_xpcs_setup (Mark Salter) [2122230] - net: pcs: xpcs: rename mdio_xpcs_args to dw_xpcs (Mark Salter) [2122230] - net: phylink: Refactor phylink_of_phy_connect() (Mark Salter) [2122230] - net: phylink: introduce phylink_fwnode_phy_connect() (Mark Salter) [2122230] - net: phy: Introduce phy related fwnode functions (Mark Salter) [2122230] - net: phy: Introduce fwnode_mdio_find_device() (Mark Salter) [2122230] - net: stmmac: Fix unused values warnings (Mark Salter) [2122230] - net: stmmac: Fix mixed enum type warning (Mark Salter) [2122230] - net: stmmac: Fix missing { } around two statements in an if statement (Mark Salter) [2122230] - net: stmmac: explicitly deassert GMAC_AHB_RESET (Mark Salter) [2122230] - net: stmmac: platform: use optional clk/reset get APIs (Mark Salter) [2122230] - net: stmmac: fix NPD with phylink_set_pcs if there is no MDIO bus (Mark Salter) [2122230] - net: stmmac: enable Intel mGbE 2.5Gbps link speed (Mark Salter) [2122230] - net: pcs: add 2500BASEX support for Intel mGbE controller (Mark Salter) [2122230] - net: stmmac: split xPCS setup from mdio register (Mark Salter) [2122230] - net: pcs: xpcs: convert to phylink_pcs_ops (Mark Salter) [2122230] - net: pcs: xpcs: convert to mdio_device (Mark Salter) [2122230] - net: pcs: xpcs: use mdiobus_c45_addr in xpcs_{read,write} (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_probe (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_config_eee (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_validate (Mark Salter) [2122230] - net: pcs: xpcs: make the checks related to the PHY interface mode stateless (Mark Salter) [2122230] - net: pcs: xpcs: delete shim definition for mdio_xpcs_get_ops() (Mark Salter) [2122230] - net: pcs: xpcs: there is only one PHY ID (Mark Salter) [2122230] - net: stmmac: enable platform specific safety features (Mark Salter) [2122230] - net: stmmac: the XPCS obscures a potential "PHY not found" error (Mark Salter) [2122230] - net: stmmac: Add callbacks for DWC xpcs Energy Efficient Ethernet (Mark Salter) [2122230] - net: pcs: Introducing support for DWC xpcs Energy Efficient Ethernet (Mark Salter) [2122230]- xfs: reserve quota for dir expansion when linking/unlinking files (Bill O'Donnell) [2086880] - scsi: storvsc: Fix swiotlb bounce buffer leak in confidential VM (Emanuele Giuseppe Esposito) [2150659] - ACPICA: Fix operand resolution (Mark Langsdorf) [2156144] - driver core: Add missing kernel doc for device::msi_lock (Myron Stowe) [2158839] - PCI/MSI: Protect msi_desc::masked for multi-MSI (Myron Stowe) [2158839] - KVM: arm64: Don't retrieve memory slot again in page fault handler (Gavin Shan) [2161161] - fs: allow cross-vfsmount reflink/dedupe (Andrey Albershteyn) [2086200] - powerpc/hv-gpci: Fix hv_gpci event list (Mamatha Inamdar) [2161258] - powerpc: declare unmodified attribute_group usages const (Mamatha Inamdar) [2161258] - drm/amd: Delay removal of the firmware framebuffer (Michel Dänzer) [2162039] - cpuidle: Add cpu_idle_miss trace event (Mark Langsdorf) [2122312] - cpuidle: haltpoll: Add trace points for guest_halt_poll_ns grow/shrink (Mark Langsdorf) [2122312] - efi/cper, cxl: Decode CXL Error Log (Lenny Szubowicz) [2143733] - efi/cper, cxl: Decode CXL Protocol Error Section (Lenny Szubowicz) [2143733] - efi: cper: Add support for printing Firmware Error Record Reference (Lenny Szubowicz) [2143733] - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_reassemble_sdu (Wander Lairson Costa) [2152927] {CVE-2022-3564} - drm/i915: Fix CFI violations in gt_sysfs (Jocelyn Falempe) [2154880] - NFS: Clear the file access cache upon login (Benjamin Coddington) [2050832] - NFS: don't store 'struct cred *' in struct nfs_access_entry (Benjamin Coddington) [2050832] - NFS: pass cred explicitly for access tests (Benjamin Coddington) [2050832] - NFS: change nfs_access_get_cached to only report the mask (Benjamin Coddington) [2050832] - init: Initialize noop_backing_dev_info early (Nico Pache) [2160228] - mm: vmscan: make rotations a secondary factor in balancing anon vs file (Nico Pache) [2160228] - writeback: Fix inode->i_io_list not be protected by inode->i_lock error (Nico Pache) [2160228] - mm: vmscan: fix extreme overreclaim and swap floods (Nico Pache) [2160228] - mm/page_alloc: ensure kswapd doesn't accidentally go to sleep (Nico Pache) [2160228] - mm/page_io: count submission time as thrashing delay for delayacct (Nico Pache) [2160228] - delayacct: support re-entrance detection of thrashing accounting (Nico Pache) [2160228] - filemap: make the accounting of thrashing more consistent (Nico Pache) [2160228] - writeback: don't warn on an unregistered BDI in __mark_inode_dirty (Nico Pache) [2160228] - s390/dasd: fix no record found for raw_track_access (Tobias Huschle) [2161270] - crypto: testmgr - disallow certain DRBG hash functions in FIPS mode (Vladis Dronov) [2152133] - dmaengine: idxd: Fix crc_val field for completion record (Jerry Snitselaar) [2144375] - dmaengine: idxd: Make read buffer sysfs attributes invisible for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: Make max batch size attributes in sysfs invisible for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: Do not call DMX TX callbacks during workqueue disable (Jerry Snitselaar) [2144375] - dmaengine: idxd: Prevent use after free on completion memory (Jerry Snitselaar) [2144375] - dmaengine: idxd: Let probe fail when workqueue cannot be enabled (Jerry Snitselaar) [2144375] - dmaengine: idxd: Fix max batch size for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: add configuration for concurrent batch descriptor processing (Jerry Snitselaar) [2144375] - dmanegine: idxd: reformat opcap output to match bitmap_parse() input (Jerry Snitselaar) [2144375] - dmaengine: idxd: add configuration for concurrent work descriptor processing (Jerry Snitselaar) [2144375] - dmaengine: idxd: add WQ operation cap restriction support (Jerry Snitselaar) [2144375] - dmaengine: idxd: convert ats_dis to a wq flag (Jerry Snitselaar) [2144375] - dmaengine: idxd: track enabled workqueues in bitmap (Jerry Snitselaar) [2144375] - dmaengine: idxd: Set wq state to disabled in idxd_wq_disable_cleanup() (Jerry Snitselaar) [2144375] - dmaengine: idxd: Do not enable user type Work Queue without Shared Virtual Addressing (Jerry Snitselaar) [2144375] - dmaengine: idxd: fix RO device state error after been disabled/reset (Jerry Snitselaar) [2144375] - dmaengine: idxd: avoid deadlock in process_misc_interrupts() (Jerry Snitselaar) [2144375] - KVM: x86: nSVM: implement nested LBR virtualization (Emanuele Giuseppe Esposito) [2155149] - KVM: x86: nSVM: correctly virtualize LBR msrs when L2 is running (Emanuele Giuseppe Esposito) [2155149] - kvm: x86: SVM: use vmcb* instead of svm->vmcb where it makes sense (Emanuele Giuseppe Esposito) [2155149] - KVM: x86: nSVM: implement nested VMLOAD/VMSAVE (Emanuele Giuseppe Esposito) [2155149] - eth: octeon: fix build after netif_napi_add() changes (Íñigo Huguet) [2152918] - net: drop the weight argument from netif_napi_add (Íñigo Huguet) [2152918] - net: remove netif_tx_napi_add() (Íñigo Huguet) [2152918] - ipoib: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - IB/hfi1: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - IB/hfi1: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - crypto: caam/qi2 - switch to netif_napi_add_tx_weight() (Íñigo Huguet) [2152918] - can: can-dev: move to netif_napi_add_weight() (Íñigo Huguet) [2152918] - net: virtio: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - r8152: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - eth: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - mt76: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - net: move snowflake callers to netif_napi_add_tx_weight() (Íñigo Huguet) [2152918] - net: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - can: m_can: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: remove remaining copies of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: benet: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: atlantic: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: smsc: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: remove copies of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - netdev: reshuffle netif_napi_add() APIs to allow dropping weight (Íñigo Huguet) [2152918] - ipv6: raw: Deduct extension header length in rawv6_push_pending_frames (Hangbin Liu) [2162124] {CVE-2023-0394} - netfilter: conntrack: handle tcp challenge acks during connection reuse (Florian Westphal) [2158726] - act_mirred: use the backlog for nested calls to mirred ingress (Davide Caratti) [2131339] {CVE-2022-4269} - net/sched: act_mirred: better wording on protection against excessive stack growth (Davide Caratti) [2131339] - xfs: add selinux labels to whiteout inodes (Andrey Albershteyn) [2094060] - tdx: enable TDX attestation driver (Wander Lairson Costa) [2076748] - selftests/tdx: Test TDX attestation GetReport support (Wander Lairson Costa) [2076748] - virt: Add TDX guest driver (Wander Lairson Costa) [2076748] - x86/tdx: Add a wrapper to get TDREPORT0 from the TDX Module (Wander Lairson Costa) [2076748] - proc: proc_skip_spaces() shouldn't think it is working on C strings (Wander Lairson Costa) [2152572] {CVE-2022-4378} - proc: avoid integer type confusion in get_proc_long (Wander Lairson Costa) [2152572] {CVE-2022-4378} - NFSv4.2: Update mode bits after ALLOCATE and DEALLOCATE (Jeffrey Layton) [2127153] - NFS: nfsiod should not block forever in mempool_alloc() (Jeffrey Layton) [2127153] - NFSv4.1: Handle NFS4ERR_DELAY replies to OP_SEQUENCE correctly (Benjamin Coddington) [2061259] - NFSv4.1: Don't decrease the value of seq_nr_highest_sent (Benjamin Coddington) [2061259]- uas: ignore UAS for Thinkplus chips (Torez Smith) [2113004] - usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS (Torez Smith) [2113004] - thunderbolt: Explicitly reset plug events delay back to USB4 spec value (Torez Smith) [2113004] - USB: serial: option: add Quectel BG95 0x0203 composition (Torez Smith) [2113004] - thunderbolt: Add support for Intel Maple Ridge single port controller (Torez Smith) [2113004] - USB: core: Fix RST error in hub.c (Torez Smith) [2113004] - kunit: fix Kconfig for build-in tests USB4 and Nitro Enclaves (Torez Smith) [2113004] - usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS (Torez Smith) [2113004] - USB: serial: cp210x: add Decagon UCA device id (Torez Smith) [2113004] - USB: core: Prevent nested device-reset calls (Torez Smith) [2113004] - usb: typec: Remove retimers properly (Torez Smith) [2113004] - USB: serial: ftdi_sio: add Omron CS1W-CIF31 device id (Torez Smith) [2113004] - USB: serial: option: add support for OPPO R11 diag port (Torez Smith) [2113004] - xhci: Add grace period after xHC start to prevent premature runtime suspend. (Torez Smith) [2113004] - xhci: Fix null pointer dereference in remove if xHC has only one roothub (Torez Smith) [2113004] - USB: cdc-acm: Add Icom PMR F3400 support (0c26:0020) (Torez Smith) [2113004] - usb: xhci-mtk: fix bandwidth release issue (Torez Smith) [2113004] - usb: xhci-mtk: relax TT periodic bandwidth allocation (Torez Smith) [2113004] - usb: typec: altmodes/displayport: correct pin assignment for UFP receptacles (Torez Smith) [2113004] - usb: typec: intel_pmc_mux: Add new ACPI ID for Meteor Lake IOM device (Torez Smith) [2113004] - usb-storage: Add ignore-residue quirk for NXP PN7462AU (Torez Smith) [2113004] - usb: typec: tcpm: Return ENOTSUPP for power supply prop writes (Torez Smith) [2113004] - thunderbolt: Check router generation before connecting xHCI (Torez Smith) [2113004] - thunderbolt: Use the actual buffer in tb_async_error() (Torez Smith) [2113004] - USB: usbsevseg: convert sysfs snprintf to sysfs_emit (Torez Smith) [2113004] - dt-bindings: usb: Add binding for TI USB8041 hub controller (Torez Smith) [2113004] - usb: typec: ucsi: stm32g0: add bootloader support (Torez Smith) [2113004] - usb: typec: ucsi: stm32g0: add support for stm32g0 controller (Torez Smith) [2113004] - dt-bindings: usb: typec: add bindings for stm32g0 controller (Torez Smith) [2113004] - usb: typec: ucsi: Acknowledge the GET_ERROR_STATUS command completion (Torez Smith) [2113004] - usb: typec: retimer: Add missing id check in match callback (Torez Smith) [2113004] - USB: xhci: Fix comment typo (Torez Smith) [2113004] - usb/typec/tcpm: fix repeated words in comments (Torez Smith) [2113004] - usb/misc: fix repeated words in comments (Torez Smith) [2113004] - usb/image: fix repeated words in comments (Torez Smith) [2113004] - usb/host: fix repeated words in comments (Torez Smith) [2113004] - usb/core: fix repeated words in comments (Torez Smith) [2113004] - usb/atm: fix repeated words in comments (Torez Smith) [2113004] - USB: HCD: Fix URB giveback issue in tasklet function (Torez Smith) [2113004] - usb: xhci_plat_remove: avoid NULL dereference (Torez Smith) [2113004] - USB: serial: fix tty-port initialized comments (Torez Smith) [2113004] - USB: serial: usb_wwan: replace DTR/RTS magic numbers with macros (Torez Smith) [2113004] - USB: cdc-acm: use CDC serial-state defines (Torez Smith) [2113004] - USB: cdc-acm: use CDC control-line defines (Torez Smith) [2113004] - USB: cdc: add serial-state defines (Torez Smith) [2113004] - USB: cdc: add control-signal defines (Torez Smith) [2113004] - net/cdc_ncm: Increase NTB max RX/TX values to 64kb (Torez Smith) [2113004] - usb: typec: Add retimer handle to port (Torez Smith) [2113004] - usb: typec: Add support for retimers (Torez Smith) [2113004] - dt-bindings: usb: Add analogix anx7411 PD binding (Torez Smith) [2113004] - usb: ldusb: replace ternary operator with max_t() (Torez Smith) [2113004] - USB: serial: fix repeated word "the" in comments (Torez Smith) [2113004] - USB: serial: io_edgeport: fix spelling mistakes (Torez Smith) [2113004] - USB: serial: ftdi_sio: add Belimo device ids (Torez Smith) [2113004] - thunderbolt: test: Use kunit_test_suite() macro (Torez Smith) [2113004] - media: pvrusb2: drop unexpected word 'a' in comments (Torez Smith) [2113004] - media: gspca: drop unexpected word 'is' in the comments (Torez Smith) [2113004] - usb: typec: add missing uevent when partner support PD (Torez Smith) [2113004] - tools: usb: testusb: Add super-plus speed reporting (Torez Smith) [2113004] - tools: usb: testusb: Add super speed reporting (Torez Smith) [2113004] - tools: usb: testusb: Add wireless speed reporting (Torez Smith) [2113004] - usb: typec: tcpci: move tcpci.h to include/linux/usb/ (Torez Smith) [2113004] - ARM: sa1100/assabet: move dmabounce hack to ohci driver (Torez Smith) [2113004] - usb: host: xhci: use snprintf() in xhci_decode_trb() (Torez Smith) [2113004] - USB: cdc-acm: use define for timeout (Torez Smith) [2113004] - usb: typec_altmode: add a missing "@" at a kernel-doc parameter (Torez Smith) [2113004] - usb: core: sysfs: convert sysfs snprintf to sysfs_emit (Torez Smith) [2113004] - media: usb: gspca: aligned '*' each line (Torez Smith) [2113004] - media: hdpvr: fix error value returns in hdpvr_read (Torez Smith) [2113004] - media: em28xx: Remove useless license text when SPDX-License-Identifier is already used (Torez Smith) [2113004] - USB: serial: use kmemdup instead of kmalloc + memcpy (Torez Smith) [2113004] - usb: host: ehci-q: Fix ehci_submit_single_step_set_feature annotation typo (Torez Smith) [2113004] - USB: storage: Fix typo in comment (Torez Smith) [2113004] - usb: typec: mux: Add CONFIG guards for functions (Torez Smith) [2113004] - usb: typec: mux: Allow muxes to specify mode-switch (Torez Smith) [2113004] - usb: musb: Add support for PolarFire SoC's musb controller (Torez Smith) [2113004] - media: pvrusb2: fix memory leak in pvr_probe (Torez Smith) [2113004] - media: airspy: respect the DMA coherency rules (Torez Smith) [2113004] - media: usbtv: Add PAL-Nc standard (Torez Smith) [2113004] - thunderbolt: Fix typo in comment (Torez Smith) [2113004] - dt-bindings: usb: add documentation for aspeed udc (Torez Smith) [2113004] - usb: Avoid extra usb SET_SEL requests when enabling link power management (Torez Smith) [2113004] - usb: typec: tcpm: Register USB Power Delivery Capabilities (Torez Smith) [2113004] - usb: typec: USB Power Delivery helpers for ports and partners (Torez Smith) [2113004] - usb: typec: Separate USB Power Delivery from USB Type-C (Torez Smith) [2113004] - usb: hub: port: add sysfs entry to switch port power (Torez Smith) [2113004] - ucsi_ccg: ACPI based I2c client enumeration for AMD ASICs (Torez Smith) [2113004] - ucsi_ccg: Do not hardcode interrupt polarity and type (Torez Smith) [2113004] - usb: xhci-mtk: add support optional controller reset (Torez Smith) [2113004] - usb: typec: tcpm: fix typo in comment (Torez Smith) [2113004] - usb: xhci: tegra: Fix error check (Torez Smith) [2113004] - usb: common: usb-conn-gpio: Allow wakeup from system suspend (Torez Smith) [2113004] - usbip: vudc: Don't enable IRQs prematurely (Torez Smith) [2113004] - USB: usbip: clean up mixed use of _irq() and _irqsave() (Torez Smith) [2113004] - USB: Follow-up to SPDX identifiers addition - remove now useless comments (Torez Smith) [2113004] - thunderbolt: Fix some kernel-doc comments (Torez Smith) [2113004] - usb: hub: Simplify error and success path in port_over_current_notify (Torez Smith) [2113004] - usb: remove Link Powermanagement (LPM) disable before port reset. (Torez Smith) [2113004] - thunderbolt: Change TMU mode to HiFi uni-directional once DisplayPort tunneled (Torez Smith) [2113004] - usb: core: Bail out when port is stuck in reset loop (Torez Smith) [2113004] - thunderbolt: Add CL1 support for USB4 and Titan Ridge routers (Torez Smith) [2113004] - thunderbolt: Change downstream router's TMU rate in both TMU uni/bidir mode (Torez Smith) [2113004] - USB: core: Fix bug in resuming hub's handling of wakeup requests (Torez Smith) [2113004] - thunderbolt: Fix typos in CLx enabling (Torez Smith) [2113004] - usb: hub: Add delay for SuperSpeed hub resume to let links transit to U0 (Torez Smith) [2113004] - usb: hub: make wait_for_connected() take an int instead of a pointer to int (Torez Smith) [2113004] - thunderbolt: CLx disable before system suspend only if previously enabled (Torez Smith) [2113004] - usb: hub: avoid warm port reset during USB3 disconnect (Torez Smith) [2113004] - thunderbolt: Silently ignore CLx enabling in case CLx is not supported (Torez Smith) [2113004]- config: Enable Security Path (Ricardo Robaina) [2161309] - tcp: Fix build break when CONFIG_IPV6=n (Jamie Bainbridge) [2143849] - tcp: annotate data-race around queue->synflood_warned (Jamie Bainbridge) [2143849] - tcp: Add listening address to SYN flood message (Jamie Bainbridge) [2143849] - tcp: Fix data-races around sysctl_tcp_syncookies. (Jamie Bainbridge) [2143849] - firmware_loader: Fix memory leak in firmware upload (Mark Langsdorf) [2122319] - firmware_loader: Fix use-after-free during unregister (Mark Langsdorf) [2122319] - firmware_loader: fix memory leak for paged buffer (Mark Langsdorf) [2122319] - firmware_loader: describe 'module' parameter of firmware_upload_register() (Mark Langsdorf) [2122319] - firmware_loader: Move definitions from sysfs_upload.h to sysfs.h (Mark Langsdorf) [2122319] - firmware_loader: Add sysfs nodes to monitor fw_upload (Mark Langsdorf) [2122319] - firmware_loader: Add firmware-upload support (Mark Langsdorf) [2122319] - firmware_loader: Split sysfs support from fallback (Mark Langsdorf) [2122319] - firmware_loader: Clear data and size in fw_free_paged_buf (Mark Langsdorf) [2122319] - firmware: Use kvmalloc for page tables (Mark Langsdorf) [2122319] - firmware: Unify the paged buffer release helper (Mark Langsdorf) [2122319] - firmware: Free temporary page table after vmapping (Mark Langsdorf) [2122319] - arch_topology: Make cluster topology span at least SMT CPUs (Mark Langsdorf) [2122319] - driver core: fix driver_set_override() issue with empty strings (Mark Langsdorf) [2122319] - arch_topology: Silence early cacheinfo errors when non-existent (Mark Langsdorf) [2122319] - driver core: Don't probe devices after bus_type.match() probe deferral (Mark Langsdorf) [2122319] - regmap: spi: Reserve space for register address/padding (Mark Langsdorf) [2122319] - arch_topology: Fix cache attributes detection in the CPU hotplug path (Mark Langsdorf) [2122319] - cacheinfo: Use atomic allocation for percpu cache attributes (Mark Langsdorf) [2122319] - regmap: permit to set reg_update_bits with bulk implementation (Mark Langsdorf) [2122319] - PM: domains: Ensure genpd_debugfs_dir exists before remove (Mark Langsdorf) [2122319] - PM: runtime: Extend support for wakeirq for force_suspend|resume (Mark Langsdorf) [2122319] - regmap: add WARN_ONCE when invalid mask is provided to regmap_field_init() (Mark Langsdorf) [2122319] - PM: wakeup: Unify device_init_wakeup() for PM_SLEEP and !PM_SLEEP (Mark Langsdorf) [2122319] - arch_topology: Warn that topology for nested clusters is not supported (Mark Langsdorf) [2122319] - arch_topology: Add support for parsing sockets in /cpu-map (Mark Langsdorf) [2122319] - arch_topology: Set cluster identifier in each core/thread from /cpu-map (Mark Langsdorf) [2122319] - arch_topology: Limit span of cpu_clustergroup_mask() (Mark Langsdorf) [2122319] - arch_topology: Don't set cluster identifier as physical package identifier (Mark Langsdorf) [2122319] - arch_topology: Avoid parsing through all the CPUs once a outlier CPU is found (Mark Langsdorf) [2122319] - arch_topology: Check for non-negative value rather than -1 for IDs validity (Mark Langsdorf) [2122319] - arch_topology: Set thread sibling cpumask only within the cluster (Mark Langsdorf) [2122319] - arch_topology: Drop LLC identifier stash from the CPU topology (Mark Langsdorf) [2122319] - arm64: topology: Remove redundant setting of llc_id in CPU topology (Mark Langsdorf) [2122319] - arch_topology: Use the last level cache information from the cacheinfo (Mark Langsdorf) [2122319] - arch_topology: Add support to parse and detect cache attributes (Mark Langsdorf) [2122319] - cacheinfo: Align checks in cache_shared_cpu_map_{setup,remove} for readability (Mark Langsdorf) [2122319] - cacheinfo: Use cache identifiers to check if the caches are shared if available (Mark Langsdorf) [2122319] - cacheinfo: Allow early detection and population of cache attributes (Mark Langsdorf) [2122319] - cacheinfo: Add support to check if last level cache(LLC) is valid or shared (Mark Langsdorf) [2122319] - cacheinfo: Move cache_leaves_are_shared out of CONFIG_OF (Mark Langsdorf) [2122319] - cacheinfo: Add helper to access any cache index for a given CPU (Mark Langsdorf) [2122319] - cacheinfo: Use of_cpu_device_node_get instead cpu_dev->of_node (Mark Langsdorf) [2122319] - regmap: cache: Add extra parameter check in regcache_init (Mark Langsdorf) [2122319] - regmap-irq: Refactor checks for status bulk read support (Mark Langsdorf) [2122319] - regmap-irq: Remove mask_writeonly and regmap_irq_update_bits() (Mark Langsdorf) [2122319] - regmap-irq: Remove inappropriate uses of regmap_irq_update_bits() (Mark Langsdorf) [2122319] - driver core: fix potential deadlock in __driver_attach (Mark Langsdorf) [2122319] - devtmpfs: fix the dangling pointer of global devtmpfsd thread (Mark Langsdorf) [2122319] - regmap: Don't warn about cache only mode for devices with no cache (Mark Langsdorf) [2122319] - regmap: Wire up regmap_config provided bulk write in missed functions (Mark Langsdorf) [2122319] - regmap: Make regmap_noinc_read() return -ENOTSUPP if map->read isn't set (Mark Langsdorf) [2122319] - regmap: Re-introduce bulk read support check in regmap_bulk_read() (Mark Langsdorf) [2122319] - init: Initialize noop_backing_dev_info early (Mark Langsdorf) [2122319] - driver core: Introduce device_find_any_child() helper (Mark Langsdorf) [2122319] - regmap: cache: Fix syntax errors in comments (Mark Langsdorf) [2122319] - PM: domains: Trust domain-idle-states from DT to be correct by genpd (Mark Langsdorf) [2122319] - PM: domains: Measure power-on/off latencies in genpd based on a governor (Mark Langsdorf) [2122319] - PM: domains: Allocate governor data dynamically based on a genpd governor (Mark Langsdorf) [2122319] - PM: domains: Clean up some code in pm_genpd_init() and genpd_remove() (Mark Langsdorf) [2122319] - PM: domains: Fix initialization of genpd's next_wakeup (Mark Langsdorf) [2122319] - PM: domains: Fixup QoS latency measurements for IRQ safe devices in genpd (Mark Langsdorf) [2122319] - PM: domains: Measure suspend/resume latencies in genpd based on governor (Mark Langsdorf) [2122319] - PM: domains: Move the next_wakeup variable into the struct gpd_timing_data (Mark Langsdorf) [2122319] - PM: domains: Allocate gpd_timing_data dynamically based on governor (Mark Langsdorf) [2122319] - PM: domains: Skip another warning in irq_safe_dev_in_sleep_domain() (Mark Langsdorf) [2122319] - PM: domains: Rename irq_safe_dev_in_no_sleep_domain() in genpd (Mark Langsdorf) [2122319] - PM: domains: Don't check PM_QOS_FLAG_NO_POWER_OFF in genpd (Mark Langsdorf) [2122319] - PM: domains: Drop redundant code for genpd always-on governor (Mark Langsdorf) [2122319] - PM: domains: Add GENPD_FLAG_RPM_ALWAYS_ON for the always-on governor (Mark Langsdorf) [2122319] - PM: wakeup: expose pm_wakeup_pending to modules (Mark Langsdorf) [2122319] - driver core: fix deadlock in __device_attach (Mark Langsdorf) [2122319] - driver: base: fix UAF when driver_attach failed (Mark Langsdorf) [2122319] - driver core: location: Add "back" as a possible output for panel (Mark Langsdorf) [2122319] - driver core: location: Free struct acpi_pld_info *pld (Mark Langsdorf) [2122319] - regmap: Add missing map->bus check (Mark Langsdorf) [2122319] - device property: Advertise fwnode and device property count API calls (Mark Langsdorf) [2122319] - driver core: location: Check for allocations failure (Mark Langsdorf) [2122319] - regmap: Add bulk read/write callbacks into regmap_config (Mark Langsdorf) [2122319] - device property: Fix recent breakage of fwnode_get_next_parent_dev() (Mark Langsdorf) [2122319] - drivers/base/memory: fix an unlikely reference counting issue in __add_memory_block() (Mark Langsdorf) [2122319] - driver core: Add dma_cleanup callback in bus_type (Mark Langsdorf) [2122319] - driver core: Add sysfs support for physical location of a device (Mark Langsdorf) [2122319] - drivers/base/node.c: fix compaction sysfs file leak (Mark Langsdorf) [2122319] - driver core: Prevent overriding async driver of a device before it probe (Mark Langsdorf) [2122319] - Documentation: dd: Use ReST lists for return values of driver_deferred_probe_check_state() (Mark Langsdorf) [2122319] - regmap: cache: set max_register with reg_stride (Mark Langsdorf) [2122319] - firmware_loader: Check fw_state_is_done in loading_store (Mark Langsdorf) [2122319] - driver: platform: Add helper for safer setting of driver_override (Mark Langsdorf) [2122319] - PM: domains: Move genpd's time-accounting to ktime_get_mono_fast_ns() (Mark Langsdorf) [2122319] - PM: runtime: Allow to call __pm_runtime_set_status() from atomic context (Mark Langsdorf) [2122319] - device property: Drop 'test' prefix in parameters of fwnode_is_ancestor_of() (Mark Langsdorf) [2122319] - device property: Introduce fwnode_for_each_parent_node() (Mark Langsdorf) [2122319] - device property: Allow error pointer to be passed to fwnode APIs (Mark Langsdorf) [2122319] - device property: Check fwnode->secondary in fwnode_graph_get_next_endpoint() (Mark Langsdorf) [2122319] - PM: runtime: Avoid device usage count underflows (Mark Langsdorf) [2122319] - PM: domains: Extend dev_pm_domain_detach() doc (Mark Langsdorf) [2122319]- gitlab-ci: use CI templates from production branch (Michael Hofmann) - cpufreq: ACPI: Remove unused variables 'acpi_cpufreq_online' and 'ret' (Mark Langsdorf) [2038200] - cpufreq: ACPI: Only set boost MSRs on supported CPUs (Mark Langsdorf) [2038200] - cpufreq: ACPI: Defer setting boost MSRs (Mark Langsdorf) [2038200] - s390/kexec: fix ipl report address for kdump (Tobias Huschle) [2161328] - iavf: schedule watchdog immediately when changing primary MAC (Michal Schmidt) [2152493] - iavf: Move netdev_update_features() into watchdog task (Michal Schmidt) [2152493] - iavf: fix temporary deadlock and failure to set MAC address (Michal Schmidt) [2152493] - iavf: Fix error handling in iavf_init_module() (Michal Schmidt) [2152493]- net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103955] - ixgbe: stop resetting SYSTIME in ixgbe_ptp_start_cyclecounter (Ken Cox) [2103955] - ixgbe: Manual AN-37 for troublesome link partners for X550 SFI (Ken Cox) [2103955] - ixgbe: Don't call kmap() on page allocated with GFP_ATOMIC (Ken Cox) [2103955] - ixgbe: convert .adjfreq to .adjfine (Ken Cox) [2103955] - ixgbe: drop unexpected word 'for' in comments (Ken Cox) [2103955] - ixgbe: remove unexpected word "the" (Ken Cox) [2103955] - intel: remove unused macros (Ken Cox) [2103955] - ixgbe: Fix typos in comments (Ken Cox) [2103955] - drivers, ixgbe: export vf statistics (Ken Cox) [2103955] - ixgbe: fix unexpected VLAN Rx in promisc mode on VF (Ken Cox) [2103955] - ixgbe: fix bcast packets Rx on VF after promisc removal (Ken Cox) [2103955] - ixgbe: propagate XFRM offload state direction instead of flags (Ken Cox) [2103955] - ixgbe: Fix module_param allow_unsupported_sfp type (Ken Cox) [2103955] - ixgbe: ensure IPsec VF<->PF compatibility (Ken Cox) [2103955] - ixgbe, xsk: Get rid of redundant 'fallthrough' (Ken Cox) [2103955] - ixgbe, xsk: Diversify return values from xsk_wakeup call paths (Ken Cox) [2103955] - ixgbe, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Ken Cox) [2103955] - ixgbe, xsk: Decorate IXGBE_XDP_REDIR with likely() (Ken Cox) [2103955] - ixgbe: add improvement for MDD response functionality (Ken Cox) [2103955] - ixgbe: add the ability for the PF to disable VF link state (Ken Cox) [2103955] - ixgbe: xsk: change !netif_carrier_ok() handling in ixgbe_xmit_zc() (Ken Cox) [2103955] - ixgbe: Remove non-inclusive language (Ken Cox) [2103955] - ixgbe: Use irq_update_affinity_hint() (Ken Cox) [2103955] - net: convert users of bitmap_foo() to linkmode_foo() (Ken Cox) [2103955] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2103955] - net: Use skb_frag_off accessors (Ken Cox) [2103955] - drm/i915: Fix watermark calculations for DG2 CCS+CC modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for DG2 CCS modifiers (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ CCS+CC modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ MC CCS modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ RC CCS modifier (Jocelyn Falempe) [2041686] - drm/i915/uc: fix device/bus include on rhel8 (Jocelyn Falempe) [2041686] - drm/i915/display: consider DG2_RC_CCS_CC when migrating buffers (Jocelyn Falempe) [2041686] - drm/i915: allow control over the flags when migrating (Jocelyn Falempe) [2041686] - drm/i915/display: handle migration for dpt (Jocelyn Falempe) [2041686] - drm/i915/huc: better define HuC status getparam possible return values. (Jocelyn Falempe) [2041686] - drm/i915/huc: stall media submission until HuC is loaded (Jocelyn Falempe) [2041686] - drm/i915/huc: track delayed HuC load with a fence (Jocelyn Falempe) [2041686] - drm/i915/dg2: setup HuC loading via GSC (Jocelyn Falempe) [2041686] - drm/i915/pxp: add huc authentication and loading command (Jocelyn Falempe) [2041686] - drm/i915/pxp: implement function for sending tee stream command (Jocelyn Falempe) [2041686] - drm/i915/pxp: load the pxp module when we have a gsc-loaded huc (Jocelyn Falempe) [2041686] - drm/i915/gt: Flush to global observation point before breadcrumb write (Jocelyn Falempe) [2041686] - drm/i915/guc/slpc: Add SLPC selftest live_slpc_power (Jocelyn Falempe) [2041686] - drm/i915/guc/slpc: Run SLPC selftests on all tiles (Jocelyn Falempe) [2041686] - drm/i915: Remove unwanted pointer unpacking (Jocelyn Falempe) [2041686] - drm/i915/guc: Enable compute scheduling on DG2 (Jocelyn Falempe) [2041686] - drm/i915/dg2: introduce Wa_22015475538 (Jocelyn Falempe) [2041686] - drm/i915/uc: Update to latest GuC and use new-format GuC/HuC names (Jocelyn Falempe) [2041686] - Revert "drm/i915/dg2: extend Wa_1409120013 to DG2" (Jocelyn Falempe) [2041686] - drm/i915/gsc: allocate extended operational memory in LMEM (Jocelyn Falempe) [2041686] - drm/i915/gsc: add GSC XeHP SDV platform definition (Jocelyn Falempe) [2041686] - drm/i915/gsc: add slow_firmware flag to the gsc device definition (Jocelyn Falempe) [2041686] - drm/i915/gsc: skip irq initialization if using polling (Jocelyn Falempe) [2041686] - drm/i915/uc: Add patch level version number support (Jocelyn Falempe) [2041686] - drm/i915/uc: Support for version reduced and multiple firmware files (Jocelyn Falempe) [2041686] - drm/i915/ttm: Abort suspend on i915_ttm_backup failure (Jocelyn Falempe) [2041686] - drm/i915/dg2: Incorporate Wa_16014892111 into DRAW_WATERMARK tuning (Jocelyn Falempe) [2041686] - drm/i915/guc: Record CTB info in error logs (Jocelyn Falempe) [2041686] - drm/i915/guc: Add GuC <-> kernel time stamp translation information (Jocelyn Falempe) [2041686] - drm/i915/guc: Don't use pr_err when not necessary (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add support for DC5 state (Jocelyn Falempe) [2041686] - drm/i915/dmc: Update DG2 DMC firmware to v2.07 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add additional tuning settings (Jocelyn Falempe) [2041686] - drm/i915/gt: Add dedicated function for non-ctx register tuning settings (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add Wa_1509727124 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Update DG2 to GuC v70.4.1 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add additional HDMI pixel clock frequencies (Jocelyn Falempe) [2041686] - Revert "drm/i915/dg2: Add preemption changes for Wa_14015141709" (Jocelyn Falempe) [2041686] - config: Enable TDX Guest (Wander Lairson Costa) [1836977] - x86/tdx: mark TDX as a tech preview (Wander Lairson Costa) [1836977] - x86/tdx: Panic on bad configs that #VE on "private" memory access (Wander Lairson Costa) [1836977] - x86/tdx: Prepare for using "INFO" call for a second purpose (Wander Lairson Costa) [1836977] - x86/tdx: Handle load_unaligned_zeropad() page-cross to a shared page (Wander Lairson Costa) [1836977] - x86/tdx: Clarify RIP adjustments in #VE handler (Wander Lairson Costa) [1836977] - vt: Initialize conswitchp to dummy_con if unset (Wander Lairson Costa) [1836977] - x86/tdx: Fix early #VE handling (Wander Lairson Costa) [1836977] - x86/tdx: Fix RETs in TDX asm (Wander Lairson Costa) [1836977] - x86/apic: Do apic driver probe for "nosmp" use case (Wander Lairson Costa) [1836977] - x86/mm: Fix spacing within memory encryption features message (Wander Lairson Costa) [1836977] - x86/kaslr: Fix build warning in KASLR code in boot stub (Wander Lairson Costa) [1836977] - Documentation/x86: Document TDX kernel architecture (Wander Lairson Costa) [1836977] - ACPICA: Avoid cache flush inside virtual machines (Wander Lairson Costa) [1836977] - x86/tdx/ioapic: Add shared bit for IOAPIC base address (Wander Lairson Costa) [1836977] - x86/mm: Make DMA memory shared for TD guest (Wander Lairson Costa) [1836977] - x86/mm/cpa: Add support for TDX shared memory (Wander Lairson Costa) [1836977] - x86/tdx: Make pages shared in ioremap() (Wander Lairson Costa) [1836977] - x86/topology: Disable CPU online/offline control for TDX guests (Wander Lairson Costa) [1836977] - x86/boot: Avoid #VE during boot for TDX platforms (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Use TEST reg,reg instead of CMP $0,reg (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Do not corrupt EDX on EFER.LME=1 setting (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Set EFER.LME=1 in 32-bit trampoline before returning to long mode (Wander Lairson Costa) [1836977] - x86/boot: Set CR0.NE early and keep it set during the boot (Wander Lairson Costa) [1836977] - x86/acpi/x86/boot: Add multiprocessor wake-up support (Wander Lairson Costa) [1836977] - x86/boot: Add a trampoline for booting APs via firmware handoff (Wander Lairson Costa) [1836977] - x86/asm/realmode: Use SYM_DATA_* instead of GLOBAL (Wander Lairson Costa) [1836977] - x86/realmode: Remove trampoline_status (Wander Lairson Costa) [1836977] - x86/tdx: Wire up KVM hypercalls (Wander Lairson Costa) [1836977] - x86/tdx: Port I/O: Add early boot support (Wander Lairson Costa) [1836977] - x86/tdx: Port I/O: Add runtime hypercalls (Wander Lairson Costa) [1836977] - x86/boot: Port I/O: Add decompression-time support for TDX (Wander Lairson Costa) [1836977] - x86/boot: Port I/O: Allow to hook up alternative helpers (Wander Lairson Costa) [1836977] - x86: Consolidate port I/O helpers (Wander Lairson Costa) [1836977] - x86: Adjust types used in port I/O helpers (Wander Lairson Costa) [1836977] - x86/tdx: Detect TDX at early kernel decompression time (Wander Lairson Costa) [1836977] - x86/tdx: Handle in-kernel MMIO (Wander Lairson Costa) [1836977] - x86/tdx: Handle CPUID via #VE (Wander Lairson Costa) [1836977] - x86/tdx: Add MSR support for TDX guests (Wander Lairson Costa) [1836977] - x86/tdx: Add HLT support for TDX guests (Wander Lairson Costa) [1836977] - x86/traps: Add #VE support for TDX guest (Wander Lairson Costa) [1836977] - x86/traps: Refactor exc_general_protection() (Wander Lairson Costa) [1836977] - x86/traps: Cleanup do_general_protection() (Wander Lairson Costa) [1836977] - x86/dumpstack: Introduce die_addr() for die() with #GP fault address (Wander Lairson Costa) [1836977] - x86/traps: Print address on #GP (Wander Lairson Costa) [1836977] - x86/kprobes: Inline kprobe_exceptions_notify() into do_general_protection() (Wander Lairson Costa) [1836977] - x86/tdx: Exclude shared bit from __PHYSICAL_MASK (Wander Lairson Costa) [1836977] - x86/tdx: Extend the confidential computing API to support TDX guests (Wander Lairson Costa) [1836977] - x86/tdx: Add __tdx_module_call() and __tdx_hypercall() helper functions (Wander Lairson Costa) [1836977] - x86/tdx: Provide common base for SEAMCALL and TDCALL C wrappers (Wander Lairson Costa) [1836977] - x86/tdx: Detect running as a TDX guest in early boot (Wander Lairson Costa) [1836977] - x86/mm/cpa: Generalize __set_memory_enc_pgtable() (Wander Lairson Costa) [1836977] - x86/mm/pat: Don't flush cache if hardware enforces cache coherency across encryption domnains (Wander Lairson Costa) [1836977] - x86/coco: Add API to handle encryption mask (Wander Lairson Costa) [1836977] - x86/cc: Move arch/x86/{kernel/cc_platform.c => coco/core.c} (Wander Lairson Costa) [1836977] - x86/sev-es: Use insn_decode_mmio() for MMIO implementation (Wander Lairson Costa) [1836977] - x86/insn-eval: Introduce insn_decode_mmio() (Wander Lairson Costa) [1836977] - x86/insn-eval: Introduce insn_get_modrm_reg_ptr() (Wander Lairson Costa) [1836977] - x86/insn-eval: Handle insn_get_opcode() failure (Wander Lairson Costa) [1836977] - x86/sev: Move common memory encryption code to mem_encrypt.c (Wander Lairson Costa) [1836977] - x86/sev: Rename mem_encrypt.c to mem_encrypt_amd.c (Wander Lairson Costa) [1836977] - x86/virtio: Have SEV guests enforce restricted virtio memory access (Wander Lairson Costa) [1836977] - devlink: protect devlink dump by the instance lock (Petr Oros) [2131116] - devlink: hold region lock when flushing snapshots (Petr Oros) [2131116] - net: devlink: enable parallel ops on netlink interface (Petr Oros) [2131116] - net: devlink: remove devlink_mutex (Petr Oros) [2131116] - net: devlink: convert reload command to take implicit devlink->lock (Petr Oros) [2131116] - net: devlink: introduce "unregistering" mark and use it during devlinks iteration (Petr Oros) [2131116] - devlink: Fix use-after-free after a failed reload (Petr Oros) [2131116] - net: devlink: Fix missing mutex_unlock() call (Petr Oros) [2131116] - Documentation: devlink: add add devlink-selftests to the table of contents (Petr Oros) [2131116] - devlink: Hold the instance lock in health callbacks (Petr Oros) [2131116] - net/mlx4: Lock mlx4 devlink reload callback (Petr Oros) [2131116] - net/mlx4: Use devl_ API for devlink port register / unregister (Petr Oros) [2131116] - net/mlx4: Use devl_ API for devlink region create / destroy (Petr Oros) [2131116] - net: devlink: remove region snapshots list dependency on devlink->lock (Petr Oros) [2131116] - net: devlink: remove region snapshot ID tracking dependency on devlink->lock (Petr Oros) [2131116] - devlink: introduce framework for selftests (Petr Oros) [2131116] - net: devlink: remove redundant net_eq() check from sb_pool_get_dumpit() (Petr Oros) [2131116] - net: devlink: move net check into devlinks_xa_for_each_registered_get() (Petr Oros) [2131116] - net: devlink: make sure that devlink_try_get() works with valid pointer during xarray iteration (Petr Oros) [2131116] - netdevsim: convert driver to use unlocked devlink API during init/fini (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_region_create/destroy() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_dpipe*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_sb*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_resource*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devling_trap*() functions (Petr Oros) [2131116] - net: devlink: avoid false DEADLOCK warning reported by lockdep (Petr Oros) [2131116] - net: devlink: fix return statement in devlink_port_new_notify() (Petr Oros) [2131116] - net: devlink: fix a typo in function name devlink_port_new_notifiy() (Petr Oros) [2131116] - net: devlink: make devlink_dpipe_headers_register() return void (Petr Oros) [2131116] - net: devlink: move unlocked function prototypes alongside the locked ones (Petr Oros) [2131116] - net: devlink: use helpers to work with devlink->lock mutex (Petr Oros) [2131116] - net: devlink: fix unlocked vs locked functions descriptions (Petr Oros) [2131116] - devlink: Hold the instance lock in port_new / port_del callbacks (Petr Oros) [2131116] - powercap: intel_rapl: Add support for RAPTORLAKE_S (Prarit Bhargava) [2120363] - selftests/bpf: Fix test_varlen verification failure with latest llvm (Yauheni Kaliuta) [2149222] - iwlwifi: remove firmware version limit for AC9560 (Íñigo Huguet) [2129361] - wifi: iwlwifi: fw: skip PPAG for JF (Íñigo Huguet) [2129361] - sched: Improve wake_up_all_idle_cpus() take #2 (Julia Denham) [2134931] - selftests/livepatch: better synchronize test_klp_callbacks_busy (Julia Denham) [2121204] - sched,livepatch: Use wake_up_if_idle() (Joe Lawrence) [2134931] - sched: Simplify wake_up_*idle*() (Joe Lawrence) [2134931] - sched,livepatch: Use task_call_func() (Joe Lawrence) [2134931] - sched,rcu: Rework try_invoke_on_locked_down_task() (Joe Lawrence) [2134931] - sched: Improve try_invoke_on_locked_down_task() (Joe Lawrence) [2134931] - arm64/bpf: Remove 128MB limit for BPF JIT programs (Yauheni Kaliuta) [2140163] - bpf: Define bpf_jit_alloc_exec_limit for arm64 JIT (Yauheni Kaliuta) [2140163] - arm64: extable: add `type` and `data` fields (Yauheni Kaliuta) [2140163] - arm64: extable: use `ex` for `exception_table_entry` (Yauheni Kaliuta) [2140163] - arm64: extable: make fixup_exception() return bool (Yauheni Kaliuta) [2140163] - arm64: extable: consolidate definitions (Yauheni Kaliuta) [2140163] - arm64: kvm: use kvm_exception_table_entry (Yauheni Kaliuta) [2140163] - s390/cio: check the subchannel validity for dev_busid (Tobias Huschle) [2160494] - s390/cio: add dev_busid sysfs entry for each subchannel (Tobias Huschle) [2160494]- intel_idle: Add AlderLake-N support (Prarit Bhargava) [2144692] - selftests/timens: add a test for vfork+exit (Oleg Nesterov) [2116444] - fs/exec: switch timens when a task gets a new mm (Oleg Nesterov) [2116444] - namespace: make timens_on_fork() return nothing (Oleg Nesterov) [2116444] - timens: make vdso_join_timens() always succeed (Oleg Nesterov) [2116444] - xfrm: Fix oops in __xfrm_state_delete() (Sabrina Dubroca) [2156048] - tcp: Fix data races around icsk->icsk_af_ops. (Guillaume Nault) [2143904] {CVE-2022-3566} - ice: synchronize the misc IRQ when tearing down Tx tracker (Petr Oros) [2148858] - ice: fix handling of burst Tx timestamps (Petr Oros) [2148858] - vhost/vsock: Fix error handling in vhost_vsock_init() (Stefano Garzarella) [2159969] - net: vmw_vsock: vmci: Check memcpy_from_msg() (Stefano Garzarella) [2159969] - vhost/vsock: Use kvmalloc/kvfree for larger packets. (Stefano Garzarella) [2159969] - vsock: Set socket state back to SS_UNCONNECTED in vsock_connect_timeout() (Stefano Garzarella) [2159969] - vsock: Fix memory leak in vsock_connect() (Stefano Garzarella) [2159969] - tools/power turbostat: Add support for RPL-S (Prarit Bhargava) [2122848]- nvme: re-order nvme_alloc_ns to match "nvme: use blk_mq_alloc_disk" (Chris Leech) [2152742] - perf vendor events amd: Add Zen 4 mapping (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 metrics (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 uncore events (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 core events (Michael Petlan) [2148294] - cpuhotplug: Fix KABI breakage (Prarit Bhargava) [2156529] - scsi: target: core: Fix hard lockup when executing a compare-and-write command (Maurizio Lombardi) [2119897] - x86/topology: Fix duplicated core ID within a package (Prarit Bhargava) [2159553] - x86/topology: Fix multiple packages shown on a single-package system (Prarit Bhargava) [2159553] - hwmon/coretemp: Handle large core ID value (Prarit Bhargava) [2159553] - x86: Remove vendor checks from prefer_mwait_c1_over_halt (Prarit Bhargava) [2150067] - x86: Handle idle=nomwait cmdline properly for x86_idle (Prarit Bhargava) [2150067] - cpufreq: intel_pstate: Support Sapphire Rapids OOB mode (Prarit Bhargava) [2117767] - KVM: nVMX: Inject #GP, not #UD, if "generic" VMXON CR0/CR4 check fails (Emanuele Giuseppe Esposito) [2159433] - vmxnet3: correctly report csum_level for encapsulated packet (Izabela Bakollari) [2158809] - mei: pxp: support matching with a gfx discrete card (Jocelyn Falempe) [2147557] - mei: pxp: add command streamer API to the PXP driver (Jocelyn Falempe) [2147557] - mei: bus: extend bus API to support command streamer API (Jocelyn Falempe) [2147557] - mei: adjust extended header kdocs (Jocelyn Falempe) [2147557] - mei: bus: enable sending gsc commands (Jocelyn Falempe) [2147557] - mei: add support to GSC extended header (Jocelyn Falempe) [2147557] - mei: debugfs: add pxp mode to devstate in debugfs (Jocelyn Falempe) [2147557] - mei: drop ready bits check after start (Jocelyn Falempe) [2147557] - mei: gsc: add transition to PXP mode in resume flow (Jocelyn Falempe) [2147557] - mei: gsc: setup gsc extended operational memory (Jocelyn Falempe) [2147557] - mei: mkhi: add memory ready command (Jocelyn Falempe) [2147557] - mei: bus: export common mkhi definitions into a separate header (Jocelyn Falempe) [2147557] - mei: extend timeouts on slow devices (Jocelyn Falempe) [2147557] - mei: gsc: wait for reset thread on stop (Jocelyn Falempe) [2147557] - mei: gsc: use polling instead of interrupts (Jocelyn Falempe) [2147557] - mei: add slow_firmware flag to the mei auxiliary device (Jocelyn Falempe) [2147557] - mei: add kdoc for struct mei_aux_device (Jocelyn Falempe) [2147557] - mei: me: fix clang -Wformat warning (Jocelyn Falempe) [2147557] - mei: me: add raptor lake point S DID (Jocelyn Falempe) [2147557] - mei: hbm: drop capability response on early shutdown (Jocelyn Falempe) [2147557] - mei: me: set internal pg flag to off on hardware reset (Jocelyn Falempe) [2147557] - misc/mei: Add NULL check to component match callback functions (Jocelyn Falempe) [2147557] - drm/display: Move HDCP helpers into display-helper module (Jocelyn Falempe) [2147557] - mei: gsc: retrieve the firmware version (Jocelyn Falempe) [2147557] - mei: gsc: add runtime pm handlers (Jocelyn Falempe) [2147557] - mei: gsc: setup char driver alive in spite of firmware handshake failure (Jocelyn Falempe) [2147557] - mei: add support for graphics system controller (gsc) devices (Jocelyn Falempe) [2147557] - mei: avoid iterator usage outside of list_for_each_entry (Jocelyn Falempe) [2147557] - mei: do not overwrite state on hw start (Jocelyn Falempe) [2147557] - mei: me: fix reset policy on read error in interrupt (Jocelyn Falempe) [2147557] - mei: me: avoid link reset on shutdown (Jocelyn Falempe) [2147557] - mei: me: disable driver on the ign firmware (Jocelyn Falempe) [2147557] - mei: me: Use dma_set_mask_and_coherent() and simplify code (Jocelyn Falempe) [2147557] - mei: hbm: fix client dma reply status (Jocelyn Falempe) [2147557] - mei: cleanup status before client dma setup call (Jocelyn Falempe) [2147557] - mei: add POWERING_DOWN into device state print (Jocelyn Falempe) [2147557] - mei: Remove some dead code (Jocelyn Falempe) [2147557] - mei: bus: add client dma interface (Jocelyn Falempe) [2147557] - mei: hbm: drop hbm responses on early shutdown (Jocelyn Falempe) [2147557] - mei: me: add Ice Lake-N device id. (Jocelyn Falempe) [2147557] - mei: pxp: export pavp client to me client bus (Jocelyn Falempe) [2147557] - mei: Remove usage of the deprecated "pci-dma-compat.h" API (Jocelyn Falempe) [2147557] - mei: constify passed buffers and structures (Jocelyn Falempe) [2147557] - mei: revamp mei extension header structure layout. (Jocelyn Falempe) [2147557] - mei: fix kdoc in the driver (Jocelyn Falempe) [2147557] - mei: hdcp: SPDX tag should be the first line (Jocelyn Falempe) [2147557] - mei: request autosuspend after sending rx flow control (Jocelyn Falempe) [2147557] - mei: Drop unnecessary NULL check after container_of (Jocelyn Falempe) [2147557] - mei: me: add Alder Lake P device id. (Jocelyn Falempe) [2147557] - mei: allow map and unmap of client dma buffer only for disconnected client (Jocelyn Falempe) [2147557] - mei: use sysfs_emit() in tx_queue_limit_show sysfs (Jocelyn Falempe) [2147557] - mei: bus: block send with vtag on non-conformat FW (Jocelyn Falempe) [2147557] - mei: bus: change remove callback to return void (Jocelyn Falempe) [2147557] - mei: bus: simplify mei_cl_device_remove() (Jocelyn Falempe) [2147557] - mei: implement client dma setup. (Jocelyn Falempe) [2147557] - mei: hbm: add client dma hbm messages (Jocelyn Falempe) [2147557] - mei: add support for client dma capability (Jocelyn Falempe) [2147557] - mei: allow clients on bus to communicate in remove callback (Jocelyn Falempe) [2147557] - mei: me: add adler lake point LP DID (Jocelyn Falempe) [2147557] - mei: hbm: drop hbm responses on shutdown (Jocelyn Falempe) [2147557] - mei: hbm: call mei_set_devstate() on hbm stop response (Jocelyn Falempe) [2147557] - mei: document that mei_msg_hdr_init returns ERR_PTR (Jocelyn Falempe) [2147557] - mei: fix transfer over dma with extended header (Jocelyn Falempe) [2147557] - misc/mei/hdcp: Fix AUTH_STREAM_REQ cmd buffer len (Jocelyn Falempe) [2147557] - mei: bus: enable pavp device. (Jocelyn Falempe) [2147557] - mei: bus: add vtag support (Jocelyn Falempe) [2147557] - Revert "mei: virtio: virtualization frontend driver" (Jocelyn Falempe) [2147557] - mei: bus: fix a kernel-doc markup (Jocelyn Falempe) [2147557] - mei: protect mei_cl_mtu from null dereference (Jocelyn Falempe) [2147557] - mei: bus: deinitialize callback functions on init failure (Jocelyn Falempe) [2147557] - mei: bus: do not start a read for disconnected clients (Jocelyn Falempe) [2147557] - misc: mei: remove unneeded break (Jocelyn Falempe) [2147557] - mei: hw: Replace zero-length array with flexible-array member (Jocelyn Falempe) [2147557] - mei: virtio: virtualization frontend driver (Jocelyn Falempe) [2147557] - mei: add connect with vtag ioctl (Jocelyn Falempe) [2147557] - mei: bus: unconditionally enable clients with vtag support (Jocelyn Falempe) [2147557] - mei: bus: use zero vtag for bus clients. (Jocelyn Falempe) [2147557] - mei: handle tx queue flushing for vtag connections (Jocelyn Falempe) [2147557] - mei: add a vtag map for each client (Jocelyn Falempe) [2147557] - mei: add a spin lock to protect rd_completed queue (Jocelyn Falempe) [2147557] - mei: bump hbm version to 2.2 (Jocelyn Falempe) [2147557] - mei: add support for mei extended header. (Jocelyn Falempe) [2147557] - mei: add vtag support bit in client properties (Jocelyn Falempe) [2147557] - mei: restrict vtag support to hbm version 2.2 (Jocelyn Falempe) [2147557] - mei: hbm: add capabilities message (Jocelyn Falempe) [2147557] - Revert "scsi: iscsi: ql4xxx: Use per-session workqueue for unbinding" (Chris Leech) [2122624] - Revert "scsi: iscsi: Use the session workqueue for recovery" (Chris Leech) [2122624] - l2tp: Don't sleep and disable BH under writer-side sk_callback_lock (Guillaume Nault) [2145235] {CVE-2022-4129} - l2tp: Serialize access to sk_user_data with sk_callback_lock (Guillaume Nault) [2145235] {CVE-2022-4129} - net: fix a concurrency bug in l2tp_tunnel_register() (Guillaume Nault) [2145235] {CVE-2022-4129} - net: tap: fix general protection fault when freeing an skb when the ring is full (Antoine Tenart) [2152802] - platform/x86/intel/pmt: Sapphire Rapids PMT errata fix (Prarit Bhargava) [2144689] - RDMA/core: Fix null-ptr-deref in ib_core_cleanup() (Kamal Heib) [2120677] - RDMA/rxe: Fix mr leak in RESPST_ERR_RNR (Kamal Heib) [2120677] - IB/hfi1: Correctly move list in sc_disable() (Kamal Heib) [2120677] - RDMA/cma: Use output interface for net_dev check (Kamal Heib) [2120677] - RDMA/usnic: fix set-but-not-unused variable 'flags' warning (Kamal Heib) [2120677] - IB/rdmavt: Add __init/__exit annotations to module init/exit funcs (Kamal Heib) [2120677] - RDMA/rxe: Fix resize_finish() in rxe_queue.c (Kamal Heib) [2120677] - IB: Set IOVA/LENGTH on IB_MR in core/uverbs layers (Kamal Heib) [2120677] - RDMA/cm: Use SLID in the work completion as the DLID in responder side (Kamal Heib) [2120677] - RDMA/siw: Fix QP destroy to wait for all references dropped. (Kamal Heib) [2120677] - RDMA/srp: Fix srp_abort() (Kamal Heib) [2120677] - RDMA/irdma: Validate udata inlen and outlen (Kamal Heib) [2120677] - RDMA/irdma: Align AE id codes to correct flush code and event (Kamal Heib) [2120677] - RDMA/rxe: Fix the error caused by qp->sk (Kamal Heib) [2120677] - RDMA/rxe: Fix "kernel NULL pointer dereference" error (Kamal Heib) [2120677] - RDMA/rxe: Remove an unused member from struct rxe_mr (Kamal Heib) [2120677] - x86/fpu: Fix copy_xstate_to_uabi() to copy init states correctly (Dean Nelson) [2122850] - x86/fpu: Exclude dynamic states from init_fpstate (Dean Nelson) [2122850] - x86/fpu: Fix the init_fpstate size check with the actual size (Dean Nelson) [2122850] - x86/fpu: Configure init_fpstate attributes orderly (Dean Nelson) [2122850] - x86/fpu/xstate: Fix the ARCH_REQ_XCOMP_PERM implementation (Dean Nelson) [2122850] - ceph: rely on vfs for setgid stripping (Andrey Albershteyn) [2128904] - fs: move S_ISGID stripping into the vfs_*() helpers (Andrey Albershteyn) [2128904] - fs: Add missing umask strip in vfs_tmpfile (Andrey Albershteyn) [2128904] - fs: add mode_strip_sgid() helper (Andrey Albershteyn) [2128904]- x86/insn: Add AMX instructions to the x86 instruction decoder (Prarit Bhargava) [2117765] - intel_idle: Add a new flag to initialize the AMX state (Prarit Bhargava) [2117765] - x86/fpu: Add a helper to prepare AMX state for low-power CPU idle (Prarit Bhargava) [2117765] - intel_idle: make SPR C1 and C1E be independent (Prarit Bhargava) [2117765] - rpmspec: drop traceevent files instead of just excluding them from files list (Michael Petlan) [2155509] - powerpc/bpf/64: Add instructions for atomic_[cmp]xchg (Mamatha Inamdar) [2113254] - powerpc/bpf/64: add support for atomic fetch operations (Mamatha Inamdar) [2113254] - powerpc/bpf/64: add support for BPF_ATOMIC bitwise operations (Mamatha Inamdar) [2113254] - powerpc/bpf: Simplify bpf_to_ppc() and adopt it for powerpc64 (Mamatha Inamdar) [2113254] - powerpc64/bpf: Store temp registers' bpf to ppc mapping (Mamatha Inamdar) [2113254] - powerpc/bpf: Use _Rn macros for GPRs (Mamatha Inamdar) [2113254] - powerpc/bpf: Move bpf_jit64.h into bpf_jit_comp64.c (Mamatha Inamdar) [2113254] - powerpc/bpf: Cleanup bpf_jit.h (Mamatha Inamdar) [2113254] - powerpc64/bpf: Get rid of PPC_BPF_[LL|STL|STLU] macros (Mamatha Inamdar) [2113254] - powerpc64/bpf: Convert some of the uses of PPC_BPF_[LL|STL] to PPC_BPF_[LD|STD] (Mamatha Inamdar) [2113254] - powerpc64/bpf: Optimize instruction sequence used for function calls (Mamatha Inamdar) [2113254] - powerpc64/bpf elfv1: Do not load TOC before calling functions (Mamatha Inamdar) [2113254] - powerpc64/bpf elfv2: Setup kernel TOC in r2 on entry (Mamatha Inamdar) [2113254] - powerpc64: Set PPC64_ELF_ABI_v[1|2] macros to 1 (Mamatha Inamdar) [2113254] - powerpc64/bpf: Use r12 for constant blinding (Mamatha Inamdar) [2113254] - powerpc64/bpf: Do not save/restore LR on each call to bpf_stf_barrier() (Mamatha Inamdar) [2113254] - powerpc/bpf: Handle large branch ranges with BPF_EXIT (Mamatha Inamdar) [2113254] - powerpc/bpf: Emit a single branch instruction for known short branch ranges (Mamatha Inamdar) [2113254] - powerpc/bpf: Skip branch range validation during first pass (Mamatha Inamdar) [2113254] - powerpc64/bpf: Limit 'ldbrx' to processors compliant with ISA v2.06 (Mamatha Inamdar) [2113254] - tools/bpf: Rename 'struct event' to avoid naming conflict (Mamatha Inamdar) [2113254] - bpf: Guard against accessing NULL pt_regs in bpf_get_task_stack() (Mamatha Inamdar) [2113254] - bpf ppc64: Access only if addr is kernel address (Mamatha Inamdar) [2113254] - bpf ppc64: Add BPF_PROBE_MEM support for JIT (Mamatha Inamdar) [2113254] - powerpc/ppc-opcode: introduce PPC_RAW_BRANCH() macro (Mamatha Inamdar) [2113254] - bpf powerpc: refactor JIT compiler code (Mamatha Inamdar) [2113254] - bpf powerpc: Remove extra_pass from bpf_jit_build_body() (Mamatha Inamdar) [2113254] - bpf powerpc: Remove unused SEEN_STACK (Mamatha Inamdar) [2113254] - powerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC (Mamatha Inamdar) [2113254] - powerpc/security: Add a helper to query stf_barrier type (Mamatha Inamdar) [2113254] - powerpc/bpf: Fix BPF_SUB when imm == 0x80000000 (Mamatha Inamdar) [2113254] - powerpc/bpf: Fix BPF_MOD when imm == 1 (Mamatha Inamdar) [2113254] - powerpc/bpf: Validate branch ranges (Mamatha Inamdar) [2113254] - powerpc/lib: Add helper to check if offset is within conditional branch range (Mamatha Inamdar) [2113254] - powerpc/lib/feature-fixups: Use PPC_RAW_xxx() macros (Mamatha Inamdar) [2113254] - powerpc: Move PPC_HA() PPC_HI() and PPC_LO() to ppc-opcode.h (Mamatha Inamdar) [2113254] - swapfile: fix soft lockup in scan_swap_map_slots (Waiman Long) [2155734] - mm/swap: add helper swap_offset_available() (Waiman Long) [2155734] - pNFS/filelayout: Fix coalescing test for single DS (Benjamin Coddington) [2158520] - arm64: kdump: Support crashkernel=X fall back to reserve region above DMA zones (Pingfan Liu) [1940674] - arm64: kdump: Provide default size when crashkernel=Y,low is not specified (Pingfan Liu) [1940674] - media: dmxdev: fix UAF when dvb_register_device() fails (Dean Nelson) [2123301] {CVE-2022-41218} - crypto: s390/aes - drop redundant xts key check (Vladis Dronov) [2158893] - crypto: xts - implement xts_verify_key() with xts_check_key() (Vladis Dronov) [2158893] - audit: cache ctx->major in audit_filter_syscall() (Richard Guy Briggs) [2123854] - audit: free audit_proctitle only on task exit (Richard Guy Briggs) [2123854] - audit: explicitly check audit_context->context enum value (Richard Guy Briggs) [2123854] - audit: move audit_return_fixup before the filters (Richard Guy Briggs) [2123854] - audit: fix potential double free on error path from fsnotify_add_inode_mark (Richard Guy Briggs) [2123854] - i2c: ismt: Fix an out-of-bounds bug in ismt_access() (Prarit Bhargava) [2119066] {CVE-2022-2873} - net: dropreason: add SKB_DROP_REASON_FRAG_TOO_FAR (Antoine Tenart) [2155186] - net: dropreason: add SKB_DROP_REASON_FRAG_REASM_TIMEOUT (Antoine Tenart) [2155186] - net: dropreason: add SKB_DROP_REASON_DUP_FRAG (Antoine Tenart) [2155186] - net: dropreason: propagate drop_reason to skb_release_data() (Antoine Tenart) [2155186] - net: dropreason: add SKB_CONSUMED reason (Antoine Tenart) [2155186] - ipv4: remove redundant null pointer check before kfree_skb (Antoine Tenart) [2155186]- turbostat: Bring code up-to-date with upstream (Prarit Bhargava) [2117769] - tools/power turbostat: Enable accumulate RAPL display (Prarit Bhargava) [2117769] - tools/power turbostat: version 2022.07.28 (Prarit Bhargava) [2117769] - tools/power turbostat: do not decode ACC for ICX and SPR (Prarit Bhargava) [2117769] - tools/power turbostat: fix SPR PC6 limits (Prarit Bhargava) [2117769] - tools/power turbostat: cleanup 'automatic_cstate_conversion_probe()' (Prarit Bhargava) [2117769] - tools/power turbostat: separate SPR from ICX (Prarit Bhargava) [2117769] - tools/power turbosstat: fix comment (Prarit Bhargava) [2117769] - tools/power turbostat: Support RAPTORLAKE P (Prarit Bhargava) [2117769] - tools/power turbostat: add support for ALDERLAKE_N (Prarit Bhargava) [2117769] - tools/power turbostat: dump secondary Turbo-Ratio-Limit (Prarit Bhargava) [2117769] - tools/power turbostat: simplify dump_turbo_ratio_limits() (Prarit Bhargava) [2117769] - tools/power turbostat: dump CPUID.7.EDX.Hybrid (Prarit Bhargava) [2117769] - tools/power turbostat: update turbostat.8 (Prarit Bhargava) [2117769] - tools/power turbostat: Show uncore frequency (Prarit Bhargava) [2117769] - tools/power turbostat: Fix file pointer leak (Prarit Bhargava) [2117769] - tools/power turbostat: replace strncmp with single character compare (Prarit Bhargava) [2117769] - tools/power turbostat: print the kernel boot commandline (Prarit Bhargava) [2117769] - tools/power turbostat: Introduce support for RaptorLake (Prarit Bhargava) [2117769] - tools/power turbostat: version 2022.04.16 (Prarit Bhargava) [2117769] - tools/power turbostat: No build warnings with -Wextra (Prarit Bhargava) [2117769] - tools/power turbostat: be more useful as non-root (Prarit Bhargava) [2117769] - tools/power turbostat: fix ICX DRAM power numbers (Prarit Bhargava) [2117769] - tools/power turbostat: Support thermal throttle count print (Prarit Bhargava) [2117769] - tools/power turbostat: Allow printing header every N iterations (Prarit Bhargava) [2117769] - tools/power turbostat: Allow -e for all names. (Prarit Bhargava) [2117769] - tools/power turbostat: print power values upto three decimal (Prarit Bhargava) [2117769] - tools/power turbostat: Add Power Limit4 support (Prarit Bhargava) [2117769] - tools/power turbostat: fix dump for AMD cpus (Prarit Bhargava) [2117769] - tools/power turbostat: tweak --show and --hide capability (Prarit Bhargava) [2117769] - NFSv4: Retry LOCK on OLD_STATEID during delegation return (Benjamin Coddington) [2137826] - KVM: s390: pv: don't allow userspace to set the clock under PV (Tobias Huschle) [2154284] - net: mana: Fix race on per-CQ variable napi work_done (Emanuele Giuseppe Esposito) [2151722] - powercap: intel_rapl: support new layout of Psys PowerLimit Register on SPR (Prarit Bhargava) [2106143] - ceph: choose auth MDS for getxattr with the Xs caps (Milind Changire) [2126703] - ceph: try to choose the auth MDS if possible for getattr (Milind Changire) [2126703] - ceph: convert to generic_file_llseek (Milind Changire) [2126707] - ceph: don't leak snap_rwsem in handle_cap_grant (Milind Changire) [2126706] - ceph: prevent a client from exceeding the MDS maximum xattr size (Milind Changire) [2126704] - ceph: add session already open notify support (Milind Changire) [2126701] - ceph: use correct index when encoding client supported features (Milind Changire) [2143875] - ceph: switch TASK_INTERRUPTIBLE to TASK_KILLABLE (Milind Changire) [2126700] - ceph: allow ceph.dir.rctime xattr to be updatable (Milind Changire) [2126699] - ipv6: Use ipv6_only_sock() helper in condition. (Izabela Bakollari) [2144855] - ipv6: Remove __ipv6_only_sock(). (Izabela Bakollari) [2144855] - redhat/configs: Switch CONFIG_X86_AMD_PSTATE to built-in (Prarit Bhargava) [2150424] - Documentation: add amd-pstate kernel command line options (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: add amd-pstate driver parameter for mode selection (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: change amd-pstate driver to be built-in type (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: cpufreq: amd-pstate: reset MSR_AMD_PERF_CTL register at init (Prarit Bhargava) [2150424] - scsi: target: iscsi: Fix a race condition between login_work and the login thread (Maurizio Lombardi) [2153832] - virtio_console: Introduce an ID allocator for virtual console numbers (Cédric Le Goater) [2072437] - blk-throttle: fix that io throttle can only work for single bio (Ming Lei) [2088193] - scsi: zfcp: Fix double free of FSF request when qdio send fails (Tobias Huschle) [2155157] - scsi: qla2xxx: Fix crash when I/O abort times out (Nilesh Javali) [2115820] - perf trace: Fix SIGSEGV when processing syscall args (Michael Petlan) [2145089] - config: mhi: set CONFIG_MHI_BUS_EP to disabled (Íñigo Huguet) [2136123] - config: rtw89: set CONFIG_RTW89_8852C to disabled (Íñigo Huguet) [2136123] - wifi: ath11k: avoid deadlock during regulatory update in ath11k_regd_update() (Íñigo Huguet) [2136123 2139481] - wifi: mac80211: mlme: Fix double unlock on assoc success handling (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: Fix missing unlock on beacon RX (Íñigo Huguet) [2136123] - wifi: mac80211: fix memory corruption in minstrel_ht_update_rates() (Íñigo Huguet) [2136123] - wifi: mac80211: fix regression with non-QoS drivers (Íñigo Huguet) [2136123] - wifi: mac80211: ensure vif queues are operational after start (Íñigo Huguet) [2136123] - wifi: mac80211: don't start TX with fq->lock to fix deadlock (Íñigo Huguet) [2136123] - wifi: cfg80211: fix MCS divisor value (Íñigo Huguet) [2136123] - wifi: mt76: fix 5 GHz connection regression on mt76x0/mt76x2 (Íñigo Huguet) [2136123] - wifi: mt76: fix reading current per-tid starting sequence number for aggregation (Íñigo Huguet) [2136123] - wifi: iwlwifi: Mark IWLMEI as broken (Íñigo Huguet) [2136123] - wifi: iwlwifi: don't spam logs with NSS>2 messages (Íñigo Huguet) [2136123] - wifi: use struct_group to copy addresses (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: check length for virtio packets (Íñigo Huguet) [2136123] - wifi: mac80211: fix locking in auth/assoc timeout (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: release deflink channel in error case (Íñigo Huguet) [2136123] - wifi: mac80211: fix link warning in RX agg timer expiry (Íñigo Huguet) [2136123] - bus: mhi: host: Fix up null pointer access in mhi_irq_handler (Íñigo Huguet) [2136123] - net: Use u64_stats_fetch_begin_irq() for stats fetch. (Íñigo Huguet) [2136123] - wifi: mt76: mt7921e: fix crash in chip reset fail (Íñigo Huguet) [2136123] - wifi: mac80211: potential NULL dereference in ieee80211_tx_control_port() (Íñigo Huguet) [2136123] - wifi: cfg80211: debugfs: fix return type in ht40allow_map_read() (Íñigo Huguet) [2136123] - wifi: mac80211: Don't finalize CSA in IBSS mode if state is disconnected (Íñigo Huguet) [2136123] - wifi: mac80211: fix possible leak in ieee80211_tx_control_port() (Íñigo Huguet) [2136123] - wifi: mac80211: always free sta in __sta_info_alloc in case of error (Íñigo Huguet) [2136123] - wifi: mac80211: Fix UAF in ieee80211_scan_rx() (Íñigo Huguet) [2136123] - net: qrtr: start MHI channel after endpoit creation (Íñigo Huguet) [2136123] - wifi: cfg80211: Fix validating BSS pointers in __cfg80211_connect_result (Íñigo Huguet) [2136123] - wifi: rtw88: check the return value of alloc_workqueue() (Íñigo Huguet) [2136123] - wifi: rtw89: 8852a: adjust IMR for SER L1 (Íñigo Huguet) [2136123] - wifi: rtw89: 8852a: update RF radio A/B R56 (Íñigo Huguet) [2136123] - wifi: brcmfmac: prevent double-free on hardware-reset (Íñigo Huguet) [2136123] - wifi: brcmfmac: support brcm,ccode-map-trivial DT property (Íñigo Huguet) [2136123] - wifi: brcmfmac: Replace default (not configured) MAC with a random MAC (Íñigo Huguet) [2136123] - wifi: brcmfmac: Add brcmf_c_set_cur_etheraddr() helper (Íñigo Huguet) [2136123] - wifi: brcmfmac: Remove #ifdef guards for PM related functions (Íñigo Huguet) [2136123] - wifi: brcmfmac: use strreplace() in brcmf_of_probe() (Íñigo Huguet) [2136123] - wifi: rtl8xxxu: Fix the error handling of the probe function (Íñigo Huguet) [2136123] - wifi: mwifiex: clean up one inconsistent indenting (Íñigo Huguet) [2136123] - wifi: rtlwifi: Remove duplicate word and Fix typo (Íñigo Huguet) [2136123] - wifi: mwifiex: Fix comment typo (Íñigo Huguet) [2136123] - wifi: iwlwifi: mvm: fix clang -Wformat warnings (Íñigo Huguet) [2136123] - Revert "ath11k: add support for hardware rfkill for QCA6390" (Íñigo Huguet) [2136123] - wifi: ath11k: Fix register write failure on QCN9074 (Íñigo Huguet) [2136123] - wifi: mac80211: fix link data leak (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix disassoc with MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add macros to loop over active links (Íñigo Huguet) [2136123] - wifi: mac80211: remove erroneous sband/link validation (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: transmit assoc frame with address translation (Íñigo Huguet) [2136123] - wifi: mac80211: verify link addresses are different (Íñigo Huguet) [2136123] - wifi: mac80211: rx: track link in RX data (Íñigo Huguet) [2136123] - wifi: mac80211: optionally implement MLO multicast TX (Íñigo Huguet) [2136123] - wifi: mac80211: expand ieee80211_mgmt_tx() for MLO (Íñigo Huguet) [2136123] - wifi: nl80211: add MLO link ID to the NL80211_CMD_FRAME TX API (Íñigo Huguet) [2136123] - wifi: mac80211: report link ID to cfg80211 on mgmt RX (Íñigo Huguet) [2136123] - wifi: cfg80211: report link ID in NL80211_CMD_FRAME (Íñigo Huguet) [2136123] - wifi: mac80211: add hardware timestamps for RX and TX (Íñigo Huguet) [2136123] - wifi: cfg80211: add hardware timestamps to frame RX info (Íñigo Huguet) [2136123] - wifi: cfg80211/nl80211: move rx management data into a struct (Íñigo Huguet) [2136123] - wifi: cfg80211: add a function for reporting TX status with hardware timestamps (Íñigo Huguet) [2136123] - wifi: nl80211: add RX and TX timestamp attributes (Íñigo Huguet) [2136123] - nl80211: document uapi for CMD_FRAME_WAIT_CANCEL (Íñigo Huguet) [2136123] - wifi: ieee80211: add helper functions for detecting TM/FTM frames (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: handle links for wmediumd/virtio (Íñigo Huguet) [2136123] - wifi: mac80211: sta_info: fix link_sta insertion (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix link_sta setup (Íñigo Huguet) [2136123] - wifi: nl80211/mac80211: clarify link ID in control port TX (Íñigo Huguet) [2136123] - wifi: mac80211: return error from control port TX for drops (Íñigo Huguet) [2136123] - wifi: nl80211: require MLD address on link STA add/modify (Íñigo Huguet) [2136123] - wifi: mac80211: more station handling sanity checks (Íñigo Huguet) [2136123] - wifi: mac80211: fix link sta hash table handling (Íñigo Huguet) [2136123] - wifi: mac80211: validate link address doesn't change (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: set sta.mlo to mlo state (Íñigo Huguet) [2136123] - wifi: mac80211: fast-xmit: handle non-MLO clients (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix address translation for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: fix RX MLD address translation (Íñigo Huguet) [2136123] - wifi: mac80211: fix NULL pointer deref with non-MLD STA (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix override calculation (Íñigo Huguet) [2136123] - wifi: mac80211: tx: use AP address in some places for MLO (Íñigo Huguet) [2136123] - net: add missing includes and forward declarations under net/ (Íñigo Huguet) [2136123] - wifi: rtl8192se: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: rtlwifi: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: rt2x00: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: brcmsmac: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: brcmfmac: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: mac80211: do not abuse fq.lock in ieee80211_do_stop() (Íñigo Huguet) [2136123] - wifi: mt7601u: fix clang -Wformat warning (Íñigo Huguet) [2136123] - wifi: mt7601u: eeprom: fix clang -Wformat warning (Íñigo Huguet) [2136123] - wifi: ath: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: ath11k: mac: fix long line (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: set sta.mlo correctly (Íñigo Huguet) [2136123] - wifi: mac80211: remove stray printk (Íñigo Huguet) [2136123] - wifi: mac80211: support MLO authentication/association with one link (Íñigo Huguet) [2136123] - wifi: mac80211: add API to parse multi-link element (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix TX link selection (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: use MLO link ID for TX (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: do rc update per link (Íñigo Huguet) [2136123] - wifi: mac80211: do link->MLD address translation on RX (Íñigo Huguet) [2136123] - wifi: mac80211: select link when transmitting to non-MLO stations (Íñigo Huguet) [2136123] - wifi: mac80211: fix up link station creation/insertion (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: implement sta_state for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: limit A-MSDU subframes for client too (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor ieee80211_set_associated() (Íñigo Huguet) [2136123] - wifi: cfg80211: add cfg80211_get_iftype_ext_capa() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: look up beacon elems only if needed (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc link setup (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: remove address arg to ieee80211_mark_sta_auth() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc success handling (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor ieee80211_prep_channel() a bit (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc req element building (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: switch some things back to deflink (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: change flags in ieee80211_determine_chantype() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: shift some code around (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor link station setup (Íñigo Huguet) [2136123] - wifi: mac80211: move IEEE80211_SDATA_OPERATING_GMODE to link (Íñigo Huguet) [2136123] - wifi: mac80211: make ieee80211_check_rate_mask() link-aware (Íñigo Huguet) [2136123] - wifi: mac80211: add multi-link element to AUTH frames (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: clean up supported channels element code (Íñigo Huguet) [2136123] - wifi: mac80211: release channel context on link stop (Íñigo Huguet) [2136123] - wifi: mac80211: prohibit DEAUTH_NEED_MGD_TX_PREP in MLO (Íñigo Huguet) [2136123] - wifi: nl80211: fix some attribute policy entries (Íñigo Huguet) [2136123] - wifi: nl80211: reject fragmented and non-inheritance elements (Íñigo Huguet) [2136123] - wifi: nl80211: reject link specific elements on assoc link (Íñigo Huguet) [2136123] - wifi: cfg80211: set country_elem to NULL (Íñigo Huguet) [2136123] - wifi: mac80211: remove link_id parameter from link_info_changed() (Íñigo Huguet) [2136123] - wifi: mac80211: replace link_id with link_conf in switch/(un)assign_vif_chanctx() (Íñigo Huguet) [2136123] - wifi: nl80211: advertise MLO support (Íñigo Huguet) [2136123] - wifi: mac80211: Support multi link in ieee80211_recalc_min_chandef() (Íñigo Huguet) [2136123] - wifi: mac80211: don't check carrier in chanctx code (Íñigo Huguet) [2136123] - wifi: nl80211: allow link ID in set_wiphy with frequency (Íñigo Huguet) [2136123] - wifi: mac80211: Allow EAPOL tx from specific link (Íñigo Huguet) [2136123] - wifi: mac80211: Allow EAPOL frames from link addresses (Íñigo Huguet) [2136123] - wifi: cfg80211/mac80211: Support control port TX from specific link (Íñigo Huguet) [2136123] - wifi: nl80211: Support MLD parameters in nl80211_set_station() (Íñigo Huguet) [2136123] - wifi: nl80211: check MLO support in authenticate (Íñigo Huguet) [2136123] - wifi: mac80211: add a helper to fragment an element (Íñigo Huguet) [2136123] - wifi: mac80211: skip rate statistics for MLD STAs (Íñigo Huguet) [2136123] - wifi: nl80211: set BSS to NULL if IS_ERR() (Íñigo Huguet) [2136123] - wifi: nl80211: add EML/MLD capabilities to per-iftype capabilities (Íñigo Huguet) [2136123] - wifi: nl80211: better validate link ID for stations (Íñigo Huguet) [2136123] - wifi: mac80211: fix link manipulation (Íñigo Huguet) [2136123] - wifi: mac80211: tighten locking check (Íñigo Huguet) [2136123] - wifi: cfg80211: clean up links appropriately (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: simplify adding ht/vht/he/eht elements (Íñigo Huguet) [2136123] - wifi: mac80211: refactor adding custom elements (Íñigo Huguet) [2136123] - wifi: mac80211: refactor adding rates to assoc request (Íñigo Huguet) [2136123] - wifi: mac80211: use only channel width in ieee80211_parse_bitrates() (Íñigo Huguet) [2136123] - wifi: cfg80211: add ieee80211_chanwidth_rate_flags() (Íñigo Huguet) [2136123] - wifi: mac80211: remove redundant condition (Íñigo Huguet) [2136123] - wifi: mac80211: don't set link address for station (Íñigo Huguet) [2136123] - wifi: mac80211: fix multi-BSSID element parsing (Íñigo Huguet) [2136123] - wifi: mac80211: move tdls_chan_switch_prohibited to link data (Íñigo Huguet) [2136123] - wifi: mac80211: don't re-parse elems in ieee80211_assoc_success() (Íñigo Huguet) [2136123] - wifi: mac80211: replace link_id with link_conf in start/stop_ap() (Íñigo Huguet) [2136123] - wifi: mac80211: refactor elements parsing with parameter struct (Íñigo Huguet) [2136123] - wifi: cfg80211: extend cfg80211_rx_assoc_resp() for MLO (Íñigo Huguet) [2136123] - wifi: cfg80211: put cfg80211_rx_assoc_resp() arguments into a struct (Íñigo Huguet) [2136123] - wifi: cfg80211: adjust assoc comeback for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: unify assoc data event sending (Íñigo Huguet) [2136123] - wifi: cfg80211: prepare association failure APIs for MLO (Íñigo Huguet) [2136123] - wifi: cfg80211: remove BSS pointer from cfg80211_disassoc_request (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: use correct link_sta (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: remove sta argument from ieee80211_config_bw (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: use ieee80211_get_link_sband() (Íñigo Huguet) [2136123] - wifi: mac80211: split IEEE80211_STA_DISABLE_WMM to link data (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: first adjustments for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: do IEEE80211_STA_RESET_SIGNAL_AVE per link (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: track AP (MLD) address separately (Íñigo Huguet) [2136123] - wifi: mac80211: remove unused bssid variable (Íñigo Huguet) [2136123] - wifi: mac80211: change QoS settings API to take link into account (Íñigo Huguet) [2136123] - wifi: mac80211: expect powersave handling in driver for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: move ps setting to vif config (Íñigo Huguet) [2136123] - wifi: mac80211: provide link ID in link_conf (Íñigo Huguet) [2136123] - wifi: mac80211: set up/tear down client vif links properly (Íñigo Huguet) [2136123] - wifi: mac80211: move ieee80211_request_smps_mgd_work (Íñigo Huguet) [2136123] - wifi: nl80211: acquire wdev mutex for dump_survey (Íñigo Huguet) [2136123] - wifi: mac80211: fix key lookup (Íñigo Huguet) [2136123] - wifi: mac80211: separate out connection downgrade flags (Íñigo Huguet) [2136123] - wifi: mac80211: Align with Draft P802.11be_D2.0 (Íñigo Huguet) [2136123] - wifi: mac80211: Align with Draft P802.11be_D1.5 (Íñigo Huguet) [2136123] - wifi: mac80211: skip powersave recalc if driver SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2136123] - wifi: mac80211: debug: omit link if non-MLO connection (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Ack link addressed frames (Íñigo Huguet) [2136123] - wifi: cfg80211: drop BSS elements from assoc trace for now (Íñigo Huguet) [2136123] - wifi: cfg80211: make cfg80211_auth_request::key_idx signed (Íñigo Huguet) [2136123] - wifi: nl80211: enable setting the link address at new station (Íñigo Huguet) [2136123] - wifi: mac80211: RCU-ify link/link_conf pointers (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for station APIs (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for channel switch APIs (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex in add/mod/del link station (Íñigo Huguet) [2136123] - wifi: mac80211: implement callbacks for _link_station (Íñigo Huguet) [2136123] - wifi: cfg80211/mac80211: separate link params from station params (Íñigo Huguet) [2136123] - wifi: cfg80211: add API to add/modify/remove a link station (Íñigo Huguet) [2136123] - wifi: mac80211: add an ieee80211_get_link_sband (Íñigo Huguet) [2136123] - wifi: mac80211: Remove AP SMPS leftovers (Íñigo Huguet) [2136123] - wifi: cfg80211: Allow MLO TX with link source address (Íñigo Huguet) [2136123] - wifi: mac80211: Consider MLO links in offchannel logic (Íñigo Huguet) [2136123] - wifi: mac80211: rx: accept link-addressed frames (Íñigo Huguet) [2136123] - wifi: mac80211: consistently use sdata_dereference() (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Support link channel matching on rx (Íñigo Huguet) [2136123] - wifi: mac80211: fix mesh airtime link metric estimating (Íñigo Huguet) [2136123] - wifi: mac80211: make 4addr null frames using min_rate for WDS (Íñigo Huguet) [2136123] - wifi: cfg80211: use strscpy to replace strlcpy (Íñigo Huguet) [2136123] - wifi: mac80211: exclude multicast packets from AQL pending airtime (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: use 32-bit skb cookie (Íñigo Huguet) [2136123] - mt76: mt7921: Let PCI core handle power state and use pm_sleep_ptr() (Íñigo Huguet) [2136123] - mediatek: mt76: mac80211: Fix missing of_node_put() in mt76_led_init() (Íñigo Huguet) [2136123] - mt76: get rid of mt76_wcid_hw routine (Íñigo Huguet) [2136123] - mt76: convert MT_TX_HW_QUEUE_EXT_PHY to MT_TX_HW_QUEUE_PHY (Íñigo Huguet) [2136123] - mt76: add phy_idx to mt76_wcid (Íñigo Huguet) [2136123] - mt76: introduce phys array in mt76_dev structure (Íñigo Huguet) [2136123] - mt76: add phy_idx in mt76_rx_status (Íñigo Huguet) [2136123] - mt76: introduce MT_RXQ_BAND2 and MT_RXQ_BAND2_WA in mt76_rxq_id (Íñigo Huguet) [2136123] - mt76: add len parameter to __mt76_mcu_msg_alloc signature (Íñigo Huguet) [2136123] - mt76: mt7915 add ht mpdu density (Íñigo Huguet) [2136123] - mt76: mt7921: reduce the mutex lock scope during reset (Íñigo Huguet) [2136123] - mt76: mt7921: reduce log severity levels for informative messages (Íñigo Huguet) [2136123] - mt76: connac: move tx initialization/cleanup in mt76_connac module (Íñigo Huguet) [2136123] - mt76: mt7921: make mt7921_pci_driver static (Íñigo Huguet) [2136123] - mt76: mt7921: enable HW beacon filter in the initialization stage (Íñigo Huguet) [2136123] - mt76: mt7921: enable HW beacon filter not depending on PM flag (Íñigo Huguet) [2136123] - mt76: remove q->qid (Íñigo Huguet) [2136123] - mt76: do not use skb_set_queue_mapping for internal purposes (Íñigo Huguet) [2136123] - mt76: pass original queue id from __mt76_tx_queue_skb to the driver (Íñigo Huguet) [2136123] - mt76: allow receiving frames with invalid CCMP PN via monitor interfaces (Íñigo Huguet) [2136123] - mt76: mt76x02: improve reliability of the beacon hang check (Íñigo Huguet) [2136123] - mt76: mt7615: add sta_rec with EXTRA_INFO_NEW for the first time only (Íñigo Huguet) [2136123] - mt76: mt7915: update the maximum size of beacon offload (Íñigo Huguet) [2136123] - mt76: do not check the ccmp pn for ONLY_MONITOR frame (Íñigo Huguet) [2136123] - mt76: mt7915: add sta_rec with EXTRA_INFO_NEW for the first time only (Íñigo Huguet) [2136123] - mt76: mt7915: update mpdu density in 6g capability (Íñigo Huguet) [2136123] - mt76: mt7915: do not copy ieee80211_ops pointer in mt7915_mmio_probe (Íñigo Huguet) [2136123] - mt76: mt7915: disable UL MU-MIMO for mt7915 (Íñigo Huguet) [2136123] - mt76: move mt76_connac2_mcu_fill_message in mt76_connac module (Íñigo Huguet) [2136123] - mt76: move mcu_txd/mcu_rxd structures in shared code (Íñigo Huguet) [2136123] - mt76: mt7915: rely on mt76_connac_tx_free (Íñigo Huguet) [2136123] - mt76: connac: move mt7615_txp_skb_unmap in common code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_write_hw_txp in shared code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_tx_complete_skb in shared code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_tx_free in shared code (Íñigo Huguet) [2136123] - mt76: move mt7615_txp_ptr in mt76_connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_fw_txp in common module (Íñigo Huguet) [2136123] - mt76: mt7915: get rid of unnecessary new line in mt7915_mac_write_txwi (Íñigo Huguet) [2136123] - mt76: mt7921s: remove unnecessary goto in mt7921s_mcu_drv_pmctrl (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_mac_fill_rx_rate in connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_reverse_frag0_hdr_trans in mt76-connac module (Íñigo Huguet) [2136123] - mt76: connac: move HE radiotap parsing in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: fix command timeout in AP stop period (Íñigo Huguet) [2136123] - mt76: mt7921: not support beacon offload disable command (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_mac_add_txs_skb in connac module (Íñigo Huguet) [2136123] - mt76: connac: move connac2_mac_write_txwi in mt76_connac module (Íñigo Huguet) [2136123] - mt76: connac: move mac connac2 defs in mt76_connac2_mac.h (Íñigo Huguet) [2136123] - mt76: mt7915: rely on mt76_dev in mt7915_mac_write_txwi signature (Íñigo Huguet) [2136123] - mt76: mt7921: rely on mt76_dev in mt7921_mac_write_txwi signature (Íñigo Huguet) [2136123] - mt76: enable the VHT extended NSS BW feature (Íñigo Huguet) [2136123] - mt76: mt7663: rely on mt76_connac2_fw_trailer (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_load_patch in connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_load_ram in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: move fw toggle in mt7921_load_firmware (Íñigo Huguet) [2136123] - mt76: connac: move shared fw structures in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: get rid of mt7921_mcu_exit (Íñigo Huguet) [2136123] - mt76: mt7921: add missing bh-disable around rx napi schedule (Íñigo Huguet) [2136123] - mt76: mt7615: add missing bh-disable around rx napi schedule (Íñigo Huguet) [2136123] - mt76: mt7915: add missing bh-disable around tx napi enable/schedule (Íñigo Huguet) [2136123] - mt76: mt7921: add PATCH_FINISH_REQ cmd response handling (Íñigo Huguet) [2136123] - mt76: add DBDC rxq handlings into mac_reset_work (Íñigo Huguet) [2136123] - mt76: mt7915: add more ethtool stats (Íñigo Huguet) [2136123] - mt76: mt7921: introduce ACPI SAR config in tx power (Íñigo Huguet) [2136123] - mt76: mt7921: introduce ACPI SAR support (Íñigo Huguet) [2136123] - mt76: add 6 GHz band support in mt76_sar_freq_ranges (Íñigo Huguet) [2136123] - mt76: mt7915: fix endian bug in mt7915_rf_regval_set() (Íñigo Huguet) [2136123] - mt76: mt76x02u: fix possible memory leak in __mt76x02u_mcu_send_msg (Íñigo Huguet) [2136123] - mt76: mt7915: fix endianness in mt7915_rf_regval_get (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: add back erroneously removed cast (Íñigo Huguet) [2136123] - wifi: mac80211: fix queue selection for mesh/OCB interfaces (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix race condition in pending packet (Íñigo Huguet) [2136123] - wifi: mac80211: Use the bitmap API to allocate bitmaps (Íñigo Huguet) [2136123] - wifi: mac80211: fix center freq calculation in ieee80211_chandef_downgrade (Íñigo Huguet) [2136123] - wifi: nl80211: fix sending link ID info of associated BSS (Íñigo Huguet) [2136123] - wifi: cfg80211: fix a comment in cfg80211_mlme_mgmt_tx() (Íñigo Huguet) [2136123] - wifi: nl80211: Fix reading NL80211_ATTR_MLO_LINK_ID in nl80211_pre_doit (Íñigo Huguet) [2136123] - bus: mhi: ep: Check dev_set_name() return value (Íñigo Huguet) [2136123] - ath9k: remove unexpected words "the" in comments (Íñigo Huguet) [2136123] - ath11k: Fix typo in comments (Íñigo Huguet) [2136123] - wifi: nl80211: retrieve EHT related elements in AP mode (Íñigo Huguet) [2136123] - wifi: cfg80211: Increase akm_suites array size in cfg80211_crypto_settings (Íñigo Huguet) [2136123] - wifi: cfg80211: remove chandef check in cfg80211_cac_event() (Íñigo Huguet) [2136123] - wifi: nl80211: relax wdev mutex check in wdev_chandef() (Íñigo Huguet) [2136123] - wifi: nl80211: acquire wdev mutex earlier in start_ap (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for tid config (Íñigo Huguet) [2136123] - wifi: cfg80211: handle IBSS in channel switch (Íñigo Huguet) [2136123] - wifi: mac80211: properly skip link info driver update (Íñigo Huguet) [2136123] - wifi: mac80211: only accumulate airtime deficit for active clients (Íñigo Huguet) [2136123] - wifi: mac80211: add debugfs file to display per-phy AQL pending airtime (Íñigo Huguet) [2136123] - wifi: mac80211: add a per-PHY AQL limit to improve fairness (Íñigo Huguet) [2136123] - wifi: mac80211: keep recently active tx queues in scheduling list (Íñigo Huguet) [2136123] - wifi: mac80211: consider aql_tx_pending when checking airtime deficit (Íñigo Huguet) [2136123] - wifi: mac80211: make sta airtime deficit field s32 instead of s64 (Íñigo Huguet) [2136123] - wifi: mac80211: fix a kernel-doc complaint (Íñigo Huguet) [2136123] - wifi: cfg80211: remove redundant documentation (Íñigo Huguet) [2136123] - wifi: mac80211: sta_info: fix a missing kernel-doc struct element (Íñigo Huguet) [2136123] - wifi: mac80211: add a missing comma at kernel-doc markup (Íñigo Huguet) [2136123] - wifi: cfg80211: fix kernel-doc warnings all over the file (Íñigo Huguet) [2136123] - wifi: ieee80211: s1g action frames are not robust (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add another Foxconn T99W175 (Íñigo Huguet) [2136123] - wifi: cfg80211: Allow P2P client interface to indicate port authorization (Íñigo Huguet) [2136123] - wifi: mac80211: do not wake queues on a vif that is being stopped (Íñigo Huguet) [2136123] - wifi: mac80211: check skb_shared in ieee80211_8023_xmit() (Íñigo Huguet) [2136123] - wifi: mac80211: add gfp_t parameter to ieeee80211_obss_color_collision_notify (Íñigo Huguet) [2136123] - bus: mhi: host: Move IRQ allocation to controller registration phase (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add Cinterion MV31-W with new baseline (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add support for Quectel EM120 FCCL modem (Íñigo Huguet) [2136123] - wifi: rtw89: disable invalid phy reports for all ICs (Íñigo Huguet) [2136123] - wifi: rtw89: pci: fix PCI doesn't reclaim TX BD properly (Íñigo Huguet) [2136123] - wifi: rtw89: fix long RX latency in low power mode (Íñigo Huguet) [2136123] - wifi: rtw89: drop invalid TX rate report of legacy rate (Íñigo Huguet) [2136123] - wifi: rtw89: add UNEXP debug mask to keep monitor messages unexpected to happen frequently (Íñigo Huguet) [2136123] - wifi: rtw89: enable VO TX AMPDU (Íñigo Huguet) [2136123] - wifi: rtw89: fix potential TX stuck (Íñigo Huguet) [2136123] - wifi: rtw89: support TDLS (Íñigo Huguet) [2136123] - wifi: rtw89: allocate BSSID CAM per TDLS peer (Íñigo Huguet) [2136123] - wifi: rtw89: separate BSSID CAM operations (Íñigo Huguet) [2136123] - wifi: rtw89: allocate address CAM and MAC ID to TDLS peer (Íñigo Huguet) [2136123] - cfg80211: Indicate MLO connection info in connect and roam callbacks (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: print the link id (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: support creating MLO-capable radios (Íñigo Huguet) [2136123] - wifi: nl80211: expose link ID for associated BSSes (Íñigo Huguet) [2136123] - wifi: nl80211: expose link information for interfaces (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: send a beacon per link (Íñigo Huguet) [2136123] - wifi: mac80211: set STA deflink addresses (Íñigo Huguet) [2136123] - wifi: mac80211: maintain link-sta hash table (Íñigo Huguet) [2136123] - wifi: mac80211: RCU-ify link STA pointers (Íñigo Huguet) [2136123] - wifi: mac80211: ethtool: use deflink for now (Íñigo Huguet) [2136123] - wifi: mac80211: move ieee80211_bssid_match() function (Íñigo Huguet) [2136123] - wifi: mac80211: return a beacon for a specific link (Íñigo Huguet) [2136123] - wifi: mac80211: pass the link id in start/stop ap (Íñigo Huguet) [2136123] - wifi: mac80211: use link in start/stop ap (Íñigo Huguet) [2136123] - wifi: mac80211: implement add/del interface link callbacks (Íñigo Huguet) [2136123] - wifi: cfg80211: add optional link add/remove callbacks (Íñigo Huguet) [2136123] - wifi: cfg80211: sort trace.h (Íñigo Huguet) [2136123] - wifi: mac80211: add sta link addition/removal (Íñigo Huguet) [2136123] - wifi: mac80211: add MLO link ID to TX frame metadata (Íñigo Huguet) [2136123] - wifi: mac80211: remove band from TX info in MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add vif link addition/removal (Íñigo Huguet) [2136123] - wifi: nl80211: support MLO in auth/assoc (Íñigo Huguet) [2136123] - wifi: mac80211: ignore IEEE80211_CONF_CHANGE_SMPS in chanctx mode (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: split bss_info_changed to vif/link info_changed (Íñigo Huguet) [2136123] - wifi: cfg80211: simplify cfg80211_mlme_auth() prototype (Íñigo Huguet) [2136123] - wifi: ieee80211: add definitions for multi-link element (Íñigo Huguet) [2136123] - wifi: nl80211: refactor BSS lookup in nl80211_associate() (Íñigo Huguet) [2136123] - wifi: cfg80211: mlme: get BSS entry outside cfg80211_mlme_assoc() (Íñigo Huguet) [2136123] - wifi: mac80211: tx: simplify chanctx_conf handling (Íñigo Huguet) [2136123] - wifi: mac80211: status: look up band only where needed (Íñigo Huguet) [2136123] - wifi: mac80211: sort trace.h file (Íñigo Huguet) [2136123] - wifi: mac80211: correct link config data in tracing (Íñigo Huguet) [2136123] - wifi: mac80211: make ieee80211_he_cap_ie_to_sta_he_cap() MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: make some SMPS code MLD-aware (Íñigo Huguet) [2136123] - wifi: mac80211: HT: make ieee80211_ht_cap_ie_to_sta_ht_cap() MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: add link_id to eht.c code for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add link_id to vht.c code for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some link setup code (Íñigo Huguet) [2136123] - wifi: mac80211: validate some driver features for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: use IEEE80211_MLD_MAX_NUM_LINKS (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some sta_info link handling (Íñigo Huguet) [2136123] - wifi: mac80211: remove sta_info_tx_streams() (Íñigo Huguet) [2136123] - wifi: mac80211: make channel context code MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: pass link ID where already present (Íñigo Huguet) [2136123] - wifi: mac80211: add per-link configuration pointer (Íñigo Huguet) [2136123] - wifi: mac80211: split bss_info_changed method (Íñigo Huguet) [2136123] - mac80211: fix maybe-unused warning (Íñigo Huguet) [2136123] - wifi: mac80211: reorg some iface data structs for MLD (Íñigo Huguet) [2136123] - wifi: mac80211: move interface config to new struct (Íñigo Huguet) [2136123] - wifi: mac80211: move some future per-link data to bss_conf (Íñigo Huguet) [2136123] - wifi: cfg80211: do some rework towards MLO link APIs (Íñigo Huguet) [2136123] - wifi: mac80211: reject WEP or pairwise keys with key ID > 3 (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Directly use ida_alloc()/free() (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some key code (Íñigo Huguet) [2136123] - wifi: mac80211: remove cipher scheme support (Íñigo Huguet) [2136123] - wifi: nl80211: fix typo in comment (Íñigo Huguet) [2136123] - treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_391.RULE (Íñigo Huguet) [2136123] - rtw88: 8821c: fix access const table of channel parameters (Íñigo Huguet) [2136123] - rtw89: add new state to CFO state machine for UL-OFDMA (Íñigo Huguet) [2136123] - rtw89: 8852c: add trigger frame counter (Íñigo Huguet) [2136123] - ieee80211: add trigger frame definition (Íñigo Huguet) [2136123] - ath10k: fix recently introduced checkpatch warning (Íñigo Huguet) [2136123] - wifi: rtw89: support MULTI_BSSID and correct BSSID mask of H2C (Íñigo Huguet) [2136123] - wifi: ray_cs: Drop useless status variable in parse_addr() (Íñigo Huguet) [2136123] - wifi: ray_cs: Utilize strnlen() in parse_addr() (Íñigo Huguet) [2136123] - wifi: rtw88: use *ph to print small buffer (Íñigo Huguet) [2136123] - ath11k: Fix warnings reported by checkpatch (Íñigo Huguet) [2136123] - ath11k: Fix LDPC config in set_bitrate_mask hook (Íñigo Huguet) [2136123] - wifi: mac80211: fix use-after-free in chanctx code (Íñigo Huguet) [2136123] - ath10k: fix regdomain info of iw reg set/get (Íñigo Huguet) [2136123] - ath11k: support avg signal in station dump (Íñigo Huguet) [2136123] - wifi: rtlwifi: fix error codes in rtl_debugfs_set_write_h2c() (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8821c_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8723d_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8822c_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix sparse warning for rtw8822b_hw_spec (Íñigo Huguet) [2136123] - rtw88: fix null vif pointer when hw_scan fails (Íñigo Huguet) [2136123] - rtw89: sar: adjust and support SAR on 6GHz band (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: re-calibrate RX DCK once thermal changes a lot (Íñigo Huguet) [2136123] - rtw89: pci: handle hardware watchdog timeout interrupt status (Íñigo Huguet) [2136123] - rtw89: fix null vif pointer when hw_scan fails (Íñigo Huguet) [2136123] - rtw89: fix channel inconsistency during hw_scan (Íñigo Huguet) [2136123] - wifi: rtw88: add a work to correct atomic scheduling warning of ::set_tim (Íñigo Huguet) [2136123] - wifi: iwlwifi: pcie: rename CAUSE macro (Íñigo Huguet) [2136123] - wifi: brcmfmac: work around a GCC 12 -Warray-bounds warning (Íñigo Huguet) [2136123] - wifi: iwlwifi: use unsigned to silence a GCC 12 warning (Íñigo Huguet) [2136123] - wifi: rtlwifi: remove always-true condition pointed out by GCC 12 (Íñigo Huguet) [2136123] - wifi: ath9k: silence array-bounds warning on GCC 12 (Íñigo Huguet) [2136123] - ath9k: replace ternary operator with max() (Íñigo Huguet) [2136123] - ath11k: Init hw_params before setting up AHB resources (Íñigo Huguet) [2136123] - ath11k: Fix warning on variable 'sar' dereference before check (Íñigo Huguet) [2136123] - ath10k: fix misreported tx bandwidth for 160Mhz (Íñigo Huguet) [2136123] - ath10k: add encapsulation offloading support (Íñigo Huguet) [2136123] - ath10k: turn rawmode into frame_mode (Íñigo Huguet) [2136123] - ath10k: improve tx status reporting (Íñigo Huguet) [2136123] - ath10k: do not enforce interrupt trigger type (Íñigo Huguet) [2136123] - iwlwifi: mei: fix potential NULL-ptr deref (Íñigo Huguet) [2136123] - iwlwifi: mei: clear the sap data header before sending (Íñigo Huguet) [2136123] - iwlwifi: mvm: remove vif_count (Íñigo Huguet) [2136123] - iwlwifi: mvm: always tell the firmware to accept MCAST frames in BSS (Íñigo Huguet) [2136123] - iwlwifi: mvm: add OTP info in case of init failure (Íñigo Huguet) [2136123] - iwlwifi: mvm: fix assert 1F04 upon reconfig (Íñigo Huguet) [2136123] - iwlwifi: mvm: clean up authorized condition (Íñigo Huguet) [2136123] - iwlwifi: mvm: use NULL instead of ERR_PTR when parsing wowlan status (Íñigo Huguet) [2136123] - iwlwifi: pcie: simplify MSI-X cause mapping (Íñigo Huguet) [2136123] - ath11k: update missing MU-MIMO and OFDMA stats (Íñigo Huguet) [2136123] - rtw89: pci: only mask out INT indicator register for disable interrupt v1 (Íñigo Huguet) [2136123] - rtw89: convert rtw89_band to nl80211_band precisely (Íñigo Huguet) [2136123] - rtw89: 8852c: update txpwr tables to HALRF_027_00_052 (Íñigo Huguet) [2136123] - rtw89: cfo: check mac_id to avoid out-of-bounds (Íñigo Huguet) [2136123] - rtw89: 8852c: set TX antenna path (Íñigo Huguet) [2136123] - rtw89: add ieee80211::sta_rc_update ops (Íñigo Huguet) [2136123] - wireless: Fix Makefile to be in alphabetical order (Íñigo Huguet) [2136123] - mac80211: refactor freeing the next_beacon (Íñigo Huguet) [2136123] - cfg80211: fix kernel-doc for cfg80211_beacon_data (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: support ieee80211_rate_status (Íñigo Huguet) [2136123] - mac80211: extend current rate control tx status API (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: fill all requested rates (Íñigo Huguet) [2136123] - mac80211: disable BSS color collision detection in case of no free colors (Íñigo Huguet) [2136123] - nl80211: Parse NL80211_ATTR_HE_BSS_COLOR as a part of nl80211_parse_beacon (Íñigo Huguet) [2136123] - mac80211: mlme: track assoc_bss/associated separately (Íñigo Huguet) [2136123] - mac80211: remove useless bssid copy (Íñigo Huguet) [2136123] - mac80211: remove unused argument to ieee80211_sta_connection_lost() (Íñigo Huguet) [2136123] - mac80211: mlme: use local SSID copy (Íñigo Huguet) [2136123] - mac80211: use ifmgd->bssid instead of ifmgd->associated->bssid (Íñigo Huguet) [2136123] - mac80211: mlme: move in RSSI reporting code (Íñigo Huguet) [2136123] - mac80211: remove stray multi_sta_back_32bit docs (Íñigo Huguet) [2136123] - mac80211: fix typo in documentation (Íñigo Huguet) [2136123] - mac80211: unify CCMP/GCMP AAD construction (Íñigo Huguet) [2136123] - mt76: mt7921: add ipv6 NS offload support (Íñigo Huguet) [2136123] - mt76: add gfp to mt76_mcu_msg_alloc signature (Íñigo Huguet) [2136123] - mt76: mt7915: add more statistics from fw_util debugfs knobs (Íñigo Huguet) [2136123] - mt76: mt7915: improve error handling for fw_debug knobs (Íñigo Huguet) [2136123] - mt76: mt7615/mt7915: do reset_work with mt76's work queue (Íñigo Huguet) [2136123] - mt76: mt7915: add support for 6G in-band discovery (Íñigo Huguet) [2136123] - mt76: mt7915: add Wireless Ethernet Dispatch support (Íñigo Huguet) [2136123] - net: ethernet: mtk_eth_soc: add support for Wireless Ethernet Dispatch (WED) (Íñigo Huguet) [2136123] - mt76: make number of tokens configurable dynamically (Íñigo Huguet) [2136123] - mt76: add support for overriding the device used for DMA mapping (Íñigo Huguet) [2136123] - mt76: dma: add wrapper macro for accessing queue registers (Íñigo Huguet) [2136123] - mt76: mt7915: move MT_INT_MASK_CSR to init.c (Íñigo Huguet) [2136123] - mt76: mt7915: introduce mt7915_mac_severe_check() (Íñigo Huguet) [2136123] - mt76: mt7915: rework SER debugfs knob (Íñigo Huguet) [2136123] - mt76: mt7915: limit minimum twt duration (Íñigo Huguet) [2136123] - mt76: mt7915: reject duplicated twt flows (Íñigo Huguet) [2136123] - mt76: mt7915: update mt7986 patch in mt7986_wmac_adie_patch_7976() (Íñigo Huguet) [2136123] - mt76: connac: use skb_put_data instead of open coding (Íñigo Huguet) [2136123] - mt76: mt7915: configure soc clocks in mt7986_wmac_init (Íñigo Huguet) [2136123] - mt76: fix encap offload ethernet type check (Íñigo Huguet) [2136123] - mt76: mt7915: disable RX_HDR_TRANS_SHORT (Íñigo Huguet) [2136123] - mt76: mt7603: move spin_lock_bh() to spin_lock() (Íñigo Huguet) [2136123] - mt76: mt7915: add debugfs knob for RF registers read/write (Íñigo Huguet) [2136123] - mt76: mt7921: make read-only array ppet16_ppet8_ru3_ru0 static const (Íñigo Huguet) [2136123] - mt76: mt7915: make read-only array ppet16_ppet8_ru3_ru0 static const (Íñigo Huguet) [2136123] - mt76: mt7915: remove SCS feature (Íñigo Huguet) [2136123] - mt76: fix rx reordering with non explicit / psmp ack policy (Íñigo Huguet) [2136123] - mt76: mt7921: Add AP mode support (Íñigo Huguet) [2136123] - mt76: mt7915: use 0xff to initialize bitrate_mask in mt7915_init_bitrate_mask (Íñigo Huguet) [2136123] - mt76: mt7915: always call mt7915_wfsys_reset() during init (Íñigo Huguet) [2136123] - mt76: mt7921: rely on mt76_dev rxfilter in mt7921_configure_filter (Íñigo Huguet) [2136123] - mt76: mt7921u: add suspend/resume support (Íñigo Huguet) [2136123] - mt76: fix MBSS index condition in DBDC mode (Íñigo Huguet) [2136123] - mt76: fix use-after-free by removing a non-RCU wcid pointer (Íñigo Huguet) [2136123] - mt76: mt7921: accept rx frames with non-standard VHT MCS10-11 (Íñigo Huguet) [2136123] - mt76: mt7915: accept rx frames with non-standard VHT MCS10-11 (Íñigo Huguet) [2136123] - mt76: dma: use kzalloc instead of devm_kzalloc for txwi (Íñigo Huguet) [2136123] - mt76: reduce tx queue lock hold time (Íñigo Huguet) [2136123] - mt76: mt7915: rework hardware/phy initialization (Íñigo Huguet) [2136123] - rtlwifi: Use pr_warn instead of WARN_ONCE (Íñigo Huguet) [2136123] - rtw89: add debug entry to dump BSSID CAM (Íñigo Huguet) [2136123] - rtw89: add debug select to dump MAC pages 0x30 to 0x33 (Íñigo Huguet) [2136123] - rtw89: correct CCA control (Íñigo Huguet) [2136123] - rtw89: correct setting of RX MPDU length (Íñigo Huguet) [2136123] - rtw89: 8852c: add settings to decrease the effect of DC (Íñigo Huguet) [2136123] - brcmfmac: allow setting wlan MAC address using device tree (Íñigo Huguet) [2136123] - ath11k: remove redundant assignment to variables vht_mcs and he_mcs (Íñigo Huguet) [2136123] - ath11k: Reuse the available memory after firmware reload (Íñigo Huguet) [2136123] - ath11k: Designating channel frequency when sending management frames (Íñigo Huguet) [2136123] - ath11k: Implement remain-on-channel support (Íñigo Huguet) [2136123] - ath11k: Handle keepalive during WoWLAN suspend and resume (Íñigo Huguet) [2136123] - bus: mhi: host: Add support for Foxconn T99W373 and T99W368 (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: add Telit FN990 (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: add Telit FN980 v1 hardware revision (Íñigo Huguet) [2136123] - bus: mhi: replace snprintf with sysfs_emit (Íñigo Huguet) [2136123] - rtw88: adjust adaptivity option to 1 (Íñigo Huguet) [2136123] - ath11k: Fix RX de-fragmentation issue on WCN6750 (Íñigo Huguet) [2136123] - ath10k: support bus and device specific API 1 BDF selection (Íñigo Huguet) [2136123] - ath10k: mac: fix too long lines (Íñigo Huguet) [2136123] - ath11k: mac: fix too long line (Íñigo Huguet) [2136123] - mac80211: support disabling EHT mode (Íñigo Huguet) [2136123] - cfg80211: support disabling EHT mode (Íñigo Huguet) [2136123] - mac80211: upgrade passive scan to active scan on DFS channels after beacon rx (Íñigo Huguet) [2136123] - mac80211: tx: delete a redundant if statement in ieee80211_check_fast_xmit() (Íñigo Huguet) [2136123] - mac80211: consider Order bit to fill CCMP AAD (Íñigo Huguet) [2136123] - cfg80211: declare MODULE_FIRMWARE for regulatory.db (Íñigo Huguet) [2136123] - nl80211: rework internal_flags usage (Íñigo Huguet) [2136123] - nl80211: don't hold RTNL in color change request (Íñigo Huguet) [2136123] - cfg80211: remove cfg80211_get_chan_state() (Íñigo Huguet) [2136123] - ath11k: Add support for targets without trustzone (Íñigo Huguet) [2136123] - rtw89: 8852c: add 8852ce to Makefile and Kconfig (Íñigo Huguet) [2136123] - rtw89: 8852c: fix warning of FIELD_PREP() mask type (Íñigo Huguet) [2136123] - rtw89: 8852c: correct register definitions used by 8852c (Íñigo Huguet) [2136123] - rtw89: correct AID settings of beamformee (Íñigo Huguet) [2136123] - rtw89: ps: fine tune polling interval while changing low power mode (Íñigo Huguet) [2136123] - rtw89: 8852c: add basic and remaining chip_info (Íñigo Huguet) [2136123] - rtw89: 8852c: add chip_ops::bb_ctrl_btc_preagc (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: get calibrated channels to notify firmware (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add DPK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add IQK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RX DCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add TSSI (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add LCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add DACK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RFK tables (Íñigo Huguet) [2136123] - rtw88: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2136123] - ath10k: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2136123] - ath11k: Add support for WCN6750 device (Íñigo Huguet) [2136123] - ath11k: Datapath changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: HAL changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add QMI changes for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Fetch device information via QMI for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add register access logic for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add HW params for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Move parameters in bus_params to hw_params (Íñigo Huguet) [2136123] - ath11k: change management tx queue to avoid connection timed out (Íñigo Huguet) [2136123] - ath11k: fix warning of not found station for bssid in message (Íñigo Huguet) [2136123] - rtw88: fix hw scan may cause disconnect issue (Íñigo Huguet) [2136123] - rtw88: fix not disabling beacon filter after disconnection (Íñigo Huguet) [2136123] - rtw88: add HT MPDU density value for each chip (Íñigo Huguet) [2136123] - ath11k: Don't use GFP_KERNEL in atomic context (Íñigo Huguet) [2136123] - ath10k: skip ath10k_halt during suspend for driver state RESTARTING (Íñigo Huguet) [2136123] - rtw89: remove unneeded semicolon (Íñigo Huguet) [2136123] - ath10k: simplify if-if to if-else (Íñigo Huguet) [2136123] - ath11k: read country code from SMBIOS for WCN6855/QCA6390 (Íñigo Huguet) [2136123] - ath11k: disable spectral scan during spectral deinit (Íñigo Huguet) [2136123] - ath11k: Update WBM idle ring HP after FW mode on (Íñigo Huguet) [2136123] - ath11k: WMI changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Do not put HW in DBS mode for WCN6750 (Íñigo Huguet) [2136123] - rtlwifi: btcoex: fix if == else warning (Íñigo Huguet) [2136123] - rtw88: use the correct bit in the REG_HCI_OPT_CTRL register (Íñigo Huguet) [2136123] - mwifiex: Add SD8997 SDIO-UART firmware (Íñigo Huguet) [2136123] - mwifiex: Select firmware based on strapping (Íñigo Huguet) [2136123] - rtw89: 8852c: add chip_ops related to BTC (Íñigo Huguet) [2136123] - rtw89: 8852c: fill freq and band of RX status by PPDU report (Íñigo Huguet) [2136123] - rtw89: 8852c: implement chip_ops::get_thermal (Íñigo Huguet) [2136123] - rtw89: 8852c: implement chip_ops related to TX power (Íñigo Huguet) [2136123] - rtw89: 8852c: configure default BB TX/RX path (Íñigo Huguet) [2136123] - rtw89: add RF H2C to notify firmware (Íñigo Huguet) [2136123] - rtw89: don't flush hci queues and send h2c if power is off (Íñigo Huguet) [2136123] - rtw89: pci: allow to process RPP prior to TX BD (Íñigo Huguet) [2136123] - rtw89: ps: access TX/RX rings via another registers in low power mode (Íñigo Huguet) [2136123] - rtw89: ser: re-enable interrupt in threadfn if under_recovery (Íñigo Huguet) [2136123] - rtw89: pci: add a separate interrupt handler for low power mode (Íñigo Huguet) [2136123] - rtw89: pci: reclaim TX BD only if it really need (Íñigo Huguet) [2136123] - rtw89: pci: add variant RPWM/CPWM to enter low power mode (Íñigo Huguet) [2136123] - rtw89: pci: add variant IMR/ISR and configure functions (Íñigo Huguet) [2136123] - bus: mhi: host: Add support for Cinterion MV32-WA/MV32-WB (Íñigo Huguet) [2136123] - bus: mhi: host: Optimize and update MMIO register write method (Íñigo Huguet) [2136123] - bus: mhi: host: Bail on writing register fields if read fails (Íñigo Huguet) [2136123] - bus: mhi: host: Wait for ready state after reset (Íñigo Huguet) [2136123] - bus: mhi: host: Add soc_reset sysfs (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Sort mhi_pci_id_table based on the PID (Íñigo Huguet) [2136123] - bus: mhi: host: Use cached values for calculating the shared write pointer (Íñigo Huguet) [2136123] - rtw88: pci: 8821c: Disable 21ce completion timeout (Íñigo Huguet) [2136123] - rtw88: fix uninitialized 'tim_offset' warning (Íñigo Huguet) [2136123] - rtw89: 8852c: add help function of set channel (Íñigo Huguet) [2136123] - rtw89: 8852c: add set channel of BB part (Íñigo Huguet) [2136123] - rtw89: 8852c: set channel of MAC part (Íñigo Huguet) [2136123] - rtw89: 8852c: add set channel function of RF part (Íñigo Huguet) [2136123] - rtw89: 8852c: add HFC parameters (Íñigo Huguet) [2136123] - rtw89: 8852c: add efuse gain offset parser (Íñigo Huguet) [2136123] - rtw89: 8852c: support bb gain info (Íñigo Huguet) [2136123] - rtw89: 8852c: add BB initial and reset functions (Íñigo Huguet) [2136123] - rtw89: 8852c: phy: configure TSSI bandedge (Íñigo Huguet) [2136123] - rtw89: 8852c: add TX power track tables (Íñigo Huguet) [2136123] - rtw89: 8852c: add TX power by rate and limit tables (Íñigo Huguet) [2136123] - rtw89: 8852c: add BB and RF parameters tables (Íñigo Huguet) [2136123] - ath9k: fix QCA9561 PA bias level (Íñigo Huguet) [2136123] - ath9k_htc: fix potential out of bounds access with invalid rxstatus->rs_keyix (Íñigo Huguet) [2136123] - ath11k: Fix build warning without CONFIG_IPV6 (Íñigo Huguet) [2136123] - ath11k: fix missing unlock on error in ath11k_wow_op_resume() (Íñigo Huguet) [2136123] - ath11k: Add support for SAR (Íñigo Huguet) [2136123] - ath11k: add support for extended wmi service bit (Íñigo Huguet) [2136123] - rtw89: pci: correct return value handling of rtw89_write16_mdio_mask() (Íñigo Huguet) [2136123] - rtw89: configure security CAM for V1 chip (Íñigo Huguet) [2136123] - rtw89: add new H2C to configure security CAM via DCTL for V1 chip (Íñigo Huguet) [2136123] - rtw89: extend H2C of CMAC control info (Íñigo Huguet) [2136123] - rtlwifi: rtl8192cu: Fix spelling mistake "writting" -> "writing" (Íñigo Huguet) [2136123] - rtlwifi: Fix spelling mistake "cacluated" -> "calculated" (Íñigo Huguet) [2136123] - rtw88: 8821ce: Disable PCIe ASPM L1 for 8821CE using chip ID (Íñigo Huguet) [2136123] - rtw88: 8821ce: add support for device ID 0xb821 (Íñigo Huguet) [2136123] - rtw88: 8821c: fix debugfs rssi value (Íñigo Huguet) [2136123] - rtw88: do PHY calibration while starting AP (Íñigo Huguet) [2136123] - rtw88: 8821c: Enable TX report for management frames (Íñigo Huguet) [2136123] - rtw88: Add update beacon flow for AP mode (Íñigo Huguet) [2136123] - rtw88: fix incorrect frequency reported (Íñigo Huguet) [2136123] - rtw88: add ieee80211:sta_rc_update ops (Íñigo Huguet) [2136123] - rtw89: rtw89_ser: add const to struct state_ent and event_ent (Íñigo Huguet) [2136123] - rtw89: 8852c: add 8852c specific BT-coexistence initial function (Íñigo Huguet) [2136123] - rtw89: Skip useless dig gain and igi related settings for 8852C (Íñigo Huguet) [2136123] - rtw89: 8852c: disable firmware watchdog if CPU disabled (Íñigo Huguet) [2136123] - rtw89: reset BA CAM (Íñigo Huguet) [2136123] - rtw89: change station scheduler setting for hardware TX mode (Íñigo Huguet) [2136123] - rtw89: ser: configure top ERR IMR for firmware to recover (Íñigo Huguet) [2136123] - rtw89: ser: configure C-MAC interrupt mask (Íñigo Huguet) [2136123] - rtw89: ser: configure D-MAC interrupt mask (Íñigo Huguet) [2136123] - rtw89: ser: fix unannotated fall-through (Íñigo Huguet) [2136123] - ath9k: Remove unnecessary print function dev_err() (Íñigo Huguet) [2136123] - ath11k: Fix spelling mistake "reseting" -> "resetting" (Íñigo Huguet) [2136123] - ath9k: fix ath_get_rate_txpower() to respect the rate list end tag (Íñigo Huguet) [2136123] - mac80211: prepare sta handling for MLO support (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: fix where rate stats are stored (fixes debugfs output) (Íñigo Huguet) [2136123] - nl80211: show SSID for P2P_GO interfaces (Íñigo Huguet) [2136123] - mac80211: introduce BSS color collision detection (Íñigo Huguet) [2136123] - mac80211: Improve confusing comment around tx_info clearing (Íñigo Huguet) [2136123] - mac80211: protect ieee80211_assign_beacon with next_beacon check (Íñigo Huguet) [2136123] - rtl8xxxu: fill up txrate info for gen1 chips (Íñigo Huguet) [2136123] - rtl8xxxu: feed antenna information for cfg80211 (Íñigo Huguet) [2136123] - rtlwifi: replace usage of found with dedicated list iterator variable (Íñigo Huguet) [2136123] - brcmfmac: Avoid keeping power to SDIO card unless WOWL is used (Íñigo Huguet) [2136123] - mwifiex: add mutex lock for call in mwifiex_dfs_chan_sw_work_queue (Íñigo Huguet) [2136123] - rtw89: fix misconfiguration on hw_scan channel time (Íñigo Huguet) [2136123] - rtw89: coex: Add case for scan offload (Íñigo Huguet) [2136123] - rtw89: packet offload handler to avoid warning (Íñigo Huguet) [2136123] - rtw89: change idle mode condition during hw_scan (Íñigo Huguet) [2136123] - rtw89: update ptcl_init (Íñigo Huguet) [2136123] - rtw89: update TMAC parameters (Íñigo Huguet) [2136123] - rtw89: initialize NAV control (Íñigo Huguet) [2136123] - rtw89: update scheduler setting (Íñigo Huguet) [2136123] - rtw89: 8852c: update security engine setting (Íñigo Huguet) [2136123] - rtw89: Turn on CR protection of CMAC (Íñigo Huguet) [2136123] - rtw89: add chip_ops::{enable,disable}_bb_rf to support v1 chip (Íñigo Huguet) [2136123] - rtw89: update STA scheduler parameters for v1 chip (Íñigo Huguet) [2136123] - rtw89: extend dmac_pre_init to support 8852C (Íñigo Huguet) [2136123] - rtw89: pci: add L1 settings (Íñigo Huguet) [2136123] - rtw89: pci: add deglitch setting (Íñigo Huguet) [2136123] - rtw89: pci: set address info registers depends on chips (Íñigo Huguet) [2136123] - rtw89: pci: add LTR setting for v1 chip (Íñigo Huguet) [2136123] - rtw89: pci: refine pci pre_init function (Íñigo Huguet) [2136123] - rtw89: pci: add pci attributes to configure operating mode (Íñigo Huguet) [2136123] - rtw89: pci: add register definition to rtw89_pci_info to generalize pci code (Íñigo Huguet) [2136123] - ath11k: mhi: remove unnecessary goto from ath11k_mhi_start() (Íñigo Huguet) [2136123] - ath11k: mhi: add error handling for suspend and resume (Íñigo Huguet) [2136123] - ath11k: mhi: remove state machine (Íñigo Huguet) [2136123] - rtw89: handle potential uninitialized variable (Íñigo Huguet) [2136123] - rtw89: read RX bandwidth from v1 type RX descriptor (Íñigo Huguet) [2136123] - rtw89: support hardware generate security header (Íñigo Huguet) [2136123] - rtw89: support variant of fill_txdesc (Íñigo Huguet) [2136123] - rtw89: pci: support variant of fill_txaddr_info (Íñigo Huguet) [2136123] - rtw89: add chip_info::h2c_desc_size/fill_txdesc_fwcmd to support new chips (Íñigo Huguet) [2136123] - rtw89: disabled IGI configuration for unsupported hardware (Íñigo Huguet) [2136123] - rtw89: packed IGI configuration flow into function for DIG feature (Íñigo Huguet) [2136123] - rtw89: regd: update mapping table to R59-R32 (Íñigo Huguet) [2136123] - rtw89: regd: consider 6G band (Íñigo Huguet) [2136123] - rtw89: 8852a: update txpwr tables to HALRF_027_00_038 (Íñigo Huguet) [2136123] - rtw89: add UK to regulation type (Íñigo Huguet) [2136123] - rtw89: reduce export symbol number of mac size and quota (Íñigo Huguet) [2136123] - rtw89: support FW crash simulation (Íñigo Huguet) [2136123] - rtw89: reconstruct fw feature (Íñigo Huguet) [2136123] - rtw89: ser: dump fw backtrace while L2 reset (Íñigo Huguet) [2136123] - rtw89: ser: dump memory for fw payload engine while L2 reset (Íñigo Huguet) [2136123] - rtw89: ser: control hci interrupts on/off by state (Íñigo Huguet) [2136123] - rtw89: mac: correct decision on error status by scenario (Íñigo Huguet) [2136123] - rtw89: mac: move table of mem base addr to common (Íñigo Huguet) [2136123] - rtw89: ser: fix CAM leaks occurring in L2 reset (Íñigo Huguet) [2136123] - rtw88: change idle mode condition during hw_scan (Íñigo Huguet) [2136123] - iwlwifi: mei: Replace zero-length array with flexible-array member (Íñigo Huguet) [2136123] - iwlwifi: fw: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2136123] - ath11k: fix driver initialization failure with WoW unsupported hw (Íñigo Huguet) [2136123] - ath11k: Remove unnecessary delay in ath11k_core_suspend (Íñigo Huguet) [2136123] - ath11k: Change max no of active probe SSID and BSSID to fw capability (Íñigo Huguet) [2136123] - ath11k: Remove core PCI references from PCI common code (Íñigo Huguet) [2136123] - ath11k: Refactor MSI logic to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Choose MSI config based on HW revision (Íñigo Huguet) [2136123] - ath11k: Refactor PCI code to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: PCI changes to support WCN6750 (Íñigo Huguet) [2136123] - bus: mhi: ep: Add uevent support for module autoloading (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for suspending and resuming channels (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for queueing SKBs to the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing channel rings (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for reading from the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing command rings (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for handling SYS_ERR condition (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for handling MHI_RESET (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for powering down the MHI endpoint stack (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for powering up the MHI endpoint stack (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing MHI endpoint interrupts (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for managing MHI state machine (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for sending events to the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for ring management (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for managing MMIO registers (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for creating and destroying MHI EP devices (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for registering MHI endpoint client drivers (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for registering MHI endpoint controllers (Íñigo Huguet) [2136123] - ath9k: make is2ghz consistent in ar9003_eeprom (Íñigo Huguet) [2136123] - ath10k: add support for MSDU IDs for USB devices (Íñigo Huguet) [2136123] - ath11k: add support to search regdb data in board-2.bin for WCN6855 (Íñigo Huguet) [2136123] - ath11k: store and send country code to firmware after recovery (Íñigo Huguet) [2136123] - ath9k: add functions to get paprd rate mask (Íñigo Huguet) [2136123] - ath9k: refactor ar9003_hw_spur_mitigate_ofdm (Íñigo Huguet) [2136123] - ath9k: fix ar9003_get_eepmisc (Íñigo Huguet) [2136123] - ath9k: use AR9300_MAX_CHAINS when appropriate (Íñigo Huguet) [2136123] - ath9k: split set11nRateFlags and set11nChainSel (Íñigo Huguet) [2136123] - ath9k: make ATH_SREV macros more consistent (Íñigo Huguet) [2136123] - ath11k: Add peer rhash table support (Íñigo Huguet) [2136123] - ath11k: add read variant from SMBIOS for download board data (Íñigo Huguet) [2136123] - ath11k: add fallback board name without variant while searching board-2.bin (Íñigo Huguet) [2136123] - ath11k: enable PLATFORM_CAP_PCIE_GLOBAL_RESET QMI host capability (Íñigo Huguet) [2136123] - ath11k: Add hw-restart option to simulate_fw_crash (Íñigo Huguet) [2136123] - ath11k: add synchronization operation between reconfigure of mac80211 and ath11k_base (Íñigo Huguet) [2136123] - ath11k: add support for device recovery for QCA6390/WCN6855 (Íñigo Huguet) [2136123] - ath11k: disable regdb support for QCA6390 (Íñigo Huguet) [2136123] - ath11k: remove unused ATH11K_BD_IE_BOARD_EXT (Íñigo Huguet) [2136123] - ath11k: change fw build id format in driver init log (Íñigo Huguet) [2136123] - ath11k: Refactor the peer delete (Íñigo Huguet) [2136123] - ath10k: Use of_device_get_match_data() helper (Íñigo Huguet) [2136123] - ath10k: Trigger sta disconnect on hardware restart (Íñigo Huguet) [2136123] - ath9k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2136123] - ath11k: support GTK rekey offload (Íñigo Huguet) [2136123] - ath11k: support ARP and NS offload (Íñigo Huguet) [2136123] - ath11k: purge rx pktlog when entering WoW (Íñigo Huguet) [2136123] - ath11k: implement hardware data filter (Íñigo Huguet) [2136123] - ath11k: Add WoW net-detect functionality (Íñigo Huguet) [2136123] - ath11k: Add basic WoW functionalities (Íñigo Huguet) [2136123] - x86/cpu: Add several Intel server CPU model numbers (Prarit Bhargava) [2158037] - ice: Implement devlink port split operations (Petr Oros) [2009705] - ice: Add additional flags to ice_nvm_write_activate (Petr Oros) [2009705] - ice: Add port option admin queue commands (Petr Oros) [2009705] - hwmon: (coretemp) Check for null before removing sysfs attrs (Phil Auld) [2152429] - KVM: x86/mmu: fix NULL pointer dereference on guest INVPCID (Jon Maloy) [2099301] {CVE-2022-1789} - redhat/configs: enable HP_WATCHDOG for aarch64 (Mark Salter) [2113079] - watchdog/hpwdt: Enable HP_WATCHDOG for ARM64 systems. (Mark Salter) [2113079] - watchdog: Improve Kconfig entry ordering and dependencies (Mark Salter) [2113079] - watchdog/hpwdt: Include nmi.h only if CONFIG_HPWDT_NMI_DECODING (Mark Salter) [2113079] - uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix (Oleg Nesterov) [2133797] - platform/mellanox: Remove redundant 'NULL' check (Mark Langsdorf) [2122314] - platform/mellanox: Remove unnecessary code (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix locking issue (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix coverity warning (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix error flow and extend verbosity (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-io: Add locking for io operations (Mark Langsdorf) [2122314] - platform/mellanox: nvsw-sn2201: fix error code in nvsw_sn2201_create_static_devices() (Mark Langsdorf) [2122314] - platform/mellanox: Add static in struct declaration. (Mark Langsdorf) [2122314] - platform/mellanox: Spelling s/platfom/platform/ (Mark Langsdorf) [2122314] - redhat/configs: Enable Mellanox SN2201 management device (Mark Langsdorf) [2122314] - platform/mellanox: Add support for new SN2201 system (Mark Langsdorf) [2122314] - platform_data/mlxreg: Add field for notification callback (Mark Langsdorf) [2122314] - Bluetooth: btintel: Fix WBS setting for Intel legacy ROM products (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix broken LED quirk for legacy ROM devices (Gopal Tiwari) [2129295] - Bluetooth: Add support hdev to allocate private data (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the legacy bootloader returns tlv based version (Gopal Tiwari) [2129295] - Bluetooth: btintel: Clean the exported function to static (Gopal Tiwari) [2129295] - Bluetooth: btintel: Move hci quirks to setup routine (Gopal Tiwari) [2129295] - Bluetooth: btintel: Refactoring setup routine for bootloader devices (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add combined set_diag functions (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the LED is not turning off immediately (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the first HCI command not work with ROM device (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add btintel data struct (Gopal Tiwari) [2129295] - Bluetooth: btintel: Refactoring setup routine for legacy ROM sku (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add combined setup and shutdown functions (Gopal Tiwari) [2129295] - EDAC/mc_sysfs: Increase legacy channel support to 12 (Aristeu Rozanski) [2139861] - NFS: Trigger the "ls -l" readdir heuristic sooner (Benjamin Coddington) [2025991] - NFS: Cache all entries in the readdirplus reply (Benjamin Coddington) [2025991] - NFS: Optimise away the previous cookie field (Benjamin Coddington) [2025991] - NFS: Fix up forced readdirplus (Benjamin Coddington) [2025991] - NFS: Convert readdir page cache to use a cookie based index (Benjamin Coddington) [2025991] - NFS: Clean up page array initialisation/free (Benjamin Coddington) [2025991] - NFS: Trace effects of the readdirplus heuristic (Benjamin Coddington) [2025991] - NFS: Trace effects of readdirplus on the dcache (Benjamin Coddington) [2025991] - NFS: Add basic readdir tracing (Benjamin Coddington) [2025991] - NFS: Don't request readdirplus when revalidation was forced (Benjamin Coddington) [2025991] - NFSv4: Ask for a full XDR buffer of readdir goodness (Benjamin Coddington) [2025991] - NFS: Don't ask for readdirplus unless it can help nfs_getattr() (Benjamin Coddington) [2025991] - NFS: Improve heuristic for readdirplus (Benjamin Coddington) [2025991] - NFS: Reduce use of uncached readdir (Benjamin Coddington) [2025991] - NFS: Simplify nfs_readdir_xdr_to_array() (Benjamin Coddington) [2025991] - NFS: If the cookie verifier changes, we must invalidate the page cache (Benjamin Coddington) [2025991] - NFS: Adjust the amount of readahead performed by NFS readdir (Benjamin Coddington) [2025991] - NFS: Don't advance the page pointer unless the page is full (Benjamin Coddington) [2025991] - NFS: Don't re-read the entire page cache to find the next cookie (Benjamin Coddington) [2025991] - NFS: Store the change attribute in the directory page cache (Benjamin Coddington) [2025991] - NFS: Calculate page offsets algorithmically (Benjamin Coddington) [2025991] - NFS: Use kzalloc() to avoid initialising the nfs_open_dir_context (Benjamin Coddington) [2025991] - NFS: Initialise the readdir verifier as best we can in nfs_opendir() (Benjamin Coddington) [2025991] - NFS: Trace lookup revalidation failure (Benjamin Coddington) [2025991] - NFS: constify nfs_server_capable() and nfs_have_writebacks() (Benjamin Coddington) [2025991] - NFS: Return valid errors from nfs2/3_decode_dirent() (Benjamin Coddington) [2025991] - NFS: Avoid duplicate uncached readdir calls on eof (Benjamin Coddington) [2025991] - NFS: Don't skip directory entries when doing uncached readdir (Benjamin Coddington) [2025991] - NFS: Don't overfill uncached readdir pages (Benjamin Coddington) [2025991] - block: unhash blkdev part inode when the part is deleted (Ming Lei) [2148497]- x86/fpu: Drop fpregs lock before inheriting FPU permissions (Eder Zulian) [2153549] - cpufreq: amd-pstate: Add resume and suspend callbacks (Mark Langsdorf) [2122310] - cpufreq: CPPC: Enable dvfs_possible_from_any_cpu (Mark Langsdorf) [2122310] - cpufreq: check only freq_table in __resolve_freq() (Mark Langsdorf) [2122310] - cpufreq: ondemand: Use cpumask_var_t for on-stack cpu mask (Mark Langsdorf) [2122310] - cpufreq: Change order of online() CB and policy->cpus modification (Mark Langsdorf) [2122310] - cpufreq: Warn users while freeing active policy (Mark Langsdorf) [2122310] - cpufreq: Drop unnecessary cpus locking from store() (Mark Langsdorf) [2122310] - cpufreq: Optimize cpufreq_show_cpus() (Mark Langsdorf) [2122310] - cpufreq: make interface functions and lock holding state clear (Mark Langsdorf) [2122310] - cpufreq: Abort show()/store() for half-initialized policies (Mark Langsdorf) [2122310] - cpufreq: Rearrange locking in cpufreq_remove_dev() (Mark Langsdorf) [2122310] - cpufreq: Split cpufreq_offline() (Mark Langsdorf) [2122310] - cpufreq: Reorganize checks in cpufreq_offline() (Mark Langsdorf) [2122310] - cpufreq: Clear real_cpus mask from remove_cpu_dev_symlink() (Mark Langsdorf) [2122310] - cpufreq: Prepare cleanup of powerpc's asm/prom.h (Mark Langsdorf) [2122310] - cpufreq: governor: Use kobject release() method to free dbs_data (Mark Langsdorf) [2122310] - ipv6: fix panic when fib_lookup_arg->result is fib6_info (Jiri Benc) [2140599] - tipc: re-fetch skb cb after tipc_msg_validate (Xin Long) [2142732] - Documentation: bonding: correct xmit hash steps (Jonathan Toppins) [2150390] - Documentation: bonding: update miimon default to 100 (Jonathan Toppins) [2150390] - selftests: bonding: up/down delay w/ slave link flapping (Jonathan Toppins) [2150390] - bonding (gcc13): synchronize bond_{a,t}lb_xmit() types (Jonathan Toppins) [2150390] - selftests: net: Fix cross-tree inclusion of scripts (Jonathan Toppins) [2150390] - treewide: use get_random_u32() when possible (Jonathan Toppins) [2150390] - selftests/bonding: re-add lladdr target test (Jonathan Toppins) [2150390] - selftests: bonding: cause oops in bond_rr_gen_slave_id (Jonathan Toppins) [2150390] - selftests/bonding: add a test for bonding lladdr target (Jonathan Toppins) [2150390] - net: Add tests for bonding and team address list management (Jonathan Toppins) [2150390] - net: bonding: Unsync device addresses on ndo_stop (Jonathan Toppins) [2150390] - net: bonding: Share lacpdu_mcast_addr definition (Jonathan Toppins) [2150390] - Documentation: bonding: clarify supported modes for tlb_dynamic_lb (Jonathan Toppins) [2150390] - selftests: include bonding tests into the kselftest infra (Jonathan Toppins) [2150390] - bonding: fix reference count leak in balance-alb mode (Jonathan Toppins) [2150390] - net:bonding:support balance-alb interface with vlan to bridge (Jonathan Toppins) [2150390] - bonding: cleanup bond_create (Jonathan Toppins) [2150390] - bonding: netlink error message support for options (Jonathan Toppins) [2150390] - bonding: Update layer2 and layer2+3 hash formula documentation (Jonathan Toppins) [2150390] - net: bonding: Add support for IPV6 ns/na to balance-alb/balance-tlb mode (Jonathan Toppins) [2150390] - net: remove bond_slave_has_mac_rcu() (Jonathan Toppins) [2150390] - net: bonding: debug: avoid printing debug logs when bond is not notifying peers (Jonathan Toppins) [2150390] - net: bonding: constify and use dev_addr_set() (Jonathan Toppins) [2150390] - net: use dev_addr_set() (Jonathan Toppins) [2150390] - bonding: remove extraneous definitions from bonding.h (Jonathan Toppins) [2150390] - net: bonding: bond_alb: Fix some typos in bond_alb.c (Jonathan Toppins) [2150390] - net: bonding: use tabs instead of space for code indent (Jonathan Toppins) [2150390] - net: bonding: remove unnecessary braces (Jonathan Toppins) [2150390] - net: bonding: fix code indent for conditional statements (Jonathan Toppins) [2150390] - net: bonding: add some required blank lines (Jonathan Toppins) [2150390] - docs: networking: bonding.rst Fix a typo in bonding.rst (Jonathan Toppins) [2150390] - docs: networking: bonding.rst resources section cleanup (Jonathan Toppins) [2150390] - bonding: Replace zero-length array with flexible-array member (Jonathan Toppins) [2150390] - include/net/bond_3ad: Simplify the code by using the ARRAY_SIZE (Jonathan Toppins) [2150390] - vmxnet3: use correct intrConf reference when using extended queues (Izabela Bakollari) [2150917] - vmxnet3: correctly report encapsulated LRO packet (Izabela Bakollari) [2150917] - net: move from strlcpy with unused retval to strscpy (Izabela Bakollari) [2150917] - vmxnet3: Implement ethtool's get_channels command (Izabela Bakollari) [2150917] - vmxnet3: Record queue number to incoming packets (Izabela Bakollari) [2150917] - [rt] Revert "mm/memcg: disable threshold event handlers on PREEMPT_RT" (Chris White) [2152035] - s390/pci: allow zPCI zbus without a function zero (Tobias Huschle) [2043829] - PCI: Extend isolated function probing to s390 (Tobias Huschle) [2043829] - PCI: Move jailhouse's isolated function handling to pci_scan_slot() (Tobias Huschle) [2043829] - PCI: Split out next_ari_fn() from next_fn() (Tobias Huschle) [2043829] - PCI: Clean up pci_scan_slot() (Tobias Huschle) [2043829] - KVM: selftests: Build the memslot tests for arm64 (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Report optimal memory slots (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Consolidate memory (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Support variable guest page size (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Probe memory slots for once (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Consolidate loop conditions in prepare_vm() (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Use data->nslots in prepare_vm() (Gavin Shan) [2134650] - KVM: selftests: Make memslot_perf_test arch independent (Gavin Shan) [2134650] - selftests: netfilter: Fix and review rpath.sh (Phil Sutter) [1961152] - netfilter: Use l3mdev flow key when re-routing mangled packets (Phil Sutter) [1961152] - netfilter: Update ip6_route_me_harder to consider L3 domain (Phil Sutter) [1961152] - netfilter: Dissect flow after packet mangling (Phil Sutter) [1961152] - netfilter: rpfilter/fib: Populate flowic_l3mdev field (Phil Sutter) [1961152] - selftests: netfilter: Test reverse path filtering (Phil Sutter) [1961152] - netfilter: nft_fib: Fix for rpath check with VRF devices (Phil Sutter) [1961152] - net: seg6: fix seg6_lookup_any_nexthop() to handle VRFs using flowi_l3mdev (Phil Sutter) [1961152] - net: Handle l3mdev in ip_tunnel_init_flow (Phil Sutter) [1961152] - xfrm: Pass flowi_oif or l3mdev as oif to xfrm_dst_lookup (Phil Sutter) [1961152] - net: Add l3mdev index to flow struct and avoid oif reset for port devices (Phil Sutter) [1961152] - l3mdev: l3mdev_master_upper_ifindex_by_index_rcu should be using netdev_master_upper_dev_get_rcu (Phil Sutter) [1961152] - l3mdev: add function to retreive upper master (Phil Sutter) [1961152] - sfc: move deprecation message to sfc_siena (Íñigo Huguet) [2112205 2136107] - sfc/siena: add entries for new CONFIG_SFC_SIENA* configs (Íñigo Huguet) [2112205 2136107] - sfc: Fix an error handling path in efx_pci_probe() (Íñigo Huguet) [2112205] - sfc: support PTP over Ethernet (Íñigo Huguet) [2112205 2065017] - sfc: support PTP over IPv6/UDP (Íñigo Huguet) [2112205 2065017] - sfc: allow more flexible way of adding filters for PTP (Íñigo Huguet) [2112205 2065017] - sfc: correct filter_table_remove method for EF10 PFs (Íñigo Huguet) [2112205] - sfc/siena: fix null pointer dereference in efx_hard_start_xmit (Íñigo Huguet) [2112205] - sfc/siena: fix TX channel offset when using legacy interrupts (Íñigo Huguet) [2112205] - sfc: implement ethtool get/set RX ring size for EF100 reps (Íñigo Huguet) [2112205] - sfc: use a dynamic m-port for representor RX and set it promisc (Íñigo Huguet) [2112205] - sfc: move table locking into filter_table_{probe,remove} methods (Íñigo Huguet) [2112205] - sfc: insert default MAE rules to connect VFs to representors (Íñigo Huguet) [2112205] - sfc: receive packets from EF100 VFs into representors (Íñigo Huguet) [2112205] - sfc: check ef100 RX packets are from the wire (Íñigo Huguet) [2112205] - sfc: determine wire m-port at EF100 PF probe time (Íñigo Huguet) [2112205] - sfc: ef100 representor RX top half (Íñigo Huguet) [2112205] - sfc: ef100 representor RX NAPI poll (Íñigo Huguet) [2112205] - sfc: plumb ef100 representor stats (Íñigo Huguet) [2112205] - sfc: disable softirqs for ptp TX (Íñigo Huguet) [2112205] - sfc/siena: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc: attach/detach EF100 representors along with their owning PF (Íñigo Huguet) [2112205] - sfc: hook up ef100 representor TX (Íñigo Huguet) [2112205] - sfc: support passing a representor to the EF100 TX path (Íñigo Huguet) [2112205] - sfc: determine representee m-port for EF100 representors (Íñigo Huguet) [2112205] - sfc: phys port/switch identification for ef100 reps (Íñigo Huguet) [2112205] - sfc: add basic ethtool ops to ef100 reps (Íñigo Huguet) [2112205] - sfc: add skeleton ef100 VF representors (Íñigo Huguet) [2112205] - sfc: detect ef100 MAE admin privilege/capability at probe time (Íñigo Huguet) [2112205] - sfc: update EF100 register descriptions (Íñigo Huguet) [2112205] - sfc: update MCDI protocol headers (Íñigo Huguet) [2112205] - sfc/siena: Use the bitmap API to allocate bitmaps (Íñigo Huguet) [2112205] - sfc: Separate netdev probe/remove from PCI probe/remove (Íñigo Huguet) [2112205] - sfc: replace function name in string with __func__ (Íñigo Huguet) [2112205] - sfc: Unsplit literal string. (Íñigo Huguet) [2112205] - sfc: Move EF100 efx_nic_type structs to the end of the file (Íñigo Huguet) [2112205] - sfc: Separate efx_nic memory from net_device memory (Íñigo Huguet) [2112205] - sfc: Encapsulate access to netdev_priv() (Íñigo Huguet) [2112205] - sfc: Change BUG_ON to WARN_ON and recovery code. (Íñigo Huguet) [2112205] - sfc: Remove netdev init from efx_init_struct (Íñigo Huguet) [2112205] - sfc: Add a PROBED state for EF100 VDPA use. (Íñigo Huguet) [2112205] - sfc: Split STATE_READY in to STATE_NET_DOWN and STATE_NET_UP. (Íñigo Huguet) [2112205] - sfc: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc: siena: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc/siena: Fix typo in comment (Íñigo Huguet) [2112205] - sfc: Fix typo in comment (Íñigo Huguet) [2112205] - sfc/siena: fix wrong tx channel offset with efx_separate_tx_channels (Íñigo Huguet) [2112205] - sfc/siena: fix considering that all channels have TX queues (Íñigo Huguet) [2112205] - sfc/siena: Remove duplicate check on segments (Íñigo Huguet) [2112205 2136107] - sfc: siena: Have a unique wrapper ifndef for efx channels header (Íñigo Huguet) [2112205 2136107] - eth: sfc: remove remnants of the out-of-tree napi_weight module param (Íñigo Huguet) [2112205] - sfc: siena: Fix Kconfig dependencies (Íñigo Huguet) [2112205 2136107] - sfc/siena: Reinstate SRIOV init/fini function calls (Íñigo Huguet) [2112205 2136107] - sfc/siena: Make PTP and reset support specific for Siena (Íñigo Huguet) [2112205 2136107] - sfc/siena: Make MCDI logging support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make HWMON support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make SRIOV support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make MTD support specific for Siena (Íñigo Huguet) [2112205 2136107] - sfc: Add a basic Siena module (Íñigo Huguet) [2112205 2136107] - sfc/siena: Inline functions in sriov.h to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in nic_common.h to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in mcdi headers to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename peripheral functions to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename RX/TX functions to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in efx headers to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Remove build references to missing functionality (Íñigo Huguet) [2112205 2136107] - sfc: Copy shared files needed for Siena (part 2) (Íñigo Huguet) [2112205 2136107] - sfc: Copy shared files needed for Siena (part 1) (Íñigo Huguet) [2112205 2136107] - sfc: Move Siena specific files (Íñigo Huguet) [2112205 2136107] - sfc: Copy a subset of mcdi_pcol.h to siena (Íñigo Huguet) [2112205 2136107] - sfc: Disable Siena support (Íñigo Huguet) [2112205 2136107] - sfc: add EF100 VF support via a write to sriov_numvfs (Íñigo Huguet) [2112205] - sfc: Remove global definition of efx_reset_type_names (Íñigo Huguet) [2112205] - sfc: Remove duplicate definition of efx_xmit_done (Íñigo Huguet) [2112205] - sfc: efx_default_channel_type APIs can be static (Íñigo Huguet) [2112205] - sfc: Fix spelling mistake "writting" -> "writing" (Íñigo Huguet) [2112205] - sfc: ef10: Fix assigning negative value to unsigned variable (Íñigo Huguet) [2112205] - sfc: use hardware tx timestamps for more than PTP (Íñigo Huguet) [2112205 2065017] - net: ethernet: sfc: Make subdir logic consistent with other vendors (Íñigo Huguet) [2112205 2136107] - hugetlbfs: fix mount mode command line processing (Bill O'Donnell) [2148876] - igc: Correct the launchtime offset (Corinna Vinschen) [2103954] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Corinna Vinschen) [2103954] - igc: Remove IGC_MDIC_INT_EN definition (Corinna Vinschen) [2103954] - igc: Remove forced_speed_duplex value (Corinna Vinschen) [2103954] - igc: Remove MSI-X PBA Clear register (Corinna Vinschen) [2103954] - igc: Lift TAPRIO schedule restriction (Corinna Vinschen) [2103954] - wifi: brcmfmac: Fix potential buffer overflow in brcmf_fweh_event_worker() (Wander Lairson Costa) [2150964] {CVE-2022-3628} - net: ethernet: move from strlcpy with unused retval to strscpy (Corinna Vinschen) [2103949] - tipc: call tipc_lxc_xmit without holding node_read_lock (Xin Long) [2141640] - mptcp: fix sleep in atomic at close time (Davide Caratti) [2150361] - mptcp: don't orphan ssk in mptcp_close() (Davide Caratti) [2150361] - net: Avoid overwriting valid skb->napi_id (Antoine Tenart) [2142593] - x86/microcode/AMD: Apply the patch early on every logical thread (Waiman Long) [2139856] - x86/bugs: Enable STIBP for IBPB mitigated RETBleed (Waiman Long) [2139856] - x86/bugs: Add "unknown" reporting for MMIO Stale Data (Waiman Long) [2139856] - tracing: Use a copy of the va_list for __assign_vstr() (Íñigo Huguet) [2143356] - tracing/events: Add __vstring() and __assign_vstr() helper macros (Íñigo Huguet) [2143356] - rtnetlink: add IFLA_PARENT_[DEV|DEV_BUS]_NAME (Jose Ignacio Tornos Martinez) [2144853] - rtnetlink: add alloc() method to rtnl_link_ops (Jose Ignacio Tornos Martinez) [2144853] - ipv6: Fix data races around sk->sk_prot. (Guillaume Nault) [2144805] {CVE-2022-3567} - ipv6: annotate some data-races around sk->sk_prot (Guillaume Nault) [2144805] {CVE-2022-3567} - ipv6: use indirect call wrappers for {tcp, udpv6}_{recv, send}msg() (Guillaume Nault) [2144805] {CVE-2022-3567} - mm/mremap: hold the rmap lock in write mode when moving page table entries. (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: use pmd/pud_poplulate to update page table entries (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: don't enable optimized PUD move if page table levels is 2 (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: convert huge PUD move to separate helper (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: fix BUILD_BUG_ON() error in get_extent (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap.c: fix extent calculation (Waiman Long) [2140945] {CVE-2022-41222} - x86: mremap speedup - Enable HAVE_MOVE_PUD (Waiman Long) [2140945] {CVE-2022-41222} - mm: speedup mremap on 1GB or larger regions (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: start addresses are properly aligned (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: calculate extent in one place (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: it is sure to have enough space when extent meets requirement (Waiman Long) [2140945] {CVE-2022-41222}- irqchip/gic, gic-v3: Make SGIs use handle_percpu_devid_irq() (Charles Mirabile) [2133892] - irqchip/gic-common: Don't enable SGIs by default (Charles Mirabile) [2133892] - irqchip/gic: Configure SGIs as standard interrupts (Charles Mirabile) [2133892] - irqchip/gic: Refactor SMP configuration (Charles Mirabile) [2133892] - irqchip/gic-v3: Configure SGIs as standard interrupts (Charles Mirabile) [2133892] - irqchip/gic-v3: Describe the SGI range (Charles Mirabile) [2133892] - arm64: Allow IPIs to be handled as normal interrupts (Charles Mirabile) [2133892] - irqchip/gic, gic-v3: Prevent GSI to SGI translations (Charles Mirabile) [2133892] - Workaround to enable support for IPI (Charles Mirabile) [2133892] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2112182] - tg3: Disable tg3 device on system reboot to avoid triggering AER (Ken Cox) [2112182] - aquantia: Do not purge addresses when setting the number of rings (Izabela Bakollari) [2122571] - openvswitch: add nf_ct_is_confirmed check before assigning the helper (Antoine Tenart) [2135414] - net: openvswitch: allow conntrack in non-initial user namespace (Antoine Tenart) [2135414] - net: openvswitch: allow metering in non-initial user namespace (Antoine Tenart) [2135414] - openvswitch: Change the return type for vport_ops.send function hook to int (Antoine Tenart) [2135414] - net: openvswitch: fix repeated words in comments (Antoine Tenart) [2135414] - openvswitch: add OVS_DP_ATTR_PER_CPU_PIDS to get requests (Antoine Tenart) [2135414] - openvswitch: allow specifying ifindex of new interfaces (Antoine Tenart) [2135414] - openvswitch: move from strlcpy with unused retval to strscpy (Antoine Tenart) [2135414] - openvswitch: Fix overreporting of drops in dropwatch (Antoine Tenart) [2135414] - openvswitch: Fix double reporting of drops in dropwatch (Antoine Tenart) [2135414] - openvswitch: fix memory leak at failed datapath creation (Antoine Tenart) [2135414] - net: remove noblock parameter from skb_recv_datagram() (Íñigo Huguet) [2143359] - i40e: Fix error handling in i40e_init_module() (Stefan Assmann) [2103661] - i40e: Add appropriate error message logged for incorrect duplex setting (Stefan Assmann) [2103661] - i40e: Add i40e_napi_poll tracepoint (Stefan Assmann) [2103661] - i40e: Record number of RXes cleaned during NAPI (Stefan Assmann) [2103661] - i40e: Record number TXes cleaned during NAPI (Stefan Assmann) [2103661] - i40e: Store the irq number in i40e_q_vector (Stefan Assmann) [2103661] - ptp: introduce helpers to adjust by scaled parts per million (Stefan Assmann) [2103661] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Stefan Assmann) [2103661] - i40e: Fix flow-type by setting GL_HASH_INSET registers (Stefan Assmann) [2103661] - i40e: Fix ethtool rx-flow-hash setting for X722 (Stefan Assmann) [2103661] - i40e: Fix ADQ rate limiting for PF (Stefan Assmann) [2103661] - i40e: add description and modify interrupts configuration procedure (Stefan Assmann) [2103661] - i40e: Add basic support for I710 devices (Stefan Assmann) [2103661] - net: ethernet: move from strlcpy with unused retval to strscpy (Stefan Assmann) [2103661] - i40e: Fix incorrect address type for IPv6 flow rules (Stefan Assmann) [2103661] - i40e: Fix to stop tx_timeout recovery if GLOBR fails (Stefan Assmann) [2103661] - i40e: convert .adjfreq to .adjfine (Stefan Assmann) [2103661] - i40e: use mul_u64_u64_div_u64 for PTP frequency calculation (Stefan Assmann) [2103661] - i40e: Fix interface init with MSI interrupts (no MSI-X) (Stefan Assmann) [2103661] - i40e: Refactor tc mqprio checks (Stefan Assmann) [2103661] - i40e: Fix erroneous adapter reinitialization during recovery process (Stefan Assmann) [2103661] - i40e: Fix VF's MAC Address change on VM (Stefan Assmann) [2103661] - i40e: Fix dropped jumbo frames statistics (Stefan Assmann) [2103661] - intel/i40e:fix repeated words in comments (Stefan Assmann) [2103661] - intel: remove unused macros (Stefan Assmann) [2103661] - i40e: read the XDP program once per NAPI (Stefan Assmann) [2103661] - intel/i40e: delete if NULL check before dev_kfree_skb (Stefan Assmann) [2103661] - i40e: Remove unnecessary synchronize_irq() before free_irq() (Stefan Assmann) [2103661] - i40e: Add support for ethtool -s speed (Stefan Assmann) [2103661] - i40e: Add VF VLAN pruning (Stefan Assmann) [2103661] - xsk: Wipe out dead zero_copy_allocator declarations (Stefan Assmann) [2103661] - gpio: amdpt: add new device ID and 24-pin support (Prarit Bhargava) [2097868] - platform/x86/intel: pmc/core: Add Raptor Lake support to pmc core driver (Prarit Bhargava) [2076732] - HID: hyperv: fix possible memory leak in mousevsc_probe() (Mohammed Gamal) [2139468] - HID: hyperv: Correctly access fields declared as __le16 (Mohammed Gamal) [2139468] - Drivers: hv: vmbus: fix possible memory leak in vmbus_device_register() (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: fix double free in the error path of vmbus_add_channel_work() (Mohammed Gamal) [2139473] - Drivers: hv: fix repeated words in comments (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Split memcpy of flex-array (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Don't wait for the ACPI device upon initialization (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Use PCI_VENDOR_ID_MICROSOFT for better discoverability (Mohammed Gamal) [2139473] - PCI: Move PCI_VENDOR_ID_MICROSOFT/PCI_DEVICE_ID_HYPERV_VIDEO definitions to pci_ids.h (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Fix kernel-doc (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Optimize vmbus_on_event (Mohammed Gamal) [2139473] - Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region (Mohammed Gamal) [2139473] - Drivers: hv: Always reserve framebuffer region for Gen1 VMs (Mohammed Gamal) [2139473] - Drivers: hv: remove duplicate word in a comment (Mohammed Gamal) [2139473] - Drivers: hv: Create debugfs file with hyper-v balloon usage information (Mohammed Gamal) [2139473] - Drivers: hv: vm_bus: Handle vmbus rescind calls after vmbus is suspended (Mohammed Gamal) [2139473] - scsi: storvsc: remove an extraneous "to" in a comment (Cathy Avery) [2143320] - Drivers: hv: vmbus: Optimize vmbus_on_event (Cathy Avery) [2143320] - scsi: storvsc: Drop DID_TARGET_FAILURE use (Cathy Avery) [2143320] - scsi: storvsc: Remove WQ_MEM_RECLAIM from storvsc_error_wq (Cathy Avery) [2143320] - scsi: storvsc: Correct reporting of Hyper-V I/O size limits (Cathy Avery) [2143320] - scsi: storvsc: Removing Pre Win8 related logic (Cathy Avery) [2143320] - scsi: storvsc: Fix typo in comment (Cathy Avery) [2143320] - scsi: storvsc: Remove support for Hyper-V 2008 and 2008R2/Win7 (Cathy Avery) [2143320] - vdpa/mlx5: re-create forwarding rules after mac modified (Laurent Vivier) [2145136] - ipv6: Fix crash when IPv6 is administratively disabled (Guillaume Nault) [2140779] - raw: fix a typo in raw_icmp_error() (Guillaume Nault) [2140779] - raw: remove unused variables from raw6_icmp_error() (Guillaume Nault) [2140779] - raw: complete rcu conversion (Guillaume Nault) [2140779] - raw: Use helpers for the hlist_nulls variant. (Guillaume Nault) [2140779] - raw: Fix mixed declarations error in raw_icmp_error(). (Guillaume Nault) [2140779] - raw: convert raw sockets to RCU (Guillaume Nault) [2140779] - raw: use more conventional iterators (Guillaume Nault) [2140779] - raw: Add missing annotations to raw_seq_start() and raw_seq_stop() (Guillaume Nault) [2140779] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103941] - e1000e: convert .adjfreq to .adjfine (Ken Cox) [2103941] - e1000e: remove unnecessary range check in e1000e_phc_adjfreq (Ken Cox) [2103941] - Revert "e1000e: Fix possible HW unit hang after an s0ix exit" (Ken Cox) [2103941] - e1000e: Enable GPT clock before sending message to CSME (Ken Cox) [2103941] - intel/e1000e:fix repeated words in comments (Ken Cox) [2103941] - intel: remove unused macros (Ken Cox) [2103941] - net: move netif_set_gso_max helpers (Ivan Vecera) [2137564] - net: make drivers set the TSO limit not the GSO limit (Ivan Vecera) [2137564] - net: don't allow user space to lift the device limits (Ivan Vecera) [2137564] - net: add netif_inherit_tso_max() (Ivan Vecera) [2137564] - net: extract a few internals from netdevice.h (Ivan Vecera) [2137564] - net: unexport a handful of dev_* functions (Ivan Vecera) [2137564] - bpf: Fix extable address check. (Felix Maurer) [2138532] - bpf, x64: Factor out emission of REX byte in more cases (Felix Maurer) [2138532] - bpf: Support dual-stack sockets in bpf_tcp_check_syncookie (Felix Maurer) [2138532] - bpf: Fix extable fixup offset. (Felix Maurer) [2138532] - bpf: Fix the off-by-two error in range markings (Felix Maurer) [2138532] - bpf: Fix potential race in tail call compatibility check (Felix Maurer) [2138532] - bpf: Fix possible out of bound write in narrow load handling (Felix Maurer) [2138532] - bpf: Fix potential memleak and UAF in the verifier. (Felix Maurer) [2138532] - KVM: s390: vsie: Fix the initialization of the epoch extension (epdx) field (Thomas Huth) [2151854] - PM: core: Remove static qualifier in DEFINE_SIMPLE_DEV_PM_OPS macro (Íñigo Huguet) [2143354] - PM: core: Add new *_PM_OPS macros, deprecate old ones (Íñigo Huguet) [2143354] - PM: Make *_DEV_PM_OPS macros use __maybe_unused (Íñigo Huguet) [2143354] - PM: core: Redefine pm_ptr() macro (Íñigo Huguet) [2143354] - linux/kconfig.h: replace IF_ENABLED() with PTR_IF() in (Íñigo Huguet) [2143354] - net: Remove unused inline function sk_nulls_node_init() (Guillaume Nault) [2143239] - ping: convert to RCU lookups, get rid of rwlock (Guillaume Nault) [2143239] - mm/cgroup/reclaim: fix dirty pages throttling on cgroup v1 (Waiman Long) [2149544] - mm: vmscan: remove deadlock due to throttling failing to make progress (Waiman Long) [2149544] - mm: vmscan: reduce throttling due to a failure to make progress -fix (Waiman Long) [2149544] - mm: vmscan: Reduce throttling due to a failure to make progress (Waiman Long) [2149544] - mm/vmscan: delay waking of tasks throttled on NOPROGRESS (Waiman Long) [2149544] - mm/vmscan: increase the timeout if page reclaim is not making progress (Waiman Long) [2149544] - mm/vmscan: centralise timeout values for reclaim_throttle (Waiman Long) [2149544] - mm/page_alloc: remove the throttling logic from the page allocator (Waiman Long) [2149544] - mm/writeback: throttle based on page writeback instead of congestion (Waiman Long) [2149544] - mm/vmscan: throttle reclaim when no progress is being made (Waiman Long) [2149544] - mm/vmscan: throttle reclaim and compaction when too may pages are isolated (Waiman Long) [2149544] - mm/vmscan: throttle reclaim until some writeback completes if congested (Waiman Long) [2149544] - mm/vmscan.c: delete or fix duplicated words (Waiman Long) [2149544] - powerpc/pseries/vas: Add VAS IRQ primary handler (Mamatha Inamdar) [2131675] - powerpc: Ignore DSI error caused by the copy/paste instruction (Mamatha Inamdar) [2131675] - powerpc/pseries: Move vas_migration_handler early during migration (Mamatha Inamdar) [2131675] - vt: drop old FONT ioctls (Wander Lairson Costa) [2109164] {CVE-2021-33656}- x86/mce: Reduce number of machine checks taken during recovery (Prarit Bhargava) [2104388] - scsi: storvsc: Fix handling of srb_status and capacity change events (Mohammed Gamal) [2139728] - clocksource: hyper-v: unexport __init-annotated hv_init_clocksource() (Mohammed Gamal) [2139463] - hv_netvsc: Fix race between VF offering and VF association message from host (Mohammed Gamal) [2139475] - sbitmap: fix lockup while swapping (Ming Lei) [2140214] - sbitmap: fix batched wait_cnt accounting (Ming Lei) [2140214] - sbitmap: Avoid leaving waitqueue in invalid state in __sbq_wake_up() (Ming Lei) [2140214] - sbitmap: fix possible io hung due to lost wakeup (Ming Lei) [2140214] - sbitmap: add helper to clear a batch of tags (Ming Lei) [2140214] - x86/hyperv: Restore VP assist page after cpu offlining/onlining (Mohammed Gamal) [2139454] - clocksource/drivers/hyperv: add data structure for reference TSC MSR (Mohammed Gamal) [2139454] - x86/hyperv: fix root partition faults when writing to VP assist page MSR (Mohammed Gamal) [2139454] - x86/hyperv: fix invalid writes to MSRs during root partition kexec (Mohammed Gamal) [2139454] - x86/hyperv: Remove BUG_ON() for kmap_local_page() (Mohammed Gamal) [2139454] - x86/hyperv: Disable hardlockup detector by default in Hyper-V guests (Mohammed Gamal) [2139454] - x86/hyperv: Update 'struct hv_enlightened_vmcs' definition (Mohammed Gamal) [2139454] - x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition (Mohammed Gamal) [2139454] - x86/hyperv: Replace kmap() with kmap_local_page() (Mohammed Gamal) [2139454] - hyperv: simplify and rename generate_guest_id (Mohammed Gamal) [2139454] - x86/Hyper-V: Add SEV negotiate protocol support in Isolation VM (Mohammed Gamal) [2139454] - x86/sev: Define the Linux-specific guest termination reasons (Mohammed Gamal) [2139454] - x86/sev: Shorten GHCB terminate macro names (Mohammed Gamal) [2139454] - x86/sev: Save the negotiated GHCB version (Mohammed Gamal) [2139454] - locking: Add __sched to semaphore functions (Waiman Long) [2141429] - locking/rwsem: Disable preemption while trying for rwsem lock (Waiman Long) [2141429] - locking/percpu-rwsem: Add percpu_is_write_locked() and percpu_is_read_locked() (Waiman Long) [2141429] - locking/rwsem: Conditionally wake waiters in reader/writer slowpaths (Waiman Long) [2141429] - locking: Mark racy reads of owner->on_cpu (Waiman Long) [2141429] - locking: Make owner_on_cpu() into (Waiman Long) [2141429] - locking/rwsem: Optimize down_read_trylock() under highly contended case (Waiman Long) [2141429] - locking/rwsem: Fix comments about reader optimistic lock stealing conditions (Waiman Long) [2141429] - locking/rwsem: Disable preemption for spinning region (Waiman Long) [2141429] - locking: Remove rcu_read_{,un}lock() for preempt_{dis,en}able() (Waiman Long) [2141429] - NFSD: Mark exports of NFS as unsupported (Benjamin Coddington) [2150902] - fuse: lock inode unconditionally in fuse_fallocate() (Miklos Szeredi) [2110883] - fuse: add file_modified() to fallocate (Miklos Szeredi) [2110883] - mei: me: add adler lake point S DID (Prarit Bhargava) [2141602] - ocfs2/dlm: move BITS_TO_BYTES() to bitops.h for wider use (Izabela Bakollari) [2144858] - libnvdimm/namespace: Fix visibility of namespace resource attribute (Jeff Moyer) [2016347] - PCI: hv: Only reuse existing IRTE allocation for Multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Fix the definition of vector in hv_compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Take a const cpumask in hv_compose_msi_req_get_cpu() (Mohammed Gamal) [2139458] - PCI: hv: Fix synchronization between channel callback and hv_pci_bus_exit() (Mohammed Gamal) [2139458] - PCI: hv: Add validation for untrusted Hyper-V values (Mohammed Gamal) [2139458] - PCI: hv: Fix interrupt mapping for multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Reuse existing IRTE allocation in compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Fix hv_arch_irq_unmask() for multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Fix synchronization between channel callback and hv_compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Use vmbus_requestor to generate transaction IDs for VMbus hardening (Mohammed Gamal) [2139458] - PCI: hv: Fix multi-MSI to allow more than one MSI vector (Mohammed Gamal) [2139458] - net: mana: Add rmb after checking owner bits (Mohammed Gamal) [2139462] - net: mana: Add support of XDP_REDIRECT action (Mohammed Gamal) [2139462] - net: mana: Add the Linux MANA PF driver (Mohammed Gamal) [2139462] - NFSD: Protect against send buffer overflow in NFSv3 READ (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv2 READ (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv3 READDIR (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv2 READDIR (Scott Mayhew) [2141774] {CVE-2022-43945} - SUNRPC: Fix svcxdr_init_encode's buflen calculation (Scott Mayhew) [2141774] {CVE-2022-43945} - SUNRPC: Fix svcxdr_init_decode's end-of-buffer calculation (Scott Mayhew) [2141774] {CVE-2022-43945} - KVM: VMX: fully disable SGX if SECONDARY_EXEC_ENCLS_EXITING unavailable (Emanuele Giuseppe Esposito) [2127128] - cgroup/cpuset: Reduce cpuset_rwsem writer latency (Waiman Long) [2149031] - rcu/exp: Mark current CPU as exp-QS in IPI loop second pass (Waiman Long) [2149031] - rcu: Always inline rcu_dynticks_task*_{enter,exit}() (Waiman Long) [2149031] - rcu: Fix existing exp request check in sync_sched_exp_online_cleanup() (Waiman Long) [2149031] - rcu: Fix macro name CONFIG_TASKS_RCU_TRACE (Waiman Long) [2149031] - rcu: Fix stall-warning deadlock due to non-release of rcu_node ->lock (Waiman Long) [2149031] - rcu: Fix to include first blocked task in stall warning (Waiman Long) [2149031] - cgroup: Use cgroup_attach_{lock,unlock}() from cgroup_attach_task_all() (Waiman Long) [2149031] - cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all() (Waiman Long) [2149031] - cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlock (Waiman Long) [2149031] - cgroup: Elide write-locking threadgroup_rwsem when updating csses on an empty subtree (Waiman Long) [2149031] - cgroup/cpuset: Fix a race between cpuset_attach() and cpu hotplug (Waiman Long) [2149031] - cgroup: reduce dependency on cgroup_mutex (Waiman Long) [2149031]- drm/i915: fix TLB invalidation for Gen12 video and compute engines (Wander Lairson Costa) [2148150] {CVE-2022-4139} - redhat/configs: Set CONFIG_X86_AMD_PSTATE to 'm' (Prarit Bhargava) [2145246] - bonding: uninitialized variable in bond_miimon_inspect() (Jonathan Toppins) [1973124] - bonding: fix link recovery in mode 2 when updelay is nonzero (Jonathan Toppins) [1973124] - RHEL: ALSA: update configuration (Jaroslav Kysela) [2125544] - RHEL: ALSA: fix compilation issues (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-mtl: fix firmware name (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Correct pin configs for ASUS G533Z (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: remove ALC289_FIXUP_DUAL_SPK for Dell 5530 (Jaroslav Kysela) [2125544] - ALSA: ac97: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: ca0106: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: control: add snd_ctl_rename() (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Use only dynamic PCM device allocation (Jaroslav Kysela) [2125544] - regmap: add reg_sequence helpers (Jaroslav Kysela) [2125544] - regmap: fix the kerneldoc for regmap_test_bits() (Jaroslav Kysela) [2125544] - regmap: provide helpers for simple bit operations (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Free the ida when IPC fails in sof_ipc4_widget_setup() (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Handle BCLK set as PLL input configuration (Jaroslav Kysela) [2125544] - ASoC: test-component: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Add support for pll_r coefficient (Jaroslav Kysela) [2125544] - ASoC: ssm4567: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: rk3328: fix disabling mclk on pclk probe failure (Jaroslav Kysela) [2125544] - ASoC: pcm3060: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: cs42l42: remove redundant test (Jaroslav Kysela) [2125544] - ALSA: ppc: beep: fix clang -Wimplicit-fallthrough (Jaroslav Kysela) [2125544] - ASoC: soc-component: Add comment for the endianness flag (Jaroslav Kysela) [2125544] - ASoC: codecs: wsa881x: handle timeouts in resume path (Jaroslav Kysela) [2125544] - ASoC: wsa881x: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: codecs: wsa881x: add runtime pm support (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Fix event generation for wm_adsp_fw_put() (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Minor clean and redundant code removal (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Compressed stream DSP memory structs should be __packed (Jaroslav Kysela) [2125544] - ASoC: wm8998: Fix event generation for input mux (Jaroslav Kysela) [2125544] - ASoC: arizona: Fix a wrong free in wm8997_probe (Jaroslav Kysela) [2125544] - ASoC: wm8962: Allow switching between analog and digital inputs (Jaroslav Kysela) [2125544] - ASoC: wm8960: Fix clock configuration on slave mode (Jaroslav Kysela) [2125544] - ASoC: wm8962: Fix suspend while playing music (Jaroslav Kysela) [2125544] - ASoC: codecs: wm8962: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Jaroslav Kysela) [2125544] - ASoC: wm8960: Add ACPI support (Jaroslav Kysela) [2125544] - ASoC: wm8958: Fix change notifications for DSP controls (Jaroslav Kysela) [2125544] - ASoC: wm8940: add devicetree support (Jaroslav Kysela) [2125544] - ASoC: wm*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: wm8903: Fix the error handling of wm8903_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: wm8731: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: arizona: Make the wm5102, wm5110, wm8997 and wm8998 drivers use the new jack library (Jaroslav Kysela) [2125544] - ASoC: wm5102: Fix event generation for output compensation (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Use int array instead of bitmask for TX mixers (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Use DT bindings instead of local DAI definitions (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Fix spurious event generation (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Remove RX channel from old list before adding it to a new one (Jaroslav Kysela) [2125544] - ASoC: codecs: wcd9335: move gains from SX_TLV to S8_TLV (Jaroslav Kysela) [2125544] - ASoC: wcd9335: remove redundant tests (Jaroslav Kysela) [2125544] - ASoC: uda1380: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: uda1334: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: twl4030: Drop legacy, non DT boot support (Jaroslav Kysela) [2125544] - ASoC: tscs*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: ts3a227e: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tpa6130: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: tlv320dac3x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic33: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: codec: tlv320aic32x4: fix mono playback via I2S (Jaroslav Kysela) [2125544] - ASoC: tlv320aic32x4: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Fix typo in BCLK clock name (Jaroslav Kysela) [2125544] - ASoC: tlv320*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: Rename tlv320aic31xx-micbias.h as tlv320aic31xx.h (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic26: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic23: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas6424: Return zero in remove callback (Jaroslav Kysela) [2125544] - ASoC: tda7419: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas6424: Fix the error handling of tas6424_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: tas6424: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas5720: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas571x: Fix the error handling of tas571x_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: tas5086: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas2552: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: tas2770: Reinit regcache on reset (Jaroslav Kysela) [2125544] - ASoC: tas2562: Propagate the error in tas2562_dac_event() (Jaroslav Kysela) [2125544] - ASoC: tas2562: Fix mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2764: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2125544] - ASoC: tas2764: Allow mono streams (Jaroslav Kysela) [2125544] - ASoC: tas2770: Fix handling of mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2770: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2125544] - ASoC: tas2770: Allow mono streams (Jaroslav Kysela) [2125544] - ASoC: tas2770: Set correct FSYNC polarity (Jaroslav Kysela) [2125544] - ASoC: tas2770: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: tas2552: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sti-sas: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta350: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta350: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: sta*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: sta32x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta32x: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: ssm2602: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: ssm2518: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sgtl5000: Fix noise on shutdown/remove (Jaroslav Kysela) [2125544] - ASoC: rt9120: Fix 3byte read, valule offset typo (Jaroslav Kysela) [2125544] - ASoC: rt9120: Use pm_runtime and regcache to optimize 'pwdnn' logic (Jaroslav Kysela) [2125544] - ASoC: codecs: rt715-sdca: remove useless assignment of ops (Jaroslav Kysela) [2125544] - ASoC: rt5682s: Separate the regulator consumer controls (Jaroslav Kysela) [2125544] - ASoC: rt5645: Fix the error handling of rt5645_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the issue of the abnormal JD2 status (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the JD voltage dropping issue (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the wrong state of JD1 and JD2 (Jaroslav Kysela) [2125544] - ASoC: rt5640: Add the MICBIAS1 to the dapm routing (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Fix jack detection (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Fix NULL jack in interrupt (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt286: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt274: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt274: Always init jack_detect_work (Jaroslav Kysela) [2125544] - ASoC: rt1308-sdw: add the default value of register 0xc320 (Jaroslav Kysela) [2125544] - ASoC: rk3328: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: pcm1789: Make pcm1789_common_exit() return void (Jaroslav Kysela) [2125544] - ASoC: pcm186x: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: pcm186x: simplify the return expression of pcm186x_power_off() (Jaroslav Kysela) [2125544] - ASoC: pcm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: nau8825: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8825: Declare 2 channels for DAI of capture stream (Jaroslav Kysela) [2125544] - ASoC: nau8824: Fix semaphore is released unexpectedly (Jaroslav Kysela) [2125544] - ASoC: nau8824: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8824: Fix semaphore unbalance at error paths (Jaroslav Kysela) [2125544] - ASoC: nau8822: Don't reconfigure PLL to the same values (Jaroslav Kysela) [2125544] - ASoC: nau8822: Disable internal PLL if freq_out is zero (Jaroslav Kysela) [2125544] - ASoC: nau8821: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8821: Don't unconditionally free interrupt (Jaroslav Kysela) [2125544] - ASoC: nau8821: add new widget to control system clock (Jaroslav Kysela) [2125544] - ASoC: nau8821: Add headset button detection (Jaroslav Kysela) [2125544] - ASoC: codecs: mt6359-accdet: remove useless initialization (Jaroslav Kysela) [2125544] - ASoC: mediatek: mt6366: support for mt6366 codec (Jaroslav Kysela) [2125544] - ASoC: msm8916-wcd-digital: Check failure for devm_snd_soc_register_component (Jaroslav Kysela) [2125544] - ASoC: nau8540: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: mt6660: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: mt6359: Fix refcount leak bug (Jaroslav Kysela) [2125544] - ASoC: mediatek: mt6358: add missing EXPORT_SYMBOLs (Jaroslav Kysela) [2125544] - ASoC: msm8916-wcd-digital: Fix missing clk_disable_unprepare() in msm8916_wcd_digital_probe (Jaroslav Kysela) [2125544] - ASoC: codecs: msm8916-wcd-digital: move gains from SX_TLV to S8_TLV (Jaroslav Kysela) [2125544] - ASoC: ml26124: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: max9860: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: max98390: use linux/gpio/consumer.h to fix build (Jaroslav Kysela) [2125544] - ASoC: max98390: Add reset gpio control (Jaroslav Kysela) [2125544] - ASoC: codecs: soundwire: call pm_runtime_resume() in component probe (Jaroslav Kysela) [2125544] - ASoC: max98373: Removing 0x203E from the volatile reg (Jaroslav Kysela) [2125544] - ASoC: max98090: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: max98090: Fix event generation for custom controls (Jaroslav Kysela) [2125544] - ASoC: codecs: max98088: Clean up some inconsistent indenting (Jaroslav Kysela) [2125544] - ASoC: max980*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: lm4857: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: da732x: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: da7219: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: max9*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: lm49xxx: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: es83*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: codes: Add support for ES8316 producer mode (Jaroslav Kysela) [2125544] - ASoC: dmic: Add support for DSD data format (Jaroslav Kysela) [2125544] - ASoC: da[79]*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: da7219: cancel AAD related work earlier for jack removal (Jaroslav Kysela) [2125544] - ASoC: da7219: Fix pole orientation detection on certain headsets (Jaroslav Kysela) [2125544] - ASoC: da7218: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: cx2072x: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: cx2072x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: cs4349: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs42l56: Fix the error handling of cs42l56_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: cs42l51: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs42l42: Only report button state if there was a button interrupt (Jaroslav Kysela) [2125544] - ASoC: cs4270: update kernel-doc (Jaroslav Kysela) [2125544] - ASoC: cs4270: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add support for CLSA3541 ACPI device ID (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Enable Internal Boost in shared lib (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Do not print error when waking from hibernation (Jaroslav Kysela) [2125544] - ASoC: cs35l36: Fix the error handling of cs35l36_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: cs*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: arizona: Update arizona_aif_cfg_changed to use RX_BCLK_RATE (Jaroslav Kysela) [2125544] - ASoC: alc56*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: ak4613: cares Simple-Audio-Card case for TDM (Jaroslav Kysela) [2125544] - ASoC: ak4613: add TDM256 support (Jaroslav Kysela) [2125544] - ASoC: ak4613: rename constraint to constraint_rates (Jaroslav Kysela) [2125544] - ASoC: ak4613: priv has ctrl1 instead of iface (Jaroslav Kysela) [2125544] - ASoC: ak4613: return error if it was setup as clock provider (Jaroslav Kysela) [2125544] - ASoC: ak4613: tidyup ak4613_interface (Jaroslav Kysela) [2125544] - ASoC: ak4613: add missing mutex_lock() (Jaroslav Kysela) [2125544] - ASoC: ak4642: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: ak*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: ak4*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: adau1761: Add ADAU1761-as-ADAU1361 compatibility mode (Jaroslav Kysela) [2125544] - ASoC: ada*, ssm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: ab8500: Remove some leftover from the "Replace GPLv2 boilerplate/reference with SPDX" rules (Jaroslav Kysela) [2125544] - ASoC: ad1*, ada*, ssm*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: test-component: Rename set_fmt_new back to set_fmt (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: rename asoc_simple_init_dai_link_params() to asoc_simple_init_for_codec2codec() (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils.c: care Codec2Codec vs DPCM:BE (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils.c: ignore Codec2Codec setting if it already have (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: Make asoc_simple_clean_reference() return void (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2: indicate "Experimental stage" warning only when successed (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2: Add of_node_put() in fail path (Jaroslav Kysela) [2125544] - ASoc: audio-graph-card2: Fix refcount leak bug in __graph_get_type() (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: remove pre-alloced Codec2Codec space (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: make Codec2Codec settings optional (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: use of_property_read_u32() for rate (Jaroslav Kysela) [2125544] - ASoC: audio_graph_card2: Fix port numbers in example (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2-custom-sample.dtsi: add verbose explanation (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card: Add of_node_put() in fail path (Jaroslav Kysela) [2125544] - ASoC: test-component: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: use software node API in Atom boards (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_ssp_amp: remove 'set-but-not-used' warning (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: avoid oops in error handling (Jaroslav Kysela) [2125544] - ASoC: Intel: use software node API in SoundWire machines (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: sof_sdw: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: Drop redundant enum constant (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_ssp_amp: enable capture stream from cs35l41 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: allow HDaudio/HDMI disable (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add quirk for HP Omen 16-k0005TX (Jaroslav Kysela) [2125544] - ASoC: intel: sof_sdw: add RT711 SDCA card for MTL platform (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_pcm512x: remove unnecessary init (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_nau8825: Move quirk check to the front in late probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add support for Dell SKU 0AFF (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add support for Dell SKU 0AF0 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Perform quirk check first in card late probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Add support for mtl_mx98357_rt5682 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: fix out-of-bounds array access (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: rename RTL1019 compatible driver to rt1019p (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_nau8825: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_da7219_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ALSA: x86: intel_hdmi_audio: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ALSA: x86: intel_hdmi_audio: enable pm_runtime and set autosuspend delay (Jaroslav Kysela) [2125544] - ASoC: xtensa: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: xtensa: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: uniphier: make arrays mul and div static const, makes object smaller (Jaroslav Kysela) [2125544] - ASoC: uniphier: simplify the return expression of uniphier_aio_compr_set_params() (Jaroslav Kysela) [2125544] - ASoC: spear: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-topology: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-stream: test DMA buffer first in hw_params (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-stream: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-ipc: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dsp: report error on power-up/down (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: Drop misleading comment regarding dma_data (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: fix sof_es8336 probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: remove hard-coded SSP selection (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: reset the num_links during probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: add support for HDMI_In capture (Jaroslav Kysela) [2125544] - ASoC: Intel: common: fix typo for tplg naming (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Add support for adl_rt1019_rt5682s (Jaroslav Kysela) [2125544] - ASoC: Intel: soc-acpi: add table for HP Omen 16-k0005TX (Jaroslav Kysela) [2125544] - ASoC: Intel: soc-acpi: Add entry for sof_es8336 in ADL match table (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: ignore GpioInt when looking for speaker/headset GPIO lines (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: Fix GPIO quirks set via module option (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_da7219_max98373: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: add adl_mx98360a_cs4242 board config (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: support BT offload audio (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: skl_nau88l25_ssm4567: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: skl_nau88l25_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_rt5663_rt5514_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_rt5663_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_da7219_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: hda: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: glk_rt5682_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: cml_rt1011_rt5682: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: Use temporary variable for struct device (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: reset acpi_chan_package (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Reorganize jack detect handling (Jaroslav Kysela) [2125544] - ASoC: Intel: bxt_da7219_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Improve hw_params() debug-ability (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Improve probe() function quality (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Update file comments (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Update code indentation (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Reword driver name (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Reword prefixes of all driver members (Jaroslav Kysela) [2125544] - ASoC: Intel: Rename haswell source file to hsw_rt5640 (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst_ipc: remove redundant test (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Remove FE DAI ops (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve codec_init() quality (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve hw_params() debug-ability (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve probe() function quality (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Update file comments (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Update code indentation (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Reword driver name (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Reword prefixes of all driver members (Jaroslav Kysela) [2125544] - ASoC: Intel: Rename broadwell source file to bdw_rt286 (Jaroslav Kysela) [2125544] - ASoC: codecs: rt286: Reorganize jack detect handling (Jaroslav Kysela) [2125544] - ASoC: Intel: broadwell: Make broadwell_disable_jack() return void (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt5677: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt5650: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst_ipc: remove useless initializations (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst: remove useless initialization (Jaroslav Kysela) [2125544] - ASoC: intel: atom: Remove superfluous flush_scheduled_work() (Jaroslav Kysela) [2125544] - ASoC: Intel: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: controls: remove useless initializations (Jaroslav Kysela) [2125544] - ASoC: Intel: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: Intel: skylake: skl-pcm: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: Skylake: remove redundant re-assignments to pointer array (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: bdw: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: byt: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: cnl: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: Do snd_hdac_ext_stream_decouple() only once (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Fix potential buffer overflow by snprintf() (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: add sanity check on SSP index reported by NHLT (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: only fixup topology name if not set already (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: don't set fw_filename (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: enable dmic handling with 2 or fewer SoundWire links (Jaroslav Kysela) [2125544] - ASoC: soc-core: accept zero format at snd_soc_runtime_set_dai_fmt() (Jaroslav Kysela) [2125544] - ASoC: SOF: compress: Prevent current kernel running with older FW (Jaroslav Kysela) [2125544] - ASoC: SOF: Copy compress parameters into extended data (Jaroslav Kysela) [2125544] - ASoC: SOF: compress: Dynamically allocate pcm params struct (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: atom: don't keep a temporary string in fixup_tplg_name (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add trigger callback into sdw_callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Correct the ROM/FW state reporting code (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: MTL: remove redundant snd_sof_dsp_read() call (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: mtl: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: mtl: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Introduce skip_imr_boot flag (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: disable IMR boot when resuming from ACPI S4 and S5 states (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: IPC4: enable IMR boot (Jaroslav Kysela) [2125544] - ASoC: SOC: Intel: introduce cl_init callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Do not (wrongly) assume positive return value in IMR path (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Revisit IMR boot sequence (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: Print out the non matching ext_man magic number (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-topology: Fix clang -Wformat warning (Jaroslav Kysela) [2125544] - ASoC: SOF: remove warning on ABI checks (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Fix error code in sof_ipc4_volume_put() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-pcm: set pcm rate to dai setting (Jaroslav Kysela) [2125544] - ASoC: SOF: reduce default verbosity of IPC logs (Jaroslav Kysela) [2125544] - Revert "RedHat: ASoC: SOF: Intel: do not enable IMR boot when resuming by default" (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: fix alh_group_ida max value (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: fix wrong use of sizeof in sof_ipc4_widget_setup_comp_src() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: set domain bit based on dp domain type (Jaroslav Kysela) [2125544] - ASoC: SOF: add ipc4 SRC module support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: move ida allocate/free to widget_setup/free (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: free memories allocated in sof_ipc4_get_audio_fmt (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: check dai->private in ipc_free() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: add SoundWire/ALH aggregation support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Compile and runtime IPC version selection (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Align mt8186 clock names with dt-bindings (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Fix error code in probe (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Revise mt8195 boot flow (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: fix mt8195 StatvectorSel wrong setting (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: use pm_resume_and_get() on component probe (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: fix copy in sof_msg_inject_ipc4_dfs_write() (Jaroslav Kysela) [2125544] - ASoC: sof: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-probes: Only load the driver if IPC3 is used (Jaroslav Kysela) [2125544] - ASoC: SOF: probes: rename assign/free callbacks as startup/shutdown (Jaroslav Kysela) [2125544] - ASoC: SOF: Add cont_update_posn to platform parameters (Jaroslav Kysela) [2125544] - ASoC: SOF: pm: add definitions for S4 and S5 states (Jaroslav Kysela) [2125544] - ASoC: SOF: pm: add explicit behavior for ACPI S1 and S2 (Jaroslav Kysela) [2125544] - ASoC: SOF: debug: Clarify the IPC timeout handling path (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: remove unused variable (Jaroslav Kysela) [2125544] - ASoC: SOF: Switch to IPC generic firmware tracing (Jaroslav Kysela) [2125544] - ALSA: sc6000: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2125544] - ALSA: gus: Fix memory leaks at memory allocator error paths (Jaroslav Kysela) [2125544] - ALSA: sound/isa/gus: check the return value of kstrdup() (Jaroslav Kysela) [2125544] - ALSA: gus: Fix erroneous memory allocation (Jaroslav Kysela) [2125544] - ALSA: galaxy: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2125544] - ALSA: cs4236: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2125544] - ALSA: aloop: Fix random zeros in capture data when using jiffies timer (Jaroslav Kysela) [2125544] - ALSA: Add generic serial MIDI driver using serial bus API (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix potential buffer overflow by snprintf() (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Use lookup table to create modules (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Update AVS_FW_INIT_TIMEOUT_US declaration (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Lower UNLOAD_MULTIPLE_MODULES IPC timeout (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Replace hardcodes with SD_CTL_STREAM_RESET (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Recognize FW_CFG_RESERVED (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Use helper function to set up DMA (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Set max DMA segment size (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Block IPC channel on suspend (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Shield LARGE_CONFIG_GETs against zero payload_size (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Copy only as many RX bytes as necessary (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Relax DSP core transition timings (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Assign I2S gateway when parsing topology (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix i2s_test card name initialization (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: correct config reference for I2S test board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix parsing UUIDs in topology (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add da7219 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add max98373 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add max98357a machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add ssm4567 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add nau8825 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt5682 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt298 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt286 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt274 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add I2S-test machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add DMIC machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix build error on arc, m68k and sparc (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: APL-based platforms support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: SKL-based platforms support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Power management (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Machine board registration (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Replace link_mask usage with i2s_link_mask (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Event tracing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: D0ix power state support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Prepare for firmware tracing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Register HDAudio ext-bus operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add HDAudio machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: PCI driver implementation (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Coredump and recovery flow (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Drop direct ACPI dependency (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Depend on SND_INTEL_DSP_CONFIG (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Enable AVS driver only on x86 platforms (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: HDA PCM BE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: non-HDA PCM BE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Generic PCM FE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Generic soc component driver (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Account for libraries when booting basefw (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Configure modules according to their type (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Prepare modules before bindings them (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Arm paths after creating them (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Path state management (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Path creation and freeing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Declare path and its components (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Support link_mask formatted string (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add topology loading operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse path and path templates tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse pipeline and module tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse pplcfg and binding tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse module-extension tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add topology parsing infrastructure (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add MeteorLake machines (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Declare vendor tokens (Jaroslav Kysela) [2125544] - ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK_AON bit (Jaroslav Kysela) [2125544] - uapi: sof: abi: Bump SOF ABI for ext_data_length (Jaroslav Kysela) [2125544] - ASoC: SOF: Add two new structures for topology manifest data (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: introduce cont_update_posn in sof_ipc_stream_params struct (Jaroslav Kysela) [2125544] - ASoC: SOF: bump SOF_ABI_MINOR (Jaroslav Kysela) [2125544] - ASoC: SOF: Add header for IPC4 manifest (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: add code to parse config params for ACPDMIC dai (Jaroslav Kysela) [2125544] - ASoC: SOF: Add topology tokens for IPC4 (Jaroslav Kysela) [2125544] - ASoC: hdac_hda: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: max98504: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: adau1372: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: cx2072x: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6351: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6358: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6359: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6660: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: pcm3060: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt9120: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt700: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt715: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt715-sdca: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt1308-sdw: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt1316-sdw: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: wsa881x: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: sdw-mockup: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: lochnagar: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: lochnagar: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: tfa*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tfa9879: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cs*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wm9090: Remove redundant endianness flag (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor out the I2C and SPI bus code into separate modules (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor our MCLK and mutex initialisation (Jaroslav Kysela) [2125544] - ASoC: wm8731: Move regulator request into wm8731_init() (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor component init out of bus code (Jaroslav Kysela) [2125544] - ASoC: wm8731: Update to modern DAI terminology (Jaroslav Kysela) [2125544] - ASoC: wm2000: fix missing clk_disable_unprepare() on error in wm2000_anc_transition() (Jaroslav Kysela) [2125544] - ASoC: wm2000: Remove redundant endianness flag (Jaroslav Kysela) [2125544] - ASoC: wm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix amp gain register offset & default (Jaroslav Kysela) [2125544] - ASoC: tas2764: Correct playback volume range (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix and extend FSYNC polarity handling (Jaroslav Kysela) [2125544] - ASoC: tas2764: Add post reset delays (Jaroslav Kysela) [2125544] - ASoC: tas*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tas*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas2764: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [2125544] - ASoC: tas*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [2125544] - ASoC: tas2764: Add the driver for the TAS2764 (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix TDM mode BSEL settings (Jaroslav Kysela) [2125544] - ASoC: max*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: max98396: Implement DSP speaker monitor (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix register access for PCM format settings (Jaroslav Kysela) [2125544] - ASoC: max98396: Improve some error prints (Jaroslav Kysela) [2125544] - ASoC: max98396: add voltage regulators (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix build error for implicit function declaration (Jaroslav Kysela) [2125544] - ASoC: max98396: add amplifier driver (Jaroslav Kysela) [2125544] - ASoC: rt*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: rt1019: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: fsl: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: pistachio: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: samsung: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sunxi: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tegra: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: test-component: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: uniphier: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ad*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ak*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: alc*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: da*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: es*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: msm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: nau*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: pcm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: spdif: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ssm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sta*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: twl*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: uda*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: 88pm860x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ab8500: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ac97: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ads117x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: bd28623: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: bt-sco: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cpcap: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cq93vc: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cx20442: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: dmic: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: gtm601: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: hdac_hdmi: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ics43432: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: inno_rk3036: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: isabelle: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: jz4740: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: lm49453: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: mc13783: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ml26124: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sgtl5000: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: si476x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: stac9766: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sti-sas: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tscs42xx: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wl1273: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: zl38060: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: fsl_micfil: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: fsl_asrc_dma: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: soc-component: Remove non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: Move snd_soc_component_is_codec to be local (Jaroslav Kysela) [2125544] - ASoC: soc-component: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: core: Add new SOC_DOUBLE_SX_TLV macro (Jaroslav Kysela) [2125544] - ASoC: Remove unused hw_write_t type (Jaroslav Kysela) [2125544] - ASoC: soc.h: Add SOC_SINGLE_S_EXT_TLV macro (Jaroslav Kysela) [2125544] - ASoC: soc.h: Introduce SOC_DOUBLE_R_S_EXT_TLV() macro (Jaroslav Kysela) [2125544] - ASoC: soc.h: Add SOC_SINGLE_S_TLV() macro (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Update to modern DAI terminology (Jaroslav Kysela) [2125544] - ALSA: hda: Skip event processing for unregistered codecs (Jaroslav Kysela) [2125544] - ASoC: codecs: Add HD-Audio codec driver (Jaroslav Kysela) [2125544] - ASoC: cs42l42: Move CS42L42 register descriptions to general include (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Read System Name from ACPI _SUB to identify firmware (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add common cs35l41 enter hibernate function (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41 exit hibernate function into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs_dsp config struct into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41 fs errata into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41_set_cspl_mbox_cmd to shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Support external boost (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Add support for MeteorLake (MTL) (Jaroslav Kysela) [2125544] - treewide: Replace zero-length arrays with flexible-array members (Jaroslav Kysela) [2125544] - ASoC: SOF: add definitions for different IPC types (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: enhance debug messages (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: add sdw blob (Jaroslav Kysela) [2125544] - AsoC: SOF: ipc4-topology: Add dai_get_clk op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for SSP/DMIC DAI's (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a new IPC op for parsing topology manifest (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: init NHLT for IPC4 (Jaroslav Kysela) [2125544] - ASoC: SOF: Add ops_free (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: set the BE DAI ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-pcm: Expose sof_ipc4_set_pipeline_state() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add the dai_config op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add route_setup/route_free ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add widget_setup/widget_free ops (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Add pcm ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add control IO ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add control_setup op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing mixer widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing and preparing pga widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add prepare op for DAI type widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add prepare op for AIF type widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing DAI_IN/DAI_OUT widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing AIF_IN/AIF_OUT widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Introduce topology ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Return from dtrace_read if there is no new data available (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Add helper function to update the sdev->host_offset (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Introduce SOF_DTRACE_INITIALIZING state (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: implement pm ctx_save callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Switch to use the generic pm_ops.set_core_state (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: Add set_core_state pm_ops implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: Add initial header file for ipc4 (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Add set_core_state pm_ops implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: sof_ipc_pm_ops: Add support for DSP core power management (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 suspend check dsp idle (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 modify dram type as non-cache (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add shared_size for mediatek common chip information (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: revise mt8195 clock sequence (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Add SOF pm ops callback for Renoir (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Fix reversed if statement (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Propagate write errors correctly (Jaroslav Kysela) [2125544] - ASoC: SOF: Fix potential NULL pointer dereference (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-ipc-flood-test: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: remove duplicate include in mt8195.c (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8195 debug dump (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mediatek common debug dump (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Move dtrace related variables local from sof_dev (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce opaque storage of private data for firmware tracing (Jaroslav Kysela) [2125544] - ASoC: SOF: Modify the host trace_init parameter list to include dmab (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Move host ops wrappers from generic header to private (Jaroslav Kysela) [2125544] - ASoC: SOF: Clone the trace code to ipc3-dtrace as fw_tracing implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: Rename dtrace_is_supported flag to fw_trace_is_supported (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce IPC independent ops for firmware tracing support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Cap the rmaining to count in IPC4 mode (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 ipc support (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add ipc support for mt8195 (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: HDA: Set up sof_ipc4_fw_data for IPC4 (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Add FW loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add IPC4 private header (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: HDA: Set IPC4-specific DSP ops for CaVS platforms (Jaroslav Kysela) [2125544] - ASoC: SOF: trace: The dtrace is only available with SOF_IPC (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: IPC flood test can only work with SOF_IPC (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Add support for IPC4 messages (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Separate the message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add support IPC4 message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add API to get the ipc_type (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-probes: Query the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Query the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add API to get the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: Add support for mandatory message handling functionality (Jaroslav Kysela) [2125544] - ASoC: SOF: Add rx_data pointer to snd_sof_ipc_msg struct (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Remove the ipc3-ops.h header file (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: fix missing pci_release_regions() on error in sof_pci_probe() (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Call optional query_fw_configuration on first boot (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Remove snd_sof_parse_module_memcpy() as it is not used (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: bdw/byt/pci-tng: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: imx: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: renoir: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Switch to use the fw_loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add check for fw_loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: Implement firmware parsing and loading (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce IPC dependent ops for firmware handling, loading (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a prepare op to IPC topology widget ops (Jaroslav Kysela) [2125544] - ASoC: SOF: clarify use of widget complete flag (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Skip parsing DAI link tokens if not needed (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: remove unnecessary function declaration (Jaroslav Kysela) [2125544] - ASoC: SOF: Add two new fields to struct snd_sof_widget (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a route_free op in struct sof_ipc_tplg_ops (Jaroslav Kysela) [2125544] - ASoC: SOF: expose a couple of functions (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: Move the call to snd_sof_pcm_platform_hw_params() (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: Set up widgets from source to sink (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: reset route status before freeing widget (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a new op to set up volume table (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Fix allyesconfig build error (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 change ipc timeout as 1 second (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-ipc-msg-injector: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: debug: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: control: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add DSP system PM callback for mt8186 (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 dsp clock support (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 sof fw loader and dsp ops (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 hardware support (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Remove the old fw_ready related code (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: imx: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Do not check for the fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Add local implementation for handling fw_ready message (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: protect hw_params against successive calls (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add helper for link DMA cleanups (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: reset dma_data and release stream (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: improve suspend case (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: move code to deal with hda dai/dailink suspend (Jaroslav Kysela) [2125544] - ASOC: SOF: Intel: hda-dai: add hda_dai_hw_free_ipc() helper (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: flag errors on pipeline teardown (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: regroup dai and link DMA operations (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: split link DMA and dai operations (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: use snd_soc_dai_get_widget() helper (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: simplify hda_dai_widget_update() prototype (Jaroslav Kysela) [2125544] - ASOC: SOF: Intel: hda-dai: consistent naming for HDA DAI and HDA link DMA (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Add IPC-specific dai ops for IPC3 (Jaroslav Kysela) [2125544] - ASoC: SOF: remove incorrect clearing of prepared flag (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: simplify NHLT handling (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Check w->sname validity once in sof_connect_dai_widget() (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: remove useless assignment (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-tgl: add RPL-P support (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-tgl: add ADL-PS support (Jaroslav Kysela) [2125544] - ASOC: SOF: pci: add ipc_type override for Intel IPC4 tests (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: don't use the community key on APL Chromebooks (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Use dedicated MBOX for ACP and PSP communication (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Add psp_mbox_ready() and psp_send_cmd() callback (Jaroslav Kysela) [2125544] - ASoC: SOF: using pm_runtime_resume_and_get to simplify the code (Jaroslav Kysela) [2125544] - ASoC: SOF: Kconfig: Make SND_SOC_SOF_HDA_PROBES tristate (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add IP identifier (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: expose some codeloader functions (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Define rom_status_reg in sof_intel_dsp_desc (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: define check_ipc_irq op (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: use BIT() macros for consistency (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: move HDA_CL_STREAM_FORMAT definition to header (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: use common ops across platforms (Jaroslav Kysela) [2125544] - ASoC: SOF: remove const qualifier for 'struct snd_sof_dsp_ops' (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: preserve topology filename override in nocodec mode (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: add parameter to override topology filename (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: add parameter to override firmware filename (Jaroslav Kysela) [2125544] - ASoC: SOF: add IPC-dependent file names (Jaroslav Kysela) [2125544] - ASoC: SOF: add default IPC capability and file paths (Jaroslav Kysela) [2125544] - ASoC: SOF: add path indirection to each IPC type (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Check the bar size before remapping (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Move the ipc_set_get_comp_data() local to ipc3-control (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: Use the widget_kcontrol_setup ops for kcontrol set up (Jaroslav Kysela) [2125544] - ASoC: SOF: Add widget_kcontrol_setup control ops for IPC3 (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Switch over to use the rx_msg ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Switch over to use the tx_msg and set_get_data ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use the get_reply ops in snd_sof_ipc_get_reply() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add check for mandatory IPC message handling ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Separate the ops checks by functions/topics (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement rx_msg IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the get_reply IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the set_get_data IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Use sof_ipc3_tx_msg() internally for message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the tx_msg IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add high level IPC IO callback definitions to ipc_ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add helper function to prepare and send an IPC message (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 add shutdown callback (Jaroslav Kysela) [2125544] - ASoC: SOF: OF: Add shutdown callback for SOF OF device (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Avoid open coded arithmetic in memory allocation (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: use new sound control LED layer (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove redundant return statements (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove header from struct snd_sof_ipc_msg (Jaroslav Kysela) [2125544] - ASoC: SOF: Drop 'header' parameter from tx_message() API (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use msg->reply_data directly in snd_sof_ipc_get_reply() (Jaroslav Kysela) [2125544] - ASoC: SOF: disable dma trace in s0ix (Jaroslav Kysela) [2125544] - ASoC: SOF: extend the interface to stop DMA trace (Jaroslav Kysela) [2125544] - ASoC: SOF: Drop support for mapped control data (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use ipc->max_payload_size for message/reply size checking (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add max_payload_size field in struct snd_sof_ipc (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove dmab and dmab_bdl from snd_sof_dev struct (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-loader: Use local snd_dma_buffer (Jaroslav Kysela) [2125544] - ASoC: amd: acp: add missing platform_device_unregister() in acp_pci_probe() (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Fix initialization of ext_intr_stat1 in i2s_irq_handler() (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Use non-legacy DAI naming for cs35l41 (Jaroslav Kysela) [2125544] - ASoC: amd: enable RPL Platform acp drivers build (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform pci driver pm-ops (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform init/de-init functions (Jaroslav Kysela) [2125544] - ASoC: amd: add ACP PCI driver for RPL platform (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform acp header file (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add error handling cases (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Modify const resource struct variable to generic (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Drop superfluous mmap callback (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Modify local variables name to generic (Jaroslav Kysela) [2125544] - ASoC: amd: yc: Decrease level of error message (Jaroslav Kysela) [2125544] - ASoC: amd: yc: add new YC platform varaint support (Jaroslav Kysela) [2125544] - ASoC: amd: fix Jadeite kconfig warning and build errors (Jaroslav Kysela) [2125544] - ASoC: amd: Fix error pointer dereference (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add legacy audio driver support for Rembrandt platform (Jaroslav Kysela) [2125544] - ASoC: amd: acp: ACP code generic to support newer platforms (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Remove rt1019_1 codec conf from machine driver (Jaroslav Kysela) [2125544] - ASoC: amd: Remove duplicated include in acp-es8336.c (Jaroslav Kysela) [2125544] - ASoC: amd: fix for variable set but not used warning (Jaroslav Kysela) [2125544] - ASoC: amd: drop machine driver remove function (Jaroslav Kysela) [2125544] - ASoC: amd: remove unused header file inclusion (Jaroslav Kysela) [2125544] - ASoC: amd: acp-es8336: use static variables (Jaroslav Kysela) [2125544] - ASoC: amd: fix ACPI dependency compile errors and warnings (Jaroslav Kysela) [2125544] - ASoC: amd: enable machine driver build for Jadeite platform (Jaroslav Kysela) [2125544] - ASoC: amd: add Machine driver for Jadeite platform (Jaroslav Kysela) [2125544] - ASoC: amd: add I2S MICSP instance support (Jaroslav Kysela) [2125544] - ASoC: amd: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Fix error handling in .remove() (Jaroslav Kysela) [2125544] - ASoC: amd: acp: fix typo in comment (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add support for rt5682s and rt1019 card with hs instance (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add support for nau8825 and max98360 card (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Rename set_fmt_new back to set_fmt (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Set Speaker enable/disable pin through rt1019 codec driver. (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Set Speaker enable/disable pin through rt1019 codec driver (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Remove duplicate include files (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add pm ops callback in machine driver (Jaroslav Kysela) [2125544] - ASoC: soc-utils: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: topology: Drop superfluous check of CONFIG_SND_CTL_VALIDATION (Jaroslav Kysela) [2125544] - ASoC: topology: Rename soc_tplg_init_kcontrol() function (Jaroslav Kysela) [2125544] - ASoC: topology: Correct error message (Jaroslav Kysela) [2125544] - ASoC: topology: Rename SOC_TPLG_PASS_MIXER to _CONTROL (Jaroslav Kysela) [2125544] - ASoC: topology: Return bool instead of int (Jaroslav Kysela) [2125544] - ASoC: topology: Remove unnecessary looping (Jaroslav Kysela) [2125544] - ASoC: topology: Use for loop instead of while (Jaroslav Kysela) [2125544] - ASoC: topology: KUnit: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: topology: KUnit: Followup prototype change of snd_soc_unregister_card() (Jaroslav Kysela) [2125544] - ASoC: DPCM: Don't pick up BE without substream (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: demote warnings on non-atomic BE connection (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: fix BE transition for TRIGGER_START (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: improve BE transition for TRIGGER_START (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: improve BE transition for PAUSE_RELEASE (Jaroslav Kysela) [2125544] - ASoC: ops: Fix integer detection for when max possible values > 1 (Jaroslav Kysela) [2125544] - ASoC: ops: Fix boolean/integer detection for simple controls (Jaroslav Kysela) [2125544] - ASoC: ops: Don't modify the driver's plaform_max when reading state (Jaroslav Kysela) [2125544] - ASoC: ops: Remove unneeded delay.h inclusion (Jaroslav Kysela) [2125544] - ASoC: ops: Clarify snd_soc_info_volsw_sx() (Jaroslav Kysela) [2125544] - ASoC: soc-generic-dmaengine-pcm: Use default config when none is given (Jaroslav Kysela) [2125544] - ASoC: dapm: Move stereo autodisable check (Jaroslav Kysela) [2125544] - ASoC: soc-dai: Remove set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: soc-core.c: share code for snd_soc_of_get_dai_link_cpus/codecs() (Jaroslav Kysela) [2125544] - ASoC: soc-core.c: fixup snd_soc_of_get_dai_link_cpus() (Jaroslav Kysela) [2125544] - ASoC: core: Switch core to new DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: core: Make snd_soc_unregister_card() return void (Jaroslav Kysela) [2125544] - ASoC: core: Always send the CPU DAI a direct clock specifier (Jaroslav Kysela) [2125544] - ASoC: core: Add set_fmt_new callback that directly specifies provider (Jaroslav Kysela) [2125544] - ASoC: core: Pass legacy_dai_naming flag directly (Jaroslav Kysela) [2125544] - ASoC: core: Correct spelling fliped -> flipped (Jaroslav Kysela) [2125544] - ASoC: soc-core: remove always-false path (Jaroslav Kysela) [2125544] - ASoC: Introduce snd_soc_of_get_dai_link_cpus (Jaroslav Kysela) [2125544] - ASoC: soc-component: Update handling to component delays (Jaroslav Kysela) [2125544] - ASoC: Introduce 'fixup_controls' card method (Jaroslav Kysela) [2125544] - ASoC: soc-card: Create jack kcontrol without pins (Jaroslav Kysela) [2125544] - ALSA: Replace acpi_bus_get_device() (Jaroslav Kysela) [2125544] - Revert "ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations" (Jaroslav Kysela) [2125544] - ALSA: hda: beep: Simplify keep-power-at-enable behavior (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Don't skip notification handling during PM operation (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Limit the maximal count of PCM devices to 8 (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: ELD procfs - print the codec NIDs (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Simplify the pcm_idx condition in hdmi_pcm_setup_pin() (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Fix the converter allocation for the silent stream (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: change type for the 'assigned' variable (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: Move structs out of #define block (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add a quirk for HP OMEN 16 (8902) mute LED (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Fix the converter reuse for the silent stream (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for ASUS GA503R laptop (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Re-arrange quirk table entries (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop (Jaroslav Kysela) [2125544] - ALSA: hda: Fix Nvidia dp infoframe (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Huawei WRT-WX9 (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: set depop delay for tegra (Jaroslav Kysela) [2125544] - ALSA: hda: add Intel 5 Series / 3400 PCI DID (Jaroslav Kysela) [2125544] - ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Fix out of bounds access in snd_emu10k1_pcm_channel_alloc() (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: Align BDL entry to 4KB boundary (Jaroslav Kysela) [2125544] - ALSA: hda/sigmatel: Fix unused variable warning for beep power change (Jaroslav Kysela) [2125544] - ALSA: hda/sigmatel: Keep power up while beep is enabled (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add speaker AMP init for Samsung laptops with ALC298 (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Clevo NS50PU, NS70PU (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support new Dolphin Variants (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Lenovo Yoga7 14IAL7 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Clarify support for CSC3551 without _DSD Properties (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirks for ASUS Zenbooks using CS35L41 (Jaroslav Kysela) [2125544] - ALSA: hda: Fix crash due to jack poll in suspend (Jaroslav Kysela) [2125544] - ALSA: hda/cirrus - support for iMac 12,1 model (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add a quirk for HP OMEN 15 (8786) mute LED (Jaroslav Kysela) [2125544] - ALSA: hda/conexant: Add quirk for LENOVO 20149 Notebook model (Jaroslav Kysela) [2125544] - ALSA: ice1712: remove redundant assignment to new (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for another Asus K42JZ model (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for HP Spectre x360 15-eb0xxx (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Clevo NV45PZ (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Lenovo Yoga9 14IAP7 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support CLSA0101 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Use the CS35L41 HDA internal define (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable speaker and mute LEDs for HP laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix build error unused-function (Jaroslav Kysela) [2125544] - ALSA: asihpi: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: asihpi: Fix typo in comments (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Fix typo in comments (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add module parameter to control firmware load (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Firmware switching and reloading (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add defaulted values into dsp bypass config sequence (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add fw id strings (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Read Speaker Calibration data from UEFI variables (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Hibernation during Suspend (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Speaker ID for laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support multiple load paths for firmware (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support reading subsystem id from ACPI (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Save Subsystem ID inside CS35L41 Driver (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add initial DSP support and firmware loading (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Save codec object inside component struct (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add apis to write the controls directly (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add Library to support CS_DSP ALSA controls (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Consolidate selections under SND_HDA_SCODEC_CS35L41 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Drop wrong use of ACPI_PTR() (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Don't dereference fwnode handle (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Improve dev_err_probe() messaging (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix comments wrt serial-multi-instantiate reference (Jaroslav Kysela) [2125544] - ALSA: hda: Fix put_device() inconsistency in error path (Jaroslav Kysela) [2125544] - ALSA: hda: Make device usage_count consistent across subsequent probing (Jaroslav Kysela) [2125544] - ALSA: hda: Fix null-ptr-deref when i915 fails and hdmi is denylisted (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: change cs8409_fixups v.pins initializers to static (Jaroslav Kysela) [2125544] - ASoC: doc: Update dead links (Jaroslav Kysela) [2125544] - ALSA: hda/via: Delete does not require return (Jaroslav Kysela) [2125544] - ALSA: ctxfi: fix typo in comment (Jaroslav Kysela) [2125544] - ALSA: cs5535audio: fix typo in comment (Jaroslav Kysela) [2125544] - ALSA: lola: Bounds check loop iterator against streams array size (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Amp Name based on channel and index (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Enable GPIO2 Interrupt for CLSA0100 laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Support for Interrupts (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Remove Set Channel Map api from binding (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Set Speaker Position for CLSA0100 Laptop (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix error in spi cs35l41 hda driver name (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Add Speaker Playback Switch for Warlock (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Add Speaker Playback Switch for Cyborg (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support new Odin Variants (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support manual mode detection for CS42L42 (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Use general cs42l42 include in cs8409 hda driver (Jaroslav Kysela) [2125544] - ALSA: hdsp: remove redundant assignment to pointer kctl (Jaroslav Kysela) [2125544] - ALSA: hda/conexant: add a new hda codec SN6140 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Move external boost handling to lib for ASoC use (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Handle all external boost setups the same way (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Reorganize log for playback actions (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Remove cs35l41_hda_reg_sequence struct (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Move boost config to initialization code (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Mute the device before shutdown (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Put the device into safe mode for external boost (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Boost type flag (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Always configure the DAI (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix I2S params comments (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Move cs35l41_gpio_config to shared lib (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Check hw_config before using it (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Unify hardware configuration (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: Enable Jack poll for tegra (Jaroslav Kysela) [2125544] - ALSA: hda: Jack detection poll in suspend state (Jaroslav Kysela) [2125544] - ALSA: echoaudio: remove redundant assignment to variable i (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Stop using iommu_present() (Jaroslav Kysela) [2125544] - ALSA: hda: intel-dsp-config: add missing RaptorLake PCI IDs (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: Correct the handling of fmt_config flexible array (Jaroslav Kysela) [2125544] - ALSA: hda: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: hda: Remove unused macro definition (Jaroslav Kysela) [2125544] - ALSA: hda: Reset all SIE bits in INTCTL (Jaroslav Kysela) [2125544] - tracing: ALSA: hda: Remove string manipulation out of the fast path (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ALSA: hda: intel-dspcfg: use SOF for UpExtreme and UpExtreme11 boards (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Properly refcounting clock rate (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Clear fixed clock rate at closing EP (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Fix an out-of-bounds bug in __snd_usb_parse_audio_interface() (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Register card again for iface over delayed_register option (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Inform the delayed registration more properly (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add quirk for LH Labs Geek Out HD Audio 1V5 (Jaroslav Kysela) [2125544] - ALSA: usb-audio: make read-only array marker static const (Jaroslav Kysela) [2125544] - ALSA: usb-audio: More comprehensive mixer map for ASUS ROG Zenith II (Jaroslav Kysela) [2125544] - ALSA: scarlett2: Add Focusrite Clarett+ 8Pre support (Jaroslav Kysela) [2125544] - ALSA: line6: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: hiface: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: usb/6fire: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add quirk for Behringer UMC202HD (Jaroslav Kysela) [2125544] - ALSA: bcd2000: Fix a UAF bug on the error path of probing (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Use atomic_try_cmpxchg in ep_state_update (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add endianness annotations (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Turn off 'manual mode' on Dell dock (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Support jack detection on Dell dock (Jaroslav Kysela) [2125544] - ALSA: usb-audio: US16x08: Move overflow check before array access (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Cancel pending work at closing a MIDI substream (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add mixer mapping for Gigabyte B450/550 Mobos (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Fix wrong kfree issue in snd_usb_endpoint_free_all (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Refcount multiple accesses on the single clock (Jaroslav Kysela) [2125544] - mfd: arizona-spi: Add Android board ACPI table handling (Jaroslav Kysela) [2125544] - mfd: arizona-spi: Split Windows ACPI init code into its own function (Jaroslav Kysela) [2125544] - mfd: arizona: Add missing statics to the of_match_tables (Jaroslav Kysela) [2125544] - firmware: cs_dsp: Add memory chunk helpers (Jaroslav Kysela) [2125544] - firmware: cs_dsp: Add pre_stop callback (Jaroslav Kysela) [2125544] - regmap: sdw: add required header files (Jaroslav Kysela) [2125544] - regmap: soundwire: remove unused header mod_devicetable.h (Jaroslav Kysela) [2125544] - regmap: Constify static regmap_bus structs (Jaroslav Kysela) [2125544] - soundwire: peripheral: remove useless ops pointer (Jaroslav Kysela) [2125544] - soundwire: intel: use pm_runtime_resume() on component probe (Jaroslav Kysela) [2125544] - soundwire: qcom: fix device status array range (Jaroslav Kysela) [2125544] - soundwire: qcom: remove duplicate reset control get (Jaroslav Kysela) [2125544] - soundwire: Intel: add trigger callback (Jaroslav Kysela) [2125544] - soundwire: qcom: Enable software clock gating requirement flag (Jaroslav Kysela) [2125544] - soundwire: qcom: Check device status before reading devid (Jaroslav Kysela) [2125544] - soundwire: qcom: Add flag for software clock gating check (Jaroslav Kysela) [2125544] - soundwire: revisit driver bind/unbind and callbacks (Jaroslav Kysela) [2125544] - soundwire: bus_type: fix remove and shutdown support (Jaroslav Kysela) [2125544] - soundwire: intel: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: qcom: soundwire: Add support for controlling audio CGCR from HLOS (Jaroslav Kysela) [2125544] - soundwire: qcom: adjust autoenumeration timeout (Jaroslav Kysela) [2125544] - soundwire: qcom: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: intel: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: cadence: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: bus: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: qcom: return error when pm_runtime_get_sync fails (Jaroslav Kysela) [2125544] - soundwire: bus: pm_runtime_request_resume on peripheral attachment (Jaroslav Kysela) [2125544] - soundwire: intel: disable WAKEEN in pm_runtime resume (Jaroslav Kysela) [2125544] - soundwire: cadence: recheck device0 attachment after status change (Jaroslav Kysela) [2125544] - soundwire: qcom: Add compatible name for v1.6.0 (Jaroslav Kysela) [2125544] - soundwire: stream: Fix error return code in do_bank_switch() (Jaroslav Kysela) [2125544] - soundwire: qcom: fix an error message in swrm_wait_for_frame_gen_enabled() (Jaroslav Kysela) [2125544] - soundwire: qcom: use __maybe_unused for swrm_runtime_resume() (Jaroslav Kysela) [2125544] - soundwire: qcom: constify static struct qcom_swrm_data global variables (Jaroslav Kysela) [2125544] - soundwire: qcom: add in-band wake up interrupt support (Jaroslav Kysela) [2125544] - soundwire: qcom: add runtime pm support (Jaroslav Kysela) [2125544] - soundwire: Replace acpi_bus_get_device() (Jaroslav Kysela) [2125544] - ALSA: Add snd_pcm_direction_name() helper (Jaroslav Kysela) [2125544] - ALSA: core: Fix double-free at snd_card_new() (Jaroslav Kysela) [2125544] - ALSA: hda: Once again fix regression of page allocations with IOMMU (Jaroslav Kysela) [2125544] - ALSA: pcm: oss: Fix race at SNDCTL_DSP_SYNC (Jaroslav Kysela) [2125544] - ALSA: control: Re-order bounds checking in get_ctl_id_hash() (Jaroslav Kysela) [2125544] - ALSA: control: Fix an out-of-bounds bug in get_ctl_id_hash() (Jaroslav Kysela) [2125544] - ALSA: seq: Fix data-race at module auto-loading (Jaroslav Kysela) [2125544] - ALSA: seq: oss: Fix data-race for max_midi_devs access (Jaroslav Kysela) [2125544] - ALSA: memalloc: Revive x86-specific WC page allocations again (Jaroslav Kysela) [2125544] - ALSA: info: Fix llseek return value when using callback (Jaroslav Kysela) [2125544] - ALSA: pcm: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: core: Replace scnprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: control-led: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: control: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: pcm: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: timer: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: core: Add async signal helpers (Jaroslav Kysela) [2125544] - ALSA: core: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: memalloc: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: control: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: compress: Fix kernel doc warnings (Jaroslav Kysela) [2125544] - ALSA: dmaengine: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: pcm: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: compress: Enable kernel doc markers for some functions (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Take buffer refcount while draining output (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Check stream state at exported functions (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Take open_mutex around parameter changes (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Move lock to snd_rawmidi_substream (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Make internal functions local static (Jaroslav Kysela) [2125544] - ALSA: control: Add input validation (Jaroslav Kysela) [2125544] - ALSA: control: Drop superfluous ifdef CONFIG_SND_CTL_DEBUG (Jaroslav Kysela) [2125544] - ALSA: control: Rename CONFIG_SND_CTL_VALIDATION to CONFIG_SND_CTL_DEBUG (Jaroslav Kysela) [2125544] - ALSA: control: Use xarray for faster lookups (Jaroslav Kysela) [2125544] - ALSA: seq: replace ternary operator with max() (Jaroslav Kysela) [2125544] - ALSA: pcm: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2125544] - pinctrl: amd: Don't save/restore interrupt status and wake status bits (Prarit Bhargava) [2130059] - x86/paravirt: Add a dummy __x86_paravirt_patch_template() function (Waiman Long) [2144161] - x86/paravirt: Fix kABI breakage in struct pv_mmu_ops (Waiman Long) [2144161]- can: af_can: fix NULL pointer dereference in can_rx_register() (Ivan Vecera) [2136823] - net: disable preemption in dev_core_stats_XXX_inc() helpers (Ivan Vecera) [2136823] - net: introduce CAN specific pointer in the struct net_device (Ivan Vecera) [2136823] - can: af_can: can_pernet_exit(): no need to iterate over and cleanup registered CAN devices (Ivan Vecera) [2136823] - net: add per-cpu storage and net->core_stats (Ivan Vecera) [2136823] - tun: switch to net core provided statistics counters (Ivan Vecera) [2136823] - tun: switch to u64_stats_t (Ivan Vecera) [2136823] - ceph: avoid putting the realm twice when decoding snaps fails (Xiubo Li) [2139881] - powerpc/64/kdump: Limit kdump base to 512MB (Mamatha Inamdar) [2132921] - ice: virtchnl rss hena support (Petr Oros) [2136516] - Documentation/admin-guide: Document nomodeset kernel parameter (Jocelyn Falempe) [2143952] - drm: Move nomodeset kernel parameter to the DRM subsystem (Jocelyn Falempe) [2143952] - usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - sound: usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - net: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - media: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - Input: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - HID: usbhid: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - usb: deprecate the third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - scsi: smartpqi: Change version to 2.1.20-035 (Don Brace) [2116976] - scsi: smartpqi: Initialize feature section info (Don Brace) [2116976] - scsi: smartpqi: Add controller cache flush during rmmod (Don Brace) [2116976] - scsi: smartpqi: Correct device removal for multi-actuator devices (Don Brace) [2116976] - scsi: smartpqi: Change sysfs raid_level attribute to N/A for controllers (Don Brace) [2116976] - scsi: smartpqi: Correct max LUN number (Don Brace) [2116976] - scsi: smartpqi: Add new controller PCI IDs (Don Brace) [2116976] - scsi: smartpqi: Convert to host_tagset (Don Brace) [2116976] - scsi: smartpqi: Stop using the SCSI pointer (Don Brace) [2116976] - smartpqi: Change request pointer to scsi_cmd_to_rq (Don Brace) [2116976] - scsi: smartpqi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Don Brace) [2116976] - EDAC/skx_common: Make output format similar (Aristeu Rozanski) [2124915] - EDAC/skx_common: Use driver decoder first (Aristeu Rozanski) [2124915] - ptp: introduce helpers to adjust by scaled parts per million (Izabela Bakollari) [2141639] - ptp: add missing documentation for parameters (Izabela Bakollari) [2141639] - mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context. (Nico Pache) [2144559] - scsi: target: loop: Fix handling of aborted TMRs (Maurizio Lombardi) [2141713] - ceph: fix NULL pointer dereference for req->r_session (Xiubo Li) [2137955] - ceph: Use kcalloc for allocating multiple elements (Xiubo Li) [2137955] - net/mlx5e: TC, Reject forwarding from internal port to internal port (Mohammad Kabat) [2131345] - md/raid1: stop mdx_raid1 thread when raid1 array run failed (Nigel Croxon) [2143270] - md: fix a crash in mempool_free (Nigel Croxon) [2143257] - md/raid0, raid10: Don't set discard sectors for request queue (Nigel Croxon) [2143250] - sgx: use ->f_mapping... (Vladis Dronov) [2130210] - x86/sgx: Improve comments for sgx_encl_lookup/alloc_backing() (Vladis Dronov) [2130210] - x86/sgx: Handle VA page allocation failure for EAUG on PF. (Vladis Dronov) [2130210] - x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd (Vladis Dronov) [2130210] - selftests/sgx: Ignore OpenSSL 3.0 deprecated functions warning (Vladis Dronov) [2130210] - x86/sgx: Set active memcg prior to shmem allocation (Vladis Dronov) [2130210] - x86/sgx: Drop 'page_index' from sgx_backing (Vladis Dronov) [2130210] - selftests/sgx: Page removal stress test (Vladis Dronov) [2130210] - selftests/sgx: Test reclaiming of untouched page (Vladis Dronov) [2130210] - selftests/sgx: Test invalid access to removed enclave page (Vladis Dronov) [2130210] - selftests/sgx: Test faulty enclave behavior (Vladis Dronov) [2130210] - selftests/sgx: Test complete changing of page type flow (Vladis Dronov) [2130210] - selftests/sgx: Introduce TCS initialization enclave operation (Vladis Dronov) [2130210] - selftests/sgx: Introduce dynamic entry point (Vladis Dronov) [2130210] - selftests/sgx: Test two different SGX2 EAUG flows (Vladis Dronov) [2130210] - selftests/sgx: Add test for TCS page permission changes (Vladis Dronov) [2130210] - selftests/sgx: Add test for EPCM permission changes (Vladis Dronov) [2130210] - Documentation/x86: Introduce enclave runtime management section (Vladis Dronov) [2130210] - x86/sgx: Free up EPC pages directly to support large page ranges (Vladis Dronov) [2130210] - x86/sgx: Support complete page removal (Vladis Dronov) [2130210] - x86/sgx: Support modifying SGX page type (Vladis Dronov) [2130210] - x86/sgx: Tighten accessible memory range after enclave initialization (Vladis Dronov) [2130210] - x86/sgx: Support adding of pages to an initialized enclave (Vladis Dronov) [2130210] - x86/sgx: Support restricting of enclave page permissions (Vladis Dronov) [2130210] - x86/sgx: Support VA page allocation without reclaiming (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_page_alloc() (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_{grow,shrink}() (Vladis Dronov) [2130210] - x86/sgx: Keep record of SGX page type (Vladis Dronov) [2130210] - x86/sgx: Create utility to validate user provided offset and length (Vladis Dronov) [2130210] - x86/sgx: Make sgx_ipi_cb() available internally (Vladis Dronov) [2130210] - x86/sgx: Move PTE zap code to new sgx_zap_enclave_ptes() (Vladis Dronov) [2130210] - x86/sgx: Rename sgx_encl_ewb_cpumask() as sgx_encl_cpumask() (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_ewb_cpumask() (Vladis Dronov) [2130210] - x86/sgx: Support loading enclave page without VMA permissions check (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EAUG function (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EMODT function (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EMODPR function (Vladis Dronov) [2130210] - x86/sgx: Add short descriptions to ENCLS wrappers (Vladis Dronov) [2130210] - x86/sgx: Ensure no data in PCMD page after truncate (Vladis Dronov) [2130210] - x86/sgx: Fix race between reclaimer and page fault handler (Vladis Dronov) [2130210] - x86/sgx: Obtain backing storage page with enclave mutex held (Vladis Dronov) [2130210] - x86/sgx: Mark PCMD page as dirty when modifying contents (Vladis Dronov) [2130210] - x86/sgx: Disconnect backing page references from dirty status (Vladis Dronov) [2130210] - HID: intel-ish-hid: ipc: Add Meteor Lake PCI device ID (Tony Camuso) [2132441] - hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message (Tony Camuso) [2132441] - HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo (Tony Camuso) [2132441] - ID: intel-ish-hid: hid-client: drop unexpected word "the" in the comments (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: use time_before to replace "jiffies < a" (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: add ADL and RPL device id (Tony Camuso) [2132441] - HID: intel-ish-hid: Use dma_alloc_coherent for firmware update (Tony Camuso) [2132441] - HID: intel-ish-hid: ishtp-fw-loader: Fix a kernel-doc formatting issue (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: Specify no cache snooping on TGL and ADL (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: only enable IRQ wakeup when requested (Tony Camuso) [2132441] - HID: intel-ish-hid: fix module device-id handling (Tony Camuso) [2132441] - HID: intel-ish-hid: hid-client: only load for matching devices (Tony Camuso) [2132441] - HID: intel-ish-hid: fw-loader: only load for matching devices (Tony Camuso) [2132441] - HID: intel-ish-hid: use constants for modaliases (Tony Camuso) [2132441] - s390/pci: add missing EX_TABLE entries to __pcistg_mio_inuser()/__pcilg_mio_inuser() (Tobias Huschle) [2141963] - s390/futex: add missing EX_TABLE entry to __futex_atomic_op() (Tobias Huschle) [2141963] - s390/uaccess: add missing EX_TABLE entries to __clear_user() (Tobias Huschle) [2141963] - net: usb: ax88179_178a: Fix packet receiving (Jose Ignacio Tornos Martinez) [2142725] {CVE-2022-2964} - net: usb: ax88179_178a: Fix out-of-bounds accesses in RX fixup (Jose Ignacio Tornos Martinez) [2142725] {CVE-2022-2964} - drm/i915/rpl-p: Add PCI IDs (Jocelyn Falempe) [2115880] - Revert "dma-buf: remove useless FMODE_LSEEK flag" (Jocelyn Falempe) [2115880] - drm/amd/display: Increase stack frame size limit for a few files. (Jocelyn Falempe) [2115880] - drm_crtc.h is missing include/linux/slab.h (Jocelyn Falempe) [2115880] - drm/amd/display: remove a duplicated declaration (Jocelyn Falempe) [2115880] - Revert "mm: shrinkers: provide shrinkers with names" (Jocelyn Falempe) [2115880] - Revert "drm/amdkfd: add SPM support for SVM" (Jocelyn Falempe) [2115880] - Merge DRM changes from upstream v5.19..v6.0 (Jocelyn Falempe) [2115880] - drm/i915/gvt: IMPORT_MODULE_NS workaround (Jocelyn Falempe) [2115880] - Replace EXPORT_SYMBOL_NS_GPL with EXPORT_SYMBOL_GPL (Jocelyn Falempe) [2115880] - Revert "vfio/gvt: Fix open/close when multiple device FDs are open" (Michel Dänzer) [2115880] - Revert "vfio/mdev: Pass in a struct vfio_device * to vfio_dma_rw()" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: convert to use vfio_register_emulated_iommu_dev" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: merge gvt.c into kvmgvt.c" (Jocelyn Falempe) [2115880] - Revert "vfio/mdev: Remove mdev_parent_ops" (Jocelyn Falempe) [2115880] - Revert "vfio: Make vfio_(un)register_notifier accept a vfio_device" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: Change from vfio_group_(un)pin_pages to vfio_(un)pin_pages" (Jocelyn Falempe) [2115880] - Revert "vfio: remove VFIO_GROUP_NOTIFY_SET_KVM" (Jocelyn Falempe) [2115880] - Revert "i915: Call aops write_begin() and write_end() directly" (Jocelyn Falempe) [2115880] - Merge DRM changes from upstream v5.18..v5.19 (Jocelyn Falempe) [2115880] - crypto: testmgr - disallow plain cbcmac(aes) and ghash in FIPS mode (Vladis Dronov) [2107595] - crypto: set the required FIPS_INTERNAL flag for gcm and ccm (Vladis Dronov) [2107595] - crypto: seqiv - flag instantiations as FIPS compliant (Vladis Dronov) [2107595] - crypto: xts - restrict key lengths to approved values in FIPS mode (Vladis Dronov) [2107595] - crypto: api - allow algs only in specific constructions in FIPS mode (Vladis Dronov) [2107595] - crypto: api - check for ERR pointers in crypto_destroy_tfm() (Vladis Dronov) [2107595] - crypto: api - Fix use-after-free and race in crypto_spawn_alg (Vladis Dronov) [2107595] - crypto: algapi - Avoid spurious modprobe on LOADED (Vladis Dronov) [2107595] - crypto: api - Retain alg refcount in crypto_grab_spawn (Vladis Dronov) [2107595] - crypto: api - Do not zap spawn->alg (Vladis Dronov) [2107595] - crypto: api - Fix race condition in crypto_spawn_alg (Vladis Dronov) [2107595] - crypto: api - Check spawn->alg under lock in crypto_drop_spawn (Vladis Dronov) [2107595] - crypto: algapi - reject NULL crypto_spawn::inst (Vladis Dronov) [2107595] - iavf: remove INITIAL_MAC_SET to allow gARP to work properly (Stefan Assmann) [1938635] - mm, slab: remove duplicate kernel-doc comment for ksize() (Michal Schmidt) [2143367] - slab: Introduce kmalloc_size_roundup() (Michal Schmidt) [2143367] - thermal: int340x: Mode setting with new OS handshake (Prarit Bhargava) [2072652] - thermal: int340x: Update OS policy capability handshake (Prarit Bhargava) [2072652] - hugetlb: remove unnecessary set_page_count in prep_compound_gigantic_page (Chris von Recklinghausen) [2143631] - mm/hugetlb: clear compound_nr before freeing gigantic pages (Chris von Recklinghausen) [2143631] - uprobes: __replace_page() avoid BUG in munlock_vma_page() (Chris von Recklinghausen) [2143631] - s390/boot: add secure boot trailer (Tobias Huschle) [2141967] - ice: Fix configuring VIRTCHNL_OP_CONFIG_VSI_QUEUES with unbalanced queues (Michal Schmidt) [2137378] - nvme: wait until quiesce is done (Ming Lei) [2144258] - scsi: make sure that request queue queiesce and unquiesce balanced (Ming Lei) [2144258] - scsi: avoid to quiesce sdev->request_queue two times (Ming Lei) [2144258] - dm: don't stop request queue after the dm device is suspended (Ming Lei) [2144258]- ata: libata-core: Print timeout value when internal command times (Ewan D. Milne) [1823688] - ata: libata-core: fix sloppy parameter type in ata_exec_internal[_sg]() (Ewan D. Milne) [1823688] - ata: libata-core: make ata_exec_internal_sg() *static* (Ewan D. Milne) [1823688] - perf/x86/intel: Fix unchecked MSR access error for Alder Lake N (Michael Petlan) [2104807] - perf/x86/intel: Fix PEBS data source encoding for ADL (Michael Petlan) [2104807] - perf/x86/intel: Fix PEBS memory access info encoding for ADL (Michael Petlan) [2104807] - i40e: Fix DMA mappings leak (Ivan Vecera) [2077847] - fbcon: Fix delayed takeover locking (Jocelyn Falempe) [2134795] - fbcon: use min() to make code cleaner (Jocelyn Falempe) [2134795] - fbcon: Use array3_size() helper in scr_memcpyw() (Jocelyn Falempe) [2134795] - fbcon: Maintain a private array of fb_info (Jocelyn Falempe) [2134795] - fbcon: untangle fbcon_exit (Jocelyn Falempe) [2134795] - fbcon: Move more code into fbcon_release (Jocelyn Falempe) [2134795] - fbcon: Move console_lock for register/unlink/unregister (Jocelyn Falempe) [2134795] - fbcon: Consistently protect deferred_takeover with console_lock() (Jocelyn Falempe) [2134795] - fbcon: use lock_fb_info in fbcon_open/release (Jocelyn Falempe) [2134795] - fbcon: move more common code into fb_open() (Jocelyn Falempe) [2134795] - fbcon: Ditch error handling for con2fb_release_oldinfo (Jocelyn Falempe) [2134795] - fbcon: Extract fbcon_open/release helpers (Jocelyn Falempe) [2134795] - fb: Delete fb_info->queue (Jocelyn Falempe) [2134795] - fbcon: Replace FBCON_FLAGS_INIT with a boolean (Jocelyn Falempe) [2134795] - fbcon: Use delayed work for cursor (Jocelyn Falempe) [2134795] - fbdev/sysfs: Fix locking (Jocelyn Falempe) [2134795] - fbcon: delete delayed loading code (Jocelyn Falempe) [2134795] - fbcon: Introduce wrapper for console->fb_info lookup (Jocelyn Falempe) [2134795] - fbcon: Move fbcon_bmove(_rec) functions (Jocelyn Falempe) [2134795] - fbcon: delete a few unneeded forward decl (Jocelyn Falempe) [2134795] - fbcon: Avoid 'cap' set but not used warning (Jocelyn Falempe) [2134795] - video: fbcon: Fix warnings by using pr_debug() in fbcon (Jocelyn Falempe) [2134795] - fbcon: Fix user font detection test at fbcon_resize(). (Jocelyn Falempe) [2134795] - fbcon: remove now unusued 'softback_lines' cursor() argument (Jocelyn Falempe) [2134795] - fbcon: remove soft scrollback code (Jocelyn Falempe) [2134795] - fbcon: prevent user font height or width change from causing potential out-of-bounds access (Jocelyn Falempe) [2134795] - fbmem: pull fbcon_update_vcs() out of fb_set_var() (Jocelyn Falempe) [2134795] - fbcon: fix null-ptr-deref in fbcon_switch (Jocelyn Falempe) [2134795] - fbcon: Adjust indentation in set_con2fb_map (Jocelyn Falempe) [2134795] - fbdev: Unexport unlink_framebuffer() (Jocelyn Falempe) [2134795] - backlight: drop EARLY_EVENT_BLANK support (Jocelyn Falempe) [2134795] - fbcon: Export fbcon_update_vcs (Jocelyn Falempe) [2134795] - backlight: simplify lcd notifier (Jocelyn Falempe) [2134795] - fbcon: Document what I learned about fbcon locking (Jocelyn Falempe) [2134795] - fbcon: Call con2fb_map functions directly (Jocelyn Falempe) [2134795] - fbcon: replace FB_EVENT_MODE_CHANGE/_ALL with direct calls (Jocelyn Falempe) [2134795] - fb: Flatten control flow in fb_set_var (Jocelyn Falempe) [2134795] - fbdev: remove FBINFO_MISC_USEREVENT around fb_blank (Jocelyn Falempe) [2134795] - fbmem: pull fbcon_fb_blanked out of fb_blank (Jocelyn Falempe) [2134795] - Revert "backlight/fbcon: Add FB_EVENT_CONBLANK" (Jocelyn Falempe) [2134795] - fbdev: Call fbcon_get_requirement directly (Jocelyn Falempe) [2134795] - fbcon: Call fbcon_mode_deleted/new_modelist directly (Jocelyn Falempe) [2134795] - fbdev: directly call fbcon_suspended/resumed (Jocelyn Falempe) [2134795] - fbdev: unify unlink_framebuffer paths (Jocelyn Falempe) [2134795] - fbdev: make unregister/unlink functions not fail (Jocelyn Falempe) [2134795] - fbcon: call fbcon_fb_bind directly (Jocelyn Falempe) [2134795] - fbcon: call fbcon_fb_(un)registered directly (Jocelyn Falempe) [2134795] - fbdev: fbmem: fix memory access if logo is bigger than the screen (Jocelyn Falempe) [2134795] - fbdev: add kerneldoc do remove_conflicting_framebuffers() (Jocelyn Falempe) [2134795] - fbdev: allow apertures == NULL in remove_conflicting_framebuffers() (Jocelyn Falempe) [2134795] - fbdev: show fbdev number for debugging (Jocelyn Falempe) [2134795] - fbcon: use kvmalloc() for scrollback buffer (Jocelyn Falempe) [2134795] - fbdev: fbcon: Fix unregister crash when more than one framebuffer (Jocelyn Falempe) [2134795] - fb: fix lost console when the user unplugs a USB adapter (Jocelyn Falempe) [2134795] - fbcon: introduce for_each_registered_fb() helper (Jocelyn Falempe) [2134795] - timers/nohz: Last resort update jiffies on nohz_full IRQ entry (Waiman Long) [2108387] - irq: Call tick_irq_enter() inside HARDIRQ_OFFSET (Waiman Long) [2108387] - irqtime: Move irqtime entry accounting after irq offset incrementation (Waiman Long) [2108387] - sched/vtime: Consolidate IRQ time accounting (Waiman Long) [2108387] - s390/vtime: Use the generic IRQ entry accounting (Waiman Long) [2108387] - sched/cputime: Remove symbol exports from IRQ time accounting (Waiman Long) [2108387] - genirq/irqdomain: Don't try to free an interrupt that has no mapping (Waiman Long) [2108387] - genirq: Provide __irq_enter/exit_raw() (Waiman Long) [2108387] - powerpc/time: Only set CONFIG_ARCH_HAS_SCALED_CPUTIME on PPC64 (Waiman Long) [2108387] - powerpc/time: isolate scaled cputime accounting in dedicated functions. (Waiman Long) [2108387] - perf: Fix list corruption in perf_cgroup_switch() (Aaron Tomlin) [2136548] - gen_compile_commands: fix issues in RHEL-8 (Íñigo Huguet) [2136840] - .gitignore: Add compilation database file (Íñigo Huguet) [2136840] - gen_compile_commands: fix missing 'sys' package (Íñigo Huguet) [2136840] - gen_compile_commands: extract compiler command from a series of commands (Íñigo Huguet) [2136840] - gen_compile_commands: prune some directories (Íñigo Huguet) [2136840] - scripts/clang-tools: switch explicitly to Python 3 (Íñigo Huguet) [2136840] - Makefile: Add clang-tidy and static analyzer support to makefile (Íñigo Huguet) [2136840] - kbuild: wire up the build rule of compile_commands.json to Makefile (Íñigo Huguet) [2136840] - gen_compile_commands: remove the warning about too few .cmd files (Íñigo Huguet) [2136840] - gen_compile_commands: support *.o, *.a, modules.order in positional argument (Íñigo Huguet) [2136840] - gen_compile_commands: move directory walk to a generator function (Íñigo Huguet) [2136840] - gen_compile_commands: make -o option independent of -d option (Íñigo Huguet) [2136840] - gen_compile_commands: reword the help message of -d option (Íñigo Huguet) [2136840] - gen_compile_commands: do not support .cmd files under tools/ directory (Íñigo Huguet) [2136840] - gen_compile_commands: use choices for --log_levels option (Íñigo Huguet) [2136840] - gen_compile_commands: parse only the first line of .*.cmd files (Íñigo Huguet) [2136840] - gen_compile_commands: lower the entry count threshold (Íñigo Huguet) [2136840] - scripts: add a tool to produce a compile_commands.json file (Íñigo Huguet) [2136840] - iavf: Do not restart Tx queues after reset task failure (Petr Oros) [2134005] - iavf: Fix a crash during reset task (Petr Oros) [2134005] - spec: add bpf_testmod.ko to kselftests/bpf (Yauheni Kaliuta) [2140082] - fuse: fix readdir cache race (Miklos Szeredi) [2131391] - ice: config netdev tc before setting queues number (Petr Oros) [2103946] - ice: Fix ice_xdp_xmit() when XDP TX queue number is not sufficient (Petr Oros) [2103946] - ice: Don't double unplug aux on peer initiated reset (Petr Oros) [2103946] - ice: use bitmap_free instead of devm_kfree (Petr Oros) [2103946] - ice: Fix DMA mappings leak (Petr Oros) [2103946] - ice: Fix call trace with null VSI during VF reset (Petr Oros) [2103946] - ice: Fix VSI rebuild WARN_ON check for VF (Petr Oros) [2103946] - net/ice: fix initializing the bitmap in the switch code (Petr Oros) [2103946] - net: ice: fix error NETIF_F_HW_VLAN_CTAG_FILTER check in ice_vsi_sync_fltr() (Petr Oros) [2103946] - ice: allow toggling loopback mode via ndo_set_features callback (Petr Oros) [2103946] - ice: compress branches in ice_set_features() (Petr Oros) [2103946] - ice: Add support for PPPoE hardware offload (Petr Oros) [2103946] - ice: add i2c write command (Petr Oros) [2103946] - ice: Remove pci_aer_clear_nonfatal_status() call (Petr Oros) [2103946] - ice: Remove unnecessary NULL check before dev_put (Petr Oros) [2103946] - ice: use eth_broadcast_addr() to set broadcast address (Petr Oros) [2103946] - ice: switch: dynamically add VLAN headers to dummy packets (Petr Oros) [2103946] - ice: Add support for VLAN TPID filters in switchdev (Petr Oros) [2103946] - ice: Add support for double VLAN in switchdev (Petr Oros) [2103946] - intel/ice:fix repeated words in comments (Petr Oros) [2103946] - drivers/net/ethernet/intel: fix typos in comments (Petr Oros) [2103946] - ice: Use correct order for the parameters of devm_kcalloc() (Petr Oros) [2103946] - ice: remove u16 arithmetic in ice_gnss (Petr Oros) [2103946] - ice: remove VLAN representor specific ops (Petr Oros) [2103946] - ice: don't set VF VLAN caps in switchdev (Petr Oros) [2103946] - kernel-doc: fix undefined args variable (Jan Stancek) [2134954]- sunrpc: Set sk_allocation to GFP_NOFS to avoid using current->task_frag. (Guillaume Nault) [2089660] - selftests/vm: enable running select groups of tests (Joel Savitz) [2089502] - selftests: make use of GUP_TEST_FILE macro (Nico Pache) [2089502] - selftests: clarify common error when running gup_test (Nico Pache) [2089502] - tools/testing/selftests/vm/gup_test.c: clarify error statement (Nico Pache) [2089502] - mm: remove the extra ZONE_DEVICE struct page refcount (Chris von Recklinghausen) [2082247] - mm: simplify freeing of devmap managed pages (Chris von Recklinghausen) [2082247] - mm: move free_devmap_managed_page to memremap.c (Chris von Recklinghausen) [2082247] - mm/memremap: add ZONE_DEVICE support for compound pages (Chris von Recklinghausen) [2082247] - mm/page_alloc: refactor memmap_init_zone_device() page init (Chris von Recklinghausen) [2082247] - mm/page_alloc: split prep_compound_page into head and tail subparts (Chris von Recklinghausen) [2082247] - mm/debug: sync up MR_CONTIG_RANGE and MR_LONGTERM_PIN (Chris von Recklinghausen) [2082247] - mm: gup: use helper PAGE_ALIGNED in populate_vma_page_range() (Chris von Recklinghausen) [2082247] - mm: gup: remove useless BUG_ON in __get_user_pages() (Chris von Recklinghausen) [2082247] - mm: gup: remove unneed local variable orig_refs (Chris von Recklinghausen) [2082247] - mm: gup: remove set but unused local variable major (Chris von Recklinghausen) [2082247] - writeback: make the laptop_mode prototypes available unconditionally (Chris von Recklinghausen) [2082247] - mm: hide laptop_mode_wb_timer entirely behind the BDI API (Chris von Recklinghausen) [2082247] - mm: remove special swap entry functions (Chris von Recklinghausen) [2082247] - hugetlb: address ref count racing in prep_compound_gigantic_page (Chris von Recklinghausen) [2082247] - hugetlb: remove prep_compound_huge_page cleanup (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): get vma_address_end() earlier (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use goto instead of while (1) (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): add a level of indentation (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): crossing page table boundary (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use pmde for *pvmw->pmd (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): settle PageHuge on entry (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use page for pvmw->page (Chris von Recklinghausen) [2082247] - mm/gup: longterm pin migration cleanup (Chris von Recklinghausen) [2082247] - mm/gup: change index type to long as it counts pages (Chris von Recklinghausen) [2082247] - mm/gup: migrate pinned pages out of movable zone (Chris von Recklinghausen) [2082247] - mm: honor PF_MEMALLOC_PIN for all movable pages (Chris von Recklinghausen) [2082247] - mm cma: rename PF_MEMALLOC_NOCMA to PF_MEMALLOC_PIN (Chris von Recklinghausen) [2082247] - mm/huge_memory.c: use helper function migration_entry_to_page() (Chris von Recklinghausen) [2082247] - block: add queue_to_disk() to get gendisk from request_queue (Chris von Recklinghausen) [2082247] - mm/hugetlb: remove redundant check in preparing and destroying gigantic page (Chris von Recklinghausen) [2082247] - mm/hugetlb: use helper huge_page_order and pages_per_huge_page (Chris von Recklinghausen) [2082247] - mm: handle zone device pages in release_pages() (Chris von Recklinghausen) [2082247] - mm/gup: remove the vma allocation from gup_longterm_locked() (Chris von Recklinghausen) [2082247] - mm/mremap_pages: fix static key devmap_managed_key updates (Chris von Recklinghausen) [2082247] - mm/memremap.c: convert devmap static branch to {inc,dec} (Chris von Recklinghausen) [2082247] - mm/page_alloc: handle a missing case for memalloc_nocma_{save/restore} APIs (Chris von Recklinghausen) [2082247] - mm: store compound_nr as well as compound_order (Chris von Recklinghausen) [2082247] - mm: clean up the last pieces of page fault accountings (Chris von Recklinghausen) [2082247] - mm/x86: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/s390: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/powerpc: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/arm64: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm: do page fault accounting in handle_mm_fault (Chris von Recklinghausen) [2082247] - include/linux/sched/mm.h: optimize current_gfp_context() (Chris von Recklinghausen) [2082247] - mm/page_alloc: fix memalloc_nocma_{save/restore} APIs (Chris von Recklinghausen) [2082247] - mm: remove redundant check non_swap_entry() (Chris von Recklinghausen) [2082247] - mm: rename gfpflags_to_migratetype to gfp_migratetype for same convention (Chris von Recklinghausen) [2082247] - mm,page_alloc,cma: conditionally prefer cma pageblocks for movable allocations (Chris von Recklinghausen) [2082247] - mm/vma: introduce VM_ACCESS_FLAGS (Chris von Recklinghausen) [2082247] - mm/vma: make vma_is_accessible() available for general use (Chris von Recklinghausen) [2082247] - kernel/events/uprobes.c: only do FOLL_SPLIT_PMD for uprobe register (Chris von Recklinghausen) [2082247] - uprobe: collapse THP pmd after removing all uprobes (Chris von Recklinghausen) [2082247] - uprobe: use FOLL_SPLIT_PMD instead of FOLL_SPLIT (Chris von Recklinghausen) [2082247] - mm, thp: introduce FOLL_SPLIT_PMD (Chris von Recklinghausen) [2082247] - mm: clean up is_device_*_page() definitions (Chris von Recklinghausen) [2082247] - driver core: Add helper device_find_child_by_name() (Chris von Recklinghausen) [2082247] - mm/page_alloc.c: remove unnecessary parameter in rmqueue_pcplist (Chris von Recklinghausen) [2082247] - sctp: handle the error returned from sctp_auth_asoc_init_active_key (Xin Long) [2134892] - sctp: leave the err path free in sctp_stream_init to sctp_stream_free (Xin Long) [2134892] - sctp: fix sleep in atomic context bug in timer handlers (Xin Long) [2134892] - stcp: Use memset_after() to zero sctp_stream_out_ext (Xin Long) [2134892] - sctp: read sk->sk_bound_dev_if once in sctp_rcv() (Xin Long) [2134892] - ethtool: add header/data split indication (Ivan Vecera) [2135624] - xfrm: store and rely on direction to construct offload flags (Sabrina Dubroca) [2137562] - platform/x86/intel: pmc: Support Intel Raptorlake P (Prarit Bhargava) [2076736]- KVM: selftests: Build the memslot tests for arm64 (Gavin Shan) [2132161] - KVM: selftests: Fix number of pages for memory slot in memslot_modification_stress_test (Gavin Shan) [2132161] - tools/include: Add _RET_IP_ and math definitions to kernel.h (Gavin Shan) [2132161] - tcp: fix early ETIMEDOUT after spurious non-SACK RTO (Davide Caratti) [2136409] - tcp: add a missing nf_reset_ct() in 3WHS handling (Davide Caratti) [2136409] - sock: redo the psock vs ULP protection check (Davide Caratti) [2136409] - tcp: tcp_rtx_synack() can be called from process context (Davide Caratti) [2136409] - tcp: fix tcp_mtup_probe_success vs wrong snd_cwnd (Davide Caratti) [2136409] - tcp: fix F-RTO may not work correctly when receiving DSACK (Davide Caratti) [2136409] - selftests: xsk: do not send zero-length packets (Ivan Vecera) [2135634] - selftests/xsk: Introduce XDP prog load based on existing AF_XDP socket (Ivan Vecera) [2135634] - selftests, xsk: Fix rx_full stats test (Ivan Vecera) [2135634] - selftests/bpf: Fix xdpxceiver failures for no hugepages (Ivan Vecera) [2135634] - selftests/xsk: Add missing close() on netns fd (Ivan Vecera) [2135634] - selftests, xsk: Fix bpf_res cleanup test (Ivan Vecera) [2135634] - selftests: xsk: Add frame_headroom test (Ivan Vecera) [2135634] - selftests: xsk: Change interleaving of packets in unaligned mode (Ivan Vecera) [2135634] - selftests: xsk: Add single packet test (Ivan Vecera) [2135634] - selftests: xsk: Introduce pacing of traffic (Ivan Vecera) [2135634] - selftests: xsk: Fix socket creation retry (Ivan Vecera) [2135634] - selftests: xsk: Put the same buffer only once in the fill ring (Ivan Vecera) [2135634] - selftests: xsk: Fix missing initialization (Ivan Vecera) [2135634] - selftests: xsk: Add tests for 2K frame size (Ivan Vecera) [2135634] - selftests: xsk: Add tests for invalid xsk descriptors (Ivan Vecera) [2135634] - selftests: xsk: Eliminate test specific if-statement in test runner (Ivan Vecera) [2135634] - selftests: xsk: Add test for unaligned mode (Ivan Vecera) [2135634] - selftests: xsk: Introduce replacing the default packet stream (Ivan Vecera) [2135634] - selftests: xsk: Allow for invalid packets (Ivan Vecera) [2135634] - selftests: xsk: Eliminate MAX_SOCKS define (Ivan Vecera) [2135634] - selftests: xsx: Make pthreads local scope (Ivan Vecera) [2135634] - selftests: xsk: Make xdp_flags and bind_flags local (Ivan Vecera) [2135634] - selftests: xsk: Specify number of sockets to create (Ivan Vecera) [2135634] - selftests: xsk: Replace second_step global variable (Ivan Vecera) [2135634] - selftests: xsk: Introduce rx_on and tx_on in ifobject (Ivan Vecera) [2135634] - selftests: xsk: Add use_poll to ifobject (Ivan Vecera) [2135634] - selftests: xsx: Introduce test name in test spec (Ivan Vecera) [2135634] - selftests: xsk: Make frame_size configurable (Ivan Vecera) [2135634] - selftests: xsk: Move rxqsize into xsk_socket_info (Ivan Vecera) [2135634] - selftests: xsk: Move num_frames and frame_headroom to xsk_umem_info (Ivan Vecera) [2135634] - selftests: xsk: Introduce test specifications (Ivan Vecera) [2135634] - selftests: xsk: Introduce type for thread function (Ivan Vecera) [2135634] - selftests: xsk: Simplify xsk and umem arrays (Ivan Vecera) [2135634] - selftests: xsk: Preface options with opt (Ivan Vecera) [2135634] - selftests: xsk: Make enums lower case (Ivan Vecera) [2135634] - selftests: xsk: Generate packets from specification (Ivan Vecera) [2135634] - selftests: xsk: Generate packet directly in umem (Ivan Vecera) [2135634] - selftests: xsk: Simplify cleanup of ifobjects (Ivan Vecera) [2135634] - selftests: xsk: Decrease sending speed (Ivan Vecera) [2135634] - selftests: xsk: Validate tx stats on tx thread (Ivan Vecera) [2135634] - selftests: xsk: Simplify packet validation in xsk tests (Ivan Vecera) [2135634] - selftests: xsk: Rename worker_* functions that are not thread entry points (Ivan Vecera) [2135634] - selftests: xsk: Disassociate umem size with packets sent (Ivan Vecera) [2135634] - selftests: xsk: Remove end-of-test packet (Ivan Vecera) [2135634] - selftests: xsk: Simplify the retry code (Ivan Vecera) [2135634] - selftests: xsk: Return correct error codes (Ivan Vecera) [2135634] - selftests: xsk: Remove unused variables (Ivan Vecera) [2135634] - selftests: xsk: Remove the num_tx_packets option (Ivan Vecera) [2135634] - selftests: xsk: Remove color mode (Ivan Vecera) [2135634] - xsk: Fix possible crash when multiple sockets are created (Ivan Vecera) [2135634] - i40e: xsk: Move tmp desc array from driver to pool (Ivan Vecera) [2135634] - xsk: Initialise xskb free_list_node (Ivan Vecera) [2135634] - xsk: Fix corrupted packets for XDP_SHARED_UMEM (Ivan Vecera) [2135634] - xsk: Fix clang build error in __xp_alloc (Ivan Vecera) [2135634] - xsk: Do not write NULL in SW ring at allocation failure (Ivan Vecera) [2135634] - xsk: Fix crash on double free in buffer pool (Ivan Vecera) [2135634] - xsk: Optimize for aligned case (Ivan Vecera) [2135634] - xsk: Batched buffer allocation for the pool (Ivan Vecera) [2135634] - xsk: Get rid of unused entry in struct xdp_buff_xsk (Ivan Vecera) [2135634] - redhat/configs: Move config files under common/generic/x86 to generic/x86_64 (Waiman Long) [2139172] - fbmem: Check virtual screen sizes in fb_set_var() (Wander Lairson Costa) [2109116] {CVE-2021-33655} - fbcon: Prevent that screen size is smaller than font size (Wander Lairson Costa) [2109116] {CVE-2021-33655} - fbcon: Disallow setting font bigger than screen size (Wander Lairson Costa) [2109116] {CVE-2021-33655} - video: of_display_timing.h: include errno.h (Wander Lairson Costa) [2109116] {CVE-2021-33655} - MAINTAINERS: pick up all vfio_ap docs for VFIO AP maintainers (Cédric Le Goater) [1660908] - s390/docs: fix warnings for vfio_ap driver doc (Cédric Le Goater) [1660908] - s390/docs: fix warnings for vfio_ap driver lock usage doc (Cédric Le Goater) [1660908] - s390/Docs: new doc describing lock usage by the vfio_ap device driver (Cédric Le Goater) [1660908] - s390/vfio-ap: bypass unnecessary processing of AP resources (Cédric Le Goater) [1660908] - s390/vfio-ap: update docs to include dynamic config support (Cédric Le Goater) [1660908] - s390/vfio-ap: handle config changed and scan complete notification (Cédric Le Goater) [1660908] - s390/vfio-ap: sysfs attribute to display the guest's matrix (Cédric Le Goater) [1660908] - s390/vfio-ap: implement in-use callback for vfio_ap driver (Cédric Le Goater) [1660908] - s390/vfio-ap: reset queues after adapter/domain unassignment (Cédric Le Goater) [1660908] - s390/vfio-ap: hot plug/unplug of AP devices when probed/removed (Cédric Le Goater) [1660908] - s390/vfio-ap: allow hot plug/unplug of AP devices when assigned/unassigned (Cédric Le Goater) [1660908] - s390/vfio-ap: prepare for dynamic update of guest's APCB on queue probe/remove (Cédric Le Goater) [1660908] - s390/vfio-ap: prepare for dynamic update of guest's APCB on assign/unassign (Cédric Le Goater) [1660908] - s390/vfio-ap: use proper locking order when setting/clearing KVM pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: introduce new mutex to control access to the KVM pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: rename matrix_dev->lock mutex to matrix_dev->mdevs_lock (Cédric Le Goater) [1660908] - s390/vfio-ap: allow assignment of unavailable AP queues to mdev device (Cédric Le Goater) [1660908] - s390/vfio-ap: refresh guest's APCB by filtering AP resources assigned to mdev (Cédric Le Goater) [1660908] - s390/vfio-ap: introduce shadow APCB (Cédric Le Goater) [1660908] - s390/vfio-ap: manage link between queue struct and matrix mdev (Cédric Le Goater) [1660908] - s390/vfio-ap: move probe and remove callbacks to vfio_ap_ops.c (Cédric Le Goater) [1660908] - s390/vfio-ap: use new AP bus interface to search for queue devices (Cédric Le Goater) [1660908] - s390/ap: fix error handling in __verify_queue_reservations() (Cédric Le Goater) [1660908] - s390/zcrypt: code cleanup (Cédric Le Goater) [1660908] - s390/zcrypt: fix wrong offset index for APKA master key valid state (Cédric Le Goater) [1660908] - s390/ap: uevent on apmask/aqpmask change (Cédric Le Goater) [1660908] - s390/vfio-ap: fix kernel doc and signature of group notifier functions (Cédric Le Goater) [1660908] - s390/ap: enable sysfs attribute scans to force AP bus rescan (Cédric Le Goater) [1660908] - s390/ap: fix crash on older machines based on QCI info missing (Cédric Le Goater) [1660908] - s390/ap: notify drivers on config changed and scan complete callbacks (Cédric Le Goater) [1660908] - s390/ap: driver callback to indicate resource in use (Cédric Le Goater) [1660908] - MAINTAINERS: update file path for S390 VFIO AP DRIVER (Cédric Le Goater) [1660908] - s390/vfio-ap: add status attribute to AP queue device's sysfs dir (Cédric Le Goater) [1660908] - s390/ap: function rework based on compiler warning (Cédric Le Goater) [1660908] - s390/vfio-ap: s390/crypto: fix all kernel-doc warnings (Cédric Le Goater) [1660908] - s390/ap: new module option ap.useirq (Cédric Le Goater) [1660908] - s390/ap: fix state machine hang after failure to enable irq (Cédric Le Goater) [1660908] - s390/crypto: fix all kernel-doc warnings in vfio_ap_ops.c (Cédric Le Goater) [1660908] - s390/ap: use the common device_driver pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: replace open coded locks for VFIO_GROUP_NOTIFY_SET_KVM notification (Cédric Le Goater) [1660908] - s390/vfio-ap: r/w lock for PQAP interception handler function pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up mdev resources when remove callback invoked (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up vfio_ap_drv's definition (Cédric Le Goater) [1660908] - s390/vfio-ap: fix circular lockdep when setting/clearing crypto masks (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up vfio_ap resources when KVM pointer invalidated (Cédric Le Goater) [1660908] - s390/vfio-ap: No need to disable IRQ after queue reset (Cédric Le Goater) [1660908] - Documentation: s390/vfio-ap: eliminate duplicated word (Cédric Le Goater) [1660908] - docs: s390: Fix wrong label Guest2 instead of Guest3 (Cédric Le Goater) [1660908] - s390: vfio-ap: make local functions and data static (Cédric Le Goater) [1660908] - i40e: Fix set max_tx_rate when it is lower than 1 Mbps (Petr Oros) [2106964] - i40e: Fix VF set max MTU size (Petr Oros) [2106964] - iavf: Fix set max MTU size with port VLAN and jumbo frames (Petr Oros) [2106964] - iavf: Fix bad page state (Petr Oros) [2106964] - i40e: Fix VF hang when reset is triggered on another VF (Ivan Vecera) [2103801] - mpi3mr: a minor change (Tomas Henzl) [2115748] - scsi: mpi3mr: Select CONFIG_SCSI_SAS_ATTRS (Tomas Henzl) [2115748] - scsi: mpi3mr: Remove unnecessary cast (Tomas Henzl) [2115748] - scsi: mpi3mr: Update driver version to 8.2.0.3.0 (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix scheduling while atomic type bug (Tomas Henzl) [2115748] - scsi: mpi3mr: Scan the devices during resume time (Tomas Henzl) [2115748] - scsi: mpi3mr: Free enclosure objects during driver unload (Tomas Henzl) [2115748] - scsi: mpi3mr: Handle 0xF003 Fault Code (Tomas Henzl) [2115748] - scsi: mpi3mr: Graceful handling of surprise removal of PCIe HBA (Tomas Henzl) [2115748] - scsi: mpi3mr: Support new power management framework (Tomas Henzl) [2115748] - scsi: mpi3mr: Update mpi3 header files (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix error code in mpi3mr_transport_smp_handler() (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix error codes in mpi3mr_report_manufacture() (Tomas Henzl) [2115748] - scsi: mpi3mr: Block I/Os while refreshing target dev objects (Tomas Henzl) [2115748] - scsi: mpi3mr: Refresh SAS ports during soft reset (Tomas Henzl) [2115748] - scsi: mpi3mr: Support SAS transport class callbacks (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to issue MPT transport cmds (Tomas Henzl) [2115748] - scsi: mpi3mr: Add SAS SATA end devices to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Get target object based on rphy (Tomas Henzl) [2115748] - scsi: mpi3mr: Add expander devices to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable STL on HBAs where multipath is disabled (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to manage device's port (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to retrieve device objects (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to add phys to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable Enclosure device add event (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to retrieve config pages (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to issue config requests (Tomas Henzl) [2115748] - scsi: mpi3mr: Add config and transport related debug flags (Tomas Henzl) [2115748] - scsi: mpi3mr: Delete a stray tab (Tomas Henzl) [2115748] - scsi: mpi3mr: Unlock on error path (Tomas Henzl) [2115748] - scsi: mpi3mr: Reduce VD queue depth on detecting throttling (Tomas Henzl) [2115748] - scsi: mpi3mr: Resource Based Metering (Tomas Henzl) [2115748] - scsi: mpi3mr: Increase cmd_per_lun to 128 (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable shared host tagset (Tomas Henzl) [2115748] - lpfc version to 14.0.0.18. (Dick Kennedy) [2114050] - scsi: lpfc: Create a sysfs entry called lpfc_xcvr_data for transceiver info (Dick Kennedy) [2114050] - scsi: lpfc: Log when congestion management limits are in effect (Dick Kennedy) [2114050] - scsi: lpfc: Fix hard lockup when reading the rx_monitor from debugfs (Dick Kennedy) [2114050] - scsi: lpfc: Set sli4_param's cmf option to zero when CMF is turned off (Dick Kennedy) [2114050] - scsi: lpfc: Fix various issues reported by tools (Dick Kennedy) [2114050] - scsi: lpfc: Add reporting capability for Link Degrade Signaling (Dick Kennedy) [2114050] - scsi: lpfc: Rework FDMI attribute registration for unintential padding (Dick Kennedy) [2114050] - scsi: lpfc: Rework lpfc_fdmi_cmd() routine for cleanup and consistency (Dick Kennedy) [2114050] - scsi: lpfc: Update congestion mode logging for Emulex SAN Manager application (Dick Kennedy) [2114050] - scsi: lpfc: Fix multiple NVMe remoteport registration calls for the same NPort ID (Dick Kennedy) [2114050] - scsi: lpfc: Add missing free iocb and nlp kref put for early return VMID cases (Dick Kennedy) [2114050] - scsi: lpfc: Fix mbuf pool resource detected as busy at driver unload (Dick Kennedy) [2114050] - scsi: lpfc: Fix FLOGI ACC with wrong SID in PT2PT topology (Dick Kennedy) [2114050] - scsi: lpfc: Fix prli_fc4_req checks in PRLI handling (Dick Kennedy) [2114050] - scsi: lpfc: Remove unneeded result variable (Dick Kennedy) [2114050] - scsi: lpfc: Remove the unneeded result variable (Dick Kennedy) [2114050] - scsi: lpfc: Copyright updates for 14.2.0.6 patches (Dick Kennedy) [2114050] - scsi: lpfc: Add warning notification period to CMF_SYNC_WQE (Dick Kennedy) [2114050] - scsi: lpfc: Rework MIB Rx Monitor debug info logic (Dick Kennedy) [2114050] - scsi: lpfc: Fix null ndlp ptr dereference in abnormal exit path for GFT_ID (Dick Kennedy) [2114050] - scsi: lpfc: Fix unsolicited FLOGI receive handling during PT2PT discovery (Dick Kennedy) [2114050] - scsi: lpfc: Check the return value of alloc_workqueue() (Dick Kennedy) [2114050] - scsi: lpfc: Rework FDMI initialization after link up (Dick Kennedy) [2114050] - scsi: mpt3sas: Revert "scsi: mpt3sas: Fix ioc->base_readl() use" (Tomas Henzl) [2115763] - scsi: mpt3sas: Revert "scsi: mpt3sas: Fix writel() use" (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix return value check of dma_get_required_mask() (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix use-after-free warning (Tomas Henzl) [2115763] - scsi: mpt3sas: Update driver version to 43.100.00.00 (Tomas Henzl) [2115763] - scsi: mpt3sas: Increase cmd_per_lun to 128 (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix trace buffer registration failed (Tomas Henzl) [2115763] - scsi: mpt3sas: Don't change DMA mask while reallocating pools (Tomas Henzl) [2115763] - scsi: mpt3sas: Prevent error handler escalation when device removed (Tomas Henzl) [2115763] - scsi: mpt3sas: Disable MPI2_FUNCTION_FW_DOWNLOAD for ATTO devices (Tomas Henzl) [2115763] - scsi: mpt3sas: Add support for ATTO ExpressSAS H12xx GT devices (Tomas Henzl) [2115763] - scsi: mpt3sas: Remove flush_scheduled_work() call (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix whitespace and spelling mistake (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix typo in comment (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix out-of-bounds compiler warning (Tomas Henzl) [2115763] - media: em28xx: initialize refcount before kref_get (Dean Nelson) [2128003] {CVE-2022-3239} - gfs2: Register fs after creating workqueues (Bob Peterson) [2121201] - sysctl: returns -EINVAL when a negative value is passed to proc_doulongvec_minmax (Vratislav Bendel) [2139096] - mm/rmap: Fix anon_vma->degree ambiguity leading to double-reuse (Waiman Long) [2137585] {CVE-2022-42703} - mm: rmap: explicitly reset vma->anon_vma in unlink_anon_vmas() (Waiman Long) [2137585] {CVE-2022-42703} - mm/rmap: Fix typos in comments (Waiman Long) [2137585] {CVE-2022-42703} - iavf: Fix set max MTU size with port VLAN and jumbo frames (Stefan Assmann) [2103944] - iavf: Fix bad page state (Stefan Assmann) [2103944] - iavf: Fix cached head and tail value for iavf_get_tx_pending (Stefan Assmann) [2103944] - iavf: Fix change VF's mac address (Stefan Assmann) [2103944] - iavf: Fix race between iavf_close and iavf_reset_task (Stefan Assmann) [2103944] - net: ethernet: move from strlcpy with unused retval to strscpy (Stefan Assmann) [2103944] - iavf: Fix 'tc qdisc show' listing too many queues (Stefan Assmann) [2103944] - iavf: Fix max_rate limiting (Stefan Assmann) [2103944] - iavf: Check for duplicate TC flower filter before parsing (Stefan Assmann) [2103944] - iavf: Fix handling of dummy receive descriptors (Stefan Assmann) [2103944] - iavf: Disallow changing rx/tx-frames and rx/tx-frames-irq (Stefan Assmann) [2103944] - intel/iavf:fix repeated words in comments (Stefan Assmann) [2103944] - intel: remove unused macros (Stefan Assmann) [2103944] - iavf: Add waiting for response from PF in set mac (Stefan Assmann) [2103944] - iavf: Use irq_update_affinity_hint() (Stefan Assmann) [2103944] - net: Fix return value of qdisc ingress handling on success (Ivan Vecera) [2131361]- PCI: hv: Do not set PCI_COMMAND_MEMORY to reduce VM boot time (Emanuele Giuseppe Esposito) [2082836] - megaraid_sas: add #ifdef CONFIG_RHEL_DIFFERENCES (Tomas Henzl) [2119096] - mpt3sas: add #ifdef CONFIG_RHEL_DIFFERENCES (Tomas Henzl) [2119096] - mptcp: fix unreleased socket in accept queue (Paolo Abeni) [2135884] - mptcp: factor out __mptcp_close() without socket lock (Paolo Abeni) [2135884] - mptcp: do not queue data on closed subflows (Paolo Abeni) [2135884] - mptcp: move subflow cleanup in mptcp_destroy_common() (Paolo Abeni) [2135884] - mptcp: fix msk traversal in mptcp_nl_cmd_set_flags() (Paolo Abeni) [2135884] - xfs: fix perag reference leak on iteration race with growfs (Brian Foster) [2081105] - xfs: terminate perag iteration reliably on agcount (Brian Foster) [2081105] - xfs: rename the next_agno perag iteration variable (Brian Foster) [2081105] - xfs: fold perag loop iteration logic into helper function (Brian Foster) [2081105] - xfs: prevent spoofing of rtbitmap blocks when recovering buffers (Brian Foster) [2081105] - xfs: Enforce attr3 buffer recovery order (Brian Foster) [2081105] - xfs: avoid unnecessary waits in xfs_log_force_lsn() (Brian Foster) [2081105] - xfs: factor out forced iclog flushes (Brian Foster) [2081105] - xfs: detect misaligned rtinherit directory extent size hints (Brian Foster) [2081105] - xfs: fix an integer overflow error in xfs_growfs_rt (Brian Foster) [2081105] - xfs: improve FSGROWFSRT precondition checking (Brian Foster) [2081105] - xfs: reset child dir '..' entry when unlinking child (Brian Foster) [2081105] - xfs: check for sparse inode clusters that cross new EOAG when shrinking (Brian Foster) [2081105] - xfs: Fix multiple fall-through warnings for Clang (Brian Foster) [2081105] - xfs: remove callback dequeue loop from xlog_state_do_iclog_callbacks (Brian Foster) [2081105] - xfs: don't nest icloglock inside ic_callback_lock (Brian Foster) [2081105] - xfs: Initialize error in xfs_attr_remove_iter (Brian Foster) [2081105] - xfs: remove dead stale buf unpin handling code (Brian Foster) [2081105] - xfs: hold buffer across unpin and potential shutdown processing (Brian Foster) [2081105] - xfs: force the log offline when log intent item recovery fails (Brian Foster) [2081105] - xfs: shorten the shutdown messages to a single line (Brian Foster) [2081105] - xfs: print name of function causing fs shutdown instead of hex pointer (Brian Foster) [2081105] - xfs: fix type mismatches in the inode reclaim functions (Brian Foster) [2081105] - xfs: separate primary inode selection criteria in xfs_iget_cache_hit (Brian Foster) [2081105] - xfs: refactor the inode recycling code (Brian Foster) [2081105] - xfs: add iclog state trace events (Brian Foster) [2081105] - xfs: xfs_log_force_lsn isn't passed a LSN (Brian Foster) [2081105] - xfs: remove need_start_rec parameter from xlog_write() (Brian Foster) [2081105] - xfs: remove xfs_blkdev_issue_flush (Brian Foster) [2081105] - xfs: Fix 64-bit division on 32-bit in xlog_state_switch_iclogs() (Brian Foster) [2081105] - xfs: log stripe roundoff is a property of the log (Brian Foster) [2081105] - xfs: remove redundant initialization of variable error (Brian Foster) [2081105] - xfs: perag may be null in xfs_imap() (Brian Foster) [2081105] - xfs: Make attr name schemes consistent (Brian Foster) [2081105] - xfs: Fix default ASSERT in xfs_attr_set_iter (Brian Foster) [2081105] - xfs: rename struct xfs_eofblocks to xfs_icwalk (Brian Foster) [2081105] - xfs: change the prefix of XFS_EOF_FLAGS_* to XFS_ICWALK_FLAG_ (Brian Foster) [2081105] - xfs: selectively keep sick inodes in memory (Brian Foster) [2081105] - xfs: drop IDONTCACHE on inodes when we mark them sick (Brian Foster) [2081105] - xfs: drop the AGI being passed to xfs_check_agi_freecount (Brian Foster) [2081105] - xfs: cleanup error handling in xfs_buf_get_map (Brian Foster) [2081105] - xfs: remove ->b_offset handling for page backed buffers (Brian Foster) [2081105] - xfs: refactor per-AG inode tagging functions (Brian Foster) [2081105] - xfs: merge xfs_reclaim_inodes_ag into xfs_inode_walk_ag (Brian Foster) [2081105] - xfs: pass struct xfs_eofblocks to the inode scan callback (Brian Foster) [2081105] - xfs: make the icwalk processing functions clean up the grab state (Brian Foster) [2081105] - xfs: clean up inode state flag tests in xfs_blockgc_igrab (Brian Foster) [2081105] - xfs: remove indirect calls from xfs_inode_walk{,_ag} (Brian Foster) [2081105] - xfs: remove iter_flags parameter from xfs_inode_walk_* (Brian Foster) [2081105] - xfs: move xfs_inew_wait call into xfs_dqrele_inode (Brian Foster) [2081105] - xfs: separate the dqrele_all inode grab logic from xfs_inode_walk_ag_grab (Brian Foster) [2081105] - xfs: pass the goal of the incore inode walk to xfs_inode_walk() (Brian Foster) [2081105] - xfs: rename xfs_inode_walk functions to xfs_icwalk (Brian Foster) [2081105] - xfs: move the inode walk functions further down (Brian Foster) [2081105] - xfs: detach inode dquots at the end of inactivation (Brian Foster) [2081105] - xfs: move the quotaoff dqrele inode walk into xfs_icache.c (Brian Foster) [2081105] - xfs: don't take a spinlock unconditionally in the DIO fastpath (Brian Foster) [2081105] - xfs: mark xfs_bmap_set_attrforkoff static (Brian Foster) [2081105] - xfs: Remove redundant assignment to busy (Brian Foster) [2081105] - xfs: sort variable alphabetically to avoid repeated declaration (Brian Foster) [2081105] - xfs: remove xfs_perag_t (Brian Foster) [2081105] - xfs: use perag through unlink processing (Brian Foster) [2081105] - xfs: clean up and simplify xfs_dialloc() (Brian Foster) [2081105] - xfs: inode allocation can use a single perag instance (Brian Foster) [2081105] - xfs: get rid of xfs_dir_ialloc() (Brian Foster) [2081105] - xfs: collapse AG selection for inode allocation (Brian Foster) [2081105] - xfs: simplify xfs_dialloc_select_ag() return values (Brian Foster) [2081105] - xfs: remove agno from btree cursor (Brian Foster) [2081105] - xfs: use perag for ialloc btree cursors (Brian Foster) [2081105] - xfs: convert allocbt cursors to use perags (Brian Foster) [2081105] - xfs: convert refcount btree cursor to use perags (Brian Foster) [2081105] - xfs: convert rmap btree cursor to using a perag (Brian Foster) [2081105] - xfs: add a perag to the btree cursor (Brian Foster) [2081105] - xfs: pass perags around in fsmap data dev functions (Brian Foster) [2081105] - xfs: push perags through the ag reservation callouts (Brian Foster) [2081105] - xfs: pass perags through to the busy extent code (Brian Foster) [2081105] - xfs: convert secondary superblock walk to use perags (Brian Foster) [2081105] - xfs: convert xfs_iwalk to use perag references (Brian Foster) [2081105] - xfs: convert raw ag walks to use for_each_perag (Brian Foster) [2081105] - xfs: make for_each_perag... a first class citizen (Brian Foster) [2081105] - xfs: move perag structure and setup to libxfs/xfs_ag.[ch] (Brian Foster) [2081105] - xfs: prepare for moving perag definitions and support to libxfs (Brian Foster) [2081105] - xfs: move xfs_perag_get/put to xfs_ag.[ch] (Brian Foster) [2081105] - xfs: remove unnecessary shifts (Brian Foster) [2081105] - xfs: clean up open-coded fs block unit conversions (Brian Foster) [2081105] - xfs: Clean up xfs_attr_node_addname_clear_incomplete (Brian Foster) [2081105] - xfs: Remove xfs_attr_rmtval_set (Brian Foster) [2081105] - xfs: Add delay ready attr set routines (Brian Foster) [2081105] - xfs: Add delay ready attr remove routines (Brian Foster) [2081105] - xfs: Hoist node transaction handling (Brian Foster) [2081105] - xfs: Hoist xfs_attr_leaf_addname (Brian Foster) [2081105] - xfs: Hoist xfs_attr_node_addname (Brian Foster) [2081105] - xfs: Add helper xfs_attr_node_addname_find_attr (Brian Foster) [2081105] - xfs: Separate xfs_attr_node_addname and xfs_attr_node_addname_clear_incomplete (Brian Foster) [2081105] - xfs: Refactor xfs_attr_set_shortform (Brian Foster) [2081105] - xfs: Add xfs_attr_node_remove_name (Brian Foster) [2081105] - xfs: Reverse apply 72b97ea40d (Brian Foster) [2081105] - xfs: use xfs_buf_alloc_pages for uncached buffers (Brian Foster) [2081105] - xfs: split up xfs_buf_allocate_memory (Brian Foster) [2081105] - xfs: Fix fall-through warnings for Clang (Brian Foster) [2081105] - scsi: qla2xxx: Use transport-defined speed mask for supported_speeds (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix serialization of DCBX TLV data request (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused declarations for qla2xxx (Nilesh Javali) [2109830] - scsi: qla2xxx: Drop DID_TARGET_FAILURE use (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.900-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Add NVMe parameters support in Auxiliary Image Status (Nilesh Javali) [2109830] - scsi: qla2xxx: Add debugfs create/delete helpers (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix response queue handler reading stale packets (Nilesh Javali) [2109830] - scsi: qla2xxx: Revert "scsi: qla2xxx: Fix response queue handler reading stale packets" (Nilesh Javali) [2109830] - scsi: qla2xxx: Log message "skipping scsi_scan_host()" as informational (Nilesh Javali) [2109830] - scsi: qla2xxx: Avoid flush_scheduled_work() usage (Nilesh Javali) [2109830] - scsi: qla2xxx: Always wait for qlt_sess_work_fn() from qlt_stop_phase1() (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused del_sess_list field (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused qlt_tmr_work() (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.800-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Update manufacturer details (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix discovery issues in FC-AL topology (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix dropped IKE message (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix response queue handler reading stale packets (Nilesh Javali) [2109830] - scsi: qla2xxx: Zero undefined mailbox IN registers (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix incorrect display of max frame size (Nilesh Javali) [2109830] - scsi: qla2xxx: Check correct variable in qla24xx_async_gffid() (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.700-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing FCP-2 targets on long port disable with I/Os (Nilesh Javali) [2109830] - scsi: qla2xxx: Add debug prints in the device remove path (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing target when it reappears during delete (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing FCP-2 targets during port perturbation tests (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix crash due to stale SRB access around I/O timeouts (Nilesh Javali) [2109830] - scsi: qla2xxx: Turn off multi-queue for 8G adapters (Nilesh Javali) [2109830] - scsi: qla2xxx: Wind down adapter after PCIe error (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.600-k (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix slow session teardown (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce N2N thrashing at app_start time (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix no logout on delete for N2N (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix session thrash (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Tear down session if keys have been removed (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix no login after app start (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce disruption due to multiple app start (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Send LOGO for unexpected IKE message (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix I/O timeout due to over-subscription (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.500-k (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix n2n login retry for secure device (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix n2n discovery issue with secure target (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Remove old doorbell interface (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Add retry for ELS passthrough (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Synchronize NPIV deletion with authentication application (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix potential stuck session in sa update (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Add bsg interface to read doorbell events (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Wait for app to ack on sess down (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: bsg refactor (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce Initiator-Initiator thrashing (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused 'ql_dm_tgt_ex_pct' parameter (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove setting of 'req' and 'rsp' parameters (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix missed DMA unmap for aborted commands (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Remove unneeded variable (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unneeded flush_workqueue() (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove free_sg command flag (Nilesh Javali) [2109830] - scsi: megaraid_sas: Clean up some inconsistent indenting (Tomas Henzl) [2120070] - scsi: megaraid_sas: Move megasas_dbg_lvl init to megasas_init() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Remove unnecessary memset() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Simplify megasas_update_device_list (Tomas Henzl) [2120070] - scsi: megaraid_sas: Correct an error message (Tomas Henzl) [2120070] - scsi: megaraid_sas: Correct value passed to scsi_device_lookup() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Use struct_size() in code related to struct MR_PD_CFG_SEQ_NUM_SYNC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Use struct_size() in code related to struct MR_FW_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_PD_CFG_SEQ_NUM_SYNC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_DRV_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_FW_RAID_MAP_DYNAMIC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_FW_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid: Remove redundant assignment to variable mfiStatus (Tomas Henzl) [2120070] - scsi: megaraid_sas: Remove redundant variable cmd_type (Tomas Henzl) [2120070] - platform/x86/intel/vsec: Fix wrong type for local status variables (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Add PCI error recovery support to Intel PMT (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Add support for Raptor Lake (Prarit Bhargava) [2076744] - platform/x86/intel/pmt: telemetry: Fix fixed region handling (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Rework early hardware code (Prarit Bhargava) [2076744] - platform/x86/intel: Fix pmt_crashlog array reference (Prarit Bhargava) [2076744] - powerpc/kexec_file: Use current CPU info while setting up FDT (Mamatha Inamdar) [2126520] - mm/kmemleak: prevent soft lockup in kmemleak_scan()'s object iteration loops (Waiman Long) [2095075] - mm/kmemleak: prevent soft lockup in first object iteration loop of kmemleak_scan() (Waiman Long) [2095075] - mm/kmemleak: skip unlikely objects in kmemleak_scan() without taking lock (Waiman Long) [2095075] - mm/kmemleak: use _irq lock/unlock variants in kmemleak_scan/_clear() (Waiman Long) [2095075] - mm/kmemleak: avoid scanning potential huge holes (Waiman Long) [2095075] - KVM: s390: pci: fix GAIT physical vs virtual pointers usage (Thomas Huth) [1664379] - KVM: s390: pci: fix plain integer as NULL pointer warnings (Thomas Huth) [1664379] - KVM: s390/pci: fix include duplicates (Thomas Huth) [1664379] - redhat: Use group notifier to get the KVM pointer in the vfio_pci_zdev code (Thomas Huth) [1664379] - KVM: s390: pci: register pci hooks without interpretation (Thomas Huth) [1664379] - KVM: s390: pci: Hook to access KVM lowlevel from VFIO (Thomas Huth) [1664379] - Documentation: kvm: extend KVM_S390_ZPCI_OP subheading underline (Thomas Huth) [1664379] - KVM: s390: add KVM_S390_ZPCI_OP to manage guest zPCI devices (Thomas Huth) [1664379] - vfio-pci/zdev: different maxstbl for interpreted devices (Thomas Huth) [1664379] - vfio-pci/zdev: add function handle to clp base capability (Thomas Huth) [1664379] - vfio-pci/zdev: add open/close device hooks (Thomas Huth) [1664379] - KVM: s390: pci: add routines to start/stop interpretive execution (Thomas Huth) [1664379] - KVM: s390: pci: provide routines for enabling/disabling interrupt forwarding (Thomas Huth) [1664379] - KVM: s390: mechanism to enable guest zPCI Interpretation (Thomas Huth) [1664379] - KVM: s390: pci: enable host forwarding of Adapter Event Notifications (Thomas Huth) [1664379] - KVM: s390: pci: do initial setup for AEN interpretation (Thomas Huth) [1664379] - KVM: s390: pci: add basic kvm_zdev structure (Thomas Huth) [1664379] - redhat: Enable the new CONFIG_VFIO_PCI_ZDEV_KVM switch (Thomas Huth) [1664379] - vfio/pci: introduce CONFIG_VFIO_PCI_ZDEV_KVM (Thomas Huth) [1664379] - vfio/pci: remove CONFIG_VFIO_PCI_ZDEV from Kconfig (Thomas Huth) [1664379] - vfio-pci/zdev: fix possible segmentation fault issue (Thomas Huth) [1664379] - s390/pci: stash dtsm and maxstbl (Thomas Huth) [1664379] - s390/pci: stash associated GISA designation (Thomas Huth) [1664379] - s390/pci: externalize the SIC operation controls and routine (Thomas Huth) [1664379] - s390/airq: allow for airq structure that uses an input vector (Thomas Huth) [1664379] - s390/airq: pass more TPI info to airq handlers (Thomas Huth) [1664379] - s390/cio: add tpi.h header file (Thomas Huth) [1664379] - s390/ap: fix kernel doc comments (Thomas Huth) [1664379] - s390/sclp: detect the AISI facility (Thomas Huth) [1664379] - s390/sclp: detect the AENI facility (Thomas Huth) [1664379] - s390/sclp: detect the AISII facility (Thomas Huth) [1664379] - s390/sclp: detect the zPCI load/store interpretation facility (Thomas Huth) [1664379] - s390/sclp: add detection of IPL-complete-control facility (Thomas Huth) [1664379] - s390/pci: add error record for CC 2 retries (Thomas Huth) [2134399] - s390/pci: add PCI access type and length to error records (Thomas Huth) [2134399] - s390/pci: don't log availability events as errors (Thomas Huth) [2134399] - s390/pci: make better use of zpci_dbg() levels (Thomas Huth) [2134399] - s390/pci: rename get_zdev_by_bus() to zdev_from_bus() (Thomas Huth) [2134399] - redhat: Restore clp_rescan_pci_devices_simple() function (Thomas Huth) [2134399] - s390/pci: improve zpci_dev reference counting (Thomas Huth) [2134399] - s390/pci: make zpci_set_irq()/zpci_clear_irq() static (Thomas Huth) [2134399] - s390/pci: simplify __pciwb_mio() inline asm (Thomas Huth) [2134399] - s390/pci: use physical addresses in DMA tables (Thomas Huth) [2134399] - s390/pci: use phys_to_virt() for AIBVs/DIBVs (Thomas Huth) [2134399] - s390/pci: implement minimal PCI error recovery (Thomas Huth) [2134399] - PCI: Export pci_dev_lock() (Thomas Huth) [2134399] - PCI: Export pci_dev_trylock() and pci_dev_unlock() (Thomas Huth) [2134399] - s390/pci: implement reset_slot for hotplug slot (Thomas Huth) [2134399] - s390/pci: refresh function handle in iomap (Thomas Huth) [2134399] - s390/pci: add simpler s390dbf traces for events (Thomas Huth) [2134399] - s390/pci: tolerate inconsistent handle in recover (Thomas Huth) [2134399] - s390/pci_mmio: fully validate the VMA before calling follow_pte() (Thomas Huth) [2134399] - s390/pci: read clp_list_pci_req only once (Thomas Huth) [2134399] - s390/pci: fix clp_get_state() handling of -ENODEV (Thomas Huth) [2134399] - s390/pci: improve DMA translation init and exit (Thomas Huth) [2134399] - s390/pci: simplify CLP List PCI handling (Thomas Huth) [2134399] - s390/pci: handle FH state mismatch only on disable (Thomas Huth) [2134399] - s390/pci: fix misleading rc in clp_set_pci_fn() (Thomas Huth) [2134399] - s390/pci: reset zdev->zbus on registration failure (Thomas Huth) [2134399] - s390/pci: cleanup resources only if necessary (Thomas Huth) [2134399] - s390/pci: add zpci_set_irq()/zpci_clear_irq() (Thomas Huth) [2134399] - s390/pci: use register pair instead of register asm (Thomas Huth) [2134399] - s390: introduce register pair union (Thomas Huth) [2134399] - s390/pci: handle stale deconfiguration events (Thomas Huth) [2134399] - s390/pci: rename zpci_configure_device() (Thomas Huth) [2134399] - s390/pci: narrow scope of zpci_configure_device() (Thomas Huth) [2134399] - s390/pci: separate zbus registration from scanning (Thomas Huth) [2134399] - s390/pci: use mutex not spinlock for zbus list (Thomas Huth) [2134399] - s390/pci: separate zbus creation from scanning (Thomas Huth) [2134399] - s390/pci: do more bus setup in zpci_bus_scan() (Thomas Huth) [2134399] - s390/pci: introduce zpci_bus_scan_device() (Thomas Huth) [2134399] - s390/pci: fix DMA cleanup on hard deconfigure (Thomas Huth) [2134399] - s390/pci: move zpci_remove_device() to bus code (Thomas Huth) [2134399] - s390/pci: unify de-/configure for slots and events (Thomas Huth) [2134399] - s390/pci: add zpci_event_hard_deconfigured() (Thomas Huth) [2134399] - s390/pci: deconfigure device on release (Thomas Huth) [2134399] - s390/pci: refactor zpci function states (Thomas Huth) [2134399] - s390/pci: inform when missing required facilities (Thomas Huth) [2134399] - s390/pci: remove races against pte updates (Thomas Huth) [2134399] - s390: remove orphaned function declarations (Thomas Huth) [2134399] - s390/pci: add missing pci_iov.h include (Thomas Huth) [2134399] - s390/pci: remove clp_rescan_pci_devices_simple() (Thomas Huth) [2134399] - s390/pci: remove clp_rescan_pci_devices() (Thomas Huth) [2134399] - s390/pci: consolidate SR-IOV specific code (Thomas Huth) [2134399] - s390/pci: Implement ioremap_wc/prot() with MIO (Thomas Huth) [2134399] - s390/mm: properly clear _PAGE_NOEXEC bit when it is not supported (Thomas Huth) [2134399] - s390/pci: clarify comment in s390_mmio_read/write (Thomas Huth) [2134399] - s390/pci: remove unused functions (Thomas Huth) [2134399] - s390/pci: Log new handle in clp_disable_fh() (Thomas Huth) [2134399] - s390/pci: ioremap() align with generic code (Thomas Huth) [2134399] - s390: enforce CONFIG_SMP (Thomas Huth) [2134399] - s390/pci: mark function(s) __always_inline (Thomas Huth) [2134399] - s390/pci: avoid using strncmp with hardcoded length (Thomas Huth) [2134399] - s390/pci: PCI_IOV_RESOURCES loop refactoring in zpci_map_resources (Thomas Huth) [2134399] - s390: pci: no need to check return value of debugfs_create functions (Thomas Huth) [2134399] - s390/pci: fix sleeping in atomic during hotplug (Thomas Huth) [2134399] - s390/pci: remove fmb address from debug output (Thomas Huth) [2134399] - s390/pci: add fmt3 fmb (Thomas Huth) [2134399] - tools headers kvm s390: Sync headers with the kernel sources (Thomas Huth) [2111063] - KVM: s390: resetting the Topology-Change-Report (Thomas Huth) [2111063] - KVM: s390: guest support for topology function (Thomas Huth) [2111063] - KVM: s390: Cleanup ipte lock access and SIIF facility checks (Thomas Huth) [2111063] - KVM: s390: drop unexpected word 'and' in the comments (Thomas Huth) [2111063] - Documentation: KVM: update s390-diag.rst reference (Thomas Huth) [2043872] - Documentation: KVM: update msr.rst reference (Thomas Huth) [2043872] - Documentation: KVM: update amd-memory-encryption.rst references (Thomas Huth) [2043872] - Documentation: KVM: update s390-pv.rst reference (Thomas Huth) [2043872] - Documentation/virt/kvm/api.rst: Explain rc/rrc delivery (Thomas Huth) [2043872] - Documentation/virt/kvm/api.rst: Add protvirt dump/info api descriptions (Thomas Huth) [2043872] - Documentation: KVM: add API issues section (Thomas Huth) [2043872] - Documentation: virt: Protected virtual machine dumps (Thomas Huth) [2043872] - Documentation: KVM: add separate directories for architecture-specific documentation (Thomas Huth) [2043872] - KVM: s390: Add KVM_CAP_S390_PROTECTED_DUMP (Thomas Huth) [2043872] - KVM: s390: Add CPU dump functionality (Thomas Huth) [2043872] - KVM: s390: Add configuration dump functionality (Thomas Huth) [2043872] - KVM: s390: pv: Add query dump information (Thomas Huth) [2043872] - KVM: s390: pv: Add dump support definitions (Thomas Huth) [2043872] - KVM: s390: pv: Add query interface (Thomas Huth) [2043872] - s390/uv: Add dump fields to query (Thomas Huth) [2043872] - s390/uv: Add SE hdr query information (Thomas Huth) [2043872] - kvm: Move KVM_GET_XSAVE2 IOCTL definition at the end of kvm.h (Thomas Huth) [2043872] - docs: kvm: fix WARNINGs from api.rst (Thomas Huth) [2043872] - s390/mm: use non-quiescing sske for KVM switch to keyed guest (Thomas Huth) [2043872] - s390/gmap: voluntarily schedule during key setting (Thomas Huth) [2043872] - KVM: s390: Don't indicate suppression on dirtying, failing memop (Thomas Huth) [2043872] - s390: uv: Add offset comments to UV query struct and fix naming (Thomas Huth) [2043872] - KVM: s390: Use Makefile.kvm for common files (Thomas Huth) [2043872] - KVM: s390: Skip gfn/size sanity checks on memslot DELETE or FLAGS_ONLY (Thomas Huth) [2043872] - fs: dlm: fix invalid derefence of sb_lvbptr (Alexander Aring) [2121790] - fs: dlm: handle -EBUSY first in unlock validation (Alexander Aring) [2121790] - fs: dlm: handle -EBUSY first in lock arg validation (Alexander Aring) [2121790] - fs: dlm: fix race between test_bit() and queue_work() (Alexander Aring) [2121790] - scsi: core: Fix a use-after-free (Ming Lei) [1961010] - net/mlx5e: Fix wrong use of skb_tcp_all_headers() with encapsulation (Petr Oros) [2135685] - net: add skb_[inner_]tcp_all_headers helpers (Petr Oros) [2135685] - net: marvell: clean up trigraph warning on ??! string (Petr Oros) [2135685] - powerpc/pseries: Use lparcfg to reconfig VAS windows for DLPAR CPU (Steve Best) [2133103] - flow_dissector: Do not count vlan tags inside tunnel payload (Ivan Vecera) [2136875] - flow_offload: Introduce flow_match_pppoe (Ivan Vecera) [2136875] - net/sched: flower: Add PPPoE filter (Ivan Vecera) [2136875] - flow_dissector: Add PPPoE dissectors (Ivan Vecera) [2136875] - net/sched: flower: Consider the number of tags for vlan filters (Ivan Vecera) [2136875] - net/sched: flower: Add number of vlan tags filter (Ivan Vecera) [2136875] - flow_dissector: Add number of vlan tags dissector (Ivan Vecera) [2136875] - net/sched: flower: Reduce identation after is_key_vlan refactoring (Ivan Vecera) [2136875] - net/sched: flower: Helper function for vlan ethtype checks (Ivan Vecera) [2136875] - dissector: do not set invalid PPP protocol (Ivan Vecera) [2136875] - dm bufio: use the acquire memory barrier when testing for B_READING (Benjamin Marzinski) [2139161] - provide arch_test_bit_acquire for architectures that define test_bit (Benjamin Marzinski) [2139161] - wait_on_bit: add an acquire memory barrier (Benjamin Marzinski) [2139161] - add barriers to buffer_uptodate and set_buffer_uptodate (Benjamin Marzinski) [2139161] - dm verity: Add documentation for try_verify_in_tasklet option (Benjamin Marzinski) [2139161] - dm cache: delete the redundant word 'each' in comment (Benjamin Marzinski) [2139161] - dm raid: fix typo in analyse_superblocks code comment (Benjamin Marzinski) [2139161] - dm verity: enable WQ_HIGHPRI on verify_wq (Benjamin Marzinski) [2139161] - dm raid: delete the redundant word 'that' in comment (Benjamin Marzinski) [2139161] - dm: change from DMWARN to DMERR or DMCRIT for fatal errors (Benjamin Marzinski) [2139161] - dm bufio: fix some cases where the code sleeps with spinlock held (Benjamin Marzinski) [2139161] - dm writecache: fix smatch warning about invalid return from writecache_map (Benjamin Marzinski) [2139161] - dm verity: fix verity_parse_opt_args parsing (Benjamin Marzinski) [2139161] - dm verity: fix DM_VERITY_OPTS_MAX value yet again (Benjamin Marzinski) [2139161] - dm bufio: simplify DM_BUFIO_CLIENT_NO_SLEEP locking (Benjamin Marzinski) [2139161] - dm verity: have verify_wq use WQ_HIGHPRI if "try_verify_in_tasklet" (Benjamin Marzinski) [2139161] - dm verity: remove WQ_CPU_INTENSIVE flag since using WQ_UNBOUND (Benjamin Marzinski) [2139161] - dm verity: only copy bvec_iter in verity_verify_io if in_tasklet (Benjamin Marzinski) [2139161] - dm verity: optimize verity_verify_io if FEC not configured (Benjamin Marzinski) [2139161] - dm verity: conditionally enable branching for "try_verify_in_tasklet" (Benjamin Marzinski) [2139161] - dm bufio: conditionally enable branching for DM_BUFIO_CLIENT_NO_SLEEP (Benjamin Marzinski) [2139161] - dm verity: allow optional args to alter primary args handling (Benjamin Marzinski) [2139161] - dm verity: Add optional "try_verify_in_tasklet" feature (Benjamin Marzinski) [2139161] - dm bufio: Add DM_BUFIO_CLIENT_NO_SLEEP flag (Benjamin Marzinski) [2139161] - dm bufio: Add flags argument to dm_bufio_client_create (Benjamin Marzinski) [2139161] - dm: Start pr_preempt from the same starting path (Benjamin Marzinski) [2139161] - dm: Fix PR release handling for non All Registrants (Benjamin Marzinski) [2139161] - dm: Start pr_reserve from the same starting path (Benjamin Marzinski) [2139161] - dm: Allow dm_call_pr to be used for path searches (Benjamin Marzinski) [2139161] - Documentation: dm writecache: Render status list as list (Benjamin Marzinski) [2139161] - Documentation: dm writecache: add blank line before optional parameters (Benjamin Marzinski) [2139161] - dm snapshot: fix typo in snapshot_map() comment (Benjamin Marzinski) [2139161] - dm raid: remove redundant "the" in parse_raid_params() comment (Benjamin Marzinski) [2139161] - dm cache: fix typo in 2 comment blocks (Benjamin Marzinski) [2139161] - dm verity: fix checkpatch close brace error (Benjamin Marzinski) [2139161] - dm table: rename dm_target variable in dm_table_add_target() (Benjamin Marzinski) [2139161] - dm table: audit all dm_table_get_target() callers (Benjamin Marzinski) [2139161] - dm table: remove dm_table_get_num_targets() wrapper (Benjamin Marzinski) [2139161] - writeback: Avoid skipping inode writeback (Waiman Long) [2138886] - writeback: fix obtain a reference to a freeing memcg css (Waiman Long) [2138886] - mm/memcg: disable threshold event handlers on PREEMPT_RT (Waiman Long) [2138886] - memcg: increase MEMCG_CHARGE_BATCH to 64 (Waiman Long) [2138886] - mm: page_counter: rearrange struct page_counter fields (Waiman Long) [2138886] - mm: page_counter: remove unneeded atomic ops for low/min (Waiman Long) [2138886] - memcg: reduce size of memcg vmstats structures (Waiman Long) [2138886] - memcg: rearrange code (Waiman Long) [2138886] - memcg: extract memcg_vmstats from struct mem_cgroup (Waiman Long) [2138886] - mm: memcontrol: fix potential oom_lock recursion deadlock (Waiman Long) [2138886] - mm: memcontrol: add {pgscan,pgsteal}_{kswapd,direct} items in memory.stat of cgroup v2 (Waiman Long) [2138886] - mm/memcg: protect per-CPU counter by disabling preemption on PREEMPT_RT where needed. (Waiman Long) [2138886] - writeback: memcg: simplify cgroup_writeback_by_id (Waiman Long) [2138886] - writeback, cgroup: do not reparent dax inodes (Waiman Long) [2138886] - writeback, cgroup: remove wb from offline list before releasing refcnt (Waiman Long) [2138886] - writeback, cgroup: release dying cgwbs by switching attached inodes (Waiman Long) [2138886] - writeback, cgroup: support switching multiple inodes at once (Waiman Long) [2138886] - writeback, cgroup: split out the functional part of inode_switch_wbs_work_fn() (Waiman Long) [2138886] - writeback, cgroup: keep list of inodes attached to bdi_writeback (Waiman Long) [2138886] - writeback, cgroup: switch to rcu_work API in inode_switch_wbs() (Waiman Long) [2138886] - writeback, cgroup: increment isw_nr_in_flight before grabbing an inode (Waiman Long) [2138886] - writeback, cgroup: add smp_mb() to cgroup_writeback_umount() (Waiman Long) [2138886] - writeback, cgroup: do not switch inodes with I_WILL_FREE flag (Waiman Long) [2138886] - docs/admin-guide: cgroup-v2: typos and spaces (Waiman Long) [2138886] - fs: improve comments for writeback_single_inode() (Waiman Long) [2138886] - writeback: remove struct bdi_writeback_congested (Waiman Long) [2138886] - writeback: remove {set,clear}_wb_congested (Waiman Long) [2138886] - fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount (Waiman Long) [2138886] - blkcg: remove unused __blkg_release_rcu() (Waiman Long) [2138886] - writeback: Add a bdi_writeback_rh extension to struct bdi_writeback (Waiman Long) [2138886] - RDMA/irdma: Report the correct link speed (Kamal Heib) [2125102] - blk-mq: avoid double ->queue_rq() because of early timeout (Ming Lei) [2132438] - blk-mq: add one API for waiting until quiesce is done (Ming Lei) [2132438] - blk-mq: support concurrent queue quiesce/unquiesce (Ming Lei) [2132438] - bridge: Do not send empty IFLA_AF_SPEC attribute (Ivan Vecera) [2139133] - net: bridge: Clear offload_fwd_mark when passing frame up bridge interface. (Ivan Vecera) [2139133] - net: bridge: vlan: fix memory leak in __allowed_ingress (Ivan Vecera) [2139133]- ice: Add additional CSR registers to ETHTOOL_GREGS (Petr Oros) [2131024] - udp: Update reuse->has_conns under reuseport_lock. (Xin Long) [2135937] - udp: Remove redundant __udp_sysctl_init() call from udp_init(). (Xin Long) [2135937] - udp: Fix a data-race around sysctl_udp_l3mdev_accept. (Xin Long) [2135937] - Documentation: fix udp_wmem_min in ip-sysctl.rst (Xin Long) [2135937] - be2net: Fix buffer overflow in be_get_module_eeprom (Josef Oskera) [2126917] - iommu/vt-d: Clean up si_domain in the init_dmars() error path (Jerry Snitselaar) [2133331]- md: Fix spelling mistake in comments of r5l_log (Nigel Croxon) [2112935] - md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d (Nigel Croxon) [2112935] - md/raid10: convert resync_lock to use seqlock (Nigel Croxon) [2112935] - md/raid10: fix improper BUG_ON() in raise_barrier() (Nigel Croxon) [2112935] - md/raid10: prevent unnecessary calls to wake_up() in fast path (Nigel Croxon) [2112935] - md/raid10: don't modify 'nr_waitng' in wait_barrier() for the case nowait (Nigel Croxon) [2112935] - md/raid10: factor out code from wait_barrier() to stop_waiting_barrier() (Nigel Croxon) [2112935] - md: Remove extra mddev_get() in md_seq_start() (Nigel Croxon) [2112935] - md/raid5: Remove unnecessary bio_put() in raid5_read_one_chunk() (Nigel Croxon) [2112935 2111563] - md/raid5: Ensure stripe_fill happens on non-read IO with journal (Nigel Croxon) [2112935] - md/raid5: Don't read ->active_stripes if it's not needed (Nigel Croxon) [2112935] - md/raid5: Cleanup prototype of raid5_get_active_stripe() (Nigel Croxon) [2112935] - md/raid5: Drop extern on function declarations in raid5.h (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_get_active_stripe() (Nigel Croxon) [2112935] - md: Replace snprintf with scnprintf (Nigel Croxon) [2112935] - md/raid10: fix compile warning (Nigel Croxon) [2112935] - md/raid5: Fix spelling mistakes in comments (Nigel Croxon) [2112935] - md: call __md_stop_writes in md_stop (Nigel Croxon) [2112935] - md: Flush workqueue md_rdev_misc_wq in md_alloc() (Nigel Croxon) [2112935] - drivers:md:fix a potential use-after-free bug (Nigel Croxon) [2112935] - md/raid5: Ensure batch_last is released before sleeping for quiesce (Nigel Croxon) [2112935] - md/raid5: Move stripe_request_ctx up (Nigel Croxon) [2112935] - md/raid5: Drop unnecessary call to r5c_check_stripe_cache_usage() (Nigel Croxon) [2112935] - md/raid5: Make is_inactive_blocked() helper (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_get_active_stripe() (Nigel Croxon) [2112935] - md-raid10: fix KASAN warning (Nigel Croxon) [2112935] - md: fix build failure for !MODULE (Nigel Croxon) [2112935] - raid5: fix duplicate checks for rdev->saved_raid_disk (Nigel Croxon) [2112935] - md/raid5: Convert prepare_to_wait() to wait_woken() api (Nigel Croxon) [2112935] - md/raid5: Fix sectors_to_do bitmap overflow in raid5_make_request() (Nigel Croxon) [2112935] - md: Fix spelling mistake in comments (Nigel Croxon) [2112935] - md/raid5: Increase restriction on max segments per request (Nigel Croxon) [2112935] - md/raid5: Improve debug prints (Nigel Croxon) [2112935] - md/raid5: Pivot raid5_make_request() (Nigel Croxon) [2112935] - md/raid5: Check all disks in a stripe_head for reshape progress (Nigel Croxon) [2112935] - md/raid5: Refactor add_stripe_bio() (Nigel Croxon) [2112935] - md/raid5: Keep a reference to last stripe_head for batch (Nigel Croxon) [2112935] - md/raid5: Refactor for loop in raid5_make_request() into while loop (Nigel Croxon) [2112935] - md/raid5: Move read_seqcount_begin() into make_stripe_request() (Nigel Croxon) [2112935] - md/raid5: Drop the do_prepare flag in raid5_make_request() (Nigel Croxon) [2112935] - md/raid5: Factor out helper from raid5_make_request() loop (Nigel Croxon) [2112935] - md/raid5: Move common stripe get code into new find_get_stripe() helper (Nigel Croxon) [2112935] - md/raid5: Move stripe_add_to_batch_list() call out of add_stripe_bio() (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_make_request loop (Nigel Croxon) [2112935] - md/raid5: Factor out ahead_of_reshape() function (Nigel Croxon) [2112935] - md/raid5: Make logic blocking check consistent with logic that blocks (Nigel Croxon) [2112935] - md: unlock mddev before reap sync_thread in action_store (Nigel Croxon) [2112935] - md: Explicitly create command-line configured devices (Nigel Croxon) [2112935] - md: Notify sysfs sync_completed in md_reap_sync_thread() (Nigel Croxon) [2112935] - md: Ensure resync is reported after it starts (Nigel Croxon) [2112935] - md: Use enum for overloaded magic numbers used by mddev->curr_resync (Nigel Croxon) [2112935] - md/raid5-cache: Annotate pslot with __rcu notation (Nigel Croxon) [2112935] - md/raid5-cache: Clear conf->log after finishing work (Nigel Croxon) [2112935] - md/raid5-cache: Drop RCU usage of conf->log (Nigel Croxon) [2112935] - md/raid5-cache: Take mddev_lock in r5c_journal_mode_show() (Nigel Croxon) [2112935] - md/raid5: suspend the array for calls to log_exit() (Nigel Croxon) [2112935] - md/raid5-ppl: Drop unused argument from ppl_handle_flush_request() (Nigel Croxon) [2112935] - md/raid5-log: Drop extern decorators for function prototypes (Nigel Croxon) [2112935] - md/raid5: missing error code in setup_conf() (Nigel Croxon) [2112935] - Revert "md: don't unregister sync_thread with reconfig_mutex held" (Nigel Croxon) [2112935] - qed: fix typos in comments (Manish Chopra) [2111885] - net: qede: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - RDMA/qedr: Fix potential memory leak in __qedr_alloc_mr() (Manish Chopra) [2111885] - qlogic: qed: fix clang -Wformat warnings (Manish Chopra) [2111885] - qed: Use bitmap_empty() (Manish Chopra) [2111885] - qed: Use the bitmap API to allocate bitmaps (Manish Chopra) [2111885] - qlogic/qed: fix repeated words in comments (Manish Chopra) [2111885] - net: qed: fix typos in comments (Manish Chopra) [2111885] - RDMA/qedr: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - qed: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - qed: replace bitmap_weight with bitmap_empty in qed_roce_stop() (Manish Chopra) [2111885] - qed: rework qed_rdma_bmap_free() (Manish Chopra) [2111885] - qed: Remove IP services API. (Manish Chopra) [2111885] - qed: remove an unneed NULL check on list iterator (Manish Chopra) [2111885] - RDMA/irdma: Report RNR NAK generation in device caps (Kamal Heib) [2120676 2103957] - RDMA/irdma: Use s/g array in post send only when its valid (Kamal Heib) [2120676 2103957] - RDMA/irdma: Return correct WC error for bind operation failure (Kamal Heib) [2120676 2103957] - RDMA/irdma: Return error on MR deregister CQP failure (Kamal Heib) [2120676 2103957] - RDMA/irdma: Report the correct max cqes from query device (Kamal Heib) [2120676 2103957] - RDMA/siw: Pass a pointer to virt_to_page() (Kamal Heib) [2120676] - RDMA/cma: Fix arguments order in net device validation (Kamal Heib) [2120676] - RDMA/irdma: Fix drain SQ hang with no completion (Kamal Heib) [2120676 2103957 2033244 2053376] - IB/iser: Fix login with authentication (Kamal Heib) [2120676] - RDMA/ib_srpt: Unify checking rdma_cm_id condition in srpt_cm_req_recv() (Kamal Heib) [2120676] - RDMA/rxe: Fix error unwind in rxe_create_qp() (Kamal Heib) [2120676] - RDMA/rxe: Split qp state for requester and completer (Kamal Heib) [2120676] - RDMA/rxe: Generate error completion for error requester QP state (Kamal Heib) [2120676] - RDMA/rxe: Update wqe_index for each wqe error completion (Kamal Heib) [2120676] - RDMA/srpt: Fix a use-after-free (Kamal Heib) [2120676] - RDMA/srpt: Introduce a reference count in struct srpt_device (Kamal Heib) [2120676] - RDMA/srpt: Duplicate port name members (Kamal Heib) [2120676] - Revert "RDMA/rxe: Create duplicate mapping tables for FMRs" (Kamal Heib) [2120676] - RDMA/rxe: Replace __rxe_do_task by rxe_run_task (Kamal Heib) [2120676] - RDMA/rxe: Limit the number of calls to each tasklet (Kamal Heib) [2120676] - RDMA/rxe: Make the tasklet exits the same (Kamal Heib) [2120676] - RDMA/rxe: Fix rnr retry behavior (Kamal Heib) [2120676] - RDMA/rxe: Add rxe_is_fenced() subroutine (Kamal Heib) [2120676] - RDMA/rxe: For invalidate compare according to set keys in mr (Kamal Heib) [2120676] - RDMA: Fix comment typo (Kamal Heib) [2120676] - IB: Fix repeated words 'the the' comments (Kamal Heib) [2120676] - RDMA/rxe: Fix mw bind to allow any consumer key portion (Kamal Heib) [2120676] - RDMA/rxe: Fix spelling mistake in error print (Kamal Heib) [2120676] - RDMA/rxe: Remove unused qp parameter (Kamal Heib) [2120676] - RDMA/hfi1: fix potential memory leak in setup_base_ctxt() (Kamal Heib) [2120676] - RDMA/rxe: Remove unused mask parameter (Kamal Heib) [2120676] - RDMA/rxe: Rename rxe_atomic_reply to atomic_reply (Kamal Heib) [2120676] - RDMA/rxe: Add common rxe_prepare_res() (Kamal Heib) [2120676] - RDMA/rxe: Fix BUG: KASAN: null-ptr-deref in rxe_qp_do_cleanup (Kamal Heib) [2120676] - RDMA/siw: Fix duplicated reported IW_CM_EVENT_CONNECT_REPLY event (Kamal Heib) [2120676] - RDMA/hfi1: Depend on !UML (Kamal Heib) [2120676] - RDMA/irdma: Use the bitmap API to allocate bitmaps (Kamal Heib) [2120676 2103957] - RDMA: remove useless condition in siw_create_cq() (Kamal Heib) [2120676] - RDMA/irdma: Fix setting of QP context err_rq_idx_valid field (Kamal Heib) [2120676 2103957] - RDMA/irdma: Fix VLAN connection with wildcard address (Kamal Heib) [2120676 2103957] - RDMA/irdma: Fix a window for use-after-free (Kamal Heib) [2120676 2103957] - RDMA/irdma: Make resource distribution algorithm more QP oriented (Kamal Heib) [2120676 2103957] - RDMA/irdma: Make CQP invalid state error non-critical (Kamal Heib) [2120676 2103957] - RDMA/irdma: Add AE source to error log (Kamal Heib) [2120676 2103957] - RDMA/irdma: Add 2 level PBLE support for FMR (Kamal Heib) [2120676 2103957] - IB: Fix spelling of 'writable' (Kamal Heib) [2120676] - RDMA/rxe: Remove unnecessary include statement (Kamal Heib) [2120676] - RDMA/rxe: Replace include statement (Kamal Heib) [2120676] - RDMA/rxe: Convert pr_warn/err to pr_debug in pyverbs (Kamal Heib) [2120676] - RDMA/rxe: Fix deadlock in rxe_do_local_ops() (Kamal Heib) [2120676] - RDMA/rxe: Merge normal and retry atomic flows (Kamal Heib) [2120676] - RDMA/rxe: Move atomic original value to res (Kamal Heib) [2120676] - RDMA/rxe: Move atomic responder res to atomic_reply (Kamal Heib) [2120676] - RDMA/rxe: Add a responder state for atomic reply (Kamal Heib) [2120676] - RDMA/rxe: Move code to rxe_prepare_atomic_res() (Kamal Heib) [2120676] - RDMA/rxe: Convert read side locking to rcu (Kamal Heib) [2120676] - RDMA/rxe: Stop lookup of partially built objects (Kamal Heib) [2120676] - RDMA/rxe: Remove useless pkt parameters (Kamal Heib) [2120676] - RDMA: Correct duplicated words in comments (Kamal Heib) [2120676] - IB/iser: Drain the entire QP during destruction flow (Kamal Heib) [2120676] - RDMA/rxe: fix xa_alloc_cycle() error return value check again (Kamal Heib) [2120676] - RDMA/core: Add a netevent notifier to cma (Kamal Heib) [2120676 2117912] - RDMA/core: Add an rb_tree that stores cm_ids sorted by ifindex and remote IP (Kamal Heib) [2120676 2117912] - RDMA/hfi1: Fix typo in comment (Kamal Heib) [2120676] - RDMA: Split kernel-only global device caps from uverbs device caps (Kamal Heib) [2120675] - RDMA/hfi1: Remove all traces of diagpkt support (Kamal Heib) [2120675] - RDMA/hfi1: Consolidate software versions (Kamal Heib) [2120675] - RDMA/hfi1: Remove pointless driver version (Kamal Heib) [2120675] - RDMA/hfi1: Prevent panic when SDMA is disabled (Kamal Heib) [2120675] - RDMA/core: Fix typo in comment (Kamal Heib) [2120675] - IB/hf1: Fix typo in comment (Kamal Heib) [2120675] - IB/iser: Fix typo in comment (Kamal Heib) [2120675] - IB/isert: Avoid flush_scheduled_work() usage (Kamal Heib) [2120675] - RDMA/siw: Enable siw on tunnel devices (Kamal Heib) [2120675] - RDMA/rxe: Enforce IBA C11-17 (Kamal Heib) [2120675] - RDMA/rxe: Move mw cleanup code to rxe_mw_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Move mr cleanup code to rxe_mr_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Move qp cleanup code to rxe_qp_do_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Check rxe_get() return value (Kamal Heib) [2120675] - RDMA/rxe: Add rxe_srq_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Remove IB_SRQ_INIT_MASK (Kamal Heib) [2120675] - RDMA/rxe: Skip adjusting remote addr for write in retry operation (Kamal Heib) [2120675] - RDMA/rxe: Optimize the mr pool struct (Kamal Heib) [2120675] - RDMA/rxe: Replace paylen by payload (Kamal Heib) [2120675] - RDMA/core: Avoid flush_workqueue(system_unbound_wq) usage (Kamal Heib) [2120675] - RDMA/rxe: Remove useless parameters for update_state() (Kamal Heib) [2120675] - RDMA/rxe: Remove reliable datagram support (Kamal Heib) [2120675] - RDMA/rxe: Remove support for SMI QPs from rdma_rxe (Kamal Heib) [2120675] - RDMA/rxe: Remove mc_grp_pool from struct rxe_dev (Kamal Heib) [2120675] - RDMA/rxe: Remove type 2A memory window capability (Kamal Heib) [2120675] - RDMA/usnic: Refactor usnic_uiom_alloc_pd() (Kamal Heib) [2120675] - RDMA/usnic: Stop using iommu_present() (Kamal Heib) [2120675] - IB/SA: Replace usage of found with dedicated list iterator variable (Kamal Heib) [2120675] - IB/rdmavt: add missing locks in rvt_ruc_loopback (Kamal Heib) [2120675] - IB/uverbs: Move part of enum ib_device_cap_flags to uapi (Kamal Heib) [2120675] - IB/uverbs: Move enum ib_raw_packet_caps to uapi (Kamal Heib) [2120675] - RDMA/pvrdma: Remove useless DMA-32 fallback configuration (Kamal Heib) [2120675] - RDMA: switch from 'pci_' to 'dma_' API (Kamal Heib) [2120675] - scsi: RDMA/srp: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Kamal Heib) [2120675] - scsi: RDMA/iser: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Kamal Heib) [2120675] - x86/fpu: Prevent FPU state corruption (Oleksandr Natalenko) [2130890] - net: team: Unsync device addresses on ndo_stop (Hangbin Liu) [2135240] - mmu_gather: fix the CONFIG_MMU_GATHER_NO_RANGE case (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Force tlb-flush VM_PFNMAP vmas (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Let there be one tlb_{start,end}_vma() implementation (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Remove per arch tlb_{start,end}_vma() (Waiman Long) [2130166] {CVE-2022-39188} - x86/ldt: Use tlb_gather_mmu_fullmm() when freeing LDT page-tables (Waiman Long) [2130166] {CVE-2022-39188} - tlb: arch: Remove empty __tlb_remove_tlb_entry() stubs (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Remove start/end arguments from tlb_gather_mmu() (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Introduce tlb_gather_mmu_fullmm() (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Remove unused start/end arguments from tlb_finish_mmu() (Waiman Long) [2130166] {CVE-2022-39188} - mm: proc: Invalidate TLB after clearing soft-dirty page state (Waiman Long) [2130166] {CVE-2022-39188} - mm: fix clear_refs_write locking (Waiman Long) [2130166] {CVE-2022-39188} - s390/Kconfig: sort config S390 select list once again (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: provide MMU_GATHER_TABLE_FREE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_MMU_GATHER_NO_GATHER (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_MMU_GATHER_PAGE_SIZE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_RCU_TABLE_FREE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: avoid potential double flush (Waiman Long) [2130166] {CVE-2022-39188} - powerpc/mm/book3s64/radix: Flush the full mm even when need_flush_all is set (Waiman Long) [2130166] {CVE-2022-39188} - powerpc/mm/book3s64/radix: Use freed_tables instead of need_flush_all (Waiman Long) [2130166] {CVE-2022-39188} - mm/tlb: Remove CONFIG_HAVE_RCU_TABLE_INVALIDATE (Waiman Long) [2130166] {CVE-2022-39188} - Add skb drop reasons to IPv6 UDP receive path (Antoine Tenart) [2059158] - net: skb: export skb drop reaons to user by TRACE_DEFINE_ENUM (Antoine Tenart) [2059158] - net: skb: prevent the split of kfree_skb_reason() by gcc (Antoine Tenart) [2059158] - tcp: md5: fix IPv4-mapped support (Antoine Tenart) [2059158] - net: dropreason: reformat the comment fo skb drop reasons (Antoine Tenart) [2059158] - net: skb: use auto-generation to convert skb drop reason to string (Antoine Tenart) [2059158] - net: skb: move enum skb_drop_reason to standalone header file (Antoine Tenart) [2059158] - tcp_ipv6: set the drop_reason in the right place (Antoine Tenart) [2059158] - net: tcp: reset 'drop_reason' to NOT_SPCIFIED in tcp_v{4,6}_rcv() (Antoine Tenart) [2059158] - net: skb: change the definition SKB_DR_SET() (Antoine Tenart) [2059158] - net: skb: check the boundrary of drop reason in kfree_skb_reason() (Antoine Tenart) [2059158] - net: dm: check the boundary of skb drop reasons (Antoine Tenart) [2059158] - tcp: fix signed/unsigned comparison (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_ofo_queue() (Antoine Tenart) [2059158] - tcp: add drop reasons to tcp_rcv_synsent_state_process() (Antoine Tenart) [2059158] - tcp: make tcp_rcv_synsent_state_process() drop monitor friend (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_prune_ofo_queue() (Antoine Tenart) [2059158] - tcp: add two drop reasons for tcp_ack() (Antoine Tenart) [2059158] - tcp: add drop reasons to tcp_rcv_state_process() (Antoine Tenart) [2059158] - tcp: make tcp_rcv_state_process() drop monitor friendly (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_validate_incoming() (Antoine Tenart) [2059158] - tcp: get rid of rst_seq_match (Antoine Tenart) [2059158] - tcp: consume incoming skb leading to a reset (Antoine Tenart) [2059158] - tcp: tcp_send_challenge_ack delete useless param `skb` (Antoine Tenart) [2059158] - ipv6: fix NULL deref in ip6_rcv_core() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_protocol_deliver_rcu() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_rcv_core() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to TLV parse (Antoine Tenart) [2059158] - net: ipv6: remove redundant statistics in ipv6_hop_jumbo() (Antoine Tenart) [2059158] - net: icmp: introduce function icmpv6_param_prob_reason() (Antoine Tenart) [2059158] - net: ip: add skb drop reasons to ip forwarding (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_pkt_drop() (Antoine Tenart) [2059158] - net: ipv4: add skb drop reasons to ip_error() (Antoine Tenart) [2059158] - skb: add some helpers for skb drop reasons (Antoine Tenart) [2059158] - net: icmp: add skb drop reasons to icmp protocol (Antoine Tenart) [2059158] - ping: Check return value of function 'ping_queue_rcv_skb' (Antoine Tenart) [2059158] - net: icmp: introduce __ping_queue_rcv_skb() to report drop reasons (Antoine Tenart) [2059158] - net: skb: rename SKB_DROP_REASON_PTYPE_ABSENT (Antoine Tenart) [2059158] - net: sock: introduce sock_queue_rcv_skb_reason() (Antoine Tenart) [2059158] - net: tcp: fix shim definition of tcp_inbound_md5_hash (Antoine Tenart) [2059158] - skb: make drop reason booleanable (Antoine Tenart) [2059158] - net/tcp: Merge TCP-MD5 inbound callbacks (Antoine Tenart) [2059158] - tcp: md5: add tcp_md5_needed jump label (Antoine Tenart) [2059158] - net: tun: track dropped skb via kfree_skb_reason() (Antoine Tenart) [2059158] - net: tun: split run_ebpf_filter() and pskb_trim() into different "if statement" (Antoine Tenart) [2059158] - net: tap: track dropped skb via kfree_skb_reason() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for __netif_receive_skb_core() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for sch_handle_ingress() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for do_xdp_generic() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for enqueue_to_backlog() (Antoine Tenart) [2059158] - net: dev: add skb drop reasons to __dev_xmit_skb() (Antoine Tenart) [2059158] - net: skb: introduce the function kfree_skb_list_reason() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for sch_handle_egress() (Antoine Tenart) [2059158] - net: neigh: add skb drop reasons to arp_error_report() (Antoine Tenart) [2059158] - net: neigh: use kfree_skb_reason() for __neigh_event_send() (Antoine Tenart) [2059158] - net: ip: add skb drop reasons for ip egress path (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_data_queue_ofo() (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_data_queue() (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_rcv_established() (Antoine Tenart) [2059158] - net: tcp: use kfree_skb_reason() for tcp_v{4,6}_do_rcv() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_add_backlog() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_v{4,6}_inbound_md5_hash() (Antoine Tenart) [2059158] - ipv4/tcp: Pass dif and sdif to tcp_v4_inbound_md5_hash (Antoine Tenart) [2059158] - ipv6/tcp: Pass dif and sdif to tcp_v6_inbound_md5_hash (Antoine Tenart) [2059158] - ipv4/tcp: Use local variable for tcp_md5_addr (Antoine Tenart) [2059158] - net: tcp: use kfree_skb_reason() for tcp_v6_rcv() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_v4_rcv() (Antoine Tenart) [2059158] - net: tcp: introduce tcp_drop_reason() (Antoine Tenart) [2059158] - ipv6: Add reasons for skb drops to __udp6_lib_rcv (Antoine Tenart) [2059158] - net: drop_monitor: support drop reason (Antoine Tenart) [2059158] - net: udp: use kfree_skb_reason() in __udp_queue_rcv_skb() (Antoine Tenart) [2059158] - net: udp: use kfree_skb_reason() in udp_queue_rcv_one_skb() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_protocol_deliver_rcu() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_rcv_finish_core() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_rcv_core() (Antoine Tenart) [2059158] - net: netfilter: use kfree_drop_reason() for NF_DROP (Antoine Tenart) [2059158] - net: skb_drop_reason: add document for drop reasons (Antoine Tenart) [2059158] - net: socket: rename SKB_DROP_REASON_SOCKET_FILTER (Antoine Tenart) [2059158] - net: skb: use kfree_skb_reason() in __udp4_lib_rcv() (Antoine Tenart) [2059158] - net: skb: use kfree_skb_reason() in tcp_v4_rcv() (Antoine Tenart) [2059158] - net: skb: introduce kfree_skb_reason() (Antoine Tenart) [2059158] - bnx2x: Fix comment typo (Manish Chopra) [2111882] - bnx2x: Fix spelling mistake "regiser" -> "register" (Manish Chopra) [2111882] - bnx2x: Fix undefined behavior due to shift overflowing the constant (Manish Chopra) [2111882] - net: sched: act_ct: fix possible refcount leak in tcf_ct_init() (Davide Caratti) [2133741] - net: sched: fix possible refcount leak in tc_new_tfilter() (Davide Caratti) [2133741] - sch_sfb: Also store skb len before calling child enqueue (Davide Caratti) [2133741] - sch_sfb: Don't assume the skb is still around after enqueueing to child (Davide Caratti) [2133741] - net/sched: fix netdevice reference leaks in attach_default_qdiscs() (Davide Caratti) [2133741] - net: sched: tbf: don't call qdisc_put() while holding tree lock (Davide Caratti) [2133741] - net: Fix data-races around weight_p and dev_weight_[rt]x_bias. (Davide Caratti) [2133741] - net/sched: act_api: Notify user space if any actions were flushed before error (Davide Caratti) [2133741] - tipc: fix an information leak in tipc_topsrv_kern_subscr (Xin Long) [2134962] - tipc: Fix recognition of trial period (Xin Long) [2134962] - tipc: fix shift wrapping bug in map_get() (Xin Long) [2134962] - PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited (Myron Stowe) [2072656] - x86/pci/xen: Use msi_msg shadow structs (Jerry Snitselaar) [2133518] - iommu/intel: Use msi_msg shadow structs (Jerry Snitselaar) [2133518] - PCI: MSI: Fix Kconfig dependencies for PCI_MSI_ARCH_FALLBACKS (Jerry Snitselaar) [2133518] - x86/apic/msi: Unbreak DMAR and HPET MSI (Jerry Snitselaar) [2133518] - iommu/amd: Remove domain search for PCI/MSI (Jerry Snitselaar) [2133518] - iommu/vt-d: Remove domain search for PCI/MSI[X] (Jerry Snitselaar) [2133518] - x86/irq: Make most MSI ops XEN private (Jerry Snitselaar) [2133518] - x86/irq: Cleanup the arch_*_msi_irqs() leftovers (Jerry Snitselaar) [2133518] - PCI/MSI: Make arch_.*_msi_irq[s] fallbacks selectable (Jerry Snitselaar) [2133518] - x86/xen: Wrap XEN MSI management into irqdomain (Jerry Snitselaar) [2133518] - x86/xen: Consolidate XEN-MSI init (Jerry Snitselaar) [2133518] - x86/xen: Rework MSI teardown (Jerry Snitselaar) [2133518] - x86/xen: Make xen_msi_init() static and rename it to xen_hvm_msi_init() (Jerry Snitselaar) [2133518] - x86/irq: Move apic_post_init() invocation to one place (Jerry Snitselaar) [2133518] - x86/msi: Use generic MSI domain ops (Jerry Snitselaar) [2133518] - x86/msi: Remove pointless vcpu_affinity callback (Jerry Snitselaar) [2133518] - netfilter: nf_conntrack_irc: Tighten matching on DCC message (Wander Lairson Costa) [2124092] {CVE-2022-2663} - netfilter: nf_conntrack_irc: Fix forged IP logic (Wander Lairson Costa) [2124092] {CVE-2022-2663} - ice: Add support Flex RXD (Michal Schmidt) [2131310] - asm-generic: sections: refactor memory_intersects (Jerry Snitselaar) [2112119] - swiotlb: fix passing local variable to debugfs_create_ulong() (Jerry Snitselaar) [2112119] - swiotlb: move struct io_tlb_slot to swiotlb.c (Jerry Snitselaar) [2112119] - swiotlb: ensure a segment doesn't cross the area boundary (Jerry Snitselaar) [2112119] - swiotlb: consolidate rounding up default_nslabs (Jerry Snitselaar) [2112119] - swiotlb: remove unused fields in io_tlb_mem (Jerry Snitselaar) [2112119] - swiotlb: fix use after free on error handling path (Jerry Snitselaar) [2112119] - swiotlb: split up the global swiotlb lock (Jerry Snitselaar) [2112119] - swiotlb: fail map correctly with failed io_tlb_default_mem (Jerry Snitselaar) [2112119] - swiotlb: remove a useless return in swiotlb_init (Jerry Snitselaar) [2112119] - swiotlb: remove the unused swiotlb_force declaration (Jerry Snitselaar) [2112119] - iommu/dma: Fix race condition during iova_domain initialization (Jerry Snitselaar) [2112119] - iommu/amd: Fix compile warning in init code (Jerry Snitselaar) [2106599] - iommu/amd: Simplify and Consolidate Virtual APIC (AVIC) Enablement (Jerry Snitselaar) [2106599] - iommu/vt-d: Check correct capability for sagaw determination (Jerry Snitselaar) [2112119] - iommu/vt-d: Correctly calculate sagaw value of IOMMU (Jerry Snitselaar) [2112119] - iommu/vt-d: Fix kdump kernels boot failure with scalable mode (Jerry Snitselaar) [2080413] - iommu/amd: use full 64-bit value in build_completion_wait() (Jerry Snitselaar) [2112119] - swiotlb: avoid potential left shift overflow (Jerry Snitselaar) [2112119] - dma-debug: improve search for partial syncs (Jerry Snitselaar) [2112119] - iommu/iova: Improve 32-bit free space estimate (Jerry Snitselaar) [2112119] - iommu/amd: Handle return of iommu_device_sysfs_add (Jerry Snitselaar) [2112119] - swiotlb: fix setting ->force_bounce (Jerry Snitselaar) [2112119] - swiotlb: use the right nslabs-derived sizes in swiotlb_init_late (Jerry Snitselaar) [2112119] - swiotlb: use the right nslabs value in swiotlb_init_remap (Jerry Snitselaar) [2112119] - swiotlb: don't panic when the swiotlb buffer can't be allocated (Jerry Snitselaar) [2112119] - x86: remove cruft from (Jerry Snitselaar) [2112119] - swiotlb: remove swiotlb_init_with_tbl and swiotlb_init_late_with_tbl (Jerry Snitselaar) [2112119] - swiotlb: provide swiotlb_init variants that remap the buffer (Jerry Snitselaar) [2112119] - swiotlb: pass a gfp_mask argument to swiotlb_init_late (Jerry Snitselaar) [2112119] - swiotlb: add a SWIOTLB_ANY flag to lift the low memory restriction (Jerry Snitselaar) [2112119] - swiotlb: make the swiotlb_init interface more useful (Jerry Snitselaar) [2112119] - x86: centralize setting SWIOTLB_FORCE when guest memory encryption is enabled (Jerry Snitselaar) [2112119] - x86: remove the IOMMU table infrastructure (Jerry Snitselaar) [2112119] - swiotlb: rename swiotlb_late_init_with_default_size (Jerry Snitselaar) [2112119] - swiotlb: simplify swiotlb_max_segment (Jerry Snitselaar) [2112119] - iommu/vt-d: avoid invalid memory access via node_online(NUMA_NO_NODE) (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: check return value after calling platform_get_resource() (Jerry Snitselaar) [2112119] - iommu/arm-smmu: fix possible null-ptr-deref in arm_smmu_device_probe() (Jerry Snitselaar) [2112119] - iommu/amd: Increase timeout waiting for GA log enablement (Jerry Snitselaar) [2112119] - iommu/amd: Do not call sleep while holding spinlock (Jerry Snitselaar) [2112119] - iommu/amd: Remove redundant check (Jerry Snitselaar) [2112119] - swiotlb: simplify array allocation (Jerry Snitselaar) [2112119] - swiotlb: tidy up includes (Jerry Snitselaar) [2112119] - treewide: Replace the use of mem_encrypt_active() with cc_platform_has() (Jerry Snitselaar) [2112119] - swiotlb: simplify debugfs setup (Jerry Snitselaar) [2112119] - iommu: Log iova range in map/unmap trace events (Jerry Snitselaar) [2112119] - iommu/amd: Improve amd_iommu_v2_exit() (Jerry Snitselaar) [2112119] - iommu/amd: Remove unused struct fault.devid (Jerry Snitselaar) [2112119] - iommu/amd: Clean up function declarations (Jerry Snitselaar) [2112119] - iommu/amd: Improve error handling for amd_iommu_init_pci (Jerry Snitselaar) [2112119] - iommu/iova: Separate out rcache init (Jerry Snitselaar) [2112119] - iommu/iova: Temporarily include dma-mapping.h from iova.h (Jerry Snitselaar) [2112119] - iommu: Move flush queue data into iommu_dma_cookie (Jerry Snitselaar) [2112119] - iommu/iova: Move flush queue code to iommu-dma (Jerry Snitselaar) [2112119] - iommu/iova: Consolidate flush queue code (Jerry Snitselaar) [2112119] - iommu/vt-d: Use put_pages_list (Jerry Snitselaar) [2112119] - iommu/amd: Use put_pages_list (Jerry Snitselaar) [2112119] - iommu/amd: Simplify pagetable freeing (Jerry Snitselaar) [2112119] - iommu/iova: Squash flush_cb abstraction (Jerry Snitselaar) [2112119] - iommu/iova: Squash entry_dtor abstraction (Jerry Snitselaar) [2112119] - iommu/iova: Move fast alloc size roundup into alloc_iova_fast() (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: fix event handling soft lockup (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: Avoid open coded arithmetic in memory allocation (Jerry Snitselaar) [2112119] - iommu/amd: Fix loop timeout issue in iommu_ga_log_enable() (Jerry Snitselaar) [2112119] - iommu/intel: Use msi_msg shadow structs (Jerry Snitselaar) [2112119] - dma-mapping: use 'bitmap_zalloc()' when applicable (Jerry Snitselaar) [2112119] - iommu/dma: Use kvcalloc() instead of kvzalloc() (Jerry Snitselaar) [2112119] - iommu/vt-d: Convert the return type of first_pte_in_page to bool (Jerry Snitselaar) [2112119] - iommu/vt-d: Use second level for GPA->HPA translation (Jerry Snitselaar) [2112119] - iommu/vt-d: Remove duplicate identity domain flag (Jerry Snitselaar) [2112119] - iommu/vt-d: Do not falsely log intel_iommu is unsupported kernel option (Jerry Snitselaar) [2112119] - iommu/dma: Unexport IOVA cookie management (Jerry Snitselaar) [2112119] - iommu/amd: Use struct_group() for memcpy() region (Jerry Snitselaar) [2112119] - dma-mapping: remove bogus test for pfn_valid from dma_map_resource (Jerry Snitselaar) [2112119] - iommu/vt-d: Use pci_dev_id() helper (Jerry Snitselaar) [2112119] - swiotlb-xen: this is PV-only on x86 (Jerry Snitselaar) [2112119] - xen/pci-swiotlb: reduce visibility of symbols (Jerry Snitselaar) [2112119] - iova: Export alloc_iova_fast() and free_iova_fast() (Jerry Snitselaar) [2112119] - iommu: Clarify default domain Kconfig (Jerry Snitselaar) [2112119] - iommu/io-pgtable: Abstract iommu_iotlb_gather access (Jerry Snitselaar) [2112119] - iommu/vt-d: Refactor Kconfig a bit (Jerry Snitselaar) [2112119] - iommu: Allow enabling non-strict mode dynamically (Jerry Snitselaar) [2112119] - iommu: Merge strictness and domain type configs (Jerry Snitselaar) [2112119] - iommu: Only log strictness for DMA domains (Jerry Snitselaar) [2112119] - iommu: Expose DMA domain strictness via sysfs (Jerry Snitselaar) [2112119] - iommu: Express DMA strictness via the domain type (Jerry Snitselaar) [2112119] - iommu/vt-d: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu/arm-smmu: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu/amd: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu: Introduce explicit type for non-strict DMA domains (Jerry Snitselaar) [2112119] - iommu/io-pgtable: Remove non-strict quirk (Jerry Snitselaar) [2112119] - iommu: Indicate queued flushes via gather data (Jerry Snitselaar) [2112119] - iommu/amd: Remove stale amd_iommu_unmap_flush usage (Jerry Snitselaar) [2112119] - iommu: Remove mode argument from iommu_set_dma_strict() (Jerry Snitselaar) [2112119] - iommu/amd: Add support for IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu/vt-d: Add support for IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu: Enhance IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu: Print strict or lazy mode at init time (Jerry Snitselaar) [2112119] - iommu: Deprecate Intel and AMD cmdline methods to enable strict mode (Jerry Snitselaar) [2112119] - dma-debug: use memory_intersects() directly (Jerry Snitselaar) [2112119] - dma-debug: fix return value of __setup handlers (Jerry Snitselaar) [2112119] - arm-smmu-qcom: Ensure the qcom_scm driver has finished probing (Jerry Snitselaar) [2112119] - iommu/io-pgtable-arm: Clean up faulty sanity check (Jerry Snitselaar) [2112119] - iommu/vt-d: Fix RCU list debugging warnings (Jerry Snitselaar) [2112119] - iommu/dma: add a new dma_map_ops of get_merge_boundary() (Jerry Snitselaar) [2112119] - swiotlb: do not zero buffer in set_memory_decrypted() (Jerry Snitselaar) [2112119] - iommu: iommu_ops RH_KABI cleanup (Jerry Snitselaar) [2112119] - device: Fix RH_KABI work around (Jerry Snitselaar) [2112357] - iommu/vt-d: Drop stop marker messages (Jerry Snitselaar) [2112119] - iommu/vt-d: Remove unused function intel_svm_capable() (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: Fix size calculation in arm_smmu_mm_invalidate_range() (Jerry Snitselaar) [2112119] - iommu/vt-d: Delete dev_has_feat callback (Jerry Snitselaar) [2112119] - iommu/amd: Remove useless irq affinity notifier (Jerry Snitselaar) [2112119]- scsi: qedi: Fix ABBA deadlock in qedi_process_tmf_resp() and qedi_process_cmd_cleanup_resp() (Nilesh Javali) [2109890] - scsi: qedi: Remove set but unused 'page' variable (Nilesh Javali) [2109890] - x86/elf: Disable automatic READ_IMPLIES_EXEC on 64-bit (Wander Lairson Costa) [2070700] {CVE-2022-25265} - x86/elf: Split READ_IMPLIES_EXEC from executable PT_GNU_STACK (Wander Lairson Costa) [2070700] {CVE-2022-25265} - x86/elf: Add table to document READ_IMPLIES_EXEC (Wander Lairson Costa) [2070700] {CVE-2022-25265} - RHEL-only: KVM: selftests: Enable rseq_test on aarch64 (Gavin Shan) [2128974] - KVM: selftests: Use getcpu() instead of sched_getcpu() in rseq_test (Gavin Shan) [2128974] - selftests: kvm: Fix a compile error in selftests/kvm/rseq_test.c (Gavin Shan) [2128974] - KVM: selftests: Fix target thread to be migrated in rseq_test (Gavin Shan) [2128974] - selftests: KVM: Handle compiler optimizations in ucall (Gavin Shan) [2128974] - selftests: kvm: replace ternary operator with min() (Gavin Shan) [2128974] - KVM: selftests: Fix typo in vgic_init test (Gavin Shan) [2128974] - KVM: selftests: Fix buggy-but-benign check in test_v3_new_redist_regions() (Gavin Shan) [2128974] - KVM: arm64: vgic: Fix exit condition in scan_its_table() (Gavin Shan) [2128974] - KVM: arm64: selftests: Add support for GICv2 on v3 (Gavin Shan) [2128974] - KVM: arm64: Fix comment typo in nvhe/switch.c (Gavin Shan) [2128974] - KVM: arm64: vgic: Remove duplicate check in update_affinity_collection() (Gavin Shan) [2128974] - KVM: arm64: Don't return from void function (Gavin Shan) [2128974] - KVM: arm64: Drop stale comment (Gavin Shan) [2128974] - KVM: arm64: Warn if accessing timer pending state outside of vcpu context (Gavin Shan) [2128974] - KVM: arm64: Replace vgic_v3_uaccess_read_pending with vgic_uaccess_read_pending (Gavin Shan) [2128974] - KVM: arm64: vgic: Undo work in failed ITS restores (Gavin Shan) [2128974] - KVM: arm64: vgic: Do not ignore vgic_its_restore_cte failures (Gavin Shan) [2128974] - KVM: arm64: vgic: Add more checks when restoring ITS tables (Gavin Shan) [2128974] - KVM: arm64: vgic: Check that new ITEs could be saved in guest memory (Gavin Shan) [2128974] - KVM: arm64: nvhe: Eliminate kernel-doc warnings (Gavin Shan) [2128974] - KVM: arm64: Print emulated register table name when it is unsorted (Gavin Shan) [2128974] - KVM: arm64: Don't BUG_ON() if emulated register table is unsorted (Gavin Shan) [2128974] - KVM: arm64: Inject exception on out-of-IPA-range translation fault (Gavin Shan) [2128974] - KVM: arm64: vgic: Remove unnecessary type castings (Gavin Shan) [2128974] - KVM: arm64: Drop unused param from kvm_psci_version() (Gavin Shan) [2128974] - KVM: arm64: vgic: Add memcg accounting to vgic allocations (Gavin Shan) [2128974] - x86/split_lock: Enable the split lock feature on Raptor Lake (Prarit Bhargava) [2076738] - mm: prevent page_frag_alloc() from corrupting the memory (Izabela Bakollari) [2132265] - RDMA/mlx5: Set local port to one when accessing counters (Mohammad Kabat) [2077119] - scsi: ch: Do not initialise statics to 0 (Ewan D. Milne) [2132458] - scsi: core: Fix warning in scsi_alloc_sgtables() (Ewan D. Milne) [2132458] - scsi: core: Move the definition of SCSI_QUEUE_DELAY (Ewan D. Milne) [2132458] - scsi: scsi_debug: Fix zone transition to full condition (Ewan D. Milne) [2132458] - scsi: sd_zbc: Prevent zone information memory leak (Ewan D. Milne) [2132458] - scsi: sd: Fix potential NULL pointer dereference (Ewan D. Milne) [2132458] - scsi: sr: Add memory allocation failure handling for get_capabilities() (Ewan D. Milne) [2132458] - scsi: sd: Use cached ATA Information VPD page (Ewan D. Milne) [2132458] - scsi: core: Do not truncate INQUIRY data on modern devices (Ewan D. Milne) [2132458] - scsi: core: Pick suitable allocation length in scsi_report_opcode() (Ewan D. Milne) [2132458] - scsi: core: Query VPD size before getting full page (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add gap zone support (Ewan D. Milne) [2132458] - scsi: scsi_debug: Rename zone type constants (Ewan D. Milne) [2132458] - scsi: scsi_debug: Fix a typo (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Hide gap zones (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Return early in sd_zbc_check_zoned_characteristics() (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Introduce struct zoned_disk_info (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Use logical blocks as unit when querying zones (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Verify that the zone size is a power of two (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Improve source code documentation (Ewan D. Milne) [2132458] - scsi: sr: Do not leak information in ioctl (Ewan D. Milne) [2132458] - scsi: core: Remove unreachable code warning (Ewan D. Milne) [2132458] - scsi: libfc: Fix use after free in fc_exch_abts_resp() (Ewan D. Milne) [2132458] - scsi: scsi_debug: Silence unexpected unlock warnings (Ewan D. Milne) [2132458] - scsi: Remove unused member cmd_pool for structure scsi_host_template (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add environmental reporting log subpage (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add no_rwlock parameter (Ewan D. Milne) [2132458] - scsi: scsi_debug: Divide power on reset UNIT ATTENTION (Ewan D. Milne) [2132458] - scsi: scsi_debug: Use TASK SET FULL more (Ewan D. Milne) [2132458] - scsi: scsi_debug: Strengthen defer_t accesses (Ewan D. Milne) [2132458] - scsi: ch: Don't use GFP_DMA (Ewan D. Milne) [2132458] - scsi: scsi_transport_sas: Add 22.5 Gbps link rate definitions (Ewan D. Milne) [2132458] - scsi: sd: Free scsi_disk device via put_device() (Ewan D. Milne) [2132458] - scsi: scsi_debug: Adjust num_parts to create equally sized partitions (Ewan D. Milne) [2132458] - scsi: ch: remove ch_mutex() (Ewan D. Milne) [2132458] - scsi: ch: synchronize ch_probe() and ch_open() (Ewan D. Milne) [2132458] - scsi: ch: fixup refcounting imbalance for SCSI devices (Ewan D. Milne) [2132458] - scsi: mpi3mr: Schedule IRQ kthreads only on non-RT kernels (Tomas Henzl) [2134535] - netfilter: flowtable: fix stuck flows on cleanup due to pending work (Phil Sutter) [2131370] - netfilter: flowtable: add function to invoke garbage collection immediately (Phil Sutter) [2131370] - netfilter: flowtable: pass flowtable to nf_flow_table_iterate() (Phil Sutter) [2131370] - netfilter: flowtable: separate replace, destroy and stats to different workqueues (Phil Sutter) [2131370] - drm/mgag200: Fix PLL setup for G200_SE_A rev >=4 (Jocelyn Falempe) [2130159] - af_key: Do not call xfrm_probe_algs in parallel (Sabrina Dubroca) [2122369] {CVE-2022-3028} - xfrm: Update ipcomp_scratches with NULL when freed (Sabrina Dubroca) [2136193] - esp: choose the correct inner protocol for GSO on inter address family tunnels (Sabrina Dubroca) [2136193] - xfrm: fix refcount leak in __xfrm_policy_check() (Sabrina Dubroca) [2136193] - xfrm: xfrm_policy: fix a possible double xfrm_pols_put() in xfrm_bundle_lookup() (Sabrina Dubroca) [2136193] - net: Fix esp GSO on inter address family tunnels. (Sabrina Dubroca) [2136193] - esp: Fix BEET mode inter address family tunneling on GSO (Sabrina Dubroca) [2136193] - cifs: fix check of dfs interlinks (Ronnie Sahlberg) [2132414] - powerpc/pseries: Fix numa FORM2 parsing fallback code (Nico Pache) [2089496] - powerpc/pseries: rename numa_dist_table to form2_distances (Nico Pache) [2089496] - x86/pkey: Fix undefined behaviour with PKRU_WD_BIT (Nico Pache) [2089496] - hugetlb: add lockdep check for i_mmap_rwsem held in huge_pmd_share (Nico Pache) [2089496] - mm: page_io: fix psi memory pressure error on cold swapins (Nico Pache) [2089496] - mm/memcg: Remove 'page' parameter to mem_cgroup_charge_statistics() (Nico Pache) [2089496] - mm: workingset: replace IRQ-off check with a lockdep assert. (Nico Pache) [2089496] - mm/madvise: fix potential pte_unmap_unlock pte error (Nico Pache) [2089496] - mm/mmu_notifier.c: fix race in mmu_interval_notifier_remove() (Nico Pache) [2089496] - mm/sparse.c: remove NULL check in clear_hwpoisoned_pages() (Nico Pache) [2089496] - node: fix device cleanups in error handling code (Nico Pache) [2089496] - x86/setup: Fix static memory detection (Nico Pache) [2089496] - x86/fault: Don't send SIGSEGV twice on SEGV_PKUERR (Nico Pache) [2089496] - s390/startup: round down "mem" option to page boundary (Nico Pache) [2089496] - powerpc/64s: Remove 'dummy_copy_buffer' (Nico Pache) [2089496] - page_alloc: fix invalid watermark check on a negative value (Nico Pache) [2089496] - lib/radix-tree: remove unused argument of insert_entries (Nico Pache) [2089496] - drm/radeon: fix incorrrect SPDX-License-Identifiers (Nico Pache) [2089496] - mm/swap: fix the obsolete comment for SWP_TYPE_SHIFT (Nico Pache) [2089496] - irq_work: use kasan_record_aux_stack_noalloc() record callstack (Nico Pache) [2089496] - kdb: Fix the putarea helper function (Nico Pache) [2089496] - mm: slab: Delete unused SLAB_DEACTIVATED flag (Nico Pache) [2089496] - mm, kasan: use compare-exchange operation to set KASAN page tag (Nico Pache) [2089496] - rcu: Avoid alloc_pages() when recording stack (Nico Pache) [2089496] - workqueue, kasan: avoid alloc_pages() when recording stack (Nico Pache) [2089496] - kasan: generic: introduce kasan_record_aux_stack_noalloc() (Nico Pache) [2089496] - kasan: common: provide can_alloc in kasan_save_stack() (Nico Pache) [2089496] - lib/stackdepot: remove unused function argument (Nico Pache) [2089496] - lib/stackdepot: include gfp.h (Nico Pache) [2089496] - blk-cgroup: blk_cgroup_bio_start() should use irq-safe operations on blkg->iostat_cpu (Nico Pache) [2089496] - libnvdimm/pmem: Fix crash triggered when I/O in-flight during unbind (Nico Pache) [2089496] - include/trace/events/vmscan.h: remove mm_vmscan_inactive_list_is_low (Nico Pache) [2089496] - khugepaged: selftests: remove debug_cow (Nico Pache) [2089496] - mm/mmzone.h: simplify is_highmem_idx() (Nico Pache) [2089496] - mm/page-writeback: use __this_cpu_inc() in account_page_dirtied() (Nico Pache) [2089496] - mm/page-writeback: update the comment of Dirty position control (Nico Pache) [2089496] - mm/page-writeback: Fix performance when BDI's share of ratio is 0. (Nico Pache) [2089496] - fuse: ignore PG_workingset after stealing (Nico Pache) [2089496] - mm/slub: actually fix freelist pointer vs redzoning (Nico Pache) [2089496] - mm/slub: clarify verification reporting (Nico Pache) [2089496] - irq_work: Make irq_work_queue() NMI-safe again (Nico Pache) [2089496] - mm/huge_memory.c: remove unused macro TRANSPARENT_HUGEPAGE_DEBUG_COW_FLAG (Nico Pache) [2089496] - irq_work: record irq_work_queue() call stack (Nico Pache) [2089496] - arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL (Nico Pache) [2089496] - mm/arm64: Correct obsolete comment in do_page_fault() (Nico Pache) [2089496] - kernel: kexec: remove the lock operation of system_transition_mutex (Nico Pache) [2089496] - libnvdimm/pmem: Remove unused header (Nico Pache) [2089496] - workqueue: kasan: record workqueue stack (Nico Pache) [2089496] - lib/test_kasan.c: add workqueue test case (Nico Pache) [2089496] - page_frag: Recover from memory pressure (Nico Pache) [2089496] - mm: use helper function put_write_access() (Nico Pache) [2089496] - mm/swapfile.c: remove unnecessary goto out in _swap_info_get() (Nico Pache) [2089496] - mm/swap.c: fix incomplete comment in lru_cache_add_inactive_or_unevictable() (Nico Pache) [2089496] - mm/page_io.c: remove useless out label in __swap_writepage() (Nico Pache) [2089496] - mm/swap_slots.c: remove always zero and unused return value of enable_swap_slots_cache() (Nico Pache) [2089496] - mm/swap.c: fix confusing comment in release_pages() (Nico Pache) [2089496] - mm: annotate a data race in page_zonenum() (Nico Pache) [2089496] - mm/swap.c: annotate data races for lru_rotate_pvecs (Nico Pache) [2089496] - mm/rmap: annotate a data race at tlb_flush_batched (Nico Pache) [2089496] - mm/mempool: fix a data race in mempool_free() (Nico Pache) [2089496] - mm/list_lru: fix a data race in list_lru_count_one (Nico Pache) [2089496] - mm/memcontrol: fix a data race in scan count (Nico Pache) [2089496] - mm/swapfile: fix and annotate various data races (Nico Pache) [2089496] - mm: thp: remove debug_cow switch (Nico Pache) [2089496] - page_alloc: consider highatomic reserve in watermark fast (Nico Pache) [2089496] - mm: remove unnecessary wrapper function do_mmap_pgoff() (Nico Pache) [2089496] - doc: don't use deprecated "---help---" markers in target docs (Nico Pache) [2089496] - doc: cgroup: update note about conditions when oom killer is invoked (Nico Pache) [2089496] - mm: add kvfree_sensitive() for freeing sensitive data objects (Nico Pache) [2089496] - f2fs: fix retry logic in f2fs_write_cache_pages() (Nico Pache) [2089496] - mm/hugetlb: avoid unnecessary check on pud and pmd entry in huge_pte_offset (Nico Pache) [2089496] - mm/page-writeback.c: remove unused variable (Nico Pache) [2089496] - zswap: docs/vm: Fix typo accept_threshold_percent in zswap.rst (Nico Pache) [2089496] - tracing: Add a vmalloc_sync_mappings() for safe measure (Nico Pache) [2089496] - mm/hugetlb: fix a addressing exception caused by huge_pte_offset (Nico Pache) [2089496] - mm/page-writeback.c: write_cache_pages(): deduplicate identical checks (Nico Pache) [2089496] - revert "topology: add support for node_to_mem_node() to determine the fallback node" (Nico Pache) [2089496] - net: memcg: fix lockdep splat in inet_csk_accept() (Nico Pache) [2089496] - net: memcg: late association of sock to memcg (Nico Pache) [2089496] - tmpfs: deny and force are not huge mount options (Nico Pache) [2089496] - mm/zswap.c: add allocation hysteresis if pool limit is hit (Nico Pache) [2089496] - mm/swapfile.c: swap_next should increase position index (Nico Pache) [2089496] - fat: use prandom_u32() for i_generation (Nico Pache) [2089496] - mm/mmap.c: rb_parent is not necessary in __vma_link_list() (Nico Pache) [2089496] - mm/mmap.c: __vma_unlink_prev() is not necessary now (Nico Pache) [2089496] - docs: kmemleak: DEBUG_KMEMLEAK_EARLY_LOG_SIZE changed names (Nico Pache) [2089496] - mm/mmap.c: prev could be retrieved from vma->vm_prev (Nico Pache) [2089496] - mm/zsmalloc.c: fix a -Wunused-function warning (Nico Pache) [2089496] - mm/rmap.c: remove set but not used variable 'cstart' (Nico Pache) [2089496] - tools headers UAPI: Update tools's copy of mman.h headers (Nico Pache) [2089496] - mm/mmap: move common defines to mman-common.h (Nico Pache) [2089496] - mm: fix the MAP_UNINITIALIZED flag (Nico Pache) [2089496] - mm: vmalloc: show number of vmalloc pages in /proc/meminfo (Nico Pache) [2089496] - slab: remove /proc/slab_allocators (Nico Pache) [2089496] - mm/huge_memory.c: fix "orig_pud" set but not used (Nico Pache) [2089496] - mm: hwpoison: use do_send_sig_info() instead of force_sig() (Nico Pache) [2089496] - mm, page_alloc: drop should_suppress_show_mem (Nico Pache) [2089496] - mm,page_alloc: PF_WQ_WORKER threads must sleep at should_reclaim_retry() (Nico Pache) [2089496] - powerpc/8xx: Use patch_site for perf counters setup (Nico Pache) [2089496] - powerpc/8xx: Use patch_site for memory setup patching (Nico Pache) [2089496] - Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED for CONFIG_SWAP" (Nico Pache) [2089496] - mm/swapfile.c: put_swap_page: share more between huge/normal code path (Nico Pache) [2089496] - mm, swap, get_swap_pages: use entry_size instead of cluster in parameter (Nico Pache) [2089496] - mm/swapfile.c: add __swap_entry_free_locked() (Nico Pache) [2089496] - mm/swapfile.c: unify normal/huge code path in put_swap_page() (Nico Pache) [2089496] - mm/swapfile.c: unify normal/huge code path in swap_page_trans_huge_swapped() (Nico Pache) [2089496] - mm/swapfile.c: replace some #ifdef with IS_ENABLED() (Nico Pache) [2089496] - mm: swap: add comments to lock_cluster_or_swap_info() (Nico Pache) [2089496] - mm/swapfile.c: use swap_count() in swap_page_trans_huge_swapped() (Nico Pache) [2089496] - mm, oom: remove sleep from under oom_lock (Nico Pache) [2089496] - mm/hugetlb: remove gigantic page support for HIGHMEM (Nico Pache) [2089496] - mm/page-writeback.c: update stale account_page_redirty() comment (Nico Pache) [2089496] - shmem: use monotonic time for i_generation (Nico Pache) [2089496] - mptcp: increase default max additional subflows to 2 (Paolo Abeni) [2127136] - ipv6/addrconf: fix a null-ptr-deref bug for ip6_ptr (Davide Caratti) [2103990] - ipv6: Refactor fib6_ignore_linkdown (Davide Caratti) [2103990] - Revert "net: af_key: add check for pfkey_broadcast in function pfkey_process" (Davide Caratti) [2103990] - net: af_key: add check for pfkey_broadcast in function pfkey_process (Davide Caratti) [2103990] - certs: Add FIPS selftests (Vladis Dronov) [2134828] - certs: Move load_certificate_list() to be with the asymmetric keys code (Vladis Dronov) [2134828]- selftests/bpf: Limit unroll_count for pyperf600 test (Viktor Malik) [2139128]- perf affinity: Fix out of bound access to "sched_cpus" mask (Michael Petlan) [2125952] - net: skb: introduce and use a single page frag cache (Paolo Abeni) [2063335] - powerpc/pseries/vas: Pass hw_cpu_id to node associativity HCALL (Steve Best) [2131651] - agp/intel: Rename intel-gtt symbols (Jocelyn Falempe) [2115871] - drm/i915/gt: Split intel-gtt functions by arch (Jocelyn Falempe) [2115871] - drm: Implement DRM aperture helpers under video/ (Jocelyn Falempe) [2115871] - efi: Fix build error due to enum collision between efi.h and ima.h (Jocelyn Falempe) [2115871] - Revert "workqueue: remove unused cancel_work()" (Jocelyn Falempe) [2115871] - dma-buf: fix use of DMA_BUF_SET_NAME_{A,B} in userspace (Jocelyn Falempe) [2115871] - drm/i915/gsc: add gsc as a mei auxiliary device (Jocelyn Falempe) [2115871] - drm/i915: Prepare for multiple GTs (Jocelyn Falempe) [2115871] - drm/i915/gt: add gt_is_root() helper (Jocelyn Falempe) [2115871] - drm/i915: Rename INTEL_REGION_LMEM with INTEL_REGION_LMEM_0 (Jocelyn Falempe) [2115871] - drm/i915: fixup the initial fb base on DGFX (Jocelyn Falempe) [2115871] - drm/i915: add i915_gem_object_create_region_at() (Jocelyn Falempe) [2115871] - drm/i915: Report steering details in debugfs (Jocelyn Falempe) [2115871] - x86/gpu: include drm/i915_pciids.h directly in early quirks (Jocelyn Falempe) [2115871] - staging: fbtft: core: set smem_len before fb_deferred_io_init call (Jocelyn Falempe) [2115871] - fbdev: Put mmap for deferred I/O into drivers (Jocelyn Falempe) [2115871] - fbdev: Track deferred-I/O pages in pageref struct (Jocelyn Falempe) [2115871] - fbdev: defio: fix the pagelist corruption (Jocelyn Falempe) [2115871] - fbdev: Don't sort deferred-I/O pages by default (Jocelyn Falempe) [2115871] - staging: fbtft: Add spaces around / - Style (Jocelyn Falempe) [2115871] - fbdev/defio: Early-out if page is already enlisted (Jocelyn Falempe) [2115871] - panic, kexec: make __crash_kexec() NMI safe (Valentin Schneider) [2134126] - kexec: turn all kexec_mutex acquisitions into trylocks (Valentin Schneider) [2134126] - kexec: move locking into do_kexec_load (Valentin Schneider) [2134126] - ice: Fix interface being down after reset with link-down-on-close flag on (Petr Oros) [2024110] - ice: Add low latency Tx timestamp read (Petr Oros) [2092425] - ice: introduce ice_ptp_reset_cached_phctime function (Petr Oros) [2092425] - ice: re-arrange some static functions in ice_ptp.c (Petr Oros) [2092425] - ice: track and warn when PHC update is late (Petr Oros) [2092425] - ice: track Tx timestamp stats similar to other Intel drivers (Petr Oros) [2092425] - ice: implement adjfine with mul_u64_u64_div_u64 (Petr Oros) [2092425] - ice: Add EXTTS feature to the feature bitmap (Petr Oros) [2092425] - math: Export mul_u64_u64_div_u64 (Petr Oros) [2092425] - neighbour: allow NUD_NOARP entries to be forced GCed (Xin Long) [2076534] - neighbour: Prevent Race condition in neighbour subsytem (Xin Long) [2076534] - neighbour: Prevent a dead entry from updating gc_list (Xin Long) [2076534] - net: Exempt multicast addresses from five-second neighbor lifetime (Xin Long) [2076534] - neighbor: Reset gc_entries counter if new entry is released before insert (Xin Long) [2076534] - neighbor: Remove externally learned entries from gc_list (Xin Long) [2076534] - neighbor: Move neigh_update_ext_learned to core file (Xin Long) [2076534] - neighbor: Remove state and flags arguments to neigh_del (Xin Long) [2076534] - neighbor: Fix state check in neigh_forced_gc (Xin Long) [2076534] - neighbor: Fix locking order for gc_list changes (Xin Long) [2076534] - neighbor: gc_list changes should be protected by table lock (Xin Long) [2076534] - neighbor: Improve garbage collection (Xin Long) [2076534] - neighbour: send netlink notification if NTF_ROUTER changes (Xin Long) [2076534] - neighbour: allow admin to set NTF_ROUTER (Xin Long) [2076534] - s390/dasd: add device ping attribute (Tobias Huschle) [2043877] - s390/dasd: suppress generic error messages for PPRC secondary devices (Tobias Huschle) [2043877] - s390/dasd: add ioctl to perform a swap of the drivers copy pair (Tobias Huschle) [2043877] - s390/dasd: add copy pair swap capability (Tobias Huschle) [2043877] - s390/dasd: add copy pair setup (Tobias Huschle) [2043877] - s390/dasd: add query PPRC function (Tobias Huschle) [2043877] - s390/dasd: put block allocation in separate function (Tobias Huschle) [2043877] - s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup (Tobias Huschle) [2043877] - s390/qeth: Split memcpy() of struct qeth_ipacmd_addr_change flexible array (Tobias Huschle) [2110426] - s390/qeth: Fix typo 'the the' in comment (Tobias Huschle) [2110426] - s390/qdio: Fix spelling mistake (Tobias Huschle) [2110426] - qeth: remove a copy of the NAPI_POLL_WEIGHT define (Tobias Huschle) [2110426] - scsi: bnx2fc: Avoid using get_cpu() in bnx2fc_cmd_alloc() (Nilesh Javali) [2109895] - scsi: bnx2fc: Fix spelling mistake "mis-match" -> "mismatch" (Nilesh Javali) [2109895] - scsi: bnx2fc: Make use of the helper macro kthread_run() (Nilesh Javali) [2109895] - scsi: bnx2fc: Fix typo in comments (Nilesh Javali) [2109895] - scsi: qedf: Populate sysfs attributes for vport (Nilesh Javali) [2120219] - scsi: qedf: Fix typo in comment (Nilesh Javali) [2109893] - scsi: qedf: Remove redundant variable op (Nilesh Javali) [2109893] - scsi: qedf: Remove an unneeded NULL check on list iterator (Nilesh Javali) [2109893] - scsi: qedf: Remove unnecessary code (Nilesh Javali) [2109893] - s390/sclp: reserve memory occupied by sclp early buffer (Mete Durlu) [2060830] - s390: make command line configurable (Mete Durlu) [2060830] - s390: support command lines longer than 896 bytes (Mete Durlu) [2060830] - s390/kexec_file: move kernel image size check (Mete Durlu) [2060830] - s390/boot: move sclp early buffer from fixed address in asm to C (Mete Durlu) [2060830] - drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES (Phil Auld) [2115518] - sched/core: Do not requeue task on CPU excluded from cpus_mask (Phil Auld) [2115518] - workqueue: Avoid a false warning in unbind_workers() (Phil Auld) [2115518] - sched/core: Always flush pending blk_plug (Phil Auld) [2115518] - sched/fair: fix case with reduced capacity CPU (Phil Auld) [2115518] - sched: Remove unused function group_first_cpu() (Phil Auld) [2115518] - sched/fair: Remove redundant word " *" (Phil Auld) [2115518] - sched: only perform capability check on privileged operation (Phil Auld) [2115518] - sched: Allow newidle balancing to bail out of load_balance (Phil Auld) [2115518] - sched: Remove the limitation of WF_ON_CPU on wakelist if wakee cpu is idle (Phil Auld) [2115518] - sched: Fix the check of nr_running at queue wakelist (Phil Auld) [2115518] - sched: Fix balance_push() vs __sched_setscheduler() (Phil Auld) [2115518] - sched/fair: Optimize and simplify rq leaf_cfs_rq_list (Phil Auld) [2115518] - topology: Remove unused cpu_cluster_mask() (Phil Auld) [2115518] - sched: Update task_tick_numa to ignore tasks without an mm (Phil Auld) [2115518] - sched/deadline: Remove superfluous rq clock update in push_dl_task() (Phil Auld) [2115518] - time/sched_clock: Fix formatting of frequency reporting code (Phil Auld) [2115518] - time/sched_clock: Use Hz as the unit for clock rate reporting below 4kHz (Phil Auld) [2115518] - time/sched_clock: Round the frequency reported to nearest rather than down (Phil Auld) [2115518] - sched/fair: Delete useless condition in tg_unthrottle_up() (Phil Auld) [2115518] - sched/fair: Fix cfs_rq_clock_pelt() for throttled cfs_rq (Phil Auld) [2115518] - workqueue: Restrict kworker in the offline CPU pool running on housekeeping CPUs (Phil Auld) [2115518] - kernel/sched: Remove dl_boosted flag comment (Phil Auld) [2115518] - workqueue: Remove schedule() in unbind_workers() (Phil Auld) [2115518] - workqueue: Remove outdated comment about exceptional workers in unbind_workers() (Phil Auld) [2115518] - workqueue: Remove the advanced kicking of the idle workers in rebind_workers() (Phil Auld) [2115518] - workqueue: Fix unbind_workers() VS wq_worker_running() race (Phil Auld) [2115518] - sched/membarrier: fix missing local execution of ipi_sync_rq_state() (Phil Auld) [2115518] - kthread: Move prio/affinite change into the newly created thread (Phil Auld) [2115518]- dmaengine: idxd: Correct IAX operation code names (Jerry Snitselaar) [2112121] - dmaengine: dmatest: use strscpy to replace strlcpy (Jerry Snitselaar) [2112121] - dmaengine: remove DMA_MEMCPY_SG once again (Jerry Snitselaar) [2112121] - MAINTAINERS: idxd driver maintainer update (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Replace symbolic permissions by octal permissions (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Remove spaces before tabs (Jerry Snitselaar) [2112121] - dma:dw: remove reference to AVR32 architecture in core.c (Jerry Snitselaar) [2112121] - dmaengine: idxd: Only call idxd_enable_system_pasid() if succeeded in enabling SVA feature (Jerry Snitselaar) [2112121] - dmaengine: idxd: force wq context cleanup on device disable path (Jerry Snitselaar) [2112121] - dmaengine: Revert "dmaengine: add verification of DMA_INTERRUPT capability for dmatest" (Jerry Snitselaar) [2112121] - dmaengine: idxd: Separate user and kernel pasid enabling (Jerry Snitselaar) [2112121] - dmaengine: ptdma: statify pt_tx_status (Jerry Snitselaar) [2112121] - dmaengine: hidma: In hidma_prep_dma_memset treat value as a single byte (Jerry Snitselaar) [2112121] - dmaengine: Document dmaengine_prep_dma_memset (Jerry Snitselaar) [2112121] - dmaengine: PTDMA: support polled mode (Jerry Snitselaar) [2112121] - dmaengine: Remove a useless mutex (Jerry Snitselaar) [2112121] - dmaengine: idxd: update IAA definitions for user header (Jerry Snitselaar) [2112121] - dmaengine: Clarify cyclic transfer residue documentation (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2112121] - dmaengine: iot: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2112121] - dmaengine: ioatdma: use default_groups in kobj_type (Jerry Snitselaar) [2112121] - Documentation: dmaengine: Correctly describe dmatest with channel unset (Jerry Snitselaar) [2112121] - Documentation: dmaengine: Add a description of what dmatest does (Jerry Snitselaar) [2112121] - dmaengine: Add core function and capability check for DMA_MEMCPY_SG (Jerry Snitselaar) [2112121] - dmaengine: Add documentation for new memcpy scatter-gather function (Jerry Snitselaar) [2112121] - dmaengine: remove slave_id config field (Jerry Snitselaar) [2112121] - dmaengine: ioat: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: hsu: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: dw: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: remove debugfs #ifdef (Jerry Snitselaar) [2112121] - dmaengine: dmaengine_desc_callback_valid(): Check for `callback_result` (Jerry Snitselaar) [2112121] - dmaengine: Remove redundant initialization of variable err (Jerry Snitselaar) [2112121] - dmaengine: Extend the dma_slave_width for 128 bytes (Jerry Snitselaar) [2112121] - dmaengine: ioat: depends on !UML (Jerry Snitselaar) [2112121] - dmaengine: dw: Simplify DT property parser (Jerry Snitselaar) [2112121] - dmaengine: dw: Convert members to u32 in platform data (Jerry Snitselaar) [2112121] - dmaengine: dw: Remove error message from DT parsing code (Jerry Snitselaar) [2112121] - dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is not yet available (Jerry Snitselaar) [2112121] - dmaengine: hsu: Account transferred bytes (Jerry Snitselaar) [2112121] - dmaengine: Move kdoc description of struct dma_chan_percpu closer to it (Jerry Snitselaar) [2112121] - dmaengine: QCOM_HIDMA_MGMT depends on HAS_IOMEM (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: comment platform_driver_register call (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: remove unused code (Jerry Snitselaar) [2112121] - dmaengine: Fix a double free in dma_async_device_register (Jerry Snitselaar) [2112121] - dmaengine: hsu: disable spurious interrupt (Jerry Snitselaar) [2112121] - dmaengine: Extend the dmaengine_alignment for 128 and 256 bytes (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Use dmaengine_get_dma_device (Jerry Snitselaar) [2112121] - dmaengine: doc: client: Update for dmaengine_get_dma_device() usage (Jerry Snitselaar) [2112121] - dmaengine: Add support for per channel coherency handling (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Add support for optional router configuration callback (Jerry Snitselaar) [2112121] - dmaengine: add peripheral configuration (Jerry Snitselaar) [2112121] - dmaengine: idma64: Switch to use __maybe_unused instead of ifdeffery (Jerry Snitselaar) [2112121] - dmaengine: ioatdma: remove unused function missed during dma_v2 removal (Jerry Snitselaar) [2112121] - dmaengine: Save few bytes and increase readability of dma_request_chan() (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling (Jerry Snitselaar) [2112121] - dmaengine: dw: Don't include unneeded header to platform data header (Jerry Snitselaar) [2112121] - dmaengine: linux/dmaengine.h: drop duplicated word in a comment (Jerry Snitselaar) [2112121] - dmaengine: ioat: Fix some parameter misspelling and provide description for phys_complete (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Fix misspellings/formatting issues in some function headers (Jerry Snitselaar) [2112121] - Documentation/driver-api: dmaengine/provider: drop doubled word (Jerry Snitselaar) [2112121] - dmaengine: Add support for repeating transactions (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: use true,false for bool variable (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Simplify error handling path in hidma_probe (Jerry Snitselaar) [2112121] - dmaengine: Fix misspelling of "Analog Devices" (Jerry Snitselaar) [2112121] - docs: dmaengine: provider.rst: get rid of some warnings (Jerry Snitselaar) [2112121] - dmaengine: doc: fix warnings/issues of client.rst (Jerry Snitselaar) [2112121] - dmaengine: doc: Properly indent metadata title (Jerry Snitselaar) [2112121] - dmaengine: doc: Add sections for per descriptor metadata support (Jerry Snitselaar) [2112121] - dmaengine: Fix Kconfig indentation (Jerry Snitselaar) [2112121] - dmaengine: qcom: hidma_mgmt: Add of_node_put() before goto (Jerry Snitselaar) [2112121] - dmaengine: Remove dev_err() usage after platform_get_irq() (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Remove call to memset after dmam_alloc_coherent (Jerry Snitselaar) [2112121] - Documentation: dmaengine: clean up description of dmatest usage (Jerry Snitselaar) [2112121] - dmaengine: hsu: Revert "set HSU_CH_MTSR to memory width" (Jerry Snitselaar) [2112121] - dmaengine: qcom: hidma: no need to check return value of debugfs_create functions (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: assign channel cookie correctly (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: convert to DEFINE_SHOW_ATTRIBUTE (Jerry Snitselaar) [2112121] - dmaengine: Documentation: Add documentation for multi chan testing (Jerry Snitselaar) [2112121] - dmaengine: hsu: remove dma_slave_config direction usage (Jerry Snitselaar) [2112121] - dmaengine: hsu: Support dmaengine_terminate_sync() (Jerry Snitselaar) [2112121] - scsi: core: Allow the ALUA transitioning state enough time (Tomas Henzl) [2084250] - scsi: core: Return BLK_STS_TRANSPORT for ALUA transitioning (Tomas Henzl) [2084250] - macvlan: enforce a consistent minimal mtu (Davide Caratti) [2134032] - ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header (Davide Caratti) [2134032] - net: ipvtap - add __init/__exit annotations to module init/exit funcs (Davide Caratti) [2134032] - tunnels: do not assume mac header is set in skb_tunnel_check_pmtu() (Guillaume Nault) [2134099] - erspan: do not assume transport header is always set (Guillaume Nault) [2134099] - net: ip_gre: do not report erspan_ver for gre or gretap (Guillaume Nault) [2134099] - selftests: Fix the if conditions of in test_extra_filter() (Hangbin Liu) [2135232] - selftests: forwarding: add shebang for sch_red.sh (Hangbin Liu) [2135232] - selftests: forwarding: fix error message in learning_test (Hangbin Liu) [2135232] - selftests/net: pass ipv6_args to udpgso_bench's IPv6 TCP test (Hangbin Liu) [2135232] - ping: remove pr_err from ping_lookup (Guillaume Nault) [2135424] - ping: fix the dif and sdif check in ping_lookup (Guillaume Nault) [2135424] - ping: fix the sk_bound_dev_if match in ping_lookup (Guillaume Nault) [2135424] - tcp/udp: Call inet6_destroy_sock() in IPv6 sk->sk_destruct(). (Hangbin Liu) [2135259] - udp: Call inet6_destroy_sock() in setsockopt(IPV6_ADDRFORM). (Hangbin Liu) [2135259] - tcp/udp: Fix memory leak in ipv6_renew_options(). (Hangbin Liu) [2135259] - ipv6: sr: fix out-of-bounds read when setting HMAC data. (Hangbin Liu) [2135259] - ipv6: do not use RT_TOS for IPv6 flowlabel (Hangbin Liu) [2135259] - ipv6/sit: fix ipip6_tunnel_get_prl return value (Hangbin Liu) [2135259] - sit: use min (Hangbin Liu) [2135259] - net: ipv6: unexport __init-annotated seg6_hmac_init() (Hangbin Liu) [2135259] - sit: do not call ipip6_dev_free() from sit_init_net() (Hangbin Liu) [2135259] - block: avoid sign extend problem with default queue flags mask (Nico Pache) [2131929] - mm/hwpoison: do not lock page again when me_huge_page() successfully recovers (Aristeu Rozanski) [2110292] - crypto: ccp - Remove the unneeded result variable (Vladis Dronov) [2130195] - crypto: ccp - Release dma channels before dmaengine unrgister (Vladis Dronov) [2130195] - crypto: ccp - Fail the PSP initialization when writing psp data file failed (Vladis Dronov) [2130195] - crypto: ccp - Initialize PSP when reading psp data file failed (Vladis Dronov) [2130195] - crypto: ccp - Add a quirk to firmware update (Vladis Dronov) [2130195] - crypto: ccp - Add support for new CCP/PSP device ID (Vladis Dronov) [2130195] - crypto: ccp - During shutdown, check SEV data pointer before using (Vladis Dronov) [2130195] - crypto: ccp - Fix device IRQ counting by using platform_irq_count() (Vladis Dronov) [2130195] - crypto: ccp - fix typo in comment (Vladis Dronov) [2130195] - crypto: ccp - Use kzalloc for sev ioctl interfaces to prevent kernel memory leak (Vladis Dronov) [2130195] - crypto: ccp - Fix the INIT_EX data file open failure (Vladis Dronov) [2130195] - crypto: ccp - Log when resetting PSP SEV state (Vladis Dronov) [2130195] - crypto: ccp - When TSME and SME both detected notify user (Vladis Dronov) [2130195] - crypto: ccp - Allow PSP driver to load without SEV/TEE support (Vladis Dronov) [2130195] - crypto: ccp - Export PSP security bits to userspace (Vladis Dronov) [2130195] - crypto: ccp - cache capability into psp device (Vladis Dronov) [2130195] - PCI: Add support for dev_groups to struct pci_driver (Vladis Dronov) [2130195] - ACPI: processor idle: Practically limit "Dummy wait" workaround to old Intel systems (Wei Huang) [2130653] - blk-mq: fix io hung due to missing commit_rqs (Ming Lei) [2130028] - block: schedule queue restart after BLK_STS_ZONE_RESOURCE (Ming Lei) [2130028] - blk-mq: call commit_rqs while list empty but error happen (Ming Lei) [2130028] - null_blk: fix ida error handling in null_add_dev() (Ming Lei) [2130028] - blktrace: Trace remapped requests correctly (Ming Lei) [2130028] - virtio_blk: fix the discard_granularity and discard_alignment queue limits (Ming Lei) [2130028] - block: fix bio_clone_blkg_association() to associate with proper blkcg_gq (Ming Lei) [2130028] - blk-mq: do not update io_ticks with passthrough requests (Ming Lei) [2130028] - blk-mq: don't touch ->tagset in blk_mq_get_sq_hctx (Ming Lei) [2130028] - ipmi:ipmb: Fix refcount leak in ipmi_ipmb_probe (Tony Camuso) [2130238] - ipmi: remove unnecessary type castings (Tony Camuso) [2130238] - ipmi: Make two logs unique (Tony Camuso) [2130238] - ipmi:si: Convert pr_debug() to dev_dbg() (Tony Camuso) [2130238] - ipmi: Convert pr_debug() to dev_dbg() (Tony Camuso) [2130238] - ipmi: Fix pr_fmt to avoid compilation issues (Tony Camuso) [2130238] - ipmi: Add an intializer for ipmi_recv_msg struct (Tony Camuso) [2130238] - ipmi: Add an intializer for ipmi_smi_msg struct (Tony Camuso) [2130238] - ipmi:ssif: Check for NULL msg when handling events and messages (Tony Camuso) [2130238] - ipmi: use simple i2c probe function (Tony Camuso) [2130238] - ipmi: Add a sysfs count of total outstanding messages for an interface (Tony Camuso) [2130238] - ipmi: Add a sysfs interface to view the number of users (Tony Camuso) [2130238] - ipmi: Limit the number of message a user may have outstanding (Tony Camuso) [2130238] - ipmi: Add a limit on the number of users that may use IPMI (Tony Camuso) [2130238] - ipmi:ipmi_ipmb: Fix null-ptr-deref in ipmi_unregister_smi() (Tony Camuso) [2130238] - ipmi: When handling send message responses, don't process the message (Tony Camuso) [2130238] - ipmi: fix IPMI_SMI_MSG_TYPE_IPMB_DIRECT response length checking (Tony Camuso) [2130238] - ipmi: fix oob access due to uninit smi_msg type (Tony Camuso) [2130238] - ipmi: Make kABI adjustments (Tony Camuso) [2130238] - ipmi: Add support for IPMB direct messages (Tony Camuso) [2130238] - ice: Fix crash by keep old cfg when update TCs more than queues (Petr Oros) [2129902] - ice: Fix tunnel checksum offload with fragmented traffic (Petr Oros) [2129902] - ice: handle E822 generic device ID in PLDM header (Petr Oros) [2129902] - ice: ethtool: Prohibit improper channel config for DCB (Petr Oros) [2129902] - ice: ethtool: advertise 1000M speeds properly (Petr Oros) [2129902] - ice: Fix switchdev rules book keeping (Petr Oros) [2129902] - ice: fix access-beyond-end in the switch code (Petr Oros) [2129902] - eth: ice: silence the GCC 12 array-bounds warning (Petr Oros) [2129902] - ice: Expose RSS indirection tables for queue groups via ethtool (Petr Oros) [2129902] - Revert "ice: Hide bus-info in ethtool for PRs in switchdev mode" (Petr Oros) [2129902] - ice: remove period on argument description in ice_for_each_vf (Petr Oros) [2129902] - ice: add a function comment for ice_cfg_mac_antispoof (Petr Oros) [2129902] - ice: fix wording in comment for ice_reset_vf (Petr Oros) [2129902] - ice: remove return value comment for ice_reset_all_vfs (Petr Oros) [2129902] - ice: always check VF VSI pointer values (Petr Oros) [2129902] - ice: add newline to dev_dbg in ice_vf_fdir_dump_info (Petr Oros) [2129902] - ice: get switch id on switchdev devices (Petr Oros) [2129902] - ice: return ENOSPC when exceeding ICE_MAX_CHAIN_WORDS (Petr Oros) [2129902] - ice: introduce common helper for retrieving VSI by vsi_num (Petr Oros) [2129902] - ice: use min_t() to make code cleaner in ice_gnss (Petr Oros) [2129902] - ice: Add mpls+tso support (Petr Oros) [2129902] - ice: switch: convert packet template match code to rodata (Petr Oros) [2129902] - ice: switch: use convenience macros to declare dummy pkt templates (Petr Oros) [2129902] - ice: switch: use a struct to pass packet template params (Petr Oros) [2129902] - ice: switch: unobscurify bitops loop in ice_fill_adv_dummy_packet() (Petr Oros) [2129902] - ice: switch: add and use u16[] aliases to ice_adv_lkup_elem::{h, m}_u (Petr Oros) [2129902] - ice: Support GTP-U and GTP-C offload in switchdev (Petr Oros) [2129902] - ice: Remove useless DMA-32 fallback configuration (Petr Oros) [2129902] - ice: switch to napi_build_skb() (Petr Oros) [2129902] - nbd: fix race between nbd_alloc_config() and module removal (Ming Lei) [2127601] - nbd: call genl_unregister_family() first in nbd_cleanup() (Ming Lei) [2127601] - kselftests: memcg: speed up the memory.high test (Waiman Long) [1839057] - tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null pointer dereference (Waiman Long) [1839057] - kselftest/cgroup: fix incorrect test_core skip (Waiman Long) [1839057] - kselftest/cgroup: fix unexpected testing failure on test_core (Waiman Long) [1839057] - selftests: cgroup: fix cleanup path in test_memcg_subtree_control() (Waiman Long) [1839057] - cgroup: fix an error handling path in alloc_pagecache_max_30M() (Waiman Long) [1839057] - selftests: memcg: expect no low events in unprotected sibling (Waiman Long) [1839057] - selftests: memcg: fix compilation (Waiman Long) [1839057] - kseltest/cgroup: Make test_stress.sh work if run interactively (Waiman Long) [1839057] - cgroup: fix racy check in alloc_pagecache_max_30M() helper function (Waiman Long) [1839057] - cgroup: remove racy check in test_memcg_sock() (Waiman Long) [1839057] - cgroup: account for memory_localevents in test_memcg_oom_group_leaf_events() (Waiman Long) [1839057] - cgroup: account for memory_recursiveprot in test_memcg_low() (Waiman Long) [1839057] - cgroups: refactor children cgroups in memcg tests (Waiman Long) [1839057] - kselftest/cgroup: fix test_stress.sh to use OUTPUT dir (Waiman Long) [1839057] - selftests: cgroup: add a selftest for memory.reclaim (Waiman Long) [1839057] - selftests: cgroup: fix alloc_anon_noexit() instantly freeing memory (Waiman Long) [1839057] - selftests: cgroup: return -errno from cg_read()/cg_write() on failure (Waiman Long) [1839057] - memcg: introduce per-memcg reclaim interface (Waiman Long) [1839057] - kselftests: memcg: update the oom group leaf events test (Waiman Long) [1839057] - mm/memcontrol: return 1 from cgroup.memory __setup() handler (Waiman Long) [1839057] - memcg: synchronously enforce memory.high for large overcharges (Waiman Long) [1839057] - selftests: memcg: test high limit for single entry allocation (Waiman Long) [1839057] - memcg: unify force charging conditions (Waiman Long) [1839057] - memcg: refactor mem_cgroup_oom (Waiman Long) [1839057] - memcg: prohibit unconditional exceeding the limit of dying tasks (Waiman Long) [1839057] - mm, oom: do not trigger out_of_memory from the #PF (Waiman Long) [1839057] - mm, oom: pagefault_out_of_memory: don't force global OOM for dying tasks (Waiman Long) [1839057] - mm: memcontrol: fix root_mem_cgroup charging (Waiman Long) [1839057] - tests/cgroup: move cg_wait_for(), cg_prepare_for_wait() (Waiman Long) [1839057] - mm: memcontrol: don't count limit-setting reclaim as memory pressure (Waiman Long) [1839057] - selftests: Uninitialized variable in test_cgcore_proc_migration() (Waiman Long) [1839057] - kselftests: cgroup: Avoid the reuse of fd after it is deallocated (Waiman Long) [1839057] - selftests: cgroup: Run test_core under interfering stress (Waiman Long) [1839057] - selftests: cgroup: Add task migration tests (Waiman Long) [1839057] - selftests: cgroup: Simplify task self migration (Waiman Long) [1839057] - cgroup: kselftest: relax fs_spec checks (Waiman Long) [1839057] - kselftests: cgroup: remove duplicated include from test_freezer.c (Waiman Long) [1839057] - kselftest/cgroup: fix unexpected testing failure on test_memcontrol (Waiman Long) [1839057] - kselftests: cgroup: add freezer controller self-tests (Waiman Long) [1839057] - Add tests for memory.oom.group (Waiman Long) [1839057] - Fix cg_read_strcmp() (Waiman Long) [1839057] - cgroup: kselftests: add test_core to .gitignore (Waiman Long) [1839057] - selftests: cgroup: add gitignore file (Waiman Long) [1839057] - Add cgroup core selftests (Waiman Long) [1839057] - devdax: Fix soft-reservation memory description (Mark Langsdorf) [2122316] - arm64: cacheinfo: Fix incorrect assignment of signed error value to unsigned fw_level (Mark Langsdorf) [2122316] - ACPI: property: Remove default association from integer maximum values (Mark Langsdorf) [2122316] - ACPI: property: Ignore already existing data node tags (Mark Langsdorf) [2122316] - ACPI: property: Fix type detection of unified integer reading functions (Mark Langsdorf) [2122316] - ACPI: processor: Remove freq Qos request for all CPUs (Mark Langsdorf) [2122316] - ACPI: property: Fix error handling in acpi_init_properties() (Mark Langsdorf) [2122316] - ACPI/IORT: Fix build error implicit-function-declaration (Mark Langsdorf) [2122316] - ACPI/PCI: Remove useless NULL pointer checks (Mark Langsdorf) [2122316] - ACPI: property: Read buffer properties as integers (Mark Langsdorf) [2122316] - ACPI: property: Add support for parsing buffer property UUID (Mark Langsdorf) [2122316] - ACPI: property: Unify integer value reading functions (Mark Langsdorf) [2122316] - ACPI: property: Switch node property referencing from ifs to a switch (Mark Langsdorf) [2122316] - ACPI: property: Move property ref argument parsing into a new function (Mark Langsdorf) [2122316] - ACPI: property: Use acpi_object_type consistently in property ref parsing (Mark Langsdorf) [2122316] - ACPI: property: Tie data nodes to acpi handles (Mark Langsdorf) [2122316] - ACPI: property: Return type of acpi_add_nondev_subnodes() should be bool (Mark Langsdorf) [2122316] - ACPI: CPPC: Do not prevent CPPC from working in the future (Mark Langsdorf) [2122316] - ACPI: PM: x86: Print messages regarding LPS0 idle support (Mark Langsdorf) [2122316] - ACPI: PPTT: Leave the table mapped for the runtime usage (Mark Langsdorf) [2122316] - ACPI: resource: skip IRQ override on AMD Zen platforms (Mark Langsdorf) [2122316] - ACPI: irq: Allow acpi_gsi_to_irq() to have an arch-specific fallback (Mark Langsdorf) [2122316] - APCI: irq: Add support for multiple GSI domains (Mark Langsdorf) [2122316] - irqchip/gic: Drop support for secondary GIC in non-DT systems (Mark Langsdorf) [2122316] - ACPI: video: Use native backlight on Dell Inspiron N4010 (Mark Langsdorf) [2122316] - ACPI: PM: s2idle: Use LPS0 idle if ACPI_FADT_LOW_POWER_S0 is unset (Mark Langsdorf) [2122316] - Revert "[acpi] ACPI / PM: LPIT: Register sysfs attributes based on FADT" (Mark Langsdorf) [2122316] - ACPI: utils: Add api to read _SUB from ACPI (Mark Langsdorf) [2122316] - ACPI: video: Shortening quirk list by identifying Clevo by board_name only (Mark Langsdorf) [2122316] - ACPI: video: Force backlight native for some TongFang devices (Mark Langsdorf) [2122316] - PCI/ACPI: Guard ARM64-specific mcfg_quirks (Mark Langsdorf) [2122316] - ACPI/IORT: Add a helper to retrieve RMR info directly (Mark Langsdorf) [2122316] - ACPI/IORT: Add support to retrieve IORT RMR reserved regions (Mark Langsdorf) [2122316] - ACPI/IORT: Provide a generic helper to retrieve reserve regions (Mark Langsdorf) [2122316] - ACPI/IORT: Make iort_iommu_msi_get_resv_regions() return void (Mark Langsdorf) [2122316] - iommu: Introduce a callback to struct iommu_resv_region (Mark Langsdorf) [2122316] - ACPI: PM: s2idle: Add support for upcoming AMD uPEP HID AMDI008 (Mark Langsdorf) [2122316] - ACPI: PPTT: Use table offset as fw_token instead of virtual address (Mark Langsdorf) [2122316] - ACPI: Move PRM config option under the main ACPI config (Mark Langsdorf) [2122316] - ACPI: Enable Platform Runtime Mechanism(PRM) support on ARM64 (Mark Langsdorf) [2122316] - efi: Simplify arch_efi_call_virt() macro (Mark Langsdorf) [2122316] - efi/x86: Avoid redundant cast of EFI firmware service pointer (Mark Langsdorf) [2122316] - efi/libstub: Annotate firmware routines as __efiapi (Mark Langsdorf) [2122316] - ACPI: PRM: Change handler_addr type to void pointer (Mark Langsdorf) [2122316] - ACPI: bus: Drop driver member of struct acpi_device (Mark Langsdorf) [2122316] - ACPI: bus: Drop redundant check in acpi_device_remove() (Mark Langsdorf) [2122316] - ACPI: APEI: Fix _EINJ vs EFI_MEMORY_SP (Mark Langsdorf) [2122316] - ACPI: LPSS: Fix missing check in register_device_clock() (Mark Langsdorf) [2122316] - ACPI: APEI: Better fix to avoid spamming the console with old error logs (Mark Langsdorf) [2122316] - ACPI: PM: save NVS memory for Lenovo G40-45 (Mark Langsdorf) [2122316] - ACPI: EC: Drop unused ident initializers from dmi_system_id tables (Mark Langsdorf) [2122316] - ACPI: EC: Re-use boot_ec when possible even when EC_FLAGS_TRUST_DSDT_GPE is set (Mark Langsdorf) [2122316] - ACPI: EC: Drop the EC_FLAGS_IGNORE_DSDT_GPE quirk (Mark Langsdorf) [2122316] - ACPI: EC: Remove duplicate ThinkPad X1 Carbon 6th entry from DMI quirks (Mark Langsdorf) [2122316] - ACPI: processor: Drop leftover acpi_processor_get_limit_info() declaration (Mark Langsdorf) [2122316] - ACPI: processor: Split out thermal initialization from ACPI PSS (Mark Langsdorf) [2122316] - redhat/configs: move CONFIG_ACPI_VIDEO to common/generic (Mark Langsdorf) [2122316] - ACPI: video: Drop X86 dependency from Kconfig (Mark Langsdorf) [2122316] - ACPI: video: Fix acpi_video_handles_brightness_key_presses() (Mark Langsdorf) [2122316] - ACPI: video: Change how we determine if brightness key-presses are handled (Mark Langsdorf) [2122316] - ACPI / MMC: PM: Unify fixing up device power (Mark Langsdorf) [2122316] - mmc: sdhci-acpi: Use the new soc_intel_is_byt() helper (Mark Langsdorf) [2122316] - mmc: sdhci-acpi: Remove special handling for GPD win/pocket devices (Mark Langsdorf) [2122316] - ACPI: scan: Walk ACPI device's children using driver core (Mark Langsdorf) [2122316] - ACPI: bus: Introduce acpi_dev_for_each_child_reverse() (Mark Langsdorf) [2122316] - ACPI: video: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: property: Use acpi_dev_for_each_child() for child lookup (Mark Langsdorf) [2122316] - ACPI: container: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: bus: Export acpi_dev_for_each_child() to modules (Mark Langsdorf) [2122316] - ACPI: glue: Introduce acpi_find_child_by_adr() (Mark Langsdorf) [2122316] - ACPI: glue: Introduce acpi_dev_has_children() (Mark Langsdorf) [2122316] - ACPI: glue: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: APEI: Fix double word in a comment (Mark Langsdorf) [2122316] - ACPI: processor/idle: Annotate more functions to live in cpuidle section (Mark Langsdorf) [2122316] - ACPI: DPTF: Support Meteor Lake (Mark Langsdorf) [2122316] - ACPI: CPPC: fix typo in comment (Mark Langsdorf) [2122316] - ACPI: video: improve PM notifer callback (Mark Langsdorf) [2122316] - ACPI: utils: include UUID in _DSM evaluation warning (Mark Langsdorf) [2122316] - cpufreq: CPPC: Enable fast_switch (Mark Langsdorf) [2122316] - acpi/nfit: rely on mce->misc to determine poison granularity (Mark Langsdorf) [2122316] - ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default (Mark Langsdorf) [2122316] - ACPI: clean up white space in a few places for consistency (Mark Langsdorf) [2122316] - ACPI: glue: Rearrange find_child_checks() (Mark Langsdorf) [2122316] - ACPI: DPTF: Add support for high frequency impedance notification (Mark Langsdorf) [2122316] - ACPI: processor: idle: Expose max_cstate/nocst/bm_check_disable read-only in sysfs (Mark Langsdorf) [2122316] - ACPI: battery: Make "not-charging" the default on no charging or full info (Mark Langsdorf) [2122316] - PCI/ACPI: negotiate CXL _OSC (Mark Langsdorf) [2122316] - PCI/ACPI: Prefer CXL _OSC instead of PCIe _OSC for CXL host bridges (Mark Langsdorf) [2122316] - PCI/ACPI: add a helper for retrieving _OSC Control DWORDs (Mark Langsdorf) [2122316] - ACPI: bus: Avoid non-ACPI device objects in walks over children (Mark Langsdorf) [2122316] - ACPI: DPTF: Correct description of INT3407 / INT3532 attributes (Mark Langsdorf) [2122316] - ACPI: BGRT: use static for BGRT_SHOW kobj_attribute defines (Mark Langsdorf) [2122316] - ACPI, APEI, EINJ: Refuse to inject into the zero page (Mark Langsdorf) [2122316] - ACPI: PM: Always print final debug message in acpi_device_set_power() (Mark Langsdorf) [2122316] - ACPI: SPCR: Add support for NVIDIA 16550-compatible port subtype (Mark Langsdorf) [2122316] - ACPI: APEI: Fix missing ERST record id (Mark Langsdorf) [2122316] - ACPICA: Update version to 20220331 (Mark Langsdorf) [2122316] - ACPICA: IORT: Updates for revision E.d (Mark Langsdorf) [2122316] - ACPICA: iASL/MADT: Add OEM-defined subtable (Mark Langsdorf) [2122316] - ACPICA: Add support for ARM Performance Monitoring Unit Table. (Mark Langsdorf) [2122316] - ACPICA: Headers: Replace zero-length array with flexible-array member (Mark Langsdorf) [2122316] - ACPICA: Removed some tabs and // comments (Mark Langsdorf) [2122316] - ACPICA: Update copyright notices to the year 2022 (Mark Langsdorf) [2122316] - ACPICA: Clean up double word in comment (Mark Langsdorf) [2122316] - ACPICA: Add new ACPI 6.4 semantics for LoadTable() operator (Mark Langsdorf) [2122316] - ACPICA: Add new ACPI 6.4 semantics to the Load() operator (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Rename linux specific strucures to device_info (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Fix parsing undocumented bytes at the end of Endpoint Descriptor (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Treat Terminator as specific_config (Mark Langsdorf) [2122316] - ACPICA: Add the subtable CFMWS to the CEDT table (Mark Langsdorf) [2122316] - ACPICA: Add support for the Windows 11 _OSI string (Mark Langsdorf) [2122316] - ACPI: sysfs: Fix BERT error region memory mapping (Mark Langsdorf) [2122316] - ACPI: property: Release subnode properties with data nodes (Mark Langsdorf) [2122316] - PCI: ACPI: PM: Power up devices in D3cold before scanning them (Mark Langsdorf) [2122316] - ACPI: PM: Introduce acpi_dev_power_up_children_with_adr() (Mark Langsdorf) [2122316] - ACPI: bus: Introduce acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: PM: Unify debug messages in acpi_device_set_power() (Mark Langsdorf) [2122316] - ACPI: PM: Convert debug message in acpi_device_get_power() (Mark Langsdorf) [2122316] - device property: Add irq_get to fwnode operation (Mark Langsdorf) [2122316] - device property: Add iomap to fwnode operations (Mark Langsdorf) [2122316] - ACPI: property: Move acpi_fwnode_device_get_match_data() up (Mark Langsdorf) [2122316] - device property: Convert device_{dma_supported,get_dma_attr} to fwnode (Mark Langsdorf) [2122316] - ACPI: Add perf low power callback (Mark Langsdorf) [2122316] - s390: fix double free of GS and RI CBs on fork() failure (Brian Foster) [1944540] - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue (other cases) (Jose Ignacio Tornos Martinez) [2086480] - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue (Jose Ignacio Tornos Martinez) [2086480]- crypto: ecdh - disallow plain "ecdh" usage in FIPS mode (Vladis Dronov) [2129392] - crypto: dh - disallow plain "dh" usage in FIPS mode (Vladis Dronov) [2129392] - x86/cpu: Add new Raptor Lake CPU model number (Prarit Bhargava) [2120361] - mm, oom: fix missing tlb_finish_mmu() in __oom_reap_task_mm(). (Waiman Long) [2130954] - net: atlantic: remove aq_nic_deinit() when resume (Íñigo Huguet) [2130839] - net: atlantic: remove deep parameter on suspend/resume functions (Íñigo Huguet) [2130839] - efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared (Lenny Szubowicz) [2128172] - bonding: 3ad: make ad_ticks_per_sec a const (Jonathan Toppins) [2020773] - bonding: 802.3ad: fix no transmission of LACPDUs (Jonathan Toppins) [2020773] - redhat: workaround CKI cross compilation for scripts (Jan Stancek) [2123399] - nohz/full, sched/rt: Fix missed tick-reenabling bug in dequeue_task_rt() (Phil Auld) [2107238] - gfs2: Make sure FITRIM minlen is rounded up to fs block size (Andrew Price) [2118256] - ceph: don't truncate file in atomic_open (Xiubo Li) [2120924] - of: address: Work around missing device_type property in pcie nodes (Jerry Snitselaar) [2118732] - dma-mapping: introduce DMA range map, supplanting dma_pfn_offset (Jerry Snitselaar) [2118732] - of/address: check for invalid range.cpu_addr (Jerry Snitselaar) [2118732] - of: address: Fix parser address/size cells initialization (Jerry Snitselaar) [2118732] - of_address: Guard of_bus_pci_get_flags with CONFIG_PCI (Jerry Snitselaar) [2118732] - of_address: Add bus type match for pci ranges parser (Jerry Snitselaar) [2118732] - of/address: Support multiple 'dma-ranges' entries (Jerry Snitselaar) [2118732] - of/address: use range parser for of_dma_get_range (Jerry Snitselaar) [2118732] - of/address: Rework of_pci_range parsing for non-PCI buses (Jerry Snitselaar) [2118732] - of: Drop struct of_pci_range.pci_space field (Jerry Snitselaar) [2118732] - of/address: Move range parser code out of CONFIG_PCI (Jerry Snitselaar) [2118732] - of: Make of_dma_get_range() work on bus nodes (Jerry Snitselaar) [2118732] - Revert "arm64: dts: juno: add dma-ranges property" (Jerry Snitselaar) [2118732] - of/address: Fix of_pci_range_parser_one translation of DMA addresses (Jerry Snitselaar) [2118732] - of/address: Translate 'dma-ranges' for parent nodes missing 'dma-ranges' (Jerry Snitselaar) [2118732] - of: address: Follow DMA parent for "dma-coherent" (Jerry Snitselaar) [2118732] - of: Factor out #{addr,size}-cells parsing (Jerry Snitselaar) [2118732] - of/address: Introduce of_get_next_dma_parent() helper (Jerry Snitselaar) [2118732] - of: address: Report of_dma_get_range() errors meaningfully (Jerry Snitselaar) [2118732] - of: address: Add support for the parent DMA bus (Jerry Snitselaar) [2118732] - of: address: Retrieve a parent through a callback in __of_translate_address (Jerry Snitselaar) [2118732] - of: reserved_mem: fix reserve memory leak (Jerry Snitselaar) [2118732] - of: Use device_type helpers to access the node type (Jerry Snitselaar) [2118732] - of: make PowerMac cache node search conditional on CONFIG_PPC_PMAC (Jerry Snitselaar) [2118732]- crypto: qat - add limit to linked list parsing (Vladis Dronov) [2129897] - crypto: qat - use reference to structure in dma_map_single() (Vladis Dronov) [2129897] - Revert "crypto: qat - reduce size of mapped region" (Vladis Dronov) [2129897] - crypto: qat - fix DMA transfer direction (Vladis Dronov) [2129897] - crypto: qat - fix default value of WDT timer (Vladis Dronov) [2129897] - crypto: drivers - move from strlcpy with unused retval to strscpy (Vladis Dronov) [2129897] - crypto: qat - add check to validate firmware images (Vladis Dronov) [2129897] - Documentation: qat: rewrite description (Vladis Dronov) [2129897] - Documentation: qat: Use code block for qat sysfs example (Vladis Dronov) [2129897] - KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled (Dr. David Alan Gilbert) [2079311] - KVM: x86: Always enable legacy FP/SSE in allowed user XFEATURES (Dr. David Alan Gilbert) [2079311] - KVM: x86: Reinstate kvm_vcpu_arch.guest_supported_xcr0 (Dr. David Alan Gilbert) [2079311] - bonding: fix NULL deref in bond_rr_gen_slave_id (Jonathan Toppins) [2051778] - tty: use new tty_insert_flip_string_and_push_buffer() in pty_write() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: extract tty_flip_buffer_commit() from tty_flip_buffer_push() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: drop tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: the rest, stop using tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: drivers/tty/, stop using tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - vt: keyboard, use tty_insert_flip_string in puts_queue (Rafael Aquini) [2078869] {CVE-2022-1462} - vt: use tty_insert_flip_string in respond_string (Rafael Aquini) [2078869] {CVE-2022-1462}- intel_th: pci: Add Raptor Lake-S CPU support (Michael Petlan) [2040035] - intel_th: pci: Add Raptor Lake-S PCH support (Michael Petlan) [2040035] - virtio-net: support XDP when not more queues (Eugenio Pérez) [2122225] - virtio_net: Don't process redirected XDP frames when XDP is disabled (Eugenio Pérez) [2122225] - virtio_net: Fix not restoring real_num_rx_queues (Eugenio Pérez) [2122225] - x86,config: Enable straight-line-speculation fix (Wander Lairson Costa) [2062175] {CVE-2021-26341} - x86/alternative: Relax text_poke_bp() constraint (Wander Lairson Costa) [2062175] {CVE-2021-26341} - perf/x86: Add support for perf text poke event for text_poke_bp_batch() callers (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Add straight-line-speculation validation (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Support conditional retpolines (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Refactor sibling call detection logic (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Change dead_end_function() to return boolean (Wander Lairson Costa) [2062175] {CVE-2021-26341} - x86/lib/atomic64_386_32: Rename things (Wander Lairson Costa) [2062175] {CVE-2021-26341} - KVM: arm64: Fix debug architecture version (Gavin Shan) [2123587] - thunderbolt: Add support for Intel Raptor Lake (Torez Smith) [2040037] - iommu/vt-d: Fix compile error with CONFIG_PCI_ATS not set (Myron Stowe) [2118428 2122515 2127028] - iommu/vt-d: Cure VF irqdomain hickup (Myron Stowe) [2118428 2122515 2127028] - x86/pci: Set default irq domain in pcibios_add_device() (Myron Stowe) [2118428 2122515 2127028] - iommm/amd: Store irq domain in struct device (Myron Stowe) [2118428 2122515 2127028] - iommm/vt-d: Store irq domain in struct device (Myron Stowe) [2118428 2122515 2127028] - PCI/MSI: Provide pci_dev_has_special_msi_domain() helper (Myron Stowe) [2118428 2122515 2127028] - x86/msi: Consolidate MSI allocation (Myron Stowe) [2118428 2122515 2127028] - PCI/MSI: Rework pci_msi_domain_calc_hwirq() (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Consolidate UV domain allocation (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Consolidate DMAR irq allocation (Myron Stowe) [2118428 2122515 2127028] - x86_ioapic_Consolidate_IOAPIC_allocation (Myron Stowe) [2118428 2122515 2127028] - x86/msi: Consolidate HPET allocation (Myron Stowe) [2118428 2122515 2127028] - iommu/irq_remapping: Consolidate irq domain lookup (Myron Stowe) [2118428 2122515 2127028] - iommu/amd: Consolidate irq domain getter (Myron Stowe) [2118428 2122515 2127028] - iommu/vt-d: Consolidate irq domain getter (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Add allocation type for parent domain retrieval (Myron Stowe) [2118428 2122515 2127028] - irqdomain: Export irq_domain_update_bus_token (Myron Stowe) [2118428 2122515 2127028] - perf/x86/intel: Update the FRONTEND MSR mask on Sapphire Rapids (Michael Petlan) [2125349] - perf/x86/intel/uncore: Fix invalid unit check (Michael Petlan) [2125349]- KVM: s390: pv: don't present the ecall interrupt twice (Tobias Huschle) [2125236] - s390/mm: do not trigger write fault when vma does not allow VM_WRITE (Tobias Huschle) [2125218] - PCI: Print a debug message on PCI device release (Tobias Huschle) [2125216] - s390/pci: fix leak of PCI device structure (Tobias Huschle) [2125216] - s390/pci: refactor zpci_create_device() (Tobias Huschle) [2125216] - s390/pci: remove superfluous zdev->zbus check (Tobias Huschle) [2125216] - x86/boot/64: Add missing fixup_pointer() for next_early_pgt access (Rafael Aquini) [2082806] - x86/boot/64: Fix crash if kernel image crosses page table boundary (Rafael Aquini) [2082806] - mm/slab_common: fix possible double free of kmem_cache (Waiman Long) [2093781] - mm/slab_common: Deleting kobject in kmem_cache_destroy() without holding slab_mutex/cpu_hotplug_lock (Waiman Long) [2093781] - mm/slab_common: use WARN() if cache still has objects on destroy (Waiman Long) [2093781] - slab: use __func__ to trace function name (Waiman Long) [2093781] - s390/hugetlb: fix prepare_hugepage_range() check for 2 GB hugepages (Tobias Huschle) [2125215] - platform/x86: intel/pmc: Add Alder Lake N support to PMC core driver (Prarit Bhargava) [2072654] - crash_core: Increase crashkernel=auto size for x86_64, s390 and arm64 (Lichen Liu) [2122874] - virtio-net: fix use-after-free in skb_gro_receive (Cindy Lu) [2069047] - virtio-net: fix use-after-free in page_to_skb() (Cindy Lu) [2069047] - virtio-net: restrict build_skb() use to some arches (Cindy Lu) [2069047] - virtio-net: page_to_skb() use build_skb when there's sufficient tailroom (Cindy Lu) [2069047] - sched/fair: Consider CPU affinity when allowing NUMA imbalance in find_idlest_group() (Phil Auld) [2110020] - sched/numa: Adjust imb_numa_nr to a better approximation of memory channels (Phil Auld) [2110020] - sched/numa: Apply imbalance limitations consistently (Phil Auld) [2110020] - sched/numa: Do not swap tasks between nodes when spare capacity is available (Phil Auld) [2110020] - sched/numa: Initialise numa_migrate_retry (Phil Auld) [2110020] - cpufreq: intel_pstate: Handle no_turbo in frequency invariance (Phil Auld) [2100594] - sched/fair: Introduce SIS_UTIL to search idle CPU based on sum of util_avg (Phil Auld) [2100594] - i2c: piix4: Fix a memory leak in the EFCH MMIO support (Sudheesh Mavila) [2105160] - assoc_array: Fix BUG_ON during garbage collect (Dave Wysochanski) [1920523] - wait: Fix __wait_event_hrtimeout for RT/DL tasks (Derek Barbosa) [2125233]- raid1: ensure write behind bio has less than BIO_MAX_VECS sectors (Nigel Croxon) [2116209] - ceph: fix statfs for subdir mounts (Xiubo Li) [2120943] - ceph: try to queue a writeback if revoking fails (Xiubo Li) [2120940] - ceph: update the auth cap when the async create req is forwarded (Xiubo Li) [2120932] - ceph: make change_auth_cap_ses a global symbol (Xiubo Li) [2120932] - fs/dcache: export d_same_name() helper (Xiubo Li) [2120932] - ceph: wait for the first reply of inflight async unlink (Xiubo Li) [2120932] - redhat: Enable KASAN_VMALLOC (Nico Pache) [2108620] - arm64: select KASAN_VMALLOC for SW/HW_TAGS modes (Nico Pache) [2108620] - x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access (Nico Pache) [2108620] - mm: defer kmemleak object creation of module_alloc() (Nico Pache) [2108620] - arm64: kaslr: keep modules inside module region when KASAN is enabled (Nico Pache) [2108620] - kasan: arm64: fix pcpu_page_first_chunk crash with KASAN_VMALLOC (Nico Pache) [2108620] - arm64: Kconfig: select KASAN_VMALLOC if KANSAN_GENERIC is enabled (Nico Pache) [2108620] - arm64: kaslr: support randomized module area with KASAN_VMALLOC (Nico Pache) [2108620] - arm64: Kconfig: support CONFIG_KASAN_VMALLOC (Nico Pache) [2108620] - arm64: kasan: abstract _text and _end to KERNEL_START/END (Nico Pache) [2108620] - arm64: kasan: don't populate vmalloc area for CONFIG_KASAN_VMALLOC (Nico Pache) [2108620] - x86/kasan: support KASAN_VMALLOC (Nico Pache) [2108620] - ath9k: htc: clean up statistics macros (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - ath9k: hif_usb: simplify if-if to if-else (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - ath9k: fix use-after-free in ath9k_hif_usb_rx_cb (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - igmp: Add ip_mc_list lock in ip_check_mc_rcu (Hangbin Liu) [2114946] {CVE-2022-20141} - scsi: zfcp: Fix missing auto port scan and thus missing target ports (Tobias Huschle) [2121089] - vfio/type1: Unpin zero pages (Alex Williamson) [2123015]- iommu/vt-d: Make DMAR_UNITS_SUPPORTED default 1024 (Jerry Snitselaar) [2120412] - Revert "iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting" (Jerry Snitselaar) [2120412] - ptrace: Check PTRACE_O_SUSPEND_SECCOMP permission on PTRACE_SEIZE (Oleg Nesterov) [2121269] {CVE-2022-30594} - redhat: remove unused STAMP variable from genspec.sh (Herton R. Krzesinski) - internal: Update RHEL_MINOR for the start of RHEL-8.8 development (Lucas Zampieri)- EDAC/amd64: Add new register offset support and related changes (Aristeu Rozanski) [2048792] - EDAC/amd64: Set memory type per DIMM (Aristeu Rozanski) [2048792] - Revert "ixgbevf: Mailbox improvements" (Ken Cox) [2120545] - Revert "ixgbevf: Add support for new mailbox communication between PF and VF" (Ken Cox) [2120545] - drm/amdgpu: Only disable prefer_shadow on hawaii (Lyude Paul) [2118755]- redhat: configs: add CONFIG_SERIAL_MULTI_INSTANTIATE=m for x86_64 (Jaroslav Kysela) [2005073] - ACPI: scan: Add CLSA0101 Laptop Support (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Add CLSA0101 Laptop (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Sort ACPI IDs by HID (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Get rid of redundant 'else' (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Use while (i--) pattern to clean up (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Improve dev_err_probe() messaging (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Drop duplicate check (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Improve autodetection (Jaroslav Kysela) [2005073] - ACPI / scan: Create platform device for CS35L41 (Jaroslav Kysela) [2005073] - ACPI: scan: Create platform device for BCM4752 and LNV4752 ACPI nodes (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Add SPI support (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Reorganize I2C functions (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Rename it for a generic serial driver name (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use the new i2c_acpi_client_count() helper (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use device_get_match_data() to get driver data (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Simplify with dev_err_probe() (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Drop redundant ACPI_PTR() (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Fail the probe if no IRQ provided (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Derive the device name from parent (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use struct_size() helper (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Allow to have same slaves (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Introduce IOAPIC IRQ support (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Distinguish IRQ resource type (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Count I2cSerialBus() resources (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Get rid of obsolete conditional (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Defer probe when no adapter found (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Accept errors of i2c_acpi_new_device() (Jaroslav Kysela) [2005073] - serdev: Fix detection of UART devices on Apple machines. (Jaroslav Kysela) [2005073] - serdev: Add ACPI devices by ResourceSource field (Jaroslav Kysela) [2005073] - spi: Return deferred probe error when controller isn't yet available (Jaroslav Kysela) [2005073] - spi/acpi: avoid spurious matches during slave enumeration (Jaroslav Kysela) [2005073] - spi: Add API to count spi acpi resources (Jaroslav Kysela) [2005073] - spi: Support selection of the index of the ACPI Spi Resource before alloc (Jaroslav Kysela) [2005073] - ACPI: Test for ACPI_SUCCESS rather than !ACPI_FAILURE (Jaroslav Kysela) [2005073] - spi/acpi: fix incorrect ACPI parent check (Jaroslav Kysela) [2005073] - spi: Create helper API to lookup ACPI info for spi device (Jaroslav Kysela) [2005073] - spi/acpi: enumerate all SPI slaves in the namespace (Jaroslav Kysela) [2005073] - spi: kill useless initializer in spi_register_controller() (Jaroslav Kysela) [2005073] - spi: fix ctrl->num_chipselect constraint (Jaroslav Kysela) [2005073] - spi: Don't call spi_get_gpio_descs() before device name is set (Jaroslav Kysela) [2005073] - spi: Avoid undefined behaviour when counting unused native CSs (Jaroslav Kysela) [2005073] - spi: Allow to have all native CSs in use along with GPIOs (Jaroslav Kysela) [2005073] - spi: Add missing error handling for CS GPIOs (Jaroslav Kysela) [2005073] - spi: export tracepoint symbols to modules (Jaroslav Kysela) [2005073] - spi: Fix zero length xfer bug (Jaroslav Kysela) [2005073] - spi: Add generic support for unused native cs with cs-gpios (Jaroslav Kysela) [2005073] - spi: Reduce kthread priority (Jaroslav Kysela) [2005073] - spi: core: Use DEVICE_ATTR_RW() for SPI slave control sysfs attribute (Jaroslav Kysela) [2005073] - i2c: acpi: Add an i2c_acpi_client_count() helper function (Jaroslav Kysela) [2005073] - s390/qeth: cache link_info for ethtool (Michal Schmidt) [2117098] - nfp: amend removal of MODULE_VERSION (Stefan Assmann) [1955769] - x86/speculation: Add LFENCE to RSB fill sequence (Waiman Long) [2115080] {CVE-2022-26373} - x86/speculation: Add RSB VM Exit protections (Waiman Long) [2115080] {CVE-2022-26373} - tools headers cpufeatures: Sync with the kernel sources (Waiman Long) [2115080] - tools headers cpufeatures: Sync with the kernel sources (Waiman Long) [2115080] - x86/speculation: Fix RSB filling with CONFIG_RETPOLINE=n (Waiman Long) [2115080] - x86/bugs: Do not enable IBPB at firmware entry when IBPB is not available (Waiman Long) [2115080] - x86/amd: Use IBPB for firmware calls (Waiman Long) [2115080] - x86/bugs: Warn when "ibrs" mitigation is selected on Enhanced IBRS parts (Waiman Long) [2115080] - iavf: Fix reset error handling (Petr Oros) [2119759] - iavf: Fix NULL pointer dereference in iavf_get_link_ksettings (Petr Oros) [2119759] - iavf: Fix adminq error handling (Petr Oros) [2119759] - iavf: Fix missing state logs (Petr Oros) [2119759] - ixgbe: Add locking to prevent panic when setting sriov_numvfs to zero (Ken Cox) [1978613]- netfilter: ipset: fix suspicious RCU usage in find_set_and_id (Florian Westphal) [2118526] - net/mlx5e: Update netdev features after changing XDP state (Amir Tzin) [2049440] - net/mlx5e: CT: Use own workqueue instead of mlx5e priv (Amir Tzin) [2049440] - net/mlx5e: CT: Add ct driver counters (Amir Tzin) [2049440] - net/mlx5e: CT: Fix cleanup of CT before cleanup of TC ct rules (Amir Tzin) [2049440] - net/mlx5e: Align mlx5e_cleanup_uplink_rep_tx() with upstream code. (Amir Tzin) [2049440] - net/mlx5e: Correct the calculation of max channels for rep (Amir Tzin) [2049440] - Documentation: devlink: mlx5.rst: Fix htmldoc build warning (Amir Tzin) [2049440] - net/mlx5: fs, fail conflicting actions (Amir Tzin) [2049440] - net/mlx5: Rearm the FW tracer after each tracer event (Amir Tzin) [2049440] - net/mlx5: correct ECE offset in query qp output (Amir Tzin) [2049440] - net/mlx5e: Disable softirq in mlx5e_activate_rq to avoid race condition (Amir Tzin) [2049440] - net/mlx5e: TC NIC mode, fix tc chains miss table (Amir Tzin) [2049440] - net/mlx5: Don't use already freed action pointer (Amir Tzin) [2049440] - net/mlx5: fix typo in comment (Amir Tzin) [2049440] - IB/mlx5: Fix undefined behavior due to shift overflowing the constant (Amir Tzin) [2049440] - net/mlx5e: Force ethertype usage in mlx5_ct_fs_smfs_fill_mask() (Amir Tzin) [2049440] - net/mlx5: Drain fw_reset when removing device (Amir Tzin) [2049440] - net/mlx5e: CT: Fix setting flow_source for smfs ct tuples (Amir Tzin) [2049440] - net/mlx5e: CT: Fix support for GRE tuples (Amir Tzin) [2049440] - net/mlx5e: Remove HW-GRO from reported features (Amir Tzin) [2049440] - net/mlx5e: Properly block HW GRO when XDP is enabled (Amir Tzin) [2049440] - net/mlx5e: Properly block LRO when XDP is enabled (Amir Tzin) [2049440] - net/mlx5e: Block rx-gro-hw feature in switchdev mode (Amir Tzin) [2049440] - net/mlx5e: Wrap mlx5e_trap_napi_poll into rcu_read_lock (Amir Tzin) [2049440] - net/mlx5: Initialize flow steering during driver probe (Amir Tzin) [2049440] - net/mlx5: Fix matching on inner TTC (Amir Tzin) [2049440] - net/mlx5: Avoid double clear or set of sync reset requested (Amir Tzin) [2049440] - net/mlx5: Fix deadlock in sync reset flow (Amir Tzin) [2049440] - net/mlx5e: Fix trust state reset in reload (Amir Tzin) [2049440] - net/mlx5e: Avoid checking offload capability in post_parse action (Amir Tzin) [2049440] - net/mlx5e: CT: Fix queued up restore put() executing after relevant ft release (Amir Tzin) [2049440] - net/mlx5e: TC, Fix ct_clear overwriting ct action metadata (Amir Tzin) [2049440] - net/mlx5e: Lag, Don't skip fib events on current dst (Amir Tzin) [2049440] - net/mlx5e: Lag, Fix fib_info pointer assignment (Amir Tzin) [2049440] - net/mlx5e: Lag, Fix use-after-free in fib event handler (Amir Tzin) [2049440] - net/mlx5e: Fix the calling of update_buffer_lossy() API (Amir Tzin) [2049440] - net/mlx5e: Don't match double-vlan packets if cvlan is not set (Amir Tzin) [2049440] - net/mlx5: Fix slab-out-of-bounds while reading resource dump menu (Amir Tzin) [2049440] - RDMA/mlx5: Add a missing update of cache->last_add (Amir Tzin) [2049440] - RDMA/mlx5: Don't remove cache MRs when a delay is needed (Amir Tzin) [2049440] - net/mlx5e: HTB, remove unused function declaration (Amir Tzin) [2049440] - net/mlx5e: Statify function mlx5_cmd_trigger_completions (Amir Tzin) [2049440] - net/mlx5: Remove unused fill page array API function (Amir Tzin) [2049440] - net/mlx5: Remove unused exported contiguous coherent buffer allocation API (Amir Tzin) [2049440] - net/mlx5: CT: Remove extra rhashtable remove on tuple entries (Amir Tzin) [2049440] - net/mlx5: DR, Remove hw_ste from mlx5dr_ste to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove 4 members from mlx5dr_ste_htbl to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove num_of_entries byte_size from struct mlx5_dr_icm_chunk (Amir Tzin) [2049440] - net/mlx5: DR, Remove icm_addr from mlx5dr_icm_chunk to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove mr_addr rkey from struct mlx5dr_icm_chunk (Amir Tzin) [2049440] - net/mlx5: DR, Adjust structure member to reduce memory hole (Amir Tzin) [2049440] - net/mlx5e: Drop cqe_bcnt32 from mlx5e_skb_from_cqe_mpwrq_linear (Amir Tzin) [2049440] - net/mlx5e: Drop the len output parameter from mlx5e_xdp_handle (Amir Tzin) [2049440] - net/mlx5e: RX, Test the XDP program existence out of the handler (Amir Tzin) [2049440] - net/mlx5e: Build SKB in place over the first fragment in non-linear legacy RQ (Amir Tzin) [2049440] - net/mlx5e: Add headroom only to the first fragment in legacy RQ (Amir Tzin) [2049440] - net/mlx5e: Validate MTU when building non-linear legacy RQ fragments info (Amir Tzin) [2049440] - net/mlx5e: MPLSoUDP encap, support action vlan pop_eth explicitly (Amir Tzin) [2049440] - net/mlx5e: MPLSoUDP decap, use vlan push_eth instead of pedit (Amir Tzin) [2049440] - RDMA/mlx5: Fix memory leak in error flow for subscribe event routine (Amir Tzin) [2049440] - net/mlx5e: Fix use-after-free in mlx5e_stats_grp_sw_update_stats (Amir Tzin) [2049440] - net/mlx5e: Remove overzealous validations in netlink EEPROM query (Amir Tzin) [2049440] - net/mlx5: Parse module mapping using mlx5_ifc (Amir Tzin) [2049440] - net/mlx5: Query the maximum MCIA register read size from firmware (Amir Tzin) [2049440] - net/mlx5: CT: Create smfs dr matchers dynamically (Amir Tzin) [2049440] - net/mlx5: CT: Add software steering ct flow steering provider (Amir Tzin) [2049440] - net/mlx5: Add smfs lib to export direct steering API to CT (Amir Tzin) [2049440] - net/mlx5: DR, Add helper to get backing dr table from a mlx5 flow table (Amir Tzin) [2049440] - net/mlx5: CT: Introduce a platform for multiple flow steering providers (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the doorbell pgdir (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for UAR (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the EQs (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the EQ table (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the IRQ table (Amir Tzin) [2049440] - net/mlx5: Delete useless module.h include (Amir Tzin) [2049440] - net/mlx5: DR, Add support for ConnectX-7 steering (Amir Tzin) [2049440] - net/mlx5: DR, Refactor ste_ctx handling for STE v0/1 (Amir Tzin) [2049440] - net/mlx5: DR, Rename action modify fields to reflect naming in HW spec (Amir Tzin) [2049440] - net/mlx5: DR, Fix handling of different actions on the same STE in STEv1 (Amir Tzin) [2049440] - net/mlx5: DR, Remove unneeded comments (Amir Tzin) [2049440] - net/mlx5: DR, Add support for matching on Internet Header Length (IHL) (Amir Tzin) [2049440] - net/mlx5: DR, Align mlx5dv_dr API vport action with FW behavior (Amir Tzin) [2049440] - net/mlx5: Add debugfs counters for page commands failures (Amir Tzin) [2049440] - net/mlx5: Add pages debugfs (Amir Tzin) [2049440] - net/mlx5: Move debugfs entries to separate struct (Amir Tzin) [2049440] - net/mlx5: Change release_all_pages cap bit location (Amir Tzin) [2049440] - net/mlx5: Remove redundant error on reclaim pages (Amir Tzin) [2049440] - net/mlx5: Remove redundant error on give pages (Amir Tzin) [2049440] - net/mlx5: Remove redundant notify fail on give pages (Amir Tzin) [2049440] - net/mlx5: Add command failures data to debugfs (Amir Tzin) [2049440] - net/mlx5e: TC, Fix use after free in mlx5e_clone_flow_attr_for_post_act() (Amir Tzin) [2049440] - net/mlx5: Support GRE conntrack offload (Amir Tzin) [2049440] - mlx5: add support for page_pool_get_stats (Amir Tzin) [2049440] - net/mlx5: Add migration commands definitions (Amir Tzin) [2049440] - net/mlx5: Introduce migration bits and structures (Amir Tzin) [2049440] - net/mlx5: Expose APIs to get/put the mlx5 core device (Amir Tzin) [2049440] - net/mlx5: Disable SRIOV before PF removal (Amir Tzin) [2049440] - net/mlx5: Reuse exported virtfn index function call (Amir Tzin) [2049440] - net/mlx5: Add clarification on sync reset failure (Amir Tzin) [2049440] - net/mlx5: Add reset_state field to MFRL register (Amir Tzin) [2049440] - RDMA/mlx5: Use new command interface API (Amir Tzin) [2049440] - net/mlx5: cmdif, Refactor error handling and reporting of async commands (Amir Tzin) [2049440] - net/mlx5: Use mlx5_cmd_do() in core create_{cq,dct} (Amir Tzin) [2049440] - net/mlx5: cmdif, Add new api for command execution (Amir Tzin) [2049440] - net/mlx5: cmdif, cmd_check refactoring (Amir Tzin) [2049440] - net/mlx5: cmdif, Return value improvements (Amir Tzin) [2049440] - net/mlx5: Lag, offload active-backup drops to hardware (Amir Tzin) [2049440] - net/mlx5: Lag, record inactive state of bond device (Amir Tzin) [2049440] - net/mlx5: Lag, don't use magic numbers for ports (Amir Tzin) [2049440] - net/mlx5: Lag, use local variable already defined to access E-Switch (Amir Tzin) [2049440] - net/mlx5: E-switch, add drop rule support to ingress ACL (Amir Tzin) [2049440] - net/mlx5: E-switch, remove special uplink ingress ACL handling (Amir Tzin) [2049440 2049580] - net/mlx5: E-Switch, reserve and use same uplink metadata across ports (Amir Tzin) [2049440 2049580] - net/mlx5: Add ability to insert to specific flow group (Amir Tzin) [2049440] - mlx5: remove unused static inlines (Amir Tzin) [2049440] - RDMA/mlx5: Reorder calls to pcie_relaxed_ordering_enabled() (Amir Tzin) [2049440] - RDMA/mlx5: Store ndescs instead of the translation table size (Amir Tzin) [2049440] - RDMA/mlx5: Merge similar flows of allocating MR from the cache (Amir Tzin) [2049440] - RDMA/mlx5: Fix the flow of a miss in the allocation of a cache ODP MR (Amir Tzin) [2049440] - RDMA/mlx5: Remove redundant work in struct mlx5_cache_ent (Amir Tzin) [2049440] - net/mlx5e: TC, Allow sample action with CT (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Make post_act parse CT and sample actions (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Clean redundant counter flag from tc action parsers (Amir Tzin) [2049440 2049659] - net/mlx5e: Use multi table support for CT and sample actions (Amir Tzin) [2049440 2049659] - net/mlx5e: Create new flow attr for multi table actions (Amir Tzin) [2049440 2049659] - net/mlx5e: Add post act offload/unoffload API (Amir Tzin) [2049440 2049659] - net/mlx5e: Pass actions param to actions_match_supported() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Move flow hashtable to be per rep (Amir Tzin) [2049440] - net/mlx5e: E-Switch, Add support for tx_port_ts in switchdev mode (Amir Tzin) [2049440] - net/mlx5e: E-Switch, Add PTP counters for uplink representor (Amir Tzin) [2049440] - net/mlx5e: RX, Restrict bulk size for small Striding RQs (Amir Tzin) [2049440] - net/mlx5e: Default to Striding RQ when not conflicting with CQE compression (Amir Tzin) [2049440] - net/mlx5e: Generalize packet merge error message (Amir Tzin) [2049440] - net/mlx5e: Add support for using xdp->data_meta (Amir Tzin) [2049440] - net/mlx5e: Fix spelling mistake "supoported" -> "supported" (Amir Tzin) [2049440] - net/mlx5e: Optimize the common case condition in mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Optimize modulo in mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Optimize mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Use READ_ONCE/WRITE_ONCE for DCBX trust state (Amir Tzin) [2049440] - net/mlx5e: Move repeating code that gets TC prio into a function (Amir Tzin) [2049440] - net/mlx5e: Use select queue parameters to sync with control flow (Amir Tzin) [2049440] - net/mlx5e: Move mlx5e_select_queue to en/selq.c (Amir Tzin) [2049440] - net/mlx5e: Introduce select queue parameters (Amir Tzin) [2049440] - net/mlx5e: Sync txq2sq updates with mlx5e_xmit for HTB queues (Amir Tzin) [2049440] - net/mlx5e: Use a barrier after updating txq2sq (Amir Tzin) [2049440] - net/mlx5e: Disable TX queues before registering the netdev (Amir Tzin) [2049440] - net/mlx5e: Cleanup of start/stop all queues (Amir Tzin) [2049440] - net/mlx5e: Use FW limitation for max MPW WQEBBs (Amir Tzin) [2049440] - net/mlx5e: Read max WQEBBs on the SQ from firmware (Amir Tzin) [2049440] - net/mlx5e: Remove unused tstamp SQ field (Amir Tzin) [2049440] - RDMA/mlx5: Delete useless module.h include (Amir Tzin) [2049440] - RDMA/mlx5: Delete get_num_static_uars function (Amir Tzin) [2049440] - net/mlx5: VLAN push on RX, pop on TX (Amir Tzin) [2049440 2049616] - net/mlx5: Introduce software defined steering capabilities (Amir Tzin) [2049440 2049616] - net/mlx5: Remove unused TIR modify bitmask enums (Amir Tzin) [2049440] - net/mlx5e: CT, Remove redundant flow args from tc ct calls (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Store mapped tunnel id on flow attr (Amir Tzin) [2049440 2049659] - net/mlx5e: Test CT and SAMPLE on flow attr (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: Refactor eswitch attr flags to just attr flags (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: CT, Don't set flow flag CT for ct clear flow (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Hold sample_attr on stack instead of pointer (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: TC, Reject rules with multiple CT actions (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Refactor mlx5e_tc_add_flow_mod_hdr() to get flow attr (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Pass attr to tc_act can_offload() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Split pedit offloads verify from alloc_tc_pedit_action() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Move pedit_headers_action to parse_attr (Amir Tzin) [2049440 2049659] - net/mlx5e: Move counter creation call to alloc_flow_attr_counter() (Amir Tzin) [2049440 2049659] - net/mlx5e: Pass attr arg for attaching/detaching encaps (Amir Tzin) [2049440 2049659] - net/mlx5e: Move code chunk setting encap dests into its own function (Amir Tzin) [2049440 2049659] - net_sched: cls_route: remove from list when handle is 0 (Felix Maurer) [2116328] {CVE-2022-2588} - netfilter: nf_tables: do not allow RULE_ID to refer to another chain (Florian Westphal) [2116356] {CVE-2022-2586} - netfilter: nf_tables: do not allow SET_ID to refer to another table (Florian Westphal) [2116356] {CVE-2022-2586} - netfilter: nf_queue: do not allow packet truncation below transport header offset (Florian Westphal) [2116159] {CVE-2022-36946} - net: let flow have same hash in two directions (Ivan Vecera) [2111094] - ipv4: Fix data-races around sysctl_fib_multipath_hash_fields. (Ivan Vecera) [2111094] - net: Add notifications when multipath hash field change (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash with IPv6 GRE (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash with IPv4 GRE (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash (Ivan Vecera) [2111094] - ipv6: Add custom multipath hash policy (Ivan Vecera) [2111094] - ipv6: Add a sysctl to control multipath hash fields (Ivan Vecera) [2111094] - ipv6: Calculate multipath hash inside switch statement (Ivan Vecera) [2111094] - ipv6: Use a more suitable label name (Ivan Vecera) [2111094] - ipv4: Add custom multipath hash policy (Ivan Vecera) [2111094] - ipv4: Add a sysctl to control multipath hash fields (Ivan Vecera) [2111094] - ipv4: Calculate multipath hash inside switch statement (Ivan Vecera) [2111094] - ipv6: Use math to point per net sysctls into the appropriate struct net (Ivan Vecera) [2111094] - selftest/net/forwarding: declare NETIFS p9 p10 (Ivan Vecera) [2111094] - ipv6: Fix sysctl max for fib_multipath_hash_policy (Ivan Vecera) [2111094] - selftests: forwarding: Test multipath hashing on inner IP pkts for GRE tunnel (Ivan Vecera) [2111094] - ipv6: Support multipath hashing on inner IP pkts (Ivan Vecera) [2111094] - ipv4: Multipath hashing on inner L3 needs to consider inner IPv6 pkts (Ivan Vecera) [2111094] - ipv4: Support multipath hashing on inner IP pkts for GRE tunnel (Ivan Vecera) [2111094] - ipv4: Initialize flowi4_multipath_hash in data path (Ivan Vecera) [2111094] - net: ipv4: Fix NULL pointer dereference in route lookup (Ivan Vecera) [2111094] - route: Add multipath_hash in flowi_common to make user-define hash (Ivan Vecera) [2111094]- drm/nouveau/kms/nv140-: Disable interlacing (Lyude Paul) [2097647] - rpm: convert gcc and libelf to Recommends (Jarod Wilson) [2114900] - redhat: add ca7 to redhat/git/files (Jarod Wilson)- net/mlx5e: TC, Remove redundant error logging (Amir Tzin) [2049436] - net/mlx5e: SHAMPO, reduce TIR indication (Amir Tzin) [2049436] - net/mlx5e: Lag, Only handle events from highest priority multipath entry (Amir Tzin) [2049436] - net/mlx5: Fix offloading with ESWITCH_IPV4_TTL_MODIFY_ENABLE (Amir Tzin) [2049436] - net/mlx5: Fix a race on command flush flow (Amir Tzin) [2049436] - net/mlx5: Fix size field in bufferx_reg struct (Amir Tzin) [2049436] - net/mlx5e: Fix VF min/max rate parameters interchange mistake (Amir Tzin) [2049436] - net/mlx5e: Add missing increment of count (Amir Tzin) [2049436] - net/mlx5e: MPLSoUDP decap, fix check for unsupported matches (Amir Tzin) [2049436] - net/mlx5e: Fix MPLSoUDP encap to use MPLS action information (Amir Tzin) [2049436] - net/mlx5e: Add feature check for set fec counters (Amir Tzin) [2049436 2049711] - net/mlx5e: TC, Skip redundant ct clear actions (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with forward and drop actions (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with drop and modify hdr action (Amir Tzin) [2049436] - net/mlx5e: kTLS, Use CHECKSUM_UNNECESSARY for device-offloaded packets (Amir Tzin) [2049436] - net/mlx5e: Use dma device access helper (add dropped hunk) (Amir Tzin) [2049436] - net/mlx5e: Fix wrong return value on ioctl EEPROM query failure (Amir Tzin) [2049436] - net/mlx5: Fix possible deadlock on rule deletion (Amir Tzin) [2049436] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [2049436] - net/mlx5: Update log_max_qp value to be 17 at most (Amir Tzin) [2049436] - net/mlx5: DR, Don't allow match on IP w/o matching on full ethertype/ip_version (Amir Tzin) [2049436] - net/mlx5e: Avoid field-overflowing memcpy() (Amir Tzin) [2049436] - net/mlx5e: Use struct_group() for memcpy() region (Amir Tzin) [2049436] - net/mlx5e: IPsec: Fix tunnel mode crypto offload for non TCP/UDP traffic (Amir Tzin) [2049436 2052871] - net/mlx5e: IPsec: Fix crypto offload for non TCP/UDP encapsulated traffic (Amir Tzin) [2049436 2052871] - net/mlx5e: Don't treat small ceil values as unlimited in HTB offload (Amir Tzin) [2049436] - net/mlx5: E-Switch, Fix uninitialized variable modact (Amir Tzin) [2049436] - net/mlx5e: Fix handling of wrong devices during bond netevent (Amir Tzin) [2049436] - net/mlx5e: Fix broken SKB allocation in HW-GRO (Amir Tzin) [2049436] - net/mlx5e: Fix wrong calculation of header index in HW_GRO (Amir Tzin) [2049436] - net/mlx5: Fix offloading with ESWITCH_IPV4_TTL_MODIFY_ENABLE (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with forward and drop actions (Amir Tzin) [2049436] - net/mlx5: Use del_timer_sync in fw reset flow of halting poll (Amir Tzin) [2049436] - net/mlx5e: Fix module EEPROM query (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with drop and modify hdr action (Amir Tzin) [2049436] - net/mlx5: Bridge, ensure dev_name is null-terminated (Amir Tzin) [2049436] - net/mlx5: Bridge, take rtnl lock in init error handler (Amir Tzin) [2049436] - mlx5: Don't accidentally set RTO_ONLINK before mlx5e_route_lookup_ipv4_get() (Amir Tzin) [2049436] - net/mlx5e: Fix build error in fec_set_block_stats() (Amir Tzin) [2049436] - Revert "net/mlx5: Add retry mechanism to the command entry index allocation" (Amir Tzin) [2049436] - net/mlx5: Set command entry semaphore up once got index free (Amir Tzin) [2049436] - net/mlx5e: Sync VXLAN udp ports during uplink representor profile change (Amir Tzin) [2049436] - net/mlx5: Fix access to sf_dev_table on allocation failure (Amir Tzin) [2049436] - net/mlx5e: Fix matching on modified inner ip_ecn bits (Amir Tzin) [2049436] - Revert "net/mlx5e: Block offload of outer header csum for GRE tunnel" (Amir Tzin) [2049436] - Revert "net/mlx5e: Block offload of outer header csum for UDP tunnels" (Amir Tzin) [2049436] - net/mlx5e: Fix nullptr on deleting mirroring rule (Amir Tzin) [2049436] - net/mlx5e: Fix page DMA map/unmap attributes (Amir Tzin) [2049436] - net/mlx5: Use dma device access helper (add dropped hunk) (Amir Tzin) [2049436] - net/mlx5e: Add recovery flow in case of error CQE (Amir Tzin) [2049436] - net/mlx5e: Refactor set_pflag_cqe_based_moder (Amir Tzin) [2049436] - net/mlx5e: Move HW-GRO and CQE compression check to fix features flow (Amir Tzin) [2049436] - net/mlx5e: Fix feature check per profile (Amir Tzin) [2049436] - net/mlx5e: Unblock setting vid 0 for VF in case PF isn't eswitch manager (Amir Tzin) [2049436] - net/mlx5e: Expose FEC counters via ethtool (Amir Tzin) [2049436 2049711] - net/mlx5: Update log_max_qp value to FW max capability (Amir Tzin) [2049436] - net/mlx5: Use irq_set_affinity_and_hint() (Amir Tzin) [2049436] - net/mlx5: SF, Use all available cpu for setting cpu affinity (Amir Tzin) [2049436] - net/mlx5: Introduce API for bulk request and release of IRQs (Amir Tzin) [2049436] - net/mlx5: Split irq_pool_affinity logic to new file (Amir Tzin) [2049436] - net/mlx5: Move affinity assignment into irq_request (Amir Tzin) [2049436] - net/mlx5: Introduce control IRQ request API (Amir Tzin) [2049436] - net/mlx5: mlx5e_hv_vhca_stats_create return type to void (Amir Tzin) [2049436] - RDMA/mlx5: Print wc status on CQE error and dump needed (Amir Tzin) [2049436] - net: fixup build after bpf header changes (Amir Tzin) [2049436] - net/mlx5: CT: Set flow source hint from provided tuple device (Amir Tzin) [2049436] - net/mlx5: Set SMFS as a default steering mode if device supports it (Amir Tzin) [2049436] - net/mlx5: DR, Improve steering for empty or RX/TX-only matchers (Amir Tzin) [2049436] - net/mlx5: DR, Add support for matching on geneve_tlv_option_0_exist field (Amir Tzin) [2049436] - net/mlx5: DR, Support matching on tunnel headers 0 and 1 (Amir Tzin) [2049436] - net/mlx5: DR, Add misc5 to match_param structs (Amir Tzin) [2049436] - net/mlx5: Add misc5 flow table match parameters (Amir Tzin) [2049436] - net/mlx5: DR, Add support for UPLINK destination type (Amir Tzin) [2049436] - net/mlx5e: Use auxiliary_device driver data helpers (Amir Tzin) [2049436] - net/mlx5e: Take packet_merge params directly from the RX res struct (Amir Tzin) [2049436] - net/mlx5e: Allocate per-channel stats dynamically at first usage (Amir Tzin) [2049436] - net/mlx5e: Use dynamic per-channel allocations in stats (Amir Tzin) [2049436] - net/mlx5e: Allow profile-specific limitation on max num of channels (Amir Tzin) [2049436] - net/mlx5e: Save memory by using dynamic allocation in netdev priv (Amir Tzin) [2049436] - net/mlx5e: Add profile indications for PTP and QOS HTB features (Amir Tzin) [2049436] - net/mlx5e: Use bitmap field for profile features (Amir Tzin) [2049436] - net/mlx5: Remove the repeated declaration (Amir Tzin) [2049436] - net/mlx5: Let user configure max_macs generic param (Amir Tzin) [2049436] - net/mlx5: Let user configure event_eq_size param (Amir Tzin) [2049436] - net/mlx5: Let user configure io_eq_size param (Amir Tzin) [2049436] - net/mlx5: Introduce log_max_current_uc_list_wr_supported bit (Amir Tzin) [2049436] - net/mlx5e: Move goto action checks into tc_action goto post parse op (Amir Tzin) [2049436] - net/mlx5e: Move vlan action chunk into tc action vlan post parse op (Amir Tzin) [2049436] - net/mlx5e: Add post_parse() op to tc action infrastructure (Amir Tzin) [2049436] - net/mlx5e: Move sample attr allocation to tc_action sample parse op (Amir Tzin) [2049436] - net/mlx5e: TC action parsing loop (Amir Tzin) [2049436] - net/mlx5e: Add redirect ingress to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add sample and ptype to tc_action infra (Amir Tzin) [2049436] - net/mlx5e: Add ct to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add mirred/redirect to tc action infra (Amir Tzin) [2049436] - Revert "net/mlx5e: TC, Remove redundant error logging" (Amir Tzin) [2049436] - net/mlx5e: Add mpls push/pop to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add vlan push/pop/mangle to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add pedit to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add csum to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add tunnel encap/decap to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add goto to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add tc action infrastructure (Amir Tzin) [2049436] - RDMA/mlx5: Use memset_after() to zero struct mlx5_ib_mr (Amir Tzin) [2049436] - RDMA/mlx5: Add support to multiple priorities for FDB rules (Amir Tzin) [2049436] - net/mlx5: Create more priorities for FDB bypass namespace (Amir Tzin) [2049436] - net/mlx5: Refactor mlx5_get_flow_namespace (Amir Tzin) [2049436] - net/mlx5: Separate FDB namespace (Amir Tzin) [2049436] - net/mlx5: Dynamically resize flow counters query buffer (Amir Tzin) [2049436] - net/mlx5e: TC, Set flow attr ip_version earlier (Amir Tzin) [2049436] - net/mlx5e: TC, Move common flow_action checks into function (Amir Tzin) [2049436] - net/mlx5e: Remove redundant actions arg from vlan push/pop funcs (Amir Tzin) [2049436] - net/mlx5e: Remove redundant actions arg from validate_goto_chain() (Amir Tzin) [2049436] - net/mlx5e: TC, Remove redundant action stack var (Amir Tzin) [2049436] - net/mlx5e: Hide function mlx5e_num_channels_changed (Amir Tzin) [2049436] - net/mlx5e: SHAMPO, clean MLX5E_MAX_KLM_PER_WQE macro (Amir Tzin) [2049436] - net/mlx5: Print more info on pci error handlers (Amir Tzin) [2049436] - net/mlx5: SF, silence an uninitialized variable warning (Amir Tzin) [2049436] - net/mlx5: Fix error return code in esw_qos_create() (Amir Tzin) [2049436] - net/mlx5: E-switch, Create QoS on demand (Amir Tzin) [2049436] - net/mlx5: E-switch, Enable vport QoS on demand (Amir Tzin) [2049436] - net/mlx5: E-switch, move offloads mode callbacks to offloads file (Amir Tzin) [2049436] - net/mlx5: E-switch, Reuse mlx5_eswitch_set_vport_mac (Amir Tzin) [2049436] - net/mlx5: E-switch, Remove vport enabled check (Amir Tzin) [2049436] - net/mlx5e: Specify out ifindex when looking up decap route (Amir Tzin) [2049436] - net/mlx5e: TC, Move comment about mod header flag to correct place (Amir Tzin) [2049436] - net/mlx5e: TC, Move kfree() calls after destroying all resources (Amir Tzin) [2049436] - net/mlx5e: TC, Destroy nic flow counter if exists (Amir Tzin) [2049436] - net/mlx5: TC, using swap() instead of tmp variable (Amir Tzin) [2049436] - net/mlx5: CT: Allow static allocation of mod headers (Amir Tzin) [2049436] - net/mlx5e: Refactor mod header management API (Amir Tzin) [2049436] - net/mlx5: Avoid printing health buffer when firmware is unavailable (Amir Tzin) [2049436 2049717] - net/mlx5e: Support ethtool cq mode (Amir Tzin) [2049436 2049840] - Revert "RDMA/mlx5: Fix releasing unallocated memory in dereg MR flow" (Amir Tzin) [2049435] - net/mlx5: Use first online CPU instead of hard coded CPU (Amir Tzin) [2049435] - net/mlx5e: SHAMPO, Fix constant expression result (Amir Tzin) [2049435] - net/mlx5: Fix access to a non-supported register (Amir Tzin) [2049435 2049717] - net/mlx5: Fix too early queueing of log timestamp work (Amir Tzin) [2049435 2049717] - net/mlx5: Fix use after free in mlx5_health_wait_pci_up (Amir Tzin) [2049435] - net/mlx5: Lag, Fix recreation of VF LAG (Amir Tzin) [2049435] - net/mlx5e: Sync TIR params updates against concurrent create/modify (Amir Tzin) [2049435] - RDMA/mlx5: Fix releasing unallocated memory in dereg MR flow (Amir Tzin) [2049435] - net/mlx5: Fix flow counters SF bulk query len (Amir Tzin) [2049435] - net/mlx5: Lag, fix a potential Oops with mlx5_lag_create_definer() (Amir Tzin) [2049435] - net/mlx5e: Prevent HW-GRO and CQE-COMPRESS features operate together (Amir Tzin) [2049435] - net/mlx5e: Add HW-GRO offload (Amir Tzin) [2049435] - net/mlx5e: Add HW_GRO statistics (Amir Tzin) [2049435] - net/mlx5e: HW_GRO cqe handler implementation (Amir Tzin) [2049435] - net/mlx5e: Add data path for SHAMPO feature (Amir Tzin) [2049435] - net/mlx5e: Add handle SHAMPO cqe support (Amir Tzin) [2049435] - net/mlx5e: Add control path for SHAMPO feature (Amir Tzin) [2049435] - net/mlx5e: Add support to klm_umr_wqe (Amir Tzin) [2049435] - net/mlx5e: Rename TIR lro functions to TIR packet merge functions (Amir Tzin) [2049435] - net/mlx5e: Align mlx5e_resources with upstream code. (Amir Tzin) [2049435] - net/mlx5: Add SHAMPO caps, HW bits and enumerations (Amir Tzin) [2049435] - net/mlx5e: Rename lro_timeout to packet_merge_timeout (Amir Tzin) [2049435] - net/mlx5: SF_DEV Add SF device trace points (Amir Tzin) [2049435] - net/mlx5: SF, Add SF trace points (Amir Tzin) [2049435] - net/mlx5: Bridge, support replacing existing FDB entry (Amir Tzin) [2049435] - net/mlx5: Bridge, extract code to lookup and del/notify entry (Amir Tzin) [2049435] - net/mlx5: Add periodic update of host time to firmware (Amir Tzin) [2049435 2049717] - net/mlx5: Print health buffer by log level (Amir Tzin) [2049435 2049717] - net/mlx5: Extend health buffer dump (Amir Tzin) [2049435 2049717] - net/mlx5: Reduce flow counters bulk query buffer size for SFs (Amir Tzin) [2049435] - net/mlx5: Fix unused function warning of mlx5i_flow_type_mask (Amir Tzin) [2049435] - net/mlx5: Remove unnecessary checks for slow path flag (Amir Tzin) [2049435] - net/mlx5e: don't write directly to netdev->dev_addr (Amir Tzin) [2049435] - RDMA/mlx5: Use dev_addr_mod() (Amir Tzin) [2049435] - RDMA/mlx5: fix build error with INFINIBAND_USER_ACCESS=n (Amir Tzin) [2049435] - RDMA/mlx5: Attach ndescs to mlx5_ib_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Move struct mlx5_core_mkey to mlx5_ib (Amir Tzin) [2049435] - RDMA/mlx5: Replace struct mlx5_core_mkey by u32 key (Amir Tzin) [2049435] - RDMA/mlx5: Align mlx5e_resources with upstream code. (Amir Tzin) [2049435] - RDMA/mlx5: Remove pd from struct mlx5_core_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Remove size from struct mlx5_core_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Remove iova from struct mlx5_core_mkey (Amir Tzin) [2049435] - net/mlx5: E-Switch, Increase supported number of forward destinations to 32 (Amir Tzin) [2049435] - net/mlx5: E-Switch, Use dynamic alloc for dest array (Amir Tzin) [2049435] - net/mlx5: Lag, use steering to select the affinity port in LAG (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create/destroy/modify port selection (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create TTC tables for LAG port selection (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create definers for LAG (Amir Tzin) [2049435] - net/mlx5: Lag, set match mask according to the traffic type bitmap (Amir Tzin) [2049435] - net/mlx5: Lag, set LAG traffic type mapping (Amir Tzin) [2049435] - net/mlx5: Lag, move lag files into directory (Amir Tzin) [2049435] - net/mlx5: Introduce new uplink destination type (Amir Tzin) [2049435] - net/mlx5: Add support to create match definer (Amir Tzin) [2049435] - net/mlx5: Introduce port selection namespace (Amir Tzin) [2049435] - net/mlx5: Support partial TTC rules (Amir Tzin) [2049435] - mlx5: prevent 64bit divide (Amir Tzin) [2049435] - net/mlx5: Use system_image_guid to determine bonding (Amir Tzin) [2049435] - net/mlx5: Use native_port_num as 1st option of device index (Amir Tzin) [2049435] - net/mlx5: Introduce new device index wrapper (Amir Tzin) [2049435] - net/mlx5: Check return status first when querying system_image_guid (Amir Tzin) [2049435] - net/mlx5: DR, Prefer kcalloc over open coded arithmetic (Amir Tzin) [2049435] - net/mlx5e: Add extack msgs related to TC for better debug (Amir Tzin) [2049435] - net/mlx5: CT: Fix missing cleanup of ct nat table on init failure (Amir Tzin) [2049435] - Revert "net/mlx5e: TC, Skip redundant ct clear actions" (Amir Tzin) [2049435] - net/mlx5: Disable roce at HCA level (Amir Tzin) [2049435] - net/mlx5i: Enable Rx steering for IPoIB via ethtool (Amir Tzin) [2049435] - net/mlx5: Bridge, provide flow source hints (Amir Tzin) [2049435] - net/mlx5: Read timeout values from DTOR (Amir Tzin) [2049435] - net/mlx5: Read timeout values from init segment (Amir Tzin) [2049435] - net/mlx5: Add layout to support default timeouts register (Amir Tzin) [2049435] - net/mlx5: Set devlink reload feature bit for supported devices only (Amir Tzin) [2049435] - RDMA/mlx5: Add optional counter support in get_hw_stats callback (Amir Tzin) [2049435] - RDMA/mlx5: Add modify_op_stat() support (Amir Tzin) [2049435] - RDMA/mlx5: Add steering support in optional flow counters (Amir Tzin) [2049435] - RDMA/mlx5: Support optional counters in hw_stats initialization (Amir Tzin) [2049435] - net/mlx5: Add priorities for counters in RDMA namespaces (Amir Tzin) [2049435] - net/mlx5: Add ifc bits to support optional counters (Amir Tzin) [2049435] - net/mlx5: Enable single IRQ for PCI Function (Amir Tzin) [2049435] - net/mlx5: Shift control IRQ to the last index (Amir Tzin) [2049435] - net/mlx5: Bridge, pop VLAN on egress table miss (Amir Tzin) [2049435] - net/mlx5: Bridge, mark reg_c1 when pushing VLAN (Amir Tzin) [2049435] - net/mlx5: Bridge, extract VLAN pop code to dedicated functions (Amir Tzin) [2049435] - net/mlx5: Bridge, refactor eswitch instance usage (Amir Tzin) [2049435] - net/mlx5e: Support accept action (Amir Tzin) [2049435] - net/mlx5e: Specify out ifindex when looking up encap route (Amir Tzin) [2049435] - net/mlx5e: Reserve a value from TC tunnel options mapping (Amir Tzin) [2049435] - net/mlx5e: Move parse fdb check into actions_match_supported_fdb() (Amir Tzin) [2049435] - net/mlx5e: Split actions_match_supported() into a sub function (Amir Tzin) [2049435] - net/mlx5e: Move mod hdr allocation to a single place (Amir Tzin) [2049435] - net/mlx5e: TC, Refactor sample offload error flow (Amir Tzin) [2049435] - RDMA/mlx5: Avoid taking MRs from larger MR cache pools when a pool is empty (Amir Tzin) [2049435] - IB/mlx5: Flow through a more detailed return code from get_prefetchable_mr() (Amir Tzin) [2049435] - net/mlx5e: Use array_size() helper (Amir Tzin) [2049435] - net/mlx5: Use struct_size() helper in kvzalloc() (Amir Tzin) [2049435] - net/mlx5: Use kvcalloc() instead of kvzalloc() (Amir Tzin) [2049435] - net/mlx5: Tolerate failures in debug features while driver load (Amir Tzin) [2049435] - IB/mlx5: Enable UAR to have DevX UID (Amir Tzin) [2049435] - net/mlx5: Add uid field to UAR allocation structures (Amir Tzin) [2049435] - net/mlx5e: check return value of rhashtable_init (Amir Tzin) [2049435] - net/mlx5e: Enable TC offload for ingress MACVLAN (Amir Tzin) [2049435] - net/mlx5e: Enable TC offload for egress MACVLAN (Amir Tzin) [2049435] - net/mlx5e: loopback test is not supported in switchdev mode (Amir Tzin) [2049435] - net/mlx5e: Use NL_SET_ERR_MSG_MOD() for errors parsing tunnel attributes (Amir Tzin) [2049435] - net/mlx5e: Use tc sample stubs instead of ifdefs in source file (Amir Tzin) [2049435] - net/mlx5e: Remove redundant priv arg from parse_pedit_to_reformat() (Amir Tzin) [2049435] - net/mlx5e: Check action fwd/drop flag exists also for nic flows (Amir Tzin) [2049435] - net/mlx5e: Set action fwd flag when parsing tc action goto (Amir Tzin) [2049435] - net/mlx5e: Remove incorrect addition of action fwd flag (Amir Tzin) [2049435] - Revert "net/mlx5e: TC, Fix ct_clear overwriting ct action metadata" (Amir Tzin) [2049435] - net/mlx5e: Use correct return type (Amir Tzin) [2049435] - net/mlx5e: Add error flow for ethtool -X command (Amir Tzin) [2049435] - net/mlx5: Fix rdma aux device on devlink reload (Amir Tzin) [2049434] - RDMA/mlx5: Relax DCS QP creation checks (Amir Tzin) [2049434] - net/mellanox: switch from 'pci_' to 'dma_' API (Amir Tzin) [2049434] - net/mlx5e: Make use of netdev_warn() (Amir Tzin) [2049434] - net/mlx5: Initialize numa node for all core devices (Amir Tzin) [2049434] - net/mlx5: Allocate individual capability (Amir Tzin) [2049434] - net/mlx5: Reorganize current and maximal capabilities to be per-type (Amir Tzin) [2049434] - net/mlx5: SF, use recent sysfs api (Amir Tzin) [2049434] - net/mlx5: Refcount mlx5_irq with integer (Amir Tzin) [2049434] - net/mlx5: Change SF missing dedicated MSI-X err message to dbg (Amir Tzin) [2049434] - net/mlx5: Align mlx5_irq structure (Amir Tzin) [2049434] - net/mlx5: Delete impossible dev->state checks (Amir Tzin) [2049434] - net/mlx5: Support enable_vnet devlink dev param (Amir Tzin) [2049434] - net/mlx5: Support enable_rdma devlink dev param (Amir Tzin) [2049434] - net/mlx5: Support enable_eth devlink dev param (Amir Tzin) [2049434] - RDMA/mlx5: Drop in-driver verbs object creations (Amir Tzin) [2049434] - RDMA/mlx5: Delete device resource mutex that didn't protect anything (Amir Tzin) [2049434] - RDMA/mlx5: Cancel pkey work before destroying device resources (Amir Tzin) [2049434] - net/mlx5e: Return -EOPNOTSUPP if more relevant when parsing tc actions (Amir Tzin) [2049434] - net/mlx5e: Remove redundant assignment of counter to null (Amir Tzin) [2049434] - net/mlx5e: Remove redundant parse_attr arg (Amir Tzin) [2049434] - net/mlx5e: Remove redundant cap check for flow counter (Amir Tzin) [2049434] - net/mlx5e: Remove redundant filter_dev arg from parse_tc_fdb_actions() (Amir Tzin) [2049434] - net/mlx5e: Remove redundant tc act includes (Amir Tzin) [2049434] - IB/mlx5: Rename is_apu_thread_cq function to is_apu_cq (Amir Tzin) [2049434] - RDMA/mlx5: Add DCS offload support (Amir Tzin) [2049434] - RDMA/mlx5: Separate DCI QP creation logic (Amir Tzin) [2049434] - net/mlx5: Add DCS caps & fields support (Amir Tzin) [2049434] - KVM: nVMX: Inject #UD if VMXON is attempted with incompatible CR0/CR4 (Vitaly Kuznetsov) [2119233] - mm: Fix PASID use-after-free issue (Jerry Snitselaar) [2113046] - scsi: csiostor: Uninitialized data in csio_ln_vnp_read_cbfn() (Rahul Lakkireddy) [2105815] - scsi: csiostor: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix a typo (Rahul Lakkireddy) [2105815] - scsi: csiostor: Assign boolean values to a bool variable (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix fall-through warnings for Clang (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix spelling mistake "couldnt" -> "couldn't" (Rahul Lakkireddy) [2105815] - scsi: csiostor: Add missing description for csio_rnode_fwevt_handler()'s 'fwevt' param (Rahul Lakkireddy) [2105815] - scsi: csiostor: Remove 2 unused variables {mc,edc}_bist_status_rdata_reg (Rahul Lakkireddy) [2105815] - scsi: csiostor: Demote kerneldoc that fails to meet the criteria (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix misnamed function parameter (Rahul Lakkireddy) [2105815] - scsi: csiostor: Adjust indentation in csio_device_reset (Rahul Lakkireddy) [2105815] - mediatek: mt76: eeprom: fix missing of_node_put() in mt76_find_power_limits_node() (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211: consider EHT element size in assoc request (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211: switch airtime fairness back to deficit round-robin scheduling (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7615: fix throughput regression on DFS channels (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix incorrect testmode ipg on band 1 caused by wmm_idx (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: enlarge maximum VHT MPDU length to 11454 (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: fix aggregation subframes setting to HE max (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211_hwsim: set virtio device ready in probe() (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921s: fix possible sdio deadlock in command fail (Jose Ignacio Tornos Martinez) [2103625] - wifi: rtw89: 8852a: rfk: fix div 0 exception (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: do not update pm states in case of error (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7615: do not update pm stats in case of error (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Avoid REO CMD failed prints during firmware recovery (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Fix incorrect debug_mask mappings (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix missing skb drop on htc_tx_completion error (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921s: fix firmware download random fail (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix IRQ affinity warning on shutdown (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix netdev open race (Jose Ignacio Tornos Martinez) [2103625] - iwlwifi: fw: init SAR GEO table only if data is present (Jose Ignacio Tornos Martinez) [2103625] - ath10k: htt_tx: do not interpret Eth frames as WiFi (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Don't check arvif->is_started before sending management frames (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix twt table_mask to u16 in mt7915_dev (Jose Ignacio Tornos Martinez) [2103625] - ath11k: reset 11d state in process of recovery (Jose Ignacio Tornos Martinez) [2103625] - brcmfmac: use ISO3166 country code and 0 rev as fallback on brcmfmac43602 chips (Jose Ignacio Tornos Martinez) [2103625] - mt76: fix tx status related use-after-free race on station removal (Jose Ignacio Tornos Martinez) [2103625] - mt76: do not attempt to reorder received 802.3 packets without agg session (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: fix kernel crash at mt7921_pci_remove (Jose Ignacio Tornos Martinez) [2103625] - mt76: fix antenna config missing in 6G cap (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: report rx mode value in mt7915_mac_fill_rx_rate (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: do not pass data pointer to mt7915_mcu_muru_debug_set (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix possible NULL pointer dereference in mt7915_mac_fill_rx_vector (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix possible uninitialized pointer dereference in mt7986_wmac_gpio_setup (Jose Ignacio Tornos Martinez) [2103625] - ath10k: enable napi on RX path for usb (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix the warning of dev_wake in mhi_pm_disable_transition() (Jose Ignacio Tornos Martinez) [2103625] - ath11k: acquire ab->base_lock in unassign when finding the peer by addr (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix unbounded shift in mt7915_mcu_beacon_mbss (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix DBDC default band selection on MT7915D (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: honor pm user configuration in mt7921_sniffer_interface_iter (Jose Ignacio Tornos Martinez) [2103625] - i40e: Fix tunnel checksum offload with fragmented traffic (Ivan Vecera) [2107977] - net/mlx5e: Fix matchall police parameters validation (Ivan Vecera) [2106271] - net/sched: act_police: allow 'continue' action offload (Ivan Vecera) [2106271] - net: Print hashed skb addresses for all net and qdisc events (Ivan Vecera) [2106271] - net: sched: fixed barrier to prevent skbuff sticking in qdisc backlog (Ivan Vecera) [2106271] - net/sched: act_pedit: sanitize shift argument before usage (Ivan Vecera) [2106271] - net/sched: act_pedit: really ensure the skb is writable (Ivan Vecera) [2106271] - net/sched: taprio: Check if socket flags are valid (Ivan Vecera) [2106271] - net/sched: flower: Avoid overwriting error messages (Ivan Vecera) [2106271] - net/sched: matchall: Avoid overwriting error messages (Ivan Vecera) [2106271] - net/sched: cls_api: Add extack message for unsupported action offload (Ivan Vecera) [2106271] - net/sched: act_vlan: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_tunnel_key: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_skbedit: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_police: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_pedit: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_mpls: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_mirred: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_gact: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_api: Add extack to offload_act_setup() callback (Ivan Vecera) [2106271] - net/sched: flower: Take verbose flag into account when logging error messages (Ivan Vecera) [2106271] - net/sched: matchall: Take verbose flag into account when logging error messages (Ivan Vecera) [2106271] - net/sched: fix incorrect vlan_push_eth dest field (Ivan Vecera) [2106271] - net/sched: add vlan push_eth and pop_eth action to the hardware IR (Ivan Vecera) [2106271] - selftests: tc-testing: Increase timeout in tdc config file (Ivan Vecera) [2106271] - flow_offload: improve extack msg for user when adding invalid filter (Ivan Vecera) [2106271] - flow_offload: reject offload for all drivers with invalid police parameters (Ivan Vecera) [2106271] - net: flow_offload: add tc police action parameters (Ivan Vecera) [2106271] - net: sched: avoid newline at end of message in NL_SET_ERR_MSG_MOD (Ivan Vecera) [2106271] - net_sched: add __rcu annotation to netdev->qdisc (Ivan Vecera) [2106271] - net/sched: act_police: more accurate MTU policing (Ivan Vecera) [2106271] - net/sched: Enable tc skb ext allocation on chain miss only when needed (Ivan Vecera) [2106271] - net: sched: remove qdisc_qlen_cpu() (Ivan Vecera) [2106271] - net: sched: remove psched_tdiff_bounded() (Ivan Vecera) [2106271] - net: sched: Clarify error message when qdisc kind is unknown (Ivan Vecera) [2106271] - sch_cake: revise Diffserv docs (Ivan Vecera) [2106271] - flow_offload: fix suspicious RCU usage when offloading tc action (Ivan Vecera) [2106271] - net/sched: use min() macro instead of doing it manually (Ivan Vecera) [2106271] - selftests: tc-testing: add action offload selftest for action and filter (Ivan Vecera) [2106271] - flow_offload: validate flags of filter and actions (Ivan Vecera) [2106271] - flow_offload: add reoffload process to update hw_count (Ivan Vecera) [2106271] - net: sched: save full flags for tc action (Ivan Vecera) [2106271] - flow_offload: add process to update action stats from hardware (Ivan Vecera) [2106271] - flow_offload: rename exts stats update functions with hw (Ivan Vecera) [2106271] - flow_offload: add skip_hw and skip_sw to control if offload the action (Ivan Vecera) [2106271] - flow_offload: allow user to offload tc action to net device (Ivan Vecera) [2106271] - flow_offload: add ops to tc_action_ops for flow action setup (Ivan Vecera) [2106271] - flow_offload: rename offload functions with offload instead of flow (Ivan Vecera) [2106271] - flow_offload: add index to flow_action_entry structure (Ivan Vecera) [2106271] - flow_offload: reject to offload tc actions in offload drivers (Ivan Vecera) [2106271] - flow_offload: fill flags to action structure (Ivan Vecera) [2106271] - sch_cake: do not call cake_destroy() from cake_init() (Ivan Vecera) [2106271] - net/sched: fq_pie: prevent dismantle issue (Ivan Vecera) [2106271] - selftests/tc-testing: Fix cannot create /sys/bus/netdevsim/new_device: Directory nonexistent (Ivan Vecera) [2106271] - selftests/tc-testing: add missing config (Ivan Vecera) [2106271] - selftests/tc-testing: add exit code (Ivan Vecera) [2106271] - net/sched: act_ct: Offload only ASSURED connections (Ivan Vecera) [2106271] - selftests/tc-testings: Be compatible with newer tc output (Ivan Vecera) [2106271] - selftests: forwarding: Fix packet matching in mirroring selftests (Ivan Vecera) [2106271] - net/sched: sch_taprio: fix undefined behavior in ktime_mono_to_any (Ivan Vecera) [2106271] - cls_flower: Fix inability to match GRE/IPIP packets (Ivan Vecera) [2106271] - sch_htb: Add extack messages for EOPNOTSUPP errors (Ivan Vecera) [2106271] - net: sch: simplify condtion for selecting mini_Qdisc_pair buffer (Ivan Vecera) [2106271] - net: sch: eliminate unnecessary RCU waits in mini_qdisc_pair_swap() (Ivan Vecera) [2106271] - net: sched: gred: dynamically allocate tc_gred_qopt_offload (Ivan Vecera) [2106271] - net: stats: Read the statistics in ___gnet_stats_copy_basic() instead of adding. (Ivan Vecera) [2106271] - net: sched: Allow statistics reads from softirq. (Ivan Vecera) [2106271] - net: sched: remove one pair of atomic operations (Ivan Vecera) [2106271] - net: sched: fix logic error in qdisc_run_begin() (Ivan Vecera) [2106271] - net: sch_tbf: Add a graft command (Ivan Vecera) [2106271] - net: sched: Remove Qdisc::running sequence counter (Ivan Vecera) [2106271] - net: sched: Merge Qdisc::bstats and Qdisc::cpu_bstats data types (Ivan Vecera) [2106271] - net: sched: Use _bstats_update/set() instead of raw writes (Ivan Vecera) [2106271] - net: sched: Protect Qdisc::bstats with u64_stats (Ivan Vecera) [2106271] - u64_stats: Introduce u64_stats_set() (Ivan Vecera) [2106271] - gen_stats: Move remaining users to gnet_stats_add_queue(). (Ivan Vecera) [2106271] - mq, mqprio: Use gnet_stats_add_queue(). (Ivan Vecera) [2106271] - gen_stats: Add gnet_stats_add_queue(). (Ivan Vecera) [2106271] - gen_stats: Add instead Set the value in __gnet_stats_copy_basic(). (Ivan Vecera) [2106271] - testing: selftests: tc_common: Add tc_check_at_least_x_packets() (Ivan Vecera) [2106271] - testing: selftests: forwarding.config.sample: Add tc flag (Ivan Vecera) [2106271] - net/sched: sch_taprio: properly cancel timer from taprio_destroy() (Ivan Vecera) [2106271] - net: sched: Use struct_size() helper in kvmalloc() (Ivan Vecera) [2106271] - net_sched: Use struct_size() and flex_array_size() helpers (Ivan Vecera) [2106271] - net: prevent user from passing illegal stab size (Ivan Vecera) [2106271] - net: sched: move and reuse mq_change_real_num_tx() (Ivan Vecera) [2106271] - selftests: net: test ethtool -L vs mq (Ivan Vecera) [2106271] - netdevsim: add ability to change channel count (Ivan Vecera) [2106271] - net: add netif_set_real_num_queues() for device reconfig (Ivan Vecera) [2106271] - net: sched: update default qdisc visibility after Tx queue cnt changes (Ivan Vecera) [2106271] - fix array-index-out-of-bounds in taprio_change (Ivan Vecera) [2106271] - Revert "flow_offload: action should not be NULL when it is referenced" (Ivan Vecera) [2106271] - sch_cake: fix srchost/dsthost hashing mode (Ivan Vecera) [2106271] - net/sched: cls_api, reset flags on replay (Ivan Vecera) [2106271] - net: sched: provide missing kdoc for tcf_pkt_info and tcf_ematch_ops (Ivan Vecera) [2106271] - net: flow_offload: correct comments mismatch with code (Ivan Vecera) [2106271] - net/sched: taprio: Fix init procedure (Ivan Vecera) [2106271] - net_sched: refactor TC action init API (Ivan Vecera) [2106271] - tc-testing: Add control-plane selftest for skbmod SKBMOD_F_ECN option (Ivan Vecera) [2106271] - net/sched: act_skbmod: Add SKBMOD_F_ECN option support (Ivan Vecera) [2106271] - qdisc: add new field for qdisc_enqueue tracepoint (Ivan Vecera) [2106271] - net/sched: act_skbmod: Skip non-Ethernet packets (Ivan Vecera) [2106271] - net/sched: Remove unnecessary if statement (Ivan Vecera) [2106271] - net_sched: introduce tracepoint trace_qdisc_enqueue() (Ivan Vecera) [2106271] - net_sched: use px to print skb address in trace_qdisc_dequeue() (Ivan Vecera) [2106271] - net: use px to print skb address in trace_netif_receive_skb (Ivan Vecera) [2106271] - net/sched: sch_taprio: fix typo in comment (Ivan Vecera) [2106271] - flow_offload: action should not be NULL when it is referenced (Ivan Vecera) [2106271] - net: sched: remove qdisc->empty for lockless qdisc (Ivan Vecera) [2106271] - net: sched: implement TCQ_F_CAN_BYPASS for lockless qdisc (Ivan Vecera) [2106271] - net: sched: avoid unnecessary seqcount operation for lockless qdisc (Ivan Vecera) [2106271] - Revert "net/sched: cls_flower: Remove match on n_proto" (Ivan Vecera) [2106271] - net: sched: add barrier to ensure correct ordering for lockless qdisc (Ivan Vecera) [2106271] - net: sched: fix error return code in tcf_del_walker() (Ivan Vecera) [2106271] - net/sched: cls_flower: Remove match on n_proto (Ivan Vecera) [2106271] - sch_cake: revise docs for RFC 8622 LE PHB support (Ivan Vecera) [2106271] - sch_cake: Fix out of bounds when parsing TCP options and header (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_lookup_leaf() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_do_events() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_charge_class() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_deactivate() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_activate() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_change_class_mode() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_class_mode() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_deactivate_prios() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_activate_prios() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_remove_class_from_row() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_class_to_row() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_next_rb_node() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_to_wait_tree() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_to_id_tree() (Ivan Vecera) [2106271] - net/sched: act_vlan: Test priority 0 modification (Ivan Vecera) [2106271] - net/sched: act_vlan: No dump for unset priority (Ivan Vecera) [2106271] - net: sched: Fix spelling mistakes (Ivan Vecera) [2106271] - net/sched: fq_pie: fix OOB access in the traffic path (Ivan Vecera) [2106271] - net/sched: fq_pie: re-factor fix for fq_pie endless loop (Ivan Vecera) [2106271] - net: taprio offload: enforce qdisc to netdev queue mapping (Ivan Vecera) [2106271] - net/sched: taprio: Drop unnecessary NULL check after container_of (Ivan Vecera) [2106271] - net: flow_offload: add FLOW_ACTION_PPPOE_PUSH (Ivan Vecera) [2106271] - gve: Recording rx queue before sending to napi (Jordan Kimbrough) [2018609] - gve: fix the wrong AdminQ buffer queue index check (Jordan Kimbrough) [2018609] - gve: Fix GFP flags when allocing pages (Jordan Kimbrough) [2018609] - gve: Add tx|rx-coalesce-usec for DQO (Jordan Kimbrough) [2018609] - gve: Add consumed counts to ethtool stats (Jordan Kimbrough) [2018609] - gve: Implement suspend/resume/shutdown (Jordan Kimbrough) [2018609] - gve: Add optional metadata descriptor type GVE_TXD_MTD (Jordan Kimbrough) [2018609] - gve: remove memory barrier around seqno (Jordan Kimbrough) [2018609] - gve: Update gve_free_queue_page_list signature (Jordan Kimbrough) [2018609] - gve: Move the irq db indexes out of the ntfy block struct (Jordan Kimbrough) [2018609] - gve: Correct order of processing device options (Jordan Kimbrough) [2018609] - gve: fix for null pointer dereference. (Jordan Kimbrough) [2018609] - gve: fix unmatched u64_stats_update_end() (Jordan Kimbrough) [2018609] - gve: Fix off by one in gve_tx_timeout() (Jordan Kimbrough) [2018609] - gve: Add a jumbo-frame device option. (Jordan Kimbrough) [2018609] - gve: Implement packet continuation for RX. (Jordan Kimbrough) [2018609] - gve: Add RX context. (Jordan Kimbrough) [2018609] - gve: Track RX buffer allocation failures (Jordan Kimbrough) [2018609] - gve: Allow pageflips on larger pages (Jordan Kimbrough) [2018609] - gve: Add netif_set_xps_queue call (Jordan Kimbrough) [2018609] - gve: Recover from queue stall due to missed IRQ (Jordan Kimbrough) [2018609] - gve: Do lazy cleanup in TX path (Jordan Kimbrough) [2018609] - gve: Add rx buffer pagecnt bias (Jordan Kimbrough) [2018609] - gve: Switch to use napi_complete_done (Jordan Kimbrough) [2018609] - gve: report 64bit tx_bytes counter from gve_handle_report_stats() (Jordan Kimbrough) [2018609] - gve: fix gve_get_stats() (Jordan Kimbrough) [2018609] - gve: Properly handle errors in gve_assign_qpl (Jordan Kimbrough) [2018609] - gve: Avoid freeing NULL pointer (Jordan Kimbrough) [2018609] - gve: Correct available tx qpl check (Jordan Kimbrough) [2018609] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Jordan Kimbrough) [2018609] - gve: Use kvcalloc() instead of kvzalloc() (Jordan Kimbrough) [2018609] - gve: DQO: avoid unused variable warnings (Jordan Kimbrough) [2018609] - gve: fix the wrong AdminQ buffer overflow check (Jordan Kimbrough) [2018609] - gve: DQO: Remove incorrect prefetch (Jordan Kimbrough) [2018609] - gve: Simplify code and axe the use of a deprecated API (Jordan Kimbrough) [2018609] - gve: Propagate error codes to caller (Jordan Kimbrough) [2018609] - gve: Fix an error handling path in 'gve_probe()' (Jordan Kimbrough) [2018609] - gve: DQO: Fix off by one in gve_rx_dqo() (Jordan Kimbrough) [2018609] - gve: Fix swapped vars when fetching max queues (Jordan Kimbrough) [2018609] - gve: Fix warnings reported for DQO patchset (Jordan Kimbrough) [2018609] - gve: DQO: Add RX path (Jordan Kimbrough) [2018609] - gve: DQO: Add TX path (Jordan Kimbrough) [2018609] - gve: DQO: Configure interrupts on device up (Jordan Kimbrough) [2018609] - gve: DQO: Add ring allocation and initialization (Jordan Kimbrough) [2018609] - gve: DQO: Add core netdev features (Jordan Kimbrough) [2018609] - gve: Update adminq commands to support DQO queues (Jordan Kimbrough) [2018609] - gve: Add DQO fields for core data structures (Jordan Kimbrough) [2018609] - gve: Add dqo descriptors (Jordan Kimbrough) [2018609] - gve: Add support for DQO RX PTYPE map (Jordan Kimbrough) [2018609] - gve: adminq: DQO specific device descriptor logic (Jordan Kimbrough) [2018609] - gve: Introduce per netdev `enum gve_queue_format` (Jordan Kimbrough) [2018609] - gve: Introduce a new model for device options (Jordan Kimbrough) [2018609] - gve: Make gve_rx_slot_page_info.page_offset an absolute offset (Jordan Kimbrough) [2018609] - gve: gve_rx_copy: Move padding to an argument (Jordan Kimbrough) [2018609] - gve: Move some static functions to a common file (Jordan Kimbrough) [2018609] - gve: Correct SKB queue index validation. (Jordan Kimbrough) [2018609] - gve: Upgrade memory barrier in poll routine (Jordan Kimbrough) [2018609] - gve: Add NULL pointer checks when freeing irqs. (Jordan Kimbrough) [2018609] - gve: Update mgmt_msix_idx if num_ntfy changes (Jordan Kimbrough) [2018609] - gve: Check TX QPL was actually assigned (Jordan Kimbrough) [2018609] - net: gve: remove duplicated allowed (Jordan Kimbrough) [2018609] - net: gve: convert strlcpy to strscpy (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing in the tx path (Jordan Kimbrough) [2018609] - gve: Rx Buffer Recycling (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing to the rx path (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing device option (Jordan Kimbrough) [2018609] - net: don't include ethtool.h from netdevice.h (Jordan Kimbrough) [2018609] - gve: Replace zero-length array with flexible-array member (Jordan Kimbrough) [2018609] - gve: Enable Link Speed Reporting in the driver. (Jordan Kimbrough) [2018609] - gve: Use link status register to report link status (Jordan Kimbrough) [2018609] - gve: Batch AQ commands for creating and destroying queues. (Jordan Kimbrough) [2018609] - gve: NIC stats for report-stats and for ethtool (Jordan Kimbrough) [2018609] - gve: Add Gvnic stats AQ command and ethtool show/set-priv-flags. (Jordan Kimbrough) [2018609] - gve: Use dev_info/err instead of netif_info/err. (Jordan Kimbrough) [2018609] - gve: Add stats for gve. (Jordan Kimbrough) [2018609] - gve: Get and set Rx copybreak via ethtool (Jordan Kimbrough) [2018609] - redhat: update ppc64le secureboot signing key (Jarod Wilson) [2109215] - tools: add cpupower daemon reload when installed/upgraded (Jarod Wilson) [2042424] - sfc: fix use after free when disabling sriov (Íñigo Huguet) [2105999] - drm/nouveau: recognise GA103 (Karol Herbst) [1923125] - drm/aperture: Run fbdev removal before internal helpers (Michel Dänzer) [2088410] - drm/i915/ttm: fix 32b build (Michel Dänzer) [2088410] - drm/amd/display: Ensure valid event timestamp for cursor-only commits (Michel Dänzer) [2088410] - drm/amd/pm: Prevent divide by zero (Michel Dänzer) [2088410] - drm/amd/display: Only use depth 36 bpp linebuffers on DCN display engines. (Michel Dänzer) [2088410] - drm/amdkfd: correct the MEC atomic support firmware checking for GC 10.3.7 (Michel Dänzer) [2088410] - drm/i915/selftests: fix subtraction overflow bug (Michel Dänzer) [2088410] - drm/i915/gt: Serialize TLB invalidates with GT resets (Michel Dänzer) [2088410] - drm/i915/gt: Serialize GRDOM access between multiple engine resets (Michel Dänzer) [2088410] - drm/i915/ttm: fix sg_table construction (Michel Dänzer) [2088410] - drm/i915/selftests: fix a couple IS_ERR() vs NULL tests (Michel Dänzer) [2088410] - drm/i915/gvt: IS_ERR() vs NULL bug in intel_gvt_update_reg_whitelist() (Michel Dänzer) [2088410] - drm/i915/guc: ADL-N should use the same GuC FW as ADL-S (Michel Dänzer) [2088410] - drm/i915: fix a possible refcount leak in intel_dp_add_mst_connector() (Michel Dänzer) [2088410] - drm/amdgpu/display: disable prefer_shadow for generic fb helpers (Michel Dänzer) [2088410] - drm/amdgpu: keep fbdev buffers pinned during suspend (Michel Dänzer) [2088410] - drm/fourcc: fix integer type usage in uapi header (Michel Dänzer) [2088410] - drm/i915/dgfx: Disable d3cold at gfx root port (Michel Dänzer) [2088410] - drm/i915/gem: add missing else (Michel Dänzer) [2088410] - drm/amdgpu: To flush tlb for MMHUB of RAVEN series (Michel Dänzer) [2088410] - Revert "drm/amdgpu/display: set vblank_disable_immediate for DC" (Michel Dänzer) [2088410] - drm/amdgpu: fix adev variable used in amdgpu_device_gpu_recover() (Michel Dänzer) [2088410] - drm/amd: Revert "drm/amd/display: keep eDP Vdd on when eDP stream is already enabled" (Michel Dänzer) [2088410] - udmabuf: add back sanity check (Michel Dänzer) [2088410] - drm/amd/display: Fix typo in override_lane_settings (Michel Dänzer) [2088410] - amd/display/dc: Fix COLOR_ENCODING and COLOR_RANGE doing nothing for DCN20+ (Michel Dänzer) [2088410] - drm/i915: Implement w/a 22010492432 for adl-s (Michel Dänzer) [2088410] - drm/i915/uc: remove accidental static from a local variable (Michel Dänzer) [2088410] - drm/amd/display: Cap OLED brightness per max frame-average luminance (Michel Dänzer) [2088410] - drm/amdgpu: Fix GTT size reporting in amdgpu_ioctl (Michel Dänzer) [2088410] - drm/i915/reset: Fix error_state_read ptr + offset use (Michel Dänzer) [2088410] - drm/amdkfd: add pinned BOs to kfd_bo_list (Michel Dänzer) [2088410] - drm/amdkfd: Use mmget_not_zero in MMU notifier (Michel Dänzer) [2088410] - drm/amdgpu: Resolve RAS GFX error count issue after cold boot on Arcturus (Michel Dänzer) [2088410] - drm/amd/display: Read Golden Settings Table from VBIOS (Michel Dänzer) [2088410] - Revert "drm/amd/display: Fix DCN3 B0 DP Alt Mapping" (Michel Dänzer) [2088410] - drm/amdgpu: update VCN codec support for Yellow Carp (Michel Dänzer) [2088410] - drm/amd/display: remove stale config guards (Michel Dänzer) [2088410] - drm/amdgpu/jpeg2: Add jpeg vmid update under IB submit (Michel Dänzer) [2088410] - drm/atomic: Force bridge self-refresh-exit on CRTC switch (Michel Dänzer) [2088410] - drm/bridge: analogix_dp: Support PSR-exit to disable transition (Michel Dänzer) [2088410] - drm/amdkfd:Fix fw version for 10.3.6 (Michel Dänzer) [2088410] - drm/amd/pm: use bitmap_{from,to}_arr32 where appropriate (Michel Dänzer) [2088410] - drm/amd/pm: correct the metrics version for SMU 11.0.11/12/13 (Michel Dänzer) [2088410] - drm/amd/pm: Fix missing thermal throttler status (Michel Dänzer) [2088410] - drm/amd/pm: fix a potential gpu_metrics_table memory leak (Michel Dänzer) [2088410] - drm/radeon: fix a possible null pointer dereference (Michel Dänzer) [2088410] - drm/amd/display: Check zero planes for OTG disable W/A on clock change (Michel Dänzer) [2088410] - drm/amd/display: Check if modulo is 0 before dividing. (Michel Dänzer) [2088410] - drm/amdgpu: fix limiting AV1 to the first instance on VCN3 (Michel Dänzer) [2088410] - drm/bridge: ti-sn65dsi83: Handle dsi_lanes == 0 as invalid (Michel Dänzer) [2088410] - drm/amdgpu: Off by one in dm_dmub_outbox1_low_irq() (Michel Dänzer) [2088410] - gma500: fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/i915/dsi: fix VBT send packet port selection for ICL+ (Michel Dänzer) [2088410] - drm/bridge: analogix_dp: Grab runtime PM reference for DP-AUX (Michel Dänzer) [2088410] - drm/nouveau/kms/nv50-: atom: fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/nouveau/clk: Fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/nouveau/subdev/bus: Ratelimit logging for fault errors (Michel Dänzer) [2088410] - drm/amdgpu/cs: make commands with 0 chunks illegal behaviour. (Michel Dänzer) [2088410] - drm/amdgpu: add beige goby PCI ID (Michel Dänzer) [2088410] - drm/i915: Fix CFI violation with show_dynamic_id() (Michel Dänzer) [2088410] - drm/bridge: it6505: Send DPCD SET_POWER to downstream (Michel Dänzer) [2088410] - drm/panel: panel-simple: Fix proper bpc for AM-1280800N3TZQW-T00H (Michel Dänzer) [2088410] - drm/panel: simple: Add missing bus flags for Innolux G070Y2-L01 (Michel Dänzer) [2088410] - drm/bridge: Fix it6505 Kconfig DRM_DP_AUX_BUS dependency (Michel Dänzer) [2088410] - drm/bridge: Fix error handling in analogix_dp_probe (Michel Dänzer) [2088410] - drm/bridge: anx7625: Use uint8 for lane-swing arrays (Michel Dänzer) [2088410] - drm/amd/amdgpu: Remove static from variable in RLCG Reg RW (Michel Dänzer) [2088410] - drm/amd/amdgpu: Fix asm/hypervisor.h build error. (Michel Dänzer) [2088410] - drm/amd/amdgpu: Only reserve vram for firmware with vega9 MS_HYPERV host. (Michel Dänzer) [2088410] - drm: bridge: icn6211: Fix HFP_HSW_HBP_HI and HFP_MIN handling (Michel Dänzer) [2088410] - drm: bridge: icn6211: Fix register layout (Michel Dänzer) [2088410] - drm/bridge: adv7511: clean up CEC adapter when probe fails (Michel Dänzer) [2088410] - drm/bridge: anx7625: add missing destroy_workqueue() in anx7625_i2c_probe() (Michel Dänzer) [2088410] - drm/edid: fix invalid EDID extension block filtering (Michel Dänzer) [2088410] - drm/bridge: it6505: Fix build error (Michel Dänzer) [2088410] - drm: bridge: it66121: Fix the register page length (Michel Dänzer) [2088410] - drm/vmwgfx: Fix an invalid read (Michel Dänzer) [2088410] - drm/ssd130x: Reduce temporary buffer sizes (Michel Dänzer) [2088410] - drm/ssd130x: Fix rectangle updates (Michel Dänzer) [2088410] - drm/format-helper: Fix XRGB888 to monochrome conversion (Michel Dänzer) [2088410] - drm/format-helper: Rename drm_fb_xrgb8888_to_mono_reversed() (Michel Dänzer) [2088410] - drm/solomon: Make DRM_SSD130X depends on MMU (Michel Dänzer) [2088410] - drm: ssd130x: Always apply segment remap setting (Michel Dänzer) [2088410] - drm: ssd130x: Fix COM scan direction register mask (Michel Dänzer) [2088410] - drm/bridge: anx7625: check the return on anx7625_aux_trans (Michel Dänzer) [2088410] - drm/selftests: missing error code in igt_buddy_alloc_smoke() (Michel Dänzer) [2088410] - drm/bridge_connector: enable HPD by default if supported (Michel Dänzer) [2088410] - drm: fix EDID struct for old ARM OABI format (Michel Dänzer) [2088410] - drm/amdgpu: Move mutex_init(&smu->message_lock) to smu_early_init() (Michel Dänzer) [2088410] - drm/amd/pm: update smartshift powerboost calc for smu13 (Michel Dänzer) [2088410] - drm/amd/pm: update smartshift powerboost calc for smu12 (Michel Dänzer) [2088410] - drm/amdgpu/ucode: Remove firmware load type check in amdgpu_ucode_free_bo (Michel Dänzer) [2088410] - drm/amdgpu/psp: move PSP memory alloc from hw_init to sw_init (Michel Dänzer) [2088410] - drm/amd/pm: fix the compile warning (Michel Dänzer) [2088410] - drm/amdkfd: Fix circular lock dependency warning (Michel Dänzer) [2088410] - drm/plane: Move range check for format_count earlier (Michel Dänzer) [2088410] - drm/amdgpu/sdma: Fix incorrect calculations of the wptr of the doorbells (Michel Dänzer) [2088410] - drm/amd/pm: fix double free in si_parse_power_table() (Michel Dänzer) [2088410] - drm/amdgpu/pm: fix the null pointer while the smu is disabled (Michel Dänzer) [2088410] - drm/amd/display: Disabling Z10 on DCN31 (Michel Dänzer) [2088410] - drm/virtio: fix NULL pointer dereference in virtio_gpu_conn_get_modes (Michel Dänzer) [2088410] - drm/vmwgfx: validate the screen formats (Michel Dänzer) [2088410] - drm/selftests: fix a shift-out-of-bounds bug (Michel Dänzer) [2088410] - drm/i915: Fix -Wstringop-overflow warning in call to intel_read_wm_latency() (Michel Dänzer) [2088410] - selftests/xsk: Disable hanging BPF RES tests (Felix Maurer) [2116940] - NLM: Defend against file_lock changes after vfs_test_lock() (Benjamin Coddington) [2094884] - ice: Fix VF not able to send tagged traffic with no VLAN filters (Petr Oros) [2055446] - ice: Ignore error message when setting same promiscuous mode (Petr Oros) [2100683] - ice: Fix clearing of promisc mode with bridge over bond (Petr Oros) [2100683] - ice: Ignore EEXIST when setting promisc mode (Petr Oros) [2100683] - ice: Fix double VLAN error when entering promisc mode (Petr Oros) [2100683]- fs: dlm: fix build with CONFIG_IPV6 disabled (Alexander Aring) [2036988] - fs: dlm: don't call kernel_getpeername() in error_report() (Alexander Aring) [2036988] - fs: dlm: use sk->sk_socket instead of con->sock (Alexander Aring) [2036988] - x86: intel_epb: Allow model specific normal EPB value (Prarit Bhargava) [2101488] - x86: intel_epb: Do not build when CONFIG_PM is unset (Prarit Bhargava) [2101488] - x86: intel_epb: Take CONFIG_PM into account (Prarit Bhargava) [2101488] - PM / arch: x86: MSR_IA32_ENERGY_PERF_BIAS sysfs interface (Prarit Bhargava) [2101488] - PM / arch: x86: Rework the MSR_IA32_ENERGY_PERF_BIAS handling (Prarit Bhargava) [2101488] - thermal: int340x: Add Raptor Lake PCI device id (Prarit Bhargava) [2064828] - thermal: int340x: Support Raptor Lake (Prarit Bhargava) [2064828] - nvme-fc: restart admin queue if the caller needs to restart queue (Ewan D. Milne) [2095693] - netfilter: nf_tables: replace BUG_ON by element length check (Florian Westphal) [2104497] - netfilter: nf_log: incorrect offset to network header (Florian Westphal) [2104497] - netfilter: nft_set_pipapo: release elements in clone from abort path (Florian Westphal) [2104497] - netfilter: nf_tables: stricter validation of element data (Florian Westphal) [2104497] - netfilter: nft_dynset: restore set element counter when failing to update (Florian Westphal) [2104497] - netfilter: use get_random_u32 instead of prandom (Florian Westphal) [2104497] - netfilter: nf_tables: memleak flow rule from commit path (Florian Westphal) [2104497] - netfilter: nf_tables: hold mutex on netns pre_exit path (Florian Westphal) [2104497] - netfilter: conntrack: re-fetch conntrack after insertion (Florian Westphal) [2104497] - netfilter: flowtable: fix excessive hw offload attempts after failure (Florian Westphal) [2104497] - netfilter: flowtable: avoid possible false sharing (Florian Westphal) [2104497] - netfilter: nf_nat_h323: eliminate anonymous module_init & module_exit (Florian Westphal) [2104497] - netfilter: ip6t_rt: fix rt0_hdr parsing in rt_mt6 (Florian Westphal) [2104497] - netfilter: socket: icmp6: fix use-after-scope (Florian Westphal) [2104497] - netfilter: nft_fib_ipv6: skip ipv6 packets from any to link-local (Florian Westphal) [2104497] - net/mlx5: Remove ConnectX-7 device from the unsupported devices (Kamal Heib) [1899567] - fs: dlm: change posix lock sigint handling (Alexander Aring) [2088499] - fs: dlm: use dlm_plock_info for do_unlock_close (Alexander Aring) [2088499] - fs: dlm: change plock interrupted message to debug again (Alexander Aring) [2088499] - fs: dlm: add pid to debug log (Alexander Aring) [2088499] - fs: dlm: plock use list_first_entry (Alexander Aring) [2088499] - dlm: replace usage of found with dedicated list iterator variable (Alexander Aring) [2088499] - dlm: move global to static inits (Alexander Aring) [2088499] - dlm: remove unnecessary INIT_LIST_HEAD() (Alexander Aring) [2088499] - dlm: improve plock logging if interrupted (Alexander Aring) [2088499] - dlm: rearrange async condition return (Alexander Aring) [2088499] - dlm: cleanup plock_op vs plock_xop (Alexander Aring) [2088499] - dlm: replace sanity checks with WARN_ON (Alexander Aring) [2088499]- selftests: mptcp: make sendfile selftest work (Florian Westphal) [2109046] - selftests: mptcp: more stable simult_flows tests (Florian Westphal) [2109046] - be2net: Remove useless DMA-32 fallback configuration (Petr Oros) [2051324] - ethernet: constify references to netdev->dev_addr in drivers (Petr Oros) [2051324] - ethernet: Remove redundant 'flush_workqueue()' calls (Petr Oros) [2051324] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Petr Oros) [2051324] - ethernet: use eth_hw_addr_set() (Petr Oros) [2051324] - be2net: Use irq_update_affinity_hint() (Petr Oros) [2051324] - RedHat: ASoC: SOF: Intel: do not enable IMR boot when resuming by default (Jaroslav Kysela) [2114931] - ASoC: SOF: make ctx_store and ctx_restore as optional (Jaroslav Kysela) [2114931] - ASoC: SOF: ipc3-topology: Prevent double freeing of ipc_control_data via load_bytes (Jaroslav Kysela) [2114931] - ASoC: amd: yc: Update DMI table entries for AMD platforms (Jaroslav Kysela) [2114931] - ASoC: amd: yc: Update DMI table entries (Jaroslav Kysela) [2114931] - thunderbolt: Add DP OUT resource when DP tunnel is discovered (Torez Smith) [2107601] - iavf: Fix VLAN_V2 addition/rejection (Petr Oros) [2115618] - iavf: Fix deadlock in initialization (Petr Oros) [2054656] - qede: Reduce verbosity of ptp tx timestamp (Manish Chopra) [2080655] - dmaengine: idxd: Fixup merge conflict resolution from upstream (Jerry Snitselaar) [2100927] - dmaengine: idxd: skip clearing device context when device is read-only (Jerry Snitselaar) [2100927] - dmaengine: idxd: add RO check for wq max_transfer_size write (Jerry Snitselaar) [2100927] - dmaengine: idxd: add RO check for wq max_batch_size write (Jerry Snitselaar) [2100927] - dmaengine: idxd: fix device cleanup on disable (Jerry Snitselaar) [2100927] - Revert "dmaengine: idxd: Separate user and kernel pasid enabling" (Jerry Snitselaar) [2100927] - net: atlantic: always deep reset on pm op, fixing up my null deref regression (Foggy Liu) [2039680] - net: atlantic: invert deep par in pm functions, preventing null derefs (Foggy Liu) [2039680] - s390/ap: extend AP change bindings-complete uevent with counter (Mete Durlu) [2114907] - powerpc/memhotplug: Make lmb size 64bit (Diego Domingos) [2116517] - powerpc/drmem: Make lmb_size 64 bit (Diego Domingos) [2116517] - RHEL-only: tools: arm64: Use alternative.h header in sysreg.h (Eric Auger) [2118527]- vmxnet3: do not reschedule napi for rx processing (Kamal Heib) [2117263] - lockdown: also lock down previous kgdb use (Lenny Szubowicz) [2104748] {CVE-2022-21499} - sfc: fix kernel panic when creating VF (Íñigo Huguet) [2114738] - net/mlx4_en: use kzalloc (Amir Tzin) [2049433] - net/mlx4: Delete useless moduleparam include (Amir Tzin) [2049433] - RDMA/mlx4: remove redundant assignment to variable nreq (Amir Tzin) [2049433] - RDMA/mlx4: Delete useless module.h include (Amir Tzin) [2049433] - RDMA/mlx4: Don't continue event handler after memory allocation failure (Amir Tzin) [2049433] - net/mlx4: Use irq_update_affinity_hint() (Amir Tzin) [2049433] - RDMA/mlx4: Use bitmap_alloc() when applicable (Amir Tzin) [2049433] - net/mlx4_en: Update reported link modes for 1/10G (Amir Tzin) [2049433] - ethernet: Remove redundant 'flush_workqueue()' calls (Amir Tzin) [2049433] - mlx4: constify args for const dev_addr (Amir Tzin) [2049433] - mlx4: remove custom dev_addr clearing (Amir Tzin) [2049433] - mlx4: replace mlx4_u64_to_mac() with u64_to_ether_addr() (Amir Tzin) [2049433] - mlx4: replace mlx4_mac_to_u64() with ether_addr_to_u64() (Amir Tzin) [2049433] - net/mlx4_en: avoid one cache line miss to ring doorbell (Amir Tzin) [2049433] - net/mlx4_en: Add XDP_REDIRECT statistics (Amir Tzin) [2049433] - net/mlx4: Use array_size() helper in copy_to_user() (Amir Tzin) [2049433] - net: mlx4: Add support for XDP_REDIRECT (Amir Tzin) [2049433] - net/mellanox: switch from 'pci_' to 'dma_' API (Amir Tzin) [2049433] - net/mlx4: Use ARRAY_SIZE to get an array's size (Amir Tzin) [2049433] - net/mlx4: make the array states static const, makes object smaller (Amir Tzin) [2049433] - dma-direct: use the correct size for dma_set_encrypted() (Jerry Snitselaar) [2105608] - dma-debug: make things less spammy under memory pressure (Jerry Snitselaar) [2105608] - dma-iommu: Check that swiotlb is active before trying to use it (Jerry Snitselaar) [2105608] - cpufreq: powernow-k8: Re-order the init checks (Mark Langsdorf) [2072974] - cpufreq: unify show() and store() naming and use __ATTR_XX (Mark Langsdorf) [2072974] - cpufreq: amd-pstate: Add more tracepoint for AMD P-State module (Mark Langsdorf) [2072974] - cpufreq: CPPC: Fix performance/frequency conversion (Mark Langsdorf) [2072974] - cpufreq: Move to_gov_attr_set() to cpufreq.h (Mark Langsdorf) [2072974] - cpufreq: use default_groups in kobj_type (Mark Langsdorf) [2072974] - cpufreq: Fix initialization of min and max frequency QoS requests (Mark Langsdorf) [2072974] - cpufreq: Fix a comment in cpufreq_policy_free (Mark Langsdorf) [2072974] - cpufreq: Fix get_cpu_device() failure in add_cpu_dev_symlink() (Mark Langsdorf) [2072974] - cpufreq: schedutil: Destroy mutex before kobject_put() frees the memory (Mark Langsdorf) [2072974] - cpufreq: sh: Remove sh_cpufreq_cpu_ready() (Mark Langsdorf) [2072974] - cpufreq: acpi: Remove acpi_cpufreq_cpu_ready() (Mark Langsdorf) [2072974] - cpufreq: Fix fall-through warning for Clang (Mark Langsdorf) [2072974] - cpufreq: Remove ->resolve_freq() (Mark Langsdorf) [2072974] - cpufreq: Reuse cpufreq_driver_resolve_freq() in __cpufreq_driver_target() (Mark Langsdorf) [2072974] - cpufreq: Remove the ->stop_cpu() driver callback (Mark Langsdorf) [2072974] - cpufreq: powernv: Migrate to ->exit() callback instead of ->stop_cpu() (Mark Langsdorf) [2072974] - cpufreq: Make cpufreq_online() call driver->offline() on errors (Mark Langsdorf) [2072974] - cpufreq: sh: Remove unused linux/sched.h headers (Mark Langsdorf) [2072974] - cpufreq: stats: Clean up local variable in cpufreq_stats_create_table() (Mark Langsdorf) [2072974] - cpufreq: Remove unused for_each_policy macro (Mark Langsdorf) [2072974] - cpufreq: Rudimentary typos fix in the file s5pv210-cpufreq.c (Mark Langsdorf) [2072974] - ACPI: CPPC: Fix enabling CPPC on AMD systems with shared memory (Mark Langsdorf) [2067296] - ACPI: CPPC: Don't require flexible address space if X86_FEATURE_CPPC is supported (Mark Langsdorf) [2067296] - ACPI: CPPC: Don't require _OSC if X86_FEATURE_CPPC is supported (Mark Langsdorf) [2067296] - x86/ACPI: CPPC: Rename cppc_msr.c to cppc.c (Mark Langsdorf) [2067296] - ACPI: CPPC: Only probe for _CPC if CPPC v2 is acked (Mark Langsdorf) [2067296] - ACPI: CPPC: Assume no transition latency if no PCCT (Mark Langsdorf) [2067296] - ACPI: bus: Set CPPC _OSC bits for all and when CPPC_LIB is supported (Mark Langsdorf) [2067296] - ACPI: CPPC: Check _OSC for flexible address space (Mark Langsdorf) [2067296] - ACPI: processor: idle: Avoid falling back to C3 type C-states (Mark Langsdorf) [2067296] - Revert "ACPI: processor: idle: Only flush cache on entering C3" (Mark Langsdorf) [2067296] - ACPI: CPPC: Change default error code and clean up debug messages in probe (Mark Langsdorf) [2067296] - ACPI: CPPC: Avoid out of bounds access when parsing _CPC data (Mark Langsdorf) [2067296] - ACPI: tables: Make LAPIC_ADDR_OVR address readable in message (Mark Langsdorf) [2067296] - ACPI: IPMI: replace usage of found with dedicated list iterator variable (Mark Langsdorf) [2067296] - ACPI, APEI: Use the correct variable for sizeof() (Mark Langsdorf) [2067296] - clocksource: acpi_pm: fix return value of __setup handler (Mark Langsdorf) [2067296] - ACPI / x86: Add support for LPS0 callback handler (Mark Langsdorf) [2067296] - ACPI: bus: Avoid using CPPC if not supported by firmware (Mark Langsdorf) [2067296] - Revert "ACPI: Pass the same capabilities to the _OSC regardless of the query flag" (Mark Langsdorf) [2067296] - ACPI: video: Force backlight native for Clevo NL5xRU and NL5xNU (Mark Langsdorf) [2067296] - PM: hibernate: Honour ACPI hardware signature by default for virtual guests (Mark Langsdorf) [2067296] - ACPI: NFIT: Remove block aperture support (Mark Langsdorf) [2067296] - x86, ACPI: rename init_freq_invariance_cppc() to arch_init_invariance_cppc() (Mark Langsdorf) [2067296] - ACPI/APEI: Limit printable size of BERT table data (Mark Langsdorf) [2067296] - ACPI: APEI: fix return value of __setup handlers (Mark Langsdorf) [2067296] - ACPI / x86: Add skip i2c clients quirk for Lenovo Yoga Tablet 1050F/L (Mark Langsdorf) [2067296] - ACPI / x86: Add skip i2c clients quirk for Nextbook Ares 8 (Mark Langsdorf) [2067296] - ACPICA: Avoid walking the ACPI Namespace if it is not there (Mark Langsdorf) [2067296] - ACPI: processor idle: Check for architectural support for LPI (Mark Langsdorf) [2067296] - ACPI: battery: Add device HID and quirk for Microsoft Surface Go 3 (Mark Langsdorf) [2067296] - ACPI: fan: Add additional attributes for fine grain control (Mark Langsdorf) [2067296] - ACPI: fan: Properly handle fine grain control (Mark Langsdorf) [2067296] - ACPI: fan: Optimize struct acpi_fan_fif (Mark Langsdorf) [2067296] - ACPI: fan: Separate file for attributes creation (Mark Langsdorf) [2067296] - ACPI: fan: Fix error reporting to user space (Mark Langsdorf) [2067296] - ACPI: clean up double words in two comments (Mark Langsdorf) [2067296] - ACPI: property: Get rid of redundant 'else' (Mark Langsdorf) [2067296] - ACPI: EC: Rearrange code in acpi_ec_submit_event() (Mark Langsdorf) [2067296] - ACPI: EC: Reduce indentation level in acpi_ec_submit_event() (Mark Langsdorf) [2067296] - ACPI: EC: Do not return result from advance_transaction() (Mark Langsdorf) [2067296] - ACPI: EC / PM: Print additional debug message in acpi_ec_dispatch_gpe() (Mark Langsdorf) [2067296] - ACPI: PM: Print additional debug message in acpi_s2idle_wake() (Mark Langsdorf) [2067296] - ACPI: tables: Add CEDT signature to the list of known tables (Mark Langsdorf) [2067296] - ACPI: properties: Consistently return -ENOENT if there are no more references (Mark Langsdorf) [2067296] - ACPI: OSL: Fix and clean up acpi_os_read/write_port() (Mark Langsdorf) [2067296] - ACPICA: Use uintptr_t and offsetof() in Linux kernel builds (Mark Langsdorf) [2067296] - ACPI: processor: idle: Only flush cache on entering C3 (Mark Langsdorf) [2067296] - intel_idle: Add AlderLake support (Lenny Szubowicz) [2075709] - intel_idle: Fix SPR C6 optimization (Lenny Szubowicz) [2075709] - intel_idle: Fix the 'preferred_cstates' module parameter (Lenny Szubowicz) [2075709] - cpuidle: intel_idle: Update intel_idle() kerneldoc comment (Lenny Szubowicz) [2075709] - ice: Fix promiscuous mode not turning off (Petr Oros) [2088787] - ice: Introduce enabling promiscuous mode on multiple VF's (Petr Oros) [2088787] - PCI/IOV: Add pci_iov_get_pf_drvdata() to allow VF reaching the drvdata of a PF (Myron Stowe) [2106259] - PCI/IOV: Add pci_iov_vf_id() to get VF index (Myron Stowe) [2106259] - redhat: enable CONFIG_MAXLINEAR_GPHY as module (Petr Oros) [2071856] - net: phy: enhance GPY115 loopback disable function (Petr Oros) [2071856] - net: phy: add Maxlinear GPY115/21x/24x driver (Petr Oros) [2071856] - cgroup: Use css_tryget() instead of css_tryget_online() in task_get_css() (Vratislav Bendel) [2111491] - ASoC: mediatek: Fix error handling in mt8173_max98090_dev_probe (Jaroslav Kysela) [2065580] - ASoC: amd: Add support for enabling DMIC on acp6x via _DSD (Jaroslav Kysela) [2065580] - soundwire: intel: prevent pm_runtime resume prior to system suspend (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk for Fiero SC-01 (fw v1.0.0) (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk for Fiero SC-01 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirks for MacroSilicon MS2100/MS2106 devices (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Add ASP TX3/4 source to register patch (Jaroslav Kysela) [2065580] - ASoC: dapm: Initialise kcontrol data for mux/demux controls (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca: fix kernel NULL pointer dereference when IO error (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Correct some control names (Jaroslav Kysela) [2065580] - ASoC: wm5110: Fix DRE control (Jaroslav Kysela) [2065580] - ASoC: wm_adsp: Fix event for preloader (Jaroslav Kysela) [2065580] - ASoC: Intel: bytcr_wm5102: Fix GPIO related probe-ordering problem (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-loader: Clarify the cl_dsp_init() flow (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-loader: Make sure that the fw load sequence is followed (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-dsp: Expose hda_dsp_core_power_up() (Jaroslav Kysela) [2065580] - ASoC: codecs: rt700/rt711/rt711-sdca: initialize workqueues in probe (Jaroslav Kysela) [2065580] - ASoC: rt7*-sdw: harden jack_detect_handler (Jaroslav Kysela) [2065580] - ASoC: rt711: fix calibrate mutex initialization (Jaroslav Kysela) [2065580] - ASoC: Intel: sof_sdw: handle errors on card registration (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca-sdw: fix calibrate mutex initialization (Jaroslav Kysela) [2065580] - ASoC: Realtek/Maxim SoundWire codecs: disable pm_runtime on remove (Jaroslav Kysela) [2065580] - ASoC: ops: Fix off by one in range control validation (Jaroslav Kysela) [2065580] - ASoC: Intel: Skylake: Correct the handling of fmt_config flexible array (Jaroslav Kysela) [2065580] - ASoC: Intel: Skylake: Correct the ssp rate discovery in skl_get_ssp_clks() (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc221 (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: fix mute/micmute LEDs for HP machines (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671 (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Fix headset mic for Acer SF313-51 (Jaroslav Kysela) [2065580] - ALSA: hda/conexant: Apply quirk for another HP ProDesk 600 G3 model (Jaroslav Kysela) [2065580] - ALSA: hda - Add fixup for Dell Latitidue E5430 (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda: Fix compressed stream position tracking (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Move and correct size checks in sof_ipc3_control_load_bytes() (Jaroslav Kysela) [2065580] - ASoC: codecs: rt700/rt711/rt711-sdca: resume bus/codec in .set_jack_detect (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ASoC: rt711: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ALSA: cs46xx: Fix missing snd_card_free() call at probe error (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo L140PU (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Workarounds for Behringer UMC 204/404 HD (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo NS50PU (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo PD70PNT (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Apply fixup for Lenovo Yoga Duet 7 properly (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - ALC897 headset MIC no sound (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add mute LED quirk for HP Omen laptop (Jaroslav Kysela) [2065580] - ALSA: hda/conexant: Fix missing beep setup (Jaroslav Kysela) [2065580] - ALSA: hda: Fix discovery of i915 graphics PCI device (Jaroslav Kysela) [2065580] - ALSA: hda/via: Fix missing beep setup (Jaroslav Kysela) [2065580] - ALSA: memalloc: Drop x86-specific hack for WC allocations (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Add HW8326 support (Jaroslav Kysela) [2065580] - ALSA: hda: MTL: add HD Audio PCI ID and HDMI codec vendor ID (Jaroslav Kysela) [2065580] - ASoC: es8328: Fix event generation for deemphasis control (Jaroslav Kysela) [2065580] - ASoC: cs42l51: Correct minimum value for SX volume control (Jaroslav Kysela) [2065580] - ASoC: cs42l56: Correct typo in minimum level for SX volume controls (Jaroslav Kysela) [2065580] - ASoC: cs42l52: Correct TLV for Bypass Volume (Jaroslav Kysela) [2065580] - ASoC: cs53l30: Correct number of volume levels on SX controls (Jaroslav Kysela) [2065580] - ASoC: cs35l36: Update digital volume TLV (Jaroslav Kysela) [2065580] - ASoC: cs42l52: Fix TLV scales for mixer controls (Jaroslav Kysela) [2065580] - ASoC: Intel: cirrus-common: fix incorrect channel mapping (Jaroslav Kysela) [2065580] - ASoC: nau8822: Add operation for internal PLL off and on (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for HP Dev One (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo Yoga DuetITL 2021 (Jaroslav Kysela) [2065580] - ALSA: hda/conexant - Fix loopback issue with CX20632 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Set up (implicit) sync for Saffire 6 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Skip generic sync EP parse for secondary EP (Jaroslav Kysela) [2065580] - ASoC: rt5640: Do not manipulate pin "Platform Clock" if the "Platform Clock" is not in the DAPM (Jaroslav Kysela) [2065580] - ASoC: SOF: amd: Fixed Build error (Jaroslav Kysela) [2065580] - ASoC: rt5514: Fix event generation for "DSP Voice Wake Up" control (Jaroslav Kysela) [2065580] - ASoC: max98090: Move check for invalid values before casting in max98090_put_enab_tlv() (Jaroslav Kysela) [2065580] - ALSA: pcm: Check for null pointer of pointer substream before dereferencing it (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Set scontrol->priv to NULL after freeing it (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Fix an out-of-bounds access in otp_packed_element_t (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Move generic implicit fb quirk entries into quirks.c (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk bits for enabling/disabling generic implicit fb (Jaroslav Kysela) [2065580] - ASoC: amd: Add driver data to acp6x machine driver (Jaroslav Kysela) [2065580] - ASoC: rt1015p: remove dependency on GPIOLIB (Jaroslav Kysela) [2065580] - ASoC: max98357a: remove dependency on GPIOLIB (Jaroslav Kysela) [2065580] - ASoC: rt5645: Fix errorenous cleanup order (Jaroslav Kysela) [2065580] - ASoC: SOF: amd: add missing platform_device_unregister in acp_pci_rn_probe (Jaroslav Kysela) [2065580] - ASoC: Intel: sof_ssp_amp: fix no DMIC BE Link on Chromebooks (Jaroslav Kysela) [2065580] - ASoC: tscs454: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Correct get_control_data for non bytes payload (Jaroslav Kysela) [2065580] - ASoC: dapm: Don't fold register value changes into notifications (Jaroslav Kysela) [2065580] - ASoC: Intel: bytcr_rt5640: Add quirk for the HP Pro Tablet 408 (Jaroslav Kysela) [2065580] - ALSA: jack: Access input_dev under mutex (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix microphone noise on ASUS TUF B550M-PLUS (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9520 laptop (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Add new type for ALC245 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Optimize TEAC clock quirk (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Configure sync endpoints before data (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add missing ep_idx in fixed EP quirks (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Workaround for clock setup on TEAC devices (Jaroslav Kysela) [2065580] - ALSA: ctxfi: Add SB046x PCI ID (Jaroslav Kysela) [2065580] - NFS: Fix initialisation of nfs_client cl_flags field (Scott Mayhew) [2114577] - Documentation: Add an explanation of NFSv4 client identifiers (Dave Wysochanski) [1801326]- crypto: chelsio/chcr - Remove useless MODULE_VERSION (Rahul Lakkireddy) [2105817] - crypto: chelsio - remove unused function (Rahul Lakkireddy) [2105817] - crypto: chelsio - Read rxchannel-id from firmware (Rahul Lakkireddy) [2105817] - crypto: chelsio - Fix some kernel-doc issues (Rahul Lakkireddy) [2105817] - crypto: chelsio - remove set but not used variable 'adap' (Rahul Lakkireddy) [2105817] - dm raid: fix address sanitizer warning in raid_resume (Benjamin Marzinski) [2115118] - dm raid: fix address sanitizer warning in raid_status (Benjamin Marzinski) [2115118] - dm: return early from dm_pr_call() if DM device is suspended (Benjamin Marzinski) [2115118] - dm thin: fix use-after-free crash in dm_sm_register_threshold_callback (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks discarded, not number of discard bios (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks written, not number of write bios (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks read, not number of read bios (Benjamin Marzinski) [2115118] - dm writecache: return void from functions (Benjamin Marzinski) [2115118] - dm kcopyd: use __GFP_HIGHMEM when allocating pages (Benjamin Marzinski) [2115118] - dm writecache: set a default MAX_WRITEBACK_JOBS (Benjamin Marzinski) [2115118] - dm raid: fix KASAN warning in raid5_add_disks (Benjamin Marzinski) [2115118] - dm raid: fix KASAN warning in raid5_remove_disk (Benjamin Marzinski) [2115118] - KVM: x86: do not report preemption if the steal time cache is stale (Vitaly Kuznetsov) [2115240] - KVM: x86: revalidate steal time cache if MSR value changes (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Always enable TSC scaling for L2 when it was enabled for L1 (Vitaly Kuznetsov) [2115240] - KVM: x86: Fully initialize 'struct kvm_lapic_irq' in kvm_pv_kick_cpu_op() (Vitaly Kuznetsov) [2115240] - KVM: SEV: Init target VMCBs in sev_migrate_from (Vitaly Kuznetsov) [2115240] - KVM: SVM: fix tsc scaling cache logic (Vitaly Kuznetsov) [2115240] - KVM: x86/mmu: Check every prev_roots in __kvm_mmu_free_obsolete_roots() (Vitaly Kuznetsov) [2115240] - KVM: LAPIC: Drop pending LAPIC timer injection when canceling the timer (Vitaly Kuznetsov) [2115240] - KVM: x86: avoid calling x86 emulator without a decoded instruction (Vitaly Kuznetsov) [2115240] - KVM: SVM: Use kzalloc for sev ioctl interfaces to prevent kernel data leak (Vitaly Kuznetsov) [2115240] - KVM: x86: avoid loading a vCPU after .vm_destroy was called (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Clear IDT vectoring on nested VM-Exit for double/triple fault (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Leave most VM-Exit info fields unmodified on failed VM-Entry (Vitaly Kuznetsov) [2115240] - KVM: x86: Drop WARNs that assert a triple fault never "escapes" from L2 (Vitaly Kuznetsov) [2115240] - sched/deadline: Fix BUG_ON condition for deboosted tasks (Phil Auld) [2111860] - scsi: qla2xxx: Fix excessive I/O error messages by default (Nilesh Javali) [2100728] - scsi: qla2xxx: Fix erroneous mailbox timeout after PCI error injection (Nilesh Javali) [2044160] - drm/radeon: fix build rules of *_reg_safe.h (Michel Dänzer) [2006451] - RDMA/irdma: Fix sleep from invalid context BUG (Kamal Heib) [2097318] - RDMA/irdma: Do not advertise 1GB page size for x722 (Kamal Heib) [2097318] - RDMA/cm: Fix memory leak in ib_cm_insert_listen (Kamal Heib) [2097318] - RDMA/hfi1: Fix potential integer multiplication overflow errors (Kamal Heib) [2097318] - RDMA/hfi1: Prevent use of lock before it is initialized (Kamal Heib) [2097318] - RDMA/rxe: Fix an error handling path in rxe_get_mcg() (Kamal Heib) [2097318] - RDMA/rxe: Generate a completion for unsupported/invalid opcode (Kamal Heib) [2097318] - scsi: target: cxgbit: Enable Delayed ACK (Rahul Lakkireddy) [2105813] - scsi: target: cxgbit: Increase max DataSegmentLength (Rahul Lakkireddy) [2105813] - cxgb4: Use the bitmap API to allocate bitmaps (Rahul Lakkireddy) [2105806] - cxgb4: Fix typo in string (Rahul Lakkireddy) [2105806] - cxgb4/cxgb4vf: Fix typo in comments (Rahul Lakkireddy) [2105806] - cxgb4vf: remove unexpected word "the" (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: Avoid potential negative array offset (Rahul Lakkireddy) [2105806] - libcxgb: Don't accidentally set RTO_ONLINK in cxgb_find_route() (Rahul Lakkireddy) [2105806] - cxgb4vf: Remove useless DMA-32 fallback configuration (Rahul Lakkireddy) [2105806] - cxgb4: Remove useless DMA-32 fallback configuration (Rahul Lakkireddy) [2105806] - cxgb4: allow reading unrecognized port module eeprom (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Fix an error code in cxgb4vf_pci_probe() (Rahul Lakkireddy) [2105806] - cxgb4: Use struct_group() for memcpy() region (Rahul Lakkireddy) [2105806] - cxgb4: fix eeprom len when diagnostics not implemented (Rahul Lakkireddy) [2105806] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Rahul Lakkireddy) [2105806] - ethernet: chelsio: use eth_hw_addr_set() (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Make use of the helper function dev_err_probe() (Rahul Lakkireddy) [2105806] - cxgb4: improve printing NIC information (Rahul Lakkireddy) [2105806] - net: chelsio: switch from 'pci_' to 'dma_' API (Rahul Lakkireddy) [2105806] - cxgb4: make the array match_all_mac static, makes object smaller (Rahul Lakkireddy) [2105806] - cxgb4: fix IRQ free race during driver unload (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: use eth_zero_addr() to assign zero address (Rahul Lakkireddy) [2105806] - cxgb4: Fix -Wunused-const-variable warning (Rahul Lakkireddy) [2105806] - cxgb4: clip_tbl: use list_del_init instead of list_del/INIT_LIST_HEAD (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Fix wrong function name in comments (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: Fix wrong function name in comments (Rahul Lakkireddy) [2105806] - cxgb4: Remove redundant NULL check (Rahul Lakkireddy) [2105806] - net: ethernet: chelsiofix: spelling typo of 'rewriteing' (Rahul Lakkireddy) [2105806] - net: don't include ethtool.h from netdevice.h (Rahul Lakkireddy) [2105806] - cxgb4vf: convert to use DEFINE_SEQ_ATTRIBUTE macro (Rahul Lakkireddy) [2105806] - cxgb4vf: fix t4vf_eth_xmit()'s return type (Rahul Lakkireddy) [2105806] - cxgb4vf: update kernel-doc line comments (Rahul Lakkireddy) [2105806] - cxgb4: remove duplicate headers (Rahul Lakkireddy) [2105806] - cxgb4/cxgb4vf: Remove superfluous void * cast in debugfs_create_file() call (Rahul Lakkireddy) [2105806] - cxgb4: Add missing annotation for service_ofldq() (Rahul Lakkireddy) [2105806] - net: cxgb4vf: reject unsupported coalescing params (Rahul Lakkireddy) [2105806] - scsi: mpt3sas: Stop fw fault watchdog work item during system shutdown (Tomas Henzl) [2106413] - drm/amd/display: Fix new dmub notification enabling in DM (Mika Penttilä) [2107632] - Revert "crypto: chelsio - Inline single pdu only" (Rahul Lakkireddy) [2105818] - crypto/chcr: Moving chelsio's inline ipsec functionality to /drivers/net (Rahul Lakkireddy) [2105818] - net/xfrm: IPsec tunnel mode fix inner_ipproto setting in sec_path (Sabrina Dubroca) [2107200] - scsi: ch: Make it possible to open a ch device multiple times again (Ewan D. Milne) [2108649] - lpfc updates for rh8.7 14.0.0.15 (Paul Ely) [2107726] - scsi: lpfc: Copyright updates for 14.2.0.5 patches (Paul Ely) [2107726] - scsi: lpfc: Fix lost NVMe paths during LIF bounce stress test (Paul Ely) [2107726] - scsi: lpfc: Fix attempted FA-PWWN usage after feature disable (Paul Ely) [2107726] - scsi: lpfc: Fix possible memory leak when failing to issue CMF WQE (Paul Ely) [2107726] - scsi: lpfc: Remove extra atomic_inc on cmd_pending in queuecommand after VMID (Paul Ely) [2107726] - scsi: lpfc: Prevent buffer overflow crashes in debugfs with malformed user input (Paul Ely) [2107726] - scsi: lpfc: Fix uninitialized cqe field in lpfc_nvme_cancel_iocb() (Paul Ely) [2107726] - scsi: lpfc: Allow reduced polling rate for nvme_admin_async_event cmd completion (Paul Ely) [2107726] - scsi: lpfc: Fix port stuck in bypassed state after LIP in PT2PT topology (Paul Ely) [2107726] - scsi: lpfc: Resolve NULL ptr dereference after an ELS LOGO is aborted (Paul Ely) [2107726] - scsi: lpfc: Correct BDE type for XMIT_SEQ64_WQE in lpfc_ct_reject_event() (Paul Ely) [2107726] - scsi: qla2xxx: Fix imbalance vha->vref_count (Nilesh Javali) [2108964] - scsi: smartpqi: Update version to 2.1.18-045 (Don Brace) [2101548] - scsi: smartpqi: Update copyright to current year (Don Brace) [2101548] - scsi: smartpqi: Add ctrl ready timeout module parameter (Don Brace) [2101548] - scsi: smartpqi: Update deleting a LUN via sysfs (Don Brace) [2101548] - scsi: smartpqi: Add module param to disable managed ints (Don Brace) [2101548] - scsi: smartpqi: Fix RAID map race condition (Don Brace) [2101548] - scsi: smartpqi: Fix DMA direction for RAID requests (Don Brace) [2101548] - scsi: smartpqi: Stop logging spurious PQI reset failures (Don Brace) [2101548] - scsi: smartpqi: Add PCI IDs for Lenovo controllers (Don Brace) [2101548] - scsi: smartpqi: Add PCI ID for Adaptec SmartHBA 2100-8i (Don Brace) [2101548] - scsi: smartpqi: Fix PCI control linkdown system hang (Don Brace) [2101548] - scsi: smartpqi: Add driver support for multi-LUN devices (Don Brace) [2101548] - scsi: smartpqi: Close write read holes (Don Brace) [2101548] - scsi: smartpqi: Add PCI IDs for ramaxel controllers (Don Brace) [2101548] - scsi: smartpqi: Add controller fw version to console log (Don Brace) [2101548] - scsi: smartpqi: Shorten drive visibility after removal (Don Brace) [2101548] - scsi: smartpqi: Fix typo in comment (Don Brace) [2101548] - docs: kdump: Update the crashkernel description for arm64 (Pingfan Liu) [2093920] - of: Support more than one crash kernel regions for kexec -s (Pingfan Liu) [2093920] - of: kexec: Remove FDT_PROP_* definitions (Pingfan Liu) [2093920] - arm64: kexec: Fix missing error code 'ret' warning in load_other_segments() (Pingfan Liu) [2093920] - arm64: Use common of_kexec_alloc_and_setup_fdt() (Pingfan Liu) [2093920] - of: Add a common kexec FDT setup function (Pingfan Liu) [2093920] - arm64: Use ELF fields defined in 'struct kimage' (Pingfan Liu) [2093920] - kexec: Move ELF fields to struct kimage (Pingfan Liu) [2093920] - of: fdt: Add memory for devices by DT property "linux,usable-memory-range" (Pingfan Liu) [2093920] - efi: apply memblock cap after memblock_add() (Pingfan Liu) [2093920] - of: fdt: Aggregate the processing of "linux,usable-memory-range" (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_memory() to call directly (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_root() to call directly (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_chosen() to call directly (Pingfan Liu) [2093920] - of: fdt: Rename reserve_elfcorehdr() to fdt_reserve_elfcorehdr() (Pingfan Liu) [2093920] - of: fdt: Add generic support for handling elf core headers property (Pingfan Liu) [2093920] - arm64: kdump: Reimplement crashkernel=X (Pingfan Liu) [2093920] - arm64: Use insert_resource() to simplify code (Pingfan Liu) [2093920] - kdump: return -ENOENT if required cmdline option does not exist (Pingfan Liu) [2093920]- sched: Add WARN_ONCE_SAFE for use during critical scheduler code. (Phil Auld) [2095898] - printk: remove NMI tracking [partial] (Phil Auld) [2095898] - ext4: make sure ext4_append() always allocates new block (Lukas Czerner) [2070216] - ext4: check if directory block is within i_size (Lukas Czerner) [2070216] - redhat: nvme/tcp mistakenly uses blk_mq_tag_to_rq(nvme_tcp_tagset(queue)) (John Meneghini) [2112036] - RDMA/cxgb4: Set queue pair state when being queried (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use non-atomic bitmap functions when possible (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use bitmap_set() when applicable (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use bitmap_zalloc() when applicable (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use helper function to set GUIDs (Rahul Lakkireddy) [2105809] - RDMA/iw_cxgb4: Fix refcount underflow while destroying cqs. (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use refcount_t instead of atomic_t for reference counting (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Fix missing error code in create_qp() (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Remove useless assignments (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: add missing qpid increment (Rahul Lakkireddy) [2105809] - RDMA/iw_cxgb4: Use DEFINE_SPINLOCK() for spinlock (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use sizeof() notation (Rahul Lakkireddy) [2105809] - drm/amd/display: Ignore First MST Sideband Message Return Error (Michel Dänzer) [2089853] - sched, cpuset: Fix dl_cpu_busy() panic due to empty cs->cpus_allowed (Waiman Long) [2115165] - sched/deadline: Merge dl_task_can_attach() and dl_cpu_busy() (Waiman Long) [2115165] - ibmvnic: Properly dispose of all skbs during a failover. (Steve Best) [2107560] - redhat/configs: Enable CONFIG_AMD_HSMP for x86_64 (John Allen) [2072233] - platform/x86: Add AMD system management interface (John Allen) [2072233] - ice: do not setup vlan for loopback VSI (Petr Oros) [2103845] - ice: check (DD | EOF) bits on Rx descriptor rather than (EOP | RS) (Petr Oros) [2103845] - ice: Fix VSIs unable to share unicast MAC (Petr Oros) [2080033] - ice: Fix max VLANs available for VF (Petr Oros) [2112298] - ice: change devlink code to read NVM in blocks (Petr Oros) [2093904] - ALSA: Enable more Intel and AMD x86 chipset drivers (Jaroslav Kysela) [2065575] - ALSA: Remove module symbols namespace (Jaroslav Kysela) [2065575] - ASoC: SOF: tokens: add token for Mediatek AFE (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Expand firmware loading search options (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add trace caps to speaker protection FW (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Make compressed buffers optional (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Correct control read size when parsing compressed buffer (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add support for "toggle" preloaders (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Fix overrun of unterminated control name string (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Clear core reset for cache (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Move lockdep asserts to avoid potential null pointer (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Allow creation of event controls (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add offset to cs_dsp read/write (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Clarify some kernel doc comments (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Perform NULL check in cs_dsp_coeff_write/read_ctrl (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add support for rev 2 coefficient files (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Print messages from bin files (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add pre_run callback (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add version checks on coefficient loading (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add lockdep asserts to interface functions (Jaroslav Kysela) [2065575] - firmware: cs_dsp: tidy includes in cs_dsp.c and cs_dsp.h (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove the wmfw_add_ctl helper function (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: wm_adsp_control_add() error: uninitialized symbol 'ret' (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: remove a repeated including (Jaroslav Kysela) [2065575] - firmware: cs_dsp: add driver to support firmware loading on Cirrus Logic DSPs (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate wm_adsp specifics in cs_dsp_client_ops (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Split out struct cs_dsp from struct wm_adsp (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: move firmware loading to client (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Pass firmware names as parameters when starting DSP core (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move check of dsp->running to better place (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate generic cs_dsp_coeff_ctl handling (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move sys_config_size to wm_adsp (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Split DSP power operations into helper functions (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate some ASoC and generic functions (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Introduce cs_dsp logging macros (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Rename generic DSP support (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Cancel ongoing work when removing controls (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Switch to using wm_coeff_read_ctrl for compressed buffers (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move check for control existence (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove use of snd_ctl_elem_type_t (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Put debugfs_remove_recursive back in (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Let soc_cleanup_component_debugfs remove debugfs (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove pointless string comparison (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add CCM_CORE_RESET to Halo start core (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Correct wm_coeff_tlv_get handling (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Fix control name parsing for multi-fw (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Fix uninitialized variable warnings (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Use snd_ctl_elem_type_t for control types (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Only use __be32 for big-endian data (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Improve handling of raw byte streams (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control() (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: fix error return code in wm_adsp_load() (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add the binding include file for the HDA header support (Jaroslav Kysela) [2065575] - ALSA: uapi: use C90 comment style instead of C99 style (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: Add RaptorLake PCI IDs (Jaroslav Kysela) [2065575] - ALSA: hda/i915: Fix one too many pci_dev_put() (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: update AlderLake PCI IDs (Jaroslav Kysela) [2065575] - ALSA: hda/i915 - skip acomp init if no matching display (Jaroslav Kysela) [2065575] - ALSA: hda/i915 - avoid hung task timeout in i915 wait (Jaroslav Kysela) [2065575] - ALSA: intel-dspconfig: add ES8336 support for CNL (Jaroslav Kysela) [2065575] - ALSA: intel-dsp-config: add more ACPI HIDs for ES83x6 devices (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: reorder the config table (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: add JasperLake support (Jaroslav Kysela) [2065575] - ALSA: hda: Simplify DMIC-in-NHLT check (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: x86: Use standard mmap helper for Intel HDMI LPE audio (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Fix reference to PCM buffer address (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Check for error num after setting mask (Jaroslav Kysela) [2065575] - tools include uapi: Update asound.h copy (Jaroslav Kysela) [2065575] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2065575] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2065575] - ALSA: hda: Add helper macros for DSP capable devices (Jaroslav Kysela) [2065575] - ALSA: intel-nhlt: add helper to detect SSP link mask (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: add information on I2S/TDM link mask (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: fix kernel-doc descriptor (Jaroslav Kysela) [2065575] - ASoC: SOF: fix 32 signed bit overflow (Jaroslav Kysela) [2065575] - ALSA: hda: Add snd_hdac_ext_bus_link_at() helper (Jaroslav Kysela) [2065575] - ALSA: cleanup double word in comment (Jaroslav Kysela) [2065575] - ASoC: SOF: add _D3_PERSISTENT flag to fw_ready message (Jaroslav Kysela) [2065575] - ALSA: HDA: hdac_ext_stream: use consistent prefixes for variables (Jaroslav Kysela) [2065575] - ipc: debug: Add shared memory heap to memory scan (Jaroslav Kysela) [2065575] - ALSA: pcm: comment about relation between msbits hw parameter and [S|U]32 formats (Jaroslav Kysela) [2065575] - ALSA: hda: Fill gaps in NHLT endpoint-interface (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: Add new IPC command to free trace DMA (Jaroslav Kysela) [2065575] - soundwire: stream: make enable/disable/deprepare idempotent (Jaroslav Kysela) [2065575] - soundwire: stream: sdw_stream_add_ functions can be called multiple times (Jaroslav Kysela) [2065575] - soundwire: stream: introduce sdw_slave_rt_find() helper (Jaroslav Kysela) [2065575] - soundwire: stream: separate alloc and config within sdw_stream_add_xxx() (Jaroslav Kysela) [2065575] - soundwire: stream: move list addition to sdw_slave_alloc_rt() (Jaroslav Kysela) [2065575] - soundwire: stream: rename and move master/slave_rt_free routines (Jaroslav Kysela) [2065575] - soundwire: stream: group sdw_stream_ functions (Jaroslav Kysela) [2065575] - soundwire: stream: split sdw_alloc_slave_rt() in alloc and config (Jaroslav Kysela) [2065575] - soundwire: stream: move sdw_alloc_slave_rt() before 'master' helpers (Jaroslav Kysela) [2065575] - soundwire: stream: split sdw_alloc_master_rt() in alloc and config (Jaroslav Kysela) [2065575] - soundwire: stream: simplify sdw_alloc_master_rt() (Jaroslav Kysela) [2065575] - soundwire: stream: group sdw_port and sdw_master/slave_port functions (Jaroslav Kysela) [2065575] - soundwire: stream: add 'slave' prefix for port range checks (Jaroslav Kysela) [2065575] - soundwire: stream: split alloc and config in two functions (Jaroslav Kysela) [2065575] - soundwire: stream: split port allocation and configuration loops (Jaroslav Kysela) [2065575] - soundwire: stream: add alloc/config/free helpers for ports (Jaroslav Kysela) [2065575] - soundwire: stream: simplify check on port range (Jaroslav Kysela) [2065575] - soundwire: stream: add slave runtime to list earlier (Jaroslav Kysela) [2065575] - soundwire: stream: remove unused parameter in sdw_stream_add_slave (Jaroslav Kysela) [2065575] - soundwire: intel: fix wrong register name in intel_shim_wake (Jaroslav Kysela) [2065575] - soundwire: bus: add dev_warn() messages to track UNATTACHED devices (Jaroslav Kysela) [2065575] - soundwire: intel: remove PDM support (Jaroslav Kysela) [2065575] - soundwire: intel: remove unnecessary init (Jaroslav Kysela) [2065575] - ASoC/SoundWire: dai: expand 'stream' concept beyond SoundWire (Jaroslav Kysela) [2065575] - soundwire: intel: improve suspend flows (Jaroslav Kysela) [2065575] - soundwire: intel: Use auxiliary_device driver data helpers (Jaroslav Kysela) [2065575] - soundwire: qcom: remove redundant version number read (Jaroslav Kysela) [2065575] - ASoC: SOF: Fix NULL pointer exception in sof_pci_probe callback (Jaroslav Kysela) [2065575] - ASoC: ops: Validate input values in snd_soc_put_volsw_range() (Jaroslav Kysela) [2065575] - ASoC: dmaengine: Restore NULL prepare_slave_config() callback (Jaroslav Kysela) [2065575] - ASoC: max98090: Generate notifications on changes for custom control (Jaroslav Kysela) [2065575] - ASoC: max98090: Reject invalid values in custom control put() (Jaroslav Kysela) [2065575] - ASoC: rt9120: Correct the reg 0x09 size to one byte (Jaroslav Kysela) [2065575] - ASoC: soc-ops: fix error handling (Jaroslav Kysela) [2065575] - ASoC: da7219: Fix change notifications for tone generator frequency (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: fix sysclk shutdown (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: Add a quirk for Huawei Matebook D15 (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add a quirk for headset at mic1 port (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: support a separate gpio to control headphone (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: simplify speaker gpio naming (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: correct device endpoints for max98373 (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: do not switch off SIDO Buck when codec is in use (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Fix memory leak in sof_control_load() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: cleanup dailinks on widget unload (Jaroslav Kysela) [2065575] - ASoC: rt711/5682: check if bus is active before deferred jack detection (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp on SSP2 (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Avoid NULL deref in asoc_simple_set_tdm() (Jaroslav Kysela) [2065575] - ASoC: soc-core: add debugfs_prefix member to snd_soc_component_driver (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix a shift-out-of-bounds warning found by UBSAN (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add one more variable in the debug log (Jaroslav Kysela) [2065575] - ASoC: rt5682: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2065575] - ASoC: soc-dapm: fix two incorrect uses of list iterator (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: use GFP_KERNEL when the code is sleepable (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Fix memory leak of scontrol->name (Jaroslav Kysela) [2065575] - codecs: rt5682s: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2065575] - ASoC: topology: Correct error handling in soc_tplg_dapm_widget_create() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Fix build error without SND_SOC_SOF_PCI_DEV (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a new dai_get_clk topology IPC op (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add ops for setting up and tearing down pipelines (Jaroslav Kysela) [2065575] - ASoC: SOF: expose sof_route_setup() (Jaroslav Kysela) [2065575] - ASoC: SOF: Add dai_link_fixup PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add trigger PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Define hw_params PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC3 PCM hw_free op (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: expose the sof_pcm_setup_connected_widgets() function (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC-specific PCM ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add bytes_ext control IPC ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add bytes_get/put control IPC ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add enum_get/put control ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add switch get/put IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add volume_get/put IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add IPC3 topology control ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC ops for kcontrol IO (Jaroslav Kysela) [2065575] - ASoC: SOF: Make sof_suspend/resume IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Make sof_widget_setup/free IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: set up scheduler widget before all other widgets in the pipeline (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Use kmemdup() to replace kzalloc + memcpy (Jaroslav Kysela) [2065575] - ASoC: ak4642: Use of_device_get_match_data() (Jaroslav Kysela) [2065575] - ASoC: sti: Fix deadlock via snd_pcm_stop_xrun() call (Jaroslav Kysela) [2065575] - ASoC: amd: Fix reference to PCM buffer address (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: Add missing of_node_put() in wcd934x_codec_parse_data (Jaroslav Kysela) [2065575] - ASoC: rt1308-sdw: get calibration params after power on (Jaroslav Kysela) [2065575] - ASoC: msm8916-wcd-analog: Fix error handling in pm8916_wcd_analog_spmi_probe (Jaroslav Kysela) [2065575] - ASoC: ti: Fix spelling mistake "cant" -> "can't" (Jaroslav Kysela) [2065575] - ASoC: samsung: i2s: check the return value of kstrdup() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove snd_sof_complete_pipeline() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make widget binding IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make control parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make DAI widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make route setup IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make effect widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make siggen widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make asrc widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make src widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make mux/demux widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make mixer widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make pga widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make buffer widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make scheduler widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add helper function for processing tuple arrays (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: Introduce IPC ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce struct snd_sof_dai_link (Jaroslav Kysela) [2065575] - ASoC: soc-compress: Change the check for codec_dai (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Code loading over HDA (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Code loading over CLDMA (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Implement CLDMA transfer (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: General code loading flow (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Dynamic firmware resources management (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Declare module configuration types (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Firmware resources management utilities (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add basefw runtime-parameter requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add ROM requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add power management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add module management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add pipeline management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add code loading requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Inter process communication (Jaroslav Kysela) [2065575] - ASoC: Intel: Introduce AVS driver (Jaroslav Kysela) [2065575] - ASoC: Export DAI register and widget ctor and dctor functions (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Don't reset clock of active DAI (Jaroslav Kysela) [2065575] - ASoC: SOF: Remove ipc_pcm_params() ops (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Convert to use the generic set_stream_data_offset ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Convert to use the generic set_stream_data_offset ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-ipc: Add hda_set_stream_data_offset() (Jaroslav Kysela) [2065575] - ASoC: SOF: stream-ipc: Add sof_set_stream_data_offset() (Jaroslav Kysela) [2065575] - ASoC: SOF: Mark snd_sof_dsp_ops.ipc_pcm_params() callback optional (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce optional callback to configure stream data offset (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: Remove sof_pcm_dsp_params() wrapper (Jaroslav Kysela) [2065575] - ASoC: SOF: Make pcm_hw_params snd_sof_dsp_ops callback IPC neutral (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-priv: Remove stale snd_sof_ipc_stream_pcm_params() declaration (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw in ADL match table (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add topology overwrite for Taniks (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: Use proper DMA direction for the trace data buffer (Jaroslav Kysela) [2065575] - ASoC: SOF: compress: fix null check after dereference (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: enable DMI L1 for playback streams (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc-msg-injector: Use devm_kzalloc() for the rx_buffer (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Remove unneeded semicolon (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Remove unneeded semicolon (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: fix randconfig issue (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcht_es8316: move comment to the right place (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add cfg-dmics component for UCM support (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: extend machine driver to support ES8326 codec (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add support for JD inverted quirk (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: move comment to the right place (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: log all quirks (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: use NHLT information to set dmic and SSP (Jaroslav Kysela) [2065575] - ASoC: Intel: Revert "ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021" (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: get codec device with ACPI instead of bus search (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: make gpio optional (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add ESSX8336 support on Cannon Lake machines (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add more ACPI HIDs for ES83x6 devices (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: quirk topology filename dynamically (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: report SSP link mask to machine driver (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: retrieve DMIC number for I2S boards (Jaroslav Kysela) [2065575] - ASoC: SOF: move definition of snd_sof_ipc to header file (Jaroslav Kysela) [2065575] - ASoC: SOF: make struct snd_sof_dai IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Rename arguments in sof_parse_tokens() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Rename arguments in sof_parse_token_sets() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Modify signature for token parsing functions (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a tuples array to struct snd_sof_widget (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: make sof_route_load() IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: make struct snd_sof_widget IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: mxs: Fix error handling in mxs_sgtl5000_probe (Jaroslav Kysela) [2065575] - ASoC: dmaengine: do not use a NULL prepare_slave_config() callback (Jaroslav Kysela) [2065575] - ASoC: SOF: Add missing of_node_put() in imx8m_probe (Jaroslav Kysela) [2065575] - ASoC: rockchip: i2s: Fix missing clk_disable_unprepare() in rockchip_i2s_probe (Jaroslav Kysela) [2065575] - ASoC: amd: acp3x: Fix signedness bug in acp3x (Jaroslav Kysela) [2065575] - ASoC: amd: acp5x-pcm-dma: Fix signedness bug (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: use asoc_substream_to_rtd() (Jaroslav Kysela) [2065575] - ASoC: SOF: change comp_dai to a pointer in struct snd_sof_dai (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: expose some get_token ops (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Modify the get_token op for string tokens (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Drop the size parameter from struct sof_topology_token (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove redundant code in sof_link_afe_load() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove redundant code (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-audio: removed unused function (Jaroslav Kysela) [2065575] - ASoC: SOF: set swidget's core for scheduler widget (Jaroslav Kysela) [2065575] - ASoC: SOF: simplify snd_sof_device_remove() (Jaroslav Kysela) [2065575] - ASoC: SOF: remove snd_sof_pipeline_find() (Jaroslav Kysela) [2065575] - ASoC: amd: vg: fix signedness bug in acp5x_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Remove unnecessary param (Jaroslav Kysela) [2065575] - ASoC: rt5682s: Stabilize the combo jack detection (Jaroslav Kysela) [2065575] - ASoC: wm8350: Handle error for wm8350_register_irq (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Fix signedness bug in acp3x_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Fix signedness bug in acp_pdm_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Fix signedness bug in renoir_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_sdw: fix quirks for 2022 HP Spectre x360 13" (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add GPIOLIB dependency where missed (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: remove explicit dependency on GPIOLIB when DMIC is used" (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: store full version instead of major/minor (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: simplify register poking in fsl_sai_set_bclk (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: simplify irq return value (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: Drop unnecessary defines (Jaroslav Kysela) [2065575] - ASoC: codecs: Add Awinic AW8738 audio amplifier driver (Jaroslav Kysela) [2065575] - ASoC: audio_graph_card2: Add support for variable slot widths (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: clarify operator precedence (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: clarify operator precedence (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Increase ACP_HW_SEM_RETRY_COUNT value (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Move group register configuration to acp-loader (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Use semaphore register to synchronize ipc's irq (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Flush cache after ATU_BASE_ADDR_GRP register update (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Do not set ipc_pcm_params ops as it is optional (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: acp-pcm: Take buffer information directly from runtime (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: pci-tgl: add RPL-S support (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix DSP mbox start command and global enable order (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix max number of TX channels (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix GPIO2 configuration (Jaroslav Kysela) [2065575] - ASoC: bt-sco: fix bt-sco-pcm-wb dai widget don't connect to the endpoint (Jaroslav Kysela) [2065575] - ASoC: hdac_hda: Avoid unexpected match when pcm_name is "Analog" (Jaroslav Kysela) [2065575] - ASoC: soc-compress: prevent the potentially use of null pointer (Jaroslav Kysela) [2065575] - ASoC: soc-generic-dmaengine-pcm: set period_bytes_min based on maxburst (Jaroslav Kysela) [2065575] - ASoC: dwc-i2s: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: amd: use asoc_substream_to_rtd() (Jaroslav Kysela) [2065575] - ASoC: atmel_ssc_dai: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: mxs-saif: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add entries in ADL match table (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_ssp_amp: rename driver and support cs35l41 amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: cirrus-common: support cs35l41 amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt1308: move rt1308 code to common module (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: create sof-realtek-common module (Jaroslav Kysela) [2065575] - ASoC: Intel: add RT1308 I2S machine driver and HDMI-in capture via I2S support. (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: fix spelling in comments (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: remove sof_fw_filename (Jaroslav Kysela) [2065575] - ASoC: es7241: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98927: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98926: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98925: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9867: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9860: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9850: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98390: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98371: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98095: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98088: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda134x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: ml26124: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm512x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm186x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm1681: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm3060: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: ti: davinci-i2s: Add check for clk_enable() (Jaroslav Kysela) [2065575] - ASoC: mc13783: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: isabelle: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: amd: vangogh: fix uninitialized symbol warning in machine driver (Jaroslav Kysela) [2065575] - ASoC: amd: vg: remove warnings and errors pointed out by checkpatch pl (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update DAI link name (Jaroslav Kysela) [2065575] - ASoC: amd: vg: fix for pm resume callback sequence (Jaroslav Kysela) [2065575] - ASoC: es8328: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: inno_rk3036: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: es8316: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: wl1273: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: es7134: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: twl4030: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda1334: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda1380: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: si476x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: sti-sas: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: tscs454: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: tscs42xx: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: lm49453: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: qcom: lpass-platform: Update warning print to control excess logging (Jaroslav Kysela) [2065575] - ASoC: acp: check the return value of devm_kzalloc() in acp_legacy_dai_links_create() (Jaroslav Kysela) [2065575] - ASoC: rt5663: check the return value of devm_kzalloc() in rt5663_parse_dp() (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-priv: Drop duplicate sof_compressed_ops declaration (Jaroslav Kysela) [2065575] - ASoC: amd: Use platform_get_irq_byname() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: SOF: Declare sof_compress_ops in sof-priv.h (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Fix NULL ptr dereference when ENOMEM (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add DMIC machine driver ops (Jaroslav Kysela) [2065575] - ASoC: amd: acp-legacy: Add legacy card support for new machines (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Change card name for Guybrush Machine (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: Add compress_ops for SOF platform component driver (Jaroslav Kysela) [2065575] - ASoC: rt5682s: Fix the wrong jack type detected (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi-byt: Add new WM5102 ACPI HID (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update acp init and deinit sequence (Jaroslav Kysela) [2065575] - ASoC: amd: vg: apply sample bits pcm constraint (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update platform clock control sequence (Jaroslav Kysela) [2065575] - ASoC: nau8821: enable no_capture_mute flag (Jaroslav Kysela) [2065575] - ASoC: amd: vangogh: refactor i2s master mode clock sequence code (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Add topology overwrite for Felwinter (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021 (Jaroslav Kysela) [2065575] - ASoC: intel: skylake: Set max DMA segment size (Jaroslav Kysela) [2065575] - ASoC: SOF: hda: Set max DMA segment size (Jaroslav Kysela) [2065575] - ASoC: SOF: core: unregister clients and machine drivers in .shutdown (Jaroslav Kysela) [2065575] - ASoC: cs4265: Fix the duplicated control name (Jaroslav Kysela) [2065575] - ASoC: ops: Shift tested values in snd_soc_put_volsw() by +min (Jaroslav Kysela) [2065575] - ASoC: soc-core: skip zero num_dai component in searching dai name (Jaroslav Kysela) [2065575] - ASoC: SOF: Makefile: Fix randconfig sof-client build when SND_SOC_SOF=y (Jaroslav Kysela) [2065575] - ASoC: codec: wm8960: complete discharge on BIAS OFF->STANDBY (Jaroslav Kysela) [2065575] - ASoC: wm8731: Delete empty remove() function (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: remove numeric PCM3168A_NUM_SUPPLIES (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: refactor format handling (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: refactor hw_params routine (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: cleanup unintuitive mask usage (Jaroslav Kysela) [2065575] - ASoC: SOF: compr: Mark snd_compress_ops static (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_wm5102: use GFP_KERNEL (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic probe support to SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic IPC message injector into SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic IPC flood test into SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-client: Add support for clients not managed by pm framework (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC SOF client support (Jaroslav Kysela) [2065575] - ASoC: SOF: Split up utils.c into sof-utils and iomem-utils (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Read and pass the whole message to handlers for IPC events (Jaroslav Kysela) [2065575] - ASoC: SOF: Move the definition of enum sof_dsp_power_states to global header (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop unused DSP power states: D3_HOT and D3_COLD (Jaroslav Kysela) [2065575] - ASoC: rt5640: Remove the sysclk and sysclk_src checking (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hdac_ext_stream: consistent prefixes for variables/members (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: Enable combine mode soft (Jaroslav Kysela) [2065575] - ASoC: SOF: compr: Add compress ops implementation (Jaroslav Kysela) [2065575] - ASoC: SOF: dma-trace: Pass pointer to params_ext struct in trace_init() (Jaroslav Kysela) [2065575] - ASoC: SOF: intel: hda-trace: Pass the dma buffer pointer to hda_dsp_trace_prepare (Jaroslav Kysela) [2065575] - ASoC: zl38060: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: max9759: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: simple-amplifier: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: rt9120: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: dmic: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: rt5682: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: rt5668: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: rt5682s: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: tas2770: Insert post reset delay (Jaroslav Kysela) [2065575] - ASoC: samsung: Explicitly include gpiolib header (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Set gpio_spkr_en to None for max speaker amplifer in machine driver (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_xr_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_range() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw() (Jaroslav Kysela) [2065575] - ASoC: max98927: add missing header file (Jaroslav Kysela) [2065575] - ASoC: ops: Check for negative values before reading them (Jaroslav Kysela) [2065575] - ASoC: cs42l51: Improve error handling in cs42l51_remove() (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Do not allocate buffer for msg_data (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Drop header parameter from sof_ipc_tx_message_unlocked() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: cnl: Use pm_gate->hdr.cmd in cnl_compact_ipc_compress() (Jaroslav Kysela) [2065575] - ASoC: amd: renoir: Add check for acp configuration flags (Jaroslav Kysela) [2065575] - ASoC: amd: acp: acp-legacy: Add DMIC dai link support for Renoir (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add ACP init()/deinit() callback for Renoir. (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add generic PCI driver module for ACP device (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add PDM controller based dmic dai for Renoir (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add generic support for PDM controller on ACP (Jaroslav Kysela) [2065575] - ASoC: rk3399_gru_sound: Wire up DP jack detection (Jaroslav Kysela) [2065575] - ASoC: rt5682: Fix deadlock on resume (Jaroslav Kysela) [2065575] - ASoC: hdmi-codec: Fix OOB memory accesses (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Move debugfs removal out of spinlock (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: Simplify count adjustment in trace_read (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Remove link assignment limitation (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_xr_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw() (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Add new system-clock-fixed flag (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Set sysclk on all components (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: add 512FS MCLK clock configuration (Jaroslav Kysela) [2065575] - ASoC: amd: sof-mach: Add support for RT5682S and RT1019 card (Jaroslav Kysela) [2065575] - ASoC: soc-generic-dmaengine-pcm: separate max_buffer_size assignment (Jaroslav Kysela) [2065575] - ASoC: samsung: remove unneeded ret variable (Jaroslav Kysela) [2065575] - ASoC: codecs: remove redundant ret variable (Jaroslav Kysela) [2065575] - ASoC: fsl-asoc-card: Add optional dt property for setting mclk-id (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Add support for platform without amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: add support for systems without i915 audio (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Compare sdw adr directly (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: match sdw version on link_slaves_found (Jaroslav Kysela) [2065575] - ASoC: add support for TAS5805M digital amplifier (Jaroslav Kysela) [2065575] - ASoC: topology: Optimize soc_tplg_dapm_graph_elems_load behavior (Jaroslav Kysela) [2065575] - ASoC: topology: Allow TLV control to be either read or write (Jaroslav Kysela) [2065575] - ASoC: topology: Remove superfluous error prints (Jaroslav Kysela) [2065575] - ASoC: SOF: add flag to disable IMR restore to sof_debug (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: add IMR restore support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: add SSP helper (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: use inclusive language for SSP clocks (Jaroslav Kysela) [2065575] - ASoC: amd: acp-mach: Fix Left and Right rt1019 amp devices (Jaroslav Kysela) [2065575] - ASoC: max9759: fix underflow in speaker_gain_control_put() (Jaroslav Kysela) [2065575] - ASoC: cpcap: Check for NULL pointer after calling of_get_child_by_name (Jaroslav Kysela) [2065575] - ASoC: simple-card: fix probe failure on platform component (Jaroslav Kysela) [2065575] - ASoC: xilinx: xlnx_formatter_pcm: Make buffer bytes multiple of period bytes (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add support for hibernate memory retention mode (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Update handling of test key registers (Jaroslav Kysela) [2065575] - ASoC: wcd9335: Keep a RX port value for each SLIM RX mux (Jaroslav Kysela) [2065575] - ASoC: amd: acp: acp-mach: Change default RT1019 amp dev id (Jaroslav Kysela) [2065575] - ASoC: topology: Fix typo (Jaroslav Kysela) [2065575] - ASoC: fsl_asrc: refine the check of available clock divider (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_rt5640: Add support for external GPIO jack-detect (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_rt5640: Support retrieving the codec IRQ from the AMCR0F28 ACPI dev (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add support for boards with an external jack-detect GPIO (Jaroslav Kysela) [2065575] - ASoC: rt5640: Allow snd_soc_component_set_jack() to override the codec IRQ (Jaroslav Kysela) [2065575] - ASoC: rt5640: Change jack_work to a delayed_work (Jaroslav Kysela) [2065575] - ASoC: rt5640: Fix possible NULL pointer deref on resume (Jaroslav Kysela) [2065575] - ASoC: ak4375: Fix unused function error (Jaroslav Kysela) [2065575] - ASoC: cs4265: Add a remove() function (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Correct handling of some registers in the cache (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Correct DSP power down (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Remove incorrect comment (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add cs35l51/53 IDs (Jaroslav Kysela) [2065575] - ASoC: fsl_mqs: fix MODULE_ALIAS (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for boost configuration (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for setting channels (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for errata patches (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Move power initializations to reg_sequence (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Move cs35l41_otp_unpack to shared code (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Convert tables to shared source code (Jaroslav Kysela) [2065575] - ASoC: samsung: idma: Check of ioremap return value (Jaroslav Kysela) [2065575] - ASoC: cs4265: Fix part number ID error message (Jaroslav Kysela) [2065575] - ALSA/ASoC: hda: move/rename snd_hdac_ext_stop_streams to hdac_stream.c (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Power on/off the speaker enable gpio pin based on DAPM callback. (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8173: reduce log verbosity in probe() (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8183: fix device_node leak (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8173: fix device_node leak (Jaroslav Kysela) [2065575] - ASoC: Intel/SOF: use set_stream() instead of set_tdm_slots() for HDAudio (Jaroslav Kysela) [2065575] - ASoC/soundwire: intel: simplify callbacks for params/hw_free (Jaroslav Kysela) [2065575] - ASOC: SOF: Intel: use snd_soc_dai_get_widget() (Jaroslav Kysela) [2065575] - ASoC: msm8916-wcd-analog: Use separate outputs for HPH_L/HPH_R (Jaroslav Kysela) [2065575] - ASoC: qcom: common: Parse "pin-switches" and "widgets" from DT (Jaroslav Kysela) [2065575] - ASoC: core: Add snd_soc_of_parse_pin_switches() from simple-card-utils (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Use DEBUG log level for optional prints (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: Use DEBUG log level for optional prints (Jaroslav Kysela) [2065575] - ASoC: SOF: Add clarifying comments for sof_core_debug and DSP dump flags (Jaroslav Kysela) [2065575] - ASoC: SOF: Rename snd_sof_get_status() and add kernel log level parameter (Jaroslav Kysela) [2065575] - ASoC: SOF: dsp_arch_ops: add kernel log level parameter for oops and stack (Jaroslav Kysela) [2065575] - ASoC: SOF: ops: Always print DSP Panic message but use different message (Jaroslav Kysela) [2065575] - ASoc: SOF: core: Update the FW boot state transition diagram (Jaroslav Kysela) [2065575] - ASoC: SOF: pm: Force DSP off on suspend in BOOT_FAILED state also (Jaroslav Kysela) [2065575] - ASoC: SOF: Set SOF_FW_BOOT_FAILED in case we have failure during boot (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Only allow sending of an IPC in SOF_FW_BOOT_COMPLETE state (Jaroslav Kysela) [2065575] - ASoC: SOF: Rename 'enum snd_sof_fw_state' to 'enum sof_fw_state' (Jaroslav Kysela) [2065575] - ASoC: SOF: Move the definition of enum snd_sof_fw_state to global header (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce new firmware state: SOF_FW_BOOT_READY_OK (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce new firmware state: SOF_FW_CRASHED (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a 'message' parameter to snd_sof_dsp_dbg_dump() (Jaroslav Kysela) [2065575] - ASoC: SOF: Add 'non_recoverable' parameter to snd_sof_dsp_panic() (Jaroslav Kysela) [2065575] - ASoC: SOF: Use sof_debug_check_flag() instead of sof_core_debug directly (Jaroslav Kysela) [2065575] - ASoC: SOF: core: Add simple wrapper to check flags in sof_core_debug (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: Avoid re-defining the HDA_FW_BOOT_ATTEMPTS (Jaroslav Kysela) [2065575] - ASoC: SOF: ops: Use dev_warn() if the panic offsets differ (Jaroslav Kysela) [2065575] - ASoC: codecs: ak4375: Change invert controls to a stereo switch (Jaroslav Kysela) [2065575] - ASoC: Add AK4375 support (Jaroslav Kysela) [2065575] - ASoC: bcm: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: xlnx: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Remove duplicate dependency in Kconfig (Jaroslav Kysela) [2065575] - ASoC: SOF: AMD: simplify return status handling (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Update sof_tplg_filename for SOF machines (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Enable SOF audio for Google chrome boards. (Jaroslav Kysela) [2065575] - ASoC: sunxi: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: samsung: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: rockchip: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: qcom: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: mxs: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: img: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: generic: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: ti: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: ateml: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: tlv320aic31xx: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: ssm2305: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: simple-amplifier: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: sgtl5000: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: pcm3168a: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: max9860: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: max9759: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: es7241: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: ak4118: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: Streamline locals declaration for PCM-functions (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: Reduce size of catpt_component_open() (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Improve driver's code (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Support device-tree (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Set FIFO trigger level (Jaroslav Kysela) [2065575] - ASoC: SOF: Kconfig: Make the SOF_DEVELOPER_SUPPORT depend on SND_SOC_SOF (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Add null pointer check for substream->runtime (Jaroslav Kysela) [2065575] - ASoC: SOF: avoid casting "const" attribute away (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: remove support for RESUME in platform trigger (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: remove support for RESUME trigger (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: remove support for RESUME trigger (Jaroslav Kysela) [2065575] - ASoC: tegra20-spdif: stop setting slave_id (Jaroslav Kysela) [2065575] - ASoC: AMD: fix depend/select mistake on SND_AMD_ACP_CONFIG (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: read back control data from DSP (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ctrl_type parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: control: Do not handle control notification with component type (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-audio: Drop the `cmd` member from struct snd_sof_control (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ctrl_cmd parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Set control_data->cmd alongside scontrol->cmd (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ipc_cmd parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Rename send parameter in snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: rt5663: Handle device_property_read_u32_array error codes (Jaroslav Kysela) [2065575] - ASoC: SOF: OF: Avoid reverse module dependency (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-probes: Constify sof_probe_compr_ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Remove pm_runtime_put_autosuspend() for SOF OF device (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add comment on JasperLake support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-dai: remove unused fields (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: add quirks for HDAudio DMA position information (Jaroslav Kysela) [2065575] - ASoC: SOF: hda-stream: only enable DPIB if needed (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-ctrl: apply symmetry for DPIB (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-stream: limit PROCEN workaround (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: ICL: move ICL-specific ops to icl.c (Jaroslav Kysela) [2065575] - ASoC: test-component: fix null pointer dereference. (Jaroslav Kysela) [2065575] - ASoC: amd: Convert to new style DAI format definitions (Jaroslav Kysela) [2065575] - ASoC: AMD: acp-config: fix missing dependency on SND_SOC_ACPI (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Move rt1015 speaker amp to common file (Jaroslav Kysela) [2065575] - ASoC: rt5682s: add delay time to fix pop sound issue (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add 'static' qualifiers for max98390 routes (Jaroslav Kysela) [2065575] - ASoC: amd: acp6x-pdm-dma: Constify static snd_soc_dai_ops (Jaroslav Kysela) [2065575] - ASoC: ti: davinci-mcasp: Get rid of duplicate of_node assignment (Jaroslav Kysela) [2065575] - ASoC: zl38060: Setup parent device and get rid of unnecessary of_node assignment (Jaroslav Kysela) [2065575] - ASoC: test-component: fix null pointer dereference. (Jaroslav Kysela) [2065575] - sound/soc: remove useless bool conversion to bool variable (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix undefined reference to core functions (Jaroslav Kysela) [2065575] - ASoC: rt5640: Fix the wrong state of the JD in the HDA header (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: remove redundant ret variable (Jaroslav Kysela) [2065575] - ASoC: tegra: Add master volume/mute control support (Jaroslav Kysela) [2065575] - ASoC: Intel: Skylake: Use NHLT API to search for blob (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add max98390 2/4 speakers support (Jaroslav Kysela) [2065575] - ASoC: intel: boards: bytcht*: Constify static snd_soc_ops (Jaroslav Kysela) [2065575] - ASoC: Intel: hda_dsp_common: don't multiline PCM topology warning (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: tidyup soc_pcm_pointer()'s delay update method (Jaroslav Kysela) [2065575] - ASoC: intel: sst-mfld-platform-pcm: add .delay support (Jaroslav Kysela) [2065575] - ASoC: amd: acp-pcm-dma: add .delay support (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Use pR/pa to print resources/physical addresses (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix link problem (Jaroslav Kysela) [2065575] - ASoC: codecs/jz4770: Add missing gain control after DAC/ADC mixer (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: send DAI_CONFIG IPC during pause (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: dai: Expand DAI_CONFIG IPC flags (Jaroslav Kysela) [2065575] - ASoC: SOF: align the hw_free sequence with stop (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: move the check for prepared flag (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a helper for freeing PCM stream (Jaroslav Kysela) [2065575] - ASoC: SOF: call platform hw_free for paused streams during suspend (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: invoke platform hw_free for STOP/SUSPEND triggers (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: reset stream before coupling host and link DMA's (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Add a helper function for stream reset (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: clear stream before freeing the DAI widget (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add the HDA header support (Jaroslav Kysela) [2065575] - ASoC: uniphier: drop selecting non-existing SND_SOC_UNIPHIER_AIO_DMA (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add missing of_node_put() in platform_parse_resource() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: don't use list_for_each_entry_reverse() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add .ack support for HDaudio platforms (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: add .ack callback support (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-pci-dev: use community key on all Up boards (Jaroslav Kysela) [2065575] - ASoC: stm32: spdifrx: add pm_runtime support (Jaroslav Kysela) [2065575] - ASoC: stm32: dfsdm: add pm_runtime support for audio (Jaroslav Kysela) [2065575] - ASoC: stm32: i2s: add pm_runtime support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: free DAI widget during stop and suspend (Jaroslav Kysela) [2065575] - ASoC: SOF: add support for dynamic pipelines with multi-core (Jaroslav Kysela) [2065575] - ASoC: SOF: hda: don't use the core op for power up/power down (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove sof_load_pipeline_ipc() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: CNL/ICL/APL: set core_get/core_put ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: TGL: set core_get/put ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add ops for core_get and core_put (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce num_cores and ref count per core (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: expose get_chip_info() (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Implement reset callback (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Implement DSP start (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Add runtime PM / System PM support (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8: Add runtime PM / System PM support (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Add code to manage DSP related clocks (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add DSP system PM callback for mt8195 (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add mt8195 dsp clock support (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add dai driver dsp ops callback for mt8195 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add mt8195 device descriptor (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add fw loader and mt8195 dsp ops to load firmware (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add support for Mediatek AFE DAI (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add mt8195 hardware support (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add support for SOF firmware authentication (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add trace logger support (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add support for AMD ACP DAIs (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Remove legacy acpi based machine struct (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add Renoir PCI driver interface (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add machine driver dsp ops for Renoir platform (Jaroslav Kysela) [2065575] - ASoC: amd: Add module to determine ACP configuration (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add PCM stream callback for Renoir dai's (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add dai driver dsp ops callback for Renoir (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add IPC support for ACP IP block (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add fw loader and renoir dsp ops to load firmware (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add helper callbacks for ACP's DMA configuration (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add Renoir ACP HW support (Jaroslav Kysela) [2065575] - ASoC: stm32: sai: increase channels_max limit (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: Add support for IPC message injection (Jaroslav Kysela) [2065575] - ASoC: SOF: intel: Use the generic helper to get the reply (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Use the generic helper to get the reply (Jaroslav Kysela) [2065575] - ASoC: SOF: utils: Add generic function to get the reply for a tx message (Jaroslav Kysela) [2065575] - ASoC: SOF: i.MX: simplify Kconfig (Jaroslav Kysela) [2065575] - ASoC: SOF: core: Unregister machine driver before IPC and debugfs (Jaroslav Kysela) [2065575] - ASoC: adau1701: Replace legacy gpio interface for gpiod (Jaroslav Kysela) [2065575] - ASoC: Intel: add sof-nau8825 machine driver (Jaroslav Kysela) [2065575] - ASoC: cs35l41: DSP Support (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: add link adr order check (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove get_next_be_id (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove sof_sdw_mic_codec_mockup_init (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove SOF_RT715_DAI_ID_FIX quirk (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: move DMIC link id overwrite to create_sdw_dailink (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: Use a fixed DAI link id for AMP (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: rename be_index/link_id to link_index (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_sdw: add SKU for Dell Latitude 9520 (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: return the original error number (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: send DMA_TRACE_FREE IPC during release (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: update ipc_log_header() (Jaroslav Kysela) [2065575] - ALSA: mtpav: Don't call card private_free at probe error path (Jaroslav Kysela) [2065575] - ALSA: virmidi: Remove duplicated code (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machine (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for TongFang devices with pop noise (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for the Framework Laptop (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Dell Latitude 7520 (Jaroslav Kysela) [2065575] - ALSA: hda - fix unused Realtek function when PM is not enabled (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Yoga Duet 7 13ITL6 speakers (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable mute/micmute LEDs support for HP Laptops (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix mute led issue on thinkpad with cs35l41 s-codec (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP70PNP (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook 845/865 G9 (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: add HDMI codec VID for Raptorlake-P (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: fix warning about PCM count when used with SOF (Jaroslav Kysela) [2065575] - ALSA: nm256: Don't call card private_free at probe error path (Jaroslav Kysela) [2065575] - ALSA: rme9652: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hdspm: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hdsp: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: oxygen: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: lx6464es: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cmipci: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: aw2: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: als300: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: lola: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: bt87x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: sis7019: Fix the missing error handling (Jaroslav Kysela) [2065575] - ALSA: via82xx: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: sonicvibes: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: rme96: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: rme32: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: riptide: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: maestro3: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: korg1212: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: intel8x0: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ice1724: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: fm801: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: es1968: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: es1938: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ens137x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: emu10k1x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cs5535audio: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cs4281: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ca0106: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: azt3328: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: au88x0: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: atiixp: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: als4000: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ali5451: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ad1889: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: echoaudio: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: add quirk for Lenovo Thinkpad X12 speakers (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo PD50PNT (Jaroslav Kysela) [2065575] - ALSA: hda: Avoid unsol event during RPM suspending (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix audio regression on Mi Notebook Pro 2020 (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Add new Dolphin HW variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Disable HSBIAS_SENSE_EN for Cyborg (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Support new Warlock MLK Variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Fix Full Scale Volume setting for all variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Re-order quirk table into ascending order (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Fix Warlock to use mono mic configuration (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable headset mic on Lenovo P360 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add mute and micmut LED support for Zbook Fury 17 G9 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add alc256-samsung-headphone fixup (Jaroslav Kysela) [2065575] - ALSA: pci: fix reading of swapped values from pcmreg in AC97 codec (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix LED on Zbook Studio G9 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines (Jaroslav Kysela) [2065575] - ALSA: cmipci: Restore aux vol on suspend/resume (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for ASUS GA402 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671 (Jaroslav Kysela) [2065575] - ALSA: hda: Add AlderLake-PS variant PCI ID (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP50PNJ (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP70PNJ (Jaroslav Kysela) [2065575] - ALSA: lola: add a check for the return of vmalloc() (Jaroslav Kysela) [2065575] - ALSA: echoaudio: remove redundant assignment to variable bytes (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Make use of the helper component_compare_dev_name (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Update scratch reg. communication (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Hardcode GCAP ISS value on T234 (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Add Tegra234 hda driver support (Jaroslav Kysela) [2065575] - ALSA: hda: Expose codec cleanup and power-save functions (Jaroslav Kysela) [2065575] - ALSA: hda: Update and expose codec register procedures (Jaroslav Kysela) [2065575] - ALSA: hda: Update and expose snd_hda_codec_device_init() (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: add keep-alive support for ADL-P and DG2 (Jaroslav Kysela) [2065575] - ALSA: hda: Set max DMA segment size (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix deadlock by COEF mutex (Jaroslav Kysela) [2065575] - ALSA: hda: Fix missing codec probe on Shenker Dock 15 (Jaroslav Kysela) [2065575] - ALSA: hda: Fix regression on forced probe mask option (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Legion Y9000X 2019 (Jaroslav Kysela) [2065575] - ALSA: hda: Add PCI and HDMI IDs for Intel Raptor Lake (Jaroslav Kysela) [2065575] - ALSA: ca0106: Rename register macro names (Jaroslav Kysela) [2065575] - ALSA: hda: Fix driver index handling at re-binding (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add support for HP Laptops (Jaroslav Kysela) [2065575] - ALSA: hda: Skip codec shutdown in case the codec is not registered (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for ASUS GU603 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix silent output on Gigabyte X570 Aorus Xtreme after reboot from Windows (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix silent output on Gigabyte X570S Aorus Master (newer chipset) (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add missing fixup-model entry for Gigabyte X570 ALC1220 quirks (Jaroslav Kysela) [2065575] - ALSA: hda: realtek: Fix race at concurrent COEF updates (Jaroslav Kysela) [2065575] - ALSA: hda: Fix signedness of sscanf() arguments (Jaroslav Kysela) [2065575] - ALSA: hda: Fix UAF of leds class devs at unbinding (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Add new Warlock SKUs to patch_cs8409 (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Make cs35l41_hda_remove() return void (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Tidyup code (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Make use of the helper function dev_err_probe() (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add missing default cases (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Move cs35l41* calls to its own symbol namespace (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add calls to newly added test key function (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Avoid overwriting register patch (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix speakers and micmute on HP 855 G8 (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: fix double free on error in probe() (Jaroslav Kysela) [2065575] - ALSA: hda: Fix dependencies of CS35L41 on SPI/I2C buses (Jaroslav Kysela) [2065575] - ALSA: hda: Fix dependency on ASoC cs35l41 codec (Jaroslav Kysela) [2065575] - ALSA: hda: ALC287: Add Lenovo IdeaPad Slim 9i 14ITL5 speaker quirk (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add CS35L41 support for Thinkpad laptops (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add support for Legion 7 16ACHg6 laptop (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add support for CS35L41 in HDA systems (Jaroslav Kysela) [2065575] - MAINTAINERS: Update Cirrus Logic codec driver maintainers (Jaroslav Kysela) [2065575] - ASoC: dt-bindings: cs42l42: Convert binding to yaml (Jaroslav Kysela) [2065575] - dt-bindings: remove 'interrupt-parent' from bindings (Jaroslav Kysela) [2065575] - ASoC: dt-bindings: cs42l42: Correct description of ts-inv (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Add warnings about DETECT_MODE and PLL_START (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Handle system suspend (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Change jack_detect_mutex to a lock of all IRQ handling (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Report full jack status when plug is detected (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant pll_divout member (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Simplify reporting of jack unplug (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant writes to RS_PLUG/RS_UNPLUG masks (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant writes to DETECT_MODE (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Add control for audio slow-start switch (Jaroslav Kysela) [2065575] - ALSA: mixart: Add sanity check for timer notify streams (Jaroslav Kysela) [2065575] - ALSA: mixart: Reduce size of mixart_timer_notify (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Restore Rane SL-1 quirk (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Don't get sample rate for MCT Trigger 5 USB-to-HDMI (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Clear MIDI port active flag after draining (Jaroslav Kysela) [2065575] - ALSA: usb-audio: add mapping for MSI MAG X570S Torpedo MAX. (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Limit max buffer and period sizes per time (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Increase max buffer size (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Cap upper limits of buffer/period bytes for implicit fb (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Fix undefined behavior due to shift overflowing the constant (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Add mute TLV for playback volumes on RODE NT-USB (Jaroslav Kysela) [2065575] - ALSA: scarlett2: Add support for the internal "standalone" switch (Jaroslav Kysela) [2065575] - ALSA: scarlett2: Split scarlett2_config_items[] into 3 sections (Jaroslav Kysela) [2065575] - ALSA: usb-audio: add mapping for new Corsair Virtuoso SE (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Don't abort resume upon errors (Jaroslav Kysela) [2065575] - ALSA: usb-audio: revert to IMPLICIT_FB_FIXED_DEV for M-Audio FastTrack Ultra (Jaroslav Kysela) [2065575] - ALSA: usb-audio: remove redundant assignment to variable c (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Correct quirk for VF0770 (Jaroslav Kysela) [2065575] - ALSA: usb-audio: initialize variables that could ignore errors (Jaroslav Kysela) [2065575] - ALSA: usb-audio: scarlett2: Use struct_size() helper in scarlett2_usb() (Jaroslav Kysela) [2065575] - ALSA: fireworks: fix wrong return count shorter than expected by 4 bytes (Jaroslav Kysela) [2065575] - ALSA: firewire-lib: fix uninitialized flag for AV/C deferred transaction (Jaroslav Kysela) [2065575] - ALSA: memalloc: Add fallback SG-buffer allocations for x86 (Jaroslav Kysela) [2065575] - ALSA: core: Add snd_card_free_on_error() helper (Jaroslav Kysela) [2065575] - ALSA: pcm: Test for "silence" field in struct "pcm_format_data" (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix potential AB/BA lock with buffer_mutex and mmap_lock (Jaroslav Kysela) [2065575] - ALSA: pcm: Add stream lock during PCM reset ioctl operations (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent prealloc proc writes (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent prepare and hw_params/hw_free calls (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent read/write and buffer changes (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent hw_params and hw_free calls (Jaroslav Kysela) [2065575] - ALSA: oss: Release temporary buffers upon errors (Jaroslav Kysela) [2065575] - ALSA: oss: Fix PCM OSS buffer allocation overflow (Jaroslav Kysela) [2065575] - ALSA: core: Fix typo in 'PCM Timer Interface' help (Jaroslav Kysela) [2065575] - ALSA: seq: oss: fix typo (Jaroslav Kysela) [2065575] - ALSA: seq: oss: use kzalloc (Jaroslav Kysela) [2065575] - ALSA: memalloc: invalidate SG pages before sync (Jaroslav Kysela) [2065575] - ALSA: memalloc: Fix dma_need_sync() checks (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Fix DPCM lockdep warning due to nested stream locks (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: fix BE handling of PAUSE_RELEASE (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: test refcount before triggering (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: serialize BE triggers (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Fix and cleanup DPCM locking (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: align BE 'atomicity' with that of the FE (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: use GFP_ATOMIC for dpcm structure (Jaroslav Kysela) [2065575] - ASoC: soc-component: add snd_soc_pcm_component_delay() (Jaroslav Kysela) [2065575] - ASoC: soc-dai: update snd_soc_dai_delay() to snd_soc_pcm_dai_delay() (Jaroslav Kysela) [2065575] - ALSA: core: Simplify snd_power_ref_and_wait() with the standard macro (Jaroslav Kysela) [2065575] - ALSA: seq: virmidi: Add a drain operation (Jaroslav Kysela) [2065575] - ASoC: dai_dma: remove slave_id field (Jaroslav Kysela) [2065575] - ALSA: seq: Set upper limit of processed events (Jaroslav Kysela) [2065575] - ALSA: oss: remove useless NULL check before kfree (Jaroslav Kysela) [2065575] - ALSA: pcm: introduce INFO_NO_REWINDS flag (Jaroslav Kysela) [2065575] - ALSA: pcm: unconditionally check if appl_ptr is in 0..boundary range (Jaroslav Kysela) [2065575] - Revert "ASoC: Intel: soc-acpi: add entries in ADL match table" (Jaroslav Kysela) [2065575] - devlink: hold the instance lock during eswitch_mode callbacks (Petr Oros) [2101715] - netdevsim: replace vfs_lock with devlink instance lock (Petr Oros) [2101715] - netdevsim: replace port_list_lock with devlink instance lock (Petr Oros) [2101715] - devlink: add explicitly locked flavor of the rate node APIs (Petr Oros) [2101715] - bnxt: use the devlink instance lock to protect sriov (Petr Oros) [2101715] - devlink: pass devlink_port to port_split / port_unsplit callbacks (Petr Oros) [2101715] - devlink: hold the instance lock in port_split / port_unsplit callbacks (Petr Oros) [2101715] - eth: mlxsw: switch to explicit locking for port registration (Petr Oros) [2101715] - eth: nfp: replace driver's "pf" lock with devlink instance lock (Petr Oros) [2101715] - eth: nfp: wrap locking assertions in helpers (Petr Oros) [2101715] - devlink: expose instance locking and add locked port registering (Petr Oros) [2101715] - ethtool: don't drop the rtnl_lock half way thru the ioctl (Petr Oros) [2101715] - ethtool: handle info/flash data copying outside rtnl_lock (Petr Oros) [2101715] - ethtool: push the rtnl_lock into dev_ethtool() (Petr Oros) [2101715] - mlxsw: reg: Remove PMTM register (Ivan Vecera) [2101715] - mlxsw: spectrum: Use PMTDB register to obtain split info (Ivan Vecera) [2101715] - mlxsw: reg: Add Port Module To local DataBase Register (Ivan Vecera) [2101715] - mlxsw: spectrum: Use PLLP to get front panel number and split number (Ivan Vecera) [2101715] - mlxsw: reg: Add Port Local port to Label Port mapping Register (Ivan Vecera) [2101715] - mlxsw: spectrum: Move port SWID set before core port init (Ivan Vecera) [2101715] - mlxsw: spectrum: Move port module mapping before core port init (Ivan Vecera) [2101715] - mlxsw: spectrum: Bump minimum FW version to xx.2008.3326 (Ivan Vecera) [2101715] - bpf: fix build error due to missing bpf_perf_event.h header (Desnes A. Nunes do Rosario) [1908140] - powerpc/bpf: Fix use of user_pt_regs in uapi (Desnes A. Nunes do Rosario) [1908140] - net: ena: Do not waste napi skb cache (Michal Schmidt) [2097644] - net: ena: Extract recurring driver reset code into a function (Michal Schmidt) [2097644] - net: ena: Change the name of bad_csum variable (Michal Schmidt) [2097644] - net: ena: Add debug prints for invalid req_id resets (Michal Schmidt) [2097644] - net: ena: Remove ena_calc_queue_size_ctx struct (Michal Schmidt) [2097644] - net: ena: Move reset completion print to the reset function (Michal Schmidt) [2097644] - net: ena: Remove redundant return code check (Michal Schmidt) [2097644] - net: ena: Change ENI stats support check to use capabilities field (Michal Schmidt) [2097644] - net: ena: Add capabilities field with support for ENI stats capability (Michal Schmidt) [2097644] - net: ena: Change return value of ena_calc_io_queue_size() to void (Michal Schmidt) [2097644] - powerpc/ptrace: replace ptrace_report_syscall() with a tracehook call (Desnes A. Nunes do Rosario) [1992947] - powerpc/ptrace: Add support for PTRACE_SYSEMU (Desnes A. Nunes do Rosario) [1992947] - selftests/powerpc: New PTRACE_SYSEMU test (Desnes A. Nunes do Rosario) [1992947] - powerpc: Redefine TIF_32BITS thread flag (Desnes A. Nunes do Rosario) [1992947] - redhat: fix libnl3-devel BuildRequires for intel-speed-select (Jarod Wilson)- redhat: enable mtty module for internal testing (Jarod Wilson) [2071992] - tools/power/x86/intel-speed-select: v1.12 release (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: HFI support (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: OOB daemon mode (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: v1.11 release (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: Update max frequency (Martin McConnell) [2072658] - Spec fixes for intel-speed-select (Martin McConnell) [2072658] - Add BuildRequires libnl3-devel for intel-speed-select (Martin McConnell) [2072658] - xfs: fix soft lockup via spinning in filestream ag selection loop (Brian Foster) [2033293] - net: ping6: Fix memleak in ipv6_renew_options(). (Ivan Vecera) [2112339] - Input: i8042 - Add quirk for Fujitsu Lifebook T725 (Benjamin Tissoires) [2019942] - HID: amd_sfh: Modify the hid name (Benjamin Tissoires) [2090040] - HID: amd_sfh: Modify the bus name (Benjamin Tissoires) [2090040] - HID: amd_sfh: Add support for sensor discovery (Benjamin Tissoires) [2090040] - igc: Reinstate IGC_REMOVED logic and implement it properly (Corinna Vinschen) [2037969] - intel/igc:fix repeated words in comments (Corinna Vinschen) [2037969] - intel: remove unused macros (Corinna Vinschen) [2037969] - igc: Change type of the 'igc_check_downshift' method (Corinna Vinschen) [2037969] - igc: Remove unused phy_type enum (Corinna Vinschen) [2037969] - igc: Remove igc_set_spd_dplx method (Corinna Vinschen) [2037969] - igc: Fix suspending when PTM is active (Corinna Vinschen) [2037969] - igc: Fix BUG: scheduling while atomic (Corinna Vinschen) [2037969 2014971] - igc: Fix infinite loop in release_swfw_sync (Corinna Vinschen) [2037969] - igc: igc_write_phy_reg_gpy: drop premature return (Corinna Vinschen) [2037969] - igc: igc_read_phy_reg_gpy: drop premature return (Corinna Vinschen) [2037969] - igc: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Corinna Vinschen) [2037969] - igc: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037969] - igc: Fix TX timestamp support for non-MSI-X platforms (Corinna Vinschen) [2037969] - igc: Do not enable crosstimestamping for i225-V models (Corinna Vinschen) [2037969] - igc: switch to napi_build_skb() (Corinna Vinschen) [2037969] - igc: Remove obsolete define (Corinna Vinschen) [2037969] - igc: Remove obsolete mask (Corinna Vinschen) [2037969] - igc: Remove obsolete nvm type (Corinna Vinschen) [2037969] - igc: Remove unused phy type (Corinna Vinschen) [2037969] - igc: Remove unused _I_PHY_ID define (Corinna Vinschen) [2037969] - igc: enable XDP metadata in driver (Corinna Vinschen) [2037969] - intel_idle: Fix false positive RCU splats due to incorrect hardirqs state (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/spec_ctrl: Enable RHEL only ibrs_always & retpoline,ibrs_user spectre_v2 options (Waiman Long) [2090229] - KVM: emulate: do not adjust size of fastop and setcc subroutines (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm: fix FASTOP_SIZE when return thunks are enabled (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - efi/x86: use naked RET on mixed mode call wrapper (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Remove apostrophe typo (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Use DECLARE_PER_CPU for x86_spec_ctrl_current (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Remove UNTRAIN_RET from native_irq_return_ldt (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Mark retbleed_strings static (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/asm/32: Fix ANNOTATE_UNRET_SAFE use on 32-bit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Disable RRSBA behavior (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kexec: Disable RET on kexec (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Do not enable IBPB-on-entry when IBPB is not supported (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add Cannon lake to RETBleed affected CPU list (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - redhat/configs: Add new mitigation configs for RetBleed CVEs (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retbleed: Add fine grained Kconfig knobs (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpu/amd: Enumerate BTC_NO (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/common: Stamp out the stepping madness (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Prevent RSB underflow before vmenter (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fill RSB on vmexit for IBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Fix IBRS handling after vmexit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Prevent guest RSB poisoning attacks with eIBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Convert launched argument to flags (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Flatten __vmx_vcpu_run() (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Remove x86_spec_ctrl_mask (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Use cached host SPEC_CTRL value for guest entry/exit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fix SPEC_CTRL write on SMT state change (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fix firmware entry SPEC_CTRL handling (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpu/amd: Add Spectral Chicken (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Do IBPB fallback check only once (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add retbleed=ibpb (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - objtool: Update Retpoline validation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - intel_idle: Disable IBRS during long idle (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Report Intel retbleed vulnerability (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Split spectre_v2_select_mitigation() and spectre_v2_user_select_mitigation() (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Add spectre_v2=ibrs option to support Kernel IBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Optimize SPEC_CTRL MSR writes (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Add kernel IBRS implementation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Keep a per-CPU IA32_SPEC_CTRL value (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Enable STIBP for JMP2RET (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add AMD retbleed= boot parameter (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Report AMD retbleed vulnerability (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Add magic AMD return-thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Use return-thunk in asm code (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/sev: Avoid using __x86_return_thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/vsyscall_emu/64: Don't use RET in vsyscall emulation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm: Fix SETcc emulation for return thunks (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bpf: Use alternative RET encoding (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/ftrace: Use alternative RET encoding (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86,objtool: Create .return_sites (Josh Poimboeuf) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Undo return-thunk damage (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Use -mfunction-return (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Swizzle retpoline thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Cleanup some #ifdefery (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpufeatures: Move RETPOLINE flags to word 11 (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm/vmx: Make noinstr clean (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - arch/x86/boot/compressed: Add -D__DISABLE_EXPORTS to kbuild flags (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: (Ab)use __DISABLE_EXPORTS to disable RETHUNK in real mode (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Remove skip_r11rcx (Waiman Long) [2090229] - cpuidle,intel_idle: Fix CPUIDLE_FLAG_IRQ_ENABLE (Waiman Long) [2090229] - x86/speculation/srbds: Do not try to turn mitigation off when not supported (Waiman Long) [2090229] - x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch() (Waiman Long) [2090229] - x86/text-patching: Make text_gen_insn() play nice with ANNOTATE_NOENDBR (Waiman Long) [2090229] - x86/module: Fix the paravirt vs alternative order (Waiman Long) [2090229] - x86: Add straight-line-speculation mitigation (Waiman Long) [2090229] - x86: Prepare inline-asm for straight-line-speculation (Waiman Long) [2090229] - x86: Prepare asm files for straight-line-speculation (Waiman Long) [2090229] - x86: Use -mindirect-branch-cs-prefix for RETPOLINE builds (Waiman Long) [2090229] - x86: Move RETPOLINE*_CFLAGS to arch Makefile (Waiman Long) [2090229] - x86/entry: Add a fence for kernel entry SWAPGS in paranoid_entry() (Waiman Long) [2090229] - Makefile: remove stale cc-option checks (Waiman Long) [2090229] - tools headers: Remove broken definition of __LITTLE_ENDIAN (Waiman Long) [2090229] - tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf bench mem memcpy' (Waiman Long) [2090229] - x86: Add insn_decode_kernel() (Waiman Long) [2090229] - tools/insn: Restore the relative include paths for cross building (Waiman Long) [2090229] - x86/alternative: Use insn_decode() (Waiman Long) [2090229] - x86/insn: Add an insn_decode() API (Waiman Long) [2090229] - x86/insn: Rename insn_decode() to insn_decode_from_regs() (Waiman Long) [2090229] - x86/paravirt: Add new features for paravirt patching (Waiman Long) [2090229] - x86/alternative: Support not-feature (Waiman Long) [2090229] - x86/alternative: Merge include files (Waiman Long) [2090229] - objtool: Fix error handling for STD/CLD warnings (Waiman Long) [2090229] - x86/alternatives: Teach text_poke_bp() to emulate RET (Waiman Long) [2090229] - x86/ftrace: Have ftrace trampolines turn read-only at the end of system boot up (Waiman Long) [2090229] - x86/speculation: Change FILL_RETURN_BUFFER to work with objtool (Waiman Long) [2090229] - objtool: Add support for intra-function calls (Waiman Long) [2090229] - objtool: Rework allocating stack_ops on decode (Waiman Long) [2090229] - objtool: Better handle IRET (Waiman Long) [2090229] - objtool: Support multiple stack_op per instruction (Waiman Long) [2090229] - objtool: Make BP scratch register warning more robust (Waiman Long) [2090229] - x86/kexec: Make relocate_kernel_64.S objtool clean (Waiman Long) [2090229] - objtool: Introduce validate_return() (Waiman Long) [2090229] - Makefile: disallow data races on gcc-10 as well (Waiman Long) [2090229] - objtool: Improve call destination function detection (Waiman Long) [2090229] - x86/alternatives: Implement a better poke_int3_handler() completion scheme (Waiman Long) [2090229] - lib/: fix Kconfig indentation (Waiman Long) [2090229] - x86/alternatives: Use INT3_INSN_SIZE (Waiman Long) [2090229] - x86/kprobes: Fix ordering while text-patching (Waiman Long) [2090229] - x86/kprobes: Convert to text-patching.h (Waiman Long) [2090229] - x86/alternative: Shrink text_poke_loc (Waiman Long) [2090229] - x86/alternative: Remove text_poke_loc::len (Waiman Long) [2090229] - x86/ftrace: Use text_gen_insn() (Waiman Long) [2090229] - x86/alternative: Add text_opcode_size() (Waiman Long) [2090229] - x86/ftrace: Use text_poke() (Waiman Long) [2090229] - x86/ftrace: Use vmalloc special flag (Waiman Long) [2090229] - x86/ftrace: Explicitly include vmalloc.h for set_vm_flush_reset_perms() (Waiman Long) [2090229] - x86/alternatives: Add and use text_gen_insn() helper (Waiman Long) [2090229] - x86/alternatives, jump_label: Provide better text_poke() batching interface (Waiman Long) [2090229] - x86/asm: Annotate relocate_kernel_{32,64}.c (Waiman Long) [2090229] - x86: kprobes: Prohibit probing on instruction which has emulate prefix (Waiman Long) [2090229] - x86: Correct misc typos (Waiman Long) [2090229] - x86/speculation/mds: Apply more accurate check on hypervisor platform (Waiman Long) [2090229] - objtool: Convert insn type to enum (Waiman Long) [2090229] - objtool: Track original function across branches (Waiman Long) [2090229] - objtool: Rename elf_open() to prevent conflict with libelf from elftoolchain (Waiman Long) [2090229] - x86/ftrace: Make enable parameter bool where applicable (Waiman Long) [2090229] - x86/CPU/AMD: Don't force the CPB cap when running under a hypervisor (Waiman Long) [2090229] - objtool: Fix function fallthrough detection (Waiman Long) [2090229] - x86/paravirt: Detect over-sized patching bugs in paravirt_patch_call() (Waiman Long) [2090229] - x86/cpu/amd: Exclude 32bit only assembler from 64bit build (Waiman Long) [2090229] - x86/asm: Mark all top level asm statements as .text (Waiman Long) [2090229] - x86/cpu/bugs: Use __initconst for 'const' init data (Waiman Long) [2090229] - objtool: Add Direction Flag validation (Waiman Long) [2090229] - objtool: Rewrite add_ignores() (Waiman Long) [2090229] - x86/nospec, objtool: Introduce ANNOTATE_IGNORE_ALTERNATIVE (Waiman Long) [2090229] - x86/ftrace: Fix warning and considate ftrace_jmp_replace() and ftrace_call_replace() (Waiman Long) [2090229] - kbuild: Disable extra debugging info in .s output (Waiman Long) [2090229] - x86/CPU/AMD: Set the CPB bit unconditionally on F17h (Waiman Long) [2090229] - x86/alternatives: Print containing function (Waiman Long) [2090229] - x86/ftrace: Do not call function graph from dynamic trampolines (Waiman Long) [2090229] - ftrace: Create new ftrace_internal.h header (Waiman Long) [2090229] - kprobes/x86: Fix instruction patching corruption when copying more than one RIP-relative instruction (Waiman Long) [2090229] - tracing/Makefile: Fix handling redefinition of CC_FLAGS_FTRACE (Waiman Long) [2090229] - x86/paravirt: Remove unused paravirt bits (Waiman Long) [2090229] - x86/paravirt: Remove clobbers parameter from paravirt patch functions (Waiman Long) [2090229] - x86/paravirt: Make paravirt_patch_call() and paravirt_patch_jmp() static (Waiman Long) [2090229] - x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled (Waiman Long) [2090229] - ftrace: Remove unused pointer ftrace_swapper_pid (Waiman Long) [2090229] - x86/spec_ctrl: Temporarily remove RHEL specific IBRS code (Waiman Long) [2090229] - net: bonding: fix use-after-free after 802.3ad slave unbind (Jonathan Toppins) [2109327] - net: bonding: fix possible NULL deref in rlb code (Jonathan Toppins) [2109327] - bonding: ARP monitor spams NETDEV_NOTIFY_PEERS notifiers (Jonathan Toppins) [2109327] - bonding: do not discard lowest hash bit for non layer3+4 hashing (Jonathan Toppins) [2109327] - bonding: helper macro __ATTR_RO to make code more clear (Jonathan Toppins) [2109327] - bonding: force carrier update when releasing slave (Jonathan Toppins) [2109327] - bonding: fix data-races around agg_select_timer (Jonathan Toppins) [2109327] - bonding: switch bond_net_exit() to batch mode (Jonathan Toppins) [2109327] - bonding: pair enable_port with slave_arr_updates (Jonathan Toppins) [2109327] - net: bonding: fix bond_xmit_broadcast return value error bug (Jonathan Toppins) [2109327] - tracing: Show size of requested perf buffer (Michael Petlan) [2103836] - tracing: Increase PERF_MAX_TRACE_SIZE to handle Sentinel1 and docker together (Michael Petlan) [2103836] - drivers/base/memory: determine and store zone for single-zone memory blocks (David Hildenbrand) [1997803] - drivers/base/node: rename link_mem_sections() to register_memory_block_under_node() (David Hildenbrand) [1997803] - drivers/base/node: consolidate node device subsystem initialization in node_dev_init() (David Hildenbrand) [1997803] - drivers/base/memory: introduce memory_block_{online,offline} (David Hildenbrand) [1997803] - mm/memory_hotplug: remove stale function declarations (David Hildenbrand) [1997803] - mm/memory_hotplug: remove HIGHMEM leftovers (David Hildenbrand) [1997803] - redhat/configs: remove CONFIG_MEMORY_HOTPLUG_SPARSE (David Hildenbrand) [1997803] - mm/memory_hotplug: restrict CONFIG_MEMORY_HOTPLUG to 64 bit (David Hildenbrand) [1997803] - mm/memory_hotplug: remove CONFIG_MEMORY_HOTPLUG_SPARSE (David Hildenbrand) [1997803] - mm/memory_hotplug: remove CONFIG_X86_64_ACPI_NUMA dependency from CONFIG_MEMORY_HOTPLUG (David Hildenbrand) [1997803] - memory: remove unused CONFIG_MEM_BLOCK_SIZE (David Hildenbrand) [1997803] - mm/memory_hotplug: disable the functionality for 32b (David Hildenbrand) [1997803] - include/linux/memory.h: drop fields 'hw' and 'phys_callback' from struct memory_block (David Hildenbrand) [1997803] - iommu/vt-d: Fix PCI bus rescan device hot add (Jerry Snitselaar) [2101591] - iommu/vt-d: Fix RID2PASID setup/teardown failure (Jerry Snitselaar) [2101591]- cifs: support share failover when remounting (Ronnie Sahlberg) [2095258] - cifs: avoid starvation when refreshing dfs cache (Ronnie Sahlberg) [2095258] - cifs: fix path comparison and hash calc (Ronnie Sahlberg) [2095258] - cifs: handle different charsets in dfs cache (Ronnie Sahlberg) [2095258] - spi: amd: Limit max transfer and message size (Sudheesh Mavila) [2047996] - redhat/configs: enable CONFIG_SPI_AMD for x86_64 (Sudheesh Mavila) [2047996] - spi: amd: Fix building without ACPI enabled (Sudheesh Mavila) [2047996] - spi: amd: Add support for version AMDI0062 (Sudheesh Mavila) [2047996] - spi: amd: Remove needless rom_addr variable (Sudheesh Mavila) [2047996] - spi: amd: Use iopoll for busy waiting (Sudheesh Mavila) [2047996] - spi: amd: Don't wait for a write-only transfer to finish (Sudheesh Mavila) [2047996] - spi: amd: Remove unneeded variable (Sudheesh Mavila) [2047996] - spi: amd: Refactor amd_spi_busy_wait (Sudheesh Mavila) [2047996] - spi: amd: Refactor code to use less spi_master_get_devdata (Sudheesh Mavila) [2047996] - spi: amd: Use devm_platform_ioremap_resource() in amd_spi_probe (Sudheesh Mavila) [2047996] - spi: spi-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Sudheesh Mavila) [2047996] - spi: amd: Drop superfluous member from struct amd_spi (Sudheesh Mavila) [2047996] - spi: amd: Fix refcount underflow on remove (Sudheesh Mavila) [2047996] - spi: amd: Drop duplicate driver data assignments (Sudheesh Mavila) [2047996] - spi: amd: Pass probe errors back to driver core (Sudheesh Mavila) [2047996] - spi: amd: Fix duplicate iounmap in error path (Sudheesh Mavila) [2047996] - spi: spi-amd: Fix a NULL vs IS_ERR() check in amd_spi_probe() (Sudheesh Mavila) [2047996] - spi: spi-amd: fix warning (Sudheesh Mavila) [2047996] - spi: spi-amd: Add AMD SPI controller driver support (Sudheesh Mavila) [2047996] - selftests/tc-testings: Be compatible with newer tc output (Hangbin Liu) [2100322] - selftests/net: enable lo.accept_local in psock_snd test (Hangbin Liu) [2100322] - selftests/net: Use kselftest skip code for skipped tests (Hangbin Liu) [2100322] - Bluetooth: SCO: Fix sco_send_frame returning skb->len (Gopal Tiwari) [1984641] - Bluetooth: Add bt_skb_sendmsg helper (Gopal Tiwari) [1984641] - Bluetooth: SCO: Replace use of memcpy_from_msg with bt_skb_sendmsg (Gopal Tiwari) [1984641] - Bluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg() (Gopal Tiwari) [1984641] - platform/mellanox: mlxbf-pmc: Fix an IS_ERR() vs NULL bug in mlxbf_pmc_map_counters (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-lc: fix error code in mlxreg_lc_create_static_devices() (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-lc: Add initial support for Nvidia line card devices (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-io: Extend number of hwmon attributes (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-hotplug: Extend logic for hotplug devices operations (Mark Langsdorf) [2068297] - platform_data/mlxreg: Add new type to support modular systems (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-io: Fix read access of n-bytes size attributes (Mark Langsdorf) [2068297] - platform/mellanox: mlxbf-pmc: fix kernel-doc notation (Mark Langsdorf) [2068297] - platform/mellanox: Typo fix in the file mlxbf-bootctl.c (Mark Langsdorf) [2068297] - redhat/configs: Support QAT devices for x86 only (Vladis Dronov) [2040724] - crypto: qat - expose device config through sysfs for 4xxx (Vladis Dronov) [2040724] - crypto: qat - relocate and rename adf_sriov_prepare_restart() (Vladis Dronov) [2040724] - crypto: qat - change behaviour of adf_cfg_add_key_value_param() (Vladis Dronov) [2040724] - crypto: qat - expose device state through sysfs for 4xxx (Vladis Dronov) [2040724] - crypto: qat - Removes the x86 dependency on the QAT drivers (Vladis Dronov) [2040724] - crypto: qat - replace get_current_node() with numa_node_id() (Vladis Dronov) [2040724] - crypto: qat - add support for 401xx devices (Vladis Dronov) [2040724] - crypto: qat - re-enable registration of algorithms (Vladis Dronov) [2040724] - crypto: qat - honor CRYPTO_TFM_REQ_MAY_SLEEP flag (Vladis Dronov) [2040724] - crypto: qat - add param check for DH (Vladis Dronov) [2040724] - crypto: qat - add param check for RSA (Vladis Dronov) [2040724] - crypto: qat - remove dma_free_coherent() for DH (Vladis Dronov) [2040724] - crypto: qat - remove dma_free_coherent() for RSA (Vladis Dronov) [2040724] - crypto: qat - fix memory leak in RSA (Vladis Dronov) [2040724] - crypto: qat - add backlog mechanism (Vladis Dronov) [2040724] - crypto: qat - refactor submission logic (Vladis Dronov) [2040724] - crypto: qat - use pre-allocated buffers in datapath (Vladis Dronov) [2040724] - crypto: qat - set to zero DH parameters before free (Vladis Dronov) [2040724] - crypto: qat - Fix unsigned function returning negative constant (Vladis Dronov) [2040724] - crypto: qat - remove line wrapping for pfvf_ops functions (Vladis Dronov) [2040724] - crypto: qat - use u32 variables in all GEN4 pfvf_ops (Vladis Dronov) [2040724] - crypto: qat - replace disable_vf2pf_interrupts() (Vladis Dronov) [2040724] - crypto: qat - leverage the GEN2 VF mask definiton (Vladis Dronov) [2040724] - crypto: qat - rework the VF2PF interrupt handling logic (Vladis Dronov) [2040724] - crypto: qat - fix off-by-one error in PFVF debug print (Vladis Dronov) [2040724] - crypto: qat - fix wording and formatting in code comment (Vladis Dronov) [2040724] - crypto: qat - test PFVF registers for spurious interrupts on GEN4 (Vladis Dronov) [2040724] - crypto: qat - add check for invalid PFVF protocol version 0 (Vladis Dronov) [2040724] - crypto: qat - add missing restarting event notification in VFs (Vladis Dronov) [2040724] - crypto: qat - remove unnecessary tests to detect PFVF support (Vladis Dronov) [2040724] - crypto: qat - remove unused PFVF stubs (Vladis Dronov) [2040724] - crypto: qat - remove unneeded braces (Vladis Dronov) [2040724] - crypto: qat - fix ETR sources enabled by default on GEN2 devices (Vladis Dronov) [2040724] - crypto: qat - set COMPRESSION capability for DH895XCC (Vladis Dronov) [2040724] - crypto: qat - set CIPHER capability for DH895XCC (Vladis Dronov) [2040724] - crypto: qat - stop using iommu_present() (Vladis Dronov) [2040724] - crypto: qat - fix initialization of pfvf rts_map_msg structures (Vladis Dronov) [2040724] - crypto: qat - fix initialization of pfvf cap_msg structures (Vladis Dronov) [2040724] - crypto: qat - remove unneeded assignment (Vladis Dronov) [2040724] - crypto: qat - disable registration of algorithms (Vladis Dronov) [2040724] - crypto: qat - enable power management for QAT GEN4 (Vladis Dronov) [2040724] - crypto: qat - move and rename GEN4 error register definitions (Vladis Dronov) [2040724] - crypto: qat - add misc workqueue (Vladis Dronov) [2040724] - crypto: qat - don't cast parameter in bit operations (Vladis Dronov) [2040724] - crypto: qat - fix access to PFVF interrupt registers for GEN4 (Vladis Dronov) [2040724] - crypto: qat - fix a signedness bug in get_service_enabled() (Vladis Dronov) [2040724] - dlm: fix missing lkb refcount handling (Alexander Aring) [2084606] - scsi: storvsc: Fix unsigned comparison to zero (Mohammed Gamal) [2020774] - scsi: storvsc: Fix validation for unsolicited incoming packets (Mohammed Gamal) [2020774] - scsi: storvsc: Fix storvsc_queuecommand() memory leak (Mohammed Gamal) [2020774] - x86/kvm: Add kexec support for SEV Live Migration. (Mohammed Gamal) [2018614] - x86/kvm: Add guest support for detecting and enabling SEV Live Migration feature. (Mohammed Gamal) [2018614] - mm: x86: Invoke hypercall when page encryption status is changed (Mohammed Gamal) [2018614] - hv_netvsc: Fix potential dereference of NULL pointer (Mohammed Gamal) [2086611] - hv_netvsc: Add support for XDP_REDIRECT (Mohammed Gamal) [2086611] - hv_netvsc: Print value of invalid ID in netvsc_send_{completion,tx_complete}() (Mohammed Gamal) [2086611] - net: hyperv: remove use of bpf_op_t (Mohammed Gamal) [2086611] - hv_netvsc: Add check for kvmalloc_array (Mohammed Gamal) [2086611] - net: netvsc: remove break after return (Mohammed Gamal) [2086611] - hv_netvsc: Use bitmap_zalloc() when applicable (Mohammed Gamal) [2086611] - SMB3: EBADF/EIO errors in rename/open caused by race condition in smb2_compound_op (Ronnie Sahlberg) [2108871] - vsock/virtio: enable VQs early on probe (Stefano Garzarella) [2107594] - vsock/virtio: initialize vdev->priv before using VQs (Stefano Garzarella) [2107594] - vsock: each transport cycles only on its own sockets (Stefano Garzarella) [2107594] - vhost/vsock: don't check owner in vhost_vsock_stop() while releasing (Stefano Garzarella) [2107594] - vsock: remove vsock from connected table when connect is interrupted by a signal (Stefano Garzarella) [2107594] - ipv6: take care of disable_policy when restoring routes (Andrea Claudi) [2103894] - tools/testing/nvdimm: Fix security_init() symbol collision (Jeff Moyer) [2096791] - redhat: make kernel-devel pkgs Requires elfutils and gcc (Jarod Wilson) [1701282] - xhci: Fix null pointer dereference in resume if xhci has only one roothub (Dean Nelson) [2061791] - usb: dwc3: gadget: Move null pinter check to proper place (Dean Nelson) [2061791] - xhci: Don't defer primary roothub registration if there is only one roothub (Dean Nelson) [2061791] - USB: serial: pl2303: fix type detection for odd device (Dean Nelson) [2061791] - media: pvrusb2: fix array-index-out-of-bounds in pvr2_i2c_core_init (Dean Nelson) [2061791] - usb: xhci-mtk: remove bandwidth budget table (Dean Nelson) [2061791] - usb: xhci-mtk: fix fs isoc's transfer error (Dean Nelson) [2061791] - xhci: Allow host runtime PM as default for Intel Alder Lake N xHCI (Dean Nelson) [2061791] - xhci: prevent U2 link power state if Intel tier policy prevented U1 (Dean Nelson) [2061791] - xhci: use generic command timer for stop endpoint commands. (Dean Nelson) [2061791] - usb: host: xhci-plat: omit shared hcd if either root hub has no ports (Dean Nelson) [2061791] - usb: host: xhci-plat: prepare operation w/o shared hcd (Dean Nelson) [2061791] - usb: host: xhci-plat: create shared hcd after having added main hcd (Dean Nelson) [2061791] - xhci: prepare for operation w/o shared hcd (Dean Nelson) [2061791] - xhci: factor out parts of xhci_gen_setup() (Dean Nelson) [2061791] - xhci: Set HCD flag to defer primary roothub registration (Dean Nelson) [2061791] - usb: core: hcd: Add support for deferring roothub registration (Dean Nelson) [2061791] - thunderbolt: Fix buffer allocation of devices with no DisplayPort adapters (Dean Nelson) [2061791] - media: uvcvideo: Fix bit overflow in uvc_probe_video (Dean Nelson) [2061791] - media: uvcvideo: Fix missing check to determine if element is found in list (Dean Nelson) [2061791] - usb: typec: tcpci: Don't skip cleanup in .remove() on error (Dean Nelson) [2061791] - usb: cdc-wdm: fix reading stuck on device close (Dean Nelson) [2061791] - thunderbolt: Ignore port locked error in tb_port_wait_for_link_width() (Dean Nelson) [2061791] - thunderbolt: Add debug logging when lane is enabled/disabled (Dean Nelson) [2061791] - usb: dwc3: gadget: Return proper request status (Dean Nelson) [2061791] - usb: typec: mux: Check dev_set_name() return value (Dean Nelson) [2061791] - usb: dwc3: pci: Fix pm_runtime_get_sync() error checking (Dean Nelson) [2061791] - usb: dwc3: gadget: Replace list_for_each_entry_safe() if using giveback (Dean Nelson) [2061791] - usb: dwc3: core: Only handle soft-reset in DCTL (Dean Nelson) [2061791] - usb: dwc3: Try usb-role-switch first in dwc3_drd_init (Dean Nelson) [2061791] - usb: dwc3: core: Fix tx/rx threshold settings (Dean Nelson) [2061791] - USB: storage: karma: fix rio_karma_init return (Dean Nelson) [2061791] - xhci: Enable runtime PM on second Alderlake controller (Dean Nelson) [2061791] - usb: misc: fix improper handling of refcount in uss720_probe() (Dean Nelson) [2061791] - usb: typec: ucsi: Fix role swapping (Dean Nelson) [2061791] - usb: typec: ucsi: Fix reuse of completion structure (Dean Nelson) [2061791] - thunderbolt: Use different lane for second DisplayPort tunnel (Dean Nelson) [2061791] - thunderbolt: Dump path config space entries during discovery (Dean Nelson) [2061791] - thunderbolt: Use decimal number with port numbers (Dean Nelson) [2061791] - xhci: increase usb U3 -> U0 link resume timeout from 100ms to 500ms (Dean Nelson) [2061791] - xhci: stop polling roothubs after shutdown (Dean Nelson) [2061791] - USB: Fix xhci event ring dequeue pointer ERDP update issue (Dean Nelson) [2061791] - USB: storage: ums-realtek: fix error code in rts51x_read_mem() (Dean Nelson) [2061791] - usb: early: xhci-dbc: Fix xdbc number parsing (Dean Nelson) [2061791] - usb: early: xhci-dbc: Remove duplicate keep parsing (Dean Nelson) [2061791] - USB: serial: pl2303: fix GS type detection (Dean Nelson) [2061791] - usb: host: xhci: Remove some unnecessary return value initializations (Dean Nelson) [2061791] - usb: host: xhci: add blank line in xhci_halt() (Dean Nelson) [2061791] - usb: host: xhci: update hci_version operation in xhci_gen_setup() (Dean Nelson) [2061791] - usb: host: xhci: fix a comment typo in xhci_mem_init() (Dean Nelson) [2061791] - usb: host: xhci: use ffs() in xhci_mem_init() (Dean Nelson) [2061791] - xhci: fix runtime PM imbalance in USB2 resume (Dean Nelson) [2061791] - xhci: fix uninitialized string returned by xhci_decode_ctrl_ctx() (Dean Nelson) [2061791] - xhci: fix garbage USBSTS being logged in some cases (Dean Nelson) [2061791] - xhci: make xhci_handshake timeout for xhci_reset() adjustable (Dean Nelson) [2061791] - xhci: omit mem read just after allocation of trb (Dean Nelson) [2061791] - Revert "USB: serial: ch341: add new Product ID for CH341A" (Dean Nelson) [2061791] - usb: xhci: fix minmax.cocci warnings (Dean Nelson) [2061791] - usb: host: xhci: drop redundant checks (Dean Nelson) [2061791] - xhci: Allocate separate command structures for each LPM command (Dean Nelson) [2061791] - xhci: dbgtty: use IDR to support several dbc instances. (Dean Nelson) [2061791] - xhci: dbc: Don't call dbc_tty_init() on every dbc tty probe (Dean Nelson) [2061791] - xhci: dbc: Rename xhci_dbc_init and xhci_dbc_exit (Dean Nelson) [2061791] - xhci: dbc: create and remove dbc structure in dbgtty driver. (Dean Nelson) [2061791] - xhci: dbc: refactor xhci_dbc_init() (Dean Nelson) [2061791] - usb: dwc3: pci: Fix Bay Trail phy GPIO mappings (Dean Nelson) [2061791] - xhci: Prevent futile URB re-submissions due to incorrect return value. (Dean Nelson) [2061791] - xhci: re-initialize the HC during resume if HCE was set (Dean Nelson) [2061791] - usb: dwc3: pci: Add "snps,dis_u2_susphy_quirk" for Intel Bay Trail (Dean Nelson) [2061791] - usb: dwc3: pci: add support for the Intel Raptor Lake-S (Dean Nelson) [2061791] - usb: xhci-mtk: add support ip-sleep wakeup for mt8195 (Dean Nelson) [2061791] - usb: dwc3: gadget: Prevent core from processing stale TRBs (Dean Nelson) [2061791] - thunderbolt: Replace acpi_bus_get_device() (Dean Nelson) [2061791] - thunderbolt: Add internal xHCI connect flows for Thunderbolt 3 devices (Dean Nelson) [2061791] - thunderbolt: Add missing device ID to tb_switch_is_alpine_ridge() (Dean Nelson) [2061791] - thunderbolt: Disable LTTPR on Intel Titan Ridge (Dean Nelson) [2061791] - usb: ulpi: Call of_node_put correctly (Dean Nelson) [2061791] - usb: ulpi: Move of_node_put to ulpi_dev_release (Dean Nelson) [2061791] - usb: xhci-mtk: Use struct_size() helper in create_sch_ep() (Dean Nelson) [2061791] - usb: common: ulpi: Fix crash in ulpi_match() (Dean Nelson) [2061791] - usb: typec: tcpm: Do not disconnect when receiving VSAFE0V (Dean Nelson) [2061791] - usb: typec: tcpm: Do not disconnect while receiving VBUS off (Dean Nelson) [2061791] - xhci: Fresco FL1100 controller should not have BROKEN_MSI quirk set. (Dean Nelson) [2061791] - usb: typec: tcpci: don't touch CC line if it's Vconn source (Dean Nelson) [2061791] - thunderbolt: Remove useless DMA-32 fallback configuration (Dean Nelson) [2061791] - media: uvcvideo: Support devices that report an OT as an entity source (Dean Nelson) [2061791] - Revert "media: uvcvideo: Support devices that report an OT as an entity source" (Dean Nelson) [2061791] - thunderbolt: Add module parameter for CLx disabling (Dean Nelson) [2061791] - thunderbolt: Enable CL0s for Intel Titan Ridge (Dean Nelson) [2061791] - thunderbolt: Rename Intel TB_VSE_CAP_IECS capability (Dean Nelson) [2061791] - thunderbolt: Implement TMU time disruption for Intel Titan Ridge (Dean Nelson) [2061791] - thunderbolt: Move usb4_switch_wait_for_bit() to switch.c (Dean Nelson) [2061791] - thunderbolt: Add CL0s support for USB4 routers (Dean Nelson) [2061791] - thunderbolt: Add TMU uni-directional mode (Dean Nelson) [2061791] - xhci: use max() to make code cleaner (Dean Nelson) [2061791] - usb: ftdi-elan: fix memory leak on device disconnect (Dean Nelson) [2061791] - Revert "usb: early: convert to readl_poll_timeout_atomic()" (Dean Nelson) [2061791] - usb: typec: tcpm: fix tcpm unregister port but leave a pending timer (Dean Nelson) [2061791] - thunderbolt: Check return value of kmemdup() in icm_handle_event() (Dean Nelson) [2061791] - media: dw2102: Fix use after free (Dean Nelson) [2061791] - USB: serial: cp210x: fix CP2105 GPIO registration (Dean Nelson) [2061791] - usb: xhci-mtk: fix list_del warning when enable list debug (Dean Nelson) [2061791] - usb: core: config: fix validation of wMaxPacketValue entries (Dean Nelson) [2061791] - xhci: avoid race between disable slot command and host runtime suspend (Dean Nelson) [2061791] - xhci: Remove CONFIG_USB_DEFAULT_PERSIST to prevent xHCI from runtime suspending (Dean Nelson) [2061791] - thunderbolt: Do not dereference fwnode in struct device (Dean Nelson) [2061791] - thunderbolt: Add debug logging of DisplayPort resource allocation (Dean Nelson) [2061791] - thunderbolt: Do not program path HopIDs for USB4 routers (Dean Nelson) [2061791] - thunderbolt: Do not allow subtracting more NFC credits than configured (Dean Nelson) [2061791] - thunderbolt: Runtime resume USB4 port when retimers are scanned (Dean Nelson) [2061791] - thunderbolt: Tear down existing tunnels when resuming from hibernate (Dean Nelson) [2061791] - thunderbolt: Runtime PM activate both ends of the device link (Dean Nelson) [2061791] - thunderbolt: xdomain: Avoid potential stack OOB read (Dean Nelson) [2061791] - media: uvcvideo: fix division by zero at stream start (Dean Nelson) [2061791] - usb: typec: tcpm: Wait in SNK_DEBOUNCED until disconnect (Dean Nelson) [2061791] - xhci: Fix commad ring abort, write all 64 bits to CRCR register. (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip reading GEVNTSIZn (Dean Nelson) [2061791] - usb: dwc3: gadget: Ignore Update Transfer cmd params (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip checking Update Transfer status (Dean Nelson) [2061791] - usb: hub: Fix locking issues with address0_mutex (Dean Nelson) [2061791] - media: dib0700: Only touch one bit when start/stop an adapter (Dean Nelson) [2061791] - media: dib0700: cleanup start/stop streaming logic (Dean Nelson) [2061791] - media: dib0700: fix undefined behavior in tuner shutdown (Dean Nelson) [2061791] - media: s2255: fix control-message timeouts (Dean Nelson) [2061791] - media: pvrusb2: fix control-message timeouts (Dean Nelson) [2061791] - media: flexcop-usb: fix control-message timeouts (Dean Nelson) [2061791] - usb: hub: Fix usb enumeration issue due to address0 race (Dean Nelson) [2061791] - usb: typec: fusb302: Fix masking of comparator and bc_lvl interrupts (Dean Nelson) [2061791] - usb: dwc3: gadget: Fix null pointer exception (Dean Nelson) [2061791] - usb: dwc3: gadget: Check for L1/L2/U3 for Start Transfer (Dean Nelson) [2061791] - usb: dwc3: gadget: Ignore NoStream after End Transfer (Dean Nelson) [2061791] - usb: xhci-mtk: fix random remote wakeup (Dean Nelson) [2061791] - usb: xhci-mtk: remove unnecessary error check (Dean Nelson) [2061791] - USB: serial: keyspan: fix memleak on probe errors (Dean Nelson) [2061791] - USB: iowarrior: fix control-message timeouts (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip resizing EP's TX FIFO if already resized (Dean Nelson) [2061791] - usb: dwc3: gadget: Change to dev_dbg() when queuing to inactive gadget/ep (Dean Nelson) [2061791] - xhci: Enable trust tx length quirk for Fresco FL11 USB controller (Dean Nelson) [2061791] - xhci: Fix command ring pointer corruption while aborting a command (Dean Nelson) [2061791] - USB: xhci: dbc: fix tty registration race (Dean Nelson) [2061791] - xhci: add quirk for host controllers that don't update endpoint DCS (Dean Nelson) [2061791] - xhci: guard accesses to ep_state in xhci_endpoint_reset() (Dean Nelson) [2061791] - media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte() (Dean Nelson) [2061791] - USB: cdc-acm: fix break reporting (Dean Nelson) [2061791] - USB: cdc-acm: fix racy tty buffer accesses (Dean Nelson) [2061791] - usb: typec: tcpm: handle SRC_STARTUP state if cc changes (Dean Nelson) [2061791] - usb: typec: tcpci: don't handle vSafe0V event if it's not enabled (Dean Nelson) [2061791] - usb: xhci-mtk: use xhci_dbg() to print log (Dean Nelson) [2061791] - media: mxl111sf: change mutex_init() location (Dean Nelson) [2061791] - media: tm6000: Avoid card name truncation (Dean Nelson) [2061791] - media: gspca: Limit frame size to sizeimage. (Dean Nelson) [2061791] - media: uvcvideo: Don't spam the log in uvc_ctrl_restore_values() (Dean Nelson) [2061791] - media: uvcvideo: Increase the size of UVC_METADATA_BUF_SIZE (Dean Nelson) [2061791] - media: uvcvideo: Return -EIO for control errors (Dean Nelson) [2061791] - media: uvcvideo: Remove unused including (Dean Nelson) [2061791] - media: m5602_ov7660: remove the repeated declaration (Dean Nelson) [2061791] - media: dvb-usb: fix ununit-value in az6027_rc_query (Dean Nelson) [2061791] - thunderbolt: Fix -Wrestrict warning (Dean Nelson) [2061791] - USB: serial: cp210x: fix dropped characters with CP2102 (Dean Nelson) [2061791] - usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind (Dean Nelson) [2061791] - USB: serial: option: remove duplicate USB device ID (Dean Nelson) [2061791] - USB: serial: mos7840: remove duplicated 0xac24 device ID (Dean Nelson) [2061791] - USB: cdc-acm: fix minor-number release (Dean Nelson) [2061791] - usb: dwc3: reference clock period configuration (Dean Nelson) [2061791] - usb: xhci-mtk: allow bandwidth table rollover (Dean Nelson) [2061791] - usb: xhci-mtk: modify the SOF/ITP interval for mt8195 (Dean Nelson) [2061791] - usb: xhci-mtk: add a member of num_esit (Dean Nelson) [2061791] - usb: xhci-mtk: check boundary before check tt (Dean Nelson) [2061791] - usb: xhci-mtk: update fs bus bandwidth by bw_budget_table (Dean Nelson) [2061791] - usb: xhci-mtk: support option to disable usb2 ports (Dean Nelson) [2061791] - usb: xhci-mtk: fix use-after-free of mtk->hcd (Dean Nelson) [2061791] - usb: dwc3: pci: add support for AMD's newer generation platform. (Dean Nelson) [2061791] - xhci: Add bus number to some debug messages (Dean Nelson) [2061791] - xhci: Add additional dynamic debug to follow URBs in cancel and error cases. (Dean Nelson) [2061791] - Revert "USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set" (Dean Nelson) [2061791] - xhci: Fix failure to give back some cached cancelled URBs. (Dean Nelson) [2061791] - xhci: fix even more unsafe memory usage in xhci tracing (Dean Nelson) [2061791] - xhci: fix unsafe memory usage in xhci tracing (Dean Nelson) [2061791] - usb: typec: tcpm: Support non-PD mode (Dean Nelson) [2061791] - USB: serial: cp210x: determine fw version for CP2105 and CP2108 (Dean Nelson) [2061791] - USB: serial: cp210x: clean up type detection (Dean Nelson) [2061791] - USB: serial: cp210x: clean up set-chars request (Dean Nelson) [2061791] - USB: serial: cp210x: clean up control-request timeout (Dean Nelson) [2061791] - USB: serial: cp210x: fix flow-control error handling (Dean Nelson) [2061791] - USB: serial: cp210x: fix control-characters error handling (Dean Nelson) [2061791] - tty: drop put_tty_driver (Dean Nelson) [2061791] - media: dvb-usb: fix uninit-value in vp702x_read_mac_addr (Dean Nelson) [2061791] - media: dvb-usb: fix uninit-value in dvb_usb_adapter_dvb_init (Dean Nelson) [2061791] - usb: renesas-xhci: Remove renesas_xhci_pci_exit() (Dean Nelson) [2061791] - usb: dwc3: Resize TX FIFOs to meet EP bursting requirements (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: fix UAF (Dean Nelson) [2061791] - usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable (Dean Nelson) [2061791] - usb: dwc3: gadget: Set gadget_max_speed when set ssp_rate (Dean Nelson) [2061791] - usb: dwc3: gadget: Prevent EP queuing while stopping transfers (Dean Nelson) [2061791] - media: lmedm04: Fix misuse of comma (Dean Nelson) [2061791] - media: tm6000: Fix memleak in tm6000_start_stream (Dean Nelson) [2061791] - usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup (Dean Nelson) [2061791] - memstick: Skip allocating card when removing host (Dean Nelson) [2061791] - USB: Replace zero-length array with flexible-array member (Dean Nelson) [2061791] - USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd (Dean Nelson) [2061791] - Revert "[usb] USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd" (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Support runtime power management (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Use ms_dev() helper (Dean Nelson) [2061791] - memstick: Prevent memstick host from getting runtime suspended during card detection (Dean Nelson) [2061791] - misc: rtsx_usb: Use USB remote wakeup signaling for card insertion detection (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe function (Dean Nelson) [2061791]- RDMA/qedr: Fix reporting QP timeout attribute (Kamal Heib) [2083620] - NFSD: Handle COPYer - Not suppored in RHEL8 (Benjamin Coddington) [2108628] - NFSD add ca_source_server<> to COPY (Benjamin Coddington) [2108628] - NFS NFSD: defining nl4_servers structure needed by both (Benjamin Coddington) [2108628] - fix backport powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user() (Diego Domingos) [2106984] - bpf: Enable bpf_ktime_get_coarse_ns helper (Viktor Malik) [2105133] - kernel/resource: Introduce request_mem_region_muxed() (Sudheesh Mavila) [2047999] - i2c: piix4: Enable EFCH MMIO for Family 17h+ (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support for SMBus port select (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support to SMBus base address detect (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support to region request and release (Sudheesh Mavila) [2047999] - i2c: piix4: Move SMBus port selection into function (Sudheesh Mavila) [2047999] - i2c: piix4: Move SMBus controller base address detect into function (Sudheesh Mavila) [2047999] - i2c: piix4: Move port I/O region request/release code into functions (Sudheesh Mavila) [2047999] - i2c: piix4: Replace hardcoded memory map size with a #define (Sudheesh Mavila) [2047999] - i2c: piix4: Detect secondary SMBus controller on AMD AM4 chipsets (Sudheesh Mavila) [2047999] - i2c: piix4: Add ACPI support (Sudheesh Mavila) [2047999] - i2c: piix4: Fix probing of reserved ports on AMD Family 16h Model 30h (Sudheesh Mavila) [2047999] - i2c: piix4: Fix port selection for AMD Family 16h Model 30h (Sudheesh Mavila) [2047999] - i2c-piix4: Add Hygon Dhyana SMBus support (Sudheesh Mavila) [2047999] - tracing: Remove WARN_ON in start_thread() (Jerome Marchand) [2090967] - net: usb: Fix spelling mistakes (José Ignacio Tornos Martínez) [1984353] - net: usb: cdc_ether: record speed in status method (José Ignacio Tornos Martínez) [1984353] - net: usb: usbnet: add method for reporting speed without MII (José Ignacio Tornos Martínez) [1984353] - e1000e: Fix possible overflow in LTR decoding (Ken Cox) [2037965] - e1000e: Print PHY register address when MDI read/write fails (Ken Cox) [2037965] - e1000e: Correct NVM checksum verification flow (Ken Cox) [2037965] - e1000e: Fix possible HW unit hang after an s0ix exit (Ken Cox) [2037965 2049952] - e1000e: Handshake with CSME starts from ADL platforms (Ken Cox) [2037965 2049952] - e1000e: Separate ADP board type from TGP (Ken Cox) [2037965 2049952] - e1000e: Remove useless DMA-32 fallback configuration (Ken Cox) [2037965] - e1000e: Remove redundant statement (Ken Cox) [2037965] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2037965] - net: e1000e: solve insmod 'Unknown symbol mutex_lock' error (Ken Cox) [2037965] - RDMA/irdma: Add SW mechanism to generate completions on error (Kamal Heib) [2100316] - RDMA/irdma: Remove the redundant variable (Kamal Heib) [2100316] - RDMA/irdma: Add support for DSCP (Kamal Heib) [2100316] - RDMA/irdma: Use irq_update_affinity_hint() (Kamal Heib) [2100316] - RDMA/irdma: Set protocol based on PF rdma_mode flag (Kamal Heib) [2100316 2096481] - virtio-ring: fix DMA metadata flags (Cindy Lu) [1969742] - virtio_ring: fix typos in vring_desc_extra (Jason Wang) [1969742] - virtio-ring: store DMA metadata in desc_extra for split virtqueue (Jason Wang) [1969742] - virtio: use err label in __vring_new_virtqueue() (Jason Wang) [1969742] - virtio_ring: introduce virtqueue_desc_add_split() (Jason Wang) [1969742] - virtio_ring: secure handling of mapping errors (Jason Wang) [1969742] - virtio-ring: factor out desc_extra allocation (Jason Wang) [1969742] - virtio_ring: rename vring_desc_extra_packed (Jason Wang) [1969742] - virtio-ring: maintain next in extra state for packed virtqueue (Jason Wang) [1969742] - drivers/base: fix userspace break from using bin_attributes for cpumap and cpulist (Phil Auld) [2089715] - rpminspect: disable abidiff scanning (Jarod Wilson)- Netvsc: Call hv_unmap_memory() in the netvsc_device_remove() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Release cpu lock in error case (Mohammed Gamal) [2086613] - Drivers: hv: Fix syntax errors in comments (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Don't assign VMbus channel interrupts to isolated CPUs (Mohammed Gamal) [2086613] - hv_balloon: Fix balloon_probe() and balloon_remove() error handling (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: fix typo in comment (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Remove support for Hyper-V 2008 and Hyper-V 2008R2/Win7 (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Refactor the ring-buffer iterator functions (Mohammed Gamal) [2086613] - hv_sock: Copy packets sent by Hyper-V out of the ring buffer (Mohammed Gamal) [2086613] - hv_sock: Check hv_pkt_iter_first_raw()'s return value (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Accept hv_sock offers in isolated guests (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce {lock,unlock}_requestor() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce vmbus_request_addr_match() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce vmbus_sendpacket_getid() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix handling of messages with transaction ID of zero (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Add VMbus IMC device to unsupported list (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Replace smp_store_mb() with virt_store_mb() (Mohammed Gamal) [2086613] - Drivers: hv: balloon: Disable balloon and hot-add accordingly (Mohammed Gamal) [2086613] - Drivers: hv: balloon: Support status report for larger page sizes (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Prevent load re-ordering when reading ring buffer (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix potential crash on module unload (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix initialization of device object in vmbus_device_register() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Deactivate sysctl_record_panic_msg by default in isolated guests (Mohammed Gamal) [2086613] - drivers: hv: log when enabling crash_kexec_post_notifiers (Mohammed Gamal) [2086613] - Drivers: hv: utils: Make use of the helper macro LIST_HEAD() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Rework use of DMA_BIT_MASK(64) (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix memory leak in vmbus_add_channel_kobj (Mohammed Gamal) [2086613] - Drivers: hv: Compare cpumasks and not their weights in init_vp_index() (Mohammed Gamal) [2086613] - Drivers: hv: Rename 'alloced' to 'allocated' (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Use struct_size() helper in kmalloc() (Mohammed Gamal) [2086613] - Drivers: hv: balloon: account for vmbus packet header in max_pkt_size (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Initialize request offers message for Isolation VM (Mohammed Gamal) [2086613] - Drivers: hv: Fix definition of hypercall input & output arg variables (Mohammed Gamal) [2086613] - net: netvsc: Add Isolation VM support for netvsc driver (Mohammed Gamal) [2086613] - scsi: storvsc: Add Isolation VM support for storvsc driver (Mohammed Gamal) [2086613] - Drivers: hv : vmbus: Adding NULL pointer check (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Remove unused code to check for subchannels (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Initialize VMbus ring buffer for Isolation VM (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Add SNP support for VMbus channel initiate message (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Mark vmbus ring buffer visible to host in Isolation VM (Mohammed Gamal) [2086613] - SUNRPC: Don't leak sockets in xs_local_connect() (Jeffrey Layton) [2089429] - SUNRPC: clean up some inconsistent indenting (Jeffrey Layton) [2089429] - SUNRPC: Ensure we flush any closed sockets before xs_xprt_free() (Jeffrey Layton) [2089429] - SUNRPC: Don't call connect() more than once on a TCP socket (Jeffrey Layton) [2089429] - net: openvswitch: fix misuse of the cached connection on tuple changes (Timothy Redaelli) [2099213] - sfc: fix considering that all channels have TX queues (Íñigo Huguet) [1851823] - sfc: fix wrong tx channel offset with efx_separate_tx_channels (Íñigo Huguet) [1851823] - intel/igb:fix repeated words in comments (Corinna Vinschen) [2037959] - igb: remove unexpected word "the" (Corinna Vinschen) [2037959] - igb: Make DMA faster when CPU is active on the PCIe link (Corinna Vinschen) [2037959] - igb: fix a use-after-free issue in igb_clean_tx_ring (Corinna Vinschen) [2037959] - igb: Remove duplicate defines (Corinna Vinschen) [2037959] - igb: skip phy status check where unavailable (Corinna Vinschen) [2037959] - igb: Convert kmap() to kmap_local_page() (Corinna Vinschen) [2037959] - igb: zero hwtstamp by default (Corinna Vinschen) [2037959] - igb: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037959] - PCI: Work around Intel I210 ROM BAR overlap defect (Corinna Vinschen) [2037959] - igb: support EXTTS on 82580/i354/i350 (Corinna Vinschen) [2037959] - igb: support PEROUT on 82580/i354/i350 (Corinna Vinschen) [2037959] - igb: move PEROUT and EXTTS isr logic to separate functions (Corinna Vinschen) [2037959] - igb: move SDP config initialization to separate function (Corinna Vinschen) [2037959] - igb: switch to napi_build_skb() (Corinna Vinschen) [2037959] - igb: remove never changed variable `ret_val' (Corinna Vinschen) [2037959] - NFSv4: Add an fattr allocation to _nfs4_discover_trunking() (Scott Mayhew) [2096393] - sunrpc: set cl_max_connect when cloning an rpc_clnt (Scott Mayhew) [2096393] - NFSv4.1 mark qualified async operations as MOVEABLE tasks (Scott Mayhew) [2096393] - powerpc/rtas: Allow ibm,platform-dump RTAS call with null buffer address (Desnes A. Nunes do Rosario) [2095041] - audit: free module name (Richard Guy Briggs) [2100259] - bfq: fix blkio cgroup leakage v4 (Ming Lei) [2093206] - scsi: scsi_dh_alua: Properly handle the ALUA transitioning state (Ewan D. Milne) [1992870] - mm: sparse: remove __section_nr() function (Mark Langsdorf) [2067280] - mm: sparse: pass section_nr to find_memory_block (Mark Langsdorf) [2067280] - mm: sparse: pass section_nr to section_mark_present (Mark Langsdorf) [2067280] - headers/uninline: Uninline single-use function: kobject_has_children() (Mark Langsdorf) [2067280] - arch_topology: Do not set llc_sibling if llc_id is invalid (Mark Langsdorf) [2067280] - topology: make core_mask include at least cluster_siblings (Mark Langsdorf) [2067280] - regmap: allow a defined reg_base to be added to every address (Mark Langsdorf) [2067280] - regmap: add configurable downshift for addresses (Mark Langsdorf) [2067280] - drivers/base/dd.c : Remove the initial value of the global variable (Mark Langsdorf) [2067280] - devres: fix typos in comments (Mark Langsdorf) [2067280] - base: soc: Make soc_device_match() simpler and easier to read (Mark Langsdorf) [2067280] - driver core: Refactor sysfs and drv/bus remove hooks (Mark Langsdorf) [2067280] - driver core: Refactor multiple copies of device cleanup (Mark Langsdorf) [2067280] - arch_topology: obtain cpu capacity using information from CPPC (Mark Langsdorf) [2067280] - PM: core: keep irq flags in device_pm_check_callbacks() (Mark Langsdorf) [2067280] - PM: sleep: Add device name to suspend_report_result() (Mark Langsdorf) [2067280] - PM: runtime: Have devm_pm_runtime_enable() handle pm_runtime_dont_use_autosuspend() (Mark Langsdorf) [2067280] - PM: sleep: wakeup: Fix typos in comments (Mark Langsdorf) [2067280] - PM: domains: Fix sleep-in-atomic bug caused by genpd_debug_remove() (Mark Langsdorf) [2067280] - PM: domains: use dev_err_probe() to simplify error handling (Mark Langsdorf) [2067280] - PM: domains: Prevent power off for parent unless child is in deepest state (Mark Langsdorf) [2067280] - driver core: cleanup double words comments (Mark Langsdorf) [2067280] - device property: Don't split fwnode_get_irq*() APIs in the code (Mark Langsdorf) [2067280] - regmap: irq: cleanup comments (Mark Langsdorf) [2067280] - platform: use dev_err_probe() in platform_get_irq_byname() (Mark Langsdorf) [2067280] - devtmpfs: drop redundant fs parameters from internal fs (Mark Langsdorf) [2067280] - component: Replace most references to 'master' with 'aggregate device' (Mark Langsdorf) [2067280] - device property: Add fwnode_irq_get_byname (Mark Langsdorf) [2067280] - regmap-irq: Fix typo in comment (Mark Langsdorf) [2067280] - driver core: Free DMA range map when device is released (Mark Langsdorf) [2067280] - regmap-irq: Update interrupt clear register for proper reset (Mark Langsdorf) [2067280] - PM: s2idle: ACPI: Fix wakeup interrupts handling (Mark Langsdorf) [2067280] - devtmpfs regression fix: reconfigure on each mount (Mark Langsdorf) [2067280] - regmap: debugfs: Fix indentation (Mark Langsdorf) [2067280] - regmap: Call regmap_debugfs_exit() prior to _init() (Mark Langsdorf) [2067280] - driver core: Make bus notifiers in right order in really_probe() (Mark Langsdorf) [2067280] - driver core: Move driver_sysfs_remove() after driver_sysfs_add() (Mark Langsdorf) [2067280] - driver core: Simplify async probe test code by using ktime_ms_delta() (Mark Langsdorf) [2067280] - PM: runtime: Simplify locking in pm_runtime_put_suppliers() (Mark Langsdorf) [2067280] - software node: fix wrong node passed to find nargs_prop (Mark Langsdorf) [2067280] - driver core: platform: document registration-failure requirement (Mark Langsdorf) [2067280] - device property: Add fwnode_iomap() (Mark Langsdorf) [2067280] - device property: Use fwnode_graph_for_each_endpoint() macro (Mark Langsdorf) [2067280] - device property: Implement fwnode_graph_get_endpoint_count() (Mark Langsdorf) [2067280] - device property: Fix documentation for FWNODE_GRAPH_DEVICE_DISABLED (Mark Langsdorf) [2067280] - rtc: Check return value from mc146818_get_time() (Mark Langsdorf) [2067280] - device property: Check fwnode->secondary when finding properties (Mark Langsdorf) [2067280] - topology/sysfs: rework book and drawer topology ifdefery (Mark Langsdorf) [2067280] - topology/sysfs: export cluster attributes only if an architectures has support (Mark Langsdorf) [2067280] - topology/sysfs: export die attributes only if an architectures has support (Mark Langsdorf) [2067280] - driver core: Don't call device_remove_properties() from device_del() (Mark Langsdorf) [2067280] - regmap: allow to define reg_update_bits for no bus configuration (Mark Langsdorf) [2067280] - platform/x86: amd-pmc: Set QOS during suspend on CZN w/ timer wakeup (Mark Langsdorf) [2067250] - PM: sleep: Fix error handling in dpm_prepare() (Mark Langsdorf) [2067250] - PM: sleep: Avoid calling put_device() under dpm_list_mtx (Mark Langsdorf) [2067250] - PM: sleep: Fix runtime PM based cpuidle support (Mark Langsdorf) [2067250] - PM / wakeirq: support enabling wake-up irq after runtime_suspend called (Mark Langsdorf) [2067250] - device property: Drop redundant NULL checks (Mark Langsdorf) [2067250] - PM: sleep: Pause cpuidle later and resume it earlier during system transitions (Mark Langsdorf) [2067250] - PM: suspend: Do not pause cpuidle in the suspend-to-idle path (Mark Langsdorf) [2067250] - regmap: spi: Set regmap max raw r/w from max_transfer_size (Mark Langsdorf) [2067250] - PM: sleep: Do not let "syscore" devices runtime-suspend during system transitions (Mark Langsdorf) [2067250] - component: do not leave master devres group open after bind (Mark Langsdorf) [2067250] - driver core: Provide device_match_acpi_handle() helper (Mark Langsdorf) [2067250] - regmap: Fix possible double-free in regcache_rbtree_exit() (Mark Langsdorf) [2067250] - device property: build kunit tests without structleak plugin (Mark Langsdorf) [2067250] - driver core: Reject pointless SYNC_STATE_ONLY device links (Mark Langsdorf) [2067250] - firmware_loader: add a sanity check for firmware_request_builtin() (Mark Langsdorf) [2067250] - firmware_loader: split built-in firmware call (Mark Langsdorf) [2067250] - firmware_loader: fix pre-allocated buf built-in firmware use (Mark Langsdorf) [2067250] - drivers/base/component.c: remove superfluous header files from component.c (Mark Langsdorf) [2067250] - drivers/base/arch_topology.c: remove superfluous header (Mark Langsdorf) [2067250] - driver core: use NUMA_NO_NODE during device_initialize (Mark Langsdorf) [2067250] - driver core: Fix possible memory leak in device_link_add() (Mark Langsdorf) [2067250] - driver core: Add debug logs when fwnode links are added/deleted (Mark Langsdorf) [2067250] - driver core: Create __fwnode_link_del() helper function (Mark Langsdorf) [2067250] - driver core: Set deferred probe reason when deferred by driver core (Mark Langsdorf) [2067250] - driver core: fw_devlink: Add support for FWNODE_FLAG_NEEDS_CHILD_BOUND_ON_ADD (Mark Langsdorf) [2067250] - driver core: Clarify that dev_err_probe() is OK even w/out -EPROBE_DEFER (Mark Langsdorf) [2067250] - driver core: fw_devlink: Improve handling of cyclic dependencies (Mark Langsdorf) [2067250] - software node: balance refcount for managed software nodes (Mark Langsdorf) [2067250] - driver core: platform: Make use of the helper macro SET_RUNTIME_PM_OPS() (Mark Langsdorf) [2067250] - PM: base: power: don't try to use non-existing RTC for storing data (Mark Langsdorf) [2067250] - PM: sleep: core: Avoid setting power.must_resume to false (Mark Langsdorf) [2067250] - PM: sleep: wakeirq: drop useless parameter from dev_pm_attach_wake_irq() (Mark Langsdorf) [2067250] - PM: domains: Fix domain attach for CONFIG_PM_OPP=n (Mark Langsdorf) [2067250] - PM: runtime: add devm_pm_clk_create helper (Mark Langsdorf) [2067250] - PM: runtime: add devm_pm_runtime_enable helper (Mark Langsdorf) [2067250] - regmap: teach regmap to use raw spinlocks if requested in the config (Mark Langsdorf) [2067250] - PM: domains: Add support for 'required-opps' to set default perf state (Mark Langsdorf) [2067250] - Revert "media: device property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary" (Mark Langsdorf) [2067250] - driver: base: Prefer unsigned int to bare use of unsigned (Mark Langsdorf) [2067250] - cacheinfo: clear cache_leaves(cpu) in free_cache_attributes() (Mark Langsdorf) [2067250] - driver core: Fix error return code in really_probe() (Mark Langsdorf) [2067250] - driver: base: Replace symbolic permissions with octal permissions (Mark Langsdorf) [2067250] - regmap: Prefer unsigned int to bare use of unsigned (Mark Langsdorf) [2067250] - regmap: fix the offset of register error log (Mark Langsdorf) [2067250] - bpf: Fix request_sock leak in sk lookup helpers (Antoine Tenart) [2085313] - crypto: fips - make proc files report fips module name and version (Vladis Dronov) [2103966] - net: tipc: fix possible refcount leak in tipc_sk_create() (Xin Long) [2106048] - tipc: move bc link creation back to tipc_node_create (Xin Long) [2106048] - tipc: fix use-after-free Read in tipc_named_reinit (Xin Long) [2106048] - tipc: check attribute length for bearer name (Xin Long) [2106048] - ice: Fix memory corruption in VF driver (Petr Oros) [2037937] - ice: Fix queue config fail handling (Petr Oros) [2037937] - ice: Sync VLAN filtering features for DVM (Petr Oros) [2037937] - ice: Fix PTP TX timestamp offset calculation (Petr Oros) [2037937] - ice: Fix interrupt moderation settings getting cleared (Petr Oros) [2037937] - ice: fix possible under reporting of ethtool Tx and Rx statistics (Petr Oros) [2037937] - ice: allow creating VFs for !CONFIG_NET_SWITCHDEV (Petr Oros) [2037937] - ice: add trace events for tx timestamps (Petr Oros) [2037937] - ice: fix return value check in ice_gnss.c (Petr Oros) [2037937] - ice: remove PF pointer from ice_check_vf_init (Petr Oros) [2037937] - ice: introduce ice_virtchnl.c and ice_virtchnl.h (Petr Oros) [2037937] - ice: cleanup long lines in ice_sriov.c (Petr Oros) [2037937] - ice: introduce ICE_VF_RESET_LOCK flag (Petr Oros) [2037937] - ice: introduce ICE_VF_RESET_NOTIFY flag (Petr Oros) [2037937] - ice: convert ice_reset_vf to take flags (Petr Oros) [2037937] - ice: convert ice_reset_vf to standard error codes (Petr Oros) [2037937] - ice: make ice_reset_all_vfs void (Petr Oros) [2037937] - ice: drop is_vflr parameter from ice_reset_all_vfs (Petr Oros) [2037937] - ice: move reset functionality into ice_vf_lib.c (Petr Oros) [2037937] - ice: fix a long line warning in ice_reset_vf (Petr Oros) [2037937] - ice: introduce VF operations structure for reset flows (Petr Oros) [2037937] - ice: fix incorrect dev_dbg print mistaking 'i' for vf->vf_id (Petr Oros) [2037937] - ice: introduce ice_vf_lib.c, ice_vf_lib.h, and ice_vf_lib_private.h (Petr Oros) [2037937] - ice: use ice_is_vf_trusted helper function (Petr Oros) [2037937] - ice: log an error message when eswitch fails to configure (Petr Oros) [2037937] - ice: cleanup error logging for ice_ena_vfs (Petr Oros) [2037937] - ice: move ice_set_vf_port_vlan near other .ndo ops (Petr Oros) [2037937] - ice: refactor spoofchk control code in ice_sriov.c (Petr Oros) [2037937] - ice: rename ICE_MAX_VF_COUNT to avoid confusion (Petr Oros) [2037937] - ice: remove unused definitions from ice_sriov.h (Petr Oros) [2037937] - ice: convert vf->vc_ops to a const pointer (Petr Oros) [2037937] - ice: remove circular header dependencies on ice.h (Petr Oros) [2037937] - ice: rename ice_virtchnl_pf.c to ice_sriov.c (Petr Oros) [2037937] - ice: rename ice_sriov.c to ice_vf_mbx.c (Petr Oros) [2037937] - ice: Fix FV offset searching (Petr Oros) [2037937] - ice: Add support for outer dest MAC for ADQ tunnels (Petr Oros) [2037937] - ice: avoid XDP checks in ice_clean_tx_irq() (Petr Oros) [2037937] - ice: change "can't set link" message to dbg level (Petr Oros) [2037937] - ice: Add slow path offload stats on port representor in switchdev (Petr Oros) [2037937] - ice: Add support for inner etype in switchdev (Petr Oros) [2037937] - ice: convert VF storage to hash table with krefs and RCU (Petr Oros) [2037937] - ice: introduce VF accessor functions (Petr Oros) [2037937] - ice: factor VF variables to separate structure (Petr Oros) [2037937] - ice: convert ice_for_each_vf to include VF entry iterator (Petr Oros) [2037937] - ice: use ice_for_each_vf for iteration during removal (Petr Oros) [2037937] - ice: remove checks in ice_vc_send_msg_to_vf (Petr Oros) [2037937] - ice: move VFLR acknowledge during ice_free_vfs (Petr Oros) [2037937] - ice: move clear_malvf call in ice_free_vfs (Petr Oros) [2037937] - ice: pass num_vfs to ice_set_per_vf_res() (Petr Oros) [2037937] - ice: store VF pointer instead of VF ID (Petr Oros) [2037937] - ice: refactor unwind cleanup in eswitch mode (Petr Oros) [2037937] - ice: add TTY for GNSS module for E810T device (Petr Oros) [2037937] - ice: Simplify tracking status of RDMA support (Petr Oros) [2037937] - ice: Add ability for PF admin to enable VF VLAN pruning (Petr Oros) [2037937] - ice: Add support for 802.1ad port VLANs VF (Petr Oros) [2037937] - ice: Advertise 802.1ad VLAN filtering and offloads for PF netdev (Petr Oros) [2037937] - ice: Support configuring the device to Double VLAN Mode (Petr Oros) [2037937] - ice: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 (Petr Oros) [2037937] - ice: Add hot path support for 802.1Q and 802.1ad VLAN offloads (Petr Oros) [2037937] - ice: Add outer_vlan_ops and VSI specific VLAN ops implementations (Petr Oros) [2037937] - ice: Adjust naming for inner VLAN operations (Petr Oros) [2037937] - ice: Use the proto argument for VLAN ops (Petr Oros) [2037937] - ice: Refactor vf->port_vlan_info to use ice_vlan (Petr Oros) [2037937] - ice: Introduce ice_vlan struct (Petr Oros) [2037937] - ice: Add new VSI VLAN ops (Petr Oros) [2037937] - ice: Add helper function for adding VLAN 0 (Petr Oros) [2037937] - ice: Refactor spoofcheck configuration functions (Petr Oros) [2037937] - Revert "ice: Allow to pass VLAN tagged packets to VF when port VLAN is configured" (Petr Oros) [2037937] - Revert "ice: Do not enable VLAN pruning when spoofchk is enabled" (Petr Oros) [2037937] - ice: Remove likely for napi_complete_done (Petr Oros) [2037937] - ice: add support for DSCP QoS for IDC (Petr Oros) [2037937] - ice: respect metadata on XSK Rx to skb (Petr Oros) [2037937] - ice: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Petr Oros) [2037937] - ice: respect metadata in legacy-rx/ice_construct_skb() (Petr Oros) [2037937] - ice: Fix broken IFF_ALLMULTI handling (Petr Oros) [2037937]- i40e: Fix call trace in setup_tx_descriptors (Ivan Vecera) [2037943] - i40e: Fix calculating the number of queue pairs (Ivan Vecera) [2037943] - i40e: Fix adding ADQ filter to TC0 (Ivan Vecera) [2037943] - i40e: i40e_main: fix a missing check on list iterator (Ivan Vecera) [2037943] - i40e, xsk: Get rid of redundant 'fallthrough' (Ivan Vecera) [2037943] - i40e, xsk: Diversify return values from xsk_wakeup call paths (Ivan Vecera) [2037943] - i40e, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Ivan Vecera) [2037943] - i40e: Add Ethernet Connection X722 for 10GbE SFP+ support (Ivan Vecera) [2037943] - i40e: Add vsi.tx_restart to i40e ethtool stats (Ivan Vecera) [2037943] - i40e: Add tx_stopped stat (Ivan Vecera) [2037943] - i40e: Add support for MPLS + TSO (Ivan Vecera) [2037943] - i40e: little endian only valid checksums (Ivan Vecera) [2037943] - i40e: stop disabling VFs due to PF error responses (Ivan Vecera) [2037943] - i40e: remove dead stores on XSK hotpath (Ivan Vecera) [2037943] - i40e: Add a stat for tracking busy rx pages (Ivan Vecera) [2037943] - i40e: Add a stat for tracking pages waived (Ivan Vecera) [2037943] - i40e: Add a stat tracking new RX page allocations (Ivan Vecera) [2037943] - i40e: Aggregate and export RX page reuse stat (Ivan Vecera) [2037943] - i40e: Remove rx page reuse double count (Ivan Vecera) [2037943] - i40e: Fix race condition while adding/deleting MAC/VLAN filters (Ivan Vecera) [2037943] - i40e: Add new version of i40e_aq_add_macvlan function (Ivan Vecera) [2037943] - i40e: Add new versions of send ASQ command functions (Ivan Vecera) [2037943] - i40e: Add sending commands in atomic context (Ivan Vecera) [2037943] - i40e: Remove unused RX realloc stat (Ivan Vecera) [2037943] - i40e: Disable hw-tc-offload feature on driver load (Ivan Vecera) [2037943] - i40e: Fix reset path while removing the driver (Ivan Vecera) [2037943] - i40e: respect metadata on XSK Rx to skb (Ivan Vecera) [2037943] - i40e: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Ivan Vecera) [2037943] - i40e: Remove useless DMA-32 fallback configuration (Ivan Vecera) [2037943] - i40e: fix unsigned stat widths (Ivan Vecera) [2037943] - i40e: Fix for failed to init adminq while VF reset (Ivan Vecera) [2037943] - i40e: Fix queues reservation for XDP (Ivan Vecera) [2037943] - i40e: Fix issue when maximum queues is exceeded (Ivan Vecera) [2037943] - i40e: Increase delay to 1 s after global EMP reset (Ivan Vecera) [2037943] - i40e: remove variables set but not used (Ivan Vecera) [2037943] - i40e: Remove non-inclusive language (Ivan Vecera) [2037943] - i40e: Update FW API version (Ivan Vecera) [2037943] - i40e: Minimize amount of busy-waiting during AQ send (Ivan Vecera) [2037943] - i40e: Add ensurance of MacVlan resources for every trusted VF (Ivan Vecera) [2037943] - i40e: Fix incorrect netdev's real number of RX/TX queues (Ivan Vecera) [2037943] - i40e: Fix for displaying message regarding NVM version (Ivan Vecera) [2037943] - i40e: fix use-after-free in i40e_sync_filters_subtask() (Ivan Vecera) [2037943] - i40e: Fix to not show opcode msg on unsuccessful VF MAC change (Ivan Vecera) [2037943] - i40e: switch to napi_build_skb() (Ivan Vecera) [2037943] - i40e: Use irq_update_affinity_hint() (Ivan Vecera) [2037943] - mptcp: fix race on unaccepted mptcp sockets (Davide Caratti) [2076971] - mptcp: fix local endpoint accounting (Davide Caratti) [2076971] - mptcp: fix race in overlapping signal events (Davide Caratti) [2076971] - mptcp: fix subflow accounting on close (Davide Caratti) [2076971] - mptcp: introduce implicit endpoints (Davide Caratti) [2076971] - mptcp: constify a bunch of of helpers (Davide Caratti) [2076971] - mptcp: drop port parameter of mptcp_pm_add_addr_signal (Davide Caratti) [2076971] - mptcp: fix removing ids bitmap setting (Davide Caratti) [2076971] - selftests: mptcp: be more conservative with cookie MPJ limits (Davide Caratti) [2076971] - selftests: mptcp: more robust signal race test (Davide Caratti) [2076971] - mptcp: cleanup MPJ subflow list handling (Davide Caratti) [2076971] - mptcp: do not block subflows creation on errors (Davide Caratti) [2076971] - mptcp: keep track of local endpoint still available for each msk (Davide Caratti) [2076971] - mptcp: clean up harmless false expressions (Davide Caratti) [2076971] - mptcp: fix per socket endpoint accounting (Davide Caratti) [2076971] - selftests: mptcp: add fullmesh testcases (Davide Caratti) [2076971] - selftests: mptcp: set and print the fullmesh flag (Davide Caratti) [2076971] - mptcp: local addresses fullmesh (Davide Caratti) [2076971] - mptcp: remote addresses fullmesh (Davide Caratti) [2076971] - mptcp: remove MPTCP_ADD_ADDR_IPV6 and MPTCP_ADD_ADDR_PORT (Davide Caratti) [2076971] - mptcp: build ADD_ADDR/echo-ADD_ADDR option according pm.add_signal (Davide Caratti) [2076971] - mptcp: fix ADD_ADDR and RM_ADDR maybe flush addr_signal each other (Davide Caratti) [2076971] - mptcp: make MPTCP_ADD_ADDR_SIGNAL and MPTCP_ADD_ADDR_ECHO separate (Davide Caratti) [2076971] - mptcp: move drop_other_suboptions check under pm lock (Davide Caratti) [2076971] - mptcp: drop flags and ifindex arguments (Davide Caratti) [2076971] - mptcp: allow to use port and non-signal in set_flags (Davide Caratti) [2076971] - NFSv4.1 support for NFS4_RESULT_PRESERVER_UNLINKED (Scott Mayhew) [2066369] - KVM: selftests: get-reg-list: Add KVM_REG_ARM_FW_REG(3) (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: proton-pack: Include unprivileged eBPF status in Spectre v2 miti (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Use the clearbhb instruction in mitigations (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: add ID_AA64ISAR2_EL1 sys register (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Mitigate spectre style branch history side channels (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - KVM: arm64: Add templates for BHB mitigation sequences (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: proton-pack: Report Spectre-BHB vulnerabilities as part of Spect (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add percpu vectors for EL1 (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add macro for reading symbol addresses from the trampolin (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add vectors that have the bhb mitigation sequences (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add non-kpti __bp_harden_el1_vectors for mitigations (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Allow the trampoline text to occupy multiple pages (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Make the kpti trampoline's kpti sequence optional (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Move trampoline macros out of ifdef'd section (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Don't assume tramp_vectors is the start of the vectors (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Allow tramp_alias to access symbols after the 4K boundary (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Move the trampoline data page before the text page (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Free up another register on kpti's tramp_exit path (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Make the trampoline cleanup optional (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry.S: Add ventry overflow sanity checks (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add Cortex-X2 CPU part definition (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add Neoverse-N2, Cortex-A710 CPU part definition (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: syscall: exit userspace before unmasking exceptions (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: ptrace: Consistently use pseudo-singlestep exceptions (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - ethtool: Fix get module eeprom fallback (Ivan Vecera) [2091772] - xfs: use setattr_copy to set vfs inode attributes (Andrey Albershteyn) [2085622] - xfs: ensure log flush at the end of a synchronous fallocate call (Andrey Albershteyn) [2085622] - xfs: set prealloc flag in xfs_alloc_file_space() (Andrey Albershteyn) [2085622] - xfs: fallocate() should call file_modified() (Andrey Albershteyn) [2085622] - xfs: remove XFS_PREALLOC_SYNC (Andrey Albershteyn) [2085622] - drm/ast: Fix black screen when getting out of suspend (Jocelyn Falempe) [2097492] - drm/ast: Create the driver for ASPEED proprietory Display-Port (Jocelyn Falempe) [2097492] - x86: change default to spec_store_bypass_disable=prctl spectre_v2_user=prctl (Waiman Long) [2101938] - x86/speculation/mmio: Print SMT warning (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - KVM: x86/speculation: Disable Fill buffer clear within guests (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Reuse SRBDS mitigation for SBDS (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/srbds: Update SRBDS mitigation selection (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Enable CPU Fill buffer clearing on idle (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation: Add a common function for MD_CLEAR mitigation update (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - Documentation: Add documentation for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/tsx: Disable TSX development mode at boot (Waiman Long) [2090252] - x86/tsx: Use MSR_TSX_CTRL to clear CPUID bits (Waiman Long) [2090252] - x86/tsx: Clear CPUID bits when TSX always force aborts (Waiman Long) [2090252] - cpu/speculation: Add prototype for cpu_show_srbds() (Waiman Long) [2090252] - x86/cpu: Move arch_smt_update() to a neutral place (Waiman Long) [2090252] - serial: 8250_pci: rewrite pericom_do_set_divisor() (Myron Stowe) [2096364] - serial: 8250_pci: Fix ACCES entries in pci_serial_quirks array (Myron Stowe) [2096364] - serial: 8250_pci: Merge 8250_moxa to 8250_pci (Myron Stowe) [2096364] - serial: 8250: Use dev_get_drvdata where possible (Myron Stowe) [2096364] - serial: 8250: pericom_do_set_divisor can be static (Myron Stowe) [2096364] - serial: 8250: Add support for higher baud rates to Pericom chips (Myron Stowe) [2096364] - serial: 8250_pci: Have ACCES cards that use the four port Pericom PI7C9X7954 chip use the pci_pericom_setup() (Myron Stowe) [2096364] - serial: 8250_pci: Fix number of ports for ACCES serial cards (Myron Stowe) [2096364] - serial: 8250_pci: Replace custom code with pci_match_id() (Myron Stowe) [2096364] - net/sched: act_police: more accurate MTU policing (Davide Caratti) [2100893] - selinux: initialize proto variable in selinux_ip_postroute_compat() (Ondrej Mosnacek) [2005892] - selinux: fix a sock regression in selinux_ip_postroute_compat() (Ondrej Mosnacek) [2005892] - LSM: Avoid warnings about potentially unused hook variables (Ondrej Mosnacek) [2005892] - selinux: fix all of the W=1 build warnings (Ondrej Mosnacek) [2005892] - selinux: make better use of the nf_hook_state passed to the NF hooks (Ondrej Mosnacek) [2005892] - selinux: fix race condition when computing ocontext SIDs (Ondrej Mosnacek) [2005892 1969344] - selinux: remove unneeded ipv6 hook wrappers (Ondrej Mosnacek) [2005892] - lsm_audit: avoid overloading the "key" audit field (Ondrej Mosnacek) [2005892] - security: remove unneeded subdir-$(CONFIG_...) (Ondrej Mosnacek) [2005892] - selinux: return early for possible NULL audit buffers (Ondrej Mosnacek) [2005892] - selinux: correct the return value when loads initial sids (Ondrej Mosnacek) [2005892] - audit: remove unnecessary 'ret' initialization (Ondrej Mosnacek) [2005892] - selinux: kill 'flags' argument in avc_has_perm_flags() and avc_audit() (Ondrej Mosnacek) [2005892] - selinux: slow_avc_audit has become non-blocking (Ondrej Mosnacek) [2005892] - selinux: Fix kernel-doc (Ondrej Mosnacek) [2005892] - selinux: use __GFP_NOWARN with GFP_NOWAIT in the AVC (Ondrej Mosnacek) [2005892] - lsm_audit,selinux: pass IB device name by reference (Ondrej Mosnacek) [2005892] - selinux: Remove redundant assignment to rc (Ondrej Mosnacek) [2005892] - selinux: Corrected comment to match kernel-doc comment (Ondrej Mosnacek) [2005892] - selinux: delete selinux_xfrm_policy_lookup() useless argument (Ondrej Mosnacek) [2005892] - selinux: constify some avtab function arguments (Ondrej Mosnacek) [2005892] - selinux: simplify duplicate_policydb_cond_list() by using kmemdup() (Ondrej Mosnacek) [2005892] - selinux: add proper NULL termination to the secclass_map permissions (Ondrej Mosnacek) [2005892] - security: commoncap: clean up kernel-doc comments (Ondrej Mosnacek) [2005892] - security: commoncap: fix -Wstringop-overread warning (Ondrej Mosnacek) [2005892] - selinux: fix misspellings using codespell tool (Ondrej Mosnacek) [2005892] - selinux: fix misspellings using codespell tool (Ondrej Mosnacek) [2005892] - ext4: mballoc: Use this_cpu_read instead of this_cpu_ptr (Lukas Czerner) [2102619] - ext4: add reserved GDT blocks check (Lukas Czerner) [2099702] - ext4: make variable "count" signed (Lukas Czerner) [2099702] - ext4: fix bug_on ext4_mb_use_inode_pa (Lukas Czerner) [2099702] - ext4: fix super block checksum incorrect after mount (Lukas Czerner) [2099702] - ext4: fix bug_on in __es_tree_search (Lukas Czerner) [2099702] - ext4: avoid cycles in directory h-tree (Lukas Czerner) [2099702] - ext4: verify dir block before splitting it (Lukas Czerner) [2099702] - ext4: fix bug_on in ext4_writepages (Lukas Czerner) [2099702] - ext4: reject the 'commit' option on ext2 filesystems (Lukas Czerner) [2099702] - ext4: fix use-after-free in ext4_rename_dir_prepare (Lukas Czerner) [2099702] - ext4: fix warning in ext4_handle_inode_extension (Lukas Czerner) [2099702]- i915: Explicitly #include (Michel Dänzer) [2041811] - i915: Use mdev_type_kobj_to_group_id instead of mtype_get_type_group_id (Michel Dänzer) [2041811] - drm/i915: #include for k(un)map APIs (Michel Dänzer) [2041811] - Revert "mm: remove the extra ZONE_DEVICE struct page refcount" (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.17..v5.18 (Michel Dänzer) [2041811] - iosys-map: Add a few more helpers (Michel Dänzer) [2041811] - iosys-map: Add offset to iosys_map_memcpy_to() (Michel Dänzer) [2041811] - dma-buf-map: Rename to iosys-map (Michel Dänzer) [2041811] - Revert "drm/amdgpu/display: set vblank_disable_immediate for DC" (Michel Dänzer) [2041811] - Revert "drm: import DMA_BUF module namespace" (Michel Dänzer) [2041811] - drm/virtio: Do not use virtio_reset_device (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.16..v5.17 (Michel Dänzer) [2041811] - agp/intel-gtt: reduce intel-gtt dependencies more (Michel Dänzer) [2041811] - agp/intel-gtt: Replace kernel.h with the necessary inclusions (Michel Dänzer) [2041811] - x86/gpu: Reserve stolen memory for first integrated Intel GPU (Michel Dänzer) [2041811] - drm/i915/rpl-s: Add PCI IDS for Raptor Lake S (Michel Dänzer) [2041811] - drm/amdgpu: Use MCE_PRIO_FIRST instead of MCE_PRIO_UC (Michel Dänzer) [2041811] - Revert "drm/amdgpu: disable runpm if we are the primary adapter" (Michel Dänzer) [2041811] - Revert "treewide: Replace the use of mem_encrypt_active() with cc_platform_has()" (Michel Dänzer) [2041811] - Revert "dma-buf: move dma-buf symbols into the DMA_BUF module namespace" (Michel Dänzer) [2041811] - Revert "fix for "dma-buf: move dma-buf symbols into the DMA_BUF module namespace"" (Michel Dänzer) [2041811] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.15..v5.16 (Michel Dänzer) [2041811] - drm/bochs: Explicitly #include (Michel Dänzer) [2041811] - Revert "gpu: Bulk conversion to generic_handle_domain_irq()" (Michel Dänzer) [2041811] - Revert "vfio/gvt: Fix open/close when multiple device FDs are open" (Michel Dänzer) [2041811] - drm: Drop linux/ prefix from stdarg.h include (Michel Dänzer) [2041811] - drm/i915: Convert to older tasklet API (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.14.21..v5.15 (Michel Dänzer) [2041811] - dma-buf: Fix kerneldoc comment for struct dma_fence_array (Michel Dänzer) [2041811] - Makefile: Add RHEL_DRM_EXTRAVERSION (Michel Dänzer) [2041811] - mei: me: add Alder Lake N device id. (Prarit Bhargava) [2072660] - pinctrl: alderlake: Fix register offsets for ADL-N variant (Prarit Bhargava) [2049965] - pinctrl: alderlake: Add Intel Alder Lake-N pin controller support (Prarit Bhargava) [2049965] - pinctrl: tigerlake: Revert "Add Alder Lake-M ACPI ID" (Prarit Bhargava) [2049965] - spi: pxa2xx: Add support for Intel Alder Lake PCH-M (Prarit Bhargava) [2089507] - RHEL-only: KVM: selftests: Compile rseq_test out on aarch64 (Eric Auger) [2078919] - KVM: arm64: Don't read a HW interrupt pending state in user context (Eric Auger) [2078919] - KVM: arm64: selftests: Add init ITS device test (Eric Auger) [2078919] - KVM: arm64: selftests: Add test for legacy GICv3 REDIST base partially above IPA range (Eric Auger) [2078919] - KVM: arm64: selftests: Add tests for GIC redist/cpuif partially above IPA range (Eric Auger) [2078919] - KVM: arm64: selftests: Add some tests for GICv2 in vgic_init (Eric Auger) [2078919] - KVM: arm64: selftests: Make vgic_init/vm_gic_create version agnostic (Eric Auger) [2078919] - KVM: arm64: selftests: Make vgic_init gic version agnostic (Eric Auger) [2078919] - KVM: arm64: vgic: Drop vgic_check_ioaddr() (Eric Auger) [2078919] - KVM: arm64: vgic-v3: Check ITS region is not above the VM IPA size (Eric Auger) [2078919] - KVM: arm64: vgic-v2: Check cpu interface region is not above the VM IPA size (Eric Auger) [2078919] - KVM: arm64: vgic-v3: Check redist region is not above the VM IPA size (Eric Auger) [2078919] - kvm: arm64: vgic: Introduce vgic_check_iorange (Eric Auger) [2078919] - Revert "RHEL-only: KVM: selftests: Fix AArch64 compilation" (Eric Auger) [2078919] - selftests: KVM: Free the GIC FD when cleaning up in arch_timer (Eric Auger) [2078919] - selftests: KVM: Don't leak GIC FD across dirty log test iterations (Eric Auger) [2078919] - KVM: arm64: selftests: Introduce vcpu_width_config (Eric Auger) [2078919] - KVM: arm64: mixed-width check should be skipped for uninitialized vCPUs (Eric Auger) [2078919] - KVM: arm64: Generalise VM features into a set of flags (Eric Auger) [2078919] - KVM: selftests: aarch64: Skip tests if we can't create a vgic-v3 (Eric Auger) [2078919] - kvm: selftests: aarch64: use a tighter assert in vgic_poke_irq() (Eric Auger) [2078919] - kvm: selftests: aarch64: fix some vgic related comments (Eric Auger) [2078919] - kvm: selftests: aarch64: fix the failure check in kvm_set_gsi_routing_irqchip_check (Eric Auger) [2078919] - kvm: selftests: aarch64: pass vgic_irq guest args as a pointer (Eric Auger) [2078919] - kvm: selftests: aarch64: fix assert in gicv3_access_reg (Eric Auger) [2078919] - KVM: selftests: Add vgic initialization for dirty log perf test for ARM (Eric Auger) [2078919] - KVM: arm64: vgic: Read HW interrupt pending state from the HW (Eric Auger) [2078919] - KVM: arm64: Emulate the OS Lock (Eric Auger) [2078919] - KVM: arm64: Allow guest to set the OSLK bit (Eric Auger) [2078919] - KVM: arm64: Stash OSLSR_EL1 in the cpu context (Eric Auger) [2078919] - KVM: arm64: Correctly treat writes to OSLSR_EL1 as undefined (Eric Auger) [2078919] - KVM: arm64: vgic: Replace kernel.h with the necessary inclusions (Eric Auger) [2078919] - KVM: arm64: Fix comment typo in kvm_vcpu_finalize_sve() (Eric Auger) [2078919] - KVM: arm64: selftests: get-reg-list: Add pauth configuration (Eric Auger) [2078919] - KVM: selftests: aarch64: Add test for restoring active IRQs (Eric Auger) [2078919] - KVM: selftests: aarch64: Add ISPENDR write tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add tests for IRQFD in vgic_irq (Eric Auger) [2078919] - KVM: selftests: Add IRQ GSI routing library functions (Eric Auger) [2078919] - KVM: selftests: aarch64: Add test_inject_fail to vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add tests for LEVEL_INFO in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Level-sensitive interrupts tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add preemption tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Cmdline arg to set EOI mode in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Cmdline arg to set number of IRQs in vgic_irq test (Eric Auger) [2078919] - KVM: selftests: aarch64: Abstract the injection functions in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add vgic_irq to test userspace IRQ injection (Eric Auger) [2078919] - KVM: selftests: aarch64: Add vGIC library functions to deal with vIRQ state (Eric Auger) [2078919] - KVM: selftests: Add kvm_irq_line library function (Eric Auger) [2078919] - KVM: selftests: aarch64: Add GICv3 register accessor library functions (Eric Auger) [2078919] - KVM: selftests: aarch64: Add function for accessing GICv3 dist and redist registers (Eric Auger) [2078919] - KVM: selftests: aarch64: Move gic_v3.h to shared headers (Eric Auger) [2078919] - KVM: selftests: arm64: Add support for various modes with 16kB page size (Eric Auger) [2078919] - KVM: selftests: arm64: Add support for VM_MODE_P36V48_{4K,64K} (Eric Auger) [2078919] - KVM: arm64: Fix comment on barrier in kvm_psci_vcpu_on() (Eric Auger) [2078919] - KVM: arm64: Fix comment for kvm_reset_vcpu() (Eric Auger) [2078919] - KVM: arm64: Use defined value for SCTLR_ELx_EE (Eric Auger) [2078919] - KVM: arm64: vgic: Demote userspace-triggered console prints to kvm_debug() (Eric Auger) [2078919] - KVM: arm64: Consolidate dist->ready setting into kvm_vgic_map_resources() (Eric Auger) [2078919] - arm64/kvm: Fix bitrotted comment for SVE handling in handle_exit.c (Eric Auger) [2078919] - KVM: arm64: Drop vcpu->arch.has_run_once for vcpu->pid (Eric Auger) [2078919] - KVM: arm64: Merge kvm_arch_vcpu_run_pid_change() and kvm_vcpu_first_run_init() (Eric Auger) [2078919] - KVM: arm64: Restructure the point where has_run_once is advertised (Eric Auger) [2078919] - KVM: arm64: Move kvm_arch_vcpu_run_pid_change() out of line (Eric Auger) [2078919] - KVM: arm64: Move SVE state mapping at HYP to finalize-time (Eric Auger) [2078919] - KVM: arm64: Move double-checked lock to kvm_vgic_map_resources() (Eric Auger) [2078919] - KVM: arm64: Constify kvm_io_gic_ops (Eric Auger) [2078919] - KVM: arm64: Avoid setting the upper 32 bits of TCR_EL2 and CPTR_EL2 to 1 (Eric Auger) [2078919] - selftests: KVM: Fix kvm device helper ioctl assertions (Eric Auger) [2078919] - ACPI: tables: Quiet ACPI table not found warning (Mark Langsdorf) [2067290] - ACPI/IORT: Check node revision for PMCG resources (Mark Langsdorf) [2067290] - PM: s2idle: ACPI: Fix wakeup interrupts handling (Mark Langsdorf) [2067290] - ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE (Mark Langsdorf) [2067290] - ACPI: PM: Revert "Only mark EC GPE for wakeup on Intel systems" (Mark Langsdorf) [2067290] - ACPI: require CRC32 to build (Mark Langsdorf) [2067290] - ACPI: DPTF: Support Raptor Lake (Mark Langsdorf) [2067290] - ACPI: scan: Rename label in acpi_scan_init() (Mark Langsdorf) [2067290] - ACPI: scan: Simplify initialization of power and sleep buttons (Mark Langsdorf) [2067290] - ACPI: scan: Change acpi_scan_init() return value type to void (Mark Langsdorf) [2067290] - ACPI: SPCR: check if table->serial_port.access_width is too wide (Mark Langsdorf) [2067290] - ACPI: APD: Check for NULL pointer after calling devm_ioremap() (Mark Langsdorf) [2067290] - ACPI: pfr_telemetry: Fix info leak in pfrt_log_ioctl() (Mark Langsdorf) [2067290] - ACPI: APD: Add a fmw property clk-name (Mark Langsdorf) [2067290] - ACPI: pfr_update: Fix return value check in pfru_write() (Mark Langsdorf) [2067290] - ACPI: processor: thermal: avoid cpufreq_get_policy() (Mark Langsdorf) [2067290] - ACPI / x86: Add acpi_quirk_skip_[i2c_client|serdev]_enumeration() helpers (Mark Langsdorf) [2067290] - ACPI: battery: Add the ThinkPad "Not Charging" quirk (Mark Langsdorf) [2067290] - acpi: Store CRC-32 hash of the _PLD in struct acpi_device (Mark Langsdorf) [2067290] - acpi: Export acpi_bus_type (Mark Langsdorf) [2067290] - ACPI: sysfs: use default_groups in kobj_type (Mark Langsdorf) [2067290] - ACPI: Introduce Platform Firmware Runtime Telemetry driver (Mark Langsdorf) [2067290] - ACPI: Introduce Platform Firmware Runtime Update device driver (Mark Langsdorf) [2067290] - efi: Introduce EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER and corresponding structures (Mark Langsdorf) [2067290] - ACPICA: Update version to 20211217 (Mark Langsdorf) [2067290] - ACPICA: iASL/NHLT table: "Specific Data" field support (Mark Langsdorf) [2067290] - ACPICA: iASL: Add suppport for AGDI table (Mark Langsdorf) [2067290] - ACPICA: iASL: Add TDEL table to both compiler/disassembler (Mark Langsdorf) [2067290] - ACPICA: Fixed a couple of warnings under MSVC (Mark Langsdorf) [2067290] - ACPICA: Change a return_ACPI_STATUS (AE_BAD_PARAMETER) (Mark Langsdorf) [2067290] - ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 (Mark Langsdorf) [2067290] - ACPICA: Add support for PCC Opregion special context data (Mark Langsdorf) [2067290] - ACPICA: Fix wrong interpretation of PCC address (Mark Langsdorf) [2067290] - ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() (Mark Langsdorf) [2067290] - ACPICA: Utilities: Avoid deleting the same object twice in a row (Mark Langsdorf) [2067290] - ACPICA: Fix AEST Processor generic resource substructure data field byte length (Mark Langsdorf) [2067290] - ACPICA: iASL/Disassembler: Additional support for NHLT table (Mark Langsdorf) [2067290] - ACPICA: Avoid subobject buffer overflow when validating RSDP signature (Mark Langsdorf) [2067290] - ACPICA: Macros: Remove ACPI_PHYSADDR_TO_PTR (Mark Langsdorf) [2067290] - ACPICA: Use original pointer for virtual origin tables (Mark Langsdorf) [2067290] - ACPICA: Use original data_table_region pointer for accesses (Mark Langsdorf) [2067290] - ACPICA: actypes.h: Expand the ACPI_ACCESS_ definitions (Mark Langsdorf) [2067290] - ACPI: CPPC: Amend documentation in the comments (Mark Langsdorf) [2067290] - ACPI: NFIT: Import GUID before use (Mark Langsdorf) [2067290] - ACPI: PM: Remove redundant cache flushing (Mark Langsdorf) [2067290] - ACPI: Use acpi_fetch_acpi_dev() instead of acpi_bus_get_device() (Mark Langsdorf) [2067290] - ACPI: tables: Add AEST to the list of known table signatures (Mark Langsdorf) [2067290] - ACPI: PM: Avoid CPU cache flush when entering S4 (Mark Langsdorf) [2067290] - PM: hibernate: Allow ACPI hardware signature to be honoured (Mark Langsdorf) [2067290] - ACPI: PMIC: xpower: Fix _TMP ACPI errors (Mark Langsdorf) [2067290] - ACPI: PMIC: allow drivers to provide a custom lpat_raw_to_temp() function (Mark Langsdorf) [2067290] - ACPI: PMIC: constify all struct intel_pmic_opregion_data declarations (Mark Langsdorf) [2067290] - ACPI: EC: Mark the ec_sys write_support param as module_param_hw() (Mark Langsdorf) [2067290] - ACPI: EC: Relocate acpi_ec_create_query() and drop acpi_ec_delete_query() (Mark Langsdorf) [2067290] - ACPI: EC: Make the event work state machine visible (Mark Langsdorf) [2067290] - ACPI: EC: Avoid queuing unnecessary work in acpi_ec_submit_event() (Mark Langsdorf) [2067290] - ACPI: EC: Rename three functions (Mark Langsdorf) [2067290] - ACPI: EC: Simplify locking in acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Rearrange the loop in acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Fold acpi_ec_check_event() into acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Pass one argument to acpi_ec_query() (Mark Langsdorf) [2067290] - ACPI: EC: Call advance_transaction() from acpi_ec_dispatch_gpe() (Mark Langsdorf) [2067290] - ACPI: EC: Rework flushing of EC work while suspended to idle (Mark Langsdorf) [2067290] - ACPI / x86: Add PWM2 on the Xiaomi Mi Pad 2 to the always_present list (Mark Langsdorf) [2067290] - ACPI / x86: Add not-present quirk for the PCI0.SDHB.BRC1 device on the GPD win (Mark Langsdorf) [2067290] - ACPI / x86: Allow specifying acpi_device_override_status() quirks by path (Mark Langsdorf) [2067290] - ACPI: Change acpi_device_always_present() into acpi_device_override_status() (Mark Langsdorf) [2067290] - ACPI / x86: Drop PWM2 device on Lenovo Yoga Book from always present table (Mark Langsdorf) [2067290] - ACPI: processor idle: Use swap() instead of open coding it (Mark Langsdorf) [2067290] - ACPI: processor: Replace kernel.h with the necessary inclusions (Mark Langsdorf) [2067290] - ACPI: DPTF: Update device ID in a comment (Mark Langsdorf) [2067290] - ACPI: PM: Emit debug messages when enabling/disabling wakeup power (Mark Langsdorf) [2067290] - ACPI: thermal: drop an always true check (Mark Langsdorf) [2067290] - ACPI: Add a context argument for table parsing handlers (Mark Langsdorf) [2067290] - ACPI: Teach ACPI table parsing about the CEDT header format (Mark Langsdorf) [2067290] - ACPI: Keep sub-table parsing infrastructure available for modules (Mark Langsdorf) [2067290] - cxgb4: fix wrong shift. (Raju Rangoju) [1977437] - cxgb4: fix wrong ethtool n-tuple rule lookup (Raju Rangoju) [1977437] - cxgb4: halt chip before flashing PHY firmware image (Raju Rangoju) [1977437] - cxgb4: fix sleep in atomic when flashing PHY firmware (Raju Rangoju) [1977437] - cxgb4: fix endianness when flashing boot image (Raju Rangoju) [1977437] - cxgb4: avoid link re-train during TC-MQPRIO configuration (Raju Rangoju) [1977437] - cxgb4: fix regression with HASH tc prio value update (Raju Rangoju) [1977437] - cxgb4: avoid accessing registers when clearing filters (Raju Rangoju) [1977437] - net:CXGB4: fix leak if sk_buff is not used (Raju Rangoju) [1977437] - cxgb4: Fix unintentional sign extension issues (Raju Rangoju) [1977437] - cxgb4: remove unneeded if-null-free check (Raju Rangoju) [1977437] - PCI: vmd: Assign VMD IRQ domain before enumeration (Myron Stowe) [2050850] - PCI: vmd: Prevent recursive locking on interrupt allocation (Myron Stowe) [2050850] - PCI: vmd: Add DID 8086:A77F for all Intel Raptor Lake SKU's (Myron Stowe) [2050850] - PCI: vmd: Honor ACPI _OSC on PCIe features (Myron Stowe) [2050850] - PCI: vmd: Clean up domain before enumeration (Myron Stowe) [2050850] - PCI: vmd: Use PCI_POSSIBLE_ERROR() to check config reads (Myron Stowe) [2050850] - PCI: Add PCI_ERROR_RESPONSE and related definitions (Myron Stowe) [2050850] - PCI: vmd: Drop redundant includes of , (Myron Stowe) [2050850] - PCI: vmd: Assign a number to each VMD controller (Myron Stowe) [2050850] - PCI: vmd: Disable MSI-X remapping when possible (Myron Stowe) [2050850] - PCI: vmd: Offset Client VMD MSI-X vectors (Myron Stowe) [2050850] - PCI: vmd: Use msi_msg shadow structs (Myron Stowe) [2050850] - Merge tag 'pci-v5.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/g (Myron Stowe) [2050850] - PCI: vmd: Update VMD PM to correctly use generic PCI PM (Myron Stowe) [2050850] - PCI: vmd: Create IRQ allocation helper (Myron Stowe) [2050850] - PCI: vmd: Create IRQ Domain configuration helper (Myron Stowe) [2050850] - PCI: vmd: Create bus offset configuration helper (Myron Stowe) [2050850] - PCI: vmd: Create physical offset helper (Myron Stowe) [2050850] - PCI_vmd_Mark_VMD_irqdomain_with_DOMAIN_BUS_VMD_MSI (Myron Stowe) [2050850] - irqdomain/msi: Provide DOMAIN_BUS_VMD_MSI (Myron Stowe) [2050850] - PCI: vmd: Dont abuse vector irqomain as parent (Myron Stowe) [2050850] - PCI: designware-ep: Fix the Header Type check (Myron Stowe) [2050850] - PCI: vmd: Use Shadow MEMBAR registers for QEMU/KVM guests (Myron Stowe) [2050850] - PCI: vmd: Filter resource type bits from shadow register (Myron Stowe) [2050850] - PCI: Fix indentation (Myron Stowe) [2050850] - scsi: iscsi: Fix session removal on shutdown (Chris Leech) [2101760] - scsi: qedi: Use QEDI_MODE_NORMAL for error handling (Chris Leech) [2101760] - scsi: iscsi: Add helper to remove a session from the kernel (Chris Leech) [2101760] - scsi: iscsi: Clean up bound endpoints during shutdown (Chris Leech) [2101760] - scsi: iscsi: Allow iscsi_if_stop_conn() to be called from kernel (Chris Leech) [2101760] - scsi: iscsi: Fix HW conn removal use after free (Chris Leech) [2101760] - scsi: iscsi: Make iscsi_unregister_transport() return void (Chris Leech) [2101760] - scsi: core: iscsi: Directly use ida_alloc()/ida_free() (Chris Leech) [2101760] - scsi: iscsi: Exclude zero from the endpoint ID range (Chris Leech) [2101760] - scsi: iscsi: Fix harmless double shift bug (Chris Leech) [2101760] - scsi: libiscsi: Remove unnecessary memset() in iscsi_conn_setup() (Chris Leech) [2101760] - scsi: libiscsi: Teardown iscsi_cls_conn gracefully (Chris Leech) [2101760] - scsi: libiscsi: Add iscsi_cls_conn to sysfs after initialization (Chris Leech) [2101760] - scsi: iscsi: Add helper functions to manage iscsi_cls_conn (Chris Leech) [2101760] - scsi: iscsi: Drop temp workq_name (Chris Leech) [2101760] - scsi: iscsi: Use the session workqueue for recovery (Chris Leech) [2101760] - scsi: iscsi: ql4xxx: Use per-session workqueue for unbinding (Chris Leech) [2101760] - scsi: iscsi: Remove iscsi_scan_finished() (Chris Leech) [2101760] - scsi: libiscsi: Fix UAF in iscsi_conn_get_param()/iscsi_conn_teardown() (Chris Leech) [2101760] - scsi: libiscsi: Move ehwait initialization to iscsi_session_setup() (Chris Leech) [2101760] - x86/sme: Explicitly map new EFI memmap table as encrypted (Chris von Recklinghausen) [2091831] - x86/sme: Use #define USE_EARLY_PGTABLE_L5 in mem_encrypt_identity.c (Chris von Recklinghausen) [2091831] - efi/x86: Fix boot regression on systems with invalid memmap entries (Chris von Recklinghausen) [2091831] - efi: Add tracking for dynamically allocated memmaps (Chris von Recklinghausen) [2091831] - efi: Add a flags parameter to efi_memory_map (Chris von Recklinghausen) [2091831] - x86/kexec: fix memory leak of elf header buffer (Tao Liu) [2014945] - net: sched: add barrier to fix packet stuck problem for lockless qdisc (Davide Caratti) [2103025] - powercap: intel_rapl: add support for ALDERLAKE_N (David Arcari) [2096964] - clk: fix invalid usage of list cursor in unregister (David Arcari) [2105258] - clk: fix invalid usage of list cursor in register (David Arcari) [2105258] - powercap: intel_rapl: add support for RaptorLake (David Arcari) [2076724] - lib/math: move int_pow() from pwm_bl.c for wider use (Ivan Vecera) [2101700] - x86/fpu: KVM: Set the base guest FPU uABI size to sizeof(struct kvm_xsave) (Paul Lai) [2092066]- net/sched: cls_u32: fix possible leak in u32_init_knode() (Davide Caratti) [2081283] - net/sched: cls_u32: fix netns refcount changes in u32_change() (Davide Caratti) [2081283] - net/sched: flower: fix parsing of ethertype following VLAN header (Davide Caratti) [2081283] - net: sched: limit TC_ACT_REPEAT loops (Davide Caratti) [2081283] - net_sched: add __rcu annotation to netdev->qdisc (Davide Caratti) [2081283] - sch_htb: Fail on unsupported parameters when offload is requested (Davide Caratti) [2081283] - net_sched: restore "mpu xxx" handling (Davide Caratti) [2081283] - net: sched: sch_netem: Refactor code in 4-state loss generator (Davide Caratti) [2081283] - net/mlx5e: TC, Fix ct_clear overwriting ct action metadata (Amir Tzin) [2100474] - bpftool: man: Add missing top level docs (Yauheni Kaliuta) [2097615] - net/mlx5: CT: Fix header-rewrite re-use for tupels (Amir Tzin) [2101162] - cpuidle: haltpoll: Call cpuidle_poll_state_init() later (Mark Langsdorf) [2067313] - cpuidle: use default_groups in kobj_type (Mark Langsdorf) [2067313] - cpuidle: Fix cpuidle_remove_state_sysfs() kerneldoc comment (Mark Langsdorf) [2067313] - cpuidle: menu: Fix typo in a comment (Mark Langsdorf) [2067313] - cpuidle: Fix kobject memory leaks in error paths (Mark Langsdorf) [2067313] - cpuidle: menu: Take negative "sleep length" values into account (Mark Langsdorf) [2067313] - HID: elo: Revert USB reference counting (Benjamin Tissoires) [2073833] - HID: elo: fix memory leak in elo_probe (Benjamin Tissoires) [2073833] - fs: dlm: filter user dlm messages for kernel locks (Alexander Aring) [2026116] - psample: Add a fwd declaration for skbuff (Ivan Vecera) [2101706] - platform/x86/intel/sdsi: Fix bug in multi packet reads (Prarit Bhargava) [2100948] - platform/x86/intel/sdsi: Poll on ready bit for writes (Prarit Bhargava) [2100948] - platform/x86/intel/sdsi: Handle leaky bucket (Prarit Bhargava) [2100948] - indirect_call_wrapper: extend indirect wrapper to support up to 4 calls (Petr Oros) [2101705] - block: Fix handling of offline queues in blk_mq_alloc_request_hctx() (Ming Lei) [2081913] - netfilter: br_netfilter: do not skip all hooks with 0 priority (Florian Westphal) [2099732] - net: openvswitch: fix parsing of nw_proto for IPv6 fragments (Eelco Chaudron) [2101537] - s390/smp,vdso: fix ASCE handling (Tobias Huschle) [2103887] - [s390] s390/pci: fix zpci_zdev_put() on reserve (Claudio Imbrenda) [2102305] - intel/igbvf:fix repeated words in comments (Corinna Vinschen) [2037962] - igbvf: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037962] - SUNRPC: avoid race between mod_timer() and del_timer_sync() (Benjamin Coddington) [2104507] - iavf: Fix issue with MAC address of VF shown as zero (Petr Oros) [2037938] - iavf: switch to napi_build_skb() (Petr Oros) [2037938] - iavf: Remove non-inclusive language (Petr Oros) [2037938] - iavf: Fix incorrect use of assigning iavf_status to int (Petr Oros) [2037938] - iavf: stop leaking iavf_status as "errno" values (Petr Oros) [2037938] - iavf: Add usage of new virtchnl format to set default MAC (Petr Oros) [2037938] - iavf: refactor processing of VLAN V2 capability message (Petr Oros) [2037938] - iavf: Add support for 50G/100G in AIM algorithm (Petr Oros) [2037938] - iavf: remove redundant ret variable (Petr Oros) [2037938] - iavf: Remove useless DMA-32 fallback configuration (Petr Oros) [2037938] - cifs: fix potential double free during failed mount (Ronnie Sahlberg) [2088799] - cifs: escape spaces in share names (Dave Wysochanski) [2100367] - Documentation: add documentation for force_cgroup_v2_swappiness control (Nico Pache) [2084242] - Introduce force_cgroup_v2_swappiness tuneable to deprecate cgv1 per-cgroup swappiness (Nico Pache) [2084242] - redhat: trim rpminspect config file (Jarod Wilson)- powerpc/smp: Set numa node before updating mask (Diego Domingos) [2103833] - iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping() (Mohammed Gamal) [2088366] - irqdomain/treewide: Free firmware node after domain removal (Mohammed Gamal) [2088366] - x86/kvmclock: Fix Hyper-V Isolated VM's boot issue when vCPUs > 64 (Mohammed Gamal) [2088366] - x86/kvm: Don't waste memory if kvmclock is disabled (Mohammed Gamal) [2088366] - x86/pci: Create PCI/MSI irqdomain after x86_init.pci.arch_init() (Mohammed Gamal) [2088366] - x86/pci: Reducde #ifdeffery in PCI init code (Mohammed Gamal) [2088366] - hv_utils: Add comment about max VMbus packet size in VSS driver (Mohammed Gamal) [2088366] - x86/coco: Explicitly declare type of confidential computing platform (Mohammed Gamal) [2088366] - x86/hyper-v: Add hyperv Isolation VM check in the cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Use CC_ATTR attribute to generalize string I/O unroll (Mohammed Gamal) [2088366] - random: remove unused irq_flags argument from add_interrupt_randomness() (Mohammed Gamal) [2088366] - x86/hyperv: Fix definition of hv_ghcb_pg variable (Mohammed Gamal) [2088366] - swiotlb: Add CONFIG_HAS_IOMEM check around swiotlb_mem_remap() (Mohammed Gamal) [2088366] - hyper-v: Enable swiotlb bounce buffer for Isolation VM (Mohammed Gamal) [2088366] - swiotlb: Add swiotlb bounce buffer remap function for HV IVM (Mohammed Gamal) [2088366] - x86/hyperv: Refactor hv_msi_domain_free_irqs() (Mohammed Gamal) [2088366] - x86/hyperv: Move required MSRs check to initial platform probing (Mohammed Gamal) [2088366] - x86/hyperv: Fix NULL deref in set_hv_tscchange_cb() if Hyper-V setup fails (Mohammed Gamal) [2088366] - x86/hyperv: Protect set_hv_tscchange_cb() against getting preempted (Mohammed Gamal) [2088366] - x86/hyperv: Remove duplicate include (Mohammed Gamal) [2088366] - x86/hyperv: Remove duplicated include in hv_init (Mohammed Gamal) [2088366] - x86/hyperv: Add ghcb hvcall support for SNP VM (Mohammed Gamal) [2088366] - x86/hyperv: Add Write/Read MSR registers via ghcb page (Mohammed Gamal) [2088366] - x86/hyperv: Add new hvcall guest address host visibility support (Mohammed Gamal) [2088366] - x86/hyperv: Initialize shared memory boundary in the Isolation VM. (Mohammed Gamal) [2088366] - x86/hyperv: Initialize GHCB page in Isolation VM (Mohammed Gamal) [2088366] - x86/sev: Replace occurrences of sev_es_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Replace occurrences of sev_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev-es: Do not unroll string I/O for SEV-ES guests (Mohammed Gamal) [2088366] - efi/x86: Avoid RWX mappings for all of DRAM (Mohammed Gamal) [2088366] - x86/sme: Replace occurrences of sme_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Add an x86 version of cc_platform_has() (Mohammed Gamal) [2088366] - vmalloc: fix the owner argument for the new __vmalloc_node_range callers (Mohammed Gamal) [2088366] - mm: remove vmalloc_exec (Mohammed Gamal) [2088366] - arm64: use PAGE_KERNEL_ROX directly in alloc_insn_page (Mohammed Gamal) [2088366] - arm64/kprobes: set VM_FLUSH_RESET_PERMS on kprobe instruction pages (Mohammed Gamal) [2088366] - x86/hyperv: allocate the hypercall page with only read and execute bits (Mohammed Gamal) [2088366] - x86/hyperv: use vmalloc_exec for the hypercall page (Mohammed Gamal) [2088366] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [2088366] - x86/irq: Initialize PCI/MSI domain at PCI init time (Mohammed Gamal) [2088366] - x86/hyperv: implement an MSI domain for root partition (Mohammed Gamal) [2088366] - irqdomain/treewide: Keep firmware node unconditionally allocated (Mohammed Gamal) [2088366] - irqdomain/msi: Allow to override msi_domain_alloc/free_irqs() (Mohammed Gamal) [2088366] - x86/sev: Expose sev_es_ghcb_hv_call() for use by HyperV (Mohammed Gamal) [2088366] - x86/sev: Carve out HV call's return value verification (Mohammed Gamal) [2088366] - x86/sev: Fix noinstr for vc_ghcb_invalidate() (Mohammed Gamal) [2088366] - arch/cc: Introduce a function to check for confidential computing features (Mohammed Gamal) [2088366] - Revert "drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status" (Mohammed Gamal) [2088366] - Revert "drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status" (Mohammed Gamal) [2088366] - libperf tests: Fix typo in perf_evlist__open() failure error messages (Michael Petlan) [1878555] - libperf: Fix 32-bit build for tests uint64_t printf (Michael Petlan) [1878555] - libperf: Add arm64 support to perf_mmap__read_self() (Michael Petlan) [1878555] - libperf tests: Add test_stat_multiplexing test (Michael Petlan) [1878555] - libperf: Remove scaling process from perf_mmap__read_self() (Michael Petlan) [1878555] - libperf: Adopt perf_counts_values__scale() from tools/perf/util (Michael Petlan) [1878555] - arm64: perf: Don't register user access sysctl handler multiple times (Michael Petlan) [1878555] - Documentation: arm64: Document PMU counters access from userspace (Michael Petlan) [1878555] - arm64: perf: Enable PMU counter userspace access for perf event (Michael Petlan) [1878555] - arm64: perf: Add support for ARMv8.5-PMU 64-bit counters (Michael Petlan) [1878555] - arm64: perf: Clean up enable/disable calls (Michael Petlan) [1878555] - arm64: perf: Only advertise cap_user_time for arch_timer (Michael Petlan) [1878555] - arm64: perf: Implement correct cap_user_time (Michael Petlan) [1878555] - arm64: perf: Add userspace counter access disable switch (Michael Petlan) [1878555] - perf: Add a counter for number of user access events in context (Michael Petlan) [1878555] - x86: perf: Move RDPMC event flag to a common definition (Michael Petlan) [1878555] - Fix null ptr dereference crash due to premature release of ndlp. Upstream Status: RHEL-Only Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2034425 (Dick Kennedy) - lpfc updates for rh8.7 14.0.0.13 (Dick Kennedy) [2034425] - scsi: lpfc: Use sg_dma_address() and sg_dma_len() macros for NVMe I/O (Dick Kennedy) [2034425] - scsi: lpfc: Alter FPIN stat accounting logic (Dick Kennedy) [2034425] - scsi: lpfc: Decrement outstanding gidft_inp counter if lpfc_err_lost_link() (Dick Kennedy) [2034425] - scsi: lpfc: Use list_for_each_entry_safe() in rscn_recovery_check() (Dick Kennedy) [2034425] - scsi: lpfc: Fix ndlp put following a LOGO completion (Dick Kennedy) [2034425] - scsi: lpfc: Fix additional reference counting in lpfc_bsg_rport_els() (Dick Kennedy) [2034425] - scsi: lpfc: Fix resource leak in lpfc_sli4_send_seq_to_ulp() (Dick Kennedy) [2034425] - scsi: lpfc: Remove unneeded variable (Dick Kennedy) [2034425] - scsi: lpfc: Copyright updates for 14.2.0.2 patches (Dick Kennedy) [2034425] - scsi: lpfc: Expand setting ELS_ID field in ELS_REQUEST64_WQE (Dick Kennedy) [2034425] - scsi: lpfc: Update stat accounting for READ_STATUS mbox command (Dick Kennedy) [2034425] - scsi: lpfc: Change FA-PWWN detection methodology (Dick Kennedy) [2034425] - scsi: lpfc: Register for Application Services FC-4 type in Fabric topology (Dick Kennedy) [2034425] - scsi: lpfc: Remove false FDMI NVMe FC-4 support for NPIV ports (Dick Kennedy) [2034425] - scsi: lpfc: Revise FDMI reporting of supported port speed for trunk groups (Dick Kennedy) [2034425] - scsi: lpfc: Fix call trace observed during I/O with CMF enabled (Dick Kennedy) [2034425] - scsi: lpfc: Correct CRC32 calculation for congestion stats (Dick Kennedy) [2034425] - scsi: lpfc: Move MI module parameter check to handle dynamic disable (Dick Kennedy) [2034425] - scsi: lpfc: Remove unnecessary NULL pointer assignment for ELS_RDF path (Dick Kennedy) [2034425] - scsi: lpfc: Transition to NPR state upon LOGO cmpl if link down or aborted (Dick Kennedy) [2034425] - scsi: lpfc: Update fc_prli_sent outstanding only after guaranteed IOCB submit (Dick Kennedy) [2034425] - scsi: lpfc: Protect memory leak for NPIV ports sending PLOGI_RJT (Dick Kennedy) [2034425] - scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI (Dick Kennedy) [2034425] - scsi: lpfc: Clear fabric topology flag before initiating a new FLOGI (Dick Kennedy) [2034425] - scsi: lpfc: Fix SCSI I/O completion and abort handler deadlock (Dick Kennedy) [2034425] - scsi: lpfc: Requeue SCSI I/O to upper layer when fw reports link down (Dick Kennedy) [2034425] - scsi: lpfc: Zero SLI4 fcp_cmnd buffer's fcpCntl0 field (Dick Kennedy) [2034425] - scsi: lpfc: Fix diagnostic fw logging after a function reset (Dick Kennedy) [2034425] - scsi: lpfc: Move cfg_log_verbose check before calling lpfc_dmp_dbg() (Dick Kennedy) [2034425] - scsi: lpfc: Tweak message log categories for ELS/FDMI/NVMe rescan (Dick Kennedy) [2034425] - scsi: lpfc: Fix queue failures when recovering from PCI parity error (Dick Kennedy) [2034425] - scsi: lpfc: Fix unload hang after back to back PCI EEH faults (Dick Kennedy) [2034425] - scsi: lpfc: Improve PCI EEH Error and Recovery Handling (Dick Kennedy) [2034425] - scsi: lpfc: Use kcalloc() (Dick Kennedy) [2034425] - scsi: lpfc: Fix typos in comments (Dick Kennedy) [2034425] - scsi: lpfc: Remove failing soft_wwn support (Dick Kennedy) [2034425] - scsi: lpfc: Reduce log messages seen after firmware download (Dick Kennedy) [2034425] - scsi: lpfc: Remove NVMe support if kernel has NVME_FC disabled (Dick Kennedy) [2034425] - scsi: lpfc: Remove redundant flush_workqueue() call (Dick Kennedy) [2034425] - scsi: lpfc: Terminate string in lpfc_debugfs_nvmeio_trc_write() (Dick Kennedy) [2034425] - scsi: lpfc: Use irq_set_affinity() (Dick Kennedy) [2034425] - time: Handle negative seconds correctly in timespec64_to_ns() (Íñigo Huguet) [2098634] - time: Prevent undefined behaviour in timespec64_to_ns() (Íñigo Huguet) [2098634] - mm,hwpoison: return -EBUSY when migration fails (Rafael Aquini) [2092671 2099510] - mm,hwpoison: remove drain_all_pages from shake_page (Rafael Aquini) [2092671] - mm,hwpoison: disable pcplists before grabbing a refcount (Rafael Aquini) [2092671] - mm,hwpoison: fix printing of page flags (Rafael Aquini) [2092671] - mm,hwpoison: refactor get_any_page (Rafael Aquini) [2092671] - mm,hwpoison: drop unneeded pcplist draining (Rafael Aquini) [2092671] - mm,hwpoison: drain pcplists before bailing out for non-buddy zero-refcount page (Rafael Aquini) [2092671] - redhat: Exclude cpufreq.h from kernel-headers (Patrick Talbert)- dm raid: fix accesses beyond end of raid member array (Benjamin Marzinski) [2012340] - dm mirror log: clear log bits up to BITS_PER_LONG boundary (Benjamin Marzinski) [2012340] - dm: fix BLK_STS_DM_REQUEUE handling when dm_io represents split bio (Benjamin Marzinski) [2012340] - dm mirror log: round up region bitmap size to BITS_PER_LONG (Benjamin Marzinski) [2012340] - dm: improve abnormal bio processing (Benjamin Marzinski) [2012340] - dm: simplify bio-based IO accounting further (Benjamin Marzinski) [2012340] - dm: don't grab target io reference in dm_zone_map_bio (Benjamin Marzinski) [2012340] - dm: improve bio splitting and associated IO accounting (Benjamin Marzinski) [2012340] - dm era: commit metadata in postsuspend after worker stops (Benjamin Marzinski) [2012340] - dm: fix race in dm_start_io_acct (Benjamin Marzinski) [2012340] - block: remove bioset_init_from_src (Benjamin Marzinski) [2012340] - dm: fix bio_set allocation (Benjamin Marzinski) [2012340] - dm verity: set DM_TARGET_IMMUTABLE feature flag (Benjamin Marzinski) [2012340] - dm cache metadata: remove unnecessary variable in __dump_mapping (Benjamin Marzinski) [2012340] - dm mpath: provide high-resolution timer to HST for bio-based (Benjamin Marzinski) [2012340] - dm crypt: make printing of the key constant-time (Benjamin Marzinski) [2012340] - dm integrity: fix error code in dm_integrity_ctr() (Benjamin Marzinski) [2012340] - dm stats: add cond_resched when looping over entries (Benjamin Marzinski) [2012340] - dm: improve dm_io reference counting (Benjamin Marzinski) [2012340] - dm: switch to bdev based IO accounting interfaces (Benjamin Marzinski) [2012340] - block: add sectors parameter to bio_start_io_acct_time() (Benjamin Marzinski) [2012340] - dm: pass dm_io instance to dm_io_acct directly (Benjamin Marzinski) [2012340] - dm: don't pass bio to __dm_start_io_acct and dm_end_io_acct (Benjamin Marzinski) [2012340] - dm: use bio_sectors in dm_aceept_partial_bio (Benjamin Marzinski) [2012340] - dm: simplify basic targets (Benjamin Marzinski) [2012340] - dm: conditionally enable branching for less used features (Benjamin Marzinski) [2012340] - dm: move hot dm_io members to same cacheline as dm_target_io (Benjamin Marzinski) [2012340] - dm: add local variables to clone_endio and __map_bio (Benjamin Marzinski) [2012340] - dm: mark various branches unlikely (Benjamin Marzinski) [2012340] - dm: simplify dm_start_io_acct (Benjamin Marzinski) [2012340] - dm: simplify dm_io access in dm_split_and_process_bio (Benjamin Marzinski) [2012340] - dm: factor out dm_io_set_error and __dm_io_dec_pending (Benjamin Marzinski) [2012340] - block: fix offset/size check in bio_trim() (Benjamin Marzinski) [2012340] - block: fix argument type of bio_trim() (Benjamin Marzinski) [2012340] - dm: allow dm_accept_partial_bio() for dm_io without duplicate bios (Benjamin Marzinski) [2012340] - dm mpath: only use ktime_get_ns() in historical selector (Benjamin Marzinski) [2012340] - dm: fix dm_io and dm_target_io flags race condition on Alpha (Benjamin Marzinski) [2012340] - dm integrity: set journal entry unused when shrinking device (Benjamin Marzinski) [2012340] - dm ioctl: log an error if the ioctl structure is corrupted (Benjamin Marzinski) [2012340] - dm: consolidate spinlocks in dm_io struct (Benjamin Marzinski) [2012340] - dm: reduce size of dm_io and dm_target_io structs (Benjamin Marzinski) [2012340] - dm: switch dm_target_io booleans over to proper flags (Benjamin Marzinski) [2012340] - dm: switch dm_io booleans over to proper flags (Benjamin Marzinski) [2012340] - dm: return void from __send_empty_flush (Benjamin Marzinski) [2012340] - dm: factor out dm_io_complete (Benjamin Marzinski) [2012340] - dm cache: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: simplify dm_sumbit_bio_remap interface (Benjamin Marzinski) [2012340] - dm thin: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: add WARN_ON_ONCE to dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: requeue IO if mapping table not yet available (Benjamin Marzinski) [2012340] - dm thin metadata: remove unused dm_thin_remove_block and __remove (Benjamin Marzinski) [2012340] - dm thin: use time_is_before_jiffies instead of open coding it (Benjamin Marzinski) [2012340] - dm crypt: fix get_key_size compiler warning if !CONFIG_KEYS (Benjamin Marzinski) [2012340] - dm ioctl: prevent potential spectre v1 gadget (Benjamin Marzinski) [2012340] - dm cache policy smq: make static read-only array table const (Benjamin Marzinski) [2012340] - dm delay: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm crypt: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: add dm_submit_bio_remap interface (Benjamin Marzinski) [2012340] - dm: flag clones created by __send_duplicate_bios (Benjamin Marzinski) [2012340] - dm: reduce dm_io and dm_target_io struct sizes (Benjamin Marzinski) [2012340] - dm: move duplicate code from callers of alloc_tio into alloc_tio (Benjamin Marzinski) [2012340] - dm: record old_sector in dm_target_io before calling map function (Benjamin Marzinski) [2012340] - dm: remove legacy code only needed before submit_bio recursion (Benjamin Marzinski) [2012340] - dm: remove unused mapped_device argument from free_tio (Benjamin Marzinski) [2012340] - dm: remove impossible BUG_ON in __send_empty_flush (Benjamin Marzinski) [2012340] - dm: reduce code duplication in __map_bio (Benjamin Marzinski) [2012340] - dm: refactor dm_split_and_process_bio a bit (Benjamin Marzinski) [2012340] - dm: fold __clone_and_map_data_bio into __split_and_process_bio (Benjamin Marzinski) [2012340] - dm: rename split functions (Benjamin Marzinski) [2012340] - dm: eliminate copying of dm_io fields in dm_io_dec_pending (Benjamin Marzinski) [2012340] - dm ioctl: return UUID in DM_LIST_DEVICES_CMD result (Benjamin Marzinski) [2012340] - dm crypt: support using trusted keys (Benjamin Marzinski) [2012340] - dm crypt: replaced #if defined with IS_ENABLED (Benjamin Marzinski) [2012340] - ext4: add check to prevent attempting to resize an fs with sparse_super2 (Lukas Czerner) [2077760] - fscache: Avoid ASSERTCMP if two threads race into fscache_disable_cookie (Dave Wysochanski) [2073260] - lib: bitmap: Introduce node-aware alloc API (Ivan Vecera) [2101701] - exec: Force single empty string when argv is empty (Rafael Aquini) [2100955] - powerpc: Enable execve syscall exit tracepoint (Steve Best) [2095521] - cgroup: disable controllers at parse time (Waiman Long) [2098264] - init: initialize jump labels before command line option parsing (Waiman Long) [2098264] - smp: Make softirq handling RT safe in flush_smp_call_function_queue() (Phil Auld) [2097364] - smp: Rename flush_smp_call_function_from_idle() (Phil Auld) [2097364] - cpupower: Add "perf" option to print AMD P-State information (Steve Best) [2059365] - cpupower: Add function to print AMD P-State performance capabilities (Steve Best) [2059365] - cpupower: Move print_speed function into misc helper (Steve Best) [2059365] - cpupower: Enable boost state support for AMD P-State module (Steve Best) [2059365] - cpupower: Add AMD P-State sysfs definition and access helper (Steve Best) [2059365] - cpupower: Introduce ACPI CPPC library (Steve Best) [2059365] - cpupower: Add the function to get the sysfs value from specific table (Steve Best) [2059365] - cpupower: Initial AMD P-State capability (Steve Best) [2059365] - cpupower: Add the function to check AMD P-State enabled (Steve Best) [2059365] - cpupower: Add AMD P-State capability flag (Steve Best) [2059365] - tools/power/cpupower/{ToDo => TODO}: Rename the todo file (Steve Best) [2059365] - tools: cpupower: fix typo in cpupower-idle-set(1) manpage (Steve Best) [2059365] - ntb: intel: fix port config status offset for SPR (John W. Linville) [2048750] - NTB/msi: Use struct_size() helper in devm_kzalloc() (John W. Linville) [2048750] - ntb_hw_switchtec: Fix a minor issue in config_req_id_table() (John W. Linville) [2048750] - ntb_hw_switchtec: Remove code for disabling ID protection (John W. Linville) [2048750] - ntb_hw_switchtec: Update the way of getting VEP instance ID (John W. Linville) [2048750] - ntb_hw_switchtec: AND with the part_map for a valid tpart_vec (John W. Linville) [2048750] - ntb_hw_switchtec: Fix bug with more than 32 partitions (John W. Linville) [2048750] - ntb_hw_switchtec: Fix pff ioread to read into mmio_part_cfg_all (John W. Linville) [2048750] - ntb_hw_switchtec: fix the spelling of "its" (John W. Linville) [2048750] - NTB/msi: Fix ntbm_msi_request_threaded_irq() kernel-doc comment (John W. Linville) [2048750] - NTB: switch from 'pci_' to 'dma_' API (John W. Linville) [2048750] - ntb: ntb_pingpong: remove redundant initialization of variables msg_data and spad_data (John W. Linville) [2048750] - NTB: perf: Fix an error code in perf_setup_inbuf() (John W. Linville) [2048750] - NTB: Fix an error code in ntb_msit_probe() (John W. Linville) [2048750] - ntb: intel: remove invalid email address in header comment (John W. Linville) [2048750] - NTB: Add support for EPF PCI Non-Transparent Bridge (John W. Linville) [2048750] - ntb: intel: add Intel NTB LTR vendor support for gen4 NTB (John W. Linville) [2048750] - ntb: idt: fix error check in ntb_hw_idt.c (John W. Linville) [2048750]- KVM: x86: Fix the intel_pt PMI handling wrongly considered from guest (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't rebuild page when the page is synced and no tlb flushing is required (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Verify the pmu event filter matches the correct event (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Add the helper function create_pmu_event_filter (Vitaly Kuznetsov) [2074835] - kvm: x86/pmu: Fix the compare function used by the pmu event filter (Vitaly Kuznetsov) [2074835] - KVM: Free new dirty bitmap if creating a new memslot fails (Vitaly Kuznetsov) [2074835] - KVM: Initialize debugfs_dentry when a VM is created to avoid NULL deref (Vitaly Kuznetsov) [2074835] - tools arch x86: Sync asm/cpufeatures.h with the with the kernel (Vitaly Kuznetsov) [2074835] - KVM: PPC: Book3S HV: Fix kvm_unmap_gfn_range_hv() for Hash MMU (Vitaly Kuznetsov) [2074835] - KVM: PPC: Book3S HV: Fix conversion to gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: arm64: Fix boolreturn.cocci warnings (Vitaly Kuznetsov) [2074835] - KVM: VMX: Exit to userspace if vCPU has injected exception and invalid state (Vitaly Kuznetsov) [2074835] - KVM: SEV: Mark nested locking of vcpu->lock (Vitaly Kuznetsov) [2074835] - kvm: x86/cpuid: Only provide CPUID leaf 0xA if host has architectural PMU (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Account for family 17h event renumberings in amd_pmc_perf_hw_id (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use atomic XCHG to write TDP MMU SPTEs with volatile bits (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move shadow-present check out of spte_has_volatile_bits() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't treat fully writable SPTEs as volatile (modulo A/D) (Vitaly Kuznetsov) [2074835] - selftests: kvm: add amx_test to .gitignore (Vitaly Kuznetsov) [2074835] - Revert "x86/mm: Introduce lookup_address_in_mm()" (Vitaly Kuznetsov) [2074835] - KVM: x86: work around QEMU issue with synthetic CPUID leaves (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: fix potential races when walking host page table (Vitaly Kuznetsov) [2074835] - Documentation: KVM: Update documentation to indicate KVM is arm64-only (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Do not create SPTEs for GFNs that exceed host.MAXPHYADDR (Vitaly Kuznetsov) [2074835] - kvm: selftests: introduce and use more page size-related constants (Vitaly Kuznetsov) [2074835] - kvm: selftests: do not use bitfields larger than 32-bits for PTEs (Vitaly Kuznetsov) [2074835] - KVM: SEV: add cache flush to solve SEV cache incoherency issues (Vitaly Kuznetsov) [2074835] - KVM: SVM: Flush when freeing encrypted pages even on SME_COHERENT CPUs (Vitaly Kuznetsov) [2074835] - KVM: SVM: Simplify and harden helper to flush SEV guest page(s) (Vitaly Kuznetsov) [2074835] - KVM: selftests: Silence compiler warning in the kvm_page_table_test (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Update AMD PMC sample period to fix guest NMI-watchdog (Vitaly Kuznetsov) [2074835] - x86/kvm: Preserve BSP MSR_KVM_POLL_CONTROL across suspend/resume (Vitaly Kuznetsov) [2074835] - KVM: x86: Skip KVM_GUESTDBG_BLOCKIRQ APICv update if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: x86: Pend KVM_REQ_APICV_UPDATE during vCPU creation to fix a race (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Defer APICv updates while L2 is active until L1 is active (Vitaly Kuznetsov) [2074835] - KVM: x86: Tag APICv DISABLE inhibit, not ABSENT, if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: Add helpers to wrap vcpu->srcu_idx and yell if it's abused (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't re-acquire SRCU lock in complete_emulated_io() (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Check for supported page sizes (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Initialise default guest mode at test startup time (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Introduce a variable default IPA size (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Rework TCR_EL1 configuration (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Avoid writing to TSC page without an active vCPU (Vitaly Kuznetsov) [2074835] - KVM: SVM: Do not activate AVIC for SEV-enabled guest (Vitaly Kuznetsov) [2074835] - selftests: kvm: add tsc_scaling_sync to .gitignore (Vitaly Kuznetsov) [2074835] - KVM: Don't create VM debugfs files outside of the VM directory (Vitaly Kuznetsov) [2074835] - KVM: avoid NULL pointer dereference in kvm_dirty_ring_push (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: remove unnecessary flush_workqueue() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Resolve nx_huge_pages when kvm.ko is loaded (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add cond_resched() to loop in sev_clflush_pages() (Vitaly Kuznetsov) [2074835] - KVM: x86: fix sending PV IPI (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do compare-and-exchange of gPTE via the user address (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove redundant vm_entry_controls_clearbit() call (Vitaly Kuznetsov) [2074835] - KVM: x86: cleanup enter_rmode() (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: fix tsc scaling when the host doesn't support it (Vitaly Kuznetsov) [2074835] - kvm: x86: SVM: remove unused defines (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: move tsc ratio definitions to svm.h (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: fix avic spec based definitions again (Vitaly Kuznetsov) [2074835] - KVM: x86: Only do MSR filtering when access MSR by rdmsr/wrmsr (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Emulate RDPID only if it is enabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix and isolate TSX-specific performance event logic (Vitaly Kuznetsov) [2074835] - KVM: x86: mmu: trace kvm_mmu_set_spte after the new SPTE was set (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Clear reserved bits written to PerfEvtSeln MSRs (Vitaly Kuznetsov) [2074835] - KVM: x86: Trace all APICv inhibit changes and capture overall status (Vitaly Kuznetsov) [2074835] - KVM: x86: Add wrappers for setting/clearing APICv inhibits (Vitaly Kuznetsov) [2074835] - KVM: x86: Make APICv inhibit reasons an enum and cleanup naming (Vitaly Kuznetsov) [2074835] - KVM: X86: Handle implicit supervisor access with SMAP (Vitaly Kuznetsov) [2074835] - KVM: X86: Rename variable smap to not_smap in permission_fault() (Vitaly Kuznetsov) [2074835] - KVM: X86: Fix comments in update_permission_bitmask (Vitaly Kuznetsov) [2074835] - KVM: X86: Change the type of access u32 to u64 (Vitaly Kuznetsov) [2074835] - KVM: Remove dirty handling from gfn_to_pfn_cache completely (Vitaly Kuznetsov) [2074835] - KVM: Use enum to track if cached PFN will be used in guest and/or host (Vitaly Kuznetsov) [2074835] - KVM: SVM: Fix kvm_cache_regs.h inclusions for is_guest_mode() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use different raw event masks for AMD and Intel (Vitaly Kuznetsov) [2074835] - KVM: Don't actually set a request when evicting vCPUs for GFN cache invd (Vitaly Kuznetsov) [2074835] - KVM: avoid double put_page with gfn-to-pfn cache (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only TDP MMU leafs in zap range and mmu_notifier unmap (Vitaly Kuznetsov) [2074835] - KVM: SVM: fix panic on out-of-bounds guest IRQ (Vitaly Kuznetsov) [2074835] - KVM: MMU: propagate alloc_workqueue failure (Vitaly Kuznetsov) [2074835] - KVM: x86: Forbid VMM to set SYNIC/STIMER MSRs when SynIC wasn't activated (Vitaly Kuznetsov) [2074835] - KVM: x86: Avoid theoretical NULL pointer dereference in kvm_irq_delivery_to_apic_fast() (Vitaly Kuznetsov) [2074835] - KVM: x86: Check lapic_in_kernel() before attempting to set a SynIC irq (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix clang -Wimplicit-fallthrough in do_host_cpuid() (Vitaly Kuznetsov) [2074835] - Revert "KVM: set owner of cpu and vm file operations" (Vitaly Kuznetsov) [2074835] - KVM: Prevent module exit until all VMs are freed (Vitaly Kuznetsov) [2074835] - KVM: use kvcalloc for array allocations (Vitaly Kuznetsov) [2074835] - KVM: x86: Introduce KVM_CAP_DISABLE_QUIRKS2 (Vitaly Kuznetsov) [2074835] - kvm: x86: Require const tsc for RT (Vitaly Kuznetsov) [2074835] - KVM: x86: synthesize CPUID leaf 0x80000021h if useful (Vitaly Kuznetsov) [2074835] - KVM: x86: add support for CPUID leaf 0x80000021 (Vitaly Kuznetsov) [2074835] - Revert "KVM: x86/mmu: Zap only TDP MMU leafs in kvm_zap_gfn_range()" (Vitaly Kuznetsov) [2074835] - kvm: x86/mmu: Flush TLB before zap_gfn_range releases RCU (Vitaly Kuznetsov) [2074835] - kvm/emulate: Fix SETcc emulation function offsets with SLS (Vitaly Kuznetsov) [2074835] - KVM: compat: riscv: Prevent KVM_COMPAT from being selected (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to populate a VM with the max possible guest mem (Vitaly Kuznetsov) [2074835] - KVM: selftests: Define cpu_relax() helpers for s390 and x86 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Split out helper to allocate guest mem via memfd (Vitaly Kuznetsov) [2074835] - KVM: selftests: add shared hugetlbfs backing source type (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move raw KVM_SET_USER_MEMORY_REGION helper to utils (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: WARN on any attempt to atomically update REMOVED SPTE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for a REMOVED leaf SPTE before making the SPTE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap defunct roots via asynchronous worker (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap roots in two passes to avoid inducing RCU stalls (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow yielding when zapping GFNs for defunct TDP MMU root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap invalidated roots via asynchronous worker (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Defer TLB flush to caller when freeing TDP MMU shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Do remote TLB flush before dropping RCU in TDP MMU resched (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only TDP MMU leafs in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Require mmu_lock be held for write to zap TDP MMU range (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add dedicated helper to zap TDP MMU root shadow page (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip remote TLB flush when zapping all of TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only the target TDP MMU shadow page in NX recovery (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Refactor low-level TDP MMU set SPTE helper to take raw values (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: WARN if old _or_ new SPTE is REMOVED in non-atomic path (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add helpers to read/write TDP MMU SPTEs and document RCU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop RCU after processing each root in MMU notifier hooks (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Batch TLB flushes from TDP MMU for MMU notifier change_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for !leaf=>leaf, not PFN change, in TDP MMU SP removal (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not allow readers to acquire references to invalid roots (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: only perform eager page splitting on valid roots (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Require mmu_lock be held for write in unyielding root iter (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Document that zapping invalidated roots doesn't need to flush (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Formalize TDP MMU's (unintended?) deferred TLB flush logic (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix wrong/misleading comments in TDP MMU fast zap (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for present SPTE when clearing dirty bit in TDP MMU (Vitaly Kuznetsov) [2074835] - selftests: kvm: add generated file to the .gitignore (Vitaly Kuznetsov) [2074835] - KVM: x86: pull kvm->srcu read-side to kvm_arch_vcpu_ioctl_run (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Passing up the error state of mmu_alloc_shadow_roots() (Vitaly Kuznetsov) [2074835] - KVM: SVM: Disable preemption across AVIC load/put during APICv refresh (Vitaly Kuznetsov) [2074835] - KVM: SVM: Exit to userspace on ENOMEM/EFAULT GHCB errors (Vitaly Kuznetsov) [2074835] - KVM: WARN if is_unsync_root() is called on a root without a shadow page (Vitaly Kuznetsov) [2074835] - KVM: Drop KVM_REQ_MMU_RELOAD and update vcpu-requests.rst documentation (Vitaly Kuznetsov) [2074835] - KVM: s390: Replace KVM_REQ_MMU_RELOAD usage with arch specific request (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only obsolete roots if a root shadow page is zapped (Vitaly Kuznetsov) [2074835] - KVM: Drop kvm_reload_remote_mmus(), open code request in x86 users (Vitaly Kuznetsov) [2074835] - KVM: x86: Invoke kvm_mmu_unload() directly on CR4.PCIDE change (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Move the unhandled outer privilege level logic of far return into __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Fix wrong privilege check for code segment in __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Defer not-present segment check in __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to verify KVM handling of ICR (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_lapic_set_reg() a "private" xAPIC helper (Vitaly Kuznetsov) [2074835] - KVM: x86: Treat x2APIC's ICR as a 64-bit register, not two 32-bit regs (Vitaly Kuznetsov) [2074835] - KVM: x86: Add helpers to handle 64-bit APIC MSR read/writes (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_lapic_reg_{read,write}() static (Vitaly Kuznetsov) [2074835] - KVM: x86: WARN if KVM emulates an IPI without clearing the BUSY flag (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't rewrite guest ICR on AVIC IPI virtualization failure (Vitaly Kuznetsov) [2074835] - KVM: SVM: Use common kvm_apic_write_nodecode() for AVIC write traps (Vitaly Kuznetsov) [2074835] - KVM: x86: Use "raw" APIC register read for handling APIC-write VM-Exit (Vitaly Kuznetsov) [2074835] - KVM: VMX: Handle APIC-write offset wrangling in VMX code (Vitaly Kuznetsov) [2074835] - KVM: x86: Do not change ICR on write to APIC_SELF_IPI (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix emulation in writing cr8 (Vitaly Kuznetsov) [2074835] - KVM: x86: flush TLB separately from MMU reset (Vitaly Kuznetsov) [2074835] - KVM: x86: Yield to IPI target vCPU only if it is busy (Vitaly Kuznetsov) [2074835] - x86/kvmclock: Fix Hyper-V Isolated VM's boot issue when vCPUs > 64 (Vitaly Kuznetsov) [2074835] - x86/kvm: Don't waste memory if kvmclock is disabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: clear MMIO cache when unloading the MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Always use current mmu's role when loading new PGD (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: load new PGD after the shadow MMU is initialized (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: look for a cached PGD when going from 32-bit to 64-bit (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not pass vcpu to root freeing functions (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not consult levels when freeing roots (Vitaly Kuznetsov) [2074835] - KVM: x86: use struct kvm_mmu_root_info for mmu->root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: avoid NULL-pointer dereference on page freeing bugs (Vitaly Kuznetsov) [2074835] - KVM: x86: do not deliver asynchronous page faults if CR0.PG=0 (Vitaly Kuznetsov) [2074835] - KVM: x86: Reinitialize context if host userspace toggles EFER.LME (Vitaly Kuznetsov) [2074835] - KVM: selftests: Verify disabling PMU virtualization via KVM_CAP_CONFIG_PMU (Vitaly Kuznetsov) [2074835] - KVM: selftests: Carve out helper to create "default" VM without vCPUs (Vitaly Kuznetsov) [2074835] - KVM: x86: Provide per VM capability for disabling PMU virtualization (Vitaly Kuznetsov) [2074835] - KVM: Move VM's worker kthreads back to the original cgroup before exiting. (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove scratch 'cpu' variable that shadows an identical scratch var (Vitaly Kuznetsov) [2074835] - kvm: vmx: Fix typos comment in __loaded_vmcs_clear() (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Make setup/unsetup under the same conditions (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: HVCALL_SEND_IPI_EX is an XMM fast hypercall (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Fix the maximum number of sparse banks for XMM fast TLB flush hypercalls (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Drop redundant 'ex' parameter from kvm_hv_flush_tlb() (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Drop redundant 'ex' parameter from kvm_hv_send_ipi() (Vitaly Kuznetsov) [2074835] - Revert "KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest()" (Vitaly Kuznetsov) [2074835] - Revert "KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs()" (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: disallow userspace setting of MSR_AMD64_TSC_RATIO to non default value when tsc scaling disabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: make apf token non-zero to fix bug (Vitaly Kuznetsov) [2074835] - selftests: kvm: Add the uapi headers include variable (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add EXTRA_CFLAGS in top-level Makefile (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove MMU auditing (Vitaly Kuznetsov) [2074835] - KVM: x86: make several APIC virtualization callbacks optional (Vitaly Kuznetsov) [2074835] - KVM: x86: warn on incorrectly NULL members of kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: remove KVM_X86_OP_NULL and mark optional kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: use static_call_cond for optional callbacks (Vitaly Kuznetsov) [2074835] - KVM: x86: return 1 unconditionally for availability of KVM_CAP_VAPIC (Vitaly Kuznetsov) [2074835] - selftests: KVM: allow sev_migrate_tests on machines without SEV-ES (Vitaly Kuznetsov) [2074835] - KVM: SEV: Allow SEV intra-host migration of VM with mirrors (Vitaly Kuznetsov) [2074835] - x86/kvm: Fix compilation warning in non-x86_64 builds (Vitaly Kuznetsov) [2074835] - kvm: x86: Disable KVM_HC_CLOCK_PAIRING if tsc is in always catchup mode (Vitaly Kuznetsov) [2074835] - KVM: Fix lockdep false negative during host resume (Vitaly Kuznetsov) [2074835] - KVM: x86: Add KVM_CAP_ENABLE_CAP to x86 (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename AVIC helpers to use "avic" prefix instead of "svm" (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use AMD64_RAW_EVENT_MASK for PERF_TYPE_RAW (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Don't truncate the PerfEvtSeln MSR when creating a perf event (Vitaly Kuznetsov) [2074835] - KVM: x86: Replace memset() "optimization" with normal per-field writes (Vitaly Kuznetsov) [2074835] - KVM: SVM: fix race between interrupt delivery and AVIC inhibition (Vitaly Kuznetsov) [2074835] - KVM: SVM: set IRR in svm_deliver_interrupt (Vitaly Kuznetsov) [2074835] - KVM: SVM: extract avic_ring_doorbell (Vitaly Kuznetsov) [2074835] - selftests: kvm: Remove absent target file (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use local pointer to vcpu_vmx in vmx_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Add enlightened MSR-Bitmap selftest (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Update 'struct vmcb_control_area' definition (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Set up MSR-Bitmap for SVM guests (Vitaly Kuznetsov) [2074835] - KVM: selftests: nVMX: Add enlightened MSR-Bitmap selftest (Vitaly Kuznetsov) [2074835] - KVM: selftests: nVMX: Properly deal with 'hv_clean_fields' (Vitaly Kuznetsov) [2074835] - KVM: selftests: Adapt hyperv_cpuid test to the newly introduced Enlightened MSR-Bitmap (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Implement Enlightened MSR-Bitmap feature (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Split off common definitions for Hyper-V on KVM and KVM on Hyper-V (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_hv_hypercall_enabled() static inline (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Track whether changes in L0 require MSR bitmap for L2 to be rebuilt (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add an option to disable MANUAL_PROTECT_ENABLE and INITIALLY_SET (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add tracepoint for splitting huge pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Split huge pages mapped by the TDP MMU during KVM_CLEAR_DIRTY_LOG (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Split huge pages mapped by the TDP MMU when dirty logging is enabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Separate TDP MMU shadow page allocation and initialization (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Derive page role for TDP MMU shadow pages from parent (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove redundant role overrides for TDP MMU shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Refactor TDP MMU iterators to take kvm_mmu_page root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move restore_acc_track_spte() to spte.h (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop new_spte local variable from restore_acc_track_spte() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unnecessary warnings from restore_acc_track_spte() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Consolidate logic to atomically install a new TDP MMU page table (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename handle_removed_tdp_mmu_page() to handle_removed_pt() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename TDP MMU functions that handle shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Change tdp_mmu_{set,zap}_spte_atomic() to return 0/-EBUSY (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Automatically update iter->old_spte if cmpxchg fails (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename __rmap_write_protect() to rmap_write_protect() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename rmap_write_protect() to kvm_vcpu_write_protect_gfn() (Vitaly Kuznetsov) [2074835] - KVM: x86: Add checks for reserved-to-zero Hyper-V hypercall fields (Vitaly Kuznetsov) [2074835] - KVM: x86: Reject fixeds-size Hyper-V hypercalls with non-zero "var_cnt" (Vitaly Kuznetsov) [2074835] - KVM: x86: Shove vp_bitmap handling down into sparse_set_to_vcpu_mask() (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't bother reading sparse banks that end up being ignored (Vitaly Kuznetsov) [2074835] - KVM: x86: Add a helper to get the sparse VP_SET for IPIs and TLB flushes (Vitaly Kuznetsov) [2074835] - KVM: x86: Refactor kvm_hv_flush_tlb() to reduce indentation (Vitaly Kuznetsov) [2074835] - KVM: x86: Get the number of Hyper-V sparse banks from the VARHEAD field (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Consolidate comments about {Host,MMU}-writable (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename DEFAULT_SPTE_MMU_WRITEABLE to DEFAULT_SPTE_MMU_WRITABLE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move is_writable_pte() to spte.h (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check SPTE writable invariants when setting leaf SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move SPTE writable invariant checks to a helper function (Vitaly Kuznetsov) [2074835] - KVM: LAPIC: Enable timer posted-interrupt only when mwait/hlt is advertised (Vitaly Kuznetsov) [2074835] - KVM: VMX: Dont' send posted IRQ if vCPU == this vCPU and vCPU is IN_GUEST_MODE (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename hook implementations to conform to kvm_x86_ops' names (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename SEV implemenations to conform to kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Use more verbose names for mem encrypt kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove unused MAX_INST_SIZE #define (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename svm_flush_tlb() to svm_flush_tlb_current() (Vitaly Kuznetsov) [2074835] - KVM: x86: Move get_cs_db_l_bits() helper to SVM (Vitaly Kuznetsov) [2074835] - KVM: VMX: Rename VMX functions to conform to kvm_x86_ops names (Vitaly Kuznetsov) [2074835] - KVM: x86: Use static_call() for copy/move encryption context ioctls() (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: Uninline and export hv_track_root_tdp() (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Refactor PMU refresh to avoid referencing kvm_x86_ops.pmu_ops (Vitaly Kuznetsov) [2074835] - KVM: xen: Use static_call() for invoking kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Use static_call() for .vcpu_deliver_sipi_vector() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Call vmx_get_cpl() directly in handle_dr() (Vitaly Kuznetsov) [2074835] - KVM: x86: Rename kvm_x86_ops pointers to align w/ preferred vendor names (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop export for .tlb_flush_current() static_call key (Vitaly Kuznetsov) [2074835] - KVM: x86: skip host CPUID call for hypervisor leaves (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove unused "flags" of kvm_pv_kick_cpu_op() (Vitaly Kuznetsov) [2074835] - KVM: Remove unused "kvm" of kvm_make_vcpu_request() (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove unused "vcpu" of kvm_scale_tsc() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulate: Remove unused "tss_selector" of task_switch_{16, 32}() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulate: Remove unused "ctxt" of setup_syscalls_segments() (Vitaly Kuznetsov) [2074835] - KVM: x86/ioapic: Remove unused "addr" and "length" of ioapic_read_indirect() (Vitaly Kuznetsov) [2074835] - KVM: x86/i8259: Remove unused "addr" of elcr_ioport_{read,write}() (Vitaly Kuznetsov) [2074835] - KVM: SVM: improve split between svm_prepare_guest_switch and sev_es_prepare_guest_switch (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Remove unused "vcpu" of svm_check_exit_valid() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu_audit: Remove unused "level" of audit_spte_after_sync() (Vitaly Kuznetsov) [2074835] - KVM: x86/tdp_mmu: Remove unused "kvm" of kvm_tdp_mmu_get_root() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "vcpu" of reset_{tdp,ept}_shadow_zero_bits_mask() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "kvm" of __rmap_write_protect() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "kvm" of kvm_mmu_unlink_parents() (Vitaly Kuznetsov) [2074835] - KVM: x86: Skip APICv update if APICv is disable at the module level (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop NULL check on kvm_x86_ops.check_apicv_inhibit_reasons (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport __kvm_request_apicv_update() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap _all_ roots when unmapping gfn range in TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move "invalid" check out of kvm_tdp_mmu_get_root() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use common TDP MMU zap helper for MMU notifier unmap hook (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Fix runstate updates to be atomic when preempting vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: move avic definitions from AMD's spec to svm.h (Vitaly Kuznetsov) [2074835] - KVM: x86: lapic: don't touch irr_pending in kvm_apic_update_apicv when inhibiting it (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: deal with L1 hypervisor that intercepts interrupts but lets L2 control them (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: expose clean bit support to the guest (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM/nVMX: set nested_run_pending on VM entry which is a result of RSM (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: mark vmcb01 as dirty when restoring SMM saved state (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: fix potential NULL derefernce on nested migration (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: don't passthrough SMAP/SMEP/PKE bits in !NPT && !gCR0.PG case (Vitaly Kuznetsov) [2074835] - Revert "svm: Add warning message for AVIC IPI invalid target" (Vitaly Kuznetsov) [2074835] - selftests: KVM: Test OS lock behavior (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add OSLSR_EL1 to the list of blessed regs (Vitaly Kuznetsov) [2074835] - KVM: x86: Report deprecated x87 features in supported CPUID (Vitaly Kuznetsov) [2074835] - x86/cpufeatures: Add FDP_EXCPTN_ONLY and ZERO_FCS_FDS (Vitaly Kuznetsov) [2074835] - KVM: x86: use the KVM side max supported fixed counter (Vitaly Kuznetsov) [2074835] - x86: Share definition of __is_canonical_address() (Vitaly Kuznetsov) [2074835] - perf/x86/intel/pt: Relax address filter validation (Vitaly Kuznetsov) [2074835] - KVM: x86: Move delivery of non-APICv interrupt into vendor code (Vitaly Kuznetsov) [2074835] - KVM: eventfd: Fix false positive RCU usage warning (Vitaly Kuznetsov) [2074835] - selftests: kvm: check dynamic bits against KVM_X86_XCOMP_GUEST_SUPP (Vitaly Kuznetsov) [2074835] - KVM: x86: Sync the states size with the XCR0/IA32_XSS at, any time (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vCPU's runtime CPUID on write to MSR_IA32_XSS (Vitaly Kuznetsov) [2074835] - KVM: x86: Keep MSR_IA32_XSS unchanged for INIT (Vitaly Kuznetsov) [2074835] - KVM: x86: Free kvm_cpuid_entry2 array on post-KVM_RUN KVM_SET_CPUID{,2} (Vitaly Kuznetsov) [2074835] - KVM: nVMX: WARN on any attempt to allocate shadow VMCS for vmcs02 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Don't skip L2's VMCALL in SMM test for SVM guest (Vitaly Kuznetsov) [2074835] - KVM: x86: Check .flags in kvm_cpuid_check_equal() too (Vitaly Kuznetsov) [2074835] - KVM: x86: Forcibly leave nested virt when SMM state is toggled (Vitaly Kuznetsov) [2074835] - KVM: SVM: drop unnecessary code in svm_hv_vmcb_dirty_nested_enlightenments() (Vitaly Kuznetsov) [2074835] - KVM: SVM: hyper-v: Enable Enlightened MSR-Bitmap support for real (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't kill SEV guest if SMAP erratum triggers in usermode (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't apply SEV+SMAP workaround on code fetch or PT access (Vitaly Kuznetsov) [2074835] - KVM: SVM: Inject #UD on attempted emulation for SEV guest w/o insn buffer (Vitaly Kuznetsov) [2074835] - KVM: SVM: WARN if KVM attempts emulation on #UD or #GP for SEV guests (Vitaly Kuznetsov) [2074835] - KVM: x86: Pass emulation type to can_emulate_instruction() (Vitaly Kuznetsov) [2074835] - KVM: SVM: Explicitly require DECODEASSISTS to enable SEV support (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't intercept #GP for SEV guests (Vitaly Kuznetsov) [2074835] - Revert "KVM: SVM: avoid infinite loop on NPF from bad address" (Vitaly Kuznetsov) [2074835] - KVM: SVM: Never reject emulation due to SMAP errata for !SEV guests (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: skip eax alignment check for non-SVM instructions (Vitaly Kuznetsov) [2074835] - KVM: LAPIC: Also cancel preemption timer during SET_LAPIC (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove vmcs_config.order (Vitaly Kuznetsov) [2074835] - KVM/X86: Make kvm_vcpu_reload_apic_access_page() static (Vitaly Kuznetsov) [2074835] - KVM: selftests: Re-enable access_tracking_perf_test (Vitaly Kuznetsov) [2074835] - KVM: VMX: Set vmcs.PENDING_DBG.BS on #DB in STI/MOVSS blocking shadow (Vitaly Kuznetsov) [2074835] - KVM: remove async parameter of hva_to_pfn_remapped() (Vitaly Kuznetsov) [2074835] - x86,kvm/xen: Remove superfluous .fixup usage (Vitaly Kuznetsov) [2074835] - KVM: VMX: Zero host's SYSENTER_ESP iff SYSENTER is NOT used (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Fix the warning in lib/x86_64/processor.c (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Fix the warning in pmu_event_filter_test.c (Vitaly Kuznetsov) [2074835] - kvm: selftests: Do not indent with spaces (Vitaly Kuznetsov) [2074835] - KVM: SVM: Nullify vcpu_(un)blocking() hooks if AVIC is disabled (Vitaly Kuznetsov) [2074835] - KVM: SVM: Move svm_hardware_setup() and its helpers below svm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: SVM: Drop AVIC's intermediate avic_set_running() helper (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't do full kick when handling posted interrupt wakeup (Vitaly Kuznetsov) [2074835] - KVM: VMX: Fold fallback path into triggering posted IRQ helper (Vitaly Kuznetsov) [2074835] - KVM: VMX: Pass desired vector instead of bool for triggering posted IRQ (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't do full kick when triggering posted interrupt "fails" (Vitaly Kuznetsov) [2074835] - KVM: SVM: Skip AVIC and IRTE updates when loading blocking vCPU (Vitaly Kuznetsov) [2074835] - KVM: SVM: Use kvm_vcpu_is_blocking() in AVIC load to handle preemption (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove unnecessary APICv/AVIC update in vCPU unblocking path (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't bother checking for "running" AVIC when kicking for IPIs (Vitaly Kuznetsov) [2074835] - KVM: SVM: Signal AVIC doorbell iff vCPU is in guest mode (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct pre_block/post_block kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport LAPIC's switch_to_{hv,sw}_timer() helpers (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move preemption timer <=> hrtimer dance to common x86 (Vitaly Kuznetsov) [2074835] - KVM: Move x86 VMX's posted interrupt list_head to vcpu_vmx (Vitaly Kuznetsov) [2074835] - KVM: Drop unused kvm_vcpu.pre_pcpu field (Vitaly Kuznetsov) [2074835] - KVM: VMX: Handle PI descriptor updates during vcpu_put/load (Vitaly Kuznetsov) [2074835] - KVM: avoid warning on s390 in mark_page_dirty (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add a test to force emulation with a pending exception (Vitaly Kuznetsov) [2074835] - KVM: VMX: Reject KVM_RUN if emulation is required with pending exception (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Add test for KVM_SET_PMU_EVENT_FILTER (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Introduce x86_model() (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Export x86_family() for use outside of processor.c (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Introduce is_amd_cpu() (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Parameterize the CPUID vendor string check (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use binary search to check filtered events (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Improve TLB flush comment in kvm_mmu_slot_remove_write_access() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Document and enforce MMU-writable and Host-writable invariants (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Clear MMU-writable during changed_pte notifier (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix write-protection of PTs mapped by the TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86: Making the module parameter of vPMU more common (Vitaly Kuznetsov) [2074835] - KVM: selftests: Test KVM_SET_CPUID2 after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: selftests: Rename 'get_cpuid_test' to 'cpuid_test' (Vitaly Kuznetsov) [2074835] - KVM: x86: Partially allow KVM_SET_CPUID{,2} after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix available_event_types check for REF_CPU_CYCLES event (Vitaly Kuznetsov) [2074835] - KVM: x86: Check for rmaps allocation (Vitaly Kuznetsov) [2074835] - KVM: SEV: Mark nested locking of kvm->lock (Vitaly Kuznetsov) [2074835] - KVM: SVM: include CR3 in initial VMSA state for SEV-ES guests (Vitaly Kuznetsov) [2074835] - KVM: VMX: Provide vmread version using asm-goto-with-outputs (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix wall clock writes in Xen shared_info not to mark page dirty (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Add KVM_IRQ_ROUTING_XEN_EVTCHN and event channel delivery (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Maintain valid mapping of Xen shared_info page (Vitaly Kuznetsov) [2074835] - KVM: Reinstate gfn_to_pfn_cache with invalidation support (Vitaly Kuznetsov) [2074835] - KVM: Warn if mark_page_dirty() is called without an active vCPU (Vitaly Kuznetsov) [2074835] - x86/kvm: Silence per-cpu pr_info noise about KVM clocks and steal time (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vPMCs when retiring branch instructions (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vPMCs when retiring instructions (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Add pmc->intr to refactor kvm_perf_overflow{_intr}() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Reuse pmc_perf_hw_id() and drop find_fixed_event() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Refactoring find_arch_event() to pmc_perf_hw_id() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Setup pmc->eventsel for fixed PMCs (Vitaly Kuznetsov) [2074835] - KVM: x86: avoid out of bounds indices for fixed performance counters (Vitaly Kuznetsov) [2074835] - KVM: VMX: Mark VCPU_EXREG_CR3 dirty when !CR0_PG -> CR0_PG if EPT + !URG (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Reconstruct shadow page root if the guest PDPTEs is changed (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs() (Vitaly Kuznetsov) [2074835] - Revert "KVM: X86: Update mmu->pdptrs only when it is changed" (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Add mirror command tests (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Fix sev_ioctl() (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Fix test_sev_mirror() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Wake vCPU when delivering posted IRQ even if vCPU == this vCPU (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to verify TRIPLE_FAULT on invalid L2 guest state (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Synthesize TRIPLE_FAULT for L2 if emulation is required (Vitaly Kuznetsov) [2074835] - KVM: VMX: Always clear vmx->fail on emulation_required (Vitaly Kuznetsov) [2074835] - selftests: KVM: Fix non-x86 compiling (Vitaly Kuznetsov) [2074835] - KVM: x86: Always set kvm_run->if_flag (Vitaly Kuznetsov) [2074835] - KVM: x86: remove PMU FIXED_CTR3 from msrs_to_save_all (Vitaly Kuznetsov) [2074835] - KVM: x86: Retry page fault if MMU reload is pending and root has no sp (Vitaly Kuznetsov) [2074835] - KVM: selftests: vmx_pmu_msrs_test: Drop tests mangling guest visible CPUIDs (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop guest CPUID check for host initiated writes to MSR_IA32_PERF_CAPABILITIES (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add test to verify KVM doesn't explode on "bad" I/O (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't WARN if userspace mucks with RCX during string I/O exit (Vitaly Kuznetsov) [2074835] - KVM: X86: Raise #GP when clearing CR0_PG in 64 bit mode (Vitaly Kuznetsov) [2074835] - selftests: KVM: avoid failures due to reserved HyperTransport region (Vitaly Kuznetsov) [2074835] - KVM: x86: Ignore sparse banks size for an "all CPUs", non-sparse IPI req (Vitaly Kuznetsov) [2074835] - KVM: Add Makefile.kvm for common files, use it for x86 (Vitaly Kuznetsov) [2074835] - KVM: Introduce CONFIG_HAVE_KVM_DIRTY_RING (Vitaly Kuznetsov) [2074835] - KVM: x86: selftests: svm_int_ctl_test: fix intercept calculation (Vitaly Kuznetsov) [2074835] - KVM: VMX: Clean up PI pre/post-block WARNs (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Ensure vCPU honors event request if posting nested IRQ fails (Vitaly Kuznetsov) [2074835] - KVM: x86: add a tracepoint for APICv/AVIC interrupt delivery (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Implement Enlightened MSR Bitmap feature (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Track whether changes in L0 require MSR bitmap for L2 to be rebuilt (Vitaly Kuznetsov) [2074835] - KVM: VMX: Introduce vmx_msr_bitmap_l01_changed() helper (Vitaly Kuznetsov) [2074835] - KVM: x86: Exit to userspace if emulation prepared a completion callback (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Don't use Enlightened MSR Bitmap for L3 (Vitaly Kuznetsov) [2074835] - KVM: x86: Use different callback if msr access comes from the emulator (Vitaly Kuznetsov) [2074835] - KVM: x86: Add an emulation type to handle completion of user exits (Vitaly Kuznetsov) [2074835] - KVM: x86: Handle 32-bit wrap of EIP for EMULTYPE_SKIP with flat code seg (Vitaly Kuznetsov) [2074835] - KVM: Clear pv eoi pending bit only when it is set (Vitaly Kuznetsov) [2074835] - KVM: x86: don't print when fail to read/write pv eoi memory (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove mmu parameter from load_pdptrs() (Vitaly Kuznetsov) [2074835] - KVM: X86: Rename gpte_is_8_bytes to has_4_byte_gpte and invert the direction (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use ept_caps_to_lpage_level() in hardware_setup() (Vitaly Kuznetsov) [2074835] - KVM: X86: Add parameter huge_page_level to kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [2074835] - KVM: X86: Add huge_page_level to __reset_rsvds_bits_mask_ept() (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove mmu->translate_gpa (Vitaly Kuznetsov) [2074835] - KVM: X86: Add parameter struct kvm_mmu *mmu into mmu->gva_to_gpa() (Vitaly Kuznetsov) [2074835] - KVM: X86: Calculate quadrant when !role.gpte_is_8_bytes (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove useless code to set role.gpte_is_8_bytes when role.direct (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove unused declaration of __kvm_mmu_free_some_pages() (Vitaly Kuznetsov) [2074835] - KVM: X86: Fix comment in __kvm_mmu_create() (Vitaly Kuznetsov) [2074835] - KVM: X86: Skip allocating pae_root for vcpu->arch.guest_mmu when !tdp_enabled (Vitaly Kuznetsov) [2074835] - KVM: SVM: Allocate sd->save_area with __GFP_ZERO (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename get_max_npt_level() to get_npt_level() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Change comments about vmx_get_msr() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use kvm_set_msr_common() for MSR_IA32_TSC_ADJUST in the default way (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Update msr value after kvm_set_user_return_msr() succeeds (Vitaly Kuznetsov) [2074835] - KVM: VMX: Avoid to rdmsrl(MSR_IA32_SYSENTER_ESP) (Vitaly Kuznetsov) [2074835] - KVM: X86: Update mmu->pdptrs only when it is changed (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove kvm_register_clear_available() (Vitaly Kuznetsov) [2074835] - KVM: vmx, svm: clean up mass updates to regs_avail/regs_dirty bits (Vitaly Kuznetsov) [2074835] - KVM: VMX: Update vmcs.GUEST_CR3 only when the guest CR3 is dirty (Vitaly Kuznetsov) [2074835] - KVM: X86: Mark CR3 dirty when vcpu->arch.cr3 is changed (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove references to VCPU_EXREG_CR3 (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove outdated comment in svm_load_mmu_pgd() (Vitaly Kuznetsov) [2074835] - KVM: X86: Move CR0 pdptr_bits into header file as X86_CR0_PDPTR_BITS (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add and use X86_CR4_PDPTR_BITS when !enable_ept (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add and use X86_CR4_TLBFLUSH_BITS when !enable_ept (Vitaly Kuznetsov) [2074835] - KVM: SVM: Track dirtiness of PDPTRs even if NPT is disabled (Vitaly Kuznetsov) [2074835] - KVM: VMX: Mark VCPU_EXREG_PDPTR available in ept_save_pdptrs() (Vitaly Kuznetsov) [2074835] - KVM: X86: Ensure that dirty PDPTRs are loaded (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Add module param to control PMU virtualization (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove vCPU from PI wakeup list before updating PID.NV (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move Posted Interrupt ndst computation out of write loop (Vitaly Kuznetsov) [2074835] - KVM: VMX: Read Posted Interrupt "control" exactly once per loop iteration (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save/restore IRQs (instead of CLI/STI) during PI pre/post block (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop pointless PI.NDST update when blocking (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use boolean returns for Posted Interrupt "test" helpers (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop unnecessary PI logic to handle impossible conditions (Vitaly Kuznetsov) [2074835] - KVM: VMX: Skip Posted Interrupt updates if APICv is hard disabled (Vitaly Kuznetsov) [2074835] - KVM: Add helpers to wake/query blocking vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86: Invoke kvm_vcpu_block() directly for non-HALTED wait states (Vitaly Kuznetsov) [2074835] - KVM: x86: Directly block (instead of "halting") UNINITIALIZED vCPUs (Vitaly Kuznetsov) [2074835] - KVM: Don't redo ktime_get() when calculating halt-polling stop/deadline (Vitaly Kuznetsov) [2074835] - KVM: stats: Add stat to detect if vcpu is currently blocking (Vitaly Kuznetsov) [2074835] - KVM: Split out a kvm_vcpu_block() helper from kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Rename kvm_vcpu_block() => kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Drop obsolete kvm_arch_vcpu_block_finish() (Vitaly Kuznetsov) [2074835] - KVM: x86: Tweak halt emulation helper names to free up kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Don't block+unblock when halt-polling is successful (Vitaly Kuznetsov) [2074835] - KVM: Reconcile discrepancies in halt-polling stats (Vitaly Kuznetsov) [2074835] - KVM: Refactor and document halt-polling stats update helper (Vitaly Kuznetsov) [2074835] - KVM: Update halt-polling stats if and only if halt-polling was attempted (Vitaly Kuznetsov) [2074835] - KVM: Force PPC to define its own rcuwait object (Vitaly Kuznetsov) [2074835] - KVM: SVM: Ensure target pCPU is read once when signalling AVIC doorbell (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't unblock vCPU w/ Posted IRQ if IRQs are disabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86: change TLB flush indicator to bool (Vitaly Kuznetsov) [2074835] - KVM: Avoid atomic operations when kicking the running vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86/MMU: Simplify flow of vmx_get_mt_mask (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Propagate memslot const qualifier (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove need for a vcpu from mmu_try_to_unsync_pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove need for a vcpu from kvm_slot_page_track_is_active (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use shadow page role to detect PML-unfriendly pages for L2 (Vitaly Kuznetsov) [2074835] - KVM: nSVM: introduce struct vmcb_ctrl_area_cached (Vitaly Kuznetsov) [2074835] - KVM: nSVM: split out __nested_vmcb_check_controls (Vitaly Kuznetsov) [2074835] - KVM: nSVM: use svm->nested.save to load vmcb12 registers and avoid TOC/TOU races (Vitaly Kuznetsov) [2074835] - KVM: nSVM: use vmcb_save_area_cached in nested_vmcb_valid_sregs() (Vitaly Kuznetsov) [2074835] - KVM: nSVM: rename nested_load_control_from_vmcb12 in nested_copy_vmcb_control_to_cache (Vitaly Kuznetsov) [2074835] - KVM: nSVM: introduce svm->nested.save to cache save area before checks (Vitaly Kuznetsov) [2074835] - KVM: nSVM: move nested_vmcb_check_cr3_cr4 logic in nested_vmcb_valid_sregs (Vitaly Kuznetsov) [2074835] - KVM: Dynamically allocate "new" memslots from the get-go (Vitaly Kuznetsov) [2074835] - KVM: Wait 'til the bitter end to initialize the "new" memslot (Vitaly Kuznetsov) [2074835] - KVM: Optimize overlapping memslots check (Vitaly Kuznetsov) [2074835] - KVM: Optimize gfn lookup in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: Call kvm_arch_flush_shadow_memslot() on the old slot in kvm_invalidate_memslot() (Vitaly Kuznetsov) [2074835] - KVM: Keep memslots in tree-based structures instead of array-based ones (Vitaly Kuznetsov) [2074835] - KVM: Use interval tree to do fast hva lookup in memslots (Vitaly Kuznetsov) [2074835] - KVM: Resolve memslot ID via a hash table instead of via a static array (Vitaly Kuznetsov) [2074835] - KVM: Move WARN on invalid memslot index to update_memslots() (Vitaly Kuznetsov) [2074835] - KVM: x86: Use nr_memslot_pages to avoid traversing the memslots array (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't call kvm_mmu_change_mmu_pages() if the count hasn't changed (Vitaly Kuznetsov) [2074835] - KVM: Don't make a full copy of the old memslot in __kvm_set_memory_region() (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't assume old/new memslots are non-NULL at memslot commit (Vitaly Kuznetsov) [2074835] - KVM: Use prepare/commit hooks to handle generic memslot metadata updates (Vitaly Kuznetsov) [2074835] - KVM: Stop passing kvm_userspace_memory_region to arch memslot hooks (Vitaly Kuznetsov) [2074835] - KVM: PPC: Avoid referencing userspace memory region in memslot updates (Vitaly Kuznetsov) [2074835] - KVM: x86: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: s390: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: arm64: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: Let/force architectures to deal with arch specific memslot data (Vitaly Kuznetsov) [2074835] - KVM: Use "new" memslot's address space ID instead of dedicated param (Vitaly Kuznetsov) [2074835] - KVM: Resync only arch fields when slots_arch_lock gets reacquired (Vitaly Kuznetsov) [2074835] - KVM: Open code kvm_delete_memslot() into its only caller (Vitaly Kuznetsov) [2074835] - KVM: Require total number of memslot pages to fit in an unsigned long (Vitaly Kuznetsov) [2074835] - KVM: Convert kvm_for_each_vcpu() to using xa_for_each_range() (Vitaly Kuznetsov) [2074835] - KVM: arm64: vgic-v3: Fix vcpu index comparison (Vitaly Kuznetsov) [2074835] - KVM: Use 'unsigned long' as kvm_for_each_vcpu()'s index (Vitaly Kuznetsov) [2074835] - KVM: Convert the kvm->vcpus array to a xarray (Vitaly Kuznetsov) [2074835] - KVM: Move wiping of the kvm->vcpus array to common code (Vitaly Kuznetsov) [2074835] - KVM: MMU: update comment on the number of page role combinations (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Retry page fault if root is invalidated by memslot update (Vitaly Kuznetsov) [2074835] - KVM: VMX: Set failure code in prepare_vmcs02() (Vitaly Kuznetsov) [2074835] - KVM: ensure APICv is considered inactive if there is no APIC (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix reserved bits for AMD PerfEvtSeln register (Vitaly Kuznetsov) [2074835] - x86: Snapshot thread flags (Vitaly Kuznetsov) [2074835] - thread_info: Add helpers to snapshot thread flags (Vitaly Kuznetsov) [2074835] - KVM: fix avic_set_running for preemptable kernels (Vitaly Kuznetsov) [2074835] - KVM: VMX: clear vmx_x86_ops.sync_pir_to_irr if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: SEV: accept signals in sev_lock_two_vms (Vitaly Kuznetsov) [2074835] - KVM: SEV: do not take kvm->lock when destroying (Vitaly Kuznetsov) [2074835] - KVM: SEV: Prohibit migration of a VM that has mirrors (Vitaly Kuznetsov) [2074835] - KVM: SEV: Do COPY_ENC_CONTEXT_FROM with both VMs locked (Vitaly Kuznetsov) [2074835] - selftests: sev_migrate_tests: add tests for KVM_CAP_VM_COPY_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: move mirror status to destination of KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: initialize regions_list of a mirror VM (Vitaly Kuznetsov) [2074835] - KVM: SEV: cleanup locking for KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: do not use list_replace_init on an empty list (Vitaly Kuznetsov) [2074835] - KVM: x86: Use a stable condition around all VT-d PI paths (Vitaly Kuznetsov) [2074835] - KVM: x86: check PIR even for vCPUs with disabled APICv (Vitaly Kuznetsov) [2074835] - KVM: VMX: prepare sync_pir_to_irr for running with APICv disabled (Vitaly Kuznetsov) [2074835] - KVM: selftests: page_table_test: fix calculation of guest_test_phys_mem (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Handle "default" period when selectively waking kthread (Vitaly Kuznetsov) [2074835] - KVM: MMU: shadow nested paging does not have PKU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove spurious TLB flushes in TDP MMU zap collapsible path (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use yield-safe TDP MMU root iter in MMU notifier unmapping (Vitaly Kuznetsov) [2074835] - KVM: X86: Use vcpu->arch.walk_mmu for kvm_mmu_invlpg() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Make sure kvm_create_max_vcpus test won't hit RLIMIT_NOFILE (Vitaly Kuznetsov) [2074835] - KVM: x86: Forbid KVM_SET_CPUID{,2} after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: selftests: Avoid KVM_SET_CPUID2 after KVM_RUN in hyperv_features test (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Emulate guest TLB flush on nested VM-Enter with new vpid12 (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Abide to KVM_REQ_TLB_FLUSH_GUEST request on nested vmentry/vmexit (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Flush current VPID (L1 vs. L2) for KVM_REQ_TLB_FLUSH_GUEST (Vitaly Kuznetsov) [2074835] - KVM: SEV: expose KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM capability (Vitaly Kuznetsov) [2074835] - selftests: sev_migrate_tests: free all VMs (Vitaly Kuznetsov) [2074835] - selftests: fix check for circular KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: x86: ignore APICv if LAPIC is not enabled (Vitaly Kuznetsov) [2074835] - KVM: downgrade two BUG_ONs to WARN_ON_ONCE (Vitaly Kuznetsov) [2074835] - KVM: VMX: do not use uninitialized gfn_to_hva_cache (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Pass parameter flush as false in kvm_tdp_mmu_zap_collapsible_sptes() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip tlb flush if it has been done in zap_gfn_range() (Vitaly Kuznetsov) [2074835] - x86/kvm: remove unused ack_notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: Disallow user memslot with size that exceeds "unsigned long" (Vitaly Kuznetsov) [2074835] - KVM: Ensure local memslot copies operate on up-to-date arch-specific data (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix TLB flush range when handling disconnected pt (Vitaly Kuznetsov) [2074835] - KVM: x86: Assume a 64-bit hypercall for guests with protected state (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add /x86_64/sev_migrate_tests to .gitignore (Vitaly Kuznetsov) [2074835] - KVM: SEV: Fix typo in and tweak name of cmd_allowed_from_miror() (Vitaly Kuznetsov) [2074835] - KVM: SEV: Drop a redundant setting of sev->asid during initialization (Vitaly Kuznetsov) [2074835] - KVM: SEV: WARN if SEV-ES is marked active but SEV is not (Vitaly Kuznetsov) [2074835] - KVM: SEV: Set sev_info.active after initial checks in sev_guest_init() (Vitaly Kuznetsov) [2074835] - KVM: SEV: Disallow COPY_ENC_CONTEXT_FROM if target has created vCPUs (Vitaly Kuznetsov) [2074835] - KVM: Kill kvm_map_gfn() / kvm_unmap_gfn() and gfn_to_pfn_cache (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use a gfn_to_hva_cache for vmptrld (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use kvm_read_guest_offset_cached() for nested VMCS check (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Use sizeof_field() instead of open-coding it (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use kvm_{read,write}_guest_cached() for shadow_vmcs12 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: include EFER.LMA in extended mmu role (Vitaly Kuznetsov) [2074835] - KVM: nVMX: don't use vcpu->arch.efer when checking host state on nested state load (Vitaly Kuznetsov) [2074835] - KVM: Fix steal time asm constraints (Vitaly Kuznetsov) [2074835] - KVM: x86: Move Intel Processor Trace interrupt handler to vmx.c (Vitaly Kuznetsov) [2074835] - KVM: Move x86's perf guest info callbacks to generic KVM (Vitaly Kuznetsov) [2074835] - KVM: x86: More precisely identify NMI from guest when handling PMI (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop current_vcpu for kvm_running_vcpu + kvm_arch_vcpu variable (Vitaly Kuznetsov) [2074835] - perf/core: Rework guest callbacks to prepare for static_call support (Vitaly Kuznetsov) [2074835] - perf: Protect perf_guest_cbs with RCU (Vitaly Kuznetsov) [2074835] - KVM: x86: Register Processor Trace interrupt hook iff PT enabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86: Register perf callbacks after calling vendor's hardware_setup() (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix uninitialized eoi_exit_bitmap usage in vcpu_load_eoi_exitmap() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use perf_test_destroy_vm in memslot_modification_stress_test (Vitaly Kuznetsov) [2074835] - KVM: selftests: Wait for all vCPU to be created before entering guest mode (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move vCPU thread creation and joining to common helpers (Vitaly Kuznetsov) [2074835] - KVM: selftests: Sync perf_test_args to guest during VM creation (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fill per-vCPU struct during "perf_test" VM creation (Vitaly Kuznetsov) [2074835] - KVM: selftests: Start at iteration 0 instead of -1 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Create VM with adjusted number of guest pages for perf tests (Vitaly Kuznetsov) [2074835] - KVM: selftests: Remove perf_test_args.host_page_size (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move per-VM GPA into perf_test_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use perf util's per-vCPU GPA/pages in demand paging test (Vitaly Kuznetsov) [2074835] - KVM: selftests: Capture per-vCPU GPA in perf_test_vcpu_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use shorthand local var to access struct perf_tests_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Require GPA to be aligned when backed by hugepages (Vitaly Kuznetsov) [2074835] - KVM: selftests: Assert mmap HVA is aligned when using HugeTLB (Vitaly Kuznetsov) [2074835] - KVM: selftests: Expose align() helpers to tests (Vitaly Kuznetsov) [2074835] - KVM: selftests: Explicitly state indicies for vm_guest_mode_params array (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add event channel upcall support to xen_shinfo_test (Vitaly Kuznetsov) [2074835] - KVM: SEV: unify cgroup cleanup code for svm_vm_migrate_from (Vitaly Kuznetsov) [2074835] - KVM: x86: move guest_pv_has out of user_access section (Vitaly Kuznetsov) [2074835] - KVM: Move INVPCID type check from vmx and svm to the common kvm_handle_invpcid() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add a helper function to retrieve the GPR index for INVPCID, INVVPID, and INVEPT (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Clean up x2APIC MSR handling for L2 (Vitaly Kuznetsov) [2074835] - KVM: VMX: Macrofy the MSR bitmap getters and setters (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Handle dynamic MSR intercept toggling (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Query current VMCS when determining if MSR bitmaps are in use (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't update vcpu->arch.pv_eoi.msr_val when a bogus value was written to MSR_KVM_PV_EOI_EN (Vitaly Kuznetsov) [2074835] - KVM: x86: Rename kvm_lapic_enable_pv_eoi() (Vitaly Kuznetsov) [2074835] - kvm: mmu: Use fast PF path for access tracking of huge pages when possible (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Properly dereference rcu-protected TDP MMU sptep iterator (Vitaly Kuznetsov) [2074835] - kvm: x86: Convert return type of *is_valid_rdpmc_ecx() to bool (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix recording of guest steal time / preempted status (Vitaly Kuznetsov) [2074835] - selftest: KVM: Add intra host migration tests (Vitaly Kuznetsov) [2074835] - selftest: KVM: Add open sev dev helper (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add support for SEV-ES intra host migration (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add support for SEV intra host migration (Vitaly Kuznetsov) [2074835] - KVM: SEV: provide helpers to charge/uncharge misc_cg (Vitaly Kuznetsov) [2074835] - KVM: generalize "bugged" VM to "dead" VM (Vitaly Kuznetsov) [2074835] - EFI: Introduce the new AMD Memory Encryption GUID. (Vitaly Kuznetsov) [2074835] - x86/kvm: Add AMD SEV specific Hypercall3 (Vitaly Kuznetsov) [2074835] - KVM: x86: SGX must obey the KVM_INTERNAL_ERROR_EMULATION protocol (Vitaly Kuznetsov) [2074835] - KVM: x86: On emulation failure, convey the exit reason, etc. to userspace (Vitaly Kuznetsov) [2074835] - KVM: x86: Get exit_reason as part of kvm_x86_ops.get_exit_info (Vitaly Kuznetsov) [2074835] - KVM: x86: Clarify the kvm_run.emulation_failure structure layout (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fix nested SVM tests when built with clang (Vitaly Kuznetsov) [2074835] - kvm: x86: Remove stale declaration of kvm_no_apic_vcpu (Vitaly Kuznetsov) [2074835] - KVM: x86: Move SVM's APICv sanity check to common x86 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Extract zapping of rmaps for gfn range to separate helper (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop a redundant remote TLB flush in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop a redundant, broken remote TLB flush (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't unload MMU in kvm_vcpu_flush_tlb_guest() (Vitaly Kuznetsov) [2074835] - KVM: X86: pair smp_wmb() of mmu_try_to_unsync_pages() with smp_rmb() (Vitaly Kuznetsov) [2074835] - KVM: emulate: Comment on difference between RDPMC implementation and manual (Vitaly Kuznetsov) [2074835] - KVM: x86: Add vendor name to kvm_x86_ops, use it for error messages (Vitaly Kuznetsov) [2074835] - kvm: x86: mmu: Make NX huge page recovery period configurable (Vitaly Kuznetsov) [2074835] - KVM: vPMU: Fill get_msr MSR_CORE_PERF_GLOBAL_OVF_CTRL w/ 0 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename slot_handle_leaf to slot_handle_level_4k (Vitaly Kuznetsov) [2074835] - KVM: VMX: RTIT_CTL_BRANCH_EN has no dependency on other CPUID bit (Vitaly Kuznetsov) [2074835] - KVM: VMX: Rename pt_desc.addr_range to pt_desc.num_address_ranges (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use precomputed vmx->pt_desc.addr_range (Vitaly Kuznetsov) [2074835] - KVM: VMX: Restore host's MSR_IA32_RTIT_CTL when it's not zero (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: clean up prefetch/prefault/speculative naming (Vitaly Kuznetsov) [2074835] - KVM: cleanup allocation of rmaps and page tracking data (Vitaly Kuznetsov) [2074835] - selftests: KVM: Introduce system counter offset test (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add helpers for vCPU device attributes (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add test for KVM_{GET,SET}_CLOCK (Vitaly Kuznetsov) [2074835] - kvm: x86: protect masterclock with a seqcount (Vitaly Kuznetsov) [2074835] - KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK (Vitaly Kuznetsov) [2074835] - KVM: x86: avoid warning with -Wbitwise-instead-of-logical (Vitaly Kuznetsov) [2074835] - KVM: x86: only allocate gfn_track when necessary (Vitaly Kuznetsov) [2074835] - KVM: x86: add config for non-kvm users of page tracking (Vitaly Kuznetsov) [2074835] - nSVM: Check for reserved encodings of TLB_CONTROL in nested VMCB (Vitaly Kuznetsov) [2074835] - kvm: use kvfree() in kvm_arch_free_vm() (Vitaly Kuznetsov) [2074835] - KVM: x86: Expose Predictive Store Forwarding Disable (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in make_spte and mmu_try_to_unsync_pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in rmap_add (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass struct kvm_page_fault to mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass kvm_mmu_page struct to make_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: set ad_disabled in TDP MMU role (Vitaly Kuznetsov) [2074835] - KVM: MMU: remove unnecessary argument to mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: clean up make_spte return value (Vitaly Kuznetsov) [2074835] - KVM: MMU: inline set_spte in FNAME(sync_page) (Vitaly Kuznetsov) [2074835] - KVM: MMU: inline set_spte in mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in page_fault_handle_page_track (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Pass the memslot around via struct kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: unify tdp_mmu_map_set_spte_atomic and tdp_mmu_set_spte_atomic_no_dirty_log (Vitaly Kuznetsov) [2074835] - KVM: MMU: mark page dirty in make_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fold rmap_recycle into rmap_add (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Verify shadow walk doesn't terminate early in page faults (Vitaly Kuznetsov) [2074835] - KVM: MMU: change tracepoints arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change disallowed_hugepage_adjust() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_mmu_hugepage_adjust() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change fast_page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change tdp_mmu_map_handle_target_level() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_tdp_mmu_map() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change FNAME(fetch)() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change __direct_map() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change handle_abnormal_pfn() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_faultin_pfn() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change page_fault_handle_page_track() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change direct_page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change mmu->page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: Introduce struct kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass unadulterated gpa to direct_page_fault (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix potential race in KVM_GET_CLOCK (Vitaly Kuznetsov) [2074835] - KVM: x86: extract KVM_GET_CLOCK/KVM_SET_CLOCK to separate functions (Vitaly Kuznetsov) [2074835] - kvm: x86: abstract locking around pvclock_update_vm_gtod_copy (Vitaly Kuznetsov) [2074835] - KVM: X86: Move PTE present check from loop body to __shadow_walk_next() (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: implement nested TSC scaling (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: add module param to control TSC scaling (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: add module param to control LBR virtualization (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: don't copy pause related settings (Vitaly Kuznetsov) [2074835] - kvm: irqfd: avoid update unmodified entries of the routing (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't check unsync if the original spte is writible (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't unsync pagetables when speculative (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove FNAME(update_pte) (Vitaly Kuznetsov) [2074835] - KVM: X86: Zap the invalid list after remote tlb flushing (Vitaly Kuznetsov) [2074835] - KVM: X86: Change kvm_sync_page() to return true when remote flush is needed (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove kvm_mmu_flush_or_zap() (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't flush current tlb on shadow page modification (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fix kvm_vm_free() in cr4_cpuid_sync and vmx_tsc_adjust tests (Vitaly Kuznetsov) [2074835] - kvm: selftests: Fix spelling mistake "missmatch" -> "mismatch" (Vitaly Kuznetsov) [2074835] - KVM: x86: Manually retrieve CPUID.0x1 when getting FMS for RESET/INIT (Vitaly Kuznetsov) [2074835] - KVM: x86: WARN on non-zero CRs at RESET to detect improper initalization (Vitaly Kuznetsov) [2074835] - KVM: SVM: Move RESET emulation to svm_vcpu_reset() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move RESET emulation to vmx_vcpu_reset() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop explicit zeroing of MSR guest values at vCPU creation (Vitaly Kuznetsov) [2074835] - KVM: x86: Fold fx_init() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct setting of XCR0 for guest during vCPU create (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct setting of CR0.ET for guests during vCPU create (Vitaly Kuznetsov) [2074835] - KVM: x86: Simplify retrieving the page offset when loading PDTPRs (Vitaly Kuznetsov) [2074835] - KVM: x86: Subsume nested GPA read helper into load_pdptrs() (Vitaly Kuznetsov) [2074835] - kvm: rename KVM_MAX_VCPU_ID to KVM_MAX_VCPU_IDS (Vitaly Kuznetsov) [2074835] - KVM: Make kvm_make_vcpus_request_mask() use pre-allocated cpu_kick_mask (Vitaly Kuznetsov) [2074835] - KVM: Pre-allocate cpumasks for kvm_make_all_cpus_request_except() (Vitaly Kuznetsov) [2074835] - KVM: Drop 'except' parameter from kvm_make_vcpus_request_mask() (Vitaly Kuznetsov) [2074835] - KVM: Optimize kvm_make_vcpus_request_mask() a bit (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Avoid calling kvm_make_vcpus_request_mask() with vcpu_mask==NULL (Vitaly Kuznetsov) [2074835] - KVM: use vma_pages() helper (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Reset vmxon_ptr upon VMXOFF emulation. (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline to_svm() (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline vmload() / vmsave() (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline sev_*guest() (Vitaly Kuznetsov) [2074835] - KVM: Remove tlbs_dirty (Vitaly Kuznetsov) [2074835] - KVM: X86: fix lazy allocation of rmaps (Vitaly Kuznetsov) [2074835] - KVM: Remove unnecessary export of kvm_{inc,dec}_notifier_count() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop 'shared' param from tdp_mmu_link_page() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add detailed page size stats (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: bump mmu notifier count in kvm_zap_gfn_range (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: fix parameters to kvm_flush_remote_tlbs_with_address (Vitaly Kuznetsov) [2074835] - Revert "KVM: x86/mmu: Allow zap gfn range to operate under the mmu read lock" (Vitaly Kuznetsov) [2074835] - KVM: X86: Introduce mmu_rmaps_stat per-vm debugfs file (Vitaly Kuznetsov) [2074835] - KVM: X86: Introduce kvm_mmu_slot_lpages() helpers (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Protect marking SPs unsync when using TDP MMU with spinlock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't step down in the TDP iterator when zapping all SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't leak non-leaf SPTEs when zapping all SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename __gfn_to_rmap to gfn_to_rmap (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Leverage vcpu->last_used_slot in tdp_mmu_map_handle_target_level (Vitaly Kuznetsov) [2074835] - KVM: const-ify all relevant uses of struct kvm_memory_slot (Vitaly Kuznetsov) [2074835] - KVM: Don't take mmu_lock for range invalidation unless necessary (Vitaly Kuznetsov) [2074835] - KVM: Block memslot updates across range_start() and range_end() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Lazily allocate memslot rmaps (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip rmap operations if rmaps not allocated (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Tear down roots before kvm_mmu_zap_all_fast returns (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fast invalidation for TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow enabling/disabling dirty logging under MMU read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow zapping collapsible SPTEs to use MMU read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow zap gfn range to operate under the mmu read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow yielding during MMU notifier unmap/zap, if possible (Vitaly Kuznetsov) [2074835] - KVM: Take mmu_lock when handling MMU notifier iff the hva hits a memslot (Vitaly Kuznetsov) [2074835] - KVM: Move MMU notifier's mmu_lock acquisition into common helper (Vitaly Kuznetsov) [2074835] - KVM: Kill off the old hva-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: PPC: Convert to the gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: arm64: Convert to the gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: Move x86's MMU notifier memslot walkers to generic code (Vitaly Kuznetsov) [2074835] - KVM: Assert that notifier count is elevated in .change_pte() (Vitaly Kuznetsov) [2074835] - KVM: Move arm64's MMU notifier trace events to generic code (Vitaly Kuznetsov) [2074835] - KVM: Switch to new MMU notifiers API (Vitaly Kuznetsov) [2074835] - scsi: qedi: Remove redundant flush_workqueue() calls (Nilesh Javali) [2044837] - scsi: qedi: Fix SYSFS_FLAG_FW_SEL_BOOT formatting (Nilesh Javali) [2044837] - xfs: reserve quota for dir expansion when linking/unlinking files (Carlos Maiolino) [2082833] - iwlwifi: fix use-after-free (Jose Ignacio Tornos Martinez) [2091539] - nfs: fix broken handling of the softreval mount option (Benjamin Coddington) [2083224] - ethtool: extend ringparam setting/getting API with rx_buf_len (Ivan Vecera) [2091857] - ethtool: add support to set/get rx buf len via ethtool (Ivan Vecera) [2091857] - ethtool: add support to set/get tx copybreak buf size via ethtool (Ivan Vecera) [2091857]- x86/apic: Make TSC deadline timer detection message visible (David Arcari) [2098086] - x86/apic: Move TSC deadline timer debug printk (David Arcari) [2098086] - [s390] KVM: s390: selftests: Add error memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add more copy memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add named stages for memop test (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add macro as abstraction for MEM_OP (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Split memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Fix lockdep issue in vm memop (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add missing vm MEM_OP size check (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Clarify key argument for MEM_OP in api docs (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Update api documentation for memop ioctl (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add capability for storage key extension of MEM_OP IOCTL (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Rename existing vcpu memop functions (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add vm IOCTL for key checked guest absolute memory access (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add optional storage key checking to MEMOP IOCTL (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Test TEST PROTECTION emulation (Claudio Imbrenda) [1984917] - [s390] KVM: s390: handle_tprot: Honor storage keys (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Honor storage keys when accessing guest memory (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: Add copy_from/to_user_key functions (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: fix compile error (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: introduce bit field for OAC specifier (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Cleanup access to guest pages (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Refactor access address range check (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Refactor gpa and length calculation (Claudio Imbrenda) [1984917] - xfs: reorder iunlink remove operation in xfs_ifree (Brian Foster) [2081146] - tcp: fix TCP socket rehash stats mis-accounting (Antoine Tenart) [2073082] - tcp: export count for rehash attempts (Antoine Tenart) [2073082] - tcp: add SRTT to SCM_TIMESTAMPING_OPT_STATS (Antoine Tenart) [2073082] - tcp: add new SNMP counter for drops when try to queue in rcv queue (Antoine Tenart) [2073082] - tcp: add SNMP counter for zero-window drops (Antoine Tenart) [2073082] - net: udp: introduce UDP_MIB_MEMERRORS for udp_mem (Antoine Tenart) [2073082] - context_tracking: Sync up lockdep and cpu irqs state to prevent false warnings (Waiman Long) [2098074] - platform/x86: ISST: Fix possible circular locking dependency detected (Prarit Bhargava) [2072659] - platform/x86: ISST: use semi-colons instead of commas (Prarit Bhargava) [2072659] - platform/x86: intel_speed_select_if: Move to intel sub-directory (Prarit Bhargava) [2072659] - x86/sgx: Free backing memory after faulting the enclave page (Vladis Dronov) [2081351] - x86/sgx: Fix missing poison handling in reclaimer (Vladis Dronov) [2081351] - x86/sgx: Silence softlockup detection when releasing large enclaves (Vladis Dronov) [2081351] - selftests/sgx: Treat CC as one argument (Vladis Dronov) [2081351] - selftests/x86: Add validity check and allow field splitting (Vladis Dronov) [2081351] - selftests/sgx: Remove extra newlines in test output (Vladis Dronov) [2081351] - selftests/sgx: Ensure enclave data available during debug print (Vladis Dronov) [2081351] - selftests/sgx: Do not attempt enclave build without valid enclave (Vladis Dronov) [2081351] - selftests/sgx: Fix NULL-pointer-dereference upon early test failure (Vladis Dronov) [2081351] - x86/sgx: Remove .fixup usage (Vladis Dronov) [2081351] - x86/sgx: Fix NULL pointer dereference on non-SGX systems (Vladis Dronov) [2081351] - x86/sgx: Add an attribute for the amount of SGX memory in a NUMA node (Vladis Dronov) [2081351] - vmxnet3: disable overlay offloads if UPT device does not support (Kamal Heib) [2100226] - vmxnet3: update to version 7 (Kamal Heib) [2100226] - vmxnet3: use ext1 field to indicate encapsulated packet (Kamal Heib) [2100226] - vmxnet3: limit number of TXDs used for TSO packet (Kamal Heib) [2100226] - vmxnet3: add command to set ring buffer sizes (Kamal Heib) [2100226] - vmxnet3: add support for out of order rx completion (Kamal Heib) [2100226] - vmxnet3: add support for large passthrough BAR register (Kamal Heib) [2100226] - vmxnet3: add support for capability registers (Kamal Heib) [2100226] - vmxnet3: prepare for version 7 changes (Kamal Heib) [2100226] - net: vmxnet3: fix possible NULL pointer dereference in vmxnet3_rq_cleanup() (Kamal Heib) [2100226] - net: vmxnet3: fix possible use-after-free bugs in vmxnet3_rq_alloc_rx_buf() (Kamal Heib) [2100226]- iommu/amd: Enable swiotlb in all cases (Jerry Snitselaar) [2072179] - iommu/arm-smmu-v3-sva: Fix mm use-after-free (Jerry Snitselaar) [2072179] - dma-direct: don't over-decrypt memory (Jerry Snitselaar) [2072179] - dma-direct: always leak memory that can't be re-encrypted (Jerry Snitselaar) [2072179] - dma-direct: clean up the remapping checks in dma_direct_alloc (Jerry Snitselaar) [2072179] - dma-direct: don't call dma_set_decrypted for remapped allocations (Jerry Snitselaar) [2072179] - dma-direct: factor out dma_set_{de,en}crypted helpers (Jerry Snitselaar) [2072179] - swiotlb: max mapping size takes min align mask into account (Jerry Snitselaar) [2072179] - dma-debug: change allocation mode from GFP_NOWAIT to GFP_ATIOMIC (Jerry Snitselaar) [2072179] - dma-direct: don't fail on highmem CMA pages in dma_direct_alloc_pages (Jerry Snitselaar) [2072179] - dma-direct: factor out a helper for DMA_ATTR_NO_KERNEL_MAPPING allocations (Jerry Snitselaar) [2072179] - swiotlb: make swiotlb_exit a no-op if SWIOTLB_FORCE is set (Jerry Snitselaar) [2072179] - dma-direct: use is_swiotlb_active in dma_direct_map_page (Jerry Snitselaar) [2072179] - iommu/vt-d: Calculate mask for non-aligned flushes (Jerry Snitselaar) [2072179] - iommu/amd: Call memunmap in error path (Jerry Snitselaar) [2072179] - iommu/vt-d: Drop duplicate check in dma_pte_free_pagetable() (Jerry Snitselaar) [2072179] - iommu/vt-d: Use correctly sized arguments for bit field (Jerry Snitselaar) [2072179] - Revert "iommu/arm-smmu-v3: Decrease the queue size of evtq and priq" (Jerry Snitselaar) [2072179] - iommu: Fix potential use-after-free during probe (Jerry Snitselaar) [2072179] - dma-direct: avoid redundant memory sync for swiotlb (Jerry Snitselaar) [2072179] - iommu/iova: Fix race between FQ timeout and teardown (Jerry Snitselaar) [2072179] - iommu/io-pgtable-arm: Fix table descriptor paddr formatting (Jerry Snitselaar) [2072179] - iommu: Extend mutex lock scope in iommu_probe_device() (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: mask/unmask interrupts on suspend/resume (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: setup the INTX registers on mask/unmask (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: re-enable after resume (Jerry Snitselaar) [2072179] - iommu/amd: Restore GA log/tail pointer on host resume (Jerry Snitselaar) [2072179] - iommu/amd: Clarify AMD IOMMUv2 initialization messages (Jerry Snitselaar) [2072179] - iommu/vt-d: Avoid duplicate removing in __domain_mapping() (Jerry Snitselaar) [2072179] - iommu/vt-d: Fix an unbalanced rcu_read_lock/rcu_read_unlock() (Jerry Snitselaar) [2072179] - iommu/vt-d: Check FL and SL capability sanity in scalable mode (Jerry Snitselaar) [2072179] - iommu/vt-d: Add present bit check in pasid entry setup helpers (Jerry Snitselaar) [2072179] - iommu/vt-d: Preset A/D bits for user space DMA usage (Jerry Snitselaar) [2072179] - iommu/vt-d: Remove unnecessary oom message (Jerry Snitselaar) [2072179] - iommu/vt-d: Enable ATS for the devices in SATC table (Jerry Snitselaar) [1893460] - iommu/vt-d: Parse SATC reporting structure (Jerry Snitselaar) [1893460] - iommu/vt-d: Dump DMAR translation structure when DMA fault occurs (Jerry Snitselaar) [1868826] - nvme: fix typos in nvme status code values (Gopal Tiwari) [2091824] - Adding CONFIG_NVME_VERBOSE_ERRORS to RHEL-8. (Gopal Tiwari) [2091824] - nvme: add missing status values to verbose logging (Gopal Tiwari) [2091824] - nvme: don't print verbose errors for internal passthrough requests (Gopal Tiwari) [2091824] - nvme: add verbose error logging (Gopal Tiwari) [2091824] - perf/x86/msr: Add Raptor Lake CPU support (Michael Petlan) [2094572] - perf/x86: Add Intel Raptor Lake support (Michael Petlan) [2094572] - perf/x86/cstate: Add SAPPHIRERAPIDS_X CPU support (Michael Petlan) [2094572] - perf/x86/cstate: Add Raptor Lake support (Michael Petlan) [2094572] - [s390] s390/lcs: fix variable dereferenced before check (Mete Durlu) [2043835] - [s390] s390/ctcm: fix potential memory leak (Mete Durlu) [2043835] - [s390] s390/ctcm: fix variable dereferenced before check (Mete Durlu) [2043835] - [s390] s390/net: sort out physical vs virtual pointers usage (Mete Durlu) [2043835] - [s390] s390/qeth: remove check for packing mode in qeth_check_outbound_queue() (Mete Durlu) [2043835] - [s390] s390/qeth: fine-tune .ndo_select_queue() (Mete Durlu) [2043835] - [s390] s390/qeth: don't offer .ndo_bridge_* ops for OSA devices (Mete Durlu) [2043835] - [s390] s390/qeth: split up L2 netdev_ops (Mete Durlu) [2043835] - [s390] s390/qeth: simplify qeth_receive_skb() (Mete Durlu) [2043835] - [s390] s390/lcs: add braces around empty function body (Mete Durlu) [2043835] - [s390] s390/ctcm: add __printf format attribute to ctcm_dbf_longtext (Mete Durlu) [2043835] - [s390] s390/ctcm: fix format string (Mete Durlu) [2043835] - [s390] s390/qeth: allocate RX queue at probe time (Mete Durlu) [2043835] - [s390] s390/qeth: update kerneldoc for qeth_add_hw_header() (Mete Durlu) [2043835] - [s390] s390/qeth: fix kernel doc comments (Mete Durlu) [2043835] - [s390] s390/qeth: add __printf format attribute to qeth_dbf_longtext (Mete Durlu) [2043835] - [s390] s390/qeth: fix various format strings (Mete Durlu) [2043835] - [s390] s390/qeth: don't keep track of Input Queue count (Mete Durlu) [2043835] - [s390] s390/qeth: clarify remaining dev_kfree_skb_any() users (Mete Durlu) [2043835] - [s390] s390/qeth: move qdio's QAOB cache into qeth (Mete Durlu) [2043835] - [s390] s390/qeth: improve trace entries for MAC address (un)registration (Mete Durlu) [2043835] - [s390] s390/netiucv: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/lcs: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/ctcm: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/qeth: clean up device_type management (Mete Durlu) [2043835] - [s390] s390/qeth: clean up QETH_PROT_* naming (Mete Durlu) [2043835] - mm/memcg: Free percpu stats memory of dying memcg's (Waiman Long) [2004037] - netfilter: flowtable: fix TCP flow teardown (Florian Westphal) [2088234] - netfilter: conntrack: annotate data-races around ct->timeout (Florian Westphal) [2088234] - netfilter: conntrack: initialize ct->timeout (Florian Westphal) [2088234] - NFSv4: Fix free of uninitialized nfs4_label on referral lookup. (Scott Mayhew) [2090994] - md: fix double free of io_acct_set bioset (Nigel Croxon) [2094076] - md: Don't set mddev private to NULL in raid0 pers->free (Nigel Croxon) [2094076] - md: protect md_unregister_thread from reentrancy (Nigel Croxon) [2094076] - md: don't unregister sync_thread with reconfig_mutex held (Nigel Croxon) [2094076] - raid5: don't set the discard_alignment queue limit (Nigel Croxon) [2094076] - md: Replace role magic numbers with defined constants (Nigel Croxon) [2094076] - md/raid0: Ignore RAID0 layout if the second zone has only one device (Nigel Croxon) [2094076] - md/raid5: Annotate functions that hold device_lock with __must_hold (Nigel Croxon) [2094076] - md/raid5-ppl: Annotate with rcu_dereference_protected() (Nigel Croxon) [2094076] - md/raid5: Annotate rdev/replacement access when mddev_lock is held (Nigel Croxon) [2094076] - md/raid5: Annotate rdev/replacement accesses when nr_pending is elevated (Nigel Croxon) [2094076] - md/raid5: Add __rcu annotation to struct disk_info (Nigel Croxon) [2094076] - md/raid5: Un-nest struct raid5_percpu definition (Nigel Croxon) [2094076] - md/raid5: Cleanup setup_conf() error returns (Nigel Croxon) [2094076] - md: replace deprecated strlcpy & remove duplicated line (Nigel Croxon) [2094076] - md/bitmap: don't set sb values if can't pass sanity check (Nigel Croxon) [2094076] - md: fix an incorrect NULL check in md_reload_sb (Nigel Croxon) [2094076] - md: fix an incorrect NULL check in does_sb_need_changing (Nigel Croxon) [2094076] - md: use msleep() in md_notify_reboot() (Nigel Croxon) [2094076] - ext4: force overhead calculation if the s_overhead_cluster makes no sense (Lukas Czerner) [2079886] - ext4: fix overhead calculation to account for the reserved gdt blocks (Lukas Czerner) [2079886] - ext4: limit length to bitmap_maxbytes - blocksize in punch_hole (Lukas Czerner) [2079886] - ext4: fix use-after-free in ext4_search_dir (Lukas Czerner) [2079886] - ext4: fix symlink file size not match to file content (Lukas Czerner) [2079886] - ext4: fix fallocate to use file_modified to update permissions consistently (Lukas Czerner) [2085623] - ext4: remove unused macro MPAGE_DA_EXTENT_TAIL (Lukas Czerner) [2079886] - ext4: add missing braces in ext4_ext_drop_refs() (Lukas Czerner) [2079886] - ext4: remove obsolete comment from ext4_can_extents_be_merged() (Lukas Czerner) [2079886] - ext4: make some functions static in extents.c (Lukas Czerner) [2079886] - ext4: remove redundant S_ISREG() checks from ext4_fallocate() (Lukas Czerner) [2079886] - ext4: clean up len and offset checks in ext4_fallocate() (Lukas Czerner) [2079886] - ext4: remove ext4_{ind,ext}_calc_metadata_amount() (Lukas Czerner) [2079886] - ext4: fix fs corruption when tring to remove a non-empty directory with IO error (Lukas Czerner) [2079886] - ext4: fix error handling in ext4_restore_inline_data() (Lukas Czerner) [2079886] - jbd2: export jbd2_journal_[grab|put]_journal_head (Lukas Czerner) [2079886] - ext4: don't use the orphan list when migrating an inode (Lukas Czerner) [2079886] - ext4: set csum seed in tmp inode while migrating to extents (Lukas Czerner) [2079886] - ext4: fix an use-after-free issue about data=journal writeback mode (Lukas Czerner) [2079886] - ext4: fix bh ref count on error paths (Lukas Czerner) [2079886] - ext4: fix a possible ABBA deadlock due to busy PA (Lukas Czerner) [2079886] - ext4: discard preallocations before releasing group lock (Lukas Czerner) [2079886] - ext4: make ext_debug() implementation to use pr_debug() (Lukas Czerner) [2079886] - ext4: mballoc: make mb_debug() implementation to use pr_debug() (Lukas Czerner) [2079886] - ext4: improve ext_debug() msg in case of block allocation failure (Lukas Czerner) [2079886] - ext4: use BIT() macro for BH_** state bits (Lukas Czerner) [2079886] - ext4: balloc: use task_pid_nr() helper (Lukas Czerner) [2079886] - ext4: mballoc: fix possible NULL ptr & remove BUG_ONs from DOUBLE_CHECK (Lukas Czerner) [2079886] - ext4: mballoc: refactor code inside DOUBLE_CHECK into separate function (Lukas Czerner) [2079886] - ext4: mballoc: make ext4_mb_use_preallocated() return type as bool (Lukas Czerner) [2079886] - ext4: mballoc: simplify error handling in ext4_init_mballoc() (Lukas Czerner) [2079886] - ext4: mballoc: fix few other format specifier in mb_debug() (Lukas Czerner) [2079886] - ext4: mballoc: correct the mb_debug() format specifier for pa_len var (Lukas Czerner) [2079886] - ext4: mballoc: add more mb_debug() msgs (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_show_ac() (Lukas Czerner) [2079886] - ext4: mballoc: print bb_free info even when it is 0 (Lukas Czerner) [2079886] - ext4: fix dead loop in ext4_mb_new_blocks (Lukas Czerner) [2079886] - ext4: mballoc: use lock for checking free blocks while retrying (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_good_group() (Lukas Czerner) [2079886] - ext4: mballoc: introduce pcpu seqcnt for freeing PA to improve ENOSPC handling (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_discard_preallocations() (Lukas Czerner) [2079886] - ext4: mballoc: add blocks to PA list under same spinlock after allocating blocks (Lukas Czerner) [2079886] - ext4: fix lazy initialization next schedule time computation in more granular unit (Lukas Czerner) [2079886] - ext4: fix avefreec in find_group_orlov (Lukas Czerner) [2079886] - ext4: allow the dax flag to be set and cleared on inline directories (Lukas Czerner) [2079886] - ext4: annotate data race in jbd2_journal_dirty_metadata() (Lukas Czerner) [2079886] - ext4: annotate data race in start_this_handle() (Lukas Czerner) [2079886] - ext4: fix superblock checksum failure when setting password salt (Lukas Czerner) [2079886] - ext4: correctly report "not supported" for {usr,grp}jquota when !CONFIG_QUOTA (Lukas Czerner) [2079886] - jbd2: fix ocfs2 corrupt when clearing block group bits (Lukas Czerner) [2079886] - ext4: fix ext4_empty_dir() for directories with holes (Lukas Czerner) [2079886] - ext4: allow directory holes (Lukas Czerner) [2079886] - net/af_packet: make sure to pull mac header (Hangbin Liu) [2066976] - rcu/nocb: Make rcu_core() callbacks acceleration preempt-safe (Waiman Long) [2097549] - redhat: drop expired testing secureboot signing key (Jarod Wilson) [2095199]- atlantic: Fix issue in the pm resume flow. (Igor Russkikh) [2002395] - atlantic: Fix driver resume flow. (Igor Russkikh) [2002395] - Build intel_sdsi with {tools_make} (Prarit Bhargava) [1971951] - redhat/kernel.spec.template: Add intel_sdsi tool (Prarit Bhargava) [1971951] - redhat/configs: Add CONFIG_INTEL_SDSI (Prarit Bhargava) [1971951] - selftests: sdsi: test sysfs setup (Prarit Bhargava) [1971951] - tools arch x86: Add Intel SDSi provisiong tool (Prarit Bhargava) [1971951] - platform/x86: Add Intel Software Defined Silicon driver (Prarit Bhargava) [1971951] - platform/x86/intel: Fix 'rmmod pmt_telemetry' panic (Prarit Bhargava) [2080426] - x86/cpu: Add new Alderlake and Raptorlake CPU model numbers (Prarit Bhargava) [2040019 2040059] - netfilter: nf_tables: sanitize nft_set_desc_concat_parse() (Florian Westphal) [2096403] {CVE-2022-2078} - mt76: mt7921: Fix the error handling path of mt7921_pci_probe() (Íñigo Huguet) [2096758] - Watchdog: sp5100_tco: Enable Family 17h+ CPUs (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Add initialization using EFCH MMIO (Sudheesh Mavila) [2031643] - kernel/resource: Introduce request_mem_region_muxed() (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Refactor MMIO base address initialization (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Move timer initialization into function (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: Add support for get_timeleft (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: Enable watchdog on Family 17h devices if disabled (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: drop warning after registering device (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: drop warning after calling watchdog_init_timeout (Sudheesh Mavila) [2031643] - Reinstate some of "swiotlb: rework "fix info leak with DMA_FROM_DEVICE"" (Chris von Recklinghausen) [2059701] {CVE-2022-0854} - swiotlb: fix info leak with DMA_FROM_DEVICE (Chris von Recklinghausen) [2059701] {CVE-2022-0854} - redhat/configs: Add CONFIG_S390_UV_UAPI (Claudio Imbrenda) [1984905] - [s390] s390/uv_uapi: depend on CONFIG_S390 (Claudio Imbrenda) [1984905] - [s390] drivers/s390/char: Add Ultravisor io device (Claudio Imbrenda) [1984905] - cpufreq: Specify default governor on command line (Prarit Bhargava) [2083766] - cpufreq: Fix locking issues with governors (Prarit Bhargava) [2083766] - cpufreq: Register governors at core_initcall (Prarit Bhargava) [2083766] - nvme: fix RCU hole that allowed for endless looping in multipath round robin (Gopal Tiwari) [2078806] - nvme-multipath: fix hang when disk goes live over reconnect (Gopal Tiwari) [2078806] - nvme-tcp: send H2CData PDUs based on MAXH2CDATA (Gopal Tiwari) [2078806] - nvme: also mark passthrough-only namespaces ready in nvme_update_ns_info (Gopal Tiwari) [2078806] - nvme: don't return an error from nvme_configure_metadata (Gopal Tiwari) [2078806] - nvme-tcp: fix bogus request completion when failing to send AER (Gopal Tiwari) [2078806] - nvme-fabrics: remove the unneeded ret variable in nvmf_dev_show (Gopal Tiwari) [2078806] - nvme-pci: add the IGNORE_DEV_SUBNQN quirk for Intel P4500/P4600 SSDs (Gopal Tiwari) [2078806] - nvme-fabrics: print out valid arguments when reading from /dev/nvme-fabrics (Gopal Tiwari) [2078806] - nvmet-tcp: fix possible list corruption for unexpected command failure (Gopal Tiwari) [2078806] - nvme: fix use after free when disconnecting a reconnecting ctrl (Gopal Tiwari) [2078806] - nvme-multipath: set ana_log_size to 0 after free ana_log_buf (Gopal Tiwari) [2078806] - nvme: disable namespace access for unsupported metadata (Gopal Tiwari) [2078806] - nvme: report write pointer for a full zone as zone start + zone len (Gopal Tiwari) [2078806] - nvme: show subsys nqn for duplicate cntlids (Gopal Tiwari) [2078806] - nvme-pci: add NO APST quirk for Kioxia device (Gopal Tiwari) [2078806] - nvme: fix write zeroes pi (Gopal Tiwari) [2078806] - nvmet: use flex_array_size and struct_size (Gopal Tiwari) [2078806] - nvme: drop scan_lock and always kick requeue list when removing namespaces (Gopal Tiwari) [2078806] - nvmet: use struct_size over open coded arithmetic (Gopal Tiwari) [2078806] - nvme-pci: clear shadow doorbell memory on resets (Gopal Tiwari) [2078806] - nvmet: use macro definitions for setting cmic value (Gopal Tiwari) [2078806] - nvme-rdma: fix error code in nvme_rdma_setup_ctrl (Gopal Tiwari) [2078806] - nvmet: use macro definition for setting nmic value (Gopal Tiwari) [2078806] - nvmet-rdma: implement get_max_queue_size controller op (Gopal Tiwari) [2078806] - nvmet: add get_max_queue_size op for controllers (Gopal Tiwari) [2078806] - nvme-rdma: limit the maximal queue size for RDMA controllers (Gopal Tiwari) [2078806] - nvme: paring quiesce/unquiesce (Gopal Tiwari) [2078806] - nvme: add APIs for stopping/starting admin queue (Gopal Tiwari) [2078806] - nvme: prepare for pairing quiescing and unquiescing (Gopal Tiwari) [2078806] - nvme: apply nvme API to quiesce/unquiesce admin queue (Gopal Tiwari) [2078806] - nvme: loop: clear NVME_CTRL_ADMIN_Q_STOPPED after admin queue is reallocated (Gopal Tiwari) [2078806] - nvme: remove the call to nvme_update_disk_info in nvme_ns_remove (Gopal Tiwari) [2078806] - nvme: remove the GENHD_FL_UP check in nvme_ns_remove (Gopal Tiwari) [2078806] - nvme-rdma: destroy cm id before destroy qp to avoid use after free (Gopal Tiwari) [2078806] - nvme: only call synchronize_srcu when clearing current path (Gopal Tiwari) [2078806] - nvme-multipath: revalidate paths during rescan (Gopal Tiwari) [2078806] - nvme: remove the unused NVME_NS_* enum (Gopal Tiwari) [2078806] - nvme: Have NVME_FABRICS select NVME_CORE instead of transport drivers (Gopal Tiwari) [2078806] - nvme-pci: disable hmb on idle suspend (Gopal Tiwari) [2078806] - nvme: allow user toggling hmb usage (Gopal Tiwari) [2078806] - nvme-fabrics: remove superfluous nvmf_host_put in nvmf_parse_options (Gopal Tiwari) [2078806] - nvme: add set feature tracing support (Gopal Tiwari) [2078806] - nvmet: add set feature tracing support (Gopal Tiwari) [2078806] - nvme-pci: cmb sysfs: one file, one value (Gopal Tiwari) [2078806] - nvme-pci: use attribute group for cmb sysfs (Gopal Tiwari) [2078806] - compiler.h: Introduce absolute_pointer macro (Gopal Tiwari) [2078806] - vdpa: Fix vdpa-vhost driver (Laurent Vivier) [2093851] - nl80211: fix locking in nl80211_set_tx_bitrate_mask() (Íñigo Huguet) [2059994] - mac80211_hwsim: call ieee80211_tx_prepare_skb under RCU protection (Íñigo Huguet) [2059994] - mac80211_hwsim: fix RCU protected chanctx access (Íñigo Huguet) [2059994] - mac80211: Reset MBSSID parameters upon connection (Íñigo Huguet) [2059994] - cfg80211: retrieve S1G operating channel number (Íñigo Huguet) [2059994] - nl80211: validate S1G channel width (Íñigo Huguet) [2059994] - mac80211: fix rx reordering with non explicit / psmp ack policy (Íñigo Huguet) [2059994] - ath11k: reduce the wait time of 11d scan and hw scan while add interface (Íñigo Huguet) [2059994] - iwlwifi: iwl-dbg: Use del_timer_sync() before freeing (Íñigo Huguet) [2059994] - bus: mhi: host: pci_generic: Flush recovery worker during freeze (Íñigo Huguet) [2059994] - bus: mhi: host: pci_generic: Add missing poweroff() PM callback (Íñigo Huguet) [2059994] - mac80211: fix ht_capa printout in debugfs (Íñigo Huguet) [2059994] - cfg80211: hold bss_lock while updating nontrans_list (Íñigo Huguet) [2059994] - nl80211: correctly check NL80211_ATTR_REG_ALPHA2 size (Íñigo Huguet) [2059994] - ath9k: Fix usage of driver-private space in tx_info (Íñigo Huguet) [2059994] - brcmfmac: sdio: Fix undefined behavior due to shift overflowing the constant (Íñigo Huguet) [2059994] - mt76: Fix undefined behavior due to shift overflowing the constant (Íñigo Huguet) [2059994] - Revert "ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax" (Íñigo Huguet) [2059994] - ath9k: Properly clear TX status area before reporting to mac80211 (Íñigo Huguet) [2059994] - iwlwifi: mvm: Don't fail if PPAG isn't supported (Íñigo Huguet) [2059994] - bus: mhi: Make mhi_state_str[] array static inline and move to common.h (Íñigo Huguet) [2059994] - bus: mhi: Move common MHI definitions out of host directory (Íñigo Huguet) [2059994] - bus: mhi: host: Rename "struct mhi_tre" to "struct mhi_ring_element" (Íñigo Huguet) [2059994] - bus: mhi: Cleanup the register definitions used in headers (Íñigo Huguet) [2059994] - bus: mhi: Use bitfield operations for handling DWORDs of ring elements (Íñigo Huguet) [2059994] - bus: mhi: Use bitfield operations for register read and write (Íñigo Huguet) [2059994] - bus: mhi: Move host MHI code to "host" directory (Íñigo Huguet) [2059994] - bus: mhi: Fix MHI DMA structure endianness (Íñigo Huguet) [2059994] - bus: mhi: Fix pm_state conversion to string (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Quectel EM1xx series (Íñigo Huguet) [2059994] - rfkill: make new event layout opt-in (Íñigo Huguet) [2059994] - rtw89: implement stop and resume channels transmission v1 (Íñigo Huguet) [2059994] - rtw89: extend mac tx_en bits from 16 to 32 (Íñigo Huguet) [2059994] - rtw89: change value assignment style of rtw89_mac_cfg_gnt() (Íñigo Huguet) [2059994] - rtw89: 8852c: add mac_ctrl_path and mac_cfg_gnt APIs (Íñigo Huguet) [2059994] - rtw89: disable FW and H2C function if CPU disabled (Íñigo Huguet) [2059994] - rtw89: initialize preload window of D-MAC (Íñigo Huguet) [2059994] - rtw89: modify MAC enable functions (Íñigo Huguet) [2059994] - rtw89: add config_rf_reg_v1 to configure RF parameter tables (Íñigo Huguet) [2059994] - rtw89: 8852c: add read/write rf register function (Íñigo Huguet) [2059994] - rtw89: 8852c: add setting of TB UL TX power offset (Íñigo Huguet) [2059994] - rtw89: 8852c: add write/read crystal function in CFO tracking (Íñigo Huguet) [2059994] - rtw89: modify dcfo_comp to share with chips (Íñigo Huguet) [2059994] - rtw89: Fix spelling mistake "Mis-Match" -> "Mismatch" (Íñigo Huguet) [2059994] - brcmfmac: p2p: Fix spelling mistake "Comback" -> "Comeback" (Íñigo Huguet) [2059994] - iwlwifi: mei: fix building iwlmei (Íñigo Huguet) [2059994] - mt76: fix monitor rx FCS error in DFS channel (Íñigo Huguet) [2059994] - mt76: mt7921: don't enable beacon filter when IEEE80211_CONF_CHANGE_MONITOR is set (Íñigo Huguet) [2059994] - mt76: fix wrong HE data rate in sniffer tool (Íñigo Huguet) [2059994] - mt76: mt7915: introduce 802.11ax multi-bss support (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_init_hw in a dedicated work (Íñigo Huguet) [2059994] - mt76: mt7921: add mt7921u driver (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_status_data in mac common code. (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_complete_skb in common mac code. (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_prepare_skb in common mac code (Íñigo Huguet) [2059994] - mt76: mt7921: update mt7921_skb_add_usb_sdio_hdr to support usb (Íñigo Huguet) [2059994] - mt76: mt7921: disable runtime pm for usb (Íñigo Huguet) [2059994] - mt76: usb: introduce __mt76u_init utility routine (Íñigo Huguet) [2059994] - mt76: usb: add req_type to ___mt76u_wr signature (Íñigo Huguet) [2059994] - mt76: usb: add req_type to ___mt76u_rr signature (Íñigo Huguet) [2059994] - mt76: mt7915: fix typos in comments (Íñigo Huguet) [2059994] - mt76: mt7915: fix phy cap in mt7915_set_stream_he_txbf_caps() (Íñigo Huguet) [2059994] - mt76: mt7915: fix beamforming mib stats (Íñigo Huguet) [2059994] - mt76: mt7915: set band1 TGID field in tx descriptor (Íñigo Huguet) [2059994] - mt76: fix invalid rssi report (Íñigo Huguet) [2059994] - mt76: use le32/16_get_bits() whenever possible (Íñigo Huguet) [2059994] - mt76: connac: make read-only array ba_range static const (Íñigo Huguet) [2059994] - mt76: mt7915: check for devm_pinctrl_get() failure (Íñigo Huguet) [2059994] - mt76: mt7921: get rid of mt7921_wait_for_mcu_init declaration (Íñigo Huguet) [2059994] - mt76: mt7915: add txpower init for 6GHz (Íñigo Huguet) [2059994] - mt76: mt7915: fix eeprom fields of txpower init values (Íñigo Huguet) [2059994] - mt76: mt7915: add 6 GHz support (Íñigo Huguet) [2059994] - mt76: connac: add 6 GHz support for wtbl and starec configuration (Íñigo Huguet) [2059994] - mt76: mt7915: allow beaconing on all chains (Íñigo Huguet) [2059994] - mt76: fix monitor mode crash with sdio driver (Íñigo Huguet) [2059994] - mt76: mt7921: fix mt7921_queues_acq implementation (Íñigo Huguet) [2059994] - mt76: mt7921: fix xmit-queue dump for usb and sdio (Íñigo Huguet) [2059994] - mt76: mt7921: make mt7921_init_tx_queues static (Íñigo Huguet) [2059994] - mt76: split single ldpc cap bit into bits (Íñigo Huguet) [2059994] - mt76: mt7915: fix DFS no radar detection event (Íñigo Huguet) [2059994] - mt76: mt7921: use mt76_hw instead of open coding it (Íñigo Huguet) [2059994] - mt76: mt7921: fix up the monitor mode (Íñigo Huguet) [2059994] - mt76: mt7663u: introduce mt7663u_mcu_power_on routine (Íñigo Huguet) [2059994] - mt76: mt7615: honor ret from mt7615_mcu_restart in mt7663u_mcu_init (Íñigo Huguet) [2059994] - rtw89: fix uninitialized variable of rtw89_append_probe_req_ie() (Íñigo Huguet) [2059994] - rtlwifi: rtl8821ae: fix typos in comments (Íñigo Huguet) [2059994] - rtlwifi: rtl8192cu: Add On Networks N150 (Íñigo Huguet) [2059994] - mwifiex: make read-only array wmm_oui static const (Íñigo Huguet) [2059994] - mac80211: update bssid_indicator in ieee80211_assign_beacon (Íñigo Huguet) [2059994] - mac80211: MBSSID channel switch (Íñigo Huguet) [2059994] - mac80211: MBSSID beacon handling in AP mode (Íñigo Huguet) [2059994] - mac80211: always have ieee80211_sta_restart() (Íñigo Huguet) [2059994] - mac80211: Add support to trigger sta disconnect on hardware restart (Íñigo Huguet) [2059994] - mac80211: fix potential double free on mesh join (Íñigo Huguet) [2059994] - mac80211: correct legacy rates check in ieee80211_calc_rx_airtime (Íñigo Huguet) [2059994] - nl80211: fix typo of NL80211_IF_TYPE_OCB in documentation (Íñigo Huguet) [2059994] - mac80211: Use GFP_KERNEL instead of GFP_ATOMIC when possible (Íñigo Huguet) [2059994] - mac80211: replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE (Íñigo Huguet) [2059994] - rtw89: 8852c: process logic efuse map (Íñigo Huguet) [2059994] - rtw89: 8852c: process efuse of phycap (Íñigo Huguet) [2059994] - rtw89: support DAV efuse reading operation (Íñigo Huguet) [2059994] - rtw89: 8852c: add chip::dle_mem (Íñigo Huguet) [2059994] - rtw89: add page_regs to handle v1 chips (Íñigo Huguet) [2059994] - rtw89: add chip_info::{h2c,c2h}_reg to support more chips (Íñigo Huguet) [2059994] - rtw89: add hci_func_en_addr to support variant generation (Íñigo Huguet) [2059994] - rtw89: add power_{on/off}_func (Íñigo Huguet) [2059994] - rtw89: read chip version depends on chip ID (Íñigo Huguet) [2059994] - rtw89: pci: use a struct to describe all registers address related to DMA channel (Íñigo Huguet) [2059994] - rtw89: pci: add V1 of PCI channel address (Íñigo Huguet) [2059994] - rtw89: pci: add struct rtw89_pci_info (Íñigo Huguet) [2059994] - rtw89: 8852c: add 8852c empty files (Íñigo Huguet) [2059994] - brcmfmac: make the read-only array pktflags static const (Íñigo Huguet) [2059994] - rtlwifi: rtl8192ce: remove duplicated function '_rtl92ce_phy_set_rf_sleep' (Íñigo Huguet) [2059994] - ath10k: Fix error handling in ath10k_setup_msa_resources (Íñigo Huguet) [2059994] - ath11k: remove unneeded flush_workqueue (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 72 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: acpi: move ppag code from mvm to fw/acpi (Íñigo Huguet) [2059994] - iwlwifi: dbg: check trigger data before access (Íñigo Huguet) [2059994] - iwlwifi: dbg: in sync mode don't call schedule (Íñigo Huguet) [2059994] - iwlwifi: use 4k queue size for Bz A-step (Íñigo Huguet) [2059994] - iwlwifi: pcie: fix SW error MSI-X mapping (Íñigo Huguet) [2059994] - iwlwifi: yoyo: dump IMR DRAM only for HW and FW error (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for IMR based on platform (Íñigo Huguet) [2059994] - iwlwifi: yoyo: disable IMR DRAM region if IMR is disabled (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove cipher scheme support (Íñigo Huguet) [2059994] - iwlwifi: Configure FW debug preset via module param. (Íñigo Huguet) [2059994] - iwlwifi: mvm: add a flag to reduce power command. (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 71 for AX devices (Íñigo Huguet) [2059994] - ath9k: make array voice_priority static const (Íñigo Huguet) [2059994] - rtw89: declare HE capabilities in 6G band (Íñigo Huguet) [2059994] - rtw89: fix HE PHY bandwidth capability (Íñigo Huguet) [2059994] - rtw89: add tx_wake notify for low ps mode (Íñigo Huguet) [2059994] - rtw89: 8852a: add ieee80211_ops::hw_scan (Íñigo Huguet) [2059994] - Revert "ath: add support for special 0x0 regulatory domain" (Íñigo Huguet) [2059994] - rtw89: get channel parameters of 160MHz bandwidth (Íñigo Huguet) [2059994] - mt76: fix dfs state issue with 160 MHz channels (Íñigo Huguet) [2059994] - mt76: mt7915: simplify conditional (Íñigo Huguet) [2059994] - mt76: mt7921: fix injected MPDU transmission to not use HW A-MSDU (Íñigo Huguet) [2059994] - mt76: mt7915e: Enable thermal management by default (Íñigo Huguet) [2059994] - mt76: mt7915e: Add a hwmon attribute to get the actual throttle state. (Íñigo Huguet) [2059994] - mt76: mt7915e: Fix degraded performance after temporary overheat (Íñigo Huguet) [2059994] - mt76: improve signal strength reporting (Íñigo Huguet) [2059994] - mt76: mt7915: use min_t() to make code cleaner (Íñigo Huguet) [2059994] - mt76: mt7915: fix the muru tlv issue (Íñigo Huguet) [2059994] - mt76: mt7915: check band idx for bcc event (Íñigo Huguet) [2059994] - mt76: mt7615: Fix assigning negative values to unsigned variable (Íñigo Huguet) [2059994] - mt76: connac: adjust wlan_idx size from u8 to u16 (Íñigo Huguet) [2059994] - mt76: mt7915: fix endianness warnings in mt7915_mac_tx_free() (Íñigo Huguet) [2059994] - mt76: mt7915: fix endianness warnings in mt7915_debugfs_rx_fw_monitor (Íñigo Huguet) [2059994] - mt76: mt7615: fix compiler warning on frame size (Íñigo Huguet) [2059994] - mt76: mt7915: initialize smps mode in mt7915_mcu_sta_rate_ctrl_tlv() (Íñigo Huguet) [2059994] - mt76: mt7915: introduce band_idx in mt7915_phy (Íñigo Huguet) [2059994] - mt76: mt7915: add support for MT7986 (Íñigo Huguet) [2059994] - ath10k: fix pointer arithmetic error in trace call (Íñigo Huguet) [2059994] - ath11k: add dbring debug support (Íñigo Huguet) [2059994] - ath11k: translate HE status to radiotap format (Íñigo Huguet) [2059994] - ath11k: decode HE status tlv (Íñigo Huguet) [2059994] - ath11k: switch to using ieee80211_tx_status_ext() (Íñigo Huguet) [2059994] - mt76: mt7921s: fix missing fc type/sub-type for 802.11 pkts (Íñigo Huguet) [2059994] - mt76: mt7915: fix potential memory leak of fw monitor packets (Íñigo Huguet) [2059994] - mt76: mt7915: Fix channel state update error issue (Íñigo Huguet) [2059994] - mt76: fix endianness errors in reverse_frag0_hdr_trans (Íñigo Huguet) [2059994] - mt76: mt7615: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7915: fix injected MPDU transmission to not use HW A-MSDU (Íñigo Huguet) [2059994] - rtw88: change rtw_info() to proper message level (Íñigo Huguet) [2059994] - rtw89: Limit the CFO boundaries of x'tal value (Íñigo Huguet) [2059994] - rtw89: phy: handle txpwr lmt/lmt_ru of 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: phy: handle txpwr lmt/lmt_ru of 6G band (Íñigo Huguet) [2059994] - ath11k: Fix frames flush failure caused by deadlock (Íñigo Huguet) [2059994] - ath11k: Handle failure in qmi firmware ready (Íñigo Huguet) [2059994] - ath11k: Invalidate cached reo ring entry before accessing it (Íñigo Huguet) [2059994] - ath: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - ath11k: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - ath10k: Replace zero-length array with flexible-array member (Íñigo Huguet) [2059994] - ath9k: use hw_random API instead of directly dumping into random.c (Íñigo Huguet) [2059994] - ath11k: configure RDDM size to mhi for recovery by firmware (Íñigo Huguet) [2059994] - ath11k: fix invalid m3 buffer address (Íñigo Huguet) [2059994] - ath11k: add ath11k_qmi_free_resource() for recovery (Íñigo Huguet) [2059994] - rtw89: core.h: Replace zero-length array with flexible-array member (Íñigo Huguet) [2059994] - brcmfmac: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - rtw89: fix RCU usage in rtw89_core_txq_push() (Íñigo Huguet) [2059994] - rtw88: coex: Update rtl8822c COEX version to 22020720 (Íñigo Huguet) [2059994] - rtw88: coex: Add C2H/H2C handshake with BT mailbox for asking HID Info (Íñigo Huguet) [2059994] - rtw88: coex: Add WLAN MIMO power saving for Bluetooth gaming controller (Íñigo Huguet) [2059994] - rtw88: coex: update BT PTA counter regularly (Íñigo Huguet) [2059994] - rtw88: coex: Improve WLAN throughput when HFP COEX (Íñigo Huguet) [2059994] - rtw88: 8822ce: add support for TX/RX 1ss mode (Íñigo Huguet) [2059994] - iwlwifi: dbg_ini: Split memcpy() to avoid multi-field write (Íñigo Huguet) [2059994] - iwlwifi: mvm: Fix an error code in iwl_mvm_up() (Íñigo Huguet) [2059994] - iwlwifi: Fix -EIO error code that is never returned (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: use kmemdup() to replace kzalloc + memcpy (Íñigo Huguet) [2059994] - iwlwifi: Fix syntax errors in comments (Íñigo Huguet) [2059994] - iwlwifi: dvm: use struct_size over open coded arithmetic (Íñigo Huguet) [2059994] - iwlwifi/fw: use struct_size over open coded arithmetic (Íñigo Huguet) [2059994] - iwlwifi: Make use of the helper macro LIST_HEAD() (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix off by one in iwl_mvm_stat_iterator_all_macs() (Íñigo Huguet) [2059994] - iwlwifi: yoyo: send hcmd to fw after dump collection completes. (Íñigo Huguet) [2059994] - iwlwifi: mvm: move only to an enabled channel (Íñigo Huguet) [2059994] - iwlwifi: mvm: update BAID allocation command again (Íñigo Huguet) [2059994] - iwlwifi: api: remove ttl field from TX command (Íñigo Huguet) [2059994] - iwlwifi: support new queue allocation command (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support dump policy for the dump size (Íñigo Huguet) [2059994] - iwlwifi: pcie: iwlwifi: fix device id 7F70 struct (Íñigo Huguet) [2059994] - iwlwifi: tlc: Add logs in rs_fw_rate_init func to print TLC configuration (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove iwl_mvm_disable_txq() flags argument (Íñigo Huguet) [2059994] - iwlwifi: remove command ID argument from queue allocation (Íñigo Huguet) [2059994] - iwlwifi: make iwl_txq_dyn_alloc_dma() return the txq (Íñigo Huguet) [2059994] - iwlwifi: fix small doc mistake for iwl_fw_ini_addr_val (Íñigo Huguet) [2059994] - iwlwifi: mvm: add additional info for boot info failures (Íñigo Huguet) [2059994] - iwlwifi: mvm: always remove the session protection after association (Íñigo Huguet) [2059994] - iwlwifi: mvm: make iwl_mvm_reconfig_scd() static (Íñigo Huguet) [2059994] - iwlwifi: mvm: refactor setting PPE thresholds in STA_HE_CTXT_CMD (Íñigo Huguet) [2059994] - iwlwifi: mvm: Disable WiFi bands selectively with BIOS (Íñigo Huguet) [2059994] - iwlwifi: mvm: add additional info for boot info failures (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't send BAID removal to the FW during hw_restart (Íñigo Huguet) [2059994] - iwlwifi: don't dump_stack() when we get an unexpected interrupt (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: handle deactivation notification (Íñigo Huguet) [2059994] - iwlwifi: mvm: Consider P2P GO operation during scan (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 70 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: Unify the scan iteration functions (Íñigo Huguet) [2059994] - iwlwifi: mei: use C99 initializer for device IDs (Íñigo Huguet) [2059994] - iwlwifi: debugfs: remove useless double condition (Íñigo Huguet) [2059994] - iwlwifi: remove unused macros (Íñigo Huguet) [2059994] - iwlwifi: eeprom: clean up macros (Íñigo Huguet) [2059994] - iwlwifi: drv: load tlv debug data earlier (Íñigo Huguet) [2059994] - iwlwifi: pcie: Adapt rx queue write pointer for Bz family (Íñigo Huguet) [2059994] - iwlwifi: pcie: adjust to Bz completion descriptor (Íñigo Huguet) [2059994] - iwlwifi: mvm: Passively scan non PSC channels only when requested so (Íñigo Huguet) [2059994] - iwlwifi: scan: Modify return value of a function (Íñigo Huguet) [2059994] - iwlwifi: yoyo: Avoid using dram data if allocation failed (Íñigo Huguet) [2059994] - iwlwifi: mvm: Correctly set fragmented EBS (Íñigo Huguet) [2059994] - iwlwifi: nvm: Correct HE capability (Íñigo Huguet) [2059994] - iwlwifi: mei: avoid -Wpointer-arith and -Wcast-qual warnings (Íñigo Huguet) [2059994] - iwlwifi: make some functions friendly to sparse (Íñigo Huguet) [2059994] - iwlwifi: avoid variable shadowing (Íñigo Huguet) [2059994] - iwlwifi: remove unused DC2DC_CONFIG_CMD definitions (Íñigo Huguet) [2059994] - iwlwifi: dbg-tlv: clean up iwl_dbg_tlv_update_drams() (Íñigo Huguet) [2059994] - iwlwifi: fw: make dump_start callback void (Íñigo Huguet) [2059994] - iwlwifi: pcie: make sure iwl_rx_packet_payload_len() will not underflow (Íñigo Huguet) [2059994] - iwlwifi: mvm: use debug print instead of WARN_ON() (Íñigo Huguet) [2059994] - iwlwifi: read and print OTP minor version (Íñigo Huguet) [2059994] - iwlwifi: add support for BZ-U and BZ-L HW (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for CT-KILL notification version 2 (Íñigo Huguet) [2059994] - iwlwifi: yoyo: remove DBGI_SRAM address reset writing (Íñigo Huguet) [2059994] - iwlwifi: mvm: support v3 of station HE context command (Íñigo Huguet) [2059994] - iwlwifi: yoyo: add IMR DRAM dump support (Íñigo Huguet) [2059994] - iwlwifi: yoyo: fix DBGC allocation flow (Íñigo Huguet) [2059994] - iwlwifi: pcie: add support for MS devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: align locking in D3 test debugfs (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't iterate unadded vifs when handling FW SMPS req (Íñigo Huguet) [2059994] - iwlwifi: advertise support for HE - DCM BPSK RX/TX (Íñigo Huguet) [2059994] - iwlwifi: mvm: only enable HE DCM if we also support TX (Íñigo Huguet) [2059994] - iwlwifi: yoyo: fix DBGI_SRAM ini dump header. (Íñigo Huguet) [2059994] - iwlwifi: dbg: add infra for tracking free buffer size (Íñigo Huguet) [2059994] - iwlwifi: mvm: starting from 22000 we have 32 Rx AMPDU sessions (Íñigo Huguet) [2059994] - iwlwifi: mvm: support new BAID allocation command (Íñigo Huguet) [2059994] - iwlwifi: mvm: refactor iwl_mvm_sta_rx_agg() (Íñigo Huguet) [2059994] - iwlwifi: cfg: add support for 1K BA queue (Íñigo Huguet) [2059994] - iwlwifi: avoid void pointer arithmetic (Íñigo Huguet) [2059994] - iwlwifi: fix various more -Wcast-qual warnings (Íñigo Huguet) [2059994] - iwlwifi: propagate (const) type qualifier (Íñigo Huguet) [2059994] - iwlwifi: de-const properly where needed (Íñigo Huguet) [2059994] - iwlwifi: make iwl_fw_lookup_cmd_ver() take a cmd_id (Íñigo Huguet) [2059994] - iwlwifi: mvm: fw: clean up hcmd struct creation (Íñigo Huguet) [2059994] - iwlwifi: prefer WIDE_ID() over iwl_cmd_id() (Íñigo Huguet) [2059994] - iwlwifi: mvm: allow enabling UHB TAS in the USA via ACPI setting (Íñigo Huguet) [2059994] - iwlwifi: mvm: offload channel switch timing to FW (Íñigo Huguet) [2059994] - iwlwifi: mvm: Don't call iwl_mvm_sta_from_mac80211() with NULL sta (Íñigo Huguet) [2059994] - mac80211_hwsim: Advertise support for EHT capabilities (Íñigo Huguet) [2059994] - mac80211: parse AddBA request with extended AddBA element (Íñigo Huguet) [2059994] - mac80211: calculate max RX NSS for EHT mode (Íñigo Huguet) [2059994] - mac80211: Add support for storing station EHT capabilities (Íñigo Huguet) [2059994] - mac80211: Handle station association response with EHT (Íñigo Huguet) [2059994] - mac80211: Add EHT capabilities to association/probe request (Íñigo Huguet) [2059994] - mac80211: Add initial support for EHT and 320 MHz channels (Íñigo Huguet) [2059994] - mac80211: Support parsing EHT elements (Íñigo Huguet) [2059994] - cfg80211: Support configuration of station EHT capabilities (Íñigo Huguet) [2059994] - nl80211: fix NL80211_HE_MAX_CAPABILITY_LEN (Íñigo Huguet) [2059994] - cfg80211: add NO-EHT flag to regulatory (Íñigo Huguet) [2059994] - nl80211: add support for 320MHz channel limitation (Íñigo Huguet) [2059994] - nl80211: add EHT MCS support (Íñigo Huguet) [2059994] - cfg80211: Add support for EHT 320 MHz channel width (Íñigo Huguet) [2059994] - cfg80211: Add data structures to capture EHT capabilities (Íñigo Huguet) [2059994] - ieee80211: add EHT 1K aggregation definitions (Íñigo Huguet) [2059994] - ieee80211: Add EHT (802.11be) definitions (Íñigo Huguet) [2059994] - mac80211_hwsim: Add custom regulatory for 6GHz (Íñigo Huguet) [2059994] - mac80211_hwsim: don't shadow a global variable (Íñigo Huguet) [2059994] - mac80211_hwsim: check TX and STA bandwidth (Íñigo Huguet) [2059994] - nl80211: accept only HE capability elements with valid size (Íñigo Huguet) [2059994] - mac80211: parse only HE capability elements with valid size (Íñigo Huguet) [2059994] - ieee80211: add helper to check HE capability element size (Íñigo Huguet) [2059994] - nl80211: use RCU to read regdom in reg get/dump (Íñigo Huguet) [2059994] - mac80211_hwsim: Add debugfs to control rx status RSSI (Íñigo Huguet) [2059994] - ieee80211: use tab to indent struct ieee80211_neighbor_ap_info (Íñigo Huguet) [2059994] - rtw89: handle TX/RX 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: declare if chip support 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: add 6G support to rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw89: extend subband for 6G band (Íñigo Huguet) [2059994] - rtw89: refine naming of rfk helpers with prefix (Íñigo Huguet) [2059994] - rtw89: make rfk helpers common across chips (Íñigo Huguet) [2059994] - brcmfmac: Add BCM43454/6 support (Íñigo Huguet) [2059994] - ath11k: fix destination monitor ring out of sync (Íñigo Huguet) [2059994] - ath11k: fix radar detection in 160 Mhz (Íñigo Huguet) [2059994] - ath11k: fix WARN_ON during ath11k_mac_update_vif_chan (Íñigo Huguet) [2059994] - ath11k: fix uninitialized rate_idx in ath11k_dp_tx_update_txcompl() (Íñigo Huguet) [2059994] - brcmfmac: of: remove redundant variable len (Íñigo Huguet) [2059994] - brcmfmac: p2p: Replace one-element arrays with flexible-array members (Íñigo Huguet) [2059994] - rtw89: coex: set EN bit to PLT register (Íñigo Huguet) [2059994] - rtw89: recover rates of rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw88: recover rates of rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw89: declare AP mode support (Íñigo Huguet) [2059994] - rtw89: debug: add stations entry to show ID assignment (Íñigo Huguet) [2059994] - rtw89: implement ieee80211_ops::start_ap and stop_ap (Íñigo Huguet) [2059994] - rtw89: maintain assoc/disassoc STA states of firmware and hardware (Íñigo Huguet) [2059994] - rtw89: only STA mode change vif_type mapping dynamically (Íñigo Huguet) [2059994] - rtw89: add addr_cam field to sta to support AP mode (Íñigo Huguet) [2059994] - rtw89: extend role_maintain to support AP mode (Íñigo Huguet) [2059994] - rtw88: fix use after free in rtw_hw_scan_update_probe_req() (Íñigo Huguet) [2059994] - mac80211: Remove redundent assignment channel_type (Íñigo Huguet) [2059994] - mac80211: remove useless ieee80211_vif_is_mesh() check (Íñigo Huguet) [2059994] - mac80211: fix struct ieee80211_tx_info size (Íñigo Huguet) [2059994] - mac80211: mlme: validate peer HE supported rates (Íñigo Huguet) [2059994] - mac80211: remove unused macros (Íñigo Huguet) [2059994] - cfg80211: pmsr: remove useless ifdef guards (Íñigo Huguet) [2059994] - mac80211: airtime: avoid variable shadowing (Íñigo Huguet) [2059994] - mac80211: mlme: add documentation from spec to code (Íñigo Huguet) [2059994] - mac80211: vht: use HE macros for parsing HE capabilities (Íñigo Huguet) [2059994] - ieee80211: radiotap: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - cfg80211: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - ieee80211: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - cfg80211: don't add non transmitted BSS to 6GHz scanned channels (Íñigo Huguet) [2059994] - ieee80211: fix HE SPR size calculation (Íñigo Huguet) [2059994] - cfg80211/mac80211: assume CHECKSUM_COMPLETE includes SNAP (Íñigo Huguet) [2059994] - mac80211: consider RX NSS in UHB connection (Íñigo Huguet) [2059994] - mac80211: limit bandwidth in HE capabilities (Íñigo Huguet) [2059994] - mt76: redefine mt76_for_each_q_rx to adapt mt7986 changes (Íñigo Huguet) [2059994] - mt76: dma: initialize skip_unmap in mt76_dma_rx_fill (Íñigo Huguet) [2059994] - mt76: do not always copy ethhdr in reverse_frag0_hdr_trans (Íñigo Huguet) [2059994] - mt76: mt76x02: use mt76_phy_dfs_state to determine radar detector state (Íñigo Huguet) [2059994] - mt76: mt7615: fix/rewrite the dfs state handling logic (Íñigo Huguet) [2059994] - mt76: mt7915: fix/rewrite the dfs state handling logic (Íñigo Huguet) [2059994] - mt76: mt76x02: improve tx hang detection (Íñigo Huguet) [2059994] - mt76x02: improve mac error check/reset reliability (Íñigo Huguet) [2059994] - mt76: mt7921s: run sleep mode by default (Íñigo Huguet) [2059994] - mt76: sdio: honor the largest Tx buffer the hardware can support (Íñigo Huguet) [2059994] - mt76: mt7915: fix the nss setting in bitrates (Íñigo Huguet) [2059994] - mt76: mt7915: update max_mpdu_size in mt7915_mcu_sta_amsdu_tlv() (Íñigo Huguet) [2059994] - mt76: mt7915: fix mcs_map in mt7915_mcu_set_sta_he_mcs() (Íñigo Huguet) [2059994] - mt76: mt7921s: fix a possible memory leak in mt7921_load_patch (Íñigo Huguet) [2059994] - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_sta (Íñigo Huguet) [2059994] - mt76: stop the radar detector after leaving dfs channel (Íñigo Huguet) [2059994] - mt76: mt7615: check sta_rates pointer in mt7615_sta_rate_tbl_update (Íñigo Huguet) [2059994] - mt76: mt7603: check sta_rates pointer in mt7603_sta_rate_tbl_update (Íñigo Huguet) [2059994] - mt76: mt7663s: flush runtime-pm queue after waking up the device (Íñigo Huguet) [2059994] - mt76: mt7615: add support for LG LGSBWAC02 (MT7663BUN) (Íñigo Huguet) [2059994] - mt76: mt7921: remove duplicated code in mt7921_mac_decode_he_radiotap (Íñigo Huguet) [2059994] - mt76: mt7915: add missing DATA4_TB_SPTL_REUSE1 to mt7915_mac_decode_he_radiotap (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_lmac_mapping in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: enable radar background detection (Íñigo Huguet) [2059994] - mt76: mt7915: report radar pattern if detected by rdd2 (Íñigo Huguet) [2059994] - mt76: mt7915: introduce rdd_monitor debugfs node (Íñigo Huguet) [2059994] - mt76: mt7915: enable radar trigger on rdd2 (Íñigo Huguet) [2059994] - mt76: mt7915: introduce mt7915_set_radar_background routine (Íñigo Huguet) [2059994] - mt76: mt7915: set bssinfo/starec command when adding interface (Íñigo Huguet) [2059994] - mt76: mt7921: toggle runtime-pm adding a monitor vif (Íñigo Huguet) [2059994] - mt76: mt7921: fix endianness issues in mt7921_mcu_set_tx() (Íñigo Huguet) [2059994] - mt76: sdio: disable interrupt in mt76s_sdio_irq (Íñigo Huguet) [2059994] - mt76: mt7921: fix crash when startup fails. (Íñigo Huguet) [2059994] - mt76: mt7921s: fix mt7921s_mcu_[fw|drv]_pmctrl (Íñigo Huguet) [2059994] - mt76: mt7921: fix ht mcs in mt7921_mac_add_txs_skb() (Íñigo Huguet) [2059994] - mt76: mt7915: fix ht mcs in mt7915_mac_add_txs_skb() (Íñigo Huguet) [2059994] - mt76: mt7615: fix a leftover race in runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: fix a leftover race in runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: do not always disable fw runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7915: add support for passing chip/firmware debug data to user space (Íñigo Huguet) [2059994] - mt76: mt7615e: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: mt7915: update bss_info with cipher after setting the group key (Íñigo Huguet) [2059994] - mt76: mt7615: update bss_info with cipher after setting the group key (Íñigo Huguet) [2059994] - mt76: connac: add support for passing the cipher field in bss_info (Íñigo Huguet) [2059994] - mt76: mt7921e: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: mt7615: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: set EDCA parameters with the MCU CE command (Íñigo Huguet) [2059994] - mt76: mt76_connac: fix MCU_CE_CMD_SET_ROC definition error (Íñigo Huguet) [2059994] - mt76: mt7921: forbid the doze mode when coredump is in progress (Íñigo Huguet) [2059994] - mt76: mt7921e: make dev->fw_assert usage consistent (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_rdd_cmd in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_set_rts_thresh (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_gen_dl_mode in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_init_download (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_patch_sem_ctrl/mt76_connac_mcu_start_patch (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_restart in common module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_start_firmware (Íñigo Huguet) [2059994] - mt76: mt7921: get rid of mt7921_mcu_get_eeprom (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_set_pm in connac module (Íñigo Huguet) [2059994] - mt76: connac: introduce is_connac_v1 utility routine (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_wtbl_update_hdr_trans in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_hdr_trans_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_ht_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_smps_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_uapsd (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_basic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_generic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_ba (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_ba_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_ba_tlv (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_basic_tlv in connac module (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_ext_tlv in connac module (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_omac_tlv in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: remove duplicated defs in mcu.h (Íñigo Huguet) [2059994] - mt76: mt7915: move pci specific code back to pci.c (Íñigo Huguet) [2059994] - mt76: mt7921s: update mt7921s_wfsys_reset sequence (Íñigo Huguet) [2059994] - mt76: mt7921s: clear MT76_STATE_MCU_RUNNING immediately after reset (Íñigo Huguet) [2059994] - mt76: sdio: lock sdio when it is needed (Íñigo Huguet) [2059994] - mt76: mt7915: use proper aid value in mt7915_mcu_sta_basic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: use proper aid value in mt7915_mcu_wtbl_generic_tlv in sta mode (Íñigo Huguet) [2059994] - mt76: make mt76_sar_capa static (Íñigo Huguet) [2059994] - mt76: mt7915: add device id for mt7916 (Íñigo Huguet) [2059994] - mt76: set wlan_idx_hi on mt7916 (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_add_key in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_get_phy utilities (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_chan_bw in common code (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_get_cipher in common code (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_add_tlv routine (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_alloc_wtbl_req (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_alloc_sta_req (Íñigo Huguet) [2059994] - mt76: connac: fix sta_rec_wtbl tag len (Íñigo Huguet) [2059994] - mt76: mt7915: add mt7916 calibrated data support (Íñigo Huguet) [2059994] - mt76: mt7915: update mt7915_chan_mib_offs for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: update rx rate reporting for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: add txfree event v3 (Íñigo Huguet) [2059994] - mt76: mt7915: enlarge wcid size to 544 (Íñigo Huguet) [2059994] - mt76: mt7915: rework eeprom.c to adapt mt7916 changes (Íñigo Huguet) [2059994] - mt76: mt7915: add firmware support for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: rework dma.c to adapt mt7916 changes (Íñigo Huguet) [2059994] - mt76: add MT_RXQ_MAIN_WA for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: refine register definition (Íñigo Huguet) [2059994] - mt76: mt7915: add mt7915_mmio_probe() as a common probing function (Íñigo Huguet) [2059994] - mt76: mt7915: fix polling firmware-own status (Íñigo Huguet) [2059994] - brcmfmac: pcie: Read the console on init and shutdown (Íñigo Huguet) [2059994] - brcmfmac: fwil: Constify iovar name arguments (Íñigo Huguet) [2059994] - brcmfmac: of: Use devm_kstrdup for board_type & check for errors (Íñigo Huguet) [2059994] - brcmfmac: pcie: Fix crashes due to early IRQs (Íñigo Huguet) [2059994] - brcmfmac: pcie: Replace brcmf_pcie_copy_mem_todev with memcpy_toio (Íñigo Huguet) [2059994] - brcmfmac: pcie: Declare missing firmware files in pcie.c (Íñigo Huguet) [2059994] - brcmfmac: firmware: Allocate space for default boardrev in nvram (Íñigo Huguet) [2059994] - brcmfmac: pcie: Release firmwares in the brcmf_pcie_setup error path (Íñigo Huguet) [2059994] - rtlwifi: remove redundant initialization of variable ul_encalgo (Íñigo Huguet) [2059994] - ray_cs: Check ioremap return value (Íñigo Huguet) [2059994] - ath11k: add debugfs for TWT debug calls (Íñigo Huguet) [2059994] - ath11k: add WMI calls to manually add/del/pause/resume TWT dialogs (Íñigo Huguet) [2059994] - ath11k: Add debugfs interface to configure firmware debug log level (Íñigo Huguet) [2059994] - rtw88: rtw8821c: enable rfe 6 devices (Íñigo Huguet) [2059994] - rtw88: fix memory overrun and memory leak during hw_scan (Íñigo Huguet) [2059994] - rtw88: fix idle mode flow for hw scan (Íñigo Huguet) [2059994] - rtw88: check for validity before using a pointer (Íñigo Huguet) [2059994] - ath11k: mhi: use mhi_sync_power_up() (Íñigo Huguet) [2059994] - ath11k: pci: fix crash on suspend if board file is not found (Íñigo Huguet) [2059994] - ath11k: Fix missing rx_desc_get_ldpc_support in wcn6855_ops (Íñigo Huguet) [2059994] - ath11k: Fix uninitialized symbol 'rx_buf_sz' (Íñigo Huguet) [2059994] - ath11k: fix kernel panic during unload/load ath11k modules (Íñigo Huguet) [2059994] - ath11k: Rename ath11k_ahb_ext_irq_config (Íñigo Huguet) [2059994] - brcmfmac: add CYW43570 PCIE device (Íñigo Huguet) [2059994] - brcmfmac: use ISO3166 country code and 0 rev as fallback on some devices (Íñigo Huguet) [2059994] - rtw89: use pci_read/write_config instead of dbi read/write (Íñigo Huguet) [2059994] - rtw89: refine DIG feature to support 160M and CCK PD (Íñigo Huguet) [2059994] - rtw89: include subband type in channel params (Íñigo Huguet) [2059994] - rtw89: handle 6G band if supported by a chipset (Íñigo Huguet) [2059994] - rtw89: separate {init,deinit}_addr_cam functions (Íñigo Huguet) [2059994] - rtw89: set mac_id and port ID to TXWD (Íñigo Huguet) [2059994] - rtw89: send broadcast/multicast packets via HIQ if STAs are in sleep mode (Íñigo Huguet) [2059994] - rtw89: configure mac port HIQ registers (Íñigo Huguet) [2059994] - rtw89: rename vif_maintain to role_maintain (Íñigo Huguet) [2059994] - rtw89: extend firmware commands on states of sta_assoc and sta_disconnect (Íñigo Huguet) [2059994] - rtw89: allocate mac_id for each station in AP mode (Íñigo Huguet) [2059994] - rtw89: implement mac80211_ops::set_tim to indicate STA to receive packets (Íñigo Huguet) [2059994] - rtw89: add C2H handle of BCN_CNT (Íñigo Huguet) [2059994] - rtw89: download beacon content to firmware (Íñigo Huguet) [2059994] - rtw89: use hardware SSN to TX management frame (Íñigo Huguet) [2059994] - rtw89: configure rx_filter according to FIF_PROBE_REQ (Íñigo Huguet) [2059994] - rtw89: correct use of BA CAM (Íñigo Huguet) [2059994] - rtw89: encapsulate RX handlers to single function (Íñigo Huguet) [2059994] - rtw89: Add RX counters of VHT MCS-10/11 to debugfs (Íñigo Huguet) [2059994] - rtw89: remove duplicate definition of hardware port number (Íñigo Huguet) [2059994] - rtw89: extract modules by chipset (Íñigo Huguet) [2059994] - ath11k: avoid firmware crash when reg set for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - ath11k: set WMI_PEER_40MHZ while peer assoc for 6 GHz (Íñigo Huguet) [2059994] - ath9k_htc: fix uninit value bugs (Íñigo Huguet) [2059994] - ath10k: abstract htt_rx_desc structure (Íñigo Huguet) [2059994] - ath9k: remove redundant status variable (Íñigo Huguet) [2059994] - ath11k: Reconfigure hardware rate for WCN6855 after vdev is started (Íñigo Huguet) [2059994] - ath: dfs_pattern_detector: Avoid open coded arithmetic in memory allocation (Íñigo Huguet) [2059994] - ath10k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2059994] - ath11k: fix error code in ath11k_qmi_assign_target_mem_chunk() (Íñigo Huguet) [2059994] - ath11k: move function ath11k_dp_rx_process_mon_status (Íñigo Huguet) [2059994] - ath11k: enable RX PPDU stats in monitor co-exist mode (Íñigo Huguet) [2059994] - ath11k: free peer for station when disconnect from AP for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - ath11k: add LDPC FEC type in 802.11 radiotap header (Íñigo Huguet) [2059994] - ath11k: Refactor the fallback routine when peer create fails (Íñigo Huguet) [2059994] - ath11k: fix workqueue not getting destroyed after rmmod (Íñigo Huguet) [2059994] - ath10k: fix memory overwrite of the WoWLAN wakeup packet pattern (Íñigo Huguet) [2059994] - ath11k: add missing of_node_put() to avoid leak (Íñigo Huguet) [2059994] - rfkill: define rfill_soft_blocked() if !RFKILL (Íñigo Huguet) [2059994] - Revert "ath10k: drop beacon and probe response which leak from other channel" (Íñigo Huguet) [2059994] - iwlwifi: mvm: return value for request_ownership (Íñigo Huguet) [2059994] - nl80211: Update bss channel on channel switch for P2P_CLIENT (Íñigo Huguet) [2059994] - iwlwifi: fix build error for IWLMEI (Íñigo Huguet) [2059994] - mac80211: treat some SAE auth steps as final (Íñigo Huguet) [2059994] - nl80211: Handle nla_memdup failures in handle_nan_filter (Íñigo Huguet) [2059994] - iwlwifi: mvm: check debugfs_dir ptr before use (Íñigo Huguet) [2059994] - iwlwifi: don't advertise TWT support (Íñigo Huguet) [2059994] - mac80211: fix forwarded mesh frames AC & queue selection (Íñigo Huguet) [2059994] - mac80211: refuse aggregations sessions before authorized (Íñigo Huguet) [2059994] - mac80211: fix EAPoL rekey fail in 802.3 rx path (Íñigo Huguet) [2059994] - iwlwifi: fix use-after-free (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Cinterion MV31-W (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Foxconn SDX55 (Íñigo Huguet) [2059994] - cfg80211: fix race in netlink owner interface destruction (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't send SAR GEO command for 3160 devices (Íñigo Huguet) [2059994] - iwlwifi: remove deprecated broadcast filtering feature (Íñigo Huguet) [2059994] - iwlwifi: mei: report RFKILL upon register when needed (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't feed the hardware RFKILL into iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mei: retry mapping the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: fix the pskb_may_pull check in ipv4 (Íñigo Huguet) [2059994] - iwlwifi: pcie: gen2: fix locking when "HW not ready" (Íñigo Huguet) [2059994] - iwlwifi: pcie: fix locking when "HW not ready" (Íñigo Huguet) [2059994] - iwlwifi: fix iwl_legacy_rate_to_fw_idx (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix condition which checks the version of rate_n_flags (Íñigo Huguet) [2059994] - mac80211_hwsim: initialize ieee80211_tx_info at hw_scan_work (Íñigo Huguet) [2059994] - mac80211_hwsim: report NOACK frames in tx_status (Íñigo Huguet) [2059994] - mac80211: mlme: check for null after calling kmemdup (Íñigo Huguet) [2059994] - brcmfmac: firmware: Fix crash in brcm_alt_fw_path (Íñigo Huguet) [2059994] - mac80211: use ieee80211_bss_get_elem() (Íñigo Huguet) [2059994] - nl80211: clarify comment for mesh PLINK_BLOCKED state (Íñigo Huguet) [2059994] - mac80211: Add stations iterator where the iterator function may sleep (Íñigo Huguet) [2059994] - mac80211: allow non-standard VHT MCS-10/11 (Íñigo Huguet) [2059994] - codel: remove unnecessary pkt_sched.h include (Íñigo Huguet) [2059994] - codel: remove unnecessary sock.h include (Íñigo Huguet) [2059994] - rtw88: don't consider deep PS mode when transmitting packet (Íñigo Huguet) [2059994] - ath11k: add support of firmware logging for WCN6855 (Íñigo Huguet) [2059994] - ath10k: replace strlcpy with strscpy (Íñigo Huguet) [2059994] - rtw88: support SAR via kernel common API (Íñigo Huguet) [2059994] - rtw88: 8822c: add ieee80211_ops::hw_scan (Íñigo Huguet) [2059994] - iwlwifi: mei: wait before mapping the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: clear the ownership when the driver goes down (Íñigo Huguet) [2059994] - iwlwifi: fw: fix some scan kernel-doc (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove card state notification code (Íñigo Huguet) [2059994] - iwlwifi: mvm: drop too short packets silently (Íñigo Huguet) [2059994] - iwlwifi: return op_mode only in case the failure is from MEI (Íñigo Huguet) [2059994] - iwlwifi: mvm: support Bz TX checksum offload (Íñigo Huguet) [2059994] - iwlwifi: mvm: add US/CA to TAS block list if OEM isn't allowed (Íñigo Huguet) [2059994] - iwlwifi: mvm: correctly set schedule scan profiles (Íñigo Huguet) [2059994] - iwlwifi: mvm: correctly set channel flags (Íñigo Huguet) [2059994] - iwlwifi: mvm: always store the PPAG table as the latest version. (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 69 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support TLV-based firmware reset (Íñigo Huguet) [2059994] - iwlwifi: mvm: change old-SN drop threshold (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't trust hardware queue number (Íñigo Huguet) [2059994] - iwlwifi: mvm: handle RX checksum on Bz devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: use a define for checksum flags mask (Íñigo Huguet) [2059994] - iwlwifi: remove module loading failure message (Íñigo Huguet) [2059994] - iwlwifi: mvm: isolate offload assist (checksum) calculation (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for OCE scan (Íñigo Huguet) [2059994] - iwlwifi: dump RCM error tables (Íñigo Huguet) [2059994] - iwlwifi: dump both TCM error tables if present (Íñigo Huguet) [2059994] - iwlwifi: dump CSR scratch from outer function (Íñigo Huguet) [2059994] - iwlwifi: parse error tables from debug TLVs (Íñigo Huguet) [2059994] - iwlwifi: recognize missing PNVM data and then log filename (Íñigo Huguet) [2059994] - iwlwifi: rs: add support for TLC config command ver 4 (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: update rfi table (Íñigo Huguet) [2059994] - iwlwifi: mvm: Add list of OEMs allowed to use TAS (Íñigo Huguet) [2059994] - iwlwifi: mvm: support revision 1 of WTAS table (Íñigo Huguet) [2059994] - iwlwifi: fw: remove dead error log code (Íñigo Huguet) [2059994] - iwlwifi: do not use __unused as variable name (Íñigo Huguet) [2059994] - iwlwifi: iwl-eeprom-parse: mostly dvm only (Íñigo Huguet) [2059994] - iwlwifi: mvm: clean up indenting in iwl_mvm_tlc_update_notif() (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix a stray tab (Íñigo Huguet) [2059994] - ath11k: add regdb.bin download for regdb offload (Íñigo Huguet) [2059994] - rtl8xxxu: Improve the A-MPDU retransmission rate with RTS/CTS protection (Íñigo Huguet) [2059994] - rtw88: don't check CRC of VHT-SIG-B in 802.11ac signal (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix imbalanced locking in iwl_mvm_start_get_nvm() (Íñigo Huguet) [2059994] - iwlwifi: mvm: add dbg_time_point to debugfs (Íñigo Huguet) [2059994] - iwlwifi: mvm: add missing min_size to kernel-doc (Íñigo Huguet) [2059994] - iwlwifi: mei: fix W=1 warnings (Íñigo Huguet) [2059994] - ath11k: add support for hardware rfkill for QCA6390 (Íñigo Huguet) [2059994] - ath11k: report tx bitrate for iw wlan station dump (Íñigo Huguet) [2059994] - ath11k: fix warning of RCU usage for ath11k_mac_get_arvif_by_vdev_id() (Íñigo Huguet) [2059994] - ath11k: add signal report to mac80211 for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: report rssi of each chain to mac80211 for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - cfg80211: Enable regulatory enforcement checks for drivers supporting mesh iface (Íñigo Huguet) [2059994] - rfkill: allow to get the software rfkill state (Íñigo Huguet) [2059994] - cfg80211: refactor cfg80211_get_ies_channel_number() (Íñigo Huguet) [2059994] - nl82011: clarify interface combinations wrt. channels (Íñigo Huguet) [2059994] - nl80211: Add support to offload SA Query procedures for AP SME device (Íñigo Huguet) [2059994] - nl80211: Add support to set AP settings flags with single attribute (Íñigo Huguet) [2059994] - mac80211: add more HT/VHT/HE state logging (Íñigo Huguet) [2059994] - cfg80211: Use the HE operation IE to determine a 6GHz BSS channel (Íñigo Huguet) [2059994] - cfg80211: rename offchannel_chain structs to background_chain to avoid confusion with ETSI standard (Íñigo Huguet) [2059994] - mac80211: Notify cfg80211 about association comeback (Íñigo Huguet) [2059994] - cfg80211: Add support for notifying association comeback (Íñigo Huguet) [2059994] - mac80211: introduce channel switch disconnect function (Íñigo Huguet) [2059994] - cfg80211: Fix order of enum nl80211_band_iftype_attr documentation (Íñigo Huguet) [2059994] - cfg80211: simplify cfg80211_chandef_valid() (Íñigo Huguet) [2059994] - mac80211: Remove a couple of obsolete TODO (Íñigo Huguet) [2059994] - mac80211: use coarse boottime for airtime fairness code (Íñigo Huguet) [2059994] - mt76: mt7921s: fix cmd timeout in throughput test (Íñigo Huguet) [2059994] - mt76: mt7921s: fix suspend error with enlarging mcu timeout value (Íñigo Huguet) [2059994] - mt76: mt7921s: make pm->suspended usage consistent (Íñigo Huguet) [2059994] - mt76: mt7921: clear pm->suspended in mt7921_mac_reset_work (Íñigo Huguet) [2059994] - mt76: connac: rely on le16_add_cpu in mt76_connac_mcu_add_nested_tlv (Íñigo Huguet) [2059994] - mt76: mt7921: remove dead definitions (Íñigo Huguet) [2059994] - mt76: mt7915: add mu-mimo and ofdma debugfs knobs (Íñigo Huguet) [2059994] - mt76: mt7915: introduce mt76_vif in mt7915_vif (Íñigo Huguet) [2059994] - mt76: mt7921: reduce log severity levels for informative messages (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac definitions (Íñigo Huguet) [2059994] - mt76: connac: rely on MCU_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_CE_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_UNI_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: remove MCU_FW_PREFIX bit (Íñigo Huguet) [2059994] - mt76: connac: align MCU_EXT definitions with 7915 driver (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_EXT macros (Íñigo Huguet) [2059994] - mt76: mt7615: in debugfs queue stats, skip wmm index 3 on mt7663 (Íñigo Huguet) [2059994] - mt76: mt7915: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: allow drivers to drop rx packets early (Íñigo Huguet) [2059994] - mt76: mt7663: disable 4addr capability (Íñigo Huguet) [2059994] - mt76: only access ieee80211_hdr after mt76_insert_ccmp_hdr (Íñigo Huguet) [2059994] - mt76: move sar_capa configuration in common code (Íñigo Huguet) [2059994] - mt76: mt7921s: fix possible kernel crash due to invalid Rx count (Íñigo Huguet) [2059994] - mt76: mt7921s: fix bus hang with wrong privilege (Íñigo Huguet) [2059994] - mt76: eeprom: tolerate corrected bit-flips (Íñigo Huguet) [2059994] - mt76: mt7603: improve reliability of tx powersave filtering (Íñigo Huguet) [2059994] - mt76: clear sta powersave flag after notifying driver (Íñigo Huguet) [2059994] - mt76: mt7915: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7603: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7915: improve wmm index allocation (Íñigo Huguet) [2059994] - mt76: mt7615: improve wmm index allocation (Íñigo Huguet) [2059994] - mt76: mt7921s: fix the device cannot sleep deeply in suspend (Íñigo Huguet) [2059994] - mt76: mt7615: fix decap offload corner case with 4-addr VLAN frames (Íñigo Huguet) [2059994] - mt76: mt7915: fix decap offload corner case with 4-addr VLAN frames (Íñigo Huguet) [2059994] - mt76: mt76x02: introduce SAR support (Íñigo Huguet) [2059994] - mt76: move sar utilities to mt76-core module (Íñigo Huguet) [2059994] - mt76: mt7921: honor mt76_connac_mcu_set_rate_txpower return value in mt7921_config (Íñigo Huguet) [2059994] - mt76: do not pass the received frame with decryption error (Íñigo Huguet) [2059994] - mt76: connac: remove PHY_MODE_AX_6G configuration in mt76_connac_get_phy_mode (Íñigo Huguet) [2059994] - mt76: mt7615: remove dead code in get_omac_idx (Íñigo Huguet) [2059994] - mt76: mt7921: introduce 160 MHz channel bandwidth support (Íñigo Huguet) [2059994] - mt76: mt7921: add support for PCIe ID 0x0608/0x0616 (Íñigo Huguet) [2059994] - mt76: testmode: add support to set MAC (Íñigo Huguet) [2059994] - mt76: mt7915: add default calibrated data support (Íñigo Huguet) [2059994] - mt76: only set rx radiotap flag from within decoder functions (Íñigo Huguet) [2059994] - mt76: reverse the first fragmented frame to 802.11 (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Introduce Sierra EM919X support (Íñigo Huguet) [2059994] - bus: mhi: core: Add an API for auto queueing buffers for DL channel (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Simplify code and axe the use of a deprecated API (Íñigo Huguet) [2059994] - bus: mhi: core: Use macros for execution environment features (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add new device ID support for T99W175 (Íñigo Huguet) [2059994] - ath11k: Use reserved host DDR addresses from DT for PCI devices (Íñigo Huguet) [2059994] - ath11k: Change qcn9074 fw to operate in mode-2 (Íñigo Huguet) [2059994] - ath11k: add ab to TARGET_NUM_VDEVS & co (Íñigo Huguet) [2059994] - brcmfmac: Fix incorrect type assignments for keep-alive (Íñigo Huguet) [2059994] - ath11k: Avoid false DEADLOCK warning reported by lockdep (Íñigo Huguet) [2059994] - ath11k: set DTIM policy to stick mode for station interface (Íñigo Huguet) [2059994] - ath11k: support MAC address randomization in scan (Íñigo Huguet) [2059994] - ath10k: wmi: remove array of flexible structures (Íñigo Huguet) [2059994] - ath10k: htt: remove array of flexible structures (Íñigo Huguet) [2059994] - ath10k: drop beacon and probe response which leak from other channel (Íñigo Huguet) [2059994] - ath11k: Process full monitor mode rx support (Íñigo Huguet) [2059994] - ath11k: add software monitor ring descriptor for full monitor (Íñigo Huguet) [2059994] - ath11k: Add htt cmd to enable full monitor mode (Íñigo Huguet) [2059994] - ath11k: enable IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS for WCN6855 (Íñigo Huguet) [2059994] - rtw88: refine tx_pwr_tbl debugfs to show channel and bandwidth (Íñigo Huguet) [2059994] - rtw88: add debugfs to fix tx rate (Íñigo Huguet) [2059994] - ath: regdom: extend South Korea regulatory domain support (Íñigo Huguet) [2059994] - ath11k: add wait operation for tx management packets for flush from mac80211 (Íñigo Huguet) [2059994] - ath11k: add 11d scan offload support (Íñigo Huguet) [2059994] - ath11k: add configure country code for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: avoid deadlock by change ieee80211_queue_work for regd_update_work (Íñigo Huguet) [2059994] - iwlwifi: work around reverse dependency on MEI (Íñigo Huguet) [2059994] - iwlwifi: mvm: optionally suppress assert log (Íñigo Huguet) [2059994] - iwlwifi: fw: correctly detect HW-SMEM region subtype (Íñigo Huguet) [2059994] - iwlwifi: implement reset flow for Bz devices (Íñigo Huguet) [2059994] - iwlwifi: dbg: disable ini debug in 8000 family and below (Íñigo Huguet) [2059994] - iwlwifi: support SAR GEO Offset Mapping override via BIOS (Íñigo Huguet) [2059994] - iwlwifi: pcie: retake ownership after reset (Íñigo Huguet) [2059994] - iwlwifi: mvm: always use 4K RB size by default (Íñigo Huguet) [2059994] - iwlwifi: mvm/api: define system control command (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 68 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: add some missing command strings (Íñigo Huguet) [2059994] - iwlwifi: fw: add support for splitting region type bits (Íñigo Huguet) [2059994] - iwlwifi: swap 1650i and 1650s killer struct names (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support for DBGC4 for dram (Íñigo Huguet) [2059994] - iwlwifi: mvm: update rate scale in moving back to assoc state (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for statistics update version 15 (Íñigo Huguet) [2059994] - iwlwifi: mvm: Add support for a new version of scan request command (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove session protection upon station removal (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for PHY context command v4 (Íñigo Huguet) [2059994] - iwlwifi: fw: api: add link to PHY context command struct v1 (Íñigo Huguet) [2059994] - iwlwifi: mvm: support RLC configuration command (Íñigo Huguet) [2059994] - iwlwifi: mvm: d3: support v12 wowlan status (Íñigo Huguet) [2059994] - iwlwifi: mvm: parse firmware alive message version 6 (Íñigo Huguet) [2059994] - iwlwifi: pcie: support Bz suspend/resume trigger (Íñigo Huguet) [2059994] - iwlwifi: mvm: d3: move GTK rekeys condition (Íñigo Huguet) [2059994] - ath11k: change to use dynamic memory for channel list of scan (Íñigo Huguet) [2059994] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2059994] - ath9k: switch to rate table based lookup (Íñigo Huguet) [2059994] - iwlwifi: mvm: demote non-compliant kernel-doc header (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix a possible NULL pointer deference (Íñigo Huguet) [2059994] - iwlwifi: mei: Fix spelling mistake "req_ownserhip" -> "req_ownership" (Íñigo Huguet) [2059994] - iwlwifi: mei: don't rely on the size from the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: fix linking when tracing is not enabled (Íñigo Huguet) [2059994] - ath11k: Avoid NULL ptr access during mgmt tx cleanup (Íñigo Huguet) [2059994] - rtlwifi: rtl8192de: Style clean-ups (Íñigo Huguet) [2059994] - brcmfmac: Configure keep-alive packet on suspend (Íñigo Huguet) [2059994] - ieee80211: change HE nominal packet padding value defines (Íñigo Huguet) [2059994] - cfg80211: use ieee80211_bss_get_elem() instead of _get_ie() (Íñigo Huguet) [2059994] - iwlwifi: mvm: read the rfkill state and feed it to iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mvm: add vendor commands needed for iwlmei (Íñigo Huguet) [2059994] - iwlwifi: integrate with iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mei: add debugfs hooks (Íñigo Huguet) [2059994] - iwlwifi: mei: add the driver to allow cooperation with CSME (Íñigo Huguet) [2059994] - mwifiex: Ensure the version string from the firmware is 0-terminated (Íñigo Huguet) [2059994] - mwifiex: Add quirk to disable deep sleep with certain hardware revision (Íñigo Huguet) [2059994] - mwifiex: Use a define for firmware version string length (Íñigo Huguet) [2059994] - rtw88: add debugfs to force lowest basic rate (Íñigo Huguet) [2059994] - rtw88: follow the AP basic rates for tx mgmt frame (Íñigo Huguet) [2059994] - mac80211: Use memset_after() to clear tx status (Íñigo Huguet) [2059994] - mac80211: notify non-transmitting BSS of color changes (Íñigo Huguet) [2059994] - mac80211: minstrel_ht: remove unused SAMPLE_SWITCH_THR define (Íñigo Huguet) [2059994] - cfg80211: allow continuous radar monitoring on offchannel chain (Íñigo Huguet) [2059994] - cfg80211: schedule offchan_cac_abort_wk in cfg80211_radar_event (Íñigo Huguet) [2059994] - cfg80211: delete redundant free code (Íñigo Huguet) [2059994] - mac80211: Remove unused assignment statements (Íñigo Huguet) [2059994] - cfg80211: fix possible NULL pointer dereference in cfg80211_stop_offchan_radar_detection (Íñigo Huguet) [2059994] - ath11k: Use memset_startat() for clearing queue descriptors (Íñigo Huguet) [2059994] - ath11k: Fix spelling mistake "detetction" -> "detection" (Íñigo Huguet) [2059994] - Revert "ath11k: add read variant from SMBIOS for download board data" (Íñigo Huguet) [2059994] - ath11k: add read variant from SMBIOS for download board data (Íñigo Huguet) [2059994] - ath11k: calculate the correct NSS of peer for HE capabilities (Íñigo Huguet) [2059994] - ath11k: change to treat alpha code na as world wide regdomain (Íñigo Huguet) [2059994] - cfg80211: move offchan_cac_event to a dedicated work (Íñigo Huguet) [2059994] - mac80211_hwsim: Fix spelling mistake "Droping" -> "Dropping" (Íñigo Huguet) [2059994] - mac80211: introduce set_radar_offchan callback (Íñigo Huguet) [2059994] - cfg80211: implement APIs for dedicated radar detection HW (Íñigo Huguet) [2059994] - ath11k: add support for BSS color change (Íñigo Huguet) [2059994] - ath11k: add trace log support (Íñigo Huguet) [2059994] - ath11k: Add missing qmi_txn_cancel() (Íñigo Huguet) [2059994] - ath11k: Disabling credit flow for WMI path (Íñigo Huguet) [2059994] - ath11k: Increment pending_mgmt_tx count before tx send invoke (Íñigo Huguet) [2059994] - ath11k: send proper txpower and maxregpower values to firmware (Íñigo Huguet) [2059994] - ath11k: move peer delete after vdev stop of station for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: remove return for empty tx bitrate in mac_op_sta_statistics (Íñigo Huguet) [2059994] - ath11k: enable IEEE80211_VHT_EXT_NSS_BW_CAPABLE if NSS ratio enabled (Íñigo Huguet) [2059994] - ath11k: avoid unnecessary lock contention in tx_completion path (Íñigo Huguet) [2059994] - ath11k: add branch predictors in dp_tx path (Íñigo Huguet) [2059994] - ath11k: avoid while loop in ring selection of tx completion interrupt (Íñigo Huguet) [2059994] - ath11k: remove mod operator in dst ring processing (Íñigo Huguet) [2059994] - ath11k: allocate HAL_WBM2SW_RELEASE ring from cacheable memory (Íñigo Huguet) [2059994] - ath11k: add branch predictors in process_rx (Íñigo Huguet) [2059994] - ath11k: remove usage quota while processing rx packets (Íñigo Huguet) [2059994] - ath11k: avoid active pdev check for each msdu (Íñigo Huguet) [2059994] - ath11k: avoid additional access to ath11k_hal_srng_dst_num_free (Íñigo Huguet) [2059994] - ath11k: modify dp_rx desc access wrapper calls inline (Íñigo Huguet) [2059994] - ath11k: allocate dst ring descriptors from cacheable memory (Íñigo Huguet) [2059994] - ath11k: disable unused CE8 interrupts for ipq8074 (Íñigo Huguet) [2059994] - ath11k: avoid unnecessary BH disable lock in STA kickout event (Íñigo Huguet) [2059994] - ath11k: enable 802.11 power save mode in station mode (Íñigo Huguet) [2059994] - ath11k: convert ath11k_wmi_pdev_set_ps_mode() to use enum wmi_sta_ps_mode (Íñigo Huguet) [2059994] - ath9k: use swap() to make code cleaner (Íñigo Huguet) [2059994] - ath10k: fetch (pre-)calibration data via nvmem subsystem (Íñigo Huguet) [2059994] - Revert "ath11k: add support for WCN6855 hw2.1" (Íñigo Huguet) [2059994] - iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting (Jerry Snitselaar) [2095498] - scsi: mpi3mr: Fix kernel-doc (Tomas Henzl) [2091878] - scsi: mpi3mr: Rework mrioc->bsg_device model to fix warnings (Tomas Henzl) [2091878] - scsi: mpi3mr: Add target device related sysfs attributes (Tomas Henzl) [2091878] - scsi: mpi3mr: Add shost related sysfs attributes (Tomas Henzl) [2091878] - scsi: mpi3mr: Return error if dma_alloc_coherent() fails (Tomas Henzl) [2091878] - scsi: mpi3mr: Fix a NULL vs IS_ERR() bug in mpi3mr_bsg_init() (Tomas Henzl) [2091878] - scsi: mpi3mr: Return I/Os to an unrecoverable HBA with DID_ERROR (Tomas Henzl) [2091878] - scsi: mpi3mr: Hidden drives not removed during soft reset (Tomas Henzl) [2091878] - scsi: mpi3mr: Increase I/O timeout value to 60s (Tomas Henzl) [2091878] - scsi: mpi3mr: Update driver version to 8.0.0.69.0 (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for NVMe passthrough (Tomas Henzl) [2091878] - scsi: mpi3mr: Expose adapter state to sysfs (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for PEL commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for MPT commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Move data structures/definitions from MPI headers to uapi header (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for driver commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Add bsg device support (Tomas Henzl) [2091878] - selftests/powerpc: Add PPC_FEATURE2_ARCH_3_1 and PPC_FEATURE2_EBB bits (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc: Add helper to exit on failure (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add interface test for mmcra register fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr3_src fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr2_fcs_fch fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr2_l2l3 field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr1_comb field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmc56 using pmc5 (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_fc56 field using pmc1 (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmcjce field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmccext bit (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_cc56run field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0 exception bits (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macro to extract mmcr3 and mmcra fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macro to extract mmcr0/mmcr1 fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macros to extract mmcr fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add event_init_sampling function (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add utility functions to post process the mmap buffer (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macros to parse event codes (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add support for perf sampling tests (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc: Add a test of counting larx/stcx (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Include mmap_buffer field as part of struct event (Desnes A. Nunes do Rosario) [2071113] - [s390] net/smc: Fix af_ops of child socket pointing to released memory (Tobias Huschle) [2043832] - [s390] net/smc: Fix NULL pointer dereference in smc_pnet_find_ib() (Tobias Huschle) [2043832] - [s390] net/smc: use memcpy instead of snprintf to avoid out of bounds read (Tobias Huschle) [2043832] - [s390] net/smc: Call trace_smc_tx_sendmsg when data corked (Tobias Huschle) [2043832] - [s390] net/smc: Fix cleanup when register ULP fails (Tobias Huschle) [2043832] - [s390] net/smc: fix connection leak (Tobias Huschle) [2043832] - [s390] net/smc: Use a mutex for locking "struct smc_pnettable" (Tobias Huschle) [2043832] - [s390] net/smc: unlock on error paths in __smc_setsockopt() (Tobias Huschle) [2043832] - [s390] net/smc: return ETIMEDOUT when smc_connect_clc() timeout (Tobias Huschle) [2043832] - [s390] net/smc: Add comment for smc_tx_pending (Tobias Huschle) [2043832] - [s390] net/smc: Add global configure for handshake limitation by netlink (Tobias Huschle) [2043832] - [s390] net/smc: Dynamic control handshake limitation by socket options (Tobias Huschle) [2043832] - [s390] net/smc: Limit SMC visits when handshake workqueue congested (Tobias Huschle) [2043832] - [s390] net/smc: Limit backlog connections (Tobias Huschle) [2043832] - [s390] net/smc: Make smc_tcp_listen_work() independent (Tobias Huschle) [2043832] - [s390] net/smc: Avoid overwriting the copies of clcsock callback functions (Tobias Huschle) [2043832] - [s390] Partially revert "net/smc: Add netlink net namespace support" (Tobias Huschle) [2043832] - [s390] net/smc: Cork when sendpage with MSG_SENDPAGE_NOTLAST flag (Tobias Huschle) [2043832] - [s390] net/smc: Remove corked dealyed work (Tobias Huschle) [2043832] - [s390] net/smc: Send directly when TCP_CORK is cleared (Tobias Huschle) [2043832] - [s390] net/smc: Forward wakeup to smc socket waitqueue after fallback (Tobias Huschle) [2043832] - [s390] net/smc: Transitional solution for clcsock race issue (Tobias Huschle) [2043832] - [s390] net/smc: Fix hung_task when removing SMC-R devices (Tobias Huschle) [2043832] - [s390] net/smc: Remove unused function declaration (Tobias Huschle) [2043832] - [s390] net/smc: Resolve the race between SMC-R link access and clear (Tobias Huschle) [2043832] - [s390] net/smc: Introduce a new conn->lgr validity check helper (Tobias Huschle) [2043832] - [s390] net/smc: Resolve the race between link group access and termination (Tobias Huschle) [2043832] - [s390] net/smc: Reset conn->lgr when link group registration fails (Tobias Huschle) [2043832] - [s390] net/smc: add comments for smc_link_{usable|sendable} (Tobias Huschle) [2043832] - [s390] net/smc: remove redundant re-assignment of pointer link (Tobias Huschle) [2043832] - [s390] net/smc: Introduce TCP ULP support (Tobias Huschle) [2043832] - [s390] net/smc: Add net namespace for tracepoints (Tobias Huschle) [2043832] - [s390] net/smc: Print net namespace in log (Tobias Huschle) [2043832] - [s390] net/smc: Add netlink net namespace support (Tobias Huschle) [2043832] - [s390] net/smc: Introduce net namespace support for linkgroup (Tobias Huschle) [2043832] - [s390] net/smc: Use the bitmap API when applicable (Tobias Huschle) [2043832] - [s390] net/smc: fix kernel panic caused by race of smc_sock (Tobias Huschle) [2043832] - [s390] net/smc: don't send CDC/LLC message if link not ready (Tobias Huschle) [2043832] - [s390] net/smc: fix using of uninitialized completions (Tobias Huschle) [2043832] - [s390] net/smc: Prevent smc_release() from long blocking (Tobias Huschle) [2043832] - [s390] net/smc: Clear memory when release and reuse buffer (Tobias Huschle) [2043832] - [s390] net/smc: Keep smc_close_final rc during active close (Tobias Huschle) [2043832] - [s390] net/smc: fix wrong list_del in smc_lgr_cleanup_early (Tobias Huschle) [2043832] - [s390] net/smc: Don't call clcsock shutdown twice when smc shutdown (Tobias Huschle) [2043832] - [s390] net/smc: Fix loop in smc_listen (Tobias Huschle) [2043832] - [s390] net/smc: Fix NULL pointer dereferencing in smc_vlan_by_tcpsk() (Tobias Huschle) [2043832] - [s390] net/smc: Ensure the active closing peer first closes clcsock (Tobias Huschle) [2043832] - [s390] net/smc: Clean up local struct sock variables (Tobias Huschle) [2043832] - [s390] net/smc: Avoid warning of possible recursive locking (Tobias Huschle) [2043832] - [s390] net/smc: Make sure the link_id is unique (Tobias Huschle) [2043832] - [s390] net/smc: Transfer remaining wait queue entries during fallback (Tobias Huschle) [2043832] - [s390] net/smc: fix sk_refcnt underflow on linkdown and fallback (Tobias Huschle) [2043832] - [s390] net/smc: Print function name in smcr_link_down tracepoint (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoint for smcr link down (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoints for tx and rx msg (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoint for fallback (Tobias Huschle) [2043832] - [s390] net/smc: Correct spelling mistake to TCPF_SYN_RECV (Tobias Huschle) [2043832] - [s390] net/smc: Fix smc_link->llc_testlink_time overflow (Tobias Huschle) [2043832] - [s390] net/smc: stop links when their GID is removed (Tobias Huschle) [2043832] - [s390] net/smc: add netlink support for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: extend LLC layer for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: add v2 support to the work request layer (Tobias Huschle) [2043832] - [s390] net/smc: retrieve v2 gid from IB device (Tobias Huschle) [2043832] - [s390] net/smc: add v2 format of CLC decline message (Tobias Huschle) [2043832] - [s390] net/smc: add listen processing for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: add SMC-Rv2 connection establishment (Tobias Huschle) [2043832] - [s390] net/smc: prepare for SMC-Rv2 connection (Tobias Huschle) [2043832] - [s390] net/smc: save stack space and allocate smc_init_info (Tobias Huschle) [2043832] - [s390] net/smc: add generic netlink support for system EID (Tobias Huschle) [2043832] - [s390] net/smc: keep static copy of system EID (Tobias Huschle) [2043832] - [s390] net/smc: add support for user defined EIDs (Tobias Huschle) [2043832] - [s390] net/smc: Allow SMC-D 1MB DMB allocations (Tobias Huschle) [2043832] - [s390] net/smc: no need to flush smcd_dev's event_wq before destroying it (Tobias Huschle) [2043832] - [s390] net/smc: avoid possible duplicate dmb unregistration (Tobias Huschle) [2043832] - [s390] net/smc: remove device from smcd_dev_list after failed device_add() (Tobias Huschle) [2043832]- bnxt_en: parse and report result field when NVRAM package install fails (Ken Cox) [2043782] - bnxt_en: Fix unnecessary dropping of RX packets (Ken Cox) [2043782] - bnxt_en: Initiallize bp->ptp_lock first before using it (Ken Cox) [2043782] - bnxt_en: Fix possible bnxt_open() failure caused by wrong RFS flag (Ken Cox) [2043782] - bnxt_en: Prevent XDP redirect from running when stopping TX queue (Ken Cox) [2043782 1944997] - bnxt_en: reserve space inside receive page for skb_shared_info (Ken Cox) [2043782 1944997] - bnxt_en: Synchronize tx when xdp redirects happen on same ring (Ken Cox) [2043782 1944997] - net: bnxt_ptp: fix compilation error (Ken Cox) [2043782] - bnxt: revert hastily merged uAPI aberrations (Ken Cox) [2043782] - bnxt_en: add an nvm test for hw diagnose (Ken Cox) [2043782] - bnxt_en: implement hw health reporter (Ken Cox) [2043782] - bnxt_en: Do not destroy health reporters during reset (Ken Cox) [2043782] - bnxt_en: Eliminate unintended link toggle during FW reset (Ken Cox) [2043782] - bnxt_en: Properly report no pause support on some cards (Ken Cox) [2043782] - bnxt_en: introduce initial link state of unknown (Ken Cox) [2043782] - bnxt_en: parse result field when NVRAM package install fails (Ken Cox) [2043782] - bnxt_en: add more error checks to HWRM_NVM_INSTALL_UPDATE (Ken Cox) [2043782] - bnxt_en: refactor error handling of HWRM_NVM_INSTALL_UPDATE (Ken Cox) [2043782] - bnxt_en: Increase firmware message response DMA wait time (Ken Cox) [2043782] - bnxt_en: Fix incorrect multicast rx mask setting when not requested (Ken Cox) [2043782] - bnxt_en: Fix occasional ethtool -t loopback test failures (Ken Cox) [2043782] - bnxt_en: Fix offline ethtool selftest with RDMA enabled (Ken Cox) [2043782] - bnxt_en: Fix active FEC reporting to ethtool (Ken Cox) [2043782] - bnxt_en: Fix devlink fw_activate (Ken Cox) [2043782] - bnxt_en: Restore the resets_reliable flag in bnxt_open() (Ken Cox) [2043782] - bnxt_en: Handle async event when the PHC is updated in RTC mode (Ken Cox) [2043782] - bnxt_en: Implement .adjtime() for PTP RTC mode (Ken Cox) [2043782] - bnxt_en: Add driver support to use Real Time Counter for PTP (Ken Cox) [2043782] - bnxt_en: PTP: Refactor PTP initialization functions (Ken Cox) [2043782] - bnxt_en: Update firmware interface to 1.10.2.73 (Ken Cox) [2043782] - bnxt_en: improve firmware timeout messaging (Ken Cox) [2043782] - bnxt_en: use firmware provided max timeout for messages (Ken Cox) [2043782] - bnxt_en: improve VF error messages when PF is unavailable (Ken Cox) [2043782] - bnxt_en: add dynamic debug support for HWRM messages (Ken Cox) [2043782] - bnxt_en: Use page frag RX buffers for better software GRO performance (Ken Cox) [2043782] - bnxt_en: convert to xdp_do_flush (Ken Cox) [2043782] - bnxt_en: Support CQE coalescing mode in ethtool (Ken Cox) [2043782] - bnxt_en: Support configurable CQE coalescing mode (Ken Cox) [2043782] - bnxt_en: enable interrupt sampling on 5750X for DIM (Ken Cox) [2043782] - bnxt_en: Log error report for dropped doorbell (Ken Cox) [2043782] - bnxt_en: Add event handler for PAUSE Storm event (Ken Cox) [2043782] - flow_offload: reject to offload tc actions in offload drivers (Ken Cox) [2043782] - bnxt_en: Fix compile error regression when CONFIG_BNXT_SRIOV is not set (Ken Cox) [2043782] - bnxt_en: fix format specifier in live patch error message (Ken Cox) [2043782] - bnxt_en: extend RTNL to VF check in devlink driver_reinit (Ken Cox) [2043782] - bnxt_en: avoid newline at end of message in NL_SET_ERR_MSG_MOD (Ken Cox) [2043782] - bnxt_en: Remove not used other ULP define (Ken Cox) [2043782] - bnxt_en: Provide stored devlink "fw" version on older firmware (Ken Cox) [2043782] - bnxt_en: implement firmware live patching (Ken Cox) [2043782] - bnxt_en: Update firmware interface to 1.10.2.63 (Ken Cox) [2043782] - bnxt_en: implement dump callback for fw health reporter (Ken Cox) [2043782] - bnxt_en: extract coredump command line from current task (Ken Cox) [2043782] - bnxt_en: Retrieve coredump and crashdump size via FW command (Ken Cox) [2043782] - bnxt_en: Add compression flags information in coredump segment header (Ken Cox) [2043782] - bnxt_en: move coredump functions into dedicated file (Ken Cox) [2043782] - bnxt_en: Refactor coredump functions (Ken Cox) [2043782] - bnxt_en: improve fw diagnose devlink health messages (Ken Cox) [2043782] - bnxt_en: consolidate fw devlink health reporters (Ken Cox) [2043782] - bnxt_en: remove fw_reset devlink health reporter (Ken Cox) [2043782] - bnxt_en: improve error recovery information messages (Ken Cox) [2043782] - bnxt_en: add enable_remote_dev_reset devlink parameter (Ken Cox) [2043782] - bnxt_en: implement devlink dev reload fw_activate (Ken Cox) [2043782] - bnxt_en: implement devlink dev reload driver_reinit (Ken Cox) [2043782] - bnxt_en: refactor cancellation of resource reservations (Ken Cox) [2043782] - bnxt_en: refactor printing of device info (Ken Cox) [2043782] - bnxt: use netif_is_rxfh_configured instead of open code (Ken Cox) [2043782] - ethernet: use eth_hw_addr_set() (Ken Cox) [2043782] - bnxt_en: Fix TX timeout when TX ring size is set to the smallest (Ken Cox) [2043782] - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert (Ken Cox) [2043782] - bnxt_en: make bnxt_free_skbs() safe to call after bnxt_free_mem() (Ken Cox) [2043782] - netfilter: nat: really support inet nat without l3 address (Phil Sutter) [2092424] - netfilter: nf_tables: use kfree_rcu(ptr, rcu) to release hooks in clean_net path (Phil Sutter) [2094236] - netfilter: nf_tables: double hook unregistration in netns path (Phil Sutter) [2094236] - video: fbdev: hyperv_fb: Allow resolutions with size > 64 MB for Gen1 (Mohammed Gamal) [1948442] - cpufreq: intel_pstate: Use firmware default EPP (Steve Best) [2072671] - cpufreq: intel_pstate: Update cpuinfo.max_freq on HWP_CAP changes (Steve Best) [2072671] - cpufreq: intel_pstate: Update EPP for AlderLake mobile (Steve Best) [2072671] - cpufreq: intel_pstate: Drop redundant intel_pstate_get_hwp_cap() call (Steve Best) [2072671] - cpufreq: intel_pstate: ITMT support for overclocked system (Steve Best) [2072671] - cpufreq: intel_pstate: Fix active mode offline/online EPP handling (Steve Best) [2072671] - cpufreq: intel_pstate: Clear HWP Status during HWP Interrupt enable (Steve Best) [2072671] - cpufreq: intel_pstate: Fix unchecked MSR 0x773 access (Steve Best) [2072671] - cpufreq: intel_pstate: Clear HWP desired on suspend/shutdown and offline (Steve Best) [2072671] - cpufreq: intel_pstate: Process HWP Guaranteed change notification (Steve Best) [2072671] - cpufreq: intel_pstate: Override parameters if HWP forced by BIOS (Steve Best) [2072671] - Revert "cpufreq: intel_pstate: Process HWP Guaranteed change notification" (Steve Best) [2072671] - cpufreq: intel_pstate: Process HWP Guaranteed change notification (Steve Best) [2072671] - cpuidle: intel_idle: Drop redundant backslash at line end (Steve Best) [2072893] - intel_idle: add core C6 optimization for SPR (Steve Best) [2072893] - intel_idle: add 'preferred_cstates' module argument (Steve Best) [2072893] - intel_idle: add SPR support (Steve Best) [2072893] - intel_idle: enable interrupts before C1 on Xeons (Steve Best) [2072893]- [s390] s390/airq: use DMA memory for summary indicators (Tobias Huschle) [2043905] - [s390] s390/zcrypt: Provide target domain for EP11 cprbs to scheduling function (Tobias Huschle) [2043905] - [s390] s390/zcrypt: change reply buffer size offering (Tobias Huschle) [2043905] - [s390] s390/zcrypt: Support CPRB minor version T7 (Tobias Huschle) [2043905] - [s390] s390/zcrypt: handle checkstopped cards with new state (Tobias Huschle) [2043905] - [s390] s390/zcrypt: CEX8S exploitation support (Tobias Huschle) [2043905] - [s390] s390/ap/zcrypt: debug feature improvements (Tobias Huschle) [2043905] - [s390] s390/zcrypt: rework of debug feature messages (Tobias Huschle) [2043905] - powerpc/perf: Fix the threshold compare group constraint for power10 (Steve Best) [2090058] - arch/x86: Disable system wide bus lock rate limiting (Prarit Bhargava) [2028252] - rtnetlink: return ENODEV when IFLA_ALT_IFNAME is used in dellink (Xin Long) [2062780] - rtnetlink: enable alt_ifname for setlink/newlink (Xin Long) [2062780] - rtnetlink: return ENODEV when ifname does not exist and group is given (Xin Long) [2062780] - rtnetlink: Return correct error on changing device netns (Xin Long) [2062780] - net: remove the new_ifindex argument from dev_change_net_namespace (Xin Long) [2062780] - net: Allow to specify ifindex when device is moved to another namespace (Xin Long) [2062780] - net: rtnetlink: add possibility to use alternative names as message handle (Xin Long) [2062780] - net: rtnetlink: introduce helper to get net_device instance by ifname (Xin Long) [2062780] - net: rtnetlink: unify the code in __rtnl_newlink get dev with the rest (Xin Long) [2062780] - net: rtnetlink: put alternative names to getlink message (Xin Long) [2062780] - block-map: add __GFP_ZERO flag for alloc_page in function bio_copy_kern (Ewan D. Milne) [2049198] {CVE-2022-0494} - [s390] s390/dasd: prevent double format of tracks for ESE devices (Mete Durlu) [2094296] - [s390] s390/dasd: fix data corruption for ESE devices (Mete Durlu) [2094296] - [s390] s390/dasd: Fix read inconsistency for ESE DASD devices (Mete Durlu) [2094294] - [s390] s390/dasd: Fix read for ESE with blksize < 4k (Mete Durlu) [2094294] - xfs: validate inode fork size against fork format (Andrey Albershteyn) [2089447] - selftests/tc-testing: match any qdisc type (Petr Oros) [2021843] - tc-testing: Add control-plane selftests for sch_mq (Petr Oros) [2021843] - netdevsim: Zero-initialize memory for new map's value in function nsim_bpf_map_alloc (Petr Oros) [2021843] - netdevsim: don't overwrite read only ethtool parms (Petr Oros) [2021843] - netdevsim: fix uninit value in nsim_drv_configure_vfs() (Petr Oros) [2021843] - netdevsim: rename 'driver' entry points (Petr Oros) [2021843] - netdevsim: move max vf config to dev (Petr Oros) [2021843] - netdevsim: move details of vf config to dev (Petr Oros) [2021843] - netdevsim: move vfconfig to nsim_dev (Petr Oros) [2021843] - netdevsim: take rtnl_lock when assigning num_vfs (Petr Oros) [2021843] - netdevsim: Protect both reload_down and reload_up paths (Petr Oros) [2021843] - netdevsim: make array res_ids static const, makes object smaller (Petr Oros) [2021843] - netdevsim: Add multi-queue support (Petr Oros) [2021843] - net: netdevsim: use xso.real_dev instead of xso.dev in callback functions of struct xfrmdev_ops (Petr Oros) [2021843] - netdevsim: delete unnecessary debugfs checking (Petr Oros) [2021843] - netdevsim: switch to memdup_user_nul() (Petr Oros) [2021843] - netdevsim: init u64 stats for 32bit hardware (Petr Oros) [2021843] - dm: fix bio length of empty flush (Ming Lei) [2090940] - block: initialize the target bio in __bio_clone_fast (Ming Lei) [2090940] - dm: use bio_clone_fast in alloc_io/alloc_tio (Ming Lei) [2090940] - block: clone crypto and integrity data in __bio_clone_fast (Ming Lei) [2090940] - dm-cache: remove __remap_to_origin_clear_discard (Ming Lei) [2090940] - dm: simplify the single bio fast path in __send_duplicate_bios (Ming Lei) [2090940] - dm: retun the clone bio from alloc_tio (Ming Lei) [2090940] - dm: pass the bio instead of tio to __map_bio (Ming Lei) [2090940] - dm: move cloning the bio into alloc_tio (Ming Lei) [2090940] - dm: fold __send_duplicate_bios into __clone_and_map_simple_bio (Ming Lei) [2090940] - dm: fold clone_bio into __clone_and_map_data_bio (Ming Lei) [2090940] - dm: add a clone_to_tio helper (Ming Lei) [2090940] - block: make bio_crypt_clone() able to fail (Ming Lei) [2090940] - perf/x86/uncore: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/uncore: Clean up uncore_pci_ids[] (Michael Petlan) [2088831] - perf/x86/uncore: Add Raptor Lake uncore support (Michael Petlan) [2088831] - perf/x86/cstate: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/cstate: Add Raptor Lake support (Michael Petlan) [2088831] - perf/x86/msr: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/msr: Add Raptor Lake CPU support (Michael Petlan) [2088831] - perf/x86: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86: Add Intel Raptor Lake support (Michael Petlan) [2088831] - x86/cpu: Add new Alderlake and Raptorlake CPU model numbers (Michael Petlan) [2088831] - x86/intel: Add common OPTDIFFs (Michael Petlan) [2088831] - x86/cpu: Explain Intel model naming convention (Michael Petlan) [2088831] - KVM: s390: vsie/gmap: reduce gmap_rmap overhead (Thomas Huth) [2072387] - KVM: s390x: fix SCK locking (Thomas Huth) [2072387] - s390/kvm: use union tod_clock (Thomas Huth) [2072387] - s390/time: introduce new store_tod_clock_ext() (Thomas Huth) [2072387] - s390/time: introduce union tod_clock (Thomas Huth) [2072387] - KVM: s390: Clarify SIGP orders versus STOP/RESTART (Thomas Huth) [2043868] - KVM: s390: Clear valid_wakeup in kvm_s390_handle_wait(), not in arch hook (Thomas Huth) [2072387] - KVM: s390: Ensure kvm_arch_no_poll() is read once when blocking vCPU (Thomas Huth) [2072387] - KVM: s390: Introduce kvm_s390_get_gfn_end() (Thomas Huth) [2072387] - KVM: Integrate gfn_to_memslot_approx() into search_memslots() (Thomas Huth) [2072387] - KVM: s390: Use kvm_get_vcpu() instead of open-coded access (Thomas Huth) [2072387] - KVM: s390: add debug statement for diag 318 CPNC data (Thomas Huth) [2072387] - KVM: s390: pv: properly handle page flags for protected guests (Thomas Huth) [2072387] - KVM: s390: Add a routine for setting userspace CPU state (Thomas Huth) [2072387] - net: sfc: ef10: fix memory leak in efx_ef10_mtd_probe() (Íñigo Huguet) [2042840] - net: sfc: fix memory leak due to ptp channel (Íñigo Huguet) [2042840] - net: sfc: fix using uninitialized xdp tx_queue (Íñigo Huguet) [2042840] - sfc: Do not free an empty page_ring (Íñigo Huguet) [2042840] - net: sfc: add missing xdp queue reinitialization (Íñigo Huguet) [2042840] - sfc: Avoid NULL pointer dereference on systems without numa awareness (Íñigo Huguet) [2042840] - sfc: extend the locking on mcdi->seqno (Íñigo Huguet) [2042840] - sfc: set affinity hints in local NUMA node only (Íñigo Huguet) [2042840] - sfc: default config to 1 channel/core in local NUMA node only (Íñigo Huguet) [2042840] - sfc: The size of the RX recycle ring should be more flexible (Íñigo Huguet) [2042840] - sfc: Use swap() instead of open coding it (Íñigo Huguet) [2042840] - ethernet/sfc: remove redundant rc variable (Íñigo Huguet) [2042840] - PCI/ACPI: Allow D3 only if Root Port can signal and wake from D3 (Myron Stowe) [2015785] - thunderbolt: Do not make DROM read success compulsory (Myron Stowe) [2015785] - thunderbolt: Do not resume routers if UID is not set (Myron Stowe) [2015785] - thunderbolt: Retry DROM reads for more failure scenarios (Myron Stowe) [2015785] - PCI/ACPI: Replace acpi_bus_get_device() with acpi_fetch_acpi_dev() (Myron Stowe) [2015785] - ACPI: scan: Introduce acpi_fetch_acpi_dev() (Myron Stowe) [2015785] - PCI: PM: Fix ordering of operations in pci_back_from_sleep() (Myron Stowe) [2015785] - PCI: PM: Do not call platform_pci_power_manageable() unnecessarily (Myron Stowe) [2015785] - PCI: PM: Make pci_choose_state() call pci_target_state() (Myron Stowe) [2015785] - PCI: PM: Rearrange pci_target_state() (Myron Stowe) [2015785] - PCI: PM: Simplify acpi_pci_power_manageable() (Myron Stowe) [2015785] - PCI: PM: Drop struct pci_platform_pm_ops (Myron Stowe) [2015785] - PCI: ACPI: PM: Do not use pci_platform_pm_ops for ACPI (Myron Stowe) [2015785] - PCI: PM: Do not use pci_platform_pm_ops for Intel MID PM (Myron Stowe) [2015785] - ACPI: glue: Look for ACPI bus type only if ACPI companion is not known (Myron Stowe) [2015785] - ACPI: glue: Drop cleanup callback from struct acpi_bus_type (Myron Stowe) [2015785] - PCI: ACPI: Drop acpi_pci_bus (Myron Stowe) [2015785] - PCI: ACPI: Check parent pointer in acpi_pci_find_companion() (Myron Stowe) [2015785] - PCI/ACPI: Don't reset a fwnode set by OF (Myron Stowe) [2015785] - PCI: VMD: ACPI: Make ACPI companion lookup work for VMD bus (Myron Stowe) [2015785] - PCI: Change the type of probe argument in reset functions (Myron Stowe) [2015785] - PCI: Add support for ACPI _RST reset method (Myron Stowe) [2015785] - PCI: Setup ACPI fwnode early and at the same time with OF (Myron Stowe) [2015785] - PCI: Use acpi_pci_power_manageable() (Myron Stowe) [2015785] - PCI: Add pci_set_acpi_fwnode() to set ACPI_COMPANION (Myron Stowe) [2015785] - PCI: Allow userspace to query and set device reset mechanism (Myron Stowe) [2015785] - PCI: Remove reset_fn field from pci_dev (Myron Stowe) [2015785] - PCI: Add array to track reset method ordering (Myron Stowe) [2015785] - PCI: Add pcie_reset_flr() with 'probe' argument (Myron Stowe) [2015785] - PCI: Cache PCIe Device Capabilities register (Myron Stowe) [2015785] - driver core: Split device_platform_notify() (Myron Stowe) [2015785] - software nodes: Split software_node_notify() (Myron Stowe) [2015785] - PCI: PM: Enable PME if it can be signaled from D3cold (Myron Stowe) [2015785] - PCI: PM: Avoid forcing PCI_D0 for wakeup reasons inconsistently (Myron Stowe) [2015785] - PCI: Use pci_update_current_state() in pci_enable_device_flags() (Myron Stowe) [2015785] - PCI: Add pci_reset_bus_function() Secondary Bus Reset interface (Myron Stowe) [2015785] - ACPI: scan: Rearrange code related to acpi_get_device_data() (Myron Stowe) [2015785] - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI (Myron Stowe) [2015785] - crypto: cavium/nitrox - use pcie_flr instead of duplicating it (Myron Stowe) [2015785] - NFSv4 only print the label when its queried (Scott Mayhew) [2030827] - NFSv4.1 provide mount option to toggle trunking discovery (Scott Mayhew) [2030827] - NFSv4.1 test and add 4.1 trunking transport (Scott Mayhew) [2030827] - SUNRPC allow for unspecified transport time in rpc_clnt_add_xprt (Scott Mayhew) [2030827] - NFSv4 handle port presence in fs_location server string (Scott Mayhew) [2030827] - NFSv4 expose nfs_parse_server_name function (Scott Mayhew) [2030827] - NFSv4.1 query for fs_location attr on a new file system (Scott Mayhew) [2030827] - NFSv4 store server support for fs_location attribute (Scott Mayhew) [2030827] - NFSv4 remove zero number of fs_locations entries error check (Scott Mayhew) [2030827] - NFSv4.1 add network transport when session trunking is detected (Scott Mayhew) [2030827] - SUNRPC enforce creation of no more than max_connect xprts (Scott Mayhew) [2030827] - NFSv4 introduce max_connect mount options (Scott Mayhew) [2030827] - SUNRPC add xps_nunique_destaddr_xprts to xprt_switch_info in sysfs (Scott Mayhew) [2030827] - SUNRPC keep track of number of transports to unique addresses (Scott Mayhew) [2030827] - powerpc/papr_scm: Make 'perf_stats' invisible if perf-stats unavailable (Diego Domingos) [1986188] - powerpc/papr_scm: Fix warnings about undeclared variable (Diego Domingos) [1986188] - VMCI: Add support for ARM64 (Cathy Avery) [2080095] - VMCI: Release notification_bitmap in error path (Cathy Avery) [2080095] - VMCI: Check exclusive_vectors when freeing interrupt 1 (Cathy Avery) [2080095] - VMCI: Fix some error handling paths in vmci_guest_probe_device() (Cathy Avery) [2080095] - VMCI: No need to clear memory after a dma_alloc_coherent() call (Cathy Avery) [2080095] - VMCI: Fix the description of vmci_check_host_caps() (Cathy Avery) [2080095] - VMCI: dma dg: add support for DMA datagrams receive (Cathy Avery) [2080095] - VMCI: dma dg: add support for DMA datagrams sends (Cathy Avery) [2080095] - VMCI: dma dg: allocate send and receive buffers for DMA datagrams (Cathy Avery) [2080095] - VMCI: dma dg: register dummy IRQ handlers for DMA datagrams (Cathy Avery) [2080095] - VMCI: dma dg: set OS page size (Cathy Avery) [2080095] - VMCI: dma dg: whitespace formatting change for vmci register defines (Cathy Avery) [2080095] - VMCI: dma dg: detect DMA datagram capability (Cathy Avery) [2080095] - VMCI: Use BIT() macro for bit definitions (Cathy Avery) [2080095] - VMCI: dma dg: add MMIO access to registers (Cathy Avery) [2080095] - misc: vmw_vmci: Switch to kvfree_rcu() API (Cathy Avery) [2080095] - VMCI: fix NULL pointer dereference when unmapping queue pair (Cathy Avery) [2080095] - misc: vmci: remove redundant variable is_local (Cathy Avery) [2080095] - misc: vmw_vmci: return the correct errno code (Cathy Avery) [2080095] - misc: vmw_vmci: explicitly initialize vmci_datagram payload (Cathy Avery) [2080095] - misc: vmw_vmci: explicitly initialize vmci_notify_bm_set_msg struct (Cathy Avery) [2080095] - vmci_host: print unexpanded names of ioctl requests in debug messages (Cathy Avery) [2080095] - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue (Cathy Avery) [2080095] - VMCI: Enforce queuepair max size for IOCTL_VMCI_QUEUEPAIR_ALLOC (Cathy Avery) [2080095] - VMCI: Use set_page_dirty_lock() when unregistering guest memory (Cathy Avery) [2080095] - misc/vmw_vmci: fix typo (Cathy Avery) [2080095] - misc: vmw_vmci: fix kernel info-leak by initializing dbells in vmci_ctx_get_chkpt_doorbells() (Cathy Avery) [2080095] - VMCI: check return value of get_user_pages_fast() for errors (Cathy Avery) [2080095] - vmci_host: get rid of pointless access_ok() (Cathy Avery) [2080095] - treewide: Add SPDX license identifier - Makefile/Kconfig (Cathy Avery) [2080095] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Cathy Avery) [2080095] - VMCI: Use memdup_user() rather than duplicating its implementation (Cathy Avery) [2080095] - VMCI: remove set but not used variable 'cid' (Cathy Avery) [2080095] - vmci: type promotion bug in qp_host_get_user_memory() (Cathy Avery) [2080095]- misc: pvpanic: introduce device capability (Emanuele Giuseppe Esposito) [2088457] - misc: pvpanic: add crash loaded event (Emanuele Giuseppe Esposito) [2088457] - misc: pvpanic: move bit definition to uapi header file (Emanuele Giuseppe Esposito) [2088457] - rfkill: make new event layout opt-in (Jose Ignacio Tornos Martinez) [2023175] - lib/sbitmap: fix sb->map leak (Ming Lei) [2093549] - openvswitch: fix OOB access in reserve_sfa_size() (Antoine Tenart) [2082023] - net: openvswitch: don't send internal clone attribute to the userspace. (Antoine Tenart) [2082023 2085509] - openvswitch: Add recirc_id to recirc warning (Antoine Tenart) [2082023] - openvswitch: Fixed nd target mask field in the flow dump. (Antoine Tenart) [2082023] - net: openvswitch: Remove redundant if statements (Antoine Tenart) [2082023] - netfilter: nf_tables: disallow non-stateful expression in sets earlier (Phil Sutter) [2092987] {CVE-2022-1966} - cachefiles: Drop superfluous readpages aops NULL check (Dave Wysochanski) [2083136] - audit: fix AUDIT_DISABLED undeclared error when AUDITSYSCALL unconfigured (Richard Guy Briggs) [2035123] - audit: log AUDIT_TIME_* records only from rules (Richard Guy Briggs) [2035123] - audit: improve audit queue handling when "audit=1" on cmdline (Richard Guy Briggs) [2035123] - audit: replace zero-length array with flexible-array member (Richard Guy Briggs) [2035123] - audit: use struct_size() helper in audit_[send|make]_reply() (Richard Guy Briggs) [2035123] - audit: ensure userspace is penalized the same as the kernel when under pressure (Richard Guy Briggs) [2035123] - audit: use struct_size() helper in kmalloc() (Richard Guy Briggs) [2035123] - audit: improve robustness of the audit queue handling (Richard Guy Briggs) [2035123] - audit: return early if the filter rule has a lower priority (Richard Guy Briggs) [2035123] - lsm_audit: avoid overloading the "key" audit field (Richard Guy Briggs) [2035123] - audit: Convert to SPDX identifier (Richard Guy Briggs) [2035123] - audit: rename struct node to struct audit_node to prevent future name collisions (Richard Guy Briggs) [2035123] - audit: prepare audit_context for use in calling contexts beyond syscalls (Richard Guy Briggs) [2035123] - audit: fix possible null-pointer dereference in audit_filter_rules (Richard Guy Briggs) [2035123] - audit: add header protection to kernel/audit.h (Richard Guy Briggs) [2035123] - audit: remove unnecessary 'ret' initialization (Richard Guy Briggs) [2035123] - audit: remove trailing spaces and tabs (Richard Guy Briggs) [2035123] - audit: Use list_move instead of list_del/list_add (Richard Guy Briggs) [2035123] - audit: Rename enum audit_state constants to avoid AUDIT_DISABLED redefinition (Richard Guy Briggs) [2035123] - selftests/bpf: Fix btf_dump test under new clang (Yauheni Kaliuta) [2087050] - perf: Fix sys_perf_event_open() race against self (Michael Petlan) [2087949] - scsi: fnic: Finish scsi_cmnd before dropping the spinlock (John Meneghini) [2062905] - [s390] s390/setup: Fix secure ipl message (Mete Durlu) [2058619] - perf evlist: Fix failed to use cpu list for uncore events (Michael Petlan) [2088835] - perf tools: Enable on a list of CPUs for hybrid (Michael Petlan) [2088835] - perf tools: Create hybrid flag in target (Michael Petlan) [2088835] - libperf: Add perf_cpu_map__default_new() (Michael Petlan) [2088835] - drm/i915: Stop force enabling pipe bottom color gammma/csc (Foggy Liu) [2054487] - blk-mq: fix blk_mq_flush_plug_list (Ming Lei) [2088397] - kernel/resource: move and rename IORESOURCE_MEM_DRIVER_MANAGED (Nico Pache) [2028988] - powerpc/numa: Handle partially initialized numa nodes (Nico Pache) [2028988] - mm: make free_area_init_node aware of memory less nodes (Nico Pache) [2028988] - mm, memory_hotplug: reorganize new pgdat initialization (Nico Pache) [2028988] - mm, memory_hotplug: drop arch_free_nodedata (Nico Pache) [2028988] - mm: handle uninitialized numa nodes gracefully (Nico Pache) [2028988] - mm, memory_hotplug: make arch_alloc_nodedata independent on CONFIG_MEMORY_HOTPLUG (Nico Pache) [2028988] - kexec_file: don't place kexec images on IORESOURCE_MEM_DRIVER_MANAGED (Nico Pache) [2028988] - mm/memory_hotplug: handle memblock_add_node() failures in add_memory_resource() (Nico Pache) [2028988] - mm/memory_hotplug: introduce add_memory_driver_managed() (Nico Pache) [2028988] - mm/memory_hotplug: handle memblocks only with CONFIG_ARCH_KEEP_MEMBLOCK (Nico Pache) [2028988] - mm/memory_hotplug: set node_start_pfn of hotadded pgdat to 0 (Nico Pache) [2028988] - mm/hotplug: reorder memblock_[free|remove]() calls in try_remove_memory() (Nico Pache) [2028988] - mm: memblock: make keeping memblock memory opt-in rather than opt-out (Nico Pache) [2028988] - [s390] s390/cpumf: add new extended counter set for IBM z16 (Mete Durlu) [2047728]- [s390] s390/qdio: clarify logical vs absolute in QIB's kerneldoc (Mete Durlu) [2043836] - [s390] s390/qdio: remove unneeded sanity check in qdio_do_sqbs() (Mete Durlu) [2043836] - [s390] s390/qdio: split do_QDIO() (Mete Durlu) [2043836] - [s390] s390/qdio: split qdio_inspect_queue() (Mete Durlu) [2043836] - [s390] s390/qdio: clarify handler logic for qdio_handle_activate_check() (Mete Durlu) [2043836] - [s390] s390/qdio: clean up access to queue in qdio_handle_activate_check() (Mete Durlu) [2043836] - [s390] s390/qdio: avoid allocating the qdio_irq with GFP_DMA (Mete Durlu) [2043836] - [s390] s390/qdio: improve handling of CIWs (Mete Durlu) [2043836] - [s390] s390/qdio: remove QDIO_SBAL_SIZE macro (Mete Durlu) [2043836] - [s390] scsi: zfcp: fix kernel doc comments (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused support for SLIB parameters (Mete Durlu) [2043836] - [s390] s390/qdio: consolidate QIB code (Mete Durlu) [2043836] - [s390] s390/qdio: use dev_info() in qdio_print_subchannel_info() (Mete Durlu) [2043836] - [s390] s390/qdio: fine-tune the queue sync (Mete Durlu) [2043836] - [s390] s390/qdio: clean up SIGA capability tracking (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused sync-after-IRQ infrastructure (Mete Durlu) [2043836] - [s390] s390/qdio: use absolute data address in ESTABLISH ccw (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused macros (Mete Durlu) [2043836] - [s390] s390/qdio: clarify reporting of errors to the drivers (Mete Durlu) [2043836] - [s390] s390/qdio: remove unneeded siga-sync for Output Queue (Mete Durlu) [2043836] - [s390] s390/qdio: remove remaining tasklet & timer code (Mete Durlu) [2043836] - ice: clear stale Tx queue settings before configuring (Petr Oros) [2079926] - ice: fix crash when writing timestamp on RX rings (Petr Oros) [2079926] - ice: Fix race during aux device (un)plugging (Petr Oros) [2079926] - ice: fix PTP stale Tx timestamps cleanup (Petr Oros) [2079926] - ice: ice_sched: fix an incorrect NULL check on list iterator (Petr Oros) [2079926] - ice: fix use-after-free when deinitializing mailbox snapshot (Petr Oros) [2079926] - ice: wait 5 s for EMP reset after firmware flash (Petr Oros) [2079926] - ice: Protect vf_state check by cfg_lock in ice_vc_process_vf_msg() (Petr Oros) [2079926] - ice: Fix incorrect locking in ice_vc_process_vf_msg() (Petr Oros) [2079926] - ice: Fix memory leak in ice_get_orom_civd_data() (Petr Oros) [2079926] - ice: fix crash in switchdev mode (Petr Oros) [2079926] - Revert "iavf: Fix deadlock occurrence during resetting VF interface" (Petr Oros) [2079926] - ice: arfs: fix use-after-free when freeing @rx_cpu_rmap (Petr Oros) [2079926] - ice: clear cmd_type_offset_bsz for TX rings (Petr Oros) [2079926] - ice: xsk: fix VSI state check in ice_xsk_wakeup() (Petr Oros) [2079926] - ice: synchronize_rcu() when terminating rings (Petr Oros) [2079926] - ice: Do not skip not enabled queues in ice_vc_dis_qs_msg (Petr Oros) [2079926] - ice: Set txq_teid to ICE_INVAL_TEID on ring creation (Petr Oros) [2079926] - ice: Fix broken IFF_ALLMULTI handling (Petr Oros) [2079926] - ice: Fix MAC address setting (Petr Oros) [2079926] - redhat/configs: Remove CONFIG_MFD_INTEL_PMT (Prarit Bhargava) [2058805] - redhat/configs: Add CONFIG_INTEL_VSEC (Prarit Bhargava) [2058805] - platform/x86/intel: Move intel_pmt from MFD to Auxiliary Bus (Prarit Bhargava) [2058805] - PCI: Add #defines for accessing PCIe DVSEC fields (Prarit Bhargava) [2058805] - platform/x86: intel_pmt_telemetry: Ignore zero sized entries (Prarit Bhargava) [2058805] - platform/x86/intel: pmt: Use y instead of objs in Makefile (Prarit Bhargava) [2058805] - platform/x86/intel: Move Intel PMT drivers to new subfolder (Prarit Bhargava) [2058805] - dlm: fix plock invalid read (Alexander Aring) [2053095] - NFS: LOOKUP_DIRECTORY is also ok with symlinks (Scott Mayhew) [2059727] - NFSv4: nfs_atomic_open() can race when looking up a non-regular file (Scott Mayhew) [2059727] - NFSv4: Handle case where the lookup of a directory fails (Scott Mayhew) [2059727] - redhat: always tag non-maintainer builds with .gXXXX (Jarod Wilson) - mm, compaction: fast_find_migrateblock() should return pfn in the target zone (Rafael Aquini) [2067130] - [s390] s390/pci: expose a PCI device's UID as its index (Mete Durlu) [1939916] - [s390] s390/pci: expose UID uniqueness guarantee (Mete Durlu) [1939916] - [s390] s390/pci: Documentation for zPCI (Mete Durlu) [1939916] - powerpc/fadump: print start of preserved area (Diego Domingos) [2075092] - powerpc/fadump: align destination address to pagesize (Diego Domingos) [2075092] - powerpc/fadump: fix PT_LOAD segment for boot memory area (Diego Domingos) [2075092] - dmaengine: idxd: make idxd_wq_enable() return 0 if wq is already enabled (Jerry Snitselaar) [2083414] - dmaengine: idxd: Remove unnecessary synchronize_irq() before free_irq() (Jerry Snitselaar) [2083414] - dmaengine: idxd: add missing callback function to support DMA_INTERRUPT (Jerry Snitselaar) [2083414] - dmaengine: idxd: skip irq free when wq type is not kernel (Jerry Snitselaar) [2083414] - dmaengine: idxd: make idxd_register/unregister_dma_channel() static (Jerry Snitselaar) [2083414] - dmaengine: idxd: remove redudant idxd_wq_disable_cleanup() call (Jerry Snitselaar) [2083414] - dmaengine: idxd: free irq before wq type is reset (Jerry Snitselaar) [2083414] - dmaengine: idxd: fix lockdep warning on device driver removal (Jerry Snitselaar) [2083414] - dmaengine: idxd: Separate user and kernel pasid enabling (Jerry Snitselaar) [2083414] - dmaengine: idxd: refactor wq driver enable/disable operations (Jerry Snitselaar) [2083414] - dmaengine: idxd: move wq irq enabling to after device enable (Jerry Snitselaar) [2083414] - dmaengine: idxd: set max_xfer and max_batch for RO device (Jerry Snitselaar) [2083414] - dmaengine: idxd: Fix the error handling path in idxd_cdev_register() (Jerry Snitselaar) [2083414] - dmaengine: idxd: set DMA_INTERRUPT cap bit (Jerry Snitselaar) [2083414] - dmaengine: add verification of DMA_INTERRUPT capability for dmatest (Jerry Snitselaar) [2083414] - dmaengine: idxd: remove trailing white space on input str for wq name (Jerry Snitselaar) [2083414] - dmaengine: idxd: don't load pasid config until needed (Jerry Snitselaar) [2083414] - dmaengine: idxd: fix retry value to be constant for duration of function call (Jerry Snitselaar) [2075705] - dmaengine: idxd: match type for retries var in idxd_enqcmds() (Jerry Snitselaar) [2075705] - net: mana: Reuse XDP dropped page (Mohammed Gamal) [2086556] - net: mana: Add counter for XDP_TX (Mohammed Gamal) [2086556] - net: mana: Add counter for packet dropped by XDP (Mohammed Gamal) [2086556] - net: mana: Use struct_size() helper in mana_gd_create_dma_region() (Mohammed Gamal) [2086556] - SUNRPC release the transport of a relocated task with an assigned transport (Scott Mayhew) [2023840] - SUNRPC: Do not dereference non-socket transports in sysfs (Scott Mayhew) [2023840] - SUNRPC don't resend a task on an offlined transport (Scott Mayhew) [2023840] - SUNRPC: lock against ->sock changing during sysfs read (Scott Mayhew) [2023840] - SUNRPC: Check if the xprt is connected before handling sysfs reads (Scott Mayhew) [2023840] - SUNRPC: Add dst_port to the sysfs xprt info file (Scott Mayhew) [2023840] - SUNRPC: Add srcaddr as a file in sysfs (Scott Mayhew) [2023840] - sunrpc: Fix return value of get_srcport() (Scott Mayhew) [2023840] - sunrpc: remove an offlined xprt using sysfs (Scott Mayhew) [2023840] - sunrpc: display xprt's queuelen of assigned tasks via sysfs (Scott Mayhew) [2023840] - SUNRPC: take a xprt offline using sysfs (Scott Mayhew) [2023840] - SUNRPC for TCP display xprt's source port in sysfs xprt_info (Scott Mayhew) [2023840] - SUNRPC query transport's source port (Scott Mayhew) [2023840] - SUNRPC display xprt's main value in sysfs's xprt_info (Scott Mayhew) [2023840] - SUNRPC mark the first transport (Scott Mayhew) [2023840] - NFSv4.1 identify and mark RPC tasks that can move between transports (Scott Mayhew) [2023840] - sunrpc: provide showing transport's state info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: provide multipath info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: provide transport info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: add dst_attr attributes to the sysfs xprt directory (Scott Mayhew) [2023840] - sunrpc: add add sysfs directory per xprt under each xprt_switch (Scott Mayhew) [2023840] - sunrpc: add a symlink from rpc-client directory to the xprt_switch (Scott Mayhew) [2023840] - sunrpc: add xprt_switch direcotry to sunrpc's sysfs (Scott Mayhew) [2023840] - sunrpc: keep track of the xprt_class in rpc_xprt structure (Scott Mayhew) [2023840] - sunrpc: add IDs to multipath (Scott Mayhew) [2023840] - sunrpc: add xprt id (Scott Mayhew) [2023840] - sunrpc: Create per-rpc_clnt sysfs kobjects (Scott Mayhew) [2023840] - sunrpc: Create a client/ subdirectory in the sunrpc sysfs (Scott Mayhew) [2023840] - sunrpc: Create a sunrpc directory under /sys/kernel/ (Scott Mayhew) [2023840] - vfs: check fd has read access in kernel_read_file_from_fd() (Ian Kent) [2040615] - SUNRPC: Fix NFSD's request deferral on RDMA transports (Benjamin Coddington) [2090525] - vdpa/mlx5: Use consistent RQT size (Cindy Lu) [2063108] - vdpa/mlx5: add validation for VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET command (Cindy Lu) [2063108] - vdpa/mlx5: should verify CTRL_VQ feature exists for MQ (Cindy Lu) [2063108] - gfs2: Stop using glock holder auto-demotion for now (Andreas Gruenbacher) [2054855] - gfs2: buffered write prefaulting (Andreas Gruenbacher) [2054855] - gfs2: Align read and write chunks to the page cache (Andreas Gruenbacher) [2054855] - gfs2: Pull return value test out of should_fault_in_pages (Andreas Gruenbacher) [2054855] - gfs2: Clean up use of fault_in_iov_iter_{read,write}able (Andreas Gruenbacher) [2054855] - gfs2: Variable rename (Andreas Gruenbacher) [2054855] - gfs2: Fix filesystem block deallocation for short writes (Andreas Gruenbacher) [2054855] - iomap: iomap_write_end cleanup (Andreas Gruenbacher) [2054855] - iomap: iomap_write_failed fix (Andreas Gruenbacher) [2054855] - gfs2: Don't re-check for write past EOF unnecessarily (Andreas Gruenbacher) [2054855] - gfs2: No short reads or writes upon glock contention (Andreas Gruenbacher) [2054855] - fs/iomap: Fix buffered write page prefaulting (Andreas Gruenbacher) [2054855] - generic_perform_write()/iomap_write_actor(): saner logics for short copy (Andreas Gruenbacher) [2054855] - iomap: Convert iomap_write_end types (Andreas Gruenbacher) [2054855] - gfs2: Make sure not to return short direct writes (Andreas Gruenbacher) [2054855] - gfs2: Remove dead code in gfs2_file_read_iter (Andreas Gruenbacher) [2054855] - gfs2: Fix gfs2_file_buffered_write endless loop workaround (Andreas Gruenbacher) [2054855] - gfs2: Minor retry logic cleanup (Andreas Gruenbacher) [2054855] - gfs2: Disable page faults during lockless buffered reads (Andreas Gruenbacher) [2054855] - gfs2: Fix should_fault_in_pages() logic (Andreas Gruenbacher) [2054855] - mm: gup: make fault_in_safe_writeable() use fixup_user_fault() (Andreas Gruenbacher) [2054855] - gfs2: Initialize gh_error in gfs2_glock_nq (Andreas Gruenbacher) [2054855] - gfs2: Switch lock order of inode and iopen glock (Andreas Gruenbacher) [2054855] - gfs2: cancel timed-out glock requests (Andreas Gruenbacher) [2054855] - gfs2: Expect -EBUSY after canceling dlm locking requests (Andreas Gruenbacher) [2054855] - gfs2: gfs2_setattr_size error path fix (Andreas Gruenbacher) [2054855] - gfs2: assign rgrp glock before compute_bitstructs (Bob Peterson) [2054855] - gfs2: Fix gfs2_release for non-writers regression (Bob Peterson) [1955591] - gfs2: gfs2_create_inode rework (Andreas Gruenbacher) [1955591] - gfs2: gfs2_inode_lookup rework (Andreas Gruenbacher) [1955591] - gfs2: gfs2_inode_lookup cleanup (Andreas Gruenbacher) [1955591] - gfs2: Fix remote demote of weak glock holders (Andreas Gruenbacher) [1955591] - gfs2: Fix glock_hash_walk bugs (Andreas Gruenbacher) [1955591] - gfs2: Cancel remote delete work asynchronously (Bob Peterson) [1955591] - gfs2: set glock object after nq (Bob Peterson) [1955591] - gfs2: remove RDF_UPTODATE flag (Bob Peterson) [1955591] - gfs2: Eliminate GIF_INVALID flag (Bob Peterson) [1955591] - gfs2: Fix atomic bug in gfs2_instantiate (Andreas Gruenbacher) [1955591] - gfs2: fix GL_SKIP node_scope problems (Bob Peterson) [1955591] - gfs2: Add some flags missing from glock output (Bob Peterson) [1955591] - gfs2: split glock instantiation off from do_promote (Bob Peterson) [1955591] - gfs2: further simplify do_promote (Bob Peterson) [1955591] - gfs2: re-factor function do_promote (Bob Peterson) [1955591] - gfs2: Remove 'first' trace_gfs2_promote argument (Andreas Gruenbacher) [1955591] - gfs2: change go_lock to go_instantiate (Bob Peterson) [1955591] - gfs2: Switch some BUG_ON to GLOCK_BUG_ON for debug (Bob Peterson) [1955591] - gfs2: move GL_SKIP check from glops to do_promote (Bob Peterson) [1955591] - gfs2: Add GL_SKIP holder flag to dump_holder (Bob Peterson) [1955591] - gfs2: remove redundant check in gfs2_rgrp_go_lock (Bob Peterson) [1955591] - gfs2: Fix mmap + page fault deadlocks for direct I/O (Andreas Gruenbacher) [1955591] - iov_iter: Introduce ITER_IOVEC_FLAG_NOFAULT flag to disable page faults (Andreas Gruenbacher) [1955591] - gup: Introduce FOLL_NOFAULT flag to disable page faults (Andreas Gruenbacher) [1955591] - iomap: Add done_before argument to iomap_dio_rw (Andreas Gruenbacher) [1955591] - iomap: Support partial direct I/O on user copy failures (Andreas Gruenbacher) [1955591] - iomap: Fix iomap_dio_rw return value for user copies (Andreas Gruenbacher) [1955591] - iomap: support reading inline data from non-zero pos (Andreas Gruenbacher) [1955591] - gfs2: Only dereference i->iov when iter_is_iovec(i) (Andreas Gruenbacher) [1955591] - gfs2: Prevent endless loops in gfs2_file_buffered_write (Andreas Gruenbacher) [1955591] - gfs2: Fix mmap + page fault deadlocks for buffered I/O (Andreas Gruenbacher) [1955591] - gfs2: Eliminate ip->i_gh (Andreas Gruenbacher) [1955591] - gfs2: Move the inode glock locking to gfs2_file_buffered_write (Andreas Gruenbacher) [1955591] - gfs2: Fix "Introduce flag for glock holder auto-demotion" (Andreas Gruenbacher) [1955591] - gfs2: Introduce flag for glock holder auto-demotion (Bob Peterson) [1955591] - gfs2: fix scheduling while atomic bug in glocks (Bob Peterson) [1955591] - gfs2: Clean up function may_grant (Andreas Gruenbacher) [1955591] - gfs2: Add wrapper for iomap_file_buffered_write (Andreas Gruenbacher) [1955591] - iov_iter: Introduce fault_in_iov_iter_writeable (Andreas Gruenbacher) [1955591] - iov_iter: Turn iov_iter_fault_in_readable into fault_in_iov_iter_readable (Andreas Gruenbacher) [1955591] - gup: Turn fault_in_pages_{readable,writeable} into fault_in_{readable,writeable} (Andreas Gruenbacher) [1955591] - powerpc/signal64: Don't opencode page prefaulting (Andreas Gruenbacher) [1955591] - sanitize iov_iter_fault_in_readable() (Andreas Gruenbacher) [1955591] - [xarray] iov_iter_fault_in_readable() should do nothing in xarray case (Andreas Gruenbacher) [1955591] - powerpc/kvm: Fix kvm_use_magic_page (Andreas Gruenbacher) [1955591] - iov_iter: Fix iov_iter_get_pages{,_alloc} page fault return value (Andreas Gruenbacher) [1955591] - gfs2: Fix length of holes reported at end-of-file (Andreas Gruenbacher) [1955591] - gfs2: Remove redundant check from gfs2_glock_dq (Bob Peterson) [1955591] - gfs2: release iopen glock early in evict (Bob Peterson) [1955591] - mm: change fault_in_pages_* to have an unsigned size parameter (Andreas Gruenbacher) [1955591] - gfs2: Eliminate vestigial HIF_FIRST (Bob Peterson) [1955591] - iomap: remove the iomap arguments to ->page_{prepare,done} (Andreas Gruenbacher) [1955591] - net: sched: fix use-after-free in tc_new_tfilter() (Ivan Vecera) [2071704]- Bluetooth: virtio_bt: fix memory leak in virtbt_rx_handle() (Gopal Tiwari) [2076180] - powerpc/papr_scm: Fix buffer overflow issue with CONFIG_FORTIFY_SOURCE (Gustavo Walbon) [2069468] - powerpc/papr_scm: Fix build failure when (Gustavo Walbon) [2069468] - drivers/nvdimm: Fix build failure when CONFIG_PERF_EVENTS is not set (Gustavo Walbon) [2069468] - powerpc/papr_scm: Add perf interface support (Gustavo Walbon) [2069468] - drivers/nvdimm: Add perf interface to expose nvdimm performance stats (Gustavo Walbon) [2069468] - drivers/nvdimm: Add nvdimm pmu structure (Gustavo Walbon) [2069468] - mptcp: Fix crash due to tcp_tsorted_anchor was initialized before release skb (Davide Caratti) [2084048] - mptcp: Correctly set DATA_FIN timeout when number of retransmits is large (Davide Caratti) [2084048] - mptcp: add mibs counter for ignored incoming options (Davide Caratti) [2084048] - mptcp: fix race in incoming ADD_ADDR option processing (Davide Caratti) [2084048] - mptcp: netlink: process IPv6 addrs in creating listening sockets (Davide Caratti) [2084048] - mptcp: use delegate action to schedule 3rd ack retrans (Davide Caratti) [2084048] - mptcp: fix delack timer (Davide Caratti) [2084048] - powerpc/module_64: use module_init_section instead of patching names (Jan Stancek) [1985851] - module: check for exit sections in layout_sections() instead of module_init_section() (Jan Stancek) [1985851] - module: treat exit sections the same as init sections when !CONFIG_MODULE_UNLOAD (Jan Stancek) [1985851] - module: allow arch overrides for .exit section names (Jan Stancek) [1985851] - ARM: 8976/1: module: allow arch overrides for .init section names (Jan Stancek) [1985851] - KVM: s390: pv: make use of ultravisor AIV support (Thomas Huth) [2043870] - redhat: Enable VM kselftests (Nico Pache) [1978539] - selftests: vm: Makefile: rename TARGETS to VMTARGETS (Nico Pache) [1978539] - redhat: enable CONFIG_TEST_VMALLOC for vm selftests (Nico Pache) [1978539] - redhat: enable GUP TEST for kselftests (Nico Pache) [1978539] - redhat: Enable HMM test to be used by the kselftest test suite (Nico Pache) [1978539] - selftests/vm/pkeys: fix alloc_random_pkey() to make it really, really random (Nico Pache) [1978539] - selftests/vm: fix display of page size in map_hugetlb (Nico Pache) [1978539] - selftests/vm: fix building protection keys test (Nico Pache) [1978539] - lib/test_vmalloc.c: do not create cpumask_t variable on stack (Nico Pache) [1978539] - vmalloc: add test driver to analyse vmalloc allocator (Nico Pache) [1978539] - vmalloc: export __vmalloc_node_range for CONFIG_TEST_VMALLOC_MODULE (Nico Pache) [1978539] - selftests/vm: add protection_keys_32 / protection_keys_64 to gitignore (Nico Pache) [1978539] - selftests/vm: rename file run_vmtests to run_vmtests.sh (Nico Pache) [1978539] - mm/gup_benchmark: support threading (Nico Pache) [1978539] - selftests/vm: gup_test: test faulting in kernel, and verify pinnable pages (Nico Pache) [1978539] - selftests/vm: gup_test: fix test flag (Nico Pache) [1978539] - selftests/vm: fix out-of-tree build (Nico Pache) [1978539] - selftests/vm: 2x speedup for run_vmtests.sh (Nico Pache) [1978539] - selftests/vm: hmm-tests: remove the libhugetlbfs dependency (Nico Pache) [1978539] - selftests/vm: run_vmtests.sh: update and clean up gup_test invocation (Nico Pache) [1978539] - selftests/vm: gup_test: introduce the dump_pages() sub-test (Nico Pache) [1978539] - selftests/vm: only some gup_test items are really benchmarks (Nico Pache) [1978539] - selftests/vm: minor cleanup: Makefile and gup_test.c (Nico Pache) [1978539] - selftests/vm: rename run_vmtests --> run_vmtests.sh (Nico Pache) [1978539] - selftests/vm: use a common gup_test.h (Nico Pache) [1978539] - mm/gup_benchmark: rename to mm/gup_test (Nico Pache) [1978539] - tools/testing/selftests/vm: fix build error (Nico Pache) [1978539] - selftests: vm: add fragment CONFIG_GUP_BENCHMARK (Nico Pache) [1978539] - selftests/vm: 8x compaction_test speedup (Nico Pache) [1978539] - selftests/vm: fix incorrect gcc invocation in some cases (Nico Pache) [1978539] - selftests/vm: fix false build success on the second and later attempts (Nico Pache) [1978539] - mm/gup: don't permit users to call get_user_pages with FOLL_LONGTERM (Nico Pache) [1978539] - mm/gup_benchmark: use pin_user_pages for FOLL_LONGTERM flag (Nico Pache) [1978539] - mm/gup_benchmark: update the documentation in Kconfig (Nico Pache) [1978539] - khugepaged: selftests: fix timeout condition in wait_for_scan() (Nico Pache) [1978539] - selftests: vm: pkeys: fix multilib builds for x86 (Nico Pache) [1978539] - selftests: vm: pkeys: use the correct page size on powerpc (Nico Pache) [1978539] - selftests/vm/pkeys: override access right definitions on powerpc (Nico Pache) [1978539] - selftests/vm/pkeys: test correct behaviour of pkey-0 (Nico Pache) [1978539] - selftests/vm/pkeys: introduce a sub-page allocator (Nico Pache) [1978539] - selftests/vm/pkeys: detect write violation on a mapped access-denied-key page (Nico Pache) [1978539] - selftests/vm/pkeys: associate key on a mapped page and detect write violation (Nico Pache) [1978539] - selftests/vm/pkeys: associate key on a mapped page and detect access violation (Nico Pache) [1978539] - selftests/vm/pkeys: improve checks to determine pkey support (Nico Pache) [1978539] - selftests/vm/pkeys: fix assertion in test_pkey_alloc_exhaust() (Nico Pache) [1978539] - selftests/vm/pkeys: fix number of reserved powerpc pkeys (Nico Pache) [1978539] - selftests/vm/pkeys: introduce powerpc support (Nico Pache) [1978539] - selftests/vm/pkeys: introduce generic pkey abstractions (Nico Pache) [1978539] - selftests: vm: pkeys: use the correct huge page size (Nico Pache) [1978539] - selftests/vm/pkeys: fix alloc_random_pkey() to make it really random (Nico Pache) [1978539] - selftests/vm/pkeys: fix assertion in pkey_disable_set/clear() (Nico Pache) [1978539] - selftests/vm/pkeys: fix pkey_disable_clear() (Nico Pache) [1978539] - selftests: vm: pkeys: add helpers for pkey bits (Nico Pache) [1978539] - selftests: vm: pkeys: Use sane types for pkey register (Nico Pache) [1978539] - selftests/vm/pkeys: make gcc check arguments of sigsafe_printf() (Nico Pache) [1978539] - selftests/vm/pkeys: move some definitions to arch-specific header (Nico Pache) [1978539] - selftests/vm/pkeys: move generic definitions to header file (Nico Pache) [1978539] - selftests/vm/pkeys: rename all references to pkru to a generic name (Nico Pache) [1978539] - selftests/x86/pkeys: move selftests to arch-neutral directory (Nico Pache) [1978539] - selftests/vm: 10x speedup for hmm-tests (Nico Pache) [1978539] - mm/migrate: add migrate-shared test for migrate_vma_*() (Nico Pache) [1978539] - mm/migrate: optimize migrate_vma_setup() for holes (Nico Pache) [1978539] - lib/test_hmm: use vma_lookup() in dmirror_migrate() (Nico Pache) [1978539] - lib/test_hmm.c: fix an error code in dmirror_allocate_chunk() (Nico Pache) [1978539] - lib/test_hmm.c: remove unused dmirror_zero_page (Nico Pache) [1978539] - mm/memremap_pages: support multiple ranges per invocation (Nico Pache) [1978539] - mm/memremap_pages: convert to 'struct range' (Nico Pache) [1978539] - tools/testing/selftests/vm/hmm-tests.c: use the new SKIP() macro (Nico Pache) [1978539] - mm/hmm/test: use the new migration invalidation (Nico Pache) [1978539] - lib/test_hmm.c: add a flag parameter to migrate_vma (Nico Pache) [1978539] - mm/hmm: add tests for hmm_pfn_to_map_order() (Nico Pache) [1978539] - lib: fix test_hmm.c reference after free (Nico Pache) [1978539] - mm/hmm/test: add selftests for HMM (Nico Pache) [1978539] - mm/hmm/test: add selftest driver for HMM (Nico Pache) [1978539] - mm: convert insert_pfn() to vm_fault_t (Nico Pache) [1978539] - selftests/vm/.gitignore: add mremap_dontunmap (Nico Pache) [1978539] - selftests: vm: Fix 64-bit test builds for powerpc64le (Nico Pache) [1978539] - selftests: vm: Do not override definition of ARCH (Nico Pache) [1978539] - selftests/vm: fix map_hugetlb length used for testing read and write (Nico Pache) [1978539] - selftests/vm: add missed tests in run_vmtests (Nico Pache) [1978539] - selftests: vm: add fragment CONFIG_TEST_VMALLOC (Nico Pache) [1978539] - selftests: vm: Build/Run 64bit tests only on 64bit arch (Nico Pache) [1978539] - selftests: vm: Fix test build failure when built by itself (Nico Pache) [1978539] - selftests: vm: install test_vmalloc.sh for run_vmtests (Nico Pache) [1978539] - tools: mark 'test_vmalloc.sh' executable (Nico Pache) [1978539] - tools/selftest/vm: allow choosing mem size and page size in map_hugetlb (Nico Pache) [1978539] - selftests/vm: add script helper for CONFIG_TEST_VMALLOC_MODULE (Nico Pache) [1978539] - tools/testing/selftests/vm/map_fixed_noreplace.c: add test for MAP_FIXED_NOREPLACE (Nico Pache) [1978539] - tools/testing/selftests/vm/: add MAP_POPULATE test (Nico Pache) [1978539] - xfs: return errors in xfs_fs_sync_fs (Andrey Albershteyn) [2087991] - vfs: make sync_filesystem return errors from ->sync_fs (Andrey Albershteyn) [2087991] - PCI: hv: Remove unused hv_set_msi_entry_from_desc() (Mohammed Gamal) [2086560] - PCI: hv: Avoid the retarget interrupt hypercall in irq_unmask() on ARM64 (Mohammed Gamal) [2086560] - PCI: hv: Fix NUMA node assignment when kernel boots with custom NUMA topology (Mohammed Gamal) [2086560] - PCI: hv: Use PCI_ERROR_RESPONSE to identify config read errors (Mohammed Gamal) [2086560] - vdpa: clean up get_config_size ret value handling (Cindy Lu) [2059841] - vdpa: mlx5: synchronize driver status with CVQ (Jason Wang) [2048009] - vdpa: mlx5: prevent cvq work from hogging CPU (Jason Wang) [2048009] - vdpa/mlx5: Avoid processing works if workqueue was destroyed (Cindy Lu) [2048009] - cpufreq: Cancel policy update work scheduled before freeing (Prarit Bhargava) [2083728] - tcp: fix potential xmit stalls caused by TCP_NOTSENT_LOWAT (Paolo Abeni) [2081411] - tcp: ensure to use the most recently sent skb when filling the rate sample (Paolo Abeni) [2081411] - tcp: make sure treq->af_specific is initialized (Paolo Abeni) [2081411] - tcp: md5: incorrect tcp_header_len for incoming connections (Paolo Abeni) [2081411] - tcp: ensure PMTU updates are processed during fastopen (Paolo Abeni) [2081411] - tcp: add missing tcp_skb_can_collapse() test in tcp_shift_skb_data() (Paolo Abeni) [2081411] - inet: fully convert sk->sk_rx_dst to RCU rules (Paolo Abeni) [2081411] - tcp_cubic: fix spurious Hystart ACK train detections for not-cwnd-limited flows (Paolo Abeni) [2081411]- selftests/bpf/test_xdp_redirect_multi: use temp netns for testing (Felix Maurer) [2017875] - selftests/bpf/xdp_redirect_multi: Limit the tests in netns (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Give tcpdump a chance to terminate cleanly (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Use arping to accurate the arp number (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Put the logs to tmp folder (Jiri Benc) [2017875] - bpf, sockmap: Zap ingress queues after stopping strparser (Jiri Benc) [2017875] - xdp, net: Fix use-after-free in bpf_xdp_link_release (Jiri Benc) [2017875] - doc, af_xdp: Fix bind flags option typo (Jiri Benc) [2017875] - bpf, devmap: Convert remaining READ_ONCE() to rcu_dereference_check() (Jiri Benc) [2017875] - xdp: Move the rxq_info.mem clearing to unreg_mem_model() (Jiri Benc) [2017875] - bpf, sched: Remove unneeded rcu_read_lock() around BPF program invocation (Jiri Benc) [2017875] - xdp: Add proper __rcu annotations to redirect map entries (Jiri Benc) [2017875] - doc: Give XDP as example of non-obvious RCU reader/updater pairing (Jiri Benc) [2017875] - doc: Clarify and expand RCU updaters and corresponding readers (Jiri Benc) [2017875] - bpfilter: Specify the log level for the kmsg message (Jiri Benc) [2017875] - docs, af_xdp: Consistent indentation in examples (Jiri Benc) [2017875] - xsk: Fix missing validation for skb and unaligned mode (Jiri Benc) [2017875] - bpf: Support all gso types in bpf_skb_change_proto() (Jiri Benc) [2017875] - bpf: Do not change gso_size during bpf_skb_change_proto() (Jiri Benc) [2017875] - Revert "bpf: Check for BPF_F_ADJ_ROOM_FIXED_GSO when bpf_skb_change_proto" (Jiri Benc) [2017875] - selftests/bpf: Add xdp_redirect_multi into .gitignore (Jiri Benc) [2017875] - bpf, devmap: Remove drops variable from bq_xmit_all() (Jiri Benc) [2017875] - locking/atomic: net: use linux/atomic.h for xchg & cmpxchg (Jiri Benc) [2017875] - xsk: Use kvcalloc to support large umems (Jiri Benc) [2017875] - selftests/bpf: Add xdp_redirect_multi test (Jiri Benc) [2017875] - sample/bpf: Add xdp_redirect_map_multi for redirect_map broadcast test (Jiri Benc) [2017875] - xdp: Extend xdp_redirect_map with broadcast support (Jiri Benc) [2017875] - bpf: Let bpf_warn_invalid_xdp_action() report more info (Felix Maurer) [2017875] - bpf: Run devmap xdp_prog on flush instead of bulk enqueue (Jiri Benc) [2017875] - skmsg: Remove unused parameters of sk_msg_wait_data() (Jiri Benc) [2017875] - bpf: Use struct_size() in kzalloc() (Jiri Benc) [2017875] - bpf: Check for BPF_F_ADJ_ROOM_FIXED_GSO when bpf_skb_change_proto (Jiri Benc) [2017875] - treewide: Replace zero-length arrays with flexible-array members (Tomas Henzl) [2049660] - scsi: mpi3mr: Bump driver version to 8.0.0.68.0 (Tomas Henzl) [2049660] - scsi: mpi3mr: Update the copyright year (Tomas Henzl) [2049660] - scsi: mpi3mr: Update MPI3 headers (Tomas Henzl) [2049660] - scsi: mpi3mr: Fix formatting problems in some kernel-doc comments (Tomas Henzl) [2049660] - scsi: mpi3mr: Fix some spelling mistakes (Tomas Henzl) [2049660] - scsi: mpi3mr: Bump driver version to 8.0.0.61.0 (Tomas Henzl) [2049660] - scsi: mpi3mr: Add io_uring interface support in I/O-polled mode (Tomas Henzl) [2049660] - scsi: mpi3mr: Print cable mngnt and temp threshold events (Tomas Henzl) [2049660] - scsi: mpi3mr: Support Prepare for Reset event (Tomas Henzl) [2049660] - scsi: mpi3mr: Add Event acknowledgment logic (Tomas Henzl) [2049660] - scsi: mpi3mr: Gracefully handle online FW update operation (Tomas Henzl) [2049660] - scsi: mpi3mr: Detect async reset that occurred in firmware (Tomas Henzl) [2049660] - scsi: mpi3mr: Add IOC reinit function (Tomas Henzl) [2049660] - scsi: mpi3mr: Handle offline FW activation in graceful manner (Tomas Henzl) [2049660] - scsi: mpi3mr: Code refactor of IOC init - part2 (Tomas Henzl) [2049660] - scsi: mpi3mr: Code refactor of IOC init - part1 (Tomas Henzl) [2049660] - scsi: mpi3mr: Fault IOC when internal command gets timeout (Tomas Henzl) [2049660] - scsi: mpi3mr: Display IOC firmware package version (Tomas Henzl) [2049660] - scsi: mpi3mr: Handle unaligned PLL in unmap cmnds (Tomas Henzl) [2049660] - scsi: mpi3mr: Add support for PCIe Managed Switch SES device (Tomas Henzl) [2049660] - [s390] s390/cio: verify the driver availability for path_event call (Mete Durlu) [2058620] - selinux: fix bad cleanup on error in hashtab_duplicate() (Ondrej Mosnacek) [2005890] - selinux: fix race between old and new sidtab (Ondrej Mosnacek) [2005890] - selinux: fix cond_list corruption when changing booleans (Ondrej Mosnacek) [2005890] - selinux: make nslot handling in avtab more robust (Ondrej Mosnacek) [2005890] - selinuxfs: unify policy load error reporting (Ondrej Mosnacek) [2005890] - selinux: fix variable scope issue in live sidtab conversion (Ondrej Mosnacek) [2005890] - selinux: don't log MAC_POLICY_LOAD record on failed policy load (Ondrej Mosnacek) [2005890] - selinux: simplify away security_policydb_len() (Ondrej Mosnacek) [2005890] - selinux: move policy mutex to selinux_state, use in lockdep checks (Ondrej Mosnacek) [2005890] - selinux: fix error handling bugs in security_load_policy() (Ondrej Mosnacek) [2005890] - selinux: convert policy read-write lock to RCU (Ondrej Mosnacek) [2005890] - selinux: Create new booleans and class dirs out of tree (Ondrej Mosnacek) [2005890] - selinux: Standardize string literal usage for selinuxfs directory names (Ondrej Mosnacek) [2005890] - selinux: Refactor selinuxfs directory populating functions (Ondrej Mosnacek) [2005890] - selinux: Create function for selinuxfs directory cleanup (Ondrej Mosnacek) [2005890] - selinux: fix memdup.cocci warnings (Ondrej Mosnacek) [2005890] - selinux: avoid dereferencing the policy prior to initialization (Ondrej Mosnacek) [2005890] - selinux: fix allocation failure check on newpolicy->sidtab (Ondrej Mosnacek) [2005890] - selinux: refactor changing booleans (Ondrej Mosnacek) [2005890] - selinux: move policy commit after updating selinuxfs (Ondrej Mosnacek) [2005890] - selinux: encapsulate policy state, refactor policy load (Ondrej Mosnacek) [2005890] - Revert "selinux: fix deadlock in security_set_bools()" (Ondrej Mosnacek) [2005890] - thunderx nic: mark device as deprecated (Íñigo Huguet) [2060286] - cpufreq: intel_pstate: Add Ice Lake server to out-of-band IDs (Vitaly Kuznetsov) [2091523] - [s390] s390/hypfs: include z/VM guests with access control group set (Mete Durlu) [2058621] - scsi: mpt3sas: Fix a few kernel-doc issues (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix a typo (Tomas Henzl) [2049623] - scsi: mpt3sas: Update driver version to 42.100.00.00 (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix junk chars displayed while printing ChipName (Tomas Henzl) [2049623] - scsi: mpt3sas: Use cached ATA Information VPD page (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix adapter replyPostRegisterIndex declaration (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix event callback log_code value handling (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix ioc->base_readl() use (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix writel() use (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix _ctl_set_task_mid() TaskMID check (Tomas Henzl) [2049623] - scsi: mpt3sas: Fail reset operation if config request timed out (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix use after free in _scsih_expander_node_remove() (Tomas Henzl) [2049623] - scsi: mpt3sas: Page fault in reply q processing (Tomas Henzl) [2049623] - scsi: mpt3sas: Convert to flexible arrays (Tomas Henzl) [2049623] - scsi: mpt3sas: Update persistent trigger pages from sysfs interface (Tomas Henzl) [2049623] - Revert "netfilter: conntrack: tag conntracks picked up in local out hook" (Florian Westphal) [2062870] - Revert "netfilter: nat: force port remap to prevent shadowing well-known ports" (Florian Westphal) [2062870] - drm/amdgpu: vi: disable ASPM on Intel Alder Lake based systems (Michel Dänzer) [2066918] - drm/amd: Use amdgpu_device_should_use_aspm on navi umd pstate switching (Michel Dänzer) [2066918] - drm/amd: Refactor `amdgpu_aspm` to be evaluated per device (Michel Dänzer) [2066918] - drm/amd: Check if ASPM is enabled from PCIe subsystem (Michel Dänzer) [2066918] - [s390] s390/tape: fix timer initialization in tape_std_assign() (Mete Durlu) [2085420] - powerpc/pseries/vas: Use QoS credits from the userspace (Steve Best) [2075174] - thermal: don't make THERMAL_NETLINK 'default y' (Prarit Bhargava) [2040062] - redhat/configs: Add CONFIG_INTEL_HFI_THERMAL (Prarit Bhargava) [2040062] - thermal/drivers/core: Remove module unload code (Prarit Bhargava) [2040062] - thermal: core: Fix TZ_GET_TRIP NULL pointer dereference (Prarit Bhargava) [2040062] - thermal: intel: hfi: INTEL_HFI_THERMAL depends on NET (Prarit Bhargava) [2040062] - thermal: netlink: Fix parameter type of thermal_genl_cpu_capability_event() stub (Prarit Bhargava) [2040062] - thermal: intel: hfi: Notify user space for HFI events (Prarit Bhargava) [2040062] - thermal: netlink: Add a new event to notify CPU capabilities change (Prarit Bhargava) [2040062] - thermal: intel: hfi: Enable notification interrupt (Prarit Bhargava) [2040062] - thermal: intel: hfi: Handle CPU hotplug events (Prarit Bhargava) [2040062] - thermal: intel: hfi: Minimally initialize the Hardware Feedback Interface (Prarit Bhargava) [2040062] - x86/cpu: Add definitions for the Intel Hardware Feedback Interface (Prarit Bhargava) [2040062] - x86/Documentation: Describe the Intel Hardware Feedback Interface (Prarit Bhargava) [2040062] - thermal: intel: Allow processing of HWP interrupt (Prarit Bhargava) [2040062] - x86/thermal: Fix LVT thermal setup for SMI delivery mode (Prarit Bhargava) [2040062] - thermal: Move therm_throt there from x86/mce (Prarit Bhargava) [2040062] - thermal: core: Adding missing nlmsg_free() in thermal_genl_sampling_temp() (Prarit Bhargava) [2040062] - thermal: move to smaller ops wherever possible (Prarit Bhargava) [2040062] - thermal: add small version of ops (Prarit Bhargava) [2040062] - thermal: netlink: Improve the initcall ordering (Prarit Bhargava) [2040062] - thermal: core: remove redundant initialization of variable ret (Prarit Bhargava) [2040062] - thermal: netlink: Fix compilation error when CONFIG_NET=n (Prarit Bhargava) [2040062] - thermal: core: Fix thermal zone lookup by ID (Prarit Bhargava) [2040062] - thermal: core: Get thermal zone by id (Prarit Bhargava) [2040062] - thermal: core: Add helpers to browse the cdev, tz and governor list (Prarit Bhargava) [2040062] - thermal: Remove netlink support (Prarit Bhargava) [2040062] - thermal: core: genetlink support for events/cmd/sampling (Prarit Bhargava) [2040062]- mailbox: pcc: Handle all PCC subtypes correctly in pcc_mbox_irq (Mark Langsdorf) [1997698] - i2c: xgene-slimpro: Fix wrong pointer passed to PTR_ERR() (Mark Langsdorf) [1997698] - ACPI: Make acpi_node_get_parent() local (Mark Langsdorf) [1997698] - ACPI: Get acpi_device's parent from the parent field (Mark Langsdorf) [1997698] - ACPI: PM: Fix device wakeup power reference counting error (Mark Langsdorf) [1997698] - ACPI: video: use platform backlight driver on Xiaomi Mi Pad 2 (Mark Langsdorf) [1997698] - ACPI: video: Drop dmi_system_id.ident settings from video_detect_dmi_table[] (Mark Langsdorf) [1997698] - ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses (Mark Langsdorf) [1997698] - ACPI: EC: Use ec_no_wakeup on HP ZHAN 66 Pro (Mark Langsdorf) [1997698] - ACPI: Add a convenience function to tell a device is in D0 state (Mark Langsdorf) [1997698] - ACPI: scan: Obtain device's desired enumeration power state (Mark Langsdorf) [1997698] - perf: qcom_l2_pmu: ACPI: Use ACPI_COMPANION() directly (Mark Langsdorf) [1997698] - ACPI/PCC: Add maintainer for PCC mailbox driver (Mark Langsdorf) [1997698] - mailbox: pcc: Add support for PCCT extended PCC subspaces(type 3/4) (Mark Langsdorf) [1997698] - mailbox: pcc: Drop handling invalid bit-width in {read,write}_register (Mark Langsdorf) [1997698] - mailbox: pcc: Avoid accessing PCCT table in pcc_send_data and pcc_mbox_irq (Mark Langsdorf) [1997698] - mailbox: pcc: Add PCC register bundle and associated accessor functions (Mark Langsdorf) [1997698] - mailbox: pcc: Rename doorbell ack to platform interrupt ack register (Mark Langsdorf) [1997698] - mailbox: pcc: Use PCC mailbox channel pointer instead of standard (Mark Langsdorf) [1997698] - mailbox: pcc: Add pcc_mbox_chan structure to hold shared memory region info (Mark Langsdorf) [1997698] - mailbox: pcc: Consolidate subspace doorbell register parsing (Mark Langsdorf) [1997698] - mailbox: pcc: Consolidate subspace interrupt information parsing (Mark Langsdorf) [1997698] - mailbox: pcc: Refactor all PCC channel information into a structure (Mark Langsdorf) [1997698] - mailbox: pcc: Fix kernel doc warnings (Mark Langsdorf) [1997698] - ACPI: glue: Use acpi_device_adr() in acpi_find_child_device() (Mark Langsdorf) [1997698] - ACPI: APEI: mark apei_hest_parse() static (Mark Langsdorf) [1997698] - ACPI: APEI: EINJ: Relax platform response timeout to 1 second (Mark Langsdorf) [1997698] - ACPI: resources: Add one more Medion model in IRQ override quirk (Mark Langsdorf) [1997698] - ACPI: AC: Quirk GK45 to skip reading _PSR (Mark Langsdorf) [1997698] - ACPI: PM: sleep: Do not set suspend_ops unnecessarily (Mark Langsdorf) [1997698] - ACPI: PRM: Handle memory allocation and memory remap failure (Mark Langsdorf) [1997698] - ACPI: PRM: Remove unnecessary blank lines (Mark Langsdorf) [1997698] - ACPI: PM: Turn off wakeup power resources on _DSW/_PSW errors (Mark Langsdorf) [1997698] - ACPI: PM: Fix sharing of wakeup power resources (Mark Langsdorf) [1997698] - ACPI: PM: Turn off unused wakeup power resources (Mark Langsdorf) [1997698] - ACPI: PM: Check states of power resources during initialization (Mark Langsdorf) [1997698] - hwmon: (acpi_power_meter) Use acpi_bus_get_acpi_device() (Mark Langsdorf) [1997698] - ACPI: replace snprintf() in "show" functions with sysfs_emit() (Mark Langsdorf) [1997698] - ACPI: LPSS: Use ACPI_COMPANION() directly (Mark Langsdorf) [1997698] - ACPI: battery: Accept charges over the design capacity as full (Mark Langsdorf) [1997698] - ACPICA: Update version to 20210930 (Mark Langsdorf) [1997698] - ACPICA: iASL table disassembler: Added disassembly support for the NHLT ACPI table (Mark Langsdorf) [1997698] - ACPICA: ACPI 6.4 SRAT: add Generic Port Affinity type (Mark Langsdorf) [1997698] - ACPICA: Add support for Windows 2020 _OSI string (Mark Langsdorf) [1997698] - ACPICA: Avoid evaluating methods too early during system resume (Mark Langsdorf) [1997698] - ACPI: processor: idle: fix lockup regression on 32-bit ThinkPad T40 (Mark Langsdorf) [1997698] - ACPI: processor idle: Allow playing dead in C3 state (Mark Langsdorf) [1997698] - ACPI: Kconfig: Fix a typo in Kconfig (Mark Langsdorf) [1997698] - ACPI: PNP: remove duplicated BRI0A49 and BDP3336 entries (Mark Langsdorf) [1997698] - ACPI: resources: Add DMI-based legacy IRQ override quirk (Mark Langsdorf) [1997698] - ACPICA: Add support for MADT online enabled bit (Mark Langsdorf) [1997698] - acpi/arm64: fix next_platform_timer() section mismatch error (Mark Langsdorf) [1997697] - ACPI: PM: Include alternate AMDI0005 id in special behaviour (Mark Langsdorf) [1997697] - MAINTAINERS: Change Rafael's e-mail address (Mark Langsdorf) [1997697] - ACPI: scan: Remove unneeded header linux/nls.h (Mark Langsdorf) [1997697] - ACPI: PM: s2idle: Run both AMD and Microsoft methods if both are supported (Mark Langsdorf) [1997697] - ACPI: power: Drop name from struct acpi_power_resource (Mark Langsdorf) [1997697] - ACPI: power: Use acpi_handle_debug() to print debug messages (Mark Langsdorf) [1997697] - ACPI: button: Add DMI quirk for Lenovo Yoga 9 (14INTL5) (Mark Langsdorf) [1997697] - ACPI: SPCR: Add support for the new 16550-compatible Serial Port Subtype (Mark Langsdorf) [1997697] - ACPI: platform-profile: call sysfs_notify() from platform_profile_store() (Mark Langsdorf) [1997697] - ACPICA: Update version to 20210730 (Mark Langsdorf) [1997697] - ACPICA: Add method name "_DIS" For use with aslmethod.c (Mark Langsdorf) [1997697] - ACPICA: iASL: Fix for WPBT table with no command-line arguments (Mark Langsdorf) [1997697] - ACPICA: Headers: Add new DBG2 Serial Port Subtypes (Mark Langsdorf) [1997697] - ACPICA: Macros should not use a trailing semicolon (Mark Langsdorf) [1997697] - ACPICA: Fix an if statement (add parens) (Mark Langsdorf) [1997697] - ACPICA: iASL: Add support for the AEST table (data compiler) (Mark Langsdorf) [1997697] - clk: fractional-divider: Introduce POWER_OF_TWO_PS flag (Mark Langsdorf) [1997697] - clk: fractional-divider: add explicit big endian support (Mark Langsdorf) [1997697] - clk: gate: add explicit big endian support (Mark Langsdorf) [1997697] - clk: fractional-divider: add CLK_FRAC_DIVIDER_ZERO_BASED flag support (Mark Langsdorf) [1997697] - ACPI: processor: Replace deprecated CPU-hotplug functions (Mark Langsdorf) [1997697] - ABI: sysfs-platform-dptf: Add tables markup to a table (Mark Langsdorf) [1997697] - ACPI: DPTF: Add new PCH FIVR methods (Mark Langsdorf) [1997697] - clk: x86: Rename clk-lpt to more specific clk-lpss-atom (Mark Langsdorf) [1997697] - ACPI: configfs: Make get_header() to return error pointer (Mark Langsdorf) [1997697] - ACPI: configfs: Use sysfs_emit() in "show" functions (Mark Langsdorf) [1997697] - ACPI: glue: Eliminate acpi_platform_notify() (Mark Langsdorf) [1997697] - ACPI: bus: Rename functions to avoid name collision (Mark Langsdorf) [1997697] - ACPI: glue: Change return type of two functions to void (Mark Langsdorf) [1997697] - ACPI: glue: Rearrange acpi_device_notify() (Mark Langsdorf) [1997697] - ACPI: Add LoongArch support for ACPI_PROCESSOR/ACPI_NUMA (Mark Langsdorf) [1997697] - ACPI / PMIC: XPower: optimize MIPI PMIQ sequence I2C-bus accesses (Mark Langsdorf) [1997697] - ACPI / PMIC: XPower: optimize I2C-bus accesses (Mark Langsdorf) [1997697] - stddef: Introduce DECLARE_FLEX_ARRAY() helper (Josef Oskera) [2062594] - Revert "iavf: Fix deadlock occurrence during resetting VF interface" (Ivan Vecera) [2066693] - scsi: core: Fix sbitmap depth in scsi_realloc_sdev_budget_map() (Ewan D. Milne) [2071831] - lib/sbitmap: allocate sb->map via kvzalloc_node (Ewan D. Milne) [2071831] - mm: move kvmalloc-related functions to slab.h (Ewan D. Milne) [2071831] - scsi: core: sd: Add silence_suspend flag to suppress some PM messages (Ewan D. Milne) [2071831] - scsi: scsi_transport_fc: Fix FPIN Link Integrity statistics counters (Ewan D. Milne) [2071831] - sd: call sd_zbc_release_disk before releasing the scsi_device reference (Ewan D. Milne) [2071831] - scsi: core: Reallocate device's budget map on queue depth change (Ewan D. Milne) [2071831] - scsi: sr: Don't use GFP_DMA (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_device_max_queue_depth() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix buffer size of REPORT ZONES command (Ewan D. Milne) [2071831] - scsi: sd_zbc: Clean up sd_zbc_parse_report() setting of wp (Ewan D. Milne) [2071831] - scsi: sd_zbc: Simplify zone full condition check (Ewan D. Milne) [2071831] - scsi: core: Show SCMD_LAST in text form (Ewan D. Milne) [2071831] - scsi: scsi_debug: Zero clear zones at reset write pointer (Ewan D. Milne) [2071831] - scsi: core: sysfs: Fix setting device state to SDEV_RUNNING (Ewan D. Milne) [2071831] - scsi: scsi_debug: Sanity check block descriptor length in resp_mode_select() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix type in min_t to avoid stack OOB (Ewan D. Milne) [2071831] - scsi: core: Simplify control flow in scmd_eh_abort_handler() (Ewan D. Milne) [2071831] - scsi: core: sysfs: Fix hang when device state is set via sysfs (Ewan D. Milne) [2071831] - scsi: scsi_debug: Don't call kcalloc() if size arg is zero (Ewan D. Milne) [2071831] - scsi: sr: Remove duplicate assignment (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix out-of-bound read in resp_report_tgtpgs() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix out-of-bound read in resp_readcap16() (Ewan D. Milne) [2071831] - scsi: sd: Print write through due to no caching mode page as warning (Ewan D. Milne) [2071831] - scsi: sd: Fix crashes in sd_resume_runtime() (Ewan D. Milne) [2071831] - scsi: core: Fix shost->cmd_per_lun calculation in scsi_add_host_with_dma() (Ewan D. Milne) [2071831] - scsi: core: Fix spelling in a source code comment (Ewan D. Milne) [2071831] - scsi: sd: Fix sd_do_mode_sense() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_mode_select() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_mode_sense() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Remove include from scsi_cmnd.h (Ewan D. Milne) [2071831] - scsi: sd_zbc: Support disks with more than 2**32 logical blocks (Ewan D. Milne) [2071831] - scsi: sd: Make sd_spinup_disk() less noisy (Ewan D. Milne) [2071831] - scsi: sr: Fix spelling mistake "does'nt" -> "doesn't" (Ewan D. Milne) [2071831] - scsi: sd_zbc: Ensure buffer size is aligned to SECTOR_SIZE (Ewan D. Milne) [2071831] - scsi: sd: Do not exit sd_spinup_disk() quietly (Ewan D. Milne) [2071831] - scsi: core: Add helper to return number of logical blocks in a request (Ewan D. Milne) [2071831] - scsi: scsi_debug: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: scsi_transport_spi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: scsi_transport_fc: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: sr: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: sd: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: core: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: core: Introduce the scsi_cmd_to_rq() function (Ewan D. Milne) [2071831] - scsi: core: Add BLIST_IGN_MEDIA_CHANGE for Ultra HS-SD/MMC USB card readers (Ewan D. Milne) [2071831] - scsi: sd: REQUEST SENSE for BLIST_IGN_MEDIA_CHANGE devices in runtime_resume() (Ewan D. Milne) [2071831] - scsi: core: Add new flag BLIST_IGN_MEDIA_CHANGE (Ewan D. Milne) [2071831] - scsi: scsi_debug: Improve RDPROTECT/WRPROTECT handling (Ewan D. Milne) [2071831] - scsi: scsi_debug: Remove dump_sector() (Ewan D. Milne) [2071831] - scsi: core: Add scsi_prot_ref_tag() helper (Ewan D. Milne) [2071831] - scsi: core: Add scsi_msg_to_host_byte() (Ewan D. Milne) [2071831] - scsi: core: Add get_{status,host}_byte() accessor functions (Ewan D. Milne) [2071831] - scsi: core: Cap scsi_host cmd_per_lun at can_queue (Ewan D. Milne) [2071831] - scsi: Fix spelling mistakes in header files (Ewan D. Milne) [2071831] - scsi: core: Treat device offline as a failure (Ewan D. Milne) [2071831] - sched/topology: Skip updating masks for non-online nodes (Diego Domingos) [1946251] - powerpc/numa: Update cpu_cpu_map on CPU online/offline (Diego Domingos) [1946251] - powerpc/numa: Print debug statements only when required (Diego Domingos) [1946251] - powerpc/numa: convert printk to pr_xxx (Diego Domingos) [1946251] - powerpc/numa: Drop dbg in favour of pr_debug (Diego Domingos) [1946251] - livepatch: Fix missing unlock on error in klp_enable_patch() (Julia Denham) [2069340] - livepatch: Fix kobject refcount bug on klp_init_patch_early failure path (Julia Denham) [2069340] - Documentation: livepatch: Add livepatch API page (Julia Denham) [2069340] - scsi: megaraid_sas: Remove unnecessary memset (Tomas Henzl) [2049686] - scsi: megaraid_sas: Target with invalid LUN ID is deleted during scan (Tomas Henzl) [2049686] - scsi: megasas: Clean up some inconsistent indenting (Tomas Henzl) [2049686] - scsi: megasas: Stop using the SCSI pointer (Tomas Henzl) [2049686] - aarch64: enable memory hotplug (Baoquan He) [1818517] - mm/memory_hotplug: introduce default dummy memory_add_physaddr_to_nid() (Baoquan He) [1818517] - arm64/mm: Add one hunk back missed in earlier back porting (Baoquan He) [1818517] - arm64/mm: Hold memory hotplug lock while walking for kernel page table dump (Baoquan He) [1818517] - ARM64: dump: Convert to use DEFINE_SHOW_ATTRIBUTE macro (Baoquan He) [1818517] - net/mlx5: DR, Ignore modify TTL on RX if device doesn't support it (Amir Tzin) [2072934] - net: bridge: switchdev: check br_vlan_group() return value (Ivan Vecera) [2080332] - net: bridge: mst: Restrict info size queries to bridge ports (Ivan Vecera) [2080332] - net: bridge: mst: prevent NULL deref in br_mst_info_size() (Ivan Vecera) [2080332] - selftests: forwarding: Use same VRF for port and VLAN upper (Ivan Vecera) [2080332] - selftests: forwarding: Disable learning before link up (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to query a port's MST state (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to check if MST is enabled (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to map an MSTI to a VID set (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of MST state changes (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of VLAN MSTI migrations (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of MST mode changes (Ivan Vecera) [2080332] - net: bridge: mst: Support setting and reporting MST port states (Ivan Vecera) [2080332] - net: bridge: mst: Allow changing a VLAN's MSTI (Ivan Vecera) [2080332] - net: bridge: mst: Multiple Spanning Tree (MST) mode (Ivan Vecera) [2080332] - net: switchdev: remove lag_mod_cb from switchdev_handle_fdb_event_to_device (Ivan Vecera) [2080332] - selftests: forwarding: tests of locked port feature (Ivan Vecera) [2080332] - net: bridge: Add support for offloading of locked port flag (Ivan Vecera) [2080332] - net: bridge: Add support for bridge port in locked mode (Ivan Vecera) [2080332] - net: switchdev: avoid infinite recursion from LAG to bridge with port object handler (Ivan Vecera) [2080332] - bridge: switch br_net_exit to batch mode (Ivan Vecera) [2080332] - net: bridge: multicast: notify switchdev driver whenever MC processing gets disabled (Ivan Vecera) [2080332] - net: switchdev: introduce switchdev_handle_port_obj_{add,del} for foreign interfaces (Ivan Vecera) [2080332] - net: switchdev: rename switchdev_lower_dev_find to switchdev_lower_dev_find_rcu (Ivan Vecera) [2080332] - net: bridge: switchdev: replay all VLAN groups (Ivan Vecera) [2080332] - net: bridge: make nbp_switchdev_unsync_objs() follow reverse order of sync() (Ivan Vecera) [2080332] - net: bridge: switchdev: differentiate new VLANs from changed ones (Ivan Vecera) [2080332] - net: bridge: vlan: notify switchdev only when something changed (Ivan Vecera) [2080332] - net: bridge: vlan: make __vlan_add_flags react only to PVID and UNTAGGED (Ivan Vecera) [2080332] - net: bridge: vlan: don't notify to switchdev master VLANs without BRENTRY flag (Ivan Vecera) [2080332] - net: bridge: vlan: check early for lack of BRENTRY flag in br_vlan_add_existing (Ivan Vecera) [2080332] - net: bridge: vlan: check for errors from __vlan_del in __vlan_flush (Ivan Vecera) [2080332] - net/switchdev: use struct_size over open coded arithmetic (Ivan Vecera) [2080332] - net: bridge: vlan: fix single net device option dumping (Ivan Vecera) [2080332] - net: bridge: mcast: fix br_multicast_ctx_vlan_global_disabled helper (Ivan Vecera) [2080332] - net: bridge: mcast: add and enforce startup query interval minimum (Ivan Vecera) [2080332] - net: bridge: mcast: add and enforce query interval minimum (Ivan Vecera) [2080332] - netfilter: bridge: add support for pppoe filtering (Ivan Vecera) [2080332] - bridge: use __set_bit in __br_vlan_set_default_pvid (Ivan Vecera) [2080332] - net: bridge: Allow base 16 inputs in sysfs (Ivan Vecera) [2080332] - net/bridge: replace simple_strtoul to kstrtol (Ivan Vecera) [2080332] - net: bridge: Slightly optimize 'find_portno()' (Ivan Vecera) [2080332] - net: bridge: switchdev: fix shim definition for br_switchdev_mdb_notify (Ivan Vecera) [2080332] - net: bridge: switchdev: consistent function naming (Ivan Vecera) [2080332] - net: bridge: mdb: move all switchdev logic to br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: split out the switchdev portion of br_mdb_notify (Ivan Vecera) [2080332] - net: bridge: move br_vlan_replay to br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: provide shim definition for br_vlan_flags (Ivan Vecera) [2080332] - net: switchdev: merge switchdev_handle_fdb_{add,del}_to_device (Ivan Vecera) [2080332] - net: bridge: create a common function for populating switchdev FDB entries (Ivan Vecera) [2080332] - net: bridge: move br_fdb_replay inside br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: reduce indentation level in fdb_create (Ivan Vecera) [2080332] - net: bridge: rename br_fdb_insert to br_fdb_add_local (Ivan Vecera) [2080332] - net: bridge: rename fdb_insert to fdb_add_local (Ivan Vecera) [2080332] - net: bridge: remove fdb_insert forward declaration (Ivan Vecera) [2080332] - net: bridge: remove fdb_notify forward declaration (Ivan Vecera) [2080332] - net: make use of helper netif_is_bridge_master() (Ivan Vecera) [2080332] - net: use eth_hw_addr_set() (Ivan Vecera) [2080332] - net: bridge: Use array_size() helper in copy_to_user() (Ivan Vecera) [2080332] - net/mlx5: DR, Fix missing flow_source when creating multi-destination FW table (Amir Tzin) [2072920] - net/mlx5: DR, Fix slab-out-of-bounds in mlx5_cmd_dr_create_fte (Amir Tzin) [2072920] - ixgbevf: Require large buffers for build_skb on 82599VF (Ken Cox) [2037956] - ixgbevf: Remove useless DMA-32 fallback configuration (Ken Cox) [2037956] - ixgbevf: switch to napi_build_skb() (Ken Cox) [2037956] - ixgbevf: Add support for new mailbox communication between PF and VF (Ken Cox) [2037956] - ixgbevf: Mailbox improvements (Ken Cox) [2037956] - ixgbevf: Add legacy suffix to old API mailbox functions (Ken Cox) [2037956] - ixgbevf: Improve error handling in mailbox (Ken Cox) [2037956] - ixgbevf: Rename MSGTYPE to SUCCESS and FAILURE (Ken Cox) [2037956] - net: ixgbevf: Remove redundant initialization of variable ret_val (Ken Cox) [2037956] - selftests: mptcp: fix diag instability (Hangbin Liu) [2077358] - selftests: mptcp: fix ipv6 routing setup (Hangbin Liu) [2077358] - selftests: mptcp: clean tmp files in simult_flows (Hangbin Liu) [2077358] - selftests: netfilter: fix exit value for nft_concat_range (Hangbin Liu) [2077358] - selftests: netfilter: remove stray bash debug line (Hangbin Liu) [2077358] - selftests: Fix IPv6 address bind tests (Hangbin Liu) [2077358] - selftests: Fix raw socket bind tests with VRF (Hangbin Liu) [2077358] - selftests: net: Correct case name (Hangbin Liu) [2077358] - selftests: pmtu.sh: Kill nettest processes launched in subshell. (Hangbin Liu) [2077358] - selftests: pmtu.sh: Kill tcpdump processes launched by subshell. (Hangbin Liu) [2077358] - selftests: net: Fix a typo in udpgro_fwd.sh (Hangbin Liu) [2077358] - selftests/net: udpgso_bench_tx: fix dst ip argument (Hangbin Liu) [2077358] - selftests/net: udpgso_bench_rx: fix port argument (Hangbin Liu) [2077358] - selftests: net: tls: remove unused variable and code (Hangbin Liu) [2077358] - selftest: net: fix typo in altname test (Hangbin Liu) [2077358]- net/mlx5: DR, Fix the threshold that defines when pool sync is initiated (Amir Tzin) [2062715] - net/mlx5: DR, Cache STE shadow memory (Amir Tzin) [2062715] - perf/x86/intel/lbr: Add static_branch for LBR INFO flags (Michael Petlan) [2039998] - perf/x86/intel/lbr: Support LBR format V7 (Michael Petlan) [2039998] - net/mlx5e: TC, fix decap fallback to uplink when int port not supported (Amir Tzin) [2077048] - net/mlx5e: Fix wrong source vport matching on tunnel rule (Amir Tzin) [2064589] - hv_balloon: rate-limit "Unhandled message" warning (Vitaly Kuznetsov) [2087270] - tcp: drop the hash_32() part from the index calculation (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: increase source port perturb table to 2^16 (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: dynamically allocate the perturb table used by source ports (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: add small random increments to the source port (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: resalt the secret every 10 seconds (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: use different parts of the port_offset for index and offset (Guillaume Nault) [2064876] {CVE-2022-1012} - secure_seq: use the 64 bits of the siphash for port offset calculation (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: add some entropy in __inet_hash_connect() (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: change source port randomizarion at connect() time (Guillaume Nault) [2064876] {CVE-2022-1012} - net/mlx5e: TC, Skip redundant ct clear actions (Amir Tzin) [2055590] - spi: pxa2xx: Add support for Intel Raptor Lake PCH-S (Prarit Bhargava) [2040031] - mfd: intel-lpss: Add Intel Raptor Lake PCH-S PCI IDs (Prarit Bhargava) [2040031] - pinctrl: alderlake: Add Raptor Lake-S ACPI ID (Prarit Bhargava) [2040033] - i2c: i801: Add support for Intel Raptor Lake PCH-S (Prarit Bhargava) [2040027 2040029] - redhat/configs: Add CONFIG_INTEL_IDXD_PERFMON (Jerry Snitselaar) [1921296] - x86/fpu/xstate: Consolidate size calculations (Jerry Snitselaar) [2071461] - x86/fpu/xstate: Handle supervisor states in XSTATE permissions (Jerry Snitselaar) [2071461] - x86/fpu/xsave: Handle compacted offsets correctly with supervisor states (Jerry Snitselaar) [2071461] - x86/fpu: Cache xfeature flags from CPUID (Jerry Snitselaar) [2071461] - x86/fpu/xsave: Initialize offset/size cache early (Jerry Snitselaar) [2071461] - x86/fpu: Remove unused supervisor only offsets (Jerry Snitselaar) [2071461] - dmaengine: idxd: Change license on idxd.h to LGPL (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix delta_rec and crc size field for completion record (Jerry Snitselaar) [1971892] - dmaengine: idxd: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2072156] - dmaengine: idxd: restore traffic class defaults after wq reset (Jerry Snitselaar) [2046469] - dmaengine: idxd: deprecate token sysfs attributes for read buffers (Jerry Snitselaar) [2040042] - dmaengine: idxd: change bandwidth token to read buffers (Jerry Snitselaar) [2040042] - dmaengine: idxd: fix wq settings post wq disable (Jerry Snitselaar) [2040045] - dmaengine: idxd: change MSIX allocation based on per wq activation (Jerry Snitselaar) [2040495] - edmaengine: idxd: fix descriptor flushing locking (Jerry Snitselaar) [2040495] - dmaengine: idxd: embed irq_entry in idxd_wq struct (Jerry Snitselaar) [2040495] - dmaengine: idxd: fix calling wq quiesce inside spinlock (Jerry Snitselaar) [2040040] - dmaengine: idxd: add knob for enqcmds retries (Jerry Snitselaar) [2040047] - dmaengine: idxd: set defaults for wq configs (Jerry Snitselaar) [2040047] - dmaengine: idxd: handle interrupt handle revoked event (Jerry Snitselaar) [2040051] - dmaengine: idxd: handle invalid interrupt handle descriptors (Jerry Snitselaar) [2040051] - dmaengine: idxd: create locked version of idxd_quiesce() call (Jerry Snitselaar) [2040051] - dmaengine: idxd: add helper for per interrupt handle drain (Jerry Snitselaar) [2040051] - dmaengine: idxd: move interrupt handle assignment (Jerry Snitselaar) [2040051] - dmaengine: idxd: int handle management refactoring (Jerry Snitselaar) [2040051] - dmaengine: idxd: rework descriptor free path on failure (Jerry Snitselaar) [2040051] - dmaengine: idxd: fix missed completion on abort path (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix resource leak on dmaengine driver disable (Jerry Snitselaar) [2040040] - dmaengine: idxd: cleanup completion record allocation (Jerry Snitselaar) [2040040] - dmaengine: idxd: reconfig device after device reset command (Jerry Snitselaar) [2072156] - dmaengine: idxd: add halt interrupt support (Jerry Snitselaar) [2040047] - dmaengine: idxd: Use list_move_tail instead of list_del/list_add_tail (Jerry Snitselaar) [2072156] - dmanegine: idxd: fix resource free ordering on driver removal (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove kernel wq type set when load configuration (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove gen cap field per spec 1.2 update (Jerry Snitselaar) [2040040] - dmaengine: idxd: check GENCAP config support for gencfg register (Jerry Snitselaar) [2040040] - dmaengine: idxd: move out percpu_ref_exit() to ensure it's outside submission (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt disable for dev_lock (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt disable for cmd_lock (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix setting up priv mode for dwq (Jerry Snitselaar) [2040040] - dmaengine: idxd: set descriptor allocation size to threshold for swq (Jerry Snitselaar) [2040040] - dmaengine: idxd: make submit failure path consistent on desc freeing (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt flag for completion list spinlock (Jerry Snitselaar) [2040040] - dmaengine: idxd: make I/O interrupt handler one shot (Jerry Snitselaar) [2040040] - dmaengine: idxd: clear block on fault flag when clear wq (Jerry Snitselaar) [2040040] - dmaengine: idxd: add capability check for 'block on fault' attribute (Jerry Snitselaar) [2040040] - dmaengine: idxd: Remove unused status variable in irq_process_work_list() (Jerry Snitselaar) [2072156] - dmaengine: idxd: Fix a possible NULL pointer dereference (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix abort status check (Jerry Snitselaar) [2040040] - dmanegine: idxd: add software command status (Jerry Snitselaar) [2040047] - dmaengine: idxd: rotate portal address for better performance (Jerry Snitselaar) [2040047] - dmaengine: idxd: fix wq slot allocation index check (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix uninit var for alt_drv (Jerry Snitselaar) [2072156] - dmaengine: idxd: Set defaults for GRPCFG traffic class (Jerry Snitselaar) [2040047] - dmaengine: idxd: remove fault processing code (Jerry Snitselaar) [2040040] - dmaengine: idxd: move dsa_drv support to compatible mode (Jerry Snitselaar) [1971961] - dmaengine: dsa: move dsa_bus_type out of idxd driver to standalone (Jerry Snitselaar) [1971961] - dmaengine: idxd: create user driver for wq 'device' (Jerry Snitselaar) [1971961] - dmaengine: idxd: create dmaengine driver for wq 'device' (Jerry Snitselaar) [1971961] - dmaengine: idxd: create idxd_device sub-driver (Jerry Snitselaar) [1971961] - dmaengine: idxd: add type to driver in order to allow device matching (Jerry Snitselaar) [1971961] - dmanegine: idxd: open code the dsa_drv registration (Jerry Snitselaar) [1971961] - dmaengine: idxd: idxd: move remove() bits for idxd 'struct device' to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: move probe() bits for idxd 'struct device' to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: fix bus_probe() and bus_remove() for dsa_bus (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove iax_bus_type prototype (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove bus shutdown (Jerry Snitselaar) [1971961] - dmaengine: idxd: move wq_disable() to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: move wq_enable() to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove IDXD_DEV_CONF_READY (Jerry Snitselaar) [1971961] - dmaengine: idxd: add 'struct idxd_dev' as wrapper for conf_dev (Jerry Snitselaar) [1971961] - dmaengine: idxd: add driver name (Jerry Snitselaar) [1971961] - dmaengine: idxd: add driver register helper (Jerry Snitselaar) [1971961] - dmaengine: idxd: depends on !UML (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix PCI_MSI build errors (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix submission race window (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix sequence for pci driver remove() and shutdown() (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix setup sequence for MSIXPERM table (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix array index when int_handles are being used (Jerry Snitselaar) [2040040] - dmaengine: idxd: assign MSIX vectors to each WQ rather than roundrobin (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix desc->vector that isn't being updated (Jerry Snitselaar) [2040040] - dmaengine: idxd: add missing percpu ref put on failure (Jerry Snitselaar) [2072156] - dmaengine: idxd: have command status always set (Jerry Snitselaar) [1973882] - dmanegine: idxd: cleanup all device related bits after disabling device (Jerry Snitselaar) [2072156] - dmaengine: idxd: Simplify code and axe the use of a deprecated API (Jerry Snitselaar) [2072156] - dmaengine: idxd: remove devm allocation for idxd->int_handles (Jerry Snitselaar) [2072156] - dmaengine: idxd: Remove redundant variable cdev_ctx (Jerry Snitselaar) [2072156] - dmaengine: idxd: Add missing cleanup for early error out in probe call (Jerry Snitselaar) [1971892] - dmaengine: idxd: Enable IDXD performance monitor support (Jerry Snitselaar) [1921296] - dmaengine: idxd: Add IDXD performance monitor support (Jerry Snitselaar) [1921296] - dmaengine: idxd: device cmd should use dedicated lock (Jerry Snitselaar) [1971892] - dmaengine: idxd: support reporting of halt interrupt (Jerry Snitselaar) [1971890] - dmaengine: idxd: convert sprintf() to sysfs_emit() for all usages (Jerry Snitselaar) [1971890] - dmaengine: idxd: add interrupt handle request and release support (Jerry Snitselaar) [1971890] - dmaengine: idxd: add support for readonly config mode (Jerry Snitselaar) [1971890] - dmaengine: idxd: add percpu_ref to descriptor submission path (Jerry Snitselaar) [1971949] - dmaengine: idxd: remove detection of device type (Jerry Snitselaar) [1971963] - Documentation/x86: Update documentation for SVA (Shared Virtual Addressing) (Jerry Snitselaar) [2071461] - tools/objtool: Check for use of the ENQCMD instruction in the kernel (Jerry Snitselaar) [2071461] - x86/cpufeatures: Re-enable ENQCMD (Jerry Snitselaar) [2071461] - x86/traps: Demand-populate PASID MSR via #GP (Jerry Snitselaar) [2071461] - sched: Define and initialize a flag to identify valid PASID in the task (Jerry Snitselaar) [2071461] - x86/fpu: Clear PASID when copying fpstate (Jerry Snitselaar) [2071461] - iommu/sva: Assign a PASID to mm on PASID allocation and free it on mm exit (Jerry Snitselaar) [2071461] - iommu/ioasid: Introduce a helper to check for valid PASIDs (Jerry Snitselaar) [2071461] - kernel/fork: Initialize mm's PASID (Jerry Snitselaar) [2071461] - mm: Change CONFIG option for mm->pasid field (Jerry Snitselaar) [2071461] - mm/fork: clear PASID for new mm (Jerry Snitselaar) [2071461] - iommu/sva: Rename CONFIG_IOMMU_SVA_LIB to CONFIG_IOMMU_SVA (Jerry Snitselaar) [2071461] - turbostat: fix PC6 displaying on some systems (Steve Best) [2040078]- quota: make dquot_quota_sync return errors from ->sync_fs (Lukas Czerner) [2083057] - redhat: disable more noisy rpminspect tests (Jarod Wilson) - mm: thp: replace the page lock with the seqlock for the THP mapcount (Andrea Arcangeli) [1958020] - mm: do_wp_page: deduplicate smart_lock_page (Andrea Arcangeli) [1958020] - mm: hugetlbfs: gup_must_unshare() cleanup (Andrea Arcangeli) [1958020] - mm: GUP: cleanup FOLL_UNSHARE (Andrea Arcangeli) [1958020] - mm: COW: skip the page lock in the COW copy path (Andrea Arcangeli) [1958020] - mm: gup: gup_must_unshare() use can_read_pin_swap_page() (Andrea Arcangeli) [1958020] - mm: hugetlbfs: gup: gup_must_unshare(): enable hugetlbfs (Andrea Arcangeli) [1958020] - mm: hugetlbfs: FOLL_FAULT_UNSHARE (Andrea Arcangeli) [1958020] - mm: hugetlbfs: COR: copy-on-read fault (Andrea Arcangeli) [1958020] - mm: gup: FOLL_UNSHARE RHEL (Andrea Arcangeli) [1958020] - mm: gup: FOLL_NOUNSHARE: optimize follow_page (Andrea Arcangeli) [1958020] - mm: gup: FOLL_UNSHARE (Andrea Arcangeli) [1958020] - mm: gup: gup_must_unshare() (Andrea Arcangeli) [1958020] - mm: gup: COR: copy-on-read fault (Andrea Arcangeli) [1958020] - mm: thp: introduce page_trans_huge_anon_shared (Andrea Arcangeli) [1958020] - mm: thp: stabilize the THP mapcount in page_remove_anon_compound_rmap (Andrea Arcangeli) [1958020] - mm: thp: make the THP mapcount atomic with a seqlock (Andrea Arcangeli) [1958020] - mm: thp: consolidate mapcount logic on THP split (David Hildenbrand) [1958020] - vmxnet3: Remove useless DMA-32 fallback configuration (Kamal Heib) [2083561] - vmxnet3: fix minimum vectors alloc issue (Kamal Heib) [2083561] - net: vmxnet3: remove multiple false checks in vmxnet3_ethtool.c (Kamal Heib) [2083561] - vmxnet3: do not stop tx queues after netif_device_detach() (Kamal Heib) [2083561] - block: limit request dispatch loop duration (Ming Lei) [2005082] - esp: limit skb_page_frag_refill use to a single page (Sabrina Dubroca) [2062115] {CVE-2022-27666} - esp: Fix possible buffer overflow in ESP transformation (Sabrina Dubroca) [2062115] {CVE-2022-27666} - can: ems_usb: ems_usb_start_xmit(): fix double dev_kfree_skb() in error path (Chris von Recklinghausen) [2080376] {CVE-2022-28390} - NFSD: Deprecate NFS_OFFSET_MAX (Scott Mayhew) [2064216] - NFSD: Fix offset type in I/O trace points (Scott Mayhew) [2064216] - NFSD: COMMIT operations must not return NFS?ERR_INVAL (Scott Mayhew) [2064216] - NFSD: Clamp WRITE offsets (Scott Mayhew) [2064216] - NFSD: Fix NFSv3 SETATTR/CREATE's handling of large file sizes (Scott Mayhew) [2064216] - NFSD: Fix ia_size underflow (Scott Mayhew) [2064216] - NFSD: Fix the behavior of READ near OFFSET_MAX (Scott Mayhew) [2064216] - NFSD: Fix READDIR buffer overflow (Scott Mayhew) [2064216] - nfsd: Fix nsfd startup race (again) (Scott Mayhew) [2064216] - NFS: Add a tracepoint to show the results of nfs_set_cache_invalid() (Scott Mayhew) [2064216] - NFSv42: Don't fail clone() unless the OP_CLONE operation failed (Scott Mayhew) [2064216] - NFSD: Fix exposure in nfsd4_decode_bitmap() (Scott Mayhew) [2064216] - NFSv4: Sanity check the parameters in nfs41_update_target_slotid() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from decode_getattr_*() functions (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_setsecurity (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_fhget() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_add_or_obtain() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_instantiate() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs_setattrres (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_getattr_res (Scott Mayhew) [2064216] - NFS: Remove the f_label from the nfs4_opendata and nfs_openres (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_lookupp_res struct (Scott Mayhew) [2064216] - NFS: Remove the label from the nfs4_lookup_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_link_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_create_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs_entry struct (Scott Mayhew) [2064216] - NFS: Create a new nfs_alloc_fattr_with_label() function (Scott Mayhew) [2064216] - NFS: Always initialise fattr->label in nfs_fattr_alloc() (Scott Mayhew) [2064216] - NFSv4: Remove unnecessary 'minor version' check (Scott Mayhew) [2064216] - NFSv4: Fix potential Oops in decode_op_map() (Scott Mayhew) [2064216] - NFSv4: Ensure decode_compound_hdr() sanity checks the tag (Scott Mayhew) [2064216] - NFS: Don't trace an uninitialised value (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to OFFLOAD_CANCEL (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to CB_OFFLOAD (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to CLONE (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to COPY (Scott Mayhew) [2064216] - NFSv4.2 add tracepoints to FALLOCATE and DEALLOCATE (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to SEEK (Scott Mayhew) [2064216] - nfs4: take a reference on the nfs_client when running FREE_STATEID (Scott Mayhew) [2064216] - NFS: Move NFS protocol display macros to global header (Scott Mayhew) [2064216] - NFS: Move generic FS show macros to global header (Scott Mayhew) [2064216] - SUNRPC: Clean up xs_tcp_setup_sock() (Scott Mayhew) [2064216] - NFSv4: Fix a regression in nfs_set_open_stateid_locked() (Scott Mayhew) [2064216] - NFS: Remove redundant call to __set_page_dirty_nobuffers (Scott Mayhew) [2064216] - NFS: Unexport nfs_probe_fsinfo() (Scott Mayhew) [2064216] - NFS: Call nfs_probe_server() during a fscontext-reconfigure event (Scott Mayhew) [2064216] - NFS: Replace calls to nfs_probe_fsinfo() with nfs_probe_server() (Scott Mayhew) [2064216] - NFS: Move nfs_probe_destination() into the generic client (Scott Mayhew) [2064216] - NFS: Create an nfs4_server_set_init_caps() function (Scott Mayhew) [2064216] - NFS: Remove --> and <-- dprintk call sites (Scott Mayhew) [2064216] - SUNRPC: Trace calls to .rpc_call_done (Scott Mayhew) [2064216] - NFS: Replace dprintk callsites in nfs_readpage(s) (Scott Mayhew) [2064216] - SUNRPC: Use BIT() macro in rpc_show_xprt_state() (Scott Mayhew) [2064216] - SUNRPC: Tracepoints should display tk_pid and cl_clid as a fixed-size field (Scott Mayhew) [2064216] - xprtrdma: Remove rpcrdma_ep::re_implicit_roundup (Scott Mayhew) [2064216] - xprtrdma: Provide a buffer to pad Write chunks of unaligned length (Scott Mayhew) [2064216] - Fix user namespace leak (Scott Mayhew) [2064216] - NFS: Save some space in the inode (Scott Mayhew) [2064216] - NFS: Fix WARN_ON due to unionization of nfs_inode.nrequests (Scott Mayhew) [2064216] - NFSv4: Fixes for nfs4_inode_return_delegation() (Scott Mayhew) [2064216] - NFS: Fix an Oops in pnfs_mark_request_commit() (Scott Mayhew) [2064216] - NFS: Fix up commit deadlocks (Scott Mayhew) [2064216] - NFSD:fix boolreturn.cocci warning (Scott Mayhew) [2064216] - nfsd: update create verifier comment (Scott Mayhew) [2064216] - SUNRPC: Change return value type of .pc_encode (Scott Mayhew) [2064216] - SUNRPC: Replace the "__be32 *p" parameter to .pc_encode (Scott Mayhew) [2064216] - NFSD: Save location of NFSv4 COMPOUND status (Scott Mayhew) [2064216] - SUNRPC: Change return value type of .pc_decode (Scott Mayhew) [2064216] - SUNRPC: Replace the "__be32 *p" parameter to .pc_decode (Scott Mayhew) [2064216] - SUNRPC: De-duplicate .pc_release() call sites (Scott Mayhew) [2064216] - SUNRPC: Simplify the SVC dispatch code path (Scott Mayhew) [2064216] - NFS: Fix deadlocks in nfs_scan_commit_list() (Scott Mayhew) [2064216] - NFS: Instrument i_size_write() (Scott Mayhew) [2064216] - SUNRPC: Per-rpc_clnt task PIDs (Scott Mayhew) [2064216] - NFS: Remove unnecessary TRACE_DEFINE_ENUM()s (Scott Mayhew) [2064216] - SUNRPC: Capture value of xdr_buf::page_base (Scott Mayhew) [2064216] - svcrdma: Split svcrmda_wc_{read,write} tracepoints (Scott Mayhew) [2064216] - svcrdma: Split the svcrdma_wc_send() tracepoint (Scott Mayhew) [2064216] - svcrdma: Split the svcrdma_wc_receive() tracepoint (Scott Mayhew) [2064216] - pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds (Scott Mayhew) [2064216] - NFS: Remove unnecessary page cache invalidations (Scott Mayhew) [2064216] - NFS: Fix dentry verifier races (Scott Mayhew) [2064216] - NFS: Further optimisations for 'ls -l' (Scott Mayhew) [2064216] - NFS: Fix up nfs_readdir_inode_mapping_valid() (Scott Mayhew) [2064216] - NFS: Ignore the directory size when marking for revalidation (Scott Mayhew) [2064216] - NFS: Don't set NFS_INO_DATA_INVAL_DEFER and NFS_INO_INVALID_DATA (Scott Mayhew) [2064216] - NFS: Default change_attr_type to NFS4_CHANGE_TYPE_IS_UNDEFINED (Scott Mayhew) [2064216] - NFSv4: Retrieve ACCESS on open if we're not using NFS4_CREATE_EXCLUSIVE (Scott Mayhew) [2064216] - NFS: Fix a few more clear_bit() instances that need release semantics (Scott Mayhew) [2064216] - SUNRPC: xprt_clear_locked() only needs release memory semantics (Scott Mayhew) [2064216] - SUNRPC: Remove unnecessary memory barriers (Scott Mayhew) [2064216] - SUNRPC: Remove WQ_HIGHPRI from xprtiod (Scott Mayhew) [2064216] - SUNRPC: Add cond_resched() at the appropriate point in __rpc_execute() (Scott Mayhew) [2064216] - SUNRPC: Partial revert of commit 6f9f17287e78 (Scott Mayhew) [2064216] - NFS: Fix up nfs_ctx_key_to_expire() (Scott Mayhew) [2064216] - NFS: Label the dentry with a verifier in nfs_rmdir() and nfs_unlink() (Scott Mayhew) [2064216] - NFS: Label the dentry with a verifier in nfs_link(), nfs_symlink() (Scott Mayhew) [2064216] - NFSD: Have legacy NFSD WRITE decoders use xdr_stream_subsegment() (Scott Mayhew) [2064216] - SUNRPC: xdr_stream_subsegment() must handle non-zero page_bases (Scott Mayhew) [2064216] - NFSD: simplify struct nfsfh (Scott Mayhew) [2064216] - NFSD: drop support for ancient filehandles (Scott Mayhew) [2064216] - NFSD: move filehandle format declarations out of "uapi". (Scott Mayhew) [2064216] - UNRPC: Return specific error code on kmalloc failure (Scott Mayhew) [2064216] - NFSD: Optimize DRC bucket pruning (Scott Mayhew) [2064216] - nfsd: don't alloc under spinlock in rpc_parse_scope_id (Scott Mayhew) [2064216] - NFSD: Keep existing listeners on portlist error (Scott Mayhew) [2064216] - nfs: Fix kerneldoc warning shown up by W=1 (Scott Mayhew) [2064216] - nfsd: back channel stuck in SEQ4_STATUS_CB_PATH_DOWN (Scott Mayhew) [2064216] - NLM: Fix svcxdr_encode_owner() (Scott Mayhew) [2064216] - SUNRPC: improve error response to over-size gss credential (Scott Mayhew) [2064216] - NFS: Always provide aligned buffers to the RPC read layers (Scott Mayhew) [2064216] - NFSv3: Delete duplicate judgement in nfs3_async_handle_jukebox (Scott Mayhew) [2064216] - SUNRPC: Tweak TCP socket shutdown in the RPC client (Scott Mayhew) [2064216] - svcrdma: xpt_bc_xprt is already clear in __svc_rdma_free() (Scott Mayhew) [2064216] - rpc: fix gss_svc_init cleanup on failure (Scott Mayhew) [2064216] - SUNRPC: Add RPC_AUTH_TLS protocol numbers (Scott Mayhew) [2064216] - NFSD: remove vanity comments (Scott Mayhew) [2064216] - svcrdma: Convert rdma->sc_rw_ctxts to llist (Scott Mayhew) [2064216] - svcrdma: Relieve contention on sc_send_lock. (Scott Mayhew) [2064216] - svcrdma: Fewer calls to wake_up() in Send completion handler (Scott Mayhew) [2064216] - NFSD: Use new __string_len C macros for nfsd_clid_class (Scott Mayhew) [2064216] - NFSD: Use new __string_len C macros for the nfs_dirent tracepoint (Scott Mayhew) [2064216] - tracing: Add trace_event helper macros __string_len() and __assign_str_len() (Scott Mayhew) [2064216] - NFSD: Clean up splice actor (Scott Mayhew) [2064216] - NFS: Clean up the synopsis of callback process_op() (Scott Mayhew) [2064216] - NFS: Extract the xdr_init_encode/decode() calls from decode_compound (Scott Mayhew) [2064216] - NFS: Remove unused callback void decoder (Scott Mayhew) [2064216] - NFS: Add a private local dispatcher for NFSv4 callback operations (Scott Mayhew) [2064216] - SUNRPC: Eliminate the RQ_AUTHERR flag (Scott Mayhew) [2064216] - SUNRPC: Set rq_auth_stat in the pg_authenticate() callout (Scott Mayhew) [2064216] - SUNRPC: Add svc_rqst::rq_auth_stat (Scott Mayhew) [2064216] - NFSv4/pNFS: Remove dead code (Scott Mayhew) [2064216] - SUNRPC: Convert rpc_client refcount to use refcount_t (Scott Mayhew) [2064216] - xprtrdma: Eliminate rpcrdma_post_sends() (Scott Mayhew) [2064216] - xprtrdma: Add an xprtrdma_post_send_err tracepoint (Scott Mayhew) [2064216] - xprtrdma: Add xprtrdma_post_recvs_err() tracepoint (Scott Mayhew) [2064216] - xprtrdma: Add an rpcrdma_mr_completion_class (Scott Mayhew) [2064216] - xprtrdma: Don't display r_xprt memory addresses in tracepoints (Scott Mayhew) [2064216] - xprtrdma: Disconnect after an ib_post_send() immediate error (Scott Mayhew) [2064216] - SUNRPC: Record timeout value in xprt_retransmit tracepoint (Scott Mayhew) [2064216] - SUNRPC: xprt_retransmit() displays the the NULL procedure incorrectly (Scott Mayhew) [2064216] - treewide: Add missing semicolons to __assign_str uses (Scott Mayhew) [2064216] - SUNRPC: Remove unneeded TRACE_DEFINE_ENUMs (Scott Mayhew) [2064216] - SUNRPC: Unset RPC_TASK_NO_RETRANS_TIMEOUT for NULL RPCs (Scott Mayhew) [2064216] - SUNRPC: Refactor rpc_ping() (Scott Mayhew) [2064216] - nfsd: fix NULL dereference in nfs3svc_encode_getaclres (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SHARE results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 nlm_res results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 TEST results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 void results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 FREE_ALL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SHARE arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SM_NOTIFY arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 nlm_res arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 UNLOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 CANCEL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 LOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 TEST arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 void arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SHARE results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 nlm_res results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 TEST results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 void results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 FREE_ALL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SHARE arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SM_NOTIFY arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 nlm_res arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 UNLOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 CANCEL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 LOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 TEST arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 void argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Common NLM XDR helpers (Scott Mayhew) [2064216] - lockd: Create a simplified .vs_dispatch method for NLM requests (Scott Mayhew) [2064216] - lockd: Remove stale comments (Scott Mayhew) [2064216] - nfsd: rpc_peeraddr2str needs rcu lock (Scott Mayhew) [2064216] - rpc: remove redundant initialization of variable status (Scott Mayhew) [2064216] - NFSv4: setlease should return EAGAIN if locks are not available (Scott Mayhew) [2064216] - NFS: Avoid duplicate resets of attribute cache timeouts (Scott Mayhew) [2064216] - NFSv4: Fix handling of non-atomic change attrbute updates (Scott Mayhew) [2064216] - NFS: Fix up inode attribute revalidation timeouts (Scott Mayhew) [2064216] - NFSv4: Add support for application leases underpinned by a delegation (Scott Mayhew) [2064216] - NFSv4: Add lease breakpoints in case of a delegation recall or return (Scott Mayhew) [2064216] - NFSv4: Fix delegation return in cases where we have to retry (Scott Mayhew) [2064216] - nfsd: move some commit_metadata()s outside the inode lock (Scott Mayhew) [2064216] - NFSD: Update nfsd_cb_args tracepoint (Scott Mayhew) [2064216] - NFSD: Remove the nfsd_cb_work and nfsd_cb_done tracepoints (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_probe tracepoint (Scott Mayhew) [2064216] - NFSD: Replace the nfsd_deleg_break tracepoint (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_offload tracepoint (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_lm_notify tracepoint (Scott Mayhew) [2064216] - NFSD: Enhance the nfsd_cb_setup tracepoint (Scott Mayhew) [2064216] - NFSD: Remove spurious cb_setup_err tracepoint (Scott Mayhew) [2064216] - NFSD: Adjust cb_shutdown tracepoint (Scott Mayhew) [2064216] - NFSD: Add cb_lost tracepoint (Scott Mayhew) [2064216] - NFSD: Drop TRACE_DEFINE_ENUM for NFSD4_CB_ macros (Scott Mayhew) [2064216] - NFSD: Capture every CB state transition (Scott Mayhew) [2064216] - NFSD: Constify @fh argument of knfsd_fh_hash() (Scott Mayhew) [2064216] - NFSD: Add tracepoints for EXCHANGEID edge cases (Scott Mayhew) [2064216] - NFSD: Add tracepoints for SETCLIENTID edge cases (Scott Mayhew) [2064216] - NFSD: Add a couple more nfsd_clid_expired call sites (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_destroyed tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_reclaim_complete tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_confirmed tracepoint (Scott Mayhew) [2064216] - NFSD: Remove trace_nfsd_clid_inuse_err (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_verf_mismatch tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_cred_mismatch tracepoint (Scott Mayhew) [2064216] - NFSD: Add an RPC authflavor tracepoint display helper (Scott Mayhew) [2064216] - NFS: Ensure the NFS_CAP_SECURITY_LABEL capability is set when appropriate (Scott Mayhew) [2064216] - NFS: Split attribute support out from the server capabilities (Scott Mayhew) [2064216] - NFS: Don't store NFS_INO_REVAL_FORCED (Scott Mayhew) [2064216] - NFSv4: link must update the inode nlink. (Scott Mayhew) [2064216] - NFSv4: nfs4_inc/dec_nlink_locked should also invalidate ctime (Scott Mayhew) [2064216] - NFS: Another inode revalidation improvement (Scott Mayhew) [2064216] - NFS: Use information about the change attribute to optimise updates (Scott Mayhew) [2064216] - NFSv4: Add support for the NFSv4.2 "change_attr_type" attribute (Scott Mayhew) [2064216] - NFS: Simplify cache consistency in nfs_check_inode_attributes() (Scott Mayhew) [2064216] - NFS: Remove a line of code that has no effect in nfs_update_inode() (Scott Mayhew) [2064216] - NFS: Fix up handling of outstanding layoutcommit in nfs_update_inode() (Scott Mayhew) [2064216] - NFS: Separate tracking of file mode cache validity from the uid/gid (Scott Mayhew) [2064216] - NFS: Separate tracking of file nlinks cache validity from the mode/uid/gid (Scott Mayhew) [2064216] - NFSv4: Fix nfs4_bitmap_copy_adjust() (Scott Mayhew) [2064216] - NFS: Don't set NFS_INO_REVAL_PAGECACHE in the inode cache validity (Scott Mayhew) [2064216] - NFS: Replace use of NFS_INO_REVAL_PAGECACHE when checking cache validity (Scott Mayhew) [2064216] - NFS: Add a cache validity flag argument to nfs_revalidate_inode() (Scott Mayhew) [2064216] - NFS: nfs_setattr_update_inode() should clear the suid/sgid bits (Scott Mayhew) [2064216] - NFS: Fix up statx() results (Scott Mayhew) [2064216] - NFS: Don't revalidate attributes that are not being asked for (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv3 ACL encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 SETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 GETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv2 ACL encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL ACCESS result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL GETATTR result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add an xdr_stream-based encoder for NFSv2/3 ACLs (Scott Mayhew) [2064216] - NFSD: Remove unused NFSv2 directory entry encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR entry encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Count bytes instead of pages in the NFSv2 READDIR encoder (Scott Mayhew) [2064216] - NFSD: Add a helper that encodes NFSv3 directory offset cookies (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 STATFS result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READ result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READLINK result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 diropres encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 attrstat encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 stat encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Reduce svc_rqst::rq_pages churn during READDIR operations (Scott Mayhew) [2064216] - NFSD: Remove unused NFSv3 directory entry encoders (Scott Mayhew) [2064216] - NFSD: Update NFSv3 READDIR entry encoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READDIR3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Count bytes instead of pages in the NFSv3 READDIR encoder (Scott Mayhew) [2064216] - NFSD: Add a helper that encodes NFSv3 directory offset cookies (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 COMMIT3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 PATHCONF3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 FSINFO3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 FSSTAT3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 LINK3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 RENAMEv3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 CREATE family of encoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 WRITE3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READ3res encode to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READLINK3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 wccstat result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 LOOKUP3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 ACCESS3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the GETATTR3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Extract the svcxdr_init_encode() helper (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv3 ACL decoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 GETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv2 ACL decoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL ACCESS argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL GETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add an xdr_stream-based decoder for NFSv2/3 ACLs (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Remove argument length checking in nfsd_dispatch() (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SYMLINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 CREATE argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 LINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 RENAME argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update NFSv2 diropargs decoding to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add helper to set up the pages where the dirlist is encoded (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READLINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 WRITE argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READ argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the MKNOD3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the SYMLINK3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the MKDIR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the CREATE3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the SETATTR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the LINK3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the RENAME3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 DIROPargs decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update COMMIT3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update READDIR3args decoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add helper to set up the pages where the dirlist is encoded (Scott Mayhew) [2064216] - NFSD: Fix returned READDIR offset cookie (Scott Mayhew) [2064216] - NFSD: Update READLINK3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update WRITE3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update READ3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update ACCESS3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update GETATTR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - SUNRPC: Move definition of XDR_UNIT (Scott Mayhew) [2064216] - rpcrdma: Capture bytes received in Receive completion tracepoints (Scott Mayhew) [2064216] - NFSD: Restore NFSv4 decoding's SAVEMEM functionality (Scott Mayhew) [2064216] - NFSD: Remove macros that are no longer used (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_compound() (Scott Mayhew) [2064216] - NFSD: Make nfsd4_ops::opnum a u32 (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_listxattrs() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setxattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_xattr_name() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_clone() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_seek() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_offload_status() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_copy() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_fallocate() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_reclaim_complete() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_destroy_clientid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_test_stateid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_sequence() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_secinfo_no_name() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutreturn() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutget() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutcommit() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_getdeviceinfo() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_free_stateid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_destroy_session() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_create_session() (Scott Mayhew) [2064216] - NFSD: Add a helper to decode channel_attrs4 (Scott Mayhew) [2064216] - NFSD: Add a helper to decode nfs_impl_id4 (Scott Mayhew) [2064216] - NFSD: Add a helper to decode state_protect4_a (Scott Mayhew) [2064216] - NFSD: Add a separate decoder for ssv_sp_parms (Scott Mayhew) [2064216] - NFSD: Add a separate decoder to handle state_protect_ops (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_bind_conn_to_session() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_backchannel_ctl() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_cb_sec() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_release_lockowner() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_write() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_verify() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setclientid_confirm() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setclientid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_secinfo() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_renew() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_rename() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_remove() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_readdir() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_read() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_putfh() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open_downgrade() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open_confirm() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open() (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's open_claim4 argument (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_share_deny() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_share_access() (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's openflag4 argument (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's createhow4 argument (Scott Mayhew) [2064216] - NFSD: Add helper to decode NFSv4 verifiers (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lookup() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_locku() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lockt() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lock() (Scott Mayhew) [2064216] - NFSD: Add helper for decoding locker4 (Scott Mayhew) [2064216] - NFSD: Add helpers to decode a clientid4 and an NFSv4 state owner (Scott Mayhew) [2064216] - NFSD: Relocate nfsd4_decode_opaque() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_link() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_getattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_delegreturn() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_create() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_fattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 umask attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 security label attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 time_set attributes (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 owner_group attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 owner attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 mode attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 acl attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 size attribute (Scott Mayhew) [2064216] - NFSD: Change the way the expected length of a fattr4 is checked (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_commit() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_close() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_access() (Scott Mayhew) [2064216] - NFSD: Replace the internals of the READ_BUF() macro (Scott Mayhew) [2064216] - nfsd/nfs3: remove unused macro nfsd3_fhandleres (Scott Mayhew) [2064216] - vt: vt_ioctl: fix race in VT_RESIZEX (Čestmír Kalina) [2068338] - net/mlx5: Bridge, Fix devlink deadlock on net namespace deletion (Amir Tzin) [2055580] - openvswitch: Fix setting ipv6 fields causing hw csum failure (Eelco Chaudron) [1974356]- Fix up versioning for maintainer builds (Jarod Wilson) - powerpc/iommu: Enable remaining IOMMU Pagesizes present in LoPAR (Gustavo Walbon) [1987109] - sizes.h: add SZ_8G/SZ_16G/SZ_32G macros (Gustavo Walbon) [1987109] - x86/cpu: Add Xeon Icelake-D to list of CPUs that support PPIN (Puneet Sethi) [2040336] - dm integrity: fix memory corruption when tag_size is less than digest size (Benjamin Marzinski) [2081775] - sctp: check asoc strreset_chunk in sctp_generate_reconf_event (Xin Long) [2079980] - sctp: Initialize daddr on peeled off socket (Xin Long) [2079980] - sctp: fix kernel-infoleak for SCTP sockets (Xin Long) [2079980] - sctp: do not update transport pathmtu if SPP_PMTUD_ENABLE is not set (Xin Long) [2079980] - dm crypt: fix copy and paste bug in crypt_alloc_req_aead (Benjamin Marzinski) [2073431] - dm crypt: defer decryption to a tasklet if interrupts disabled (Benjamin Marzinski) [2073431] - dm crypt: do not call bio_endio() from the dm-crypt tasklet (Benjamin Marzinski) [2073431] - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq (Benjamin Marzinski) [2073431] - dm crypt: do not wait for backlogged crypto request completion in softirq (Benjamin Marzinski) [2073431] - dm crypt: document new no_workqueue flags (Benjamin Marzinski) [2073431] - dm crypt: add flags to optionally bypass kcryptd workqueues (Benjamin Marzinski) [2073431] - tracing/osnoise: Force quiescent states while tracing (Jerome Marchand) [2069710] - tracing/osnoise: Do not unregister events twice (Jerome Marchand) [2069710] - tracing/osnoise: Make osnoise_main to sleep for microseconds (Jerome Marchand) [2069710] - tracing/osnoise: Properly unhook events if start_per_cpu_kthreads() fails (Jerome Marchand) [2069710] - tracing/osnoise: Make osnoise_instances static (Jerome Marchand) [2069710] - tracing/osnoise: Remove PREEMPT_RT ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Remove STACKTRACE ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Allow multiple instances of the same tracer (Jerome Marchand) [2069710] - tracing/osnoise: Remove TIMERLAT ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Support a list of trace_array *tr (Jerome Marchand) [2069710] - tracing/osnoise: Use start/stop_per_cpu_kthreads() on osnoise_cpus_write() (Jerome Marchand) [2069710] - tracing/osnoise: Split workload start from the tracer start (Jerome Marchand) [2069710] - tracing/osnoise: Improve comments about barrier need for NMI callbacks (Jerome Marchand) [2069710] - tracing/osnoise: Do not follow tracing_cpumask (Jerome Marchand) [2069710] - trace/timerlat: Add migrate-disabled field to the timerlat header (Jerome Marchand) [2069710] - trace/osnoise: Add migrate-disabled field to the osnoise header (Jerome Marchand) [2069710] - tracing/doc: Fix typos on the timerlat tracer documentation (Jerome Marchand) [2069710] - trace/osnoise: Fix an ifdef comment (Jerome Marchand) [2069710] - redhat: indicate HEAD state in tarball/rpm name (Jarod Wilson) - selftest: net: Test IPv4 PMTU exceptions with DSCP and ECN (Guillaume Nault) [2081453] - ipv4: Fix route lookups when handling ICMP redirects and PMTU updates (Guillaume Nault) [2081453] - ipv4: tcp: send zero IPID in SYNACK messages (Guillaume Nault) [2081453] - ipv4: raw: lock the socket in raw_bind() (Guillaume Nault) [2081453] - net/af_packet: add VLAN support for AF_PACKET SOCK_RAW GSO (Hangbin Liu) [2066976] - net/packet: fix packet_sock xmit return value checking (Hangbin Liu) [2066976] - doc/ip-sysctl: add bc_forwarding (Xin Long) [2080486] - net/packet: fix packet_sock xmit return value checking (Xin Long) [2080486] - net: handle ARPHRD_PIMREG in dev_is_mac_header_xmit() (Xin Long) [2080486] - net/packet: fix slab-out-of-bounds access in packet_recvmsg() (Xin Long) [2080486] - veth: fix races around rq->rx_notify_masked (Xin Long) [2080486] - af_packet: fix data-race in packet_setsockopt / packet_setsockopt (Xin Long) [2080486] - ipv4: remove sparse error in ip_neigh_gw4() (Xin Long) [2080486] - af_unix: annote lockless accesses to unix_tot_inflight & gc_in_progress (Xin Long) [2080486] - veth: Do not record rx queue hint in veth_xmit (Xin Long) [2080486] - veth: ensure skb entering GRO are not cloned. (Xin Long) [2080486] - ethtool: Fix link extended state for big endian (Xin Long) [2080486] - ethtool: do not perform operations on net devices being unregistered (Xin Long) [2080486] - ethtool: Add transceiver module extended state (Xin Long) [2080486] - ethtool: runtime-resume netdev parent in ethnl_ops_begin (Xin Long) [2080486] - ethtool: move netif_device_present check from ethnl_parse_header_dev_get to ethnl_ops_begin (Xin Long) [2080486] - ethtool: move implementation of ethnl_ops_begin/complete to netlink.c (Xin Long) [2080486] - net: validate lwtstate->data before returning from skb_tunnel_info() (Xin Long) [2080486]- bnx2x: fix napi API usage sequence (Manish Chopra) [2080659] - netfilter: fix use-after-free in __nf_register_net_hook() (Florian Westphal) [2080272] - netfilter: nf_tables: unregister flowtable hooks on netns exit (Florian Westphal) [2080272] - netfilter: nftables: add helper function to release hooks of one single table (Florian Westphal) [2080272] - netfilter: nft_socket: only do sk lookups when indev is available (Florian Westphal) [2080272] - netfilter: nf_conntrack_tcp: re-init for syn packets only (Florian Westphal) [2080272] - netfilter: nft_set_rbtree: overlap detection with element re-addition after deletion (Florian Westphal) [2080272] - netfilter: nf_tables: fix memory leak during stateful obj update (Florian Westphal) [2080272] - netfilter: nf_conntrack_tcp: preserve liberal flag in tcp options (Florian Westphal) [2080272] - netfilter: ctnetlink: disable helper autoassign (Florian Westphal) [2080272] - netfilter: nft_payload: don't allow th access for fragments (Florian Westphal) [2080272] - netfilter: nft_payload: simplify vlan header handling (Florian Westphal) [2080272] - RDMA/rxe: Change mcg_lock to a _bh lock (Kamal Heib) [2056500] - RDMA/rxe: Do not call dev_mc_add/del() under a spinlock (Kamal Heib) [2056500] - RDMA/rxe: Recheck the MR in when generating a READ reply (Kamal Heib) [2056500] - RDMA/rxe: Fix "Replace mr by rkey in responder resources" (Kamal Heib) [2056500] - RDMA/siw: Fix a condition race issue in MPA request processing (Kamal Heib) [2056500] - RDMA/irdma: Fix possible crash due to NULL netdev in notifier (Kamal Heib) [2056500] - RDMA/irdma: Reduce iWARP QP destroy time (Kamal Heib) [2056500] - RDMA/irdma: Flush iWARP QP if modified to ERR from RTR state (Kamal Heib) [2056500] - RDMA/irdma: Fix deadlock in irdma_cleanup_cm_core() (Kamal Heib) [2056500] - RDMA/hfi1: Fix use-after-free bug for mm struct (Kamal Heib) [2056500] - IB/rdmavt: add lock to call to rvt_error_qp to prevent a race condition (Kamal Heib) [2056500] - IB/cm: Cancel mad on the DREQ event when the state is MRA_REP_RCVD (Kamal Heib) [2056500] - RDMA/nldev: Prevent underflow in nldev_stat_set_counter_dynamic_doit() (Kamal Heib) [2056500] - IB/iser: Fix error flow in case of registration failure (Kamal Heib) [2056500] - IB/iser: Generalize map/unmap dma tasks (Kamal Heib) [2056500] - IB/iser: Use iser_fr_desc as registration context (Kamal Heib) [2056500] - IB/iser: Remove iser_reg_data_sg helper function (Kamal Heib) [2056500] - RDMA/rxe: Use standard names for ref counting (Kamal Heib) [2056500] - RDMA/rxe: Replace red-black trees by xarrays (Kamal Heib) [2056500] - RDMA/rxe: Shorten pool names in rxe_pool.c (Kamal Heib) [2056500] - RDMA/rxe: Move max_elem into rxe_type_info (Kamal Heib) [2056500] - RDMA/rxe: Replace obj by elem in declaration (Kamal Heib) [2056500] - RDMA/rxe: Delete _locked() APIs for pool objects (Kamal Heib) [2056500] - RDMA/rxe: Reverse the sense of RXE_POOL_NO_ALLOC (Kamal Heib) [2056500] - RDMA/rxe: Replace mr by rkey in responder resources (Kamal Heib) [2056500] - RDMA/rxe: Fix ref error in rxe_av.c (Kamal Heib) [2056500] - RDMA/irdma: Add support for address handle re-use (Kamal Heib) [2056500] - Revert "RDMA/core: Fix ib_qp_usecnt_dec() called when error" (Kamal Heib) [2056500] - RDMA/rxe: Remove useless argument for update_state() (Kamal Heib) [2056500] - RDMA/rxe: Change variable and function argument to proper type (Kamal Heib) [2056500] - RDMA/irdma: Prevent some integer underflows (Kamal Heib) [2056500] - RDMA/core: Fix ib_qp_usecnt_dec() called when error (Kamal Heib) [2056500] - IB/hfi1: Allow larger MTU without AIP (Kamal Heib) [2056500] - RDMA/core: Remove unnecessary statements (Kamal Heib) [2056500] - RDMA/irdma: Remove incorrect masking of PD (Kamal Heib) [2056500] - RDMA/irdma: Fix Passthrough mode in VM (Kamal Heib) [2056500] - RDMA/irdma: Fix netdev notifications for vlan's (Kamal Heib) [2056500] - RDMA/irdma: Make irdma_create_mg_ctx return a void (Kamal Heib) [2056500] - RDMA/irdma: Move union irdma_sockaddr to header file (Kamal Heib) [2056500] - RDMA/irdma: Remove the unnecessary variable saddr (Kamal Heib) [2056500] - RDMA/irdma: Use net_type to check network type (Kamal Heib) [2056500] - RDMA/rxe: Cleanup rxe_mcast.c (Kamal Heib) [2056500] - RDMA/rxe: Collect cleanup mca code in a subroutine (Kamal Heib) [2056500] - RDMA/rxe: Collect mca init code in a subroutine (Kamal Heib) [2056500] - RDMA/rxe: Warn if mcast memory is not freed (Kamal Heib) [2056500] - RDMA/irdma: Remove excess error variables (Kamal Heib) [2056500] - RDMA/irdma: Propagate error codes (Kamal Heib) [2056500] - RDMA/irdma: Remove enum irdma_status_code (Kamal Heib) [2056500] - RDMA/ib_srp: Add more documentation (Kamal Heib) [2056500] - IB/cma: Allow XRC INI QPs to set their local ACK timeout (Kamal Heib) [2056500] - RDMA/rxe: Remove mcg from rxe pools (Kamal Heib) [2056500] - RDMA/rxe: Remove key'ed object support (Kamal Heib) [2056500] - RDMA/rxe: Replace pool key by rxe->mcg_tree (Kamal Heib) [2056500] - RDMA/rxe: Replace int num_qp by atomic_t qp_num (Kamal Heib) [2056500] - RDMA/rxe: Replace grp by mcg, mce by mca (Kamal Heib) [2056500] - RDMA/rxe: Use kzmalloc/kfree for mca (Kamal Heib) [2056500] - RDMA/rxe: Move mcg_lock to rxe (Kamal Heib) [2056500] - RDMA/hfi: Replace cpumask_weight with cpumask_empty where appropriate (Kamal Heib) [2056500] - RDMA/irdma: Refactor DCB bits in prep for DSCP support (Kamal Heib) [2056500] - RDMA/opa: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/iser: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/ipoib: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/rxe: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/usnic: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/hfi1: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/core: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/core: Set MR type in ib_reg_user_mr (Kamal Heib) [2056500] - md: Set MD_BROKEN for RAID1 and RAID10 (Nigel Croxon) [2042729] - raid5: introduce MD_BROKEN (Nigel Croxon) [2042729] - RHEL only Changes to support block changes not picked up (Nigel Croxon) [2042729] - md: fix NULL pointer deref with nowait but no mddev->queue (Nigel Croxon) [2042729] - md: use default_groups in kobj_type (Nigel Croxon) [2042729] - md: Move alloc/free acct bioset in to personality (Nigel Croxon) [2042729] - md: fix spelling of "its" (Nigel Croxon) [2042729] - md: raid456 add nowait support (Nigel Croxon) [2042729] - md: raid10 add nowait support (Nigel Croxon) [2042729] - md: raid1 add nowait support (Nigel Croxon) [2042729] - md: add support for REQ_NOWAIT (Nigel Croxon) [2042729] - md/raid5: play nice with PREEMPT_RT (Nigel Croxon) [2042729] - md/raid1: fix missing bitmap update w/o WriteMostly devices (Nigel Croxon) [2042729] - md: fix double free of mddev->private in autorun_array() (Nigel Croxon) [2042729] - md: fix update super 1.0 on rdev size change (Nigel Croxon) [2042729] - raid5-ppl: use swap() to make code cleaner (Nigel Croxon) [2042729] - md/bitmap: don't set max_write_behind if there is no write mostly device (Nigel Croxon) [2042729] - md: update superblock after changing rdev flags in state_store (Nigel Croxon) [2042729] - md: remove unused argument from md_new_event (Nigel Croxon) [2042729] - md/raid5: call roundup_pow_of_two in raid5_run (Nigel Croxon) [2042729] - md/raid1: use rdev in raid1_write_request directly (Nigel Croxon) [2042729] - md/raid1: only allocate write behind bio for WriteMostly device (Nigel Croxon) [2042729] - md: properly unwind when failing to add the kobject in md_alloc (Nigel Croxon) [2042729] - md: extend disks_mutex coverage (Nigel Croxon) [2042729] - md: add the bitmap group to the default groups for the md kobject (Nigel Croxon) [2042729] - md: add error handling support for add_disk() (Nigel Croxon) [2042729] - md: fix a lock order reversal in md_alloc (Nigel Croxon) [2042729] - scsi: qedf: Stop using the SCSI pointer (Nilesh Javali) [2044843] - scsi: qedf: Change context reset messages to ratelimited (Nilesh Javali) [2044843] - scsi: qedf: Fix refcount issue when LOGO is received during TMF (Nilesh Javali) [2044843] - scsi: qedf: Add stag_work to all the vports (Nilesh Javali) [2044843] - scsi: qedf: Fix potential dereference of NULL pointer (Nilesh Javali) [2044843] - eth: fwnode: remove the addr len from mac helpers (Íñigo Huguet) [2069565] - eth: fwnode: change the return type of mac address helpers (Íñigo Huguet) [2069565] - device property: move mac addr helpers to eth.c (Íñigo Huguet) [2069565] - net: thunderx: Use fwnode_get_mac_address() (Íñigo Huguet) [2069565] - qede: confirm skb is allocated before using (Manish Chopra) [2040267] - qed: fix ethtool register dump (Manish Chopra) [2040267] - qed: remove unnecessary memset in qed_init_fw_funcs (Manish Chopra) [2040267] - qed: return status of qed_iov_get_link (Manish Chopra) [2040267] - net: qlogic: check the return value of dma_alloc_coherent() in qed_vf_hw_prepare() (Manish Chopra) [2040267] - qed: validate and restrict untrusted VFs vlan promisc mode (Manish Chopra) [2040267] - qed: display VF trust config (Manish Chopra) [2040267] - qed: prevent a fw assert during device shutdown (Manish Chopra) [2040267] - qed: use msleep() in qed_mcp_cmd() and add qed_mcp_cmd_nosleep() for udelay. (Manish Chopra) [2040267] - qed: Use dma_set_mask_and_coherent() and simplify code (Manish Chopra) [2040267] - qed*: esl priv flag support through ethtool (Manish Chopra) [2040267] - qed*: enhance tx timeout debug info (Manish Chopra) [2040267] - qede: validate non LSO skb length (Manish Chopra) [2040267] - qed: Enhance rammod debug prints to provide pretty details (Manish Chopra) [2040267] - net: qed: fix the array may be out of bound (Manish Chopra) [2040267] - qed: Use the bitmap API to simplify some functions (Manish Chopra) [2040267] - RDMA/qed: Use helper function to set GUIDs (Manish Chopra) [2040267] - net: qed_dev: fix check of true !rc expression (Manish Chopra) [2040267] - net: qed_ptp: fix check of true !rc expression (Manish Chopra) [2040267] - RDMA/qedr: Remove unsupported qedr_resize_cq callback (Manish Chopra) [2040267] - qed: Change the TCP common variable - "iscsi_ooo" (Manish Chopra) [2040267] - qed: Optimize the ll2 ooo flow (Manish Chopra) [2040267] - net: qed_debug: fix check of false (grc_param < 0) expression (Manish Chopra) [2040267] - qed: Fix missing error code in qed_slowpath_start() (Manish Chopra) [2040267] - qed: Fix compilation for CONFIG_QED_SRIOV undefined scenario (Manish Chopra) [2040267] - qed: Initialize debug string array (Manish Chopra) [2040267] - qed: Fix spelling mistake "ctx_bsaed" -> "ctx_based" (Manish Chopra) [2040267] - qed: fix ll2 establishment during load of RDMA driver (Manish Chopra) [2040267] - qed: Update the TCP active termination 2 MSL timer ("TIME_WAIT") (Manish Chopra) [2040267] - qed: Update TCP silly-window-syndrome timeout for iwarp, scsi (Manish Chopra) [2040267] - qed: Update debug related changes (Manish Chopra) [2040267] - qed: Add '_GTT' suffix to the IRO RAM macros (Manish Chopra) [2040267] - qed: Update FW init functions to support FW 8.59.1.0 (Manish Chopra) [2040267] - qed: Use enum as per FW 8.59.1.0 in qed_iro_hsi.h (Manish Chopra) [2040267] - qed: Update qed_hsi.h for fw 8.59.1.0 (Manish Chopra) [2040267] - qed: Update qed_mfw_hsi.h for FW ver 8.59.1.0 (Manish Chopra) [2040267] - qed: Update common_hsi for FW ver 8.59.1.0 (Manish Chopra) [2040267] - qed: Split huge qed_hsi.h header file (Manish Chopra) [2040267] - qed: Remove e4_ and _e4 from FW HSI (Manish Chopra) [2040267] - qed: Fix kernel-doc warnings (Manish Chopra) [2040267] - qed: Don't ignore devlink allocation failures (Manish Chopra) [2040267] - qed: Improve the stack space of filter_config() (Manish Chopra) [2040267] - RDMA/qedr: Move variables reset to qedr_set_common_qp_params() (Manish Chopra) [2040267] - ip_gre, ip6_gre: Fix race condition on o_seqno in collect_md mode (Guillaume Nault) [2081030] - ip6_gre: Make o_seqno start from 0 in native mode (Guillaume Nault) [2081030] - ip_gre: Make o_seqno start from 0 in native mode (Guillaume Nault) [2081030] - ip6_gre: Fix skb_under_panic in __gre6_xmit() (Guillaume Nault) [2081030] - ip6_gre: Avoid updating tunnel->tun_hlen in __gre6_xmit() (Guillaume Nault) [2081030] - ipv6_tunnel: Rate limit warning messages (Guillaume Nault) [2081030] - net: fix up skbs delta_truesize in UDP GRO frag_list (Hangbin Liu) [2082388] - drop_monitor: fix data-race in dropmon_net_event / trace_napi_poll_hit (Hangbin Liu) [2082388] - rtnetlink: make sure to refresh master_dev/m_ops in __rtnl_newlink() (Hangbin Liu) [2082388] - netns: add schedule point in ops_exit_list() (Hangbin Liu) [2082388] - lwtunnel: Validate RTA_ENCAP_TYPE attribute length (Hangbin Liu) [2082388] - net, neigh: clear whole pneigh_entry at alloc time (Hangbin Liu) [2082388] - net: annotate data-races on txq->xmit_lock_owner (Hangbin Liu) [2082388] - sock: fix /proc/net/sockstat underflow in sk_clone_lock() (Hangbin Liu) [2082388] - net: stream: don't purge sk_error_queue in sk_stream_kill_queues() (Hangbin Liu) [2082388] - rtnetlink: fix if_nlmsg_stats_size() under estimation (Hangbin Liu) [2082388] - net: watchdog: hold device global xmit lock during tx disable (Hangbin Liu) [2082388] - torture: Fix incorrectly redirected "exit" in kvm-remote.sh (Waiman Long) [2065993] - rcu: Allow rcu_irq_enter_check_tick() from NMI (Waiman Long) [2065993] - srcu: Early test SRCU polling start (Waiman Long) [2065993] - rcu/nocb: Unify timers (Waiman Long) [2065993] - rcu/nocb: Prepare for fine-grained deferred wakeup (Waiman Long) [2065993] - rcu/nocb: Only cancel nocb timer if not polling (Waiman Long) [2065993] - rcu/nocb: Delete bypass_timer upon nocb_gp wakeup (Waiman Long) [2065993] - rcu/nocb: Cancel nocb_timer upon nocb_gp wakeup (Waiman Long) [2065993] - rcu/nocb: Allow de-offloading rdp leader (Waiman Long) [2065993] - rcu/nocb: Directly call __wake_nocb_gp() from bypass timer (Waiman Long) [2065993] - refscale: Avoid false-positive warnings in ref_scale_reader() (Waiman Long) [2065993] - scftorture: Avoid false-positive warnings in scftorture_invoker() (Waiman Long) [2065993] - rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader() (Waiman Long) [2065993] - rcu-tasks: Don't delete holdouts within trc_inspect_reader() (Waiman Long) [2065993] - rcutorture: Move mem_dump_obj() tests into separate function (Waiman Long) [2065993] - rcu: Remove obsolete rcu_read_unlock() deadlock commentary (Waiman Long) [2065993] - rcu: Improve comments describing RCU read-side critical sections (Waiman Long) [2065993] - rcu: Add missing __releases() annotation (Waiman Long) [2065993] - kvfree_rcu: Fix comments according to current code (Waiman Long) [2065993] - torture: Don't cap remote runs by build-system number of CPUs (Waiman Long) [2065993] - torture: Make kvm-remote.sh account for network failure in pathname checks (Waiman Long) [2065993] - rcu: Create an unrcu_pointer() to remove __rcu from a pointer (Waiman Long) [2065993] - kvfree_rcu: Refactor kfree_rcu_monitor() (Waiman Long) [2065993] - srcu: Fix broken node geometry after early ssp init (Waiman Long) [2065993] - rcu: Point to documentation of ordering guarantees (Waiman Long) [2065993] - rcu: Don't penalize priority boosting when there is nothing to boost (Waiman Long) [2065993] - kvfree_rcu: Use kfree_rcu_monitor() instead of open-coded variant (Waiman Long) [2065993] - kvfree_rcu: Update "monitor_todo" once a batch is started (Waiman Long) [2065993] - kvfree_rcu: Add a bulk-list check when a scheduler is run (Waiman Long) [2065993] - kvfree_rcu: Use [READ/WRITE]_ONCE() macros to access to nr_bkv_objs (Waiman Long) [2065993] - kvfree_rcu: Release a page cache under memory pressure (Waiman Long) [2065993] - rcu: Shrink each possible cpu krcp (Waiman Long) [2065993] - rcu/segcblist: Prevent useless GP start if no CBs to accelerate (Waiman Long) [2065993] - rcutorture: Don't count CPU-stalled time against priority boosting (Waiman Long) [2065993] - rcu: Make rcu_gp_cleanup() be noinline for tracing (Waiman Long) [2065993] - rcutorture: Add BUSTED-BOOST to test RCU priority boosting tests (Waiman Long) [2065993] - srcu: Initialize SRCU after timers (Waiman Long) [2065993] - srcu: Unconditionally embed struct lockdep_map (Waiman Long) [2065993] - rcutorture: Forgive RCU boost failures when CPUs don't pass through QS (Waiman Long) [2065993] - rcutorture: Test start_poll_synchronize_rcu() and poll_state_synchronize_rcu() (Waiman Long) [2065993] - rcu: Provide polling interfaces for Tree RCU grace periods (Waiman Long) [2065993] - rcutorture: Make rcu_torture_boost_failed() check for GP end (Waiman Long) [2065993] - rcutorture: Consolidate rcu_torture_boost() timing and statistics (Waiman Long) [2065993] - rcutorture: Delay-based false positives for RCU priority boosting tests (Waiman Long) [2065993] - rcu: Restrict RCU_STRICT_GRACE_PERIOD to at most four CPUs (Waiman Long) [2065993] - rcu: Make show_rcu_gp_kthreads() dump rcu_node structures blocking GP (Waiman Long) [2065993] - rcu: Add quiescent states and boost states to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - rcu: Make RCU priority boosting work on single-CPU rcu_node structures (Waiman Long) [2065993] - rcu: Reject RCU_LOCKDEP_WARN() false positives (Waiman Long) [2065993] - lockdep: Explicitly flag likely false-positive report (Waiman Long) [2065993] - rcu: Add ->gp_max to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - rcu: Add ->rt_priority and ->gp_start to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - srcu: Remove superfluous sdp->srcu_lock_count zero filling (Waiman Long) [2065993] - srcu: Remove superfluous ssp initialization for early callbacks (Waiman Long) [2065993] - torture: Set kvm.sh language to English (Waiman Long) [2065993] - torture: Correctly fetch number of CPUs for non-English languages (Waiman Long) [2065993] - rcu: Invoke rcu_spawn_core_kthreads() from rcu_spawn_gp_kthread() (Waiman Long) [2065993] - rcutorture: Judge RCU priority boosting on grace periods, not callbacks (Waiman Long) [2065993] - sched,rcutorture: Convert to sched_set_fifo_low() (Waiman Long) [2065993] - rcu: Improve tree.c comments and add code cleanups (Waiman Long) [2065993] - rcu: Abstract out rcu_irq_enter_check_tick() from rcu_nmi_enter() (Waiman Long) [2065993] - rcu: Remove the unused rcu_irq_exit_preempt() function (Waiman Long) [2065993] - torture: Make kvm-find-errors.sh account for kvm-remote.sh (Waiman Long) [2065993] - torture: Make the build machine control N in "make -jN" (Waiman Long) [2065993] - torture: Make kvm.sh use abstracted kvm-end-run-stats.sh (Waiman Long) [2065993] - torture: Abstract end-of-run summary (Waiman Long) [2065993] - rcu: Fix typo in comment: kthead -> kthread (Waiman Long) [2065993] - rcutorture: Abstract read-lock-held checks (Waiman Long) [2065993] - refscale: Add acqrel, lock, and lock-irq (Waiman Long) [2065993] - torture: Add kvm-remote.sh script for distributed rcutorture test runs (Waiman Long) [2065993] - refscale: Allow CPU hotplug to be enabled (Waiman Long) [2065993] - torture: Make kvm-again.sh use "scenarios" rather than "batches" file (Waiman Long) [2065993] - torture: Add "scenarios" option to kvm.sh --dryrun parameter (Waiman Long) [2065993] - rcu-tasks: Add block comment laying out RCU Rude design (Waiman Long) [2065993] - torture: Fix remaining erroneous torture.sh instance of $* (Waiman Long) [2065993] - rcu/tree: Add a trace event for RCU CPU stall warnings (Waiman Long) [2065993] - torture: Fix kvm.sh --datestamp regex check (Waiman Long) [2065993] - rcu: Add explicit barrier() to __rcu_read_unlock() (Waiman Long) [2065993] - rcu-tasks: Add block comment laying out RCU Tasks Trace design (Waiman Long) [2065993] - rcu: Make nocb_nobypass_lim_per_jiffy static (Waiman Long) [2065993] - torture: Consolidate qemu-cmd duration editing into kvm-transform.sh (Waiman Long) [2065993] - torture: Print proper vmlinux path for kvm-again.sh runs (Waiman Long) [2065993] - torture: Make TORTURE_TRUST_MAKE available in kvm-again.sh environment (Waiman Long) [2065993] - docs: Correctly spell Stephen Hemminger's name (Waiman Long) [2065993] - rcu/nocb: Use the rcuog CPU's ->nocb_timer (Waiman Long) [2065993] - rcu/nocb: Move trace_rcu_nocb_wake() calls outside nocb_lock when possible (Waiman Long) [2065993] - rcu/nocb: Remove stale comment above rcu_segcblist_offload() (Waiman Long) [2065993] - rcu/nocb: Disable bypass when CPU isn't completely offloaded (Waiman Long) [2065993] - rcu/nocb: Fix missed nocb_timer requeue (Waiman Long) [2065993] - rcu/nocb: Trigger self-IPI on late deferred wake up before user resume (Waiman Long) [2065993] - torture: Make kvm-transform.sh update jitter commands (Waiman Long) [2065993] - torture: Add --duration argument to kvm-again.sh (Waiman Long) [2065993] - rcu: deprecate "all" option to rcu_nocbs= (Waiman Long) [2065993] - torture: Rename SRCU-t and SRCU-u to avoid lowercase characters (Waiman Long) [2065993] - torture: Add kvm-again.sh to rerun a previous torture-test (Waiman Long) [2065993] - torture: Create a "batches" file for build reuse (Waiman Long) [2065993] - torture: De-capitalize TORTURE_SUITE (Waiman Long) [2065993] - rcuscale: Add kfree_rcu() single-argument scale test (Waiman Long) [2065993] - torture: Make upper-case-only no-dot no-slash scenario names official (Waiman Long) [2065993] - torture: Remove no-mpstat error message (Waiman Long) [2065993] - torture: Record kvm-test-1-run.sh and kvm-test-1-run-qemu.sh PIDs (Waiman Long) [2065993] - torture: Record jitter start/stop commands (Waiman Long) [2065993] - softirq: Don't try waking ksoftirqd before it has been spawned (Waiman Long) [2065993] - torture: Extract kvm-test-1-run-qemu.sh from kvm-test-1-run.sh (Waiman Long) [2065993] - torture: Record TORTURE_KCONFIG_GDB_ARG in qemu-cmd (Waiman Long) [2065993] - torture: Abstract jitter.sh start/stop into scripts (Waiman Long) [2065993] - torture: Reverse jittering and duration parameters for jitter.sh (Waiman Long) [2065993] - torture: Eliminate jitter_pids file (Waiman Long) [2065993] - torture: Use "jittering" file to control jitter.sh execution (Waiman Long) [2065993] - torture: Use file-based protocol to mark batch's runs complete (Waiman Long) [2065993] - torture: Move build/run synchronization files into scenario directories (Waiman Long) [2065993] - torture: Make jitter.sh handle large systems (Waiman Long) [2065993] - torture: Improve readability of the testid.txt file (Waiman Long) [2065993] - torture: Provide bare-metal modprobe-based advice (Waiman Long) [2065993] - kvfree_rcu: Use same set of GFP flags as does single-argument (Waiman Long) [2065993] - kvfree_rcu: Replace __GFP_RETRY_MAYFAIL by __GFP_NORETRY (Waiman Long) [2065993] - torture: Allow 1G of memory for torture.sh kvfree testing (Waiman Long) [2065993] - torture: Do Kconfig analysis only once per scenario (Waiman Long) [2065993] - torture: Compress KASAN vmlinux files (Waiman Long) [2065993] - torture: Add --kcsan-kmake-arg to torture.sh for KCSAN (Waiman Long) [2065993] - torture: Add command and results directory to torture.sh log (Waiman Long) [2065993] - torture: Allow scenarios to be specified to torture.sh (Waiman Long) [2065993] - torture: Drop log.long generation from torture.sh (Waiman Long) [2065993] - torture: Make torture.sh refuse to do zero-length runs (Waiman Long) [2065993] - torture: Make torture.sh throttle VERBOSE_TOROUT_*() for refscale (Waiman Long) [2065993] - torture: Make torture.sh allmodconfig retain and label output (Waiman Long) [2065993] - torture: Create doyesno helper function for torture.sh (Waiman Long) [2065993] - torture: Make torture.sh refscale runs use verbose_batched module parameter (Waiman Long) [2065993] - torture: Make torture.sh rcuscale and refscale deal with allmodconfig (Waiman Long) [2065993] - torture: Enable torture.sh argument checking (Waiman Long) [2065993] - torture: Auto-size SCF and scaling runs based on number of CPUs (Waiman Long) [2065993] - torture: Add "make allmodconfig" to torture.sh (Waiman Long) [2065993] - torture: Remove use of "eval" in torture.sh (Waiman Long) [2065993] - torture: Make torture.sh use common time-duration bash functions (Waiman Long) [2065993] - torture: Add torture.sh torture-everything script (Waiman Long) [2065993] - refscale: Disable verbose torture-test output (Waiman Long) [2065993] - rcuscale: Disable verbose torture-test output (Waiman Long) [2065993] - rcu/nocb: Rename nocb_gp_update_state to nocb_gp_update_state_deoffloading (Waiman Long) [2065993] - rcu/nocb: Avoid confusing double write of rdp->nocb_cb_sleep (Waiman Long) [2065993] - rcu/nocb: Only (re-)initialize segcblist when needed on CPU up (Waiman Long) [2065993] - rcu/nocb: Forbid NOCB toggling on offline CPUs (Waiman Long) [2065993] - rcu/nocb: Comment the reason behind BH disablement on batch processing (Waiman Long) [2065993] - rcu: Make rcu_read_unlock_special() expedite strict grace periods (Waiman Long) [2065993] - rcu-tasks: Rectify kernel-doc for struct rcu_tasks (Waiman Long) [2065993] - rcutorture: Replace rcu_torture_stall string with s (Waiman Long) [2065993] - torture: Replace torture_init_begin string with s (Waiman Long) [2065993] - rcutorture: Use "all" and "N" in "nohz_full" and "rcu_nocbs" (Waiman Long) [2065993] - kvfree_rcu: Make krc_this_cpu_unlock() use raw_spin_unlock_irqrestore() (Waiman Long) [2065993] - kvfree_rcu: Use __GFP_NOMEMALLOC for single-argument kvfree_rcu() (Waiman Long) [2065993] - kvfree_rcu: Directly allocate page for single-argument case (Waiman Long) [2065993] - rcutorture: Fix testing of RCU priority boosting (Waiman Long) [2065993] - rculist: Replace reference to atomic_ops.rst (Waiman Long) [2065993] - rcutorture: Make TREE03 use real-time tree.use_softirq setting (Waiman Long) [2065993] - rcu: Expedite deboost in case of deferred quiescent state (Waiman Long) [2065993] - rcu: Fix CPU-offline trace in rcutree_dying_cpu (Waiman Long) [2065993] - rcu: Remove superfluous rdp fetch (Waiman Long) [2065993] - torturescript: Don't rerun failed rcutorture builds (Waiman Long) [2065993] - rcutorture: Add crude tests for mem_dump_obj() (Waiman Long) [2065993] - mm: Don't build mm_dump_obj() on CONFIG_PRINTK=n kernels (Waiman Long) [2065993] - rcu/nocb: Detect unsafe checks for offloaded rdp (Waiman Long) [2065993] - sched/pelt: Fix attach_entity_load_avg() corner case (Phil Auld) [2056383] - devlink: Clarifies max_macs generic devlink param (Petr Oros) [2076586] - devlink: Add new "event_eq_size" generic device param (Petr Oros) [2076586] - devlink: Add new "io_eq_size" generic device param (Petr Oros) [2076586] - devlink: fix netns refcount leak in devlink_nl_cmd_reload() (Petr Oros) [2076586] - devlink: Simplify devlink resources unregister call (Petr Oros) [2076586] - devlink: Remove misleading internal_flags from health reporter dump (Petr Oros) [2076586] - devlink: Don't throw an error if flash notification sent before devlink visible (Petr Oros) [2076586] - devlink: fix flexible_array.cocci warning (Petr Oros) [2076586] - devlink: expose get/put functions (Petr Oros) [2076586] - devlink: make all symbols GPL-only (Petr Oros) [2076586] - devlink: Simplify internal devlink params implementation (Petr Oros) [2076586] - devlink: Clean not-executed param notifications (Petr Oros) [2076586] - devlink: Delete obsolete parameters publish API (Petr Oros) [2076586] - devlink: Remove extra device_lock assert checks (Petr Oros) [2076586] - devlink: Delete reload enable/disable interface (Petr Oros) [2076586] - devlink: Allow control devlink ops behavior through feature mask (Petr Oros) [2076586] - devlink: Annotate devlink API calls (Petr Oros) [2076586] - devlink: Move netdev_to_devlink helpers to devlink.c (Petr Oros) [2076586] - devlink: Reduce struct devlink exposure (Petr Oros) [2076586] - devlink: report maximum number of snapshots with regions (Petr Oros) [2076586] - devlink: Add missed notifications iterators (Petr Oros) [2076586] - netdevsim: Move devlink registration to be last devlink command (Petr Oros) [2076586] - qed: Move devlink registration to be last devlink command (Petr Oros) [2076586] - ionic: Move devlink registration to be last devlink command (Petr Oros) [2076586] - nfp: Move delink_register to be last command (Petr Oros) [2076586] - mlxsw: core: Register devlink instance last (Petr Oros) [2076586] - net/mlx5: Accept devlink user input after driver initialization complete (Petr Oros) [2076586] - net/mlx4: Move devlink_register to be the last initialization command (Petr Oros) [2076586] - ice: Open devlink when device is ready (Petr Oros) [2076586] - liquidio: Overcome missing device lock protection in init/remove flows (Petr Oros) [2076586] - bnxt_en: Register devlink instance at the end devlink configuration (Petr Oros) [2076586] - devlink: Notify users when objects are accessible (Petr Oros) [2076586] - devlink: Remove single line function obfuscations (Petr Oros) [2076586] - devlink: Delete not used port parameters APIs (Petr Oros) [2076586] - bnxt_en: Properly remove port parameter support (Petr Oros) [2076586] - bnxt_en: Check devlink allocation and registration status (Petr Oros) [2076586] - devlink: Make devlink_register to be void (Petr Oros) [2076586] - devlink: Delete not-used devlink APIs (Petr Oros) [2076586] - devlink: Delete not-used single parameter notification APIs (Petr Oros) [2076586] - devlink: Use xarray to store devlink instances (Petr Oros) [2076586] - devlink: Count struct devlink consumers (Petr Oros) [2076586] - devlink: Remove check of always valid devlink pointer (Petr Oros) [2076586] - devlink: Simplify devlink_pernet_pre_exit call (Petr Oros) [2076586] - devlink: Add APIs to publish, unpublish individual parameter (Petr Oros) [2076586] - devlink: Add API to register and unregister single parameter (Petr Oros) [2076586] - devlink: Create a helper function for one parameter registration (Petr Oros) [2076586] - devlink: Fix port_type_set function pointer check (Petr Oros) [2076586] - devlink: Set device as early as possible (Petr Oros) [2076586] - devlink: Simplify devlink port API calls (Petr Oros) [2076586] - devlink: Allocate devlink directly in requested net namespace (Petr Oros) [2076586] - devlink: Break parameter notification sequence to be before/after unload/load driver (Petr Oros) [2076586] - devlink: Remove duplicated registration check (Petr Oros) [2076586] - net/mlx5: Don't rely on always true registered field (Petr Oros) [2076586] - devlink: Unlock on error in dumpit() (Petr Oros) [2076586] - devlink: Fix some error codes (Petr Oros) [2076586] - net: devlink: Add support for port regions (Petr Oros) [2076586] - netdevsim: Forbid devlink reload when adding or deleting ports (Petr Oros) [2076586] - netdevsim: dev: Initialize FIB module after debugfs (Petr Oros) [2076586] - pidfd: fix a poll race when setting exit_state (Oleg Nesterov) [2044587] - fork: fix pidfd_poll()'s return type (Oleg Nesterov) [2044587] - pidfd: add polling support (Oleg Nesterov) [2044587] - kabi: introduce the kabi_aux_*() helpers (Oleg Nesterov) [2044587] - tg3: Remove redundant assignments (Ken Cox) [2043792] - ethernet: Remove redundant statement (Ken Cox) [2043792] - ethernet: tg3: remove direct netdev->dev_addr writes (Ken Cox) [2043792] - net: tg3: fix redundant check of true expression (Ken Cox) [2043792] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2043792] - net: ethernet: Use existing define with polynomial (Ken Cox) [2043792]- scsi: mpt3sas: Fix mpt3sas_check_same_4gb_region() kdoc comment (Tomas Henzl) [2068045] - scsi: mpt3sas: Fix incorrect 4GB boundary check (Tomas Henzl) [2068045] - genirq/affinity: Consider that CPUs on nodes can be unbalanced (Ming Lei) [2074317] - scsi: target: pscsi: Set SCF_TREAT_READ_AS_NORMAL flag only if there is valid data (Maurizio Lombardi) [2074246] - audit: don't deref the syscall args when checking the openat2 open_how::flags (Carlos Maiolino) [2026590] - audit: add OPENAT2 record to list "how" info (Carlos Maiolino) [2026590] - audit: add support for the openat2 syscall (Carlos Maiolino) [2026590] - audit: replace magic audit syscall class numbers with macros (Carlos Maiolino) [2026590] - tools include UAPI: Sync x86's syscalls_64.tbl, generic unistd.h and fcntl.h to pick up openat2 and pidfd_getfd (Carlos Maiolino) [2026590] - open: don't silently ignore unknown O-flags in openat2() (Carlos Maiolino) [2026590] - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT (Carlos Maiolino) [2026590] - open: introduce openat2(2) syscall (Carlos Maiolino) [2026590] - namei: LOOKUP_{IN_ROOT,BENEATH}: permit limited ".." resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_IN_ROOT: chroot-like scoped resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_BENEATH: O_BENEATH-like scoped resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_XDEV: block mountpoint crossing (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_MAGICLINKS: block magic-link resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_SYMLINKS: block symlink resolution (Carlos Maiolino) [2026590] - namei: allow set_root() to produce errors (Carlos Maiolino) [2026590] - namei: allow nd_jump_link() to produce errors (Carlos Maiolino) [2026590] - nsfs: clean-up ns_get_path() signature to return int (Carlos Maiolino) [2026590] - namei: only return -ECHILD from follow_dotdot_rcu() (Carlos Maiolino) [2026590] - make path_init() unconditionally paired with terminate_walk() (Carlos Maiolino) [2026590] - nsfs: unobfuscate (Carlos Maiolino) [2026590] - ASoC: Intel: soc-acpi: add entries in ADL match table (Jaroslav Kysela) [2052011] - nvme-fc: add support for ->map_queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix typos in comments (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.400-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Increase max limit of ql2xnvme_queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Use correct feature type field during RFF_ID processing (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix stuck session of PRLI reject (Nilesh Javali) [2044833] - scsi: qla2xxx: Reduce false trigger to login (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix laggy FC remote port session recovery (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix hang due to session stuck (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix N2N inconsistent PLOGI (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix crash during module load unload test (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix missed DMA unmap for NVMe ls requests (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix loss of NVMe namespaces after driver reload test (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix incorrect reporting of task management failure (Nilesh Javali) [2044833] - scsi: qla2xxx: Use named initializers for q_dev_state (Nilesh Javali) [2044833] - scsi: qla2xxx: Use named initializers for port_[d]state_str (Nilesh Javali) [2044833] - scsi: qla2xxx: Stop using the SCSI pointer (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove unused qla_sess_op_cmd_list from scsi_qla_host_t (Nilesh Javali) [2044833] - scsi: qla2xxx: Add qla2x00_async_done() for async routines (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.300-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Check for firmware dump already collected (Nilesh Javali) [2044833] - scsi: qla2xxx: Add devids and conditionals for 28xx (Nilesh Javali) [2044833] - scsi: qla2xxx: Suppress a kernel complaint in qla_create_qpair() (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix T10 PI tag escape and IP guard options for 28XX adapters (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix clang warning (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix warning for missing error code (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix device reconnect in loop topology (Nilesh Javali) [2044833] - scsi: qla2xxx: Add ql2xnvme_queues module param to configure number of NVMe queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix wrong FDMI data for 64G adapter (Nilesh Javali) [2044833] - scsi: qla2xxx: Add retry for exec firmware (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix scheduling while atomic (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix premature hw access after PCI error (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix warning message due to adisc being flushed (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix stuck session in gpdb (Nilesh Javali) [2044833] - scsi: qla2xxx: Implement ref count for SRB (Nilesh Javali) [2044833] - scsi: qla2xxx: Refactor asynchronous command initialization (Nilesh Javali) [2044833] - scsi: qla2xxx: Synchronize rport dev_loss_tmo setting (Nilesh Javali) [2044833] - scsi: qla2xxx: Format log strings only if needed (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix off by one bug in qla_edif_app_getfcinfo() (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix mailbox direction flags in qla2xxx_get_adapter_id() (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.200-k (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix EDIF bsg (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix inconsistent check of db_flags (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Increase ELS payload (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Reduce connection thrash (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Tweak trace message (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Replace list_for_each_safe with list_for_each_entry_safe (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Flush stale events and msgs on session down (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix app start delay (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix app start fail (Nilesh Javali) [2044833] - scsi: qla2xxx: Turn off target reset during issue_lip (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix gnl list corruption (Nilesh Javali) [2044833] - scsi: qla2xxx: Relogin during fabric disturbance (Nilesh Javali) [2044833] - qla2xxx: add ->map_queues support for nvme (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix unmap of already freed sgl (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix a memory leak in an error path of qla2x00_process_els() (Nilesh Javali) [2044833] - scsi: qla2xxx: Return -ENOMEM if kzalloc() fails (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove a declaration (Nilesh Javali) [2044833] - scsi: target: qla2xxx: Replace enable attr with ops.enable (Nilesh Javali) [2044833] - scsi: qla2xxx: Restore initiator in dual mode (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove redundant initialization of pointer req (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.100-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix use after free in eh_abort path (Nilesh Javali) [2044833] - scsi: qla2xxx: Move heartbeat handling from DPC thread to workqueue (Nilesh Javali) [2044833] - scsi: qla2xxx: Call process_response_queue() in Tx path (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Use link event to wake up app (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix crash in NVMe abort path (Nilesh Javali) [2044833] - scsi: qla2xxx: Check for firmware capability before creating QPair (Nilesh Javali) [2044833] - scsi: qla2xxx: Display 16G only as supported speeds for 3830c card (Nilesh Javali) [2044833] - scsi: qla2xxx: Indicate correct supported speeds for Mezz card (Nilesh Javali) [2044833] - scsi: qla2xxx: Add support for mailbox passthru (Nilesh Javali) [2044833] - scsi: qla2xxx: Open-code qla2xxx_eh_device_reset() (Nilesh Javali) [2044833] - scsi: qla2xxx: Open-code qla2xxx_eh_target_reset() (Nilesh Javali) [2044833] - scsi: qla2xxx: Do not call fc_block_scsi_eh() during bus reset (Nilesh Javali) [2044833] - sctp: count singleton chunks in assoc user stats (Jamie Bainbridge) [2073913] - hrtimer: Unbreak hrtimer_force_reprogram() (Fernando Pacheco) [2071776] - hrtimer: Use raw_cpu_ptr() in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Avoid more SMP function calls in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Avoid unnecessary SMP function calls in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Add bases argument to clock_was_set() (Fernando Pacheco) [2071776] - time/timekeeping: Avoid invoking clock_was_set() twice (Fernando Pacheco) [2071776] - timekeeping: Distangle resume and clock-was-set events (Fernando Pacheco) [2071776] - timerfd: Provide timerfd_resume() (Fernando Pacheco) [2071776] - hrtimer: Force clock_was_set() handling for the HIGHRES=n, NOHZ=y case (Fernando Pacheco) [2071776] - hrtimer: Ensure timerfd notification for HIGHRES=n (Fernando Pacheco) [2071776] - hrtimer: Consolidate reprogramming code (Fernando Pacheco) [2071776] - hrtimer: Avoid double reprogramming in __hrtimer_start_range_ns() (Fernando Pacheco) [2071776] - hrtimer: Update softirq_expires_next correctly after __hrtimer_get_next_event() (Fernando Pacheco) [2071776] - hrtimer: Annotate lockless access to timer->state (Fernando Pacheco) [2071776] - drm/i915/display: Remove check for low voltage sku for max dp source rate (Jocelyn Falempe) [2063931] - s390/kexec: handle R_390_PLT32DBL rela in arch_kexec_apply_relocations_add() (Philipp Rudo) [2039278] - s390/kexec_file: fix error handling when applying relocations (Philipp Rudo) [2039278] - s390/kexec_file: print some more error messages (Philipp Rudo) [2039278] - ixgbe: respect metadata on XSK Rx to skb (Ken Cox) [2037952] - ixgbe: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Ken Cox) [2037952] - ixgbe: pass bi->xdp to ixgbe_construct_skb_zc() directly (Ken Cox) [2037952] - ixgbe: Remove useless DMA-32 fallback configuration (Ken Cox) [2037952] - ixgbe: switch to napi_build_skb() (Ken Cox) [2037952] - ixgbe: set X550 MDIO speed before talking to PHY (Ken Cox) [2037952] - ixgbe: Document how to enable NBASE-T support (Ken Cox) [2037952] - xsk: Wipe out dead zero_copy_allocator declarations (Ken Cox) [2037952] - ixgbe: let the xdpdrv work with more than 64 cpus (Ken Cox) [2037952] - scsi: fcoe: Fix I/O path allocation (Ken Cox) [2037952] - ixgbe: extend PTP gettime function to read system clock (Ken Cox) [2037952] - ixgbe: Replace GFP_ATOMIC with GFP_KERNEL (Ken Cox) [2037952] - net: mpls: Fix notifications when deleting a device (Guillaume Nault) [2081757]- sched/cputime, proc/stat: Fix incorrect guest nice cpustat value (Waiman Long) [2017382] - procfs: Use all-in-one vtime aware kcpustat accessor (Waiman Long) [2017382] - procfs: Use vtime aware kcpustat accessor to fetch CPUTIME_SYSTEM (Waiman Long) [2017382] - proc: read kernel cpu stat pointer once (Waiman Long) [2017382] - proc: use "unsigned int" in /proc/stat hook (Waiman Long) [2017382] - sched/cputime: Support other fields on kcpustat_field() (Waiman Long) [2017382] - sched/cputime: Add vtime guest task state (Waiman Long) [2017382] - sched/cputime: Add vtime idle task state (Waiman Long) [2017382] - sched/cputime: Spare a seqcount lock/unlock cycle on context switch (Waiman Long) [2017382] - sched/vtime: Move task_struct_rh->vtime_cpu back to vtime structure (Waiman Long) [2017382] - usb: xhci-plat: fix crash when suspend if remote wake enable (Mark Langsdorf) [2065730] - PM: domains: Improve runtime PM performance state handling (Mark Langsdorf) [2065730] - firmware_loader: fix use-after-free in firmware_fallback_sysfs (Mark Langsdorf) [2065730] - firmware_loader: use -ETIMEDOUT instead of -EAGAIN in fw_load_sysfs_fallback (Mark Langsdorf) [2065730] - driver core: Prevent warning when removing a device link from unregistered consumer (Mark Langsdorf) [2065730] - PM: domains: Shrink locking area of the gpd_list_lock (Mark Langsdorf) [2065730] - PM: sleep: Use ktime_us_delta() in initcall_debug_report() (Mark Langsdorf) [2065730] - driver core: Export device_driver_attach() (Mark Langsdorf) [2065730] - driver core: Don't return EPROBE_DEFER to userspace during sysfs bind (Mark Langsdorf) [2065730] - driver core: Flow the return code from ->probe() through to sysfs bind (Mark Langsdorf) [2065730] - driver core: Better distinguish probe errors in really_probe (Mark Langsdorf) [2065730] - driver core: Pull required checks into driver_probe_device() (Mark Langsdorf) [2065730] - driver core: add a helper to setup both the of_node and fwnode of a device (Mark Langsdorf) [2065730] - devres: Enable trace events (Mark Langsdorf) [2065730] - devres: No need to call remove_nodes() when there none present (Mark Langsdorf) [2065730] - devres: Use list_for_each_safe_from() in remove_nodes() (Mark Langsdorf) [2065730] - devres: Make locking straight forward in release_nodes() (Mark Langsdorf) [2065730] - regmap: mdio: Reject invalid addresses (Mark Langsdorf) [2065730] - regmap: mdio: Fix regmap_bus pointer constness (Mark Langsdorf) [2065730] - PM: runtime: Allow unassigned ->runtime_suspend|resume callbacks (Mark Langsdorf) [2065730] - PM: runtime: Improve path in rpm_idle() when no callback (Mark Langsdorf) [2065730] - PM: domains: Drop/restore performance state votes for devices at runtime PM (Mark Langsdorf) [2065730] - PM: domains: Return early if perf state is already set for the device (Mark Langsdorf) [2065730] - PM: domains: Split code in dev_pm_genpd_set_performance_state() (Mark Langsdorf) [2065730] - PM: domains: fix some kernel-doc issues (Mark Langsdorf) [2065730] - regmap: mdio: Add clause-45 support (Mark Langsdorf) [2065730] - regmap: mdio: Clean up invalid clause-22 addresses (Mark Langsdorf) [2065730] - regmap-irq: Introduce inverted status registers support (Mark Langsdorf) [2065730] - ACPI: property: Constify stubs for CONFIG_ACPI=n case (Mark Langsdorf) [2065730] - device property: Unify access to of_node (Mark Langsdorf) [2065730] - drivers/base: Constify static attribute_group structs (Mark Langsdorf) [2065730] - devcoredump: remove contact information (Mark Langsdorf) [2065730] - component: Rename 'dev' to 'parent' (Mark Langsdorf) [2065730] - component: Drop 'dev' argument to component_match_realloc() (Mark Langsdorf) [2065730] - device property: Don't check for NULL twice in the loops (Mark Langsdorf) [2065730] - regmap: add support for 7/17 register formating (Mark Langsdorf) [2065730] - PM: wakeirq: Set IRQF_NO_AUTOEN when requesting the IRQ (Mark Langsdorf) [2065730] - drivers/base/node.c: make CACHE_ATTR define static DEVICE_ATTR_RO (Mark Langsdorf) [2065730] - regmap: mdio: Don't modify output if error happened (Mark Langsdorf) [2065730] - regmap: Add MDIO bus support (Mark Langsdorf) [2065730] - regmap-i2c: Set regmap max raw r/w from quirks (Mark Langsdorf) [2065730] - driver core: attribute_container: fix W=1 warnings (Mark Langsdorf) [2065730] - driver core: replace open-coded device_lock_assert() (Mark Langsdorf) [2065730] - device property: Retrieve fwnode from of_node via accessor (Mark Langsdorf) [2065730] - cpufreq: Kconfig: fix documentation links (Mark Langsdorf) [2065730] - PM: wakeup: remove redundant assignment to variable retval (Mark Langsdorf) [2065730] - PM / wakeup: use dev_set_name() directly (Mark Langsdorf) [2065730] - PM: clk: remove kernel-doc warning (Mark Langsdorf) [2065730] - PM: wakeup: fix kernel-doc warnings and fix typos (Mark Langsdorf) [2065730] - PM: runtime: remove kernel-doc warnings (Mark Langsdorf) [2065730] - software node: Introduce SOFTWARE_NODE_REFERENCE() helper macro (Mark Langsdorf) [2065730] - software node: Imply kobj_to_swnode() to be no-op (Mark Langsdorf) [2065730] - software node: Deduplicate code in fwnode_create_software_node() (Mark Langsdorf) [2065730] - software node: Introduce software_node_alloc()/software_node_free() (Mark Langsdorf) [2065730] - software node: Free resources explicitly when swnode_register() fails (Mark Langsdorf) [2065730] - driver core: add helper for deferred probe reason setting (Mark Langsdorf) [2065730] - driver core: Improve fw_devlink & deferred_probe_timeout interaction (Mark Langsdorf) [2065730] - driver core: Replace printf() specifier and drop unneeded casting (Mark Langsdorf) [2065730] - driver core: Cast to (void *) with __force for __percpu pointer (Mark Langsdorf) [2065730] - devcoredump: fix kernel-doc warning (Mark Langsdorf) [2065730] - platform-msi: fix kernel-doc warnings (Mark Langsdorf) [2065730] - driver core: attribute_container: remove kernel-doc warnings (Mark Langsdorf) [2065730] - driver core: remove kernel-doc warnings (Mark Langsdorf) [2065730] - base: dd: fix error return code of driver_sysfs_add() (Mark Langsdorf) [2065730] - driver core: Use unbound workqueue for deferred probes (Mark Langsdorf) [2065730] - devcoredump: avoid -Wempty-body warnings (Mark Langsdorf) [2065730] - device property: Add test cases for fwnode_property_count_*() APIs (Mark Langsdorf) [2065730] - device property: Sync descriptions of swnode array and group APIs (Mark Langsdorf) [2065730] - driver core: Update device link status properly for device_bind_driver() (Mark Langsdorf) [2065730] - driver core: Avoid pointless deferred probe attempts (Mark Langsdorf) [2065730] - drivers/base/cpu: remove redundant assignment of variable retval (Mark Langsdorf) [2065730] - driver core: dd: remove deferred_devices variable (Mark Langsdorf) [2065730] - driver core: component: remove dentry pointer in "struct master" (Mark Langsdorf) [2065730] - driver core: auxiliary bus: Remove unneeded module bits (Mark Langsdorf) [2065730] - PM: domains: Don't runtime resume devices at genpd_prepare() (Mark Langsdorf) [2065730] - redhat/configs: Add CONFIG_X86_AMD_PSTATE (Prarit Bhargava) - ACPI: CPPC: Drop redundant local variable from cpc_read() (Prarit Bhargava) [1961726] - ACPI: CPPC: Fix up I/O port access in cpc_read() (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Fix Kconfig dependencies for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Fix struct amd_cpudata kernel-doc comment (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add AMD P-State performance attributes (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add AMD P-State frequencies attributes (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add boost mode support for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add trace for AMD P-State module (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Introduce the support for the processors with shared memory solution (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add fast switch function for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Introduce a new AMD P-State driver to support future processors (Prarit Bhargava) [1961726] - ACPI: CPPC: Add CPPC enable register function (Prarit Bhargava) [1961726] - ACPI: CPPC: Check present CPUs for determining _CPC is valid (Prarit Bhargava) [1961726] - ACPI: CPPC: Implement support for SystemIO registers (Prarit Bhargava) [1961726] - x86/msr: Add AMD CPPC MSR definitions (Prarit Bhargava) [1961726] - x86/cpufeatures: Add AMD Collaborative Processor Performance Control feature flag (Prarit Bhargava) [1961726] - cpufreq: remove useless INIT_LIST_HEAD() (Prarit Bhargava) [1961726] - cpufreq: CPPC: Pass structure instance by reference (Prarit Bhargava) [1961726] - cpufreq: CPPC: Fix potential memleak in cppc_cpufreq_cpu_init (Prarit Bhargava) [1961726] - cpufreq: CPPC: Migrate to ->exit() callback instead of ->stop_cpu() (Prarit Bhargava) [1961726] - cpufreq: cppc: simplify default delay_us setting (Prarit Bhargava) [1961726] - cppc_cpufreq: replace per-cpu data array with a list (Prarit Bhargava) [1961726] - cppc_cpufreq: expose information on frequency domains (Prarit Bhargava) [1961726] - cppc_cpufreq: clarify support for coordination types (Prarit Bhargava) [1961726] - cppc_cpufreq: use policy->cpu as driver of frequency setting (Prarit Bhargava) [1961726] - cppc_cpufreq: simplify use of performance capabilities (Prarit Bhargava) [1961726] - cppc_cpufreq: clean up cpu, cpu_num and cpunum variable use (Prarit Bhargava) [1961726] - cppc_cpufreq: fix misspelling, code style and readability issues (Prarit Bhargava) [1961726] - cpufreq: CPPC: Reuse caps variable in few routines (Prarit Bhargava) [1961726] - cpufreq: cppc: Reorder code and remove apply_hisi_workaround variable (Prarit Bhargava) [1961726] - cpufreq: CPPC: add SW BOOST support (Prarit Bhargava) [1961726] - net/sched: act_ct: fix ref leak when switching zones (Marcelo Ricardo Leitner) [2014027] - net/sched: act_ct: Fix flow table lookup after ct clear or switching zones (Marcelo Ricardo Leitner) [2014027] - genirq: Provide new interfaces for affinity hints (Ivan Vecera) [2070044] - af_key: add __GFP_ZERO flag for compose_sadb_supported in function pfkey_register (Xin Long) [2075181] - ipv6: make ip6_rt_gc_expire an atomic_t (Hangbin Liu) [2077365] - ipv6: fix panic when forwarding a pkt with no in6 dev (Hangbin Liu) [2077365] - net: ipv6: ensure we call ipv6_mc_down() at most once (Hangbin Liu) [2077365] - ipv6/addrconf: use a boolean to choose between UNREGISTER/DOWN (Hangbin Liu) [2077365] - ipv6/addrconf: call addrconf_ifdown with consistent values (Hangbin Liu) [2077365] - ipmr,ip6mr: acquire RTNL before calling ip[6]mr_free_table() on failure path (Hangbin Liu) [2077365] - ipv6: annotate accesses to fn->fn_sernum (Hangbin Liu) [2077365] - ipv6: correct comments about fib6_node sernum (Hangbin Liu) [2077365] - ipv6: fix typos in __ip6_finish_output() (Hangbin Liu) [2077365] - oom_kill.c: futex: delay the OOM reaper to allow time for proper futex cleanup (Nico Pache) [1778048] - KVM: PPC: Fix TCE handling for VFIO (Daniel Henrique Barboza) [2062687] - udf: Restore i_lenAlloc when inode expansion fails (Carlos Maiolino) [2054653] {CVE-2022-0617} - udf: Fix NULL ptr deref when converting from inline format (Carlos Maiolino) [2054653] {CVE-2022-0617} - net/tls: fix slab-out-of-bounds bug in decrypt_internal (Sabrina Dubroca) [2080344] - tls: fix replacing proto_ops (Sabrina Dubroca) [2080344] - net/tls: use semicolons rather than commas to separate statements (Sabrina Dubroca) [2080344] - redhat: further rpminspect tuning (Jarod Wilson)- tun: annotate access to queue->trans_start (Ivan Vecera) [2069673] - net: annotate accesses to queue->trans_start (Ivan Vecera) [2069673] - ntb_hw_amd: Add NTB PCI ID for new gen CPU (Sudheesh Mavila) [2037287] - ipmi: initialize len variable (Tony Camuso) [2069839] - ipmi: kcs: aspeed: Remove old bindings support (Tony Camuso) [2069839] - ipmi:ipmb: Add the ability to have a separate slave and master device (Tony Camuso) [2069839] - ipmi:ipmi_ipmb: Unregister the SMI on remove (Tony Camuso) [2069839] - ipmi: kcs: aspeed: Add AST2600 compatible string (Tony Camuso) [2069839] - ipmi: ssif: replace strlcpy with strscpy (Tony Camuso) [2069839] - ipmi/watchdog: Constify ident (Tony Camuso) [2069839] - ipmi: Fix UAF when uninstall ipmi_si and ipmi_msghandler module (Tony Camuso) [2069839] - ipmi: fix initialization when workqueue allocation fails (Tony Camuso) [2069839] - ipmi: bail out if init_srcu_struct fails (Tony Camuso) [2069839] - ipmi: ssif: initialize ssif_info->client early (Tony Camuso) [2069839] - ipmi: msghandler: Make symbol 'remove_work_wq' static (Tony Camuso) [2069839] - ipmi: Move remove_work to dedicated workqueue (Tony Camuso) [2069839] - ipmi: kcs_bmc: Fix a memory leak in the error handling path of 'kcs_bmc_serio_add_device()' (Tony Camuso) [2069839] - char: ipmi: replace snprintf in show functions with sysfs_emit (Tony Camuso) [2069839] - ipmi: ipmb: fix dependencies to eliminate build error (Tony Camuso) [2069839] - ipmi:ipmb: Add OF support (Tony Camuso) [2069839] - ipmi: bt: Add ast2600 compatible string (Tony Camuso) [2069839] - ipmi: bt-bmc: Use registers directly (Tony Camuso) [2069839] - ipmi: ipmb: Fix off-by-one size check on rcvlen (Tony Camuso) [2069839] - ipmi:ssif: Use depends on, not select, for I2C (Tony Camuso) [2069839] - ipmi:ipmb: Add initial support for IPMI over IPMB (Tony Camuso) [2069839] - ipmi: Export ipmb_checksum() (Tony Camuso) [2069839] - ipmi: Check error code before processing BMC response (Tony Camuso) [2069839] - ipmi:devintf: Return a proper error when recv buffer too small (Tony Camuso) [2069839] - ipmi: Disable some operations during a panic (Tony Camuso) [2069839] - ipmi:watchdog: Set panic count to proper value on a panic (Tony Camuso) [2069839] - char: ipmi: use DEVICE_ATTR helper macro (Tony Camuso) [2069839] - ipmi: rate limit ipmi smi_event failure message (Tony Camuso) [2069839] - cifs: fix NULL ptr dereference in smb2_ioctl_query_info() (Ronnie Sahlberg) [2074316] - cifs: prevent bad output lengths in smb2_ioctl_query_info() (Ronnie Sahlberg) [2074316] - net: tcp better handling of reordering then loss cases (Marcelo Ricardo Leitner) [2074566] - tcp: tcp_mark_head_lost is only valid for sack-tcp (Marcelo Ricardo Leitner) [2074566] - udp6: allow SO_MARK ctrl msg to affect routing (Xin Long) [2066598] - ip: Fix SO_MARK in RST, ACK and ICMP packets (Xin Long) [2066598] - ip: support SO_MARK cmsg (Xin Long) [2066598] - ip: unconditionally set cork gso_size (Xin Long) [2066598] - ip: remove tx_flags from ipcm_cookie and use same logic for v4 and v6 (Xin Long) [2066598] - ipv6: fold sockcm_cookie into ipcm6_cookie (Xin Long) [2066598] - sock: sockc cookie initializer (Xin Long) [2066598] - ipv6: ipcm6_cookie initializer (Xin Long) [2066598] - ipv4: ipcm_cookie initializers (Xin Long) [2066598] - s390/kexec: fix memory leak of ipl report buffer (Lichen Liu) [2001758] - s390/kexec: fix return code handling (Lichen Liu) [2001758] - block: don't try to throttle split bio if iops limit isn't set (Ming Lei) [2027241] - block: throttle split bio in case of iops limit (Ming Lei) [2027241] - block: don't check bio in blk_throtl_dispatch_work_fn (Ming Lei) [2027241] - x86/apic/vector: Fix ordering in vector assignment (Frank Ramsay) [2076607] - mt76: mt7921e: fix possible probe failure after reboot (Íñigo Huguet) [2078877] - veth: Ensure eth header is in skb's linear part (Guillaume Nault) [1966887] - net: annotate accesses to dev->gso_max_segs (Ivan Vecera) [2080317] - net: annotate accesses to dev->gso_max_size (Ivan Vecera) [2080317] - NFS: Don't loop forever in nfs_do_recoalesce() (Scott Mayhew) [2080467] - tipc: fix the timer expires after interval 100ms (Xin Long) [2080369] - tipc: Fix end of loop tests for list_for_each_entry() (Xin Long) [2080369] - tipc: fix a bit overflow in tipc_crypto_key_rcv() (Xin Long) [2080369] - tipc: rate limit warning for received illegal binding update (Xin Long) [2080369] - net: tipc: remove unused static inlines (Xin Long) [2080369] - tipc: fix unique bearer names sanity check (Xin Long) [2080369] - net/tipc: fix missing destroy_workqueue() on error in tipc_crypto_start() (Xin Long) [2080369] - tipc: add extack messages for bearer/media failure (Xin Long) [2080369] - scsi: smartpqi: Fix unused variable pqi_pm_ops for clang (Don Brace) [2012227] - scsi: smartpqi: Update version to 2.1.14-035 (Don Brace) [2012227] - scsi: smartpqi: Fix lsscsi -t SAS addresses (Don Brace) [2012227] - scsi: smartpqi: Fix hibernate and suspend (Don Brace) [2012227] - scsi: smartpqi: Fix BUILD_BUG_ON() statements (Don Brace) [2012227] - scsi: smartpqi: Fix NUMA node not updated during init (Don Brace) [2012227] - scsi: smartpqi: Expose SAS address for SATA drives (Don Brace) [2012227] - scsi: smartpqi: Speed up RAID 10 sequential reads (Don Brace) [2012227] - scsi: smartpqi: Fix kdump issue when controller is locked up (Don Brace) [2012227] - scsi: smartpqi: Update volume size after expansion (Don Brace) [2012227] - scsi: smartpqi: Avoid drive spin-down during suspend (Don Brace) [2012227] - scsi: smartpqi: Resolve delay issue with PQI_HZ value (Don Brace) [2012227] - scsi: smartpqi: Fix a typo in func pqi_aio_submit_io() (Don Brace) [2012227] - scsi: smartpqi: Fix a name typo and cleanup code (Don Brace) [2012227] - scsi: smartpqi: Quickly propagate path failures to SCSI midlayer (Don Brace) [2012227] - scsi: smartpqi: Eliminate drive spin down on warm boot (Don Brace) [2012227] - scsi: smartpqi: Enable SATA NCQ priority in sysfs (Don Brace) [2012227] - scsi: smartpqi: Add PCI IDs (Don Brace) [2012227] - scsi: smartpqi: Fix rmmod stack trace (Don Brace) [2012227] - ibmvnic: fix race between xmit and reset (Diego Domingos) [2051354] - ibmvnic: Allow queueing resets during probe (Diego Domingos) [2051354] - ibmvnic: clear fop when retrying probe (Diego Domingos) [2051354] - ibmvnic: init init_done_rc earlier (Diego Domingos) [2051354] - ibmvnic: register netdev after init of adapter (Diego Domingos) [2051354] - ibmvnic: complete init_done on transport events (Diego Domingos) [2051354] - ibmvnic: define flush_reset_queue helper (Diego Domingos) [2051354] - ibmvnic: initialize rc before completing wait (Diego Domingos) [2051354] - ibmvnic: free reset-work-item when flushing (Diego Domingos) [2051354] - ibmvnic: schedule failover only if vioctl fails (Diego Domingos) [2051354] - net/ibmvnic: Cleanup workaround doing an EOI after partition migration (Diego Domingos) [2051354]- xfs: don't expose misaligned extszinherit hints to userspace (Brian Foster) [2072552] - xfs: correct the narrative around misaligned rtinherit/extszinherit dirs (Brian Foster) [2072552] - xfs: fix endianness issue in xfs_ag_shrink_space (Brian Foster) [2072552] - xfs: bunmapi has unnecessary AG lock ordering issues (Brian Foster) [2072552] - xfs: btree format inode forks can have zero extents (Brian Foster) [2072552] - xfs: validate extsz hints against rt extent size when rtinherit is set (Brian Foster) [2072552] - xfs: standardize extent size hint validation (Brian Foster) [2072552] - xfs: check free AG space when making per-AG reservations (Brian Foster) [2072552] - xfs: retry allocations when locality-based search fails (Brian Foster) [2072552] - xfs: adjust rt allocation minlen when extszhint > rtextsize (Brian Foster) [2072552] - iomap: remove unused private field from ioend (Brian Foster) [2072552] - xfs: don't allow log writes if the data device is readonly (Brian Foster) [2072552] - xfs: count free space btree blocks when scrubbing pre-lazysbcount fses (Brian Foster) [2072552] - xfs: update superblock counters correctly for !lazysbcount (Brian Foster) [2072552] - xfs: don't check agf_btreeblks on pre-lazysbcount filesystems (Brian Foster) [2072552] - xfs: rename struct xfs_legacy_ictimestamp (Brian Foster) [2072552] - xfs: rename xfs_ictimestamp_t (Brian Foster) [2072552] - xfs: remove xfs_quiesce_attr declaration (Brian Foster) [2072552] - xfs: remove XFS_IFEXTENTS (Brian Foster) [2072552] - xfs: remove XFS_IFINLINE (Brian Foster) [2072552] - xfs: remove XFS_IFBROOT (Brian Foster) [2072552] - xfs: only look at the fork format in xfs_idestroy_fork (Brian Foster) [2072552] - xfs: simplify xfs_attr_remove_args (Brian Foster) [2072552] - xfs: rename and simplify xfs_bmap_one_block (Brian Foster) [2072552] - xfs: move the XFS_IFEXTENTS check into xfs_iread_extents (Brian Foster) [2072552] - xfs: get rid of the ip parameter to xchk_setup_* (Brian Foster) [2072552] - xfs: move the check for post-EOF mappings into xfs_can_free_eofblocks (Brian Foster) [2072552] - xfs: move the xfs_can_free_eofblocks call under the IOLOCK (Brian Foster) [2072552] - xfs: precalculate default inode attribute offset (Brian Foster) [2072552] - xfs: default attr fork size does not handle device inodes (Brian Foster) [2072552] - xfs: inode fork allocation depends on XFS_IFEXTENT flag (Brian Foster) [2072552] - xfs: eager inode attr fork init needs attr feature awareness (Brian Foster) [2072552] - xfs: scrub: Disable check for unoptimized data fork bmbt node (Brian Foster) [2072552] - xfs: Use struct xfs_bmdr_block instead of struct xfs_btree_block to calculate root node size (Brian Foster) [2072552] - xfs: merge _xfs_dic2xflags into xfs_ip2xflags (Brian Foster) [2072552] - xfs: move the di_crtime field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_flags2 field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_flags field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_forkoff field to struct xfs_inode (Brian Foster) [2072552] - xfs: use a union for i_cowextsize and i_flushiter (Brian Foster) [2072552] - xfs: use XFS_B_TO_FSB in xfs_ioctl_setattr (Brian Foster) [2072552] - xfs: cleanup xfs_fill_fsxattr (Brian Foster) [2072552] - xfs: move the di_flushiter field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_cowextsize field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_extsize field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_nblocks field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_size field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_projid field to struct xfs_inode (Brian Foster) [2072552] - xfs: don't clear the "dinode core" in xfs_inode_alloc (Brian Foster) [2072552] - xfs: remove the di_dmevmask and di_dmstate fields from struct xfs_icdinode (Brian Foster) [2072552] - xfs: remove the unused xfs_icdinode_has_bigtime helper (Brian Foster) [2072552] - xfs: handle crtime more carefully in xfs_bulkstat_one_int (Brian Foster) [2072552] - xfs: consistently initialize di_flags2 (Brian Foster) [2072552] - xfs: split xfs_imap_to_bp (Brian Foster) [2072552] - xfs: scrub: Remove incorrect check executed on block format directories (Brian Foster) [2072552] - xfs: add error injection for per-AG resv failure (Brian Foster) [2072552] - xfs: support shrinking unused space in the last AG (Brian Foster) [2072552] - xfs: introduce xfs_ag_shrink_space() (Brian Foster) [2072552] - xfs: hoist out xfs_resizefs_init_new_ags() (Brian Foster) [2072552] - xfs: update lazy sb counters immediately for resizefs (Brian Foster) [2072552] - xfs: __percpu_counter_compare() inode count debug too expensive (Brian Foster) [2072552] - xfs: reduce debug overhead of dir leaf/node checks (Brian Foster) [2072552] - xfs: No need for inode number error injection in __xfs_dir3_data_check (Brian Foster) [2072552] - xfs: type verification is expensive (Brian Foster) [2072552] - xfs: optimise xfs_buf_item_size/format for contiguous regions (Brian Foster) [2072552] - xfs: xfs_buf_item_size_segment() needs to pass segment offset (Brian Foster) [2072552] - xfs: reduce buffer log item shadow allocations (Brian Foster) [2072552] - xfs: initialise attr fork on inode create (Brian Foster) [2072552] - xfs: ensure xfs_errortag_random_default matches XFS_ERRTAG_MAX (Brian Foster) [2072552] - xfs: rename variable mp to parsing_mp (Brian Foster) [2072552] - xfs: rename the blockgc workqueue (Brian Foster) [2072552] - xfs: validate ag btree levels using the precomputed values (Brian Foster) [2072552] - xfs: remove return value from xchk_ag_btcur_init (Brian Foster) [2072552] - xfs: set the scrub AG number in xchk_ag_read_headers (Brian Foster) [2072552] - xfs: bail out of scrub immediately if scan incomplete (Brian Foster) [2072552] - xfs: drop freeze protection when running GETFSMAP (Brian Foster) [2072552] - selftest/powerpc: Add PAPR sysfs attributes sniff test (Steve Best) [1986183] - powerpc/pseries: Interface to represent PAPR firmware attributes (Steve Best) [1986183] - net: mana: Remove unnecessary check of cqe_type in mana_process_rx_cqe() (Mohammed Gamal) [2051719] - net: mana: Add handling of CQE_RX_TRUNCATED (Mohammed Gamal) [2051719] - RDMA/rxe: Revert changes from irqsave to bh locks (Kamal Heib) [2056499] - RDMA/rxe: Check the last packet by RXE_END_MASK (Kamal Heib) [2056499] - RDMA/rxe: Remove qp->grp_lock and qp->grp_list (Kamal Heib) [2056499] - RDMA/rxe: Remove rxe_drop_all_macst_groups (Kamal Heib) [2056499] - RDMA/rxe: Enforce IBA o10-2.2.3 (Kamal Heib) [2056499] - RDMA/rxe: Rename rxe_mc_grp and rxe_mc_elem (Kamal Heib) [2056499] - RDMA/rxe: Move rxe_mcast_attach/detach to rxe_mcast.c (Kamal Heib) [2056499] - RDMA/rxe: Move rxe_mcast_add/delete to rxe_mcast.c (Kamal Heib) [2056499] - RDMA/cma: Do not change route.addr.src_addr outside state checks (Kamal Heib) [2056499] - RDMA/ib_srp: Fix a deadlock (Kamal Heib) [2056499] - RDMA/siw: Fix broken RDMA Read Fence/Resume logic. (Kamal Heib) [2056499] - IB/cm: Release previously acquired reference counter in the cm_id_priv (Kamal Heib) [2056499] - RDMA/siw: Fix refcounting leak in siw_create_qp() (Kamal Heib) [2056499] - RDMA/ucma: Protect mc during concurrent multicast leaves (Kamal Heib) [2056499] - RDMA/cma: Use correct address when leaving multicast group (Kamal Heib) [2056499] - IB/hfi1: Fix tstats alloc and dealloc (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix AIP early init panic (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix alloc failure with larger txqueuelen (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix panic with larger ipoib send_queue_size (Kamal Heib) [2056499 2049845] - all: replace find_next{,_zero}_bit with find_first{,_zero}_bit where appropriate (Kamal Heib) [2056499] - RDMA/irdma: Remove the redundant return (Kamal Heib) [2056499 2037972] - RDMA/rxe: Use the standard method to produce udp source port (Kamal Heib) [2056499] - RDMA/irdma: Make the source udp port vary (Kamal Heib) [2056499 2037972] - RDMA/core: Calculate UDP source port based on flow label or lqpn/rqpn (Kamal Heib) [2056499] - IB/iser: Align coding style across driver (Kamal Heib) [2056499] - IB/iser: Remove un-needed casting to/from void pointer (Kamal Heib) [2056499] - IB/iser: Don't suppress send completions (Kamal Heib) [2056499] - IB/iser: Rename ib_ret local variable (Kamal Heib) [2056499] - IB/iser: Fix RNR errors (Kamal Heib) [2056499] - IB/iser: Remove deprecated pi_guard module param (Kamal Heib) [2056499] - IB/mlx5: Expose NDR speed through MAD (Kamal Heib) [2056499] - RDMA/rxe: Delete deprecated module parameters interface (Kamal Heib) [2056499] - RDMA/mad: Delete duplicated init_query_mad functions (Kamal Heib) [2056499] - RDMA/rxe: Fix indentations and operators sytle (Kamal Heib) [2056499] - RDMA: Use default_groups in kobj_type (Kamal Heib) [2056499] - RDMA/rxe: Fix a typo in opcode name (Kamal Heib) [2056499] - RDMA/rxe: Remove the unused xmit_errors member (Kamal Heib) [2056499] - RDMA/rxe: Remove redundant err variable (Kamal Heib) [2056499] - RDMA/irdma: Use auxiliary_device driver data helpers (Kamal Heib) [2056499 2037972] - driver core: auxiliary bus: Add driver data helpers (Kamal Heib) [2056499] - RDMA/cma: Let cma_resolve_ib_dev() continue search even after empty entry (Kamal Heib) [2056499] - RDMA/core: Let ib_find_gid() continue search even after empty entry (Kamal Heib) [2056499] - RDMA/core: Modify rdma_query_gid() to return accurate error codes (Kamal Heib) [2056499] - RDMA/rxe: Remove the unnecessary variable (Kamal Heib) [2056499] - RDMA/irdma: Fix the type used to declare a bitmap (Kamal Heib) [2056499 2037972] - RDMA/uverbs: Remove the unnecessary assignment (Kamal Heib) [2056499] - RDMA/siw: Use max() instead of doing it manually (Kamal Heib) [2056499] - RDMA/pvrdma: Use non-atomic bitmap functions when possible (Kamal Heib) [2056499] - RDMA/pvrdma: Use bitmap_zalloc() when applicable (Kamal Heib) [2056499] - IB/hfi1: Use bitmap_zalloc() when applicable (Kamal Heib) [2056499 2049845] - RDMA/siw: Use helper function to set sys_image_guid (Kamal Heib) [2056499] - RDMA/cma: Remove open coding of overflow checking for private_data_len (Kamal Heib) [2056499] - RDMA/rxe: Remove some #defines from rxe_pool.h (Kamal Heib) [2056499] - RDMA/rxe: Remove #include "rxe_loc.h" from rxe_pool.c (Kamal Heib) [2056499] - RDMA/rxe: Save object pointer in pool element (Kamal Heib) [2056499] - RDMA/rxe: Copy setup parameters into rxe_pool (Kamal Heib) [2056499] - RDMA/rxe: Cleanup rxe_pool_entry (Kamal Heib) [2056499] - RDMA/rxe: Replace irqsave locks with bh locks (Kamal Heib) [2056499] - RDMA/usnic: Clean up usnic_ib_alloc_pd() (Kamal Heib) [2056499] - RDMA/irdma: Use helper function to set GUIDs (Kamal Heib) [2056499 2037972] - RDMA/rxe: Prevent double freeing rxe_map_set() (Kamal Heib) [2056498] - IB/hfi1: Fix leak of rcvhdrtail_dummy_kvaddr (Kamal Heib) [2056498 2049845] - IB/hfi1: Fix early init panic (Kamal Heib) [2056498 2049845] - IB/hfi1: Insure use of smp_processor_id() is preempt disabled (Kamal Heib) [2056498 2049845] - IB/hfi1: Correct guard on eager buffer deallocation (Kamal Heib) [2056498 2049845] - RDMA: Fix use-after-free in rxe_queue_cleanup (Kamal Heib) [2056498] - RDMA/nldev: Check stat attribute before accessing it (Kamal Heib) [2056498] - IB/hfi1: Properly allocate rdma counter desc memory (Kamal Heib) [2056498 2049845] - RDMA/core: Set send and receive CQ before forwarding to the driver (Kamal Heib) [2056498] - RDMA/netlink: Add __maybe_unused to static inline in C file (Kamal Heib) [2056498] - RDMA/core: Require the driver to set the IOVA correctly during rereg_mr (Kamal Heib) [2056498] - RDMA/irdma: optimize rx path by removing unnecessary copy (Kamal Heib) [2056498 2037972] - IB/opa_vnic: Rebranding of OPA VNIC driver to Cornelis Networks (Kamal Heib) [2056498] - IB/hfi1: Rebranding of hfi1 driver to Cornelis Networks (Kamal Heib) [2056498 2049845] - RDMA/rxe: Make rxe_type_info static const (Kamal Heib) [2056498] - RDMA/rxe: Use 'bitmap_zalloc()' when applicable (Kamal Heib) [2056498] - RDMA/rxe: Save a few bytes from struct rxe_pool (Kamal Heib) [2056498] - RDMA/irdma: Remove the unused variable local_qp (Kamal Heib) [2056498 2037972] - RDMA/core: Fix missed initialization of rdma_hw_stats::lock (Kamal Heib) [2056498] - RDMA/irdma: Remove the unused spin lock in struct irdma_qp_uk (Kamal Heib) [2056498 2037972] - RDMA: Constify netdev->dev_addr accesses (Kamal Heib) [2056498] - RDMA/ipoib: Use dev_addr_mod() (Kamal Heib) [2056498] - RDMA/core: Use kvzalloc when allocating the struct ib_port (Kamal Heib) [2056498] - RDMA/irdma: Make irdma_uk_cq_init() return a void (Kamal Heib) [2056498 2037972] - RDMA/rxe: Convert kernel UD post send to use ah_num (Kamal Heib) [2056498] - RDMA/rxe: Lookup kernel AH from ah index in UD WQEs (Kamal Heib) [2056498] - RDMA/rxe: Replace ah->pd by ah->ibah.pd (Kamal Heib) [2056498] - RDMA/rxe: Create AH index and return to user space (Kamal Heib) [2056498] - RDMA/rxe: Change AH objects to indexed (Kamal Heib) [2056498] - RDMA/rxe: Move AV from rxe_send_wqe to rxe_send_wr (Kamal Heib) [2056498] - RDMA/irdma: Remove irdma_cqp_up_map_cmd() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_get_hw_addr() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_sc_send_lsmm_nostag() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_uk_mw_bind() (Kamal Heib) [2056498 2037972] - RDMA: Remove redundant 'flush_workqueue()' calls (Kamal Heib) [2056498] - RDMA/iwpm: Remove redundant initialization of pointer err_str (Kamal Heib) [2056498] - RDMA/nldev: Allow optional-counter status configuration through RDMA netlink (Kamal Heib) [2056498] - RDMA/nldev: Split nldev_stat_set_mode_doit out of nldev_stat_set_doit (Kamal Heib) [2056498] - RDMA/nldev: Add support to get status of all counters (Kamal Heib) [2056498] - RDMA/counter: Add optional counter support (Kamal Heib) [2056498] - RDMA/counter: Add an is_disabled field in struct rdma_hw_stats (Kamal Heib) [2056498] - RDMA/core: Add a helper API rdma_free_hw_stats_struct (Kamal Heib) [2056498] - RDMA/bnxt_re: Fix kernel panic when trying to access bnxt_re_stat_descs (Kamal Heib) [2056499] - RDMA/counter: Add a descriptor in struct rdma_hw_stats (Kamal Heib) [2056498] - RDMA/bnxt_re: Update statistics counter name (Kamal Heib) [2056498] - RDMA/bnxt_re: Add extended statistics counters (Kamal Heib) [2056498] - RDMA/efa: CQ notifications (Kamal Heib) [2056498] - RDMA/rxe: Remove duplicate settings (Kamal Heib) [2056498] - RDMA/rxe: Set partial attributes when completion status != IBV_WC_SUCCESS (Kamal Heib) [2056498] - RDMA/rxe: Change the is_user member of struct rxe_cq to bool (Kamal Heib) [2056498] - RDMA/rxe: Remove the is_user members of struct rxe_sq/rxe_rq/rxe_srq (Kamal Heib) [2056498] - RDMA/irdma: Delete unused struct irdma_bth (Kamal Heib) [2056498 2037972] - IB/hf1: Use string_upper() instead of an open coded variant (Kamal Heib) [2056498] - RDMA/cma: Split apart the multiple uses of the same list heads (Kamal Heib) [2056498] - RDMA/rxe: Remove unused WR_READ_WRITE_OR_SEND_MASK (Kamal Heib) [2056498] - RDMA/rxe: Add MASK suffix for RXE_READ_OR_ATOMIC and RXE_WRITE_OR_SEND (Kamal Heib) [2056498] - RDMA/rxe: Add new RXE_READ_OR_WRITE_MASK (Kamal Heib) [2056498] - RDMA/hfi1: Use struct_size() and flex_array_size() helpers (Kamal Heib) [2056498 2049845] - IB/hfi1: Add ring consumer and producers traces (Kamal Heib) [2056498 2049845] - IB/hfi1: Remove atomic completion count (Kamal Heib) [2056498 2049845] - IB/hfi1: Tune netdev xmit cachelines (Kamal Heib) [2056498 2049845] - IB/hfi1: Get rid of tx priv backpointer (Kamal Heib) [2056498 2049845] - IB/hfi1: Get rid of hot path divide (Kamal Heib) [2056498 2049845] - IB/hfi1: Remove cache and embed txreq in ring (Kamal Heib) [2056498 2049845] - RDMA/rxe: Only allow invalidate for appropriate MRs (Kamal Heib) [2056498] - RDMA/rxe: Create duplicate mapping tables for FMRs (Kamal Heib) [2056498] - RDMA/rxe: Separate HW and SW l/rkeys (Kamal Heib) [2056498] - RDMA/rxe: Cleanup MR status and type enums (Kamal Heib) [2056498] - RDMA/rxe: Add memory barriers to kernel queues (Kamal Heib) [2056498] - RDMA/rxe: remove the unnecessary variable (Kamal Heib) [2056498] - RDMA/rxe: remove the redundant variable (Kamal Heib) [2056498] - RDMA/rxe: Fix wrong port_cap_flags (Kamal Heib) [2056498] - RDMA/rdmavt: Fix error code in rvt_create_qp() (Kamal Heib) [2056497 2049845] - IB/hfi1: Fix abba locking issue with sc_disable() (Kamal Heib) [2056497 2049845] - RDMA/hfi1: Fix kernel pointer leak (Kamal Heib) [2056497 2049845] - RDMA/usnic: Lock VF with mutex instead of spinlock (Kamal Heib) [2056497] - RDMA/cma: Do not change route.addr.src_addr.ss_family (Kamal Heib) [2056497] - IB/hfi1: make hist static (Kamal Heib) [2056497 2049845] - RDMA/hfi1: Convert to SPDX identifier (Kamal Heib) [2056497 2049845] - IB/rdmavt: Convert to SPDX identifier (Kamal Heib) [2056497 2049845] - RDMA/core/sa_query: Retry SA queries (Kamal Heib) [2056497] - IB/core: Remove deprecated current_seq comments (Kamal Heib) [2056497] - RDMA/efa: Rename vector field in efa_irq struct to irqn (Kamal Heib) [2056497] - RDMA/efa: Remove unused cpu field from irq struct (Kamal Heib) [2056497] - RDMA/core/sa_query: Remove unused function (Kamal Heib) [2056497] - RDMA/hfi1: Stop using seq_get_buf in _driver_stats_seq_show (Kamal Heib) [2056497 2049845] - RDMA/core: Create clean QP creations interface for uverbs (Kamal Heib) [2056497] - RDMA/core: Properly increment and decrement QP usecnts (Kamal Heib) [2056497] - RDMA/core: Configure selinux QP during creation (Kamal Heib) [2056497] - RDMA/core: Reorganize create QP low-level functions (Kamal Heib) [2056497] - RDMA/core: Remove protection from wrong in-kernel API usage (Kamal Heib) [2056497] - RDMA/core: Delete duplicated and unreachable code (Kamal Heib) [2056497] - rdma/qedr: Fix crash due to redundant release of device's qp memory (Kamal Heib) [2056497] - RDMA: Globally allocate and release QP memory (Kamal Heib) [2056497] - RDMA/mlx5: Rework custom driver QP type creation (Kamal Heib) [2056497] - RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp (Kamal Heib) [2056497] - RDMA/rdmavt: Decouple QP and SGE lists allocations (Kamal Heib) [2056497 2049845] - RDMA/efa: Remove double QP type assignment (Kamal Heib) [2056497] - RDMA/hfi1: Fix typo in comments (Kamal Heib) [2056497 2049845] - RDMA/iwpm: Rely on the rdma_nl_[un]register() to ensure that requests are valid (Kamal Heib) [2056497] - RDMA/iwpm: Remove not-needed reference counting (Kamal Heib) [2056497] - RDMA/hfi1: Convert from atomic_t to refcount_t on hfi1_devdata->user_refcount (Kamal Heib) [2056497 2049845] - IB/hfi1: Adjust pkey entry in index 0 (Kamal Heib) [2056497 2049845] - IB/hfi1: Indicate DMA wait when txq is queued for wakeup (Kamal Heib) [2056497 2049845] - RDMA/rxe: Fix types in rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Add kernel-doc comments to rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Move crc32 init code to rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Fixup rxe_icrc_hdr (Kamal Heib) [2056497] - RDMA/rxe: Move rxe_crc32 to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Move ICRC generation to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Fixup rxe_send and rxe_loopback (Kamal Heib) [2056497] - RDMA/rxe: Move rxe_xmit_packet to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Move ICRC checking to a subroutine (Kamal Heib) [2056497] - IB/core: Read subnet_prefix in ib_query_port via cache. (Kamal Heib) [2056497] - IB/core: Shifting initialization of device->cache_lock (Kamal Heib) [2056497] - IB/core: Updating cache for subnet_prefix in config_non_roce_gid_cache() (Kamal Heib) [2056497] - RDMA/efa: Split hardware stats to device and port stats (Kamal Heib) [2056497] - RDMA/rxe: Remove the repeated 'mr->umem = umem' (Kamal Heib) [2056497] - RDMA/siw: Convert siw_tx_hdt() to kmap_local_page() (Kamal Heib) [2056497] - RDMA/siw: Remove kmap() (Kamal Heib) [2056497] - treewide: Add missing semicolons to __assign_str uses (Kamal Heib) [2056497] - RDMA/hfi1: Remove use of kmap() (Kamal Heib) [2056497 2049845] - RDMA: Delete not-used static inline functions (Kamal Heib) [2056497] - mm/page_owner.c: record tgid (Waiman Long) [2069294] - mm/page_owner: record task command name (Waiman Long) [2069294] - mm/page_owner: print memcg information (Waiman Long) [2069294] - mm/page_owner: use scnprintf() to avoid excessive buffer overrun check (Waiman Long) [2069294] - lib/vsprintf: avoid redundant work with 0 size (Waiman Long) [2069294] - lib, stackdepot: add helper to print stack entries into buffer (Waiman Long) [2069294] - lib, stackdepot: add helper to print stack entries (Waiman Long) [2069294] - lib, stackdepot: check stackdepot handle before accessing slabs (Waiman Long) [2069294] - stacktrace: move filter_irq_stacks() to kernel/stacktrace.c (Waiman Long) [2069294] - lib/stackdepot: introduce __stack_depot_save() (Waiman Long) [2069294] - mm: introduce PAGEFLAGS_MASK to replace ((1UL << NR_PAGEFLAGS) - 1) (Waiman Long) [2069294] - mm/page_owner: constify dump_page_owner (Waiman Long) [2069294] - mm: page_owner: detect page_owner recursion via task_struct (Waiman Long) [2069294] - mm: page_owner: use kstrtobool() to parse bool option (Waiman Long) [2069294] - mm: page_owner: fetch backtrace only for tracked pages (Waiman Long) [2069294] - mm, page_owner: remove unused parameter in __set_page_owner_handle (Waiman Long) [2069294] - mm/page_owner: record the timestamp of all pages during free (Waiman Long) [2069294] - mm/page_owner: use helper function zone_end_pfn() to get end_pfn (Waiman Long) [2069294] - mm/page_owner: record timestamp and pid (Waiman Long) [2069294] - x86/platform/uv: Log gap hole end size (Frank Ramsay) [2074098] - x86/platform/uv: Update TSC sync state for UV5 (Frank Ramsay) [2074098] - x86/platform/uv: Update NMI Handler for UV5 (Frank Ramsay) [2074098] - x86/platform/uv: Remove unused variable in UV5 NMI handler (Frank Ramsay) [2074098] - timekeeping: Boot should be boottime for coarse ns accessor (Ivan Vecera) [2076879]- net_tstamp: define new flag HWTSTAMP_FLAG_BONDED_PHC_INDEX (Petr Oros) [2070041] - net_tstamp: add new flag HWTSTAMP_FLAG_BONDED_PHC_INDEX (Petr Oros) [2070041] - net: fix NULL pointer reference in cipso_v4_doi_free (Guillaume Nault) [2074597] - partitions/efi: Fix partition name parsing in GUID partition entry (Ming Lei) [2075085] - psi: Fix uaf issue when psi trigger is destroyed while being polled (Waiman Long) [2046396] - cgroup/cpuset: Make child cpusets restrict parents on v1 hierarchy (Waiman Long) [2046396] - cgroup/cpuset: Don't let child cpusets restrict parent in default hierarchy (Waiman Long) [2046396] - mm/page_alloc: detect allocation forbidden by cpuset and bail out early (Waiman Long) [2046396] - cgroup: Fix rootcg cpu.stat guest double counting (Waiman Long) [2046396] - cgroup: no need for cgroup_mutex for /proc/cgroups (Waiman Long) [2046396] - cgroup: remove cgroup_mutex from cgroupstats_build (Waiman Long) [2046396] - cgroup: Fix memory leak caused by missing cgroup_bpf_offline (Waiman Long) [2046396] - cgroup: cgroup-v1: do not exclude cgrp_dfl_root (Waiman Long) [2046396] - bpf, test, cgroup: Use sk_{alloc,free} for test cases (Waiman Long) [2046396] - bpf, cgroup: Assign cgroup in cgroup_sk_alloc when called from interrupt (Waiman Long) [2046396] - bpf, cgroups: Fix cgroup v2 fallback on v1/v2 mixed mode (Waiman Long) [2046396] - cgroup/cpuset: Change references of cpuset_mutex to cpuset_rwsem (Waiman Long) [2046396] - cgroup: Replace deprecated CPU-hotplug functions. (Waiman Long) [2046396] - cgroup/cpuset: Fix a partition bug with hotplug (Waiman Long) [2046396] - cgroup/cpuset: Miscellaneous code cleanup (Waiman Long) [2046396] - cgroup/cpuset: fix typos in comments (Waiman Long) [2046396] - enable DAMON configs (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/reclaim: document statistics parameters (Chris von Recklinghausen) [2004233] - mm/damon: hide kernel pointer from tracepoint event (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: hide kernel pointer from damon_va_three_regions() failure log (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: use pr_debug() for damon_va_three_regions() failure logging (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove an unnecessary variable (Chris von Recklinghausen) [2004233] - mm/damon: move the implementation of damon_insert_region to damon.h (Chris von Recklinghausen) [2004233] - mm/damon: add access checking for hugetlb pages (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for schemes statistics (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support all DAMOS stats (Chris von Recklinghausen) [2004233] - mm/damon/reclaim: provide reclamation statistics (Chris von Recklinghausen) [2004233] - mm/damon/schemes: account how many times quota limit has exceeded (Chris von Recklinghausen) [2004233] - mm/damon/schemes: account scheme actions that successfully applied (Chris von Recklinghausen) [2004233] - mm/damon: remove a mistakenly added comment for a future feature (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for kdamond_pid and (mk|rm)_contexts (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: mention tracepoint at the beginning (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: remove redundant information (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for scheme quotas and watermarks (Chris von Recklinghausen) [2004233] - mm/damon: convert macro functions to static inline functions (Chris von Recklinghausen) [2004233] - mm/damon: modify damon_rand() macro to static inline function (Chris von Recklinghausen) [2004233] - mm/damon: move damon_rand() definition into damon.h (Chris von Recklinghausen) [2004233] - mm/damon/schemes: add the validity judgment of thresholds (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: remove swap_ranges() and replace it with swap() (Chris von Recklinghausen) [2004233] - mm/damon: remove some unneeded function definitions in damon.h (Chris von Recklinghausen) [2004233] - mm/damon/core: use abs() instead of diff_of() (Chris von Recklinghausen) [2004233] - mm/damon: unified access_check function naming rules (Chris von Recklinghausen) [2004233] - mm/damon: add 'age' of region tracepoint support (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: fix 'struct pid' leaks in 'dbgfs_target_ids_write()' (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: protect targets destructions with kdamond_lock (Chris von Recklinghausen) [2004233] - selftests/damon: split test cases (Chris von Recklinghausen) [2004233] - selftests/damon: test debugfs file reads/writes with huge count (Chris von Recklinghausen) [2004233] - selftests/damon: test wrong DAMOS condition ranges input (Chris von Recklinghausen) [2004233] - selftests/damon: test DAMON enabling with empty target_ids case (Chris von Recklinghausen) [2004233] - selftests/damon: skip test if DAMON is running (Chris von Recklinghausen) [2004233] - mm/damon/vaddr-test: remove unnecessary variables (Chris von Recklinghausen) [2004233] - mm/damon/vaddr-test: split a test function having >1024 bytes frame size (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: remove an unnecessary warning message (Chris von Recklinghausen) [2004233] - mm/damon/core: remove unnecessary error messages (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove an unnecessary error message (Chris von Recklinghausen) [2004233] - mm/damon/core: use better timer mechanisms selection threshold (Chris von Recklinghausen) [2004233] - mm/damon/core: fix fake load reports due to uninterruptible sleeps (Chris von Recklinghausen) [2004233] - timers: implement usleep_idle_range() (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: fix missed use of damon_dbgfs_lock (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: use '__GFP_NOWARN' for user-specified size buffer allocation (Chris von Recklinghausen) [2004233] - mm/damon: remove return value from before_terminate callback (Chris von Recklinghausen) [2004233] - mm/damon: fix a few spelling mistakes in comments and a pr_debug message (Chris von Recklinghausen) [2004233] - mm/damon: simplify stop mechanism (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: simplify the content (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: fix a wrong link (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: fix wrong example commands (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: add adaptive_targets list check before enable monitor_on (Chris von Recklinghausen) [2004233] - mm/damon: remove unnecessary variable initialization (Chris von Recklinghausen) [2004233] - Documentation/admin-guide/mm/damon: add a document for DAMON_RECLAIM (Chris von Recklinghausen) [2004233] - mm/damon: introduce DAMON-based Reclamation (DAMON_RECLAIM) (Chris von Recklinghausen) [2004233] - selftests/damon: support watermarks (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support watermarks (Chris von Recklinghausen) [2004233] - mm/damon/schemes: activate schemes based on a watermarks mechanism (Chris von Recklinghausen) [2004233] - tools/selftests/damon: update for regions prioritization of schemes (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support prioritization weights (Chris von Recklinghausen) [2004233] - mm/damon/vaddr,paddr: support pageout prioritization (Chris von Recklinghausen) [2004233] - mm/damon/schemes: prioritize regions within the quotas (Chris von Recklinghausen) [2004233] - mm/damon/selftests: support schemes quotas (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support quotas of schemes (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement time quota (Chris von Recklinghausen) [2004233] - mm/damon/schemes: skip already charged targets and regions (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement size quota for schemes application speed control (Chris von Recklinghausen) [2004233] - mm/damon/paddr: support the pageout scheme (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove unnecessary variables (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: constify static mm_walk_ops (Chris von Recklinghausen) [2004233] - Docs/DAMON: document physical memory monitoring support (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support physical memory monitoring (Chris von Recklinghausen) [2004233] - mm/damon: implement primitives for physical address space monitoring (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: separate commonly usable functions (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs-test: add a unit test case for 'init_regions' (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon: document 'init_regions' feature (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon: document DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - docs/vm/damon: remove broken reference (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: allow users to set initial monitoring target regions (Chris von Recklinghausen) [2004233] - selftests/damon: add 'schemes' debugfs tests (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement statistics feature (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: support DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - mm/damon/core: implement DAMON-based Operation Schemes (DAMOS) (Chris von Recklinghausen) [2004233] - mm/damon/core: account age of target regions (Chris von Recklinghausen) [2004233] - mm/damon/core: nullify pointer ctx->kdamond with a NULL (Chris von Recklinghausen) [2004233] - mm/damon: needn't hold kdamond_lock to print pid of kdamond (Chris von Recklinghausen) [2004233] - mm/damon: remove unnecessary do_exit() from kdamond (Chris von Recklinghausen) [2004233] - mm/damon/core: print kdamond start log in debug mode only (Chris von Recklinghausen) [2004233] - mm/damon: grammar s/works/work/ (Chris von Recklinghausen) [2004233] - mm/damon/core-test: fix wrong expectations for 'damon_split_regions_of()' (Chris von Recklinghausen) [2004233] - mm/damon: don't use strnlen() with known-bogus source length (Chris von Recklinghausen) [2004233] - mm/damon: add kunit tests (Chris von Recklinghausen) [2004233] - Documentation: add documents for DAMON (Chris von Recklinghausen) [2004233] - mm/damon: add user space selftests (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support multiple contexts (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: export kdamond pid to the user space (Chris von Recklinghausen) [2004233] - mm/damon: implement a debugfs-based user space interface (Chris von Recklinghausen) [2004233] - mm/damon: add a tracepoint (Chris von Recklinghausen) [2004233] - mm/damon: implement primitives for the virtual memory address spaces (Chris von Recklinghausen) [2004233] - mm/damon: adaptively adjust regions (Chris von Recklinghausen) [2004233] - mm/damon/core: implement region-based sampling (Chris von Recklinghausen) [2004233] - mm: introduce Data Access MONitor (DAMON) (Chris von Recklinghausen) [2004233] - khugepaged: use helper khugepaged_test_exit() in __khugepaged_enter() (Chris von Recklinghausen) [2004233] - mm/madvise: pass mm to do_madvise (Chris von Recklinghausen) [2004233] - ceph: fix possible NULL pointer dereference for req->r_session (Xiubo Li) [2076165] - thermal: int340x: Fix VCoRefLow MMIO bit offset for TGL (Prarit Bhargava) [2039994] - MAINTAINERS: sort field names for all entries (Joel Savitz) [2064843] - parse-maintainers: Do not sort section content by default (Joel Savitz) [2064843] - parse-maintainers: Mark as executable (Joel Savitz) [2064843] - KVM: x86: Use ERR_PTR_USR() to return -EFAULT as a __user pointer (Paul Lai) [2074679] - KVM: x86: add system attribute to retrieve full set of supported xsave states (Paul Lai) [2074679] - KVM: x86: Add a helper to retrieve userspace address from kvm_device_attr (Paul Lai) [2074679] - tools: arch: x86: pull in pvclock headers (Paul Lai) [2074679] - KVM: x86: Expose TSC offset controls to userspace (Paul Lai) [2074679] - KVM: x86: Refactor tsc synchronization code (Paul Lai) [2074679] - selftests: kvm: move vm_xsave_req_perm call to amx_test (Paul Lai) [2074679] - powerpc/pseries/vas: Add VAS migration handler (Steve Best) [2028678] - powerpc/pseries/vas: Modify reconfig open/close functions for migration (Steve Best) [2028678] - powerpc/pseries/vas: Define global hv_cop_caps struct (Steve Best) [2028678] - powerpc/pseries/vas: Add 'update_total_credits' entry for QoS capabilities (Steve Best) [2028678] - powerpc/pseries/vas: sysfs interface to export capabilities (Steve Best) [2028678] - powerpc/pseries/vas: Reopen windows with DLPAR core add (Steve Best) [2028678] - powerpc/pseries/vas: Close windows with DLPAR core removal (Steve Best) [2028678] - powerpc/vas: Map paste address only if window is active (Steve Best) [2028678] - powerpc/vas: Return paste instruction failure if no active window (Steve Best) [2028678] - powerpc/vas: Add paste address mmap fault handler (Steve Best) [2028678] - powerpc/pseries/vas: Save PID in pseries_vas_window struct (Steve Best) [2028678] - powerpc/pseries/vas: Use common names in VAS capability structure (Steve Best) [2028678] - perf powerpc: Update global/local variants for p_stage_cyc (Desnes A. Nunes do Rosario) [2051358] - perf sort: Include global and local variants for p_stage_cyc sort key (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'p_stage_cyc' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'ins_lat' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'weight' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - block: loop:use kstatfs.f_bsize of backing file to set discard granularity (Ming Lei) [2069472] - blk-cgroup: set blkg iostat after percpu stat aggregation (Ming Lei) [2069472] - block: update io_ticks when io hang (Ming Lei) [2069472] - block: don't delete queue kobject before its children (Ming Lei) [2069472] - block/wbt: fix negative inflight counter when remove scsi device (Ming Lei) [2069472] - block: bio-integrity: Advance seed correctly for larger interval sizes (Ming Lei) [2069472] - block: fix async_depth sysfs interface for mq-deadline (Ming Lei) [2069472] - bfq: Do not let waker requests skip proper accounting (Ming Lei) [2069472] - block: Fix fsync always failed if once failed (Ming Lei) [2069472] - blktrace: fix use after free for struct blk_trace (Ming Lei) [2069472] - block: Check ADMIN before NICE for IOPRIO_CLASS_RT (Ming Lei) [2069472] - blk-cgroup: fix missing put device in error path from blkg_conf_pref() (Ming Lei) [2069472] - blkcg: Remove extra blkcg_bio_issue_init (Ming Lei) [2069472] - nbd: Fix use-after-free in pid_show (Ming Lei) [2069472] - block/mq-deadline: Improve request accounting further (Ming Lei) [2069472] - block, bfq: fix UAF problem in bfqg_stats_init() (Ming Lei) [2069472] - blk-cgroup: synchronize blkg creation against policy deactivation (Ming Lei) [2069472] - block, bfq: reset last_bfqq_created on group change (Ming Lei) [2069472] - block: bfq: fix bfq_set_next_ioprio_data() (Ming Lei) [2069472] - sched/topology: Remove redundant variable and fix incorrect type in build_sched_domains (Phil Auld) [2065200] - sched/fair: Adjust the allowed NUMA imbalance when SD_NUMA spans multiple LLCs (Phil Auld) [2065200] - sched/fair: Improve consistency of allowed NUMA balance calculations (Phil Auld) [2065200] - Revert: sched: Disable allowing small imbalance to preserve RHEL performance (Phil Auld) [2065200] - NFSv4.1: handle NFS4ERR_NOSPC by CREATE_SESSION (Steve Dickson) [2023844] - SUNRPC: use different lock keys for INET6 and LOCAL (Guillaume Nault) [2061651] - arm64: Restore forced disabling of KPTI on ThunderX (Mark Salter) [1999157] - arm64: mte: initialize RGSR_EL1.SEED in __cpu_setup (Mark Salter) [1999157] - arm64: Remove exporting cpu_logical_map symbol (Mark Salter) [1999157] - arm64: tlb: fix the TTL value of tlb_get_level (Mark Salter) [1999157] - arm64: Validate tagged addresses in access_ok() called from kernel threads (Mark Salter) [1999157] - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) (Mark Salter) [1999157] - arm64: ptrace: Use NO_SYSCALL instead of -1 in syscall_trace_enter() (Mark Salter) [1999157] - arm64: mm: Fix TLBI vs ASID rollover (Mark Salter) [1999157] - arm64: errata: Fix exec handling in erratum 1418040 workaround (Mark Salter) [1999157] - arm64: Generate cpucaps.h (Mark Salter) [1999157] - arm64/sve: Skip flushing Z registers with 128 bit vectors (Mark Salter) [1999157] - arm64/sve: Rework SVE access trap to convert state in registers (Mark Salter) [1999157] - arm64/sve: Use the sve_flush macros in sve_load_from_fpsimd_state() (Mark Salter) [1999157] - arm64/sve: Split _sve_flush macro into separate Z and predicate flushes (Mark Salter) [1999157] - arm64: fix inline asm in load_unaligned_zeropad() (Mark Salter) [1999157] - arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55 (Mark Salter) [1999157] - arm64/fpsimd: add to to fix fpsimd build (Mark Salter) [1999157] - arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver (Mark Salter) [1999157] - arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist (Mark Salter) [1999157] - arm64: Add MIDR value for KRYO2XX gold/silver CPU cores (Mark Salter) [1999157] - arm64: errata: Fix handling of 1418040 with late CPU onlining (Mark Salter) [1999157] - arm64: cpufeature: upgrade hyp caps to final (Mark Salter) [1999157] - arm64: cpufeature: reorder cpus_have_{const, final}_cap() (Mark Salter) [1999157] - arm64: Add workaround for Arm Cortex-A77 erratum 1508412 (Mark Salter) [1999157] - arm64: Add part number for Arm Cortex-A77 (Mark Salter) [1999157] - arm64: reject prctl(PR_PAC_RESET_KEYS) on compat tasks (Mark Salter) [1999157] - arm64: Treat SSBS as a non-strict system feature (Mark Salter) [1999157] - arm64: Group start_thread() functions together (Mark Salter) [1999157] - arm64: Remove Spectre-related CONFIG_* options (Mark Salter) [1999157] - arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs (Mark Salter) [1999157] - arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs (Mark Salter) [1999157] - arm64: mte: CPU feature detection and initial sysreg configuration (Mark Salter) [1999157] - arm64: cpufeature: Export symbol read_sanitised_ftr_reg() (Mark Salter) [1999157] - arm64/fpsimd: Fix missing-prototypes in fpsimd.c (Mark Salter) [1999157] - arm64: traps: Add str of description to panic() in die() (Mark Salter) [1999157] - arm64/sve: Implement a helper to load SVE registers from FPSIMD state (Mark Salter) [1999157] - arm64/sve: Implement a helper to flush SVE registers (Mark Salter) [1999157] - arm64/fpsimdmacros: Allow the macro "for" to be used in more cases (Mark Salter) [1999157] - arm64/fpsimdmacros: Introduce a macro to update ZCR_EL1.LEN (Mark Salter) [1999157] - arm64/signal: Update the comment in preserve_sve_context (Mark Salter) [1999157] - arm64/fpsimd: Update documentation of do_sve_acc (Mark Salter) [1999157] - arm64: cpufeature: Modify address authentication cpufeature to exact (Mark Salter) [1999157] - arm64: ptrauth: Introduce Armv8.3 pointer authentication enhancements (Mark Salter) [1999157] - arm64: traps: Allow force_signal_inject to pass esr error code (Mark Salter) [1999157] - arm64/cpuinfo: Define HWCAP name arrays per their actual bit definitions (Mark Salter) [1999157] - arm64: Reserve HWCAP2_MTE as (1 << 18) (Mark Salter) [1999157] - arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late (Mark Salter) [1999157] - arm64: Allow booting of late CPUs affected by erratum 1418040 (Mark Salter) [1999157] - arm64: Drop unnecessary include from asm/smp.h (Mark Salter) [1999157] - arm64: Move handling of erratum 1418040 into C code (Mark Salter) [1999157] - arm64: Fix __cpu_logical_map undefined issue (Mark Salter) [1999157] - arm64: tlb: don't set the ttl value in flush_tlb_page_nosync (Mark Salter) [1999157] - arm64: Shift the __tlbi_level() indentation left (Mark Salter) [1999157] - arm64: tlb: Set the TTL field in flush_*_tlb_range (Mark Salter) [1999157] - arm64: tlb: Set the TTL field in flush_tlb_range (Mark Salter) [1999157] - arm64: Add tlbi_user_level TLB invalidation helper (Mark Salter) [1999157] - arm64: Add level-hinted TLB invalidation helper (Mark Salter) [1999157] - arm64: Document SW reserved PTE/PMD bits in Stage-2 descriptors (Mark Salter) [1999157] - arm64/cpufeature: Validate feature bits spacing in arm64_ftr_regs[] (Mark Salter) [1999157] - arm64/cpufeature: Replace all open bits shift encodings with macros (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR2 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR1 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR0 register (Mark Salter) [1999157] - arm64: csum: Fix handling of bad packets (Mark Salter) [1999157] - arm64: Add missing sentinel to erratum_1463225 (Mark Salter) [1999157] - arm64: Documentation: Fix broken table in generated HTML (Mark Salter) [1999157] - arm64: kgdb: Fix single-step exception handling oops (Mark Salter) [1999157] - arm64: entry: Tidy up block comments and label numbers (Mark Salter) [1999157] - arm64: Rework ARM_ERRATUM_1414080 handling (Mark Salter) [1999157] - arm64: entry: Fix the typo in the comment of el1_dbg() (Mark Salter) [1999157] - arm64: Add KRYO4XX silver CPU cores to erratum list 1530923 and 1024718 (Mark Salter) [1999157] - arm64: Add KRYO4XX gold CPU cores to erratum list 1463225 and 1418040 (Mark Salter) [1999157] - arm64: Add MIDR value for KRYO4XX gold CPU cores (Mark Salter) [1999157] - arm64: Add KRYO{3,4}XX silver CPU cores to SSB safelist (Mark Salter) [1999157] - arm64: kpti: Add KRYO{3, 4}XX silver CPU cores to kpti safelist (Mark Salter) [1999157] - arm64: sve: Fix build failure when ARM64_SVE=y and SYSCTL=n (Mark Salter) [1999157] - arm64: mm: reset address tag set by kasan sw tagging (Mark Salter) [1999157] - arm64: traps: Dump registers prior to panic() in bad_mode() (Mark Salter) [1999157] - arm64/sve: Eliminate data races on sve_default_vl (Mark Salter) [1999157] - arm64: csum: Disable KASAN for do_csum() (Mark Salter) [1999157] - arm64/cpufeature: Add get_arm64_ftr_reg_nowarn() (Mark Salter) [1999157] - arm64/cpuinfo: Add ID_MMFR4_EL1 into the cpuinfo_arm64 context (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64PFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_MMFR4 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_PFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_MMFR5 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_DFR1 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_PFR2 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Make doublelock a signed feature in ID_AA64DFR0 (Mark Salter) [1999157] - arm64/cpufeature: Drop TraceFilt feature exposure from ID_DFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Add explicit ftr_id_isar0[] for ID_ISAR0 register (Mark Salter) [1999157] - arm64: cpufeature: Group indexed system register definitions by name (Mark Salter) [1999157] - arm64: cpufeature: Extend comment to describe absence of field info (Mark Salter) [1999157] - arm64: drop duplicate definitions of ID_AA64MMFR0_TGRAN constants (Mark Salter) [1999157] - arm64: cpufeature: Add an overview comment for the cpufeature framework (Mark Salter) [1999157] - arm64: cpufeature: Relax checks for AArch32 support at EL[0-2] (Mark Salter) [1999157] - arm64: cpufeature: Relax AArch32 system checks if EL1 is 64-bit only (Mark Salter) [1999157] - arm64: cpufeature: Factor out checking of AArch32 features (Mark Salter) [1999157] - arm64: cpufeature: Remove redundant call to id_aa64pfr0_32bit_el0() (Mark Salter) [1999157] - arm64: cpufeature: Spell out register fields for ID_ISAR4 and ID_PFR1 (Mark Salter) [1999157] - arm64: cpufeature: Relax check for IESB support (Mark Salter) [1999157] - arm64: mm: Add asid_gen_match() helper (Mark Salter) [1999157] - arm64: Call debug_traps_init() from trap_init() to help early kgdb (Mark Salter) [1999157] - arm64: cacheflush: Fix KGDB trap detection (Mark Salter) [1999157] - arm64/cpuinfo: Move device_initcall() near cpuinfo_regs_init() (Mark Salter) [1999157] - arm64: kexec_file: print appropriate variable (Mark Salter) [1999157] - arm: mm: use __pfn_to_section() to get mem_section (Mark Salter) [1999157] - arm64: Reorder the macro arguments in the copy routines (Mark Salter) [1999157] - KVM: arm64: Drop PTE_S2_MEMATTR_MASK (Mark Salter) [1999157] - arm64/kernel: Fix range on invalidating dcache for boot page tables (Mark Salter) [1999157] - arm64: set TEXT_OFFSET to 0x0 in preparation for removing it entirely (Mark Salter) [1999157] - arm64/mm: Use phys_to_page() to access pgtable memory (Mark Salter) [1999157] - arm64: smp: Make cpus_stuck_in_kernel static (Mark Salter) [1999157] - arm64: entry: remove unneeded semicolon in el1_sync_handler() (Mark Salter) [1999157] - arm64: cpufeature: Add "or" to mitigations for multiple errata (Mark Salter) [1999157] - arm64: Sort vendor-specific errata (Mark Salter) [1999157] - arm64: simplify ptrauth initialization (Mark Salter) [1999157] - arm64: remove ptrauth_keys_install_kernel sync arg (Mark Salter) [1999157] - arm64: insn: Provide a better name for aarch64_insn_is_nop() (Mark Salter) [1999157] - arm64: kernel: Convert to modern annotations for assembly functions (Mark Salter) [1999157] - arm64: entry: Refactor and modernise annotation for ret_to_user (Mark Salter) [1999157] - arm64: BTI: Reset BTYPE when skipping emulated instructions (Mark Salter) [1999157] - arm64: traps: Shuffle code to eliminate forward declarations (Mark Salter) [1999157] - arm64: unify native/compat instruction skipping (Mark Salter) [1999157] - arm64: BTI: Decode BYTPE bits when printing PSTATE (Mark Salter) [1999157] - arm64: Basic Branch Target Identification support (Mark Salter) [1999157] - arm64/kernel: Fix return value when cpu_online() fails in __cpu_up() (Mark Salter) [1999157] - arm64: Add get_user() type annotation on the !access_ok() path (Mark Salter) [1999157] - arm64: Fix PTRACE_SYSEMU semantics (Mark Salter) [1999157] - arm64: fix the flush_icache_range arguments in machine_kexec (Mark Salter) [1999157] - Documentation: arm64: fix amu.rst doc warnings (Mark Salter) [1999157] - arm64: sync kernel APIAKey when installing (Mark Salter) [1999157] - arm64: Delete the space separator in __emit_inst (Mark Salter) [1999157] - arm64: remove CONFIG_DEBUG_ALIGN_RODATA feature (Mark Salter) [1999157] - arm64: head: Convert install_el2_stub to SYM_INNER_LABEL (Mark Salter) [1999157] - arm64: Introduce get_cpu_ops() helper function (Mark Salter) [1999157] - arm64: Rename cpu_read_ops() to init_cpu_ops() (Mark Salter) [1999157] - arm64: Declare ACPI parking protocol CPU operation if needed (Mark Salter) [1999157] - arm64: move kimage_vaddr to .rodata (Mark Salter) [1999157] - arm64: sdei: Annotate SDEI entry points using new style annotations (Mark Salter) [1999157] - arm64: kernel: Convert to modern annotations for assembly data (Mark Salter) [1999157] - arm64: head: Annotate stext and preserve_boot_args as code (Mark Salter) [1999157] - arm64: head.S: Convert to modern annotations for assembly functions (Mark Salter) [1999157] - arm64: entry: Additional annotation conversions for entry.S (Mark Salter) [1999157] - arm64: entry: Annotate ret_from_fork as code (Mark Salter) [1999157] - arm64: entry: Annotate vector table and handlers as code (Mark Salter) [1999157] - kconfig: Add support for 'as-option' (Mark Salter) [1999157] - arm64: suspend: restore the kernel ptrauth keys (Mark Salter) [1999157] - arm64: __show_regs: strip PAC from lr in printk (Mark Salter) [1999157] - arm64: unwind: strip PAC from kernel addresses (Mark Salter) [1999157] - arm64/crash_core: Export KERNELPACMASK in vmcoreinfo (Mark Salter) [1999157] - arm64: mask PAC bits of __builtin_return_address (Mark Salter) [1999157] - compiler.h: Allow arch-specific asm/compiler.h (Mark Salter) [1999157] - arm64: initialize ptrauth keys for kernel booting task (Mark Salter) [1999157] - arm64: initialize and switch ptrauth kernel keys (Mark Salter) [1999157] - arm64: enable ptrauth earlier (Mark Salter) [1999157] - arm64: cpufeature: handle conflicts based on capability (Mark Salter) [1999157] - arm64: cpufeature: Move cpu capability helpers inside C file (Mark Salter) [1999157] - arm64: ptrauth: Add bootup/runtime flags for __cpu_setup (Mark Salter) [1999157] - arm64: install user ptrauth keys at kernel exit time (Mark Salter) [1999157] - arm64: rename ptrauth key structures to be user-specific (Mark Salter) [1999157] - arm64: cpufeature: add pointer auth meta-capabilities (Mark Salter) [1999157] - arm64: cpufeature: Fix meta-capability cpufeature check (Mark Salter) [1999157] - arm64: define __alloc_zeroed_user_highpage (Mark Salter) [1999157] - arm64/kernel: Simplify __cpu_up() by bailing out early (Mark Salter) [1999157] - arm64: smp: Mark expected switch fall-through (Mark Salter) [1999157] - arm64: remove redundant blank for '=' operator (Mark Salter) [1999157] - arm64: kexec_file: Fixed code style. (Mark Salter) [1999157] - arm64: add blank after 'if' (Mark Salter) [1999157] - arm64: fix spelling mistake "ca not" -> "cannot" (Mark Salter) [1999157] - arm64: entry: unmask IRQ in el0_sp() (Mark Salter) [1999157] - arm64: efi: add efi-entry.o to targets instead of extra-$(CONFIG_EFI) (Mark Salter) [1999157] - arm64: csum: Optimise IPv6 header checksum (Mark Salter) [1999157] - arch/arm64: fix typo in a comment (Mark Salter) [1999157] - arm64: remove gratuitious/stray .ltorg stanzas (Mark Salter) [1999157] - arm64: Update comment for ASID() macro (Mark Salter) [1999157] - arm64: mm: convert cpu_do_switch_mm() to C (Mark Salter) [1999157] - Documentation: arm64: document support for the AMU extension (Mark Salter) [1999157] - arm64: trap to EL1 accesses to AMU counters from EL0 (Mark Salter) [1999157] - arm64: add support for the AMU extension v1 (Mark Salter) [1999157] - arm64: smp: fix crash_smp_send_stop() behaviour (Mark Salter) [1999157] - arm64: smp: fix smp_send_stop() behaviour (Mark Salter) [1999157] - arm64: context: Fix ASID limit in boot messages (Mark Salter) [1999157] - docs: arm64: fix trivial spelling enought to enough in memory.rst (Mark Salter) [1999157] - arm64: time: Replace by (Mark Salter) [1999157] - arm64: ssbs: Fix context-switch when SSBS is present on all CPUs (Mark Salter) [1999157] - arm64: use shared sysctl constants (Mark Salter) [1999157] - arm64: Drop do_el0_ia_bp_hardening() & do_sp_pc_abort() declarations (Mark Salter) [1999157] - arm64: entry: Avoid empty alternatives entries (Mark Salter) [1999157] - arm64: Kconfig: select HAVE_FUTEX_CMPXCHG (Mark Salter) [1999157] - arm64: Use macros instead of hard-coded constants for MAIR_EL1 (Mark Salter) [1999157] - arm64: Add KRYO{3,4}XX CPU cores to spectre-v2 safe list (Mark Salter) [1999157] - arm64: context: Free up kernel ASIDs if KPTI is not in use (Mark Salter) [1999157] - arm64: Remove __exception_text_start and __exception_text_end from asm/section.h (Mark Salter) [1999157] - arm64: armv8_deprecated: update the comments of armv8_deprecated_init() (Mark Salter) [1999157] - arm64: kpti: Add Broadcom Brahma-B53 core to the KPTI whitelist (Mark Salter) [1999157] - arm64: csum: Fix pathological zero-length calls (Mark Salter) [1999157] - arm64: Implement optimised checksum routine (Mark Salter) [1999157] - arm64: entry: cleanup sp_el0 manipulation (Mark Salter) [1999157] - arm64: entry: cleanup el0 svc handler naming (Mark Salter) [1999157] - arm64: entry: mark all entry code as notrace (Mark Salter) [1999157] - arm64: assembler: remove smp_dmb macro (Mark Salter) [1999157] - arm64: assembler: remove inherit_daif macro (Mark Salter) [1999157] - arm64: signal: nofpsimd: Handle fp/simd context for signal frames (Mark Salter) [1999157] - arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations (Mark Salter) [1999157] - arm64: cpufeature: Set the FP/SIMD compat HWCAP bits properly (Mark Salter) [1999157] - arm64: cpufeature: Fix the type of no FP/SIMD capability (Mark Salter) [1999157] - arm64: fpsimd: Make sure SVE setup is complete before SIMD is used (Mark Salter) [1999157] - arm64: kernel: Correct annotation of end of el0_sync (Mark Salter) [1999157] - arm64: asm: Remove ENDPIPROC() (Mark Salter) [1999157] - arm64: mm: Use modern annotations for assembly functions (Mark Salter) [1999157] - arm64: lib: Use modern annotations for assembly functions (Mark Salter) [1999157] - arm64: asm: Add new-style position independent function annotations (Mark Salter) [1999157] - arm64: kernel: avoid x18 in __cpu_soft_restart (Mark Salter) [1999157] - arm64/lib: copy_page: avoid x18 register in assembler code (Mark Salter) [1999157] - arm64: mm: avoid x18 in idmap_kpti_install_ng_mappings (Mark Salter) [1999157] - arm64: cpu_errata: Add Hisilicon TSV110 to spectre-v2 safe list (Mark Salter) [1999157] - arm64: entry: refine comment of stack overflow check (Mark Salter) [1999157] - arm64: kpti: Add NVIDIA's Carmel core to the KPTI whitelist (Mark Salter) [1999157] - arm64: mm: simplify the page end calculation in __create_pgd_mapping() (Mark Salter) [1999157] - arm64: print additional fault message when executing non-exec memory (Mark Salter) [1999157] - arm64: pgtable: Correct typo in comment (Mark Salter) [1999157] - arm64: cpufeature: Fix typos in comment (Mark Salter) [1999157] - arm64: entry-common: don't touch daif before bp-hardening (Mark Salter) [1999157] - arm64: Remove asmlinkage from updated functions (Mark Salter) [1999157] - arm64: entry: convert el0_sync to C (Mark Salter) [1999157] - arm64: entry: convert el1_sync to C (Mark Salter) [1999157] - arm64: Add prototypes for functions called by entry.S (Mark Salter) [1999157] - arm64: remove __exception annotations (Mark Salter) [1999157] - arm64: kprobes: Move exception_text check in blacklist (Mark Salter) [1999157] - arm64: kprobes: Remove unneeded RODATA check (Mark Salter) [1999157] - arm64: kprobes: Move extable address check into arch_prepare_kprobe() (Mark Salter) [1999157] - arm64: cpufeature: introduce helper cpu_has_hw_af() (Mark Salter) [1999157] - arm64: Document ICC_CTLR_EL3.PMHE setting requirements (Mark Salter) [1999157] - firmware: arm_sdei: use common SMCCC_CONDUIT_* (Mark Salter) [1999157] - arm64: uaccess: Remove uaccess_*_not_uao asm macros (Mark Salter) [1999157] - arm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault (Mark Salter) [1999157] - arm64: Do not mask out PTE_RDONLY in pte_same() (Mark Salter) [1999157] - arm64: apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core (Mark Salter) [1999157] - arm64: Brahma-B53 is SSB and spectre v2 safe (Mark Salter) [1999157] - arm64: apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core (Mark Salter) [1999157] - arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo (Mark Salter) [1999157] - arm64: cpufeature: Enable Qualcomm Falkor/Kryo errata 1003 (Mark Salter) [1999157] - arm64: Ensure VM_WRITE|VM_SHARED ptes are clean by default (Mark Salter) [1999157] - arm64: mm: fix inverted PAR_EL1.F check (Mark Salter) [1999157] - arm64: hibernate: check pgd table allocation (Mark Salter) [1999157] - arm64: armv8_deprecated: Checking return value for memory allocation (Mark Salter) [1999157] - arm64: mm: fix spurious fault detection (Mark Salter) [1999157] - arm64: ftrace: Ensure synchronisation in PLT setup for Neoverse-N1 #1542419 (Mark Salter) [1999157] - arm64: mm: avoid virt_to_phys(init_mm.pgd) (Mark Salter) [1999157] - docs: arm64: Fix indentation and doc formatting (Mark Salter) [1999157] - arm64: errata: Update stale comment (Mark Salter) [1999157] - arm64: consider stack randomization for mmap base only when necessary (Mark Salter) [1999157] - arm64: make use of is_compat_task instead of hardcoding this test (Mark Salter) [1999157] - arm64: kpti: ensure patched kernel text is fetched from PoU (Mark Salter) [1999157] - arm64: Clarify when cpu_enable() is called (Mark Salter) [1999157] - arm64: constify sys64_hook instances (Mark Salter) [1999157] - arm64: constify aarch64_insn_encoding_class[] (Mark Salter) [1999157] - arm64: constify icache_policy_str[] (Mark Salter) [1999157] - arm64: prefer __section from compiler_attributes.h (Mark Salter) [1999157] - arm64/ptrace: Fix typoes in sve_set() comment (Mark Salter) [1999157] - arm64: mm: print hexadecimal EC value in mem_abort_decode() (Mark Salter) [1999157] - ahci: thunderx2: Fix workaround to use new inline function (Mark Salter) [1999157] - arm64/prefetch: fix a -Wtype-limits warning (Mark Salter) [1999157] - arm64: Move TIF_* documentation to individual definitions (Mark Salter) [1999157] - arm64: mm: free the initrd reserved memblock in a aligned manner (Mark Salter) [1999157] - arm64: io: Relax implicit barriers in default I/O accessors (Mark Salter) [1999157] - arm64: Remove unused cpucap_multi_entry_cap_cpu_enable() (Mark Salter) [1999157] - arm64: sysreg: Remove unused and rotting SCTLR_ELx field definitions (Mark Salter) [1999157] - arm64: esr: Add ESR exception class encoding for trapped ERET (Mark Salter) [1999157] - arm64/kexec: Use consistent convention of initializing 'kxec_buf.mem' with KEXEC_BUF_MEM_UNKNOWN (Mark Salter) [1999157] - arm64: remove pointless __KERNEL__ guards (Mark Salter) [1999157] - arm64: Remove unused assembly macro (Mark Salter) [1999157] - arm64: memory: Cosmetic cleanups (Mark Salter) [1999157] - arm64: memory: Add comments to end of non-trivial #ifdef blocks (Mark Salter) [1999157] - arm64: memory: Simplify virt_to_page() implementation (Mark Salter) [1999157] - arm64: memory: Rewrite default page_to_virt()/virt_to_page() (Mark Salter) [1999157] - arm64: mm: Ignore spurious translation faults taken from the kernel (Mark Salter) [1999157] - arm64: mm: Add ISB instruction to set_pgd() (Mark Salter) [1999157] - arm64: tlb: Ensure we execute an ISB following walk cache invalidation (Mark Salter) [1999157] - Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}" (Mark Salter) [1999157] - arm64: pgtable: Implement p[mu]d_valid() and check in set_p[mu]d() (Mark Salter) [1999157] - arm64: Change the tagged_addr sysctl control semantics to only prevent the opt-in (Mark Salter) [1999157] - redhat/configs: Add CONFIG_ARM64_TAGGED_ADDR_ABI (Mark Salter) [1999157] - arm64: Introduce prctl() options to control the tagged user addresses ABI (Mark Salter) [1999157] - arm64: smp: Treat unknown boot failures as being 'stuck in kernel' (Mark Salter) [1999157] - arm64: smp: Don't enter kernel with NULL stack pointer or task struct (Mark Salter) [1999157] - arm64: map FDT as RW for early_init_dt_scan() (Mark Salter) [1999157] - arm64: ftrace: Ensure module ftrace trampoline is coherent with I-side (Mark Salter) [1999157] - arch: replace _BITUL() in kernel-space headers with BIT() (Mark Salter) [1999157] - arm64: move jump_label_init() before parse_early_param() (Mark Salter) [1999157] - arm64: don't use asm-generic/ptrace.h (Mark Salter) [1999157] - arm64: rename dump_instr as dump_kernel_instr (Mark Salter) [1999157] - arm64/mm: Drop [PTE|PMD]_TYPE_FAULT (Mark Salter) [1999157] - arm64: module: create module allocations without exec permissions (Mark Salter) [1999157] - acpi/arm64: ignore 5.1 FADTs that are reported as 5.0 (Mark Salter) [1999157] - arm64: remove redundant 'default n' from Kconfig (Mark Salter) [1999157] - arm64: mm: avoid redundant READ_ONCE(*ptep) (Mark Salter) [1999157] - arm64/mm: Document write abort detection from ESR (Mark Salter) [1999157] - arm64: Fix comment after #endif (Mark Salter) [1999157] - arm64: ptrace: add support for syscall emulation (Mark Salter) [1999157] - arm64: add PTRACE_SYSEMU{,SINGLESTEP} definations to uapi headers (Mark Salter) [1999157] - arm64/mm: Identify user instruction aborts (Mark Salter) [1999157] - arm64/mm: Change BUG_ON() to VM_BUG_ON() in [pmd|pud]_set_huge() (Mark Salter) [1999157] - arm64: kernel: use aff3 instead of aff2 in comment (Mark Salter) [1999157] - arm64/mm: Simplify protection flag creation for kernel huge mappings (Mark Salter) [1999157] - arm64/mm: Move PTE_VALID from SW defined to HW page table entry definitions (Mark Salter) [1999157] - arm64/sve: should not depend on (Mark Salter) [1999157] - arm64: ssbd: explicitly depend on (Mark Salter) [1999157] - ARM64: trivial: s/TIF_SECOMP/TIF_SECCOMP/ comment typo fix (Mark Salter) [1999157] - arm64: smp: Moved cpu_logical_map[] to smp.h (Mark Salter) [1999157] - arm64: use the correct function type for __arm64_sys_ni_syscall (Mark Salter) [1999157] - arm64: use the correct function type in SYSCALL_DEFINE0 (Mark Salter) [1999157] - arm64: fix syscall_fn_t type (Mark Salter) [1999157] - signal/arm64: Use force_sig not force_sig_fault for SIGKILL (Mark Salter) [1999157] - arm64: Fix the arm64_personality() syscall wrapper redirection (Mark Salter) [1999157] - arm64: Remove useless message during oops (Mark Salter) [1999157] - arm64: don't trash config with compat symbol if COMPAT is disabled (Mark Salter) [1999157] - arm64: assembler: Update comment above cond_yield_neon() macro (Mark Salter) [1999157] - arm64: Fix size of __early_cpu_boot_status (Mark Salter) [1999157] - arm64: mm: Remove pte_unmap_nested() (Mark Salter) [1999157] - arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable (Mark Salter) [1999157] - arm64: compat: Reduce address limit for 64K pages (Mark Salter) [1999157] - arm64: mmap: Ensure file offset is treated as unsigned (Mark Salter) [1999157] - arm64: instrument smp_{load_acquire,store_release} (Mark Salter) [1999157] - arm64: mm: check virtual addr in virt_to_page() if CONFIG_DEBUG_VIRTUAL=y (Mark Salter) [1999157] - arm64: ptrace: Add function argument access API (Mark Salter) [1999157] - arm64: compat: Reduce address limit (Mark Salter) [1999157] - arm64: Save and restore OSDLR_EL1 across suspend/resume (Mark Salter) [1999157] - arm64: Clear OSDLR_EL1 on CPU boot (Mark Salter) [1999157] - arm64: debug: Separate debug hooks based on target exception level (Mark Salter) [1999157] - arm64: debug: Remove meaningless comment (Mark Salter) [1999157] - arm64: debug: Rename addr parameter for non-watchpoint exception hooks (Mark Salter) [1999157] - arm64: Use defines instead of magic numbers (Mark Salter) [1999157] - arm64: cpu_ops: fix a leaked reference by adding missing of_node_put (Mark Salter) [1999157] - arm64: mm: Make show_pte() a static function (Mark Salter) [1999157] - arm64: setup min_low_pfn (Mark Salter) [1999157] - arm64: mm: fix incorrect assignment of 'max_mapnr' (Mark Salter) [1999157] - arm64: perf_event: Remove wrongfully used inline (Mark Salter) [1999157] - arm64: backtrace: Don't bother trying to unwind the userspace stack (Mark Salter) [1999157] - arm64: replace memblock_alloc_low with memblock_alloc (Mark Salter) [1999157] - arm64: kdump: no need to mark crashkernel pages manually PG_reserved (Mark Salter) [1999157] - arm64: kexec: no need to ClearPageReserved() (Mark Salter) [1999157] - arm64: mmu: drop paging_init comments (Mark Salter) [1999157] - arm64: debug: Ensure debug handlers check triggering exception level (Mark Salter) [1999157] - arm64: io: Hook up __io_par() for inX() ordering (Mark Salter) [1999157] - arm64: Rename get_thread_info() (Mark Salter) [1999157] - arm64: Remove documentation about TIF_USEDFPU (Mark Salter) [1999157] - arm64: uaccess: Cleanup get/put_user() (Mark Salter) [1999157] - arm64: Remove asm/memblock.h (Mark Salter) [1999157] - arm64: default NR_CPUS to 256 (Mark Salter) [1999157] - arm64: perf: remove misleading comment (Mark Salter) [1999157] - arm64: Relax GIC version check during early boot (Mark Salter) [1999157] - arm64, mm, efi: Account for GICv3 LPI tables in static memblock reserve table (Mark Salter) [1999157] - arm64: hibernate: Clean the __hyp_text to PoC after resume (Mark Salter) [1999157] - arm64: hyp-stub: Forbid kprobing of the hyp-stub (Mark Salter) [1999157] - arm64: kprobe: Always blacklist the KVM world-switch code (Mark Salter) [1999157] - kasan, arm64: remove redundant ARCH_SLAB_MINALIGN define (Mark Salter) [1999157] - arm64: asm-prototypes: Fix fat-fingered typo in comment (Mark Salter) [1999157] - arm64: compat: Hook up io_pgetevents() for 32-bit tasks (Mark Salter) [1999157] - arm64: compat: Don't pull syscall number from regs in arm_compat_syscall (Mark Salter) [1999157] - arm64: compat: Avoid sending SIGILL for unallocated syscall numbers (Mark Salter) [1999157] - arm64: kaslr: Reserve size of ARM64_MEMSTART_ALIGN in linear region (Mark Salter) [1999157] - arm64: smp: Fix compilation error (Mark Salter) [1999157] - arm64: select ACPI PCI code only when both features are enabled (Mark Salter) [1999157] - arm64: kaslr: print PHYS_OFFSET in dump_kernel_offset() (Mark Salter) [1999157] - arm64: sysreg: Use _BITUL() when defining register bits (Mark Salter) [1999157] - arm64: perf: Treat EXCLUDE_EL* bit definitions as unsigned (Mark Salter) [1999157] - arm64: percpu: Fix LSE implementation of value-returning pcpu atomics (Mark Salter) [1999157] - arm64: smp: Handle errors reported by the firmware (Mark Salter) [1999157] - arm64: smp: Rework early feature mismatched detection (Mark Salter) [1999157] - arm64: percpu: Rewrite per-cpu ops to allow use of LSE atomics (Mark Salter) [1999157] - arm64: crypto: add NEON accelerated XOR implementation (Mark Salter) [1999157] - arm64/neon: add workaround for ambiguous C99 stdint.h types (Mark Salter) [1999157] - arm64: ftrace: always pass instrumented pc in x0 (Mark Salter) [1999157] - arm64: ftrace: use GLOBAL() (Mark Salter) [1999157] - arm64: io: Ensure value passed to __iormb() is held in a 64-bit register (Mark Salter) [1999157] - arm64: acpi: Prepare for longer MADTs (Mark Salter) [1999157] - arm64: io: Ensure calls to delay routines are ordered against prior readX() (Mark Salter) [1999157] - arm64: perf: Fix typos in comment (Mark Salter) [1999157] - arm64: function_graph: Simplify with function_graph_enter() (Mark Salter) [1999157] - arm64: sysreg: fix sparse warnings (Mark Salter) [1999157] - arm64: mm: define NET_IP_ALIGN to 0 (Mark Salter) [1999157] - arm64: kprobe: make page to RO mode when allocate it (Mark Salter) [1999157] - arm64: kdump: fix small typo (Mark Salter) [1999157] - arm64: mm: Use #ifdef for the __PAGETABLE_P?D_FOLDED defines (Mark Salter) [1999157] - arm64: Trap WFI executed in userspace (Mark Salter) [1999157] - arm64/mm: Use ESR_ELx_FSC macro while decoding fault exception (Mark Salter) [1999157] - arm64: compat: Add CNTFRQ trap handler (Mark Salter) [1999157] - arm64: compat: Add CNTVCT trap handler (Mark Salter) [1999157] - arm64: compat: Add cp15_32 and cp15_64 handler arrays (Mark Salter) [1999157] - arm64: compat: Add condition code checks and IT advance (Mark Salter) [1999157] - arm64: Add decoding macros for CP15_32 and CP15_64 traps (Mark Salter) [1999157] - arm64: Remove unused VGA console support (Mark Salter) [1999157] - arm64: Kconfig: Remove ARCH_HAS_HOLES_MEMORYMODEL (Mark Salter) [1999157] - arm64/cpufeatures: Emulate MRS instructions by parsing ESR_ELx.ISS (Mark Salter) [1999157] - arm64/cpufeatures: Factorize emulate_mrs() (Mark Salter) [1999157] - arm64: fix for bad_mode() handler to always result in panic (Mark Salter) [1999157] - arm64: force_signal_inject: WARN if called from kernel context (Mark Salter) [1999157] - arm64: tlb: Adjust stride and type of TLBI according to mmu_gather (Mark Salter) [1999157] - arm64: percpu: Initialize ret in the default case (Mark Salter) [1999157] - arm64: mm: always enable CONFIG_HOLES_IN_ZONE (Mark Salter) [1999157] - arm64: Avoid calling stop_machine() when patching jump labels (Mark Salter) [1999157] - arm64: Drop asmlinkage qualifier from syscall_trace_{enter,exit} (Mark Salter) [1999157] - arm64: zero GPRs upon entry from EL0 (Mark Salter) [1999157] - arm64: don't reload GPRs after apply_ssbd (Mark Salter) [1999157] - arm64: consistently use unsigned long for thread flags (Mark Salter) [1999157] - arm64: insn: Don't fallback on nosync path for general insn patching (Mark Salter) [1999157] - arm64: remove unused COMPAT_PSR definitions (Mark Salter) [1999157] - kvm/arm: use PSR_AA32 definitions (Mark Salter) [1999157] - arm64: use PSR_AA32 definitions (Mark Salter) [1999157] - arm64: compat: map SPSR_ELx<->PSR for signals (Mark Salter) [1999157]- RDMA/qedr: Fix reporting max_{send/recv}_wr attrs (Kamal Heib) [2051524] - thermal/drivers/int340x: Fix RFIM mailbox write commands (Prarit Bhargava) [2040065] - thermal: int340x: Limit Kconfig to 64-bit (Prarit Bhargava) [2040065] - thermal: int340x: fix build on 32-bit targets (Prarit Bhargava) [2040065] - thermal/drivers/int340x: processor_thermal: Suppot 64 bit RFIM responses (Prarit Bhargava) [2040065] - PCI/MSI: Clear PCI_MSIX_FLAGS_MASKALL on error (Myron Stowe) [1911591] - PCI/MSI: Skip masking MSI-X on Xen PV (Myron Stowe) [1911591] - PCI/MSI: Mask all unused MSI-X entries (Myron Stowe) [1911591] - PCI/MSI: Enable and mask MSI-X early (Myron Stowe) [1911591] - genirq: Use rcu in kstat_irqs_usr() (Waiman Long) [2068445] - scsi: target: Allow changing dbroot if there are no registered devices (Maurizio Lombardi) [2073435] - powerpc/pseries: Fix use after free in remove_phb_dynamic() (Steve Best) [2073707] - sctp: use the correct skb for security_sctp_assoc_request (Xin Long) [2070915] - s390/mm: check 2KB-fragment page on release (Rafael Aquini) [2026578] - s390/mm: better annotate 2KB pagetable fragments handling (Rafael Aquini) [2026578] - s390/mm: fix 2KB pgtable release race (Rafael Aquini) [2026578] - s390/mm: fix phys vs virt confusion in pgtable allocation routines (Rafael Aquini) [2026578] - net: openvswitch: fix leak of nested actions (Eelco Chaudron) [2073538] - bpf: Let bpf_warn_invalid_xdp_action() report more info (Petr Oros) [2069671] - bpf: Do not WARN in bpf_warn_invalid_xdp_action() (Petr Oros) [2069671]- scsi: qedi: Fix failed disconnect handling (Chris Leech) [2071519] - scsi: iscsi: Fix unbound endpoint error handling (Chris Leech) [2071519] - scsi: iscsi: Fix conn cleanup and stop race during iscsid restart (Chris Leech) [2071519] - scsi: iscsi: Fix endpoint reuse regression (Chris Leech) [2071519] - scsi: iscsi: Release endpoint ID when its freed (Chris Leech) [2071519] - scsi: iscsi: Fix offload conn cleanup when iscsid restarts (Chris Leech) [2071519] - Revert "scsi: iscsi: Fix offload conn cleanup when iscsid restarts" (Chris Leech) [2071519] - scsi: iscsi: Speed up session unblocking and removal (Chris Leech) [2071519] - scsi: iscsi: Fix recovery and unblocking race (Chris Leech) [2071519] - scsi: iscsi: Unblock session then wake up error handler (Chris Leech) [2071519] - bnxt_en: make hw-tc-offload default to off (Ken Cox) [2005101] - bnxt_en: reject indirect blk offload when hw-tc-offload is off (Ken Cox) [2005101]- bpf, test_offload.py: Skip base maps without names (Yauheni Kaliuta) [2025787] - bnx2x: truncate value to original sizing (Manish Chopra) [2040271] - bnx2x: use correct format characters (Manish Chopra) [2040271] - bnx2x: fix built-in kernel driver load failure (Manish Chopra) [2040271] - bnx2x: fix driver load from initrd (Manish Chopra) [2040271] - bnx2x: Replace one-element array with flexible-array member (Manish Chopra) [2040271] - bnx2x: Remove useless DMA-32 fallback configuration (Manish Chopra) [2040271] - bnx2x: Invalidate fastpath HSI version for VFs (Manish Chopra) [2040271] - bnx2x: Utilize firmware 7.13.21.0 (Manish Chopra) [2040271] - bnx2x: constify static inline stub for dev_addr (Manish Chopra) [2040271] - net: bnx2x: fix variable dereferenced before check (Manish Chopra) [2040271] - ethernet: bnx2x: use eth_hw_addr_set() (Manish Chopra) [2040271] - bnx2x: Fix enabling network interfaces without VFs (Manish Chopra) [2040271] - bnx2x: fix an error code in bnx2x_nic_load() (Manish Chopra) [2040271] - bnx2x: remove unused variable 'cur_data_offset' (Manish Chopra) [2040271] - bnx2x: Remove the repeated declaration (Manish Chopra) [2040271] - bnx2x: Fix missing error code in bnx2x_iov_init_one() (Manish Chopra) [2040271] - net: broadcom: bnx2x: Fix wrong function name in comments (Manish Chopra) [2040271] - bnx2x: Remove redundant assignment to err (Manish Chopra) [2040271] - bnx2x: Use fallthrough pseudo-keyword (Manish Chopra) [2040271] - bnx2x: use true,false for bool variables (Manish Chopra) [2040271] - bnx2x: Fix some kernel-doc warnings (Manish Chopra) [2040271] - bnx2x: convert to new udp_tunnel_nic infra (Manish Chopra) [2040271] - bnx2x: Remove hw_reset_t function casts (Manish Chopra) [2040271] - bnx2x: Remove format_fw_ver_t function casts (Manish Chopra) [2040271] - bnx2x: Remove config_init_t function casts (Manish Chopra) [2040271] - bnx2x: Remove read_status_t function casts (Manish Chopra) [2040271] - bnx2x: Drop redundant callback function casts (Manish Chopra) [2040271] - bnx2x: Use napi_alloc_frag() (Manish Chopra) [2040271] - HID: intel-ish-hid: fix module device-id handling (Tony Camuso) [1921300] - mod_devicetable: fix kdocs for ishtp_device_id (Tony Camuso) [1921300] - HID: intel-ish-hid: add support for MODULE_DEVICE_TABLE() (Tony Camuso) [1921300] - platform/x86: isthp_eclite: only load for matching devices (Tony Camuso) [1921300] - platform/x86: Add Intel ishtp eclite driver (Tony Camuso) [1921300] - platform/x86: Add config file for Intel ishtp eclite driver (Tony Camuso) [1921300] - modpost: add guid_t type definition (Tony Camuso) [1921300] - squashfs: provide backing_dev_info in order to disable read-ahead (Brian Foster) [2025351] - mm: fix readahead_page_batch for retry entries (Brian Foster) [2025351] - iomap: convert from readpages to readahead (Brian Foster) [2025351] - fs: convert mpage_readpages to mpage_readahead (Brian Foster) [2025351] - mm: use memalloc_nofs_save in readahead path (Brian Foster) [2025351] - mm: document why we don't set PageReadahead (Brian Foster) [2025351] - mm: add page_cache_readahead_unbounded (Brian Foster) [2025351] - mm: move end_index check out of readahead loop (Brian Foster) [2025351] - mm: add readahead address space operation (Brian Foster) [2025351] - mm: put readahead pages in cache earlier (Brian Foster) [2025351] - mm: remove 'page_offset' from readahead loop (Brian Foster) [2025351] - mm: rename readahead loop variable to 'i' (Brian Foster) [2025351] - mm: rename various 'offset' parameters to 'index' (Brian Foster) [2025351] - mm: use readahead_control to pass arguments (Brian Foster) [2025351] - mm: add new readahead_control API (Brian Foster) [2025351] - mm: move readahead nr_pages check into read_pages (Brian Foster) [2025351] - mm: ignore return value of ->readpages (Brian Foster) [2025351] - mm: return void from various readahead functions (Brian Foster) [2025351] - mm: move readahead prototypes from mm.h (Brian Foster) [2025351] - mpage: mpage_readpages() should submit IO as read-ahead (Brian Foster) [2025351] - mpage: add argument structure for do_mpage_readpage() (Brian Foster) [2025351] - redhat/configs: enable CONFIG_AMD_PTDMA for x86_64 (Sudheesh Mavila) [2027231] - dmaengine: ptdma: handle the cases based on DMA is complete (Sudheesh Mavila) [2027231] - dmaengine: ptdma: fix concurrency issue with multiple dma transfer (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Fix the error handling path in pt_core_init() (Sudheesh Mavila) [2027231] - MAINTAINERS: Fix AMD PTDMA DRIVER entry (Sudheesh Mavila) [2027231] - dmaengine: ptdma: remove PT_OFFSET to avoid redefnition (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Add debugfs entries for PTDMA (Sudheesh Mavila) [2027231] - dmaengine: ptdma: register PTDMA controller as a DMA resource (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Initial driver for the AMD PTDMA (Sudheesh Mavila) [2027231] - isert: support for unsolicited NOPIN with no response (Maurizio Lombardi) [2035915] - iscsit: increment max_cmd_sn for isert on command release (Maurizio Lombardi) [2035915] - sched/debug: Remove mpol_get/put and task_lock/unlock from sched_show_numa (Phil Auld) [2062841] - sched/numa: initialize numa statistics when forking new task (Phil Auld) [2062841] - cgroup: Fix suspicious rcu_dereference_check() usage warning (Phil Auld) [2062841] - sched/cpuacct: Remove redundant RCU read lock (Phil Auld) [2062841] - sched/cpuacct: Optimize away RCU read lock (Phil Auld) [2062841] - sched/cpuacct: Fix charge percpu cpuusage (Phil Auld) [2062841] - sched: replace cpumask_weight with cpumask_empty where appropriate (Phil Auld) [2062841] - sched/rt: Plug rt_mutex_setprio() vs push_rt_task() race (Phil Auld) [2062841] - psi: fix possible trigger missing in the window (Phil Auld) [2062841] - sched: Avoid double preemption in __cond_resched_*lock*() (Phil Auld) [2062841] - sched/fair: Fix all kernel-doc warnings (Phil Auld) [2062841] - sched/rt: Try to restart rt period timer when rt runtime exceeded (Phil Auld) [2062841] - sched/fair: Fix detection of per-CPU kthreads waking a task (Phil Auld) [2062841] - locking: Remove rt_rwlock_is_contended(). (Phil Auld) [2062841] - sched: Trigger warning if ->migration_disabled counter underflows. (Phil Auld) [2062841] - sched/cpuacct: Make user/system times in cpuacct.stat more precise (Phil Auld) [2062841] - sched/cpuacct: Fix user/system in shown cpuacct.usage* (Phil Auld) [2062841] - cpuacct: Convert BUG_ON() to WARN_ON_ONCE() (Phil Auld) [2062841] - cputime, cpuacct: Include guest time in user time in cpuacct.stat (Phil Auld) [2062841] - sched/fair: Document the slow path and fast path in select_task_rq_fair (Phil Auld) [2062841] - drm/i915/ehl: Remove require_force_probe protection (Michel Dänzer) [2048674] - net/sched: fix initialization order when updating chain 0 head (Marcelo Ricardo Leitner) [2044711] - smp: Process pending softirqs in flush_smp_call_function_from_idle() (Waiman Long) [2066087] - irq_work: Optimize irq_work_single() (Waiman Long) [2066087] - irq_work: Cleanup (Waiman Long) [2066087] - smp, irq_work: Continue smp_call_function*() and irq_work*() integration (Waiman Long) [2066087] - irq_work: Define irq_work_single() on !CONFIG_IRQ_WORK too (Waiman Long) [2066087] - sched/headers: Split out open-coded prototypes into kernel/sched/smp.h (Waiman Long) [2066087] - sched: Replace rq::wake_list (Waiman Long) [2066087] - sched: Add rq::ttwu_pending (Waiman Long) [2066087] - irq_work, smp: Allow irq_work on call_single_queue (Waiman Long) [2066087] - smp: Optimize send_call_function_single_ipi() (Waiman Long) [2066087] - smp: Move irq_work_run() out of flush_smp_call_function_queue() (Waiman Long) [2066087] - smp: Optimize flush_smp_call_function_queue() (Waiman Long) [2066087] - sched: Fix smp_call_function_single_async() usage for ILB (Waiman Long) [2066087] - sched: Make scheduler_ipi inline (Waiman Long) [2066087] - sched: Clean up scheduler_ipi() (Waiman Long) [2066087] - sched/core: Remove rq.hrtick_csd_pending (Waiman Long) [2066087] - sched/fair: Clean up comment in nohz_idle_balance() (Waiman Long) [2066087] - context_tracking: Rename context_tracking_is_enabled() => context_tracking_enabled() (Waiman Long) [2066087] - context_tracking: Remove context_tracking_active() (Waiman Long) [2066087] - redhat: configs: Disable CONFIG_MPLS for s390x/zfcpdump (Guillaume Nault) [2051659] - KVM: PPC: Book3S HV: Add infrastructure to support 2nd DAWR (Laurent Vivier) [2059318] - KVM: PPC: Book3S HV: Rename current DAWR macros and variables (Laurent Vivier) [2059318] - uapi/linux/stddef.h: Add include guards (Michel Dänzer) [2072125] - stddef: Introduce struct_group() helper macro (Michel Dänzer) [2072125] - component: Add common helper for compare/release functions (Michel Dänzer) [2072125] - PCI/VGA: Move vgaarb to drivers/pci (Michel Dänzer) [2072125] - vgaarb: don't pass a cookie to vga_client_register (Michel Dänzer) [2072125] - vgaarb: remove the unused irq_set_state argument to vga_client_register (Michel Dänzer) [2072125] - vgaarb: provide a vga_client_unregister wrapper (Michel Dänzer) [2072125] - vgaarb: cleanup vgaarb.h (Michel Dänzer) [2072125] - vgaarb: move the kerneldoc for vga_set_legacy_decoding to vgaarb.c (Michel Dänzer) [2072125] - vgaarb: remove vga_conflicts (Michel Dänzer) [2072125] - vgaarb: remove VGA_DEFAULT_DEVICE (Michel Dänzer) [2072125] - lib/string_helpers: Consolidate string helpers implementation (Michel Dänzer) [2072125] - include/linux/string_helpers.h: add linux/string.h for strlen() (Michel Dänzer) [2072125] - kernel.h: split out container_of() and typeof_member() macros (Michel Dänzer) [2072125] - mm/vmscan: add sync_shrinkers function v3 (Michel Dänzer) [2072125] - lib: devres: Add managed arch_io_reserve_memtype_wc() (Michel Dänzer) [2072125] - lib: devres: Add managed arch_phys_wc_add() (Michel Dänzer) [2072125] - kernel/locking: Use a pointer in ww_mutex_trylock(). (Michel Dänzer) [2072125] - locking/ww-mutex: Fix uninitialized use of ret in test_aa() (Michel Dänzer) [2072125] - kernel/locking: Add context to ww_mutex_trylock() (Michel Dänzer) [2072125] - locking/lockdep: Provide lockdep_assert{,_once}() helpers (Michel Dänzer) [2072125] - mm: gup: pack has_pinned in MMF_HAS_PINNED (Chris von Recklinghausen) [2073217] - mm: gup: allow FOLL_PIN to scale in SMP (Chris von Recklinghausen) [2073217] - CI: Drop baseline runs (Veronika Kabatova)- powerpc/xive: Export XIVE IPI information for online-only processors. (Steve Best) [2038448] - netfilter: conntrack: fix reading nf_conntrack_buckets (Phil Sutter) [2053628] - netfilter: nf_tables: initialize registers in nft_do_chain() (Florian Westphal) [2067966] {CVE-2022-1016} - x86/sev-es: Use __put_user()/__get_user() for data accesses (Vitaly Kuznetsov) [2063719] - x86/sev-es: Handle string port IO to kernel memory properly (Vitaly Kuznetsov) [2063719] - x86/sev: Return an error on a returned non-zero SW_EXITINFO1[31:0] (Vitaly Kuznetsov) [2063719] - x86/sev-es: Use __copy_from_user_inatomic() (Vitaly Kuznetsov) [2063719] - x86/sev-es: Check regs->sp is trusted before adjusting #VC IST stack (Vitaly Kuznetsov) [2063719] - x86/sev-es: Introduce ip_within_syscall_gap() helper (Vitaly Kuznetsov) [2063719] - x86/sev-es: Forward page-faults which happen during emulation (Vitaly Kuznetsov) [2063719] - x86/sev-es: Don't return NULL from sev_es_get_ghcb() (Vitaly Kuznetsov) [2063719] - x86/sev-es: Invalidate the GHCB after completing VMGEXIT (Vitaly Kuznetsov) [2063719] - x86/sev-es: Move sev_es_put_ghcb() in prep for follow on patch (Vitaly Kuznetsov) [2063719] - x86/sev: Fix stack type check in vc_switch_off_ist() (Vitaly Kuznetsov) [2063719] - x86/sev: Allow #VC exceptions on the VC2 stack (Vitaly Kuznetsov) [2063719] - x86/sev-es: Enable #VC specific entry point for real (Vitaly Kuznetsov) [2063719] - x86/cpu: Use pinning mask for CR4 bits needing to be 0 (Vitaly Kuznetsov) [2063719] - x86/asm: Move native_write_cr0/4() out of line (Vitaly Kuznetsov) [2063719] - x86/asm: Pin sensitive CR4 bits (Vitaly Kuznetsov) [2063719] - x86/asm: Pin sensitive CR0 bits (Vitaly Kuznetsov) [2063719] - powerpc/mce: Modify the real address error logging messages (Desnes A. Nunes do Rosario) [2068761] - selftests/powerpc: Add test for real address error handling (Desnes A. Nunes do Rosario) [2068761] - powerpc/pseries: Parse control memory access error (Desnes A. Nunes do Rosario) [2068761] - powerpc/pseries/mce: Fix a typo in error type assignment (Desnes A. Nunes do Rosario) [2068761] - netfilter: nf_tables: validate registers coming from userspace. (Florian Westphal) [2065357] {CVE-2022-1015} - PCI: hv: Propagate coherence from VMbus device to PCI device (Vitaly Kuznetsov) [2068429] - Drivers: hv: vmbus: Propagate VMbus coherence to each VMbus device (Vitaly Kuznetsov) [2068429] - Revert "xfs: actually bump warning counts when we send warnings" (Carlos Maiolino) [2059262] - perf/x86/intel: Add a quirk for the calculation of the number of counters on Alder Lake (Michael Petlan) [2039996] - perf stat: Support --cputype option for hybrid events (Michael Petlan) [1971941] - perf/x86/intel/uncore: Add IMC uncore support for ADL (Michael Petlan) [2042217] - tipc: fix kernel panic when enabling bearer (Xin Long) [2061233] - media: v4l: ioctl: Fix memory leak in video_usercopy (Jarod Wilson) [1954604] {CVE-2021-30002}- esp6: fix check on ipv6_skip_exthdr's return value (Sabrina Dubroca) [2054075] - scsi: iscsi: Fix nop handling during conn recovery (Chris Leech) [2069969] - scsi: iscsi: Merge suspend fields (Chris Leech) [2069969] - scsi: iscsi: Fix offload conn cleanup when iscsid restarts (Chris Leech) [2069969] - scsi: iscsi: Move iscsi_ep_disconnect (Chris Leech) [2069969] - CI: Remove deprecated option (Veronika Kabatova)- redhat: add new KUNIT tests to mod-internal.list (Nico Pache) [2065444] - kasan: test: prevent cache merging in kmem_cache_double_destroy (Nico Pache) [2065444] - kasan: test: fix compatibility with FORTIFY_SOURCE (Nico Pache) [2065444] - kasan: test: add test case for double-kmem_cache_destroy() (Nico Pache) [2065444] - kasan: add ability to detect double-kmem_cache_destroy() (Nico Pache) [2065444] - kasan: test: add globals left-out-of-bounds test (Nico Pache) [2065444] - kasan: test: silence intentional read overflow warnings (Nico Pache) [2065444] - kasan: test: bypass __alloc_size checks (Nico Pache) [2065444] - kasan: test: add memcpy test that avoids out-of-bounds write (Nico Pache) [2065444] - kasan: test: clean up ksize_uaf (Nico Pache) [2065444] - kasan: test: disable kmalloc_memmove_invalid_size for HW_TAGS (Nico Pache) [2065444] - kasan: test: only do kmalloc_uaf_memset for generic mode (Nico Pache) [2065444] - kasan: test: avoid corrupting memory via memset (Nico Pache) [2065444] - kasan: test: avoid writing invalid memory (Nico Pache) [2065444] - kasan: test: rework kmalloc_oob_right (Nico Pache) [2065444] - Documentation: kunit: remove claims that kunit is a mocking framework (Nico Pache) [2065444] - kunit: Reset suite count after running tests (Nico Pache) [2065444] - kunit: drop assumption in kunit-log-test about current suite (Nico Pache) [2065444] - string.h: Introduce memset_startat() for wiping trailing members and padding (Nico Pache) [2065444] - string.h: Introduce memset_after() for wiping trailing members/padding (Nico Pache) [2065444] - lib: Introduce CONFIG_MEMCPY_KUNIT_TEST (Nico Pache) [2065444] - kunit: fix kernel-doc warnings due to mismatched arg names (Nico Pache) [2065444] - kunit: fix reference count leak in kfree_at_end (Nico Pache) [2065444] - kunit: Print test statistics on failure (Nico Pache) [2065444] - fat: Add KUnit tests for checksums and timestamps (Nico Pache) [2065444] - kunit: add unit test for filtering suites by names (Nico Pache) [2065444] - kunit: test: Add example tests which are always skipped (Nico Pache) [2065444] - kunit: Support skipped tests (Nico Pache) [2065444] - redhat: remove TEST_LIST_SORT config definitions (Nico Pache) [2065444] - lib/test: convert test_sort.c to use KUnit (Nico Pache) [2065444] - lib/test: convert lib/test_list_sort.c to use KUnit (Nico Pache) [2065444] - kunit: introduce kunit_kmalloc_array/kunit_kcalloc() helpers (Nico Pache) [2065444] - kunit: Add gnu_printf specifiers (Nico Pache) [2065444] - lib/cmdline_kunit: Remove a cast which are no-longer required (Nico Pache) [2065444] - kernel/sysctl-test: Remove some casts which are no-longer required (Nico Pache) [2065444] - device property: Remove some casts in property-entry-test (Nico Pache) [2065444] - Documentation: kunit: Clean up some string casts in examples (Nico Pache) [2065444] - kunit: Assign strings to 'const char*' in STREQ assertions (Nico Pache) [2065444] - kunit: Do not typecheck binary assertions (Nico Pache) [2065444] - Documentation: kunit: document support for QEMU in kunit_tool (Nico Pache) [2065444] - kunit: Add 'kunit_shutdown' option (Nico Pache) [2065444] - Documentation: kunit: Update kunit_tool page (Nico Pache) [2065444] - Documentation: kunit: add tips for running KUnit (Nico Pache) [2065444] - slub: remove resiliency_test() function (Nico Pache) [2065444] - mm/slub, kunit: add a KUnit test for SLUB debugging functionality (Nico Pache) [2065444] - kunit: make test->lock irq safe (Nico Pache) [2065444] - docs: dev-tools: kunit: avoid using ReST :doc:`foo` markup (Nico Pache) [2065444] - docs: dev-tools: kunit: don't use a table for docs name (Nico Pache) [2065444] - kunit: make KUNIT_EXPECT_STREQ() quote values, don't print literals (Nico Pache) [2065444] - kunit: Match parenthesis alignment to improve code readability (Nico Pache) [2065444] - openvswitch: always update flow key after nat (Aaron Conole) [2066885] - md: initialize percpu refcounters using PERCU_REF_ALLOW_REINIT (Nigel Croxon) [2032272] - net: fix a memleak when uncloning an skb dst and its metadata (Hangbin Liu) [2068355] - net: do not keep the dst cache when uncloning an skb dst and its metadata (Hangbin Liu) [2068355] - net: phy: at803x: move page selection fix to config_init (Petr Oros) [2021822] - net: phylink: rejig SFP interface selection in ksettings_set() (Petr Oros) [2021822] - ptp: dp83640: don't define PAGE0 (Petr Oros) [2021822] - net: phylink: Update SFP selected interface on advertising changes (Petr Oros) [2021822] - net: phy: marvell10g: fix broken PHY interrupts for anyone after us in the driver probe list (Petr Oros) [2021822] - net: phy: marvell: Add WAKE_PHY support to WOL event (Petr Oros) [2021822] - net: phy: micrel: Fix link detection on ksz87xx switch" (Petr Oros) [2021822] - net: phy: micrel: Fix detection of ksz87xx switch (Petr Oros) [2021822] - net: phy: broadcom: re-add check for PHY_BRCM_DIS_TXCRXC_NOENRGY on the BCM54811 PHY (Petr Oros) [2021822] - net: phy: at803x: simplify custom phy id matching (Petr Oros) [2021822] - net: phy: intel-xway: Add RGMII internal delay configuration (Petr Oros) [2021822] - net: phylink: cleanup ksettings_set (Petr Oros) [2021822] - net: phylink: add phy change pause mode debug (Petr Oros) [2021822] - net: phy: add API to read 802.3-c45 IDs (Petr Oros) [2021822] - net: phy: Fix data type in DP83822 dp8382x_disable_wol() (Petr Oros) [2021822] - net: phy: marvell10g: enable WoL for 88X3310 and 88E2110 (Petr Oros) [2021822] - net: phy: marvell10g: fix differentiation of 88X3310 from 88X3340 (Petr Oros) [2021822] - net: phy: replace if-else statements with switch (Petr Oros) [2021822] - net: phy: remove unnecessary line continuation (Petr Oros) [2021822] - net: phy: print the function name by __func__ instead of an fixed string (Petr Oros) [2021822] - net: phy: fix formatting issues with braces (Petr Oros) [2021822] - net: phy: fix space alignment issues (Petr Oros) [2021822] - net: phy: delete repeated words of comments (Petr Oros) [2021822] - net: phy: correct format of block comments (Petr Oros) [2021822] - net: phy: change format of some declarations (Petr Oros) [2021822] - net: phy: micrel: remove redundant assignment to pointer of_node (Petr Oros) [2021822] - net: phy: dp83867: perform soft reset and retain established link (Petr Oros) [2021822] - net: phy: do not print dump stack if device was removed (Petr Oros) [2021822] - net: phy: probe for C45 PHYs that return PHY ID of zero in C22 space (Petr Oros) [2021822] - net: phy: marvell: use phy_modify_changed() for marvell_set_polarity() (Petr Oros) [2021822] - net: phy: Fix inconsistent indenting (Petr Oros) [2021822] - net: mdiobus: get rid of a BUG_ON() (Petr Oros) [2021822] - net: phy: marvell: enable downshift by default (Petr Oros) [2021822] - net: phy: marvell: add downshift support for M88E1240 (Petr Oros) [2021822] - net: phy: marvell: fix m88e1111_set_downshift (Petr Oros) [2021822] - net: phy: marvell: fix m88e1011_set_downshift (Petr Oros) [2021822] - net: phy: marvell: don't use empty switch default case (Petr Oros) [2021822] - net: phy: intel-xway: enable integrated led functions (Petr Oros) [2021822] - net: phy: at803x: fix probe error if copper page is selected (Petr Oros) [2021822] - net: phy: marvell: add support for Amethyst internal PHY (Petr Oros) [2021822] - net: dsa: mv88e6xxx: simulate Amethyst PHY model number (Petr Oros) [2021822] - net: phy: marvell: use assignment by bitwise AND operator (Petr Oros) [2021822] - net: phy: marvell: fix HWMON enable register for 6390 (Petr Oros) [2021822] - net: phy: marvell: refactor HWMON OOP style (Petr Oros) [2021822] - net: phy: at803x: select correct page on config init (Petr Oros) [2021822] - net: phy: marvell: fix detection of PHY on Topaz switches (Petr Oros) [2021822] - net: phy: marvell10g: change module description (Petr Oros) [2021822] - net: phy: marvell10g: differentiate 88E2110 vs 88E2111 (Petr Oros) [2021822] - net: phy: add constants for 2.5G and 5G speed in PCS speed register (Petr Oros) [2021822] - net: phy: marvell10g: fix driver name for mv88e2110 (Petr Oros) [2021822] - net: phy: marvell10g: add separate structure for 88X3340 (Petr Oros) [2021822] - net: phy: marvell10g: support other MACTYPEs (Petr Oros) [2021822] - net: phy: marvell10g: store temperature read method in chip strucutre (Petr Oros) [2021822] - net: phy: marvell10g: check for correct supported interface mode (Petr Oros) [2021822] - net: phy: marvell10g: support all rate matching modes (Petr Oros) [2021822] - net: phy: marvell10g: add MACTYPE definitions for 88E21xx (Petr Oros) [2021822] - net: phy: marvell10g: add all MACTYPE definitions for 88X33x0 (Petr Oros) [2021822] - net: phy: marvell10g: indicate 88X33x0 only port control registers (Petr Oros) [2021822] - net: phy: marvell10g: allow 5gbase-r and usxgmii (Petr Oros) [2021822] - net: phy: marvell10g: fix typo (Petr Oros) [2021822] - net: phy: marvell10g: rename register (Petr Oros) [2021822] - net: fec: use mac-managed PHY PM (Petr Oros) [2021822] - net: phy: broadcom: Add statistics for all Gigabit PHYs (Petr Oros) [2021822] - net: phy: broadcom: Only advertise EEE for supported modes (Petr Oros) [2021822] - net: phy: remove repeated word (Petr Oros) [2021822] - net: phy: Correct function name mdiobus_register_board_info() in comment (Petr Oros) [2021822] - net: phy: lan87xx: fix access to wrong register of LAN87xx (Petr Oros) [2021822] - net: phy: at803x: remove at803x_aneg_done() (Petr Oros) [2021822] - net: phy: broadcom: Fix RGMII delays for BCM50160 and BCM50610M (Petr Oros) [2021822] - docs: networking: phy: Improve placement of parenthesis (Petr Oros) [2021822] - net: phy: broadcom: Add power down exit reset state delay (Petr Oros) [2021822] - net: phy: make mdio_bus_phy_suspend/resume as __maybe_unused (Petr Oros) [2021822] - net: mdio: Remove of_phy_attach() (Petr Oros) [2021822] - net: phy: broadcom: Do not modify LED configuration for SFP module PHYs (Petr Oros) [2021822] - net: phy: Add is_on_sfp_module flag and phy_on_sfp helper (Petr Oros) [2021822] - net: phy: broadcom: Set proper 1000BaseX/SGMII interface mode for BCM54616S (Petr Oros) [2021822] - net: phy: marvell: Ensure SGMII auto-negotiation is enabled for 88E1111 (Petr Oros) [2021822] - net: phylink: Add 5gbase-r support (Petr Oros) [2021822] - net: phy: Add 5GBASER interface mode (Petr Oros) [2021822] - net: phy: rename PHY_IGNORE_INTERRUPT to PHY_MAC_INTERRUPT (Petr Oros) [2021822] - net: phy: at803x: add MDIX support to AR8031/33 (Petr Oros) [2021822] - net: phy: broadcom: Allow BCM54210E to configure APD (Petr Oros) [2021822] - net: phy: broadcom: Remove unused flags (Petr Oros) [2021822] - net: phy: broadcom: Avoid forward for bcm54xx_config_clock_delay() (Petr Oros) [2021822] - net: phy: consider that suspend2ram may cut off PHY power (Petr Oros) [2021822] - net: phy: bcm7xxx: Add an entry for BCM72116 (Petr Oros) [2021822] - net: mdiobus: Remove WARN_ON_ONCE(in_interrupt()) (Petr Oros) [2021822] - net: Use kobj_to_dev() API (Petr Oros) [2021822] - net: phy: Fixup kernel doc (Petr Oros) [2021822] - net: phy: bcm7xxx: Add an entry for BCM72113 (Petr Oros) [2021822] - net: phy: mchp: Add support for LAN8814 QUAD PHY (Petr Oros) [2021822] - net: dp83867: Fix WoL SecureOn password (Petr Oros) [2021822] - net: phy: at803x: constify static regulator_ops (Petr Oros) [2021822] - net: phy: marvell10g: support XFI rate matching mode (Petr Oros) [2021822] - net: switch to using PHY_INTERFACE_MODE_10GBASER rather than 10GKR (Petr Oros) [2021822] - netfilter: conntrack: Add and use nf_ct_set_auto_assign_helper_warned() (Phil Sutter) [1896241] - net: do not reuse skbuff allocated from skbuff_fclone_cache in the skb cache (Ivan Vecera) [2069781] - skbuff: queue NAPI_MERGED_FREE skbs into NAPI cache instead of freeing (Ivan Vecera) [2069781] - skbuff: allow to use NAPI cache from __napi_alloc_skb() (Ivan Vecera) [2069781] - skbuff: allow to optionally use NAPI cache from __alloc_skb() (Ivan Vecera) [2069781] - skbuff: introduce {,__}napi_build_skb() which reuses NAPI cache heads (Ivan Vecera) [2069781] - skbuff: move NAPI cache declarations upper in the file (Ivan Vecera) [2069781] - skbuff: remove __kfree_skb_flush() (Ivan Vecera) [2069781] - skbuff: use __build_skb_around() in __alloc_skb() (Ivan Vecera) [2069781] - skbuff: simplify __alloc_skb() a bit (Ivan Vecera) [2069781] - skbuff: make __build_skb_around() return void (Ivan Vecera) [2069781] - skbuff: simplify kmalloc_reserve() (Ivan Vecera) [2069781] - skbuff: move __alloc_skb() next to the other skb allocation functions (Ivan Vecera) [2069781] - net: Introduce {netdev,napi}_alloc_frag_align() (Ivan Vecera) [2069781] - mm: page_frag: Introduce page_frag_alloc_align() (Ivan Vecera) [2069781] - perf tests attr: Add missing topdown metrics events (Michael Petlan) [1986275] - cifs: Return correct error code from smb2_get_enc_key (Ronnie Sahlberg) [2058369] - ipv4: avoid using shared IP generator for connected sockets (Paolo Abeni) [2062427] {CVE-2020-36516} - crypto: cryptd - Fix skcipher instance memory leak (Vladis Dronov) [2004344] - EVM: fix the evm= __setup handler return value (Bruno Meneguele) [2063900] - integrity: include keyring name for unknown key request (Bruno Meneguele) [2063900] - ima: limit secure boot feedback scope for appraise (Bruno Meneguele) [2063900] - integrity: invalid kernel parameters feedback (Bruno Meneguele) [2063900] - ima: add check for enforced appraise option (Bruno Meneguele) [2063900] - ima: Allow template selection with ima_template[_fmt]= after ima_hash= (Bruno Meneguele) [2063900] - ima: Remove ima_policy file before directory (Bruno Meneguele) [2063900] - integrity: check the return value of audit_log_start() (Bruno Meneguele) [2063900] - ima: fix deadlock when traversing "ima_default_rules". (Bruno Meneguele) [2063900] - evm: Introduce evm_revalidate_status() (Bruno Meneguele) [2063900] - evm: Refuse EVM_ALLOW_METADATA_WRITES only if an HMAC key is loaded (Bruno Meneguele) [2063900] - evm: Load EVM key in ima_load_x509() to avoid appraisal (Bruno Meneguele) [2063900] - evm: Execute evm_inode_init_security() only when an HMAC key is loaded (Bruno Meneguele) [2063900] - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum (Bruno Meneguele) [2063900] - RHEL-only: KVM: selftests: Fix AArch64 compilation (Andrew Jones) [2071997] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Andrew Jones) [2071997] - RHEL-only: KVM: selftests: Remove unused modes (Andrew Jones) [2071997]- netfilter: nf_tables_offload: incorrect flow offload action array size (Florian Westphal) [2056728] {CVE-2022-25636} - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in nft_flow_rule_create (Florian Westphal) [2056728] - KVM: SVM: Allow AVIC support on system w/ physical APIC ID > 255 (Bandan Das) [2033068] - PCI/ACPI: Fix acpi_pci_osc_control_set() kernel-doc comment (Mark Langsdorf) [2049209] - PCI/ACPI: Check for _OSC support in acpi_pci_osc_control_set() (Mark Langsdorf) [2049209] - PCI/ACPI: Move _OSC query checks to separate function (Mark Langsdorf) [2049209] - PCI/ACPI: Move supported and control calculations to separate functions (Mark Langsdorf) [2049209] - PCI/ACPI: Remove OSC_PCI_SUPPORT_MASKS and OSC_PCI_CONTROL_MASKS (Mark Langsdorf) [2049209] - kabi: Adding symbol blkdev_get_by_dev (fs/block_dev.c) (Čestmír Kalina) [2010296] - kabi: Adding symbol thaw_bdev (fs/block_dev.c) (Čestmír Kalina) [2010296] - kabi: Adding symbol freeze_bdev (fs/block_dev.c) (Čestmír Kalina) [2010296] - s390/cio: make ccw_device_dma_* more robust (Thomas Huth) [2066709] - perf/x86/intel/uncore: Make uncore_discovery clean for 64 bit addresses (Michael Petlan) [2069237] - redhat: switch secureboot kernel image signing to release keys (Augusto Caringi) - ice: xsk: Stop Rx processing when ntc catches ntu (Ivan Vecera) [2069082] - ice: xsk: Fix indexing in ice_tx_xsk_pool() (Ivan Vecera) [2069082] - ice: Fix kernel crash in XDP scenario (Ivan Vecera) [2069082]- do_wait: make PIDTYPE_PID case O(1) instead of O(n) (Nico Pache) [2055973] - n_tty: wake up poll(POLLRDNORM) on receiving data (Rafael Aquini) [2033338] - powerpc/papr_scm: Implement initial support for injecting smart errors (Steve Best) [1987103] - mm: memcg: synchronize objcg lists with a dedicated spinlock (Rafael Aquini) [2064847] - kasan: fix quarantine conflicting with init_on_free (Rafael Aquini) [2064847] - mm/hwpoison: clear MF_COUNT_INCREASED before retrying get_any_page() (Rafael Aquini) [2064847] - mm/memcg: relocate mod_objcg_mlstate(), get_obj_stock() and put_obj_stock() (Rafael Aquini) [2064847] - mm: move node_reclaim_distance to fix NUMA without SMP (Rafael Aquini) [2064847] - vmalloc: choose a better start address in vm_area_register_early() (Rafael Aquini) [2064847] - mm/vmalloc: check various alignments when debugging (Rafael Aquini) [2064847] - mm/vmalloc: don't allow VM_NO_GUARD on vmap() (Rafael Aquini) [2064847] - mm, thp: bail out early in collapse_file for writeback page (Rafael Aquini) [2064847] - mm/sparse: set SECTION_NID_SHIFT to 6 (Rafael Aquini) [2064847] - mm/memory_hotplug: fix kerneldoc comment for __remove_memory (Rafael Aquini) [2064847] - mm: fix memory_failure() handling of dax-namespace metadata (Rafael Aquini) [2064847] - mm: teach pfn_to_online_page() about ZONE_DEVICE section collisions (Rafael Aquini) [2064847] - mm: teach pfn_to_online_page() to consider subsection validity (Rafael Aquini) [2064847] - mm: move pfn_to_online_page() out of line (Rafael Aquini) [2064847] - Revert "mm: use early_pfn_to_nid in page_ext_init" (Rafael Aquini) [2064847] - x86/mm: Fix kern_addr_valid() to cope with existing but not present entries (Rafael Aquini) [2064847] - powerpc/book3s64: Fix error handling in mm_iommu_do_alloc() (Rafael Aquini) [2064847] - powerpc/pkeys: remove unused pkey_allows_readwrite (Rafael Aquini) [2064847] - x86/hyperv: Output host build info as normal Windows version number (Vitaly Kuznetsov) [2060700] - powerpc/smp: Update cpu_core_map on all PowerPc systems (Diego Domingos) [2064104] - crypto: ccp - ccp_dmaengine_unregister release dma channels (Vladis Dronov) [2015374] - crypto: ccp - remove redundant ret variable (Vladis Dronov) [2015374] - crypto: ccp - Ensure psp_ret is always init'd in __sev_platform_init_locked() (Vladis Dronov) [2015374] - crypto: ccp - remove unneeded semicolon (Vladis Dronov) [2015374] - crypto: ccp - Add SEV_INIT_EX support (Vladis Dronov) [2015374] - crypto: ccp - Add psp_init_on_probe module parameter (Vladis Dronov) [2015374] - crypto: ccp - Refactor out sev_fw_alloc() (Vladis Dronov) [2015374] - crypto: ccp - Move SEV_INIT retry for corrupted data (Vladis Dronov) [2015374] - crypto: ccp - Add SEV_INIT rc error logging on init (Vladis Dronov) [2015374] - crypto: ccp - no need to initialise statics to 0 (Vladis Dronov) [2015374] - ccp: ccp - add support for Green Sardine (Vladis Dronov) [2015374] - crypto: ccp - fix command queuing to TEE ring buffer (Vladis Dronov) [2015374] - crypto: ccp - reduce tee command status polling interval from 5ms to 1ms (Vladis Dronov) [2015374] - crypto: ccp - provide in-kernel API to submit TEE commands (Vladis Dronov) [2015374] - crypto: ccp - add TEE support for Raven Ridge (Vladis Dronov) [2015374] - crypto: ccp - check whether PSP supports SEV or TEE before initialization (Vladis Dronov) [2015374] - ice: Allow to pass VLAN tagged packets to VF when port VLAN is configured (Ivan Vecera) [2071027] - tools headers UAPI: Sync linux/perf_event.h with the kernel sources (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix power_pmu_disable to call clear_pmi_irq_pending only if PMI is pending (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Only define power_pmu_wants_prompt_pmi() for CONFIG_PPC64 (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Add data source encodings for power10 platform (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Add encodings to represent data based on newer composite PERF_MEM_LVLNUM* fields (Desnes A. Nunes do Rosario) [1992813] - perf: Add new macros for mem_hops field (Desnes A. Nunes do Rosario) [1992813] - tools headers UAPI: Add new macros for mem_hops field to perf_event.h (Desnes A. Nunes do Rosario) [1992813] - bpf: Remove config check to enable bpf support for branch records (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Update global/local variants for p_stage_cyc (Desnes A. Nunes do Rosario) [1992813] - perf sort: Include global and local variants for p_stage_cyc sort key (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'p_stage_cyc' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'ins_lat' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'weight' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf vendor events power10: Add metric events JSON file for power10 platform (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Add support to expose instruction and data address registers as part of extended regs (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Refactor the code definition of perf reg extended mask in tools side header file (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Expose instruction and data address registers as part of extended regs (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Refactor the code definition of perf reg extended mask (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix data source encodings for L2.1 and L3.1 accesses (Desnes A. Nunes do Rosario) [1992813] - tools/perf: Add mem_hops field in perf_mem_data_src structure (Desnes A. Nunes do Rosario) [1992813] - perf: Add mem_hops field in perf_mem_data_src structure (Desnes A. Nunes do Rosario) [1992813] - perf: Add comment about current state of PERF_MEM_LVL_* namespace and remove an extra line (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix the check for SIAR value (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Drop the case of returning 0 as instruction pointer (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Use stack siar instead of mfspr (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf/hv-gpci: Fix counter value parsing (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix PMU callbacks to clear pending PMI before resetting an overflown PMC (Desnes A. Nunes do Rosario) [1992813] - CI: Remove deprecated option (Veronika Kabatova)- bareudp: use ipv6_mod_enabled to check if IPv6 enabled (Hangbin Liu) [2063813] - powerpc/mm/numa: skip NUMA_NO_NODE onlining in parse_numa_properties() (Diego Domingos) [2048218] - redhat: copy rpminspect to dist-git repo (Jarod Wilson) - configs: enable CONFIG_RMI4_F3A (Benjamin Tissoires) [2067219] - Input: synaptics-rmi4 - add support for F3A (Benjamin Tissoires) [2067219] - RDMA/cma: Do not change route.addr.src_addr.ss_family (Kamal Heib) [2032074] {CVE-2021-4028} - drm/i915/adl_s: Remove require_force_probe protection (Michel Dänzer) [2025896] - drm/i915/adl_s: Update ADL-S PCI IDs (Michel Dänzer) [2025896] - drm/i915: Limit Wa_22010178259 to affected platforms (Michel Dänzer) [2025896] - drm/i915/adl_s: Fix dma_mask_size to 39 bit (Michel Dänzer) [2025896] - drm/i915/dmc: Update DMC to v2.14 on ADL-P (Michel Dänzer) [2060051] - drm/i915: Update memory bandwidth formulae (Michel Dänzer) [2060051] - drm/i915/fb: Fold modifier CCS type/tiling attribute to plane caps (Michel Dänzer) [2060051] - drm/i915/fb: Don't store bitmasks in the intel_plane_caps enum (Michel Dänzer) [2060051] - drm/i915/adl_p: Add ddc pin mapping (Michel Dänzer) [2060051] - iommu/amd: Fix I/O page table memory leak (Jerry Snitselaar) [2053210] - iommu/amd: Recover from event log overflow (Jerry Snitselaar) [2053210]- redhat: tune rpminspect w/additions from rhel9 branch (Jarod Wilson) - powerpc/pseries/ddw: Revert "Extend upper limit for huge DMA window for persistent memory" (Steve Best) [2056080] - x86/tsc: Disable clocksource watchdog for TSC on qualified platorms (Prarit Bhargava) [1971939] - x86/tsc: Add a timer to make sure TSC_adjust is always checked (Prarit Bhargava) [1971939] - x86/hpet: Use another crystalball to evaluate HPET usability (Prarit Bhargava) [1971939] - x86/tsc: Respect tsc command line paraemeter for clocksource_tsc_early (Prarit Bhargava) [1971939] - [s390] s390/pci: fix zpci_zdev_put() on reserve (Claudio Imbrenda) [2039185] - [s390] s390/pci: fix use after free of zpci_dev (Claudio Imbrenda) [2039185] - [s390] s390/cio: make ccw_device_dma_* more robust (Claudio Imbrenda) [2039186] - [s390] s390/pci: add s390_iommu_aperture kernel parameter (Claudio Imbrenda) [2039181] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Paul Lai) [1918929] - kvm: selftests: sync uapi/linux/kvm.h with Linux header (Paul Lai) [1918929] - kvm: selftests: conditionally build vm_xsave_req_perm() (Paul Lai) [1918929] - x86/kvm/fpu: Remove kvm_vcpu_arch.guest_supported_xcr0 (Paul Lai) [1918929] - x86/kvm/fpu: Limit guest user_xfeatures to supported bits of XCR0 (Paul Lai) [1918929] - KVM: x86/cpuid: Exclude unpermitted xfeatures sizes at KVM_GET_SUPPORTED_CPUID (Paul Lai) [1918929] - KVM: x86: Move CPUID.(EAX=0x12,ECX=1) mangling to __kvm_update_cpuid_runtime() (Paul Lai) [1918929] - KVM: x86/cpuid: Clear XFD for component i if the base feature is missing (Paul Lai) [1918929] - KVM: x86: Do runtime CPUID update before updating vcpu->arch.cpuid_entries (Paul Lai) [1918929] - x86/fpu: Fix inline prefix warnings (Paul Lai) [1918929] - selftest: kvm: Add amx selftest (Paul Lai) [1918929] - selftest: kvm: Move struct kvm_x86_state to header (Paul Lai) [1918929] - selftest: kvm: Reorder vcpu_load_state steps for AMX (Paul Lai) [1918929] - kvm: x86: Disable interception for IA32_XFD on demand (Paul Lai) [1918929] - x86/fpu: Provide fpu_sync_guest_vmexit_xfd_state() (Paul Lai) [1918929] - kvm: selftests: Add support for KVM_CAP_XSAVE2 (Paul Lai) [1918929] - kvm: x86: Add support for getting/setting expanded xstate buffer (Paul Lai) [1918929] - x86/fpu: Add uabi_size to guest_fpu (Paul Lai) [1918929] - kvm: x86: Add CPUID support for Intel AMX (Paul Lai) [1918929] - kvm: x86: Add XCR0 support for Intel AMX (Paul Lai) [1918929] - kvm: x86: Disable RDMSR interception of IA32_XFD_ERR (Paul Lai) [1918929] - kvm: x86: Emulate IA32_XFD_ERR for guest (Paul Lai) [1918929] - kvm: x86: Intercept #NM for saving IA32_XFD_ERR (Paul Lai) [1918929] - x86/fpu: Prepare xfd_err in struct fpu_guest (Paul Lai) [1918929] - kvm: x86: Add emulation for IA32_XFD (Paul Lai) [1918929] - x86/fpu: Provide fpu_update_guest_xfd() for IA32_XFD emulation (Paul Lai) [1918929] - kvm: x86: Enable dynamic xfeatures at KVM_SET_CPUID2 (Paul Lai) [1918929] - x86/fpu: Provide fpu_enable_guest_xfd_features() for KVM (Paul Lai) [1918929] - x86/fpu: Add guest support to xfd_enable_feature() (Paul Lai) [1918929] - x86/fpu: Make XFD initialization in __fpstate_reset() a function argument (Paul Lai) [1918929] - kvm: x86: Exclude unpermitted xfeatures at KVM_GET_SUPPORTED_CPUID (Paul Lai) [1918929] - kvm: x86: Fix xstate_required_size() to follow XSTATE alignment rule (Paul Lai) [1918929] - x86/fpu: Prepare guest FPU for dynamically enabled FPU features (Paul Lai) [1918929] - x86/fpu: Extend fpu_xstate_prctl() with guest permissions (Paul Lai) [1918929] - kvm: selftests: move ucall declarations into ucall_common.h (Paul Lai) [1918929] - kvm: selftests: move base kvm_util.h declarations to kvm_util_base.h (Paul Lai) [1918929] - cpuid: kvm_find_kvm_cpuid_features() should be declared 'static' (Paul Lai) [1918929] - KVM: x86: Make sure KVM_CPUID_FEATURES really are KVM_CPUID_FEATURES (Paul Lai) [1918929] - KVM: x86: Add helper to consolidate core logic of SET_CPUID{2} flows (Paul Lai) [1918929]- scsi: mpi3mr: Fix flushing !WQ_MEM_RECLAIM events warning (Tomas Henzl) [2052278] - scsi: mpi3mr: Fix memory leaks (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix reporting of actual data transfer size (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix cmnd getting marked as in use forever (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix hibernation issue (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix printing of pending I/O count (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix deadlock while canceling the fw event (Tomas Henzl) [2054814] - scsi: mpi3mr: Fixes around reply request queues (Tomas Henzl) [2054814] - scsi: mpi3mr: Enhanced Task Management Support Reply handling (Tomas Henzl) [2054814] - scsi: mpi3mr: Use TM response codes from MPI3 headers (Tomas Henzl) [2054814] - scsi: mpi3mr: Increase internal cmnds timeout to 60s (Tomas Henzl) [2054814] - scsi: mpi3mr: Do access status validation before adding devices (Tomas Henzl) [2054814] - scsi: mpi3mr: Update MPI3 headers - part2 (Tomas Henzl) [2054814] - scsi: mpi3mr: Update MPI3 headers - part1 (Tomas Henzl) [2054814] - scsi: mpi3mr: Don't reset IOC if cmnds flush with reset status (Tomas Henzl) [2054814] - scsi: mpi3mr: Replace spin_lock() with spin_lock_irqsave() (Tomas Henzl) [2054814] - scsi: mpi3mr: Add debug APIs based on logging_level bits (Tomas Henzl) [2054814] - scsi: mpt3sas: Remove scsi_dma_map() error messages (Tomas Henzl) [2057021] - net/mlx5: Fix wrong limitation of metadata match on ecpf (Amir Tzin) [2049094] - nfsd: fix use-after-free due to delegation race (Thiago Becker) [2053262] - dma-buf: cma_heap: Fix mutex locking section (Michel Dänzer) [2044440] - drm/amdkfd: Check for null pointer after calling kmemdup (Michel Dänzer) [2044440] - drm/atomic: Check new_crtc_state->active to determine if CRTC needs disable in self refresh mode (Michel Dänzer) [2044440] - drm/amd: avoid suspend on dGPUs w/ s2idle support when runtime PM enabled (Michel Dänzer) [2044440] - drm/i915/overlay: Prevent divide by zero bugs in scaling (Michel Dänzer) [2044440] - dma-buf: heaps: Fix potential spectre v1 gadget (Michel Dänzer) [2044440] - drm/amd/display: Force link_rate as LINK_RATE_RBR2 for 2018 15" Apple Retina panels (Michel Dänzer) [2044440] - drm/amd/display: watermark latencies is not enough on DCN31 (Michel Dänzer) [2044440] - drm/amd/pm: correct the MGpuFanBoost support for Beige Goby (Michel Dänzer) [2044440] - drm/i915/adlp: Fix TypeC PHY-ready status readout (Michel Dänzer) [2044440] - drm/nouveau: fix off by one in BIOS boundary checking (Michel Dänzer) [2044440] - drm/i915: Disable DSB usage for now (Michel Dänzer) [2044440] - Revert "drm/ast: Support 1600x900 with 108MHz PCLK" (Michel Dänzer) [2044440] - drm/amd/display: Fix FP start/end for dcn30_internal_validate_bw. (Michel Dänzer) [2044440] - drm/atomic: Add the crtc to affected crtc only if uapi.enable = true (Michel Dänzer) [2044440] - drm/amdgpu: Use correct VIEWPORT_DIMENSION for DCN2 (Michel Dänzer) [2044440] - drm/amd/display: reset dcn31 SMU mailbox on failures (Michel Dänzer) [2044440] - drm/vmwgfx: Remove explicit transparent hugepages support (Michel Dänzer) [2044440] - drm/radeon: fix error handling in radeon_driver_open_kms (Michel Dänzer) [2044440] - drm/i915/display/ehl: Update voltage swing table (Michel Dänzer) [2044440] - drm/nouveau/kms/nv04: use vzalloc for nv04_display (Michel Dänzer) [2044440] - drm/amd/display: Fix the uninitialized variable in enable_stream_features() (Michel Dänzer) [2044440] - amdgpu/pm: Make sysfs pm attributes as read-only for VFs (Michel Dänzer) [2044440] - drm/amdgpu: fixup bad vram size on gmc v8 (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix gmc bo pin count leak in SRIOV (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix psp tmr bo pin count leak in SRIOV (Michel Dänzer) [2044440] - drm/amdkfd: Fix error handling in svm_range_add (Michel Dänzer) [2044440] - drm/vmwgfx: Introduce a new placement for MOB page tables (Michel Dänzer) [2044440] - drm/vmwgfx: Release ttm memory if probe fails (Michel Dänzer) [2044440] - drm/amd/display: add else to avoid double destroy clk_mgr (Michel Dänzer) [2044440] - drm/amdgpu/display: set vblank_disable_immediate for DC (Michel Dänzer) [2044440] - drm/amd/display: check top_pipe_to_program pointer (Michel Dänzer) [2044440] - drm: panel-orientation-quirks: Add quirk for the Lenovo Yoga Book X91F/L (Michel Dänzer) [2044440] - drm/amd/display: Fix out of bounds access on DNC31 stream encoder regs (Michel Dänzer) [2044440] - drm/amd/display: Fix bug in debugfs crc_win_update entry (Michel Dänzer) [2044440] - drm/radeon/radeon_kms: Fix a NULL pointer dereference in radeon_driver_open_kms() (Michel Dänzer) [2044440] - drm/amdgpu: Fix a NULL pointer dereference in amdgpu_connector_lcd_native_mode() (Michel Dänzer) [2044440] - drm/vmwgfx: Fail to initialize on broken configs (Michel Dänzer) [2044440] - drm/vmwgfx: Remove the deprecated lower mem limit (Michel Dänzer) [2044440] - drm/vboxvideo: fix a NULL vs IS_ERR() check (Michel Dänzer) [2044440] - drm: fix null-ptr-deref in drm_dev_init_release() (Michel Dänzer) [2044440] - drm/ttm: Put BO in its memory manager's lru list (Michel Dänzer) [2044440] - dma_fence_array: Fix PENDING_ERROR leak in dma_fence_array_signaled() (Michel Dänzer) [2044440] - drm/amd/display: explicitly set is_dsc_supported to false before use (Michel Dänzer) [2044440] - drm/i915: Avoid bitwise vs logical OR warning in snb_wm_latency_quirk() (Michel Dänzer) [2044440] - drm/amd/pm: keep the BACO feature enabled for suspend (Michel Dänzer) [2044440] - Revert "drm/amdgpu: stop scheduler when calling hw_fini (v2)" (Michel Dänzer) [2044440] - drm/amd/display: Added power down for DCN10 (Michel Dänzer) [2044440] - drm/amd/display: fix B0 TMDS deepcolor no dislay issue (Michel Dänzer) [2044440] - drm/amdgpu: put SMU into proper state on runpm suspending for BOCO capable platform (Michel Dänzer) [2044440] - drm/amd/pm: skip setting gfx cgpg in the s0ix suspend-resume (Michel Dänzer) [2044440] - drm/amd/pm: Fix xgmi link control on aldebaran (Michel Dänzer) [2044440] - drm/amdgpu: fix dropped backing store handling in amdgpu_dma_buf_move_notify (Michel Dänzer) [2044440] - drm/amd/display: Changed pipe split policy to allow for multi-display pipe split (Michel Dänzer) [2044440] - drm/amdgpu: add support for IP discovery gc_info table v2 (Michel Dänzer) [2044440] - drm/amdgpu: When the VCN(1.0) block is suspended, powergating is explicitly enabled (Michel Dänzer) [2044440] - drm/nouveau: wait for the exclusive fence after the shared ones v2 (Michel Dänzer) [2044440] - drm/nouveau: always wait for the exclusive fence (Michel Dänzer) [2044440] - drm/amd/display: Set optimize_pwr_state for DCN31 (Michel Dänzer) [2044440] - drm/amd/display: Send s0i2_rdy in stream_count == 0 optimization (Michel Dänzer) [2044440] - drm/amd/pm: fix reading SMU FW version from amdgpu_firmware_info on YC (Michel Dänzer) [2044440] - drm/amdgpu: don't override default ECO_BITs setting (Michel Dänzer) [2044440] - drm/amdgpu: correct register access for RLC_JUMP_TABLE_RESTORE (Michel Dänzer) [2044440] - drm/amd/pm: fix a potential gpu_metrics_table memory leak (Michel Dänzer) [2044440] - drm/amd/display: Set exit_optimized_pwr_state for DCN31 (Michel Dänzer) [2044440] - drm/i915/display: Fix an unsigned subtraction which can never be negative. (Michel Dänzer) [2044440] - drm/ast: potential dereference of null pointer (Michel Dänzer) [2044440] - drm: simpledrm: fix wrong unit with pixel clock (Michel Dänzer) [2044440] - Revert "drm/fb-helper: improve DRM fbdev emulation device names" (Michel Dänzer) [2044440] - drm/i915/hdmi: Turn DP++ TMDS output buffers back on in encoder->shutdown() (Michel Dänzer) [2044440] - drm/i915/hdmi: convert intel_hdmi_to_dev to intel_hdmi_to_i915 (Michel Dänzer) [2044440] - drm/amdkfd: process_info lock not needed for svm (Michel Dänzer) [2044440] - drm/amd/display: add connector type check for CRC source set (Michel Dänzer) [2044440] - drm/amdkfd: fix double free mem structure (Michel Dänzer) [2044440] - drm/amd/display: Fix for the no Audio bug with Tiled Displays (Michel Dänzer) [2044440] - drm/amdgpu: check atomic flag to differeniate with legacy path (Michel Dänzer) [2044440] - drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset (Michel Dänzer) [2044440] - drm/syncobj: Deal with signalled fences in drm_syncobj_find_fence. (Michel Dänzer) [2044440] - drm/i915/dp: Perform 30ms delay after source OUI write (Michel Dänzer) [2044440] - drm/amd/display: Allow DSC on supported MST branch devices (Michel Dänzer) [2044440] - dma-buf: system_heap: Use 'for_each_sgtable_sg' in pages free flow (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix potential memleak (Michel Dänzer) [2044440] - drm/amd/amdkfd: Fix kernel panic when reset failed and been triggered again (Michel Dänzer) [2044440] - drm/amd/pm: Remove artificial freq level on Navi1x (Michel Dänzer) [2044440] - drm/amdgpu/gfx9: switch to golden tsc registers for renoir+ (Michel Dänzer) [2044440] - drm/amd/display: Set plane update flags for all planes in reset (Michel Dänzer) [2044440] - drm/amd/display: Fix DPIA outbox timeout after GPU reset (Michel Dänzer) [2044440] - drm/aspeed: Fix vga_pw sysfs output (Michel Dänzer) [2044440] - drm/nouveau/acr: fix a couple NULL vs IS_ERR() checks (Michel Dänzer) [2044440] - drm/amd/display: Fix OLED brightness control on eDP (Michel Dänzer) [2044440] - drm/amdgpu: IH process reset count when restart (Michel Dänzer) [2044440] - drm/amd/pm: avoid duplicate powergate/ungate setting (Michel Dänzer) [2044440] - drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga and dvi connectors (Michel Dänzer) [2044440] - drm/i915: Fix type1 DVI DP dual mode adapter heuristic for modern platforms (Michel Dänzer) [2044440] - drm/i915/dp: Ensure max link params are always valid (Michel Dänzer) [2044440] - drm/i915/dp: Ensure sink rate values are always valid (Michel Dänzer) [2044440] - drm/prime: Fix use after free in mmap with drm_gem_ttm_mmap (Michel Dänzer) [2044440] - drm/udl: fix control-message timeout (Michel Dänzer) [2044440] - drm/amd/display: Limit max DSC target bpp for specific monitors (Michel Dänzer) [2044440] - drm/amd/display: Update swizzle mode enums (Michel Dänzer) [2044440] - drm/cma-helper: Release non-coherent memory with dma_free_noncoherent() (Michel Dänzer) [2044440] - Revert "drm/i915/tgl/dsi: Gate the ddi clocks after pll mapping" (Michel Dänzer) [2044440] - drm/nouveau: hdmigv100.c: fix corrupted HDMI Vendor InfoFrame (Michel Dänzer) [2044440] - x86/speculation: Check CPU capability before applying IBRS spectre v2 mitigation (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Warn about eIBRS + LFENCE + Unprivileged eBPF + SMT (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Warn about Spectre v2 LFENCE mitigation (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Update link to AMD speculation whitepaper (Waiman Long) [2062166] {CVE-2021-26401} - x86/speculation: Use generic retpoline by default on AMD (Waiman Long) [2062166] {CVE-2021-26401} - x86/speculation: Include unprivileged eBPF status in Spectre v2 mitigation reporting (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - Documentation/hw-vuln: Update spectre doc (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86/speculation: Add eIBRS + Retpoline options (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86/speculation: Rename RETPOLINE_AMD to RETPOLINE_LFENCE (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86,bugs: Unconditionally allow spectre_v2=retpoline,amd (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86: deduplicate the spectre_v2_user documentation (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - fuse: fix pipe buffer lifetime for direct_io (Miklos Szeredi) [2064863] {CVE-2022-1011} - ice: Do not enable VLAN pruning when spoofchk is enabled (Ivan Vecera) [2062343] - ice: don't allow to run ice_send_event_to_aux() in atomic ctx (Ivan Vecera) [2062343] - ice: fix 'scheduling while atomic' on aux critical err interrupt (Ivan Vecera) [2062343] - ice: Fix MAC address setting (Ivan Vecera) [2062343] - ice: Clear default forwarding VSI during release (Ivan Vecera) [2062343] - ice: Fix broken IFF_ALLMULTI handling (Ivan Vecera) [2062343] - iavf: Fix hang during reboot/shutdown (Ivan Vecera) [2062343] - iavf: Fix double free in iavf_reset_task (Ivan Vecera) [2062343] - ice: destroy flow director filter mutex after releasing VSIs (Ivan Vecera) [2062343] - ice: fix NULL pointer dereference in ice_update_vsi_tx_ring_stats() (Ivan Vecera) [2062343] - iavf: Fix adopting new combined setting (Ivan Vecera) [2062343] - iavf: Fix handling of vlan strip virtual channel messages (Ivan Vecera) [2062343] - iavf: Fix __IAVF_RESETTING state usage (Ivan Vecera) [2062343] - iavf: Fix missing check for running netdev (Ivan Vecera) [2062343] - iavf: Fix deadlock in iavf_reset_task (Ivan Vecera) [2062343] - iavf: Fix race in init state (Ivan Vecera) [2062343] - iavf: Fix locking for VIRTCHNL_OP_GET_OFFLOAD_VLAN_V2_CAPS (Ivan Vecera) [2062343] - iavf: Fix init state closure on remove (Ivan Vecera) [2062343] - iavf: Add waiting so the port is initialized in remove (Ivan Vecera) [2062343] - iavf: Rework mutexes for better synchronisation (Ivan Vecera) [2062343] - iavf: remove an unneeded variable (Ivan Vecera) [2062343] - iavf: Fix limit of total number of queues to active queues of VF (Ivan Vecera) [2062343] - iavf: Restrict maximum VLAN filters for VIRTCHNL_VF_OFFLOAD_VLAN_V2 (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 offload enable/disable (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 hotpath (Ivan Vecera) [2062343] - iavf: Add support VIRTCHNL_VF_OFFLOAD_VLAN_V2 during netdev config (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 negotiation (Ivan Vecera) [2062343] - virtchnl: Add support for new VLAN capabilities (Ivan Vecera) [2062343] - virtchnl: Use the BIT() macro for capability/offload flags (Ivan Vecera) [2062343] - virtchnl: Remove unused VIRTCHNL_VF_OFFLOAD_RSVD define (Ivan Vecera) [2062343] - virtchnl: Add missing padding to virtchnl_proto_hdrs (Ivan Vecera) [2062343] - ice: Fix race condition during interface enslave (Ivan Vecera) [2062343] - ice: Fix curr_link_speed advertised speed (Ivan Vecera) [2062343] - ice: Don't use GFP_KERNEL in atomic context (Ivan Vecera) [2062343] - ice: Fix error with handling of bonding MTU (Ivan Vecera) [2062343] - ice: stop disabling VFs due to PF error responses (Ivan Vecera) [2062343] - ice: initialize local variable 'tlv' (Ivan Vecera) [2062343] - ice: check the return of ice_ptp_gettimex64 (Ivan Vecera) [2062343] - ice: fix concurrent reset and removal of VFs (Ivan Vecera) [2062343] - ice: fix setting l4 port flag when adding filter (Ivan Vecera) [2062343] - ice: Match on all profiles in slow-path (Ivan Vecera) [2062343] - ice: enable parsing IPSEC SPI headers for RSS (Ivan Vecera) [2062343] - ice: Avoid RTNL lock when re-creating auxiliary device (Ivan Vecera) [2062343] - ice: Fix KASAN error in LAG NETDEV_UNREGISTER handler (Ivan Vecera) [2062343] - ice: fix IPIP and SIT TSO offload (Ivan Vecera) [2062343] - ice: fix an error code in ice_cfg_phy_fec() (Ivan Vecera) [2062343] - ice: Use bitmap_free() to free bitmap (Ivan Vecera) [2062343] - ice: Optimize a few bitmap operations (Ivan Vecera) [2062343] - ice: Slightly simply ice_find_free_recp_res_idx (Ivan Vecera) [2062343] - ice: improve switchdev's slow-path (Ivan Vecera) [2062343] - ice: replay advanced rules after reset (Ivan Vecera) [2062343] - ice: Add flow director support for channel mode (Ivan Vecera) [2062343] - ice: trivial: fix odd indenting (Ivan Vecera) [2062343] - ice: support crosstimestamping on E822 devices if supported (Ivan Vecera) [2062343] - ice: exit bypass mode once hardware finishes timestamp calibration (Ivan Vecera) [2062343] - ice: ensure the hardware Clock Generation Unit is configured (Ivan Vecera) [2062343] - ice: implement basic E822 PTP support (Ivan Vecera) [2062343] - ice: convert clk_freq capability into time_ref (Ivan Vecera) [2062343] - ice: introduce ice_ptp_init_phc function (Ivan Vecera) [2062343] - ice: use 'int err' instead of 'int status' in ice_ptp_hw.c (Ivan Vecera) [2062343] - ice: PTP: move setting of tstamp_config (Ivan Vecera) [2062343] - ice: introduce ice_base_incval function (Ivan Vecera) [2062343] - ice: xsk: fix cleaned_count setting (Ivan Vecera) [2062343] - ice: xsk: allow empty Rx descriptors on XSK ZC data path (Ivan Vecera) [2062343] - ice: xsk: allocate separate memory for XDP SW ring (Ivan Vecera) [2062343] - ice: xsk: return xsk buffers back to pool when cleaning the ring (Ivan Vecera) [2062343] - ice: use modern kernel API for kick (Ivan Vecera) [2062343] - ice: tighter control over VSI_DOWN state (Ivan Vecera) [2062343] - ice: use prefetch methods (Ivan Vecera) [2062343] - ice: update to newer kernel API (Ivan Vecera) [2062343] - ice: support immediate firmware activation via devlink reload (Ivan Vecera) [2062343] - ice: reduce time to read Option ROM CIVD data (Ivan Vecera) [2062343] - ice: move ice_devlink_flash_update and merge with ice_flash_pldm_image (Ivan Vecera) [2062343] - ice: move and rename ice_check_for_pending_update (Ivan Vecera) [2062343] - ice: devlink: add shadow-ram region to snapshot Shadow RAM (Ivan Vecera) [2062343] - ice: Remove unused ICE_FLOW_SEG_HDRS_L2_MASK (Ivan Vecera) [2062343] - ice: Remove unnecessary casts (Ivan Vecera) [2062343] - ice: Propagate error codes (Ivan Vecera) [2062343] - ice: Remove excess error variables (Ivan Vecera) [2062343] - ice: Cleanup after ice_status removal (Ivan Vecera) [2062343] - ice: Remove enum ice_status (Ivan Vecera) [2062343] - ice: Use int for ice_status (Ivan Vecera) [2062343] - ice: Remove string printing for ice_status (Ivan Vecera) [2062343] - ice: Refactor status flow for DDP load (Ivan Vecera) [2062343] - ice: Refactor promiscuous functions (Ivan Vecera) [2062343] - ice: refactor PTYPE validating (Ivan Vecera) [2062343] - ice: Add package PTYPE enable information (Ivan Vecera) [2062343] - ice: safer stats processing (Ivan Vecera) [2062343] - ice: fix adding different tunnels (Ivan Vecera) [2062343] - ice: fix choosing UDP header type (Ivan Vecera) [2062343] - ice: ignore dropped packets during init (Ivan Vecera) [2062343] - ice: rearm other interrupt cause register after enabling VFs (Ivan Vecera) [2062343] - net/ice: Remove unused enum (Ivan Vecera) [2062343] - net/ice: Fix boolean assignment (Ivan Vecera) [2062343] - net/ice: Add support for enable_iwarp and enable_roce devlink param (Ivan Vecera) [2062343] - ice: avoid bpf_prog refcount underflow (Ivan Vecera) [2062343] - ice: fix vsi->txq_map sizing (Ivan Vecera) [2062343] - ice: Hide bus-info in ethtool for PRs in switchdev mode (Ivan Vecera) [2062343] - ice: Clear synchronized addrs when adding VFs in switchdev mode (Ivan Vecera) [2062343] - ice: fix error return code in ice_get_recp_frm_fw() (Ivan Vecera) [2062343] - ice: Fix clang -Wimplicit-fallthrough in ice_pull_qvec_from_rc() (Ivan Vecera) [2062343] - ice: Add support to print error on PHY FW load failure (Ivan Vecera) [2062343] - ice: Add support for changing MTU on PR in switchdev mode (Ivan Vecera) [2062343] - ice: send correct vc status in switchdev (Ivan Vecera) [2062343] - ice: support for GRE in eswitch (Ivan Vecera) [2062343] - ice: low level support for tunnels (Ivan Vecera) [2062343] - ice: VXLAN and Geneve TC support (Ivan Vecera) [2062343] - ice: support for indirect notification (Ivan Vecera) [2062343] - ice: Add tc-flower filter support for channel (Ivan Vecera) [2062343] - ice: enable ndo_setup_tc support for mqprio_qdisc (Ivan Vecera) [2062343] - ice: Add infrastructure for mqprio support via ndo_setup_tc (Ivan Vecera) [2062343] - ice: fix an error code in ice_ena_vfs() (Ivan Vecera) [2062343] - ice: use devm_kcalloc() instead of devm_kzalloc() (Ivan Vecera) [2062343] - ice: Make use of the helper function devm_add_action_or_reset() (Ivan Vecera) [2062343] - ice: Refactor PR ethtool ops (Ivan Vecera) [2062343] - ice: Forbid trusted VFs in switchdev mode (Ivan Vecera) [2062343] - ice: Manage act flags for switchdev offloads (Ivan Vecera) [2062343] - ice: introduce XDP_TX fallback path (Ivan Vecera) [2062343] - ice: optimize XDP_TX workloads (Ivan Vecera) [2062343] - ice: propagate xdp_ring onto rx_ring (Ivan Vecera) [2062343] - ice: do not create xdp_frame on XDP_TX (Ivan Vecera) [2062343] - ice: unify xdp_rings accesses (Ivan Vecera) [2062343] - ice: ndo_setup_tc implementation for PR (Ivan Vecera) [2062343] - ice: ndo_setup_tc implementation for PF (Ivan Vecera) [2062343] - ice: Allow changing lan_en and lb_en on all kinds of filters (Ivan Vecera) [2062343] - ice: cleanup rules info (Ivan Vecera) [2062343] - ice: allow deleting advanced rules (Ivan Vecera) [2062343] - ice: allow adding advanced rules (Ivan Vecera) [2062343] - ice: create advanced switch recipe (Ivan Vecera) [2062343] - ice: manage profiles and field vectors (Ivan Vecera) [2062343] - ice: implement low level recipes functions (Ivan Vecera) [2062343] - ice: add port representor ethtool ops and stats (Ivan Vecera) [2062343] - ice: switchdev slow path (Ivan Vecera) [2062343] - ice: rebuild switchdev when resetting all VFs (Ivan Vecera) [2062343] - ice: enable/disable switchdev when managing VFs (Ivan Vecera) [2062343] - ice: introduce new type of VSI for switchdev (Ivan Vecera) [2062343] - ice: set and release switchdev environment (Ivan Vecera) [2062343] - net: export metadata_dst_free() (Ivan Vecera) [2062343] - ice: allow changing lan_en and lb_en on dflt rules (Ivan Vecera) [2062343] - ice: manage VSI antispoof and destination override (Ivan Vecera) [2062343] - ice: allow process VF opcodes in different ways (Ivan Vecera) [2062343] - ice: introduce VF port representor (Ivan Vecera) [2062343] - ice: Move devlink port to PF/VF struct (Ivan Vecera) [2062343] - ice: support basic E-Switch mode control (Ivan Vecera) [2062343] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ivan Vecera) [2062343] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ivan Vecera) [2062343] - ice: Use xdp_buf instead of rx_buf for xsk zero-copy (Ivan Vecera) [2062343] - ice: fix FDIR init missing when reset VF (Ivan Vecera) [2062343] - intel: Remove rcu_read_lock() around XDP program invocation (Ivan Vecera) [2062343] - intel: Update drivers to use ethtool_sprintf (Ivan Vecera) [2062343] - ice: fix conversion to new udp_tunnel infrastructure (Ivan Vecera) [2062343] - intel-ethernet: clean up W=1 warnings in kdoc (Ivan Vecera) [2062343] - PCI: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Ivan Vecera) [2062343] - treewide: Use sizeof_field() macro (Ivan Vecera) [2062343] - devlink: Add 'enable_iwarp' generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_vnet" generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_rdma" generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_eth" generic device param (Ivan Vecera) [2062343] - gfs2: dequeue iopen holder in gfs2_inode_lookup error (Bob Peterson) [2061665] - redhat/configs: Increase CONFIG_LOCKDEP_CHAINS_BITS from 16 to 17 (Waiman Long) [2057339] - redhat: spec: trigger dracut when modules are installed separately (Jan Stancek) [2060237 2016948]- makefile: Add dist-* targets (Prarit Bhargava) - Fonts: Replace discarded const qualifier (Nico Pache) [1904374] - Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts (Nico Pache) [1904374] - fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h (Nico Pache) [1904374] - x86/cpu: Drop spurious underscore from RAPTOR_LAKE #define (Prarit Bhargava) [2040021] - x86/cpu: Add Raptor Lake to Intel family (Prarit Bhargava) [2040021] - powerpc/64: Move paca allocation later in boot (Desnes A. Nunes do Rosario) [2016335] - powerpc/prom: fix early DEBUG messages (Desnes A. Nunes do Rosario) [2016335] - powerpc: Set crashkernel offset to mid of RMA region (Desnes A. Nunes do Rosario) [2016335] - KVM: x86/mmu: Don't advance iterator after restart due to yielding (Nico Pache) [2058907] - igb: refactor XDP registration (Corinna Vinschen) [2040171] - igc: avoid kernel warning when changing RX ring parameters (Corinna Vinschen) [2040171] - scsi: qedi: Fix cmd_cleanup_cmpl counter mismatch issue (Nilesh Javali) [2054565] - EDAC/amd64: Save max number of controllers for F19 M70 (Aristeu Rozanski) [2064285] - CI: Use 8.6-rt branch for rhel8 realtime_check (Chris White) - blk-mq: avoid extending delays of active hctx from blk_mq_delay_run_hw_queues (Ming Lei) [2046525] - tipc: fix incorrect order of state message data sanity check (Xin Long) [2048971] - tipc: improve size validations for received domain records (Xin Long) [2048971] {CVE-2022-0435} - efi/x86: Call efi_parse_options() from efi_main() (Lenny Szubowicz) [2049233]- net/mlx5e: TC, Remove redundant error logging (Amir Tzin) [2023907] - net/mlx5: DR, Warn on failure to destroy objects due to refcount (Amir Tzin) [2022325] - net/mlx5: DR, Add support for dumping steering info (Amir Tzin) [2022325] - net/mlx5: DR, Add missing reserved fields to dr_match_param (Amir Tzin) [2022325] - net/mlx5: DR, Add check for flex parser ID value (Amir Tzin) [2022325] - net/mlx5: DR, Rename list field in matcher struct to list_node (Amir Tzin) [2022325] - net/mlx5: DR, Remove unused struct member in matcher (Amir Tzin) [2022325] - net/mlx5: DR, Fix error flow in creating matcher (Amir Tzin) [2022325] - net/mlx5e: Avoid implicit modify hdr for decap drop rule (Amir Tzin) [2015434] - net/mlx5e: TC, Fix memory leak with rules with internal port (Amir Tzin) [2015434] - net/mlx5e: Fix skb memory leak when TC classifier action offloads are disabled (Amir Tzin) [2015434] - net/mlx5: Fix some error handling paths in 'mlx5e_tc_add_fdb_flow()' (Amir Tzin) [2015434] - net/mlx5: E-Switch, Check group pointer before reading bw_share value (Amir Tzin) [2015434] - net/mlx5: E-Switch, fix single FDB creation on BlueField (Amir Tzin) [2015434] - net/mlx5: E-switch, Respect BW share of the new group (Amir Tzin) [2015434] - net/mlx5: DR, Fix check for unsupported fields in match param (Amir Tzin) [2015434] - net/mlx5: E-Switch, rebuild lag only when needed (Amir Tzin) [2015434] - net/mlx5e: Delete forward rule for ct or sample action (Amir Tzin) [2015434] - net/mlx5: E-Switch, Use indirect table only if all destinations support it (Amir Tzin) [2015434] - net/mlx5: Support internal port as decap route device (Amir Tzin) [2015434] - net/mlx5e: Term table handling of internal port rules (Amir Tzin) [2015434] - net/mlx5e: Add indirect tc offload of ovs internal port (Amir Tzin) [2015434] - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert (Amir Tzin) [2015434] - net/mlx5e: Offload internal port as encap route device (Amir Tzin) [2015434] - net/mlx5e: Offload tc rules that redirect to ovs internal port (Amir Tzin) [2015434] - net/mlx5e: Accept action skbedit in the tc actions list (Amir Tzin) [2015434] - net/mlx5: E-Switch, Add ovs internal port mapping to metadata support (Amir Tzin) [2015434] - net/mlx5e: Use generic name for the forwarding dev pointer (Amir Tzin) [2015434] - net/mlx5e: Refactor rx handler of represetor device (Amir Tzin) [2015434] - net/mlx5: DR, Add check for unsupported fields in match param (Amir Tzin) [2015434] - net/mlx5: Allow skipping counter refresh on creation (Amir Tzin) [2015434] - net/mlx5e: IPsec: Refactor checksum code in tx data path (Amir Tzin) [2015434] - net/mlx5: CT: Remove warning of ignore_flow_level support for VFs (Amir Tzin) [2015434] - net/mlx5: Add esw assignment back in mlx5e_tc_sample_unoffload() (Amir Tzin) [2015434] - net/mlx5: Bridge, fix uninitialized variable usage (Amir Tzin) [2015434] - net/mlx5: Lag, don't update lag if lag isn't supported (Amir Tzin) [2015434] - net/mlx5: E-switch, Return correct error code on group creation failure (Amir Tzin) [2015434] - net/mlx5: Bridge, support LAG (Amir Tzin) [2015434] - net/mlx5: Bridge, allow merged eswitch connectivity (Amir Tzin) [2015434] - net/mlx5: Bridge, extract FDB delete notification to function (Amir Tzin) [2015434] - net/mlx5: Bridge, identify port by vport_num+esw_owner_vhca_id pair (Amir Tzin) [2015434] - net/mlx5: Bridge, obtain core device from eswitch instead of priv (Amir Tzin) [2015434] - net/mlx5: Bridge, release bridge in same function where it is taken (Amir Tzin) [2015434] - net/mlx5: Lag, Create shared FDB when in switchdev mode (Amir Tzin) [2015434] - net/mlx5: E-Switch, add logic to enable shared FDB (Amir Tzin) [2015434] - net/mlx5: Lag, properly lock eswitch if needed (Amir Tzin) [2015434] - net/mlx5: Add send to vport rules on paired device (Amir Tzin) [2015434] - net/mlx5: E-Switch, Add event callback for representors (Amir Tzin) [2015434] - net/mlx5e: Use shared mappings for restoring from metadata (Amir Tzin) [2015434] - net/mlx5e: Add an option to create a shared mapping (Amir Tzin) [2015434] - net/mlx5: E-Switch, set flow source for send to uplink rule (Amir Tzin) [2015434] - RDMA/mlx5: Add shared FDB support (Amir Tzin) [2015434] - {net, RDMA}/mlx5: Extend send to vport rules (Amir Tzin) [2015434] - RDMA/mlx5: Fill port info based on the relevant eswitch (Amir Tzin) [2015434] - net/mlx5: Lag, add initial logic for shared FDB (Amir Tzin) [2015434] - net/mlx5: Return mdev from eswitch (Amir Tzin) [2015434] - net/mlx5: E-switch, Add QoS tracepoints (Amir Tzin) [2015434] - net/mlx5: E-switch, Allow to add vports to rate groups (Amir Tzin) [2015434] - net/mlx5: E-switch, Allow setting share/max tx rate limits of rate groups (Amir Tzin) [2015434] - net/mlx5: E-switch, Introduce rate limiting groups API (Amir Tzin) [2015434] - net/mlx5: E-switch, Enable devlink port tx_{share|max} rate control (Amir Tzin) [2015434] - net/mlx5: E-switch, Move QoS related code to dedicated file (Amir Tzin) [2015434] - net/mlx5e: TC, Support sample offload action for tunneled traffic (Amir Tzin) [2015434] - net/mlx5e: TC, Restore tunnel info for sample offload (Amir Tzin) [2015434] - net/mlx5e: TC, Remove CONFIG_NET_TC_SKB_EXT dependency when restoring tunnel (Amir Tzin) [2015434] - net/mlx5e: Refactor ct to use post action infrastructure (Amir Tzin) [2015434] - net/mlx5e: Introduce post action infrastructure (Amir Tzin) [2015434] - net/mlx5e: CT, Use xarray to manage fte ids (Amir Tzin) [2015434] - net/mlx5e: Move sample attribute to flow attribute (Amir Tzin) [2015434] - net/mlx5e: Move esw/sample to en/tc/sample (Amir Tzin) [2015434] - net/mlx5e: Remove mlx5e dependency from E-Switch sample (Amir Tzin) [2015434] - net/mlx5: DR, Fix querying eswitch manager vport for ECPF (Amir Tzin) [2018097] - net/mlx5: DR, Handle eswitch manager and uplink vports separately (Amir Tzin) [2018097] - net/mlx5: DR, Add missing string for action type SAMPLER (Amir Tzin) [2018097] - net/mlx5: DR, init_next_match only if needed (Amir Tzin) [2018097] - net/mlx5: DR, Increase supported num of actions to 32 (Amir Tzin) [2018097] - net/mlx5: DR, Add support for SF vports (Amir Tzin) [2018097] - net/mlx5: DR, Support csum recalculation flow table on SFs (Amir Tzin) [2018097] - net/mlx5: DR, Align error messages for failure to obtain vport caps (Amir Tzin) [2018097] - net/mlx5: DR, Add missing query for vport 0 (Amir Tzin) [2018097] - net/mlx5: DR, Replace local WIRE_PORT macro with the existing MLX5_VPORT_UPLINK (Amir Tzin) [2018097] - scsi: lpfc: Fix pt2pt NVMe PRLI reject LOGO loop (Dick Kennedy) [1943202] - nvme-tcp: change target from tech-preview to unmaintained (John Meneghini) [2061577] - drm/amd/display: Don't reinitialize DMCUB on s0ix resume (Karol Herbst) [2059680] - tcp: Add snd_wnd to TCP_INFO (Davide Caratti) [2056608] - tcp: Add TCP_INFO counter for packets received out-of-order (Davide Caratti) [2056608] - net/mlx5: Move MODIFY_RQT command to ignore list in internal error state (Amir Tzin) [1982236] - net/mlx5e: Add TX max rate support for MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Specify SQ stats struct for mlx5e_open_txqsq() (Amir Tzin) [1982236] - net/mlx5e: Allow only complete TXQs partition in MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Mutually exclude setting of TX-port-TS and MQPRIO in channel mode (Amir Tzin) [1982236] - net/mlx5e: Fix condition when retrieving PTP-rqn (Amir Tzin) [1982236] - net/mlx5: Fix inner TTC table creation (Amir Tzin) [1982236] - net/mlx5e: Fix division by 0 in mlx5e_select_queue for representors (Amir Tzin) [1982236] - net/mlx5e: Improve MQPRIO resiliency (Amir Tzin) [1982236] - net/mlx5e: Support MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Handle errors of netdev_set_num_tc() (Amir Tzin) [1982236] - net/mlx5e: Maintain MQPRIO mode parameter (Amir Tzin) [1982236] - net/mlx5e: Abstract MQPRIO params (Amir Tzin) [1982236] - net/mlx5e: Support flow classification into RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Support multiple RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Dynamically allocate TIRs in RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Convert RSS to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Introduce abstraction of RSS context (Amir Tzin) [1982236] - net/mlx5e: Introduce TIR create/destroy API in rx_res (Amir Tzin) [1982236] - net/mlx5e: Do not try enable RSS when resetting indir table (Amir Tzin) [1982236] - net/mlx5: Embed mlx5_ttc_table (Amir Tzin) [1982236] - net/mlx5: Move TTC logic to fs_ttc (Amir Tzin) [1982236] - net/mlx5e: Decouple TTC logic from mlx5e (Amir Tzin) [1982236] - net/mlx5e: Rename some related TTC args and functions (Amir Tzin) [1982236] - net/mlx5e: Rename traffic type enums (Amir Tzin) [1982236] - net/mlx5e: Allocate the array of channels according to the real max_nch (Amir Tzin) [1982236] - net/mlx5e: Hide all implementation details of mlx5e_rx_res (Amir Tzin) [1982236] - net/mlx5e: Introduce mlx5e_channels API to get RQNs (Amir Tzin) [1982236] - net/mlx5e: Use a new initializer to build uniform indir table (Amir Tzin) [1982236] - net/mlx5e: Use the new TIR API for kTLS (Amir Tzin) [1982236] - net/mlx5e: Move management of indir traffic types to rx_res (Amir Tzin) [1982236] - net/mlx5e: Convert TIR to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Create struct mlx5e_rss_params_hash (Amir Tzin) [1982236] - net/mlx5e: Remove mdev from mlx5e_build_indir_tir_ctx_common() (Amir Tzin) [1982236] - net/mlx5e: Remove lro_param from mlx5e_build_indir_tir_ctx_common() (Amir Tzin) [1982236] - net/mlx5e: Remove mlx5e_priv usage from mlx5e_build_*tir_ctx*() (Amir Tzin) [1982236] - net/mlx5e: Use mlx5e_rqt_get_rqtn to access RQT hardware id (Amir Tzin) [1982236] - net/mlx5e: Take RQT out of TIR and group RX resources (Amir Tzin) [1982236] - net/mlx5e: Move RX resources to a separate struct (Amir Tzin) [1982236] - net/mlx5e: Move mlx5e_build_rss_params() call to init_rx (Amir Tzin) [1982236] - net/mlx5e: Convert RQT to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Check if inner FT is supported outside of create/destroy functions (Amir Tzin) [1982236] - net/mlx5: Take TIR destruction out of the TIR list lock (Amir Tzin) [1982236] - PCI: pciehp: Ignore Link Down/Up caused by error-induced Hot Reset (Myron Stowe) [2060122] - PCI/portdrv: Rename pm_iter() to pcie_port_device_iter() (Myron Stowe) [2060122] - iommu/vt-d: Fix double list_add when enabling VMD in scalable mode (Jerry Snitselaar) [2062094] - redhat/configs: Disable CONFIG_SENSORS_NCT6683 in RHEL for arm/aarch64 (Dean Nelson) [2059695] - redhat: drop the -sha512 suffix from default rhpkg invocation (Jarod Wilson) - sysctl: return -EINVAL if val violates minmax (Rafael Aquini) [2062571] - kernel/sysctl.c: switch to bitmap_zalloc() (Rafael Aquini) [2062571] - netlabel: remove unused parameter in netlbl_netlink_auditinfo() (William Zhao) [1985319] - netlabel: Fix memory leak in netlbl_mgmt_add_common (William Zhao) [1985319] - bpftool: Fix indent in option lists in the documentation (Yauheni Kaliuta) [2014861] - libbpf: Fix memleak in libbpf_netlink_recv() (Yauheni Kaliuta) [2014861] - libbpf: Use dynamically allocated buffer when receiving netlink messages (Yauheni Kaliuta) [2014861] - libbpf: Clean gen_loader's attach kind. (Yauheni Kaliuta) [2014861] - powerpc/bpf: Use bctrl for making function calls (Jiri Olsa) [2014861] - powerpc/signal: Use PPC_RAW_xx() macros (Jiri Olsa) [2014861] - powerpc/ebpf64: Use PPC_RAW_MFLR() (Jiri Olsa) [2014861] - powerpc/opcodes: Add shorter macros for registers for use with PPC_RAW_xx() (Jiri Olsa) [2014861] - lib/test: fix spelling mistakes (Jiri Olsa) [2014861] - tracepoint: Add tracepoint_probe_register_may_exist() for BPF tracing (Jiri Olsa) [2014861] - bpf: Allow bpf_get_current_ancestor_cgroup_id for tracing (Jiri Olsa) [2014861] - docs: bpf: bpf_lsm.rst: avoid using ReST :doc:`foo` markup (Jiri Olsa) [2014861] - bpf, docs: Add llvm_reloc.rst to explain llvm bpf relocations (Jiri Olsa) [2014861] - bpf, arm64: Remove redundant switch case about BPF_DIV and BPF_MOD (Jiri Olsa) [2014861] - bpf, arm64: Replace STACK_ALIGN() with round_up() to align stack size (Jiri Olsa) [2014861] - selftests, bpf: Test that dead ldx_w insns are accepted (Jiri Olsa) [2014861] - bpf, selftests: Add test cases for pointer alu from multiple paths (Jiri Olsa) [2014861] - bpf: Selftest to verify mixing bpf2bpf calls and tailcalls with insn patch (Jiri Olsa) [2014861] - selftests/bpf: Fix ringbuf test fetching map FD (Jiri Olsa) [2014861] - selftests/bpf: Whitelist test_progs.h from .gitignore (Jiri Olsa) [2014861] - selftests, bpf: Make docs tests fail more reliably (Jiri Olsa) [2014861] - selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks (Jiri Olsa) [2014861] - selftests/bpf: Add bpf_lookup_and_delete_elem tests (Jiri Olsa) [2014861] - selftests/bpf: Convert test trace_printk to lskel. (Jiri Olsa) [2014861] - selftests/bpf: Convert test printk to use rodata. (Jiri Olsa) [2014861] - selftests/bpf: Convert atomics test to light skeleton. (Yauheni Kaliuta) [2014861] - selftests/bpf: Convert few tests to light skeleton. (Jiri Olsa) [2014861] - selftests/bpf: Test for btf_load command. (Jiri Olsa) [2014861] - selftests/bpf: Test for syscall program type (Jiri Olsa) [2014861] - libbpf: Add selftests for TC-BPF management API (Jiri Olsa) [2014861] - selftests/bpf: Validate skeleton gen handles skipped fields (Jiri Olsa) [2014861] - selftests/bpf: Stop using static variables for passing data to/from user-space (Jiri Olsa) [2014861] - tools: bpftool: Document and add bash completion for -L, -B options (Jiri Olsa) [2014861] - tools: bpftool: Update and synchronise option list in doc and help msg (Jiri Olsa) [2014861] - bpftool: Remove unused includes to (Jiri Olsa) [2014861] - powerpc/bpf: Fix write protecting JIT code (Jiri Olsa) [2014861] - libbpf: Fix lookup_and_delete_elem_flags error reporting (Jiri Olsa) [2014861] - bpftool: Check malloc return value in mount_bpffs_for_pin (Jiri Olsa) [2014861] - tools: bpf: Fix error in 'make -C tools/ bpf_install' (Jiri Olsa) [2014861] - bpftool: Properly close va_list 'ap' by va_end() on error (Jiri Olsa) [2014861] - bpf: Fix libelf endian handling in resolv_btfids (Jiri Olsa) [2014861] - tools/bpftool: Fix error return code in do_batch() (Jiri Olsa) [2014861] - tools/bpftool: Fix cross-build (Jiri Olsa) [2014861] - bpftool: Set errno on skeleton failures and propagate errors (Jiri Olsa) [2014861] - bpftool: Use syscall/loader program in "prog load" and "gen skeleton" command. (Jiri Olsa) [2014861] - bpftool: Stop emitting static variables in BPF skeleton (Jiri Olsa) [2014861] - bpftool: Strip const/volatile/restrict modifiers from .bss and .data vars (Jiri Olsa) [2014861] - bpf: Add missing bpf_read_[un]lock_trace() for syscall program (Jiri Olsa) [2014861] - libbpf: Fix skel_internal.h to set errno on loader retval < 0 (Jiri Olsa) [2014861] - libbpf: Fix segfault in light skeleton for objects without BTF (Jiri Olsa) [2014861] - libbpf: Return non-null error on failures in libbpf_find_prog_btf_id() (Jiri Olsa) [2014861] - libbpf, doc: Eliminate warnings in libbpf_naming_convention (Jiri Olsa) [2014861] - net, core: Allow netdev_lower_get_next_private_rcu in bh context (Jiri Olsa) [2014861] - samples/bpf: Fix the error return code of xdp_redirect's main() (Jiri Olsa) [2014861] - samples/bpf: Fix Segmentation fault for xdp_redirect command (Jiri Olsa) [2014861] - samples/bpf: Add missing option to xdp_sample_pkts usage (Jiri Olsa) [2014861] - samples/bpf: Add missing option to xdp_fwd usage (Jiri Olsa) [2014861] - samples, bpf: Suppress compiler warning (Jiri Olsa) [2014861] - file: Rename __close_fd to close_fd and remove the files parameter (Jiri Olsa) [2014861] - bpf: Fix ringbuf helper function compatibility (Jiri Olsa) [2014861] - bpf: Clear zext_dst of dead insns (Jiri Olsa) [2014861] - bpf: Add rcu_read_lock in bpf_get_current_[ancestor_]cgroup_id() helpers (Jiri Olsa) [2014861] - bpf, core: Fix kernel-doc notation (Jiri Olsa) [2014861] - libbpf: Do not close un-owned FD 0 on errors (Jiri Olsa) [2014861] - libbpf: Fix probe for BPF_PROG_TYPE_CGROUP_SOCKOPT (Jiri Olsa) [2014861] - s390/bpf: Perform r1 range checking before accessing jit->seen_reg[r1] (Jiri Olsa) [2014861] - libbpf: Restore errno return for functions that were already returning it (Jiri Olsa) [2014861] - powerpc/bpf: Write protect JIT code (Jiri Olsa) [2014861] - powerpc/bpf: Remove bpf_jit_free() (Jiri Olsa) [2014861] - bpf: Fix integer overflow in argument calculation for bpf_map_area_alloc (Jiri Olsa) [2014861] - bpf: Fix false positive kmemleak report in bpf_ringbuf_area_alloc() (Jiri Olsa) [2014861] - bpf: Allow RCU-protected lookups to happen from bh context (Jiri Olsa) [2014861] - bpf, x86: Remove unused cnt increase from EMIT macro (Jiri Olsa) [2014861] - libbpf: Switch to void * casting in netlink helpers (Jiri Olsa) [2014861] - libbpf: Add request buffer type for netlink messages (Jiri Olsa) [2014861] - libbpf: Add extra BPF_PROG_TYPE check to bpf_object__probe_loading (Jiri Olsa) [2014861] - bpf: Add documentation for libbpf including API autogen (Jiri Olsa) [2014861] - bpf: Fix up register-based shifts in interpreter to silence KUBSAN (Jiri Olsa) [2014861] - libbpf: Fail compilation if target arch is missing (Jiri Olsa) [2014861] - bpf: Fix typo in kernel/bpf/bpf_lsm.c (Jiri Olsa) [2014861] - bpf: Support BPF_FUNC_get_socket_cookie() for BPF_PROG_TYPE_SK_REUSEPORT. (Jiri Olsa) [2014861] - libbpf: Set NLM_F_EXCL when creating qdisc (Jiri Olsa) [2014861] - libbpf: Remove unneeded check for flags during tc detach (Jiri Olsa) [2014861] - libbpf: Simplify the return expression of bpf_object__init_maps function (Jiri Olsa) [2014861] - libbpf: Fix pr_warn type warnings on 32bit (Jiri Olsa) [2014861] - libbpf: Install skel_internal.h header used from light skeletons (Jiri Olsa) [2014861] - libbpf: Refactor header installation portions of Makefile (Jiri Olsa) [2014861] - libbpf: Move few APIs from 0.4 to 0.5 version (Jiri Olsa) [2014861] - bpf, tnums: Provably sound, faster, and more precise algorithm for tnum_mul (Jiri Olsa) [2014861] - libbpf: Move BPF_SEQ_PRINTF and BPF_SNPRINTF to bpf_helpers.h (Jiri Olsa) [2014861] - libbpf: Streamline error reporting for high-level APIs (Jiri Olsa) [2014861] - libbpf: Streamline error reporting for low-level APIs (Jiri Olsa) [2014861] - libbpf: Add libbpf_set_strict_mode() API to turn on libbpf 1.0 behaviors (Jiri Olsa) [2014861] - bpf: Fix spelling mistakes (Jiri Olsa) [2014861] - bpf: Extend libbpf with bpf_map_lookup_and_delete_elem_flags (Jiri Olsa) [2014861] - bpf: Add lookup_and_delete_elem support to hashtab (Jiri Olsa) [2014861] - libbpf: Skip bpf_object__probe_loading for light skeleton (Jiri Olsa) [2014861] - bpf: Make some symbols static (Jiri Olsa) [2014861] - bpf: Add cmd alias BPF_PROG_RUN (Jiri Olsa) [2014861] - libbpf: Introduce bpf_map__initial_value(). (Jiri Olsa) [2014861] - libbpf: Cleanup temp FDs when intermediate sys_bpf fails. (Jiri Olsa) [2014861] - libbpf: Generate loader program out of BPF ELF file. (Jiri Olsa) [2014861] - libbpf: Preliminary support for fd_idx (Jiri Olsa) [2014861] - libbpf: Add bpf_object pointer to kernel_supports(). (Jiri Olsa) [2014861] - libbpf: Change the order of data and text relocations. (Jiri Olsa) [2014861] - bpf: Add bpf_sys_close() helper. (Jiri Olsa) [2014861] - bpf: Add bpf_btf_find_by_name_kind() helper. (Jiri Olsa) [2014861] - bpf: Introduce fd_idx (Jiri Olsa) [2014861] - bpf: Make btf_load command to be bpfptr_t compatible. (Jiri Olsa) [2014861] - libbpf: Support for syscall program type (Jiri Olsa) [2014861] - bpf: Prepare bpf syscall to be used from kernel and user space. (Jiri Olsa) [2014861] - bpf: Introduce bpfptr_t user/kernel pointer. (Jiri Olsa) [2014861] - bpf: Introduce bpf_sys_bpf() helper and program type. (Jiri Olsa) [2014861] - libbpf: Add low level TC-BPF management API (Jiri Olsa) [2014861] - libbpf: Add various netlink helpers (Jiri Olsa) [2014861] - libbpf: Reject static entry-point BPF programs (Jiri Olsa) [2014861] - libbpf: Reject static maps (Jiri Olsa) [2014861] - libbpf: Treat STV_INTERNAL same as STV_HIDDEN for functions (Jiri Olsa) [2014861] - libbpf: Add per-file linker opts (Jiri Olsa) [2014861] - bpf: verifier: Use copy_array for jmp_history (Jiri Olsa) [2014861] - bpf: verifier: Improve function state reallocation (Jiri Olsa) [2014861]- ice: fix getting UDP tunnel entry (Jonathan Toppins) [2015409] - ice: convert to new udp_tunnel infrastructure (Jonathan Toppins) [2015409] - selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050807] - KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050807] {CVE-2022-0516} - lib/iov_iter: initialize "flags" in new pipe_buffer (Jan Stancek) [2060875] {CVE-2022-0847} - fget: clarify and improve __fget_files() implementation (Patrick Talbert) [2032303] - fget: check that the fd still exists after getting a ref to it (Patrick Talbert) [2032303] {CVE-2021-4083} - drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2053358] - cgroup-v1: Correct privileges check in release_agent writes (Waiman Long) [2052167] - cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052167] {CVE-2022-0492} - spec: Fix separate tools build (Yauheni Kaliuta) [2056301] - net/mlx5: DR, Add support for update FTE (Amir Tzin) [2047231] - net/mlx5: DR, Improve rule tracking memory consumption (Amir Tzin) [2047231] - net/mlx5: DR, Remove rehash ctrl struct from dr_htbl (Amir Tzin) [2047231] - net/mlx5: DR, Remove HW specific STE type from nic domain (Amir Tzin) [2047231] - net/mlx5: DR, Merge DR_STE_SIZE enums (Amir Tzin) [2047231] - net/mlx5: DR, Skip source port matching on FDB RX domain (Amir Tzin) [2047231] - net/mlx5: DR, Add ignore_flow_level support for multi-dest flow tables (Amir Tzin) [2047231] - net/mlx5: DR, replace uintN_t with kernel-style types (Amir Tzin) [2047231] - net/mlx5: DR, Support IPv6 matching on flow label for STEv0 (Amir Tzin) [2047231] - net/mlx5: DR, Reduce print level for FT chaining level check (Amir Tzin) [2047231] - net/mlx5: DR, Warn and ignore SW steering rule insertion on QP err (Amir Tzin) [2047231] - net/mlx5: DR, Improve error flow in actions_build_ste_arr (Amir Tzin) [2047231] - net/mlx5: DR, Enable QP retransmission (Amir Tzin) [2047231] - net/mlx5: DR, Enable VLAN pop on TX and VLAN push on RX (Amir Tzin) [2047231] - net/mlx5: DR, Split modify VLAN state to separate pop/push states (Amir Tzin) [2047231] - net/mlx5: DR, Added support for REMOVE_HEADER packet reformat (Amir Tzin) [2047231] - net/mlx4_en: Resolve bad operstate value (Amir Tzin) [1982190] - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources() (Amir Tzin) [1982190] - RDMA/mlx4: Do not fail the registration on port stats (Amir Tzin) [1982190] - RDMA/mlx4: Return missed an error if device doesn't support steering (Amir Tzin) [1982190] - net/mlx4_en: Don't allow aRFS for encapsulated packets (Amir Tzin) [1982190] - mlx4: Fix missing error code in mlx4_load_one() (Amir Tzin) [1982190] - net/mlx4: Fix fall-through warning for Clang (Amir Tzin) [1982190] - mlx4: Remove rcu_read_lock() around XDP program invocation (Amir Tzin) [1982190] - IB/mlx4: Avoid field-overflowing memcpy() (Amir Tzin) [1982190] - RDMA/mlx4: Do not map the core_clock page to user space unless enabled (Amir Tzin) [1982190] - net/mlx4: Treat VFs fair when handling comm_channel_events (Amir Tzin) [1982190] - RDMA/mlx4: Remove an unused variable (Amir Tzin) [1982190] - megaraid_sas: Add new messaging - a fix (Tomas Henzl) [2055248] - HID: amd_sfh: Add interrupt handler to process interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add functionality to clear interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Disable the interrupt for all command (Benjamin Tissoires) [2054929] - HID: amd_sfh: Correct the structure field name (Benjamin Tissoires) [2054929] - HID: amd_sfh: Handle amd_sfh work buffer in PM ops (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add illuminance mask to limit ALS max value (Benjamin Tissoires) [2054929] - HID: amd_sfh: Increase sensor command timeout (Benjamin Tissoires) [2054929] - HID: amd_sfh: Update Copyright details (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dev_' API (Benjamin Tissoires) [2054929] - HID: amd_sfh: Use dma_set_mask_and_coherent() (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dma_' API (Benjamin Tissoires) [2054929] - dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2057166] - dm: fix double accounting of flush with data (Benjamin Marzinski) [2057166] - dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2057166] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [2050410 2048786 2050412] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Handle three rank interleaving mode (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Set proper family type for Family 19h Models 20h-2Fh (Aristeu Rozanski) [2050410 2048786 2050412] - netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2009786] - netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2009786] - selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2009786] - netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2009786] - Enable HSA_AMD_SVM config (Donald Dutile) [2025123] - mm/memremap_pages: support multiple ranges per invocation (Donald Dutile) [2025123] - mm/memremap_pages: convert to 'struct range' (Donald Dutile) [2025123] - device-dax: add an allocation interface for device-dax instances (Donald Dutile) [2025123] - device-dax: make pgmap optional for instance creation (Donald Dutile) [2025123] - device-dax: move instance creation parameters to 'struct dev_dax_data' (Donald Dutile) [2025123] - device-dax: drop the dax_region.pfn_flags attribute (Donald Dutile) [2025123] - memremap: rename MEMORY_DEVICE_DEVDAX to MEMORY_DEVICE_GENERIC (Donald Dutile) [2025123] - PCI/P2PDMA: Introduce private pagemap structure (Donald Dutile) [2025123] - security: implement sctp_assoc_established hook in selinux (Ondrej Mosnacek) [2015525 2048251] - security: add sctp_assoc_established hook (Ondrej Mosnacek) [2015525 2048251] - security: call security_sctp_assoc_request in sctp_sf_do_5_1D_ce (Ondrej Mosnacek) [2015525 2048251] - security: pass asoc to sctp_assoc_request and sctp_sk_clone (Ondrej Mosnacek) [2015525 2048251] - net: sctp: Fix some typos (Ondrej Mosnacek) [2015525 2048251] - iwlwifi: mvm: read 6E enablement flags from DSM and pass to FW (Íñigo Huguet) [1923170 1936001] - net/mlx5: Lag, Make mlx5_lag_is_multipath() be static inline (Amir Tzin) [1982193] - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (Amir Tzin) [1982193] - net/mlx5: DR, Ignore modify TTL if device doesn't support it (Amir Tzin) [1982193 2028504] - net/mlx5: Warn for devlink reload when there are VFs alive (Amir Tzin) [1982193] - net/mlx5: DR, Fix lower case macro prefix "mlx5_" to "MLX5_" (Amir Tzin) [1982193] - net/mlx5e: Fix wrong features assignment in case of error (Amir Tzin) [1982193] - net/mlx5e: Fix ICOSQ recovery flow for XSK (Amir Tzin) [1982193] - net/mlx5e: Fix interoperability between XSK and ICOSQ recovery flow (Amir Tzin) [1982193] - net/mlx5e: Wrap the tx reporter dump callback to extract the sq (Amir Tzin) [1982193] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [1982193] - net/mlx5: Fix SF health recovery flow (Amir Tzin) [1982193] - net/mlx5: Fix error print in case of IRQ request failed (Amir Tzin) [1982193] - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources (Amir Tzin) [1982193] - mlx5: fix mlx5i_grp_sw_update_stats() stack usage (Amir Tzin) [1982193] - mlx5: fix psample_sample_packet link error (Amir Tzin) [1982193] - net/mlx5: Fix format-security build warnings (Amir Tzin) [1982193] - net/mlx5e: Fix missing IPsec statistics on uplink representor (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix Software parser inner l3 type setting in case of encapsulation (Amir Tzin) [1982193] - net/mlx5: E-Switch, return error if encap isn't supported (Amir Tzin) [1982193] - net/mlx5: Lag, update tracker when state change event received (Amir Tzin) [1982193] - net/mlx5e: CT, Fix multiple allocations and memleak of mod acts (Amir Tzin) [1982193 2017675] - net/mlx5: Update error handler for UCTX and UMEM (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev (Amir Tzin) [1982193] - net/mlx5e: Wait for concurrent flow deletion during neigh/fib events (Amir Tzin) [1982193] - net/mlx5e: kTLS, Fix crash in RX resync flow (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix work queue entry ethernet segment checksum flags (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix a misuse of the software parser's fields (Amir Tzin) [1982193] - net/mlx5e: Fix vlan data lost during suspend flow (Amir Tzin) [1982193] - net/mlx5: Lag, change multipath and bonding to be mutually exclusive (Amir Tzin) [1982193] - net/mlx5: Lag, move lag destruction to a workqueue (Amir Tzin) [1982193] - RDMA/mlx5: Initialize the ODP xarray when creating an ODP MR (Amir Tzin) [1982193] - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [1982193] - net/mlx5e: Switchdev representors are not vlan challenged (Amir Tzin) [1982193] - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path (Amir Tzin) [1982193] - net/mlx5: Fix cleanup of bridge delayed work (Amir Tzin) [1982193] - RDMA/mlx5: Set user priority for DCT (Amir Tzin) [1982193] - net/mlx5: DR, Fix typo 'offeset' to 'offset' (Amir Tzin) [1982193] - net/mlx5: DR, Fix vport number data type to u16 (Amir Tzin) [1982193] - net/mlx5e: Fix the presented RQ index in PTP stats (Amir Tzin) [1982193] - net/mlx5: Fix setting number of EQs of SFs (Amir Tzin) [1982193] - net/mlx5: Fix length of irq_index in chars (Amir Tzin) [1982193] - net/mlx5: Avoid generating event after PPS out in Real time mode (Amir Tzin) [1982193] - net/mlx5: Force round second at 1PPS out start time (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix double allocation of acl flow counter (Amir Tzin) [1982193] - net/mlx5e: Keep the value for maximum number of channels in-sync (Amir Tzin) [1982193] - net/mlx5e: IPSEC RX, enable checksum complete (Amir Tzin) [1982193] - net/mlx5: DR, Fix code indentation in dr_ste_v1 (Amir Tzin) [1982193] - RDMA/mlx5: Fix xlt_chunk_align calculation (Amir Tzin) [1982193] - RDMA/mlx5: Fix number of allocated XLT entries (Amir Tzin) [1982193] - net/mlx5e: Fix mutual exclusion between CQE compression and HW TS (Amir Tzin) [1982193] - net/mlx5: Fix potential sleeping in atomic context (Amir Tzin) [1982193] - net/mlx5: FWTrace, cancel work on alloc pd error flow (Amir Tzin) [1982193] - net/mlx5: DR, fix a potential use-after-free bug (Amir Tzin) [1982193] - net/mlx5e: Use correct eswitch for stack devices with lag (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set vhca id valid flag when creating indir fwd group (Amir Tzin) [1982193] - net/mlx5: Remove all auxiliary devices at the unregister event (Amir Tzin) [1982193] - net/mlx5: Lag, fix multipath lag activation (Amir Tzin) [1982193] - net/mlx5: Fix variable type to match 64bit (Amir Tzin) [1982193] - net/mlx5: Fix typo in comments (Amir Tzin) [1982193] - net/mlx5e: Remove Duplicated hunk in function __parse_cls_flower() (Amir Tzin) [1982193] - net/mlx5: Fix unpublish devlink parameters (Amir Tzin) [1982193] - RDMA/mlx5: Delete not-available udata check (Amir Tzin) [1982193] - net/mlx5: Fix missing return value in mlx5_devlink_eswitch_inline_mode_set() (Amir Tzin) [1982193] - net/mlx5e: Block LRO if firmware asks for tunneled LRO (Amir Tzin) [1982193] - net/mlx5e: Prohibit inner indir TIRs in IPoIB (Amir Tzin) [1982193] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Amir Tzin) [1982193] - net/mlx5: Fix return value from tracer initialization (Amir Tzin) [1982193] - net/mlx5: Synchronize correct IRQ when destroying CQ (Amir Tzin) [1982193 1982219] - net/mlx5e: TC, Fix error handling memory leak (Amir Tzin) [1982193] - net/mlx5: Destroy pool->mutex (Amir Tzin) [1982193] - net/mlx5: Set all field of mlx5_irq before inserting it to the xarray (Amir Tzin) [1982193] - net/mlx5: Fix order of functions in mlx5_irq_detach_nb() (Amir Tzin) [1982193] - net/mlx5: Block switchdev mode while devlink traps are active (Amir Tzin) [1982193] - net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free (Amir Tzin) [1982193] - net/mlx5: Bridge, fix ageing time (Amir Tzin) [1982193] - net/mlx5e: Avoid creating tunnel headers for local route (Amir Tzin) [1982193] - net/mlx5: DR, Add fail on error check on decap (Amir Tzin) [1982193] - net/mlx5: Don't skip subfunction cleanup in case of error in module init (Amir Tzin) [1982193] - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it recently (Amir Tzin) [1982193] - net/mlx5: Fix mlx5_vport_tbl_attr chain from u16 to u32 (Amir Tzin) [1982193] - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (Amir Tzin) [1982193] - net/mlx5: Unload device upon firmware fatal error (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for ptp-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for trap-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Consider PTP-RQ when setting RX VLAN stripping (Amir Tzin) [1982193] - net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available (Amir Tzin) [1982193] - net/mlx5e: RX, Avoid possible data corruption when relaxed ordering and LRO combined (Amir Tzin) [1982193] - net/mlx5: E-Switch, handle devcom events only for ports on the same device (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set destination vport vhca id only when merged eswitch is supported (Amir Tzin) [1982193] - net/mlx5e: Disable Rx ntuple offload for uplink representor (Amir Tzin) [1982193] - net/mlx5e: kTLS, Add stats for number of deleted kTLS TX offloaded connections (Amir Tzin) [1982193] - net/mlx5: SF, Improve performance in SF allocation (Amir Tzin) [1982193] - net/mlx5: Increase hairpin buffer size (Amir Tzin) [1982193] - net/mlx5: DR, Add support for flow sampler offload (Amir Tzin) [1982193] - net/mlx5: Compare sampler flow destination ID in fs_core (Amir Tzin) [1982193] - net/mlx5: remove "default n" from Kconfig (Amir Tzin) [1982193] - net/mlx5: Fix spelling mistake "enught" -> "enough" (Amir Tzin) [1982193] - net/mlx5: Use cpumask_available() in mlx5_eq_create_generic() (Amir Tzin) [1982193] - net/mlx5: Fix missing error code in mlx5_init_fs() (Amir Tzin) [1982193] - RDMA/mlx5: Support real-time timestamp directly from the device (Amir Tzin) [1982193] - RDMA/mlx5: Refactor get_ts_format functions to simplify code (Amir Tzin) [1982193] - RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs (Amir Tzin) [1982193] - net/mlx5: Round-Robin EQs over IRQs (Amir Tzin) [1982193] - net/mlx5: Separate between public and private API of sf.h (Amir Tzin) [1982193] - net/mlx5: Enlarge interrupt field in CREATE_EQ (Amir Tzin) [1982193] - net/mlx5: Allocating a pool of MSI-X vectors for SFs (Amir Tzin) [1982193] - net/mlx5: Change IRQ storage logic from static to dynamic (Amir Tzin) [1982193] - net/mlx5: Moving rmap logic to EQs (Amir Tzin) [1982193] - net/mlx5: Extend mlx5_irq_request to request IRQ from the kernel (Amir Tzin) [1982193] - net/mlx5: Removing rmap per IRQ (Amir Tzin) [1982193] - net/mlx5: Clean license text in eq.[c|h] files (Amir Tzin) [1982193] - net/mlx5: Provide cpumask at EQ creation phase (Amir Tzin) [1982193] - net/mlx5: Introduce API for request and release IRQs (Amir Tzin) [1982193] - net/mlx5: Delay IRQ destruction till all users are gone (Amir Tzin) [1982193] - net/mlx5: Change ownership model for lag (Amir Tzin) [1982193] - net/mlx5: Lag, Don't rescan if the device is going down (Amir Tzin) [1982193] - net/mlx5: Lag, refactor disable flow (Amir Tzin) [1982193] - net/mlx5: Bridge, add tracepoints (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, filter tagged packets that didn't match tagged fg (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, support pvid and untagged vlan configurations (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, match FDB entry vlan tag (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, implement infrastructure for vlans (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, dynamic entry ageing (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, handle FDB events (Amir Tzin) [1982193 1982234] - docs: networking: Add missing mlx5 documentation (Amir Tzin) [1982193] - net/mlx5: Bridge, add offload infrastructure (Amir Tzin) [1982193 1982234] - net/mlx5e: Refactor mlx5e_eswitch_{*}rep() helpers (Amir Tzin) [1982193 1982234] - net/mlx5: Create TC-miss priority and table (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Support EMD tag in modify header for STEv1 (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Added support for INSERT_HEADER reformat type (Amir Tzin) [1982193 1982234] - net/mlx5: Added new parameters to reformat context (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Allow encap action for RX for supporting devices (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Split reformat state to Encap and Decap (Amir Tzin) [1982193 1982234] - net/mlx5: mlx5_ifc support for header insert/remove (Amir Tzin) [1982193 1982234] - net/mlx5e: Remove unreachable code in mlx5e_xmit() (Amir Tzin) [1982193] - net/mlx5e: RX, Re-place page pool numa node change logic (Amir Tzin) [1982193] - net/mlx5e: Zero-init DIM structures (Amir Tzin) [1982193] - net/mlx5e: IPoIB, Add support for NDR speed (Amir Tzin) [1982193] - net/mlx5e: Remove the repeated declaration (Amir Tzin) [1982193] - net/mlx5: check for allocation failure in mlx5_ft_pool_init() (Amir Tzin) [1982193] - mlx5: count all link events (Amir Tzin) [1982193] - net/mlx5: Expose FW version over defined keyword (Amir Tzin) [1982193] - net/mlx5: Use boolean arithmetic to evaluate roce_lag (Amir Tzin) [1982193] - net/mlx5: Remove unnecessary spin lock protection (Amir Tzin) [1982193] - net/mlx5: Cap the maximum flow group size to 16M entries (Amir Tzin) [1982193] - net/mlx5: DR, Set max table size to 2G entries (Amir Tzin) [1982193] - net/mlx5: Move chains ft pool to be used by all firmware steering (Amir Tzin) [1982193] - net/mlx5: Move table size calculation to steering cmd layer (Amir Tzin) [1982193] - net/mlx5: Add case for FS_FT_NIC_TX FT in MLX5_CAP_FLOWTABLE_TYPE (Amir Tzin) [1982193] - net/mlx5: DR, Remove unused field of send_ring struct (Amir Tzin) [1982193] - net/mlx5e: RX, Remove unnecessary check in RX CQE compression handling (Amir Tzin) [1982193] - net/mlx5: CT: Avoid reusing modify header context for natted entries (Amir Tzin) [1982193] - net/mlx5e: CT, Remove newline from ct_dbg call (Amir Tzin) [1982193] - RDMA/mlx5: Take qp type from mlx5_ib_qp (Amir Tzin) [1982193] - RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response (Amir Tzin) [1982193] - RDMA/mlx5: Support SQD2RTS for modify QP (Amir Tzin) [1982193] - RDMA/mlx5: Remove redundant assignment to ret (Amir Tzin) [1982193] - firewire: fix support status (Tomas Henzl) [2055319] - dlci: fix support status (Tomas Henzl) [2055319] - dlink: fix support status (Tomas Henzl) [2055319] - rxe: fix support status (Tomas Henzl) [2055319] - qic: fix support status (Tomas Henzl) [2055319] - Revert "ceph: enable async dirops by default" (Jeffrey Layton) [2052542] - libceph: optionally use bounce buffer on recv path in crc mode (Jeffrey Layton) [2024725] - libceph: make recv path in secure mode work the same as send path (Jeffrey Layton) [2024725] - mm: use kmap_local_page in memzero_page (Jeffrey Layton) [2024725] - mm: call flush_dcache_page() in memcpy_to_page() and memzero_page() (Jeffrey Layton) [2024725] - iov_iter: lift memzero_page() to highmem.h (Jeffrey Layton) [2024725] - mm/highmem: Convert memcpy_[to|from]_page() to kmap_local_page() (Jeffrey Layton) [2024725] - mm/highmem: Lift memcpy_[to|from]_page to core (Jeffrey Layton) [2024725] - ceph: set pool_ns in new inode layout for async creates (Jeffrey Layton) [2046021] - ceph: properly put ceph_string reference after async create attempt (Jeffrey Layton) [2046021] - ceph: put the requests/sessions when it fails to alloc memory (Jeffrey Layton) [2046021] - ceph: remove redundant Lsx caps check (Jeffrey Layton) [2046021] - ceph: don't check for quotas on MDS stray dirs (Jeffrey Layton) [2046021] - ceph: drop send metrics debug message (Jeffrey Layton) [2046021] - ceph: Fix incorrect statfs report for small quota (Jeffrey Layton) [2011104] - scsi: qla2xxx: stop timer in shutdown path (Nilesh Javali) [2056055] - Revert "PCI: Add support for dev_groups to struct pci_driver" (Michel Dänzer) [2054595] - drm/amdgpu: Assign amdgpu_sysfs_groups to struct device_driver directly (Michel Dänzer) [2054595] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1998359] - redhat: enable zstream release numbering for rhel 8.6 (Augusto Caringi) - redhat: generate distgit changelog in genspec.sh as well (Jan Stancek) - redhat: always upload kabi tarballs (Jan Stancek) - redhat: make genspec prefer metadata from git notes (Jan Stancek) - internal: update RHEL_MINOR for the start of RHEL-8.7 development (Jarod Wilson)- ice: fix getting UDP tunnel entry (Jonathan Toppins) [2015409] - ice: convert to new udp_tunnel infrastructure (Jonathan Toppins) [2015409] - selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050807] - KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050807] {CVE-2022-0516} - lib/iov_iter: initialize "flags" in new pipe_buffer (Jan Stancek) [2060875] {CVE-2022-0847} - fget: clarify and improve __fget_files() implementation (Patrick Talbert) [2032303] - fget: check that the fd still exists after getting a ref to it (Patrick Talbert) [2032303] {CVE-2021-4083} - drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2053358] - cgroup-v1: Correct privileges check in release_agent writes (Waiman Long) [2052167] - cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052167] {CVE-2022-0492} - spec: Fix separate tools build (Yauheni Kaliuta) [2056301] - net/mlx5: DR, Add support for update FTE (Amir Tzin) [2047231] - net/mlx5: DR, Improve rule tracking memory consumption (Amir Tzin) [2047231] - net/mlx5: DR, Remove rehash ctrl struct from dr_htbl (Amir Tzin) [2047231] - net/mlx5: DR, Remove HW specific STE type from nic domain (Amir Tzin) [2047231] - net/mlx5: DR, Merge DR_STE_SIZE enums (Amir Tzin) [2047231] - net/mlx5: DR, Skip source port matching on FDB RX domain (Amir Tzin) [2047231] - net/mlx5: DR, Add ignore_flow_level support for multi-dest flow tables (Amir Tzin) [2047231] - net/mlx5: DR, replace uintN_t with kernel-style types (Amir Tzin) [2047231] - net/mlx5: DR, Support IPv6 matching on flow label for STEv0 (Amir Tzin) [2047231] - net/mlx5: DR, Reduce print level for FT chaining level check (Amir Tzin) [2047231] - net/mlx5: DR, Warn and ignore SW steering rule insertion on QP err (Amir Tzin) [2047231] - net/mlx5: DR, Improve error flow in actions_build_ste_arr (Amir Tzin) [2047231] - net/mlx5: DR, Enable QP retransmission (Amir Tzin) [2047231] - net/mlx5: DR, Enable VLAN pop on TX and VLAN push on RX (Amir Tzin) [2047231] - net/mlx5: DR, Split modify VLAN state to separate pop/push states (Amir Tzin) [2047231] - net/mlx5: DR, Added support for REMOVE_HEADER packet reformat (Amir Tzin) [2047231] - net/mlx4_en: Resolve bad operstate value (Amir Tzin) [1982190] - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources() (Amir Tzin) [1982190] - RDMA/mlx4: Do not fail the registration on port stats (Amir Tzin) [1982190] - RDMA/mlx4: Return missed an error if device doesn't support steering (Amir Tzin) [1982190] - net/mlx4_en: Don't allow aRFS for encapsulated packets (Amir Tzin) [1982190] - mlx4: Fix missing error code in mlx4_load_one() (Amir Tzin) [1982190] - net/mlx4: Fix fall-through warning for Clang (Amir Tzin) [1982190] - mlx4: Remove rcu_read_lock() around XDP program invocation (Amir Tzin) [1982190] - IB/mlx4: Avoid field-overflowing memcpy() (Amir Tzin) [1982190] - RDMA/mlx4: Do not map the core_clock page to user space unless enabled (Amir Tzin) [1982190] - net/mlx4: Treat VFs fair when handling comm_channel_events (Amir Tzin) [1982190] - RDMA/mlx4: Remove an unused variable (Amir Tzin) [1982190]- megaraid_sas: Add new messaging - a fix (Tomas Henzl) [2055248] - HID: amd_sfh: Add interrupt handler to process interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add functionality to clear interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Disable the interrupt for all command (Benjamin Tissoires) [2054929] - HID: amd_sfh: Correct the structure field name (Benjamin Tissoires) [2054929] - HID: amd_sfh: Handle amd_sfh work buffer in PM ops (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add illuminance mask to limit ALS max value (Benjamin Tissoires) [2054929] - HID: amd_sfh: Increase sensor command timeout (Benjamin Tissoires) [2054929] - HID: amd_sfh: Update Copyright details (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dev_' API (Benjamin Tissoires) [2054929] - HID: amd_sfh: Use dma_set_mask_and_coherent() (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dma_' API (Benjamin Tissoires) [2054929] - dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2057166] - dm: fix double accounting of flush with data (Benjamin Marzinski) [2057166] - dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2057166] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [2050410 2048786 2050412] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Handle three rank interleaving mode (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Set proper family type for Family 19h Models 20h-2Fh (Aristeu Rozanski) [2050410 2048786 2050412] - netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2009786] - netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2009786] - selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2009786] - netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2009786] - Enable HSA_AMD_SVM config (Donald Dutile) [2025123] - mm/memremap_pages: support multiple ranges per invocation (Donald Dutile) [2025123] - mm/memremap_pages: convert to 'struct range' (Donald Dutile) [2025123] - device-dax: add an allocation interface for device-dax instances (Donald Dutile) [2025123] - device-dax: make pgmap optional for instance creation (Donald Dutile) [2025123] - device-dax: move instance creation parameters to 'struct dev_dax_data' (Donald Dutile) [2025123] - device-dax: drop the dax_region.pfn_flags attribute (Donald Dutile) [2025123] - memremap: rename MEMORY_DEVICE_DEVDAX to MEMORY_DEVICE_GENERIC (Donald Dutile) [2025123] - PCI/P2PDMA: Introduce private pagemap structure (Donald Dutile) [2025123] - security: implement sctp_assoc_established hook in selinux (Ondrej Mosnacek) [2015525 2048251] - security: add sctp_assoc_established hook (Ondrej Mosnacek) [2015525 2048251] - security: call security_sctp_assoc_request in sctp_sf_do_5_1D_ce (Ondrej Mosnacek) [2015525 2048251] - security: pass asoc to sctp_assoc_request and sctp_sk_clone (Ondrej Mosnacek) [2015525 2048251] - net: sctp: Fix some typos (Ondrej Mosnacek) [2015525 2048251] - iwlwifi: mvm: read 6E enablement flags from DSM and pass to FW (Íñigo Huguet) [1923170 1936001] - net/mlx5: Lag, Make mlx5_lag_is_multipath() be static inline (Amir Tzin) [1982193] - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (Amir Tzin) [1982193] - net/mlx5: DR, Ignore modify TTL if device doesn't support it (Amir Tzin) [1982193 2028504] - net/mlx5: Warn for devlink reload when there are VFs alive (Amir Tzin) [1982193] - net/mlx5: DR, Fix lower case macro prefix "mlx5_" to "MLX5_" (Amir Tzin) [1982193] - net/mlx5e: Fix wrong features assignment in case of error (Amir Tzin) [1982193] - net/mlx5e: Fix ICOSQ recovery flow for XSK (Amir Tzin) [1982193] - net/mlx5e: Fix interoperability between XSK and ICOSQ recovery flow (Amir Tzin) [1982193] - net/mlx5e: Wrap the tx reporter dump callback to extract the sq (Amir Tzin) [1982193] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [1982193] - net/mlx5: Fix SF health recovery flow (Amir Tzin) [1982193] - net/mlx5: Fix error print in case of IRQ request failed (Amir Tzin) [1982193] - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources (Amir Tzin) [1982193] - mlx5: fix mlx5i_grp_sw_update_stats() stack usage (Amir Tzin) [1982193] - mlx5: fix psample_sample_packet link error (Amir Tzin) [1982193] - net/mlx5: Fix format-security build warnings (Amir Tzin) [1982193] - net/mlx5e: Fix missing IPsec statistics on uplink representor (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix Software parser inner l3 type setting in case of encapsulation (Amir Tzin) [1982193] - net/mlx5: E-Switch, return error if encap isn't supported (Amir Tzin) [1982193] - net/mlx5: Lag, update tracker when state change event received (Amir Tzin) [1982193] - net/mlx5e: CT, Fix multiple allocations and memleak of mod acts (Amir Tzin) [1982193 2017675] - net/mlx5: Update error handler for UCTX and UMEM (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev (Amir Tzin) [1982193] - net/mlx5e: Wait for concurrent flow deletion during neigh/fib events (Amir Tzin) [1982193] - net/mlx5e: kTLS, Fix crash in RX resync flow (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix work queue entry ethernet segment checksum flags (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix a misuse of the software parser's fields (Amir Tzin) [1982193] - net/mlx5e: Fix vlan data lost during suspend flow (Amir Tzin) [1982193] - net/mlx5: Lag, change multipath and bonding to be mutually exclusive (Amir Tzin) [1982193] - net/mlx5: Lag, move lag destruction to a workqueue (Amir Tzin) [1982193] - RDMA/mlx5: Initialize the ODP xarray when creating an ODP MR (Amir Tzin) [1982193] - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [1982193] - net/mlx5e: Switchdev representors are not vlan challenged (Amir Tzin) [1982193] - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path (Amir Tzin) [1982193] - net/mlx5: Fix cleanup of bridge delayed work (Amir Tzin) [1982193] - RDMA/mlx5: Set user priority for DCT (Amir Tzin) [1982193] - net/mlx5: DR, Fix typo 'offeset' to 'offset' (Amir Tzin) [1982193] - net/mlx5: DR, Fix vport number data type to u16 (Amir Tzin) [1982193] - net/mlx5e: Fix the presented RQ index in PTP stats (Amir Tzin) [1982193] - net/mlx5: Fix setting number of EQs of SFs (Amir Tzin) [1982193] - net/mlx5: Fix length of irq_index in chars (Amir Tzin) [1982193] - net/mlx5: Avoid generating event after PPS out in Real time mode (Amir Tzin) [1982193] - net/mlx5: Force round second at 1PPS out start time (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix double allocation of acl flow counter (Amir Tzin) [1982193] - net/mlx5e: Keep the value for maximum number of channels in-sync (Amir Tzin) [1982193] - net/mlx5e: IPSEC RX, enable checksum complete (Amir Tzin) [1982193] - net/mlx5: DR, Fix code indentation in dr_ste_v1 (Amir Tzin) [1982193] - RDMA/mlx5: Fix xlt_chunk_align calculation (Amir Tzin) [1982193] - RDMA/mlx5: Fix number of allocated XLT entries (Amir Tzin) [1982193] - net/mlx5e: Fix mutual exclusion between CQE compression and HW TS (Amir Tzin) [1982193] - net/mlx5: Fix potential sleeping in atomic context (Amir Tzin) [1982193] - net/mlx5: FWTrace, cancel work on alloc pd error flow (Amir Tzin) [1982193] - net/mlx5: DR, fix a potential use-after-free bug (Amir Tzin) [1982193] - net/mlx5e: Use correct eswitch for stack devices with lag (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set vhca id valid flag when creating indir fwd group (Amir Tzin) [1982193] - net/mlx5: Remove all auxiliary devices at the unregister event (Amir Tzin) [1982193] - net/mlx5: Lag, fix multipath lag activation (Amir Tzin) [1982193] - net/mlx5: Fix variable type to match 64bit (Amir Tzin) [1982193] - net/mlx5: Fix typo in comments (Amir Tzin) [1982193] - net/mlx5e: Remove Duplicated hunk in function __parse_cls_flower() (Amir Tzin) [1982193] - net/mlx5: Fix unpublish devlink parameters (Amir Tzin) [1982193] - RDMA/mlx5: Delete not-available udata check (Amir Tzin) [1982193] - net/mlx5: Fix missing return value in mlx5_devlink_eswitch_inline_mode_set() (Amir Tzin) [1982193] - net/mlx5e: Block LRO if firmware asks for tunneled LRO (Amir Tzin) [1982193] - net/mlx5e: Prohibit inner indir TIRs in IPoIB (Amir Tzin) [1982193] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Amir Tzin) [1982193] - net/mlx5: Fix return value from tracer initialization (Amir Tzin) [1982193] - net/mlx5: Synchronize correct IRQ when destroying CQ (Amir Tzin) [1982193 1982219] - net/mlx5e: TC, Fix error handling memory leak (Amir Tzin) [1982193] - net/mlx5: Destroy pool->mutex (Amir Tzin) [1982193] - net/mlx5: Set all field of mlx5_irq before inserting it to the xarray (Amir Tzin) [1982193] - net/mlx5: Fix order of functions in mlx5_irq_detach_nb() (Amir Tzin) [1982193] - net/mlx5: Block switchdev mode while devlink traps are active (Amir Tzin) [1982193] - net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free (Amir Tzin) [1982193] - net/mlx5: Bridge, fix ageing time (Amir Tzin) [1982193] - net/mlx5e: Avoid creating tunnel headers for local route (Amir Tzin) [1982193] - net/mlx5: DR, Add fail on error check on decap (Amir Tzin) [1982193] - net/mlx5: Don't skip subfunction cleanup in case of error in module init (Amir Tzin) [1982193] - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it recently (Amir Tzin) [1982193] - net/mlx5: Fix mlx5_vport_tbl_attr chain from u16 to u32 (Amir Tzin) [1982193] - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (Amir Tzin) [1982193] - net/mlx5: Unload device upon firmware fatal error (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for ptp-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for trap-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Consider PTP-RQ when setting RX VLAN stripping (Amir Tzin) [1982193] - net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available (Amir Tzin) [1982193] - net/mlx5e: RX, Avoid possible data corruption when relaxed ordering and LRO combined (Amir Tzin) [1982193] - net/mlx5: E-Switch, handle devcom events only for ports on the same device (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set destination vport vhca id only when merged eswitch is supported (Amir Tzin) [1982193] - net/mlx5e: Disable Rx ntuple offload for uplink representor (Amir Tzin) [1982193] - net/mlx5e: kTLS, Add stats for number of deleted kTLS TX offloaded connections (Amir Tzin) [1982193] - net/mlx5: SF, Improve performance in SF allocation (Amir Tzin) [1982193] - net/mlx5: Increase hairpin buffer size (Amir Tzin) [1982193] - net/mlx5: DR, Add support for flow sampler offload (Amir Tzin) [1982193] - net/mlx5: Compare sampler flow destination ID in fs_core (Amir Tzin) [1982193] - net/mlx5: remove "default n" from Kconfig (Amir Tzin) [1982193] - net/mlx5: Fix spelling mistake "enught" -> "enough" (Amir Tzin) [1982193] - net/mlx5: Use cpumask_available() in mlx5_eq_create_generic() (Amir Tzin) [1982193] - net/mlx5: Fix missing error code in mlx5_init_fs() (Amir Tzin) [1982193] - RDMA/mlx5: Support real-time timestamp directly from the device (Amir Tzin) [1982193] - RDMA/mlx5: Refactor get_ts_format functions to simplify code (Amir Tzin) [1982193] - RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs (Amir Tzin) [1982193] - net/mlx5: Round-Robin EQs over IRQs (Amir Tzin) [1982193] - net/mlx5: Separate between public and private API of sf.h (Amir Tzin) [1982193] - net/mlx5: Enlarge interrupt field in CREATE_EQ (Amir Tzin) [1982193] - net/mlx5: Allocating a pool of MSI-X vectors for SFs (Amir Tzin) [1982193] - net/mlx5: Change IRQ storage logic from static to dynamic (Amir Tzin) [1982193] - net/mlx5: Moving rmap logic to EQs (Amir Tzin) [1982193] - net/mlx5: Extend mlx5_irq_request to request IRQ from the kernel (Amir Tzin) [1982193] - net/mlx5: Removing rmap per IRQ (Amir Tzin) [1982193] - net/mlx5: Clean license text in eq.[c|h] files (Amir Tzin) [1982193] - net/mlx5: Provide cpumask at EQ creation phase (Amir Tzin) [1982193] - net/mlx5: Introduce API for request and release IRQs (Amir Tzin) [1982193] - net/mlx5: Delay IRQ destruction till all users are gone (Amir Tzin) [1982193] - net/mlx5: Change ownership model for lag (Amir Tzin) [1982193] - net/mlx5: Lag, Don't rescan if the device is going down (Amir Tzin) [1982193] - net/mlx5: Lag, refactor disable flow (Amir Tzin) [1982193] - net/mlx5: Bridge, add tracepoints (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, filter tagged packets that didn't match tagged fg (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, support pvid and untagged vlan configurations (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, match FDB entry vlan tag (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, implement infrastructure for vlans (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, dynamic entry ageing (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, handle FDB events (Amir Tzin) [1982193 1982234] - docs: networking: Add missing mlx5 documentation (Amir Tzin) [1982193] - net/mlx5: Bridge, add offload infrastructure (Amir Tzin) [1982193 1982234] - net/mlx5e: Refactor mlx5e_eswitch_{*}rep() helpers (Amir Tzin) [1982193 1982234] - net/mlx5: Create TC-miss priority and table (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Support EMD tag in modify header for STEv1 (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Added support for INSERT_HEADER reformat type (Amir Tzin) [1982193 1982234] - net/mlx5: Added new parameters to reformat context (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Allow encap action for RX for supporting devices (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Split reformat state to Encap and Decap (Amir Tzin) [1982193 1982234] - net/mlx5: mlx5_ifc support for header insert/remove (Amir Tzin) [1982193 1982234] - net/mlx5e: Remove unreachable code in mlx5e_xmit() (Amir Tzin) [1982193] - net/mlx5e: RX, Re-place page pool numa node change logic (Amir Tzin) [1982193] - net/mlx5e: Zero-init DIM structures (Amir Tzin) [1982193] - net/mlx5e: IPoIB, Add support for NDR speed (Amir Tzin) [1982193] - net/mlx5e: Remove the repeated declaration (Amir Tzin) [1982193] - net/mlx5: check for allocation failure in mlx5_ft_pool_init() (Amir Tzin) [1982193] - mlx5: count all link events (Amir Tzin) [1982193] - net/mlx5: Expose FW version over defined keyword (Amir Tzin) [1982193] - net/mlx5: Use boolean arithmetic to evaluate roce_lag (Amir Tzin) [1982193] - net/mlx5: Remove unnecessary spin lock protection (Amir Tzin) [1982193] - net/mlx5: Cap the maximum flow group size to 16M entries (Amir Tzin) [1982193] - net/mlx5: DR, Set max table size to 2G entries (Amir Tzin) [1982193] - net/mlx5: Move chains ft pool to be used by all firmware steering (Amir Tzin) [1982193] - net/mlx5: Move table size calculation to steering cmd layer (Amir Tzin) [1982193] - net/mlx5: Add case for FS_FT_NIC_TX FT in MLX5_CAP_FLOWTABLE_TYPE (Amir Tzin) [1982193] - net/mlx5: DR, Remove unused field of send_ring struct (Amir Tzin) [1982193] - net/mlx5e: RX, Remove unnecessary check in RX CQE compression handling (Amir Tzin) [1982193] - net/mlx5: CT: Avoid reusing modify header context for natted entries (Amir Tzin) [1982193] - net/mlx5e: CT, Remove newline from ct_dbg call (Amir Tzin) [1982193] - RDMA/mlx5: Take qp type from mlx5_ib_qp (Amir Tzin) [1982193] - RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response (Amir Tzin) [1982193] - RDMA/mlx5: Support SQD2RTS for modify QP (Amir Tzin) [1982193] - RDMA/mlx5: Remove redundant assignment to ret (Amir Tzin) [1982193] - firewire: fix support status (Tomas Henzl) [2055319] - dlci: fix support status (Tomas Henzl) [2055319] - dlink: fix support status (Tomas Henzl) [2055319] - rxe: fix support status (Tomas Henzl) [2055319] - qic: fix support status (Tomas Henzl) [2055319] - Revert "ceph: enable async dirops by default" (Jeffrey Layton) [2052542] - libceph: optionally use bounce buffer on recv path in crc mode (Jeffrey Layton) [2024725] - libceph: make recv path in secure mode work the same as send path (Jeffrey Layton) [2024725] - mm: use kmap_local_page in memzero_page (Jeffrey Layton) [2024725] - mm: call flush_dcache_page() in memcpy_to_page() and memzero_page() (Jeffrey Layton) [2024725] - iov_iter: lift memzero_page() to highmem.h (Jeffrey Layton) [2024725] - mm/highmem: Convert memcpy_[to|from]_page() to kmap_local_page() (Jeffrey Layton) [2024725] - mm/highmem: Lift memcpy_[to|from]_page to core (Jeffrey Layton) [2024725] - ceph: set pool_ns in new inode layout for async creates (Jeffrey Layton) [2046021] - ceph: properly put ceph_string reference after async create attempt (Jeffrey Layton) [2046021] - ceph: put the requests/sessions when it fails to alloc memory (Jeffrey Layton) [2046021] - ceph: remove redundant Lsx caps check (Jeffrey Layton) [2046021] - ceph: don't check for quotas on MDS stray dirs (Jeffrey Layton) [2046021] - ceph: drop send metrics debug message (Jeffrey Layton) [2046021] - ceph: Fix incorrect statfs report for small quota (Jeffrey Layton) [2011104] - scsi: qla2xxx: stop timer in shutdown path (Nilesh Javali) [2056055] - Revert "PCI: Add support for dev_groups to struct pci_driver" (Michel Dänzer) [2054595] - drm/amdgpu: Assign amdgpu_sysfs_groups to struct device_driver directly (Michel Dänzer) [2054595] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1998359] - redhat: enable zstream release numbering for rhel 8.6 (Augusto Caringi) - redhat: generate distgit changelog in genspec.sh as well (Jan Stancek) - redhat: always upload kabi tarballs (Jan Stancek) - redhat: make genspec prefer metadata from git notes (Jan Stancek)- xfs: don't generate selinux audit messages for capability testing (Brian Foster) [2059835]- ice: Implement support for SMA and U.FL on E810-T (Jonathan Toppins) [1975007] - ice: Add support for SMA control multiplexer (Jonathan Toppins) [1975007] - ice: Implement functions for reading and setting GPIO pins (Jonathan Toppins) [1975007] - ice: Refactor ice_aqc_link_topo_addr (Jonathan Toppins) [1975007] - xfs: restore speculative_cow_prealloc_lifetime sysctl (Bill O'Donnell) [2015621] - xfs: Fix the free logic of state in xfs_attr_node_hasname (Bill O'Donnell) [2015621 2037498] - xfs: punch out data fork delalloc blocks on COW writeback failure (Bill O'Donnell) [2015621 2012872] - xfs: use kmem_cache_free() for kmem_cache objects (Bill O'Donnell) [2015621] - xfs: logging the on disk inode LSN can make it go backwards (Bill O'Donnell) [2015621] - xfs: only reset incore inode health state flags when reclaiming an inode (Bill O'Donnell) [2015621] - xfs: remove obsolete AGF counter debugging (Bill O'Donnell) [2015621] - xfs: Initialize xfs_alloc_arg->total correctly when allocating minlen extents (Bill O'Donnell) [2015621] - xfs: Fix dax inode extent calculation when direct write is performed on an unwritten extent (Bill O'Donnell) [2015621] - xfs: mark a data structure sick if there are cross-referencing errors (Bill O'Donnell) [2015621] - xfs: fix maxlevels comparisons in the btree staging code (Bill O'Donnell) [2015621] - xfs: fix incorrect unit conversion in scrub tracepoint (Bill O'Donnell) [2015621] - xfs: fix log intent recovery ENOSPC shutdowns when inactivating inodes (Bill O'Donnell) [2015621] - xfs: fix radix tree tag signs (Bill O'Donnell) [2015621] - xfs: force log and push AIL to clear pinned inodes when aborting mount (Bill O'Donnell) [2015621] - xfs: use current->journal_info for detecting transaction recursion (Bill O'Donnell) [2015621] - xfs: don't nest transactions when scanning for eofblocks (Bill O'Donnell) [2015621] - xfs: fix boolreturn.cocci warnings (Bill O'Donnell) [2015621] - xfs: get rid of xfs_growfs_{data,log}_t (Bill O'Donnell) [2015621] - xfs: rename `new' to `delta' in xfs_growfs_data_private() (Bill O'Donnell) [2015621] - xfs: don't bounce the iolock between free_{eof,cow}blocks (Bill O'Donnell) [2015621] - xfs: expose the blockgc workqueue knobs publicly (Bill O'Donnell) [2015621] - xfs: parallelize block preallocation garbage collection (Bill O'Donnell) [2015621] - xfs: rename block gc start and stop functions (Bill O'Donnell) [2015621] - xfs: only walk the incore inode tree once per blockgc scan (Bill O'Donnell) [2015621] - xfs: consolidate the eofblocks and cowblocks workers (Bill O'Donnell) [2015621] - xfs: consolidate incore inode radix tree posteof/cowblocks tags (Bill O'Donnell) [2015621] - xfs: remove trivial eof/cowblocks functions (Bill O'Donnell) [2015621] - xfs: hide xfs_icache_free_cowblocks (Bill O'Donnell) [2015621] - xfs: hide xfs_icache_free_eofblocks (Bill O'Donnell) [2015621] - xfs: relocate the eofb/cowb workqueue functions (Bill O'Donnell) [2015621] - xfs: set WQ_SYSFS on all workqueues in debug mode (Bill O'Donnell) [2015621] - xfs: increase the default parallelism levels of pwork clients (Bill O'Donnell) [2015621] - xfs: flush speculative space allocations when we run out of space (Bill O'Donnell) [2015621] - xfs: refactor xfs_icache_free_{eof,cow}blocks call sites (Bill O'Donnell) [2015621] - xfs: add a tracepoint for blockgc scans (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for chown (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for inode creation (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for file blocks (Bill O'Donnell) [2015621] - xfs: try worst case space reservation upfront in xfs_reflink_remap_extent (Bill O'Donnell) [2015621] - xfs: pass flags and return gc errors from xfs_blockgc_free_quota (Bill O'Donnell) [2015621] - xfs: move and rename xfs_inode_free_quota_blocks to avoid conflicts (Bill O'Donnell) [2015621] - xfs: xfs_inode_free_quota_blocks should scan project quota (Bill O'Donnell) [2015621] - xfs: don't stall cowblocks scan if we can't take locks (Bill O'Donnell) [2015621] - xfs: trigger all block gc scans when low on quota space (Bill O'Donnell) [2015621] - xfs: shut down the filesystem if we screw up quota reservation (Bill O'Donnell) [2015621] - xfs: rename code to error in xfs_ioctl_setattr (Bill O'Donnell) [2015621] - xfs: remove xfs_qm_vop_chown_reserve (Bill O'Donnell) [2015621] - xfs: refactor inode ownership change transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: refactor inode creation transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: refactor reflink functions to use xfs_trans_alloc_inode (Bill O'Donnell) [2015621] - xfs: allow reservation of rtblocks with xfs_trans_alloc_inode (Bill O'Donnell) [2015621] - xfs: refactor common transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: reserve data and rt quota at the same time (Bill O'Donnell) [2015621] - xfs: clean up icreate quota reservation calls (Bill O'Donnell) [2015621] - xfs: remove xfs_trans_unreserve_quota_nblks completely (Bill O'Donnell) [2015621] - xfs: create convenience wrappers for incore quota block reservations (Bill O'Donnell) [2015621] - xfs: clean up quota reservation callsites (Bill O'Donnell) [2015621] - xfs: reduce quota reservation when doing a dax unwritten extent conversion (Bill O'Donnell) [2015621] - xfs: reduce exclusive locking on unaligned dio (Bill O'Donnell) [2015621] - xfs: split the unaligned DIO write code out (Bill O'Donnell) [2015621] - xfs: improve the reflink_bounce_dio_write tracepoint (Bill O'Donnell) [2015621] - xfs: simplify the read/write tracepoints (Bill O'Donnell) [2015621] - xfs: remove the buffered I/O fallback assert (Bill O'Donnell) [2015621] - xfs: cleanup the read/write helper naming (Bill O'Donnell) [2015621] - xfs: make xfs_file_aio_write_checks IOCB_NOWAIT-aware (Bill O'Donnell) [2015621] - xfs: factor out a xfs_ilock_iocb helper (Bill O'Donnell) [2015621] - xfs: Fix 'set but not used' warning in xfs_bmap_compute_alignments() (Bill O'Donnell) [2015621] - xfs: fix unused log variable in xfs_log_cover() (Bill O'Donnell) [2015621] - iomap: add a IOMAP_DIO_OVERWRITE_ONLY flag (Bill O'Donnell) [2015621] - iomap: pass a flags argument to iomap_dio_rw (Bill O'Donnell) [2015621] - iomap: rename the flags variable in __iomap_dio_rw (Bill O'Donnell) [2015621] - iomap: Allow filesystem to call iomap_dio_complete without i_rwsem (Bill O'Donnell) [2015621] - xfs: reduce ilock acquisitions in xfs_file_fsync (Bill O'Donnell) [2015621] - xfs: refactor xfs_file_fsync (Bill O'Donnell) [2015621] - xfs: cover the log on freeze instead of cleaning it (Bill O'Donnell) [2015621] - xfs: remove xfs_quiesce_attr() (Bill O'Donnell) [2015621] - xfs: remove duplicate wq cancel and log force from attr quiesce (Bill O'Donnell) [2015621] - xfs: fold sbcount quiesce logging into log covering (Bill O'Donnell) [2015621] - xfs: don't reset log idle state on covering checkpoints (Bill O'Donnell) [2015621] - xfs: cover the log during log quiesce (Bill O'Donnell) [2015621] - xfs: separate log cleaning from log quiesce (Bill O'Donnell) [2015621] - xfs: lift writable fs check up into log worker task (Bill O'Donnell) [2015621] - xfs: set inode size after creating symlink (Bill O'Donnell) [2015621] - xfs: remove a stale comment from xfs_file_aio_write_checks() (Bill O'Donnell) [2015621] - xfs: Introduce error injection to allocate only minlen size extents for files (Bill O'Donnell) [2015621] - xfs: Process allocated extent in a separate function (Bill O'Donnell) [2015621] - xfs: Compute bmap extent alignments in a separate function (Bill O'Donnell) [2015621] - xfs: Remove duplicate assert statement in xfs_bmap_btalloc() (Bill O'Donnell) [2015621] - xfs: Introduce error injection to reduce maximum inode fork extent count (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when swapping extents (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when remapping an extent (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when moving extent from cow to data fork (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when writing to unwritten extent (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when adding/removing xattrs (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when renaming dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when removing dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when adding dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when punching a hole (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when trivally adding a new extent (Bill O'Donnell) [2015621] - xfs: Add helper for checking per-inode extent count overflow (Bill O'Donnell) [2015621] - iwlwifi: pcie: add killer devices to the driver (Íñigo Huguet) [2043453] - iwlwifi: add support for BNJ HW (Íñigo Huguet) [2043453] - iwlwifi: Fix FW name for gl (Íñigo Huguet) [2043453] - iwlwifi: Read the correct addresses when getting the crf id (Íñigo Huguet) [2043453] - iwlwifi: pcie: add jacket bit to device configuration parsing (Íñigo Huguet) [2043453] - iwlwifi: add new ax1650 killer device (Íñigo Huguet) [2043453] - iwlwifi: add new Qu-Hr device (Íñigo Huguet) [2043453] - iwlwifi: add missing entries for Gf4 with So and SoF (Íñigo Huguet) [2043453] - iwlwifi: remove unused iwlax210_2ax_cfg_so_hr_a0 structure (Íñigo Huguet) [2043453] - iwlwifi: add support for Bz-Z HW (Íñigo Huguet) [2043453] - iwlwifi: support 4-bits in MAC step value (Íñigo Huguet) [2043453] - iwlwifi: mvm: Increase the scan timeout guard to 30 seconds (Íñigo Huguet) [2043453] - iwlwifi: mvm: Use div_s64 instead of do_div in iwl_mvm_ftm_rtt_smoothing() (Íñigo Huguet) [2043453] - mt76: mt7921: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2043453] - ath11k: Fix unexpected return buffer manager error for QCA6390 (Íñigo Huguet) [2043453] - ath11k: Fix napi related hang (Íñigo Huguet) [2043453] - iwlwifi: yoyo: fix issue with new DBGI_SRAM region read. (Íñigo Huguet) [2043453] - iwlwifi: pcie: make sure prph_info is set when treating wakeup IRQ (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix AUX ROC removal (Íñigo Huguet) [2043453] - iwlwifi: mvm: set protected flag only for NDP ranging (Íñigo Huguet) [2043453] - iwlwifi: mvm: perform 6GHz passive scan after suspend (Íñigo Huguet) [2043453] - iwlwifi: mvm: Fix calculation of frame length (Íñigo Huguet) [2043453] - iwlwifi: mvm: test roc running status bits before removing the sta (Íñigo Huguet) [2043453] - iwlwifi: don't pass actual WGDS revision number in table_revision (Íñigo Huguet) [2043453] - iwlwifi: fix leaks/bad data after failed firmware load (Íñigo Huguet) [2043453] - iwlwifi: fix debug TLV parsing (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix 32-bit build in FTM (Íñigo Huguet) [2043453] - iwlwifi: fix Bz NMI behaviour (Íñigo Huguet) [2043453] - rtlwifi: rtl8192cu: Fix WARNING when calling local_irq_restore() with interrupts enabled (Íñigo Huguet) [2043453] - rtw88: 8822c: update rx settings to prevent potential hw deadlock (Íñigo Huguet) [2043453] - rtw88: Disable PCIe ASPM while doing NAPI poll on 8821CE (Íñigo Huguet) [2043453] - ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream (Íñigo Huguet) [2043453] - ath9k_htc: fix NULL pointer dereference at ath9k_htc_tx_get_packet() (Íñigo Huguet) [2043453] - ath9k_htc: fix NULL pointer dereference at ath9k_htc_rxep() (Íñigo Huguet) [2043453] - mac80211: fix FEC flag in radio tap header (Íñigo Huguet) [2043453] - mt76: mt7921: fix possible resume failure (Íñigo Huguet) [2043453] - mt76: mt7921: move mt76_connac_mcu_set_hif_suspend to bus-related files (Íñigo Huguet) [2043453] - mt76: mt7921: fix network buffer leak by txs missing (Íñigo Huguet) [2043453] - mt76: mt7615: clear mcu error interrupt status on mt7663 (Íñigo Huguet) [2043453] - mt76: connac: fix last_chan configuration in mt76_connac_mcu_rate_txpower_band (Íñigo Huguet) [2043453] - mt76: mt7921: use correct iftype data on 6GHz cap init (Íñigo Huguet) [2043453] - mt76: mt7921: fix boolreturn.cocci warning (Íñigo Huguet) [2043453] - mt76: mt7615: fix unused tx antenna mask in testmode (Íñigo Huguet) [2043453] - mt76: fix the wiphy's available antennas to the correct value (Íñigo Huguet) [2043453] - mt76: connac: fix a theoretical NULL pointer dereference in mt76_connac_get_phy_mode (Íñigo Huguet) [2043453] - mt76: mt7921: fix possible NULL pointer dereference in mt7921_mac_write_txwi (Íñigo Huguet) [2043453] - mt76: fix possible OOB issue in mt76_calculate_default_rate (Íñigo Huguet) [2043453] - mt76: debugfs: fix queue reporting for mt76-usb (Íñigo Huguet) [2043453] - mt76: mt7915: fix SMPS operation fail (Íñigo Huguet) [2043453] - mt76: mt7915: fix return condition in mt7915_tm_reg_backup_restore() (Íñigo Huguet) [2043453] - mt76: mt7921: fix MT7921E reset failure (Íñigo Huguet) [2043453] - mt76: mt7615: fix possible deadlock while mt7615_register_ext_phy() (Íñigo Huguet) [2043453] - mt76: mt7921: drop offload_flags overwritten (Íñigo Huguet) [2043453] - mt76: mt7915: get rid of mt7915_mcu_set_fixed_rate routine (Íñigo Huguet) [2043453] - bus: mhi: core: Use correctly sized arguments for bit field (Íñigo Huguet) [2043453] - bus: mhi: core: Fix race while handling SYS_ERR at power up (Íñigo Huguet) [2043453] - bus: mhi: core: Fix reading wake_capable channel configuration (Íñigo Huguet) [2043453] - bus: mhi: core: Minor style and comment fixes (Íñigo Huguet) [2043453] - bus: mhi: pci_generic: Graceful shutdown on freeze (Íñigo Huguet) [2043453] - ath11k: Fix a NULL pointer dereference in ath11k_mac_op_hw_scan() (Íñigo Huguet) [2043453] - mt76: remove variable set but not used (Íñigo Huguet) [2043453] - ath11k: Fix deleting uninitialized kernel timer during fragment cache flush (Íñigo Huguet) [2043453] - ath11k: add spectral/CFR buffer validation support (Íñigo Huguet) [2043453] - ath11k: Fix buffer overflow when scanning with extraie (Íñigo Huguet) [2043453] - mwifiex: Fix possible ABBA deadlock (Íñigo Huguet) [2043453] - ath10k: fix scan abort when duration is set for hw scan (Íñigo Huguet) [2043453] - ath10k: Fix tx hanging (Íñigo Huguet) [2043453] - iwlwifi: acpi: fix wgds rev 3 size (Íñigo Huguet) [2043453] - iwlwifi: mvm: avoid clearing a just saved session protection id (Íñigo Huguet) [2043453] - iwlwifi: mvm: Fix wrong documentation for scan request command (Íñigo Huguet) [2043453] - iwlwifi: mvm: synchronize with FW after multicast commands (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix delBA vs. NSSN queue sync race (Íñigo Huguet) [2043453] - ath11k: Fix QMI file type enum value (Íñigo Huguet) [2043453] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2043453] - ath10k: Fix the MTU size on QCA9377 SDIO (Íñigo Huguet) [2043453] - wireless: iwlwifi: Fix a double free in iwl_txq_dyn_alloc_dma (Íñigo Huguet) [2043453] - mwifiex: Ignore BTCOEX events from the 88W8897 firmware (Íñigo Huguet) [2043453] - mwifiex: Fix skb_over_panic in mwifiex_usb_recv() (Íñigo Huguet) [2043453] - ath11k: Use host CE parameters for CE interrupts configuration (Íñigo Huguet) [2043453] - ath11k: Fix mon status ring rx tlv processing (Íñigo Huguet) [2043453] - ath11k: skip sending vdev down for channel switch (Íñigo Huguet) [2043453] - ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev (Íñigo Huguet) [2043453] - ath11k: Set IRQ affinity to CPU0 in case of one MSI vector (Íñigo Huguet) [2043453] - ath11k: do not restore ASPM in case of single MSI vector (Íñigo Huguet) [2043453] - ath11k: add support one MSI vector (Íñigo Huguet) [2043453] - ath11k: refactor multiple MSI vector implementation (Íñigo Huguet) [2043453] - ath11k: use ATH11K_PCI_IRQ_DP_OFFSET for DP IRQ (Íñigo Huguet) [2043453] - ath11k: add CE and ext IRQ flag to indicate irq_handler (Íñigo Huguet) [2043453] - ath11k: get msi_data again after request_irq is called (Íñigo Huguet) [2043453] - ath9k: fix intr_txqs setting (Íñigo Huguet) [2043453] - ath11k: add hw_param for wakeup_mhi (Íñigo Huguet) [2043453] - ath11k: reset RSN/WPA present state for open BSS (Íñigo Huguet) [2043453] - ath11k: clear the keys properly via DISABLE_KEY (Íñigo Huguet) [2043453] - ath11k: Fix crash caused by uninitialized TX ring (Íñigo Huguet) [2043453] - ath11k: use cache line aligned buffers for dbring (Íñigo Huguet) [2043453] - ath11k: Fix ETSI regd with weather radar overlap (Íñigo Huguet) [2043453] - ath11k: fix FCS_ERR flag in radio tap header (Íñigo Huguet) [2043453] - ath11k: fix the value of msecs_to_jiffies in ath11k_debugfs_fw_stats_request (Íñigo Huguet) [2043453] - ath11k: fix firmware crash during channel switch (Íñigo Huguet) [2043453] - ath11k: Fix 'unused-but-set-parameter' error (Íñigo Huguet) [2043453] - ath11k: fix DMA memory free in CE pipe cleanup (Íñigo Huguet) [2043453] - ath11k: fix error routine when fallback of add interface fails (Íñigo Huguet) [2043453] - ath11k: fix fw crash due to peer get authorized before key install (Íñigo Huguet) [2043453] - ath11k: Clear auth flag only for actual association in security mode (Íñigo Huguet) [2043453] - ath11k: Send PPDU_STATS_CFG with proper pdev mask to firmware (Íñigo Huguet) [2043453] - ath11k: set correct NL80211_FEATURE_DYNAMIC_SMPS for WCN6855 (Íñigo Huguet) [2043453] - mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh (Íñigo Huguet) [2043453] - mac80211: initialize variable have_higher_than_11mbit (Íñigo Huguet) [2043453] - mac80211: fix locking in ieee80211_start_ap error path (Íñigo Huguet) [2043453] - mac80211: do drv_reconfig_complete() before restarting all (Íñigo Huguet) [2043453] - mac80211: mark TX-during-stop for TX in in_reconfig (Íñigo Huguet) [2043453] - mac80211: update channel context before station state (Íñigo Huguet) [2043453] - mac80211: Fix the size used for building probe request (Íñigo Huguet) [2043453] - mac80211: fix lookup when adding AddBA extension element (Íñigo Huguet) [2043453] - mac80211: validate extended element ID is present (Íñigo Huguet) [2043453] - cfg80211: Acquire wiphy mutex on regulatory work (Íñigo Huguet) [2043453] - mac80211: agg-tx: don't schedule_and_wake_txq() under sta->lock (Íñigo Huguet) [2043453] - nl80211: remove reload flag from regulatory_request (Íñigo Huguet) [2043453] - mac80211: send ADDBA requests using the tid/queue of the aggregation session (Íñigo Huguet) [2043453] - bus: mhi: core: Add support for forced PM resume (Íñigo Huguet) [2043453] - mt76: mt7921: fix build regression (Íñigo Huguet) [2043453] - brcmsmac: rework LED dependencies (Íñigo Huguet) [2043453] - iwlwifi: fix LED dependencies (Íñigo Huguet) [2043453] - iwlwifi: mvm: don't crash on invalid rate w/o STA (Íñigo Huguet) [2043453] - bus: mhi: pci_generic: Fix device recovery failed issue (Íñigo Huguet) [2043453] - mt76: fix key pointer overwrite in mt7921s_write_txwi/mt7663_usb_sdio_write_txwi (Íñigo Huguet) [2043453] - rt2x00: do not mark device gone on EPROTO errors during start (Íñigo Huguet) [2043453] - nl80211: reset regdom when reloading regdb (Íñigo Huguet) [2043453] - mac80211: add docs for ssn in struct tid_ampdu_tx (Íñigo Huguet) [2043453] - mac80211: fix a memory leak where sta_info is not freed (Íñigo Huguet) [2043453] - mac80211: set up the fwd_skb->dev for mesh forwarding (Íñigo Huguet) [2043453] - mac80211: fix regression in SSN handling of addba tx (Íñigo Huguet) [2043453] - mac80211: fix rate control for retransmitted frames (Íñigo Huguet) [2043453] - mac80211: track only QoS data frames for admission control (Íñigo Huguet) [2043453] - mac80211: fix TCP performance on mesh interface (Íñigo Huguet) [2043453] - mt76: fix possible pktid leak (Íñigo Huguet) [2043453] - mt76: fix timestamp check in tx_status (Íñigo Huguet) [2043453] - mt76: mt7915: fix NULL pointer dereference in mt7915_get_phy_mode (Íñigo Huguet) [2043453] - iwlwifi: Fix memory leaks in error handling path (Íñigo Huguet) [2043453] - iwlwifi: fix warnings produced by kernel debug options (Íñigo Huguet) [2043453] - iwlwifi: mvm: retry init flow if failed (Íñigo Huguet) [2043453] - iwlwifi: Fix missing error code in iwl_pci_probe() (Íñigo Huguet) [2043453] - iwlwifi: pcie: fix constant-conversion warning (Íñigo Huguet) [2043453] - mac80211: fix throughput LED trigger (Íñigo Huguet) [2043453] - mac80211: fix monitor_sdata RCU/locking assertions (Íñigo Huguet) [2043453] - mac80211: drop check for DONT_REORDER in __ieee80211_select_queue (Íñigo Huguet) [2043453] - mac80211: fix radiotap header generation (Íñigo Huguet) [2043453] - mac80211: do not access the IV when it was stripped (Íñigo Huguet) [2043453] - nl80211: fix radio statistics in survey dump (Íñigo Huguet) [2043453] - cfg80211: call cfg80211_stop_ap when switch from P2P_GO type (Íñigo Huguet) [2043453] - mwifiex: fix division by zero in fw download path (Íñigo Huguet) [2043453] - iwlwifi: bump FW API to 67 for AX devices (Íñigo Huguet) [2043453] - iwlwifi: mvm: extend session protection on association (Íñigo Huguet) [2043453] - iwlwifi: rename CHANNEL_SWITCH_NOA_NOTIF to CHANNEL_SWITCH_START_NOTIF (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove session protection on disassoc (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix WGDS table print in iwl_mvm_chub_update_mcc() (Íñigo Huguet) [2043453] - iwlwifi: rename GEO_TX_POWER_LIMIT to PER_CHAIN_LIMIT_OFFSET_CMD (Íñigo Huguet) [2043453] - iwlwifi: mvm: d3: use internal data representation (Íñigo Huguet) [2043453] - iwlwifi: mvm: update RFI TLV (Íñigo Huguet) [2043453] - iwlwifi: mvm: don't get address of mvm->fwrt just to dereference as a pointer (Íñigo Huguet) [2043453] - iwlwifi: yoyo: support for ROM usniffer (Íñigo Huguet) [2043453] - iwlwifi: fw: uefi: add missing include guards (Íñigo Huguet) [2043453] - iwlwifi: dump host monitor data when NIC doesn't init (Íñigo Huguet) [2043453] - iwlwifi: pcie: simplify iwl_pci_find_dev_info() (Íñigo Huguet) [2043453] - iwlwifi: ACPI: support revision 3 WGDS tables (Íñigo Huguet) [2043453] - iwlwifi: pcie: update sw error interrupt for BZ family (Íñigo Huguet) [2043453] - iwlwifi: add new pci SoF with JF (Íñigo Huguet) [2043453] - iwlwifi: mvm: Use all Rx chains for roaming scan (Íñigo Huguet) [2043453] - iwlwifi: pcie: remove two duplicate PNJ device entries (Íñigo Huguet) [2043453] - iwlwifi: pcie: refactor dev_info lookup (Íñigo Huguet) [2043453] - iwlwifi: pcie: remove duplicate entry (Íñigo Huguet) [2043453] - iwlwifi: pcie: fix killer name matching for AX200 (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix some kerneldoc issues (Íñigo Huguet) [2043453] - ath10k: fix division by zero in send path (Íñigo Huguet) [2043453] - ath10k: fix control-message timeout (Íñigo Huguet) [2043453] - ath10k: fix module load regression with iram-recovery feature (Íñigo Huguet) [2043453] - ath10k: fix invalid dma_addr_t token assignment (Íñigo Huguet) [2043453] - ath11k: change return buffer manager for QCA6390 (Íñigo Huguet) [2043453] - mt76: connac: fix unresolved symbols when CONFIG_PM is unset (Íñigo Huguet) [2043453] - mt76: Make use of the helper macro kthread_run() (Íñigo Huguet) [2043453] - mt76: Print error message when reading EEPROM from mtd failed (Íñigo Huguet) [2043453] - mt76: mt7921: disable 4addr capability (Íñigo Huguet) [2043453] - mt76: mt7915: add debugfs knobs for MCU utilization (Íñigo Huguet) [2043453] - mt76: mt7915: add WA firmware log support (Íñigo Huguet) [2043453] - mt76: mt7915: fix endiannes warning mt7915_mcu_beacon_check_caps (Íñigo Huguet) [2043453] - mt76: mt7915: rework debugfs fixed-rate knob (Íñigo Huguet) [2043453] - mt76: mt7915: rework .set_bitrate_mask() to support more options (Íñigo Huguet) [2043453] - mt76: mt7915: remove mt7915_mcu_add_he() (Íñigo Huguet) [2043453] - mt76: mt7615: apply cached RF data for DBDC (Íñigo Huguet) [2043453] - mt76: mt7615: mt7622: fix ibss and meshpoint (Íñigo Huguet) [2043453] - mt76: mt7921: fix Wformat build warning (Íñigo Huguet) [2043453] - mt76: mt7921: fix mt7921s Kconfig (Íñigo Huguet) [2043453] - iwlwifi: pnvm: print out the version properly (Íñigo Huguet) [2043453] - iwlwifi: dbg: treat non active regions as unsupported regions (Íñigo Huguet) [2043453] - iwlwifi: mvm: Read acpi dsm to get channel activation bitmap (Íñigo Huguet) [2043453] - iwlwifi: add new device id 7F70 (Íñigo Huguet) [2043453] - iwlwifi: mvm: improve log when processing CSA (Íñigo Huguet) [2043453] - iwlwifi: mvm: set BT-coex high priority for 802.1X/4-way-HS (Íñigo Huguet) [2043453] - iwlwifi: dbg: treat dbgc allocation failure when tlv is missing (Íñigo Huguet) [2043453] - iwlwifi: add new killer devices to the driver (Íñigo Huguet) [2043453] - iwlwifi: mvm: set inactivity timeouts also for PS-poll (Íñigo Huguet) [2043453] - iwlwifi: pcie: try to grab NIC access early (Íñigo Huguet) [2043453] - iwlwifi: mvm: reduce WARN_ON() in TX status path (Íñigo Huguet) [2043453] - iwlwifi: allow rate-limited error messages (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove session protection after auth/assoc (Íñigo Huguet) [2043453] - iwlwifi: remove redundant iwl_finish_nic_init() argument (Íñigo Huguet) [2043453] - iwlwifi: mvm: Add RTS and CTS flags to iwl_tx_cmd_flags. (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove csi from iwl_mvm_pass_packet_to_mac80211() (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new rate_n_flags for REPLY_RX_MPDU_CMD and RX_NO_DATA_NOTIF (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new TX_RSP and COMPRESSED_BA_RES versions (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new version of BEACON_TEMPLATE_CMD. (Íñigo Huguet) [2043453] - iwlwifi: mvm: Add support for new rate_n_flags in tx_cmd. (Íñigo Huguet) [2043453] - iwlwifi: BZ Family SW reset support (Íñigo Huguet) [2043453] - iwlwifi: BZ Family BUS_MASTER_DISABLE_REQ code duplication (Íñigo Huguet) [2043453] - iwlwifi: yoyo: fw debug config from context info and preset (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new version of ranging response notification (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support version 3 of tlc_update_notif. (Íñigo Huguet) [2043453] - iwlwifi: mvm: convert old rate & flags to the new format. (Íñigo Huguet) [2043453] - iwlwifi: mvm: add definitions for new rate & flags (Íñigo Huguet) [2043453] - iwlwifi: mvm: update definitions due to new rate & flags (Íñigo Huguet) [2043453] - iwlwifi: mvm: scrub key material in firmware dumps (Íñigo Huguet) [2043453] - iwlwifi: parse debug exclude data from firmware file (Íñigo Huguet) [2043453] - iwlwifi: fw dump: add infrastructure for dump scrubbing (Íñigo Huguet) [2043453] - iwlwifi: mvm: correct sta-state logic for TDLS (Íñigo Huguet) [2043453] - iwlwifi: api: fix struct iwl_wowlan_status_v7 kernel-doc (Íñigo Huguet) [2043453] - iwlwifi: fix fw/img.c license statement (Íñigo Huguet) [2043453] - iwlwifi: remove contact information (Íñigo Huguet) [2043453] - iwlwifi: remove MODULE_AUTHOR() statements (Íñigo Huguet) [2043453] - iwlwifi: api: remove unused RX status bits (Íñigo Huguet) [2043453] - iwlwifi: add some missing kernel-doc in struct iwl_fw (Íñigo Huguet) [2043453] - iwlwifi: mvm: Remove antenna c references (Íñigo Huguet) [2043453] - iwlwifi: mvm: add support for 160Mhz in ranging measurements (Íñigo Huguet) [2043453] - iwlwifi: add vendor specific capabilities for some RFs (Íñigo Huguet) [2043453] - iwlwifi: mvm: add lmac/umac PC info in case of error (Íñigo Huguet) [2043453] - iwlwifi: mvm: disable RX-diversity in powersave (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix ieee80211_get_he_iftype_cap() iftype (Íñigo Huguet) [2043453] - iwlwifi: Start scratch debug register for Bz family (Íñigo Huguet) [2043453] - iwlwifi: Add support for more BZ HWs (Íñigo Huguet) [2043453] - iwlwifi: Add support for getting rf id with blank otp (Íñigo Huguet) [2043453] - cfg80211: fix kernel-doc for MBSSID EMA (Íñigo Huguet) [2043453] - mac80211: Prevent AP probing during suspend (Íñigo Huguet) [2043453] - nl80211: Add LC placeholder band definition to nl80211_band (Íñigo Huguet) [2043453] - mac80211: split beacon retrieval functions (Íñigo Huguet) [2043453] - cfg80211: separate get channel number from ies (Íñigo Huguet) [2043453] - mac80211: use ieee80211_bss_get_elem() in most places (Íñigo Huguet) [2043453] - cfg80211: scan: use element finding functions in easy cases (Íñigo Huguet) [2043453] - nl80211: use element finding functions (Íñigo Huguet) [2043453] - mac80211: fils: use cfg80211_find_ext_elem() (Íñigo Huguet) [2043453] - mac80211: fix memory leaks with element parsing (Íñigo Huguet) [2043453] - cfg80211: prepare for const netdev->dev_addr (Íñigo Huguet) [2043453] - mac80211: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - wireless: mac80211_hwsim: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - mac80211: debugfs: calculate free buffer size correctly (Íñigo Huguet) [2043453] - fq_codel: generalise ce_threshold marking for subset of traffic (Íñigo Huguet) [2043453] - wl3501_cs: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - ray_cs: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - brcmfmac: prepare for const netdev->dev_addr (Íñigo Huguet) [2043453] - wireless: use eth_hw_addr_set() instead of ether_addr_copy() (Íñigo Huguet) [2043453] - wireless: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - iwlwifi: cfg: set low-latency-xtal for some integrated So devices (Íñigo Huguet) [2043453] - iwlwifi: pnvm: read EFI data only if long enough (Íñigo Huguet) [2043453] - iwlwifi: pnvm: don't kmemdup() more than we have (Íñigo Huguet) [2043453] - iwlwifi: change all JnP to NO-160 configuration (Íñigo Huguet) [2043453] - iwlwifi: mvm: reset PM state on unsuccessful resume (Íñigo Huguet) [2043453] - mwifiex: Deactive host sleep using HSCFG after it was activated manually (Íñigo Huguet) [2043453] - mwifiex: Send DELBA requests according to spec (Íñigo Huguet) [2043453] - mwifiex: Fix an incorrect comment (Íñigo Huguet) [2043453] - mwifiex: Log an error on command failure during key-material upload (Íñigo Huguet) [2043453] - mwifiex: Don't log error on suspend if wake-on-wlan is disabled (Íñigo Huguet) [2043453] - mt76: mt7915: change max rx len limit of hw modules (Íñigo Huguet) [2043453] - mt76: mt7915: fix missing HE phy cap (Íñigo Huguet) [2043453] - mt76: mt7915: rework mt7915_mcu_sta_muru_tlv() (Íñigo Huguet) [2043453] - mt76: mt7915: enable HE UL MU-MIMO (Íñigo Huguet) [2043453] - mt76: mt7921: add per-vif counters in ethtool (Íñigo Huguet) [2043453] - mt76: mt7921: move tx amsdu stats in mib_stats (Íñigo Huguet) [2043453] - mt76: mt7921: add sta stats accounting in mt7921_mac_add_txs_skb (Íñigo Huguet) [2043453] - mt76: mt7921: introduce stats reporting through ethtool (Íñigo Huguet) [2043453] - mt76: mt7921: add some more MIB counters (Íñigo Huguet) [2043453] - mt76: do not reset MIB counters in get_stats callback (Íñigo Huguet) [2043453] - mt76: mt7915: move tx amsdu stats in mib_stats (Íñigo Huguet) [2043453] - mt76: mt7915: run mt7915_get_et_stats holding mt76 mutex (Íñigo Huguet) [2043453] - mt76: move mt76_ethtool_worker_info in mt76 module (Íñigo Huguet) [2043453] - mt76: move mt76_sta_stats in mt76.h (Íñigo Huguet) [2043453] - mt76: mt76x0: correct VHT MCS 8/9 tx power eeprom offset (Íñigo Huguet) [2043453] - mt76: mt7921s: add reset support (Íñigo Huguet) [2043453] - mt76: mt7921: introduce mt7921s support (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mt7921_mcu_send_message (Íñigo Huguet) [2043453] - mt76: mt7921: rely on mcu_get_nic_capability (Íñigo Huguet) [2043453] - mt76: connac: extend mcu_get_nic_capability (Íñigo Huguet) [2043453] - mt76: sdio: extend sdio module to support CONNAC2 (Íñigo Huguet) [2043453] - mt76: sdio: introduce parse_irq callback (Íñigo Huguet) [2043453] - mt76: sdio: move common code in mt76_sdio module (Íñigo Huguet) [2043453] - mt76: mt7921: use physical addr to unify register access (Íñigo Huguet) [2043453] - mt76: mt7921: make all event parser reusable between mt7921s and mt7921e (Íñigo Huguet) [2043453] - mt76: mt7663s: rely on mcu reg access utility (Íñigo Huguet) [2043453] - mt76: connac: move mcu reg access utility routines in mt76_connac_lib module (Íñigo Huguet) [2043453] - mt76: mt7921: add MT7921_COMMON module (Íñigo Huguet) [2043453] - mt76: mt7921: refactor init.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mcu.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: refactor dma.c to be pcie specific (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mac.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: add MU EDCA cmd support (Íñigo Huguet) [2043453] - mt76: mt7915: remove dead code in debugfs code (Íñigo Huguet) [2043453] - mt76: sdio: export mt76s_alloc_rx_queue and mt76s_alloc_tx routines (Íñigo Huguet) [2043453] - mt76: mt7915: improve code readability for xmit-queue handler (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt76 debugfs sub-dir for ext-phy (Íñigo Huguet) [2043453] - mt76: rely on phy pointer in mt76_register_debugfs_fops routine signature (Íñigo Huguet) [2043453] - mt76: mt7915: set muru platform type (Íñigo Huguet) [2043453] - mt76: mt7915: set VTA bit in tx descriptor (Íñigo Huguet) [2043453] - mt76: mt7915: fix muar_idx in mt7915_mcu_alloc_sta_req() (Íñigo Huguet) [2043453] - mt76: mt7915: rework starec TLV tags (Íñigo Huguet) [2043453] - mt76: mt7915: fix sta_rec_wtbl tag len (Íñigo Huguet) [2043453] - mt76: mt7915: improve starec readability of txbf (Íñigo Huguet) [2043453] - mt76: mt7915: fix txbf starec TLV issues (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mcu_beacon_check_caps() (Íñigo Huguet) [2043453] - mt76: connac: fix possible NULL pointer dereference in mt76_connac_get_phy_mode_v2 (Íñigo Huguet) [2043453] - mt76: do not access 802.11 header in ccmp check for 802.3 rx skbs (Íñigo Huguet) [2043453] - mt76: use a separate CCMP PN receive counter for management frames (Íñigo Huguet) [2043453] - mt76: mt7921: add delay config for sched scan (Íñigo Huguet) [2043453] - mt76: mt7615: fix monitor mode tear down crash (Íñigo Huguet) [2043453] - mt76: debugfs: improve queue node readability (Íñigo Huguet) [2043453] - mt76: mt7915: add twt_stats knob in debugfs (Íñigo Huguet) [2043453] - mt76: mt7915: enable twt responder capability (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mac_add_twt_setup routine (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mcu_twt_agrt_update mcu command (Íñigo Huguet) [2043453] - mt76: mt7915: introduce __mt7915_get_tsf routine (Íñigo Huguet) [2043453] - mt76: drop MCU header size from buffer size in __mt76_mcu_send_firmware (Íñigo Huguet) [2043453] - mt76: introduce __mt76_mcu_send_firmware routine (Íñigo Huguet) [2043453] - mt76: support reading EEPROM data embedded in fdt (Íñigo Huguet) [2043453] - mt76: schedule status timeout at dma completion (Íñigo Huguet) [2043453] - mt76: substitute sk_buff_head status_list with spinlock_t status_lock (Íñigo Huguet) [2043453] - mt76: remove mt76_wcid pointer from mt76_tx_status_check signature (Íñigo Huguet) [2043453] - mt76: introduce packet_id idr (Íñigo Huguet) [2043453] - mt76: mt7921: add 6GHz support (Íñigo Huguet) [2043453] - mt76: add 6GHz support (Íñigo Huguet) [2043453] - mt76: connac: enable hw amsdu @ 6GHz (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_uni_add_bss (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_sta_tlv (Íñigo Huguet) [2043453] - mt76: connac: set 6G phymode in single-sku support (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_set_channel_domain (Íñigo Huguet) [2043453] - mt76: connac: enable 6GHz band for hw scan (Íñigo Huguet) [2043453] - mt76: connac: set 6G phymode in mt76_connac_get_phy_mode{,v2} (Íñigo Huguet) [2043453] - mt76: mt7915: add mib counters to ethtool stats (Íñigo Huguet) [2043453] - mt76: mt7915: add more MIB registers (Íñigo Huguet) [2043453] - mt76: mt7915: add tx mu/su counters to mib (Íñigo Huguet) [2043453] - mt76: mt7915: add some per-station tx stats to ethtool (Íñigo Huguet) [2043453] - mt76: mt7915: add tx stats gathered from tx-status callbacks (Íñigo Huguet) [2043453] - mt76: mt7915: add ethtool stats support (Íñigo Huguet) [2043453] - mt76: mt7921: fix retrying release semaphore without end (Íñigo Huguet) [2043453] - mt76: mt7921: robustify hardware initialization flow (Íñigo Huguet) [2043453] - mt76: mt7915: fix possible infinite loop release semaphore (Íñigo Huguet) [2043453] - mt76: mt7915: honor all possible error conditions in mt7915_mcu_init() (Íñigo Huguet) [2043453] - mt76: move spin_lock_bh to spin_lock in tasklet (Íñigo Huguet) [2043453] - mt76: mt7921: remove mt7921_sta_stats (Íñigo Huguet) [2043453] - mt76: mt7921: remove mcu rate reporting code (Íñigo Huguet) [2043453] - mt76: mt7921: report tx rate directly from tx status (Íñigo Huguet) [2043453] - mt76: mt7921: add support for tx status reporting (Íñigo Huguet) [2043453] - mt76: mt7921: start reworking tx rate reporting (Íñigo Huguet) [2043453] - mt76: mt7615: fix hwmon temp sensor mem use-after-free (Íñigo Huguet) [2043453] - mt76: mt7915: fix hwmon temp sensor mem use-after-free (Íñigo Huguet) [2043453] - mt76: mt7915: enable configured beacon tx rate (Íñigo Huguet) [2043453] - mt76: disable BH around napi_schedule() calls (Íñigo Huguet) [2043453] - mt76: fill boottime_ns in Rx path (Íñigo Huguet) [2043453] - mt76: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2043453] - mt76: fix boolreturn.cocci warnings (Íñigo Huguet) [2043453] - mt76: mt7921: update mib counters dumping phy stats (Íñigo Huguet) [2043453] - mt76: mt7921: always wake device if necessary in debugfs (Íñigo Huguet) [2043453] - mt76: mt7915: rename debugfs tx-queues (Íñigo Huguet) [2043453] - mt76: mt7915: rework debugfs queue info (Íñigo Huguet) [2043453] - mt76: mt7921: move mt7921_queue_rx_skb to mac.c (Íñigo Huguet) [2043453] - mt76: mt7915: fix WMM index on DBDC cards (Íñigo Huguet) [2043453] - mt76: mt7915: improve code readability in mt7915_mcu_sta_bfer_ht (Íñigo Huguet) [2043453] - mt76: mt7915: introduce bss coloring support (Íñigo Huguet) [2043453] - mt76: mt7915: add LED support (Íñigo Huguet) [2043453] - mt76: mt7915: fix potential NPE in TXS processing (Íñigo Huguet) [2043453] - mt76: mt7915: fix he_mcs capabilities for 160mhz (Íñigo Huguet) [2043453] - mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD (Íñigo Huguet) [2043453] - mt76: mt7915: update mac timing settings (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness warnings in mt7921_mac_decode_he_mu_radiotap (Íñigo Huguet) [2043453] - mt76: mt7921: fix kernel warning from cfg80211_calculate_bitrate (Íñigo Huguet) [2043453] - mt76: mt7921: fix firmware usage of RA info using legacy rates (Íñigo Huguet) [2043453] - mt76: mt7915: add HE-LTF into fixed rate command (Íñigo Huguet) [2043453] - mt76: mt7921: report HE MU radiotap (Íñigo Huguet) [2043453] - mt76: mt7615: move mt7615_mcu_set_p2p_oppps in mt76_connac module (Íñigo Huguet) [2043453] - mt76: overwrite default reg_ops if necessary (Íñigo Huguet) [2043453] - mt76: mt7921: introduce mt7921_mcu_set_beacon_filter utility routine (Íñigo Huguet) [2043453] - mt76: mt7921: get rid of mt7921_mac_set_beacon_filter (Íñigo Huguet) [2043453] - mt76: mt7921: get rid of monitor_vif (Íñigo Huguet) [2043453] - mt76: connac: add support for limiting to maximum regulatory Tx power (Íñigo Huguet) [2043453] - mt76: connac: fix GTK rekey offload failure on WPA mixed mode (Íñigo Huguet) [2043453] - mt76: mt7921: fix dma hang in rmmod (Íñigo Huguet) [2043453] - mt76: add support for setting mcast rate (Íñigo Huguet) [2043453] - mt76: mt7915: fix bit fields for HT rate idx (Íñigo Huguet) [2043453] - mt76: mt7915: switch proper tx arbiter mode in testmode (Íñigo Huguet) [2043453] - mt76: mt7915: fix potential overflow of eeprom page index (Íñigo Huguet) [2043453] - mt76: mt7921: send EAPOL frames at lowest rate (Íñigo Huguet) [2043453] - mt76: mt7915: send EAPOL frames at lowest rate (Íñigo Huguet) [2043453] - mt76: mt7915: add control knobs for thermal throttling (Íñigo Huguet) [2043453] - mt76: mt7921: Add mt7922 support (Íñigo Huguet) [2043453] - mt76: mt7615: fix skb use-after-free on mac reset (Íñigo Huguet) [2043453] - mt76: mt7921: Fix out of order process by invalid event pkt (Íñigo Huguet) [2043453] - mt76: mt7915: fix mgmt frame using unexpected bitrate (Íñigo Huguet) [2043453] - mt76: mt7921: fix mgmt frame using unexpected bitrate (Íñigo Huguet) [2043453] - mt76: add mt76_default_basic_rate more devices can rely on (Íñigo Huguet) [2043453] - mt76: mt7921: introduce testmode support (Íñigo Huguet) [2043453] - mt76: mt7915: remove mt7915_sta_stats (Íñigo Huguet) [2043453] - mt76: mt7915: report tx rate directly from tx status (Íñigo Huguet) [2043453] - mt76: mt7915: cleanup -Wunused-but-set-variable (Íñigo Huguet) [2043453] - mt76: mt7915: take RCU read lock when calling ieee80211_bss_get_elem() (Íñigo Huguet) [2043453] - mt76: mt7915: fix an off-by-one bound check (Íñigo Huguet) [2043453] - mt76: mt7921: add .set_sar_specs support (Íñigo Huguet) [2043453] - mt76: mt7915: adapt new firmware to update BA winsize for Rx session (Íñigo Huguet) [2043453] - mt76: mt7915: report HE MU radiotap (Íñigo Huguet) [2043453] - mt76: mt76x02: fix endianness warnings in mt76x02_mac.c (Íñigo Huguet) [2043453] - mt76: mt7921: fix survey-dump reporting (Íñigo Huguet) [2043453] - mt76: fix build error implicit enumeration conversion (Íñigo Huguet) [2043453] - mt76: mt7921: enable aspm by default (Íñigo Huguet) [2043453] - mt76: connac: fix mt76_connac_gtk_rekey_tlv usage (Íñigo Huguet) [2043453] - mt76: mt7915: fix calling mt76_wcid_alloc with incorrect parameter (Íñigo Huguet) [2043453] - mt76: mt7915: fix info leak in mt7915_mcu_set_pre_cal() (Íñigo Huguet) [2043453] - mt76: mt7615: fix endianness warning in mt7615_mac_write_txwi (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness warning in mt7921_update_txs (Íñigo Huguet) [2043453] - mt76: mt7915: fix endianness warning in mt7915_mac_add_txs_skb (Íñigo Huguet) [2043453] - mt76: mt7921: avoid unnecessary spin_lock/spin_unlock in mt7921_mcu_tx_done_event (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness in mt7921_mcu_tx_done_event (Íñigo Huguet) [2043453] - mwifiex: Try waking the firmware until we get an interrupt (Íñigo Huguet) [2043453] - mwifiex: Read a PCI register after writing the TX ring write pointer (Íñigo Huguet) [2043453] - fq_codel: implement L4S style ce_threshold_ect1 marking (Íñigo Huguet) [2043453] - net: add skb_get_dsfield() helper (Íñigo Huguet) [2043453] - wireless: Remove redundant 'flush_workqueue()' calls (Íñigo Huguet) [2043453] - mt7601u: Remove redundant initialization of variable ret (Íñigo Huguet) [2043453] - rtlwifi: rtl8192ee: Remove redundant initialization of variable version (Íñigo Huguet) [2043453] - ath10k: fix max antenna gain unit (Íñigo Huguet) [2043453] - ath9k: fix an IS_ERR() vs NULL check (Íñigo Huguet) [2043453] - ath11k: Identify DFS channel when sending scan channel list command (Íñigo Huguet) [2043453] - ath9k: support DT ieee80211-freq-limit property to limit channels (Íñigo Huguet) [2043453] - ath11k: Change number of TCL rings to one for QCA6390 (Íñigo Huguet) [2043453] - ath11k: Handle MSI enablement during rmmod and SSR (Íñigo Huguet) [2043453] - ath: dfs_pattern_detector: Fix possible null-pointer dereference in channel_detector_create() (Íñigo Huguet) [2043453] - ath11k: Use kcalloc() instead of kzalloc() (Íñigo Huguet) [2043453] - ath11k: Remove redundant assignment to variable fw_size (Íñigo Huguet) [2043453] - ath11k: fix m68k and xtensa build failure in ath11k_peer_assoc_h_smps() (Íñigo Huguet) [2043453] - ath11k: Fix spelling mistake "incompaitiblity" -> "incompatibility" (Íñigo Huguet) [2043453] - ath11k: Remove unused variable in ath11k_dp_rx_mon_merg_msdus() (Íñigo Huguet) [2043453] - ath9k: Fix potential interrupt storm on queue reset (Íñigo Huguet) [2043453] - ath9k: add option to reset the wifi chip via debugfs (Íñigo Huguet) [2043453] - ath10k: Don't always treat modem stop events as crashes (Íñigo Huguet) [2043453] - rtl8xxxu: Use lower tx rates for the ack packet (Íñigo Huguet) [2043453] - brcmfmac: Add DMI nvram filename quirk for Cyberbook T116 tablet (Íñigo Huguet) [2043453] - rtw88: refine fw_crash debugfs to show non-zero while triggering (Íñigo Huguet) [2043453] - rtw88: fix RX clock gate setting while fifo dump (Íñigo Huguet) [2043453] - net: qrtr: combine nameservice into main module (Íñigo Huguet) [2043453] - ath10k: sdio: Add missing BH locking around napi_schdule() (Íñigo Huguet) [2043453] - ath10k: Fix missing frame timestamp for beacon/probe-resp (Íñigo Huguet) [2043453] - ath10k: high latency fixes for beacon buffer (Íñigo Huguet) [2043453] - ath11k: Change DMA_FROM_DEVICE to DMA_TO_DEVICE when map reinjected packets (Íñigo Huguet) [2043453] - ath11k: support SMPS configuration for 6 GHz (Íñigo Huguet) [2043453] - ath11k: add 6 GHz params in peer assoc command (Íñigo Huguet) [2043453] - ieee80211: Add new A-MPDU factor macro for HE 6 GHz peer caps (Íñigo Huguet) [2043453] - ath11k: indicate to mac80211 scan complete with aborted flag for ATH11K_SCAN_STARTING state (Íñigo Huguet) [2043453] - ath11k: indicate scan complete for scan canceled when scan running (Íñigo Huguet) [2043453] - ath11k: add handler for scan event WMI_SCAN_EVENT_DEQUEUED (Íñigo Huguet) [2043453] - ath11k: add HTT stats support for new stats (Íñigo Huguet) [2043453] - ath11k: Change masking and shifting in htt stats (Íñigo Huguet) [2043453] - ath11k: Remove htt stats fixed size array usage (Íñigo Huguet) [2043453] - ath11k: Replace HTT_DBG_OUT with scnprintf (Íñigo Huguet) [2043453] - ath11k: Rename macro ARRAY_TO_STRING to PRINT_ARRAY_TO_BUF (Íñigo Huguet) [2043453] - ath11k: Fix memory leak in ath11k_qmi_driver_event_work (Íñigo Huguet) [2043453] - ath11k: Fix inaccessible debug registers (Íñigo Huguet) [2043453] - ath11k: Drop MSDU with length error in DP rx path (Íñigo Huguet) [2043453] - ath11k: copy cap info of 6G band under WMI_HOST_WLAN_5G_CAP for WCN6855 (Íñigo Huguet) [2043453] - ath11k: enable 6G channels for WCN6855 (Íñigo Huguet) [2043453] - ath11k: re-enable ht_cap/vht_cap for 5G band for WCN6855 (Íñigo Huguet) [2043453] - ath11k: fix survey dump collection in 6 GHz (Íñigo Huguet) [2043453] - ath11k: fix packet drops due to incorrect 6 GHz freq value in rx status (Íñigo Huguet) [2043453] - ath11k: add channel 2 into 6 GHz channel list (Íñigo Huguet) [2043453] - mac80211: MBSSID support in interface handling (Íñigo Huguet) [2043453] - ath11k: Add wmi peer create conf event in wmi_tlv_event_id (Íñigo Huguet) [2043453] - ath11k: Avoid "No VIF found" warning message (Íñigo Huguet) [2043453] - ath11k: Fix crash during firmware recovery on reo cmd ring access (Íñigo Huguet) [2043453] - ath11k: Assign free_vdev_map value before ieee80211_register_hw (Íñigo Huguet) [2043453] - ath11k: Add vdev start flag to disable hardware encryption (Íñigo Huguet) [2043453] - ath11k: Avoid race during regd updates (Íñigo Huguet) [2043453] - ath11k: Avoid reg rules update during firmware recovery (Íñigo Huguet) [2043453] - ath11k: Update pdev tx and rx firmware stats (Íñigo Huguet) [2043453] - ath11k: Fix pktlog lite rx events (Íñigo Huguet) [2043453] - ath11k: Add support for RX decapsulation offload (Íñigo Huguet) [2043453] - ath11k: fix some sleeping in atomic bugs (Íñigo Huguet) [2043453] - ath11k: qmi: avoid error messages when dma allocation fails (Íñigo Huguet) [2043453] - ath11k: Replace one-element array with flexible-array member (Íñigo Huguet) [2043453] - ath11k: add caldata download support from EEPROM (Íñigo Huguet) [2043453] - ath11k: add caldata file for multiple radios (Íñigo Huguet) [2043453] - ath11k: clean up BDF download functions (Íñigo Huguet) [2043453] - ath11k: use hw_params to access board_size and cal_offset (Íñigo Huguet) [2043453] - ath11k: Wstringop-overread warning (Íñigo Huguet) [2043453] - ath11k: Add spectral scan support for QCN9074 (Íñigo Huguet) [2043453] - ath11k: Fix the spectral minimum FFT bin count (Íñigo Huguet) [2043453] - ath11k: Introduce spectral hw configurable param (Íñigo Huguet) [2043453] - ath11k: Refactor spectral FFT bin size (Íñigo Huguet) [2043453] - ath11k: add support for 80P80 and 160 MHz bandwidth (Íñigo Huguet) [2043453] - ath11k: add support for setting fixed HE rate/gi/ltf (Íñigo Huguet) [2043453] - nl80211: MBSSID and EMA support in AP mode (Íñigo Huguet) [2043453] - nl80211: don't kfree() ERR_PTR() value (Íñigo Huguet) [2043453] - cfg80211: always free wiphy specific regdomain (Íñigo Huguet) [2043453] - mac80211: save transmit power envelope element and power constraint (Íñigo Huguet) [2043453] - mac80211: add parse regulatory info in 6 GHz operation information (Íñigo Huguet) [2043453] - ieee80211: add power type definition for 6 GHz (Íñigo Huguet) [2043453] - mac80211: twt: don't use potentially unaligned pointer (Íñigo Huguet) [2043453] - cfg80211: AP mode driver offload for FILS association crypto (Íñigo Huguet) [2043453] - ath11k: monitor mode clean up to use separate APIs (Íñigo Huguet) [2043453] - ath11k: add separate APIs for monitor mode (Íñigo Huguet) [2043453] - ath11k: move static function ath11k_mac_vdev_setup_sync to top (Íñigo Huguet) [2043453] - rtw88: 8821c: correct 2.4G tx power for type 2/4 NIC (Íñigo Huguet) [2043453] - rtw88: 8821c: support RFE type4 wifi NIC (Íñigo Huguet) [2043453] - brcmfmac: Replace zero-length array with flexible array member (Íñigo Huguet) [2043453] - mac80211_hwsim: enable 6GHz channels (Íñigo Huguet) [2043453] - mac80211: use ieee802_11_parse_elems() in ieee80211_prep_channel() (Íñigo Huguet) [2043453] - nl80211: don't put struct cfg80211_ap_settings on stack (Íñigo Huguet) [2043453] - mac80211: always allocate struct ieee802_11_elems (Íñigo Huguet) [2043453] - mac80211: mlme: find auth challenge directly (Íñigo Huguet) [2043453] - mac80211: move CRC into struct ieee802_11_elems (Íñigo Huguet) [2043453] - mac80211: mesh: clean up rx_bcn_presp API (Íñigo Huguet) [2043453] - mac80211: reduce stack usage in debugfs (Íñigo Huguet) [2043453] - nl80211: prefer struct_size over open coded arithmetic (Íñigo Huguet) [2043453] - mac80211: check hostapd configuration parsing twt requests (Íñigo Huguet) [2043453] - cfg80211: honour V=1 in certificate code generation (Íñigo Huguet) [2043453] - rt2x00: remove duplicate USB device ID (Íñigo Huguet) [2043453] - mwifiex: Fix copy-paste mistake when creating virtual interface (Íñigo Huguet) [2043453] - mwifiex: Properly initialize private structure on interface type changes (Íñigo Huguet) [2043453] - mwifiex: Handle interface type changes from AP to STATION (Íñigo Huguet) [2043453] - mwifiex: Allow switching interface type from P2P_CLIENT to P2P_GO (Íñigo Huguet) [2043453] - mwifiex: Update virtual interface counters right after setting bss_type (Íñigo Huguet) [2043453] - mwifiex: Use helper function for counting interface types (Íñigo Huguet) [2043453] - mwifiex: Run SET_BSS_MODE when changing from P2P to STATION vif-type (Íñigo Huguet) [2043453] - mwifiex: Use function to check whether interface type change is allowed (Íñigo Huguet) [2043453] - mwifiex: Small cleanup for handling virtual interface type changes (Íñigo Huguet) [2043453] - rtw88: move adaptivity mechanism to firmware (Íñigo Huguet) [2043453] - rtw88: support adaptivity for ETSI/JP DFS region (Íñigo Huguet) [2043453] - rtw88: add regulatory strategy by chip type (Íñigo Huguet) [2043453] - rtw88: upgrade rtw_regulatory mechanism and mapping (Íñigo Huguet) [2043453] - brcmfmac: fix incorrect error prints (Íñigo Huguet) [2043453] - ath11k: Align bss_chan_info structure with firmware (Íñigo Huguet) [2043453] - ath11k: add support in survey dump with bss_chan_info (Íñigo Huguet) [2043453] - ath11k: Rename atf_config to flag1 in target_resource_config (Íñigo Huguet) [2043453] - ath11k: fix 4addr multicast packet tx (Íñigo Huguet) [2043453] - ath11k: fix 4-addr tx failure for AP and STA modes (Íñigo Huguet) [2043453] - ath9k: owl-loader: fetch pci init values through nvmem (Íñigo Huguet) [2043453] - ath9k: fetch calibration data via nvmem subsystem (Íñigo Huguet) [2043453] - ath9k: Use tasklet_disable_in_atomic() (Íñigo Huguet) [2043453] - mt76: fix wrong conflict resolution in previous backport (Íñigo Huguet) [2043453] - mac80211: Allow HE operation to be longer than expected. (Íñigo Huguet) [2043453] - revert ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2043453] - RDMA/mlx5: Delete right entry from MR signature database (Amir Tzin) [1982191] - net/mlx5e: Fix select queue to consider SKBTX_HW_TSTAMP (Amir Tzin) [1982191] - net/mlx5e: Don't update netdev RQs with PTP-RQ (Amir Tzin) [1982191] - net/mlx5e: Fix an error code in mlx5e_arfs_create_tables() (Amir Tzin) [1982191] - net/mlx5e: Fix conflict with HW TS and CQE compression (Amir Tzin) [1982191] - net/mlx5e: Fix HW TS with CQE compression according to profile (Amir Tzin) [1982191] - mlx5e: add add missing BH locking around napi_schdule() (Amir Tzin) [1982191] - net/mlx5: Don't overwrite HCA capabilities when setting MSI-X count (Amir Tzin) [1982191] - net/mlx5: Fix err prints and return when creating termination table (Amir Tzin) [1982191] - RDMA/mlx5: Verify that DM operation is reasonable (Amir Tzin) [1982191] - RDMA/mlx5: Expose private query port (Amir Tzin) [1982191] - RDMA/mlx5: Fix type assignment for ICM DM (Amir Tzin) [1982191] - net/mlx5: DR, Add support for isolate_vl_tc QP (Amir Tzin) [1982191] - net/mlx5: DR, Add support for force-loopback QP (Amir Tzin) [1982191] - net/mlx5: DR, Add support for matching tunnel GTP-U (Amir Tzin) [1982191] - net/mlx5: DR, Set flex parser for TNL_MPLS dynamically (Amir Tzin) [1982191] - net/mlx5: DR, Add support for matching on geneve TLV option (Amir Tzin) [1982191] - net/mlx5: DR, Set STEv0 ICMP flex parser dynamically (Amir Tzin) [1982191] - net/mlx5: DR, Add support for dynamic flex parser (Amir Tzin) [1982191] - net/mlx5: DR, Remove protocol-specific flex_parser_3 definitions (Amir Tzin) [1982191] - net/mlx5: mlx5_ifc updates for flex parser (Amir Tzin) [1982191] - net/mlx5: E-Switch, Improve error messages in term table creation (Amir Tzin) [1982191] - net/mlx5: DR, Rename an argument in dr_rdma_segments (Amir Tzin) [1982191] - net/mlx5e: RX, Add checks for calculated Striding RQ attributes (Amir Tzin) [1982191] - net/mlx5e: Fix possible non-initialized struct usage (Amir Tzin) [1982191] - mlx5: implement ethtool standard stats (Amir Tzin) [1982191] - net/mlx5: Enhance diagnostics info for TX/RX reporters (Amir Tzin) [1982191] - net/mlx5: Add helper to initialize 1PPS (Amir Tzin) [1982191] - net/mlx5e: Add ethtool extended link state (Amir Tzin) [1982191 1982232] - net/mlx5: Add register layout to support extended link state (Amir Tzin) [1982191 1982232] - net/mlx5: Allocate FC bulk structs with kvzalloc() instead of kzalloc() (Amir Tzin) [1982191] - net/mlx5e: Cleanup safe switch channels API by passing params (Amir Tzin) [1982191] - net/mlx5e: Refactor on-the-fly configuration changes (Amir Tzin) [1982191] - net/mlx5e: Use mlx5e_safe_switch_channels when channels are closed (Amir Tzin) [1982191] - net/mlx5e: Allow mlx5e_safe_switch_channels to work with channels closed (Amir Tzin) [1982191] - mlx5: implement ethtool::get_fec_stats (Amir Tzin) [1982191] - net/mlx5e: Fix RQ creation flow for queues which doesn't support XDP (Amir Tzin) [1982191] - net/mlx5: Remove return statement exist at the end of void function (Amir Tzin) [1982191] - net/mlx5: Add a blank line after declarations (Amir Tzin) [1982191] - net/mlx5: DR, Alloc cmd buffer with kvzalloc() instead of kzalloc() (Amir Tzin) [1982191] - net/mlx5: DR, Use variably sized data structures for different actions (Amir Tzin) [1982191] - RDMA/mlx5: Expose UAPI to query DM (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Add support in MEMIC operations (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Add support to MODIFY_MEMIC command (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Re-organize the DM code (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Move all DM logic to separate file (Amir Tzin) [1982191 1926606 1926603] - net/mlx5: Add MEMIC operations related bits (Amir Tzin) [1982191 1926606 1926603] - net/mlx5: Add support for DSFP module EEPROM dumps (Amir Tzin) [1982191 1982233] - net/mlx5: Implement get_module_eeprom_by_page() (Amir Tzin) [1982191 1982233] - net/mlx5: Refactor module EEPROM query (Amir Tzin) [1982191 1982233] - IB/mlx5: Reduce max order of memory allocated for xlt update (Amir Tzin) [1982191] - net/mlx5: Implement sriov_get_vf_total_msix/count() callbacks (Amir Tzin) [1982191 1982230] - net/mlx5: Dynamically assign MSI-X vectors count (Amir Tzin) [1982191 1982230] - net/mlx5: Add dynamic MSI-X capabilities bits (Amir Tzin) [1982191 1982230] - net/mlx5e: Dynamic alloc vlan table for netdev when needed (Amir Tzin) [1982191] - net/mlx5e: Dynamic alloc arfs table for netdev when needed (Amir Tzin) [1982191] - net/mlx5: Use ida_alloc_range() instead of ida_simple_alloc() (Amir Tzin) [1982191] - net/mlx5e: Update ethtool setting of CQE compression (Amir Tzin) [1982191] - net/mlx5e: Allow coexistence of CQE compression and HW TS PTP (Amir Tzin) [1982191] - net/mlx5e: Add PTP Flow Steering support (Amir Tzin) [1982191] - net/mlx5e: Introduce Flow Steering ANY API (Amir Tzin) [1982191] - net/mlx5e: Introduce Flow Steering UDP API (Amir Tzin) [1982191] - net/mlx5e: Cleanup Flow Steering level (Amir Tzin) [1982191] - net/mlx5e: Add PTP RQ to RX reporter (Amir Tzin) [1982191] - net/mlx5e: Refactor RX reporter diagnostics (Amir Tzin) [1982191] - net:mlx5e: Add PTP-TIR and PTP-RQT (Amir Tzin) [1982191] - net/mlx5e: Add PTP-RX statistics (Amir Tzin) [1982191] - net/mlx5e: Add RQ to PTP channel (Amir Tzin) [1982191] - net/mlx5e: Add states to PTP channel (Amir Tzin) [1982191] - RDMA/mlx5: Set ODP caps only if device profile support ODP (Amir Tzin) [1982191] - net/mlx5e: Cleanup PTP (Amir Tzin) [1982191] - net/mlx5e: Generalize PTP implementation (Amir Tzin) [1982191] - net/mlx5e: Generalize direct-TIRs and direct-RQTs API (Amir Tzin) [1982191] - net/mlx5e: Generalize close RQ (Amir Tzin) [1982191] - net/mlx5e: Generalize RQ activation (Amir Tzin) [1982191] - net/mlx5e: Generalize open RQ (Amir Tzin) [1982191] - net/mlx5: Add helper to set time-stamp translator on a queue (Amir Tzin) [1982191] - net/mlx5e: Allow creating mpwqe info without channel (Amir Tzin) [1982191] - net/mlx5e: alloc the correct size for indirection_rqt (Amir Tzin) [1982191] - net: ethernet: indir_table.h is included twice (Amir Tzin) [1982191 1982195] - RDMA/mlx5: Create ODP EQ only when ODP MR is created (Amir Tzin) [1982191] - RDMA/mlx5: Add missing returned error check of mlx5_ib_dereg_mr (Amir Tzin) [1982191] - net/mlx5: Move devlink port from mlx5e priv to mlx5e resources (Amir Tzin) [1982191] - net/mlx5e: Allow to match on ICMP parameters (Amir Tzin) [1982191] - net/mlx5: Display the command index in command mailbox dump (Amir Tzin) [1982191] - net/mlx5e: allocate 'indirection_rqt' buffer dynamically (Amir Tzin) [1982191] - net/mlx5e: Dump ICOSQ WQE descriptor on CQE with error events (Amir Tzin) [1982191] - net/mlx5e: Use net_prefetchw instead of prefetchw in MPWQE TX datapath (Amir Tzin) [1982191] - net/mlx5e: Remove redundant newline in NL_SET_ERR_MSG_MOD (Amir Tzin) [1982191] - net/mlx5: Read congestion counters from all ports when lag is active (Amir Tzin) [1982191] - net/mlx5: remove unneeded semicolon (Amir Tzin) [1982191] - net/mlx5: DR, Remove unneeded rx_decap_l3 function for STEv1 (Amir Tzin) [1982191] - net/mlx5: Use order-0 allocations for EQs (Amir Tzin) [1982191] - net/mlx5: Add IFC bits needed for single FDB mode (Amir Tzin) [1982191] - net/mlx5: E-Switch, Refactor send to vport to be more generic (Amir Tzin) [1982191 1982195] - RDMA/mlx5: Use representor E-Switch when getting netdev and metadata (Amir Tzin) [1982191] - net/mlx5: E-Switch, Add eswitch pointer to each representor (Amir Tzin) [1982191 1982195] - net/mlx5: E-Switch, Add match on vhca id to default send rules (Amir Tzin) [1982191 1982195] - net/mlx5: Remove unused mlx5_core_health member recover_work (Amir Tzin) [1982191] - net/mlx5: simplify the return expression of mlx5_esw_offloads_pair() (Amir Tzin) [1982191 1982195] - net/mlx5: Cleanup prototype warning (Amir Tzin) [1982191] - RDMA/mlx5: Allow larger pages in DevX umem (Amir Tzin) [1982191] - RDMA/mlx5: Rename mlx5_mr_cache_invalidate() to revoke_mr() (Amir Tzin) [1982191] - RDMA/mlx5: Consolidate MR destruction to mlx5_ib_dereg_mr() (Amir Tzin) [1982191] - RDMA/mlx5: Use a union inside mlx5_ib_mr (Amir Tzin) [1982191] - platform/mellanox: mlxbf-tmfifo: Fix a memory barrier issue (Amir Tzin) [2018145] - mmc: dw_mmc-bluefield: : Fix the license information (Amir Tzin) [2018145] - mmc: dw_mmc-bluefield: simplify the probe() function (Amir Tzin) [2018145] - benet: mark device 0xe220 (Lancer) as deprecated (Michal Schmidt) [2054409] - myri10ge: mark as deprecated (Michal Schmidt) [2054409] - liquidio: mark as deprecated, not unmaintained (Michal Schmidt) [2054409] - netxen_nic: remove unmaintained mark, keep deprecated (Michal Schmidt) [2054409] - bnx2: mark as deprecated, not unmaintained (Michal Schmidt) [2054409] - SUNRPC: Don't dereference xprt->snd_task if it's a cookie (Dave Wysochanski) [2046545] - SUNRPC: Add source address/port to rpc_socket* traces (Dave Wysochanski) [2046545] - netfilter: conntrack: re-init state for retransmitted syn-ack (Florian Westphal) [2043093] - netfilter: conntrack: move synack init code to helper (Florian Westphal) [2043093]- ibmvnic: remove unused defines (Diego Domingos) [2047920] - ibmvnic: Update driver return codes (Diego Domingos) [2047920] - ARM: iop32x: disable N2100 PCI parity reporting (Josef Oskera) [2031880] - r8169: fix incorrect mac address assignment (Josef Oskera) [2031880] - r8169: Add device 10ec:8162 to driver r8169 (Josef Oskera) [2031880] - ethernet: r8169: use eth_hw_addr_set() (Josef Oskera) [2031880] - net: phy: realtek: add support for RTL8365MB-VC internal PHYs (Josef Oskera) [2031880] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Josef Oskera) [2031880] - r8169: enable ASPM L0s state (Josef Oskera) [2031880] - r8169: rename rtl_csi_access_enable to rtl_set_aspm_entry_latency (Josef Oskera) [2031880] - r8169: change the L0/L1 entrance latencies for RTL8106e (Josef Oskera) [2031880] - Revert "r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM" (Josef Oskera) [2031880] - r8169: Avoid duplicate sysfs entry creation error (Josef Oskera) [2031880] - r8169: Avoid memcpy() over-reading of ETH_SS_STATS (Josef Oskera) [2031880] - r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM (Josef Oskera) [2031880] - net: phy: realtek: net: Fix less than zero comparison of a u16 (Josef Oskera) [2031880] - net: phy: realtek: add delay to fix RXC generation issue (Josef Oskera) [2031880] - net: phy: realtek: add dt property to enable ALDPS mode (Josef Oskera) [2031880] - net: phy: realtek: add dt property to disable CLKOUT clock (Josef Oskera) [2031880] - r8169: Fix fall-through warning for Clang (Josef Oskera) [2031880] - r8169: use KBUILD_MODNAME instead of own module name definition (Josef Oskera) [2031880] - r8169: keep pause settings on interface down/up cycle (Josef Oskera) [2031880] - r8169: add support for pause ethtool ops (Josef Oskera) [2031880] - r8169: use mac-managed PHY PM (Josef Oskera) [2031880] - r8169: remove rtl_hw_start_8168c_3 (Josef Oskera) [2031880] - r8169: add support for ethtool get_ringparam (Josef Oskera) [2031880] - r8169: use lower_32_bits/upper_32_bits macros (Josef Oskera) [2031880] - net: phy: make PHY PM ops a no-op if MAC driver manages PHY PM (Josef Oskera) [2031880] - mm/gup: remove unused get_user_pages_locked() (Chris von Recklinghausen) [2048650] - mm: change lookup_node() to use get_user_pages_fast() (Chris von Recklinghausen) [2048650] - mm/gup: remove unused pin_user_pages_locked() (Chris von Recklinghausen) [2048650] - mm/gup: follow_pfn_pte(): -EEXIST cleanup (Chris von Recklinghausen) [2048650] - mm: fix invalid page pointer returned with FOLL_PIN gups (Chris von Recklinghausen) [2048650] - mm: fix typos in comments (Chris von Recklinghausen) [2048650] - vfio/iommu_type1: replace kfree with kvfree (Alex Williamson) [2046547] - vfio/pci: Fix error return code in vfio_ecap_init() (Alex Williamson) [2046547] - vfio/pci: Add missing range check in vfio_pci_mmap (Alex Williamson) [2046547] - vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer (Alex Williamson) [2046547] - vfio/mdev: Make to_mdev_device() into a static inline (Alex Williamson) [2046547] - vfio/iommu_type1: Mantain a counter for non_pinned_groups (Alex Williamson) [2046547] - vfio/iommu_type1: Fix some sanity checks in detach group (Alex Williamson) [2046547] - vfio/iommu_type1: Populate full dirty when detach non-pinned group (Alex Williamson) [2046547] - vfio/pci: Move dummy_resources_list init in vfio_pci_probe() (Alex Williamson) [2046547] - vfio/virqfd: Drain events from eventfd in virqfd_wakeup() (Alex Williamson) [2046547] - ext4: fix direct I/O read error (Lukas Czerner) [1868258] - usb: xhci: Extend support for runtime power management for AMD's Yellow carp. (Renjith Pananchikkal) [2015775] - usb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform (Renjith Pananchikkal) [2015775] - thunderbolt: Enable retry logic for intra-domain control packets (David Arcari) [2028287] - nvme-fabrics: fix state check in nvmf_ctlr_matches_baseopts() (Gopal Tiwari) [2043755] - smb3: do not error on fsync when readonly (Ronnie Sahlberg) [2037811] - cifs: serialize all mount attempts (Ronnie Sahlberg) [2008434] - ALSA: memalloc: Unify x86 SG-buffer handling (take#3) (Jaroslav Kysela) [2049437] - ALSA: usb-audio: add mapping for MSI MPG X570S Carbon Max Wifi. (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Drop CONFIG_PM ifdefs (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Fix dB level of Bose Revolve+ SoundLink (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Add minimal-mute notion in dB mapping table (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Use int for dB map values (Jaroslav Kysela) [2049437] - ALSA: hda/tegra: Fix Tegra194 HDA reset failure (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Use ALC285_FIXUP_HP_GPIO_LED on another HP laptop (Jaroslav Kysela) [2049437] - ALSA: hda: Add new AlderLake-P variant PCI ID (Jaroslav Kysela) [2049437] - ALSA: hda: Add AlderLake-N PCI ID (Jaroslav Kysela) [2049437] - ALSA: hda: use swap() to make code cleaner (Jaroslav Kysela) [2049437] - ALSA: Fix some typo (Jaroslav Kysela) [2049437] - ALSA: hda/hdmi: Consider ELD is invalid when no SAD is present (Jaroslav Kysela) [2049437] - ALSA: hda: Remove redundant runtime PM calls (Jaroslav Kysela) [2049437] - ALSA: hda: Do disconnect jacks at codec unbind (Jaroslav Kysela) [2049437] - ALSA: hda: intel: More comprehensive PM runtime setup for controller driver (Jaroslav Kysela) [2049437] - ASoC: SOF: Intel: fix build issue related to CODEC_PROBE_ENTRIES (Jaroslav Kysela) [2049437] - ASoC: cs42l42: Report initial jack state (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Re-order quirk entries for Lenovo (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Add quirk for Legion Y9000X 2020 (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Add speaker fixup for some Yoga 15ITL5 devices (Jaroslav Kysela) [2049437] - tools headers UAPI: Sync sound/asound.h with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - ASoC: SOF: handle paused streams during system suspend (Jaroslav Kysela) [2049437] - ASoC: SOF: sof-audio: setup sched widgets during pipeline complete step (Jaroslav Kysela) [2049437] - ASoC: SOF: free widgets in sof_tear_down_pipelines() for static pipelines (Jaroslav Kysela) [2049437] - ALSA: hda/cs8409: Fix Jack detection after resume (Jaroslav Kysela) [2049437] - ALSA: hda/cs8409: Increase delay during jack detection (Jaroslav Kysela) [2049437] - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master after reboot from Windows (Jaroslav Kysela) [2049437] - ASoC: Intel: catpt: Test dmaengine_submit() result before moving on (Jaroslav Kysela) [2049437] - ASoC: amd: Fix dependency for SPI master (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Drop superfluous '0' in Presonus Studio 1810c's ID (Jaroslav Kysela) [2049437] - ALSA: oss: fix compile error when OSS_DEBUG is enabled (Jaroslav Kysela) [2049437] - ALSA: hda: Make proper use of timecounter (Jaroslav Kysela) [2049437] - ALSA: led: Use restricted type for iface assignment (Jaroslav Kysela) [2049437] - ALSA: hda: Fix potential deadlock at codec unbinding (Jaroslav Kysela) [2049437] - ALSA: hda: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ALSA: PCM: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ALSA: jack: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ASoC: Intel: sof_sdw: fix jack detection on HP Spectre x360 convertible (Jaroslav Kysela) [2049437] - kernel: fork: properly initialize mm->mm_rh in dup_mm() and mm_alloc() (Rafael Aquini) [2047242] - vdpa/mlx5: Fix tracking of current number of VQs (Cindy Lu) [2052849] - vdpa/mlx5: Fix is_index_valid() to refer to features (Cindy Lu) [2052849] - vdpa: Protect vdpa reset with cf_mutex (Cindy Lu) [2052849] - vdpa: Avoid taking cf_mutex lock on get status (Cindy Lu) [2052849] - vdpa/vdpa_sim_net: Report max device capabilities (Cindy Lu) [2052849] - vdpa: Use BIT_ULL for bit operations (Cindy Lu) [2052849] - vdpa/vdpa_sim: Configure max supported virtqueues (Cindy Lu) [2052849] - vdpa/mlx5: Report max device capabilities (Cindy Lu) [2052849] - vdpa: Support reporting max device capabilities (Cindy Lu) [2052849] - vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps() (Cindy Lu) [2052849] - vdpa: Add support for returning device configuration information (Cindy Lu) [2052849] - vdpa/mlx5: Support configuring max data virtqueue (Cindy Lu) [2052849] - vdpa/mlx5: Fix config_attr_mask assignment (Cindy Lu) [2052849] - vdpa: Allow to configure max data virtqueues (Cindy Lu) [2052849] - vdpa: Read device configuration only if FEATURES_OK (Cindy Lu) [2052849] - vdpa: Sync calls set/get config/status with cf_mutex (Cindy Lu) [2052849] - vdpa/mlx5: Distribute RX virtqueues in RQT object (Cindy Lu) [2052849] - vdpa: Provide interface to read driver features (Cindy Lu) [2052849] - vdpa/mlx5: Fix wrong configuration of virtio_version_1_0 (Cindy Lu) [2052849] - vdpa: Mark vdpa_config_ops.get_vq_notification as optional (Cindy Lu) [2052849] - vdpa: Avoid duplicate call to vp_vdpa get_status (Cindy Lu) [2052849] - net/mlx5_vdpa: Offer VIRTIO_NET_F_MTU when setting MTU (Cindy Lu) [2052849] - vdpa: add driver_override support (Cindy Lu) [2052849] - docs: document sysfs ABI for vDPA bus (Cindy Lu) [2052849] - ifcvf/vDPA: fix misuse virtio-net device config size for blk dev (Cindy Lu) [2052849] - Revert "efi/libstub: arm64: Double check image alignment at entry" (Vitaly Kuznetsov) [2046303] - ethtool: ioctl: fix potential NULL deref in ethtool_set_coalesce() (William Zhao) [2046342] - cifs: Do not leak EDEADLK to dgetents64 for STATUS_USER_SESSION_DELETED (Ronnie Sahlberg) [1994393] - cifs: constify pathname arguments in a bunch of helpers (Ronnie Sahlberg) [1994393] - cgroup: Use open-time cgroup namespace for process migration perm checks (Chris von Recklinghausen) [2035766] - cgroup: Allocate cgroup_file_ctx for kernfs_open_file->priv (Chris von Recklinghausen) [2035766] - cgroup: Use open-time credentials for process migraton perm checks (Chris von Recklinghausen) [2035766] - cgroup: make per-cgroup pressure stall tracking configurable (Chris von Recklinghausen) [2035766] - powerpc/idle: Don't corrupt back chain when going idle (Laurent Vivier) [2052793] - powerpc64/idle: Fix SP offsets when saving GPRs (Laurent Vivier) [2052793] - sfc: ef10: implement ethtool::get_fec_stats (Íñigo Huguet) [2042798] - sfc: The RX page_ring is optional (Íñigo Huguet) [2042798] - sfc: Check null pointer of rx_queue->page_ring (Íñigo Huguet) [2042798] - sfc_ef100: potential dereference of null pointer (Íñigo Huguet) [2042798] - sfc: Don't use netif_info before net_device setup (Íñigo Huguet) [2042798] - sfc: Export fibre-specific supported link modes (Íñigo Huguet) [2042798] - sfc: Fix reading non-legacy supported link modes (Íñigo Huguet) [2042798] - ethernet: constify references to netdev->dev_addr in drivers (Íñigo Huguet) [2042798] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Íñigo Huguet) [2042798] - ethernet: use eth_hw_addr_set() (Íñigo Huguet) [2042798] - sfc: last resort fallback for lack of xdp tx queues (Íñigo Huguet) [2042798 1995444] - sfc: fallback for lack of xdp tx queues (Íñigo Huguet) [2042798 1995444] - ext4: fix potential uninitialized access to retval in kmmpd (Lukas Czerner) [2046355] - ext4: fix possible UAF when remounting r/o a mmp-protected file system (Lukas Czerner) [2046355] - ext4: fix memory leak in ext4_fill_super (Lukas Czerner) [2046355] - quota: check block number when reading the block in quota file (Lukas Czerner) [2046999] - quota: correct error number in free_dqentry() (Lukas Czerner) [2046999] - quota: Fix memory leak when handling corrupted quota file (Lukas Czerner) [2046999] - quota: Sanity-check quota file headers on load (Lukas Czerner) [2046999] - quota: clear padding in v2r1_mem2diskdqb() (Lukas Czerner) [2046999] - quota: Check that quota is not dirty before release (Lukas Czerner) [2046999] - quota: fix livelock in dquot_writeback_dquots (Lukas Czerner) [2046999] - ext4: fix e2fsprogs checksum failure for mounted filesystem (Lukas Czerner) [1937180] - ext4: prevent partial update of the extent blocks (Lukas Czerner) [2035877] - ext4: check for inconsistent extents between index and leaf block (Lukas Czerner) [2035877] - ext4: check for out-of-order index extents in ext4_valid_extent_entries() (Lukas Czerner) [2035877] - ext4: avoid trim error on fs with small groups (Lukas Czerner) [2046355] - ext4: fix null-ptr-deref in '__ext4_journal_ensure_credits' (Lukas Czerner) [2046355] - ext4: make sure to reset inode lockdep class when quota enabling fails (Lukas Czerner) [2046355] - ext4: make sure quota gets properly shutdown on error (Lukas Czerner) [2046355] - ext4: Fix BUG_ON in ext4_bread when write quota data (Lukas Czerner) [2046355] - ext4: refresh the ext4_ext_path struct after dropping i_data_sem. (Lukas Czerner) [2046355] - ext4: ensure enough credits in ext4_ext_shift_path_extents (Lukas Czerner) [2046355] - ext4: fix potential infinite loop in ext4_dx_readdir() (Lukas Czerner) [2046355] - ext4: fix loff_t overflow in ext4_max_bitmap_size() (Lukas Czerner) [2046355] - ext4: fix reserved space counter leakage (Lukas Czerner) [2046355] - ext4: fix race writing to an inline_data file while its xattrs are changing (Lukas Czerner) [2046355] - ext4: fix potential htree corruption when growing large_dir directories (Lukas Czerner) [2046355] - ext4: use ext4_grp_locked_error in mb_find_extent (Lukas Czerner) [2046355] - ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit (Lukas Czerner) [2046355] - ext4: remove check for zero nr_to_scan in ext4_es_scan() (Lukas Czerner) [2046355] - ext4: return error code when ext4_fill_flex_info() fails (Lukas Czerner) [2046355] - ext4: cleanup in-core orphan list if ext4_truncate() failed to get a transaction handle (Lukas Czerner) [2046355] - ext4: fix kernel infoleak via ext4_extent_header (Lukas Czerner) [2046355] - ext4: fix memory leak in ext4_fill_super (Lukas Czerner) [2046355] - ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed (Lukas Czerner) [2046355] - ext4: fix error code in ext4_commit_super (Lukas Czerner) [2046355] - crash_core, vmcoreinfo: append 'SECTION_SIZE_BITS' to vmcoreinfo (Pingfan Liu) [2046631] - arm64/crash_core: Export TCR_EL1.T1SZ in vmcoreinfo (Pingfan Liu) [2046631] - arm64: kernel: arch_crash_save_vmcoreinfo() should depend on CONFIG_CRASH_CORE (Mark Salter) [2046631] - Revert "[arm64] arm64, vmcoreinfo : Append 'MAX_PHYSMEM_BITS' to vmcoreinfo" (Pingfan Liu) [2046631] - crash_core, vmcoreinfo: Append 'MAX_PHYSMEM_BITS' to vmcoreinfo (Pingfan Liu) [2046631] - ibmvnic: don't release napi in __ibmvnic_open() (Gustavo Walbon) [2051793]- EDAC/igen6: Add Intel Alder Lake SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/igen6: Add Intel Tiger Lake SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/igen6: Add Intel ICL-NNPI SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/i10nm: Add support for high bandwidth memory (Aristeu Rozanski) [1971965 1783145] - EDAC/i10nm: Add detection of memory levels for ICX/SPR servers (Aristeu Rozanski) [1971965 1783145] - EDAC/skx_common: Add new ADXL components for 2-level memory (Aristeu Rozanski) [1971965 1783145] - EDAC, skx: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1971965 1783145] - EDAC, skx_common: Refactor so that we initialize "dev" in result of adxl decode. (Aristeu Rozanski) [1971965 1783145] - selinux: parse contexts for mount options early (Scott Mayhew) [1984355] - selinux: try to use preparsed sid before calling parse_sid() (Scott Mayhew) [1984355] - selinux: Fix selinux_sb_mnt_opts_compat() (Scott Mayhew) [1984355] - selinux: access superblock_security_struct in LSM blob way (Scott Mayhew) [1984355] - selinux: minor tweaks to selinux_add_opt() (Scott Mayhew) [1984355] - selinux: fix potential memleak in selinux_add_opt() (Scott Mayhew) [1984355] - selinux: fix sleeping function called from invalid context (Scott Mayhew) [1984355] - LSM: Infrastructure management of the superblock (Scott Mayhew) [1984355] - selinux: drop super_block backpointer from superblock_security_struct (Scott Mayhew) [1984355] - selinux: remove redundant allocation and helper functions (Scott Mayhew) [1984355] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [1970036 1988269] - ath11k: add string type to search board data in board-2.bin for WCN6855 (Íñigo Huguet) [1970036 1988269] - firmware: smccc: Fix check for ARCH_SOC_ID not implemented (Vitaly Kuznetsov) [2053450] - bpf, arm64: Use emit_addr_mov_i64() for BPF_PSEUDO_FUNC (Yauheni Kaliuta) [2051789] - bpf/selftests: disable a verifier test for powerpc (Viktor Malik) [2046032] - bpf/selftests: allow disabling verifier tests (Viktor Malik) [2046032] - vfs: check dentry is still valid in get_link() (Ian Kent) [2014846] - xfs: don't expose internal symlink metadata buffers to the vfs (Brian Foster) [2014846] - scsi: vmw_pvscsi: Set residual data length conditionally (Cathy Avery) [2052345] - scsi: mpt3sas: Fix incorrect system timestamp (Tomas Henzl) [2026212] - scsi: mpt3sas: Fix system going into read-only mode (Tomas Henzl) [2026212] - scsi: mpt3sas: Fix kernel panic during drive powercycle test (Tomas Henzl) [2026212] - scsi: mpt3sas: Clean up some inconsistent indenting (Tomas Henzl) [2026212] - scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state (Ewan D. Milne) [2028290] - blktrace: switch trace spinlock to a raw spinlock (Wander Lairson Costa) [1905749] - blktrace: Fix uaf in blk_trace access after removing by sysfs (Wander Lairson Costa) [1905749] - blk-wbt: export internal state via debugfs (Ming Lei) [2047313] - platform/x86: ISST: Fix optimization with use of numa (Prarit Bhargava) [2023820] - platform/x86: ISST: Use numa node id for cpu pci dev mapping (Prarit Bhargava) [2023818] - platform/x86: ISST: Optimize CPU to PCI device mapping (Prarit Bhargava) [2023818] - efi/x86: drop task_lock() from efi_switch_mm() (Fernando Pacheco) [2035415] - configs: enable LOGITECH_FF (Benjamin Tissoires) [1945987] - Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl (Benjamin Tissoires) [1974089] - Input: joydev - prevent potential read overflow in ioctl (Benjamin Tissoires) [1974089] - xfs: Fix CIL throttle hang when CIL space used going backwards (Thiago Becker) [2040371] - netfilter: nf_conntrack_netbios_ns: fix helper module alias (Florian Westphal) [2038015] - selftests: nft_concat_range: add test for reload with no element add/del (Florian Westphal) [2046309] - netfilter: fix regression in looped (broad|multi)cast's MAC handling (Florian Westphal) [2046309] - selftests: netfilter: Add correctness test for mac,net set type (Florian Westphal) [2046309] - netfilter: flowtable: fix IPv6 tunnel addr match (Florian Westphal) [2046309] - netfilter: conntrack: don't increment invalid counter on NF_REPEAT (Florian Westphal) [2046309] - netfilter: nft_set_pipapo: allocate pcpu scratch maps on clone (Florian Westphal) [2046309] - netfilter: nft_payload: do not update layer 4 checksum when mangling fragments (Florian Westphal) [2046309] - netfilter: ipvs: Fix reuse connection if RS weight is 0 (Florian Westphal) [2046309] - netfilter: ctnetlink: do not erase error code with EINVAL (Florian Westphal) [2046309] - netfilter: ctnetlink: fix filtering with CTA_TUPLE_REPLY (Florian Westphal) [2046309] - netfilter: nfnetlink_queue: fix OOB when mac header was cleared (Florian Westphal) [2046309] - netfilter: nft_dynset: relax superfluous check on set updates (Florian Westphal) [2046309] - netfilter: use kvmalloc_array to allocate memory for hashtable (Phil Sutter) [2001762] - netfilter: nf_tables: skip netdev events generated on netns removal (Phil Sutter) [2053436] - xfrm: add state hashtable keyed by seq (Sabrina Dubroca) [1926538]- cgroup/cpuset: Fix "suspicious RCU usage" lockdep warning (Waiman Long) [2050418] - cpuset: Fix the bug that subpart_cpus updated wrongly in update_cpumask() (Waiman Long) [2050418] - IB/rdmavt: Validate remote_addr during loopback atomic tests (Kamal Heib) [2033480] - in wb_init, use gfp instead of GFP_KERNEL when allocating bw_dwork (Chris von Recklinghausen) [2046179] - scsi: bnx2fc: Make bnx2fc_recv_frame() mp safe (John Meneghini) [2051691] - scsi: bnx2fc: Flush destroy_work queue before calling bnx2fc_interface_put() (John Meneghini) [1973208] - nvme: drop unused variable ctrl in nvme_setup_cmd (John Meneghini) [2033384] - nvme: increment request genctr on completion (John Meneghini) [2033384] - nvme-pci: Fix abort command id (John Meneghini) [2033384] - nvme: add command id quirk for apple controllers (John Meneghini) [2033384] - nvme: move nvme_multi_css into nvme.h (John Meneghini) [2033384] - nvme: code command_id with a genctr for use-after-free validation (John Meneghini) [2033384] - nvme-pci: limit maximum queue depth to 4095 (John Meneghini) [2033384] - params: lift param_set_uint_minmax to common code (John Meneghini) [2033384] - CI: Enable baseline realtime checks (Veronika Kabatova) - CI: Rename pipelines to include release names (Veronika Kabatova) - sched/pelt: Relax the sync of load_sum with load_avg (Phil Auld) [2037123] - sched/pelt: Relax the sync of runnable_sum with runnable_avg (Phil Auld) [2037123] - sched/pelt: Continue to relax the sync of util_sum with util_avg (Phil Auld) [2037123] - sched/pelt: Relax the sync of util_sum with util_avg (Phil Auld) [2037123] - cifs: fix memory leak of smb3_fs_context_dup::server_hostname (Ronnie Sahlberg) [2044670] - cifs: To match file servers, make sure the server hostname matches (Ronnie Sahlberg) [2044670] - perf/x86/intel/uncore: Fix Intel SPR M3UPI event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR M2PCIE event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR IIO event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR CHA event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Support IMC free-running counters on Sapphire Rapids server (Michael Petlan) [1837402] - perf/x86/intel/uncore: Support IIO free-running counters on Sapphire Rapids server (Michael Petlan) [1837402] - perf/x86/intel/uncore: Factor out snr_uncore_mmio_map() (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add alias PMU name (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server MDF support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M3UPI support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server UPI support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M2M support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IMC support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server PCU support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M2PCIe support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IRP support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IIO support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server CHA support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server framework (Michael Petlan) [1837402] - ovl: fix deadlock in splice write (Miklos Szeredi) [2028998] - selinux: fix NULL-pointer dereference when hashtab allocation fails (Ondrej Mosnacek) [2021467] - selinux: fix double free of cond_list on error paths (Ondrej Mosnacek) [2043605] - ibmvnic: remove unused ->wait_capability (Diego Domingos) [2049368] - ibmvnic: don't spin in tasklet (Diego Domingos) [2049368] - ibmvnic: init ->running_cap_crqs early (Diego Domingos) [2049368] - ibmvnic: Allow extra failures before disabling (Diego Domingos) [2049368] - hpsa: add new messaging (Tomas Henzl) [1801777] - aacraid: add new messaging (Tomas Henzl) [2044365] - Revert "[scsi] Revert "[scsi] aacraid: add removed id table"" (Tomas Henzl) [2044365] - mpt3sas: Add new messaging (Tomas Henzl) [2044366] - Revert "[scsi] mpt*: remove certain deprecated pci-ids" (Tomas Henzl) [2044366] - mptsas: add new messaging (Tomas Henzl) [2044366] - sctp: hold endpoint before calling cb in sctp_transport_lookup_process (Xin Long) [2043822] - sctp: use call_rcu to free endpoint (Xin Long) [2043822] - sctp: move hlist_node and hashent out of sctp_ep_common (Xin Long) [2043822] - net: Use nlmsg_unicast() instead of netlink_unicast() (Xin Long) [2043822] - video: hyperv_fb: Fix validation of screen resolution (Mohammed Gamal) [1952821] - powerpc/pseries: extract host bridge from pci_bus prior to bus removal (Diego Domingos) [2051509] - dm: properly fix redundant bio-based IO accounting (Mike Snitzer) [2051803] - dm: revert partial fix for redundant bio-based IO accounting (Mike Snitzer) [2051803] - block: add bio_start_io_acct_time() to control start_time (Mike Snitzer) [2051803] - block: document iostat changes for disk busy time accounting (Mike Snitzer) [2051803]- tee: optee: Fix incorrect page free bug (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: handle lookup of shm with reference count 0 (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: smc_abi.c: add missing #include (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: isolate smc abi (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: refactor driver with internal callbacks (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: simplify optee_release() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix missing devices unregister during optee_remove (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee/optee/shm_pool: fix application of sizeof to pointer (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: Correct inappropriate usage of TEE_SHM_DMA_BUF flag (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add tee_shm_alloc_kernel_buf() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Clear stale cache entries during initialization (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: fix tee out of memory failure seen during kexec reboot (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Refuse to load the driver under the kdump kernel (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Fix memory leak when failing to register shm pages (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: use export_uuid() to copy client UUID (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: do not check memref size on return from Secure World (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: fix build error caused by recent optee tracepoints feature (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add invoke_fn tracepoints (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: simplify i2c access (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: remove need_resched() before cond_resched() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: sync OP-TEE headers (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: replace might_sleep with cond_resched (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - drivers: optee: fix i2c build issue (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: convert get_user_pages() --> pin_user_pages() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - drivers: optee: allow op-tee to access devices on the i2c bus (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - driver: tee: Handle NULL pointer indication from client (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: enable support for multi-stage bus enumeration (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: use uuid for sysfs driver entry (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Add support for session login client UUID generation (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: enable support to register kernel memory (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove unnecessary NULL check in tee_shm_alloc() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: don't assign shm id for private shms (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove unused tee_shm_priv_alloc() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: tee_shm_op_mmap(): use TEE_SHM_USER_MAPPED (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove redundant teedev in struct tee_shm (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove linked list of struct tee_shm (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Fix multi page dynamic shm pool alloc (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: model OP-TEE as a platform device/driver (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: fix device enumeration error handling (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix dynamic shm pool allocations (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee/shm: untag user pointers in tee_shm_register (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add might_sleep for RPC requests (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: allow to work without static shared memory (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: update optee_msg.h and optee_smc.h to dual license (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add missing of_node_put after of_device_is_available (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix unsigned comparison with less than zero (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: fix possible error pointer ctx dereferencing (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Initialize some structs using memset instead of braces (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add TEE bus device enumeration support (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add supp_nowait flag in tee_context struct (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: log message if dynamic shm is enabled (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add kernel internal client interface (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: take DT status property into account (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: making OPTEE_SHM_NUM_PRIV_PAGES configurable via Kconfig (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - x86/mce: Add Xeon Sapphire Rapids to list of CPUs that support PPIN (David Arcari) [2035286] - regset: kill ->get() (Prarit Bhargava) [2032854] - arm64: switch to ->regset_get() (Prarit Bhargava) [2032854] - arm64: take fetching compat reg out of pt_regs into a new helper (Prarit Bhargava) [2032854] - powerpc: switch to ->regset_get() (Prarit Bhargava) [2032854] - s390: switch to ->regset_get() (Prarit Bhargava) [2032854] - introduction of regset ->get() wrappers, switching ELF coredumps to those (Prarit Bhargava) [2032854] - mm/page_alloc.c: do not warn allocation failure on zone DMA if no managed pages (Baoquan He) [2024011] - dma/pool: create dma atomic pool only if dma zone has managed pages (Baoquan He) [2024011] - mm_zone: add function to check if managed dma zone exists (Baoquan He) [2024011] - tipc: discard MSG_CRYPTO msgs when key_exchange_enabled is not set (Xin Long) [2043825] - tipc: delete the unlikely branch in tipc_aead_encrypt (Xin Long) [2043825] - tipc: check for null after calling kmemdup (Xin Long) [2043825] - tipc: only accept encrypted MSG_CRYPTO msgs (Xin Long) [2043825] - powerpc/pseries: use slab context cpumask allocation in CPU hotplug init (Waiman Long) [2048220] - powerpc/pseries: Fix build error when NUMA=n (Waiman Long) [2048220] - lpfc: Add new messaging (Ewan D. Milne) [1841323] - cpu/hotplug: Cure the cpusets trainwreck (Phil Auld) [1904593] - scsi: ses: Fix unsigned comparison with less than zero (Tomas Henzl) [1995086] - scsi: ses: Retry failed Send/Receive Diagnostic commands (Tomas Henzl) [1995086] - serial: exar: Fix GPIO configuration for Sealevel cards based on XR17V35X (John W. Linville) [2022906] - PCI: vmd: Add indirection layer to vmd irq lists (Scott Wood) [2048202] - redhat/configs: Enable CONFIG_PCI_HYPERV on Aarch64 (Vitaly Kuznetsov) [2024853] - PCI: hv: Add arm64 Hyper-V vPCI support (Vitaly Kuznetsov) [2024853] - PCI: hv: Make the code arch neutral by adding arch specific interfaces (Vitaly Kuznetsov) [2024853] - PCI: hv: Remove unnecessary use of hx (Vitaly Kuznetsov) [2024853] - nvme-rdma: fix possible use-after-free in transport error_recovery work (Chris Leech) [1988361] - nvme-tcp: fix possible use-after-free in transport error_recovery work (Chris Leech) [1988361] - nvme: fix a possible use-after-free in controller reset during load (Chris Leech) [1988361] - ipv6: check return value of ipv6_skip_exthdr (Sabrina Dubroca) [2046234] - selftests: Calculate udpgso segment count without header adjustment (Xin Long) [2044133] - udp: using datalen to cap ipv6 udp max gso segments (Xin Long) [2044133] - inet_diag: fix kernel-infoleak for UDP sockets (Xin Long) [2044133] - udp: using datalen to cap max gso segments (Xin Long) [2044133] - [s390] s390/cpumf: Support for CPU Measurement Facility CSVN 7 (Mete Durlu) [2048980] - [s390] s390/cpumf: Support for CPU Measurement Sampling Facility LS bit (Mete Durlu) [2048980] - tools/power/x86/intel-speed-select: v1.10 release (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Fix uncore memory frequency display (Prarit Bhargava) [2023909] - platform/x86: ISST: Account for increased timeout in some cases (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Add options to force online (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Drop __DATE__ and __TIME__ macros (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: v1.9 release (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Process mailbox read error for core-power (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Increase string size (Prarit Bhargava) [2023909] - qla2xxx: Add new messaging (Ewan D. Milne) [1900072]- platform/x86: amd-pmc: only use callbacks for suspend (David Arcari) [2016039] - platform/x86: amd-pmc: Add support for AMD Smart Trace Buffer (David Arcari) [2016039] - platform/x86: amd-pmc: Simplify error handling and store the pci_dev in amd_pmc_dev structure (David Arcari) [2016039] - platform/x86: amd-pmc: Fix s2idle failures on certain AMD laptops (David Arcari) [2016039] - platform/x86: amd-pmc: Make CONFIG_AMD_PMC depend on RTC_CLASS (David Arcari) [2016039] - platform/x86: amd-pmc: Drop check for valid alarm time (David Arcari) [2016039] - platform/x86: amd-pmc: Downgrade dev_info message to dev_dbg (David Arcari) [2016039] - platform/x86: amd-pmc: fix compilation without CONFIG_RTC_SYSTOHC_DEVICE (David Arcari) [2016039] - platform/x86: amd-pmc: Add special handling for timer based S0i3 wakeup (David Arcari) [2016039] - platform/x86: amd-pmc: adjust arguments for `amd_pmc_send_cmd` (David Arcari) [2016039] - platform/x86: amd-pmc: Add alternative acpi id for PMC controller (David Arcari) [2016039] - platform/x86: amd-pmc: Add a message to print resume time info (David Arcari) [2016039] - platform/x86: amd-pmc: Send command to dump data after clearing OS_HINT (David Arcari) [2016039] - platform/x86: amd-pmc: Fix compilation when CONFIG_DEBUGFS is disabled (David Arcari) [2016039] - platform/x86: amd-pmc: Export Idlemask values based on the APU (David Arcari) [2016039] - platform/x86: amd-pmc: Check s0i3 cycle status (David Arcari) [2016039] - scsi: lpfc: Fix non-recovery of remote ports following an unsolicited LOGO (Dick Kennedy) [2027558] - sch_api: Don't skip qdisc attach on ingress (Davide Caratti) [2044806] - sch_qfq: prevent shift-out-of-bounds in qfq_init_qdisc (Davide Caratti) [2044806] - flow_offload: return EOPNOTSUPP for the unsupported mpls action type (Davide Caratti) [2044806] - selftests: bpf: Less strict size check in sockopt_sk (Felix Maurer) [2025809] - net-zerocopy: Fast return if inq < PAGE_SIZE (Felix Maurer) [2025809] - tcp: Fix sign comparison bug in getsockopt(TCP_ZEROCOPY_RECEIVE) (Felix Maurer) [2025809] - tcp-zerocopy: Ensure excess getsockopt buffer is zeroed (Felix Maurer) [2025809] - tcp-zerocopy: Update returned getsockopt() optlen. (Felix Maurer) [2025809] - tcp-zerocopy: Fix getsockopt buffer size check (Felix Maurer) [2025809] - gre: Don't accidentally set RTO_ONLINK in gre_fill_metadata_dst() (Guillaume Nault) [2046339] - net: fix use-after-free in tw_timer_handler (Guillaume Nault) [2046339] - ALSA: core: Fix SSID quirk lookup for subvendor=0 (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Restore hardware state on runtime PM resume (Jaroslav Kysela) [2003613] - ALSA: RHEL - update kernel configs for RHEL 8.6 (Jaroslav Kysela) [2003613] - ASoC: remove module namespaces (Jaroslav Kysela) [2003613] - ASoC: codecs: rt5682(s): use the older clock API calls, but keep some modern (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Cleanup logging (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Use snd_soc_jack to report jack events (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: convert into a helper library for codec drivers (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Use arizona->dev for runtime-pm (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Move jack-detect variables to struct arizona_priv (Jaroslav Kysela) [2003613] - ASoC/extcon: arizona: Move arizona jack code to sound/soc/codecs/arizona-jack.c (Jaroslav Kysela) [2003613] - extcon: arizona: Always use pm_runtime_get_sync() when we need the device to be awake (Jaroslav Kysela) [2003613] - extcon: arizona: Fix flags parameter to the gpiod_get("wlf,micd-pol") call (Jaroslav Kysela) [2003613] - extcon: arizona: Fix various races on driver unbind (Jaroslav Kysela) [2003613] - extcon: arizona: Fix some issues when HPDET IRQ fires after the jack has been unplugged (Jaroslav Kysela) [2003613] - extcon: arizona: Fix runtime PM imbalance on error (Jaroslav Kysela) [2003613] - extcon: arizona: Factor out microphone and button detection (Jaroslav Kysela) [2003613] - extcon: arizona: Factor out microphone impedance into a function (Jaroslav Kysela) [2003613] - extcon: arizona: Invert logic of check in arizona_hpdet_do_id (Jaroslav Kysela) [2003613] - extcon: arizona: Remove excessive WARN_ON (Jaroslav Kysela) [2003613] - extcon: arizona: Remove unnecessary sets of ACCDET_MODE (Jaroslav Kysela) [2003613] - extcon: arizona: Tidy up transition from mic to headphone detect (Jaroslav Kysela) [2003613] - extcon: arizona: Clear jack status regardless of detection type (Jaroslav Kysela) [2003613] - extcon: arizona: Move pdata extraction to probe (Jaroslav Kysela) [2003613] - extcon: arizona: Make rev A register sequences atomic (Jaroslav Kysela) [2003613] - extcon: arizona: Correct clean up if arizona_identify_headphone fails (Jaroslav Kysela) [2003613] - extcon: arizona: Switch to use device_property_count_u32() (Jaroslav Kysela) [2003613] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Jaroslav Kysela) [2003613] - extcon: arizona: Correct error handling on regmap_update_bits_check (Jaroslav Kysela) [2003613] - extcon: arizona: Disable mic detect if running when driver is removed (Jaroslav Kysela) [2003613] - mfd: arizona: Fix rumtime PM imbalance on error (Jaroslav Kysela) [2003613] - mfd: arizona: Split of_match table into I2C and SPI versions (Jaroslav Kysela) [2003613] - mfd: arizona: Make some symbols static (Jaroslav Kysela) [2003613] - mfd: arizona: Add support for ACPI enumeration of WM5102 connected over SPI (Jaroslav Kysela) [2003613] - mfd: arizona: Add MODULE_SOFTDEP("pre: arizona_ldo1") (Jaroslav Kysela) [2003613] - mfd: arizona: Drop arizona-extcon cells (Jaroslav Kysela) [2003613] - mfd: arizona: Replace arizona_of_get_type() with device_get_match_data() (Jaroslav Kysela) [2003613] - mfd: arizona: Ensure 32k clock is put on driver unbind and error (Jaroslav Kysela) [2003613] - mfd: arizona: Remove BUG_ON usage (Jaroslav Kysela) [2003613] - mfd: arizona: Switch to using devm_gpiod_get() (Jaroslav Kysela) [2003613] - mfd: arizona: Fix undefined behavior (Jaroslav Kysela) [2003613] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jaroslav Kysela) [2003613] - mfd: arizona: Correct calling of runtime_put_sync (Jaroslav Kysela) [2003613] - mfd: arizona: Don't use regmap_read_poll_timeout (Jaroslav Kysela) [2003613] - clkdev: Hold clocks_mutex while iterating clocks list (Jaroslav Kysela) [2003613] - clkdev: add managed clkdev lookup registration (Jaroslav Kysela) [2003613] - genirq: Add IRQF_NO_AUTOEN for request_irq/nmi() (Jaroslav Kysela) [2003613] - ALSA: es1688: Avoid devres management for es1688 object creation (Jaroslav Kysela) [2003613] - ALSA: gus: Fix repeated probes of snd_gus_create() (Jaroslav Kysela) [2003613] - ALSA: x86: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: x86: simplify with sync_stop PCM ops (Jaroslav Kysela) [2003613] - ALSA: x86: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: virtio: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2003613] - ALSA: emux: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: synth: missing check for possible NULL after the call to kstrdup (Jaroslav Kysela) [2003613] - ALSA: synth: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sparc: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ASoC: tegra: Set driver name explicitly (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Use devm_clk_get() (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Correct driver removal order (Jaroslav Kysela) [2003613] - ASoC: tegra20: spdif: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Use devm_clk_get() (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Add system level suspend-resume callbacks (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Add reset control (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Correct driver removal order (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra20_das: align function prototypes (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra20_das: clarify expression (Jaroslav Kysela) [2003613] - ASoC: tegra: remove unneeded semicolon (Jaroslav Kysela) [2003613] - ASoC: tegra: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [2003613] - ASoC: tegra20: ac97: Add reset control (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add support for SoundWire of TGL-H-RVP (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add mutual exclusion between PCH DMIC and RT715 (Jaroslav Kysela) [2003613] - ASoC: codecs: wsa881x: fix return values from kcontrol put (Jaroslav Kysela) [2003613] - ASoc: wm8731: Drop empty spi_driver remove callback (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: channel -> channels rename (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505/TAS2521 channel count (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Disable irq on slave ports in the remove function (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Fix a double irq free in the remove function (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Fix a memory leak in the error handling path of the probe function (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: make array clocks static, makes object smaller (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505/TAS2521 processing block selection (Jaroslav Kysela) [2003613] - ASoC: da7218: Drop CONFIG_OF ifdef (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505 volume controls (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Make aic32x4_remove() return void (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: add support for TAS2505 (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: add type to device private data struct (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: fix reversed bclk/wclk master bits (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: Fix jack detection after suspend (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: Make regmap cache only on probe() (Jaroslav Kysela) [2003613] - ASoC: sigmadsp: Remove the repeated declaration (Jaroslav Kysela) [2003613] - ASoC: rt286: Remove redundant assignment to d_len_code (Jaroslav Kysela) [2003613] - ASoC: codecs: rt1019: clarify expression (Jaroslav Kysela) [2003613] - ASoC: rt1019: Add non_legacy_dai_naming config (Jaroslav Kysela) [2003613] - ASoC: rk3328: fix missing clk_disable_unprepare() on error in rk3328_platform_probe() (Jaroslav Kysela) [2003613] - ASoC: mediatek: mt6359: Fix unexpected error in bind/unbind flow (Jaroslav Kysela) [2003613] - ASoc: codecs: mt6359: remove useless initializations (Jaroslav Kysela) [2003613] - ASoC: mediatek: mt6359: convert to use module_platform_driver (Jaroslav Kysela) [2003613] - ASoC: ics43432: add CMM-4030D-261 support (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Fix return value in hdmi_codec_set_jack() (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Get ELD in before reporting plugged event (Jaroslav Kysela) [2003613] - ASoC: cs53l30: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs43130: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs42l52: Minor tidy up of error paths (Jaroslav Kysela) [2003613] - ASoC: cs42l73: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs4265: Minor tidy up of error paths (Jaroslav Kysela) [2003613] - ASoC: cs35l36: Remove unneeded variable initialisation (Jaroslav Kysela) [2003613] - ASoC: cs35l35: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs35l35: Correct errata handling (Jaroslav Kysela) [2003613] - ASoC: cs35l34: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs35l33: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cirrus: Add helper function for reading the device ID (Jaroslav Kysela) [2003613] - ASoC: cs35l32: Add missing regmap use_single config (Jaroslav Kysela) [2003613] - ASoC: cs35l32: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: adav80x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - ASoC: codecs: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ASoC: ab8500: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: fix spelling mistake in Kconfig "comunicate" -> "communicate" (Jaroslav Kysela) [2003613] - ASoC: 88pm860x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: amd: renoir: Remove redundant assignment to pdm_ctrl and pdm_enable and pdm_dma_enable (Jaroslav Kysela) [2003613] - ASoC: amd: add missing break (Jaroslav Kysela) [2003613] - ALSA: sh: Fix compile warning wrt const (Jaroslav Kysela) [2003613] - ALSA: sh: Fix unused variable warnings (Jaroslav Kysela) [2003613] - ALSA: sh: Constify snd_device_ops definitions (Jaroslav Kysela) [2003613] - ALSA: sh: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [2003613] - ALSA: sh: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ALSA: aica: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ALSA: sh: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [2003613] - ALSA: ps3: fix spelling typo of values (Jaroslav Kysela) [2003613] - ALSA: ppc: drop if block with always false condition (Jaroslav Kysela) [2003613] - ALSA: ppc: remove redundant checks in PS3 driver probe (Jaroslav Kysela) [2003613] - ALSA: ppc: fix error return code in snd_pmac_probe() (Jaroslav Kysela) [2003613] - ALSA: ppc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [2003613] - ALSA: ppc: Constify snd_device_ops definitions (Jaroslav Kysela) [2003613] - ALSA: ppc: keywest: remove outdated comment (Jaroslav Kysela) [2003613] - ALSA: poewrmac: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pcmcia: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pci: vx222: fix kernel-doc warning (Jaroslav Kysela) [2003613] - ALSA: Remove trailing semicolon in macros (Jaroslav Kysela) [2003613] - ALSA: hda: generic: Remove redundant assignment to dac (Jaroslav Kysela) [2003613] - ALSA: hda: Allow model option to specify PCI SSID alias (Jaroslav Kysela) [2003613] - ALSA: asihpi: fix comment syntax in file headers (Jaroslav Kysela) [2003613] - ALSA: harmony: Drop superfluous address setup (Jaroslav Kysela) [2003613] - ALSA: parisc: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx: fix kernel-doc warning (Jaroslav Kysela) [2003613] - ALSA: aloop: Constify ops structs (Jaroslav Kysela) [2003613] - ASoC: SOF: Drop resindex_dma_base, dma_engine, dma_size from sof_dev_desc (Jaroslav Kysela) [2003613] - ALSA: wavefront: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: wavefront: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sscape: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sc6000: Use explicit cast for __iomem pointer (Jaroslav Kysela) [2003613] - ALSA: sc6000: Assign vport directly on card's private_data (Jaroslav Kysela) [2003613] - ALSA: sc6000: Fix incorrect sizeof operator (Jaroslav Kysela) [2003613] - ALSA: sc6000: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sb: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - Revert "ALSA: sb: fix a missing check of snd_ctl_add" (Jaroslav Kysela) [2003613] - ALSA: sb: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sb8: Add a comment note regarding an unused pointer (Jaroslav Kysela) [2003613] - ALSA: sb: Fix potential ABBA deadlock in CSP driver (Jaroslav Kysela) [2003613] - ALSA: sb: Fix potential double-free of CSP mixer elements (Jaroslav Kysela) [2003613] - ALSA: sb: Minor coding style fixes (Jaroslav Kysela) [2003613] - ALSA: sb: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sb: Fix two use after free in snd_sb_qsound_build (Jaroslav Kysela) [2003613] - ALSA: emu8000: Fix a use after free in snd_emu8000_create_mixer (Jaroslav Kysela) [2003613] - ALSA: opti9xx: fix missing { } around an if block (Jaroslav Kysela) [2003613] - ALSA: opti9xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: opti9xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: opl3sa2: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: opl3sa2: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: msnd: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: msnd: Use proper mmap method (Jaroslav Kysela) [2003613] - ALSA: gus: Fix repeated probe for ISA interwave card (Jaroslav Kysela) [2003613] - Revert "ALSA: gus: add a check of the status of snd_ctl_add" (Jaroslav Kysela) [2003613] - ALSA: gus: fix null pointer dereference on pointer block (Jaroslav Kysela) [2003613] - ALSA: gus: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: gus: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: gus: Replace unsafe strcpy() with strscpy() (Jaroslav Kysela) [2003613] - ALSA: galaxy: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: Replace with fallthrough pseudo keyword in the remaining places (Jaroslav Kysela) [2003613] - ALSA: es18xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es18xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: isa: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1688: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: wss: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs423x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs423x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - sound/oss/dmasound: Remove superfluous "break" (Jaroslav Kysela) [2003613] - sound/oss/dmasound: Remove superfluous "break" (Jaroslav Kysela) [2003613] - ALSA: cmi8330: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: isa: Fix error return code in snd_cmi8330_probe() (Jaroslav Kysela) [2003613] - ALSA: cmi8330: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cmi8328: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt2320: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt2320: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als100: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als100: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: adlib: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1848: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1816a: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1816a: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: i2c: tea6330t: Remove redundant initialization of variable err (Jaroslav Kysela) [2003613] - ALSA: i2c: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: add missing include files (Jaroslav Kysela) [2003613] - ALSA: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ALSA: aoa: remove unnecessary oom message (Jaroslav Kysela) [2003613] - ALSA: arm: Remove unnecessary variables (Jaroslav Kysela) [2003613] - ALSA: ac97: fix PM reference leak in ac97_bus_remove() (Jaroslav Kysela) [2003613] - ALSA: ac97: Constify static struct attribute_group (Jaroslav Kysela) [2003613] - ALSA: virtio: fix kernel-doc (Jaroslav Kysela) [2003613] - ALSA: virtio: use module_virtio_driver() to simplify the code (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce device suspend/resume support (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce PCM channel map support (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce jack support (Jaroslav Kysela) [2003613] - ALSA: virtio: PCM substream operators (Jaroslav Kysela) [2003613] - ALSA: virtio: handling control and I/O messages for the PCM device (Jaroslav Kysela) [2003613] - ALSA: virtio: build PCM devices and substream hardware descriptors (Jaroslav Kysela) [2003613] - ALSA: virtio: handling control messages (Jaroslav Kysela) [2003613] - ALSA: virtio: add virtio sound driver (Jaroslav Kysela) [2003613] - uapi: virtio_ids: add a sound device type ID from OASIS spec (Jaroslav Kysela) [2003613] - ALSA: firewire: Fix C++ style comments in uapi header (Jaroslav Kysela) [2003613] - ALSA: uapi: Fix a C++ style comment in asound.h (Jaroslav Kysela) [2003613] - ASoC: topology: Fix stub for snd_soc_tplg_component_remove() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: indicate dai_fmt if exist (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: indicate missing CPU/Codec numbers for debug (Jaroslav Kysela) [2003613] - ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK/BCLK_ES bits (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup dev_dbg() to use 1 line (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup debug info for clock (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Increase maximum DAI links limit to 512 (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Use set_jack ops to set jack (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Multi) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Single) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Multi) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Single) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Nulti) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Single) (Jaroslav Kysela) [2003613] - ASoC: add Audio Graph Card2 Custom Sample (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add Codec2Codec support (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add DPCM support (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add Multi CPU/Codec support (Jaroslav Kysela) [2003613] - ASoC: add Audio Graph Card2 driver (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add codec2codec support (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add asoc_graph_is_ports0() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Fixup CPU endpoint hw_params in a BE<->BE link (Jaroslav Kysela) [2003613] - ASoC: audio-graph: respawn Platform Support (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Avoid over-allocating DLCs (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_dai_link_of_dpcm() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_link_init() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_parse_node() (Jaroslav Kysela) [2003613] - ASoC: simple-card: Fix breakage on kontron-sl28-var3-ads2 (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_dai_link_of_dpcm() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_link_init() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: add graph_link_init() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: add graph_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove Platform support (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove unused "node" from graph_parse_mclk_fs() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove "audio-graph-card, " preix support (Jaroslav Kysela) [2003613] - ASoC: audio-graph: check ports if exists (Jaroslav Kysela) [2003613] - ASoC: audio-graph: move audio_graph_remove() to simple-card-utils.c (Jaroslav Kysela) [2003613] - ASoC: tegra: Add driver remove() callback (Jaroslav Kysela) [2003613] - ASoC: audio-graph: move audio_graph_card_probe() to simple-card-utils.c (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Allocate link info structure on heap (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Increase maximum number of links to 128 (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Propagate errors on too many links (Jaroslav Kysela) [2003613] - ASoC: audio-graph: use simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: audio-graph: use asoc_link_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: use simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: use asoc_link_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: remove unused variable from simple_parse_of() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup asoc_simple_parse_convert() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: multi support at asoc_simple_canonicalize_cpu/platform() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: care multi DAI at asoc_simple_clean_reference() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: remove asoc_simple_parse_xxx() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: use for_each_prop_xxx() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: remove li->dais/li->conf (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: setup dai_props cpu_dai/codec_dai at initial timing (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: share dummy DAI and reduce memory (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: enable flexible CPU/Codec/Platform (Jaroslav Kysela) [2003613] - ASoC: simple-card: fix possible uninitialized single_cpu local variable (Jaroslav Kysela) [2003613] - ASoC: simple-card: cleanup graph_for_each_link() (Jaroslav Kysela) [2003613] - ASoC: simple-card: count DAI / link numbers as in order (Jaroslav Kysela) [2003613] - ASoC: audio-graph: cleanup graph_for_each_link() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: count DAI / link numbers as in order (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: alloc dai_link information for CPU/Codec/Platform (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils.c: remove old comment (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Do not handle device clock (Jaroslav Kysela) [2003613] - ASoC: generic: simple-card-utils: remove useless assignment (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Fix device module clock (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Rename functions needed for export (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Expose helpers from audio graph (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Expose new members for asoc_simple_priv (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Support empty Codec endpoint (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Identify 'no_pcm' DAI links for DPCM (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Use of_node and DAI for DPCM DAI link names (Jaroslav Kysela) [2003613] - ALSA: memalloc: Drop superfluous snd_dma_buffer_sync() declaration (Jaroslav Kysela) [2003613] - ASoC: SOF: dai: include new flags for DAI_CONFIG (Jaroslav Kysela) [2003613] - ASoC: SOF: dai: mirror group_id definition added in firmware (Jaroslav Kysela) [2003613] - ALSA: core: Use READ_ONCE() / WRITE_ONCE() for power state change (Jaroslav Kysela) [2003613] - ALSA: hda_audio_ext: fix kernel-doc (Jaroslav Kysela) [2003613] - ALSA: make snd_kcontrol_new name a normal string (Jaroslav Kysela) [2003613] - ASoC: constify of_phandle_args in snd_soc_get_dai_name() (Jaroslav Kysela) [2003613] - ASoC: tas2770: Fix setting of high sample rates (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix the wrong jack type detected (Jaroslav Kysela) [2003613] - ASoC: tegra: Restore headphones jack name on Nyan Big (Jaroslav Kysela) [2003613] - ASoC: tegra: Add DAPM switches for headphones and mic jack (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add new ADL-P variant (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add ADL-N support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Retry codec probing if it fails (Jaroslav Kysela) [2003613] - ASoC: amd: fix uninitialized variable in snd_acp6x_probe() (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix crash due to out of scope stack vars (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix crash due to out of scope stack vars (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for ADX (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for AMX (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for Mixer (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Balance runtime PM count (Jaroslav Kysela) [2003613] - ASoC: SOF: hda: reset DAI widget before reconfiguring it (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Set the max SPI speed for the whole device (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entry for ESSX8336 on CML (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: Set mach->id field on comp_ids matches (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in Mixer (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in ADX (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in AMX (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in AHUB (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in DSPK (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in DMIC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in I2S (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in ADMAIF (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in DSPK (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in DMIC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in I2S (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in ADMAIF (Jaroslav Kysela) [2003613] - ASoC: topology: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2003613] - ASoC: SOF: build compression interface into snd_sof.ko (Jaroslav Kysela) [2003613] - ASoC: rt5682: Re-detect the combo jack after resuming (Jaroslav Kysela) [2003613] - ASoC: rt5682: Avoid the unexpected IRQ event during going to suspend (Jaroslav Kysela) [2003613] - ASoC: rt1011: revert 'I2S Reference' to SOC_ENUM_EXT (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add the compatibility with rt9120s (Jaroslav Kysela) [2003613] - ASoC: rt9120: Fix clock auto sync issue when fs is the multiple of 48 (Jaroslav Kysela) [2003613] - ASoC: rt9120: Update internal ocp level to the correct value (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B12 product (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0B29 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B29 product (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0B13 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B13 product (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B11 product (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B00 and 0B01 products (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0AF3 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0AF3 product (Jaroslav Kysela) [2003613] - ASoC: DAPM: Cover regression by kctl change notification fix (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: fix hotplug when only codec is suspended (Jaroslav Kysela) [2003613] - ASoC: SOF:control: Fix variable type in snd_sof_refresh_control() (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Change monitor widgets to siggens (Jaroslav Kysela) [2003613] - ASoC: tlv320aic3x: Make aic3x_remove() return void (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: use const for all uses of snd_soc_acpi_codecs (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi-cht: shrink tables using compatible IDs (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi-byt: shrink tables using compatible IDs (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: use comp_ids to enumerate rt5682s (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: detect codec variant in probe function (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: add comp_ids field for machine driver matching (Jaroslav Kysela) [2003613] - ASoC: Stop dummy from overriding hwparams (Jaroslav Kysela) [2003613] - ASoC: topology: Change topology device to card device (Jaroslav Kysela) [2003613] - ASoC: topology: Use correct device for prints (Jaroslav Kysela) [2003613] - ASoC: topology: Check for dapm widget completeness (Jaroslav Kysela) [2003613] - ASoC: topology: Add header payload_size verification (Jaroslav Kysela) [2003613] - ASoC: core: Remove invalid snd_soc_component_set_jack call (Jaroslav Kysela) [2003613] - ASoC: amd: acp: select CONFIG_SND_SOC_ACPI (Jaroslav Kysela) [2003613] - ASoC: Intel: glk_rt5682_max98357a: support ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: es8316: add support for ESSX8336 ACPI _HID (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct configuring of switch inversion from ts-inv (Jaroslav Kysela) [2003613] - ASoC: fix unmet dependencies on GPIOLIB for SND_SOC_DMIC (Jaroslav Kysela) [2003613] - ASoC: amd: acp: fix Kconfig dependencies (Jaroslav Kysela) [2003613] - ASoC: rt5682-i2c: Use devm_clk_get_optional for optional clock (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entry for ESSX8336 on JSL (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Fix return value check in acp_machine_select() (Jaroslav Kysela) [2003613] - ASoC: max98520: add max98520 audio amplifier driver (Jaroslav Kysela) [2003613] - ASoC: nau8821: clarify out-of-bounds check (Jaroslav Kysela) [2003613] - ASoC: nau8821: fix kernel-doc (Jaroslav Kysela) [2003613] - ASoC: rt5682s: use 'static' qualifier (Jaroslav Kysela) [2003613] - ASoC: topology: handle endianness warning (Jaroslav Kysela) [2003613] - ASoC: amd: acp: SND_SOC_AMD_ACP_COMMON should depend on X86 && PCI (Jaroslav Kysela) [2003613] - ASoC: amd: acp: SND_SOC_AMD_{LEGACY_MACH,SOF_MACH} should depend on X86 && PCI && I2C (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Wrap AMD Audio ACP components in SND_SOC_AMD_ACP_COMMON (Jaroslav Kysela) [2003613] - ASoC: cs42l42: free_irq() before powering-down on probe() fail (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Reset and power-down on remove() and failed probe() (Jaroslav Kysela) [2003613] - ASoC: nau8825: add clock management for power saving (Jaroslav Kysela) [2003613] - ASoC: nau8825: add set_jack coponment support (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Prevent NULL pointer deref in interrupt handler (Jaroslav Kysela) [2003613] - ASoC: wm8962: Convert to devm_clk_get_optional() (Jaroslav Kysela) [2003613] - ASoC: fix unmet dependency on GPIOLIB for SND_SOC_MAX98357A (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Make cs35l41_remove() return void (Jaroslav Kysela) [2003613] - ASoC: tegra: Set default card name for Trimslice (Jaroslav Kysela) [2003613] - ASoC: tegra: Restore AC97 support (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add acp_machine struct for renoir platform. (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Downsizing the DAC volume scale (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Remove unused runtime_suspend/runtime_resume callbacks (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for ACPI table match entry (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use device_property API instead of of_property (Jaroslav Kysela) [2003613] - ASoC: Intel: Move soc_intel_is_foo() helpers to a generic header (Jaroslav Kysela) [2003613] - ASoC: amd: enable Yellow Carp platform machine driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add YC machine driver using dmic (Jaroslav Kysela) [2003613] - ASoC: amd: create platform device for acp6x machine driver (Jaroslav Kysela) [2003613] - ASoC: amd: enable Yellow carp acp6x drivers build (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pci driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm driver dma ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x irq handler (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm platform driver (Jaroslav Kysela) [2003613] - ASoC: amd: add platform devices for acp6x pdm driver and dmic driver (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x init/de-init functions (Jaroslav Kysela) [2003613] - ASoC: amd: add Yellow Carp ACP PCI driver (Jaroslav Kysela) [2003613] - ASoC: amd: add Yellow Carp ACP6x IP register header (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add support for RT5682-VS codec (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add support for Maxim amplifier codec (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add SOF audio support on Chrome board (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add legacy sound card support for Chrome audio (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add generic machine driver support for ACP cards (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add callback for machine driver on ACP (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add I2S support on Renoir platform (Jaroslav Kysela) [2003613] - ASoC: amd: Add common framework to support I2S on ACP SOC (Jaroslav Kysela) [2003613] - ASoC: soc-core: tidyup empty function (Jaroslav Kysela) [2003613] - ASoC: soc-component: add snd_soc_component_is_codec() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step2 (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step1 (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Always enable TS_PLUG and TS_UNPLUG interrupts (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix WARN in remove() if running without an interrupt (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Mark OSC_SWITCH_STATUS register volatile (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Set correct SRC MCLK (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Allow time for HP/ADC to power-up after enable (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use PLL for SCLK > 12.288MHz (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't claim to support 192k (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Defer probe if request_threaded_irq() returns EPROBE_DEFER (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't set defaults for volatile registers (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct some register default values (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Always configure both ASP TX channels (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't reconfigure the PLL while it is running (Jaroslav Kysela) [2003613] - ASoC: soc-component: improve error reporting for register access (Jaroslav Kysela) [2003613] - ASoC: amd: enable vangogh platform machine driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh machine driver (Jaroslav Kysela) [2003613] - ASoc: amd: create platform device for VG machine driver (Jaroslav Kysela) [2003613] - ASoC: test-component: add Test Component for Sound debug/test (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix a little pop while playback (Jaroslav Kysela) [2003613] - ASoC: rt1011: Fix 'I2S Reference' enum control (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: amd: vangogh: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [2003613] - ASoC: rt9120: Drop rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: rt1011: Fix 'I2S Reference' enum control caused error (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Ensure 0dB full scale volume is used for headsets (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: use devm_clk_get_optional() for mclk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: switch to using devm_fwnode_gpiod_get() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: use devm_clk_get_optional() for mclk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: amd: Kconfig: Select fch clock support with machine driver (Jaroslav Kysela) [2003613] - ASoC: soc-core: fix null-ptr-deref in snd_soc_del_component_unlocked() (Jaroslav Kysela) [2003613] - ASoC: SOF: prepare code to allocate IPC messages in fw_ready (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: restore mixer functionality (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix hp pop produced immediately after resuming (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce fragment elapsed notification API (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Use newly introduced generic IPC stream ops (Jaroslav Kysela) [2003613] - ASoC: SOF: Make Intel IPC stream ops generic (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce snd_sof_mailbox_read / snd_sof_mailbox_write callbacks (Jaroslav Kysela) [2003613] - ASoC: SOF: pipelines: Harmonize all functions to use struct snd_sof_dev (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: do not power down primary core during topology removal (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Dump registers and stack when SOF_DBG_DUMP_REGS is set (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-loader: Drop SOF_DBG_DUMP_REGS flag from dbg_dump calls (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Drop SOF_DBG_DUMP_REGS flag when firmware start fails (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Clean up snd_sof_get_status() prints (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda: Drop 'error' prefix from error dump functions (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce macro to set the firmware state (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: Force DSP panic dumps to be printed (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Re-enable dumps after successful IPC tx (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Print out the fw_state along with the DSP dump (Jaroslav Kysela) [2003613] - ASoC: SOF: Drop SOF_DBG_DUMP_FORCE_ERR_LEVEL and sof_dev_dbg_or_err (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda-loader: Use snd_sof_dsp_dbg_dump() for DSP dump (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Add SOF_DBG_DUMP_OPTIONAL flag for DSP dumping (Jaroslav Kysela) [2003613] - ASoC: SOF: debug/ops: Move the IPC and DSP dump functions out from the header (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: atom: No need to do a DSP dump in atom_run() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Print the DSP dump if boot fails (Jaroslav Kysela) [2003613] - ASoC: SOF: Print the dbg_dump and ipc_dump once to reduce kernel log noise (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc and dsp dump: Add markers for better visibility (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Swap the dsp_dump and ipc_dump sequence for fw_exception (Jaroslav Kysela) [2003613] - ASoC: SOF: core: debug: force all processing on primary core (Jaroslav Kysela) [2003613] - ASoC: max98927: Handle reset gpio when probing i2c (Jaroslav Kysela) [2003613] - ASoC: DAPM: Fix missing kctl change notifications (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Switch to use gpiod_get_optional() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: SOF: OF: Add fw_path and tplg_path parameters (Jaroslav Kysela) [2003613] - ASoC: amd: acp-rt5645: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: return error if sof_connect_dai_widget() fails (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: allow for dynamic pipelines override for debug (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: show clks_control value in dynamic debug (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dai: improve SSP DAI handling for dynamic pipelines (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: add new flags for DAI_CONFIG (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add missing quirk for Dell SKU 0A45 (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add missing quirk for TGL SDCA single amp (Jaroslav Kysela) [2003613] - ASoC: Intel: add machine driver for SOF+ES8336 (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: apl/glk/tgl: add entry for devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ASoC: Intel: cht_bsw_nau8824: Set card.components string (Jaroslav Kysela) [2003613] - ASoC: nau8824: Add a nau8824_components() helper (Jaroslav Kysela) [2003613] - ASoC: nau8824: Add DMI quirk mechanism for active-high jack-detect (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix NAU8824_JACK_LOGIC define (Jaroslav Kysela) [2003613] - ASoC: rt5651: Use IRQF_NO_AUTOEN when requesting the IRQ (Jaroslav Kysela) [2003613] - ASoC: es8316: Use IRQF_NO_AUTOEN when requesting the IRQ (Jaroslav Kysela) [2003613] - ASoC: nau8821: new driver (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: Add kernel parameter for topology verification (Jaroslav Kysela) [2003613] - ASoC: SOF: Add support for dynamic pipelines (Jaroslav Kysela) [2003613] - treewide: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: make sure DAI widget is set up before IPC (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce widget use_count (Jaroslav Kysela) [2003613] - ASoC: SOF: Don't set up widgets during topology parsing (Jaroslav Kysela) [2003613] - ASoC: SOF: restore kcontrols for widget during set up (Jaroslav Kysela) [2003613] - ASoC: SOF: Add new fields to snd_sof_route (Jaroslav Kysela) [2003613] - AsoC: dapm: export a couple of functions (Jaroslav Kysela) [2003613] - ASoC: SOF: sof-audio: add helpers for widgets, kcontrols and dai config set up (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: Add new token for dynamic pipeline (Jaroslav Kysela) [2003613] - ASoC: SOF: control: Add access field in struct snd_sof_control (Jaroslav Kysela) [2003613] - ASoC: topology: change the complete op in snd_soc_tplg_ops to return int (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix HP noise caused by SAR mode switch when the system resumes (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Enable ASRC auto-disable to fix pop during jack plug-in while playback (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp (Jaroslav Kysela) [2003613] - ASoC: tegra: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: rt5682: move clk related code to rt5682_i2c_probe (Jaroslav Kysela) [2003613] - ASoC: rt5682: Use clk_hw based APIs for registration (Jaroslav Kysela) [2003613] - ASoC: rt5682: Drop usage of __clk_get_name() (Jaroslav Kysela) [2003613] - ASoC: SOF: Change SND_SOC_SOF_TOPLEVEL from config to menuconfig (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Revise the macro RT5682S_PLLB_SRC_MASK (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Use dev_dbg instead of pr_debug (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Remove the volatile SW reset register from reg_default (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix headphone vs headset, button-press detection no longer working (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: update platform device name for Maxim amplifier (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Make the error prints consistent in tx_wait_done() (Jaroslav Kysela) [2003613] - ASoC: SOF: prefix some terse and cryptic dev_dbg() with __func__ (Jaroslav Kysela) [2003613] - ASoC: SOF: add error handling to snd_sof_ipc_msg_data() (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: add header file for ops (Jaroslav Kysela) [2003613] - ASoC: SOF: pm: fix a stale comment (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-stream: Print stream name on STREAM_SD_OFFSET timeout (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dai: fix potential locking issue (Jaroslav Kysela) [2003613] - ASoC: ak4458: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: ak5558: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: dwc-i2s: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ak4671: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: alc5623: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: bcm: Convert to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cpcap: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: Fix spelling mistake "Unsupport" -> "Unsupported" (Jaroslav Kysela) [2003613] - ASoC: ad193x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: tegra: Constify static snd_soc_dai_ops structs (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use two thresholds and increased wait time for manual type detection (Jaroslav Kysela) [2003613] - ASoC: adau1977: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau17x1: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1701: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1373: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1372: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ad1836: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ep93xx: Convert to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: samsung: add missing "fallthrough;" (Jaroslav Kysela) [2003613] - ASoC: ak4642: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Use correct version to initialize Class H (Jaroslav Kysela) [2003613] - ASoC: alc5632: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: ak4104: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ak4118: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: zl38060: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cs4341: Add SPI device ID table (Jaroslav Kysela) [2003613] - ASoC: pcm179x: Add missing entries SPI to device ID table (Jaroslav Kysela) [2003613] - ASoC: pl1022_rdk: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: pl1022_ds: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: mpc8610_hpcd: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-sgtl5000: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-es8328: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-audmix: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl_sai: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-mqs: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-esai: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-audmix: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: eureka-tlv320: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cros_ec_codec: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: pcm512x: Mend accesses to the I2S_1 and I2S_2 registers (Jaroslav Kysela) [2003613] - ASoC: codecs: max98390: simplify getting the adapter of a client (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: SOF: Remove struct sof_ops_table and sof_get_ops() macro (Jaroslav Kysela) [2003613] - ASoC: rt5682s: make rt5682s_aif2_dai_ops and rt5682s_soc_component_dev (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based Mixer driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based ADX driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based AMX driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based SFC driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based MVC driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add routes for few AHUB modules (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: Don't reconnect an already active BE (Jaroslav Kysela) [2003613] - ASoC: compress/component: Use module_get_when_open/put_when_close for cstream (Jaroslav Kysela) [2003613] - ASoC: soc-component: Convert the mark_module to void* (Jaroslav Kysela) [2003613] - ASoC: SOF: Rename sof_arch_ops to dsp_arch_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Remove redundant error check from sof_ipc_tx_message_unlocked (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Print 0x prefix for errors in ipc_trace/stream_message() (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Clarify the parameter name for ipc_trace_message() (Jaroslav Kysela) [2003613] - ASoC: SOF: trace: Omit error print when waking up trace sleepers (Jaroslav Kysela) [2003613] - misc: cs35l41: Remove unused pdn variable (Jaroslav Kysela) [2003613] - ASoC: SOF: imx8m: add SAI1 info (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Minor fix all errors reported by checkpatch.pl script (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Move probe work related code under a single if () branch (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Implement Manual Type detection as fallback (Jaroslav Kysela) [2003613] - ASoC: SOF: sof-probes: Correct the function names used for snd_soc_cdai_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Rename hda-compress.c to hda-probes.c (Jaroslav Kysela) [2003613] - ASoC: SOF: probe: Merge and clean up the probe and compress files (Jaroslav Kysela) [2003613] - ASoC: SOF: compress: move and export sof_probe_compr_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: pcm: Remove non existent CONFIG_SND_SOC_SOF_COMPRESS reference (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Add probe message logging to ipc_log_header() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Re-phrase the missing firmware error to avoid duplication (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: release_firmware() on load failure to avoid batching (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: No need to export the snd_sof_debugfs_io_item() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Use the generic ops for region debugfs handling (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Add generic API and ops for DSP regions (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Do not use 'bar' as parameter for block_read/write (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: No need to export snd_sof_fw_parse_ext_data() (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Do not initialize the snd_sof_dsp_ops.read64 (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Remove snd_sof_dsp_mailbox_init() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: bdw: Set the mailbox offset directly in bdw_probe (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: imx8m: Bar index is only valid for IRAM and SRAM types (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: imx8: Bar index is only valid for IRAM and SRAM types (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fix a bunch of trivial code formating/style issues (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fixup the error messages (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Don't overwrite returned error code (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Combine adjacent register writes (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Use regmap_read_poll_timeout to wait for OTP boot (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fix use of an uninitialised variable (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: load_firmware callback is mandatory, treat it like that (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Relocate inline definitions from hda.h to hda.c for sdw (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Remove boot_firmware skl and iccmax_icl declarations (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dsp: Declare locally used functions as static (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: Do no initialize resindex_dma_base (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_mx98360a board (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015 board (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015p board (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: support ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: SOF: Fix DSP oops stack dump output contents (Jaroslav Kysela) [2003613] - ASoC: pcm5102a: increase rate from 192k to 384k (Jaroslav Kysela) [2003613] - ASoC: rt1011: add i2s reference control for rt1011 (Jaroslav Kysela) [2003613] - ASoC: SOF: Handle control change notification from firmware (Jaroslav Kysela) [2003613] - ASoC: SOF: control: fix a typo in put operations for kcontrol (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Add driver for ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: SOF: core: allow module parameter to override dma trace Kconfig (Jaroslav Kysela) [2003613] - ASoC: soc-topology: Move template info print soc_tplg_dapm_widget_create() (Jaroslav Kysela) [2003613] - ASoC: amd: acp: declare and add prefix to 'bt_uart_enable' symbol (Jaroslav Kysela) [2003613] - ASoC: cs35l41: CS35L41 Boosted Smart Amplifier (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: tag SoundWire BEs as non-atomic (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: Fix CONFIG_SND_SOC_SDW_MOCKUP select (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix headset background noise when S3 state (Jaroslav Kysela) [2003613] - ASoC: Revert PCM trigger changes (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: test refcount before triggering (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: protect BE dailink state changes in trigger (Jaroslav Kysela) [2003613] - ASoC: dwc: Get IRQ optionally (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix the vol+ button detection issue (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Make rt5640_jack_gpio/rt5640_jack2_gpio static (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: remove duplicate include (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: move common ATOM stuff to module (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: byt: prepare split between Baytrail and Merrifield (Jaroslav Kysela) [2003613] - ASoC: rt1015: remove possible unused variable `bclk_ms' (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Mark hp_elitepad_1000g2_jack?_check functions static (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Select first entry for singular pipe config arrays (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Properly configure modules with generic extension (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Support modules with generic extension (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Support multiple format configs (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Simplify m_state for loadable modules (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix passing loadable flag for module (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix module configuration for KPB and MIXER (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix module resource and format selection (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Select proper format for NHLT blob (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Leave data as is when invoking TLV IPCs (Jaroslav Kysela) [2003613] - ASoC: Intel: kbl_da7219_max98927: Fix format selection for max98373 (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Revert PCM buffer address setup workaround again (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for HP Elite Pad 1000G2 jack-detect (Jaroslav Kysela) [2003613] - ASoC: Intel: bytct_rt5640: Add a separate "Headset Mic 2" DAPM pin for the mic on the 2nd jack (Jaroslav Kysela) [2003613] - ASoC: rt5640: Add rt5640_set_ovcd_params() helper (Jaroslav Kysela) [2003613] - ASoC: rt5640: Add optional hp_det_gpio parameter to rt5640_detect_headset() (Jaroslav Kysela) [2003613] - ASoC: rt5640: Delay requesting IRQ until the machine-drv calls set_jack (Jaroslav Kysela) [2003613] - ASoC: rt5640: Move rt5640_disable_jack_detect() up in the rt5640.c file (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Fix breakage for PCM buffer address setup (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Use cfg-lineout:2 in the components string (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Fix incorrect usage of of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Fix incorrect usage of of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Use of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Use of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: soc-ac97: cleanup cppcheck warning (Jaroslav Kysela) [2003613] - ASoC: soc-component: cleanup cppcheck warning at snd_soc_pcm_component_pm_runtime_get() (Jaroslav Kysela) [2003613] - ASoC: soc-jack: cleanup cppcheck warning for CONFIG_GPIOLIB (Jaroslav Kysela) [2003613] - ASoC: soc-jack: cleanup cppcheck warning at snd_soc_jack_report() (Jaroslav Kysela) [2003613] - ASoC: soc-dai: cleanup cppcheck warning at snd_soc_pcm_dai_new() (Jaroslav Kysela) [2003613] - ASoC: soc-dai: cleanup cppcheck warning at snd_soc_dai_link_set_capabilities() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_copy_user() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_pcm_new() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_pcm_hw_params() (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw_rt711*: keep codec device reference until remove (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: pass card information to init/exit functions (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: get codec device with ACPI instead of bus search (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: handle errors with acpi_dev_get_first_match_dev() (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: harden codec property handling (Jaroslav Kysela) [2003613] - ASoC: rt5682: Remove unused variable in rt5682_i2c_remove() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: make DMI L1 selection more robust (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: simplify logic for DMI_L1 handling (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-stream: remove always true condition (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Kconfig: clarify DMI L1 option description (Jaroslav Kysela) [2003613] - ASoC: rt5682: Properly turn off regulators if wrong device ID (Jaroslav Kysela) [2003613] - ASoC: rt5682: Implement remove callback (Jaroslav Kysela) [2003613] - ASoC: rt5682: Disable irq on shutdown (Jaroslav Kysela) [2003613] - ASoC: rt5682: Adjust headset volume button threshold again (Jaroslav Kysela) [2003613] - ASoC: Intel: Fix platform ID matching (Jaroslav Kysela) [2003613] - ASoC: rt1015p: add new acpi id and comapatible id (Jaroslav Kysela) [2003613] - ASoC: max98390: Add support change dsm param name (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Update module authors (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Assume 24-bit samples are in 32-bit slots (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Validate dai_set_sysclk() frequency (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add PLL configuration for 44.1kHz/16-bit (Jaroslav Kysela) [2003613] - ASoC: rt5640: Silence warning message about missing interrupt (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix mono playback (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Constrain sample rate to prevent illegal SCLK (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix LRCLK frame start edge (Jaroslav Kysela) [2003613] - ASoC: cs42l42: PLL must be running when changing MCLK_SRC_SEL (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for set_jack calls (Jaroslav Kysela) [2003613] - ASoC: mt6359-accdet.c: remove useless assignments (Jaroslav Kysela) [2003613] - ASoC: max98090: remove duplicate status reads and useless assignmment (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at soc_dapm_dai_stream_event() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_new_controls() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_weak_routes() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_add_routes() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_del_route() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_seq_run() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_seq_check_event() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_new_dai_link() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_new_pga() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_set_mixer_path_status() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_connect_mux() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_wcache_lookup() (Jaroslav Kysela) [2003613] - ASoC: amd: vangogh: Drop superfluous mmap callback (Jaroslav Kysela) [2003613] - ASoC: sprd: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: qcom: qdsp6: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: mpc5200: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl_dma: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl_asrc_dma: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: tegra: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl: imx-pcm-fiq: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: bcm: Use managed PCM buffer allocation (Jaroslav Kysela) [2003613] - ALSA: pxa2xx: Use managed PCM buffer allocation (Jaroslav Kysela) [2003613] - ASoC: rt5514: make array div static const, makes object smaller (Jaroslav Kysela) [2003613] - ASoC: codecs: ad193x: add support for 96kHz and 192kHz playback rates (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_xr_sx() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_get_xr_sx() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_limit_volume() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_volsw_sx() (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw_max98373: remove useless inits (Jaroslav Kysela) [2003613] - ASoC: Intel: update sof_pcm512x quirks (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Use DMI string to search for adl_mx98373_rt5682 variant (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add quirk for Dell XPS 9710 (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Remove duplicate control for WNF filter frequency (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix inversion of ADC Notch Switch control (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-ipc: fix reply size checking (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Kconfig: fix SoundWire dependencies (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Fix HP ElitePad 1000 G2 quirk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for a second headset mic input (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for a second headphones output (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add a byt_rt5640_get_codec_dai() helper (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add line-out support (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Move "Platform Clock" routes to the maps for the matching in-/output (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: add snd_sof_dsp_check_sdw_irq ops (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: move sof_intel_dsp_desc() forward (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda: remove HDA_DSP_REG_SNDW_WAKE_STS definition (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: add sdw_shim/alh_base to sof_intel_dsp_desc (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at snd_soc_find_dai_link() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_kcontrol_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_dapm_widget_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_dai_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_process_headers() (Jaroslav Kysela) [2003613] - ASoC: amd: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - soundwire: add flag to ignore all command/control for mockup devices (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix open coded prefix handling (Jaroslav Kysela) [2003613] - ASoC: uniphier: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: xilinx: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: intel: skylake: Drop superfluous mmap callback (Jaroslav Kysela) [2003613] - ASoC: amd: Drop superfluous mmap callbacks (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix bclk calculation for mono (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't allow SND_SOC_DAIFMT_LEFT_J (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct definition of ADC Volume control (Jaroslav Kysela) [2003613] - ASoC: v253_init: eliminate pointer to string (Jaroslav Kysela) [2003613] - ASoC: samsung: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_of_parse_audio_routing() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_of_parse_audio_simple_widgets() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_add_controls() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_unregister_component() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_daifmt_parse_format() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_get_dai_name() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_set_dmi_name() (Jaroslav Kysela) [2003613] - ASoC: Intel: Fix spelling contraction "cant" -> "can't" (Jaroslav Kysela) [2003613] - ASoC: component: Remove misplaced prefix handling in pin control functions (Jaroslav Kysela) [2003613] - ASoC: amd: fix an IS_ERR() vs NULL bug in probe (Jaroslav Kysela) [2003613] - ASoC: rt5682: enable SAR ADC power saving mode during suspend (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at dpcm_runtime_setup_be_chan() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at dpcm_be_is_active() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_get_playback_capture() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_pcm_components_close() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_pcm_apply_msb() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: enforce exclusion between HDaudio and SoundWire (Jaroslav Kysela) [2003613] - ASoC: topology: Select SND_DYNAMIC_MINORS (Jaroslav Kysela) [2003613] - ASoC: rt1015: Remove unnecessary flush work on rt1015 driver (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_da7219_mx98360a: fail to initialize soundcard (Jaroslav Kysela) [2003613] - ASoC: amd: Use dev_probe_err helper (Jaroslav Kysela) [2003613] - ASoC: amd: Don't show messages about deferred probing by default (Jaroslav Kysela) [2003613] - ASoC: amd: enable stop_dma_first flag for cz_dai_7219_98357 dai link (Jaroslav Kysela) [2003613] - ASoC: amd: enable vangogh acp5x driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s dma driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh pci driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s dai driver ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s controller driver (Jaroslav Kysela) [2003613] - ASoC: amd: add ACP5x pcm dma driver ops (Jaroslav Kysela) [2003613] - ASoC: amd: irq handler changes for ACP5x PCM dma driver (Jaroslav Kysela) [2003613] - ASoC: amd: add ACP5x PCM platform driver (Jaroslav Kysela) [2003613] - ASoC: amd: create acp5x platform devices (Jaroslav Kysela) [2003613] - ASoc: amd: add acp5x init/de-init functions (Jaroslav Kysela) [2003613] - ASoC: amd: add Vangogh ACP PCI driver (Jaroslav Kysela) [2003613] - ASoC: amd: add Vangogh ACP5x IP register header (Jaroslav Kysela) [2003613] - ASoC: amd: renoir: Run hibernation callbacks (Jaroslav Kysela) [2003613] - ASoC: rt5682: Adjust headset volume button threshold (Jaroslav Kysela) [2003613] - ASOC: Intel: sof_sdw: add quirk for Intel 'Bishop County' NUC M15 (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix the issue of garbled recording after powerd_dbus_suspend (Jaroslav Kysela) [2003613] - ASoC: amd: reverse stop sequence for stoneyridge platform (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: add a flag to reverse the stop sequence (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: sof_sdw: add SoundWire mockup codecs for tests (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: tgl: add table for SoundWire mockup devices (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: cnl: add table for SoundWire mockup devices (Jaroslav Kysela) [2003613] - ASoC: codecs: add SoundWire mockup device support (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: update quirk for jack detection in ADL RVP (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: include rt711.h for RT711 JD mode (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: extends SOF_RT711_JDSRC to 4 bits (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: code refactor for max98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: code refactor for max98357a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: Enable Bluetooth offload on tgl and adl (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: add support for jsl_cs4242_mx98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: maxim-common: support max98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: maxim-common: support max98357a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: support arbitrary DAI link sequence (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Update ADL descriptor to use ACPI power states (Jaroslav Kysela) [2003613] - ASoC: rt5631: Fix regcache sync errors on resume (Jaroslav Kysela) [2003613] - ASoC: amd: fix spelling mistakes (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: use helper function to get bclk frequency (Jaroslav Kysela) [2003613] - ASoC: SOF: add a helper to get topology configured bclk (Jaroslav Kysela) [2003613] - ASoC: tegra: Use ADMAIF component for DMA allocations (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: fix xrun issue on platform with max98373 (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra: mark runtime-pm functions as __maybe_unused (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Correct suspend-resume callbacks (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Reset global variable (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Switch to use reset-bulk API (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Reset hardware properly (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Use clk_bulk helpers (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Add missing resets (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra210_admaif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra20: spdif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: simple-card: Fill in driver name (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Add missing of_node_put() in imx8_probe() (Jaroslav Kysela) [2003613] - ASoC: Intel: skl_hda_dsp_generic: Update Kconfig documentation (Jaroslav Kysela) [2003613] - ASoC: Intel: use MODULE_DEVICE_TABLE with platform_device_id tables (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add ull suffix for SoundWire _ADR values (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: fix signed/unsigned warning (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_da7219_max98373: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: kbl_da7219_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: glk_rt5682_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: shrink platform_id names below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: remove hdac-hdmi support (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: use mach data for ADL RVP DMIC count (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix a NULL vs IS_ERR() check (Jaroslav Kysela) [2003613] - ASoC: rt711: add two jack detection modes (Jaroslav Kysela) [2003613] - ASoC: samsung: s3c24xx-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: s3c2412-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: pcm: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: soc-core: remove snd_soc_of_parse_daifmt() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: switch to use snd_soc_daifmt_parse_format/clock_provider() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_parse_format/clock_provider() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_clock_provider_fliped() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_clock_provider_from_bitmap() (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt711-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt700-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: fsi: fix spelling mistake (Jaroslav Kysela) [2003613] - ASoC: Intel: bdw-rt5677: remove unnecessary oom message (Jaroslav Kysela) [2003613] - ASoC: spear: spdif_out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: sprd: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: soc-core: Fix the error return code in snd_soc_of_parse_audio_routing() (Jaroslav Kysela) [2003613] - ASoC: sti: sti_uniperif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: spdifrx: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: sai: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: make hdmi_codec_controls static (Jaroslav Kysela) [2003613] - ASoC: rockchip: spdif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: rockchip: pdm: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: rockchip: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct definition of CS42L42_ADC_PDN_MASK (Jaroslav Kysela) [2003613] - ASoC: hisilicon: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: jz4740-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-spdif-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-spdif-in: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-parallel-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-i2s-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-i2s-in: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: dwc: dwc-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra: Squash utils into common machine driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Specify components string for each card (Jaroslav Kysela) [2003613] - ASoC: tegra: Unify ASoC machine drivers (Jaroslav Kysela) [2003613] - ASoC: tegra: SND_SOC_TEGRA_AUDIO_GRAPH_CARD should depend on SND_SOC_TEGRA (Jaroslav Kysela) [2003613] - ASoC: tegra20-spdif: remove "default m" (Jaroslav Kysela) [2003613] - ASoC: tegra: Add audio graph based card driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Set driver_name=tegra for all machine drivers (Jaroslav Kysela) [2003613] - ASoC: rt5640: Make codec selectable (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Add a prepare hook (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Add iec958 controls (Jaroslav Kysela) [2003613] - ASoC: rt5645: Avoid upgrading static warnings to errors (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Rework to support more controls (Jaroslav Kysela) [2003613] - ASoC: soc-core: don't use discriminatory terms on snd_soc_runtime_get_dai_fmt() (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca: handle mbq_regmap in rt711_sdca_io_init (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: add readable for SDW_SDCA_CTL() registers (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: set regcache_cache_only false before reading RT5682_DEVICE_ID (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix a problem with error handling in the io init function of the soundwire (Jaroslav Kysela) [2003613] - ASoC: rt715-sdca: fix clock stop prepare timeout issue (Jaroslav Kysela) [2003613] - ASoC: rt715-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt715-sdca-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt711-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt700-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt1316-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt1308-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: max98373-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: max98373-sdw: add missing memory allocation check (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: fsi: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: pcm3168a: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: ak4613: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_runtime_get_dai_fmt() (Jaroslav Kysela) [2003613] - ASoC: soc-core: move snd_soc_runtime_set_dai_fmt() to upside (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - mfd: arizona: Allow building arizona MFD-core as module (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add ADL-M support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: don't print ROM status if cl_dsp_init() fails (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: clean up hda_dsp_dump() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Constify sof_probe_compressed_ops (Jaroslav Kysela) [2003613] - ASoC: wm5110: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: wm5102: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: cs47125: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: cs42l52: use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: cs35l3x: Use neutral language in amp drivers (Jaroslav Kysela) [2003613] - ASoC: cs43130: Use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - ASoC: wm8962: Use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: cs42l56: use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: tlv320aic26: use DEVICE_ATTR_RW macro (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Check jack status before reporting button events (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for 2400000 Bit clock (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for 2304000 Bit clock (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix 1536000 Bit Clock instability (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add quirk support for Brya and BT-offload (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add SOF_RT715_DAI_ID_FIX for AlderLake (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: remove .nonatomic for BE dailinks (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add support for Bluetooth offload (Jaroslav Kysela) [2003613] - ASoC: Intel: common: Add entries for sdw codecs in ADL match table (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entries for i2s machines in ADL match table (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Remove conditions against CONFIG_PCI (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: don't return void value (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: fix assignment to use le32_to_cpu (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Use snd_sof_dsp_block_read() instead sof_block_read() (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: print out the polling register (Jaroslav Kysela) [2003613] - ASoC: SOF: pci: No need to cast second time to save the desc (Jaroslav Kysela) [2003613] - ASoC: SOF: Check desc->ops directly in acpi/pci/of probe functions (Jaroslav Kysela) [2003613] - ASoC: topology: Fix using uninitialized pointer (Jaroslav Kysela) [2003613] - ASoC: soc-dai: fix up hw params only if it is needed (Jaroslav Kysela) [2003613] - ASoC: soc-core: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - ASoC: topology: Add support for multiple kcontrol types to a widget (Jaroslav Kysela) [2003613] - ASoC: intel/boards: add missing MODULE_DEVICE_TABLE (Jaroslav Kysela) [2003613] - ASoC: cs43130: handle errors in cs43130_probe() properly (Jaroslav Kysela) [2003613] - Revert "ASoC: cs43130: fix a NULL pointer dereference" (Jaroslav Kysela) [2003613] - ASoC: cs42l42: make HSBIAS_SENSE_EN optional (Jaroslav Kysela) [2003613] - ASoC: wm2200: remove include of wmfw.h (Jaroslav Kysela) [2003613] - ASoC: wm_adsp: mark more data structures with the const qualifier (Jaroslav Kysela) [2003613] - ASoC: Intel: bxt_da7219_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: shrink platform id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: add sof-cs42l42 machine driver (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: create sof-maxim-common module (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: handle hda-dsp-common as a module (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: add support for adl boards in sof-rt5682 (Jaroslav Kysela) [2003613] - ASoC: Intel: Boards: tgl_max98373: Add BT offload support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: fix index used in inner loop (Jaroslav Kysela) [2003613] - ALSA: fireworks: add support for Loud Onyx 1200f quirk (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU Track 16 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU Traveler mk3 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: remove TODO for interaction with userspace about control message (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix functional regression for Mackie Onyx 1640i in v5.14 or later (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: export meter information to userspace as float value (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: refine parser for meter information in register DSP models (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix null pointer dereference when polling hwdep character device (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: notify event for parameter change in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: queue event for parameter change in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add ioctl command to read cached parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for input parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for line input parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for output parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for mixer output parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for mixer source parameters in register-DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add ioctl command to read cached hardware meter (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add message parser for meter information in command DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add message parser to gather meter information in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix truncated bytes in message tracepoints (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix transmission method for Loud models based on OXFW971 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 896HD (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix functioal regression for silence in Apogee Duet FireWire (Jaroslav Kysela) [2003613] - ALSA: bebob: correct duplicated entries with TerraTec OUI (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: Fix 'amdtp_domain_start()' when no AMDTP_OUT_STREAM stream is found (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix register handling for 896 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix register handling for 828 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro instead of magic number for clock source in v3 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for source detection of sampling clock in v3 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for packet format detection in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro instead of magic number for clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for AES/EBU clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for detection of clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix detection for S/PDIF source on optical interface in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: bebob: add support for ToneWeal FW66 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix rx packet format at higher rate for MOTU 828 mk3 Hybrid (Jaroslav Kysela) [2003613] - ALSA: bebob: fix rx packet format for Yamaha GO44/GO46, Terratec Phase 24/x24 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix stream format for MOTU 8pre FireWire (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 896 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 828 (Jaroslav Kysela) [2003613] - ALSA: bebob: Fix bit flag quirk constants (Jaroslav Kysela) [2003613] - ALSA: firewire: fill Kconfig with entries for devices based on DICE ASICs (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entries for Phonic Helix Board and FireFly series (Jaroslav Kysela) [2003613] - ALSA: bebob: code refactoring for M-Audio models (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entry for Acoustic Reality eAR Master One, Eroica, Figaro, and Ciaccona (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entry for Mackie D.2 FireWire option card (Jaroslav Kysela) [2003613] - ALSA: fireworks: fulfil device entries (Jaroslav Kysela) [2003613] - ALSA: bebob: fulfil device entries (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: replace in_interrupt() with in_softirq() (Jaroslav Kysela) [2003613] - ALSA: bebob: code refactoring for model-dependent quirks (Jaroslav Kysela) [2003613] - ALSA: bebob: delete workaround for protocol version 3 (Jaroslav Kysela) [2003613] - ALSA: bebob: dismiss sleep after breaking connections (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: obsolete workqueue for period update (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: operate for period elapse event in process context (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: delete unused kernel API (Jaroslav Kysela) [2003613] - ALSA: fireface: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-tascam: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-digi00x: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: dice: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: oxfw: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: fireworks: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: bebob: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for hybrid model of MOTU Ultralite mk3 (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: remove useless operations for kernel preemption (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: fix error codes for allocation failure (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix error return code in snd_motu_stream_reserve_duplex() (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: sequence replay for source packet header (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: cache event ticks in source packet header per data block (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro for magic numbers relevant to IEC 61883-1 (Jaroslav Kysela) [2003613] - ALSA: bebob: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: dice: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: dice: wait just for NOTIFY_CLOCK_ACCEPTED after GLOBAL_CLOCK_SELECT operation (Jaroslav Kysela) [2003613] - ALSA: fireface: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: firewire-tascam: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: firewire-digi00x: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: oxfw: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: fireworks: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: fireworks: delete SYTMATCH clock source (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: support NO_PERIOD_WAKEUP in ALSA PCM runtime (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: transfer rx packets on-the-fly when replaying (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: replay sequence of incoming packets for outgoing packets (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: add replay target to cache sequence of packet (Jaroslav Kysela) [2003613] - ALSA: bebob: distinguish M-Audio ProFire Lightbridge quirk (Jaroslav Kysela) [2003613] - ALSA: bebob: cancel switching connection order (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: obsolete callbacked member (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: drop initial NODATA or empty packet (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for transfer delay (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of data block sequence (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of syt sequence (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of packet descriptors (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: pool sequence of packet in IT context independently (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: add flag to unaware of syt in CIP header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: Fix uninitialized variable err issue (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: change waking up timing to process packets (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: start processing content of packet at the same cycle in several IT contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring to start several IT/IR contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: skip initial packets instead of scheduling IR context (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: start processing content of packet at the same cycle in several IR contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for selection of IT context header length (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for calculation of context payload (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for size of CIP header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: insert descriptor for skipped cycle (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: check cycle continuity (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for check of CIP header about payload size (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for parser of IR context header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for helper function to compute OHCI 1394 cycle (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for sequence descriptor' (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: handle the case that empty isochronous packet payload for CIP (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring to refer the same frame count per period in domain structure (Jaroslav Kysela) [2003613] - ALSA: oxfw: add quirk flag for blocking transmission method (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for wrong_dbs quirk (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for jumbo payload quirk (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for jumbo-payload quirk in OXFW970 (Jaroslav Kysela) [2003613] - ALSA: oxfw: add comment for the type of ASICs (Jaroslav Kysela) [2003613] - ALSA: oxfw: add explicit device entry for Loud Technologies Mackie Onyx Sattelite (Jaroslav Kysela) [2003613] - ALSA: oxfw: add explicit device entry for Loud Technologies Tapco Link.FireWire 4x6 (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring to detect mackie models (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for existent device entry with specifier_id and version (Jaroslav Kysela) [2003613] - ALSA: firewire-lib/motu: use int type for the value of bitwise OR with enumerator-constant (Jaroslav Kysela) [2003613] - Revert "ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro" (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix quirk for Clevo NJ51CU (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Disable silent stream on GLK (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add new alc285-hp-amp-init model (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Amp init fixup for HP ZBook 15 G6 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add headset Mic support for Lenovo ALC897 platform (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix quirk for TongFang PHxTxX1 (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: fix HDA codec entry table order for ADL-P (Jaroslav Kysela) [2003613] - ALSA: hda: Add Intel DG2 PCI ID and HDMI codec vid (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Set PMSG_ON earlier inside cs8409 driver (Jaroslav Kysela) [2003613] - ALSA: ctxfi: Fix out-of-range access (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix LED on HP ProBook 435 G7 (Jaroslav Kysela) [2003613] - ALSA: cmipci: Drop stale variable assignment (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for ASRock NUC Box 1100 (Jaroslav Kysela) [2003613] - ALSA: hda: fix general protection fault in azx_runtime_idle (Jaroslav Kysela) [2003613] - ALSA: hda: Free card instance properly at probe errors (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for HP EliteBook 840 G7 mute LED (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for ASUS UX550VE (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add a quirk for Acer Spin SP513-54N (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Headset fixup for Clevo NH77HJQ (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo PC70HS (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add a quirk for HP OMEN 15 mute LED (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix mic mute LED for the HP Spectre x360 14 (Jaroslav Kysela) [2003613] - ALSA: ISA: not for M68K (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fixes HP Spectre x360 15-eb1xxx speakers (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo PC50HS (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo 13s Gen2 (Jaroslav Kysela) [2003613] - ALSA: hda: intel: Allow repeatedly probing on codec configuration errors (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for TongFang PHxTxX1 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - ALC236 headset MIC recording issue (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo X170KM-G (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Complete partial device name to avoid ambiguity (Jaroslav Kysela) [2003613] - ALSA: hda - Enable headphone mic on Dell Latitude laptops with ALC3254 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Enable 4-speaker output for Dell Precision 5560 laptop (Jaroslav Kysela) [2003613] - ALSA: hda: Use position buffer for SKL+ again (Jaroslav Kysela) [2003613] - ALSA: hda: Reduce udelay() at SKL+ position reporting (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Setup Dolphin Headset Mic as Phantom Jack (Jaroslav Kysela) [2003613] - ALSA: pcxhr: "fix" PCXHR_REG_TO_PORT definition (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Quirks to enable speaker output for Lenovo Legion 7i 15IMHG05, Yoga 7i 14ITL5/15ITL5, and 13s Gen2 laptops. (Jaroslav Kysela) [2003613] - Revert "ALSA: hda: Drop workaround for a hang at shutdown again" (Jaroslav Kysela) [2003613] - ALSA: vx222: fix null-ptr-deref (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Initialize Codec only in init fixup. (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Ensure Type Detection is only run on startup when necessary (Jaroslav Kysela) [2003613] - ALSA: hda: Disable runtime resume at shutdown (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup (Jaroslav Kysela) [2003613] - ALSA: hda: Code refactoring snd_hda_pick_fixup() (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Workaround for conflicting SSID on ASUS ROG Strix G17 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Limit mic boost on HP ProBook 445 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/analog - Sink ad198x_shutup() and shuffle CONFIG_PM guards (Jaroslav Kysela) [2003613] - ALSA: hda/sigmatel - Sink stac_shutup() into stac_suspend() (Jaroslav Kysela) [2003613] - ALSA: hda: Drop workaround for a hang at shutdown again (Jaroslav Kysela) [2003613] - ALSA: hda/via: Apply runtime PM workaround for ASUS B23E (Jaroslav Kysela) [2003613] - ALSA: hda: Fix hang during shutdown due to link reset (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9510 laptop (Jaroslav Kysela) [2003613] - ALSA: hda: Nuke unused reboot_notify callback (Jaroslav Kysela) [2003613] - ALSA: hda: Suspend codec at shutdown (Jaroslav Kysela) [2003613] - ALSA: hda: conexant: Turn off EAPD at suspend, too (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Prevent pops and clicks during suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Unmute/Mute codec when stream starts/stops (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Follow correct CS42L42 power down sequence for suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Remove unnecessary delays (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Use timeout rather than retries for I2C transaction waits (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Set fixed sample rate of 48kHz for CS42L42 (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Enable Full Scale Volume for Line Out Codec on Dolphin (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Add support for dolphin (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Add Support to disable jack type detection for CS42L42 (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Support multiple sub_codecs for Suspend/Resume/Unsol events (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Move codec properties to its own struct (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Separate CS8409, CS42L42 and project functions (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Support i2c bulk read/write functions (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Avoid re-setting the same page as the last access (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Avoid setting the same I2C address for every access (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Dont disable I2C clock between consecutive accesses (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Generalize volume controls (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Prevent I2C access during suspend time (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Simplify CS42L42 jack detect. (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Mask CS42L42 wake events (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unsolicited response for the first boot (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unsolicited responses during suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unnecessary Ring Sense for Cyborg/Warlock/Bullseye (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Reduce HS pops/clicks for Cyborg (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Mask all CS42L42 interrupts on initialization (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Use enums for register names and coefficients (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Move arrays of configuration to a new file (Jaroslav Kysela) [2003613] - ALSA: hda/cirrus: Move CS8409 HDA bridge to separate module (Jaroslav Kysela) [2003613] - ALSA: hda - fix the 'Capture Switch' value change notifications (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 650 G8 Notebook PC (Jaroslav Kysela) [2003613] - ALSA: pci: cs46xx: Fix set up buffer type properly (Jaroslav Kysela) [2003613] - ALSA: hda: Add quirk for ASUS Flow x13 (Jaroslav Kysela) [2003613] - ALSA: pci/korg1212: completely remove 'set but not used' warnings (Jaroslav Kysela) [2003613] - ALSA: pcxhr: use __func__ to get funcion's name in an output message (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: add mic quirk for Acer SF314-42 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix headset mic for Acer SWIFT SF314-56 (ALC256) (Jaroslav Kysela) [2003613] - ALSA: korg1212: Fix wrongly shuffled firmware loader code (Jaroslav Kysela) [2003613] - ALSA: als300: Fix missing chip initialization (Jaroslav Kysela) [2003613] - ALSA: cs4281: Fix missing chip initialization (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Add quirk to force pin connectivity on NUC10 (Jaroslav Kysela) [2003613] - ALSA: nm256: Fix error return code in snd_nm256_create() (Jaroslav Kysela) [2003613] - ALSA: ymfpci: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: vx222: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: trident: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: pci: rme: Fix unaligned buffer addresses (Jaroslav Kysela) [2003613] - ALSA: pci: rme: Set up buffer type properly (Jaroslav Kysela) [2003613] - ALSA: rme9652: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme9652: don't disable if not enabled (Jaroslav Kysela) [2003613] - ALSA: hdspm: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hdspm: don't disable if not enabled (Jaroslav Kysela) [2003613] - ALSA: hdspm: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - ALSA: hdsp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: riptide: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: riptide: Replace tasklet with threaded irq (Jaroslav Kysela) [2003613] - ALSA: riptide: convert tasklets to use new tasklet_setup() API (Jaroslav Kysela) [2003613] - ALSA: oxygen: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: nm256: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: lx6464es: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: lola: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: korg1212: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1724: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ali5451: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1724: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1712: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: emu10k1x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: emu10k1: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: echoaudio: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs5535audio: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs46xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ca0106: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: aw2: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: au88x0: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ali5451: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: via82xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sonicvibes: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sis7019: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme96: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme32: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: maestro3: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: fm801: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es1968: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es1938: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ens137x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs5530: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs4281: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cmipci: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: bt87x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt3328: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als4000: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als300: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1889: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hda: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: atiixp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix pop noise and 2 Front Mic issues on a machine (Jaroslav Kysela) [2003613] - ALSA: hdmi: Expose all pins on MSI MS-7C94 board (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Skip ac97 clock measurement on VM (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Add option to enable all pins forcibly (Jaroslav Kysela) [2003613] - ALSA: ice1724: Remove superfluous loop over model table (Jaroslav Kysela) [2003613] - ALSA: hda/ca0132: remove redundant initialization of variable status (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Fix breakage at ac97 clock measurement (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute led of the HP Pavilion 15-eh1xxx series (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 630 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 450 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add ALC285 HP init procedure (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add type for ALC287 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 830 G8 Notebook PC (Jaroslav Kysela) [2003613] - ALSA: hda: Release codec display power during shutdown/reboot (Jaroslav Kysela) [2003613] - ALSA: hda: Release controller display power during shutdown/reboot (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Apply LED fixup for HP Dragonfly G1, too (Jaroslav Kysela) [2003613] - ALSA: hdsp: fix a test for copy_to_user() failure (Jaroslav Kysela) [2003613] - ALSA: hda: Add IRQ check for platform_get_irq() (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix bass speaker DAC mapping for Asus UM431D (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Improve fixup for HP Spectre x360 15-df0xxx (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add another ALC236 variant support (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook x360 830 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/tegra: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ALSA: trident: Fix build error (Jaroslav Kysela) [2003613] - ALSA: trident: Drop shadow TLB pointer table (Jaroslav Kysela) [2003613] - ALSA: ymfpci: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx222: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: trident: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme9652: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hdsp: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: riptide: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pcxhr: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: nm256: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: mixart: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: korg1212: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ice1712: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: emu10k1x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: emu10k1: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: echoaudio: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs5535audio: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs46xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ca0106: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: au88x0: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ac97: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: via82xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sonicvibes: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme96: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme32: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: maestro3: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: fm801: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1968: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1938: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ens137x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs4281: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cmipci: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: bt87x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: azt3328: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: atiixp: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als4000: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als300: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ak4531: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ad1889: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Change device names for quirks to barebone names (Jaroslav Kysela) [2003613] - ALSA: hda/ca0132: Make a const array static, makes object smaller (Jaroslav Kysela) [2003613] - ALSA: pci: lx6464es: remove useless self-comparison (Jaroslav Kysela) [2003613] - ALSA: drivers: opl3: Fix incorrect use of vp->state (Jaroslav Kysela) [2003613] - ALSA: pcsp: Make hrtimer forwarding more robust (Jaroslav Kysela) [2003613] - ALSA: pcsp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: dummy: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: aloop: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: mpu401: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: serial-u16550: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: mtpav: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: virmidi: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: vx: Manage vx_core object with devres (Jaroslav Kysela) [2003613] - ALSA: aloop: Fix spelling mistake "synchronization" -> "synchronization" (Jaroslav Kysela) [2003613] - ALSA: serial: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: opl3: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: mpu401: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: drivers: opl3: fix useless self-comparison (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: go through HDAS ACPI at max depth of 2 (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: harden detection of controller (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for CML devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for JSL devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: hda: avoid write to STATESTS if controller is in reset (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for APL/GLK/TGL devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: hda: hdac_ext_stream: fix potential locking issues (Jaroslav Kysela) [2003613] - ALSA: hda: hdac_stream: fix potential locking issue in snd_hdac_stream_assign() (Jaroslav Kysela) [2003613] - ALSA: hda: intel-dsp-cfg: add missing ElkhartLake PCI ID (Jaroslav Kysela) [2003613] - ALSA: usb-audio: usx2y - use GFP_NOIO flag (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Reorder snd_djm_devices[] entries (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Don't start stream for capture at prepare (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Switch back to non-latency mode at a later point (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk for Audient iD14 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Line6 HX-Stomp XL USB_ID for 48k-fixed quirk (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 400 (Jaroslav Kysela) [2003613] - ALSA: ua101: fix division by zero at probe (Jaroslav Kysela) [2003613] - ALSA: line6: fix control and interrupt message timeouts (Jaroslav Kysela) [2003613] - ALSA: 6fire: fix control and bulk message timeouts (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix null pointer dereference on pointer cs_desc (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix microphone sound on Jieli webcam. (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Provide quirk for Sennheiser GSP670 Headset (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Initialize every feature unit once at probe time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Drop superfluous error message after disconnection (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Downgrade error message in get_ctl_value_v2() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: add Schiit Hel device to quirk table (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk for VF0770 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Less restriction for low-latency playback mode (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add support for the Pioneer DJM 750MK2 Mixer/Soundcard (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Pass JOINT_DUPLEX info flag for implicit fb streams (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Enable rate validation for Scarlett devices (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix packet size calculation regression (Jaroslav Kysela) [2003613] - ALSA: usb-audio: disable implicit feedback sync for Behringer UFX1204 and UFX1604 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Avoid killing in-flight URBs during draining (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Improved lowlatency playback support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add spinlock to stop_urbs() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Check available frames for the next packet size (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Disable low-latency mode for implicit feedback sync (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Disable low-latency playback for free-wheel mode (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix possible race at sync of urb completions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Restrict rates for the shared clocks (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix a missing error check in scarlett gen2 mixer (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix comment reference in __uac_clock_find_source (Jaroslav Kysela) [2003613] - ALSA: usx2y: Prefer struct_size over open coded arithmetic (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Unify mixer resume and reset_resume procedure (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 800 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add lowlatency module option (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Work around for XRUN with low latency playback (Jaroslav Kysela) [2003613] - ASoC: dmaengine: Introduce module option prealloc_buffer_size_kbytes (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move set-interface-first workaround into common quirk (Jaroslav Kysela) [2003613] - ALSA: doc: Fix indentation warning (Jaroslav Kysela) [2003613] - ALSA: hda: Update documentation for aliasing via the model option (Jaroslav Kysela) [2003613] - ALSA: doc: Add the description of quirk_flags option for snd-usb-audio (Jaroslav Kysela) [2003613] - ALSA: doc: Fix reference to mixart.rst (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Update the documentation for the new delayed_register option (Jaroslav Kysela) [2003613] - ALSA: hda - Update descriptions about new position_fix values (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix regression on Sony WALKMAN NW-A45 DAC (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Input source control - digidesign mbox (Jaroslav Kysela) [2003613] - ALSA: usb-audio: make array static const, makes object smaller (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk_flags module option (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move generic DSD raw detection into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move ignore_ctl_error check into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move autosuspend quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move rate validation quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move interface setup delay into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move control message delay quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move ITF-USB DSD quirk handling into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move clock setup quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move playback_first flag into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move tx_length quirk handling to quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move txfr_quirk handling to quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move media-controller API quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Introduce quirk_flags field (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Avoid unnecessary or invalid connector selection at resume (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 600 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix superfluous autosuspend recovery (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix incorrect clock source setting (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix line out/speaker switching notifications (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Correct channel mute status after mute button pressed (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix Direct Monitor control name for 2i2 (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix Mute/Dim/MSD Mode control names (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum headsets (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add missing proc text entry for BESPOKEN type (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Reduce latency at playback start, take#2 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: usx2y: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix for loop increment in scarlett2_usb_get_config (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix scarlett2_*_ctl_put() return values again (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix pad count for 18i8 Gen 3 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for the talkback feature (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update get_config to do endian conversion (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add speaker switching support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update mux controls to allow updates (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add sw_hw_ctls and mux_ctls (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Split up sw_hw_enum_ctl_put() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Label 18i8 Gen 3 line outputs correctly (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add direct monitor support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add phantom power switch support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add "air" switch support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for Solo and 2i2 Gen 3 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Allow bit-level access to config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Move get config above set config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add Gen 3 MSD mode switch (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for "input-other" notify (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add Gen 3 mixer support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix wrong resume call (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix Level Meter control (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Split struct scarlett2_ports (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Allow arbitrary ordering of mux entries (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add mute support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add scarlett2_vol_ctl_write() helper (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove repeated device info comments (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Move info lookup out of init function (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Improve device info lookup (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Reformat scarlett2_config_items[] (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Merge common line in capture strings (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add "Sync Status" control (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Always enable interrupt polling (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix 6i6 Gen 2 line out descriptions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update initialisation sequence (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add usb_tx/rx functions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix OOB access at proc output (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove hard-coded USB #defines (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Don't copy struct scarlett2_config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix union usage in mixer control callbacks (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix data_mutex lock (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add temp variable for consistency (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Rename struct scarlett2_mixer_data (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Rename buttons/interrupts/vol (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove redundant info->button_count (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove interrupt debug message (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove unused/useless code (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Coding style improvements (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix 18i8 Gen 2 PCM Input count (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove incorrect S/PDIF comment (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix rate on Ozone Z90 USB headset (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add support for Denon DN-X1600 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Read mux at init time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Read mixer volumes at init time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Factor out DSD bitrev copy function (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Refactoring delay account code (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Pre-calculate buffer byte size (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Make snd_usb_pcm_delay() static (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Remove the repeated declaration (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix uninitialized variable at __uac_clock_find_source() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Handle error for the current selector gracefully (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Refactoring UAC2/3 clock setup code (Jaroslav Kysela) [2003613] - ALSA: usx2y: Nuke pcm_list (Jaroslav Kysela) [2003613] - ALSA: usx2y: Cleanup probe and disconnect callbacks (Jaroslav Kysela) [2003613] - ALSA: usx2y: Don't call free_pages_exact() with NULL address (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix shmem initialization (Jaroslav Kysela) [2003613] - ALSA: usxy2: Fix potential doubly allocations (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix potential memory leaks (Jaroslav Kysela) [2003613] - ALSA: usx2y: Avoid self-killing (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix potential leaks of uninitialized memory (Jaroslav Kysela) [2003613] - ALSA: usx2y: Coding style fixes (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix spaces (Jaroslav Kysela) [2003613] - ALSA: usx2y: Avoid camelCase (Jaroslav Kysela) [2003613] - module: remove never implemented MODULE_SUPPORTED_DEVICE (Jaroslav Kysela) [2003613] - ALSA: pcm: Allow exact buffer preallocation (Jaroslav Kysela) [2003613] - ALSA: core: Add device-managed request_dma() (Jaroslav Kysela) [2003613] - ALSA: core: use DEVICE_ATTR_*() macro (Jaroslav Kysela) [2003613] - ALSA: core: Fix double calls of snd_card_free() via devres (Jaroslav Kysela) [2003613] - ALSA: core: Add managed card creation (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap without buffer preallocation (Jaroslav Kysela) [2003613] - ALSA: pcm: Call substream ack() method upon compat mmap commit (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap breakage without explicit buffer setup (Jaroslav Kysela) [2003613] - ALSA: pcm - fix mmap capability check for the snd-dummy driver (Jaroslav Kysela) [2003613] - ALSA: pcm: fix divide error in snd_pcm_lib_ioctl (Jaroslav Kysela) [2003613] - ALSA: memalloc: Catch call with NULL snd_dma_buffer pointer (Jaroslav Kysela) [2003613] - ALSA: memalloc: Remove a stale comment (Jaroslav Kysela) [2003613] - ALSA: memalloc: Use proper SG helpers for noncontig allocations (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix a typo in snd_dma_buffer_sync() description (Jaroslav Kysela) [2003613] - ALSA: PCM: Fix NULL dereference at mmap checks (Jaroslav Kysela) [2003613] - ALSA: pcm: Check mmap capability of runtime dma buffer at first (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap capability check (Jaroslav Kysela) [2003613] - ALSA: pcm: use krealloc_array() (Jaroslav Kysela) [2003613] - ALSA: pcm: Add SNDRV_PCM_INFO_EXPLICIT_SYNC flag (Jaroslav Kysela) [2003613] - ALSA: pcm: Add more disconnection checks at file ops (Jaroslav Kysela) [2003613] - mm: don't include asm/pgtable.h if linux/mm.h is already included (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix mmap of SG-buffer with WC pages (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support for non-coherent page allocation (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support for non-contiguous page allocation (Jaroslav Kysela) [2003613] - ALSA: pcm: Unify snd_pcm_delay() and snd_pcm_hwsync() (Jaroslav Kysela) [2003613] - ALSA: core: Fix build error due to missing PAGE_SIZE (Jaroslav Kysela) [2003613] - ALSA: pcm: Workaround for a wrong offset in SYNC_PTR compat ioctl (Jaroslav Kysela) [2003613] - ALSA: memalloc: Count continuous pages in vmalloc buffer handler (Jaroslav Kysela) [2003613] - ALSA: memalloc: Store snd_dma_buffer.addr for continuous pages, too (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix pgprot for WC mmap on x86 (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support WC allocation on all architectures (Jaroslav Kysela) [2003613] - ALSA: memalloc: Correctly name as WC (Jaroslav Kysela) [2003613] - ALSA: memalloc: Minor refactoring (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix regression with SNDRV_DMA_TYPE_CONTINUOUS (Jaroslav Kysela) [2003613] - ALSA: core: Add device-managed page allocator helper (Jaroslav Kysela) [2003613] - ALSA: core: Add continuous and vmalloc mmap ops (Jaroslav Kysela) [2003613] - ALSA: core: Move mmap handler into memalloc ops (Jaroslav Kysela) [2003613] - ALSA: core: Abstract memory alloc helpers (Jaroslav Kysela) [2003613] - ALSA: pcm: add snd_pcm_period_elapsed() variant without acquiring lock of PCM substream (Jaroslav Kysela) [2003613] - ALSA: pcm: Block the release until the system resume finishes (Jaroslav Kysela) [2003613] - ALSA: Drop superfluous argument from snd_power_wait() (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: Drop snd_sgbuf_get_ptr() (Jaroslav Kysela) [2003613] - ALSA: jack: Check the return value of kstrdup() (Jaroslav Kysela) [2003613] - ALSA: seq: oss: Fix error check at system port creation (Jaroslav Kysela) [2003613] - ALSA: seq: Fix comments of wrong client number for MIDI Passthrough (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Handle missing errors in snd_pcm_oss_change_params*() (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Limit the period size to 16MB (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Fix negative period/buffer sizes (Jaroslav Kysela) [2003613] - ALSA: iec958: Split status creation and fill (Jaroslav Kysela) [2003613] - ALSA: rawmidi - fix the uninitalized user_pversion (Jaroslav Kysela) [2003613] - ALSA: rawmidi: introduce SNDRV_RAWMIDI_IOCTL_USER_PVERSION (Jaroslav Kysela) [2003613] - ALSA: rawmidi: fix incorrect array bounds check on clock_names (Jaroslav Kysela) [2003613] - ALSA: rawmidi: Add framing mode (Jaroslav Kysela) [2003613] - ALSA: seq: Fix racy deletion of subscriber (Jaroslav Kysela) [2003613] - ALSA: seq: Fix a potential UAF by wrong private_free call order (Jaroslav Kysela) [2003613] - ALSA: seq: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: timer: Unconditionally unlink slave instances, too (Jaroslav Kysela) [2003613] - ALSA: timer: Fix use-after-free problem (Jaroslav Kysela) [2003613] - ALSA: mixer: fix deadlock in snd_mixer_oss_set_volume (Jaroslav Kysela) [2003613] - ALSA: mixer: oss: Fix racy access to slots (Jaroslav Kysela) [2003613] - ALSA: oss: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: control_led: use strscpy instead of strlcpy (Jaroslav Kysela) [2003613] - ALSA: control_led - use DEVICE_ATTR_*() macro (Jaroslav Kysela) [2003613] - ALSA: ctl: Fix copy of updated id with element read/write (Jaroslav Kysela) [2003613] - ALSA: compress: Initialize mutex in snd_compress_new() (Jaroslav Kysela) [2003613] - ALSA: control: Minor optimization for SNDRV_CTL_IOCTL_POWER_STATE (Jaroslav Kysela) [2003613] - ALSA: control: Drop superfluous snd_power_wait() calls (Jaroslav Kysela) [2003613] - ALSA: control: Track in-flight control read/write/tlv accesses (Jaroslav Kysela) [2003613] - ALSA: compress: Drop unused functions (Jaroslav Kysela) [2003613] - regmap: sdw-mbq: use MODULE_LICENSE("GPL") (Jaroslav Kysela) [2003613] - regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ (Jaroslav Kysela) [2003613] - regmap: sdw: use _no_pm functions in regmap_read/write (Jaroslav Kysela) [2003613] - soundwire: stream: Fix test for DP prepare complete (Jaroslav Kysela) [2003613] - soundwire/ASoC: add leading zeroes in peripheral device name (Jaroslav Kysela) [2003613] - soundwire: bandwidth allocation: improve error messages (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: remove duplicate initialization (Jaroslav Kysela) [2003613] - soundwire: cadence: remove the repeated declaration (Jaroslav Kysela) [2003613] - soundwire: bus: stop dereferencing invalid slave pointer (Jaroslav Kysela) [2003613] - soundwire: bus: add missing \n in dynamic debug (Jaroslav Kysela) [2003613] - soundwire: bus: handle -ENODATA errors in clock stop/start sequences (Jaroslav Kysela) [2003613] - soundwire: qcom: add debugfs entry for soundwire register dump (Jaroslav Kysela) [2003613] - soundwire: debugfs: use controller id and link_id for debugfs (Jaroslav Kysela) [2003613] - soundwire: cadence: do not extend reset delay (Jaroslav Kysela) [2003613] - soundwire: intel: conditionally exit clock stop mode on system suspend (Jaroslav Kysela) [2003613] - soundwire: intel: skip suspend/resume/wake when link was not started (Jaroslav Kysela) [2003613] - soundwire: intel: fix potential race condition during power down (Jaroslav Kysela) [2003613] - soundwire: intel: introduce shim and alh base (Jaroslav Kysela) [2003613] - soundwire: move intel sdw register definitions to sdw_intel.h (Jaroslav Kysela) [2003613] - soundwire: cadence: override PDI configurations to create loopback (Jaroslav Kysela) [2003613] - soundwire: cadence: add debugfs interface for PDI loopbacks (Jaroslav Kysela) [2003613] - soundwire: stream: don't program mockup device ports (Jaroslav Kysela) [2003613] - soundwire: bus: squelch error returned by mockup devices (Jaroslav Kysela) [2003613] - soundwire: stream: don't abort bank switch on Command_Ignored/-ENODATA (Jaroslav Kysela) [2003613] - soundwire: cadence: add paranoid check on self-clearing bits (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: add quirk for Intel 'Bishop County' NUC M15 (Jaroslav Kysela) [2003613] - soundwire: bus: update Slave status in sdw_clear_slave_status (Jaroslav Kysela) [2003613] - soundwire: cadence: Remove ret variable from sdw_cdns_irq() (Jaroslav Kysela) [2003613] - soundwire: bus: filter out more -EDATA errors on clock stop (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: add ull suffix for SoundWire _ADR values (Jaroslav Kysela) [2003613] - soundwire: export sdw_update() and sdw_update_no_pm() (Jaroslav Kysela) [2003613] - soundwire: bus: Make sdw_nwrite() data pointer argument const (Jaroslav Kysela) [2003613] - soundwire: intel: move to auxiliary bus (Jaroslav Kysela) [2003613] - soundwire: add missing kernel-doc description (Jaroslav Kysela) [2003613] - soundwire: cadence_master: always set CMD_ACCEPT (Jaroslav Kysela) [2003613] - soundwire: bus: only use CLOCK_STOP_MODE0 and fix confusions (Jaroslav Kysela) [2003613] - software node: Handle software node injection to an existing device properly (Mark Langsdorf) [2032600] - software node: Allow node addition to already existing device (Mark Langsdorf) [2032600] - driver core: clear deferred probe reason on probe retry (Mark Langsdorf) [2032600] - driver core: add deferring probe reason to devices_deferred property (Mark Langsdorf) [2032600] - driver core: Fix locking bug in deferred_probe_timeout_work_func() (Mark Langsdorf) [2032600] - PM: runtime: Fix race getting/putting suppliers at probe (Mark Langsdorf) [2032600] - PM: runtime: Fix ordering in pm_runtime_get_suppliers() (Mark Langsdorf) [2032600] - PM: runtime: Defer suspending suppliers (Mark Langsdorf) [2032600] - software node: Fix device_add_software_node() (Mark Langsdorf) [2032600] - software node: Fix node registration (Mark Langsdorf) [2032600] - drivers/base/memory: don't store phys_device in memory blocks (Mark Langsdorf) [2032600] - arch_numa: fix common code printing of phys_addr_t (Mark Langsdorf) [2032600] - driver core: platform: Drop of_device_node_put() wrapper (Mark Langsdorf) [2032600] - regmap: sdw-mbq: use MODULE_LICENSE("GPL") (Mark Langsdorf) [2032600] - regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ (Mark Langsdorf) [2032600] - regmap: sdw: use _no_pm functions in regmap_read/write (Mark Langsdorf) [2032600] - PM: domains: Mark fwnodes when their powerdomain is added/removed (Mark Langsdorf) [2032600] - driver core: fw_devlink: Handle suppliers that don't use driver core (Mark Langsdorf) [2032600] - driver core: Add fw_devlink.strict kernel param (Mark Langsdorf) [2032600] - driver core: platform: Emit a warning if a remove callback returned non-zero (Mark Langsdorf) [2032600] - PM: domains: Simplify the calculation of variables (Mark Langsdorf) [2032600] - PM: sleep: Use dev_printk() when possible (Mark Langsdorf) [2032600] - media: software_node: Add support for fwnode_graph*() family of functions (Mark Langsdorf) [2032600] - media: software_node: unregister software_nodes in reverse order (Mark Langsdorf) [2032600] - media: software_node: Enforce parent before child ordering of nodes arrays (Mark Langsdorf) [2032600] - media: device property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary (Mark Langsdorf) [2032600] - media: device property: Return true in fwnode_device_is_available for NULL ops (Mark Langsdorf) [2032600] - media: software_node: Fix refcounts in software_node_get_next_child() (Mark Langsdorf) [2032600] - PM: domains: Add "performance" column to debug summary (Mark Langsdorf) [2032600] - PM: domains: Make of_genpd_add_subdomain() return -EPROBE_DEFER (Mark Langsdorf) [2032600] - PM: domains: Make set_performance_state() callback optional (Mark Langsdorf) [2032600] - PM: domains: use device's next wakeup to determine domain idle state (Mark Langsdorf) [2032600] - PM: domains: inform PM domain of a device's next wakeup (Mark Langsdorf) [2032600] - PM: runtime: Fix resposible -> responsible in runtime.c (Mark Langsdorf) [2032600] - PM: domains: Restore comment indentation for generic_pm_domain.child_links (Mark Langsdorf) [2032600] - PM: domains: Fix up terminology with parent/child (Mark Langsdorf) [2032600] - regmap: Assign boolean values to a bool variable (Mark Langsdorf) [2032600] - software node: Introduce device_add_software_node() (Mark Langsdorf) [2032600] - numa: Move numa implementation to common code (Mark Langsdorf) [2032600] - arm64, numa: Change the numa init functions name to be generic (Mark Langsdorf) [2032600] - driver core: fw_devlink_relax_cycle() can be static (Mark Langsdorf) [2032600] - driver core: Handle cycles in device links created by fw_devlink (Mark Langsdorf) [2032600] - driver core: Have fw_devlink use DL_FLAG_INFERRED (Mark Langsdorf) [2032600] - driver core: Add device link support for INFERRED flag (Mark Langsdorf) [2032600] - drivers: base: Kconfig: fix spelling mistake "heterogenous" -> "heterogeneous" (Mark Langsdorf) [2032600] - driver core: Add debug logs for device link related probe deferrals (Mark Langsdorf) [2032600] - drivers: base: remove unused function find_bus() (Mark Langsdorf) [2032600] - PM: runtime: Drop runtime PM references to supplier on link removal (Mark Langsdorf) [2032600] - dmaengine: idxd: Add wq occupancy information to sysfs attribute (Julia Denham) [1971887] - vdpa/mlx5: Forward only packets with allowed MAC address (Cindy Lu) [2031595] - vdpa/mlx5: Support configuration of MAC (Cindy Lu) [2031595] - vdpa/mlx5: Fix clearing of VIRTIO_NET_F_MAC feature bit (Cindy Lu) [2031595] - vdpa_sim_net: Enable user to set mac address and mtu (Cindy Lu) [2031595] - vdpa: Enable user to set mac and mtu of vdpa device (Cindy Lu) [2031595] - vdpa: Use kernel coding style for structure comments (Cindy Lu) [2031595] - vdpa: Introduce query of device config layout (Cindy Lu) [2031595] - vdpa: Introduce and use vdpa device get, set config helpers (Cindy Lu) [2031595] - vdpa/mlx5: Propagate link status from device to vdpa driver (Cindy Lu) [2031595] - vdpa/mlx5: Rename control VQ workqueue to vdpa wq (Cindy Lu) [2031595] - vdpa/mlx5: Remove mtu field from vdpa net device (Cindy Lu) [2031595] - eni_vdpa: add vDPA driver for Alibaba ENI (Cindy Lu) [2031595] - vdpa: add new attribute VDPA_ATTR_DEV_MIN_VQ_SIZE (Cindy Lu) [2031595] - virtio_vdpa: setup correct vq size with callbacks get_vq_num_{max,min} (Cindy Lu) [2031595] - vdpa: min vq num of vdpa device cannot be greater than max vq num (Cindy Lu) [2031595] - vdpa: add new callback get_vq_num_min in vdpa_config_ops (Cindy Lu) [2031595] - vp_vdpa: add vq irq offloading support (Cindy Lu) [2031595] - vdpa: fix typo (Cindy Lu) [2031595] - vhost-vdpa: Fix the wrong input in config_cb (Cindy Lu) [2031595] - vhost_vdpa: unset vq irq before freeing irq (Cindy Lu) [2031595] - vdpa: potential uninitialized return in vhost_vdpa_va_map() (Cindy Lu) [2031595] - vdpa/mlx5: Avoid executing set_vq_ready() if device is reset (Cindy Lu) [2031595] - vdpa/mlx5: Clear ready indication for control VQ (Cindy Lu) [2031595] - vdpa: Support transferring virtual addressing during DMA mapping (Cindy Lu) [2031595] - vdpa: factor out vhost_vdpa_pa_map() and vhost_vdpa_pa_unmap() (Cindy Lu) [2031595] - vdpa: Add an opaque pointer for vdpa_config_ops.dma_map() (Cindy Lu) [2031595] - vhost-iotlb: Add an opaque pointer for vhost IOTLB (Cindy Lu) [2031595] - vhost-vdpa: Handle the failure of vdpa_reset() (Cindy Lu) [2031595] - vdpa: Add reset callback in vdpa_config_ops (Cindy Lu) [2031595] - vdpa: Fix some coding style issues (Cindy Lu) [2031595] - vdpa: Make use of PFN_PHYS/PFN_UP/PFN_DOWN helper macro (Cindy Lu) [2031595] - vdpa_sim: Use iova_shift() for the size passed to alloc_iova() (Cindy Lu) [2031595] - vdpa/mlx5: Add multiqueue support (Cindy Lu) [2031595] - vdpa/mlx5: Add support for control VQ and MAC setting (Cindy Lu) [2031595] - vdpa/mlx5: Ensure valid indices are provided (Cindy Lu) [2031595] - vdpa/mlx5: Decouple virtqueue callback from struct mlx5_vdpa_virtqueue (Cindy Lu) [2031595] - vdpa/mlx5: function prototype modifications in preparation to control VQ (Cindy Lu) [2031595] - vdpa/mlx5: Remove redundant header file inclusion (Cindy Lu) [2031595] - vDPA/ifcvf: enable multiqueue and control vq (Cindy Lu) [2031595] - vDPA/ifcvf: detect and use the onboard number of queues directly (Cindy Lu) [2031595] - vDPA/ifcvf: implement management netlink framework for ifcvf (Cindy Lu) [2031595] - vDPA/ifcvf: introduce get_dev_type() which returns virtio dev id (Cindy Lu) [2031595] - vdpa/mlx5: Fix queue type selection logic (Cindy Lu) [2031595] - vdpa/mlx5: Avoid destroying MR on empty iotlb (Cindy Lu) [2031595] - virtio_vdpa: reject invalid vq indices (Cindy Lu) [2031595] - vdpa: Add documentation for vdpa_alloc_device() macro (Cindy Lu) [2031595] - vDPA/ifcvf: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vp_vdpa: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vdpa_sim: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vhost: Fix the calculation in vhost_overflow() (Cindy Lu) [2031595] - vhost-vdpa: Fix integer overflow in vhost_vdpa_process_iotlb_update() (Cindy Lu) [2031595] - iommu/vt-d: Fix unmap_pages support (Jerry Snitselaar) [2027765] - dm sysfs: use default_groups in kobj_type (Benjamin Marzinski) [2047358] - dm space map common: add bounds check to sm_ll_lookup_bitmap() (Benjamin Marzinski) [2047358] - dm btree: add a defensive bounds check to insert_at() (Benjamin Marzinski) [2047358] - dm btree remove: change a bunch of BUG_ON() calls to proper errors (Benjamin Marzinski) [2047358] - dm btree spine: eliminate duplicate le32_to_cpu() in node_check() (Benjamin Marzinski) [2047358] - dm btree spine: remove extra node_check function declaration (Benjamin Marzinski) [2047358] - selftests/bpf: Adding delay in socketmap_listen to reduce flakyness (Felix Maurer) [2026433] - net: openvswitch: Fix ct_state nat flags for conns arriving from tc (Marcelo Ricardo Leitner) [2040334] - net: openvswitch: Fix matching zone id for invalid conns arriving from tc (Marcelo Ricardo Leitner) [2040452] - net/sched: flow_dissector: Fix matching on zone id for invalid conns (Marcelo Ricardo Leitner) [2040452] - net/sched: Extend qdisc control block with tc control block (Marcelo Ricardo Leitner) [2040452] - mm: Fix an use-after-free error in mm_struct (Waiman Long) [2046161] - rh_flags: Rename rh_features to rh_flags (Prarit Bhargava) [2021700] - redhat: add initial rpminspect configuration (Augusto Caringi)- can: raw: raw_setsockopt(): fix raw_rcv panic for sock UAF (Balazs Nemeth) [2026692] - drm/vmwgfx: Fix stale file descriptors on failed usercopy (Dave Airlie) [2047602] {CVE-2022-22942} - drm/i915: Flush TLBs before releasing backing store (Dave Airlie) [2044329] {CVE-2022-0330} - [s390] s390/pci: move pseudo-MMIO to prevent MIO overlap (Mete Durlu) [2047757] - [s390] scsi: zfcp: Fix failed recovery on gone remote port with non-NPIV FCP devices (Mete Durlu) [2048919] - tun: fix bonding active backup with arp monitoring (Jonathan Toppins) [2024964] - x86/hyperv: Properly deal with empty cpumasks in hyperv_flush_tlb_multi() (Vitaly Kuznetsov) [2044237] - xfs: check sb_meta_uuid for dabuf buffer recovery (Bill O'Donnell) [2020764] - vfs: fs_context: fix up param length parsing in legacy_parse_param (Carlos Maiolino) [2040586] {CVE-2022-0185} - KVM: nVMX: Allow VMREAD when Enlightened VMCS is in use (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Implement evmcs_field_offset() suitable for handle_vmread() (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Rename vmcs_to_field_offset{,_table} (Vitaly Kuznetsov) [2012105] - KVM: nVMX: eVMCS: Filter out VM_EXIT_SAVE_VMX_PREEMPTION_TIMER (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Also filter MSR_IA32_VMX_TRUE_PINBASED_CTLS when eVMCS (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Use INVALID_GPA for pointers used in nVMX. (Vitaly Kuznetsov) [2012105] - x86/kvm: Always inline evmcs_write64() (Vitaly Kuznetsov) [2012105] - powerpc/powernv: Remove POWER9 PVR version check for entry and uaccess flushes (Diego Domingos) [2030954] - powerpc/pesries: Get STF barrier requirement from H_GET_CPU_CHARACTERISTICS (Diego Domingos) [2030954] - powerpc/security: Add a security feature for STF barrier (Diego Domingos) [2030954] - powerpc/pseries: Get entry and uaccess flush required bits from H_GET_CPU_CHARACTERISTICS (Diego Domingos) [2030954] - drm/nouveau/disp/dp: add support for eDP link rates (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for hbr3 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for lttprs (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: fixup cr/eq delays for 1.4 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for tps4 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: generate supported link rates table at detect time (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: explicitly control scrambling when setting pattern (Ben Skeggs) [2043523] - drm/nouveau/disp: remove some remnant of a rework (Ben Skeggs) [2043523] - drm/nouveau: recognise GA106 (Ben Skeggs) [2043523] - redhat/scripts: Update merge-subtrees.sh (Prarit Bhargava)- pinctrl: amd: Fix wakeups when IRQ is shared with SCI (Renjith Pananchikkal) [2039124] - bonding: fix ad_actor_system option setting to default (Jonathan Toppins) [2042564 1931881] - bonding: make tx_rebalance_counter an atomic (Jonathan Toppins) [2042564] - bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed (Jonathan Toppins) [2042564] - bonding: 3ad: pass parameter bond_params by reference (Jonathan Toppins) [2042564] - bonding: complain about missing route only once for A/B ARP probes (Jonathan Toppins) [2042564] - bonding: improve nl error msg when device can't be enslaved because of IFF_MASTER (Jonathan Toppins) [2042564] - bonding: combine netlink and console error messages (Jonathan Toppins) [2042564] - bonding: add new option lacp_active (Jonathan Toppins) [2042564] - bonding: 3ad: fix the concurrency between __bond_release_one() and bond_3ad_state_machine_handler() (Jonathan Toppins) [2042564] - bonding: fix build issue (Jonathan Toppins) [2042564] - bonding: fix incorrect return value of bond_ipsec_offload_ok() (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_offload_ok() (Jonathan Toppins) [2042564] - bonding: Add struct bond_ipesc to manage SA (Jonathan Toppins) [2042564] - bonding: disallow setting nested bonding + ipsec offload (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_del_sa() (Jonathan Toppins) [2042564] - bonding: fix null dereference in bond_ipsec_add_sa() (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_add_sa() (Jonathan Toppins) [2042564] - net: bonding: Use per-cpu rr_tx_counter (Jonathan Toppins) [2042564] - bonding: remove redundant initialization of variable ret (Jonathan Toppins) [2042564] - net: bonding: Use strscpy_pad() instead of manually-truncated strncpy() (Jonathan Toppins) [2042564] - bonding: init notify_work earlier to avoid uninitialized use (Jonathan Toppins) [2042564] - bonding: 3ad: Fix the conflict between bond_update_slave_arr and the state machine (Jonathan Toppins) [2042564] - scsi: lpfc: Update lpfc version to 14.0.0.4 (Dick Kennedy) [2034276] - scsi: lpfc: Add additional debugfs support for CMF (Dick Kennedy) [2034276] - scsi: lpfc: Cap CMF read bytes to MBPI (Dick Kennedy) [2034276] - scsi: lpfc: Adjust CMF total bytes and rxmonitor (Dick Kennedy) [2034276] - scsi: lpfc: Trigger SLI4 firmware dump before doing driver cleanup (Dick Kennedy) [2034276] - scsi: lpfc: Fix NPIV port deletion crash (Dick Kennedy) [2034276] - scsi: lpfc: Fix lpfc_force_rscn ndlp kref imbalance (Dick Kennedy) [2034276] - scsi: lpfc: Change return code on I/Os received during link bounce (Dick Kennedy) [2034276] - scsi: lpfc: Fix leaked lpfc_dmabuf mbox allocations with NPIV (Dick Kennedy) [2034276] - ppp: ensure minimum packet size in ppp_write() (Guillaume Nault) [2042937] - KVM: VMX: switch blocked_vcpu_on_cpu_lock to raw spinlock (Marcelo Tosatti) [2034126] - configs: Enable CONFIG_THINKPAD_LMI on x86_64 (Mark Pearson) [2030772] - platform/x86: think-lmi: Abort probe on analyze failure (Mark Pearson) [2030772] - platform/x86: think-lmi: add debug_cmd (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix possible mem-leaks on tlmi_analyze() error-exit (Mark Pearson) [2030772] - platform/x86: think-lmi: Split kobject_init() and kobject_add() calls (Mark Pearson) [2030772] - platform/x86: think-lmi: Move pending_reboot_attr to the attributes sysfs dir (Mark Pearson) [2030772] - platform/x86: think-lmi: Add pending_reboot support (Mark Pearson) [2030772] - platform/x86: think-lmi: Move kfree(setting->possible_values) to tlmi_attr_setting_release() (Mark Pearson) [2030772] - platform/x86: think-lmi: Split current_value to reflect only the value (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix issues with duplicate attributes (Mark Pearson) [2030772] - platform/x86: think-lmi: Return EINVAL when kbdlang gets set to a 0 length string (Mark Pearson) [2030772] - platform/x86: think-lmi: Add missing MODULE_DEVICE_TABLE (Mark Pearson) [2030772] - platform/x86: think-lmi: Avoid potential read before start of the buffer (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix check for admin password being set (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman/think-lmi: Make fw_attr_class global static (Mark Pearson) [2030772] - platform/x86: thinkpad-lmi: Remove unused display_name member from struct tlmi_pwd_setting (Mark Pearson) [2030772] - platform/x86: think-lmi: Add WMI interface support on Lenovo platforms (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman: fw_attr_inuse can be static (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman: Use firmware_attributes_class helper (Mark Pearson) [2030772] - platform/x86: firmware_attributes_class: Create helper file for handling firmware-attributes class registration events (Mark Pearson) [2030772] - x86/apic: Handle missing global clockevent gracefully (Lenny Szubowicz) [2033197] - RDMA/core: Don't infoleak GRH fields (Kamal Heib) [2036597] - RDMA/uverbs: Check for null return of kmalloc_array (Kamal Heib) [2036597] - RDMA/sa_query: Use strscpy_pad instead of memcpy to copy a string (Kamal Heib) [2036597] - RDMA/rw: switch to dma_map_sgtable() (Kamal Heib) [2036597] - RDMA/cma: Ensure rdma_addr_cancel() happens before issuing more requests (Kamal Heib) [2036597] - RDMA/cma: Fix listener leak in rdma_cma_listen_on_all() failure (Kamal Heib) [2036597] - RDMA/iwcm: Release resources if iw_cm module initialization fails (Kamal Heib) [2036597] - net: Set true network header for ECN decapsulation (Antoine Tenart) [2045059] - powerpc/bpf: Update ldimm64 instructions during extra pass (Yauheni Kaliuta) [2035973] - selftests: bpf: Fix bind on used port (Felix Maurer) [2025795] - bpf/selftests: Fix namespace mount setup in tc_redirect (Jiri Olsa) [2036016] - selftests/bpf: Fix possible/online index mismatch in perf_buffer test (Yauheni Kaliuta) [2039602] - selftests/bpf: Fix perf_buffer test on system with offline cpus (Yauheni Kaliuta) [2039602] - tracing: Tag trace_percpu_buffer as a percpu pointer (Jerome Marchand) [2031604] - tracing: Fix check for trace_percpu_buffer validity in get_trace_buf() (Jerome Marchand) [2031604] - hwmon: (k10temp) Support up to 12 CCDs on AMD Family of processors (David Arcari) [2022539] - hwmon: (k10temp) Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (David Arcari) [2022539] - hwmon: (k10temp) Remove unused definitions (David Arcari) [2022539] - x86/amd_nb: Add AMD Family 19h Models (10h-1Fh) and (A0h-AFh) PCI IDs (David Arcari) [2022539] - hwmon: (k10temp) Remove residues of current and voltage (David Arcari) [2022539] - hwmon: (k10temp) Update driver documentation (David Arcari) [2022539] - hwmon: (k10temp) Update documentation and add temp2_input info (David Arcari) [2022539] - docs: hwmon: k10temp: convert to ReST format (David Arcari) [2022539] - mptcp: fix deadlock in __mptcp_push_pending() (Davide Caratti) [2043598] - mptcp: clear 'kern' flag from fallback sockets (Davide Caratti) [2043598] - mptcp: remove tcp ulp setsockopt support (Davide Caratti) [2043598] - mptcp: never allow the PM to close a listener subflow (Davide Caratti) [2043598]- redhat: set LC_ALL=C before sorting config content (Frantisek Hrbata) - net: mana: Add RX fencing (Mohammed Gamal) [2030132] - net: mana: Add XDP support (Mohammed Gamal) [2030132] - net: mana: Fix memory leak in mana_hwc_create_wq (Mohammed Gamal) [2030132] - net: mana: Fix spelling mistake "calledd" -> "called" (Mohammed Gamal) [2030132] - net: mana: Support hibernation and kexec (Mohammed Gamal) [2030132] - net: mana: Improve the HWC error handling (Mohammed Gamal) [2030132] - net: mana: Report OS info to the PF driver (Mohammed Gamal) [2030132] - net: mana: Fix the netdev_err()'s vPort argument in mana_init_port() (Mohammed Gamal) [2030132] - net: mana: Allow setting the number of queues while the NIC is down (Mohammed Gamal) [2030132] - net: stmmac: Add GFP_DMA32 for rx buffers if no 64 capability (Mark Salter) [1989540] - net: stmmac: Fix potential integer overflow (Mark Salter) [1989540] - net: stmmac: fix issue where clk is being unprepared twice (Mark Salter) [1989540] - net: stmmac: fix kernel panic due to NULL pointer dereference of mdio_bus_data (Mark Salter) [1989540] - net: stmmac: fix system hang if change mac address after interface ifdown (Mark Salter) [1989540] - net: stmmac: correct clocks enabled in stmmac_vlan_rx_kill_vid() (Mark Salter) [1989540] - net: remove the mutex_acquire from __lock_sock_fast (Xin Long) [2026612] - net: core: Correct the sock::sk_lock.owned lockdep annotations (Xin Long) [2026612] - inet: use bigger hash table for IP ID generation (Xin Long) [2039969] {CVE-2021-45486} - net: revert "net: get rid of an signed integer overflow in ip_idents_reserve()" (Xin Long) [2039969] - net/mlx5: DR, Use FW API when updating FW-owned flow table (Michal Schmidt) [2042651] - ipv6: Continue processing multipath route even if gateway attribute is invalid (Hangbin Liu) [2041375] - ipv6: Check attribute length for RTA_GATEWAY when deleting multipath route (Hangbin Liu) [2041375] - ipv6: Do cleanup if attribute validation fails in multipath route (Hangbin Liu) [2041375] - ipv6: Check attribute length for RTA_GATEWAY in multipath route (Hangbin Liu) [2041375] - rtw89: fix maybe-uninitialized error (Íñigo Huguet) [2033291] - rtw89: enable driver and device RTL8852AE (Íñigo Huguet) [2033291] - rtw89: fix maybe-uninitialized error (RHEL only) (Íñigo Huguet) [2033291] - rtw89: 8852a: correct bit definition of dfs_en (Íñigo Huguet) [2033291] - rtw89: coex: Update COEX to 5.5.8 (Íñigo Huguet) [2033291] - rtw89: coex: Cancel PS leaving while C2H comes (Íñigo Huguet) [2033291] - rtw89: coex: Update BT counters while receiving report (Íñigo Huguet) [2033291] - rtw89: coex: Define LPS state for BTC using (Íñigo Huguet) [2033291] - rtw89: coex: Add MAC API to get BT polluted counter (Íñigo Huguet) [2033291] - rtw89: coex: Not to send H2C when WL not ready and count H2C (Íñigo Huguet) [2033291] - rtw89: coex: correct C2H header length (Íñigo Huguet) [2033291] - rtw89: don't kick off TX DMA if failed to write skb (Íñigo Huguet) [2033291] - rtw89: remove cch_by_bw which is not used (Íñigo Huguet) [2033291] - rtw89: fix sending wrong rtwsta->mac_id to firmware to fill address CAM (Íñigo Huguet) [2033291] - rtw89: fix incorrect channel info during scan (Íñigo Huguet) [2033291] - rtw89: update scan_mac_addr during scanning period (Íñigo Huguet) [2033291] - rtw89: use inline function instead macro to set H2C and CAM (Íñigo Huguet) [2033291] - rtw89: add const in the cast of le32_get_bits() (Íñigo Huguet) [2033291] - rtw89: add AXIDMA and TX FIFO dump in mac_mem_dump (Íñigo Huguet) [2033291] - rtw89: fix potentially access out of range of RF register array (Íñigo Huguet) [2033291] - rtw89: remove unneeded variable (Íñigo Huguet) [2033291] - rtw89: remove unnecessary conditional operators (Íñigo Huguet) [2033291] - rtw89: update rtw89_regulatory map to R58-R31 (Íñigo Huguet) [2033291] - rtw89: update tx power limit/limit_ru tables to R54 (Íñigo Huguet) [2033291] - rtw89: update rtw89 regulation definition to R58-R31 (Íñigo Huguet) [2033291] - rtw89: fill regd field of limit/limit_ru tables by enum (Íñigo Huguet) [2033291] - rtw89: update partition size of firmware header on skb->data (Íñigo Huguet) [2033291] - rtw89: Fix variable dereferenced before check 'sta' (Íñigo Huguet) [2033291] - rtw89: fix return value in hfc_pub_cfg_chk (Íñigo Huguet) [2033291] - rtw89: remove duplicate register definitions (Íñigo Huguet) [2033291] - rtw89: fix error function parameter (Íñigo Huguet) [2033291] - rtw89: remove unneeded semicolon (Íñigo Huguet) [2033291] - rtw89: fix return value check in rtw89_cam_send_sec_key_cmd() (Íñigo Huguet) [2033291] - rtw89: Remove redundant check of ret after call to rtw89_mac_enable_bb_rf (Íñigo Huguet) [2033291] - rtw89: Fix two spelling mistakes in debug messages (Íñigo Huguet) [2033291] - rtw89: add Realtek 802.11ax driver (Íñigo Huguet) [2033291] - powerpc/doc: Fix htmldocs errors (Diego Domingos) [2004798] - pseries/drmem: update LMBs after LPM (Diego Domingos) [2004798] - powerpc/pseries: Add support for FORM2 associativity (Diego Domingos) [2004798] - powerpc/pseries: Add a helper for form1 cpu distance (Diego Domingos) [2004798] - powerpc/pseries: Consolidate different NUMA distance update code paths (Diego Domingos) [2004798] - powerpc/pseries: Rename TYPE1_AFFINITY to FORM1_AFFINITY (Diego Domingos) [2004798] - powerpc/pseries: rename min_common_depth to primary_domain_index (Diego Domingos) [2004798] - powerpc/numa: Fix build when CONFIG_NUMA=n (Diego Domingos) [2004798] - pseries/hotplug-memory: hot-add: skip redundant LMB lookup (Diego Domingos) [2004798] - selftests: icmp_redirect: pass xfail=0 to log_test() (Hangbin Liu) [2041308] - selftests: net: Correct ping6 expected rc from 2 to 1 (Hangbin Liu) [2041308] - mt76: enable new device MT7921E (Íñigo Huguet) [2024056 1972045] - vrf: Reset IPCB/IP6CB when processing outbound pkts in vrf dev xmit (Antoine Tenart) [2044254] - SUNRPC: prevent port reuse on transports which don't request it. (Benjamin Coddington) [2016646] - SUNRPC: Fix races when closing the socket (Benjamin Coddington) [2016646] - SUNRPC: Prevent immediate close+reconnect (Benjamin Coddington) [2016646] - SUNRPC: Clean up scheduling of autoclose (Benjamin Coddington) [2016646] - SUNRPC: Fix potential memory corruption (Benjamin Coddington) [2016646] - sunrpc: remove unnecessary test in rpc_task_set_client() (Benjamin Coddington) [2016646] - SUNRPC: Replace use of socket sk_callback_lock with sock_lock (Benjamin Coddington) [2016646] - arm64: numa: simplify dummy_numa_init() (Vitaly Kuznetsov) [2029774] - ACPI: NUMA: Process hotpluggable memblocks when !CONFIG_MEMORY_HOTPLUG (Vitaly Kuznetsov) [2029774] - s390/sclp: fix Secure-IPL facility detection (Stefan Schulze Frielinghaus) [2039182] - powerpc/pseries/mobility: ignore ibm, platform-facilities updates (Diego Domingos) [2031827] - of: Fix property name in of_node_get_device_type (Diego Domingos) [2031827] - of: Add device_type access helper functions (Diego Domingos) [2031827] - powerpc/watchdog: help remote CPUs to flush NMI printk output (Diego Domingos) [2030259] - powerpc/watchdog: Fix wd_smp_last_reset_tb reporting (Diego Domingos) [2030259] - powerpc/watchdog: read TB close to where it is used (Diego Domingos) [2030259] - powerpc/watchdog: Avoid holding wd_smp_lock over printk and smp_send_nmi_ipi (Diego Domingos) [2030259] - powerpc/watchdog: tighten non-atomic read-modify-write access (Diego Domingos) [2030259] - powerpc/watchdog: Fix missed watchdog reset due to memory ordering race (Diego Domingos) [2030259] - selftests/sgx: Fix corrupted cpuid macro invocation (Vladis Dronov) [1920030] - x86/sgx: Fix minor documentation issues (Vladis Dronov) [1920030] - selftests/sgx: Add test for multiple TCS entry (Vladis Dronov) [1920030] - selftests/sgx: Enable multiple thread support (Vladis Dronov) [1920030] - selftests/sgx: Add page permission and exception test (Vladis Dronov) [1920030] - selftests/sgx: Rename test properties in preparation for more enclave tests (Vladis Dronov) [1920030] - selftests/sgx: Provide per-op parameter structs for the test enclave (Vladis Dronov) [1920030] - selftests/sgx: Add a new kselftest: Unclobbered_vdso_oversubscribed (Vladis Dronov) [1920030] - selftests/sgx: Move setup_test_encl() to each TEST_F() (Vladis Dronov) [1920030] - selftests/sgx: Encpsulate the test enclave creation (Vladis Dronov) [1920030] - selftests/sgx: Dump segments and /proc/self/maps only on failure (Vladis Dronov) [1920030] - selftests/sgx: Create a heap for the test enclave (Vladis Dronov) [1920030] - selftests/sgx: Make data measurement for an enclave segment optional (Vladis Dronov) [1920030] - selftests/sgx: Assign source for each segment (Vladis Dronov) [1920030] - selftests/sgx: Fix a benign linker warning (Vladis Dronov) [1920030] - x86/sgx: Fix free page accounting (Vladis Dronov) [1920030] - x86/sgx: Add check for SGX pages to ghes_do_memory_failure() (Vladis Dronov) [1920030] - x86/sgx: Add hook to error injection address validation (Vladis Dronov) [1920030] - x86/sgx: Hook arch_memory_failure() into mainline code (Vladis Dronov) [1920030] - x86/sgx: Add SGX infrastructure to recover from poison (Vladis Dronov) [1920030] - x86/sgx: Initial poison handling for dirty and free pages (Vladis Dronov) [1920030] - x86/sgx: Add infrastructure to identify SGX EPC pages (Vladis Dronov) [1920030] - x86/sgx: Add new sgx_epc_page flag bit to mark free pages (Vladis Dronov) [1920030] - selftests/sgx: Fix Q1 and Q2 calculation in sigstruct.c (Vladis Dronov) [1920030] - selftests/sgx: remove checks for file execute permissions (Vladis Dronov) [1920030] - selftests/sgx: Refine the test enclave to have storage (Vladis Dronov) [1920030] - selftests/sgx: Add EXPECT_EEXIT() macro (Vladis Dronov) [1920030] - selftests/sgx: Dump enclave memory map (Vladis Dronov) [1920030] - selftests/sgx: Migrate to kselftest harness (Vladis Dronov) [1920030] - selftests/sgx: Rename 'eenter' and 'sgx_call_vdso' (Vladis Dronov) [1920030] - x86/sgx: Add missing xa_destroy() when virtual EPC is destroyed (Vladis Dronov) [1920030] - x86/sgx: Correct kernel-doc's arg name in sgx_encl_release() (Vladis Dronov) [1920030] - x86: Fix leftover comment typos (Vladis Dronov) [1920030] - mm,hwpoison: return -EHWPOISON to denote that the page has already been poisoned (Vladis Dronov) [1920030] - mm/memory-failure: use a mutex to avoid memory_failure() races (Vladis Dronov) [1920030] - mm,hwpoison: take free pages off the buddy freelists (Vladis Dronov) [1920030] - sched/fair: Consider SMT in ASYM_PACKING load balance (Prarit Bhargava) [1971924] - sched/fair: Carve out logic to mark a group for asymmetric packing (Prarit Bhargava) [1971924] - sched/fair: Provide update_sg_lb_stats() with sched domain statistics (Prarit Bhargava) [1971924] - sched/fair: Optimize checking for group_asym_packing (Prarit Bhargava) [1971924] - sched/topology: Introduce sched_group::flags (Prarit Bhargava) [1971924] - x86/sched: Decrease further the priorities of SMT siblings (Prarit Bhargava) [1971924]- nvme-fc: remove freeze/unfreeze around update_nr_hw_queues (Ewan D. Milne) [1996109] - nvme-fc: avoid race between time out and tear down (Ewan D. Milne) [1996109] - nvme-fc: update hardware queues before using them (Ewan D. Milne) [1996109] - igbvf: Refactor trace (Corinna Vinschen) [2039886] - igbvf: fix double free in `igbvf_probe` (Corinna Vinschen) [2039886] - mm/memory_hotplug: remove is_mem_section_removable() (David Hildenbrand) [2008072] - powerpc/pseries/hotplug-memory: stop checking is_mem_section_removable() (David Hildenbrand) [2008072] - drivers/base/memory.c: indicate all memory blocks as removable (David Hildenbrand) [2008072] - drivers/base/memory.c: fixup documentation of removable/phys_index/block_size_bytes (David Hildenbrand) [2008072] - Revert "mpi3mr: mark as tech preview" (Tomas Henzl) [1989634] - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO (Tomas Henzl) [1977833] - scsi: mpi3mr: Use scnprintf() instead of snprintf() (Tomas Henzl) [1998599] - scsi: mpi3mr: Fix duplicate device entries when scanning through sysfs (Tomas Henzl) [1998599] - scsi: mpi3mr: Clean up mpi3mr_print_ioc_info() (Tomas Henzl) [1989634] - scsi: mpi3mr: Set up IRQs in resume path (Tomas Henzl) [1991577] - Revert "scsi: lpfc: ls_rjt erroneus FLOGIs" (Dick Kennedy) [2032488] - pseries/eeh: Fix the kdump kernel crash during eeh_pseries_init (Steve Best) [2028253] - arm64: smp: Add missing prototype for some smp.c functions (Mark Salter) [1996738] - irqchip/gic-v3-its: Remove unnecessary oom message (Mark Salter) [1996738] - irqchip/gic-v2m: Remove unnecessary oom message (Mark Salter) [1996738] - irqchip/gic: Split vGIC probing information from the GIC code (Mark Salter) [1996738] - irqchip/gic-v3: Workaround inconsistent PMR setting on NMI entry (Mark Salter) [1996738] - irqchip/gic-v3: Do not enable irqs when handling spurious interrups (Mark Salter) [1996738] - irqchip/gic-v4.1: Disable vSGI upon (GIC CPUIF < v4.1) detection (Mark Salter) [1996738] - irqchip/gic-v3: Fix OF_BAD_ADDR error handling (Mark Salter) [1996738] - arm64: Move ICH_ sysreg bits from arm-gic-v3.h to sysreg.h (Mark Salter) [1996738] - irqchip/gic-v3-its: Drop the setting of PTZ altogether (Mark Salter) [1996738] - irqchip/gic-v3-its: Add a cache invalidation right after vPE unmapping (Mark Salter) [1996738] - irqchip/gic-v3: Fix typos in PMR/RPR SCR_EL3.FIQ handling explanation (Mark Salter) [1996738] - genirq/msi: Initialize msi_alloc_info before calling msi_domain_prepare_irqs() (Mark Salter) [1996738] - irqchip/gic: Spelling s/REturn/Return/ (Mark Salter) [1996738] - irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend (Mark Salter) [1996738] - irq-chip/gic-v3-its: Fix crash if ITS is in a proximity domain without processor or memory (Mark Salter) [1996738] - irqchip/gic: Cleanup Franken-GIC handling (Mark Salter) [1996738] - arm64: Implement panic_smp_self_stop() (Mark Salter) [1996738] - arm64: Improve parking of stopped CPUs (Mark Salter) [1996738] - genirq: Allow interrupts to be excluded from /proc/interrupts (Mark Salter) [1996738] - irqchip/gic-v3: Support pseudo-NMIs when SCR_EL3.FIQ == 0 (Mark Salter) [1996738] - irqchip/gic-v3: Spell out when pseudo-NMIs are enabled (Mark Salter) [1996738] - irqchip/gic-v2, v3: Prevent SW resends entirely (Mark Salter) [1996738] - irqchip/git-v3-its: Implement irq_retrigger callback for device-triggered LPIs (Mark Salter) [1996738] - irqchip/gic-v2, v3: Implement irq_chip->irq_retrigger() (Mark Salter) [1996738] - irqchip/gic-v4.1: Use GFP_ATOMIC flag in allocate_vpe_l1_table() (Mark Salter) [1996738] - irqchip/gic-v4.1: Ensure accessing the correct RD when writing INVALLR (Mark Salter) [1996738] - irqchip/gic-v3: Remove unused register definition (Mark Salter) [1996738] - drivers/irqchip: Use new macro ACPI_DECLARE_SUBTABLE_PROBE_ENTRY (Mark Salter) [1996738] - drivers/acpi: Add new macro ACPI_DECLARE_SUBTABLE_PROBE_ENTRY (Mark Salter) [1996738] - KVM: arm64: vgic-v4: Plug race between non-residency and v4.1 doorbell (Mark Salter) [1996738] - irqchip/gic: Atomically update affinity (Mark Salter) [1996738] - irqchip/gic-v4.1: Use readx_poll_timeout_atomic() to fix sleep in atomic (Mark Salter) [1996738] - irqchip/gic-v2, v3: Drop extra IRQ_NOAUTOEN setting for (E)PPIs (Mark Salter) [1996738] - irqchip/gic-v3-its: Balance initial LPI affinity across CPUs (Mark Salter) [1996738] - irqchip/gic-v3-its: Track LPI distribution on a per CPU basis (Mark Salter) [1996738] - irqchip/gic-v3: Fix missing "__init" for gic_smp_init() (Mark Salter) [1996738] - selftests/bpf: Enlarge select() timeout for test_maps (Jiri Benc) [1869444] - PCI: Do not enable AtomicOps on VFs (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Fix stats counters (Selvin Xavier) [1987081 1984339 2001893] - RDMA/bnxt_re: Prefer kcalloc over open coded arithmetic (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Remove unpaired rtnl unlock in bnxt_re_dev_init() (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Add missing spin lock initialization (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Fix uninitialized struct bit field rsvd1 (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Update ABI to pass wqe-mode to user space (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Enable global atomic ops if platform supports (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Drop unnecessary NULL checks after container_of (Selvin Xavier) [1987081 1984339] - dm btree remove: fix use after free in rebalance_children() (Benjamin Marzinski) [2034424] - dm table: log table creation error code (Benjamin Marzinski) [2034424] - dm: make workqueue names device-specific (Benjamin Marzinski) [2034424] - dm writecache: Make use of the helper macro kthread_run() (Benjamin Marzinski) [2034424] - dm crypt: Make use of the helper macro kthread_run() (Benjamin Marzinski) [2034424] - dm: fix mempool NULL pointer race when completing IO (Benjamin Marzinski) [2034424] - dm rq: don't queue request to blk-mq during DM suspend (Benjamin Marzinski) [1891486] - dm verity: skip redundant verity_handle_err() on I/O errors (Benjamin Marzinski) [2034424] - dm writecache: add event counters (Benjamin Marzinski) [2034424] - dm writecache: report invalid return from writecache_map helpers (Benjamin Marzinski) [2034424] - dm writecache: further writecache_map() cleanup (Benjamin Marzinski) [2034424] - dm writecache: factor out writecache_map_remap_origin() (Benjamin Marzinski) [2034424] - dm writecache: split up writecache_map() to improve code readability (Benjamin Marzinski) [2034424] - dm btree remove: assign new_root only when removal succeeds (Benjamin Marzinski) [2034424] - dm ps io affinity: remove redundant continue statement (Benjamin Marzinski) [2034424] - dm: rearrange core declarations for extended use from dm-zone.c (Benjamin Marzinski) [2034424] - dm space map disk: cache a small number of index entries (Benjamin Marzinski) [2034424] - dm space maps: improve performance with inc/dec on ranges of blocks (Benjamin Marzinski) [2034424] - dm space maps: don't reset space map allocation cursor when committing (Benjamin Marzinski) [2034424] - dm btree: improve btree residency (Benjamin Marzinski) [2034424] - dm integrity: fix sparse warnings (Benjamin Marzinski) [2034424] - dm: replace dm_vcalloc() (Benjamin Marzinski) [2034424] - dm integrity: add the "reset_recalculate" feature flag (Benjamin Marzinski) [2034424] - dm cache: remove needless request_queue NULL pointer checks (Benjamin Marzinski) [2034424] - dm thin: remove needless request_queue NULL pointer check (Benjamin Marzinski) [2034424] - dm ioctl: replace device hash with red-black tree (Benjamin Marzinski) [2034424] - recordmcount.pl: fix typo in s390 mcount regex (Jerome Marchand) [2025890] - recordmcount.pl: look for jgnop instruction as well as bcrl on s390 (Jerome Marchand) [2025890] - KVM: x86: Wait for IPIs to be delivered when handling Hyper-V TLB flush hypercall (Vitaly Kuznetsov) [1868572] - HID: magicmouse: prevent division by 0 on scroll (Benjamin Tissoires) [2022814] - HID: input: set usage type to key on keycode remap (Benjamin Tissoires) [2022814] - HID: input: Fix parsing of HID_CP_CONSUMER_CONTROL fields (Benjamin Tissoires) [2022814] - HID: u2fzero: properly handle timeouts in usb_submit_urb (Benjamin Tissoires) [2022814] - HID: u2fzero: clarify error check and length calculations (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix potential NULL pointer dereference (Benjamin Tissoires) [2022814] - HID: u2fzero: ignore incomplete packets without data (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix potential NULL pointer dereference (Benjamin Tissoires) [2022814] - HID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs (Benjamin Tissoires) [2022814] - HID: apple: Fix logical maximum and usage maximum of Magic Keyboard JIS (Benjamin Tissoires) [2022814] - HID: betop: fix slab-out-of-bounds Write in betop_probe (Benjamin Tissoires) [2022814] - HID: usbhid: Simplify code in hid_submit_ctrl() (Benjamin Tissoires) [2022814] - HID: usbhid: Fix warning caused by 0-length input reports (Benjamin Tissoires) [2022814] - HID: usbhid: Fix flood of "control queue full" messages (Benjamin Tissoires) [2022814] - HID: sony: Fix more ShanWan clone gamepads to not rumble when plugged in. (Benjamin Tissoires) [2022814] - HID: sony: support for the ghlive ps4 dongles (Benjamin Tissoires) [2022814] - HID: thrustmaster: clean up Makefile and adapt quirks (Benjamin Tissoires) [2022814] - HID: i2c-hid: Fix Elan touchpad regression (Benjamin Tissoires) [2022814] - HID: asus: Prevent Claymore sending suspend event (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add dyndbg prints for debugging (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add support for PM suspend and resume (Benjamin Tissoires) [2022814] - HID: amd_sfh: Move hid probe after sensor is enabled (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add command response to check command status (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix period data field to enable sensor (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: battery: provide CAPACITY property for newer devices (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leak in thrustmaster_interrupts() (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leak in remove (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leaks in probe (Benjamin Tissoires) [2022814] - HID: elo: update the reference count of the usb device structure (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Use 'atomic_inc_return' instead of hand-writing it (Benjamin Tissoires) [2022814] - HID: ft260: fix device removal due to USB disconnect (Benjamin Tissoires) [2022814] - HID: apple: Add missing scan code event for keys handled by hid-apple (Benjamin Tissoires) [2022814] - HID: cmedia: add support for HS-100B mute button (Benjamin Tissoires) [2022814] - HID: i2c-hid: goodix: Use the devm variant of regulator_register_notifier() (Benjamin Tissoires) [2022814] - HID: wacom: Refactor touch input mute checks into a common function (Benjamin Tissoires) [2022814] - HID: wacom: Avoid sending empty sync events (Benjamin Tissoires) [2022814] - HID: wacom: Short-circuit processing of touch when it is disabled (Benjamin Tissoires) [2022814] - HID: wacom: set initial hardware touch switch state to 'off' (Benjamin Tissoires) [2022814] - HID: wacom: Skip processing of touches with negative slot values (Benjamin Tissoires) [2022814] - HID: wacom: Re-enable touch by default for Cintiq 24HDT / 27QHDT (Benjamin Tissoires) [2022814] - HID: Kconfig: Fix spelling mistake "Uninterruptable" -> "Uninterruptible" (Benjamin Tissoires) [2022814] - HID: apple: Add support for Keychron K1 wireless keyboard (Benjamin Tissoires) [2022814] - HID: usbhid: free raw_report buffers in usbhid_stop (Benjamin Tissoires) [2022814] - HID: fix typo in Kconfig (Benjamin Tissoires) [2022814] - HID: ft260: fix format type warning in ft260_word_show() (Benjamin Tissoires) [2022814] - HID: i2c-hid: goodix: Tie the reset line to true state of the regulator (Benjamin Tissoires) [2022814] - HID: amd_sfh: Use correct MMIO register for DMA address (Benjamin Tissoires) [2022814] - HID: magicmouse: high-resolution scroll threshold (Benjamin Tissoires) [2022814] - HID: magicmouse: enable high-resolution scroll (Benjamin Tissoires) [2022814] - HID: asus: Remove check for same LED brightness on set (Benjamin Tissoires) [2022814] - HID: input: do not report stylus battery state as "full" (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: use async resume function (Benjamin Tissoires) [2022814] - HID: thrustmaster: Switch to kmemdup() when allocate change_request (Benjamin Tissoires) [2022814] - HID: multitouch: Disable event reporting on suspend when the device is not a wakeup-source (Benjamin Tissoires) [2022814] - HID: logitech-dj: Implement may_wakeup ll-driver callback (Benjamin Tissoires) [2022814] - HID: usbhid: Implement may_wakeup ll-driver callback (Benjamin Tissoires) [2022814] - HID: core: Add hid_hw_may_wakeup() function (Benjamin Tissoires) [2022814] - HID: input: Add support for Programmable Buttons (Benjamin Tissoires) [2022814] - HID: wacom: Correct base usage for capacitive ExpressKey status bits (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add initial support for HPD sensor (Benjamin Tissoires) [2022814 1961759] - HID: amd_sfh: Extend ALS support for newer AMD platform (Benjamin Tissoires) [2022814 1961759] - HID: amd_sfh: Extend driver capabilities for multi-generation support (Benjamin Tissoires) [2022814 1961759] - HID: surface-hid: Fix get-report request (Benjamin Tissoires) [2022814] - HID: sony: fix freeze when inserting ghlive ps3/wii dongles (Benjamin Tissoires) [2022814] - HID: usbkbd: Avoid GFP_ATOMIC when GFP_KERNEL is possible (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Specify that EHL no cache snooping (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ishtp: Add dma_no_cache_snooping() callback (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Set ISH driver depends on x86 (Benjamin Tissoires) [2022814] - HID: hid-input: add Surface Go battery quirk (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix minor typos in comments (Benjamin Tissoires) [2022814] - HID: magicmouse: fix NULL-deref on disconnect (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Add Alder Lake device IDs (Benjamin Tissoires) [2022814] - HID: i2c-hid: fix format string mismatch (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix memory leak in amd_sfh_work (Benjamin Tissoires) [2022814] - HID: amd_sfh: Use devm_kzalloc() instead of kzalloc() (Benjamin Tissoires) [2022814] - HID: ft260: improve error handling of ft260_hid_feature_report_get() (Benjamin Tissoires) [2022814] - HID: asus: Cleanup Asus T101HA keyboard-dock handling (Benjamin Tissoires) [2022814] - HID: magicmouse: fix crash when disconnecting Magic Trackpad 2 (Benjamin Tissoires) [2022814] - HID: gt683r: add missing MODULE_DEVICE_TABLE (Benjamin Tissoires) [2022814] - HID: pidff: fix error return code in hid_pidff_init() (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: initialize level variable (Benjamin Tissoires) [2022814] - HID: multitouch: Disable event reporting on suspend on the Asus T101HA touchpad (Benjamin Tissoires) [2022814] - HID: core: Remove extraneous empty line before EXPORT_SYMBOL_GPL(hid_check_keys_pressed) (Benjamin Tissoires) [2022814] - HID: usbmouse: Avoid GFP_ATOMIC when GFP_KERNEL is possible (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Process failure of sensor_hub_set_feature() (Benjamin Tissoires) [2022814] - HID: i2c-hid: Skip ELAN power-on command after reset (Benjamin Tissoires) [2022814] - HID: usbhid: fix info leak in hid_submit_ctrl (Benjamin Tissoires) [2022814] - HID: Add BUS_VIRTUAL to hid_connect logging (Benjamin Tissoires) [2022814] - HID: input: replace outdated HID numbers+comments with macros (Benjamin Tissoires) [2022814] - HID: multitouch: set Stylus suffix for Stylus-application devices, too (Benjamin Tissoires) [2022814] - HID: multitouch: require Finger field to mark Win8 reports as MT (Benjamin Tissoires) [2022814] - HID: remove the unnecessary redefinition of a macro (Benjamin Tissoires) [2022814] - HID: quirks: Add quirk for Lenovo optical mouse (Benjamin Tissoires) [2022814] - HID: asus: filter G713/G733 key event to prevent shutdown (Benjamin Tissoires) [2022814] - HID: lg-g15 + ite: Add MODULE_AUTHOR (Benjamin Tissoires) [2022814] - HID: lg-g15: Add support for the Logitech Z-10 speakers (Benjamin Tissoires) [2022814] - HID: lg-g15: Make the LED-name used by lg_g15_register_led() a parameter (Benjamin Tissoires) [2022814] - HID: lg-g15: Add a lg_g15_init_input_dev() helper function (Benjamin Tissoires) [2022814] - HID: lg-g15: Add a lg_g15_handle_lcd_menu_keys() helper function (Benjamin Tissoires) [2022814] - HID: lg-g15: Remove unused size argument from lg_*_event() functions (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Return error for hid_set_field() failure (Benjamin Tissoires) [2022814] - HID: ft260: check data size in ft260_smbus_write() (Benjamin Tissoires) [2022814] - HID: surface-hid: Fix integer endian conversion (Benjamin Tissoires) [2022814] - HID: hid-debug: recognize KEY_ASSISTANT and KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [2022814] - HID: hid-input: add mapping for emoji picker key (Benjamin Tissoires) [2022814] - HID: a4tech: use A4_2WHEEL_MOUSE_HACK_B8 for A4TECH NB-95 (Benjamin Tissoires) [2022814] - HID: logitech-dj/hidpp: Add info/warn/err messages about 27 MHz keyboard encryption (Benjamin Tissoires) [2022814] - HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K15A keyboard-dock (Benjamin Tissoires) [2022814] - HID: thrustmaster: fix return value check in thrustmaster_probe() (Benjamin Tissoires) [2022814] - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for Saitek X65 (Benjamin Tissoires) [2022814] - HID: do not use down_interruptible() when unbinding devices (Benjamin Tissoires) [2022814] - HID: asus: Filter keyboard EC for old ROG keyboard (Benjamin Tissoires) [2022814] - HID: semitek: new driver for GK6X series keyboards (Benjamin Tissoires) [2022814] - HID: wacom: Setup pen input capabilities to the targeted tools (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Move 'hsdev' description to correct struct definition (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Remove unused struct member 'quirks' (Benjamin Tissoires) [2022814] - HID: wacom_sys: Demote kernel-doc abuse (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: hid-uclogic-params: Ensure function names are present and correct in kernel-doc headers (Benjamin Tissoires) [2022814] - HID: hid-uclogic-rdesc: Kernel-doc is for functions and structs (Benjamin Tissoires) [2022814] - HID: hid-logitech-hidpp: Fix conformant kernel-doc header and demote abuses (Benjamin Tissoires) [2022814] - HID: hid-picolcd_core: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: hid-kye: Fix incorrect function name for kye_tablet_enable() (Benjamin Tissoires) [2022814] - HID: hid-core: Fix incorrect function name in header (Benjamin Tissoires) [2022814] - HID: hid-alps: Correct struct misnaming (Benjamin Tissoires) [2022814] - HID: usbhid: hid-pidff: Demote a couple kernel-doc abuses (Benjamin Tissoires) [2022814] - HID: usbhid: Repair a formatting issue in a struct description (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Fix 'suggest-attribute=format' compiler warning (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ishtp-fw-loader: Fix a bunch of formatting issues (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Fix incorrect function name report_bad_packet() (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Correct fw_reset_work_fn() function name in header (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix potential copy/paste error (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix a little doc-rot (Benjamin Tissoires) [2022814] - HID: intel-ish: Fix a naming disparity and a formatting error (Benjamin Tissoires) [2022814] - HID: intel-ish: Supply some missing param descriptions (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: pci-ish: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Move variable to where it's actually used (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Remove unused variable 'err' (Benjamin Tissoires) [2022814] - HID: hid-thrustmaster: Demote a bunch of kernel-doc abuses (Benjamin Tissoires) [2022814] - HID: input: map battery capacity (00850065) (Benjamin Tissoires) [2022814] - HID: magicmouse: fix reconnection of Magic Mouse 2 (Benjamin Tissoires) [2022814] - HID: magicmouse: fix 3 button emulation of Mouse 2 (Benjamin Tissoires) [2022814] - HID: magicmouse: add Apple Magic Mouse 2 support (Benjamin Tissoires) [2022814] - HID: lenovo: Add support for Thinkpad X1 Tablet Thin keyboard (Benjamin Tissoires) [2022814] - HID: lenovo: Rework how the tp10ubkbd code decides which USB interface to use (Benjamin Tissoires) [2022814] - HID: lenovo: Set default_triggers for the mute and micmute LEDs (Benjamin Tissoires) [2022814] - HID: lenovo: Map mic-mute button to KEY_F20 instead of KEY_MICMUTE (Benjamin Tissoires) [2022814] - HID: lenovo: Set LEDs max_brightness value (Benjamin Tissoires) [2022814] - HID: lenovo: Remove lenovo_led_brightness_get() (Benjamin Tissoires) [2022814] - HID: lenovo: Check hid_get_drvdata() returns non NULL in lenovo_event() (Benjamin Tissoires) [2022814] - HID: lenovo: Fix lenovo_led_set_tp10ubkbd() error handling (Benjamin Tissoires) [2022814] - HID: lenovo: Use brightness_set_blocking callback for setting LEDs brightness (Benjamin Tissoires) [2022814] - HID: elan: Remove elan_mute_led_get_brigtness() (Benjamin Tissoires) [2022814] - HID: elan: Set default_trigger for the mute LED (Benjamin Tissoires) [2022814] - HID: elan: Silence mute LED errors being logged when the device is unplugged (Benjamin Tissoires) [2022814] - HID: fix memdup.cocci warnings (Benjamin Tissoires) [2022814] - HID: surface-hid: Add support for legacy keyboard interface (Benjamin Tissoires) [2022814] - HID: Add support for Surface Aggregator Module HID transport (Benjamin Tissoires) [2022814] - HID: thrustmaster: introduce proper USB dependency (Benjamin Tissoires) [2022814] - HID: intel_ish-hid: HBM: Use connected standby state bit during suspend/resume (Benjamin Tissoires) [2022814] - HID: ft260: fix an error message in ft260_i2c_write_read() (Benjamin Tissoires) [2022814] - HID: support for initialization of some Thrustmaster wheels (Benjamin Tissoires) [2022814] - HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices (Benjamin Tissoires) [2022814] - HID: ft260: add usb hid to i2c host bridge driver (Benjamin Tissoires) [2022814] - iio: Add relative sensitivity support (Benjamin Tissoires) [2022814] - iio: hid-sensors: Move get sensitivity attribute to hid-sensor-common (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Make remove callback return void (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Simplify logic in ishtp_cl_device_remove() (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Drop if block with an always false condition (Benjamin Tissoires) [2022814] - AMD_SFH: Add DMI quirk table for BIOS-es which don't set the activestatus bits (Benjamin Tissoires) [2022814] - AMD_SFH: Add sensor_mask module parameter (Benjamin Tissoires) [2022814] - AMD_SFH: Removed unused activecontrolstatus member from the amd_mp2_dev struct (Benjamin Tissoires) [2022814] - HID: wacom: Assign boolean values to a bool variable (Benjamin Tissoires) [2022814] - HID cp2112: fix support for multiple gpiochips (Benjamin Tissoires) [2022814] - HID: alps: fix error return code in alps_input_configured() (Benjamin Tissoires) [2022814] - HID: asus: Add support for 2021 ASUS N-Key keyboard (Benjamin Tissoires) [2022814] - HID: hiddev: Return specific error codes on connect failure (Benjamin Tissoires) [2022814] - HID: plantronics: Workaround for double volume key presses (Benjamin Tissoires) [2022814] - HID: logitech-dj: Handle newer quad/bt2.0 receivers in HID proxy mode (Benjamin Tissoires) [2022814] - HID: logitech-dj: Use hid-ids.h defines for USB device-ids for all supported devices (Benjamin Tissoires) [2022814] - HID: google: add don USB id (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Drop redundant ACPI_PTR() (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Move GUID out of function and described it (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Switch to new style i2c-driver probe function (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Get ACPI companion only once and reuse it (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense player LED support. (Benjamin Tissoires) [2022814] - HID: playstation: add microphone mute support for DualSense. (Benjamin Tissoires) [2022814] - HID: playstation: add initial DualSense lightbar support. (Benjamin Tissoires) [2022814] - HID: wacom: Ignore attempts to overwrite the touch_max value from HID (Benjamin Tissoires) [2022814] - HID: playstation: fix array size comparison (off-by-one) (Benjamin Tissoires) [2022814] - HID: playstation: fix unused variable in ps_battery_get_property. (Benjamin Tissoires) [2022814] - HID: playstation: report DualSense hardware and firmware version. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense classic rumble support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense Bluetooth support. (Benjamin Tissoires) [2022814] - HID: playstation: track devices in list. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense accelerometer and gyroscope support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense touchpad support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense battery support. (Benjamin Tissoires) [2022814] - HID: playstation: use DualSense MAC address as unique identifier. (Benjamin Tissoires) [2022814] - HID: playstation: initial DualSense USB support. (Benjamin Tissoires) [2022814] - HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch 10E (Benjamin Tissoires) [2022814] - HID: Ignore battery for Elan touchscreen on HP Spectre X360 15-df0xxx (Benjamin Tissoires) [2022814] - HID: logitech-dj: add support for the new lightspeed connection iteration (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID (Benjamin Tissoires) [2022814] - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming (Benjamin Tissoires) [2022814] - HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15 (Benjamin Tissoires) [2022814] - HID: displays: convert sysfs sprintf/snprintf family to sysfs_emit (Benjamin Tissoires) [2022814] - HID: wacom: convert sysfs sprintf/snprintf family to sysfs_emit (Benjamin Tissoires) [2022814] - HID: lg-g15: make a const array static, makes object smaller (Benjamin Tissoires) [2022814] - HID: google: Get HID report on probe to confirm tablet switch state (Benjamin Tissoires) [2022814] - HID: hid-input: avoid splitting keyboard, system and consumer controls (Benjamin Tissoires) [2022814] - HID: correct kernel-doc notation in hid-quirks.c (Benjamin Tissoires) [2022814] - HID: correct kernel-doc notation in (Benjamin Tissoires) [2022814] - HID: wacom: Correct NULL dereference on AES pen proximity (Benjamin Tissoires) [2022814] - HID: multitouch: Set to high latency mode on suspend. (Benjamin Tissoires) [2022814] - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Add custom sensor iio support (Benjamin Tissoires) [2022814] - HID: i2c-hid: Introduce goodix-i2c-hid using i2c-hid core (Benjamin Tissoires) [2022814] - redhat: HID: enable I2C_HID_ACPI (Benjamin Tissoires) [2022814] - HID: i2c-hid: Reorganize so ACPI and OF are separate modules (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: add support for Unified Battery (1004) feature (Benjamin Tissoires) [2022814] - HID: sony: Add support for tilt on guitar hero guitars (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode (Benjamin Tissoires) [2022814] - HID: chicony: Add Wireless Radio Control feature for Chicony devices (Benjamin Tissoires) [2022814] - HID: Ignore battery for Elan touchscreen on ASUS UX550 (Benjamin Tissoires) [2022814] - HID: logitech-dj: add the G602 receiver (Benjamin Tissoires) [2022814] - HID: core: detect and skip invalid inputs to snto32() (Benjamin Tissoires) [2022814] - HID: uclogic: Improve support for Trust Panora (Benjamin Tissoires) [2022814] - HID: wiimote: remove h from printk format specifier (Benjamin Tissoires) [2022814] - HID: uclogic: remove h from printk format specifier (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Address EHL Sx resume issues (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: finish power flow for EHL OOB (Benjamin Tissoires) [2022814] - HID: sony: select CONFIG_CRC32 (Benjamin Tissoires) [2022814] - HID: sfh: fix address space confusion (Benjamin Tissoires) [2022814] - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device (Benjamin Tissoires) [2022814] - HID: wacom: Fix memory leakage caused by kfifo_alloc (Benjamin Tissoires) [2022814] - HID: i2c-hid: add Vero K147 to descriptor override (Benjamin Tissoires) [2022814] - HID: ite: Add support for Acer S1002 keyboard-dock (Benjamin Tissoires) [2022814] - HID: sony: support for ghlive ps3/wii u dongles (Benjamin Tissoires) [2022814] - HID: hidraw: Add additional hidraw input/output report ioctls. (Benjamin Tissoires) [2022814] - HID: Increase HID maximum report size to 16KB (Benjamin Tissoires) [2022814] - HID: elecom: drop stray comment (Benjamin Tissoires) [2022814] - HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter (Benjamin Tissoires) [2022814] - HID: elecom: add support for EX-G M-XGL20DLBK wireless mouse (Benjamin Tissoires) [2022814] - HID: elecom: rewrite report based on model specific parameters (Benjamin Tissoires) [2022814] - HID: wacom: Constify attribute_groups (Benjamin Tissoires) [2022814] - HID: input: Fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - HID: usbhid: Fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add hid_device_id for V470 bluetooth mouse (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Remove unnecessary assignment to variable rv (Benjamin Tissoires) [2022814] - HID: sony: Workaround for DS4 dongle hotplug kernel crash. (Benjamin Tissoires) [2022814] - HID: sony: Don't use fw_version/hw_version for sysfs cleanup. (Benjamin Tissoires) [2022814] - HID: sony: Report more accurate DS4 power status. (Benjamin Tissoires) [2022814] - SFH: fix error return check for -ERESTARTSYS (Benjamin Tissoires) [2022814] - HID: Add Logitech Dinovo Edge battery quirk (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo Edge (Benjamin Tissoires) [2022814] - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices (Benjamin Tissoires) [2022814] - HID: mcp2221: Fix GPIO output handling (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Fix issue with devices with no report ID (Benjamin Tissoires) [2022814] - HID: hid-input: occasionally report stylus battery even if not changed (Benjamin Tissoires) [2022814] - timekeeping: Add missing _ns functions for coarse accessors (Benjamin Tissoires) [2022814] - HID: i2c-hid: show the error when failing to fetch the HID descriptor (Benjamin Tissoires) [2022814] - AMD_SFH: Fix for incorrect Sensor index (Benjamin Tissoires) [2022814] - HID: asus: Add support for ASUS N-Key keyboard (Benjamin Tissoires) [2022814] - HID: i2c-hid: Put ACPI enumerated devices in D3 on shutdown (Benjamin Tissoires) [2022814] - HID: add support for Sega Saturn (Benjamin Tissoires) [2022814] - HID: cypress: Support Varmilo Keyboards' media hotkeys (Benjamin Tissoires) [2022814] - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses (Benjamin Tissoires) [2022814] - SFH: Create HID report to Enable support of AMD sensor fusion Hub (SFH) (Benjamin Tissoires) [2022814] - SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH) (Benjamin Tissoires) [2022814] - redhat: HID: enable AMD_SFH_HUB (Benjamin Tissoires) [1965674] - SFH: PCIe driver to add support of AMD sensor fusion hub (Benjamin Tissoires) [2022814] - HID: uclogic: Add ID for Trust Flex Design Tablet (Benjamin Tissoires) [2022814] - HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle (Benjamin Tissoires) [2022814] - HID: add vivaldi HID driver (Benjamin Tissoires) [2022814] - HID: i2c-hid: fix kerneldoc warnings in i2c-hid-core.c (Benjamin Tissoires) [2022814] - HID: core: fix kerneldoc warnings in hid-core.c (Benjamin Tissoires) [2022814] - HID: multitouch: Lenovo X1 Tablet Gen2 trackpoint and buttons (Benjamin Tissoires) [2022814] - HID: alps: clean up indentation issue (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: simplify the return expression of ishtp_bus_remove_device() (Benjamin Tissoires) [2022814] - HID: hid-debug: fix nonblocking read semantics wrt EIO/ERESTARTSYS (Benjamin Tissoires) [2022814] - HID: i2c-hid: Prefer asynchronous probe (Benjamin Tissoires) [2022814] - HID: wiimote: narrow spinlock range in wiimote_hid_event() (Benjamin Tissoires) [2022814] - HID: wiimote: make handlers[] const (Benjamin Tissoires) [2022814] - HID: logitech-dj: Fix spelling in comment (Benjamin Tissoires) [2022814] - HID: apple: Add support for Matias wireless keyboard (Benjamin Tissoires) [2022814] - Input: elan_i2c - reduce the resume time for controller in Whitebox (Benjamin Tissoires) [2022814] - Input: parkbd - switch to use module_parport_driver() (Benjamin Tissoires) [2022814] - Input: i8042 - fix typos in comments (Benjamin Tissoires) [2022814] - Input: elantech - Prepare a complete software node for the device (Benjamin Tissoires) [2022814] - Input: apbps2 - remove useless variable (Benjamin Tissoires) [2022814] - Input: elan_i2c - fix a typo in parameter name (Benjamin Tissoires) [2022814] - Input: i8042 - fix Pegatron C15B ID entry (Benjamin Tissoires) [2022814] - Input: elan_i2c - reduce the resume time for new devices (Benjamin Tissoires) [2022814] - Input: i8042 - add ASUS Zenbook Flip to noselftest list (Benjamin Tissoires) [2022814] - Input: add missing dependencies on CONFIG_HAS_IOMEM (Benjamin Tissoires) [2022814] - ARM: 9048/1: sa1111: make sa1111 bus's remove callback return void (Benjamin Tissoires) [2022814] - Input: synaptics - replace NOOP with suitable commentary (Benjamin Tissoires) [2022814] - Input: i8042 - unbreak Pegatron C15B (Benjamin Tissoires) [2022814] - Input: parkbd - convert comma to semicolon (Benjamin Tissoires) [2022814] - Input: elantech - fix protocol errors for some trackpoints in SMBus mode (Benjamin Tissoires) [2022814] - Input: elan_i2c - add new trackpoint report type 0x5F (Benjamin Tissoires) [2022814] - Input: i8042 - add Acer laptops to the i8042 reset list (Benjamin Tissoires) [2022814] - Input: i8042 - add ByteSpeed touchpad to noloop table (Benjamin Tissoires) [2022814] - Input: i8042 - fix error return code in i8042_setup_aux() (Benjamin Tissoires) [2022814] - Input: libps2 - fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - Input: synaptics - demote non-conformant kernel-doc header (Benjamin Tissoires) [2022814] - Input: elan_i2c_core - move header inclusion inside (Benjamin Tissoires) [2022814] - Input: elan_i2c - fix firmware update on newer ICs (Benjamin Tissoires) [2022814] - Input: elantech - demote obvious abuse of kernel-doc header (Benjamin Tissoires) [2022814] - Input: i8042 - allow insmod to succeed on devices without an i8042 controller (Benjamin Tissoires) [2022814] - Input: synaptics - enable InterTouch for ThinkPad T14 Gen 1 (Benjamin Tissoires) [2022814] - Input: synaptics - enable InterTouch for ThinkPad P1/X1E gen 2 (Benjamin Tissoires) [2022814] - Input: synaptics-rmi4 - rename f30_data to gpio_data (Benjamin Tissoires) [2022814] - Input: sun4i-ps2 - fix handling of platform_get_irq() error (Benjamin Tissoires) [2022814] - Input: allocate keycode for Fn + right shift (Benjamin Tissoires) [2022814] - Input: allocate keycodes for notification-center, pickup-phone and hangup-phone (Benjamin Tissoires) [2022814] - HID: cp2112: Use irqchip template (Benjamin Tissoires) [2022814] - HID: mcp2221: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [2022814] - treewide: replace '---help---' in Kconfig files with 'help' (Benjamin Tissoires) [2022814] - HID: asus: Add depends on USB_HID to HID_ASUS Kconfig option (Benjamin Tissoires) [2022814] - HID: asus: Fix mute and touchpad-toggle keys on Medion Akoya E1239T (Benjamin Tissoires) [2022814] - HID: asus: Add support for multi-touch touchpad on Medion Akoya E1239T (Benjamin Tissoires) [2022814] - HID: asus: Add report_size to struct asus_touchpad_info (Benjamin Tissoires) [2022814] - HID: asus: Add hid_is_using_ll_driver(usb_hid_driver) check (Benjamin Tissoires) [2022814] - HID: asus: Simplify skipping of mappings for Asus T100CHI keyboard-dock (Benjamin Tissoires) [2022814] - HID: asus: Only set EV_REP if we are adding a mapping (Benjamin Tissoires) [2022814] - HID: mcp2221: add gpiolib dependency (Benjamin Tissoires) [2022814] - HID: mcp2221: add GPIO functionality support (Benjamin Tissoires) [2022814] - HID: mcp2221: add usb to i2c-smbus host bridge (Benjamin Tissoires) [2022814] - HID: asus: Ignore Asus vendor-page usage-code 0xff events (Benjamin Tissoires) [2022814] - HID: sb0540: add support for Creative SB0540 IR receivers (Benjamin Tissoires) [2022814] - gpio: pass lookup and descriptor flags to request_own (Benjamin Tissoires) [2022814] - HID: hid-asus: select CONFIG_POWER_SUPPLY (Benjamin Tissoires) [2022814] - HID: hid-asus: Add BT keyboard dock battery monitoring support (Benjamin Tissoires) [2022814] - HID: hid-asus: Add Transbook T90CHI support (Benjamin Tissoires) [2022814] - HID: asus: Add support for the ASUS T101HA keyboard dock (Benjamin Tissoires) [2022814] - HID: asus: Add support for the ASUS FX503VD laptop (Benjamin Tissoires) [2022814] - HID: asus: Add event handler to catch unmapped Asus Vendor UsagePage codes (Benjamin Tissoires) [2022814] - af_unix: fix garbage collect vs MSG_PEEK (Patrick Talbert) [2031975] {CVE-2021-0920} - net: add kerneldoc comment for sk_peer_lock (Guillaume Nault) [2037782] - af_unix: fix races in sk_peer_pid and sk_peer_cred accesses (Guillaume Nault) [2037782] {CVE-2021-4203} - netfilter: nat: force port remap to prevent shadowing well-known ports (Florian Westphal) [2006167] {CVE-2021-3773} - netfilter: conntrack: tag conntracks picked up in local out hook (Florian Westphal) [2006167] - selftests: nft_nat: switch port shadow test cases to socat (Florian Westphal) [2006167] - selftests: nft_nat: Simplify port shadow notrack test (Florian Westphal) [2006167] - selftests: nft_nat: Improve port shadow test stability (Florian Westphal) [2006167] - selftests: nft_nat: add udp hole punch test case (Florian Westphal) [2006167] - ipv6: use prandom_u32() for ID generation (Hangbin Liu) [2040158] {CVE-2021-45485} - igc: fix tunnel offloading (Corinna Vinschen) [1910885] - virtio/vsock: fix the transport to work with VMADDR_CID_ANY (Stefano Garzarella) [2026442] - vhost/vsock: cleanup removing `len` variable (Stefano Garzarella) [2026442] - vhost/vsock: fix incorrect used length reported to the guest (Stefano Garzarella) [2026442] - vsock: prevent unnecessary refcnt inc for nonblocking connect (Stefano Garzarella) [2026442] - vsock/virtio: avoid potential deadlock when vsock device remove (Stefano Garzarella) [2026442] - VSOCK: handle VIRTIO_VSOCK_OP_CREDIT_REQUEST (Stefano Garzarella) [2026442] - vsock: notify server to shutdown when client has pending signal (Stefano Garzarella) [2026442] - virtio/vsock: simplify credit update function API (Stefano Garzarella) [2026442] - virtio/vsock: set packet's type in virtio_transport_send_pkt_info() (Stefano Garzarella) [2026442] - net: vlan: fix underflow for the real_dev refcnt (Balazs Nemeth) [2026375] - net: vlan: fix a UAF in vlan_dev_real_dev() (Balazs Nemeth) [2026375]- xfs: map unwritten blocks in XFS_IOC_{ALLOC,FREE}SP just like fallocate (Carlos Maiolino) [2034865] {CVE-2021-4155} - isdn: cpai: check ctr->cnr to avoid array index out of bound (Chris von Recklinghausen) [2016491] {CVE-2021-43389} - vt: keyboard: avoid signed integer overflow in k_ascii (Chris von Recklinghausen) [2017044] {CVE-2020-13974} - USB: serial: pl2303: fix GC type detection (Torez Smith) [1975985] - usb: dwc3: leave default DMA for PCI devices (Torez Smith) [1975985] - usb: xhci: tegra: Check padctrl interrupt presence in device tree (Torez Smith) [1975985] - usb: dwc3: core: Revise GHWPARAMS9 offset (Torez Smith) [1975985] - xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delay (Torez Smith) [1975985] - usb: typec: tipd: Remove dependency on "connector" child fwnode (Torez Smith) [1975985] - usb: xhci: tegra: mark PM functions as __maybe_unused (Torez Smith) [1975985] - media: ttusb-dec: avoid release of non-acquired mutex (Torez Smith) [1975985] - ABI: sysfs-devices-removable: make a table valid as ReST markup (Torez Smith) [1975985] - usb: dwc3: core: balance phy init and exit (Torez Smith) [1975985] - USB: serial: pl2303: fix GL type detection (Torez Smith) [1975985] - usb: xhci-mtk: Do not use xhci's virt_dev in drop_endpoint (Torez Smith) [1975985] - usb: xhci-mtk: fix issue of out-of-bounds array access (Torez Smith) [1975985] - usb: dwc3: Decouple USB 2.0 L1 & L2 events (Torez Smith) [1975985] - media: em28xx-input: fix refcount bug in em28xx_usb_disconnect (Torez Smith) [1975985] - media: dvb-usb: Fix error handling in dvb_usb_i2c_init (Torez Smith) [1975985] - power: supply: Fix build error when CONFIG_POWER_SUPPLY is not enabled. (Torez Smith) [1975985] - thunderbolt: test: split up test cases in tb_test_credit_alloc_all (Torez Smith) [1975985] - thunderbolt: Handle ring interrupt by reading interrupt status register (Torez Smith) [1975985] - thunderbolt: Add vendor specific NHI quirk for auto-clearing interrupt status (Torez Smith) [1975985] - thunderbolt: Fix port linking by checking all adapters (Torez Smith) [1975985] - thunderbolt: Do not read control adapter config space (Torez Smith) [1975985] - thunderbolt: Add authorized value to the KOBJ_CHANGE uevent (Torez Smith) [1975985] - usb: typec: tcpm: Raise vdm_sm_running flag only when VDM SM is running (Torez Smith) [1975985] - usb: dwc3: gadget: Stop EP0 transfers during pullup disable (Torez Smith) [1975985] - usb: dwc3: gadget: Fix dwc3_calc_trbs_left() (Torez Smith) [1975985] - Revert "USB: serial: ch341: fix character loss at high transfer rates" (Torez Smith) [1975985] - USB: serial: option: add new VID/PID to support Fibocom FG150 (Torez Smith) [1975985] - usb: typec: tcpm: Fix VDMs sometimes not being forwarded to alt-mode drivers (Torez Smith) [1975985] - Revert "usb: dwc3: gadget: Use list_replace_init() before traversing lists" (Torez Smith) [1975985] - usb: typec: tcpm: Keep other events when receiving FRS and Sourcing_vbus events (Torez Smith) [1975985] - usb: dwc3: gadget: Avoid runtime resume if disabling pullup (Torez Smith) [1975985] - usb: dwc3: gadget: Use list_replace_init() before traversing lists (Torez Smith) [1975985] - USB: serial: ftdi_sio: add device ID for Auto-M3 OP-COM v2 (Torez Smith) [1975985] - USB: serial: pl2303: fix GT type detection (Torez Smith) [1975985] - USB: serial: option: add Telit FD980 composition 0x1056 (Torez Smith) [1975985] - USB: serial: pl2303: fix HX type detection (Torez Smith) [1975985] - media: rtl28xxu: fix zero-length control request (Torez Smith) [1975985] - media: Revert "media: rtl28xxu: fix zero-length control request" (Torez Smith) [1975985] - USB: serial: ch341: fix character loss at high transfer rates (Torez Smith) [1975985] - usb: otg-fsm: Fix hrtimer list corruption (Torez Smith) [1975985] - USB: usbtmc: Fix RCU stall warning (Torez Smith) [1975985] - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick (Torez Smith) [1975985] - Revert "USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem" (Torez Smith) [1975985] - usb: dwc2: gadget: Fix sending zero length packet in DDMA mode. (Torez Smith) [1975985] - usb: dwc2: Skip clock gating on Samsung SoCs (Torez Smith) [1975985] - usb: dwc2: gadget: Fix GOUTNAK flow for Slave mode. (Torez Smith) [1975985] - usb: xhci: avoid renesas_usb_fw.mem when it's unusable (Torez Smith) [1975985] - usb: dwc3: avoid NULL access of usb_gadget_driver (Torez Smith) [1975985] - usb: typec: stusb160x: Don't block probing of consumer of "connector" nodes (Torez Smith) [1975985] - usb: typec: stusb160x: register role switch before interrupt registration (Torez Smith) [1975985] - USB: usb-storage: Add LaCie Rugged USB3-FW to IGNORE_UAS (Torez Smith) [1975985] - usb: hub: Disable USB 3 device initiated lpm if exit latency is too high (Torez Smith) [1975985] - usb: hub: Fix link power management max exit latency (MEL) calculations (Torez Smith) [1975985] - usb: typec: tipd: Don't block probing of consumer of "connector" nodes (Torez Smith) [1975985] - xhci: Fix lost USB 2 remote wake (Torez Smith) [1975985] - USB: serial: cp210x: fix comments for GE CS1000 (Torez Smith) [1975985] - USB: core: Fix incorrect pipe calculation in do_proc_control() (Torez Smith) [1975985] - USB: serial: option: add support for u-blox LARA-R6 family (Torez Smith) [1975985] - thunderbolt: test: Reinstate a few casts of bitfields (Torez Smith) [1975985] - USB: cdc-acm: blacklist Heimann USB Appset device (Torez Smith) [1975985] - usb: xhci-mtk: allow multiple Start-Split in a microframe (Torez Smith) [1975985] - usb: ftdi-elan: remove redundant continue statement in a while-loop (Torez Smith) [1975985] - thunderbolt: test: Remove some casts which are no longer required (Torez Smith) [1975985] - xhci: remove redundant continue statement (Torez Smith) [1975985] - usb: dwc3: Fix debugfs creation flow (Torez Smith) [1975985] - docs: driver-api: usb: avoid using ReST :doc:`foo` markup (Torez Smith) [1975985] - xhci: solve a double free problem while doing s4 (Torez Smith) [1975985] - xhci: handle failed buffer copy to URB sg list and fix a W=1 copiler warning (Torez Smith) [1975985] - xhci: Add adaptive interrupt rate for isoch TRBs with XHCI_AVOID_BEI quirk (Torez Smith) [1975985] - xhci: Remove unused defines for ERST_SIZE and ERST_ENTRIES (Torez Smith) [1975985] - usb: typec: Add the missed altmode_id_remove() in typec_register_altmode() (Torez Smith) [1975985] - usb: typec: tcpm: Relax disconnect threshold during power negotiation (Torez Smith) [1975985] - usb: typec: tcpm: Ignore Vsafe0v in PR_SWAP_SNK_SRC_SOURCE_ON state (Torez Smith) [1975985] - usb: typec: tcpci: Fix up sink disconnect thresholds for PD (Torez Smith) [1975985] - usb: core: hub: Disable autosuspend for Cypress CY7C65632 (Torez Smith) [1975985] - usb: host: xhci-tegra: Use devm_platform_get_and_ioremap_resource() (Torez Smith) [1975985] - usb: host: xhci-tegra: Add missing of_node_put() in tegra_xusb_probe() (Torez Smith) [1975985] - usb: host: xhci-tegra: add missing put_device() in tegra_xusb_probe() (Torez Smith) [1975985] - media: usb: cpia2: Fixed Coding Style issues (Torez Smith) [1975985] - media: ttusb-dec: cleanup an error handling logic (Torez Smith) [1975985] - cypress_m8: switch data_bits to real character bits (Torez Smith) [1975985] - thunderbolt: Fix DROM handling for USB4 DROM (Torez Smith) [1975985] - usb: xhci: tegra: Enable ELPG for runtime/system PM (Torez Smith) [1975985] - usb: xhci: tegra: Unlink power domain devices (Torez Smith) [1975985] - thunderbolt: Bond lanes only when dual_link_port != NULL in alloc_dev_default() (Torez Smith) [1975985] - thunderbolt: No need to include in usb4_port.c (Torez Smith) [1975985] - thunderbolt: Poll 10ms for REG_FW_STS_NVM_AUTH_DONE to be set (Torez Smith) [1975985] - thunderbolt: Add device links only when software connection manager is used (Torez Smith) [1975985] - thunderbolt: Add support for Intel Alder Lake (Torez Smith) [1975985] - usb: typec: mux: Fix copy-paste mistake in typec_mux_match (Torez Smith) [1975985] - usb: typec: ucsi: Clear PPM capability data in ucsi_init() error path (Torez Smith) [1975985] - usb: typec: wcove: Use LE to CPU conversion when accessing msg->header (Torez Smith) [1975985] - usb: typec: ucsi: Fix a comment in ucsi_init() (Torez Smith) [1975985] - USB: dwc3: remove debugfs root dentry storage (Torez Smith) [1975985] - USB: serial: cp210x: fix CP2102N-A01 modem control (Torez Smith) [1975985] - USB: serial: cp210x: fix alternate function for CP2102N QFN20 (Torez Smith) [1975985] - usb: dwc2: Don't reset the core after setting turnaround time (Torez Smith) [1975985] - usb: dwc3: support 64 bit DMA in platform driver (Torez Smith) [1975985] - USB: core: Avoid WARNings for 0-length descriptor requests (Torez Smith) [1975985] - usb: dwc3: core: fix kernel panic when do reboot (Torez Smith) [1975985] - usb: dwc3: ep0: fix NULL pointer exception (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Put ACPI device using acpi_dev_put() (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Add missed error check for devm_ioremap_resource() (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Put fwnode in error case during ->probe() (Torez Smith) [1975985] - usb: typec: tcpm: Do not finish VDM AMS for retrying Responses (Torez Smith) [1975985] - media: cinergyt2: make properties const (Torez Smith) [1975985] - media: dvd_usb: memory leak in cinergyt2_fe_attach (Torez Smith) [1975985] - USB: serial: ftdi_sio: add NovaTech OrionMX product ID (Torez Smith) [1975985] - usb: typec: tcpm: cancel send discover hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: cancel frs hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: cancel vdm and state machine hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: Properly handle Alert and Status Messages (Torez Smith) [1975985] - usb: dwc3: meson-g12a: Disable the regulator in the error handling path of the probe (Torez Smith) [1975985] - usb: typec: tcpm: Fix misuses of AMS invocation (Torez Smith) [1975985] - usb: typec: tcpm: Introduce snk_vdo_v1 for SVDM version 1.0 (Torez Smith) [1975985] - dt-bindings: connector: Add PD rev 2.0 VDO definition (Torez Smith) [1975985] - usb: typec: tcpm: Correct the responses in SVDM Version 2.0 DFP (Torez Smith) [1975985] - Revert "usb: dwc3: core: Add shutdown callback for dwc3" (Torez Smith) [1975985] - dt-bindings: connector: Replace BIT macro with generic bit ops (Torez Smith) [1975985] - media: gspca: ov519: replace RIGHT SINGLE QUOTATION MARK (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Update IOM port status offset for AlderLake (Torez Smith) [1975985] - usb: pd: Set PD_T_SINK_WAIT_CAP to 310ms (Torez Smith) [1975985] - usb: dwc3: gadget: Bail from dwc3_gadget_exit() if dwc->gadget is NULL (Torez Smith) [1975985] - usb: dwc3: gadget: Disable gadget IRQ during pullup disable (Torez Smith) [1975985] - usb: dwc3: debugfs: Add and remove endpoint dirs dynamically (Torez Smith) [1975985] - Revert "usb: typec: mux: Remove requirement for the "orientation-switch" device property" (Torez Smith) [1975985] - media: rtl28xxu: fix zero-length control request (Torez Smith) [1975985] - media: gspca/sunplus: fix zero-length control requests (Torez Smith) [1975985] - media: gspca/gl860: fix zero-length control requests (Torez Smith) [1975985] - media: gspca/sq905: fix control-request direction (Torez Smith) [1975985] - media: dtv5100: fix control-request directions (Torez Smith) [1975985] - media: drivers/media/usb/gspca/cpia1.c : fix spelling typo (Torez Smith) [1975985] - media: drivers/media/usb/em28xx/em28xx-cards.c : fix typo issues (Torez Smith) [1975985] - media: zr364xx: fix memory leak in zr364xx_start_readpipe (Torez Smith) [1975985] - media: em28xx: Fix possible memory leak of em28xx struct (Torez Smith) [1975985] - thunderbolt: Check for NVM authentication status after the operation started (Torez Smith) [1975985] - thunderbolt: Add WRITE_ONLY and AUTHENTICATE_ONLY NVM operations for retimers (Torez Smith) [1975985] - thunderbolt: Allow router NVM authenticate separately (Torez Smith) [1975985] - thunderbolt: Move nvm_write_ops to tb.h (Torez Smith) [1975985] - thunderbolt: Log the link as TBT instead of TBT3 (Torez Smith) [1975985] - thunderbolt: Add support for retimer NVM upgrade when there is no link (Torez Smith) [1975985] - thunderbolt: Add additional USB4 port operations for retimer access (Torez Smith) [1975985] - thunderbolt: Add support for ACPI _DSM to power on/off retimers (Torez Smith) [1975985] - thunderbolt: Add USB4 port devices (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for credit allocation (Torez Smith) [1975985] - thunderbolt: Allocate credits according to router preferences (Torez Smith) [1975985] - USB: core: Check buffer length matches wLength for control transfers (Torez Smith) [1975985] - usb: typec: ucsi: Fix copy/paste issue for 'ucsi_set_drvdata()' (Torez Smith) [1975985] - usb: dwc2: gadget: Repair 'dwc2_hsotg_core_init_disconnected()'s documentation (Torez Smith) [1975985] - usb: dwc2: pci: Fix possible copy/paste issue (Torez Smith) [1975985] - usb: dwc2: hcd_queue: Fix typeo in function name 'dwc2_hs_pmap_unschedule()' (Torez Smith) [1975985] - usb: dwc2: params: Fix naming of 'dwc2_get_hwparams()' in the docs (Torez Smith) [1975985] - usb: common: ulpi: Add leading underscores for function name '__ulpi_register_driver()' (Torez Smith) [1975985] - usb: dwc2: platform: Provide function name for 'dwc2_check_core_version()' (Torez Smith) [1975985] - driver core: Move the "removable" attribute from USB to core (Torez Smith) [1975985] - usb: dwc3: trace: Remove unused fields in dwc3_log_trb (Torez Smith) [1975985] - usb: typec: mux: Remove requirement for the "orientation-switch" device property (Torez Smith) [1975985] - usb: typec: mux: Use device type instead of device name for matching (Torez Smith) [1975985] - usb: common: usb-conn-gpio: use usb_role_string() to print role status (Torez Smith) [1975985] - usb: roles: add helper usb_role_string() (Torez Smith) [1975985] - USB: serial: omninet: update driver description (Torez Smith) [1975985] - USB: serial: omninet: add device id for Zyxel Omni 56K Plus (Torez Smith) [1975985] - USB: serial: quatech2: fix control-request directions (Torez Smith) [1975985] - usb: typec: tcpci: Make symbol 'tcpci_apply_rc' static (Torez Smith) [1975985] - USB: usbfs: remove double evaluation of usb_sndctrlpipe() (Torez Smith) [1975985] - usb: typec: tcpm: Respond Not_Supported if no snk_vdo (Torez Smith) [1975985] - usb: typec: tcpm: Properly interrupt VDM AMS (Torez Smith) [1975985] - media: lmedm04: delete lme2510_get_adapter_count() (Torez Smith) [1975985] - media: dvb-usb: fix wrong definition (Torez Smith) [1975985] - USB: core: WARN if pipe direction != setup packet direction (Torez Smith) [1975985] - USB: trancevibrator: fix control-request direction (Torez Smith) [1975985] - USB: dwc2: drop irq-flags initialisations (Torez Smith) [1975985] - usb: typec: tcpci: Implement callback for apply_rc (Torez Smith) [1975985] - usb: typec: tcpm: Move TCPC to APPLY_RC state during PR_SWAP (Torez Smith) [1975985] - usb: typec: tcpm: Refactor logic to enable/disable auto vbus dicharge (Torez Smith) [1975985] - usb: typec: tcpm: Fix up PR_SWAP when vsafe0v is signalled (Torez Smith) [1975985] - usb: atm: cxacru: Fix typo in comment (Torez Smith) [1975985] - usb: isp1760: remove platform data struct and code (Torez Smith) [1975985] - usb: fix spelling mistakes in header files (Torez Smith) [1975985] - USB: serial: digi_acceleport: add chars_in_buffer locking (Torez Smith) [1975985] - USB: serial: digi_acceleport: reduce chars_in_buffer over-reporting (Torez Smith) [1975985] - usb: Restore the usb_header label (Torez Smith) [1975985] - usb: typec: tcpm: Use LE to CPU conversion when accessing msg->header (Torez Smith) [1975985] - usb: typec: mux: Fix matching with typec_altmode_desc (Torez Smith) [1975985] - misc/uss720: fix memory leak in uss720_probe (Torez Smith) [1975985] - usb: dwc3: gadget: Properly track pending and queued SG (Torez Smith) [1975985] - USB: usbfs: Don't WARN about excessively large memory allocations (Torez Smith) [1975985] - usb: common: usb-conn-gpio: use dev_err_probe() to print log (Torez Smith) [1975985] - usb: common: usb-conn-gpio: fix NULL pointer dereference of charger (Torez Smith) [1975985] - Revert "USB: Add reset-resume quirk for WD19's Realtek Hub" (Torez Smith) [1975985] - USB: Verify the port status when timeout happens during port suspend (Torez Smith) [1975985] - usb: typec: wcove: Fx wrong kernel doc format (Torez Smith) [1975985] - media: pvrusb2: fix warning in pvr2_i2c_core_done (Torez Smith) [1975985] - media: rtl2832_sdr/vivid/airspy/hackrf/msi2500: drop memset of fmt.sdr.reserved (Torez Smith) [1975985] - media: cpia2: fix memory leak in cpia2_usb_probe (Torez Smith) [1975985] - media: s2255drv: remove redundant assignment to variable field (Torez Smith) [1975985] - media: gspca: properly check for errors in po1030_probe() (Torez Smith) [1975985] - Revert "media: gspca: Check the return value of write_bridge for timeout" (Torez Smith) [1975985] - media: gspca: mt9m111: Check write_bridge for timeout (Torez Smith) [1975985] - Revert "media: gspca: mt9m111: Check write_bridge for timeout" (Torez Smith) [1975985] - Revert "media: usb: gspca: add a missed check for goto_low_power" (Torez Smith) [1975985] - usb: core: hcd: use map_urb_for_dma for single step set feature urb (Torez Smith) [1975985] - usb: dwc3: pci: Fix DEFINE for Intel Elkhart Lake (Torez Smith) [1975985] - usb: core: hub: fix race condition about TRSMRCY of resume (Torez Smith) [1975985] - usb: typec: tcpm: Fix SINK_DISCOVERY current limit for Rp-default (Torez Smith) [1975985] - xhci: Add reset resume quirk for AMD xhci controller. (Torez Smith) [1975985] - usb: xhci: Increase timeout for HC halt (Torez Smith) [1975985] - xhci: Do not use GFP_KERNEL in (potentially) atomic context (Torez Smith) [1975985] - xhci: Fix giving back cancelled URBs even if halted endpoint can't reset (Torez Smith) [1975985] - xhci-pci: Allow host runtime PM as default for Intel Alder Lake xHCI (Torez Smith) [1975985] - usb: typec: tcpm: Don't block probing of consumers of "connector" nodes (Torez Smith) [1975985] - usb: xhci-mtk: use first-fit for LS/FS (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary assignments in periodic TT scheduler (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary setting of has_ippc (Torez Smith) [1975985] - usb: xhci-mtk: use bitfield instead of bool (Torez Smith) [1975985] - usb: typec: tcpm: Fix wrong handling for Not_Supported in VDM AMS (Torez Smith) [1975985] - usb: typec: tcpm: Send DISCOVER_IDENTITY from dedicated work (Torez Smith) [1975985] - usb: typec: ucsi: Retrieve all the PDOs instead of just the first 4 (Torez Smith) [1975985] - usb: dwc3: omap: improve extcon initialization (Torez Smith) [1975985] - usb: typec: ucsi: Put fwnode in any case during ->probe() (Torez Smith) [1975985] - usb: dwc2: Remove obsolete MODULE_ constants from platform.c (Torez Smith) [1975985] - usb: dwc3: imx8mp: fix error return code in dwc3_imx8mp_probe() (Torez Smith) [1975985] - usb: dwc3: imx8mp: detect dwc3 core node via compatible string (Torez Smith) [1975985] - usb: dwc3: gadget: Return success always for kick transfer in ep queue (Torez Smith) [1975985] - usb: dwc3: gadget: Free gadget structure only after freeing endpoints (Torez Smith) [1975985] - usb: dwc2: Fix gadget DMA unmap direction (Torez Smith) [1975985] - usb: dwc3: gadget: Rename EOPF event macros to Suspend (Torez Smith) [1975985] - usb: dwc3: gadget: Enable suspend events (Torez Smith) [1975985] - usb: Restore the reference to ch9.h (Torez Smith) [1975985] - usb: dwc3: core: Add missing GHWPARAMS9 doc (Torez Smith) [1975985] - usb: dwc3: pci: Enable usb2-gadget-lpm-disable for Intel Merrifield (Torez Smith) [1975985] - cdc-wdm: untangle a circular dependency between callback and softint (Torez Smith) [1975985] - usb: dwc3: remove repeated setting of current_dr_role (Torez Smith) [1975985] - USB: serial: pl2303: add device id for ADLINK ND-6530 GC (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: add startech.com device id (Torez Smith) [1975985] - USB: serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011 (Torez Smith) [1975985] - USB: serial: ftdi_sio: add IDs for IDS GmbH Products (Torez Smith) [1975985] - usb: Fix up movement of USB core kerneldoc location (Torez Smith) [1975985] - usb: dwc3: gadget: Handle DEV_TXF_FLUSH_BYPASS capability (Torez Smith) [1975985] - usb: dwc3: Capture new capability register GHWPARAMS9 (Torez Smith) [1975985] - usb: dwc3: core: Do core softreset when switch mode (Torez Smith) [1975985] - usb: dwc2: Get rid of useless error checks in suspend interrupt (Torez Smith) [1975985] - usb: dwc2: Update dwc2_handle_usb_suspend_intr function. (Torez Smith) [1975985] - usb: dwc2: Add exit hibernation mode before removing drive (Torez Smith) [1975985] - usb: dwc2: Add hibernation exiting flow by system resume (Torez Smith) [1975985] - usb: dwc2: Add hibernation entering flow by system suspend (Torez Smith) [1975985] - usb: dwc2: Allow exit hibernation in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Move exit hibernation to dwc2_port_resume() function (Torez Smith) [1975985] - usb: dwc2: Move enter hibernation to dwc2_port_suspend() function (Torez Smith) [1975985] - usb: dwc2: Clear GINTSTS_RESTOREDONE bit after restore is generated. (Torez Smith) [1975985] - usb: dwc2: Clear fifo_map when resetting core. (Torez Smith) [1975985] - usb: dwc2: Allow exiting hibernation from gpwrdn rst detect (Torez Smith) [1975985] - usb: dwc2: Fix hibernation between host and device modes. (Torez Smith) [1975985] - usb: dwc2: Fix host mode hibernation exit with remote wakeup flow. (Torez Smith) [1975985] - usb: dwc2: Reset DEVADDR after exiting gadget hibernation. (Torez Smith) [1975985] - usb: dwc2: Update exit hibernation when port reset is asserted (Torez Smith) [1975985] - usb: dwc3: gadget: Remove FS bInterval_m1 limitation (Torez Smith) [1975985] - usb: xhci-mtk: remove bus status check (Torez Smith) [1975985] - usb: dwc2: Enable RPi in ACPI mode (Torez Smith) [1975985] - USB: Add reset-resume quirk for WD19's Realtek Hub (Torez Smith) [1975985] - usb: storage: datafab: remove redundant assignment of variable result (Torez Smith) [1975985] - usb: misc: adutux: fix whitespace coding style issue (Torez Smith) [1975985] - usb: dwc3: gadget: Fix START_TRANSFER link state check (Torez Smith) [1975985] - usb: typec: tcpm: Fix error while calculating PPS out values (Torez Smith) [1975985] - usb: xhci-mtk: remove unused members (Torez Smith) [1975985] - usb: xhci-mtk: use clock bulk to get clocks (Torez Smith) [1975985] - usb: xhci-mtk: add support runtime PM (Torez Smith) [1975985] - usb: xhci-mtk: check return value in suspend/resume hooks (Torez Smith) [1975985] - usb: typec: tcpm: Allow slow charging loops to comply to pSnkStby (Torez Smith) [1975985] - usb: typec: tcpm: Honour pSnkStdby requirement during negotiation (Torez Smith) [1975985] - usb: dwc3: gadget: Check for disabled LPM quirk (Torez Smith) [1975985] - usb: dwc3: core: Add shutdown callback for dwc3 (Torez Smith) [1975985] - usb: dwc3: gadget: Ignore Packet Pending bit (Torez Smith) [1975985] - USB: Add LPM quirk for Lenovo ThinkPad USB-C Dock Gen2 Ethernet (Torez Smith) [1975985] - usb: typec: silence a static checker warning (Torez Smith) [1975985] - USB: cdc-acm: add more Maxlinear/Exar models to ignore list (Torez Smith) [1975985] - USB: serial: xr: add copyright notice (Torez Smith) [1975985] - USB: serial: xr: reset FIFOs on open (Torez Smith) [1975985] - USB: serial: xr: add support for XR22801, XR22802, XR22804 (Torez Smith) [1975985] - USB: serial: xr: add support for XR21B1411 (Torez Smith) [1975985] - USB: serial: xr: add support for XR21B1421, XR21B1422 and XR21B1424 (Torez Smith) [1975985] - USB: serial: xr: add type abstraction (Torez Smith) [1975985] - USB: serial: xr: drop type prefix from shared defines (Torez Smith) [1975985] - USB: serial: xr: move pin configuration to probe (Torez Smith) [1975985] - USB: serial: xr: rename GPIO-pin defines (Torez Smith) [1975985] - USB: serial: xr: rename GPIO-mode defines (Torez Smith) [1975985] - USB: serial: xr: add support for XR21V1412 and XR21V1414 (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: clean up termios CSIZE handling (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: use kernel types consistently (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: add port-command helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: clean up vendor-request helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop unnecessary packed attributes (Torez Smith) [1975985] - USB: serial: io_ti: drop unnecessary packed attributes (Torez Smith) [1975985] - USB: serial: io_ti: use kernel types consistently (Torez Smith) [1975985] - USB: serial: io_ti: add read-port-command helper (Torez Smith) [1975985] - USB: serial: io_ti: add send-port-command helper (Torez Smith) [1975985] - USB: serial: io_ti: clean up vendor-request helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop drain delay for 3410 (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: reduce drain delay to one char (Torez Smith) [1975985] - USB: serial: io_ti: document reason for drain delay (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating before removing driver (Torez Smith) [1975985] - usb: dwc2: Add clock gating exiting flow by system resume (Torez Smith) [1975985] - usb: dwc2: Add clock gating entering flow by system suspend (Torez Smith) [1975985] - usb: dwc2: Allow exit clock gating in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Update exit clock gating when port is resumed (Torez Smith) [1975985] - usb: dwc2: Update enter clock gating when port is suspended (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating when port reset is asserted (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating from session request interrupt (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating from wakeup interrupt (Torez Smith) [1975985] - usb: dwc2: Allow entering clock gating from USB_SUSPEND interrupt (Torez Smith) [1975985] - usb: dwc2: Add host clock gating support functions (Torez Smith) [1975985] - usb: dwc2: Add device clock gating support functions (Torez Smith) [1975985] - Revert "usb: Link the ports to the connectors they are attached to" (Torez Smith) [1975985] - USB: serial: cp210x: add gpio-configuration debug printk (Torez Smith) [1975985] - USB: serial: cp210x: provide gpio valid mask (Torez Smith) [1975985] - usb: dwc3: qcom: Detect DWC3 DT-nodes using compatible string (Torez Smith) [1975985] - usb: dwc3: qcom: Remove redundant dev_err call in dwc3_qcom_probe() (Torez Smith) [1975985] - usb: core: reduce power-on-good delay time of root hub (Torez Smith) [1975985] - USB:ehci:fix Kunpeng920 ehci hardware problem (Torez Smith) [1975985] - USB: serial: do not use tty class device for debugging (Torez Smith) [1975985] - USB: cdc-acm: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: cdc-acm: fix unprivileged TIOCCSERIAL (Torez Smith) [1975985] - Revert "USB: cdc-acm: fix rounding error in TIOCSSERIAL" (Torez Smith) [1975985] - usb: typec: tcpm: Add support for altmodes (Torez Smith) [1975985] - usb: typec: Add typec_port_register_altmodes() (Torez Smith) [1975985] - usb: roles: Call try_module_get() from usb_role_switch_find_by_fwnode() (Torez Smith) [1975985] - usb: dwc3: xilinx: Remove the extra freeing of clocks (Torez Smith) [1975985] - usb: dwc3: Resolve kernel-doc warning for Xilinx DWC3 driver (Torez Smith) [1975985] - usb: core: hub: Fix PM reference leak in usb_port_resume() (Torez Smith) [1975985] - usb: dwc3: pci: add support for the Intel Alder Lake-M (Torez Smith) [1975985] - usb: typec: Link all ports during connector registration (Torez Smith) [1975985] - usb: Iterator for ports (Torez Smith) [1975985] - usb: Link the ports to the connectors they are attached to (Torez Smith) [1975985] - usb: typec: Port mapping utility (Torez Smith) [1975985] - usb: typec: tcpm: update power supply once partner accepts (Torez Smith) [1975985] - usb: typec: tcpm: Address incorrect values of tcpm psy for pps supply (Torez Smith) [1975985] - usb: typec: tcpm: Address incorrect values of tcpm psy for fixed supply (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down before removing driver (Torez Smith) [1975985] - usb: dwc2: Fix partial power down exiting by system resume (Torez Smith) [1975985] - usb: dwc2: Update partial power down entering by system suspend (Torez Smith) [1975985] - usb: dwc2: Fix session request interrupt handler (Torez Smith) [1975985] - usb: dwc2: Allow exit partial power down in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Add part. power down exit from dwc2_conn_id_status_change(). (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down when port reset is asserted (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down when port is resumed (Torez Smith) [1975985] - usb: dwc2: Add enter partial power down when port is suspended (Torez Smith) [1975985] - usb: dwc2: Update port suspend/resume function definitions. (Torez Smith) [1975985] - usb: dwc2: Add partial power down exit flow in wakeup intr. (Torez Smith) [1975985] - usb: dwc2: Update enter and exit partial power down functions (Torez Smith) [1975985] - usb: dwc2: Add host partial power down functions (Torez Smith) [1975985] - usb: dwc2: Add device partial power down functions (Torez Smith) [1975985] - media: gscpa/stv06xx: fix memory leak (Torez Smith) [1975985] - media: gspca: Fix memory leak in probe (Torez Smith) [1975985] - media: dvb-usb: avoid -Wempty-body warnings (Torez Smith) [1975985] - media: flexcop: avoid -Wempty-body warning (Torez Smith) [1975985] - media: dvb-usb: fix memory leak in dvb_usb_adapter_init (Torez Smith) [1975985] - media: dvb-usb-remote: fix dvb_usb_nec_rc_key_to_event type mismatch (Torez Smith) [1975985] - thunderbolt: Add details to router uevent (Torez Smith) [1975985] - USB: serial: io_edgeport: drop unused definitions (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: switch to 30-second closing wait (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop closing_wait module parameter (Torez Smith) [1975985] - USB: serial: io_ti: switch to 30-second closing wait (Torez Smith) [1975985] - USB: serial: io_ti: drop closing_wait module parameter (Torez Smith) [1975985] - USB: serial: ftdi_sio: clean up TIOCSSERIAL (Torez Smith) [1975985] - USB: serial: ftdi_sio: simplify TIOCGSERIAL permission check (Torez Smith) [1975985] - USB: serial: ftdi_sio: ignore baud_base changes (Torez Smith) [1975985] - USB: serial: stop reporting legacy UART types (Torez Smith) [1975985] - USB: serial: add generic support for TIOCSSERIAL (Torez Smith) [1975985] - USB: serial: fix return value for unsupported ioctls (Torez Smith) [1975985] - USB: serial: whiteheat: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: usb_wwan: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: usb_wwan: fix unprivileged TIOCCSERIAL (Torez Smith) [1975985] - USB: serial: usb_wwan: fix TIOCSSERIAL jiffies conversions (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: fix TIOCSSERIAL permission check (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ssu100: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: quatech2: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: pl2303: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: opticon: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: mos7840: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: mos7720: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: io_ti: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: io_edgeport: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ftdi_sio: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ark3116: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - media: em28xx/em28xx.h: Remove duplicate struct declaration (Torez Smith) [1975985] - media: cx231xx/cx231xx.h: Remove repeated struct declaration (Torez Smith) [1975985] - xhci: prevent double-fetch of transfer and transfer event TRBs (Torez Smith) [1975985] - xhci: fix potential array out of bounds with several interrupters (Torez Smith) [1975985] - xhci: check control context is valid before dereferencing it. (Torez Smith) [1975985] - xhci: check port array allocation was successful before dereferencing it (Torez Smith) [1975985] - media: em28xx: fix memory leak (Torez Smith) [1975985] - usb: typec: Declare the typec_class static (Torez Smith) [1975985] - usb: typec: Organize the private headers properly (Torez Smith) [1975985] - usb: xhci-mtk: support quirk to disable usb2 lpm (Torez Smith) [1975985] - usb: xhci-mtk: fix oops when unbind driver (Torez Smith) [1975985] - usb: xhci-mtk: fix wrong remainder of bandwidth budget (Torez Smith) [1975985] - usb: dwc2: delete duplicate word in the comment (Torez Smith) [1975985] - usb: dwc2: add parenthess and space around * (Torez Smith) [1975985] - usb: dwc3: add cancelled reasons for dwc3 requests (Torez Smith) [1975985] - usb: dwc3: fix incorrect kernel-doc comment syntax in files (Torez Smith) [1975985] - usb: dwc3: st: fix incorrect kernel-doc comment syntax in file (Torez Smith) [1975985] - usb: dwc3: imx8mp: fix incorrect kernel-doc comment syntax (Torez Smith) [1975985] - USB: serial: xr: claim both interfaces (Torez Smith) [1975985] - USB: serial: add support for multi-interface functions (Torez Smith) [1975985] - USB: serial: refactor endpoint classification (Torez Smith) [1975985] - USB: serial: drop unused suspending flag (Torez Smith) [1975985] - USB: serial: xr: fix CSIZE handling (Torez Smith) [1975985] - USB: serial: iuu_phoenix: remove redundant variable 'error' (Torez Smith) [1975985] - usb: dwc3: Create helper function getting MDWIDTH (Torez Smith) [1975985] - usb: xhci-mtk: remove MODULE_ALIAS (Torez Smith) [1975985] - usb: xhci-mtk: drop CONFIG_OF (Torez Smith) [1975985] - usb: misc: usbsevseg: update to use usb_control_msg_send() (Torez Smith) [1975985] - usb: misc: ezusb: update to use usb_control_msg_send() (Torez Smith) [1975985] - usb: dwc3: gadget: modify the scale in vbus_draw callback (Torez Smith) [1975985] - usb: xhci-mtk: add support ip-sleep wakeup for mT8192 (Torez Smith) [1975985] - usb: xhci-mtk: support ip-sleep wakeup for MT8183 (Torez Smith) [1975985] - usb: dwc3: trace: Print register read and write offset (Torez Smith) [1975985] - usb: typec: tcpci_maxim: Make symbol 'max_tcpci_tcpci_write_table' static (Torez Smith) [1975985] - usbip: tools: add usage of device mode in usbip_list.c (Torez Smith) [1975985] - usbip: tools: add options and examples in man page related to device mode (Torez Smith) [1975985] - tools: usbip: list.h: fix kernel-doc for list_del() (Torez Smith) [1975985] - xhci: Fix uninitialized errors (Torez Smith) [1975985] - usb: typec: Fix a typo (Torez Smith) [1975985] - usb: xhci: Remove unused function (Torez Smith) [1975985] - usb: xhci: Rewrite xhci_create_usb3_bos_desc() (Torez Smith) [1975985] - usb: xhci: Fix port minor revision (Torez Smith) [1975985] - usb: xhci: Init root hub SSP rate (Torez Smith) [1975985] - thunderbolt: Unlock on error path in tb_domain_add() (Torez Smith) [1975985] - usb: core: sysfs: Check for SSP rate in speed attr (Torez Smith) [1975985] - usb: core: hub: Print speed name based on ssp rate (Torez Smith) [1975985] - usb: core: hub: Remove port_speed_is_ssp() (Torez Smith) [1975985] - usb: core: Track SuperSpeed Plus GenXxY (Torez Smith) [1975985] - usb: dwc3: gadget: Avoid continuing preparing TRBs during teardown (Torez Smith) [1975985] - USB: xhci: drop workaround for forced irq threading (Torez Smith) [1975985] - usb: dwc3: Add driver for Xilinx platforms (Torez Smith) [1975985] - USB: core: rename usb_driver_claim_interface() data parameter (Torez Smith) [1975985] - USB: core: drop outdated interface-binding comment (Torez Smith) [1975985] - media: media/usb: fix kernel-doc header issues (Torez Smith) [1975985] - media: gspca/sq905.c: fix uninitialized variable (Torez Smith) [1975985] - media: media/usb/gspca/w996Xcf.c: /** -> /* (Torez Smith) [1975985] - media: flexcop-usb: delete unneeded return (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for DMA tunnels (Torez Smith) [1975985] - thunderbolt: Add support for USB4 DROM (Torez Smith) [1975985] - thunderbolt: Check quirks in tb_switch_add() (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for XDomain properties (Torez Smith) [1975985] - thunderbolt: Drop unused tb_port_set_initial_credits() (Torez Smith) [1975985] - thunderbolt: Use dedicated flow control for DMA tunnels (Torez Smith) [1975985] - thunderbolt: Allow multiple DMA tunnels over a single XDomain connection (Torez Smith) [1975985] - thunderbolt: Add support for maxhopid XDomain property (Torez Smith) [1975985] - thunderbolt: Add tb_property_copy_dir() (Torez Smith) [1975985] - thunderbolt: Align XDomain protocol timeouts with the spec (Torez Smith) [1975985] - thunderbolt: Use pseudo-random number as initial property block generation (Torez Smith) [1975985] - thunderbolt: Do not re-establish XDomain DMA paths automatically (Torez Smith) [1975985] - thunderbolt: Decrease control channel timeout for software connection manager (Torez Smith) [1975985] - thunderbolt: Disable retry logic for intra-domain control packets (Torez Smith) [1975985] - thunderbolt: Do not pass timeout for tb_cfg_reset() (Torez Smith) [1975985] - thunderbolt: Add more logging to XDomain connections (Torez Smith) [1975985] - usb: typec: tcpm: PD3.0 sinks can send Discover Identity even in device mode (Torez Smith) [1975985] - drivers: usb: Fix a typo in dwc3-qcom.c (Torez Smith) [1975985] - usb: webcam: Invalid size of Processing Unit Descriptor (Torez Smith) [1975985] - usb: typec: tcpci: Added few missing TCPCI register definitions (Torez Smith) [1975985] - USB: serial: pl2303: TA & TB alternate divider with non-standard baud rates (Torez Smith) [1975985] - USB: serial: pl2303: add device-type names (Torez Smith) [1975985] - USB: serial: pl2303: tighten type HXN (G) detection (Torez Smith) [1975985] - USB: serial: pl2303: rename legacy PL2303H type (Torez Smith) [1975985] - USB: serial: pl2303: amend and tighten type detection (Torez Smith) [1975985] - USB: serial: pl2303: clean up type detection (Torez Smith) [1975985] - USB: serial: io_edgeport: drop unneeded forward declarations (Torez Smith) [1975985] - USB: serial: keyspan: drop unneeded forward declarations (Torez Smith) [1975985] - usb: typec: tipd: Separate file for tracepoint creation (Torez Smith) [1975985] - usb: typec: tps6598x: Move the driver under its own subdirectory (Torez Smith) [1975985] - usb: typec: tps6598x: Fix tracepoint header file (Torez Smith) [1975985] - usb: typec: tcpci: Refactor tcpc_presenting_cc1_rd macro (Torez Smith) [1975985] - thunderbolt: debugfs: Show all accessible dwords (Torez Smith) [1975985] - media: fix incorrect kernel doc usages (Torez Smith) [1975985] - media: drivers/media/usb: fix memory leak in zr364xx_probe (Torez Smith) [1975985] - media: anysee: simplify the return expression of anysee_ci_* function (Torez Smith) [1975985] - media: media/usb:Remove superfluous "breaks" in the ttusb_dec.c (Torez Smith) [1975985] - media: media/usb:Remove superfluous "breaks" (Torez Smith) [1975985] - media: usbtv: constify static structs (Torez Smith) [1975985] - media: em28xx: Add pid for bulk revision of Hauppauge 461eV2 (Torez Smith) [1975985] - media: em28xx: Add pid for bulk revision of Hauppauge 461e (Torez Smith) [1975985] - media: dvb-usb: Fix use-after-free access (Torez Smith) [1975985] - media: dvb-usb: Fix memory leak at error in dvb_usb_device_init() (Torez Smith) [1975985] - media: dvb-usb: make dvb_usb_device_properties const (Torez Smith) [1975985] - usb: typec: tps6598x: Fix return value check in tps6598x_probe() (Torez Smith) [1975985] - usb: typec: stusb160x: fix return value check in stusb160x_probe() (Torez Smith) [1975985] - usb: typec: tcpm: turn tcpm_ams_finish into void function (Torez Smith) [1975985] - usb: typec: tcpci: Check ROLE_CONTROL while interpreting CC_STATUS (Torez Smith) [1975985] - usb: common: move function's kerneldoc next to its definition (Torez Smith) [1975985] - usb: xhci-mtk: print debug info of endpoint interval (Torez Smith) [1975985] - usb: common: add function to get interval expressed in us unit (Torez Smith) [1975985] - usb: xhci-mtk: support to build xhci-mtk-hcd.ko (Torez Smith) [1975985] - usb: xhci-mtk: remove declaration of xhci_mtk_setup() (Torez Smith) [1975985] - usb: xhci-mtk: add some schedule error number (Torez Smith) [1975985] - usb: xhci-mtk: rebuild the way to get bandwidth domain (Torez Smith) [1975985] - usb: xhci-mtk: use @tt_info to check the FS/LS device is under a HS hub (Torez Smith) [1975985] - usb: xhci-mtk: add a member @speed in mu3h_sch_ep_info struct (Torez Smith) [1975985] - usb: xhci-mtk: use clear type instead of void (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary members of mu3h_sch_tt struct (Torez Smith) [1975985] - usb: xhci-mtk: add a function to get bandwidth boundary (Torez Smith) [1975985] - usb: xhci-mtk: add a function to (un)load bandwidth info (Torez Smith) [1975985] - usb: xhci-mtk: use @sch_tt to check whether need do TT schedule (Torez Smith) [1975985] - usb: xhci-mtk: add only one extra CS for FS/LS INTR (Torez Smith) [1975985] - usb: xhci-mtk: get the microframe boundary for ESIT (Torez Smith) [1975985] - usb: dwc3: Fix dereferencing of null dwc->usb_psy (Torez Smith) [1975985] - media: uvc: don't do DMA on stack (Torez Smith) [1975985] - usb: dwc3: document usb_psy in struct dwc3 (Torez Smith) [1975985] - media: uvcvideo: Fix pixel format change for Elgato Cam Link 4K (Torez Smith) [1975985] - USB: typec: tcpm: create debugfs subdir for the driver (Torez Smith) [1975985] - usb: dwc2: Add STM32 related debugfs entries (Torez Smith) [1975985] - media: uvcvideo: Support devices that report an OT as an entity source (Torez Smith) [1975985] - media: uvcvideo: Fix XU id print in forward scan (Torez Smith) [1975985] - USB: typec: fusb302: create debugfs subdir for the driver (Torez Smith) [1975985] - media: uvcvideo: Use dma_alloc_noncontiguous API (Torez Smith) [1975985] - USB: host: uhci: remove dentry pointer for debugfs (Torez Smith) [1975985] - media: uvc: strncpy -> strscpy (Torez Smith) [1975985] - media: uvcvideo: Rename debug functions (Torez Smith) [1975985] - media: uvcvideo: use dev_printk() for uvc_trace() (Torez Smith) [1975985] - media: uvcvideo: New macro uvc_trace_cont (Torez Smith) [1975985] - USB: core: no need to save usb_devices_root (Torez Smith) [1975985] - media: uvcvideo: Use dev_ printk aliases (Torez Smith) [1975985] - usb: dwc3: add an alternate path in vbus_draw callback (Torez Smith) [1975985] - media: uvcvideo: Add Privacy control based on EXT_GPIO (Torez Smith) [1975985] - usb: dwc3: add a power supply for current control (Torez Smith) [1975985] - media: uvcvideo: Implement UVC_EXT_GPIO_UNIT (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for data status (Torez Smith) [1975985] - media: uvcvideo: Allow entity-defined get_info and get_cur (Torez Smith) [1975985] - media: uvcvideo: Provide sync and async uvc_ctrl_status_event (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for power status register (Torez Smith) [1975985] - media: uvcvideo: Allow entities with no pads (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for status register (Torez Smith) [1975985] - media: uvcvideo: Allow extra entities (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for IRQ events (Torez Smith) [1975985] - tty: make everyone's write_room return >= 0 (Torez Smith) [1975985] - media: uvcvideo: Move guid to entity (Torez Smith) [1975985] - USB: serial: xr: fix NULL-deref on disconnect (Torez Smith) [1975985] - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values (Torez Smith) [1975985] - thunderbolt: Drop unused functions tb_switch_is_[ice|tiger]_lake() (Torez Smith) [1975985] - media: uvcvideo: Force UVC version to 1.0a for 1bcf:0b40 (Torez Smith) [1975985] - thunderbolt: debugfs: Handle fail reading block (Torez Smith) [1975985] - media: uvcvideo: Use DIV_ROUND_CLOSEST directly to make it readable (Torez Smith) [1975985] - media: usb: uvc: no need to check return value of debugfs_create functions (Torez Smith) [1975985] - media: uvcvideo: Convey full colorspace information to V4L2 (Torez Smith) [1975985] - driver core: fw_devlink: Detect supplier devices that will never be added (Torez Smith) [1975985] - media: uvcvideo: Ensure all probed info is returned to v4l2 (Torez Smith) [1975985] - media: uvcvideo: Silence shift-out-of-bounds warning (Torez Smith) [1975985] - media: uvcvideo: Fix dereference of out-of-bound list iterator (Torez Smith) [1975985] - media: zr364xx: fix memory leaks in probe() (Torez Smith) [1975985] - media: uvcvideo: Cleanup uvc_ctrl_add_info() error handling (Torez Smith) [1975985] - USB: serial: xr: fix B0 handling (Torez Smith) [1975985] - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect (Torez Smith) [1975985] - USB: serial: xr: fix pin configuration (Torez Smith) [1975985] - media: uvcvideo: Replace HTTP links with HTTPS ones (Torez Smith) [1975985] - USB: serial: xr: fix gpio-mode handling (Torez Smith) [1975985] - media: uvcvideo: Set media controller entity functions (Torez Smith) [1975985] - USB: serial: xr: simplify line-speed logic (Torez Smith) [1975985] - media: uvcvideo: Add mapping for HEVC payloads (Torez Smith) [1975985] - USB: serial: xr: clean up line-settings handling (Torez Smith) [1975985] - media: uvcvideo: Fix annotation for uvc_video_clock_update() (Torez Smith) [1975985] - USB: serial: xr: document vendor-request recipient (Torez Smith) [1975985] - USB: serial: xr: use termios flag helpers (Torez Smith) [1975985] - USB: serial: xr: use subsystem usb_device at probe (Torez Smith) [1975985] - media: media/usb: rename VFL_TYPE_GRABBER to _VIDEO (Torez Smith) [1975985] - USB: serial: xr: fix interface leak at disconnect (Torez Smith) [1975985] - media: rename VFL_TYPE_GRABBER to _VIDEO (Torez Smith) [1975985] - USB: serial: xr: fix NULL-deref at probe (Torez Smith) [1975985] - USB: cdc-acm: ignore Exar XR21V141X when serial driver is built (Torez Smith) [1975985] - media: uvcvideo: drop error check of debugfs_create_dir() (Torez Smith) [1975985] - USB: serial: add MaxLinear/Exar USB to Serial driver (Torez Smith) [1975985] - media: uvcvideo: Fix a typo in UVC_METATADA_BUF_SIZE (Torez Smith) [1975985] - media: uvcvideo: Fix error path in control parsing failure (Torez Smith) [1975985] - media: drivers/media: don't set pix->priv = 0 (Torez Smith) [1975985] - media: Bulk remove BUG_ON(in_interrupt()) (Torez Smith) [1975985] - media: zr364xx: propagate errors from zr364xx_start_readpipe() (Torez Smith) [1975985] - media: uvcvideo: Add a D4M camera description (Torez Smith) [1975985] - media: em28xx: Enable Hauppauge 461e rev2 (Torez Smith) [1975985] - crypto: qat - fix definition of ring reset results (Vladis Dronov) [1960307] - crypto: qat - add support for compression for 4xxx (Vladis Dronov) [1960307] - crypto: qat - allow detection of dc capabilities for 4xxx (Vladis Dronov) [1960307] - crypto: qat - add PFVF support to enable the reset of ring pairs (Vladis Dronov) [1960307] - crypto: qat - add PFVF support to the GEN4 host driver (Vladis Dronov) [1960307] - crypto: qat - config VFs based on ring-to-svc mapping (Vladis Dronov) [1960307] - crypto: qat - exchange ring-to-service mappings over PFVF (Vladis Dronov) [1960307] - crypto: qat - support fast ACKs in the PFVF protocol (Vladis Dronov) [1960307] - crypto: qat - exchange device capabilities over PFVF (Vladis Dronov) [1960307] - crypto: qat - introduce support for PFVF block messages (Vladis Dronov) [1960307] - crypto: qat - store the ring-to-service mapping (Vladis Dronov) [1960307] - crypto: qat - store the PFVF protocol version of the endpoints (Vladis Dronov) [1960307] - crypto: qat - improve the ACK timings in PFVF send (Vladis Dronov) [1960307] - crypto: qat - leverage read_poll_timeout in PFVF send (Vladis Dronov) [1960307] - crypto: qat - leverage bitfield.h utils for PFVF messages (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF messages with struct pfvf_message (Vladis Dronov) [1960307] - crypto: qat - set PFVF_MSGORIGIN just before sending (Vladis Dronov) [1960307] - crypto: qat - make PFVF send and receive direction agnostic (Vladis Dronov) [1960307] - crypto: qat - make PFVF message construction direction agnostic (Vladis Dronov) [1960307] - crypto: qat - add the adf_get_pmisc_base() helper function (Vladis Dronov) [1960307] - crypto: qat - support the reset of ring pairs on PF (Vladis Dronov) [1960307] - crypto: qat - extend crypto capability detection for 4xxx (Vladis Dronov) [1960307] - crypto: qat - set COMPRESSION capability for QAT GEN2 (Vladis Dronov) [1960307] - crypto: qat - set CIPHER capability for QAT GEN2 (Vladis Dronov) [1960307] - crypto: qat - get compression extended capabilities (Vladis Dronov) [1960307] - crypto: qat - improve logging of PFVF messages (Vladis Dronov) [1960307] - crypto: qat - fix VF IDs in PFVF log messages (Vladis Dronov) [1960307] - crypto: qat - do not rely on min version (Vladis Dronov) [1960307] - crypto: qat - refactor pfvf version request messages (Vladis Dronov) [1960307] - crypto: qat - pass the PF2VF responses back to the callers (Vladis Dronov) [1960307] - crypto: qat - use enums for PFVF protocol codes (Vladis Dronov) [1960307] - crypto: qat - reorganize PFVF protocol definitions (Vladis Dronov) [1960307] - crypto: qat - reorganize PFVF code (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF receive logic (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF send function (Vladis Dronov) [1960307] - crypto: qat - differentiate between pf2vf and vf2pf offset (Vladis Dronov) [1960307] - crypto: qat - add pfvf_ops (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF disabled function (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF VF related logic (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF PF related logic (Vladis Dronov) [1960307] - crypto: qat - handle retries due to collisions in adf_iov_putmsg() (Vladis Dronov) [1960307] - crypto: qat - split PFVF message decoding from handling (Vladis Dronov) [1960307] - crypto: qat - re-enable interrupts for legacy PFVF messages (Vladis Dronov) [1960307] - crypto: qat - change PFVF ACK behaviour (Vladis Dronov) [1960307] - crypto: qat - move interrupt code out of the PFVF handler (Vladis Dronov) [1960307] - crypto: qat - move VF message handler to adf_vf2pf_msg.c (Vladis Dronov) [1960307] - crypto: qat - move vf2pf interrupt helpers (Vladis Dronov) [1960307] - crypto: qat - refactor PF top half for PFVF (Vladis Dronov) [1960307] - crypto: qat - fix undetected PFVF timeout in ACK loop (Vladis Dronov) [1960307] - crypto: qat - do not handle PFVF sources for qat_4xxx (Vladis Dronov) [1960307] - crypto: qat - simplify adf_enable_aer() (Vladis Dronov) [1960307] - crypto: qat - share adf_enable_pf2vf_comms() from adf_pf2vf_msg.c (Vladis Dronov) [1960307] - crypto: qat - extract send and wait from adf_vf2pf_request_version() (Vladis Dronov) [1960307] - crypto: qat - add VF and PF wrappers to common send function (Vladis Dronov) [1960307] - crypto: qat - rename pfvf collision constants (Vladis Dronov) [1960307] - crypto: qat - move pfvf collision detection values (Vladis Dronov) [1960307] - crypto: qat - make pfvf send message direction agnostic (Vladis Dronov) [1960307] - crypto: qat - use hweight for bit counting (Vladis Dronov) [1960307] - crypto: qat - remove duplicated logic across GEN2 drivers (Vladis Dronov) [1960307] - crypto: qat - fix handling of VF to PF interrupts (Vladis Dronov) [1960307] - crypto: qat - remove unnecessary collision prevention step in PFVF (Vladis Dronov) [1960307] - crypto: qat - disregard spurious PFVF interrupts (Vladis Dronov) [1960307] - crypto: qat - detect PFVF collision after ACK (Vladis Dronov) [1960307] - crypto: qat - power up 4xxx device (Vladis Dronov) [1960307] - crypto: qat - remove unneeded packed attribute (Vladis Dronov) [1960307] - crypto: qat - free irq in case of failure (Vladis Dronov) [1960307] - crypto: qat - free irqs only if allocated (Vladis Dronov) [1960307] - crypto: qat - remove unmatched CPU affinity to cluster IRQ (Vladis Dronov) [1960307] - crypto: qat - replace deprecated MSI API (Vladis Dronov) [1960307] - crypto: qat - store vf.compatible flag (Vladis Dronov) [1960307] - crypto: qat - do not export adf_iov_putmsg() (Vladis Dronov) [1960307] - crypto: qat - flush vf workqueue at driver removal (Vladis Dronov) [1960307] - crypto: qat - remove the unnecessary get_vintmsk_offset() (Vladis Dronov) [1960307] - crypto: qat - fix naming of PF/VF enable functions (Vladis Dronov) [1960307] - crypto: qat - complete all the init steps before service notification (Vladis Dronov) [1960307] - crypto: qat - move IO virtualization functions (Vladis Dronov) [1960307] - crypto: qat - fix naming for init/shutdown VF to PF notifications (Vladis Dronov) [1960307] - crypto: qat - protect interrupt mask CSRs with a spinlock (Vladis Dronov) [1960307] - crypto: qat - move pf2vf interrupt [en|dis]able to adf_vf_isr.c (Vladis Dronov) [1960307] - crypto: qat - fix reuse of completion variable (Vladis Dronov) [1960307] - crypto: qat - remove intermediate tasklet for vf2pf (Vladis Dronov) [1960307] - crypto: qat - rename compatibility version definition (Vladis Dronov) [1960307] - crypto: qat - prevent spurious MSI interrupt in PF (Vladis Dronov) [1960307] - crypto: qat - prevent spurious MSI interrupt in VF (Vladis Dronov) [1960307] - crypto: qat - handle both source of interrupt in VF ISR (Vladis Dronov) [1960307] - crypto: qat - do not ignore errors from enable_vf2pf_comms() (Vladis Dronov) [1960307] - crypto: qat - enable interrupts only after ISR allocation (Vladis Dronov) [1960307] - crypto: qat - remove empty sriov_configure() (Vladis Dronov) [1960307] - crypto: qat - use proper type for vf_mask (Vladis Dronov) [1960307] - crypto: qat - fix a typo in a comment (Vladis Dronov) [1960307] - crypto: qat - disable AER if an error occurs in probe functions (Vladis Dronov) [1960307] - crypto: qat - set DMA mask to 48 bits for Gen2 (Vladis Dronov) [1960307] - crypto: qat - simplify code and axe the use of a deprecated API (Vladis Dronov) [1960307] - crypto: qat - ratelimit invalid ioctl message and print the invalid cmd (Vladis Dronov) [1960307] - lib: crc8: pointer to data block should be const (Vladis Dronov) [1960307] - redhat/configs: disable CONFIG_HYPERV_BALLOON on Aarch64 (Vitaly Kuznetsov) [2035292] - net/mlx5e: Fix possible use-after-free deleting fdb rule (Amir Tzin) [2000003] - e1000e: Fix packet loss on Tiger Lake and later (Ken Cox) [1952803] - e1000e: Separate TGP board type from SPT (Ken Cox) [1952803] - e1000e: Add support for the next LOM generation (Ken Cox) [1952803] - e1000e: Add support for Lunar Lake (Ken Cox) [1952803] - ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved (Mark Langsdorf) [1999906] - powerpc/xmon: Dump XIVE information for online-only processors. (Steve Best) [2037639] - of: net: pass the dst buffer to of_get_mac_address() (Petr Oros) [2026468] - net: ethernet: improve eth_platform_get_mac_address (Petr Oros) [2026468] - net: ethernet: fix similar warning reported by kbuild test robot (Petr Oros) [2026468] - net: ethernet: support of_get_mac_address new ERR_PTR error (Petr Oros) [2026468] - [s390] s390: add HWCAP_S390_PCI_MIO to ELF hwcaps (Mete Durlu) [2030641] - [s390] s390: make PCI mio support a machine flag (Mete Durlu) [2030641] - Allocate bw_dwork as a pointer and introduce a backpointer in the work struct (Nico Pache) [1990580] - writeback: use READ_ONCE for unlocked reads of writeback stats (Nico Pache) [1990580] - writeback: rename domain_update_bandwidth() (Nico Pache) [1990580] - writeback: fix bandwidth estimate for spiky workload (Nico Pache) [1990580] - writeback: reliably update bandwidth estimation (Nico Pache) [1990580] - writeback: track number of inodes under writeback (Nico Pache) [1990580] - bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag (Nico Pache) [1990580] - bdi: invert BDI_CAP_NO_ACCT_WB (Nico Pache) [1990580] - bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flag (Nico Pache) [1990580] - mm: use SWP_SYNCHRONOUS_IO more intelligently (Nico Pache) [1990580] - bdi: remove BDI_CAP_SYNCHRONOUS_IO (Nico Pache) [1990580] - bcache: inherit the optimal I/O size (Nico Pache) [1990580] - fs: remove the unused SB_I_MULTIROOT flag (Nico Pache) [1990580] - Revert "bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag" (Nico Pache) [1990580] - mm/page_io.c: annotate refault stalls from swap_readpage (Nico Pache) [1990580] - mmc: mmc_spi: Enable stable writes (Nico Pache) [1990580] - virtio-blk: modernize sysfs attribute creation (Nico Pache) [1990580] - aoe: register default groups with device_add_disk() (Nico Pache) [1990580] - block: make QUEUE_SYSFS_BIT_FNS more useful (Nico Pache) [1990580] - block: add helper macros for queue sysfs entries (Nico Pache) [1990580] - cifs: sanitize multiple delimiters in prepath (Thiago Becker) [2031200] - igc: Fix typo in i225 LTR functions (Corinna Vinschen) [1970667] - igc: AF_XDP zero-copy metadata adjust breaks SKBs on XDP_PASS (Corinna Vinschen) [1970667] - igc: Change Device Reset to Port Reset (Corinna Vinschen) [1970667] - igc: Add new device ID (Corinna Vinschen) [1970667] - igc: Remove media type checking on the PHY initialization (Corinna Vinschen) [1970667] - igc: Update I226_K device ID (Corinna Vinschen) [1970667] - net: intel: igc_ptp: fix build for UML (Corinna Vinschen) [1970667] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970667] - igc: Add support for CBS offloading (Corinna Vinschen) [1970667] - igc: Simplify TSN flags handling (Corinna Vinschen) [1970667] - igc: Use default cycle 'start' and 'end' values for queues (Corinna Vinschen) [1970667] - igc: Add support for PTP getcrosststamp() (Corinna Vinschen) [1970667] - igc: Enable PCIe PTM (Corinna Vinschen) [1970667] - igc: Use num_tx_queues when iterating over tx_ring queue (Corinna Vinschen) [1970667] - igc: fix page fault when thunderbolt is unplugged (Corinna Vinschen) [1970667] - igc: Increase timeout value for Speed 100/1000/2500 (Corinna Vinschen) [1970667] - igc: Set QBVCYCLET_S to 0 for TSN Basic Scheduling (Corinna Vinschen) [1970667] - igc: Remove phy->type checking (Corinna Vinschen) [1970667] - igc: Remove _I_PHY_ID checking (Corinna Vinschen) [1970667] - igc: Check if num of q_vectors is smaller than max before array access (Corinna Vinschen) [1970667] - Revert "igc: Export LEDs" (Corinna Vinschen) [1970667] - igc: Export LEDs (Corinna Vinschen) [1970667] - igc: Make flex filter more flexible (Corinna Vinschen) [1970667] - igc: Allow for Flex Filters to be installed (Corinna Vinschen) [1970667] - igc: Integrate flex filter into ethtool ops (Corinna Vinschen) [1970667] - igc: Add possibility to add flex filter (Corinna Vinschen) [1970667] - igc: Fix an error handling path in 'igc_probe()' (Corinna Vinschen) [1970667] - igc: change default return of igc_read_phy_reg() (Corinna Vinschen) [1970667] - igc: Fix use-after-free error during reset (Corinna Vinschen) [1970667] - intel: Remove rcu_read_lock() around XDP program invocation (Corinna Vinschen) [1970667] - igc: Enable HW VLAN Insertion and HW VLAN Stripping (Corinna Vinschen) [1970667] - igc: Indentation fixes (Corinna Vinschen) [1970667] - igc: Remove unused MDICNFG register (Corinna Vinschen) [1970667] - igc: Remove unused asymmetric pause bit from igc defines (Corinna Vinschen) [1970667] - igc: Update driver to use ethtool_sprintf (Corinna Vinschen) [1970667] - igc: add correct exception tracing for XDP (Corinna Vinschen) [1970667] - igb/igc: use strongly typed pointer (Corinna Vinschen) [1970667] - intel: remove checker warning (Corinna Vinschen) [1970667] - igc: Enable TX via AF_XDP zero-copy (Corinna Vinschen) [1970667] - igc: Enable RX via AF_XDP zero-copy (Corinna Vinschen) [1970667] - igc: Replace IGC_TX_FLAGS_XDP flag by an enum (Corinna Vinschen) [1970667] - igc: Introduce igc_unmap_tx_buffer() helper (Corinna Vinschen) [1970667] - igc: Introduce TX/RX stats helpers (Corinna Vinschen) [1970667] - igc: Refactor XDP rxq info registration (Corinna Vinschen) [1970667] - igc: Refactor igc_clean_rx_ring() (Corinna Vinschen) [1970667] - igc: Refactor __igc_xdp_run_prog() (Corinna Vinschen) [1970667] - igc: Move igc_xdp_is_enabled() (Corinna Vinschen) [1970667] - igc: use XDP helpers (Corinna Vinschen) [1970667] - igc: Expose LPI counters (Corinna Vinschen) [1970667] - igc: enable auxiliary PHC functions for the i225 (Corinna Vinschen) [1970667] - igc: Enable internal i225 PPS (Corinna Vinschen) [1970667] - igc: Add support for XDP_REDIRECT action (Corinna Vinschen) [1970667] - igc: Add support for XDP_TX action (Corinna Vinschen) [1970667] - igc: Add initial XDP support (Corinna Vinschen) [1970667] - drivers: net: mhi: fix error path in mhi_net_newlink (Íñigo Huguet) [2004141] - cfg80211: correct bridge/4addr mode check (Íñigo Huguet) [2004141] - cfg80211: fix management registrations locking (Íñigo Huguet) [2004141] - cfg80211: scan: fix RCU in cfg80211_add_nontrans_list() (Íñigo Huguet) [2004141] - mac80211: mesh: fix HE operation element length check (Íñigo Huguet) [2004141] - mwifiex: avoid null-pointer-subtraction warning (Íñigo Huguet) [2004141] - Revert "brcmfmac: use ISO3166 country code and 0 rev as fallback" (Íñigo Huguet) [2004141] - iwlwifi: pcie: add configuration of a Wi-Fi adapter on Dell XPS 15 (Íñigo Huguet) [2004141] - mac80211: Fix Ptk0 rekey documentation (Íñigo Huguet) [2004141] - mac80211: check return value of rhashtable_init (Íñigo Huguet) [2004141] - mac80211: fix use-after-free in CCMP/GCMP RX (Íñigo Huguet) [2004141] - mac80211-hwsim: fix late beacon hrtimer handling (Íñigo Huguet) [2004141] - mac80211: mesh: fix potentially unaligned access (Íñigo Huguet) [2004141] - mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap (Íñigo Huguet) [2004141] - mac80211: Drop frames from invalid MAC address in ad-hoc mode (Íñigo Huguet) [2004141] - mac80211: Fix ieee80211_amsdu_aggregate frag_tail bug (Íñigo Huguet) [2004141] - Revert "mac80211: do not use low data rates for data frames with no ack flag" (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: missing unlock in iwl_mvm_wowlan_program_keys() (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: Fix off by ones in iwl_mvm_wowlan_get_rsc_v5_data() (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix possible NULL dereference (Íñigo Huguet) [2004141] - iwlwifi: fix printk format warnings in uefi.c (Íñigo Huguet) [2004141] - iwlwifi: pnvm: Fix a memory leak in 'iwl_pnvm_get_from_fs()' (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 66 for AX devices (Íñigo Huguet) [2004141] - iwlwifi Add support for ax201 in Samsung Galaxy Book Flex2 Alpha (Íñigo Huguet) [2004141] - iwlwifi: mvm: add rtnl_lock() in iwl_mvm_start_get_nvm() (Íñigo Huguet) [2004141] - net: qrtr: revert check in qrtr_endpoint_post() (Íñigo Huguet) [2004141] - net: qrtr: make checks in qrtr_endpoint_post() stricter (Íñigo Huguet) [2004141] - intel: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2004141] - mwifiex: pcie: add reset_d3cold quirk for Surface gen4+ devices (Íñigo Huguet) [2004141] - mwifiex: pcie: add DMI-based quirk implementation for Surface devices (Íñigo Huguet) [2004141] - brcmfmac: pcie: fix oops on failure to resume and reprobe (Íñigo Huguet) [2004141] - brcmfmac: Add WPA3 Personal with FT to supported cipher suites (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Fix initialization of place in _rtl92c_phy_get_rightchnlplace() (Íñigo Huguet) [2004141] - rtw88: add quirk to disable pci caps on HP Pavilion 14-ce0xxx (Íñigo Huguet) [2004141] - ath9k: fix sleeping in atomic context (Íñigo Huguet) [2004141] - ath9k: fix OOB read ar9300_eeprom_restore_internal (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't use FW key ID in beacon protection (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix scan channel flags settings (Íñigo Huguet) [2004141] - iwlwifi: mvm: support broadcast TWT alone (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_stored_beacon_notif_v3 (Íñigo Huguet) [2004141] - iwlwifi: move get pnvm file name to a separate function (Íñigo Huguet) [2004141] - iwlwifi: mvm: add support for responder config command version 9 (Íñigo Huguet) [2004141] - iwlwifi: mvm: add support for range request command version 13 (Íñigo Huguet) [2004141] - iwlwifi: allow debug init in RF-kill (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't schedule the roc_done_wk if it is already running (Íñigo Huguet) [2004141] - iwlwifi: yoyo: support for new DBGI_SRAM region (Íñigo Huguet) [2004141] - iwlwifi: add 'Rx control frame to MBSSID' HE capability (Íñigo Huguet) [2004141] - iwlwifi: fw: fix debug dump data declarations (Íñigo Huguet) [2004141] - iwlwifi: api: remove datamember from struct (Íñigo Huguet) [2004141] - iwlwifi: fix __percpu annotation (Íñigo Huguet) [2004141] - iwlwifi: pcie: avoid dma unmap/remap in crash dump (Íñigo Huguet) [2004141] - iwlwifi: acpi: fill in SAR tables with defaults (Íñigo Huguet) [2004141] - iwlwifi: acpi: fill in WGDS table with defaults (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 65 for AX devices (Íñigo Huguet) [2004141] - iwlwifi: acpi: support reading and storing WGDS revision 2 (Íñigo Huguet) [2004141] - iwlwifi: mvm: load regdomain at INIT stage (Íñigo Huguet) [2004141] - iwlwifi: mvm: Read the PPAG and SAR tables at INIT stage (Íñigo Huguet) [2004141] - iwlwifi: mvm: trigger WRT when no beacon heard (Íñigo Huguet) [2004141] - iwlwifi: fw: correctly limit to monitor dump (Íñigo Huguet) [2004141] - iwlwifi: skip first element in the WTAS ACPI table (Íñigo Huguet) [2004141] - iwlwifi: mvm: support version 11 of wowlan statuses notification (Íñigo Huguet) [2004141] - iwlwifi: convert flat GEO profile table to a struct version (Íñigo Huguet) [2004141] - iwlwifi: remove unused ACPI_WGDS_TABLE_SIZE definition (Íñigo Huguet) [2004141] - iwlwifi: support reading and storing EWRD revisions 1 and 2 (Íñigo Huguet) [2004141] - iwlwifi: acpi: support reading and storing WRDS revision 1 and 2 (Íñigo Huguet) [2004141] - iwlwifi: pass number of chains and sub-bands to iwl_sar_set_profile() (Íñigo Huguet) [2004141] - iwlwifi: remove ACPI_SAR_NUM_TABLES definition (Íñigo Huguet) [2004141] - iwlwifi: convert flat SAR profile table to a struct version (Íñigo Huguet) [2004141] - iwlwifi: rename ACPI_SAR_NUM_CHAIN_LIMITS to ACPI_SAR_NUM_CHAINS (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix access to BSS elements (Íñigo Huguet) [2004141] - iwlwifi: mvm: Refactor setting of SSIDs for 6GHz scan (Íñigo Huguet) [2004141] - iwlwifi: mvm: silently drop encrypted frames for unknown station (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: implement RSC command version 5 (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: make key reprogramming iteration optional (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: add separate key iteration for GTK type (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: refactor TSC/RSC configuration (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: remove fixed cmd_flags argument (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: separate TKIP data from key iteration (Íñigo Huguet) [2004141] - iwlwifi: mvm: simplify __iwl_mvm_set_sta_key() (Íñigo Huguet) [2004141] - iwlwifi: mvm: support new station key API (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix umac scan request probe parameters (Íñigo Huguet) [2004141] - iwlwifi: pcie: implement Bz reset flow (Íñigo Huguet) [2004141] - iwlwifi: implement Bz NMI behaviour (Íñigo Huguet) [2004141] - iwlwifi: pcie: implement Bz device startup (Íñigo Huguet) [2004141] - iwlwifi: read MAC address from correct place on Bz (Íñigo Huguet) [2004141] - iwlwifi: give Bz devices their own name (Íñigo Huguet) [2004141] - iwlwifi: split off Bz devices into their own family (Íñigo Huguet) [2004141] - iwlwifi: yoyo: cleanup internal buffer allocation in D3 (Íñigo Huguet) [2004141] - iwlwifi: mvm: treat MMPDUs in iwl_mvm_mac_tx() as bcast (Íñigo Huguet) [2004141] - iwlwifi: mvm: clean up number of HW queues (Íñigo Huguet) [2004141] - iwlwifi: mvm: avoid static queue number aliasing (Íñigo Huguet) [2004141] - iwlwifi: use DEFINE_MUTEX() for mutex lock (Íñigo Huguet) [2004141] - iwlwifi: remove trailing semicolon in macro definition (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix a memory leak in iwl_mvm_mac_ctxt_beacon_changed (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix old-style static const declaration (Íñigo Huguet) [2004141] - iwlwifi: mvm: remove check for vif in iwl_mvm_vif_from_mac80211() (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove spaces from queue names (Íñigo Huguet) [2004141] - iwlwifi: mvm: restrict FW SMPS request (Íñigo Huguet) [2004141] - iwlwifi: mvm: set replay counter on key install (Íñigo Huguet) [2004141] - iwlwifi: mvm: remove trigger EAPOL time event (Íñigo Huguet) [2004141] - iwlwifi: iwl-dbg-tlv: add info about loading external dbg bin (Íñigo Huguet) [2004141] - iwlwifi: mvm: Add support for hidden network scan on 6GHz band (Íñigo Huguet) [2004141] - iwlwifi: mvm: Do not use full SSIDs in 6GHz scan (Íñigo Huguet) [2004141] - iwlwifi: print PNVM complete notification status in hexadecimal (Íñigo Huguet) [2004141] - iwlwifi: pcie: dump error on FW reset handshake failures (Íñigo Huguet) [2004141] - iwlwifi: prepare for synchronous error dumps (Íñigo Huguet) [2004141] - iwlwifi: pcie: free RBs during configure (Íñigo Huguet) [2004141] - iwlwifi: pcie: optimise struct iwl_rx_mem_buffer layout (Íñigo Huguet) [2004141] - iwlwifi: mvm: avoid FW restart while shutting down (Íñigo Huguet) [2004141] - iwlwifi: nvm: enable IEEE80211_HE_PHY_CAP10_HE_MU_M1RU_MAX_LTF (Íñigo Huguet) [2004141] - iwlwifi: mvm: set BROADCAST_TWT_SUPPORTED in MAC policy (Íñigo Huguet) [2004141] - iwlwifi: iwl-nvm-parse: set STBC flags for HE phy capabilities (Íñigo Huguet) [2004141] - cfg80211: use wiphy DFS domain if it is self-managed (Íñigo Huguet) [2004141] - mac80211: parse transmit power envelope element (Íñigo Huguet) [2004141] - ieee80211: add definition for transmit power envelope element (Íñigo Huguet) [2004141] - ieee80211: add definition of regulatory info in 6 GHz operation information (Íñigo Huguet) [2004141] - mac80211: introduce individual TWT support in AP mode (Íñigo Huguet) [2004141] - ieee80211: add TWT element definitions (Íñigo Huguet) [2004141] - brcmsmac: make array addr static const, makes object smaller (Íñigo Huguet) [2004141] - rtw88: Remove unnecessary check code (Íñigo Huguet) [2004141] - rtw88: wow: fix size access error of probe request (Íñigo Huguet) [2004141] - rtw88: wow: report wow reason through mac80211 api (Íñigo Huguet) [2004141] - rtw88: wow: build wow function only if CONFIG_PM is on (Íñigo Huguet) [2004141] - rtw88: refine the setting of rsvd pages for different firmware (Íñigo Huguet) [2004141] - rtw88: use read_poll_timeout instead of fixed sleep (Íñigo Huguet) [2004141] - rtw88: 8822ce: set CLKREQ# signal to low during suspend (Íñigo Huguet) [2004141] - rtw88: change beacon filter default mode (Íñigo Huguet) [2004141] - rtw88: 8822c: add tx stbc support under HT mode (Íñigo Huguet) [2004141] - rtw88: adjust the log level for failure of tx report (Íñigo Huguet) [2004141] - rtl8xxxu: Fix the handling of TX A-MPDU aggregation (Íñigo Huguet) [2004141] - rtl8xxxu: disable interrupt_in transfer for 8188cu and 8192cu (Íñigo Huguet) [2004141] - mwifiex: make arrays static const, makes object smaller (Íñigo Huguet) [2004141] - mwifiex: usb: Replace one-element array with flexible-array member (Íñigo Huguet) [2004141] - mwifiex: drop redundant null-pointer check in mwifiex_dnld_cmd_to_fw() (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: make arrays static const, makes object smaller (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Remove redundant variable initializations (Íñigo Huguet) [2004141] - ray_cs: Split memcpy() to avoid bounds check warning (Íñigo Huguet) [2004141] - ray_cs: use *ph to print small buffer (Íñigo Huguet) [2004141] - brcmfmac: add 43752 SDIO ids and initialization (Íñigo Huguet) [2004141] - brcmfmac: Set SDIO workqueue as WQ_HIGHPRI (Íñigo Huguet) [2004141] - brcmfmac: use separate firmware for 43430 revision 2 (Íñigo Huguet) [2004141] - brcmfmac: support chipsets with different core enumeration space (Íñigo Huguet) [2004141] - brcmfmac: add xtlv support to firmware interface layer (Íñigo Huguet) [2004141] - brcmfmac: increase core revision column aligning core list (Íñigo Huguet) [2004141] - brcmfmac: use different error value for invalid ram base address (Íñigo Huguet) [2004141] - brcmfmac: firmware: Fix firmware loading (Íñigo Huguet) [2004141] - net: qrtr: fix another OOB Read in qrtr_endpoint_post (Íñigo Huguet) [2004141] - cfg80211: fix BSS color notify trace enum confusion (Íñigo Huguet) [2004141] - mac80211: fix locking in ieee80211_restart_work() (Íñigo Huguet) [2004141] - mac80211: Fix insufficient headroom issue for AMSDU (Íñigo Huguet) [2004141] - mac80211: add support for BSS color change (Íñigo Huguet) [2004141] - nl80211: add support for BSS coloring (Íñigo Huguet) [2004141] - mac80211: Use flex-array for radiotap header bitmap (Íñigo Huguet) [2004141] - mac80211: radiotap: Use BIT() instead of shifts (Íñigo Huguet) [2004141] - mac80211: Remove unnecessary variable and label (Íñigo Huguet) [2004141] - mac80211: include (Íñigo Huguet) [2004141] - mac80211: Fix monitor MTU limit so that A-MSDUs get through (Íñigo Huguet) [2004141] - mac80211: remove unnecessary NULL check in ieee80211_register_hw() (Íñigo Huguet) [2004141] - mac80211: Reject zero MAC address in sta_info_insert_check() (Íñigo Huguet) [2004141] - mt76: fix enum type mismatch (Íñigo Huguet) [2004141] - bus: mhi: core: Improve debug messages for power up (Íñigo Huguet) [2004141] - bus: mhi: core: Replace DMA allocation wrappers with original APIs (Íñigo Huguet) [2004141] - bus: mhi: core: Add range checks for BHI and BHIe (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Set register access length for MHI driver (Íñigo Huguet) [2004141] - ath11k: set register access length for MHI driver (Íñigo Huguet) [2004141] - bus: mhi: Add MMIO region length to controller structure (Íñigo Huguet) [2004141] - bus: mhi: core: Set BHI and BHIe pointers to NULL in clean-up (Íñigo Huguet) [2004141] - bus: mhi: core: Set BHI/BHIe offsets on power up preparation (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add Cinterion MV31-W PCIe to MHI (Íñigo Huguet) [2004141] - Revert "mhi: Fix networking tree build." (Íñigo Huguet) [2004141] - mhi: Fix networking tree build. (Íñigo Huguet) [2004141] - brcmfmac: firmware: Allow per-board firmware binaries (Íñigo Huguet) [2004141] - iwlwifi: add new so-jf devices (Íñigo Huguet) [2004141] - iwlwifi: add new SoF with JF devices (Íñigo Huguet) [2004141] - iwlwifi: pnvm: accept multiple HW-type TLVs (Íñigo Huguet) [2004141] - cfg80211: Fix possible memory leak in function cfg80211_bss_update (Íñigo Huguet) [2004141] - nl80211: limit band information in non-split data (Íñigo Huguet) [2004141] - mac80211: fix enabling 4-address mode on a sta vif after assoc (Íñigo Huguet) [2004141] - mac80211: fix starting aggregation sessions on mesh interfaces (Íñigo Huguet) [2004141] - mac80211: Do not strip skb headroom on monitor frames (Íñigo Huguet) [2004141] - net: mhi: Remove MBIM protocol (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Fix inbound IPCR channel (Íñigo Huguet) [2004141] - bus: mhi: core: Validate channel ID when processing command completions (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Apply no-op for wake using sideband wake boolean (Íñigo Huguet) [2004141] - net: mhi: Improve MBIM packet counting (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: configurable network interface MRU (Íñigo Huguet) [2004141] - mt76: mt7921: Fix fall-through warning for Clang (Íñigo Huguet) [2004141] - mt76: mt7921: continue to probe driver when fw already downloaded (Íñigo Huguet) [2004141] - ath11k: Remove some duplicate code (Íñigo Huguet) [2004141] - ath: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2004141] - iwlwifi: acpi: remove unused function iwl_acpi_eval_dsm_func() (Íñigo Huguet) [2004141] - rtw88: fix c2h memory leak (Íñigo Huguet) [2004141] - brcmfmac: support parse country code map from DT (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: Add missing 'pci_disable_pcie_error_reporting()' calls (Íñigo Huguet) [2004141] - bus: mhi: Wait for M2 state during system resume (Íñigo Huguet) [2004141] - bus: mhi: core: Fix power down latency (Íñigo Huguet) [2004141] - brcmfmac: Silence error messages about unsupported firmware features (Íñigo Huguet) [2004141] - cfg80211: Add wiphy_info_once() (Íñigo Huguet) [2004141] - mac80211: Switch to a virtual time-based airtime scheduler (Íñigo Huguet) [2004141] - Revert "mac80211: HE STA disassoc due to QOS NULL not sent" (Íñigo Huguet) [2004141] - mac80211: remove iwlwifi specific workaround NDPs of null_response (Íñigo Huguet) [2004141] - mac80211: fix NULL ptr dereference during mesh peer connection for non HE devices (Íñigo Huguet) [2004141] - mac80211: Enable power save after receiving NULL packet ACK (Íñigo Huguet) [2004141] - mac80211: add HE 6 GHz capability only if supported (Íñigo Huguet) [2004141] - mac80211: notify driver on mgd TX completion (Íñigo Huguet) [2004141] - mac80211: always include HE 6GHz capability in probe request (Íñigo Huguet) [2004141] - mac80211: add vendor-specific capabilities to assoc request (Íñigo Huguet) [2004141] - cfg80211: allow advertising vendor-specific capabilities (Íñigo Huguet) [2004141] - cfg80211: set custom regdomain after wiphy registration (Íñigo Huguet) [2004141] - cfg80211: Support hidden AP discovery over 6GHz band (Íñigo Huguet) [2004141] - mac80211: conditionally advertise HE in probe requests (Íñigo Huguet) [2004141] - cfg80211: add cfg80211_any_usable_channels() (Íñigo Huguet) [2004141] - cfg80211: reg: improve bad regulatory warning (Íñigo Huguet) [2004141] - nl80211: Fix typo pmsr->pmsr (Íñigo Huguet) [2004141] - mac80211: fix some spelling mistakes (Íñigo Huguet) [2004141] - cfg80211: remove ieee80211_get_he_sta_cap() (Íñigo Huguet) [2004141] - mac80211: remove use of ieee80211_get_he_sta_cap() (Íñigo Huguet) [2004141] - cfg80211: trace more information in assoc trace event (Íñigo Huguet) [2004141] - mac80211: improve AP disconnect message (Íñigo Huguet) [2004141] - mac80211: rearrange struct txq_info for fewer holes (Íñigo Huguet) [2004141] - ieee80211: add defines for HE PHY cap byte 10 (Íñigo Huguet) [2004141] - mac80211: Properly WARN on HW scan before restart (Íñigo Huguet) [2004141] - nl80211/cfg80211: add BSS color to NDP ranging parameters (Íñigo Huguet) [2004141] - mac80211: add to bss_conf if broadcast TWT is supported (Íñigo Huguet) [2004141] - mac80211: move SMPS mode setting after ieee80211_prep_connection (Íñigo Huguet) [2004141] - mac80211: free skb in WEP error case (Íñigo Huguet) [2004141] - mac80211: handle rate control (RC) racing with chanctx definition (Íñigo Huguet) [2004141] - ieee80211: define timing measurement in extended capabilities IE (Íñigo Huguet) [2004141] - mac80211_hwsim: record stats in non-netlink path (Íñigo Huguet) [2004141] - ieee80211: add the value for Category '6' in "rtw_ieee80211_category" (Íñigo Huguet) [2004141] - mac80211: remove iwlwifi specific workaround that broke sta NDP tx (Íñigo Huguet) [2004141] - mac80211: allow SMPS requests only in client mode (Íñigo Huguet) [2004141] - mac80211: check per vif offload_flags in Tx path (Íñigo Huguet) [2004141] - mac80211: add rate control support for encap offload (Íñigo Huguet) [2004141] - mac80211: call ieee80211_tx_h_rate_ctrl() when dequeue (Íñigo Huguet) [2004141] - mac80211: move A-MPDU session check from minstrel_ht to mac80211 (Íñigo Huguet) [2004141] - cfg80211: expose the rfkill device to the low level driver (Íñigo Huguet) [2004141] - wireless: add check of field VHT Extended NSS BW Capable for 160/80+80 MHz setting (Íñigo Huguet) [2004141] - mac80211_hwsim: add concurrent channels scanning support over virtio (Íñigo Huguet) [2004141] - mac80211: don't open-code LED manipulations (Íñigo Huguet) [2004141] - mac80211: consider per-CPU statistics if present (Íñigo Huguet) [2004141] - cfg80211: fix default HE tx bitrate mask in 2G band (Íñigo Huguet) [2004141] - mac80211: remove the repeated declaration (Íñigo Huguet) [2004141] - mac80211: refactor rc_no_data_or_no_ack_use_min function (Íñigo Huguet) [2004141] - mac80211: do not use low data rates for data frames with no ack flag (Íñigo Huguet) [2004141] - mac80211: add ieee80211_is_tx_data helper function (Íñigo Huguet) [2004141] - mac80211: simplify ieee80211_add_station() (Íñigo Huguet) [2004141] - mac80211: use sdata->skb_queue for TDLS (Íñigo Huguet) [2004141] - mac80211: refactor SKB queue processing a bit (Íñigo Huguet) [2004141] - mac80211: unify queueing SKB to iface (Íñigo Huguet) [2004141] - mac80211: minstrel_ht: ignore frame that was sent with noAck flag (Íñigo Huguet) [2004141] - cfg80211: clean up variable use in cfg80211_parse_colocated_ap() (Íñigo Huguet) [2004141] - cfg80211: remove CFG80211_MAX_NUM_DIFFERENT_CHANNELS (Íñigo Huguet) [2004141] - mac80211: Remove redundant assignment to ret (Íñigo Huguet) [2004141] - net: wireless: wext_compat.c: Remove redundant assignment to ps (Íñigo Huguet) [2004141] - wireless: wext-spy: Fix out-of-bounds warning (Íñigo Huguet) [2004141] - ath11k: Avoid memcpy() over-reading of he_cap (Íñigo Huguet) [2004141] - mt7601u: add USB device ID for some versions of XiaoDu WiFi Dongle. (Íñigo Huguet) [2004141] - mwifiex: Avoid memset() over-write of WEP key_material (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Fully initialize curvecount_val (Íñigo Huguet) [2004141] - rtw88: coex: remove unnecessary variable and label (Íñigo Huguet) [2004141] - rtw88: add quirks to disable pci capabilities (Íñigo Huguet) [2004141] - rtw88: refine unwanted h2c command (Íñigo Huguet) [2004141] - rtw88: dump FW crash via devcoredump (Íñigo Huguet) [2004141] - rtw88: notify fw when driver in scan-period to avoid potential problem (Íñigo Huguet) [2004141] - rtw88: add rtw_fw_feature_check api (Íñigo Huguet) [2004141] - rtw88: 8822c: update RF parameter tables to v62 (Íñigo Huguet) [2004141] - rtw88: Remove duplicate include of coex.h (Íñigo Huguet) [2004141] - rtw88: 8822c: fix lc calibration timing (Íñigo Huguet) [2004141] - rtw88: add path diversity (Íñigo Huguet) [2004141] - rtw88: add beacon filter support (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 64 for AX devices (Íñigo Huguet) [2004141] - iwlwifi: fw: dump TCM error table if present (Íñigo Huguet) [2004141] - iwlwifi: add 9560 killer device (Íñigo Huguet) [2004141] - iwlwifi: move error dump to fw utils (Íñigo Huguet) [2004141] - iwlwifi: support loading the reduced power table from UEFI (Íñigo Huguet) [2004141] - iwlwifi: move UEFI code to a separate file (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_wowlan_get_status_cmd (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_wowlan_kek_kck_material_cmd_v4 (Íñigo Huguet) [2004141] - iwlwifi: mvm: update iwl_wowlan_patterns_cmd (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_proto_offload_cmd_v4 (Íñigo Huguet) [2004141] - iwlwifi: fix NUM_IWL_UCODE_TLV_* definitions to avoid sparse errors (Íñigo Huguet) [2004141] - iwlwifi: pcie: free some DMA memory earlier (Íñigo Huguet) [2004141] - iwlwifi: mvm: fill phy_data.d1 for no-data RX (Íñigo Huguet) [2004141] - iwlwifi: pcie: fix context info freeing (Íñigo Huguet) [2004141] - iwlwifi: pcie: free IML DMA memory allocation (Íñigo Huguet) [2004141] - iwlwifi: mvm: support LONG_GROUP for WOWLAN_GET_STATUSES version (Íñigo Huguet) [2004141] - iwlwifi: support ver 6 of WOWLAN_CONFIGURATION and ver 10 of WOWLAN_GET_STATUSES (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't request mac80211 to disable/enable sta's queues (Íñigo Huguet) [2004141] - iwlwifi: mvm: Explicitly stop session protection before unbinding (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove TR/CR tail allocations (Íñigo Huguet) [2004141] - iwlwifi: mvm: Read acpi dsm to get unii4 enable/disable bitmap. (Íñigo Huguet) [2004141] - iwlwifi: pcie: fix some kernel-doc comments (Íñigo Huguet) [2004141] - iwlwifi: advertise broadcast TWT support (Íñigo Huguet) [2004141] - iwlwifi: mvm: support LMR feedback (Íñigo Huguet) [2004141] - iwlwifi: correct HE capabilities (Íñigo Huguet) [2004141] - iwlwifi: mvm: Call NMI instead of REPLY_ERROR (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix error print when session protection ends (Íñigo Huguet) [2004141] - iwlwifi: mvm: honour firmware SMPS requests (Íñigo Huguet) [2004141] - iwlwifi: mvm: apply RX diversity per PHY context (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't request SMPS in AP mode (Íñigo Huguet) [2004141] - iwlwifi: pcie: identify the RF module (Íñigo Huguet) [2004141] - iwlwifi: yoyo: support region TLV version 2 (Íñigo Huguet) [2004141] - iwlwifi: remove duplicate iwl_ax201_cfg_qu_hr declaration (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove CSR_HW_RF_ID_TYPE_CHIP_ID (Íñigo Huguet) [2004141] - iwlwifi: pcie: print interrupt number, not index (Íñigo Huguet) [2004141] - iwlwifi: pcie: Add support for AX231 radio module with Ma devices (Íñigo Huguet) [2004141] - iwlwifi: increase PNVM load timeout (Íñigo Huguet) [2004141] - iwlwifi: pcie: handle pcim_iomap_table() failures better (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't change band on bound PHY contexts (Íñigo Huguet) [2004141] - iwlwifi: remove unused REMOTE_WAKE_CONFIG_CMD definitions (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix indentation in some scan functions (Íñigo Huguet) [2004141] - iwlwifi: mvm: pass the clock type to iwl_mvm_get_sync_time() (Íñigo Huguet) [2004141] - iwlwifi: mvm: support BIOS enable/disable for 11ax in Russia (Íñigo Huguet) [2004141] - ath11k: Enable QCN9074 device (Íñigo Huguet) [2004141] - ath10k: demote chan info without scan request warning (Íñigo Huguet) [2004141] - rtl8xxxu: avoid parsing short RX packet (Íñigo Huguet) [2004141] - rtl8xxxu: Fix device info for RTL8192EU devices (Íñigo Huguet) [2004141] - mt76: mt7921: allow chip reset during device restart (Íñigo Huguet) [2004141] - mt76: mt7615: set macwork timeout according to runtime-pm (Íñigo Huguet) [2004141] - mt76: mt7663s: enable runtime-pm (Íñigo Huguet) [2004141] - mt76: mt7663s: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Íñigo Huguet) [2004141] - mt76: mt7663s: rely on pm reference counting (Íñigo Huguet) [2004141] - mt76: sdio: do not run mt76_txq_schedule directly (Íñigo Huguet) [2004141] - mt76: mt7921: enable HE BFee capability (Íñigo Huguet) [2004141] - mt76: disable TWT capabilities for the moment (Íñigo Huguet) [2004141] - mt76: fix iv and CCMP header insertion (Íñigo Huguet) [2004141] - mt76: mt7921: fix the coredump is being truncated (Íñigo Huguet) [2004141] - mt76: mt7921: fix kernel warning when reset on vif is not sta (Íñigo Huguet) [2004141] - mt76: mt7921: introduce dedicated control for deep_sleep (Íñigo Huguet) [2004141] - mt76: mt7921: limit txpower according to userlevel power (Íñigo Huguet) [2004141] - mt76: mt7921: improve code readability for mt7921_update_txs (Íñigo Huguet) [2004141] - mt76: mt7915: fix IEEE80211_HE_PHY_CAP7_MAX_NC for station mode (Íñigo Huguet) [2004141] - mt76: use SPDX header file comment style (Íñigo Huguet) [2004141] - mt76: add a space between comment char and SPDX tag (Íñigo Huguet) [2004141] - mt76: mt7915: improve MU stability (Íñigo Huguet) [2004141] - mt76: mt7921: add deep sleep control to runtime-pm knob (Íñigo Huguet) [2004141] - mt76: mt7921: enable deep sleep at runtime (Íñigo Huguet) [2004141] - mt76: mt7915: introduce mt7915_mcu_set_txbf() (Íñigo Huguet) [2004141] - mt76: make mt76_update_survey() per phy (Íñigo Huguet) [2004141] - mt76: move mt76_get_next_pkt_id in mt76.h (Íñigo Huguet) [2004141] - mt76: reduce rx buffer size to 2048 (Íñigo Huguet) [2004141] - mt76: connac: fix the maximum interval schedule scan can support (Íñigo Huguet) [2004141] - mt76: mt7915: fix rx fcs error count in testmode (Íñigo Huguet) [2004141] - mt76: testmode: move chip-specific stats dump before common stats (Íñigo Huguet) [2004141] - mt76: connac: add mt76_connac_mcu_get_nic_capability utility routine (Íñigo Huguet) [2004141] - mt76: connac: check band caps in mt76_connac_mcu_set_rate_txpower (Íñigo Huguet) [2004141] - mt76: mt7915: drop the use of repeater entries for station interfaces (Íñigo Huguet) [2004141] - mt76: mt7921: enable VHT BFee capability (Íñigo Huguet) [2004141] - mt76: mt7921: make mt7921_set_channel static (Íñigo Huguet) [2004141] - mt76: mt7921: wake the device before dumping power table (Íñigo Huguet) [2004141] - mt76: connac: add mt76_connac_power_save_sched in mt76_connac_pm_unref (Íñigo Huguet) [2004141] - mt76: connac: fix UC entry is being overwritten (Íñigo Huguet) [2004141] - mt76: mt7615: update radar parameters (Íñigo Huguet) [2004141] - mt76: mt7915: setup drr group for peers (Íñigo Huguet) [2004141] - mt76: mt7921: enable random mac address during sched_scan (Íñigo Huguet) [2004141] - mt76: mt7921: remove mt7921_get_wtbl_info routine (Íñigo Huguet) [2004141] - mt76: mt7915: fix MT_EE_CAL_GROUP_SIZE (Íñigo Huguet) [2004141] - mt76: mt7915: improve error recovery reliability (Íñigo Huguet) [2004141] - mt76: mt7921: enable hw offloading for wep keys (Íñigo Huguet) [2004141] - mt76: mt7915: read all eeprom fields from fw in efuse mode (Íñigo Huguet) [2004141] - mt76: mt7921: set MT76_RESET during mac reset (Íñigo Huguet) [2004141] - mt76: mt7921: introduce mac tx done handling (Íñigo Huguet) [2004141] - mt76: allow hw driver code to overwrite wiphy interface_modes (Íñigo Huguet) [2004141] - mt76: mt7921: update statistic in active mode only (Íñigo Huguet) [2004141] - mt76: mt7915: use mt7915_mcu_get_mib_info() to get survey data (Íñigo Huguet) [2004141] - mt76: mt7615: fix potential overflow on large shift (Íñigo Huguet) [2004141] - mt76: testmode: remove undefined behaviour in mt76_testmode_alloc_skb (Íñigo Huguet) [2004141] - mt76: testmode: remove unnecessary function calls in mt76_testmode_free_skb (Íñigo Huguet) [2004141] - mt76: testmode: fix memory leak in mt76_testmode_alloc_skb (Íñigo Huguet) [2004141] - mt76: mt7615: remove useless if condition in mt7615_add_interface() (Íñigo Huguet) [2004141] - mt76: mt7915: use mt7915_mcu_get_txpower_sku() to get per-rate txpower (Íñigo Huguet) [2004141] - mt76: mt7615: add .offset_tsf callback (Íñigo Huguet) [2004141] - mt76: mt7915: add .offset_tsf callback (Íñigo Huguet) [2004141] - mt76: mt7921: reset wfsys during hw probe (Íñigo Huguet) [2004141] - mt76: mt7921: do not schedule hw reset if the device is not running (Íñigo Huguet) [2004141] - mt76: mt7921: return proper error value in mt7921_mac_init (Íñigo Huguet) [2004141] - mt76: mt7921: enable runtime pm by default (Íñigo Huguet) [2004141] - mt76: mt7921: fix OMAC idx usage (Íñigo Huguet) [2004141] - mt76: mt7921: fix invalid register access in wake_work (Íñigo Huguet) [2004141] - mt76: mt7921: avoid unnecessary consecutive WiFi resets (Íñigo Huguet) [2004141] - mt76: connac: update BA win size in Rx direction (Íñigo Huguet) [2004141] - mt76: connac: add bss color support for sta mode (Íñigo Huguet) [2004141] - mt76: mt7615: add thermal sensor device support (Íñigo Huguet) [2004141] - mt76: mt7915: add thermal cooling device support (Íñigo Huguet) [2004141] - mt76: mt7915: add thermal sensor device support (Íñigo Huguet) [2004141] - mt76: mt7921: fix reset under the deep sleep is enabled (Íñigo Huguet) [2004141] - mt76: mt7921: add back connection monitor support (Íñigo Huguet) [2004141] - mt76: mt7921: consider the invalid value for to_rssi (Íñigo Huguet) [2004141] - mt76: connac: fix WoW with disconnetion and bitmap pattern (Íñigo Huguet) [2004141] - mt76: connac: fw_own rely on all packet memory all being free (Íñigo Huguet) [2004141] - mt76: mt7921: Don't alter Rx path classifier (Íñigo Huguet) [2004141] - mt76: mt7921: fix mt7921_wfsys_reset sequence (Íñigo Huguet) [2004141] - mt76: mt7663: enable hw rx header translation (Íñigo Huguet) [2004141] - mt76: mt7615: free irq if mt7615_mmio_probe fails (Íñigo Huguet) [2004141] - mt76: mt76x0: use dev_debug instead of dev_err for hw_rf_ctrl (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx csum offload (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx header traslation offload (Íñigo Huguet) [2004141] - mt76: connac: add missing configuration in mt76_connac_mcu_wtbl_hdr_trans_tlv (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx hw de-amsdu (Íñigo Huguet) [2004141] - mt76: mt7915: fix a signedness bug in mt7915_mcu_apply_tx_dpd() (Íñigo Huguet) [2004141] - mt76: mt7615: fix NULL pointer dereference in tx_prepare_skb() (Íñigo Huguet) [2004141] - mt76: fix possible NULL pointer dereference in mt76_tx (Íñigo Huguet) [2004141] - mt76: mt7915: add .set_bitrate_mask() callback (Íñigo Huguet) [2004141] - mt76: mt7915: cleanup mt7915_mcu_sta_rate_ctrl_tlv() (Íñigo Huguet) [2004141] - mt76: mt7915: fix tssi indication field of DBDC NICs (Íñigo Huguet) [2004141] - mt76: move mt76_rates in mt76 module (Íñigo Huguet) [2004141] - mac80211: reset profile_periodicity/ema_ap (Íñigo Huguet) [2004141] - mac80211: handle various extensible elements correctly (Íñigo Huguet) [2004141] - cfg80211: avoid double free of PMSR request (Íñigo Huguet) [2004141] - cfg80211: make certificate generation more robust (Íñigo Huguet) [2004141] - mac80211: minstrel_ht: fix sample time check (Íñigo Huguet) [2004141] - mt76: mt7915: add support for tx status reporting (Íñigo Huguet) [2004141] - mt76: mt7915: rework tx rate reporting (Íñigo Huguet) [2004141] - mt76: dma: use ieee80211_tx_status_ext to free packets when tx fails (Íñigo Huguet) [2004141] - mt76: improve tx status codepath (Íñigo Huguet) [2004141] - mt76: intialize tx queue entry wcid to 0xffff by default (Íñigo Huguet) [2004141] - mt76: mt7603: avoid use of ieee80211_tx_info_clear_status (Íñigo Huguet) [2004141] - mt76: mt7615: avoid use of ieee80211_tx_info_clear_status (Íñigo Huguet) [2004141] - mt76: mt7615: fix fixed-rate tx status reporting (Íñigo Huguet) [2004141] - mt76: mt7915: move mt7915_queue_rx_skb to mac.c (Íñigo Huguet) [2004141] - mt76: mt7915: disable ASPM (Íñigo Huguet) [2004141] - mt76: mt7915: add MSI support (Íñigo Huguet) [2004141] - ath11k: send beacon template after vdev_start/restart during csa (Íñigo Huguet) [2004141] - ath10k: Use devm_platform_get_and_ioremap_resource() (Íñigo Huguet) [2004141] - ath10k: remove the repeated declaration (Íñigo Huguet) [2004141] - ath10k: Fix an error code in ath10k_add_interface() (Íñigo Huguet) [2004141] - ath11k: Fix an error handling path in ath11k_core_fetch_board_data_api_n() (Íñigo Huguet) [2004141] - ath: Fix wrong function name in comments (Íñigo Huguet) [2004141] - rtlwifi: Fix spelling of 'download' (Íñigo Huguet) [2004141] - rtlwifi: Remove redundant assignments to ul_enc_algo (Íñigo Huguet) [2004141] - rtlwifi: rtl8723ae: remove redundant initialization of variable rtstatus (Íñigo Huguet) [2004141] - rtlwifi: btcoex: 21a 2ant: Delete several duplicate condition branch codes (Íñigo Huguet) [2004141] - rtlwifi: 8821a: btcoexist: add comments to explain why if-else branches are identical (Íñigo Huguet) [2004141] - rt2x00: do not set timestamp for injected frames (Íñigo Huguet) [2004141] - rndis_wlan: simplify is_associated() (Íñigo Huguet) [2004141] - rt2x00: remove leading spaces before tabs (Íñigo Huguet) [2004141] - rtlwifi: Fix wrong function name in comments (Íñigo Huguet) [2004141] - brcmsmac: Remove the repeated declaration (Íñigo Huguet) [2004141] - brcmsmac: mac80211_if: Fix a resource leak in an error handling path (Íñigo Huguet) [2004141] - brcmsmac: Drop unnecessary NULL check after container_of (Íñigo Huguet) [2004141] - brcmsmac: improve readability on addresses copy (Íñigo Huguet) [2004141] - brcmfmac: Add clm_blob firmware files to modinfo (Íñigo Huguet) [2004141] - brcmfmac: Delete second brcm folder hierarchy (Íñigo Huguet) [2004141] - brcmfmac: Fix a double-free in brcmf_sdio_bus_reset (Íñigo Huguet) [2004141] - brcmfmac: Demote non-compliant kernel-doc headers (Íñigo Huguet) [2004141] - brcmfmac: correctly report average RSSI in station info (Íñigo Huguet) [2004141] - brcmfmac: fix setting of station info chains bitmask (Íñigo Huguet) [2004141] - brcmfmac: use ISO3166 country code and 0 rev as fallback (Íñigo Huguet) [2004141] - ath10k: remove unused more_frags variable (Íñigo Huguet) [2004141] - ath10k: add missing error return code in ath10k_pci_probe() (Íñigo Huguet) [2004141] - ath10k: go to path err_unsupported when chip id is not supported (Íñigo Huguet) [2004141] - ath11k: don't call ath11k_pci_set_l1ss for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add support for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add support to get peer id for WCN6855 (Íñigo Huguet) [2004141] - ath11k: setup WBM_IDLE_LINK ring once again (Íñigo Huguet) [2004141] - ath11k: setup REO for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add dp support for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add hw reg support for WCN6855 (Íñigo Huguet) [2004141] - ath9k: Fix kernel NULL pointer dereference during ath_reset_internal() (Íñigo Huguet) [2004141] - mwifiex: bring down link before deleting interface (Íñigo Huguet) [2004141] - mt76: mt7615: Use devm_platform_get_and_ioremap_resource() (Íñigo Huguet) [2004141] - wwan: core: add WWAN common private data for netdev (Íñigo Huguet) [2004141] - wwan: core: support default netdev creation (Íñigo Huguet) [2004141] - wwan: core: no more hold netdev ops owning module (Íñigo Huguet) [2004141] - net: mhi_net: Update the transmit handler prototype (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: Fix hibernation (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Fix possible use-after-free in mhi_pci_remove() (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: T99W175: update channel name from AT to DUN (Íñigo Huguet) [2004141] - mac80211: drop multicast fragments (Íñigo Huguet) [2004141] - mac80211: move interface shutdown out of wiphy lock (Íñigo Huguet) [2004141] - cfg80211: shut down interfaces on failed resume (Íñigo Huguet) [2004141] - cfg80211: fix phy80211 symlink creation (Íñigo Huguet) [2004141] - mac80211: fix 'reset' debugfs locking (Íñigo Huguet) [2004141] - mac80211: fix deadlock in AP/VLAN handling (Íñigo Huguet) [2004141] - mac80211: Fix NULL ptr deref for injected rate info (Íñigo Huguet) [2004141] - mac80211: fix skb length check in ieee80211_scan_rx() (Íñigo Huguet) [2004141] - mac80211: correct ieee80211_iterate_active_interfaces_mtx() locking comments (Íñigo Huguet) [2004141] - cfg80211: call cfg80211_leave_ocb when switching away from OCB (Íñigo Huguet) [2004141] - mac80211_hwsim: drop pending frames on stop (Íñigo Huguet) [2004141] - mac80211: remove warning in ieee80211_get_sband() (Íñigo Huguet) [2004141] - mt76: mt7921: remove leftover 80+80 HE capability (Íñigo Huguet) [2004141] - mt76: mt7615: do not set MT76_STATE_PM at bootstrap (Íñigo Huguet) [2004141] - ath9k: ar9003_mac: read STBC indicator from rx descriptor (Íñigo Huguet) [2004141] - ath10k/ath11k: fix spelling mistake "requed" -> "requeued" (Íñigo Huguet) [2004141] - mwifiex: re-fix for unaligned accesses (Íñigo Huguet) [2004141] - mt76: mt76x0e: fix device hang during suspend/resume (Íñigo Huguet) [2004141] - mt76: mt7921: fix max aggregation subframes setting (Íñigo Huguet) [2004141] - mt76: connac: fix HT A-MPDU setting field in STA_REC_PHY (Íñigo Huguet) [2004141] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [2004141] - mt76: mt7921: fix possible AOOB issue in mt7921_mcu_tx_rate_report (Íñigo Huguet) [2004141] - brcmfmac: properly check for bus register errors (Íñigo Huguet) [2004141] - Revert "brcmfmac: add a check for the status of usb_register" (Íñigo Huguet) [2004141] - net: rtlwifi: properly check for alloc_workqueue() failure (Íñigo Huguet) [2004141] - Revert "rtlwifi: fix a potential NULL pointer dereference" (Íñigo Huguet) [2004141] - wl3501_cs: Fix out-of-bounds warnings in wl3501_mgmt_join (Íñigo Huguet) [2004141] - wl3501_cs: Fix out-of-bounds warnings in wl3501_send_pkt (Íñigo Huguet) [2004141] - iwlwifi: mvm: tt: Replace thermal_notify_framework (Íñigo Huguet) [2004141] - mt76: debugfs: introduce napi_threaded node (Íñigo Huguet) [2004141] - wl3501: fix typo of 'Networks' in comment (Íñigo Huguet) [2004141] - mt76: use threaded NAPI (Íñigo Huguet) [2004141] - net: mhi_net: make mhi_wwan_ops static (Íñigo Huguet) [2004141] - net: mhi_net: Register wwan_ops for link creation (Íñigo Huguet) [2004141] - net: mhi: remove pointless conditional before kfree_skb() (Íñigo Huguet) [2004141] - net: mhi: Allow decoupled MTU/MRU (Íñigo Huguet) [2004141] - net: mhi: Add support for non-linear MBIM skb processing (Íñigo Huguet) [2004141] - bus: mhi: fix typo in comments for struct mhi_channel_config (Íñigo Huguet) [2004141] - bus: mhi: core: Fix shadow declarations (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Constify mhi_controller_config struct definitions (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Introduce Foxconn T99W175 support (Íñigo Huguet) [2004141] - bus: mhi: core: Sanity check values from remote device before use (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add FIREHOSE channels (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Implement PCI shutdown callback (Íñigo Huguet) [2004141] - bus: mhi: Improve documentation on channel transfer setup APIs (Íñigo Huguet) [2004141] - bus: mhi: core: Remove __ prefix for MHI channel unprepare function (Íñigo Huguet) [2004141] - bus: mhi: core: Check channel execution environment before issuing reset (Íñigo Huguet) [2004141] - bus: mhi: core: Clear configuration from channel context during reset (Íñigo Huguet) [2004141] - bus: mhi: core: Hold device wake for channel update commands (Íñigo Huguet) [2004141] - bus: mhi: core: Update debug messages to use client device (Íñigo Huguet) [2004141] - bus: mhi: core: Improvements to the channel handling state machine (Íñigo Huguet) [2004141] - bus: mhi: core: Clear context for stopped channels from remove() (Íñigo Huguet) [2004141] - bus: mhi: core: Allow sending the STOP channel command (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add SDX65 based modem support (Íñigo Huguet) [2004141] - bus: mhi: core: Remove pre_init flag used for power purposes (Íñigo Huguet) [2004141] - bus: mhi: pm: reduce PM state change verbosity (Íñigo Huguet) [2004141] - bus: mhi: core: Fix MHI runtime_pm behavior (Íñigo Huguet) [2004141] - bus: mhi: core: Move to polling method to wait for MHI ready (Íñigo Huguet) [2004141] - bus: mhi: core: Introduce internal register poll helper function (Íñigo Huguet) [2004141] - bus: mhi: core: Improve state strings for debug messages (Íñigo Huguet) [2004141] - bus: mhi: core: Wait for MHI READY state in most scenarios (Íñigo Huguet) [2004141] - bus: mhi: core: Identify Flash Programmer as a mission mode use case (Íñigo Huguet) [2004141] - bus: mhi: core: Add support for Flash Programmer execution environment (Íñigo Huguet) [2004141] - bus: mhi: core: Handle EDL mode entry appropriately (Íñigo Huguet) [2004141] - bus: mhi: core: Wait for ready after an EDL firmware download (Íñigo Huguet) [2004141] - bus: mhi: core: Rely on accurate method to determine EDL mode (Íñigo Huguet) [2004141] - bus: mhi: core: Check state before processing power_down (Íñigo Huguet) [2004141] - bus: mhi: core: Return EAGAIN if MHI ring is full (Íñigo Huguet) [2004141] - net: export dev_set_threaded symbol (Íñigo Huguet) [2004141] - bus: mhi: core: remove redundant initialization of variables state and ee (Íñigo Huguet) [2004141] - bus: mhi: Make firmware image optional for controller (Íñigo Huguet) [2004141] - bus: mhi: core: Add missing checks for MMIO register entries (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add support for runtime PM (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Use generic PCI power management (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: No-Op for device_wake operations (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add SDX24 based modem support (Íñigo Huguet) [2004141] - bus: mhi: Early MHI resume failure in non M3 state (Íñigo Huguet) [2004141] - bus: mhi: core: Update debug prints to include local device state (Íñigo Huguet) [2004141] - bus: mhi: core: Process execution environment changes serially (Íñigo Huguet) [2004141] - bus: mhi: core: Download AMSS image from appropriate function (Íñigo Huguet) [2004141] - bus: mhi: core: Destroy SBL devices when moving to mission mode (Íñigo Huguet) [2004141] - bus: mhi: core: Rename debugfs directory name (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Introduce quectel EM1XXGR-L support (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Parametrable element count for events (Íñigo Huguet) [2004141] - ath10k: Detect conf_mutex held ath10k_drain_tx() calls (Íñigo Huguet) [2004141] - net: mhi: Add mbim proto (Íñigo Huguet) [2004141] - net: mhi: Add rx_length_errors stat (Íñigo Huguet) [2004141] - net: mhi: Create mhi.h (Íñigo Huguet) [2004141] - net: mhi: Add dedicated folder (Íñigo Huguet) [2004141] - net: mhi: Add protocol support (Íñigo Huguet) [2004141] - net: mhi-net: Add re-aggregation of fragmented packets (Íñigo Huguet) [2004141] - net: mhi: Get rid of local rx queue count (Íñigo Huguet) [2004141] - net: mhi: Get RX queue size from MHI core (Íñigo Huguet) [2004141] - net: mhi: Set wwan device type (Íñigo Huguet) [2004141] - net: mhi: Add raw IP mode support (Íñigo Huguet) [2004141] - net: mhi: Fix unexpected queue wake (Íñigo Huguet) [2004141] - net: Add mhi-net driver (Íñigo Huguet) [2004141] - ipv4: make exception cache less predictible (Antoine Tenart) [2015111] {CVE-2021-20322} - ipv4: use siphash instead of Jenkins in fnhe_hashfun() (Antoine Tenart) [2015111] {CVE-2021-20322} - iommu/dma: Account for min_align_mask w/swiotlb (Jerry Snitselaar) [2018601] - swiotlb: Support aligned swiotlb buffers (Jerry Snitselaar) [2018601] - iommu/dma: Check CONFIG_SWIOTLB more broadly (Jerry Snitselaar) [2018601] - iommu/dma: Fold _swiotlb helpers into callers (Jerry Snitselaar) [2018601] - iommu/dma: Skip extra sync during unmap w/swiotlb (Jerry Snitselaar) [2018601] - iommu/dma: Fix arch_sync_dma for map (Jerry Snitselaar) [2018601] - iommu/dma: Fix sync_sg with swiotlb (Jerry Snitselaar) [2018601] - redhat/configs: Add CONFIG_DMA_RESTRICTED_POOL (Jerry Snitselaar) [2018601] - swiotlb: use depends on for DMA_RESTRICTED_POOL (Jerry Snitselaar) [2018601] - powerpc/svm: Don't issue ultracalls if !mem_encrypt_active() (Jerry Snitselaar) [2018601] - s390/pv: fix the forcing of the swiotlb (Jerry Snitselaar) [2018601] - swiotlb: Free tbl memory in swiotlb_exit() (Jerry Snitselaar) [2018601] - swiotlb: Emit diagnostic in swiotlb_exit() (Jerry Snitselaar) [2018601] - swiotlb: Convert io_default_tlb_mem to static allocation (Jerry Snitselaar) [2018601] - swiotlb: fix implicit debugfs declarations (Jerry Snitselaar) [2018601] - swiotlb: Add restricted DMA pool initialization (Jerry Snitselaar) [2018601] - swiotlb: Add restricted DMA alloc/free support (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb_tbl_unmap_single (Jerry Snitselaar) [2018601] - swiotlb: Move alloc_size to swiotlb_find_slots (Jerry Snitselaar) [2018601] - swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing (Jerry Snitselaar) [2018601] - swiotlb: Update is_swiotlb_active to add a struct device argument (Jerry Snitselaar) [2018601] - swiotlb: Update is_swiotlb_buffer to add a struct device argument (Jerry Snitselaar) [2018601] - swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb_create_debugfs (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb init functions (Jerry Snitselaar) [2018601] - of: Drop superfluous ULL suffix for ~0 (Jerry Snitselaar) [2018601] - dma-mapping: fix 32-bit overflow with CONFIG_ARM_LPAE=n (Jerry Snitselaar) [2018601] - of/device: Update dma_range_map only when dev has valid dma-ranges (Jerry Snitselaar) [2018601] - drivers core: Fix oops when driver probe fails (Jerry Snitselaar) [2018601] - drivers core: Free dma_range_map when driver probe failed (Jerry Snitselaar) [2018601] - driver core: Postpone DMA tear-down until after devres release for probe failure (Jerry Snitselaar) [2018601] - powerpc/pseries/iommu: Fix window size for direct mapping with pmem (Jerry Snitselaar) [2018601] - dma-mapping: add a dma_init_global_coherent helper (Jerry Snitselaar) [2018601] - dma-mapping: simplify dma_init_coherent_memory (Jerry Snitselaar) [2018601] - dma-debug: fix debugfs initialization order (Jerry Snitselaar) [2018601] - dma-debug: teach add_dma_entry() about DMA_ATTR_SKIP_CPU_SYNC (Jerry Snitselaar) [2018601] - dma-debug: fix sg checks in debug_dma_map_sg() (Jerry Snitselaar) [2018601] - swiotlb-xen: ensure to issue well-formed XENMEM_exchange requests (Jerry Snitselaar) [2018601] - dma-debug: prevent an error message from causing runtime problems (Jerry Snitselaar) [2018601] - swiotlb-xen: drop DEFAULT_NSLABS (Jerry Snitselaar) [2018601] - swiotlb-xen: arrange to have buffer info logged (Jerry Snitselaar) [2018601] - swiotlb-xen: drop leftover __ref (Jerry Snitselaar) [2018601] - swiotlb-xen: limit init retries (Jerry Snitselaar) [2018601] - swiotlb-xen: suppress certain init retries (Jerry Snitselaar) [2018601] - swiotlb-xen: maintain slab count properly (Jerry Snitselaar) [2018601] - swiotlb-xen: fix late init retry (Jerry Snitselaar) [2018601] - swiotlb-xen: avoid double free (Jerry Snitselaar) [2018601] - dma-mapping: handle vmalloc addresses in dma_common_{mmap,get_sgtable} (Jerry Snitselaar) [2018601] - dma-debug: report -EEXIST errors in add_dma_entry (Jerry Snitselaar) [2018601] - dma-mapping: remove a trailing space (Jerry Snitselaar) [2018601] - dma-mapping: add unlikely hint to error path in dma_mapping_error (Jerry Snitselaar) [2018601] - dma-mapping: remove a pointless empty line in dma_alloc_coherent (Jerry Snitselaar) [2018601] - swiotlb: Make SWIOTLB_NO_FORCE perform no allocation (Jerry Snitselaar) [2018601] - swiotlb: remove swiotlb_nr_tbl (Jerry Snitselaar) [2018601] - xen/swiotlb: check if the swiotlb has already been initialized (Jerry Snitselaar) [2018601] - swiotlb: add overflow checks to swiotlb_bounce (Jerry Snitselaar) [2002023] - swiotlb: don't override user specified size in swiotlb_adjust_size (Jerry Snitselaar) [2002023] - swiotlb: dynamically allocate io_tlb_default_mem (Jerry Snitselaar) [2002023] - swiotlb: move global variables into a new io_tlb_mem structure (Jerry Snitselaar) [2002023] - xen-swiotlb: remove the unused size argument from xen_swiotlb_fixup (Jerry Snitselaar) [2018601] - xen-swiotlb: split xen_swiotlb_init (Jerry Snitselaar) [2018601] - swiotlb: lift the double initialization protection from xen-swiotlb (Jerry Snitselaar) [2002023] - xen-swiotlb: remove xen_io_tlb_start and xen_io_tlb_nslabs (Jerry Snitselaar) [2018601] - xen-swiotlb: remove xen_set_nslabs (Jerry Snitselaar) [2018601] - xen-swiotlb: use io_tlb_end in xen_swiotlb_dma_supported (Jerry Snitselaar) [2018601] - xen-swiotlb: use is_swiotlb_buffer in is_xen_swiotlb_buffer (Jerry Snitselaar) [2018601] - swiotlb: split swiotlb_tbl_sync_single (Jerry Snitselaar) [2002023] - swiotlb: manipulate orig_addr when tlb_addr has offset (Jerry Snitselaar) [2002023] - swiotlb: move orig addr and size validation into swiotlb_bounce (Jerry Snitselaar) [2002023] - swiotlb: remove the alloc_size parameter to swiotlb_tbl_unmap_single (Jerry Snitselaar) [2002023] - swiotlb: Fix the type of index (Jerry Snitselaar) [2018601] - swiotlb: Validate bounce size in the sync/unmap path (Jerry Snitselaar) [2002023] - powerpc/svm: stop using io_tlb_start (Jerry Snitselaar) [2002023] - nvme-pci: set min_align_mask (Jerry Snitselaar) [2002023] - swiotlb: respect min_align_mask (Jerry Snitselaar) [2002023] - swiotlb: don't modify orig_addr in swiotlb_tbl_sync_single (Jerry Snitselaar) [2002023] - swiotlb: refactor swiotlb_tbl_map_single (Jerry Snitselaar) [2002023] - swiotlb: clean up swiotlb_tbl_unmap_single (Jerry Snitselaar) [2002023] - swiotlb: factor out a nr_slots helper (Jerry Snitselaar) [2002023] - swiotlb: factor out an io_tlb_offset helper (Jerry Snitselaar) [2002023] - swiotlb: add a IO_TLB_SIZE define (Jerry Snitselaar) [2002023] - driver core: add a min_align_mask field to struct device_dma_parameters (Jerry Snitselaar) [2002023] - sdhci: stop poking into swiotlb internals (Jerry Snitselaar) [2018601] - driver core: lift dma_default_coherent into common code (Jerry Snitselaar) [2018601] - dma-pool: no need to check return value of debugfs_create functions (Jerry Snitselaar) [2018601] - powerpc/dma: Fallback to dma_ops when persistent memory present (Jerry Snitselaar) [2018601] - dma-mapping: Allow mixing bypass and mapped DMA operation (Jerry Snitselaar) [2018601] - dma-mapping: remove the dma_direct_set_offset export (Jerry Snitselaar) [2018601] - dma-mapping: move more functions to dma-map-ops.h (Jerry Snitselaar) [2018601] - dma-mapping: merge into (Jerry Snitselaar) [2018601] - dma-mapping: move large parts of to kernel/dma (Jerry Snitselaar) [2018601] - dma-mapping: add (back) arch_dma_mark_clean for ia64 (Jerry Snitselaar) [2018601] - dma-mapping: move dma-debug.h to kernel/dma/ (Jerry Snitselaar) [2018601] - dma-mapping: split (Jerry Snitselaar) [2018601] - dma-mapping: introduce DMA range map, supplanting dma_pfn_offset (Jerry Snitselaar) [2018601] - of: Make of_dma_get_range() private (Jerry Snitselaar) [2018601] - swiotlb: fix comment on swiotlb_bounce() (Jerry Snitselaar) [2018601] - xen/arm: introduce phys/dma translations in xen_dma_sync_for_* (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_dma_sync_for_device (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_dma_sync_for_cpu (Jerry Snitselaar) [2018601] - swiotlb-xen: introduce phys_to_dma/dma_to_phys translations (Jerry Snitselaar) [2018601] - swiotlb-xen: remove XEN_PFN_PHYS (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to is_xen_swiotlb_buffer (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_bus_to_phys (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_phys_to_bus (Jerry Snitselaar) [2018601] - swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses (Jerry Snitselaar) [2018601] - swiotlb-xen: Convert to use macro (Jerry Snitselaar) [2018601] - swiotlb-xen: merge xen_unmap_single into xen_swiotlb_unmap_page (Jerry Snitselaar) [2018601] - swiotlb-xen: remove xen_swiotlb_dma_mmap and xen_swiotlb_dma_get_sgtable (Jerry Snitselaar) [2018601] - xen/swiotlb: remember having called xen_create_contiguous_region() (Jerry Snitselaar) [2018601] - xen/swiotlb: simplify range_straddles_page_boundary() (Jerry Snitselaar) [2018601] - xen/swiotlb: fix condition for calling xen_destroy_contiguous_region() (Jerry Snitselaar) [2018601] - xen/swiotlb: don't initialize swiotlb twice on arm64 (Jerry Snitselaar) [2018601] - xen-swiotlb: use actually allocated size on check physical continuous (Jerry Snitselaar) [2018601] - igb: fix deadlock caused by taking RTNL in RPM resume path (Corinna Vinschen) [2039882] - igb: Fix removal of unicast MAC filters of VFs (Corinna Vinschen) [2039882] - net: ena: Fix error handling when calculating max IO queues number (Petr Oros) [2038158] - net: ena: Fix wrong rx request id by resetting device (Petr Oros) [2038158] - net: ena: Fix undefined state when tx request id is out of bounds (Petr Oros) [2038158] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Petr Oros) [2038158] - ena: Remove rcu_read_lock() around XDP program invocation (Petr Oros) [2038158] - net: ena: make symbol 'ena_alloc_map_page' static (Petr Oros) [2038158] - net: ena: fix DMA mapping function issues in XDP (Petr Oros) [2038158] - net: ena: re-organize code to improve readability (Petr Oros) [2038158] - net: ena: Use dev_alloc() in RX buffer allocation (Petr Oros) [2038158] - net: ena: aggregate doorbell common operations into a function (Petr Oros) [2038158] - net: ena: fix RST format in ENA documentation file (Petr Oros) [2038158] - net: ena: Remove module param and change message severity (Petr Oros) [2038158] - net: ena: add jiffies of last napi call to stats (Petr Oros) [2038158] - net: ena: use build_skb() in RX path (Petr Oros) [2038158] - net: ena: Improve error logging in driver (Petr Oros) [2038158] - net: ena: Remove unused code (Petr Oros) [2038158] - net: ena: optimize data access in fast-path code (Petr Oros) [2038158] - kasan, slub: reset tag when printing address (Nico Pache) [1954335] - kasan: fix Kconfig check of CC_HAS_WORKING_NOSANITIZE_ADDRESS (Nico Pache) [1954335] - Documentation: kunit: add tips for using current->kunit_test (Nico Pache) [1954335] - kunit: fix -Wunused-function warning for __kunit_fail_current_test (Nico Pache) [1954335] - kunit: support failure from dynamic analysis tools (Nico Pache) [1954335] - Add KASAN KUNIT Tests to Redhat kernel-modules-internal (Nico Pache) [1954335] - kasan, mm: fix resetting page_alloc tags for HW_TAGS (Nico Pache) [1954335] - kasan, mm: fix conflicts with init_on_alloc/free (Nico Pache) [1954335] - powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user() (Nico Pache) [1954335] - kasan: remove redundant config option (Nico Pache) [1954335] - kasan: fix hwasan build for gcc (Nico Pache) [1954335] - lib/test_kasan_module.c: suppress unused var warning (Nico Pache) [1954335] - kasan: fix conflict with page poisoning (Nico Pache) [1954335] - kasan: fix per-page tags for non-page_alloc pages (Nico Pache) [1954335] - kasan: fix KASAN_STACK dependency for HW_TAGS (Nico Pache) [1954335] - kasan: clarify that only first bug is reported in HW_TAGS (Nico Pache) [1954335] - kasan: inline HW_TAGS helper functions (Nico Pache) [1954335] - kasan: ensure poisoning size alignment (Nico Pache) [1954335] - kasan, mm: optimize krealloc poisoning (Nico Pache) [1954335] - kasan, mm: fail krealloc on freed objects (Nico Pache) [1954335] - kasan: rework krealloc tests (Nico Pache) [1954335] - kasan: unify large kfree checks (Nico Pache) [1954335] - kasan: clean up setting free info in kasan_slab_free (Nico Pache) [1954335] - kasan: optimize large kmalloc poisoning (Nico Pache) [1954335] - kasan, mm: optimize kmalloc poisoning (Nico Pache) [1954335] - kasan, mm: don't save alloc stacks twice (Nico Pache) [1954335] - kasan: don't run tests when KASAN is not enabled (Nico Pache) [1954335] - kasan: add a test for kmem_cache_alloc/free_bulk (Nico Pache) [1954335] - kasan: add proper page allocator tests (Nico Pache) [1954335] - kasan: fix bug detection via ksize for HW_TAGS mode (Nico Pache) [1954335] - kasan: move _RET_IP_ to inline wrappers (Nico Pache) [1954335] - kasan: fix memory corruption in kasan_bitops_tags test (Nico Pache) [1954335] - kasan: rename CONFIG_TEST_KASAN_MODULE (Nico Pache) [1954335] - kasan: add match-all tag tests (Nico Pache) [1954335] - kasan: add macros to simplify checking test constraints (Nico Pache) [1954335] - kasan: clean up comments in tests (Nico Pache) [1954335] - kasan: clarify HW_TAGS impact on TBI (Nico Pache) [1954335] - kasan: prefix global functions with kasan_ (Nico Pache) [1954335] - kasan: fix stack traces dependency for HW_TAGS (Nico Pache) [1954335] - kasan: make addr_has_metadata() return true for valid addresses (Nico Pache) [1954335] - kasan: add explicit preconditions to kasan_report() (Nico Pache) [1954335] - kasan: fix HW_TAGS boot parameters (Nico Pache) [1954335] - kasan: fix null pointer dereference in kasan_record_aux_stack (Nico Pache) [1954335] - kasan: update documentation (Nico Pache) [1954335] - kasan, mm: allow cache merging with no metadata (Nico Pache) [1954335] - kasan: sanitize objects when metadata doesn't fit (Nico Pache) [1954335] - kasan: clarify comment in __kasan_kfree_large (Nico Pache) [1954335] - kasan: simplify assign_tag and set_tag calls (Nico Pache) [1954335] - kasan: don't round_up too much (Nico Pache) [1954335] - kasan, mm: rename kasan_poison_kfree (Nico Pache) [1954335] - kasan, mm: check kasan_enabled in annotations (Nico Pache) [1954335] - kasan: add and integrate kasan boot parameters (Nico Pache) [1954335] - kasan: inline (un)poison_range and check_invalid_free (Nico Pache) [1954335] - kasan: open-code kasan_unpoison_slab (Nico Pache) [1954335] - kasan: inline random_tag for HW_TAGS (Nico Pache) [1954335] - kasan: inline kasan_reset_tag for tag-based modes (Nico Pache) [1954335] - kasan: remove __kasan_unpoison_stack (Nico Pache) [1954335] - kasan: allow VMAP_STACK for HW_TAGS mode (Nico Pache) [1954335] - kasan, arm64: unpoison stack only with CONFIG_KASAN_STACK (Nico Pache) [1954335] - kasan: introduce set_alloc_info (Nico Pache) [1954335] - kasan: rename get_alloc/free_info (Nico Pache) [1954335] - kasan: simplify quarantine_put call site (Nico Pache) [1954335] - kasan: add documentation for hardware tag-based mode (Nico Pache) [1954335] - kasan, mm: reset tags when accessing metadata (Nico Pache) [1954335] - kasan, arm64: print report from tag fault handler (Nico Pache) [1954335] - kasan, arm64: implement HW_TAGS runtime (Nico Pache) [1954335] - kasan, arm64: expand CONFIG_KASAN checks (Nico Pache) [1954335] - string.h: fix incompatibility between FORTIFY_SOURCE and KASAN (Nico Pache) [1954335] - kasan, x86, s390: update undef CONFIG_KASAN (Nico Pache) [1954335] - kasan: define KASAN_GRANULE_SIZE for HW_TAGS (Nico Pache) [1954335] - arm64: kasan: add arch layer for memory tagging helpers (Nico Pache) [1954335] - kasan, mm: untag page address in free_reserved_area (Nico Pache) [1954335] - mm: Allow non-direct-map arguments to free_reserved_area() (Nico Pache) [1954335] - kasan: introduce CONFIG_KASAN_HW_TAGS (Nico Pache) [1954335] - kasan: separate metadata_fetch_row for each mode (Nico Pache) [1954335] - kasan: rename SHADOW layout macros to META (Nico Pache) [1954335] - kasan: rename print_shadow_for_address to print_memory_metadata (Nico Pache) [1954335] - kasan: rename addr_has_shadow to addr_has_metadata (Nico Pache) [1954335] - kasan, arm64: rename kasan_init_tags and mark as __init (Nico Pache) [1954335] - kasan, arm64: move initialization message (Nico Pache) [1954335] - kasan, arm64: only use kasan_depth for software modes (Nico Pache) [1954335] - kasan, arm64: only init shadow for software modes (Nico Pache) [1954335] - kasan: decode stack frame only with KASAN_STACK_ENABLE (Nico Pache) [1954335] - kasan: hide invalid free check implementation (Nico Pache) [1954335] - kasan: don't duplicate config dependencies (Nico Pache) [1954335] - kasan: rename report and tags files (Nico Pache) [1954335] - kasan: define KASAN_MEMORY_PER_SHADOW_PAGE (Nico Pache) [1954335] - kasan: split out shadow.c from common.c (Nico Pache) [1954335] - kasan: only build init.c for software modes (Nico Pache) [1954335] - kasan: rename KASAN_SHADOW_* to KASAN_GRANULE_* (Nico Pache) [1954335] - kasan: rename (un)poison_shadow to (un)poison_range (Nico Pache) [1954335] - fork: support VMAP_STACK with KASAN_VMALLOC (Nico Pache) [1954335] - kasan: shadow declarations only for software modes (Nico Pache) [1954335] - kasan: group vmalloc code (Nico Pache) [1954335] - kasan: KASAN_VMALLOC depends on KASAN_GENERIC (Nico Pache) [1954335] - kasan: drop unnecessary GPL text from comment headers (Nico Pache) [1954335] - kasan: update documentation for generic kasan (Nico Pache) [1954335] - kasan: print workqueue stack (Nico Pache) [1954335] - kasan: fix object remaining in offline per-cpu quarantine (Nico Pache) [1954335] - kasan: adopt KUNIT tests to SW_TAGS mode (Nico Pache) [1954335] - docs: kasan.rst: add two missing blank lines (Nico Pache) [1954335] - mm: kasan: do not panic if both panic_on_warn and kasan_multishot set (Nico Pache) [1954335] - KASAN: Testing Documentation (Nico Pache) [1954335] - KASAN: port KASAN Tests to KUnit (Nico Pache) [1954335] - KUnit: KASAN Integration (Nico Pache) [1954335] - kasan/kunit: add KUnit Struct to Current Task (Nico Pache) [1954335] - kasan: remove mentions of unsupported Clang versions (Nico Pache) [1954335] - kbuild: move CFLAGS_{KASAN,UBSAN,KCSAN} exports to relevant Makefiles (Nico Pache) [1954335] - s390/kasan: make shadow memory noexec (Nico Pache) [1954335] - kasan: adjust kasan_stack_oob for tag-based mode (Nico Pache) [1954335] - kasan: allow enabling stack tagging for tag-based mode (Nico Pache) [1954335] - kasan: don't tag stacks allocated with pagealloc (Nico Pache) [1954335] - lib/test_kasan.c: fix KASAN unit tests for tag-based KASAN (Nico Pache) [1954335] - kasan: remove kasan_unpoison_stack_above_sp_to() (Nico Pache) [1954335] - kasan: add tests for call_rcu stack recording (Nico Pache) [1954335] - kprobes: Remove show_registers() function prototype (Nico Pache) [1954335] - kasan: stop tests being eliminated as dead code with FORTIFY_SOURCE (Nico Pache) [1954335] - kasan: move kasan_report() into report.c (Nico Pache) [1954335] - kasan: stackdepot: move filter_irq_stacks() to stackdepot.c (Nico Pache) [1954335] - lib/stackdepot.c: check depot_index before accessing the stack slab (Nico Pache) [1954335] - lib/stackdepot: Remove obsolete functions (Nico Pache) [1954335] - kasan: add test for invalid size in memmove (Nico Pache) [1954335] - mm/memory-failure.c: use page_shift() in add_to_kill() (Nico Pache) [1954335] - x86: get rid of small constant size cases in raw_copy_{to,from}_user() (Nico Pache) [1954335] - s390/kasan: add KASAN_VMALLOC support (Nico Pache) [1954335] - s390: move vmalloc option parsing to startup code (Nico Pache) [1954335] - kasan: add test for vmalloc (Nico Pache) [1954335] - ehea: replace with page_shift() in ehea_is_hugepage() (Nico Pache) [1954335] - mm: introduce page_shift() (Nico Pache) [1954335] - lib/test_kasan.c: add roundtrip tests (Nico Pache) [1954335] - lib/test_kasan: Add test for double-kzfree detection (Nico Pache) [1954335] - lib/test_kasan: add bitops tests (Nico Pache) [1954335] - asm-generic, x86: add bitops instrumentation for KASAN (Nico Pache) [1954335] - x86: use static_cpu_has in uaccess region to avoid instrumentation (Nico Pache) [1954335] - x86/asm: Use stricter assembly constraints in bitops (Nico Pache) [1954335] - x86/asm: Remove dead __GNUC__ conditionals (Nico Pache) [1954335] - s390/kasan: adapt disabled_wait usage to avoid build error (Nico Pache) [1954335] - s390: simplify disabled_wait (Nico Pache) [1954335] - lib/test_kasan.c: add tests for several string/memory API functions (Nico Pache) [1954335] - arm64: Fix typo in a comment in arch/arm64/mm/kasan_init.c (Nico Pache) [1954335] - kprobes: Remove jprobe stub API (Nico Pache) [1954335] - Documentation/kprobes: Add how to change the execution path (Nico Pache) [1954335] - kprobes/x86: Do not disable preempt on int3 path (Nico Pache) [1954335] - bpf/error-inject/kprobes: Clear current_kprobe and enable preempt in kprobe (Nico Pache) [1954335] - s390/kprobes: Don't call the ->break_handler() in s390 kprobes code (Nico Pache) [1954335] - powerpc/kprobes: Don't call the ->break_handler() in powerpc kprobes code (Nico Pache) [1954335] - arm64/kprobes: Don't call the ->break_handler() in arm64 kprobes code (Nico Pache) [1954335] - kprobes/x86: Don't call the ->break_handler() in x86 kprobes (Nico Pache) [1954335] - kprobes: Don't check the ->break_handler() in generic kprobes code (Nico Pache) [1954335] - kprobes/x86: Remove jprobe implementation (Nico Pache) [1954335] - s390/kprobes: Remove jprobe implementation (Nico Pache) [1954335] - powerpc/kprobes: Remove jprobe powerpc implementation (Nico Pache) [1954335] - arm64/kprobes: Remove jprobe implementation (Nico Pache) [1954335] - kprobes: Remove jprobe API implementation (Nico Pache) [1954335] - Documentation/kprobes: Remove jprobes related leftover (Nico Pache) [1954335] - redhat: config: explicitly set CONFIG_ARM64_VA_BITS_48 for ARM64 (Nico Pache) [1954335] - arm64: mm: use a 48-bit ID map when possible on 52-bit VA builds (Nico Pache) [1954335] - arm64: mm: limit linear region to 51 bits for KVM in nVHE mode (Nico Pache) [1954335] - Documentation/arm64: fix RST layout of memory.rst (Nico Pache) [1954335] - arm64: mm: Remove MAX_USER_VA_BITS definition (Nico Pache) [1954335] - arm64: Use simpler arithmetics for the linear map macros (Nico Pache) [1954335] - arm64: mm: use single quantity to represent the PA to VA translation (Nico Pache) [1954335] - kasan/arm64: fix CONFIG_KASAN_SW_TAGS && KASAN_INLINE (Nico Pache) [1954335] - arm64: Do not pass tagged addresses to __is_lm_address() (Nico Pache) [1954335] - arm64: Fix kernel address detection of __is_lm_address() (Nico Pache) [1954335] - arm64: mm: extend linear region for 52-bit VA configurations (Nico Pache) [1954335] - arm64: Fix kcore macros after 52-bit virtual addressing fallout (Nico Pache) [1954335] - arm64: fix fixmap copy for 16K pages and 48-bit VA (Nico Pache) [1954335] - arm64: memory: rename VA_START to PAGE_END (Nico Pache) [1954335] - arm64: memory: Simplify _VA_START and _PAGE_OFFSET definitions (Nico Pache) [1954335] - arm64: memory: fix flipped VA space fallout (Nico Pache) [1954335] - arm64: memory: Fix virt_addr_valid() using __is_lm_address() (Nico Pache) [1954335] - arm64: memory: Ensure address tag is masked in conversion macros (Nico Pache) [1954335] - arm64: mm: Simplify definition of virt_addr_valid() (Nico Pache) [1954335] - docs: arm64: Add layout and 52-bit info to memory document (Nico Pache) [1954335] - arm64: mm: Remove vabits_user (Nico Pache) [1954335] - arm64: mm: Introduce 52-bit Kernel VAs (Nico Pache) [1954335] - arm64: mm: Modify calculation of VMEMMAP_SIZE (Nico Pache) [1954335] - arm64: mm: Separate out vmemmap (Nico Pache) [1954335] - arm64: mm: Logic to make offset_ttbr1 conditional (Nico Pache) [1954335] - arm64: mm: Introduce vabits_actual (Nico Pache) [1954335] - arm64: Print physical address of page table base in show_pte() (Nico Pache) [1954335] - arm64: mm: Introduce VA_BITS_MIN (Nico Pache) [1954335] - arm64: dump: De-constify VA_START and KASAN_SHADOW_START (Nico Pache) [1954335] - arm64: kasan: Switch to using KASAN_SHADOW_OFFSET (Nico Pache) [1954335] - arm64: mm: Flip kernel VA space (Nico Pache) [1954335] - arm64: mm: Remove bit-masking optimisations for PAGE_OFFSET and VMEMMAP_START (Nico Pache) [1954335] - arm64: dump: Use consistent capitalisation for page-table dumps (Nico Pache) [1954335] - kernel/rwsem: Use proper directories for rwsem_init.c (Scott Wood) [2040087] - redhat: Cleanup use of mark_hardware_removed (Prarit Bhargava) [2019378] - redhat: Cleanup use of mark_hardware_unsupported (Prarit Bhargava) [2019378] - redhat: clean up mark_hardware_deprecated() (Prarit Bhargava) [2019378] - nvme: Mark NVMe over FC Target support unmaintained (Prarit Bhargava) [2019378] - hdlc_fr: Mark driver unmaintained (Prarit Bhargava) [2019378] - sfc: Mark siena driver deprecated (Prarit Bhargava) [2019378] - qla3xxx: Mark driver unmaintained (Prarit Bhargava) [2019378] - netxen: Mark nic driver unmaintained (Prarit Bhargava) [2019378] - ethoc: Mark driver unmaintained (Prarit Bhargava) [2019378] - dnet: Mark driver unmaintained (Prarit Bhargava) [2019378] - drivers/pci/pci-driver.c: Fix if/ifdef typo (Prarit Bhargava) [2019378] - kernel/rh_taint.c: Update to new messaging (Prarit Bhargava) [2019378] - drm/i915/dmc: Change max DMC FW size on ADL-P (Michel Dänzer) [1988103] - drm/i915: Add workaround numbers to GEN7_COMMON_SLICE_CHICKEN1 whitelisting (Michel Dänzer) [1988103] - drm/i915: Fix Memory BW formulae for ADL-P (Michel Dänzer) [1988103] - drm/i915: Restore memory mapping for DPT FBs across system suspend/resume (Michel Dänzer) [1988103] - drm/i915: Factor out i915_ggtt_suspend_vm/i915_ggtt_resume_vm() (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Remove restriction on CCS AUX plane strides (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Remove restriction on semiplanar UV plane offset (Michel Dänzer) [1988103] - drm/i915/fb: Rename i915_color_plane_view::stride to mapping_stride (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Fix remapping of linear CCS AUX surfaces (Michel Dänzer) [1988103] - drm/i915/fb: Factor out functions to remap contiguous FB obj pages (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Prevent the mapping of redundant trailing padding NULL pages (Michel Dänzer) [1988103] - drm/i915: Add functions to check for RC CCS CC and MC CCS modifiers (Michel Dänzer) [1988103] - drm/i915: Move is_ccs_modifier() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Add a platform independent way to check for CCS AUX planes (Michel Dänzer) [1988103] - drm/i915: Handle CCS CC planes separately from CCS AUX planes (Michel Dänzer) [1988103] - drm/i915: Add a platform independent way to get the RC CCS CC plane (Michel Dänzer) [1988103] - drm/i915: Move intel_format_info_is_yuv_semiplanar() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Unexport is_semiplanar_uv_plane() (Michel Dänzer) [1988103] - drm/i915: Simplify the modifier check for interlaced scanout support (Michel Dänzer) [1988103] - drm/i915: Add tiling attribute to the modifier descriptor (Michel Dänzer) [1988103] - drm/i915: Move intel_get_format_info() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Add a table with a descriptor for all i915 modifiers (Michel Dänzer) [1988103] - drm/i915/adlp: Implement workaround 16013190616 (Michel Dänzer) [1988103] - drm/i915/adlp: Extend PSR2 support in transcoder B (Michel Dänzer) [1988103] - drm/i915/display: Wait PSR2 get out of deep sleep to update pipe (Michel Dänzer) [1988103] - drm/i915/display/adlp: Allow PSR2 to be enabled (Michel Dänzer) [1988103] - drm/i915/display/adlp: Optimize PSR2 power-savings in corner cases (Michel Dänzer) [1988103] - drm/i915/display: Fix glitches when moving cursor with PSR2 selective fetch enabled (Michel Dänzer) [1988103] - drm/i915/display: Handle frontbuffer rendering when PSR2 selective fetch is enabled (Michel Dänzer) [1988103] - drm/i915/display: Drop unnecessary frontbuffer flushes (Michel Dänzer) [1988103] - drm/i915/display/psr: Do full fetch when handling multi-planar formats (Michel Dänzer) [1988103] - drm/i915/display/psr: Handle plane and pipe restrictions at every page flip (Michel Dänzer) [1988103] - drm/i915/display: Only keep PSR enabled if there is active planes (Michel Dänzer) [1988103] - drm/i915/display: Match PSR2 selective fetch sequences with specification (Michel Dänzer) [1988103] - drm/i915/display/dmc: Set DC_STATE_DEBUG_MASK_CORES after firmware load (Michel Dänzer) [1988103] - drm/i915: Nuke intel_prepare_shared_dpll() (Michel Dänzer) [1988103] - drm/i915: Fold ibx_pch_dpll_prepare() into ibx_pch_dpll_enable() (Michel Dänzer) [1988103] - drm/i915: Fold i9xx_set_pll_dividers() into i9xx_enable_pll() (Michel Dänzer) [1988103] - drm/i915: Reuse ilk_needs_fb_cb_tune() for the reduced clock as well (Michel Dänzer) [1988103] - drm/i915: Call {vlv,chv}_prepare_pll() from {vlv,chv}_enable_pll() (Michel Dänzer) [1988103] - drm/i915: Program DPLL P1 dividers consistently (Michel Dänzer) [1988103] - drm/i915: Remove the 'reg' local variable (Michel Dänzer) [1988103] - drm/i915: Clean up variable names in old dpll functions (Michel Dänzer) [1988103] - drm/i915: Clean dpll calling convention (Michel Dänzer) [1988103] - drm/i915: Constify struct dpll all over (Michel Dänzer) [1988103] - drm/i915: Extract ilk_update_pll_dividers() (Michel Dänzer) [1988103] - drm/i915: Clean up gen2 DPLL readout (Michel Dänzer) [1988103] - drm/i915: Set output_types to EDP for vlv/chv DPLL forcing (Michel Dänzer) [1988103] - drm/i915: Silence __iomem sparse warn (Michel Dänzer) [1988103] - drm/i915: split fdi link training from display vtable. (Michel Dänzer) [1988103] - drm/i915: split irq hotplug function from display vtable (Michel Dänzer) [1988103] - drm/i915: split cdclk functions from display vtable. (Michel Dänzer) [1988103] - drm/i915: split audio functions from display vtable (Michel Dänzer) [1988103] - drm/i915: split color functions from display vtable (Michel Dänzer) [1988103] - drm/i915: split watermark vfuncs from display vtable. (Michel Dänzer) [1988103] - drm/i915: split clock gating init from display vtable (Michel Dänzer) [1988103] - drm/i915/display: add intel_fdi_link_train wrapper. (Michel Dänzer) [1988103] - drm/i915: add wrappers around cdclk vtable funcs. (Michel Dänzer) [1988103] - drm/i915/wm: provide wrappers around watermark vfuncs calls (v3) (Michel Dänzer) [1988103] - drm/i915: make update_wm take a dev_priv. (Michel Dänzer) [1988103] - drm/i915/pm: drop get_fifo_size vfunc. (Michel Dänzer) [1988103] - drm/i915: Clean up pre-skl wm calling convention (Michel Dänzer) [1988103] - drm/i915/dmc: Update to DMC v2.12 (Michel Dänzer) [1988103] - drm/i915: Implement PSF GV point support (Michel Dänzer) [1988103] - drm/i915: Extend QGV point restrict mask to 0x3 (Michel Dänzer) [1988103] - drm/i915/display: Disable audio, DRRS and PSR before planes (Michel Dänzer) [1988103] - drm/i915: Make display workaround upper bounds exclusive (Michel Dänzer) [1988103] - drm/i915: Program DFR enable/disable as a GT workaround (Michel Dänzer) [1988103] - drm/i915/step: s/_revid_tbl/_revids (Michel Dänzer) [1988103] - drm/i915/display: Settle on "adl-x" in WA comments (Michel Dänzer) [1988103] - drm/i915: Settle on "adl-x" in WA comments (Michel Dänzer) [1988103] - drm/i915/display/adlp: Disable underrun recovery (Michel Dänzer) [1988103] - drm/i915/tc: Fix system hang on ADL-P during TypeC PHY disconnect (Michel Dänzer) [1988103] - drm/i915/tc: Drop extra TC cold blocking from intel_tc_port_connected() (Michel Dänzer) [1988103] - drm/i915/tc: Fix TypeC PHY connect/disconnect logic on ADL-P (Michel Dänzer) [1988103] - drm/i915/icl/tc: Remove the ICL special casing during TC-cold blocking (Michel Dänzer) [1988103] - drm/i915/tc: Avoid using legacy AUX PW in TBT mode (Michel Dänzer) [1988103] - drm/i915/tc: Refactor TC-cold block/unblock helpers (Michel Dänzer) [1988103] - drm/i915/tc: Add a mode for the TypeC PHY's disconnected state (Michel Dänzer) [1988103] - drm/i915/tc: Don't keep legacy TypeC ports in connected state w/o a sink (Michel Dänzer) [1988103] - drm/i915/tc: Add/use helpers to retrieve TypeC port properties (Michel Dänzer) [1988103] - drm/i915/tc: Check for DP-alt, legacy sinks before taking PHY ownership (Michel Dänzer) [1988103] - drm/i915/tc: Remove waiting for PHY complete during releasing ownership (Michel Dänzer) [1988103] - drm/i915/adlp/tc: Fix PHY connected check for Thunderbolt mode (Michel Dänzer) [1988103] - drm/i915: Force a TypeC PHY disconnect during suspend/shutdown (Michel Dänzer) [1988103] - drm/i915/adlp: Add support for remapping CCS FBs (Michel Dänzer) [1988103] - drm/i915: Follow a new->old platform check order in intel_fb_stride_alignment (Michel Dänzer) [1988103] - drm/i915/adlp: Assert that VMAs in DPT start at 0 (Michel Dänzer) [1988103] - drm/i915/adlp: Require always a power-of-two sized CCS surface stride (Michel Dänzer) [1988103] - drm/i915: Use tile block based dimensions for CCS origin x, y check (Michel Dänzer) [1988103] - drm/i915/fb: move user framebuffer stuff to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/display: split out dpt out of intel_display.c (Michel Dänzer) [1988103] - drm/i915/fb: move intel_surf_alignment() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: add HAS_ASYNC_FLIPS feature macro (Michel Dänzer) [1988103] - drm/i915/fb: move intel_fb_align_height() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/fb: move intel_tile_width_bytes() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/display/adlp: Add new PSR2 workarounds (Michel Dänzer) [1988103] - drm/i915: Program chicken bit during DP MST sequence on TGL+ (Michel Dänzer) [1988103] - drm/i915/display: Workaround cursor left overs with PSR2 selective fetch enabled (Michel Dänzer) [1988103] - drm/i915/display/adlp: Fix PSR2_MAN_TRK_CTL_SU_REGION_END_ADDR calculation (Michel Dänzer) [1988103] - drm/i915: Update memory bandwidth parameters (Michel Dänzer) [1988103] - drm/i915/dp: fix for ADL_P/S dp/edp max source rates (Michel Dänzer) [1988103] - drm/i915/dp: fix DG1 and RKL max source rates (Michel Dänzer) [1988103] - drm/i915/dp: fix EHL/JSL max source rates calculation (Michel Dänzer) [1988103] - drm/i915/dp: fix TGL and ICL max source rates (Michel Dänzer) [1988103] - drm/i915/dp: Fix eDP max rate for display 11+ (Michel Dänzer) [1988103] - drm/i915/dp: fix DG2 max source rate check (Michel Dänzer) [1988103] - drm/i915/dg2: add DG2 UHBR source rates (Michel Dänzer) [1988103] - drm/i915/display: remove explicit CNL handling from intel_dp.c (Michel Dänzer) [1988103] - drm/i915/dsi/xelpd: Enable mipi dsi support. (Michel Dänzer) [1988103] - drm/i915/dsi/xelpd: Add WA to program LP to HS wakeup guardband (Michel Dänzer) [1988103] - drm/i915/display: Update small joiner ram size (Michel Dänzer) [1988103] - drm/i915/adl_p: Also disable underrun recovery with MSO (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Correctly program MBUS DBOX A credits (Michel Dänzer) [1988103] - drm/i915: Apply CMTG clock disabling WA while DPLL0 is enabled (Michel Dänzer) [1988103] - drm/i915/adl_p: Add ddi buf translation tables for combo PHY (Michel Dänzer) [1988103] - drm/i915/adl_s: Update ddi buf translation tables (Michel Dänzer) [1988103] - drm/i915: Add the missing adls vswing tables (Michel Dänzer) [1988103] - drm/i915/adlp: Add workaround to disable CMTG clock gating (Michel Dänzer) [1988103] - drm/i915/adl_p: Allow underrun recovery when possible (Michel Dänzer) [1988103] - drm/i915: Add dummy IS_DG2 definition (Michel Dänzer) [1988103] - drm/i915: Extend Wa_1406941453 to adl-p (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement PSR changes (Michel Dänzer) [1988103] - drm/i915/debugfs: DISPLAY_VER 13 lpsp capability (Michel Dänzer) [1988103] - drm/i915/adlp: Add ADL-P GuC/HuC firmware files (Michel Dänzer) [1988103] - drm/i915/huc: Update TGL and friends to HuC 7.9.3 (Michel Dänzer) [1988103] - drm/i915/guc: Update firmware to v62.0.0 (Michel Dänzer) [1988103] - drm/i915/guc: Introduce unified HXG messages (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_16011303918 (Michel Dänzer) [1988103] - drm/i915/xelpd: Handle PSR2 SDP indication in the prior scanline (Michel Dänzer) [1988103] - drm/i915/display/psr: Handle SU Y granularity (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_16011168373 (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_22012278275 (Michel Dänzer) [1988103] - drm/i915: Nuke buf_trans hdmi functions (Michel Dänzer) [1988103] - drm/i915: Clean up jsl/ehl buf trans functions (Michel Dänzer) [1988103] - drm/i915: Fix ehl edp hbr2 vswing table (Michel Dänzer) [1988103] - drm/i915: Deduplicate icl DP HBR2 vs. eDP HBR3 table (Michel Dänzer) [1988103] - drm/i915: Fix dg1 buf trans tables (Michel Dänzer) [1988103] - drm/i915: Introduce rkl_get_combo_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Clean up hsw/bdw/skl/kbl buf trans funcs (Michel Dänzer) [1988103] - drm/i915: Introduce encoder->get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Store the HDMI default entry in the bug trans struct (Michel Dänzer) [1988103] - drm/i915; Return the whole buf_trans struct from get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Introduce intel_get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Wrap the buf trans tables into a struct (Michel Dänzer) [1988103] - drm/i915: Rename dkl phy buf trans tables (Michel Dänzer) [1988103] - drm/i915: Wrap the platform specific buf trans structs into a union (Michel Dänzer) [1988103] - drm/i915: Introduce hsw_get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: s/intel/hsw/ for hsw/bdw/skl buf trans (Michel Dänzer) [1988103] - drm/i915/adl_p: Load DMC (Michel Dänzer) [1988103] - drm/i915/adl_p: Pipe B DMC Support (Michel Dänzer) [1988103] - drm/i915/xelpd: Pipe A DMC plugging (Michel Dänzer) [1988103] - drm/i915/dmc: Introduce DMC_FW_MAIN (Michel Dänzer) [1988103] - drm/i915/adl_p: Add initial ADL_P Workarounds (Michel Dänzer) [1988103] - drm/i915/xelpd: break feature inheritance (Michel Dänzer) [1988103] - backlight: backlight: Make of_find_backlight static (Jérôme Glisse) [1988103] - backlight: backlight: Drop backlight_put() (Jérôme Glisse) [1988103] - backlight: backlight: Introduce backlight_get_brightness() (Jérôme Glisse) [1988103] - backlight: backlight: Drop extern from prototypes (Jérôme Glisse) [1988103] - backlight: generic_bl: Remove this driver as it is unused (Michel Dänzer) [1988103] - backlight: backlight: Document enums in backlight.h (Jérôme Glisse) [1988103] - backlight: backlight: Document inline functions in backlight.h (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_device documentation (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_properties documentation (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_ops documentation (Jérôme Glisse) [1988103] - backlight: backlight: Add backlight_is_blank() (Jérôme Glisse) [1988103] - backlight: Add backlight_device_get_by_name() (Jérôme Glisse) [1988103] - backlight: Expose brightness curve type through sysfs (Michel Dänzer) [1988103] - backlight: Remove obsolete comment for ->state (Jérôme Glisse) [1988103] - x86/gpu: add JasperLake to gen11 early quirks (Michel Dänzer) [1988103] - drm/i915/adl_p: ADL_P device info enabling (Michel Dänzer) [1988103] - redhat/configs: Disable CONFIG_DRM_VMWGFX on aarch64 (Michel Dänzer) [1988103] - drm/amd/display: Reduce stack size for dml31 UseMinimumDCFCLK (Michel Dänzer) [1988103] - drm/amd/display: Reduce stack size for dml31_ModeSupportAndSystemConfigurationFull (Michel Dänzer) [1988103] - drm/amdgpu: Initialize max/min_dpm_level (Michel Dänzer) [1988103] - redhat/configs: Disable CONFIG_HSA_AMD_SVM for now (Michel Dänzer) [1988103] - i915: Convert to older tasklet API (Michel Dänzer) [1988103] - drm/ttm: Include asm/pgtable.h (Michel Dänzer) [1988103] - Merge DRM changes from upstream v5.13..v5.14.21 (Michel Dänzer) [1988103] - PCI: Add support for dev_groups to struct pci_driver (Jérôme Glisse) [1988103] - drm: Initialize some local variables to avoid compiler warnings (Jérôme Glisse) [1988103] - drm: Use swiotlb_nr_tbl instead of is_swiotlb_active (Jérôme Glisse) [1988103] - i915: Use mdev_type_kobj_to_group_id instead of mtype_get_type_group_id (Jérôme Glisse) [1988103] - i915: Convert to older tasklet API (Jérôme Glisse) [1988103] - drm: Drop const from list_sort compare function prototypes (Jérôme Glisse) [1988103] - Merge DRM changes from upstream v5.12.14..v5.13 (Michel Dänzer) [1988103] - vfio/mdev: add helper to get index of mdev_type sysfs file (Jérôme Glisse) [1988103] - drm/syncobj: make lockdep complain on WAIT_FOR_SUBMIT v3 (Jérôme Glisse) [1988103] - Revert "drm/i915: Implement Wa_1508744258" (Michel Dänzer) [1988103] - Revert "drm/i915: Add the missing adls vswing tables" (Michel Dänzer) [1988103] - x86/gpu: Add Alderlake-S stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add RKL stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add TGL stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add ElkhartLake to gen11 early quirks (Michel Dänzer) [1988103] - x86/gpu: reserve ICL's graphics stolen memory (Michel Dänzer) [1988103] - selftest/x86/signal: Include test cases for validating sigaltstack (Prarit Bhargava) [1837321] - x86/signal: Detect and prevent an alternate signal stack overflow (Prarit Bhargava) [1837321] - selftest/sigaltstack: Use the AT_MINSIGSTKSZ aux vector if available (Prarit Bhargava) [1837321] - x86/fpu: Additional cleanups (Prarit Bhargava) [1837321] - binfmt_elf: Respect error return from `regset->active' (Prarit Bhargava) [1837321] - x86/fpu: Optimize out sigframe xfeatures when in init state (Prarit Bhargava) [1837321] - Documentation/x86: Add documentation for using dynamic XSTATE features (Prarit Bhargava) [1837321] - selftests/x86/amx: Add context switch test (Prarit Bhargava) [1837321] - selftests/x86/amx: Add test cases for AMX state management (Prarit Bhargava) [1837321] - x86/fpu: Include vmalloc.h for vzalloc() (Prarit Bhargava) [1837321] - x86/fpu/amx: Enable the AMX feature in 64-bit mode (Prarit Bhargava) [1837321] - x86/fpu: Add XFD handling for dynamic states (Prarit Bhargava) [1837321] - x86/fpu: Calculate the default sizes independently (Prarit Bhargava) [1837321] - x86/fpu/amx: Define AMX state components and have it used for boot-time checks (Prarit Bhargava) [1837321] - x86/fpu/xstate: Prepare XSAVE feature table for gaps in state component numbers (Prarit Bhargava) [1837321] - x86/fpu/xstate: Add fpstate_realloc()/free() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Add XFD #NM handler (Prarit Bhargava) [1837321] - x86/fpu: Update XFD state where required (Prarit Bhargava) [1837321] - x86/fpu: Add sanity checks for XFD (Prarit Bhargava) [1837321] - x86/fpu: Add XFD state to fpstate (Prarit Bhargava) [1837321] - x86/msr-index: Add MSRs for XFD (Prarit Bhargava) [1837321] - x86/cpufeatures: Add eXtended Feature Disabling (XFD) feature bit (Prarit Bhargava) [1837321] - x86/fpu: Reset permission and fpstate on exec() (Prarit Bhargava) [1837321] - x86/fpu: Prepare fpu_clone() for dynamically enabled features (Prarit Bhargava) [1837321] - x86/fpu/signal: Prepare for variable sigframe length (Prarit Bhargava) [1837321] - x86/signal: Use fpu::__state_user_size for sigalt stack validation (Prarit Bhargava) [1837321] - x86/fpu: Add basic helpers for dynamically enabled features (Prarit Bhargava) [1837321] - x86/arch_prctl: Add controls for dynamic XSTATE components (Prarit Bhargava) [1837321] - x86/fpu: Add fpu_state_config::legacy_features (Prarit Bhargava) [1837321] - x86/fpu: Add members to struct fpu to cache permission information (Prarit Bhargava) [1837321] - x86/fpu/xstate: Provide xstate_calculate_size() (Prarit Bhargava) [1837321] - x86/signal: Implement sigaltstack size validation (Prarit Bhargava) [1837321] - signal: Add an optional check for altstack size (Prarit Bhargava) [1837321] - x86/fpu: Remove old KVM FPU interface (Prarit Bhargava) [1837321] - x86/kvm: Convert FPU handling to a single swap buffer (Prarit Bhargava) [1837321] - x86/fpu: Provide infrastructure for KVM FPU cleanup (Prarit Bhargava) [1837321] - x86/fpu: Prepare for sanitizing KVM FPU code (Prarit Bhargava) [1837321] - x86/fpu/xstate: Move remaining xfeature helpers to core (Prarit Bhargava) [1837321] - x86/fpu: Rework restore_regs_from_fpstate() (Prarit Bhargava) [1837321] - x86/fpu: Mop up xfeatures_mask_uabi() (Prarit Bhargava) [1837321] - x86/fpu: Move xstate feature masks to fpu_*_cfg (Prarit Bhargava) [1837321] - x86/fpu: Move xstate size to fpu_*_cfg (Prarit Bhargava) [1837321] - x86/fpu/xstate: Cleanup size calculations (Prarit Bhargava) [1837321] - x86/fpu: Cleanup fpu__init_system_xstate_size_legacy() (Prarit Bhargava) [1837321] - x86/fpu: Provide struct fpu_config (Prarit Bhargava) [1837321] - x86/fpu/signal: Use fpstate for size and features (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for copy_uabi_to_xstate() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate in __copy_xstate_to_uabi_buf() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate in fpu_copy_kvm_uabi_to_fpstate() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for xsave_to_user_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for os_xsave() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate::size (Prarit Bhargava) [1837321] - x86/fpu: Add size and mask information to fpstate (Prarit Bhargava) [1837321] - x86/process: Move arch_thread_struct_whitelist() out of line (Prarit Bhargava) [1837321] - x86/fpu: Do not leak fpstate pointer on fork (Prarit Bhargava) [1837321] - x86/fpu: Remove fpu::state (Prarit Bhargava) [1837321] - x86/math-emu: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/core: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/signal: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/regset: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu: Convert tracing to fpstate (Prarit Bhargava) [1837321] - x86/KVM: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs xstate component clearing (Prarit Bhargava) [1837321] - x86/fpu: Convert restore_fpregs_from_fpstate() to struct fpstate (Prarit Bhargava) [1837321] - x86/fpu: Convert fpstate_init() to struct fpstate (Prarit Bhargava) [1837321] - fpu/types.h: KABI fix Part I (Prarit Bhargava) [1837321] - x86/fpu: Provide struct fpstate (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs home brewed FPU copy to user (Prarit Bhargava) [1837321] - x86/fpu: Provide a proper function for ex_handler_fprestore() (Prarit Bhargava) [1837321] - x86/fpu: Replace the includes of fpu/internal.h (Prarit Bhargava) [1837321] - x86/fpu: Mop up the internal.h leftovers (Prarit Bhargava) [1837321] - x86/sev: Include fpu/xcr.h (Prarit Bhargava) [1837321] - x86/fpu: Remove internal.h dependency from fpu/signal.h (Prarit Bhargava) [1837321] - x86/fpu: Move fpstate functions to api.h (Prarit Bhargava) [1837321] - x86/fpu: Move mxcsr related code to core (Prarit Bhargava) [1837321] - x86/fpu: Move fpregs_restore_userregs() to core (Prarit Bhargava) [1837321] - x86/fpu: Make WARN_ON_FPU() private (Prarit Bhargava) [1837321] - x86/fpu: Move legacy ASM wrappers to core (Prarit Bhargava) [1837321] - x86/fpu: Move os_xsave() and os_xrstor() to core (Prarit Bhargava) [1837321] - x86/fpu: Make os_xrstor_booting() private (Prarit Bhargava) [1837321] - x86/fpu: Clean up CPU feature tests (Prarit Bhargava) [1837321] - x86/fpu: Move context switch and exit to user inlines into sched.h (Prarit Bhargava) [1837321] - x86/fpu: Mark fpu__init_prepare_fx_sw_frame() as __init (Prarit Bhargava) [1837321] - x86/fpu: Rework copy_xstate_to_uabi_buf() (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs home brewed FPU copy from user (Prarit Bhargava) [1837321] - x86/fpu: Move KVMs FPU swapping to FPU core (Prarit Bhargava) [1837321] - x86/fpu/xstate: Mark all init only functions __init (Prarit Bhargava) [1837321] - x86/fpu/xstate: Provide and use for_each_xfeature() (Prarit Bhargava) [1837321] - x86/fpu: Cleanup xstate xcomp_bv initialization (Prarit Bhargava) [1837321] - x86/fpu: Do not inherit FPU context for kernel and IO worker threads (Prarit Bhargava) [1837321] - x86/process: Clone FPU in copy_thread() (Prarit Bhargava) [1837321] - x86/fpu: Remove pointless memset in fpu_clone() (Prarit Bhargava) [1837321] - x86/fpu: Cleanup the on_boot_cpu clutter (Prarit Bhargava) [1837321] - x86/fpu: Restrict xsaves()/xrstors() to independent states (Prarit Bhargava) [1837321] - x86/pkru: Remove useless include (Prarit Bhargava) [1837321] - x86/fpu: Update stale comments (Prarit Bhargava) [1837321] - x86/fpu: Remove pointless argument from switch_fpu_finish() (Prarit Bhargava) [1837321] - x86/fpu: Mask out the invalid MXCSR bits properly (Prarit Bhargava) [1837321] - x86/fpu: Restore the masking out of reserved MXCSR bits (Prarit Bhargava) [1837321] - x86/fpu/signal: Fix missed conversion to correct boolean retval in save_xstate_epilog() (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return code of restore_fpregs_from_user() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return code of check_xstate_in_sigframe() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of __fpu_restore_sig() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of fpu__restore_sig() to boolean (Prarit Bhargava) [1837321] - x86/signal: Change return type of restore_sigcontext() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of copy_fpregs_to_sigframe() helpers to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of copy_fpstate_to_sigframe() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Move xstate clearing out of copy_fpregs_to_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/signal: Move header zeroing out of xsave_to_user_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/signal: Clarify exception handling in restore_fpregs_from_user() (Prarit Bhargava) [1837321] - x86/elf: Support a new ELF aux vector AT_MINSIGSTKSZ (Prarit Bhargava) [1837321] - uapi/auxvec: Define the aux vector AT_MINSIGSTKSZ (Prarit Bhargava) [1837321] - x86: get rid of get_user_ex() in restore_sigcontext() (Prarit Bhargava) [1837321] - x86: get rid of get_user_ex() in ia32_restore_sigcontext() (Prarit Bhargava) [1837321] - x86: Remove force_iret() (Prarit Bhargava) [1837321] - x86/uaccess, signal: Fix AC=1 bloat (Prarit Bhargava) [1837321] - x86/ia32: Fix ia32_restore_sigcontext() AC leak (Prarit Bhargava) [1837321] - x86/tsc: Add tsc_early_khz command line parameter (Prarit Bhargava) [1957375] - x86/debug: Support negative polarity DR6 bits (Prarit Bhargava) [2017958]- KVM: SVM: Do not terminate SEV-ES guests on GHCB validation failure (Vitaly Kuznetsov) [2032931] - KVM: SEV: Fall back to vmalloc for SEV-ES scratch area if necessary (Vitaly Kuznetsov) [2032931] - KVM: SEV: Return appropriate error codes if SEV-ES scratch setup fails (Vitaly Kuznetsov) [2032931] - KVM: SEV: Refactor out sev_es_state struct (Vitaly Kuznetsov) [2032931] - s390: mm: Fix secure storage access exception handling (Thomas Huth) [1984910] - KVM: PPC: Book3S HV: Make idle_kvm_start_guest() return 0 if it went to guest (Jon Maloy) [2018960] {CVE-2021-43056} - KVM: PPC: Book3S HV: Fix stack handling in idle_kvm_start_guest() (Jon Maloy) [2018960] {CVE-2021-43056} - KVM: arm64: selftests: arch_timer: Support vCPU migration (Gavin Shan) [2024808] - KVM: arm64: selftests: Add arch_timer test (Gavin Shan) [2024808] - KVM: arm64: selftests: Add host support for vGIC (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic GICv3 support (Gavin Shan) [2024808] - KVM: arm64: selftests: Add light-weight spinlock support (Gavin Shan) [2024808] - KVM: arm64: selftests: Add guest support to get the vcpuid (Gavin Shan) [2024808] - KVM: arm64: selftests: Maintain consistency for vcpuid type (Gavin Shan) [2024808] - KVM: arm64: selftests: Add support to disable and enable local IRQs (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic support to generate delays (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic support for arch_timers (Gavin Shan) [2024808] - KVM: arm64: selftests: Add support for cpu_relax (Gavin Shan) [2024808] - KVM: arm64: selftests: Introduce ARM64_SYS_KVM_REG (Gavin Shan) [2024808] - tools: arm64: Import sysreg.h (Gavin Shan) [2024808] - KVM: arm64: selftests: Add MMIO readl/writel support (Gavin Shan) [2024808] - selftests: KVM: Introduce psci_cpu_on_test (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: actually enable pmu regs in pmu sublist (Gavin Shan) [2024808] - KVM: arm64: Update MAINTAINERS to include selftests (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Split base and pmu registers (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Remove get-reg-list-sve (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Provide config selection option (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Prepare to run multiple configs at once (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Introduce vcpu configs (Gavin Shan) [2024808] - sctp: make the raise timer more simple and accurate (Xin Long) [2020474] - Enable flowtable ipv4/ipv6 support (Phil Sutter) [1850324] - ip6_vti: initialize __ip6_tnl_parm struct in vti6_siocdevprivate (William Zhao) [1941928] - svcrdma: Fix a crash in svcrdma_counter_handler (Benjamin Coddington) [2037213] - fbcon: Fix global-out-of-bounds read in fbcon_get_font() (Lyude Paul) [1904374] - bnxt_en: Clean up completion ring page arrays completely (Ken Cox) [1987074] - bnxt_en: Fix error recovery regression (Ken Cox) [1987074] - bnxt_en: Fix possible unintended driver initiated error recovery (Ken Cox) [1987074] - bnxt_en: Fix UDP tunnel logic (Ken Cox) [1987074] - bnxt_en: Fix asic.rev in devlink dev info command (Ken Cox) [1987074] - bnxt_en: fix read of stored FW_PSID version on P5 devices (Ken Cox) [1987074] - bnxt_en: fix stored FW_PSID version masks (Ken Cox) [1987074] - bnxt_en: fix kernel doc warnings in bnxt_hwrm.c (Ken Cox) [1987074] - bnxt_en: Fix 64-bit doorbell operation on 32-bit kernels (Ken Cox) [1987074] - bnxt_en: support multiple HWRM commands in flight (Ken Cox) [1987074] - bnxt_en: remove legacy HWRM interface (Ken Cox) [1987074] - bnxt_en: update all firmware calls to use the new APIs (Ken Cox) [1987074] - bnxt_en: use link_lock instead of hwrm_cmd_lock to protect link_info (Ken Cox) [1987074] - bnxt_en: add support for HWRM request slices (Ken Cox) [1987074] - bnxt_en: add HWRM request assignment API (Ken Cox) [1987074] - bnxt_en: discard out of sequence HWRM responses (Ken Cox) [1987074] - bnxt_en: introduce new firmware message API based on DMA pools (Ken Cox) [1987074] - bnxt_en: move HWRM API implementation into separate file (Ken Cox) [1987074] - bnxt_en: Refactor the HWRM_VER_GET firmware calls (Ken Cox) [1987074] - bnxt_en: remove DMA mapping for KONG response (Ken Cox) [1987074] - bnxt: count discards due to memory allocation errors (Ken Cox) [1987074] - bnxt: count packets discarded because of netpoll (Ken Cox) [1987074] - net: broadcom: switch from 'pci_' to 'dma_' API (Ken Cox) [1987074] - bnxt_en: Add missing DMA memory barriers (Ken Cox) [1987074] - bnxt_en: Disable aRFS if running on 212 firmware (Ken Cox) [1987074] - bnxt: count Tx drops (Ken Cox) [1987074] - bnxt: make sure xmit_more + errors does not miss doorbells (Ken Cox) [1987074] - bnxt: disable napi before canceling DIM (Ken Cox) [1987074] - bnxt: don't lock the tx queue from napi poll (Ken Cox) [1987074] - bnxt_en: Use register window 6 instead of 5 to read the PHC (Ken Cox) [1987074] - bnxt_en: Update firmware call to retrieve TX PTP timestamp (Ken Cox) [1987074] - bnxt_en: Update firmware interface to 1.10.2.52 (Ken Cox) [1987074] - bnxt_en: Increase maximum RX ring size if jumbo ring is not used (Ken Cox) [1987074] - bnxt_en: Don't use static arrays for completion ring pages (Ken Cox) [1987074] - bnxt_en: Add missing periodic PHC overflow check (Ken Cox) [1987074] - bnxt_en: Log if an invalid signal detected on TSIO pin (Ken Cox) [1987074] - bnxt_en: Event handler for PPS events (Ken Cox) [1987074 1990156] - bnxt_en: 1PPS functions to configure TSIO pins (Ken Cox) [1987074 1990156] - bnxt_en: 1PPS support for 5750X family chips (Ken Cox) [1987074 1990156] - bnxt_en: Do not read the PTP PHC during chip reset (Ken Cox) [1987074 1990156] - bnxt_en: Move bnxt_ptp_init() from bnxt_open() back to bnxt_init_one() (Ken Cox) [1987074 1990156] - bnxt_en: Fix PTP capability discovery (Ken Cox) [1987074] - bnxt_en: Move bnxt_ptp_init() to bnxt_open() (Ken Cox) [1987074] - bnxt: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [1987074] - bnxt_en: Enable hardware PTP support (Ken Cox) [1987074] - bnxt_en: Transmit and retrieve packet timestamps (Ken Cox) [1987074] - bnxt_en: Get the RX packet timestamp (Ken Cox) [1987074] - bnxt_en: Get the full 48-bit hardware timestamp periodically (Ken Cox) [1987074] - bnxt_en: Add PTP clock APIs, ioctls, and ethtool methods (Ken Cox) [1987074] - bnxt_en: Get PTP hardware capability from firmware (Ken Cox) [1987074] - bnxt_en: Update firmware interface to 1.10.2.47 (Ken Cox) [1987074] - bnxt_en: Fix fall-through warnings for Clang (Ken Cox) [1987074] - bnxt_en: Fix and improve .ndo_features_check(). (Ken Cox) [1987074] - bnxt_en: Implement .ndo_features_check(). (Ken Cox) [1987074] - bnxt_en: Support IFF_SUPP_NOFCS feature to transmit without ethernet FCS. (Ken Cox) [1987074] - bnxt_en: Call bnxt_approve_mac() after the PF gives up control of the VF MAC. (Ken Cox) [1987074] - bnxt_en: Move bnxt_approve_mac(). (Ken Cox) [1987074] - bnxt_en: allow VF config ops when PF is closed (Ken Cox) [1987074] - bnxt_en: Add support for fw managed link down feature. (Ken Cox) [1987074] - bnxt_en: Add a new phy_flags field to the main driver structure. (Ken Cox) [1987074] - bnxt_en: report signal mode in link up messages (Ken Cox) [1987074] - bnxt: add more ethtool standard stats (Ken Cox) [1987074] - bnxt: implement ethtool standard stats (Ken Cox) [1987074] - bnxt: implement ethtool::get_fec_stats (Ken Cox) [1987074] - bnxt_en: Free and allocate VF-Reps during error recovery. (Ken Cox) [1987074] - bnxt_en: Refactor __bnxt_vf_reps_destroy(). (Ken Cox) [1987074] - bnxt_en: Refactor bnxt_vf_reps_create(). (Ken Cox) [1987074] - bnxt_en: Invalidate health register mapping at the end of probe. (Ken Cox) [1987074] - bnxt_en: Treat health register value 0 as valid in bnxt_try_reover_fw(). (Ken Cox) [1987074] - bnxt_en: Enhance retry of the first message to the firmware. (Ken Cox) [1987074] - bnxt_en: Set BNXT_STATE_FW_RESET_DET flag earlier for the RDMA driver. (Ken Cox) [1987074] - bnxt_en: check return value of bnxt_hwrm_func_resc_qcaps (Ken Cox) [1987074] - bnxt_en: don't fake firmware response success when PCI is disabled (Ken Cox) [1987074] - bnxt_en: Improve wait for firmware commands completion (Ken Cox) [1987074] - bnxt_en: Improve the status_reliable flag in bp->fw_health. (Ken Cox) [1987074] - Bluetooth: fix use-after-free error in lock_sock_nested() (Gopal Tiwari) [2005689] - rpmspec: add release string to kernel doc directory name (Jan Stancek) [1824836] - cpufreq: intel_pstate: Fix cpu->pstate.turbo_freq initialization (Mark Langsdorf) [2031830] - ACPI: CPPC: Add NULL pointer check to cppc_get_perf() (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Rework HWP calibration (Mark Langsdorf) [2031830] - ACPI: CPPC: Introduce cppc_get_nominal_perf() (Mark Langsdorf) [2031830] - cpufreq: Replace deprecated CPU-hotplug functions (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Fix build with CONFIG_ACPI unset (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: CPU-specific scaling factor (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Avoid exposing two global attributes (Mark Langsdorf) [2031830] - ASoC: amd: renoir: Run hibernation callbacks (Renjith Pananchikkal) [1987617] - hugetlb: fix hugetlb cgroup refcounting during vma split (Waiman Long) [2032811] - hugetlb_cgroup: fix imbalanced css_get and css_put pair for shared mappings (Waiman Long) [2032811] - mm/hugetlb: change hugetlb_reserve_pages() to type bool (Waiman Long) [2032811] - hugetlb: fix an error code in hugetlb_reserve_pages() (Waiman Long) [2032811] - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations (Waiman Long) [2032811] - hugetlb_cgroup: fix reservation accounting (Waiman Long) [2032811] - mm/hugetlb: narrow the hugetlb_lock protection area during preparing huge page (Waiman Long) [2032811] - mm/hugetlb: a page from buddy is not on any list (Waiman Long) [2032811] - mm/hugetlb: not necessary to coalesce regions recursively (Waiman Long) [2032811] - selftests/vm/write_to_hugetlbfs.c: fix unused variable warning (Waiman Long) [2032811] - hugetlb_cgroup: add hugetlb_cgroup reservation tests (Waiman Long) [2032811] - hugetlb: support file_region coalescing again (Waiman Long) [2032811] - hugetlb_cgroup: support noreserve mappings (Waiman Long) [2032811] - hugetlb_cgroup: add accounting for shared mappings (Waiman Long) [2032811] - hugetlb: disable region_add file_region coalescing (Waiman Long) [2032811] - hugetlb_cgroup: add reservation accounting for private mappings (Waiman Long) [2032811] - mm/hugetlb_cgroup: fix hugetlb_cgroup migration (Waiman Long) [2032811] - hugetlb_cgroup: add interface for charge/uncharge hugetlb reservations (Waiman Long) [2032811] - hugetlb_cgroup: add hugetlb_cgroup reservation counter (Waiman Long) [2032811] - mm/vma: move VM_NO_KHUGEPAGED into generic header (Waiman Long) [2032811] - mm/cma.c: switch to bitmap_zalloc() for cma bitmap allocation (Waiman Long) [2032811] - hugetlb: remove duplicated code (Waiman Long) [2032811] - hugetlb: region_chg provides only cache entry (Waiman Long) [2032811] - arm64/mm: Refactor __do_page_fault() (Waiman Long) [2032811] - arm64/mm: Drop task_struct argument from __do_page_fault() (Waiman Long) [2032811] - hugetlbfs: always use address space in inode for resv_map pointer (Waiman Long) [2032811] - mm: remove redundant 'default n' from Kconfig-s (Waiman Long) [2032811] - hugetlbfs: fix potential over/underflow setting node specific nr_hugepages (Waiman Long) [2032811] - hugetlb: allow to free gigantic pages regardless of the configuration (Waiman Long) [2032811] - mm/cma.c: fix crash on CMA allocation if bitmap allocation fails (Waiman Long) [2032811] - mm/cma.c: fix the bitmap status to show failed allocation reason (Waiman Long) [2032811] - mm/cma_debug.c: fix the break condition in cma_maxchunk_get() (Waiman Long) [2032811] - mm: no need to check return value of debugfs_create functions (Waiman Long) [2032811] - x86/mm: Break out user address space handling (Waiman Long) [2032811] - fs: add vfs_parse_fs_param_source() helper (Waiman Long) [2034609] - cgroup: verify that source is a string (Waiman Long) [2034609] - ice: Fix E810 PTP reset flow (Jonathan Toppins) [2013478] - ice: Use div64_u64 instead of div_u64 in adjfine (Jonathan Toppins) [2013478] - ice: Don't put stale timestamps in the skb (Jonathan Toppins) [2013478] - ice: Fix problems with DSCP QoS implementation (Jonathan Toppins) [2030400] - ice: fix software generating extra interrupts (Jonathan Toppins) [2030400] - ice: fix rate limit update after coalesce change (Jonathan Toppins) [2030400] - ice: update dim usage and moderation (Jonathan Toppins) [2030400] - ice: make use of ice_for_each_* macros (Jonathan Toppins) [2030400] - ice: Remove boolean vlan_promisc flag from function (Jonathan Toppins) [2030400] - ice: check whether PTP is initialized in ice_ptp_release() (Jonathan Toppins) [2030400] - ice: devlink: Make devlink_register to be void (Jonathan Toppins) [2030400] - ice: split ice_ring onto Tx/Rx separate structs (Jonathan Toppins) [2030400] - ice: Prefer kcalloc over open coded arithmetic (Jonathan Toppins) [2030400] - ice: Fix macro name for IPv4 fragment flag (Jonathan Toppins) [2030400] - ice: refactor devlink getter/fallback functions to void (Jonathan Toppins) [2030400] - ice: Fix link mode handling (Jonathan Toppins) [2030400] - ice: Add feature bitmap, helpers and a check for DSCP (Jonathan Toppins) [2030400] - ice: Add DSCP support (Jonathan Toppins) [2030400]- fanotify: Make waits for fanotify events only killable (Miklos Szeredi) [1897416] - fanotify: Use interruptible wait when waiting for permission events (Miklos Szeredi) [1897416] - fanotify: Track permission event state (Miklos Szeredi) [1897416] - fanotify: Simplify cleaning of access_list (Miklos Szeredi) [1897416] - fsnotify: Create function to remove event from notification list (Miklos Szeredi) [1897416] - fanotify: Move locking inside get_one_event() (Miklos Szeredi) [1897416] - fanotify: Fold dequeue_event() into process_access_response() (Miklos Szeredi) [1897416] - fanotify: rename struct fanotify_{,perm_}event_info (Miklos Szeredi) [1897416] - RDMA/mlx5: Fix crash when unbind multiport slave (Amir Tzin) [1997386] - redhat: Fix mock.cfg cleanup in redhat/Makefile (Benjamin Coddington) - timekeeping: Use proper clock specifier names in functions (Josef Oskera) [2026471] - leds: ledtrig-activity: use ktime_get_boot_ns() (Josef Oskera) [2026471] - iio: use timespec64 based interfaces for iio_get_time_ns() (Josef Oskera) [2026471] - drivers: net: netdevsim: fix devlink_trap selftests failing (Petr Oros) [2021837] - netdevsim: remove max_vfs dentry (Petr Oros) [2021837] - netdevsim: Fix unsigned being compared to less than zero (Petr Oros) [2021837] - devlink: Protect rate list with lock while switching modes (Petr Oros) [2021837] - devlink: Remove eswitch mode check for mode set call (Petr Oros) [2021837] - devlink: Decrease refcnt of parent rate object on leaf destroy (Petr Oros) [2021837] - docs: networking: devlink: avoid using ReST :doc:`foo` markup (Petr Oros) [2021837] - testing: selftests: drivers: net: netdevsim: devlink: add test case for hard drop statistics (Petr Oros) [2021837] - drivers: net: netdevsim: add devlink trap_drop_counter_get implementation (Petr Oros) [2021837] - testing: selftests: net: forwarding: add devlink-required functionality to test (hard) dropped stats field (Petr Oros) [2021837] - net: core: devlink: add dropped stats traps field (Petr Oros) [2021837] - devlink: Fix error message in devlink_rate_set_ops_supported() (Petr Oros) [2021837] - Documentation: devlink rate objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate grouping test (Petr Oros) [2021837] - netdevsim: Allow setting parent node of rate objects (Petr Oros) [2021837] - devlink: Allow setting parent node of rate objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate nodes test (Petr Oros) [2021837] - netdevsim: Implement support for devlink rate nodes (Petr Oros) [2021837] - devlink: Introduce rate nodes (Petr Oros) [2021837] - selftest: netdevsim: Add devlink port shared/max tx rate test (Petr Oros) [2021837] - netdevsim: Implement devlink rate leafs tx rate support (Petr Oros) [2021837] - devlink: Allow setting tx rate for devlink rate leaf objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate test (Petr Oros) [2021837] - netdevsim: Register devlink rate leaf objects per VF (Petr Oros) [2021837] - devlink: Introduce rate object (Petr Oros) [2021837] - netdevsim: Implement legacy/switchdev mode for VFs (Petr Oros) [2021837] - netdevsim: Implement VFs (Petr Oros) [2021837] - netdevsim: Implement port types and indexing (Petr Oros) [2021837] - netdevsim: Disable VFs on nsim_dev_reload_destroy() call (Petr Oros) [2021837] - netdevsim: Add max_vfs to bus_dev (Petr Oros) [2021837] - devlink: append split port number to the port name (Petr Oros) [2021837] - devlink: Correct VIRTUAL port to not have phys_port attributes (Petr Oros) [2021837] - docs: net: add missing devlink health cmd - trigger (Petr Oros) [2021837] - docs: net: tweak devlink health documentation (Petr Oros) [2021837] - devlink: fix typo in documentation (Petr Oros) [2021837] - devlink: Extend devlink port documentation for subfunctions (Petr Oros) [2021837] - udp: Validate checksum in udp_read_sock() (Jiri Benc) [1947007] - bpf, sockmap: sk_skb data_end access incorrect when src_reg = dst_reg (Jiri Benc) [1947007] - bpf: sockmap, strparser, and tls are reusing qdisc_skb_cb and colliding (Jiri Benc) [1947007] - selftests, bpf: Add one test for sockmap with strparser (Jiri Benc) [1947007] - selftests, bpf: Fix test_txmsg_ingress_parser error (Jiri Benc) [1947007] - skmsg: Lose offset info in sk_psock_skb_ingress (Jiri Benc) [1947007] - bpf, sockmap: Fix potential memory leak on unlikely error case (Jiri Benc) [1947007] - tcp_bpf: Fix one concurrency problem in the tcp_bpf_send_verdict function (Jiri Benc) [1947007] - bpf, sockmap, tcp: sk_prot needs inuse_idx set for proc stats (Jiri Benc) [1947007] - bpf, sockmap: Fix memleak on ingress msg enqueue (Jiri Benc) [1947007] - bpf, sockmap: On cleanup we additionally need to remove cached skb (Jiri Benc) [1947007] - skmsg: Increase sk->sk_drops when dropping packets (Jiri Benc) [1947007] - skmsg: Pass source psock to sk_psock_skb_redirect() (Jiri Benc) [1947007] - skmsg: Teach sk_psock_verdict_apply() to return errors (Jiri Benc) [1947007] - skmsg: Fix a memory leak in sk_psock_verdict_apply() (Jiri Benc) [1947007] - skmsg: Clear skb redirect pointer before dropping it (Jiri Benc) [1947007] - udp: Fix a memory leak in udp_read_sock() (Jiri Benc) [1947007] - selftests/bpf: Retry for EAGAIN in udp_redir_to_connected() (Jiri Benc) [1947007] - skmsg: Improve udp_bpf_recvmsg() accuracy (Jiri Benc) [1947007] - bpf: Limit static tcp-cc functions in the .BTF_ids list to x86 (Jiri Benc) [1947007] - flow_dissector: Fix out-of-bounds warning in __skb_flow_bpf_to_target() (Jiri Benc) [1947007] - sock_map: Fix a potential use-after-free in sock_map_close() (Jiri Benc) [1947007] - skmsg: Pass psock pointer to ->psock_update_sk_prot() (Jiri Benc) [1947007] - bpf, udp: Remove some pointless comments (Jiri Benc) [1947007] - selftests/bpf: Add a test case for loading BPF_SK_SKB_VERDICT (Jiri Benc) [1947007] - selftests/bpf: Add a test case for udp sockmap (Jiri Benc) [1947007] - sock_map: Update sock type checks for UDP (Jiri Benc) [1947007] - udp: Implement udp_bpf_recvmsg() for sockmap (Jiri Benc) [1947007] - skmsg: Extract __tcp_bpf_recvmsg() and tcp_bpf_wait_data() (Jiri Benc) [1947007] - udp: Implement ->read_sock() for sockmap (Jiri Benc) [1947007] - sock: Introduce sk->sk_prot->psock_update_sk_prot() (Jiri Benc) [1947007] - sock_map: Introduce BPF_SK_SKB_VERDICT (Jiri Benc) [1947007] - sock_map: Kill sock_map_link_no_progs() (Jiri Benc) [1947007] - sock_map: Simplify sock_map_link() a bit (Jiri Benc) [1947007] - skmsg: Use GFP_KERNEL in sk_psock_create_ingress_msg() (Jiri Benc) [1947007] - skmsg: Use rcu work for destroying psock (Jiri Benc) [1947007] - skmsg: Avoid lock_sock() in sk_psock_backlog() (Jiri Benc) [1947007] - net: Introduce skb_send_sock() for sock_map (Jiri Benc) [1947007] - skmsg: Introduce a spinlock to protect ingress_msg (Jiri Benc) [1947007] - skmsg: Lock ingress_skb when purging (Jiri Benc) [1947007] - bpf: tcp: Limit calling some tcp cc functions to CONFIG_DYNAMIC_FTRACE (Jiri Benc) [1947007] - bpf: tcp: Fix an error in the bpf_tcp_ca_kfunc_ids list (Jiri Benc) [1947007] - bpf: tcp: Remove comma which is causing build error (Jiri Benc) [1947007] - bpf: tcp: Put some tcp cong functions in allowlist for bpf-tcp-cc (Jiri Benc) [1947007] - tcp: Rename bictcp function prefix to cubictcp (Jiri Benc) [1947007] - bpf: Add getter and setter for SO_REUSEPORT through bpf_{g,s}etsockopt (Jiri Benc) [1947007] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Jiri Benc) [1947007] - xsk: Update rings for load-acquire/store-release barriers (Jiri Benc) [1947007] - skmsg: Add function doc for skb->_sk_redir (Jiri Benc) [1947007] - skmsg: Remove unused sk_psock_stop() declaration (Jiri Benc) [1947007] - skmsg: Get rid of sk_psock_bpf_run() (Jiri Benc) [1947007] - skmsg: Make __sk_psock_purge_ingress_msg() static (Jiri Benc) [1947007] - sock_map: Make sock_map_prog_update() static (Jiri Benc) [1947007] - sock_map: Rename skb_parser and skb_verdict (Jiri Benc) [1947007] - skmsg: Move sk_redir from TCP_SKB_CB to skb (Jiri Benc) [1947007] - bpf: Compute data_end dynamically with JIT code (Jiri Benc) [1947007] - skmsg: Get rid of struct sk_psock_parser (Jiri Benc) [1947007] - bpf: Clean up sockmap related Kconfigs (Jiri Benc) [1947007] - xsk: Build skb by page (aka generic zerocopy xmit) (Jiri Benc) [1947007] - xsk: Respect device's headroom and tailroom on generic xmit path (Jiri Benc) [1947007] - virtio-net: Support IFF_TX_SKB_NO_LINEAR flag (Jiri Benc) [1947007] - net: Add priv_flags for allow tx skb without linear (Jiri Benc) [1947007] - netdevice: Add missing IFF_PHONY_HEADROOM self-definition (Jiri Benc) [1947007] - skmsg: Make sk_psock_destroy() static (Jiri Benc) [1947007] - skmsg: Use fallthrough pseudo-keyword (Jiri Benc) [1947007] - net: dev_is_mac_header_xmit() true for ARPHRD_RAWIP (Jiri Benc) [1947007] - virtio_net: Account for tx bytes and packets on sending xdp_frames (Jiri Benc) [1947007] - inet: udp{4|6}_lib_lookup_skb() skb argument is const (Jiri Benc) [1947007] - inet: constify inet_sdif() argument (Jiri Benc) [1947007] - udp: move gro declarations to net/udp.h (Jiri Benc) [1947007] - net: move tcp gro declarations to net/tcp.h (Jiri Benc) [1947007] - tcp: add declarations to avoid warnings (Jiri Benc) [1947007] - tcp: remove indirect calls for icsk->icsk_af_ops->send_check (Jiri Benc) [1947007] - tcp: remove indirect calls for icsk->icsk_af_ops->queue_xmit (Jiri Benc) [1947007] - net: remove unused skb_send_sock() (Jiri Benc) [1947007] - net: Use skb_frag_off accessors (Jiri Benc) [1947007] - net: Use skb accessors in network core (Jiri Benc) [1947007] - skbuff: fix compilation warnings in skb_dump() (Jiri Benc) [1947007] - skbuff: increase verbosity when dumping skb data (Jiri Benc) [1947007] - net: dump more useful information in netdev_rx_csum_fault() (Jiri Benc) [1947007] - net: avoid indirect calls in L4 checksum calculation (Jiri Benc) [1947007] - net/core: Allow the compiler to verify declaration and definition consistency (Jiri Benc) [1947007] - efi/arm64: Drop erroneous '__pure' attribute from set_nokaslr() (Vitaly Kuznetsov) [2026995] - drm/nouveau: clean up all clients on device removal (Karol Herbst) [1901903] {CVE-2020-27820} - drm/nouveau: Add a dedicated mutex for the clients list (Karol Herbst) [1901903] {CVE-2020-27820} - drm/nouveau: use drm_dev_unplug() during device removal (Karol Herbst) [1901903] {CVE-2020-27820} - block: avoid to quiesce queue in elevator_init_mq (Ming Lei) [2025759] - blk-mq: cancel blk-mq dispatch work in both blk_cleanup_queue and disk_release() (Ming Lei) [2021399] - PCI/portdrv: Enable Bandwidth Notification only if port supports it (Myron Stowe) [1981738] - cifs: keep referral server sessions alive (Ronnie Sahlberg) [2030880] - cifs: check pointer before freeing (Ronnie Sahlberg) [2030880] - cifs: constify path argument of ->make_node() (Ronnie Sahlberg) [2030880] - cifs: constify get_normalized_path() properly (Ronnie Sahlberg) [2030880] - cifs: don't cargo-cult strndup() (Ronnie Sahlberg) [2030880] - cifs: cleanup misc.c (Ronnie Sahlberg) [2030880] - cifs: get rid of @noreq param in __dfs_cache_find() (Ronnie Sahlberg) [2030880] - cifs: do not send tree disconnect to ipc shares (Ronnie Sahlberg) [2030880] - cifs: fix doc warnings in cifs_dfs_ref.c (Ronnie Sahlberg) [2030880] - cifs: introduce helper for finding referral server to improve DFS target resolution (Ronnie Sahlberg) [2030880] - cifs: check all path components in resolved dfs target (Ronnie Sahlberg) [2030880] - cifs: fix DFS failover (Ronnie Sahlberg) [2030880] - Enable CONFIG_SCHED_CLUSTER (Phil Auld) [1920645] - sched,x86: Don't use cluster topology for x86 hybrid CPUs (Phil Auld) [1920645] - arch_topology: Fix missing clear cluster_cpumask in remove_cpu_topology() (Phil Auld) [1920645] - x86/smp: Factor out parts of native_smp_prepare_cpus() (Phil Auld) [1920645] - sched,x86: Fix L2 cache mask (Phil Auld) [1920645] - sched: Add cluster scheduler level for x86 (Phil Auld) [1920645] - sched: Add cluster scheduler level in core and related Kconfig for ARM64 (Phil Auld) [1920645] - topology: Represent clusters of CPUs within a die (Phil Auld) [1920645] - cpumask: Omit terminating null byte in cpumap_print_{list,bitmask}_to_buf (Phil Auld) [1920645] - drivers/base/node.c: use bin_attribute to break the size limitation of cpumap ABI (Phil Auld) [1920645] - topology: use bin_attribute to break the size limitation of cpumap ABI (Phil Auld) [1920645] - cpumask: introduce cpumap_print_list/bitmask_to_buf to support large bitmask and list (Phil Auld) [1920645] - x86/cpu: Add get_llc_id() helper function (Phil Auld) [1920645] - x86/smp: Add a per-cpu view of SMT state (Phil Auld) [1920645] - ARM: 8943/1: Fix topology setup in case of CPU hotplug for CONFIG_SCHED_MC (Phil Auld) [1920645] - arm: Use common cpu_topology structure and functions. (Phil Auld) [1920645] - cpu-topology: Move cpu topology code to common code. (Phil Auld) [1920645] - netfilter: ctnetlink: allow to filter dump by status bits (Florian Westphal) [1991526] - netfilter: ctnetlink: add and use a helper for mark parsing (Florian Westphal) [1991526] - netfilter: ctnetlink: suspicious RCU usage in ctnetlink_dump_helpinfo (Florian Westphal) [1991526] - netfilter: ctnetlink: add timeout and protoinfo to destroy events (Florian Westphal) [1991526] - netfilter: ctnetlink: fix mark based dump filtering regression (Florian Westphal) [1991526] - netfilter: ctnetlink: memleak in filter initialization error path (Florian Westphal) [1991526] - netfilter: ctnetlink: add kernel side filtering for dump (Florian Westphal) [1991526] - netfilter: ctnetlink: don't dump ct extensions of unconfirmed conntracks (Florian Westphal) [1991526] - netfilter: ctnetlink: be more strict when NF_CONNTRACK_MARK is not set (Florian Westphal) [1991526] - netfilter: ctnetlink: Fix regression in conntrack entry deletion (Florian Westphal) [1991526] - netfilter: ctnetlink: Resolve conntrack L3-protocol flush regression (Florian Westphal) [1991526] - netfilter: ctnetlink: always honor CTA_MARK_MASK (Florian Westphal) [1991526] - netfilter: ctnetlink: must check mark attributes vs NULL (Florian Westphal) [1991526] - netfilter: ctnetlink: Support L3 protocol-filter on flush (Florian Westphal) [1991526] - netfilter: nftables: fix incorrect increment of loop counter (Phil Sutter) [1983635] - netfilter: nf_tables: initialize set before expression setup (Phil Sutter) [1983635] - netfilter: nftables: add set expression flags (Phil Sutter) [1983635] - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature (Phil Sutter) [1983635] - netfilter: nft_dynset: dump expressions when set definition contains no expressions (Phil Sutter) [1983635] - netfilter: nft_dynset: honor stateful expressions in set definition (Phil Sutter) [1983635] - netfilter: nf_tables: do not leave dangling pointer in nf_tables_set_alloc_name (Phil Sutter) [1983635] - netfilter: nftables: clone set element expression template (Phil Sutter) [1983635] - netfilter: nftables: relax check for stateful expressions in set definition (Phil Sutter) [1983635] - netfilter: nftables: netlink support for several set element expressions (Phil Sutter) [1983635] - netfilter: nf_tables: skip set types that do not support for expressions (Phil Sutter) [1983635] - netfilter: nft_dynset: allow dynamic updates of non-anonymous set (Phil Sutter) [1983635] - netfilter: nftables: generalize set extension to support for several expressions (Phil Sutter) [1983635] - netfilter: nf_tables: do not update stateful expressions if lookup is inverted (Phil Sutter) [1983635] - netfilter: nftables: move nft_expr before nft_set (Phil Sutter) [1983635] - netfilter: nf_tables: Align nft_expr private data to 64-bit (Phil Sutter) [1983635] - netfilter: nftables: generalize set expressions support (Phil Sutter) [1983635] - netfilter: nft_dynset: validate set expression definition (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_expr_destroy() and use it (Phil Sutter) [1983635] - netfilter: nf_tables: fix double-free on set expression from the error path (Phil Sutter) [1983635] - netfilter: nf_tables: allow to specify stateful expression in set definition (Phil Sutter) [1983635] - netfilter: nf_tables: bogus EBUSY when deleting set after flush (Phil Sutter) [1983635] - netfilter: nf_tables: pass context to nft_set_destroy() (Phil Sutter) [1983635] - netfilter: nf_tables: move nft_expr_clone() to nf_tables_api.c (Phil Sutter) [1983635] - netfilter: nf_tables: relocate header content to consumer (Phil Sutter) [1983635] - netfilter: nft_lookup: update element stateful expression (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_update_expr() helper function (Phil Sutter) [1983635] - netfilter: nf_tables: add elements with stateful expressions (Phil Sutter) [1983635] - netfilter: nf_tables: statify nft_expr_init() (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_expr_alloc() (Phil Sutter) [1983635] - netfilter: nf_tables: enable set expiration time for set elements (Phil Sutter) [1983635] - hugetlbfs: flush TLBs correctly after huge_pmd_unshare (Rafael Aquini) [2026376] {CVE-2021-4002} - tlb: mmu_gather: add tlb_flush_*_range APIs (Rafael Aquini) [2026376] {CVE-2021-4002} - ACPI: PM: Do not turn off power resources in unknown state (Mark Langsdorf) [1997696] - ACPI: PRM: Find PRMT table before parsing it (Mark Langsdorf) [1997696] - ACPI: NFIT: Fix support for virtual SPA ranges (Mark Langsdorf) [1997696] - ACPI: DPTF: Fix reading of attributes (Mark Langsdorf) [1997696] - ACPI: PM: Add support for upcoming AMD uPEP HID AMDI007 (Mark Langsdorf) [1997696] - ACPI: Kconfig: Fix table override from built-in initrd (Mark Langsdorf) [1997696] - ACPI: video: Add quirk for the Dell Vostro 3350 (Mark Langsdorf) [1997696] - ACPI: AMBA: Fix resource name in /proc/iomem (Mark Langsdorf) [1997696] - ACPI: PM: postpone bringing devices to D0 unless we need them (Mark Langsdorf) [1997696] - ACPI: tables: Add custom DSDT file as makefile prerequisite (Mark Langsdorf) [1997696] - ACPI: bgrt: Use sysfs_emit (Mark Langsdorf) [1997696] - ACPI: bgrt: Fix CFI violation (Mark Langsdorf) [1997696] - ACPI: EC: trust DSDT GPE for certain HP laptop (Mark Langsdorf) [1997696] - ACPI: scan: Simplify acpi_table_events_fn() (Mark Langsdorf) [1997696] - ACPI: sysfs: Remove tailing return statement in void function (Mark Langsdorf) [1997696] - ACPI: sysfs: Use __ATTR_RO() and __ATTR_RW() macros (Mark Langsdorf) [1997696] - ACPI: sysfs: Sort headers alphabetically (Mark Langsdorf) [1997696] - ACPI: sysfs: Refactor param_get_trace_state() to drop dead code (Mark Langsdorf) [1997696] - ACPI: sysfs: Unify pattern of memory allocations (Mark Langsdorf) [1997696] - ACPI: sysfs: Allow bitmap list to be supplied to acpi_mask_gpe (Mark Langsdorf) [1997696] - ACPI: sysfs: Make sparse happy about address space in use (Mark Langsdorf) [1997696] - ACPI: scan: Fix race related to dropping dependencies (Mark Langsdorf) [1997696] - ACPI: scan: Reorganize acpi_device_add() (Mark Langsdorf) [1997696] - ACPI: scan: Fix device object rescan in acpi_scan_clear_dep() (Mark Langsdorf) [1997696] - ACPI: scan: Make acpi_walk_dep_device_list() (Mark Langsdorf) [1997696] - ACPI: scan: Rearrange acpi_dev_get_first_consumer_dev_cb() (Mark Langsdorf) [1997696] - ACPI: scan: Define acpi_bus_put_acpi_device() as static inline (Mark Langsdorf) [1997696] - ACPI: NVS: fix doc warnings in nvs.c (Mark Langsdorf) [1997696] - ACPI: sysfs: fix doc warnings in device_sysfs.c (Mark Langsdorf) [1997696] - ACPI: APEI: fix synchronous external aborts in user-mode (Mark Langsdorf) [1997696] - mfd: tps68470: Remove tps68470 MFD driver (Mark Langsdorf) [1997696] - ACPI: power: Use dev_dbg() to print some messages (Mark Langsdorf) [1997696] - ACPI: Add quirks for AMD Renoir/Lucienne CPUs to force the D3 hint (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Fix several coding style issues (Mark Langsdorf) [1997696] - ACPI: sysfs: Drop four redundant return statements (Mark Langsdorf) [1997696] - ACPI: video: Drop three redundant return statements (Mark Langsdorf) [1997696] - ACPI: sleep: Fix acpi_pm_pre_suspend() kernel-doc (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Remove redundant initialization of 'obj' (Mark Langsdorf) [1997696] - ACPI: utils: Introduce acpi_get_local_address() (Mark Langsdorf) [1997696] - ACPI: scan: initialize local variable to avoid garbage being returned (Mark Langsdorf) [1997696] - ACPI: Remove redundant clearing of context->ret.pointer from acpi_run_osc() (Mark Langsdorf) [1997696] - redhat/configs: Add Enable CONFIG_ACPI_PRMT (Mark Langsdorf) [1997696] - ACPI: PRM: Deal with table not present or no module found (Mark Langsdorf) [1997696] - ACPI: Do not singal PRM support if not enabled (Mark Langsdorf) [1997696] - ACPI: Kconfig: Provide help text for the ACPI_PRMT option (Mark Langsdorf) [1997696] - ACPI: PRM: make symbol 'prm_module_list' static (Mark Langsdorf) [1997696] - ACPI: Correct \_SB._OSC bit definition for PRM (Mark Langsdorf) [1997696] - ACPI: Add \_SB._OSC bit for PRM (Mark Langsdorf) [1997696] - ACPI: PRM: implement OperationRegion handler for the PlatformRtMechanism subtype (Mark Langsdorf) [1997696] - ACPICA: Add PRMT module header to facilitate parsing (Mark Langsdorf) [1997696] - ACPI: scan: Add function to fetch dependent of ACPI device (Mark Langsdorf) [1997696] - ACPI: scan: Extend acpi_walk_dep_device_list() (Mark Langsdorf) [1997696] - i2c: core: Restore acpi_walk_dep_device_list() getting called after registering the ACPI i2c devs (Mark Langsdorf) [1997696] - ACPI: NUMA: fix typo in a comment (Mark Langsdorf) [1997696] - ACPI: sysfs: Fix a buffer overrun problem with description_show() (Mark Langsdorf) [1997696] - ACPI: LPSS: Use kstrtol() instead of simple_strtol() (Mark Langsdorf) [1997696] - ACPI: tables: FPDT: Add missing acpi_put_table() in acpi_init_fpdt() (Mark Langsdorf) [1997696] - ACPI: tables: PPTT: Populate cache-id if provided by firmware (Mark Langsdorf) [1997696] - ACPI: OSL: Use DEFINE_RES_IO_NAMED() to simplify code (Mark Langsdorf) [1997696] - ACPI: bus: Call kobject_put() in acpi_init() error path (Mark Langsdorf) [1997696] - ACPI: bus: Remove unneeded assignment (Mark Langsdorf) [1997696] - ACPI: sleep: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: sbs: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: scan: Unify the log message printing (Mark Langsdorf) [1997696] - ACPI: sbshc: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: sysfs: Cleanup message printing (Mark Langsdorf) [1997696] - ACPI: reboot: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Cleanup the printing messages (Mark Langsdorf) [1997696] - ACPI: processor_perflib: Cleanup print messages (Mark Langsdorf) [1997696] - ACPI: processor_thermal: Remove unused PREFIX for printing (Mark Langsdorf) [1997696] - ACPI: pci_root: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: osl: Remove the duplicated PREFIX for message printing (Mark Langsdorf) [1997696] - ACPI: nvs: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: glue: Clean up the printing messages (Mark Langsdorf) [1997696] - ACPI: event: Use pr_*() macros to replace printk() (Mark Langsdorf) [1997696] - ACPI: bus: Use pr_*() macros to replace printk() (Mark Langsdorf) [1997696] - ACPI: blacklist: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: cmos_rtc: Using pr_fmt() and remove PREFIX (Mark Langsdorf) [1997696] - ACPI: scan: Constify acpi_dma_supported() helper function (Mark Langsdorf) [1997696] - ACPICA: Update version to 20210604 (Mark Langsdorf) [1997696] - ACPICA: Add support for PlatformRtMechanism OperationRegion handler (Mark Langsdorf) [1997696] - ACPICA: iASL: add disassembler support for PRMT (Mark Langsdorf) [1997696] - ACPICA: Add the CFMWS structure definition to the CEDT table (Mark Langsdorf) [1997696] - ACPICA: Add defines for the CXL Host Bridge Structure (CHBS) (Mark Langsdorf) [1997696] - ACPICA: iASL: Add support for the BDAT ACPI table (Mark Langsdorf) [1997696] - ACPICA: Add _PLD panel positions (Mark Langsdorf) [1997696] - ACPICA: Use ACPI_FALLTHROUGH (Mark Langsdorf) [1997696] - ACPICA: iASL Table Compiler: Add full support for RGRT ACPI table (Mark Langsdorf) [1997696] - ACPICA: iASL: Add support for the SVKL table (Mark Langsdorf) [1997696] - ACPICA: iASL: Finish support for the IVRS ACPI table (Mark Langsdorf) [1997696] - ACPICA: Add SVKL table headers (Mark Langsdorf) [1997696] - ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Mailbox Structure (Mark Langsdorf) [1997696] - ACPI: power: Rework turning off unused power resources (Mark Langsdorf) [1997696] - ACPI: power: Save the last known state of each power resource (Mark Langsdorf) [1997696] - ACPI: power: Use u8 as the power resource state data type (Mark Langsdorf) [1997696] - ACPI: configfs: Replace ACPI_INFO() with pr_debug() (Mark Langsdorf) [1997696] - ACPI: ipmi: Remove address space handler in error path (Mark Langsdorf) [1997696] - ACPI: EC: Make more Asus laptops use ECDT _GPE (Mark Langsdorf) [1997696] - ACPI: event: Remove redundant initialization of local variable (Mark Langsdorf) [1997696] - ACPI: sbshc: Fix fall-through warning for Clang (Mark Langsdorf) [1997696] - ACPI: PM / fan: Put fan device IDs into separate header file (Mark Langsdorf) [1997696] - ACPI: APEI: Don't warn if ACPI is disabled (Mark Langsdorf) [1997696] - ACPI: processor idle: Fix up C-state latency if not ordered (Mark Langsdorf) [1997696] - ACPI: scan: Rearrange dep_unmet initialization (Mark Langsdorf) [1997696] - ACPI: DPTF: Add battery participant for Intel SoCs (Mark Langsdorf) [1997696] - md/raid5: avoid device_lock in read_one_chunk() (Nigel Croxon) [1985919] - md: add comments in md_integrity_register (Nigel Croxon) [1985919] - md: check level before create and exit io_acct_set (Nigel Croxon) [1985919] - md/raid10: enable io accounting (Nigel Croxon) [1985919] - md/raid1: enable io accounting (Nigel Croxon) [1985919] - md/raid5: avoid redundant bio clone in raid5_read_one_chunk (Nigel Croxon) [1985919] - md/raid5: move checking badblock before clone bio in raid5_read_one_chunk (Nigel Croxon) [1985919] - md: add io accounting for raid0 and raid5 (Nigel Croxon) [1985919] - md: revert io stats accounting (Nigel Croxon) [1985919] - md/raid5: remove an incorrect assert in in_chunk_boundary (Nigel Croxon) [1985919] - md: use rdev_read_only in restart_array (Nigel Croxon) [1985919] - md/raid6: refactor raid5_read_one_chunk (Nigel Croxon) [1985919] - md: remove md_bio_alloc_sync (Nigel Croxon) [1985919] - md: simplify sync_page_io (Nigel Croxon) [1985919] - md: remove bio_alloc_mddev (Nigel Croxon) [1985919] - md: use part_[begin|end]_io_acct instead of disk_[begin|end]_io_acct (Nigel Croxon) [1985919] - md: improve io stats accounting (Nigel Croxon) [1985919]- ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970663] - igbvf: convert to strongly typed descriptors (Corinna Vinschen) [1970663] - intel: call csum functions with well formatted arguments (Corinna Vinschen) [1970663] - igb: handle vlan types with checker enabled (Corinna Vinschen) [1970663] - igb: fix netpoll exit with traffic (Corinna Vinschen) [1970662] - igb: unbreak I2C bit-banging on i350 (Corinna Vinschen) [1970662] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970662] - igb: Avoid memcpy() over-reading of ETH_SS_STATS (Corinna Vinschen) [1970662] - igb: Add counter to i21x doublecheck (Corinna Vinschen) [1970662] - igb: Fix position of assignment to *ring (Corinna Vinschen) [1970662] - igb: Check if num of q_vectors is smaller than max before array access (Corinna Vinschen) [1970662] - igb: Fix an error handling path in 'igb_probe()' (Corinna Vinschen) [1970662] - igb: Fix use-after-free error during reset (Corinna Vinschen) [1970662] - intel: Remove rcu_read_lock() around XDP program invocation (Corinna Vinschen) [1970662] - igb: add correct exception tracing for XDP (Corinna Vinschen) [1970662] - igb: Fix XDP with PTP enabled (Corinna Vinschen) [1970662] - igb: Fix -Wunused-const-variable warning (Corinna Vinschen) [1970662] - igb: override two checker warnings (Corinna Vinschen) [1970662] - igb: fix assignment on big endian machines (Corinna Vinschen) [1970662] - igb: handle vlan types with checker enabled (Corinna Vinschen) [1970662] - igb/igc: use strongly typed pointer (Corinna Vinschen) [1970662] - intel: remove checker warning (Corinna Vinschen) [1970662] - i40e: Fix NULL pointer dereference in i40e_dbg_dump_desc (Stefan Assmann) [1970651] - i40e: Fix pre-set max number of queues for VF (Stefan Assmann) [1970651] - i40e: Fix failed opcode appearing if handling messages from VF (Stefan Assmann) [1970651] - i40e: Fix display error code in dmesg (Stefan Assmann) [1970651] - i40e: Fix creation of first queue by omitting it if is not power of two (Stefan Assmann) [1970651] - i40e: Fix warning message and call stack during rmmod i40e driver (Stefan Assmann) [1970651] - i40e: Fix ping is lost after configuring ADq on VF (Stefan Assmann) [1970651] - i40e: Fix changing previously set num_queue_pairs for PFs (Stefan Assmann) [1970651] - i40e: Fix NULL ptr dereference on VSI filter sync (Stefan Assmann) [1970651] - i40e: Fix correct max_pkt_size on VF RX queue (Stefan Assmann) [1970651] - ethernet: constify references to netdev->dev_addr in drivers (Stefan Assmann) [1970651] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Stefan Assmann) [1970651] - i40e: Fix ATR queue selection (Stefan Assmann) [1970651] - i40e: Fix spelling mistake "dissable" -> "disable" (Stefan Assmann) [1970651] - iavf: do not override the adapter state in the watchdog task (again) (Stefan Assmann) [1970650] - iavf: missing unlocks in iavf_watchdog_task() (Stefan Assmann) [1970650] - iavf: Fix reporting when setting descriptor count (Stefan Assmann) [1970650] - iavf: restore MSI state on reset (Stefan Assmann) [1970650] - iavf: Fix displaying queue statistics shown by ethtool (Stefan Assmann) [1970650] - iavf: Refactor string format to avoid static analysis warnings (Stefan Assmann) [1970650] - iavf: Refactor text of informational message (Stefan Assmann) [1970650] - iavf: Fix static code analysis warning (Stefan Assmann) [1970650] - iavf: Refactor iavf_mac_filter struct memory usage (Stefan Assmann) [1970650] - iavf: Enable setting RSS hash key (Stefan Assmann) [1970650] - iavf: Add trace while removing device (Stefan Assmann) [1970650] - iavf: return errno code instead of status code (Stefan Assmann) [1970650] - iavf: Log info when VF is entering and leaving Allmulti mode (Stefan Assmann) [1970650] - iavf: Add change MTU message (Stefan Assmann) [1970650] - iavf: Fix VLAN feature flags after VFR (Stefan Assmann) [1970650] - iavf: Fix refreshing iavf adapter stats on ethtool request (Stefan Assmann) [1970650] - iavf: Fix deadlock occurrence during resetting VF interface (Stefan Assmann) [1970650] - iavf: Prevent changing static ITR values if adaptive moderation is on (Stefan Assmann) [1970650] - iavf: Restore VLAN filters after link down (Stefan Assmann) [1970650] - iavf: Fix for setting queues to 0 (Stefan Assmann) [1970650] - iavf: Fix for the false positive ASQ/ARQ errors while issuing VF reset (Stefan Assmann) [1970650] - iavf: validate pointers (Stefan Assmann) [1970650] - iavf: prevent accidental free of filter structure (Stefan Assmann) [1970650] - iavf: Fix failure to exit out from last all-multicast mode (Stefan Assmann) [1970650] - iavf: don't clear a lock we don't hold (Stefan Assmann) [1970650] - iavf: free q_vectors before queues in iavf_disable_vf (Stefan Assmann) [1970650] - iavf: check for null in iavf_fix_features (Stefan Assmann) [1970650] - iavf: Fix return of set the new channel count (Stefan Assmann) [1970650] - iavf: Fix kernel BUG in free_msi_irqs (Stefan Assmann) [1970650] - iavf: Add helper function to go from pci_dev to adapter (Stefan Assmann) [1970650] - iavf: Combine init and watchdog state machines (Stefan Assmann) [1970650] - iavf: Add __IAVF_INIT_FAILED state (Stefan Assmann) [1970650] - iavf: Refactor iavf state machine tracking (Stefan Assmann) [1970650] - iavf: fix double unlock of crit_lock (Stefan Assmann) [1970650] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Stefan Assmann) [1970650] - iavf: Fix ping is lost after untrusted VF had tried to change MAC (Stefan Assmann) [1970650] - iavf: use mutexes for locking of critical sections (Stefan Assmann) [1970650] - qed: rdma - don't wait for resources under hw error recovery flow (Manish Chopra) [1998195] - qed: Handle management FW error (Manish Chopra) [1998195] - qede: Fix memset corruption (Manish Chopra) [1998195] - qed: Enable automatic recovery on error condition. (Manish Chopra) [1998195] - qed: Fix the VF msix vectors flow (Manish Chopra) [1998195] - qed: Fix null-pointer dereference in qed_rdma_create_qp() (Manish Chopra) [1998195] - qed: qed ll2 race condition fixes (Manish Chopra) [1998195] - qed: Remove duplicated include of kernel.h (Manish Chopra) [1998195] - qed: Remove redundant prints from the iWARP SYN handling (Manish Chopra) [1998195] - qed: Skip DORQ attention handling during recovery (Manish Chopra) [1998195] - qed: Avoid db_recovery during recovery (Manish Chopra) [1998195] - qede: fix crash in rmmod qede while automatic debug collection (Manish Chopra) [1998195] - RDMA/qedr: Improve error logs for rdma_alloc_tid error return (Manish Chopra) [1998195] - RDMA/qed: Use accurate error num in qed_cxt_dynamic_ilt_alloc (Manish Chopra) [1998195] - net: qed: remove unneeded return variables (Manish Chopra) [1998195] - net: qede: Fix end of loop tests for list_for_each_entry (Manish Chopra) [1998195] - qede: Remove rcu_read_lock() around XDP program invocation (Manish Chopra) [1998195] - net: qed: Fix memcpy() overflow of qed_dcbx_params() (Manish Chopra) [1998195] - net: qede: Use list_for_each_entry() to simplify code (Manish Chopra) [1998195] - qed: Fix duplicate included linux/kernel.h (Manish Chopra) [1998195] - qed: Add IP services APIs support (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload IO Level FW Initializations (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload IO Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add support of HW filter block (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload Connection Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload PF Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add TCP_ULP FW resource layout (Manish Chopra) [1998195] - net: qed: remove redundant initialization of variable rc (Manish Chopra) [1998195] - net: qed: remove unused including (Manish Chopra) [1998195] - qede: remove unused including (Manish Chopra) [1998195] - linux/qed: Mundane spelling fixes throughout the file (Manish Chopra) [1998195] - qed: Fix fall-through warnings for Clang (Manish Chopra) [1998195] - RDMA/qedr: Use true and false for bool variable (Manish Chopra) [1998195] - qede: preserve per queue stats across up/down of interface (Manish Chopra) [1998195] - qede: add per queue coalesce support for qede driver (Manish Chopra) [1998195] - qede: add netpoll support for qede driver (Manish Chopra) [1998195] - RDMA/qedr: Remove in_irq() usage from debug output (Manish Chopra) [1998195] - linux/qed: fix spelling typo in qed_chain.h (Manish Chopra) [1998195] - qed: select CONFIG_CRC32 (Manish Chopra) [1998195] - IB/qedr: Fix fall-through warnings for Clang (Manish Chopra) [1998195] - RDMA/qedr: Endianness warnings cleanup (Manish Chopra) [1998195] - qed/qed_ll2: Replace one-element array with flexible-array member (Manish Chopra) [1998195] - net: qed: use true,false for bool variables (Manish Chopra) [1998195] - RDMA/qedr: Fix reported max_pkeys (Manish Chopra) [1998195] - qed: align adjacent indent (Manish Chopra) [1998195] - qed: fix kconfig help entries (Manish Chopra) [1998195] - sched/cputime: Fix getrusage(RUSAGE_THREAD) with nohz_full (Phil Auld) [1992387] - net: tg3: fix obsolete check of !err (Ken Cox) [1987082] - net: broadcom: switch from 'pci_' to 'dma_' API (Ken Cox) [1987082] - tg3: Remove unused PHY_BRCM flags (Ken Cox) [1987082] - net: check skb sec_path when re-initializing slow_gro in gro_list_prepare (Xin Long) [2030476] - e1000e: Fix the max snoop/no-snoop latency for 10M (Ken Cox) [1970665] - net/e1000e: Fix spelling mistake "The" -> "This" (Ken Cox) [1970665] - e1000e: Add space to the debug print (Ken Cox) [1970665] - e1000e: Additional PHY power saving in S0ix (Ken Cox) [1970665] - e1000e: Add polling mechanism to indicate CSME DPG exit (Ken Cox) [1970665] - e1000e: Add handshake with the CSME to support S0ix (Ken Cox) [1970665] - e1000e: Fix an error handling path in 'e1000_probe()' (Ken Cox) [1970665] - e1000e: Check the PCIm state (Ken Cox) [1970665] - net: e1000e: fix misspell word "retreived" (Ken Cox) [1970665] - net: e1000e: remove repeated word "slot" for netdev.c (Ken Cox) [1970665] - net: e1000e: remove repeated word "the" for ich8lan.c (Ken Cox) [1970665] - ppc64: Fix incorrect qrwlock use in debug kernel (Waiman Long) [2027200] - locking: Remove spin_lock_flags() etc (Waiman Long) [2027200] - Bluetooth: btusb: Add one more Bluetooth part for WCN6855 (Gopal Tiwari) [2007903] - Bluetooth: btusb: Add the new support IDs for WCN6855 (Gopal Tiwari) [2007903] - Bluetooth: btusb: re-definition for board_id in struct qca_version (Gopal Tiwari) [2007903] - Bluetooth: btusb: Add support using different nvm for variant WCN6855 controller (Gopal Tiwari) [2007903] - bpf/selftests: enable atomic_bounds test (Viktor Malik) [2030572] - Revert "bpf: Remove atomics tests from test_progs" (Viktor Malik) [2030572] - bpf/selftests: disable tests failing on RHEL 8.6 (Viktor Malik) [2025797 2025801 2025810 2025812 2025813] - bpf/selftests: allow disabling prog_tests (Viktor Malik) [2030572] - xfs: drop experimental warnings for bigtime and inobtcount (Bill O'Donnell) [2022903] - libxfs: expose inobtcount in xfs geometry (Bill O'Donnell) [2022903] - xfs: enable new inode btree counters feature (Bill O'Donnell) [2022903] - xfs: enable big timestamps (Bill O'Donnell) [2022903] - selftests: net: bridge: fix typo in vlan_filtering dependency test (Ivan Vecera) [2019055] - selftests: net: bridge: add test for vlan_filtering dependency (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_router tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast query and query response interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_querier_interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_membership_interval test (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_startup_query_count/interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_last_member_count/interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast igmp/mld version tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast querier test (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast snooping control test (Ivan Vecera) [2019055] - selftests: net: bridge: update IGMP/MLD membership interval value (Ivan Vecera) [2019055] - net: bridge: mcast: use multicast_membership_interval for IGMPv3 (Ivan Vecera) [2019055] - net: bridge: fix under estimation in br_get_linkxstats_size() (Ivan Vecera) [2019055] - net: bridge: use nla_total_size_64bit() in br_get_linkxstats_size() (Ivan Vecera) [2019055] - net: bridge: mcast: Associate the seqcount with its protecting lock. (Ivan Vecera) [2019055] - net: bridge: mcast: fix vlan port router deadlock (Ivan Vecera) [2019055] - net: bridge: use mld2r_ngrec instead of icmpv6_dataun (Ivan Vecera) [2019055] - net: bridge: change return type of br_handle_ingress_vlan_tunnel (Ivan Vecera) [2019055] - net: bridge: vlan: convert mcast router global option to per-vlan entry (Ivan Vecera) [2019055] - net: bridge: mcast: br_multicast_set_port_router takes multicast context as argument (Ivan Vecera) [2019055] - net: bridge: mcast: toggle also host vlan state in br_multicast_toggle_vlan (Ivan Vecera) [2019055] - net: bridge: mcast: use the correct vlan group helper (Ivan Vecera) [2019055] - net: bridge: vlan: account for router port lists when notifying (Ivan Vecera) [2019055] - net: bridge: vlan: enable mcast snooping for existing master vlans (Ivan Vecera) [2019055] - net: bridge: mcast: account for ipv6 size when dumping querier state (Ivan Vecera) [2019055] - net: bridge: mcast: drop sizeof for nest attribute's zero size (Ivan Vecera) [2019055] - net: bridge: mcast: don't dump querier state if snooping is disabled (Ivan Vecera) [2019055] - net: bridge: vlan: dump mcast ctx querier state (Ivan Vecera) [2019055] - net: bridge: mcast: dump ipv6 querier state (Ivan Vecera) [2019055] - net: bridge: mcast: dump ipv4 querier state (Ivan Vecera) [2019055] - net: bridge: mcast: consolidate querier selection for ipv4 and ipv6 (Ivan Vecera) [2019055] - net: bridge: mcast: make sure querier port/address updates are consistent (Ivan Vecera) [2019055] - net: bridge: mcast: record querier port device ifindex instead of pointer (Ivan Vecera) [2019055] - net: bridge: vlan: use br_rports_fill_info() to export mcast router ports (Ivan Vecera) [2019055] - net: bridge: mcast: use the proper multicast context when dumping router ports (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast router global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast querier global option (Ivan Vecera) [2019055] - net: bridge: mcast: querier and query state affect only current context type (Ivan Vecera) [2019055] - net: bridge: mcast: move querier state to the multicast context (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast startup query interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast query response interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast query interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast querier interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast membership interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast last member interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast startup query count global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast last member count global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast igmp/mld version global options (Ivan Vecera) [2019055] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Ivan Vecera) [2019055] - net: bridge: fix flags interpretation for extern learn fdb entries (Ivan Vecera) [2019055] - net: bridge: vlan: fix global vlan option range dumping (Ivan Vecera) [2019055] - net: bridge: fix memleak in br_add_if() (Ivan Vecera) [2019055] - net: make switchdev_bridge_port_{,unoffload} loosely coupled with the bridge (Ivan Vecera) [2019055] - net: bridge: switchdev: fix incorrect use of FDB flags when picking the dst device (Ivan Vecera) [2019055] - net: bridge: validate the NUD_PERMANENT bit when adding an extern_learn FDB entry (Ivan Vecera) [2019055] - net: bridge: switchdev: treat local FDBs the same as entries towards the bridge (Ivan Vecera) [2019055] - net: bridge: switchdev: replay the entire FDB for each port (Ivan Vecera) [2019055] - net: bridge: add a helper for retrieving port VLANs from the data path (Ivan Vecera) [2019055] - net: bridge: update BROPT_VLAN_ENABLED before notifying switchdev in br_vlan_filter_toggle (Ivan Vecera) [2019055] - net: bridge: fix build when setting skb->offload_fwd_mark with CONFIG_NET_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: switchdev: allow the TX data plane forwarding to be offloaded (Ivan Vecera) [2019055] - net: switchdev: fix FDB entries towards foreign ports not getting propagated to us (Ivan Vecera) [2019055] - net: bridge: move the switchdev object replay helpers to "push" mode (Ivan Vecera) [2019055] - net: bridge: guard the switchdev replay helpers against a NULL notifier block (Ivan Vecera) [2019055] - net: bridge: switchdev: let drivers inform which bridge ports are offloaded (Ivan Vecera) [2019055] - net: bridge: switchdev: recycle unused hwdoms (Ivan Vecera) [2019055] - net: bridge: disambiguate offload_fwd_mark (Ivan Vecera) [2019055] - net: bridge: multicast: add context support for host-joined groups (Ivan Vecera) [2019055] - net: bridge: multicast: add mdb context support (Ivan Vecera) [2019055] - net: bridge: multicast: fix igmp/mld port context null pointer dereferences (Ivan Vecera) [2019055] - net: switchdev: recurse into __switchdev_handle_fdb_del_to_device (Ivan Vecera) [2019055] - net: switchdev: remove stray semicolon in switchdev_handle_fdb_del_to_device shim (Ivan Vecera) [2019055] - net: bridge: vlan: add mcast snooping control (Ivan Vecera) [2019055] - net: bridge: vlan: notify when global options change (Ivan Vecera) [2019055] - net: bridge: vlan: add support for dumping global vlan options (Ivan Vecera) [2019055] - net: bridge: vlan: add support for global options (Ivan Vecera) [2019055] - net: bridge: multicast: include router port vlan id in notifications (Ivan Vecera) [2019055] - net: bridge: multicast: add vlan querier and query support (Ivan Vecera) [2019055] - net: bridge: multicast: check if should use vlan mcast ctx (Ivan Vecera) [2019055] - net: bridge: multicast: use the port group to port context helper (Ivan Vecera) [2019055] - net: bridge: multicast: add helper to get port mcast context from port group (Ivan Vecera) [2019055] - net: bridge: add vlan mcast snooping knob (Ivan Vecera) [2019055] - net: bridge: multicast: add vlan state initialization and control (Ivan Vecera) [2019055] - net: bridge: vlan: add global and per-port multicast context (Ivan Vecera) [2019055] - net: bridge: multicast: use multicast contexts instead of bridge or port (Ivan Vecera) [2019055] - net: bridge: multicast: factor out bridge multicast context (Ivan Vecera) [2019055] - net: bridge: multicast: factor out port multicast context (Ivan Vecera) [2019055] - net: switchdev: introduce a fanout helper for SWITCHDEV_FDB_{ADD,DEL}_TO_DEVICE (Ivan Vecera) [2019055] - net: switchdev: introduce helper for checking dynamically learned FDB entries (Ivan Vecera) [2019055] - net: bridge: do not replay fdb entries pointing towards the bridge twice (Ivan Vecera) [2019055] - net: bridge: multicast: fix MRD advertisement router port marking race (Ivan Vecera) [2019055] - net: bridge: multicast: fix PIM hello router port marking race (Ivan Vecera) [2019055] - net: bridge: sync fdb to new unicast-filtering ports (Ivan Vecera) [2019055] - net: bridge: allow br_fdb_replay to be called for the bridge device (Ivan Vecera) [2019055] - net: bridge: switchdev: send FDB notifications for host addresses (Ivan Vecera) [2019055] - net: bridge: use READ_ONCE() and WRITE_ONCE() compiler barriers for fdb->dst (Ivan Vecera) [2019055] - net: bridge: allow the switchdev replay functions to be called for deletion (Ivan Vecera) [2019055] - net: bridge: constify variables in the replay helpers (Ivan Vecera) [2019055] - net: bridge: ignore switchdev events for LAG ports which didn't request replay (Ivan Vecera) [2019055] - net: switchdev: add a context void pointer to struct switchdev_notifier_info (Ivan Vecera) [2019055] - net: bridge: include the is_local bit in br_fdb_replay (Ivan Vecera) [2019055] - net: bridge: mrp: Update the Test frames for MRA (Ivan Vecera) [2019055] - bridge: cfm: remove redundant return (Ivan Vecera) [2019055] - net: bridge: remove redundant continue statement (Ivan Vecera) [2019055] - net: bridge: fix vlan tunnel dst refcnt when egressing (Ivan Vecera) [2019055] - net: bridge: fix vlan tunnel dst null pointer dereference (Ivan Vecera) [2019055] - net: bridge: mrp: Update ring transitions. (Ivan Vecera) [2019055] - net: bridge: remove redundant assignment (Ivan Vecera) [2019055] - net: bridge: fix br_multicast_is_router stub when igmp is disabled (Ivan Vecera) [2019055] - net: bridge: fix build when IPv6 is disabled (Ivan Vecera) [2019055] - net: bridge: mcast: export multicast router presence adjacent to a port (Ivan Vecera) [2019055] - net: bridge: mcast: add ip4+ip6 mcast router timers to mdb netlink (Ivan Vecera) [2019055] - net: bridge: mcast: split multicast router state for IPv4 and IPv6 (Ivan Vecera) [2019055] - net: bridge: mcast: split router port del+notify for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare add-router function for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare expiry functions for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare is-router function for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare query reception for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare mdb netlink for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: add wrappers for router node retrieval (Ivan Vecera) [2019055] - net: bridge: mcast: rename multicast router lists and timers (Ivan Vecera) [2019055] - bridge: Fix possible races between assigning rx_handler_data and setting IFF_BRIDGE_PORT bit (Ivan Vecera) [2019055] - net: bridge: mcast: fix broken length + header check for MRDv6 Adv. (Ivan Vecera) [2019055] - net: bridge: fix error in br_multicast_add_port when CONFIG_NET_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: propagate error code and extack from br_mc_disabled_update (Ivan Vecera) [2019055] - net: bridge: Fix missing return assignment from br_vlan_replay_one call (Ivan Vecera) [2019055] - bridge: mrp: Disable roles before deleting the MRP instance (Ivan Vecera) [2019055] - net: bridge: add helper to replay VLANs installed on port (Ivan Vecera) [2019055] - net: bridge: add helper to replay port and local fdb entries (Ivan Vecera) [2019055] - net: bridge: add helper to replay port and host-joined mdb entries (Ivan Vecera) [2019055] - net: bridge: add helper to retrieve the current ageing time (Ivan Vecera) [2019055] - net: bridge: add helper for retrieving the current bridge port STP state (Ivan Vecera) [2019055] - net: bridge: when suppression is enabled exclude RARP packets (Ivan Vecera) [2019055] - net: bridge: declare br_vlan_tunnel_lookup argument tunnel_id as __be64 (Ivan Vecera) [2019055] - Documentation: networking: switchdev: add missing "and" word (Ivan Vecera) [2019055] - Documentation: networking: switchdev: separate bulleted items with new line (Ivan Vecera) [2019055] - Documentation: networking: switchdev: fix command for static FDB entries (Ivan Vecera) [2019055] - Documentation: networking: switchdev: clarify device driver behavior (Ivan Vecera) [2019055] - net: bridge: mcast: factor out common allow/block EHT handling (Ivan Vecera) [2019055] - net: bridge: mcast: remove unreachable EHT code (Ivan Vecera) [2019055] - net: bridge: Fix fall-through warnings for Clang (Ivan Vecera) [2019055] - bridge: mrp: Update br_mrp to use new return values of br_mrp_switchdev (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp_switchdev to detect better the errors (Ivan Vecera) [2019055] - bridge: mrp: Add 'enum br_mrp_hw_support' (Ivan Vecera) [2019055] - switchdev: mrp: Extend ring_role_mrp and in_role_mrp (Ivan Vecera) [2019055] - switchdev: mrp: Remove CONFIG_BRIDGE_MRP (Ivan Vecera) [2019055] - net: bridge: fix br_vlan_filter_toggle stub when CONFIG_BRIDGE_VLAN_FILTERING=n (Ivan Vecera) [2019055] - net: bridge: fix switchdev_port_attr_set stub when CONFIG_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: propagate extack through switchdev_port_attr_set (Ivan Vecera) [2019055] - net: bridge: propagate extack through store_bridge_parm (Ivan Vecera) [2019055] - net: bridge: remove __br_vlan_filter_toggle (Ivan Vecera) [2019055] - net: switchdev: pass flags and mask to both {PRE_,}BRIDGE_FLAGS attributes (Ivan Vecera) [2019055] - net: bridge: don't print in br_switchdev_set_port_flag (Ivan Vecera) [2019055] - net: bridge: offload all port flags at once in br_setport (Ivan Vecera) [2019055] - net: switchdev: propagate extack to port attributes (Ivan Vecera) [2019055] - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT (Ivan Vecera) [2019055] - bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state (Ivan Vecera) [2019055] - net: bridge: mcast: Use ERR_CAST instead of ERR_PTR(PTR_ERR()) (Ivan Vecera) [2019055] - net: bridge: add warning comments to avoid extending sysfs (Ivan Vecera) [2019055] - net: bridge: mcast: drop hosts limit sysfs support (Ivan Vecera) [2019055] - net: bridge: multicast: make tracked EHT hosts limit configurable (Ivan Vecera) [2019055] - net: bridge: multicast: add per-port EHT hosts limit (Ivan Vecera) [2019055] - net: switchdev: use obj-$(CONFIG_NET_SWITCHDEV) form in net/Makefile (Ivan Vecera) [2019055] - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP (Ivan Vecera) [2019055] - net: bridge: multicast: fix br_multicast_eht_set_entry_lookup indentation (Ivan Vecera) [2019055] - bridge: Use PTR_ERR_OR_ZERO instead if(IS_ERR(...)) + PTR_ERR (Ivan Vecera) [2019055] - net: mrp: move struct definitions out of uapi (Ivan Vecera) [2019055] - net: mrp: fix definitions of MRP test packets (Ivan Vecera) [2019055] - net: bridge: multicast: mark IGMPv3/MLDv2 fast-leave deletes (Ivan Vecera) [2019055] - net: bridge: multicast: handle block pg delete for all cases (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host filter_mode handling (Ivan Vecera) [2019055] - net: bridge: multicast: optimize TO_INCLUDE EHT timeouts (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT include and exclude handling (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT allow/block handling (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host delete function (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT source set handling functions (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host handling functions (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT structures and definitions (Ivan Vecera) [2019055] - net: bridge: multicast: calculate idx position without changing ptr (Ivan Vecera) [2019055] - net: bridge: multicast: __grp_src_block_incl can modify pg (Ivan Vecera) [2019055] - net: bridge: multicast: pass host src address to IGMPv3/MLDv2 functions (Ivan Vecera) [2019055] - net: bridge: multicast: rename src_size to addr_size (Ivan Vecera) [2019055] - net: bridge: check vlan with eth_type_vlan() method (Ivan Vecera) [2019055] - net: switchdev: delete the transaction object (Ivan Vecera) [2019055] - mlxsw: spectrum_switchdev: remove transactional logic for VLAN objects (Ivan Vecera) [2019055] - net: switchdev: remove the transaction structure from port attributes (Ivan Vecera) [2019055] - net: switchdev: delete switchdev_port_obj_add_now (Ivan Vecera) [2019055] - net: switchdev: remove the transaction structure from port object notifiers (Ivan Vecera) [2019055] - net: switchdev: remove vid_begin -> vid_end range from VLAN objects (Ivan Vecera) [2019055] - net: bridge: fix misspellings using codespell tool (Ivan Vecera) [2019055] - net: bridge: notify switchdev of disappearance of old FDB entry upon migration (Ivan Vecera) [2019055] - bridge: Fix a deadlock when enabling multicast snooping (Ivan Vecera) [2019055] - bridge: mrp: Implement LC mode for MRP (Ivan Vecera) [2019055] - net: bridge: switch to net core statistics counters handling (Ivan Vecera) [2019055] - net: bridge: replace struct br_vlan_stats with pcpu_sw_netstats (Ivan Vecera) [2019055] - bridge: mrp: Use hlist_head instead of list_head for mrp (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 *,g auto-add (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exclude timeout (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add initial MLDv2 include test (Ivan Vecera) [2019055] - selftests: net: bridge: factor out and rename sg state functions (Ivan Vecera) [2019055] - selftests: net: lib: add support for IPv6 mcast packet test (Ivan Vecera) [2019055] - selftests: net: bridge: factor out mcast_packet_test (Ivan Vecera) [2019055] - net: bridge: mcast: fix stub definition of br_multicast_querier_exists (Ivan Vecera) [2019055] - net: bridge: explicitly convert between mdb entry state and port group flags (Ivan Vecera) [2019055] - net: bridge: mcast: add support for raw L2 multicast groups (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 *,g auto-add (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exclude timeout (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add tests for igmpv3 is_include and inc -> allow reports (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: add IGMPv3 entries' state helpers (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: check for specific udp ip protocol (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: add support for packet source address (Ivan Vecera) [2019055] - selftests: net: bridge: rename current igmp tests to igmpv2 (Ivan Vecera) [2019055] - net: bridge: fix uninitialized variables when BRIDGE_CFM is disabled (Ivan Vecera) [2019055] - bridge: cfm: Netlink Notifications. (Ivan Vecera) [2019055] - bridge: cfm: Netlink GET status Interface. (Ivan Vecera) [2019055] - bridge: cfm: Netlink GET configuration Interface. (Ivan Vecera) [2019055] - bridge: cfm: Netlink SET configuration Interface. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. CCM frame RX added. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. CCM frame TX added. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. MEP create/delete. (Ivan Vecera) [2019055] - bridge: uapi: cfm: Added EtherType used by the CFM protocol. (Ivan Vecera) [2019055] - bridge: cfm: Add BRIDGE_CFM to Kconfig. (Ivan Vecera) [2019055] - net: bridge: extend the process of special frames (Ivan Vecera) [2019055] - bridge: Netlink interface fix. (Ivan Vecera) [2019055] - net: bridge: mcast: remove only S,G port groups from sg_port hash (Ivan Vecera) [2019055] - net: switchdev: Fixed kerneldoc warning (Ivan Vecera) [2019055] - net: bridge: mcast: when forwarding handle filter mode and blocked flag (Ivan Vecera) [2019055] - net: bridge: mcast: handle host state (Ivan Vecera) [2019055] - net: bridge: mcast: add support for blocked port groups (Ivan Vecera) [2019055] - net: bridge: mcast: handle port group filter modes (Ivan Vecera) [2019055] - net: bridge: mcast: install S,G entries automatically based on reports (Ivan Vecera) [2019055] - net: bridge: mcast: add sg_port rhashtable (Ivan Vecera) [2019055] - net: bridge: mcast: add rt_protocol field to the port group struct (Ivan Vecera) [2019055] - net: bridge: mcast: when igmpv3/mldv2 are enabled lookup (S,G) first, then (*,G) (Ivan Vecera) [2019055] - net: bridge: mdb: add support for add/del/dump of entries with source (Ivan Vecera) [2019055] - net: bridge: mdb: add support to extend add/del commands (Ivan Vecera) [2019055] - net: bridge: mcast: rename br_ip's u member to dst (Ivan Vecera) [2019055] - net: bridge: mcast: use br_ip's src for src groups and querier address (Ivan Vecera) [2019055] - net: bridge: add src field to br_ip (Ivan Vecera) [2019055] - net: bridge: mdb: use extack in br_mdb_add() and br_mdb_add_group() (Ivan Vecera) [2019055] - net: bridge: mdb: move all port and bridge checks to br_mdb_add (Ivan Vecera) [2019055] - net: bridge: mdb: use extack in br_mdb_parse() (Ivan Vecera) [2019055] - net: bridge: delete duplicated words (Ivan Vecera) [2019055] - net: bridge: mcast: don't ignore return value of __grp_src_toex_excl (Ivan Vecera) [2019055] - __netif_receive_skb_core: don't untag vlan from skb on DSA master (Ivan Vecera) [2019055] - bridge: mcast: Fix incomplete MDB dump (Ivan Vecera) [2019055] - net: bridge: mcast: fix unused br var when lockdep isn't defined (Ivan Vecera) [2019055] - net: bridge: mcast: destroy all entries via gc (Ivan Vecera) [2019055] - net: bridge: mcast: improve IGMPv3/MLDv2 query processing (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 BLOCK_OLD_SOURCES report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 CHANGE_TO_INCLUDE/EXCLUDE report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 MODE_IS_INCLUDE/EXCLUDE report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPv3/MLDv2 ALLOW_NEW_SOURCES report (Ivan Vecera) [2019055] - net: bridge: mcast: delete expired port groups without srcs (Ivan Vecera) [2019055] - net: bridge: mdb: use mdb and port entries in notifications (Ivan Vecera) [2019055] - net: bridge: mdb: push notifications in __br_mdb_add/del (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group query retransmit (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group-and-source specific queries (Ivan Vecera) [2019055] - net: bridge: mcast: add support for src list and filter mode dumping (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group source list (Ivan Vecera) [2019055] - net: bridge: mcast: factor out port group del (Ivan Vecera) [2019055] - net: bridge: mdb: arrange internal structs so fast-path fields are close (Ivan Vecera) [2019055] - netlink: consistently use NLA_POLICY_EXACT_LEN() (Ivan Vecera) [2019055] - net: bridge: Add port attribute IFLA_BRPORT_MRP_IN_OPEN (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp_fill_info (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP_INFO attributes for interconnect status (Ivan Vecera) [2019055] - bridge: mrp: Extend MRP netlink interface for configuring MRP interconnect (Ivan Vecera) [2019055] - bridge: mrp: Implement the MRP Interconnect API (Ivan Vecera) [2019055] - bridge: switchdev: mrp: Extend MRP API for switchdev for MRP Interconnect (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_in_port_open function (Ivan Vecera) [2019055] - bridge: mrp: Rename br_mrp_port_open to br_mrp_ring_port_open (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp for MRP interconnect (Ivan Vecera) [2019055] - bridge: mrp: Extend bridge interface (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP attributes for MRP interconnect (Ivan Vecera) [2019055] - switchdev: mrp: Extend switchdev API for MRP Interconnect (Ivan Vecera) [2019055] - net: bridge: fix undefined br_vlan_can_enter_range in tunnel code (Ivan Vecera) [2019055] - net: switchdev: kerneldoc fixes (Ivan Vecera) [2019055] - net: bridge: notify on vlan tunnel changes done via the old api (Ivan Vecera) [2019055] - bridge: Extend br_fill_ifinfo to return MPR status (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_fill_info (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP attributes to get the status (Ivan Vecera) [2019055] - bridge: mrp: Fix endian conversion and some other warnings (Ivan Vecera) [2019055] - net: bridge: add a flag to avoid refreshing fdb when changing/adding (Ivan Vecera) [2019055] - net: bridge: add option to allow activity notifications for any fdb entries (Ivan Vecera) [2019055] - net: neighbor: add fdb extended attribute (Ivan Vecera) [2019055] - net: bridge: fdb_add_entry takes ndm as argument (Ivan Vecera) [2019055] - bridge: mrp: Validate when setting the port role (Ivan Vecera) [2019055] - bridge: uapi: mrp: Fix MRP_PORT_ROLE (Ivan Vecera) [2019055] - bridge: mrp: Add support for role MRA (Ivan Vecera) [2019055] - bridge: mrp: Set the priority of MRP instance (Ivan Vecera) [2019055] - bridge: mrp: Update MRP frame type (Ivan Vecera) [2019055] - bridge: multicast: work around clang bug (Ivan Vecera) [2019055] - bridge: mrp: Rework the MRP netlink interface (Ivan Vecera) [2019055] - bridge: mrp: Fix out-of-bounds read in br_mrp_parse (Ivan Vecera) [2019055] - bridge: mrp: Restore port state when deleting MRP instance (Ivan Vecera) [2019055] - switchdev: mrp: Remove the variable mrp_ring_state (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_unique_ifindex function (Ivan Vecera) [2019055] - net: bridge: allow enslaving some DSA master network devices (Ivan Vecera) [2019055] - net: remove newlines in NL_SET_ERR_MSG_MOD (Ivan Vecera) [2019055] - net: bridge: return false in br_mrp_enabled() (Ivan Vecera) [2019055] - docs: networking: convert switchdev.txt to ReST (Ivan Vecera) [2019055] - net: bridge: Add checks for enabling the STP. (Ivan Vecera) [2019055] - bridge: mrp: Integrate MRP into the bridge (Ivan Vecera) [2019055] - bridge: mrp: Implement netlink interface to configure MRP (Ivan Vecera) [2019055] - bridge: mrp: Connect MRP API with the switchdev API (Ivan Vecera) [2019055] - bridge: switchdev: mrp: Implement MRP API for switchdev (Ivan Vecera) [2019055] - switchdev: mrp: Extend switchdev API to offload MRP (Ivan Vecera) [2019055] - bridge: mrp: Add MRP interface. (Ivan Vecera) [2019055] - net: bridge: Add port attribute IFLA_BRPORT_MRP_RING_OPEN (Ivan Vecera) [2019055] - bridge: mrp: Extend bridge interface (Ivan Vecera) [2019055] - bridge: mrp: Update Kconfig (Ivan Vecera) [2019055] - bridge: uapi: mrp: Add mrp attributes. (Ivan Vecera) [2019055] - net: bridge: vlan options: move the tunnel command to the nested attribute (Ivan Vecera) [2019055] - net: bridge: vlan options: nest the tunnel id into a tunnel info attribute (Ivan Vecera) [2019055] - net: bridge: vlan: include stats in dumps if requested (Ivan Vecera) [2019055] - net: bridge: vlan options: add support for tunnel mapping set/del (Ivan Vecera) [2019055] - net: bridge: vlan options: add support for tunnel id dumping (Ivan Vecera) [2019055] - net: bridge: vlan tunnel: constify bridge and port arguments (Ivan Vecera) [2019055] - net: bridge: vlan options: rename br_vlan_opts_eq to br_vlan_opts_eq_range (Ivan Vecera) [2019055] - net: switchdev: do not propagate bridge updates across bridges (Ivan Vecera) [2019055] - bridge: br_stp: Use built-in RCU list checking (Ivan Vecera) [2019055] - net: switchdev: Replace zero-length array with flexible-array member (Ivan Vecera) [2019055] - net: bridge: vlan: add per-vlan state (Ivan Vecera) [2019055] - net: bridge: vlan: add basic option setting support (Ivan Vecera) [2019055] - net: bridge: vlan: add basic option dumping support (Ivan Vecera) [2019055] - net: bridge: check port state before br_allowed_egress (Ivan Vecera) [2019055] - net: bridge: vlan: notify on vlan add/delete/change flags (Ivan Vecera) [2019055] - net: bridge: vlan: add rtnetlink group and notify support (Ivan Vecera) [2019055] - net: bridge: vlan: add rtm range support (Ivan Vecera) [2019055] - net: bridge: vlan: add del rtm message support (Ivan Vecera) [2019055] - net: bridge: vlan: add new rtm message support (Ivan Vecera) [2019055] - net: bridge: vlan: add rtm definitions and dump support (Ivan Vecera) [2019055] - net: bridge: netlink: add extack error messages when processing vlans (Ivan Vecera) [2019055] - net: bridge: vlan: add helpers to check for vlan id/range validity (Ivan Vecera) [2019055] - net: bridge: add STP xstats (Ivan Vecera) [2019055] - treewide: Use sizeof_field() macro (Ivan Vecera) [2019055] - bridge: implement get_link_ksettings ethtool method (Ivan Vecera) [2019055] - net: bridge: fdb: eliminate extra port state tests from fast-path (Ivan Vecera) [2019055] - net: bridge: fdb: restore unlikely() when taking over externally added entries (Ivan Vecera) [2019055] - net: bridge: fdb: avoid two atomic bitops in br_fdb_external_learn_add() (Ivan Vecera) [2019055] - net: bridge: fdb: br_fdb_update can take flags directly (Ivan Vecera) [2019055] - net: bridge: Populate the pvid flag in br_vlan_get_info (Ivan Vecera) [2019055] - net: fix __ip_mc_inc_group usage (Ivan Vecera) [2019055] - net: bridge: mdb: allow add/delete for host-joined groups (Ivan Vecera) [2019055] - net: bridge: mdb: dump host-joined entries as well (Ivan Vecera) [2019055] - net: bridge: mdb: factor out mdb filling (Ivan Vecera) [2019055] - net: bridge: mdb: move vlan comments (Ivan Vecera) [2019055] - net: bridge: mcast: add delete due to fast-leave mdb flag (Ivan Vecera) [2019055] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Ivan Vecera) [2019055] - treewide: Add SPDX license identifier for missed files (Ivan Vecera) [2019055] - treewide: Add SPDX license identifier - Makefile/Kconfig (Ivan Vecera) [2019055] - bridge: Fix error path for kobject_init_and_add() (Ivan Vecera) [2019055] - bridge: only include nf_queue.h if needed (Ivan Vecera) [2019055] - bridge: broute: make broute a real ebtables table (Ivan Vecera) [2019055] - bridge: netfilter: unroll NF_HOOK helper in bridge input path (Ivan Vecera) [2019055] - bridge: reduce size of input cb to 16 bytes (Ivan Vecera) [2019055] - net: bridge: update multicast stats from maybe_deliver() (Ivan Vecera) [2019055] - net: bridge: mcast: remove unused br_ip_equal function (Ivan Vecera) [2019055] - net: bridge: optimize backup_port fdb convergence (Ivan Vecera) [2019055] - net: bridge: use netif_is_bridge_port() (Ivan Vecera) [2019055] - net: bridge: use eth_broadcast_addr() to assign broadcast address (Ivan Vecera) [2019055] - tools headers uapi: Update linux/in.h copy (Ivan Vecera) [2019055] - switchdev: Remove unused transaction item queue (Ivan Vecera) [2019055] - bridge: remove redundant check on err in br_multicast_ipv4_rcv (Ivan Vecera) [2019055] - net: Fix ip_mc_{dec,inc}_group allocation context (Ivan Vecera) [2019055] - bridge: remove duplicated include from br_multicast.c (Ivan Vecera) [2019055] - bridge: Snoop Multicast Router Advertisements (Ivan Vecera) [2019055] - bridge: join all-snoopers multicast address (Ivan Vecera) [2019055] - bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() internals (Ivan Vecera) [2019055] - tools include uapi: Sync linux/if_link.h copy with the kernel sources (Ivan Vecera) [2019055] - net: bridge: fix a bug on using a neighbour cache entry without checking its state (Ivan Vecera) [2019055] - net: bridge: remove unneeded variable 'err' (Ivan Vecera) [2019055] - net: bridge: remove redundant checks for null p->dev and p->br (Ivan Vecera) [2019055] - net: bridge: export supported boolopts (Ivan Vecera) [2019055] - net: bridge: add no_linklocal_learn bool option (Ivan Vecera) [2019055] - net: bridge: add support for user-controlled bool options (Ivan Vecera) [2019055] - bridge: use __vlan_hwaccel helpers (Ivan Vecera) [2019055] - netfilter: bridge: define INT_MIN & INT_MAX in userspace (Ivan Vecera) [2019055] - docs: fix some broken documentation references (Ivan Vecera) [2019055] - bridge: Switch to bitmap_zalloc() (Ivan Vecera) [2019055] - netfilter: bridge: Expose nf_tables bridge hook priorities through uapi (Ivan Vecera) [2019055] - net: bridge: add support for backup port (Ivan Vecera) [2019055] - net: bridge: add support for raw sysfs port options (Ivan Vecera) [2019055] - docs: networking: Convert bridge.txt to rst (Ivan Vecera) [2019055] - net: switchdev: consolidate RH_KABI macros usage (Ivan Vecera) [2019055] - kcov: Remove kcov include from sched.h and move it to its users. (Josef Oskera) [2026467] - tasklets: Provide tasklet_disable_in_atomic() (Ivan Vecera) [2026475] - tasklets: Use static inlines for stub implementations (Ivan Vecera) [2026475] - net: sock: introduce sk_error_report (Ivan Vecera) [2026469] - redhat: Add CONFIG_RHEL_DIFFERENCES (Prarit Bhargava) [2021571]- serial: 8520_port: Fix function param documentation (Waiman Long) [1970241] - serial: 8250: Optimize irq enable after console write (Waiman Long) [1970241] - serial: 8250: Fix rs485 delay after console write (Waiman Long) [1970241] - serial: 8250: Support console on software emulated rs485 ports (Waiman Long) [1970241] - serial: 8250: Generalize rs485 software emulation (Waiman Long) [1970241] - serial: 8250: Deduplicate rs485 active_timer assignment (Waiman Long) [1970241] - serial: 8250: Sanitize rs485 config harder (Waiman Long) [1970241] - serial: 8250: Deduplicate ->rs485_config() callback (Waiman Long) [1970241] - serial: 8250: Support rs485 devicetree properties (Waiman Long) [1970241] - serial: 8250_port: Don't use power management for kernel console (Waiman Long) [1970241] - console: Introduce ->exit() callback (Waiman Long) [1970241] - console: Don't notify user space when unregister non-listed console (Waiman Long) [1970241] - tty: 8250_of: Use software emulated RS485 direction control (Waiman Long) [1970241] - serial: 8250: Add MSR/MCR TIOCM conversion wrapper functions (Waiman Long) [1970241] - serial: 8250_of: Use of_device_get_match_data() (Waiman Long) [1970241] - serial: 8250_of: Fix for lack of interrupt support (Waiman Long) [1970241] - serial: 8250: of: Defer probe on missing IRQ (Waiman Long) [1970241] - serial: 8250: of: Correct of_platform_serial_setup() error handling (Waiman Long) [1970241] - mm/vmstat: protect per cpu variables with preempt disable on RT (Scott Wood) [2011667] - mm, slub: convert kmem_cpu_slab protection to local_lock (Scott Wood) [2011667] - mm, slub: use migrate_disable() on PREEMPT_RT (Scott Wood) [2011667] - mm, slub: protect put_cpu_partial() with disabled irqs instead of cmpxchg (Scott Wood) [2011667] - mm, slub: make slab_lock() disable irqs with PREEMPT_RT (Scott Wood) [2011667] - mm: slub: make object_map_lock a raw_spinlock_t (Scott Wood) [2011667] - mm: slub: move flush_cpu_slab() invocations __free_slab() invocations out of IRQ context (Scott Wood) [2011667] - mm, slab: split out the cpu offline variant of flush_slab() (Scott Wood) [2011667] - mm, slub: don't disable irqs in slub_cpu_dead() (Scott Wood) [2011667] - mm, slub: only disable irq with spin_lock in __unfreeze_partials() (Scott Wood) [2011667] - mm, slub: separate detaching of partial list in unfreeze_partials() from unfreezing (Scott Wood) [2011667] - mm, slub: detach whole partial list at once in unfreeze_partials() (Scott Wood) [2011667] - mm, slub: discard slabs in unfreeze_partials() without irqs disabled (Scott Wood) [2011667] - mm, slub: move irq control into unfreeze_partials() (Scott Wood) [2011667] - mm, slub: call deactivate_slab() without disabling irqs (Scott Wood) [2011667] - mm, slub: make locking in deactivate_slab() irq-safe (Scott Wood) [2011667] - mm, slub: move reset of c->page and freelist out of deactivate_slab() (Scott Wood) [2011667] - mm, slub: stop disabling irqs around get_partial() (Scott Wood) [2011667] - mm, slub: check new pages with restored irqs (Scott Wood) [2011667] - mm, slub: validate slab from partial list or page allocator before making it cpu slab (Scott Wood) [2011667] - mm, slub: restore irqs around calling new_slab() (Scott Wood) [2011667] - mm, slub: move disabling irqs closer to get_partial() in ___slab_alloc() (Scott Wood) [2011667] - mm, slub: do initial checks in ___slab_alloc() with irqs enabled (Scott Wood) [2011667] - mm, slub: move disabling/enabling irqs to ___slab_alloc() (Scott Wood) [2011667] - mm, slub: simplify kmem_cache_cpu and tid setup (Scott Wood) [2011667] - mm, slub: restructure new page checks in ___slab_alloc() (Scott Wood) [2011667] - mm, slub: return slab page from get_partial() and set c->page afterwards (Scott Wood) [2011667] - mm, slub: dissolve new_slab_objects() into ___slab_alloc() (Scott Wood) [2011667] - mm, slub: extract get_partial() from new_slab_objects() (Scott Wood) [2011667] - mm, slub: remove redundant unfreeze_partials() from put_cpu_partial() (Scott Wood) [2011667] - mm, slub: don't disable irq for debug_check_no_locks_freed() (Scott Wood) [2011667] - mm, slub: allocate private object map for validate_slab_cache() (Scott Wood) [2011667] - mm, slub: allocate private object map for debugfs listings (Scott Wood) [2011667] - mm, slub: don't call flush_all() from slab_debug_trace_open() (Scott Wood) [2011667] - mm/slub.c: drop lockdep_assert_held() from put_map() (Scott Wood) [2011667] - mm/slub.c: replace cpu_slab->partial with wrapped APIs (Scott Wood) [2011667] - mm/slub.c: replace kmem_cache->cpu_partial with wrapped APIs (Scott Wood) [2011667] - sched/rt, mm: Use CONFIG_PREEMPTION (Scott Wood) [2011667] - tcp: fix page frag corruption on page fault (Paolo Abeni) [1996074] - net: fix sk_page_frag() recursion from memory reclaim (Paolo Abeni) [1996074] - net: udp6: replace __UDP_INC_STATS() with __UDP6_INC_STATS() (Xin Long) [2020407] - net: udp: annotate data race around udp_sk(sk)->corkflag (Xin Long) [2020407] - net/ipv4/udp_tunnel_core.c: remove superfluous header files from udp_tunnel_core.c (Xin Long) [2020407] - udp_tunnel: Fix udp_tunnel_nic work-queue type (Xin Long) [2020407] - net, gro: Set inner transport header offset in tcp/udp GRO hook (Xin Long) [2020407] - bareudp: Add extack support to bareudp_configure() (Guillaume Nault) [1946040] - bareudp: Move definition of struct bareudp_conf to bareudp.c (Guillaume Nault) [1946040] - bareudp: Remove bareudp_dev_create() (Guillaume Nault) [1946040] - net: bareudp: simplify error paths calling dellink (Guillaume Nault) [1946040] - mptcp: re-arm retransmit timer if data is pending (Paolo Abeni) [2019493] - mptcp: remove tx_pending_data (Paolo Abeni) [2019493] - mptcp: do not shrink snd_nxt when recovering (Paolo Abeni) [2019493] - mptcp: drop unused sk in mptcp_push_release (Paolo Abeni) [2019493] - selftests: mptcp: fix proto type in link_failure tests (Paolo Abeni) [2019493] - selftests: mptcp: add testcase for active-back (Paolo Abeni) [2019493] - mptcp: backup flag from incoming MPJ ack option (Paolo Abeni) [2019493] - mptcp: add mibs for stale subflows processing (Paolo Abeni) [2019493] - mptcp: faster active backup recovery (Paolo Abeni) [2019493] - mptcp: cleanup sysctl data and helpers (Paolo Abeni) [2019493] - mptcp: handle pending data on closed subflow (Paolo Abeni) [2019493] - mptcp: less aggressive retransmission strategy (Paolo Abeni) [2019493] - mptcp: more accurate timeout (Paolo Abeni) [2019493] - mptcp: stop relying on tcp_tx_skb_cache (Paolo Abeni) [2019493] - tcp: expose the tcp_mark_push() and tcp_skb_entail() helpers (Paolo Abeni) [2019493] - selftests: KVM: avoid failures due to reserved HyperTransport region (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix when shadow_root_level=5 && guest root_level<4 (Vitaly Kuznetsov) [2009340] - KVM: x86: inhibit APICv when KVM_GUESTDBG_BLOCKIRQ active (Vitaly Kuznetsov) [2009340] - KVM: x86/xen: Fix get_attr of KVM_XEN_ATTR_TYPE_SHARED_INFO (Vitaly Kuznetsov) [2009340] - KVM: x86: Use rw_semaphore for APICv lock to allow vCPU parallelism (Vitaly Kuznetsov) [2009340] - KVM: selftests: test KVM_GUESTDBG_BLOCKIRQ (Vitaly Kuznetsov) [2009340] - x86/sgx/virt: implement SGX_IOC_VEPC_REMOVE ioctl (Vitaly Kuznetsov) [2009340] - x86/sgx/virt: extract sgx_vepc_remove_page (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Complete prefetch for trailing SPTEs for direct, legacy MMU (Vitaly Kuznetsov) [2009340] - KVM: x86: Do not mark all registers as avail/dirty during RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: SVM: don't set VMLOAD/VMSAVE intercepts on vCPU reset (Vitaly Kuznetsov) [2009340] - KVM: VMX: Unregister posted interrupt wakeup handler on hardware unsetup (Vitaly Kuznetsov) [2009340] - Revert "x86/kvm: fix vcpu-id indexed array sizes" (Vitaly Kuznetsov) [2009340] - KVM: X86: Cache CR3 in prev_roots when PCID is disabled (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix tlb flush for tdp in kvm_invalidate_pcid() (Vitaly Kuznetsov) [2009340] - KVM: X86: Don't reset mmu context when toggling X86_CR4_PGE (Vitaly Kuznetsov) [2009340] - KVM: X86: Don't reset mmu context when X86_CR4_PCIDE 1->0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: kvm_faultin_pfn has to return false if pfh is returned (Vitaly Kuznetsov) [2009340] - KVM: x86: Take srcu lock in post_kvm_run_save() (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: fix another issue with string I/O VMGEXITs (Vitaly Kuznetsov) [2009340] - KVM: x86/xen: Fix kvm_xen_has_interrupt() sleeping in kvm_vcpu_block() (Vitaly Kuznetsov) [2009340] - KVM: x86: switch pvclock_gtod_sync_lock to a raw spinlock (Vitaly Kuznetsov) [2009340] - KVM: selftests: Refactor help message for -s backing_src (Vitaly Kuznetsov) [2009340] - KVM: selftests: Change backing_src flag to -s in demand_paging_test (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: go over the sev_pio_data buffer in multiple passes if needed (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: keep INS functions together (Vitaly Kuznetsov) [2009340] - KVM: x86: remove unnecessary arguments from complete_emulator_pio_in (Vitaly Kuznetsov) [2009340] - KVM: x86: split the two parts of emulator_pio_in (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: clean up kvm_sev_es_ins/outs (Vitaly Kuznetsov) [2009340] - KVM: x86: leave vcpu->arch.pio.count alone in emulator_pio_in_out (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: rename guest_ins_data to sev_pio_data (Vitaly Kuznetsov) [2009340] - KVM: SEV: Flush cache on non-coherent systems before RECEIVE_UPDATE_DATA (Vitaly Kuznetsov) [2009340] - KVM: MMU: Reset mmu->pkru_mask to avoid stale data (Vitaly Kuznetsov) [2009340] - KVM: nVMX: promptly process interrupts delivered while in guest mode (Vitaly Kuznetsov) [2009340] - KVM: x86: check for interrupts before deciding whether to exit the fast path (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: reduce ghcb_sa_len to 32 bits (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove redundant handling of bus lock vmexit (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN if APIC HW/SW disable static keys are non-zero on unload (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: fix length of string I/O (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: Set guest_state_protected after VMSA update (Vitaly Kuznetsov) [2009340] - KVM: kvm_stat: do not show halt_wait_ns (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: Open code necessary bits of kvm_lapic_set_base() at vCPU RESET" (Vitaly Kuznetsov) [2009340] - KVM: s390: restore old debugfs names (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Synch KVM's svm.h header with the kernel (Vitaly Kuznetsov) [2009340] - KVM: selftests: introduce P44V64 for z196 and EC12 (Vitaly Kuznetsov) [2009340] - KVM: selftests: introduce P47V64 for s390x (Vitaly Kuznetsov) [2009340] - x86/sev: Use "SEV: " prefix for messages from sev.c (Vitaly Kuznetsov) [2009340] - KVM: stats: remove dead stores (Vitaly Kuznetsov) [2009340] - kvm: x86: Add AMD PMU MSRs to msrs_to_save_all[] (Vitaly Kuznetsov) [2009340] - kvm: fix objtool relocation warning (Vitaly Kuznetsov) [2009340] - KVM: selftests: Ensure all migrations are performed when test is affined (Vitaly Kuznetsov) [2009340] - KVM: x86: Swap order of CPUID entry "index" vs. "significant flag" checks (Vitaly Kuznetsov) [2009340] - x86/kvmclock: Move this_cpu_pvti into kvmclock.h (Vitaly Kuznetsov) [2009340] - selftests: KVM: Don't clobber XMM register when read (Vitaly Kuznetsov) [2009340] - KVM: VMX: Fix a TSX_CTRL_CPUID_CLEAR field mask issue (Vitaly Kuznetsov) [2009340] - selftests: KVM: Explicitly use movq to read xmm registers (Vitaly Kuznetsov) [2009340] - selftests: KVM: Call ucall_init when setting up in rseq_test (Vitaly Kuznetsov) [2009340] - KVM: X86: Synchronize the shadow pagetable before link it (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix missed remote tlb flush in rmap_write_protect() (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: don't copy virt_ext from vmcb12 (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: test eax for 4K alignment for GP errata workaround (Vitaly Kuznetsov) [2009340] - KVM: x86: selftests: test simultaneous uses of V_IRQ from L1 and L0 (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: restore int_vector in svm_clear_vintr (Vitaly Kuznetsov) [2009340] - KVM: x86: nVMX: re-evaluate emulation_required on nested VM exit (Vitaly Kuznetsov) [2009340] - KVM: x86: nVMX: don't fail nested VM entry on invalid guest state if !from_vmentry (Vitaly Kuznetsov) [2009340] - KVM: x86: VMX: synthesize invalid VM exit when emulating invalid guest state (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: refactor svm_leave_smm and smm_enter_smm (Vitaly Kuznetsov) [2009340] - KVM: x86: SVM: call KVM_REQ_GET_NESTED_STATE_PAGES on exit from SMM mode (Vitaly Kuznetsov) [2009340] - KVM: x86: reset pdptrs_from_userspace when exiting smm (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: restore the L1 host state prior to resuming nested guest on SMM exit (Vitaly Kuznetsov) [2009340] - KVM: KVM: Use cpumask_available() to check for NULL cpumask when kicking vCPUs (Vitaly Kuznetsov) [2009340] - KVM: Clean up benign vcpu->cpu data races when kicking vCPUs (Vitaly Kuznetsov) [2009340] - KVM: x86: Fix stack-out-of-bounds memory access from ioapic_write_indirect() (Vitaly Kuznetsov) [2009340] - KVM: selftests: Create a separate dirty bitmap per slot (Vitaly Kuznetsov) [2009340] - KVM: SEV: Allow some commands for mirror VM (Vitaly Kuznetsov) [2009340] - KVM: SEV: Update svm_vm_copy_asid_from for SEV-ES (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Fix nested bus lock VM exit (Vitaly Kuznetsov) [2009340] - KVM: x86: Identify vCPU0 by its vcpu_idx instead of its vCPUs array entry (Vitaly Kuznetsov) [2009340] - KVM: x86: Query vcpu->vcpu_idx directly and drop its accessor (Vitaly Kuznetsov) [2009340] - kvm: fix wrong exception emulation in check_rdtsc (Vitaly Kuznetsov) [2009340] - KVM: SEV: Pin guest memory for write for RECEIVE_UPDATE_DATA (Vitaly Kuznetsov) [2009340] - KVM: SVM: fix missing sev_decommission in sev_receive_start (Vitaly Kuznetsov) [2009340] - KVM: SEV: Acquire vcpu mutex when updating VMSA (Vitaly Kuznetsov) [2009340] - KVM: do not shrink halt_poll_ns below grow_start (Vitaly Kuznetsov) [2009340] - KVM: nVMX: fix comments of handle_vmon() (Vitaly Kuznetsov) [2009340] - KVM: x86: Handle SRCU initialization failure during page track init (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove defunct "nr_active_uret_msrs" field (Vitaly Kuznetsov) [2009340] - selftests: KVM: Align SMCCC call with the spec in steal_time (Vitaly Kuznetsov) [2009340] - selftests: KVM: Fix check for !POLLIN in demand_paging_test (Vitaly Kuznetsov) [2009340] - KVM: x86: Clear KVM's cached guest CR3 at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Mark all registers as avail/dirty at vCPU creation (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add a test for KVM_RUN+rseq to detect task migration bugs (Vitaly Kuznetsov) [2009340] - tools: Move x86 syscall number fallbacks to .../uapi/ (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix get_run_delay() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - selftests: kvm: move get_run_delay() into lib/test_util (Vitaly Kuznetsov) [2009340] - selftests:kvm: fix get_trans_hugepagesz() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - selftests:kvm: fix get_warnings_count() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - tools: rename bitmap_alloc() to bitmap_zalloc() (Vitaly Kuznetsov) [2009340] - KVM: Drop unused kvm_dirty_gfn_invalid() (Vitaly Kuznetsov) [2009340] - KVM: MMU: mark role_regs and role accessors as maybe unused (Vitaly Kuznetsov) [2009340] - x86/kvm: Don't enable IRQ when IRQ enabled in kvm_wait (Vitaly Kuznetsov) [2009340] - KVM: stats: Add VM stat for remote tlb flush requests (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Move lpage_disallowed_link further "down" in kvm_mmu_page (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Relocate kvm_mmu_page.tdp_mmu_page for better cache locality (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: mmu: Add guest physical address check in translate_gpa()" (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove unused field mmio_cached in struct kvm_mmu_page (Vitaly Kuznetsov) [2009340] - KVM: VMX: avoid running vmx_handle_exit_irqoff in case of emulation (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't freak out if pml5_root is NULL on 4-level host (Vitaly Kuznetsov) [2009340] - KVM: SVM: Add 5-level page table support for SVM (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Support shadowing NPT when 5-level paging is enabled in host (Vitaly Kuznetsov) [2009340] - KVM: x86: Allow CPU to force vendor-specific TDP level (Vitaly Kuznetsov) [2009340] - KVM: x86: clamp host mapping level to max_level in kvm_mmu_max_mapping_level (Vitaly Kuznetsov) [2009340] - KVM: x86: implement KVM_GUESTDBG_BLOCKIRQ (Vitaly Kuznetsov) [2009340] - KVM: SVM: split svm_handle_invalid_exit (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Avoid collision with !PRESENT SPTEs in TDP MMU lpage stats (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant spte present check in mmu_set_spte (Vitaly Kuznetsov) [2009340] - KVM: stats: Add halt polling related histogram stats (Vitaly Kuznetsov) [2009340] - KVM: stats: Add halt_wait_ns stats for all architectures (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add checks for histogram stats bucket_size field (Vitaly Kuznetsov) [2009340] - KVM: stats: Update doc for histogram statistics (Vitaly Kuznetsov) [2009340] - KVM: stats: Support linear and logarithmic histogram statistics (Vitaly Kuznetsov) [2009340] - KVM: SVM: AVIC: drop unsupported AVIC base relocation code (Vitaly Kuznetsov) [2009340] - KVM: SVM: call avic_vcpu_load/avic_vcpu_put when enabling/disabling AVIC (Vitaly Kuznetsov) [2009340] - KVM: SVM: move check for kvm_vcpu_apicv_active outside of avic_vcpu_{put|load} (Vitaly Kuznetsov) [2009340] - KVM: SVM: avoid refreshing avic if its state didn't change (Vitaly Kuznetsov) [2009340] - KVM: SVM: remove svm_toggle_avic_for_irq_window (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Deactivate APICv only when AutoEOI feature is in use (Vitaly Kuznetsov) [2009340] - KVM: SVM: add warning for mistmatch between AVIC vcpu state and AVIC inhibition (Vitaly Kuznetsov) [2009340] - KVM: x86: APICv: fix race in kvm_request_apicv_update on SVM (Vitaly Kuznetsov) [2009340] - KVM: x86: don't disable APICv memslot when inhibited (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: allow APICv memslot to be enabled but invisible (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: allow kvm_faultin_pfn to return page fault handling code (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: rename try_async_pf to kvm_faultin_pfn (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: add comment explaining arguments to kvm_zap_gfn_range (Vitaly Kuznetsov) [2009340] - KVM: Allow to have arch-specific per-vm debugfs files (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Unconditionally clear nested.pi_pending on nested VM-Enter (Vitaly Kuznetsov) [2009340] - KVM: x86: Clean up redundant ROL16(val, n) macro definition (Vitaly Kuznetsov) [2009340] - KVM: x86: Move declaration of kvm_spurious_fault() to x86.h (Vitaly Kuznetsov) [2009340] - KVM: x86: Kill off __ex() and __kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Hide VMCS control calculators in vmx.c (Vitaly Kuznetsov) [2009340] - KVM: VMX: Drop caching of KVM's desired sec exec controls for vmcs01 (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Pull KVM L0's desired controls directly from vmcs01 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Reset DR6 only when KVM_DEBUGREG_WONT_EXIT (Vitaly Kuznetsov) [2009340] - KVM: X86: Set host DR6 only on VMX and for KVM_DEBUGREG_WONT_EXIT (Vitaly Kuznetsov) [2009340] - KVM: X86: Remove unneeded KVM_DEBUGREG_RELOAD (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Use vmx_need_pf_intercept() when deciding if L0 wants a #PF (Vitaly Kuznetsov) [2009340] - kvm: vmx: Sync all matching EPTPs when injecting nested EPT fault (Vitaly Kuznetsov) [2009340] - KVM: x86: remove dead initialization (Vitaly Kuznetsov) [2009340] - KVM: x86: Allow guest to set EFER.NX=1 on non-PAE 32-bit kernels (Vitaly Kuznetsov) [2009340] - x86: Fix typo s/ECLR/ELCR/ for the PIC register (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use current VMCS to query WAITPKG support for MSR emulation (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move vcpu_args_set into perf_test_util (Vitaly Kuznetsov) [2009340] - KVM: selftests: Support multiple slots in dirty_log_perf_test (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Leverage vcpu->last_used_slot for rmap_add and rmap_recycle (Vitaly Kuznetsov) [2009340] - KVM: Cache the last used slot index per vCPU (Vitaly Kuznetsov) [2009340] - KVM: Move last_used_slot logic out of search_memslots (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix per-cpu counter corruption on 32-bit builds (Vitaly Kuznetsov) [2009340] - KVM: xen: do not use struct gfn_to_hva_cache (Vitaly Kuznetsov) [2009340] - KVM: selftests: fix hyperv_clock test (Vitaly Kuznetsov) [2009340] - KVM: SVM: improve the code readability for ASID management (Vitaly Kuznetsov) [2009340] - KVM: SVM: Fix off-by-one indexing when nullifying last used SEV VMCB (Vitaly Kuznetsov) [2009340] - KVM: Do not leak memory for duplicate debugfs directories (Vitaly Kuznetsov) [2009340] - KVM: x86/pmu: Introduce pmc->is_paused to reduce the call time of perf interfaces (Vitaly Kuznetsov) [2009340] - KVM: X86: Optimize zapping rmap (Vitaly Kuznetsov) [2009340] - KVM: X86: Optimize pte_list_desc with per-array counter (Vitaly Kuznetsov) [2009340] - KVM: X86: MMU: Tune PTE_LIST_EXT to be bigger (Vitaly Kuznetsov) [2009340] - KVM: selftests: Test access to XMM fast hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check if guest is allowed to use XMM registers for hypercall input (Vitaly Kuznetsov) [2009340] - KVM: x86: Introduce trace_kvm_hv_hypercall_done() (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check access to hypercall before reading XMM registers (Vitaly Kuznetsov) [2009340] - KVM: nSVM: remove useless kvm_clear_*_queue (Vitaly Kuznetsov) [2009340] - KVM: x86: Preserve guest's CR0.CD/NW on INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop redundant clearing of vcpu->arch.hflags at INIT/RESET (Vitaly Kuznetsov) [2009340] - KVM: SVM: Emulate #INIT in response to triple fault shutdown (Vitaly Kuznetsov) [2009340] - KVM: VMX: Move RESET-only VMWRITE sequences to init_vmcs() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove redundant write to set vCPU as active at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Smush x2APIC MSR bitmap adjustments into single function (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove unnecessary initialization of msr_bitmap_mode (Vitaly Kuznetsov) [2009340] - KVM: VMX: Don't redo x2APIC MSR bitmaps when userspace filter is changed (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Remove obsolete MSR bitmap refresh at nested transitions (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove obsolete MSR bitmap refresh at vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Move setting of sregs during vCPU RESET/INIT to common x86 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Don't _explicitly_ reconfigure user return MSRs on vCPU INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Refresh list of user return MSRs after setting guest CPUID (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip pointless MSR bitmap update when setting EFER (Vitaly Kuznetsov) [2009340] - KVM: SVM: Stuff save->dr6 at during VMSA sync, not at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop redundant writes to vmcb->save.cr4 at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Tweak order of cr0/cr4/efer writes at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Don't evaluate "emulation required" on nested VM-Exit (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip emulation required checks during pmode/rmode transitions (Vitaly Kuznetsov) [2009340] - KVM: VMX: Process CR0.PG side effects after setting CR0 assets (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Skip the permission_fault() check on MMIO if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Pull GUEST_CR3 from the VMCS iff CR3 load exiting is disabled (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Do not clear CR3 load/store exiting bits if L1 wants 'em (Vitaly Kuznetsov) [2009340] - KVM: VMX: Fold ept_update_paging_mode_cr0() back into vmx_set_cr0() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove direct write to vcpu->arch.cr0 during vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Invert handling of CR0.WP for EPT without unrestricted guest (Vitaly Kuznetsov) [2009340] - KVM: SVM: Don't bother writing vmcb->save.rip at vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Move EDX initialization at vCPU RESET to common code (Vitaly Kuznetsov) [2009340] - KVM: x86: Consolidate APIC base RESET initialization code (Vitaly Kuznetsov) [2009340] - KVM: x86: Open code necessary bits of kvm_lapic_set_base() at vCPU RESET (Vitaly Kuznetsov) [2009340] - KVM: VMX: Stuff vcpu->arch.apic_base directly at vCPU RESET (Vitaly Kuznetsov) [2009340] - KVM: x86: Set BSP bit in reset BSP vCPU's APIC base by default (Vitaly Kuznetsov) [2009340] - KVM: x86: Don't force set BSP bit when local APIC is managed by userspace (Vitaly Kuznetsov) [2009340] - KVM: x86: Migrate the PIT only if vcpu0 is migrated, not any BSP (Vitaly Kuznetsov) [2009340] - KVM: x86: Remove defunct BSP "update" in local APIC reset (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN if the APIC map is dirty without an in-kernel local APIC (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop explicit MMU reset at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove explicit MMU reset in enter_rmode() (Vitaly Kuznetsov) [2009340] - KVM: SVM: Fall back to KVM's hardcoded value for EDX at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Require exact CPUID.0x1 match when stuffing EDX at INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Set EDX at INIT with CPUID.0x1, Family-Model-Stepping (Vitaly Kuznetsov) [2009340] - KVM: SVM: Zero out GDTR.base and IDTR.base on INIT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Set LDTR to its architecturally defined value on nested VM-Exit (Vitaly Kuznetsov) [2009340] - KVM: x86: Flush the guest's TLB on INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: APICv: drop immediate APICv disablement on current vCPU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: fast_page_fault support for the TDP MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Make walk_shadow_page_lockless_{begin,end} interoperate with the TDP MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix use of enums in trace_fast_page_fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename cr2_or_gpa to gpa in fast_page_fault (Vitaly Kuznetsov) [2009340] - KVM: Introduce kvm_get_kvm_safe() (Vitaly Kuznetsov) [2009340] - x86/kvm: remove non-x86 stuff from arch/x86/kvm/ioapic.h (Vitaly Kuznetsov) [2009340] - KVM: X86: Add per-vm stat for max rmap list size (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Return old SPTE from mmu_spte_clear_track_bits() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Refactor shadow walk in __direct_map() to reduce indentation (Vitaly Kuznetsov) [2009340] - KVM: x86: Hoist kvm_dirty_regs check out of sync_regs() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Mark VM as bugged if page fault returns RET_PF_INVALID (Vitaly Kuznetsov) [2009340] - KVM: x86: Use KVM_BUG/KVM_BUG_ON to handle bugs that are fatal to the VM (Vitaly Kuznetsov) [2009340] - KVM: Export kvm_make_all_cpus_request() for use in marking VMs as bugged (Vitaly Kuznetsov) [2009340] - KVM: Add infrastructure and macro to mark VM as bugged (Vitaly Kuznetsov) [2009340] - KVM: Get rid of kvm_get_pfn() (Vitaly Kuznetsov) [2009340] - KVM: arm64: Use get_page() instead of kvm_get_pfn() (Vitaly Kuznetsov) [2009340] - KVM: x86: accept userspace interrupt only if no event is injected (Vitaly Kuznetsov) [2009340] - KVM: add missing compat KVM_CLEAR_DIRTY_LOG (Vitaly Kuznetsov) [2009340] - KVM: use cpu_relax when halt polling (Vitaly Kuznetsov) [2009340] - KVM: SVM: use vmcb01 in svm_refresh_apicv_exec_ctrl (Vitaly Kuznetsov) [2009340] - KVM: SVM: tweak warning about enabled AVIC on nested entry (Vitaly Kuznetsov) [2009340] - KVM: SVM: svm_set_vintr don't warn if AVIC is active but is about to be deactivated (Vitaly Kuznetsov) [2009340] - KVM: SVM: delay svm_vcpu_init_msrpm after svm->vmcb is initialized (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce access_tracking_perf_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix missing break in dirty_log_perf_test arg parsing (Vitaly Kuznetsov) [2009340] - x86/kvm: fix vcpu-id indexed array sizes (Vitaly Kuznetsov) [2009340] - KVM: x86: Check the right feature bit for MSR_KVM_ASYNC_PF_ACK access (Vitaly Kuznetsov) [2009340] - KVM: Documentation: Fix KVM_CAP_ENFORCE_PV_FEATURE_CPUID name (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Swap the parameter order for svm_copy_vmrun_state()/svm_copy_vmloadsave_state() (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Rename nested_svm_vmloadsave() to svm_copy_vmloadsave_state() (Vitaly Kuznetsov) [2009340] - docs: virt: kvm: api.rst: replace some characters (Vitaly Kuznetsov) [2009340] - docs: kvm: properly format code blocks and lists (Vitaly Kuznetsov) [2009340] - docs: kvm: fix build warnings (Vitaly Kuznetsov) [2009340] - KVM: selftests: Address extra memslot parameters in vm_vaddr_alloc (Vitaly Kuznetsov) [2009340] - kvm: debugfs: fix memory leak in kvm_create_vm_debugfs (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: WARN and reject loading KVM if NX is supported but not enabled" (Vitaly Kuznetsov) [2009340] - KVM: selftests: x86: Address missing vm_install_exception_handler conversions (Vitaly Kuznetsov) [2009340] - KVM: selftests: change pthread_yield to sched_yield (Vitaly Kuznetsov) [2009340] - KVM: x86: rename apic_access_page_done to apic_access_memslot_enabled (Vitaly Kuznetsov) [2009340] - kvm: x86: disable the narrow guest module parameter on unload (Vitaly Kuznetsov) [2009340] - selftests: kvm: Allows userspace to handle emulation errors. (Vitaly Kuznetsov) [2009340] - kvm: x86: Allow userspace to handle emulation errors (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Let guest use GBPAGES if supported in hardware and TDP is on (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get CR4.SMEP from MMU, not vCPU, in shadow page fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get CR0.WP from MMU, not vCPU, in shadow page fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop redundant rsvd bits reset for nested NPT (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Optimize and clean up so called "last nonleaf level" logic (Vitaly Kuznetsov) [2009340] - KVM: x86: Enhance comments for MMU roles and nested transition trickiness (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: WARN on any reserved SPTE value when making a valid SPTE (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add helpers to do full reserved SPTE checks w/ generic MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to determine PTTYPE (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Collapse 32-bit PAE and 64-bit statements for helpers (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add a helper to calculate root from role_regs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add helper to update paging metadata (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't update nested guest's paging bitmasks if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Consolidate reset_rsvds_bits_mask() calls (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU role_regs to get LA57, and drop vCPU LA57 helper (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get nested MMU's root level from the MMU's role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop "nx" from MMU context now that there are no readers (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to get EFER.NX during MMU configuration (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role/role_regs to compute context's metadata (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to detect EFER.NX in guest page walk (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's roles to compute last non-leaf level (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to compute PKRU bitmask (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to compute permission bitmask (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop vCPU param from reserved bits calculator (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to get CR4.PSE for computing rsvd bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't grab CR4.PSE for calculating shadow reserved bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Always set new mmu_role immediately after checking old role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Set CR4.PKE/LA57 in MMU role iff long mode is active (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Do not set paging-related bits in MMU role if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add accessors to query mmu_role bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename "nxe" role bit to "efer_nx" for macro shenanigans (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role_regs, not vCPU state, to compute mmu_role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Ignore CR0 and CR4 bits in nested EPT MMU role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Consolidate misc updates into shadow_mmu_init_context() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add struct and helpers to retrieve MMU role bits from regs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Grab shadow root level from mmu_role for shadow MMUs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Move nested NPT reserved bit calculation into MMU proper (Vitaly Kuznetsov) [2009340] - KVM: x86: Read and pass all CR0/CR4 role bits to shadow MMU helper (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop smep_andnot_wp check from "uses NX" for shadow MMUs (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Add a comment to document why nNPT uses vmcb01, not vCPU state (Vitaly Kuznetsov) [2009340] - KVM: x86: Fix sizes used to pass around CR0, CR4, and EFER (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename unsync helper and update related comments (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop the intermediate "transient" __kvm_sync_page() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: comment on kvm_mmu_get_page's syncing of pages (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: WARN and zap SP when sync'ing if MMU role mismatches (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU role to check for matching guest page sizes (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Unconditionally zap unsync SPs when creating >4k SP at GFN (Vitaly Kuznetsov) [2009340] - Revert "KVM: MMU: record maximum physical address width in kvm_mmu_extended_role" (Vitaly Kuznetsov) [2009340] - KVM: x86: Alert userspace that KVM_SET_CPUID{,2} after KVM_RUN is broken (Vitaly Kuznetsov) [2009340] - KVM: debugfs: Reuse binary stats descriptors (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add selftest for KVM statistics data binary interface (Vitaly Kuznetsov) [2009340] - KVM: stats: Add documentation for binary statistics interface (Vitaly Kuznetsov) [2009340] - KVM: stats: Support binary stats retrieval for a VCPU (Vitaly Kuznetsov) [2009340] - KVM: stats: Support binary stats retrieval for a VM (Vitaly Kuznetsov) [2009340] - KVM: stats: Add fd-based API to read binary stats data (Vitaly Kuznetsov) [2009340] - KVM: stats: Separate generic stats from architecture specific ones (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't WARN on a NULL shadow page in TDP MMU check (Vitaly Kuznetsov) [2009340] - KVM: sefltests: Add x86-64 test to verify MMU reacts to CPUID updates (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add hugepage support for x86-64 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Genericize upper level page table entry struct (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add PTE helper for x86-64 in preparation for hugepages (Vitaly Kuznetsov) [2009340] - KVM: selftests: Rename x86's page table "address" to "pfn" (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add wrapper to allocate page table page (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally allocate EPT tables in memslot 0 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot '0' for page table allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 for vaddr allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use "standard" min virtual address for CPUID test alloc (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use alloc page helper for xAPIC IPI test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use alloc_page helper for x86-64's GDT/IDT/TSS allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Lower the min virtual address for misc page allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add helpers to allocate N pages of virtual memory (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use "standard" min virtual address for Hyper-V pages (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 for x86's GDT/TSS setup (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 when loading elf binary (Vitaly Kuznetsov) [2009340] - KVM: selftests: Zero out the correct page in the Hyper-V features test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Remove errant asm/barrier.h include to fix arm64 build (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix uninitialized boolean variable flush (Vitaly Kuznetsov) [2009340] - KVM: selftests: fix triple fault if ept=0 in dirty_log_test (Vitaly Kuznetsov) [2009340] - KVM: x86: Print CPU of last attempted VM-entry when dumping VMCS/VMCB (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Dynamically compute max VMCS index for vmcs12 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip #PF(RSVD) intercepts when emulating smaller maxphyaddr (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant root_hpa checks (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Refactor is_tdp_mmu_root into is_tdp_mmu (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant is_tdp_mmu_enabled check (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant is_tdp_mmu_root check (Vitaly Kuznetsov) [2009340] - KVM: x86: Stub out is_tdp_mmu_root on 32-bit hosts (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN and reject loading KVM if NX is supported but not enabled (Vitaly Kuznetsov) [2009340] - KVM: SVM: Refuse to load kvm_amd if NX support is not available (Vitaly Kuznetsov) [2009340] - KVM: VMX: Refuse to load kvm_intel if EPT and NX are disabled (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix TDP MMU page table level (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix pf_fixed count in tdp_mmu_map_handle_target_level() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix return value in tdp_mmu_map_handle_target_level() (Vitaly Kuznetsov) [2009340] - KVM: LAPIC: Keep stored TMCCT register value 0 after KVM_SET_LAPIC (Vitaly Kuznetsov) [2009340] - KVM: X86: Introduce KVM_HC_MAP_GPA_RANGE hypercall (Vitaly Kuznetsov) [2009340] - KVM: switch per-VM stats to u64 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Grab nx_lpage_splits as an unsigned long before division (Vitaly Kuznetsov) [2009340] - KVM: x86: Check for pending interrupts when APICv is getting disabled (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Drop redundant checks on vmcs12 in EPTP switching emulation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: WARN if subtly-impossible VMFUNC conditions occur (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop pointless @reset_roots from kvm_init_mmu() (Vitaly Kuznetsov) [2009340] - KVM: x86: Defer MMU sync on PCID invalidation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Use fast PGD switch when emulating VMFUNC[EPTP_SWITCH] (Vitaly Kuznetsov) [2009340] - KVM: x86: Use KVM_REQ_TLB_FLUSH_GUEST to handle INVPCID(ALL) emulation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Free only guest_mode (L2) roots on INVVPID w/o EPT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Consolidate VM-Enter/VM-Exit TLB flush and MMU sync logic (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop skip MMU sync and TLB flush params from "new PGD" helpers (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Move TLB flushing logic (or lack thereof) to dedicated helper (Vitaly Kuznetsov) [2009340] - KVM: x86: Uncondtionally skip MMU sync/TLB flush in MOV CR3's PGD switch (Vitaly Kuznetsov) [2009340] - KVM: x86: Invalidate all PGDs for the current PCID on MOV CR3 w/ flush (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Don't clobber nested MMU's A/D status on EPTP switch (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Ensure 64-bit shift when checking VMFUNC bitmap (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Sync all PGDs on nested transition with shadow paging (Vitaly Kuznetsov) [2009340] - KVM: x86: avoid loading PDPTRs after migration when possible (Vitaly Kuznetsov) [2009340] - KVM: x86: Introduce KVM_GET_SREGS2 / KVM_SET_SREGS2 (Vitaly Kuznetsov) [2009340] - KVM: x86: introduce kvm_register_clear_available (Vitaly Kuznetsov) [2009340] - KVM: nVMX: delay loading of PDPTRs to KVM_REQ_GET_NESTED_STATE_PAGES (Vitaly Kuznetsov) [2009340] - KVM: nSVM: refactor the CR3 reload on migration (Vitaly Kuznetsov) [2009340] - KVM: x86: Always load PDPTRs on CR3 load for SVM w/o NPT and a PAE guest (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Drop pointless pdptrs_changed() check on nested transition (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Drop obsolete (and pointless) pdptrs_changed() check (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce hyperv_features test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move evmcs.h to x86_64/ (Vitaly Kuznetsov) [2009340] - KVM: selftests: move Hyper-V MSR definitions to hyperv.h (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_CLUSTER_IPI_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_REMOTE_TLB_FLUSH_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_DEBUGGING privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_SIGNAL_EVENTS privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_POST_MESSAGES privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check access to HVCALL_NOTIFY_LONG_SPIN_WAIT hypercall (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Prepare to check access to Hyper-V hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_STIMER_DIRECT_MODE_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Inverse the default in hv_check_msr_access() (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_FEATURE_DEBUG_MSRS_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_ACCESS_REENLIGHTENMENT privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_ACCESS_FREQUENCY_MSRS privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_APIC_ACCESS_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_SYNTIMER_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_SYNIC_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_REFERENCE_TSC_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_RESET_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_VP_INDEX_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_TIME_REF_COUNT_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_VP_RUNTIME_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_HYPERCALL_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Prepare to check access to Hyper-V MSRs (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Cache guest CPUID leaves determining features availability (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Introduce KVM_CAP_HYPERV_ENFORCE_CPUID (Vitaly Kuznetsov) [2009340] - asm-generic/hyperv: add HV_STATUS_ACCESS_DENIED definition (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Direct Virtual Flush support (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Enlightened MSR-Bitmap support (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Remote TLB flush for SVM (Vitaly Kuznetsov) [2009340] - KVM: SVM: Software reserved fields (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Move the remote TLB flush logic out of vmx (Vitaly Kuznetsov) [2009340] - KVM: nVMX: nSVM: Add a new VCPU statistic to show if VCPU is in guest mode (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop "pre_" from enter/leave_smm() helpers (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop .post_leave_smm(), i.e. the manual post-RSM MMU reset (Vitaly Kuznetsov) [2009340] - KVM: x86: Rename SMM tracepoint to make it reflect reality (Vitaly Kuznetsov) [2009340] - KVM: x86: Move "entering SMM" tracepoint into kvm_smm_changed() (Vitaly Kuznetsov) [2009340] - KVM: x86: Move (most) SMM hflags modifications into kvm_smm_changed() (Vitaly Kuznetsov) [2009340] - KVM: x86: Invoke kvm_smm_changed() immediately after clearing SMM flag (Vitaly Kuznetsov) [2009340] - KVM: x86: Replace .set_hflags() with dedicated .exiting_smm() helper (Vitaly Kuznetsov) [2009340] - KVM: x86: Emulate triple fault shutdown if RSM emulation fails (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop vendor specific functions for APICv/AVIC enablement (Vitaly Kuznetsov) [2009340] - KVM: x86: Use common 'enable_apicv' variable for both APICv and AVIC (Vitaly Kuznetsov) [2009340] - kvm: x86: implement KVM PM-notifier (Vitaly Kuznetsov) [2009340] - kvm: add PM-notifier (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce x2APIC register manipulation functions (Vitaly Kuznetsov) [2009340] - KVM: selftests: Hoist APIC functions out of individual tests (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move APIC definitions into a separate file (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Disable vmcs02 posted interrupts if vmcs12 PID isn't mappable (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Fail on MMIO completion for nested posted interrupts (Vitaly Kuznetsov) [2009340] - KVM: x86: Add a return code to kvm_apic_accept_events (Vitaly Kuznetsov) [2009340] - KVM: x86: Add a return code to inject_pending_event (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Add a return code to vmx_complete_nested_posted_interrupt (Vitaly Kuznetsov) [2009340] - KVM: x86: Remove guest mode check from kvm_check_nested_events (Vitaly Kuznetsov) [2009340] - KVM: selftests: x86: Add vmx_nested_tsc_scaling_test (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Enable nested TSC scaling (Vitaly Kuznetsov) [2009340] - KVM: X86: Add vendor callbacks for writing the TSC multiplier (Vitaly Kuznetsov) [2009340] - KVM: X86: Move write_l1_tsc_offset() logic to common code and rename it (Vitaly Kuznetsov) [2009340] - KVM: X86: Add functions that calculate the nested TSC fields (Vitaly Kuznetsov) [2009340] - KVM: X86: Add functions for retrieving L2 TSC fields from common code (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Add a TSC multiplier field in VMCS12 (Vitaly Kuznetsov) [2009340] - KVM: X86: Add a ratio parameter to kvm_scale_tsc() (Vitaly Kuznetsov) [2009340] - KVM: X86: Rename kvm_compute_tsc_offset() to kvm_compute_l1_tsc_offset() (Vitaly Kuznetsov) [2009340] - KVM: X86: Store L1's TSC scaling ratio in 'struct kvm_vcpu_arch' (Vitaly Kuznetsov) [2009340] - math64.h: Add mul_s64_u64_shr() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add a field to control memslot rmap allocation (Vitaly Kuznetsov) [2009340] - KVM: mmu: Add slots_arch_lock for memslot arch fields (Vitaly Kuznetsov) [2009340] - KVM: mmu: Refactor memslot copy (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Factor out allocating memslot rmap (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Deduplicate rmap freeing (Vitaly Kuznetsov) [2009340] - KVM: x86: Do not write protect huge page in initially-all-set mode (Vitaly Kuznetsov) [2009340] - KVM: x86: Support write protecting only large pages (Vitaly Kuznetsov) [2009340] - KVM: hyper-v: Advertise support for fast XMM hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: kvm_hv_flush_tlb use inputs from XMM registers (Vitaly Kuznetsov) [2009340] - KVM: hyper-v: Collect hypercall params into struct (Vitaly Kuznetsov) [2009340] - KVM: x86: Move FPU register accessors into fpu.h (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Make is_nx_huge_page_enabled an inline function (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix kvm_check_cap() assertion (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add aarch64/debug-exceptions test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add exception handling support for aarch64 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move GUEST_ASSERT_EQ to utils header (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce UCALL_UNHANDLED for unhandled vector reporting (Vitaly Kuznetsov) [2009340] - KVM: selftests: Complete x86_64/sync_regs_test ucall (Vitaly Kuznetsov) [2009340] - KVM: selftests: Rename vm_handle_exception (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix compiling errors when initializing the static structure (Vitaly Kuznetsov) [2009340] - selftests: kvm: Add support for customized slot0 memory size (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix overlapping addresses in memslot_perf_test (Vitaly Kuznetsov) [2009340] - selftests: kvm: do only 1 memslot_perf_test run by default (Vitaly Kuznetsov) [2009340] - KVM: X86: Use _BITUL() macro in UAPI headers (Vitaly Kuznetsov) [2009340] - KVM: selftests: create alias mappings when using shared memory (Vitaly Kuznetsov) [2009340] - KVM: selftests: add shmem backing source type (Vitaly Kuznetsov) [2009340] - KVM: selftests: refactor vm_mem_backing_src_type flags (Vitaly Kuznetsov) [2009340] - KVM: selftests: allow different backing source types (Vitaly Kuznetsov) [2009340] - KVM: selftests: compute correct demand paging size (Vitaly Kuznetsov) [2009340] - KVM: selftests: simplify setup_demand_paging error handling (Vitaly Kuznetsov) [2009340] - KVM: selftests: Print a message if /dev/kvm is missing (Vitaly Kuznetsov) [2009340] - KVM: selftests: trivial comment/logging fixes (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix hang in hardware_disable_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Ignore CPUID.0DH.1H in get_cpuid_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix 32-bit truncation of vm_get_max_gfn() (Vitaly Kuznetsov) [2009340] - KVM: selftests: add a memslot-related performance benchmark (Vitaly Kuznetsov) [2009340] - KVM: selftests: Keep track of memslots more efficiently (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix potential issue with ELF loading (Vitaly Kuznetsov) [2009340] - selftests: kvm: make allocation of extra memory take effect (Vitaly Kuznetsov) [2009340] - docs: virt: api.rst: fix a pointer to SGX documentation (Vitaly Kuznetsov) [2009340] - docs: vcpu-requests.rst: fix reference for atomic ops (Vitaly Kuznetsov) [2009340] - x86/msr: Rename MSR_K8_SYSCFG to MSR_AMD64_SYSCFG (Vitaly Kuznetsov) [2009340] - x86/sev: Move GHCB MSR protocol and NAE definitions in a common header (Vitaly Kuznetsov) [2009340] - x86/sev-es: Rename sev-es.{ch} to sev.{ch} (Vitaly Kuznetsov) [2009340] - x86/sev-es: Replace open-coded hlt-loops with sev_es_terminate() (Vitaly Kuznetsov) [2009340] - tools/kvm_stat: Fix documentation typo (Vitaly Kuznetsov) [2009340] - KVM: x86: Hide RDTSCP and RDPID if MSR_TSC_AUX probing failed (Vitaly Kuznetsov) [2009340] - KVM: x86: Tie Intel and AMD behavior for MSR_TSC_AUX to guest CPU model (Vitaly Kuznetsov) [2009340] - KVM: x86: Move uret MSR slot management to common x86 (Vitaly Kuznetsov) [2009340] - KVM: x86: Export the number of uret MSRs to vendor modules (Vitaly Kuznetsov) [2009340] - KVM: VMX: Disable loading of TSX_CTRL MSR the more conventional way (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use common x86's uret MSR list as the one true list (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use flag to indicate "active" uret MSRs instead of sorting list (Vitaly Kuznetsov) [2009340] - KVM: VMX: Configure list of user return MSRs at module init (Vitaly Kuznetsov) [2009340] - KVM: x86: Add support for RDPID without RDTSCP (Vitaly Kuznetsov) [2009340] - selftests: kvm: remove reassignment of non-absolute variables (Vitaly Kuznetsov) [2009340] - doc/kvm: Fix wrong entry for KVM_CAP_X86_MSR_FILTER (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix kdoc of __handle_changed_spte (Vitaly Kuznetsov) [2009340] - KVM: documentation: fix sphinx warnings (Vitaly Kuznetsov) [2009340] - KVM: x86: document behavior of measurement ioctls with len==0 (Vitaly Kuznetsov) [2009340] - documentation/kvm: additional explanations on KVM_SET_BOOT_CPU_ID (Vitaly Kuznetsov) [2009340] - docs: kvm: Fix a typo ("althought") (Vitaly Kuznetsov) [2009340] - KVM: move EXIT_FASTPATH_REENTER_GUEST to common code (Vitaly Kuznetsov) [2009340] - mm, kvm: account kvm_vcpu_mmap to kmemcg (Vitaly Kuznetsov) [2009340] - x86/kvm: Use msi_msg shadow structs (Vitaly Kuznetsov) [2009340] - ceph: fix up non-directory creation in SGID directories (Jeffrey Layton) [2017796] - ceph: initialize pathlen variable in reconnect_caps_cb (Jeffrey Layton) [2017796] - ceph: initialize i_size variable in ceph_sync_read (Jeffrey Layton) [2017796] - ceph: fix duplicate increment of opened_inodes metric (Jeffrey Layton) [2017796] - ceph: add a new metric to keep track of remote object copies (Jeffrey Layton) [2017796] - libceph, ceph: move ceph_osdc_copy_from() into cephfs code (Jeffrey Layton) [2017796] - ceph: clean-up metrics data structures to reduce code duplication (Jeffrey Layton) [2017796] - ceph: split 'metric' debugfs file into several files (Jeffrey Layton) [2017796] - ceph: return the real size read when it hits EOF (Jeffrey Layton) [2017796] - ceph: properly handle statfs on multifs setups (Jeffrey Layton) [2017796] - ceph: shut down mount on bad mdsmap or fsmap decode (Jeffrey Layton) [2017796] - ceph: fix mdsmap decode when there are MDS's beyond max_mds (Jeffrey Layton) [2017796] - ceph: ignore the truncate when size won't change with Fx caps issued (Jeffrey Layton) [2017796] - ceph: don't rely on error_string to validate blocklisted session. (Jeffrey Layton) [2017796] - ceph: just use ci->i_version for fscache aux info (Jeffrey Layton) [2017796] - ceph: shut down access to inode when async create fails (Jeffrey Layton) [2017796] - ceph: refactor remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: fix auth cap handling logic in remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: drop private list from remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: don't use -ESTALE as special return code in try_get_cap_refs (Jeffrey Layton) [2017796] - ceph: print inode numbers instead of pointer values (Jeffrey Layton) [2017796] - ceph: enable async dirops by default (Jeffrey Layton) [2017796] - libceph: drop ->monmap and err initialization (Jeffrey Layton) [2017796] - ceph: convert to noop_direct_IO (Jeffrey Layton) [2017796] - ceph: fix off by one bugs in unsafe_request_wait() (Jeffrey Layton) [2017796] - ceph: fix handling of "meta" errors (Jeffrey Layton) [2017796] - ceph: drop the mdsc_get_session/put_session dout messages (Jeffrey Layton) [2017796] - ceph: lockdep annotations for try_nonblocking_invalidate (Jeffrey Layton) [2017796] - ceph: don't WARN if we're forcibly removing the session caps (Jeffrey Layton) [2017796] - ceph: don't WARN if we're force umounting (Jeffrey Layton) [2017796] - ceph: remove the capsnaps when removing caps (Jeffrey Layton) [2017796] - ceph: request Fw caps before updating the mtime in ceph_write_iter (Jeffrey Layton) [2017796] - ceph: reconnect to the export targets on new mdsmaps (Jeffrey Layton) [2017796] - ceph: print more information when we can't find snaprealm (Jeffrey Layton) [2017796] - ceph: add ceph_change_snap_realm() helper (Jeffrey Layton) [2017796] - ceph: remove redundant initializations from mdsc and session (Jeffrey Layton) [2017796] - ceph: cancel delayed work instead of flushing on mdsc teardown (Jeffrey Layton) [2017796] - ceph: add a new vxattr to return auth mds for an inode (Jeffrey Layton) [2017796] - ceph: flush the mdlog before waiting on unsafe reqs (Jeffrey Layton) [2017796] - ceph: flush mdlog before umounting (Jeffrey Layton) [2017796] - ceph: make iterate_sessions a global symbol (Jeffrey Layton) [2017796] - ceph: make ceph_create_session_msg a global symbol (Jeffrey Layton) [2017796] - ceph: fix comment about short copies in ceph_write_end (Jeffrey Layton) [2017796] - ceph: fix memory leak on decode error in ceph_handle_caps (Jeffrey Layton) [2017796] - RDMA/irdma: Fix a potential memory allocation issue in 'irdma_prm_add_pble_mem()' (Kamal Heib) [1970672] - RDMA/irdma: Don't arm the CQ more than two times if no CE for this CQ (Kamal Heib) [1970672] - RDMA/irdma: Fix a user-after-free in add_pble_prm (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC errors (Kamal Heib) [1970672] - RDMA/irdma: Do not hold qos mutex twice on QP resume (Kamal Heib) [1970672] - RDMA/irdma: Set VLAN in UD work completion correctly (Kamal Heib) [1970672] - RDMA/irdma: Process extended CQ entries correctly (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC error when there are MW bind errors (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC error when transport retry counter is exceeded (Kamal Heib) [1970672] - RDMA/irdma: Validate number of CQ entries on create CQ (Kamal Heib) [1970672] - RDMA/irdma: Skip CQP ring during a reset (Kamal Heib) [1970672] - RDMA/irdma: Remove the repeated declaration (Kamal Heib) [1970672] - RDMA/irdma: Use correct kconfig symbol for AUXILIARY_BUS (Kamal Heib) [1970672] - RDMA/irdma: Change returned type of irdma_setup_virt_qp to void (Kamal Heib) [1970672] - RDMA/irdma: Change the returned type of irdma_set_hw_rsrc to void (Kamal Heib) [1970672] - RDMA/irdma: change the returned type of irdma_sc_repost_aeq_entries to void (Kamal Heib) [1970672] - RDMA/irdma: Check vsi pointer before using it (Kamal Heib) [1970672] - RDMA/irdma: Change the returned type to void (Kamal Heib) [1970672] - RDMA/irdma: Make spdxcheck.py happy (Kamal Heib) [1970672] - RDMA/irdma: Fix unused variable total_size warning (Kamal Heib) [1970672] - RDMA/irdma: Fix potential overflow expression in irdma_prm_get_pbles (Kamal Heib) [1970672] - RDMA/irdma: Check contents of user-space irdma_mem_reg_req object (Kamal Heib) [1970672] - RDMA/irdma: Remove use of kmap() (Kamal Heib) [1970672] - RDMA/irdma: Use the queried port attributes (Kamal Heib) [1970672] - RDMA/irdma: Check return value from ib_umem_find_best_pgsz (Kamal Heib) [1970672] - RDMA: Split the alloc_hw_stats() ops to port and device variants (Kamal Heib) [1970672] - RDMA/irdma: Store PBL info address a pointer type (Kamal Heib) [1970672] - RDMA/irdma: Use list_last_entry/list_first_entry (Kamal Heib) [1970672] - RDMA/irdma: Use list_move instead of list_del/list_add (Kamal Heib) [1970672] - RDMA/irdma: Fix return error sign from irdma_modify_qp (Kamal Heib) [1970672] - RDMA/irdma: Fix spelling mistake "Allocal" -> "Allocate" (Kamal Heib) [1970672] - RDMA/irdma: remove redundant initialization of variable val (Kamal Heib) [1970672] - RDMA/irdma: remove extraneous indentation on a statement (Kamal Heib) [1970672] - RDMA/irdma: Fix issues with u8 left shift operation (Kamal Heib) [1970672] - RDMA/irdma: Add irdma Kconfig/Makefile and remove i40iw (Kamal Heib) [1970672] - RDMA/irdma: Add ABI definitions (Kamal Heib) [1970672] - RDMA/irdma: Add dynamic tracing for CM (Kamal Heib) [1970672] - RDMA/irdma: Add miscellaneous utility definitions (Kamal Heib) [1970672] - RDMA/irdma: Add user/kernel shared libraries (Kamal Heib) [1970672] - RDMA/irdma: Add RoCEv2 UD OP support (Kamal Heib) [1970672] - RDMA/irdma: Implement device supported verb APIs (Kamal Heib) [1970672] - RDMA/irdma: Add PBLE resource manager (Kamal Heib) [1970672] - RDMA/irdma: Add connection manager (Kamal Heib) [1970672] - RDMA/irdma: Add QoS definitions (Kamal Heib) [1970672] - RDMA/irdma: Add privileged UDA queue implementation (Kamal Heib) [1970672] - RDMA/irdma: Add HMC backing store setup functions (Kamal Heib) [1970672] - RDMA/irdma: Implement HW Admin Queue OPs (Kamal Heib) [1970672] - RDMA/irdma: Implement device initialization definitions (Kamal Heib) [1970672] - RDMA/irdma: Register auxiliary driver and implement private channel OPs (Kamal Heib) [1970672] - i40e: Register auxiliary devices to provide RDMA (Kamal Heib) [1970672] - i40e: Prep i40e header for aux bus conversion (Kamal Heib) [1970672] - i40e: Replace one-element array with flexible-array member (Kamal Heib) [1970672] - ibmvnic: drop bad optimization in reuse_tx_pools() (Gustavo Walbon) [2028722] - ibmvnic: drop bad optimization in reuse_rx_pools() (Gustavo Walbon) [2028722] - /proc//cmdline: add back the setproctitle() special case (Ian Kent) [1979446] - /proc//cmdline: remove all the special cases (Ian Kent) [1979446] - perf tests vmlinux-kallsyms: Ignore hidden symbols (Michael Petlan) [1903157] - net/sched: sch_ets: don't remove idle classes from the round-robin list (Davide Caratti) [2013073] - net/sched: sch_ets: don't peek at classes beyond 'nbands' (Davide Caratti) [2013073] - net/sched: sch_ets: properly init all active DRR list handles (Davide Caratti) [2013073] - serial: 8250: fix racy uartclk update (Puneet Sethi) [1784121] - serial: 8250: Skip uninitialized TTY port baud rate update (Puneet Sethi) [1784121] - serial: 8250: Discard RTS/DTS setting from clock update method (Puneet Sethi) [1784121] - serial: 8250: Add 8250 port clock update method (Puneet Sethi) [1784121] - serial: 8250_dw: drop bogus uartclk optimisation (Puneet Sethi) [1784121] - serial: 8250_lpss: Enable PSE UART Auto Flow Control (Puneet Sethi) [1784121] - serial: 8250_lpss: Extract dw8250_do_set_termios() for common use (Puneet Sethi) [1784121] - serial: 8250_dw: Fix the trivial typo in the comment (Puneet Sethi) [1784121] - serial: 8250_dw: Re-use temporary variable for of_node (Puneet Sethi) [1784121] - serial: 8250_dw: Drop wrong use of ACPI_PTR() (Puneet Sethi) [1784121] - serial: 8250_lpss: Enable DMA on Intel Elkhart Lake (Puneet Sethi) [1784121] - serial: 8250_dw: Add device HID for new AMD UART controller (Puneet Sethi) [1784121] - serial: 8250_dw: Fix clk-notifier/port suspend deadlock (Puneet Sethi) [1784121] - serial: 8250_dw: Fix common clocks usage race condition (Puneet Sethi) [1784121] - serial: 8250_dw: Pass the same rate to the clk round and set rate methods (Puneet Sethi) [1784121] - serial: 8250_dw: Simplify the ref clock rate setting procedure (Puneet Sethi) [1784121] - serial: 8250_dw: Use devm_clk_get_optional() to get the input clock (Puneet Sethi) [1784121] - serial: 8250_dw: Avoid double error messaging when IRQ absent (Puneet Sethi) [1784121] - serial: 8250_dw: switch to use 8250_dwlib library (Puneet Sethi) [1784121] - serial: 8250_dw: use pointer to uart local variable (Puneet Sethi) [1784121] - serial: 8250_dw: Use a unified new dev variable in remove (Puneet Sethi) [1784121] - serial: 8250_dw: always set baud rate in dw8250_set_termios (Puneet Sethi) [1784121] - serial: 8250_dw: add fractional divisor support (Puneet Sethi) [1784121] - serial: 8250_dw: Introduce IO accessors to extended registers (Puneet Sethi) [1784121] - dmaengine: dw: Program xBAR hardware for Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: Make it dependent to HAS_IOMEM (Puneet Sethi) [1784121] - dmaengine dw: Revert "dmaengine: dw: Enable runtime PM" (Puneet Sethi) [1784121] - dmaengine: dw: Enable runtime PM (Puneet Sethi) [1784121] - dmaengine: dw: Add DMA-channels mask cell support (Puneet Sethi) [1784121] - dmaengine: dw: Ignore burst setting for memory peripherals (Puneet Sethi) [1784121] - dmaengine: dw: Discard dlen from the dev-to-mem xfer width calculation (Puneet Sethi) [1784121] - dmaengine: dw: Activate FIFO-mode for memory peripherals only (Puneet Sethi) [1784121] - dmaengine: dw: Initialize max_sg_burst capability (Puneet Sethi) [1784121] - dmaengine: dw: Introduce max burst length hw config (Puneet Sethi) [1784121] - dmaengine: dw: Initialize min and max burst DMA device capability (Puneet Sethi) [1784121] - dmaengine: dw: Set DMA device max segment size parameter (Puneet Sethi) [1784121] - dmaengine: dw: Take HC_LLP flag into account for noLLP auto-config (Puneet Sethi) [1784121] - dmaengine: Introduce DMA-device device_caps callback (Puneet Sethi) [1784121] - dmaengine: Introduce max SG burst capability (Puneet Sethi) [1784121] - dmaengine: Introduce min burst length capability (Puneet Sethi) [1784121] - dmaengine: dw: Initialize channel before each transfer (Puneet Sethi) [1784121] - dmaengine: dw: Replace 'objs' by 'y' (Puneet Sethi) [1784121] - dmaengine: dw: Register ACPI DMA controller for PCI that has companion (Puneet Sethi) [1784121] - dmaengine: dw: platform: Mark 'hclk' clock optional (Puneet Sethi) [1784121] - dmaengine: dw: platform: Split OF helpers to separate module (Puneet Sethi) [1784121] - dmaengine: dw: platform: Split ACPI helpers to separate module (Puneet Sethi) [1784121] - dmaengine: dw: platform: Move handle check to dw_dma_acpi_controller_register() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Switch to acpi_dma_controller_register() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Use devm_platform_ioremap_resource() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Enable iDMA 32-bit on Intel Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: platform: Use struct dw_dma_chip_pdata (Puneet Sethi) [1784121] - dmaengine: dw: Export struct dw_dma_chip_pdata for wider use (Puneet Sethi) [1784121] - dmaengine: dw: Update Intel Elkhart Lake Service Engine acronym (Puneet Sethi) [1784121] - dmaengine: dw: Enable iDMA 32-bit on Intel Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: Distinguish ->remove() between DW and iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: convert to SPDX identifiers (Puneet Sethi) [1784121] - dmaengine: dw: Don't pollute CTL_LO on iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: Reset DRAIN bit when resume the channel (Puneet Sethi) [1784121] - dmaengine: dw: Split DW and iDMA 32-bit operations (Puneet Sethi) [1784121] - dmaengine: dw: Remove unused internal property (Puneet Sethi) [1784121] - dmaengine: dw: Add missed multi-block support for iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: drop useless LIST_HEAD (Puneet Sethi) [1784121] - dmaengine: dw: Fix FIFO size for Intel Merrifield (Puneet Sethi) [1784121] - dmaengine: dw-dmac: implement dma protection control setting (Puneet Sethi) [1784121] - dmaengine: dw: remove dma_slave_config direction usage (Puneet Sethi) [1784121] - dmaengine: dw: Add alternative ACPI HIDs for Cherry Trail DMA controllers (Puneet Sethi) [1784121] - perf/arm-cmn: Fix invalid pointer when access dtc object sharing the same IRQ number (Mark Langsdorf) [1997732] - drivers/perf: Simplify EVENT ATTR macro in SMMU PMU driver (Mark Langsdorf) [1997732] - perf/smmuv3: Don't trample existing events with global filter (Mark Langsdorf) [1997732] - perf: qcom: Remove redundant dev_err call in qcom_l3_cache_pmu_probe() (Mark Langsdorf) [1997732] - perf: arm_spe: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: xgene_pmu: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: qcom: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: arm_pmu: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - drivers/perf: arm-cci: Fix checkpatch spacing error (Mark Langsdorf) [1997732] - drivers/perf: arm-cmn: Add space after ',' (Mark Langsdorf) [1997732] - drivers/perf: arm_pmu: Fix some coding style issues (Mark Langsdorf) [1997732] - drivers/perf: arm_spe_pmu: Fix some coding style issues (Mark Langsdorf) [1997732] - drivers/perf: Remove redundant dev_err call in tx2_uncore_pmu_init_dev() (Mark Langsdorf) [1997732] - perf/arm-smmuv3: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-dsu: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-dmc620: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-cmn: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-ccn: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-ccn: Clean up CPU hotplug handling (Mark Langsdorf) [1997732] - perf/arm-cci: Remove broken race mitigation (Mark Langsdorf) [1997732] - genirq: Export affinity setter for modules (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Clean up with dev_printk (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Fix error handling (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Use dev_err_probe() for IRQ errors (Mark Langsdorf) [1997732] - drivers/perf: Simplify the SMMUv3 PMU event attributes (Mark Langsdorf) [1997732] - perf: Constify static struct attribute_group (Mark Langsdorf) [1997732] - perf: qcom: Constify static struct attribute_group (Mark Langsdorf) [1997732] - drivers/perf: Add support for ARMv8.3-SPE (Mark Langsdorf) [1997732] - driver/perf: Remove ARM_SMMU_V3_PMU dependency on ARM_SMMU_V3 (Mark Langsdorf) [1997732] - perf/smmuv3: Support sysfs identifier file (Mark Langsdorf) [1997732] - perf: remove duplicate check on fwnode (Mark Langsdorf) [1997732] - redhat/configs: enable ARM_DMC620_PMU memory controller perf counters (Mark Langsdorf) [1997732] - perf/arm_dmc620_pmu: Fix error return code in dmc620_pmu_device_probe() (Mark Langsdorf) [1997732] - drivers/perf: Prevent forced unbinding of ARM_DMC620_PMU drivers (Mark Langsdorf) [1997732] - driver/perf: Add PMU driver for the ARM DMC-620 memory controller (Mark Langsdorf) [1997732] - drivers/perf: thunderx2_pmu: Fix memory resource error handling (Mark Langsdorf) [1997732] - drivers/perf: xgene_pmu: Fix uninitialized resource struct (Mark Langsdorf) [1997732] - perf: arm_dsu: Support DSU ACPI devices (Mark Langsdorf) [1997732] - perf/smmuv3: To simplify code for ioremap page in pmcg (Mark Langsdorf) [1997732] - drivers/perf: Prevent forced unbinding of PMU drivers (Mark Langsdorf) [1997732] - drivers/perf: Fix kernel panic when rmmod PMU modules during perf sampling (Mark Langsdorf) [1997732] - pmu/smmuv3: Clear IRQ affinity hint on device removal (Mark Langsdorf) [1997732] - drivers/perf: arm_spe_pmu: Avoid duplicate printouts (Mark Langsdorf) [1997732] - drivers/perf: arm_dsu_pmu: Avoid duplicate printouts (Mark Langsdorf) [1997732] - drivers/perf: Open access for CAP_PERFMON privileged process (Mark Langsdorf) [1997732] - perf/smmuv3: Remove the leftover put_cpu() in error path (Mark Langsdorf) [1997732] - perf: arm-ccn: Enable stats for CCN-512 interconnect (Mark Langsdorf) [1997732] - perf/smmuv3: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/arm-cci: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/arm-ccn: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf: xgene: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/smmuv3: Validate groups for global filtering (Mark Langsdorf) [1997732] - perf/smmuv3: Validate group size (Mark Langsdorf) [1997732] - perf/smmuv3: Enable HiSilicon Erratum 162001800 quirk (Mark Langsdorf) [1997732] - perf/smmuv3: Add MSI irq support (Mark Langsdorf) [1997732] - perf/smmuv3: Add arm64 smmuv3 pmu driver (Mark Langsdorf) [1997732] - perf: xgene: Remove set but not used variable 'config' (Mark Langsdorf) [1997732] - perf/drivers: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE (Mark Langsdorf) [1997732] - For drivers that do not support context exclusion let's advertise the PERF_PMU_CAP_NO_EXCLUDE capability. This ensures that perf will prevent us from handling events where any exclusion flags are set. Let's also remove the now unnecessary check for exclusion flags. (Mark Langsdorf) [1997732] - perf/core, arch/arm: Use PERF_PMU_CAP_NO_EXCLUDE conditionally (Mark Langsdorf) [1997732] - drivers/perf: arm-ccn: Use devm_ioremap_resource() to map memory (Mark Langsdorf) [1997732] - drivers/perf: Initialise return value in armpmu_request_irqs() (Mark Langsdorf) [1997732] - perf/arm-cci: Remove VLA usage (Mark Langsdorf) [1997732] - tools/power turbostat: version 2021.05.04 (Prarit Bhargava) [2030472] - tools/power turbostat: Support "turbostat --hide idle" (Prarit Bhargava) [2030472] - tools/power turbostat: elevate priority of interval mode (Prarit Bhargava) [2030472] - tools/power turbostat: formatting (Prarit Bhargava) [2030472] - tools/power turbostat: rename tcc variables (Prarit Bhargava) [2030472] - tools/power turbostat: save original CPU model (Prarit Bhargava) [2030472] - tools/power turbostat: add TCC Offset support (Prarit Bhargava) [2030472] - tools/power turbostat: Fix Core C6 residency on Atom CPUs (Prarit Bhargava) [2030472] - tools/power turbostat: Print the C-state Pre-wake settings (Prarit Bhargava) [2030472] - tools/power turbostat: unmark non-kernel-doc comment (Prarit Bhargava) [2030472] - tools/power/turbostat: Remove Package C6 Retention on Ice Lake Server (Prarit Bhargava) [2030472] - tools/power turbostat: Fix offset overflow issue in index converting (Prarit Bhargava) [2030472] - tools/power/turbostat: Fix turbostat for AMD Zen CPUs (Prarit Bhargava) [2030472] - Revert "tools/power turbostat: adjust for temperature offset" (Prarit Bhargava) [2030472] - tools/power turbostat: Fix DRAM Energy Unit on SKX (Prarit Bhargava) [2030472] - tools/power turbostat: print microcode patch level (Prarit Bhargava) [2030472] - tools/power turbostat: add built-in-counter for IPC -- Instructions per Cycle (Prarit Bhargava) [2030472]- [s390] virtio: write back F_VERSION_1 before validate (Claudio Imbrenda) [2026234] - cpufreq: powernv: Fix init_chip_info initialization in numa=off (Steve Best) [2017665] - tcp: don't free a FIN sk_buff in tcp_remove_empty_skb() (Guillaume Nault) [2016210] - tipc: fix size validations for the MSG_CRYPTO type (Xin Long) [2020507] {CVE-2021-43267} - tipc: increase timeout in tipc_sk_enqueue() (Xin Long) [2020401] - Revert "tipc: Return the correct errno code" (Xin Long) [2020401] - tipc: fix an use-after-free issue in tipc_recvmsg (Xin Long) [2020401] - tipc: keep the skb in rcv queue until the whole data is read (Xin Long) [2020401] - powerpc/perf: Fix cycles/instructions as PM_CYC/PM_INST_CMPL in power10 (Steve Best) [2025400] - PCI: Increase D3 delay for AMD Renoir/Cezanne XHCI (Myron Stowe) [2028298] - media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors (Dean Nelson) [1921871] {CVE-2020-0404} - sctp: fix transport encap_port update in sctp_vtag_verify (Xin Long) [2020393] - sctp: account stream padding length for reconf chunk (Xin Long) [2020393] - sctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb (Xin Long) [2020393] - net: cipso: fix warnings in netlbl_cipsov4_add_std (Balazs Nemeth) [2026691] - net/sched: act_ct: fix err check for nf_conntrack_confirm (Davide Caratti) [2018109] - net/sched: act_ct: Fix byte count on fragmented packets (Davide Caratti) [2018109] - mqprio: Correct stats in mqprio_dump_class_stats(). (Davide Caratti) [2018109] - net_sched: fix NULL deref in fifo_set_limit() (Davide Caratti) [2018109] - net: sched: flower: protect fl_walk() with rcu (Davide Caratti) [2018109] - fq_codel: reject silly quantum parameters (Davide Caratti) [2018109] - net: sched: Fix qdisc_rate_table refcount leak when get tcf_block failed (Davide Caratti) [2018109] - sch_htb: Fix inconsistency when leaf qdisc creation fails (Davide Caratti) [2018109] - net: sched: fix lockdep_set_class() typo error for sch->seqlock (Davide Caratti) [2018109] - net: sched: cls_api: Fix the the wrong parameter (Davide Caratti) [2018109] - net/sched: act_vlan: Fix modify to allow 0 (Davide Caratti) [2018109] - net-sysfs: initialize uid and gid before calling net_ns_get_ownership (Xin Long) [1979820] - net: fix sysfs permssions when device changes network namespace (Xin Long) [1979820] - net-sysfs: add queue_change_owner() (Xin Long) [1979820] - net-sysfs: add netdev_change_owner() (Xin Long) [1979820] - drivers/base/power: add dpm_sysfs_change_owner() (Xin Long) [1979820] - device: add device_change_owner() (Xin Long) [1979820] - sysfs: Fix regression when adding a file to an existing group (Xin Long) [1979820] - bridge: make sure objects belong to container's owner (Xin Long) [1979820] - net: create reusable function for getting ownership info of sysfs inodes (Xin Long) [1979820] - net-sysfs: make sure objects belong to container's owner (Xin Long) [1979820] - net-sysfs: require net admin in the init ns for setting tx_maxrate (Xin Long) [1979820] - driver core: set up ownership of class devices in sysfs (Xin Long) [1979820] - kobject: kset_create_and_add() - fetch ownership info from parent (Xin Long) [1979820] - sysfs, kobject: allow creating kobject belonging to arbitrary users (Xin Long) [1979820] - NFSv42: Fix pagecache invalidation after COPY/CLONE (Benjamin Coddington) [2017166] - SUNRPC: fix sign error causing rpcsec_gss drops (Benjamin Coddington) [2017166] - nfsd4: Handle the NFSv4 READDIR 'dircount' hint being zero (Benjamin Coddington) [2017166] - nfsd: fix error handling of register_pernet_subsys() in init_nfsd() (Benjamin Coddington) [2017166] - SUNRPC: Simplify socket shutdown when not reusing TCP ports (Benjamin Coddington) [2017166] - nfsd4: Fix forced-expiry locking (Benjamin Coddington) [2017166] - SUNRPC/xprtrdma: Fix reconnection locking (Benjamin Coddington) [2017166] - NFSv4/pnfs: The layout barrier indicate a minimal value for the seqid (Benjamin Coddington) [2017166] - NFSv4/pNFS: Always allow update of a zero valued layout barrier (Benjamin Coddington) [2017166] - NFSv4/pNFS: Fix a layoutget livelock loop (Benjamin Coddington) [2017166] - xprtrdma: Put rpcrdma_reps before waking the tear-down completion (Benjamin Coddington) [2017166] - NFSD: Fix TP_printk() format specifier in nfsd_clid_class (Benjamin Coddington) [2017166] - NFSv42: Copy offload should update the file size when appropriate (Benjamin Coddington) [2017166] - SUNRPC: Fix XPT_BUSY flag leakage in svc_handle_xprt()... (Benjamin Coddington) [2017166] - NFSv4/pNFS: Return an error if _nfs4_pnfs_v3_ds_connect can't load NFSv3 (Benjamin Coddington) [2017166] - NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times (Benjamin Coddington) [2017166] - NFSv4/pnfs: Clean up layout get on open (Benjamin Coddington) [2017166] - NFSv4/pnfs: Fix layoutget behaviour after invalidation (Benjamin Coddington) [2017166] - NFSv4/pnfs: Fix the layout barrier update (Benjamin Coddington) [2017166] - NFSD: Prevent a possible oops in the nfs_dirent() tracepoint (Benjamin Coddington) [2017166] - nfsd: remove redundant assignment to pointer 'this' (Benjamin Coddington) [2017166] - nfs_common: fix doc warning (Benjamin Coddington) [2017166] - nfsd4: Expose the callback address and state of each NFS4 client (Benjamin Coddington) [2017166] - xprtrdma: Fix spelling mistakes (Benjamin Coddington) [2017166] - NFS: nfs_find_open_context() may only select open files (Benjamin Coddington) [2017166] - SUNRPC: Should wake up the privileged task firstly. (Benjamin Coddington) [2017166] - SUNRPC: Fix the batch tasks count wraparound. (Benjamin Coddington) [2017166] - nfs: update has_sec_mnt_opts after cloning lsm options from parent (Benjamin Coddington) [2017166] - nfs: fix acl memory leak of posix_acl_create() (Benjamin Coddington) [2017166] - rpc: remove redundant initialization of variable status (Benjamin Coddington) [2017166] - NFSv4: Initialise connection to the server in nfs4_alloc_client() (Benjamin Coddington) [2017166] - nfsd: Prevent truncation of an unlinked inode from blocking access to its directory (Benjamin Coddington) [2017166] - xprtrdma: Fix a maybe-uninitialized compiler warning (Benjamin Coddington) [2017166] - NFSv4: Fix second deadlock in nfs4_evict_inode() (Benjamin Coddington) [2017166] - NFSv4: Fix deadlock between nfs4_evict_inode() and nfs4_opendata_get_inode() (Benjamin Coddington) [2017166] - NFS: FMODE_READ and friends are C macros, not enum types (Benjamin Coddington) [2017166] - NFS: Fix a potential NULL dereference in nfs_get_client() (Benjamin Coddington) [2017166] - NFS: Fix use-after-free in nfs4_init_client() (Benjamin Coddington) [2017166] - NFSv4: nfs4_proc_set_acl needs to restore NFS_CAP_UIDGID_NOMAP on error. (Benjamin Coddington) [2017166] - nfs: Remove trailing semicolon in macros (Benjamin Coddington) [2017166] - NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config (Benjamin Coddington) [2017166] - NFS: Clean up reset of the mirror accounting variables (Benjamin Coddington) [2017166] - NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce() (Benjamin Coddington) [2017166] - NFS: Fix an Oopsable condition in __nfs_pageio_add_request() (Benjamin Coddington) [2017166] - SUNRPC: More fixes for backlog congestion (Benjamin Coddington) [2017166] - SUNRPC: Fix Oops in xs_tcp_send_request() when transport is disconnected (Benjamin Coddington) [2017166] - NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return() (Benjamin Coddington) [2017166] - SUNRPC in case of backlog, hand free slots directly to waiting task (Benjamin Coddington) [2017166] - pNFS/NFSv4: Remove redundant initialization of 'rd_size' (Benjamin Coddington) [2017166] - NFS: fix an incorrect limit in filelayout_decode_layout() (Benjamin Coddington) [2017166] - fs/nfs: Use fatal_signal_pending instead of signal_pending (Benjamin Coddington) [2017166] - xprtrdma: Fix a NULL dereference in frwr_unmap_sync() (Benjamin Coddington) [2017166] - sunrpc: Fix misplaced barrier in call_decode (Benjamin Coddington) [2017166] - SUNRPC: set rq_page_end differently (Benjamin Coddington) [2017166] - xprtrdma: Move fr_mr field to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move the Work Request union to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move fr_linv_done field to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move cqe to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move fr_cid to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Remove the RPC/RDMA QP event handler (Benjamin Coddington) [2017166] - xprtrdma: Add tracepoints showing FastReg WRs and remote invalidation (Benjamin Coddington) [2017166] - xprtrdma: Avoid Send Queue wrapping (Benjamin Coddington) [2017166] - xprtrdma: Do not wake RPC consumer on a failed LocalInv (Benjamin Coddington) [2017166] - xprtrdma: Do not recycle MR after FastReg/LocalInv flushes (Benjamin Coddington) [2017166] - xprtrdma: Clarify use of barrier in frwr_wc_localinv_done() (Benjamin Coddington) [2017166] - xprtrdma: Rename frwr_release_mr() (Benjamin Coddington) [2017166] - xprtrdma: rpcrdma_mr_pop() already does list_del_init() (Benjamin Coddington) [2017166] - xprtrdma: Delete rpcrdma_recv_buffer_put() (Benjamin Coddington) [2017166] - xprtrdma: Fix cwnd update ordering (Benjamin Coddington) [2017166] - xprtrdma: Improve locking around rpcrdma_rep creation (Benjamin Coddington) [2017166] - xprtrdma: Improve commentary around rpcrdma_reps_unmap() (Benjamin Coddington) [2017166] - xprtrdma: Improve locking around rpcrdma_rep destruction (Benjamin Coddington) [2017166] - xprtrdma: Put flushed Receives on free list instead of destroying them (Benjamin Coddington) [2017166] - xprtrdma: Do not refresh Receive Queue while it is draining (Benjamin Coddington) [2017166] - xprtrdma: Avoid Receive Queue wrapping (Benjamin Coddington) [2017166] - SUNRPC: fix ternary sign expansion bug in tracing (Benjamin Coddington) [2017166] - nfsd: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - nfsd: reshuffle some code (Benjamin Coddington) [2017166] - nfsd: track filehandle aliasing in nfs4_files (Benjamin Coddington) [2017166] - nfsd: hash nfs4_files by inode number (Benjamin Coddington) [2017166] - NFSv4.1: Simplify layout return in pnfs_layout_process() (Benjamin Coddington) [2017166] - NFSv4: Don't discard segments marked for return in _pnfs_return_layout() (Benjamin Coddington) [2017166] - nfsd: ensure new clients break delegations (Benjamin Coddington) [2017166] - NFS: Don't discard pNFS layout segments that are marked for return (Benjamin Coddington) [2017166] - NFSv4.x: Don't return NFS4ERR_NOMATCHING_LAYOUT if we're unmounting (Benjamin Coddington) [2017166] - nfsd: remove unused function (Benjamin Coddington) [2017166] - svcrdma: Pass a useful error code to the send_err tracepoint (Benjamin Coddington) [2017166] - svcrdma: Rename goto labels in svc_rdma_sendto() (Benjamin Coddington) [2017166] - svcrdma: Don't leak send_ctxt on Send errors (Benjamin Coddington) [2017166] - SUNRPC: Remove trace_xprt_transmit_queued (Benjamin Coddington) [2017166] - SUNRPC: Add tracepoint that fires when an RPC is retransmitted (Benjamin Coddington) [2017166] - SUNRPC: Move fault injection call sites (Benjamin Coddington) [2017166] - pNFS/flexfiles: fix incorrect size check in decode_nfs_fh() (Benjamin Coddington) [2017166] - NFSv4: Catch and trace server filehandle encoding errors (Benjamin Coddington) [2017166] - NFSv4: Convert nfs_xdr_status tracepoint to an event class (Benjamin Coddington) [2017166] - NFSv4: Add tracing for COMPOUND errors (Benjamin Coddington) [2017166] - NFSv4: Don't modify the change attribute cached in the inode (Benjamin Coddington) [2017166] - NFSv4: Fix value of decode_fsinfo_maxsz (Benjamin Coddington) [2017166] - NFS: Fix up revalidation of space used (Benjamin Coddington) [2017166] - NFS: NFS_INO_REVAL_PAGECACHE should mark the change attribute invalid (Benjamin Coddington) [2017166] - NFS: Mask out unsupported attributes in nfs_getattr() (Benjamin Coddington) [2017166] - NFS: Fix up inode cache tracing (Benjamin Coddington) [2017166] - NFS: Deal correctly with attribute generation counter overflow (Benjamin Coddington) [2017166] - NFSv4.2: Always flush out writes in nfs42_proc_fallocate() (Benjamin Coddington) [2017166] - NFS: Fix attribute bitmask in _nfs42_proc_fallocate() (Benjamin Coddington) [2017166] - NFS: nfs4_bitmask_adjust() must not change the server global bitmasks (Benjamin Coddington) [2017166] - NFSD: Use DEFINE_SPINLOCK() for spinlock (Benjamin Coddington) [2017166] - sunrpc: Remove unused function ip_map_lookup (Benjamin Coddington) [2017166] - NFS: Fix fscache invalidation in nfs_set_cache_invalid() (Benjamin Coddington) [2017166] - SUNRPC: Ensure the transport backchannel association (Benjamin Coddington) [2017166] - nfs: hornor timeo and retrans option when mounting NFSv3 (Benjamin Coddington) [2017166] - sunrpc: honor rpc_task's timeout value in rpcb_create() (Benjamin Coddington) [2017166] - nfs: Fix a typo in the file nfs42xattr.c (Benjamin Coddington) [2017166] - NFS: fs_context: validate UDP retrans to prevent shift out-of-bounds (Benjamin Coddington) [2017166] - NFS: Fix up incorrect documentation (Benjamin Coddington) [2017166] - NFSv4: Simplify nfs4_retry_setlk() (Benjamin Coddington) [2017166] - UAPI: nfsfh.h: Replace one-element array with flexible-array member (Benjamin Coddington) [2017166] - svcrdma: Clean up dto_q critical section in svc_rdma_recvfrom() (Benjamin Coddington) [2017166] - svcrdma: Remove svc_rdma_recv_ctxt::rc_pages and ::rc_arg (Benjamin Coddington) [2017166] - svcrdma: Remove sc_read_complete_q (Benjamin Coddington) [2017166] - svcrdma: Single-stage RDMA Read (Benjamin Coddington) [2017166] - SUNRPC: Move svc_xprt_received() call sites (Benjamin Coddington) [2017166] - SUNRPC: Export svc_xprt_received() (Benjamin Coddington) [2017166] - svcrdma: Retain the page backing rq_res.head[0].iov_base (Benjamin Coddington) [2017166] - svcrdma: Remove unused sc_pages field (Benjamin Coddington) [2017166] - svcrdma: Normalize Send page handling (Benjamin Coddington) [2017166] - svcrdma: Add a "deferred close" helper (Benjamin Coddington) [2017166] - svcrdma: Maintain a Receive water mark (Benjamin Coddington) [2017166] - svcrdma: Use svc_rdma_refresh_recvs() in wc_receive (Benjamin Coddington) [2017166] - svcrdma: Add a batch Receive posting mechanism (Benjamin Coddington) [2017166] - svcrdma: Remove stale comment for svc_rdma_wc_receive() (Benjamin Coddington) [2017166] - svcrdma: Provide an explanatory comment in CMA event handler (Benjamin Coddington) [2017166] - svcrdma: RPCDBG_FACILITY is no longer used (Benjamin Coddington) [2017166] - nfsd: don't ignore high bits of copy count (Benjamin Coddington) [2017166] - nfsd: COPY with length 0 should copy to end of file (Benjamin Coddington) [2017166] - nfsd: Fix typo "accesible" (Benjamin Coddington) [2017166] - nfsd: Ensure knfsd shuts down when the "nfsd" pseudofs is unmounted (Benjamin Coddington) [2017166] - nfsd: Log client tracking type log message as info instead of warning (Benjamin Coddington) [2017166] - nfsd: helper for laundromat expiry calculations (Benjamin Coddington) [2017166] - NFSD: Clean up NFSDDBG_FACILITY macro (Benjamin Coddington) [2017166] - NFSD: Add a tracepoint to record directory entry encoding (Benjamin Coddington) [2017166] - rpc: fix NULL dereference on kmalloc failure (Benjamin Coddington) [2017166] - sunrpc: fix refcount leak for rpc auth modules (Benjamin Coddington) [2017166] - NFSD: Repair misuse of sv_lock in 5.10.16-rt30. (Benjamin Coddington) [2017166] - svcrdma: disable timeouts on rdma backchannel (Benjamin Coddington) [2017166] - svcrdma: Hold private mutex while invoking rdma_accept() (Benjamin Coddington) [2017166] - NFS: Don't set NFS_INO_INVALID_XATTR if there is no xattr cache (Benjamin Coddington) [2017166] - NFS: Always clear an invalid mapping when attempting a buffered write (Benjamin Coddington) [2017166] - NFS: Optimise sparse writes past the end of file (Benjamin Coddington) [2017166] - NFS: Fix documenting comment for nfs_revalidate_file_size() (Benjamin Coddington) [2017166] - rpcrdma: Fix comments about reverse-direction operation (Benjamin Coddington) [2017166] - xprtrdma: Refactor invocations of offset_in_page() (Benjamin Coddington) [2017166] - xprtrdma: Simplify rpcrdma_convert_kvec() and frwr_map() (Benjamin Coddington) [2017166] - xprtrdma: Remove FMR support in rpcrdma_convert_iovs() (Benjamin Coddington) [2017166] - NFS: Fix fscache read from NFS after cache error (Benjamin Coddington) [2017166] - NFS: Ensure nfs_readpage returns promptly when internal error occurs (Benjamin Coddington) [2017166] - NFS: Remove unnecessary inode parameter from nfs_pageio_complete_read() (Benjamin Coddington) [2017166] - NFS: Add nfs_pageio_complete_read() and remove nfs_readpage_async() (Benjamin Coddington) [2017166] - NFS: Call readpage_async_filler() from nfs_readpage_async() (Benjamin Coddington) [2017166] - NFS: Refactor nfs_readpage() and nfs_readpage_async() to use nfs_readdesc (Benjamin Coddington) [2017166] - NFS: In nfs_readpage() only increment NFSIOS_READPAGES when read succeeds (Benjamin Coddington) [2017166] - NFS: Clean up nfs_readpage() and nfs_readpages() (Benjamin Coddington) [2017166] - nfs: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - SUNRPC: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - net: sunrpc: xprtsock.c: Corrected few spellings ,in comments (Benjamin Coddington) [2017166] - SUNRPC: correct error code comment in xs_tcp_setup_socket() (Benjamin Coddington) [2017166] - nfsd: cstate->session->se_client -> cstate->clp (Benjamin Coddington) [2017166] - nfsd: simplify nfsd4_check_open_reclaim (Benjamin Coddington) [2017166] - nfsd: remove unused set_client argument (Benjamin Coddington) [2017166] - nfs/blocklayout: remove cruft in bl_alloc_init_bio (Benjamin Coddington) [2017166] - nfsd: refactor set_client (Benjamin Coddington) [2017166] - nfsd: rename lookup_clientid->set_client (Benjamin Coddington) [2017166] - nfsd: simplify nfsd_renew (Benjamin Coddington) [2017166] - nfsd: simplify process_lock (Benjamin Coddington) [2017166] - nfsd4: simplify process_lookup1 (Benjamin Coddington) [2017166] - SUNRPC: Correct a comment (Benjamin Coddington) [2017166] - svcrdma: DMA-sync the receive buffer in svc_rdma_recvfrom() (Benjamin Coddington) [2017166] - svcrdma: Restore read and write stats (Benjamin Coddington) [2017166] - svcrdma: Convert rdma_stat_sq_starve to a per-CPU counter (Benjamin Coddington) [2017166] - svcrdma: Convert rdma_stat_recv to a per-CPU counter (Benjamin Coddington) [2017166] - svcrdma: Refactor svc_rdma_init() and svc_rdma_clean_up() (Benjamin Coddington) [2017166] - nfsd: remove fault injection code (Benjamin Coddington) [2017166] - SUNRPC: Fix a NULL pointer deref in trace_svc_stats_latency() (Benjamin Coddington) [2017166] - SUNRPC: Display RPC procedure names instead of proc numbers (Benjamin Coddington) [2017166] - SUNRPC: Make trace_svc_process() display the RPC procedure symbolically (Benjamin Coddington) [2017166] - EDAC/mce_amd: Do not load edac_mce_amd module on guests (Aristeu Rozanski) [2000776] - tracing: Map all PIDs to command lines (Jerome Marchand) [1913211] - mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and zs_unregister_migration() (Rafael Aquini) [2016441] - mm: mark the OOM reaper thread as freezable (Rafael Aquini) [2016441] - mm/page_isolation: guard against possible putback unisolated page (Rafael Aquini) [2016441] - mm/page_isolation: fix potential missing call to unset_migratetype_isolate() (Rafael Aquini) [2016441] - mm/page_alloc: use accumulated load when building node fallback list (Rafael Aquini) [2016441] - mm/vmalloc: do not adjust the search size for alignment overhead (Rafael Aquini) [2016441] - mm/vmalloc: make sure to dump unpurged areas in /proc/vmallocinfo (Rafael Aquini) [2016441] - Revert "mm, slub: consider rest of partial list if acquire_slab() fails" (Rafael Aquini) [2016441] - mm, slub: consider rest of partial list if acquire_slab() fails (Rafael Aquini) [2016441] - mm, slub: fix incorrect memcg slab count for bulk free (Rafael Aquini) [2016441] - mm, slub: fix mismatch between reconstructed freelist depth and cnt (Rafael Aquini) [2016441] - slub: add back check for free nonslab objects (Rafael Aquini) [2016441] - slub: fix kmalloc_pagealloc_invalid_free unit test (Rafael Aquini) [2016441] - slub: fix unreclaimable slab stat for bulk free (Rafael Aquini) [2016441] - mm/slub: add taint after the errors are printed (Rafael Aquini) [2016441] - mm/slab.c: remove useless lines in enable_cpucache() (Rafael Aquini) [2016441] - kasan: fix tag for large allocations when using CONFIG_SLAB (Rafael Aquini) [2016441] - mm/hmm: bypass devmap pte when all pfn requested flags are fulfilled (Rafael Aquini) [2016441] - mm: memcontrol: set the correct memcg swappiness restriction (Rafael Aquini) [2016441] - memcg: replace in_interrupt() by !in_task() in active_memcg() (Rafael Aquini) [2016441] - huge tmpfs: fix split_huge_page() after FALLOC_FL_KEEP_SIZE (Rafael Aquini) [2016441] - huge tmpfs: fix fallocate(vanilla) advance over huge pages (Rafael Aquini) [2016441] - huge tmpfs: revert shmem's use of transhuge_vma_enabled() (Rafael Aquini) [2016441] - mm/huge_memory.c: remove unnecessary tlb_remove_page_size() for huge zero pmd (Rafael Aquini) [2016441] - mm/huge_memory.c: add missing read-only THP checking in transparent_hugepage_enabled() (Rafael Aquini) [2016441] - mm/huge_memory.c: use page->deferred_list (Rafael Aquini) [2016441] - mm/huge_memory.c: remove dedicated macro HPAGE_CACHE_INDEX_MASK (Rafael Aquini) [2016441] - mm/thp: decrease nr_thps in file's mapping on THP split (Rafael Aquini) [2016441] - mm/thp: fix page_address_in_vma() on file THP tails (Rafael Aquini) [2016441] - mm/thp: try_to_unmap() use TTU_SYNC for safe splitting (Rafael Aquini) [2016441] - mm/thp: make is_huge_zero_pmd() safe and quicker (Rafael Aquini) [2016441] - mm/thp: fix __split_huge_pmd_locked() on shmem migration entry (Rafael Aquini) [2016441] - mm/truncate: fix truncation for pages of arbitrary size (Rafael Aquini) [2016441] - mm/rmap: fix potential pte_unmap on an not mapped pte (Rafael Aquini) [2016441] - mm/rmap: correct obsolete comment of page_get_anon_vma() (Rafael Aquini) [2016441] - mm/rmap: use page_not_mapped in try_to_unmap() (Rafael Aquini) [2016441] - mm/rmap: fix obsolete comment in __page_check_anon_rmap() (Rafael Aquini) [2016441] - mm/rmap: remove unneeded semicolon in page_not_mapped() (Rafael Aquini) [2016441] - mm/rmap: correct some obsolete comments of anon_vma (Rafael Aquini) [2016441] - mm/pgtable-generic.c: optimize the VM_BUG_ON condition in pmdp_huge_clear_flush() (Rafael Aquini) [2016441] - mm/pgtable-generic.c: simplify the VM_BUG_ON condition in pmdp_huge_clear_flush() (Rafael Aquini) [2016441] - mm: prevent a warning when casting void* -> enum (Rafael Aquini) [2016441] - mm/hugeltb: simplify the return code of __vma_reservation_common() (Rafael Aquini) [2016441] - mm,thp,shmem: make khugepaged obey tmpfs mount flags (Rafael Aquini) [2016441] - mm/vma: make is_vma_temporary_stack() available for general use (Rafael Aquini) [2016441] - mm/vma: make vma_is_foreign() available for general use (Rafael Aquini) [2016441] - hugetlb: fix copy_huge_page_from_user contig page struct assumption (Rafael Aquini) [2016441] - mm/sparsemem: pfn_to_page is not valid yet on SPARSEMEM (Rafael Aquini) [2016441] - mm/sparse.c: use __nr_to_section(section_nr) to get mem_section (Rafael Aquini) [2016441] - mm/huge_memory.c: thp: fix conflict of above-47bit hint address and PMD alignment (Rafael Aquini) [2016441] - mm/huge_memory.c: make __thp_get_unmapped_area static (Rafael Aquini) [2016441] - mm/mempolicy.c: fix checking unmapped holes for mbind (Rafael Aquini) [2016441] - s390/mm: fix VMA and page table handling code in storage key handling functions (Rafael Aquini) [2016441] - s390/mm: validate VMA in PGSTE manipulation functions (Rafael Aquini) [2016441] - s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap() (Rafael Aquini) [2016441] - s390/gmap: validate VMA in __gmap_zap() (Rafael Aquini) [2016441] - s390: mm: Fix secure storage access exception handling (Rafael Aquini) [2016441] - powerpc/numa: Consider the max NUMA node for migratable LPAR (Rafael Aquini) [2016441] - powerpc/64s: Fix pte update for kernel memory on radix (Rafael Aquini) [2016441] - powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S (Rafael Aquini) [2016441] - powerpc/book3s64/pkeys: Use PVR check instead of cpu feature (Rafael Aquini) [2016441] - powerpc/mm: Fix reporting of kernel execute faults on the 8xx (Rafael Aquini) [2016441] - powerpc/mm/hash: Handle user access of kernel address gracefully (Rafael Aquini) [2016441] - powerpc/mm: Add missing tracepoint for tlbie (Rafael Aquini) [2016441] - arm64: hugetlb: avoid potential NULL dereference (Rafael Aquini) [2016441] - arm64/numa: Report correct memblock range for the dummy node (Rafael Aquini) [2016441] - x86/pat: Pass valid address to sanitize_phys() (Rafael Aquini) [2016441] - x86/mm: Check for pfn instead of page in vmalloc_sync_one() (Rafael Aquini) [2016441] - x86/mm/tlb: Revert "x86/mm: Align TLB invalidation info" (Rafael Aquini) [2016441] - x86/mm: Report which part of kernel image is freed (Rafael Aquini) [2016441] - mm: make free_reserved_area() return "const char *" (Rafael Aquini) [2016441] - x86/mm/init: Remove freed kernel image areas from alias mapping (Rafael Aquini) [2016441] - x86/mm/init: Add helper for freeing kernel image pages (Rafael Aquini) [2016441] - x86/mm/init: Pass unconverted symbol addresses to free_init_pages() (Rafael Aquini) [2016441] - x86/mm: Add TLB purge to free pmd/pte page interfaces (Rafael Aquini) [2016441] - mm/mmu_notifier: Make drm-backport/linux/mmu_notifier.h use RH_MMU_NOTIFIER_V2 (Waiman Long) [1946746] - mm/migrate: fix migrate_pgmap_owner w/o CONFIG_MMU_NOTIFIER (Waiman Long) [1946746] - mm/notifier: add migration invalidation type (Waiman Long) [1946746] - mm/migrate: add a flags parameter to migrate_vma (Waiman Long) [1946746] - mm/mmu_notifiers: ensure range_end() is paired with range_start() (Waiman Long) [1946746] - mm: track mmu notifiers in fs_reclaim_acquire/release (Waiman Long) [1946746] - mm: mmu_notifier: fix and extend kerneldoc (Waiman Long) [1946746] - mm/mmu_notifier: silence PROVE_RCU_LIST warnings (Waiman Long) [1946746] - mm/mmu_notifiers: Use 'interval_sub' as the variable for mmu_interval_notifier (Waiman Long) [1946746] - mm/mmu_notifiers: Use 'subscription' as the variable name for mmu_notifier (Waiman Long) [1946746] - mm/mmu_notifier: Rename struct mmu_notifier_mm to mmu_notifier_subscriptions (Waiman Long) [1946746] - mm, notifier: Catch sleeping/blocking for !blockable (Waiman Long) [1946746] - mm/mmu_notifiers: use the right return code for WARN_ON (Waiman Long) [1946746] - mm/mmu_notifiers: check if mmu notifier callbacks are allowed to fail (Waiman Long) [1946746] - mm/mmu_notifier: mmu_notifier_range_update_to_read_only() helper (Waiman Long) [1946746] - mm/mmu_notifier: pass down vma and reasons why mmu notifier is happening (Waiman Long) [1946746] - mm/mmu_notifier: use structure for invalidate_range_start/end callback (Waiman Long) [1946746] - Revert "mm, mmu_notifier: annotate mmu notifiers with blockable invalidate callbacks" (Waiman Long) [1946746] - mm, mmu_notifier: be explicit about range invalition non-blocking mode (Waiman Long) [1946746] - mm/oom_kill.c: clean up oom_reap_task_mm() (Waiman Long) [1946746] - mm, oom: distinguish blockable mode for mmu notifiers (Waiman Long) [1946746] - mm/mmu_notifier: helper to test if a range invalidation is blockable (Waiman Long) [1946746] - mm/mmu_notifier: Relocate mmu_notifier_put() (Waiman Long) [1946746] - mm/mmu_notifier: Add mmu_notifier versioning mechanism (Waiman Long) [1946746] - af_unix: Return errno instead of NULL in unix_create1(). (Balazs Nemeth) [2026690] - netfilter: nf_tables: fix audit memory leak in nf_tables_commit (Phil Sutter) [2028926] - ethtool: Validate module EEPROM offset as part of policy (Ivan Vecera) [2019090] - ethtool: Validate module EEPROM length as part of policy (Ivan Vecera) [2019090] - ethtool: Use kernel data types for internal EEPROM struct (Ivan Vecera) [2019090] - ethtool: Document behavior when module EEPROM bank attribute is omitted (Ivan Vecera) [2019090] - ethtool: Decrease size of module EEPROM get policy array (Ivan Vecera) [2019090] - ethtool: Document correct attribute type (Ivan Vecera) [2019090] - ethtool: Use correct command name in title (Ivan Vecera) [2019090] - net: fix mistake path for netdev_features_strings (Ivan Vecera) [2019089 2019090 2019092] - ethtool: add a stricter length check (Ivan Vecera) [2019089 2019090 2019092] - ethtool: Fix a typo (Ivan Vecera) [2019089 2019090 2019092] - net: ethtool: clear heap allocations for ethtool function (Ivan Vecera) [2019090] - ethtool: Fix NULL pointer dereference during module EEPROM dump (Ivan Vecera) [2019090] - ethtool: stats: Fix a copy-paste error (Ivan Vecera) [2019092] - ethtool: add missing EEPROM to list of messages (Ivan Vecera) [2019090] - ethtool: stats: clarify the initialization to ETHTOOL_STAT_NOT_SET (Ivan Vecera) [2019092] - ethtool: ioctl: Fix out-of-bounds warning in store_link_ksettings_for_user() (Ivan Vecera) [2019092] - ethtool: add interface to read RMON stats (Ivan Vecera) [2019092] - ethtool: add interface to read standard MAC Ctrl stats (Ivan Vecera) [2019092] - ethtool: add interface to read standard MAC stats (Ivan Vecera) [2019092] - ethtool: add a new command for reading standard stats (Ivan Vecera) [2019092] - docs: ethtool: document standard statistics (Ivan Vecera) [2019092] - docs: networking: extend the statistics documentation (Ivan Vecera) [2019092] - ethtool: add FEC statistics (Ivan Vecera) [2019089] - docs: net: statistics.rst: remove a duplicated kernel-doc (Ivan Vecera) [2019089] - ethtool: fec_prepare_data() - jump to error handling (Ivan Vecera) [2019089] - ethtool: move ethtool_stats_init (Ivan Vecera) [2019089] - ethtool: wire in generic SFP module access (Ivan Vecera) [2019090] - phy: sfp: add netlink SFP support to generic SFP code (Ivan Vecera) [2019090] - ethtool: Add fallback to get_module_eeprom from netlink command (Ivan Vecera) [2019090] - net: ethtool: Export helpers for getting EEPROM info (Ivan Vecera) [2019090] - ethtool: Allow network drivers to dump arbitrary EEPROM data (Ivan Vecera) [2019090] - docs: ethtool: correct quotes (Ivan Vecera) [2019090] - selftests: ethtool: add a netdevsim FEC test (Ivan Vecera) [2019089] - netdevsim: add FEC settings support (Ivan Vecera) [2019089] - ethtool: support FEC settings over netlink (Ivan Vecera) [2019089] - ethtool: document the enum values not defines (Ivan Vecera) [2019089] - ethtool: fec: fix FEC_NONE check (Ivan Vecera) [2019089] - ethtool: fec: add note about reuse of reserved (Ivan Vecera) [2019089] - ethtool: clarify the ethtool FEC interface (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->fec (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->active_fec (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->reserved (Ivan Vecera) [2019089] - ethtool: fec: remove long structure description (Ivan Vecera) [2019089] - ethtool: fec: fix typo in kdoc (Ivan Vecera) [2019089] - net: Remove redundant if statements (Petr Oros) [2026472] - netdevice: add the case if dev is NULL (Petr Oros) [2026472] - nvmet: use IOCB_NOWAIT only if the filesystem supports it (Chris Leech) [2015563] - nvmet-tcp: fix incomplete data digest send (Chris Leech) [2015563] - nvmet-tcp: fix memory leak when performing a controller reset (Chris Leech) [2015563] - nvmet-tcp: add an helper to free the cmd buffers (Chris Leech) [2015563] - nvmet-tcp: fix a race condition between release_queue and io_work (Chris Leech) [2015563] - nvmet-tcp: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet-rdma: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet-tcp: fix header digest verification (Chris Leech) [2015563] - nvmet-tcp: fix data digest pointer calculation (Chris Leech) [2015563] - nvmet-tcp: fix a memory leak when releasing a queue (Chris Leech) [2015563] - nvmet: fix a width vs precision bug in nvmet_subsys_attr_serial_show() (Chris Leech) [2015563] - nvmet: fixup buffer overrun in nvmet_subsys_attr_serial() (Chris Leech) [2015563] - nvmet: return bool from nvmet_passthru_ctrl and nvmet_is_passthru_req (Chris Leech) [2015563] - nvmet: looks at the passthrough controller when initializing CAP (Chris Leech) [2015563] - nvmet: check that host sqsize does not exceed ctrl MQES (Chris Leech) [2015563] - nvmet: avoid duplicate qid in connect cmd (Chris Leech) [2015563] - nvmet: pass back cntlid on successful completion (Chris Leech) [2015563] - nvmet: remove redundant assignments of variable status (Chris Leech) [2015563] - nvme-fabrics: ignore invalid fast_io_fail_tmo values (Chris Leech) [2015563] - nvme-tcp: fix memory leak when freeing a queue (Chris Leech) [2015563] - nvme-tcp: validate R2T PDU in nvme_tcp_handle_r2t() (Chris Leech) [2015563] - nvme-tcp: fix data digest pointer calculation (Chris Leech) [2015563] - nvme-tcp: fix possible req->offset corruption (Chris Leech) [2015563] - nvme-tcp: fix H2CData PDU send accounting (again) (Chris Leech) [2015563] - nvme: keep ctrl->namespaces ordered (Chris Leech) [2015563] - nvme-tcp: fix incorrect h2cdata pdu offset accounting (Chris Leech) [2015563] - nvme-tcp: fix io_work priority inversion (Chris Leech) [2015563] - nvme-multipath: fix ANA state updates when a namespace is not present (Chris Leech) [2015563] - nvme: avoid race in shutdown namespace removal (Chris Leech) [2015563] - nvme: update keep alive interval when kato is modified (Chris Leech) [2015563] - nvme: use return value from blk_execute_rq() (Chris Leech) [2015563] - nvme-tcp: Do not reset transport on data digest errors (Chris Leech) [2015563] - nvme-rdma: don't update queue count when failing to set io queues (Chris Leech) [2015563] - nvme-tcp: don't update queue count when failing to set io queues (Chris Leech) [2015563] - nvme-tcp: pair send_mutex init with destroy (Chris Leech) [2015563] - nvme-tcp: don't check blk_mq_tag_to_rq when receiving pdu data (Chris Leech) [2015563] - RDMA/rxe: Bump up default maximum values used via uverbs (Kamal Heib) [2029675]- scsi: qedi: Fix error codes in qedi_alloc_global_queues() (Nilesh Javali) [1983905] - scsi: qedi: Add support for fastpath doorbell recovery (Nilesh Javali) [1983905] - scsi: qedi: Use DEVICE_ATTR_RO() macro (Nilesh Javali) [1983905] - scsi: qedi: Fix host removal with running sessions (Nilesh Javali) [1983905] - scsi: qedi: Wake up if cmd_cleanup_req is set (Nilesh Javali) [1983905] - scsi: qedi: Complete TMF works before disconnect (Nilesh Javali) [1983905] - scsi: qedi: Pass send_iscsi_tmf task to abort (Nilesh Javali) [1983905] - scsi: qedi: Fix cleanup session block/unblock use (Nilesh Javali) [1983905] - scsi: qedi: Fix TMF session block/unblock use (Nilesh Javali) [1983905] - scsi: qedi: Use GFP_NOIO for TMF allocation (Nilesh Javali) [1983905] - scsi: qedi: Fix TMF tid allocation (Nilesh Javali) [1983905] - scsi: qedi: Fix use after free during abort cleanup (Nilesh Javali) [1983905] - scsi: qedi: Fix race during abort timeouts (Nilesh Javali) [1983905] - scsi: qedi: Fix null ref during abort handling (Nilesh Javali) [1983905] - vrf: Fix fast path output packet handling with async Netfilter rules (Antoine Tenart) [2019333] - ipv6: do not drop vrf udp multicast packets (Antoine Tenart) [2019333] - ipv6: handling of multicast packets received in VRF (Antoine Tenart) [2019333] - vrf: Do not attempt to create IPv6 mcast rule if IPv6 is disabled (Antoine Tenart) [2019333] - ipv6: add vrf table handling code for ipv6 mcast (Antoine Tenart) [2019333] - ipv4: Allow sending multicast packets on specific i/f using VRF socket (Antoine Tenart) [2019333] - xfs: fix I_DONTCACHE (Carlos Maiolino) [2024969] - kernfs: don't create a negative dentry if inactive node exists (Ian Kent) [2001597] - kernfs: also call kernfs_set_rev() for positive dentry (Ian Kent) [2001597] - ixgbevf: use xso.real_dev instead of xso.dev in callback functions of struct xfrmdev_ops (Ken Cox) [1970656] - ixgbe: Fix NULL pointer dereference in ixgbe_xdp_setup (Ken Cox) [1970653] - ixgbe, xsk: clean up the resources in ixgbe_xsk_pool_enable error path (Ken Cox) [1970653] - powerpc/perf: Fix missing is_sier_aviable() during build (Gustavo Walbon) [2011687] - perf script: Fix PERF_SAMPLE_WEIGHT_STRUCT support (Michael Petlan) [2026390] - RDMA/core: Set sgtable nents when using ib_dma_virt_map_sg() (Kamal Heib) [2025496] - RDMA: Use the sg_table directly and remove the opencoded version from umem (Kamal Heib) [2025496] - ovs: clear skb->tstamp in forwarding path (Antoine Tenart) [2020160] - net: openvswitch: fix kernel-doc warnings in flow.c (Antoine Tenart) [2020160] - openvswitch: Optimize operation for key comparison (Antoine Tenart) [2020160] - net: openvswitch: Remove unnecessary skb_nfct() (Antoine Tenart) [2020160] - openvswitch: meter: fix race when getting now_ms. (Antoine Tenart) [2020160] - net: openvswitch: Use 'skb_push_rcsum()' instead of hand coding it (Antoine Tenart) [2020160] - openvswitch: Fix a typo (Antoine Tenart) [2020160] - openvswitch: Warn over-mtu packets only if iface is UP. (Antoine Tenart) [2020160] - openvswitch: meter: remove rate from the bucket size calculation (Antoine Tenart) [2020160] - net: openvswitch: use core API to update/provide stats (Antoine Tenart) [2020160] - net: openvswitch: use new function dev_fetch_sw_netstats (Antoine Tenart) [2020160] - net: openvswitch: use dev_sw_netstats_rx_add() (Antoine Tenart) [2020160] - net: openvswitch: Constify static struct genl_small_ops (Antoine Tenart) [2020160] - selftests: add a test case for mirred egress to ingress (Xin Long) [1983894] - net: sched: act_mirred: drop dst for the direction from egress to ingress (Xin Long) [1983894] - usb: hso: fix error handling code of hso_create_net_device (José Ignacio Tornos Martínez) [1986489] {CVE-2021-37159} - i40e: Fix freeing of uninitialized misc IRQ vector (Stefan Assmann) [1990683] - x86/topology: Make __max_die_per_package available unconditionally (Aristeu Rozanski) [1949284] - x86/cpu/amd: Set __max_die_per_package on AMD (Aristeu Rozanski) [1949284] - x86/topology: Set cpu_die_id only if DIE_TYPE found (Aristeu Rozanski) [1949284] - x86/mce: Drop AMD-specific "DEFERRED" case from Intel severity rule list (Aristeu Rozanski) [1949284] - EDAC/mce_amd: Add new error descriptions for existing types (Aristeu Rozanski) [1949284] - x86/mce/amd, edac: Remove report_gart_errors (Aristeu Rozanski) [1949284] - x86/mce/amd: Make threshold bank setting hotplug robust (Aristeu Rozanski) [1949284] - x86/mce/amd: Cleanup threshold device remove path (Aristeu Rozanski) [1949284] - x86/mce/amd: Straighten CPU hotplug path (Aristeu Rozanski) [1949284] - x86/mce/amd: Sanitize thresholding device creation hotplug path (Aristeu Rozanski) [1949284] - x86/mce/amd: Protect a not-fully initialized bank from the thresholding interrupt (Aristeu Rozanski) [1949284] - x86/mce/amd: Init thresholding machinery only on relevant vendors (Aristeu Rozanski) [1949284] - x86/mce/amd: Do proper cleanup on error paths (Aristeu Rozanski) [1949284] - x86/mce/amd: Fix kobject lifetime (Aristeu Rozanski) [1949284] - x86/mce/amd: Publish the bank pointer only after setup has succeeded (Aristeu Rozanski) [1949284] - x86/mce/amd: Make disable_err_thresholding() static (Aristeu Rozanski) [1949284] - x86/MCE: Determine MCA banks' init state properly (Aristeu Rozanski) [1949284] - x86/MCE: Group AMD function prototypes in (Aristeu Rozanski) [1949284] - x86/MCE: Switch to use the new generic UUID API (Aristeu Rozanski) [1949284] - ipv4: fix endianness issue in inet_rtm_getroute_build_skb() (Guillaume Nault) [2022057] - net: igmp: fix data-race in igmp_ifc_timer_expire() (Guillaume Nault) [2022057] - net/ipv4: swap flow ports when validating source (Guillaume Nault) [2022057] - tools headers UAPI: Sync linux/in.h copy with the kernel sources (Guillaume Nault) [2022057] - icmp: don't send out ICMP messages with a source address of 0.0.0.0 (Guillaume Nault) [2022057] - cipso: correct comments of cipso_v4_cache_invalidate() (Guillaume Nault) [2022057] - crypto: ccp - Make use of the helper macro kthread_run() (Vladis Dronov) [1997593] - crypto: ccp - Fix whitespace in sev_cmd_buffer_len() (Vladis Dronov) [1997593] - crypto: ccp - fix resource leaks in ccp_run_aes_gcm_cmd() (Vladis Dronov) [1997593] - crypto: jitter - consider 32 LSB for APT (Herbert Xu) [1994390] - rcu: Tighten rcu_advance_cbs_nowake() checks (Daniel Vacek) [2013408] - cxgb3: Remove seeprom_write and use VPD API (Myron Stowe) [2019086] - cxgb3: Use VPD API in t3_seeprom_wp() (Myron Stowe) [2019086] - cxgb3: Remove t3_seeprom_read and use VPD API (Myron Stowe) [2019086] - PCI/VPD: Use pci_read_vpd_any() in pci_vpd_size() (Myron Stowe) [2019086] - PCI/VPD: Add pci_read/write_vpd_any() (Myron Stowe) [2019086] - PCI/VPD: Defer VPD sizing until first access (Myron Stowe) [2019086] - PCI/VPD: Use unaligned access helpers (Myron Stowe) [2019086] - PCI/VPD: Clean up public VPD defines and inline functions (Myron Stowe) [2019086] - cxgb4: Use pci_vpd_find_id_string() to find VPD ID string (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_find_id_string() (Myron Stowe) [2019086] - PCI/VPD: Include post-processing in pci_vpd_find_tag() (Myron Stowe) [2019086] - PCI/VPD: Stop exporting pci_vpd_find_info_keyword() (Myron Stowe) [2019086] - PCI/VPD: Stop exporting pci_vpd_find_tag() (Myron Stowe) [2019086] - scsi: cxlflash: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - cxgb4: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - cxgb4: Remove unused vpd_param member ec (Myron Stowe) [2019086] - cxgb4: Validate VPD checksum with pci_vpd_check_csum() (Myron Stowe) [2019086] - bnxt: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - bnxt: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - bnx2x: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - bnx2x: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - bnx2: Replace open-coded byte swapping with swab32s() (Myron Stowe) [2019086] - bnx2: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: falcon: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: falcon: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - tg3: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - tg3: Validate VPD checksum with pci_vpd_check_csum() (Myron Stowe) [2019086] - tg3: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - sfc: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_check_csum() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_alloc() (Myron Stowe) [2019086] - PCI/VPD: Treat invalid VPD like missing VPD capability (Myron Stowe) [2019086] - PCI/VPD: Determine VPD size in pci_vpd_init() (Myron Stowe) [2019086] - PCI/VPD: Embed struct pci_vpd in struct pci_dev (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd.valid member (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd_ops (Myron Stowe) [2019086] - PCI/VPD: Reorder pci_read_vpd(), pci_write_vpd() (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd.flag (Myron Stowe) [2019086] - PCI/VPD: Make pci_vpd_wait() uninterruptible (Myron Stowe) [2019086] - PCI/VPD: Remove pci_vpd_size() old_size argument (Myron Stowe) [2019086] - PCI/VPD: Allow access to valid parts of VPD if some is invalid (Myron Stowe) [2019086] - PCI/VPD: Don't check Large Resource Item Names for validity (Myron Stowe) [2019086] - PCI/VPD: Reject resource tags with invalid size (Myron Stowe) [2019086] - PCI/VPD: Treat initial 0xff as missing EEPROM (Myron Stowe) [2019086] - PCI/VPD: Check Resource Item Names against those valid for type (Myron Stowe) [2019086] - PCI/VPD: Correct diagnostic for VPD read failure (Myron Stowe) [2019086] - net: create netdev->dev_addr assignment helpers (Josef Oskera) [2016478] - scsi: ibmvfc: Fix up duplicate response detection (Steve Best) [2015732] - scsi: core: Avoid leaving shost->last_reset with stale value if EH does not run (Ewan D. Milne) [2011330] - libbpf: Add support for new llvm bpf relocations (Yauheni Kaliuta) [1944799] - libbpf: Fix memory leak in strset (Yauheni Kaliuta) [1944799] - selftests: bpf: skip test_doc_build.sh (Yauheni Kaliuta) [1944799] - bpf: Stop caching subprog index in the bpf_pseudo_func insn (Yauheni Kaliuta) [1944799] - redhat/configs: enable CONFIG_BPF_UNPRIV_DEFAULT_OFF (Yauheni Kaliuta) [1944799] - kbuild: Quote OBJCOPY var to avoid a pahole call break the build (Yauheni Kaliuta) [1944799] - bpf: Fix BPF_JIT kconfig symbol dependency (Yauheni Kaliuta) [1944799] - bpf: Add kconfig knob for disabling unpriv bpf by default (Yauheni Kaliuta) [1944799] - bpf, kconfig: Add consolidated menu entry for bpf with core options (Yauheni Kaliuta) [1944799] - tools/resolve_btfids: Fix warnings (Yauheni Kaliuta) [1944799] - tools/runqslower: Allow substituting custom vmlinux.h for the build (Yauheni Kaliuta) [1944799] - lib/string.c: allow searching for NUL with strnchr (Yauheni Kaliuta) [1944799] - rpmspec: update manpages installation after 5.13 rebase (bpf-helpers, bpf-syscall) (Yauheni Kaliuta) [1944799] - libbpf: Fix segfault in static linker for objects without BTF (Yauheni Kaliuta) [1944799] - bpf: Avoid using ARRAY_SIZE on an uninitialized pointer (Yauheni Kaliuta) [1944799] - bpf: Remove superfluous aux sanitation on subprog rejection (Yauheni Kaliuta) [1944799] - bpf: Clarify a bpf_bprintf_prepare macro (Yauheni Kaliuta) [1944799] - bpf: Fix nested bpf_bprintf_prepare with more per-cpu buffers (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix the snprintf test (Yauheni Kaliuta) [1944799] - bpf: Implement formatted output helpers with bstr_printf (Yauheni Kaliuta) [1944799] - seq_file: Add a seq_bprintf function (Yauheni Kaliuta) [1944799] - bpf: Notify user if we ever hit a bpf_snprintf verifier bug (Yauheni Kaliuta) [1944799] - selftests/bpf: Add a series of tests for bpf_snprintf (Yauheni Kaliuta) [1944799] - bpf: Lock bpf_trace_printk's tmp buf before it is written to (Yauheni Kaliuta) [1944799] - bpf: Add a bpf_snprintf helper (Yauheni Kaliuta) [1944799] - bpf: Factorize bpf_trace_printk and bpf_seq_printf (Yauheni Kaliuta) [1944799] - Stop the ad-hoc games with -Wno-maybe-initialized (Yauheni Kaliuta) [1944799] - kbuild: compute false-positive -Wmaybe-uninitialized cases in Kconfig (Yauheni Kaliuta) [1944799] - bpf: Fix potentially incorrect results with bpf_get_local_storage() (Yauheni Kaliuta) [1944799] - bpf, samples: Fix xdpsock with '-M' parameter missing unload process (Yauheni Kaliuta) [1944799] - libbpf: Don't crash on object files with no symbol tables (Yauheni Kaliuta) [1944799] - libbpf: Fix ELF symbol visibility update logic (Yauheni Kaliuta) [1944799] - bpf, selftests: Adjust few selftest outcomes wrt unreachable code (Yauheni Kaliuta) [1944799] - bpf: Do not mark insn as seen under speculative path verification (Yauheni Kaliuta) [1944799] - bpf: Inherit expanded/patched seen count from old aux data (Yauheni Kaliuta) [1944799] - bpf, selftests: Adjust few selftest result_unpriv outcomes (Yauheni Kaliuta) [1944799] - bpf: Fix BPF_LSM kconfig symbol dependency (Yauheni Kaliuta) [1944799] - selftests/bpf: Add test for l3 use of bpf_redirect_peer (Yauheni Kaliuta) [1944799] - bpftool: Add sock_release help info for cgroup attach/prog load command (Yauheni Kaliuta) [1944799] - bpf, offload: Reorder offload callback 'prepare' in verifier (Yauheni Kaliuta) [1944799] - selftests/bpf: Test ringbuf mmap read-only and read-write restrictions (Yauheni Kaliuta) [1944799] - selftests/bpf: Convert static to global in tc_redirect progs (Yauheni Kaliuta) [1944799] - selftests/bpf: Rewrite test_tc_redirect.sh as prog_tests/tc_redirect.c (Yauheni Kaliuta) [1944799] - libbpf: Provide GELF_ST_VISIBILITY() define for older libelf (Yauheni Kaliuta) [1944799] - bpf: Add deny list of btf ids check for tracing programs (Yauheni Kaliuta) [1944799] - bpf: Forbid trampoline attach for functions with variable arguments (Yauheni Kaliuta) [1944799] - samples/bpf: Consider frame size in tx_only of xdpsock sample (Yauheni Kaliuta) [1944799] - libbpf: Add NULL check to add_dummy_ksym_var (Yauheni Kaliuta) [1944799] - libbpf: Fix signed overflow in ringbuf_process_ring (Yauheni Kaliuta) [1944799] - bpf, selftests: Update array map tests for per-cpu batched ops (Yauheni Kaliuta) [1944799] - bpf: Add batched ops support for percpu array (Yauheni Kaliuta) [1944799] - bpf, docs: Fix literal block for example code (Yauheni Kaliuta) [1944799] - bpf, cpumap: Bulk skb using netif_receive_skb_list (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix field existence CO-RE reloc tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix BPF_CORE_READ_BITFIELD() macro (Yauheni Kaliuta) [1944799] - selftests/bpf: Use ASSERT macros in lsm test (Yauheni Kaliuta) [1944799] - selftests/bpf: Test that module can't be unloaded with attached trampoline (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to lsm test (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to fexit_test (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to fentry_test (Yauheni Kaliuta) [1944799] - bpf: Allow trampoline re-attach for tracing and lsm programs (Yauheni Kaliuta) [1944799] - bpf: Document the pahole release info related to libbpf in bpf_devel_QA.rst (Yauheni Kaliuta) [1944799] - selftests/bpf: Document latest Clang fix expectations for linking tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Add map linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Add global variables linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Add function linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Omit skeleton generation for multi-linked BPF object files (Yauheni Kaliuta) [1944799] - selftests/bpf: Use -O0 instead of -Og in selftests builds (Yauheni Kaliuta) [1944799] - libbpf: Support extern resolution for BTF-defined maps in .maps section (Yauheni Kaliuta) [1944799] - libbpf: Add linker extern resolution support for functions and global variables (Yauheni Kaliuta) [1944799] - libbpf: Tighten BTF type ID rewriting with error checking (Yauheni Kaliuta) [1944799] - libbpf: Extend sanity checking ELF symbols with externs validation (Yauheni Kaliuta) [1944799] - libbpf: Make few internal helpers available outside of libbpf.c (Yauheni Kaliuta) [1944799] - libbpf: Factor out symtab and relos sanity checks (Yauheni Kaliuta) [1944799] - libbpf: Refactor BTF map definition parsing (Yauheni Kaliuta) [1944799] - libbpf: Allow gaps in BPF program sections to support overriden weak functions (Yauheni Kaliuta) [1944799] - libbpf: Mark BPF subprogs with hidden visibility as static for BPF verifier (Yauheni Kaliuta) [1944799] - libbpf: Suppress compiler warning when using SEC() macro with externs (Yauheni Kaliuta) [1944799] - bpftool: Dump more info about DATASEC members (Yauheni Kaliuta) [1944799] - bpftool: Support dumping BTF VAR's "extern" linkage (Yauheni Kaliuta) [1944799] - bpf: Remove unnecessary map checks for ARG_PTR_TO_CONST_STR (Yauheni Kaliuta) [1944799] - xsk: Align XDP socket batch size with DPDK (Yauheni Kaliuta) [1944799] - bpf, doc: Fix some invalid links in bpf_devel_QA.rst (Yauheni Kaliuta) [1944799] - net, xdp: Update pkt_type if generic XDP changes unicast MAC (Yauheni Kaliuta) [1944799] - powerpc/ebpf32: Use standard function call for functions within 32M distance (Yauheni Kaliuta) [1944799] - selftests/bpf: Add docs target as all dependency (Yauheni Kaliuta) [1944799] - bpf/selftests: Add bpf_get_task_stack retval bounds test_prog (Yauheni Kaliuta) [1944799] - bpf/selftests: Add bpf_get_task_stack retval bounds verifier test (Yauheni Kaliuta) [1944799] - bpf: Refine retval for bpf_get_task_stack helper (Yauheni Kaliuta) [1944799] - samples/bpf: Fix broken tracex1 due to kprobe argument change (Yauheni Kaliuta) [1944799] - libbpf: Introduce a BPF_SNPRINTF helper macro (Yauheni Kaliuta) [1944799] - libbpf: Initialize the bpf_seq_printf parameters array field by field (Yauheni Kaliuta) [1944799] - bpf: Add a ARG_PTR_TO_CONST_STR argument type (Yauheni Kaliuta) [1944799] - bpftool: Fix a clang compilation warning (Yauheni Kaliuta) [1944799] - selftests/bpf: Silence clang compilation warnings (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix test_cpp compilation failure with clang (Yauheni Kaliuta) [1944799] - selftests: Set CC to clang in lib.mk if LLVM is set (Yauheni Kaliuta) [1944799] - libbpf: Remove unused field. (Yauheni Kaliuta) [1944799] - tools/testing: Remove unused variable (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix the ASSERT_ERR_PTR macro (Yauheni Kaliuta) [1944799] - selftests/bpf: Add tests for target information in bpf_link info queries (Yauheni Kaliuta) [1944799] - bpf: Return target info when a tracing bpf_link is queried (Yauheni Kaliuta) [1944799] - libbpf: Clarify flags in ringbuf helpers (Yauheni Kaliuta) [1944799] - bpf: Sync bpf headers in tooling infrastucture (Yauheni Kaliuta) [1944799] - bpf: Document PROG_TEST_RUN limitations (Yauheni Kaliuta) [1944799] - bpf, inode: Remove second initialization of the bpf_preload_lock (Yauheni Kaliuta) [1944799] - libbpf: Fix KERNEL_VERSION macro (Yauheni Kaliuta) [1944799] - bpf: selftests: Specify CONFIG_DYNAMIC_FTRACE in the testing config (Yauheni Kaliuta) [1944799] - powerpc/bpf: Reallocate BPF registers to volatile registers when possible on PPC32 (Yauheni Kaliuta) [1944799] - powerpc/bpf: Change values of SEEN_ flags (Yauheni Kaliuta) [1944799] - powerpc/bpf: Move common functions into bpf_jit_comp.c (Yauheni Kaliuta) [1944799] - powerpc/bpf: Remove classical BPF support for PPC32 (Yauheni Kaliuta) [1944799] - powerpc/bpf: Move common helpers into bpf_jit.h (Yauheni Kaliuta) [1944799] - powerpc/bpf: Change register numbering for bpf_set/is_seen_register() (Yauheni Kaliuta) [1944799] - libbpf: Remove redundant semi-colon (Yauheni Kaliuta) [1944799] - bpf: Remove repeated struct btf_type declaration (Yauheni Kaliuta) [1944799] - bpf, cgroup: Delete repeated struct bpf_prog declaration (Yauheni Kaliuta) [1944799] - bpf: Remove unused parameter from ___bpf_prog_run (Yauheni Kaliuta) [1944799] - bpf, selftests: test_maps generating unrecognized data section (Yauheni Kaliuta) [1944799] - selftests/bpf: Add an option for a debug shell in vmtest.sh (Yauheni Kaliuta) [1944799] - bpf: Remove redundant assignment of variable id (Yauheni Kaliuta) [1944799] - bpf: Remove unused bpf_load_pointer (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove unused defines (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove mutex and condition variable (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove thread attribute (Yauheni Kaliuta) [1944799] - selftests: xsk: Implement bpf_link test (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove sync_mutex_tx and atomic var (Yauheni Kaliuta) [1944799] - selftests: xsk: Refactor teardown/bidi test cases and testapp_validate (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove Tx synchronization resources (Yauheni Kaliuta) [1944799] - selftests: xsk: Split worker thread (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove thread for netns switch (Yauheni Kaliuta) [1944799] - samples: bpf: Do not unload prog within xdpsock (Yauheni Kaliuta) [1944799] - libbpf: xsk: Use bpf_link (Yauheni Kaliuta) [1944799] - selftests: xsk: Simplify frame traversal in dumping thread (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove inline keyword from source file (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove unused function (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove struct ifaceconfigobj (Yauheni Kaliuta) [1944799] - selftests: xsk: Don't call worker_pkt_dump() for stats test (Yauheni Kaliuta) [1944799] - libbpf: Fix memory leak when emitting final btf_ext (Yauheni Kaliuta) [1944799] - bpf: selftests: Update clang requirement in README.rst for testing kfunc call (Yauheni Kaliuta) [1944799] - bpf: Update bpf_design_QA.rst to clarify the kfunc call is not ABI (Yauheni Kaliuta) [1944799] - bpf: selftests: Add kfunc_call test (Yauheni Kaliuta) [1944799] - bpf: selftests: Bpf_cubic and bpf_dctcp calling kernel functions (Yauheni Kaliuta) [1944799] - bpf: selftests: Rename bictcp to bpf_cubic (Yauheni Kaliuta) [1944799] - libbpf: Support extern kernel function (Yauheni Kaliuta) [1944799] - libbpf: Record extern sym relocation first (Yauheni Kaliuta) [1944799] - libbpf: Rename RELO_EXTERN to RELO_EXTERN_VAR (Yauheni Kaliuta) [1944799] - libbpf: Refactor codes for finding btf id of a kernel symbol (Yauheni Kaliuta) [1944799] - libbpf: Refactor bpf_object__resolve_ksyms_btf_id (Yauheni Kaliuta) [1944799] - bpf: Support bpf program calling kernel function (Yauheni Kaliuta) [1944799] - bpf: Refactor btf_check_func_arg_match (Yauheni Kaliuta) [1944799] - bpf: Simplify freeing logic in linfo and jited_linfo (Yauheni Kaliuta) [1944799] - libbpf: Preserve empty DATASEC BTFs during static linking (Yauheni Kaliuta) [1944799] - bpf: struct sock is declared twice in bpf_sk_storage header (Yauheni Kaliuta) [1944799] - bpf: Remove unused headers (Yauheni Kaliuta) [1944799] - libbpf: Add bpf object kern_version attribute setter (Yauheni Kaliuta) [1944799] - bpf: selftests: Add tests for batched ops in LPM trie maps (Yauheni Kaliuta) [1944799] - bpf: Add support for batched ops in LPM trie maps (Yauheni Kaliuta) [1944799] - selftests/bpf: Better error messages for ima_setup.sh failures (Yauheni Kaliuta) [1944799] - bpf: Fix NULL pointer dereference in bpf_get_local_storage() helper (Yauheni Kaliuta) [1944799] - libbpf: Constify few bpf_program getters (Yauheni Kaliuta) [1944799] - bpf: Fix typo 'accesible' into 'accessible' (Yauheni Kaliuta) [1944799] - tracing: Fix various typos in comments (Yauheni Kaliuta) [1944799] - libbpf: Skip BTF fixup if object file has no BTF (Yauheni Kaliuta) [1944799] - bpf: Remove insn_buf[] declaration in inner block (Yauheni Kaliuta) [1944799] - selftests/bpf: Add multi-file statically linked BPF object file test (Yauheni Kaliuta) [1944799] - selftests/bpf: Pass all BPF .o's through BPF static linker (Yauheni Kaliuta) [1944799] - selftests/bpf: Re-generate vmlinux.h and BPF skeletons if bpftool changed (Yauheni Kaliuta) [1944799] - bpftool: Add `gen object` command to perform BPF static linking (Yauheni Kaliuta) [1944799] - bpftool: Add ability to specify custom skeleton object name (Yauheni Kaliuta) [1944799] - libbpf: Add BPF static linker BTF and BTF.ext support (Yauheni Kaliuta) [1944799] - libbpf: Add BPF static linker APIs (Yauheni Kaliuta) [1944799] - libbpf: Add generic BTF type shallow copy API (Yauheni Kaliuta) [1944799] - libbpf: Extract internal set-of-strings datastructure APIs (Yauheni Kaliuta) [1944799] - libbpf: Rename internal memory-management helpers (Yauheni Kaliuta) [1944799] - libbpf: Generalize BTF and BTF.ext type ID and strings iteration (Yauheni Kaliuta) [1944799] - libbpf: Expose btf_type_by_id() internally (Yauheni Kaliuta) [1944799] - x86: Fix various typos in comments (Yauheni Kaliuta) [1944799] - selftests/bpf: drop custom NULL #define in skb_pkt_end selftest (Yauheni Kaliuta) [1944799] - libbpf: provide NULL and KERNEL_VERSION macros in bpf_helpers.h (Yauheni Kaliuta) [1944799] - bpf: net: Emit anonymous enum with BPF_TCP_CLOSE value explicitly (Yauheni Kaliuta) [1944799] - selftests/bpf: Use nanosleep() syscall instead of sleep() in get_cgroup_id (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - selftests/bpf: Build everything in debug mode (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix maybe-uninitialized warning in xdpxceiver test (Yauheni Kaliuta) [1944799] - bpftool: Fix maybe-uninitialized warnings (Yauheni Kaliuta) [1944799] - libbpf: Add explicit padding to bpf_xdp_set_link_opts (Yauheni Kaliuta) [1944799] - kernel/bpf/: Fix misspellings using codespell tool (Yauheni Kaliuta) [1944799] - s390/bpf: Implement new atomic ops (Yauheni Kaliuta) [1944799] - bpf: selftests: Remove unused 'nospace_err' in tests for batched ops in array maps (Yauheni Kaliuta) [1944799] - samples: bpf: Fix a spelling typo in do_hbm_test.sh (Yauheni Kaliuta) [1944799] - libbpf: Avoid inline hint definition from 'linux/stddef.h' (Yauheni Kaliuta) [1944799] - libbpf: xsk: Move barriers from libbpf_util.h to xsk.h (Yauheni Kaliuta) [1944799] - libbpf: xsk: Remove linux/compiler.h header (Yauheni Kaliuta) [1944799] - bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - bpf, xdp: Restructure redirect actions (Yauheni Kaliuta) [1944799] - bpf, xdp: Make bpf_redirect_map() a map operation (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix compiler warning in BPF_KPROBE definition in loop6.c (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix typo in Makefile (Yauheni Kaliuta) [1944799] - libbpf: Fix arm64 build (Yauheni Kaliuta) [1944799] - libbpf, xsk: Add libbpf_smp_store_release libbpf_smp_load_acquire (Yauheni Kaliuta) [1944799] - selftests, bpf: Extend test_tc_tunnel test with vxlan (Yauheni Kaliuta) [1944799] - bpf: Add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_ENCAP_L2_ETH (Yauheni Kaliuta) [1944799] - selftests/bpf: Simplify the calculation of variables (Yauheni Kaliuta) [1944799] - bpf: Simplify the calculation of variables (Yauheni Kaliuta) [1944799] - selftests: bpf: Don't run sk_lookup in verifier tests (Yauheni Kaliuta) [1944799] - selftests: bpf: Check that PROG_TEST_RUN repeats as requested (Yauheni Kaliuta) [1944799] - selftests: bpf: Convert sk_lookup ctx access tests to PROG_TEST_RUN (Yauheni Kaliuta) [1944799] - bpf: Add PROG_TEST_RUN support for sk_lookup programs (Yauheni Kaliuta) [1944799] - bpf: Consolidate shared test timing code (Yauheni Kaliuta) [1944799] - docs/bpf: Add bpf() syscall command reference (Yauheni Kaliuta) [1944799] - selftests/bpf: Test syscall command parsing (Yauheni Kaliuta) [1944799] - selftests/bpf: Templatize man page generation (Yauheni Kaliuta) [1944799] - tools/bpf: Remove bpf-helpers from bpftool docs (Yauheni Kaliuta) [1944799] - scripts/bpf: Add syscall commands printer (Yauheni Kaliuta) [1944799] - tools: Sync uapi bpf.h header with latest changes (Yauheni Kaliuta) [1944799] - scripts/bpf: Abstract eBPF API target parameter (Yauheni Kaliuta) [1944799] - bpf: Document BPF_MAP_*_BATCH syscall commands (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_QUERY syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_TEST_RUN syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_ATTACH syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_PIN syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_F_LOCK in syscall commands (Yauheni Kaliuta) [1944799] - bpf: Add minimal bpf() command documentation (Yauheni Kaliuta) [1944799] - bpf: Import syscall arg documentation (Yauheni Kaliuta) [1944799] - libbpf: Fix whitespace in btf_add_composite() comment (Yauheni Kaliuta) [1944799] - selftests/bpf: Add a verifier scale test with unknown bounded loop (Yauheni Kaliuta) [1944799] - tools, bpf_asm: Exit non-zero on errors (Yauheni Kaliuta) [1944799] - tools, bpf_asm: Hard error on out of range jumps (Yauheni Kaliuta) [1944799] - selftests/bpf: Add arraymap test for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - selftests/bpf: Add hashmap test for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpftool: Print subprog address properly (Yauheni Kaliuta) [1944799] - libbpf: Support subprog address relocation (Yauheni Kaliuta) [1944799] - libbpf: Move function is_ldimm64() earlier in libbpf.c (Yauheni Kaliuta) [1944799] - bpf: Add arraymap support for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Add hashtab support for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Add bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Change return value of verifier function add_subprog() (Yauheni Kaliuta) [1944799] - bpf: Refactor check_func_call() to allow callback function (Yauheni Kaliuta) [1944799] - bpf: Factor out verbose_invalid_scalar() (Yauheni Kaliuta) [1944799] - bpf: Factor out visit_func_call_insn() in check_cfg() (Yauheni Kaliuta) [1944799] - selftests/bpf: Copy extras in out-of-srctree builds (Yauheni Kaliuta) [1944799] - selftests/bpf: Propagate error code of the command to vmtest.sh (Yauheni Kaliuta) [1944799] - selftests/bpf: Introduce xsk statistics tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Restructure xsk selftests (Yauheni Kaliuta) [1944799] - selftests/bpf: Expose and rename debug argument (Yauheni Kaliuta) [1944799] - selftest/bpf: Make xsk tests less verbose (Yauheni Kaliuta) [1944799] - bpf: Rename fixup_bpf_calls and add some comments (Yauheni Kaliuta) [1944799] - bpf: Use MAX_BPF_FUNC_REG_ARGS macro (Yauheni Kaliuta) [1944799] - bpf: runqslower: Prefer using local vmlimux to generate vmlinux.h (Yauheni Kaliuta) [1944799] - bpf: Add kernel/modules BTF presence checks to bpftool feature command (Yauheni Kaliuta) [1944799]- netfilter: log: work around missing softdep backend module (Florian Westphal) [2017794] - netfilter: nft_ct: protect nft_ct_pcpu_template_refcnt with mutex (Florian Westphal) [2017794] - netfilter: Fix fall-through warnings for Clang (Florian Westphal) [2017794] - netfilter: nft_nat: allow to specify layer 4 protocol NAT only (Florian Westphal) [2017794] - netfilter: conntrack: adjust stop timestamp to real expiry value (Florian Westphal) [2017794] - netfilter: ipvs: make global sysctl readonly in non-init netns (Florian Westphal) [2017794] - ipvs: fix possible memory leak in ip_vs_control_net_init (Florian Westphal) [2017794] - ipvs: fix the connection sync failed in some cases (Florian Westphal) [2017794] - net: Fix offloading indirect devices dependency on qdisc order creation (Davide Caratti) [1997381] - net/core: Remove unused field from struct flow_indr_dev (Davide Caratti) [1997381] - Drivers: hv: balloon: Use VMBUS_RING_SIZE() wrapper for dm_ring_size (Vitaly Kuznetsov) [2019101] - hv_balloon: Remove redundant assignment to region_start (Vitaly Kuznetsov) [2019101] - hv_balloon: disable warning when floor reached (Vitaly Kuznetsov) [2019101] - net/tls: Fix flipped sign in async_wait.err assignment (Sabrina Dubroca) [2019176] - net/tls: Fix flipped sign in tls_err_abort() calls (Sabrina Dubroca) [2019176] - tls: prevent oversized sendfile() hangs by ignoring MSG_MORE (Sabrina Dubroca) [2019176] - tls splice: remove inappropriate flags checking for MSG_PEEK (Sabrina Dubroca) [2019176] - net/tls: Fix use-after-free after the TLS device goes down and up (Sabrina Dubroca) [2019176] - net/tls: Replace TLS_RX_SYNC_RUNNING with RCU (Sabrina Dubroca) [2019176] - tls splice: check SPLICE_F_NONBLOCK instead of MSG_DONTWAIT (Sabrina Dubroca) [2019176] - net/tls: Remove redundant initialization of record (Sabrina Dubroca) [2019176] - ibmvnic: don't stop queue in xmit (Diego Domingos) [2011995] - selftests: net: switch to socat in the GSO GRE test (Hangbin Liu) [2018059] - selftests: net: properly support IPv6 in GSO GRE test (Hangbin Liu) [2018059] - kselftests/net: add missed setup_loopback.sh/setup_veth.sh to Makefile (Hangbin Liu) [2018059] - selftests: add simple GSO GRE test (Hangbin Liu) [2018059] - selftests/net: allow GRO coalesce test on veth (Hangbin Liu) [2018059] - selftests/net: GRO coalesce test (Hangbin Liu) [2018059] - perf/x86: Reset destroy callback on event init failure (Michael Petlan) [2003982] - x86/msr: Define new bits in TSX_FORCE_ABORT MSR (Michael Petlan) [2003982] - perf script: Fix --list-dlfilters documentation (Michael Petlan) [2003982] - perf/x86/intel/uncore: Fix IIO cleanup mapping procedure for SNR/ICX (Michael Petlan) [2003982] - Revert "perf map: Fix dso->nsinfo refcounting" (Michael Petlan) [2003982] - perf pmu: Fix alias matching (Michael Petlan) [2003982] - perf cs-etm: Split --dump-raw-trace by AUX records (Michael Petlan) [2003982] - perf sched: Fix record failure when CONFIG_SCHEDSTATS is not set (Michael Petlan) [2003982] - perf probe: Fix add event failure when running 32-bit perf in a 64-bit kernel (Michael Petlan) [2003982] - perf data: Close all files in close_dir() (Michael Petlan) [2003982] - perf probe-file: Delete namelist in del_events() on the error path (Michael Petlan) [2003982] - perf test bpf: Free obj_buf (Michael Petlan) [2003982] - perf trace: Free strings in trace__parse_events_option() (Michael Petlan) [2003982] - perf trace: Free syscall tp fields in evsel->priv (Michael Petlan) [2003982] - perf trace: Free syscall->arg_fmt (Michael Petlan) [2003982] - perf trace: Free malloc'd trace fields on exit (Michael Petlan) [2003982] - perf lzma: Close lzma stream on exit (Michael Petlan) [2003982] - perf script: Fix memory 'threads' and 'cpus' leaks on exit (Michael Petlan) [2003982] - perf script: Release zstd data (Michael Petlan) [2003982] - perf session: Cleanup trace_event (Michael Petlan) [2003982] - perf inject: Close inject.output on exit (Michael Petlan) [2003982] - perf report: Free generated help strings for sort option (Michael Petlan) [2003982] - perf env: Fix memory leak of cpu_pmu_caps (Michael Petlan) [2003982] - perf test maps__merge_in: Fix memory leak of maps (Michael Petlan) [2003982] - perf dso: Fix memory leak in dso__new_map() (Michael Petlan) [2003982] - perf test event_update: Fix memory leak of unit (Michael Petlan) [2003982] - perf test event_update: Fix memory leak of evlist (Michael Petlan) [2003982] - perf test session_topology: Delete session->evlist (Michael Petlan) [2003982] - perf env: Fix sibling_dies memory leak (Michael Petlan) [2003982] - perf probe: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf map: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf inject: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf cs-etm: Split Coresight decode by aux records (Michael Petlan) [2003982] - perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE) (Michael Petlan) [2003982] - libperf: Fix build error with LIBPFM4=1 (Michael Petlan) [2003982] - perf stat: Merge uncore events by default for hybrid platform (Michael Petlan) [2003982] - perf tests: Fix 'Convert perf time to TSC' on core-only system (Michael Petlan) [2003982] - perf tests: Fix 'Roundtrip evsel->name' on core-only system (Michael Petlan) [2003982] - perf tests: Fix 'Parse event definition strings' on core-only system (Michael Petlan) [2003982] - perf pmu: Skip invalid hybrid pmu (Michael Petlan) [2003982] - perf test: Add free() calls for scandir() returned dirent entries (Michael Petlan) [2003982] - libperf: Add tests for perf_evlist__set_leader() (Michael Petlan) [2003982] - libperf: Remove BUG_ON() from library code in get_group_fd() (Michael Petlan) [2003982] - libperf: Add group support to perf_evsel__open() (Michael Petlan) [2003982] - perf tools: Fix pattern matching for same substring in different PMU type (Michael Petlan) [2003982] - perf record: Add a dummy event on hybrid systems to collect metadata records (Michael Petlan) [2003982] - perf stat: Add Topdown metrics L2 events as default events (Michael Petlan) [2003982] - libperf: Adopt evlist__set_leader() from tools/perf as perf_evlist__set_leader() (Michael Petlan) [2003982] - libperf: Move 'nr_groups' from tools/perf to evlist::nr_groups (Michael Petlan) [2003982] - libperf: Move 'leader' from tools/perf to perf_evsel::leader (Michael Petlan) [2003982] - libperf: Move 'idx' from tools/perf to perf_evsel::idx (Michael Petlan) [2003982] - libperf: Change tests to single static and shared binaries (Michael Petlan) [2003982] - perf intel-pt: Add a config for max loops without consuming a packet (Michael Petlan) [2003982] - perf stat: Disable the NMI watchdog message on hybrid (Michael Petlan) [2003982] - perf trace: Fix the perf trace link location (Michael Petlan) [2003982] - perf top: Fix overflow in elf_sec__is_text() (Michael Petlan) [2003982] - perf annotate: Fix 's' on source line when disasm is empty (Michael Petlan) [2003982] - perf probe: Do not show @plt function by default (Michael Petlan) [2003982] - perf symbol-elf: Decode dynsym even if symtab exists (Michael Petlan) [2003982] - perf probe: Fix debuginfo__new() to enable build-id based debuginfo (Michael Petlan) [2003982] - perf stat: Enable BPF counter with --for-each-cgroup (Michael Petlan) [2003982] - perf report: Fix --task and --stat with pipe input (Michael Petlan) [2003982] - perf session: Add missing evlist__delete when deleting a session (Michael Petlan) [2003982] - perf annotate: Allow 's' on source code lines (Michael Petlan) [2003982] - perf dlfilter: Add object_code() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add attr() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add srcline() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add insn() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add resolve_address() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf build: Install perf_dlfilter.h (Michael Petlan) [2003982] - perf script: Add option to pass arguments to dlfilters (Michael Petlan) [2003982] - perf script: Add option to list dlfilters (Michael Petlan) [2003982] - perf script: Add dlfilter__filter_event_early() (Michael Petlan) [2003982] - perf script: Add API for filtering via dynamically loaded shared object (Michael Petlan) [2003982] - perf llvm: Return -ENOMEM when asprintf() fails (Michael Petlan) [2003982] - perf cs-etm: Delay decode of non-timeless data until cs_etm__flush_events() (Michael Petlan) [2003982] - perf arm-spe: Don't wait for PERF_RECORD_EXIT event (Michael Petlan) [2003982] - perf arm-spe: Bail out if the trace is later than perf event (Michael Petlan) [2003982] - perf arm-spe: Assign kernel time to synthesized event (Michael Petlan) [2003982] - perf arm-spe: Convert event kernel time to counter value (Michael Petlan) [2003982] - perf arm-spe: Save clock parameters from TIME_CONV event (Michael Petlan) [2003982] - perf cs-etm: Remove callback cs_etm_find_snapshot() (Michael Petlan) [2003982] - perf bpf_counter: Move common functions to bpf_counter.h (Michael Petlan) [2003982] - perf tools: Add cgroup_is_v2() helper (Michael Petlan) [2003982] - perf tools: Add read_cgroup_id() function (Michael Petlan) [2003982] - tools lib: Adopt bitmap_intersects() operation from the kernel sources (Michael Petlan) [2003982] - perf top: Add cgroup support for perf top (-G) (Michael Petlan) [2003982] - perf script: Share addr_al between functions (Michael Petlan) [2003982] - perf script: Move filtering before scripting (Michael Petlan) [2003982] - perf script: Move filter_cpu() earlier (Michael Petlan) [2003982] - perf test: Pass the verbose option to shell tests (Michael Petlan) [2003982] - perf probe: Add --bootconfig to output definition in bootconfig format (Michael Petlan) [2003982] - perf probe: Cleanup synthesize_probe_trace_command() (Michael Petlan) [2003982] - perf probe: Support probes on init functions for offline kernel (Michael Petlan) [2003982] - perf test: Make stat bpf counters test more robust (Michael Petlan) [2003982] - perf test: Add verbose skip output for bpf counters (Michael Petlan) [2003982] - perf annotate: Add itrace options support (Michael Petlan) [2003982] - perf mem-events: Remove duplicate #undef (Michael Petlan) [2003982] - perf evsel: Adjust hybrid event and global event mixed group (Michael Petlan) [2003982] - perf probe: Provide clearer message permission error for tracefs access (Michael Petlan) [2003982] - perf auxtrace: Change to use SMP memory barriers (Michael Petlan) [2003982] - perf srccode: Use list_move() instead of equivalent list_del() + list_add() sequence (Michael Petlan) [2003982] - perf probe: Report possible permission error for map__load() failure (Michael Petlan) [2003982] - perf probe: Add permission and sysctl notice to man page (Michael Petlan) [2003982] - perf c2c: Support record for hybrid platform (Michael Petlan) [2003982] - perf mem: Disable 'mem-loads-aux' group before reporting (Michael Petlan) [2003982] - perf mem: Fix wrong verbose output for recording events (Michael Petlan) [2003982] - perf mem: Support record for hybrid platform (Michael Petlan) [2003982] - perf tools: Check if mem_events is supported for hybrid platform (Michael Petlan) [2003982] - perf tools: Support pmu prefix for mem-store event (Michael Petlan) [2003982] - perf tools: Support pmu prefix for mem-load event (Michael Petlan) [2003982] - perf tools: Check mem-loads auxiliary event (Michael Petlan) [2003982] - perf scripting python: intel-pt-events.py: Add --insn-trace and --src-trace (Michael Petlan) [2003982] - perf scripting python: exported-sql-viewer.py: Factor out libxed.py (Michael Petlan) [2003982] - perf scripting python: Update documentation for srcline etc (Michael Petlan) [2003982] - perf scripting python: Add perf_sample_srcline() and perf_sample_srccode() (Michael Petlan) [2003982] - perf scripting python: Add perf_set_itrace_options() (Michael Petlan) [2003982] - perf auxtrace: Factor out itrace_do_parse_synth_opts() (Michael Petlan) [2003982] - perf scripting python: Add perf_sample_insn() (Michael Petlan) [2003982] - perf script: Factor out script_fetch_insn() (Michael Petlan) [2003982] - perf scripting python: Assign perf_script_context (Michael Petlan) [2003982] - perf scripting: Add perf_session to scripting_context (Michael Petlan) [2003982] - perf scripting: Add scripting_context__update() (Michael Petlan) [2003982] - perf scripting python: Simplify perf-trace-context module functions (Michael Petlan) [2003982] - perf scripting python: Remove unnecessary 'static' (Michael Petlan) [2003982] - perf test: Test 2 libpfm4 error cases (Michael Petlan) [2003982] - perf test: Iterate over shell tests in alphabetical order (Michael Petlan) [2003982] - perf probe: Provide more detail with relocation warning (Michael Petlan) [2003982] - perf parse-events: Add bison --file-prefix-map option (Michael Petlan) [2003982] - perf inject: Do not inject BUILD_ID record if MMAP2 has it (Michael Petlan) [2003982] - perf inject: Call dso__put() even if dso->hit is set (Michael Petlan) [2003982] - perf scripts python: intel-pt-events.py: Add branches to script (Michael Petlan) [2003982] - perf scripting python: Add auxtrace error (Michael Petlan) [2003982] - perf scripting python: Add context switch (Michael Petlan) [2003982] - perf scripting python: Add cpumode (Michael Petlan) [2003982] - perf scripting python: Add IPC (Michael Petlan) [2003982] - perf scripting python: Add sample flags (Michael Petlan) [2003982] - perf script: Factor out perf_sample__sprintf_flags() (Michael Petlan) [2003982] - perf scripting python: Add 'addr_location' for 'addr' (Michael Petlan) [2003982] - perf scripting python: Factor out set_sym_in_dict() (Michael Petlan) [2003982] - perf scripting python: Fix tuple_set_u64() (Michael Petlan) [2003982] - perf auxtrace: Make perf_event__process_auxtrace*() callable (Michael Petlan) [2003982] - perf script: Find script file relative to exec path (Michael Petlan) [2003982] - perf arm-spe: Remove redundant checking for "full_auxtrace" (Michael Petlan) [2003982] - perf arm-spe: Enable timestamp for per-cpu mode (Michael Petlan) [2003982] - perf arm-spe: Correct sample flags for dummy event (Michael Petlan) [2003982] - perf arm-spe: Correct sample flags for SPE event (Michael Petlan) [2003982] - perf vendor events intel: Update event list for Icelake Client (Michael Petlan) [2003982] - perf vendor events intel: Add uncore event list for Icelake Server (Michael Petlan) [2003982] - perf vendor events intel: Add core event list for Icelake Server (Michael Petlan) [2003982] - perf tests: Drop __maybe_unused on x86 test declarations (Michael Petlan) [2003982] - perf tests: Consolidate test__arch_unwind_sample declaration (Michael Petlan) [2003982] - perf build: Improve error message for old/missing clang (Michael Petlan) [2003982] - perf tools: Test build with libbpf/LIBBPF_DYNAMIC=1 (Michael Petlan) [2003982] - perf tools: Test build with libopencsd/CORESIGHT=1 (Michael Petlan) [2003982] - perf cs-etm: Prevent and warn on underflows during timestamp calculation. (Michael Petlan) [2003982] - perf cs-etm: Start reading 'Z' --itrace option (Michael Petlan) [2003982] - perf cs-etm: Move synth_opts initialisation (Michael Petlan) [2003982] - perf header: Support HYBRID_CPU_PMU_CAPS feature (Michael Petlan) [2003982] - perf header: Support HYBRID_TOPOLOGY feature (Michael Petlan) [2003982] - perf cs-etm: Set time on synthesised samples to preserve ordering (Michael Petlan) [2003982] - perf cs-etm: Refactor timestamp variable names (Michael Petlan) [2003982] - perf x86 kvm-stat: Support to analyze kvm MSR (Michael Petlan) [2003982] - perf stat: Use aggregated counts directly (Michael Petlan) [2003982] - perf record: Set timestamp boundary for AUX area events (Michael Petlan) [2003982] - perf intel-pt: Parse VM Time Correlation options and set up decoding (Michael Petlan) [2003982] - perf intel-pt: Add VM Time Correlation to decoder (Michael Petlan) [2003982] - perf intel-pt: Better 7-byte timestamp wraparound logic (Michael Petlan) [2003982] - perf intel-pt: Pass the first timestamp to the decoder (Michael Petlan) [2003982] - perf intel-pt: Add a tree for VMCS information (Michael Petlan) [2003982] - perf intel-pt: Let overlap detection handle VM timestamps (Michael Petlan) [2003982] - perf auxtrace: Allow buffers to be mapped read / write (Michael Petlan) [2003982] - perf inject: Add --vm-time-correlation option (Michael Petlan) [2003982] - perf inject: Add facility to do in place update (Michael Petlan) [2003982] - perf intel-pt: Support Z itrace option for timeless decoding (Michael Petlan) [2003982] - perf intel-pt: Move synth_opts initialization earlier (Michael Petlan) [2003982] - perf auxtrace: Add Z itrace option for timeless decoding (Michael Petlan) [2003982] - perf/x86/amd/power: Assign pmu.module (Michael Petlan) [2003982] - perf/x86/amd/ibs: Extend PERF_PMU_CAP_NO_EXCLUDE to IBS Op (Michael Petlan) [2003982] - perf/x86/amd/ibs: Work around erratum #1197 (Michael Petlan) [2003982] - perf/x86/intel/uncore: Fix integer overflow on 23 bit left shift of a u32 (Michael Petlan) [2003982] - perf/x86/intel/pt: Fix mask of num_address_ranges (Michael Petlan) [2003982] - perf/x86: Fix out of bound MSR access (Michael Petlan) [2003982] - perf/x86/cstate: Add ICELAKE_X and ICELAKE_D support (Michael Petlan) [2003982] - perf: MAP_EXECUTABLE does not indicate VM_MAYEXEC (Michael Petlan) [2003982] - arm64: perf: Simplify EVENT ATTR macro in perf_event.c (Michael Petlan) [2003982] - arm64: perf: Simplify the ARMv8 PMUv3 event attributes (Michael Petlan) [2003982] - arm64: perf: Remove unused macro (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in qcom_l2_pmu.c (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in qcom_l3_pmu.c (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in xgene_pmu.c (Michael Petlan) [2003982] - drivers/perf: convert sysfs sprintf family to sysfs_emit (Michael Petlan) [2003982] - drivers/perf: convert sysfs scnprintf family to sysfs_emit_at() and sysfs_emit() (Michael Petlan) [2003982] - perf: arm-ccn: Use scnprintf() for robustness (Michael Petlan) [2003982] - drivers/perf: convert sysfs snprintf family to sysfs_emit (Michael Petlan) [2003982] - perf: Add EVENT_ATTR_ID to simplify event attributes (Michael Petlan) [2003982] - perf/x86/intel: Fix instructions:ppp support in Sapphire Rapids (Michael Petlan) [2003982] - perf/x86/intel: Add more events requires FRONTEND MSR on Sapphire Rapids (Michael Petlan) [2003982] - perf/x86: Reset the dirty counter to prevent the leak for an RDPMC task (Michael Petlan) [2003982] - uprobes: Update uprobe_write_opcode() kernel-doc comment (Michael Petlan) [2003982] - perf/hw_breakpoint: Fix DocBook warnings in perf hw_breakpoint (Michael Petlan) [2003982] - perf/core: Fix DocBook warnings (Michael Petlan) [2003982] - perf/core: Make local function perf_pmu_snapshot_aux() static (Michael Petlan) [2003982] - perf/x86/intel/uncore: Enable I/O stacks to IIO PMON mapping on ICX (Michael Petlan) [2003982] - perf/x86/intel/uncore: Enable I/O stacks to IIO PMON mapping on SNR (Michael Petlan) [2003982] - perf/x86/intel/uncore: Generalize I/O stacks to PMON mapping procedure (Michael Petlan) [2003982] - perf/x86/intel/uncore: Drop unnecessary NULL checks after container_of() (Michael Petlan) [2003982] - x86/events/intel: Do not deploy TSX force abort workaround when TSX is deprecated (Michael Petlan) [2003982] - netpoll: don't require irqs disabled in rt kernels (Wander Lairson Costa) [1905440] - net/netif_receive_skb_core: Use migrate_disable() (Luis Claudio R. Goncalves) [2024168] - RDMA/qedr: Fix NULL deref for query_qp on the GSI QP (Kamal Heib) [2006260 1984280] - RDMA/core: Always release restrack object (Kamal Heib) [2006260] - RDMA/core: Fix incorrect print format specifier (Kamal Heib) [2006260] - RDMA: Remove rdma_set_device_sysfs_group() (Kamal Heib) [2006260] - RDMA/core: Allow port_groups to be used with namespaces (Kamal Heib) [2006260] - RDMA: Change ops->init_port to ops->port_groups (Kamal Heib) [2006260] - RDMA/hfi1: Use attributes for the port sysfs (Kamal Heib) [2006260 1989164] - RDMA/cm: Use an attribute_group on the ib_port_attribute intead of kobj's (Kamal Heib) [2006260] - RDMA/core: Expose the ib port sysfs attribute machinery (Kamal Heib) [2006260] - RDMA/core: Remove the kobject_uevent() NOP (Kamal Heib) [2006260] - RDMA/core: Create the device hw_counters through the normal groups mechanism (Kamal Heib) [2006260] - RDMA/core: Simplify how the port sysfs is created (Kamal Heib) [2006260] - RDMA/core: Simplify how the gid_attrs sysfs is created (Kamal Heib) [2006260] - RDMA/core: Split gid_attrs related sysfs from add_port() (Kamal Heib) [2006260] - RDMA/core: Split port and device counter sysfs attributes (Kamal Heib) [2006260] - RDMA/core: Replace the ib_port_data hw_stats pointers with a ib_port pointer (Kamal Heib) [2006260] - RDMA: Split the alloc_hw_stats() ops to port and device variants (Kamal Heib) [2006260] - RDMA/rxe: Zero out index member of struct rxe_queue (Kamal Heib) [2006260] - RDMA/efa: Free IRQ vectors on error flow (Kamal Heib) [2006260] - RDMA/rxe: Fix memory allocation while in a spin lock (Kamal Heib) [2006260] - IB/hfi1: Fix possible null-pointer dereference in _extend_sdma_tx_descs() (Kamal Heib) [2006260 1989164] - RDMA/rxe: Restore setting tot_len in the IPv4 header (Kamal Heib) [2006260] - RDMA/rxe: Use the correct size of wqe when processing SRQ (Kamal Heib) [2006260] - RDMA/cma: Revert INIT-INIT patch (Kamal Heib) [2006260] - RDMA/rxe: Fix memory leak in error path code (Kamal Heib) [2006260] - RDMA/rxe: Missing unlock on error in get_srq_wqe() (Kamal Heib) [2006260] - RDMA/cma: Fix rdma_resolve_route() memory leak (Kamal Heib) [2006260] - RDMA/core/sa_query: Remove unused argument (Kamal Heib) [2006260] - RDMA/cma: Fix incorrect Packet Lifetime calculation (Kamal Heib) [2006260] - RDMA/cma: Protect RMW with qp_mutex (Kamal Heib) [2006260] - RDMA/cma: Remove unnecessary INIT->INIT transition (Kamal Heib) [2006260] - RDMA/rxe: Fix redundant skb_put_zero (Kamal Heib) [2006260] - RDMA/rxe: Fix extra copy in prepare_ack_packet (Kamal Heib) [2006260] - RDMA/rxe: Fix over copying in get_srq_wqe (Kamal Heib) [2006260] - RDMA/rxe: Fix extra copies in build_rdma_network_hdr (Kamal Heib) [2006260] - RDMA/rxe: Fix redundant call to ip_send_check (Kamal Heib) [2006260] - RDMA/rxe: Fix useless copy in send_atomic_ack (Kamal Heib) [2006260] - RDMA/core: Use flexible array for mad data (Kamal Heib) [2006260] - RDMA/rxe: Don't overwrite errno from ib_umem_get() (Kamal Heib) [2006260] - IB/core: Shuffle locks in ib_port_data to save memory (Kamal Heib) [2006260] - IB/core: Removed port validity check from ib_get_cached_subnet_prefix (Kamal Heib) [2006260] - RDMA: Fix kernel-doc warnings about wrong comment (Kamal Heib) [2006260] - RDMA/rxe: Disallow MR dereg and invalidate when bound (Kamal Heib) [2006260] - RDMA/rxe: Implement memory access through MWs (Kamal Heib) [2006260] - RDMA/rxe: Implement invalidate MW operations (Kamal Heib) [2006260] - RDMA/rxe: Add support for bind MW work requests (Kamal Heib) [2006260] - RDMA/rxe: Move local ops to subroutine (Kamal Heib) [2006260] - RDMA/rxe: Replace WR_REG_MASK by WR_LOCAL_OP_MASK (Kamal Heib) [2006260] - RDMA/rxe: Add ib_alloc_mw and ib_dealloc_mw verbs (Kamal Heib) [2006260] - RDMA/rxe: Enable MW object pool (Kamal Heib) [2006260] - RDMA/rxe: Return errors for add index and key (Kamal Heib) [2006260] - RDMA/rxe: Add bind MW fields to rxe_send_wr (Kamal Heib) [2006260] - RDMA/rxe: Fix qp reference counting for atomic ops (Kamal Heib) [2006260] - IB/cm: Remove dgid from the cm_id_priv av (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of ib_uverbs_device (Kamal Heib) [2006260] - RDMA/ipoib: Use refcount_t instead of atomic_t for reference counting (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_port (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_member (Kamal Heib) [2006260] - RDMA/core: Remove refcount from struct ib_mad_snoop_private (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of iwpm_admin_data (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of iwcm_id_private (Kamal Heib) [2006260] - RDMA/rxe: Protext kernel index from user space (Kamal Heib) [2006260] - RDMA/rxe: Protect user space index loads/stores (Kamal Heib) [2006260] - RDMA/rxe: Add a type flag to rxe_queue structs (Kamal Heib) [2006260] - IB/cm: Protect cm_dev, cm_ports and mad_agent with kref and lock (Kamal Heib) [2006260] - IB/cm: Improve the calling of cm_init_av_for_lap and cm_init_av_by_path (Kamal Heib) [2006260] - IB/cm: Simplify ib_cancel_mad() and ib_modify_mad() calls (Kamal Heib) [2006260] - Revert "IB/cm: Mark stale CM id's whenever the mad agent was unregistered" (Kamal Heib) [2006260] - IB/cm: Tidy remaining cm_msg free paths (Kamal Heib) [2006260] - IB/cm: Call the correct message free functions in cm_send_handler() (Kamal Heib) [2006260] - IB/cm: Split cm_alloc_msg() (Kamal Heib) [2006260] - IB/cm: Pair cm_alloc_response_msg() with a cm_free_response_msg() (Kamal Heib) [2006260] - RDMA/core: Sanitize WQ state received from the userspace (Kamal Heib) [2006260] - RDMA/srp: Use DEVICE_ATTR_*() macros (Kamal Heib) [2006260] - RDMA/core: Use the DEVICE_ATTR_RO macro (Kamal Heib) [2006260] - IB/ipoib: Use DEVICE_ATTR_*() macros (Kamal Heib) [2006260] - IB/core: Only update PKEY and GID caches on respective events (Kamal Heib) [2006260] - RDMA/srp: Fix a recently introduced memory leak (Kamal Heib) [2006260] - RDMA/srp: Add more structure size checks (Kamal Heib) [2006260] - IB/hfi1: Move a function from a header file into a .c file (Kamal Heib) [2006260 1989164] - IB/hfi1: Remove the repeated declaration (Kamal Heib) [2006260 1989164] - IB/hfi1: Delete an unneeded bool conversion (Kamal Heib) [2006260 1989164] - RDMA: Remove unnecessary struct declaration (Kamal Heib) [2006260] - RDMA/core: Remove never used ib_modify_wq function call (Kamal Heib) [2006260] - IB/srpt: Remove redundant assignment to ret (Kamal Heib) [2006260] - RDMA/ucma: Cleanup to reduce duplicate code (Kamal Heib) [2006260] - RDMA/umem: batch page unpin in __ib_umem_release() (Kamal Heib) [2006259] - RDMA/rxe: Return CQE error if invalid lkey was supplied (Kamal Heib) [2006259] - RDMA/nldev: Add copy-on-fork attribute to get sys command (Kamal Heib) [2006259] - IB/hfi1: Remove redundant variable rcd (Kamal Heib) [2006259 1989164] - RDMA/nldev: Add QP numbers to SRQ information (Kamal Heib) [2006259] - RDMA/nldev: Return SRQ information (Kamal Heib) [2006259] - RDMA/restrack: Add support to get resource tracking for SRQ (Kamal Heib) [2006259] - RDMA/nldev: Return context information (Kamal Heib) [2006259] - RDMA/cma: Skip device which doesn't support CM (Kamal Heib) [2006259 1957239] - IB/ipoib: Remove unnecessary struct declaration (Kamal Heib) [2006259] - IB/ipoib: Improve latency in ipoib/cm connection formation (Kamal Heib) [2006259] - RDMA/ipoib: Print a message if only child interface is UP (Kamal Heib) [2006259] - RDMA/uverbs: Make UVERBS_OBJECT_METHODS to consider line number (Kamal Heib) [2006259] - IB/hfi1: Rework AIP and VNIC dummy netdev usage (Kamal Heib) [2006259 1989164] - IB/cma: Introduce rdma_set_min_rnr_timer() (Kamal Heib) [2006259] - RDMA/core: Correct format of block comments (Kamal Heib) [2006259] - RDMA/core: Correct format of braces (Kamal Heib) [2006259] - RDMA/core: Remove redundant spaces (Kamal Heib) [2006259] - RDMA/core: Add necessary spaces (Kamal Heib) [2006259] - RDMA/core: Remove the redundant return statements (Kamal Heib) [2006259] - RDMA/core: Print the function name by __func__ instead of an fixed string (Kamal Heib) [2006259] - RDMA/rxe: Fix missing acks from responder (Kamal Heib) [2006259] - RDMA/core: Make the wc status prompt message clearer (Kamal Heib) [2006259] - IB/hfi1: Remove indirect call to hfi1_ipoib_send_dma() (Kamal Heib) [2006259 1989164] - IB/hfi1: Use napi_schedule_irqoff() for tx napi (Kamal Heib) [2006259 1989164] - IB/hfi1: Correct oversized ring allocation (Kamal Heib) [2006259 1989164] - IB/{ipoib,hfi1}: Add a timeout handler for rdma_netdev (Kamal Heib) [2006259 1989164] - IB/hfi1: Add AIP tx traces (Kamal Heib) [2006259 1989164] - RDMA/uverbs: Fix -Wunused-function warning (Kamal Heib) [2006259] - RDMA/iser: struct iscsi_iser_task is declared twice (Kamal Heib) [2006259] - RDMA/rxe: Split MEM into MR and MW (Kamal Heib) [2006259] - RDMA/efa: Use strscpy instead of strlcpy (Kamal Heib) [2006259] - RDMA: Fix a typo (Kamal Heib) [2006259] - IB/hfi1: Fix a typo (Kamal Heib) [2006259 1989164] - RDMA/core: Correct misspellings of two words in comments (Kamal Heib) [2006259] - RDMA/uverbs: Refactor rdma_counter_set_auto_mode and __counter_set_mode (Kamal Heib) [2006259] - RDMA: Support more than 255 rdma ports (Kamal Heib) [2006259 1957239] - RDMA/include: Mundane typo fixes throughout the file (Kamal Heib) [2006259] - RDMA/cma: Remove unused leftovers in cma code (Kamal Heib) [2006259] - RDMA: Fix kernel-doc compilation warnings (Kamal Heib) [2006259] - RDMA/hw/i40iw/i40iw_virtchnl: Fix a bunch of kernel-doc issues (Kamal Heib) [2006259] - RDMA/hw/i40iw/i40iw_utils: Fix some misspellings and missing param descriptions (Kamal Heib) [2006259] - IB/core: Split uverbs_get_const/default to consider target type (Kamal Heib) [2006259] - IB/core: Drop WARN_ON() from ib_umem_find_best_pgsz() (Kamal Heib) [2006259] - RDMA/core: Remove unused req_ncomp_notif device operation (Kamal Heib) [2006259] - RDMA/iwcm: Allow AFONLY binding for IPv6 addresses (Kamal Heib) [2006259] - IB/hfi1: switch to core handling of rx/tx byte/packet counters (Kamal Heib) [2006259 1989164] - RDMA: Convert various random sprintf sysfs _show uses to sysfs_emit (Kamal Heib) [2006259] - RDMA: Manual changes for sysfs_emit and neatening (Kamal Heib) [2006259] - RDMA: Convert sysfs device * show functions to use sysfs_emit() (Kamal Heib) [2006259] - IB/hfi1: use new function dev_fetch_sw_netstats (Kamal Heib) [2006259 1989164] - RDMA/ipoib: Convert to use DEFINE_SEQ_ATTRIBUTE macro (Kamal Heib) [2006259] - include/linux/seq_file.h: introduce DEFINE_SEQ_ATTRIBUTE() helper macro (Kamal Heib) [2006259] - ibmvnic: delay complete() (Diego Domingos) [2019210] - ibmvnic: Process crqs after enabling interrupts (Diego Domingos) [2019210] - Documentation: sysrq: update description about sysrq crash (Chris von Recklinghausen) [2019943] - sysrq: Use panic() to force a crash (Chris von Recklinghausen) [2019943] - ethtool: extend coalesce setting uAPI with CQE mode (Ivan Vecera) [2006829] - ethtool: add two coalesce attributes for CQE mode (Ivan Vecera) [2006829] - ice: Add support for VF rate limiting (Jonathan Toppins) [1973187] - net: Prevent infinite while loop in skb_tx_hash() (Paolo Abeni) [2018437] - napi: fix race inside napi_enable (Paolo Abeni) [2018437] - net/af_unix: fix a data-race in unix_dgram_poll (Paolo Abeni) [2018437] - devlink: Clear whole devlink_flash_notify struct (Paolo Abeni) [2018437] - net: linkwatch: fix failure to restore device state across suspend/resume (Paolo Abeni) [2018437] - gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check (Paolo Abeni) [2018437] - gro: ensure frag0 meets IP header alignment (Paolo Abeni) [2018437] - net: core: allow fast GRO for skbs with Ethernet header in head (Paolo Abeni) [2018437] - udp: fix skb_copy_and_csum_datagram with odd segment sizes (Paolo Abeni) [2018437] - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too (Paolo Abeni) [2018437] - selftests/net: remove min gso test in packet_snd (Paolo Abeni) [2018437] - net: be more gentle about silly gso requests coming from user (Paolo Abeni) [2018437] - virtio_net: Do not pull payload in skb->head (Paolo Abeni) [2018437] - net: check untrusted gso_size at kernel entry (Paolo Abeni) [2018437] - net: stricter validation of untrusted gso packets$ (Paolo Abeni) [2018437] - net: avoid 32 x truesize under-estimation for tiny skbs (Paolo Abeni) [2018437] - ionic: no devlink_unregister if not registered (Jonathan Toppins) [2016705] - ionic: tame the filter no space message (Jonathan Toppins) [2016705 1959512 2002943] - ionic: allow adminq requests to override default error message (Jonathan Toppins) [2016705 1959512 2002943] - ionic: handle vlan id overflow (Jonathan Toppins) [2016705 1959512 2002943] - ionic: generic filter delete (Jonathan Toppins) [2016705 1959512 2002943] - ionic: generic filter add (Jonathan Toppins) [2016705 1959512 2002943] - ionic: add generic filter search (Jonathan Toppins) [2016705 1959512 2002943] - ionic: remove mac overflow flags (Jonathan Toppins) [2016705 1959512 2002943] - ionic: move lif mac address functions (Jonathan Toppins) [2016705 1959512 2002943] - ionic: add filterlist to debugfs (Jonathan Toppins) [2016705 1959512 2002943] - ionic: don't remove netdev->dev_addr when syncing uc list (Jonathan Toppins) [2016705 2012030] - ionic: move filter sync_needed bit set (Jonathan Toppins) [2016705] - ionic: add lif param to ionic_qcq_disable (Jonathan Toppins) [2016705] - ionic: have ionic_qcq_disable decide on sending to hardware (Jonathan Toppins) [2016705] - ionic: add polling to adminq wait (Jonathan Toppins) [2016705] - ionic: widen queue_lock use around lif init and deinit (Jonathan Toppins) [2016705] - ionic: move lif mutex setup and delete (Jonathan Toppins) [2016705] - ionic: check for binary values in FW ver string (Jonathan Toppins) [2016705] - ionic: remove debug stats (Jonathan Toppins) [2016705] - ionic: fix gathering of debug stats (Jonathan Toppins) [2016705] - ionic: fix a sleeping in atomic bug (Jonathan Toppins) [2016705] - ionic: fix double use of queue-lock (Jonathan Toppins) [2016705] - ionic: recreate hwstamp queues on ifup (Jonathan Toppins) [2016705 1981590] - ionic: pull hwstamp queue_lock up a level (Jonathan Toppins) [2016705 1981590] - ionic: add queue lock around open and stop (Jonathan Toppins) [2016705 1981590] - ionic: fill mac addr earlier in add_addr (Jonathan Toppins) [2016705 1981590] - ionic: squelch unnecessary fw halted message (Jonathan Toppins) [2016705 1981590] - ionic: fire watchdog again after fw_down (Jonathan Toppins) [2016705 1981590] - ionic: handle mac filter overflow (Jonathan Toppins) [2016705 1981590] - ionic: refactor ionic_lif_addr to remove a layer (Jonathan Toppins) [2016705 1981590] - ionic: sync the filters in the work task (Jonathan Toppins) [2016705 1981590] - ionic: flatten calls to set-rx-mode (Jonathan Toppins) [2016705 1981590] - ionic: remove old work task types (Jonathan Toppins) [2016705 1981590] - ionic: add function tag to debug string (Jonathan Toppins) [2016705] - ionic: enable rxhash only with multiple queues (Jonathan Toppins) [2016705] - ionic: block some ethtool operations when fw in reset (Jonathan Toppins) [2016705] - ionic: remove unneeded comp union fields (Jonathan Toppins) [2016705] - ionic: increment num-vfs before configure (Jonathan Toppins) [2016705] - ionic: use fewer inits on the buf_info struct (Jonathan Toppins) [2016705] - ionic: init reconfig err to 0 (Jonathan Toppins) [2016705] - ionic: print firmware version on identify (Jonathan Toppins) [2016705] - ionic: monitor fw status generation (Jonathan Toppins) [2016705] - ionic: minimize resources when under kdump (Jonathan Toppins) [2016705] - ionic: cleanly release devlink instance (Jonathan Toppins) [2016705] - ionic: drop useless check of PCI driver data validity (Jonathan Toppins) [2016705] - ionic: Remove unused function pointer typedef ionic_reset_cb (Jonathan Toppins) [2016705] - ACPI: Use fwnode_init() to set up fwnode (Mark Langsdorf) [1982374] - device property: Add missed header in fwnode.h (Mark Langsdorf) [1982374] - regmap: set debugfs_name to NULL after it is freed (Mark Langsdorf) [1982374] - mfd: cpcap: Fix interrupt regression with regmap clear_ack (Mark Langsdorf) [1982374] - driver core: Fix device link device name collision (Mark Langsdorf) [1982374] - driver core: Extend device_is_dependent() (Mark Langsdorf) [1982374] - device property: add description of fwnode cases (Mark Langsdorf) [1982374] - Revert "device property: Keep secondary firmware node secondary by type" (Mark Langsdorf) [1982374] - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() (Mark Langsdorf) [1982374] - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev (Mark Langsdorf) [1982374] - driver core: platform: Add extra error check in devm_platform_get_irqs_affinity() (Mark Langsdorf) [1982374] - driver core: platform: don't oops in platform_shutdown() on unbound devices (Mark Langsdorf) [1982374] - PM: domains: create debugfs nodes when adding power domains (Mark Langsdorf) [1982374] - driver core: platform: Add devm_platform_get_irqs_affinity() (Mark Langsdorf) [1982374] - platform-msi: Track shared domain allocation (Mark Langsdorf) [1982374] - driver core: platform: Introduce platform_get_mem_or_io() (Mark Langsdorf) [1982374] - soc: fix comment for freeing soc_dev_attr (Mark Langsdorf) [1982374] - driver core: platform: use bus_type functions (Mark Langsdorf) [1982374] - driver core: platform: change logic implementing platform_driver_probe (Mark Langsdorf) [1982374] - driver core: platform: reorder functions (Mark Langsdorf) [1982374] - driver core: make driver_probe_device() static (Mark Langsdorf) [1982374] - driver core: Fix a couple of typos (Mark Langsdorf) [1982374] - driver core: Refactor fw_devlink feature (Mark Langsdorf) [1982374] - efi: Update implementation of add_links() to create fwnode links (Mark Langsdorf) [1982374] - of: property: Update implementation of add_links() to create fwnode links (Mark Langsdorf) [1982374] - driver core: Use device's fwnode to check if it is waiting for suppliers (Mark Langsdorf) [1982374] - driver core: Add fw_devlink_parse_fwtree() (Mark Langsdorf) [1982374] - driver core: Redefine the meaning of fwnode_operations.add_links() (Mark Langsdorf) [1982374] - device property: Add fwnode_is_ancestor_of() and fwnode_get_next_parent_dev() (Mark Langsdorf) [1982374] - driver core: Allow only unprobed consumers for SYNC_STATE_ONLY device links (Mark Langsdorf) [1982374] - driver core: Add fwnode link support (Mark Langsdorf) [1982374] - driver core: Add fwnode_init() (Mark Langsdorf) [1982374] - Revert "[base] driver core: fw_devlink: Add support for batching fwnode parsing" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Remove check in driver_deferred_probe_force_trigger()" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Don't do deferred probe in parallel with kernel_init thread" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Rename dev_links_info.defer_sync to defer_hook" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Avoid deferred probe due to fw_devlink_pause/resume()" (Mark Langsdorf) [1982374] - regmap: Remove duplicate `type` field from regmap `regcache_sync` trace event (Mark Langsdorf) [1982374] - PM: sleep: Add dev_wakeup_path() helper (Mark Langsdorf) [1982374] - regmap: Fix order of regmap write log (Mark Langsdorf) [1982374] - regmap: use less #ifdef for LOG_DEVICE (Mark Langsdorf) [1982374] - PM: domains: Enable dev_pm_genpd_suspend|resume() for suspend-to-idle (Mark Langsdorf) [1982374] - PM: domains: Rename pm_genpd_syscore_poweroff|poweron() (Mark Langsdorf) [1982374] - PM: sleep: Print driver flags for all devices during suspend/resume (Mark Langsdorf) [1982374] - driver core: Fix lockdep warning on wfs_lock (Mark Langsdorf) [1982374] - regmap: irq: Convert to use irq_domain_create_legacy() (Mark Langsdorf) [1982374] - irqdomain: Introduce irq_domain_create_legacy() API (Mark Langsdorf) [1982374] - irqdomain: Replace open coded of_node_to_fwnode() (Mark Langsdorf) [1982374] - irqdomain: Add forward declaration of fwnode_handle (Mark Langsdorf) [1982374] - irqdomain: Remove unused of_device_id forward declaration (Mark Langsdorf) [1982374] - regmap-irq: use fwnode instead of device node in add_irq_chip() (Mark Langsdorf) [1982374] - regmap: mmio: add config option to allow relaxed MMIO accesses (Mark Langsdorf) [1982374] - PM: sleep: remove unreachable break (Mark Langsdorf) [1982374] - PM: domains: enable domain idle state accounting (Mark Langsdorf) [1982374] - PM: domains: Add curly braces to delimit comment + statement block (Mark Langsdorf) [1982374] - PM: domains: Add support for PM domain on/off notifiers for genpd (Mark Langsdorf) [1982374] - PM / Domains: Simplify genpd_lookup_dev() (Mark Langsdorf) [1982374] - regmap: irq: Add support to clear ack registers (Mark Langsdorf) [1982374] - PM: domains: Allow to abort power off when no ->power_off() callback (Mark Langsdorf) [1982374] - PM: domains: Rename power state enums for genpd (Mark Langsdorf) [1982374] - regmap: debugfs: use semicolons rather than commas to separate statements (Mark Langsdorf) [1982374] - drivers core: node: Use a more typical macro definition style for ACCESS_ATTR (Mark Langsdorf) [1982374] - drivers core: Use sysfs_emit for shared_cpu_map_show and shared_cpu_list_show (Mark Langsdorf) [1982374] - efi: Rename arm-init to efi-init common for all arch (Mark Langsdorf) [1982374] - efi/arm: Defer probe of PCIe backed efifb on DT systems (Mark Langsdorf) [1982374] - net/smc: improved fix wait on already cleared link (Sumanth Korikkar) [1984991] - net/smc: fix 'workqueue leaked lock' in smc_conn_abort_work (Sumanth Korikkar) [1984991] - net/smc: add missing error check in smc_clc_prfx_set() (Sumanth Korikkar) [1984991] - net/smc: Correct smc link connection counter in case of smc client (Sumanth Korikkar) [1984991] - net/smc: fix wait on already cleared link (Sumanth Korikkar) [1984991] - KVM: s390: Fix handle_sske page fault handling (Thomas Huth) [2022731] - KVM: s390: Simplify SIGP Set Arch handling (Thomas Huth) [2022731] - KVM: s390: pv: avoid stalls when making pages secure (Thomas Huth) [2022731] - KVM: s390: pv: avoid stalls for kvm_s390_pv_init_vm (Thomas Huth) [2022731] - KVM: s390: pv: avoid double free of sida page (Thomas Huth) [2022731] - KVM: s390: pv: add macros for UVC CC values (Thomas Huth) [2022731] - s390/uv: fully validate the VMA before calling follow_page() (Thomas Huth) [2022731] - s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap() (Thomas Huth) [2022731] - s390/gmap: validate VMA in __gmap_zap() (Thomas Huth) [2022731] - KVM: s390: preserve deliverable_mask in __airqs_kick_single_vcpu (Thomas Huth) [2022731] - KVM: s390: clear kicked_mask before sleeping again (Thomas Huth) [2022731] - KVM: s390: Function documentation fixes (Thomas Huth) [2022731] - s390/mm: fix kernel doc comments (Thomas Huth) [2022731] - KVM: s390: index kvm->arch.idle_mask by vcpu_idx (Thomas Huth) [2022731] - KVM: s390: generate kvm hypercall functions (Thomas Huth) [2022731] - KVM: Rename lru_slot to last_used_slot (Thomas Huth) [2022731] - s390: mm: Fix secure storage access exception handling (Thomas Huth) [2022731] - virtio/s390: get rid of open-coded kvm hypercall (Thomas Huth) [2022731] - KVM: s390: get rid of register asm usage (Thomas Huth) [2022731] - powerpc/vas: Fix potential NULL pointer dereference (Steve Best) [1907522] - powerpc/pseries/vas: Declare pseries_vas_fault_thread_fn() as static (Steve Best) [1907522] - crypto/nx: Register and unregister VAS interface on PowerVM (Steve Best) [1907522] - crypto/nx: Add sysfs interface to export NX capabilities (Steve Best) [1907522] - crypto/nx: Get NX capabilities for GZIP coprocessor type (Steve Best) [1907522] - crypto/nx: Rename nx-842-pseries file name to nx-common-pseries (Steve Best) [1907522] - powerpc/pseries/vas: Setup IRQ and fault handling (Steve Best) [1907522] - powerpc/pseries/vas: Integrate API with open/close windows (Steve Best) [1907522] - powerpc/pseries/vas: Implement getting capabilities from hypervisor (Steve Best) [1907522] - powerpc/pseries/vas: Add hcall wrappers for VAS handling (Steve Best) [1907522] - powerpc/vas: Define QoS credit flag to allocate window (Steve Best) [1907522] - powerpc/pseries/vas: Define VAS/NXGZIP hcalls and structs (Steve Best) [1907522] - powerpc/vas: Define and use common vas_window struct (Steve Best) [1907522] - powerpc/powernv: no need to check return value of debugfs_create functions (Steve Best) [1907522] - powerpc/vas: Move update_csb/dump_crb to common book3s platform (Steve Best) [1907522] - powerpc/vas: Create take/drop pid and mm reference functions (Steve Best) [1907522] - powerpc/vas: Add platform specific user window operations (Steve Best) [1907522] - powerpc/powernv/vas: Rename register/unregister functions (Steve Best) [1907522] - powerpc/vas: Move VAS API to book3s common platform (Steve Best) [1907522] - powerpc/powernv/vas: Release reference to tgid during window close (Steve Best) [1907522] - powerpc/pseries: Prevent free CPU ids being reused on another node (Desnes A. Nunes do Rosario) [2004808] - powerpc/numa: Consider the max NUMA node for migratable LPAR (Desnes A. Nunes do Rosario) [2004808]- zram: replace fsync_bdev with sync_blockdev (Ming Lei) [2015755] - zram: avoid race between zram_remove and disksize_store (Ming Lei) [2015755] - zram: don't fail to remove zram during unloading module (Ming Lei) [2015755] - zram: fix race between zram_reset_device() and disksize_store() (Ming Lei) [2015755] - zram: register default groups with device_add_disk() (Ming Lei) [2015755] - hyperv/vmbus: include linux/bitops.h (Mohammed Gamal) [2008565] - hv: vmbus: Avoid -Werror=maybe-uninitialized error (Mohammed Gamal) [2008565] - Drivers: hv: vmbus: Fix kernel crash upon unbinding a device from uio_hv_generic driver (Mohammed Gamal) [2008565] - Drivers: hv: vmbus: Fix duplicate CPU assignments within a device (Mohammed Gamal) [2008565] - drivers: hv: Fix missing error code in vmbus_connect() (Mohammed Gamal) [2008565] - hv_utils: Fix passing zero to 'PTR_ERR' warning (Mohammed Gamal) [2008565] - ice: Fix VF true promiscuous mode (Jonathan Toppins) [1970643] - ice: Remove toggling of antispoof for VF trusted promiscuous mode (Jonathan Toppins) [1970643] - ice: Fix replacing VF hardware MAC to existing MAC filter (Jonathan Toppins) [1970643] - ice: Fix not stopping Tx queues for VFs (Jonathan Toppins) [1970643] - ice: Fix race conditions between virtchnl handling and VF ndo ops (Jonathan Toppins) [1970643] - ice: move ice_container_type onto ice_ring_container (Jonathan Toppins) [1970643] - ice: remove ring_active from ice_ring (Jonathan Toppins) [1970643] - ice: Print the api_patch as part of the fw.mgmt.api (Jonathan Toppins) [1970643] - ice: Avoid crash from unnecessary IDA free (Jonathan Toppins) [1970643] - ice: Fix failure to re-add LAN/RDMA Tx queues (Jonathan Toppins) [1970643] - ice: Add missing E810 device ids (Jonathan Toppins) [1970643] - ice: fix locking for Tx timestamp tracking flush (Jonathan Toppins) [1970643] - ice: Delete always true check of PF pointer (Jonathan Toppins) [1970643] - ice: Correctly deal with PFs that do not support RDMA (Jonathan Toppins) [1970643] - ice: add lock around Tx timestamp tracker flush (Jonathan Toppins) [1970643] - ice: remove dead code for allocating pin_config (Jonathan Toppins) [1970643] - ice: do not abort devlink info if board identifier can't be found (Jonathan Toppins) [1970643] - ice: Fix a memory leak in an error handling path in 'ice_pf_dcb_cfg()' (Jonathan Toppins) [1970643] - ice: remove unnecessary VSI assignment (Jonathan Toppins) [1970643] - ice: remove the VSI info from previous agg (Jonathan Toppins) [1970643] - ice: add tracepoints (Jonathan Toppins) [1970643] - ice: report hash type such as L2/L3/L4 (Jonathan Toppins) [1970643] - ice: remove redundant continue statement in a for-loop (Jonathan Toppins) [1970643] - net: ice: ptp: fix compilation warning if PTP_1588_CLOCK is disabled (Jonathan Toppins) [1970643] - ice: remove unnecessary NULL checks before ptp_read_system_* (Jonathan Toppins) [1970643] - ice: Remove the repeated declaration (Jonathan Toppins) [1970643] - ice: remove local variable (Jonathan Toppins) [1970643] - ice: reduce scope of variables (Jonathan Toppins) [1970643] - ice: mark PTYPE 2 as reserved (Jonathan Toppins) [1970643] - ice: fix incorrect payload indicator on PTYPE (Jonathan Toppins) [1970643] - ice: parameterize functions responsible for Tx ring management (Jonathan Toppins) [1970643] - ice: add ndo_bpf callback for safe mode netdev ops (Jonathan Toppins) [1970643] - ice: fix clang warning regarding deadcode.DeadStores (Jonathan Toppins) [1970643] - ice: downgrade error print to debug print (Jonathan Toppins) [1970643] - ice: Detect and report unsupported module power levels (Jonathan Toppins) [1970643] - ice: (re)initialize NVM fields when rebuilding (Jonathan Toppins) [1970643] - ice: wait for reset before reporting devlink info (Jonathan Toppins) [1970643] - ice: add error message when pldmfw_flash_image fails (Jonathan Toppins) [1970643] - ice: add extack when unable to read device caps (Jonathan Toppins) [1970643] - ice: use static inline for dummy functions (Jonathan Toppins) [1970643] - ice: Re-organizes reqstd/avail {R, T}XQ check/code for efficiency (Jonathan Toppins) [1970643] - ice: set the value of global config lock timeout longer (Jonathan Toppins) [1970643] - ice: Refactor VIRTCHNL_OP_CONFIG_VSI_QUEUES handling (Jonathan Toppins) [1970643] - ice: Refactor ice_setup_rx_ctx (Jonathan Toppins) [1970643] - ice: Save VF's MAC across reboot (Jonathan Toppins) [1970643] - ice: Manage VF's MAC address for both legacy and new cases (Jonathan Toppins) [1970643] - ice: Register auxiliary device to provide RDMA (Jonathan Toppins) [1970643] - ice: Implement iidc operations (Jonathan Toppins) [1970643] - virtchnl: Use pad byte in virtchnl_ether_addr to specify MAC type (Jonathan Toppins) [1970643] - iidc: Introduce iidc.h (Jonathan Toppins) [1970643] - ice: Initialize RDMA support (Jonathan Toppins) [1970643] - ice: Respond to a NETDEV_UNREGISTER event for LAG (Jonathan Toppins) [1970643] - Revert "Revert "ice: Add initial support framework for LAG"" (Jonathan Toppins) [1970643] - ice: reduce scope of variable (Jonathan Toppins) [1970643] - ice: remove return variable (Jonathan Toppins) [1970643] - ice: suppress false cppcheck issues (Jonathan Toppins) [1970643] - ice: Set vsi->vf_id as ICE_INVAL_VFID for non VF VSI types (Jonathan Toppins) [1970643] - ice: remove unused struct member (Jonathan Toppins) [1970643] - ice: use local for consistency (Jonathan Toppins) [1970643] - ice: print name in /proc/iomem (Jonathan Toppins) [1970643] - ice: Reimplement module reads used by ethtool (Jonathan Toppins) [1970643] - ice: refactor ITR data structures (Jonathan Toppins) [1970643] - ice: manage interrupts during poll exit (Jonathan Toppins) [1970643] - ice: replace custom AIM algorithm with kernel's DIM library (Jonathan Toppins) [1970643] - ice: refactor interrupt moderation writes (Jonathan Toppins) [1970643] - ice: Add new VSI states to track netdev alloc/registration (Jonathan Toppins) [1970643] - ice: Drop leading underscores in enum ice_pf_state (Jonathan Toppins) [1970643] - ice: use kernel definitions for IANA protocol ports and ether-types (Jonathan Toppins) [1970643] - ice: Remove unnecessary blank line (Jonathan Toppins) [1970643] - ice: Remove unnecessary checks in add/kill_vid ndo ops (Jonathan Toppins) [1970643] - ice: Remove rx_gro_dropped stat (Jonathan Toppins) [1970643] - ice: Use local variable instead of pointer derefs (Jonathan Toppins) [1970643] - ice: Remove unnecessary variable (Jonathan Toppins) [1970643] - ice: Limit forced overrides based on FW version (Jonathan Toppins) [1970643] - ice: Use default configuration mode for PHY configuration (Jonathan Toppins) [1970643] - ice: Replace some memsets and memcpys with assignment (Jonathan Toppins) [1970643] - ice: Fix error return codes in ice_set_link_ksettings (Jonathan Toppins) [1970643] - ice: Rename a couple of variables (Jonathan Toppins) [1970643] - ice: Remove unnecessary checker loop (Jonathan Toppins) [1970643] - ice: Ignore EMODE return for opcode 0x0605 (Jonathan Toppins) [1970643] - ice: Align macro names to the specification (Jonathan Toppins) [1970643] - ice: Modify recursive way of adding nodes (Jonathan Toppins) [1970643] - ice: Re-send some AQ commands, as result of EBUSY AQ error (Jonathan Toppins) [1970643] - ice: Correct comment block style (Jonathan Toppins) [1970643] - ice: cleanup style issues (Jonathan Toppins) [1970643] - ice: rename ptype bitmap (Jonathan Toppins) [1970643] - ice: correct memory allocation call (Jonathan Toppins) [1970643] - ice: Check for bail out condition early (Jonathan Toppins) [1970643] - ice: remove unnecessary duplicated AQ command flag setting (Jonathan Toppins) [1970643] - ice: change link misconfiguration message (Jonathan Toppins) [1970643] - ice: Update to use package info from ice segment (Jonathan Toppins) [1970643] - ice: Delay netdev registration (Jonathan Toppins) [1970643] - ice: Add Support for XPS (Jonathan Toppins) [1970643] - ice: Fix fall-through warnings for Clang (Jonathan Toppins) [1970643] - ice: Fix prototype warnings (Jonathan Toppins) [1970643] - ice: move headroom initialization to ice_setup_rx_ctx (Jonathan Toppins) [1970643] - ice: store the result of ice_rx_offset() onto ice_ring (Jonathan Toppins) [1970643] - sched/core: Mitigate race cpus_share_cache()/update_top_cache_domain() (Phil Auld) [2011436] - sched/fair: Prevent dead task groups from regaining cfs_rq's (Phil Auld) [2011436] - sched/fair: Removed useless update of p->recent_used_cpu (Phil Auld) [2011436] - sched: Always inline is_percpu_thread() (Phil Auld) [2011436] - sched/fair: Add ancestors of unthrottled undecayed cfs_rq (Phil Auld) [2011436] - sched: Remove unused inline function __rq_clock_broken() (Phil Auld) [2011436] - sched: Prevent balance_push() on remote runqueues (Phil Auld) [2011436] - cpumask/hotplug: Fix cpu_dying() state tracking (Phil Auld) [2011436] - sched: Use cpu_dying() to fix balance_push vs hotplug-rollback (Phil Auld) [2011436] - cpumask: Introduce DYING mask (Phil Auld) [2011436] - cpumask: Make cpu_{online,possible,present,active}() inline (Phil Auld) [2011436] - cpu/hotplug: Cache number of online CPUs (Phil Auld) [2011436] - sched: Switch wait_task_inactive to HRTIMER_MODE_REL_HARD (Phil Auld) [2011436] - psi: Fix race between psi_trigger_create/destroy (Phil Auld) [2011436] - sctp: add vtag check in sctp_sf_ootb (Xin Long) [2001767] - sctp: add vtag check in sctp_sf_do_8_5_1_E_sa (Xin Long) [2001767] - sctp: add vtag check in sctp_sf_violation (Xin Long) [2001767] - sctp: fix the processing for COOKIE_ECHO chunk (Xin Long) [2001767] - sctp: fix the processing for INIT_ACK chunk (Xin Long) [2001767] - sctp: fix the processing for INIT chunk (Xin Long) [2001767] - sctp: use init_tag from inithdr for ABORT chunk (Xin Long) [2001767]- KVM: arm64: Extract ESR_ELx.EC only (Gavin Shan) [2008070] - KVM: arm64: vgic-v3: Align emulated cpuif LPI state machine with the pseudocode (Gavin Shan) [2008070] - KVM: arm64: vgic-v3: Don't advertise ICC_CTLR_EL1.SEIS (Gavin Shan) [2008070] - KVM: arm64: Fix reporting of endianess when the access originates at EL0 (Gavin Shan) [2008070] - KVM: arm64: Trim guest debug exception handling (Gavin Shan) [2008070] - KVM: arm64: Upgrade VMID accesses to {READ,WRITE}_ONCE (Gavin Shan) [2008070] - KVM: arm64: vgic: Drop WARN from vgic_get_irq (Gavin Shan) [2008070] - KVM: arm64: Enforce reserved bits for PSCI target affinities (Gavin Shan) [2008070] - KVM: arm64: Handle PSCI resets before userspace touches vCPU state (Gavin Shan) [2008070] - KVM: arm64: Fix read-side race on updates to vcpu reset state (Gavin Shan) [2008070] - KVM: arm64: Restore PMU configuration on first run (Gavin Shan) [2008070] - KVM: arm64: Don't zero the cycle count register when PMCR_EL0.P is set (Gavin Shan) [2008070] - KVM: arm64: Prevent mixed-width VM creation (Gavin Shan) [2008070] - KVM: arm64: Fix debug register indexing (Gavin Shan) [2008070] - KVM: arm64: Reject VM creation when the default IPA size is unsupported (Gavin Shan) [2008070] - KVM: arm64: Limit the debug architecture to ARMv8.0 (Gavin Shan) [2008070] - KVM: arm64: Handle SCXTNUM_ELx traps (Gavin Shan) [2008070] - arm64: kvm: mte: Hide the MTE CPUID information from the guests (Gavin Shan) [2008070] - arm64: mte: Fix typo in macro definition (Gavin Shan) [2008070] - arm64/cpufeature: Add remaining feature bits in ID_AA64PFR1 register (Gavin Shan) [2008070] - arm64: mte: system register definitions (Gavin Shan) [2008070] - arm64: sysreg: Clean up instructions for modifying PSTATE fields (Gavin Shan) [2008070] - KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set (Gavin Shan) [2008070] - arm64: kvm: Fix IDMAP overlap with HYP VA (Gavin Shan) [2008070] - packet: rework packet_pick_tx_queue() to use common code selection (Petr Oros) [2016477] - net: dev: rename queue selection helpers. (Petr Oros) [2016477] - Revert "cpuset: Make cpuset hotplug synchronous" (Waiman Long) [2023783] - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN (Paolo Abeni) [2018546] - net: Only allow init netns to set default tcp cong to a restricted algo (Paolo Abeni) [2018546] - ipv6: tcp: drop silly ICMPv6 packet too big messages (Paolo Abeni) [2018546] - tcp: annotate data races around tp->mtu_info (Paolo Abeni) [2018546] - net: send SYNACK packet with accepted fwmark (Paolo Abeni) [2018546] - tcp: call sk_wmem_schedule before sk_mem_charge in zerocopy path (Paolo Abeni) [2018546] - net/tcp_fastopen: fix data races around tfo_active_disable_stamp (Paolo Abeni) [2018546] - net/tcp_fastopen: remove obsolete extern (Paolo Abeni) [2018546] - net, gro: Set inner transport header offset in tcp/udp GRO hook (Paolo Abeni) [2018546] - tcp_bbr: fix u32 wrap bug in round logic if bbr_init() called after 2B packets (Paolo Abeni) [2018546] - tcp: seq_file: Avoid skipping sk during tcp_seek_last_pos (Paolo Abeni) [2018546] - tcp: fix tp->undo_retrans accounting in tcp_sacktag_one() (Paolo Abeni) [2018546] - evm: mark evm_fixmode as __ro_after_init (Bruno Meneguele) [2017155] - IMA: remove -Wmissing-prototypes warning (Bruno Meneguele) [2017155] - ima: Set correct casting types (Bruno Meneguele) [2017155] - evm: Don't return an error in evm_write_xattrs() if audit is not enabled (Bruno Meneguele) [2017155] - evm: fix writing /evm overflow (Bruno Meneguele) [2017155] - ima: Fix function name error in comment. (Bruno Meneguele) [2017155] - ima: Fix the error code for restoring the PCR value (Bruno Meneguele) [2017155] - integrity: double check iint_cache was initialized (Bruno Meneguele) [2017155] - certs: Fix blacklist flag type confusion (Bruno Meneguele) [2017155] - integrity: Make function integrity_add_key() static (Bruno Meneguele) [2017155] - ima: Free IMA measurement buffer after kexec syscall (Bruno Meneguele) [2017155] - ima: Free IMA measurement buffer on error (Bruno Meneguele) [2017155] - evm: Fix memleak in init_desc (Bruno Meneguele) [2017155] - crypto: shash - remove shash_desc::flags (Bruno Meneguele) [2017155] - ima: Don't modify file descriptor mode on the fly (Bruno Meneguele) [2017155] - evm: Check size of security.evm before using it (Bruno Meneguele) [2017155] - ima: Remove semicolon at the end of ima_get_binary_runtime_size() (Bruno Meneguele) [2017155] - ima: Don't ignore errors from crypto_shash_update() (Bruno Meneguele) [2017155] - integrity: remove redundant initialization of variable ret (Bruno Meneguele) [2017155] - ima: Fail rule parsing when appraise_flag=blacklist is unsupportable (Bruno Meneguele) [2017155] - ima: Fail rule parsing when the KEXEC_CMDLINE hook is combined with an invalid cond (Bruno Meneguele) [2017155] - ima: Fail rule parsing when buffer hook functions have an invalid action (Bruno Meneguele) [2017155] - ima: Free the entire rule if it fails to parse (Bruno Meneguele) [2017155] - ima: Free the entire rule when deleting a list of rules (Bruno Meneguele) [2017155] - evm: Fix possible memory leak in evm_calc_hmac_or_hash() (Bruno Meneguele) [2017155] - ima: Fix ima digest hash table key calculation (Bruno Meneguele) [2017155] - ima: Fix return value of ima_write_policy() (Bruno Meneguele) [2017155] - evm: Fix a small race in init_desc() (Bruno Meneguele) [2017155] - crypto: drop mask=CRYPTO_ALG_ASYNC from 'shash' tfm allocations (Bruno Meneguele) [2017155] - evm: Don't deadlock if a crypto algorithm is unavailable (Bruno Meneguele) [2017155] - evm: Check also if *tfm is an error pointer in init_desc() (Bruno Meneguele) [2017155] - ima: avoid appraise error for hash calc interrupt (Bruno Meneguele) [2017155] - integrity: remove pointless subdir-$(CONFIG_...) (Bruno Meneguele) [2017155] - integrity: remove unneeded, broken attempt to add -fshort-wchar (Bruno Meneguele) [2017155] - x86/cpu: Fix migration safety with X86_BUG_NULL_SEL (Vitaly Kuznetsov) [2016961] - fs/xfs: convert comma to semicolon (Bill O'Donnell) [2009521] - xfs: remove xfs_buf_t typedef (Bill O'Donnell) [2009521] - xfs: open code updating i_mode in xfs_set_acl (Bill O'Donnell) [2009521] - xfs: remove xfs_vn_setattr_nonsize (Bill O'Donnell) [2009521] - xfs: remove unneeded return value check for *init_cursor() (Bill O'Donnell) [2009521] - xfs: introduce xfs_validate_stripe_geometry() (Bill O'Donnell) [2009521] - xfs: show the proper user quota options (Bill O'Donnell) [2009521] - xfs: remove the unused XFS_B_FSB_OFFSET macro (Bill O'Donnell) [2009521] - xfs: remove unnecessary null check in xfs_generic_create (Bill O'Donnell) [2009521] - xfs: directly return if the delta equal to zero (Bill O'Donnell) [2009521] - xfs: delete duplicated tp->t_dqinfo null check and allocation (Bill O'Donnell) [2009521] - xfs: rename xfs_fc_* back to xfs_fs_* (Bill O'Donnell) [2009521] - xfs: refactor file range validation (Bill O'Donnell) [2009521] - xfs: refactor realtime volume extent validation (Bill O'Donnell) [2009521] - xfs: refactor data device extent validation (Bill O'Donnell) [2009521] - xfs: scrub should mark a directory corrupt if any entries cannot be iget'd (Bill O'Donnell) [2009521] - xfs: detect overflows in bmbt records (Bill O'Donnell) [2009521] - xfs: trace log intent item recovery failures (Bill O'Donnell) [2009521] - xfs: validate feature support when recovering rmap/refcount intents (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered extent-free intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered extent-free intent checks out of xfs_efi_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered refcount intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered refcount intent checks out of xfs_cui_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered rmap intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered rmap intent checks out of xfs_rui_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered bmap intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered bmap intent checks out of xfs_bui_item_recover (Bill O'Donnell) [2009521] - xfs: move kernel-specific superblock validation out of libxfs (Bill O'Donnell) [2009521] - platform/x86: amd-pmc: Increase the response register timeout (David Arcari) [2005064] - ARM: 9093/1: drivers: firmwapsci: Register with kernel restart handler (Mark Salter) [1996748] - arm64/kernel: Remove needless Call Frame Information annotations (Mark Salter) [1996748] - arm64: smccc: Add support for SMCCCv1.2 extended input/output registers (Mark Salter) [1996748] - psci: Remove unneeded semicolon (Mark Salter) [1996748] - firmware: smccc: Add SMCCC TRNG function call IDs (Mark Salter) [1996748] - arm64: Add support for SMCCC TRNG entropy source (Mark Salter) [1996748] - firmware: smccc: Introduce SMCCC TRNG framework (Mark Salter) [1996748] - arm64: random: Remove no longer needed prototypes (Mark Salter) [1996748] - arm64: kaslr: Use standard early random function (Mark Salter) [1996748] - random: random.h should include archrandom.h, not the other way around (Mark Salter) [1996748] - arm64: add credited/trusted RNG support (Mark Salter) [1996748] - arm64: Use v8.5-RNG entropy for KASLR seed (Mark Salter) [1996748] - arm64: kaslr: Check command line before looking for a seed (Mark Salter) [1996748] - arm64: kaslr: Announce KASLR status on boot (Mark Salter) [1996748] - psci: Add accessor for psci_0_1_function_ids (Mark Salter) [1996748] - psci: Replace psci_function_id array with a struct (Mark Salter) [1996748] - psci: Split functions to v0.1 and v0.2+ variants (Mark Salter) [1996748] - psci: Support psci_ops.get_version for v0.1 (Mark Salter) [1996748] - arm64: psci: Avoid printing in cpu_psci_cpu_die() (Mark Salter) [1996748] - firmware: psci: Extend psci_set_osi_mode() to allow reset to PC mode (Mark Salter) [1996748] - smccc: Use separate variables for args and results (Mark Salter) [1996748] - smccc: Define vendor hyp owned service call region (Mark Salter) [1996748] - firmware: smccc: Export both smccc functions (Mark Salter) [1996748] - sched,psci: Convert to sched_set_fifo*() (Mark Salter) [1996748] - firmware: smccc: Add ARCH_SOC_ID support (Mark Salter) [1996748] - base: soc: Add serial_number attribute to soc (Mark Salter) [1996748] - drivers/firmware/psci: Assign @err directly in hotplug_tests() (Mark Salter) [1996748] - drivers/firmware/psci: Fix memory leakage in alloc_init_cpu_groups() (Mark Salter) [1996748] - firmware: smccc: Fix missing prototype warning for arm_smccc_version_init (Mark Salter) [1996748] - firmware: smccc: Add function to fetch SMCCC version (Mark Salter) [1996748] - firmware: smccc: Refactor SMCCC specific bits into separate file (Mark Salter) [1996748] - firmware: smccc: Drop smccc_version enum and use ARM_SMCCC_VERSION_1_x instead (Mark Salter) [1996748] - firmware: smccc: Add HAVE_ARM_SMCCC_DISCOVERY to identify SMCCC v1.1 and above (Mark Salter) [1996748] - firmware: psci: Replace cpu_up/down() with add/remove_cpu() (Mark Salter) [1996748] - firmware: psci: Export functions to manage the OSI mode (Mark Salter) [1996748] - arm64: psci: Reduce the waiting time for cpu_psci_cpu_kill() (Mark Salter) [1996748] - firmware/psci: use common SMCCC_CONDUIT_* (Mark Salter) [1996748] - arm64: smp: disable hotplug on trusted OS resident CPU (Mark Salter) [1996748] - PSCI: cpuidle: Refactor CPU suspend power_state parameter handling (Mark Salter) [1996748] - ARM: psci: cpuidle: Enable PSCI CPUidle driver (Mark Salter) [1996748] - drivers: firmware: psci: Decouple checker from generic ARM CPUidle (Mark Salter) [1996748] - firmware/psci: psci_checker: Park kthreads before stopping them (Mark Salter) [1996748] - firmware/psci: add support for SYSTEM_RESET2 (Mark Salter) [1996748] - drivers: firmware: psci: Announce support for OS initiated suspend mode (Mark Salter) [1996748] - drivers: firmware: psci: Simplify error path of psci_dt_init() (Mark Salter) [1996748] - drivers: firmware: psci: Split psci_dt_cpu_init_idle() (Mark Salter) [1996748] - drivers: firmware: psci: Move psci to separate directory (Mark Salter) [1996748] - arm64: remove unused asm/compiler.h header file (Mark Salter) [1996748] - ppc64: Adding read_lock definition to nvme (Gopal Tiwari) [1990475] - nvme: fix per-namespace chardev deletion (Gopal Tiwari) [1990475] - nvme: set the PRACT bit when using Write Zeroes with T10 PI (Gopal Tiwari) [1990475] - nvme: fix nvme_setup_command metadata trace event (Gopal Tiwari) [1990475] - nvme-pci: don't WARN_ON in nvme_reset_work if ctrl.state is not RESETTING (Gopal Tiwari) [1990475] - nvme: fix refcounting imbalance when all paths are down (Gopal Tiwari) [1990475] - nvme-pci: do not call nvme_dev_remove_admin from nvme_remove (Gopal Tiwari) [1990475] - nvme-pci: fix multiple races in nvme_setup_io_queues (Gopal Tiwari) [1990475] - nvme-tcp: use __dev_get_by_name instead dev_get_by_name for OPT_HOST_IFACE (Gopal Tiwari) [1990475] - nvme-tcp: can't set sk_user_data without write_lock (Gopal Tiwari) [1990475] - nvme: use blk_execute_rq() for passthrough commands (Gopal Tiwari) [1990475] - nvmet: use NVMET_MAX_NAMESPACES to set nn value (Gopal Tiwari) [1990475] - nvme-pci: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvme: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvmet: add ZBD over ZNS backend support (Gopal Tiwari) [1990475] - nvmet: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvmet: use req->cmd directly in file-ns fast path (Gopal Tiwari) [1990475] - nvmet: add Command Set Identifier support (Gopal Tiwari) [1990475] - nvmet: add nvmet_req_bio put helper for backends (Gopal Tiwari) [1990475] - nvmet: use nvme status value directly (Gopal Tiwari) [1990475] - nvmet: use u32 for nvmet_subsys max_nsid (Gopal Tiwari) [1990475] - nvmet: remove local variable (Gopal Tiwari) [1990475] - nvmet: add req cns error complete helper (Gopal Tiwari) [1990475] - nvmet: use req->cmd directly in bdev-ns fast path (Gopal Tiwari) [1990475] - nvmet: use u32 type for the local variable nsid (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in connect io q (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in nvmf_reg_write32() (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in connect admin q (Gopal Tiwari) [1990475] - nvmet: make ver stable once connection established (Gopal Tiwari) [1990475] - nvmet: make sn stable once connection was established (Gopal Tiwari) [1990475] - nvmet: change sn size and check validity (Gopal Tiwari) [1990475] - nvme-tcp: use ctrl sgl check helper (Gopal Tiwari) [1990475] - nvmet-fc: do not check for invalid target port in nvmet_fc_handle_fcp_rqst() (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in nvmf_reg_read64() (Gopal Tiwari) [1990475] - nvmet: allow mn change if subsys not discovered (Gopal Tiwari) [1990475] - nvme-fc: use ctrl sgl check helper (Gopal Tiwari) [1990475] - nvme-pci: fix var. type for increasing cq_head (Gopal Tiwari) [1990475] - nvme: add a helper to check ctrl sgl support (Gopal Tiwari) [1990475] - nvme: factor out a nvme_validate_passthru_nsid helper (Gopal Tiwari) [1990475] - nvme-tcp: fix error codes in nvme_tcp_setup_ctrl() (Gopal Tiwari) [1990475] - nvme: fix grammar in the CONFIG_NVME_MULTIPATH kconfig help text (Gopal Tiwari) [1990475] - nvme: verify MNAN value if ANA is enabled (Gopal Tiwari) [1990475] - ACPI: Check StorageD3Enable _DSD property in ACPI code (Gopal Tiwari) [1990475] - nvmet: move ka_work initialization to nvmet_alloc_ctrl (Gopal Tiwari) [1990475] - nvme: remove nvme_{get,put}_ns_from_disk (Gopal Tiwari) [1990475] - nvme: split nvme_report_zones (Gopal Tiwari) [1990475] - nvmet: remove a superfluous variable (Gopal Tiwari) [1990475] - nvme: open code nvme_put_ns_from_disk in nvme_ns_head_chr_ioctl (Gopal Tiwari) [1990475] - nvme: move the CSI sanity check into nvme_ns_report_zones (Gopal Tiwari) [1990475] - nvme-fabrics: remove extra braces (Gopal Tiwari) [1990475] - nvme: open code nvme_{get,put}_ns_from_disk in nvme_ns_head_ioctl (Gopal Tiwari) [1990475] - nvme: add a sparse annotation to nvme_ns_head_ctrl_ioctl (Gopal Tiwari) [1990475] - nvme-fabrics: remove an extra comment (Gopal Tiwari) [1990475] - nvme-fabrics: remove extra new lines in the switch (Gopal Tiwari) [1990475] - nvme: open code nvme_put_ns_from_disk in nvme_ns_head_ctrl_ioctl (Gopal Tiwari) [1990475] - nvme: extend and modify the APST configuration algorithm (Gopal Tiwari) [1990475] - nvme-tcp: allow selecting the network interface for connections (Gopal Tiwari) [1990475] - nvme-fabrics: fix the kerneldco comment for nvmf_log_connect_error() (Gopal Tiwari) [1990475] - nvme: remove redundant initialization of variable ret (Gopal Tiwari) [1990475] - nvmet: fix freeing unallocated p2pmem (Gopal Tiwari) [1990475] - nvme-loop: reset queue count to 1 in nvme_loop_destroy_io_queues() (Gopal Tiwari) [1990475] - nvme-loop: do not warn for deleted controllers during reset (Gopal Tiwari) [1990475] - nvme-loop: check for NVME_LOOP_Q_LIVE in nvme_loop_destroy_admin_queue() (Gopal Tiwari) [1990475] - nvme-loop: clear NVME_LOOP_Q_LIVE when nvme_loop_configure_admin_queue() fails (Gopal Tiwari) [1990475] - nvme-rdma: fix in-casule data send for chained sgls (Gopal Tiwari) [1990475] - nvmet: fix false keep-alive timeout when a controller is torn down (Gopal Tiwari) [1990475] - nvmet-tcp: fix inline data size comparison in nvmet_tcp_queue_response (Gopal Tiwari) [1990475] - nvme-tcp: remove incorrect Kconfig dep in BLK_DEV_NVME (Gopal Tiwari) [1990475] - nvme-fabrics: decode host pathing error for connect (Gopal Tiwari) [1990475] - nvme-fc: short-circuit reconnect retries (Gopal Tiwari) [1990475] - nvme: fix potential memory leaks in nvme_cdev_add (Gopal Tiwari) [1990475] - nvme-fc: clear q_live at beginning of association teardown (Gopal Tiwari) [1990475] - nvme-tcp: rerun io_work if req_list is not empty (Gopal Tiwari) [1990475] - nvme-tcp: fix possible use-after-completion (Gopal Tiwari) [1990475] - nvme-loop: fix memory leak in nvme_loop_create_ctrl() (Gopal Tiwari) [1990475] - nvmet: fix memory leak in nvmet_alloc_ctrl() (Gopal Tiwari) [1990475] - nvmet: seset ns->file when open fails (Gopal Tiwari) [1990475] - nvmet: demote fabrics cmd parse err msg to debug (Gopal Tiwari) [1990475] - nvmet: fix inline bio check for passthru (Gopal Tiwari) [1990475] - nvmet: fix inline bio check for bdev-ns (Gopal Tiwari) [1990475] - nvmet: use helper to remove the duplicate code (Gopal Tiwari) [1990475] - nvmet: demote discovery cmd parse err msg to debug (Gopal Tiwari) [1990475] - nvmet: remove unsupported command noise (Gopal Tiwari) [1990475] - nvme-pci: fix controller reset hang when racing with nvme_timeout (Gopal Tiwari) [1990475] - nvme: move the fabrics queue ready check routines to core (Gopal Tiwari) [1990475] - nvme: avoid memset for passthrough requests (Gopal Tiwari) [1990475] - nvme: add nvme_get_ns helper (Gopal Tiwari) [1990475] - nvme: fix controller ioctl through ns_head (Gopal Tiwari) [1990475] - nvme: introduce generic per-namespace chardev (Gopal Tiwari) [1990475] - nvme: cleanup nvme_configure_apst (Gopal Tiwari) [1990475] - nvme: do not try to reconfigure APST when the controller is not live (Gopal Tiwari) [1990475] - nvme: sanitize KATO setting (Gopal Tiwari) [1990475] - nvmet: avoid queuing keep-alive timer if it is disabled (Gopal Tiwari) [1990475] - nvme: fix NULL derefence in nvme_ctrl_fast_io_fail_tmo_show/store (Gopal Tiwari) [1990475] - nvme: let namespace probing continue for unsupported features (Gopal Tiwari) [1990475] - nvme: factor out nvme_ns_open and nvme_ns_release helpers (Gopal Tiwari) [1990475] - nvme: move nvme_ns_head_ops to multipath.c (Gopal Tiwari) [1990475] - nvme: factor out a nvme_tryget_ns_head helper (Gopal Tiwari) [1990475] - nvme: move the ioctl code to a separate file (Gopal Tiwari) [1990475] - nvme: don't bother to look up a namespace for controller ioctls (Gopal Tiwari) [1990475] - nvme: simplify block device ioctl handling for the !multipath case (Gopal Tiwari) [1990475] - nvme: simplify the compat ioctl handling (Gopal Tiwari) [1990475] - nvme-multipath: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme: pass a user pointer to nvme_nvm_ioctl (Gopal Tiwari) [1990475] - nvme: factor out a nvme_ns_ioctl helper (Gopal Tiwari) [1990475] - nvme: cleanup setting the disk name (Gopal Tiwari) [1990475] - nvme: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme-pci: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme: add a nvme_ns_head_multipath helper (Gopal Tiwari) [1990475] - nvmet: fix a spelling mistake "nubmer" -> "number" (Gopal Tiwari) [1990475] - nvmet-fc: simplify nvmet_fc_alloc_hostport (Gopal Tiwari) [1990475] - nvmet-tcp: fix a segmentation fault during io parsing error (Gopal Tiwari) [1990475] - lightnvm: use kobj_to_dev() (Gopal Tiwari) [1990475] - nvme: fix handling of large MDTS values (Gopal Tiwari) [1990475] - nvme: implement non-mdts command limits (Gopal Tiwari) [1990475] - nvme: disallow passthru cmd from targeting a nsid != nsid of the block dev (Gopal Tiwari) [1990475] - nvme: use sysfs_emit instead of sprintf (Gopal Tiwari) [1990475] - nvme-fc: check sgl supported by target (Gopal Tiwari) [1990475] - nvme: remove superfluous else in nvme_ctrl_loss_tmo_store (Gopal Tiwari) [1990475] - nvme: warn of unhandled effects only once (Gopal Tiwari) [1990475] - nvmet-tcp: enable optional queue idle period tracking (Gopal Tiwari) [1990475] - nvmet-tcp: fix incorrect locking in state_change sk callback (Gopal Tiwari) [1990475] - nvme-tcp: block BH in sk state_change sk callback (Gopal Tiwari) [1990475] - nvmet: return proper error code from discovery ctrl (Gopal Tiwari) [1990475] - nvme-tcp: check sgl supported by target (Gopal Tiwari) [1990475] - nvme: use driver pdu command for passthrough (Gopal Tiwari) [1990475] - nvmet: remove unnecessary ctrl parameter (Gopal Tiwari) [1990475] - nvmet-fc: update function documentation (Gopal Tiwari) [1990475] - nvme-pci: allocate nvme_command within driver pdu (Gopal Tiwari) [1990475] - nvmet: do not allow model_number exceed 40 bytes (Gopal Tiwari) [1990475] - nvme-fc: fix the function documentation comment (Gopal Tiwari) [1990475] - nvme: add new line after variable declatation (Gopal Tiwari) [1990475] - nvme: don't check nvme_req flags for new req (Gopal Tiwari) [1990475] - nvme: mark nvme_setup_passsthru() inline (Gopal Tiwari) [1990475] - nvme: split init identify into helper (Gopal Tiwari) [1990475] - nvme: rename nvme_init_identify() (Gopal Tiwari) [1990475] - nvme: reduce checks for zero command effects (Gopal Tiwari) [1990475] - nvmet: update error log page in nvmet_alloc_ctrl() (Gopal Tiwari) [1990475] - nvmet: remove an unnecessary function parameter to nvmet_check_ctrl_status (Gopal Tiwari) [1990475] - nvmet: remove a duplicate status assignment in nvmet_alloc_ctrl (Gopal Tiwari) [1990475] - nvmet: replace white spaces with tabs (Gopal Tiwari) [1990475] - nvme: use NVME_CTRL_CMIC_ANA macro (Gopal Tiwari) [1990475] - nvme-pci: cleanup nvme_irq() (Gopal Tiwari) [1990475] - nvme-pci: remove the barriers in nvme_irq() (Gopal Tiwari) [1990475] - nvmet-tcp: fix kmap leak when data digest in use (Gopal Tiwari) [1990475] - nvmet: don't check iosqes,iocqes for discovery controllers (Gopal Tiwari) [1990475] - nvme-tcp: fix a NULL deref when receiving a 0-length r2t PDU (Gopal Tiwari) [1990475] - nvme-rdma: fix possible hang when failing to set io queues (Gopal Tiwari) [1990475] - nvme-tcp: fix possible hang when failing to set io queues (Gopal Tiwari) [1990475] - nvme-fabrics: only reserve a single tag (Gopal Tiwari) [1990475] - nvme: allocate the keep alive request using BLK_MQ_REQ_NOWAIT (Gopal Tiwari) [1990475] - nvme: merge nvme_keep_alive into nvme_keep_alive_work (Gopal Tiwari) [1990475] - nvme-hwmon: Return error code when registration fails (Gopal Tiwari) [1990475] - nvme: update enumerations for status codes (Gopal Tiwari) [1990475]- scsi: mpt3sas: Fix incorrectly assigned error return and check (Tomas Henzl) [1990535] - scsi: mpt3sas: Introduce sas_ncq_prio_supported sysfs sttribute (Tomas Henzl) [1990535] - scsi: mpt3sas: Update driver version to 39.100.00.00 (Tomas Henzl) [1990535] - scsi: mpt3sas: Use firmware recommended queue depth (Tomas Henzl) [1990535] - scsi: mpt3sas: Bump driver version to 38.100.00.00 (Tomas Henzl) [1990535] - scsi: mpt3sas: Transition IOC to Ready state during shutdown (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix error return value in _scsih_expander_add() (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix Coverity reported issue (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix fall-through warnings for Clang (Tomas Henzl) [1990535] - scsi: mpt3sas: Handle firmware faults during second half of IOC init (Tomas Henzl) [1990535] - scsi: mpt3sas: Handle firmware faults during first half of IOC init (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix deadlock while cancelling the running firmware event (Tomas Henzl) [1990535] - scsi: mpt3sas: Documentation cleanup (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix two kernel-doc headers (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix out-of-bounds warnings in _ctl_addnl_diag_query (Tomas Henzl) [1990535] - scsi: megaraid_sas: Driver version update to 07.719.03.00-rc1 (Tomas Henzl) [1989643] - scsi: megaraid_sas: Add helper functions for irq_context (Tomas Henzl) [1989643] - scsi: megaraid: Clean up some inconsistent indenting (Tomas Henzl) [1989643] - scsi: megaraid: Fix Coccinelle warning (Tomas Henzl) [1989643] - IB/cma: Do not send IGMP leaves for sendonly Multicast groups (Kamal Heib) [2007269] - hv_netvsc: Add comment of netvsc_xdp_xmit() (Mohammed Gamal) [2008560] - hv_netvsc: use netif_is_bond_master() instead of open code (Mohammed Gamal) [2008560] - hv_netvsc: Avoid field-overflowing memcpy() (Mohammed Gamal) [2008560] - hv_netvsc: Set needed_headroom according to VF (Mohammed Gamal) [2008560] - netfilter: conntrack: fix error path in nf_conntrack_pernet_init() (Florian Westphal) [1922568] - netfilter: nf_conntrack: provide modparam to always register conntrack hooks (Florian Westphal) [1922568] - sctp: return true only for pathmtu update in sctp_transport_pl_toobig (Xin Long) [1890383] - sctp: subtract sctphdr len in sctp_transport_pl_hlen (Xin Long) [1890383] - sctp: reset probe_timer in sctp_transport_pl_update (Xin Long) [1890383] - sctp: allow IP fragmentation when PLPMTUD enters Error state (Xin Long) [1890383] - sctp: send pmtu probe only if packet loss in Search Complete state (Xin Long) [1890383] - sctp: improve the code for pmtu probe send and recv update (Xin Long) [1890383] - sctp: prevent info leak in sctp_make_heartbeat() (Xin Long) [1890383] - sctp: check pl.raise_count separately from its increment (Xin Long) [1890383] - sctp: send the next probe immediately once the last one is acked (Xin Long) [1890383] - sctp: do black hole detection in search complete state (Xin Long) [1890383] - sctp: process sctp over udp icmp err on sctp side (Xin Long) [1890383] - sctp: extract sctp_v4_err_handle function from sctp_v4_err (Xin Long) [1890383] - sctp: extract sctp_v6_err_handle function from sctp_v6_err (Xin Long) [1890383] - sctp: remove the unessessary hold for idev in sctp_v6_err (Xin Long) [1890383] - sctp: enable PLPMTUD when the transport is ready (Xin Long) [1890383] - sctp: do state transition when receiving an icmp TOOBIG packet (Xin Long) [1890383] - sctp: do state transition when a probe succeeds on HB ACK recv path (Xin Long) [1890383] - sctp: do state transition when PROBE_COUNT == MAX_PROBES on HB send path (Xin Long) [1890383] - sctp: do the basic send and recv for PLPMTUD probe (Xin Long) [1890383] - sctp: add the probe timer in transport for PLPMTUD (Xin Long) [1890383] - sctp: add the constants/variables and states and some APIs for transport (Xin Long) [1890383] - sctp: add SCTP_PLPMTUD_PROBE_INTERVAL sockopt for sock/asoc/transport (Xin Long) [1890383] - sctp: add probe_interval in sysctl and sock/asoc/transport (Xin Long) [1890383] - sctp: add pad chunk and its make function and event table (Xin Long) [1890383] - blk-mq: still set q->make_request_fn for blk-mq (Ming Lei) [1999728] - PCI: Add AMD RS690 quirk to enable 64-bit DMA (Myron Stowe) [1993279] - PCI: Add ACS quirk for Broadcom BCM57414 NIC (Myron Stowe) [1993279] - PCI: Mark some NVIDIA GPUs to avoid bus reset (Myron Stowe) [1993279] - PCI: of: Clear 64-bit flag for non-prefetchable memory below 4GB (Myron Stowe) [1993279] - x86/PCI: Remove unused alloc_pci_root_info() return value (Myron Stowe) [1993279] - PCI: Delay after FLR of Intel DC P4510 NVMe (Myron Stowe) [1993279] - PCI: Delay after FLR of Intel DC P3700 NVMe (Myron Stowe) [1993279] - PCI: Disable Samsung SM961/PM961 NVMe before FLR (Myron Stowe) [1993279] - PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions (Myron Stowe) [1993279] - PCI/sysfs: Rearrange smbios_attr_group and acpi_attr_group (Myron Stowe) [1993279] - PCI/sysfs: Tidy SMBIOS & ACPI label attributes (Myron Stowe) [1993279] - PCI/sysfs: Convert "index", "acpi_index", "label" to static attributes (Myron Stowe) [1993279] - PCI/sysfs: Define SMBIOS label attributes with DEVICE_ATTR*() (Myron Stowe) [1993279] - PCI/sysfs: Define ACPI label attributes with DEVICE_ATTR*() (Myron Stowe) [1993279] - PCI/sysfs: Rename device_has_dsm() to device_has_acpi_name() (Myron Stowe) [1993279] - PCI/sysfs: Convert "vpd" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Rename "vpd" attribute accessors (Myron Stowe) [1993279] - PCI/sysfs: Convert "reset" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Convert "rom" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Convert "config" to static attribute (Myron Stowe) [1993279] - PCI: Allow VPD access for QLogic ISP2722 (Myron Stowe) [1993279] - PCI/VPD: Add helper pci_get_func0_dev() (Myron Stowe) [1993279] - PCI/VPD: Remove pci_vpd_find_tag() SRDT handling (Myron Stowe) [1993279] - PCI/VPD: Remove pci_vpd_find_tag() 'offset' argument (Myron Stowe) [1993279] - PCI/VPD: Change pci_vpd_init() return type to void (Myron Stowe) [1993279] - PCI/VPD: Make missing VPD message less alarming (Myron Stowe) [1993279] - PCI/VPD: Remove pci_set_vpd_size() (Myron Stowe) [1993279] - PCI/VPD: Remove sysfs accessor size checking dead code (Myron Stowe) [1993279] - PCI/VPD: Remove obsolete Broadcom NIC quirk (Myron Stowe) [1993279] - PCI/ACPI: Fix acpi_pci_set_power_state() debug message (Myron Stowe) [1993279] - PCI: acpiphp: Fix whitespace issue (Myron Stowe) [1993279] - PCI: shpchp: Remove unused shpc_writeb() (Myron Stowe) [1993279] - PCI: cpqphp: Use DEFINE_SPINLOCK() for int15_lock (Myron Stowe) [1993279] - ACPI / hotplug / PCI: Fix reference count leak in enable_slot() (Myron Stowe) [1993279] - PCI: Add pci_disable_parity() (Myron Stowe) [1993279] - PCI: Release OF node in pci_scan_device()'s error path (Myron Stowe) [1993279] - fs: dlm: fix check for multi-homed hosts (Alexander Aring) [1889887] - iommu: remove iommu_domain_{get,set}_attr (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: enable the liodn when attaching a device (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: replace DOMAIN_ATTR_FSL_PAMU_STASH with a direct call (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove ->domain_window_enable (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove support for multiple windows (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove fsl_pamu_get_domain_attr (Jerry Snitselaar) [2004349] - iommu: remove the unused domain_window_disable method (Jerry Snitselaar) [2004349] - iommu: Remove .domain_{get,set}_windows (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Decrease the queue size of evtq and priq (Jerry Snitselaar) [2004349] - iommu/vt-d: Use pasid_pte_is_present() helper function (Jerry Snitselaar) [2004349] - iommu/vt-d: Update the virtual command related registers (Jerry Snitselaar) [2004349] - ACPI: IORT: Handle device properties with software node API (Jerry Snitselaar) [2004349] - iommu: Update "iommu.strict" documentation (Jerry Snitselaar) [2004349] - iommu/dma: Remove redundant "!dev" checks (Jerry Snitselaar) [2004349] - iommu/virtio: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/vt-d: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/amd: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu: Pull IOVA cookie management into the core (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Stop pre-zeroing batch commands (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Extract reusable function __arm_smmu_cmdq_skip_err() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add and use static helper function arm_smmu_get_cmdq() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Remove some unneeded init in arm_smmu_cmdq_issue_cmdlist() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add and use static helper function arm_smmu_cmdq_issue_cmd_with_sync() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Use command queue batching helpers to improve performance (Jerry Snitselaar) [2004349] - iommu/amd: Use only natural aligned flushes in a VM (Jerry Snitselaar) [2004349] - iommu/amd: Sync once for scatter-gather operations (Jerry Snitselaar) [2004349] - iommu/amd: Tailored gather logic for AMD (Jerry Snitselaar) [2004349] - iommu: Factor iommu_iotlb_gather_is_disjoint() out (Jerry Snitselaar) [2004349] - iommu: Improve iommu_iotlb_gather helpers (Jerry Snitselaar) [2004349] - iommu/amd: Do not use flush-queue when NpCache is on (Jerry Snitselaar) [2004349] - iommu/amd: Selective flush on unmap (Jerry Snitselaar) [2004349] - iommu/amd: Convert from atomic_t to refcount_t on pasid_state->count (Jerry Snitselaar) [2004349] - iommu: Streamline iommu_iova_to_phys() (Jerry Snitselaar) [2004349] - iommu/vt-d: Allow devices to have more than 32 outstanding PRs (Jerry Snitselaar) [1920744] - iommu/vt-d: Drop "0x" prefix from PCI bus & device addresses (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix a deadlock in intel_svm_drain_prq() (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix PASID leak in intel_svm_unbind_mm() (Jerry Snitselaar) [2004349] - iommu/amd: Fix printing of IOMMU events when rate limiting kicks in (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix missing unlock on error in arm_smmu_device_group() (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix race condition during iommu_group creation (Jerry Snitselaar) [2004349] - iommu: Fix race condition during default domain allocation (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Implement the map_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/arm-smmu-v3: Implement the unmap_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/vt-d: Move clflush'es from iotlb_sync_map() to map_pages() (Jerry Snitselaar) [1971977] - iommu/vt-d: Implement map/unmap_pages() iommu_ops callback (Jerry Snitselaar) [1971977] - iommu/vt-d: Report real pgsize bitmap to iommu core (Jerry Snitselaar) [1971977] - iommu/arm-smmu: Implement the map_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/arm-smmu: Implement the unmap_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Implement arm_lpae_map_pages() (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Implement arm_lpae_unmap_pages() (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Prepare PTE methods for handling multiple entries (Jerry Snitselaar) [1971977] - iommu: Add support for the map_pages() callback (Jerry Snitselaar) [1971977] - iommu: Hook up '->unmap_pages' driver callback (Jerry Snitselaar) [1971977] - iommu: Split 'addr_merge' argument to iommu_pgsize() into separate parts (Jerry Snitselaar) [1971977] - iommu: Use bitmap to calculate page size in iommu_pgsize() (Jerry Snitselaar) [1971977] - iommu: Add a map_pages() op for IOMMU drivers (Jerry Snitselaar) [1971977] - iommu/io-pgtable: Introduce map_pages() as a page table op (Jerry Snitselaar) [1971977] - iommu: Add an unmap_pages() op for IOMMU drivers (Jerry Snitselaar) [1971977] - iommu/io-pgtable: Introduce unmap_pages() as a page table op (Jerry Snitselaar) [1971977] - iommu/vt-d: Fix incomplete cache flush in intel_pasid_tear_down_entry() (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix PASID reference leak (Jerry Snitselaar) [2004349] - iommu: Check if group is NULL before remove device (Jerry Snitselaar) [2004349] - iommu/dma: Fix leak in non-contiguous API (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Fix fall-through warning for Clang (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix clearing real DMA device's scalable-mode context entries (Jerry Snitselaar) [2004349] - iommu/vt-d: Global devTLB flush when present context entry changed (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Use Tegra implementation on Tegra186 (Jerry Snitselaar) [2004349] - iommu: Delete a duplicate check in iommu_change_dev_def_domain() (Jerry Snitselaar) [2004349] - iommu/dma: Fix compile warning in 32-bit builds (Jerry Snitselaar) [2004349] - iommu: Drop unnecessary of_iommu.h includes (Jerry Snitselaar) [2004349] - iommu: Remove unused of_get_dma_window() (Jerry Snitselaar) [2004349] - iommu/iova: Put free_iova_mem() outside of spinlock iova_rbtree_lock (Jerry Snitselaar) [2004349] - iommu/dma: Fix IOVA reserve dma ranges (Jerry Snitselaar) [2004349] - iommu/virtio: Enable x86 support (Jerry Snitselaar) [2004349] - iommu/dma: Pass address limit rather than size to iommu_setup_dma_ops() (Jerry Snitselaar) [2004349] - iommu/amd: Fix section mismatch warning for detect_ivrs() (Jerry Snitselaar) [2004349] - iommu/amd: Add amd_iommu=force_enable option (Jerry Snitselaar) [2004349] - iommu/amd: Fix extended features logging (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix dereference of pointer info before it is null checked (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix linker error on 32-bit (Jerry Snitselaar) [2004349] - iommu/vt-d: No need to typecast (Jerry Snitselaar) [2004349] - iommu/vt-d: Define counter explicitly as unsigned int (Jerry Snitselaar) [2004349] - iommu/vt-d: Remove unnecessary braces (Jerry Snitselaar) [2004349] - iommu/vt-d: Removed unused iommu_count in dmar domain (Jerry Snitselaar) [2004349] - iommu/vt-d: Use bitfields for DMAR capabilities (Jerry Snitselaar) [2004349] - iommu/vt-d: Use DEVICE_ATTR_RO macro (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix out-bounds-warning in intel/svm.c (Jerry Snitselaar) [2004349] - iommu/vt-d: Add PRQ handling latency sampling (Jerry Snitselaar) [1971935] - iommu/vt-d: Add cache invalidation latency sampling (Jerry Snitselaar) [1971935] - iommu/vt-d: Expose latency monitor data through debugfs (Jerry Snitselaar) [1971935] - iommu/vt-d: Add common code for dmar latency performance monitors (Jerry Snitselaar) [1971935] - iommu/vt-d: Add prq_report trace event (Jerry Snitselaar) [1971973] - iommu/vt-d: Report prq to io-pgfault framework (Jerry Snitselaar) [1971971] - iommu/vt-d: Allocate/register iopf queue for sva devices (Jerry Snitselaar) [1971971] - iommu/vt-d: Refactor prq_event_thread() (Jerry Snitselaar) [1971971] - iommu/vt-d: Use common helper to lookup svm devices (Jerry Snitselaar) [1971971] - iommu/vt-d: Use iommu_sva_alloc(free)_pasid() helpers (Jerry Snitselaar) [1971971] - iommu/vt-d: Add pasid private data helpers (Jerry Snitselaar) [1971971] - iommu/vt-d: Support asynchronous IOMMU nested capabilities (Jerry Snitselaar) [2004349] - iommu/vt-d: Select PCI_ATS explicitly (Jerry Snitselaar) [2004349] - iommu/vt-d: Tweak the description of a DMA fault (Jerry Snitselaar) [1971975] - iommu/vt-d: Fix kernel-doc syntax in file header (Jerry Snitselaar) [2004349] - iommu/vt-d: Remove redundant assignment to variable agaw (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Check smmu->impl pointer before dereferencing (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Implement ->probe_finalize() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Remove unnecessary oom message (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix arm_smmu_device refcount leak in address translation (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix arm_smmu_device refcount leak when arm_smmu_rpm_get fails (Jerry Snitselaar) [2004349] - PM: runtime: Add documentation for pm_runtime_resume_and_get() (Jerry Snitselaar) [2004349] - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter (Jerry Snitselaar) [2004349] - iommu/arm: Cleanup resources in case of probe error path (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Ratelimit event dump (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add stall support for platform devices (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Change *array into *const array (Jerry Snitselaar) [2004349] - iommu/amd: Remove redundant assignment of err (Jerry Snitselaar) [2004349] - iommu/amd: Tidy up DMA ops init (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Add support for driver IOMMU fault handlers (Jerry Snitselaar) [2004349] - iommu/virtio: Add missing MODULE_DEVICE_TABLE (Jerry Snitselaar) [2004349] - iommu/amd: Fix wrong parentheses on page-specific invalidations (Jerry Snitselaar) [2004349] - iommu: Streamline registration interface (Jerry Snitselaar) [2004349] - iommu: Statically set module owner (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_IO_PGTABLE_CFG (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_DMA_USE_FLUSH_QUEUE (Jerry Snitselaar) [2004349] - iommu: remove iommu_set_cmd_line_dma_api and iommu_cmd_line_dma_api (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_NESTING (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_GEOMETRY (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_PAGING (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Maintain a SID->device structure (Jerry Snitselaar) [2004349] - iommu: Add a page fault handler (Jerry Snitselaar) [2004349] - iommu/vt-d: Support IOMMU_DEV_FEAT_IOPF (Jerry Snitselaar) [2004349] - iommu: Separate IOMMU_DEV_FEAT_IOPF from IOMMU_DEV_FEAT_SVA (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Use device properties for pasid-num-bits (Jerry Snitselaar) [2004349] - of/device: Add input id to of_dma_configure() (Jerry Snitselaar) [2004349] - of/iommu: Make of_map_rid() PCI agnostic (Jerry Snitselaar) [2004349] - iommu: Fix comment for struct iommu_fwspec (Jerry Snitselaar) [2004349] - iommu/amd: Remove duplicate check of devid (Jerry Snitselaar) [2004349] - iommu/amd: Page-specific invalidations for more than one page (Jerry Snitselaar) [2004349] - iommu/amd: Move a few prototypes to include/linux/amd-iommu.h (Jerry Snitselaar) [2004349] - iommu/amd: Remove a few unused exports (Jerry Snitselaar) [2004349] - iommu/amd: Remove the unused amd_iommu_get_v2_domain function (Jerry Snitselaar) [2004349] - iommu/amd: Remove the unused device errata code (Jerry Snitselaar) [2004349] - iommu/amd: Remove duplicate check of pasids (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix lockdep splat in intel_pasid_get_entry() (Jerry Snitselaar) [2004349] - iommu/amd: Remove iommu_init_ga() (Jerry Snitselaar) [1998265] - iommu/amd: Relocate GAMSup check to early_enable_iommus (Jerry Snitselaar) [1998265] - x86/Kconfig: Do not enable AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT automatically (Prarit Bhargava) [2021219] - hyper-v: Replace uuid.h with types.h (Mohammed Gamal) [2008563] - x86/hyperv: Avoid erroneously sending IPI to 'self' (Mohammed Gamal) [2008563] - asm-generic/hyperv: provide cpumask_to_vpset_noself (Mohammed Gamal) [2008563] - asm-generic/hyperv: Add missing function prototypes per -W1 warnings (Mohammed Gamal) [2008563] - hv: hyperv.h: Remove unused inline functions (Mohammed Gamal) [2008563] - hv: hyperv.h: a few mundane typo fixes (Mohammed Gamal) [2008563] - hv: hyperv.h: Replace one-element array with flexible-array in struct icmsg_negotiate (Mohammed Gamal) [2008563] - x86/hyperv: add comment describing TSC_INVARIANT_CONTROL MSR setting bit 0 (Mohammed Gamal) [2008563] - x86/hyperv: fix for unwanted manipulation of sched_clock when TSC marked unstable (Mohammed Gamal) [2008563] - hyperv: Detect Nested virtualization support for SVM (Mohammed Gamal) [2008563] - hyperv: SVM enlightened TLB flush support flag (Mohammed Gamal) [2008563] - x86/hyperv: remove on-stack cpumask from hv_send_ipi_mask_allbutself (Mohammed Gamal) [2008563] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [2008563] - x86/hyperv: remove unused linux/version.h header (Mohammed Gamal) [2008563] - x86/hyperv: Fix unused variable 'hi' warning in hv_apic_read (Mohammed Gamal) [2008563] - x86/hyperv: Fix unused variable 'msr_val' warning in hv_qlock_wait (Mohammed Gamal) [2008563] - PCI: hv: Fix sleep while in non-sleep context when removing child devices from the bus (Mohammed Gamal) [2008562] - PCI: hv: Add check for hyperv_initialized in init_hv_pci_drv() (Mohammed Gamal) [2008562] - PCI: hv: Drop msi_controller structure (Mohammed Gamal) [2008562] - PCI/IOV: Add sysfs MSI-X vector assignment interface (Myron Stowe) [2019087] - x86: ACPI: cstate: Optimize C3 entry on AMD CPUs (David Arcari) [1998529] - Bluetooth: Move shutdown callback before flushing tx and rx queue (Gopal Tiwari) [1990477] - Bluetooth: btusb: check conditions before enabling USB ALT 3 for WBS (Gopal Tiwari) [1990477] - Bluetooth: Fix VIRTIO_ID_BT assigned number (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix wrong opcode in the response for add_adv cmd (Gopal Tiwari) [1990477] - Bluetooth: defer cleanup of resources in hci_unregister_dev() (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Fix handling of HCI_LE_Advertising_Set_Terminated event (Gopal Tiwari) [1990477] - Bluetooth: Fix Set Extended (Scan Response) Data (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language when filtering devices (Gopal Tiwari) [1990477] - Bluetooth: smp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in HCI role comments (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language when tracking connections (Gopal Tiwari) [1990477] - Bluetooth: sco: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: a2mp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: amp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: cmtp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: bnep: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: hidp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in comments (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in SMP (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in HCI LE features (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language to describe CPB (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix slab-out-of-bounds in tlv_data_is_valid (Gopal Tiwari) [1990477] - Bluetooth: disable filter dup when scan for adv monitor (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix the command returns garbage parameter value (Gopal Tiwari) [1990477] - Bluetooth: RFCOMM: Use DEVICE_ATTR_RO macro (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type during le_conn_comp (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix invalid access on ECRED Connection response (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix invalid access if ECRED Reconfigure fails (Gopal Tiwari) [1990477] - Bluetooth: Remove spurious error message (Gopal Tiwari) [1990477] - Bluetooth: Shutdown controller after workqueues are flushed or cancelled (Gopal Tiwari) [1990477] - Bluetooth: Add ncmd=0 recovery handling (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: remove unused function (Gopal Tiwari) [1990477] - Bluetooth: Fix alt settings for incoming SCO with transparent coding format (Gopal Tiwari) [1990477] - Bluetooth: Fix the HCI to MGMT status conversion table (Gopal Tiwari) [1990477] - Bluetooth: cmtp: fix file refcount when cmtp_attach_device fails (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: delete unneeded variable initialization (Gopal Tiwari) [1990477] - Bluetooth: Return whether a connection is outbound (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fix crash when receiving new connection when debug is enabled (Gopal Tiwari) [1990477] - Bluetooth: Fix spelling mistakes (Gopal Tiwari) [1990477] - Bluetooth: Set defaults for le_scan_{int,window}_adv_monitor (Gopal Tiwari) [1990477] - Bluetooth: Allow Microsoft extension to indicate curve validation (Gopal Tiwari) [1990477] - Bluetooth: Add support for reading AOSP vendor capabilities (Gopal Tiwari) [1990477] - Bluetooth: LL privacy allow RPA (Gopal Tiwari) [1990477] - Bluetooth: Handle own address type change with HCI_ENABLE_LL_PRIVACY (Gopal Tiwari) [1990477] - Bluetooth: Do not set cur_adv_instance in adv param MGMT request (Gopal Tiwari) [1990477] - Bluetooth: Use ext adv handle from requests in CCs (Gopal Tiwari) [1990477] - Bluetooth: use the correct print format for L2CAP debug statements (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fix variable dereferenced before check 'conn' (Gopal Tiwari) [1990477] - Bluetooth: Check inquiry status before sending one (Gopal Tiwari) [1990477] - Bluetooth: Coding style fix (Gopal Tiwari) [1990477] - Bluetooth: Remove 'return' in void function (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Move the advertisement monitor events to correct list (Gopal Tiwari) [1990477] - Bluetooth: Add missing entries for PHY configuration commands (Gopal Tiwari) [1990477] - Bluetooth: Fix mgmt status for LL Privacy experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Fix wrong opcode error for read advertising features (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Rudimentary typo fixes (Gopal Tiwari) [1990477] - Bluetooth: Remove trailing semicolon in macros (Gopal Tiwari) [1990477] - Bluetooth: check for zapped sk before connecting (Gopal Tiwari) [1990477] - Bluetooth: fix set_ecdh_privkey() prototype (Gopal Tiwari) [1990477] - Bluetooth: initialize skb_queue_head at l2cap_chan_create() (Gopal Tiwari) [1990477] - Bluetooth: Set CONF_NOT_COMPLETE as l2cap_chan default (Gopal Tiwari) [1990477] - Bluetooth: Fix incorrect status handling in LE PHY UPDATE event (Gopal Tiwari) [1990477] - Bluetooth: avoid deadlock between hci_dev->lock and socket lock (Gopal Tiwari) [1990477] - Bluetooth: SMP: Convert BT_ERR/BT_DBG to bt_dev_err/bt_dev_dbg (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix not checking for maximum number of DCID (Gopal Tiwari) [1990477] - Bluetooth: Cancel le_scan_restart work when stopping discovery (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fail if remote and local public keys are identical (Gopal Tiwari) [1990477] - Bluetooth: Allow scannable adv with extended MGMT APIs (Gopal Tiwari) [1990477] - Bluetooth: Remove unneeded commands for suspend (Gopal Tiwari) [1990477] - Bluetooth: Notify suspend on le conn failed (Gopal Tiwari) [1990477] - Bluetooth: hci_uart: Remove redundant assignment to fw_ptr (Gopal Tiwari) [1990477] - Bluetooth: btmrvl: remove redundant continue statement (Gopal Tiwari) [1990477] - Bluetooth: btusb: use default nvm if boardID is 0 for wcn6855. (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc. (Gopal Tiwari) [1990477] - Bluetooth: btmtkuart: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Gopal Tiwari) [1990477] - Bluetooth: btrtl: rename USB fw for RTL8761 (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add 0x0b05:0x190e Realtek 8761BU (ASUS BT500) device. (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Add RTL8822CS capabilities (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support USB ALT 3 for WBS (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add a new QCA_ROME device (0cf3:e500) (Gopal Tiwari) [1990477] - Bluetooth: btqca: Don't modify firmware contents in-place (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Add entry for BCM43430B0 UART Bluetooth (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: fix potential GPF (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix memory leak (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fixed too many in-token issue for Mediatek Chip. (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support for Lite-On Mediatek Chip (Gopal Tiwari) [1990477] - Bluetooth: virtio_bt: add missing null pointer check on alloc_skb call return (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix failing to init controllers with operation firmware (Gopal Tiwari) [1990477] - Bluetooth: Add a new USB ID for RTL8822CE (Gopal Tiwari) [1990477] - Bluetooth: btusb: Revert Fix the autosuspend enable and disable (Gopal Tiwari) [1990477] - Bluetooth: Add support for virtio transport driver (Gopal Tiwari) [1990477] - Bluetooth: btusb: Enable quirk boolean flag for Mediatek Chip. (Gopal Tiwari) [1990477] - Bluetooth: btintel: Skip reading firmware file version while in bootloader mode (Gopal Tiwari) [1990477] - Bluetooth: btintel: Collect tlv based active firmware build info in FW mode (Gopal Tiwari) [1990477] - Bluetooth: btintel: Reorganized bootloader mode tlv checks in intel_version_tlv parsing (Gopal Tiwari) [1990477] - Bluetooth: btusb: Consolidate code for waiting firmware to boot (Gopal Tiwari) [1990477] - Bluetooth: btusb: Consolidate code for waiting firmware download (Gopal Tiwari) [1990477] - Bluetooth: btintel: Consolidate intel_version parsing (Gopal Tiwari) [1990477] - Bluetooth: btintel: Consolidate intel_version_tlv parsing (Gopal Tiwari) [1990477] - Bluetooth: btintel: Move operational checks after version check (Gopal Tiwari) [1990477] - Bluetooth: btintel: Check firmware version before download (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Mundane typo fix (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Add BCM4330 and BCM4334 compatibles (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Add device_may_wakeup support (Gopal Tiwari) [1990477] - Bluetooth: btintel: Fix offset calculation boot address parameter (Gopal Tiwari) [1990477] - Bluetooth: btusb: print firmware file name on error loading firmware (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Obtain and handle reset GPIO (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix incorrect type in assignment and uninitialized symbol (Gopal Tiwari) [1990477] - Bluetooth: btusb: support 0cb5:c547 Realtek 8822CE device (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Fixed issue during suspend (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix excessive stack usage (Gopal Tiwari) [1990477] - Bluetooth: btusb: remove set but not used variable in btusb_mtk_setup_firmware_79xx (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix typo and correct the log print (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add protocol support for MediaTek MT7921U USB devices (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fine-tune mt7663 mechanism. (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: check for SSR triggered flag while suspend (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Enable WBS for the specific Realtek devices (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Wait for SSR completion during suspend (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Add support for binding RTL8723DS with device tree (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support for GarfieldPeak controller (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Add null check in setup (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Enable central-peripheral role (Gopal Tiwari) [1990477] - Bluetooth: btusb: Remove duplicate newlines from logging (Gopal Tiwari) [1990477] - Bluetooth: btmtksdio: Fixed switch and case should be at the same indent (Gopal Tiwari) [1990477] - Revert "Bluetooth: btintel: Fix endianness issue for TLV version information" (Gopal Tiwari) [1990477] - Bluetooth: hci_bcm: Add support for ISO packets (Gopal Tiwari) [1990477] - Bluetooth: btusb: add shutdown function for wcn6855 (Gopal Tiwari) [1990477] - Bluetooth: hci_uart: Fix a race for write_work scheduling (Gopal Tiwari) [1990477] - Bluetooth: btqca: Add support to read FW build version for WCN3991 BTSoC (Gopal Tiwari) [1990477] - Bluetooth: btusb: Always fallback to alt 1 for WBS (Gopal Tiwari) [1990477] - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function (Gopal Tiwari) [1990477] - Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (Gopal Tiwari) [1990477] - Bluetooth: Skip eSCO 2M params when not supported (Gopal Tiwari) [1990477] - Bluetooth: fix indentation and alignment reported by checkpatch (Gopal Tiwari) [1990477] - Bluetooth: fix coccicheck warnings debugfs (Gopal Tiwari) [1990477] - Bluetooth: Add new HCI_QUIRK_NO_SUSPEND_NOTIFIER quirk (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Try harder to accept device not knowing options (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix handling fragmented length (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix memory leak on suspend and resume (Gopal Tiwari) [1990477] - Bluetooth: Put HCI device if inquiry procedure interrupts (Gopal Tiwari) [1990477] - Bluetooth: drop HCI device reference before return (Gopal Tiwari) [1990477] - Bluetooth: avoid u128_xor() on potentially misaligned inputs (Gopal Tiwari) [1990477] - Bluetooth: Fix initializing response id after clearing struct (Gopal Tiwari) [1990477] - Bluetooth: Cancel Inquiry before Create Connection (Gopal Tiwari) [1990477] - Bluetooth: Pause service discovery for suspend (Gopal Tiwari) [1990477] - Bluetooth: Remove hci_req_le_suspend_config (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Set missing suspend task bits (Gopal Tiwari) [1990477] - Bluetooth: Change MGMT security info CMD to be more generic (Gopal Tiwari) [1990477] - Bluetooth: Query LE tx power on startup (Gopal Tiwari) [1990477] - Bluetooth: Use intervals and tx power from mgmt cmds (Gopal Tiwari) [1990477] - Bluetooth: Break add adv into two mgmt commands (Gopal Tiwari) [1990477] - Bluetooth: Add helper to set adv data (Gopal Tiwari) [1990477] - Bluetooth: Add toggle to switch off interleave scan (Gopal Tiwari) [1990477] - Bluetooth: Refactor read default sys config for various types (Gopal Tiwari) [1990477] - Bluetooth: Handle active scan case (Gopal Tiwari) [1990477] - Bluetooth: Handle system suspend resume case (Gopal Tiwari) [1990477] - Bluetooth: Interleave with allowlist scan (Gopal Tiwari) [1990477] - Bluetooth: Fix attempting to set RPA timeout when unsupported (Gopal Tiwari) [1990477] - Bluetooth: Rename get_adv_instance_scan_rsp (Gopal Tiwari) [1990477] - Bluetooth: Fix not sending Set Extended Scan Response (Gopal Tiwari) [1990477] - Bluetooth: Fix for Bluetooth SIG test L2CAP/COS/CFD/BV-14-C (Gopal Tiwari) [1990477] - Bluetooth: sco: Fix crash when using BT_SNDMTU/BT_RCVMTU option (Gopal Tiwari) [1990477] - Bluetooth: Replace BT_DBG with bt_dev_dbg in HCI request (Gopal Tiwari) [1990477] - Bluetooth: consolidate error paths in hci_phy_link_complete_evt() (Gopal Tiwari) [1990477] - Bluetooth: Enforce key size of 16 bytes on FIPS level (Gopal Tiwari) [1990477] - Bluetooth: hidp: use correct wait queue when removing ctrl_wait (Gopal Tiwari) [1990477] - Bluetooth: Move force_bredr_smp debugfs into hci_debugfs_create_bredr (Gopal Tiwari) [1990477] - Bluetooth: Fix: LL PRivacy BLE device fails to connect (Gopal Tiwari) [1990477] - Bluetooth: Resume advertising after LE connection (Gopal Tiwari) [1990477] - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() (Gopal Tiwari) [1990477] - Bluetooth: Replace zero-length array with flexible-array member (Gopal Tiwari) [1990477] - Bluetooth: MGMT: Fix not checking if BT_HS is enabled (Gopal Tiwari) [1990477] - Bluetooth: Disable High Speed by default (Gopal Tiwari) [1990477] - Bluetooth: Fix update of own_addr_type if ll_privacy supported (Gopal Tiwari) [1990477] - Bluetooth: Fix auto-creation of hci_conn at Conn Complete event (Gopal Tiwari) [1990477] - Bluetooth: Set scan parameters for ADV Monitor (Gopal Tiwari) [1990477] - Bluetooth: Update Adv monitor count upon removal (Gopal Tiwari) [1990477] - net: bluetooth: delete duplicated words (Gopal Tiwari) [1990477] - Bluetooth: pause/resume advertising around suspend (Gopal Tiwari) [1990477] - Bluetooth: Emit controller suspend and resume events (Gopal Tiwari) [1990477] - Bluetooth: Add suspend reason for device disconnect (Gopal Tiwari) [1990477] - Bluetooth: Add mgmt suspend and resume events (Gopal Tiwari) [1990477] - Bluetooth: Set ext scan response only when it exists (Gopal Tiwari) [1990477] - Bluetooth: Only mark socket zapped after unlocking (Gopal Tiwari) [1990477] - Bluetooth: Add MGMT capability flags for tx power and ext advertising (Gopal Tiwari) [1990477] - Bluetooth: Report num supported adv instances for hw offloading (Gopal Tiwari) [1990477] - Bluetooth: sco: new getsockopt options BT_SNDMTU/BT_RCVMTU (Gopal Tiwari) [1990477] - Bluetooth: Re-order clearing suspend tasks (Gopal Tiwari) [1990477] - Bluetooth: Fix memory leak in read_adv_mon_features() (Gopal Tiwari) [1990477] - Bluetooth: Clear suspend tasks on unregister (Gopal Tiwari) [1990477] - Bluetooth: Remove CRYPTO_ALG_INTERNAL flag (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: use the proper scan params when conn is pending (Gopal Tiwari) [1990477] - Bluetooth: Enable controller RPA resolution using Experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Let controller creates RPA during le create conn (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type during le_conn (Gopal Tiwari) [1990477] - Bluetooth: Enable RPA Timeout (Gopal Tiwari) [1990477] - Bluetooth: Enable/Disable address resolution during le create conn (Gopal Tiwari) [1990477] - Bluetooth: Configure controller address resolution if available (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type correctly (Gopal Tiwari) [1990477] - Bluetooth: Update resolving list when updating whitelist (Gopal Tiwari) [1990477] - Bluetooth: Fix suspend notifier race (Gopal Tiwari) [1990477] - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier (Gopal Tiwari) [1990477] - Bluetooth: Add per-instance adv disable/remove (Gopal Tiwari) [1990477] - Replace HTTP links with HTTPS ones: BLUETOOTH SUBSYSTEM (Gopal Tiwari) [1990477] - Bluetooth: RFCOMM: Use fallthrough pseudo-keyword (Gopal Tiwari) [1990477] - Bluetooth: core: Use fallthrough pseudo-keyword (Gopal Tiwari) [1990477] - Bluetooth: Use whitelist for scan policy when suspending (Gopal Tiwari) [1990477] - Bluetooth: le_simult_central_peripheral experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Fix kernel oops triggered by hci_adv_monitors_clear() (Gopal Tiwari) [1990477] - Bluetooth: use configured default params for active scans (Gopal Tiwari) [1990477] - Bluetooth: Adding a configurable autoconnect timeout (Gopal Tiwari) [1990477] - Bluetooth: Don't restart scanning if paused (Gopal Tiwari) [1990477] - Bluetooth: add a mutex lock to avoid UAF in do_enale_set (Gopal Tiwari) [1990477] - Bluetooth: use configured params for ext adv (Gopal Tiwari) [1990477] - Bluetooth: Add hci_dev_lock to get/set device flags (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Use command complete on success for set system config (Gopal Tiwari) [1990477] - Bluetooth: Terminate the link if pairing is cancelled (Gopal Tiwari) [1990477] - Bluetooth: Update background scan and report device based on advertisement monitors (Gopal Tiwari) [1990477] - Bluetooth: Notify adv monitor removed event (Gopal Tiwari) [1990477] - Bluetooth: Notify adv monitor added event (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_REMOVE_ADV_MONITOR (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_ADD_ADV_PATTERNS_MONITOR (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_READ_ADV_MONITOR_FEATURES (Gopal Tiwari) [1990477] - Bluetooth: Add definitions for advertisement monitor features (Gopal Tiwari) [1990477] - Bluetooth: Add get/set device flags mgmt op (Gopal Tiwari) [1990477] - Bluetooth: Replace wakeable in hci_conn_params (Gopal Tiwari) [1990477] - Bluetooth: Replace wakeable list with flag (Gopal Tiwari) [1990477] - Bluetooth: Add bdaddr_list_with_flags for classic whitelist (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Add commands for runtime configuration (Gopal Tiwari) [1990477] - Bluetooth: implement read/set default system parameters mgmt (Gopal Tiwari) [1990477] - Bluetooth: mgmt: read/set system parameter definitions (Gopal Tiwari) [1990477] - Bluetooth: centralize default value initialization. (Gopal Tiwari) [1990477] - Bluetooth: Use only 8 bits for the HCI CMSG state flags (Gopal Tiwari) [1990477] - Bluetooth: Add support for BT_PKT_STATUS CMSG data for SCO connections (Gopal Tiwari) [1990477] - Bluetooth: Removing noisy dbg message (Gopal Tiwari) [1990477] - Bluetooth: Fix update of connection state in `hci_encrypt_cfm` (Gopal Tiwari) [1990477] - Bluetooth: Fix assuming EIR flags can result in SSP authentication (Gopal Tiwari) [1990477] - Bluetooth: Consolidate encryption handling in hci_encrypt_cfm (Gopal Tiwari) [1990477] - Bluetooth: Add SCO fallback for invalid LMP parameters error (Gopal Tiwari) [1990477] - Bluetooth: Fix for GAP/SEC/SEM/BI-10-C (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: add support for waiting disconnection resp (Gopal Tiwari) [1990477] - Bluetooth: Handle Inquiry Cancel error after Inquiry Complete (Gopal Tiwari) [1990477] - Bluetooth: Rename BT_SUSPEND_COMPLETE (Gopal Tiwari) [1990477] - Bluetooth: Introduce debug feature when dynamic debug is disabled (Gopal Tiwari) [1990477] - Bluetooth: Fix advertising handle is set to 0 (Gopal Tiwari) [1990477] - Bluetooth: Introduce HCI_MGMT_HDEV_OPTIONAL option (Gopal Tiwari) [1990477] - Bluetooth: Add support for experimental features configuration (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix errors during L2CAP_CREDIT_BASED_CONNECTION_REQ (0x17) (Gopal Tiwari) [1990477] - Bluetooth: Add MGMT_EV_PHY_CONFIGURATION_CHANGED to supported list (Gopal Tiwari) [1990477] - Bluetooth: use crypto_shash_tfm_digest() (Gopal Tiwari) [1990477] - Bluetooth: allow scatternet connections if supported. (Gopal Tiwari) [1990477] - Bluetooth: Enhanced Connection Complete event belongs to LL Privacy (Gopal Tiwari) [1990477] - Bluetooth: Enable LE Enhanced Connection Complete event. (Gopal Tiwari) [1990477] - Bluetooth: Use extra variable to make code more readable (Gopal Tiwari) [1990477] - Bluetooth: log advertisement packet length if it gets corrected (Gopal Tiwari) [1990477] - Bluetooth: Always request for user confirmation for Just Works (LE SC) (Gopal Tiwari) [1990477] - Bluetooth: Simplify / fix return values from tk_request (Gopal Tiwari) [1990477] - Bluetooth: debugfs option to unset MITM flag (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: replace zero-length array with flexible-array member (Gopal Tiwari) [1990477] - Bluetooth: Add support for reading security information (Gopal Tiwari) [1990477] - Bluetooth: Add support for Read Local Simple Pairing Options (Gopal Tiwari) [1990477] - Bluetooth: Add framework for Microsoft vendor extension (Gopal Tiwari) [1990477] - Bluetooth: Move debugfs configuration above the selftests (Gopal Tiwari) [1990477] - Bluetooth: fixing minor typo in comment (Gopal Tiwari) [1990477] - Bluetooth: Prioritize SCO traffic (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix handling LE modes by L2CAP_OPTIONS (Gopal Tiwari) [1990477] - Bluetooth: Always request for user confirmation for Just Works (Gopal Tiwari) [1990477] - Bluetooth: Add BT_MODE socket option (Gopal Tiwari) [1990477] - crypto: shash - remove shash_desc::flags (Gopal Tiwari) [1990477] - cifs: On cifs_reconnect, resolve the hostname again. (Ronnie Sahlberg) [2018046] - cifs: Handle witness client move notification (Ronnie Sahlberg) [2018046] - cifs: Send witness register messages to userspace daemon in echo task (Ronnie Sahlberg) [2018046] - cifs: Add witness information to debug data dump (Ronnie Sahlberg) [2018046] - cifs: Set witness notification handler for messages from userspace daemon (Ronnie Sahlberg) [2018046] - cifs: Send witness register and unregister commands to userspace daemon (Ronnie Sahlberg) [2018046] - cifs: Register generic netlink family (Ronnie Sahlberg) [2018046] - cifs: add witness mount option and data structs (Ronnie Sahlberg) [2018046] - cifs: Simplify reconnect code when dfs upcall is enabled (Ronnie Sahlberg) [2018046] - file: fix close_range() for unshare+cloexec (Pavel Reichl) [1950248] - scsi: lpfc: Update lpfc version to 14.0.0.3 (Dick Kennedy) [1989265] - scsi: lpfc: Allow fabric node recovery if recovery is in progress before devloss (Dick Kennedy) [1989265] - scsi: lpfc: Fix link down processing to address NULL pointer dereference (Dick Kennedy) [1989265] - scsi: lpfc: Allow PLOGI retry if previous PLOGI was aborted (Dick Kennedy) [1989265] - scsi: lpfc: Fix use-after-free in lpfc_unreg_rpi() routine (Dick Kennedy) [1989265] - scsi: lpfc: Correct sysfs reporting of loop support after SFP status change (Dick Kennedy) [1989265] - scsi: lpfc: Wait for successful restart of SLI3 adapter during host sg_reset (Dick Kennedy) [1989265] - scsi: lpfc: Revert LOG_TRACE_EVENT back to LOG_INIT prior to driver_resource_setup() (Dick Kennedy) [1989265] - scsi: lpfc: Fix memory overwrite during FC-GS I/O abort handling (Dick Kennedy) [1989265] - scsi: lpfc: Add support for optional PLDV handling (Dick Kennedy) [1989265] - scsi: lpfc: Return NULL rather than a plain 0 integer (Dick Kennedy) [1989265] - scsi: lpfc: Fix a function name in comments (Dick Kennedy) [1989265] - scsi: lpfc: Fix mailbox command failure during driver initialization (Dick Kennedy) [1989265] - scsi: lpfc: Fix gcc -Wstringop-overread warning, again (Dick Kennedy) [1989265] - scsi: lpfc: Use correct scnprintf() limit (Dick Kennedy) [1989265] - scsi: lpfc: Fix sprintf() overflow in lpfc_display_fpin_wwpn() (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.2 (Dick Kennedy) [1989265] - scsi: lpfc: Improve PBDE checks during SGL processing (Dick Kennedy) [1989265] - scsi: lpfc: Zero CGN stats only during initial driver load and stat reset (Dick Kennedy) [1989265] - scsi: lpfc: Fix I/O block after enabling managed congestion mode (Dick Kennedy) [1989265] - scsi: lpfc: Adjust bytes received vales during cmf timer interval (Dick Kennedy) [1989265] - scsi: fc: Add EDC ELS definition (Dick Kennedy) [1989265] - scsi: lpfc: Fix EEH support for NVMe I/O (Dick Kennedy) [1989265] - scsi: lpfc: Fix FCP I/O flush functionality for TMF routines (Dick Kennedy) [1989265] - scsi: lpfc: Fix NVMe I/O failover to non-optimized path (Dick Kennedy) [1989265] - scsi: lpfc: Don't remove ndlp on PRLI errors in P2P mode (Dick Kennedy) [1989265] - scsi: lpfc: Fix rediscovery of tape device after LIP (Dick Kennedy) [1989265] - scsi: lpfc: Fix hang on unload due to stuck fport node (Dick Kennedy) [1989265] - scsi: lpfc: Fix premature rpi release for unsolicited TPLS and LS_RJT (Dick Kennedy) [1989265] - scsi: lpfc: Don't release final kref on Fport node while ABTS outstanding (Dick Kennedy) [1989265] - scsi: lpfc: Fix list_add() corruption in lpfc_drain_txq() (Dick Kennedy) [1989265] - scsi: lpfc: Remove unneeded variable (Dick Kennedy) [1989265] - scsi: lpfc: Fix compilation errors on kernels with no CONFIG_DEBUG_FS (Dick Kennedy) [1989265] - scsi: lpfc: Fix CPU to/from endian warnings introduced by ELS processing (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 14.0.0.1 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.1 (Dick Kennedy) [1989265] - scsi: lpfc: Add bsg support for retrieving adapter cmf data (Dick Kennedy) [1989265] - scsi: lpfc: Add cmf_info sysfs entry (Dick Kennedy) [1989265] - scsi: lpfc: Add debugfs support for cm framework buffers (Dick Kennedy) [1989265] - scsi: lpfc: Add support for maintaining the cm statistics buffer (Dick Kennedy) [1989265] - scsi: lpfc: Add rx monitoring statistics (Dick Kennedy) [1989265] - scsi: lpfc: Add support for the CM framework (Dick Kennedy) [1989265] - scsi: lpfc: Add cmfsync WQE support (Dick Kennedy) [1989265] - scsi: lpfc: Add support for cm enablement buffer (Dick Kennedy) [1989265] - scsi: lpfc: Add cm statistics buffer support (Dick Kennedy) [1989265] - scsi: lpfc: Add EDC ELS support (Dick Kennedy) [1989265] - scsi: lpfc: Expand FPIN and RDF receive logging (Dick Kennedy) [1989265] - scsi: lpfc: Add MIB feature enablement support (Dick Kennedy) [1989265] - scsi: lpfc: Add SET_HOST_DATA mbox cmd to pass date/time info to firmware (Dick Kennedy) [1989265] - scsi: lpfc: Fix possible ABBA deadlock in nvmet_xri_aborted() (Dick Kennedy) [1989265] - scsi: lpfc: Remove redundant assignment to pointer pcmd (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 14.0.0.0 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.0 (Dick Kennedy) [1989265] - scsi: lpfc: Add 256 Gb link speed support (Dick Kennedy) [1989265] - scsi: lpfc: Revise Topology and RAS support checks for new adapters (Dick Kennedy) [1989265] - scsi: lpfc: Fix cq_id truncation in rq create (Dick Kennedy) [1989265] - scsi: lpfc: Add PCI ID support for LPe37000/LPe38000 series adapters (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 12.8.0.11 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 12.8.0.11 (Dick Kennedy) [1989265] - scsi: lpfc: Skip issuing ADISC when node is in NPR state (Dick Kennedy) [1989265] - scsi: lpfc: Skip reg_vpi when link is down for SLI3 in ADISC cmpl path (Dick Kennedy) [1989265] - scsi: lpfc: Call discovery state machine when handling PLOGI/ADISC completions (Dick Kennedy) [1989265] - scsi: lpfc: Delay unregistering from transport until GIDFT or ADISC completes (Dick Kennedy) [1989265] - scsi: lpfc: Enable adisc discovery after RSCN by default (Dick Kennedy) [1989265] - scsi: lpfc: Use PBDE feature enabled bit to determine PBDE support (Dick Kennedy) [1989265] - scsi: lpfc: Clear outstanding active mailbox during PCI function reset (Dick Kennedy) [1989265] - scsi: lpfc: Fix KASAN slab-out-of-bounds in lpfc_unreg_rpi() routine (Dick Kennedy) [1989265] - scsi: lpfc: Remove REG_LOGIN check requirement to issue an ELS RDF (Dick Kennedy) [1989265] - scsi: lpfc: Fix NULL ptr dereference with NPIV ports for RDF handling (Dick Kennedy) [1989265] - scsi: lpfc: Fix target reset handler from falsely returning FAILURE (Dick Kennedy) [1989265] - scsi: lpfc: Discovery state machine fixes for LOGO handling (Dick Kennedy) [1989265] - scsi: lpfc: Fix function description comments for vmid routines (Dick Kennedy) [1989265] - scsi: lpfc: Improve firmware download logging (Dick Kennedy) [1989265] - scsi: lpfc: Remove use of kmalloc() in trace event logging (Dick Kennedy) [1989265] - scsi: lpfc: Fix NVMe support reporting in log message (Dick Kennedy) [1989265] - scsi: lpfc: Fix build error in lpfc_scsi.c (Dick Kennedy) [1989265] - scsi: lpfc: Use list_move_tail() instead of list_del()/list_add_tail() (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Introduce VMID in I/O path (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add QFPA and VMID timeout check in worker thread (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Timeout implementation for VMID (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Append the VMID to the wqe before sending (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Implement CT commands for appid (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Functions to manage VMIDs (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Implement ELS commands for appid (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add support for VMID in mailbox command (Dick Kennedy) [1989265] - scsi: lpfc: vmid: VMID parameter initialization (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add datastructure for supporting VMID in lpfc (Dick Kennedy) [1989265] - redhat/config: Rename CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE to CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE (Waiman Long) [2018425] - kasan, kmemleak: reset tags when scanning block (Waiman Long) [2018425] - mm/kmemleak: rely on rcu for task stack scanning (Waiman Long) [2018425] - mm/kmemleak: silence KCSAN splats in checksum (Waiman Long) [2018425] - mm/kmemleak: turn kmemleak_lock and object->lock to raw_spinlock_t (Waiman Long) [2018425] - kmemleak: Do not corrupt the object_list during clean-up (Waiman Long) [2018425] - mm: kmemleak: use the memory pool for early allocations (Waiman Long) [2018425] - mm: kmemleak: simple memory allocation pool for kmemleak objects (Waiman Long) [2018425] - mm: kmemleak: make the tool tolerant to struct scan_area allocation failures (Waiman Long) [2018425] - kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K (Waiman Long) [2018425] - mm: kmemleak: disable early logging in case of error (Waiman Long) [2018425] - mm/kmemleak.c: fix unused-function warning (Waiman Long) [2018425] - kmemleak: powerpc: skip scanning holes in the .bss section (Waiman Long) [2018425] - mm: kmemleak: no need to check return value of debugfs_create functions (Waiman Long) [2018425]- powerpc/smp: Use existing L2 cache_map cpumask to find L3 cache siblings (Desnes A. Nunes do Rosario) [2013537] - powerpc/cacheinfo: Remove the redundant get_shared_cpu_map() (Desnes A. Nunes do Rosario) [2013537] - powerpc/cacheinfo: Lookup cache by dt node and thread-group id (Desnes A. Nunes do Rosario) [2013537] - Revert "thunderbolt: Hide authorized attribute if router does not support PCIe tunnels" (Torez Smith) [1969444] - thunderbolt: Add quirk for Intel Goshen Ridge DP credits (Torez Smith) [1969444] - thunderbolt: Update port credits after bonding is enabled/disabled (Torez Smith) [1969444] - thunderbolt: Wait for the lanes to actually bond (Torez Smith) [1969444] - thunderbolt: Read router preferred credit allocation information (Torez Smith) [1969444] - thunderbolt: Make tb_port_type() take const parameter (Torez Smith) [1969444] - thunderbolt: Move nfc_credits field to struct tb_path_hop (Torez Smith) [1969444] - thunderbolt: Align USB4 router wakes configuration with the CM guide (Torez Smith) [1969444] - thunderbolt: Add wake from DisplayPort (Torez Smith) [1969444] - thunderbolt: Use generic tb_nvm_[read|write]_data() for Thunderbolt 2/3 devices (Torez Smith) [1969444] - thunderbolt: Split NVM read/write generic functions out from usb4.c (Torez Smith) [1969444] - thunderbolt: Add self-authenticate support for new dock (Torez Smith) [1969444] - thunderbolt: usb4: Fix NVM read buffer bounds and offset issue (Torez Smith) [1969444] - thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue (Torez Smith) [1969444] - thunderbolt: Hide authorized attribute if router does not support PCIe tunnels (Torez Smith) [1969444] - x86/mce: Avoid infinite loop for copy from user recovery (Prarit Bhargava) [1999550] - x86/mce: Rename kill_it to kill_current_task (Prarit Bhargava) [1999550] - x86/mce: Recover from poison found while copying from user space (Prarit Bhargava) [1999550] - x86/mce: Delay clearing IA32_MCG_STATUS to the end of do_machine_check() (Prarit Bhargava) [1999550] - x86/mce: Send #MC singal from task work (Prarit Bhargava) [1999550] - redhat/config: Enable Nitro Enclaves on aarch64 (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Add fixes for checkpatch match open parenthesis reports (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Update copyright statement to include 2021 (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Add fix for the kernel-doc report (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Enable Arm64 support (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Set Bus Master for the NE PCI device (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Fixup type and simplify logic of the poll mask setup (Vitaly Kuznetsov) [2001581] - mptcp: Make mptcp_pm_nl_mp_prio_send_ack() static (Davide Caratti) [2020198] - mptcp: fix possible stall on recvmsg() (Davide Caratti) [2020198] - mptcp: don't clear MPTCP_DATA_READY in sk_wait_event() (Davide Caratti) [2020198] - net: introduce and use lock_sock_fast_nested() (Davide Caratti) [2020198] - net: add annotation for sock_{lock,unlock}_fast (Davide Caratti) [2020198] - mptcp: allow changing the 'backup' bit when no sockets are open (Davide Caratti) [2020198] - mptcp: don't return sockets in foreign netns (Davide Caratti) [2020198] - mptcp: ensure tx skbs always have the MPTCP ext (Davide Caratti) [2020198] - mptcp: full fully established support after ADD_ADDR (Davide Caratti) [2020198] - redhat/configs: Move Hyper-V configs to 'generic' (Vitaly Kuznetsov) [1949614] - redhat/configs: enable CONFIG_INPUT_KEYBOARD on Aarch64 (Vitaly Kuznetsov) [1949614] - efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN (Vitaly Kuznetsov) [1949614] - efi/libstub: arm64: Double check image alignment at entry (Vitaly Kuznetsov) [1949614] - efi/arm64: Update debug prints to reflect other entropy sources (Vitaly Kuznetsov) [1949614] - efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL failure (Vitaly Kuznetsov) [1949614] - Drivers: hv: Enable Hyper-V code to be built on ARM64 (Vitaly Kuznetsov) [1949614] - x86/Kconfig: Add new X86_HV_CALLBACK_VECTOR config symbol (Vitaly Kuznetsov) [1949614] - arm64: efi: Export screen_info (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Initialize hypervisor on boot (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Add panic handler (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Add Hyper-V hypercall and register access utilities (Vitaly Kuznetsov) [1949614] - arm64: add arch/arm64/Kbuild (Vitaly Kuznetsov) [1949614] - PCI: hv: Turn on the host bridge probing on ARM64 (Vitaly Kuznetsov) [1949614] - PCI: hv: Set up MSI domain at bridge probing time (Vitaly Kuznetsov) [1949614] - PCI: hv: Set ->domain_nr of pci_host_bridge at probing time (Vitaly Kuznetsov) [1949614] - PCI: hv: Generify PCI probing (Vitaly Kuznetsov) [1949614] - arm64: PCI: Support root bridge preparation for Hyper-V (Vitaly Kuznetsov) [1949614] - arm64: PCI: Restructure pcibios_root_bridge_prepare() (Vitaly Kuznetsov) [1949614] - PCI: Support populating MSI domains of root buses via bridges (Vitaly Kuznetsov) [1949614] - PCI: Introduce domain_nr in pci_host_bridge (Vitaly Kuznetsov) [1949614] - drivers: hv: Decouple Hyper-V clock/timer code from VMbus drivers (Vitaly Kuznetsov) [1949614] - Drivers: hv: Move Hyper-V misc functionality to arch-neutral code (Vitaly Kuznetsov) [1949614] - x86/hyperv: handling hypercall page setup for root (Vitaly Kuznetsov) [1949614] - Drivers: hv: Add arch independent default functions for some Hyper-V handlers (Vitaly Kuznetsov) [1949614] - Drivers: hv: Make portions of Hyper-V init code be arch neutral (Vitaly Kuznetsov) [1949614] - asm-generic/hyperv: Add missing #include of nmi.h (Vitaly Kuznetsov) [1949614] - PCI: hv: Support for create interrupt v3 (Vitaly Kuznetsov) [1949614] - Drivers: hv: Move Hyper-V extended capability check to arch neutral code (Vitaly Kuznetsov) [1949614] - clocksource/drivers/hyper-v: Re-enable VDSO_CLOCKMODE_HVCLOCK on X86 (Vitaly Kuznetsov) [1949614] - clocksource/drivers/hyper-v: Handle vDSO differences inline (Vitaly Kuznetsov) [1949614] - arm64: smccc: Add support for SMCCCv1.2 extended input/output registers (Vitaly Kuznetsov) [1949614] - smccc: Define vendor hyp owned service call region (Vitaly Kuznetsov) [1949614] - scsi: smartpqi: Update version to 2.1.12-055 (Don Brace) [2018317] - scsi: smartpqi: Add 3252-8i PCI id (Don Brace) [2018317] - scsi: smartpqi: Fix duplicate device nodes for tape changers (Don Brace) [2018317] - scsi: smartpqi: Fix boot failure during LUN rebuild (Don Brace) [2018317] - scsi: smartpqi: Add extended report physical LUNs (Don Brace) [2018317] - scsi: smartpqi: Avoid failing I/Os for offline devices (Don Brace) [2018317] - scsi: smartpqi: Add TEST UNIT READY check for SANITIZE operation (Don Brace) [2018317] - scsi: smartpqi: Update LUN reset handler (Don Brace) [2018317] - scsi: smartpqi: Capture controller reason codes (Don Brace) [2018317] - scsi: smartpqi: Add controller handshake during kdump (Don Brace) [2018317] - scsi: smartpqi: Update device removal management (Don Brace) [2018317] - KVM: PPC: Tick accounting should defer vtime accounting 'til after IRQ handling (Laurent Vivier) [2009312] - vhost_net: fix OoB on sendmsg() failure. (Paolo Abeni) [1922828] - scsi: qla2xxx: Update version to 10.02.06.200-k (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix returnvar.cocci warnings (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe session down detection (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe retry (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix hang on NVMe command timeouts (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe | FCP personality change (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Do secure PLOGI when auth app is present (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add N2N support for EDIF (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix hang during NVMe session tear down (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix EDIF enable flag (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Reject AUTH ELS on session down (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix stale session (Nilesh Javali) [1983874] - scsi: qla2xxx: Update version to 10.02.06.100-k (Nilesh Javali) [1983874] - scsi: qla2xxx: Sync queue idx with queue_pair_map idx (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support kdump kernel for NVMe BFS (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support kdump kernel (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NPIV create erroneous error (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix unsafe removal from linked list (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix port type info (Nilesh Javali) [1983874] - scsi: qla2xxx: Add debug print of 64G link speed (Nilesh Javali) [1983874] - scsi: qla2xxx: Show OS name and version in FDMI-1 (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support FCP2 Target (Nilesh Javali) [1983874] - scsi: qla2xxx: Adjust request/response queue size for 28xx (Nilesh Javali) [1983874] - scsi: qla2xxx: Add host attribute to trigger MPI hang (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant initialization of variable num_cnt (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix use after free in debug code (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix spelling mistakes "allloc" -> "alloc" (Nilesh Javali) [1983874] - scsi: qla2xxx: Update version to 10.02.00.107-k (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Increment command and completion counts (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add encryption to I/O path (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add doorbell notification for app (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add detection of secure device (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add authentication pass + fail bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add key update (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add extraction of auth_els from the wire (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add send, receive, and accept for auth_els (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add getfcinfo and statistic bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add start + stop bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove unused variable 'status' (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant continue statement in a for-loop (Nilesh Javali) [1983874] - scsi: qla2xxx: Add heartbeat check (Nilesh Javali) [1983874] - scsi: qla2xxx: Use list_move_tail() instead of list_del()/list_add_tail() (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove duplicate declarations (Nilesh Javali) [1983874] - scsi: qla2xxx: Log PCI address in qla_nvme_unregister_remote_port() (Nilesh Javali) [1983874] - scsi: target: qla2xxx: Wait for stop_phase1 at WWN removal (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant assignment to rval (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix error return code in qla82xx_write_flash_dword() (Nilesh Javali) [1983874] - scsi: qla2xxx: Prevent PRLI in target mode (Nilesh Javali) [1983874] - scsi: qla2xxx: Reuse existing error handling path (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove unneeded if-null-free check (Nilesh Javali) [1983874] - thermal/drivers/int340x: Do not set a wrong tcc offset on resume (David Arcari) [1997757] - thermal: core: Add new event for sending keep alive notifications (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Fix tcc setting (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Fix warning for return value (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Add PCI MMIO based thermal driver (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Split enumeration and processing part (David Arcari) [1997757] - thermal/drivers/int340x: processor_thermal: Export additional attributes (David Arcari) [1997757] - thermal/drivers/int340x: processor_thermal: Export mailbox interface (David Arcari) [1997757] - thermal/drivers/intel: Initialize RW trip to THERMAL_TEMP_INVALID (David Arcari) [1997757] - thermal: int340x: Fix unexpected shutdown at critical temperature (David Arcari) [1997757] - thermal: int340x: Support Alder Lake (David Arcari) [1997757] - thermal: int340x: processor_thermal: Correct workload type name (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add mailbox driver (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add RFIM driver (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add AlderLake PCI device id (David Arcari) [1997757] - thermal: int340x: processor_thermal: Refactor MMIO interface (David Arcari) [1997757] - thermal: int340x: Add keep alive response method (David Arcari) [1997757] - thermal: int340x: Provide notification for OEM variable change (David Arcari) [1997757] - treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1997757] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (David Arcari) [1997757] - intel_idle: Adjust the SKX C6 parameters if PC6 is disabled (David Arcari) [2003731] - intel_idle: update ICX C6 data (David Arcari) [2003731] - nbd: provide a way for userspace processes to identify device backends (Ming Lei) [1997338] - Revert "block, bfq: honor already-setup queue merges" (Ming Lei) [1997338] - blk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd (Ming Lei) [1997338] - blkcg: fix memory leak in blk_iolatency_init (Ming Lei) [1997338] - blk-mq: avoid to iterate over stale request (Ming Lei) [1997338] - blk-mq: allow 4x BLK_MAX_REQUEST_COUNT at blk_plug for multiple_queues (Ming Lei) [1997338] - block, bfq: honor already-setup queue merges (Ming Lei) [1997338] - block/mq-deadline: Move dd_queued() to fix defined but not used warning (Ming Lei) [1997338] - cryptoloop: add a deprecation warning (Ming Lei) [1997338] - Revert "block/mq-deadline: Prioritize high-priority requests" (Ming Lei) [1997338] - mq-deadline: Fix request accounting (Ming Lei) [1997338] - nbd: Aovid double completion of a request (Ming Lei) [1997338] - blk-mq: clear active_queues before clearing BLK_MQ_F_TAG_QUEUE_SHARED (Ming Lei) [1997338] - Revert "block/mq-deadline: Add cgroup support" (Ming Lei) [1997338] - kyber: make trace_block_rq call consistent with documentation (Ming Lei) [1997338] - blk-iolatency: error out if blk_get_queue() failed in iolatency_set_limit() (Ming Lei) [1997338] - blk-mq-sched: Fix blk_mq_sched_alloc_tags() error handling (Ming Lei) [1997338] - loop: reintroduce global lock for safe loop_validate_file() traversal (Ming Lei) [1997338] - blk-cgroup: prevent rcu_sched detected stalls warnings while iterating blkgs (Ming Lei) [1997338] - block: fix the problem of io_ticks becoming smaller (Ming Lei) [1997338] - block: return errors from blk_execute_rq() (Ming Lei) [1997338] - block: support polling through blk_execute_rq (Ming Lei) [1997338] - loop: rewrite loop_exit using idr_for_each_entry (Ming Lei) [1997338] - loop: split loop_lookup (Ming Lei) [1997338] - loop: don't allow deleting an unspecified loop device (Ming Lei) [1997338] - loop: move loop_ctl_mutex locking into loop_add (Ming Lei) [1997338] - loop: split loop_control_ioctl (Ming Lei) [1997338] - loop: don't call loop_lookup before adding a loop device (Ming Lei) [1997338] - loop: remove the l argument to loop_add (Ming Lei) [1997338] - loop: reduce loop_ctl_mutex coverage in loop_exit (Ming Lei) [1997338] - loop: reorder loop_exit (Ming Lei) [1997338] - loop: Fix missing discard support when using LOOP_CONFIGURE (Ming Lei) [1997338] - block: export blk_next_bio() (Ming Lei) [1997338] - rsxx: Use struct_size() in vmalloc() (Ming Lei) [1997338] - block/mq-deadline: Remove a WARN_ON_ONCE() call (Ming Lei) [1997338] - blk: Fix lock inversion between ioc lock and bfqd lock (Ming Lei) [1997338] - bfq: Remove merged request already in bfq_requests_merged() (Ming Lei) [1997338] - block: fix trace completion for chained bio (Ming Lei) [1997338] - block/partitions/msdos: Fix typo inidicator -> indicator (Ming Lei) [1997338] - block, bfq: reset waker pointer with shared queues (Ming Lei) [1997338] - block, bfq: check waker only for queues with no in-flight I/O (Ming Lei) [1997338] - block, bfq: avoid delayed merge of async queues (Ming Lei) [1997338] - block, bfq: boost throughput by extending queue-merging times (Ming Lei) [1997338] - block, bfq: consider also creation time in delayed stable merge (Ming Lei) [1997338] - block, bfq: fix delayed stable merge check (Ming Lei) [1997338] - block, bfq: let also stably merged queues enjoy weight raising (Ming Lei) [1997338] - blk-wbt: make sure throttle is enabled properly (Ming Lei) [1997338] - blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled() (Ming Lei) [1997338] - block/mq-deadline: Prioritize high-priority requests (Ming Lei) [1997338] - block/mq-deadline: Add cgroup support (Ming Lei) [1997338] - block/mq-deadline: Track I/O statistics (Ming Lei) [1997338] - block/mq-deadline: Add I/O priority support (Ming Lei) [1997338] - block/mq-deadline: Micro-optimize the batching algorithm (Ming Lei) [1997338] - block/mq-deadline: Reserve 25 of scheduler tags for synchronous requests (Ming Lei) [1997338] - block/mq-deadline: Improve the sysfs show and store macros (Ming Lei) [1997338] - block/mq-deadline: Improve compile-time argument checking (Ming Lei) [1997338] - block: mq-deadline: Fix queue restart handling (Ming Lei) [1997338] - block/mq-deadline: Rename dd_init_queue() and dd_exit_queue() (Ming Lei) [1997338] - block/mq-deadline: Remove two local variables (Ming Lei) [1997338] - block/mq-deadline: Add two lockdep_assert_held() statements (Ming Lei) [1997338] - block/mq-deadline: Add several comments (Ming Lei) [1997338] - block: Introduce the ioprio rq-qos policy (Ming Lei) [1997338] - block/blk-rq-qos: Move a function from a header file into a C file (Ming Lei) [1997338] - block/blk-cgroup: Swap the blk_throtl_init() and blk_iolatency_init() calls (Ming Lei) [1997338] - blkcg: fix memleak for iolatency (Ming Lei) [1997338] - blk-wbt: remove outdated comment (Ming Lei) [1997338] - block: Remove unnecessary elevator operation checks (Ming Lei) [1997338] - blk-mq: factor out a blk_mq_alloc_sq_tag_set helper (Ming Lei) [1997338] - block: Update blk_update_request() documentation (Ming Lei) [1997338] - blkcg: drop CLONE_IO check in blkcg_can_attach() (Ming Lei) [1997338] - aoe: remove unnecessary mutex_init() (Ming Lei) [1997338] - block: loop: fix deadlock between open and remove (Ming Lei) [1997338] - loop: scale loop device by introducing per device lock (Ming Lei) [1997338] - block/partitions/efi.c: Fix the efi_partition() kernel-doc header (Ming Lei) [1997338] - nbd: share nbd_put and return by goto put_nbd (Ming Lei) [1997338] - nbd: Fix NULL pointer in flush_workqueue (Ming Lei) [1997338] - blkdev.h: remove unused codes blk_account_rq (Ming Lei) [1997338] - block, bfq: avoid circular stable merges (Ming Lei) [1997338] - block: uapi: fix comment about block device ioctl (Ming Lei) [1997338] - block: reexpand iov_iter after read/write (Ming Lei) [1997338] - bfq/mq-deadline: remove redundant check for passthrough request (Ming Lei) [1997338] - blk-mq: bypass IO scheduler's limit_depth for passthrough request (Ming Lei) [1997338] - block: Fix sys_ioprio_set(.which=IOPRIO_WHO_PGRP) task iteration (Ming Lei) [1997338] - blk-mq: Always use blk_mq_is_sbitmap_shared (Ming Lei) [1997338] - block: add sysfs entry for virt boundary mask (Ming Lei) [1997338] - block, bfq: merge bursts of newly-created queues (Ming Lei) [1997338] - block, bfq: keep shared queues out of the waker mechanism (Ming Lei) [1997338] - block, bfq: fix weight-raising resume with !low_latency (Ming Lei) [1997338] - block, bfq: make shared queues inherit wakers (Ming Lei) [1997338] - block, bfq: put reqs of waker and woken in dispatch list (Ming Lei) [1997338] - block, bfq: always inject I/O of queues blocked by wakers (Ming Lei) [1997338] - blk-mq: Sentence reconstruct for better readability (Ming Lei) [1997338] - block: update a few comments in uapi/linux/blkpg.h (Ming Lei) [1997338] - block: don't ignore REQ_NOWAIT for direct IO (Ming Lei) [1997338] - block: clear GD_NEED_PART_SCAN later in bdev_disk_changed (Ming Lei) [1997338] - block: Discard page cache of zone reset target range (Ming Lei) [1997338] - block: Suppress uevent for hidden device when removed (Ming Lei) [1997338] - block: rsxx: fix error return code of rsxx_pci_probe() (Ming Lei) [1997338] - block: Fix REQ_OP_ZONE_RESET_ALL handling (Ming Lei) [1997338] - blk-cgroup: Fix the recursive blkg rwstat (Ming Lei) [1997338] - rsxx: Return -EFAULT if copy_to_user() fails (Ming Lei) [1997338] - block/bfq: update comments and default value in docs for fifo_expire (Ming Lei) [1997338] - block: Drop leftover references to RQF_SORTED (Ming Lei) [1997338] - blktrace: fix documentation for blk_fill_rw() (Ming Lei) [1997338] - blktrace: remove debugfs file dentries from struct blk_trace (Ming Lei) [1997338] - block: get rid of the trace rq insert wrapper (Ming Lei) [1997338] - blktrace: fix blk_rq_merge documentation (Ming Lei) [1997338] - blktrace: fix blk_rq_issue documentation (Ming Lei) [1997338] - blktrace: add blk_fill_rwbs documentation comment (Ming Lei) [1997338] - block: remove superfluous param in blk_fill_rwbs() (Ming Lei) [1997338] - block: Remove unused blk_pm_*() function definitions (Ming Lei) [1997338] - blk-mq: Use llist_head for blk_cpu_done (Ming Lei) [1997338] - blk-mq: Always complete remote completions requests in softirq (Ming Lei) [1997338] - block: use bi_max_vecs to find the bvec pool (Ming Lei) [1997338] - md/raid10: remove dead code in reshape_request (Ming Lei) [1997338] - block: remove the 1 and 4 vec bvec_slabs entries (Ming Lei) [1997338] - block: streamline bvec_alloc (Ming Lei) [1997338] - block: factor out a bvec_alloc_gfp helper (Ming Lei) [1997338] - block: move struct biovec_slab to bio.c (Ming Lei) [1997338] - block: reuse BIO_INLINE_VECS for integrity bvecs (Ming Lei) [1997338] - block: move three bvec helpers declaration into private helper (Ming Lei) [1997338] - blk-cgroup: Remove obsolete macro (Ming Lei) [1997338] - block: use an on-stack bio in blkdev_issue_flush (Ming Lei) [1997338] - blkcg: delete redundant get/put operations for queue (Ming Lei) [1997338] - block: unexport truncate_bdev_range (Ming Lei) [1997338] - blk: wbt: remove unused parameter from wbt_should_throttle (Ming Lei) [1997338] - bdev: Do not return EBUSY if bdev discard races with write (Ming Lei) [1997338] - bfq: don't duplicate code for different paths (Ming Lei) [1997338] - block: remove the request_queue to argument request based tracepoints (Ming Lei) [1997338] - virtio_net: disable cb aggressively (Stefan Hajnoczi) [1965914] - virtio: fix up virtio_disable_cb (Stefan Hajnoczi) [1965914] - virtio_net: move txq wakeups under tx q lock (Stefan Hajnoczi) [1965914] - virtio_net: move tx vq operation under tx queue lock (Stefan Hajnoczi) [1965914] - virtio_net: bulk free tx skbs (Stefan Hajnoczi) [1965914] - [s390] s390/qdio: propagate error when cancelling a ccw fails (Mete Durlu) [1984989] - [s390] s390/qdio: improve roll-back after error on ESTABLISH ccw (Mete Durlu) [1984989] - [s390] s390/qdio: cancel the ESTABLISH ccw after timeout (Mete Durlu) [1984989] - [s390] scsi: zfcp: Lift Request Queue tasklet & timer from qdio (Mete Durlu) [1984989] - [s390] scsi: zfcp: Move the position of put_device() (Mete Durlu) [1984989] - [s390] scsi: zfcp: Clean up sysfs code for SFP diagnostics (Mete Durlu) [1984989] - [s390] scsi: zfcp: Fix sysfs roll-back on error in zfcp_adapter_enqueue() (Mete Durlu) [1984989] - [s390] scsi: zfcp: Fix indentation coding style issue (Mete Durlu) [1984989] - [s390] scsi: zfcp: Remove unneeded INIT_LIST_HEAD() for FSF requests (Mete Durlu) [1984989] - x86/fpu/xstate: Clear xstate header in copy_xstate_to_uabi_buf() again (Prarit Bhargava) [1981448] - x86/fpu/signal: Let xrstor handle the features to init (Prarit Bhargava) [1981448] - x86/fpu/signal: Handle #PF in the direct restore path (Prarit Bhargava) [1981448] - x86/fpu: Return proper error codes from user access functions (Prarit Bhargava) [1981448] - x86/fpu/signal: Split out the direct restore code (Prarit Bhargava) [1981448] - x86/fpu/signal: Sanitize copy_user_to_fpregs_zeroing() (Prarit Bhargava) [1981448] - x86/fpu/signal: Sanitize the xstate check on sigframe (Prarit Bhargava) [1981448] - x86/fpu/signal: Remove the legacy alignment check (Prarit Bhargava) [1981448] - x86/fpu/signal: Move initial checks into fpu__restore_sig() (Prarit Bhargava) [1981448] - x86/fpu: Mark init_fpstate __ro_after_init (Prarit Bhargava) [1981448] - x86/pkru: Remove xstate fiddling from write_pkru() (Prarit Bhargava) [1981448] - x86/fpu: Don't store PKRU in xstate in fpu_reset_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Remove PKRU handling from switch_fpu_finish() (Prarit Bhargava) [1981448] - x86/fpu: Mask PKRU from kernel XRSTOR[S] operations (Prarit Bhargava) [1981448] - x86/fpu: Hook up PKRU into ptrace() (Prarit Bhargava) [1981448] - x86/fpu: Add PKRU storage outside of task XSAVE buffer (Prarit Bhargava) [1981448] - x86/fpu: Dont restore PKRU in fpregs_restore_userspace() (Prarit Bhargava) [1981448] - x86/fpu: Rename xfeatures_mask_user() to xfeatures_mask_uabi() (Prarit Bhargava) [1981448] - x86/fpu: Move FXSAVE_LEAK quirk info __copy_kernel_to_fpregs() (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_kernel_to_fpregs() to restore_fpregs_from_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Rename __fpregs_load_activate() to fpregs_restore_userregs() (Prarit Bhargava) [1981448] - x86/fpu: Clean up the fpu__clear() variants (Prarit Bhargava) [1981448] - x86/fpu: Rename fpu__clear_all() to fpu_flush_thread() (Prarit Bhargava) [1981448] - x86/fpu: Use pkru_write_default() in copy_init_fpstate_to_fpregs() (Prarit Bhargava) [1981448] - x86/cpu: Write the default PKRU value when enabling PKE (Prarit Bhargava) [1981448] - x86/pkru: Provide pkru_write_default() (Prarit Bhargava) [1981448] - x86/pkru: Provide pkru_get_init_value() (Prarit Bhargava) [1981448] - x86/cpu: Sanitize X86_FEATURE_OSPKE (Prarit Bhargava) [1981448] - x86/pkeys: Move read_pkru() and write_pkru() (Prarit Bhargava) [1981448] - x86/fpu: Rename and sanitize fpu__save/copy() (Prarit Bhargava) [1981448] - x86/fpu/xstate: Sanitize handling of independent features (Prarit Bhargava) [1981448] - x86/fpu: Rename "dynamic" XSTATEs to "independent" (Prarit Bhargava) [1981448] - x86/fpu: Rename initstate copy functions (Prarit Bhargava) [1981448] - x86/fpu: Get rid of the FNSAVE optimization (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_fpregs_to_fpstate() to save_fpregs_to_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Deduplicate copy_uabi_from_user/kernel_to_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Rename xstate copy functions which are related to UABI (Prarit Bhargava) [1981448] - x86/fpu: Rename fregs-related copy functions (Prarit Bhargava) [1981448] - x86/math-emu: Rename frstor() (Prarit Bhargava) [1981448] - x86/fpu: Rename fxregs-related copy functions (Prarit Bhargava) [1981448] - x86/fpu: Get rid of CONFIG_AS_FXSAVEQ (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_user_to_xregs() and copy_xregs_to_user() (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_xregs_to_kernel() and copy_kernel_to_xregs() (Prarit Bhargava) [1981448] - x86/fpu: Get rid of copy_supervisor_to_kernel() (Prarit Bhargava) [1981448] - x86/fpu: Cleanup arch_set_user_pkey_access() (Prarit Bhargava) [1981448] - x86/kvm: Avoid looking up PKRU in XSAVE buffer (Prarit Bhargava) [1981448] - x86/fpu: Get rid of using_compacted_format() (Prarit Bhargava) [1981448] - x86/fpu: Move fpu__write_begin() to regset (Prarit Bhargava) [1981448] - x86/fpu/regset: Move fpu__read_begin() into regset (Prarit Bhargava) [1981448] - x86/fpu: Remove fpstate_sanitize_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Use copy_xstate_to_uabi_buf() in fpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Use copy_xstate_to_uabi_buf() in xfpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Make copy_xstate_to_kernel() usable for [x]fpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Clean up fpregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Fail ptrace() requests that try to set invalid MXCSR values (Prarit Bhargava) [1981448] - x86/fpu: Rewrite xfpregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Simplify PTRACE_GETREGS code (Prarit Bhargava) [1981448] - x86/fpu: Reject invalid MXCSR values in copy_kernel_to_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Sanitize xstateregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Move inlines where they belong (Prarit Bhargava) [1981448] - x86/fpu: Get rid of fpu__get_supported_xfeatures_mask() (Prarit Bhargava) [1981448] - x86/fpu: Make xfeatures_mask_all __ro_after_init (Prarit Bhargava) [1981448] - x86/fpu: Mark various FPU state variables __ro_after_init (Prarit Bhargava) [1981448] - x86/pkeys: Revert a5eff7259790 ("x86/pkeys: Add PKRU value to init_fpstate") (Prarit Bhargava) [1981448] - x86/fpu: Fix copy_xstate_to_kernel() gap handling (Prarit Bhargava) [1981448] - x86/fpu: Limit xstate copy size in xstateregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Make init_fpstate correct with optimized XSAVE (Prarit Bhargava) [1981448] - x86/fpu: Preserve supervisor states in sanitize_restored_user_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Reset state for all signal restore failures (Prarit Bhargava) [1981448] - x86/signal: Introduce helpers to get the maximum signal frame size (Prarit Bhargava) [1981448] - x86/fpu: Fix various typos in comments (Prarit Bhargava) [1981448] - x86/fpu/xstate: Use sizeof() instead of a constant (Prarit Bhargava) [1981448] - x86/fpu: Handle FPU-related and clearcpuid command line arguments earlier (Prarit Bhargava) [1981448] - x86/fpu: Allow multiple bits in clearcpuid= parameter (Prarit Bhargava) [1981448] - x86: switch to ->regset_get() (Prarit Bhargava) [1981448] - regset: new method and helpers for it (Prarit Bhargava) [1981448] - copy_regset_to_user(): do all copyout at once. (Prarit Bhargava) [1981448] - introduction of regset ->get() wrappers, switching ELF coredumps to those (Prarit Bhargava) [1981448] - user_regset_copyout_zero(): use clear_user() (Prarit Bhargava) [1981448] - x86: kill dump_fpu() (Prarit Bhargava) [1981448] - x86: copy_fpstate_to_sigframe(): have fpregs_soft_get() use kernel buffer (Prarit Bhargava) [1981448] - x86/pkeys: Add check for pkey "overflow" (Prarit Bhargava) [1981448] - x86/fpu: Deactivate FPU state after failure during state load (Prarit Bhargava) [1981448] - x86/fpu: Use sizeof_field() macro (Prarit Bhargava) [1981448] - x86/fpu: Inline fpu__xstate_clear_all_cpu_caps() (Prarit Bhargava) [1981448] - x86/fpu: Make 'no387' and 'nofxsr' command line options useful (Prarit Bhargava) [1981448] - x86/fpu: Remove the fpu__save() export (Prarit Bhargava) [1981448] - x86/process: Add AVX-512 usage elapsed time to /proc/pid/arch_status (Prarit Bhargava) [1981448] - x86/fpu: Add SPDX license identifier - Makefile/Kconfig (Prarit Bhargava) [1981448] - x86/fpu: Add SPDX license identifier for missed files (Prarit Bhargava) [1981448] - x86/fpu: Fix __user annotations (Prarit Bhargava) [1981448] - x86/fpu: Move init_xstate_size() to __init section (Prarit Bhargava) [1981448] - x86/fpu: Update comment for __raw_xsave_addr() (Prarit Bhargava) [1981448] - scsi: qla2xxx: Fix kernel crash when accessing port_speed sysfs file (Nilesh Javali) [1981433] - scsi: core: Put LLD module refcnt after SCSI device is released (Ming Lei) [1996509] - scsi: iscsi: Fix set_param() handling (Chris Leech) [2011470] - scsi: iscsi: Fix iscsi_task use after free (Chris Leech) [2011470] - scsi: iscsi: Adjust iface sysfs attr detection (Chris Leech) [2011470] - scsi: iscsi: Fix iface sysfs attr detection (Chris Leech) [2011470] - scsi: iscsi: Move pool freeing (Chris Leech) [2011470] - scsi: iscsi: Hold task ref during TMF timeout handling (Chris Leech) [2011470] - scsi: iscsi: Flush block work before unblock (Chris Leech) [2011470] - scsi: iscsi: Fix completion check during abort races (Chris Leech) [2011470] - scsi: iscsi: Fix shost->max_id use (Chris Leech) [2011470] - scsi: iscsi: Fix conn use after free during resets (Chris Leech) [2011470] - scsi: iscsi: Get ref to conn during reset handling (Chris Leech) [2011470] - scsi: iscsi: Have abort handler get ref to conn (Chris Leech) [2011470] - scsi: iscsi: Add iscsi_cls_conn refcount helpers (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Start socket shutdown during conn stop (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Set no linger (Chris Leech) [2011470] - scsi: iscsi: Fix in-kernel conn failure handling (Chris Leech) [2011470] - scsi: iscsi: Rel ref after iscsi_lookup_endpoint() (Chris Leech) [2011470] - scsi: iscsi: Use system_unbound_wq for destroy_work (Chris Leech) [2011470] - scsi: iscsi: Force immediate failure during shutdown (Chris Leech) [2011470] - scsi: iscsi: Drop suspend calls from ep_disconnect (Chris Leech) [2011470] - scsi: iscsi: Stop queueing during ep_disconnect (Chris Leech) [2011470] - scsi: iscsi: Add task completion helper (Chris Leech) [2011470] - scsi: iscsi: Fix iSCSI cls conn state (Chris Leech) [2011470] - scsi: iscsi: Fix race condition between login and sync thread (Chris Leech) [2011470] - scsi: iscsi: Drop session lock in iscsi_session_chkready() (Chris Leech) [2011470] - scsi: libiscsi: Reset max/exp cmdsn during recovery (Chris Leech) [2011470] - scsi: iscsi_tcp: Fix shost can_queue initialization (Chris Leech) [2011470] - scsi: libiscsi: Add helper to calculate max SCSI cmds per session (Chris Leech) [2011470] - scsi: libiscsi: Fix iSCSI host workq destruction (Chris Leech) [2011470] - scsi: libiscsi: Fix iscsi_task use after free() (Chris Leech) [2011470] - scsi: libiscsi: Drop taskqueuelock (Chris Leech) [2011470] - scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling (Chris Leech) [2011470] - scsi: iscsi: Fix inappropriate use of put_device() (Chris Leech) [2011470] - scsi: iscsi: Fail session and connection on transport registration failure (Chris Leech) [2011470] - scsi: drivers: base: Propagate errors through the transport component (Chris Leech) [2011470] - scsi: drivers: base: Support atomic version of attribute_container_device_trigger (Chris Leech) [2011470] - scsi: libiscsi: Fix NOP race condition (Chris Leech) [2011470] - scsi: libiscsi: use sendpage_ok() in iscsi_tcp_segment_map() (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling getpeername() (Chris Leech) [2011470] - scsi: iscsi: Do not put host in iscsi_set_flashnode_param() (Chris Leech) [2011470] - scsi: iscsi: Register sysfs for workqueue iscsi_destroy (Chris Leech) [2011470] - scsi: iscsi: Remove sessdestroylist (Chris Leech) [2011470] - scsi: iscsi: Optimize work queue flush use (Chris Leech) [2011470] - scsi: iscsi: Delay freeing target_id (Chris Leech) [2011470] - scsi: iscsi: Change iSCSI workqueue max_active back to 1 (Chris Leech) [2011470] - scsi: iscsi: Fix reference count leak in iscsi_boot_create_kobj (Chris Leech) [2011470]- scsi: qedf: Fix error codes in qedf_alloc_global_queues() (Nilesh Javali) [1983908] - scsi: qedf: Add check to synchronize abort and flush (Nilesh Javali) [1983908] - scsi: qedf: Use DEVICE_ATTR_RO() macro (Nilesh Javali) [1983908] - scsi: qedf: Use vzalloc() instead of vmalloc()/memset(0) (Nilesh Javali) [1983908] - scsi: qedf: Drop unnecessary NULL checks after container_of() (Nilesh Javali) [1983908] - scsi: qedf: Use devlink to report errors and recovery (Nilesh Javali) [1983908] - scsi: qedf: Enable devlink support (Nilesh Javali) [1983908] - scsi: qedf: Remove unused include of linux/version.h (Nilesh Javali) [1983908] - qed: implement devlink dump (Nilesh Javali) [1983908] - qed*: make use of devlink recovery infrastructure (Nilesh Javali) [1983908] - qed: use devlink logic to report errors (Nilesh Javali) [1983908] - qed: health reporter init deinit seq (Nilesh Javali) [1983908] - qed: implement devlink info request (Nilesh Javali) [1983908] - qed/qede: make devlink survive recovery (Nilesh Javali) [1983908] - qed: move out devlink logic into a new file (Nilesh Javali) [1983908] - i40e: fix endless loop under rtnl (Stefan Assmann) [1903921] - ovl: fix missing negative dentry check in ovl_rename() (Miklos Szeredi) [2010887] {CVE-2021-20321} - [RHEL8.6 BZ 1849234] cifs: report error instead of invalid when revalidating a dentry fails (Ronnie Sahlberg) [1849234] - mei: me: emmitsburg workstation DID (David Arcari) [2014195] - redhat/configs: Add CONFIG_INTEL_QEP (Prarit Bhargava) [1783559] - redhat/configs: Add CONFIG_COUNTER (Prarit Bhargava) [1783559] - counter: Rename counter_count_function to counter_function (Prarit Bhargava) [1783559] - counter: Rename counter_signal_value to counter_signal_level (Prarit Bhargava) [1783559] - counter: Standardize to ERANGE for limit exceeded errors (Prarit Bhargava) [1783559] - counter: intel-qep: Remove linux/bitops.h include (Prarit Bhargava) [1783559] - counter: intel-qep: Use to_pci_dev() helper (Prarit Bhargava) [1783559] - counter: intel-qep: Mark PM callbacks with __maybe_unused (Prarit Bhargava) [1783559] - counter: Add support for Intel Quadrature Encoder Peripheral (Prarit Bhargava) [1783559] - counter: Simplify the count_read and count_write callbacks (Prarit Bhargava) [1783559] - drivers/counter: Add SPDX license identifier - Makefile/Kconfig (Prarit Bhargava) [1783559] - counter: Introduce the Generic Counter interface (Prarit Bhargava) [1783559] - bpf: Fix integer overflow in prealloc_elems_and_freelist() (Yauheni Kaliuta) [2010492] {CVE-2021-41864} - audit: move put_tree() to avoid trim_trees refcount underflow and UAF (Richard Guy Briggs) [1978123] - tpm: ibmvtpm: Avoid error message when process gets signal while waiting (Štěpán Horáček) [1981473] - efi/tpm: Differentiate missing and invalid final event log table. (Štěpán Horáček) [1981473] - tpm: Replace WARN_ONCE() with dev_err_once() in tpm_tis_status() (Štěpán Horáček) [1981473] - tpm_tis: Use DEFINE_RES_MEM() to simplify code (Štěpán Horáček) [1981473] - tpm: fix some doc warnings in tpm1-cmd.c (Štěpán Horáček) [1981473] - tpm_tis_spi: add missing SPI device ID entries (Štěpán Horáček) [1981473] - tpm: add longer timeout for TPM2_CC_VERIFY_SIGNATURE (Štěpán Horáček) [1981473] - tpm_tis_spi: set default probe function if device id not match (Štěpán Horáček) [1981473] - tpm_crb: Use IOMEM_ERR_PTR when function returns iomem (Štěpán Horáček) [1981473] - tools/testing/scatterlist: Fix overflow of max segment size (Rafael Aquini) [2016426] - drm: Remove SCATTERLIST_MAX_SEGMENT (Rafael Aquini) [2016426] - lib/scatterlist: Fix wrong update of orig_nents (Rafael Aquini) [2016426] - lib/scatterlist: Provide a dedicated function to support table append (Rafael Aquini) [2016426] - tools/testing/scatterlist: Test dynamic __sg_alloc_table_from_pages (Rafael Aquini) [2016426] - tools/testing/scatterlist: Fix test to compile and run (Rafael Aquini) [2016426] - tools/testing/scatterlist: Show errors in human readable form (Rafael Aquini) [2016426] - tools/testing/scatterlist: Rejuvenate bit-rotten test (Rafael Aquini) [2016426] - Kconfig.debug: drop selecting non-existing HARDLOCKUP_DETECTOR_ARCH (Rafael Aquini) [2016426] - buildid: only consider GNU notes for build ID parsing (Rafael Aquini) [2016426] - lib/decompressors: remove set but not used variabled 'level' (Rafael Aquini) [2016426] - lib/math/rational.c: fix divide by zero (Rafael Aquini) [2016426] - lockdep/selftests: Fix selftests vs PROVE_RAW_LOCK_NESTING (Rafael Aquini) [2016426] - kunit: Fix result propagation for parameterised tests (Rafael Aquini) [2016426] - bug: Remove redundant condition check in report_bug (Rafael Aquini) [2016426] - zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of dfltcc_syms.c (Rafael Aquini) [2016426] - zlib: export S390 symbols for zlib modules (Rafael Aquini) [2016426] - lib/crc32test: remove extra local_irq_disable/enable (Rafael Aquini) [2016426] - random32: add a selftest for the prandom32 code (Rafael Aquini) [2016426] - random32: add noise from network and scheduling activity (Rafael Aquini) [2016426] - random32: make prandom_u32() output unpredictable (Rafael Aquini) [2016426] - lib: Correct comment of prandom_seed (Rafael Aquini) [2016426] - lib/crc32.c: fix trivial typo in preprocessor condition (Rafael Aquini) [2016426] - lib/crc: Use consistent naming for CRC-32 polynomials (Rafael Aquini) [2016426] - lib/crc: Move polynomial definition to separate header (Rafael Aquini) [2016426] - kstrto*: do not describe simple_strto*() as obsolete/replaced (Rafael Aquini) [2016426] - kstrto*: correct documentation references to simple_strto*() (Rafael Aquini) [2016426] - kernel.h: update comment about simple_strto() functions (Rafael Aquini) [2016426] - lib/bitmap.c: fix bitmap_cut() for partial overlapping case (Rafael Aquini) [2016426] - devres: keep both device name and resource name in pretty name (Rafael Aquini) [2016426] - crc-t10dif: Fix potential crypto notify dead-lock (Rafael Aquini) [2016426] - vsprintf: don't obfuscate NULL and error pointers (Rafael Aquini) [2016426] - lib/stackdepot.c: fix global out-of-bounds in stack_slabs (Rafael Aquini) [2016426] - lib/scatterlist.c: adjust indentation in __sg_alloc_table (Rafael Aquini) [2016426] - lib/stackdepot: Fix outdated comments (Rafael Aquini) [2016426] - lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more() (Rafael Aquini) [2016426] - lib: Remove select of inexistant GENERIC_IO (Rafael Aquini) [2016426] - lib: test_user_copy: style cleanup (Rafael Aquini) [2016426] - usercopy: Add parentheses around assignment in test_copy_struct_from_user (Rafael Aquini) [2016426] - lib: textsearch: fix escapes in example code (Rafael Aquini) [2016426] - Partially revert "kfifo: fix kfifo_alloc() and kfifo_init()" (Rafael Aquini) [2016426] - lib: logic_pio: Fix RCU usage (Rafael Aquini) [2016426] - lib/test_overflow.c: avoid tainting the kernel and fix wrap size (Rafael Aquini) [2016426] - lib/test_string.c: avoid masking memset16/32/64 failures (Rafael Aquini) [2016426] - lib/scatterlist: Fix mapping iterator when sg->offset is greater than PAGE_SIZE (Rafael Aquini) [2016426] - lib/mpi: Fix karactx leak in mpi_powm (Rafael Aquini) [2016426] - sbitmap: fix improper use of smp_mb__before_atomic() (Rafael Aquini) [2016426] - kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice. (Rafael Aquini) [2016426] - lib/div64.c: off by one in shift (Rafael Aquini) [2016426] - assoc_array: Fix shortcut creation (Rafael Aquini) [2016426] - lib/test_kmod.c: potential double free in error handling (Rafael Aquini) [2016426] - devres: always use dev_name() in devm_ioremap_resource() (Rafael Aquini) [2016426] - lib: fix build failure in CONFIG_DEBUG_VIRTUAL test (Rafael Aquini) [2016426] - test_firmware: fix error return getting clobbered (Rafael Aquini) [2016426] - lib: Fix ia64 bootloader linkage (Rafael Aquini) [2016426] - lib/test_hexdump.c: fix failure on big endian cpu (Rafael Aquini) [2016426] - hv_utils: Set the maximum packet size for VSS driver to the length of the receive buffer (Cathy Avery) [2012842] - scsi: storvsc: Log TEST_UNIT_READY errors as warnings (Cathy Avery) [2012842] - scsi: storvsc: Correctly handle multiple flags in srb_status (Cathy Avery) [2012842] - scsi: storvsc: Update error logging (Cathy Avery) [2012842] - scsi: storvsc: Miscellaneous code cleanups (Cathy Avery) [2012842] - scsi: storvsc: Use blk_mq_unique_tag() to generate requestIDs (Cathy Avery) [2012842] - Drivers: hv: vmbus: Copy packets sent by Hyper-V out of the ring buffer (Cathy Avery) [2012842] - scsi: core: Fix hang of freezing queue between blocking and running device (Ewan D. Milne) [2012323] - scsi: core: Fix capacity set to zero after offlinining device (Ewan D. Milne) [2012323] - scsi: sr: Return correct event when media event code is 3 (Ewan D. Milne) [2012323] - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO (Ewan D. Milne) [2012323] - scsi: scsi_dh_rdac: Avoid crash during rdac_bus_attach() (Ewan D. Milne) [2012323] - scsi: core: Fix bad pointer dereference when ehandler kthread is invalid (Ewan D. Milne) [2012323] - scsi: core: Fix the documentation of the scsi_execute() time parameter (Ewan D. Milne) [2012323] - scsi: core: Retry I/O for Notify (Enable Spinup) Required error (Ewan D. Milne) [2012323] - scsi: sd: Call sd_revalidate_disk() for ioctl(BLKRRPART) (Ewan D. Milne) [2012323] - scsi: core: Inline scsi_mq_alloc_queue() (Ewan D. Milne) [2012323] - scsi: sr: Return appropriate error code when disk is ejected (Ewan D. Milne) [2012323] - scsi: core: Only put parent device if host state differs from SHOST_CREATED (Ewan D. Milne) [2012323] - scsi: core: Put .shost_dev in failure path if host state changes to RUNNING (Ewan D. Milne) [2012323] - scsi: core: Fix failure handling of scsi_add_host_with_dma() (Ewan D. Milne) [2012323] - scsi: core: Fix error handling of scsi_host_alloc() (Ewan D. Milne) [2012323] - scsi: st: Return error code in st_scsi_execute() (Ewan D. Milne) [2012323] - scsi: scsi_dh_alua: Retry RTPG on a different path after failure (Ewan D. Milne) [2012323] - scsi: scsi_transport_fc: Remove double FC_FPORT_DELETED in mask creation (Ewan D. Milne) [2012323] - scsi: core: Fix a comment in function scsi_host_dev_release() (Ewan D. Milne) [2012323] - scsi: scsi_debug: Drop if with an always false condition (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix cmd_per_lun, set to max_queue (Ewan D. Milne) [2012323] - scsi: sd: Introduce a new local variable in sd_check_events() (Ewan D. Milne) [2012323] - scsi: core: Modify the scsi_send_eh_cmnd() return value for the SDEV_BLOCK case (Ewan D. Milne) [2012323] - scsi: core: Rename scsi_softirq_done() into scsi_complete() (Ewan D. Milne) [2012323] - scsi: core: Remove an incorrect comment (Ewan D. Milne) [2012323] - scsi: core: Make the scsi_alloc_sgtables() documentation more accurate (Ewan D. Milne) [2012323] - scsi: scsi_dh_alua: Prevent duplicate pg info print in alua_rtpg() (Ewan D. Milne) [2012323] - scsi: core: scsi_host_cmd_pool is declared twice (Ewan D. Milne) [2012323] - scsi: core: Remove duplicate declarations (Ewan D. Milne) [2012323] - scsi: core: Fix comment typo (Ewan D. Milne) [2012323] - scsi: scsi_dh: Fix a typo (Ewan D. Milne) [2012323] - scsi: sd: Fix function name in header (Ewan D. Milne) [2012323] - scsi: sd_zbc: Place function name into header (Ewan D. Milne) [2012323] - scsi: sd_zbc: Update write pointer offset cache (Ewan D. Milne) [2012323] - scsi: st: Fix a use after free in st_open() (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix cmd duration calculation (Ewan D. Milne) [2012323] - scsi: core: Set shost as hctx driver_data (Ewan D. Milne) [2012323] - scsi: scsi_debug: Add new defer type for mq_poll (Ewan D. Milne) [2012323] - scsi: scsi_debug: mq_poll support (Ewan D. Milne) [2012323] - scsi: core: Add mq_poll support to SCSI layer (Ewan D. Milne) [2012323] - scsi: sd: Remove obsolete variable in sd_remove() (Ewan D. Milne) [2012323] - scsi: handle zone resources errors (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix scp is NULL errors (Ewan D. Milne) [2012323] - scsi: scsi_debug: Improve command duration calculation (Ewan D. Milne) [2012323] - x86/platform: Increase maximum GPIO number for X86_64 (David Arcari) [2016796] - pinctrl: pinconf-generic: Add function parameter description 'pctldev' (David Arcari) [2016796] - pinctrl: core: Remove duplicated word from devm_pinctrl_unregister() (David Arcari) [2016796] - pinctrl: tigerlake: Fix GPIO mapping for newer version of software (David Arcari) [2016796] - pinctrl: tigerlake: Add Alder Lake-M ACPI ID (David Arcari) [2016796] - docs: update pin-control.rst references (David Arcari) [2016796] - pinctrl: Keep enum pin_config_param ordered by name (part 2) (David Arcari) [2016796] - pinctrl: core: Show pin numbers for the controllers with base = 0 (David Arcari) [2016796] - pinctrl: Add PIN_CONFIG_MODE_PWM to enum pin_config_param (David Arcari) [2016796] - pinctrl: Introduce MODE group in enum pin_config_param (David Arcari) [2016796] - pinctrl: Keep enum pin_config_param ordered by name (David Arcari) [2016796] - pinctrl: core: Fix kernel doc string for pin_get_name() (David Arcari) [2016796] - pinctrl: intel: check REVID register value for device presence (David Arcari) [2016796] - pinctrl: intel: No need to disable IRQs in the handler (David Arcari) [2016796] - pinctrl: core: Set ret to 0 when group is skipped (David Arcari) [2016796] - pinctrl: core: Handling pinmux and pinconf separately (David Arcari) [2016796] - Documentation: rename pinctl to pin-control (David Arcari) [2016796] - pinctrl: pinmux: Add pinmux-select debugfs file (David Arcari) [2016796] - pinctrl: use to octal permissions for debugfs files (David Arcari) [2016796] - pinctrl: intel: Show the GPIO base calculation explicitly (David Arcari) [2016796] - pinctrl: pinmux: add function selector to pinmux-functions (David Arcari) [2016796] - pinctrl: intel: Convert capability list to features (David Arcari) [2016796] - pinctrl: intel: Drop unnecessary check for predefined features (David Arcari) [2016796] - pinctrl: intel: Split intel_pinctrl_add_padgroups() for better maintenance (David Arcari) [2016796] - pinctrl: remove empty lines in pinctrl subsystem (David Arcari) [2016796] - pinctrl: intel: Actually disable Tx and Rx buffers on GPIO request (David Arcari) [2016796] - pinctrl: Remove hole in pinctrl_gpio_range (David Arcari) [2016796] - pinctrl: core: Add missing #ifdef CONFIG_GPIOLIB (David Arcari) [2016796] - pinctrl: intel: Set default bias in case no particular value given (David Arcari) [2016796] - pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm (David Arcari) [2016796] - pinctrl: core: print gpio in pins debugfs file (David Arcari) [2016796] - pinctrl: pinmux: Add some missing parameter descriptions (David Arcari) [2016796] - pinctrl: core: Fix a bunch of kerneldoc issues (David Arcari) [2016796] - pinctrl: Define of_pinctrl_get() dummy for !PINCTRL (David Arcari) [2016796] - pinctrl: core: Remove extra kref_get which blocks hogs being freed (David Arcari) [2016796] - pinctrl: Export some needed symbols at module load time (David Arcari) [2016796] - pinctrl: core: Add pinctrl_select_default_state() and export it (David Arcari) [2016796] - pinctrl: make pinconf.h self-contained (David Arcari) [2016796] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (David Arcari) [2016796] - pinctrl: remove pinctrl/machine.h inclusion from pinctrl/pinconf.h (David Arcari) [2016796] - pinctrl: Document pin_config_group_get() return codes like pin_config_get() (David Arcari) [2016796] - pinctrl: intel: Convert to use SPDX identifier (David Arcari) [2016796] - mm/swapfile: fix an integer overflow in swap_show() (Rafael Aquini) [2008812] - mm: swapfile: fix /proc/swaps heading and Size/Used/Priority alignment (Rafael Aquini) [2008812] - Makefile: update early devel phase flag (Augusto Caringi) [2000679] - KVM: s390: Enable specification exception interpretation (Thomas Huth) [1984894] - KVM: x86: Update vCPU's hv_clock before back to guest when tsc_offset is adjusted (Marcelo Tosatti) [2007928] - ibmvnic: Remove the proper scrq flush (Desnes A. Nunes do Rosario) [2014097] - selftests/net/ipsec: Add test for xfrm_spdattr_type_t (Hangbin Liu) [2018056] - selftest/net/ipsec.c: Remove unneeded semicolon (Hangbin Liu) [2018056] - selftest/net/xfrm: Add test for ipsec tunnel (Hangbin Liu) [2018056] - ipv6: add ip6_sock_set_v6only (Josef Oskera) [2008908] - ipv6: When forwarding count rx stats on the orig netdev (Hangbin Liu) [2017704] - ipv6: make exception cache less predictible (Hangbin Liu) [2017704] - ipv6: use siphash in rt6_exception_hash() (Hangbin Liu) [2017704] - ipv6: use jhash2() in rt6_exception_hash() (Hangbin Liu) [2017704] - net/l2tp: Fix reference count leak in l2tp_udp_recv_core (Guillaume Nault) [2020380] - netfilter: nft_flow_offload: fix underflow in flowtable reference counter (Phil Sutter) [2008551] - net: xfrm: Fix end of loop tests for list_for_each_entry (Sabrina Dubroca) [2019168] - xfrm: Fix error reporting in xfrm_state_construct. (Sabrina Dubroca) [2019168]- nvme-mpath: replace direct_make_request with generic_make_request (Gopal Tiwari) [2013505] - net-sysfs: try not to restart the syscall if it will fail eventually (Antoine Tenart) [2016005] - net: mana: Fix error handling in mana_create_rxq() (Mohammed Gamal) [2011886] - net: mana: Prefer struct_size over open coded arithmetic (Mohammed Gamal) [2011886] - net: mana: Add WARN_ON_ONCE in case of CQE read overflow (Mohammed Gamal) [2011886] - net: mana: Add support for EQ sharing (Mohammed Gamal) [2011886] - net: mana: Move NAPI from EQ to CQ (Mohammed Gamal) [2011886] - net: mana: Fix a memory leak in an error handling path in 'mana_create_txq()' (Mohammed Gamal) [2011886] - net: mana: Use struct_size() in kzalloc() (Mohammed Gamal) [2011886] - vmxnet3: switch from 'pci_' to 'dma_' API (Kamal Heib) [2013202] - vmxnet3: update to version 6 (Kamal Heib) [2013202] - vmxnet3: increase maximum configurable mtu to 9190 (Kamal Heib) [2013202] - vmxnet3: set correct hash type based on rss information (Kamal Heib) [2013202] - vmxnet3: add support for ESP IPv6 RSS (Kamal Heib) [2013202] - vmxnet3: remove power of 2 limitation on the queues (Kamal Heib) [2013202] - vmxnet3: add support for 32 Tx/Rx queues (Kamal Heib) [2013202] - vmxnet3: prepare for version 6 changes (Kamal Heib) [2013202] - vmxnet3: fix cksum offload issues for tunnels with non-default udp ports (Kamal Heib) [2013202] - treewide: Use fallthrough pseudo-keyword (Kamal Heib) [2013202] - net: Use skb_frag_off accessors (Kamal Heib) [2013202] - net: Use skb accessors in network drivers (Kamal Heib) [2013202] - vmxnet3: Remove call to memset after dma_alloc_coherent (Kamal Heib) [2013202] - cgroup/debug: Fix lockdep splat with "pK" format specifier (Waiman Long) [2007919] - configs: Enable FC_APPID (Ewan D. Milne) [1643346] - configs: Enable BLK_CGROUP_FC_APPID (Ewan D. Milne) [1643346] - scsi: nvme: Added a new sysfs attribute appid_store (Ewan D. Milne) [1643346] - scsi: blkcg: Add app identifier support for blkcg (Ewan D. Milne) [1643346] - scsi: cgroup: Add cgroup_get_from_id() (Ewan D. Milne) [1643346] - perf iostat: Fix Segmentation fault from NULL 'struct perf_counts_values *' (Michael Petlan) [2003981] - perf iostat: Use system-wide mode if the target cpu_list is unspecified (Michael Petlan) [2003981] - perf beauty: Update copy of linux/socket.h with the kernel sources (Michael Petlan) [2003981] - perf test: Fix non-bash issue with stat bpf counters (Michael Petlan) [2003981] - perf machine: Fix refcount usage when processing PERF_RECORD_KSYMBOL (Michael Petlan) [2003981] - perf metricgroup: Return error code from metricgroup__add_metric_sys_event_iter() (Michael Petlan) [2003981] - perf metricgroup: Fix find_evsel_group() event selector (Michael Petlan) [2003981] - perf session: Correct buffer copying when peeking events (Michael Petlan) [2003981] - perf env: Fix memory leak of bpf_prog_info_linear member (Michael Petlan) [2003981] - perf symbol-elf: Fix memory leak by freeing sdt_note.args (Michael Petlan) [2003981] - perf stat: Honor event config name on --no-merge (Michael Petlan) [2003981] - perf test: Test 17 fails with make LIBPFM4=1 on s390 z/VM (Michael Petlan) [2003981] - perf stat: Fix error return code in bperf__load() (Michael Petlan) [2003981] - perf record: Move probing cgroup sampling support (Michael Petlan) [2003981] - perf probe: Fix NULL pointer dereference in convert_variable_location() (Michael Petlan) [2003981] - perf tools: Copy uapi/asm/perf_regs.h from the kernel for MIPS (Michael Petlan) [2003981] - perf stat: Fix error check for bpf_program__attach (Michael Petlan) [2003981] - perf jevents: Fix getting maximum number of fds (Michael Petlan) [2003981] - perf stat: Skip evlist__[enable|disable] when all events uses BPF (Michael Petlan) [2003981] - perf script: Add missing PERF_IP_FLAG_CHARS for VM-Entry and VM-Exit (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix warning display (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix Array TypeError (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix copy to clipboard from Top Calls by elapsed Time report (Michael Petlan) [2003981] - perf parse-events: Check if the software events array slots are populated (Michael Petlan) [2003981] - perf tools: Add 'cgroup-switches' software event (Michael Petlan) [2003981] - perf intel-pt: Remove redundant setting of ptq->insn_len (Michael Petlan) [2003981] - perf intel-pt: Fix sample instruction bytes (Michael Petlan) [2003981] - perf intel-pt: Fix transaction abort handling (Michael Petlan) [2003981] - perf test: Fix libpfm4 support (63) test error for nested event groups (Michael Petlan) [2003981] - perf buildid-list: Initialize zstd_data (Michael Petlan) [2003981] - tools build: Fix quiet cmd indentation (Michael Petlan) [2003981] - perf tools: Fix a build error on arm64 with clang (Michael Petlan) [2003981] - perf tools: Fix dynamic libbpf link (Michael Petlan) [2003981] - perf session: Fix swapping of cpu_map and stat_config records (Michael Petlan) [2003981] - perf jevents: Silence warning for ArchStd files (Michael Petlan) [2003981] - perf build: Defer printing detected features to the end of all feature checks (Michael Petlan) [2003981] - tools build: Allow deferring printing the results of feature detection (Michael Petlan) [2003981] - perf build: Regenerate the FEATURE_DUMP file after extra feature checks (Michael Petlan) [2003981] - perf session: Dump PERF_RECORD_TIME_CONV event (Michael Petlan) [2003981] - perf session: Add swap operation for event TIME_CONV (Michael Petlan) [2003981] - perf jit: Let convert_timestamp() to be backwards-compatible (Michael Petlan) [2003981] - perf tools: Change fields type in perf_record_time_conv (Michael Petlan) [2003981] - perf tools: Enable libtraceevent dynamic linking (Michael Petlan) [2003981] - perf report: Print percentage of each event statistics (Michael Petlan) [2003981] - perf report: Make --skip-empty as default (Michael Petlan) [2003981] - perf report: Add --skip-empty option to suppress 0 event stat (Michael Petlan) [2003981] - perf report: Show event sample counts in --stat output (Michael Petlan) [2003981] - perf hists: Split hists_stats from events_stats (Michael Petlan) [2003981] - perf top: Use evlist->events_stat to count events (Michael Petlan) [2003981] - perf data: Add JSON export (Michael Petlan) [2003981] - perf stat: Introduce bpf_counter_ops->disable() (Michael Petlan) [2003981] - perf stat: Introduce ':b' modifier (Michael Petlan) [2003981] - perf stat: Introduce config stat.bpf-counter-events (Michael Petlan) [2003981] - perf bpf: check perf_attr_map is compatible with the perf binary (Michael Petlan) [2003981] - perf util: Move bpf_perf definitions to a libperf header (Michael Petlan) [2003981] - perf tools: Update topdown documentation to permit rdpmc calls (Michael Petlan) [2003981] - perf tools: Add a build-test variant to use in builds from a tarball (Michael Petlan) [2003981] - perf arm64: Fix off-by-one directory paths. (Michael Petlan) [2003981] - perf: Update .gitignore file (Michael Petlan) [2003981] - perf stat: Enable iostat mode for x86 platforms (Michael Petlan) [2003981] - perf stat: Helper functions for PCIe root ports list in iostat mode (Michael Petlan) [2003981] - perf stat: Basic support for iostat in perf (Michael Petlan) [2003981] - libperf xyarray: Add bounds checks to xyarray__entry() (Michael Petlan) [2003981] - libperf: Add support for user space counter access (Michael Petlan) [2003981] - libperf tests: Add support for verbose printing (Michael Petlan) [2003981] - libperf: Add evsel mmap support (Michael Petlan) [2003981] - tools include: Add an initial math64.h (Michael Petlan) [2003981] - perf beauty: Fix fsconfig generator (Michael Petlan) [2003981] - perf record: Improve 'Workload failed' message printing events + what was exec'ed (Michael Petlan) [2003981] - perf evlist: Add a method to return the list of evsels as a string (Michael Petlan) [2003981] - perf annotate: Fix sample events lost in stdio mode (Michael Petlan) [2003981] - perf vendor events amd: Add Zen3 events (Michael Petlan) [2003981] - perf vendor events amd: Use 0x02x format for event code and umask (Michael Petlan) [2003981] - perf vendor events amd: Use lowercases for all the eventcodes and umasks (Michael Petlan) [2003981] - perf vendor events amd: Fix broken L2 Cache Hits from L2 HWPF metric (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L3 metrics (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L2 metrics (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L1 metrics (Michael Petlan) [2003981] - perf pmu: Add pmu_events_map__find() function to find the common PMU map for the system (Michael Petlan) [2003981] - perf test: Handle metric reuse in pmu-events parsing test (Michael Petlan) [2003981] - perf metricgroup: Make find_metric() public with name change (Michael Petlan) [2003981] - perf mem-events: Remove unnecessary 'struct mem_info' forward declaration (Michael Petlan) [2003981] - perf evsel: Remove duplicate 'struct target' forward declaration (Michael Petlan) [2003981] - perf annotate: Add --demangle and --demangle-kernel (Michael Petlan) [2003981] - perf tools: Preserve identifier id in OCaml demangler (Michael Petlan) [2003981] - perf daemon: Remove duplicate includes (Michael Petlan) [2003981] - perf tools: Remove duplicate struct forward declarations (Michael Petlan) [2003981] - perf test: Add CSV summary test (Michael Petlan) [2003981] - perf stat: Align CSV output for summary mode (Michael Petlan) [2003981] - perf test: Add a shell test for 'perf stat --bpf-counters' new option (Michael Petlan) [2003981] - perf stat: Measure 't0' and 'ref_time' after enable_counters() (Michael Petlan) [2003981] - perf stat: Introduce 'bperf' to share hardware PMCs with BPF (Michael Petlan) [2003981] - perf tools: Fix various typos in comments (Michael Petlan) [2003981] - perf test: Add 30s timeout for wait for daemon start. (Michael Petlan) [2003981] - perf test: Cleanup daemon if test is interrupted. (Michael Petlan) [2003981] - perf test: Remove unused argument (Michael Petlan) [2003981] - perf stat: Improve readability of shadow stats (Michael Petlan) [2003981] - perf stat: Elaborate use cases for the -n/--null command line option (Michael Petlan) [2003981] - perf evlist: Change the COMM when preparing the workload (Michael Petlan) [2003981] - perf machine: Assign boolean values to a bool variable (Michael Petlan) [2003981] - perf tools: use ARRAY_SIZE (Michael Petlan) [2003981] - perf stat: Fixup __perf_stat_evsel__is() prefix (Michael Petlan) [2003981] - perf script: Fixup 'struct evsel_script' method prefix (Michael Petlan) [2003981] - perf symbols: Fix dso__fprintf_symbols_by_name() to return the number of printed chars (Michael Petlan) [2003981] - tools include: Add __sum16 and __wsum definitions. (Michael Petlan) [2003981] - perf annotate: Show full source location with 'l' hotkey (Michael Petlan) [2003981] - perf bench: Fix misspellings using codespell (Michael Petlan) [2003981] - perf config: Add annotate.demangle{,_kernel} (Michael Petlan) [2003981] - perf bpf: Minor whitespace cleanup. (Michael Petlan) [2003981] - perf tools: Enable warnings when compiling BPF programs (Michael Petlan) [2003981] - perf skel: Remove some unused variables. (Michael Petlan) [2003981] - perf report: Create option to disable raw event ordering (Michael Petlan) [2003981] - perf metric: Remove unneeded semicolon (Michael Petlan) [2003981] - perf cs-etm: Detect pid in VMID for kernel running at EL2 (Michael Petlan) [2003981] - perf cs-etm: Add helper cs_etm__get_pid_fmt() (Michael Petlan) [2003981] - perf cs-etm: Support PID tracing in config (Michael Petlan) [2003981] - perf cs-etm: Fix bitmap for option (Michael Petlan) [2003981] - perf cs-etm: Update ETM metadata format (Michael Petlan) [2003981] - perf vendor events power9: Remove unsupported metrics (Michael Petlan) [2003981] - perf buildid-cache: Add test for PE executable (Michael Petlan) [2003981] - perf docs: Add man pages to see also (Michael Petlan) [2003981] - perf tools: Generate mips syscalls_n64.c syscall table (Michael Petlan) [2003981] - perf s390: Move syscall.tbl check into check-headers.sh (Michael Petlan) [2003981] - perf tools: Support MIPS unwinding and dwarf-regs (Michael Petlan) [2003981] - tools: do not include scripts/Kbuild.include (Michael Petlan) [2003981] - tools: Allow proper CC/CXX/... override with LLVM=1 in Makefile.include (Michael Petlan) [2003981] - perf intel-pt: Use aux_watermark (Michael Petlan) [2003981] - perf/x86/intel/uncore: Fix M2M event umask for Ice Lake server (Michael Petlan) [2003981] - perf/x86/intel/uncore: Fix a kernel WARNING triggered by maxcpus=1 (Michael Petlan) [2003981] - perf: Fix data race between pin_count increment/decrement (Michael Petlan) [2003981] - perf/x86: Avoid touching LBR_TOS MSR for Arch LBR (Michael Petlan) [2003981] - perf/x86: Allow for 8running into P4 specific code (Michael Petlan) [2003981] - perf: Add support for event removal on exec (Michael Petlan) [2003981] - perf: Support only inheriting events if cloned with CLONE_THREAD (Michael Petlan) [2003981] - perf: Apply PERF_EVENT_IOC_MODIFY_ATTRIBUTES to children (Michael Petlan) [2003981] - perf: Rework perf_event_exit_event() (Michael Petlan) [2003981] - perf: Cap allocation order at aux_watermark (Michael Petlan) [2003981] - perf/x86/intel/uncore: Enable IIO stacks to PMON mapping for multi-segment SKX (Michael Petlan) [2003981] - perf core: Allocate perf_event in the target node memory (Michael Petlan) [2003981] - perf core: Add a kmem_cache for struct perf_event (Michael Petlan) [2003981] - perf core: Allocate perf_buffer in the target node memory (Michael Petlan) [2003981] - x86: Remove unusual Unicode characters from comments (Michael Petlan) [2003981] - redhat/configs: Add CONFIG_TIMERLAT_TRACER (Jerome Marchand) [1979382] - redhat/configs: Add CONFIG_OSNOISE_TRACER (Jerome Marchand) [1979382] - tracing/osnoise: Fix missed cpus_read_unlock() in start_per_cpu_kthreads() (Jerome Marchand) [1979382] - tracing: Replace deprecated CPU-hotplug functions. (Jerome Marchand) [1979382] - trace/osnoise: Print a stop tracing message (Jerome Marchand) [1979382] - trace/timerlat: Add a header with PREEMPT_RT additional fields (Jerome Marchand) [1979382] - trace/osnoise: Add a header with PREEMPT_RT additional fields (Jerome Marchand) [1979382] - tracing: Quiet smp_processor_id() use in preemptable warning in hwlat (Jerome Marchand) [1979382] - trace/timerlat: Fix indentation on timerlat_main() (Jerome Marchand) [1979382] - trace/osnoise: Make 'noise' variable s64 in run_osnoise() (Jerome Marchand) [1979382] - tracing: Fix spelling in osnoise tracer "interferences" -> "interference" (Jerome Marchand) [1979382] - Documentation: Fix a typo on trace/osnoise-tracer (Jerome Marchand) [1979382] - trace/osnoise: Fix return value on osnoise_init_hotplug_support (Jerome Marchand) [1979382] - trace/osnoise: Make interval u64 on osnoise_main (Jerome Marchand) [1979382] - trace/osnoise: Fix 'no previous prototype' warnings (Jerome Marchand) [1979382] - tracing: Have osnoise_main() add a quiescent state for task rcu (Jerome Marchand) [1979382] - trace/osnoise: Support hotplug operations (Jerome Marchand) [1979382] - trace/hwlat: Support hotplug operations (Jerome Marchand) [1979382] - trace/hwlat: Protect kdata->kthread with get/put_online_cpus (Jerome Marchand) [1979382] - trace: Add timerlat tracer (Jerome Marchand) [1979382] - trace: Add osnoise tracer (Jerome Marchand) [1979382] - trace: Add __print_ns_to_secs() and __print_ns_without_secs() helpers (Jerome Marchand) [1979382] - trace/hwlat: Remove printk from sampling loop (Jerome Marchand) [1979382] - trace/hwlat: Use trace_min_max_param for width and window params (Jerome Marchand) [1979382] - trace: Add a generic function to read/write u64 values from tracefs (Jerome Marchand) [1979382] - trace/hwlat: Implement the per-cpu mode (Jerome Marchand) [1979382] - trace/hwlat: Switch disable_migrate to mode none (Jerome Marchand) [1979382] - trace/hwlat: Implement the mode config option (Jerome Marchand) [1979382] - uio_hv_generic: Fix another memory leak in error handling paths (Mohammed Gamal) [2008561] - uio_hv_generic: Fix a memory leak in error handling paths (Mohammed Gamal) [2008561] - mfd: intel-lpss: Add Intel Alder Lake-M PCI IDs (David Arcari) [1929498] - xfs: fix up non-directory creation in SGID directories (Brian Foster) [2004810] - xfs: kill ialloced in xfs_dialloc() (Brian Foster) [2004810] - xfs: spilt xfs_dialloc() into 2 functions (Brian Foster) [2004810] - xfs: move xfs_dialloc_roll() into xfs_dialloc() (Brian Foster) [2004810] - xfs: move on-disk inode allocation out of xfs_ialloc() (Brian Foster) [2004810] - xfs: introduce xfs_dialloc_roll() (Brian Foster) [2004810] - xfs: convert noroom, okalloc in xfs_dialloc() to bool (Brian Foster) [2004810] - xfs: check tp->t_dqinfo value instead of the XFS_TRANS_DQ_DIRTY flag (Brian Foster) [2004810] - scsi: vmw_pvscsi: Set correct residual data length (Cathy Avery) [2012237] - scsi: vmw_pvscsi: MAINTAINERS: Update maintainer (Cathy Avery) [2012237] - treewide: Use fallthrough pseudo-keyword (Cathy Avery) [2012237] - scsi: be2iscsi: Fix use-after-free during IP updates (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix some missing space in some messages (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix an error handling path in beiscsi_dev_probe() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Remove redundant initialization (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Demote incomplete/non-conformant kernel-doc header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Ensure function follows directly after its header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix beiscsi_phys_port()'s name in header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Provide missing function name in header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix incorrect naming of beiscsi_iface_config_vlan() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Mark beiscsi_attrs with static keyword (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Correct misdocumentation of function param 'ep' (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Add missing function parameter description (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix misdocumentation of 'pcontext' (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix API/documentation slip (Maurizio Lombardi) [1984347] - powerpc/spinlock: Properly define pv_spinlocks_init() (Waiman Long) [2014363] - ACPI: Pass the same capabilities to the _OSC regardless of the query flag (Mark Langsdorf) [1982319] - Revert "[acpi] ACPI: sleep: Put the FACS table after using it" (Mark Langsdorf) [1982319] - ACPICA: Clean up context mutex during object deletion (Mark Langsdorf) [1982319] - ACPI: power: Refine turning off unused power resources (Mark Langsdorf) [1982319] - ACPI: NFIT: Fix support for variable 'SPA' structure size (Mark Langsdorf) [1982319] - ACPI: custom_method: fix a possible memory leak (Mark Langsdorf) [1982319] - ACPI: custom_method: fix potential use-after-free issue (Mark Langsdorf) [1982319] - ACPI: irq: Prevent unregistering of GIC SGIs (Mark Langsdorf) [1982319] - ACPI: GTDT: Don't corrupt interrupt mappings on watchdow probe failure (Mark Langsdorf) [1982319] - ACPI: video: use native backlight for GA401/GA502/GA503 (Mark Langsdorf) [1982319] - ACPI: APEI: remove redundant assignment to variable rc (Mark Langsdorf) [1982319] - ACPI: utils: Capitalize abbreviations in the comments (Mark Langsdorf) [1982319] - ACPI: utils: Document for_each_acpi_dev_match() macro (Mark Langsdorf) [1982319] - ACPI: bus: Introduce acpi_dev_get() and reuse it in ACPI code (Mark Langsdorf) [1982319] - ACPI: scan: Utilize match_string() API (Mark Langsdorf) [1982319] - ACPI: CPPC: Replace cppc_attr with kobj_attribute (Mark Langsdorf) [1982319] - ACPI: scan: Call acpi_get_object_info() from acpi_set_pnp_ids() (Mark Langsdorf) [1982319] - ACPI: scan: Drop sta argument from acpi_init_device_object() (Mark Langsdorf) [1982319] - ACPI: scan: Drop sta argument from acpi_add_single_object() (Mark Langsdorf) [1982319] - ACPI: scan: Rearrange checks in acpi_bus_check_add() (Mark Langsdorf) [1982319] - ACPI: scan: Fold acpi_bus_type_and_status() into its caller (Mark Langsdorf) [1982319] - ACPI: video: Check LCD flag on ACPI-reduced-hardware devices (Hans de Goede) [1982319] - ACPI: utils: Add acpi_reduced_hardware() helper (Mark Langsdorf) [1982319] - ACPI: dock: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: sysfs: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: PM: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: custom_method: fix a coding style issue (Mark Langsdorf) [1982319] - ACPI: CPPC: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: button: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: battery: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: acpi_pad: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: LPSS: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: ipmi: remove useless return statement for void function (Mark Langsdorf) [1982319] - ACPI: processor: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: APD: fix a block comment align issue (Mark Langsdorf) [1982319] - ACPI: AC: fix some coding style issues (Mark Langsdorf) [1982319] - ACPICA: Update version to 20210331 (Mark Langsdorf) [1982319] - ACPICA: IORT: Updates for revision E.b (Mark Langsdorf) [1982319] - ACPICA: iASL: Decode subtable type field for VIOT (Mark Langsdorf) [1982319] - ACPICA: iASL: Add support for CEDT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add support for PHAT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add CSI2Bus resource template (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PMTT: add new fields/structures (Mark Langsdorf) [1982319] - ACPICA: CXL 2.0: CEDT: Add new CEDT table (Mark Langsdorf) [1982319] - ACPICA: acpisrc: Add missing conversion for VIOT support (Mark Langsdorf) [1982319] - ACPICA: iASL: Add definitions for the VIOT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add SDEV secure access components (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: Add new flags in SRAT (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: HMAT: add new fields/flags (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: NFIT: add Location Cookie field (Mark Langsdorf) [1982319] - ACPICA: Tree-wide: fix various typos and spelling mistakes (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PPTT: add new version of subtable type 1 (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PCCT: add support for subtable type 5 (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Structure (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add CXL ACPI device ID and _CBR object (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add USB4 capabilities UUID (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: Add new predefined objects _BPC, _BPS, and _BPT (Mark Langsdorf) [1982319] - ACPICA: Add parsing for IVRS IVHD 40h and device entry F0h (Mark Langsdorf) [1982319] - ACPI: CPPC: Add emtpy stubs of functions for CONFIG_ACPI_CPPC_LIB unset (Mark Langsdorf) [1982319] - ACPI: scan: Turn off unused power resources during initialization (Mark Langsdorf) [1982319] - ACPI: power: Turn off unused power resources unconditionally (Mark Langsdorf) [1982319] - ACPI: fix various typos in comments (Mark Langsdorf) [1982319] - ACPI: utils: Introduce acpi_evaluation_failure_warn() (Mark Langsdorf) [1982319] - ACPI: processor: perflib: Eliminate redundant status check (Mark Langsdorf) [1982319] - ACPI: Drop unused ACPI_*_COMPONENT definitions and update documentation (Mark Langsdorf) [1982319] - ACPI: sysfs: Get rid of ACPICA message printing (Mark Langsdorf) [1982319] - ACPI: HED: Drop unused ACPI_MODULE_NAME() definition (Mark Langsdorf) [1982319] - ACPI: processor: Get rid of ACPICA message printing (Mark Langsdorf) [1982319] - ACPI: processor: idle: Drop extra prefix from pr_notice() (Mark Langsdorf) [1982319] - ACPI: processor: Remove initialization of static variable (Mark Langsdorf) [1982319] - ACPI: PCI: Replace direct printk() invocations in pci_link.c (Mark Langsdorf) [1982319] - ACPI: PCI: Drop ACPI_PCI_COMPONENT that is not used any more (Mark Langsdorf) [1982319] - ACPI: PCI: Replace ACPI_DEBUG_PRINT() and ACPI_EXCEPTION() (Mark Langsdorf) [1982319] - ACPI: PCI: IRQ: Consolidate printing diagnostic messages (Mark Langsdorf) [1982319] - arm64: compat: Poison the compat sigpage (C. Erastus Toe) [1983849] {CVE-2021-21781} - ARM: ensure the signal page contains defined contents (C. Erastus Toe) [1983849] {CVE-2021-21781} - powerpc/pseries: Fix update of LPAR security flavor after LPM (Steve Best) [1997294] - s390/qeth: Update MACs of LEARNING_SYNC device (Robin Dapp) [1919227] - s390/qeth: Switchdev event handler (Robin Dapp) [1919227] - s390/qeth: Register switchdev event handler (Robin Dapp) [1919227] - PCI: Add pcie_ptm_enabled() (Petr Oros) [2006834] - Revert "PCI: Make pci_enable_ptm() private" (Petr Oros) [2006834] - x86/cpufeatures: Force disable X86_FEATURE_ENQCMD and remove update_pasid() (Jerry Snitselaar) [2004577] - s390: report more CPU capabilities (Robin Dapp) [1984839] - s390/disassembler: add instructions (Robin Dapp) [1984839] - s390/opcodes: rename selhhhr to selfhr (Robin Dapp) [1984839] - s390/disassembler: update opcode table (Robin Dapp) [1984839] - s390/opcodes: add missing instructions to the disassembler (Robin Dapp) [1984839] - CI: Add template for baseline gcov build (Israel Santana Aleman) - futex: Remove unused variable 'vpid' in futex_proxy_trylock_atomic() (Waiman Long) [2000293] - futex: Prevent inconsistent state and exit race (Waiman Long) [2000293] - locking/ww_mutex: Initialize waiter.ww_ctx properly (Waiman Long) [2000293] - futex: Return error code instead of assigning it without effect (Waiman Long) [2000293] - Documentation: seqlock: s/LOCKTYPE/LOCKNAME/g (Waiman Long) [2000293] - lib/test_lockup.c: fix return value of test_lockup_init() (Waiman Long) [2000293] - locking/rwbase: Take care of ordering guarantee for fastpath reader (Waiman Long) [2000293] - locking/rwbase: Extract __rwbase_write_trylock() (Waiman Long) [2000293] - locking/rwbase: Properly match set_and_save_state() to restore_state() (Waiman Long) [2000293] - locking/rtmutex: Fix ww_mutex deadlock check (Waiman Long) [2000293] - locking/rwsem: Add missing __init_rwsem() for PREEMPT_RT (Waiman Long) [2000293] - locking/rtmutex: Return success on deadlock for ww_mutex waiters (Waiman Long) [2000293] - locking/rtmutex: Prevent spurious EDEADLK return caused by ww_mutexes (Waiman Long) [2000293] - locking/rtmutex: Dequeue waiter on ww_mutex deadlock (Waiman Long) [2000293] - locking/rtmutex: Dont dereference waiter lockless (Waiman Long) [2000293] - locking/local_lock: Add PREEMPT_RT support (Waiman Long) [2000293] - locking/spinlock/rt: Prepare for RT local_lock (Waiman Long) [2000293] - locking/rtmutex: Add adaptive spinwait mechanism (Waiman Long) [2000293] - locking/rtmutex: Implement equal priority lock stealing (Waiman Long) [2000293] - preempt: Adjust PREEMPT_LOCK_OFFSET for RT (Waiman Long) [2000293] - locking/rtmutex: Prevent lockdep false positive with PI futexes (Waiman Long) [2000293] - futex: Prevent requeue_pi() lock nesting issue on RT (Waiman Long) [2000293] - futex: Simplify handle_early_requeue_pi_wakeup() (Waiman Long) [2000293] - futex: Reorder sanity checks in futex_requeue() (Waiman Long) [2000293] - futex: Clarify comment in futex_requeue() (Waiman Long) [2000293] - futex: Restructure futex_requeue() (Waiman Long) [2000293] - futex: Correct the number of requeued waiters for PI (Waiman Long) [2000293] - futex: Remove bogus condition for requeue PI (Waiman Long) [2000293] - futex: Clarify futex_requeue() PI handling (Waiman Long) [2000293] - futex: Clean up stale comments (Waiman Long) [2000293] - futex: Validate waiter correctly in futex_proxy_trylock_atomic() (Waiman Long) [2000293] - lib/test_lockup: Adapt to changed variables (Waiman Long) [2000293] - locking/rtmutex: Add mutex variant for RT (Waiman Long) [2000293] - locking/ww_mutex: Implement rtmutex based ww_mutex API functions (Waiman Long) [2000293] - locking/rtmutex: Extend the rtmutex core to support ww_mutex (Waiman Long) [2000293] - locking/ww_mutex: Add rt_mutex based lock type and accessors (Waiman Long) [2000293] - locking/ww_mutex: Add RT priority to W/W order (Waiman Long) [2000293] - locking/ww_mutex: Implement rt_mutex accessors (Waiman Long) [2000293] - locking/ww_mutex: Abstract out internal lock accesses (Waiman Long) [2000293] - locking/ww_mutex: Abstract out mutex types (Waiman Long) [2000293] - locking/ww_mutex: Abstract out mutex accessors (Waiman Long) [2000293] - locking/ww_mutex: Abstract out waiter enqueueing (Waiman Long) [2000293] - locking/ww_mutex: Abstract out the waiter iteration (Waiman Long) [2000293] - locking/ww_mutex: Remove the __sched annotation from ww_mutex APIs (Waiman Long) [2000293] - locking/ww_mutex: Split out the W/W implementation logic into kernel/locking/ww_mutex.h (Waiman Long) [2000293] - locking/ww_mutex: Split up ww_mutex_unlock() (Waiman Long) [2000293] - locking/ww_mutex: Gather mutex_waiter initialization (Waiman Long) [2000293] - locking/ww_mutex: Simplify lockdep annotations (Waiman Long) [2000293] - locking/mutex: Make mutex::wait_lock raw (Waiman Long) [2000293] - locking/ww_mutex: Move the ww_mutex definitions from into (Waiman Long) [2000293] - locking/mutex: Move the 'struct mutex_waiter' definition from to the internal header (Waiman Long) [2000293] - locking/mutex: Consolidate core headers, remove kernel/locking/mutex-debug.h (Waiman Long) [2000293] - locking/rtmutex: Squash !RT tasks to DEFAULT_PRIO (Waiman Long) [2000293] - locking/rwlock: Provide RT variant (Waiman Long) [2000293] - locking/spinlock: Provide RT variant (Waiman Long) [2000293] - locking/rtmutex: Provide the spin/rwlock core lock function (Waiman Long) [2000293] - locking/spinlock: Provide RT variant header: (Waiman Long) [2000293] - locking/spinlock: Provide RT specific spinlock_t (Waiman Long) [2000293] - locking/rtmutex: Reduce header dependencies, only include (Waiman Long) [2000293] - rbtree: Split out the rbtree type definitions into (Waiman Long) [2000293] - locking/lockdep: Reduce header dependencies in (Waiman Long) [2000293] - locking/rtmutex: Prevent future include recursion hell (Waiman Long) [2000293] - locking/spinlock: Split the lock types header, and move the raw types into (Waiman Long) [2000293] - locking/rtmutex: Guard regular sleeping locks specific functions (Waiman Long) [2000293] - locking/rtmutex: Prepare RT rt_mutex_wake_q for RT locks (Waiman Long) [2000293] - locking/rtmutex: Use rt_mutex_wake_q_head (Waiman Long) [2000293] - locking/rtmutex: Provide rt_wake_q_head and helpers (Waiman Long) [2000293] - locking/rtmutex: Add wake_state to rt_mutex_waiter (Waiman Long) [2000293] - locking/rwsem: Add rtmutex based R/W semaphore implementation (Waiman Long) [2000293] - locking/rt: Add base code for RT rw_semaphore and rwlock (Waiman Long) [2000293] - locking/rtmutex: Provide rt_mutex_base_is_locked() (Waiman Long) [2000293] - locking/rtmutex: Provide rt_mutex_slowlock_locked() (Waiman Long) [2000293] - locking/rtmutex: Split out the inner parts of 'struct rtmutex' (Waiman Long) [2000293] - locking/rtmutex: Split API from implementation (Waiman Long) [2000293] - locking/rtmutex: Convert macros to inlines (Waiman Long) [2000293] - locking/rtmutex: Remove rt_mutex_is_locked() (Waiman Long) [2000293] - sched/wake_q: Provide WAKE_Q_HEAD_INITIALIZER() (Waiman Long) [2000293] - sched/core: Provide a scheduling point for RT locks (Waiman Long) [2000293] - sched/core: Rework the __schedule() preempt argument (Waiman Long) [2000293] - sched/wakeup: Prepare for RT sleeping spin/rwlocks (Waiman Long) [2000293] - sched/wakeup: Reorganize the current::__state helpers (Waiman Long) [2000293] - sched/wakeup: Introduce the TASK_RTLOCK_WAIT state bit (Waiman Long) [2000293] - sched/wakeup: Split out the wakeup ->__state check (Waiman Long) [2000293] - locking/rtmutex: Set proper wait context for lockdep (Waiman Long) [2000293] - locking/local_lock: Add missing owner initialization (Waiman Long) [2000293] - locking/rtmutex: Use the correct rtmutex debugging config option (Waiman Long) [2000293] - tools/runqslower: Use __state instead of state (Waiman Long) [2000293] - locking/rwsem: Remove an unused parameter of rwsem_wake() (Waiman Long) [2000293] - locking/mutex: Add MUTEX_WARN_ON (Waiman Long) [2000293] - locking/mutex: Introduce __mutex_trylock_or_handoff() (Waiman Long) [2000293] - locking/mutex: Fix HANDOFF condition (Waiman Long) [2000293] - locking/mutex: Use try_cmpxchg() (Waiman Long) [2000293] - sched: Change task_struct::state (Waiman Long) [2000293] - isdn/hisax: Use get_current_state() (Waiman Long) [2000293] - sched,timer: Use __set_current_state() (Waiman Long) [2000293] - sched: Add get_current_state() (Waiman Long) [2000293] - sched,perf,kvm: Fix preemption condition (Waiman Long) [2000293] - sched: Introduce task_is_running() (Waiman Long) [2000293] - sched: Unbreak wakeups (Waiman Long) [2000293] - seqlock: Remove trailing semicolon in macros (Waiman Long) [2000293] - locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal (Waiman Long) [2000293] - ptrace: make ptrace() fail if the tracee changed its pid unexpectedly (Waiman Long) [2000293] - sched: Rename sched_info_{queued,dequeued} (Waiman Long) [2000293] - locking/rwsem: Fix comment typo (Waiman Long) [2000293] - bpf: runqslower: Use task local storage (Waiman Long) [2000293] - lib/test_lockup.c: minimum fix to get it compiled on PREEMPT_RT (Waiman Long) [2000293] - seqlock: kernel-doc: Specify when preemption is automatically altered (Waiman Long) [2000293] - seqlock: Prefix internal seqcount_t-only macros with a "do_" (Waiman Long) [2000293] - rcu: Check and report missed fqs timer wakeup on RCU stall (Waiman Long) [2000293] - softirq: Move related code into one section (Waiman Long) [2000293] - seqlock: Rename __seqprop() users (Waiman Long) [2000293] - seqlock: avoid -Wshadow warnings (Waiman Long) [2000293] - locking/seqlocks: Fix kernel-doc warnings (Waiman Long) [2000293] - locking/seqlock: Tweak DEFINE_SEQLOCK() kernel doc (Waiman Long) [2000293] - seqlock: Unbreak lockdep (Waiman Long) [2000293] - seqlock: PREEMPT_RT: Do not starve seqlock_t writers (Waiman Long) [2000293] - seqlock: seqcount_LOCKNAME_t: Introduce PREEMPT_RT support (Waiman Long) [2000293] - seqlock: seqcount_t: Implement all read APIs as statement expressions (Waiman Long) [2000293] - seqlock: Use unique prefix for seqcount_t property accessors (Waiman Long) [2000293] - seqlock: seqcount_LOCKNAME_t: Standardize naming convention (Waiman Long) [2000293] - seqlock: seqcount latch APIs: Only allow seqcount_latch_t (Waiman Long) [2000293] - rbtree_latch: Use seqcount_latch_t (Waiman Long) [2000293] - x86/tsc: Use seqcount_latch_t (Waiman Long) [2000293] - timekeeping: Use seqcount_latch_t (Waiman Long) [2000293] - time/sched_clock: Mark sched_clock_read_begin/retry() as notrace (Waiman Long) [2000293] - time/sched_clock: Use raw_read_seqcount_latch() (Waiman Long) [2000293] - time/sched_clock: Use raw_read_seqcount_latch() during suspend (Waiman Long) [2000293] - time/sched_clock: Use seqcount_latch_t (Waiman Long) [2000293] - sched_clock: Expose struct clock_read_data (Waiman Long) [2000293] - timers/sched_clock: Include local timekeeping.h for missing declarations (Waiman Long) [2000293] - sched/clock: Move sched clock initialization and merge with generic clock (Waiman Long) [2000293] - userfaultfd: simplify fault handling (Waiman Long) [2000293] - rwsem: fix commas in initialisation (Waiman Long) [2000293] - lib/test_lockup.c: make test_inode static (Waiman Long) [2000293] - genirq: Provide irq_enter/exit_rcu() (Waiman Long) [2000293] - lib/test_lockup.c: add parameters for locking generic vfs locks (Waiman Long) [2000293] - lib/test_lockup.c: fix spelling mistake "iteraions" -> "iterations" (Waiman Long) [2000293] - lib/test_lockup: test module to generate lockups (Waiman Long) [2000293] - x86/tsc: Move inline keyword to the beginning of function declarations (Waiman Long) [2000293] - softirq: Don't skip softirq execution when softirq thread is parking (Waiman Long) [2000293] - sched/core: Convert task_struct.stack_refcount to refcount_t (Waiman Long) [2000293] - kernel/hung_task.c: break RCU locks based on jiffies (Waiman Long) [2000293] - x86/process: Avoid unnecessary NULL check in get_wchan() (Waiman Long) [2000293] - kernel/rwsem: Remove ifdef __init_rwsem code from rwsem.c (Waiman Long) [2000293] - misc: hpilo: map iLO shared memory by PCI revision id (Joseph Szczypek) [1985076] - misc: hpilo: MAINTAINERS: add entry for hpilo (Joseph Szczypek) [1985076] - misc: hpilo: avoid a useless memset (Joseph Szczypek) [1985076] - misc: hpilo: switch from 'pci_' to 'dma_' API (Joseph Szczypek) [1985076] - hpilo: Replace one-element array with flexible-array member (Joseph Szczypek) [1985076] - perf flamegraph: flamegraph.py script improvements (Michael Petlan) [2010269]- ceph: skip existing superblocks that are blocklisted or shut down when mounting (Jeffrey Layton) [2011462] - cpufreq: intel_pstate: Combine ->stop_cpu() and ->offline() (David Arcari) [2003695] - cpufreq: intel_pstate: Add Cometlake support in no-HWP mode (David Arcari) [2003695] - cpufreq: intel_pstate: Add Icelake servers support in no-HWP mode (David Arcari) [2003695] - i2c: i801: Add support for Intel Alder Lake PCH-M (David Arcari) [1929497] - i2c: i801: Add Block Write-Block Read Process Call support (David Arcari) [1929497] - pinctrl: tigerlake: Add Alder Lake-M ACPI ID (David Arcari) [1929501] - x86/microcode: Check for offline CPUs before requesting new microcode (Puneet Sethi) [1971878] - x86/resctrl: Fix a maybe-uninitialized build warning treated as error (Terry Bowman) [1994090] - x86/resctrl: Fix default monitoring groups reporting (Terry Bowman) [1994090] - PCI: Remove WARN_ON(in_interrupt()) (Myron Stowe) [1993262] - PCI: Apply CONFIG_PCI_DEBUG to entire drivers/pci hierarchy (Myron Stowe) [1993262] - PCI: Add Silicom Denmark vendor ID (Myron Stowe) [1993262] - PCI: Align checking of syscall user config accessors (Myron Stowe) [1993262] - PCI: Decline to resize resources if boot config must be preserved (Myron Stowe) [1993262] - PCI/LINK: Remove bandwidth notification (Myron Stowe) [1993262] - PCI: acpiphp: Remove unused acpiphp_callback typedef (Myron Stowe) [1993262] - PCI: Fix pci_register_io_range() memory leak (Myron Stowe) [1993262] - EDAC/amd64: Add AMD family 17h model 60h PCI IDs (Aristeu Rozanski) [1930489] - EDAC/amd64: Add PCI device IDs for family 17h, model 70h (Aristeu Rozanski) [1930489] - scsi: bnx2fc: Remove meaningless bnx2fc_abts_cleanup() return value assignment (Nilesh Javali) [1983956] - scsi: bnx2fc: Return failure if io_req is already in ABTS processing (Nilesh Javali) [1983956] - scsi: target: ibmvscsi_tgt: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: Fix sense key for invalid EXTENDED COPY request (Maurizio Lombardi) [2004470] - scsi: target: Allows backend drivers to fail with specific sense codes (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Fix possible null-pointer dereference in pscsi_complete_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Drop unnecessary se_cmd ASC/ASCQ members (Maurizio Lombardi) [2004470] - scsi: target: sbp: Drop incorrect ASC/ASCQ usage (Maurizio Lombardi) [2004470] - scsi: target: core: Avoid using lun_tg_pt_gp after unlock (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Add new feature KEEP_BUF (Maurizio Lombardi) [2004470] - scsi: target: Remove redundant assignment to variable ret (Maurizio Lombardi) [2004470] - scsi: target: Fix NULL dereference on XCOPY completion (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove redundant continue statement (Maurizio Lombardi) [2004470] - scsi: target: Use standard SAM status types (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Fix boolreturn.cocci warnings (Maurizio Lombardi) [2004470] - scsi: target: core: Add the VERSION DESCRIPTOR fields to the INQUIRY data (Maurizio Lombardi) [2004470] - scsi: target: core: Bump INQUIRY VERSION to SPC-4 (Maurizio Lombardi) [2004470] - scsi: target: core: Add configurable IEEE Company ID attribute (Maurizio Lombardi) [2004470] - scsi: target: core: Unify NAA identifier generation (Maurizio Lombardi) [2004470] - scsi: target: sbp_target: Remove redundant assignment to pg_size (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Rename TCM_DEV_BIT_PLUGGED to TCMU_DEV_BIT_PLUGGED (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Drop unnecessary container_of() (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Switch to kmemdup_nul() (Maurizio Lombardi) [2004470] - scsi: target: iblock: Fix smp_processor_id() BUG messages (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Fix xarray RCU warning (Maurizio Lombardi) [2004470] - scsi: target: core: Avoid smp_processor_id() in preemptible code (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not found (Maurizio Lombardi) [2004470] - scsi: target: tcm_fc: Fix a kernel-doc header (Maurizio Lombardi) [2004470] - scsi: target: Shorten ALUA error messages (Maurizio Lombardi) [2004470] - scsi: target: Fix two format specifiers (Maurizio Lombardi) [2004470] - scsi: target: Compare explicitly with SAM_STAT_GOOD (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Make data_pages_per_blk changeable via configfs (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace block size definitions with new udev members (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Remove function tcmu_get_block_page() (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Support DATA_BLOCK_SIZE = N * PAGE_SIZE (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Prepare for PAGE_SIZE != DATA_BLOCK_SIZE (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Adjust names of variables and definitions (Maurizio Lombardi) [2004470] - scsi: target: Make the virtual LUN 0 device (Maurizio Lombardi) [2004470] - scsi: target: Add the DUMMY flag to rd_mcp (Maurizio Lombardi) [2004470] - scsi: target: Fix htmldocs warning in target_submit_prep() (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Adjust parameter in call to tcmu_blocks_release() (Maurizio Lombardi) [2004470] - scsi: target: core: file: Don't duplicate memset(0xff) (Maurizio Lombardi) [2004470] - scsi: target: core: pr: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: configfs: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro PRINT_BUF (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro TEXT_LEN (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro ISCSI_INST_LAST_FAILURE_TYPE (Maurizio Lombardi) [2004470] - scsi: target: core: Remove unused macros NONE and ISPRINT (Maurizio Lombardi) [2004470] - scsi: target: core: Get rid of warning in compare_and_write_do_cmp() (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Remove unused macro ISPRINT (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Fix warning in pscsi_complete_cmd() (Maurizio Lombardi) [2004470] - scsi: target: iblock: Fix type of logs_per_phys (Maurizio Lombardi) [2004470] - scsi: target: iblock: Trim line longer than 80 characters (Maurizio Lombardi) [2004470] - scsi: target: iblock: Remove an extra argument (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Use GFP_NOIO while handling cmds or holding cmdr_lock (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace radix_tree with XArray (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace IDR by XArray (Maurizio Lombardi) [2004470] - scsi: target: core: Make completion affinity configurable (Maurizio Lombardi) [2004470] - scsi: target: core: Flush submission work during TMR processing (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Add backend plug/unplug callouts (Maurizio Lombardi) [2004470] - scsi: target: iblock: Add backend plug/unplug callouts (Maurizio Lombardi) [2004470] - scsi: target: core: Fix backend plugging (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Use LIO wq cmd submission helper (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Use block cmd allocator for se_cmds (Maurizio Lombardi) [2004470] - scsi: target: core: Add workqueue based cmd submission (Maurizio Lombardi) [2004470] - scsi: target: core: Add gfp_t arg to target_cmd_init_cdb() (Maurizio Lombardi) [2004470] - scsi: target: core: Remove target_submit_cmd_map_sgls() (Maurizio Lombardi) [2004470] - scsi: target: srpt: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: qla2xxx: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: tcm_qla2xxx: Remove BUG_ON(in_interrupt()) (Maurizio Lombardi) [2004470] - scsi: qla2xxx: Move sess cmd list/lock to driver (Maurizio Lombardi) [2004470] - scsi: qla2xxx: Drop TARGET_SCF_LOOKUP_LUN_FROM_TAG (Maurizio Lombardi) [2004470] - scsi: target: tcm_fc: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: sbp_target: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: core: Break up target_submit_cmd_map_sgls() (Maurizio Lombardi) [2004470] - scsi: target: core: Rename transport_init_se_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Drop kref_get_unless_zero() in target_get_sess_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Move t_task_cdb initialization (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Fix zero tag inside a trace event (Maurizio Lombardi) [2004470] - nfsd: move fsnotify on client creation outside spinlock (Steve Dickson) [1719330] - nfsd: report client confirmation status in "info" file (Steve Dickson) [1719330] - nfsd: fsnotify on rmdir under nfsd/clients/ (Steve Dickson) [1719330]- mm: gup: fix potential pgmap refcnt leak in __gup_device_huge() (Waiman Long) [2009258] - mm/gup: check for isolation errors (Waiman Long) [2009258] - mm/gup: return an error on migration failure (Waiman Long) [2009258] - mm/gup: check every subpage of a compound page during isolation (Waiman Long) [2009258] - mm/gup: don't pin migrated cma pages in movable zone (Waiman Long) [2009258] - mm/gup: add a range variant of unpin_user_pages_dirty_lock() (Waiman Long) [2009258] - mm/gup: decrement head page once for group of subpages (Waiman Long) [2009258] - mm/gup: add compound page list iterator (Waiman Long) [2009258] - mm/gup: protect unpin_user_pages() against npages==-ERRNO (Waiman Long) [2009258] - mm, memcg: remove unused functions (Waiman Long) [2008341] - mm,vmscan: fix divide by zero in get_scan_count (Waiman Long) [2008341] - mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim (Waiman Long) [2008341] - mm/memcg: fix incorrect flushing of lruvec data in obj_stock (Waiman Long) [2008341] - mm/memcg: fix NULL pointer dereference in memcg_slab_free_hook() (Waiman Long) [2008341] - mm: memcontrol: fix blocking rstat function called from atomic cgroup1 thresholding code (Waiman Long) [2008341] - cgroup: rstat: fix A-A deadlock on 32bit around u64_stats_sync (Waiman Long) [2008341] - percpu: flush tlb in pcpu_reclaim_populated() (Waiman Long) [2008341] - mm/memcontrol.c: fix kerneldoc comment for mem_cgroup_calculate_protection (Waiman Long) [2008341] - memcontrol: use flexible-array member (Waiman Long) [2008341] - mm: vmscan: remove noinline_for_stack (Waiman Long) [2008341] - mm: memcontrol: move obj_cgroup_uncharge_pages() out of css_set_lock (Waiman Long) [2008341] - mm: memcontrol: simplify the logic of objcg pinning memcg (Waiman Long) [2008341] - mm: memcontrol: rename lruvec_holds_page_lru_lock to page_matches_lruvec (Waiman Long) [2008341] - mm: memcontrol: simplify lruvec_holds_page_lru_lock (Waiman Long) [2008341] - mm: memcontrol: remove the pgdata parameter of mem_cgroup_page_lruvec (Waiman Long) [2008341] - mm: memcontrol: bail out early when !mm in get_mem_cgroup_from_mm (Waiman Long) [2008341] - mm: memcontrol: fix page charging in page replacement (Waiman Long) [2008341] - percpu: optimize locking in pcpu_balance_workfn() (Waiman Long) [2008341] - percpu: initialize best_upa variable (Waiman Long) [2008341] - percpu: rework memcg accounting (Waiman Long) [2008341] - mm, memcg: introduce mem_cgroup_kmem_disabled() (Waiman Long) [2008341] - mm, memcg: mark cgroup_memory_nosocket, nokmem and noswap as __ro_after_init (Waiman Long) [2008341] - mm: vmscan: shrink deferred objects proportional to priority (Waiman Long) [2008341] - mm: memcontrol: reparent nr_deferred when memcg offline (Waiman Long) [2008341] - mm: vmscan: don't need allocate shrinker->nr_deferred for memcg aware shrinkers (Waiman Long) [2008341] - mm: vmscan: use per memcg nr_deferred of shrinker (Waiman Long) [2008341] - mm: vmscan: add per memcg shrinker nr_deferred (Waiman Long) [2008341] - mm: vmscan: use a new flag to indicate shrinker is registered (Waiman Long) [2008341] - mm: vmscan: add shrinker_info_protected() helper (Waiman Long) [2008341] - mm: memcontrol: rename shrinker_map to shrinker_info (Waiman Long) [2008341] - mm: vmscan: use kvfree_rcu instead of call_rcu (Waiman Long) [2008341] - mm: vmscan: remove memcg_shrinker_map_size (Waiman Long) [2008341] - mm: vmscan: use shrinker_rwsem to protect shrinker_maps allocation (Waiman Long) [2008341] - mm: vmscan: consolidate shrinker_maps handling code (Waiman Long) [2008341] - mm: vmscan: use nid from shrink_control for tracepoint (Waiman Long) [2008341] - linux/memcontrol.h: remove duplicate struct declaration (Waiman Long) [2008341] - memcg: charge before adding to swapcache on swapin (Waiman Long) [2008341] - kselftests: cgroup: update kmem test for new vmstat implementation (Waiman Long) [2008341] - mm: memcontrol: consolidate lruvec stat flushing (Waiman Long) [2008341] - mm: memcontrol: switch to rstat (Waiman Long) [2008341] - cgroup: rstat: punt root-level optimization to individual controllers (Waiman Long) [2008341] - cgroup: rstat: support cgroup1 (Waiman Long) [2008341] - mm: memcontrol: privatize memcg_page_state query functions (Waiman Long) [2008341] - mm: memcontrol: kill mem_cgroup_nodeinfo() (Waiman Long) [2008341] - memcg: enable memcg oom-kill for __GFP_NOFAIL (Waiman Long) [2008341] - memcg: cleanup root memcg checks (Waiman Long) [2008341] - mm: memcontrol: fix kernel stack account (Waiman Long) [2008341] - mm: page-writeback: simplify memcg handling in test_clear_page_writeback() (Waiman Long) [2008341] - percpu: implement partial chunk depopulation (Waiman Long) [2008341] - percpu: use pcpu_free_slot instead of pcpu_nr_slots - 1 (Waiman Long) [2008341] - percpu: factor out pcpu_check_block_hint() (Waiman Long) [2008341] - percpu: split __pcpu_balance_workfn() (Waiman Long) [2008341] - percpu: fix a comment about the chunks ordering (Waiman Long) [2008341] - mm/compaction: remove rcu_read_lock during page compaction (Waiman Long) [2008341] - mm/vmscan.c: make lruvec_lru_size() static (Waiman Long) [2008341] - include/linux/mm_inline.h: fold __update_lru_size() into its sole caller (Waiman Long) [2008341] - include/linux/mm_inline.h: fold page_lru_base_type() into its sole caller (Waiman Long) [2008341] - mm: VM_BUG_ON lru page flags (Waiman Long) [2008341] - mm: add __clear_page_lru_flags() to replace page_off_lru() (Waiman Long) [2008341] - mm/swap.c: don't pass "enum lru_list" to del_page_from_lru_list() (Waiman Long) [2008341] - mm/swap.c: don't pass "enum lru_list" to trace_mm_lru_insertion() (Waiman Long) [2008341] - mm: don't pass "enum lru_list" to lru list addition functions (Waiman Long) [2008341] - include/linux/mm_inline.h: shuffle lru list addition and deletion functions (Waiman Long) [2008341] - mm/vmscan.c: use add_page_to_lru_list() (Waiman Long) [2008341] - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback) (Waiman Long) [2008341] - mm: remove superfluous __ClearPageActive() (Waiman Long) [2008341] - mm, memcg: decouple e{low,min} state mutations from protection checks (Waiman Long) [2008341] - Revert "cgroup: Add memory barriers to plug cgroup_rstat_updated() race window" (Waiman Long) [2008341] - mm/memcontrol.c: allocate shrinker_map on appropriate NUMA node (Waiman Long) [2008341] - include/bitmap.h: add new functions to documentation (Waiman Long) [2008341] - include/bitmap.h: add missing parameter in docs (Waiman Long) [2008341] - bitmap: genericize percpu bitmap region iterators (Waiman Long) [2008341] - cgroup, rstat: Don't flush subtree root unless necessary (Waiman Long) [2008341] - mm/memcg: Move mem_cgroup kABI compatibility structure into rh_kabi_memcg.h (Waiman Long) [2008341] - mm/swap: consider max pages in iomap_swapfile_add_extent (Brian Foster) [1969326] - mm/slub: Fix backtrace of objects to handle redzone adjustment (Waiman Long) [2008340] - powerpc/powernv: Fix CPU idle to be called with IRQs disabled (Waiman Long) [2008340] - torture: Fix grace-period rate output (Waiman Long) [2008340] - rcu: Fix kfree_rcu() docbook errors (Waiman Long) [2008340] - rcu/nocb: Perform deferred wake up before last idle's need_resched() check (Waiman Long) [2008340] - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers (Waiman Long) [2008340] - idle: Prevent late-arriving interrupts from disrupting offline (Waiman Long) [2008340] - torture: Maintain torture-specific set of CPUs-online books (Waiman Long) [2008340] - torture: Clean up after torture-test CPU hotplugging (Waiman Long) [2008340] - rcutorture: Make object_debug also double call_rcu() heap object (Waiman Long) [2008340] - torture: Throttle VERBOSE_TOROUT_*() output (Waiman Long) [2008340] - torture: Make refscale throttle high-rate printk()s (Waiman Long) [2008340] - rcutorture: Use hrtimers for reader and writer delays (Waiman Long) [2008340] - torture: Make stutter use torture_hrtimeout_*() functions (Waiman Long) [2008340] - rcutorture: Use torture_hrtimeout_jiffies() to avoid busy-waits (Waiman Long) [2008340] - torture: Add fuzzed hrtimer-based sleep functions (Waiman Long) [2008340] - rcutorture: Make rcu_torture_fakewriter() use blocking wait primitives (Waiman Long) [2008340] - rcutorture: Make synctype[] and nsynctype be static global (Waiman Long) [2008340] - rcutorture: Require entire stutter period be post-boot (Waiman Long) [2008340] - refscale: Allow summarization of verbose output (Waiman Long) [2008340] - torture: Allow standalone kvm-recheck.sh run detect --trust-make (Waiman Long) [2008340] - torture: Simplify exit-code plumbing for kvm-recheck.sh and kvm-find-errors.sh (Waiman Long) [2008340] - torture: s/STOP/STOP.1/ to avoid scenario collision (Waiman Long) [2008340] - torture: Add --dryrun batches to help schedule a distributed run (Waiman Long) [2008340] - torture: Stop hanging on panic (Waiman Long) [2008340] - torture: Add kvm.sh test summary to end of log file (Waiman Long) [2008340] - torture: Make kvm.sh include --kconfig arguments in CPU calculation (Waiman Long) [2008340] - torture: Make kvm.sh return failure upon build failure (Waiman Long) [2008340] - torture: Print run duration at end of kvm.sh execution (Waiman Long) [2008340] - torture: Make kvm.sh arguments accumulate (Waiman Long) [2008340] - torture: Make kvm.sh "Test Summary" date be end of test (Waiman Long) [2008340] - tools/rcutorture: Make identify_qemu_vcpus() independent of local language (Waiman Long) [2008340] - torture: Add config2csv.sh script to compare torture scenarios (Waiman Long) [2008340] - torture: Prepare for splitting qemu execution from kvm-test-1-run.sh (Waiman Long) [2008340] - torture: Allow kvm.sh --datestamp to specify subdirectories (Waiman Long) [2008340] - torture: Make kvm.sh "--dryrun sched" summarize number of builds (Waiman Long) [2008340] - torture: Make kvm.sh "--dryrun sched" summarize number of batches (Waiman Long) [2008340] - torture: Make --kcsan specify lockdep (Waiman Long) [2008340] - rcu: Do not NMI offline CPUs (Waiman Long) [2008340] - rcu: For RCU grace-period kthread starvation, dump last CPU it ran on (Waiman Long) [2008340] - rcu: Mark obtuse portion of stall warning as internal debug (Waiman Long) [2008340] - scftorture: Add debug output for wrong-CPU warning (Waiman Long) [2008340] - rcutorture: Add testing for RCU's global memory ordering (Waiman Long) [2008340] - rcutorture: Add reader-side tests of polling grace-period API (Waiman Long) [2008340] - rcutorture: Add writer-side tests of polling grace-period API (Waiman Long) [2008340] - rcutorture: Prepare for ->start_gp_poll and ->poll_gp_state (Waiman Long) [2008340] - srcu: Add comment explaining cookie overflow/wrap (Waiman Long) [2008340] - srcu: Document polling interfaces for Tree SRCU grace periods (Waiman Long) [2008340] - srcu: Provide polling interfaces for Tree SRCU grace periods (Waiman Long) [2008340] - srcu: Provide polling interfaces for Tiny SRCU grace periods (Waiman Long) [2008340] - srcu: Provide internal interface to start a Tree SRCU grace period (Waiman Long) [2008340] - srcu: Provide internal interface to start a Tiny SRCU grace period (Waiman Long) [2008340] - srcu: Make Tiny SRCU use multi-bit grace-period counter (Waiman Long) [2008340] - rcu: Enable rcu_normal_after_boot unconditionally for RT (Waiman Long) [2008340] - rcu: Unconditionally use rcuc threads on PREEMPT_RT (Waiman Long) [2008340] - rcu: Make RCU_BOOST default on CONFIG_PREEMPT_RT (Waiman Long) [2008340] - rcu: Eliminate the __kvfree_rcu() macro (Waiman Long) [2008340] - rcu: Introduce kfree_rcu() single-argument macro (Waiman Long) [2008340] - rcu: Record kvfree_call_rcu() call stack for KASAN (Waiman Long) [2008340] - rcu: Do any deferred nocb wakeups at CPU offline time (Waiman Long) [2008340] - rcu/nocb: Code-style nits in callback-offloading toggling (Waiman Long) [2008340] - rcu/nocb: Add nocb CB kthread list to show_rcu_nocb_state() output (Waiman Long) [2008340] - rcu/nocb: Add grace period and task state to show_rcu_nocb_state() output (Waiman Long) [2008340] - tools/rcutorture: Support nocb toggle in TREE01 (Waiman Long) [2008340] - rcutorture: Test runtime toggling of CPUs' callback offloading (Waiman Long) [2008340] - cpu/hotplug: Add lockdep_is_cpus_held() (Waiman Long) [2008340] - rcu/nocb: Locally accelerate callbacks as long as offloading isn't complete (Waiman Long) [2008340] - rcu/nocb: Process batch locally as long as offloading isn't complete (Waiman Long) [2008340] - rcu/nocb: Only cond_resched() from actual offloaded batch processing (Waiman Long) [2008340] - rcu/nocb: Set SEGCBLIST_SOFTIRQ_ONLY at the very last stage of de-offloading (Waiman Long) [2008340] - rcu/nocb: Flush bypass before setting SEGCBLIST_SOFTIRQ_ONLY (Waiman Long) [2008340] - rcu/nocb: Shutdown nocb timer on de-offloading (Waiman Long) [2008340] - rcu/nocb: Re-offload support (Waiman Long) [2008340] - rcu/nocb: De-offloading GP kthread (Waiman Long) [2008340] - rcu/nocb: Don't deoffload an offline CPU with pending work (Waiman Long) [2008340] - rcu/nocb: De-offloading CB kthread (Waiman Long) [2008340] - rcu/nocb: Always init segcblist on CPU up (Waiman Long) [2008340] - rcu/nocb: Provide basic callback offloading state machine bits (Waiman Long) [2008340] - rcu/nocb: Turn enabled/offload states into a common flag (Waiman Long) [2008340] - rcu/segcblist: Add debug checks for segment lengths (Waiman Long) [2008340] - rcu/trace: Add tracing for how segcb list changes (Waiman Long) [2008340] - rcu/tree: segcblist: Remove redundant smp_mb()s (Waiman Long) [2008340] - rcu/segcblist: Add counters to segcblist datastructure (Waiman Long) [2008340] - rcu/segcblist: Add additional comments to explain smp_mb() (Waiman Long) [2008340] - rcu/tree: Make rcu_do_batch count how many callbacks were executed (Waiman Long) [2008340] - rcu: Make call_rcu() print mem_dump_obj() info for double-freed callback (Waiman Long) [2008340] - mm: Make mem_obj_dump() vmalloc() dumps include start and length (Waiman Long) [2008340] - mm: Make mem_dump_obj() handle vmalloc() memory (Waiman Long) [2008340] - mm: Make mem_dump_obj() handle NULL and zero-sized pointers (Waiman Long) [2008340] - mm: Add mem_dump_obj() to print source of memory block (Waiman Long) [2008340] - rcu: Make TASKS_TRACE_RCU select IRQ_WORK (Waiman Long) [2008340] - rcu-tasks: Add RCU-tasks self tests (Waiman Long) [2008340] - rcu-tasks: Move RCU-tasks initialization to before early_initcall() (Waiman Long) [2008340] - rcu: Add lockdep_assert_irqs_disabled() to raw_spin_unlock_rcu_node() macros (Waiman Long) [2008340] - rcu: Add lockdep_assert_irqs_disabled() to rcu_sched_clock_irq() and callees (Waiman Long) [2008340] - rcutorture: Don't do need_resched() testing if ->sync is NULL (Waiman Long) [2008340] - scftorture: Add full-test stutter capability (Waiman Long) [2008340] - torture: Allow alternative forms of kvm.sh command-line arguments (Waiman Long) [2008340] - rcutorture: Small code cleanups (Waiman Long) [2008340] - torture: Accept time units on kvm.sh --duration argument (Waiman Long) [2008340] - rcutorture: Make stutter_wait() caller restore priority (Waiman Long) [2008340] - torture: Force weak-hashed pointers on console log (Waiman Long) [2008340] - rcutorture: Prevent hangs for invalid arguments (Waiman Long) [2008340] - torture: Prevent jitter processes from delaying failed run (Waiman Long) [2008340] - rcutorture: Adjust scenarios SRCU-t and SRCU-u to make kconfig happy (Waiman Long) [2008340] - refscale: Prevent hangs for invalid arguments (Waiman Long) [2008340] - rcuscale: Prevent hangs for invalid arguments (Waiman Long) [2008340] - torture: Exclude "NOHZ tick-stop error" from fatal errors (Waiman Long) [2008340] - rcuscale: Avoid divide by zero (Waiman Long) [2008340] - rcuscale: Add RCU Tasks Trace (Waiman Long) [2008340] - scftorture: Add an alternative IPI vector (Waiman Long) [2008340] - torture: Make torture_stutter() use hrtimer (Waiman Long) [2008340] - torture: Periodically pause in stutter_wait() (Waiman Long) [2008340] - torture: Don't kill gdb sessions (Waiman Long) [2008340] - refscale: Bounds-check module parameters (Waiman Long) [2008340] - rcu-tasks: Make the units of ->init_fract be jiffies (Waiman Long) [2008340] - rcutorture: Make grace-period kthread report match RCU flavor being tested (Waiman Long) [2008340] - rcu-tasks: Convert rcu_tasks_wait_gp() for-loop to while-loop (Waiman Long) [2008340] - rcutorture: Make preemptible TRACE02 enable lockdep (Waiman Long) [2008340] - srcu: Use a more appropriate lockdep helper (Waiman Long) [2008340] - srcu: Take early exit on memory-allocation failure (Waiman Long) [2008340] - rcu: Fix a typo in rcu_blocking_is_gp() header comment (Waiman Long) [2008340] - rcu: Prevent lockdep-RCU splats on lock acquisition/release (Waiman Long) [2008340] - rcu/tree: nocb: Avoid raising softirq for offloaded ready-to-execute CBs (Waiman Long) [2008340] - rcu/tree: Make struct kernel_param_ops definitions const (Waiman Long) [2008340] - rcu/tree: Add a warning if CPU being onlined did not report QS already (Waiman Long) [2008340] - rcu: Clarify nocb kthreads naming in RCU_NOCB_CPU config (Waiman Long) [2008340] - rcu: Fix single-CPU check in rcu_blocking_is_gp() (Waiman Long) [2008340] - rcu: Implement rcu_segcblist_is_offloaded() config dependent (Waiman Long) [2008340] - list.h: Update comment to explicitly note circular lists (Waiman Long) [2008340] - rcu: Panic after fixed number of stalls (Waiman Long) [2008340] - x86/smpboot: Move rcu_cpu_starting() earlier (Waiman Long) [2008340] - torture: Replace cpu_up/down() with add/remove_cpu() (Waiman Long) [2008340] - PCI/PTM: Remove error message at boot (Myron Stowe) [1993252] - PCI: Mark AMD Navi14 GPU ATS as broken (Myron Stowe) [1993252] - PCI: vmd: Update type of the __iomem pointers (Myron Stowe) [1993252] - PCI: Unify ECAM constants in native PCI Express drivers (Myron Stowe) [1993252] - PCI: Add function 1 DMA alias quirk for Marvell 9215 SATA controller (Myron Stowe) [1993252] - PCI: Mark AMD Raven iGPU ATS as broken in some platforms (Myron Stowe) [1993252] - PCI: Disable PTM during suspend to save power (Myron Stowe) [1993252] - PCI/PTM: Save/restore Precision Time Measurement Capability for suspend/resume (Myron Stowe) [1993252] - PCI: Add sysfs attribute for device power state (Myron Stowe) [1993252] - PCI/MSI: Set device flag indicating only 32-bit MSI support (Myron Stowe) [1993252] - PCI/MSI: Move MSI/MSI-X flags updaters to msi.c (Myron Stowe) [1993252] - PCI/MSI: Move MSI/MSI-X init to msi.c (Myron Stowe) [1993252] - PCI: Use predefined Pericom Vendor ID (Myron Stowe) [1993252] - PCI: Disable MSI for Pericom PCIe-USB adapter (Myron Stowe) [1993252] - PCI: Reduce pci_set_cacheline_size() message to debug level (Myron Stowe) [1993252] - PCI: Remove unused HAVE_PCI_SET_MWI (Myron Stowe) [1993252] - PCI: Fix overflow in command-line resource alignment requests (Myron Stowe) [1993252] - PCI: Bounds-check command-line resource alignment requests (Myron Stowe) [1993252] - PCI: Fix kernel-doc markup (Myron Stowe) [1993252] - PCI: ibmphp: Remove unneeded break (Myron Stowe) [1993252] - PCI/ACPI: Fix companion lookup for device 0 on the root bus (Myron Stowe) [1993252] - PCI: Keep both device and resource name for config space remaps (Myron Stowe) [1993252] - PCI: Return u16 from pci_find_ext_capability() and similar (Myron Stowe) [1993252] - PCI: Return u8 from pci_find_capability() and similar (Myron Stowe) [1993252] - PCI: Avoid duplicate IDs in driver dynamic IDs list (Myron Stowe) [1993252] - PCI: Move pci_match_device() ahead of new_id_store() (Myron Stowe) [1993252] - PCI: Decode PCIe 64 GT/s link speed (Myron Stowe) [1993252] - PCI: host-generic: Support building as modules (Myron Stowe) [1993252] - ata: sata_nv: Fix retrieving of active qcs (Tomas Henzl) [1921465] - ata: pata_ns87415.c: Document support on parisc with superio chip (Tomas Henzl) [1921465] - ata: fix some kernel-doc markups (Tomas Henzl) [1921465] - sata, highbank: simplify the return expression of ahci_highbank_suspend (Tomas Henzl) [1921465] - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks (Tomas Henzl) [1921465] - ata: ahci: use ata_link_info() instead of ata_link_printk() (Tomas Henzl) [1921465] - libata: Use per port sync for detach (Tomas Henzl) [1921465] - ata/libata: Fix usage of page address by page_address in ata_scsi_mode_select_xlat function (Tomas Henzl) [1921465] - sata_rcar: handle pm_runtime_get_sync failure cases (Tomas Henzl) [1921465] - ata: sata_inic162x fix a spelling issue (Tomas Henzl) [1921465] - ata: libata-core: fix a doc warning (Tomas Henzl) [1921465] - ata: ahci: Add sysfs attribute to show remapped NVMe device count (Tomas Henzl) [1921465] - ata: ahci-imx: remove redundant assignment to ret (Tomas Henzl) [1921465] - libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set (Tomas Henzl) [1921465] - ata: move ata_eh_analyze_ncq_error() & co. to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-eh.c (Tomas Henzl) [1921465] - ata: move ata_sas_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-scsi.c (Tomas Henzl) [1921465] - ata: move sata_deb_timing_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: move ata_qc_complete_multiple() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_link_hardreset() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_link_{debounce,resume}() to libata-sata.c (Tomas Henzl) [1921465] - ata: move *sata_set_spd*() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_scr_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-core.c (Tomas Henzl) [1921465] - ata: fix CodingStyle issues in PATA timings code (Tomas Henzl) [1921465] - ata: remove EXPORT_SYMBOL_GPL()s not used by modules (Tomas Henzl) [1921465] - ata: move EXPORT_SYMBOL_GPL()s close to exported code (Tomas Henzl) [1921465] - ata: optimize ata_scsi_rbuf[] size (Tomas Henzl) [1921465] - ata: optimize struct ata_force_param size (Tomas Henzl) [1921465] - ata: use COMMAND_LINE_SIZE for ata_force_param_buf[] size (Tomas Henzl) [1921465] - ata: simplify ata_scsiop_inq_89() (Tomas Henzl) [1921465] - sata_promise: use ata_cable_sata() (Tomas Henzl) [1921465] - ata: make SATA_PMP option selectable only if any SATA host driver is enabled (Tomas Henzl) [1921465] - ata: expose ncq_enable_prio sysfs attribute only on NCQ capable hosts (Tomas Henzl) [1921465] - ata: remove stale maintainership information from core code (Tomas Henzl) [1921465] - libata: Assign OF node to the SCSI device (Tomas Henzl) [1921465] - libata: Remove extra scsi_host_put() in ata_scsi_add_hosts() (Tomas Henzl) [1921465] - libata: transport: Use scnprintf() for avoiding potential buffer overflow (Tomas Henzl) [1921465] - ata/acard_ahci: remove unused variable n_elem (Tomas Henzl) [1921465] - ata: ahci_brcm: BCM7216 reset is self de-asserting (Tomas Henzl) [1921465] - ata: ahci_brcm: Perform reset after obtaining resources (Tomas Henzl) [1921465] - ata: brcm: fix reset controller API usage (Tomas Henzl) [1921465] - ata: brcm: mark PM functions as __maybe_unused (Tomas Henzl) [1921465] - ata: ahci_brcm: Support BCM7216 reset controller name (Tomas Henzl) [1921465] - ata: ahci_brcm: Add a shutdown callback (Tomas Henzl) [1921465] - ata: ahci_brcm: Manage reset line during suspend/resume (Tomas Henzl) [1921465] - ata: ahci_brcm: Add missing clock management during recovery (Tomas Henzl) [1921465] - ata: ahci_brcm: BCM7425 AHCI requires AHCI_HFLAG_DELAY_ENGINE (Tomas Henzl) [1921465] - ata: ahci_brcm: Fix AHCI resources management (Tomas Henzl) [1921465] - ata: libahci_platform: Export again ahci_platform_able_phys() (Tomas Henzl) [1921465] - libata: Fix retrieving of active qcs (Tomas Henzl) [1921465] - ata: pata_artop: make arrays static const, makes object smaller (Tomas Henzl) [1921465] - ata_piix: remove open-coded dmi_match(DMI_OEM_STRING) (Tomas Henzl) [1921465] - ata: sata_mv, avoid trigerrable BUG_ON (Tomas Henzl) [1921465] - ata: make qc_prep return ata_completion_errors (Tomas Henzl) [1921465] - ata: define AC_ERR_OK (Tomas Henzl) [1921465] - libata: Ensure ata_port probe has completed before detach (Tomas Henzl) [1921465] - ahci: tegra: use regulator_bulk_set_supply_names() (Tomas Henzl) [1921465] - ahci: Add support for Amazon's Annapurna Labs SATA controller (Tomas Henzl) [1921465] - ata: libahci_platform: Fix regulator_get_optional() misuse (Tomas Henzl) [1921465] - ata: ahci-imx: Covert to use GPIO descriptor (Tomas Henzl) [1921465] - libata/ahci: Fix PCS quirk application (Tomas Henzl) [1921465] - libata/ahci: Drop PCS quirk for Denverton and beyond (Tomas Henzl) [1921465] - libata: switch remaining drivers to use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_sil24: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_qstor: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_nv: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_mv: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - pdc_adma: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - ahci: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - acard_ahci: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - libata: add SG safety checks in SFF pio transfers (Tomas Henzl) [1921465] - libata: have ata_scsi_rw_xlat() fail invalid passthrough requests (Tomas Henzl) [1921465] - ata: rb532_cf: Fix unused variable warning in rb532_pata_driver_probe (Tomas Henzl) [1921465] - ata: libahci: do not complain in case of deferred probe (Tomas Henzl) [1921465] - libata: zpodd: Fix small read overflow in zpodd_get_mech_type() (Tomas Henzl) [1921465] - ata: libahci_platform: remove redundant dev_err message (Tomas Henzl) [1921465] - drivers: ata: ahci_sunxi: Increased SATA/AHCI DMA TX/RX FIFOs (Tomas Henzl) [1921465] - libata: Drop firmware version check from the ST1000LM024 quirk (Tomas Henzl) [1921465] - ata: sata_sil24: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata:sata_qstor: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: sata_nv: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: pdc_adma: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: libahci: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: acard-ahci: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - libata: don't request sense data on !ZAC ATA devices (Tomas Henzl) [1921465] - libata: Extend quirks for the ST1000LM024 drives with NOLPM quirk (Tomas Henzl) [1921465] - sata_rcar: Remove ata_host_alloc() error printing (Tomas Henzl) [1921465] - libata: fix using DMA buffers on stack (Tomas Henzl) [1921465] - ata: libahci: Only warn for AHCI_HFLAG_MULTI_MSI set when genuine custom irq handler implemented (Tomas Henzl) [1921465] - libata: fix a typo in comment (Tomas Henzl) [1921465] - sata_rcar: fix deferred probing (Tomas Henzl) [1921465] - ata: sata_highbank: Convert to use GPIO descriptors (Tomas Henzl) [1921465] - sata_rcar: convert to SPDX identifiers (Tomas Henzl) [1921465] - ata: ep93xx: Use proper enums for directions (Tomas Henzl) [1921465] - ata: ahci_brcm: Allow using driver or DSL SoCs (Tomas Henzl) [1921465] - ata: ahci_brcm: Match BCM63138 compatible strings (Tomas Henzl) [1921465] - ata: ahci_brcm: Allow optional reset controller to be used (Tomas Henzl) [1921465] - libata: mask swap internal and hardware tag (Tomas Henzl) [1921465] - pata_atiixp: Remove unnecessary parentheses (Tomas Henzl) [1921465] - ata: ahci_sunxi: add support for r40 (Tomas Henzl) [1921465] - ata: ahci_platform: add support for PHY controller regulator (Tomas Henzl) [1921465] - ata: ahci_platform: add support for AHCI controller regulator (Tomas Henzl) [1921465] - libata: Use SMART LBAM/LBAH password defines (Tomas Henzl) [1921465] - ata: ahci: Convert to using pOFn instead of device_node.name (Tomas Henzl) [1921465] - ata: ftide010: Add a quirk for SQ201 (Tomas Henzl) [1921465] - ata: ahci_platform: enable to get and control reset (Tomas Henzl) [1921465] - ata: libahci_platform: add reset control support (Tomas Henzl) [1921465] - ata: add an extra argument to ahci_platform_get_resources() (Tomas Henzl) [1921465] - ata: sata_rcar: exclude setting of PHY registers in Gen3 (Tomas Henzl) [1921465] - ata: sata_rcar: really mask all interrupts on Gen2 and later (Tomas Henzl) [1921465] - ata: libahci: Allow reconfigure of DEVSLP register (Tomas Henzl) [1921465] - ata: libahci: Correct setting of DEVSLP register (Tomas Henzl) [1921465] - ata: ahci: Enable DEVSLP by default on x86 with SLP_S0 (Tomas Henzl) [1921465] - ata: ahci: Support state with min power but Partial low power state (Tomas Henzl) [1921465] - Revert "ata: ahci_platform: convert kcalloc to devm_kcalloc" (Tomas Henzl) [1921465] - ata: sata_rcar: Add rudimentary Runtime PM support (Tomas Henzl) [1921465] - ata: sata_rcar: Provide a short-hand for &pdev->dev (Tomas Henzl) [1921465] - ata: Only output sg element mapped number in verbose debug (Tomas Henzl) [1921465] - ata: Guard ata_scsi_dump_cdb() by ATA_VERBOSE_DEBUG (Tomas Henzl) [1921465] - ata: ahci_platform: convert kcalloc to devm_kcalloc (Tomas Henzl) [1921465] - ata: ahci_platform: convert kzallloc to kcalloc (Tomas Henzl) [1921465] - ata: ahci_platform: correct parameter documentation for ahci_platform_shutdown (Tomas Henzl) [1921465] - libata: remove ata_sff_data_xfer_noirq() (Tomas Henzl) [1921465] - scsi: target: Fix the pgr/alua_support_store functions (Maurizio Lombardi) [1995935] - sched/deadline: Fix missing clock update in migrate_task_rq_dl() (Phil Auld) [1992254] - sched/fair: Avoid a second scan of target in select_idle_cpu (Phil Auld) [1992254] - sched/fair: Use prev instead of new target as recent_used_cpu (Phil Auld) [1992254] - sched: Replace deprecated CPU-hotplug functions. (Phil Auld) [1992254] - sched/deadline: Fix reset_on_fork reporting of DL tasks (Phil Auld) [1992254] - sched/numa: Fix is_core_idle() (Phil Auld) [1992254] - sched/fair: Sync load_sum with load_avg after dequeue (Phil Auld) [1992254] - sched/fair: Fix CFS bandwidth hrtimer expiry type (Phil Auld) [1992254] - sched/fair: Ensure _sum and _avg values stay consistent (Phil Auld) [1992254] - sched/fair: Ensure that the CFS parent is added after unthrottling (Phil Auld) [1992254] - sched/rt: Fix Deadline utilization tracking during policy change (Phil Auld) [1992254] - sched/rt: Fix RT utilization tracking during policy change (Phil Auld) [1992254] - sched/fair: Age the average idle time (Phil Auld) [1992254] - wait: use LIST_HEAD_INIT() to initialize wait_queue_head (Phil Auld) [1992254] - sched: Optimize housekeeping_cpumask() in for_each_cpu_and() (Phil Auld) [1992254] - sched/fair: Fix util_est UTIL_AVG_UNCHANGED handling (Phil Auld) [1992254] - sched/pelt: Check that *_avg are null when *_sum are (Phil Auld) [1992254] - sched/fair: Correctly insert cfs_rq's to list on unthrottle (Phil Auld) [1992254] - sched/pelt: Ensure that *_sum is always synced with *_avg (Phil Auld) [1992254] - sched/fair: Return early from update_tg_cfs_load() if delta == 0 (Phil Auld) [1992254] - sched/fair: Make sure to update tg contrib for blocked load (Phil Auld) [1992254] - sched/fair: Keep load_avg and load_sum synced (Phil Auld) [1992254] - sched: Stop PF_NO_SETAFFINITY from being inherited by various init system threads (Phil Auld) [1992254] - sched: Fix a stale comment in pick_next_task() (Phil Auld) [1992254] - sched/fair: Fix ascii art by relpacing tabs (Phil Auld) [1992254] - tick/nohz: Call tick_nohz_task_switch() with interrupts disabled (Phil Auld) [1992254] - sched/fair: Fix clearing of has_idle_cores flag in select_idle_cpu() (Phil Auld) [1992254] - sched/core: Remove the pointless BUG_ON(!task) from wake_up_q() (Phil Auld) [1992254] - sched: Make the idle task quack like a per-CPU kthread (Phil Auld) [1992254] - sched/fair: Fix unfairness caused by missing load decay (Phil Auld) [1992254] - sched: Make nr_iowait_cpu() return 32-bit value (Phil Auld) [1992254] - sched: Make nr_iowait() return 32-bit value (Phil Auld) [1992254] - sched: Make nr_running() return 32-bit value (Phil Auld) [1992254] - sched/isolation: Reconcile rcu_nocbs= and nohz_full= (Phil Auld) [1992254] - sched/fair: Introduce a CPU capacity comparison helper (Phil Auld) [1992254] - sched/fair: Clean up active balance nr_balance_failed trickery (Phil Auld) [1992254] - sched/fair: Move update_nohz_stats() to the CONFIG_NO_HZ_COMMON block to simplify the code & fix an unused function warning (Phil Auld) [1992254] - sched/fair: Bring back select_idle_smt(), but differently (Phil Auld) [1992254] - sched,fair: Alternative sched_slice() (Phil Auld) [1992254] - sched/topology: Remove redundant cpumask_and() in init_overlap_sched_group() (Phil Auld) [1992254] - sched/numa: Allow runtime enabling/disabling of NUMA balance without SCHED_DEBUG (Phil Auld) [1992254] - sched/fair: Optimize test_idle_cores() for !SMT (Phil Auld) [1992254] - sched: Fix various typos (Phil Auld) [1992254] - sched: Remove unnecessary variable from schedule_tail() (Phil Auld) [1992254] - sched: Optimize __calc_delta() (Phil Auld) [1992254] - sched: Provide raw_spin_rq_*lock*() helpers (Phil Auld) [1992254] - sched/pelt: Fix task util_est update filtering (Phil Auld) [1992254] - sched/fair: use lsub_positive in cpu_util_next() (Phil Auld) [1992254] - sched/fair: Reduce the window for duplicated update (Phil Auld) [1992254] - sched/fair: Reorder newidle_balance pulled_task tests (Phil Auld) [1992254] - sched/fair: Remove unused parameter of update_nohz_stats (Phil Auld) [1992254] - sched/fair: Remove unused return of _nohz_idle_balance (Phil Auld) [1992254] - sched/fair: Remove update of blocked load from newidle_balance (Phil Auld) [1992254] - sched/topology: fix the issue groups don't span domain->span for NUMA diameter > 2 (Phil Auld) [1992254] - sched/fair: Merge select_idle_core/cpu() (Phil Auld) [1992254] - sched/fair: Remove select_idle_smt() (Phil Auld) [1992254] - sched/fair: Move avg_scan_cost calculations under SIS_PROP (Phil Auld) [1992254] - sched/fair: Remove SIS_AVG_CPU (Phil Auld) [1992254] - sched/eas: Don't update misfit status if the task is pinned (Phil Auld) [1992254] - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue (Phil Auld) [1992254] - sched/fair: Add a few assertions (Phil Auld) [1992254] - cpufreq: schedutil: Simplify sugov_update_next_freq() (Phil Auld) [1992254] - sched/topology: Warn when NUMA diameter > 2 (Phil Auld) [1992254] - sched: Use task_current() instead of 'rq->curr == p' (Phil Auld) [1992254] - sched/core: Allow try_invoke_on_locked_down_task() with irqs disabled (Phil Auld) [1992254] - sched/fair: Exclude the current CPU from find_new_ilb() (Phil Auld) [1992254] - rbtree, sched/deadline: Use rb_add_cached() (Phil Auld) [1992254] - rbtree, sched/fair: Use rb_add_cached() (Phil Auld) [1992254] - sched/isolation: Prefer housekeeping CPU in local node (Phil Auld) [1992254] - sched: Fix various typos in comments (Phil Auld) [1992254] - s390/qeth: fix deadlock during failing recovery (Sumanth Korikkar) [1984990] - s390/qeth: Fix deadlock in remove_discipline (Sumanth Korikkar) [1984990] - s390/qeth: fix NULL deref in qeth_clear_working_pool_list() (Sumanth Korikkar) [1984990] - s390/qdio: fix roll-back after timeout on ESTABLISH ccw (Sumanth Korikkar) [1984990] - s390/qdio: get rid of register asm (Sumanth Korikkar) [1984990] - s390/netiuvc: get rid of forward declarations (Sumanth Korikkar) [1984990] - s390/qeth: Consider dependency on SWITCHDEV module (Sumanth Korikkar) [1984990] - s390/qeth: shrink TX buffer struct (Sumanth Korikkar) [1984990] - s390/qeth: remove TX buffer's pointer to its queue (Sumanth Korikkar) [1984990] - s390/qeth: remove QAOB's pointer to its TX buffer (Sumanth Korikkar) [1984990] - s390/qeth: consolidate completion of pending TX buffers (Sumanth Korikkar) [1984990] - s390/qeth: use ethtool_sprintf() (Sumanth Korikkar) [1984990] - s390/qeth: unify the tracking of active cmds on ccw device (Sumanth Korikkar) [1984990] - s390/qeth: also use TX NAPI for non-IQD devices (Sumanth Korikkar) [1984990] - s390/qeth: count TX completion interrupts (Sumanth Korikkar) [1984990] - powerpc/stacktrace: Include linux/delay.h (Steve Best) [2010674] - powerpc/stacktrace: Fix spurious "stale" traces in raise_backtrace_ipi() (Steve Best) [2010674] - powerpc/xmon: Reset RCU and soft lockup watchdogs (Steve Best) [2010674] - bpf, sockmap: Fix sk->prot unhash op reset (Jiri Benc) [1947006] - xdp: fix xdp_return_frame() kernel BUG throw for page_pool memory model (Jiri Benc) [1947006] - selftests/bpf: Tests using bpf_check_mtu BPF-helper input mtu_len param (Jiri Benc) [1947006] - bpf: BPF-helper for MTU checking add length input (Jiri Benc) [1947006] - xsk: Remove dangling function declaration from header file (Jiri Benc) [1947006] - bpf: Remove blank line in bpf helper description comment (Jiri Benc) [1947006] - libbpf: Use AF_LOCAL instead of AF_INET in xsk.c (Jiri Benc) [1947006] - selftests/bpf: Tests using bpf_check_mtu BPF-helper (Jiri Benc) [1947006] - selftests/bpf: Use bpf_check_mtu in selftest test_cls_redirect (Jiri Benc) [1947006] - bpf: Drop MTU check when doing TC-BPF redirect to ingress (Jiri Benc) [1947006] - bpf: Add BPF-helper for MTU checking (Jiri Benc) [1947006] - bpf: bpf_fib_lookup return MTU value as output when looked up (Jiri Benc) [1947006] - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx (Jiri Benc) [1947006] - bpf: Remove MTU check in __bpf_skb_max_len (Jiri Benc) [1947006] - net, veth: Alloc skb in bulk for ndo_xdp_xmit (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_UDP{4,6}_RECVMSG (Jiri Benc) [1947006] - selftests/bpf: Rewrite recvmsg{4,6} asm progs to c in test_sock_addr (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_INET{4,6}_GET{PEER,SOCK}NAME (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_UDP{4,6}_SENDMSG (Jiri Benc) [1947006] - selftests/bpf: Verify that rebinding to port < 1024 from BPF works (Jiri Benc) [1947006] - bpf: Allow rewriting to ports under ip_unprivileged_port_start (Jiri Benc) [1947006] - net: port < inet_prot_sock(net) --> inet_port_requires_bind_service(net, port) (Jiri Benc) [1947006] - net: inet_is_local_reserved_port() should return bool not int (Jiri Benc) [1947006] - libbpf, xsk: Select AF_XDP BPF program based on kernel version (Jiri Benc) [1947006] - xsk: Fold xp_assign_dev and __xp_assign_dev (Jiri Benc) [1947006] - xsk: Remove explicit_free parameter from __xsk_rcv() (Jiri Benc) [1947006] - bpf: Split cgroup_bpf_enabled per attach type (Jiri Benc) [1947006] - bpf: Remove extra lock_sock for TCP_ZEROCOPY_RECEIVE (Jiri Benc) [1947006] - net, xdp: Introduce xdp_build_skb_from_frame utility routine (Jiri Benc) [1947006] - net, xdp: Introduce __xdp_build_skb_from_frame utility routine (Jiri Benc) [1947006] - bpf: Extend bind v4/v6 selftests for mark/prio/bindtoifindex (Jiri Benc) [1947006] - bpf: Allow to retrieve sol_socket opts from sock_addr progs (Jiri Benc) [1947006] - bpf: Replace fput with sockfd_put in sock map (Jiri Benc) [1947006] - tools: bpf: add SO_BINDTOIFINDEX to socket.h in tools (Jiri Benc) [1947006] - media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt() (Lucas Zampieri) [1956472] {CVE-2021-3542}- mm/hmm: make HMM_MIRROR an implicit option (Rafael Aquini) [1998534] - mm/hmm: allow HMM_MIRROR on all architectures with MMU (Rafael Aquini) [1998534] - mm: don't select MIGRATE_VMA_HELPER from HMM_MIRROR (Rafael Aquini) [1998534] - mm: sort out the DEVICE_PRIVATE Kconfig mess (Rafael Aquini) [1998534] - s390/ap/zcrypt: notify userspace with online, config and mode info (Stefan Schulze Frielinghaus) [1984895] - docs: livepatch: Fix a typo and remove the unnecessary gaps in a sentence (C. Erastus Toe) [1995447] - Documentation: livepatch: document reliable stacktrace (C. Erastus Toe) [1995447] - Documentation: livepatch: Convert to automatically generated contents (C. Erastus Toe) [1995447] - scsi: ibmvfc: Reinitialize sub-CRQs and perform channel enquiry after LPM (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Store return code of H_FREE_SUB_CRQ during cleanup (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Treat H_CLOSED as success during sub-CRQ registration (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Fix invalid sub-CRQ handles after hard reset (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Simplify handling of sub-CRQ initialization (Desnes A. Nunes do Rosario) [1932217] - exec: Transform exec_update_mutex into a rw_semaphore (Chris von Recklinghausen) [1993665] - perf: Break deadlock involving exec_update_mutex (Chris von Recklinghausen) [1993665] - pidfd: Add missing sock updates for pidfd_getfd() (Chris von Recklinghausen) [1993665] - exec: Move the call of prepare_binprm into search_binary_handler (Chris von Recklinghausen) [1993665] - exec: Allow load_misc_binary to call prepare_binprm unconditionally (Chris von Recklinghausen) [1993665] - exec: Convert security_bprm_set_creds into security_bprm_repopulate_creds (Chris von Recklinghausen) [1993665] - exec: Factor security_bprm_creds_for_exec out of security_bprm_set_creds (Chris von Recklinghausen) [1993665] - exec: Move would_dump into flush_old_exec (Chris von Recklinghausen) [1993665] - exec: Rename flush_old_exec begin_new_exec (Chris von Recklinghausen) [1993665] - exec: Move most of setup_new_exec into flush_old_exec (Chris von Recklinghausen) [1993665] - exec: In setup_new_exec cache current in the local variable me (Chris von Recklinghausen) [1993665] - exec: Merge install_exec_creds into setup_new_exec (Chris von Recklinghausen) [1993665] - exec: Rename the flag called_exec_mmap point_of_no_return (Chris von Recklinghausen) [1993665] - exec: Make unlocking exec_update_mutex explict (Chris von Recklinghausen) [1993665] - binfmt: Move install_exec_creds after setup_new_exec to match binfmt_elf (Chris von Recklinghausen) [1993665] - pidfd: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - perf: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - proc: io_accounting: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - proc: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - kernel/kcmp.c: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - kernel: doc: remove outdated comment cred.c (Chris von Recklinghausen) [1993665] - mm: docs: Fix a comment in process_vm_rw_core (Chris von Recklinghausen) [1993665] - selftests/ptrace: add test cases for dead-locks (Chris von Recklinghausen) [1993665] - exec: Fix a deadlock in strace (Chris von Recklinghausen) [1993665] - exec: Add exec_update_mutex to replace cred_guard_mutex (Chris von Recklinghausen) [1993665] - exec: Move exec_mmap right after de_thread in flush_old_exec (Chris von Recklinghausen) [1993665] - exec: Move cleanup of posix timers on exec out of de_thread (Chris von Recklinghausen) [1993665] - exec: Factor unshare_sighand out of de_thread and call it separately (Chris von Recklinghausen) [1993665] - exec: Only compute current once in flush_old_exec (Chris von Recklinghausen) [1993665] - pid: Implement pidfd_getfd syscall (Chris von Recklinghausen) [1993665] - pidfd: add P_PIDFD to waitid() (Chris von Recklinghausen) [1993665] - fork: return proper negative error code (Chris von Recklinghausen) [1993665] - copy_process(): don't use ksys_close() on cleanups (Chris von Recklinghausen) [1993665] - fork: don't check parent_tidptr with CLONE_PIDFD (Chris von Recklinghausen) [1993665] - fs/exec.c: move ->recursion_depth out of critical sections (Chris von Recklinghausen) [1993665] - clone: add CLONE_PIDFD (Chris von Recklinghausen) [1993665] - signal: support CLONE_PIDFD with pidfd_send_signal (Chris von Recklinghausen) [1993665] - arch: add pidfd and io_uring syscalls everywhere (Chris von Recklinghausen) [1993665] - signal: don't silently convert SI_USER signals to non-current pidfd (Chris von Recklinghausen) [1993665] - signal: add pidfd_send_signal() syscall (Chris von Recklinghausen) [1993665] - sched/core: Convert signal_struct.sigcnt to refcount_t (Chris von Recklinghausen) [1993665] - sched/core: Convert sighand_struct.count to refcount_t (Chris von Recklinghausen) [1993665] - exec: make prepare_bprm_creds static (Chris von Recklinghausen) [1993665] - fork: don't copy inconsistent signal handler state to child (Chris von Recklinghausen) [1993665] - Revert "perf: Break deadlock involving exec_update_mutex" (Chris von Recklinghausen) [1993665] - powerpc/mm/highmem: use __set_pte_at() for kmap_local() (Nico Pache) [2001854] - mm: extract might_alloc() debug check (Nico Pache) [2001854] - mm/mempolicy: use vma_lookup() in __access_remote_vm() (Nico Pache) [2001854] - mm/memory.c: use vma_lookup() in __access_remote_vm() (Nico Pache) [2001854] - mm/mremap: use vma_lookup() in vma_to_resize() (Nico Pache) [2001854] - mm/migrate: use vma_lookup() in do_pages_stat_array() (Nico Pache) [2001854] - mm/ksm: use vma_lookup() in find_mergeable_vma() (Nico Pache) [2001854] - kernel/events/uprobes: use vma_lookup() in find_active_uprobe() (Nico Pache) [2001854] - misc/sgi-gru/grufault: use vma_lookup() in gru_find_vma() (Nico Pache) [2001854] - media: videobuf2: use vma_lookup() in get_vaddr_frames() (Nico Pache) [2001854] - drm/amdgpu: use vma_lookup() in amdgpu_ttm_tt_get_user_pages() (Nico Pache) [2001854] - net/ipv5/tcp: use vma_lookup() in tcp_zerocopy_receive() (Nico Pache) [2001854] - vfio: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - virt/kvm: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - x86/sgx: use vma_lookup() in sgx_encl_find() (Nico Pache) [2001854] - arch/powerpc/kvm/book3s: use vma_lookup() in kvmppc_hv_setup_htab_rma() (Nico Pache) [2001854] - arch/powerpc/kvm/book3s_hv_uvmem: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - arch/arm64/kvm: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - drm/i915/selftests: use vma_lookup() in __igt_mmap() (Nico Pache) [2001854] - mm: add vma_lookup(), update find_vma_intersection() comments (Nico Pache) [2001854] - i915_vma: Rename vma_lookup to i915_vma_lookup (Nico Pache) [2001854] - media: videobuf2: Move frame_vector into media subsystem (Nico Pache) [2001854] - mm/frame-vector: Use FOLL_LONGTERM (Nico Pache) [2001854] - vhost: convert get_user_pages() --> pin_user_pages() (Nico Pache) [2001854] - docs: mm/gup: pin_user_pages.rst: add a "case 5" (Nico Pache) [2001854] - mm/gup: documentation fix for pin_user_pages*() APIs (Nico Pache) [2001854] - mm/gup: frame_vector: convert get_user_pages() --> pin_user_pages() (Nico Pache) [2001854] - mm/gup: update pin_user_pages.rst for "case 3" (mmu notifiers) (Nico Pache) [2001854] - mm: untag user pointers in get_vaddr_frames (Nico Pache) [2001854] - media: videobuf2-vmalloc: get_userptr: buffers are always writable (Nico Pache) [2001854] - net: expand textsearch ts_state to fit skb_seq_state (Nico Pache) [2001854] - esp: avoid unneeded kmap_atomic call (Nico Pache) [2001854] - net: compound page support in skb_seq_read (Nico Pache) [2001854] - net: support kmap_local forced debugging in skb_frag_foreach (Nico Pache) [2001854] - mm/highmem: fix CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP (Nico Pache) [2001854] - x86/crashdump/32: Simplify copy_oldmem_page() (Nico Pache) [2001854] - io-mapping: Provide iomap_local variant (Nico Pache) [2001854] - mm/highmem: Provide kmap_local* (Nico Pache) [2001854] - sched: highmem: Store local kmaps in task struct (Nico Pache) [2001854] - x86: Support kmap_local() forced debugging (Nico Pache) [2001854] - mm/highmem: Provide CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP (Nico Pache) [2001854] - mm/highmem: Provide and use CONFIG_DEBUG_KMAP_LOCAL (Nico Pache) [2001854] - mm/highmem: Take kmap_high_get() properly into account (Nico Pache) [2001854] - highmem: High implementation details and document API (Nico Pache) [2001854] - Documentation/io-mapping: Remove outdated blurb (Nico Pache) [2001854] - io-mapping: Cleanup atomic iomap (Nico Pache) [2001854] - mm/highmem: Remove the old kmap_atomic cruft (Nico Pache) [2001854] - highmem: Get rid of kmap_types.h (Nico Pache) [2001854] - powerpc/mm/highmem: Switch to generic kmap atomic (Nico Pache) [2001854] - x86/mm/highmem: Use generic kmap atomic implementation (Nico Pache) [2001854] - highmem: Make DEBUG_HIGHMEM functional (Nico Pache) [2001854] - highmem: Provide generic variant of kmap_atomic* (Nico Pache) [2001854] - asm-generic: Provide kmap_size.h (Nico Pache) [2001854] - fs: Remove asm/kmap_types.h includes (Nico Pache) [2001854] - highmem: Remove unused functions (Nico Pache) [2001854] - mm/highmem: Un-EXPORT __kmap_atomic_idx() (Nico Pache) [2001854] - kmap: consolidate kmap_prot definitions (Nico Pache) [2001854] - parisc/kmap: remove duplicate kmap code (Nico Pache) [2001854] - arch/kmap: define kmap_atomic_prot() for all arch's (Nico Pache) [2001854] - arch/kmap: ensure kmap_prot visibility (Nico Pache) [2001854] - arch/kunmap_atomic: consolidate duplicate code (Nico Pache) [2001854] - arch/kmap_atomic: consolidate duplicate code (Nico Pache) [2001854] - {x86,powerpc,microblaze}/kmap: move preempt disable (Nico Pache) [2001854] - arch/kunmap: remove duplicate kunmap implementations (Nico Pache) [2001854] - arch/kmap: remove redundant arch specific kmaps (Nico Pache) [2001854] - arch/kmap: remove BUG_ON() (Nico Pache) [2001854] - ipc: remove memcg accounting for sops objects in do_semtimedop() (Rafael Aquini) [1999705] {CVE-2021-3759} - memcg: enable accounting of ipc resources (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc: use kmalloc for msg_queue and shmid_kernel (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc sem: use kvmalloc for sem_undo allocation (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc/sem.c: replace kvmalloc/memset with kvzalloc and use struct_size (Rafael Aquini) [1999705] {CVE-2021-3759} - x86: sev-es: Restore SEV-ES-specific version of copy_from_kernel_nofault() (Vitaly Kuznetsov) [2010082] - perf machine: Initialize srcline string member in add_location struct (Michael Petlan) [1981880] - ipmi: kcs_bmc_aspeed: Fix less than zero comparison of a unsigned int (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Optionally apply status address (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Fix IBFIE typo from datasheet (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Implement KCS SerIRQ configuration (Tony Camuso) [2003186] - ipmi: kcs_bmc: Add serio adaptor (Tony Camuso) [2003186] - ipmi: kcs_bmc: Enable IBF on open (Tony Camuso) [2003186] - ipmi: kcs_bmc: Allow clients to control KCS IRQ state (Tony Camuso) [2003186] - ipmi: kcs_bmc: Decouple the IPMI chardev from the core (Tony Camuso) [2003186] - ipmi: kcs_bmc: Strip private client data from struct kcs_bmc (Tony Camuso) [2003186] - ipmi: kcs_bmc: Split headers into device and client (Tony Camuso) [2003186] - ipmi: kcs_bmc: Turn the driver data-structures inside-out (Tony Camuso) [2003186] - ipmi: kcs_bmc: Split out kcs_bmc_cdev_ipmi (Tony Camuso) [2003186] - ipmi: kcs_bmc: Rename {read,write}_{status,data}() functions (Tony Camuso) [2003186] - ipmi: kcs_bmc: Make status update atomic (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Use of match data to extract KCS properties (Tony Camuso) [2003186] - ipmi/watchdog: Stop watchdog timer when the current action is 'none' (Tony Camuso) [2003186] - ipmi: kcs: aspeed: Adapt to new LPC DTS layout (Tony Camuso) [2003186] - ipmi_si: Join string literals back (Tony Camuso) [2003186] - ipmi_si: Drop redundant check before calling put_device() (Tony Camuso) [2003186] - ipmi_si: Use strstrip() to remove surrounding spaces (Tony Camuso) [2003186] - ipmi_si: Get rid of ->addr_source_cleanup() (Tony Camuso) [2003186] - ipmi_si: Reuse si_to_str[] array in ipmi_hardcode_init_one() (Tony Camuso) [2003186] - ipmi_si: Introduce ipmi_panic_event_str[] array (Tony Camuso) [2003186] - ipmi_si: Use proper ACPI macros to check error code for failures (Tony Camuso) [2003186] - ipmi_si: Utilize temporary variable to hold device pointer (Tony Camuso) [2003186] - ipmi_si: Remove bogus err_free label (Tony Camuso) [2003186] - ipmi: Handle device properties with software node API (Tony Camuso) [2003186] - ipmi:ssif: make ssif_i2c_send() void (Tony Camuso) [2003186] - ipmi: Refine retry conditions for getting device id (Tony Camuso) [2003186] - redhat/configs: enable CONFIG_IMA_WRITE_POLICY (Bruno Meneguele) [2010530] - Disable CONFIG_CRYPTO_SM4 on aarch64 (Vladis Dronov) [2008943] - powerpc/iommu: Report the correct most efficient DMA mask for PCI devices (Steve Best) [2007425] - powerpc/dma: Fix dma_map_ops::get_required_mask (Steve Best) [2007425] - ibmvnic: Reuse tx pools when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Reuse rx pools when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Reuse LTB when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use bitmap for LTB map_ids (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: init_tx_pools move loop-invariant code (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use/rename local vars in init_tx_pools (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use/rename local vars in init_rx_pools (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Fix up some comments and messages (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Consolidate code in replenish_rx_pool() (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: check failover_pending in login response (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: retry reset if there are no other resets (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: parenthesize a check (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: free tx_pool if tso_pool alloc fails (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: set ltb->buff to NULL after freeing (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: account for bufs already saved in indir_buf (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: clean pending indirect buffs during reset (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use strscpy() instead of strncpy() (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix send_request_map incompatible argument (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warnings in build_hdr_descs_arr (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warning (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warning in strncpy (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Allow device probe if the device is not ready at boot (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use list_for_each_entry() to simplify code in ibmvnic.c (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: remove default label from to_string switch (Desnes A. Nunes do Rosario) [1998677] - intel_th: pci: Add Alder Lake-M support (Jiri Olsa) [1929502] - i2c: designware: Fix indentation in the header (David Arcari) [2004468] - i2c: designware: Use DIV_ROUND_CLOSEST() macro (David Arcari) [2004468] - math64: New DIV_S64_ROUND_CLOSEST helper (David Arcari) [2004468] - units: Add SI metric prefix definitions (David Arcari) [2004468] - i2c: busses: i2c-designware-master: Fix misnaming of 'i2c_dw_init_master()' (David Arcari) [2004468] - MAINTAINERS: adjust to removing i2c designware platform data (David Arcari) [2004468] - i2c: designware: Get rid of legacy platform data (David Arcari) [2004468] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (David Arcari) [2004468] - i2c: designware: Switch over to i2c_freq_mode_string() (David Arcari) [2004468] - i2c: core: add api to provide frequency mode strings (David Arcari) [2004468] - i2c: designware: Fix return value check in navi_amd_register_client() (David Arcari) [2004468] - i2c: drivers: Use generic definitions for bus frequencies (part 2) (David Arcari) [2004468] - i2c: designware: Add driver support for AMD NAVI GPU (David Arcari) [2004468] - i2c: designware: Adjust bus_freq_hz when refuse high speed mode set (David Arcari) [2004468] - i2c: designware: Get right data length (David Arcari) [2004468] - i2c: designware: Make register offsets all of the same width (David Arcari) [2004468] - i2c: designware: Switch header to use BIT() and GENMASK() (David Arcari) [2004468] - i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED (David Arcari) [2004468] - i2c: designware: call i2c_dw_read_clear_intrbits_slave() once (David Arcari) [2004468] - i2c: busses: Use fallthrough pseudo-keyword (David Arcari) [2004468] - i2c: designware: platdrv: Set class based on DMI (David Arcari) [2004468] - i2c: designware: Adjust bus speed independently of ACPI (David Arcari) [2004468] - i2c: designware: Add Baikal-T1 System I2C support (David Arcari) [2004468] - i2c: designware: Move reg-space remapping into a dedicated function (David Arcari) [2004468] - i2c: designware: Retrieve quirk flags as early as possible (David Arcari) [2004468] - i2c: designware: Convert driver to using regmap API (David Arcari) [2004468] - i2c: designware: Discard Cherry Trail model flag (David Arcari) [2004468] - i2c: designware: Drop hard coded FIFO depth assignment (David Arcari) [2004468] - i2c: designware: Read counters from ACPI for PCI driver (David Arcari) [2004468] - i2c: designware: Move ACPI parts into common module (David Arcari) [2004468] - i2c: designware: Drop unneeded condition in i2c_dw_validate_speed() (David Arcari) [2004468] - i2c: designware: Move i2c_dw_validate_speed() helper to a common code (David Arcari) [2004468] - i2c: designware: Include proper headers in i2c-desingware-core.h (David Arcari) [2004468] - i2c: designware: Get rid of PCI driver specifics in common code (David Arcari) [2004468] - i2c: designware: Allow slave mode for PCI enumerated devices (David Arcari) [2004468] - i2c: designware: Rename i2c_dw_probe() to i2c_dw_probe_master() (David Arcari) [2004468] - i2c: designware: Switch PCI driver to use i2c_dw_configure_master() (David Arcari) [2004468] - i2c: designware: Move configuration routines to respective modules (David Arcari) [2004468] - i2c: designware: Use devm_platform_ioremap_resource() to simplify code (David Arcari) [2004468] - i2c: designware: Calculate SCL timing parameter for High Speed Mode (David Arcari) [2004468] - i2c: designware: Calculate SCL timing parameter for Fast Mode Plus (David Arcari) [2004468] - i2c: designware: platdrv: Remove DPM_FLAG_SMART_SUSPEND flag on BYT and CHT (David Arcari) [2004468] - i2c: drivers: Use generic definitions for bus frequencies (David Arcari) [2004468] - i2c: core: Provide generic definitions for bus frequencies (David Arcari) [2004468] - i2c: designware: Fix spelling typos in the comments (David Arcari) [2004468] - i2c: designware: Discard i2c_dw_read_comp_param() function (David Arcari) [2004468] - i2c: designware: Detect the FIFO size in the common code (David Arcari) [2004468] - i2c: designware: Add ACPI HID for Hisilicon Hip08-Lite I2C controller (David Arcari) [2004468] - i2c: designware: Fix optional reset error handling (David Arcari) [2004468] - i2c: designware: assert reset when error happen at ->probe() (David Arcari) [2004468] - i2c: designware: Synchronize IRQs when unregistering slave client (David Arcari) [2004468] - i2c: designware: Fix unused variable warning (David Arcari) [2004468] - i2c: designware: make use of devm_gpiod_get_optional (David Arcari) [2004468] - i2c: busses: Use dev_get_drvdata where possible (David Arcari) [2004468] - i2c: designware: ratelimit 'transfer when suspended' errors (David Arcari) [2004468] - i2c: designware: Add support for an interface clock (David Arcari) [2004468] - i2c: i2c-designware-platdrv: Always use a dynamic adapter number (David Arcari) [2004468] - i2c: i2c-designware-platdrv: Cleanup setting of the adapter number (David Arcari) [2004468] - i2c: designware: Do not allow i2c_dw_xfer() calls while suspended (David Arcari) [2004468] - i2c: designware: Cleanup bus lock handling (David Arcari) [2004468] - i2c: designware: Set IRQF_NO_SUSPEND flag for all BYT and CHT controllers (David Arcari) [2004468] - i2c: designware: Call i2c_dw_clk_rate() only when calculating timings (David Arcari) [2004468] - i2c: designware: Remove Cherry Trail PMIC I2C bus pm_disabled workaround (David Arcari) [2004468] - i2c: designware: add MSCC Ocelot support (David Arcari) [2004468] - i2c: designware: allow IP specific sda_hold_time (David Arcari) [2004468] - i2c: designware: move #ifdef CONFIG_OF to the top (David Arcari) [2004468] - i2c: designware: use generic table matching (David Arcari) [2004468] - i2c: designware: Add SPDX license tag (David Arcari) [2004468] - i2c: designware: Convert to use struct i2c_timings (David Arcari) [2004468] - i2c: designware-pcidrv: Mark expected switch fall-through (David Arcari) [2004468] - i2c: designware-master: use core to detect 'no zero length' quirk (David Arcari) [2004468] - i2c: designware: Add debug print for bus speed (David Arcari) [2004468] - i2c: designware: Add debug print for SDA hold time value (David Arcari) [2004468] - i2c: designware: Separate timing parameter setting from HW initalization (David Arcari) [2004468] - i2c: designware: Move SDA hold time configuration to common code (David Arcari) [2004468] - i2c: designware: Call i2c_dw_clk_rate() only once in i2c_dw_init_master() (David Arcari) [2004468] - i2c: designware: Don't use internal ___constant_swab32 (David Arcari) [2004468] - i2c: designware: Move register access detection to common code (David Arcari) [2004468] - i2c: designware: Remove needless variable from i2c_dw_init_slave() (David Arcari) [2004468]- x86/amd_nb: Add AMD family 17h model 60h PCI IDs (David Arcari) [1987067] - x86/amd_nb: Check vendor in AMD-only functions (David Arcari) [1987067] - hwmon: (k10temp) Add support for yellow carp (David Arcari) [1987067] - x86/amd_nb: Add AMD family 19h model 50h PCI ids (David Arcari) [1987067] - x86: Fix various typos in comments, take #2 (David Arcari) [1987067] - x86/amd_nb, char/amd64-agp: Use amd_nb_num() accessor (David Arcari) [1987067] - x86/amd_nb: Add PCI device IDs for family 17h, model 70h (David Arcari) [1987067] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 477 (David Arcari) [1987067] - x86/amd_nb: Make hygon_nb_misc_ids static (David Arcari) [1987067] - x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge (David Arcari) [1987067] - x86/cpu: Create Hygon Dhyana architecture support file (David Arcari) [1987067] - hwmon: (k10temp) Rework the temperature offset calculation (David Arcari) [1987067] - hwmon: (k10temp) Don't show Tdie for all Zen/Zen2/Zen3 CPU/APU (David Arcari) [1987067] - hwmon: (k10temp) Add additional missing Zen2 and Zen3 APUs (David Arcari) [1987067] - hwmon: (k10temp) support Zen3 APUs (David Arcari) [1987067] - CI: Fix RT branch name (Veronika Kabatova) - platform/x86/intel: pmc/core: Add GBE Package C10 fix for Alder Lake PCH (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Alder Lake low power mode support for pmc core (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Latency Tolerance Reporting (LTR) support to Alder Lake (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Alderlake support to pmc core driver (David Arcari) [1962965] - redhat/configs: Add CONFIG_X86_PLATFORM_DRIVERS_INTEL (David Arcari) [1962965] - platform/x86: intel_pmc_core: Move to intel sub-directory (David Arcari) [1962965] - platform/x86: intel_skl_int3472: Move to intel/ subfolder (David Arcari) [1962965] - platform/x86: intel_pmc_core: Prevent possibile overflow (David Arcari) [1962965] - ipvs: check that ip_vs_conn_tab_bits is between 8 and 20 (Andrea Claudi) [1816769] - KVM: nVMX: Filter out all unsupported controls when eVMCS was activated (Vitaly Kuznetsov) [2001915] - pinctrl: amd: Handle wake-up interrupt (David Arcari) [2000228] - pinctrl: amd: Add irq field data (David Arcari) [2000228] - pinctrl: amd: Fix an issue with shutdown when system set to s0ix (David Arcari) [2000228] - pinctrl/amd: Add device HID for new AMD GPIO controller (David Arcari) [2000228] - pinctrl: amd: Implement irq_set_wake (David Arcari) [2000228] - genirq/PM: Introduce IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND flag (David Arcari) [2000228] - pinctrl: amd: remove debounce filter setting in IRQ type setting (David Arcari) [2000228] - pinctrl: amd: print debounce filter info in debugfs (David Arcari) [2000228] - pinctrl: amd: use higher precision for 512 RtcClk (David Arcari) [2000228] - pinctrl: amd: fix incorrect way to disable debounce filter (David Arcari) [2000228] - pinctrl: amd: Use irqchip template (David Arcari) [2000228] - pinctrl: pinctrl-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (David Arcari) [2000228] - pinctrl: amd: Honor IRQ trigger type requested by the caller (David Arcari) [2000228] - pinctrl: Use new GPIO_LINE_DIRECTION (David Arcari) [2000228] - remove ioremap_nocache and devm_ioremap_nocache (David Arcari) [2000228] - pinctrl: amd: fix __iomem annotation in amd_gpio_irq_handler() (David Arcari) [2000228] - pinctrl: amd: disable spurious-firing GPIO IRQs (David Arcari) [2000228] - pinctrl: Remove dev_err() usage after platform_get_irq() (David Arcari) [2000228] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (David Arcari) [2000228] - pinctrl/amd: fix typo (David Arcari) [2000228] - pinctrl: pinctrl-amd: simplify getting .driver_data (David Arcari) [2000228] - pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_type (David Arcari) [2000228] - pinctrl: Include nothing else (David Arcari) [2000228] - pinctrl/amd: only handle irq if it is pending and unmasked (David Arcari) [2000228] - pinctrl/amd: fix gpio irq level in debugfs (David Arcari) [2000228] - smartpqi: Update version to 2.1.10-025 (Don Brace) [1980106] - scsi: smartpqi: Replace one-element array with flexible-array member (Don Brace) [1980106] - scsi: smartpqi: Fix an error code in pqi_get_raid_map() (Don Brace) [1980106] - scsi: smartpqi: Update version to 2.1.10-020 (Don Brace) [1980106] - scsi: smartpqi: Fix ISR accessing uninitialized data (Don Brace) [1980106] - scsi: smartpqi: Add PCI IDs for new ZTE controllers (Don Brace) [1980106] - scsi: smartpqi: Add PCI ID for new ntcom controller (Don Brace) [1980106] - scsi: smartpqi: Add SCSI cmd info for resets (Don Brace) [1980106] - scsi: smartpqi: Change Kconfig menu entry to Microchip (Don Brace) [1980106] - scsi: smartpqi: Change driver module macros to Microchip (Don Brace) [1980106] - scsi: smartpqi: Update copyright notices (Don Brace) [1980106] - scsi: smartpqi: Add PCI IDs for H3C P4408 controllers (Don Brace) [1980106]- lib/linear_ranges: fix repeated words & one typo (Nico Pache) [2006475] - lib: linear_ranges: Add missing MODULE_LICENSE() (Nico Pache) [2006475] - bpf: Fix regression on BPF_OBJ_GET with non-O_RDWR flags (Jiri Olsa) [1944798] - bpf, x86: Fix extable offset calculation (Jiri Olsa) [1944798] - bpftool: Add Makefile target bootstrap (Jiri Olsa) [1944798] - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args (Jiri Olsa) [1944798] - docs, bpf: Add minimal markup to address doc warning (Jiri Olsa) [1944798] - test_bpf: Remove EXPECTED_FAIL flag from bpf_fill_maxinsns11 (Jiri Olsa) [1944798] - trace: bpf: Allow bpf to attach to bare tracepoints (Jiri Olsa) [1944798] - docs: bpf: Clarify -mcpu=v3 requirement for atomic ops (Jiri Olsa) [1944798] - tools, headers: Sync struct bpf_perf_event_data (Jiri Olsa) [1944798] - selftests/bpf: Add missing cleanup in atomic_bounds test (Jiri Olsa) [1944798] - docs: bpf: Clarify BPF_CMPXCHG wording (Jiri Olsa) [1944798] - docs: bpf: Fixup atomics markup (Jiri Olsa) [1944798] - bpf: Document new atomic instructions (Jiri Olsa) [1944798] - kbuild: Do not clean resolve_btfids if the output does not exist (Jiri Olsa) [1944798] - kbuild: Add resolve_btfids clean to root clean target (Jiri Olsa) [1944798] - bpf: Introduce task_vma bpf_iter (Jiri Olsa) [1944798] - bpf: Allow bpf_d_path in bpf_iter program (Jiri Olsa) [1944798] - selftests/bpf: Add test for bpf_iter_task_vma (Jiri Olsa) [1944798] - bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs (Jiri Olsa) [1944798] - libbpf: Use SOCK_CLOEXEC when opening the netlink socket (Jiri Olsa) [1944798] - bpf: Update selftests to reflect new error states (Jiri Olsa) [1944798] - bpf, x86: Validate computation of branch displacements for x86-32 (Jiri Olsa) [1944798] - bpf, x86: Validate computation of branch displacements for x86-64 (Jiri Olsa) [1944798] - bpf: program: Refuse non-O_RDWR flags in BPF_OBJ_GET (Jiri Olsa) [1944798] - bpf: Take module reference for trampoline in module (Jiri Olsa) [1944798] - bpf/selftests: Test that kernel rejects a TCP CC with an invalid license (Jiri Olsa) [1944798] - bpf: Enforce that struct_ops programs be GPL-only (Jiri Olsa) [1944798] - libbpf: Fix bail out from 'ringbuf_process_ring()' on error (Jiri Olsa) [1944798] - selftests/bpf: Add selftest for pointer-to-array-of-struct BTF dump (Jiri Olsa) [1944798] - libbpf: Fix BTF dump of pointer-to-array-of-struct (Jiri Olsa) [1944798] - bpf, selftests: Fix up some test_verifier cases for unprivileged (Jiri Olsa) [1944798] - bpf, x86: Use kvmalloc_array instead kmalloc_array in bpf_jit_comp (Jiri Olsa) [1944798] - libbpf: Fix INSTALL flag order (Jiri Olsa) [1944798] - libbpf: Clear map_info before each bpf_obj_get_info_by_fd (Jiri Olsa) [1944798] - samples, bpf: Add missing munmap in xdpsock (Jiri Olsa) [1944798] - tools/resolve_btfids: Fix build error with older host toolchains (Jiri Olsa) [1944798] - selftests/bpf: Fix a compiler warning in global func test (Jiri Olsa) [1944798] - bpf: Drop imprecise log message (Jiri Olsa) [1944798] - bpf: Clear percpu pointers in bpf_prog_clone_free() (Jiri Olsa) [1944798] - bpf: Fix a warning message in mark_ptr_not_null_reg() (Jiri Olsa) [1944798] - selftests/bpf: Add unit tests for pointers in global functions (Jiri Olsa) [1944798] - bpf: Support pointers in global func args (Jiri Olsa) [1944798] - bpf: Extract nullable reg type conversion into a helper function (Jiri Olsa) [1944798] - bpf: Rename bpf_reg_state variables (Jiri Olsa) [1944798] - tools/resolve_btfids: Add /libbpf to .gitignore (Jiri Olsa) [1944798] - bpf: selftests: Add non function pointer test to struct_ops (Jiri Olsa) [1944798] - libbpf: Ignore non function pointer member in struct_ops (Jiri Olsa) [1944798] - bpf: Clear per_cpu pointers during bpf_prog_realloc (Jiri Olsa) [1944798] - selftests/bpf: Add a selftest for the tracing bpf_get_socket_cookie (Jiri Olsa) [1944798] - selftests/bpf: Use vmlinux.h in socket_cookie_prog.c (Jiri Olsa) [1944798] - selftests/bpf: Integrate the socket_cookie test to test_progs (Jiri Olsa) [1944798] - bpf: Expose bpf_get_socket_cookie to tracing programs (Jiri Olsa) [1944798] - selftests/bpf: Convert test_xdp_redirect.sh to bash (Jiri Olsa) [1944798] - selftests/bpf: Add a test for map-in-map and per-cpu maps in sleepable progs (Jiri Olsa) [1944798] - bpf: Allows per-cpu maps and map-in-map in sleepable programs (Jiri Olsa) [1944798] - selftests/bpf: Improve recursion selftest (Jiri Olsa) [1944798] - selftest/bpf: Add a recursion test (Jiri Olsa) [1944798] - bpf: Count the number of times recursion was prevented (Jiri Olsa) [1944798] - bpf: Add per-program recursion prevention mechanism (Jiri Olsa) [1944798] - bpf: Compute program stats for sleepable programs (Jiri Olsa) [1944798] - bpf: Run sleepable programs with migration disabled (Jiri Olsa) [1944798] - bpf: Optimize program stats (Jiri Olsa) [1944798] - selftests/bpf: Simplify the calculation of variables (Jiri Olsa) [1944798] - selftest/bpf: Add test for var-offset stack access (Jiri Olsa) [1944798] - tools/resolve_btfids: Set srctree variable unconditionally (Jiri Olsa) [1944798] - tools/resolve_btfids: Check objects before removing (Jiri Olsa) [1944798] - tools/resolve_btfids: Build libbpf and libsubcmd in separate directories (Jiri Olsa) [1944798] - bpf: Simplify bool comparison (Jiri Olsa) [1944798] - selftests/bpf: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf/benchs/bench_ringbufs: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf: Refactor BPF_PSEUDO_CALL checking as a helper function (Jiri Olsa) [1944798] - bpf/selftests: Update the IMA test to use BPF ring buffer (Jiri Olsa) [1944798] - bpf: Allow usage of BPF ringbuffer in sleepable programs (Jiri Olsa) [1944798] - bpf/selftests: Add a short note about vmtest.sh in README.rst (Jiri Olsa) [1944798] - bpf: Helper script for running BPF presubmit tests (Jiri Olsa) [1944798] - bpf: Emit explicit NULL pointer checks for PROBE_LDX instructions. (Jiri Olsa) [1944798] - libbpf: Stop using feature-detection Makefiles (Jiri Olsa) [1944798] - selftest/bpf: Testing for multiple logs on REJECT (Jiri Olsa) [1944798] - samples: bpf: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf: Propagate stack bounds to registers in atomics w/ BPF_FETCH (Jiri Olsa) [1944798] - samples/bpf: Add include dir for MIPS Loongson64 to fix build errors (Jiri Olsa) [1944798] - bpf: Simplify cases in bpf_base_func_proto (Jiri Olsa) [1944798] - samples/bpf: Set flag __SANE_USERSPACE_TYPES__ for MIPS to fix build warnings (Jiri Olsa) [1944798] - selftests/bpf: Avoid useless void *-casts (Jiri Olsa) [1944798] - selftests/bpf: Consistent malloc/calloc usage (Jiri Olsa) [1944798] - selftests/bpf: Avoid heap allocation (Jiri Olsa) [1944798] - selftests/bpf: Define local variables at the beginning of a block (Jiri Olsa) [1944798] - selftests/bpf: Change type from void * to struct generic_data * (Jiri Olsa) [1944798] - selftests/bpf: Change type from void * to struct ifaceconfigobj * (Jiri Olsa) [1944798] - selftests/bpf: Remove casting by introduce local variable (Jiri Olsa) [1944798] - selftests/bpf: Improve readability of xdpxceiver/worker_pkt_validate() (Jiri Olsa) [1944798] - selftests/bpf: Remove memory leak (Jiri Olsa) [1944798] - selftests/bpf: Fix style warnings (Jiri Olsa) [1944798] - selftests/bpf: Remove unused enums (Jiri Olsa) [1944798] - selftests/bpf: Remove a lot of ifobject casting (Jiri Olsa) [1944798] - samples/bpf: Add xdp program on egress for xdp_redirect_map (Jiri Olsa) [1944798] - bpf: Fix typo in scalar{,32}_min_max_rsh comments (Jiri Olsa) [1944798] - bpf, docs: Update build procedure for manually compiling LLVM and Clang (Jiri Olsa) [1944798] - selftest/bpf: Fix typo (Jiri Olsa) [1944798] - libbpf: Use string table index from index table if needed (Jiri Olsa) [1944798] - bpf: Try to avoid kzalloc in cgroup/{s,g}etsockopt (Jiri Olsa) [1944798] - bpf: Permit size-0 datasec (Jiri Olsa) [1944798] - selftests: bpf: Add a new test for bare tracepoints (Jiri Olsa) [1944798] - selftests/bpf: Add verifier tests for x64 jit jump padding (Jiri Olsa) [1944798] - bpf,x64: Pad NOPs to make images converge more easily (Jiri Olsa) [1944798] - tools/bpftool: Add -Wall when building BPF programs (Jiri Olsa) [1944798] - bpf: Declare __bpf_free_used_maps() unconditionally (Jiri Olsa) [1944798] - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h (Jiri Olsa) [1944798] - kernel.spec: Add support to use vmlinux.h (Jiri Olsa) [1989087] - spec: Add vmlinux.h to kernel-devel package (Jiri Olsa) [1989087] - lib/test_scanf: Handle n_bits == 0 in random tests (Chris von Recklinghausen) [1985062] - printk/console: Check consistent sequence number when handling race in console_unlock() (Chris von Recklinghausen) [1985062] - printk: fix cpu lock ordering (Chris von Recklinghausen) [1985062] - lib/dump_stack: move cpu lock to printk.c (Chris von Recklinghausen) [1985062] - random32: Fix implicit truncation warning in prandom_seed_state() (Chris von Recklinghausen) [1985062] - lib: test_scanf: Remove pointless use of type_min() with unsigned types (Chris von Recklinghausen) [1985062] - selftests: lib: Add wrapper script for test_scanf (Chris von Recklinghausen) [1985062] - lib: test_scanf: Add tests for sscanf number conversion (Chris von Recklinghausen) [1985062] - lib: vsprintf: Fix handling of number field widths in vsscanf (Chris von Recklinghausen) [1985062] - lib: vsprintf: scanf: Negative number must have field width > 1 (Chris von Recklinghausen) [1985062] - usb: host: xhci-tegra: Switch to use ptTs (Chris von Recklinghausen) [1985062] - nilfs2: Switch to use ptTs (Chris von Recklinghausen) [1985062] - kdb: Switch to use ptTs (Chris von Recklinghausen) [1985062] - lib/vsprintf: Allow to override ISO 8601 date and time separator (Chris von Recklinghausen) [1985062] - printk: Remove trailing semicolon in macros (Chris von Recklinghausen) [1985062] - printk: Move EXPORT_SYMBOL() closer to vprintk definition (Chris von Recklinghausen) [1985062] - kernel/printk.c: Fixed mundane typos (Chris von Recklinghausen) [1985062] - printk: rename vprintk_func to vprintk (Chris von Recklinghausen) [1985062] - printk: console: remove unnecessary safe buffer usage (Chris von Recklinghausen) [1985062] - printk: kmsg_dump: remove _nolock() variants (Chris von Recklinghausen) [1985062] - printk: remove logbuf_lock (Chris von Recklinghausen) [1985062] - printk: introduce a kmsg_dump iterator (Chris von Recklinghausen) [1985062] - printk: kmsg_dumper: remove @active field (Chris von Recklinghausen) [1985062] - printk: add syslog_lock (Chris von Recklinghausen) [1985062] - printk: use atomic64_t for devkmsg_user.seq (Chris von Recklinghausen) [1985062] - printk: use seqcount_latch for clear_seq (Chris von Recklinghausen) [1985062] - printk: introduce CONSOLE_LOG_MAX (Chris von Recklinghausen) [1985062] - printk: consolidate kmsg_dump_get_buffer/syslog_print_all code (Chris von Recklinghausen) [1985062] - printk: refactor kmsg_dump_get_buffer() (Chris von Recklinghausen) [1985062] - printk: kmsg_dump: remove unused fields (Chris von Recklinghausen) [1985062] - printk: limit second loop of syslog_print_all (Chris von Recklinghausen) [1985062] - mtd: mtdoops: synchronize kmsg_dumper (Chris von Recklinghausen) [1985062] - vsprintf: dump full information of page flags in pGp (Chris von Recklinghausen) [1985062] - mm, slub: don't combine pr_err with INFO (Chris von Recklinghausen) [1985062] - mm, slub: use pGp to print page flags (Chris von Recklinghausen) [1985062] - lib/vsprintf.c: remove leftover 'f' and 'F' cases from bstr_printf() (Chris von Recklinghausen) [1985062] - printk: clarify the documentation for plain pointer printing (Chris von Recklinghausen) [1985062] - lib/vsprintf: do not show no_hash_pointers message multiple times (Chris von Recklinghausen) [1985062] - kdb: Refactor env variables get/set code (Chris von Recklinghausen) [1985062] - kernel: debug: Ordinary typo fixes in the file gdbstub.c (Chris von Recklinghausen) [1985062] - kdb: Simplify kdb commands registration (Chris von Recklinghausen) [1985062] - seqlock,lockdep: Fix seqcount_latch_init() (Chris von Recklinghausen) [1985062] - printk: avoid prb_first_valid_seq() where possible (Chris von Recklinghausen) [1985062] - printk: rectify kernel-doc for prb_rec_init_wr() (Chris von Recklinghausen) [1985062] - lib/vsprintf: no_hash_pointers prints all addresses as unhashed (Chris von Recklinghausen) [1985062] - kselftest: add support for skipped tests (Chris von Recklinghausen) [1985062] - lib: use KSTM_MODULE_GLOBALS macro in kselftest drivers (Chris von Recklinghausen) [1985062] - printk: fix deadlock when kernel panic (Chris von Recklinghausen) [1985062] - torture: Remove "Failed to add ttynull console" false positive (Chris von Recklinghausen) [1985062] - printk: fix string termination for record_print_text() (Chris von Recklinghausen) [1985062] - printk: fix buffer overflow potential for print_text() (Chris von Recklinghausen) [1985062] - printk: fix kmsg_dump_get_buffer length calulations (Chris von Recklinghausen) [1985062] - printk: ringbuffer: fix line counting (Chris von Recklinghausen) [1985062] - Revert "init/console: Use ttynull as a fallback when there is no console" (Chris von Recklinghausen) [1985062] - printk: remove obsolete dead assignment (Chris von Recklinghausen) [1985062] - printk: ringbuffer: Reference text_data_ring directly in callees. (Chris von Recklinghausen) [1985062] - printk/console: Allow to disable console output by using console="" or console=null (Chris von Recklinghausen) [1985062] - init/console: Use ttynull as a fallback when there is no console (Chris von Recklinghausen) [1985062] - printk: remove logbuf_lock writer-protection of ringbuffer (Chris von Recklinghausen) [1985062] - printk: inline log_output(),log_store() in vprintk_store() (Chris von Recklinghausen) [1985062] - printk: remove unneeded dead-store assignment (Chris von Recklinghausen) [1985062] - printk: finalize records with trailing newlines (Chris von Recklinghausen) [1985062] - printk: ringbuffer: Wrong data pointer when appending small string (Chris von Recklinghausen) [1985062] - printk: reduce setup_text_buf size to LOG_LINE_MAX (Chris von Recklinghausen) [1985062] - printk: avoid and/or handle record truncation (Chris von Recklinghausen) [1985062] - printk: remove dict ring (Chris von Recklinghausen) [1985062] - printk: move dictionary keys to dev_printk_info (Chris von Recklinghausen) [1985062] - printk: move printk_info into separate array (Chris von Recklinghausen) [1985062] - printk: reimplement log_cont using record extension (Chris von Recklinghausen) [1985062] - printk: ringbuffer: add finalization/extension support (Chris von Recklinghausen) [1985062] - printk: ringbuffer: change representation of states (Chris von Recklinghausen) [1985062] - printk: ringbuffer: clear initial reserved fields (Chris von Recklinghausen) [1985062] - printk: ringbuffer: add BLK_DATALESS() macro (Chris von Recklinghausen) [1985062] - printk: ringbuffer: relocate get_data() (Chris von Recklinghausen) [1985062] - printk: ringbuffer: avoid memcpy() on state_var (Chris von Recklinghausen) [1985062] - printk: ringbuffer: fix setting state in desc_read() (Chris von Recklinghausen) [1985062] - seqlock: Introduce seqcount_latch_t (Chris von Recklinghausen) [1985062] - scripts/gdb: update for lockless printk ringbuffer (Chris von Recklinghausen) [1985062] - scripts/gdb: add utils.read_ulong() (Chris von Recklinghausen) [1985062] - printk: reduce LOG_BUF_SHIFT range for H8300 (Chris von Recklinghausen) [1985062] - printk: ringbuffer: support dataless records (Chris von Recklinghausen) [1985062] - MAINTAIERS: Add John Ogness as printk reviewer (Chris von Recklinghausen) [1985062] - printk: use the lockless ringbuffer (Chris von Recklinghausen) [1985062] - Revert "printk: lock/unlock console only for new logbuf entries" (Chris von Recklinghausen) [1985062] - printk: add lockless ringbuffer (Chris von Recklinghausen) [1985062] - crash: add VMCOREINFO macro to define offset in a struct declared by typedef (Chris von Recklinghausen) [1985062] - printk: Use fallthrough pseudo-keyword (Chris von Recklinghausen) [1985062] - kernel.h: Move oops_in_progress to printk.h (Chris von Recklinghausen) [1985062] - serial: 8250: change lock order in serial8250_do_startup() (Chris von Recklinghausen) [1985062] - kernel: printk: delete repeated words in comments (Chris von Recklinghausen) [1985062] - random32: Restore __latent_entropy attribute on net_rand_state (Chris von Recklinghausen) [1985062] - random32: add a tracepoint for prandom_u32() (Chris von Recklinghausen) [1985062] - init: open code setting up stdin/stdout/stderr (Chris von Recklinghausen) [1985062] - hvc: unify console setup naming (Chris von Recklinghausen) [1985062] - console: Fix trivia typo 'change' -> 'chance' (Chris von Recklinghausen) [1985062] - console: Propagate error code from console ->setup() (Chris von Recklinghausen) [1985062] - tty: hvc: Return proper error code from console ->setup() hook (Chris von Recklinghausen) [1985062] - lib/vsprintf: Force type of flags value for gfp_t (Chris von Recklinghausen) [1985062] - lib/vsprintf: Replace custom spec to print decimals with generic one (Chris von Recklinghausen) [1985062] - lib/vsprintf: Replace hidden BUILD_BUG_ON() with static_assert() (Chris von Recklinghausen) [1985062] - printk: Make linux/printk.h self-contained (Chris von Recklinghausen) [1985062] - doc:kmsg: explicitly state the return value in case of SEEK_CUR (Chris von Recklinghausen) [1985062] - Replace HTTP links with HTTPS ones: vsprintf (Chris von Recklinghausen) [1985062] - Revert "kernel/printk: add kmsg SEEK_CUR handling" (Chris von Recklinghausen) [1985062] - random32: move the pseudo-random 32-bit definitions to prandom.h (Chris von Recklinghausen) [1985062] - printk/kdb: Redirect printk messages into kdb in any context (Chris von Recklinghausen) [1985062] - usb: pulse8-cec: Switch to use ptT (Chris von Recklinghausen) [1985062] - lib/vsprintf: Print time64_t in human readable format (Chris von Recklinghausen) [1985062] - printk: Remove pr_cont_once() (Chris von Recklinghausen) [1985062] - printk: handle blank console arguments passed in. (Chris von Recklinghausen) [1985062] - kernel/printk: add kmsg SEEK_CUR handling (Chris von Recklinghausen) [1985062] - printk: Fix a typo in comment "interator"->"iterator" (Chris von Recklinghausen) [1985062] - printk: Correctly set CON_CONSDEV even when preferred console was not registered (Chris von Recklinghausen) [1985062] - printk: Fix preferred console selection with multiple matches (Chris von Recklinghausen) [1985062] - printk: Move console matching logic into a separate function (Chris von Recklinghausen) [1985062] - lib/vsprintf: update comment about simple_strto() functions (Chris von Recklinghausen) [1985062] - printk: Convert a use of sprintf to snprintf in console_unlock (Chris von Recklinghausen) [1985062] - lib/dynamic_debug.c: use address-of operator on section symbols (Chris von Recklinghausen) [1985062] - printk: fix exclusive_console replaying (Chris von Recklinghausen) [1985062] - Revert "fs: remove ksys_dup()" (Chris von Recklinghausen) [1985062] - early init: fix error handling when opening /dev/console (Chris von Recklinghausen) [1985062] - device.h: move dev_printk()-like functions to dev_printk.h (Chris von Recklinghausen) [1985062] - docs: printk-formats: add ptrdiff_t type to printk-formats (Chris von Recklinghausen) [1985062] - fs: remove ksys_dup() (Chris von Recklinghausen) [1985062] - MAINTAINERS: Add VSPRINTF (Chris von Recklinghausen) [1985062] - tools lib api: Renaming pr_warning to pr_warn (Chris von Recklinghausen) [1985062] - lib: cpu_rmap: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - trace: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - vgacon: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - scsi: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: intel_oaktrail: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: asus-laptop: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: eeepc-laptop: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - oprofile: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - of: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - macintosh: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - idsn: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - ide: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - crypto: n2: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - clocksource: samsung_pwm_timer: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - gdrom: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - drbd: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - x86: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - arm64: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - dump_stack: avoid the livelock of the dump_lock (Chris von Recklinghausen) [1985062] - lib/vsprintf: Add pfw conversion specifier for printing fwnode names (Chris von Recklinghausen) [1985062] - lib/vsprintf: Make use of fwnode API to obtain node names and separators (Chris von Recklinghausen) [1985062] - ABI: Update dev-kmsg documentation to match current kernel behaviour (Chris von Recklinghausen) [1985062] - printk: Replace strncmp() with str_has_prefix() (Chris von Recklinghausen) [1985062] - lib/test_printf: Remove obvious comments from pd and pD tests (Chris von Recklinghausen) [1985062] - lib/test_printf: Add test of null/invalid pointer dereference for dentry (Chris von Recklinghausen) [1985062] - vsprintf: Prevent crash when dereferencing invalid pointers for pD (Chris von Recklinghausen) [1985062] - printk: Do not lose last line in kmsg buffer dump (Chris von Recklinghausen) [1985062] - scripts/gdb: fix lx-dmesg when CONFIG_PRINTK_CALLER is set (Chris von Recklinghausen) [1985062] - lib/vsprintf: Remove support for pF and pf in favour of pS and ps (Chris von Recklinghausen) [1985062] - tracing: kdb: Allow ftdump to skip all but the last few entries (Chris von Recklinghausen) [1985062] - tracing: kdb: The skip_lines parameter should have been skip_entries (Chris von Recklinghausen) [1985062] - tracing: Add trace_total_entries() / trace_total_entries_cpu() (Chris von Recklinghausen) [1985062] - tty: Add NULL TTY driver (Chris von Recklinghausen) [1985062] - treewide: Switch printk users from pf and pF to ps and pS, respectively (Chris von Recklinghausen) [1985062] - iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver (Chris von Recklinghausen) [1985062] - device.h: Add __cold to dev_ logging functions (Chris von Recklinghausen) [1985062] - dynamic_debug: move pr_err from module.c to ddebug_add_module (Chris von Recklinghausen) [1985062] - dynamic_debug: don't duplicate modname in ddebug_add_module (Chris von Recklinghausen) [1985062] - kdb: use bool for binary state indicators (Chris von Recklinghausen) [1985062] - panic: avoid deadlocks in re-entrant console drivers (Chris von Recklinghausen) [1985062] - x86/apic: Trivial coding style fixes (Chris von Recklinghausen) [1985062] - video/console/vgacon: Print big fat warning with nomodeset (Chris von Recklinghausen) [1985062] - device: Add #define dev_fmt similar to #define pr_fmt (Chris von Recklinghausen) [1985062] - bcache: replace 'pF' by 'pS' in seq_printf() (Chris von Recklinghausen) [1985062] - Revert "Merge: redhat: switch secureboot kernel image signing to release keys" (Augusto Caringi) - drm/nouveau/fifo/ga102: initialise chid on return from channel creation (Ben Skeggs) [1997878] - drm/nouveau/ga102-: support ttm buffer moves via copy engine (Ben Skeggs) [1997878] - drm/nouveau/kms/tu102-: delay enabling cursor until after assign_windows (Ben Skeggs) [1997878] - drm/nouveau/kms/nv50: workaround EFI GOP window channel format differences (Ben Skeggs) [1997878] - drm/nouveau/disp: power down unused DP links during init (Ben Skeggs) [1997878] - drm/nouveau: recognise GA107 (Ben Skeggs) [1997878] - PCI: Mark TI C667X to avoid bus reset (Alex Williamson) [1975768] - redhat: switch secureboot kernel image signing to release keys (Bruno Meneguele) - CI: handle RT branches in a single config (Veronika Kabatova) - CI: Fix RT check branch name (Veronika Kabatova) - CI: Drop private CI config (Veronika Kabatova) - CI: extend template use (Veronika Kabatova) - Revert "Merge: mt7921e: enable new Mediatek wireless hardware" (Bruno Meneguele) [2009501] - megaraid_sas: fix concurrent access to ISR between IRQ polling and real interrupt (Tomas Henzl) [2009022] - scsi: megaraid_sas: mq_poll support (Tomas Henzl) [2009022] - [PATCH v2] scsi: qla2xxx: Suppress unnecessary log messages during login (Nilesh Javali) [1982186] - scsi: qla2xxx: Fix excessive messages during device logout (Nilesh Javali) [1982186] - PCI: pciehp: Ignore Link Down/Up caused by DPC (Myron Stowe) [1981741] - arm64: kpti: Fix "kpti=off" when KASLR is enabled (Mark Salter) [1979731] - arm64: Fix CONFIG_ARCH_RANDOM=n build (Mark Salter) [1979731] - redhat/configs: aarch64: add CONFIG_ARCH_RANDOM (Mark Salter) [1979731] - arm64: Implement archrandom.h for ARMv8.5-RNG (Mark Salter) [1979731] - arm64: kconfig: Fix alignment of E0PD help text (Mark Salter) [1979731] - arm64: Use register field helper in kaslr_requires_kpti() (Mark Salter) [1979731] - arm64: Simplify early check for broken TX1 when KASLR is enabled (Mark Salter) [1979731] - arm64: Use a variable to store non-global mappings decision (Mark Salter) [1979731] - arm64: Don't use KPTI where we have E0PD (Mark Salter) [1979731] - arm64: Factor out checks for KASLR in KPTI code into separate function (Mark Salter) [1979731] - redhat/configs: Add CONFIG_ARM64_E0PD (Mark Salter) [1979731] - arm64: Add initial support for E0PD (Mark Salter) [1979731] - arm64: cpufeature: Export matrix and other features to userspace (Mark Salter) [1980098] - arm64: docs: cpu-feature-registers: Document ID_AA64PFR1_EL1 (Mark Salter) [1980098] - docs/arm64: cpu-feature-registers: Rewrite bitfields that don't follow [e, s] (Mark Salter) [1980098] - docs/arm64: cpu-feature-registers: Documents missing visible fields (Mark Salter) [1980098] - arm64: Introduce system_capabilities_finalized() marker (Mark Salter) [1980098] - arm64: entry.S: Do not preempt from IRQ before all cpufeatures are enabled (Mark Salter) [1980098] - docs/arm64: elf_hwcaps: Document HWCAP_SB (Mark Salter) [1980098] - docs/arm64: elf_hwcaps: sort the HWCAP{, 2} documentation by ascending value (Mark Salter) [1980098] - arm64: cpufeature: Treat ID_AA64ZFR0_EL1 as RAZ when SVE is not enabled (Mark Salter) [1980098] - arm64: cpufeature: Effectively expose FRINT capability to userspace (Mark Salter) [1980098] - arm64: cpufeature: Fix feature comparison for CTR_EL0.{CWG,ERG} (Mark Salter) [1980098] - arm64: Expose FRINT capabilities to userspace (Mark Salter) [1980098] - arm64: Expose ARMv8.5 CondM capability to userspace (Mark Salter) [1980098] - docs: arm64: convert perf.txt to ReST format (Mark Salter) [1980098] - docs: arm64: convert docs to ReST and rename to .rst (Mark Salter) [1980098] - Documentation/arm64: HugeTLB page implementation (Mark Salter) [1980098] - Documentation/arm64/sve: Couple of improvements and typos (Mark Salter) [1980098] - arm64: cpufeature: Fix missing ZFR0 in __read_sysreg_by_encoding() (Mark Salter) [1980098] - arm64: Expose SVE2 features for userspace (Mark Salter) [1980098] - arm64: Advertise ARM64_HAS_DCPODP cpu feature (Mark Salter) [1980098] - arm64: add CVADP support to the cache maintenance helper (Mark Salter) [1980098] - arm64: Fix minor issues with the dcache_by_line_op macro (Mark Salter) [1980098] - arm64: Expose DC CVADP to userspace (Mark Salter) [1980098] - arm64: Handle trapped DC CVADP (Mark Salter) [1980098] - arm64: HWCAP: encapsulate elf_hwcap (Mark Salter) [1980098] - arm64: HWCAP: add support for AT_HWCAP2 (Mark Salter) [1980098] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [1965331] - x86/MCE/AMD, EDAC/mce_amd: Remove struct smca_hwid.xec_bitmap (Aristeu Rozanski) [1965331] - EDAC, mce_amd: Print ExtErrorCode and description on a single line (Aristeu Rozanski) [1965331]- scsi: ibmvfc: Fix command state accounting and stale response detection (Steve Best) [1988157] - tasklist_lock, ppc64: Convert tasklist_lock to use qrwlock for ppc64 (Waiman Long) [1978377] - tasklist_lock, ppc64: Provide infrastructure to support specific use of qrwlock (Waiman Long) [1978377] - redhat/configs: Disable CONFIG_PPC_QUEUED_SPINLOCKS (Waiman Long) [1978377] - qspinlock: use signed temporaries for cmpxchg (Waiman Long) [1978377] - powerpc/qspinlock: Optimised atomic_try_cmpxchg_lock() that adds the lock hint (Waiman Long) [1978377] - powerpc/pseries: Implement paravirt qspinlocks for SPLPAR (Waiman Long) [1978377] - powerpc/64s: Implement queued spinlocks and rwlocks (Waiman Long) [1978377] - powerpc: Move spinlock implementation to simple_spinlock (Waiman Long) [1978377] - locking/spinlocks: Remove an instruction from spin and write locks (Waiman Long) [1978377] - net: Fix skb->csum update in inet_proto_csum_replace16(). (Balazs Nemeth) [1975193] - [s390] s390/dasd: fix use after free in dasd path handling (Claudio Imbrenda) [1996764] - powerpc/bpf: Fix detecting BPF atomic instructions (Viktor Malik) [1931483] - selftests/bpf: ringbuf_multi: Test bpf_map__set_inner_map_fd (Viktor Malik) [1931483] - selftests/bpf: ringbuf_multi: Use runtime page size (Viktor Malik) [1931483] - libbpf: Add bpf_map__inner_map API (Viktor Malik) [1931483] - selftests/bpf: ringbuf: Use runtime page size (Viktor Malik) [1931483] - selftests/bpf: mmap: Use runtime page size (Viktor Malik) [1931483] - selftests/bpf: Pass page size from userspace in map_ptr (Viktor Malik) [1931483] - selftests/bpf: Pass page size from userspace in sockopt_sk (Viktor Malik) [1931483] - selftests/bpf: test_progs/sockopt_sk: Convert to use BPF skeleton (Viktor Malik) [1931483] - selftests/bpf: test_progs/sockopt_sk: Remove version (Viktor Malik) [1931483] - powerpc/64s: Fix crashes when toggling entry flush barrier (Diego Domingos) [1894804] - powerpc/64s: flush L1D after user accesses (Diego Domingos) [1894804] - powerpc/uaccess: Evaluate macro arguments once, before user access is allowed (Diego Domingos) [1894804] - powerpc: Fix __clear_user() with KUAP enabled (Diego Domingos) [1894804] - powerpc: Implement user_access_begin and friends (Diego Domingos) [1894804] - powerpc: Add a framework for user access tracking (Diego Domingos) [1894804] - powerpc/64s: flush L1D on kernel entry (Diego Domingos) [1894804] - redhat: enable CONFIG_SLAB_FREELIST_HARDENED (Rafael Aquini) [1862283] - include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for swap (Rafael Aquini) [1862283] - uapi: rename ext2_swab() to swab() and share globally in swab.h (Rafael Aquini) [1862283] - lib/timerqueue: Rely on rbtree semantics for next timer (Phil Auld) [1984798] - e1000e: Do not take care about recovery NVM checksum (Ken Cox) [1984558] - qrtr: disable CONFIG_QRTR for non x86_64 archs (Íñigo Huguet) [1999642] - ceph: fix possible null-pointer dereference in ceph_mdsmap_decode() (Jeff Layton) [1989999] - ceph: fix dereference of null pointer cf (Jeff Layton) [1989999] - ceph: correctly handle releasing an embedded cap flush (Jeff Layton) [1989999] - ceph: take snap_empty_lock atomically with snaprealm refcount change (Jeff Layton) [1989999] - ceph: don't WARN if we're still opening a session to an MDS (Jeff Layton) [1989999] - rbd: don't hold lock_rwsem while running_list is being drained (Jeff Layton) [1989999] - rbd: always kick acquire on "acquired" and "released" notifications (Jeff Layton) [1989999] - ceph: take reference to req->r_parent at point of assignment (Jeff Layton) [1989999] - ceph: eliminate ceph_async_iput() (Jeff Layton) [1989999] - ceph: don't take s_mutex in ceph_flush_snaps (Jeff Layton) [1989999] - ceph: don't take s_mutex in try_flush_caps (Jeff Layton) [1989999] - ceph: don't take s_mutex or snap_rwsem in ceph_check_caps (Jeff Layton) [1989999] - ceph: eliminate session->s_gen_ttl_lock (Jeff Layton) [1989999] - ceph: allow ceph_put_mds_session to take NULL or ERR_PTR (Jeff Layton) [1989999] - ceph: clean up locking annotation for ceph_get_snap_realm and __lookup_snap_realm (Jeff Layton) [1989999] - ceph: add some lockdep assertions around snaprealm handling (Jeff Layton) [1989999] - ceph: decoding error in ceph_update_snap_realm should return -EIO (Jeff Layton) [1989999] - ceph: add IO size metrics support (Jeff Layton) [1989999] - ceph: update and rename __update_latency helper to __update_stdev (Jeff Layton) [1989999] - ceph: simplify the metrics struct (Jeff Layton) [1989999] - libceph: fix doc warnings in cls_lock_client.c (Jeff Layton) [1989999] - libceph: remove unnecessary ret variable in ceph_auth_init() (Jeff Layton) [1989999] - libceph: kill ceph_none_authorizer::reply_buf (Jeff Layton) [1989999] - ceph: make ceph_queue_cap_snap static (Jeff Layton) [1989999] - ceph: remove bogus checks and WARN_ONs from ceph_set_page_dirty (Jeff Layton) [1989999] - libceph: set global_id as soon as we get an auth ticket (Jeff Layton) [1989999] - libceph: don't pass result into ac->ops->handle_reply() (Jeff Layton) [1989999] - ceph: fix error handling in ceph_atomic_open and ceph_lookup (Jeff Layton) [1989999] - ceph: must hold snap_rwsem when filling inode for async create (Jeff Layton) [1989999] - libceph: Fix spelling mistakes (Jeff Layton) [1989999] - libceph: don't set global_id until we get an auth ticket (Jeff Layton) [1989999] - libceph: bump CephXAuthenticate encoding version (Jeff Layton) [1989999] - ceph: don't allow access to MDS-private inodes (Jeff Layton) [1989999] - ceph: fix up some bare fetches of i_size (Jeff Layton) [1989999] - ceph: support getting ceph.dir.rsnaps vxattr (Jeff Layton) [1989999] - ceph: drop pinned_page parameter from ceph_get_caps (Jeff Layton) [1989999] - ceph: fix inode leak on getattr error in __fh_to_dentry (Jeff Layton) [1989999] - ceph: only check pool permissions for regular files (Jeff Layton) [1989999] - ceph: send opened files/pinned caps/opened inodes metrics to MDS daemon (Jeff Layton) [1989999] - ceph: avoid counting the same request twice or more (Jeff Layton) [1989999] - ceph: rename the metric helpers (Jeff Layton) [1989999] - ceph: fix kerneldoc copypasta over ceph_start_io_direct (Jeff Layton) [1989999] - ceph: don't use d_add in ceph_handle_snapdir (Jeff Layton) [1989999] - ceph: don't clobber i_snap_caps on non-I_NEW inode (Jeff Layton) [1989999] - ceph: fix fall-through warnings for Clang (Jeff Layton) [1989999] - net: ceph: Fix a typo in osdmap.c (Jeff Layton) [1989999] - ceph: don't allow type or device number to change on non-I_NEW inodes (Jeff Layton) [1989999] - ceph: defer flushing the capsnap if the Fb is used (Jeff Layton) [1989999] - ceph: allow queueing cap/snap handling after putting cap references (Jeff Layton) [1989999] - ceph: clean up inode work queueing (Jeff Layton) [1989999] - ceph: fix flush_snap logic after putting caps (Jeff Layton) [1989999] - libceph: fix "Boolean result is used in bitwise operation" warning (Jeff Layton) [1989999] - new helper: inode_wrong_type() (Jeff Layton) [1989999] - kabi: Adding symbol single_release (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol single_open (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_read (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_printf (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_lseek (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol unregister_chrdev_region (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_init (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_del (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_alloc (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_add (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol alloc_chrdev_region (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol pcie_capability_read_word (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pcie_capability_read_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pcie_capability_clear_and_set_word (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_write_config_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_write_config_byte (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_set_power_state (drivers/pci/pci.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_read_config_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_read_config_byte (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_irq_vector (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_get_device (drivers/pci/search.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_free_irq_vectors (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_alloc_irq_vectors_affinity (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol kexec_crash_loaded (kernel/kexec_core.c) (Čestmír Kalina) [1945491] - perf/x86/intel: Fix PEBS-via-PT reload base value for Extended PEBS (Michael Petlan) [1998051] - perf/x86/intel/uncore: Fix Add BW copypasta (Michael Petlan) [1998051] - perf/x86/intel/uncore: Add BW counters for GT, IA and IO breakdown (Michael Petlan) [1998051] - Revert "ice: Add initial support framework for LAG" (Michal Schmidt) [1999016] - net: re-initialize slow_gro flag at gro_list_prepare time (Paolo Abeni) [2002367] - cxgb4: dont touch blocked freelist bitmap after free (Rahul Lakkireddy) [1998148] - cxgb4vf: configure ports accessible by the VF (Rahul Lakkireddy) [1961329] - scsi: lpfc: Fix memory leaks in error paths while issuing ELS RDF/SCR request (Dick Kennedy) [1976332] - scsi: lpfc: Keep NDLP reference until after freeing the IOCB after ELS handling (Dick Kennedy) [1976332] - scsi: lpfc: Move initialization of phba->poll_list earlier to avoid crash (Dick Kennedy) [1976332]- md/raid10: properly indicate failure when ending a failed write request (Nigel Croxon) [1983859] - md: Constify attribute_group structs (Nigel Croxon) [1983859] - md: mark some personalities as deprecated (Nigel Croxon) [1983859] - md/raid1: rename print_msg with r1bio_existed (Nigel Croxon) [1983859] - async_xor: check src_offs is not NULL before updating it (Nigel Croxon) [1983859] - async_xor: increase src_offs when dropping destination page (Nigel Croxon) [1983859] - md/raid5: reallocate page array after setting new stripe_size (Nigel Croxon) [1983859] - md/raid5: resize stripe_head when reshape array (Nigel Croxon) [1983859] - md/raid5: let multiple devices of stripe_head share page (Nigel Croxon) [1983859] - md/raid6: let async recovery function support different page offset (Nigel Croxon) [1983859] - md/raid6: let syndrome computor support different page offset (Nigel Croxon) [1983859] - md/raid5: convert to new xor compution interface (Nigel Croxon) [1983859] - md/raid5: add new xor function to support different page offset (Nigel Croxon) [1983859] - md/raid5: make async_copy_data() to support different page offset (Nigel Croxon) [1983859] - md/raid5: add a new member of offset into r5dev (Nigel Croxon) [1983859] - x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR (Jay Shin) [1994421] - crypto: ccp - Add support for new CCP/PSP device ID (Vladis Dronov) [1987094] - crypto: ccp - shutdown SEV firmware on kexec (Vladis Dronov) [1987094] - crypto: ccp - Use list_move_tail instead of list_del/list_add_tail in ccp-dmaengine.c (Vladis Dronov) [1987094] - crypto: ccp: ccp-dev: Fix a little doc-rot (Vladis Dronov) [1987094] - crypto: ccp - Fix a resource leak in an error handling path (Vladis Dronov) [1987094] - crypto: ccp - Annotate SEV Firmware file names (Vladis Dronov) [1987094] - crypto: ccp - Make ccp_dev_suspend and ccp_dev_resume void functions (Vladis Dronov) [1987094] - crypto: ccp - Use DEFINE_SPINLOCK() for spinlock (Vladis Dronov) [1987094] - crypto: ccp - A value assigned to a variable is never used (Vladis Dronov) [1987094] - crypto: ccp - Don't initialize SEV support without the SEV feature (Vladis Dronov) [1987094] - crypto: ccp - fix error handling (Vladis Dronov) [1987094] - crypto: ccp - use generic power management (Vladis Dronov) [1987094] - crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1987094] - crypto: ahash - remove useless setting of type flags (Vladis Dronov) [1987094] - crypto: ccp - Silence strncpy warning (Vladis Dronov) [1987094] - crypto: ccp - permit asynchronous skcipher as fallback (Vladis Dronov) [1987094] - crypto: ccp - Fix sparse warnings (Vladis Dronov) [1987094] - crypto: ccp - Update CCP driver maintainer information (Vladis Dronov) [1987094] - crypto: ccp - Fix use of merged scatterlists (Vladis Dronov) [1987094] - crypto: ccp - remove redundant assignment to variable ret (Vladis Dronov) [1987094] - crypto: ccp - use crypto_shash_tfm_digest() (Vladis Dronov) [1987094] - crypto: hash - introduce crypto_shash_tfm_digest() (Vladis Dronov) [1987094] - crypto: ccp -- don't "select" CONFIG_DMADEVICES (Vladis Dronov) [1987094] - crypto: ccp - Update MAINTAINERS for CCP driver (Vladis Dronov) [1987094] - crypto: ccp - switch from ablkcipher to skcipher (Vladis Dronov) [1987094] - ipc: replace costly bailout check in sysvipc_find_ipc() (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - ipc/util.c: sysvipc_find_ipc() incorrectly updates position index (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - ipc/util.c: sysvipc_find_ipc() should increase position index (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - psi: Fix psi state corruption when schedule() races with cgroup move (Waiman Long) [2002025] - psi: Optimize task switch inside shared cgroups (Waiman Long) [2002025] - kthread: Fix PF_KTHREAD vs to_kthread() race (Waiman Long) [2002025] - sched/fair: Ignore percpu threads for imbalance pulls (Waiman Long) [2002025] - sched: Fix get_push_task() vs migrate_disable() (Waiman Long) [2002025] - sched: Don't defer CPU pick to migration_cpu_stop() (Waiman Long) [2002025] - sched: Simplify migration_cpu_stop() (Waiman Long) [2002025] - sched: Simplify set_affinity_pending refcounts (Waiman Long) [2002025] - sched: Fix affine_move_task() self-concurrency (Waiman Long) [2002025] - sched: Optimize migration_cpu_stop() (Waiman Long) [2002025] - sched: Collate affine_move_task() stoppers (Waiman Long) [2002025] - sched: Simplify migration_cpu_stop() (Waiman Long) [2002025] - sched: Fix migration_cpu_stop() requeueing (Waiman Long) [2002025] - sched: Relax the set_cpus_allowed_ptr() semantics (Waiman Long) [2002025] - sched: Fix CPU hotplug / tighten is_per_cpu_kthread() (Waiman Long) [2002025] - sched: Prepare to use balance_push in ttwu() (Waiman Long) [2002025] - workqueue: Restrict affinity change to rescuer (Waiman Long) [2002025] - workqueue: Tag bound workers with KTHREAD_IS_PER_CPU (Waiman Long) [2002025] - kthread: Extract KTHREAD_IS_PER_CPU (Waiman Long) [2002025] - sched: Don't run cpu-online with balance_push() enabled (Waiman Long) [2002025] - workqueue: Use cpu_possible_mask instead of cpu_active_mask to break affinity (Waiman Long) [2002025] - sched/core: Print out straggler tasks in sched_cpu_dying() (Waiman Long) [2002025] - sched: Optimize finish_lock_switch() (Waiman Long) [2002025] - sched: Fix migration_cpu_stop() WARN (Waiman Long) [2002025] - sched/core: Add missing completion for affine_move_task() waiters (Waiman Long) [2002025] - stop_machine, rcu: Mark functions as notrace (Waiman Long) [2002025] - sched: Comment affine_move_task() (Waiman Long) [2002025] - sched: Deny self-issued __set_cpus_allowed_ptr() when migrate_disable() (Waiman Long) [2002025] - sched/proc: Print accurate cpumask vs migrate_disable() (Waiman Long) [2002025] - sched: Make migrate_disable/enable() independent of RT (Waiman Long) [2002025] - sched: Fix migrate_disable() vs rt/dl balancing (Waiman Long) [2002025] - sched, lockdep: Annotate ->pi_lock recursion (Waiman Long) [2002025] - sched,rt: Use the full cpumask for balancing (Waiman Long) [2002025] - sched,rt: Use cpumask_any*_distribute() (Waiman Long) [2002025] - sched/core: Make migrate disable and CPU hotplug cooperative (Waiman Long) [2002025] - sched: Fix migrate_disable() vs set_cpus_allowed_ptr() (Waiman Long) [2002025] - sched: Add migrate_disable() (Waiman Long) [2002025] - sched: Massage set_cpus_allowed() (Waiman Long) [2002025] - sched: Fix hotplug vs CPU bandwidth control (Waiman Long) [2002025] - sched/hotplug: Consolidate task migration on CPU unplug (Waiman Long) [2002025] - workqueue: Manually break affinity on hotplug (Waiman Long) [2002025] - sched/core: Wait for tasks being pushed away on hotplug (Waiman Long) [2002025] - sched/hotplug: Ensure only per-cpu kthreads run during hotplug (Waiman Long) [2002025] - sched: Fix balance_callback() (Waiman Long) [2002025] - maccess: rename probe_kernel_{read,write} to copy_{from,to}_kernel_nofault (Waiman Long) [2002025] - s390/ftrace: fix potential crashes when switching tracers (Waiman Long) [2002025] - psi: Move PF_MEMSTALL out of task->flags (Waiman Long) [2002025] - psi: Optimize switching tasks inside shared cgroups (Waiman Long) [2002025] - psi: Fix cpu.pressure for cpu.max and competing cgroups (Waiman Long) [2002025] - stop_machine: Make stop_cpus() static (Waiman Long) [2002025] - stop_machine: remove try_stop_cpus helper (Waiman Long) [2002025] - kernel.h: Add non_block_start/end() (Waiman Long) [2002025] - processor: get rid of cpu_relax_yield (Waiman Long) [2002025] - processor: remove spin_cpu_yield (Waiman Long) [2002025] - s390: improve wait logic of stop_machine (Waiman Long) [2002025] - sched/core: Fix typo in comment (Waiman Long) [2002025] - ia64/tlb: Eradicate tlb_migrate_finish() callback (Waiman Long) [2002025] - sched/core: Remove unnecessary unlikely() in push_*_task() (Waiman Long) [2002025] - sched/fair: Reduce long-tail newly idle balance cost (Phil Auld) [1971918] - hwmon: (acpi_power_meter) Fix lockdep splat (Waiman Long) [1997807] - redhat: open the RHEL-8.6 development (Augusto Caringi) [2000679] - rcu: Avoid unneeded function call in rcu_read_unlock() (Waiman Long) [1997500] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [1956419 1972045] - mt7921e: enable module in config (Íñigo Huguet) [1956419 1972045] - Revert tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1999926] - libnvdimm/namespace: Differentiate between probe mapping and runtime mapping (Jeff Moyer) [1795719] - libnvdimm/pfn_dev: Don't clear device memmap area during generic namespace probe (Jeff Moyer) [1795719] - perf/x86/intel/uncore: Clean up error handling path of iio mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix for iio mapping on Skylake Server (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MMIO type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the PCI type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Rename uncore_notifier to uncore_pci_sub_notifier (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MSR type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Parse uncore discovery tables (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Wrap the max dies calculation into an accessor (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Validate MMIO address before accessing (Michael Petlan) [1837330] - perf/x86/intel/uncore: Record the size of mapped area (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL (Michael Petlan) [1837330] - crypto: qat - remove unused macro in FW loader (Vladis Dronov) [1920086] - crypto: qat - check return code of qat_hal_rd_rel_reg() (Vladis Dronov) [1920086] - crypto: qat - report an error if MMP file size is too large (Vladis Dronov) [1920086] - crypto: qat - check MMP size before writing to the SRAM (Vladis Dronov) [1920086] - crypto: qat - return error when failing to map FW (Vladis Dronov) [1920086] - crypto: qat - enable detection of accelerators hang (Vladis Dronov) [1920086] - crypto: qat - Fix a double free in adf_create_ring (Vladis Dronov) [1920086] - crypto: qat - fix error path in adf_isr_resource_alloc() (Vladis Dronov) [1920086] - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (Vladis Dronov) [1920086] - crypto: qat - don't release uninitialized resources (Vladis Dronov) [1920086] - crypto: qat - fix use of 'dma_map_single' (Vladis Dronov) [1920086] - crypto: qat - fix unmap invalid dma address (Vladis Dronov) [1920086] - crypto: qat - fix spelling mistake: "messge" -> "message" (Vladis Dronov) [1920086] - crypto: qat - reduce size of mapped region (Vladis Dronov) [1920086] - crypto: qat - change format string and cast ring size (Vladis Dronov) [1920086] - crypto: qat - fix potential spectre issue (Vladis Dronov) [1920086] - crypto: qat - configure arbiter mapping based on engines enabled (Vladis Dronov) [1920086] - selftest: netfilter: add test case for unreplied tcp connections (Florian Westphal) [1991523] - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (Florian Westphal) [1991523] - net/sched: store the last executed chain also for clsact egress (Davide Caratti) [1980537] - ice: fix Tx queue iteration for Tx timestamp enablement (Ken Cox) [1999743] - perf evsel: Add missing cloning of evsel->use_config_name (Michael Petlan) [1838635] - perf Documentation: Document intel-hybrid support (Michael Petlan) [1838635] - perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Convert perf time to TSC' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Session topology' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Parse and process metrics' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Track with sched_switch' test for hybrid (Michael Petlan) [1838635] - perf tests: Skip 'Setup struct perf_event_attr' test for hybrid (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Roundtrip evsel->name' test (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Parse event definition strings' test (Michael Petlan) [1838635] - perf record: Uniquify hybrid event name (Michael Petlan) [1838635] - perf stat: Warn group events from different hybrid PMU (Michael Petlan) [1838635] - perf stat: Filter out unmatched aggregation for hybrid event (Michael Petlan) [1838635] - perf stat: Add default hybrid events (Michael Petlan) [1838635] - perf record: Create two hybrid 'cycles' events by default (Michael Petlan) [1838635] - perf parse-events: Support event inside hybrid pmu (Michael Petlan) [1838635] - perf parse-events: Compare with hybrid pmu name (Michael Petlan) [1838635] - perf parse-events: Create two hybrid raw events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid cache events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid hardware events (Michael Petlan) [1838635] - perf stat: Uniquify hybrid event name (Michael Petlan) [1838635] - perf pmu: Add hybrid helper functions (Michael Petlan) [1838635] - perf pmu: Save detected hybrid pmus to a global pmu list (Michael Petlan) [1838635] - perf pmu: Save pmu name (Michael Petlan) [1838635] - perf pmu: Simplify arguments of __perf_pmu__new_alias (Michael Petlan) [1838635] - perf jevents: Support unit value "cpu_core" and "cpu_atom" (Michael Petlan) [1838635] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1838635]- rcu: Avoid unneeded function call in rcu_read_unlock() (Waiman Long) [1997500] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [1956419 1972045] - mt7921e: enable module in config (Íñigo Huguet) [1956419 1972045] - Revert tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1999926] - libnvdimm/namespace: Differentiate between probe mapping and runtime mapping (Jeff Moyer) [1795719] - libnvdimm/pfn_dev: Don't clear device memmap area during generic namespace probe (Jeff Moyer) [1795719] - perf/x86/intel/uncore: Clean up error handling path of iio mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix for iio mapping on Skylake Server (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MMIO type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the PCI type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Rename uncore_notifier to uncore_pci_sub_notifier (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MSR type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Parse uncore discovery tables (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Wrap the max dies calculation into an accessor (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Validate MMIO address before accessing (Michael Petlan) [1837330] - perf/x86/intel/uncore: Record the size of mapped area (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL (Michael Petlan) [1837330] - crypto: qat - remove unused macro in FW loader (Vladis Dronov) [1920086] - crypto: qat - check return code of qat_hal_rd_rel_reg() (Vladis Dronov) [1920086] - crypto: qat - report an error if MMP file size is too large (Vladis Dronov) [1920086] - crypto: qat - check MMP size before writing to the SRAM (Vladis Dronov) [1920086] - crypto: qat - return error when failing to map FW (Vladis Dronov) [1920086] - crypto: qat - enable detection of accelerators hang (Vladis Dronov) [1920086] - crypto: qat - Fix a double free in adf_create_ring (Vladis Dronov) [1920086] - crypto: qat - fix error path in adf_isr_resource_alloc() (Vladis Dronov) [1920086] - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (Vladis Dronov) [1920086] - crypto: qat - don't release uninitialized resources (Vladis Dronov) [1920086] - crypto: qat - fix use of 'dma_map_single' (Vladis Dronov) [1920086] - crypto: qat - fix unmap invalid dma address (Vladis Dronov) [1920086] - crypto: qat - fix spelling mistake: "messge" -> "message" (Vladis Dronov) [1920086] - crypto: qat - reduce size of mapped region (Vladis Dronov) [1920086] - crypto: qat - change format string and cast ring size (Vladis Dronov) [1920086] - crypto: qat - fix potential spectre issue (Vladis Dronov) [1920086] - crypto: qat - configure arbiter mapping based on engines enabled (Vladis Dronov) [1920086]- selftest: netfilter: add test case for unreplied tcp connections (Florian Westphal) [1991523] - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (Florian Westphal) [1991523] - net/sched: store the last executed chain also for clsact egress (Davide Caratti) [1980537] - ice: fix Tx queue iteration for Tx timestamp enablement (Ken Cox) [1999743] - perf evsel: Add missing cloning of evsel->use_config_name (Michael Petlan) [1838635] - perf Documentation: Document intel-hybrid support (Michael Petlan) [1838635] - perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Convert perf time to TSC' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Session topology' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Parse and process metrics' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Track with sched_switch' test for hybrid (Michael Petlan) [1838635] - perf tests: Skip 'Setup struct perf_event_attr' test for hybrid (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Roundtrip evsel->name' test (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Parse event definition strings' test (Michael Petlan) [1838635] - perf record: Uniquify hybrid event name (Michael Petlan) [1838635] - perf stat: Warn group events from different hybrid PMU (Michael Petlan) [1838635] - perf stat: Filter out unmatched aggregation for hybrid event (Michael Petlan) [1838635] - perf stat: Add default hybrid events (Michael Petlan) [1838635] - perf record: Create two hybrid 'cycles' events by default (Michael Petlan) [1838635] - perf parse-events: Support event inside hybrid pmu (Michael Petlan) [1838635] - perf parse-events: Compare with hybrid pmu name (Michael Petlan) [1838635] - perf parse-events: Create two hybrid raw events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid cache events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid hardware events (Michael Petlan) [1838635] - perf stat: Uniquify hybrid event name (Michael Petlan) [1838635] - perf pmu: Add hybrid helper functions (Michael Petlan) [1838635] - perf pmu: Save detected hybrid pmus to a global pmu list (Michael Petlan) [1838635] - perf pmu: Save pmu name (Michael Petlan) [1838635] - perf pmu: Simplify arguments of __perf_pmu__new_alias (Michael Petlan) [1838635] - perf jevents: Support unit value "cpu_core" and "cpu_atom" (Michael Petlan) [1838635] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1838635]- mptcp: Only send extra TCP acks in eligible socket states (Paolo Abeni) [1997178] - mptcp: fix possible divide by zero (Paolo Abeni) [1997178] - mptcp: drop tx skb cache (Paolo Abeni) [1997178] - mptcp: fix memory leak on address flush (Paolo Abeni) [1997178] - ice: Only lock to update netdev dev_addr (Michal Schmidt) [1995868] - ice: restart periodic outputs around time changes (Ken Cox) [1992750] - ice: Fix perout start time rounding (Ken Cox) [1992750] - net/sched: ets: fix crash when flipping from 'strict' to 'quantum' (Davide Caratti) [1981184] - ovl: prevent private clone if bind mount is not allowed (Miklos Szeredi) [1993131] {CVE-2021-3732} - gfs2: Don't call dlm after protocol is unmounted (Bob Peterson) [1997193] - gfs2: don't stop reads while withdraw in progress (Bob Peterson) [1997193] - gfs2: Mark journal inodes as "don't cache" (Bob Peterson) [1997193] - bpf: bpftool: Add -fno-asynchronous-unwind-tables to BPF Clang invocation (Yauheni Kaliuta) [1997124] - perf/x86/intel: Apply mid ACK for small core (Michael Petlan) [1838573] - perf/x86/intel/lbr: Zero the xstate buffer on allocation (Michael Petlan) [1838573] - perf: Fix task context PMU for Hetero (Michael Petlan) [1838573] - perf/x86/intel: Fix fixed counter check warning for some Alder Lake (Michael Petlan) [1838573] - perf/x86/lbr: Remove cpuc->lbr_xsave allocation from atomic context (Michael Petlan) [1838573] - x86/fpu/xstate: Fix an xstate size check warning with architectural LBRs (Michael Petlan) [1838573] - perf/x86/rapl: Add support for Intel Alder Lake (Michael Petlan) [1838573] - perf/x86/cstate: Add Alder Lake CPU support (Michael Petlan) [1838573] - perf/x86/msr: Add Alder Lake CPU support (Michael Petlan) [1838573] - perf/x86/intel/uncore: Add Alder Lake support (Michael Petlan) [1838573] - perf: Extend PERF_TYPE_HARDWARE and PERF_TYPE_HW_CACHE (Michael Petlan) [1838573] - perf/x86/intel: Add Alder Lake Hybrid support (Michael Petlan) [1838573] - perf/x86: Support filter_match callback (Michael Petlan) [1838573] - perf/x86/intel: Add attr_update for Hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Add structures for the attributes of Hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Register hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Factor out x86_pmu_show_pmu_cap (Michael Petlan) [1838573] - perf/x86: Remove temporary pmu assignment in event_init (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_extra_regs (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_event_constraints (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_num_counters (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for extra_regs (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for event constraints (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for hardware cache event (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for unconstrained (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for counters (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for intel_ctrl (Michael Petlan) [1838573] - perf/x86/intel: Hybrid PMU support for perf capabilities (Michael Petlan) [1838573] - perf/x86: Track pmu in per-CPU cpu_hw_events (Michael Petlan) [1838573] - perf/x86/intel/lbr: Support XSAVES for arch LBR read (Michael Petlan) [1838573] - perf/x86/intel/lbr: Support XSAVES/XRSTORS for LBR context switch (Michael Petlan) [1838573] - x86/fpu/xstate: Add helpers for LBR dynamic supervisor feature (Michael Petlan) [1838573] - x86/fpu/xstate: Support dynamic supervisor feature for LBR (Michael Petlan) [1838573] - x86/fpu: Use proper mask to replace full instruction mask (Michael Petlan) [1838573] - x86/cpu: Add helper function to get the type of the current hybrid CPU (Michael Petlan) [1838573] - x86/cpufeatures: Enumerate Intel Hybrid Technology feature bit (Michael Petlan) [1838573] - HID: make arrays usage and value to be the same (Benjamin Tissoires) [1974942] - ACPI: PM: s2idle: Invert Microsoft UUID entry and exit (David Arcari) [1960440] - platform/x86: amd-pmc: Fix undefined reference to __udivdi3 (David Arcari) [1960440] - platform/x86: amd-pmc: Fix missing unlock on error in amd_pmc_send_cmd() (David Arcari) [1960440] - platform/x86: amd-pmc: Use return code on suspend (David Arcari) [1960440] - platform/x86: amd-pmc: Add new acpi id for future PMC controllers (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for ACPI ID AMDI0006 (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for logging s0ix counters (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for logging SMU metrics (David Arcari) [1960440] - platform/x86: amd-pmc: call dump registers only once (David Arcari) [1960440] - platform/x86: amd-pmc: Fix SMU firmware reporting mechanism (David Arcari) [1960440] - platform/x86: amd-pmc: Fix command completion code (David Arcari) [1960440] - usb: pci-quirks: disable D3cold on xhci suspend for s2idle on AMD Renoir (David Arcari) [1960440] - ACPI: PM: Only mark EC GPE for wakeup on Intel systems (David Arcari) [1960440] - ACPI: PM: Adjust behavior for field problems on AMD systems (David Arcari) [1960440] - ACPI: PM: s2idle: Add support for new Microsoft UUID (David Arcari) [1960440] - ACPI: PM: s2idle: Add support for multiple func mask (David Arcari) [1960440] - ACPI: PM: s2idle: Refactor common code (David Arcari) [1960440] - ACPI: PM: s2idle: Use correct revision id (David Arcari) [1960440] - ACPI: PM: s2idle: Add missing LPS0 functions for AMD (David Arcari) [1960440] - lockd: Fix invalid lockowner cast after vfs_test_lock (Benjamin Coddington) [1986138]- blk-mq: fix is_flush_rq (Ming Lei) [1992700] - blk-mq: fix kernel panic during iterating over flush request (Ming Lei) [1992700]- smb2: fix use-after-free in smb2_ioctl_query_info() (Ronnie Sahlberg) [1952781] - dm crypt: Avoid percpu_counter spinlock contention in crypt_page_alloc() (Mike Snitzer) [1996854] - md/raid10: Remove rcu_dereference when it doesn't need rcu lock to protect (Nigel Croxon) [1978115] - scsi: csiostor: Mark known unused variable as __always_unused (Raju Rangoju) [1961333] - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() (Raju Rangoju) [1961333] - scsi: csiostor: Remove set but not used variable 'rln' (Raju Rangoju) [1961333] - scsi: csiostor: Return value not required for csio_dfs_destroy (Raju Rangoju) [1961333] - scsi: csiostor: Fix NULL check before debugfs_remove_recursive (Raju Rangoju) [1961333] - scsi: csiostor: Don't enable IRQs too early (Raju Rangoju) [1961333] - scsi: csiostor: Fix spelling typos (Raju Rangoju) [1961333] - scsi: csiostor: Prefer pcie_capability_read_word() (Raju Rangoju) [1961333] - scsi: target: cxgbit: Unmap DMA buffer before calling target_execute_cmd() (Raju Rangoju) [1961394] - net: Use skb_frag_off accessors (Raju Rangoju) [1961394] - net: Use skb accessors in network drivers (Raju Rangoju) [1961394] - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 and ulds (Raju Rangoju) [1961394] - scsi: libcxgbi: Fix a use after free in cxgbi_conn_xmit_pdu() (Raju Rangoju) [1961394] - scsi: libcxgbi: Use kvzalloc instead of opencoded kzalloc/vzalloc (Raju Rangoju) [1961394] - scsi: libcxgbi: Remove unnecessary NULL checks for 'tdata' pointer (Raju Rangoju) [1961394] - scsi: cxgb4i: Remove an unnecessary NULL check for 'cconn' pointer (Raju Rangoju) [1961394] - scsi: cxgb4i: Clean up a debug printk (Raju Rangoju) [1961394] - scsi: cxgb4i: Fix dereference of pointer tdata before it is null checked (Raju Rangoju) [1961394] - scsi: libcxgbi: fix NULL pointer dereference in cxgbi_device_destroy() (Raju Rangoju) [1961394] - scsi: libcxgbi: remove unused function to stop warning (Raju Rangoju) [1961394] - scsi: libcxgbi: add a check for NULL pointer in cxgbi_check_route() (Raju Rangoju) [1961394] - net/chelsio: Delete drive and module versions (Raju Rangoju) [1961394] - chelsio: Replace zero-length array with flexible-array member (Raju Rangoju) [1961394] - [netdrv] treewide: prefix header search paths with $(srctree)/ (Raju Rangoju) [1961394] - libcxgb: fix incorrect ppmax calculation (Raju Rangoju) [1961394] - scsi: cxgb4i: Fix TLS dependency (Raju Rangoju) [1961394] - [target] treewide: Use fallthrough pseudo-keyword (Raju Rangoju) [1961394] - scsi: cxgb4i: Add support for iSCSI segmentation offload (Raju Rangoju) [1961394] - [target] treewide: Use sizeof_field() macro (Raju Rangoju) [1961394] - [target] treewide: replace '---help---' in Kconfig files with 'help' (Raju Rangoju) [1961394] - scsi: cxgb4i: Remove superfluous null check (Raju Rangoju) [1961394]- KVM: nSVM: avoid picking up unsupported bits from L2 in int_ctl (CVE-2021-3653) (Jon Maloy) [1985413] {CVE-2021-3653} - KVM: nSVM: always intercept VMLOAD/VMSAVE when nested (CVE-2021-3656) (Jon Maloy) [1985430] {CVE-2021-3656} - drm/i915/rkl: Remove require_force_probe protection (Lyude Paul) [1985159] - drm/i915/display: support ddr5 mem types (Lyude Paul) [1992233] - drm/i915/adl_s: Update ddi buf translation tables (Lyude Paul) [1992233] - drm/i915/adl_s: Wa_14011765242 is also needed on A1 display stepping (Lyude Paul) [1992233] - drm/i915/adl_s: Extend Wa_1406941453 (Lyude Paul) [1992233] - drm/i915: Implement Wa_1508744258 (Lyude Paul) [1992233] - drm/i915/adl_s: Fix dma_mask_size to 39 bit (Lyude Paul) [1992233] - drm/i915: Add the missing adls vswing tables (Lyude Paul) [1992233] - drm/i915: Add Wa_14011060649 (Lyude Paul) [1992233] - drm/i915/adl_s: Add Interrupt Support (Lyude Paul) [1992233] - drm/amdgpu: add another Renoir DID (Lyude Paul) [1980900]- net/mlx5: Fix flow table chaining (Amir Tzin) [1987139] - openvswitch: fix sparse warning incorrect type (Mark Gray) [1992773] - openvswitch: fix alignment issues (Mark Gray) [1992773] - openvswitch: update kdoc OVS_DP_ATTR_PER_CPU_PIDS (Mark Gray) [1992773] - openvswitch: Introduce per-cpu upcall dispatch (Mark Gray) [1992773] - KVM: X86: Expose bus lock debug exception to guest (Paul Lai) [1842322] - KVM: X86: Add support for the emulation of DR6_BUS_LOCK bit (Paul Lai) [1842322] - scsi: libfc: Fix array index out of bound exception (Chris Leech) [1972643] - scsi: libfc: FDMI enhancements (Chris Leech) [1972643] - scsi: libfc: Add FDMI-2 attributes (Chris Leech) [1972643] - scsi: qedf: Add vendor identifier attribute (Chris Leech) [1972643] - scsi: libfc: Initialisation of RHBA and RPA attributes (Chris Leech) [1972643] - scsi: libfc: Correct the condition check and invalid argument passed (Chris Leech) [1972643] - scsi: libfc: Work around -Warray-bounds warning (Chris Leech) [1972643] - scsi: fc: FDMI enhancement (Chris Leech) [1972643] - scsi: libfc: Move scsi/fc_encode.h to libfc (Chris Leech) [1972643] - scsi: fc: Correct RHBA attributes length (Chris Leech) [1972643] - block: return ELEVATOR_DISCARD_MERGE if possible (Ming Lei) [1991976] - x86/fpu: Prevent state corruption in __fpu__restore_sig() (Terry Bowman) [1970086] - x86/fpu: Invalidate FPU state after a failed XRSTOR from a user buffer (Terry Bowman) [1970086] - x86/pkru: Write hardware init value to PKRU when xstate is init (Terry Bowman) [1970086] - x86/process: Check PF_KTHREAD and not current->mm for kernel threads (Terry Bowman) [1970086] - x86/fpu: Add address range checks to copy_user_to_xstate() (Terry Bowman) [1970086] - selftests/x86: Test signal frame XSTATE header corruption handling (Terry Bowman) [1970086] - Bump DRM backport version to 5.12.14 (Lyude Paul) [1944405] - drm/i915: Use the correct max source link rate for MST (Lyude Paul) [1944405 1966599] - drm/dp_mst: Use Extended Base Receiver Capability DPCD space (Lyude Paul) [1944405 1966599] - drm/i915/display: Defeature PSR2 for RKL and ADL-S (Lyude Paul) [1944405] - drm/i915/adl_s: ADL-S platform Update PCI ids for Mobile BGA (Lyude Paul) [1944405] - drm/amdgpu: wait for moving fence after pinning (Lyude Paul) [1944405] - drm/radeon: wait for moving fence after pinning (Lyude Paul) [1944405] - drm/nouveau: wait for moving fence after pinning v2 (Lyude Paul) [1944405] - radeon: use memcpy_to/fromio for UVD fw upload (Lyude Paul) [1944405] - drm/amd/amdgpu:save psp ring wptr to avoid attack (Lyude Paul) [1944405] - drm/amd/display: Fix potential memory leak in DMUB hw_init (Lyude Paul) [1944405] - drm/amdgpu: refine amdgpu_fru_get_product_info (Lyude Paul) [1944405] - drm/amd/display: Allow bandwidth validation for 0 streams. (Lyude Paul) [1944405] - drm: Lock pointer access in drm_master_release() (Lyude Paul) [1944405] - drm: Fix use-after-free read in drm_getunique() (Lyude Paul) [1944405] - drm/amdgpu: make sure we unpin the UVD BO (Lyude Paul) [1944405] - drm/amdgpu: Don't query CE and UE errors (Lyude Paul) [1944405] - drm/amdgpu/jpeg3: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/jpeg2.5: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn3: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - amdgpu: fix GEM obj leak in amdgpu_display_user_framebuffer_create (Lyude Paul) [1944405] - drm/i915/selftests: Fix return value check in live_breadcrumbs_smoketest() (Lyude Paul) [1944405] - drm/amdgpu: stop touching sched.ready in the backend (Lyude Paul) [1944405] - drm/amd/amdgpu: fix a potential deadlock in gpu reset (Lyude Paul) [1944405] - drm/amdgpu: Fix a use-after-free (Lyude Paul) [1944405] - drm/amd/amdgpu: fix refcount leak (Lyude Paul) [1944405] - drm/amd/display: Disconnect non-DP with no EDID (Lyude Paul) [1944405] - drm/amdgpu/jpeg2.0: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn2.5: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn2.0: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdkfd: correct sienna_cichlid SDMA RLC register offset error (Lyude Paul) [1944405] - drm/amdgpu/vcn1: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amd/pm: correct MGpuFanBoost setting (Lyude Paul) [1944405] - drm/i915: Reenable LTTPR non-transparent LT mode for DPCD_REV<1.4 (Lyude Paul) [1944405] - drm/i915/gt: Disable HiZ Raw Stall Optimization on broken gen7 (Lyude Paul) [1944405] - dma-buf: fix unintended pin/unpin warnings (Lyude Paul) [1944405] - drm/amdgpu: update sdma golden setting for Navi12 (Lyude Paul) [1944405] - drm/amdgpu: update gc golden setting for Navi12 (Lyude Paul) [1944405] - drm/amdgpu: disable 3DCGCG on picasso/raven1 to avoid compute hang (Lyude Paul) [1944405] - drm/amdgpu: Fix GPU TLB update error when PAGE_SIZE > AMDGPU_PAGE_SIZE (Lyude Paul) [1944405] - drm/radeon: use the dummy page for GART if needed (Lyude Paul) [1944405] - drm/amd/display: Use the correct max downscaling value for DCN3.x family (Lyude Paul) [1944405] - drm/i915/gem: Pin the L-shape quirked object as unshrinkable (Lyude Paul) [1944405] - drm/ttm: Do not add non-system domain BO into swap list (Lyude Paul) [1944405] - drm/amd/display: Fix two cursor duplication when using overlay (Lyude Paul) [1944405] - amdgpu/pm: Prevent force of DCEFCLK on NAVI10 and SIENNA_CICHLID (Lyude Paul) [1944405] - drm/i915/display: fix compiler warning about array overrun (Lyude Paul) [1944405] - drm/i915: Fix crash in auto_retire (Lyude Paul) [1944405] - drm/i915/overlay: Fix active retire callback alignment (Lyude Paul) [1944405] - drm/i915: Read C0DRB3/C1DRB3 as 16 bits again (Lyude Paul) [1944405] - drm/i915/gt: Fix a double free in gen8_preallocate_top_level_pdp (Lyude Paul) [1944405] - drm/i915/dp: Use slow and wide link training for everything (Lyude Paul) [1944405] - drm/i915: Avoid div-by-zero on gen2 (Lyude Paul) [1944405] - drm/amd/display: Initialize attribute for hdcp_srm sysfs file (Lyude Paul) [1944405] - drm/radeon/dpm: Disable sclk switching on Oland when two 4K 60Hz monitors are connected (Lyude Paul) [1944405] - drm/radeon: Avoid power table parsing memory leaks (Lyude Paul) [1944405] - drm/radeon: Fix off-by-one power_state index heap overwrite (Lyude Paul) [1944405] - drm/amdgpu: Add mem sync flag for IB allocated by SA (Lyude Paul) [1944405] - drm/amd/display: add handling for hdcp2 rx id list validation (Lyude Paul) [1944405] - drm/amd/display: fixed divide by zero kernel crash during dsc enablement (Lyude Paul) [1944405] - drm/amd/display: Force vsync flip when reconfiguring MPCC (Lyude Paul) [1944405] - arm64: enable tlbi range instructions (Jeremy Linton) [1861872] - arm64: tlb: Use the TLBI RANGE feature in arm64 (Jeremy Linton) [1861872] - arm64: tlb: Detect the ARMv8.4 TLBI RANGE feature (Jeremy Linton) [1861872] - arm64/cpufeature: Add remaining feature bits in ID_AA64ISAR0 register (Jeremy Linton) [1861872] - arm64: tlbflush: Ensure start/end of address range are aligned to stride (Jeremy Linton) [1861872] - arm64: Detect the ARMv8.4 TTL feature (Jeremy Linton) [1861872] - arm64: tlbi: Set MAX_TLBI_OPS to PTRS_PER_PTE (Jeremy Linton) [1861872]- bpf: Fix integer overflow involving bucket_size (Jiri Olsa) [1992588] - bpf: Fix leakage due to insufficient speculative store bypass mitigation (Jiri Olsa) [1992588] - bpf: Introduce BPF nospec instruction for mitigating Spectre v4 (Jiri Olsa) [1992588] - bpf: Fix OOB read when printing XDP link fdinfo (Jiri Olsa) [1992588] - bpf, test: fix NULL pointer dereference on invalid expected_attach_type (Jiri Olsa) [1992588] - bpf: Fix tail_call_reachable rejection for interpreter when jit failed (Jiri Olsa) [1992588] - bpf: Track subprog poke descriptors correctly and fix use-after-free (Jiri Olsa) [1992588] - bpf: Fix null ptr deref with mixed tail calls and subprogs (Jiri Olsa) [1992588] - bpf: Fix leakage under speculation on mispredicted branches (Jiri Olsa) [1992588] - bpf: Set mac_len in bpf_skb_change_head (Jiri Olsa) [1992588] - bpf: Prevent writable memory-mapping of read-only ringbuf pages (Jiri Olsa) [1992588] - bpf: Fix alu32 const subreg bound tracking on bitwise operations (Jiri Olsa) [1992588] - xsk: Fix broken Tx ring validation (Jiri Olsa) [1992588] - xsk: Fix for xp_aligned_validate_desc() when len == chunk_size (Jiri Olsa) [1992588] - bpf: link: Refuse non-O_RDWR flags in BPF_OBJ_GET (Jiri Olsa) [1992588] - bpf: Refcount task stack in bpf_get_task_stack (Jiri Olsa) [1992588] - bpf: Use NOP_ATOMIC5 instead of emit_nops(&prog, 5) for BPF_TRAMP_F_CALL_ORIG (Jiri Olsa) [1992588] - selftest/bpf: Add a test to check trampoline freeing logic. (Jiri Olsa) [1992588] - bpf: Fix fexit trampoline. (Jiri Olsa) [1992588] - ftrace: Fix modify_ftrace_direct. (Jiri Olsa) [1992588] - ftrace: Add a helper function to modify_ftrace_direct() to allow arch optimization (Jiri Olsa) [1992588] - ftrace: Add helper find_direct_entry() to consolidate code (Jiri Olsa) [1992588] - bpf: Fix truncation handling for mod32 dst reg wrt zero (Jiri Olsa) [1992588] - bpf: Fix an unitialized value in bpf_iter (Jiri Olsa) [1992588] - bpf_lru_list: Read double-checked variable once without lock (Jiri Olsa) [1992588] - mt76: validate rx A-MSDU subframes (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - ath11k: Drop multicast fragments (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath11k: Clear the fragment cache during key install (Íñigo Huguet) [1991459] {CVE-2020-24587} - ath10k: Validate first subframe of A-MSDU before processing the list (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - ath10k: Fix TKIP Michael MIC verification for PCIe (Íñigo Huguet) [1991459] {CVE-2020-26141} - ath10k: drop MPDU which has discard flag set by firmware for SDIO (Íñigo Huguet) [1991459] {CVE-2020-24588} - ath10k: drop fragments with multicast DA for SDIO (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath10k: drop fragments with multicast DA for PCIe (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath10k: add CCMP PN replay protection for fragmented frames for PCIe (Íñigo Huguet) [1991459] - mac80211: extend protection against mixed key and fragment cache attacks (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: do not accept/forward invalid EAPOL frames (Íñigo Huguet) [1991459] {CVE-2020-26139} - mac80211: prevent attacks on TKIP/WEP as well (Íñigo Huguet) [1991459] {CVE-2020-26141} - mac80211: check defrag PN against current frame (Íñigo Huguet) [1991459] - mac80211: add fragment cache to sta_info (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: drop A-MSDUs on old ciphers (Íñigo Huguet) [1991459] {CVE-2020-24588} - cfg80211: mitigate A-MSDU aggregation attacks (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - mac80211: properly handle A-MSDUs that start with an RFC 1042 header (Íñigo Huguet) [1991459] - mac80211: prevent mixed key and fragment cache attacks (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: assure all fragments are encrypted (Íñigo Huguet) [1991459] {CVE-2020-26147} - tipc: call tipc_wait_for_connect only when dlen is not 0 (Xin Long) [1989361] - mptcp: remove tech preview warning (Florian Westphal) [1985120] - tcp: consistently disable header prediction for mptcp (Florian Westphal) [1985120] - selftests: mptcp: fix case multiple subflows limited by server (Florian Westphal) [1985120] - selftests: mptcp: turn rp_filter off on each NIC (Florian Westphal) [1985120] - selftests: mptcp: display proper reason to abort tests (Florian Westphal) [1985120] - mptcp: properly account bulk freed memory (Florian Westphal) [1985120] - mptcp: fix 'masking a bool' warning (Florian Westphal) [1985120] - mptcp: refine mptcp_cleanup_rbuf (Florian Westphal) [1985120] - mptcp: use fast lock for subflows when possible (Florian Westphal) [1985120] - mptcp: avoid processing packet if a subflow reset (Florian Westphal) [1985120] - mptcp: add sk parameter for mptcp_get_options (Florian Westphal) [1985120] - mptcp: fix syncookie process if mptcp can not_accept new subflow (Florian Westphal) [1985120] - mptcp: fix warning in __skb_flow_dissect() when do syn cookie for subflow join (Florian Westphal) [1985120] - mptcp: avoid race on msk state changes (Florian Westphal) [1985120] - mptcp: fix 32 bit DSN expansion (Florian Westphal) [1985120] - mptcp: fix bad handling of 32 bit ack wrap-around (Florian Westphal) [1985120] - tcp: parse mptcp options contained in reset packets (Florian Westphal) [1985120] - ionic: count csum_none when offload enabled (Jonathan Toppins) [1991646] - ionic: fix up dim accounting for tx and rx (Jonathan Toppins) [1991646] - ionic: remove intr coalesce update from napi (Jonathan Toppins) [1991646] - ionic: catch no ptp support earlier (Jonathan Toppins) [1991646] - ionic: make all rx_mode work threadsafe (Jonathan Toppins) [1991646] - dmaengine: idxd: Fix missing error code in idxd_cdev_open() (Jerry Snitselaar) [1990637] - dmaengine: idxd: add missing dsa driver unregister (Jerry Snitselaar) [1990637] - dmaengine: idxd: add engine 'struct device' missing bus type assignment (Jerry Snitselaar) [1990637] - dmaengine: idxd: remove MSIX masking for interrupt handlers (Jerry Snitselaar) [1990637] - dmaengine: idxd: Use cpu_feature_enabled() (Jerry Snitselaar) [1990637] - dmaengine: idxd: enable SVA feature for IOMMU (Jerry Snitselaar) [1990637] - dmagenine: idxd: Don't add portal offset in idxd_submit_desc (Jerry Snitselaar) [1990637] - ethtool: strset: fix message length calculation (Balazs Nemeth) [1989003] - net: add strict checks in netdev_name_node_alt_destroy() (Andrea Claudi) [1859038] - net: rtnetlink: fix bugs in rtnl_alt_ifname() (Andrea Claudi) [1859038] - net: rtnetlink: add linkprop commands to add and delete alternative ifnames (Andrea Claudi) [1859038] - net: check all name nodes in __dev_alloc_name (Andrea Claudi) [1859038] - net: fix a leak in register_netdevice() (Andrea Claudi) [1859038] - tun: fix memory leak in error path (Andrea Claudi) [1859038] - net: propagate errors correctly in register_netdevice() (Andrea Claudi) [1859038] - net: introduce name_node struct to be used in hashlist (Andrea Claudi) [1859038] - net: procfs: use index hashlist instead of name hashlist (Andrea Claudi) [1859038] - configs: Enable CONFIG_CHELSIO_INLINE_CRYPTO (Raju Rangoju) [1961368] - cxgb4/ch_ktls: Clear resources when pf4 device is removed (Raju Rangoju) [1961374] - ch_ktls: Remove redundant variable result (Raju Rangoju) [1961374] - ch_ktls: do not send snd_una update to TCB in middle (Raju Rangoju) [1961374] - ch_ktls: tcb close causes tls connection failure (Raju Rangoju) [1961374] - ch_ktls: fix device connection close (Raju Rangoju) [1961374] - ch_ktls: Fix kernel panic (Raju Rangoju) [1961374] - ch_ktls: fix enum-conversion warning (Raju Rangoju) [1961374] - net: ethernet: chelsio: inline_crypto: Mundane typos fixed throughout the file chcr_ktls.c (Raju Rangoju) [1961374] - ch_ipsec: Remove initialization of rxq related data (Raju Rangoju) [1961388] - ch_ktls: fix build warning for ipv4-only config (Raju Rangoju) [1961374] - ch_ktls: lock is not freed (Raju Rangoju) [1961374] - ch_ktls: stop the txq if reaches threshold (Raju Rangoju) [1961374] - ch_ktls: tcb update fails sometimes (Raju Rangoju) [1961374] - ch_ktls/cxgb4: handle partial tag alone SKBs (Raju Rangoju) [1961374] - ch_ktls: don't free skb before sending FIN (Raju Rangoju) [1961374] - ch_ktls: packet handling prior to start marker (Raju Rangoju) [1961374] - ch_ktls: Correction in middle record handling (Raju Rangoju) [1961374] - ch_ktls: missing handling of header alone (Raju Rangoju) [1961374] - ch_ktls: Correction in trimmed_len calculation (Raju Rangoju) [1961374] - cxgb4/ch_ktls: creating skbs causes panic (Raju Rangoju) [1961374] - ch_ktls: Update cheksum information (Raju Rangoju) [1961374] - ch_ktls: Correction in finding correct length (Raju Rangoju) [1961374] - cxgb4/ch_ktls: decrypted bit is not enough (Raju Rangoju) [1961374] - cxgb4/ch_ipsec: Replace the module name to ch_ipsec from chcr (Raju Rangoju) [1961388] - cxgb4/ch_ktls: ktls stats are added at port level (Raju Rangoju) [1961374] - ch_ktls: Issue if connection offload fails (Raju Rangoju) [1961374] - chelsio/chtls: Re-add dependencies on CHELSIO_T4 to fix modular CHELSIO_T4 (Raju Rangoju) [1961388] - chelsio/chtls: CHELSIO_INLINE_CRYPTO should depend on CHELSIO_T4 (Raju Rangoju) [1961388] - crypto: chelsio - fix minor indentation issue (Raju Rangoju) [1961368] - crypto/chcr: move nic TLS functionality to drivers/net (Raju Rangoju) [1961368] - cxgb4/ch_ipsec: Registering xfrmdev_ops with cxgb4 (Raju Rangoju) [1961388] - crypto/chcr: Moving chelsio's inline ipsec functionality to /drivers/net (Raju Rangoju) [1961368] - chelsio/chtls: separate chelsio tls driver from crypto driver (Raju Rangoju) [1961368] - crypto: chelsio - Fix some pr_xxx messages (Raju Rangoju) [1961368] - crypto: chelsio - Avoid some code duplication (Raju Rangoju) [1961368] - crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Raju Rangoju) [1961368] - crypto: aead - remove useless setting of type flags (Raju Rangoju) [1961368] - crypto: Replace zero-length array with flexible-array (Raju Rangoju) [1961368] - [Crypto] treewide: replace '---help---' in Kconfig files with 'help' (Raju Rangoju) [1961368] - Crypto/chcr: Checking cra_refcnt before unregistering the algorithms (Raju Rangoju) [1961368] - Crypto/chcr: Calculate src and dst sg lengths separately for dma map (Raju Rangoju) [1961368] - Crypto/chcr: Fixes a coccinile check error (Raju Rangoju) [1961368] - Crypto/chcr: Fixes compilations warnings (Raju Rangoju) [1961368] - crypto/chcr: IPV6 code needs to be in CONFIG_IPV6 (Raju Rangoju) [1961368] - crypto: lib/sha1 - remove unnecessary includes of linux/cryptohash.h (Raju Rangoju) [1961368] - Crypto/chcr: fix for hmac(sha) test fails (Raju Rangoju) [1961368] - Crypto/chcr: fix for ccm(aes) failed test (Raju Rangoju) [1961368] - Crypto/chcr: fix ctr, cbc, xts and rfc3686-ctr failed tests (Raju Rangoju) [1961368] - crypto: chelsio - remove redundant assignment to variable error (Raju Rangoju) [1961368] - chcr: Fix CPU hard lockup (Raju Rangoju) [1961368] - crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Raju Rangoju) [1961368] - crypto: chelsio - switch to skcipher API (Raju Rangoju) [1961368] - crypto: chelsio - Remove VLA usage of skcipher (Raju Rangoju) [1961368]- tracing: Fix bug in rb_per_cpu_empty() that might cause deadloop. (Chris von Recklinghausen) [1989485] {CVE-2021-3679} - vmlinux.lds.h: Keep .ctors.* with .ctors (Jan Stancek) [1993208] - spi: pxa2xx: Add support for Intel Alder Lake PCH-P (Steve Best) [1978463] - bnxt_en: allow promiscuous mode for trusted VFs (Jonathan Toppins) [1730616] - arm64: memory: Add missing brackets to untagged_addr() macro (Chris von Recklinghausen) [1955809] - arm64: tags: Preserve tags for addresses translated via TTBR1 (Chris von Recklinghausen) [1955809] - arm64: entry: Move ct_user_exit before any other exception (Chris von Recklinghausen) [1955809] - arm64: memory: Implement __tag_set() as common function (Chris von Recklinghausen) [1955809] - arm64: mm: Really fix sparse warning in untagged_addr() (Chris von Recklinghausen) [1955809] - arm64: untag user pointers in access_ok and __uaccess_mask_ptr (Chris von Recklinghausen) [1955809] - arm64/mm: fix variable 'tag' set but not used (Chris von Recklinghausen) [1955809] - arm64: entry: SP Alignment Fault doesn't write to FAR_EL1 (Chris von Recklinghausen) [1955809] - arm64: compat: Add separate CP15 trapping hook (Chris von Recklinghausen) [1955809] - arm64: don't restore GPRs when context tracking (Chris von Recklinghausen) [1955809]- bareudp: Fix invalid read beyond skb's linear data (Guillaume Nault) [1990938] - perf/x86/amd: Don't touch the AMD64_EVENTSEL_HOSTONLY bit inside the guest (Michael Petlan) [1990695] - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands (Balazs Nemeth) [1956825] - net: dcb: Validate netlink message in DCB handler (Balazs Nemeth) [1956825] - xfrm: Fix RCU vs hash_resize_mutex lock inversion (Sabrina Dubroca) [1988405] - Revert "xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype" (Sabrina Dubroca) [1988405] - xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype (Sabrina Dubroca) [1988405] - [s390] s390/AP: support new dynamic AP bus size limit (Claudio Imbrenda) [1974581] - net: sched: act_mirred: Reset ct info when mirror/redirect skb (Hangbin Liu) [1980532] - ucounts: Move max_time_namespace according to ucount_type (Alex Gladkov) [1982954] - perf vendor events power10: Adds 24x7 nest metric events for power10 platform (Diego Domingos) [1946650] - perf/core: fix backport of PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - perf/core: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Diego Domingos) [1946650] - perf vendor events powerpc: Fix eventcode of power10 JSON events (Diego Domingos) [1946650] - perf vendor events: Initial JSON/events list for power10 platform (Diego Domingos) [1946650] - powerpc/perf: Fix sampled instruction type for larx/stcx (Diego Domingos) [1946650] - powerpc/perf: Fix the threshold event selection for memory events in power10 (Diego Domingos) [1946650] - perf sort: Display sort dimension p_stage_cyc only on supported archs (Diego Domingos) [1946650] - perf tools: Support pipeline stage cycles for powerpc (Diego Domingos) [1946650] - perf powerpc: Add support for PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - perf sort: Add dynamic headers for perf report columns (Diego Domingos) [1946650] - powerpc/perf: Expose processor pipeline stage cycles using PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - Documentation/admin-guide: kernel-parameters: fix "disable_ddw" wording (Diego Domingos) [1946650] - powerpc/perf: Support PERF_SAMPLE_DATA_PAGE_SIZE (Diego Domingos) [1946650] - perf/core: Add PERF_SAMPLE_DATA_PAGE_SIZE (Diego Domingos) [1946650] - powerpc/perf: Infrastructure to support checking of attr.config* (Diego Domingos) [1946650] - powerpc/perf: Add platform specific check_attr_config (Diego Domingos) [1946650] - ice: add support for auxiliary input/output pins (Jonathan Toppins) [1956913] - ice: enable transmit timestamps for E810 devices (Jonathan Toppins) [1944818] - ice: enable receive hardware timestamping (Jonathan Toppins) [1944818] - ice: report the PTP clock index in ethtool .get_ts_info (Jonathan Toppins) [1944818] - ice: register 1588 PTP clock device object for E810 devices (Jonathan Toppins) [1944818] - ice: add low level PTP clock access functions (Jonathan Toppins) [1944818] - ice: add support for set/get of driver-stored firmware parameters (Jonathan Toppins) [1944818] - ice: process 1588 PTP capabilities during initialization (Jonathan Toppins) [1944818] - ice: add support for sideband messages (Jonathan Toppins) [1944818]- bnxt_en: Fix static checker warning in bnxt_fw_reset_task() (Jonathan Toppins) [1989274] - bnxt_en: Check abort error state in bnxt_half_open_nic() (Jonathan Toppins) [1989274] - bnxt_en: fix error path of FW reset (Jonathan Toppins) [1989274] - bnxt_en: Add missing check for BNXT_STATE_ABORT_ERR in bnxt_fw_rset_task() (Jonathan Toppins) [1989274] - bnxt_en: Refresh RoCE capabilities in bnxt_ulp_probe() (Jonathan Toppins) [1989274] - bnxt_en: reject ETS settings that will starve a TC (Jonathan Toppins) [1989274] - bnxt_en: don't disable an already disabled PCI device (Jonathan Toppins) [1989274] - bnxt_en: Remove the read of BNXT_FW_RESET_INPROG_REG after firmware reset. (Jonathan Toppins) [1989274] - i40e: Fix log TC creation failure when max num of queues is exceeded (Stefan Assmann) [1920274] - i40e: Fix queue-to-TC mapping on Tx (Stefan Assmann) [1920274] - i40e: Add additional info to PHY type error (Stefan Assmann) [1920274] - i40e: Fix firmware LLDP agent related warning (Stefan Assmann) [1920274] - i40e: Fix logic of disabling queues (Stefan Assmann) [1920274] - i40e: add support for PTP external synchronization clock (Stefan Assmann) [1920274] - i40e: improve locking of mac_filter_hash (Stefan Assmann) [1920274] - i40e: Fix missing rtnl locking when setting up pf switch (Stefan Assmann) [1920274] - i40e: fix PTP on 5Gb links (Stefan Assmann) [1920274] - i40e: Fix autoneg disabling for non-10GBaseT links (Stefan Assmann) [1920274] - i40e: Fix error handling in i40e_vsi_open (Stefan Assmann) [1920274] - intel: Remove rcu_read_lock() around XDP program invocation (Stefan Assmann) [1920274] - i40e: clean up packet type lookup table (Stefan Assmann) [1920274] - i40e: add correct exception tracing for XDP (Stefan Assmann) [1920274] - i40e: Remove LLDP frame filters (Stefan Assmann) [1920274] - i40e: Fix PHY type identifiers for 2.5G and 5G adapters (Stefan Assmann) [1920274] - i40e: Fix use-after-free in i40e_client_subtask() (Stefan Assmann) [1920274] - i40e: fix broken XDP support (Stefan Assmann) [1920274] - i40e: refactor repeated link state reporting code (Stefan Assmann) [1920274] - i40e: optimize for XDP_REDIRECT in xsk path (Stefan Assmann) [1920274] - i40e: fix the panic when running bpf in xdpdrv mode (Stefan Assmann) [1920274] - i40e: Fix sparse warning: missing error code 'err' (Stefan Assmann) [1920274] - i40e: Fix sparse error: 'vsi->netdev' could be null (Stefan Assmann) [1920274] - i40e: Fix sparse error: uninitialized symbol 'ring' (Stefan Assmann) [1920274] - i40e: Fix sparse errors in i40e_txrx.c (Stefan Assmann) [1920274] - i40e: Fix display statistics for veb_tc (Stefan Assmann) [1920274] - i40e: fix receiving of single packets in xsk zero-copy mode (Stefan Assmann) [1920274] - i40e: Fix inconsistent indenting (Stefan Assmann) [1920274] - i40e: Fix oops at i40e_rebuild() (Stefan Assmann) [1920274] - i40e: Fix kernel oops when i40e driver removes VF's (Stefan Assmann) [1920274] - i40e: Added Asym_Pause to supported link modes (Stefan Assmann) [1920274] - net: i40e: remove repeated words (Stefan Assmann) [1920274] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Stefan Assmann) [1920274] - intel: clean up mismatched header comments (Stefan Assmann) [1920274] - intel: Update drivers to use ethtool_sprintf (Stefan Assmann) [1920274] - i40e: move headroom initialization to i40e_configure_rx_ring (Stefan Assmann) [1920274] - i40e: Fix endianness conversions (Stefan Assmann) [1920274] - i40e: Fix add TC filter for IPv6 (Stefan Assmann) [1920274] - i40e: Fix addition of RX filters after enabling FW LLDP agent (Stefan Assmann) [1920274] - i40e: Fix overwriting flow control settings during driver loading (Stefan Assmann) [1920274] - i40e: Add zero-initialization of AQ command structures (Stefan Assmann) [1920274] - i40e: Fix memory leak in i40e_probe (Stefan Assmann) [1920274] - i40e: Fix flow for IPv6 next header (extension header) (Stefan Assmann) [1920274] - i40e: Fix incorrect argument in call to ipv6_addr_any() (Stefan Assmann) [1920274] - i40e: store the result of i40e_rx_offset() onto i40e_ring (Stefan Assmann) [1920274] - i40e: Simplify the do-while allocation loop (Stefan Assmann) [1920274] - i40e: adjust i40e_is_non_eop (Stefan Assmann) [1920274] - i40e: drop misleading function comments (Stefan Assmann) [1920274] - i40e: drop redundant check when setting xdp prog (Stefan Assmann) [1920274] - i40e: remove the useless value assignment in i40e_clean_adminq_subtask (Stefan Assmann) [1920274] - i40e: VLAN field for flow director (Stefan Assmann) [1920274] - i40e: Add flow director support for IPv6 (Stefan Assmann) [1920274] - i40e: Add EEE status getting & setting implementation (Stefan Assmann) [1920274] - i40e: Fix uninitialized variable mfs_max (Stefan Assmann) [1920274] - i40e: Add netlink callbacks support for software based DCB (Stefan Assmann) [1920274] - i40e: Add init and default config of software based DCB (Stefan Assmann) [1920274] - i40e: Add hardware configuration for software based DCB (Stefan Assmann) [1920274] - i40e: Log error for oversized MTU on device (Stefan Assmann) [1920274] - i40e: consolidate handling of XDP program actions (Stefan Assmann) [1920274] - i40e: remove the redundant buffer info updates (Stefan Assmann) [1920274] - i40e: remove unnecessary cleaned_count updates (Stefan Assmann) [1920274] - i40e: remove unnecessary memory writes of the next to clean pointer (Stefan Assmann) [1920274] - i40e: Use batched xsk Tx interfaces to increase performance (Stefan Assmann) [1920274] - i40e: convert to new udp_tunnel infrastructure (Stefan Assmann) [1920274] - netfilter: nf_tables: skip module reference count bump on object updates (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: fix unexpected EOPNOTSUPP error (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: Fix an Oops in nf_tables_updobj() error handling (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: fix possible null-pointer dereference in object update (Fernando Fernandez Mancera) [1944487] - netfilter: nft_quota: add quota object update support (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: Introduce stateful object update operation (Fernando Fernandez Mancera) [1944487] - cifs: retry lookup and readdir when EAGAIN is returned. (Ronnie Sahlberg) [1972411] - netfilter: nf_tables: Fix dereference of null pointer flow (Florian Westphal) [1985087] - netfilter: nf_tables: memleak in hw offload abort path (Florian Westphal) [1985087] - netfilter: nft_tproxy: restrict support to TCP and UDP transport protocols (Florian Westphal) [1985087] - netfilter: synproxy: Fix out of bounds when parsing TCP options (Florian Westphal) [1985087] - netfilter: nfnetlink_cthelper: hit EBUSY on updates if size mismatches (Florian Westphal) [1985087] - ipvs: ignore IP_VS_SVC_F_HASHED flag when adding service (Florian Westphal) [1985087] - netfilter: nftables: avoid overflows in nft_hash_buckets() (Florian Westphal) [1985087] - netfilter: nfnetlink_osf: Fix a missing skb_header_pointer() NULL check (Florian Westphal) [1985087] - netfilter: nf_tables_offload: check FLOW_DISSECTOR_KEY_BASIC in VLAN transfer logic (Florian Westphal) [1985087] - netfilter: nftables_offload: special ethertype handling for VLAN (Florian Westphal) [1985087] - netfilter: nftables_offload: VLAN id needs host byteorder in flow dissector (Florian Westphal) [1985087] - netfilter: nft_payload: fix C-VLAN offload support (Florian Westphal) [1985087] - ipvs: allow connection reuse for unconfirmed conntrack (Florian Westphal) [1985087] - net: fix GRO skb truesize update (Paolo Abeni) [1987391] - sk_buff: avoid potentially clearing 'slow_gro' field (Paolo Abeni) [1987391] - veth: use skb_prepare_for_gro() (Paolo Abeni) [1987391] - skbuff: allow 'slow_gro' for skb carring sock reference (Paolo Abeni) [1987391] - net: optimize GRO for the common case. (Paolo Abeni) [1987391] - sk_buff: track extension status in slow_gro (Paolo Abeni) [1987391] - sk_buff: track dst status in slow_gro (Paolo Abeni) [1987391] - sk_buff: introduce 'slow_gro' flags (Paolo Abeni) [1987391] - skbuff: Fix build with SKB extensions disabled (Paolo Abeni) [1987391] - skbuff: Release nfct refcount on napi stolen or re-used skbs (Paolo Abeni) [1987391] - selftests: net: veth: add tests for set_channel (Paolo Abeni) [1987391] - veth: create by default nr_possible_cpus queues (Paolo Abeni) [1987391] - veth: implement support for set_channel ethtool op (Paolo Abeni) [1987391] - veth: factor out initialization helper (Paolo Abeni) [1987391] - veth: always report zero combined channels (Paolo Abeni) [1987391] - veth: Implement ethtool's get_channelis() callback (Paolo Abeni) [1987391] - net: add GSO UDP L4 and GSO fraglists to the list of software-backed types (Paolo Abeni) [1987391] - ice: Support RSS configure removal for AVF (Jonathan Toppins) [1946726] - ice: Enable RSS configure for AVF (Jonathan Toppins) [1946726] - ice: Add helper function to get the VF's VSI (Jonathan Toppins) [1946726] - ice: remove redundant assignment to pointer vsi (Jonathan Toppins) [1946726] - ice: Advertise virtchnl UDP segmentation offload capability (Jonathan Toppins) [1946726] - ice: Allow ignoring opcodes on specific VF (Jonathan Toppins) [1946726] - ice: warn about potentially malicious VFs (Jonathan Toppins) [1946726] - ice: Consolidate VSI state and flags (Jonathan Toppins) [1946726] - ice: Refactor ice_set/get_rss into LUT and key specific functions (Jonathan Toppins) [1946726] - ice: Refactor get/set RSS LUT to use struct parameter (Jonathan Toppins) [1946726] - ice: Change ice_vsi_setup_q_map() to not depend on RSS (Jonathan Toppins) [1946726] - ice: Check FDIR program status for AVF (Jonathan Toppins) [1946726] - ice: Add more FDIR filter type for AVF (Jonathan Toppins) [1946726] - ice: Add GTPU FDIR filter for AVF (Jonathan Toppins) [1946726] - ice: Add non-IP Layer2 protocol FDIR filter for AVF (Jonathan Toppins) [1946726] - ice: Add new actions support for VF FDIR (Jonathan Toppins) [1946726] - ice: Add FDIR pattern action parser for VF (Jonathan Toppins) [1946726] - ice: Enable FDIR Configure for AVF (Jonathan Toppins) [1946726] - ice: Add support for per VF ctrl VSI enabling (Jonathan Toppins) [1946726] - ice: Enhanced IPv4 and IPv6 flow filter (Jonathan Toppins) [1946726] - ice: Support to separate GTP-U uplink and downlink (Jonathan Toppins) [1946726] - ice: Add more advanced protocol support in flow filter (Jonathan Toppins) [1946726] - ice: Support non word aligned input set field (Jonathan Toppins) [1946726] - ice: Add more basic protocol support for flow filter (Jonathan Toppins) [1946726] - sctp: move the active_key update after sh_keys is added (Xin Long) [1986966] - sctp: fix return value check in __sctp_rcv_asconf_lookup (Xin Long) [1986966] - sctp: delete addr based on sin6_scope_id (Xin Long) [1986966] - sctp: update active_key for asoc when old key is being replaced (Xin Long) [1986966] - sctp: move 198 addresses from unusable to private scope (Xin Long) [1986966] - sctp: add param size validation for SCTP_PARAM_SET_PRIMARY (Xin Long) [1986966] - sctp: validate chunk size in __rcv_asconf_lookup (Xin Long) [1986966] - sctp: add size validation when walking chunks (Xin Long) [1986966] - sctp: validate from_addr_param return (Xin Long) [1986966] - sctp: fix the proc_handler for sysctl encap_port (Xin Long) [1986966] - sctp: add the missing setting for asoc encap_port (Xin Long) [1986966] - sctp: fix a SCTP_MIB_CURRESTAB leak in sctp_sf_do_dupcook_b (Xin Long) [1986966] - sctp: Fix out-of-bounds warning in sctp_process_asconf_param() (Xin Long) [1986966] - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms (Xin Long) [1986966] - bonding: allow nesting of bonding device (Antoine Tenart) [1989099] - bonding: avoid adding slave device with IFF_MASTER flag (Antoine Tenart) [1989099] - ice: don't remove netdev->dev_addr from uc sync list (Ken Cox) [1873969 1961018] - ice: Stop processing VF messages during teardown (Ken Cox) [1986451] - ice: Prevent probing virtual functions (Ken Cox) [1952810] - ima: extend boot_aggregate with kernel measurements (Bruno Meneguele) [1977422] - selftest/bpf: Verifier tests for var-off access (Jiri Olsa) [1960944] {CVE-2021-29155} - selftest/bpf: Adjust expected verifier errors (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: No need to simulate speculative domain for immediates (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix mask direction swap upon off reg sign change (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Wrap aux data inside bpf_sanitize_info container (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix pointer arithmetic mask tightening under state pruning (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix leakage of uninitialized bpf stack under speculation (Jiri Olsa) [1960944 1958070] {CVE-2021-29155 CVE-2021-31829} - bpf: Fix masking negation logic upon negative dst register (Jiri Olsa) [1960944 1958070] {CVE-2021-29155 CVE-2021-31829} - bpf: verifier: Allocate idmap scratch in verifier env (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Tighten speculative pointer arithmetic mask (Jiri Olsa) [1960944 1972496] {CVE-2021-29155 CVE-2021-33200} - bpf: Move sanitize_val_alu out of op switch (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Refactor and streamline bounds check into helper (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Allow variable-offset stack access (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Improve verifier error messages for users (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Rework ptr_limit into alu_limit and add common error path (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Ensure off_reg has no mixed signed bounds for all types (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Move off_reg into sanitize_ptr_alu (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Use correct permission flag for mixed signed bounds arithmetic (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Add sanity check for upper ptr_limit (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Simplify alu_limit masking for pointer arithmetic (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix off-by-one for area size in creating mask to left (Jiri Olsa) [1960944] {CVE-2021-29155} - Documentation/x86: Add ratelimit in buslock.rst (Prarit Bhargava) [1948048] - Documentation/admin-guide: Add bus lock ratelimit (Prarit Bhargava) [1948048] - x86/bus_lock: Set rate limit for bus lock (Prarit Bhargava) [1948048] - Documentation/x86: Add buslock.rst (Prarit Bhargava) [1948048] - [s390] net/smc: Ensure correct state of the socket in send path (Claudio Imbrenda) [1731026] - [s390] net/smc: Fix ENODATA tests in smc_nl_get_fback_stats() (Claudio Imbrenda) [1731026] - [s390] net/smc: Make SMC statistics network namespace aware (Claudio Imbrenda) [1731026] - [s390] net/smc: Add netlink support for SMC fallback statistics (Claudio Imbrenda) [1731026] - [s390] net/smc: Add netlink support for SMC statistics (Claudio Imbrenda) [1731026] - [s390] net/smc: Add SMC statistics support (Claudio Imbrenda) [1731026] - [s390] s390/ap: Fix hanging ioctl caused by wrong msg counter (Claudio Imbrenda) [1984762] - KVM: PPC: Book3S: Fix H_RTAS rets buffer overflow (Jon Maloy) [1988226] {CVE-2021-37576} - NFSv4: Fix an Oops in pnfs_mark_request_commit() when doing O_DIRECT (Benjamin Coddington) [1983793] - selftests/powerpc: EBB selftest for MMCR0 control for PMU SPRs in ISA v3.1 (Desnes A. Nunes do Rosario) [1991753] - selftests/powerpc: Fix "no_handler" EBB selftest (Desnes A. Nunes do Rosario) [1991753] - powerpc/perf: Fix crash in perf_instruction_pointer() when ppmu is not set (Desnes A. Nunes do Rosario) [1991753] - powerpc/pmu: Make the generic compat PMU use the architected events (Desnes A. Nunes do Rosario) [1991753] - perf script python: Fix buffer size to report iregs in perf script (Desnes A. Nunes do Rosario) [1991753] - ceph: reduce contention in ceph_check_delayed_caps() (Jeff Layton) [1953430]- net: mac802154: Fix general protection fault (Chris von Recklinghausen) [1984571] {CVE-2021-3659} - Bluetooth: fix the erroneous flush_work() order (Chris von Recklinghausen) [1964559] {CVE-2021-3564} - Bluetooth: use correct lock to prevent UAF of hdev object (Chris von Recklinghausen) [1968214] {CVE-2021-3573} - usb: ehci: Prevent missed ehci interrupts with edge-triggered MSI (Torez Smith) [1972139] - usb: ehci: do not initialise static variables (Torez Smith) [1972139] - usb: host: move EH SINGLE_STEP_SET_FEATURE implementation to core (Torez Smith) [1972139] - USB: ehci: drop workaround for forced irq threading (Torez Smith) [1972139] - usb: ehci: add spurious flag to disable overcurrent checking (Torez Smith) [1972139] - perf test: Handle fd gaps in test__dso_data_reopen (Michael Petlan) [1871785] - tty: vt: always invoke vc->vc_sw->con_resize callback (Maxim Levitsky) [1957611] - iavf: fix locking of critical sections (Stefan Assmann) [1975245] - iavf: do not override the adapter state in the watchdog task (Stefan Assmann) [1975245] - ixgbe: Fix packet corruption due to missing DMA sync (Ken Cox) [1920269] - ixgbe: Fix an error handling path in 'ixgbe_probe()' (Ken Cox) [1920269] - intel: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [1920269] - ixgbe: add correct exception tracing for XDP (Ken Cox) [1920269] - ixgbe: Fix out-bounds warning in ixgbe_host_interface_command() (Ken Cox) [1920269] - ixgbe: reduce checker warnings (Ken Cox) [1920269] - ixgbe: use checker safe conversions (Ken Cox) [1920269] - ixgbe: fix large MTU request from VF (Ken Cox) [1920269] - net: ethernet: intel: Fix a typo in the file ixgbe_dcb_nl.c (Ken Cox) [1920269] - net: intel: Remove unused function pointer typedef ixgbe_mc_addr_itr (Ken Cox) [1920269] - ixgbe: Support external GBE SerDes PHY BCM54616s (Ken Cox) [1920269] - ixgbe: fix unbalanced device enable/disable in suspend/resume (Ken Cox) [1920269] - ixgbe: Fix NULL pointer dereference in ethtool loopback test (Ken Cox) [1920269] - ixgbe: Fix fall-through warnings for Clang (Ken Cox) [1920269] - intel: clean up mismatched header comments (Ken Cox) [1920269] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Ken Cox) [1920269] - intel: Update drivers to use ethtool_sprintf (Ken Cox) [1920269] - ixgbe: optimize for XDP_REDIRECT in xsk path (Ken Cox) [1920269] - ixgbe: move headroom initialization to ixgbe_configure_rx_ring (Ken Cox) [1920269] - ixgbe: Fix memleak in ixgbe_configure_clsu32 (Ken Cox) [1920269] - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (Ken Cox) [1920269] - ixgbe: store the result of ixgbe_rx_offset() onto ixgbe_ring (Ken Cox) [1920269] - net: ixgbe: use skb_csum_is_sctp instead of protocol check (Ken Cox) [1920269] - ixgbe: avoid premature Rx buffer reuse (Ken Cox) [1920269] - net: remove unneeded break (Ken Cox) [1920269] - ixgbe: add pause frame stats (Ken Cox) [1920269] - iavf: Set RSS LUT and key in reset handle path (Ken Cox) [1910853] - [netdrv] chelsio: Replace zero-length array with flexible-array member (Raju Rangoju) [1955208] - cxgb4: avoid collecting SGE_QBASE regs during traffic (Raju Rangoju) [1955208] - cxgb4: collect serial config version from register (Raju Rangoju) [1955208] - cxgb4: remove unused vpd_cap_addr (Raju Rangoju) [1955208] - cxgb4: remove bogus CHELSIO_VPD_UNIQUE_ID constant (Raju Rangoju) [1955208] - cxgb4: Assign boolean values to a bool variable (Raju Rangoju) [1955208] - cxgb4: enable interrupt based Tx completions for T5 (Raju Rangoju) [1955208] - cxgb4: fix the panic caused by non smac rewrite (Raju Rangoju) [1955208] - cxgb4: Fix the -Wmisleading-indentation warning (Raju Rangoju) [1955208] - cxgb4: set up filter action after rewrites (Raju Rangoju) [1955208] - cxgb4: handle 4-tuple PEDIT to NAT mode translation (Raju Rangoju) [1955208] - [netdrv] net: rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Raju Rangoju) [1955208] - net: cxbg4: Remove pointless in_interrupt() check (Raju Rangoju) [1955208] - cxgb4: Avoid log flood (Raju Rangoju) [1955208] - cxgb4: fix memory leak during module unload (Raju Rangoju) [1955208] - cxgb4: Fix offset when clearing filter byte counters (Raju Rangoju) [1955208] - cxgb4: add error handlers to LE intr_handler (Raju Rangoju) [1955208] - cxgb4: insert IPv6 filter rules in next free region (Raju Rangoju) [1955208] - cxgb4: Fix race between loopback and normal Tx path (Raju Rangoju) [1955208] - cxgb4: Fix work request size calculation for loopback test (Raju Rangoju) [1955208] - cxgb4: add TC-MATCHALL IPv6 support (Raju Rangoju) [1955208] - cxgb4: fix extracting IP addresses in TC-FLOWER rules (Raju Rangoju) [1955208] - cxgb4: fix check for running offline ethtool selftest (Raju Rangoju) [1955208] - cxgb4: add loopback ethtool self-test (Raju Rangoju) [1955208] - net: cxgb4: reject unsupported coalescing params (Raju Rangoju) [1955208] - cxgb4: use eth_zero_addr() to clear mac address (Raju Rangoju) [1955208] - cxgb4: add missing release on skb in uld_send() (Raju Rangoju) [1955208] - cxgb4: convert to new udp_tunnel_nic infra (Raju Rangoju) [1955208] - cxgb4: fix all-mask IP address comparison (Raju Rangoju) [1955208] - cxgb4: add main VI to mirror VI config replication (Raju Rangoju) [1955208] - cxgb4: add support for mirror Rxqs (Raju Rangoju) [1955208] - cxgb4: add mirror action to TC-MATCHALL offload (Raju Rangoju) [1955208] - net: cxgb4: fix return error value in t4_prep_fw (Raju Rangoju) [1955208] - cxgb4: move device dump arrays in header to C file (Raju Rangoju) [1955208] - cxgb4: always sync access when flashing PHY firmware (Raju Rangoju) [1955208] - cxgb4: update kernel-doc line comments (Raju Rangoju) [1955208] - cxgb4: fix set but unused variable when DCB is disabled (Raju Rangoju) [1955208] - cxgb4: move DCB version extern to header file (Raju Rangoju) [1955208] - cxgb4: remove cast when saving IPv4 partial checksum (Raju Rangoju) [1955208] - cxgb4: fix SGE queue dump destination buffer context (Raju Rangoju) [1955208] - cxgb4: use correct type for all-mask IP address comparison (Raju Rangoju) [1955208] - cxgb4: fix endian conversions for L4 ports in filters (Raju Rangoju) [1955208] - cxgb4: parse TC-U32 key values and masks natively (Raju Rangoju) [1955208] - cxgb4: use unaligned conversion for fetching timestamp (Raju Rangoju) [1955208] - cxgb4: move PTP lock and unlock to caller in Tx path (Raju Rangoju) [1955208] - cxgb4: move handling L2T ARP failures to caller (Raju Rangoju) [1955208] - cxgb4: Use struct_size() helper (Raju Rangoju) [1955208] - cxgb4: add action to steer flows to specific Rxq (Raju Rangoju) [1955208] - cxgb4: add support to fetch ethtool n-tuple filters (Raju Rangoju) [1955208] - cxgb4: add ethtool n-tuple filter deletion (Raju Rangoju) [1955208] - cxgb4: add ethtool n-tuple filter insertion (Raju Rangoju) [1955208] - [netdrv] flow_offload: check for basic action hw stats type (Raju Rangoju) [1955208] - cxgb4: add skeleton for ethtool n-tuple filters (Raju Rangoju) [1955208] - cxgb4: add support to read serial flash (Raju Rangoju) [1955208] - cxgb4: add support to flash boot cfg image (Raju Rangoju) [1955208] - cxgb4: add support to flash boot image (Raju Rangoju) [1955208] - cxgb4: add support to flash PHY image (Raju Rangoju) [1955208] - cxgb4: update set_flash to flash different images (Raju Rangoju) [1955208] - cxgb4: Use kfree() instead kvfree() where appropriate (Raju Rangoju) [1955208] - cxgb4: Use pM format specifier for MAC addresses (Raju Rangoju) [1955208] - net: sock: fix in-kernel mark setting (Alexander Aring) [1509204] - sock: Reset dst when changing sk_mark via setsockopt (Alexander Aring) [1509204] - fs: dlm: fix mark setting deadlock (Alexander Aring) [1509204] - fs: dlm: fix mark per nodeid setting (Alexander Aring) [1509204] - fs: dlm: remove lock dependency warning (Alexander Aring) [1509204] - fs: dlm: set skb mark per peer socket (Alexander Aring) [1509204] - fs: dlm: set skb mark for listen socket (Alexander Aring) [1509204] - net: sock: add sock_set_mark (Alexander Aring) [1509204] - Bluetooth: btusb: Add support for GarfieldPeak controller (Gopal Tiwari) [1959110] - can: gw: synchronize rcu operations before removing gw job entry (Balazs Nemeth) [1986334] - can: bcm: fix infoleak in struct bcm_msg_head (Balazs Nemeth) [1986334] - can: af_can: prevent potential access of uninitialized member in canfd_rcv() (Balazs Nemeth) [1956730] - can: af_can: prevent potential access of uninitialized member in can_rcv() (Balazs Nemeth) [1956730] - can: proc: can_remove_proc(): silence remove_proc_entry warning (Balazs Nemeth) [1956730] - cifs: add missing parsing of backupuid (Ronnie Sahlberg) [1987126] - cifs: use helpers when parsing uid/gid mount options and validate them (Ronnie Sahlberg) [1987126] - kernfs: dont call d_splice_alias() under kernfs node lock (Ian Kent) [1939133] - kernfs: use i_lock to protect concurrent inode updates (Ian Kent) [1939133] - kernfs: switch kernfs to use an rwsem (Ian Kent) [1939133] - kernfs: use VFS negative dentry caching (Ian Kent) [1939133] - kernfs: add a revision to identify directory node changes (Ian Kent) [1939133] - kernfs: move revalidate to be near lookup (Ian Kent) [1939133]- mlxsw: spectrum_mr: Update egress RIF list before route's action (Ivan Vecera) [1941938] - selftests: mlxsw: Fix mausezahn invocation in ERSPAN scale test (Ivan Vecera) [1941938] - selftests: mlxsw: Increase the tolerance of backlog buildup (Ivan Vecera) [1941938] - selftests: mlxsw: Return correct error code in resource scale tests (Ivan Vecera) [1941938] - selftests: mlxsw: Remove a redundant if statement in tc_flower_scale test (Ivan Vecera) [1941938] - selftests: mlxsw: Remove a redundant if statement in port_scale test (Ivan Vecera) [1941938] - selftests: mlxsw: sch_red_ets: Test proper counter cleaning in ETS (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Index future FIFOs by band number (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Allocate child qdiscs dynamically (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Guard all qdisc accesses with a lock (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Track children per qdisc (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Promote backlog reduction to mlxsw_sp_qdisc_destroy() (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Track tclass_num as int, not u8 (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Drop an always-true condition (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Simplify mlxsw_sp_qdisc_compare() (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Drop one argument from check_params callback (Ivan Vecera) [1941938] - mlxsw: core: Remove critical trip points from thermal zones (Ivan Vecera) [1941938] - selftests: mlxsw: Test vetoing of double sampling (Ivan Vecera) [1941938] - mlxsw: spectrum: Veto sampling if already enabled on port (Ivan Vecera) [1941938] - selftests: mlxsw: Test matchall failure with protocol match (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Perform priority checks earlier (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Convert if statements to a switch statement (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Perform protocol check earlier (Ivan Vecera) [1941938] - selftests: forwarding: vxlan_bridge_1d: Add more ECN decap test cases (Ivan Vecera) [1941938] - mlxsw: spectrum: Fix ECN marking in tunnel decapsulation (Ivan Vecera) [1941938] - selftests: net: forwarding: Fix a typo (Ivan Vecera) [1941938] - selftests: mlxsw: spectrum-2: Remove q_in_vni_veto test (Ivan Vecera) [1941938] - selftests: forwarding: Add test for dual VxLAN bridge (Ivan Vecera) [1941938] - mlxsw: Allow 802.1d and .1ad VxLAN bridges to coexist on Spectrum>=2 (Ivan Vecera) [1941938] - mlxsw: Add struct mlxsw_sp_switchdev_ops per ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum: Add mlxsw_sp_port_egress_ethtype_set() (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port Egress VLAN EtherType Register (Ivan Vecera) [1941938] - mlxsw: reg: Add egr_et_set field to SPVID (Ivan Vecera) [1941938] - selftests: mlxsw: Test egress sampling limitation on Spectrum-1 only (Ivan Vecera) [1941938] - selftests: mlxsw: Add tc sample tests for new triggers (Ivan Vecera) [1941938] - mlxsw: spectrum_acl: Offload FLOW_ACTION_SAMPLE (Ivan Vecera) [1941938] - mlxsw: core_acl_flex_actions: Add mirror sampler action (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Add support for egress sampling (Ivan Vecera) [1941938] - mlxsw: spectrum: Start using sampling triggers hash table (Ivan Vecera) [1941938] - mlxsw: spectrum: Track sampling triggers in a hash table (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Pass matchall entry to sampling operations (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Push sampling checks to per-ASIC operations (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Propagate extack further (Ivan Vecera) [1941938] - selftests: mlxsw: Add tc sample tests (Ivan Vecera) [1941938] - mlxsw: spectrum: Report extra metadata to psample module (Ivan Vecera) [1941938] - mlxsw: spectrum: Remove mlxsw_sp_sample_receive() (Ivan Vecera) [1941938] - mlxsw: spectrum: Remove unnecessary RCU read-side critical section (Ivan Vecera) [1941938] - mlxsw: pci: Set extra metadata in skb control block (Ivan Vecera) [1941938] - mlxsw: Create dedicated field for Rx metadata in skb control block (Ivan Vecera) [1941938] - mlxsw: pci: Add more metadata fields to CQEv2 (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Implement sampling using mirroring (Ivan Vecera) [1941938] - mlxsw: spectrum_trap: Split sampling traps between ASICs (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Split sampling support between ASICs (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Add SPAN probability rate support (Ivan Vecera) [1941938] - mlxsw: reg: Extend mirroring registers with probability rate field (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Add SPAN session identifier support (Ivan Vecera) [1941938] - mlxsw: Adjust some MFDE fields shift and size to fw implementation (Ivan Vecera) [1941938] - mlxsw: core: Expose MFDE.log_ip to devlink health (Ivan Vecera) [1941938] - mlxsw: reg: Extend MFDE register with new log_ip field (Ivan Vecera) [1941938] - mlxsw: spectrum: Bump minimum FW version to xx.2008.2406 (Ivan Vecera) [1941938] - mlxsw: reg: Fix comment about slot_index field in PMAOS register (Ivan Vecera) [1941938] - mlxsw: spectrum: Reword an error message for Q-in-Q veto (Ivan Vecera) [1941938] - mlxsw: spectrum_ethtool: Add an external speed to PTYS register (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Do not overwrite policer configuration (Ivan Vecera) [1941938] - selftests: forwarding: Specify interface when invoking mausezahn (Ivan Vecera) [1941938] - selftests: mlxsw: Add a scale test for physical ports (Ivan Vecera) [1941938] - mlxsw: Register physical ports as a devlink resource (Ivan Vecera) [1941938] - mlxsw: pci: switch from 'pci_' to 'dma_' API (Ivan Vecera) [1941938] - mlxsw: core: Increase critical threshold for ASIC thermal zone (Ivan Vecera) [1941938] - mlxsw: core: Add validation of transceiver temperature thresholds (Ivan Vecera) [1941938] - selftests: mlxsw: Set headroom size of correct port (Ivan Vecera) [1941938] - net/mlxfw: Use kzalloc for allocating only one thing (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use eXtended mezzanine to offload IPv4 router (Ivan Vecera) [1941938] - mlxsw: spectrum: Set KVH XLT cache mode for Spectrum2/3 (Ivan Vecera) [1941938] - mlxsw: spectrum_router_xm: Introduce basic XM cache flushing (Ivan Vecera) [1941938] - mlxsw: reg: Add Router LPM Cache Enable Register (Ivan Vecera) [1941938] - mlxsw: reg: Add Router LPM Cache ML Delete Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router_xm: Implement L-value tracking for M-index (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Router M Table Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce per-ASIC XM initialization (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Lookup Table Query Register (Ivan Vecera) [1941938] - mlxsw: reg: Add Router XLT M select Register (Ivan Vecera) [1941938] - mlxsw: Ignore ports that are connected to eXtended mezanine (Ivan Vecera) [1941938] - mlxsw: pci: Obtain info about ports used by eXtended mezanine (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce XM implementation of router low-level ops (Ivan Vecera) [1941938] - mlxsw: reg: Add Router XLT Enable Register (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Direct Register (Ivan Vecera) [1941938] - selftests: mlxsw: Add Q-in-VNI veto tests (Ivan Vecera) [1941938] - selftests: forwarding: Add Q-in-VNI test (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Allow joining VxLAN to 802.1ad bridge (Ivan Vecera) [1941938] - mlxsw: Veto Q-in-VNI for Spectrum-1 ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Use ops->vxlan_join() when adding VLAN to VxLAN device (Ivan Vecera) [1941938] - mlxsw: spectrum_nve_vxlan: Add support for Q-in-VNI for Spectrum-2 ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum: Publish mlxsw_sp_ethtype_to_sver_type() (Ivan Vecera) [1941938] - mlxsw: Save EtherType as part of mlxsw_sp_nve_config (Ivan Vecera) [1941938] - mlxsw: Save EtherType as part of mlxsw_sp_nve_params (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Create common function for joining VxLAN to VLAN-aware bridge (Ivan Vecera) [1941938] - mlxsw: reg: Add support for tunnel port in SPVID register (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port VLAN Stacking Register (Ivan Vecera) [1941938] - mlxsw: Use one enum for all registers that contain tunnel_port field (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Reduce mlxsw_sp_ipip_fib_entry_op_gre4() (Ivan Vecera) [1941938] - mlxsw: spectrum: Bump minimum FW version to xx.2008.2018 (Ivan Vecera) [1941938] - mlxsw: core_acl: Use an array instead of a struct with a zero-length array (Ivan Vecera) [1941938] - mlxsw: spectrum_mr: Use flexible-array member instead of zero-length array (Ivan Vecera) [1941938] - mlxsw: core: Trace EMAD events (Ivan Vecera) [1941938] - selftests: mlxsw: Test RIF's reference count when joining a LAG (Ivan Vecera) [1941938] - mlxsw: spectrum: Apply RIF configuration when joining a LAG (Ivan Vecera) [1941938] - selftests: forwarding: Add QinQ veto testing (Ivan Vecera) [1941938] - mlxsw: Add QinQ configuration vetoes (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Add support of QinQ traffic (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Create common functions for VLAN-aware bridge (Ivan Vecera) [1941938] - mlxsw: Make EtherType configurable when pushing VLAN at ingress (Ivan Vecera) [1941938] - mlxsw: spectrum: Only treat 802.1q packets as tagged packets (Ivan Vecera) [1941938] - mlxsw: reg: Add et_vlan field to SPVID register (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port VLAN Classification Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Update adjacency index more efficiently (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Track nexthop group virtual router membership (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Rollback virtual router adjacency pointer update (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass virtual router parameters directly instead of pointer (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Fix error handling issue (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Resolve RIF from nexthop struct instead of neighbour (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use loopback RIF for unresolved nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use different trap identifier for unresolved nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Create loopback RIF during initialization (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Allow returning errors from mlxsw_sp_nexthop_group_refresh() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Add an indication if a nexthop group can be destroyed (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Re-order mlxsw_sp_nexthop6_group_get() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set FIB entry's type based on nexthop group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set FIB entry's type after creating nexthop group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass ifindex to mlxsw_sp_ipip_entry_find_by_decap() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set ifindex for IPv4 nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Fix wrong kfree() in error path (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove outdated comment (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Consolidate mlxsw_sp_nexthop{4, 6}_type_fini() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Consolidate mlxsw_sp_nexthop{4, 6}_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove unused argument from mlxsw_sp_nexthop6_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass nexthop netdev to mlxsw_sp_nexthop4_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass nexthop netdev to mlxsw_sp_nexthop6_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_ipip: Remove overlay protocol from can_offload() callback (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Split nexthop group configuration to a different struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Move IPv4 FIB info into a union in nexthop group struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove unused field 'prio' from IPv4 FIB entry struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Store FIB info in route (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Associate neighbour table with nexthop instead of group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use nexthop group type in hash table key (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Add nexthop group type field (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Compare key with correct object type (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce FIB entry update op (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Track FIB entry committed state and skip uncommitted on delete (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce fib_entry priv for low-level ops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Have FIB entry op context allocated for the instance (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Prepare work context for possible bulking (Ivan Vecera) [1941938] - mlxsw: spectrum: Push RALUE packing and writing into low-level router ops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use RALUE pack helper from abort function (Ivan Vecera) [1941938] - mlxsw: reg: Allow to pass NULL pointer to mlxsw_reg_ralue_pack4/6() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass destination IP as a pointer to mlxsw_reg_ralue_pack4() (Ivan Vecera) [1941938] - mlxsw: spectrum: Export RALUE pack helper and use it from IPIP (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Push out RALUE pack into separate helper (Ivan Vecera) [1941938] - mlxsw: spectrum: Propagate context from work handler containing RALUE payload (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce FIB event queue instead of separate works (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use RALUE-independent op arg (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass non-register proto enum to __mlxsw_sp_router_set_abort_trap() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce low-level ops and implement them for RALXX regs (Ivan Vecera) [1941938] - mlxsw: reg: Add XRALXX Registers (Ivan Vecera) [1941938] - hwmon: (mlxreg-fan) Add support for fan drawers capability and present registers (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Add callback to notify mux creation completion (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Extend supported mux number (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Extend driver to support word address space devices (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Get rid of adapter numbers enforcement (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Prepare mux selection infrastructure for two-byte support (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Convert driver to platform driver (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Move header file out of x86 realm (Ivan Vecera) [1941938] - platform/x86: mlxcpld: Update module license (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Update module license (Ivan Vecera) [1941938] - i2c: mlxcpld: Add support for I2C bus frequency setting (Ivan Vecera) [1941938] - i2c: mlxcpld: Decrease polling time for performance improvement (Ivan Vecera) [1941938] - i2c: mlxcpld: Update module license (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix item counter assignment for MSN2700/ComEx system (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx systems (Ivan Vecera) [1941938] - platform/x86: mlx-platform: remove an unused variable (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM from default platform configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Add capability field to platform FAN description (Ivan Vecera) [1941938] - platform_data/mlxreg: Extend core platform structure (Ivan Vecera) [1941938] - platform_data/mlxreg: Update module license (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix extended topology configuration for power supply units (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Extend FAN platform data description (Ivan Vecera) [1941938] - platform_data/mlxreg: Add presence register field for FAN devices (Ivan Vecera) [1941938] - Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-io: Add support for complex attributes (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Add more definitions for system attributes (Ivan Vecera) [1941938] - platform_data/mlxreg: Add support for complex attributes (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Add environmental data to uevent (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Use capability register for attribute creation (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Modify module license (Ivan Vecera) [1941938] - lib/string_helpers: Introduce string_upper() and string_lower() helpers (Ivan Vecera) [1941938] - i2c: mlxcpld: check correct size of maximum RECV_LEN packet (Ivan Vecera) [1941938] - docs: watchdog: mlx-wdt: Add description of new watchdog type 3 (Ivan Vecera) [1941938] - watchdog: mlx-wdt: support new watchdog type with longer timeout period (Ivan Vecera) [1941938] - platform/x86: mlx-platform: support new watchdog type with longer timeout (Ivan Vecera) [1941938] - platform_data/mlxreg: support new watchdog type with longer timeout period (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: convert to use i2c_new_client_device() (Ivan Vecera) [1941938] - selftests: icmp_redirect: IPv6 PMTU info should be cleared after redirect (Hangbin Liu) [1986227] - selftests: icmp_redirect: remove from checking for IPv6 route get (Hangbin Liu) [1986227] - selftests: icmp_redirect: support expected failures (Hangbin Liu) [1986227] - selftests: disable rp_filter for icmp_redirect.sh (Hangbin Liu) [1986227] - selftests: icmp_redirect: Add support for routing via nexthop objects (Hangbin Liu) [1986227] - selftest: Fixes for icmp_redirect test (Hangbin Liu) [1986227] - selftests: Add redirect tests (Hangbin Liu) [1986227] - redhat: enable vdpa_sim_net vdpa_sim_block vp_vdpa (Cindy Lu) [1975173] - virtio/vdpa: clear the virtqueue state during probe (Cindy Lu) [1975173] - vp_vdpa: allow set vq state to initial state after reset (Cindy Lu) [1975173] - virtio-pci library: introduce vp_modern_get_driver_features() (Cindy Lu) [1975173] - vdpa: support packed virtqueue for set/get_vq_state() (Cindy Lu) [1975173] - vdpa/mlx5: Clear vq ready indication upon device reset (Cindy Lu) [1975173] - vdpa/mlx5: Add support for doorbell bypassing (Cindy Lu) [1975173] - vdpa/mlx5: Add support for running with virtio_vdpa (Cindy Lu) [1975173] - vdp/mlx5: Fix setting the correct dma_device (Cindy Lu) [1975173] - vdpa/mlx5: Support creating resources with uid == 0 (Cindy Lu) [1975173] - vdpa/mlx5: Fix possible failure in umem size calculation (Cindy Lu) [1975173] - vdpa/mlx5: Fix umem sizes assignments on VQ create (Cindy Lu) [1975173] - vp_vdpa: correct the return value when fail to map notification (Cindy Lu) [1975173] - virtio_net: Fix error handling in virtnet_restore() (Cindy Lu) [1975173] - virtio-blk: Fix memory leak among suspend/resume procedure (Cindy Lu) [1975173] - vDPA/ifcvf: reuse pre-defined macros for device ids and vendor ids (Cindy Lu) [1975173] - virtio: update virtio id table, add transitional ids (Cindy Lu) [1975173] - vDPA/ifcvf: implement doorbell mapping for ifcvf (Cindy Lu) [1975173] - vDPA/ifcvf: record virtio notify base (Cindy Lu) [1975173] - vdpa_sim_blk: remove duplicate include of linux/blkdev.h (Cindy Lu) [1975173] - {net,vdpa}/mlx5: Configure interface MAC into mpfs L2 table (Cindy Lu) [1975173] - virtio_pci_modern: correct sparse tags for notify (Cindy Lu) [1975173] - virtio_pci_modern: __force cast the notify mapping (Cindy Lu) [1975173] - vDPA/ifcvf: get_config_size should return dev specific config size (Cindy Lu) [1975173] - vDPA/ifcvf: enable Intel C5000X-PL virtio-block for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: deduce VIRTIO device ID when probe (Cindy Lu) [1975173] - vdpa_sim_blk: add support for vdpa management tool (Cindy Lu) [1975173] - vdpa_sim_blk: handle VIRTIO_BLK_T_GET_ID (Cindy Lu) [1975173] - vdpa_sim_blk: implement ramdisk behaviour (Cindy Lu) [1975173] - vdpa: add vdpa simulator for block device (Cindy Lu) [1975173] - vhost/vdpa: Remove the restriction that only supports virtio-net devices (Cindy Lu) [1975173] - vhost/vdpa: use get_config_size callback in vhost_vdpa_config_validate() (Cindy Lu) [1975173] - vdpa: add get_config_size callback in vdpa_config_ops (Cindy Lu) [1975173] - vdpa_sim: cleanup kiovs in vdpasim_free() (Cindy Lu) [1975173] - vringh: add vringh_kiov_length() helper (Cindy Lu) [1975173] - vringh: implement vringh_kiov_advance() (Cindy Lu) [1975173] - vringh: explain more about cleaning riov and wiov (Cindy Lu) [1975173] - vringh: reset kiov 'consumed' field in __vringh_iov() (Cindy Lu) [1975173] - vringh: add 'iotlb_lock' to synchronize iotlb accesses (Cindy Lu) [1975173] - vdpa_sim: use iova module to allocate IOVA addresses (Cindy Lu) [1975173] - vDPA/ifcvf: deduce VIRTIO device ID from pdev ids (Cindy Lu) [1975173] - vDPA/ifcvf: verify mandatory feature bits for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: fetch device feature bits when probe (Cindy Lu) [1975173] - vDPA/ifcvf: remove the version number string (Cindy Lu) [1975173] - vDPA/ifcvf: rename original IFCVF dev ids to N3000 ids (Cindy Lu) [1975173] - vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: get_vendor_id returns a device specific vendor id (Cindy Lu) [1975173] - vhost-vdpa: fix vm_flags for virtqueue doorbell mapping (Cindy Lu) [1975173] - vp_vdpa: report doorbell address (Cindy Lu) [1975173] - virtio-pci library: report resource address (Cindy Lu) [1975173] - virito_pci libray: hide vp_modern_map_capability() (Cindy Lu) [1975173] - virtio_pci_modern: hide vp_modern_get_queue_notify_off() (Cindy Lu) [1975173] - vp_vdpa: switch to use vp_modern_map_vq_notify() (Cindy Lu) [1975173] - virtio-pci library: switch to use vp_modern_map_vq_notify() (Cindy Lu) [1975173] - virtio_pci_modern: introduce helper to map vq notify area (Cindy Lu) [1975173] - virtio-net: don't allocate control_buf if not supported (Cindy Lu) [1975173] - vdpa: Follow kdoc comment style (Cindy Lu) [1975173] - vdpa: Follow kdoc comment style (Cindy Lu) [1975173] - vdpa/mlx5: Enable user to add/delete vdpa device (Cindy Lu) [1975173] - vdpa: introduce virtio pci driver (Cindy Lu) [1975173] - vdpa/mlx5: Set err = -ENOMEM in case dma_map_sg_attrs fails (Cindy Lu) [1975173] - vhost-vdpa: protect concurrent access to vhost device iotlb (Cindy Lu) [1975173] - vdpa/mlx5: Fix suspend/resume index restoration (Cindy Lu) [1975173] - vdpa/mlx5: Fix wrong use of bit numbers (Cindy Lu) [1975173] - vdpa/mlx5: should exclude header length and fcs from mtu (Cindy Lu) [1975173] - vhost-vdpa: set v->config_ctx to NULL if eventfd_ctx_fdget() fails (Cindy Lu) [1975173] - vhost-vdpa: fix use-after-free of v->config_ctx (Cindy Lu) [1975173] - vhost_vdpa: fix the missing irq_bypass_unregister_producer() invocation (Cindy Lu) [1975173] - vdpa_sim: Skip typecasting from void* (Cindy Lu) [1975173] - vdpa: set the virtqueue num during register (Cindy Lu) [1975173] - vdpa/mlx5: fix param validation in mlx5_vdpa_get_config() (Cindy Lu) [1975173] - virtio_vdpa: don't warn when fail to disable vq (Cindy Lu) [1975173] - virtio-pci: introduce modern device module (Cindy Lu) [1975173] - virito-pci-modern: rename map_capability() to vp_modern_map_capability() (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to get notification offset (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper for getting queue nums (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper for setting/geting queue size (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to set/get queue_enable (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_queue_address() (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_set_queue_vector() (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_generation() (Cindy Lu) [1975173] - virtio-pci-modern: introduce helpers for setting and getting features (Cindy Lu) [1975173] - virtio-pci-modern: introduce helpers for setting and getting status (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to set config vector (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_remove() (Cindy Lu) [1975173] - virtio-pci-modern: factor out modern device initialization logic (Cindy Lu) [1975173] - virtio-pci: split out modern device (Cindy Lu) [1975173] - virtio-pci: do not access iomem via struct virtio_pci_device directly (Cindy Lu) [1975173] - vdpa_sim_net: Add support for user supported devices (Cindy Lu) [1975173] - vdpa: Enable user to query vdpa device info (Cindy Lu) [1975173] - vdpa: Enable a user to add and delete a vdpa device (Cindy Lu) [1975173] - vdpa: Define vdpa mgmt device, ops and a netlink interface (Cindy Lu) [1975173] - vdpa: Extend routine to accept vdpa device name (Cindy Lu) [1975173] - vdpa_sim_net: Make mac address array static (Cindy Lu) [1975173] - vdpa/mlx5: Restore the hardware used index after change map (Cindy Lu) [1975173] - vdpa/mlx5: Fix memory key MTT population (Cindy Lu) [1975173] - vdpa: Use simpler version of ida allocation (Cindy Lu) [1975173] - vdpa: Add missing comment for virtqueue count (Cindy Lu) [1975173] - vdpa: split vdpasim to core and net modules (Cindy Lu) [1975173] - vdpa_sim: split vdpasim_virtqueue's iov field in out_iov and in_iov (Cindy Lu) [1975173] - vdpa_sim: make vdpasim->buffer size configurable (Cindy Lu) [1975173] - vdpa_sim: use kvmalloc to allocate vdpasim->buffer (Cindy Lu) [1975173] - vdpa_sim: set vringh notify callback (Cindy Lu) [1975173] - vdpa_sim: add set_config callback in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add get_config callback in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: make 'config' generic and usable for any device type (Cindy Lu) [1975173] - vdpa_sim: store parsed MAC address in a buffer (Cindy Lu) [1975173] - vdpa_sim: add work_fn in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add supported_features field in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add device id field in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add struct vdpasim_dev_attr for device attributes (Cindy Lu) [1975173] - vdpa_sim: rename vdpasim_config_ops variables (Cindy Lu) [1975173] - vdpa_sim: make IOTLB entries limit configurable (Cindy Lu) [1975173] - vdpa_sim: remove hard-coded virtq count (Cindy Lu) [1975173] - vdpa_sim: remove unnecessary headers inclusion (Cindy Lu) [1975173] - vdpa: remove unnecessary 'default n' in Kconfig entries (Cindy Lu) [1975173] - vdpa: ifcvf: Use dma_set_mask_and_coherent to simplify code (Cindy Lu) [1975173] - vhost_vdpa: switch to vmemdup_user() (Cindy Lu) [1975173] - vhost: vringh: use krealloc_array() (Cindy Lu) [1975173] - vringh: fix vringh_iov_push_*() documentation (Cindy Lu) [1975173] - vringh: fix __vringh_iov() when riov and wiov are different (Cindy Lu) [1975173] - net: sched: fix memory leak in tcindex_partial_destroy_work (Davide Caratti) [1987042] - net/sched: act_ct: remove and free nf_table callbacks (Davide Caratti) [1987042] - net: sched: fix warning in tcindex_alloc_perfect_hash (Davide Caratti) [1987042] - pkt_sched: sch_qfq: fix qfq_change_class() error path (Davide Caratti) [1987042] - sch_htb: fix refcount leak in htb_parent_to_leaf_offload (Davide Caratti) [1987042] - sch_dsmark: fix a NULL deref in qdisc_reset() (Davide Caratti) [1987042] - sch_red: fix off-by-one checks in red_check_params() (Davide Caratti) [1987042] - ipv6: fix 'disable_policy' for fwd packets (Hangbin Liu) [1985837] - net: ipv6: fix return value of ip6_skb_dst_mtu (Hangbin Liu) [1985837] - ipv6: fix out-of-bound access in ip6_parse_tlv() (Hangbin Liu) [1985837] - ipv6: exthdrs: do not blindly use init_net (Hangbin Liu) [1985837] - ipv6: record frag_max_size in atomic fragments in input path (Hangbin Liu) [1985837] - selftests: net: devlink_port_split.py: skip the test if no devlink device (Hangbin Liu) [1985836] - selftests/net: bump timeout to 5 minutes (Hangbin Liu) [1985836] - selftests: net: forwarding: Fix a typo (Hangbin Liu) [1985836] - selftests/net: so_txtime: remove unneeded semicolon (Hangbin Liu) [1985836] - tools: selftests: add test for changing routes with PTMU exceptions (Hangbin Liu) [1985836] - selftests: fix the return value for UDP GRO test (Hangbin Liu) [1985836] - selftests: pmtu.sh: improve the test result processing (Hangbin Liu) [1985836] - selftests: pmtu.sh: use $ksft_skip for skipped return code (Hangbin Liu) [1985836] - selftests/net: timestamping: add ptp v2 support (Hangbin Liu) [1985836] - ixgbevf: add correct exception tracing for XDP (Ken Cox) [1920268] - intel: call csum functions with well formatted arguments (Ken Cox) [1920268] - net: intel: Remove unused function pointer typedef ixgbe_mc_addr_itr (Ken Cox) [1920268] - ixgbevf: Fix fall-through warnings for Clang (Ken Cox) [1920268] - intel: clean up mismatched header comments (Ken Cox) [1920268] - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (Ken Cox) [1920268] - net: ixgbevf: use skb_csum_is_sctp instead of protocol check (Ken Cox) [1920268] - treewide: Use sizeof_field() macro (Ken Cox) [1920268] - selftests: net: add ESP-in-UDP PMTU test (Xin Long) [1986599] - udp: check encap socket in __udp_lib_err (Xin Long) [1986599] - udp: fix possible user after free in error handler (Xin Long) [1986599] - udpv6: fix possible user after free in error handler (Xin Long) [1986599] - udp: Support for error handlers of tunnels with arbitrary destination port (Xin Long) [1986599] - bpf, sockmap, udp: sk_prot needs inuse_idx set for proc stats (Xin Long) [1986599] - udp: properly flush normal packet at GRO time (Xin Long) [1986599] - udp: annotate data races around unix_sk(sk)->gso_size (Xin Long) [1986599] - udp: fix race between close() and udp_abort() (Xin Long) [1986599] - netfilter: conntrack: remove offload_pickup sysctl again (Florian Westphal) [1987101] - bpf, samples: Add -fno-asynchronous-unwind-tables to BPF Clang invocation (Yauheni Kaliuta) [1977162] - net/af_unix: fix a data-race in unix_dgram_sendmsg / unix_release_sock (Balazs Nemeth) [1986845] - netfilter: nf_tables: fix flowtable list del corruption (Jay Shin) [1977137] - net: qrtr: fix memory leaks (Íñigo Huguet) [1981236] - net: qrtr: fix OOB Read in qrtr_endpoint_post (Íñigo Huguet) [1981236] - net: qrtr: ns: Fix error return code in qrtr_ns_init() (Íñigo Huguet) [1981236] - net: qrtr: Avoid potential use after free in MHI send (Íñigo Huguet) [1981236] - qrtr: Convert qrtr_ports from IDR to XArray (Íñigo Huguet) [1981236] - net: qrtr: Fix memory leak on qrtr_tx_wait failure (Íñigo Huguet) [1981236] - net: qrtr: fix a kernel-infoleak in qrtr_recvmsg() (Íñigo Huguet) [1981236] - net: qrtr: fix error return code of qrtr_sendmsg() (Íñigo Huguet) [1981236] - net/qrtr: fix __netdev_alloc_skb call (Íñigo Huguet) [1981236] - net: qrtr: Fix memory leak in qrtr_tun_open (Íñigo Huguet) [1981236] - net/qrtr: restrict user-controlled length in qrtr_tun_write_iter() (Íñigo Huguet) [1981236] - net: qrtr: fix null-ptr-deref in qrtr_ns_remove (Íñigo Huguet) [1981236] - net: qrtr: Unprepare MHI channels during remove (Íñigo Huguet) [1981236] - net: qrtr: Start MHI channels during init (Íñigo Huguet) [1981236] - net: qrtr: Release distant nodes along the bridge node (Íñigo Huguet) [1981236] - net: qrtr: Add GFP flags parameter to qrtr_alloc_ctrl_packet (Íñigo Huguet) [1981236] - net: qrtr: Allow non-immediate node routing (Íñigo Huguet) [1981236] - net: qrtr: Allow forwarded services (Íñigo Huguet) [1981236] - net: qrtr: Fix port ID for control messages (Íñigo Huguet) [1981236] - net: qrtr: ns: Fix the incorrect usage of rcu_read_lock() (Íñigo Huguet) [1981236] - net: qrtr: ns: Protect radix_tree_deref_slot() using rcu read locks (Íñigo Huguet) [1981236] - net: qrtr: check skb_put_padto() return value (Íñigo Huguet) [1981236] - net: qrtr: fix usage of idr in port assignment to socket (Íñigo Huguet) [1981236] - qrtr: orphan socket in qrtr_release() (Íñigo Huguet) [1981236] - net: qrtr: Fix an out of bounds read qrtr_endpoint_post() (Íñigo Huguet) [1981236] - net: qrtr: free flow in __qrtr_node_release (Íñigo Huguet) [1981236] - treewide: replace '---help---' in Kconfig files with 'help' (Íñigo Huguet) [1981236] - net: qrtr: Allocate workqueue before kernel_bind (Íñigo Huguet) [1981236] - net: qrtr: Fix passing invalid reference to qrtr_local_enqueue() (Íñigo Huguet) [1981236] - net: qrtr: Add MHI transport layer (Íñigo Huguet) [1981236] - net: qrtr: Add tracepoint support (Íñigo Huguet) [1981236] - net: qrtr: send msgs from local of same id as broadcast (Íñigo Huguet) [1981236] - net: qrtr: Fix FIXME related to qrtr_ns_init() (Íñigo Huguet) [1981236] - net: qrtr: Respond to HELLO message (Íñigo Huguet) [1981236] - net: qrtr: Fix error pointer vs NULL bugs (Íñigo Huguet) [1981236] - net: qrtr: fix spelling mistake "serivce" -> "service" (Íñigo Huguet) [1981236] - net: qrtr: Fix the local node ID as 1 (Íñigo Huguet) [1981236] - net: qrtr: Migrate nameservice to kernel from userspace (Íñigo Huguet) [1981236] - net: qrtr: Remove receive worker (Íñigo Huguet) [1981236] - net: qrtr: Make qrtr_port_lookup() use RCU (Íñigo Huguet) [1981236] - net: qrtr: Migrate node lookup tree to spinlock (Íñigo Huguet) [1981236] - net: qrtr: Implement outgoing flow control (Íñigo Huguet) [1981236] - net: qrtr: Move resume-tx transmission to recvmsg (Íñigo Huguet) [1981236] - net: qrtr: fix len of skb_put_padto in qrtr_node_enqueue (Íñigo Huguet) [1981236] - net: qrtr: Simplify 'qrtr_tun_release()' (Íñigo Huguet) [1981236] - net: qrtr: Stop rx_worker before freeing node (Íñigo Huguet) [1981236] - net: qrtr: fix memort leak in qrtr_tun_write_iter (Íñigo Huguet) [1981236] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Íñigo Huguet) [1981236] - treewide: Add SPDX license identifier - Makefile/Kconfig (Íñigo Huguet) [1981236] - net: qrtr: Fix message type of outgoing packets (Íñigo Huguet) [1981236] - net: qrtr: use protocol endiannes variable (Íñigo Huguet) [1981236] - net: fix hangup on napi_disable for threaded napi (Paolo Abeni) [1949546] - net: fix race between napi kthread mode and busy poll (Paolo Abeni) [1949546] - net: add sysfs attribute to control napi threaded mode (Paolo Abeni) [1949546] - net: implement threaded-able napi poll loop support (Paolo Abeni) [1949546] - net: extract napi poll functionality to __napi_poll() (Paolo Abeni) [1949546] - mfd: intel-lpss: Use devm_ioremap_uc for MMIO (Steve Best) [1986715] - lib: devres: add a helper function for ioremap_uc (Steve Best) [1986715] - sched/rt: Fix double enqueue caused by rt_effective_prio (Juri Lelli) [1990566] - x86/crash: Remove crash_reserve_low_1M() (Lianbo Jiang) [1904318] - x86/setup: Remove CONFIG_X86_RESERVE_LOW and reservelow= options (Lianbo Jiang) [1904318] - x86/setup: Always reserve the first 1M of RAM (Lianbo Jiang) [1904318] - powerpc/kexec: blacklist functions called in real mode for kprobe (Desnes A. Nunes do Rosario) [1987281] - [s390] scsi: zfcp: Report port fc_security as unknown early during remote cable pull (Claudio Imbrenda) [1989910] - x86/boot: Use common BUILD_BUG_ON (Prarit Bhargava) [1979940] - net: phy: icplus: call phy_restore_page() when phy_select_page() fails (Petr Oros) [1955165] - net: phy: ti: take into account all possible interrupt sources (Petr Oros) [1955165] - net: phy: smsc: add missed clk_disable_unprepare in smsc_phy_probe() (Petr Oros) [1955165] - net: phy: Expose phydev::dev_flags through sysfs (Petr Oros) [1955165] - net: phy: fix save wrong speed and duplex problem if autoneg is on (Petr Oros) [1955165] - net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081 (Petr Oros) [1955165] - net: phy: icplus: add MDI/MDIX support for IP101A/G (Petr Oros) [1955165] - net: phy: icplus: add PHY counter for IP101G (Petr Oros) [1955165] - net: phy: icplus: fix paged register access (Petr Oros) [1955165] - net: phy: icplus: don't set APS_EN bit on IP101G (Petr Oros) [1955165] - net: phy: icplus: split IP101A/G driver (Petr Oros) [1955165] - net: phy: icplus: use the .soft_reset() of the phy-core (Petr Oros) [1955165] - net: phy: icplus: drop address operator for functions (Petr Oros) [1955165] - net: phy: icplus: use PHY_ID_MATCH_EXACT() for IP101A/G (Petr Oros) [1955165] - net: phy: icplus: use PHY_ID_MATCH_MODEL() macro (Petr Oros) [1955165] - net: phy: drop explicit genphy_read_status() op (Petr Oros) [1955165] - net: phy: broadcom: remove BCM5482 1000Base-BX support (Petr Oros) [1955165] - net: mdiobus: Prevent spike on MDIO bus reset signal (Petr Oros) [1955165] - net: phy: realtek: Add support for RTL9000AA/AN (Petr Oros) [1955165] - mdio, phy: fix -Wshadow warnings triggered by nested container_of() (Petr Oros) [1955165] - net: phy: national: remove definition of DEBUG (Petr Oros) [1955165] - net: phy: ar803x: disable extended next page bit (Petr Oros) [1955165] - net: phy: smsc: fix clk error handling (Petr Oros) [1955165] - net: phy: at803x: use phy_modify_mmd() (Petr Oros) [1955165] - net: phy: replace mutex_is_locked with lockdep_assert_held in phylib (Petr Oros) [1955165] - net: phy: micrel: Add KS8851 PHY support (Petr Oros) [1955165] - net: phy: marvell: replace phy_modify() (Petr Oros) [1955165] - net: phy: micrel: fix interrupt handling (Petr Oros) [1955165] - net: phy: remove the .did_interrupt() and .ack_interrupt() callback (Petr Oros) [1955165] - net: phy: qsemi: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: qsemi: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: ti: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: ti: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: national: remove the use of the .ack_interrupt() (Petr Oros) [1955165] - net: phy: national: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: micrel: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: micrel: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: icplus: remove the use .ack_interrupt() (Petr Oros) [1955165] - net: phy: icplus: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: intel-xway: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: intel-xway: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - mdio_bus: suppress err message for reset gpio EPROBE_DEFER (Petr Oros) [1955165] - net: phy: don't duplicate driver name in phy_attached_print (Petr Oros) [1955165] - net: phy: ste10Xp: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: ste10Xp: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: smsc: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: smsc: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: amd: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: amd: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: lxt: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: lxt: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: marvell: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: marvell: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: microchip: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: microchip: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: vitesse: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: vitesse: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: aquantia: do not return an error on clearing pending IRQs (Petr Oros) [1955165] - net: phy: microchip_t1: Don't set .config_aneg (Petr Oros) [1955165] - docs: networking: phy: s/2.5 times faster/2.5 times as fast/ (Petr Oros) [1955165] - net: phy: realtek: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: realtek: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: add genphy_handle_interrupt_no_ack() (Petr Oros) [1955165] - net: phy: davicom: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: davicom: implement generic .handle_interrupt() calback (Petr Oros) [1955165] - net: phy: cicada: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: cicada: implement the generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: broadcom: remove use of ack_interrupt() (Petr Oros) [1955165] - net: phy: broadcom: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: aquantia: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: aquantia: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: mscc: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: mscc: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: at803x: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: at803x: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: make .ack_interrupt() optional (Petr Oros) [1955165] - net: phy: add a shutdown procedure (Petr Oros) [1955165] - net: phy: export phy_error and phy_trigger_machine (Petr Oros) [1955165] - drivers: net: phy: Fix spelling in comment defalut to default (Petr Oros) [1955165] - net: phy: marvell: add special handling of Finisar modules with 88E1111 (Petr Oros) [1955165] - net: phylink: disable BMCR_ISOLATE in phylink_mii_c22_pcs_config (Petr Oros) [1955165] - gpiolib: Extract gpiod_not_found() helper (Petr Oros) [1955165] - net: phy: marvell: Use phy_read_paged() instead of open coding it (Petr Oros) [1955165] - net: phy: dp83869: fix unsigned comparisons against less than zero values (Petr Oros) [1955165] - net: phy: dp83869: Add speed optimization feature (Petr Oros) [1955165] - net: phy: dp83869: support Wake on LAN (Petr Oros) [1955165] - net: phy: dp83822: Update the fiber advertisement for speed (Petr Oros) [1955165] - net: dp83869: Add ability to advertise Fiber connection (Petr Oros) [1955165] - net: phy: Do not warn in phy_stop() on PHY_DOWN (Petr Oros) [1955165] - net: phy: Avoid NPD upon phy_detach() when driver is unbound (Petr Oros) [1955165] - net: phy: bcm7xxx: request and manage GPHY clock (Petr Oros) [1955165] - net: phy: smsc: LAN8710/20: add phy refclk in support (Petr Oros) [1955165] - net: phy: smsc: simplify config_init callback (Petr Oros) [1955165] - net: phy: smsc: skip ENERGYON interrupt if disabled (Petr Oros) [1955165] - net: phy: dp83867: Fix various styling and space issues (Petr Oros) [1955165] - net: mdiobus: add clause 45 mdiobus write accessor (Petr Oros) [1955165] - net: phylink: consider QSGMII interface mode in phylink_mii_c22_pcs_get_state (Petr Oros) [1955165] - net: phylink: add helper function to decode USXGMII word (Petr Oros) [1955165] - net: phy: DP83822: Add ability to advertise Fiber connection (Petr Oros) [1955165] - net: dp83869: Fix RGMII internal delay configuration (Petr Oros) [1955165] - net: mdio-mux-gpio: use devm_gpiod_get_array() (Petr Oros) [1955165] - net: phy: add USXGMII link partner ability constants (Petr Oros) [1955165] - net: phy: mdio-octeon: Cleanup module loading dependencies (Petr Oros) [1955165] - net: phy: cavium: Improve __iomem mess (Petr Oros) [1955165] - net: phy: Add a helper to return the index for of the internal delay (Petr Oros) [1955165] - dt-bindings: net: Add RGMII internal delay for DP83869 (Petr Oros) [1955165] - net: dp83869: Add RGMII internal delay configuration (Petr Oros) [1955165] - net: phy: DP83822: Add setting the fixed internal delay (Petr Oros) [1955165] - net: dp83869: Fix OF_MDIO config check (Petr Oros) [1955165] - net: dp83867: Fix OF_MDIO config check (Petr Oros) [1955165] - net: marvell: Fix OF_MDIO config check (Petr Oros) [1955165] - net: phy: mscc: use mdiobus_get_phy() (Petr Oros) [1955165] - net: phy: improve phy_driver callback handle_interrupt (Petr Oros) [1955165]- net/mlx5e: Add IPsec support to uplink representor (Alaa Hleihel) [1980171 1926098] - net/mlx5e: TC: Reserved bit 31 of REG_C1 for IPsec offload (Alaa Hleihel) [1980171 1926098] - net/mlx5e: TC: Use bit counts for register mapping (Alaa Hleihel) [1980171 1926098] - RDMA/mlx5: Don't access NULL-cleared mpi pointer (Alaa Hleihel) [1980171] - RDMA/mlx5: Split mlx5_ib_update_xlt() into ODP and non-ODP cases (Alaa Hleihel) [1980171] - ip6_tunnel: allow redirecting ip6gre and ipxip6 packets to eth devices (Guillaume Nault) [1921539] - gre: let mac_header point to outer header only when necessary (Guillaume Nault) [1921539] - sit: allow redirecting ip6ip, ipip and mplsip packets to eth devices (Guillaume Nault) [1921539] - ipip: allow redirecting ipip and mplsip packets to eth devices (Guillaume Nault) [1921539] - bareudp: allow redirecting bareudp packets to eth devices (Guillaume Nault) [1921539] - net: handle ARPHRD_IP6GRE in dev_is_mac_header_xmit() (Guillaume Nault) [1921539] - net: ipv4: fix memory leak in ip_mc_add1_src (Guillaume Nault) [1987605] - net: ipv4: fix memory leak in netlbl_cipsov4_add_std (Guillaume Nault) [1987605] - ixgbe: fix probing of multi-port devices with one MDIO (Ken Cox) [1968696] - [s390] s390/qdio: let driver manage the QAOB (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove RX VLAN filter stubs in L3 driver (Claudio Imbrenda) [1919250] - [s390] s390/qeth: enable napi_consume_skb() for pending TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: allocate initial TX Buffer structs with GFP_KERNEL (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix notification for pending buffers during teardown (Claudio Imbrenda) [1919250] - [s390] s390/qeth: schedule TX NAPI on QAOB completion (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve completion of pending TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix memory leak after failed TX Buffer allocation (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't fake a TX completion interrupt after TX error (Claudio Imbrenda) [1919250] - [s390] s390/qeth: make cast type selection for af_iucv skbs robust (Claudio Imbrenda) [1919250] - [s390] s390/qeth: pass proto to qeth_l3_get_cast_type() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove qeth_get_ip_version() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up load/remove code for disciplines (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix L2 header access in qeth_l3_osa_features_check() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix locking for discipline setup / removal (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix deadlock during recovery (Claudio Imbrenda) [1919250] - [s390] s390/qeth: make qeth_qdio_handle_aob() more robust (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove QETH_QDIO_BUF_HANDLED_DELAYED state (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't replace a fully completed async TX buffer (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use dev->groups for common sysfs attributes (Claudio Imbrenda) [1919250] - [s390] s390/ccwgroup: use bus->dev_groups for bus-based sysfs attributes (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't call INIT_LIST_HEAD() on iob's list entry (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix tear down of async TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix af_iucv notification race (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve selection of ethtool link modes (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use QUERY OAT for initial link info (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up default cases for ethtool link mode (Claudio Imbrenda) [1919250] - [s390] s390/qeth: set static link info during initialization (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve QUERY CARD INFO processing (Claudio Imbrenda) [1919250] - [s390] s390/qeth: tolerate error when querying card info (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove useless if/else (Claudio Imbrenda) [1919250] - [s390] s390/qeth: reduce rtnl locking for switchdev events (Claudio Imbrenda) [1919250] - [s390] s390/qeth: static checker cleanups (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use netdev_name() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: constify the disciplines (Claudio Imbrenda) [1919250] - [s390] s390/qeth: allow configuration of TX queues for OSA devices (Claudio Imbrenda) [1919250] - [s390] s390/qeth: de-magic the QIB parm area (Claudio Imbrenda) [1919250] - [s390] s390/qeth: keep track of wanted TX queues (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove forward declarations in L2 code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: consolidate teardown code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: consolidate online code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: cancel cmds earlier during teardown (Claudio Imbrenda) [1919250] - [s390] s390/qeth: tighten ucast IP locking (Claudio Imbrenda) [1919250] - [s390] s390/qeth: replace deprecated simple_stroul() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up string ops in qeth_l3_parse_ipatoe() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: relax locking for ipato config data (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't init refcount twice for mcast IPs (Claudio Imbrenda) [1919250] - mm, page_alloc: check for max order in hot path (Jay Shin) [1982466] - be2net: Fix an error handling path in 'be_probe()' (Petr Oros) [1980665] - net: emulex: benet: simplify the return expression of be_if_create() (Petr Oros) [1980665] - treewide: Use fallthrough pseudo-keyword (Petr Oros) [1980665] - be2net: convert to new udp_tunnel_nic infra (Petr Oros) [1980665] - benet: use generic power management (Petr Oros) [1980665] - treewide: replace '---help---' in Kconfig files with 'help' (Petr Oros) [1980665] - hwmon: (k10temp) Zen3 Ryzen Desktop CPUs support (David Arcari) [1980072] - hwmon: (k10temp) Remove support for displaying voltage and current on Zen CPUs (David Arcari) [1980072] - hwmon: (k10temp) Add support for Zen3 CPUs (David Arcari) [1980072] - hwmon: (k10temp) Take out debugfs code (David Arcari) [1980072] - hwmon: (k10temp) Define SVI telemetry and current factors for Zen2 CPUs (David Arcari) [1980072] - hwmon: (k10temp) Create common functions and macros for Zen CPU families (David Arcari) [1980072] - hwmon: (k10temp) Add AMD family 17h model 60h PCI match (David Arcari) [1980072] - hwmon: (k10temp) make some symbols static (David Arcari) [1980072] - hwmon: (k10temp) Reorganize and simplify temperature support detection (David Arcari) [1980072] - hwmon: (k10temp) Swap Tdie and Tctl on Family 17h CPUs (David Arcari) [1980072] - hwmon: (k10temp) Display up to eight sets of CCD temperatures (David Arcari) [1980072] - hwmon: (k10temp) Add debugfs support (David Arcari) [1980072] - hwmon: (k10temp) Don't show temperature limits on Ryzen (Zen) CPUs (David Arcari) [1980072] - hwmon: (k10temp) Show core and SoC current and voltages on Ryzen CPUs (David Arcari) [1980072] - hwmon: (k10temp) Report temperatures per CPU die (David Arcari) [1980072] - hmon: (k10temp) Convert to use devm_hwmon_device_register_with_info (David Arcari) [1980072] - hwmon: (k10temp) Use bitops (David Arcari) [1980072] - hwmon: (k10temp) Add support for AMD family 17h, model 70h CPUs (David Arcari) [1980072] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 56 (David Arcari) [1980072] - hwmon: (k10temp) Add Hygon Dhyana support (David Arcari) [1980072] - hwmon: (k10temp) Auto-convert to use SENSOR_DEVICE_ATTR_{RO, RW, WO} (David Arcari) [1980072] - hwmon: (k10temp) Support all Family 15h Model 6xh and Model 7xh processors (David Arcari) [1980072] - hwmon: k10temp: Support Threadripper 2920X, 2970WX; simplify offset table (David Arcari) [1980072] - hwmon: (k10temp) 27C Offset needed for Threadripper2 (David Arcari) [1980072] - x86/amd_nb: Add AMD family 17h model 60h PCI IDs (David Arcari) [1980072] - x86/amd_nb: Add PCI device IDs for family 17h, model 70h (David Arcari) [1980072] - x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge (David Arcari) [1980072] - Revert "[hwmon] hwmon: (k10temp) Add support for Zen3 CPUs" (David Arcari) [1980072] - serial: 8250: Process sysrq at port unlock time (Prarit Bhargava) [1982016] - serial: core: Include console.h from serial_core.h (Prarit Bhargava) [1982016] - serial: core: Allow processing sysrq at port unlock time (Prarit Bhargava) [1982016] - [s390] s390/dasd: add missing discipline function (Claudio Imbrenda) [1981804] - bnxt_en: Validate vlan protocol ID on RX packets (Jonathan Toppins) [1960961] - KVM: do not allow mapping valid but non-reference-counted pages (Jon Maloy) [1975515] - gfs2: Fix error handling in init_statfs (Andreas Gruenbacher) [1872440] - gfs2: Fix underflow in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Pass glock holder to gfs2_file_direct_{read,write} (Andreas Gruenbacher) [1872440] - gfs2: Prevent direct-I/O write fallback errors from getting lost (Andreas Gruenbacher) [1872440] - gfs2: Improve mmap write vs. truncate consistency (Andreas Gruenbacher) [1872440] - iomap: Permit pages without an iop to enter writeback (Andreas Gruenbacher) [1872440] - iomap: Don't create iomap_page objects for inline files (Andreas Gruenbacher) [1872440] - gfs2: Clean up gfs2_unstuff_dinode (Andreas Gruenbacher) [1872440] - gfs2: Unstuff before locking page in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Clean up the error handling in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Fix end-of-file handling in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Use resource group glock sharing (Andreas Gruenbacher) [1442151] - gfs2: Allow node-wide exclusive glock sharing (Andreas Gruenbacher) [1442151] - gfs2: Add local resource group locking (Andreas Gruenbacher) [1442151] - gfs2: Add per-reservation reserved block accounting (Andreas Gruenbacher) [1442151] - gfs2: Rename rs_{free -> requested} and rd_{reserved -> requested} (Andreas Gruenbacher) [1442151] - gfs2: Check for active reservation in gfs2_release (Andreas Gruenbacher) [1442151] - gfs2: Don't search for unreserved space twice (Andreas Gruenbacher) [1442151] - gfs2: Only pass reservation down to gfs2_rbm_find (Andreas Gruenbacher) [1442151] - gfs2: Also reflect single-block allocations in rgd->rd_extfail_pt (Andreas Gruenbacher) [1442151] - gfs2: Set GBF_FULL flags when reading resource group (Andreas Gruenbacher) [1442151] - gfs2: Don't clear GBF_FULL flags in rs_deltree (Andreas Gruenbacher) [1442151] - Revert "gfs2: Don't reject a supposedly full bitmap if we have blocks reserved" (Andreas Gruenbacher) [1442151] - gfs2: Minor gfs2_inplace_reserve cleanup (Andreas Gruenbacher) [1442151] - gfs2: Get rid of unnecessary variable in gfs2_alloc_blocks (Andreas Gruenbacher) [1442151] - gfs2: Only use struct gfs2_rbm for bitmap manipulations (Andreas Gruenbacher) [1442151] - gfs2: Turn gfs2_rbm_incr into gfs2_rbm_add (Andreas Gruenbacher) [1872440] - gfs2: Replace gfs2_lblk_to_dblk with gfs2_get_extent (Andreas Gruenbacher) [1872440] - gfs2: Turn gfs2_extent_map into gfs2_{get,alloc}_extent (Andreas Gruenbacher) [1872440] - gfs2: Add new gfs2_iomap_get helper (Andreas Gruenbacher) [1872440] - gfs2: Make inode operations static (Andreas Gruenbacher) [1872440] - gfs2: use iomap for buffered I/O in ordered and writeback mode (Andreas Gruenbacher) [1872440] - gfs2: Never call gfs2_block_zero_range with an open transaction (Andreas Gruenbacher) [1872440] - gfs2: Upgrade shared glocks for atime updates (Andreas Gruenbacher) [1872440] - gfs2: Rework read and page fault locking (Andreas Gruenbacher) [1872440] - fs: Add IOCB_NOIO flag for generic_file_read_iter (Andreas Gruenbacher) [1872440] - gfs2: Remove duplicate call from gfs2_create_inode (Andreas Gruenbacher) [1872440] - gfs2: Multi-block allocations in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: implement gfs2_block_zero_range using iomap_zero_range (Andreas Gruenbacher) [1872440] - gfs2: Add support for IOMAP_ZERO (Andreas Gruenbacher) [1872440] - gfs2: gfs2_iomap_begin cleanup (Andreas Gruenbacher) [1872440] - gfs2: Remove unused gfs2_iomap_alloc argument (Andreas Gruenbacher) [1872440] - gfs2: don't use buffer_heads in gfs2_allocate_page_backing (Andreas Gruenbacher) [1872440] - gfs2: use iomap_bmap instead of generic_block_bmap (Andreas Gruenbacher) [1872440] - gfs2: mark stuffed_readpage static (Andreas Gruenbacher) [1872440] - gfs2: merge gfs2_writepage_common into gfs2_writepage (Andreas Gruenbacher) [1872440] - gfs2: merge gfs2_writeback_aops and gfs2_ordered_aops (Andreas Gruenbacher) [1872440] - gfs2: remove the unused gfs2_stuffed_write_end function (Andreas Gruenbacher) [1872440] - gfs2: use page_offset in gfs2_page_mkwrite (Andreas Gruenbacher) [1442151] - gfs2: Add new sysfs file for gfs2 status (Andreas Gruenbacher) [1442151] - gfs2: Per-revoke accounting in transactions (Andreas Gruenbacher) [1442151] - gfs2: Rework the log space allocation logic (Andreas Gruenbacher) [1442151] - gfs2: Minor calc_reserved cleanup (Andreas Gruenbacher) [1442151] - gfs2: Move function gfs2_ail_empty_tr (Andreas Gruenbacher) [1442151] - gfs2: Get rid of current_tail() (Andreas Gruenbacher) [1442151] - gfs2: Use a tighter bound in gfs2_trans_begin (Andreas Gruenbacher) [1442151] - gfs2: Clean up gfs2_log_reserve (Andreas Gruenbacher) [1442151] - gfs2: Don't wait for journal flush in clean_journal (Andreas Gruenbacher) [1442151] - gfs2: Move lock flush locking to gfs2_trans_{begin,end} (Andreas Gruenbacher) [1442151] - gfs2: Get rid of sd_reserving_log (Andreas Gruenbacher) [1442151] - gfs2: Clean up on-stack transactions (Andreas Gruenbacher) [1442151] - gfs2: Use sb_start_intwrite in gfs2_ail_empty_gl (Andreas Gruenbacher) [1442151] - gfs2: Clean up ail2_empty (Andreas Gruenbacher) [1442151] - gfs2: Rename gfs2_{write => flush}_revokes (Andreas Gruenbacher) [1442151] - gfs2: Minor debugging improvement (Andreas Gruenbacher) [1442151] - gfs2: Some documentation updates (Andreas Gruenbacher) [1442151] - gfs2: Minor gfs2_write_revokes cleanups (Andreas Gruenbacher) [1442151] - gfs2: Simplify the buf_limit and databuf_limit definitions (Andreas Gruenbacher) [1442151] - gfs2: Un-obfuscate function jdesc_find_i (Andreas Gruenbacher) [1442151] - gfs2: Fix fall-through warnings for Clang (Andreas Gruenbacher) [1442151] - gfs2: Make gfs2_setattr_simple static (Andreas Gruenbacher) [1442151] - gfs2: Turn gfs2_meta_indirect_buffer into gfs2_meta_buffer (Andreas Gruenbacher) [1442151] - gfs2: Remove unused variable sb_format (Andreas Gruenbacher) [1442151] - gfs2: Fix dir.c function parameter descriptions (Andreas Gruenbacher) [1442151] - gfs2: Eliminate gh parameter from go_xmote_bh func (Andreas Gruenbacher) [1442151] - gfs2: don't create empty buffers for NO_CREATE (Andreas Gruenbacher) [1442151] - gfs2: Flag a withdraw if init_threads() fails (Andreas Gruenbacher) [1442151] - gfs2: bypass log flush if the journal is not live (Andreas Gruenbacher) [1442151] - gfs2: bypass signal_our_withdraw if no journal (Andreas Gruenbacher) [1442151] - gfs2: fix use-after-free in trans_drain (Andreas Gruenbacher) [1442151] - gfs2: make function gfs2_make_fs_ro() to void type (Andreas Gruenbacher) [1442151] - whack-a-mole: don't open-code iminor/imajor (Andreas Gruenbacher) [1442151] - gfs2: amend SLAB_RECLAIM_ACCOUNT on gfs2 related slab cache (Andreas Gruenbacher) [1442151] - gfs2: Remove sb_start_write from gfs2_statfs_sync (Andreas Gruenbacher) [1442151] - gfs2: check for empty rgrp tree in gfs2_ri_update (Andreas Gruenbacher) [1442151] - gfs2: set lockdep subclass for iopen glocks (Andreas Gruenbacher) [1442151] - gfs2: Fix deadlock dumping resource group glocks (Andreas Gruenbacher) [1442151] - gfs2: Wake up when sd_glock_disposal becomes zero (Andreas Gruenbacher) [1442151] - gfs2: Split up gfs2_meta_sync into inode and rgrp versions (Andreas Gruenbacher) [1442151] - gfs2: Don't ignore inode write errors during inode_go_sync (Andreas Gruenbacher) [1442151] - gfs2: Ignore subsequent errors after withdraw in rgrp_go_sync (Andreas Gruenbacher) [1442151] - gfs2: Eliminate gl_vm (Andreas Gruenbacher) [1442151] - gfs2: Fix comments to glock_hash_walk (Andreas Gruenbacher) [1442151] - gfs2: eliminate GLF_QUEUED flag in favor of list_empty(gl_holders) (Andreas Gruenbacher) [1442151] - gfs2: Fix invalid block size message (Andreas Gruenbacher) [1442151] - gfs2: add validation checks for size of superblock (Andreas Gruenbacher) [1442151] - gfs2: use-after-free in sysfs deregistration (Andreas Gruenbacher) [1442151] - Revert "GFS2: Prevent delete work from occurring on glocks used for create" (Andreas Gruenbacher) [1442151] - gfs2: Don't skip dlm unlock if glock has an lvb (Andreas Gruenbacher) [1442151] - gfs2: Lock imbalance on error path in gfs2_recover_one (Andreas Gruenbacher) [1442151] - gfs2: keep bios separate for each journal (Bob Peterson) [1442151] - gfs2: change from write to read lock for sd_log_flush_lock in journal replay (Bob Peterson) [1442151] - gfs2: don't lock sd_log_flush_lock in try_rgrp_unlink (Bob Peterson) [1442151] - gfs2: fix glock confusion in function signal_our_withdraw (Bob Peterson) [1442151] - gfs2: Don't write log headers after file system withdraw (Andreas Gruenbacher) [1442151] - gfs2: make gfs2_log_write_page static (Andreas Gruenbacher) [1442151] - gfs2: fix possible reference leak in gfs2_check_blk_type (Andreas Gruenbacher) [1442151] - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump (Andreas Gruenbacher) [1442151] - gfs2: remove unused LBIT macros (Andreas Gruenbacher) [1925121] - gfs2: add missing log_blocks trace points in gfs2_write_revokes (Andreas Gruenbacher) [1925121] - gfs2: print details on transactions that aren't properly ended (Andreas Gruenbacher) [1925121] - gfs2: fix use-after-free on transaction ail lists (Andreas Gruenbacher) [1925121] - gfs2: new slab for transactions (Andreas Gruenbacher) [1925121] - gfs2: initialize transaction tr_ailX_lists earlier (Andreas Gruenbacher) [1925121] - gfs2: eliminate ssize parameter from gfs2_struct2blk (Andreas Gruenbacher) [1925121] - gfs2: Fix error path kobject memory leak (Andreas Gruenbacher) [1925121] - gfs2: Rename gfs2_trans_{add_unrevoke => remove_revoke} (Andreas Gruenbacher) [1925121] - gfs2: Remove unnecessary extern declarations (Andreas Gruenbacher) [1925121] - gfs2: Fix sign extension bug in gfs2_update_stats (Andreas Gruenbacher) [1925121] - gfs2: Fix an incorrect gfs2_assert() (Bob Peterson) [1925121] - gfs2: Remove vestigial bd_ops (Andreas Gruenbacher) [1925121] - gfs2: Fix the gfs2_invalidatepage description (Andreas Gruenbacher) [1925121] - gfs2: Clean up gfs2_is_{ordered,writeback} (Andreas Gruenbacher) [1925121] - gfs2: Pass resource group to rgblk_free (Andreas Gruenbacher) [1925121] - gfs2: Remove unnecessary gfs2_rlist_alloc parameter (Andreas Gruenbacher) [1925121] - gfs2: Fix some minor typos (Andreas Gruenbacher) [1925121] - gfs2: Remove unused RGRP_RSRV_MINBYTES definition (Andreas Gruenbacher) [1925121] - gfs2: Move rs_{sizehint, rgd_gh} fields into the inode (Andreas Gruenbacher) [1925121] - gfs2: Clean up out-of-bounds check in gfs2_rbm_from_block (Andreas Gruenbacher) [1925121] - gfs2: Always check the result of gfs2_rbm_from_block (Andreas Gruenbacher) [1925121] - gfs: no need to check return value of debugfs_create functions (Andreas Gruenbacher) [1925121] - serial_core: switch to ->[sg]et_serial() (Artem Savkov) [1952415]- tipc: fix sleeping in tipc accept routine (Xin Long) [1986549] - tipc: fix implicit-connect for SYN+ (Xin Long) [1986549] - net: tipc: fix FB_MTU eat two pages (Xin Long) [1986549] - tipc: Return the correct errno code (Xin Long) [1986549] - net/mlx5: Fix checksum issue of VXLAN and IPsec crypto offload (Alaa Hleihel) [1979901] - net/mlx5: Optimize mlx5e_feature_checks for non IPsec packet (Alaa Hleihel) [1979901] - bpf, selftests: Fold test_current_pid_tgid_new_ns into test_progs. (Jiri Olsa) [1869447] - libbpf: Support BTF_KIND_FLOAT during type compatibility checks in CO-RE (Jiri Olsa) [1984486] - bpf: Generate BTF_KIND_FLOAT when linking vmlinux (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to btf_dump_test_case_syntax (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to test_core_reloc_size (Jiri Olsa) [1984486] - bpf: Document BTF_KIND_FLOAT in btf.rst (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to the existing deduplication tests (Jiri Olsa) [1984486] - selftest/bpf: Add BTF_KIND_FLOAT tests (Jiri Olsa) [1984486] - bpf: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - selftests/bpf: Use the 25th bit in the "invalid BTF_INFO" test (Jiri Olsa) [1984486] - tools/bpftool: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - libbpf: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - bpf: Add BTF_KIND_FLOAT to uapi (Jiri Olsa) [1984486] - libbpf: Add explicit padding to btf_dump_emit_type_decl_opts (Jiri Olsa) [1984486] - selftests/bpf: Fix test_attach_probe for powerpc uprobes (Jiri Olsa) [1931531] - selftests/bpf: Mask bpf_csum_diff() return value to 16 bits in test_verifier (Jiri Olsa) [1942513] - openvswitch: add trace points (Aaron Conole) [1979680] - vxlan: add missing rcu_read_lock() in neigh_reduce() (Guillaume Nault) [1987310] - net: ip6_tunnel: Unregister catch-all devices (Guillaume Nault) [1987310] - net: sit: Unregister catch-all devices (Guillaume Nault) [1987310] - cpuidle: pseries: Do not cap the CEDE0 latency in fixup_cede0_latency() (Diego Domingos) [1952809] - cpuidle: pseries: Fixup CEDE0 latency only for POWER10 onwards (Diego Domingos) [1952809] - mm/swap: fix for "mm: workingset: age nonresident information alongside anonymous pages" (Rafael Aquini) [1984173] - mm/thp: remap_page() is only needed on anonymous THP (Rafael Aquini) [1984173] - mm/compaction: fix 'limit' in fast_isolate_freepages (Rafael Aquini) [1984173] - mm/huge_memory.c: don't discard hugepage if other processes are mapping it (Rafael Aquini) [1984173] - slub: restore slub_debug=- behavior (Rafael Aquini) [1984173] - mm/gup: fix try_grab_compound_head() race with split_huge_page() (Rafael Aquini) [1984173] - mm, futex: fix shared futex pgoff on shmem huge page (Rafael Aquini) [1984173] - x86/mm: Avoid truncating memblocks for SGX memory (Rafael Aquini) [1984173] - mm/thp: fix vma_address() if virtual address below file offset (Rafael Aquini) [1984173] - mm, thp: use head page in __migration_entry_wait() (Rafael Aquini) [1984173] - mm/slub.c: include swab.h (Rafael Aquini) [1984173] - mm/memory-failure: make sure wait for page writeback in memory_failure (Rafael Aquini) [1984173] - mm/slub: fix redzoning for small allocations (Rafael Aquini) [1984173] - mm, hugetlb: fix simple resv_huge_pages underflow on UFFDIO_COPY (Rafael Aquini) [1984173] - mm/page_alloc: fix counting of free pages after take off from buddy (Rafael Aquini) [1984173] - userfaultfd: release page in error path to avoid BUG_ON (Rafael Aquini) [1984173] - ksm: fix potential missing rmap_item for stable_node (Rafael Aquini) [1984173] - mm/migrate.c: fix potential indeterminate pte entry in migrate_vma_insert_page() (Rafael Aquini) [1984173] - mm/hugeltb: handle the error case in hugetlb_fix_reserve_counts() (Rafael Aquini) [1984173] - khugepaged: fix wrong result value for trace_mm_collapse_huge_page_isolate() (Rafael Aquini) [1984173] - mm/memory-failure: unnecessary amount of unmapping (Rafael Aquini) [1984173] - mm: page_alloc: ignore init_on_free=1 for debug_pagealloc=1 (Rafael Aquini) [1984173] - mm/sparse: add the missing sparse_buffer_fini() in error branch (Rafael Aquini) [1984173] - mm: memcontrol: fix cpuhotplug statistics flushing (Rafael Aquini) [1984173] - x86/mem_encrypt: Correct physical address calculation in __set_clr_pte_enc() (Rafael Aquini) [1984173] - zsmalloc: account the number of compacted pages correctly (Rafael Aquini) [1984173] - mm/compaction: fix misbehaviors of fast_find_migrateblock() (Rafael Aquini) [1984173] - hugetlb: fix update_and_free_page contig page struct assumption (Rafael Aquini) [1984173] - mm/hugetlb: fix potential double free in hugetlb_register_node() error path (Rafael Aquini) [1984173] - mm/memory.c: fix potential pte_unmap_unlock pte error (Rafael Aquini) [1984173] - mm/memory.c: fix potential pte_unmap_unlock pte error (Rafael Aquini) [1984173] - mm/hugetlb: fix potential missing huge page size info (Rafael Aquini) [1984173] - x86/mm: Fix leak of pmd ptlock (Rafael Aquini) [1984173] - mm/zswap: fix passing zero to 'PTR_ERR' warning (Rafael Aquini) [1984173] - mm/page_isolation: do not isolate the max order page (Rafael Aquini) [1984173] - mm,memory_failure: always pin the page in madvise_inject_error (Rafael Aquini) [1984173] - mm/page_alloc: speed up the iteration of max_order (Rafael Aquini) [1984173] - x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP (Rafael Aquini) [1984173] - x86/mm/ident_map: Check for errors from ident_pud_init() (Rafael Aquini) [1984173] - mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary (Rafael Aquini) [1984173] - mm/page_alloc.c: fix freeing non-compound pages (Rafael Aquini) [1984173] - mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected by khugepaged (Rafael Aquini) [1984173] - percpu: fix first chunk size calculation for populated bitmap (Rafael Aquini) [1984173] - x86, fakenuma: Fix invalid starting node ID (Rafael Aquini) [1984173] - mm: include CMA pages in lowmem_reserve at boot (Rafael Aquini) [1984173] - mm/rodata_test.c: fix missing function declaration (Rafael Aquini) [1984173] - mm/page_counter: fix various data races at memsw (Rafael Aquini) [1984173] - khugepaged: retract_page_tables() remember to test exit (Rafael Aquini) [1984173] - mm/page_counter.c: fix protection usage propagation (Rafael Aquini) [1984173] - x86/mm/numa: Remove uninitialized_var() usage (Rafael Aquini) [1984173] - shmem: fix possible deadlocks on shmlock_user_lock (Rafael Aquini) [1984173] - mm: swap: use smp_mb__after_atomic() to order LRU bit set (Rafael Aquini) [1984173] - cgroup: memcg: net: do not associate sock with unrelated cgroup (Rafael Aquini) [1984173] - mm: fix gup_pud_range (Rafael Aquini) [1984173] - x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd (Rafael Aquini) [1984173] - mm/shmem.c: thp, shmem: fix conflict of above-47bit hint address and PMD alignment (Rafael Aquini) [1984173] - mm: Implement no-MMU variant of vmalloc_user_node_flags (Rafael Aquini) [1984173] - usercopy: Avoid HIGHMEM pfn warning (Rafael Aquini) [1984173] - x86/mm: Don't exceed the valid physical address space (Rafael Aquini) [1984173] - x86/mm/mem_encrypt: Fix erroneous sizeof() (Rafael Aquini) [1984173] - s390/mm: fix addressing exception after suspend/resume (Rafael Aquini) [1984173] - blk-mq: fix use-after-free in blk_mq_exit_sched (Ming Lei) [1969726] - nvmet: use new ana_log_size instead the old one (Maurizio Lombardi) [1949777] - nvme-multipath: fix double initialization of ANA state (Maurizio Lombardi) [1949777] - configs: enable CONFIG_LEDS_BRIGHTNESS_HW_CHANGED (Benjamin Tissoires) [1922973]- Revert "xfs: enable new inode btree counters feature" (Bill O'Donnell) [1976969] - Revert "xfs: enable big timestamps" (Bill O'Donnell) [1976969] - Revert "xfs: remove kmem_realloc()" (Bill O'Donnell) [1976969] - xfs: prevent metadata files from being inactivated (Bill O'Donnell) [1976969] - quota: widen timestamps for the fs_disk_quota structure (Bill O'Donnell) [1976969] - cifs: fix fallocate when trying to allocate a hole. (Ronnie Sahlberg) [1866684] - cifs: only write 64kb at a time when fallocating a small region of a file (Ronnie Sahlberg) [1866684] - cifs: improve fallocate emulation (Ronnie Sahlberg) [1866684] - cifs: Do not use the original cruid when following DFS links for multiuser mounts (Ronnie Sahlberg) [1812436] - cifs: ignore relatime in smb3_fs_context_parse_monolithic() (Ronnie Sahlberg) [1812436] - cifs: fix regression when mounting shares with prefix paths (Ronnie Sahlberg) [1812436] - cifs: fix leak in cifs_smb3_do_mount() ctx (Ronnie Sahlberg) [1812436] - cifs: add fs_context param to parsing helpers (Ronnie Sahlberg) [1812436] - cifs: make fs_context error logging wrapper (Ronnie Sahlberg) [1812436] - cifs: warn and fail if trying to use rootfs without the config option (Ronnie Sahlberg) [1812436] - cifs: fix nodfs mount option (Ronnie Sahlberg) [1812436] - cifs: fix handling of escaped ',' in the password mount argument (Ronnie Sahlberg) [1812436] - cifs: Add new parameter "acregmax" for distinct file and directory metadata timeout (Ronnie Sahlberg) [1812436] - cifs: convert revalidate of directories to using directory metadata cache timeout (Ronnie Sahlberg) [1812436] - cifs: Add new mount parameter "acdirmax" to allow caching directory metadata (Ronnie Sahlberg) [1812436] - cifs: fix trivial typo (Ronnie Sahlberg) [1812436] - cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath. (Ronnie Sahlberg) [1812436] - cifs: In the new mount api we get the full devname as source= (Ronnie Sahlberg) [1812436] - cifs: do not disable noperm if multiuser mount option is not provided (Ronnie Sahlberg) [1812436] - cifs: fix dfs-links (Ronnie Sahlberg) [1812436] - cifs: fix dfs domain referrals (Ronnie Sahlberg) [1812436] - cifs: returning mount parm processing errors correctly (Ronnie Sahlberg) [1812436] - cifs: fix mounts to subdirectories of target (Ronnie Sahlberg) [1812436] - cifs: ignore auto and noauto options if given (Ronnie Sahlberg) [1812436] - cifs: connect: style: Simplify bool comparison (Ronnie Sahlberg) [1812436] - fs: cifs: remove unneeded variable in smb3_fs_context_dup (Ronnie Sahlberg) [1812436] - cifs: Fix support for remount when not changing rsize/wsize (Ronnie Sahlberg) [1812436] - cifs: handle "guest" mount parameter (Ronnie Sahlberg) [1812436] - cifs: correct four aliased mount parms to allow use of previous names (Ronnie Sahlberg) [1812436] - cifs: fix use after free in cifs_smb3_do_mount() (Ronnie Sahlberg) [1812436] - cifs: fix rsize/wsize to be negotiated values (Ronnie Sahlberg) [1812436] - cifs: update super_operations to show_devname (Ronnie Sahlberg) [1812436] - cifs: fix uninitialized variable in smb3_fs_context_parse_param (Ronnie Sahlberg) [1812436] - cifs: update mnt_cifs_flags during reconfigure (Ronnie Sahlberg) [1812436] - cifs: move update of flags into a separate function (Ronnie Sahlberg) [1812436] - cifs: remove ctx argument from cifs_setup_cifs_sb (Ronnie Sahlberg) [1812436] - cifs: do not allow changing posix_paths during remount (Ronnie Sahlberg) [1812436] - cifs: uncomplicate printing the iocharset parameter (Ronnie Sahlberg) [1812436] - cifs: don't create a temp nls in cifs_setup_ipc (Ronnie Sahlberg) [1812436] - cifs: simplify handling of cifs_sb/ctx->local_nls (Ronnie Sahlberg) [1812436] - cifs: we do not allow changing username/password/unc/... during remount (Ronnie Sahlberg) [1812436] - cifs: add initial reconfigure support (Ronnie Sahlberg) [1812436] - cifs: move [brw]size from cifs_sb to cifs_sb->ctx (Ronnie Sahlberg) [1812436] - cifs: move cifs_cleanup_volume_info[_content] to fs_context.c (Ronnie Sahlberg) [1812436] - cifs: Add missing sentinel to smb3_fs_parameters (Ronnie Sahlberg) [1812436] - cifs: remove actimeo from cifs_sb (Ronnie Sahlberg) [1812436] - cifs: remove [gu]id/backup[gu]id/file_mode/dir_mode from cifs_sb (Ronnie Sahlberg) [1812436] - cifs: minor kernel style fixes for comments (Ronnie Sahlberg) [1812436] - linux/parser.h: add include guards (Ronnie Sahlberg) [1812436] - cifs: Make extract_sharename function public (Ronnie Sahlberg) [1812436] - cifs: Make extract_hostname function public (Ronnie Sahlberg) [1812436] - cifs: get rid of cifs_sb->mountdata (Ronnie Sahlberg) [1812436] - cifs: add an smb3_fs_context to cifs_sb (Ronnie Sahlberg) [1812436] - cifs: remove the devname argument to cifs_compose_mount_options (Ronnie Sahlberg) [1812436] - cifs: switch to new mount api (Ronnie Sahlberg) [1812436] - cifs: move cifs_parse_devname to fs_context.c (Ronnie Sahlberg) [1812436] - cifs: move the enum for cifs parameters into fs_context.h (Ronnie Sahlberg) [1812436] - cifs: rename dup_vol to smb3_fs_context_dup and move it into fs_context.c (Ronnie Sahlberg) [1812436] - cifs: rename smb_vol as smb3_fs_context and move it to fs_context.h (Ronnie Sahlberg) [1812436] - cifs: Fix fall-through warnings for Clang (Ronnie Sahlberg) [1812436] - cifs: refactor create_sd_buf() and and avoid corrupting the buffer (Ronnie Sahlberg) [1812436] - scsi: lpfc: Fix failure to transmit ABTS on FC link (Dick Kennedy) [1964670] - scsi: lpfc: Update lpfc version to 12.8.0.10 (Dick Kennedy) [1964670] - scsi: lpfc: Reregister FPIN types if ELS_RDF is received from fabric controller (Dick Kennedy) [1964670] - scsi: lpfc: Add a option to enable interlocked ABTS before job completion (Dick Kennedy) [1964670] - scsi: lpfc: Fix crash when lpfc_sli4_hba_setup() fails to initialize the SGLs (Dick Kennedy) [1964670] - scsi: lpfc: Ignore GID-FT response that may be received after a link flip (Dick Kennedy) [1964670] - scsi: lpfc: Fix node handling for Fabric Controller and Domain Controller (Dick Kennedy) [1964670] - scsi: lpfc: Fix Node recovery when driver is handling simultaneous PLOGIs (Dick Kennedy) [1964670] - scsi: lpfc: Add ndlp kref accounting for resume RPI path (Dick Kennedy) [1964670] - scsi: lpfc: Fix "Unexpected timeout" error in direct attach topology (Dick Kennedy) [1964670] - scsi: lpfc: Fix non-optimized ERSP handling (Dick Kennedy) [1964670] - scsi: lpfc: Fix unreleased RPIs when NPIV ports are created (Dick Kennedy) [1964670] - scsi: lpfc: Remove redundant assignment to pointer temp_hdr (Dick Kennedy) [1964670] - Documentation: add more details in tipc.rst (Xin Long) [1872308] - net/tipc: add TIPC chapter to networking Documentation (Xin Long) [1872308] - scsi: qla2xxx: Reserve extra IRQ vectors (Nilesh Javali) [1964834] - tracing/hwlat: Honor the tracing_cpumask (Jerome Marchand) [1920595] - tracing/hwlat: Drop the duplicate assignment in start_kthread() (Jerome Marchand) [1920595] - sfc: add logs explaining XDP_TX/REDIRECT is not available (Íñigo Huguet) [1976756] - sfc: ensure correct number of XDP queues (Íñigo Huguet) [1976756] - sfc: fix lack of XDP TX queues - error XDP TX failed (-22) (Íñigo Huguet) [1976756] - sfc: Remove rcu_read_lock() around XDP program invocation (Íñigo Huguet) [1976756] - sfc: use DEVICE_ATTR_*() macro (Íñigo Huguet) [1976756] - sfc: farch: fix compile warning in efx_farch_dimension_resources() (Íñigo Huguet) [1976756] - sfc: don't use netif_info et al before net_device is registered (Íñigo Huguet) [1976756] - net: stmmac: Do not enable RX FIFO overflow interrupts (Mark Salter) [1905243] - net: stmmac: Clear receive all(RA) bit when promiscuous mode is off (Mark Salter) [1905243] - net: stmmac: cleared __FPE_REMOVING bit in stmmac_fpe_start_wq() (Mark Salter) [1905243] - stmmac: intel: Enable HW descriptor prefetch by default (Mark Salter) [1905243] - net: stmmac: Add HW descriptor prefetch setting for DWMAC Core 5.20 onwards (Mark Salter) [1905243] - net: stmmac: fix TSO and TBS feature enabling during driver open (Mark Salter) [1905243] - stmmac: intel: set TSO/TBS TX Queues default settings (Mark Salter) [1905243] - stmmac: intel: unlock on error path in intel_crosststamp() (Mark Salter) [1905243] - net: stmmac: use __napi_schedule() for PREEMPT_RT (Mark Salter) [1905243] - stmmac: intel: Enable SERDES PHY rx clk for PSE (Mark Salter) [1905243] - stmmac: intel: Drop duplicate ID in the list of PCI device IDs (Mark Salter) [1905243] - stmmac: intel: add cross time-stamping freq difference adjustment (Mark Salter) [1905243] - net: stmmac: Add support for external trigger timestamping (Mark Salter) [1905243] - net: stmmac: fix dma physical address of descriptor when display ring (Mark Salter) [1905243] - net: stmmac: fix wrongly set buffer2 valid when sph unsupport (Mark Salter) [1905243] - net: stmmac: arrange Tx tail pointer update to stmmac_flush_tx_descriptors (Mark Salter) [1905243] - net: stmmac: make SPH enable/disable to be configurable (Mark Salter) [1905243] - net: stmmac: set IRQ affinity hint for multi MSI vectors (Mark Salter) [1905243] - net: stmmac: remove unnecessary pci_enable_msi() call (Mark Salter) [1905243] - stmmac: intel: use managed PCI function on probe and resume (Mark Salter) [1905243] - net: stmmac: enable MTL ECC Error Address Status Over-ride by default (Mark Salter) [1905243] - net: ethernet: stmicro: Remove duplicate struct declaration (Mark Salter) [1905243] - net: stmmac: fix missing unlock on error in stmmac_suspend() (Mark Salter) [1905243] - net: stmmac: Fix kernel panic due to NULL pointer dereference of fpe_cfg (Mark Salter) [1905243] - net: stmmac: use interrupt mode INTM=1 for multi-MSI (Mark Salter) [1905243] - stmmac: intel: add support for multi-vector msi and msi-x (Mark Salter) [1905243] - net: stmmac: introduce MSI Interrupt routines for mac, safety, RX & TX (Mark Salter) [1905243] - net: stmmac: make stmmac_interrupt() function more friendly to MSI (Mark Salter) [1905243] - net: stmmac: introduce DMA interrupt status masking per traffic direction (Mark Salter) [1905243] - net: phy: marvell10g: Add PHY loopback support (Mark Salter) [1905243] - net: phy: add genphy_c45_loopback (Mark Salter) [1905243] - net: phylink: Fix phylink_err() function name error in phylink_major_config (Mark Salter) [1905243] - net: stmmac: support FPE link partner hand-shaking procedure (Mark Salter) [1905243] - net: stmmac: Add hardware supported cross-timestamp (Mark Salter) [1905243] - net: stmmac: platform: fix build error with !CONFIG_PM_SLEEP (Mark Salter) [1905243] - stmmac: intel: Add PSE and PCH PTP clock source selection (Mark Salter) [1905243] - net: stmmac: Add EST errors into ethtool statistic (Mark Salter) [1905243] - net: stmmac: EST interrupts handling and error reporting (Mark Salter) [1905243] - net: stmmac: add RX frame steering based on VLAN priority in tc flower (Mark Salter) [1905243] - net: stmmac: restructure tc implementation for RX VLAN Priority steering (Mark Salter) [1905243] - net: stmmac: add per-queue TX & RX coalesce ethtool support (Mark Salter) [1905243] - net: stmmac: Use hrtimer for TX coalescing (Mark Salter) [1905243] - net: stmmac: add timestamp correction to rid CDC sync error (Mark Salter) [1905243] - net: stmmac: add platform level clocks management (Mark Salter) [1905243] - net: stmmac: add clocks management for gmac driver (Mark Salter) [1905243] - stmmac: intel: add pcs-xpcs for Intel mGbE controller (Mark Salter) [1905243] - net: stmmac: ensure phydev is attached to phylink for C37 AN (Mark Salter) [1905243] - net: stmmac: make in-band AN mode parsing is supported for non-DT (Mark Salter) [1905243] - net: phylink: make phylink_parse_mode() support non-DT platform (Mark Salter) [1905243] - net: pcs: add C37 SGMII AN support for intel mGbE controller (Mark Salter) [1905243] - net: pcs: rearrange C73 functions to prepare for C37 support later (Mark Salter) [1905243] - net: phy: leds: Deduplicate link LED trigger registration (Mark Salter) [1905243] - net: stmmac: Fix VLAN filter delete timeout issue in Intel mGBE SGMII (Mark Salter) [1905243] - net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10 (Mark Salter) [1905243] - net: stmmac: fix CBS idleslope and sendslope calculation (Mark Salter) [1905243] - net: stmmac: set TxQ mode back to DCB after disabling CBS (Mark Salter) [1905243] - net: stmmac: allow stmmac to probe for C45 PHY devices (Mark Salter) [1905243] - net: stmmac: Enable EEE HW LPI timer with auto SW/HW switching (Mark Salter) [1905243] - net: pcs-xpcs: depend on MDIO_BUS instead of selecting it (Mark Salter) [1905243] - net: pcs: Move XPCS into new PCS subdirectory (Mark Salter) [1905243] - net: stmmac: Add XLGMII support (Mark Salter) [1905243] - net: phy: xpcs: Add XLGMII support (Mark Salter) [1905243] - net: phy: xpcs: Restart AutoNeg if outcome was invalid (Mark Salter) [1905243] - net: phy: xpcs: Set Link down if AutoNeg is enabled and did not finish (Mark Salter) [1905243] - net: phy: xpcs: Reset XPCS upon probe (Mark Salter) [1905243] - net: phy: xpcs: Return error when 10GKR link errors are found (Mark Salter) [1905243] - stmmac/intel: mark driver as tech preview (Mark Salter) [1905243] - redhat/configs: Add CONFIG_DWMAC_INTEL (Mark Salter) [1905243] - stmmac: intel: Fixes clock registration error seen for multiple interfaces (Mark Salter) [1905243] - stmmac: intel: Fix mdio bus registration issue for TGL-H/ADL-S (Mark Salter) [1905243] - net: stmmac: Add PCI bus info to ethtool driver query output (Mark Salter) [1905243] - stmmac: intel: Add ADL-S 1Gbps PCI IDs (Mark Salter) [1905243] - stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing (Mark Salter) [1905243] - stmmac: intel: Add PCI IDs for TGL-H platform (Mark Salter) [1905243] - stmmac: intel: change all EHL/TGL to auto detect phy addr (Mark Salter) [1905243] - net: stmmac: overwrite the dma_cap.addr64 according to HW design (Mark Salter) [1905243] - stmmac: intel: Fix kernel panic on pci probe (Mark Salter) [1905243] - stmmac: intel: Adding ref clock 1us tic for LPI cntr (Mark Salter) [1905243] - net: stmmac: Add option for VLAN filter fail queue enable (Mark Salter) [1905243] - net: stmmac: Fix clock handling on remove path (Mark Salter) [1905243] - stmmac: intel: Place object in the Makefile according to the order (Mark Salter) [1905243] - stmmac: intel: Fix indentation to put on one line affected code (Mark Salter) [1905243] - stmmac: intel: Eliminate useless conditions and variables (Mark Salter) [1905243] - stmmac: intel: Convert to use pci_alloc_irq_vectors() API (Mark Salter) [1905243] - stmmac: intel: Remove unnecessary loop for PCI BARs (Mark Salter) [1905243] - stmmac: intel: Fix clock handling on error and remove paths (Mark Salter) [1905243] - net: stmmac: Enable SERDES power up/down sequence (Mark Salter) [1905243] - net: stmmac: add EHL 2.5Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add EHL PSE0 & PSE1 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: create dwmac-intel.c to contain all Intel platform (Mark Salter) [1905243] - net: stmmac: Get rid of custom STMMAC_DEVICE() macro (Mark Salter) [1905243] - net: stmmac: update pci platform data to use phy_interface (Mark Salter) [1905243] - net: stmmac: pci: Enable TBS on GMAC5 IPK PCI entry (Mark Salter) [1905243] - net: stmmac: pci: remove the duplicate code of set phy_mask (Mark Salter) [1905243] - PCI: Add PCI_STD_NUM_BARS for the number of standard BARs (Mark Salter) [1905243] - net: stmmac: pci: Add HAPS support using GMAC5 (Mark Salter) [1905243] - net: stmmac: setup higher frequency clk support for EHL & TGL (Mark Salter) [1905243] - net: stmmac: add EHL RGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add TGL SGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add EHL SGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: Make MDIO bus reset optional (Mark Salter) [1905243] - stmmac: pci: Use pci_dev_id() helper (Mark Salter) [1905243] - stmmac: pci: Fix typo in IOT2000 comment (Mark Salter) [1905243] - stmmac: pci: Adjust IOT2000 matching (Mark Salter) [1905243] - net: stmmac: Fix PCI module removal leak (Mark Salter) [1905243] - net: stmmac: mark PM functions as __maybe_unused (Mark Salter) [1905243] - ibmveth: Set CHECKSUM_PARTIAL if NULL TCP CSUM. (Diego Domingos) [1939996] - IB/core: Add missing pin_user_pages*() usage (Waiman Long) [1972078] - mm/gup/writeback: Fix incorrect inaccessible pages handling (Waiman Long) [1972078] - netfilter: nf_tables: bogus EBUSY when deleting flowtable after flush (Phil Sutter) [1983245] - ipv4: Fix device used for dst_alloc with local routes (Antoine Tenart) [1976789] - vrf: fix a comment about loopback device (Antoine Tenart) [1976789] - net: vrf: Fix operation not supported when set vrf mac (Antoine Tenart) [1976789] - vrf: prevent adding upper devices (Antoine Tenart) [1976789] - vrf: fix maximum MTU (Antoine Tenart) [1976789] - net: vrf: Fix ping failed when vrf mtu is set to 0 (Antoine Tenart) [1976789] - net: vrf: remove MTU limits for vrf device (Antoine Tenart) [1976789]- block: fix discard request merge (Ming Lei) [1970316] - blk-mq: update hctx->dispatch_busy in case of real scheduler (Ming Lei) [1976679] - block: Do not pull requests from the scheduler when we cannot dispatch them (Ming Lei) [1976679] - powerpc/pseries/mobility: handle premature return from H_JOIN (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use struct for shared state (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: refactor node lookup during DT update (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: remove rtas_ibm_suspend_me_unsafe() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: dispatch partition migration requests to pseries (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: retry partition suspend after error (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: signal suspend cancellation to platform (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use stop_machine for join/suspend (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: extract VASI session polling logic (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use rtas_activate_firmware() on resume (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: error message improvements (Desnes A. Nunes do Rosario) [1979798] - powerpc/hvcall: add token and codes for H_VASI_SIGNAL (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: add rtas_activate_firmware() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: add rtas_ibm_suspend_me() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: rtas_ibm_suspend_me -> rtas_ibm_suspend_me_unsafe (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: complete ibm,suspend-me status codes (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: Add pr_debug() for device tree changes (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: Set pr_fmt() (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove obsolete memory hotplug DT notifier code (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove dlpar_cpu_readd() (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove memory "re-add" implementation (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove prrn special case from DT update path (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove arch_update_cpu_topology (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove prrn_is_enabled() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtasd: simplify handle_rtas_event(), emit message on events (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove start/stop_topology_update() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove timed_topology_update() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: Handle extra hcall_vphn error cases (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: Suppress "VPHN is not supported" messages (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: stub out numa_update_cpu_topology() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove vphn_enabled and prrn_enabled internal flags (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology workqueue code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology timer code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: make vphn_enabled, prrn_enabled flags const (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology update code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove ability to enable topology updates (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: don't online CPUs for partition suspend (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: Unexport rtas_online_cpus_mask, rtas_offline_cpus_mask (Desnes A. Nunes do Rosario) [1979798] - mm/page_alloc: bail out on fatal signal during reclaim/compaction retry attempt (Aaron Tomlin) [1919765] - RHEL: Revert "powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled" (Paolo Bonzini) [1956950] - KVM: selftests: smm_test: Test SMM enter from L2 (Paolo Bonzini) [1956950] - KVM: nSVM: Restore nested control upon leaving SMM (Paolo Bonzini) [1956950] - KVM: nSVM: Fix L1 state corruption upon return from SMM (Paolo Bonzini) [1956950] - KVM: nSVM: Introduce svm_copy_vmrun_state() (Paolo Bonzini) [1956950] - KVM: nSVM: Check that VM_HSAVE_PA MSR was set before VMRUN (Paolo Bonzini) [1956950] - KVM: nVMX: nSVM: 'nested_run' should count guest-entry attempts that make it to guest code (Paolo Bonzini) [1956950] - KVM: nSVM: Check the value written to MSR_VM_HSAVE_PA (Paolo Bonzini) [1956950] - KVM: SVM: Fix sev_pin_memory() error checks in SEV migration utilities (Paolo Bonzini) [1956950] - KVM: SVM: Return -EFAULT if copy_to_user() for SEV mig packet header fails (Paolo Bonzini) [1956950] - KVM: SVM: add module param to control the #SMI interception (Paolo Bonzini) [1956950] - KVM: SVM: remove INIT intercept handler (Paolo Bonzini) [1956950] - KVM: SVM: #SMI interception must not skip the instruction (Paolo Bonzini) [1956950] - KVM: VMX: Remove vmx_msr_index from vmx.h (Paolo Bonzini) [1956950] - KVM: X86: Disable hardware breakpoints unconditionally before kvm_x86->run() (Paolo Bonzini) [1956950] - KVM: x86/pmu: Clear anythread deprecated bit when 0xa leaf is unsupported on the SVM (Paolo Bonzini) [1956950] - KVM: mmio: Fix use-after-free Read in kvm_vm_ioctl_unregister_coalesced_mmio (Paolo Bonzini) [1956950] - KVM: SVM: Revert clearing of C-bit on GPA in #NPF handler (Paolo Bonzini) [1956950] - KVM: x86/mmu: Do not apply HPA (memory encryption) mask to GPAs (Paolo Bonzini) [1956950] - KVM: x86: Use kernel's x86_phys_bits to handle reduced MAXPHYADDR (Paolo Bonzini) [1956950] - KVM: x86: Use guest MAXPHYADDR from CPUID.0x8000_0008 iff TDP is enabled (Paolo Bonzini) [1956950] - KVM: selftests: do not require 64GB in set_memory_region_test (Paolo Bonzini) [1956950] - KVM: selftests: Fix mapping length truncation in m{,un}map() (Paolo Bonzini) [1956950] - KVM: x86: Force all MMUs to reinitialize if guest CPUID is modified (Paolo Bonzini) [1956950] - Revert "KVM: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack" (Paolo Bonzini) [1956950] - KVM: x86/mmu: Use MMU's role to detect CR4.SMEP value in nested NPT walk (Paolo Bonzini) [1956950] - KVM: x86: Properly reset MMU context at vCPU RESET/INIT (Paolo Bonzini) [1956950] - KVM: x86/mmu: Treat NX as used (not reserved) for all !TDP shadow MMUs (Paolo Bonzini) [1956950] - KVM: x86/mmu: Remove broken WARN that fires on 32-bit KVM w/ nested EPT (Paolo Bonzini) [1956950] - KVM: nVMX: Handle split-lock #AC exceptions that happen in L2 (Paolo Bonzini) [1956950] - KVM: x86/mmu: Calculate and check "full" mmu_role for nested MMU (Paolo Bonzini) [1956950] - KVM: X86: Fix x86_emulator slab cache leak (Paolo Bonzini) [1956950] - KVM: SVM: Call SEV Guest Decommission if ASID binding fails (Paolo Bonzini) [1956950] - KVM: x86: Immediately reset the MMU context when the SMM flag is cleared (Paolo Bonzini) [1956950] - KVM: x86: Fix fall-through warnings for Clang (Paolo Bonzini) [1956950] - KVM: SVM: fix doc warnings (Paolo Bonzini) [1956950] - kvm: LAPIC: Restore guard to prevent illegal APIC register access (Paolo Bonzini) [1956950] - kvm: fix previous commit for 32-bit builds (Paolo Bonzini) [1956950] - kvm: avoid speculation-based attacks from out-of-range memslot accesses (Paolo Bonzini) [1956950] - KVM: x86: Ensure liveliness of nested VM-Enter fail tracepoint message (Paolo Bonzini) [1956950] - KVM: x86: Ensure PV TLB flush tracepoint reflects KVM behavior (Paolo Bonzini) [1956950] - KVM: X86: MMU: Use the correct inherited permissions to get shadow page (Paolo Bonzini) [1956950] - KVM: LAPIC: Write 0 to TMICT should also cancel vmx-preemption timer (Paolo Bonzini) [1956950] - KVM: SVM: Fix SEV SEND_START session length & SEND_UPDATE_DATA query length after commit 238eca821cee (Paolo Bonzini) [1956950] - KVM: X86: Kill off ctxt->ud (Paolo Bonzini) [1956950] - KVM: X86: Fix warning caused by stale emulation context (Paolo Bonzini) [1956950] - KVM: X86: Use kvm_get_linear_rip() in single-step and #DB/#BP interception (Paolo Bonzini) [1956950] - KVM: x86/mmu: Fix comment mentioning skip_4k (Paolo Bonzini) [1956950] - KVM: VMX: update vcpu posted-interrupt descriptor when assigning device (Paolo Bonzini) [1956950] - KVM: rename KVM_REQ_PENDING_TIMER to KVM_REQ_UNBLOCK (Paolo Bonzini) [1956950] - KVM: x86: add start_assignment hook to kvm_x86_ops (Paolo Bonzini) [1956950] - KVM: LAPIC: Narrow the timer latency between wait_lapic_expire and world switch (Paolo Bonzini) [1956950] - KVM: X86: Fix vCPU preempted state from guest's point of view (Paolo Bonzini) [1956950] - KVM: X86: Bail out of direct yield in case of under-committed scenarios (Paolo Bonzini) [1956950] - KVM: SVM: make the avic parameter a bool (Paolo Bonzini) [1956950] - KVM: VMX: Drop unneeded CONFIG_X86_LOCAL_APIC check (Paolo Bonzini) [1956950] - KVM: SVM: Drop unneeded CONFIG_X86_LOCAL_APIC check (Paolo Bonzini) [1956950] - KVM: SVM: Move GHCB unmapping to fix RCU warning (Paolo Bonzini) [1956950] - KVM: SVM: Invert user pointer casting in SEV {en,de}crypt helpers (Paolo Bonzini) [1956950] - kvm: Cap halt polling at kvm->max_halt_poll_ns (Paolo Bonzini) [1956950] - KVM: x86: Prevent deadlock against tk_core.seq (Paolo Bonzini) [1956950] - KVM: x86: Cancel pvclock_gtod_work on module removal (Paolo Bonzini) [1956950] - KVM: x86: Prevent KVM SVM from loading on kernels with 5-level paging (Paolo Bonzini) [1956950] - KVM: SVM: Probe and load MSR_TSC_AUX regardless of RDTSCP support in host (Paolo Bonzini) [1956950] - KVM: VMX: Disable preemption when probing user return MSRs (Paolo Bonzini) [1956950] - KVM: x86: Move RDPID emulation intercept to its own enum (Paolo Bonzini) [1956950] - KVM: SVM: Inject #UD on RDTSCP when it should be disabled in the guest (Paolo Bonzini) [1956950] - KVM: x86: Emulate RDPID only if RDTSCP is supported (Paolo Bonzini) [1956950] - KVM: VMX: Do not advertise RDPID if ENABLE_RDTSCP control is unsupported (Paolo Bonzini) [1956950] - KVM: nSVM: always restore the L1's GIF on migration (Paolo Bonzini) [1956950] - KVM: x86: Hoist input checks in kvm_add_msr_filter() (Paolo Bonzini) [1956950] - KVM: nVMX: Properly pad 'struct kvm_vmx_nested_state_hdr' (Paolo Bonzini) [1956950] - KVM/VMX: Invoke NMI non-IST entry instead of IST entry (Paolo Bonzini) [1956950] - KVM: x86: Fix potential fput on a null source_kvm_file (Paolo Bonzini) [1956950] - KVM: nSVM: leave the guest mode prior to loading a nested state (Paolo Bonzini) [1956950] - KVM: nSVM: fix few bugs in the vmcb02 caching logic (Paolo Bonzini) [1956950] - KVM: nSVM: fix a typo in svm_leave_nested (Paolo Bonzini) [1956950] - KVM: PPC: exit halt polling on need_resched() (Paolo Bonzini) [1956950] - kvm: exit halt polling on need_resched() as well (Paolo Bonzini) [1956950] - KVM: LAPIC: Accurately guarantee busy wait for timer to expire when using hv_timer (Paolo Bonzini) [1956950] - kvm/x86: Fix 'lpages' kvm stat for TDM MMU (Paolo Bonzini) [1956950] - KVM: x86/mmu: Avoid unnecessary page table allocation in kvm_tdp_mmu_map() (Paolo Bonzini) [1956950] - KVM: selftests: Speed up set_memory_region_test (Paolo Bonzini) [1956950] - selftests: kvm: Fix the check of return value (Paolo Bonzini) [1956950] - KVM: x86: Take advantage of kvm_arch_dy_has_pending_interrupt() (Paolo Bonzini) [1956950] - KVM: SVM: Skip SEV cache flush if no ASIDs have been used (Paolo Bonzini) [1956950] - KVM: SVM: Remove an unnecessary prototype declaration of sev_flush_asids() (Paolo Bonzini) [1956950] - KVM: SVM: Drop redundant svm_sev_enabled() helper (Paolo Bonzini) [1956950] - KVM: SVM: Move SEV VMCB tracking allocation to sev.c (Paolo Bonzini) [1956950] - KVM: SVM: Explicitly check max SEV ASID during sev_hardware_setup() (Paolo Bonzini) [1956950] - KVM: SVM: Unconditionally invoke sev_hardware_teardown() (Paolo Bonzini) [1956950] - KVM: SVM: Enable SEV/SEV-ES functionality by default (when supported) (Paolo Bonzini) [1956950] - KVM: SVM: Condition sev_enabled and sev_es_enabled on CONFIG_KVM_AMD_SEV=y (Paolo Bonzini) [1956950] - KVM: SVM: Append "_enabled" to module-scoped SEV/SEV-ES control variables (Paolo Bonzini) [1956950] - KVM: SEV: Mask CPUID[0x8000001F].eax according to supported features (Paolo Bonzini) [1956950] - KVM: SVM: Move SEV module params/variables to sev.c (Paolo Bonzini) [1956950] - svm/sev: Register SEV and SEV-ES ASIDs to the misc controller (Paolo Bonzini) [1956950] - KVM: SVM: Disable SEV/SEV-ES if NPT is disabled (Paolo Bonzini) [1956950] - KVM: SVM: Free sev_asid_bitmap during init if SEV setup fails (Paolo Bonzini) [1956950] - KVM: SVM: Zero out the VMCB array used to track SEV ASID association (Paolo Bonzini) [1956950] - KVM: x86: Move reverse CPUID helpers to separate header file (Paolo Bonzini) [1956950] - KVM: x86: Rename GPR accessors to make mode-aware variants the defaults (Paolo Bonzini) [1956950] - KVM: SVM: Use default rAX size for INVLPGA emulation (Paolo Bonzini) [1956950] - KVM: x86/xen: Drop RAX[63:32] when processing hypercall (Paolo Bonzini) [1956950] - KVM: nVMX: Truncate base/index GPR value on address calc in !64-bit (Paolo Bonzini) [1956950] - KVM: nVMX: Truncate bits 63:32 of VMCS field on nested check in !64-bit (Paolo Bonzini) [1956950] - KVM: VMX: Truncate GPR value for DR and CR reads in !64-bit mode (Paolo Bonzini) [1956950] - KVM: SVM: Truncate GPR value for DR and CR accesses in !64-bit mode (Paolo Bonzini) [1956950] - KVM: x86: Check CR3 GPA for validity regardless of vCPU mode (Paolo Bonzini) [1956950] - KVM: x86: Remove emulator's broken checks on CR0/CR3/CR4 loads (Paolo Bonzini) [1956950] - KVM: VMX: Intercept FS/GS_BASE MSR accesses for 32-bit KVM (Paolo Bonzini) [1956950] - KVM: SVM: Delay restoration of host MSR_TSC_AUX until return to userspace (Paolo Bonzini) [1956950] - KVM: SVM: Clear MSR_TSC_AUX[63:32] on write (Paolo Bonzini) [1956950] - KVM: SVM: Inject #GP on guest MSR_TSC_AUX accesses if RDTSCP unsupported (Paolo Bonzini) [1956950] - KVM: VMX: Invert the inlining of MSR interception helpers (Paolo Bonzini) [1956950] - KVM: X86: Fix failure to boost kernel lock holder candidate in SEV-ES guests (Paolo Bonzini) [1956950] - KVM: x86: Properly handle APF vs disabled LAPIC situation (Paolo Bonzini) [1956950] - KVM: VMX: use EPT_VIOLATION_GVA_TRANSLATED instead of 0x100 (Paolo Bonzini) [1956950] - KVM: x86: Support KVM VMs sharing SEV context (Paolo Bonzini) [1956950] - KVM: x86: Remove unused function declaration (Paolo Bonzini) [1956950] - KVM: x86/mmu: Drop trace_kvm_age_page() tracepoint (Paolo Bonzini) [1956950] - KVM: Move prototypes for MMU notifier callbacks to generic code (Paolo Bonzini) [1956950] - KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() (Paolo Bonzini) [1956950] - KVM: x86/mmu: preserve pending TLB flush across calls to kvm_tdp_mmu_zap_sp (Paolo Bonzini) [1956950] - KVM: x86: disable interrupts while pvclock_gtod_sync_lock is taken (Paolo Bonzini) [1956950] - KVM: x86: reduce pvclock_gtod_sync_lock critical sections (Paolo Bonzini) [1956950] - kvm: x86: annotate RCU pointers (Paolo Bonzini) [1956950] - KVM: x86: remove misplaced comment on active_mmu_pages (Paolo Bonzini) [1956950] - x86/sev: Drop redundant and potentially misleading 'sev_enabled' (Paolo Bonzini) [1956950] - x86/cpufeatures: Assign dedicated feature word for CPUID_0x8000001F[EAX] (Paolo Bonzini) [1956950] - cgroup: Add misc cgroup controller (Paolo Bonzini) [1956950] - x86: Remove duplicate TSC DEADLINE MSR definitions (Paolo Bonzini) [1956950] - KVM: s390: allow facility 192 (vector-packed-decimal-enhancement facility 2) (Thomas Huth) [1977289] - KVM: s390: gen_facilities: allow facilities 165, 193, 194 and 196 (Thomas Huth) [1977289] - mpi3mr: mark as tech preview (Tomas Henzl) [1858804] - add the mpi3mr config (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix W=1 compilation warnings (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix warnings reported by smatch (Tomas Henzl) [1858804] - scsi: mpi3mr: Make some symbols static (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix error return code in mpi3mr_init_ioc() (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix missing unlock on error (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix error handling in mpi3mr_setup_isr() (Tomas Henzl) [1858804] - scsi: mpi3mr: Delete unnecessary NULL check (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix a double free (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix fall-through warning for Clang (Tomas Henzl) [1858804] - scsi: mpi3mr: Add event handling debug prints (Tomas Henzl) [1858804] - scsi: mpi3mr: Add EEDP DIF DIX support (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for DSN secure firmware check (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for PM suspend and resume (Tomas Henzl) [1858804] - scsi: mpi3mr: Wait for pending I/O completions upon detection of VD I/O timeout (Tomas Henzl) [1858804] - scsi: mpi3mr: Print pending host I/Os for debugging (Tomas Henzl) [1858804] - scsi: mpi3mr: Complete support for soft reset (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for threaded ISR (Tomas Henzl) [1858804] - scsi: mpi3mr: Hardware workaround for UNMAP commands to NVMe drives (Tomas Henzl) [1858804] - scsi: mpi3mr: Allow certain commands during pci-remove hook (Tomas Henzl) [1858804] - scsi: mpi3mr: Add change queue depth support (Tomas Henzl) [1858804] - scsi: mpi3mr: Implement SCSI error handler hooks (Tomas Henzl) [1858804] - scsi: mpi3mr: Add bios_param SCSI host template hook (Tomas Henzl) [1858804] - scsi: mpi3mr: Print IOC info for debugging (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for timestamp sync with firmware (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for recovering controller (Tomas Henzl) [1858804] - scsi: mpi3mr: Additional event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for PCIe device event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for device add/remove event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for internal watchdog thread (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for queue command processing (Tomas Henzl) [1858804] - scsi: mpi3mr: Create operational request and reply queue pair (Tomas Henzl) [1858804] - scsi: mpi3mr: Base driver code (Tomas Henzl) [1858804] - scsi: mpi3mr: Add mpi30 Rev-R headers and Kconfig (Tomas Henzl) [1858804] - e1000e: Fix prototype warning (Ken Cox) [1920290] - e1000e: Mark e1000e_pm_prepare() as __maybe_unused (Ken Cox) [1920290] - e1000e: Fix duplicate include guard (Ken Cox) [1920290] - e1000e: Remove the runtime suspend restriction on CNP+ (Ken Cox) [1920290] - e1000e: Leverage direct_complete to speed up s2ram (Ken Cox) [1920290] - e1000e: Fix error handling in e1000_set_d0_lplu_state_82571 (Ken Cox) [1920290] - e1000e: add rtnl_lock() to e1000_reset_task (Ken Cox) [1920290] - e1000e: remove the redundant value assignment in e1000_update_nvm_checksum_spt (Ken Cox) [1920290] - e1000e: Export S0ix flags to ethtool (Ken Cox) [1920290] - e1000e: bump up timeout to wait when ME un-configures ULP mode (Ken Cox) [1920290] - e1000e: Only run S0ix flows if shutdown succeeded (Ken Cox) [1920290] - scsi: ipr: System crashes when seeing type 20 error (Desnes A. Nunes do Rosario) [1977532] - scsi: ipr: Use scnprintf() for avoiding potential buffer overflow (Desnes A. Nunes do Rosario) [1977532] - tipc: do not write skb_shinfo frags when doing decrytion (Xin Long) [1974627] - bnxt_en: Call bnxt_ethtool_free() in bnxt_init_one() error path (Jonathan Toppins) [1921449] - bnxt_en: Fix TQM fastpath ring backing store computation (Jonathan Toppins) [1921449] - bnxt_en: Rediscover PHY capabilities after firmware reset (Jonathan Toppins) [1921449] - bnxt_en: Fix context memory setup for 64K page size. (Jonathan Toppins) [1921449] - bnxt_en: Include new P5 HV definition in VF check. (Jonathan Toppins) [1921449] - bnxt_en: Add PCI IDs for Hyper-V VF devices. (Jonathan Toppins) [1921449] - bnxt_en: Fix RX consumer index logic in the error path. (Jonathan Toppins) [1921449] - bnxt_en: fix ternary sign extension bug in bnxt_show_temp() (Jonathan Toppins) [1921449] - bnxt_en: reliably allocate IRQ table on reset to avoid crash (Jonathan Toppins) [1921449] - bnxt_en: Fix race between firmware reset and driver remove. (Jonathan Toppins) [1921449] - bnxt_en: Improve logging of error recovery settings information. (Jonathan Toppins) [1921449] - bnxt_en: Reply to firmware's echo request async message. (Jonathan Toppins) [1921449] - bnxt_en: Initialize "context kind" field for context memory blocks. (Jonathan Toppins) [1921449] - bnxt_en: Add context memory initialization infrastructure. (Jonathan Toppins) [1921449] - bnxt_en: Implement faster recovery for firmware fatal error. (Jonathan Toppins) [1921449] - bnxt_en: selectively allocate context memories (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.2.16. (Jonathan Toppins) [1921449] - bnxt_en: Fix devlink info's stored fw.psid version format. (Jonathan Toppins) [1921449] - bnxt_en: reverse order of TX disable and carrier off (Jonathan Toppins) [1921449] - bnxt_en: Convert to use netif_level() helpers. (Jonathan Toppins) [1921449] - bnxt_en: Do not process completion entries after fatal condition detected. (Jonathan Toppins) [1921449] - bnxt_en: Consolidate firmware reset event logging. (Jonathan Toppins) [1921449] - bnxt_en: Improve firmware fatal error shutdown sequence. (Jonathan Toppins) [1921449] - bnxt_en: Modify bnxt_disable_int_sync() to be called more than once. (Jonathan Toppins) [1921449] - bnxt_en: Add a new BNXT_STATE_NAPI_DISABLED flag to keep track of NAPI state. (Jonathan Toppins) [1921449] - bnxt_en: Add bnxt_fw_reset_timeout() helper. (Jonathan Toppins) [1921449] - bnxt_en: Retry open if firmware is in reset. (Jonathan Toppins) [1921449] - bnxt_en: attempt to reinitialize after aborted reset (Jonathan Toppins) [1921449] - bnxt_en: log firmware debug notifications (Jonathan Toppins) [1921449] - bnxt_en: Add an upper bound for all firmware command timeouts. (Jonathan Toppins) [1921449] - bnxt_en: Move reading VPD info after successful handshake with fw. (Jonathan Toppins) [1921449] - bnxt_en: Retry sending the first message to firmware if it is under reset. (Jonathan Toppins) [1921449] - bnxt_en: handle CRASH_NO_MASTER during bnxt_open() (Jonathan Toppins) [1921449] - bnxt_en: Define macros for the various health register states. (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface to 1.10.2.11. (Jonathan Toppins) [1921449] - bnxt_en: Clear DEFRAG flag in firmware message when retry flashing. (Jonathan Toppins) [1921449] - bnxt_en: Improve stats context resource accounting with RDMA driver loaded. (Jonathan Toppins) [1921449] - bnxt_en: Use kzalloc for allocating only one thing (Jonathan Toppins) [1921449] - bnxt_en: Check TQM rings for maximum supported value. (Jonathan Toppins) [1921449] - bnxt_en: Fix AER recovery. (Jonathan Toppins) [1921449] - bnxt_en: Enable batch mode when using HWRM_NVM_MODIFY to flash packages. (Jonathan Toppins) [1921449] - bnxt_en: Retry installing FW package under NO_SPACE error condition. (Jonathan Toppins) [1921449] - bnxt_en: Restructure bnxt_flash_package_from_fw_obj() to execute in a loop. (Jonathan Toppins) [1921449] - bnxt_en: Rearrange the logic in bnxt_flash_package_from_fw_obj(). (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_flash_nvram. (Jonathan Toppins) [1921449] - bnxt_en: Release PCI regions when DMA mask setup fails during probe. (Jonathan Toppins) [1921449] - bnxt_en: fix error return code in bnxt_init_board() (Jonathan Toppins) [1921449] - bnxt_en: fix error return code in bnxt_init_one() (Jonathan Toppins) [1921449] - bnxt_en: Avoid unnecessary NVM_GET_DEV_INFO cmd error log on VFs. (Jonathan Toppins) [1921449] - bnxt_en: Fix counter overflow logic. (Jonathan Toppins) [1921449] - bnxt_en: Free port stats during firmware reset. (Jonathan Toppins) [1921449] - bnxt_en: read EEPROM A2h address using page 0 (Jonathan Toppins) [1921449] - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally. (Jonathan Toppins) [1921449] - bnxt_en: Check abort error state in bnxt_open_nic(). (Jonathan Toppins) [1921449] - bnxt_en: Re-write PCI BARs after PCI fatal error. (Jonathan Toppins) [1921449] - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also. (Jonathan Toppins) [1921449] - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one(). (Jonathan Toppins) [1921449] - bnxt_en: Add stored FW version info to devlink info_get cb. (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_dl_info_get(). (Jonathan Toppins) [1921449] - bnxt_en: Add bnxt_hwrm_nvm_get_dev_info() to query NVM info. (Jonathan Toppins) [1921449] - bnxt_en: Log unknown link speed appropriately. (Jonathan Toppins) [1921449] - bnxt_en: Log event_data1 and event_data2 when handling RESET_NOTIFY event. (Jonathan Toppins) [1921449] - bnxt_en: Simplify bnxt_async_event_process(). (Jonathan Toppins) [1921449] - bnxt_en: Set driver default message level. (Jonathan Toppins) [1921449] - bnxt_en: Enable online self tests for multi-host/NPAR mode. (Jonathan Toppins) [1921449] - bnxt_en: Return -EROFS to user space, if NVM writes are not permitted. (Jonathan Toppins) [1921449] - bnxt_en: Eliminate unnecessary RX resets. (Jonathan Toppins) [1921449] - bnxt_en: Reduce unnecessary message log during RX errors. (Jonathan Toppins) [1921449] - bnxt_en: Add a software counter for RX ring reset. (Jonathan Toppins) [1921449] - bnxt_en: Implement RX ring reset in response to buffer errors. (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_init_one_rx_ring(). (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_free_rx_skbs(). (Jonathan Toppins) [1921449] - bnxt_en: Log FW health status info, if reset is aborted. (Jonathan Toppins) [1921449] - bnxt_en: perform no master recovery during startup (Jonathan Toppins) [1921449] - bnxt_en: log firmware status on firmware init failure (Jonathan Toppins) [1921449] - bnxt_en: refactor bnxt_alloc_fw_health() (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.1.68. (Jonathan Toppins) [1921449] - bnxt_en: Improve preset max value for ethtool -l. (Jonathan Toppins) [1921449] - bnxt_en: Implement ethtool set_fec_param() method. (Jonathan Toppins) [1921449] - bnxt_en: Report Active FEC encoding during link up. (Jonathan Toppins) [1921449] - bnxt_en: Report FEC settings to ethtool. (Jonathan Toppins) [1921449] - bnxt_en: avoid link reset if speed is not changed (Jonathan Toppins) [1921449] - bnxt_en: Handle ethernet link being disabled by firmware. (Jonathan Toppins) [1921449] - bnxt_en: ethtool: support PAM4 link speeds up to 200G (Jonathan Toppins) [1921449] - bnxt_en: add basic infrastructure to support PAM4 link speeds (Jonathan Toppins) [1921449] - bnxt_en: refactor bnxt_get_fw_speed() (Jonathan Toppins) [1921449] - bnxt_en: refactor code to limit speed advertising (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.1.65. (Jonathan Toppins) [1921449] - bnxt: add pause frame stats (Jonathan Toppins) [1921449] - xfrm: Fix xfrm offload fallback fail case (Andrea Claudi) [1976424] - sctp: trim optlen when it's a huge value in sctp_setsockopt (Xin Long) [1983864] - netfilter: flowtable: Set offload timeouts according to proto values (Phil Sutter) [1979184] - netfilter: conntrack: Introduce udp offload timeout configuration (Phil Sutter) [1979184] - netfilter: conntrack: Introduce tcp offload timeout configuration (Phil Sutter) [1979184] - veth: check for NAPI instead of xdp_prog before xmit of XDP frame (Paolo Abeni) [1952835] - self-tests: add veth tests (Paolo Abeni) [1952835] - veth: refine napi usage (Paolo Abeni) [1952835] - veth: allow enabling NAPI even without XDP (Paolo Abeni) [1952835] - veth: use skb_orphan_partial instead of skb_orphan (Paolo Abeni) [1952835] - net: really orphan skbs tied to closing sk (Paolo Abeni) [1952835] - net: let skb_orphan_partial wake-up waiters. (Paolo Abeni) [1952835] - veth: Store queue_mapping independently of XDP prog presence (Paolo Abeni) [1952835] - net/xfrm: Add inner_ipproto into sec_path (Petr Oros) [1981429] - net, xdp: Introduce xdp_prepare_buff utility routine (Jiri Benc) [1983730] - net, xdp: Introduce xdp_init_buff utility routine (Jiri Benc) [1983730] - bridge: switchdev: Notify about VLAN protocol changes (Ivan Vecera) [1981461] - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under RCU (Ivan Vecera) [1981461] - bridge: add br_vlan_get_proto() (Ivan Vecera) [1981461] - bridge: add br_vlan_get_pvid_rcu() (Ivan Vecera) [1981461] - RDMA/bnxt_re: Fix a double free in bnxt_qplib_alloc_res (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Get rid of custom module reference counting (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Create direct symbol link between bnxt modules (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Depend on bnxt ethernet driver and not blindly select it (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix Kconfig indentation (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix error return code in bnxt_qplib_cq_process_terminal() (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Move device to error state upon device crash (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Allow bigger MR creation (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Code refactor while populating user MRs (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix max_qp_wrs reported (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix entry size during SRQ create (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix sizeof mismatch for allocation of pbl_tbl. (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Use rdma_umem_for_each_dma_block() (Selvin Xavier) [1921454 1923026] - [s390] tools/kvm_stat: Exempt time-based counters (Claudio Imbrenda) [1981802] - Documentation/admin-guide: intel_pstate: drop doubled word (David Arcari) [1973225] - Documentation: fix multiple typos found in the admin-guide subdirectory (David Arcari) [1973225] - cpufreq: intel_pstate: Fix active mode setting from command line (David Arcari) [1973225] - cpufreq: intel_pstate: Use passive mode by default without HWP (David Arcari) [1973225] - cpufreq: intel_pstate: Use HWP if enabled by platform firmware (David Arcari) [1973225] - cpufreq: intel_pstate: Simplify intel_pstate_update_perf_limits() (David Arcari) [1973225] - cpufreq: intel_pstate: Clean up frequency computations (David Arcari) [1973225] - cpufreq/intel_pstate: Fix wrong macro conversion (David Arcari) [1973225] - cpufreq: Convert to new X86 CPU match macros (David Arcari) [1973225] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (David Arcari) [1973225] - selftests/fpu: Fix debugfs_simple_attr.cocci warning (Vitaly Kuznetsov) [1919182] - selftest/fpu: avoid clang warning (Vitaly Kuznetsov) [1919182] - redhat/configs: Add Enable CONFIG_TEST_FPU (Vitaly Kuznetsov) [1919182] - selftests/fpu: Add an FPU selftest (Vitaly Kuznetsov) [1919182] - x86/fpu/64: Don't FNINIT in kernel_fpu_begin() (Vitaly Kuznetsov) [1919182] - x86/fpu: Make the EFI FPU calling convention explicit (Vitaly Kuznetsov) [1919182] - x86/mmx: Use KFPU_387 for MMX string operations (Vitaly Kuznetsov) [1919182] - x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state (Vitaly Kuznetsov) [1919182] - x86/fpu: Simplify kernel_fpu_begin() (Vitaly Kuznetsov) [1919182] - x86/fpu: Simplify kernel_fpu_end() (Vitaly Kuznetsov) [1919182] - x86/fpu: Don't use current->mm to check for a kthread (Vitaly Kuznetsov) [1919182] - x86/fpu: Don't export __kernel_fpu_{begin,end}() (Vitaly Kuznetsov) [1919182] - intel_th: pci: Add Alder Lake-P support (Tony Camuso) [1929493 1929494]- can: bcm: delay release of struct bcm_op after synchronize_rcu() (Hangbin Liu) [1975059] {CVE-2021-3609} - seq_file: Disallow extremely large seq buffer allocations (Ian Kent) [1975182] - nvme-pci: look for StorageD3Enable on companion ACPI device instead (Gopal Tiwari) [1965660] - prctl: exe link permission error changed from -EINVAL to -EPERM (Adrian Reber) [1960708] - prctl: Allow local CAP_CHECKPOINT_RESTORE to change /proc/self/exe (Adrian Reber) [1960708] - prctl_set_mm: refactor checks from validate_prctl_map (Adrian Reber) [1960708] - proc: allow access in init userns for map_files with CAP_CHECKPOINT_RESTORE (Adrian Reber) [1960708] - pid_namespace: use checkpoint_restore_ns_capable() for ns_last_pid (Adrian Reber) [1960708] - capabilities: Introduce CAP_CHECKPOINT_RESTORE (Adrian Reber) [1960708] - scripts: skip empty CAP_* strings (Adrian Reber) [1960708] - VMCI: Release resource if the work is already queued (Cathy Avery) [1978518] - perf vendor events arm64: Add Fujitsu A64FX pmu event (Michael Petlan) [1908109] - perf vendor events arm64: Add more common and uarch events (Michael Petlan) [1908109] - sunrpc: Avoid a KASAN slab-out-of-bounds bug in xdr_set_page_base() (Benjamin Coddington) [1969751] - xfs: sync lazy sb accounting on quiesce of read-only mounts (Bill O'Donnell) [1917220] - drm/dp_mst: Avoid to mess up payload table by ports in stale topology (Lyude Paul) [1944404] - drm/dp_mst: Do not set proposed vcpi directly (Lyude Paul) [1944404] - drm/qxl: add lock asserts to qxl_bo_vmap_locked + qxl_bo_vunmap_locked (Lyude Paul) [1944404 1907341] - drm/qxl: rework cursor plane (Lyude Paul) [1944404 1907341] - drm/qxl: move shadow handling to new qxl_prepare_shadow() (Lyude Paul) [1944404 1907341] - drm/qxl: fix monitors object vmap (Lyude Paul) [1944404 1907341] - drm/qxl: fix prime vmap (Lyude Paul) [1944404 1907341] - drm/qxl: add qxl_bo_vmap/qxl_bo_vunmap (Lyude Paul) [1944404 1907341] - drm/qxl: rename qxl_bo_kmap -> qxl_bo_vmap_locked (Lyude Paul) [1944404 1907341] - drm/qxl: more fence wait rework (Lyude Paul) [1944404 1907341] - drm/qxl: properly handle device init failures (Lyude Paul) [1944404 1907341] - drm/qxl: allocate dumb buffers in ram (Lyude Paul) [1944404 1907341] - drm/qxl: simplify qxl_fence_wait (Lyude Paul) [1944404 1907341] - drm/qxl: properly free qxl releases (Lyude Paul) [1944404 1907341] - drm/qxl: handle shadow in primary destroy (Lyude Paul) [1944404 1907341] - drm/qxl: properly pin/unpin shadow (Lyude Paul) [1944404 1907341] - drm/qxl: use drmm_mode_config_init (Lyude Paul) [1944404 1907341] - drm/i915/icp+: Use icp_hpd_irq_setup() instead of spt_hpd_irq_setup() (Lyude Paul) [1944404] - drm/i915/gen9_bc: Add W/A for missing STRAP config on TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915/gen9_bc: Introduce HPD pin mappings for TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915/gen9_bc: Introduce TGP PCH DDC pin mappings (Lyude Paul) [1944404] - drm/i915/gen9_bc: Recognize TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915: rename i915_rev_steppings->intel_step_info (Lyude Paul) [1944404] - drm/i915: rename disp_stepping->display_step and gt_stepping->gt_step (Lyude Paul) [1944404] - drm/i915: rename DISP_STEPPING->DISPLAY_STEP and GT_STEPPING->GT_STEP (Lyude Paul) [1944404] - drm/i915: switch TGL and ADL to the new stepping scheme (Lyude Paul) [1944404] - drm/i915: switch KBL to the new stepping scheme (Lyude Paul) [1944404] - drm/i915: add new helpers for accessing stepping info (Lyude Paul) [1944404] - drm/i915: split out stepping info to a new file (Lyude Paul) [1944404] - drm/i915: Add DISPLAY_VER() and related macros (Lyude Paul) [1944404] - drm/i915/display: Do not allow DC3CO if PSR SF is enabled (Lyude Paul) [1944404] - drm/i915: s/dev_priv/i915/ for the remainder of DDI clock routing (Lyude Paul) [1944404] - drm/i915: Relocate icl_sanitize_encoder_pll_mapping() (Lyude Paul) [1944404] - drm/i915: Use .disable_clock() for pll sanitation (Lyude Paul) [1944404] - drm/i915: Split adl-s/rkl from icl_ddi_combo_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract _cnl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Sprinkle WARN(!pll) into icl/dg1 .clock_enable() (Lyude Paul) [1944404] - drm/i915: Sprinkle a few missing locks around shared DDI clock registers (Lyude Paul) [1944404] - drm/i915: Use intel_de_rmw() for DDI clock routing (Lyude Paul) [1944404] - drm/i915: Extract icl+ .{enable,disable}_clock() vfuncs (Lyude Paul) [1944404] - drm/i915: Convert DG1 over to .{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i195: Extract cnl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract skl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract hsw_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Introduce .{enable,disable}_clock() encoder vfuncs (Lyude Paul) [1944404] - drm/i915: Use intel_ddi_clk_select() for FDI (Lyude Paul) [1944404] - drm/i915/adl_s: Add GT and CTX WAs for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Add display WAs for ADL-S (Lyude Paul) [1944404] - drm/i915/display: Add HAS_D12_PLANE_MINIMIZATION (Lyude Paul) [1944404] - drm/i915/adl_s: Re-use TGL GuC/HuC firmware (Lyude Paul) [1944404] - drm/i915/adl_s: Add power wells (Lyude Paul) [1944404] - drm/i915/adl_s: Update PHY_MISC programming (Lyude Paul) [1944404] - drm/i915/adl_s: Update combo PHY master/slave relationships (Lyude Paul) [1944404] - drm/i915/adl_s: Add vbt port and aux channel settings for adls (Lyude Paul) [1944404] - drm/i915/adl_s: Add adl-s ddc pin mapping (Lyude Paul) [1944404] - drm/i915/adl_s: Initialize display for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Configure Port clock registers for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Configure DPLL for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Add PHYs for Alderlake S (Lyude Paul) [1944404] - drm/i915/adl_s: Add PCH support (Lyude Paul) [1944404] - drm/i915/adl_s: Add ADL-S platform info and PCI ids (Lyude Paul) [1944404] - drm/i915/tgl: Use TGL stepping info for applying WAs (Lyude Paul) [1944404] - redhat/configs: Update CONFIG_HSA_AMD (Lyude Paul) - redhat/configs: Update CONFIG_DRM_AMDGPU_USERPTR (Lyude Paul) - DRM Backport v5.11 -> v5.12.4 (Lyude Paul) [1944404] - include/linux/kernel.h: add typeof_member() macro (Lyude Paul) [1944404] - drm: Use USB controller's DMA mask when importing dmabufs (Lyude Paul) [1944404] - PM: runtime: Add pm_runtime_get_if_active() (Lyude Paul) [1944404] - PCI: Add pci_rebar_bytes_to_size() (Lyude Paul) [1944404] - PCI: Export pci_rebar_get_possible_sizes() (Lyude Paul) [1944404] - DRM backport v5.10->v5.11 (Lyude Paul) [1944404] - dma-buf: Use struct dma_buf_map in dma_buf_vunmap() interfaces (Lyude Paul) [1944404] - dma-buf: Use struct dma_buf_map in dma_buf_vmap() interfaces (Lyude Paul) [1944404] - dma-buf: Add struct dma-buf-map for storing struct dma_buf.vaddr_ptr (Lyude Paul) [1944404] - PCI/PM: Do not generate wakeup event when runtime resuming device (Lyude Paul) [1944404] - PCI/PM: Rename pci_wakeup_bus() to pci_resume_bus() (Lyude Paul) [1944404] - blktrace: make relay callbacks const (Lyude Paul) [1944404] - drm/i915: make relay callbacks const (Lyude Paul) [1944404] - relay: allow the use of const callback structs (Lyude Paul) [1944404] - relay: make create_buf_file and remove_buf_file callbacks mandatory (Lyude Paul) [1944404] - relay: require non-NULL callbacks in relay_open() (Lyude Paul) [1944404] - relay: remove unused buf_mapped and buf_unmapped callbacks (Lyude Paul) [1944404] - drm/edid: fix objtool warning in drm_cvt_modes() (Lyude Paul) [1944404] - drm/edid: Fix uninitialized variable in drm_cvt_modes() (Lyude Paul) [1944404] - DRM backport v5.9.y -> v5.10 (Lyude Paul) [1944404] - time: Introduce jiffies64_to_msecs() (Lyude Paul) [1944404] - virtio: add dma-buf support for exported objects (Lyude Paul) [1944404] - objtool: Rename frame.h -> objtool.h (Lyude Paul) [1944404] - moduleparams: Add hexint type parameter (Lyude Paul) [1944404] - iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header (Lyude Paul) [1944404]- [s390] s390/zcrypt/pkey: introduce zcrypt_wait_api_operational() function (Claudio Imbrenda) [1881833] - [s390] s390/ap: ap bus userspace notifications for some bus conditions (Claudio Imbrenda) [1881833] - [s390] s390/pkey: fix paes selftest failure with paes and pkey static build (Claudio Imbrenda) [1881833] - KVM: nSVM: Avoid tainiting kernel by default (Vitaly Kuznetsov) [1982248] - KVM: s390x: implement KVM_CAP_SET_GUEST_DEBUG2 (Thomas Huth) [1945752] - KVM: s390: fix guarded storage control register handling (Thomas Huth) [1945752] - s390/protvirt: fix error return code in uv_info_init() (Thomas Huth) [1945752] - s390/uv: fix prot virt host indication compilation (Thomas Huth) [1945752] - KVM: s390: VSIE: fix MVPG handling for prefixing and MSO (Thomas Huth) [1945752] - KVM: s390: split kvm_s390_real_to_abs (Thomas Huth) [1945752] - KVM: s390: VSIE: correctly handle MVPG when in VSIE (Thomas Huth) [1945752] - KVM: s390: extend kvm_s390_shadow_fault to return entry pointer (Thomas Huth) [1945752] - s390/uv: add prot virt guest/host indication files (Thomas Huth) [1945752] - KVM: s390: split kvm_s390_logical_to_effective (Thomas Huth) [1945752] - KVM: s390: Fix comment spelling in kvm_s390_vcpu_start() (Thomas Huth) [1945752] - s390: uv: Fix sysfs max number of VCPUs reporting (Thomas Huth) [1945752] - KVM: s390: track synchronous pfault events in kvm_stat (Thomas Huth) [1945752] - s390/gmap: make gmap memcg aware (Thomas Huth) [1945752] - KVM: s390: Add memcg accounting to KVM allocations (Thomas Huth) [1945752] - s390/uv: handle destroy page legacy interface (Thomas Huth) [1945752] - KVM: s390: pv: Mark mm as protected after the set secure parameters and improve cleanup (Thomas Huth) [1945752] - virtio/s390: implement virtio-ccw revision 2 correctly (Thomas Huth) [1945752] - sfc: deprecate SFC9020 family (Siena) (Íñigo Huguet) [1926379] - NFS: Fix open coded versions of nfs_set_cache_invalid() in NFSv4 (Benjamin Coddington) [1936478] - NFS: Fix open coded versions of nfs_set_cache_invalid() (Benjamin Coddington) [1936478] - NFS: Clean up function nfs_mark_dir_for_revalidate() (Benjamin Coddington) [1936478] - NFSD: Mark exports of NFS as tech-preview (Benjamin Coddington) [1972229] - perf vendor events intel: Add missing skylake & icelake model numbers (Michael Petlan) [1971959] - tc-testing: add test for ct DNAT tuple collision (Marcelo Ricardo Leitner) [1964578] - tc-testing: add support for sending various scapy packets (Marcelo Ricardo Leitner) [1964578] - tc-testing: fix list handling (Marcelo Ricardo Leitner) [1964578] - net/sched: act_ct: handle DNAT tuple collision (Marcelo Ricardo Leitner) [1964578] - net/packet: remove data races in fanout operations (Balazs Nemeth) [1957270] - net/packet: remove locking from packet_rcv_has_room() (Balazs Nemeth) [1957270] - net: packetmmap: fix only tx timestamp on request (Balazs Nemeth) [1970404] - x86/sgx: Add TAINT_TECH_PREVIEW for virtual EPC (Bandan Das) [1977474] - cxgb4: fix thermal zone device registration (Raju Rangoju) [1954012] - powerpc/64s: Fix crashes when toggling stf barrier (Desnes A. Nunes do Rosario) [1964484] - iavf: Fix an error handling path in 'iavf_probe()' (Stefan Assmann) [1920276] - iavf: clean up packet type lookup table (Stefan Assmann) [1920276] - iavf: redefine the magic number for FDIR GTP-U header fields (Stefan Assmann) [1920276] - iavf: enhance the duplicated FDIR list scan handling (Stefan Assmann) [1920276] - iavf: change the flex-byte support number to macro definition (Stefan Assmann) [1920276] - iavf: remove duplicate free resources calls (Stefan Assmann) [1920276] - iavf: Support for modifying SCTP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Support for modifying UDP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Support for modifying TCP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Add framework to enable ethtool RSS config (Stefan Assmann) [1920276] - iavf: add support for UDP Segmentation Offload (Stefan Assmann) [1920276] - intel: clean up mismatched header comments (Stefan Assmann) [1920276] - iavf: Enable flex-bytes support (Stefan Assmann) [1920276] - iavf: Support Ethernet Type Flow Director filters (Stefan Assmann) [1920276] - iavf: Support IPv6 Flow Director filters (Stefan Assmann) [1920276] - iavf: Support IPv4 Flow Director filters (Stefan Assmann) [1920276] - iavf: Add framework to enable ethtool ntuple filters (Stefan Assmann) [1920276] - net: intel: iavf: fix error return code of iavf_init_get_resources() (Stefan Assmann) [1920276] - workqueue: Move the position of debug_work_activate() in __queue_work() (Waiman Long) [1977537] - workqueue: remove useless unlock() and lock() in series (Waiman Long) [1977537] - workqueue: Convert the pool::lock and wq_mayday_lock to raw_spinlock_t (Waiman Long) [1977537] - workqueue: Use rcuwait for wq_manager_wait (Waiman Long) [1977537] - workqueue: Remove unnecessary kfree() call in rcu_free_wq() (Waiman Long) [1977537] - workqueue: Fix an use after free in init_rescuer() (Waiman Long) [1977537] - workqueue: Use IS_ERR and PTR_ERR instead of PTR_ERR_OR_ZERO. (Waiman Long) [1977537] - workqueue: don't use wq_select_unbound_cpu() for bound works (Waiman Long) [1977537] - workqueue: Use pr_warn instead of pr_warning (Waiman Long) [1977537] - workqueue: more destroy_workqueue() fixes (Waiman Long) [1977537] - workqueue: Minor follow-ups to the rescuer destruction change (Waiman Long) [1977537] - kernel/workqueue: Document wq_worker_last_func() argument (Waiman Long) [1977537] - workqueue: Only unregister a registered lockdep key (Waiman Long) [1977537] - kernel: workqueue: clarify wq_worker_last_func() caller requirements (Waiman Long) [1977537] - workqueue: Fix spelling in source code comments (Waiman Long) [1977537] - workqueue: fix typo in comment (Waiman Long) [1977537] - ice: add correct exception tracing for XDP (Jonathan Toppins) [1920278] - ice: optimize for XDP_REDIRECT in xsk path (Jonathan Toppins) [1920278] - ice: Allow all LLDP packets from PF to Tx (Jonathan Toppins) [1920278] - ice: report supported and advertised autoneg using PHY capabilities (Jonathan Toppins) [1920278] - ice: handle the VF VSI rebuild failure (Jonathan Toppins) [1920278] - ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared (Jonathan Toppins) [1920278] - ice: Fix allowing VF to request more/less queues via virtchnl (Jonathan Toppins) [1920278] - ice: track AF_XDP ZC enabled queues in bitmap (Jonathan Toppins) [1920278] - ice: handle increasing Tx or Rx ring sizes (Jonathan Toppins) [1920278] - ice: Fix potential infinite loop when using u8 loop counter (Jonathan Toppins) [1920278] - ice: fix memory leak of aRFS after resuming from suspend (Jonathan Toppins) [1920278] - ice: Cleanup fltr list in case of allocation issues (Jonathan Toppins) [1920278] - ice: Use port number instead of PF ID for WoL (Jonathan Toppins) [1920278] - ice: Fix for dereference of NULL pointer (Jonathan Toppins) [1920278] - ice: remove DCBNL_DEVRESET bit from PF state (Jonathan Toppins) [1920278] - ice: fix memory allocation call (Jonathan Toppins) [1920278] - ice: prevent ice_open and ice_stop during reset (Jonathan Toppins) [1920278] - ice: Recognize 860 as iSCSI port in CEE mode (Jonathan Toppins) [1920278] - ice: Increase control queue timeout (Jonathan Toppins) [1920278] - ice: Continue probe on link/PHY errors (Jonathan Toppins) [1920278] - ice: fix napi work done reporting in xsk path (Jonathan Toppins) [1920278] - ice: update the number of available RSS queues (Jonathan Toppins) [1920278] - ice: Fix state bits on LLDP mode switch (Jonathan Toppins) [1920278] - ice: Account for port VLAN in VF max packet size calculation (Jonathan Toppins) [1920278] - ice: Set trusted VF as default VSI when setting allmulti on (Jonathan Toppins) [1920278] - ice: report correct max number of TCs (Jonathan Toppins) [1920278] - ice: skip NULL check against XDP prog in ZC path (Jonathan Toppins) [1920278] - ice: remove redundant checks in ice_change_mtu (Jonathan Toppins) [1920278] - ice: move skb pointer from rx_buf to rx_ring (Jonathan Toppins) [1920278] - ice: simplify ice_run_xdp (Jonathan Toppins) [1920278] - ice: Improve MSI-X fallback logic (Jonathan Toppins) [1920278] - ice: Fix trivial error message (Jonathan Toppins) [1920278] - ice: remove unnecessary casts (Jonathan Toppins) [1920278] - ice: Refactor DCB related variables out of the ice_port_info struct (Jonathan Toppins) [1920278] - ice: fix writeback enable logic (Jonathan Toppins) [1920278] - ice: Use PSM clock frequency to calculate RL profiles (Jonathan Toppins) [1920278] - ice: create scheduler aggregator node config and move VSIs (Jonathan Toppins) [1920278 1940527 1940535 1940542] {CVE-2020-24504 CVE-2020-24503 CVE-2020-24502} - ice: Add initial support framework for LAG (Jonathan Toppins) [1920278] - ice: Remove xsk_buff_pool from VSI structure (Jonathan Toppins) [1920278] - ice: implement new LLDP filter command (Jonathan Toppins) [1920278] - ice: log message when trusted VF goes in/out of promisc mode (Jonathan Toppins) [1920278] - ice: remove dead code (Jonathan Toppins) [1920278] - ice: use flex_array_size where possible (Jonathan Toppins) [1920278] - ice: Replace one-element array with flexible-array member (Jonathan Toppins) [1920278] - ice: display stored UNDI firmware version via devlink info (Jonathan Toppins) [1920278] - ice: display stored netlist versions via devlink info (Jonathan Toppins) [1920278] - ice: display some stored NVM versions via devlink info (Jonathan Toppins) [1920278] - ice: introduce function for reading from flash modules (Jonathan Toppins) [1920278] - ice: cache NVM module bank information (Jonathan Toppins) [1920278] - ice: introduce context struct for info report (Jonathan Toppins) [1920278] - ice: create flash_info structure and separate NVM version (Jonathan Toppins) [1920278] - ice: report timeout length for erasing during devlink flash (Jonathan Toppins) [1920278] - ice: Implement flow for IPv6 next header (extension header) (Jonathan Toppins) [1920278] - ice: fix FDir IPv6 flexbyte (Jonathan Toppins) [1920278] - ice: drop dead code in ice_receive_skb() (Jonathan Toppins) [1920278] - ice, xsk: Move Rx allocation out of while-loop (Jonathan Toppins) [1920278] - ice: avoid premature Rx buffer reuse (Jonathan Toppins) [1920278] - ice: Add space to unknown speed (Jonathan Toppins) [1920278] - ice: join format strings to same line as ice_debug (Jonathan Toppins) [1920278] - ice: silence static analysis warning (Jonathan Toppins) [1920278] - ice: cleanup misleading comment (Jonathan Toppins) [1920278] - ice: Remove vlan_ena from vsi structure (Jonathan Toppins) [1920278] - ice: Remove gate to OROM init (Jonathan Toppins) [1920278] - ice: Enable Support for FW Override (E82X) (Jonathan Toppins) [1920278] - ice: don't always return an error for Get PHY Abilities AQ command (Jonathan Toppins) [1920278] - ice: cleanup stack hog (Jonathan Toppins) [1920278] - mm: migrate: fix missing update page_private to hugetlb_page_subpool (Chris von Recklinghausen) [1981661] - mm,hugetlb: drop clearing of flag from prep_new_huge_page (Chris von Recklinghausen) [1981661] - hugetlb: fix uninitialized subpool pointer (Chris von Recklinghausen) [1981661] - include/linux/hugetlb.h: add synchronization information for new hugetlb specific flags (Chris von Recklinghausen) [1981661] - hugetlb: convert PageHugeFreed to HPageFreed flag (Chris von Recklinghausen) [1981661] - hugetlb: convert PageHugeTemporary() to HPageTemporary flag (Chris von Recklinghausen) [1981661] - mm: hugetlb: fix a race between freeing and dissolving the page (Chris von Recklinghausen) [1981661] - mm: don't let userspace spam allocations warnings (Xin Long) [1976699] - dm writecache: make writeback pause configurable (Mike Snitzer) [1978369] - dm writecache: pause writeback if cache full and origin being written directly (Mike Snitzer) [1978369] - dm io tracker: factor out IO tracker (Mike Snitzer) [1978369] - dm writecache: add optional "metadata_only" parameter (Mike Snitzer) [1978369] - dm writecache: add "cleaner" and "max_age" to Documentation (Mike Snitzer) [1978369] - dm writecache: write at least 4k when committing (Mike Snitzer) [1978369] - dm writecache: have ssd writeback wait if the kcopyd workqueue is busy (Mike Snitzer) [1978369] - dm writecache: use list_move instead of list_del_list_add in writecache_writeback() (Mike Snitzer) [1978369] - dm writecache: commit just one block, not a full page (Mike Snitzer) [1978369] - dm writecache: remove unused gfp_t argument from wc_add_block() (Mike Snitzer) [1978369] - dm writecache: interrupt writeback if suspended (Mike Snitzer) [1978369] - dm writecache: don't split bios when overwriting contiguous cache content (Mike Snitzer) [1978369] - dm kcopyd: avoid spin_lock_irqsave from process context (Mike Snitzer) [1978369] - dm kcopyd: avoid useless atomic operations (Mike Snitzer) [1978369] - x86/asm: Optimize memcpy_flushcache() (Mike Snitzer) [1978369] - IB/isert: Align target max I/O size to initiator size (Kamal Heib) [1930955] - IB/isert: set rdma cm afonly flag (Kamal Heib) [1930955]- xsk: Rollback reservation at NETDEV_TX_BUSY (Jiri Benc) [1882711] - xsk: Fix race in SKB mode transmit with shared cq (Jiri Benc) [1882711] - bpf: Only provide bpf_sock_from_file with CONFIG_NET (Jiri Benc) [1882711] - xsk: Validate socket state in xsk_recvmsg, prior touching socket members (Jiri Benc) [1882711] - samples/bpf: Fix spelling mistake "recieving" -> "receiving" (Jiri Benc) [1882711] - samples/bpf: Sample application for eBPF load and socket creation split (Jiri Benc) [1882711] - bpf: Adds support for setting window clamp (Jiri Benc) [1882711] - tcp: declare tcp_mmap() only when CONFIG_MMU is set (Jiri Benc) [1882711] - bpf: Remove trailing semicolon in macro definition (Jiri Benc) [1882711] - bpf: Allow bpf_{s,g}etsockopt from cgroup bind{4,6} hooks (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting infra for bpf maps (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting for xskmap maps (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting for sockmap and sockhash maps (Jiri Benc) [1882711] - bpf: Refine memcg-based memory accounting for xskmap maps (Jiri Benc) [1882711] - bpf: Refine memcg-based memory accounting for sockmap and sockhash maps (Jiri Benc) [1882711] - net, xdp, xsk: fix __sk_mark_napi_id_once napi_id error (Jiri Benc) [1882711] - samples/bpf: Add option to set the busy-poll budget (Jiri Benc) [1882711] - samples/bpf: Add busy-poll support to xdpsock (Jiri Benc) [1882711] - xsk: Propagate napi_id to XDP socket Rx path (Jiri Benc) [1882711] - xsk: Add busy-poll support for {recv,send}msg() (Jiri Benc) [1882711] - xsk: Check need wakeup flag in sendmsg() (Jiri Benc) [1882711] - xsk: Add support for recvmsg() (Jiri Benc) [1882711] - net: Add SO_BUSY_POLL_BUDGET socket option (Jiri Benc) [1882711] - net: Introduce preferred busy-polling (Jiri Benc) [1882711] - net: napi: use READ_ONCE()/WRITE_ONCE() (Jiri Benc) [1882711] - net: napi: add hard irqs deferral feature (Jiri Benc) [1882711] - fs/eventpoll.c: simply CONFIG_NET_RX_BUSY_POLL ifdefery (Jiri Benc) [1882711] - xdp: Remove the functions xsk_map_inc and xsk_map_put (Jiri Benc) [1882711] - xsk: Introduce batched Tx descriptor interfaces (Jiri Benc) [1882711] - xsk: Introduce padding between more ring pointers (Jiri Benc) [1882711] - net: page_pool: Add bulk support for ptr_ring (Jiri Benc) [1882711] - net: xdp: Introduce bulking for xdp tx return path (Jiri Benc) [1882711] - bpf: Rename some functions in bpf_sk_storage (Jiri Benc) [1882711] - bpf: Folding omem_charge() into sk_storage_charge() (Jiri Benc) [1882711] - net/smc: properly handle workqueue allocation failure (Andrea Claudi) [1955178] - Revert "net/smc: fix a NULL pointer dereference" (Andrea Claudi) [1955178] - KVM: selftests: evmcs_test: Test that KVM_STATE_NESTED_EVMCS is never lost (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Request to sync eVMCS from VMCS12 after migration (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Reset eVMCS clean fields data from prepare_vmcs02() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Force enlightened VMCS sync from nested_vmx_failValid() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Ignore 'hv_clean_fields' data when eVMCS data is copied in vmx_get_nested_state() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Release enlightened VMCS on VMCLEAR (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Introduce 'EVMPTR_MAP_PENDING' post-migration state (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Make copy_vmcs12_to_enlightened()/copy_enlightened_to_vmcs12() return 'void' (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Release eVMCS when enlightened VMENTRY was disabled (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Don't set 'dirty_vmcs12' flag on enlightened VMPTRLD (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Use '-1' in 'hv_evmcs_vmptr' to indicate that eVMCS is not in use (Vitaly Kuznetsov) [1940837] - KVM: selftests: evmcs_test: Check that VMCS12 is alway properly synced to eVMCS after restore (Vitaly Kuznetsov) [1940837] - KVM: selftests: evmcs_test: Check that VMLAUNCH with bogus EVMPTR is causing #UD (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Always make an attempt to map eVMCS after migration (Vitaly Kuznetsov) [1940837] - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working (Gopal Tiwari) [1973909] - KVM: x86: Unload MMU on guest TLB flush if TDP disabled to force MMU sync (Vitaly Kuznetsov) [1906634] - scsi: sbitmap: Silence a debug kernel warning triggered by sbitmap_put() (Ewan D. Milne) [1761937] - scsi: core: Replace sdev->device_busy with sbitmap (Ewan D. Milne) [1761937] - scsi: core: Make sure sdev->queue_depth is <= max(shost->can_queue, 1024) (Ewan D. Milne) [1761937] - scsi: core: Add scsi_device_busy() wrapper (Ewan D. Milne) [1761937] - scsi: blk-mq: Return budget token from .get_budget callback (Ewan D. Milne) [1761937] - scsi: blk-mq: Add callbacks for storing & retrieving budget token (Ewan D. Milne) [1761937] - scsi: sbitmap: Add sbitmap_calculate_shift() helper (Ewan D. Milne) [1761937] - scsi: sbitmap: Export sbitmap_weight (Ewan D. Milne) [1761937] - scsi: sbitmap: Move allocation hint into sbitmap (Ewan D. Milne) [1761937] - scsi: sbitmap: Add helpers for updating allocation hint (Ewan D. Milne) [1761937] - scsi: sbitmap: Maintain allocation round_robin in sbitmap (Ewan D. Milne) [1761937] - scsi: sbitmap: Remove sbitmap_clear_bit_unlock (Ewan D. Milne) [1761937] - blk-mq: pass request queue into get/put budget callback (Ewan D. Milne) [1761937] - dma-iommu: implement ->alloc_noncontiguous (Jerry Snitselaar) [1955767] - dma-iommu: refactor iommu_dma_alloc_remap (Jerry Snitselaar) [1955767] - dma-mapping: add a dma_alloc_noncontiguous API (Jerry Snitselaar) [1955767] - dma-mapping: refactor dma_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-mapping: add a dma_mmap_pages helper (Jerry Snitselaar) [1955767] - dma-mapping: remove the {alloc,free}_noncoherent methods (Jerry Snitselaar) [1955767] - iommu/vt-d: Make unnecessarily global functions static (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove unused function declarations (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove SVM_FLAG_PRIVATE_PASID (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove svm_dev_ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Use Real PCI DMA device for IRTE (Jerry Snitselaar) [1955767] - iommu/vt-d: Calculate and set flags for handle_mm_fault (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix build error of pasid_enable_wpe() with !X86 (Jerry Snitselaar) [1955767] - iommu/vt-d: Avoid unnecessary cache flush in pasid entry teardown (Jerry Snitselaar) [1955767] - iommu/vt-d: Enable write protect propagation from guest (Jerry Snitselaar) [1955767] - iommu/vt-d: Enable write protect for supervisor SVM (Jerry Snitselaar) [1955767] - iommu/vt-d: Report more information about invalidation errors (Jerry Snitselaar) [1955767] - iommu/vt-d: Disable SVM when ATS/PRI/PASID are not enabled in the device (Jerry Snitselaar) [1955767] - iommu: Stop exporting free_iova_fast() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_dma_free_cpu_cached_iovas() (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove IOVA domain rcache flushing for CPU offlining (Jerry Snitselaar) [1955767] - iova: Add CPU hotplug handler to flush rcaches (Jerry Snitselaar) [1955767] - iommu/iova: Improve restart logic (Jerry Snitselaar) [1955767] - iommu/iova: Add rbtree entry helper (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Remove the unused fields for PREFETCH_CONFIG command (Jerry Snitselaar) [1955767] - iommu/vt-d: Use user privilege for RID2PASID translation (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix sysfs leak in alloc_iommu() (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add a check to avoid invalid iotlb sync (Jerry Snitselaar) [1955767] - x86/events/amd/iommu: Fix invalid Perf result due to IOMMU PMC power-gating (Jerry Snitselaar) [1955767] - iommu: Fix a boundary issue to avoid performance drop (Jerry Snitselaar) [1955767] - iommu/vt-d: Check for allocation failure in aux_detach_device() (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove unused dma map/unmap trace events (Jerry Snitselaar) [1955767] - iommu/amd: Clear DMA ops when switching domain (Jerry Snitselaar) [1955767] - iommu/amd: Remove performance counter pre-initialization test (Jerry Snitselaar) [1955767] - Revert "iommu/amd: Fix performance counter initialization" (Jerry Snitselaar) [1955767] - iommu/dma: Resurrect the "forcedac" option (Jerry Snitselaar) [1955767] - iommu: Check dev->iommu in iommu_dev_xxx functions (Jerry Snitselaar) [1955767] - iommu/amd: Put newline after closing bracket in warning (Jerry Snitselaar) [1955767] - iommu/vt-d: Force to flush iotlb before creating superpage (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix an error handling path in 'intel_prepare_irq_remapping()' (Jerry Snitselaar) [1955767] - iommu/vt-d: Invalidate PASID cache when root/context entry changed (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove WO permissions on second-level paging entries (Jerry Snitselaar) [1955767] - iommu/vt-d: Report the right page fault address (Jerry Snitselaar) [1955767] - iommu/vt-d: Report right snoop capability when using FL for IOVA (Jerry Snitselaar) [1955767] - iommu/vt-d: Don't set then clear private data in prq_event_thread() (Jerry Snitselaar) [1955767] - iommu/vt-d: Reject unsupported page request modes (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: add bit field SFM into GERROR_ERR_MASK (Jerry Snitselaar) [1955767] - iommu/amd: Keep track of amd_iommu_irq_remap state (Jerry Snitselaar) [1955767] - iommu/amd: Don't call early_amd_iommu_init() when AMD IOMMU is disabled (Jerry Snitselaar) [1955767] - iommu/amd: Move Stoney Ridge check to detect_ivrs() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix status code for Allocate/Free PASID command (Jerry Snitselaar) [1955767] - iommu: Don't use lazy flush for untrusted device (Jerry Snitselaar) [1955767] - iommu/amd: Fix sleeping in atomic in increase_address_space() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_dev_has_feature() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_domain_window_disable() (Jerry Snitselaar) [1955767] - iommu: Stop exporting iommu_map_sg_atomic() (Jerry Snitselaar) [1955767] - iova: Stop exporting some more functions (Jerry Snitselaar) [1955767] - iova: Delete copy_reserved_iova() (Jerry Snitselaar) [1955767] - iova: Make has_iova_flush_queue() private (Jerry Snitselaar) [1955767] - iommu/vt-d: Add iotlb_sync_map callback (Jerry Snitselaar) [1955767] - iommu/vt-d: Move capability check code to cap_audit files (Jerry Snitselaar) [1921289] - iommu/vt-d: Audit IOMMU Capabilities and add helper functions (Jerry Snitselaar) [1921289] - iommu/vt-d: Fix 'physical' typos (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix compile error [-Werror=implicit-function-declaration] (Jerry Snitselaar) [1955767] - iommu/vt-d: Use INVALID response code instead of FAILURE (Jerry Snitselaar) [1920726] - iommu/vt-d: Clear PRQ overflow only when PRQ is empty (Jerry Snitselaar) [1955767] - iommu/vt-d: Preset Access/Dirty bits for IOVA over FL (Jerry Snitselaar) [1955767] - iommu/vt-d: Add qi_submit trace event (Jerry Snitselaar) [1955767] - iommu/vt-d: Consolidate duplicate cache invaliation code (Jerry Snitselaar) [1955767] - iommu/amd: Adopt IO page table framework for AMD IOMMU v1 page table (Jerry Snitselaar) [1955767] - iommu/amd: Introduce iommu_v1_map_page and iommu_v1_unmap_page (Jerry Snitselaar) [1955767] - iommu/amd: Introduce iommu_v1_iova_to_phys (Jerry Snitselaar) [1955767] - iommu/amd: Refactor fetch_pte to use struct amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Rename variables to be consistent with struct io_pgtable_ops (Jerry Snitselaar) [1955767] - iommu/amd: Remove amd_iommu_domain_get_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Restructure code for freeing page table (Jerry Snitselaar) [1955767] - iommu/amd: Move IO page table related functions (Jerry Snitselaar) [1955767] - iommu/amd: Declare functions as extern (Jerry Snitselaar) [1955767] - iommu/amd: Convert to using amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Move pt_root to struct amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Prepare for generic IO page table framework (Jerry Snitselaar) [1955767] - iommu/amd: Re-define amd_iommu_domain_encode_pgtable as inline (Jerry Snitselaar) [1955767] - iommu/amd: remove h from printk format specifier (Jerry Snitselaar) [1955767] - iommu/amd: Use DEFINE_SPINLOCK() for spinlock (Jerry Snitselaar) [1955767] - iommu/amd: Remove unnecessary assignment (Jerry Snitselaar) [1955767] - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Add cfg as a param in some macros (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Clarify LVL_SHIFT/BITS macro (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Use ias to check the valid iova in unmap (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Remove TLBI_ON_MAP quirk (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Allow io_pgtable_tlb ops optional (Jerry Snitselaar) [1955767] - iommu: Switch gather->end to the inclusive end (Jerry Snitselaar) [1955767] - iommu: Add iova and size as parameters in iotlb_sync_map (Jerry Snitselaar) [1955767] - iommu: Move iotlb_sync_map out from __iommu_map (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for VHE (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Make BTM optional for SVA (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Split arm_smmu_tlb_inv_range() (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Use DEFINE_RES_MEM() to simplify code (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Remove the page 1 fixup (Jerry Snitselaar) [1955767] - x86,swiotlb: Adjust SWIOTLB bounce buffer size for SEV guests (Jerry Snitselaar) [1955767] - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it (Jerry Snitselaar) [1955767] - iommu/vt-d: Do not use flush-queue when caching-mode is on (Jerry Snitselaar) [1955767] - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() (Jerry Snitselaar) [1955767] - iommu/amd: Use IVHD EFR for early initialization of IOMMU features (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix ineffective devTLB invalidation for subdevices (Jerry Snitselaar) [1920750 1920749] - iommu/vt-d: Fix general protection fault in aux_detach_device() (Jerry Snitselaar) [1920748] - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct intel_svm_dev (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix lockdep splat in sva bind()/unbind() (Jerry Snitselaar) [1955767] - Revert "iommu: Add quirk for Intel graphic devices in map_sg" (Jerry Snitselaar) [1955767] - iommu/intel: Fix memleak in intel_irq_remapping_alloc (Jerry Snitselaar) [1955767] - iommu/iova: fix 'domain' typos (Jerry Snitselaar) [1955767] - dma-iommu: remove __iommu_dma_mmap (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Remove tlb_flush_leaf (Jerry Snitselaar) [1955767] - iommu/vt-d: Avoid GFP_ATOMIC where it is not needed (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove set but not used variable (Jerry Snitselaar) [1955767] - iommu/vt-d: Cleanup after converting to dma-iommu ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Convert intel iommu driver to the iommu ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Don't clear GFP_DMA and GFP_DMA32 flags (Jerry Snitselaar) [1955767] - iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev (Jerry Snitselaar) [1955767] - iommu: Add quirk for Intel graphic devices in map_sg (Jerry Snitselaar) [1955767] - swiotlb: remove the tbl_dma_addr argument to swiotlb_tbl_map_single (Jerry Snitselaar) [1955767] - swiotlb-xen: remove start_dma_addr (Jerry Snitselaar) [1955767] - iommu: Allow the dma-iommu api to use bounce buffers (Jerry Snitselaar) [1955767] - iommu: Add iommu_dma_free_cpu_cached_iovas() (Jerry Snitselaar) [1955767] - iommu: Handle freelists when using deferred flushing in iommu drivers (Jerry Snitselaar) [1955767] - iommu/sva: Add PASID helpers (Jerry Snitselaar) [1955767] - iommu/ioasid: Add ioasid references (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Remove unused 'level' parameter from iopte_type() macro (Jerry Snitselaar) [1955767] - iommu: Defer the early return in arm_(v7s/lpae)_map (Jerry Snitselaar) [1955767] - iommu: Improve the performance for direct_mapping (Jerry Snitselaar) [1955767] - iommu: return error code when it can't get group (Jerry Snitselaar) [1955767] - iommu: Modify the description of iommu_sva_unbind_device (Jerry Snitselaar) [1955767] - iommu: Stop exporting free_iova_mem() (Jerry Snitselaar) [1955767] - iommu: Stop exporting alloc_iova_mem() (Jerry Snitselaar) [1955767] - iommu: Delete split_and_remove_iova() (Jerry Snitselaar) [1955767] - iommu: avoid taking iova_rbtree_lock twice (Jerry Snitselaar) [1955767] - iommu/iova: Free global iova rcache on iova alloc failure (Jerry Snitselaar) [1955767] - iommu/iova: Retry from last rb tree node if iova search fails (Jerry Snitselaar) [1955767] - iommu: Fix htmldocs warnings in sysfs-kernel-iommu_groups (Jerry Snitselaar) [1955767] - iommu: Document usage of "/sys/kernel/iommu_groups//type" file (Jerry Snitselaar) [1838589] - iommu: Take lock before reading iommu group default domain type (Jerry Snitselaar) [1838589] - iommu: Add support to change default domain of an iommu group (Jerry Snitselaar) [1838589] - iommu: Move def_domain type check for untrusted device into core (Jerry Snitselaar) [1838589] - iommu/arm-smmu-v3: Hook up ATC invalidation to mm ops (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Implement iommu_sva_bind/unbind() (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Move non-strict mode to use io_pgtable_domain_attr (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add support for pagetable config domain attribute (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Assign boolean values to a bool variable (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Add support to use system cache (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Add a domain attribute for pagetable configuration (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Support coherency for Mali LPAE (Jerry Snitselaar) [1955767] - dma-mapping: document dma_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-direct: simplify the DMA_ATTR_NO_KERNEL_MAPPING handling (Jerry Snitselaar) [1955767] - dma-direct: factor out a dma_direct_alloc_from_pool helper (Jerry Snitselaar) [1955767] - dma-direct check for highmem pages in dma_direct_alloc_pages (Jerry Snitselaar) [1955767] - firewire-ohci: use dma_alloc_pages (Jerry Snitselaar) [1955767] - dma-iommu: implement ->alloc_noncoherent (Jerry Snitselaar) [1955767] - dma-mapping: add new {alloc,free}_noncoherent dma_map_ops methods (Jerry Snitselaar) [1955767] - dma-mapping: add a new dma_alloc_pages API (Jerry Snitselaar) [1955767] - dma-mapping: add a new dma_alloc_noncoherent API (Jerry Snitselaar) [1955767] - drm/nouveau/gk20a: stop setting DMA_ATTR_NON_CONSISTENT (Jerry Snitselaar) [1955767] - mm: turn alloc_pages into an inline function (Jerry Snitselaar) [1955767] - dma-mapping: better document dma_addr_t and DMA_MAPPING_ERROR (Jerry Snitselaar) [1955767] - dma-mapping: move valid_dma_direction to dma-direction.h (Jerry Snitselaar) [1955767] - dma-debug: convert comma to semicolon (Jerry Snitselaar) [1955767] - dma-direct: Fix potential NULL pointer dereference (Jerry Snitselaar) [1955767] - dma-mapping: move the dma_declare_coherent_memory documentation (Jerry Snitselaar) [1955767] - dma-mapping: move dma_common_{mmap,get_sgtable} out of mapping.c (Jerry Snitselaar) [1955767] - dma-mapping: make support for dma ops optional (Jerry Snitselaar) [1955767] - dma-direct: rename and cleanup __phys_to_dma (Jerry Snitselaar) [1955767] - dma-direct: remove __dma_to_phys (Jerry Snitselaar) [1955767] - dma-direct: use phys_to_dma_direct in dma_direct_alloc (Jerry Snitselaar) [1955767] - dma-direct: lift gfp_t manipulation out of__dma_direct_alloc_pages (Jerry Snitselaar) [1955767] - dma-direct: remove dma_direct_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-debug: remove most exports (Jerry Snitselaar) [1955767] - dma-mapping: remove the dma_dummy_ops export (Jerry Snitselaar) [1955767] - dma-mapping: set default segment_boundary_mask to ULONG_MAX (Jerry Snitselaar) [1955767] - dma-mapping: introduce dma_get_seg_boundary_nr_pages() (Jerry Snitselaar) [1955767] - swiotlb: using SIZE_MAX needs limits.h included (Jerry Snitselaar) [1955767] - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb" (Jerry Snitselaar) [1955767] - swiotlb: Mark max_segment with static keyword (Jerry Snitselaar) [1955767] - swiotlb: Declare swiotlb_late_init_with_default_size() in header (Jerry Snitselaar) [1955767] - swiotlb: Use pa to print phys_addr_t variables (Jerry Snitselaar) [1955767] - dma-debug: remove debug_dma_assert_idle() function (Jerry Snitselaar) [1955767] - dma-mapping: move debug configuration options to kernel/dma (Jerry Snitselaar) [1955767] - dma-debug: fix debug_dma_assert_idle(), use rcu_read_lock() (Jerry Snitselaar) [1955767] - iommu: Check return of __iommu_attach_device() (Jerry Snitselaar) [1955767] - iommu/amd: Enforce 4k mapping for certain IOMMU data structures (Jerry Snitselaar) [1955767] - iommu: Fix a check in iommu_check_bind_data() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix a bug for PDP check in prq_event_thread (Jerry Snitselaar) [1955767] - iommu/vt-d: Check UAPI data processed by IOMMU core (Jerry Snitselaar) [1955767] - iommu/uapi: Handle data and argsz filled by users (Jerry Snitselaar) [1955767] - iommu/uapi: Rename uapi functions (Jerry Snitselaar) [1955767] - iommu/uapi: Use named union for user data (Jerry Snitselaar) [1955767] - iommu/uapi: Add argsz for user filled data (Jerry Snitselaar) [1955767] - docs: IOMMU user API (Jerry Snitselaar) [1955767] - iommu/dma: Handle init_iova_flush_queue() failure in dma-iommu path (Jerry Snitselaar) [1955767] - iommu/iova: Replace cmpxchg with xchg in queue_iova (Jerry Snitselaar) [1955767] - iommu/dma: Remove broken huge page handling (Jerry Snitselaar) [1955767] - iommu: Rename iommu_tlb_* functions to iommu_iotlb_* (Jerry Snitselaar) [1955767] - iommu/vt-d: Use device numa domain if RHSA is missing (Jerry Snitselaar) [1955767] - iommu/vt-d: Drop kerneldoc marker from regular comment (Jerry Snitselaar) [1955767] - iommu/amd: Re-purpose Exclusion range registers to support SNP CWWB (Jerry Snitselaar) [1955767] - iommu/amd: Add support for RMP_PAGE_FAULT and RMP_HW_ERR (Jerry Snitselaar) [1955767] - iommu/amd: Use 4K page for completion wait write-back semaphore (Jerry Snitselaar) [1955767] - iommu/amd: Add missing function prototypes to fix -Wmissing-prototypes (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add SVA device feature (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Check for SVA features (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Seize private ASID (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Share process page tables (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Move definitions to a header (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Move some definitions to a header (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Ensure queue is read after updating prod pointer (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Constify some helpers (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Prepare for the adreno-smmu implementation (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add support for split pagetables (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Pass io-pgtable config to implementation specific function (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix endianness annotations (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: permit users to disable msi polling (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: replace module_param_named by module_param for disable_bypass (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: replace symbolic permissions by octal permissions for module parameter (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix l1 stream table size in the error message (Jerry Snitselaar) [1955767] - ACPI: Do not create new NUMA domains from ACPI static tables that are not SRAT (Jerry Snitselaar) [1955767] - iommu/amd: Prevent NULL pointer dereference (Jerry Snitselaar) [1955767] - treewide: Use fallthrough pseudo-keyword (Jerry Snitselaar) [1955767] - virtio-iommu: convert to LE accessors (Jerry Snitselaar) [1955767] - virtio_iommu: correct tags for config space fields (Jerry Snitselaar) [1955767] - mmap locking API: use coccinelle to convert mmap_sem rwsem call sites (Jerry Snitselaar) [1955767] - iommu/iova: Unify format of the printed messages (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Move Arm SMMU drivers into their own subdirectory (Jerry Snitselaar) [1955767] - iommu/arm-smmu: move TLB timeout and spin count macros (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Call configuration impl hook before consuming features (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Manage ASIDs with xarray (Jerry Snitselaar) [1955767] - redhat/configs: Add CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Break insecure users by disabling bypass by default (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Workaround for Marvell Armada-AP806 SoC erratum #582743 (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Allow client devices to select direct mapping (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add global/context fault implementation hooks (Jerry Snitselaar) [1955767] - iommu/arm-smmu: add NVIDIA implementation for ARM MMU-500 usage (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix trivial typo (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Update impl quirks comment (Jerry Snitselaar) [1955767] - iommu: arm-smmu-impl: Convert to a generic reset implementation (Jerry Snitselaar) [1955767] - iommu: arm-smmu-impl: Add sdm845 implementation hook (Jerry Snitselaar) [1955767] - firmware/qcom_scm: Add scm call to handle smmu errata (Jerry Snitselaar) [1955767] - firmware: qcom_scm-64: Add atomic version of qcom_scm_call (Jerry Snitselaar) [1955767] - firmware: qcom: scm: Ensure 'a0' status code is treated as signed (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Batch context descriptor invalidation (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Write level-1 descriptors atomically (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for PCI PASID (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add second level of context descriptor table (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Prepare for handling arm_smmu_write_ctx_desc() failure (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Propagate ssid_bits (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for Substream IDs (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add context descriptor tables allocators (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Prepare arm_smmu_s1_cfg for SSID support (Jerry Snitselaar) [1955767] - dt-bindings: document PASID property for IOMMU masters (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Don't display an error when IRQ lines are missing (Jerry Snitselaar) [1955767] - selftests: net: add UDP GRO forwarding self-tests (Paolo Abeni) [1948493] - bareudp: allow UDP L4 GRO passthrou (Paolo Abeni) [1948493] - geneve: allow UDP L4 GRO passthrou (Paolo Abeni) [1948493] - vxlan: allow L4 GRO passthrough (Paolo Abeni) [1948493] - udp: never accept GSO_FRAGLIST packets (Paolo Abeni) [1948493] - udp: properly complete L4 GRO over UDP tunnel packet (Paolo Abeni) [1948493] - udp: skip L4 aggregation for UDP tunnel packets (Paolo Abeni) [1948493] - udp: fixup csum for GSO receive slow path (Paolo Abeni) [1948493] - udp: allow forwarding of plain (non-fraglisted) UDP GRO packets (Paolo Abeni) [1948493] - net: introduce a netdev feature for UDP GRO forwarding (Paolo Abeni) [1948493] - [s390] s390/pkey: support CCA and EP11 secure ECC private keys (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: Support for CCA APKA master keys (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: remove set_fs() invocation in zcrypt device driver (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: simplify cca_findcard2 loop code (Claudio Imbrenda) [1780669] - cxgb4: Add new T6 PCI device id 0x6092 (Rahul Lakkireddy) [1950186] - KVM: VMX: Don't use vcpu->run->internal.ndata as an array index (Jon Maloy) [1954219] {CVE-2021-3501} - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt() (Gopal Tiwari) [1978598] - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt() (Gopal Tiwari) [1978598] - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt() (Gopal Tiwari) [1978598] - x86/cpu: Avoid cpuinfo-induced IPIing of idle CPUs (Waiman Long) [1970499] - x86/cpu: Avoid cpuinfo-induced IPI pileups (Waiman Long) [1970499] - x86/cpu: Disable frequency requests via aperfmperf IPI for nohz_full CPUs (Waiman Long) [1970499] - x86: Convert some slow-path static_cpu_has() callers to boot_cpu_has() (Waiman Long) [1970499] - x86/ldt: Enable LDT user-mapping for PAE (Waiman Long) [1970499] - fanotify: fix merging marks masks with FAN_ONDIR (Miklos Szeredi) [1832099] - sfc: avoid duplicated code in ef10_sriov (Íñigo Huguet) [1931779] - sfc: explain that "attached" VFs only refer to Xen (Íñigo Huguet) [1931779] - sfc: error code if SRIOV cannot be disabled (Íñigo Huguet) [1931779] - sfc: avoid double pci_remove of VFs (Íñigo Huguet) [1931779] - tpm: fix error return code in tpm2_get_cc_attrs_tbl() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Reserve locality in tpm_tis_resume() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Extend locality handling to TPM2 in tpm_tis_gen_interrupt() (Jerry Snitselaar) [1920812] - tpm: vtpm_proxy: Avoid reading host log when using a virtual device (Jerry Snitselaar) [1920812] - tpm: acpi: Check eventlog signature before using it (Jerry Snitselaar) [1920812] - tpm: efi: Use local variable for calculating final log size (Jerry Snitselaar) [1920812] - tpm: Remove unintentional dump_stack() call (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Decorate tpm_tis_gen_interrupt() with request_locality() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Decorate tpm_get_timeouts() with request_locality() (Jerry Snitselaar) [1920812] - KEYS: trusted: Reserve TPM for seal and unseal operations (Jerry Snitselaar) [1920812] - tpm/ppi: Constify static struct attribute_group (Jerry Snitselaar) [1920812] - tpm: add sysfs exports for all banks of PCR registers (Jerry Snitselaar) [1920812] - tpm: Remove tpm_dev_wq_lock (Jerry Snitselaar) [1920812] - tpm: Fix fall-through warnings for Clang (Jerry Snitselaar) [1920812] - tpm_tis: Clean up locality release (Jerry Snitselaar) [1920812] - tpm_tis: Disable interrupts on ThinkPad T490s (Jerry Snitselaar) [1920812] - tpm_tis: Fix check_locality for correct locality acquisition (Jerry Snitselaar) [1920812] - fuse: invalidate attrs when page writeback completes (Vivek Goyal) [1966424] - net/sched: act_ct: remove rh_mark_used_feature mark (Marcelo Ricardo Leitner) [1973381] - selftests: netfilter: Pass family parameter "-f" to conntrack tool (Hangbin Liu) [1979203] - selftests: netfilter: remove unused cnt and simplify command testing (Hangbin Liu) [1979203] - selftests: netfilter: fix nft_meta.sh error reporting (Hangbin Liu) [1979203] - selftests: netfilter: add cpu counter check (Hangbin Liu) [1979203] - selftests: netfilter: add meta iif/oif match test (Hangbin Liu) [1979203] - NFS: Only change the cookie verifier if the directory page cache is empty (Benjamin Coddington) [1982825] - NFS: Fix handling of cookie verifier in uncached_readdir() (Benjamin Coddington) [1982825] - nfs: Subsequent READDIR calls should carry non-zero cookieverifier (Benjamin Coddington) [1982825] - Revert "[netdrv] net/mlx5e: Rx, Update page pool numa node when changed" (Alaa Hleihel) [1915308] - mlx5: net: zero-initialize tc skb extension on allocation (Alaa Hleihel) [1915308 1965418] - RDMA/mlx5: Don't add slave port to unaffiliated list (Alaa Hleihel) [1915308] - net/mlx5: Reset mkey index on creation (Alaa Hleihel) [1915308] - net/mlx5e: Don't create devices during unload flow (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix STEv1 incorrect L3 decapsulation padding (Alaa Hleihel) [1915308] - net/mlx5: SF_DEV, remove SF device on invalid state (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Allow setting GUID for host PF vport (Alaa Hleihel) [1915308 1967488] - net/mlx5: E-Switch, Read PF mac address (Alaa Hleihel) [1915308 1967488] - net/mlx5: Check that driver was probed prior attaching the device (Alaa Hleihel) [1915308] - net/mlx5: Fix error path for set HCA defaults (Alaa Hleihel) [1915308] - net/mlx5e: Disable TLS device offload in kdump mode (Alaa Hleihel) [1915308 1946647] - net/mlx5e: Disable TX MPWQE in kdump mode (Alaa Hleihel) [1915308 1946647] - net/mlx5e: kTLS, Add resiliency to RX resync failures (Alaa Hleihel) [1915308] - net/mlx5e: TX, Inline function mlx5e_tls_handle_tx_wqe() (Alaa Hleihel) [1915308] - net/mlx5e: TX, Inline TLS skb check (Alaa Hleihel) [1915308] - net/mlx5e: Cleanup unused function parameter (Alaa Hleihel) [1915308] - net/mlx5e: Remove non-essential TLS SQ state bit (Alaa Hleihel) [1915308] - net/mlx5e: Restrict usage of mlx5e_priv in params logic functions (Alaa Hleihel) [1915308] - net/mlx5e: Fix lost changes during code movements (Alaa Hleihel) [1915308] - net/mlx5e: Move params logic into its dedicated file (Alaa Hleihel) [1915308] - net/mlx5e: Pass q_counter indentifier as parameter to rq_param builders (Alaa Hleihel) [1915308] - net/mlx5e: Block offload of outer header csum for GRE tunnel (Alaa Hleihel) [1915308] - net/mlx5e: Block offload of outer header csum for UDP tunnels (Alaa Hleihel) [1915308] - Revert "net/mlx5: Arm only EQs with EQEs" (Alaa Hleihel) [1915308] - net/mlx5e: Verify dev is present in get devlink port ndo (Alaa Hleihel) [1915308] - net/mlx5: DR, Don't use SW steering when RoCE is not supported (Alaa Hleihel) [1915308] - net/mlx5: Consider RoCE cap before init RDMA resources (Alaa Hleihel) [1915308] - net/mlx5e: Fix page reclaim for dead peer hairpin (Alaa Hleihel) [1915308] - net/mlx5e: Remove dependency in IPsec initialization flows (Alaa Hleihel) [1915308] - net/mlx5e: Fix use-after-free of encap entry in neigh update handler (Alaa Hleihel) [1915308] - IB/mlx5: Fix initializing CQ fragments buffer (Alaa Hleihel) [1915308 1974263] - RDMA/mlx5: Block FDB rules when not in switchdev mode (Alaa Hleihel) [1915308] - RDMA/mlx5: Use different doorbell memory for different processes (Alaa Hleihel) [1915308] - net/mlx5: Fix duplicate included vhca_event.h (Alaa Hleihel) [1915308] - net/mlx5: Fix lag port remapping logic (Alaa Hleihel) [1915308] - net/mlx5e: IPsec/rep_tc: Fix rep_tc_update_skb drops IPsec packet (Alaa Hleihel) [1915308] - net/mlx5: DR, Create multi-destination flow table with level less than 64 (Alaa Hleihel) [1915308] - net/mlx5e: Fix adding encap rules to slow path (Alaa Hleihel) [1915308] - net/mlx5e: Check for needed capability for cvlan matching (Alaa Hleihel) [1915308] - net/mlx5: Check firmware sync reset requested is set before trying to abort it (Alaa Hleihel) [1915308] - net/mlx5e: Disable TLS offload for uplink representor (Alaa Hleihel) [1915308] - net/mlx5e: Fix incompatible casting (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix query DCT via DEVX (Alaa Hleihel) [1915308] - RDMA/mlx5: Recover from fatal event in dual port mode (Alaa Hleihel) [1915308] - net/mlx5: Set term table as an unmanaged flow table (Alaa Hleihel) [1915308] - net/mlx5e: Fix error path of updating netdev queues (Alaa Hleihel) [1915308] - net/mlx5e: Reject mirroring on source port change encap rules (Alaa Hleihel) [1915308] - net/mlx5e: Fix multipath lag activation (Alaa Hleihel) [1915308] - net/mlx5e: reset XPS on error flow if netdev isn't registered yet (Alaa Hleihel) [1915308] - net/mlx5e: Make sure fib dev exists in fib event (Alaa Hleihel) [1915308] - net/mlx5e: Fix null deref accessing lag dev (Alaa Hleihel) [1915308] - net/mlx5e: Fix nullptr in mlx5e_tc_add_fdb_flow() (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix show state inactive when its inactivated (Alaa Hleihel) [1915308] - net/mlx5: Set reformat action when needed for termination rules (Alaa Hleihel) [1915308] - net/mlx5e: Fix nullptr in add_vlan_push_action() (Alaa Hleihel) [1915308] - {net, RDMA}/mlx5: Fix override of log_max_qp by other device (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix SQ/RQ in doorbell bitmask (Alaa Hleihel) [1915308] - net/mlx5: Fix bit-wise and with zero (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix drop packet rule in egress table (Alaa Hleihel) [1915308] - net/mlx5: Fix spelling mistakes in mlx5_core_info message (Alaa Hleihel) [1915308] - net/mlx5: DR, Fixed typo in STE v0 (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix mlx5 rates to IB rates map (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix query RoCE port (Alaa Hleihel) [1915308] - RDMA/mlx5: Zero out ODP related items in the mlx5_ib_mr (Alaa Hleihel) [1915308] - net/mlx5e: Alloc flow spec using kvzalloc instead of kzalloc (Alaa Hleihel) [1915308] - net/mlx5: Avoid unnecessary operation (Alaa Hleihel) [1915308] - net/mlx5e: rep: Improve reg_cX conditions (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix return type (Alaa Hleihel) [1915308] - net/mlx5e: mlx5_tc_ct_init does not fail (Alaa Hleihel) [1915308] - net/mlx5: Fix indir stable stubs (Alaa Hleihel) [1915308] - net/mlx5e: Add missing include (Alaa Hleihel) [1915308] - net/mlx5e: fix mlx5e_tc_tun_update_header_ipv6 dummy definition (Alaa Hleihel) [1915308] - net/mlx5e: CT, Avoid false lock dependency warning (Alaa Hleihel) [1915308] - net/mlx5: Check returned value from health recover sequence (Alaa Hleihel) [1915308] - net/mlx5: Don't rely on interface state bit (Alaa Hleihel) [1915308] - net/mlx5: Remove second FW tracer check (Alaa Hleihel) [1915308] - net/mlx5: Separate probe vs. reload flows (Alaa Hleihel) [1915308] - net/mlx5: Remove impossible checks of interface state (Alaa Hleihel) [1915308] - net/mlx5: Don't skip vport check (Alaa Hleihel) [1915308] - net/mlx5e: Register nic devlink port for SF ports (Alaa Hleihel) [1915308] - vdpa/mlx5: Retrieve BAR address suitable any function (Alaa Hleihel) [1915308] - vdpa/mlx5: Use the correct dma device when registering memory (Alaa Hleihel) [1915308] - net/mlx5: SF, Extend SF table for additional SF id range (Alaa Hleihel) [1915308] - net/mlx5: SF, Split mlx5_sf_hw_table into two parts (Alaa Hleihel) [1915308] - net/mlx5: SF, Use helpers for allocation and free (Alaa Hleihel) [1915308] - net/mlx5: SF, Consider own vhca events of SF devices (Alaa Hleihel) [1915308] - net/mlx5: SF, Store and use start function id (Alaa Hleihel) [1915308] - net/mlx5: SF, Rely on hw table for SF devlink port allocation (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Consider SF ports of host PF (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Use xarray for vport number to vport and rep mapping (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Prepare to return total vports from eswitch struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Return eswitch max ports when eswitch is supported (Alaa Hleihel) [1915308] - net/mlx5: SF, Reuse stored hardware function id (Alaa Hleihel) [1915308] - net/mlx5: SF, Use device pointer directly (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Initialize eswitch acls ns when eswitch is enabled (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Move legacy code to a individual file (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Convert a macro to a helper routine (Alaa Hleihel) [1915308] - net/mlx5: E-Switch Make cleanup sequence mirror of init (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Make vport number u16 (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Skip querying SF enabled bits (Alaa Hleihel) [1915308] - IB/mlx5: Set right RoCE l3 type and roce version while deleting GID (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, move QoS specific fields to existing qos struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, cut down mlx5_vport_info structure size by 8 bytes (Alaa Hleihel) [1915308] - net/mlx5: Pair mutex_destory with mutex_init for rate limit table (Alaa Hleihel) [1915308] - net/mlx5: Allocate rate limit table when rate is configured (Alaa Hleihel) [1915308] - net/mlx5: Use helper to increment, decrement rate entry refcount (Alaa Hleihel) [1915308] - net/mlx5: Use helpers to allocate and free rl table entries (Alaa Hleihel) [1915308] - net/mlx5: Do not hold mutex while reading table constants (Alaa Hleihel) [1915308] - net/mlx5: Pack mlx5_rl_entry structure (Alaa Hleihel) [1915308] - net/mlx5: Use unsigned int for free_count (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, move QoS specific fields to existing qos struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, cut down mlx5_vport_info structure size by 8 bytes (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, let user to enable disable metadata (Alaa Hleihel) [1915308] - net/mlx5e: TC, Add support to offload sample action (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Handle sampled packets (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Refactor tc update skb function (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler restore handle API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler object API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler termination table API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Parse sample action (Alaa Hleihel) [1915308 1919649] - net/mlx5: Instantiate separate mapping objects for FDB and NIC tables (Alaa Hleihel) [1915308 1919649] - net/mlx5: Map register values to restore objects (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Set per vport table default group number (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Generalize per vport table API (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Rename functions to follow naming convention. (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Move vport table functions to a new file (Alaa Hleihel) [1915308 1919649] - net/mlx5: CT: Add support for mirroring (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Protect changing mode while adding rules (Alaa Hleihel) [1915308 1790457] - net/mlx5: E-Switch, Change mode lock from mutex to rw semaphore (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Do not reload ethernet ports when changing eswitch mode (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Unregister eth-reps devices first (Alaa Hleihel) [1915308 1790457] - net/mlx5: Move mlx5e hw resources into a sub object (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Register nic devlink port with switch id (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Verify dev is present in some ndos (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Use nic mode netdev ndos and ethtool ops for uplink representor (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Add offload stats ndos to nic netdev ops (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Distinguish nic and esw offload in tc setup block cb (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Allow legacy vf ndos only if in legacy mode (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Same max num channels for both nic and uplink profiles (Alaa Hleihel) [1915308 1790457] - net/mlx5e: fix ingress_ifindex check in mlx5e_flower_parse_meta (Alaa Hleihel) [1915308] - net/mlx5e: Fix setting of RS FEC mode (Alaa Hleihel) [1915308] - net/mlx5: Fix setting of devlink traps in switchdev mode (Alaa Hleihel) [1915308] - net/mlx5: DR, Add missing vhca_id consume from STEv1 (Alaa Hleihel) [1915308] - net/mlx5: fix kfree mismatch in indir_table.c (Alaa Hleihel) [1915308] - net/mlx5: Fix PBMC register mapping (Alaa Hleihel) [1915308] - net/mlx5: Fix PPLM register mapping (Alaa Hleihel) [1915308] - net/mlx5: Fix placement of log_max_flow_counter (Alaa Hleihel) [1915308] - net/mlx5: Fix HW spec violation configuring uplink (Alaa Hleihel) [1915308] - net/mlx5e: Guarantee room for XSK wakeup NOP on async ICOSQ (Alaa Hleihel) [1915308] - net/mlx5e: Consider geneve_opts for encap contexts (Alaa Hleihel) [1915308] - net/mlx5: Don't request more than supported EQs (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Fix RX counters atomicity (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Fix TX counters atomicity (Alaa Hleihel) [1915308] - net/mlx5: E-switch, Create vport miss group only if src rewrite is supported (Alaa Hleihel) [1915308 1915310] - net/mlx5e: Fix ethtool indication of connector type (Alaa Hleihel) [1915308] - net/mlx5: Delete auxiliary bus driver eth-rep first (Alaa Hleihel) [1915308] - net/mlx5e: Fix mapping of ct_label zero (Alaa Hleihel) [1915308] - net/mlx5: SF, do not use ecpu bit for vhca state processing (Alaa Hleihel) [1915308] - net/mlx5e: Fix division by 0 in mlx5e_select_queue (Alaa Hleihel) [1915308] - net/mlx5e: Fix error path for ethtool set-priv-flag (Alaa Hleihel) [1915308] - net/mlx5e: Offload tuple rewrite for non-CT flows (Alaa Hleihel) [1915308] - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP (Alaa Hleihel) [1915308] - net/mlx5: Add back multicast stats for uplink representor (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix typo in destroy_mkey inbox (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix potential shift wrapping of 32-bit value in STEv1 getter (Alaa Hleihel) [1915308] - net/mlx5: SF: Fix error flow of SFs allocation flow (Alaa Hleihel) [1915308] - net/mlx5: SF: Fix memory leak of work item (Alaa Hleihel) [1915308] - net/mlx5: SF, Correct vhca context size (Alaa Hleihel) [1915308] - net/mlx5e: E-switch, Fix rate calculation division (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix timestamp default mode (Alaa Hleihel) [1915308] - net/mlx5: Set QP timestamp mode to default (Alaa Hleihel) [1915308] - net/mlx5e: Fix error flow in change profile (Alaa Hleihel) [1915308] - net/mlx5: Disable VF tunnel TX offload if ignore_flow_level isn't supported (Alaa Hleihel) [1915308 1915310] - net/mlx5e: Check correct ip_version in decapsulation route resolution (Alaa Hleihel) [1915308] - net/mlx5: Fix turn-off PPS command (Alaa Hleihel) [1915308] - net/mlx5e: Don't match on Geneve options in case option masks are all zero (Alaa Hleihel) [1915308] - net/mlx5e: Revert parameters on errors when changing PTP state without reset (Alaa Hleihel) [1915308] - net/mlx5e: When changing XDP program without reset, take refs for XSK RQs (Alaa Hleihel) [1915308] - net/mlx5e: Set PTP channel pointer explicitly to NULL (Alaa Hleihel) [1915308] - net/mlx5e: Accumulate port PTP TX stats with other channels stats (Alaa Hleihel) [1915308] - net/mlx5e: RX, Mind the MPWQE gaps when calculating offsets (Alaa Hleihel) [1915308] - net/mlx5e: Enforce minimum value check for ICOSQ size (Alaa Hleihel) [1915308] - RDMA/mlx5: Set correct kernel-doc identifier (Alaa Hleihel) [1915308] - IB/mlx5: Add missing error code (Alaa Hleihel) [1915308] - configs: Enable mlx5 subfunction device support (Alaa Hleihel) [1915308 1851717] - net/mlx5: Add cyc2time HW translation mode support (Alaa Hleihel) [1915308 1919657] - net/mlx5: Move some PPS logic into helper functions (Alaa Hleihel) [1915308 1919657] - net/mlx5: Move all internal timer metadata into a dedicated struct (Alaa Hleihel) [1915308 1919657] - net/mlx5: Refactor init clock function (Alaa Hleihel) [1915308 1919657] - net/mlx5: Add register layout to support real-time time-stamp (Alaa Hleihel) [1915308 1919657] - RDMA/mlx5: Fail QP creation if the device can not support the CQE TS (Alaa Hleihel) [1915308] - RDMA/mlx5: Allow CQ creation without attached EQs (Alaa Hleihel) [1915308] - net/mlx5: Add new timestamp mode bits (Alaa Hleihel) [1915308 1919657] - net/mlx5: Remove TLS dependencies on XPS (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix error return code in mlx5_sf_dev_probe() (Alaa Hleihel) [1915308 1851717] - net/mlx5e: Fix error return code in mlx5e_tc_esw_init() (Alaa Hleihel) [1915308 1919647] - net/mlx5: Fix a NULL vs IS_ERR() check (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Fix tc_tun.h to verify MLX5_ESWITCH config (Alaa Hleihel) [1915308 1919647] - net/mlx5: Assign boolean values to a bool variable (Alaa Hleihel) [1915308] - net/mlx5e: Fix spelling mistake "Unknouwn" -> "Unknown" (Alaa Hleihel) [1915308] - net/mlx5e: Fix spelling mistake "channles" -> "channels" (Alaa Hleihel) [1915308] - net/mlx5: Delete device list leftover (Alaa Hleihel) [1915308] - net/mlx5_core: remove unused including (Alaa Hleihel) [1915308] - net/mlx5: fix spelling mistake in Kconfig "accelaration" -> "acceleration" (Alaa Hleihel) [1915308] - RDMA/mlx5: Support 400Gbps IB rate in mlx5 driver (Alaa Hleihel) [1915308] - RDMA/mlx5: Cleanup the synchronize_srcu() from the ODP flow (Alaa Hleihel) [1915308] - net/mlx5e: Handle FIB events to update tunnel endpoint device (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Rename some encap-specific API to generic names (Alaa Hleihel) [1915308 1919647] - net/mlx5e: TC preparation refactoring for routing update event (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Refactor neigh update infrastructure (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Create route entry infrastructure (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Extract tc tunnel encap/decap code to dedicated file (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Match recirculated packet miss in slow table using reg_c1 (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Refactor reg_c1 usage (Alaa Hleihel) [1915308 1919647] - net/mlx5e: VF tunnel RX traffic offloading (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Remove redundant match on tunnel destination mac (Alaa Hleihel) [1915308 1919647] - net/mlx5: E-Switch, Indirect table infrastructure (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Refactor tun routing helpers (Alaa Hleihel) [1915308 1919647] - net/mlx5e: VF tunnel TX traffic offloading (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5: E-Switch, Refactor rule offload forward action processing (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Always set attr mdev pointer (Alaa Hleihel) [1915308 1919647] - net/mlx5e: E-Switch, Maintain vhca_id to vport_num mapping (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5: E-Switch, Refactor setting source port (Alaa Hleihel) [1915308 1915310 1919647] - IB/mlx5: Use rdma_for_each_port for port iteration (Alaa Hleihel) [1915308] - RDMA/core: Introduce and use API to read port immutable data (Alaa Hleihel) [1915308] - IB/mlx5: Improve query port for representor port (Alaa Hleihel) [1915308] - IB/mlx5: Avoid calling query device for reading pkey table length (Alaa Hleihel) [1915308] - IB/mlx5: Move mlx5_port_caps from mlx5_core_dev to mlx5_ib_dev (Alaa Hleihel) [1915308] - IB/mlx5: Support default partition key for representor port (Alaa Hleihel) [1915308] - net/mlx5: DR, Avoid unnecessary csum recalculation on supporting devices (Alaa Hleihel) [1915308] - net/mlx5e: CT: remove useless conversion to PTR_ERR then ERR_PTR (Alaa Hleihel) [1915308] - net/mlx5e: accel, remove redundant space (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Improve TLS RX workqueue scope (Alaa Hleihel) [1915308] - net/mlx5e: remove h from printk format specifier (Alaa Hleihel) [1915308] - net/mlx5e: Increase indirection RQ table size to 256 (Alaa Hleihel) [1915308] - net/mlx5e: Enable napi in channel's activation stage (Alaa Hleihel) [1915308] - net/mlx5e: Move representor neigh init into profile enable (Alaa Hleihel) [1915308] - net/mlx5e: Avoid false lock depenency warning on tc_ht (Alaa Hleihel) [1915308] - net/mlx5e: Move set vxlan nic info to profile init (Alaa Hleihel) [1915308] - net/mlx5e: Move netif_carrier_off() out of mlx5e_priv_init() (Alaa Hleihel) [1915308] - net/mlx5e: Refactor mlx5e_netdev_init/cleanup to mlx5e_priv_init/cleanup (Alaa Hleihel) [1915308] - net/mxl5e: Add change profile method (Alaa Hleihel) [1915308] - net/mlx5e: Separate between netdev objects and mlx5e profiles initialization (Alaa Hleihel) [1915308] - net/mlx5: DR, Allow SW steering for sw_owner_v2 devices (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Copy all 64B whenever replacing STE in the head of miss-list (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Use HW specific logic API when writing STE (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Use the right size when writing partial STE into HW (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 modify header logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 action apply logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 setters and getters (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Allow native protocol support for HW STEv1 (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add HW STEv1 match logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add match STEv1 structs to ifc (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Fix potential shift wrapping of 32-bit value (Alaa Hleihel) [1915308 1851712] - net/mlx5e: Enable traps according to link state (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add listener to DMAC filter trap event (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add listener to trap event (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add trap entity to ETH driver (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Expose RX dma info helpers (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add flow steering DMAC trap rule (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add flow steering VLAN trap rule (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Optimize promiscuous mode (Alaa Hleihel) [1915308 1919652] - net/mlx5: Notify on trap action by blocking event (Alaa Hleihel) [1915308 1919652] - net/mlx5: Rename events notifier header (Alaa Hleihel) [1915308 1919652] - net/mlx5: Register to devlink DMAC filter trap (Alaa Hleihel) [1915308 1919652] - net/mlx5: Register to devlink ingress VLAN filter trap (Alaa Hleihel) [1915308 1919652] - net/mlx5: Add support for devlink traps in mlx5 core driver (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Support HTB offload (Alaa Hleihel) [1915308] - net/mlx5: SF, Port function state change support (Alaa Hleihel) [1915308 1851717] - net/mlx5: SF, Add port add delete functionality (Alaa Hleihel) [1915308 1851717] - net/mlx5: E-switch, Add eswitch helpers for SF vport (Alaa Hleihel) [1915308 1915310 1851717] - net/mlx5: E-switch, Prepare eswitch to handle SF vport (Alaa Hleihel) [1915308 1915310 1851717] - net/mlx5: SF, Add auxiliary device driver (Alaa Hleihel) [1915308 1851717] - net/mlx5: SF, Add auxiliary device support (Alaa Hleihel) [1915308 1851717] - net/mlx5: Introduce vhca state event notifier (Alaa Hleihel) [1915308 1851717] - RDMA/hw/mlx5/qp: Demote non-conformant kernel-doc header (Alaa Hleihel) [1915308] - RDMA/hw/mlx5/odp: Fix formatting and add missing descriptions in 'pagefault_data_segments()' (Alaa Hleihel) [1915308] - IB/mlx5: Make function static (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Remove unnecessary config flag usage (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Inline feature_check fast-path function (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Avoid unreachable return (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Enclose csum logic under ipsec config (Alaa Hleihel) [1915308] - net/mlx5e: CT: Remove redundant usage of zone mask (Alaa Hleihel) [1915308] - net/mlx5e: Remove redundant initialization to null (Alaa Hleihel) [1915308] - net/mlx5e: CT: Pass null instead of zero spec (Alaa Hleihel) [1915308] - net/mlx5e: E-Switch, Offload all chain 0 priorities when modify header and forward action is not supported (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, use new cap as condition for mpls over udp (Alaa Hleihel) [1915308] - net/mlx5e: Simplify condition on esw_vport_enable_qos() (Alaa Hleihel) [1915308] - net/mlx5: Add HW definition of reg_c_preserve (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 modify header logic (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE modify header actions per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 action apply logic (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE tx/rx actions per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 setters and getters (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE setters and getters per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move action apply logic to dr_ste (Alaa Hleihel) [1915308] - net/mlx5: DR, Refactor ICMP STE builder (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 look up types from mlx5_ifc_dr header (Alaa Hleihel) [1915308] - net/mlx5: DR, Merge similar DR STE SET macros (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix STEv0 source_eswitch_owner_vhca_id support (Alaa Hleihel) [1915308] - net/mlx5: DR, Remove unused macro definition from dr_ste (Alaa Hleihel) [1915308] - net/mlx5: DR, Move HW STEv0 match logic to a separate file (Alaa Hleihel) [1915308] - net/mlx5: DR, Use the new HW specific STE infrastructure (Alaa Hleihel) [1915308] - net/mlx5: DR, Move macros from dr_ste.c to header (Alaa Hleihel) [1915308] - net/mlx5: DR, Add infrastructure for supporting several steering formats (Alaa Hleihel) [1915308] - ext4: handle read only external journal device (Lukas Czerner) [1860929] - vfio/pci: Handle concurrent vma faults (Alex Williamson) [1976551] - vfio-pci: Use io_remap_pfn_range() for PCI IO memory (Alex Williamson) [1976551] - net: flow_dissector: Parse PTP L2 packet header (Ivan Vecera) [1971687] - net: vlan: Add parse protocol header ops (Ivan Vecera) [1971687] - PCI: hv: Remove bus device removal unused refcount/functions (Mohammed Gamal) [1982482] - PCI: hv: Fix a race condition when removing the device (Mohammed Gamal) [1982482] - RDMA/cxgb4: check for ipv6 address properly while destroying listener (Raju Rangoju) [1961313] - RDMA/cxgb4: Fix adapter LE hash errors while destroying ipv6 listening server (Raju Rangoju) [1961313] - RDMA: Convert sysfs device * show functions to use sysfs_emit() (Raju Rangoju) [1961313] - RDMA/iw_cxgb4: Disable delayed ack by default (Raju Rangoju) [1961313] - [infiniband] treewide: Remove uninitialized_var() usage (Raju Rangoju) [1961313] - RDMA/iw_cxgb4: cleanup device debugfs entries on ULD remove (Raju Rangoju) [1961313] - vfs: allow unprivileged whiteout creation (Miklos Szeredi) [1983608] - Documentation: kdump: update kdump guide (Baoquan He) [1938067] - docs: admin-guide: add kdump documentation into it (Baoquan He) [1938067] - docs: kdump: convert docs to ReST and rename to *.rst (Baoquan He) [1938067]- Revert "be2net: disable bh with spin_lock in be_process_mcc" (Petr Oros) [1973504] - nvmet-rdma: Fix NULL deref when SEND is completed with error (Gopal Tiwari) [1959856] - netfilter: nft_exthdr: Search chunks in SCTP packets only (Phil Sutter) [1868228] - netfilter: nft_exthdr: Fix for unsafe packet data read (Phil Sutter) [1868228] - netfilter: nft_exthdr: Support SCTP chunks (Phil Sutter) [1868228] - xfs: fix deadlock retry tracepoint arguments (Bill O'Donnell) [1937116] - xfs: fix xfs_reflink_unshare usage of filemap_write_and_wait_range (Bill O'Donnell) [1937116] - xfs: fix return of uninitialized value in variable error (Bill O'Donnell) [1937116] - xfs: fix scrub and remount-ro protection when running scrub (Bill O'Donnell) [1937116] - xfs: fix xfs_trans slab cache name (Bill O'Donnell) [1937116] - xfs: Fix a typo (Bill O'Donnell) [1937116] - xfs: Rudimentary spelling fix (Bill O'Donnell) [1937116] - xfs: Rudimentary typo fixes (Bill O'Donnell) [1937116] - xfs: fix dquot scrub loop cancellation (Bill O'Donnell) [1937116] - xfs: fix uninitialized variables in xrep_calc_ag_resblks (Bill O'Donnell) [1937116] - xfs: fix incorrect root dquot corruption error when switching group/project quota types (Bill O'Donnell) [1937116] - xfs: fix up build warnings when quotas are disabled (Bill O'Donnell) [1937116] - xfs: fix chown leaking delalloc quota blocks when fssetxattr fails (Bill O'Donnell) [1937116] - xfs: Fix assert failure in xfs_setattr_size() (Bill O'Donnell) [1937116] - xfs: fix an ABBA deadlock in xfs_rename (Bill O'Donnell) [1937116 1966609] - xfs: fix the forward progress assertion in xfs_iwalk_run_callbacks (Bill O'Donnell) [1937116] - xfs: fix parent pointer scrubber bailing out on unallocated inodes (Bill O'Donnell) [1937116] - xfs: revert "xfs: fix rmap key and record comparison functions" (Bill O'Donnell) [1937116] - xfs: don't allow NOWAIT DIO across extent boundaries (Bill O'Donnell) [1937116] - xfs: return corresponding errcode if xfs_initialize_perag() fail (Bill O'Donnell) [1937116] - xfs: ensure inobt record walks always make forward progress (Bill O'Donnell) [1937116] - xfs: fix forkoff miscalculation related to XFS_LITINO(mp) (Bill O'Donnell) [1937116] - xfs: directory scrub should check the null bestfree entries too (Bill O'Donnell) [1937116] - xfs: strengthen rmap record flags checking (Bill O'Donnell) [1937116] - xfs: fix the minrecs logic when dealing with inode root child blocks (Bill O'Donnell) [1937116] - xfs: fix a missing unlock on error in xfs_fs_map_blocks (Bill O'Donnell) [1937116] - xfs: fix brainos in the refcount scrubber's rmap fragment processor (Bill O'Donnell) [1937116] - xfs: fix rmap key and record comparison functions (Bill O'Donnell) [1937116] - xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents (Bill O'Donnell) [1937116] - xfs: fix flags argument to rmap lookup when converting shared file rmaps (Bill O'Donnell) [1937116] - xfs: only flush the unshared range in xfs_reflink_unshare (Bill O'Donnell) [1937116] - xfs: fix scrub flagging rtinherit even if there is no rt device (Bill O'Donnell) [1937116] - xfs: fix missing CoW blocks writeback conversion retry (Bill O'Donnell) [1937116] - xfs: set xefi_discard when creating a deferred agfl free log intent item (Bill O'Donnell) [1937116] - xfs: cancel intents immediately if process_intents fails (Bill O'Donnell) [1937116] - xfs: fix fallocate functions when rtextsize is larger than 1 (Bill O'Donnell) [1937116] - xfs: fix high key handling in the rt allocator's query_range function (Bill O'Donnell) [1937116] - xfs: annotate grabbing the realtime bitmap/summary locks in growfs (Bill O'Donnell) [1937116] - xfs: make xfs_growfs_rt update secondary superblocks (Bill O'Donnell) [1937116] - xfs: fix realtime bitmap/summary file truncation when growing rt volume (Bill O'Donnell) [1937116] - xfs: fix the indent in xfs_trans_mod_dquot (Bill O'Donnell) [1937116] - xfs: do the ASSERT for the arguments O_{u,g,p}dqpp (Bill O'Donnell) [1937116] - xfs: fix deadlock and streamline xfs_getfsmap performance (Bill O'Donnell) [1937116] - xfs: limit entries returned when counting fsmap records (Bill O'Donnell) [1937116] - xfs: only relog deferred intent items if free space in the log gets low (Bill O'Donnell) [1937116] - xfs: expose the log push threshold (Bill O'Donnell) [1937116] - xfs: periodically relog deferred intent items (Bill O'Donnell) [1937116] - xfs: change the order in which child and parent defer ops are finished (Bill O'Donnell) [1937116] - xfs: fix an incore inode UAF in xfs_bui_recover (Bill O'Donnell) [1937116] - xfs: clean up xfs_bui_item_recover iget/trans_alloc/ilock ordering (Bill O'Donnell) [1937116] - xfs: clean up bmap intent item recovery checking (Bill O'Donnell) [1937116] - xfs: xfs_defer_capture should absorb remaining transaction reservation (Bill O'Donnell) [1937116] - xfs: xfs_defer_capture should absorb remaining block reservations (Bill O'Donnell) [1937116] - xfs: proper replay of deferred ops queued during log recovery (Bill O'Donnell) [1937116] - xfs: remove XFS_LI_RECOVERED (Bill O'Donnell) [1937116] - xfs: remove xfs_defer_reset (Bill O'Donnell) [1937116] - xfs: fix finobt btree block recovery ordering (Bill O'Donnell) [1937116] - xfs: directly call xfs_generic_create() for ->create() and ->mkdir() (Bill O'Donnell) [1937116] - xfs: avoid shared rmap operations for attr fork extents (Bill O'Donnell) [1937116] - xfs: drop the obsolete comment on filestream locking (Bill O'Donnell) [1937116] - xfs: code cleanup in xfs_attr_leaf_entsize_{remote,local} (Bill O'Donnell) [1937116] - xfs: do the assert for all the log done items in xfs_trans_cancel (Bill O'Donnell) [1937116] - xfs: remove the unused parameter id from xfs_qm_dqattach_one (Bill O'Donnell) [1937116] - xfs: remove the redundant crc feature check in xfs_attr3_rmt_verify (Bill O'Donnell) [1937116] - xfs: fix some comments (Bill O'Donnell) [1937116] - xfs: remove the unnecessary xfs_dqid_t type cast (Bill O'Donnell) [1937116] - xfs: use the existing type definition for di_projid (Bill O'Donnell) [1937116] - xfs: remove the unused SYNCHRONIZE macro (Bill O'Donnell) [1937116] - xfs: clean up calculation of LR header blocks (Bill O'Donnell) [1937116] - xfs: avoid LR buffer overrun due to crafted h_len (Bill O'Donnell) [1937116] - xfs: don't release log intent items when recovery fails (Bill O'Donnell) [1937116] - xfs: attach inode to dquot in xfs_bui_item_recover (Bill O'Donnell) [1937116] - xfs: log new intent items created as part of finishing recovered intent items (Bill O'Donnell) [1937116] - xfs: check dabtree node hash values when loading child blocks (Bill O'Donnell) [1937116] - xfs: don't free rt blocks when we're doing a REMAP bunmapi call (Bill O'Donnell) [1937116] - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files (Bill O'Donnell) [1937116] - xfs: Set xfs_buf type flag when growing summary/bitmap files (Bill O'Donnell) [1937116] - xfs: drop extra transaction roll from inode extent truncate (Bill O'Donnell) [1937116] - xfs: don't propagate RTINHERIT -> REALTIME when there is no rtdev (Bill O'Donnell) [1937116] - xfs: ensure that fpunch, fcollapse, and finsert operations are aligned to rt extent size (Bill O'Donnell) [1937116] - xfs: refactor inode flags propagation code (Bill O'Donnell) [1937116] - xfs: make sure the rt allocator doesn't run off the end (Bill O'Donnell) [1937116] - xfs: Remove unneeded semicolon (Bill O'Donnell) [1937116] - xfs: force the log after remapping a synchronous-writes file (Bill O'Donnell) [1937116] - xfs: Convert xfs_attr_sf macros to inline functions (Bill O'Donnell) [1937116] - xfs: Use variable-size array for nameval in xfs_attr_sf_entry (Bill O'Donnell) [1937116] - xfs: Remove typedef xfs_attr_shortform_t (Bill O'Donnell) [1937116] - xfs: remove typedef xfs_attr_sf_entry_t (Bill O'Donnell) [1937116] - xfs: Remove kmem_zalloc_large() (Bill O'Donnell) [1937116] - xfs: enable big timestamps (Bill O'Donnell) [1937116] - xfs: trace timestamp limits (Bill O'Donnell) [1937116] - xfs: widen ondisk quota expiration timestamps to handle y2038+ (Bill O'Donnell) [1937116] - xfs: widen ondisk inode timestamps to deal with y2038+ (Bill O'Donnell) [1937116] - xfs: redefine xfs_ictimestamp_t (Bill O'Donnell) [1937116] - xfs: redefine xfs_timestamp_t (Bill O'Donnell) [1937116] - xfs: move xfs_log_dinode_to_disk to the log recovery code (Bill O'Donnell) [1937116] - xfs: refactor quota timestamp coding (Bill O'Donnell) [1937116] - xfs: refactor default quota grace period setting code (Bill O'Donnell) [1937116] - xfs: refactor quota expiration timer modification (Bill O'Donnell) [1937116] - xfs: explicitly define inode timestamp range (Bill O'Donnell) [1937116] - xfs: enable new inode btree counters feature (Bill O'Donnell) [1937116] - xfs: support inode btree blockcounts in online repair (Bill O'Donnell) [1937116] - xfs: support inode btree blockcounts in online scrub (Bill O'Donnell) [1937116] - xfs: use the finobt block counts to speed up mount times (Bill O'Donnell) [1937116] - xfs: store inode btree block counts in AGI header (Bill O'Donnell) [1937116] - xfs: reuse _xfs_buf_read for re-reading the superblock (Bill O'Donnell) [1937116] - xfs: remove xfs_getsb (Bill O'Donnell) [1937116] - xfs: simplify xfs_trans_getsb (Bill O'Donnell) [1937116] - xfs: remove xlog_recover_iodone (Bill O'Donnell) [1937116] - xfs: clear the read/write flags later in xfs_buf_ioend (Bill O'Donnell) [1937116] - xfs: use xfs_buf_item_relse in xfs_buf_item_done (Bill O'Donnell) [1937116] - xfs: simplify the xfs_buf_ioend_disposition calling convention (Bill O'Donnell) [1937116] - xfs: lift the XBF_IOEND_FAIL handling into xfs_buf_ioend_disposition (Bill O'Donnell) [1937116] - xfs: remove xfs_buf_ioerror_retry (Bill O'Donnell) [1937116] - xfs: refactor xfs_buf_ioerror_fail_without_retry (Bill O'Donnell) [1937116] - xfs: fold xfs_buf_ioend_finish into xfs_ioend (Bill O'Donnell) [1937116] - xfs: move the buffer retry logic to xfs_buf.c (Bill O'Donnell) [1937116] - xfs: refactor xfs_buf_ioend (Bill O'Donnell) [1937116] - xfs: mark xfs_buf_ioend static (Bill O'Donnell) [1937116] - xfs: refactor the buf ioend disposition code (Bill O'Donnell) [1937116] - xfs: xfs_iflock is no longer a completion (Bill O'Donnell) [1937116] - xfs: remove kmem_realloc() (Bill O'Donnell) [1937116] - xfs: don't update mtime on COW faults (Bill O'Donnell) [1937116] - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files (Bill O'Donnell) [1937116] - xfs: initialize the shortform attr header padding entry (Bill O'Donnell) [1937116] - xfs: fix off-by-one in inode alloc block reservation calculation (Bill O'Donnell) [1937116] - xfs: finish dfops on every insert range shift iteration (Bill O'Donnell) [1937116] - xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init (Bill O'Donnell) [1937116] - xfs: delete duplicated words + other fixes (Bill O'Donnell) [1937116] - xfs: Lift -ENOSPC handler from xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Simplify xfs_attr_node_addname (Bill O'Donnell) [1937116] - xfs: Simplify xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_removename_rmt (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_removename_setup (Bill O'Donnell) [1937116] - xfs: Add remote block helper functions (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_leaf_mark_incomplete (Bill O'Donnell) [1937116] - xfs: Add helpers xfs_attr_is_shortform and xfs_attr_set_shortform (Bill O'Donnell) [1937116] - xfs: Remove xfs_trans_roll in xfs_attr_node_removename (Bill O'Donnell) [1937116] - xfs: Remove unneeded xfs_trans_roll_inode calls (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_shrink (Bill O'Donnell) [1937116] - xfs: Pull up xfs_attr_rmtval_invalidate (Bill O'Donnell) [1937116] - xfs: Refactor xfs_attr_rmtval_remove (Bill O'Donnell) [1937116] - xfs: Pull up trans roll in xfs_attr3_leaf_clearflag (Bill O'Donnell) [1937116] - xfs: Factor out xfs_attr_rmtval_invalidate (Bill O'Donnell) [1937116] - xfs: Pull up trans roll from xfs_attr3_leaf_setflag (Bill O'Donnell) [1937116] - xfs: Refactor xfs_attr_try_sf_addname (Bill O'Donnell) [1937116] - xfs: Split apart xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Pull up trans handling in xfs_attr3_leaf_flipflags (Bill O'Donnell) [1937116] - xfs: Factor out new helper functions xfs_attr_rmtval_set (Bill O'Donnell) [1937116] - xfs: Check for -ENOATTR or -EEXIST (Bill O'Donnell) [1937116] - xfs: Add xfs_has_attr and subroutines (Bill O'Donnell) [1937116] - xfs: Refactor xfs_da_state_alloc() helper (Bill O'Donnell) [1937116] - xfs: remove xfs_zone_{alloc,zalloc} helpers (Bill O'Donnell) [1937116] - xfs: Modify xlog_ticket_alloc() to use kernel's MM API (Bill O'Donnell) [1937116] - xfs: Remove kmem_zone_zalloc() usage (Bill O'Donnell) [1937116] - xfs: Remove kmem_zone_alloc() usage (Bill O'Donnell) [1937116] - xfs: xfs_btree_staging.h: delete duplicated words (Bill O'Donnell) [1937116] - xfs: rename the ondisk dquot d_flags to d_type (Bill O'Donnell) [1937116] - xfs: improve ondisk dquot flags checking (Bill O'Donnell) [1937116] - xfs: create xfs_dqtype_t to represent quota types (Bill O'Donnell) [1937116] - xfs: replace a few open-coded XFS_DQTYPE_REC_MASK uses (Bill O'Donnell) [1937116] - xfs: remove unnecessary quota type masking (Bill O'Donnell) [1937116] - xfs: always use xfs_dquot_type when extracting type from a dquot (Bill O'Donnell) [1937116] - xfs: refactor quota type testing (Bill O'Donnell) [1937116] - xfs: remove the XFS_QM_IS[UGP]DQ macros (Bill O'Donnell) [1937116] - xfs: refactor testing if a particular dquot is being enforced (Bill O'Donnell) [1937116] - xfs: rename XFS_DQ_{USER,GROUP,PROJ} to XFS_DQTYPE_* (Bill O'Donnell) [1937116] - xfs: drop the type parameter from xfs_dquot_verify (Bill O'Donnell) [1937116] - xfs: add more dquot tracepoints (Bill O'Donnell) [1937116] - xfs: actually bump warning counts when we send warnings (Bill O'Donnell) [1937116] - xfs: assume the default quota limits are always set in xfs_qm_adjust_dqlimits (Bill O'Donnell) [1937116] - xfs: refactor xfs_trans_apply_dquot_deltas (Bill O'Donnell) [1937116] - xfs: refactor xfs_trans_dqresv (Bill O'Donnell) [1937116] - xfs: refactor xfs_qm_scall_setqlim (Bill O'Donnell) [1937116] - xfs: refactor quota exceeded test (Bill O'Donnell) [1937116] - xfs: remove unnecessary arguments from quota adjust functions (Bill O'Donnell) [1937116] - xfs: refactor default quota limits by resource (Bill O'Donnell) [1937116] - xfs: remove qcore from incore dquots (Bill O'Donnell) [1937116] - xfs: stop using q_core timers in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core warning counters in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core counters in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core limits in the quota code (Bill O'Donnell) [1937116] - xfs: use a per-resource struct for incore dquot data (Bill O'Donnell) [1937116] - xfs: stop using q_core.d_id in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core.d_flags in the quota code (Bill O'Donnell) [1937116] - xfs: make XFS_DQUOT_CLUSTER_SIZE_FSB part of the ondisk format (Bill O'Donnell) [1937116] - xfs: rename dquot incore state flags (Bill O'Donnell) [1937116] - xfs: refactor quotacheck flags usage (Bill O'Donnell) [1937116] - xfs: move the flags argument of xfs_qm_scall_trunc_qfiles to XFS_QMOPT_* (Bill O'Donnell) [1937116] - xfs: validate ondisk/incore dquot flags (Bill O'Donnell) [1937116] - xfs: fix inode quota reservation checks (Bill O'Donnell) [1937116] - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush (Bill O'Donnell) [1937116] - xfs: drain the buf delwri queue before xfsaild idles (Bill O'Donnell) [1937116] - xfs: remove duplicated include from xfs_buf_item.c (Bill O'Donnell) [1937116] - xfs: remove SYNC_WAIT and SYNC_TRYLOCK (Bill O'Donnell) [1937116] - xfs: get rid of unnecessary xfs_perag_{get,put} pairs (Bill O'Donnell) [1937116] - xfs: rtbitmap scrubber should check inode size (Bill O'Donnell) [1937116] - xfs: rtbitmap scrubber should verify written extents (Bill O'Donnell) [1937116] - xfs: remove xfs_inobp_check() (Bill O'Donnell) [1937116] - xfs: factor xfs_iflush_done (Bill O'Donnell) [1937116] - xfs: rework xfs_iflush_cluster() dirty inode iteration (Bill O'Donnell) [1937116] - xfs: rename xfs_iflush_int() (Bill O'Donnell) [1937116] - xfs: xfs_iflush() is no longer necessary (Bill O'Donnell) [1937116] - xfs: attach inodes to the cluster buffer when dirtied (Bill O'Donnell) [1937116] - xfs: rework stale inodes in xfs_ifree_cluster (Bill O'Donnell) [1937116] - xfs: clean up inode reclaim comments (Bill O'Donnell) [1937116] - xfs: remove SYNC_WAIT from xfs_reclaim_inodes() (Bill O'Donnell) [1937116] - xfs: remove SYNC_TRYLOCK from inode reclaim (Bill O'Donnell) [1937116] - xfs: don't block inode reclaim on the ILOCK (Bill O'Donnell) [1937116] - xfs: allow multiple reclaimers per AG (Bill O'Donnell) [1937116] - xfs: remove IO submission from xfs_reclaim_inode() (Bill O'Donnell) [1937116] - xfs: make inode reclaim almost non-blocking (Bill O'Donnell) [1937116] - xfs: pin inode backing buffer to the inode log item (Bill O'Donnell) [1937116] - xfs: move xfs_clear_li_failed out of xfs_ail_delete_one() (Bill O'Donnell) [1937116] - xfs: unwind log item error flagging (Bill O'Donnell) [1937116] - xfs: handle buffer log item IO errors directly (Bill O'Donnell) [1937116] - xfs: get rid of log item callbacks (Bill O'Donnell) [1937116] - xfs: clean up the buffer iodone callback functions (Bill O'Donnell) [1937116] - xfs: use direct calls for dquot IO completion (Bill O'Donnell) [1937116] - xfs: make inode IO completion buffer centric (Bill O'Donnell) [1937116] - xfs: clean up whacky buffer log item list reinit (Bill O'Donnell) [1937116] - xfs: call xfs_buf_iodone directly (Bill O'Donnell) [1937116] - xfs: mark log recovery buffers for completion (Bill O'Donnell) [1937116] - xfs: mark dquot buffers in cache (Bill O'Donnell) [1937116] - xfs: mark inode buffers in cache (Bill O'Donnell) [1937116] - xfs: add an inode item lock (Bill O'Donnell) [1937116] - xfs: remove logged flag from inode log item (Bill O'Donnell) [1937116] - xfs: Don't allow logging of XFS_ISTALE inodes (Bill O'Donnell) [1937116] - xfs: remove useless definitions in xfs_linux.h (Bill O'Donnell) [1937116] - xfs: use MMAPLOCK around filemap_map_pages() (Bill O'Donnell) [1937116] - xfs: move helpers that lock and unlock two inodes against userspace IO (Bill O'Donnell) [1937116] - xfs: refactor locking and unlocking two inodes against userspace IO (Bill O'Donnell) [1937116] - xfs: fix xfs_reflink_remap_prep calling conventions (Bill O'Donnell) [1937116] - xfs: reflink can skip remap existing mappings (Bill O'Donnell) [1937116] - xfs: only reserve quota blocks if we're mapping into a hole (Bill O'Donnell) [1937116] - xfs: only reserve quota blocks for bmbt changes if we're changing the data fork (Bill O'Donnell) [1937116] - xfs: redesign the reflink remap loop to fix blkres depletion crash (Bill O'Donnell) [1937116] - xfs: rename xfs_bmap_is_real_extent to is_written_extent (Bill O'Donnell) [1937116] - xfs: Couple of typo fixes in comments (Bill O'Donnell) [1937116] - xfs: fix use-after-free on CIL context on shutdown (Bill O'Donnell) [1937116] - xfs: flag files as supporting buffered async reads (Bill O'Donnell) [1937116] - fs: add FMODE_BUF_RASYNC (Bill O'Donnell) [1937116] - xfs: more lockdep whackamole with kmem_alloc* (Bill O'Donnell) [1937116 1965923] - xfs: rearrange xfs_inode_walk_ag parameters (Bill O'Donnell) [1937116] - xfs: straighten out all the naming around incore inode tree walks (Bill O'Donnell) [1937116] - xfs: move xfs_inode_ag_iterator to be closer to the perag walking code (Bill O'Donnell) [1937116] - xfs: use bool for done in xfs_inode_ag_walk (Bill O'Donnell) [1937116] - xfs: fix inode ag walk predicate function return values (Bill O'Donnell) [1937116] - xfs: refactor eofb matching into a single helper (Bill O'Donnell) [1937116] - xfs: remove __xfs_icache_free_eofblocks (Bill O'Donnell) [1937116] - xfs: remove flags argument from xfs_inode_ag_walk (Bill O'Donnell) [1937116] - xfs: remove xfs_inode_ag_iterator_flags (Bill O'Donnell) [1937116] - xfs: remove unused xfs_inode_ag_iterator function (Bill O'Donnell) [1937116] - xfs: replace open-coded XFS_ICI_NO_TAG (Bill O'Donnell) [1937116] - xfs: move eofblocks conversion function to xfs_ioctl.c (Bill O'Donnell) [1937116] - xfs: remove the m_active_trans counter (Bill O'Donnell) [1937116] - xfs: separate read-only variables in struct xfs_mount (Bill O'Donnell) [1937116] - xfs: reduce free inode accounting overhead (Bill O'Donnell) [1937116] - xfs: gut error handling in xfs_trans_unreserve_and_mod_sb() (Bill O'Donnell) [1937116] - xfs: cleanup xfs_idestroy_fork (Bill O'Donnell) [1937116] - xfs: move the fork format fields into struct xfs_ifork (Bill O'Donnell) [1937116] - xfs: move the per-fork nextents fields into struct xfs_ifork (Bill O'Donnell) [1937116] - xfs: remove xfs_ifree_local_data (Bill O'Donnell) [1937116] - xfs: remove the XFS_DFORK_Q macro (Bill O'Donnell) [1937116] - xfs: clean up xchk_bmap_check_rmaps usage of XFS_IFORK_Q (Bill O'Donnell) [1937116] - xfs: remove the NULL fork handling in xfs_bmapi_read (Bill O'Donnell) [1937116] - xfs: remove the special COW fork handling in xfs_bmapi_read (Bill O'Donnell) [1937116] - xfs: improve local fork verification (Bill O'Donnell) [1937116] - xfs: refactor xfs_inode_verify_forks (Bill O'Donnell) [1937116] - xfs: remove xfs_ifork_ops (Bill O'Donnell) [1937116] - xfs: remove xfs_iread (Bill O'Donnell) [1937116] - xfs: don't reset i_delayed_blks in xfs_iread (Bill O'Donnell) [1937116] - xfs: call xfs_dinode_verify from xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: handle unallocated inodes in xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: split xfs_iformat_fork (Bill O'Donnell) [1937116] - xfs: call xfs_iformat_fork from xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: xfs_bmapi_read doesn't take a fork id as the last argument (Bill O'Donnell) [1937116] - xfs: fix the warning message in xfs_validate_sb_common() (Bill O'Donnell) [1937116] - xfs: don't allow SWAPEXT if we'd screw up quota accounting (Bill O'Donnell) [1937116] - xfs: use ordered buffers to initialize dquot buffers during quotacheck (Bill O'Donnell) [1937116] - xfs: don't fail verifier on empty attr3 leaf block (Bill O'Donnell) [1937116] - xfs: Use the correct style for SPDX License Identifier (Bill O'Donnell) [1937116] - xfs: Replace zero-length array with flexible-array (Bill O'Donnell) [1937116] - xfs: ensure f_bfree returned by statfs() is non-negative (Bill O'Donnell) [1937116] - xfs: remove duplicate headers (Bill O'Donnell) [1937116] - xfs: fix unused variable warning in buffer completion on !DEBUG (Bill O'Donnell) [1937116] - xfs: remove unnecessary includes from xfs_log_recover.c (Bill O'Donnell) [1937116] - xfs: move log recovery buffer cancellation code to xfs_buf_item_recover.c (Bill O'Donnell) [1937116] - xfs: hoist setting of XFS_LI_RECOVERED to caller (Bill O'Donnell) [1937116] - xfs: refactor intent item iop_recover calls (Bill O'Donnell) [1937116] - xfs: refactor intent item RECOVERED flag into the log item (Bill O'Donnell) [1937116] - xfs: refactor adding recovered intent items to the log (Bill O'Donnell) [1937116] - xfs: refactor releasing finished intents during log recovery (Bill O'Donnell) [1937116] - xfs: refactor xlog_item_is_intent now that we're done converting (Bill O'Donnell) [1937116] - xfs: refactor recovered BUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered CUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered RUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered EFI log item playback (Bill O'Donnell) [1937116] - xfs: remove log recovery quotaoff item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery BUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery CUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery RUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery EFI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery icreate item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery dquot item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery inode item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery buffer item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item dispatch for pass1 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item dispatch for pass2 readhead functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item sorting into a generic dispatch structure (Bill O'Donnell) [1937116] - xfs: convert xfs_log_recover_item_t to struct xfs_log_recover_item (Bill O'Donnell) [1937116] - xfs: remove unused iget_flags param from xfs_imap_to_bp() (Bill O'Donnell) [1937116] - xfs: remove unused shutdown types (Bill O'Donnell) [1937116] - xfs: random buffer write failure errortag (Bill O'Donnell) [1937116] - xfs: remove unused iflush stale parameter (Bill O'Donnell) [1937116] - xfs: combine xfs_trans_ail_[remove|delete]() (Bill O'Donnell) [1937116] - xfs: drop unused shutdown parameter from xfs_trans_ail_remove() (Bill O'Donnell) [1937116] - xfs: use delete helper for items expected to be in AIL (Bill O'Donnell) [1937116] - xfs: acquire ->ail_lock from xfs_trans_ail_delete() (Bill O'Donnell) [1937116] - xfs: abort consistently on dquot flush failure (Bill O'Donnell) [1937116] - xfs: ratelimit unmount time per-buffer I/O error alert (Bill O'Donnell) [1937116] - xfs: refactor ratelimited buffer error messages into helper (Bill O'Donnell) [1937116] - xfs: reset buffer write failure state on successful completion (Bill O'Donnell) [1937116] - xfs: remove unnecessary shutdown check from xfs_iflush() (Bill O'Donnell) [1937116] - xfs: simplify inode flush error handling (Bill O'Donnell) [1937116] - xfs: factor out buffer I/O failure code (Bill O'Donnell) [1937116] - xfs: refactor failed buffer resubmission into xfsaild (Bill O'Donnell) [1937116] - xfs: spell out the parameter name for ->cancel_item (Bill O'Donnell) [1937116] - xfs: use a xfs_btree_cur for the ->finish_cleanup state (Bill O'Donnell) [1937116] - xfs: turn dfp_done into a xfs_log_item (Bill O'Donnell) [1937116] - xfs: refactor xfs_defer_finish_noroll (Bill O'Donnell) [1937116] - xfs: turn dfp_intent into a xfs_log_item (Bill O'Donnell) [1937116] - xfs: merge the ->diff_items defer op into ->create_intent (Bill O'Donnell) [1937116] - xfs: merge the ->log_item defer op into ->create_intent (Bill O'Donnell) [1937116] - xfs: factor out a xfs_defer_create_intent helper (Bill O'Donnell) [1937116] - xfs: remove the xfs_inode_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: remove the xfs_efd_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: remove the xfs_efi_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: refactor xlog_recover_buffer_pass1 (Bill O'Donnell) [1937116] - xfs: simplify xlog_recover_inode_ra_pass2 (Bill O'Donnell) [1937116] - xfs: factor out a xlog_buf_readahead helper (Bill O'Donnell) [1937116] - xfs: rename inode_list xlog_recover_reorder_trans (Bill O'Donnell) [1937116] - xfs: refactor the buffer cancellation table helpers (Bill O'Donnell) [1937116] - xfs: define printk_once variants for xfs messages (Bill O'Donnell) [1937116] - xfs: stop CONFIG_XFS_DEBUG from changing compiler flags (Bill O'Donnell) [1937116] - xfs: remove unnecessary check of the variable resblks in xfs_symlink (Bill O'Donnell) [1937116] - xfs: simplify the flags setting in xfs_qm_scall_quotaon (Bill O'Donnell) [1937116] - xfs: remove unnecessary assertion from xfs_qm_vop_create_dqattach (Bill O'Donnell) [1937116] - xfs: remove unnecessary variable udqp from xfs_ioctl_setattr (Bill O'Donnell) [1937116] - xfs: reserve quota inode transaction space only when needed (Bill O'Donnell) [1937116] - xfs: combine two if statements with same condition (Bill O'Donnell) [1937116] - xfs: trace quota allocations for all quota types (Bill O'Donnell) [1937116] - xfs: report unrecognized log item type codes during recovery (Bill O'Donnell) [1937116] - xfs: move inode flush to the sync workqueue (Bill O'Donnell) [1937116] - xfs: fix partially uninitialized structure in xfs_reflink_remap_extent (Bill O'Donnell) [1937116] - xfs: fix inode number overflow in ifree cluster helper (Bill O'Donnell) [1937116] - xfs: remove redundant variable assignment in xfs_symlink() (Bill O'Donnell) [1937116] - xfs: ratelimit inode flush on buffered write ENOSPC (Bill O'Donnell) [1937116] - xfs: return locked status of inode buffer on xfsaild push (Bill O'Donnell) [1937116] - xfs: trylock underlying buffer on dquot flush (Bill O'Donnell) [1937116] - xfs: remove unnecessary ternary from xfs_create (Bill O'Donnell) [1937116] - xfs: don't write a corrupt unmount record to force summary counter recalc (Bill O'Donnell) [1937116] - xfs: factor inode lookup from xfs_ifree_cluster (Bill O'Donnell) [1937116] - xfs: tail updates only need to occur when LSN changes (Bill O'Donnell) [1937116] - xfs: factor common AIL item deletion code (Bill O'Donnell) [1937116] - xfs: correctly acount for reclaimable slabs (Bill O'Donnell) [1937116] - xfs: Improve metadata buffer reclaim accountability (Bill O'Donnell) [1937116] - xfs: don't allow log IO to be throttled (Bill O'Donnell) [1937116] - xfs: Throttle commits on delayed background CIL push (Bill O'Donnell) [1937116] - xfs: Lower CIL flush limit for large logs (Bill O'Donnell) [1937116] - xfs: remove some stale comments from the log code (Bill O'Donnell) [1937116] - xfs: refactor unmount record writing (Bill O'Donnell) [1937116] - xfs: merge xlog_commit_record with xlog_write_done (Bill O'Donnell) [1937116] - xfs: split xlog_ticket_done (Bill O'Donnell) [1937116] - xfs: kill XLOG_TIC_INITED (Bill O'Donnell) [1937116] - xfs: refactor and split xfs_log_done() (Bill O'Donnell) [1937116] - xfs: re-order initial space accounting checks in xlog_write (Bill O'Donnell) [1937116] - xfs: don't try to write a start record into every iclog (Bill O'Donnell) [1937116] - xfs: validate the realtime geometry in xfs_validate_sb_common (Bill O'Donnell) [1937116] - xfs: shutdown on failure to add page to log bio (Bill O'Donnell) [1937116] - xfs: directory bestfree check should release buffers (Bill O'Donnell) [1937116] - xfs: drop all altpath buffers at the end of the sibling check (Bill O'Donnell) [1937116] - xfs: remove xlog_state_want_sync (Bill O'Donnell) [1937116] - xfs: move the ioerror check out of xlog_state_clean_iclog (Bill O'Donnell) [1937116] - xfs: refactor xlog_state_clean_iclog (Bill O'Donnell) [1937116] - xfs: remove the aborted parameter to xlog_state_done_syncing (Bill O'Donnell) [1937116] - xfs: simplify log shutdown checking in xfs_log_release_iclog (Bill O'Donnell) [1937116] - xfs: simplify the xfs_log_release_iclog calling convention (Bill O'Donnell) [1937116] - xfs: factor out a xlog_wait_on_iclog helper (Bill O'Donnell) [1937116] - xfs: merge xlog_cil_push into xlog_cil_push_work (Bill O'Donnell) [1937116] - xfs: remove the di_version field from struct icdinode (Bill O'Donnell) [1937116] - xfs: simplify a check in xfs_ioctl_setattr_check_cowextsize (Bill O'Donnell) [1937116] - xfs: simplify di_flags2 inheritance in xfs_ialloc (Bill O'Donnell) [1937116] - xfs: only check the superblock version for dinode size calculation (Bill O'Donnell) [1937116] - xfs: add a new xfs_sb_version_has_v3inode helper (Bill O'Donnell) [1937116] - xfs: add support for rmap btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for refcount btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for inode btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for free space btree staging cursors (Bill O'Donnell) [1937116] - xfs: support bulk loading of staged btrees (Bill O'Donnell) [1937116] - xfs: introduce fake roots for inode-rooted btrees (Bill O'Donnell) [1937116] - xfs: introduce fake roots for ag-rooted btrees (Bill O'Donnell) [1937116] - xfs: replace open-coded bitmap weight logic (Bill O'Donnell) [1937116] - xfs: rename xfs_bitmap to xbitmap (Bill O'Donnell) [1937116] - xfs: xrep_reap_extents should not destroy the bitmap (Bill O'Donnell) [1937116] - xfs: cleanup xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove dead code from xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove the unused return value from xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove the unused XLOG_UNMOUNT_REC_TYPE define (Bill O'Donnell) [1937116] - xfs: mark XLOG_FORCED_SHUTDOWN as unlikely (Bill O'Donnell) [1937116] - xfs: make the btree ag cursor private union anonymous (Bill O'Donnell) [1937116] - xfs: make the btree cursor union members named structure (Bill O'Donnell) [1937116] - xfs: make btree cursor private union anonymous (Bill O'Donnell) [1937116] - xfs: rename btree cursor private btree member flags (Bill O'Donnell) [1937116] - xfs: convert btree cursor inode-private member names (Bill O'Donnell) [1937116] - xfs: convert btree cursor ag-private member name (Bill O'Donnell) [1937116] - xfs: introduce new private btree cursor names (Bill O'Donnell) [1937116] - xfs: Use scnprintf() for avoiding potential buffer overflow (Bill O'Donnell) [1937116] - xfs: mark extended attr corrupt when lookup-by-hash fails (Bill O'Donnell) [1937116] - xfs: mark dir corrupt when lookup-by-hash fails (Bill O'Donnell) [1937116] - xfs: check owner of dir3 blocks (Bill O'Donnell) [1937116] - xfs: check owner of dir3 data blocks (Bill O'Donnell) [1937116] - xfs: check owner of dir3 free blocks (Bill O'Donnell) [1937116] - xfs: fix buffer corruption reporting when xfs_dir3_free_header_check fails (Bill O'Donnell) [1937116] - xfs: xfs_buf_corruption_error should take __this_address (Bill O'Donnell) [1937116] - xfs: add a function to deal with corrupt buffers post-verifiers (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_SBP (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_AGF (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_AGI (Bill O'Donnell) [1937116] - xfs: remove the xfs_agfl_t typedef (Bill O'Donnell) [1937116] - xfs: remove the agfl_bno member from struct xfs_agfl (Bill O'Donnell) [1937116] - xfs: switch xfs_attrmulti_attr_get to lazy attr buffer allocation (Bill O'Donnell) [1937116] - xfs: only allocate the buffer size actually needed in __xfs_set_acl (Bill O'Donnell) [1937116] - xfs: clean up bufsize alignment in xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: embedded the attrlist cursor into struct xfs_attr_list_context (Bill O'Donnell) [1937116] - xfs: remove XFS_DA_OP_INCOMPLETE (Bill O'Donnell) [1937116] - xfs: clean up the attr flag confusion (Bill O'Donnell) [1937116] - xfs: clean up the ATTR_REPLACE checks (Bill O'Donnell) [1937116] - xfs: improve xfs_forget_acl (Bill O'Donnell) [1937116] - xfs: lift cursor copy in/out into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: lift buffer allocation into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: lift common checks into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: rename xfs_attr_list_int to xfs_attr_list (Bill O'Donnell) [1937116] - xfs: move the legacy xfs_attr_list to xfs_ioctl.c (Bill O'Donnell) [1937116] - xfs: open code ATTR_ENTSIZE (Bill O'Donnell) [1937116] - xfs: remove the unused ATTR_ENTRY macro (Bill O'Donnell) [1937116] - xfs: cleanup struct xfs_attr_list_context (Bill O'Donnell) [1937116] - xfs: factor out a xfs_attr_match helper (Bill O'Donnell) [1937116] - xfs: replace ATTR_KERNOTIME with XFS_DA_OP_NOTIME (Bill O'Donnell) [1937116] - xfs: remove ATTR_ALLOC and XFS_DA_OP_ALLOCVAL (Bill O'Donnell) [1937116] - xfs: remove ATTR_KERNOVAL (Bill O'Donnell) [1937116] - xfs: remove the xfs_inode argument to xfs_attr_get_ilocked (Bill O'Donnell) [1937116] - xfs: pass an initialized xfs_da_args to xfs_attr_get (Bill O'Donnell) [1937116] - xfs: pass an initialized xfs_da_args structure to xfs_attr_set (Bill O'Donnell) [1937116] - xfs: turn xfs_da_args.value into a void pointer (Bill O'Donnell) [1937116] - xfs: remove the MAXNAMELEN check from xfs_attr_args_init (Bill O'Donnell) [1937116] - xfs: remove the name == NULL check from xfs_attr_args_init (Bill O'Donnell) [1937116] - xfs: factor out a helper for a single XFS_IOC_ATTRMULTI_BY_HANDLE op (Bill O'Donnell) [1937116] - xfs: use strndup_user in XFS_IOC_ATTRMULTI_BY_HANDLE (Bill O'Donnell) [1937116] - xfs: merge xfs_attrmulti_attr_remove into xfs_attrmulti_attr_set (Bill O'Donnell) [1937116] - xfs: merge xfs_attr_remove into xfs_attr_set (Bill O'Donnell) [1937116] - xfs: remove the ATTR_INCOMPLETE flag (Bill O'Donnell) [1937116] - xfs: reject invalid flags combinations in XFS_IOC_ATTRLIST_BY_HANDLE (Bill O'Donnell) [1937116] - xfs: rework collapse range into an atomic operation (Bill O'Donnell) [1937116] - xfs: rework insert range into an atomic operation (Bill O'Donnell) [1937116] - xfs: open code insert range extent split helper (Bill O'Donnell) [1937116] - xfs: Add missing annotation to xfs_ail_check() (Bill O'Donnell) [1937116] - xfs: fix an undefined behaviour in _da3_path_shift (Bill O'Donnell) [1937116] - xfs: ratelimit xfs_discard_page messages (Bill O'Donnell) [1937116] - xfs: ratelimit xfs_buf_ioerror_alert messages (Bill O'Donnell) [1937116] - xfs: remove the kuid/kgid conversion wrappers (Bill O'Donnell) [1937116] - xfs: remove the icdinode di_uid/di_gid members (Bill O'Donnell) [1937116] - xfs: ensure that the inode uid/gid match values match the icdinode ones (Bill O'Donnell) [1937116] - xfs: improve error message when we can't allocate memory for xfs_buf (Bill O'Donnell) [1937116] - ceph: fix test for whether we can skip read when writing beyond EOF (Jeff Layton) [1971101] - redhat/configs: Add CONFIG_X86_SGX_KVM (Bandan Das) [1494649] - KVM: x86: Fix implicit enum conversion goof in scattered reverse CPUID code (Bandan Das) [1494649] - KVM: x86: Add capability to grant VM access to privileged SGX attribute (Bandan Das) [1494649] - KVM: VMX: Enable SGX virtualization for SGX1, SGX2 and LC (Bandan Das) [1494649] - KVM: VMX: Add ENCLS[EINIT] handler to support SGX Launch Control (LC) (Bandan Das) [1494649] - KVM: VMX: Add emulation of SGX Launch Control LE hash MSRs (Bandan Das) [1494649] - KVM: VMX: Add SGX ENCLS[ECREATE] handler to enforce CPUID restrictions (Bandan Das) [1494649] - KVM: VMX: Frame in ENCLS handler for SGX virtualization (Bandan Das) [1494649] - KVM: VMX: Add basic handling of VM-Exit from SGX enclave (Bandan Das) [1494649] - KVM: x86: Add reverse-CPUID lookup support for scattered SGX features (Bandan Das) [1494649] - KVM: x86: Add support for reverse CPUID lookup of scattered features (Bandan Das) [1494649] - KVM: x86: Define new #PF SGX error code bit (Bandan Das) [1494649] - KVM: x86: Export kvm_mmu_gva_to_gpa_{read,write}() for SGX (VMX) (Bandan Das) [1494649] - x86/sgx: Mark sgx_vepc_vm_ops static (Bandan Das) [1494649] - x86/sgx: Do not update sgx_nr_free_pages in sgx_setup_epc_section() (Bandan Das) [1494649] - x86/sgx: Move provisioning device creation out of SGX driver (Bandan Das) [1494649] - x86/sgx: Add helpers to expose ECREATE and EINIT to KVM (Bandan Das) [1494649] - x86/sgx: Add helper to update SGX_LEPUBKEYHASHn MSRs (Bandan Das) [1494649] - x86/sgx: Add encls_faulted() helper (Bandan Das) [1494649] - x86/sgx: Add SGX2 ENCLS leaf definitions (EAUG, EMODPR and EMODT) (Bandan Das) [1494649] - x86/sgx: Move ENCLS leaf definitions to sgx.h (Bandan Das) [1494649] - x86/sgx: Expose SGX architectural definitions to the kernel (Bandan Das) [1494649] - x86/sgx: Initialize virtual EPC driver even when SGX driver is disabled (Bandan Das) [1494649] - x86/cpu/intel: Allow SGX virtualization without Launch Control support (Bandan Das) [1494649] - x86/sgx: Introduce virtual EPC for use by KVM guests (Bandan Das) [1494649] - x86/sgx: Add SGX_CHILD_PRESENT hardware error code (Bandan Das) [1494649] - x86/sgx: Wipe out EREMOVE from sgx_free_epc_page() (Bandan Das) [1494649] - x86/cpufeatures: Add SGX1 and SGX2 sub-features (Bandan Das) [1494649] - x86/cpufeatures: Make SGX_LC feature bit depend on SGX bit (Bandan Das) [1494649] - x86/sgx: Remove unnecessary kmap() from sgx_ioc_enclave_init() (Bandan Das) [1494649] - selftests/sgx: Use getauxval() to simplify test code (Bandan Das) [1494649] - selftests/sgx: Improve error detection and messages (Bandan Das) [1494649] - x86/sgx: Add a basic NUMA allocation scheme to sgx_alloc_epc_page() (Bandan Das) [1494649] - x86/sgx: Replace section->init_laundry_list with sgx_dirty_page_list (Bandan Das) [1494649] - x86/sgx: Maintain encl->refcount for each encl->mm_list entry (Bandan Das) [1494649] - MAINTAINERS: Add Dave Hansen as reviewer for INTEL SGX (Bandan Das) [1494649] - x86/NUMA: Provide a range-to-target_node lookup facility (Bandan Das) [1494649] - x86/mm: Introduce CONFIG_NUMA_KEEP_MEMINFO (Bandan Das) [1494649] - configs: Enable CONFIG_MLXBF_GIGE on aarch64 (Alaa Hleihel) [1803489] - Add Mellanox BlueField Gigabit Ethernet driver (Alaa Hleihel) [1803489] - integrity: Use current_uid() in integrity_audit_message() (Richard Guy Briggs) [1957052] - ima: AppArmor satisfies the audit rule requirements (Richard Guy Briggs) [1957052] - IMA: Add audit log for failure conditions (Richard Guy Briggs) [1957052] - integrity: Add errno field in audit message (Richard Guy Briggs) [1957052] - audit: add blank line after variable declarations (Richard Guy Briggs) [1957052] - audit: drop /proc/PID/loginuid documentation Format field (Richard Guy Briggs) [1957052] - audit: avoid -Wempty-body warning (Richard Guy Briggs) [1957052] - audit: document /proc/PID/sessionid (Richard Guy Briggs) [1957052] - audit: document /proc/PID/loginuid (Richard Guy Briggs) [1957052] - MAINTAINERS: update audit files (Richard Guy Briggs) [1957052] - audit: further cleanup of AUDIT_FILTER_ENTRY deprecation (Richard Guy Briggs) [1957052] - netfilter: nftables: fix a warning message in nf_tables_commit_audit_collect() (Richard Guy Briggs) [1957052] - audit: log nftables configuration change events once per table (Richard Guy Briggs) [1957052] - audit_alloc_mark(): don't open-code ERR_CAST() (Richard Guy Briggs) [1957052] - make dump_common_audit_data() safe to be called from RCU pathwalk (Richard Guy Briggs) [1957052] - new helper: d_find_alias_rcu() (Richard Guy Briggs) [1957052] - audit: Make audit_filter_syscall() return void (Richard Guy Briggs) [1957052] - audit: Remove leftover reference to the audit_tasklet (Richard Guy Briggs) [1957052] - kernel/audit: convert comma to semicolon (Richard Guy Briggs) [1957052] - dump_common_audit_data(): fix racy accesses to ->d_name (Richard Guy Briggs) [1957052] - audit: replace atomic_add_return() (Richard Guy Briggs) [1957052] - x86/audit: Fix a -Wmissing-prototypes warning for ia32_classify_syscall() (Richard Guy Briggs) [1957052] - ethtool: fix kdoc attr name (Ivan Vecera) [1967261] - ethtool: Remove link_mode param and derive link params from driver (Ivan Vecera) [1967261] - ethtool: Add lanes parameter for ETHTOOL_LINK_MODE_10000baseR_FEC_BIT (Ivan Vecera) [1967261] - ethtool: fix kdoc in headers (Ivan Vecera) [1967261] - ethtool: document reserved fields in the uAPI (Ivan Vecera) [1967261] - ethtool: un-kdocify extended link state (Ivan Vecera) [1967261] - ethtool: document PHY tunable callbacks (Ivan Vecera) [1967261] - docs: ethtool: fix some copy-paste errors (Ivan Vecera) [1967261] - ethtool: fix incorrect datatype in set_eee ops (Ivan Vecera) [1967261] - net: selftests: Add lanes setting test (Ivan Vecera) [1967261] - mlxsw: ethtool: Pass link mode in use to ethtool (Ivan Vecera) [1967261] - mlxsw: ethtool: Add support for setting lanes when autoneg is off (Ivan Vecera) [1967261] - mlxsw: ethtool: Remove max lanes filtering (Ivan Vecera) [1967261] - ethtool: Expose the number of lanes in use (Ivan Vecera) [1967261] - ethtool: Get link mode in use instead of speed and duplex parameters (Ivan Vecera) [1967261] - ethtool: prepare __ethtool_get_link_ksettings for subsequent changes (Ivan Vecera) [1967261] - ethtool: Extend link modes settings uAPI with lanes (Ivan Vecera) [1967261] - ethtool: Validate master slave configuration before rtnl_lock() (Ivan Vecera) [1967261] - ethtool: fix string set id check (Ivan Vecera) [1967261] - ethtool: fix stack overflow in ethnl_parse_bitset() (Ivan Vecera) [1967261] - selftests: add ring and coalesce selftests (Ivan Vecera) [1967261] - selftests: refactor get_netdev_name function (Ivan Vecera) [1967261] - selftests: extract common functions in ethtool-common.sh (Ivan Vecera) [1967261] - netdevsim: support ethtool ring and coalesce settings (Ivan Vecera) [1967261] - netdevsim: move ethtool pause params in separate struct (Ivan Vecera) [1967261] - ethtool: add ETHTOOL_COALESCE_ALL_PARAMS define (Ivan Vecera) [1967261] - ethtool: netlink: add missing netdev_features_change() call (Ivan Vecera) [1967261] - ethtool: remove unneeded semicolon (Ivan Vecera) [1967261] - ethtool: allow netdev driver to define phy tunables (Ivan Vecera) [1967261] - ethtool: mark netlink family as __ro_after_init (Ivan Vecera) [1967261] - ethtool: Add 100base-FX link mode entries (Ivan Vecera) [1967261] - ethtool: fix error handling in ethtool_phys_id (Ivan Vecera) [1967261] - ethtool: allow flow-type ether without IP protocol field (Ivan Vecera) [1967261] - net: phy: Uninline PHY ethtool statistics operations (Ivan Vecera) [1967261] - net: phy: Define PHY statistics ethtool_phy_ops (Ivan Vecera) [1967261] - net: ethtool: Remove PHYLIB direct dependency (Ivan Vecera) [1967261] - net: phy: Register ethtool PHY operations (Ivan Vecera) [1967261] - genksyms: Ignore module scoped _Static_assert() (Ivan Vecera) [1967261] - net: ethtool: Introduce ethtool_phy_ops (Ivan Vecera) [1967261] - Documentation: networking: fix ethtool-netlink table formats (Ivan Vecera) [1967261] - ethtool: ioctl: Use array_size() in copy_to_user() (Ivan Vecera) [1967261] - net: ethtool: cabletest: Make ethnl_act_cable_test_tdr_cfg static (Ivan Vecera) [1967261] - SUNRPC: Handle major timeout in xprt_adjust_timeout() (Scott Mayhew) [1979070] - gro_cells: reduce number of synchronize_net() calls (Ivan Vecera) [1959015] - net: make sure napi_list is safe for RCU traversal (Ivan Vecera) [1959015] - net: manage napi add/del idempotence explicitly (Ivan Vecera) [1959015] - net: remove napi_hash_del() from driver-facing API (Ivan Vecera) [1959015] - net: disable netpoll on fresh napis (Ivan Vecera) [1959015] - usb: dwc3-meson-g12a: fix usb2 PHY glue init when phy0 is disabled (Torez Smith) [1942772] - xhci: Fix 5.12 regression of missing xHC cache clearing command after a Stall (Torez Smith) [1942772] - xhci: fix giving back URB with incorrect status regression in 5.12 (Torez Smith) [1942772] - usb: typec: ucsi: Clear pending after acking connector change (Torez Smith) [1942772] - net: hso: check for allocation failure in hso_create_bulk_serial_device() (Torez Smith) [1942772] - usb: typec: tcpm: Fix wrong handling in GET_SINK_CAP (Torez Smith) [1942772] - net: hso: fix NULL-deref on disconnect regression (Torez Smith) [1942772] - USB: CDC-ACM: fix poison/unpoison imbalance (Torez Smith) [1942772] - usbip: vudc: fix missing unlock on error in usbip_sockfd_store() (Torez Smith) [1942772] - usb: xhci-mtk: improve bandwidth scheduling with TT (Torez Smith) [1942772] - usb: xhci-mtk: remove or operator for setting schedule parameters (Torez Smith) [1942772] - usb: typec: tcpm: Wait for vbus discharge to VSAFE0V before toggling (Torez Smith) [1942772] - software node: Provide replacement for device_add_properties() (Torez Smith) [1942772] - driver core: platform: Reimplement devm_platform_ioremap_resource (Torez Smith) [1942772] - USB: usblp: initialize newChannel (Torez Smith) [1942772] - net: hso: fix null-ptr-deref during tty device unregistration (Torez Smith) [1942772] - usbip: synchronize event handler with sysfs code paths (Torez Smith) [1942772] - usbip: vudc synchronize sysfs code paths (Torez Smith) [1942772] - usbip: stub-dev synchronize sysfs code paths (Torez Smith) [1942772] - usbip: add sysfs_lock to synchronize sysfs code paths (Torez Smith) [1942772] - drivers: net: fix memory leak in peak_usb_create_dev (Torez Smith) [1942772] - thunderbolt: Fix off by one in tb_port_find_retimer() (Torez Smith) [1942772] - thunderbolt: Fix a leak in tb_retimer_add() (Torez Smith) [1942772] - usb: dwc2: Prevent core suspend when port connection flag is 0 (Torez Smith) [1942772] - usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board. (Torez Smith) [1942772] - usb: xhci-mtk: fix broken streams issue on 0.96 xHCI (Torez Smith) [1942772] - usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control() (Torez Smith) [1942772] - USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem (Torez Smith) [1942772] - USB: cdc-acm: do not log successful probe on later errors (Torez Smith) [1942772] - USB: cdc-acm: always claim data interface (Torez Smith) [1942772] - USB: cdc-acm: use negation for NULL checks (Torez Smith) [1942772] - USB: cdc-acm: clean up probe error labels (Torez Smith) [1942772] - USB: cdc-acm: drop redundant driver-data reset (Torez Smith) [1942772] - USB: cdc-acm: drop redundant driver-data assignment (Torez Smith) [1942772] - USB: cdc-acm: fix use-after-free after probe failure (Torez Smith) [1942772] - USB: cdc-acm: fix double free on probe failure (Torez Smith) [1942772] - USB: cdc-acm: downgrade message to debug (Torez Smith) [1942772] - USB: cdc-acm: untangle a circular dependency between callback and softint (Torez Smith) [1942772] - cdc-acm: fix BREAK rx code path adding necessary calls (Torez Smith) [1942772] - usb: dwc3: pci: Enable dis_uX_susphy_quirk for Intel Merrifield (Torez Smith) [1942772] - usb: dwc3: qcom: skip interconnect init for ACPI probe (Torez Smith) [1942772] - can: peak_usb: Revert "can: peak_usb: add forgotten supported devices" (Torez Smith) [1942772] - r8152: limit the RX buffer size of RTL8153A for USB 2.0 (Torez Smith) [1942772] - net: cdc-phonet: fix data-interface release on probe failure (Torez Smith) [1942772] - usb: typec: tcpm: Skip sink_cap query only when VDM sm is busy (Torez Smith) [1942772] - usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy- (Torez Smith) [1942772] - usb: typec: Remove vdo[3] part of tps6598x_rx_identity_reg struct (Torez Smith) [1942772] - usb-storage: Add quirk to defeat Kindle's automatic unload (Torez Smith) [1942772] - usbip: Fix incorrect double assignment to udc->ud.tcp_rx (Torez Smith) [1942772] - can: kvaser_usb: Add support for USBcan Pro 4xHS (Torez Smith) [1942772] - can: peak_usb: add forgotten supported devices (Torez Smith) [1942772] - xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state (Torez Smith) [1942772] - usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing (Torez Smith) [1942772] - xhci: Improve detection of device initiated wake signal. (Torez Smith) [1942772] - usb: xhci: do not perform Soft Retry for some xHCI hosts (Torez Smith) [1942772] - usbip: fix vudc usbip_sockfd_store races leading to gpf (Torez Smith) [1942772] - usbip: fix vhci_hcd attach_store() races leading to gpf (Torez Smith) [1942772] - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf (Torez Smith) [1942772] - usbip: fix vudc to check for stream socket (Torez Smith) [1942772] - usbip: fix vhci_hcd to check for stream socket (Torez Smith) [1942772] - usbip: fix stub_dev to check for stream socket (Torez Smith) [1942772] - USB: usblp: fix a hang in poll() if disconnected (Torez Smith) [1942772] - usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement (Torez Smith) [1942772] - usb: dwc3: qcom: Honor wakeup enabled/disabled state (Torez Smith) [1942772] - usb: dwc3: qcom: add ACPI device id for sc8180x (Torez Smith) [1942772] - Goodix Fingerprint device is not a modem (Torez Smith) [1942772] - USB: serial: io_edgeport: fix memory leak in edge_startup (Torez Smith) [1942772] - USB: serial: ch341: add new Product ID (Torez Smith) [1942772] - USB: serial: cp210x: add some more GE USB IDs (Torez Smith) [1942772] - USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter (Torez Smith) [1942772] - net: usb: log errors to dmesg/syslog (Torez Smith) [1942772] - net: usb: cdc_ncm: emit dev_err on error paths (Torez Smith) [1942772] - thunderbolt: Increase runtime PM reference count on DP tunnel discovery (Torez Smith) [1942772] - thunderbolt: Initialize HopID IDAs in tb_switch_alloc() (Torez Smith) [1942772] - net: usb: qmi_wwan: allow qmimux add/del with master up (Torez Smith) [1942772] - Revert "r8152: adjust the settings about MAC clock speed down for RTL8153" (Torez Smith) [1942772] - net: usb: qmi_wwan: support ZTE P685M modem (Torez Smith) [1942772] - r8152: spilt rtl_set_eee_plus and r8153b_green_en (Torez Smith) [1942772] - r8152: replace netif_err with dev_err (Torez Smith) [1942772] - r8152: check if the pointer of the function exists (Torez Smith) [1942772] - r8152: enable U1/U2 for USB_SPEED_SUPER (Torez Smith) [1942772] - usb: misc: usb3503: Fix logic in usb3503_init() (Torez Smith) [1942772] - usb: Replace lkml.org links with lore (Torez Smith) [1942772] - usb: quirks: add quirk to start video capture on ELMO L-12F document camera reliable (Torez Smith) [1942772] - USB: quirks: sort quirk entries (Torez Smith) [1942772] - USB: serial: drop bogus to_usb_serial_port() checks (Torez Smith) [1942772] - USB: serial: drop if with an always false condition (Torez Smith) [1942772] - usb: typec: tcpm: Get Sink VDO from fwnode (Torez Smith) [1942772] - dt-bindings: connector: Add SVDM VDO properties (Torez Smith) [1942772] - usb: typec: displayport: Fill the negotiated SVDM Version in the header (Torez Smith) [1942772] - usb: typec: ucsi: Determine common SVDM Version (Torez Smith) [1942772] - usb: typec: tcpm: Determine common SVDM Version (Torez Smith) [1942772] - usb: pd: Make SVDM Version configurable in VDM header (Torez Smith) [1942772] - usb: typec: Manage SVDM version (Torez Smith) [1942772] - usb: dwc3: gadget: Fix dep->interval for fullspeed interrupt (Torez Smith) [1942772] - usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1 (Torez Smith) [1942772] - USB: serial: option: update interface mapping for ZTE P685M (Torez Smith) [1942772] - usb: dwc3: gadget: Track connected SSP rate and lane count (Torez Smith) [1942772] - usb: dwc3: gadget: Implement setting of SSP rate (Torez Smith) [1942772] - usb: dwc3: core: Check maximum_speed SSP genXxY (Torez Smith) [1942772] - usb: common: Parse for USB SSP genXxY (Torez Smith) [1942772] - usb: dwc2: Fix endpoint direction check in ep_from_windex (Torez Smith) [1942772] - usb: dwc3: fix clock issue during resume in OTG mode (Torez Smith) [1942772] - xhci: ext-caps: Use software node API with the properties (Torez Smith) [1942772] - usb: dwc3: host: Use software node API with the properties (Torez Smith) [1942772] - r8152: replace several functions about phy patch request (Torez Smith) [1942772] - usb: dwc3: qcom: Constify the software node (Torez Smith) [1942772] - usb: dwc3: haps: Constify the software node (Torez Smith) [1942772] - usb: dwc2: pci: Drop the empty quirk function (Torez Smith) [1942772] - thunderbolt: Add support for native USB4 _OSC (Torez Smith) [1942772] - thunderbolt: Allow disabling XDomain protocol (Torez Smith) [1942772] - thunderbolt: Add support for PCIe tunneling disabled (SL5) (Torez Smith) [1942772] - thunderbolt: dma_test: Drop unnecessary include (Torez Smith) [1942772] - thunderbolt: Add clarifying comments about USB4 terms router and adapter (Torez Smith) [1942772] - thunderbolt: switch: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: nhi: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: path: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: eeprom: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: ctl: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - usb: pd: Reland VDO definitions of PD2.0 (Torez Smith) [1942772] - NET: usb: qmi_wwan: Adding support for Cinterion MV31 (Torez Smith) [1942772] - usb: pd: Update VDO definitions (Torez Smith) [1942772] - xhci: fix bounce buffer usage for non-sg list case (Torez Smith) [1942772] - usb: xhci-mtk: break loop when find the endpoint to drop (Torez Smith) [1942772] - usb: typec: Return void in typec_partner_set_pd_revision (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable data path when partner is USB Comm capable (Torez Smith) [1942772] - usb: typec: tcpci: Add Callback to Usb Communication capable partner (Torez Smith) [1942772] - usb: typec: tcpm: Add Callback to Usb Communication capable partner (Torez Smith) [1942772] - usb: typec: tcpm: Set in_ams flag when Source caps have been received (Torez Smith) [1942772] - usb: typec: tcpm: Handle vbus shutoff when in source mode (Torez Smith) [1942772] - usb: typec: Add typec_partner_set_pd_revision (Torez Smith) [1942772] - usb: typec: Provide PD Specification Revision for cable and partner (Torez Smith) [1942772] - usb: typec: Standardize PD Revision format with Type-C Revision (Torez Smith) [1942772] - usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints (Torez Smith) [1942772] - USB: serial: ftdi_sio: restore divisor-encoding comments (Torez Smith) [1942772] - USB: serial: ftdi_sio: fix FTX sub-integer prescaler (Torez Smith) [1942772] - USB: serial: cp210x: clean up auto-RTS handling (Torez Smith) [1942772] - USB: serial: cp210x: fix RTS handling (Torez Smith) [1942772] - USB: serial: cp210x: clean up printk zero padding (Torez Smith) [1942772] - USB: serial: cp210x: clean up flow-control debug message (Torez Smith) [1942772] - USB: serial: cp210x: drop shift macros (Torez Smith) [1942772] - USB: serial: cp210x: fix modem-control handling (Torez Smith) [1942772] - USB: serial: cp210x: suppress modem-control errors (Torez Smith) [1942772] - xhci: handle halting transfer event properly after endpoint stop and halt raced. (Torez Smith) [1942772] - xhci: Check for pending reset endpoint command before queueing a new one. (Torez Smith) [1942772] - xhci: remove obsolete dequeue pointer moving code (Torez Smith) [1942772] - xhci: introduce a new move_dequeue_past_td() function to replace old code. (Torez Smith) [1942772] - xhci: handle stop endpoint command completion with endpoint in running state. (Torez Smith) [1942772] - xhci: Fix halted endpoint at stop endpoint command completion (Torez Smith) [1942772] - xhci: split handling halted endpoints into two steps (Torez Smith) [1942772] - xhci: move and rename xhci_cleanup_halted_endpoint() (Torez Smith) [1942772] - xhci: turn cancelled td cleanup to its own function (Torez Smith) [1942772] - xhci: store TD status in the td struct instead of passing it along (Torez Smith) [1942772] - xhci: use xhci_td_cleanup() helper when giving back cancelled URBs (Torez Smith) [1942772] - xhci: move xhci_td_cleanup so it can be called by more functions (Torez Smith) [1942772] - xhci: Add xhci_reset_halted_ep() helper function (Torez Smith) [1942772] - xhci: flush endpoint start to reduce race risk with stop endpoint command. (Torez Smith) [1942772] - xhci: Check link TRBs when updating ring enqueue and dequeue pointers. (Torez Smith) [1942772] - xhci: avoid DMA double fetch when reading event trb type. (Torez Smith) [1942772] - xhci: remove extra loop in interrupt context (Torez Smith) [1942772] - xhci: check slot_id is valid before gathering slot info (Torez Smith) [1942772] - xhci: prevent a theoretical endless loop while preparing rings. (Torez Smith) [1942772] - xhci: remove xhci_stream_id_to_ring() helper (Torez Smith) [1942772] - xhci: add xhci_virt_ep_to_ring() helper (Torez Smith) [1942772] - xhci: check virt_dev is valid before dereferencing it (Torez Smith) [1942772] - xhci: add xhci_get_virt_ep() helper (Torez Smith) [1942772] - xhci: remove unused event parameter from completion handlers (Torez Smith) [1942772] - xhci: adjust parameters passed to cleanup_halted_endpoint() (Torez Smith) [1942772] - xhci: get isochronous ring directly from endpoint structure (Torez Smith) [1942772] - xhci: Avoid parsing transfer events several times (Torez Smith) [1942772] - net: qmi_wwan: Add pass through mode (Torez Smith) [1942772] - net: usb: qmi_wwan: add qmap id sysfs file for qmimux interfaces (Torez Smith) [1942772] - net: usb: cdc_ether: added support for Thales Cinterion PLSx3 modem family. (Torez Smith) [1942772] - thunderbolt: Fix possible NULL pointer dereference in tb_acpi_add_link() (Torez Smith) [1942772] - thunderbolt: switch: Fix function name in the header (Torez Smith) [1942772] - thunderbolt: tunnel: Fix misspelling of 'receive_path' (Torez Smith) [1942772] - thunderbolt: icm: Fix a couple of formatting issues (Torez Smith) [1942772] - thunderbolt: switch: Demote a bunch of non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: tb: Kernel-doc function headers should document their parameters (Torez Smith) [1942772] - thunderbolt: nhi: Demote some non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: xdomain: Fix 'tb_unregister_service_driver()'s 'drv' param (Torez Smith) [1942772] - thunderbolt: eeprom: Demote non-conformant kernel-doc headers to standard comment blocks (Torez Smith) [1942772] - USB: serial: mos7720: fix error code in mos7720_write() (Torez Smith) [1942772] - thunderbolt: ctl: Demote non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: cap: Fix kernel-doc formatting issue (Torez Smith) [1942772] - thunderbolt: dma_port: Check 'dma_port_flash_write_block()'s return value (Torez Smith) [1942772] - USB: serial: option: Adding support for Cinterion MV31 (Torez Smith) [1942772] - can: mcba_usb: remove h from printk format specifier (Torez Smith) [1942772] - usbnet: fix the indentation of one code snippet (Torez Smith) [1942772] - usb: usb251xb: Use of_device_get_match_data() (Torez Smith) [1942772] - usb: dwc2: Make "trimming xfer length" a debug message (Torez Smith) [1942772] - usb: dwc2: Abort transaction after errors with unknown reason (Torez Smith) [1942772] - usb: dwc2: Do not update data length if it is 0 on inbound transfers (Torez Smith) [1942772] - usb: xhci-mtk: fix unreleased bandwidth data (Torez Smith) [1942772] - USB: serial: mos7840: fix error code in mos7840_write() (Torez Smith) [1942772] - USB: usblp: don't call usb_set_interface if there's a single alt (Torez Smith) [1942772] - USB: serial: cp210x: add pid/vid for WSDA-200-USB (Torez Smith) [1942772] - usb: typec: tcpci_maxim: add terminating newlines to logging (Torez Smith) [1942772] - usb: typec: tcpci_maxim: remove redundant assignment (Torez Smith) [1942772] - usb: typec: tcpm: Create legacy PDOs for PD2 connection (Torez Smith) [1942772] - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Drop GPIO includes (Torez Smith) [1942772] - usb: typec: tcpm: Respond Wait if VDM state machine is running (Torez Smith) [1942772] - usb: typec: tcpm: Protocol Error handling (Torez Smith) [1942772] - usb: typec: tcpm: AMS and Collision Avoidance (Torez Smith) [1942772] - net: usb: cdc_ncm: don't spew notifications (Torez Smith) [1942772] - usb: typec: ucsi: Add conditional dependency on USB role switch (Torez Smith) [1942772] - usb: ch9: Add USB 3.2 SSP attributes (Torez Smith) [1942772] - USB: serial: f81232: drop short control-transfer checks (Torez Smith) [1942772] - USB: serial: io_ti: fix a debug-message copy-paste error (Torez Smith) [1942772] - USB: serial: io_ti: drop short control-transfer check (Torez Smith) [1942772] - USB: serial: upd78f0730: drop short control-transfer check (Torez Smith) [1942772] - USB: serial: cp210x: add copyright notice (Torez Smith) [1942772] - USB: serial: cp210x: drop unused includes (Torez Smith) [1942772] - USB: serial: cp210x: drop short control-transfer checks (Torez Smith) [1942772] - USB: serial: cp210x: update control-characters on every change (Torez Smith) [1942772] - USB: serial: cp210x: set IXOFF thresholds (Torez Smith) [1942772] - USB: serial: cp210x: add support for software flow control (Torez Smith) [1942772] - USB: serial: pl2303: fix line-speed handling on newer chips (Torez Smith) [1942772] - xhci: tegra: Delay for disabling LFPS detector (Torez Smith) [1942772] - xhci: make sure TRB is fully written before giving it to the controller (Torez Smith) [1942772] - usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Alder Lake-P (Torez Smith) [1942772] - usb: dwc3: pci: ID for Tiger Lake CPU (Torez Smith) [1942772] - usb: dwc3: pci: Register a software node for the dwc3 platform device (Torez Smith) [1942772] - thunderbolt: Add support for de-authorizing devices (Torez Smith) [1942772] - nt: usb: USB_RTL8153_ECM should not default to y (Torez Smith) [1942772] - USB: dwc3: document gadget_max_speed (Torez Smith) [1942772] - usb: dwc3: gadget: Disable Vendor Test LMP Received event (Torez Smith) [1942772] - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 (Torez Smith) [1942772] - r8153_ecm: Add Lenovo Powered USB-C Hub as a fallback of r8152 (Torez Smith) [1942772] - r8152: Add Lenovo Powered USB-C Travel Hub (Torez Smith) [1942772] - USB: ehci: fix an interrupt calltrace error (Torez Smith) [1942772] - ehci: fix EHCI host controller initialization sequence (Torez Smith) [1942772] - usb: typec: ucsi: Add support for USB role switch (Torez Smith) [1942772] - usb: dwc2: disable Link Power Management on STM32MP15 HS OTG (Torez Smith) [1942772] - usb: dwc2: enable FS/LS PHY clock select on STM32MP15 FS OTG (Torez Smith) [1942772] - usb: dwc2: set ahbcfg parameter for STM32MP15 OTG HS and FS (Torez Smith) [1942772] - usb: dwc3: Simplify with dev_err_probe() (Torez Smith) [1942772] - usb: dwc3: keystone: Simplify with dev_err_probe() (Torez Smith) [1942772] - usb: dwc3: core: Replace devm_reset_control_array_get() (Torez Smith) [1942772] - USB: serial: mos7720: improve OOM-handling in read_mos_reg() (Torez Smith) [1942772] - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request (Torez Smith) [1942772] - thunderbolt: Start lane initialization after sleep (Torez Smith) [1942772] - thunderbolt: Constify static attribute_group structs (Torez Smith) [1942772] - qmi_wwan: Increase headroom for QMAP SKBs (Torez Smith) [1942772] - usb: usbip: Use DEFINE_SPINLOCK() for spinlock (Torez Smith) [1942772] - usb: dwc3: gadget: Clear wait flag on dequeue (Torez Smith) [1942772] - usb: typec: Send uevent for num_altmodes update (Torez Smith) [1942772] - usb: typec: Fix copy paste error for NVIDIA alt-mode description (Torez Smith) [1942772] - kcov, usb: hide in_serving_softirq checks in __usb_hcd_giveback_urb (Torez Smith) [1942772] - thunderbolt: Drop duplicated 0x prefix from format string (Torez Smith) [1942772] - net: cdc_ncm: correct overhead in delayed_ndp_size (Torez Smith) [1942772] - net: usb: Use DEFINE_SPINLOCK() for spinlock (Torez Smith) [1942772] - usb: uas: Add PNY USB Portable SSD to unusual_uas (Torez Smith) [1942772] - net: usb: qmi_wwan: add Quectel EM160R-GL (Torez Smith) [1942772] - usb: usbip: vhci_hcd: protect shift size (Torez Smith) [1942772] - USB: usblp: fix DMA to stack (Torez Smith) [1942772] - usb: dwc3: gadget: Preserve UDC max speed setting (Torez Smith) [1942772] - usb: dwc3: gadget: Allow runtime suspend if UDC unbinded (Torez Smith) [1942772] - usb: dwc3: gadget: Introduce a DWC3 VBUS draw callback (Torez Smith) [1942772] - usb: dwc3: add imx8mp dwc3 glue layer driver (Torez Smith) [1942772] - USB: serial: iuu_phoenix: fix DMA from stack (Torez Smith) [1942772] - USB: serial: option: add LongSung M5710 module support (Torez Smith) [1942772] - USB: serial: option: add Quectel EM160R-GL (Torez Smith) [1942772] - CDC-NCM: remove "connected" log message (Torez Smith) [1942772] - usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression (Torez Smith) [1942772] - usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one (Torez Smith) [1942772] - usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion (Torez Smith) [1942772] - usb: dwc3: drd: Improve dwc3_get_extcon() style (Torez Smith) [1942772] - usb: dwc3: drd: Avoid error when extcon is missing (Torez Smith) [1942772] - USB: usbtmc: Bump USBTMC_API_VERSION value (Torez Smith) [1942772] - USB: usbtmc: Add separate USBTMC_IOCTL_GET_SRQ_STB (Torez Smith) [1942772] - USB: usbtmc: Add USBTMC_IOCTL_GET_STB (Torez Smith) [1942772] - USB: usbtmc: Fix reading stale status byte (Torez Smith) [1942772] - kcov, usbip: collect coverage from vhci_rx_loop (Torez Smith) [1942772] - USB: yurex: fix control-URB timeout handling (Torez Smith) [1942772] - usb: dwc3: meson-g12a: disable clk on error handling path in probe (Torez Smith) [1942772] - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure HPD first for HPD+IRQ request (Torez Smith) [1942772] - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). (Torez Smith) [1942772] - USB: cdc-acm: blacklist another IR Droid device (Torez Smith) [1942772] - thunderbolt: Use kmemdup instead of kzalloc and memcpy (Torez Smith) [1942772] - usb: ucsi: convert comma to semicolon (Torez Smith) [1942772] - usb: typec: tcpm: convert comma to semicolon (Torez Smith) [1942772] - usb: typec: tcpm: Update vbus_vsafe0v on init (Torez Smith) [1942772] - usb: typec: tcpci: Enable bleed discharge when auto discharge is enabled (Torez Smith) [1942772] - usb: typec: Add class for plug alt mode device (Torez Smith) [1942772] - USB: typec: tcpci: Add Bleed discharge to POWER_CONTROL definition (Torez Smith) [1942772] - USB: typec: tcpm: Add a 30ms room for tPSSourceOn in PR_SWAP (Torez Smith) [1942772] - USB: typec: tcpm: Fix PR_SWAP error handling (Torez Smith) [1942772] - USB: typec: tcpm: Hard Reset after not receiving a Request (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure cable generation value for USB4 (Torez Smith) [1942772] - net: usb: convert comma to semicolon (Torez Smith) [1942772] - USB: UAS: introduce a quirk to set no_write_same (Torez Smith) [1942772] - USB: serial: ftdi_sio: log the CBUS GPIO validity (Torez Smith) [1942772] - USB: serial: ftdi_sio: drop GPIO line checking dead code (Torez Smith) [1942772] - USB: serial: ftdi_sio: report the valid GPIO lines to gpiolib (Torez Smith) [1942772] - drivers: usb: atm: use atm_info() instead of atm_printk(KERN_INFO ... (Torez Smith) [1942772] - drivers: usb: atm: reduce noise (Torez Smith) [1942772] - USB: serial: option: add interface-number sanity check to flag handling (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable VSAFE0V signalling (Torez Smith) [1942772] - usb: typec: tcpci: Add support to report vSafe0V (Torez Smith) [1942772] - usb: typec: tcpm: Introduce vsafe0v for vbus (Torez Smith) [1942772] - usb: typec: tcpm: Clear send_discover in tcpm_check_send_discover (Torez Smith) [1942772] - usb: typec: tcpm: Pass down negotiated rev to update retry count (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Use correct response message bits (Torez Smith) [1942772] - xhci: Give USB2 ports time to enter U3 in bus suspend (Torez Smith) [1942772] - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI (Torez Smith) [1942772] - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP (Torez Smith) [1942772] - usb: xhci: Use temporary buffer to consolidate SG (Torez Smith) [1942772] - usb: xhci: Set quirk for XHCI_SG_TRB_CACHE_SIZE_QUIRK (Torez Smith) [1942772] - USB: legotower: fix logical error in recent commit (Torez Smith) [1942772] - USB: legousbtower: use usb_control_msg_recv() (Torez Smith) [1942772] - USB: add RESET_RESUME quirk for Snapscan 1212 (Torez Smith) [1942772] - usb: typec: tps6598x: Export some power supply properties (Torez Smith) [1942772] - usb: typec: tps6598x: Select USB_ROLE_SWITCH and REGMAP_I2C (Torez Smith) [1942772] - USB: core: drop pipe-type check from new control-message helpers (Torez Smith) [1942772] - USB: core: return -EREMOTEIO on short usb_control_msg_recv() (Torez Smith) [1942772] - USB: core: drop short-transfer check from usb_control_msg_send() (Torez Smith) [1942772] - USB: apple-mfi-fastcharge: Fix use after free in probe (Torez Smith) [1942772] - Revert "usb-storage: fix sdev->host->dma_dev" (Torez Smith) [1942772] - Revert "uas: fix sdev->host->dma_dev" (Torez Smith) [1942772] - Revert "uas: bump hw_max_sectors to 2048 blocks for SS or faster drives" (Torez Smith) [1942772] - USB: serial: cp210x: clean up dtr_rts() (Torez Smith) [1942772] - USB: serial: cp210x: refactor flow-control handling (Torez Smith) [1942772] - USB: serial: cp210x: drop flow-control debugging (Torez Smith) [1942772] - USB: serial: cp210x: set terminal settings on open (Torez Smith) [1942772] - USB: serial: cp210x: clean up line-control handling (Torez Smith) [1942772] - USB: serial: cp210x: return early on unchanged termios (Torez Smith) [1942772] - USB: serial: kl5kusb105: fix memleak on open (Torez Smith) [1942772] - USB: serial: ch341: sort device-id entries (Torez Smith) [1942772] - USB: serial: ch341: add new Product ID for CH341A (Torez Smith) [1942772] - USB: serial: option: fix Quectel BG96 matching (Torez Smith) [1942772] - can: pcan_usb_core: fix fall-through warnings for Clang (Torez Smith) [1942772] - usb: typec: stusb160x: fix power-opmode property with typec-power-opmode (Torez Smith) [1942772] - USB: serial: option: add support for Thales Cinterion EXS82 (Torez Smith) [1942772] - usb: typec: Add type sysfs attribute file for partners (Torez Smith) [1942772] - usb: common: ulpi: Constify static attribute_group struct (Torez Smith) [1942772] - usb: typec: Constify static attribute_group structs (Torez Smith) [1942772] - USB: core: Constify static attribute_group structs (Torez Smith) [1942772] - usb: typec: tcpm: Stay in SNK_TRY_WAIT_DEBOUNCE_CHECK_VBUS till Rp is seen (Torez Smith) [1942772] - usb: typec: tcpm: Disregard vbus off while in PR_SWAP_SNK_SRC_SOURCE_ON (Torez Smith) [1942772] - usb: typec: Expose Product Type VDOs via sysfs (Torez Smith) [1942772] - usb: pd: DFP product types (Torez Smith) [1942772] - usb: Fix fall-through warnings for Clang (Torez Smith) [1942772] - usbnet: ipheth: fix connectivity with iOS 14 (Torez Smith) [1942772] - USB: core: Change pK for __user pointers to px (Torez Smith) [1942772] - USB: core: Fix regression in Hercules audio card (Torez Smith) [1942772] - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO built-in usb-audio card (Torez Smith) [1942772] - can: kvaser_usb: Add new Kvaser hydra devices (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_hydra: Add support for new device variant (Torez Smith) [1942772] - can: kvaser_usb: Add new Kvaser Leaf v2 devices (Torez Smith) [1942772] - can: kvaser_usb: Add USB_{LEAF,HYDRA}_PRODUCT_ID_END defines (Torez Smith) [1942772] - USB: serial: option: add Fibocom NL668 variants (Torez Smith) [1942772] - usb: typec: Fix num_altmodes kernel-doc error (Torez Smith) [1942772] - r8153_ecm: avoid to be prior to r8152 driver (Torez Smith) [1942772] - net: usb: qmi_wwan: Set DTR quirk for MR400 (Torez Smith) [1942772] - usb: typec: Add plug num_altmodes sysfs attr (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix the compatible string (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix uninitialized return variable (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable auto discharge disconnect (Torez Smith) [1942772] - usb: typec: tcpci: Implement Auto discharge disconnect callbacks (Torez Smith) [1942772] - usb: typec: tcpm: Implement enabling Auto Discharge disconnect support (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix vbus stuck on upon diconnecting sink (Torez Smith) [1942772] - usb: typec: tcpci: frs sourcing vbus callback (Torez Smith) [1942772] - usb: typec: tcpm: frs sourcing vbus callback (Torez Smith) [1942772] - usb: typec: tcpm: Refactor logic for new-source-frs-typec-current (Torez Smith) [1942772] - usb: typec: Add number of altmodes partner attr (Torez Smith) [1942772] - usb: pd: Add captive Type C cable type (Torez Smith) [1942772] - USB: apple-mfi-fastcharge: Fix kfree after failed kzalloc (Torez Smith) [1942772] - usb: typec: Remove one bit support for the Thunderbolt rounded/non-rounded cable (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure Thunderbolt cable generation bits (Torez Smith) [1942772] - usb: typec: Correct the bit values for the Thunderbolt rounded/non-rounded cable support (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits (Torez Smith) [1942772] - cx82310_eth: fix error return code in cx82310_bind() (Torez Smith) [1942772] - usb: typec: qcom-pmic-typec: fix builtin build errors (Torez Smith) [1942772] - can: peak_usb: fix potential integer overflow on shift of a int (Torez Smith) [1942772] - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to can_put_echo_skb() (Torez Smith) [1942772] - usb: hcd.h: Remove RUN_CONTEXT (Torez Smith) [1942772] - USB: storage: avoid use of uninitialized values in error path (Torez Smith) [1942772] - usb: fix a few cases of -Wfallthrough (Torez Smith) [1942772] - usbnet: switch to core handling of rx/tx byte/packet counters (Torez Smith) [1942772] - qmi_wwan: switch to core handling of rx/tx byte/packet counters (Torez Smith) [1942772] - net: usb: fix spelling typo in cdc_ncm.c (Torez Smith) [1942772] - usb: typec: ucsi: Work around PPM losing change information (Torez Smith) [1942772] - usb: typec: ucsi: acpi: Always decode connector change information (Torez Smith) [1942772] - net/usb/r8153_ecm: support ECM mode for RTL8153 (Torez Smith) [1942772] - USB: serial: mos7720: fix parallel-port state restore (Torez Smith) [1942772] - USB: serial: remove write wait queue (Torez Smith) [1942772] - USB: serial: digi_acceleport: fix write-wakeup deadlocks (Torez Smith) [1942772] - USB: serial: keyspan_pda: drop redundant usb-serial pointer (Torez Smith) [1942772] - USB: serial: keyspan_pda: use BIT() macro (Torez Smith) [1942772] - USB: serial: keyspan_pda: add write-fifo support (Torez Smith) [1942772] - USB: serial: keyspan_pda: increase transmitter threshold (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write implementation (Torez Smith) [1942772] - USB: serial: keyspan_pda: refactor write-room handling (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write unthrottling (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write-wakeup use-after-free (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix stalled writes (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write deadlock (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix dropped unthrottle interrupts (Torez Smith) [1942772] - net: usb: r8152: Fix a couple of spelling errors in fw_phy_nc's docs (Torez Smith) [1942772] - net: usb: lan78xx: Remove lots of set but unused 'ret' variables (Torez Smith) [1942772] - net: usb: r8152: Provide missing documentation for some struct members (Torez Smith) [1942772] - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping (Torez Smith) [1942772] - can: peak_usb: add range checking in decode operations (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition (Torez Smith) [1942772] - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq (Torez Smith) [1942772] - dt-bindings: connector: Add property to set initial current cap for FRS (Torez Smith) [1942772] - usb: xhci: Remove in_interrupt() checks (Torez Smith) [1942772] - usbip: Remove in_interrupt() check (Torez Smith) [1942772] - usb: core: Replace in_interrupt() in comments (Torez Smith) [1942772] - usb: atm: Replace in_interrupt() usage in comment (Torez Smith) [1942772] - USB: sisusbvga: Make console support depend on BROKEN (Torez Smith) [1942772] - usb: host: xhci-mem: remove unneeded break (Torez Smith) [1942772] - usb: storage: freecom: remove unneeded break (Torez Smith) [1942772] - usb: misc: iowarrior: remove unneeded break (Torez Smith) [1942772] - usb: host: ehci-sched: add comment about find_tt() not returning error (Torez Smith) [1942772] - usb: dwc3: ep0: Fix delay status handling (Torez Smith) [1942772] - USB: serial: iuu_phoenix: remove unneeded break (Torez Smith) [1942772] - USB: serial: digi_acceleport: remove in_interrupt() usage (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Alder Lake-S (Torez Smith) [1942772] - net: usb: rtl8150: don't incorrectly assign random MAC addresses (Torez Smith) [1942772] - net: usbnet: use new function dev_fetch_sw_netstats (Torez Smith) [1942772] - net: usb: qmi_wwan: use new function dev_fetch_sw_netstats (Torez Smith) [1942772] - cx82310_eth: use netdev_err instead of dev_err (Torez Smith) [1942772] - cx82310_eth: re-enable ethernet mode after router reboot (Torez Smith) [1942772] - net: usbnet: remove driver version (Torez Smith) [1942772] - net: usb: qmi_wwan: add Cellient MPL200 card (Torez Smith) [1942772] - usbip: vhci_hcd: fix calling usb_hcd_giveback_urb() with irqs enabled (Torez Smith) [1942772] - net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails (Torez Smith) [1942772] - usbnet: Use fallthrough pseudo-keyword (Torez Smith) [1942772] - net/smscx5xx: change to of_get_mac_address() eth_platform_get_mac_address() (Torez Smith) [1942772] - net: usb: pegasus: Proper error handing when setting pegasus' MAC address (Torez Smith) [1942772] - usb: dwc3: gadget: Support up to max stream id (Torez Smith) [1942772] - usb: dwc2: Fix INTR OUT transfers in DDMA mode. (Torez Smith) [1942772] - usb: dwc3: of-simple: Add compatible string for Intel Keem Bay platform (Torez Smith) [1942772] - net: rtl8150: Use the new usb control message API. (Torez Smith) [1942772] - net: pegasus: Use the new usb control message API. (Torez Smith) [1942772] - usb: dwc3: gadget: Return early if no TRB update (Torez Smith) [1942772] - usb: dwc3: gadget: Keep TRBs in request order (Torez Smith) [1942772] - usb: dwc3: gadget: Revise setting IOC when no TRB left (Torez Smith) [1942772] - usb: dwc3: gadget: Look ahead when setting IOC (Torez Smith) [1942772] - usb: dwc3: gadget: Allow restarting a transfer (Torez Smith) [1942772] - usb: dwc3: Stop active transfers before halting the controller (Torez Smith) [1942772] - usb: dwc3: gadget: Rename misleading function names (Torez Smith) [1942772] - usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor preparing last TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Set IOC if not enough for extra TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Check for number of TRBs prepared (Torez Smith) [1942772] - usb: dwc3: gadget: Return the number of prepared TRBs (Torez Smith) [1942772] - usb: dwc3: ep0: Fix ZLP for OUT ep0 requests (Torez Smith) [1942772] - usb: dwc3: gadget: Improve TRB ZLP setup (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor preparing extra TRB (Torez Smith) [1942772] - usb: dwc3: gadget: Reclaim extra TRBs after request completion (Torez Smith) [1942772] - usb: dwc3: gadget: Check MPS of the request length (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor ep command completion (Torez Smith) [1942772] - usb: dwc3: allocate gadget structure dynamically (Torez Smith) [1942772] - usb: dwc3: core: add phy cleanup for probe error handling (Torez Smith) [1942772] - usb: dwc3: core: don't trigger runtime pm when remove driver (Torez Smith) [1942772] - usb: dwc3: debugfs: do not queue work if try to change mode on non-drd (Torez Smith) [1942772] - usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM functionality (Torez Smith) [1942772] - usb: dwc2: add support for APM82181 USB OTG (Torez Smith) [1942772] - usb: dwc-meson-g12a: Add support for USB on AXG SoCs (Torez Smith) [1942772] - usb: dwc3: gadget: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG (Torez Smith) [1942772] - usb: dwc3: debugfs: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: qcom: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: ep0: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: core: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: debug: fix checkpatch warning (Torez Smith) [1942772] - usb: dwc3: trace: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: ulpi: fix checkpatch warning (Torez Smith) [1942772] - usb: dwc3: meson: fix checkpatch errors and warnings (Torez Smith) [1942772] - usb: dwc3: debug: fix sparse warning (Torez Smith) [1942772] - usb: dwc3: meson: fix coccinelle WARNING (Torez Smith) [1942772] - usb: dwc3: qcom: Add interconnect support in dwc3 driver (Torez Smith) [1942772] - net: usb: net1080: Remove in_interrupt() comment (Torez Smith) [1942772] - net: usb: kaweth: Remove last user of kaweth_control() (Torez Smith) [1942772] - net: usb: kaweth: Replace kaweth_control() with usb_control_msg() (Torez Smith) [1942772] - net: usb: ax88179_178a: add MCT usb 3.0 adapter (Torez Smith) [1942772] - net: usb: ax88179_178a: fix missing stop entry in driver_info (Torez Smith) [1942772] - net: usb: ax88179_178a: add Toshiba usb 3.0 adapter (Torez Smith) [1942772] - Revert "usbip: Implement a match function to fix usbip" (Torez Smith) [1942772] - usb: dwc2: Fix parameter type in function pointer prototype (Torez Smith) [1942772] - usb: dwc3: core: Print warning on unsupported speed (Torez Smith) [1942772] - usb: dwc3: core: Properly default unspecified speed (Torez Smith) [1942772] - usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails (Torez Smith) [1942772] - usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command (Torez Smith) [1942772] - usb: dwc3: gadget: Resume pending requests after CLEAR_STALL (Torez Smith) [1942772] - can: peak_usb: convert to use le32_add_cpu() (Torez Smith) [1942772] - can: pcan_usb: add support of rxerr/txerr counters (Torez Smith) [1942772] - can: pcan_usb: Document the commands sent to the device (Torez Smith) [1942772] - can: mcba_usb: remove redundant initialization of variable err (Torez Smith) [1942772] - usb: dwc2: Always disable regulators on driver teardown (Torez Smith) [1942772] - usbip: simplify the return expression of usbip_core_init() (Torez Smith) [1942772] - rndis_host: increase sleep time in the query-response loop (Torez Smith) [1942772] - Revert "usb: dwc3: meson-g12a: fix shared reset control use" (Torez Smith) [1942772] - net: usb: dm9601: Add USB ID of Keenetic Plus DSL (Torez Smith) [1942772] - smsc95xx: add phylib support (Torez Smith) [1942772] - smsc95xx: use usbnet->driver_priv (Torez Smith) [1942772] - smsc95xx: remove redundant function arguments (Torez Smith) [1942772] - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() (Torez Smith) [1942772] - net: cdc_ncm: Fix build error (Torez Smith) [1942772] - tools: usb: move to tools buildsystem (Torez Smith) [1942772] - usbip: Implement a match function to fix usbip (Torez Smith) [1942772] - usb: dwc3: gadget: Handle ZLP for sg requests (Torez Smith) [1942772] - usb: dwc3: gadget: Fix handling ZLP (Torez Smith) [1942772] - usb: dwc3: gadget: Don't setup more than requested (Torez Smith) [1942772] - r8152: Use MAC address from correct device tree node (Torez Smith) [1942772] - usb: hso: remove bogus check for EINPROGRESS (Torez Smith) [1942772] - usb: hso: no complaint about kmalloc failure (Torez Smith) [1942772] - hso: fix bailout in error case of probe (Torez Smith) [1942772] - usb: dwc3: convert to devm_platform_ioremap_resource_byname (Torez Smith) [1942772] - net: lan78xx: replace bogus endpoint lookup (Torez Smith) [1942772] - net: lan78xx: fix transfer-buffer memory leak (Torez Smith) [1942772] - net: lan78xx: add missing endpoint sanity check (Torez Smith) [1942772] - usb: hso: check for return value in hso_serial_common_create() (Torez Smith) [1942772] - Revert "usb: dwc2: override PHY input signals with usb role switch support" (Torez Smith) [1942772] - Revert "usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs" (Torez Smith) [1942772] - usb: dwc3: gadget: when the started list is empty stop the active xfer (Torez Smith) [1942772] - usb: dwc3: gadget: make starting isoc transfers more robust (Torez Smith) [1942772] - usb: dwc3: gadget: add frame number mask (Torez Smith) [1942772] - usb: dwc2: Fix error path in gadget registration (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix shared reset control use (Torez Smith) [1942772] - usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs (Torez Smith) [1942772] - usb: dwc2: override PHY input signals with usb role switch support (Torez Smith) [1942772] - net: cdc_ncm: hook into set_rx_mode to admit multicast traffic (Torez Smith) [1942772] - net: cdc_ncm: add .ndo_set_rx_mode to cdc_ncm_netdev_ops (Torez Smith) [1942772] - net: usbnet: export usbnet_set_rx_mode() (Torez Smith) [1942772] - net: cdc_ether: export usbnet_cdc_update_filter (Torez Smith) [1942772] - net: cdc_ether: use dev->intf to get interface information (Torez Smith) [1942772] - ax88172a: fix ax88172a_unbind() failures (Torez Smith) [1942772] - usb: dwc2: gadget: Avoid pointless read of EP control register (Torez Smith) [1942772] - usb: dwc2: gadget: Make use of GINTMSK2 (Torez Smith) [1942772] - usb: dwc3: Replace HTTP links with HTTPS ones (Torez Smith) [1942772] - tools: usb: usbip: Replace HTTP links with HTTPS ones (Torez Smith) [1942772] - usb: hso: Fix debug compile warning on sparc32 (Torez Smith) [1942772] - usbip: Use fallthrough pseudo-keyword (Torez Smith) [1942772] - Documentation/driver-api: usb/URB: drop doubled word (Torez Smith) [1942772] - usb: dwc3: dwc3-qcom: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Jasper Lake (Torez Smith) [1942772] - usb: dwc2: Fix shutdown callback in platform (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Tiger Lake PCH -H variant (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for Quectel EG95 LTE modem (Torez Smith) [1942772] - smsc95xx: avoid memory leak in smsc95xx_bind (Torez Smith) [1942772] - smsc95xx: check return value of smsc95xx_reset (Torez Smith) [1942772] - usb: dwc2: gadget: Remove assigned but never used 'maxsize' (Torez Smith) [1942772] - usb: dwc3: dwc3-of-simple: Function headers are not good candidates for kerneldoc (Torez Smith) [1942772] - usb: dwc3: dwc3-haps: Function headers are not suitable for kerneldoc (Torez Smith) [1942772] - usb: dwc3: dwc3-omap: Do not read DMA status (Torez Smith) [1942772] - usb: dwc3: ulpi: File headers are not doc headers (Torez Smith) [1942772] - usb: dwc3: drd: File headers are not doc headers (Torez Smith) [1942772] - usbnet: ipheth: fix ipheth_tx()'s return type (Torez Smith) [1942772] - usbip: tools: add in man page how to load the client's module (Torez Smith) [1942772] - usbip: tools: fix build error for multiple definition (Torez Smith) [1942772] - usbip: tools: fix module name in man page (Torez Smith) [1942772] - Revert "usb: dwc3: exynos: Add support for Exynos5422 suspend clk" (Torez Smith) [1942772] - usb: dwc3: pci: Fix reference count leak in dwc3_pci_resume_work (Torez Smith) [1942772] - media: USB: cdc-acm: blacklist IR Droid / IR Toy device (Torez Smith) [1942772] - usbnet: smsc95xx: Fix use-after-free after removal (Torez Smith) [1942772] - usb: dwc2: Postponed gadget registration to the udc class driver (Torez Smith) [1942772] - usb: dwc2: use well defined macros for power_down (Torez Smith) [1942772] - net: usb: ax88179_178a: fix packet alignment padding (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix USB2 PHY initialization on G12A and A1 SoCs (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix error path when fetching the reset line fails (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit LE910C1-EUX composition (Torez Smith) [1942772] - usb: dwc3: keystone: Turn on USB3 PHY before controller (Torez Smith) [1942772] - usb: dwc2: Update Core Reset programming flow. (Torez Smith) [1942772] - usb: dwc3: gadget: Check for prepared TRBs (Torez Smith) [1942772] - usb: dwc3: Increase timeout for CmdAct cleared by device controller (Torez Smith) [1942772] - usb: dwc3: gadget: Use SET_EP_PRIME for NoStream (Torez Smith) [1942772] - usb: dwc3: gadget: Handle stream transfers (Torez Smith) [1942772] - usb: dwc3: gadget: Don't prepare beyond a transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Wait for transfer completion (Torez Smith) [1942772] - usb: dwc3: gadget: Handle XferComplete for streams (Torez Smith) [1942772] - usb: dwc3: gadget: Enable XferComplete event (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor TRB completion handler (Torez Smith) [1942772] - usb: dwc3: gadget: Check for in-progress END_TRANSFER (Torez Smith) [1942772] - usb: dwc3: Get MDWIDTH for DWC_usb32 (Torez Smith) [1942772] - usb: dwc3: Add support for DWC_usb32 IP (Torez Smith) [1942772] - usb: dwc3: use true,false for dwc->otg_restart_host (Torez Smith) [1942772] - usb: dwc2: gadget: move gadget resume after the core is in L0 state (Torez Smith) [1942772] - usb: dwc3: meson-g12a: add support for GXL and GXM SoCs (Torez Smith) [1942772] - usb: dwc3: meson-g12a: support the GXL/GXM DWC3 host phy disconnect (Torez Smith) [1942772] - usb: dwc3: meson-g12a: refactor usb init (Torez Smith) [1942772] - usb: dwc3: gadget: Continue to process pending requests (Torez Smith) [1942772] - r8152: support additional Microsoft Surface Ethernet Adapter variant (Torez Smith) [1942772] - r8152: Use MAC address from device tree if available (Torez Smith) [1942772] - net: usb: qmi_wwan: remove redundant assignment to variable status (Torez Smith) [1942772] - net: huawei_cdc_ncm: remove redundant assignment to variable ret (Torez Smith) [1942772] - net: usb: ax88179_178a: remove redundant assignment to variable ret (Torez Smith) [1942772] - usb: dwc3: select USB_ROLE_SWITCH (Torez Smith) [1942772] - usb: dwc3: pci: Enable extcon driver for Intel Merrifield (Torez Smith) [1942772] - dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg() (Torez Smith) [1942772] - usb: hso: correct debug message (Torez Smith) [1942772] - net: sierra_net: Remove unused inline function (Torez Smith) [1942772] - usb: dwc3: gadget: WARN on no-resource status (Torez Smith) [1942772] - usb: dwc3: gadget: Issue END_TRANSFER to retry isoc transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Store resource index of start cmd (Torez Smith) [1942772] - usb: dwc3: core: Use role-switch default dr_mode (Torez Smith) [1942772] - usb: dwc3: drd: Don't free non-existing irq (Torez Smith) [1942772] - usb: dwc3: gadget: Properly handle failed kick_transfer (Torez Smith) [1942772] - usb: dwc3: meson-g12a: refactor usb2 phy init (Torez Smith) [1942772] - usb: dwc3: meson-g12a: check return of dwc3_meson_g12a_usb_init (Torez Smith) [1942772] - usb: dwc3: meson-g12a: get the reset as shared (Torez Smith) [1942772] - usb: dwc3: meson-g12a: handle the phy and glue registers separately (Torez Smith) [1942772] - usb: dwc3: meson-g12a: specify phy names in soc data (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor dwc3_gadget_ep_dequeue (Torez Smith) [1942772] - usb: dwc3: gadget: Remove unnecessary checks (Torez Smith) [1942772] - usb: dwc3: gadget: Give back staled requests (Torez Smith) [1942772] - usb: dwc3: gadget: Properly handle ClearFeature(halt) (Torez Smith) [1942772] - usb: dwc3: support continuous runtime PM with dual role (Torez Smith) [1942772] - USB: dwc3: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for DW5816e (Torez Smith) [1942772] - net: usb: ax88179_178a: Implement ethtool_ops set_eeprom (Torez Smith) [1942772] - usb: dwc3: gadget: Fix request completion check (Torez Smith) [1942772] - USB: dwc2: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - usb: dwc3: gadget: Do link recovery for SS and SSP (Torez Smith) [1942772] - usb: dwc3: gadget: Properly set maxpacket limit (Torez Smith) [1942772] - usb: dwc3: Fix GTXFIFOSIZ.TXFDEP macro name (Torez Smith) [1942772] - Documentation: driver-api/usb/writing_usb_driver.rst Updates documentation links (Torez Smith) [1942772] - pegasus: Remove pegasus' own workqueue (Torez Smith) [1942772] - usb: dwc2: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - usb: host: hisilicon: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - usb: host: xhci-plat: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - net: qmi_wwan: add support for ASKEY WWHC050 (Torez Smith) [1942772] - usb: dwc3: fix up for role switch API change (Torez Smith) [1942772] - usb: dwc2: Silence warning about supplies during deferred probe (Torez Smith) [1942772] - usb: dwc2: Implement set_selfpowered() (Torez Smith) [1942772] - usb: dwc3: core: don't do suspend for device mode if already suspended (Torez Smith) [1942772] - usb: dwc3: Rework resets initialization to be more flexible (Torez Smith) [1942772] - usb: dwc3: Rework clock initialization to be more flexible (Torez Smith) [1942772] - usb: dwc3: Add support for role-switch-default-mode binding (Torez Smith) [1942772] - usb: dwc3: Registering a role switch in the DRD code. (Torez Smith) [1942772] - usb: dwc3: core: add support for disabling SS instances in park mode (Torez Smith) [1942772] - usb: dwc3: gadget: Wrap around when skip TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Don't clear flags before transfer ended (Torez Smith) [1942772] - usb: dwc3: Remove kernel doc annotation where it's not needed (Torez Smith) [1942772] - usb: dwc3: Add ACPI support for xHCI ports (Torez Smith) [1942772] - usb: dwc3: exynos: Add support for Exynos5422 suspend clk (Torez Smith) [1942772] - usb: dwc3: meson-g12a: Don't use ret uninitialized in dwc3_meson_g12a_otg_init (Torez Smith) [1942772] - usb: dwc3: trace: print enqueue/dequeue pointers too (Torez Smith) [1942772] - usb: dwc2: add support for STM32MP15 SoCs USB OTG HS and FS (Torez Smith) [1942772] - usb: dwc3: Add Amlogic A1 DWC3 glue (Torez Smith) [1942772] - cdc_ncm: Fix the build warning (Torez Smith) [1942772] - cdc_ncm: Implement the 32-bit version of NCM Transfer Block (Torez Smith) [1942772] - r8152: reject unsupported coalescing params (Torez Smith) [1942772] - usb: dwc3: gadget: Update chain bit correctly when using sg list (Torez Smith) [1942772] - r8152: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - r8152: check disconnect status after long sleep (Torez Smith) [1942772] - net: usb: qmi_wwan: restore mtu min/max values after raw_ip switch (Torez Smith) [1942772] - USB: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - r8152: use new helper tcp_v6_gso_csum_prep (Torez Smith) [1942772] - net: usb: cdc-phonet: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - usb: dwc3: qcom: Replace by (Torez Smith) [1942772] - usb: dwc3: gadget: Check for IOC/LST bit in TRB->ctrl fields (Torez Smith) [1942772] - usb: dwc2: Fix in ISOC request length checking (Torez Smith) [1942772] - usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows (Torez Smith) [1942772] - usb: dwc3: debug: fix string position formatting mixup with ret and len (Torez Smith) [1942772] - qmi_wwan: unconditionally reject 2 ep interfaces (Torez Smith) [1942772] - qmi_wwan: re-add DW5821e pre-production variant (Torez Smith) [1942772] - r8152: Add MAC passthrough support to new device (Torez Smith) [1942772] - r8152: disable DelayPhyPwrChg (Torez Smith) [1942772] - r8152: avoid the MCU to clear the lanwake (Torez Smith) [1942772] - r8152: don't enable U1U2 with USB_SPEED_HIGH for RTL8153B (Torez Smith) [1942772] - r8152: disable test IO for RTL8153B (Torez Smith) [1942772] - r8152: Disable PLA MCU clock speed down (Torez Smith) [1942772] - r8152: disable U2P3 for RTL8153B (Torez Smith) [1942772] - r8152: get default setting of WOL before initializing (Torez Smith) [1942772] - r8152: reset flow control patch when linking on for RTL8153B (Torez Smith) [1942772] - r8152: fix runtime resume for linking change (Torez Smith) [1942772] - usb: dwc3: pci: add ID for the Intel Comet Lake -V variant (Torez Smith) [1942772] - net: usb: lan78xx: Add .ndo_features_check (Torez Smith) [1942772] - usb: dwc2: Drop unlock/lock upon queueing a work item (Torez Smith) [1942772] - usb: dwc3: gadget: Remove END_TRANSFER delay (Torez Smith) [1942772] - usb: dwc3: gadget: Delay starting transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Check END_TRANSFER completion (Torez Smith) [1942772] - usb: dwc3: turn off VBUS when leaving host mode (Torez Smith) [1942772] - usb: dwc2: fix debugfs FIFO count (Torez Smith) [1942772] - usb: dwc2: Fix IN FIFO allocation (Torez Smith) [1942772] - usb: dwc2: Fix Stalling a Non-Isochronous OUT EP (Torez Smith) [1942772] - usb: dwc3: gadget: Clear DCTL.ULSTCHNGREQ before set (Torez Smith) [1942772] - usb: dwc2: Fix NULL qh in dwc2_queue_transaction (Torez Smith) [1942772] - usb: dwc3: gadget: Set link state to RX_Detect on disconnect (Torez Smith) [1942772] - usb: dwc3: gadget: Don't send unintended link state change (Torez Smith) [1942772] - r8152: add missing endpoint sanity check (Torez Smith) [1942772] - net: usb: lan78xx: limit size of local TSO packets (Torez Smith) [1942772] - qmi_wwan: Add support for Quectel RM500Q (Torez Smith) [1942772] - usbip: Fix unsafe unaligned pointer usage (Torez Smith) [1942772] - usb: dwc3: use proper initializers for property entries (Torez Smith) [1942772] - net: r8152: use skb_list_walk_safe helper for gso segments (Torez Smith) [1942772] - net: usb: lan78xx: fix possible skb leak (Torez Smith) [1942772] - net: ch9200: remove unnecessary return (Torez Smith) [1942772] - net: ch9200: use __func__ in debug message (Torez Smith) [1942772] - tools: usb: usbip: Get rid of driver name printout in README (Torez Smith) [1942772] - can: gs_usb: gs_usb_probe(): use descriptors of current altsetting (Torez Smith) [1942772] - can: kvaser_usb: fix interface sanity check (Torez Smith) [1942772] - usb: dwc3: gadget: Fix request complete check (Torez Smith) [1942772] - thunderbolt: Update documentation with the USB4 information (Torez Smith) [1942772] - usbip: Fix error path of vhci_recv_ret_submit() (Torez Smith) [1942772] - usbip: Fix receive error in vhci-hcd when using scatter-gather (Torez Smith) [1942772] - net: usb: lan78xx: Fix error message format specifier (Torez Smith) [1942772] - net: usb: lan78xx: Fix suspend/resume PHY register access error (Torez Smith) [1942772] - usb: dwc3: pci: add ID for the Intel Comet Lake -H variant (Torez Smith) [1942772] - usb: dwc3: ep0: Clear started flag on completion (Torez Smith) [1942772] - usb: dwc3: gadget: Clear started flag for non-IOC (Torez Smith) [1942772] - usb: dwc3: gadget: Fix logical condition (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_leaf: Fix some info-leaks to USB devices (Torez Smith) [1942772] - can: ucan: fix non-atomic allocation in completion handler (Torez Smith) [1942772] - net: usb: aqc111: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - net: usbnet: Fix -Wcast-function-type (Torez Smith) [1942772] - net: hso: Fix -Wcast-function-type (Torez Smith) [1942772] - ax88179_178a: add ethtool_op_get_ts_info() (Torez Smith) [1942772] - r8152: avoid to call napi_disable twice (Torez Smith) [1942772] - r8152: Re-order napi_disable in rtl8152_close (Torez Smith) [1942772] - ax88172a: fix information leak on short answers (Torez Smith) [1942772] - usb: dwc2: create debugfs directory under usb root (Torez Smith) [1942772] - usb: dwc3: create debugfs directory under usb root (Torez Smith) [1942772] - net: cdc_ncm: Signedness bug in cdc_ncm_set_dgram_size() (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for Foxconn T77W968 LTE modules (Torez Smith) [1942772] - usbip: Fix uninitialized symbol 'nents' in stub_recv_cmd_submit() (Torez Smith) [1942772] - USBIP: add config dependency for SGL_ALLOC (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for DW5821e with eSIM support (Torez Smith) [1942772] - CDC-NCM: handle incomplete transfer of MTU (Torez Smith) [1942772] - usbip: tools: fix fd leakage in the function of read_attr_usbip_status (Torez Smith) [1942772] - can: peak_usb: fix a potential out-of-sync while decoding packets (Torez Smith) [1942772] - can: usb_8dev: fix use-after-free on disconnect (Torez Smith) [1942772] - can: mcba_usb: fix use-after-free on disconnect (Torez Smith) [1942772] - can: peak_usb: report bus recovery as well (Torez Smith) [1942772] - can: gs_usb: gs_can_open(): prevent memory leak (Torez Smith) [1942772] - usb: Spelling s/enpoint/endpoint/ (Torez Smith) [1942772] - usb: dwc3: gadget: fix race when disabling ep with cancelled xfers (Torez Smith) [1942772] - usb: dwc3: of-simple: add a shutdown (Torez Smith) [1942772] - usbip: Fix free of unallocated memory in vhci tx (Torez Smith) [1942772] - usbip: tools: Fix read_usb_vudc_device() error path handling (Torez Smith) [1942772] - usb: dwc3: pci: prevent memory leak in dwc3_pci_probe (Torez Smith) [1942772] - usb: dwc3: remove the call trace of USBx_GFLADJ (Torez Smith) [1942772] - usb: dwc3: select CONFIG_REGMAP_MMIO (Torez Smith) [1942772] - r8152: check the pointer rtl_fw->fw before using it (Torez Smith) [1942772] - net: lan78xx: remove set but not used variable 'event' (Torez Smith) [1942772] - usb: dwc3: debug: Remove newline printout (Torez Smith) [1942772] - r8152: support firmware of PHY NC for RTL8153A (Torez Smith) [1942772] - r8152: move r8153_patch_request forward (Torez Smith) [1942772] - r8152: add checking fw_offset field of struct fw_mac (Torez Smith) [1942772] - r8152: rename fw_type_1 with fw_mac (Torez Smith) [1942772] - usb: dwc2: use a longer core rest timeout in dwc2_core_reset() (Torez Smith) [1942772] - usb: dwc3: Disable phy suspend after power-on reset (Torez Smith) [1942772] - r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2 (Torez Smith) [1942772] - net: usb: lan78xx: Connect PHY before registering MAC (Torez Smith) [1942772] - usb: hso: obey DMA rules in tiocmget (Torez Smith) [1942772] - r8152: support request_firmware for RTL8153 (Torez Smith) [1942772] - net: usb: sr9800: fix uninitialized local variable (Torez Smith) [1942772] - net: usb: ax88179_178a: write mac to hardware in get_mac_addr (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit 0x1050 composition (Torez Smith) [1942772] - usb: dwc3: Remove dev_err() on platform_get_irq() failure (Torez Smith) [1942772] - usb: dwc3: Switch to platform_get_irq_byname_optional() (Torez Smith) [1942772] - r8152: Set macpassthru in reset_resume callback (Torez Smith) [1942772] - qmi_wwan: add support for Cinterion CLS8 devices (Torez Smith) [1942772] - usbip: clean up an indentation issue (Torez Smith) [1942772] - usbip: vhci_hcd indicate failed message (Torez Smith) [1942772] - r8152: Add identifier names for function pointers (Torez Smith) [1942772] - r8152: Use guard clause and fix comment typos (Torez Smith) [1942772] - hso: fix NULL-deref on tty open (Torez Smith) [1942772] - net: usb: ax88179_178a: allow optionally getting mac address from device tree (Torez Smith) [1942772] - r8152: Factor out OOB link list waits (Torez Smith) [1942772] - usbnet: ignore endpoints with invalid wMaxPacketSize (Torez Smith) [1942772] - cdc_ncm: fix divide-by-zero caused by invalid wMaxPacketSize (Torez Smith) [1942772] - usbnet: sanity checking of packet sizes and device mtu (Torez Smith) [1942772] - r8152: adjust the settings of ups flags (Torez Smith) [1942772] - r8152: modify rtl8152_set_speed function (Torez Smith) [1942772] - usb: dwc3: remove generic PHY calibrate() calls (Torez Smith) [1942772] - usb: gadget: net2280: Move all "ll" registers in one structure (Torez Smith) [1942772] - usb: dwc3: gadget: Workaround Mirosoft's BESL check (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix suspend resume regulator unbalanced disables (Torez Smith) [1942772] - usb: gadget: composite: Set recommended BESL values (Torez Smith) [1942772] - usb: dwc3: gadget: Set BESL config parameter (Torez Smith) [1942772] - usb: dwc3: Separate field holding multiple properties (Torez Smith) [1942772] - usb: dwc3: don't set gadget->is_otg flag (Torez Smith) [1942772] - usb: dwc3: st: Add of_dev_put() in probe function (Torez Smith) [1942772] - usb: dwc3: st: Add of_node_put() before return in probe function (Torez Smith) [1942772] - r8152: add a helper function about setting EEE (Torez Smith) [1942772] - r8152: saving the settings of EEE (Torez Smith) [1942772] - net: usb: Delete unnecessary checks before the macro call “dev_kfree_skb” (Torez Smith) [1942772] - r8152: divide the tx and rx bottom functions (Torez Smith) [1942772] - r8152: fix accessing skb after napi_gro_receive (Torez Smith) [1942772] - r8152: change rx_copybreak and rx_pending through ethtool (Torez Smith) [1942772] - r8152: support skb_add_rx_frag (Torez Smith) [1942772] - r8152: use alloc_pages for rx buffer (Torez Smith) [1942772] - r8152: replace array with linking list for rx information (Torez Smith) [1942772] - r8152: separate the rx buffer size (Torez Smith) [1942772] - usb: dwc3: Use clk_bulk_prepare_enable() (Torez Smith) [1942772] - usb: dwc3: Use devres to get clocks (Torez Smith) [1942772] - usb: dwc3: remove generic PHYs forwarding for XHCI device (Torez Smith) [1942772] - USB: usbip: convert to use dev_groups (Torez Smith) [1942772] - usb: dwc3: Update soft-reset wait polling rate (Torez Smith) [1942772] - usb: dwc2: gadget: Fix kill_all_requests race (Torez Smith) [1942772] - usb: dwc3: omap: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usb: dwc3: keystone: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usb: dwc3: omap: squash include/linux/platform_data/dwc3-omap.h (Torez Smith) [1942772] - usb: dwc3: meson-g12a: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usbip: tools: fix GCC8 warning for strncpy (Torez Smith) [1942772] - usb: dwc3: Switch to use device_property_count_u32() (Torez Smith) [1942772] - usb: dwc2: Switch to use device_property_count_u32() (Torez Smith) [1942772] - can: kvaser_usb: Use struct_size() in alloc_candev() (Torez Smith) [1942772] - net: usb: Merge cpu_to_le32s + memcpy to put_unaligned_le32 (Torez Smith) [1942772] - ax88179_178a: Merge memcpy + le32_to_cpus to get_unaligned_le32 (Torez Smith) [1942772] - usbnet: smsc75xx: Merge memcpy + le32_to_cpus to get_unaligned_le32 (Torez Smith) [1942772] - net: lan78xx: Merge memcpy + lexx_to_cpus to get_unaligned_lexx (Torez Smith) [1942772] - bluetooth: eliminate the potential race condition when removing the HCI controller (Gopal Tiwari) [1971488]- bareudp: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - vxlan: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - geneve: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - RDMA/siw: Release xarray entry (Kamal Heib) [1971483] - RDMA/siw: Properly check send and receive CQ pointers (Kamal Heib) [1971483] - RDMA/siw: Fix a use after free in siw_alloc_mr (Kamal Heib) [1971483] - RDMA/rxe: Clear all QP fields if creation failed (Kamal Heib) [1971483] - RDMA/rxe: Fix a bug in rxe_fill_ip_info() (Kamal Heib) [1971483] - RDMA/rxe: Remove rxe_dma_device declaration (Kamal Heib) [1971483] - IB/hfi1: Fix error return code in parse_platform_config() (Kamal Heib) [1971483] - IB/hfi1: Remove unused function (Kamal Heib) [1971483] - RDMA/srpt: Fix error return code in srpt_cm_req_recv() (Kamal Heib) [1971483] - IB/isert: Fix a use after free in isert_connect_request (Kamal Heib) [1971483] - RDMA: Verify port when creating flow rule (Kamal Heib) [1971483] - RDMA/uverbs: Fix a NULL vs IS_ERR() bug (Kamal Heib) [1971483] - RDMA/core: Don't access cm_id after its destruction (Kamal Heib) [1971483] - RDMA/core: Prevent divide-by-zero error triggered by the user (Kamal Heib) [1971483] - RDMA/core: Add CM to restrack after successful attachment to a device (Kamal Heib) [1971483] - RDMA/core: Unify RoCE check and re-factor code (Kamal Heib) [1971483] - RDMA/core: Fix corrupted SL on passive side (Kamal Heib) [1971483] - mm: vmalloc: add cond_resched() in __vunmap() (Rafael Aquini) [1978469] - /proc/PID/smaps: Add PMD migration entry parsing (Nico Pache) [1977066] - s390: add 3f program exception handler (Nico Pache) [1977066] - x86/ioremap: Fix CONFIG_EFI=n build (Nico Pache) [1977066] - mm, slub: move slub_debug static key enabling outside slab_mutex (Nico Pache) [1977066] - mm, slub: enable slub_debug static key when creating cache with explicit debug flags (Nico Pache) [1977066] - locking/mutex: Remove repeated declaration (Nico Pache) [1977066] - percpu: make pcpu_nr_empty_pop_pages per chunk type (Nico Pache) [1977066] - mm/swap: don't SetPageWorkingset unconditionally during swapin (Nico Pache) [1977066] - s390/tlb: make cleared_pXs flags consistent with generic code (Nico Pache) [1977066] - mm, compaction: make fast_isolate_freepages() stay within zone (Nico Pache) [1977066] - mm/vmscan: restore zone_reclaim_mode ABI (Nico Pache) [1977066] - mm, compaction: move high_pfn to the for loop scope (Nico Pache) [1977066] - memblock: do not start bottom-up allocations with kernel_end (Nico Pache) [1977066] - mm, page_alloc: disable pcplists during memory offline (Nico Pache) [1977066] - mm, page_alloc: move draining pcplists to page isolation users (Nico Pache) [1977066] - mm, page_alloc: cache pageset high and batch in struct zone (Nico Pache) [1977066] - mm, page_alloc: simplify pageset_update() (Nico Pache) [1977066] - mm, page_alloc: fix core hung in free_pcppages_bulk() (Nico Pache) [1977066] - mm, page_alloc: remove setup_pageset() (Nico Pache) [1977066] - mm, page_alloc: calculate pageset high and batch once per zone (Nico Pache) [1977066] - mm, pcp: share common code between memory hotplug and percpu sysctl handler (Nico Pache) [1977066] - mm, page_alloc: clean up pageset high and batch update (Nico Pache) [1977066] - s390/uv: handle destroy page legacy interface (Nico Pache) [1977066] - mm/filemap: fix filemap_map_pages for THP (Nico Pache) [1977066] - mm: filemap: add missing FGP_ flags in kerneldoc comment for pagecache_get_page (Nico Pache) [1977066] - mm/filemap.c: rewrite pagecache_get_page documentation (Nico Pache) [1977066] - mm: filemap: clear idle flag for writes (Nico Pache) [1977066] - mm: document semantics of ZONE_MOVABLE (Nico Pache) [1977066] - mm/page_isolation: cleanup set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_isolation: exit early when pageblock is isolated in set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_alloc: tweak comments in has_unmovable_pages() (Nico Pache) [1977066] - mm: reuse only-pte-mapped KSM page in do_wp_page() (Nico Pache) [1977066] - mm/memory.c: skip spurious TLB flush for retried page fault (Nico Pache) [1977066] - /proc/PID/smaps: consistent whitespace output format (Nico Pache) [1977066] - mm/memcontrol.c: prevent missed memory.low load tears (Nico Pache) [1977066] - mm, memcg: prevent mem_cgroup_protected store tearing (Nico Pache) [1977066] - mm, memcg: prevent memory.min load/store tearing (Nico Pache) [1977066] - mm, mempolicy: fix up gup usage in lookup_node (Nico Pache) [1977066] - mm/page_ext.c: drop pfn_present() check when onlining (Nico Pache) [1977066] - drivers/base/memory.c: drop pages_correctly_probed() (Nico Pache) [1977066] - drivers/base/memory.c: drop section_count (Nico Pache) [1977066] - include/linux/mm.h: remove dead code totalram_pages_set() (Nico Pache) [1977066] - tools headers uapi: Sync asm-generic/mman-common.h with the kernel (Nico Pache) [1977066] - mm/memcg: Relocate tcpmem to below memory in struct mem_cgroup (Waiman Long) [1959772] - mm/memcg: optimize user context object stock access (Waiman Long) [1959772] - mm/memcg: improve refill_obj_stock() performance (Waiman Long) [1959772] - mm/memcg: cache vmstat data in percpu memcg_stock_pcp (Waiman Long) [1959772] - mm/memcg: move mod_objcg_state() to memcontrol.c (Waiman Long) [1959772] - mm: memcontrol: move PageMemcgKmem to the scope of CONFIG_MEMCG_KMEM (Waiman Long) [1959772] - mm: memcontrol: inline __memcg_kmem_{un}charge() into obj_cgroup_{un}charge_pages() (Waiman Long) [1959772] - mm: memcontrol: use obj_cgroup APIs to charge kmem pages (Waiman Long) [1959772] - mm: memcontrol: change ug->dummy_page only if memcg changed (Waiman Long) [1959772] - mm: memcontrol: directly access page->memcg_data in mm/page_alloc.c (Waiman Long) [1959772] - mm: memcontrol: introduce obj_cgroup_{un}charge_pages (Waiman Long) [1959772] - mm: memcontrol: slab: fix obtain a reference to a freeing memcg (Waiman Long) [1959772] - mm: memmap defer init doesn't work as expected (Baoquan He) [1906271] - mm: check nr_initialised with PAGES_PER_SECTION directly in defer_init() (Baoquan He) [1906271] - mm/memory_hotplug: mark pageblocks MIGRATE_ISOLATE while onlining memory (Baoquan He) [1906271] - mm, memory_hotplug: update pcp lists everytime onlining a memory block (Baoquan He) [1906271] - mm: pass migratetype into memmap_init_zone() and move_pfn_range_to_zone() (Baoquan He) [1906271] - nfs: account for selinux security context when deciding to share superblock (Scott Mayhew) [1927027] - nfs: remove unneeded null check in nfs_fill_super() (Scott Mayhew) [1927027] - lsm,selinux: add new hook to compare new mount to an existing mount (Scott Mayhew) [1927027] - libceph: allow addrvecs with a single NONE/blank address (Jeff Layton) [1972278] - scsi: megaraid_sas: Update driver version to 07.717.02.00-rc1 (Tomas Henzl) [1968170] - scsi: megaraid_sas: Handle missing interrupts while re-enabling IRQs (Tomas Henzl) [1968170] - scsi: megaraid_sas: Early detection of VD deletion through RaidMap update (Tomas Henzl) [1968170] - scsi: megaraid_sas: Fix resource leak in case of probe failure (Tomas Henzl) [1968170] - scsi: megaraid_sas: Send all non-RW I/Os for TYPE_ENCLOSURE device through firmware (Tomas Henzl) [1968170] - scsi: megaraid_sas: Use DEFINE_SPINLOCK() for spinlock (Tomas Henzl) [1968170] - scsi: scsi_devinfo: Add blacklist entry for HPE OPEN-V (Ewan D. Milne) [1927508] - drivers: do not build devm_platform_get_and_ioremap_resource() for s390x (Jaroslav Kysela) [1917388] - redhat: update ALSA configs and add regmap-sdw-mbq to redhat/filter-modules.sh (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix the return value in dpcm_apply_symmetry() (Jaroslav Kysela) [1917388] - alsa: control_led - fix initialization in the mode show callback (Jaroslav Kysela) [1917388] - ALSA: seq: Fix race of snd_seq_timer_open() (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ZBook Power G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: headphone and mic don't work on an Acer laptop (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix the context to call snd_pcm_stop_xrun() (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 840 Aero G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP EliteBook x360 1040 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Elite Dragonfly G2 (Jaroslav Kysela) [1917388] - ASoC: rt5682: Fix the fast discharge for headset unplugging in soundwire mode (Jaroslav Kysela) [1917388] - ASoC: tas2562: Fix TDM_CFG0_SAMPRATE values (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir: Remove fix for DMI entry on Lenovo 2020 platforms (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo 2020 AMD platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: reset enabled_cores state at suspend (Jaroslav Kysela) [1917388] - ASoC: fsl-asoc-card: Set .owner attribute when registering card. (Jaroslav Kysela) [1917388] - ASoC: topology: Fix spelling mistake "vesion" -> "version" (Jaroslav Kysela) [1917388] - ASoC: rt5659: Fix the lost powers for the HDA header (Jaroslav Kysela) [1917388] - ASoC: core: Fix Null-point-dereference in fmt_single_name() (Jaroslav Kysela) [1917388] - spi: pxa2xx: Drop useless comment in the pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Switch to use BIT() and GENMASK() in pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Update header block in pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Add SSC2 and SSPSP2 SSP registers (Jaroslav Kysela) [1917388] - ASoC: pxa: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: pxa: pxa-ssp: Remove redundant null check before clk_prepare_enable/clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: mmp-sspa: drop unneeded snd_soc_dai_set_drvdata (Jaroslav Kysela) [1917388] - ASoC: mmp-sspa: set phase two word length register (Jaroslav Kysela) [1917388] - ASoC: pxa: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: Fix 7/8 spaces indentation in Kconfig (Jaroslav Kysela) [1917388] - ASoC: jz4740-i2s: Remove manual DMA peripheral ID assignment (Jaroslav Kysela) [1917388] - ASoC: jz4740-i2s: add missed checks for clk_get() (Jaroslav Kysela) [1917388] - ASoC: Intel: fix error code cnl_set_dsp_D0() (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Unassign ram_read and read_write ops (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove haswell solution (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove sst_dsp_get_thread_context (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove unused DSP interface fields (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: remove unneeded semicolon (Jaroslav Kysela) [1917388] - catpt: Switch to use list_entry_is_head() helper (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Optimize applying user settings (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Correct clock selection for dai trigger (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Skip position update for unprepared streams (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Relax clock selection conditions (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Fix compilation when CONFIG_MODULES is disabled (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Cleanup after power routines streamlining (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Replace open coded variant of resource_intersection() (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Streamline power routines across LPT and WPT (Jaroslav Kysela) [1917388] - ASoC: Intel: haswell: Add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Change SSP2-Codec DAI id to 0 (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Drop compress-cpu-dai bits (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5651: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-rt5677: add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: set card and driver name dynamically (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-rt5650: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove rt5640 support for baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove max98090 support for baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: use inclusive language for SSP bclk/fsync (Jaroslav Kysela) [1917388] - ASoC: Intel: Atom: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: select WANT_DEV_COREDUMP (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: intel: SND_SOC_INTEL_KEEMBAY should depend on ARCH_KEEMBAY (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Add explicit DMADEVICES kconfig dependency (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: Remove duplicate kconfigs (Jaroslav Kysela) [1917388] - ASoC: remove zte zx drivers (Jaroslav Kysela) [1917388] - ASoC: codecs: wsa881x: add missing stream rates and format (Jaroslav Kysela) [1917388] - ASoC: wm_adsp: Remove unused control callback structure (Jaroslav Kysela) [1917388] - ASoC: wm8994: Fix PM disable depth imbalance on error (Jaroslav Kysela) [1917388] - ASoC: wm8903: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: wm8523: Fix a typo in a comment (Jaroslav Kysela) [1917388] - ASoC: wm8350: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: wm5102: Use get_unaligned_be16() for dac_comp_coeff (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: Set digital gain range correctly (Jaroslav Kysela) [1917388] - ASoC: wcd9335: Remove unnecessary conversion to bool (Jaroslav Kysela) [1917388] - ASoC: rt715: remove unused parameter (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: add the calibration functions (Jaroslav Kysela) [1917388] - ASoC: rt5682: clock driver must use the clock provider API (Jaroslav Kysela) [1917388] - ASoC: rt1015: enable BCLK detection after calibration (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Add support for more data formats (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Move format check into `set_fmt()` (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Rearrange operations in `hw_params()` (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Fix not setting word length if DAIFMT_CBS_CFS (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: Fix regulator_dev_lookup() fails for id "LDO_VAUD18" (Jaroslav Kysela) [1917388] - ASoC: Remove mt6359_platform_driver_remove (Jaroslav Kysela) [1917388] - ASoC: Fix vaud18 power leakage of mt6359 (Jaroslav Kysela) [1917388] - ASoC: es8316: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix Bitclock polarity inversion (Jaroslav Kysela) [1917388] - ASoC: cs35l33: fix an error code in probe() (Jaroslav Kysela) [1917388] - ASoC: cs35l34: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: wm8998: Fix PM disable depth imbalance on error (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd9335: Set digital gain range correctly (Jaroslav Kysela) [1917388] - ASoC: TSCS454: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: TSCS42xx: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: ts3a227e: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: tlv320: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: tas571x: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: tas*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tas2562: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: remove remnants of sirf prima/atlas audio codec (Jaroslav Kysela) [1917388] - ASoC: rt5645: add error checking to rt5645_probe function (Jaroslav Kysela) [1917388] - Revert "ASoC: rt5645: fix a NULL pointer dereference" (Jaroslav Kysela) [1917388] - ASoC: rt1015: modify calibration sequence for better performance (Jaroslav Kysela) [1917388] - ASoC: rk3328: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: pcm179x: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: pcm1789: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: nau8315: revise the power event of EN_PIN dapm widget for symmetry (Jaroslav Kysela) [1917388] - ASoC: nau8315: add codec driver (Jaroslav Kysela) [1917388] - ASoC: gtm601: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: es8328: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: es7241: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: es7134: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: da9055: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: da7219: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Add DAPM widget to set HP out to cap-less mode (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Don't change cap-couple setting in HP PMU/PMD (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Adjust timeouts for cap-coupled outputs (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Reset interrupt flags in bias PREPARE (Jaroslav Kysela) [1917388] - ASoC: codecs/jz47xx: Use regmap_{set,clear}_bits (Jaroslav Kysela) [1917388] - treewide: Use fallthrough pseudo-keyword (Jaroslav Kysela) [1917388] - ASoC: inno_rk3036: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: remove cancel_work_sync in runtime suspend (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: Add RX support (Jaroslav Kysela) [1917388] - ALSA: cx46xx: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Convert from cpu to data format (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing topology with PCM to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing empty topology with variants to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: tegra: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: tegra: Don't warn on probe deferral (Jaroslav Kysela) [1917388] - ASoC: tegra: tegra_rt5640: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: tegra: tegra_wm8753: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: tegra: trimslice.c: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: ti: davinci-evm: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: ti: davinci: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: ti: j721e-evm: Fix compiler warning when CONFIG_OF=n (Jaroslav Kysela) [1917388] - ASoC: ti: omap-abe-twl6040: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: ti: omap-mcsp: remove duplicate test (Jaroslav Kysela) [1917388] - ASoC: uniphier: Simplify the return expression of uniphier_aio_startup (Jaroslav Kysela) [1917388] - ASoC: uniphier: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: ux500: mop500: rename shadowing variable (Jaroslav Kysela) [1917388] - ASoC: ux500: mop500: align function prototype (Jaroslav Kysela) [1917388] - ALSA: x86: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams (Jaroslav Kysela) [1917388] - ASoC: cs42l56: fix up error handling in probe (Jaroslav Kysela) [1917388] - ASoC: cs42l52: Minor tidy up of error paths (Jaroslav Kysela) [1917388] - ASoC: cs42l51: manage mclk shutdown delay (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Wait for PLL to lock before switching to it (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Only start PLL if it is needed (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Wait at least 150us after writing SCLK_PRESENT (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Use bclk from hw_params if set_sysclk was not called (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Report jack and button detection (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Add Capture Support (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix channel width support (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Always wait at least 3ms after reset (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Don't enable/disable regulator at Bias Level (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix mixer volume control (Jaroslav Kysela) [1917388] - ASoC: cs*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: bd28623: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: alc5632: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: ak4458: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: ak4118: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: alc5623: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: ak5558: Correct the dai name for ak5552 (Jaroslav Kysela) [1917388] - ASoC: ak5558: change function name to ak5558_reset (Jaroslav Kysela) [1917388] - ASoC: ak5558: Add support for ak5552 (Jaroslav Kysela) [1917388] - ASoC: ak5558: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: ak5558: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: adau1977: remove platform data and move micbias bindings include (Jaroslav Kysela) [1917388] - ASoC: adau17x1: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: adau*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: Add ADAU1372 audio CODEC support (Jaroslav Kysela) [1917388] - ASoC: amd: fix for pcm_read() error (Jaroslav Kysela) [1917388] - ASoC: amd: drop S24_LE format support (Jaroslav Kysela) [1917388] - ASoC: amd: Add support for ALC1015P codec in acp3x machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: acp3x-pdm-dma: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: amd: raven: acp3x-i2s: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: acp3x-pdm-dma: remove unnecessary assignments (Jaroslav Kysela) [1917388] - ASoC: amd: fix acpi dependency kernel warning (Jaroslav Kysela) [1917388] - ASoC: amd: update spdx license for acp machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: Add support for RT5682 codec in machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: Adding DAI LINK for rt1015 codec (Jaroslav Kysela) [1917388] - ASoC: amd: Adding support for ALC1015 codec in machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: AMD RV RT5682 should depends on CROS_EC (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: remove invalid kernel-doc comment (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - refine DMI entries for some Lenovo products (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395 (Jaroslav Kysela) [1917388] - ASoC: amd: Replacing MSI with Legacy IRQ model (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad E14 Gen 2 (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe (broken BIOS) (Jaroslav Kysela) [1917388] - ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision) (Jaroslav Kysela) [1917388] - ASoC: amd: change clk_get() to devm_clk_get() and add missed checks (Jaroslav Kysela) [1917388] - ASoC: amd: Return -ENODEV for non-existing ACPI call (Jaroslav Kysela) [1917388] - ASoC: amd: support other audio modes for raven (Jaroslav Kysela) [1917388] - ASoC: topology: adhere to KUNIT formatting standard (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing various arguments to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ALSA: trident: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: sonicvibes: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: sis7019: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: remove unneeded break (Jaroslav Kysela) [1917388] - ALSA: hdsp: don't disable if not enabled (Jaroslav Kysela) [1917388] - ALSA: hdsp: hardware output loopback (Jaroslav Kysela) [1917388] - ALSA: pci: mixart: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ALSA: maestro: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: lola: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: intel8x0: Fix missing check in snd_intel8x0m_create (Jaroslav Kysela) [1917388] - ALSA: intel8x0: Don't update period unless prepared (Jaroslav Kysela) [1917388] - ALSA: hda: Avoid spurious unsol event handling during S3/S4 (Jaroslav Kysela) [1917388] - ALSA: ens1370: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: emu10k1: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: emu10k1: Use dma_set_mask_and_coherent to simplify code (Jaroslav Kysela) [1917388] - ALSA: ctxfi: fix comment syntax in file headers (Jaroslav Kysela) [1917388] - ALSA: ctxfi: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: ctxfi: cthw20k2: fix mask on conf to allow 4 bits (Jaroslav Kysela) [1917388] - ALSA: bt87x: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: azt3328: Assign boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: asihpi: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: dice: fix stream format for TC Electronic Konnekt Live at high sampling transfer frequency (Jaroslav Kysela) [1917388] - ALSA: dice: disable double_pcm_frames mode for M-Audio Profire 610, 2626 and Avid M-Box 3 Pro (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix amdtp_packet tracepoints event for packet_index field (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix calculation for size of IR context payload (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix check for the size of isochronous packet payload (Jaroslav Kysela) [1917388] - ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro (Jaroslav Kysela) [1917388] - ALSA: dice: fix stream format at middle sampling rate for Alesis iO 26 (Jaroslav Kysela) [1917388] - ALSA: bebob: enable to deliver MIDI messages for multiple ports (Jaroslav Kysela) [1917388] - ALSA: bebob: detect the number of available MIDI ports (Jaroslav Kysela) [1917388] - ALSA: bebob: code refactoring for stream format detection (Jaroslav Kysela) [1917388] - ALSA: dice: fix null pointer dereference when node is disconnected (Jaroslav Kysela) [1917388] - ALSA: fireface: fix to parse sync status register of latter protocol (Jaroslav Kysela) [1917388] - ALSA: bebob: remove an unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: fireface: remove unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: oxfw: remove an unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: dice: add support for Lexicon I-ONIX FW810s (Jaroslav Kysela) [1917388] - ALSA: firewire-tascam: Fix integer overflow in midi_port_work() (Jaroslav Kysela) [1917388] - ALSA: fireface: Fix integer overflow in transmit_midi_msg() (Jaroslav Kysela) [1917388] - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() (Jaroslav Kysela) [1917388] - ALSA: firewire: fix comparison to bool warning (Jaroslav Kysela) [1917388] - ALSA: firewire: Replace tasklet with work (Jaroslav Kysela) [1917388] - ALSA: firewire: convert tasklets to use new tasklet_setup() API (Jaroslav Kysela) [1917388] - ALSA: vx: Use roundup() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: pcsp: Fix fall-through warnings for Clang (Jaroslav Kysela) [1917388] - ALSA: dummy: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: aloop: Fix initialization of controls (Jaroslav Kysela) [1917388] - ALSA: aloop: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: atmel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1917388] - ASoC: SOF: ext_manifest: use explicit number for elem_type (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: allow for partial match in parent name (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: add helper to identify parent driver. (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: add new fields for mach_params (Jaroslav Kysela) [1917388] - ASoC: rt5682: Add a new property for the DMIC clock driving (Jaroslav Kysela) [1917388] - ALSA: hda: Change AZX_MAX_BUF_SIZE from 1GB to 4MB (Jaroslav Kysela) [1917388] - soundwire: sysfs: Constify static struct attribute_group (Jaroslav Kysela) [1917388] - ALSA: remove trailing semicolon in macro definition (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: don't send DAI_CONFIG IPC for older firmware (Jaroslav Kysela) [1917388] - ASoC: SOF: use current DAI config during resume (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: Update ADL P to use its own descriptor (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: add missing use_acpi_target_states for TGL platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: topology: remove useless code (Jaroslav Kysela) [1917388] - ASoC: SOF: Kconfig: fix typo of SND_SOC_SOF_PCI (Jaroslav Kysela) [1917388] - ASOC: SOF: simplify nocodec mode (Jaroslav Kysela) [1917388] - ASoC: SOF: pcm: export snd_pcm_dai_link_fixup (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: update set_mach_params() (Jaroslav Kysela) [1917388] - ASoC: SOF: change signature of set_mach_params() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: add Kconfig option for probe workqueues (Jaroslav Kysela) [1917388] - ASoC: SOF: Simplify sof_probe_complete handling for acpi/pci/of (Jaroslav Kysela) [1917388] - ASoC: SOF: core: Add missing error prints to device probe operation (Jaroslav Kysela) [1917388] - ASoC: SOF: match SSP config with pcm hw params (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: add hw params callback for SSP DAIs (Jaroslav Kysela) [1917388] - ASoC: SOF: parse multiple SSP DAI and hw configs (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: drop display power on/off in D0i3 flows (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: move ELH chip info (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: APL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: CNL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: ICL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: TGL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: TGL: fix EHL ops (Jaroslav Kysela) [1917388] - ASoC: SOF: core: harden shutdown helper (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: fix core status verification (Jaroslav Kysela) [1917388] - ASoC: SOF: add a helper to get topology configured mclk (Jaroslav Kysela) [1917388] - ASoC: SOF: only allocate debugfs cache buffers for IPC flood entries (Jaroslav Kysela) [1917388] - ASoC: SOF: fix debugfs initialisation error handling (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: enable async suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: turn off display power in resume (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: fix wrong poll bits in dsp power down (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: unregister DMIC device on probe error (Jaroslav Kysela) [1917388] - ALSA: hda: move Intel SoundWire ACPI scan to dedicated module (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: SoundWire: simplify Kconfig (Jaroslav Kysela) [1917388] - ASoC: SOF: pci: move DSP_CONFIG use to platform-specific drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: pci: split PCI into different drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: add sof_icl_ops for ICL platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: ACPI: avoid reverse module dependency (Jaroslav Kysela) [1917388] - ASoC: SOF: relax ABI checks and avoid unnecessary warnings (Jaroslav Kysela) [1917388] - ASoC: SOF: fix runtime pm usage mismatch after probe errors (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: add dev_dbg() when DMIC number is overridden (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: don't keep a temporary variable (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: detect DMIC number in SoundWire mixed config (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: SoundWire: refine ACPI match (Jaroslav Kysela) [1917388] - ASoC: SOF: HDA: (cosmetic) simplify hda_dsp_d0i3_work() (Jaroslav Kysela) [1917388] - ASoC: SOF: remove unused functions (Jaroslav Kysela) [1917388] - ASoC: SOF: fix string format for errors (Jaroslav Kysela) [1917388] - ASoC: SOF: add missing pm debug (Jaroslav Kysela) [1917388] - ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: release display power at link_power (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use hdac_ext fine-grained link management (Jaroslav Kysela) [1917388] - ASoC: SOF: debug: Fix a potential issue on string buffer termination (Jaroslav Kysela) [1917388] - ASoC: SOF: add be_hw_params_fixup() for ALH (Jaroslav Kysela) [1917388] - ASoC: SOF: topology: Prevent NULL pointer dereference with no TLV (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: hda-loader: use snd_sof_dsp_core_power_down/up APIs (Jaroslav Kysela) [1917388] - ASoC: SOF: Filter out unneeded core power up/downs (Jaroslav Kysela) [1917388] - ASoC: SOF: update dsp core power status in common APIs (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda-loader: keep init cores alive (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use snd_sof_dsp_core_power_up/down API (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Enable DMI L1 for trace (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: enable DMI L1 for D0i3-compatible streams (Jaroslav Kysela) [1917388] - ASoC: SOF: add a pointer to download repo in case FW request fails (Jaroslav Kysela) [1917388] - ASoC: SOF: SND_INTEL_DSP_CONFIG dependency (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: soundwire: fix select/depend unmet dependencies (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: initial support to AlderLake-P (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: tgl: do thorough remove at .shutdown() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: sof-pci-dev: add .shutdown() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: add snd_sof_device_shutdown() helper for shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: add .shutdown() callback to snd_sof_dsp_ops (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Avoid checking jack on system suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Modify existing helper to disable WAKEEN (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Resume codec to do jack detection (Jaroslav Kysela) [1917388] - ASoC: SOF: add mutex to protect the dsp_power_state access (Jaroslav Kysela) [1917388] - ASoC: SOF: Fix spelling mistake in Kconfig "ond" -> "and" (Jaroslav Kysela) [1917388] - ASoC: SOF: imx: update kernel-doc description (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: add SoundWire support for ADL-S (Jaroslav Kysela) [1917388] - ASoC: SOF: control: fix cppcheck warning in snd_sof_volume_info() (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: allow for coexistence between SOF and catpt drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: allow for coexistence between SOF and Atom/SST drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: acpi: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: initial support for Alderlake-S (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: fix Kconfig dependency for SND_INTEL_DSP_CONFIG (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: fix Kconfig punctuation and wording (Jaroslav Kysela) [1917388] - ASoC: SOF: Kconfig: fix Kconfig punctuation and wording (Jaroslav Kysela) [1917388] - ASoC: SOF: imx: fix Kconfig punctuation (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix 3-830 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Glavey TM800A550L tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Fix random noise at the HDMI output (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add quirk for new ADL-P Rvp (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ADL jack-less SoundWire configurations (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ADL SoundWire base configurations (Jaroslav Kysela) [1917388] - ASoC: Intel: kbl_da7219_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoc: Intel: board: add BE DAI link for WoV (Jaroslav Kysela) [1917388] - ASoC: Intel: kbl: Add MST route change to kbl machine drivers (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_rt5672: Set card.components string (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_rt5672: Add support for Bay Trail CR / SSP0 (Jaroslav Kysela) [1917388] - ASoC: Intel: Baytrail: Add quirk for the Dell Venue 10 Pro 5055 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: Unify the thinkpad10 and aegex10 byt-match quirks (Jaroslav Kysela) [1917388] - ASoC: Intel: Boards: cml_da7219_max98390: add capture stream for echo reference (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Hi8 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: add max98390 echo reference support (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: Add jack detect support (Jaroslav Kysela) [1917388] - ASoC: intel: atom: Remove 44100 sample-rate from the media and deep-buffer DAI descriptions (Jaroslav Kysela) [1917388] - ASoC: intel: atom: Stop advertising non working S24LE support (Jaroslav Kysela) [1917388] - ASoC: intel: sof_rt5682: use the topology mclk (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_rt5682: Add ALC1015Q-VB speaker amp support (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: skl-topology: fix -frame-larger-than (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add used AIF to the components string (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Enable jack-detect support on Asus T100TAF (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: remove unused static variable (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: remove TGL RVP mixed SoundWire/TDM config (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: remove unused TGL table with rt5682 only (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Compile when any configuration is selected (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: sof-wm8804: add check for PLL setting (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 10-p0XX OVCD current threshold (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID 7316R tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ACPI matching table for HP Spectre x360 (Jaroslav Kysela) [1917388] - ASoC: intel: sof_sdw: add trace for dai links (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: detect DMIC number based on mach params (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add mic:dmic and cfg-mics component strings (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add quirk for HP Spectre x360 convertible (Jaroslav Kysela) [1917388] - ASoC: Intel: sof-sdw: indent and add quirks consistently (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: reorganize quirks by generation (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: max98373: get dapm from cpu_dai (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: Add machine driver for BYT/WM5102 (Jaroslav Kysela) [1917388] - ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr() (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Support IEC958 encoded PCM format (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A3E (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A32 (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E (Jaroslav Kysela) [1917388] - ASoC: Intel: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Wake up device before configuring SSP port (Jaroslav Kysela) [1917388] - ASoC: Intel: remove duplicate MODULE_LICENSE/DESCRIPTION tags (Jaroslav Kysela) [1917388] - ASoC: Intel: adl: remove sof_fw_filename setting in ADL snd_soc_acpi_mach (Jaroslav Kysela) [1917388] - ASoC: Intel: common: add ACPI matching tables for Alder Lake (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Zero snd_ctl_elem_value (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete (Jaroslav Kysela) [1917388] - ASoC: intel: skl: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Move snd_soc_dai_set_tdm_slot call to cht_codec_fixup (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Mele PCG03 Mini PC (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_INTERNAL_MIC_MAP input-mapping (Jaroslav Kysela) [1917388] - ASoC: Intel: byt/cht: set pm ops dynamically (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove sst_pdata structure (Jaroslav Kysela) [1917388] - ASoC: Intel: Make atom components independent of sst-dsp (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST-legacy specific constants (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove unused DSP operations (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST firmware components (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST ACPI component (Jaroslav Kysela) [1917388] - ASoC: Intel: Select catpt and deprecate haswell (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-5677: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-5650: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: haswell: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Simple sysfs attributes (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Event tracing (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Device driver lifecycle (Jaroslav Kysela) [1917388] - drivers: provide devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: PCM operations (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Firmware loading and context restore (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Define DSP operations (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Add IPC message handlers (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Implement IPC protocol (Jaroslav Kysela) [1917388] - ASoC: Intel: Add catpt base members (Jaroslav Kysela) [1917388] - resource: Introduce resource_intersection() for overlapping resources (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for ARCHOS Cesium 140 (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: byt/cht: set card and driver name at run time (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_SPEAKERS quirk-flag (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Enable DMA transfer mode (Jaroslav Kysela) [1917388] - ASoC: Intel: keembay: use inclusive language for bclk and fsync (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcht_es8316: Remove comment about SSP0 being untested (Jaroslav Kysela) [1917388] - ASoC: rt1015: remove bclk_ratio (Jaroslav Kysela) [1917388] - ASoC: cs42l73: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: cs53l30: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: sti-sas: add missing MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Regmap must use_single_read/write (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: fix the function number of SDCA control for feature unit 0x1E (Jaroslav Kysela) [1917388] - ASoC: da7219: do not request a new clock consummer reference (Jaroslav Kysela) [1917388] - ASoC: max98088: fix ni clock divider calculation (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: add the notification when volume changed (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: change capture switch controls (Jaroslav Kysela) [1917388] - ASoC: da7219: properly get clk from the provider (Jaroslav Kysela) [1917388] - ASoC: wcd934x: use the clock provider API (Jaroslav Kysela) [1917388] - ASoC: adau17x1: Avoid overwriting CHPF (Jaroslav Kysela) [1917388] - ASoC: ak4458: enable daisy chain (Jaroslav Kysela) [1917388] - ASoC: rt1015p: add support on format S32_LE (Jaroslav Kysela) [1917388] - ASoC: rt286: Generalize support for ALC3263 codec (Jaroslav Kysela) [1917388] - ASoC: rt298: Configure combo jack for headphones (Jaroslav Kysela) [1917388] - ASoC: rt286: Configure combo jack for headphones (Jaroslav Kysela) [1917388] - ASoC: sigmadsp: Disable cache mechanism for readbacks (Jaroslav Kysela) [1917388] - ASoC: rt286: Make RT286_SET_GPIO_* readable and writable (Jaroslav Kysela) [1917388] - ASoC: rt286: Fix upper byte in DMIC2 configuration (Jaroslav Kysela) [1917388] - ASoC: ak4458: check reset control status (Jaroslav Kysela) [1917388] - ASoC: codecs: rt5682: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt715: remove kcontrols which no longer be used (Jaroslav Kysela) [1917388] - ASoC: rt715: add main capture switch and main capture volume (Jaroslav Kysela) [1917388] - ASoC: rt715: modification for code simplicity (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: Fix missing IRQF_ONESHOT as only threaded handler (Jaroslav Kysela) [1917388] - ASoC: cs35l35: remove unused including (Jaroslav Kysela) [1917388] - ASoC: ak5558: correct reset polarity (Jaroslav Kysela) [1917388] - ASoC: cs35l36: Fix an error handling path in 'cs35l36_i2c_probe()' (Jaroslav Kysela) [1917388] - ASoC: cs35l35: Fix an error handling path in 'cs35l35_i2c_probe()' (Jaroslav Kysela) [1917388] - ASoC: wcd9335: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt1019: remove registers to sync with rt1019 datasheet (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: wcd934x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: tas2770: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: cx2072x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt1019: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: add AIC3106 (Jaroslav Kysela) [1917388] - ASoC: codecs: wsa881x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: codecs: Fix runtime PM imbalance in tas2552_probe (Jaroslav Kysela) [1917388] - ASoC: rt1011: remove pack_id check in rt1011 (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: add SPI support (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: move I2C to separated file (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: rename probe function (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: move model definitions (Jaroslav Kysela) [1917388] - ASoC: max98390: Add support for tx slot configuration. (Jaroslav Kysela) [1917388] - ASoC: ak5558: Fix s/show/slow/ typo (Jaroslav Kysela) [1917388] - ASoC: tlv320aic32x4: Register clocks before registering component (Jaroslav Kysela) [1917388] - ASoC: tlv320aic32x4: Increase maximum register in regmap (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add a rt5670_components() helper (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add a quirk for the Dell Venue 10 Pro 5055 (Jaroslav Kysela) [1917388] - ASoC: da732x: simplify code (Jaroslav Kysela) [1917388] - ASoC: lm49453: fix useless assignment before return (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: Fix spelling mistake "reate" -> "create" (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: add MT6359 accdet jack driver (Jaroslav Kysela) [1917388] - ASoC: max98373: Added 30ms turn on/off time delay (Jaroslav Kysela) [1917388] - ASoC: max98373: Changed amp shutdown register as volatile (Jaroslav Kysela) [1917388] - ASoC: wm8960: Remove bitclk relax condition in wm8960_configure_sysclk (Jaroslav Kysela) [1917388] - ASoC: max98373: Added controls for autorestart config (Jaroslav Kysela) [1917388] - ASoC: rt1015: Add bclk detection and dc detection (Jaroslav Kysela) [1917388] - ASoC: wm8960: Fix wrong bclk and lrclk with pll enabled for some chips (Jaroslav Kysela) [1917388] - ASoC: rt1019: make symbol 'rt1019_i2c_driver' static (Jaroslav Kysela) [1917388] - ASoC: rt1019: add rt1019 amplifier driver (Jaroslav Kysela) [1917388] - ASoC: tscs454: remove useless test on PLL disable (Jaroslav Kysela) [1917388] - ASoC: tlv320dac33: clarify expression (Jaroslav Kysela) [1917388] - ASoC: tas2770: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: tas2562: remove warning on return value (Jaroslav Kysela) [1917388] - ASoC: tas2562: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: sti-sas: remove unused struct members (Jaroslav Kysela) [1917388] - ASoC: sigmadsp: align function prototype (Jaroslav Kysela) [1917388] - ASoC: pcm1681: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: nau8825: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: mt6359: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: mt6358: remove useless initializations (Jaroslav Kysela) [1917388] - ASoC: max98090: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: remove unused spk_mask member (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: align function arguments (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: remove useless initializations (Jaroslav Kysela) [1917388] - ASoC: da7219-aad: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: cx2070x: remove duplicate else branch (Jaroslav Kysela) [1917388] - ASoC: cx2070x: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: adau1977: remove useless return (Jaroslav Kysela) [1917388] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Jaroslav Kysela) [1917388] - ASoC: ad1836: remove useless return (Jaroslav Kysela) [1917388] - ASoC: ab8500-codec: remove useless structure (Jaroslav Kysela) [1917388] - ASoC: rt711: add snd_soc_component remove callback (Jaroslav Kysela) [1917388] - ASoC: rt5659: Update MCLK rate in set_sysclk() (Jaroslav Kysela) [1917388] - ASoC: rt5640: Rename 'Mono DAC Playback Volume' to 'DAC2 Playback Volume' (Jaroslav Kysela) [1917388] - ASoC: rt1015p: add acpi device id for rt1015p (Jaroslav Kysela) [1917388] - ASoC: wm_hubs: align function prototype (Jaroslav Kysela) [1917388] - ASoC: wm_adsp: simplify return value (Jaroslav Kysela) [1917388] - ASoC: wm8996: clarify expression (Jaroslav Kysela) [1917388] - ASoC: wm8994: align function prototype (Jaroslav Kysela) [1917388] - ASoC: wm8978: clarify expression (Jaroslav Kysela) [1917388] - ASoC: wm8958-dsp2: rename local 'control' arrays (Jaroslav Kysela) [1917388] - ASoC: arizona: fix function argument (Jaroslav Kysela) [1917388] - ASoC: wm2200: remove unused structure (Jaroslav Kysela) [1917388] - ASoC: rt5682: add delay time of workqueue to control next IRQ event (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Remove unused including (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Fix return value check in rt715_sdca_sdw_probe() (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Set clock source for both ways of stream (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Provide finer control on playback path (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Disable regulators if probe fails (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Remove power if the driver is being removed (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: Add RT711 SDCA vendor-specific driver (Jaroslav Kysela) [1917388] - ASoC: rt5645: The ALC3270 variant does not have a headset-mic pin (Jaroslav Kysela) [1917388] - ASoC: rt5645: Move rt5645_platform_data to sound/soc/codecs/rt5645.c (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Remove superfluous error message (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Add RT715 sdca vendor-specific driver (Jaroslav Kysela) [1917388] - ASoC: wm8962: Relax bit clock divider searching (Jaroslav Kysela) [1917388] - ASoC: rt1316: Fix return value check in rt1316_sdw_probe() (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: Fix identation of .driver elements (Jaroslav Kysela) [1917388] - ASoC: codec: Omit superfluous error message in jz4760_codec_probe() (Jaroslav Kysela) [1917388] - ASoC: sigmadsp-regmap: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ASoC: rt5631: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ASoC: jz4760: fix set but not used warning (Jaroslav Kysela) [1917388] - ASoC: cs4270: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: rt5682: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5677: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: rt5677: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5670: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5668: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: rt5668: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5665: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5663: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5660: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5659: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5651: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: rt5651: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5645: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5645: use logical OR (Jaroslav Kysela) [1917388] - ASoC: rt5640: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1308: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1305: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1016: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1015: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1011: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1011: remove redundant test (Jaroslav Kysela) [1917388] - ASoC: rt1011: use logical OR (Jaroslav Kysela) [1917388] - ASoC: wm8524: Do not print probe defer error (Jaroslav Kysela) [1917388] - ASoC: codecs: nau8825: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: rt1316: Add RT1316 SDCA vendor-specific driver (Jaroslav Kysela) [1917388] - ASoc: rt5631: Constify static struct coeff_clk_div (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct acpi_device_id (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct sdw_slave_ops (Jaroslav Kysela) [1917388] - ASoC: wcd934x: remove useless return (Jaroslav Kysela) [1917388] - ASoC: wcd9335: clarify return value (Jaroslav Kysela) [1917388] - ASoC: wcd-clsh-v2: align function prototypes (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: add a sanity check in set channel map (Jaroslav Kysela) [1917388] - ASoC: es8316: Simplify adc_pga_gain_tlv table (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe (Jaroslav Kysela) [1917388] - ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1917388] - ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add emulated 'DAC1 Playback Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove ADC vol-ctrl mute bits poking from Sto1 ADC mixer settings (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove 'HP Playback Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove 'OUT Channel Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt1015: fix i2c communication error (Jaroslav Kysela) [1917388] - ASoC: codec: Add driver for JZ4760 internal codec (Jaroslav Kysela) [1917388] - ASoC: codec/ingenic: Depend on MACH_INGENIC (Jaroslav Kysela) [1917388] - ASoC: codec: hdmi-codec: Support IEC958 encoded PCM format (Jaroslav Kysela) [1917388] - ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during system shutdown (Jaroslav Kysela) [1917388] - ASoC: rt5682: do nothing in rt5682_suspend/resume in sdw mode (Jaroslav Kysela) [1917388] - ASoC: rt5682-sdw: cancel_work_sync() in .remove and .suspend (Jaroslav Kysela) [1917388] - ASoC: rt711-sdw: use cancel_work_sync() for .remove (Jaroslav Kysela) [1917388] - ASoC: rt700-sdw: use cancel_work_sync() in .remove as well as .suspend (Jaroslav Kysela) [1917388] - ASoC: mt6359: reduce log verbosity for optional DT properties (Jaroslav Kysela) [1917388] - ASoC: codecs: add missing max_register in regmap config (Jaroslav Kysela) [1917388] - ASoC: cpcap: fix microphone timeslot mask (Jaroslav Kysela) [1917388] - ASoC: rt5659: Add Kconfig prompt (Jaroslav Kysela) [1917388] - ASoC: max98373: Fixes a typo in max98373_feedback_get (Jaroslav Kysela) [1917388] - ASoC: ak4458: correct reset polarity (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove connection with LDO2 in DAPM graph (Jaroslav Kysela) [1917388] - ASoC: ml26124: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: lm49453: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: inno_rk3036: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: cx2072x: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: alc5632: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ab8500: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: lochnagar-sc: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: mt6660: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: mc13783: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ssm2602: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: zl38060: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: jz4740: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ak*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tscs*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: max*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: es*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: da*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: nau*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: rt*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tlv*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: wm*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: remove sirf prima/atlas drivers (Jaroslav Kysela) [1917388] - ASoC: codecs: soundwire: increase resume timeout (Jaroslav Kysela) [1917388] - ASoC: es8316: Fix possible NULL pointer deref in es8316_disable_jack_detect() (Jaroslav Kysela) [1917388] - ASoC: rt5682: enable fast discharge for headset unplugging (Jaroslav Kysela) [1917388] - ASoC: rt5682: fix getting the wrong device id when the suspend_stress_test (Jaroslav Kysela) [1917388] - ASoC: rt5645: Enable internal microphone and JD on ECS EF20 (Jaroslav Kysela) [1917388] - ASoC: rt5645: add inv_hp_det flag (Jaroslav Kysela) [1917388] - ASoC: rt5645: Add ACPI-defined GPIO for ECS EF20 series (Jaroslav Kysela) [1917388] - ASoC: rt5645: Introduce mapping for ACPI-defined GPIO (Jaroslav Kysela) [1917388] - ASoC: rt1015: re-calibrate again when resuming (Jaroslav Kysela) [1917388] - ASoC: rt5645: Remove the redundant delay time (Jaroslav Kysela) [1917388] - ASoC: rt1015: remove unneeded variables in rt1015_priv (Jaroslav Kysela) [1917388] - ASoC: rt1015: refactor retry loop and rt1015_priv allocation (Jaroslav Kysela) [1917388] - ASoC: rt1015: return error if any when setting bypass_boost (Jaroslav Kysela) [1917388] - ASoC: rt1015: save boost_mode only if valid (Jaroslav Kysela) [1917388] - ASoC: rt1015: sort header inclusions (Jaroslav Kysela) [1917388] - ASoC: Intel: common: Fix some typos (Jaroslav Kysela) [1917388] - ASoC: soc.h: remove for_each_rtd_dais_rollback() (Jaroslav Kysela) [1917388] - ASoC: soc.h: return error if multi platform at snd_soc_fixup_dai_links_platform_name() (Jaroslav Kysela) [1917388] - ASoC: soc.h: fixup return timing for snd_soc_fixup_dai_links_platform_name() (Jaroslav Kysela) [1917388] - ASoC: soc.h: add asoc_link_to_cpu/codec/platform() macro (Jaroslav Kysela) [1917388] - ASoC: add soc-jack.h (Jaroslav Kysela) [1917388] - ASoC: soc-dai.h: Align the word of comment for SND_SOC_DAIFMT_CBC_CFC (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix always-false condition (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix signed/unsigned issue (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: ignore dummy-DAI at soc_pcm_params_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-utils: add snd_soc_component_is_dummy() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate DAI name if soc_pcm_params_symmetry() failed (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't use "name" on __soc_pcm_params_symmetry() macro (Jaroslav Kysela) [1917388] - ASoC: core: Don't set platform name when of_node is set (Jaroslav Kysela) [1917388] - ASoC: soc-compress: lock pcm_mutex to resolve lockdep error (Jaroslav Kysela) [1917388] - ASoC: soc-core: use device_unregister() if rtd allocation failed (Jaroslav Kysela) [1917388] - ASoC: soc-core: add comment for rtd freeing (Jaroslav Kysela) [1917388] - ASoC: soc-component: Add snd_soc_pcm_component_ack (Jaroslav Kysela) [1917388] - ASoC: don't indicate error message for snd_soc_[pcm_]component_xxx() (Jaroslav Kysela) [1917388] - ASoC: don't indicate error message for snd_soc_[pcm_]dai_xxx() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't indicate error message for dpcm_be_dai_hw_free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't indicate error message for soc_pcm_hw_free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_prepare() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_hw_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_startup() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_run_update_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_be_dai_trigger() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_path_get() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_prepare() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_hw_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_open() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: share DPCM BE DAI stop operation (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove unneeded !rtd->dai_link check (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fixup dpcm_be_dai_startup() user count (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_hw_sanity_check() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_update_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: direct copy at snd_soc_set_runtime_hwparams() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_cpu/codec_dai_name() macro (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: check DAI activity under soc_pcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix DMI handling (Jaroslav Kysela) [1917388] - ASoC: soc-dai: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add error log (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove shadowing variable (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove redundant assignment (Jaroslav Kysela) [1917388] - ASoC: soc-ops: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: unpack dpcm_set_fe_runtime() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_runtime_setup() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_runtime_setup_fe() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: unpack dpcm_init_runtime_hw() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove strange format storing (Jaroslav Kysela) [1917388] - ASoC: soc-core: Prevent warning if no DMI table is present (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix hw param limits calculation for multi-DAI (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix hwparams min/max init for dpcm (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_format() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_chan() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_rate() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: change error message to debug message (Jaroslav Kysela) [1917388] - ASoC: dapm: use component prefix when checking widget names (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fixup snd_pcm_limit_hw_rates() timing (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: use snd_pcm_hardware at dpcm_runtime_merge_xxx() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_create_pcm() and simplify soc_new_pcm() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_get_playback_capture() and simplify soc_new_pcm() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: tidyup pcm setting (Jaroslav Kysela) [1917388] - ASoC: soc-component: fix undefined reference to __ffssi2 (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_read/write_field() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: cleanup soc_pcm_params_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: cleanup soc_pcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-dai.h: remove symmetric_rates/samplebits (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_set_dai_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_set_be_update_state() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: move dpcm_set_fe_update_state() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: Fix an uninitialized error code (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: return correct -ERRNO in failure path (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: disconnect BEs if the FE is not ready (Jaroslav Kysela) [1917388] - ASoC: dapm: remove widget from dirty list on free (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: care trigger rollback (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove dpcm_do_trigger() (Jaroslav Kysela) [1917388] - ASoC: pcm: send DAPM_STREAM_STOP event in dpcm_fe_dai_shutdown (Jaroslav Kysela) [1917388] - ASoC: soc-core: tidyup jack.h (Jaroslav Kysela) [1917388] - ASoC: soc-core: add soc_dapm_suspend_resume() (Jaroslav Kysela) [1917388] - ASoC: soc-core: add soc_playback_digital_mute() (Jaroslav Kysela) [1917388] - ASoC: soc-compress: add soc_compr_clean() and call it from soc_compr_open/free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_link_compr_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_component_compr_open/free() (Jaroslav Kysela) [1917388] - ASoC: soc-dai: add mark for snd_soc_dai_compr_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-compress: move soc_compr_free() next to soc_compr_open() (Jaroslav Kysela) [1917388] - ASoC: pcm: call snd_soc_dapm_stream_stop() in soc_pcm_hw_clean (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_metadata() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_set_metadata() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_copy() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_pointer() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_ack() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_codec_caps() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_caps() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_params() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_set_params() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_trigger() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_open() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: Get all BEs along DAPM path (Jaroslav Kysela) [1917388] - ASoC: soc-core: Fix component name_prefix parsing (Jaroslav Kysela) [1917388] - ASoC: soc-compress: assume SNDRV_PCM_STREAM_xxx and SND_COMPRESS_xxx are same (Jaroslav Kysela) [1917388] - ASoC: soc-compress: tidyup STREAM vs COMPRESS (Jaroslav Kysela) [1917388] - ASoC: soc-topology: clarify expression (Jaroslav Kysela) [1917388] - ASoC: sync parameter naming : rate / sample_bits (Jaroslav Kysela) [1917388] - ASoC: topology: Check if ops is set before dereference (Jaroslav Kysela) [1917388] - ASoC: topology: Ensure that needed parameters are set (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_clean() and call it from soc_pcm_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-dai: add mark for snd_soc_dai_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_pcm_component_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-link: add mark for snd_soc_link_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: move soc_pcm_hw_free() next to soc_pcm_hw_params() (Jaroslav Kysela) [1917388] - ASoC: dapm: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: dmaengine: Document support for TX only or RX only streams (Jaroslav Kysela) [1917388] - ASoC: soc-core: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ALSA: usb: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix control 'access overflow' errors from chmap (Jaroslav Kysela) [1917388] - ALSA: line6: Fix racy initialization of LINE6 MIDI (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Disable sample read check if firmware doesn't give back (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: snd_scarlett_gen2_controls_create() can be static (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: Improve driver startup messages (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: Fix device hang with ehci-pci (Jaroslav Kysela) [1917388] - ALSA: usb-audio: fix control-request direction (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix potential out-of-bounce access in MIDI EP parser (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Validate MS endpoint descriptors (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add dB range mapping for Sennheiser Communications Headset PC 8 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Remove redundant assignment to len (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix implicit sync clearance at stopping stream (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Generic application of implicit fb to Roland/BOSS devices (Jaroslav Kysela) [1917388] - Revert "ALSA: usb-audio: Add support for many Roland devices..." (Jaroslav Kysela) [1917388] - ALSA: usb: midi: don't return -ENOMEM when usb_urb_ep_type_check fails (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Re-apply implicit feedback mode to Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: DJM-750: ensure format is set (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for many Roland devices' implicit feedback quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply implicit feedback mode for BOSS devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Explicitly set up the clock selector (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add MIDI quirk for Vox ToneLab EX (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Skip probe of UA-101 devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop implicit fb quirk entries dubbed for capture (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feeback support for the BOSS GT-1 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add error checks for usb_driver_claim_interface() calls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply sample rate quirk to Logitech Connect (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check connector value on resume (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Carve out connector value checking into a helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix unintentional sign extension issue (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply the control quirk to Plantronics headsets (Jaroslav Kysela) [1917388] - ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar (Jaroslav Kysela) [1917388] - ALSA: usb-audio: fix Pioneer DJM-850 control label info (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Configure Pioneer DJM-850 samplerate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Declare Pioneer DJM-850 mixer controls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add Pioneer DJM-850 to quirks-table (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix Pioneer DJM devices URB_CONTROL request direction to set samplerate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: use Corsair Virtuoso mapping for Corsair Virtuoso SE (Jaroslav Kysela) [1917388] - ALSA: usb-audio: generate midi streaming substream names from jack names (Jaroslav Kysela) [1917388] - ALSA: usb-audio: use usb headers rather than define structs locally (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Allow modifying parameters with succeeding hw_params calls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop bogus dB range in too low level (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't abort even if the clock rate differs (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit fb quirk for BOSS GP-10 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for RC-505 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't avoid stopping the stream at disconnection (Jaroslav Kysela) [1917388] - ALSA: usb-audio: More strict state change in EP (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Handle invalid running state at releasing EP (Jaroslav Kysela) [1917388] - ALSA: usb-audio: add mixer quirks for Pioneer DJM-900NXS2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM750 to Pioneer mixer quirk (Jaroslav Kysela) [1917388] - ALSA: Convert strlcpy to strscpy when return value is unused (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Correct document for snd_usb_endpoint_free_all() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM-450 to the quirks table (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM450 to Pioneer format quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: workaround for iface reset issue (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix "RANGE setting not yet supported" errors (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Skip the clock selector inquiry for single connections (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix hw constraints dependencies (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for Pioneer DJM-750 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid implicit feedback on Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set sample rate for all sharing EPs on UAC1 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix UAC1 rate setup for secondary endpoints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Convert the last strlcpy() usage (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Convert remaining strlcpy() to strscpy() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Always apply the hw constraints for implicit fb sync (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix implicit feedback sync setup for Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Annotate the endpoint index in audioformat (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid unnecessary interface re-setup (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Choose audioformat of a counter-part substream (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix the missing endpoints creations for quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for BOSS AD-10 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add alias entry for ASUS PRIME TRX40 PRO-S (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix potential out-of-bounds shift (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit fb support for Steinberg UR22 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for Pioneer DJ DDJ-RR controller (Jaroslav Kysela) [1917388] - ALSA: usb-audio: US16x08: fix value count for level meters (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix MOTU M-Series quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix quirks for other BOSS devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit_fb module option (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add generic implicit fb parsing (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Factor out the implicit feedback quirk code (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Quirk for BOSS GT-001 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Show sync endpoint information in proc outputs (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use unsigned char for iface and altsettings fields (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Replace slave/master terms (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify rate_min/max and rates set up (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Unify the code for the next packet size calculation (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop unneeded snd_usb_substream fields (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Refactoring endpoint URB deactivation (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use atomic_t for endpoint use_count (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Constify audioformat pointer references (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix possible stall of implicit fb packet ring-buffer (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Refactor endpoint management (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix EP matching for continuous rates (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Always set up the parameters after resume (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for Pioneer DJ DDJ-SR2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set callbacks via snd_usb_endpoint_set_callback() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Stop both endpoints properly at error (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify snd_usb_init_pitch() arguments (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify snd_usb_init_sample_rate() arguments (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't set altsetting before initializing sample rate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Pass snd_usb_audio object to quirk functions (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add snd_usb_get_host_interface() helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop keep_interface flag again (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Create endpoint objects at parsing phase (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid doubly initialization for implicit fb (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop debug.h (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify hw_params rules (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add hw constraint for implicit fb sync (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Move snd_usb_autoresume() call out of setup_hw_info() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Track implicit fb sync endpoint in audioformat list (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Improve some debug prints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set and clear sync EP link properly (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add snd_usb_get_endpoint() helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check implicit feedback EP generically for UAC2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check valid altsetting at parsing rates for UAC2/3 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't call usb_set_interface() at trigger callback (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Handle discrete rates properly in hw constraints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add delay quirk for all Logitech USB devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use ALC1220-VB-DT mapping for ASUS ROG Strix TRX40 mobo (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for Qu-16 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for MODX (Jaroslav Kysela) [1917388] - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add mixer support for Pioneer DJ DJM-250MK2 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: reset eapd coeff to default value for alc287 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: Cancel pending works before suspend (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Fix compile warning without PCI (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Move unsol callback setups to parser (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: make some const arrays static, makes object smaller (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add ZxR surround DAC setup. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add 8051 PLL write helper functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Remove now unnecessary DSP setup functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Ensure DSP is properly setup post-firmware download. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add 8051 exram helper functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add stream port remapping function. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Reset codec upon initialization. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Change Input Source enum strings. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. (Jaroslav Kysela) [1917388] - ALSA: hda: Reinstate runtime_allow() for all hda controllers (Jaroslav Kysela) [1917388] - ACPI: Test for ACPI_SUCCESS rather than !ACPI_FAILURE (Jaroslav Kysela) [1917388] - ALSA: hda: Flush pending unsolicited events before suspend (Jaroslav Kysela) [1917388] - ALSA: hda: Re-add dropped snd_poewr_change_state() calls (Jaroslav Kysela) [1917388] - ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks (Jaroslav Kysela) [1917388] - ALSA: hda: Separate runtime and system suspend (Jaroslav Kysela) [1917388] - ALSA: hda: update the power_state during the direct-complete (Jaroslav Kysela) [1917388] - ALSA: hda: Balance runtime/system PM if direct-complete is disabled (Jaroslav Kysela) [1917388] - ALSA: hda: Refactor codec PM to use direct-complete optimization (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Set Initial DMIC volume to -26 dB (Jaroslav Kysela) [1917388] - ALSA: hda: Fix a regression in Capture Switch mixer read (Jaroslav Kysela) [1917388] - ALSA: hda: Add AlderLake-M PCI ID (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 17 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 15 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 855 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Chain in pop reduction fixup for ThinkStation P340 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: the bass speaker can't output sound on Yoga 9i (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Headphone volume is controlled by Front mixer (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add some CLOVE SSIDs of ALC293 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add fixup for HP Spectre x360 15-df0xxx (Jaroslav Kysela) [1917388] - ALSA: hda: fixup headset for ASUS GU502 laptop (Jaroslav Kysela) [1917388] - ALSA: hda: Fix for mute key LED for HP Pavilion 15-CK0xx (Jaroslav Kysela) [1917388] - ALSA: hda: generic: change the DAC ctl name for LO+SPK or LO+HP (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add fixup for HP OMEN laptop (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix speaker amp on HP Envy AiO 32 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix silent headphone output on ASUS UX430UA (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Re-order CX5066 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Remove redundant entry for ALC861 Haier/Uniwill devices (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC662 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order remaining ALC269 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Lenovo quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Sony quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 ASUS quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Dell quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Acer quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 HP quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Clevo quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Sony quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Acer quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Intel Clevo PCx0Dx (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Use CS8409 filter to fix abnormal sounds on Bullseye (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Set Initial DMIC volume for Bullseye to -26 dB (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook 845 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek - Headset Mic issue on HP platform (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: GA503 use same quirks as GA401 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: fix race in handling acomp ELD notification at resume (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G7 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Lenovo Ideapad S740 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mic boost on Intel NUC 8 (Jaroslav Kysela) [1917388] - ALSA: HDA: Add access description in __snd_hda_add_vmaster (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1 (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Apply quirk for another HP ZBook G5 model (Jaroslav Kysela) [1917388] - ALSA: HDA - remove the custom implementation for the audio LED trigger (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 640 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: fix max DP-MST dev_num for Intel TGL+ platforms (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Make CS8409 driver more generic by using fixups. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Fix CS42L42 Headset Mic volume control name (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Cleanup patch_cirrus.c code. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add error handling into CS8409 I2C functions (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: apply pin quirk for XiaomiNotebook Pro (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Apply headset-mic quirks for Xiaomi Redmibook Air (Jaroslav Kysela) [1917388] - ALSA: hda: generic: Fix the micmute led init state (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Add Sound BlasterX AE-5 Plus support (Jaroslav Kysela) [1917388] - ALSA: hda: Drop the BATCH workaround for AMD controllers (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add Headphone and Headset MIC Volume Control (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add jack detect interrupt support from CS42L42 companion codec. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add support for CS8409 HDA bridge and CS42L42 companion codec. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Increase AUTO_CFG_MAX_INS from 8 to 18 (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Add quirk for mute LED control on HP ZBook G5 (Jaroslav Kysela) [1917388] - ALSA: hda - bind headset buttons to the headphone jack (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Apply dual codec quirks for MSI Godlike X570 board (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Intel NUC 10 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable headset mic of Acer SWIFT with ALC256 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup (Jaroslav Kysela) [1917388] - ALSA: hda: Add another CometLake-H PCI ID (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: Drop bogus check at closing a stream (Jaroslav Kysela) [1917388] - ALSA: hda: Drop power save deny list entry for Clevo W65_67SB (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: modify EAPD in the ALC886 (Jaroslav Kysela) [1917388] - ALSA: hda/via: Apply the workaround generically for Clevo machines (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Remove unnecessary null-check from hda_tegra_runtime_resume() (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Reset hardware (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Use clk_bulk helpers (Jaroslav Kysela) [1917388] - ALSA: hda: Assign boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: hda: boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 (Jaroslav Kysela) [1917388] - ALSA: pci: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ALSA: hda/via: Add minimum mute flag (Jaroslav Kysela) [1917388] - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T (Jaroslav Kysela) [1917388] - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi - enable runtime pm for CI AMD display audio (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: fix tegra-hda on tegra30 soc (Jaroslav Kysela) [1917388] - ALSA: hda: Revert "ALSA: hda: Allow setting preallocation again for x86" (Jaroslav Kysela) [1917388] - ALSA: hda: Fix spelling mistakes (Jaroslav Kysela) [1917388] - ALSA: hda: ignore invalid NHLT table (Jaroslav Kysela) [1917388] - ALSA: hda: intel-nhlt: verify config type (Jaroslav Kysela) [1917388] - ALSA: hda: fix kernel-doc warnings (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add Alder Lake support (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: Add SND_INTEL_BYT_PREFER_SOF Kconfig option (Jaroslav Kysela) [1917388] - ALSA: hda: add link_power op to hdac_bus_ops (Jaroslav Kysela) [1917388] - ALSA: hda: Constify static attribute_group (Jaroslav Kysela) [1917388] - ALSA: hda: Use DIV_ROUND_UP()/roundup() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: ignore dsp_driver parameter for PCI legacy devices (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add Broadwell ACPI DSP driver selection (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add helper for ACPI DSP driver selection (Jaroslav Kysela) [1917388] - ALSA: pcm: Fix missing check of the new non-cached buffer type (Jaroslav Kysela) [1917388] - ALSA: pcm: use dma_can_mmap() to check if a device supports dma_mmap_* (Jaroslav Kysela) [1917388] - ALSA: timer: Fix master timer notification (Jaroslav Kysela) [1917388] - ALSA: control led: fix memory leak in snd_ctl_led_register (Jaroslav Kysela) [1917388] - ALSA: control: Fix racy management of user ctl memory size account (Jaroslav Kysela) [1917388] - ALSA: control_led - fix the stack usage (control element ops) (Jaroslav Kysela) [1917388] - ALSA: control - double free in snd_ctl_led_init() (Jaroslav Kysela) [1917388] - ALSA: control: Add memory consumption limit to user controls (Jaroslav Kysela) [1917388] - ALSA: control - off by one in store_mode() (Jaroslav Kysela) [1917388] - ALSA: control led - improve the set_led_id() parser (Jaroslav Kysela) [1917388] - ALSA: control - add the missing prev_lops2 initialization (Jaroslav Kysela) [1917388] - ALSA: led control - add sysfs kcontrol LED marking layer (Jaroslav Kysela) [1917388] - ALSA: control - add sysfs support to the LED trigger module (Jaroslav Kysela) [1917388] - ALSA: control - add generic LED trigger module as the new control layer (Jaroslav Kysela) [1917388] - ALSA: control - add layer registration routines (Jaroslav Kysela) [1917388] - ALSA: control - introduce snd_ctl_notify_one() helper (Jaroslav Kysela) [1917388] - ALSA: core: remove redundant spin_lock pair in snd_card_disconnect (Jaroslav Kysela) [1917388] - ALSA: pcm: Fix couple of typos (Jaroslav Kysela) [1917388] - ALSA: core: avoid -Wempty-body warnings (Jaroslav Kysela) [1917388] - ALSA: pcm: Add debug print on memory allocation failure (Jaroslav Kysela) [1917388] - ALSA: core - add missing compress device type to /proc/asound/devices (Jaroslav Kysela) [1917388] - ALSA: pcm: Use for_each_pcm_substream() macro (Jaroslav Kysela) [1917388] - ALSA: pcm: Don't call sync_stop if it hasn't been stopped (Jaroslav Kysela) [1917388] - ALSA: pcm: Assure sync with the pending stop operation at suspend (Jaroslav Kysela) [1917388] - ALSA: pcm: Call sync_stop at disconnection (Jaroslav Kysela) [1917388] - ASoC: dmaengine_pcm: add peripheral configuration (Jaroslav Kysela) [1917388] - ALSA: core: Fix the debugfs removal at snd_card_free() (Jaroslav Kysela) [1917388] - ALSA: jack: implement software jack injection via debugfs (Jaroslav Kysela) [1917388] - ALSA: pcm: One more dependency for hw constraints (Jaroslav Kysela) [1917388] - ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() (Jaroslav Kysela) [1917388] - ALSA: oss: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: core: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: core: Remove redundant comments (Jaroslav Kysela) [1917388] - ALSA: pcm: oss: Fix a few more UBSAN fixes (Jaroslav Kysela) [1917388] - ALSA: pcm: Clear the full allocated memory at hw_params (Jaroslav Kysela) [1917388] - ALSA: memalloc: Align buffer allocations in page size (Jaroslav Kysela) [1917388] - ALSA: pcm: Remove snd_pcm_lib_preallocate_dma_free() (Jaroslav Kysela) [1917388] - ALSA: core: memalloc: add page alignment for iram (Jaroslav Kysela) [1917388] - ALSA: pcm: oss: Fix potential out-of-bounds shift (Jaroslav Kysela) [1917388] - ALSA: rawmidi: Access runtime->avail always in spinlock (Jaroslav Kysela) [1917388] - ALSA: seq: Use bool for snd_seq_queue internal flags (Jaroslav Kysela) [1917388] - ALSA: compress: allow pause and resume during draining (Jaroslav Kysela) [1917388] - ALSA: ctl: fix error path at adding user-defined element set (Jaroslav Kysela) [1917388] - ALSA: seq: remove useless function (Jaroslav Kysela) [1917388] - ALSA: fix kernel-doc markups (Jaroslav Kysela) [1917388] - soundwire: SDCA: add helper macro to access controls (Jaroslav Kysela) [1917388] - soundwire: add static port mapping support (Jaroslav Kysela) [1917388] - soundwire: add definition for DPn BlockPackingMode (Jaroslav Kysela) [1917388] - soundwire: add master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: intel: don't return error when clock stop failed (Jaroslav Kysela) [1917388] - soundwire: intel: Use kzalloc for allocating only one thing (Jaroslav Kysela) [1917388] - soundwire: cadence: add status in dev_dbg 'State change' log (Jaroslav Kysela) [1917388] - soundwire: cadence: adjust verbosity in response handling (Jaroslav Kysela) [1917388] - soundwire: cadence: fix ACK/NAK handling (Jaroslav Kysela) [1917388] - soundwire: cadence: reduce timeout on transactions (Jaroslav Kysela) [1917388] - soundwire: bus: use consistent tests for return values (Jaroslav Kysela) [1917388] - soundwire: qcom: fix handling of qcom,ports-block-pack-mode (Jaroslav Kysela) [1917388] - soundwire: intel_init: test link->cdns (Jaroslav Kysela) [1917388] - soundwire: qcom: handle return correctly in qcom_swrm_transport_params (Jaroslav Kysela) [1917388] - soundwire: qcom: cleanup internal port config indexing (Jaroslav Kysela) [1917388] - soundwire: qcom: wait for fifo space to be available before read/write (Jaroslav Kysela) [1917388] - soundwire: qcom: add static port map support (Jaroslav Kysela) [1917388] - soundwire: qcom: update port map allocation bit mask (Jaroslav Kysela) [1917388] - soundwire: stream: fix memory leak in stream config error path (Jaroslav Kysela) [1917388] - soundwire: qcom: use signed variable for error return (Jaroslav Kysela) [1917388] - soundwire: qcom: wait for enumeration to be complete in probe (Jaroslav Kysela) [1917388] - soundwire: qcom: add auto enumeration support (Jaroslav Kysela) [1917388] - soundwire: export sdw_compare_devid, sdw_extract_slave_id and sdw_slave_add (Jaroslav Kysela) [1917388] - soundwire: qcom: add support to new interrupts (Jaroslav Kysela) [1917388] - soundwire: qcom: update register read/write routine (Jaroslav Kysela) [1917388] - soundwire: qcom: start the clock during initialization (Jaroslav Kysela) [1917388] - soundwire: qcom: set continue execution flag for ignored commands (Jaroslav Kysela) [1917388] - soundwire: qcom: add support to missing transport params (Jaroslav Kysela) [1917388] - soundwire: cadence: only prepare attached devices on clock stop (Jaroslav Kysela) [1917388] - soundwire: generic_allocation: fix confusion between group and packing (Jaroslav Kysela) [1917388] - soundwire: bus: Fix device found flag correctly (Jaroslav Kysela) [1917388] - soundwire: cadence_master: fix kernel-doc (Jaroslav Kysela) [1917388] - soundwire: stream: remove useless bus initializations (Jaroslav Kysela) [1917388] - soundwire: stream: remove useless initialization (Jaroslav Kysela) [1917388] - soundwire: qcom: check of_property_read status (Jaroslav Kysela) [1917388] - soundwire: intel: remove useless readl (Jaroslav Kysela) [1917388] - soundwire: generic_bandwidth_allocation: remove useless init (Jaroslav Kysela) [1917388] - soundwire: bus: remove useless initialization (Jaroslav Kysela) [1917388] - soundwire: bus: uniquify dev_err() for SCP_INT access (Jaroslav Kysela) [1917388] - soundwire: bus: demote clock stop prepare log to dev_dbg() (Jaroslav Kysela) [1917388] - soundwire: bus: clarify dev_err/dbg device references (Jaroslav Kysela) [1917388] - soundwire: bus: fix confusion on device used by pm_runtime (Jaroslav Kysela) [1917388] - soundwire: export sdw_write/read_no_pm functions (Jaroslav Kysela) [1917388] - soundwire: bus: use no_pm IO routines for all interrupt handling (Jaroslav Kysela) [1917388] - soundwire: bus: use sdw_write_no_pm when setting the bus scale registers (Jaroslav Kysela) [1917388] - soundwire: bus: use sdw_update_no_pm when initializing a device (Jaroslav Kysela) [1917388] - soundwire: return earlier if no slave is attached (Jaroslav Kysela) [1917388] - soundwire: bus: add better dev_dbg to track complete() calls (Jaroslav Kysela) [1917388] - soundwire: bus: add more details to track failed transfers (Jaroslav Kysela) [1917388] - soundwire: use consistent format for Slave devID logs (Jaroslav Kysela) [1917388] - soundwire: bus: test read status (Jaroslav Kysela) [1917388] - soundwire: bus: use correct driver name in error messages (Jaroslav Kysela) [1917388] - soundwire: qcom: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: stream: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: cadence: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: bandwidth_allocation: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: intel: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: intel: add master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: bus: handle master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: Intel: add DMI quirk for Dell SKU 0A3E (Jaroslav Kysela) [1917388] - soundwire: Intel: introduce DMI quirks for HP Spectre x360 Convertible (Jaroslav Kysela) [1917388] - soundwire: add override addr ops (Jaroslav Kysela) [1917388] - regmap/SoundWire: sdw: add support for SoundWire 1.2 MBQ (Jaroslav Kysela) [1917388] - tracing: Fix __print_hex_dump scope (Jaroslav Kysela) [1917388] - tracing: Use seq_buf_hex_dump() to dump buffers (Jaroslav Kysela) [1917388] - seq_buf: Add printing formatted hex dumps (Jaroslav Kysela) [1917388] - powerpc/64: Don't trace code that runs with the soft irq mask unreconciled (Desnes A. Nunes do Rosario) [1921631] - powerpc/64: Disable irq restore warning for now (Desnes A. Nunes do Rosario) [1921631] - powerpc/64s: make PACA_IRQ_HARD_DIS track MSR[EE] closely (Desnes A. Nunes do Rosario) [1921631]- watchdog/hpwdt: New PCI IDs (Joseph Szczypek) [1967765] - watchdog: hpwdt: Assign boolean values to a bool variable (Joseph Szczypek) [1967765] - scsi: libfc: Avoid invoking response handler twice if ep is already completed (Chris Leech) [1867301] - Bluetooth: SMP: Fail if remote and local public keys are identical (Gopal Tiwari) [1965083] - rq-qos: fix missed wake-ups in rq_qos_throttle try two (Ming Lei) [1972111] - mm: memcg/slab: disable cache merging for KMALLOC_NORMAL caches (Waiman Long) [1955561] - mm: memcg/slab: create a new set of kmalloc-cg- caches (Waiman Long) [1955561] - mm: memcg/slab: properly set up gfp flags for objcg pointer array (Waiman Long) [1955561] - mm/vmalloc.c:__vmalloc_area_node(): avoid 32-bit overflow (Rafael Aquini) [1970194] - mm: remove the filename in the top of file comment in vmalloc.c (Rafael Aquini) [1970194] - mm: cleanup the gfp_mask handling in __vmalloc_area_node (Rafael Aquini) [1970194] - mm/vmalloc.c: remove unnecessary highmem_mask from parameter of gfpflags_allow_blocking() (Rafael Aquini) [1970194] - mm/swap: fix pte_same_as_swp() not removing uffd-wp bit when compare (Chris von Recklinghausen) [1945442] - userfaultfd: hugetlbfs: fix new flag usage in error path (Chris von Recklinghausen) [1945442] - mm/hugetlb: fix cow where page writtable in child (Chris von Recklinghausen) [1945442] - ovl: fix reference counting in ovl_mmap error path (Chris von Recklinghausen) [1945442] - hugetlb: do early cow when page pinned on src mm (Chris von Recklinghausen) [1945442] - mm: introduce page_needs_cow_for_dma() for deciding whether cow (Chris von Recklinghausen) [1945442] - hugetlb: convert page_huge_active() HPageMigratable flag (Chris von Recklinghausen) [1945442] - hugetlb: use page.private for hugetlb specific page flags (Chris von Recklinghausen) [1945442] - x86/mm: Remove duplicate definition of _PAGE_PAT_LARGE (Chris von Recklinghausen) [1945442] - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page (Chris von Recklinghausen) [1945442] - mm: hugetlb: fix a race between isolating and freeing page (Chris von Recklinghausen) [1945442] - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active (Chris von Recklinghausen) [1945442] - mm: introduce vma_set_file function v5 (Chris von Recklinghausen) [1945442] - mm: mmap: fix fput in error path v2 (Chris von Recklinghausen) [1945442] - mm/gup: prevent gup_fast from racing with COW during fork (Chris von Recklinghausen) [1945442] - mm/gup: reorganize internal_get_user_pages_fast() (Chris von Recklinghausen) [1945442] - mm: remove src/dst mm parameter in copy_page_range() (Chris von Recklinghausen) [1945442] - mm: avoid early COW write protect games during fork() (Chris von Recklinghausen) [1945442] - mm/thp: Split huge pmds/puds if they're pinned when fork() (Chris von Recklinghausen) [1945442] - mm: Do early cow for pinned pages during fork() for ptes (Chris von Recklinghausen) [1945442] - mm/fork: Pass new vma pointer into copy_page_range() (Chris von Recklinghausen) [1945442] - mm: move the copy_one_pte() pte_present check into the caller (Chris von Recklinghausen) [1945442] - mm: split out the non-present case from copy_one_pte() (Chris von Recklinghausen) [1945442] - mm/gup: Remove enfornced COW mechanism (Chris von Recklinghausen) [1945442] - mm/hmm.c: delete duplicated word (Chris von Recklinghausen) [1945442] - mm/hmm: provide the page mapping order in hmm_range_fault() (Chris von Recklinghausen) [1945442] - mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked() (Chris von Recklinghausen) [1945442] - mm/gup: introduce pin_user_pages_locked() (Chris von Recklinghausen) [1945442] - mm/gup: introduce pin_user_pages_unlocked (Chris von Recklinghausen) [1945442] - mm: remove the prot argument from vm_map_ram (Chris von Recklinghausen) [1945442] - mm: remove unmap_vmap_area (Chris von Recklinghausen) [1945442] - mm: don't return the number of pages from map_kernel_range{,_noflush} (Chris von Recklinghausen) [1945442] - x86: fix vmap arguments in map_irq_stack (Chris von Recklinghausen) [1945442] - mm/memory: remove unnecessary pte_devmap case in copy_one_pte() (Chris von Recklinghausen) [1945442] - mm/hmm: remove the customizable pfn format from hmm_range_fault (Chris von Recklinghausen) [1945442] - mm/hmm: remove HMM_PFN_SPECIAL (Chris von Recklinghausen) [1945442] - mm/hmm: make hmm_range_fault return 0 or -1 (Chris von Recklinghausen) [1945442] - mm/hugetlb: fix build failure with HUGETLB_PAGE but not HUGEBTLBFS (Chris von Recklinghausen) [1945442] - mm/hmm: return error for non-vma snapshots (Chris von Recklinghausen) [1945442] - mm/hmm: do not set pfns when returning an error code (Chris von Recklinghausen) [1945442] - mm/hmm: do not unconditionally set pfns when returning EBUSY (Chris von Recklinghausen) [1945442] - mm/hmm: use device_private_entry_to_pfn() (Chris von Recklinghausen) [1945442] - mm/hmm: remove HMM_FAULT_SNAPSHOT (Chris von Recklinghausen) [1945442] - mm/hmm: remove unused code and tidy comments (Chris von Recklinghausen) [1945442] - mm/hmm: return the fault type from hmm_pte_need_fault() (Chris von Recklinghausen) [1945442] - mm/hmm: remove pgmap checking for devmap pages (Chris von Recklinghausen) [1945442] - mm/hmm: check the device private page owner in hmm_range_fault() (Chris von Recklinghausen) [1945442] - mm: simplify device private page handling in hmm_range_fault (Chris von Recklinghausen) [1945442] - mm: merge hmm_vma_do_fault into into hmm_vma_walk_hole_ (Chris von Recklinghausen) [1945442] - mm/hmm: don't handle the non-fault case in hmm_vma_walk_hole_() (Chris von Recklinghausen) [1945442] - mm/hmm: simplify hmm_vma_walk_hugetlb_entry() (Chris von Recklinghausen) [1945442] - mm/hmm: remove the unused HMM_FAULT_ALLOW_RETRY flag (Chris von Recklinghausen) [1945442] - mm/hmm: don't provide a stub for hmm_range_fault() (Chris von Recklinghausen) [1945442] - mm/hmm: do not check pmd_protnone twice in hmm_vma_handle_pmd() (Chris von Recklinghausen) [1945442] - mm/hmm: return -EFAULT when setting HMM_PFN_ERROR on requested valid pages (Chris von Recklinghausen) [1945442] - mm/hmm: reorganize how !pte_present is handled in hmm_vma_handle_pte() (Chris von Recklinghausen) [1945442] - mm/hmm: add missing call to hmm_range_need_fault() before returning EFAULT (Chris von Recklinghausen) [1945442] - mm/hmm: add missing pfns set to hmm_vma_walk_pmd() (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_range_dma_map and hmm_range_dma_unmap (Chris von Recklinghausen) [1945442] - mm/hmm: make full use of walk_page_range() (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_mirror and related (Chris von Recklinghausen) [1945442] - mm/hmm: define the pre-processor related parts of hmm.h even if disabled (Chris von Recklinghausen) [1945442] - mm/hmm: allow hmm_range to be used with a mmu_interval_notifier or hmm_mirror (Chris von Recklinghausen) [1945442] - mm/hmm: hmm_range_fault() infinite loop (Chris von Recklinghausen) [1945442] - mm/hmm: hmm_range_fault() NULL pointer bug (Chris von Recklinghausen) [1945442] - hmm: use mmu_notifier_get/put for 'struct hmm' (Chris von Recklinghausen) [1945442] - mm/hmm: cleanup the hmm_vma_handle_pmd stub (Chris von Recklinghausen) [1945442] - mm/hmm: only define hmm_vma_walk_pud if needed (Chris von Recklinghausen) [1945442] - mm/hmm: cleanup the hmm_vma_walk_hugetlb_entry stub (Chris von Recklinghausen) [1945442] - mm/hmm: don't abuse pte_index() in hmm_vma_handle_pmd (Chris von Recklinghausen) [1945442] - mm/hmm: comment on VM_FAULT_RETRY semantics in handle_mm_fault (Chris von Recklinghausen) [1945442] - mm/hmm: remove the legacy hmm_pfn_* APIs (Chris von Recklinghausen) [1945442] - mm/hmm: remove the mask variable in hmm_vma_walk_hugetlb_entry (Chris von Recklinghausen) [1945442] - mm/hmm: remove the page_shift member from struct hmm_range (Chris von Recklinghausen) [1945442] - mm/hmm: remove superfluous arguments from hmm_range_register (Chris von Recklinghausen) [1945442] - mm/hmm: remove the unused vma argument to hmm_range_dma_unmap (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_range vma (Chris von Recklinghausen) [1945442] - mm/hmm: remove hugetlbfs check in hmm_vma_walk_pmd (Chris von Recklinghausen) [1945442] - mm/hmm: merge hmm_range_snapshot into hmm_range_fault (Chris von Recklinghausen) [1945442] - mm/hmm: replace the block argument to hmm_range_fault with a flags value (Chris von Recklinghausen) [1945442] - mm/large system hash: use vmalloc for size > MAX_ORDER when !hashdist (Chris von Recklinghausen) [1945442] - mm/hmm: update HMM documentation (Chris von Recklinghausen) [1945442] - mm: remove the HMM config option (Chris von Recklinghausen) [1945442] - hugetlbfs: on restore reserve error path retain subpool reservation (Chris von Recklinghausen) [1945442] - mm/vmalloc.c: fix potential memory leak (Chris von Recklinghausen) [1945442] - mm/vmalloc: separate put pages and flush VM flags (Chris von Recklinghausen) [1945442] - zsmalloc: switch from alloc_vm_area to get_vm_area (Chris von Recklinghausen) [1945442] - mm: allow a NULL fn callback in apply_to_page_range (Chris von Recklinghausen) [1945442] - mm: add a vmap_pfn function (Chris von Recklinghausen) [1945442] - mm: add a VM_MAP_PUT_PAGES flag for vmap (Chris von Recklinghausen) [1945442] - mm: update the documentation for vfree (Chris von Recklinghausen) [1945442] - mm, slub: use kmem_cache_debug_flags() in deactivate_slab() (Chris von Recklinghausen) [1945442] - mm, slab, slub: clear the slab_cache field when freeing page (Chris von Recklinghausen) [1945442] - mm: slab: provide krealloc_array() (Chris von Recklinghausen) [1945442] - mm: slab: clarify krealloc()'s behavior with __GFP_ZERO (Chris von Recklinghausen) [1945442] - mm/slab_common.c: use list_for_each_entry in dump_unreclaimable_slab() (Chris von Recklinghausen) [1945442] - mm/slub: make add_full() condition more explicit (Chris von Recklinghausen) [1945442] - mm/slub: fix missing ALLOC_SLOWPATH stat when bulk alloc (Chris von Recklinghausen) [1945442] - mm/slub.c: branch optimization in free slowpath (Chris von Recklinghausen) [1945442] - include/linux/slab.h: fix a typo error in comment (Chris von Recklinghausen) [1945442] - mm/vmalloc.c: fix a warning while make xmldocs (Chris von Recklinghausen) [1945442] - mm/userfaultfd: fix memory corruption due to writeprotect (Chris von Recklinghausen) [1945442] - mm/migrate: fixup setting UFFD_WP flag (Chris von Recklinghausen) [1945442] - mm/rmap: fixup copying of soft dirty and uffd ptes (Chris von Recklinghausen) [1945442] - mm/userfaultfd: disable userfaultfd-wp on x86_32 (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: fix SIGSEGV if huge mmap fails (Chris von Recklinghausen) [1945442] - mm: do not rely on mm == current->mm in __get_user_pages_locked (Chris von Recklinghausen) [1945442] - mm: Introduce mm_struct.has_pinned (Chris von Recklinghausen) [1945442] - mm/gup: might_lock_read(mmap_sem) in get_user_pages_fast() (Chris von Recklinghausen) [1945442] - mm: enforce that vmap can't map pages executable (Chris von Recklinghausen) [1945442] - mm: remove map_vm_range (Chris von Recklinghausen) [1945442] - mm: rename vmap_page_range to map_kernel_range (Chris von Recklinghausen) [1945442] - mm: remove vmap_page_range_noflush and vunmap_page_range (Chris von Recklinghausen) [1945442] - mm: only allow page table mappings for built-in zsmalloc (Chris von Recklinghausen) [1945442] - mm: unexport unmap_kernel_range_noflush (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: add write-protect test (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: refactor statistics (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: fix compiler warning (Chris von Recklinghausen) [1945442] - hugetlbfs: call VM_BUG_ON_PAGE earlier in free_huge_page() (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: recycle lock threads first (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: generalize read and poll (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: cleanup help messages (Chris von Recklinghausen) [1945442] - userfaultfd: wp: declare _UFFDIO_WRITEPROTECT conditionally (Chris von Recklinghausen) [1945442] - userfaultfd: wp: UFFDIO_REGISTER_MODE_WP documentation update (Chris von Recklinghausen) [1945442] - userfaultfd: wp: don't wake up when doing write protect (Chris von Recklinghausen) [1945442] - userfaultfd: wp: enabled write protection in userfaultfd API (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add the writeprotect API to userfaultfd ioctl (Chris von Recklinghausen) [1945442] - userfaultfd: wp: support write protection for userfault vma range (Chris von Recklinghausen) [1945442] - khugepaged: skip collapse if uffd-wp detected (Chris von Recklinghausen) [1945442] - userfaultfd: wp: support swap and page migration (Chris von Recklinghausen) [1945442] - mm/mprotect.c: fix compilation warning because of unused 'mm' variable (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add pmd_swp_*uffd_wp() helpers (Chris von Recklinghausen) [1945442] - userfaultfd: wp: drop _PAGE_UFFD_WP properly when fork (Chris von Recklinghausen) [1945442] - userfaultfd: wp: apply _PAGE_UFFD_WP bit (Chris von Recklinghausen) [1945442] - mm: merge parameters for change_protection() (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add UFFDIO_COPY_MODE_WP (Chris von Recklinghausen) [1945442] - userfaultfd: wp: userfaultfd_pte/huge_pmd_wp() helpers (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add WP pagetable tracking to x86 (Chris von Recklinghausen) [1945442] - userfaultfd: wp: hook userfault handler to write protection fault (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add helper for writeprotect check (Chris von Recklinghausen) [1945442] - userfaultfd: untag user pointers (Chris von Recklinghausen) [1945442] - x86/mm/pat: Fix typo in the Kconfig help text (Chris von Recklinghausen) [1945442] - x86/mm/pat: Clean up externs (Chris von Recklinghausen) [1945442] - x86/mm/pat: Rename => (Chris von Recklinghausen) [1945442] - x86/mm/pat: Standardize on memtype_*() prefix for APIs (Chris von Recklinghausen) [1945442] - x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/ (Chris von Recklinghausen) [1945442] - x86/mm/pat: Clean up PAT initialization flags (Chris von Recklinghausen) [1945442] - x86/mm/pat: Harmonize 'struct memtype *' local variable and function parameter use (Chris von Recklinghausen) [1945442] - x86/mm/pat: Simplify the free_memtype() control flow (Chris von Recklinghausen) [1945442] - x86/mm/pat: Create fixed width output in /sys/kernel/debug/x86/pat_memtype_list, similar to the E820 debug printouts (Chris von Recklinghausen) [1945442] - x86/mm/pat: Disambiguate PAT-disabled boot messages (Chris von Recklinghausen) [1945442] - x86/mm/pat: Update the comments in pat.c and pat_interval.c and refresh the code a bit (Chris von Recklinghausen) [1945442] - x86/mm/pat: Fix off-by-one bugs in interval tree search (Chris von Recklinghausen) [1945442] - x86/mm/pat: Rename pat_rbtree.c to pat_interval.c (Chris von Recklinghausen) [1945442] - x86/mm/pat: Drop the rbt_ prefix from external memtype calls (Chris von Recklinghausen) [1945442] - x86/mm/pat: Do not pass 'rb_root' down the memtype tree helper functions (Chris von Recklinghausen) [1945442] - x86/mm/pat: Convert the PAT tree to a generic interval tree (Chris von Recklinghausen) [1945442] - x86/mm: Tabulate the page table encoding definitions (Chris von Recklinghausen) [1945442] - x86/mm: Remove the unused set_memory_wt() function (Chris von Recklinghausen) [1945442] - x86/mm: Remove set_pages_x() and set_pages_nx() (Chris von Recklinghausen) [1945442] - x86/mm: Remove the unused set_memory_array_*() functions (Chris von Recklinghausen) [1945442] - x86/mm: Unexport set_memory_x() and set_memory_nx() (Chris von Recklinghausen) [1945442] - x86/Kconfig: Fix spelling mistake "effectivness" -> "effectiveness" (Chris von Recklinghausen) [1945442] - x86/mm: Remove unused variable 'old_pte' (Chris von Recklinghausen) [1945442] - Revert "x86/mm/pat: Rename pat_rbtree.c to pat_interval.c" (Chris von Recklinghausen) [1945442] - Revert "x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/" (Chris von Recklinghausen) [1945442] - ipv6: Allow the l3mdev to be a loopback (Antoine Tenart) [1973229] - vrf: do not push non-ND strict packets with a source LLA through packet taps again (Antoine Tenart) [1965600] - vrf: packets with lladdr src needs dst at input with orig_iif when needs strict (Antoine Tenart) [1965600] - ipv6: Fix handling of LLA with VRF and sockets bound to VRF (Antoine Tenart) [1965600] - ipv6: allow ping to link-local address in VRF (Antoine Tenart) [1965600] - vrf: mark skb for multicast or link-local as enslaved to VRF (Antoine Tenart) [1965600] - net: allow traceroute with a specified interface in a vrf (Antoine Tenart) [1965600] - virtchnl: Enable RSS configure for AVF (Ivan Vecera) [1966954] - virtchnl: Advertise virtchnl UDP segmentation offload capability (Ivan Vecera) [1966954] - virtchnl: Allow ignoring opcodes on specific VF (Ivan Vecera) [1966954] - virtchnl: Fix layout of RSS structures (Ivan Vecera) [1966954] - virtchnl: Enable FDIR Configure for AVF (Ivan Vecera) [1966954] - virtchnl: Add missing explicit padding to structures (Ivan Vecera) [1966954] - virtchnl: use u8 type for a field in the virtchnl_filter struct (Ivan Vecera) [1966954] - tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1944685] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1944685] - bpf: Add size arg to build_id_parse function (Michael Petlan) [1944685] - bpf: Move stack_map_get_build_id into lib (Michael Petlan) [1944685] - perf map: Fix error return code in maps__clone() (Michael Petlan) [1944685] - perf ftrace: Fix access to pid in array when setting a pid filter (Michael Petlan) [1944685] - perf auxtrace: Fix potential NULL pointer dereference (Michael Petlan) [1944685] - perf data: Fix error return code in perf_data__create_dir() (Michael Petlan) [1944685] - perf arm-spe: Avoid potential buffer overrun (Michael Petlan) [1944685] - perf report: Fix wrong LBR block sorting (Michael Petlan) [1944685] - perf inject: Fix repipe usage (Michael Petlan) [1944685] - perf test: Change to use bash for daemon test (Michael Petlan) [1944685] - perf record: Fix memory leak in vDSO found using ASAN (Michael Petlan) [1944685] - perf test: Remove now useless failing sub test "BPF relocation checker" (Michael Petlan) [1944685] - perf daemon: Return from kill functions (Michael Petlan) [1944685] - perf daemon: Force waipid for all session on SIGCHLD delivery (Michael Petlan) [1944685] - perf top: Fix BPF support related crash with perf_event_paranoid=3 + kptr_restrict (Michael Petlan) [1944685] - perf pmu: Validate raw event with sysfs exported format bits (Michael Petlan) [1944685] - perf synthetic events: Avoid write of uninitialized memory when generating PERF_RECORD_MMAP* records (Michael Petlan) [1944685] - perf synthetic-events: Fix uninitialized 'kernel_thread' variable (Michael Petlan) [1944685] - perf auxtrace: Fix auxtrace queue conflict (Michael Petlan) [1944685] - perf cs-etm: Fix bitmap for option (Michael Petlan) [1944685] - perf map: Tighten snprintf() string precision to pass gcc check on some 32-bit arches (Michael Petlan) [1944685] - perf report: Fix -F for branch & mem modes (Michael Petlan) [1944685] - perf tests x86: Move insn.h include to make sure it finds stddef.h (Michael Petlan) [1944685] - perf test: Support the ins_lat check in the X86 specific test (Michael Petlan) [1944685] - perf test: Fix sample-parsing failure on non-x86 platforms (Michael Petlan) [1944685] - perf archive: Fix filtering of empty build-ids (Michael Petlan) [1944685] - perf daemon: Fix compile error with Asan (Michael Petlan) [1944685] - perf stat: Fix use-after-free when -r option is used (Michael Petlan) [1944685] - libperf: Add perf_evlist__reset_id_hash() (Michael Petlan) [1944685] - perf stat: Fix wrong skipping for per-die aggregation (Michael Petlan) [1944685] - tools headers UAPI: Update tools' copy of linux/coresight-pmu.h (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in perf_time_to_tsc test (Michael Petlan) [1944685] - perf test: Fix cpu map leaks in cpu_map_print test (Michael Petlan) [1944685] - perf test: Fix a memory leak in thread_map_remove test (Michael Petlan) [1944685] - perf test: Fix a thread map leak in thread_map_synthesize test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in switch_tracking test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in keep_tracking test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in code_reading test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in sw_clock_freq test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in task_exit test (Michael Petlan) [1944685] - perf test: Fix a memory leak in attr test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in basic mmap test (Michael Petlan) [1944685] - perf tools: Fix event's PMU name parsing (Michael Petlan) [1944685] - perf daemon: Fix running test for non root user (Michael Petlan) [1944685] - perf daemon: Fix control fifo permissions (Michael Petlan) [1944685] - perf build: Fix ccache usage in $(CC) when generating arch errno table (Michael Petlan) [1944685] - perf tools: Fix documentation of verbose options (Michael Petlan) [1944685] - perf traceevent: Ensure read cmdlines are null terminated. (Michael Petlan) [1944685] - perf diff: Don't crash on freeing errno-session on the error path (Michael Petlan) [1944685] - perf tools: Clean 'generated' directory used for creating the syscall table on x86 (Michael Petlan) [1944685] - perf build: Move feature cleanup under tools/build (Michael Petlan) [1944685] - perf tools: Cast (struct timeval).tv_sec when printing (Michael Petlan) [1944685] - perf buildid-cache: Don't skip 16-byte build-ids (Michael Petlan) [1944685] - perf buildid-cache: Add test for 16-byte build-id (Michael Petlan) [1944685] - perf symbol: Remove redundant libbfd checks (Michael Petlan) [1944685] - perf test: Output the sub testing result in cs-etm (Michael Petlan) [1944685] - perf test: Suppress logs in cs-etm testing (Michael Petlan) [1944685] - perf tools: Fix arm64 build error with gcc-11 (Michael Petlan) [1944685] - perf intel-pt: Add documentation for tracing virtual machines (Michael Petlan) [1944685] - perf intel-pt: Split VM-Entry and VM-Exit branches (Michael Petlan) [1944685] - perf intel-pt: Adjust sample flags for VM-Exit (Michael Petlan) [1944685] - perf intel-pt: Allow for a guest kernel address filter (Michael Petlan) [1944685] - perf intel-pt: Support decoding of guest kernel (Michael Petlan) [1944685] - perf machine: Factor out machine__idle_thread() (Michael Petlan) [1944685] - perf machine: Factor out machines__find_guest() (Michael Petlan) [1944685] - perf intel-pt: Amend decoder to track the NR flag (Michael Petlan) [1944685] - perf intel-pt: Retain the last PIP packet payload as is (Michael Petlan) [1944685] - perf intel_pt: Add vmlaunch and vmresume as branches (Michael Petlan) [1944685] - perf script: Add branch types for VM-Entry and VM-Exit (Michael Petlan) [1944685] - perf auxtrace: Automatically group aux-output events (Michael Petlan) [1944685] - perf test: Fix unaligned access in sample parsing test (Michael Petlan) [1944685] - perf tools: Support arch specific PERF_SAMPLE_WEIGHT_STRUCT processing (Michael Petlan) [1944685] - perf intel-pt: Add PSB events (Michael Petlan) [1944685] - perf intel-pt: Fix IPC with CYC threshold (Michael Petlan) [1944685] - perf intel-pt: Fix premature IPC (Michael Petlan) [1944685] - perf intel-pt: Fix missing CYC processing in PSB (Michael Petlan) [1944685] - perf record: Fix continue profiling after draining the buffer (Michael Petlan) [1944685] - perf tools: Simplify the calculation of variables (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mp DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mq DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mn DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Fix indentation of brackets in imx8mm metrics (Michael Petlan) [1944685] - perf annotate: Do not jump after 'k' is pressed (Michael Petlan) [1944685] - perf metricgroup: Remove unneeded semicolon (Michael Petlan) [1944685] - perf tools: Add OCaml demangling (Michael Petlan) [1944685] - tools api fs: Cache cgroupfs mount point (Michael Petlan) [1944685] - tools api fs: Diet cgroupfs_find_mountpoint() (Michael Petlan) [1944685] - tools api fs: Prefer cgroup v1 path in cgroupfs_find_mountpoint() (Michael Petlan) [1944685] - perf symbols: Resolve symbols against debug file first (Michael Petlan) [1944685] - perf probe: Fix kretprobe issue caused by GCC bug (Michael Petlan) [1944685] - perf symbols: Fix return value when loading PE DSO (Michael Petlan) [1944685] - perf symbols: Make dso__load_bfd_symbols() load PE files from debug cache only (Michael Petlan) [1944685] - perf symbols: Use (long) for iterator for bfd symbols (Michael Petlan) [1944685] - perf annotate: Fix jump parsing for C++ code. (Michael Petlan) [1944685] - perf arm-spe: Set sample's data source field (Michael Petlan) [1944685] - perf arm-spe: Synthesize memory event (Michael Petlan) [1944685] - perf arm-spe: Fill address info for samples (Michael Petlan) [1944685] - perf arm-spe: Store operation type in packet (Michael Petlan) [1944685] - perf arm-spe: Store memory address in packet (Michael Petlan) [1944685] - perf arm-spe: Enable sample type PERF_SAMPLE_DATA_SRC (Michael Petlan) [1944685] - perf env: Remove unneeded internal/cpumap inclusions (Michael Petlan) [1944685] - perf tools: Remove unused xyarray.c as it was moved to tools/lib/perf (Michael Petlan) [1944685] - perf tools: Replace lkml.org links with lore (Michael Petlan) [1944685] - perf tests: Add daemon 'lock' test (Michael Petlan) [1944685] - perf tests: Add daemon 'ping' command test (Michael Petlan) [1944685] - perf tests: Add daemon 'signal' command test (Michael Petlan) [1944685] - perf tests: Add daemon 'stop' command test (Michael Petlan) [1944685] - perf tests: Add daemon reconfig test (Michael Petlan) [1944685] - perf tests: Add daemon 'list' command test (Michael Petlan) [1944685] - perf daemon: Add examples to man page (Michael Petlan) [1944685] - perf daemon: Add up time for daemon/session list (Michael Petlan) [1944685] - perf daemon: Use control to stop session (Michael Petlan) [1944685] - perf daemon: Add 'ping' command (Michael Petlan) [1944685] - perf daemon: Set control fifo for session (Michael Petlan) [1944685] - perf daemon: Allow only one daemon over base directory (Michael Petlan) [1944685] - perf daemon: Add 'stop' command (Michael Petlan) [1944685] - perf daemon: Add 'signal' command (Michael Petlan) [1944685] - perf daemon: Add 'list' command (Michael Petlan) [1944685] - perf daemon: Add signalfd support (Michael Petlan) [1944685] - perf daemon: Add background support (Michael Petlan) [1944685] - perf daemon: Add config file change check (Michael Petlan) [1944685] - perf daemon: Add config file support (Michael Petlan) [1944685] - perf daemon: Add client socket support (Michael Petlan) [1944685] - perf daemon: Add server socket support (Michael Petlan) [1944685] - perf daemon: Add base option (Michael Petlan) [1944685] - perf daemon: Add config option (Michael Petlan) [1944685] - perf daemon: Add daemon command (Michael Petlan) [1944685] - perf script: Simplify bool conversion (Michael Petlan) [1944685] - perf arm64/s390: Fix printf conversion specifier for IP addresses (Michael Petlan) [1944685] - perf script: Support filtering by hex address (Michael Petlan) [1944685] - perf intlist: Change 'struct intlist' int member to 'unsigned long' (Michael Petlan) [1944685] - perf tools: Update topdown documentation for Sapphire Rapids (Michael Petlan) [1944685] - perf stat: Support L2 Topdown events (Michael Petlan) [1944685] - perf test: Support PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf report: Support instruction latency (Michael Petlan) [1944685] - perf tools: Support PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf c2c: Support data block and addr block (Michael Petlan) [1944685] - perf tools: Support data block and addr block (Michael Petlan) [1944685] - perf tools: Support the auxiliary event (Michael Petlan) [1944685] - perf probe: Add protection to avoid endless loop (Michael Petlan) [1944685] - perf trace-event-info: Rename for_each_event. (Michael Petlan) [1944685] - perf inject jit: Add namespaces support (Michael Petlan) [1944685] - perf namespaces: Add 'in_pidns' to nsinfo struct (Michael Petlan) [1944685] - perf tools: Use scandir() to iterate threads when synthesizing PERF_RECORD_ events (Michael Petlan) [1944685] - perf tools: Skip PERF_RECORD_MMAP event synthesis for kernel threads (Michael Petlan) [1944685] - perf tools: Use /proc//task//status for PERF_RECORD_ event synthesis (Michael Petlan) [1944685] - perf vendor events arm64: Reference common and uarch events for A76 (Michael Petlan) [1944685] - perf vendor events arm64: Reference common and uarch events for Ampere eMag (Michael Petlan) [1944685] - perf vendor events arm64: Add common and uarch event JSON (Michael Petlan) [1944685] - perf vendor events arm64: Fix Ampere eMag event typo (Michael Petlan) [1944685] - perf script: Support DSO filter like in other perf tools (Michael Petlan) [1944685] - perf tools: Fix DSO filtering when not finding a map for a sampled address (Michael Petlan) [1944685] - perf stat: Add Topdown metrics events as default events (Michael Petlan) [1944685] - perf test: Add parse-metric memory bandwidth testcase (Michael Petlan) [1944685] - perf tools: Add 'ping' control command (Michael Petlan) [1944685] - perf tools: Add 'stop' control command (Michael Petlan) [1944685] - perf config: Make perf_config_global() global (Michael Petlan) [1944685] - perf config: Make perf_config_system() global (Michael Petlan) [1944685] - perf config: Add perf_home_perfconfig function (Michael Petlan) [1944685] - perf debug: Add debug_set_display_time function (Michael Petlan) [1944685] - perf config: Add config set interface (Michael Petlan) [1944685] - perf config: Make perf_config_from_file() static (Michael Petlan) [1944685] - perf test: Add test case for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf report: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf script: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf record: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf mem: Support data page size (Michael Petlan) [1944685] - perf mem: Clean up output format (Michael Petlan) [1944685] - perf cs-etm: Update ARM's CoreSight hardware tracing OpenCSD library to v1.0.0 (Michael Petlan) [1944685] - perf c2c: Add local variables for output metrics (Michael Petlan) [1944685] - perf c2c: Refactor node display (Michael Petlan) [1944685] - perf c2c: Fix argument type for percent() (Michael Petlan) [1944685] - perf c2c: Refactor display filter (Michael Petlan) [1944685] - perf c2c: Refactor hist entry validation (Michael Petlan) [1944685] - perf c2c: Rename for shared cache line stats (Michael Petlan) [1944685] - perf stat: Enable counting events for BPF programs (Michael Petlan) [1944685] - perf build: Support build BPF skeletons with perf (Michael Petlan) [1944685] - perf record: Tweak "Lowering..." warning in record_opts__config_freq (Michael Petlan) [1944685] - perf buildid-list: Add support for mmap2's buildid events (Michael Petlan) [1944685] - perf buildid-cache: Add --debuginfod option to specify a server to fetch debug files (Michael Petlan) [1944685] - perf tools: Add support to display build ids when available in PERF_RECORD_MMAP2 events (Michael Petlan) [1944685] - perf record: Add --buildid-mmap option to enable PERF_RECORD_MMAP2's build id (Michael Petlan) [1944685] - perf tools: Allow synthesizing the build id for kernel/modules/tasks in PERF_RECORD_MMAP2 (Michael Petlan) [1944685] - perf tools: Allow using PERF_RECORD_MMAP2 to synthesize the kernel modules maps (Michael Petlan) [1944685] - perf tools: Allow using PERF_RECORD_MMAP2 to synthesize the kernel map (Michael Petlan) [1944685] - perf tools: Store build id when available in PERF_RECORD_MMAP2 metadata events (Michael Petlan) [1944685] - perf tools: Do not swap mmap2 fields in case it contains build id (Michael Petlan) [1944685] - perf arm64: Add argument support for SDT (Michael Petlan) [1944685] - perf probe: Fixup Arm64 SDT arguments (Michael Petlan) [1944685] - perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[] (Michael Petlan) [1944685] - perf/x86/intel: Fix unchecked MSR access error caused by VLBR_EVENT (Michael Petlan) [1944685] - perf/x86/intel: Fix a crash caused by zero PEBS status (Michael Petlan) [1944685] - perf/x86/intel: Set PERF_ATTACH_SCHED_CB for large PEBS and LBR (Michael Petlan) [1944685] - perf/core: Flush PMU internal buffers for per-CPU events (Michael Petlan) [1944685] - perf/x86/rapl: Fix psys-energy event on Intel SPR platform (Michael Petlan) [1944685] - perf/x86/rapl: Only check lower 32bits for RAPL energy counters (Michael Petlan) [1944685] - perf/x86/rapl: Add msr mask support (Michael Petlan) [1944685] - perf/x86/kvm: Add Cascade Lake Xeon steppings to isolation_ucodes[] (Michael Petlan) [1944685] - perf/x86/intel: Support CPUID 10.ECX to disable fixed counters (Michael Petlan) [1944685] - perf/x86/intel: Add perf core PMU support for Sapphire Rapids (Michael Petlan) [1944685] - perf/x86/intel: Filter unsupported Topdown metrics event (Michael Petlan) [1944685] - perf/x86/intel: Factor out intel_update_topdown_event() (Michael Petlan) [1944685] - perf/core: Add PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf/intel: Remove Perfmon-v4 counter_freezing support (Michael Petlan) [1944685] - perf: Add build id data in mmap2 event (Michael Petlan) [1944685] - bpf: Remove atomics tests from test_progs (Jiri Olsa) [1874007] - libbpf: Fixes incorrect rx_ring_setup_done (Jiri Olsa) [1874007] - error-injection: Consolidate override function definition (Jiri Olsa) [1874007] - selftests/bpf: Fix endianness issues in atomic tests (Jiri Olsa) [1874007] - bpf: Fix a spelling typo in bpf_atomic_alu_string disasm (Jiri Olsa) [1874007] - bpf, x86: Fix BPF_FETCH atomic and/or/xor with r0 as src (Jiri Olsa) [1874007] - bpf: Explicitly zero-extend R0 after 32-bit cmpxchg (Jiri Olsa) [1874007] - bpf: Account for BPF_FETCH in insn_has_def32() (Jiri Olsa) [1874007] - bpf: Fix subreg optimization for BPF_FETCH (Jiri Olsa) [1874007] - bpf: Fix the irq and nmi check in bpf_sk_storage for tracing usage (Jiri Olsa) [1874007] - selftests/bpf: Fix a compiler warning in local_storage test (Jiri Olsa) [1874007] - bpf: Change 'BPF_ADD' to 'BPF_AND' in print_bpf_insn() (Jiri Olsa) [1874007] - selftests/bpf: Don't exit on failed bpf_testmod unload (Jiri Olsa) [1874007] - bpf: Avoid old-style declaration warnings (Jiri Olsa) [1874007] - bpf: Dont allow vmlinux BTF to be used in map_create and prog_load. (Jiri Olsa) [1874007] - tools: Factor Clang, LLC and LLVM utils definitions (Jiri Olsa) [1874007] - tools/runqslower: Build bpftool using HOSTCC (Jiri Olsa) [1874007] - tools/runqslower: Enable out-of-tree build (Jiri Olsa) [1874007] - tools/runqslower: Use Makefile.include (Jiri Olsa) [1874007] - bpf: Expose bpf_sk_storage_* to iterator programs (Jiri Olsa) [1874007] - tools/resolve_btfids: Warn when having multiple IDs for single type (Jiri Olsa) [1874007] - tools/resolve_btfids: Fix some error messages (Jiri Olsa) [1874007] - samples/bpf: Add BPF_ATOMIC_OP macro for BPF samples (Jiri Olsa) [1874007] - samples/bpf: Fix possible hang in xdpsock with multiple threads (Jiri Olsa) [1874007] - bpf: samples: Do not touch RLIMIT_MEMLOCK (Jiri Olsa) [1874007] - samples/bpf: Use recvfrom() in xdpsock/l2fwd (Jiri Olsa) [1874007] - samples/bpf: Use recvfrom() in xdpsock/rxdrop (Jiri Olsa) [1874007] - samples: bpf: Remove bpf_load loader completely (Jiri Olsa) [1874007] - samples: bpf: Fix lwt_len_hist reusing previous BPF map (Jiri Olsa) [1874007] - samples: bpf: Refactor test_overhead program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor task_fd_query program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor test_cgrp2_sock2 program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor hbm program with libbpf (Jiri Olsa) [1874007] - samples/bpf: Increment Tx stats at sending (Jiri Olsa) [1874007] - samples/bpf: Remove unused test_ipip.sh (Jiri Olsa) [1874007] - samples/bpf: Remove duplicate include in hbm (Jiri Olsa) [1874007] - bpftool: Fix compilation failure for net.o with older glibc (Jiri Olsa) [1874007] - tools/bpftool: Auto-detect split BTFs in common cases (Jiri Olsa) [1874007] - tools/bpftool: Emit name for anonymous BTFs (Jiri Olsa) [1874007] - bpftool: Add {i,d}tlb_misses support for bpftool profile (Jiri Olsa) [1874007] - tools/bpf: Always run the *-clean recipes (Jiri Olsa) [1874007] - tools/bpf: Add bootstrap/ to .gitignore (Jiri Olsa) [1874007] - tools/bpftool: Fix cross-build (Jiri Olsa) [1874007] - tools/bpftool: Force clean of out-of-tree build (Jiri Olsa) [1874007] - tools/bpftool: Add support for in-kernel and named BTF in `btf show` (Jiri Olsa) [1874007] - bpftool: Add support for task local storage (Jiri Olsa) [1874007] - tools/bpftool: Add bpftool support for split BTF (Jiri Olsa) [1874007] - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3 (Jiri Olsa) [1874007] - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() (Jiri Olsa) [1874007] - bpf: Expose bpf_d_path helper to sleepable LSM hooks (Jiri Olsa) [1874007] - bpf: Allow using bpf_sk_storage in FENTRY/FEXIT/RAW_TP (Jiri Olsa) [1874007] - selftests/bpf: Add remaining ASSERT_xxx() variants (Jiri Olsa) [1874007] - libbpf: Fix potential NULL pointer dereference (Jiri Olsa) [1874007] - libbpf: Only create rx and tx XDP rings when necessary (Jiri Olsa) [1874007] - libbpf: Ensure umem pointer is non-NULL before dereferencing (Jiri Olsa) [1874007] - libbpf: Restore umem state after socket create failure (Jiri Olsa) [1874007] - selftests/bpf: Fix core_reloc test runner (Jiri Olsa) [1874007] - bpf: Fix umd memory leak in copy_process() (Jiri Olsa) [1874007] - libbpf: Fix error path in bpf_object__elf_init() (Jiri Olsa) [1874007] - bpf: Change inode_storage's lookup_elem return value from NULL to -EBADF (Jiri Olsa) [1874007] - bpf: Prohibit alu ops for pointer types not defining ptr_limit (Jiri Olsa) [1874007] - selftests/bpf: Use the last page in test_snprintf_btf on s390 (Jiri Olsa) [1874007] - bpf: Be less specific about socket cookies guarantees (Jiri Olsa) [1874007] - bpf: Fix 32 bit src register truncation on div/mod (Jiri Olsa) [1874007] - bpf: Fix verifier jmp32 pruning decision logic (Jiri Olsa) [1874007] - bpf: Fix verifier jsgt branch analysis on max bound (Jiri Olsa) [1874007] - bpf: Check for integer overflow when using roundup_pow_of_two() (Jiri Olsa) [1874007] - bpf, preload: Fix build when $(O) points to a relative path (Jiri Olsa) [1874007] - bpf: Drop disabled LSM hooks from the sleepable set (Jiri Olsa) [1874007] - bpf, cgroup: Fix problematic bounds check (Jiri Olsa) [1874007] - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou (Jiri Olsa) [1874007] - bpf: Fix signed_{sub,add32}_overflows type handling (Jiri Olsa) [1874007] - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback (Jiri Olsa) [1874007] - selftests/bpf: Add verifier test for PTR_TO_MEM spill (Jiri Olsa) [1874007] - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling (Jiri Olsa) [1874007] - libbpf: Allow loading empty BTFs (Jiri Olsa) [1874007] - bpf: Allow empty module BTFs (Jiri Olsa) [1874007] - bpf: Don't leak memory in bpf getsockopt when optlen == 0 (Jiri Olsa) [1874007] - bpf: Update local storage test to check handling of null ptrs (Jiri Olsa) [1874007] - bpf: Fix typo in bpf_inode_storage.c (Jiri Olsa) [1874007] - bpf: Add size arg to build_id_parse function (Jiri Olsa) [1874007] - bpf: Move stack_map_get_build_id into lib (Jiri Olsa) [1874007] - bpf: Add tests for new BPF atomic operations (Jiri Olsa) [1874007] - bpf: Add bitwise atomic instructions (Jiri Olsa) [1874007] - bpf: Pull out a macro for interpreting atomic ALU operations (Jiri Olsa) [1874007] - bpf: Add instructions for atomic_[cmp]xchg (Jiri Olsa) [1874007] - bpf: Add BPF_FETCH field / create atomic_fetch_add instruction (Jiri Olsa) [1874007] - bpf: Move BPF_STX reserved field check into BPF_STX verifier code (Jiri Olsa) [1874007] - bpf: Rename BPF_XADD and prepare to encode other atomics in .imm (Jiri Olsa) [1874007] - bpf: x86: Factor out a lookup table for some ALU opcodes (Jiri Olsa) [1874007] - bpf: x86: Factor out emission of REX byte (Jiri Olsa) [1874007] - bpf: x86: Factor out emission of ModR/M for *(reg + off) (Jiri Olsa) [1874007] - bpf, libbpf: Avoid unused function warning on bpf_tail_call_static (Jiri Olsa) [1874007] - selftests/bpf: Install btf_dump test cases (Jiri Olsa) [1874007] - selftests/bpf: Fix installation of urandom_read (Jiri Olsa) [1874007] - selftests/bpf: Move generated test files to $(TEST_GEN_FILES) (Jiri Olsa) [1874007] - selftests/bpf: Fix out-of-tree build (Jiri Olsa) [1874007] - selftests/bpf: Enable cross-building (Jiri Olsa) [1874007] - selftests/bpf: Test kernel module ksym externs (Jiri Olsa) [1874007] - libbpf: Support kernel module ksym externs (Jiri Olsa) [1874007] - bpf: Support BPF ksym variables in kernel modules (Jiri Olsa) [1874007] - selftests/bpf: Sync RCU before unloading bpf_testmod (Jiri Olsa) [1874007] - bpf: Fix a verifier message for alloc size helper arg (Jiri Olsa) [1874007] - bpf: Clarify return value of probe str helpers (Jiri Olsa) [1874007] - libbpf: Clarify kernel type use with USER variants of CORE reading macros (Jiri Olsa) [1874007] - selftests/bpf: Remove duplicate include in test_lsm (Jiri Olsa) [1874007] - bpf: Remove unnecessary include from preload/iterators (Jiri Olsa) [1874007] - selftests/bpf: Add tests for user- and non-CO-RE BPF_CORE_READ() variants (Jiri Olsa) [1874007] - libbpf: Add non-CO-RE variants of BPF_CORE_READ() macro family (Jiri Olsa) [1874007] - selftests/bpf: Fix a compile error for BPF_F_BPRM_SECUREEXEC (Jiri Olsa) [1874007] - bpf: Use thread_group_leader() (Jiri Olsa) [1874007] - bpf: Save correct stopping point in file seq iteration (Jiri Olsa) [1874007] - selftests/bpf: Work-around EBUSY errors from hashmap update/delete (Jiri Olsa) [1874007] - bpf: Add schedule point in htab_init_buckets() (Jiri Olsa) [1874007] - bpf: Remove unused including (Jiri Olsa) [1874007] - selftests/bpf: Fix spelling mistake "tranmission" -> "transmission" (Jiri Olsa) [1874007] - selftests/bpf: Clarify build error if no vmlinux (Jiri Olsa) [1874007] - tweewide: Fix most Shebang lines (Jiri Olsa) [1874007] - bpf: In bpf_task_fd_query use fget_task (Jiri Olsa) [1874007] - selftests/bpf: Add a test for ptr_to_map_value on stack for helper access (Jiri Olsa) [1874007] - bpf: Permits pointers on stack for helper calls (Jiri Olsa) [1874007] - libbpf: Expose libbpf ring_buffer epoll_fd (Jiri Olsa) [1874007] - selftests/bpf: Add set_attach_target() API selftest for module target (Jiri Olsa) [1874007] - libbpf: Support modules in bpf_program__set_attach_target() API (Jiri Olsa) [1874007] - selftests/bpf: Silence ima_setup.sh when not running in verbose mode. (Jiri Olsa) [1874007] - selftests/bpf: Drop the need for LLVM's llc (Jiri Olsa) [1874007] - selftests/bpf: fix bpf_testmod.ko recompilation logic (Jiri Olsa) [1874007] - selftests/bpf: Make selftest compilation work on clang 11 (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - adding xdpxceiver to .gitignore (Jiri Olsa) [1874007] - selftests/bpf: Drop tcp-{client,server}.py from Makefile (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - Bi-directional Sockets - SKB, DRV (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - Socket Teardown - SKB, DRV (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - DRV POLL, NOPOLL (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - SKB POLL, NOPOLL (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests framework (Jiri Olsa) [1874007] - bpf: Return -ENOTSUPP when attaching to non-kernel BTF (Jiri Olsa) [1874007] - bpf: Propagate __user annotations properly (Jiri Olsa) [1874007] - bpf: Avoid overflows involving hash elem_size (Jiri Olsa) [1874007] - selftests/bpf: Test bpf_sk_storage_get in tcp iterators (Jiri Olsa) [1874007] - selftests/bpf: Add an iterator selftest for bpf_sk_storage_get (Jiri Olsa) [1874007] - selftests/bpf: Add an iterator selftest for bpf_sk_storage_delete (Jiri Olsa) [1874007] - bpf: Add a bpf_sock_from_file helper (Jiri Olsa) [1874007] - selftests/bpf: Avoid errno clobbering (Jiri Olsa) [1874007] - selftests/bpf: Print reason when a tester could not run a program (Jiri Olsa) [1874007] - selftests/bpf: Fix invalid use of strncat in test_sockmap (Jiri Olsa) [1874007] - libbpf: Use memcpy instead of strncpy to please GCC (Jiri Olsa) [1874007] - selftests/bpf: Add fentry/fexit/fmod_ret selftest for kernel module (Jiri Olsa) [1874007] - selftests/bpf: Add tp_btf CO-RE reloc test for modules (Jiri Olsa) [1874007] - libbpf: Support attachment of BPF tracing programs to kernel modules (Jiri Olsa) [1874007] - libbpf: Factor out low-level BPF program loading helper (Jiri Olsa) [1874007] - bpf: Allow to specify kernel module BTFs when attaching BPF programs (Jiri Olsa) [1874007] - bpf: Remove hard-coded btf_vmlinux assumption from BPF verifier (Jiri Olsa) [1874007] - selftests/bpf: Add CO-RE relocs selftest relying on kernel module BTF (Jiri Olsa) [1874007] - selftests/bpf: Add support for marking sub-tests as skipped (Jiri Olsa) [1874007] - selftests/bpf: Add bpf_testmod kernel module for testing (Jiri Olsa) [1874007] - libbpf: Add kernel module BTF support for CO-RE relocations (Jiri Olsa) [1874007] - libbpf: Refactor CO-RE relocs to not assume a single BTF object (Jiri Olsa) [1874007] - libbpf: Add internal helper to load BTF data by FD (Jiri Olsa) [1874007] - selftests/bpf: Add Userspace tests for TCP_WINDOW_CLAMP (Jiri Olsa) [1874007] - bpf: Fix cold build of test_progs-no_alu32 (Jiri Olsa) [1874007] - libbpf: Cap retries in sys_bpf_prog_load (Jiri Olsa) [1874007] - libbpf: Sanitise map names before pinning (Jiri Olsa) [1874007] - libbpf: Fail early when loading programs with unspecified type (Jiri Olsa) [1874007] - selftests/bpf: Indent ima_setup.sh with tabs. (Jiri Olsa) [1874007] - selftests/bpf: Add config dependency on BLK_DEV_LOOP (Jiri Olsa) [1874007] - selftests/bpf: Ensure securityfs mount before writing ima policy (Jiri Olsa) [1874007] - selftests/bpf: Update ima_setup.sh for busybox (Jiri Olsa) [1874007] - libbpf: Separate XDP program load with xsk socket creation (Jiri Olsa) [1874007] - selftests/bpf: Copy file using read/write in local storage test (Jiri Olsa) [1874007] - libbpf: Add base BTF accessor (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf progs (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf local storage maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for stackmap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf ringbuffer (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for reuseport_array maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for queue_stack_maps maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for lpm_trie maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for hashtab maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for devmap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for cgroup storage maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for cpumap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf_struct_ops maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for arraymap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf local storage maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf ringbuffer (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for lpm_trie maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for hashtab maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for devmap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for cgroup storage maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for cpumap maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for arraymap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf maps (Jiri Olsa) [1874007] - bpf: Prepare for memcg-based memory accounting for bpf maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf progs (Jiri Olsa) [1874007] - selftests/bpf: Extend bind{4,6} programs with a call to bpf_setsockopt (Jiri Olsa) [1874007] - selftests/bpf: Rewrite test_sock_addr bind bpf into C (Jiri Olsa) [1874007] - selftests/bpf: Fix flavored variants of test_ima (Jiri Olsa) [1874007] - libbpf: Replace size_t with __u32 in xsk interfaces (Jiri Olsa) [1874007] - bpf: Add a selftest for bpf_ima_inode_hash (Jiri Olsa) [1874007] - bpf: Add a BPF helper for getting the IMA hash of an inode (Jiri Olsa) [1874007] - libbpf: Add support for canceling cached_cons advance (Jiri Olsa) [1874007] - bpf: Refactor check_cfg to use a structured loop. (Jiri Olsa) [1874007] - selftest/bpf: Fix rst formatting in readme (Jiri Olsa) [1874007] - selftest/bpf: Fix link in readme (Jiri Olsa) [1874007] - bpf: Simplify task_file_seq_get_next() (Jiri Olsa) [1874007] - selftests/bpf: Mark tests that require unaligned memory access (Jiri Olsa) [1874007] - selftests/bpf: Avoid running unprivileged tests with alignment requirements (Jiri Olsa) [1874007] - selftests/bpf: Fix broken riscv build (Jiri Olsa) [1874007] - bpf: Add bpf_ktime_get_coarse_ns helper (Jiri Olsa) [1874007] - bpf: Add tests for bpf_bprm_opts_set helper (Jiri Olsa) [1874007] - bpf: Add bpf_bprm_opts_set helper (Jiri Olsa) [1874007] - libbpf: bpf__find_by_name[_kind] should use btf__get_nr_types() (Jiri Olsa) [1874007] - selftest/bpf: Fix IPV6FR handling in flow dissector (Jiri Olsa) [1874007] - bpf: Augment the set of sleepable LSM hooks (Jiri Olsa) [1874007] - bpf: selftest: Use bpf_sk_storage in FENTRY/FEXIT/RAW_TP (Jiri Olsa) [1874007] - selftests/bpf: Add asm tests for pkt vs pkt_end comparison. (Jiri Olsa) [1874007] - selftests/bpf: Add skb_pkt_end test (Jiri Olsa) [1874007] - bpf: Support for pointers beyond pkt_end. (Jiri Olsa) [1874007] - bpf: Compile out btf_parse_module() if module BTF is not enabled (Jiri Olsa) [1874007] - selftest/bpf: Add missed ip6ip6 test back (Jiri Olsa) [1874007] - bpf: Keep module's btf_data_size intact after load (Jiri Olsa) [1874007] - bpf: Sanitize BTF data pointer after module is loaded (Jiri Olsa) [1874007] - bpf: Load and verify kernel module BTFs (Jiri Olsa) [1874007] - bpf: Assign ID to vmlinux BTF and return extra info for BTF in GET_OBJ_INFO (Jiri Olsa) [1874007] - bpf: Add in-kernel split BTF support (Jiri Olsa) [1874007] - bpf, btf: Remove the duplicate btf_ids.h include (Jiri Olsa) [1874007] - selftests/bpf: Fix selftest build with old libc (Jiri Olsa) [1874007] - bpf: Exercise syscall operations for inode and sk storage (Jiri Olsa) [1874007] - bpf: Add tests for task_local_storage (Jiri Olsa) [1874007] - bpf: Update selftests for local_storage to use vmlinux.h (Jiri Olsa) [1874007] - bpf: Implement get_current_task_btf and RET_PTR_TO_BTF_ID (Jiri Olsa) [1874007] - libbpf: Add support for task local storage (Jiri Olsa) [1874007] - bpf: Implement task local storage (Jiri Olsa) [1874007] - bpf: Allow LSM programs to use bpf spin locks (Jiri Olsa) [1874007] - bpf: Lift hashtab key_size limit (Jiri Olsa) [1874007] - selftests/bpf: Add split BTF dedup selftests (Jiri Olsa) [1874007] - libbpf: Accomodate DWARF/compiler bug with duplicated identical arrays (Jiri Olsa) [1874007] - libbpf: Support BTF dedup of split BTFs (Jiri Olsa) [1874007] - libbpf: Fix BTF data layout checks and allow empty BTF (Jiri Olsa) [1874007] - selftests/bpf: Add checking of raw type dump in BTF writer APIs selftests (Jiri Olsa) [1874007] - selftests/bpf: Add split BTF basic test (Jiri Olsa) [1874007] - libbpf: Implement basic split BTF support (Jiri Olsa) [1874007] - libbpf: Unify and speed up BTF string deduplication (Jiri Olsa) [1874007] - selftest/bpf: Relax btf_dedup test checks (Jiri Olsa) [1874007] - libbpf: Factor out common operations in BTF writing APIs (Jiri Olsa) [1874007] - selftest/bpf: Use global variables instead of maps for test_tcpbpf_kern (Jiri Olsa) [1874007] - selftests/bpf: Migrate tcpbpf_user.c to use BPF skeleton (Jiri Olsa) [1874007] - selftests/bpf: Replace EXPECT_EQ with ASSERT_EQ and refactor verify_results (Jiri Olsa) [1874007] - selftests/bpf: Drop python client/server in favor of threads (Jiri Olsa) [1874007] - selftests/bpf: Move test_tcppbf_user into test_progs (Jiri Olsa) [1874007] - bpf: Fix error path in htab_map_alloc() (Jiri Olsa) [1874007] - bpf: Avoid hashtab deadlock with map_locked (Jiri Olsa) [1874007] - bpf: Use separate lockdep class for each hashtab (Jiri Olsa) [1874007] - fault-injection: handle EI_ETYPE_TRUE (Jiri Olsa) [1874007] - vfs, fdtable: Add fget_task helper (Jiri Olsa) [1874007] - [s390] vfio-pci/zdev: Add zPCI capabilities to VFIO_DEVICE_GET_INFO (Claudio Imbrenda) [1858844] - [s390] vfio: Introduce capability definitions for VFIO_DEVICE_GET_INFO (Claudio Imbrenda) [1858844] - [s390] s390/pci: track whether util_str is valid in the zpci_dev (Claudio Imbrenda) [1858844] - [s390] s390/pci: stash version in the zpci_dev (Claudio Imbrenda) [1858844]- Enable CRYPTO_SHA512 and _SSSE3 so these are available in FIPS mode (Vladis Dronov) [1973106] - crypto: drbg - self test for HMAC(SHA-512) (Vladis Dronov) [1973106] - xfrm: xfrm_state_mtu should return at least 1280 for ipv6 (Sabrina Dubroca) [1919786] - xfrm: remove get_mtu indirection from xfrm_type (Sabrina Dubroca) [1919786] - netfilter: move endif to correct location (Florian Westphal) [1971991] - netfilter: nft_compat: remove flush counter optimization (Florian Westphal) [1974323] - mptcp: fix soft lookup in subflow_error_report() (Florian Westphal) [1936368] - selftests: mptcp: enable syncookie only in absence of reorders (Florian Westphal) [1936368] - mptcp: do not warn on bad input from the network (Florian Westphal) [1936368] - mptcp: wake-up readers only for in sequence data (Florian Westphal) [1936368] - mptcp: try harder to borrow memory from subflow under pressure (Florian Westphal) [1936368] - mptcp: Fix out of bounds when parsing TCP options (Florian Westphal) [1936368] - selftests: mptcp_connect: add SO_TIMESTAMPNS cmsg support (Florian Westphal) [1936368] - mptcp: receive path cmsg support (Florian Westphal) [1936368] - tcp: export timestamp helpers for mptcp (Florian Westphal) [1936368] - mptcp: setsockopt: handle SOL_SOCKET in one place only (Florian Westphal) [1936368] - mptcp: sockopt: propagate timestamp request to subflows (Florian Westphal) [1936368] - sock: expose so_timestamping options for mptcp (Florian Westphal) [1936368] - mptcp: restrict values of 'enabled' sysctl (Florian Westphal) [1936368] - mptcp: support SYSCTL only if enabled (Florian Westphal) [1936368] - mptcp: make sure flag signal is set when add addr with port (Florian Westphal) [1936368] - mptcp: remove redundant initialization in pm_nl_init_net() (Florian Westphal) [1936368] - mptcp: generate subflow hmac after mptcp_finish_join() (Florian Westphal) [1936368] - mptcp: using TOKEN_MAX_RETRIES instead of magic number (Florian Westphal) [1936368] - mptcp: fix pr_debug in mptcp_token_new_connect (Florian Westphal) [1936368] - mptcp: update selftest for fallback due to OoO (Florian Westphal) [1936368] - mptcp: do not reset MP_CAPABLE subflow on mapping errors (Florian Westphal) [1936368] - mptcp: always parse mptcp options for MPC reqsk (Florian Westphal) [1936368] - mptcp: fix sk_forward_memory corruption on retransmission (Florian Westphal) [1936368] - mptcp: validate 'id' when stopping the ADD_ADDR retransmit timer (Florian Westphal) [1936368] - mptcp: avoid error message on infinite mapping (Florian Westphal) [1936368] - mptcp: drop unconditional pr_warn on bad opt (Florian Westphal) [1936368] - mptcp: avoid OOB access in setsockopt() (Florian Westphal) [1936368] - mptcp: fix data stream corruption (Florian Westphal) [1936368] - mptcp: fix splat when closing unaccepted socket (Florian Westphal) [1936368] - selftests: mptcp: add a test case for MSG_PEEK (Florian Westphal) [1936368] - mptcp: add MSG_PEEK support (Florian Westphal) [1936368] - mptcp: ignore unsupported msg flags (Florian Westphal) [1936368] - mptcp: implement MSG_TRUNC support (Florian Westphal) [1936368] - mptcp: implement dummy MSG_ERRQUEUE support (Florian Westphal) [1936368] - mptcp: Retransmit DATA_FIN (Florian Westphal) [1936368] - selftests: mptcp: add packet mark test case (Florian Westphal) [1936368] - selftests: mptcp: add the net device name testcase (Florian Westphal) [1936368] - selftests: mptcp: dump more info on mpjoin errors (Florian Westphal) [1936368] - selftests: mptcp: init nstat history (Florian Westphal) [1936368] - selftests: mptcp: launch mptcp_connect with timeout (Florian Westphal) [1936368] - selftests: mptcp: remove id 0 address testcases (Florian Westphal) [1936368] - selftests: mptcp: add addr argument for del_addr (Florian Westphal) [1936368] - selftests: mptcp: avoid calling pm_nl_ctl with bad IDs (Florian Westphal) [1936368] - selftests: mptcp: signal addresses testcases (Florian Westphal) [1936368] - selftests: mptcp: timeout testcases for multi addresses (Florian Westphal) [1936368] - selftests: mptcp: add cfg_do_w for cfg_remove (Florian Westphal) [1936368] - selftests: mptcp: Restore packet capture option in join tests (Florian Westphal) [1936368] - selftests: mptcp: add testcases for removing addrs (Florian Westphal) [1936368] - selftests: mptcp: set addr id for removing testcases (Florian Westphal) [1936368] - selftests: mptcp: add invert argument for chk_rm_nr (Florian Westphal) [1936368] - selftests: mptcp: fail if not enough SYN/3rd ACK (Florian Westphal) [1936368] - selftests: mptcp: display warnings on one line (Florian Westphal) [1936368] - selftests: mptcp: fix ACKRX debug message (Florian Westphal) [1936368] - selftests: mptcp: dump more info on errors (Florian Westphal) [1936368] - selftests: mptcp: add command line arguments for mptcp_join.sh (Florian Westphal) [1936368] - selftests: mptcp: add testcases for ADD_ADDR with port (Florian Westphal) [1936368] - selftests: mptcp: add port argument for pm_nl_ctl (Florian Westphal) [1936368] - selftests: mptcp: add testcases for newly added addresses (Florian Westphal) [1936368] - selftests: mptcp: use minus values for removing address numbers (Florian Westphal) [1936368] - selftests: increase timeout to 10 min (Florian Westphal) [1936368] - selftests: mptcp: add IPv4-mapped IPv6 testcases (Florian Westphal) [1936368] - mptcp: use mptcp_for_each_subflow in mptcp_close (Florian Westphal) [1936368] - mptcp: add tracepoint in subflow_check_data_avail (Florian Westphal) [1936368] - mptcp: add tracepoint in ack_update_msk (Florian Westphal) [1936368] - mptcp: add tracepoint in get_mapping_status (Florian Westphal) [1936368] - mptcp: add tracepoint in mptcp_subflow_get_send (Florian Westphal) [1936368] - mptcp: export mptcp_subflow_active (Florian Westphal) [1936368] - mptcp: fix format specifiers for unsigned int (Florian Westphal) [1936368] - mptcp: sockopt: add TCP_CONGESTION and TCP_INFO (Florian Westphal) [1936368] - mptcp: setsockopt: SO_DEBUG and no-op options (Florian Westphal) [1936368] - mptcp: setsockopt: add SO_INCOMING_CPU (Florian Westphal) [1936368] - mptcp: setsockopt: add SO_MARK support (Florian Westphal) [1936368] - mptcp: setsockopt: support SO_LINGER (Florian Westphal) [1936368] - mptcp: setsockopt: handle receive/send buffer and device bind (Florian Westphal) [1936368] - mptcp: setsockopt: handle SO_KEEPALIVE and SO_PRIORITY (Florian Westphal) [1936368] - mptcp: tag sequence_seq with socket state (Florian Westphal) [1936368] - mptcp: add skeleton to sync msk socket options to subflows (Florian Westphal) [1936368] - mptcp: only admit explicitly supported sockopt (Florian Westphal) [1936368] - mptcp: move sockopt function into a new file (Florian Westphal) [1936368] - mptcp: drop all sub-options except ADD_ADDR when the echo bit is set (Florian Westphal) [1936368] - mptcp: unify add_addr(6)_generate_hmac (Florian Westphal) [1936368] - mptcp: drop MPTCP_ADDR_IPVERSION_4/6 (Florian Westphal) [1936368] - mptcp: use mptcp_addr_info in mptcp_options_received (Florian Westphal) [1936368] - mptcp: drop OPTION_MPTCP_ADD_ADDR6 (Florian Westphal) [1936368] - mptcp: use mptcp_addr_info in mptcp_out_options (Florian Westphal) [1936368] - mptcp: move flags and ifindex out of mptcp_addr_info (Florian Westphal) [1936368] - mptcp: add mptcp reset option support (Florian Westphal) [1936368] - mptcp: remove unneeded check on first subflow (Florian Westphal) [1936368] - mptcp: add active MPC mibs (Florian Westphal) [1936368] - mptcp: add mib for token creation fallback (Florian Westphal) [1936368] - mptcp: remove id 0 address (Florian Westphal) [1936368] - mptcp: unify RM_ADDR and RM_SUBFLOW receiving (Florian Westphal) [1936368] - mptcp: remove all subflows involving id 0 address (Florian Westphal) [1936368] - mptcp: subflow.c: Fix a typo (Florian Westphal) [1936368] - mptcp: rename mptcp_pm_nl_add_addr_send_ack (Florian Westphal) [1936368] - mptcp: send ack for rm_addr (Florian Westphal) [1936368] - mptcp: drop useless addr_signal clear (Florian Westphal) [1936368] - mptcp: move to next addr when subflow creation fail (Florian Westphal) [1936368] - mptcp: export lookup_anno_list_by_saddr (Florian Westphal) [1936368] - mptcp: move to next addr when timeout (Florian Westphal) [1936368] - mptcp: drop unused subflow in mptcp_pm_subflow_established (Florian Westphal) [1936368] - mptcp: skip connecting the connected address (Florian Westphal) [1936368] - mptcp: drop argument port from mptcp_pm_announce_addr (Florian Westphal) [1936368] - mptcp: clean-up the rtx path (Florian Westphal) [1936368] - mptcp: fix ADD_ADDR HMAC in case port is specified (Florian Westphal) [1936368] - mptcp: remove a list of addrs when flushing (Florian Westphal) [1936368] - mptcp: remove multi addresses and subflows in PM (Florian Westphal) [1936368] - mptcp: remove multi subflows in PM (Florian Westphal) [1936368] - mptcp: remove multi addresses in PM (Florian Westphal) [1936368] - mptcp: add rm_list_rx in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: add rm_list in mptcp_options_received (Florian Westphal) [1936368] - mptcp: add rm_list_tx in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: add rm_list in mptcp_out_options (Florian Westphal) [1936368] - mptcp: fix bit MPTCP_PUSH_PENDING tests (Florian Westphal) [1936368] - mptcp: fix length of ADD_ADDR with port sub-option (Florian Westphal) [1936368] - mptcp: free resources when the port number is mismatched (Florian Westphal) [1936368] - mptcp: fix missing wakeup (Florian Westphal) [1936368] - mptcp: fix race in release_cb (Florian Westphal) [1936368] - mptcp: factor out __mptcp_retrans helper() (Florian Westphal) [1936368] - mptcp: reset 'first' and ack_hint on subflow close (Florian Westphal) [1936368] - mptcp: dispose initial struct socket when its subflow is closed (Florian Westphal) [1936368] - mptcp: fix memory accounting on allocation error (Florian Westphal) [1936368] - mptcp: put subflow sock on connect error (Florian Westphal) [1936368] - mptcp: reset last_snd on subflow close (Florian Westphal) [1936368] - mptcp: do not wakeup listener for MPJ subflows (Florian Westphal) [1936368] - mptcp: fix DATA_FIN generation on early shutdown (Florian Westphal) [1936368] - mptcp: fix DATA_FIN processing for orphaned sockets (Florian Westphal) [1936368] - mptcp: add local addr info in mptcp_info (Florian Westphal) [1936368] - mptcp: add netlink event support (Florian Westphal) [1936368] - mptcp: avoid lock_fast usage in accept path (Florian Westphal) [1936368] - netlink: don't call ->netlink_bind with table lock held (Florian Westphal) [1936368] - genetlink: restrict upcoming mptcp netlink events to CAP_NET_ADMIN (Florian Westphal) [1936368] - mptcp: pass subflow socket to a few helpers (Florian Westphal) [1936368] - mptcp: move subflow close loop after sk close check (Florian Westphal) [1936368] - mptcp: schedule worker when subflow is closed (Florian Westphal) [1936368] - mptcp: split __mptcp_close_ssk helper (Florian Westphal) [1936368] - mptcp: move pm netlink work into pm_netlink (Florian Westphal) [1936368] - mptcp: add a missing retransmission timer scheduling (Florian Westphal) [1936368] - mptcp: better msk receive window updates (Florian Westphal) [1936368] - mptcp: init mptcp request socket earlier (Florian Westphal) [1936368] - mptcp: fix spurious retransmissions (Florian Westphal) [1936368] - mptcp: fix poll after shutdown (Florian Westphal) [1936368] - mptcp: deliver ssk errors to msk (Florian Westphal) [1936368] - mptcp: pm: add lockdep assertions (Florian Westphal) [1936368] - mptcp: add the mibs for ADD_ADDR with port (Florian Westphal) [1936368] - mptcp: deal with MPTCP_PM_ADDR_ATTR_PORT in PM netlink (Florian Westphal) [1936368] - mptcp: enable use_port when invoke addresses_equal (Florian Westphal) [1936368] - mptcp: add port number check for MP_JOIN (Florian Westphal) [1936368] - mptcp: add a new helper subflow_req_create_thmac (Florian Westphal) [1936368] - mptcp: drop unused skb in subflow_token_join_request (Florian Westphal) [1936368] - mptcp: create the listening socket for new port (Florian Westphal) [1936368] - mptcp: create subflow or signal addr for newly added address (Florian Westphal) [1936368] - mptcp: drop *_max fields in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: use WRITE_ONCE for the pernet *_max (Florian Westphal) [1936368] - mptcp: pm nl: reduce variable scope (Florian Westphal) [1936368] - mptcp: pm nl: support IPv4 mapped in v6 addresses (Florian Westphal) [1936368] - mptcp: support MPJoin with IPv4 mapped in v6 sk (Florian Westphal) [1936368] - mptcp: use sha256() instead of open coding (Florian Westphal) [1936368] - crypto: lib/sha256 - add sha256() function (Florian Westphal) [1936368] - mptcp: use SHA256_BLOCK_SIZE, not SHA_MESSAGE_BYTES (Florian Westphal) [1936368] - xprtrdma: Pad optimization, revisited (Steve Dickson) [1926957] - ibmvnic: remove set but not used variable 'netdev' (Diego Domingos) [1922193] - net/ibmvnic: Remove tests of member address (Diego Domingos) [1922193] - ibmvnic: remove duplicate napi_schedule call in do_reset function (Diego Domingos) [1922193] - ibmvnic: avoid calling napi_disable() twice (Diego Domingos) [1922193] - ibmvnic: queue reset work in system_long_wq (Diego Domingos) [1922193] - ibmvnic: correctly use dev_consume/free_skb_irq (Diego Domingos) [1922193] - ibmvnic: improve failover sysfs entry (Diego Domingos) [1922193] - ibmvnic: print adapter state as a string (Diego Domingos) [1922193] - ibmvnic: print reset reason as a string (Diego Domingos) [1922193] - ibmvnic: clean up the remaining debugfs data structures (Diego Domingos) [1922193] - ibmvnic: Use 'skb_frag_address()' instead of hand coding it (Diego Domingos) [1922193] - ibmvnic: remove excessive irqsave (Diego Domingos) [1922193] - ibmvnic: always store valid MAC address (Diego Domingos) [1922193] - ibmvnic: Fix possibly uninitialized old_num_tx_queues variable warning. (Diego Domingos) [1922193] - vio: make remove callback return void (Diego Domingos) [1922193] - tty: hvcs: Drop unnecessary if block (Diego Domingos) [1922193] - ibmvnic: serialize access to work queue on remove (Diego Domingos) [1922193] - ibmvnic: skip send_request_unmap for timeout reset (Diego Domingos) [1922193] - ibmvnic: add memory barrier to protect long term buffer (Diego Domingos) [1922193] - ibmvnic: substitute mb() with dma_wmb() for send_*crq* functions (Diego Domingos) [1922193] - ibmvnic: prefer strscpy over strlcpy (Diego Domingos) [1922193] - ibmvnic: remove unused spinlock_t stats_lock definition (Diego Domingos) [1922193] - ibmvnic: add comments for spinlock_t definitions (Diego Domingos) [1922193] - ibmvnic: fix miscellaneous checks (Diego Domingos) [1922193] - ibmvnic: avoid multiple line dereference (Diego Domingos) [1922193] - ibmvnic: fix braces (Diego Domingos) [1922193] - ibmvnic: fix block comments (Diego Domingos) [1922193] - ibmvnic: prefer 'unsigned long' over 'unsigned long int' (Diego Domingos) [1922193] - ibmvnic: remove unnecessary rmb() inside ibmvnic_poll (Diego Domingos) [1922193] - ibmvnic: rework to ensure SCRQ entry reads are properly ordered (Diego Domingos) [1922193] - ibmvnic: Ensure that CRQ entry read are correctly ordered (Diego Domingos) [1922193] - net: ethernet: ibm: ibmvnic: Fix some kernel-doc misdemeanours (Diego Domingos) [1922193] - powerpc/hmi: Fix kernel hang when TB is in error state. (Gustavo Walbon) [1924091] - powerpc/eeh: Fix EEH handling for hugepages in ioremap space. (Gustavo Walbon) [1924090] - powerpc/pseries: Only register vio drivers if vio bus exists (Gustavo Walbon) [1924090] - powerpc/pci: Remove unimplemented prototypes (Gustavo Walbon) [1924090] - powerpc/powernv/pci: Use kzalloc() for phb related allocations (Gustavo Walbon) [1924090] - powerpc/pasemi: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/mve5100: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/mpc7448: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/linkstation: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/holly: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/chrp: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/amigaone: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/83xx: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/82xx/*: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/mpc5200_simple: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/media5200: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/lite5200: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/efika: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/512x: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/pci: Move PHB discovery for PCI_DN using platforms (Gustavo Walbon) [1924090] - powerpc/maple: Fix declaration made after definition (Gustavo Walbon) [1924090] - powerpc/pci: Add ppc_md.discover_phbs() (Gustavo Walbon) [1924090] - powerpc/pci: Delete traverse_pci_dn() (Gustavo Walbon) [1924090] - powerpc/eeh: Rework pci_dev lookup in debugfs attributes (Gustavo Walbon) [1924090] - selftests/powerpc: Add VF recovery tests (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Make pseries_send_allow_unfreeze() static (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Make pseries_pcibios_bus_add_device() static (Gustavo Walbon) [1924090] - selftests/powerpc: Make the test check in eeh-basic.sh posix compliant (Gustavo Walbon) [1924090] - powernv/pci: Print an error when device enable is blocked (Gustavo Walbon) [1924090] - selftests/powerpc/eeh: disable kselftest timeout setting for eeh-basic (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Fix a possible debugfs deadlock (Gustavo Walbon) [1924090] - powerpc/eeh: Fix eeh_dev_check_failure() for PE#0 (Gustavo Walbon) [1924090] - selftests/powerpc: Fix eeh-basic.sh exit codes (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Fix use of uninitialised variable (Gustavo Walbon) [1924090] - powerpc/eeh: Delete eeh_pe->config_addr (Gustavo Walbon) [1924090] - powerpc/eeh: Clean up PE addressing (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Allow zero to be a valid PE configuration address (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Rework device EEH PE determination (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Clean up pe_config_addr lookups (Gustavo Walbon) [1924090] - powerpc/eeh: Move EEH initialisation to an arch initcall (Gustavo Walbon) [1924090] - powerpc/eeh: Delete eeh_ops->init (Gustavo Walbon) [1924090] - powerpc/pseries: Stop using eeh_ops->init() (Gustavo Walbon) [1924090] - powerpc/powernv: Stop using eeh_ops->init() (Gustavo Walbon) [1924090] - powerpc/eeh: Rework EEH initialisation (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Fix dumb linebreaks (Gustavo Walbon) [1924090] - selftests/powerpc: Squash spurious errors due to device removal (Gustavo Walbon) [1924090] - powerpc/eeh: Move PE tree setup into the platform (Gustavo Walbon) [1924090] - powerpc/eeh: Drop pdn use in eeh_pe_tree_insert() (Gustavo Walbon) [1924090] - powerpc/eeh: Rename eeh_{add_to|remove_from}_parent_pe() (Gustavo Walbon) [1924090] - powerpc/eeh: Remove class code field from edev (Gustavo Walbon) [1924090] - powerpc/eeh: Remove spurious use of pci_dn in eeh_dump_dev_log (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->{read|write}_config() (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->resume_notify() (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->restore_config() (Gustavo Walbon) [1924090] - powerpc/eeh: Remove VF config space restoration (Gustavo Walbon) [1924090] - powerpc/eeh: Kill off eeh_ops->get_pe_addr() (Gustavo Walbon) [1924090] - powerpc/pseries: Stop using pdn->pe_number (Gustavo Walbon) [1924090] - powerpc/eeh: Move vf_index out of pci_dn and into eeh_dev (Gustavo Walbon) [1924090] - powerpc/eeh: Remove eeh_dev.c (Gustavo Walbon) [1924090] - powerpc/eeh: Remove eeh_dev_phb_init_dynamic() (Gustavo Walbon) [1924090] - powerpc/powernv: Make pnv_pci_sriov_enable() and friends static (Gustavo Walbon) [1924090] - powerpc/pseries: Make vio and ibmebus initcalls pseries specific (Gustavo Walbon) [1924090] - powerpc/eeh: Release EEH device state synchronously (Gustavo Walbon) [1924090] - powerpc/eeh: Rework eeh_ops->probe() (Gustavo Walbon) [1924090] - powerpc/eeh: Make early EEH init pseries specific (Gustavo Walbon) [1924090] - powerpc/eeh: Remove PHB check in probe (Gustavo Walbon) [1924090] - powerpc/eeh: Do early EEH init only when required (Gustavo Walbon) [1924090] - powerpc/eeh: Only dump stack once if an MMIO loop is detected (Gustavo Walbon) [1924090] - powernv/pci: Add a debugfs entry to dump PHB's IODA PE state (Gustavo Walbon) [1924090] - powernv/pci: Allow any write trigger the diag dump (Gustavo Walbon) [1924090] - powernv/pci: Use pnv_phb as the private data for debugfs entries (Gustavo Walbon) [1924090] - powerpc/powernv/npu: Fix debugfs_simple_attr.cocci warnings (Gustavo Walbon) [1924090] - powerpc/pcidn: Warn when sriov pci_dn management is used incorrectly (Gustavo Walbon) [1924090] - powerpc/pcidn: Make VF pci_dn management CONFIG_PCI_IOV specific (Gustavo Walbon) [1924090] - powerpc/sriov: Remove VF eeh_dev state when disabling SR-IOV (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: Make clearing EEH_DEV_SYSFS saner (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: Remove double pci_dn lookup. (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: ifdef pseries sr-iov sysfs properties (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Don't use pci_dn when inserting new ranges (Gustavo Walbon) [1924090] - powerpc/eeh: differentiate duplicate detection message (Gustavo Walbon) [1924090] - powerpc/eeh: Handle hugepages in ioremap space (Gustavo Walbon) [1924090] - powerpc/powernv-eeh: Consisely desribe what this file does (Gustavo Walbon) [1924090] - powerpc/eeh_cache: fix a W=1 kernel-doc warning (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Add a way to dump the EEH address cache (Gustavo Walbon) [1924090] - powerpc/powernv: Escalate reset when IODA reset fails (Gustavo Walbon) [1924090] - powerpc/powernv/eeh/npu: Fix uninitialized variables in opal_pci_eeh_freeze_status (Gustavo Walbon) [1924090] - powerpc: eeh_event: convert semaphore to completion (Gustavo Walbon) [1924090] - powerpc/eeh: Declare pci_ers_result_name() as static (Gustavo Walbon) [1924090] - Bluetooth: verify AMP hci_chan before amp_destroy (Gopal Tiwari) [1962546] {CVE-2021-33034} - NFSv4.2 fix handling of sr_eof in SEEK's reply (Steve Dickson) [1948015] - SUNRPC: Fix null pointer dereference in svc_rqst_free() (Benjamin Coddington) [1952008] - NFSv4: Use sequence counter with associated spinlock (Benjamin Coddington) [1952008] - NFSv4.2: fix return value of _nfs4_get_security_label() (Benjamin Coddington) [1952008] - NFSD: fix error handling in NFSv4.0 callbacks (Benjamin Coddington) [1952008] - NFS: Don't gratuitously clear the inode cache when lookup failed (Benjamin Coddington) [1952008] - NFS: Don't revalidate the directory permissions on a lookup failure (Benjamin Coddington) [1952008] - nfsd: register pernet ops last, unregister first (Benjamin Coddington) [1952008] - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Benjamin Coddington) [1952008] - lockd: fix access beyond unterminated strings in prints (Benjamin Coddington) [1952008] - tty: Protect disc_data in n_tty_close and n_tty_flush_buffer (Rafael Aquini) [1879861] - hwmon: (amd_energy) Add AMD family 19h model 30h x86 match (Terry Bowman) [1949280]- redhat/configs: Re-enable dptf_power module (Prarit Bhargava) [1962349] - net/sched: act_ct: Offload connections with commit action (Marcelo Ricardo Leitner) [1965817] - netfilter: flowtable: Remove redundant hw refresh bit (Marcelo Ricardo Leitner) [1965817] - inet_diag: add support for tw_mark (Xin Long) [1972967] - mm: thp: fix MADV_REMOVE deadlock on shmem THP (Waiman Long) [1974659] {CVE-2020-29368} - mm: thp: make the THP mapcount atomic against __split_huge_pmd_locked() (Waiman Long) [1974659] {CVE-2020-29368} - mmap locking API: add mmap_lock_is_contended() (Waiman Long) [1970177] - mm: madvise: fix vma user-after-free (Waiman Long) [1970177] - khugepaged: collapse_pte_mapped_thp() protect the pmd lock (Waiman Long) [1970177] - khugepaged: collapse_pte_mapped_thp() flush the right range (Waiman Long) [1970177] - mm/mmap.c: close race between munmap() and expand_upwards()/downwards() (Waiman Long) [1970177] - mm: document warning in move_normal_pmd() and make it warn only once (Waiman Long) [1970177] - mmap locking API: convert mmap_sem comments (Waiman Long) [1970177] - mmap locking API: convert mmap_sem API comments (Waiman Long) [1970177] - mmap locking API: rename mmap_sem to mmap_lock (Waiman Long) [1970177] - mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked() (Waiman Long) [1970177] - mmap locking API: add MMAP_LOCK_INITIALIZER (Waiman Long) [1970177] - mmap locking API: convert nested write lock sites (Waiman Long) [1970177] - mmap locking API: convert mmap_sem call sites missed by coccinelle (Waiman Long) [1970177] - mmap locking API: use coccinelle to convert mmap_sem rwsem call sites (Waiman Long) [1970177] - MMU notifier: use the new mmap locking API (Waiman Long) [1970177] - mm/gup.c: further document vma_permits_fault() (Waiman Long) [1970177] - mm/gup.c: update the documentation (Waiman Long) [1970177] - mm/ksm: fix NULL pointer dereference when KSM zero page is enabled (Waiman Long) [1970177] - proc: inline vma_stop into m_stop (Waiman Long) [1970177] - mm: remove CONFIG_TRANSPARENT_HUGE_PAGECACHE (Waiman Long) [1970177] - fs/io_uring: set FOLL_PIN via pin_user_pages() (Waiman Long) [1970177] - shmem: pin the file in shmem_fault() if mmap_sem is dropped (Waiman Long) [1970177] - mm/gup.c: fix comments of __get_user_pages() and get_user_pages_remote() (Waiman Long) [1970177] - mm/init-mm.c: include for vm_committed_as_batch (Waiman Long) [1970177] - lib/generic-radix-tree.c: add kmemleak annotations (Waiman Long) [1970177] - mm: Remove BUG_ON mmap_sem not held from xxx_trans_huge_lock() (Waiman Long) [1970177] - lib/generic-radix-tree.c: make 2 functions static inline (Waiman Long) [1970177] - x86/mm: Clean up the pmd_read_atomic() comments (Waiman Long) [1970177] - x86/mm: Fix function name typo in pmd_read_atomic() comment (Waiman Long) [1970177] - khugepaged: enable collapse pmd for pte-mapped THP (Waiman Long) [1970177] - mm: Handle MADV_WILLNEED through vfs_fadvise() (Waiman Long) [1970177] - pagewalk: use lockdep_assert_held for locking validation (Waiman Long) [1970177] - mm: use down_read_killable for locking mmap_sem in access_remote_vm (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/map_files (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/clear_refs (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/pagemap (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/smaps_rollup (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/maps (Waiman Long) [1970177] - mm/filemap.c: correct the comment about VM_FAULT_RETRY (Waiman Long) [1970177] - mm: mmu_gather: remove __tlb_reset_range() for force flush (Waiman Long) [1970177] - arm64/mm: Drop mmap_sem before calling __do_kernel_fault() (Waiman Long) [1970177] - docs/vm: Minor editorial changes in the THP and hugetlbfs (Waiman Long) [1970177] - x86/mpx, mm/core: Fix recursive munmap() corruption (Waiman Long) [1970177] - doc: mm: migration doesn't use FOLL_SPLIT anymore (Waiman Long) [1970177] - filemap: add a comment about FAULT_FLAG_RETRY_NOWAIT behavior (Waiman Long) [1970177] - proc: commit to genradix (Waiman Long) [1970177] - generic radix trees (Waiman Long) [1970177] - mm: swap: add comment for swap_vma_readahead (Waiman Long) [1970177] - x86/mm: Make set_pmd_at() paravirt aware (Waiman Long) [1970177] - mm: select HAVE_MOVE_PMD on x86 for faster mremap (Waiman Long) [1970177] - mm: speed up mremap by 20x on large regions (Waiman Long) [1970177] - mm/mmap.c: remove verify_mm_writelocked() (Waiman Long) [1970177] - x86/fault: Check user_mode(regs) when avoiding an mmap_sem deadlock (Waiman Long) [1970177] - mm: brk: downgrade mmap_sem to read when shrinking (Waiman Long) [1970177] - mm: mremap: downgrade mmap_sem to read when shrinking (Waiman Long) [1970177] - mm: unmap VM_PFNMAP mappings with optimized path (Waiman Long) [1970177] - mm: unmap VM_HUGETLB mappings with optimized path (Waiman Long) [1970177] - mm: mmap: zap pages with read mmap_sem in munmap (Waiman Long) [1970177] - x86/mm: Fix exception table comments (Waiman Long) [1970177] - ACPI: x86: Call acpi_boot_table_init() after acpi_table_upgrade() (Mark Langsdorf) [1946282] - acpi/drivers/thermal: Remove TRIPS_NONE cooling device binding (Mark Langsdorf) [1946282] - thermal/drivers/acpi: Use hot and critical ops (Mark Langsdorf) [1946282] - thermal/core: Add critical and hot ops (Mark Langsdorf) [1946282] - thermal/core: Emit a warning if the thermal zone is updated without ops (Mark Langsdorf) [1946282] - ACPI: scan: Fix _STA getting called on devices with unmet dependencies (Mark Langsdorf) [1946282] - ACPI: tables: x86: Reserve memory occupied by ACPI tables (Mark Langsdorf) [1946282] - ACPICA: Always create namespace nodes using acpi_ns_create_node() (Mark Langsdorf) [1946282] - ACPI: platform: Add balanced-performance platform profile (Mark Langsdorf) [1946282] - ACPI: platform: Hide ACPI_PLATFORM_PROFILE option (Mark Langsdorf) [1946282] - ACPICA: Remove some code duplication from acpi_ev_address_space_dispatch (Mark Langsdorf) [1946282] - ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling (Mark Langsdorf) [1946282] - ACPI: property: Satisfy kernel doc validator (part 2) (Mark Langsdorf) [1946282] - ACPI: property: Satisfy kernel doc validator (part 1) (Mark Langsdorf) [1946282] - ACPI: property: Make acpi_node_prop_read() static (Mark Langsdorf) [1946282] - ACPI: property: Remove dead code (Mark Langsdorf) [1946282] - iommu/amd: Fix performance counter initialization (Mark Langsdorf) [1946282] - ACPI: property: Fix fwnode string properties matching (Mark Langsdorf) [1946282] - ACPI / NUMA: add a stub function for node_to_pxm() (Mark Langsdorf) [1946282] - ACPI: OSL: Rework acpi_check_resource_conflict() (Mark Langsdorf) [1946282] - ACPI: APEI: ERST: remove unneeded semicolon (Mark Langsdorf) [1946282] - iommu/vt-d: Add new enum value and structure for SATC (Mark Langsdorf) [1946282] - ACPI: Add support for native USB4 control _OSC (Mark Langsdorf) [1946282] - ACPI: Execute platform _OSC also with query bit clear (Mark Langsdorf) [1946282] - redhat/configs: Add CONFIG_ACPI_FPDT (Mark Langsdorf) [1946282] - ACPI: tables: introduce support for FPDT table (Mark Langsdorf) [1946282] - ACPI: APEI: Add is_generic_error() to identify GHES sources (Mark Langsdorf) [1946282] - ACPI: platform-profile: Fix possible deadlock in platform_profile_remove() (Mark Langsdorf) [1946282] - ACPI: platform-profile: Introduce object pointers to callbacks (Mark Langsdorf) [1946282] - PCI/ACPI: Clarify message about _OSC failure (Mark Langsdorf) [1946282] - PCI/ACPI: Remove unnecessary osc_lock (Mark Langsdorf) [1946282] - PCI/ACPI: Make acpi_pci_osc_control_set() static (Mark Langsdorf) [1946282] - media: ACPI / bus: Add acpi_dev_get_next_match_dev() and helper macro (Mark Langsdorf) [1946282] - ACPI: scan: Adjust white space in acpi_device_add() (Mark Langsdorf) [1946282] - ACPI: scan: Rearrange memory allocation in acpi_device_add() (Mark Langsdorf) [1946282] - ACPI: platform-profile: Drop const qualifier for cur_profile (Mark Langsdorf) [1946282] - ACPI: configfs: add missing check after configfs_register_default_group() (Mark Langsdorf) [1946282] - ACPI: CPPC: initialise vaddr pointers to NULL (Mark Langsdorf) [1946282] - ACPI: CPPC: add __iomem annotation to generic_comm_base pointer (Mark Langsdorf) [1946282] - ACPI: CPPC: remove __iomem annotation for cpc_reg's address (Mark Langsdorf) [1946282] - ACPI: Use DEVICE_ATTR_ macros (Mark Langsdorf) [1946282] - ACPICA: Update version to 20210105 (Mark Langsdorf) [1946282] - ACPICA: Updated all copyrights to 2021 (Mark Langsdorf) [1946282] - ACPICA: Remove the VRTC table (Mark Langsdorf) [1946282] - ACPICA: Remove the MTMR (Mid-Timer) table (Mark Langsdorf) [1946282] - ACPICA: Update version to 20201217 (Mark Langsdorf) [1946282] - ACPICA: add type casts for string functions (Mark Langsdorf) [1946282] - ACPICA: fix -Wfallthrough (Mark Langsdorf) [1946282] - ACPICA: Clean up exception code class checks (Mark Langsdorf) [1946282] - ACPICA: Fix exception code class checks (Mark Langsdorf) [1946282] - redhat/configs: Add CONFIG_ACPI_PLATFORM_PROFILE (Mark Langsdorf) [1946282] - ACPI: platform: Add platform profile support (Mark Langsdorf) [1946282] - NTB/msi: Use irq_has_action() (Myron Stowe) [1933153] - NTB: Use struct_size() helper in devm_kzalloc() (Myron Stowe) [1933153] - ntb: intel: Fix memleak in intel_ntb_pci_probe (Myron Stowe) [1933153] - NTB: hw: amd: fix an issue about leak system resources (Myron Stowe) [1933153] - ntb: hw: remove the code that sets the DMA mask (Myron Stowe) [1933153] - [s390] s390/qdio: remove 'merge_pending' mechanism (Claudio Imbrenda) [1919251] - [s390] s390/qdio: improve handling of PENDING buffers for QEBSM devices (Claudio Imbrenda) [1919251] - [s390] s390/qdio: rework q->qdio_error indication (Claudio Imbrenda) [1919251] - [s390] s390/qdio: inline qdio_kick_handler() (Claudio Imbrenda) [1919251] - [s390] s390/qdio: track time of last data IRQ for each device (Claudio Imbrenda) [1919251] - [s390] s390/qdio: make thinint registration symmetric (Claudio Imbrenda) [1919251] - [s390] s390/qdio: adopt new tasklet API (Claudio Imbrenda) [1919251] - [s390] s390/qdio: remove qdio_inbound_q_moved() wrapper (Claudio Imbrenda) [1919251] - [s390] s390/qdio: remove Input tasklet code (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Do not set COMMAND_COMPLETE (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Handle event-lost notification for Version Change events (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Process Version Change events (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Clarify & assert the stat_lock locking in zfcp_qdio_send() (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Remove orphaned function declarations (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Lift Input Queue tasklet from qdio (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Clarify access to erp_action in zfcp_fsf_req_complete() (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Use list_first_entry_or_null() in zfcp_erp_thread() (Claudio Imbrenda) [1919251] - [s390] s390/qdio: always use dev_name() for device name in QIB (Claudio Imbrenda) [1919251] - [s390] s390/qdio: clean up QDR setup (Claudio Imbrenda) [1919251] - [s390] s390/qdio: make qdio_handle_aobs() more robust (Claudio Imbrenda) [1919251] - [s390] s390/cpumf: disable preemption when accessing per-cpu variable (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: rename header file to hwctrset.h (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: remove 60 seconds read limit (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: Add support for complete counter set extraction (Claudio Imbrenda) [1925527]- KVM: X86: hyper-v: Task srcu lock when accessing kvm_memslots() (Vitaly Kuznetsov) [1904570] - KVM: nSVM: remove a warning about vmcb01 VM exit reason (Vitaly Kuznetsov) [1904570] - KVM: x86: Consolidate guest enter/exit logic to common helpers (Vitaly Kuznetsov) [1904570] - KVM: x86: Defer vtime accounting 'til after IRQ handling (Vitaly Kuznetsov) [1904570] - context_tracking: Move guest exit vtime accounting to separate helpers (Vitaly Kuznetsov) [1904570] - context_tracking: Move guest exit context tracking to separate helpers (Vitaly Kuznetsov) [1904570] - context_tracking: Make guest_enter/exit() .noinstr ready (Vitaly Kuznetsov) [1904570] - sched/cputime: Rename vtime_account_system() to vtime_account_kernel() (Vitaly Kuznetsov) [1904570] - x86/kvm/svm: Move guest enter/exit into .noinstr.text (Vitaly Kuznetsov) [1904570] - x86/kvm/vmx: Move guest enter/exit into .noinstr.text (Vitaly Kuznetsov) [1904570] - x86/kvm/svm: Add hardirq tracing on guest enter/exit (Vitaly Kuznetsov) [1904570] - x86/kvm/vmx: Add hardirq tracing to guest enter/exit (Vitaly Kuznetsov) [1904570] - x86/kvm: Move context tracking where it belongs (Vitaly Kuznetsov) [1904570] - Move some more variables to kernel job templates (Michael Hofmann) - Use a different branch name for realtime pipelines (Michael Hofmann) - block: mark queue init done at the end of blk_register_queue (Ming Lei) [1963766] - block: fix race between adding/removing rq qos and normal IO (Ming Lei) [1963766] - netfilter: x_tables: Use correct memory barriers. (Phil Sutter) [1949090] - Revert "netfilter: x_tables: Switch synchronization to RCU" (Phil Sutter) [1949090] - vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU (Gustavo Walbon) [1891589] - powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU (Gustavo Walbon) [1891589] - cpupower: Add cpuid cap flag for MSR_AMD_HWCR support (Steve Best) [1949161] - cpupower: Remove family arg to decode_pstates() (Steve Best) [1949161] - cpupower: Condense pstate enabled bit checks in decode_pstates() (Steve Best) [1949161] - cpupower: Update family checks when decoding HW pstates (Steve Best) [1949161] - cpupower: Remove unused pscur variable. (Steve Best) [1949161] - cpupower: Add CPUPOWER_CAP_AMD_HW_PSTATE cpuid caps flag (Steve Best) [1949161] - cpupower: Correct macro name for CPB caps flag (Steve Best) [1949161] - cpupower: Update msr_pstate union struct naming (Steve Best) [1949161] - cpupower: add Makefile dependencies for install targets (Steve Best) [1949161] - tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1949161] - tools: Avoid comma separated statements (Steve Best) [1949161] - cpupower: speed up generating git version string (Steve Best) [1949161] - cpupowerutils: fix spelling mistake "dependant" -> "dependent" (Steve Best) [1949161] - ext4: fix ext4_error_err save negative errno into superblock (Lukas Czerner) [1964928] - ext4: do not set SB_ACTIVE in ext4_orphan_cleanup() (Lukas Czerner) [1964928] - ext4: fix check to prevent false positive report of incorrect used inodes (Lukas Czerner) [1964928] - ext4: fix potential error in ext4_do_update_inode (Lukas Czerner) [1964928] - ext4: do not try to set xattr into ea_inode if value is empty (Lukas Czerner) [1964928] - ext4: fix potential htree index checksum corruption (Lukas Czerner) [1964928] - ext4: don't leak old mountpoint samples (Lukas Czerner) [1964928] - ext4: don't remount read-only with errors=continue on reboot (Lukas Czerner) [1964928] - ext4: fix deadlock with fs freezing and EA inodes (Lukas Czerner) [1964928] - ext4: fix a memory leak of ext4_free_data (Lukas Czerner) [1964928] - ext4: find old entry again if failed to rename whiteout (Lukas Czerner) [1945503] - ext4: fix bug for rename with RENAME_WHITEOUT (Lukas Czerner) [1945503] - mount: fix mounting of detached mounts onto targets that reside on shared mounts (Carlos Maiolino) [1959172] - fs: fix lazytime expiration handling in __writeback_single_inode() (Carlos Maiolino) [1936260] - tty: Don't hold ldisc lock in tty_reopen() if ldisc present (Waiman Long) [1968271] - tty/ldsem: Add lockdep asserts for ldisc_sem (Waiman Long) [1968271] - tty: Simplify tty->count math in tty_reopen() (Waiman Long) [1968271] - tty: Don't block on IO when ldisc change is pending (Waiman Long) [1968271] - tty: Hold tty_ldisc_lock() during tty_reopen() (Waiman Long) [1968271] - tty: Drop tty->count on tty_reopen() failure (Waiman Long) [1968271] - net: udp: Add support for getsockopt(..., ..., UDP_GRO, ..., ...); (Xin Long) [1951679] - net: Fix gro aggregation for udp encaps with zero csum (Xin Long) [1951679] - udp: ipv4: manipulate network header of NATed UDP GRO fraglist (Xin Long) [1951679] - udp: not remove the CRC flag from dev features when need_csum is false (Xin Long) [1951679] - udp: mask TOS bits in udp_v4_early_demux() (Xin Long) [1951679] - net: fix use-after-free when UDP GRO with shared fraglist (Xin Long) [1951679] - x86, sched: Treat Intel SNC topology as default, COD as exception (David Arcari) [1920040] - dmaengine: idxd: iax bus removal (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix cdev setup and free device lifetime issues (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix group conf_dev lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix engine conf_dev lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix wq conf_dev 'struct device' lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix idxd conf_dev 'struct device' lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: use ida for device instance enumeration (Jerry Snitselaar) [1955744] - dmaengine: idxd: removal of pcim managed mmio mapping (Jerry Snitselaar) [1955744] - dmaengine: idxd: cleanup pci interrupt vector allocation management (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix dma device lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: Fix potential null dereference on pointer status (Jerry Snitselaar) [1927070] - dmaengine: idxd: fix wq cleanup of WQCFG registers (Jerry Snitselaar) [1955744] - dmaengine: idxd: clear MSIX permission entry on shutdown (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix wq size store permission state (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix opcap sysfs attribute output (Jerry Snitselaar) [1955744] - dmaengine: idxd: Fix clobbering of SWERR overflow bit on writeback (Jerry Snitselaar) [1955744] - dmaengine: idxd: add module parameter to force disable of SVA (Jerry Snitselaar) [1920734] - dmaengine: idxd: set DMA channel to be private (Jerry Snitselaar) [1920759] - dma: idxd: use DEFINE_MUTEX() for mutex lock (Jerry Snitselaar) [1955744] - dmaengine: idxd: check device state before issue command (Jerry Snitselaar) [1927070] - dmaengine: move channel device_node deletion to driver (Jerry Snitselaar) [1920721] - dmaengine: idxd: fix misc interrupt completion (Jerry Snitselaar) [1920757] - dmaengine: idxd: Fix list corruption in description completion (Jerry Snitselaar) [1920746] - dmaengine: idxd: add IAX configuration support in the IDXD driver (Jerry Snitselaar) [1837233] - dmaengine: idxd: add ATS disable knob for work queues (Jerry Snitselaar) [1921291] - dmaengine: idxd: define table offset multiplier (Jerry Snitselaar) [1921290] - dmaengine: idxd: Update calculation of group offset to be more readable (Jerry Snitselaar) [1955744]- redhat/config: Double MAX_LOCKDEP_ENTRIES (Waiman Long) [1945937] - dm writecache: flush origin device when writing and cache is full (Mike Snitzer) [1970513] - dm snapshot: properly fix a crash when an origin has no snapshots (Mike Snitzer) [1970513] - dm verity: fix require_signatures module_param permissions (Mike Snitzer) [1970513] - dm snapshot: fix crash with transient storage and zero chunk size (Mike Snitzer) [1970513] - dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails (Mike Snitzer) [1970513] - dm integrity: increase RECALC_SECTORS to improve recalculate speed (Mike Snitzer) [1970513] - dm integrity: don't re-write metadata if discarding same blocks (Mike Snitzer) [1970513] - dm raid: fix inconclusive reshape layout on fast raid4/5/6 table reload sequences (Mike Snitzer) [1970513] - dm raid: fix fall-through warning in rs_check_takeover() for Clang (Mike Snitzer) [1970513] - dm integrity: fix missing goto in bitmap_flush_interval error handling (Mike Snitzer) [1970513] - dm space map common: fix division bug in sm_ll_find_free_block() (Mike Snitzer) [1970513] - dm persistent data: packed struct should have an aligned() attribute too (Mike Snitzer) [1970513] - dm btree spine: remove paranoid node_check call in node_prep_for_write() (Mike Snitzer) [1970513] - dm space map disk: remove redundant calls to sm_disk_get_nr_free() (Mike Snitzer) [1970513] - dm persistent data: remove unused return from exit_shadow_spine() (Mike Snitzer) [1970513] - dm verity: allow only one error handling mode (Mike Snitzer) [1970513] - dm: remove useless loop in __split_and_process_bio (Mike Snitzer) [1970513] - redhat/configs: Update CONFIG_PINCTRL_AMD (David Arcari) [1964588] - ionic: fix ptp support config breakage (Jonathan Toppins) [1951826] - ionic: return -EFAULT if copy_to_user() fails (Jonathan Toppins) [1951826] - ionic: git_ts_info bit shifters (Jonathan Toppins) [1951826] - ionic: extend ts_config set locking (Jonathan Toppins) [1951826] - ionic: add ts_config replay (Jonathan Toppins) [1951826] - ionic: ignore EBUSY on queue start (Jonathan Toppins) [1951826] - ionic: re-start ptp after queues up (Jonathan Toppins) [1951826] - ionic: add SKBTX_IN_PROGRESS (Jonathan Toppins) [1951826] - ionic: check for valid tx_mode on SKBTX_HW_TSTAMP xmit (Jonathan Toppins) [1951826] - ionic: remove unnecessary compat ifdef (Jonathan Toppins) [1951826] - ionic: fix up a couple of code style nits (Jonathan Toppins) [1951826] - ionic: advertise support for hardware timestamps (Jonathan Toppins) [1951826] - ionic: ethtool ptp stats (Jonathan Toppins) [1951826] - ionic: add ethtool support for PTP (Jonathan Toppins) [1951826] - ionic: add and enable tx and rx timestamp handling (Jonathan Toppins) [1951826] - ethtool: add timestamping related string sets (Jonathan Toppins) [1951826] - net: Introduce peer to peer one step PTP time stamping. (Jonathan Toppins) [1951826] - ionic: set up hw timestamp queues (Jonathan Toppins) [1951826] - ionic: add rx filtering for hw timestamp steering (Jonathan Toppins) [1951826] - ionic: link in the new hw timestamp code (Jonathan Toppins) [1951826] - ionic: add hw timestamp support files (Jonathan Toppins) [1951826] - ionic: split adminq post and wait calls (Jonathan Toppins) [1951826] - ionic: add hw timestamp structs to interface (Jonathan Toppins) [1951826] - ionic: add handling of larger descriptors (Jonathan Toppins) [1951826] - ionic: add new queue features to interface (Jonathan Toppins) [1951826] - ionic: pull per-q stats work out of queue loops (Jonathan Toppins) [1951826] - ionic: avoid races in ionic_heartbeat_check (Jonathan Toppins) [1951826] - ionic: fix sizeof usage (Jonathan Toppins) [1951826] - ionic: count dma errors (Jonathan Toppins) [1951826] - ionic: protect adminq from early destroy (Jonathan Toppins) [1951826] - ionic: stop watchdog when in broken state (Jonathan Toppins) [1951826] - ionic: block actions during fw reset (Jonathan Toppins) [1951826] - ionic: update ethtool support bits for BASET (Jonathan Toppins) [1951826] - ionic: fix unchecked reference (Jonathan Toppins) [1951826] - ionic: simplify the intr_index use in txq_init (Jonathan Toppins) [1951826] - ionic: code cleanup details (Jonathan Toppins) [1951826] - ionic: Update driver to use ethtool_sprintf (Jonathan Toppins) [1951826] - ionic: aggregate Tx byte counting calls (Jonathan Toppins) [1951826] - ionic: simplify tx clean (Jonathan Toppins) [1951826] - ionic: generic tx skb mapping (Jonathan Toppins) [1951826] - ionic: simplify TSO descriptor mapping (Jonathan Toppins) [1951826] - ionic: simplify use of completion types (Jonathan Toppins) [1951826] - ionic: rebuild debugfs on qcq swap (Jonathan Toppins) [1951826] - ionic: simplify rx skb alloc (Jonathan Toppins) [1951826] - ionic: optimize fastpath struct usage (Jonathan Toppins) [1951826] - ionic: implement Rx page reuse (Jonathan Toppins) [1951826] - ionic: move rx_page_alloc and free (Jonathan Toppins) [1951826] - drivers: net: ionic: simplify the return expression of ionic_set_rxfh() (Jonathan Toppins) [1951826] - ionic: change mtu after queues are stopped (Jonathan Toppins) [1951826] - ionic: remove some unnecessary oom messages (Jonathan Toppins) [1951826] - ionic: useful names for booleans (Jonathan Toppins) [1951826] - ionic: change set_rx_mode from_ndo to can_sleep (Jonathan Toppins) [1951826] - ionic: flatten calls to ionic_lif_rx_mode (Jonathan Toppins) [1951826] - ionic: batch rx buffer refilling (Jonathan Toppins) [1951826] - ionic: add lif quiesce (Jonathan Toppins) [1951826] - ionic: check for link after netdev registration (Jonathan Toppins) [1951826] - ionic: check port ptr before use (Jonathan Toppins) [1951826] - platform/x86: hp-wireless: add AMD's hardware id to the supported list (David Arcari) [1960472] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (David Arcari) [1960472] - net/bond: revert deletion of driver and module versions (Jarod Wilson) [1955702] - net:sfc: fix non-freed irq in legacy irq mode (Íñigo Huguet) [1906728] - devlink: Extend SF port attributes to have external attribute (Petr Oros) [1959002] - netfilter: xt_SECMARK: add new revision to fix structure layout (Phil Sutter) [1961714] - xfrm: ipcomp: remove unnecessary get_cpu() (Sabrina Dubroca) [1946885] - platform/x86: intel_pmc_core: Add support for Alder Lake PCH-P (David Arcari) [1838624] - scsi: qedf: Update the max_id value in host structure (Nilesh Javali) [1954876] - scsi: qedf: Add pointer checks in qedf_update_link_speed() (Nilesh Javali) [1871687] - [s390] s390/nvme: support firmware-assisted dump to NVMe disks (Claudio Imbrenda) [1847447] - [s390] s390: nvme dump support (Claudio Imbrenda) [1847447] - [s390] s390/boot: add build-id to decompressor (Philipp Rudo) [1897093] - genirq: Reduce irqdebug cacheline bouncing (Gustavo Walbon) [1957729]- CI: Merge MR, baseline and private configs (Michael Hofmann) - RDMA/rxe: Fix failure during driver load (Kamal Heib) [1930263] - xfrm: remove the fragment check for ipv6 beet mode (Xin Long) [1965185] - SUNRPC: Fix NFS READs that start at non-page-aligned offsets (Benjamin Coddington) [1950303] - pNFS/NFSv4: Improve rejection of out-of-order layouts (Benjamin Coddington) [1950303] - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn (Benjamin Coddington) [1950303] - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process() (Benjamin Coddington) [1950303] - SUNRPC: Move the svc_xdr_recvfrom tracepoint again (Benjamin Coddington) [1950303] - nfsd4: readdirplus shouldn't return parent of export (Benjamin Coddington) [1950303] - NFS: nfs_igrab_and_active must first reference the superblock (Benjamin Coddington) [1950303] - NFS: nfs_delegation_find_inode_server must first reference the superblock (Benjamin Coddington) [1950303] - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter (Benjamin Coddington) [1950303] - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit() (Benjamin Coddington) [1950303] - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request (Benjamin Coddington) [1950303] - pNFS: Stricter ordering of layoutget and layoutreturn (Benjamin Coddington) [1950303] - pNFS: Clean up pnfs_layoutreturn_free_lsegs() (Benjamin Coddington) [1950303] - pNFS: We want return-on-close to complete when evicting the inode (Benjamin Coddington) [1950303] - pNFS: Mark layout for return if return-on-close was not sent (Benjamin Coddington) [1950303] - net: sunrpc: interpret the return value of kstrtou32 correctly (Benjamin Coddington) [1950303] - SUNRPC: Handle TCP socket sends with kernel_sendpage() again (Benjamin Coddington) [1950303] - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() (Benjamin Coddington) [1950303] - pNFS/flexfiles: Avoid spurious layout returns in ff_layout_choose_ds_for_read (Benjamin Coddington) [1950303] - NFSv4/pnfs: Add tracing for the deviceid cache (Benjamin Coddington) [1950303] - fs/lockd: convert comma to semicolon (Benjamin Coddington) [1950303] - SUNRPC: When expanding the buffer, we may need grow the sparse pages (Benjamin Coddington) [1950303] - SUNRPC: Cleanup - constify a number of xdr_buf helpers (Benjamin Coddington) [1950303] - SUNRPC: Clean up open coded setting of the xdr_stream 'nwords' field (Benjamin Coddington) [1950303] - SUNRPC: _copy_to/from_pages() now check for zero length (Benjamin Coddington) [1950303] - SUNRPC: Cleanup xdr_shrink_bufhead() (Benjamin Coddington) [1950303] - SUNRPC: Fix xdr_expand_hole() (Benjamin Coddington) [1950303] - SUNRPC: Fixes for xdr_align_data() (Benjamin Coddington) [1950303] - SUNRPC: _shift_data_left/right_pages should check the shift length (Benjamin Coddington) [1950303] - NFSv4.1: use BITS_PER_LONG macro in nfs4session.h (Benjamin Coddington) [1950303] - xprtrdma: Fix XDRBUF_SPARSE_PAGES support (Benjamin Coddington) [1950303] - sunrpc: fix xs_read_xdr_buf for partial pages receive (Benjamin Coddington) [1950303] - Revert "nfsd4: support change_attr_type attribute" (Benjamin Coddington) [1950303] - nfsd4: don't query change attribute in v2/v3 case (Benjamin Coddington) [1950303] - nfsd: minor nfsd4_change_attribute cleanup (Benjamin Coddington) [1950303] - nfsd: simplify nfsd4_change_info (Benjamin Coddington) [1950303] - nfsd: only call inode_query_iversion in the I_VERSION case (Benjamin Coddington) [1950303] - nfs_common: need lock during iterate through the list (Benjamin Coddington) [1950303] - nfsd: Fix message level for normal termination (Benjamin Coddington) [1950303] - NFS: switch nfsiod to be an UNBOUND workqueue. (Benjamin Coddington) [1950303] - lockd: don't use interval-based rebinding over TCP (Benjamin Coddington) [1950303] - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' (Benjamin Coddington) [1950303] - NFSv4: Refactor to use user namespaces for nfs4idmap (Benjamin Coddington) [1950303] - NFS: NFSv2/NFSv3: Use cred from fs_context during mount (Benjamin Coddington) [1950303] - NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode (Benjamin Coddington) [1950303] - SUNRPC: Fix up xdr_set_page() (Benjamin Coddington) [1950303] - SUNRPC: Fix open coded xdr_stream_remaining() (Benjamin Coddington) [1950303] - pNFS: Clean up open coded xdr string decoding (Benjamin Coddington) [1950303] - SUNRPC: Fix up open coded kmemdup_nul() (Benjamin Coddington) [1950303] - pNFS/flexfiles: Fix up layoutstats reporting for non-TCP transports (Benjamin Coddington) [1950303] - NFSv4/pNFS: Store the transport type in struct nfs4_pnfs_ds_addr (Benjamin Coddington) [1950303] - pNFS: Add helpers for allocation/free of struct nfs4_pnfs_ds_addr (Benjamin Coddington) [1950303] - NFSv4/pNFS: Use connections to a DS that are all of the same protocol family (Benjamin Coddington) [1950303] - SUNRPC: Remove unused function xprt_load_transport() (Benjamin Coddington) [1950303] - NFS: Switch mount code to use xprt_find_transport_ident() (Benjamin Coddington) [1950303] - SUNRPC: Add a helper to return the transport identifier given a netid (Benjamin Coddington) [1950303] - SUNRPC: Close a race with transport setup and module put (Benjamin Coddington) [1950303] - SUNRPC: xprt_load_transport() needs to support the netid "rdma6" (Benjamin Coddington) [1950303] - SUNRPC: rpc_wake_up() should wake up tasks in the correct order (Benjamin Coddington) [1950303] - NFSv4: Observe the NFS_MOUNT_SOFTREVAL flag in _nfs4_proc_lookupp (Benjamin Coddington) [1950303] - NFSv3: Add emulation of the lookupp() operation (Benjamin Coddington) [1950303] - NFSv3: Refactor nfs3_proc_lookup() to split out the dentry (Benjamin Coddington) [1950303] - SUNRPC: Remove XDRBUF_SPARSE_PAGES flag in gss_proxy upcall (Benjamin Coddington) [1950303] - NFSD: Add tracepoints in nfsd4_decode/encode_compound() (Benjamin Coddington) [1950303] - NFSD: Add tracepoints in nfsd_dispatch() (Benjamin Coddington) [1950303] - NFSD: Add common helpers to decode void args and encode void results (Benjamin Coddington) [1950303] - SUNRPC: Prepare for xdr_stream-style decoding on the server-side (Benjamin Coddington) [1950303] - SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() (Benjamin Coddington) [1950303] - NFSD: Add SPDX header for fs/nfsd/trace.c (Benjamin Coddington) [1950303] - SUNRPC: Move the svc_xdr_recvfrom() tracepoint (Benjamin Coddington) [1950303] - NFSD: Add SPDX header for fs/nfsd/trace.c (Benjamin Coddington) [1950303] - NFSD: A semicolon is not needed after a switch statement. (Benjamin Coddington) [1950303] - svcrdma: support multiple Read chunks per RPC (Benjamin Coddington) [1950303] - svcrdma: Use the new parsed chunk list when pulling Read chunks (Benjamin Coddington) [1950303] - svcrdma: Rename info::ri_chunklen (Benjamin Coddington) [1950303] - svcrdma: Clean up chunk tracepoints (Benjamin Coddington) [1950303] - svcrdma: Remove chunk list pointers (Benjamin Coddington) [1950303] - svcrdma: Support multiple Write chunks in svc_rdma_send_reply_chunk (Benjamin Coddington) [1950303] - svcrdma: Support multiple Write chunks in svc_rdma_map_reply_msg() (Benjamin Coddington) [1950303] - svcrdma: Support multiple write chunks when pulling up (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to encode Reply transport headers (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to construct RDMA Writes (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to detect reverse direction replies (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to derive the inv_rkey (Benjamin Coddington) [1950303] - svcrdma: Add a "parsed chunk list" data structure (Benjamin Coddington) [1950303] - svcrdma: Clean up svc_rdma_encode_reply_chunk() (Benjamin Coddington) [1950303] - svcrdma: Post RDMA Writes while XDR encoding replies (Benjamin Coddington) [1950303] - NFSD: Invoke svc_encode_result_payload() in "read" NFSD encoders (Benjamin Coddington) [1950303] - SUNRPC: Rename svc_encode_read_payload() (Benjamin Coddington) [1950303] - svcrdma: Refactor the RDMA Write path (Benjamin Coddington) [1950303] - svcrdma: Const-ify the xdr_buf arguments (Benjamin Coddington) [1950303] - SUNRPC: Adjust synopsis of xdr_buf_subsegment() (Benjamin Coddington) [1950303] - svcrdma: Catch another Reply chunk overflow case (Benjamin Coddington) [1950303] - xprtrdma: Micro-optimize MR DMA-unmapping (Benjamin Coddington) [1950303] - xprtrdma: Move rpcrdma_mr_put() (Benjamin Coddington) [1950303] - xprtrdma: Trace unmap_sync calls (Benjamin Coddington) [1950303] - xprtrdma: Display the task ID when reporting MR events (Benjamin Coddington) [1950303] - xprtrdma: Clean up trace_xprtrdma_nomrs() (Benjamin Coddington) [1950303] - xprtrdma: Clean up xprtrdma callback tracepoints (Benjamin Coddington) [1950303] - xprtrdma: Clean up tracepoints in the reply path (Benjamin Coddington) [1950303] - xprtrdma: Clean up reply parsing error tracepoints (Benjamin Coddington) [1950303] - xprtrdma: Clean up trace_xprtrdma_post_linv (Benjamin Coddington) [1950303] - xprtrdma: Introduce FRWR completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Introduce Send completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Introduce Receive completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Replace dprintk call sites in ERR_CHUNK path (Benjamin Coddington) [1950303] - xprtrdma: Fix a BUG when tracing is enabled with NFSv4.1 on RDMA (Benjamin Coddington) [1950303] - drm: virtio: fix common struct sg_table related issues (Eric Auger) [1971821] - net/mlx5e: Release skb in case of failure in tc update skb (Alaa Hleihel) [1915307] - net/mlx5: Release devlink object if adev fails (Alaa Hleihel) [1915307] - net/mlx5: Fix compilation warning for 32-bit platform (Alaa Hleihel) [1915307] - net/mlx5: Use effective interrupt affinity (Alaa Hleihel) [1915307] - net/mlx5: Replace irq_to_desc() abuse (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove unneeded semicolon (Alaa Hleihel) [1915307] - net: mlx5: convert comma to semicolon (Alaa Hleihel) [1915307] - net/mlx5e: Fill mlx5e_create_cq_param in a function (Alaa Hleihel) [1915307] - net/mlx5e: Split between RX/TX tunnel FW support indication (Alaa Hleihel) [1915307] - net/mlx5: Arm only EQs with EQEs (Alaa Hleihel) [1915307] - net/mlx5e: Remove duplicated include (Alaa Hleihel) [1915307] - net/mlx5e: Add TX port timestamp support (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Add TX PTP port object support (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Move MLX5E_RX_ERR_CQE macro (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Split SW group counters update function (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Change skb fifo push/pop API to be used without SQ (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow SQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow RQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow CQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Free drop RQ in a dedicated function (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove IB representors dead code (Alaa Hleihel) [1915307] - net/mlx5: Simplify eswitch mode check (Alaa Hleihel) [1915307] - net/mlx5: Delete custom device management logic (Alaa Hleihel) [1915307] - RDMA/mlx5: Convert mlx5_ib to use auxiliary bus (Alaa Hleihel) [1915307] - net/mlx5e: Connect ethernet part to auxiliary bus (Alaa Hleihel) [1915307] - vdpa/mlx5: Connect mlx5_vdpa to auxiliary bus (Alaa Hleihel) [1915307] - net/mlx5: Register mlx5 devices to auxiliary virtual bus (Alaa Hleihel) [1915307] - vdpa/mlx5: Make hardware definitions visible to all mlx5 devices (Alaa Hleihel) [1915307] - net/mlx5_core: Clean driver version and name (Alaa Hleihel) [1915307] - net/mlx5: Treat host PF vport as other (non eswitch manager) vport (Alaa Hleihel) [1915307] - net/mlx5: Export steering related functions (Alaa Hleihel) [1915307] - net/mlx5: Expose other function ifc bits (Alaa Hleihel) [1915307] - net/mlx5: Expose IP-in-IP TX and RX capability bits (Alaa Hleihel) [1915307] - net/mlx5: Update the hardware interface definition for vhca state (Alaa Hleihel) [1915307] - net/mlx5: Avoid exposing driver internal command helpers (Alaa Hleihel) [1915307] - net/mlx5: Add ts_cqe_to_dest_cqn related bits (Alaa Hleihel) [1915307] - net/mlx5: Add misc4 to mlx5_ifc_fte_match_param_bits (Alaa Hleihel) [1915307] - net/mlx5: Check dr mask size against mlx5_match_param size (Alaa Hleihel) [1915307] - net/mlx5: Add sampler destination type (Alaa Hleihel) [1915307] - net/mlx5: Add sample offload hardware bits and structures (Alaa Hleihel) [1915307] - RDMA/mlx5: Use PCI device for dma mappings (Alaa Hleihel) [1915307] - RDMA/mlx5: Silence the overflow warning while building offset mask (Alaa Hleihel) [1915307] - RDMA/mlx5: Check for ERR_PTR from uverbs_zalloc() (Alaa Hleihel) [1915307] - RDMA/mlx5: Enable querying AH for XRC QP types (Alaa Hleihel) [1915307] - RDMA/mlx5: Lower setting the umem's PAS for SRQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use ib_umem_find_best_pgsz() for devx (Alaa Hleihel) [1915307] - RDMA/mlx5: mlx5_umem_find_best_quantized_pgoff() for CQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use mlx5_umem_find_best_quantized_pgoff() for QP (Alaa Hleihel) [1915307] - RDMA/mlx5: Directly compute the PAS list for raw QP RQ's (Alaa Hleihel) [1915307] - RDMA/mlx5: Use mlx5_umem_find_best_quantized_pgoff() for WQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use ib_umem_find_best_pgoff() for SRQ (Alaa Hleihel) [1915307] - net: mlx5: Replace in_irq() usage (Alaa Hleihel) [1915307] - net/mlx5: Cleanup kernel-doc warnings (Alaa Hleihel) [1915307] - net/mlx5e: Validate stop_room size upon user input (Alaa Hleihel) [1915307] - net/mlx5: DR, Free unused buddy ICM memory (Alaa Hleihel) [1915307] - net/mlx5: DR, ICM memory pools sync optimization (Alaa Hleihel) [1915307] - net/mlx5: DR, Sync chunks only during free (Alaa Hleihel) [1915307] - net/mlx5: DR, Handle ICM memory via buddy allocation instead of buckets (Alaa Hleihel) [1915307] - net/mlx5: DR, Add buddy allocator utilities (Alaa Hleihel) [1915307] - net/mlx5: DR, Rename matcher functions to be more HW agnostic (Alaa Hleihel) [1915307] - net/mlx5: DR, Rename builders HW specific names (Alaa Hleihel) [1915307] - net/mlx5: DR, Remove unused member of action struct (Alaa Hleihel) [1915307] - IB/mlx5: Add support for NDR link speed (Alaa Hleihel) [1915307 1926596] - RDMA/mlx5: Use ib_umem_find_best_pgsz() for mkc's (Alaa Hleihel) [1915307] - RDMA/mlx5: Split the WR setup out of mlx5_ib_update_xlt() (Alaa Hleihel) [1915307] - RDMA/mlx5: Move xlt_emergency_page_mutex into mr.c (Alaa Hleihel) [1915307] - RDMA/mlx5: Change mlx5_ib_populate_pas() to use rdma_for_each_block() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove npages from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove ncont from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove order from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Move mlx5_ib_cont_pages() to the creation of the mlx5_ib_mr (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove mlx5_ib_mr->order (Alaa Hleihel) [1915307] - net/mlx5: fix error return code in mlx5e_tc_nic_init() (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Fix IPsec packet drop by mlx5e_tc_update_skb (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Use spin_lock_bh for async_icosq_lock (Alaa Hleihel) [1915306 1915307] - net/mlx5: Replace zero-length array with flexible-array member (Alaa Hleihel) [1915306 1915307] - net/mlx5: Fix uininitialized pointer read on pointer attr (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for devlink reload limit no reset (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for fw live patch event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add devlink param enable_remote_dev_reset support (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for devlink reload action fw activate (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset abort event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset now event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset request event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Set cap for pci sync for fw update event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add functions to set/query MFRL register (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Fix potential null pointer dereference (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Fix dereference on pointer attr after null check (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Use dma device access helper (Alaa Hleihel) [1915306 1915307] - mlx5: cross-tree: phase out dma_zalloc_coherent() (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-Switch, Support flow source for local vport (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Move devlink eswitch ports closer to eswitch (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Use helper function to load unload representor (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Add helper to check egress ACL need (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Use PF num in metadata reg c0 (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Add support for rule creation with flow source hint (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Call ste_builder directly with tag pointer (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded local variable (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded vlan check from L2 builder (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded check from source port builder (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Replace the check for valid STE entry (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Delete not needed GSI QP signal QP type (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Change GSI QP to have same creation flow like other QPs (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Reuse existing fields in parent QP storage object (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Embed GSI QP into general mlx5_ib QP (Alaa Hleihel) [1915306 1915307] - net/mlx5: remove unreachable return (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Use kfree() to free fd->g in accel_fs_tcp_create_groups() (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Keep direct reference to mlx5_core_dev in tc ct (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Support CT offload for tc nic flows (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: rework ct offload init messages (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Add tc chains offload support for nic flows (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Refactor tc flow attributes structure (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Split nic tc flow allocation and creation (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Tc nic flows to use mlx5_chains flow tables (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Allow ft level ignore for nic rx tables (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Refactor multi chains and prios support (Alaa Hleihel) [1915306 1915307 1919642] - RDMA/mlx5: Don't call to restrack recursively (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Expose TIR and QP ICM address for sw_owner_v2 devices (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Allow DM allocation for sw_owner_v2 enabled devices (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Add sw_owner_v2 bit capability (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Delete duplicated mlx5_ptys_width enum (Alaa Hleihel) [1915306 1915307] - net/mlx5: IPsec: make spdxcheck.py happy (Alaa Hleihel) [1915306 1915307] - mlx5: add pause frame stats (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Add CQE compression support for multi-strides packets (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Add support for tc trap (Alaa Hleihel) [1915306 1915307 1919643] - net/mlx5: E-Switch, Use vport metadata matching by default (Alaa Hleihel) [1915306 1915307] - net/mlx5: remove erroneous fallthrough (Alaa Hleihel) [1915306 1915307] - IB/mlx5: Add DCT RoCE LAG support (Alaa Hleihel) [1915306 1915307] - IB/mlx5: Add tx_affinity support for DCI QP (Alaa Hleihel) [1915306 1915307] - net/mlx5e: RX, Add a prefetch command for small L1_CACHE_BYTES (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Enable sniffer when device is in switchdev mode (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Add new IB rates support (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Replace open-coded offsetofend() macro (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Simplify multiple else-if cases with switch keyword (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Link non uplink representors to PCI device (Alaa Hleihel) [1915306 1915307 1959367] - perf stat: Use nftw() instead of ftw() (Michael Petlan) [1944684] - perf unwind: Set userdata for all __report_module() paths (Michael Petlan) [1944684] - perf debug: Move debug initialization earlier (Michael Petlan) [1944684] - perf script: Fix overrun issue for dynamically-allocated PMU type number (Michael Petlan) [1944684] - perf metricgroup: Fix system PMU metrics (Michael Petlan) [1944684] - perf metricgroup: Fix for metrics containing duration_time (Michael Petlan) [1944684] - perf evlist: Fix id index for heterogeneous systems (Michael Petlan) [1944684] - perf inject: Correct event attribute sizes (Michael Petlan) [1944684] - perf intel-pt: Fix 'CPU too large' error (Michael Petlan) [1944684] - perf stat: Take cgroups into account for shadow stats (Michael Petlan) [1944684] - perf stat: Introduce struct runtime_stat_data (Michael Petlan) [1944684] - libperf tests: Fail when failing to get a tracepoint id (Michael Petlan) [1944684] - libperf tests: If a test fails return non-zero (Michael Petlan) [1944684] - libperf tests: Avoid uninitialized variable warning (Michael Petlan) [1944684] - perf test: Fix shadow stat test for non-bash shells (Michael Petlan) [1944684] - perf bpf examples: Fix bpf.h header include directive in 5sec.c example (Michael Petlan) [1944684] - perf probe: Fix memory leak when synthesizing SDT probes (Michael Petlan) [1944684] - perf stat aggregation: Add separate thread member (Michael Petlan) [1944684] - perf stat aggregation: Add separate core member (Michael Petlan) [1944684] - perf stat aggregation: Add separate die member (Michael Petlan) [1944684] - perf stat aggregation: Add separate socket member (Michael Petlan) [1944684] - perf stat aggregation: Add separate node member (Michael Petlan) [1944684] - perf stat aggregation: Start using cpu_aggr_id in map (Michael Petlan) [1944684] - perf cpumap: Drop in cpu_aggr_map struct (Michael Petlan) [1944684] - perf cpumap: Add new map type for aggregation (Michael Petlan) [1944684] - perf stat: Replace aggregation ID with a struct (Michael Petlan) [1944684] - perf cpumap: Add new struct for cpu aggregation (Michael Petlan) [1944684] - perf cpumap: Use existing allocator to avoid using malloc (Michael Petlan) [1944684] - perf tests: Improve topology test to check all aggregation types (Michael Petlan) [1944684] - perf powerpc: Move syscall.tbl check to check-headers.sh (Michael Petlan) [1944684] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Michael Petlan) [1944684] - perf mem: Factor out a function to generate sort order (Michael Petlan) [1944684] - perf sort: Add sort option for data page size (Michael Petlan) [1944684] - perf script: Support data page size (Michael Petlan) [1944684] - tools headers UAPI: Sync linux/stat.h with the kernel sources (Michael Petlan) [1944684] - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions (Michael Petlan) [1944684] - perf config: Fix example command in manpage to conform to syntax specified in the SYNOPSIS section. (Michael Petlan) [1944684] - perf test: Make sample-parsing test aware of PERF_SAMPLE_{CODE,DATA}_PAGE_SIZE (Michael Petlan) [1944684] - perf tools: Add support to read build id from compressed elf (Michael Petlan) [1944684] - perf debug: Add debug_set_file function (Michael Petlan) [1944684] - perf evlist: Support pipe mode display (Michael Petlan) [1944684] - perf report: Support --header-only for pipe mode (Michael Petlan) [1944684] - perf vendor events: Add JSON metrics for imx8mm DDR Perf (Michael Petlan) [1944684] - perf metricgroup: Support adding metrics for system PMUs (Michael Petlan) [1944684] - perf metricgroup: Support printing metric groups for system PMUs (Michael Petlan) [1944684] - perf metricgroup: Split up metricgroup__print() (Michael Petlan) [1944684] - perf metricgroup: Fix metrics using aliases covering multiple PMUs (Michael Petlan) [1944684] - perf evlist: Change evlist__splice_list_tail() ordering (Michael Petlan) [1944684] - perf pmu: Add pmu_add_sys_aliases() (Michael Petlan) [1944684] - perf pmu: Add pmu_id() (Michael Petlan) [1944684] - perf jevents: Add support for system events tables (Michael Petlan) [1944684] - perf jevents: Add support for an extra directory level (Michael Petlan) [1944684] - perf evsel: Emit warning about kernel not supporting the data page size sample_type bit (Michael Petlan) [1944684] - perf record: Support new sample type for data page size (Michael Petlan) [1944684] - perf unwind: Fix separate debug info files when using elfutils' libdw's unwinder (Michael Petlan) [1944684] - perf record: Fix memory leak when using '--user-regs=?' to list registers (Michael Petlan) [1944684] - tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1944684] - tools build: Add missing libcap to test-all.bin target (Michael Petlan) [1944684] - perf test: Fix metric parsing test (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' record methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' diff methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' nr_threads method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' deliver event method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' header methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' raw samples methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' mmap pages parsing method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event attribute config methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for alternative 'struct evlist' constructors (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event selection methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event group methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' create maps methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' print methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' evsel list methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' pause/resume methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' id_pos methods (Michael Petlan) [1944684] - perf tools: Add aarch64 registers to --user-regs (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' tracking event methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' browser methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sample id lookup methods (Michael Petlan) [1944684] - perf evlist: Ditch unused set/reset sample_bit methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sample parsing methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sideband thread methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' 'filter' methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' stats methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' 'workload' methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' methods: evlist__set_leader() (Michael Petlan) [1944684] - perf evsel: Convert last 'struct evsel' methods to the right evsel__ prefix (Michael Petlan) [1944684] - perf test: Add shadow stat test (Michael Petlan) [1944684] - perf build-id: Add build_id_cache__add function (Michael Petlan) [1944684] - perf build-id: Add __perf_session__cache_build_ids function (Michael Petlan) [1944684] - perf build-id: Use machine__for_each_dso in perf_session__cache_build_ids (Michael Petlan) [1944684] - perf data: Add is_perf_data function (Michael Petlan) [1944684] - perf symbols: Try to load vmlinux from buildid database (Michael Petlan) [1944684] - perf tools: Use struct extra_kernel_map in machine__process_kernel_mmap_event (Michael Petlan) [1944684] - perf build-id: Add check for existing link in buildid dir (Michael Petlan) [1944684] - perf tools: Add filename__decompress function (Michael Petlan) [1944684] - perf tools: Add build_id__is_defined function (Michael Petlan) [1944684] - tools lib: Adopt memchr_inv() from kernel (Michael Petlan) [1944684] - perf arm-spe: Add support for ARMv8.3-SPE (Michael Petlan) [1944684] - perf arm_spe: Decode memory tagging properties (Michael Petlan) [1944684] - perf arm-spe: Add more sub classes for operation packet (Michael Petlan) [1944684] - perf arm-spe: Refactor operation packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_op_type() (Michael Petlan) [1944684] - perf arm-spe: Remove size condition checking for events (Michael Petlan) [1944684] - perf arm-spe: Refactor event type handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_event() (Michael Petlan) [1944684] - perf arm-spe: Refactor counter packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_counter() (Michael Petlan) [1944684] - perf arm-spe: Refactor context packet handling (Michael Petlan) [1944684] - perf arm_spe: Fixup top byte for data virtual address (Michael Petlan) [1944684] - perf arm-spe: Refactor address packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_addr() (Michael Petlan) [1944684] - perf arm-spe: Refactor packet header parsing (Michael Petlan) [1944684] - perf arm-spe: Refactor printing string to buffer (Michael Petlan) [1944684] - perf expr: Force encapsulation on expr_id_data (Michael Petlan) [1944684] - perf vendor events: Update Skylake client events to v50 (Michael Petlan) [1944684] - perf data: Allow to use stdio functions for pipe mode (Michael Petlan) [1944684] - perf arm-spe: Fix packet length handling (Michael Petlan) [1944684] - perf arm-spe: Refactor arm_spe_get_events() (Michael Petlan) [1944684] - perf arm-spe: Refactor payload size calculation (Michael Petlan) [1944684] - perf arm-spe: Fix a typo in comment (Michael Petlan) [1944684] - perf arm-spe: Include bitops.h for BIT() macro (Michael Petlan) [1944684] - perf mem: Support ARM SPE events (Michael Petlan) [1944684] - perf c2c: Support AUX trace (Michael Petlan) [1944684] - perf mem: Support AUX trace (Michael Petlan) [1944684] - perf auxtrace: Add itrace option '-M' for memory events (Michael Petlan) [1944684] - perf mem: Only initialize memory event for recording (Michael Petlan) [1944684] - perf c2c: Support memory event PERF_MEM_EVENTS__LOAD_STORE (Michael Petlan) [1944684] - perf mem: Support new memory event PERF_MEM_EVENTS__LOAD_STORE (Michael Petlan) [1944684] - perf mem: Introduce weak function perf_mem_events__ptr() (Michael Petlan) [1944684] - perf mem: Search event name with more flexible path (Michael Petlan) [1944684] - perf jevents: Add test for arch std events (Michael Petlan) [1944684] - perf jevents: Tidy error handling (Michael Petlan) [1944684] - perf trace beauty: Allow header files in a different path (Michael Petlan) [1944684] - perf stat: Add --quiet option (Michael Petlan) [1944684] - perf stat: Support regex pattern in --for-each-cgroup (Michael Petlan) [1944684] - perf kvm: Add kvm-stat for arm64 (Michael Petlan) [1944684] - perf env: Conditionally compile BPF support code on having HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf annotate: Move bpf header inclusion to inside HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf tests: Skip the llvm and bpf tests if HAVE_LIBBPF_SUPPORT isn't defined (Michael Petlan) [1944684] - perf bpf: Enclose libbpf.h include within HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf test: Implement skip_reason callback for watchpoint tests (Michael Petlan) [1944684] - perf tests tsc: Add checking helper is_supported() (Michael Petlan) [1944684] - perf tests tsc: Make tsc testing as a common testing (Michael Petlan) [1944684] - perf mem2node: Improve warning if detected no memory nodes (Michael Petlan) [1944684] - perf version: Add a feature for libpfm4 (Michael Petlan) [1944684] - perf annotate mips: Add perf arch instructions annotate handlers (Michael Petlan) [1944684] - perf/x86/intel: Add Tremont Topdown support (Michael Petlan) [1944684] - perf/x86: Fix fall-through warnings for Clang (Michael Petlan) [1944684] - perf/x86/intel/lbr: Fix the return type of get_lbr_cycles() (Michael Petlan) [1944684] - perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake (Michael Petlan) [1944684] - perf: Break deadlock involving exec_update_mutex (Michael Petlan) [1944684] - perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY (Michael Petlan) [1944684] - perf/x86: Avoid TIF_IA32 when checking 64bit mode (Michael Petlan) [1944684] - bpf, ringbuf: Deny reserve of buffers larger than ringbuf (Wander Lairson Costa) [1968591] - bpf: Fix propagation of 32 bit unsigned bounds from 64 bit bounds (Wander Lairson Costa) [1965938] - tools/power turbostat: Support Alder Lake Mobile (Steve Best) [1962291] - ACPI: PM: Add ACPI ID of Alder Lake Fan (Steve Best) [1961617] - powercap/intel_rapl: add support for AlderLake Mobile (Steve Best) [1961816] - platform/x86: intel_pmc_core: Uninitialized data in pmc_core_lpm_latch_mode_write() (David Arcari) [1783557] - platform/x86: intel_pmc_core: add ACPI dependency (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix "unsigned 'ret' is never less than zero" smatch warning (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add LTR registers for Tiger Lake (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add option to set/clear LPM mode (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add requirements file to debugfs (David Arcari) [1783557] - platform/x86: intel_pmc_core: Get LPM requirements for Tiger Lake (David Arcari) [1783557] - platform/x86: intel_pmc_core: Show LPM residency in microseconds (David Arcari) [1783557] - platform/x86: intel_pmc_core: Handle sub-states generically (David Arcari) [1783557] - platform/x86: intel_pmc_core: Remove global struct pmc_dev (David Arcari) [1783557] - platform/x86: intel_pmc_core: Don't use global pmcdev in quirks (David Arcari) [1783557] - platform/x86: intel_pmc_core: export platform global reset bits via etr3 sysfs file (David Arcari) [1783557] - MAINTAINERS: Update maintainers for pmc_core driver (David Arcari) [1783557] - MAINTAINERS: intel_pmc_core: Update MAINTAINERS (David Arcari) [1783557] - platform/x86: intel_pmc_core: Ignore GBE LTR on Tiger Lake platforms (David Arcari) [1783557] - platform/x86: intel_pmc_core: Assign boolean values to a bool variable (David Arcari) [1783557] - platform/x86: intel_pmc_core: fix: Replace dev_dbg macro with dev_info() (David Arcari) [1783557] - platform/x86: intel_pmc_core: Clean up: Remove the duplicate comments and reorganize (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix TigerLake power gating status map (David Arcari) [1783557] - platform/x86: pmc_core: Use descriptive names for LPM registers (David Arcari) [1783557] - platform/x86: intel_pmc_core: Change Jasper Lake S0ix debug reg map back to ICL (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add Atom based Jasper Lake (JSL) platform support (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add Intel Elkhart Lake support (David Arcari) [1783557] - [s390] s390/ipl: support NVMe IPL kernel parameters (Claudio Imbrenda) [1963120] - [s390] net/smc: use memcpy instead of snprintf to avoid out of bounds read (Claudio Imbrenda) [1919249] - [s390] smc: fix out of bound access in smc_nl_get_sys_info() (Claudio Imbrenda) [1919249] - [s390] net/smc: fix access to parent of an ib device (Claudio Imbrenda) [1919249] - [s390] s390/vtime: fix increased steal time accounting (Claudio Imbrenda) [1963075] - [s390] tools/kvm_stat: Add restart delay (Claudio Imbrenda) [1963082] - [s390] s390/dasd: fix hanging IO request during DASD driver unbind (Claudio Imbrenda) [1963077] - [s390] s390/dasd: fix hanging DASD driver unbind (Claudio Imbrenda) [1963077]- Add New KUNIT Tests to Redhat kernel-modules-internal (Nico Pache) [1939309] - kunit: lib: adhear to KUNIT formatting standard (Nico Pache) [1939309] - kunit: mptcp: adhere to KUNIT formatting standard (Nico Pache) [1939309] - ASoC: topology: adhere to KUNIT formatting standard (Nico Pache) [1939309] - kunit: software node: adhear to KUNIT formatting standard (Nico Pache) [1939309] - resource: provide meaningful MODULE_LICENSE() in test suite (Nico Pache) [1939309] - resource: Add test cases for new resource API (Nico Pache) [1939309] - resource: Introduce resource_intersection() for overlapping resources (Nico Pache) [1939309] - resource: Introduce resource_union() for overlapping resources (Nico Pache) [1939309] - mm/resource: Use resource_overlaps() to simplify region_intersects() (Nico Pache) [1939309] - kernel.h: split out min()/max() et al. helpers (Nico Pache) [1939309] - lib/math/rational.c: fix possible incorrect result from rational fractions helper (Nico Pache) [1939309] - lib: Move mathematic helpers to separate folder (Nico Pache) [1939309] - lib/cmdline: remove an unneeded local variable in next_arg() (Nico Pache) [1939309] - lib/cmdline: Allow get_options() to take 0 to validate the input (Nico Pache) [1939309] - lib/cmdline: Update documentation to reflect behaviour (Nico Pache) [1939309] - lib/cmdline_kunit: add a new test case for get_options() (Nico Pache) [1939309] - ext4: add .kunitconfig fragment to enable ext4-specific tests (Nico Pache) [1939309] - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it (Nico Pache) [1939309] - kunit: tool: fix unintentional statefulness in run_kernel() (Nico Pache) [1939309] - kunit: tool: add support for filtering suites by glob (Nico Pache) [1939309] - kunit: add kunit.filter_glob cmdline option to filter suites (Nico Pache) [1939309] - kunit: don't show `1 == 1` in failed assertion messages (Nico Pache) [1939309] - kunit: make kunit_tool accept optional path to .kunitconfig fragment (Nico Pache) [1939309] - Documentation: kunit: add tips.rst for small examples (Nico Pache) [1939309] - KUnit: Docs: make start.rst example Kconfig follow style.rst (Nico Pache) [1939309] - kunit: tool: simplify kconfig is_subset_of() logic (Nico Pache) [1939309] - minor: kunit: tool: fix unit test so it can run from non-root dir (Nico Pache) [1939309] - kunit: tool: use `with open()` in unit test (Nico Pache) [1939309] - kunit: tool: stop using bare asserts in unit test (Nico Pache) [1939309] - kunit: tool: fix unit test cleanup handling (Nico Pache) [1939309] - ASoC: topology: KUnit: Convert from cpu to data format (Nico Pache) [1939309] - drivers/base: build kunit tests without structleak plugin (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing topology with PCM to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing empty topology with variants to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing various arguments to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: Check if ops is set before dereference (Nico Pache) [1939309] - ASoC: topology: Ensure that needed parameters are set (Nico Pache) [1939309] - kunit: tool: move kunitconfig parsing into __init__, make it optional (Nico Pache) [1939309] - kunit: tool: fix minor typing issue with None status (Nico Pache) [1939309] - kunit: tool: surface and address more typing issues (Nico Pache) [1939309] - Documentation: kunit: include example of a parameterized test (Nico Pache) [1939309] - kunit: tool: Fix spelling of "diagnostic" in kunit_parser (Nico Pache) [1939309] - kunit: tool: Force the use of the 'tty' console for UML (Nico Pache) [1939309] - lib/cmdline_kunit: add a new test suite for cmdline API (Nico Pache) [1939309] - lib/cmdline: allow NULL to be an output for get_option() (Nico Pache) [1939309] - lib/cmdline: fix get_option() for strings starting with hyphen (Nico Pache) [1939309] - lib/cmdline.c: mark expected switch fall-throughs (Nico Pache) [1939309] - lib/test_bits.c: add tests of GENMASK (Nico Pache) [1939309] - linux/bits.h: add compile time sanity check of GENMASK inputs (Nico Pache) [1939309] - linux/build_bug.h: change type to int (Nico Pache) [1939309] - fs: ext4: Modify inode-test.c to use KUnit parameterized testing feature (Nico Pache) [1939309] - kunit: Support for Parameterized Testing (Nico Pache) [1939309] - kunit: kunit_tool: Correctly parse diagnostic messages (Nico Pache) [1939309] - Documentation: kunit: provide guidance for testing many inputs (Nico Pache) [1939309] - kunit: Introduce get_file_path() helper (Nico Pache) [1939309] - kunit: fix display of failed expectations for strings (Nico Pache) [1939309] - kunit: tool: fix extra trailing \n in raw + parsed test output (Nico Pache) [1939309] - kunit: tool: print out stderr from make (like build warnings) (Nico Pache) [1939309] - KUnit: Docs: usage: wording fixes (Nico Pache) [1939309] - KUnit: Docs: style: fix some Kconfig example issues (Nico Pache) [1939309] - KUnit: Docs: fix a wording typo (Nico Pache) [1939309] - kunit: Do not pollute source directory with generated files (test.log) (Nico Pache) [1939309] - kunit: Do not pollute source directory with generated files (.kunitconfig) (Nico Pache) [1939309] - kunit: tool: fix pre-existing python type annotation errors (Nico Pache) [1939309] - kunit: Fix kunit.py parse subcommand (use null build_dir) (Nico Pache) [1939309] - kunit: test: fix remaining kernel-doc warnings (Nico Pache) [1939309] - lib: kunit: Fix compilation test when using TEST_BIT_FIELD_COMPILE (Nico Pache) [1939309] - kunit: test.h: fix a bad kernel-doc markup (Nico Pache) [1939309] - kunit: test.h: solve kernel-doc warnings (Nico Pache) [1939309] - lib: kunit: add bitfield test conversion to KUnit (Nico Pache) [1939309] - Documentation: kunit: add a brief blurb about kunit_test_suite (Nico Pache) [1939309] - kunit: test: add test plan to KUnit TAP format (Nico Pache) [1939309] - init: main: add KUnit to kernel init (Nico Pache) [1939309] - init: unify opening /dev/console as stdin/stdout/stderr (Nico Pache) [1939309] - kunit: test: create a single centralized executor for all tests (Nico Pache) [1939309] - Documentation: test.h - fix warnings (Nico Pache) [1939309] - vmlinux.lds.h: add linker section for KUnit test suites (Nico Pache) [1939309] - Documentation: kunit: Add naming guidelines (Nico Pache) [1939309] - kunit: tool: fix display of make errors (Nico Pache) [1939309] - kunit: tool: handle when .kunit exists but .kunitconfig does not (Nico Pache) [1939309] - kunit: tool: fix --alltests flag (Nico Pache) [1939309] - kunit: tool: allow generating test results in JSON (Nico Pache) [1939309] - kunit: tool: fix running kunit_tool from outside kernel tree (Nico Pache) [1939309] - lib: add linear ranges helpers (Nico Pache) [1939309] - PCI/RCEC: Fix RCiEP device to RCEC association (Myron Stowe) [1895942] - PCI/portdrv: Report reset for frozen channel (Myron Stowe) [1895942] - PCI/AER: Specify the type of Port that was reset (Myron Stowe) [1895942] - PCI/ERR: Retain status from error notification (Myron Stowe) [1895942] - PCI/AER: Clear AER status from Root Port when resetting Downstream Port (Myron Stowe) [1895942] - PCI/ERR: Clear status of the reporting device (Myron Stowe) [1895942] - PCI/AER: Add RCEC AER error injection support (Myron Stowe) [1895942] - PCI/PME: Add pcie_walk_rcec() to RCEC PME handling (Myron Stowe) [1895942] - PCI/AER: Add pcie_walk_rcec() to RCEC AER handling (Myron Stowe) [1895942] - PCI/ERR: Recover from RCiEP AER errors (Myron Stowe) [1895942] - PCI/ERR: Add pcie_link_rcec() to associate RCiEPs (Myron Stowe) [1895942] - PCI/ERR: Recover from RCEC AER errors (Myron Stowe) [1895942] - PCI/ERR: Clear AER status only when we control AER (Myron Stowe) [1895942] - PCI/ERR: Add pci_walk_bridge() to pcie_do_recovery() (Myron Stowe) [1895942] - PCI/ERR: Avoid negated conditional for clarity (Myron Stowe) [1895942] - PCI/ERR: Use "bridge" for clarity in pcie_do_recovery() (Myron Stowe) [1895942] - PCI/ERR: Simplify by computing pci_pcie_type() once (Myron Stowe) [1895942] - PCI/ERR: Simplify by using pci_upstream_bridge() (Myron Stowe) [1895942] - PCI/ERR: Rename reset_link() to reset_subordinates() (Myron Stowe) [1895942] - PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities() (Myron Stowe) [1895942] - PCI/ERR: Bind RCEC devices to the Root Port driver (Myron Stowe) [1895942] - PCI/AER: Write AER Capability only when we control it (Myron Stowe) [1895942] - PCI: Export pcie_has_flr() (Myron Stowe) [1895942] - xfs: don't reuse busy extents on extent trim (Brian Foster) [1960380] - nvme: add 'kato' sysfs attribute (Gopal Tiwari) [1970260] - scsi: qla2xxx: Update version to 10.02.00.106-k (Nilesh Javali) [1925465] - scsi: qla2xxx: Add marginal path handling support (Nilesh Javali) [1925465] - scsi: qla2xxx: Do logout even if fabric scan retries got exhausted (Nilesh Javali) [1925465] - scsi: qla2xxx: Update default AER debug mask (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix mailbox recovery during PCIe error (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix crash in PCIe error handling (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix RISC RESET completion polling (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix crash in qla2xxx_mqueuecommand() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix use after free in bsg (Nilesh Javali) [1925465] - scsi: qla2xxx: Consolidate zio threshold setting for both FCP & NVMe (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix stuck session (Nilesh Javali) [1925465] - scsi: qla2xxx: Add H:C:T info in the log message for fc ports (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix IOPS drop seen in some adapters (Nilesh Javali) [1925465] - scsi: qla2xxx: Check kzalloc() return value (Nilesh Javali) [1925465] - scsi: qla2xxx: Always check the return value of qla24xx_get_isp_stats() (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify qla8044_minidump_process_control() (Nilesh Javali) [1925465] - scsi: qla2xxx: Suppress Coverity complaints about dseg_r* (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix endianness annotations (Nilesh Javali) [1925465] - scsi: qla2xxx: Constify struct qla_tgt_func_tmpl (Nilesh Javali) [1925465] - scsi: qla2xxx: Use dma_pool_zalloc() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix a couple of misdocumented functions (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix incorrectly named function qla8044_check_temp() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix a couple of misnamed functions (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix some incorrect formatting/spelling issues (Nilesh Javali) [1925465] - scsi: qla2xxx: Replace __qla2x00_marker()'s missing underscores (Nilesh Javali) [1925465] - scsi: Revert "qla2xxx: Make sure that aborted commands are freed" (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix broken #endif placement (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify if statement (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify the calculation of variables (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix some memory corruption (Nilesh Javali) [1925465] - scsi: qla2xxx: Remove redundant NULL check (Nilesh Javali) [1925465] - scsi: qla2xxx: Remove unnecessary NULL check (Nilesh Javali) [1925465] - scsi: qla2xxx: Assign boolean values to a bool variable (Nilesh Javali) [1925465] - scsi: qla2xxx: fc_remote_port_chkready() returns a SCSI result value (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix description for parameter ql2xenforce_iocb_limit (Nilesh Javali) [1925465] - scsi: qla2xxx: Update version to 10.02.00.105-k (Nilesh Javali) [1925465] - scsi: qla2xxx: Enable NVMe CONF (BIT_7) when enabling SLER (Nilesh Javali) [1925465] - scsi: qla2xxx: Wait for ABTS response on I/O timeouts for NVMe (Nilesh Javali) [1925465] - scsi: qla2xxx: Move some messages from debug to normal log level (Nilesh Javali) [1925465] - scsi: qla2xxx: Add error counters to debugfs node (Nilesh Javali) [1925465] - scsi: qla2xxx: Implementation to get and manage host, target stats and initiator port (Nilesh Javali) [1925465] - scsi: ibmvfc: Reinit target retries (Steve Best) [1965010] - scsi: ibmvfc: Avoid move login if fast fail is enabled (Steve Best) [1965010] - scsi: ibmvfc: Handle move login failure (Steve Best) [1965010] - scsi: ibmvfc: Fix invalid state machine BUG_ON() (Steve Best) [1965010] - scsi: qedf: Do not put host in qedf_vport_create() unconditionally (Nilesh Javali) [1899384] - scsi: storvsc: Enable scatterlist entry lengths > 4Kbytes (Cathy Avery) [1941664] - scsi: storvsc: Parameterize number hardware queues (Cathy Avery) [1941664] - scsi: storvsc: Return DID_ERROR for invalid commands (Cathy Avery) [1941664] - scsi: storvsc: Validate length of incoming packet in storvsc_on_channel_callback() (Cathy Avery) [1941664] - scsi: storvsc: Resolve data race in storvsc_probe() (Cathy Avery) [1941664] - scsi: storvsc: Fix max_outstanding_req_per_channel for Win8 and newer (Cathy Avery) [1941664] - scsi: storvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening (Cathy Avery) [1941664] - RDMA/ipoib: Fix warning caused by destroying non-initial netns (Kamal Heib) [1961815] - can: dev: Move device back to init netns on owning netns delete (Kamal Heib) [1961815] - net: ena: remove extra words from comments (Petr Oros) [1955155] - net: ena: fix inaccurate print type (Petr Oros) [1955155] - ena: Update driver to use ethtool_sprintf (Petr Oros) [1955155] - docs: net: ena: Fix ena_start_xmit() function name typo (Petr Oros) [1955155] - ethernet: amazon: ena: A typo fix in the file ena_com.h (Petr Oros) [1955155] - net: ena: Update XDP verdict upon failure (Petr Oros) [1955155] - net: ena: introduce ndo_xdp_xmit() function for XDP_REDIRECT (Petr Oros) [1955155] - net: ena: use xdp_return_frame() to free xdp frames (Petr Oros) [1955155] - net: ena: introduce XDP redirect implementation (Petr Oros) [1955155] - net: ena: use xdp_frame in XDP TX flow (Petr Oros) [1955155] - net: ena: aggregate stats increase into a function (Petr Oros) [1955155] - net: ena: fix coding style nits (Petr Oros) [1955155] - net: ena: store values in their appropriate variables types (Petr Oros) [1955155] - net: ena: add device distinct log prefix to files (Petr Oros) [1955155] - net: ena: use constant value for net_device allocation (Petr Oros) [1955155] - net: ena: set initial DMA width to avoid intel iommu issue (Petr Oros) [1955155] - net: ena: update ena documentation (Petr Oros) [1955155] - net: ena: Fix all static chekers' warnings (Petr Oros) [1955155] - net: ena: Change RSS related macros and variables names (Petr Oros) [1955155] - net: ena: Remove redundant print of placement policy (Petr Oros) [1955155] - net: ena: Capitalize all log strings and improve code readability (Petr Oros) [1955155] - net: ena: Change log message to netif/dev function (Petr Oros) [1955155] - net: ena: Change license into format to SPDX in all files (Petr Oros) [1955155] - net: ena: xdp: add queue counters for xdp actions (Petr Oros) [1955155] - net: ena: ethtool: add stats printing to XDP queues (Petr Oros) [1955155] - net: ena: ethtool: Add new device statistics (Petr Oros) [1955155] - net: ena: ethtool: convert stat_offset to 64 bit resolution (Petr Oros) [1955155] - net: ena: Make missed_tx stat incremental (Petr Oros) [1955155] - net: ena: Prevent reset after device destruction (Petr Oros) [1955155] - treewide: replace '---help---' in Kconfig files with 'help' (Petr Oros) [1955155] - treewide: Add SPDX license identifier - Makefile/Kconfig (Petr Oros) [1955155] - cross-tree: phase out dma_zalloc_coherent() (Petr Oros) [1955155] - net: ena: fix compilation error in xtensa architecture (Petr Oros) [1955155] - docs: networking: reorganize driver documentation again (Petr Oros) [1955155] - docs: networking: device drivers: convert amazon/ena.txt to ReST (Petr Oros) [1955155] - net: ena: documentation: update ena.txt (Petr Oros) [1955155] - net: documentation: build a directory structure for drivers (Petr Oros) [1955155] - xfrm: interface: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - vti: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - vti6: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - net/sched: act_ct: Fix ct template allocation for zone 0 (Marcelo Ricardo Leitner) [1881824] - uio: Fix use-after-free in uio_unregister_device() (Myron Stowe) [1897285] - uio: free uio id after uio file node is freed (Myron Stowe) [1897285] - drivers: uio: remove redundant assignment to variable retval (Myron Stowe) [1897285] - driver: uio: fix possible use-after-free in __uio_register_device (Myron Stowe) [1897285] - driver: uio: fix possible memory leak in __uio_register_device (Myron Stowe) [1897285] - uio: remove redundant check (Myron Stowe) [1897285] - uio: fix potential memory leak in error case (Myron Stowe) [1897285] - uio: dismiss waiters on device unregistration (Myron Stowe) [1897285] - uio: Fix an Oops on load (Myron Stowe) [1897285] - uio: make symbol 'uio_class_registered' static (Myron Stowe) [1897285] - uio: convert to vm_fault_t (Myron Stowe) [1897285] - uio: ensure class is registered before devices (Myron Stowe) [1897285] - uio: potential double frees if __uio_register_device() fails (Myron Stowe) [1897285] - uio: fix possible circular locking dependency (Myron Stowe) [1897285] - uio: fix wrong return value from uio_mmap() (Myron Stowe) [1897285] - uio: add SPDX license tag (Myron Stowe) [1897285] - net: zero-initialize tc skb extension on allocation (Ivan Vecera) [1946986] - net: sched: fix tx action reschedule issue with stopped queue (Ivan Vecera) [1946986] - net: sched: fix tx action rescheduling issue during deactivation (Ivan Vecera) [1946986] - net: sched: fix packet stuck problem for lockless qdisc (Ivan Vecera) [1946986] - net/sched: act_ct: Remove redundant ct get and check (Ivan Vecera) [1946986] - net: sched: tapr: prevent cycle_time == 0 in parse_taprio_schedule (Ivan Vecera) [1946986] - tc-testing: add simple action test to verify batch change cleanup (Ivan Vecera) [1946986] - tc-testing: add simple action test to verify batch add cleanup (Ivan Vecera) [1946986] - tc-testing: add simple action change test (Ivan Vecera) [1946986] - selftests: forwarding: Add tc-police tests for packets per second (Ivan Vecera) [1946986] - selftests: tc-testing: add action police selftest for packets per second (Ivan Vecera) [1946986] - net: sched: Mundane typo fixes (Ivan Vecera) [1946986] - net/sched: cls_flower: use nla_get_be32 for TCA_FLOWER_KEY_FLAGS (Ivan Vecera) [1946986] - net/sched: cls_flower: use ntohs for struct flow_dissector_key_ports (Ivan Vecera) [1946986] - taprio: Handle short intervals and large packets (Ivan Vecera) [1946986] - net/sched: cls_flower: fix only mask bit check in the validate_ct_state (Ivan Vecera) [1946986] - treewide: Remove uninitialized_var() usage (Ivan Vecera) [1946986] - lockdep: Provide dummy forward declaration of *_is_held() helpers (Ivan Vecera) [1946986] - net: sched: Remove broken definitions and un-hide for !LOCKDEP (Ivan Vecera) [1946986] - net: sched: sch_teql: fix null-pointer dereference (Ivan Vecera) [1946986] - net: sched: fix err handler in tcf_action_init() (Ivan Vecera) [1946986] - net: sched: fix action overwrite reference counting (Ivan Vecera) [1946986] - Revert "net: sched: bump refcount for new action in ACT replace mode" (Ivan Vecera) [1946986] - net: cls_api: Fix uninitialised struct field bo->unlocked_driver_cb (Ivan Vecera) [1946986] - net: sched: bump refcount for new action in ACT replace mode (Ivan Vecera) [1946986] - net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct (Ivan Vecera) [1946986] - net/sched: act_police: add support for packet-per-second policing (Ivan Vecera) [1946986] - flow_offload: reject configuration of packet-per-second policing in offload drivers (Ivan Vecera) [1946986] - flow_offload: add support for packet-per-second policing (Ivan Vecera) [1946986] - net: sched: validate stab values (Ivan Vecera) [1946986] - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME (Ivan Vecera) [1946986] - sched: act_sample: Implement stats_update callback (Ivan Vecera) [1946986] - net: sched: avoid duplicates in classes dump (Ivan Vecera) [1946986] - net/sched: cls_flower: validate ct_state for invalid and reply flags (Ivan Vecera) [1946986] - net: sched: fix police ext initialization (Ivan Vecera) [1946986] - selftests: tc: Add generic mpls matching support for tc-flower (Ivan Vecera) [1946986] - selftests: tc: Add basic mpls_* matching support for tc-flower (Ivan Vecera) [1946986] - selftests: tc-testing: u32: Add tests covering sample option (Ivan Vecera) [1946986] - net: sched: Return the correct errno code (Ivan Vecera) [1946986] - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace (Ivan Vecera) [1946986] - selftests: forwarding: Fix spelling mistake "succeded" -> "succeeded" (Ivan Vecera) [1946986] - taprio: boolean values to a bool variable (Ivan Vecera) [1946986] - net_sched: fix RTNL deadlock again caused by request_module() (Ivan Vecera) [1946986] - cls_flower: call nla_ok() before nla_next() (Ivan Vecera) [1946986] - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs (Ivan Vecera) [1946986] - net/sched: sch_taprio: reset child qdiscs before freeing them (Ivan Vecera) [1946986] - net: sched: incorrect Kconfig dependencies on Netfilter modules (Ivan Vecera) [1946986] - treewide: replace '---help---' in Kconfig files with 'help' (Ivan Vecera) [1946986] - net/sched: cls_u32: simplify the return expression of u32_reoffload_knode() (Ivan Vecera) [1946986] - net: sched: fix spelling mistake in Kconfig "trys" -> "tries" (Ivan Vecera) [1946986] - net/sched: fq_pie: initialize timer earlier in fq_pie_init() (Ivan Vecera) [1946986] - net: sched: remove redundant 'rtnl_held' argument (Ivan Vecera) [1946986] - selftests: tc-testing: enable CONFIG_NET_SCH_RED as a module (Ivan Vecera) [1946986] - net: sched: alias action flags with TCA_ACT_ prefix (Ivan Vecera) [1946986] - treewide: rename nla_strlcpy to nla_strscpy. (Ivan Vecera) [1946986] - Modify return value of nla_strlcpy to match that of strscpy. (Ivan Vecera) [1946986] - Fix unefficient call to memset before memcpu in nla_strlcpy. (Ivan Vecera) [1946986] - net: sched: fix misspellings using misspell-fixer tool (Ivan Vecera) [1946986] - selftest: fix flower terse dump tests (Ivan Vecera) [1946986] - net: sched: implement action-specific terse dump (Ivan Vecera) [1946986] - net: cls_api: remove unneeded local variable in tc_dump_chain() (Ivan Vecera) [1946986] - openvswitch: fix send of uninitialized stack memory in ct limit reply (Antoine Tenart) [1950022] - net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct (Antoine Tenart) [1950022] - xsk: Clear pool even for inactive queues (Jiri Benc) [1882710] - xsk: Fix memory leak for failed bind (Jiri Benc) [1882710] - xsk: Return error code if force_zc is set (Jiri Benc) [1882710] - xsk: Change the tx writeable condition (Jiri Benc) [1882710] - xsk: Replace datagram_poll by sock_poll_wait (Jiri Benc) [1882710] - xdp: Handle MEM_TYPE_XSK_BUFF_POOL correctly in xdp_return_buff() (Jiri Benc) [1882710] - xsk: Fix incorrect netdev reference count (Jiri Benc) [1882710] - xsk: Fix umem cleanup bug at socket destruct (Jiri Benc) [1882710] - netdevsim: set .owner to THIS_MODULE (Jiri Benc) [1882710] - bpf: selftest: Use static globals in tcp_hdr_options and btf_skc_cls_ingress (Jiri Benc) [1882710] - xsk: Fix possible memory leak at socket close (Jiri Benc) [1882710] - samples/bpf: Set rlimit for memlock to infinity in all samples (Jiri Benc) [1882710] - bpf, selftests: Extend test_tc_redirect to use modified bpf_redirect_neigh() (Jiri Benc) [1882710] - bpf: Fix bpf_redirect_neigh helper api to support supplying nexthop (Jiri Benc) [1882710] - bpf, selftest: Fix flaky tcp_hdr_options test when adding addr to lo (Jiri Benc) [1882710] - bpf, selftests: Add redirect_peer selftest (Jiri Benc) [1882710] - bpf, selftests: Make redirect_neigh test more extensible (Jiri Benc) [1882710] - bpf: Add redirect_peer helper (Jiri Benc) [1882710] - bpf: Improve bpf_redirect_neigh helper description (Jiri Benc) [1882710] - bpf: Always return target ifindex in bpf_fib_lookup (Jiri Benc) [1882710] - xsk: Introduce padding between ring pointers (Jiri Benc) [1882710] - xsk: Remove internal DMA headers (Jiri Benc) [1882710] - bpf: selftest: Ensure the child sk inherited all bpf_sock_ops_cb_flags (Jiri Benc) [1882710] - bpf: tcp: Do not limit cb_flags when creating child sk from listen sk (Jiri Benc) [1882710] - bpf, selftests: Add redirect_neigh selftest (Jiri Benc) [1882710] - bpf: Add redirect_neigh helper as redirect drop-in (Jiri Benc) [1882710] - tools, bpf: Synchronise BPF UAPI header with tools (Jiri Benc) [1882710] - bpf: Fix formatting in documentation for BPF helpers (Jiri Benc) [1882710] - xsk: Fix a documentation mistake in xsk_queue.h (Jiri Benc) [1882710] - xsk: Fix possible crash in socket_release when out-of-memory (Jiri Benc) [1882710] - xsk: Fix refcount warning in xp_dma_map (Jiri Benc) [1882710] - tcp: Only init congestion control if not initialized already (Jiri Benc) [1882710] - xsk: Fix null check on error return path (Jiri Benc) [1882710] - xsk: Fix possible segfault at xskmap entry insertion (Jiri Benc) [1882710] - xsk: Fix possible segfault in xsk umem diagnostics (Jiri Benc) [1882710] - xsk: Fix use-after-free in failed shared_umem bind (Jiri Benc) [1882710] - xsk: Documentation for XDP_SHARED_UMEM between queues and netdevs (Jiri Benc) [1882710] - xsk: Add shared umem support between devices (Jiri Benc) [1882710] - xsk: Add shared umem support between queue ids (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Test for dma_need_sync earlier for better performance (Jiri Benc) [1882710] - xsk: Rearrange internal structs for better performance (Jiri Benc) [1882710] - xsk: Enable sharing of dma mappings (Jiri Benc) [1882710] - xsk: Move addrs from buffer pool to umem (Jiri Benc) [1882710] - xsk: Move xsk_tx_list and its lock to buffer pool (Jiri Benc) [1882710] - xsk: Move queue_id, dev and need_wakeup to buffer pool (Jiri Benc) [1882710] - xsk: Move fill and completion rings to buffer pool (Jiri Benc) [1882710] - xsk: Create and free buffer pool independently from umem (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Rename xsk zero-copy driver interfaces (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Pass buffer pool to driver instead of umem (Jiri Benc) [1882710] - tcp: bpf: Optionally store mac header in TCP_SAVE_SYN (Jiri Benc) [1882710] - bpf: selftests: Tcp header options (Jiri Benc) [1882710] - bpf: selftests: Add fastopen_connect to network_helpers (Jiri Benc) [1882710] - bpf: tcp: Allow bpf prog to write and parse TCP header option (Jiri Benc) [1882710] - bpf: sock_ops: Change some members of sock_ops_kern from u32 to u8 (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_hdr_opt_len() and bpf_skops_write_hdr_opt() (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_parse_hdr() (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_established() (Jiri Benc) [1882710] - tcp: Add saw_unknown to struct tcp_options_received (Jiri Benc) [1882710] - tcp: bpf: Add TCP_BPF_RTO_MIN for bpf_setsockopt (Jiri Benc) [1882710] - tcp: bpf: Add TCP_BPF_DELACK_MAX setsockopt (Jiri Benc) [1882710] - tcp: Use a struct to represent a saved_syn (Jiri Benc) [1882710] - tcp: tcp_init_buffer_space can be static (Jiri Benc) [1882710] - tcp: refactor setting the initial congestion window (Jiri Benc) [1882710] - tcp: fix code style in tcp_recvmsg() (Jiri Benc) [1882710] - tcp: duplicate clear of icsk_backoff (Jiri Benc) [1882710] - tcp: move rx_opt & syn_data_acked init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move tp->rack init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move app_limited init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move retrans_out, sacked_out, tlp_high_seq, last_oow_ack_time init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not clear urg_data in tcp_create_openreq_child (Jiri Benc) [1882710] - tcp: move snd_cwnd & snd_cwnd_cnt init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move mdev_us init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not clear srtt_us in tcp_create_openreq_child (Jiri Benc) [1882710] - tcp: do not clear packets_out in tcp_create_openreq_child() (Jiri Benc) [1882710] - tcp: move icsk_rto init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not set snd_ssthresh in tcp_create_openreq_child() (Jiri Benc) [1882710] - net-veth: Add type safety to veth_xdp_to_ptr() and veth_ptr_to_xdp() (Jiri Benc) [1882710] - net-tun: Eliminate two tun/xdp related function calls from vhost-net (Jiri Benc) [1882710] - net-tun: Add type safety to tun_xdp_to_ptr() and tun_ptr_to_xdp() (Jiri Benc) [1882710] - ipv4: Add helpers for neigh lookup for nexthop (Jiri Benc) [1882710] - net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Jiri Benc) [1882710] - tipc: better validate user input in tipc_nl_retrieve_key() (Xin Long) [1950093] - tipc: simplify the finalize work queue (Xin Long) [1958456] - tipc: wait and exit until all work queues are done (Xin Long) [1958456] - [s390] KVM: s390: diag9c (directed yield) forwarding (Claudio Imbrenda) [1874105] - kvm/svm: Reenable nesting (Dr. David Alan Gilbert) [1790949] - powerpc/papr_scm: Reduce error severity if nvdimm stats inaccessible (Steve Best) [1965193] - Revert "[redhat] redhat/configs: Update CONFIG_ARM64_CNP" (Mark Salter) [1949533] - arm64: kernel: disable CNP on Carmel (Mark Salter) [1949533]- redhat/configs: Enable CONFIG_MICROSOFT_MANA=m (Vitaly Kuznetsov) [1957820] - net: mana: Use int to check the return value of mana_gd_poll_cq() (Vitaly Kuznetsov) [1957820] - net: mana: fix PCI_HYPERV dependency (Vitaly Kuznetsov) [1957820] - net: mana: remove redundant initialization of variable err (Vitaly Kuznetsov) [1957820] - net: mana: Add a driver for Microsoft Azure Network Adapter (MANA) (Vitaly Kuznetsov) [1957820] - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (Vitaly Kuznetsov) [1957820] - net: evaluate net.ipvX.conf.all.ignore_routes_with_linkdown (Balazs Nemeth) [1957223] - net: evaluate net.ipv4.conf.all.proxy_arp_pvlan (Balazs Nemeth) [1957223] - netfilter: nf_log_syslog: Unset bridge logger in pernet exit (Phil Sutter) [1938214] - netfilter: nft_log: perform module load from nf_tables (Phil Sutter) [1938214] - netfilter: nft_dynset: fix timeouts later than 23 days (Phil Sutter) [1938214] - netfilter: nft_compat: make sure xtables destructors have run (Phil Sutter) [1938214] - netfilter: nftables: Add __printf() attribute (Phil Sutter) [1938214] - netfilter: nf_log: add module softdeps (Phil Sutter) [1938214] - netfilter: nf_log_common: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_bridge: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_netdev: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_ipv6: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: move inline nf_ip6_ext_hdr() function to a more appropriate header. (Phil Sutter) [1938214] - ipv6: Use ipv6_authlen for len (Phil Sutter) [1938214] - netfilter: nf_log_arp: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_ipv4: rename to nf_log_syslog (Phil Sutter) [1938214] - net/sched: cls_api: increase max_reclassify_loop (Davide Caratti) [1955136] - vsock/vmci: Remove redundant assignment to err (Stefano Garzarella) [1956861] - vsock/virtio: free queued packets when closing socket (Stefano Garzarella) [1956861] - net: vsock: Fix a typo (Stefano Garzarella) [1956861] - selinux: vsock: Set SID for socket returned by accept() (Stefano Garzarella) [1956861] - af_vsock: Assign the vsock transport considering the vsock address flags (Stefano Garzarella) [1956861] - af_vsock: Set VMADDR_FLAG_TO_HOST flag on the receive path (Stefano Garzarella) [1956861] - vsock_addr: Check for supported flag values (Stefano Garzarella) [1956861] - vm_sockets: Add VMADDR_FLAG_TO_HOST vsock flag (Stefano Garzarella) [1956861] - vm_sockets: Add flags field in the vsock address data structure (Stefano Garzarella) [1956861] - hv_sock: Remove the accept port restriction (Stefano Garzarella) [1956861] - hv_sock: use HV_HYP_PAGE_SIZE for Hyper-V communication (Stefano Garzarella) [1956861] - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME (Corinna Vinschen) [1958988] - net: ensure mac header is set in virtio_net_hdr_to_skb() (Balazs Nemeth) [1955441] - devlink: Fix dmac_filter trap name, align to its documentation (Petr Oros) [1935701] - devlink: Add DMAC filter generic packet trap (Petr Oros) [1935701] - devlink: Add blackhole_nexthop trap (Petr Oros) [1935701] - stm class: Fix module init return on allocation failure (Jiri Olsa) [1907791] - stm class: ftrace: Use different channel accroding to CPU (Jiri Olsa) [1907791] - stm class: ftrace: Enable supported trace export flag (Jiri Olsa) [1907791] - stm class: ftrace: Change dependency to TRACING (Jiri Olsa) [1907791] - stm class: Replace zero-length array with flexible-array (Jiri Olsa) [1907791] - stm class: sys-t: Fix the use of time_after() (Jiri Olsa) [1907791] - stm class: Lose the protocol driver when dropping its reference (Jiri Olsa) [1907791] - stm class: Fix a double free of stm_source_device (Jiri Olsa) [1907791] - stm class: Fix channel bitmap on 32-bit systems (Jiri Olsa) [1907791] - stm class: Fix channel free in stm output free path (Jiri Olsa) [1907791] - stm class: Prevent division by zero (Jiri Olsa) [1907791] - stm class: Fix an endless loop in channel allocation (Jiri Olsa) [1907791] - stm class: Fix a module refcount leak in policy creation error path (Jiri Olsa) [1907791] - stm class: Use memcat_p() (Jiri Olsa) [1907791] - stm class: heartbeat: Fix whitespace (Jiri Olsa) [1907791] - stm class: p_sys-t: Add support for CLOCKSYNC packets (Jiri Olsa) [1907791] - stm class: Add MIPI SyS-T protocol support (Jiri Olsa) [1907791] - stm class: Switch over to the protocol driver (Jiri Olsa) [1907791] - stm class: Factor out default framing protocol (Jiri Olsa) [1907791] - stm class: Add a helper for writing data packets (Jiri Olsa) [1907791] - stm class: Introduce framing protocol drivers (Jiri Olsa) [1907791] - stm class: Clean up stp_configfs_init (Jiri Olsa) [1907791] - stm class: Clarify configfs root type/operations names (Jiri Olsa) [1907791] - stm class: Rework policy node fallback (Jiri Olsa) [1907791] - lib: Add memcat_p(): paste 2 pointer arrays together (Jiri Olsa) [1907791] - tracing: Add trace_export support for trace_marker (Jiri Olsa) [1907791] - tracing: Add trace_export support for event trace (Jiri Olsa) [1907791] - tracing: Add flag to control different traces (Jiri Olsa) [1907791] - tracing: Make function ‘ftrace_exports’ static (Jiri Olsa) [1907791] - tipc: increment the tmp aead refcnt before attaching it (Xin Long) [1931312] - tipc: skb_linearize the head skb when reassembling msgs (Xin Long) [1912376] - scsi: target: core: Fix warning on realtime kernels (Maurizio Lombardi) [1956416] - scsi: bnx2fc: Fix a typo (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix misnaming of bnx2fc_free_session_resc() (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix typo in bnx2fc_indicate_kcqe() (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix comparison to bool warning (Nilesh Javali) [1921617] - scsi: bnx2fc: Remove unneeded semicolon (Nilesh Javali) [1921617] - scsi: bnx2fc: Make a bunch of symbols static in bnx2fc_fcoe.c (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix spelling mistake "couldnt" -> "couldn't" (Nilesh Javali) [1921617] - scsi: bnx2fc: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix a couple of bitrotted function documentation headers (Nilesh Javali) [1921617] - scsi: bnx2fc: Repair a range of kerneldoc issues (Nilesh Javali) [1921617] - scsi: bnx2fc: Removal of unused variables (Nilesh Javali) [1921617] - scsi: bnx2fc: Remove unneeded semicolon in bnx2fc_fcoe.c (Nilesh Javali) [1921617] - scsi: bnx2fc: Add missing annotation for bnx2fc_abts_cleanup() (Nilesh Javali) [1921617] - tools/power turbostat: Enable tsc_tweak for Elkhart Lake and Jasper Lake (Puneet Sethi) [1920704] - selinux: Allow context mounts for unpriviliged overlayfs (Miklos Szeredi) [1956486] - md-cluster: fix use-after-free issue when removing rdev (Nigel Croxon) [1956355] - md/bitmap: wait for external bitmap writes to complete during tear down (Nigel Croxon) [1956355] - md: do not return existing mddevs from mddev_find_or_alloc (Nigel Croxon) [1956355] - md: refactor mddev_find_or_alloc (Nigel Croxon) [1956355] - md: factor out a mddev_alloc_unit helper from mddev_find (Nigel Croxon) [1956355] - md: split mddev_find (Nigel Croxon) [1956355] - md: factor out a mddev_find_locked helper from mddev_find (Nigel Croxon) [1956355] - md: md_open returns -EBUSY when entering racing area (Nigel Croxon) [1956355] - md: Fix missing unused status line of /proc/mdstat (Nigel Croxon) [1956355] - md/raid10: improve discard request for far layout (Xiao Ni) [1956355] - md/raid10: improve raid10 discard request (Nigel Croxon) [1956355] - md/raid10: pull the code that wait for blocked dev into one function (Xiao Ni) [1956355] - md/raid10: extend r10bio devs to raid disks (Xiao Ni) [1956355] - md: add md_submit_discard_bio() for submitting discard bio (Nigel Croxon) [1956355] - leds: trigger: fix potential deadlock with libata (Waiman Long) [1963373] - x86/kvm: Unify kvm_pv_guest_cpu_reboot() with kvm_guest_cpu_offline() (Lenny Szubowicz) [1934273] - x86/kvm: Disable all PV features on crash (Lenny Szubowicz) [1934273] - x86/kvm: Disable kvmclock on all CPUs on shutdown (Lenny Szubowicz) [1934273] - x86/kvm: Teardown PV features on boot CPU as well (Lenny Szubowicz) [1934273] - x86/kvm: Fix pr_info() for async PF setup/teardown (Lenny Szubowicz) [1934273] - RDMA/qedr: Fix error return code in qedr_iw_connect() (Manish Chopra) [1914922] - qede: Use 'skb_add_rx_frag()' instead of hand coding it (Manish Chopra) [1914922] - qede: Remove a erroneous ++ in 'qede_rx_build_jumbo()' (Manish Chopra) [1914922] - qede: fix offload for IPIP tunnel packets (Manish Chopra) [1914922] - RDMA/qedr: iWARP invalid(zero) doorbell address fix (Manish Chopra) [1914922] - qed: fix ILT configuration of SRC block (Manish Chopra) [1914922] - qed: fix error return code in qed_iwarp_ll2_start() (Manish Chopra) [1914922] - RDMA/qedr: Fix resource leak in qedr_create_qp (Manish Chopra) [1914922] - qede: make driver reliable on unload after failures (Manish Chopra) [1914922] - net: qed: Remove unnecessary cast (Manish Chopra) [1914922] - nvme: fix NULL derefence in nvme_ctrl_fast_io_fail_tmo_show/store (Gopal Tiwari) [1935135] - nvme: export fast_io_fail_tmo to sysfs (Gopal Tiwari) [1935135] - EDAC: enable CONFIG_EDAC_IGEN6 (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: ecclog_llist can be static (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/i10nm: Add Intel Sapphire Rapids server support (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add DDR5 new memory type (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/i10nm: Use readl() to access MMIO registers (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: Add debugfs interface for Intel client SoC EDAC driver (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: Add EDAC driver for Intel client SoCs using IBECC (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add three new memory types (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC, {skx,i10nm}: Use CPU stepping macro to pass configurations (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/skx: Use the mcmtr register to retrieve close_pg/bank_xor_enable (Aristeu Rozanski) [1837389 1783539 1861479] - x86/cpu: Add a X86_MATCH_INTEL_FAM6_MODEL_STEPPINGS() macro (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[] (Aristeu Rozanski) [1837389 1783539 1861479] - x86: export x86_match_cpu_v2 (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/amd64: Fix PCI component registration (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId (Aristeu Rozanski) [1918583] - x86/CPU/AMD: Remove amd_get_nb_id() (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Make fam_ops static global (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Allow Reserved types to be overwritten in smca_banks[] (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Do not use rdmsr_safe_on_cpu() in smca_configure() (Aristeu Rozanski) [1918583] - EDAC/amd64: Get rid of the ECC disabled long message (Aristeu Rozanski) [1918583] - EDAC/amd64: Check for memory before fully initializing an instance (Aristeu Rozanski) [1918583] - EDAC/amd64: Use cached data when checking for ECC (Aristeu Rozanski) [1918583] - x86/MCE: Make the number of MCA banks a per-CPU variable (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Don't cache block addresses on SMCA systems (Aristeu Rozanski) [1918583] - x86/MCE: Make mce_banks a per-CPU array (Aristeu Rozanski) [1918583] - x86/MCE: Make struct mce_banks[] static (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Don't report L1 BTB MCA errors on some family 17h models (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Decode MCA_STATUS in bit definition order (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Decode MCA_STATUS[Scrub] bit (Aristeu Rozanski) [1918583] - EDAC, mce_amd: Match error descriptions to latest documentation (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Carve out the MC4_MISC thresholding quirk (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Turn off MC4_MISC thresholding on all family 0x15 models (Aristeu Rozanski) [1918583] - powerpc/64s: Fix unrelocated interrupt trampoline address test (Waiman Long) [1966462] - intel_th: pci: Add Alder Lake CPU support (Jiri Olsa) [1840246] - intel_th: pci: Add Alder Lake-S support (Jiri Olsa) [1840246] - mfd: intel_pmt: Add support for DG1 (David Arcari) [1783144] - mfd: intel_pmt: Fix nuisance messages and handling of disabled capabilities (David Arcari) [1783144] - redhat/configs: Add CONFIG_INTEL_PMT_CRASHLOG (David Arcari) [1783144] - redhat/configs: Add CONFIG_INTEL_PMT_TELEMETRY (David Arcari) [1783144] - redhat/configs: Add CONFIG_MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt_crashlog: Add dependency on MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt_telemetry: Add dependency on MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt: Make INTEL_PMT_CLASS non-user-selectable (David Arcari) [1783144] - platform/x86: intel_pmt_crashlog: Fix incorrect macros (David Arcari) [1783144] - platform/x86: intel_pmt_class: Initial resource to 0 (David Arcari) [1783144] - mfd: Standardise MFD_CELL_* helper names (David Arcari) [1783144] - platform/x86: pmt: Fix a potential Oops on error in probe (David Arcari) [1783144] - platform/x86: Intel PMT Crashlog capability driver (David Arcari) [1783144] - platform/x86: Intel PMT Telemetry capability driver (David Arcari) [1783144] - platform/x86: Intel PMT class driver (David Arcari) [1783144] - mfd: Intel Platform Monitoring Technology support (David Arcari) [1783144] - mfd: mfd-core: Ensure disabled devices are ignored without error (David Arcari) [1783144] - mfd: core: Fix double-free in mfd_remove_devices_fn() (David Arcari) [1783144] - mfd: mfd-core: Add mechanism for removal of a subset of children (David Arcari) [1783144] - mfd: core: Add OF_MFD_CELL_REG() helper (David Arcari) [1783144] - mfd: core: Fix formatting of MFD helpers (David Arcari) [1783144] - mfd: core: Make a best effort attempt to match devices with the correct of_nodes (David Arcari) [1783144] - mfd: mfd-core: Complete kerneldoc header for devm_mfd_add_devices() (David Arcari) [1783144] - mfd: Constify properties in mfd_cell (David Arcari) [1783144] - mfd: mfd-core: Honour Device Tree's request to disable a child-device (David Arcari) [1783144] - mfd: mfd-core: Move pdev->mfd_cell creation back into mfd_add_device() (David Arcari) [1783144] - mfd: mfd-core: Remove usage counting for .{en,dis}able() call-backs (David Arcari) [1783144] - mfd: mfd-core: Protect against NULL call-back function pointer (David Arcari) [1783144] - mfd: mfd-core: Remove mfd_clone_cell() (David Arcari) [1783144] - mfd: Provide MACRO to declare commonly defined MFD cell attributes (David Arcari) [1783144] - mfd: core: Set fwnode for created devices (David Arcari) [1783144] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (David Arcari) [1783144] - mfd: mfd-core: Document mfd_add_devices() (David Arcari) [1783144] - PCI: Add defines for Designated Vendor-Specific Extended Capability (David Arcari) [1783144] - tick/nohz: Update idle_exittime on actual idle exit (Phil Auld) [1962632] - tick/nohz: Remove superflous check for CONFIG_VIRT_CPU_ACCOUNTING_NATIVE (Phil Auld) [1962632] - tick/nohz: Conditionally restart tick on idle exit (Phil Auld) [1962632] - x86, sched: Fix the AMD CPPC maximum performance value on certain AMD Ryzen generations (Phil Auld) [1960687] - pinctrl: devicetree: Avoid taking direct reference to device name string (Aristeu Rozanski) [1922904] {CVE-2020-0427} - redhat: ppc64: enable CONFIG_PPC_RTAS_FILTER (Aristeu Rozanski) [1906444] {CVE-2020-27777} - powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter (Aristeu Rozanski) [1906444] {CVE-2020-27777} - powerpc/rtas: Restrict RTAS requests from userspace (Aristeu Rozanski) [1906444] {CVE-2020-27777}- docs: vxlan: add info about device features (Petr Oros) [1941739] - selftests: net: add a test for static UDP tunnel ports (Petr Oros) [1941739] - netdevsim: support the static IANA VXLAN port flag (Petr Oros) [1941739] - selftests: net: add a test for shared UDP tunnel info tables (Petr Oros) [1941739] - netdevsim: shared UDP tunnel port table support (Petr Oros) [1941739] - netdevsim: add warnings on unexpected UDP tunnel port errors (Petr Oros) [1941739] - udp_tunnel: add the ability to share port tables (Petr Oros) [1941739] - docs: networking: convert vxlan.txt to ReST (Petr Oros) [1941739] - net: Treat __napi_schedule_irqoff() as __napi_schedule() on PREEMPT_RT (Ivan Vecera) [1960528] - ethtool: fix incorrect datatype in set_eee ops (Balazs Nemeth) [1956698] - ethtool: fix missing NLM_F_MULTI flag when dumping (Antoine Tenart) [1953847] - y2038: remove CONFIG_64BIT_TIME (Waiman Long) [1965360] - net/mlx4: Fix EEPROM dump support (Alaa Hleihel) [1915305] - net/mlx4_en: update moderation when config reset (Alaa Hleihel) [1915305] - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() (Alaa Hleihel) [1915305] - IB/mlx4: Use port iterator and validation APIs (Alaa Hleihel) [1915305] - net/mlx4: Use effective interrupt affinity (Alaa Hleihel) [1915302 1915305] - net/mlx4: Replace irq_to_desc() abuse (Alaa Hleihel) [1915302 1915305] - net/mlx4: simplify the return expression of mlx4_init_srq_table() (Alaa Hleihel) [1915302 1915305] - RDMA/mlx4: Remove bogus dev_base_lock usage (Alaa Hleihel) [1915302 1915305] - net/mlx4: simplify the return expression of mlx4_init_cq_table() (Alaa Hleihel) [1915302 1915305] - net/mlx4: Remove unused #define MAX_MSIX_P_PORT (Alaa Hleihel) [1915302 1915305] - RDMA/mlx4: Enable querying AH for XRC QP types (Alaa Hleihel) [1915302 1915305] - IB/mlx4: Fix fall-through warnings for Clang (Alaa Hleihel) [1915302 1915305] - net/mlx4_en: Remove unused performance counters (Alaa Hleihel) [1915302 1915305] - net/mlx4: Assign boolean values to a bool variable (Alaa Hleihel) [1915302 1915305] - net/mlx4: Cleanup kernel-doc warnings (Alaa Hleihel) [1915302 1915305] - net/mlx4_core : remove unneeded semicolon (Alaa Hleihel) [1915302 1915305] - net/mlx4_core: Fix init_hca fields offset (Alaa Hleihel) [1915301 1915305] - mlx4: handle non-napi callers to napi_poll (Alaa Hleihel) [1915301 1915305] - mlx4: drivers/net/ethernet: clean up unused assignments (Alaa Hleihel) [1915301 1915305] - mlx4: add pause frame stats (Alaa Hleihel) [1915301 1915305] - mlx4: make sure to always set the port type (Alaa Hleihel) [1915301 1915305] - net/mlx4_en: RX, Add a prefetch command for small L1_CACHE_BYTES (Alaa Hleihel) [1915301 1915305] - cnic: remove redundant assignment to variable ret (Nilesh Javali) [1921619] - net: cnic: fix spelling mistake "reserverd" -> "reserved" (Nilesh Javali) [1921619] - cnic: Explicitly initialize all reference counts to 0. (Nilesh Javali) [1921619] - cfg80211: fix locking in netlink owner interface destruction (Jarod Wilson) [1937053] - brcmfmac: Avoid GFP_ATOMIC when GFP_KERNEL is enough (Jarod Wilson) [1937053] - ath11k: fix warning in ath11k_mhi_config (Jarod Wilson) [1937053] - ath11k: qmi: Fix spelling mistake "requeqst" -> "request" (Jarod Wilson) [1937053] - ath10k: Fix ath10k_wmi_tlv_op_pull_peer_stats_info() unlock without lock (Jarod Wilson) [1937053] - ath10k: Fix a use after free in ath10k_htc_send_bundle (Jarod Wilson) [1937053] - ath9k: Fix error check in ath9k_hw_read_revisions() for PCI devices (Jarod Wilson) [1937053] - mt76: mt7921: reinit wpdma during drv_own if necessary (Jarod Wilson) [1937053] - mt76: move mt76_token_init in mt76_alloc_device (Jarod Wilson) [1937053] - mt76: mt7921: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7915: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7615: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_mcu_sta_add routine (Jarod Wilson) [1937053] - mt76: mt7921: mt7921_stop should put device in fw_own state (Jarod Wilson) [1937053] - mt76: connac: unschedule mac_work before going to sleep (Jarod Wilson) [1937053] - mt76: mt7663: add awake and doze time accounting (Jarod Wilson) [1937053] - mt76: mt7921: improve doze opportunity (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mcu_reset function pointer (Jarod Wilson) [1937053] - mt76: mt7915: do not read rf value from efuse in flash mode (Jarod Wilson) [1937053] - mt76: move token utilities in mt76 common module (Jarod Wilson) [1937053] - mt76: move token_lock, token and token_count in mt76_dev (Jarod Wilson) [1937053] - mt76: mt7921: fix possible invalid register access (Jarod Wilson) [1937053] - mt76: mt7921: enable deep sleep when the device suspends (Jarod Wilson) [1937053] - mt76: connac: introduce mt76_connac_mcu_set_deep_sleep utility (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_wpdma_reinit_cond utility routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_dma_{enable,disable} utilities (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_wpdma_reset utility routine (Jarod Wilson) [1937053] - mt76: mt7921: move mt7921_dma_reset in dma.c (Jarod Wilson) [1937053] - mt76: mt7615: Fix a dereference of pointer sta before it is null checked (Jarod Wilson) [1937053] - mt76: mt7921: enable sw interrupts (Jarod Wilson) [1937053] - mt76: mt7921: add awake and doze time accounting (Jarod Wilson) [1937053] - mt76: remove MT76_STATE_PM in tx path (Jarod Wilson) [1937053] - mt76: connac: use waitqueue for runtime-pm (Jarod Wilson) [1937053] - mt76: connac: do not run mt76_txq_schedule_all directly (Jarod Wilson) [1937053] - mt76: mt7615: rely on pm refcounting in mt7615_led_set_config (Jarod Wilson) [1937053] - mt76: connac: alaways wake the device before scanning (Jarod Wilson) [1937053] - mt76: mt7921: get rid of useless MT76_STATE_PM in mt7921_mac_work (Jarod Wilson) [1937053] - mt76: connac: remove MT76_STATE_PM in mac_tx_free (Jarod Wilson) [1937053] - mt76: connac: check wake refcount in mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: connac: unschedule ps_work in mt76_connac_pm_wake (Jarod Wilson) [1937053] - mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi (Jarod Wilson) [1937053] - mt76: dma: add the capability to define a custom rx napi poll routine (Jarod Wilson) [1937053] - mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Jarod Wilson) [1937053] - mt76: connac: introduce wake counter for fw_pmctrl synchronization (Jarod Wilson) [1937053] - mt76: mt7663: fix a race between mt7615_mcu_drv_pmctrl and mt7615_mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: mt7921: fix a race between mt7921_mcu_drv_pmctrl and mt7921_mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: mt7921: remove leftover function declaration (Jarod Wilson) [1937053] - mt76: connac: move mcu_update_arp_filter in mt76_connac module (Jarod Wilson) [1937053] - mt76: mt7921: do not use 0 as NULL pointer (Jarod Wilson) [1937053] - mt76: mt7915: directly read per-rate tx power from registers (Jarod Wilson) [1937053] - mt76: mt7915: rework the flow of txpower setting (Jarod Wilson) [1937053] - mt76: mt7915: add support for DT rate power limits (Jarod Wilson) [1937053] - mt76: mt7921: abort uncompleted scan by wifi reset (Jarod Wilson) [1937053] - mt76: mt7921: add wifisys reset support in debugfs (Jarod Wilson) [1937053] - mt76: mt7921: run mt7921_mcu_fw_log_2_host holding mt76 mutex (Jarod Wilson) [1937053] - mt76: improve mcu error logging (Jarod Wilson) [1937053] - mt76: mt7921: move hw configuration in mt7921_register_device (Jarod Wilson) [1937053] - mt76: mt7915: add support for applying pre-calibration data (Jarod Wilson) [1937053] - mt76: mt7615: load ROM patch before checking patch semaphore status (Jarod Wilson) [1937053] - mt76: mt7615: fix entering driver-own state on mt7663 (Jarod Wilson) [1937053] - mt76: mt7615: fix hardware error recovery for mt7663 (Jarod Wilson) [1937053] - mt76: mt7921: add dumping Tx power table (Jarod Wilson) [1937053] - mt76: introduce single-sku support for mt7663/mt7921 (Jarod Wilson) [1937053] - mt76: mt7615: do not use mt7615 single-sku values for mt7663 (Jarod Wilson) [1937053] - mt76: mt7615: implement support for using DT rate power limits (Jarod Wilson) [1937053] - mt76: extend DT rate power limits to support 11ax devices (Jarod Wilson) [1937053] - mt76: add functions for parsing rate power limits from DT (Jarod Wilson) [1937053] - mt76: flush tx status queue on DMA reset (Jarod Wilson) [1937053] - mt76: mt7921: add mt7921_dma_cleanup in mt7921_unregister_device (Jarod Wilson) [1937053] - mt76: mt7615: use ieee80211_free_txskb() in mt7615_tx_token_put() (Jarod Wilson) [1937053] - mt76: mt7615: only free skbs after mt7615_dma_reset() when reset happens (Jarod Wilson) [1937053] - mt76: mt7915: only free skbs after mt7915_dma_reset() when reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix memleak when mt7915_unregister_device() (Jarod Wilson) [1937053] - mt76: mt7615: fix memleak when mt7615_unregister_device() (Jarod Wilson) [1937053] - mt76: mt7915: fix rate setting of tx descriptor in testmode (Jarod Wilson) [1937053] - mt76: mt7915: rework mt7915_tm_set_tx_len() (Jarod Wilson) [1937053] - mt76: testmode: add support to send larger packet (Jarod Wilson) [1937053] - rtlwifi: implement set_tim by update beacon content (Jarod Wilson) [1937053] - rtw88: refine napi deinit flow (Jarod Wilson) [1937053] - rtw88: Fix potential unrecoverable tx queue stop (Jarod Wilson) [1937053] - rtw88: 8821c: Don't set RX_FLAG_DECRYPTED if packet has no encryption (Jarod Wilson) [1937053] - rtw88: 8822c: debug: allow debugfs to enable/disable TXGAPK (Jarod Wilson) [1937053] - rtw88: 8822c: Add gap-k calibration to improve long range performance (Jarod Wilson) [1937053] - rtw88: 8822c: reorder macro position according to the register number (Jarod Wilson) [1937053] - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_gen2_enqueue_hcmd() (Jarod Wilson) [1937053] - cfg80211: scan: drop entry from hidden_list on overflow (Jarod Wilson) [1937053] - wireless: fix spelling of A-MSDU in HE capabilities (Jarod Wilson) [1937053] - wireless: align HE capabilities A-MPDU Length Exponent Extension (Jarod Wilson) [1937053] - wireless: align some HE capabilities with the spec (Jarod Wilson) [1937053] - mac80211: drop the connection if firmware crashed while in CSA (Jarod Wilson) [1937053] - nl80211: Add new RSNXE related nl80211 extended features (Jarod Wilson) [1937053] - mac80211: properly drop the connection in case of invalid CSA IE (Jarod Wilson) [1937053] - mac80211: make ieee80211_vif_to_wdev work when the vif isn't in the driver (Jarod Wilson) [1937053] - nl80211/cfg80211: add a flag to negotiate for LMR feedback in NDP ranging (Jarod Wilson) [1937053] - ieee80211: add the values of ranging parameters max LTF total field (Jarod Wilson) [1937053] - mac80211: aes_cmac: check crypto_shash_setkey() return value (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove extraneous indentation on if statement (Jarod Wilson) [1937053] - mac80211: properly process TXQ management frames (Jarod Wilson) [1937053] - cfg80211: constify ieee80211_get_response_rate return (Jarod Wilson) [1937053] - cfg80211: fix a few kernel-doc warnings (Jarod Wilson) [1937053] - cfg80211: fix an htmldoc warning (Jarod Wilson) [1937053] - rtw88: 8822c: add CFO tracking (Jarod Wilson) [1937053] - iwlwifi: pcie: don't enable BHs with IRQs disabled (Jarod Wilson) [1937053] - rtw88: Fix array overrun in rtw_get_tx_power_params() (Jarod Wilson) [1937053] - brcmfmac: Remove duplicate struct declaration (Jarod Wilson) [1937053] - rtw88: update statistics to fw for fine-tuning performance (Jarod Wilson) [1937053] - brcmfmac: A typo fix (Jarod Wilson) [1937053] - rtl8xxxu: Simplify locking of a skb list accesses (Jarod Wilson) [1937053] - mwifiex: Remove unneeded variable: "ret" (Jarod Wilson) [1937053] - rtl8xxxu: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mwifiex: don't print SSID to logs (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: Use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - rtlwifi: Simplify locking of a skb list accesses (Jarod Wilson) [1937053] - rtlwifi: remove rtl_get_tid_h (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: remove redundant assignment of variable rtlpriv->btcoexist.reg_bt_sco (Jarod Wilson) [1937053] - rtlwifi: remove redundant assignment to variable err (Jarod Wilson) [1937053] - rtlwifi: Few mundane typo fixes (Jarod Wilson) [1937053] - rtlwifi: 8821ae: upgrade PHY and RF parameters (Jarod Wilson) [1937053] - iwlwifi: dbg: disable ini debug in 9000 family and below (Jarod Wilson) [1937053] - iwlwifi: pcie: Change ma product string name (Jarod Wilson) [1937053] - iwlwifi: fw: print out trigger delay when collecting data (Jarod Wilson) [1937053] - iwlwifi: trans/pcie: defer transport initialisation (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 63 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: don't WARN if we can't remove a time event (Jarod Wilson) [1937053] - iwlwifi: mvm: don't disconnect immediately if we don't hear beacons after CSA (Jarod Wilson) [1937053] - iwlwifi: rs-fw: don't support stbc for HE 160 (Jarod Wilson) [1937053] - iwlwifi: warn on SKB free w/o op-mode (Jarod Wilson) [1937053] - iwlwifi: mvm: add support for version 3 of LARI_CONFIG_CHANGE command. (Jarod Wilson) [1937053] - iwlwifi: pcie: add ISR debug info for msix debug (Jarod Wilson) [1937053] - iwlwifi: pcie: merge napi_poll_msix functions (Jarod Wilson) [1937053] - iwlwifi: mvm: don't lock mutex in RCU critical section (Jarod Wilson) [1937053] - iwlwifi: mvm: remove PS from lower rates. (Jarod Wilson) [1937053] - iwlwifi: mvm: umac error table mismatch (Jarod Wilson) [1937053] - iwlwifi: queue: avoid memory leak in reset flow (Jarod Wilson) [1937053] - iwlwifi: don't warn if we can't wait for empty tx queues (Jarod Wilson) [1937053] - iwlwifi: remove remaining software checksum code (Jarod Wilson) [1937053] - iwlwifi: remove TCM events (Jarod Wilson) [1937053] - iwlwifi: mvm: Use IWL_INFO in fw_reset_handshake() (Jarod Wilson) [1937053] - iwlwifi: mvm: refactor ACPI DSM evaluation function (Jarod Wilson) [1937053] - iwlwifi: mvm: support BIOS enable/disable for 11ax in Ukraine (Jarod Wilson) [1937053] - iwlwifi: move iwl_configure_rxq to be used by other op_modes (Jarod Wilson) [1937053] - iwlwifi: add new so-gf device (Jarod Wilson) [1937053] - iwlwifi: mvm: enable PPAG in China (Jarod Wilson) [1937053] - iwlwifi: mvm: Add support for 6GHz passive scan (Jarod Wilson) [1937053] - iwlwifi: add ax201 killer device (Jarod Wilson) [1937053] - iwlwifi: mvm: when associated with PMF, use protected NDP ranging negotiation (Jarod Wilson) [1937053] - iwlwifi: mvm: clean up queue sync implementation (Jarod Wilson) [1937053] - iwlwifi: mvm: write queue_sync_state only for sync (Jarod Wilson) [1937053] - iwlwifi: mvm: responder: support responder config command version 8 (Jarod Wilson) [1937053] - iwlwifi: mvm: support range request command version 12 (Jarod Wilson) [1937053] - iwlwifi: pcie: make cfg vs. trans_cfg more robust (Jarod Wilson) [1937053] - iwlwifi: pcie: clear only FH bits handle in the interrupt (Jarod Wilson) [1937053] - iwlwifi: add 160Mhz to killer 1550 name (Jarod Wilson) [1937053] - iwlwifi: change name to AX 211 and 411 family (Jarod Wilson) [1937053] - iwlwifi: change step in so-gf struct (Jarod Wilson) [1937053] - iwlwifi: pcie: Add support for Bz Family (Jarod Wilson) [1937053] - iwlwifi: mvm: don't allow CSA if we haven't been fully associated (Jarod Wilson) [1937053] - iwlwifi: pcie: normally grab NIC access for inflight-hcmd (Jarod Wilson) [1937053] - iwlwifi: pcie: avoid unnecessarily taking spinlock (Jarod Wilson) [1937053] - iwlwifi: mvm: enable TX on new CSA channel before disconnecting (Jarod Wilson) [1937053] - mt76: mt7921: add rcu section in mt7921_mcu_tx_rate_report (Jarod Wilson) [1937053] - mt76: mt7921: introduce MCU_EVENT_LP_INFO event parsing (Jarod Wilson) [1937053] - mt76: mt7615: always add rx header translation tlv when adding stations (Jarod Wilson) [1937053] - mt76: mt7615: add missing SPDX tag in mmio.c (Jarod Wilson) [1937053] - mt76: mt7915: add mmio.c (Jarod Wilson) [1937053] - mt76: report Rx timestamp (Jarod Wilson) [1937053] - mt76: mt7921: remove 80+80 MHz support capabilities (Jarod Wilson) [1937053] - mt76: fix potential DMA mapping leak (Jarod Wilson) [1937053] - mt76: mt7921: reduce the data latency during hw scan (Jarod Wilson) [1937053] - mt76: mt7921: fix the insmod hangs (Jarod Wilson) [1937053] - mt76: mt7921: fix kernel crash when the firmware fails to download (Jarod Wilson) [1937053] - mt76: mt7921: fix the dwell time control (Jarod Wilson) [1937053] - mt76: mt7921: fix inappropriate WoW setup with the missing ARP informaiton (Jarod Wilson) [1937053] - mt76: mt7921: introduce MT_WFDMA_DUMMY_CR definition (Jarod Wilson) [1937053] - mt76: mt7915: add wifi subsystem reset (Jarod Wilson) [1937053] - mt76: mt7915: fix mt7915_mcu_add_beacon (Jarod Wilson) [1937053] - mt76: mt7615: fix .add_beacon_offload() (Jarod Wilson) [1937053] - mt76: mt7921: rework mt7921_mcu_debug_msg_event routine (Jarod Wilson) [1937053] - mt76: mt7921: always wake the device in mt7921_remove_interface (Jarod Wilson) [1937053] - mt76: mt7921: fix key set/delete issue (Jarod Wilson) [1937053] - mt76: mt7915: fix txpower init for TSSI off chips (Jarod Wilson) [1937053] - mt76: mt7915: limit firmware log message printk to buffer length (Jarod Wilson) [1937053] - mt76: mt7615: limit firmware log message printk to buffer length (Jarod Wilson) [1937053] - mt76: mt7615: fix chip reset on MT7622 and MT7663e (Jarod Wilson) [1937053] - mt76: mt7915: cleanup mcu tx queue in mt7915_dma_reset() (Jarod Wilson) [1937053] - mt76: mt7915: keep mcu_add_bss_info enabled till interface removal (Jarod Wilson) [1937053] - mt76: mt7615: keep mcu_add_bss_info enabled till interface removal (Jarod Wilson) [1937053] - mt76: mt7622: trigger hif interrupt for system reset (Jarod Wilson) [1937053] - mt76: mt7615: cleanup mcu tx queue in mt7615_dma_reset() (Jarod Wilson) [1937053] - mt76: mt7615: only enable DFS test knobs for mt7615 (Jarod Wilson) [1937053] - mt76: mt7921: properly configure rcpi adding a sta to the fw (Jarod Wilson) [1937053] - mt76: connac: introduce mt76_sta_cmd_info data structure (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mt7921_mac_wtbl_lmac_addr (Jarod Wilson) [1937053] - mt76: mt7915: refresh repeater entry MAC address when setting BSSID (Jarod Wilson) [1937053] - mt76: mt7915: fix key set/delete issue (Jarod Wilson) [1937053] - mt76: mt7921: remove duplicated macros in mcu.h (Jarod Wilson) [1937053] - mt76: mt7921: remove redundant check on type (Jarod Wilson) [1937053] - mt76: mt7921: remove leftovers from dbdc configuration (Jarod Wilson) [1937053] - mt76: mt7921: add wifi reset support (Jarod Wilson) [1937053] - mt76: dma: export mt76_dma_rx_cleanup routine (Jarod Wilson) [1937053] - mt76: dma: introduce mt76_dma_queue_reset routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce __mt7921_start utility routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_run_firmware utility routine. (Jarod Wilson) [1937053] - mt76: introduce mcu_reset function pointer in mt76_mcu_ops structure (Jarod Wilson) [1937053] - mt76: mt7921: reduce mcu timeouts for suspend, offload and hif_ctrl msg (Jarod Wilson) [1937053] - mt76: mt7915: fix possible deadlock while mt7915_register_ext_phy() (Jarod Wilson) [1937053] - mt76: mt7615: add missing capabilities for DBDC (Jarod Wilson) [1937053] - mt76: mt7663s: fix the possible device hang in high traffic (Jarod Wilson) [1937053] - mt76: mt7663s: make all of packets 4-bytes aligned in sdio tx aggregation (Jarod Wilson) [1937053] - mt76: mt7663: fix when beacon filter is being applied (Jarod Wilson) [1937053] - mt76: mt7615: check mcu returned values in mt7615_ops (Jarod Wilson) [1937053] - mt76: mt7915: check mcu returned values in mt7915_ops (Jarod Wilson) [1937053] - mt76: mt7915: fix txrate reporting (Jarod Wilson) [1937053] - mt76: mt7915: fix rxrate reporting (Jarod Wilson) [1937053] - mt76: mt76x0u: Add support for TP-Link T2UHP(UN) v1 (Jarod Wilson) [1937053] - mt76: mt7915: fix PHY mode for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: stop ext_phy queue when mac reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix CSA notification for DBDC (Jarod Wilson) [1937053] - mt76: mt7615: stop ext_phy queue when mac reset happens (Jarod Wilson) [1937053] - mt76: mt7615: fix CSA notification for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: add missing capabilities for DBDC (Jarod Wilson) [1937053] - mt76: mt7921: check mcu returned values in mt7921_start (Jarod Wilson) [1937053] - mt76: mt7921: fix the base of the dynamic remap (Jarod Wilson) [1937053] - mt76: mt7921: fix the base of PCIe interrupt (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mt7921_sta_rc_update routine (Jarod Wilson) [1937053] - mt76: check return value of mt76_txq_send_burst in mt76_txq_schedule_list (Jarod Wilson) [1937053] - mt76: connac: fix kernel warning adding monitor interface (Jarod Wilson) [1937053] - mt76: mt7915: fix mib stats counter reporting to mac80211 (Jarod Wilson) [1937053] - mt76: mt7615: fix mib stats counter reporting to mac80211 (Jarod Wilson) [1937053] - mt76: mt7615: remove hdr->fw_ver check (Jarod Wilson) [1937053] - mt76: mt7615: fix TSF configuration (Jarod Wilson) [1937053] - mt76: mt7921: fix stats register definitions (Jarod Wilson) [1937053] - mt76: mt7921: remove unneeded semicolon (Jarod Wilson) [1937053] - mt76: mt7915: fix aggr len debugfs node (Jarod Wilson) [1937053] - mt76: mt7921: fix aggr length histogram (Jarod Wilson) [1937053] - mt76: mt7615: fix memory leak in mt7615_coredump_work (Jarod Wilson) [1937053] - mt76: mt7615: add support for rx decapsulation offload (Jarod Wilson) [1937053] - mt76: mt7615: add rx checksum offload support (Jarod Wilson) [1937053] - mt76: mt7615: enable hw rx-amsdu de-aggregation (Jarod Wilson) [1937053] - mt76: connac: update sched_scan cmd usage (Jarod Wilson) [1937053] - mt76: mt7921: add flush operation (Jarod Wilson) [1937053] - mt76: mt7921: fixup rx bitrate statistics (Jarod Wilson) [1937053] - mt76: connac: fix up the setting for ht40 mode in mt76_connac_mcu_uni_add_bss (Jarod Wilson) [1937053] - mt76: mt7921: switch to new api for hardware beacon filter (Jarod Wilson) [1937053] - mt76: mt7921: fix memory leak in mt7921_coredump_work (Jarod Wilson) [1937053] - mt76: mt7921: fix suspend/resume sequence (Jarod Wilson) [1937053] - mt76: use PCI_VENDOR_ID_MEDIATEK to avoid open coded (Jarod Wilson) [1937053] - mt76: mt7915: always check return value from mt7915_mcu_alloc_wtbl_req (Jarod Wilson) [1937053] - mt76: connac: always check return value from mt76_connac_mcu_alloc_wtbl_req (Jarod Wilson) [1937053] - mt76: mt76x0: disable GTK offloading (Jarod Wilson) [1937053] - mt76: always use WTBL_MAX_SIZE for tlv allocation (Jarod Wilson) [1937053] - mt76: mt7921: removed unused definitions in mcu.h (Jarod Wilson) [1937053] - mt76: mt7921: remove unnecessary variable (Jarod Wilson) [1937053] - mt76: mt7921: enable random mac addr during scanning (Jarod Wilson) [1937053] - mt76: mt7615: support loading EEPROM for MT7613BE (Jarod Wilson) [1937053] - mt76: mt7915: fix tx skb dma unmap (Jarod Wilson) [1937053] - mt76: mt7615: fix tx skb dma unmap (Jarod Wilson) [1937053] - mt76: mt7615: fix key set/delete issues (Jarod Wilson) [1937053] - mt76: mt7915: add support for rx decapsulation offload (Jarod Wilson) [1937053] - mt76: mt7915: add rx checksum offload support (Jarod Wilson) [1937053] - mt76: mt7915: enable hw rx-amsdu de-aggregation (Jarod Wilson) [1937053] - mt76: add support for 802.3 rx frames (Jarod Wilson) [1937053] - cfg80211: Remove wrong RNR IE validation check (Jarod Wilson) [1937053] - mac80211: bail out if cipher schemes are invalid (Jarod Wilson) [1937053] - mac80211: clear the beacon's CRC after channel switch (Jarod Wilson) [1937053] - mac80211: Set priority and queue mapping for injected frames (Jarod Wilson) [1937053] - mac80211: Allow concurrent monitor iface and ethernet rx decap (Jarod Wilson) [1937053] - nl80211: Add interface to indicate TDLS peer's HE capability (Jarod Wilson) [1937053] - cfg80211: allow specifying a reason for hw_rfkill (Jarod Wilson) [1937053] - nl80211: better document CMD_ROAM behavior (Jarod Wilson) [1937053] - mac80211: set sk_pacing_shift for 802.3 txpath (Jarod Wilson) [1937053] - mac80211: don't apply flow control on management frames (Jarod Wilson) [1937053] - nl80211: Add missing line in nl80211_fils_discovery_policy (Jarod Wilson) [1937053] - mac80211: remove redundant assignment of variable result (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove unused variable 'mg' in minstrel_ht_next_jump_rate() (Jarod Wilson) [1937053] - cfg80211: regulatory: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - mac80211_hwsim: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - rfkill: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - mt7601u: enable TDLS support (Jarod Wilson) [1937053] - mt7601u: fix always true expression (Jarod Wilson) [1937053] - rtw88: Fix an error code in rtw_debugfs_set_rsvd_page() (Jarod Wilson) [1937053] - rtw88: coex: fix A2DP stutters while WL busy + WL scan (Jarod Wilson) [1937053] - rtw88: 8822c: add LC calibration for RTL8822C (Jarod Wilson) [1937053] - rtw88: 8822c: update tx power limit table to RF v40.1 (Jarod Wilson) [1937053] - rtw88: fix DIG min setting (Jarod Wilson) [1937053] - rtw88: add flush hci support (Jarod Wilson) [1937053] - rtw88: 8822c: support FW crash dump when FW crash (Jarod Wilson) [1937053] - rtw88: remove unnecessary variable (Jarod Wilson) [1937053] - rtw88: coex: add power off setting (Jarod Wilson) [1937053] - ath11k: Add support for STA to handle beacon miss (Jarod Wilson) [1937053] - ath11k: Update signal filled flag during sta_statistics drv op (Jarod Wilson) [1937053] - ath10k: skip the wait for completion to recovery in shutdown path (Jarod Wilson) [1937053] - ath11k: fix thermal temperature read (Jarod Wilson) [1937053] - ath11k: fix potential wmi_mgmt_tx_queue race condition (Jarod Wilson) [1937053] - ath11k: qmi: cosmetic changes to error messages (Jarod Wilson) [1937053] - ath11k: qmi: add more debug messages (Jarod Wilson) [1937053] - Revert "ath9k: fix ath_tx_process_buffer() potential null ptr dereference" (Jarod Wilson) [1937053] - ath11k: print hardware name and version during initialisation (Jarod Wilson) [1937053] - ath11k: Enable radar detection for 160MHz secondary segment (Jarod Wilson) [1937053] - ath11k: Fix sounding dimension config in HE cap (Jarod Wilson) [1937053] - ath11k: add qcn9074 pci device support (Jarod Wilson) [1937053] - ath11k: add extended interrupt support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add CE interrupt support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add data path support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add hal support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add static window support for register access (Jarod Wilson) [1937053] - ath11k: Add qcn9074 mhi controller config (Jarod Wilson) [1937053] - ath11k: Update memory segment count for qcn9074 (Jarod Wilson) [1937053] - ath11k: qmi: increase the number of fw segments (Jarod Wilson) [1937053] - ath11k: Move qmi service_ins_id to hw_params (Jarod Wilson) [1937053] - ath11k: Refactor ath11k_msi_config (Jarod Wilson) [1937053] - ath11k: debugfs: Fix spelling mistake "Opportunies" -> "Opportunities" (Jarod Wilson) [1937053] - ath9k: fix ath_tx_process_buffer() potential null ptr dereference (Jarod Wilson) [1937053] - nl80211: fix beacon head validation (Jarod Wilson) [1937053] - nl80211: fix potential leak of ACL params (Jarod Wilson) [1937053] - cfg80211: check S1G beacon compat element length (Jarod Wilson) [1937053] - cfg80211: remove WARN_ON() in cfg80211_sme_connect (Jarod Wilson) [1937053] - mac80211: fix time-is-after bug in mlme (Jarod Wilson) [1937053] - mac80211: fix TXQ AC confusion (Jarod Wilson) [1937053] - rfkill: revert back to old userspace API by default (Jarod Wilson) [1937053] - mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN (Jarod Wilson) [1937053] - iwlwifi: mvm: fix beacon protection checks (Jarod Wilson) [1937053] - iwlwifi: mvm: rfi: don't lock mvm->mutex when sending config command (Jarod Wilson) [1937053] - iwlwifi: pcie: add support for So-F devices (Jarod Wilson) [1937053] - iwlwifi: fw: fix notification wait locking (Jarod Wilson) [1937053] - iwlwifi: add support for Qu with AX201 device (Jarod Wilson) [1937053] - iwlwifi: pcie: properly set LTR workarounds on 22000 devices (Jarod Wilson) [1937053] - iwlwifi: fix 11ax disabled bit in the regulatory capability flags (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix recently introduced deadlock issue (Jarod Wilson) [1937053] - mt76: mt7921: fix airtime reporting (Jarod Wilson) [1937053] - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_enqueue_hcmd() (Jarod Wilson) [1937053] - mt76: mt7615: remove redundant dev_err call in mt7622_wmac_probe() (Jarod Wilson) [1937053] - mt76: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - reg.c: Fix a spello (Jarod Wilson) [1937053] - mac80211: cfg.c: A typo fix (Jarod Wilson) [1937053] - wireless: remove never implemented MODULE_SUPPORTED_DEVICE (Jarod Wilson) [1937053] - wireless/nl80211: fix wdev_id may be used uninitialized (Jarod Wilson) [1937053] - nl80211: fix locking for wireless device netns change (Jarod Wilson) [1937053] - iwlwifi: don't call netif_napi_add() with rxq->lock held (was Re: Lockdep warning in iwl_pcie_rx_handle()) (Jarod Wilson) [1937053] - iwlwifi: fix ARCH=i386 compilation warnings (Jarod Wilson) [1937053] - iwlwifi: mvm: add terminate entry for dmi_system_id tables (Jarod Wilson) [1937053] - mt76: mt7915: fix unused 'mode' variable (Jarod Wilson) [1937053] - mt76: dma: do not report truncated frames to mac80211 (Jarod Wilson) [1937053] - mt76: mt7921: remove incorrect error handling (Jarod Wilson) [1937053] - iwlwifi: pcie: fix iwl_so_trans_cfg link error when CONFIG_IWLMVM is disabled (Jarod Wilson) [1937053] - ath11k: fix AP mode for QCA6390 (Jarod Wilson) [1937053] - ath11k: qmi: use pad to format dma_addr_t (Jarod Wilson) [1937053] - iwlwifi: avoid crash on unsupported debug collection (Jarod Wilson) [1937053] - mt76: mt7915: only modify tx buffer list after allocating tx token id (Jarod Wilson) [1937053] - mt76: fix tx skb error handling in mt76_dma_tx_queue_skb (Jarod Wilson) [1937053] - ath9k: fix transmitting to stations in dynamic SMPS mode (Jarod Wilson) [1937053] - redhat: Enable ath11k PCI device support (Jarod Wilson) [1937053] - soc: qcom: Do not depend on ARCH_QCOM for QMI helpers (Jarod Wilson) [1937053] - net: qrtr: Do not depend on ARCH_QCOM (Jarod Wilson) [1937053] - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case (Jarod Wilson) [1937053] - nl80211: add documentation for HT/VHT/HE disable attributes (Jarod Wilson) [1937053] - cfg80211/mac80211: Support disabling HE mode (Jarod Wilson) [1937053] - mac80211: add STBC encoding to ieee80211_parse_tx_radiotap (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove sample rate switching code for constrained devices (Jarod Wilson) [1937053] - mac80211: minstrel_ht: show sampling rates in debugfs (Jarod Wilson) [1937053] - mac80211: minstrel_ht: significantly redesign the rate probing strategy (Jarod Wilson) [1937053] - mac80211: minstrel_ht: reduce the need to sample slower rates (Jarod Wilson) [1937053] - mac80211: minstrel_ht: update total packets counter in tx status path (Jarod Wilson) [1937053] - mac80211: minstrel_ht: use bitfields to encode rate indexes (Jarod Wilson) [1937053] - cfg80211: initialize reg_rule in __freq_reg_info() (Jarod Wilson) [1937053] - mac80211: fix potential overflow when multiplying to u32 integers (Jarod Wilson) [1937053] - mac80211: enable QoS support for nl80211 ctrl port (Jarod Wilson) [1937053] - cfg80211: remove unused callback (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_B (2/2) parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_B (1/2) parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_A parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update MAC/BB parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: replace tx tasklet with work queue (Jarod Wilson) [1937053] - rtw88: add napi support (Jarod Wilson) [1937053] - rtw88: add rts condition (Jarod Wilson) [1937053] - rtw88: add dynamic rrsr configuration (Jarod Wilson) [1937053] - iwlwifi: remove incorrect comment in pnvm (Jarod Wilson) [1937053] - ath11k: qmi: add debug message for allocated memory segment addresses and sizes (Jarod Wilson) [1937053] - ath11k: pci: remove experimental warning (Jarod Wilson) [1937053] - ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr() (Jarod Wilson) [1937053] - ath10k: change ath10k_offchan_tx_work() peer present msg to a warn (Jarod Wilson) [1937053] - ath9k: fix data bus crash when setting nf_override via debugfs (Jarod Wilson) [1937053] - ath11k: add support to configure spatial reuse parameter set (Jarod Wilson) [1937053] - ath10k: restore tx sk_buff of htt header for SDIO (Jarod Wilson) [1937053] - brcmsmac: Fix the spelling configation to configuration in the file d11.h (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 62 for AX devices (Jarod Wilson) [1937053] - iwlwifi: pnvm: implement reading PNVM from UEFI (Jarod Wilson) [1937053] - iwlwifi: pnvm: move file loading code to a separate function (Jarod Wilson) [1937053] - iwlwifi: pnvm: increment the pointer before checking the TLV (Jarod Wilson) [1937053] - iwlwifi: pcie: define FW_RESET_TIMEOUT for clarity (Jarod Wilson) [1937053] - iwlwifi: pnvm: set the PNVM again if it was already loaded (Jarod Wilson) [1937053] - iwlwifi: mvm: global PM mode does not reset after FW crash (Jarod Wilson) [1937053] - iwlwifi: mvm: reduce the print severity of failing getting NIC temp (Jarod Wilson) [1937053] - iwlwifi: mvm: get NVM later in the mvm_start flow (Jarod Wilson) [1937053] - iwlmvm: set properly NIC_NOT_ACK_ENABLED flag (Jarod Wilson) [1937053] - iwlwifi: remove max_ht_ampdu_exponent config parameter (Jarod Wilson) [1937053] - iwlwifi: remove max_vht_ampdu_exponent config parameter (Jarod Wilson) [1937053] - iwlwifi: mvm: Check ret code for iwl_mvm_load_nvm_to_nic (Jarod Wilson) [1937053] - iwlwifi: mvm: don't check if CSA event is running before removing (Jarod Wilson) [1937053] - iwlwifi: mvm: Support SCAN_CFG_CMD version 5 (Jarod Wilson) [1937053] - iwlwifi: mvm: isolate the get nvm flow (Jarod Wilson) [1937053] - iwlwifi: mvm: simplify iwl_mvm_dbgfs_register (Jarod Wilson) [1937053] - iwlwifi: mvm: register to mac80211 last (Jarod Wilson) [1937053] - iwlwifi: acpi: add support for DSM RFI (Jarod Wilson) [1937053] - iwlwifi: mvm: add RFI-M support (Jarod Wilson) [1937053] - iwlwifi:mvm: Add support for version 2 of the LARI_CONFIG_CHANGE command. (Jarod Wilson) [1937053] - iwlwifi: pcie: don't crash when rx queues aren't allocated in interrupt (Jarod Wilson) [1937053] - iwlwifi: correction of group-id once sending REPLY_ERROR (Jarod Wilson) [1937053] - iwlwifi: pcie: add AX201 and AX211 radio modules for Ma devices (Jarod Wilson) [1937053] - iwlwifi: pcie: add CDB bit to the device configuration parsing (Jarod Wilson) [1937053] - iwlwifi: acpi: don't return valid pointer as an ERR_PTR (Jarod Wilson) [1937053] - iwlwifi: queue: add fake tx time point (Jarod Wilson) [1937053] - iwlwifi: remove flags argument for nic_access (Jarod Wilson) [1937053] - iwlwifi: declare support for triggered SU/MU beamforming feedback (Jarod Wilson) [1937053] - iwlwifi: dbg: add op_mode callback for collecting debug data. (Jarod Wilson) [1937053] - iwlwifi: api: clean up some documentation/bits (Jarod Wilson) [1937053] - iwlwifi: dbg: remove unsupported regions (Jarod Wilson) [1937053] - iwlwifi: pcie: Change Ma device ID (Jarod Wilson) [1937053] - iwlwifi: when HW has rate offload don't look at control field (Jarod Wilson) [1937053] - iwlwifi: pcie: NULLify pointers after free (Jarod Wilson) [1937053] - iwlwifi: mvm: assign SAR table revision to the command later (Jarod Wilson) [1937053] - iwlwifi: mvm: remove useless iwl_mvm_resume_d3() function (Jarod Wilson) [1937053] - iwlwifi: mvm: enhance a print in CSA flows (Jarod Wilson) [1937053] - iwlwifi: mvm: send stored PPAG command instead of local (Jarod Wilson) [1937053] - iwlwifi: mvm: store PPAG enabled/disabled flag properly (Jarod Wilson) [1937053] - iwlwifi: mvm: fix the type we use in the PPAG table validity checks (Jarod Wilson) [1937053] - iwlwifi: acpi: fix PPAG table sizes (Jarod Wilson) [1937053] - iwlwifi: pcie: don't disable interrupts for reg_lock (Jarod Wilson) [1937053] - iwlwifi: pcie: add a few missing entries for So with Hr (Jarod Wilson) [1937053] - iwlwifi: dbg: Mark ucode tlv data as const (Jarod Wilson) [1937053] - iwlwifi: add new cards for So and Qu family (Jarod Wilson) [1937053] - ath11k: fix a locking bug in ath11k_mac_op_start() (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: phy: Simplify bool comparison (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: Simplify bool comparison (Jarod Wilson) [1937053] - brcmfmac: add support for CQM RSSI notifications (Jarod Wilson) [1937053] - ath10k: Add new debug level for sta related logs (Jarod Wilson) [1937053] - ath11k: Update tx descriptor search index properly (Jarod Wilson) [1937053] - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics (Jarod Wilson) [1937053] - ath10k: Fix suspicious RCU usage warning in ath10k_wmi_tlv_parse_peer_stats_info() (Jarod Wilson) [1937053] - wl3501: fix alignment constraints (Jarod Wilson) [1937053] - rt2800usb: add Sweex LW163V2 id's (Jarod Wilson) [1937053] - rt2x00: remove duplicate word and fix typo in comment (Jarod Wilson) [1937053] - mwifiex: Report connected BSS with cfg80211_connect_bss() (Jarod Wilson) [1937053] - rtl8xxxu: remove unused assignment value (Jarod Wilson) [1937053] - atmel: at76c50x: use DEFINE_MUTEX() for mutex lock (Jarod Wilson) [1937053] - brcmsmac: fix alignment constraints (Jarod Wilson) [1937053] - brcmfmac: Add DMI nvram filename quirk for Voyo winpad A15 tablet (Jarod Wilson) [1937053] - brcmfmac: Add DMI nvram filename quirk for Predia Basic tablet (Jarod Wilson) [1937053] - rtw88: 8821c: support RFE type2 wifi NIC (Jarod Wilson) [1937053] - rtw88: 8821c: Correct CCK RSSI (Jarod Wilson) [1937053] - rtw88: coex: 8821c: correct antenna switch function (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: remove redundant initialization of variable rtstatus (Jarod Wilson) [1937053] - iwlwifi: pcie: Disable softirqs during Rx queue init (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 61 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: add Asus to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add Microsoft to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add Samsung to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add HP to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: implement approved list for the PPAG feature (Jarod Wilson) [1937053] - iwlwifi: mvm: set enabled in the PPAG command properly (Jarod Wilson) [1937053] - iwlwifi: mvm: add debugfs entry to trigger a dump as any time-point (Jarod Wilson) [1937053] - iwlwifi: mvm: add tx fail time point (Jarod Wilson) [1937053] - iwlwifi: fwrt: add suspend/resume time point (Jarod Wilson) [1937053] - iwlwifi: mvm: add triggers for MLME events (Jarod Wilson) [1937053] - iwlwifi: mvm: add IML/ROM information for other HW families (Jarod Wilson) [1937053] - iwlwifi: mvm: fix CSA AP side (Jarod Wilson) [1937053] - iwlwifi: mvm: make iwl_mvm_tt_temp_changed() static (Jarod Wilson) [1937053] - iwlwifi: mvm: cancel the scan delayed work when scan is aborted (Jarod Wilson) [1937053] - iwlwifi: pcie: add support for SnJ with Hr1 (Jarod Wilson) [1937053] - iwlwifi: mvm: move early time-point before nvm_init in non-unified (Jarod Wilson) [1937053] - iwlwifi: add support for SnJ with Jf devices (Jarod Wilson) [1937053] - iwlwifi: move SnJ and So rules to the new tables (Jarod Wilson) [1937053] - iwlwifi: mvm: slightly clean up rs_fw_set_supp_rates() (Jarod Wilson) [1937053] - iwlwifi: fw api: make hdr a zero-size array again (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 60 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: advertise BIGTK client support if available (Jarod Wilson) [1937053] - iwlwifi: always allow maximum A-MSDU on newer devices (Jarod Wilson) [1937053] - iwlwifi: mvm: debugfs: check length precisely in inject_packet (Jarod Wilson) [1937053] - iwlwifi: mvm: simplify TX power setting (Jarod Wilson) [1937053] - iwlwifi: tx: move handing sync/async host command to trans (Jarod Wilson) [1937053] - iwlwifi: mvm: add explicit check for non-data frames in get Tx rate (Jarod Wilson) [1937053] - iwlwifi: mvm: debugfs for phy-integration-ver (Jarod Wilson) [1937053] - iwlwifi: parse phy integration string from FW TLV (Jarod Wilson) [1937053] - iwlwifi: mvm: csa: do not abort CSA before disconnect (Jarod Wilson) [1937053] - iwlwifi: mvm: don't send commands during suspend\resume transition (Jarod Wilson) [1937053] - iwlwifi: mvm: don't check system_pm_mode without mutex held (Jarod Wilson) [1937053] - iwlwifi: remove TRANS_PM_OPS (Jarod Wilson) [1937053] - iwlwifi: dbg: dump paged memory from index 1 (Jarod Wilson) [1937053] - iwl-trans: iwlwifi: move sync NMI logic to trans (Jarod Wilson) [1937053] - iwlwifi: pcie: properly implement NAPI (Jarod Wilson) [1937053] - iwlwifi: mvm: add support for new flush queue response (Jarod Wilson) [1937053] - iwlwifi: mvm: handle CCA-EXT delay firmware notification (Jarod Wilson) [1937053] - iwlwifi: mvm: scan: fix scheduled scan restart handling (Jarod Wilson) [1937053] - iwlwifi: mvm: remove debugfs injection limitations (Jarod Wilson) [1937053] - iwlwifi: mvm: check more notification sizes (Jarod Wilson) [1937053] - iwlwifi: mvm: add notification size checks (Jarod Wilson) [1937053] - ath11k: remove h from printk format specifier (Jarod Wilson) [1937053] - ath10k: remove h from printk format specifier (Jarod Wilson) [1937053] - cfg80211: fix netdev registration deadlock (Jarod Wilson) [1937053] - mac80211: fix station rate table updates on assoc (Jarod Wilson) [1937053] - mt76: mt7663: introduce coredump support (Jarod Wilson) [1937053] - mt76: mt7921: add coredump support (Jarod Wilson) [1937053] - mt76: mt7921: enable MSI interrupts (Jarod Wilson) [1937053] - mt76: mt7921: introduce regdomain notifier support (Jarod Wilson) [1937053] - mt76: mt7921: introduce Runtime PM support (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu module for suspend and WoW support (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu module for sched_scan and hw_scan (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu common library (Jarod Wilson) [1937053] - mt76: mt7921: introduce PM support (Jarod Wilson) [1937053] - mt76: mt7921: introduce beacon_loss mcu event (Jarod Wilson) [1937053] - mt76: mt7921: introduce support for hardware beacon filter (Jarod Wilson) [1937053] - mt76: mt7921: introduce 802.11 PS support in sta mode (Jarod Wilson) [1937053] - mt76: mt7921: introduce schedule scan support (Jarod Wilson) [1937053] - mt76: mt7921: add debugfs support (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921e support (Jarod Wilson) [1937053] - mt76: mt7921: add ieee80211_ops (Jarod Wilson) [1937053] - mt76: mt7921: add EEPROM support (Jarod Wilson) [1937053] - mt76: mt7921: add DMA support (Jarod Wilson) [1937053] - mt76: mt7921: add MCU support (Jarod Wilson) [1937053] - mt76: mt7921: add MAC support (Jarod Wilson) [1937053] - wireless: Fix "ordering" comment typos (Jarod Wilson) [1937053] - mt76: mt76_connac: move pm utility routines in mt76_connac_lib module (Jarod Wilson) [1937053] - mt76: mt76_connac: move pm data struct in mt76_connac.h (Jarod Wilson) [1937053] - mt76: mt76_connac: move WoW and suspend code in mt76_connac_mcu module (Jarod Wilson) [1937053] - mt76: mt76_connac: move hw_scan and sched_scan routine in mt76_connac_mcu module (Jarod Wilson) [1937053] - mt76: mt76_connac: create mcu library (Jarod Wilson) [1937053] - mt76: introduce mt76_vif data structure (Jarod Wilson) [1937053] - cfg80211: call cfg80211_destroy_ifaces() with wiphy lock held (Jarod Wilson) [1937053] - wext: call cfg80211_set_encryption() with wiphy lock held (Jarod Wilson) [1937053] - wext: call cfg80211_change_iface() with wiphy lock held (Jarod Wilson) [1937053] - nl80211: call cfg80211_dev_rename() under RTNL (Jarod Wilson) [1937053] - mt76: dma: fix a possible memory leak in mt76_add_fragment() (Jarod Wilson) [1937053] - ath9k: fix build error with LEDS_CLASS=m (Jarod Wilson) [1937053] - ath10k: fix wmi mgmt tx queue full due to race condition (Jarod Wilson) [1937053] - ath10k: pass the ssid info to get the correct bss entity (Jarod Wilson) [1937053] - ath10k: allow dynamic SAR power limits via common API (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix regression in the max_prob_rate fix (Jarod Wilson) [1937053] - mt76: mt7615: reduce VHT maximum MPDU length (Jarod Wilson) [1937053] - mt76: reduce q->lock hold time (Jarod Wilson) [1937053] - mt76: usb: process URBs with status EPROTO properly (Jarod Wilson) [1937053] - mt76: move vif_mask back from mt76_phy to mt76_dev (Jarod Wilson) [1937053] - mt76: mt7915: make vif index per adapter instead of per band (Jarod Wilson) [1937053] - mt76: mt7915: add support for using a secondary PCIe link for gen1 (Jarod Wilson) [1937053] - mt76: fix crash on tearing down ext phy (Jarod Wilson) [1937053] - mt76: mt7915: bring up the WA event rx queue for band1 (Jarod Wilson) [1937053] - mt76: mt7615: unify init work (Jarod Wilson) [1937053] - mt76: mt7915: support TxBF for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: Remove unneeded semicolon (Jarod Wilson) [1937053] - mt76: mt7615: set mcu country code in mt7615_mcu_set_channel_domain() (Jarod Wilson) [1937053] - mt76: mt7915: fix eeprom DBDC band selection (Jarod Wilson) [1937053] - mt76: mt7915: fix eeprom parsing for DBDC (Jarod Wilson) [1937053] - iwlwifi: provide gso_type to GSO packets (Jarod Wilson) [1937053] - mt76: mt7915: disable RED support in the WA firmware (Jarod Wilson) [1937053] - mt76: mt7915: rework mcu API (Jarod Wilson) [1937053] - mt76: mt7915: do not set DRR group for stations (Jarod Wilson) [1937053] - mt76: mt7915: ensure that init work completes before starting the device (Jarod Wilson) [1937053] - mt76: mt7603: fix ED/CCA monitoring with single-stream devices (Jarod Wilson) [1937053] - mt76: mt7915: add implicit Tx beamforming support (Jarod Wilson) [1937053] - mt76: mt7915: simplify peer's TxBF capability check (Jarod Wilson) [1937053] - mt76: mt7615: mt7915: disable txpower sku when testmode enabled (Jarod Wilson) [1937053] - mt76: mt7915: add support for continuous tx in testmode (Jarod Wilson) [1937053] - mt76: mt7915: rework set state part in testmode (Jarod Wilson) [1937053] - mt76: testmode: add a new state for continuous tx (Jarod Wilson) [1937053] - mt76: mt7915: clean hw queue before starting new testmode tx (Jarod Wilson) [1937053] - mt76: mt7915: calculate new packet length when tx_time is set in testmode (Jarod Wilson) [1937053] - mt76: mt7915: add support for ipg in testmode (Jarod Wilson) [1937053] - mt76: mt7915: split edca update function (Jarod Wilson) [1937053] - mt76: testmode: make tx queued limit adjustable (Jarod Wilson) [1937053] - mt76: testmode: add attributes for ipg related parameters (Jarod Wilson) [1937053] - mt76: testmode: add support to set user-defined spe index (Jarod Wilson) [1937053] - mt76: mt7915: force ldpc for bw larger than 20MHz in testmode (Jarod Wilson) [1937053] - mt76: move chainmask in mt76_phy (Jarod Wilson) [1937053] - mt76: move mac_work in mt76_core module (Jarod Wilson) [1937053] - mt76: mt7615: move testmode data from dev to phy (Jarod Wilson) [1937053] - mt76: mt7915: move testmode data from dev to phy (Jarod Wilson) [1937053] - mt76: testmode: move mtd part to mt76_dev (Jarod Wilson) [1937053] - mt76: testmode: introduce dbdc support (Jarod Wilson) [1937053] - mt76: mt7915: add partial add_bss_info command on testmode init (Jarod Wilson) [1937053] - mt76: mt7915: drop zero-length packet to avoid Tx hang (Jarod Wilson) [1937053] - mt76: mt7915: simplify mt7915_mcu_send_message routine (Jarod Wilson) [1937053] - mt76: mt7915: fix endianness warning in mt7915_mcu_set_radar_th (Jarod Wilson) [1937053] - mt76: mt7915: add support for flash mode (Jarod Wilson) [1937053] - mt76: mt7915: run mt7915_configure_filter holding mt76 mutex (Jarod Wilson) [1937053] - mt76: mt7915: convert comma to semicolon (Jarod Wilson) [1937053] - mt76: mt7615: convert comma to semicolon (Jarod Wilson) [1937053] - mt76: mt7615: reset token when mac_reset happens (Jarod Wilson) [1937053] - mt76: mt7915: reset token when mac_reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix MT_CIPHER_BIP_CMAC_128 setkey (Jarod Wilson) [1937053] - mt76: mt7615: add vif check in mt7615_update_vif_beacon() (Jarod Wilson) [1937053] - mt76: mt7915: add vif check in mt7915_update_vif_beacon() (Jarod Wilson) [1937053] - ath11k: add ieee80211_unregister_hw to avoid kernel crash caused by NULL pointer (Jarod Wilson) [1937053] - mac80211: pause TX while changing interface type (Jarod Wilson) [1937053] - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() (Jarod Wilson) [1937053] - cfg80211: avoid holding the RTNL when calling the driver (Jarod Wilson) [1937053] - iwl4965: do not process non-QOS frames on txq->sched_retry path (Jarod Wilson) [1937053] - mt7601u: process tx URBs with status EPROTO properly (Jarod Wilson) [1937053] - mt7601u: use ieee80211_rx_list to pass frames to the network stack as a batch (Jarod Wilson) [1937053] - rtw88: 8723de: adjust the LTR setting (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8192c-common: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl_pci: fix bool comparison in expressions (Jarod Wilson) [1937053] - mt7601u: fix kernel crash unplugging the device (Jarod Wilson) [1937053] - iwlwifi: queue: bail out on invalid freeing (Jarod Wilson) [1937053] - iwlwifi: mvm: guard against device removal in reprobe (Jarod Wilson) [1937053] - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit. (Jarod Wilson) [1937053] - iwlwifi: mvm: clear IN_D3 after wowlan status cmd (Jarod Wilson) [1937053] - iwlwifi: pcie: add rules to match Qu with Hr2 (Jarod Wilson) [1937053] - iwlwifi: mvm: invalidate IDs of internal stations at mvm start (Jarod Wilson) [1937053] - iwlwifi: mvm: fix the return type for DSM functions 1 and 2 (Jarod Wilson) [1937053] - iwlwifi: pcie: reschedule in long-running memory reads (Jarod Wilson) [1937053] - iwlwifi: pcie: use jiffies for memory read spin time limit (Jarod Wilson) [1937053] - iwlwifi: pcie: fix context info memory leak (Jarod Wilson) [1937053] - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap (Jarod Wilson) [1937053] - iwlwifi: pcie: set LTR on more devices (Jarod Wilson) [1937053] - iwlwifi: queue: don't crash if txq->entries is NULL (Jarod Wilson) [1937053] - iwlwifi: fix the NMI flow for old devices (Jarod Wilson) [1937053] - iwlwifi: pnvm: don't try to load after failures (Jarod Wilson) [1937053] - iwlwifi: pnvm: don't skip everything when not reloading (Jarod Wilson) [1937053] - iwlwifi: pcie: avoid potential PNVM leaks (Jarod Wilson) [1937053] - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() (Jarod Wilson) [1937053] - iwlwifi: mvm: skip power command when unbinding vif during CSA (Jarod Wilson) [1937053] - cfg80211: change netdev registration/unregistration semantics (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix rounding error in throughput calculation (Jarod Wilson) [1937053] - mac80211: minstrel_ht: increase stats update interval (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix max probability rate selection (Jarod Wilson) [1937053] - mac80211: minstrel_ht: improve sample rate selection (Jarod Wilson) [1937053] - mac80211: minstrel_ht: improve ampdu length estimation (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove old ewma based rate average code (Jarod Wilson) [1937053] - mac80211: remove legacy minstrel rate control (Jarod Wilson) [1937053] - mac80211: minstrel_ht: add support for OFDM rates on non-HT clients (Jarod Wilson) [1937053] - mac80211: minstrel_ht: clean up CCK code (Jarod Wilson) [1937053] - mac80211: introduce aql_enable node in debugfs (Jarod Wilson) [1937053] - cfg80211: Add phyrate conversion support for extended MCS in 60GHz band (Jarod Wilson) [1937053] - cfg80211: add VHT rate entries for MCS-10 and MCS-11 (Jarod Wilson) [1937053] - mac80211: reduce peer HE MCS/NSS to own capabilities (Jarod Wilson) [1937053] - mac80211: remove NSS number of 160MHz if not support 160MHz for HE (Jarod Wilson) [1937053] - mac80211: 160MHz with extended NSS BW in CSA (Jarod Wilson) [1937053] - mac80211: add LDPC encoding to ieee80211_parse_tx_radiotap (Jarod Wilson) [1937053] - mac80211: add rx decapsulation offload support (Jarod Wilson) [1937053] - ath10k: remove unused struct ath10k::dev_type (Jarod Wilson) [1937053] - ath11k: remove duplicate function declaration (Jarod Wilson) [1937053] - ath10k: increase rx buffer size to 2048 (Jarod Wilson) [1937053] - ath10k: sanitity check for ep connectivity (Jarod Wilson) [1937053] - mt76: mt7663s: fix rx buffer refcounting (Jarod Wilson) [1937053] - mt7601u: fix rx buffer refcounting (Jarod Wilson) [1937053] - mac80211: check if atf has been disabled in __ieee80211_schedule_txq (Jarod Wilson) [1937053] - mac80211: do not drop tx nulldata packets on encrypted links (Jarod Wilson) [1937053] - mac80211: fix encryption key selection for 802.3 xmit (Jarod Wilson) [1937053] - mac80211: fix fast-rx encryption check (Jarod Wilson) [1937053] - mac80211: fix incorrect strlen of .write in debugfs (Jarod Wilson) [1937053] - cfg80211: fix a kerneldoc markup (Jarod Wilson) [1937053] - brcmfmac: clear EAP/association status bits on linkdown events (Jarod Wilson) [1937053] - brcmfmac: Delete useless kfree code (Jarod Wilson) [1937053] - mt7601u: check the status of device in calibration (Jarod Wilson) [1937053] - mt7601u: process URBs in status EPROTO properly (Jarod Wilson) [1937053] - brcmfmac: support BCM4365E with 43666 ChipCommon chip ID (Jarod Wilson) [1937053] - mwifiex: pcie: Drop bogus __refdata annotation (Jarod Wilson) [1937053] - rtw88: Simplify bool comparison (Jarod Wilson) [1937053] - rtw88: coex: set 4 slot TDMA for BT link and WL busy (Jarod Wilson) [1937053] - rtw88: 8821c: apply CCK PD level which calculates from dynamic mechanism (Jarod Wilson) [1937053] - rtw88: reduce the log level for failure of tx report (Jarod Wilson) [1937053] - rtw88: Delete useless kfree code (Jarod Wilson) [1937053] - iwlwifi: dbg: Don't touch the tlv data (Jarod Wilson) [1937053] - mt76: Fix queue ID variable types after mcu queue split (Jarod Wilson) [1937053] - cfg80211: Save the regulatory domain with a lock (Jarod Wilson) [1937053] - cfg80211/mac80211: fix kernel-doc for SAR APIs (Jarod Wilson) [1937053] - mt76: mt7915: fix MESH ifdef block (Jarod Wilson) [1937053] - mt76: mt76s: fix NULL pointer dereference in mt76s_process_tx_queue (Jarod Wilson) [1937053] - mt76: sdio: remove wake logic in mt76s_process_tx_queue (Jarod Wilson) [1937053] - mt76: usb: remove wake logic in mt76u_status_worker (Jarod Wilson) [1937053] - ath11k: dp: clean up a variable name (Jarod Wilson) [1937053] - ath11k: pci: remove unnecessary mask in ath11k_pci_enable_ltssm() (Jarod Wilson) [1937053] - ath11k: pci: disable ASPM L0sLs before downloading firmware (Jarod Wilson) [1937053] - ath11k: qmi: try to allocate a big block of DMA memory first (Jarod Wilson) [1937053] - rtlwifi: rise completion at the last step of firmware callback (Jarod Wilson) [1937053] - mt76: mt76u: fix NULL pointer dereference in mt76u_status_worker (Jarod Wilson) [1937053] - ath10k: prevent deinitializing NAPI twice (Jarod Wilson) [1937053] - ath9k: Postpone key cache entry deletion for TXQ frames reference it (Jarod Wilson) [1937053] - ath: Modify ath_key_delete() to not need full key entry (Jarod Wilson) [1937053] - ath: Export ath_hw_keysetmac() (Jarod Wilson) [1937053] - ath9k: Clear key cache explicitly on disabling hardware (Jarod Wilson) [1937053] - ath: Use safer key clearing with key cache entries (Jarod Wilson) [1937053] - ath10k: Remove voltage regulator votes during wifi disable (Jarod Wilson) [1937053] - ath10k: Fix error handling in case of CE pipe init failure (Jarod Wilson) [1937053] - ath11k: Fix ath11k_pci_fix_l1ss() (Jarod Wilson) [1937053] - ath11k: Fix error code in ath11k_core_suspend() (Jarod Wilson) [1937053] - ath11k: start vdev if a bss peer is already created (Jarod Wilson) [1937053] - ath11k: fix crash caused by NULL rx_channel (Jarod Wilson) [1937053] - ath11k: add missing null check on allocated skb (Jarod Wilson) [1937053] - ath9k: make relay callbacks const (Jarod Wilson) [1937053] - ath11k: make relay callbacks const (Jarod Wilson) [1937053] - ath10k: make relay callbacks const (Jarod Wilson) [1937053] - ath11k: implement suspend for QCA6390 PCI devices (Jarod Wilson) [1937053] - ath11k: hif: add ce irq enable and disable functions (Jarod Wilson) [1937053] - ath11k: implement WoW enable and wakeup commands (Jarod Wilson) [1937053] - ath11k: set credit_update flag for flow controlled ep only (Jarod Wilson) [1937053] - ath11k: dp: stop rx pktlog before suspend (Jarod Wilson) [1937053] - ath11k: htc: implement suspend handling (Jarod Wilson) [1937053] - ath11k: htc: remove unused struct ath11k_htc_ops (Jarod Wilson) [1937053] - ath11k: pci: read select_window register to ensure write is finished (Jarod Wilson) [1937053] - ath11k: hif: implement suspend and resume functions (Jarod Wilson) [1937053] - ath11k: mhi: hook suspend and resume (Jarod Wilson) [1937053] - ath11k: Fix incorrect tlvs in scan start command (Jarod Wilson) [1937053] - ath11k: pci: disable VDD4BLOW (Jarod Wilson) [1937053] - ath11k: pci: fix L1ss clock unstable problem (Jarod Wilson) [1937053] - ath11k: pci: fix hot reset stability issues (Jarod Wilson) [1937053] - ath11k: put hw to DBS using WMI_PDEV_SET_HW_MODE_CMDID (Jarod Wilson) [1937053] - ath11k: mhi: print a warning if firmware crashed (Jarod Wilson) [1937053] - ath11k: use MHI provided APIs to allocate and free MHI controller (Jarod Wilson) [1937053] - ath10k: add atomic protection for device recovery (Jarod Wilson) [1937053] - ath10k: add option for chip-id based BDF selection (Jarod Wilson) [1937053] - mt76: remove unused variable q (Jarod Wilson) [1937053] - mac80211: add ieee80211_set_sar_specs (Jarod Wilson) [1937053] - nl80211: add common API to configure SAR power limitations (Jarod Wilson) [1937053] - mac80211: fix a mistake check for rx_stats update (Jarod Wilson) [1937053] - mac80211: mlme: save ssid info to ieee80211_bss_conf while assoc (Jarod Wilson) [1937053] - mac80211: Update rate control on channel change (Jarod Wilson) [1937053] - mac80211: don't filter out beacons once we start CSA (Jarod Wilson) [1937053] - mac80211: Fix calculation of minimal channel width (Jarod Wilson) [1937053] - mac80211: ignore country element TX power on 6 GHz (Jarod Wilson) [1937053] - mac80211: use bitfield helpers for BA session action frames (Jarod Wilson) [1937053] - mac80211: support Rx timestamp calculation for all preamble types (Jarod Wilson) [1937053] - mac80211: don't set set TDLS STA bandwidth wider than possible (Jarod Wilson) [1937053] - mac80211: support driver-based disconnect with reconnect hint (Jarod Wilson) [1937053] - cfg80211: support immediate reconnect request hint (Jarod Wilson) [1937053] - mac80211: use struct assignment for he_obss_pd (Jarod Wilson) [1937053] - cfg80211: remove struct ieee80211_he_bss_color (Jarod Wilson) [1937053] - nl80211: validate key indexes for cfg80211_registered_device (Jarod Wilson) [1937053] - cfg80211: include block-tx flag in channel switch started event (Jarod Wilson) [1937053] - mac80211: disallow band-switch during CSA (Jarod Wilson) [1937053] - ieee80211: update reduced neighbor report TBTT info length (Jarod Wilson) [1937053] - cfg80211: Save the regulatory domain when setting custom regulatory (Jarod Wilson) [1937053] - nl80211: always accept scan request with the duration set (Jarod Wilson) [1937053] - cfg80211: Update TSF and TSF BSSID for multi BSS (Jarod Wilson) [1937053] - cfg80211: scan PSC channels in case of scan with wildcard SSID (Jarod Wilson) [1937053] - mac80211: Skip entries with SAE H2E only membership selector (Jarod Wilson) [1937053] - cfg80211: Parse SAE H2E only membership selector (Jarod Wilson) [1937053] - mac80211: support MIC error/replay detected counters driver update (Jarod Wilson) [1937053] - mac80211: he: remove non-bss-conf fields from bss_conf (Jarod Wilson) [1937053] - mac80211: remove trailing semicolon in macro definitions (Jarod Wilson) [1937053] - nl80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mac80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - cfg80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - cfg80211: fix callback type mismatches in wext-compat (Jarod Wilson) [1937053] - net: wireless: make a const array static, makes object smaller (Jarod Wilson) [1937053] - net: mac80211: use core API for updating TX/RX stats (Jarod Wilson) [1937053] - rfkill: add a reason to the HW rfkill state (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: fix ofdm power compensation (Jarod Wilson) [1937053] - ath9k_htc: adhere to the DONT_REORDER transmit flag (Jarod Wilson) [1937053] - ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax (Jarod Wilson) [1937053] - ath11k: support TXOP duration based RTS threshold (Jarod Wilson) [1937053] - ath11k: fix incorrect wmi param for configuring HE operation (Jarod Wilson) [1937053] - ath11k: unlock on error path in ath11k_mac_op_add_interface() (Jarod Wilson) [1937053] - ath11k: fix rmmod failure if qmi sequence fails (Jarod Wilson) [1937053] - rtw88: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - rt2x00: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - ath11k: pci: add MODULE_FIRMWARE macros (Jarod Wilson) [1937053] - rtw88: reduce polling time of IQ calibration (Jarod Wilson) [1937053] - rtw88: fix multiple definition of rtw_pm_ops (Jarod Wilson) [1937053] - brcmfmac: remove redundant assignment to pointer 'entry' (Jarod Wilson) [1937053] - rtw88: declare hw supports ch 144 (Jarod Wilson) [1937053] - rtw88: coex: fix missing unitialization of variable 'interval' (Jarod Wilson) [1937053] - mwifiex: change license text of Makefile and README from MARVELL to NXP (Jarod Wilson) [1937053] - rtw88: pci: Add prototypes for .probe, .remove and .shutdown (Jarod Wilson) [1937053] - ath9k: remove trailing semicolon in macro definition (Jarod Wilson) [1937053] - ath11k: Ignore resetting peer auth flag in peer assoc cmd (Jarod Wilson) [1937053] - ath11k: add 64bit check before reading msi high addr (Jarod Wilson) [1937053] - ath10k: fix a check patch warning returnNonBoolInBooleanFunction of sdio.c (Jarod Wilson) [1937053] - mac80211: mesh: fix mesh_pathtbl_init() error path (Jarod Wilson) [1937053] - mt76: mt7615: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mt76: mt7915: fix ht mcs in mt7915_mcu_get_rx_rate() (Jarod Wilson) [1937053] - mt76: attempt to free up more room when filling the tx queue (Jarod Wilson) [1937053] - mt76: mt7915: stop queues when running out of tx tokens (Jarod Wilson) [1937053] - mt76: improve tx queue stop/wake (Jarod Wilson) [1937053] - mt76: mt7915: fix memory leak in mt7915_mcu_get_rx_rate() (Jarod Wilson) [1937053] - mt76: mt7615: fix rdd mcu cmd endianness (Jarod Wilson) [1937053] - mt76: mt7915: fix endian issues (Jarod Wilson) [1937053] - mt76: mt7915: get rid of dbdc debugfs knob (Jarod Wilson) [1937053] - mt76: mt7915: introduce dbdc support (Jarod Wilson) [1937053] - mt76: move hw mac_addr in mt76_phy (Jarod Wilson) [1937053] - mt76: move band allocation in mt76_register_phy (Jarod Wilson) [1937053] - mt76: rely on mt76_phy in mt76_init_sband_2g and mt76_init_sband_5g (Jarod Wilson) [1937053] - mt76: move band capabilities in mt76_phy (Jarod Wilson) [1937053] - mt76: move tx hw data queues in mt76_phy (Jarod Wilson) [1937053] - mt76: move mcu queues to mt76_dev q_mcu array (Jarod Wilson) [1937053] - mt76: rely on mt76_queue in tx_queue_skb_raw signature (Jarod Wilson) [1937053] - mt76: introduce mt76_init_mcu_queue utility routine (Jarod Wilson) [1937053] - mt76: rely on mt76_queue in tx_queue_skb signature (Jarod Wilson) [1937053] - mt76: dma: rely on mt76_queue in mt76_dma_tx_cleanup signature (Jarod Wilson) [1937053] - mt76: mt7663s: rely on mt76_queue in mt7663s_tx_run_queue signature (Jarod Wilson) [1937053] - mt76: sdio: rely on mt76_queue in mt76s_process_tx_queue signature (Jarod Wilson) [1937053] - mt76: sdio: introduce mt76s_alloc_tx_queue (Jarod Wilson) [1937053] - mt76: move mt76_init_tx_queue in common code (Jarod Wilson) [1937053] - mt76: mt7915: rely on eeprom definitions (Jarod Wilson) [1937053] - mt76: mt7615: refactor usb/sdio rate code (Jarod Wilson) [1937053] - mt76: mt7615: support 16 interfaces (Jarod Wilson) [1937053] - mt76: mt7915: remove unused mt7915_mcu_bss_sync_tlv() (Jarod Wilson) [1937053] - mt76: mt7915: use BIT_ULL for omac_idx (Jarod Wilson) [1937053] - mt76: mt7915: make mt7915_eeprom_read static (Jarod Wilson) [1937053] - mt76: mt7915: add support to set tx frequency offset in testmode (Jarod Wilson) [1937053] - mt76: mt7915: add support to set txpower in testmode (Jarod Wilson) [1937053] - mt76: mt7915: implement testmode rx support (Jarod Wilson) [1937053] - mt76: mt7915: implement testmode tx support (Jarod Wilson) [1937053] - mt76: testmode: add support for HE rate modes (Jarod Wilson) [1937053] - mt76: mt7915: fix tx rate related fields in tx descriptor (Jarod Wilson) [1937053] - mt76: testmode: add support for LTF and GI combinations for HE mode (Jarod Wilson) [1937053] - mt76: testmode: add tx_rate_stbc parameter (Jarod Wilson) [1937053] - mt76: testmode: add snr attribute in rx statistics (Jarod Wilson) [1937053] - mt76: testmode: switch ib and wb rssi to array type for per-antenna report (Jarod Wilson) [1937053] - mt76: mt76u: use dedicated thread for status work (Jarod Wilson) [1937053] - mt76: mt76u: rely on woker APIs for rx work (Jarod Wilson) [1937053] - mt76: mt7615: run key configuration in mt7615_set_key for usb/sdio devices (Jarod Wilson) [1937053] - mt76: fix tkip configuration for mt7615/7663 devices (Jarod Wilson) [1937053] - mt76: switch to wep sw crypto for mt7615/mt7915 (Jarod Wilson) [1937053] - mt76: mt7663s: introduce WoW support via GPIO (Jarod Wilson) [1937053] - mt76: move mt76_mcu_send_firmware in common module (Jarod Wilson) [1937053] - mt76: mt7603: add additional EEPROM chip ID (Jarod Wilson) [1937053] - mt76: fix memory leak if device probing fails (Jarod Wilson) [1937053] - mt76: mt7915: fix sparse warning cast from restricted __le16 (Jarod Wilson) [1937053] - mt76: dma: fix possible deadlock running mt76_dma_cleanup (Jarod Wilson) [1937053] - mt76: set fops_tx_stats.owner to THIS_MODULE (Jarod Wilson) [1937053] - mt76: mt7915: rename mt7915_mcu_get_rate_info to mt7915_mcu_get_tx_rate (Jarod Wilson) [1937053] - mt76: mt7915: update ppe threshold (Jarod Wilson) [1937053] - mt76: mt7915: set fops_sta_stats.owner to THIS_MODULE (Jarod Wilson) [1937053] - mt76: sdio: get rid of sched.lock (Jarod Wilson) [1937053] - mt76: mt7663s: fix a possible ple quota underflow (Jarod Wilson) [1937053] - mt76: mt7663s: get rid of mt7663s_sta_add (Jarod Wilson) [1937053] - mt76: mt7615: introduce quota debugfs node for mt7663s (Jarod Wilson) [1937053] - mt76: mt7615: enable beacon filtering by default for offload fw (Jarod Wilson) [1937053] - mt76: add back the SUPPORTS_REORDERING_BUFFER flag (Jarod Wilson) [1937053] - mt76: mt7915: query station rx rate from firmware (Jarod Wilson) [1937053] - mt76: mt7915: move eeprom parsing out of mt7915_mcu_parse_response (Jarod Wilson) [1937053] - mt76: implement functions to get the response skb for MCU calls (Jarod Wilson) [1937053] - mt76: mt7603: switch to .mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: make mcu_ops->mcu_send_msg optional (Jarod Wilson) [1937053] - mt76: move waiting and locking out of mcu_ops->mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: move mcu timeout handling to .mcu_parse_response (Jarod Wilson) [1937053] - mt76: implement .mcu_parse_response in struct mt76_mcu_ops (Jarod Wilson) [1937053] - mt76: rename __mt76_mcu_skb_send_msg to mt76_mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: rename __mt76_mcu_send_msg to mt76_mcu_send_msg (Jarod Wilson) [1937053] - mt76: mt7915: disable OFDMA/MU-MIMO UL (Jarod Wilson) [1937053] - mt76: mt7915: fix DRR sta bss group index (Jarod Wilson) [1937053] - mt76: mt7915: use napi_consume_skb to bulk-free tx skbs (Jarod Wilson) [1937053] - mt76: mt7915: fix processing txfree events (Jarod Wilson) [1937053] - mt76: mt7915: support 32 station interfaces (Jarod Wilson) [1937053] - mt76: do not set NEEDS_UNIQUE_STA_ADDR for 7615 and 7915 (Jarod Wilson) [1937053] - mt76: mt7615: add debugfs knob for setting extended local mac addresses (Jarod Wilson) [1937053] - mt76: use ieee80211_rx_list to pass frames to the network stack as a batch (Jarod Wilson) [1937053] - mt76: mt7915: add encap offload for 4-address mode stations (Jarod Wilson) [1937053] - mt76: mt7915: add 802.11 encap offload support (Jarod Wilson) [1937053] - mt76: sdio: convert {status/net}_work to mt76_worker (Jarod Wilson) [1937053] - mt76: mt7663s: disable interrupt during txrx_worker processing (Jarod Wilson) [1937053] - mt76: mt7663s: convert txrx_work to mt76_worker (Jarod Wilson) [1937053] - mt76: mt7663s: move tx/rx processing in the same txrx workqueue (Jarod Wilson) [1937053] - mt76: mt7615: retry if mt7615_mcu_init returns -EAGAIN (Jarod Wilson) [1937053] - mt76: mt7915: fix VHT LDPC capability (Jarod Wilson) [1937053] - mt76: mt7915: measure channel noise and report it via survey (Jarod Wilson) [1937053] - mac80211: set SDATA_STATE_RUNNING for monitor interfaces (Jarod Wilson) [1937053] - cfg80211: initialize rekey_data (Jarod Wilson) [1937053] - mac80211: fix return value of ieee80211_chandef_he_6ghz_oper (Jarod Wilson) [1937053] - rtw88: debug: Fix uninitialized memory in debugfs code (Jarod Wilson) [1937053] - brcmfmac: expose firmware config files through modinfo (Jarod Wilson) [1937053] - rtw88: coex: add feature to enhance HID coexistence performance (Jarod Wilson) [1937053] - rtw88: coex: upgrade coexistence A2DP mechanism (Jarod Wilson) [1937053] - rtw88: coex: add action for coexistence in hardware initial (Jarod Wilson) [1937053] - rtw88: coex: add function to avoid cck lock (Jarod Wilson) [1937053] - rtw88: coex: change the coexistence mechanism for WLAN connected (Jarod Wilson) [1937053] - rtw88: coex: change the coexistence mechanism for HID (Jarod Wilson) [1937053] - rtw88: coex: update AFH information while in free-run mode (Jarod Wilson) [1937053] - rtw88: coex: update the mechanism for A2DP + PAN (Jarod Wilson) [1937053] - rtw88: coex: add debug message (Jarod Wilson) [1937053] - rtw88: coex: run coexistence when WLAN entering/leaving LPS (Jarod Wilson) [1937053] - Revert "rtl8xxxu: Add Buffalo WI-U3-866D to list of supported devices" (Jarod Wilson) [1937053] - mt76: usb: fix crash on device removal (Jarod Wilson) [1937053] - ath11k: dp_rx: fix monitor status dma unmap direction (Jarod Wilson) [1937053] - ath10k: Constify static qmi structs (Jarod Wilson) [1937053] - ath10k: Release some resources in an error handling path (Jarod Wilson) [1937053] - ath10k: Fix an error handling path (Jarod Wilson) [1937053] - ath10k: Fix the parsing error in service available event (Jarod Wilson) [1937053] - ath11k: Fix an error handling path (Jarod Wilson) [1937053] - ath11k: Build check size of ath11k_skb_cb (Jarod Wilson) [1937053] - ath11k: Reset ath11k_skb_cb before setting new flags (Jarod Wilson) [1937053] - ath11k: Don't cast ath11k_skb_cb to ieee80211_tx_info.control (Jarod Wilson) [1937053] - ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references (Jarod Wilson) [1937053] - ath11k: peer delete synchronization with firmware (Jarod Wilson) [1937053] - ath11k: vdev delete synchronization with firmware (Jarod Wilson) [1937053] - mwifiex: Remove duplicated REG_PORT definition (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - mwifiex: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - brcmsmac: ampdu: Check BA window size before checking block ack (Jarod Wilson) [1937053] - brcmfmac: Fix incorrect type in assignment (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: remove the useless value assignment (Jarod Wilson) [1937053] - brcmfmac: fix error return code in brcmf_cfg80211_connect() (Jarod Wilson) [1937053] - rtw88: wow: print key type when failing (Jarod Wilson) [1937053] - rtw88: coex: change the decode method from firmware (Jarod Wilson) [1937053] - rtw88: coex: remove unnecessary WLAN slot extend (Jarod Wilson) [1937053] - rtw88: coex: remove write scan bit to scoreboard in scan and connect notify (Jarod Wilson) [1937053] - rtw88: coex: fix BT performance drop during initial/power-on step (Jarod Wilson) [1937053] - rtw88: coex: Change antenna setting to enhance free-run performance (Jarod Wilson) [1937053] - rtw88: coex: update the TDMA parameter when leave LPS (Jarod Wilson) [1937053] - rtw88: coex: add the mechanism for RF4CE (Jarod Wilson) [1937053] - rtw88: coex: Add force flag for coexistence table function (Jarod Wilson) [1937053] - rtw88: coex: add write scoreboard action when WLAN in critical procedure (Jarod Wilson) [1937053] - rtw88: coex: remove unnecessary feature/function (Jarod Wilson) [1937053] - rtw88: coex: update TDMA settings for different beacon interval (Jarod Wilson) [1937053] - rtw88: add CCK_PD debug log (Jarod Wilson) [1937053] - rtw88: 8723d: add cck pd seetings (Jarod Wilson) [1937053] - ath11k: Fix the rx_filter flag setting for peer rssi stats (Jarod Wilson) [1937053] - ath10k: add target IRAM recovery feature support (Jarod Wilson) [1937053] - ath11k: Fix beamformee STS in HE cap (Jarod Wilson) [1937053] - ath11k: add processor_id based ring_selector logic (Jarod Wilson) [1937053] - mac80211: free sta in sta_info_insert_finish() on errors (Jarod Wilson) [1937053] - mac80211: minstrel: fix tx status processing corner case (Jarod Wilson) [1937053] - mac80211: minstrel: remove deferred sampling code (Jarod Wilson) [1937053] - mac80211: fix memory leak on filtered powersave frames (Jarod Wilson) [1937053] - rfkill: Fix use-after-free in rfkill_resume() (Jarod Wilson) [1937053] - nl80211: fix kernel-doc warning in the new SAE attribute (Jarod Wilson) [1937053] - cfg80211: remove WDS code (Jarod Wilson) [1937053] - mac80211: remove WDS-related code (Jarod Wilson) [1937053] - rt2x00: remove WDS code (Jarod Wilson) [1937053] - b43: remove WDS code (Jarod Wilson) [1937053] - ath9k: remove WDS code (Jarod Wilson) [1937053] - rtw88: coex: simplify the setting and condition about WLAN TX limitation (Jarod Wilson) [1937053] - rtw88: coex: add debug message (Jarod Wilson) [1937053] - rtw88: coex: update WLAN 5G AFH parameter for 8822b (Jarod Wilson) [1937053] - rtw88: coex: change the parameter for A2DP when WLAN connecting (Jarod Wilson) [1937053] - rtw88: coex: modified for BT info notify (Jarod Wilson) [1937053] - rtw88: coex: add separate flag for manual control (Jarod Wilson) [1937053] - rtw88: coex: Modify the timing of set_ant_path/set_rf_para (Jarod Wilson) [1937053] - rtw88: coex: coding style adjustment (Jarod Wilson) [1937053] - rtw88: coex: reduce magic number (Jarod Wilson) [1937053] - rtw88: coex: update coex parameter to improve A2DP quality (Jarod Wilson) [1937053] - rtw88: coex: fixed some wrong register definition and setting (Jarod Wilson) [1937053] - rtlwifi: fix spelling typo of workaround (Jarod Wilson) [1937053] - mwifiex: pcie: skip cancel_work_sync() on reset failure path (Jarod Wilson) [1937053] - mwifiex: update comment for shutdown_sw()/reinit_sw() to reflect current state (Jarod Wilson) [1937053] - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure (Jarod Wilson) [1937053] - ath11k: Handle errors if peer creation fails (Jarod Wilson) [1937053] - ath9k: work around false-positive gcc warning (Jarod Wilson) [1937053] - wireless: remove CONFIG_WIRELESS_WDS (Jarod Wilson) [1937053] - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: Place braces around empty if() body (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: phy: Remove a couple of unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: Remove set but unused variable 'cck_highpwr' (Jarod Wilson) [1937053] - rtlwifi: halbtc8821a2ant: Remove a bunch of unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: Remove set but unused variable 'reg_ea4' (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: Remove set but unused variable 'lc_cal' (Jarod Wilson) [1937053] - rtlwifi: halbtc8821a1ant: Remove set but unused variable 'wifi_rssi_state' (Jarod Wilson) [1937053] - rtlwifi: phy: Remove set but unused variable 'bbvalue' (Jarod Wilson) [1937053] - rtlwifi: halbtc8723b2ant: Remove a bunch of set but unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: trx: Demote clear abuse of kernel-doc format (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: mac: Fix some missing/ill-documented function parameters (Jarod Wilson) [1937053] - rtw88: rtw8822c: Remove unused variable 'corr_val' (Jarod Wilson) [1937053] - mwifiex: pcie: Remove a couple of unchecked 'ret's (Jarod Wilson) [1937053] - wl1251: cmd: Rename 'len' to 'buf_len' in the documentation (Jarod Wilson) [1937053] - brcmfmac: fweh: Add missing description for 'gfp' (Jarod Wilson) [1937053] - brcmfmac: pcie: Provide description for missing function parameter 'devinfo' (Jarod Wilson) [1937053] - brcmfmac: bcmsdh: Fix description for function parameter 'pktlist' (Jarod Wilson) [1937053] - rt2x00: save survey for every channel visited (Jarod Wilson) [1937053] - rtlwifi: Remove in_interrupt() usage in halbtc_send_bt_mp_operation() (Jarod Wilson) [1937053] - rtlwifi: Remove in_interrupt() usage in is_any_client_connect_to_ap(). (Jarod Wilson) [1937053] - rtl8xxxu: Add Buffalo WI-U3-866D to list of supported devices (Jarod Wilson) [1937053] - rtw88: decide lps deep mode from firmware feature. (Jarod Wilson) [1937053] - rtw88: add C2H response for checking firmware leave lps (Jarod Wilson) [1937053] - rtw88: store firmware feature in firmware header (Jarod Wilson) [1937053] - rtw88: sync the power state between driver and firmware (Jarod Wilson) [1937053] - rtw88: coex: separate BLE HID profile from BLE profile (Jarod Wilson) [1937053] - rtlwifi: Fix non-canonical address access issues (Jarod Wilson) [1937053] - brcmfmac: fix SDIO access for big-endian host (Jarod Wilson) [1937053] - rtw88: remove extraneous 'const' qualifier (Jarod Wilson) [1937053] - rtlwifi: fix -Wpointer-sign warning (Jarod Wilson) [1937053] - ath11k: fix ZERO address in probe request (Jarod Wilson) [1937053] - ath9k: dynack: Demote non-compliant function header (Jarod Wilson) [1937053] - ath9k: ar5008_phy: Demote half completed function headers (Jarod Wilson) [1937053] - ath9k: ar9003_2p2_initvals: Remove unused const variables (Jarod Wilson) [1937053] - ath9k: ar9485_initvals: Remove unused const variable 'ar9485_fast_clock_1_1_baseband_postamble' (Jarod Wilson) [1937053] - ath9k: ar9340_initvals: Remove unused const variable 'ar9340Modes_ub124_tx_gain_table_1p0' (Jarod Wilson) [1937053] - ath9k: ar9330_1p1_initvals: Remove unused const variable 'ar9331_common_tx_gain_offset1_1' (Jarod Wilson) [1937053] - ath: dfs_pri_detector: Demote zero/half completed kernel-doc headers (Jarod Wilson) [1937053] - ath: dfs_pattern_detector: Fix some function kernel-doc headers (Jarod Wilson) [1937053] - ath: regd: Provide description for ath_reg_apply_ir_flags's 'reg' param (Jarod Wilson) [1937053] - ath11k: Add new dfs region name for JP (Jarod Wilson) [1937053] - ath11k: fix wmi init configuration (Jarod Wilson) [1937053] - ath11k: Fix the hal descriptor mask (Jarod Wilson) [1937053] - ath11k: Fix single phy hw mode (Jarod Wilson) [1937053] - ath11k: Fix number of rules in filtered ETSI regdomain (Jarod Wilson) [1937053] - ath11k: Remove unused param from wmi_mgmt_params (Jarod Wilson) [1937053] - ath11k: Initialize complete alpha2 for regulatory change (Jarod Wilson) [1937053] - ath11k: cold boot calibration support (Jarod Wilson) [1937053] - ath11k: search DT for qcom,ath11k-calibration-variant (Jarod Wilson) [1937053] - ath11k: Remove unnecessary data sync to cpu on monitor buffer (Jarod Wilson) [1937053] - ath10k: cancel rx worker in hif_stop for SDIO (Jarod Wilson) [1937053] - ath10k: Don't iterate over not-sdata-in-driver interfaces. (Jarod Wilson) [1937053] - ath10k: fix compilation warning (Jarod Wilson) [1937053] - mac80211: assure that certain drivers adhere to DONT_REORDER flag (Jarod Wilson) [1937053] - mac80211: don't overwrite QoS TID of injected frames (Jarod Wilson) [1937053] - mac80211: adhere to Tx control flag that prevents frame reordering (Jarod Wilson) [1937053] - mac80211: add radiotap flag to assure frames are not reordered (Jarod Wilson) [1937053] - mac80211: save HE oper info in BSS config for mesh (Jarod Wilson) [1937053] - cfg80211: add support to configure HE MCS for beacon rate (Jarod Wilson) [1937053] - nl80211: fix beacon tx rate mask validation (Jarod Wilson) [1937053] - cfg80211: Add support to calculate and report 4096-QAM HE rates (Jarod Wilson) [1937053] - cfg80211: Add support to configure SAE PWE value to drivers (Jarod Wilson) [1937053] - ieee80211: Add definition for WFA DPP (Jarod Wilson) [1937053] - mac80211: use semicolons rather than commas to separate statements (Jarod Wilson) [1937053] - ath11k: FILS discovery and unsolicited broadcast probe response support (Jarod Wilson) [1937053] - ath10k: sdio: remove redundant check in for loop (Jarod Wilson) [1937053] - mac80211: add KCOV remote annotations to incoming frame processing (Jarod Wilson) [1937053] - rtw88: fix fw_fifo_addr check (Jarod Wilson) [1937053] - mac80211: don't require VHT elements for HE on 2.4 GHz (Jarod Wilson) [1937053] - cfg80211: regulatory: Fix inconsistent format argument (Jarod Wilson) [1937053] - mac80211: fix kernel-doc markups (Jarod Wilson) [1937053] - mac80211: always wind down STA state (Jarod Wilson) [1937053] - cfg80211: initialize wdev data earlier (Jarod Wilson) [1937053] - mac80211: fix use of skb payload instead of header (Jarod Wilson) [1937053] - mac80211: fix regression where EAPOL frames were sent in plaintext (Jarod Wilson) [1937053] - ath11k: remove repeated words in comments and warnings (Jarod Wilson) [1937053] - ath10k: ath10k_pci_init_irq(): workaround for checkpatch fallthrough warning (Jarod Wilson) [1937053] - ath10k: remove repeated words in comments (Jarod Wilson) [1937053] - nl80211: docs: add a description for s1g_cap parameter (Jarod Wilson) [1937053] - mac80211: use new function dev_fetch_sw_netstats (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: remove duplicated legacy_httxpowerdiff (Jarod Wilson) [1937053] - ath11k: Fix memory leak on error path (Jarod Wilson) [1937053] - mac80211: copy configured beacon tx rate to driver (Jarod Wilson) [1937053] - cfg80211: only allow S1G channels on S1G band (Jarod Wilson) [1937053] - mac80211: initialize last_rate for S1G STAs (Jarod Wilson) [1937053] - mac80211: handle lack of sband->bitrates in rates (Jarod Wilson) [1937053] - mac80211: avoid processing non-S1G elements on S1G band (Jarod Wilson) [1937053] - nl80211: fix non-split wiphy information (Jarod Wilson) [1937053] - nl80211: reduce non-split wiphy dump size (Jarod Wilson) [1937053] - ath11k: remove unnecessary casts to u32 (Jarod Wilson) [1937053] - ath11k: enable idle power save mode (Jarod Wilson) [1937053] - ath11k: start a timer to update HP for CE pipe 4 (Jarod Wilson) [1937053] - ath11k: start a timer to update REO cmd ring (Jarod Wilson) [1937053] - ath11k: start a timer to update TCL HP (Jarod Wilson) [1937053] - ath11k: set WMI pipe credit to 1 for QCA6390 (Jarod Wilson) [1937053] - ath11k: enable shadow register configuration and access (Jarod Wilson) [1937053] - ath11k: read and write registers below unwindowed address (Jarod Wilson) [1937053] - ath11k: debugfs: fix crash during rmmod (Jarod Wilson) [1937053] - ath11k: fix warning caused by lockdep_assert_held (Jarod Wilson) [1937053] - ath11k: mac: remove unused conf_mutex to solve a deadlock (Jarod Wilson) [1937053] - ath11k: pci: fix rmmod crash (Jarod Wilson) [1937053] - ath11k: add packet log support for QCA6390 (Jarod Wilson) [1937053] - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in idr_alloc (Jarod Wilson) [1937053] - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc (Jarod Wilson) [1937053] - ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock (Jarod Wilson) [1937053] - ath11k: disable monitor mode on QCA6390 (Jarod Wilson) [1937053] - ath11k: pci: check TCSR_SOC_HW_VERSION (Jarod Wilson) [1937053] - ath11k: add interface_modes to hw_params (Jarod Wilson) [1937053] - ath11k: fix AP mode for QCA6390 (Jarod Wilson) [1937053] - ath11k: support loading ELF board files (Jarod Wilson) [1937053] - ath11k: Correctly check errors for calls to debugfs_create_dir() (Jarod Wilson) [1937053] - ath11k: mac: fix parenthesis alignment (Jarod Wilson) [1937053] - rtw88: pci: Power cycle device during shutdown (Jarod Wilson) [1937053] - brcmfmac: Fix warning message after dongle setup failed (Jarod Wilson) [1937053] - brcmfmac: Fix warning when hitting FW crash with flow control feature (Jarod Wilson) [1937053] - net: rtlwifi: Replace in_interrupt() for context detection (Jarod Wilson) [1937053] - net: rtlwifi: Remove in_interrupt() from debug macro (Jarod Wilson) [1937053] - net: rtlwifi: Remove void* casts related to delayed work (Jarod Wilson) [1937053] - net: mwifiex: Use netif_rx_any_context(). (Jarod Wilson) [1937053] - net: iwlwifi: Remove in_interrupt() from tracing macro. (Jarod Wilson) [1937053] - net: ipw2x00,iwlegacy,iwlwifi: Remove in_interrupt() from debug macros (Jarod Wilson) [1937053] - net: brcmfmac: Convey allocation mode as argument (Jarod Wilson) [1937053] - net: brcmfmac: Convey execution context via argument to brcmf_netif_rx() (Jarod Wilson) [1937053] - net: brcmfmac: Replace in_interrupt() (Jarod Wilson) [1937053] - ath11k: Move non-fatal warn logs to dbg level (Jarod Wilson) [1937053] - ath9k: Remove set but not used variable (Jarod Wilson) [1937053] - rtw88: show current regulatory in tx power table (Jarod Wilson) [1937053] - rtw88: add dump fw crash log (Jarod Wilson) [1937053] - rtw88: add dump firmware fifo support (Jarod Wilson) [1937053] - rtw88: handle and recover when firmware crash (Jarod Wilson) [1937053] - rtw88: increse the size of rx buffer size (Jarod Wilson) [1937053] - nl80211: extend support to config spatial reuse parameter set (Jarod Wilson) [1937053] - mac80211: Support not iterating over not-sdata-in-driver ifaces (Jarod Wilson) [1937053] - mac80211: fix some more kernel-doc in mesh (Jarod Wilson) [1937053] - cfg80211: regulatory: remove a bogus initialization (Jarod Wilson) [1937053] - mac80211: fix regression in sta connection monitor (Jarod Wilson) [1937053] - nl80211: include frequency offset in survey info (Jarod Wilson) [1937053] - mac80211: support S1G association (Jarod Wilson) [1937053] - mac80211: receive and process S1G beacons (Jarod Wilson) [1937053] - mac80211: avoid rate init for S1G band (Jarod Wilson) [1937053] - mac80211: handle S1G low rates (Jarod Wilson) [1937053] - mac80211: don't calculate duration for S1G (Jarod Wilson) [1937053] - mac80211: encode listen interval for S1G (Jarod Wilson) [1937053] - cfg80211: handle Association Response from S1G STA (Jarod Wilson) [1937053] - mac80211: convert S1G beacon to scan results (Jarod Wilson) [1937053] - cfg80211: parse S1G Operation element for BSS channel (Jarod Wilson) [1937053] - cfg80211: convert S1G beacon to scan results (Jarod Wilson) [1937053] - mac80211: support S1G STA capabilities (Jarod Wilson) [1937053] - nl80211: support S1G capability overrides in assoc (Jarod Wilson) [1937053] - mac80211: s1g: choose scanning width based on frequency (Jarod Wilson) [1937053] - mac80211: get correct default channel width for S1G (Jarod Wilson) [1937053] - wireless: radiotap: fix some kernel-doc (Jarod Wilson) [1937053] - mac80211: fix some missing kernel-doc (Jarod Wilson) [1937053] - mac80211: Inform AP when returning operating channel (Jarod Wilson) [1937053] - ath11k: fix undefined reference to 'ath11k_debugfs_htt_ext_stats_handler' (Jarod Wilson) [1937053] - mt76: mt7663s: remove max_tx_fragments limitation (Jarod Wilson) [1937053] - mt76: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - mt76: mt7915: add offchannel condition in switch channel command (Jarod Wilson) [1937053] - mt76: mt7915: convert to use le16_add_cpu() (Jarod Wilson) [1937053] - mt76: Fix unsigned expressions compared with zero (Jarod Wilson) [1937053] - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_beacon (Jarod Wilson) [1937053] - mt76: mt76x0: Move tables used only by init.c to their own header file (Jarod Wilson) [1937053] - mt76: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - mt76: mt7615: unlock dfs bands (Jarod Wilson) [1937053] - mt76: mt7663: check isr read return value in mt7663s_rx_work (Jarod Wilson) [1937053] - mt76: mt7663s: introduce sdio tx aggregation (Jarod Wilson) [1937053] - mt76: mt7663s: fix possible quota leak in mt7663s_refill_sched_quota (Jarod Wilson) [1937053] - mt76: move pad estimation out of mt76_skb_adjust_pad (Jarod Wilson) [1937053] - mt76: mt7663s: introduce __mt7663s_xmit_queue routine (Jarod Wilson) [1937053] - mt76: mt7663s: split mt7663s_tx_update_sched in mt7663s_tx_{pick,update}_quota (Jarod Wilson) [1937053] - mt76: mt7663s: do not use altx for ctl/mgmt traffic (Jarod Wilson) [1937053] - mt76: mt7622: fix fw hang on mt7622 (Jarod Wilson) [1937053] - mt76: mt7615: fix VHT LDPC capability (Jarod Wilson) [1937053] - mt76: mt7615: Remove set but unused variable 'index' (Jarod Wilson) [1937053] - mt76: remove retry_q from struct mt76_txq and related code (Jarod Wilson) [1937053] - mt76: move txwi handling code to dma.c, since it is mmio specific (Jarod Wilson) [1937053] - mt76: mt7915: fix queue/tid mapping for airtime reporting (Jarod Wilson) [1937053] - mt76: mt7915: simplify mt7915_lmac_mapping (Jarod Wilson) [1937053] - mt76: dma: cache dma map address/len in struct mt76_queue_entry (Jarod Wilson) [1937053] - mt76: mt7915: fix HE BSS info (Jarod Wilson) [1937053] - mt76: convert from tx tasklet to tx worker thread (Jarod Wilson) [1937053] - mt76: add utility functions for deferring work to a kernel thread (Jarod Wilson) [1937053] - mt76: testmode: add a limit for queued tx_frames packets (Jarod Wilson) [1937053] - mt76: mt7615: fix antenna selection for testmode tx_frames (Jarod Wilson) [1937053] - mt76: mt7615: fix MT_ANT_SWITCH_CON register definition (Jarod Wilson) [1937053] - mt76: mt7915: fix unexpected firmware mode (Jarod Wilson) [1937053] - mt76: mt76x02: tune tx ring size (Jarod Wilson) [1937053] - mt76: mt7603: tune tx ring size (Jarod Wilson) [1937053] - mt76: remove struct mt76_sw_queue (Jarod Wilson) [1937053] - mt76: rely on AQL for burst size limits on tx queueing (Jarod Wilson) [1937053] - mt76: remove swq from struct mt76_sw_queue (Jarod Wilson) [1937053] - mt76: remove qid argument to drv->tx_complete_skb (Jarod Wilson) [1937053] - mt76: unify queue tx cleanup code (Jarod Wilson) [1937053] - mt76: sdio: fix use of q->head and q->tail (Jarod Wilson) [1937053] - mt76: usb: fix use of q->head and q->tail (Jarod Wilson) [1937053] - mt76: mt7603: check for single-stream EEPROM configuration (Jarod Wilson) [1937053] - mt76: add memory barrier to DMA queue kick (Jarod Wilson) [1937053] - mt76: mt7915: add support for accessing mapped registers via bus ops (Jarod Wilson) [1937053] - mt76: mt7615: significantly reduce interrupt load (Jarod Wilson) [1937053] - mt76: mt7915: significantly reduce interrupt load (Jarod Wilson) [1937053] - mt76: mt7915: schedule tx tasklet in mt7915_mac_tx_free (Jarod Wilson) [1937053] - mt76: dma: update q->queued immediately on cleanup (Jarod Wilson) [1937053] - mt76: mt7915: optimize mt7915_mac_sta_poll (Jarod Wilson) [1937053] - mt76: mt7615: fix reading airtime statistics (Jarod Wilson) [1937053] - mt76: mt7663u: fix dma header initialization (Jarod Wilson) [1937053] - mt76: fix a possible NULL pointer dereference in mt76_testmode_dump (Jarod Wilson) [1937053] - mt76: mt7615: fix a possible NULL pointer dereference in mt7615_pm_wake_work (Jarod Wilson) [1937053] - mt76: mt7615: fix possible memory leak in mt7615_tm_set_tx_power (Jarod Wilson) [1937053] - mt76: mt7663s: fix unable to handle kernel paging request (Jarod Wilson) [1937053] - mt76: mt7663s: fix resume failure (Jarod Wilson) [1937053] - mt76: mt7663s: use NULL instead of 0 in sdio code (Jarod Wilson) [1937053] - mt76: mt7615: release mutex in mt7615_reset_test_set (Jarod Wilson) [1937053] - mt76: mt7915: add Tx A-MSDU offloading support (Jarod Wilson) [1937053] - mt76: mt7915: add missing flags in WMM parameter settings (Jarod Wilson) [1937053] - mt76: mt7915: simplify aggregation session check (Jarod Wilson) [1937053] - mt76: mt7615: remove mtxq->agg_ssn assignment (Jarod Wilson) [1937053] - mt76: move mt76_check_agg_ssn to driver tx_prepare calls (Jarod Wilson) [1937053] - mt76: mt7915: enable offloading of sequence number assignment (Jarod Wilson) [1937053] - mt76: mt7915: increase tx retry count (Jarod Wilson) [1937053] - mt76: mt7915: clean up station stats polling and rate control update (Jarod Wilson) [1937053] - mt76: mt7915: do not do any work in napi poll after calling napi_complete_done() (Jarod Wilson) [1937053] - mt76: mt7615: do not do any work in napi poll after calling napi_complete_done() (Jarod Wilson) [1937053] - mt76: mt76x02: clean up and fix interrupt masking in the irq handler (Jarod Wilson) [1937053] - mt76: mt7615: only clear unmasked interrupts in irq tasklet (Jarod Wilson) [1937053] - mt76: mt7915: clean up and fix interrupt masking in the irq handler (Jarod Wilson) [1937053] - mt76: set interrupt mask register to 0 before requesting irq (Jarod Wilson) [1937053] - mt76: fix double DMA unmap of the first buffer on 7615/7915 (Jarod Wilson) [1937053] - mt76: mt7915: fix crash on tx rate report for invalid stations (Jarod Wilson) [1937053] - mt76: mt7915: enable U-APSD on AP side (Jarod Wilson) [1937053] - mt76: mt76s: get rid of unused variable (Jarod Wilson) [1937053] - mt76: mt76s: move tx/rx processing in 2 separate works (Jarod Wilson) [1937053] - mt76: mt76s: move status processing in txrx wq (Jarod Wilson) [1937053] - mt76: mt7663s: move rx processing in txrx wq (Jarod Wilson) [1937053] - mt76: mt76s: move tx processing in a dedicated wq (Jarod Wilson) [1937053] - mt76: mt76s: fix oom in mt76s_tx_queue_skb_raw (Jarod Wilson) [1937053] - mt76: mt7615: reschedule runtime-pm receiving a tx interrupt (Jarod Wilson) [1937053] - mt76: do not inject packets if MT76_STATE_PM is set (Jarod Wilson) [1937053] - mt76: mt7615: hold mt76 lock queueing wd in mt7615_queue_key_update (Jarod Wilson) [1937053] - mt76: mt7663s: move drv_own/fw_own in mt7615_mcu_ops (Jarod Wilson) [1937053] - mt76: mt7615: move drv_own/fw_own in mt7615_mcu_ops (Jarod Wilson) [1937053] - mt76: mt7615: register ext_phy if DBDC is detected (Jarod Wilson) [1937053] - brcmfmac: check return value of driver_for_each_device() (Jarod Wilson) [1937053] - ath11k: Remove unused function ath11k_htc_restore_tx_skb() (Jarod Wilson) [1937053] - ath11k: remove redundant num_keep_alive_pattern assignment (Jarod Wilson) [1937053] - ath11k: wmi: remove redundant configuration values from init (Jarod Wilson) [1937053] - ath11k: Add support spectral scan for IPQ6018 (Jarod Wilson) [1937053] - ath11k: debugfs: move some function declarations to correct header files (Jarod Wilson) [1937053] - ath11k: rename debug_htt_stats.[c|h] to debugfs_htt_stats.[c|h] (Jarod Wilson) [1937053] - ath11k: debugfs: use ath11k_debugfs_ prefix (Jarod Wilson) [1937053] - ath11k: refactor debugfs code into debugfs.c (Jarod Wilson) [1937053] - ath10k: Use bdf calibration variant for snoc targets (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: Use ffs in _phy_calculate_bit_shift (Jarod Wilson) [1937053] - mt7601u: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - ath11k: Remove rproc references from common core layer (Jarod Wilson) [1937053] - ath9k: hif_usb: fix race condition between usb_get_urb() and usb_kill_anchored_urbs() (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix comparison to bool warning in phy.c (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: fix comparison to bool warning in mac.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192c: fix comparison to bool warning in phy_common.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - mac80211: fix some encapsulation offload kernel-doc (Jarod Wilson) [1937053] - cfg80211: add missing kernel-doc for S1G band capabilities (Jarod Wilson) [1937053] - mac80211: Unsolicited broadcast probe response support (Jarod Wilson) [1937053] - nl80211: Unsolicited broadcast probe response support (Jarod Wilson) [1937053] - mac80211: Add FILS discovery support (Jarod Wilson) [1937053] - nl80211: Add FILS discovery support (Jarod Wilson) [1937053] - mac80211: allow bigger A-MSDU sizes in VHT, even if HT is limited (Jarod Wilson) [1937053] - nl80211: support setting S1G channels (Jarod Wilson) [1937053] - nl80211: correctly validate S1G beacon head (Jarod Wilson) [1937053] - cfg80211: regulatory: handle S1G channels (Jarod Wilson) [1937053] - nl80211: advertise supported channel width in S1G (Jarod Wilson) [1937053] - ieee80211: redefine S1G bits with GENMASK (Jarod Wilson) [1937053] - mac80211: reorganize code to remove a forward declaration (Jarod Wilson) [1937053] - mac80211: extend ieee80211_tx_status_ext to support bulk free (Jarod Wilson) [1937053] - mac80211: support using ieee80211_tx_status_ext to free skbs without status info (Jarod Wilson) [1937053] - mac80211: unify 802.3 (offload) and 802.11 tx status codepath (Jarod Wilson) [1937053] - mac80211: optimize station connection monitor (Jarod Wilson) [1937053] - mac80211: notify the driver when a sta uses 4-address mode (Jarod Wilson) [1937053] - mac80211: swap NEED_TXPROCESSING and HW_80211_ENCAP tx flags (Jarod Wilson) [1937053] - mac80211: remove tx status call to ieee80211_sta_register_airtime (Jarod Wilson) [1937053] - mac80211: reduce duplication in tx status functions (Jarod Wilson) [1937053] - mac80211: rework tx encapsulation offload API (Jarod Wilson) [1937053] - mac80211: set info->control.hw_key for encap offload packets (Jarod Wilson) [1937053] - mac80211: skip encap offload for tx multicast/control packets (Jarod Wilson) [1937053] - mac80211: check and refresh aggregation session in encap offload tx (Jarod Wilson) [1937053] - mac80211: add missing queue/hash initialization to 802.3 xmit (Jarod Wilson) [1937053] - cfg80211: add more comments for ap_isolate in bss_parameters (Jarod Wilson) [1937053] - lib80211: Remove unused macro DRV_NAME (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in phy.c (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in trx.c (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in rf.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in trx.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in phy.c (Jarod Wilson) [1937053] - rtw88: rtw8822c: eliminate code duplication, use native swap() function (Jarod Wilson) [1937053] - brcmsmac: main: Eliminate empty brcms_c_down_del_timer() (Jarod Wilson) [1937053] - brcmsmac: phy_lcn: Remove unused variable 'lcnphy_rx_iqcomp_table_rev0' (Jarod Wilson) [1937053] - brcmsmac: phytbl_lcn: Remove unused array 'dot11lcn_gain_tbl_rev1' (Jarod Wilson) [1937053] - brcmfmac: support SAE authentication offload in AP mode (Jarod Wilson) [1937053] - brcmfmac: support 4-way handshake offloading for WPA/WPA2-PSK in AP mode (Jarod Wilson) [1937053] - ath10k: Remove unused macro ATH10K_ROC_TIMEOUT_HZ (Jarod Wilson) [1937053] - ath11k: Remove unused inline function htt_htt_stats_debug_dump() (Jarod Wilson) [1937053] - ath11k: fix link error when CONFIG_REMOTEPROC is disabled (Jarod Wilson) [1937053] - ath11k: remove calling ath11k_init_hw_params() second time (Jarod Wilson) [1937053] - ath11k: add raw mode and software crypto support (Jarod Wilson) [1937053] - ath11k: add ipq6018 support (Jarod Wilson) [1937053] - ath11k: move target ce configs to hw_params (Jarod Wilson) [1937053] - net: wireless: drop bogus CRYPTO_xxx Kconfig selects (Jarod Wilson) [1937053] - rtlwifi: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy (Jarod Wilson) [1937053] - rtl8xxxu: prevent potential memory leak (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: Delete a stray tab (Jarod Wilson) [1937053] - ath11k: Add peer max mpdu parameter in peer assoc command (Jarod Wilson) [1937053] - ath10k: Add support for chain1 regulator supply voting (Jarod Wilson) [1937053] - brcmfmac: set F2 SDIO block size to 128 bytes for BCM4329 (Jarod Wilson) [1937053] - brcmfmac: drop chip id from debug messages (Jarod Wilson) [1937053] - brcmfmac: increase F2 watermark for BCM4329 (Jarod Wilson) [1937053] - mwifiex: sdio: Fix -Wunused-const-variable warnings (Jarod Wilson) [1937053] - mwifiex: wmm: Fix -Wunused-const-variable warnings (Jarod Wilson) [1937053] - mt7601u: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtlwifi: Remove temporary definition of RT_TRACE (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - brcmsmac: phytbl_n: Remove a few unused arrays (Jarod Wilson) [1937053] - brcmsmac: phytbl_lcn: Remove unused array 'dot11lcnphytbl_rx_gain_info_rev1' (Jarod Wilson) [1937053] - brcmsmac: phy_n: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmsmac: phy_lcn: Remove a bunch of unused variables (Jarod Wilson) [1937053] - prism54: isl_ioctl: Remove unused variable 'j' (Jarod Wilson) [1937053] - rtw88: debug: Remove unused variables 'val' (Jarod Wilson) [1937053] - brcmfmac: fwsignal: Finish documenting 'brcmf_fws_mac_descriptor' (Jarod Wilson) [1937053] - brcmsmac: phy_cmn: Remove a unused variables 'vbat' and 'temp' (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix a couple of function headers (Jarod Wilson) [1937053] - brcmsmac: ampdu: Remove a couple set but unused variables (Jarod Wilson) [1937053] - mwifiex: pcie: Move tables to the only place they're used (Jarod Wilson) [1937053] - ath10k: Get rid of "per_ce_irq" hw param (Jarod Wilson) [1937053] - ath10k: Keep track of which interrupts fired, don't poll them (Jarod Wilson) [1937053] - ath10k: Add interrupt summary based CE processing (Jarod Wilson) [1937053] - rtlwifi: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtl818x_pci: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - p54: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192c: phy_common: Remove unused variable 'bbvalue' (Jarod Wilson) [1937053] - brcmfmac: fwsignal: Remove unused variable 'brcmf_fws_prio2fifo' (Jarod Wilson) [1937053] - b43: phy_ht: Remove 9 year old TODO (Jarod Wilson) [1937053] - brcmfmac: btcoex: Update 'brcmf_btcoex_state' and demote others (Jarod Wilson) [1937053] - brcmfmac: firmware: Demote seemingly unintentional kernel-doc header (Jarod Wilson) [1937053] - brcmsmac: main: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix a bunch of function docs (Jarod Wilson) [1937053] - brcmsmac: ampdu: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmfmac: p2p: Deal with set but unused variables (Jarod Wilson) [1937053] - mt7601u: phy: Fix misnaming when documented function parameter 'dac' (Jarod Wilson) [1937053] - rtlwifi: rtl8723-common: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8723be Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192se Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192-common: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: btcoexist: Replace RT_TRACE with rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: Replace RT_TRACE with rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: Start changing RT_TRACE into rtl_dbg (Jarod Wilson) [1937053] - ath10k: wmi: Use struct_size() helper in ath10k_wmi_alloc_skb() (Jarod Wilson) [1937053] - ath11k: fix missing error check on call to ath11k_pci_get_user_msi_assignment (Jarod Wilson) [1937053] - ath11k: fix spelling mistake "moniter" -> "monitor" (Jarod Wilson) [1937053] - nl80211: support SAE authentication offload in AP mode (Jarod Wilson) [1937053] - atmel: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - b43: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - brcmfmac: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rt2x00: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - b43: phy_n: Add empty braces around empty statements (Jarod Wilson) [1937053] - b43: phy_common: Demote non-conformant kerneldoc header (Jarod Wilson) [1937053] - brcmsmac: mac80211_if: Demote a few non-conformant kerneldoc headers (Jarod Wilson) [1937053] - brcmfmac: fweh: Fix docrot related function documentation issues (Jarod Wilson) [1937053] - brcmfmac: fweh: Remove set but unused variable 'err' (Jarod Wilson) [1937053] - b43: main: Add braces around empty statements (Jarod Wilson) [1937053] - atmel: Demote non-kerneldoc header to standard comment block (Jarod Wilson) [1937053] - nl80211: rename csa counter attributes countdown counters (Jarod Wilson) [1937053] - nl80211: add support for setting fixed HE rate/gi/ltf (Jarod Wilson) [1937053] - ath11k: return -ENOMEM on allocation failure (Jarod Wilson) [1937053] - ath11k: return error if firmware request fails (Jarod Wilson) [1937053] - ath9k: Do not select MAC80211_LEDS by default (Jarod Wilson) [1937053] - ath9k: ar5008_initvals: Move ar5416Bank{0,1,2,3,7} to where they are used (Jarod Wilson) [1937053] - ath9k: ar5008_initvals: Remove unused table entirely (Jarod Wilson) [1937053] - ath9k: ar9001_initvals: Remove unused array 'ar5416Bank6_9100' (Jarod Wilson) [1937053] - ath9k: ar9002_initvals: Remove unused array 'ar9280PciePhy_clkreq_off_L1_9280' (Jarod Wilson) [1937053] - ath9k_htc: Do not select MAC80211_LEDS by default (Jarod Wilson) [1937053] - rtw88: 8822c: update tx power limit tables to RF v20.1 (Jarod Wilson) [1937053] - rtw88: use read_poll_timeout_atomic() for poll loop (Jarod Wilson) [1937053] - rtw88: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtw88: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - mwifiex: don't call del_timer_sync() on uninitialized timer (Jarod Wilson) [1937053] - mwifiex: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - mwifiex: Clean up some err and dbg messages (Jarod Wilson) [1937053] - mwifiex: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - nl80211: fix PORT_AUTHORIZED wording to reflect behavior (Jarod Wilson) [1937053] - cfg80211: add helper fn for adjacent rule channels (Jarod Wilson) [1937053] - cfg80211: add helper fn for single rule channels (Jarod Wilson) [1937053] - nl80211: use NLA_POLICY_RANGE(NLA_BINARY, ...) for a few attributes (Jarod Wilson) [1937053] - nl80211: clean up code/policy a bit (Jarod Wilson) [1937053] - net: wireless: wext_compat.c: delete duplicated word (Jarod Wilson) [1937053] - net: wireless: sme.c: delete duplicated word (Jarod Wilson) [1937053] - net: wireless: scan.c: delete or fix duplicated words (Jarod Wilson) [1937053] - net: wireless: reg.c: delete duplicated words + fix punctuation (Jarod Wilson) [1937053] - net: wireless: delete duplicated word + fix grammar (Jarod Wilson) [1937053] - net: mac80211: mesh.h: delete duplicated word (Jarod Wilson) [1937053] - net: mac80211: agg-rx.c: fix duplicated words (Jarod Wilson) [1937053] - net: ath11k: constify ath11k_thermal_ops (Jarod Wilson) [1937053] - ath10k: Add new api to support reset TID config (Jarod Wilson) [1937053] - ath10k: Add new api to support TID specific configuration (Jarod Wilson) [1937053] - ath10k: Move rate mask validation function up in the file (Jarod Wilson) [1937053] - ath10k: Add wmi command support for station specific TID config (Jarod Wilson) [1937053] - ath10k: sdio: add firmware coredump support (Jarod Wilson) [1937053] - ath10k: add bus type for each layout of coredump (Jarod Wilson) [1937053] - netlink/wireless: consistently use NLA_POLICY_MIN_LEN() (Jarod Wilson) [1937053] - netlink/wireless: consistently use NLA_POLICY_EXACT_LEN() (Jarod Wilson) [1937053] - rndis_wlan: tighten check of rndis_query_oid return (Jarod Wilson) [1937053] - rtw88: fix spelling mistake: "unsupport" -> "unsupported" (Jarod Wilson) [1937053] - brcmfmac: use *ph to print small buffer (Jarod Wilson) [1937053] - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach (Jarod Wilson) [1937053] - ath11k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath10k: fix VHT NSS calculation when STBC is enabled (Jarod Wilson) [1937053] - ath10k: Register shutdown handler (Jarod Wilson) [1937053] - ath11k: reset MHI during power down and power up (Jarod Wilson) [1937053] - ath11k: use TCL_DATA_RING_0 for QCA6390 (Jarod Wilson) [1937053] - ath11k: process both lmac rings for QCA6390 (Jarod Wilson) [1937053] - ath11k: assign correct search flag and type for QCA6390 (Jarod Wilson) [1937053] - ath11k: delay vdev_start for QCA6390 (Jarod Wilson) [1937053] - ath11k: refine the phy_id check in ath11k_reg_chan_list_event (Jarod Wilson) [1937053] - ath11k: setup QCA6390 rings for both rxdmas (Jarod Wilson) [1937053] - ath11k: don't initialize rxdma1 related ring (Jarod Wilson) [1937053] - ath11k: enable DP interrupt setup for QCA6390 (Jarod Wilson) [1937053] - ath11k: dp: redefine peer_map and peer_unmap (Jarod Wilson) [1937053] - ath11k: wmi: put hardware to DBS mode (Jarod Wilson) [1937053] - ath11k: initialize wmi config based on hw_params (Jarod Wilson) [1937053] - ath11k: force single pdev only for QCA6390 (Jarod Wilson) [1937053] - ath11k: disable CE interrupt before hif start (Jarod Wilson) [1937053] - ath11k: ce: get msi_addr and msi_data before srng setup (Jarod Wilson) [1937053] - ath11k: hal: assign msi_addr and msi_data to srng (Jarod Wilson) [1937053] - ath11k: ce: remove CE_COUNT() macro (Jarod Wilson) [1937053] - ath11k: ce: remove host_ce_config_wlan macro (Jarod Wilson) [1937053] - ath11k: ce: support different CE configurations (Jarod Wilson) [1937053] - ath11k: hal: cleanup dynamic register macros (Jarod Wilson) [1937053] - ath11k: hal: create register values dynamically (Jarod Wilson) [1937053] - ath10k: move enable_pll_clk call to ath10k_core_start() (Jarod Wilson) [1937053] - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path (Jarod Wilson) [1937053] - ath10k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath9k: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support (Jarod Wilson) [1937053] - ath11k: hal: create hw_srng_config dynamically (Jarod Wilson) [1937053] - ath11k: enable internal sleep clock (Jarod Wilson) [1937053] - ath11k: fix KASAN warning of ath11k_qmi_wlanfw_wlan_cfg_send (Jarod Wilson) [1937053] - ath11k: fix memory OOB access in qmi_decode (Jarod Wilson) [1937053] - ath11k: allocate smaller chunks of memory for firmware (Jarod Wilson) [1937053] - ath11k: setup ce tasklet for control path (Jarod Wilson) [1937053] - ath11k: configure copy engine msi address in CE srng (Jarod Wilson) [1937053] - ath11k: pci: add read32() and write32() hif operations (Jarod Wilson) [1937053] - ath11k: fill appropriate QMI service instance id for QCA6390 (Jarod Wilson) [1937053] - ath11k: add board file support for PCI devices (Jarod Wilson) [1937053] - ath11k: add support for m3 firmware (Jarod Wilson) [1937053] - ath11k: use remoteproc only with AHB devices (Jarod Wilson) [1937053] - ath11k: pci: add HAL, CE and core initialisation (Jarod Wilson) [1937053] - ath11k: register MHI controller device for QCA6390 (Jarod Wilson) [1937053] - ath11k: implement ath11k_core_pre_init() (Jarod Wilson) [1937053] - ath11k: pci: add MSI config initialisation (Jarod Wilson) [1937053] - ath11k: pci: setup resources (Jarod Wilson) [1937053] - ath11k: add simple PCI client driver for QCA6390 chipset (Jarod Wilson) [1937053] - ath11k: move ring mask definitions to hw_params (Jarod Wilson) [1937053] - ath11k: add hw_params entry for QCA6390 (Jarod Wilson) [1937053] - ath11k: do not depend on ARCH_QCOM for ath11k (Jarod Wilson) [1937053] - ath10k: correct the array index from mcs index for HT mode for QCA6174 (Jarod Wilson) [1937053] - ath10k: enable supports_peer_stats_info for QCA6174 PCI devices (Jarod Wilson) [1937053] - ath10k: remove return for NL80211_STA_INFO_TX_BITRATE (Jarod Wilson) [1937053] - ath10k: add wmi service peer stat info for wmi tlv (Jarod Wilson) [1937053] - ath10k: start recovery process when payload length exceeds max htc length for sdio (Jarod Wilson) [1937053] - ath: drop unnecessary list_empty (Jarod Wilson) [1937053] - ath9k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath9k: Fix typo in function name (Jarod Wilson) [1937053] - ath9k: Replace HTTP links with HTTPS ones (Jarod Wilson) [1937053] - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() (Jarod Wilson) [1937053] - ath9k: Check the return value of pcie_capability_read_*() (Jarod Wilson) [1937053] - ath11k: remove define ATH11K_QMI_DEFAULT_CAL_FILE_NAME (Jarod Wilson) [1937053] - ath11k: don't use defines in hw_params (Jarod Wilson) [1937053] - ath11k: qmi: cleanup info messages (Jarod Wilson) [1937053] - ath11k: remove useless info messages (Jarod Wilson) [1937053] - ath11k: change ath11k_core_fetch_board_data_api_n() to use ath11k_core_create_firmware_path() (Jarod Wilson) [1937053] - ath11k: don't use defines for hw specific firmware directories (Jarod Wilson) [1937053] - ath11k: create a common function to request all firmware files (Jarod Wilson) [1937053] - ath11k: Add bdf-addr in hw_params (Jarod Wilson) [1937053] - ath11k: add hw_ops for pdev id to hw_mac mapping (Jarod Wilson) [1937053] - ath11k: define max_radios in hw_params (Jarod Wilson) [1937053] - ath11k: convert ath11k_hw_params to an array (Jarod Wilson) [1937053] - ath11k: ahb: call ath11k_core_init() before irq configuration (Jarod Wilson) [1937053] - ath10k: pci: fix memcpy size of bmi response (Jarod Wilson) [1937053] - ath11k: rename default board file (Jarod Wilson) [1937053] - ath11k: update firmware files read path (Jarod Wilson) [1937053] - ath10k: provide survey info as accumulated data (Jarod Wilson) [1937053] - ath10k: fix retry packets update in station dump (Jarod Wilson) [1937053] - ath10k: Wait until copy complete is actually done before completing (Jarod Wilson) [1937053] - mac80211_hwsim: add 6GHz channels (Jarod Wilson) [1937053] - mac80211_hwsim: indicate support for S1G (Jarod Wilson) [1937053] - mac80211_hwsim: write TSF timestamp correctly to S1G beacon (Jarod Wilson) [1937053] - mac80211_hwsim: fix typo in kernel-doc (Jarod Wilson) [1937053] - mac80211: rename csa counters to countdown counters (Jarod Wilson) [1937053] - mac80211_hwsim: report the WIPHY_FLAG_SUPPORTS_5_10_MHZ capability (Jarod Wilson) [1937053] - mac80211_hwsim: Claim support for setting Beacon frame TX legacy rate (Jarod Wilson) [1937053] - mac80211_hwsim: Advertise support for multicast RX registration (Jarod Wilson) [1937053] - mac80211_hwsim: indicate in IBSS that we have transmitted beacons (Jarod Wilson) [1937053] - mac80211_hwsim: notify wmediumd of used MAC addresses (Jarod Wilson) [1937053] - mac80211_hwsim: use GFP_ATOMIC under spin lock (Jarod Wilson) [1937053] - mac80211_hwsim: Use kstrndup() in place of kasprintf() (Jarod Wilson) [1937053] - mac80211_hwsim: add frame transmission support over virtio (Jarod Wilson) [1937053] - mac80211_hwsim: enable Beacon protection (Jarod Wilson) [1937053] - mac80211_hwsim: add power save support (Jarod Wilson) [1937053] - mac80211_hwsim: remove maximum TX power (Jarod Wilson) [1937053] - mac80211_hwsim: use DEFINE_DEBUGFS_ATTRIBUTE to define debugfs fops (Jarod Wilson) [1937053] - mac80211_hwsim: add support for OCB (Jarod Wilson) [1937053] - mac80211_hwsim: add more 5GHz channels, 5/10 MHz support (Jarod Wilson) [1937053] - mac80211_hwsim: fix incorrect dev_alloc_name failure goto (Jarod Wilson) [1937053] - mac80211_hwsim: Register support for HE meshpoint (Jarod Wilson) [1937053] - mac80211_hwsim: fill boottime_ns in netlink RX path (Jarod Wilson) [1937053] - mac80211_hwsim: Fix possible null-pointer dereferences in hwsim_dump_radio_nl() (Jarod Wilson) [1937053] - mac80211_hwsim: Extended Key ID API update (Jarod Wilson) [1937053] - mac80211_hwsim: Fix a typo in the name of function 'mac80211_hswim_he_capab()' (Jarod Wilson) [1937053] - mac80211_hwsim: Extended Key ID support (Jarod Wilson) [1937053] - mac80211_hwsim: set p2p device interface support indication (Jarod Wilson) [1937053] - mac80211_hwsim: calculate if_combination.max_interfaces (Jarod Wilson) [1937053] - mac80211_hwsim: propagate genlmsg_reply return code (Jarod Wilson) [1937053] - mac80211_hwsim: Declare support for Multi-BSSID (Jarod Wilson) [1937053] - mac80211_hwsim: Support boottime in scan results (Jarod Wilson) [1937053] - mac80211_hwsim: check that n_limits makes sense (Jarod Wilson) [1937053] - mac80211_hwsim: fix overwriting of if_combination (Jarod Wilson) [1937053] - mac80211_hwsim: fixes kernel crash during mac80211_hwsim init (Jarod Wilson) [1937053] - mac80211_hwsim: allow configurable cipher types (Jarod Wilson) [1937053] - mac80211_hwsim: allow setting iftype support (Jarod Wilson) [1937053] - mac80211_hwsim: move HWSIM_ATTR_RADIO_NAME parsing last (Jarod Wilson) [1937053] - mac80211_hwsim: fix module init error paths for netlink (Jarod Wilson) [1937053] - mac80211_hwsim: drop now unused work-queue from hwsim (Jarod Wilson) [1937053] - mac80211_hwsim: do not omit multicast announce of first added radio (Jarod Wilson) [1937053] - mac80211_hwsim: fix race in radio destruction from netlink notifier (Jarod Wilson) [1937053] - mac80211_hwsim: fix locking when iterating radios during ns exit (Jarod Wilson) [1937053] - wireless: align to draft 11ax D3.0 (Jarod Wilson) [1937053] - mac80211_hwsim: correct use of IEEE80211_VHT_CAP_RXSTBC_X (Jarod Wilson) [1937053] - mac80211_hwsim: require at least one channel (Jarod Wilson) [1937053] - mac80211_hwsim: Add support for HE (Jarod Wilson) [1937053] - net/fq_impl: do not maintain a backlog-sorted list of flows (Jarod Wilson) [1937053] - net/fq_impl: drop get_default_func, move default flow to fq_tin (Jarod Wilson) [1937053] - net/fq_impl: bulk-free packets from a flow on overmemory (Jarod Wilson) [1937053] - net/fq_impl: use skb_get_hash instead of skb_get_hash_perturb (Jarod Wilson) [1937053] - net/fq_impl: Switch to kvmalloc() for memory allocation (Jarod Wilson) [1937053] - mac80211: set NETIF_F_LLTX when using intermediate tx queues (Jarod Wilson) [1937053] - mac80211: calculate hash for fq without holding fq->lock in itxq enqueue (Jarod Wilson) [1937053] - nvme-tcp: fix misuse of __smp_processor_id with preemption enabled (Gopal Tiwari) [1964227] - powerpc/smp: Cache CPU to chip lookup (Daniel Henrique Barboza) [1934421] - Revert "powerpc/topology: Update topology_core_cpumask" (Daniel Henrique Barboza) [1934421] - powerpc/smp: Reintroduce cpu_core_mask (Daniel Henrique Barboza) [1934421] - scsi: smartpqi: Remove unused functions (Don Brace) [1952154] - scsi: smartpqi: Fix device pointer variable reference static checker issue (Don Brace) [1952154] - scsi: smartpqi: Fix blocks_per_row static checker issue (Don Brace) [1952154] - scsi: smartpqi: Update version to 2.1.8-045 (Don Brace) [1952154] - scsi: smartpqi: Add new PCI IDs (Don Brace) [1952154] - scsi: smartpqi: Correct system hangs when resuming from hibernation (Don Brace) [1952154] - scsi: smartpqi: Update enclosure identifier in sysfs (Don Brace) [1952154] - scsi: smartpqi: Add additional logging for LUN resets (Don Brace) [1952154] - scsi: smartpqi: Update SAS initiator_port_protocols and target_port_protocols (Don Brace) [1952154] - scsi: smartpqi: Add phy ID support for the physical drives (Don Brace) [1952154] - scsi: smartpqi: Convert snprintf() to scnprintf() (Don Brace) [1952154] - scsi: smartpqi: Fix driver synchronization issues (Don Brace) [1952154] - scsi: smartpqi: Update device scan operations (Don Brace) [1952154] - scsi: smartpqi: Update OFA management (Don Brace) [1952154] - scsi: smartpqi: Update RAID bypass handling (Don Brace) [1952154] - scsi: smartpqi: Update suspend/resume and shutdown (Don Brace) [1952154] - scsi: smartpqi: Synchronize device resets with mutex (Don Brace) [1952154] - scsi: smartpqi: Update soft reset management for OFA (Don Brace) [1952154] - scsi: smartpqi: Update event handler (Don Brace) [1952154] - scsi: smartpqi: Add support for wwid (Don Brace) [1952154] - scsi: smartpqi: Remove timeouts from internal cmds (Don Brace) [1952154] - scsi: smartpqi: Disable WRITE SAME for HBA NVMe disks (Don Brace) [1952154] - scsi: smartpqi: Add host level stream detection enable (Don Brace) [1952154] - scsi: smartpqi: Add stream detection (Don Brace) [1952154] - scsi: smartpqi: Align code with oob driver (Don Brace) [1952154] - scsi: smartpqi: Add support for long firmware version (Don Brace) [1952154] - scsi: smartpqi: Add support for BMIC sense feature cmd and feature bits (Don Brace) [1952154] - scsi: smartpqi: Add support for RAID1 writes (Don Brace) [1952154] - scsi: smartpqi: Add support for RAID5 and RAID6 writes (Don Brace) [1952154] - scsi: smartpqi: Refactor scatterlist code (Don Brace) [1952154] - scsi: smartpqi: Refactor aio submission code (Don Brace) [1952154] - scsi: smartpqi: Add support for new product ids (Don Brace) [1952154] - scsi: smartpqi: Correct request leakage during reset operations (Don Brace) [1952154] - scsi: smartpqi: Use host-wide tag space (Don Brace) [1952154] - smartpqi: Use fallthrough pseudo-keyword (Don Brace) [1952154] - scsi: smartpqi: Support device deletion via sysfs (Don Brace) [1952154] - scsi: smartpqi: Use scnprintf() for avoiding potential buffer overflow (Don Brace) [1952154] - smartpqi: remove ioremap_nocache and devm_ioremap_nocache (Don Brace) [1952154] - smartpqi: Use sizeof_field() macro (Don Brace) [1952154] - smartpqi: phase out dma_zalloc_coherent() (Don Brace) [1952154] - scsi: smartpqi: add support for huawei controllers (Don Brace) [1952154] - block: only update parent bi_status when bio fail (Ming Lei) [1945457] - kbuild: trace functions in subdirectories of lib/ (Joe Lawrence) [1942601] - kbuild: introduce ccflags-remove-y and asflags-remove-y (Joe Lawrence) [1942601] - redhat/configs: Add CONFIG_AMD_PMC (David Arcari) [1961755] - platform/x86: amd-pmc: put device on error paths (David Arcari) [1961755] - platform/x86: amd-pmc: Fix CONFIG_DEBUG_FS check (David Arcari) [1961755] - platform/x86: amd-pmc: Add AMD platform support for S2Idle (David Arcari) [1961755] - crypto: DRBG - switch to HMAC SHA512 DRBG as default DRBG (Vladis Dronov) [1956808] - x86/asm: Annotate movdir64b()'s dst argument with __iomem (Jerry Snitselaar) [1920747] - x86/asm: Add a missing __iomem annotation in enqcmds() (Jerry Snitselaar) [1920747]- fm10k: amend removal of MODULE_VERSION (Vladis Dronov) [1955730] - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (Mohammed Gamal) [1940927] - hv_netvsc: Add error handling while switching data path (Mohammed Gamal) [1940927] - netvsc: Update driver to use ethtool_sprintf (Mohammed Gamal) [1940927] - hv_netvsc: Add a comment clarifying batching logic (Mohammed Gamal) [1940927] - hv_netvsc: Fix validation in netvsc_linkstatus_callback() (Mohammed Gamal) [1940927] - hv_netvsc: Restrict configurations on isolated guests (Mohammed Gamal) [1940927] - hv_netvsc: Load and store the proper (NBL_HASH_INFO) per-packet info (Mohammed Gamal) [1940927] - hv_netvsc: Allocate the recv_buf buffers after NVSP_MSG1_TYPE_SEND_RECV_BUF (Mohammed Gamal) [1940927] - hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive() (Mohammed Gamal) [1940927] - hv_netvsc: Copy packets sent by Hyper-V out of the receive buffer (Mohammed Gamal) [1940927] - net/hyperv: use skb_vlan_tag_*() helpers (Mohammed Gamal) [1940927] - net/vlan: introduce skb_vlan_tag_get_cfi() helper (Mohammed Gamal) [1940927] - hv_netvsc: Add (more) validation for untrusted Hyper-V values (Mohammed Gamal) [1940927] - hv_netvsc: Process NETDEV_GOING_DOWN on VF hot remove (Mohammed Gamal) [1940927] - hv_netvsc: Wait for completion on request SWITCH_DATA_PATH (Mohammed Gamal) [1940927] - hv_netvsc: Check VF datapath when sending traffic to VF (Mohammed Gamal) [1940927] - hv_netvsc: Validate number of allocated sub-channels (Mohammed Gamal) [1940927] - hv_netvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening (Mohammed Gamal) [1940927] - hv_netvsc: Use HV_HYP_PAGE_SIZE for Hyper-V communication (Mohammed Gamal) [1940927] - scsi: fnic: Use scsi_host_busy_iter() to traverse commands (Ewan D. Milne) [1949250] - scsi: fnic: Kill 'exclude_id' argument to fnic_cleanup_io() (Ewan D. Milne) [1949250] - net: vlan: Avoid using BUG() in vlan_proto_idx() (Davide Caratti) [1964456] - sch_htb: fix null pointer dereference on a null new_q (Ivan Vecera) [1935703] - sch_htb: Fix offload cleanup in htb_destroy on htb_init failure (Ivan Vecera) [1935703] - sch_htb: Fix select_queue for non-offload mode (Ivan Vecera) [1935703] - sch_htb: Stats for offloaded HTB (Ivan Vecera) [1935703] - sch_htb: Hierarchical QoS hardware offload (Ivan Vecera) [1935703] - net: sched: Add extack to Qdisc_class_ops.delete (Ivan Vecera) [1935703] - net: sched: Add multi-queue support to sch_tree_lock (Ivan Vecera) [1935703] - capabilities: require CAP_SETFCAP to map uid 0 (Alexey Gladkov) [1961202] - locking/qrwlock: Cleanup queued_write_lock_slowpath() (Waiman Long) [1954361] - locking/rtmutex: Clean up signal handling in __rt_mutex_slowlock() (Waiman Long) [1954361] - locking/rtmutex: Restrict the trylock WARN_ON() to debug (Waiman Long) [1954361] - locking/rtmutex: Fix misleading comment in rt_mutex_postunlock() (Waiman Long) [1954361] - locking/rtmutex: Consolidate the fast/slowpath invocation (Waiman Long) [1954361] - locking/rtmutex: Make text section and inlining consistent (Waiman Long) [1954361] - locking/rtmutex: Move debug functions as inlines into common header (Waiman Long) [1954361] - locking/rtmutex: Decrapify __rt_mutex_init() (Waiman Long) [1954361] - locking/rtmutex: Remove pointless CONFIG_RT_MUTEXES=n stubs (Waiman Long) [1954361] - locking/rtmutex: Inline chainwalk depth check (Waiman Long) [1954361] - locking/rtmutex: Move rt_mutex_debug_task_free() to rtmutex.c (Waiman Long) [1954361] - locking/rtmutex: Remove empty and unused debug stubs (Waiman Long) [1954361] - locking/rtmutex: Consolidate rt_mutex_init() (Waiman Long) [1954361] - locking/rtmutex: Remove output from deadlock detector (Waiman Long) [1954361] - locking/rtmutex: Remove rtmutex deadlock tester leftovers (Waiman Long) [1954361] - locking/rtmutex: Remove rt_mutex_timed_lock() (Waiman Long) [1954361] - kernel: delete repeated words in comments (Waiman Long) [1954361] - rbtree, rtmutex: Use rb_add_cached() (Waiman Long) [1954361] - rbtree: Add generic add and find helpers (Waiman Long) [1954361] - locking/rtmutex: Remove unused rt_mutex_cmpxchg_relaxed() (Waiman Long) [1954361] - lib/rbtree: avoid generating code twice for the cached versions (Waiman Long) [1954361] - locking/rtmutex: Fix the preprocessor logic with normal #ifdef #else #endif (Waiman Long) [1954361] - kernel/futex: Explicitly document pi_lock for pi_state owner fixup (Waiman Long) [1954361] - kernel/futex: Move hb unlock out of unqueue_me_pi() (Waiman Long) [1954361] - kernel/futex: Make futex_wait_requeue_pi() only call fixup_owner() (Waiman Long) [1954361] - kernel/futex: Kill rt_mutex_next_owner() (Waiman Long) [1954361] - futex: Remove unused empty compat_exit_robust_list() (Waiman Long) [1954361] - futex: Handle transient "ownerless" rtmutex state correctly (Waiman Long) [1954361] - futex: Convert to use the preferred 'fallthrough' macro (Waiman Long) [1954361] - futex: get rid of a kernel-docs build warning (Waiman Long) [1954361] - futex: arch_futex_atomic_op_inuser() calling conventions change (Waiman Long) [1954361] - s390: Use arch_local_irq_{save,restore}() in early boot code (Waiman Long) [1954361] - lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message (Waiman Long) [1954361] - locking: Fix typos in comments (Waiman Long) [1954361] - locking/lockdep: Update the comment for __lock_release() (Waiman Long) [1954361] - lockdep: Allow tuning tracing capacity constants. (Waiman Long) [1954361] - lockdep: Address clang -Wformat warning printing for hd (Waiman Long) [1954361] - lockdep: Add lockdep lock state defines (Waiman Long) [1954361] - lockdep: Add lockdep_assert_not_held() (Waiman Long) [1954361] - lockdep: Noinstr annotate warn_bogus_irq_restore() (Waiman Long) [1954361] - locking/lockdep: Avoid unmatched unlock (Waiman Long) [1954361] - locking/rwsem: Remove empty rwsem.h (Waiman Long) [1954361] - lockdep: report broken irq restoration (Waiman Long) [1954361] - locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP (Waiman Long) [1954361] - locking/lockdep: Exclude local_lock_t from IRQ inversions (Waiman Long) [1954361] - locking/lockdep: Clean up check_redundant() a bit (Waiman Long) [1954361] - locking/lockdep: Add a skip() function to __bfs() (Waiman Long) [1954361] - locking/lockdep: Mark local_lock_t (Waiman Long) [1954361] - lockdep: Put graph lock/unlock under lock_recursion protection (Waiman Long) [1954361] - locking/rtmutex: Add missing kernel-doc markup (Waiman Long) [1954361] - lockdep: Avoid to modify chain keys in validate_chain() (Waiman Long) [1954361] - lockdep: Fix nr_unused_locks accounting (Waiman Long) [1954361] - lockdep: Optimize the memory usage of circular queue (Waiman Long) [1954361] - lockdep: Take read/write status in consideration when generate chainkey (Waiman Long) [1954361] - lockdep/selftest: Add a R-L/L-W test case specific to chain cache behavior (Waiman Long) [1954361] - lockdep: Add recursive read locks into dependency graph (Waiman Long) [1954361] - lockdep: Fix recursive read lock related safe->unsafe detection (Waiman Long) [1954361] - lockdep: Adjust check_redundant() for recursive read change (Waiman Long) [1954361] - lockdep: Support deadlock detection for recursive read locks in check_noncircular() (Waiman Long) [1954361] - lockdep: Make __bfs(.match) return bool (Waiman Long) [1954361] - lockdep: Extend __bfs() to work with multiple types of dependencies (Waiman Long) [1954361] - lockdep: Introduce lock_list::dep (Waiman Long) [1954361] - lockdep: Reduce the size of lock_list::distance (Waiman Long) [1954361] - lockdep: Make __bfs() visit every dependency until a match (Waiman Long) [1954361] - lockdep: Demagic the return value of BFS (Waiman Long) [1954361] - lockdep/Documention: Recursive read lock detection reasoning (Waiman Long) [1954361] - locking: More accurate annotations for read_lock() (Waiman Long) [1954361] - Documentation/locking/locktypes: Fix local_locks documentation (Waiman Long) [1954361] - treewide: Remove uninitialized_var() usage (Waiman Long) [1954361] - lockdep: Use this_cpu_ptr instead of get_cpu_var stats (Waiman Long) [1954361] - KVM: arm/arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST read (Gavin Shan) [1939323] - KVM: arm64: Don't advertise FEAT_SPE to guests (Gavin Shan) [1939323] - KVM: arm64: Don't print warning when trapping SPE registers (Gavin Shan) [1939323] - KVM: arm64: Fully zero the vcpu state on reset (Gavin Shan) [1939323] - KVM: arm64: Clarify vcpu reset behaviour (Gavin Shan) [1939323] - Documentation: KVM: Document KVM_GUESTDBG_USE_HW control flag for arm64 (Gavin Shan) [1939323] - KVM: arm64: Initialize VCPU mdcr_el2 before loading it (Gavin Shan) [1939323] - KVM: arm64: Handle access to TRFCR_EL1 (Gavin Shan) [1939323] - arm64: Add TRFCR_ELx definitions (Gavin Shan) [1939323] - KVM: arm64: Unify trap handlers injecting an UNDEF (Gavin Shan) [1939323] - KVM: arm64: Use find_vma_intersection() (Gavin Shan) [1939323] - KVM: arm64: Hide kvm_mmu_wp_memory_region() (Gavin Shan) [1939323] - KVM: selftests: vgic_init kvm selftests fixup (Gavin Shan) [1939323] - KVM: selftests: aarch64/vgic-v3 init sequence tests (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Expose GICR_TYPER.Last for userspace (Gavin Shan) [1939323] - kvm: arm64: vgic-v3: Introduce vgic_v3_free_redist_region() (Gavin Shan) [1939323] - KVM: arm64: Simplify argument passing to vgic_uaccess_[read|write] (Gavin Shan) [1939323] - docs: kvm: devices/arm-vgic-v3: enhance KVM_DEV_ARM_VGIC_CTRL_INIT doc (Gavin Shan) [1939323] - KVM: arm/arm64: vgic: Reset base address on kvm_vgic_dist_destroy() (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Fix error handling in vgic_v3_set_redist_base() (Gavin Shan) [1939323] - KVM: arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST_REGION read (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Fix some error codes when setting RDIST base (Gavin Shan) [1939323] - KVM: arm64: Disable guest access to trace filter controls (Gavin Shan) [1939323] - KVM: arm64: Fix CPU interface MMIO compatibility detection (Gavin Shan) [1939323] - KVM: arm64: Hide system instruction access to Trace registers (Gavin Shan) [1939323] - KVM: arm64: Fix exclusive limit for IPA size (Gavin Shan) [1939323] - KVM: arm64: Ensure I-cache isolation between vcpus of a same VM (Gavin Shan) [1939323] - KVM: arm64: nvhe: Save the SPE context early (Gavin Shan) [1939323] - KVM: arm64: Correct spelling of DBGDIDR register (Gavin Shan) [1939323] - KVM: arm64: Fix AArch32 PMUv3 capping (Gavin Shan) [1939323] - KVM: arm64: Fix missing RES1 in emulation of DBGBIDR (Gavin Shan) [1939323] - KVM: arm64: Remove spurious semicolon in reg_to_encoding() (Gavin Shan) [1939323] - KVM: arm64: Fix hyp_cpu_pm_{init,exit} __init annotation (Gavin Shan) [1939323] - KVM: arm64: Workaround firmware wrongly advertising GICv2-on-v3 compatibility (Gavin Shan) [1939323] - KVM: arm64: Rename __vgic_v3_get_ich_vtr_el2() to __vgic_v3_get_gic_config() (Gavin Shan) [1939323] - KVM: arm64: Some fixes of PV-time interface document (Gavin Shan) [1939323] - KVM: arm64: CSSELR_EL1 max is 13 (Gavin Shan) [1939323] - idr test suite: Improve reporting from idr_find_test_1 (Chris von Recklinghausen) [1946304] - idr test suite: Create anchor before launching throbber (Chris von Recklinghausen) [1946304] - idr test suite: Take RCU read lock in idr_find_test_1 (Chris von Recklinghausen) [1946304] - radix tree test suite: Register the main thread with the RCU library (Chris von Recklinghausen) [1946304] - radix tree test suite: Fix compilation (Chris von Recklinghausen) [1946304] - XArray: Add xa_limit_16b (Chris von Recklinghausen) [1946304] - XArray: Fix splitting to non-zero orders (Chris von Recklinghausen) [1946304] - XArray: Fix split documentation (Chris von Recklinghausen) [1946304] - PCI/P2PDMA: Drop double zeroing for sg_init_table() (Myron Stowe) [1955693] - PCI: Simplify bool comparisons (Myron Stowe) [1955693] - PCI: endpoint: Use "NULL" instead of "0" as a NULL pointer (Myron Stowe) [1955693] - PCI: Simplify pci_dev_reset_slot_function() (Myron Stowe) [1955693] - PCI: Update mmap-related #ifdef comments (Myron Stowe) [1955693] - PCI/LINK: Print IRQ number used by port (Myron Stowe) [1955693] - PCI/IOV: Simplify pci-pf-stub with module_pci_driver() (Myron Stowe) [1955693] - PCI: Use scnprintf(), not snprintf(), in sysfs "show" functions (Myron Stowe) [1955693] - x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled (Myron Stowe) [1955693] - PCI: Remove unnecessary header includes (Myron Stowe) [1955693] - PCI/PM: Revert "PCI/PM: Apply D2 delay as milliseconds, not microseconds" (Myron Stowe) [1955693] - PCI/PM: Remove unused PCI_PM_BUS_WAIT (Myron Stowe) [1955693] - PCI: shpchp: Remove unused 'rc' assignment (Myron Stowe) [1955693] - PCI: pciehp: Reduce noisiness on hot removal (Myron Stowe) [1955693 1812902] - PCI: rpadlpar: Use for_each_child_of_node() and for_each_node_by_name() (Myron Stowe) [1955693] - PCI: Add Kconfig options for MPS/MRRS strategy (Myron Stowe) [1955693] - PCI: Add schedule point in pci_read_config() (Myron Stowe) [1955693] - PCI/ASPM: Remove struct pcie_link_state.l1ss (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_cap (Myron Stowe) [1955693] - PCI/ASPM: Pass L1SS Capabilities value, not struct aspm_register_info (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_ctl1 (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_ctl2 (unused) (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_cap_ptr (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.latency_encoding (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.enabled (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.support (Myron Stowe) [1955693] - PCI/ASPM: Use 'parent' and 'child' for readability (Myron Stowe) [1955693] - PCI/ASPM: Move LTR path check to where it's used (Myron Stowe) [1955693] - PCI/ASPM: Move pci_clear_and_set_dword() earlier (Myron Stowe) [1955693] - PCI/ACS: Enable Translation Blocking for external devices (Myron Stowe) [1955693] - scsi: qedi: Remove redundant assignment to variable err (Nilesh Javali) [1920855] - scsi: qedi: Fix error return code of qedi_alloc_global_queues() (Nilesh Javali) [1920855] - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe (Nilesh Javali) [1920855] - scsi: qedf: Simplify bool comparison (Nilesh Javali) [1921608] - bpf, sockmap: Fix incorrect fwd_alloc accounting (Yauheni Kaliuta) [1874006] - bpf: Local storage helpers should check nullness of owner ptr passed (Yauheni Kaliuta) [1874006] - bpf, inode_storage: Put file handler if no storage was found (Yauheni Kaliuta) [1874006] - kbuild: explicitly specify the build id style (Yauheni Kaliuta) [1874006] - bpf: Reject too big ctx_size_in for raw_tp test run (Yauheni Kaliuta) [1874006] - bpf: Fix enum names for bpf_this_cpu_ptr() and bpf_per_cpu_ptr() helpers (Yauheni Kaliuta) [1874006] - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE (Jiri Benc) [1874006] - bpf: Fix tests for local_storage (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix "dubious pointer arithmetic" test (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix array access with signed variable test (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for signed 32-bit bound check bug (Yauheni Kaliuta) [1874006] - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. (Yauheni Kaliuta) [1874006] - lwt_bpf: Replace preempt_disable() with migrate_disable() (Yauheni Kaliuta) [1874006] - lwt: Disable BH too in run_lwt_bpf() (Yauheni Kaliuta) [1874006] - selftests/bpf: Drain ringbuf samples at the end of test (Yauheni Kaliuta) [1874006] - libbpf: Fix ring_buffer__poll() to return number of consumed samples (Yauheni Kaliuta) [1874006] - bpf: Add MAINTAINERS entry for BPF LSM (Yauheni Kaliuta) [1874006] - bpftool: Fix error return value in build_btf_type_table (Yauheni Kaliuta) [1874006] - fail_function: Remove a redundant mutex unlock (Yauheni Kaliuta) [1874006] - selftest/bpf: Test bpf_probe_read_user_str() strips trailing bytes after NUL (Yauheni Kaliuta) [1874006] - lib/strncpy_from_user.c: Mask out bytes after NUL terminator. (Yauheni Kaliuta) [1874006] - bpf, sockmap: Avoid failures from skb_to_sgvec when skb has frag_list (Yauheni Kaliuta) [1874006] - bpf, sockmap: Handle memory acct if skb_verdict prog redirects to self (Yauheni Kaliuta) [1874006] - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self (Yauheni Kaliuta) [1874006] - bpf, sockmap: Use truesize with sk_rmem_schedule() (Yauheni Kaliuta) [1874006] - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect (Yauheni Kaliuta) [1874006] - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix error return code in run_getsockopt_test() (Yauheni Kaliuta) [1874006] - bpf: Relax return code check for subprograms (Yauheni Kaliuta) [1874006] - tools, bpftool: Add missing close before bpftool net attach exit (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix unused attribute usage in subprogs_unused test (Yauheni Kaliuta) [1874006] - bpf: Fix unsigned 'datasec_id' compared with zero in check_pseudo_btf_id (Yauheni Kaliuta) [1874006] - bpf: Fix passing zero to PTR_ERR() in bpf_btf_printf_prepare (Yauheni Kaliuta) [1874006] - libbpf: Don't attempt to load unused subprog as an entry-point BPF program (Yauheni Kaliuta) [1874006] - bpf: Update verification logic for LSM programs (Yauheni Kaliuta) [1874006] - bpf: Zero-fill re-used per-cpu map element (Yauheni Kaliuta) [1874006] - bpf: BPF_PRELOAD depends on BPF_SYSCALL (Yauheni Kaliuta) [1874006] - libbpf: Fix possible use after free in xsk_socket__delete (Yauheni Kaliuta) [1874006] - libbpf: Fix null dereference in xsk_socket__delete (Yauheni Kaliuta) [1874006] - libbpf, hashmap: Fix undefined behavior in hash_bits (Yauheni Kaliuta) [1874006] - tools, bpftool: Remove two unused variables. (Yauheni Kaliuta) [1874006] - tools, bpftool: Avoid array index warnings. (Yauheni Kaliuta) [1874006] - bpf: Add struct bpf_redir_neigh forward declaration to BPF helper defs (Yauheni Kaliuta) [1874006] - bpf: Fix -Wshadow warnings (Yauheni Kaliuta) [1874006] - bpf, libbpf: Guard bpf inline asm from bpf_tail_call_static (Yauheni Kaliuta) [1874006] - bpf: selftest: Ensure the return value of the bpf_per_cpu_ptr() must be checked (Yauheni Kaliuta) [1874006] - bpf: selftest: Ensure the return value of bpf_skc_to helpers must be checked (Yauheni Kaliuta) [1874006] - bpf: Remove unneeded break (Yauheni Kaliuta) [1874006] - net, sockmap: Don't call bpf_prog_put() on NULL pointer (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add locking annotations to iterator (Yauheni Kaliuta) [1874006] - bpf: Fix register equivalence tracking. (Yauheni Kaliuta) [1874006] - bpf, selftests: Add three new sockmap tests for verdict only programs (Yauheni Kaliuta) [1874006] - bpf, selftests: Add option to test_sockmap to omit adding parser program (Yauheni Kaliuta) [1874006] - bpf, sockmap: Allow skipping sk_skb parser program (Yauheni Kaliuta) [1874006] - bpf, sockmap: Check skb_verdict and skb_parser programs explicitly (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add memory accounting so skbs on ingress lists are visible (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove dropped data on errors in redirect case (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove skb_set_owner_w wmem will be taken later from sendpage (Yauheni Kaliuta) [1874006] - bpf, sockmap: On receive programs try to fast track SK_PASS ingress (Yauheni Kaliuta) [1874006] - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits (Yauheni Kaliuta) [1874006] - bpf: Migrate from patchwork.ozlabs.org to patchwork.kernel.org. (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor XDP kern program maps with BTF-defined map (Yauheni Kaliuta) [1874006] - samples: bpf: Replace attach_tracepoint() to attach() in xdp_redirect_cpu (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor xdp_monitor with libbpf (Yauheni Kaliuta) [1874006] - bpf, selftests: Add test for different array inner map size (Yauheni Kaliuta) [1874006] - bpf: Allow for map-in-map with dynamic inner array map entries (Yauheni Kaliuta) [1874006] - selftests/bpf: Asm tests for the verifier regalloc tracking. (Yauheni Kaliuta) [1874006] - bpf: Fix selftest compilation on clang 11 (Yauheni Kaliuta) [1874006] - selftest/bpf: Fix profiler test using CO-RE relocation for enums (Yauheni Kaliuta) [1874006] - selftests/bpf: Add profiler test (Yauheni Kaliuta) [1874006] - bpf: Track spill/fill of bounded scalars. (Yauheni Kaliuta) [1874006] - bpf: Propagate scalar ranges through register assignments. (Yauheni Kaliuta) [1874006] - bpf: Add tcp_notsent_lowat bpf setsockopt (Yauheni Kaliuta) [1874006] - selftests/bpf: Validate libbpf's auto-sizing of LD/ST/STX instructions (Yauheni Kaliuta) [1874006] - libbpf: Allow specifying both ELF and raw BTF for CO-RE BTF override (Yauheni Kaliuta) [1874006] - libbpf: Support safe subset of load/store instruction resizing with CO-RE (Yauheni Kaliuta) [1874006] - libbpf: Skip CO-RE relocations for not loaded BPF programs (Yauheni Kaliuta) [1874006] - libbpf: Fix compatibility problem in xsk_socket__create (Yauheni Kaliuta) [1874006] - bpf: Fix typo in uapi/linux/bpf.h (Yauheni Kaliuta) [1874006] - bpf: Fix build failure for kernel/trace/bpf_trace.c with CONFIG_NET=n (Yauheni Kaliuta) [1874006] - kernel/bpf/verifier: Fix build when NET is not enabled (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_verifier after introducing resolve_pseudo_ldimm64 (Yauheni Kaliuta) [1874006] - samples: bpf: Driver interrupt statistics in xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Count syscalls in xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Split xdpsock stats into new struct (Yauheni Kaliuta) [1874006] - samples/bpf: Fix a compilation error with fallthrough marking (Yauheni Kaliuta) [1874006] - samples/bpf: Change Makefile to cope with latest llvm (Yauheni Kaliuta) [1874006] - bpf, libbpf: Use valid btf in bpf_program__set_attach_target (Yauheni Kaliuta) [1874006] - selftest/bpf: Test pinning map with reused map fd (Yauheni Kaliuta) [1874006] - libbpf: Check if pin_path was set even map fd exist (Yauheni Kaliuta) [1874006] - libbpf: Close map fd if init map slots failed (Yauheni Kaliuta) [1874006] - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI (Yauheni Kaliuta) [1874006] - bpf, verifier: Use fallthrough pseudo-keyword (Yauheni Kaliuta) [1874006] - bpf: Deref map in BPF_PROG_BIND_MAP when it's already used (Yauheni Kaliuta) [1874006] - bpf, sockmap: Update selftests to use skb_adjust_room (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add skb_adjust_room to pop bytes off ingress payload (Yauheni Kaliuta) [1874006] - bpf/selftests: Test for bpf_per_cpu_ptr() and bpf_this_cpu_ptr() (Yauheni Kaliuta) [1874006] - bpf: Introducte bpf_this_cpu_ptr() (Yauheni Kaliuta) [1874006] - bpf: Introduce bpf_per_cpu_ptr() (Yauheni Kaliuta) [1874006] - selftests/bpf: Ksyms_btf to test typed ksyms (Yauheni Kaliuta) [1874006] - bpf/libbpf: BTF support for typed ksyms (Yauheni Kaliuta) [1874006] - bpf: Introduce pseudo_btf_id (Yauheni Kaliuta) [1874006] - selftests/bpf: Properly initialize linfo in sockmap_basic (Yauheni Kaliuta) [1874006] - selftests/bpf: Initialize duration in xdp_noinline.c (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tests for BPF_F_PRESERVE_ELEMS (Yauheni Kaliuta) [1874006] - bpf: Introduce BPF_F_PRESERVE_ELEMS for perf event array (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix alignment of .BTF_ids (Yauheni Kaliuta) [1874006] - selftests/bpf: Test "incremental" btf_dump in C format (Yauheni Kaliuta) [1874006] - libbpf: Make btf_dump work with modifiable BTF (Yauheni Kaliuta) [1874006] - bpf, selftests: Use bpf_tail_call_static where appropriate (Yauheni Kaliuta) [1874006] - bpf, libbpf: Add bpf_tail_call_static helper for bpf programs (Yauheni Kaliuta) [1874006] - bpf, net: Rework cookie generator as per-cpu one (Yauheni Kaliuta) [1874006] - bpf: Add classid helper only based on skb->sk (Yauheni Kaliuta) [1874006] - bpf: fix raw_tp test run in preempt kernel (Yauheni Kaliuta) [1874006] - libbpf: Compile in PIC mode only for shared library case (Yauheni Kaliuta) [1874006] - libbpf: Compile libbpf under -O2 level by default and catch extra warnings (Yauheni Kaliuta) [1874006] - bpf: x64: Do not emit sub/add 0, rsp when !stack_depth (Yauheni Kaliuta) [1874006] - bpf, x64: Drop "pop rcx" instruction on BPF JIT epilogue (Yauheni Kaliuta) [1874006] - bpf, selftests: Fix warning in snprintf_btf where system() call unchecked (Yauheni Kaliuta) [1874006] - selftests/bpf: Test BTF's handling of endianness (Yauheni Kaliuta) [1874006] - selftests/bpf: Move and extend ASSERT_xxx() testing macros (Yauheni Kaliuta) [1874006] - selftests: Make sure all 'skel' variables are declared static (Yauheni Kaliuta) [1874006] - selftests/bpf_iter: Don't fail test due to missing __builtin_btf_type_id (Yauheni Kaliuta) [1874006] - bpf/preload: Make sure Makefile cleans up after itself, and add .gitignore (Yauheni Kaliuta) [1874006] - selftests/bpf: Ensure snprintf_btf/bpf_iter tests compatibility with old vmlinux.h (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix unused-result warning in snprintf_btf.c (Yauheni Kaliuta) [1874006] - bpf, selftests: Fix cast to smaller integer type 'int' warning in raw_tp (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for bpf_seq_printf_btf helper (Yauheni Kaliuta) [1874006] - bpf: Add bpf_seq_printf_btf helper (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix overflow tests to reflect iter size increase (Yauheni Kaliuta) [1874006] - bpf: Bump iter seq size to support BTF representation of large data structures (Yauheni Kaliuta) [1874006] - selftests/bpf: Add bpf_snprintf_btf helper tests (Yauheni Kaliuta) [1874006] - bpf: Add bpf_snprintf_btf helper (Yauheni Kaliuta) [1874006] - bpf: Move to generic BTF show support, apply it to seq files/strings (Yauheni Kaliuta) [1874006] - bpf: Provide function to get vmlinux BTF information (Yauheni Kaliuta) [1874006] - selftest: bpf: Test copying a sockmap and sockhash (Yauheni Kaliuta) [1874006] - selftests: bpf: Remove shared header from sockmap iter test (Yauheni Kaliuta) [1874006] - selftests: bpf: Add helper to compare socket cookies (Yauheni Kaliuta) [1874006] - bpf: sockmap: Enable map_update_elem from bpf_iter (Yauheni Kaliuta) [1874006] - bpf, cpumap: Remove rcpu pointer from cpu_map_build_skb signature (Yauheni Kaliuta) [1874006] - selftests/bpf: Add raw_tp_test_run (Yauheni Kaliuta) [1874006] - libbpf: Support test run of raw tracepoint programs (Yauheni Kaliuta) [1874006] - bpf: Enable BPF_PROG_TEST_RUN for raw_tracepoint (Yauheni Kaliuta) [1874006] - bpf: Add comment to document BTF type PTR_TO_BTF_ID_OR_NULL (Yauheni Kaliuta) [1874006] - bpf: Add AND verifier test case where 32bit and 64bit bounds differ (Yauheni Kaliuta) [1874006] - bpf, verifier: Remove redundant var_off.value ops in scalar known reg cases (Yauheni Kaliuta) [1874006] - bpf: selftest: Add test_btf_skc_cls_ingress (Yauheni Kaliuta) [1874006] - bpf: selftest: Remove enum tcp_ca_state from bpf_tcp_helpers.h (Yauheni Kaliuta) [1874006] - bpf: selftest: Use bpf_skc_to_tcp_sock() in the sock_fields test (Yauheni Kaliuta) [1874006] - bpf: selftest: Use network_helpers in the sock_fields test (Yauheni Kaliuta) [1874006] - bpf: selftest: Adapt sock_fields test to use skel and global variables (Yauheni Kaliuta) [1874006] - bpf: selftest: Move sock_fields test into test_progs (Yauheni Kaliuta) [1874006] - bpf: selftest: Add ref_tracking verifier test for bpf_skc casting (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_assign to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_tcp_*_syncookie to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_storage_*() to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_release and bpf_sk_*cgroup_id to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Enable bpf_skc_to_* sock casting helper to networking prog type (Yauheni Kaliuta) [1874006] - bpf: Move the PTR_TO_BTF_ID check to check_reg_type() (Yauheni Kaliuta) [1874006] - Revert "bpf: Fix potential call bpf_link_free() in atomic context" (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Always force HOSTARCH (Yauheni Kaliuta) [1874006] - bpf: Check CONFIG_BPF option for resolve_btfids (Yauheni Kaliuta) [1874006] - bpf: Explicitly size compatible_reg_types (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix stat probe in d_path test (Yauheni Kaliuta) [1874006] - bpf: Using rcu_read_lock for bpf_sk_storage_map iterator (Yauheni Kaliuta) [1874006] - bpf: Use a table to drive helper arg type checks (Yauheni Kaliuta) [1874006] - bpf: Hoist type checking for nullable arg types (Yauheni Kaliuta) [1874006] - bpf: Check ARG_PTR_TO_SPINLOCK register type in check_func_arg (Yauheni Kaliuta) [1874006] - bpf: Set meta->raw_mode for pointers close to use (Yauheni Kaliuta) [1874006] - bpf: Make context access check generic (Yauheni Kaliuta) [1874006] - bpf: Make reference tracking generic (Yauheni Kaliuta) [1874006] - bpf: Make BTF pointer type checking generic (Yauheni Kaliuta) [1874006] - bpf: Allow specifying a BTF ID per argument in function protos (Yauheni Kaliuta) [1874006] - btf: Add BTF_ID_LIST_SINGLE macro (Yauheni Kaliuta) [1874006] - bpf: Check scalar or invalid register in check_helper_mem_access (Yauheni Kaliuta) [1874006] - btf: Make btf_set_contains take a const pointer (Yauheni Kaliuta) [1874006] - bpf: Fix potential call bpf_link_free() in atomic context (Yauheni Kaliuta) [1874006] - bpf: Use hlist_add_head_rcu when linking to local_storage (Yauheni Kaliuta) [1874006] - samples/bpf: Fix test_map_in_map on s390 (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix endianness issue in test_sockopt_sk (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix endianness issue in sk_assign (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tailcall_bpf2bpf tests (Yauheni Kaliuta) [1874006] - bpf: Add abnormal return checks. (Yauheni Kaliuta) [1874006] - bpf: allow for tailcalls in BPF subprograms for x64 JIT (Yauheni Kaliuta) [1874006] - bpf, x64: rework pro/epilogue and tailcall handling in JIT (Yauheni Kaliuta) [1874006] - bpf: Limit caller's stack depth 256 for subprogs with tailcalls (Yauheni Kaliuta) [1874006] - bpf: rename poke descriptor's 'ip' member to 'tailcall_target' (Yauheni Kaliuta) [1874006] - bpf: propagate poke descriptors to subprograms (Yauheni Kaliuta) [1874006] - bpf, x64: use rcx instead of rax for tail call retpolines (Yauheni Kaliuta) [1874006] - selftests/bpf: Merge most of test_btf into test_progs (Yauheni Kaliuta) [1874006] - selftests/bpf: Test load and dump metadata with btftool and skel (Yauheni Kaliuta) [1874006] - bpftool: Support dumping metadata (Yauheni Kaliuta) [1874006] - libbpf: Add BPF_PROG_BIND_MAP syscall and use it on .rodata section (Yauheni Kaliuta) [1874006] - bpf: Add BPF_PROG_BIND_MAP syscall (Yauheni Kaliuta) [1874006] - bpf: Mutex protect used_maps array and count (Yauheni Kaliuta) [1874006] - libbpf: Fix a compilation error with xsk.c for ubuntu 16.04 (Yauheni Kaliuta) [1874006] - samples/bpf: Add quiet option to xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Add an option for printing extra statistics in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Fix possible deadlock in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Fix one packet sending in xdpsock (Yauheni Kaliuta) [1874006] - s390/bpf: Fix multiple tail calls (Yauheni Kaliuta) [1874006] - tcp: Simplify tcp_set_congestion_control() load=false case (Yauheni Kaliuta) [1874006] - tcp: simplify _bpf_setsockopt(): Remove flags argument (Yauheni Kaliuta) [1874006] - tcp: simplify tcp_set_congestion_control(): Always reinitialize (Yauheni Kaliuta) [1874006] - tcp: Simplify EBPF TCP_CONGESTION to always init CC (Yauheni Kaliuta) [1874006] - bpftool: Fix build failure (Yauheni Kaliuta) [1874006] - tools: bpftool: Automate generation for "SEE ALSO" sections in man pages (Yauheni Kaliuta) [1874006] - bpf: Fix comment for helper bpf_current_task_under_cgroup() (Yauheni Kaliuta) [1874006] - selftests/bpf: Define string const as global for test_sysctl_prog.c (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_ksyms on non-SMP kernels (Yauheni Kaliuta) [1874006] - tools: bpftool: Add "inner_map" to "bpftool map create" outer maps (Yauheni Kaliuta) [1874006] - tools: bpftool: Keep errors for map-of-map dumps if distinct from ENOENT (Yauheni Kaliuta) [1874006] - tools: bpftool: Clean up function to dump map entry (Yauheni Kaliuta) [1874006] - selftests: bpf: Test iterating a sockmap (Yauheni Kaliuta) [1874006] - net: Allow iterating sockmap and sockhash (Yauheni Kaliuta) [1874006] - net: sockmap: Remove unnecessary sk_fullsock checks (Yauheni Kaliuta) [1874006] - tools: bpftool: Include common options from separate file (Yauheni Kaliuta) [1874006] - tools: bpftool: Print optional built-in features along with version (Yauheni Kaliuta) [1874006] - selftests, bpftool: Add bpftool (and eBPF helpers) documentation build (Yauheni Kaliuta) [1874006] - tools: bpftool: Log info-level messages when building bpftool man pages (Yauheni Kaliuta) [1874006] - bpf: Remove duplicate headers (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for map_ptr arithmetic (Yauheni Kaliuta) [1874006] - bpf: Permit map_ptr arithmetic with opcode add and offset 0 (Yauheni Kaliuta) [1874006] - tools, bpf: Synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1874006] - bpf: Fix formatting in documentation for BPF helpers (Yauheni Kaliuta) [1874006] - tools: bpftool: Fix formatting in bpftool-link documentation (Yauheni Kaliuta) [1874006] - samples, bpf: Add xsk_fwd test file to .gitignore (Yauheni Kaliuta) [1874006] - samples, bpf: Replace bpf_program__title() with bpf_program__section_name() (Yauheni Kaliuta) [1874006] - libbpf: Fix potential multiplication overflow (Yauheni Kaliuta) [1874006] - libbpf: Fix another __u64 cast in printf (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix check in global_data_init. (Yauheni Kaliuta) [1874006] - selftests/bpf: Add __noinline variant of cls_redirect selftest (Yauheni Kaliuta) [1874006] - selftests/bpf: Modernize xdp_noinline test w/ skeleton and __noinline (Yauheni Kaliuta) [1874006] - selftests/bpf: Add subprogs to pyperf, strobemeta, and l4lb_noinline tests (Yauheni Kaliuta) [1874006] - tools/bpftool: Replace bpf_program__title() with bpf_program__section_name() (Yauheni Kaliuta) [1874006] - selftests/bpf: Don't use deprecated libbpf APIs (Yauheni Kaliuta) [1874006] - libbpf: Deprecate notion of BPF program "title" in favor of "section name" (Yauheni Kaliuta) [1874006] - selftests/bpf: Add selftest for multi-prog sections and bpf-to-bpf calls (Yauheni Kaliuta) [1874006] - libbpf: Add multi-prog section support for struct_ops (Yauheni Kaliuta) [1874006] - libbpf: Implement generalized .BTF.ext func/line info adjustment (Yauheni Kaliuta) [1874006] - libbpf: Make RELO_CALL work for multi-prog sections and sub-program calls (Yauheni Kaliuta) [1874006] - libbpf: Support CO-RE relocations for multi-prog sections (Yauheni Kaliuta) [1874006] - libbpf: Parse multi-function sections into multiple BPF programs (Yauheni Kaliuta) [1874006] - libbpf: Ensure ELF symbols table is found before further ELF processing (Yauheni Kaliuta) [1874006] - selftests/bpf: Test task_file iterator without visiting pthreads (Yauheni Kaliuta) [1874006] - bpf: Avoid iterating duplicated files for task_file iterator (Yauheni Kaliuta) [1874006] - bpf: {cpu,dev}map: Change various functions return type from int to void (Yauheni Kaliuta) [1874006] - module: Fix up module_notifier return values (Yauheni Kaliuta) [1874006] - bpf: Remove bpf_lsm_file_mprotect from sleepable list. (Yauheni Kaliuta) [1874006] - samples/bpf: Fix to xdpsock to avoid recycling frames (Yauheni Kaliuta) [1874006] - samples/bpf: Optimize l2fwd performance in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Add new sample xsk_fwd.c (Yauheni Kaliuta) [1874006] - libbpf: Support shared umems between queues and devices (Yauheni Kaliuta) [1874006] - selftests/bpf: Add sleepable tests (Yauheni Kaliuta) [1874006] - libbpf: Support sleepable progs (Yauheni Kaliuta) [1874006] - bpf: Add bpf_copy_from_user() helper. (Yauheni Kaliuta) [1874006] - bpf: Fix build without BPF_LSM. (Yauheni Kaliuta) [1874006] - bpf: Introduce sleepable BPF programs (Yauheni Kaliuta) [1874006] - mm/error_inject: Fix allow_error_inject function signatures. (Yauheni Kaliuta) [1874006] - mm/filemap.c: enable error injection at add_to_page_cache() (Yauheni Kaliuta) [1874006] - mm/page_alloc.c: allow error injection (Yauheni Kaliuta) [1874006] - bpf: selftests: Add test for different inner map size (Yauheni Kaliuta) [1874006] - bpf: Relax max_entries check for most of the inner map types (Yauheni Kaliuta) [1874006] - bpf: Add map_meta_equal map ops (Yauheni Kaliuta) [1874006] - bpf: Make bpf_link_info.iter similar to bpf_iter_link_info (Yauheni Kaliuta) [1874006] - tools, bpf/build: Cleanup feature files on make clean (Yauheni Kaliuta) [1874006] - libbpf: Fix compilation warnings for 64-bit printf args (Yauheni Kaliuta) [1874006] - selftests/bpf: Add verifier tests for xor operation (Yauheni Kaliuta) [1874006] - libbpf: Fix unintentional success return code in bpf_object__load (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix spelling mistake "scoket" -> "socket" (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix open call in trigger_fstat_events (Yauheni Kaliuta) [1874006] - selftests/bpf: Add set test to resolve_btfids (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for d_path helper (Yauheni Kaliuta) [1874006] - selftests/bpf: Add verifier test for d_path helper (Yauheni Kaliuta) [1874006] - bpf: Update .BTF_ids section in btf.rst with sets info (Yauheni Kaliuta) [1874006] - bpf: Add d_path helper (Yauheni Kaliuta) [1874006] - bpf: Add BTF_SET_START/END macros (Yauheni Kaliuta) [1874006] - bpf: Add btf_struct_ids_match function (Yauheni Kaliuta) [1874006] - bpf: Factor btf_struct_access function (Yauheni Kaliuta) [1874006] - bpf: Remove recursion call in btf_struct_access (Yauheni Kaliuta) [1874006] - bpf: Add type_id pointer as argument to __btf_resolve_size (Yauheni Kaliuta) [1874006] - bpf: Add elem_id pointer as argument to __btf_resolve_size (Yauheni Kaliuta) [1874006] - bpf: Move btf_resolve_size into __btf_resolve_size (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Add support for set symbols (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Add size check to get_id function (Yauheni Kaliuta) [1874006] - bpf: Disallow BPF_PRELOAD in allmodconfig builds (Yauheni Kaliuta) [1874006] - bpf: Add selftests for local_storage (Yauheni Kaliuta) [1874006] - bpf: Allow local storage to be used from LSM programs (Yauheni Kaliuta) [1874006] - bpf: Implement bpf_local_storage for inodes (Yauheni Kaliuta) [1874006] - bpf: Split bpf_local_storage to bpf_sk_storage (Yauheni Kaliuta) [1874006] - bpf: Generalize bpf_sk_storage (Yauheni Kaliuta) [1874006] - bpf: Generalize caching for sk_storage. (Yauheni Kaliuta) [1874006] - bpf: Renames in preparation for bpf_local_storage (Yauheni Kaliuta) [1874006] - selftests/bpf: Enable tc verbose mode for test_sk_assign (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor tracepoint tracing programs with libbpf (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor kprobe tracing programs with libbpf (Yauheni Kaliuta) [1874006] - selftests: bpf: Fix sockmap update nits (Yauheni Kaliuta) [1874006] - libbpf: Fix type compatibility check copy-paste error (Yauheni Kaliuta) [1874006] - libbpf: Avoid false unuinitialized variable warning in bpf_core_apply_relo (Yauheni Kaliuta) [1874006] - bpf: sk_lookup: Add user documentation (Yauheni Kaliuta) [1874006] - docs: Correct subject prefix and update LLVM info (Yauheni Kaliuta) [1874006] - libbpf: Normalize and improve logging across few functions (Yauheni Kaliuta) [1874006] - libbpf: Skip well-known ELF sections when iterating ELF (Yauheni Kaliuta) [1874006] - libbpf: Add __noinline macro to bpf_helpers.h (Yauheni Kaliuta) [1874006] - libbpf: Factor out common ELF operations and improve logging (Yauheni Kaliuta) [1874006] - libbpf: Add perf_buffer APIs for better integration with outside epoll loop (Yauheni Kaliuta) [1874006] - bpftool: Implement link_query for bpf iterators (Yauheni Kaliuta) [1874006] - bpf: Implement link_query callbacks in map element iterators (Yauheni Kaliuta) [1874006] - bpf: Implement link_query for bpf iterators (Yauheni Kaliuta) [1874006] - selftests/bpf: List newest Clang built-ins needed for some CO-RE selftests (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix two minor compilation warnings reported by GCC 4.9 (Yauheni Kaliuta) [1874006] - libbpf: Fix libbpf build on compilers missing __builtin_mul_overflow (Yauheni Kaliuta) [1874006] - libbpf: Fix detection of BPF helper call instruction (Yauheni Kaliuta) [1874006] - selftests/bpf: Add bpffs preload test. (Yauheni Kaliuta) [1874006] - bpf: Add kernel module with user mode driver that populates bpffs. (Yauheni Kaliuta) [1874006] - bpf: Add BPF program and map iterators as built-in BPF programs. (Yauheni Kaliuta) [1874006] - bpf: Factor out bpf_link_by_id() helper. (Yauheni Kaliuta) [1874006] - libbpf: Simplify the return expression of build_map_pin_path() (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tests for ENUMVAL_EXISTS/ENUMVAL_VALUE relocations (Yauheni Kaliuta) [1874006] - libbpf: Implement enum value-based CO-RE relocations (Yauheni Kaliuta) [1874006] - selftests/bpf: Add CO-RE relo test for TYPE_ID_LOCAL/TYPE_ID_TARGET (Yauheni Kaliuta) [1874006] - selftests/bpf: Test TYPE_EXISTS and TYPE_SIZE CO-RE relocations (Yauheni Kaliuta) [1874006] - libbpf: Implement type-based CO-RE relocations support (Yauheni Kaliuta) [1874006] - libbpf: Centralize poisoning and poison reallocarray() (Yauheni Kaliuta) [1874006] - tools/bpftool: Remove libbpf_internal.h usage in bpftool (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test validating failure on ambiguous relocation value (Yauheni Kaliuta) [1874006] - libbpf: Improve relocation ambiguity detection (Yauheni Kaliuta) [1874006] - libbpf: Detect minimal BTF support and skip BTF loading, if missing (Yauheni Kaliuta) [1874006] - libbpf: Sanitize BPF program code for bpf_probe_read_{kernel, user}[_str] (Yauheni Kaliuta) [1874006] - libbpf: Factor out common logic of testing and closing FD (Yauheni Kaliuta) [1874006] - libbpf: Make kernel feature probing lazy (Yauheni Kaliuta) [1874006] - libbpf: Disable -Wswitch-enum compiler warning (Yauheni Kaliuta) [1874006] - libbpf: Convert comma to semicolon (Yauheni Kaliuta) [1874006] - samples: bpf: Fix broken bpf programs due to removed symbol (Yauheni Kaliuta) [1874006] - bpf: Replace GPLv2 boilerplate/reference with SPDX - rule 206 (Jiri Benc) [1874006] - LSM: Make some functions static (Yauheni Kaliuta) [1874006] - LSM: Make lsm_early_cred() and lsm_early_task() local functions. (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the ipc security blob (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the task security (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the inode security (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the file security (Yauheni Kaliuta) [1874006] - Infrastructure management of the cred security blob (Yauheni Kaliuta) [1874006] - kernel: move CONFIG_TASKS_TRACE_RCU fields to task_struct_rh (Jiri Benc) [1874006] - kernel: store pointer to task_struct in task_struct_rh (Jiri Benc) [1874006]- igb: Add double-check MTA_REGISTER for i210 and i211 (Corinna Vinschen) [1920286] - igb: Redistribute memory for transmit packet buffers when in Qav mode (Corinna Vinschen) [1920286] - igb: Fix fall-through warnings for Clang (Corinna Vinschen) [1920286] - intel: clean up mismatched header comments (Corinna Vinschen) [1920286] - igb: check timestamp validity (Corinna Vinschen) [1920286] - igb: Fix duplicate include guard (Corinna Vinschen) [1920286] - intel: Update drivers to use ethtool_sprintf (Corinna Vinschen) [1920286] - net: ethernet: intel: igb: Typo fix in the file igb_main.c (Corinna Vinschen) [1920286] - igb: avoid premature Rx buffer reuse (Corinna Vinschen) [1920286] - igb: remove h from printk format specifier (Corinna Vinschen) [1920286] - igb: Enable RSS for Intel I211 Ethernet Controller (Corinna Vinschen) [1920286] - igb: fix TDBAL register show incorrect value (Corinna Vinschen) [1920286] - net: igb: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920286] - igb: avoid transmit queue timeout in xdp path (Corinna Vinschen) [1920286] - igb: use xdp_do_flush (Corinna Vinschen) [1920286] - igb: skb add metasize for xdp (Corinna Vinschen) [1920286] - igb: XDP extack message on error (Corinna Vinschen) [1920286] - igb: take VLAN double header into account (Corinna Vinschen) [1920286] - igb: XDP xmit back fix error code (Corinna Vinschen) [1920286] - igb: add XDP support (Corinna Vinschen) [1920286] - r8169: don't advertise pause in jumbo mode (Josef Oskera) [1935346] - r8169: fix DMA being used after buffer free if WoL is enabled (Josef Oskera) [1935346] - r8169: fix r8168fp_adjust_ocp_cmd function (Josef Oskera) [1935346] - r8169: use macro pm_ptr (Josef Oskera) [1935346] - r8169: fix resuming from suspend on RTL8105e if machine runs on battery (Josef Oskera) [1935346] - r8169: handle tx before rx in napi poll (Josef Oskera) [1935346] - r8169: disable detection of bogus xid's 308/388 (Josef Oskera) [1935346] - r8169: re-configure WOL settings on resume from hibernation (Josef Oskera) [1935346] - r8169: don't try to disable interrupts if NAPI is scheduled already (Josef Oskera) [1935346] - r8169: Add support for another RTL8168FP (Josef Oskera) [1935346] - r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set (Josef Oskera) [1935346] - r8169: work around RTL8125 UDP hw bug (Josef Oskera) [1935346] - r8169: remove not needed call to rtl_wol_enable_rx from rtl_shutdown (Josef Oskera) [1935346] - r8169: improve DASH support (Josef Oskera) [1935346] - r8169: improve rtl8169_rx_csum (Josef Oskera) [1935346] - r8169: align rtl_wol_suspend_quirk with vendor driver and rename it (Josef Oskera) [1935346] - r8169: clean up rtl_pll_power_down/up functions (Josef Oskera) [1935346] - r8169: improve handling D3 PLL power-down (Josef Oskera) [1935346] - r8169: enable PLL power-down for chip versions 34, 35, 36, 42 (Josef Oskera) [1935346] - r8169: make use of the unaligned access helpers (Josef Oskera) [1935346] - r8169: tweak max read request size for newer chips also in jumbo mtu mode (Josef Oskera) [1935346] - r8169: align RTL8168e jumbo pcie read request size with vendor driver (Josef Oskera) [1935346] - r8169: don't wakeup-enable device on shutdown if WOL is disabled (Josef Oskera) [1935346] - r8169: improve rtl_ocp_reg_failure (Josef Oskera) [1935346] - r8169: replace BUG_ON with WARN in _rtl_eri_write (Josef Oskera) [1935346] - r8169: improve RTL8168g PHY suspend quirk (Josef Oskera) [1935346] - r8169: move ERI access functions to avoid forward declaration (Josef Oskera) [1935346] - r8169: work around power-saving bug on some chip versions (Josef Oskera) [1935346] - r8169: make NUM_RX_DESC a signed int (Josef Oskera) [1935346] - r8169: improve rtl_rx (Josef Oskera) [1935346] - r8169: set tc_offset only if tally counter reset isn't supported (Josef Oskera) [1935346] - net: phy: realtek: read actual speed on rtl8211f to detect downshift (Josef Oskera) [1935346] - r8169: use dev_err_probe in rtl_get_ether_clk (Josef Oskera) [1935346] - r8169: reduce number of workaround doorbell rings (Josef Oskera) [1935346] - r8169: remove not needed check in rtl8169_start_xmit (Josef Oskera) [1935346] - r8169: remove nr_frags argument from rtl_tx_slots_avail (Josef Oskera) [1935346] - r8169: improve rtl8169_start_xmit (Josef Oskera) [1935346] - r8169: improve rtl_tx (Josef Oskera) [1935346] - r8169: use READ_ONCE in rtl_tx_slots_avail (Josef Oskera) [1935346] - net: phy: realtek: support paged operations on RTL8201CP (Josef Oskera) [1935346] - r8169: disable hw csum for short packets on all chip versions (Josef Oskera) [1935346] - r8169: fix potential skb double free in an error path (Josef Oskera) [1935346] - r8169: work around short packet hw bug on RTL8125 (Josef Oskera) [1935346] - net: phy: realtek: Add support for RTL8221B-CG series (Josef Oskera) [1935346] - r8169: set IRQF_NO_THREAD if MSI(X) is enabled (Josef Oskera) [1935346] - r8169: align number of tx descriptors with vendor driver (Josef Oskera) [1935346] - r8169: use pm_runtime_put_sync in rtl_open error path (Josef Oskera) [1935346] - r8169: remove unneeded memory barrier in rtl_tx (Josef Oskera) [1935346] - r8169: remove no longer needed private rx/tx packet/byte counters (Josef Oskera) [1935346] - r8169: use struct pcpu_sw_netstats for rx/tx packet/byte counters (Josef Oskera) [1935346] - treewide: Use fallthrough pseudo-keyword (Josef Oskera) [1935346] - r8169: fix jumbo packet handling on RTL8168e (Josef Oskera) [1915314] - sctp: delay auto_asconf init until binding the first addr (Xin Long) [1952020] - netfilter: x_tables: fix compat match/target pad out-of-bound write (Florian Westphal) [1950014] - netfilter: arp_tables: add pre_exit hook for table unregister (Florian Westphal) [1950014] - netfilter: bridge: add pre_exit hooks for ebtable unregistration (Florian Westphal) [1950014] - netfilter: nft_limit: avoid possible divide error in nft_limit_init (Florian Westphal) [1950014] - netfilter: conntrack: do not print icmpv6 as unknown via /proc (Florian Westphal) [1950014] - netfilter: flowtable: fix NAT IPv6 offload mangling (Florian Westphal) [1950014] - netfilter: flowtable: Make sure GC works periodically in idle system (Florian Westphal) [1950014] - netfilter: nftables: report EOPNOTSUPP on unsupported flowtable flags (Florian Westphal) [1950014] - netfilter: ctnetlink: fix dump of the expect mask attribute (Florian Westphal) [1950014] - netfilter: x_tables: gpf inside xt_find_revision() (Florian Westphal) [1950014] - netfilter: conntrack: skip identical origin tuple in same zone only (Florian Westphal) [1950014] - flow_dissector: fix byteorder of dissected ICMP ID (Paolo Abeni) [1950288] - flow_dissector: fix TTL and TOS dissection on IPv4 fragments (Paolo Abeni) [1950288] - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled (Paolo Abeni) [1950288] - net: core: devlink: use right genl user_ptr when handling port param get/set (Paolo Abeni) [1950288] - net_sched: gen_estimator: support large ewma log (Paolo Abeni) [1950288] - net: Allow NETIF_F_HW_TLS_TX if IP_CSUM && IPV6_CSUM (Paolo Abeni) [1950288] - net: Disable NETIF_F_HW_TLS_TX when HW_CSUM is disabled (Paolo Abeni) [1950288] - devlink: Add devlink port documentation (Petr Oros) [1935708] - devlink: Support get and set state of port function (Petr Oros) [1935708] - devlink: Support add and delete devlink port (Petr Oros) [1935708] - devlink: Introduce PCI SF port flavour and port attribute (Petr Oros) [1935708] - devlink: Prepare code to fill multiple port function attributes (Petr Oros) [1935708] - net: core: devlink: simplify the return expression of devlink_nl_cmd_trap_set_doit() (Petr Oros) [1935708] - video: hyperv_fb: Add ratelimit on error message (Mohammed Gamal) [1957804] - ovl: allow upperdir inside lowerdir (Miklos Szeredi) [1903647] - i2c: i801: Add support for Intel Alder Lake PCH-P (Steve Best) [1929488] - pinctrl: tigerlake: Add Alder Lake-P ACPI ID (Steve Best) [1929492] - xfs: set aside allocation btree blocks from block reservation (Brian Foster) [1911738] - xfs: introduce in-core global counter of allocbt blocks (Brian Foster) [1911738] - xfs: unconditionally read all AGFs on mounts with perag reservation (Brian Foster) [1911738] - xfs: drop unnecessary setfilesize helper (Brian Foster) [1942348] - xfs: drop unused ioend private merge and setfilesize code (Brian Foster) [1942348] - xfs: open code ioend needs workqueue helper (Brian Foster) [1942348] - xfs: drop submit side trans alloc for append ioends (Brian Foster) [1942348] - blk-mq: Use request queue-wide tags for tagset-wide sbitmap (Ming Lei) [1932145] - blk-mq: Some tag allocation code refactoring (Ming Lei) [1932145] - blk-mq: Swap two calls in blk_mq_exit_queue() (Ming Lei) [1932145] - blk-mq: plug request for shared sbitmap (Ming Lei) [1932145] - blk-mq: set default elevator as deadline in case of hctx shared tagset (Ming Lei) [1932145] - powerpc/perf: Fix PMU constraint check for EBB events (Diego Domingos) [1926573] - s390/idle: fix suspicious RCU usage (Waiman Long) [1963142] - x86/cpu: Add another Alder Lake CPU to the Intel family (Steve Best) [1962033] - x86/split_lock: Don't write MSR_TEST_CTRL on CPUs that aren't whitelisted (Prarit Bhargava) [1837350] - Documentation/admin-guide: Change doc for split_lock_detect parameter (Prarit Bhargava) [1837350] - x86/traps: Handle #DB for bus lock (Prarit Bhargava) [1837350] - x86/cpufeatures: Enumerate #DB for bus lock detection (Prarit Bhargava) [1837350] - x86/split_lock: Enable the split lock feature on another Alder Lake CPU (Prarit Bhargava) [1925373] - x86/cpu: Add another Alder Lake CPU to the Intel family (Prarit Bhargava) [1925373] - x86/split_lock: Enable the split lock feature on Sapphire Rapids and Alder Lake CPUs (Prarit Bhargava) [1925373]- libbpf: Add user-space variants of BPF_CORE_READ() family of macros (Jiri Olsa) [1896362] - libbpf: Switch tracing and CO-RE helper macros to bpf_probe_read_kernel() (Jiri Olsa) [1896362] - selftests/bpf: Fix test_vmlinux test to use bpf_probe_read_user() (Jiri Olsa) [1896362] - samples/bpf, selftests/bpf: Use bpf_probe_read_kernel (Jiri Olsa) [1896362] - bpf: Restrict bpf_probe_read{, str}() only to archs where they work (Jiri Olsa) [1896362] - perf/x86/intel/uncore: Add Rocket Lake support (Michael Petlan) [1837502] - perf/x86/cstate: Add Rocket Lake CPU support (Michael Petlan) [1837497] - perf/x86/intel: Add Rocket Lake CPU support (Michael Petlan) [1837497] - perf/x86/msr: Add Rocket Lake CPU support (Michael Petlan) [1837497] - tick/nohz: Kick only _queued_ task whose tick dependency is updated (Waiman Long) [1922901] - tick/nohz: Change signal tick dependency to wake up CPUs of member tasks (Waiman Long) [1922901] - tick/nohz: Only wake up a single target cpu when kicking a task (Waiman Long) [1922901] - tick/nohz: Narrow down noise while setting current task's tick dependency (Waiman Long) [1922901] - sched/fair: Fix shift-out-of-bounds in load_balance() (Phil Auld) [1958730] - redhat/configs: Update torture test configs (Waiman Long) [1941211] - rcu: Do not report strict GPs for outgoing CPUs (Waiman Long) [1941211] - rcu,ftrace: Fix ftrace recursion (Waiman Long) [1941211] - arm64: smp: Tell RCU about CPUs that fail to come online (Waiman Long) [1941211] - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled (Waiman Long) [1941211] - rcu-tasks: Enclose task-list scan in rcu_read_lock() (Waiman Long) [1941211] - rcu-tasks: Fix low-probability task_struct leak (Waiman Long) [1941211] - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Shorten per-grace-period sleep for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Selectively enable more RCU Tasks Trace IPIs (Waiman Long) [1941211] - rcu-tasks: Use more aggressive polling for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Mark variables static (Waiman Long) [1941211] - rcu-tasks: Prevent complaints of unused show_rcu_tasks_classic_gp_kthread() (Waiman Long) [1941211] - rcu: Remove unused "cpu" parameter from rcu_report_qs_rdp() (Waiman Long) [1941211] - torture: Add gdb support (Waiman Long) [1941211] - rcuperf: Change rcuperf to rcuscale (Waiman Long) [1941211] - sched,rcuperf: Convert to sched_set_fifo_low() (Waiman Long) [1941211] - rcu/rcuperf: Convert to SPDX license identifier (Waiman Long) [1941211] - rcutorture: Allow pointer leaks to test diagnostic code (Waiman Long) [1941211] - rcu: Report QS for outermost PREEMPT=n rcu_read_unlock() for strict GPs (Waiman Long) [1941211] - rcu: locking and unlocking need to always be at least barriers (Waiman Long) [1941211] - rcu: Execute RCU reader shortly after rcu_core for strict GPs (Waiman Long) [1941211] - rcu: Provide optional RCU-reader exit delay for strict GPs (Waiman Long) [1941211] - rcu: Make FQS more aggressive in complaining about offline CPUs (Waiman Long) [1941211] - rcu: Clarify comments about FQS loop reporting quiescent states (Waiman Long) [1941211] - rcu: IPI all CPUs at GP end for strict GPs (Waiman Long) [1941211] - rcu: IPI all CPUs at GP start for strict GPs (Waiman Long) [1941211] - rcu: Attempt QS when CPU discovers GP for strict GPs (Waiman Long) [1941211] - rcu: Do full report for .need_qs for strict GPs (Waiman Long) [1941211] - rcu: Always set .need_qs from __rcu_read_lock() for strict GPs (Waiman Long) [1941211] - rcu: Force DEFAULT_RCU_BLIMIT to 1000 for strict RCU GPs (Waiman Long) [1941211] - rcu: Restrict default jiffies_till_first_fqs for strict RCU GPs (Waiman Long) [1941211] - rcu: Reduce leaf fanout for strict RCU grace periods (Waiman Long) [1941211] - rcu: Add Kconfig option for strict RCU grace periods (Waiman Long) [1941211] - rcu/nocb: Add a warning for non-GP kthread running GP code (Waiman Long) [1941211] - rcu: Move rcu_cpu_started per-CPU variable to rcu_data (Waiman Long) [1941211] - scftorture: Add cond_resched() to test loop (Waiman Long) [1941211] - rcutorture: Hoist OOM registry up one level (Waiman Long) [1941211] - rcutorture: Properly synchronize with OOM notifier (Waiman Long) [1941211] - rcutorture: Properly set rcu_fwds for OOM handling (Waiman Long) [1941211] - torture: Add kvm.sh --help and update help message (Waiman Long) [1941211] - refperf: Avoid null pointer dereference when buf fails to allocate (Waiman Long) [1941211] - rcutorture: Add CONFIG_PROVE_RCU_LIST to TREE05 (Waiman Long) [1941211] - torture: Update initrd documentation (Waiman Long) [1941211] - rcutorture: Replace HTTP links with HTTPS ones (Waiman Long) [1941211] - rcu: Fix kerneldoc comments in rcupdate.h (Waiman Long) [1941211] - scftorture: Adapt memory-ordering test to UP operation (Waiman Long) [1941211] - torture: document --allcpus argument added to the kvm.sh script (Waiman Long) [1941211] - scftorture: Block scftorture_invoker() kthreads for offline CPUs (Waiman Long) [1941211] - scftorture: Check unexpected "switch" statement value (Waiman Long) [1941211] - scftorture: Make symbol 'scf_torture_rand' static (Waiman Long) [1941211] - scftorture: Prevent compiler from reducing race probabilities (Waiman Long) [1941211] - scftorture: Flag errors in torture-compatible manner (Waiman Long) [1941211] - scftorture: Consolidate scftorture_invoke_one() scf_check initialization (Waiman Long) [1941211] - scftorture: Consolidate scftorture_invoke_one() check and kfree() (Waiman Long) [1941211] - scftorture: Add smp_call_function() memory-ordering checks (Waiman Long) [1941211] - scftorture: Add smp_call_function_many() memory-ordering checks (Waiman Long) [1941211] - scftorture: Add smp_call_function_single() memory-ordering checks (Waiman Long) [1941211] - scftorture: Summarize per-thread statistics (Waiman Long) [1941211] - torture: Declare parse-console.sh independence from rcutorture (Waiman Long) [1941211] - tick-sched: Clarify "NOHZ: local_softirq_pending" warning (Waiman Long) [1941211] - scftorture: Implement weighted primitive selection (Waiman Long) [1941211] - torture: Add scftorture to the rcutorture scripting (Waiman Long) [1941211] - scftorture: Add smp_call_function() torture test (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_cpu_stall_ftrace_dump (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_kick_kthreads (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_resched_ns (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_divisor (Waiman Long) [1941211] - nocb: Remove show_rcu_nocb_state() false positive printout (Waiman Long) [1941211] - rcu/tree: Remove CONFIG_PREMPT_RCU check in force_qs_rnp() (Waiman Long) [1941211] - nocb: Clarify RCU nocb CPU error message (Waiman Long) [1941211] - rcu/tree: Force quiescent state on callback overload (Waiman Long) [1941211] - rcu/trace: Use gp_seq_req in acceleration's rcu_grace_period tracepoint (Waiman Long) [1941211] - rcu/trace: Print negative GP numbers correctly (Waiman Long) [1941211] - rcutorture: Output number of elapsed grace periods (Waiman Long) [1941211] - rcu: Initialize at declaration time in rcu_exp_handler() (Waiman Long) [1941211] - rcu: Remove KCSAN stubs from update.c (Waiman Long) [1941211] - rcu: Remove KCSAN stubs (Waiman Long) [1941211] - srcu: Remove KCSAN stubs (Waiman Long) [1941211] - rcutorture: Remove KCSAN stubs (Waiman Long) [1941211] - refscale: Change --torture type from refperf to refscale (Waiman Long) [1941211] - refperf: Rename refperf.c to refscale.c and change internal names (Waiman Long) [1941211] - refperf: Rename RCU_REF_PERF_TEST to RCU_REF_SCALE_TEST (Waiman Long) [1941211] - torture: Remove obsolete "cd $KVM" (Waiman Long) [1941211] - torture: Avoid duplicate specification of qemu command (Waiman Long) [1941211] - torture: Dump ftrace at shutdown only if requested (Waiman Long) [1941211] - torture: Add kvm-tranform.sh script for qemu-cmd files (Waiman Long) [1941211] - torture: Add more tracing crib notes to kvm.sh (Waiman Long) [1941211] - torture: Improve diagnostic for KCSAN-incapable compilers (Waiman Long) [1941211] - torture: Correctly summarize build-only runs (Waiman Long) [1941211] - torture: Pass --kmake-arg to all make invocations (Waiman Long) [1941211] - kernel/rcu/tree.c: Fix kernel-doc warnings (Waiman Long) [1941211] - rcu-tasks: Fix synchronize_rcu_tasks_trace() header comment (Waiman Long) [1941211] - rcu: grpnum just records group number (Waiman Long) [1941211] - rcu: grplo/grphi just records CPU number (Waiman Long) [1941211] - rcu: gp_max is protected by root rcu_node's lock (Waiman Long) [1941211] - rcutorture: Check for unwatched readers (Waiman Long) [1941211] - torture: Abstract out console-log error detection (Waiman Long) [1941211] - torture: Add a stop-run capability (Waiman Long) [1941211] - rcu-tasks: Fix code-style issues (Waiman Long) [1941211] - torture: Create qemu-cmd in --buildonly runs (Waiman Long) [1941211] - rcu: Stop shrinker loop (Waiman Long) [1941211] - refperf: Add test for RCU Tasks readers (Waiman Long) [1941211] - refperf: Add test for RCU Tasks Trace readers. (Waiman Long) [1941211] - rcu: Replace 1 with true (Waiman Long) [1941211] - rcu/rcutorture: Replace 0 with false (Waiman Long) [1941211] - refperf: Change readdelay module parameter to nanoseconds (Waiman Long) [1941211] - refperf: Work around 64-bit division (Waiman Long) [1941211] - doc: Document rcuperf's module parameters (Waiman Long) [1941211] - refperf: Adjust refperf.loop default value (Waiman Long) [1941211] - rcu-tasks: Conditionally compile show_rcu_tasks_gp_kthreads() (Waiman Long) [1941211] - rcu-tasks: Add #include of rcupdate_trace.h to update.c (Waiman Long) [1941211] - rcu-tasks: Make rcu_tasks_postscan() be static (Waiman Long) [1941211] - refperf: Add read-side delay module parameter (Waiman Long) [1941211] - lockdep: Complain only once about RCU in extended quiescent state (Waiman Long) [1941211] - refperf: Simplify initialization-time wakeup protocol (Waiman Long) [1941211] - rcu: Allow for smp_call_function() running callbacks from idle (Waiman Long) [1941211] - refperf: Output per-experiment data points (Waiman Long) [1941211] - refperf: Label experiment-number column "Runs" (Waiman Long) [1941211] - refperf: Add warmup and cooldown processing phases (Waiman Long) [1941211] - refperf: More closely synchronize reader start times (Waiman Long) [1941211] - refperf: Convert reader_task structure's "start" field to int (Waiman Long) [1941211] - refperf: Tune reader measurement interval (Waiman Long) [1941211] - refperf: Make functions static (Waiman Long) [1941211] - srcu: Avoid local_irq_save() before acquiring spinlock_t (Waiman Long) [1941211] - refperf: Dynamically allocate thread-summary output buffer (Waiman Long) [1941211] - refperf: Dynamically allocate experiment-summary output buffer (Waiman Long) [1941211] - refperf: Provide module parameter to specify number of experiments (Waiman Long) [1941211] - refperf: Convert nreaders to a module parameter (Waiman Long) [1941211] - refperf: Allow decimal nanoseconds (Waiman Long) [1941211] - refperf: Hoist function-pointer calls out of the loop (Waiman Long) [1941211] - rcu: Introduce single argument kvfree_rcu() interface (Waiman Long) [1941211] - refperf: Add holdoff parameter to allow CPUs to come online (Waiman Long) [1941211] - torture: Add refperf to the rcutorture scripting (Waiman Long) [1941211] - rcuperf: Add comments explaining the high reader overhead (Waiman Long) [1941211] - refperf: Add a test to measure performance of read-side synchronization (Waiman Long) [1941211] - rcuperf: Remove useless while loops around wait_event (Waiman Long) [1941211] - rcu: Provide rcu_irq_exit_check_preempt() (Waiman Long) [1941211] - sched,rcu,tracing: Avoid tracing before in_nmi() is correct (Waiman Long) [1941211] - hardirq/nmi: Allow nested nmi_enter() (Waiman Long) [1941211] - powerpc/64s: Include header file to fix a warning (Waiman Long) [1941211] - powerpc/64s: system reset interrupt preserve HSRRs (Waiman Long) [1941211] - powerpc/64s: Fix HV NMI vs HV interrupt recoverability test (Waiman Long) [1941211] - powerpc/traps: fix recoverability of machine check handling on book3s/32 (Waiman Long) [1941211] - powerpc/traps: restore recoverability of machine_check interrupts (Waiman Long) [1941211] - rcu: Mark rcu_nmi_enter() call to rcu_cleanup_after_idle() noinstr (Waiman Long) [1941211] - rcu: Remove initialized but unused rnp from check_slow_task() (Waiman Long) [1941211] - rcu: Update comment from rsp->rcu_gp_seq to rsp->gp_seq (Waiman Long) [1941211] - rcu: Provide __rcu_is_watching() (Waiman Long) [1941211] - doc: Tasks RCU must protect instructions before trampoline (Waiman Long) [1941211] - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls (Waiman Long) [1941211] - rcu-tasks: Convert sleeps to idle priority (Waiman Long) [1941211] - rcu: Expedited grace-period sleeps to idle priority (Waiman Long) [1941211] - rcu: No-CBs-related sleeps to idle priority (Waiman Long) [1941211] - rcu: Priority-boost-related sleeps to idle priority (Waiman Long) [1941211] - rcu: Grace-period-kthread related sleeps to idle priority (Waiman Long) [1941211] - torture: Add --allcpus argument to the kvm.sh script (Waiman Long) [1941211] - torture: Remove whitespace from identify_qemu_vcpus output (Waiman Long) [1941211] - torture: Add script to smoke-test commits in a branch (Waiman Long) [1941211] - trace: events: rcu: Change description of rcu_dyntick trace event (Waiman Long) [1941211] - rcu: Add comment documenting rcu_callback_map's purpose (Waiman Long) [1941211] - rcu: Provide rcu_irq_exit_preempt() (Waiman Long) [1941211] - rcu: Add callbacks-invoked counters (Waiman Long) [1941211] - doc: Timer problems can cause RCU CPU stall warnings (Waiman Long) [1941211] - torture: Remove qemu dependency on EFI firmware (Waiman Long) [1941211] - rcutorture: NULL rcu_torture_current earlier in cleanup code (Waiman Long) [1941211] - rcutorture: Handle non-statistic bang-string error messages (Waiman Long) [1941211] - torture: Set configfile variable to current scenario (Waiman Long) [1941211] - rcutorture: Add races with task-exit processing (Waiman Long) [1941211] - docs: RCU: Don't duplicate chapter names in rculist_nulls.rst (Waiman Long) [1941211] - docs: RCU: Convert stallwarn.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert rcuref.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert torture.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert rculist_nulls.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert lockdep.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert lockdep-splat.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert checklist.txt to ReST (Waiman Long) [1941211] - doc: Add rcutorture scripting to torture.txt (Waiman Long) [1941211] - doc: Fix typo "deference" to "dereference" (Waiman Long) [1941211] - docs: locking: convert docs to ReST and rename to *.rst (Waiman Long) [1941211] - doc/rcuref: Document real world examples in kernel (Waiman Long) [1941211] - Documentation/locking/lockdep: Drop last two chars of sample states (Waiman Long) [1941211] - doc: rcu: Suspicious RCU usage is a warning (Waiman Long) [1941211] - RCU/torture.txt: Remove section MODULE PARAMETERS (Waiman Long) [1941211] - Documentation/lockstat: Fix trivial typo (Waiman Long) [1941211] - rcu: Simplify the calculation of rcu_state.ncpus (Waiman Long) [1941211] - srcu: Fix a typo in comment "amoritized"->"amortized" (Waiman Long) [1941211] - rcuperf: Fix printk format warning (Waiman Long) [1941211] - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls (Waiman Long) [1941211] - rcu: Initialize and destroy rcu_synchronize only when necessary (Waiman Long) [1941211] - rcu: Add KCSAN stubs to update.c (Waiman Long) [1941211] - rcu: Add KCSAN stubs (Waiman Long) [1941211] - srcu: Add KCSAN stubs (Waiman Long) [1941211] - rcutorture: Add KCSAN stubs (Waiman Long) [1941211] - rcu/rcutorture: Convert to SPDX license identifier (Waiman Long) [1941211] - rcu: Convert rcu_nohz_full_cpu() ULONG_CMP_LT() to time_before() (Waiman Long) [1941211] - rcu: Convert rcu_initiate_boost() ULONG_CMP_GE() to time_after() (Waiman Long) [1941211] - rcutorture: Convert ULONG_CMP_LT() to time_before() (Waiman Long) [1941211] - rcu: Convert ULONG_CMP_GE() to time_after() for jiffy comparison (Waiman Long) [1941211] - rcu: Add rcu_gp_might_be_stalled() (Waiman Long) [1941211] - torture: Add a --kasan argument (Waiman Long) [1941211] - torture: Save a few lines by using config_override_param initially (Waiman Long) [1941211] - torture: Allow scenario-specific Kconfig options to override CFcommon (Waiman Long) [1941211] - torture: Allow --kconfig options to override --kcsan defaults (Waiman Long) [1941211] - torture: Abstract application of additional Kconfig options (Waiman Long) [1941211] - torture: Eliminate duplicate #CHECK# from ConfigFragment (Waiman Long) [1941211] - torture: Make --kcsan argument also create a summary (Waiman Long) [1941211] - rcutorture: Make rcu_fwds and rcu_fwd_emergency_stop static (Waiman Long) [1941211] - torture: Add --kcsan argument to top-level kvm.sh script (Waiman Long) [1941211] - rcu-tasks: Allow standalone use of TASKS_{TRACE_,}RCU (Waiman Long) [1941211] - rcu: Remove self-stack-trace when all quiescent states seen (Waiman Long) [1941211] - ftrace: Use synchronize_rcu_tasks_rude() instead of ftrace_sync() (Waiman Long) [1941211] - ftrace: Protect ftrace_graph_hash with ftrace_sync (Waiman Long) [1941211] - ftrace: Add comment to why rcu_dereference_sched() is open coded (Waiman Long) [1941211] - tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu (Waiman Long) [1941211] - tracing: Annotate ftrace_graph_hash pointer with __rcu (Waiman Long) [1941211] - tracing/fgraph: Fix set_graph_function from showing interrupts (Waiman Long) [1941211] - rcu: Allow rcutorture to starve grace-period kthread (Waiman Long) [1941211] - rcu: When GP kthread is starved, tag idle threads as false positives (Waiman Long) [1941211] - rcutorture: Right-size TREE10 CPU consumption (Waiman Long) [1941211] - rcu: Replace 1 by true (Waiman Long) [1941211] - rcutorture: Add test of holding scheduler locks across rcu_read_unlock() (Waiman Long) [1941211] - rcu: Replace assigned pointer ret value by corresponding boolean value (Waiman Long) [1941211] - rcu-tasks: Add IPI failure count to statistics (Waiman Long) [1941211] - rcutorture: Add TRACE02 scenario enabling RCU Tasks Trace IPIs (Waiman Long) [1941211] - rcu-tasks: Add count for idle tasks on offline CPUs (Waiman Long) [1941211] - rcu-tasks: Add rcu_dynticks_zero_in_eqs() effectiveness statistics (Waiman Long) [1941211] - rcu-tasks: Make RCU tasks trace also wait for idle tasks (Waiman Long) [1941211] - rcu-tasks: Handle the running-offline idle-task special case (Waiman Long) [1941211] - rcu-tasks: Disable CPU hotplug across RCU tasks trace scans (Waiman Long) [1941211] - rcu: Mark rcu_state.gp_seq to detect more concurrent writes (Waiman Long) [1941211] - rcu-tasks: Allow rcu_read_unlock_trace() under scheduler locks (Waiman Long) [1941211] - rcu-tasks: Avoid IPIing userspace/idle tasks if kernel is so built (Waiman Long) [1941211] - rcu-tasks: Add Kconfig option to mediate smp_mb() vs. IPI (Waiman Long) [1941211] - rcu-tasks: Add grace-period and IPI counts to statistics (Waiman Long) [1941211] - rcu-tasks: Split ->trc_reader_need_end (Waiman Long) [1941211] - rcu-tasks: Provide boot parameter to delay IPIs until late in grace period (Waiman Long) [1941211] - rcu-tasks: Add a grace-period start time for throttling and debug (Waiman Long) [1941211] - rcu: Get rid of some doc warnings in update.c (Waiman Long) [1941211] - rcu-tasks: Make RCU Tasks Trace make use of RCU scheduler hooks (Waiman Long) [1941211] - rcu-tasks: Use context-switch hook for PREEMPT=y kernels (Waiman Long) [1941211] - rcu-tasks: Make rcutorture writer stall output include GP state (Waiman Long) [1941211] - rcu-tasks: Add RCU tasks to rcutorture writer stall output (Waiman Long) [1941211] - rcuperf: Add ability to increase object allocation size (Waiman Long) [1941211] - rcu-tasks: Move #ifdef into tasks.h (Waiman Long) [1941211] - rcutorture: Add flag to produce non-busy-wait task stalls (Waiman Long) [1941211] - rcu: Add per-task state to RCU CPU stall warnings (Waiman Long) [1941211] - sched/core: Add function to sample state of locked-down task (Waiman Long) [1941211] - rcu-tasks: Add stall warnings for RCU Tasks Trace (Waiman Long) [1941211] - rcutorture: Add torture tests for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Add an RCU Tasks Trace to simplify protection of tracing hooks (Waiman Long) [1941211] - rcutorture: Add a test for synchronize_rcu_mult() (Waiman Long) [1941211] - rcu: Reinstate synchronize_rcu_mult() (Waiman Long) [1941211] - rcu-tasks: Code movement to allow more Tasks RCU variants (Waiman Long) [1941211] - rcu: Fix the (t=0 jiffies) false positive (Waiman Long) [1941211] - rcu-tasks: Further refactor RCU-tasks to allow adding more variants (Waiman Long) [1941211] - rcu-tasks: Use unique names for RCU-Tasks kthreads and messages (Waiman Long) [1941211] - rcutorture: Add torture tests for RCU Tasks Rude (Waiman Long) [1941211] - rcu-tasks: Add an RCU-tasks rude variant (Waiman Long) [1941211] - rcu-tasks: Refactor RCU-tasks to allow variants to be added (Waiman Long) [1941211] - rcu-tasks: Create struct to hold state information (Waiman Long) [1941211] - rcu-tasks: Move Tasks RCU to its own file (Waiman Long) [1941211] - locktorture.c: Fix if-statement empty body warnings (Waiman Long) [1941211] - rcu: Expedite first two FQS scans under callback-overload conditions (Waiman Long) [1941211] - rcu: Mark rcu_state.gp_seq to detect concurrent writes (Waiman Long) [1941211] - rcutorture: Mark data-race potential for rcu_barrier() test statistics (Waiman Long) [1941211] - rcu: Don't use negative nesting depth in __rcu_read_unlock() (Waiman Long) [1941211] - rcu: Remove unused ->rcu_read_unlock_special.b.deferred_qs field (Waiman Long) [1941211] - rcu: Don't set nesting depth negative in rcu_preempt_deferred_qs() (Waiman Long) [1941211] - rcu: Make rcu_read_unlock_special() safe for rq/pi locks (Waiman Long) [1941211] - rcutorture: Make kvm-recheck-rcu.sh handle truncated lines (Waiman Long) [1941211] - rcu: Make RCU IRQ enter/exit functions rely on in_nmi() (Waiman Long) [1941211] - rcu/tree: Mark the idle relevant functions noinstr (Waiman Long) [1941211] - rcu: Add comments marking transitions between RCU watching and not (Waiman Long) [1941211] - rcu: Update __call_rcu() comments (Waiman Long) [1941211] - rcu: Mark rcu_state.ncpus to detect concurrent writes (Waiman Long) [1941211] - rcu: Use data_race() for RCU CPU stall-warning prints (Waiman Long) [1941211] - rcutorture: Manually clean up after rcu_barrier() failure (Waiman Long) [1941211] - rcutorture: Make rcu_torture_barrier_cbs() post from corresponding CPU (Waiman Long) [1941211] - rcu: Make nocb_gp_wait() double-check unexpected-callback warning (Waiman Long) [1941211] - rcu: Tighten rcu_lockdep_assert_cblist_protected() check (Waiman Long) [1941211] - rcu: Optimize and protect atomic_cmpxchg() loop (Waiman Long) [1941211] - rcu/nocb: Add missing annotation for rcu_nocb_bypass_unlock() (Waiman Long) [1941211] - rcu: Don't flag non-starting GPs before GP kthread is running (Waiman Long) [1941211] - rcu: Fix rcu_barrier_callback() race condition (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_state ->gp_start (Waiman Long) [1941211] - rcu: Add missing annotation for rcu_nocb_bypass_lock() (Waiman Long) [1941211] - rcu: Add missing annotation for exit_tasks_rcu_finish() (Waiman Long) [1941211] - rcu: Add missing annotation for exit_tasks_rcu_start() (Waiman Long) [1941211] - rculist: Add brackets around cond argument in __list_check_rcu macro (Waiman Long) [1941211] - rcu: Remove dead code from rcu_segcblist_insert_pend_cbs() (Waiman Long) [1941211] - rcutorture: Annotation lockless accesses to rcu_torture_current (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_data ->gpwrap (Waiman Long) [1941211] - rcu-tasks: *_ONCE() for rcu_tasks_cbs_head (Waiman Long) [1941211] - rcu: Add *_ONCE() for grace-period progress indicators (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->boost_tasks (Waiman Long) [1941211] - srcu: Add data_race() to ->srcu_lock_count and ->srcu_unlock_count arrays (Waiman Long) [1941211] - rcutorture: Add READ_ONCE() to rcu_torture_count and rcu_torture_batch (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_segcblist ->tails[] (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->qsmaskinitnext (Waiman Long) [1941211] - rcu: Add READ_ONCE and data_race() to rcu_node ->boost_tasks (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_state ->gp_req_activity (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_node ->gp_seq (Waiman Long) [1941211] - rcu: Add *_ONCE() and data_race() to rcu_node ->exp_tasks plus locking (Waiman Long) [1941211] - rcu: Add *_ONCE() to rcu_node ->boost_kthread_status (Waiman Long) [1941211] - rcu: Add WRITE_ONCE to rcu_node ->exp_seq_rq store (Waiman Long) [1941211] - srcu: Hold srcu_struct ->lock when updating ->srcu_gp_seq (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->qsmask update (Waiman Long) [1941211] - rcu: Provide debug symbols and line numbers in KCSAN runs (Waiman Long) [1941211] - rcu: Fix exp_funnel_lock()/rcu_exp_wait_wake() datarace (Waiman Long) [1941211] - srcu: Fix process_srcu()/srcu_batches_completed() datarace (Waiman Long) [1941211] - srcu: Fix __call_srcu()/srcu_get_delay() datarace (Waiman Long) [1941211] - srcu: Fix __call_srcu()/process_srcu() datarace (Waiman Long) [1941211] - rcutorture: Fix stray access to rcu_fwd_cb_nodelay (Waiman Long) [1941211] - rcutorture: Fix rcu_torture_one_read()/rcu_torture_writer() data race (Waiman Long) [1941211] - rcutorture: Make kvm-find-errors.sh abort on bad directory (Waiman Long) [1941211] - rcutorture: Summarize summary of build and run results (Waiman Long) [1941211] - rcutorture: Add 100-CPU configuration (Waiman Long) [1941211] - rcu: Warn on for_each_leaf_node_cpu_mask() from non-leaf (Waiman Long) [1941211] - rcu: Fix spelling mistake "leval" -> "level" (Waiman Long) [1941211] - torture: Allow disabling of boottime CPU-hotplug torture operations (Waiman Long) [1941211] - rcutorture: Suppress boottime bad-sequence warnings (Waiman Long) [1941211] - rcutorture: Allow boottime stall warnings to be suppressed (Waiman Long) [1941211] - torture: Forgive -EBUSY from boottime CPU-hotplug operations (Waiman Long) [1941211] - rcutorture: Refrain from callback flooding during boot (Waiman Long) [1941211] - torture: Make results-directory date format completion-friendly (Waiman Long) [1941211] - rcutorture: Suppress forward-progress complaints during early boot (Waiman Long) [1941211] - timer: Use hlist_unhashed_lockless() in timer_pending() (Waiman Long) [1941211] - rcu: React to callback overload by boosting RCU readers (Waiman Long) [1941211] - rcu: React to callback overload by aggressively seeking quiescent states (Waiman Long) [1941211] - rcu: Add and update docbook header comments in list.h (Waiman Long) [1941211] - list: Add hlist_unhashed_lockless() (Waiman Long) [1941211] - list: Don't use WRITE_ONCE() in hlist_add_behind() (Waiman Long) [1941211] - kcsan: Introduce ASSERT_EXCLUSIVE_BITS(var, mask) (Waiman Long) [1941211] - kcsan: Add kcsan_set_access_mask() support (Waiman Long) [1941211] - kcsan: Introduce kcsan_value_change type (Waiman Long) [1941211] - kcsan: Move interfaces that affects checks to kcsan-checks.h (Waiman Long) [1941211] - kcsan: Fix misreporting if concurrent races on same address (Waiman Long) [1941211] - kcsan: Expose core configuration parameters as module params (Waiman Long) [1941211] - kcsan: Add test to generate conflicts via debugfs (Waiman Long) [1941211] - kcsan: Introduce ASSERT_EXCLUSIVE_*() macros (Waiman Long) [1941211] - kcsan: Introduce KCSAN_ACCESS_ASSERT access type (Waiman Long) [1941211] - kcsan: Fix 0-sized checks (Waiman Long) [1941211] - kcsan: Clean up the main KCSAN Kconfig option (Waiman Long) [1941211] - kcsan: Clarify Kconfig option KCSAN_IGNORE_ATOMICS (Waiman Long) [1941211] - kcsan: Add option to assume plain aligned writes up to word size are atomic (Waiman Long) [1941211] - kcsan: Add docbook header for data_race() (Waiman Long) [1941211] - kcsan: Address missing case with KCSAN_REPORT_VALUE_CHANGE_ONLY (Waiman Long) [1941211] - include/linux: Add instrumented.h infrastructure (Waiman Long) [1941211] - kcsan: Make KCSAN compatible with lockdep (Waiman Long) [1941211] - kcsan: Rate-limit reporting per data races (Waiman Long) [1941211] - kcsan: Show full access type in report (Waiman Long) [1941211] - kcsan: Prefer __always_inline for fast-path (Waiman Long) [1941211] - kcsan: Improve various small stylistic details (Waiman Long) [1941211] - x86, kcsan: Enable KCSAN for x86 (Waiman Long) [1941211] - build, kcsan: Add KCSAN build exceptions (Waiman Long) [1941211] - x86/uaccess, kcov: Disable stack protector (Waiman Long) [1941211] - doc: Convert to rcubarrier.txt to ReST (Waiman Long) [1941211] - doc: Convert to rcu_dereference.txt to rcu_dereference.rst (Waiman Long) [1941211] - doc: Convert whatisRCU.txt to .rst (Waiman Long) [1941211] - doc: Converted NMI-RCU.txt to NMI-RCU.rst. (Waiman Long) [1941211] - doc: Convert arrayRCU.txt to arrayRCU.rst (Waiman Long) [1941211] - doc: Update list_for_each_entry_rcu() documentation (Waiman Long) [1941211] - Restore docs "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()" (Waiman Long) [1941211] - Restore docs "treewide: Rename rcu_dereference_raw_notrace() to _check()" (Waiman Long) [1941211] - docs: rcu: Increase toctree to 3 (Waiman Long) [1941211] - docs: rcu: Correct links referring to titles (Waiman Long) [1941211] - docs: rcu: convert some articles from html to ReST (Waiman Long) [1941211] - Revert docs from "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()" (Waiman Long) [1941211] - Documentation: RCU: Add TOC tree hooks (Waiman Long) [1941211] - doc: Describe choice of rcu_dereference() APIs and __rcu usage (Waiman Long) [1941211] - doc: Remove obsolete RCU update functions from RCU documentation (Waiman Long) [1941211] - scsi: ibmvfc: Free channel_setup_buf during device tear down (Steve Best) [1938102] - blk-mq: clearing flush request reference in tags->rqs[] (Ming Lei) [1811030] - blk-mq: clear stale request in tags->rq[] before freeing one request pool (Ming Lei) [1811030] - blk-mq: grab rq->refcount before calling ->fn in blk_mq_tagset_busy_iter (Ming Lei) [1811030] - vsock/vmci: log once the failed queue pair allocation (Stefano Garzarella) [1958248] - VMCI: Stop log spew when qp allocation isn't possible (Stefano Garzarella) [1958248] - vsock/virtio: update credit only if socket is not closed (Stefano Garzarella) [1921694] - powerpc/security: Fix debugfs data leak on 32-bit (Steve Best) [1935661] - powerpc/security: Show powerpc_security_features in debugfs (Steve Best) [1935661] - redhat/configs: Add CONFIG_SYSTEM_REVOCATION_KEYS and CONFIG_SYSTEM_REVOCATION_LIST (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: add 'x509_revocation_list' to gitignore (Vladis Dronov) [1893793] {CVE-2020-26541} - integrity: Load mokx variables into the blacklist keyring (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Add ability to preload revocation certs (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Move load_system_certificate_list to a common function (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Add EFI_CERT_X509_GUID support for dbx entries (Vladis Dronov) [1893793] {CVE-2020-26541} - pNFS/flexfiles: Fix array overflow when flexfiles mirroring is enabled (Benjamin Coddington) [1949575] - net/sunrpc: fix useless comparison in proc_do_xprt() (Benjamin Coddington) [1949575] - net/sunrpc: return 0 on attempt to write to "transports" (Benjamin Coddington) [1949575] - NFSD: MKNOD should return NFSERR_BADTYPE instead of NFSERR_INVAL (Benjamin Coddington) [1949575] - NFSD: NFSv3 PATHCONF Reply is improperly formed (Benjamin Coddington) [1949575] - nfsroot: Default mount option should ask for built-in NFS version (Benjamin Coddington) [1949575] - nfsd: remove unneeded break (Benjamin Coddington) [1949575] - net/sunrpc: Fix return value for sysctl sunrpc.transports (Benjamin Coddington) [1949575] - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag (Benjamin Coddington) [1949575] - NFSv4: Fix up RCU annotations for struct nfs_netns_client (Benjamin Coddington) [1949575] - NFS: Only reference user namespace from nfs4idmap struct instead of cred (Benjamin Coddington) [1949575] - NFSD: Hoist status code encoding into XDR encoder functions (Benjamin Coddington) [1949575] - NFSv4: Use the net namespace uniquifier if it is set (Benjamin Coddington) [1949575] - NFSv4: Clean up initialisation of uniquified client id strings (Benjamin Coddington) [1949575] - SUNRPC: Add an xdr_align_data() function (Benjamin Coddington) [1949575] - SUNRPC: Add the ability to expand holes in data pages (Benjamin Coddington) [1949575] - SUNRPC: Split out _shift_data_right_tail() (Benjamin Coddington) [1949575] - SUNRPC: Split out xdr_realign_pages() from xdr_align_pages() (Benjamin Coddington) [1949575] - NFS: Use xdr_page_pos() in NFSv4 decode_getacl() (Benjamin Coddington) [1949575] - SUNRPC: Implement a xdr_page_pos() function (Benjamin Coddington) [1949575] - NFS: fix nfs_path in case of a rename retry (Benjamin Coddington) [1949575] - NFSD: Map nfserr_wrongsec outside of nfsd_dispatch (Benjamin Coddington) [1949575] - NFSD: Remove the RETURN_STATUS() macro (Benjamin Coddington) [1949575] - NFSD: Call NFSv2 encoders on error returns (Benjamin Coddington) [1949575] - NFSD: Fix .pc_release method for NFSv2 (Benjamin Coddington) [1949575] - NFSD: Remove vestigial typedefs (Benjamin Coddington) [1949575] - NFSD: Refactor nfsd_dispatch() error paths (Benjamin Coddington) [1949575] - NFSD: Clean up nfsd_dispatch() variables (Benjamin Coddington) [1949575] - NFSD: Clean up stale comments in nfsd_dispatch() (Benjamin Coddington) [1949575] - NFSD: Clean up switch statement in nfsd_dispatch() (Benjamin Coddington) [1949575] - NFSD: Encoder and decoder functions are always present (Benjamin Coddington) [1949575] - NFSACL: Replace PROC() macro with open code (Benjamin Coddington) [1949575] - lockd: Replace PROC() macro with open code (Benjamin Coddington) [1949575] - NFSD: Add missing NFSv2 .pc_func methods (Benjamin Coddington) [1949575] - fs: nfs: return per memcg count for xattr shrinkers (Benjamin Coddington) [1949575] - nfs: remove incorrect fallthrough label (Benjamin Coddington) [1949575] - nfsd: rq_lease_breaker cleanup (Benjamin Coddington) [1949575] - sunrpc: simplify do_cache_clean (Benjamin Coddington) [1949575] - sunrpc: cache : Replace seq_printf with seq_puts (Benjamin Coddington) [1949575] - silence nfscache allocation warnings with kvzalloc (Benjamin Coddington) [1949575] - nfsd: fix comparison to bool warning (Benjamin Coddington) [1949575] - NFSD: Correct type annotations in user xattr XDR functions (Benjamin Coddington) [1949575] - NFSD: Correct type annotations in user xattr helpers (Benjamin Coddington) [1949575] - SUNRPC/NFSD: Implement xdr_reserve_space_vec() (Benjamin Coddington) [1949575] - nfsd: rename delegation related tracepoints to make them less confusing (Benjamin Coddington) [1949575] - nfsd: Remove unnecessary assignment in nfs4xdr.c (Benjamin Coddington) [1949575] - net: sunrpc: delete repeated words (Benjamin Coddington) [1949575] - nfsd: Fix typo in comment (Benjamin Coddington) [1949575] - nfsd: give up callbacks on revoked delegations (Benjamin Coddington) [1949575] - nfs: fix spellint typo in pnfs.c (Benjamin Coddington) [1949575] - fs,nfs: lift compat nfs4 mount data handling into the nfs code (Benjamin Coddington) [1949575] - nfs: simplify nfs4_parse_monolithic (Benjamin Coddington) [1949575] - xprtrdma: drop double zeroing (Benjamin Coddington) [1949575] - NFSv4.2: xattr cache: remove unused cache struct field (Benjamin Coddington) [1949575] - nfs: Convert to use the preferred fallthrough macro (Benjamin Coddington) [1949575] - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source (Benjamin Coddington) [1949575] - Replace HTTP links with HTTPS ones: NFS, SUNRPC, and LOCKD clients (Benjamin Coddington) [1949575] - sunrpc: fix duplicated word in (Benjamin Coddington) [1949575] - SUNRPC: Remove remaining dprintks from sched.c (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call sites in RPC queuing functions (Benjamin Coddington) [1949575] - SUNRPC: Clean up RPC scheduler tracepoints (Benjamin Coddington) [1949575] - SUNRPC: Replace rpcbind dprintk call sites with tracepoints (Benjamin Coddington) [1949575] - SUNRPC: Remove more dprintks in rpcb_clnt.c (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call sites in rpcbind XDR functions (Benjamin Coddington) [1949575] - SUNRPC: Hoist trace_xprtrdma_op_setport into generic code (Benjamin Coddington) [1949575] - SUNRPC: Remove rpcb_getport_async dprintk call sites (Benjamin Coddington) [1949575] - SUNRPC: Clean up call_bind_status() observability (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call site in call_decode (Benjamin Coddington) [1949575] - SUNRPC: Trace call_refresh events (Benjamin Coddington) [1949575] - SUNRPC: Add trace_rpc_timeout_status() (Benjamin Coddington) [1949575] - SUNRPC: Mitigate cond_resched() in xprt_transmit() (Benjamin Coddington) [1949575] - SUNRPC: Replace connect dprintk call sites with a tracepoint (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call site in call_start() (Benjamin Coddington) [1949575] - SUNRPC: Remove the dprint_status() macro (Benjamin Coddington) [1949575] - SUNRPC: Replace dprintk() call site in xs_nospace() (Benjamin Coddington) [1949575] - SUNRPC: Replace dprintk() call site in xprt_prepare_transmit (Benjamin Coddington) [1949575] - SUNRPC: Update debugging instrumentation in xprt_do_reserve() (Benjamin Coddington) [1949575] - SUNRPC: Remove debugging instrumentation from xprt_release (Benjamin Coddington) [1949575] - SUNRPC: Hoist trace_xprtrdma_op_allocate into generic code (Benjamin Coddington) [1949575] - SUNRPC: Remove trace_xprt_complete_rqst() (Benjamin Coddington) [1949575] - SUNRPC dont update timeout value on connection reset (Benjamin Coddington) [1949575] - nfs4: strengthen error check to avoid unexpected result (Benjamin Coddington) [1949575] - NFS: remove redundant pointer clnt (Benjamin Coddington) [1949575] - sunrpc: Avoid comma separated statements (Benjamin Coddington) [1949575]- Revert "sctp: Fix SHUTDOWN CTSN Ack in the peer restart case" (Xin Long) [1953839] - sctp: do asoc update earlier in sctp_sf_do_dupcook_b (Xin Long) [1953839] - sctp: do asoc update earlier in sctp_sf_do_dupcook_a (Xin Long) [1953839] - NFSv4: Fixes for nfs4_bitmask_adjust() (Steve Dickson) [1926961] - powerpc/paravirt: Use is_kvm_guest() in vcpu_is_preempted() (Desnes A. Nunes do Rosario) [1918720] - powerpc: Reintroduce is_kvm_guest() as a fast-path check (Desnes A. Nunes do Rosario) [1918720] - powerpc: Rename is_kvm_guest() to check_kvm_guest() (Desnes A. Nunes do Rosario) [1918720] - powerpc: Refactor is_kvm_guest() declaration to new header (Desnes A. Nunes do Rosario) [1918720] - powerpc/pseries: Move some PAPR paravirt functions to their own file (Desnes A. Nunes do Rosario) [1918720] - powerpc/shared: Use static key to detect shared processor (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Fix oops in __spin_yield() on bare metal (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Rename SPLPAR-only spinlocks (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Refactor SHARED_PROCESSOR (Desnes A. Nunes do Rosario) [1918720] - Revert "ACPICA: Interpreter: fix memory leak by using existing buffer" (Mark Langsdorf) [1935928] - x86/efi: Remove EFI PGD build time checks (Mark Langsdorf) [1935928] - ACPI: scan: Fix battery devices sometimes never binding (Mark Langsdorf) [1935928] - ACPI/IORT: Do not blindly trust DMA masks from firmware (Mark Langsdorf) [1935928] - ACPI: thermal: Do not call acpi_thermal_check() directly (Mark Langsdorf) [1935928] - ACPI: sysfs: Prefer "compatible" modalias (Mark Langsdorf) [1935928] - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error (Mark Langsdorf) [1935928] - ACPI: scan: Harden acpi_device_add() against device ID overflows (Mark Langsdorf) [1935928] - ACPI: Update Kconfig help text for items that are no longer modular (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Drop unused local variables and related code (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Move x86-specific code to the x86 directory (Mark Langsdorf) [1935928] - ACPI: scan: Add Intel Baytrail Mailbox Device to acpi_ignore_dep_ids (Mark Langsdorf) [1935928] - ACPI: scan: Avoid unnecessary second pass in acpi_bus_scan() (Mark Langsdorf) [1935928] - ACPI: scan: Defer enumeration of devices with _DEP lists (Mark Langsdorf) [1935928] - ACPI: scan: Evaluate _DEP before adding the device (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Add AMD support to handle _DSM (Mark Langsdorf) [1935928] - ACPI: processor: fix NONE coordination for domain mapping failure (Mark Langsdorf) [1935928] - cpufreq: Fix cpufreq_online() return value on errors (Mark Langsdorf) [1935928] - opp: of: Allow empty opp-table with opp-shared (Mark Langsdorf) [1935928] - dt-bindings: opp: Allow empty OPP tables (Mark Langsdorf) [1935928] - ACPI: Drop acpi_dev_irqresource_disabled() (Mark Langsdorf) [1935928] - resource: Add irqresource_disabled() (Mark Langsdorf) [1935928] - genirq/affinity: Add irq_update_affinity_desc() (Mark Langsdorf) [1935928] - driver core: Add fwnode_init() (Mark Langsdorf) [1935928] - ACPI: scan: Fix up _DEP-related terminology with supplier/consumer (Mark Langsdorf) [1935928] - ACPI: scan: Drop INT3396 from acpi_ignore_dep_ids[] (Mark Langsdorf) [1935928] - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources walks" (Mark Langsdorf) [1935928] - ACPI: scan: Add PNP0D80 to the _DEP exceptions list (Mark Langsdorf) [1935928] - PM: ACPI: Refresh wakeup device power configuration every time (Mark Langsdorf) [1935928] - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() (Mark Langsdorf) [1935928] - ACPI: scan: Call acpi_get_object_info() from acpi_add_single_object() (Mark Langsdorf) [1935928] - ACPI: scan: Add acpi_info_matches_hids() helper (Mark Langsdorf) [1935928] - ACPICA: Update version to 20201113 (Mark Langsdorf) [1935928] - ACPICA: Interpreter: fix memory leak by using existing buffer (Mark Langsdorf) [1935928] - ACPICA: Add function trace macros to improve debugging (Mark Langsdorf) [1935928] - ACPICA: Also handle "orphan" _REG methods for GPIO OpRegions (Mark Langsdorf) [1935928] - ACPICA: Remove extreaneous "the" in comments (Mark Langsdorf) [1935928] - ACPICA: Add 5 new UUIDs to the known UUID table (Mark Langsdorf) [1935928] - ACPI: processor: Drop duplicate setting of shared_cpu_map (Mark Langsdorf) [1935928] - ACPI: EC: Clean up status flags checks in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Untangle error handling in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Simplify error handling in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Rename acpi_ec_is_gpe_raised() (Mark Langsdorf) [1935928] - ACPI: EC: Fold acpi_ec_clear_gpe() into its caller (Mark Langsdorf) [1935928] - ACPI: EC: Eliminate in_interrupt() usage (Mark Langsdorf) [1935928] - ACPI: acpi_drivers.h: Update the kernel doc (Mark Langsdorf) [1935928] - ACPI: acpi_drivers.h: Remove the leftover dead code (Mark Langsdorf) [1935928] - ACPI: tiny-power-button: Simplify the code using module_acpi_driver() (Mark Langsdorf) [1935928] - ACPI: SBS: Simplify the code using module_acpi_driver() (Mark Langsdorf) [1935928] - ACPI: SBS: Simplify the driver init code (Mark Langsdorf) [1935928] - ACPI: debug: Remove the not used function (Mark Langsdorf) [1935928] - ACPI: processor: Remove the duplicated ACPI_PROCESSOR_CLASS macro (Mark Langsdorf) [1935928] - ACPI: watchdog: Replace open coded variant of resource_union() (Mark Langsdorf) [1935928] - PCI/ACPI: Replace open coded variant of resource_union() (Mark Langsdorf) [1935928] - resource: Introduce resource_union() for overlapping resources (Mark Langsdorf) [1935928] - resource: Group resource_overlaps() with other inline helpers (Mark Langsdorf) [1935928] - resource: Simplify region_intersects() by reducing conditionals (Mark Langsdorf) [1935928] - ACPI, APEI: make apei_resources_all static (Mark Langsdorf) [1935928] - mm/mmu_notifier: allocate mmu_notifier_rh in __mmu_notifier_register() (Jeremy Cline) [1909072]- Amends commit ea6244cc248b to include a version string in module info. (Ken Cox) [1955726] - i40e: use minimal admin queue for kdump (Stefan Assmann) [1834962] - i40e: use minimal Rx and Tx ring buffers for kdump (Stefan Assmann) [1834962] - i40e: use minimal Tx and Rx pairs for kdump (Stefan Assmann) [1834962] - net/sched: sch_frag: fix stack OOB read while fragmenting IPv4 packets (Davide Caratti) [1924608] - openvswitch: fix stack OOB read while fragmenting IPv4 packets (Davide Caratti) [1924608] - net/sched: act_ct: fix wild memory access when clearing fragments (Davide Caratti) [1924608] - selinux: fall back to SECURITY_FS_USE_GENFS if no xattr support (Ondrej Mosnacek) [1934093 1915825] - selinux: mark some global variables __ro_after_init (Ondrej Mosnacek) [1934093] - selinux: make selinuxfs_mount static (Ondrej Mosnacek) [1934093] - selinux: drop the unnecessary aurule_callback variable (Ondrej Mosnacek) [1934093] - selinux: remove unused global variables (Ondrej Mosnacek) [1934093] - selinux: fix inconsistency between inode_getxattr and inode_listsecurity (Ondrej Mosnacek) [1934093] - selinux: Fix fall-through warnings for Clang (Ondrej Mosnacek) [1934093] - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling (Ondrej Mosnacek) [1934093] - selinux: allow dontauditx and auditallowx rules to take effect without allowx (Ondrej Mosnacek) [1934093] - selinux: fix error initialization in inode_doinit_with_dentry() (Ondrej Mosnacek) [1934093] - selinux: Fix error return code in sel_ib_pkey_sid_slow() (Ondrej Mosnacek) [1934093] - selinux: access policycaps with READ_ONCE/WRITE_ONCE (Ondrej Mosnacek) [1934093] - selinux: delete repeated words in comments (Ondrej Mosnacek) [1934093] - selinux: add basic filtering for audit trace events (Ondrej Mosnacek) [1934093 1954024] - selinux: add tracepoint on audited events (Ondrej Mosnacek) [1934093 1954024] - selinux: permit removing security.selinux xattr before policy load (Ondrej Mosnacek) [1934093] - exec: Always set cap_ambient in cap_bprm_set_creds (Ondrej Mosnacek) [1934093] - security: remove duplicated include from security.h (Ondrej Mosnacek) [1934093] - security/commoncap: Use xattr security prefix len (Ondrej Mosnacek) [1934093] - LSM: switch to blocking policy update notifiers (Ondrej Mosnacek) [1934093] - security: Make capability_hooks static (Ondrej Mosnacek) [1934093] - securityfs: fix use-after-free on symlink traversal (Ondrej Mosnacek) [1934093] - LSM: Check for NULL cred-security on free (Ondrej Mosnacek) [1934093] - security: check for kstrdup() failure in lsm_append() (Ondrej Mosnacek) [1934093] - scsi: mpt3sas: Block PCI config access from userspace during reset (Tomas Henzl) [1954555] - scsi: mpt3sas: Fix endianness for ActiveCablePowerRequirement (Tomas Henzl) [1954555] - scsi: mpt3sas: Fix error return code of mpt3sas_base_attach() (Tomas Henzl) [1954555] - scsi: mpt3sas: Do not use GFP_KERNEL in atomic context (Tomas Henzl) [1954555] - scsi: mpt3sas: Only one vSES is present even when IOC has multi vSES (Tomas Henzl) [1953421] - scsi: bnx2i: Make bnx2i_process_iscsi_error() simpler and more robust (Nilesh Javali) [1921612] - scsi: bnx2i: Fix bnx2i_set_ccell_info()'s name in description (Nilesh Javali) [1921612] - scsi: bnx2i: Requires MMU (Nilesh Javali) [1921612] - scsi: bnx2i: Remove unnecessary mutex_init() (Nilesh Javali) [1921612] - scsi: bnx2i: Add parameter description and rename another (Nilesh Javali) [1921612] - scsi: bnx2i: Add, remove and edit some function parameter descriptions (Nilesh Javali) [1921612] - scsi: bnx2i: Fix a whole host of kerneldoc issues (Nilesh Javali) [1921612] - scsi: bnx2i: Add missing descriptions for 'attr' parameter (Nilesh Javali) [1921612] - scsi: bnx2i: Fix parameter misnaming in function header (Nilesh Javali) [1921612] - mfd: intel-lpss: Add Intel Alder Lake PCH-P PCI IDs (Steve Best) [1929489] - lib: list_sort.c: add a blank line to avoid kernel-doc warnings (Rafael Aquini) [1900774] - lib/list_sort: fix kerneldoc build error (Rafael Aquini) [1900774] - lib/list_sort: optimize number of calls to comparison function (Rafael Aquini) [1900774] - lib/list_sort: simplify and remove MAX_LIST_LENGTH_BITS (Rafael Aquini) [1900774] - perf bench numa: Fix the condition checks for max number of NUMA nodes (Steve Best) [1936333] - powerpc/perf: Record counter overflow always if SAMPLE_IP is unset (Gustavo Walbon) [1921684] - perf powerpc: Support exposing Performance Monitor Counter SPRs as part of extended regs (Gustavo Walbon) [1921684] - powerpc/perf: Expose Performance Monitor Counter SPR's as part of extended regs (Gustavo Walbon) [1921684] - powerpc/perf: Include PMCs as part of per-cpu cpuhw_events struct (Gustavo Walbon) [1921684] - powerpc/perf: Adds support for programming of Thresholding in P10 (Gustavo Walbon) [1921684] - x86/entry/64: Deduplicate multiple IBRS macros in paranoid_entry (Waiman Long) [1924364] - x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb (Waiman Long) [1924364] - x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always-on STIBP (Waiman Long) [1924364] - x86/bugs/multihit: Fix mitigation reporting when VMX is not in use (Waiman Long) [1924364] - x86/speculation: Merge one test in spectre_v2_user_select_mitigation() (Waiman Long) [1924364] - x86/bugs: Move enum taa_mitigations to bugs.c (Waiman Long) [1924364] - mm/memcg: set memcg when splitting page (Waiman Long) [1937825] - mm/memcg: rename mem_cgroup_split_huge_fixup to split_page_memcg and add nr_pages argument (Waiman Long) [1937825] - mm, tracing: Fix kmem_cache_free trace event to not print stale pointers (Waiman Long) [1937825] - mm: memcontrol: fix get_active_memcg return value (Waiman Long) [1937825] - fs: buffer: use raw page_memcg() on locked page (Waiman Long) [1937825] - mm/list_lru.c: remove kvfree_rcu_local() (Waiman Long) [1937825] - mm: memcontrol: replace the loop with a list_for_each_entry() (Waiman Long) [1937825] - mm/memcontrol: remove redundant NULL check (Waiman Long) [1937825] - mm: page_counter: re-layout structure to reduce false sharing (Waiman Long) [1937825] - mm: kmem: make __memcg_kmem_(un)charge static (Waiman Long) [1937825] - mm: memcg: add swapcache stat for memcg v2 (Waiman Long) [1937825] - mm/memcg: remove rcu locking for lock_page_lruvec function series (Waiman Long) [1937825] - mm/memcg: revise the using condition of lock_page_lruvec function series (Waiman Long) [1937825] - mm: memcontrol: make the slab calculation consistent (Waiman Long) [1937825] - mm: memcontrol: convert NR_FILE_PMDMAPPED account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_SHMEM_PMDMAPPED account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_SHMEM_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_FILE_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_ANON_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: optimize per-lruvec stats counter memory usage (Waiman Long) [1937825] - mm: memcg/slab: pre-allocate obj_cgroups for slab caches with SLAB_ACCOUNT (Waiman Long) [1937825] - mm/slub: minor coding style tweaks (Waiman Long) [1937825] - mm, slub: remove slub_memcg_sysfs boot param and CONFIG_SLUB_MEMCG_SYSFS_ON (Waiman Long) [1937825] - mm, slub: splice cpu and page freelists in deactivate_slab() (Waiman Long) [1937825] - mm, slab, slub: stop taking cpu hotplug lock (Waiman Long) [1937825] - mm, slab, slub: stop taking memory hotplug lock (Waiman Long) [1937825] - mm, slub: stop freeing kmem_cache_node structures on node offline (Waiman Long) [1937825] - mm/slub: disable user tracing for kmemleak caches by default (Waiman Long) [1937825] - mm/slab: minor coding style tweaks (Waiman Long) [1937825] - mm/sl?b.c: remove ctor argument from kmem_cache_flags (Waiman Long) [1937825] - mm, tracing: record slab name for kmem_cache_free() (Waiman Long) [1937825] - mm: fix numa stats for thp migration (Waiman Long) [1937825] - mm: memcg: fix memcg file_dirty numa stat (Waiman Long) [1937825] - mm/memcontrol: fix warning in mem_cgroup_page_lruvec() (Waiman Long) [1937825] - mm: slub: call account_slab_page() after slab page initialization (Waiman Long) [1937825] - mm/hugetlb: fix deadlock in hugetlb_cow error path (Waiman Long) [1937825] - mm/memcontrol:rewrite mem_cgroup_page_lruvec() (Waiman Long) [1937825] - mm/memcg: remove unused definitions (Waiman Long) [1937825] - mm/memcg: warning on !memcg after readahead page charged (Waiman Long) [1937825] - mm/memcg: bail early from swap accounting if memcg disabled (Waiman Long) [1937825] - mm/lru: revise the comments of lru_lock (Waiman Long) [1937825] - mm/lru: introduce relock_page_lruvec() (Waiman Long) [1937825] - mm/lru: replace pgdat lru_lock with lruvec lock (Waiman Long) [1937825] - mm/lru: move lock into lru_note_cost (Waiman Long) [1937825] - mm/swap.c: serialize memcg changes in pagevec_lru_move_fn (Waiman Long) [1937825] - mm/compaction: do page isolation first in compaction (Waiman Long) [1937825] - mm/lru: introduce TestClearPageLRU() (Waiman Long) [1937825] - mm/mlock: remove __munlock_isolate_lru_page() (Waiman Long) [1937825] - mm/mlock: remove lru_lock on TestClearPageMlocked (Waiman Long) [1937825] - mm/vmscan: remove lruvec reget in move_pages_to_lru (Waiman Long) [1937825] - mm/swap.c: fold vm event PGROTATED into pagevec_move_tail_fn (Waiman Long) [1937825] - mm/memcg: add debug checking in lock_page_memcg (Waiman Long) [1937825] - mm: page_idle_get_page() does not need lru_lock (Waiman Long) [1937825] - mm/rmap: stop store reordering issue on page->mapping (Waiman Long) [1937825] - mm/vmscan: remove unnecessary lruvec adding (Waiman Long) [1937825] - mm/thp: narrow lru locking (Waiman Long) [1937825] - mm/thp: simplify lru_add_page_tail() (Waiman Long) [1937825] - mm/thp: use head for head page in lru_add_page_tail() (Waiman Long) [1937825] - mm/thp: move lru_add_page_tail() to huge_memory.c (Waiman Long) [1937825] - mm: slub: convert sysfs sprintf family to sysfs_emit/sysfs_emit_at (Waiman Long) [1937825] - mm: truncate_complete_page() does not exist any more (Waiman Long) [1937825] - mm/vmscan: drop unneeded assignment in kswapd() (Waiman Long) [1937825] - mm: memcontrol: account pagetables per node (Waiman Long) [1937825] - mm: move lruvec stats update functions to vmstat.h (Waiman Long) [1937825] - mm/memcg: remove incorrect comment (Waiman Long) [1937825] - mm: memcontrol: sssign boolean values to a bool variable (Waiman Long) [1937825] - mm: memcg/slab: rename *_lruvec_slab_state to *_lruvec_kmem_state (Waiman Long) [1937825] - mm: memcg: remove obsolete memcg_has_children() (Waiman Long) [1937825] - mm/page_counter: use page_counter_read in page_counter_set_max (Waiman Long) [1937825] - cgroup: remove obsoleted broken_hierarchy and warned_broken_hierarchy (Waiman Long) [1937825] - docs: cgroup-v1: reflect the deprecation of the non-hierarchical mode (Waiman Long) [1937825] - mm: memcg: deprecate the non-hierarchical mode (Waiman Long) [1937825] - mm: memcg: fix obsolete code comments (Waiman Long) [1937825] - mm/memcg: update page struct member in comments (Waiman Long) [1937825] - mm/rmap: always do TTU_IGNORE_ACCESS (Waiman Long) [1937825] - mm: memcontrol: eliminate redundant check in __mem_cgroup_insert_exceeded() (Waiman Long) [1937825] - mm: memcontrol: remove unused mod_memcg_obj_state() (Waiman Long) [1937825] - mm: memcontrol: add file_thp, shmem_thp to memory.stat (Waiman Long) [1937825] - mm/gup: combine put_compound_head() and unpin_user_page() (Waiman Long) [1937825] - mm: Convert page kmemcg type to a page memcg flag (Waiman Long) [1937825] - mm: Introduce page memcg flags (Waiman Long) [1937825] - mm: memcontrol/slab: Use helpers to access slab page's memcg_data (Waiman Long) [1937825] - mm: memcontrol: Use helpers to read page's memcg data (Waiman Long) [1937825] - hugetlbfs: fix anon huge page migration race (Waiman Long) [1937825] - mm: memcontrol: fix missing wakeup polling thread (Waiman Long) [1937825] - mm/gup: use unpin_user_pages() in __gup_longterm_locked() (Waiman Long) [1937825] - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit (Waiman Long) [1937825] - mm/compaction: stop isolation if too many pages are isolated and we have pages to migrate (Waiman Long) [1937825] - mm/compaction: count pages and stop correctly during page isolation (Waiman Long) [1937825] - mm: kmem: enable kernel memcg accounting from interrupt contexts (Waiman Long) [1937825] - mm: kmem: prepare remote memcg charging infra for interrupt contexts (Waiman Long) [1937825] - mm: kmem: remove redundant checks from get_obj_cgroup_from_current() (Waiman Long) [1937825] - mm, memcg: rework remote charging API to support nesting (Waiman Long) [1937825] - mm: use self-explanatory macros rather than "2" (Waiman Long) [1937825] - mm/vmscan: allow arbitrary sized pages to be paged out (Waiman Long) [1937825] - mm/rmap: fix assumptions of THP size (Waiman Long) [1937825] - mm/huge_memory: fix can_split_huge_page assumption of THP size (Waiman Long) [1937825] - mm/huge_memory: fix page_trans_huge_mapcount assumption of THP size (Waiman Long) [1937825] - mm/huge_memory: fix split assumption of page size (Waiman Long) [1937825] - mm/huge_memory: fix total_mapcount assumption of page size (Waiman Long) [1937825] - mm/page_owner: change split_page_owner to take a count (Waiman Long) [1937825] - mm/memory: remove page fault assumption of compound page size (Waiman Long) [1937825] - mm/filemap: fix page cache removal for arbitrary sized THPs (Waiman Long) [1937825] - mm/vmscan: fix comments for isolate_lru_page() (Waiman Long) [1937825] - mm/vmscan: fix infinite loop in drop_slab_node (Waiman Long) [1937825] - mm: move call to compound_head() in release_pages() (Waiman Long) [1937825] - mm: account PMD tables like PTE tables (Waiman Long) [1937825] - mm/memcg: fix device private memcg accounting (Waiman Long) [1937825] - mm: memcontrol: add the missing numa_stat interface for cgroup v2 (Waiman Long) [1937825] - mm: remove activate_page() from unuse_pte() (Waiman Long) [1937825] - bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag (Waiman Long) [1937825] - mm/thp: fix __split_huge_pmd_locked() for migration PMD (Waiman Long) [1937825] - mm: fix check_move_unevictable_pages() on THP (Waiman Long) [1937825] - mm: migration of hugetlbfs page skip memcg (Waiman Long) [1937825] - mm: and drivers core: Convert hugetlb_report_node_meminfo to sysfs_emit (Waiman Long) [1937825] - drivers core: Miscellaneous changes for sysfs_emit (Waiman Long) [1937825] - drivers core: Reindent a couple uses around sysfs_emit (Waiman Long) [1937825] - drivers core: Remove strcat uses around sysfs_emit and neaten (Waiman Long) [1937825] - drivers core: Use sysfs_emit and sysfs_emit_at for show(device *...) functions (Waiman Long) [1937825] - sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output (Waiman Long) [1937825] - mm: fix pin vs. gup mismatch with gate pages (Waiman Long) [1937825] - mm/gup: use a standard migration target allocation callback (Waiman Long) [1937825] - mm/hugetlb: make hugetlb migration callback CMA aware (Waiman Long) [1937825] - mm/gup: restrict CMA region by using allocation scope API (Waiman Long) [1937825] - mm/page_alloc: remove a wrapper for alloc_migration_target() (Waiman Long) [1937825] - mm/mempolicy: use a standard migration target allocation callback (Waiman Long) [1937825] - mm/migrate: introduce a standard migration target allocation function (Waiman Long) [1937825] - mm/migrate: clear __GFP_RECLAIM to make the migration callback consistent with regular THP allocations (Waiman Long) [1937825] - mm/hugetlb: unify migration callbacks (Waiman Long) [1937825] - mm/migrate: move migration helper from .h to .c (Waiman Long) [1937825] - mm/page_isolation: prefer the node of the source page (Waiman Long) [1937825] - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem (Waiman Long) [1937825] - mm, oom: show process exiting information in __oom_kill_process() (Waiman Long) [1937825] - doc, mm: clarify /proc//oom_score value range (Waiman Long) [1937825] - doc, mm: sync up oom_score_adj documentation (Waiman Long) [1937825] - mm, oom: make the calculation of oom badness more accurate (Waiman Long) [1937825] - mm: vmscan: consistent update to pgrefill (Waiman Long) [1937825] - mm/vmscan.c: fix typo (Waiman Long) [1937825] - mm: memcontrol: account kernel stack per node (Waiman Long) [1937825] - mm/hugetlb.c: fix pages per hugetlb calculation (Waiman Long) [1937825] - doc: THP CoW fault no longer allocate THP (Waiman Long) [1937825] - driver core: platform: expose numa_node to users in sysfs (Waiman Long) [1937825] - nilfs2: fix null pointer dereference at nilfs_segctor_do_construct() (Waiman Long) [1937825] - mm, memcg: fix some typos in memcontrol.c (Waiman Long) [1937825] - mm/vmsan: fix some typos in comment (Waiman Long) [1937825] - mm: thp: don't need to drain lru cache when splitting and mlocking THP (Waiman Long) [1937825] - mm/vmscan: update the comment of should_continue_reclaim() (Waiman Long) [1937825] - mm/vmscan.c: change prototype for shrink_page_list (Waiman Long) [1937825] - mm/vmscan: count layzfree pages and fix nr_isolated_* mismatch (Waiman Long) [1937825] - mm/vmscan.c: use update_lru_size() in update_lru_sizes() (Waiman Long) [1937825] - mm: simplify calling a compound page destructor (Waiman Long) [1937825] - mm/page_alloc: integrate classzone_idx and high_zoneidx (Waiman Long) [1937825] - mm/page_alloc: use ac->high_zoneidx for classzone_idx (Waiman Long) [1937825] - mm/page_alloc.c: extract check_[new|free]_page_bad() common part to page_bad_reason() (Waiman Long) [1937825] - mm/page_alloc.c: rename free_pages_check() to check_free_page() (Waiman Long) [1937825] - mm/page_alloc.c: rename free_pages_check_bad() to check_free_page_bad() (Waiman Long) [1937825] - mm/page_alloc.c: bad_flags is not necessary for bad_page() (Waiman Long) [1937825] - mm/page_alloc.c: bad_[reason|flags] is not necessary when PageHWPoison (Waiman Long) [1937825] - scs: Report SCS usage in bytes rather than number of entries (Waiman Long) [1937825] - scs: Move accounting into alloc/free functions (Waiman Long) [1937825] - mm/vmscan: remove unnecessary argument description of isolate_lru_pages() (Waiman Long) [1937825] - scs: Add support for stack usage debugging (Waiman Long) [1937825] - scs: Add page accounting for shadow call stack allocations (Waiman Long) [1937825] - scs: Add support for Clang's Shadow Call Stack (SCS) (Waiman Long) [1937825] - mm/migrate.c: unify "not queued for migration" handling in do_pages_move() (Waiman Long) [1937825] - mm/migrate.c: check pagelist in move_pages_and_store_status() (Waiman Long) [1937825] - mm/migrate.c: wrap do_move_pages_to_node() and store_status() (Waiman Long) [1937825] - mm/migrate.c: no need to check for i > start in do_pages_move() (Waiman Long) [1937825] - mm/hugetlb: remove unnecessary memory fetch in PageHeadHuge() (Waiman Long) [1937825] - hugetlbfs: Use i_mmap_rwsem to address page fault/truncate race (Waiman Long) [1937825] - hugetlbfs: use i_mmap_rwsem for more pmd sharing synchronization (Waiman Long) [1937825] - mm,thp,compaction,cma: allow THP migration for CMA allocations (Waiman Long) [1937825] - mm,compaction,cma: add alloc_contig flag to compact_control (Waiman Long) [1937825] - mm/vmscan.c: do_try_to_free_pages(): clean code by removing unnecessary assignment (Waiman Long) [1937825] - mm/vmscan.c: make may_enter_fs bool in shrink_page_list() (Waiman Long) [1937825] - mm/vmscan.c: fix data races using kswapd_classzone_idx (Waiman Long) [1937825] - mm/vmscan.c: remove cpu online notification for now (Waiman Long) [1937825] - mm: vmscan: replace open codings to NUMA_NO_NODE (Waiman Long) [1937825] - mm: swap: make page_evictable() inline (Waiman Long) [1937825] - mm/swap.c: not necessary to export __pagevec_lru_add() (Waiman Long) [1937825] - mm/gup: fix omission of check on FOLL_LONGTERM in gup fast path (Waiman Long) [1937825] - mm: dump_page(): additional diagnostics for huge pinned pages (Waiman Long) [1937825] - mm: improve dump_page() for compound pages (Waiman Long) [1937825] - selftests/vm: run_vmtests: invoke gup_benchmark with basic FOLL_PIN coverage (Waiman Long) [1937825] - mm/gup_benchmark: support pin_user_pages() and related calls (Waiman Long) [1937825] - mm/gup: /proc/vmstat: pin_user_pages (FOLL_PIN) reporting (Waiman Long) [1937825] - mm/gup: page->hpage_pinned_refcount: exact pin counts for huge pages (Waiman Long) [1937825] - mm/gup: track FOLL_PIN pages (Waiman Long) [1937825] - mm/gup: pass gup flags to two more routines (Waiman Long) [1937825] - mm: introduce page_ref_sub_return() (Waiman Long) [1937825] - mm/gup: pass a flags arg to __gup_device_* functions (Waiman Long) [1937825] - mm/gup: split get_user_pages_remote() into two routines (Waiman Long) [1937825] - sysfs: fix static inline declaration of sysfs_groups_change_owner() (Waiman Long) [1937825] - drivers/base/cpu: Simplify s*nprintf() usages (Waiman Long) [1937825] - drivers/base/cpu: Use scnprintf() for avoiding potential buffer overflow (Waiman Long) [1937825] - sysfs: add sysfs_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_group{s}_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_link_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_file_change_owner() (Waiman Long) [1937825] - mm/huge_memory.c: reduce critical section protected by split_queue_lock (Waiman Long) [1937825] - mm/huge_memory.c: use head to emphasize the purpose of page (Waiman Long) [1937825] - mm/huge_memory.c: use head to check huge zero page (Waiman Long) [1937825] - mm/gup: move try_get_compound_head() to top, fix minor issues (Waiman Long) [1937825] - userfaultfd: wrap the common dst_vma check into an inlined function (Waiman Long) [1937825] - userfaultfd: remove unnecessary WARN_ON() in __mcopy_atomic_hugetlb() (Waiman Long) [1937825] - userfaultfd: use vma_pagesize for all huge page size calculation (Waiman Long) [1937825] - mm/hugetlb: avoid looping to the same hugepage if !pages and !vmas (Waiman Long) [1937825] - hugetlb: remove unused hstate in hugetlb_fault_mutex_hash() (Waiman Long) [1937825] - hugetlbfs: convert macros to static inline, fix sparse warning (Waiman Long) [1937825] - hugetlbfs: hugetlb_fault_mutex_hash() cleanup (Waiman Long) [1937825] - mm/gup.c: allow CMA migration to propagate errors back to caller (Waiman Long) [1937825] - mm/gup_benchmark: fix MAP_HUGETLB case (Waiman Long) [1937825] - mm/gup_benchmark: add a missing "w" to getopt string (Waiman Long) [1937825] - mm, page_owner: rename flag indicating that page is allocated (Waiman Long) [1937825] - mm, page_owner: decouple freeing stack trace from debug_pagealloc (Waiman Long) [1937825] - mm, page_owner: fix off-by-one error in __set_page_owner_handle() (Waiman Long) [1937825] - mm/filemap.c: don't initiate writeback if mapping has no dirty pages (Waiman Long) [1937825] - mm, page_owner, debug_pagealloc: save and dump freeing stack trace (Waiman Long) [1937825] - mm, page_owner: keep owner info when freeing the page (Waiman Long) [1937825] - mm, page_owner: record page owner for each subpage (Waiman Long) [1937825] - mm: introduce page_size() (Waiman Long) [1937825] - mm, tracing: Print symbol name for call_site in trace events (Waiman Long) [1937825] - mm/gup.c: mark undo_dev_pagemap as __maybe_unused (Waiman Long) [1937825] - mm, memcg: introduce memory.events.local (Waiman Long) [1937825] - memcg, fsnotify: no oom-kill for remote memcg charging (Waiman Long) [1937825] - mm/swap_state.c: simplify total_swapcache_pages() with get_swap_device() (Waiman Long) [1937825] - mm: make !CONFIG_HUGE_PAGE wrappers into static inlines (Waiman Long) [1937825] - include/linux/hugetlb.h: convert to use vm_fault_t (Waiman Long) [1937825] - mm/page_ext.c: fix an imbalance with kmemleak (Waiman Long) [1937825] - mm/hugetlb: add prot_modify_start/commit sequence for hugetlb update (Waiman Long) [1937825] - iov_iter: optimize page_copy_sane() (Waiman Long) [1937825] - mm: remove __hugepage_set_anon_rmap() (Waiman Long) [1937825] - mm: remove pte_lock_deinit() (Waiman Long) [1937825] - mm/debug.c: make "migrate_reason_names[]" const char * (Waiman Long) [1937825] - vmscan: return NODE_RECLAIM_NOSCAN in node_reclaim() when CONFIG_NUMA is n (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: add MAP_HUGETLB option (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: add MAP_SHARED option (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: allow user specified file (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: fix 'write' flag usage (Waiman Long) [1937825] - mm/page_ext.c: constify lookup_page_ext() argument (Waiman Long) [1937825] - mm, page_alloc: actually ignore mempolicies for high priority allocations (Waiman Long) [1937825] - thp: use mm_file_counter to determine update which rss counter (Waiman Long) [1937825]- RDMA/cxgb4: Fix the reported max_recv_sge value (Kamal Heib) [1931850 1918264] - RDMA/qedr: Fix kernel panic when trying to access recv_cq (Kamal Heib) [1931850] - RDMA/addr: Be strict with gid size (Kamal Heib) [1931850] - IB/hfi1: Fix probe time panic when AIP is enabled with a buggy BIOS (Kamal Heib) [1931850 1921704 1953593] - RDMA/rxe: Fix errant WARN_ONCE in rxe_completer() (Kamal Heib) [1931850] - RDMA/rxe: Fix extra deref in rxe_rcv_mcast_pkt() (Kamal Heib) [1931850] - RDMA/rxe: Fix FIXME in rxe_udp_encap_recv() (Kamal Heib) [1931850] - RDMA/rxe: Fix missed IB reference counting in loopback (Kamal Heib) [1931850] - RDMA/uverbs: Fix kernel-doc warning of _uverbs_alloc (Kamal Heib) [1931850] - RDMA/rxe: Fix missing kconfig dependency on CRYPTO (Kamal Heib) [1931850] - RDMA/cm: Fix IRQ restore in ib_send_cm_sidr_rep (Kamal Heib) [1931850] - RDMA/rxe: Remove unused pkt->offset (Kamal Heib) [1931850] - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent (Kamal Heib) [1931850] - RDMA/core: Fix kernel doc warnings for ib_port_immutable_read() (Kamal Heib) [1931850] - RDMA/ipoib: Remove racy Subnet Manager sendonly join checks (Kamal Heib) [1931850] - RDMA/rxe: Cleanup init_send_wqe (Kamal Heib) [1931850] - RDMA/rxe: Fix minor coding style issues (Kamal Heib) [1931850] - RDMA/rxe: Correct skb on loopback path (Kamal Heib) [1931850] - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt (Kamal Heib) [1931850] - RDMA/rxe: Remove useless code in rxe_recv.c (Kamal Heib) [1931850] - RDMA/rxe: Fix coding error in rxe_recv.c (Kamal Heib) [1931850] - RDMA/core: Introduce and use API to read port immutable data (Kamal Heib) [1931850] - RDMA/pvrdma: Replace spin_lock_irqsave with spin_lock in hard IRQ (Kamal Heib) [1931850] - IB/core: Use valid port number to check link layer (Kamal Heib) [1931850] - IB/cm: Avoid a loop when device has 255 ports (Kamal Heib) [1931850] - RDMA/efa: Remove unused syndrome enum values (Kamal Heib) [1931850] - RDMA/efa: Remove unused 'select' field from get/set feature command descriptor (Kamal Heib) [1931850] - RDMA/efa: Remove unnecessary indentation in defs comments (Kamal Heib) [1931850] - RDMA/efa: Remove duplication of upper/lower_32_bits (Kamal Heib) [1931850] - RDMA/efa: Remove redundant NULL pointer check of CQE (Kamal Heib) [1931850] - RDMA/hw/hfi1/rc: Demote incorrectly populated kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/verbs: Demote non-conforming doc header and fix a misspelling (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/user_exp_rcv: Demote half-documented and kernel-doc abuses (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/ud: Fix a little more doc-rot (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/uc: Fix a little doc-rot (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/tid_rdma: Fix a plethora of kernel-doc issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/sdma: Fix misnaming of 'sdma_send_txlist()'s 'count_out' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/ruc: Fix a small formatting and description issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/qp: Fix some formatting issues and demote kernel-doc abuse (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/rc: Fix a few function documentation issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/pio_copy: Provide entry for 'pio_copy()'s 'dd' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/pcie: Demote kernel-doc abuses (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/netdev_rx: Fix misdocumentation of the 'start_id' param (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/qp: Fix kernel-doc formatting problem (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mad: Fix misspelling of 'rvt_process_mad()'s 'in_mad_size' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/msix: Add description for 'name' and remove superfluous param 'idx' (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/mad: Demote half-completed kernel-doc header fix another (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/iowait: Demote half-completed kernel-doc and fix formatting issue in another (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/srq: Fix a couple of kernel-doc issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/intr: Fix some kernel-doc formatting issues (Kamal Heib) [1931850 1921704] - RDMA/rxe: Replace missing rxe_pool_get_index_locked (Kamal Heib) [1931850] - RDMA/rxe: Remove unneeded pool->state (Kamal Heib) [1931850] - RDMA/rxe: Remove references to ib_device and pool (Kamal Heib) [1931850] - RDMA/rxe: Remove RXE_POOL_ATOMIC (Kamal Heib) [1931850] - RDMA/rxe: Fix misleading comments and names (Kamal Heib) [1931850] - RDMA/rxe: Fix bug in rxe_alloc() (Kamal Heib) [1931850] - IB/umad: Return EPOLLERR in case of when device disassociated (Kamal Heib) [1931850] - IB/umad: Return EIO in case of when device disassociated (Kamal Heib) [1931850] - RDMA/sw/rdmavt/qp: Fix a bunch of kernel-doc misdemeanours (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mr: Fix some issues related to formatting and missing descriptions (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/file_ops: Fix' manage_rcvq()'s 'arg' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/exp_rcv: Fix some kernel-doc formatting issues (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mcast: Demote incomplete kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mad: Fix 'rvt_process_mad()'s documentation header (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/chip: Fix a bunch of kernel-doc formatting and spelling issues (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/cq: Demote hardly complete kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/vt: Fix formatting issue and update description for 'context' (Kamal Heib) [1931850 1921704] - RDMA/hw/efa/efa_com: Stop using param description notation for non-params (Kamal Heib) [1931850] - RDMA/uverbs: Don't set rcq for a QP if qp_type is IB_QPT_XRC_INI (Kamal Heib) [1931850] - RDMA/core/iwpm_msg: Add proper descriptions for 'skb' param (Kamal Heib) [1931850] - RDMA/core/iwpm_util: Fix some param description misspellings (Kamal Heib) [1931850] - RDMA/core/counters: Demote non-conformant kernel-doc headers (Kamal Heib) [1931850] - RDMA/core/restrack: Fix kernel-doc formatting issue (Kamal Heib) [1931850] - RDMA/core/sa_query: Demote non-conformant kernel-doc header (Kamal Heib) [1931850] - RDMA/core/multicast: Provide description for 'ib_init_ah_from_mcmember()'s 'rec' param (Kamal Heib) [1931850] - RDMA/core/roce_gid_mgmt: Fix misnaming of 'rdma_roce_rescan_device()'s param 'ib_dev' (Kamal Heib) [1931850] - RDMA/core/cache: Fix some misspellings, missing and superfluous param descriptions (Kamal Heib) [1931850] - RDMA/core: device: Fix formatting in worthy kernel-doc header and demote another (Kamal Heib) [1931850] - IB/iser: Simplify prot_caps setting (Kamal Heib) [1931850] - IB/iser: Enforce iser_max_sectors to be greater than 0 (Kamal Heib) [1931850] - IB/iser: Protect iscsi_max_lun module param using callback (Kamal Heib) [1931850] - IB/iser: Remove unneeded semicolons (Kamal Heib) [1931850] - IB/isert: Simplify signature cap check (Kamal Heib) [1931850] - IB/isert: Remove unneeded semicolon (Kamal Heib) [1931850] - IB/isert: Remove unneeded new lines (Kamal Heib) [1931850] - RDMA/nldev: Return an error message on failure to turn auto mode (Kamal Heib) [1931850] - RDMA/rxe: Fix race in rxe_mcast.c (Kamal Heib) [1931850] - RDMA/rxe: Add unlocked versions of pool APIs (Kamal Heib) [1931850] - RDMA/rxe: Make add/drop key/index APIs type safe (Kamal Heib) [1931850] - RDMA/rxe: Make pool lookup and alloc APIs type safe (Kamal Heib) [1931850] - RDMA/rxe: Add elem_offset field to rxe_type_info (Kamal Heib) [1931850] - RDMA/rxe: Let pools support both keys and indices (Kamal Heib) [1931850] - RDMA/rxe: Remove unneeded RXE_POOL_ATOMIC flag (Kamal Heib) [1931850] - RDMA/rxe: Add check for supported QP types (Kamal Heib) [1931850] - RDMA: Use kzalloc for allocating only one thing (Kamal Heib) [1931850] - RDMA/cma: Delete useless kfree code (Kamal Heib) [1931850] - RDMA/hfi1: remove h from printk format specifier (Kamal Heib) [1931850 1921704] - RDMA: Convert comma to semicolon (Kamal Heib) [1931850] - net: devlink: Add unused port flavour (Petr Oros) [1943273] - devlink: add .trap_group_action_set() callback (Petr Oros) [1943273] - devlink: add parser error drop packet traps (Petr Oros) [1943273] - drop_monitor: Perform cleanup upon probe registration failure (Petr Oros) [1943273] - selftests: net: Add drop monitor test (Petr Oros) [1943273] - drop_monitor: Filter control packets in drop monitor (Petr Oros) [1943273] - drop_monitor: Remove duplicate struct (Petr Oros) [1943273] - drop_monitor: Remove no longer used functions (Petr Oros) [1943273] - drop_monitor: Convert to using devlink tracepoint (Petr Oros) [1943273] - drop_monitor: Prepare probe functions for devlink tracepoint (Petr Oros) [1943273] - devlink: Add a tracepoint for trap reports (Petr Oros) [1943273] - net: devlink: fix reporter dump dumpit (Petr Oros) [1943273] - devlink: have genetlink code to parse the attrs during dumpit (Petr Oros) [1943273] - netfilter: nf_tables: add direct calls for all builtin expressions (Florian Westphal) [1953320] - netfilter: nf_tables: handle meta/lookup with direct call (Florian Westphal) [1953320] - ionic: linearize tso skb with too many frags (Jonathan Toppins) [1940696] - i40e: fix the restart auto-negotiation after FEC modified (Stefan Assmann) [1725560] - ovl: skip getxattr of security labels (Miklos Szeredi) [1956340] - ovl: fix dentry leak in ovl_get_redirect (Miklos Szeredi) [1956340] - ovl: avoid deadlock on directory ioctl (Miklos Szeredi) [1956340] - cap: fix conversions on getxattr (Miklos Szeredi) [1956340] - ovl: perform vfs_getxattr() with mounter creds (Miklos Szeredi) [1956340] - ovl: add warning on user_ns mismatch (Miklos Szeredi) [1956340] - ovl: unprivieged mounts (Miklos Szeredi) [1956340] - ovl: do not get metacopy for userxattr (Miklos Szeredi) [1956340] - ovl: do not fail because of O_NOATIME (Miklos Szeredi) [1956340] - ovl: do not fail when setting origin xattr (Miklos Szeredi) [1956340] - ovl: user xattr (Miklos Szeredi) [1956340] - ovl: simplify file splice (Miklos Szeredi) [1956340] - ovl: make ioctl() safe (Miklos Szeredi) [1956340] - ovl: check privs before decoding file handle (Miklos Szeredi) [1956340] - vfs: verify source area in vfs_dedupe_file_range_one() (Miklos Szeredi) [1956340] - vfs: move cap_convert_nscap() call into vfs_setxattr() (Miklos Szeredi) [1956340] - ovl: fix incorrect extent info in metacopy case (Miklos Szeredi) [1956340] - ovl: expand warning in ovl_d_real() (Miklos Szeredi) [1956340] - ovl: document lower modification caveats (Miklos Szeredi) [1956340] - ovl: warn about orphan metacopy (Miklos Szeredi) [1956340] - ovl: doc clarification (Miklos Szeredi) [1956340] - ovl: introduce new "uuid=off" option for inodes index feature (Miklos Szeredi) [1956340] - ovl: propagate ovl_fs to ovl_decode_real_fh and ovl_encode_real_fh (Miklos Szeredi) [1956340] - ovl: use generic vfs_ioc_setflags_prepare() helper (Miklos Szeredi) [1956340] - ovl: support [S|G]ETFLAGS and FS[S|G]ETXATTR ioctls for directories (Miklos Szeredi) [1956340] - ovl: rearrange ovl_can_list() (Miklos Szeredi) [1956340] - ovl: enumerate private xattrs (Miklos Szeredi) [1956340] - ovl: pass ovl_fs down to functions accessing private xattrs (Miklos Szeredi) [1956340] - ovl: drop flags argument from ovl_do_setxattr() (Miklos Szeredi) [1956340] - ovl: adhere to the vfs_ vs. ovl_do_ conventions for xattrs (Miklos Szeredi) [1956340] - ovl: use ovl_do_getxattr() for private xattr (Miklos Szeredi) [1956340] - ovl: fold ovl_getxattr() into ovl_get_redirect_xattr() (Miklos Szeredi) [1956340] - ovl: clean up ovl_getxattr() in copy_up.c (Miklos Szeredi) [1956340] - duplicate ovl_getxattr() (Miklos Szeredi) [1956340] - ovl: provide a mount option "volatile" (Miklos Szeredi) [1956340 1928211] - ovl: check for incompatible features in work dir (Miklos Szeredi) [1956340 1928211] - ovl: fix lookup of indexed hardlinks with metacopy (Miklos Szeredi) [1956340] - ovl: fix unneeded call to ovl_change_flags() (Miklos Szeredi) [1956340] - ovl: fix mount option checks for nfs_export with no upperdir (Miklos Szeredi) [1956340] - ovl: force read-only sb on failure to create index dir (Miklos Szeredi) [1956340] - ovl: fix regression with re-formatted lower squashfs (Miklos Szeredi) [1956340] - ovl: fix oops in ovl_indexdir_cleanup() with nfs_export=on (Miklos Szeredi) [1956340] - ovl: relax WARN_ON() when decoding lower directory file handle (Miklos Szeredi) [1956340] - ovl: remove not used argument in ovl_check_origin (Miklos Szeredi) [1956340] - ovl: change ovl_copy_up_flags static (Miklos Szeredi) [1956340] - ovl: inode reference leak in ovl_is_inuse true case. (Miklos Szeredi) [1956340] - ovl: remove unnecessary lock check (Miklos Szeredi) [1956340] - ovl: make oip->index bool (Miklos Szeredi) [1956340] - ovl: only pass ->ki_flags to ovl_iocb_to_rwf() (Miklos Szeredi) [1956340] - ovl: make private mounts longterm (Miklos Szeredi) [1956340] - ovl: get rid of redundant members in struct ovl_fs (Miklos Szeredi) [1956340] - ovl: add accessor for ofs->upper_mnt (Miklos Szeredi) [1956340] - ovl: drop negative dentry in upper layer (Miklos Szeredi) [1956340] - ovl: check permission to open real file (Miklos Szeredi) [1956340] - ovl: call secutiry hook in ovl_real_ioctl() (Miklos Szeredi) [1956340] - ovl: verify permissions in ovl_path_open() (Miklos Szeredi) [1956340] - ovl: switch to mounter creds in readdir (Miklos Szeredi) [1956340] - ovl: pass correct flags for opening real directory (Miklos Szeredi) [1956340] - ovl: whiteout inode sharing (Miklos Szeredi) [1956340] - ovl: inherit SB_NOSEC flag from upperdir (Miklos Szeredi) [1956340] - ovl: skip overlayfs superblocks at global sync (Miklos Szeredi) [1956340] - ovl: index dir act as work dir (Miklos Szeredi) [1956340] - ovl: prepare to copy up without workdir (Miklos Szeredi) [1956340] - ovl: cleanup non-empty directories in ovl_indexdir_cleanup() (Miklos Szeredi) [1956340] - ocxl: Add new kernel traces (Steve Best) [1907530] - ocxl: Add mmu notifier (Steve Best) [1907530] - ocxl: Update the Process Element Entry (Steve Best) [1907530] - ocxl: Initiate a TLB invalidate command (Steve Best) [1907530] - ocxl: Assign a register set to a Logical Partition (Steve Best) [1907530] - powerpc/mce: Remove per cpu variables from MCE handlers (Gustavo Walbon) [1921683] - powerpc/mce: Reduce the size of event arrays (Gustavo Walbon) [1921683] - tools/power turbostat: Support Ice Lake D (Prarit Bhargava) [1943439] - PM: hibernate: x86: Use crc32 instead of md5 for hibernation e820 integrity check (Chris von Recklinghausen) [1944636] - vhost/vsock: add IOTLB API support (Stefano Garzarella) [1894101] - vhost: Fix vhost_vq_reset() (Laurent Vivier) [1919126] - perf trace: Fix race in signal handling (Michael Petlan) [1928380] - scsi: sd: sd_zbc: Don't pass GFP_NOIO to kvcalloc (Ewan D. Milne) [1953699] - sd_zbc: clear zone resources for non-zoned case (Ewan D. Milne) [1953699] - scsi: scsi_debug: Fix a memory leak (Ewan D. Milne) [1953699] - scsi: sd: Warn if unsupported ZBC device is probed (Ewan D. Milne) [1953699] - scsi: core: Add 'set_status_byte()' accessor (Ewan D. Milne) [1953699] - scsi: scsi_debug: Do not set COMMAND_COMPLETE (Ewan D. Milne) [1953699] - scsi: scsi_transport_srp: Don't block target in failfast state (Ewan D. Milne) [1953699] - scsi: scsi_debug: Fix memleak in scsi_debug_init() (Ewan D. Milne) [1953699] - scsi: core: Fix -Wformat for scsi_host (Ewan D. Milne) [1953699] - scsi: doc: Fix some kernel-doc markups (Ewan D. Milne) [1953699] - scsi: sr: Initialize ->cmd_len (Ewan D. Milne) [1953699] - scsi: core: Set sc_data_direction to DMA_NONE for no-transfer commands (Ewan D. Milne) [1953699] - scsi: core: Remove scsi_setup_cmnd() and scsi_setup_fs_cmnd() (Ewan D. Milne) [1953699] - scsi: core: Clean up allocation and freeing of sgtables (Ewan D. Milne) [1953699] - scsi: core: Rename scsi_mq_prep_fn() to scsi_prepare_cmd() (Ewan D. Milne) [1953699] - scsi: core: Rename scsi_prep_state_check() to scsi_device_state_check() (Ewan D. Milne) [1953699] - scsi: core: Use rq_dma_dir in scsi_setup_cmnd() (Ewan D. Milne) [1953699] - scsi: core: Remove scsi_init_cmd_errh (Ewan D. Milne) [1953699] - scsi: sd: Allow user to configure command retries (Ewan D. Milne) [1953699] - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks (Ewan D. Milne) [1953699] - scsi: sd_zbc: Improve zone revalidation (Ewan D. Milne) [1953699] - scsi: sd_zbc: Don't limit max_zone_append sectors to max_hw_sectors (Ewan D. Milne) [1953699] - scsi: sd_zbc: Remove unused inline functions (Ewan D. Milne) [1953699] - nvme: fix the nsid value to print in nvme_validate_or_alloc_ns (Gopal Tiwari) [1921591] - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a Samsung PM1725a (Gopal Tiwari) [1921591] - nvme-rdma: Fix a use after free in nvmet_rdma_write_data_done (Gopal Tiwari) [1921591] - nvme-core: check ctrl css before setting up zns (Gopal Tiwari) [1921591] - nvme-fc: fix racing controller reset and create association (Gopal Tiwari) [1921591] - nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been aborted (Gopal Tiwari) [1921591] - nvme-fc: set NVME_REQ_CANCELLED in nvme_fc_terminate_exchange() (Gopal Tiwari) [1921591] - nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request() (Gopal Tiwari) [1921591] - nvme: simplify error logic in nvme_validate_ns() (Gopal Tiwari) [1921591] - nvme: set max_zone_append_sectors nvme_revalidate_zones (Gopal Tiwari) [1921591] - nvmet: model_number must be immutable once set (Gopal Tiwari) [1921591] - nvme-fabrics: fix kato initialization (Gopal Tiwari) [1921591] - nvme-hwmon: Return error code when registration fails (Gopal Tiwari) [1921591] - nvme-pci: add quirks for Lexar 256GB SSD (Gopal Tiwari) [1921591] - nvme-pci: mark Kingston SKC2000 as not supporting the deepest power state (Gopal Tiwari) [1921591] - nvme-pci: mark Seagate Nytro XM1440 as QUIRK_NO_NS_DESC_LIST. (Gopal Tiwari) [1921591] - nvme-tcp: fix crash triggered with a dataless request submission (Gopal Tiwari) [1921591] - nvme-hwmon: rework to avoid devm allocation (Gopal Tiwari) [1921591] - nvme: add 48-bit DMA address quirk for Amazon NVMe controllers (Gopal Tiwari) [1921591] - nvmet: remove else at the end of the function (Gopal Tiwari) [1921591] - nvmet: add helper to report invalid opcode (Gopal Tiwari) [1921591] - nvmet: add nvmet_req_subsys() helper (Gopal Tiwari) [1921591] - nvmet: use invalid cmd opcode helper (Gopal Tiwari) [1921591] - nvmet: use invalid cmd opcode helper (Gopal Tiwari) [1921591] - nvmet-fc: add a missing __rcu annotation to nvmet_fc_tgt_assoc.queues (Gopal Tiwari) [1921591] - nvme-multipath: set nr_zones for zoned namespaces (Gopal Tiwari) [1921591] - nvmet: make nvmet_find_namespace() req based (Gopal Tiwari) [1921591] - nvmet: set status to 0 in case for invalid nsid (Gopal Tiwari) [1921591] - nvmet: return uniform error for invalid ns (Gopal Tiwari) [1921591] - nvmet: remove extra variable in id-ns handler (Gopal Tiwari) [1921591] - nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs (Gopal Tiwari) [1921591] - nvme-fabrics: avoid double completions in nvmf_fail_nonready_command (Gopal Tiwari) [1921591] - nvme: introduce a nvme_host_path_error helper (Gopal Tiwari) [1921591] - blk-mq: introduce blk_mq_set_request_complete (Gopal Tiwari) [1921591] - nvme-rdma: handle nvme_rdma_post_send failures better (Gopal Tiwari) [1921591] - nvmet-tcp: fix potential race of tcp socket closing accept_work (Gopal Tiwari) [1921591] - nvme: cleanup zone information initialization (Gopal Tiwari) [1921591] - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs (Gopal Tiwari) [1921591] - nvme-pci: ignore the subsysem NQN on Phison E16 (Gopal Tiwari) [1921591] - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs (Gopal Tiwari) [1921591] - nvme-tcp: use cancel tagset helper for tear down (Gopal Tiwari) [1921591] - nvme-rdma: use cancel tagset helper for tear down (Gopal Tiwari) [1921591] - nvme-rdma: add clean action for failed reconnection (Gopal Tiwari) [1921591] - nvme-core: get rid of the extra space (Gopal Tiwari) [1921591] - nvme-tcp: add clean action for failed reconnection (Gopal Tiwari) [1921591] - nvme: add tracing of zns commands (Gopal Tiwari) [1921591] - nvme: parse format nvm command details when tracing (Gopal Tiwari) [1921591] - nvme-core: add cancel tagset helpers (Gopal Tiwari) [1921591] - nvme: refactor ns->ctrl by request (Gopal Tiwari) [1921591] - nvme-tcp: fix wrong setting of request iov_iter (Gopal Tiwari) [1921591] - nvmet: remove extra variable in smart log nsid (Gopal Tiwari) [1921591] - nvme-tcp: get rid of unused helper function (Gopal Tiwari) [1921591] - nvmet: remove extra variable in identify ns (Gopal Tiwari) [1921591] - nvmet: remove extra variable in id-desclist (Gopal Tiwari) [1921591] - nvmet: add lba to sect conversion helpers (Gopal Tiwari) [1921591] - nvme: support command retry delay for admin command (Gopal Tiwari) [1921591] - nvmet: Use nvmet_is_port_enabled helper for pi_enable (Gopal Tiwari) [1921591] - nvme: constify static attribute_group structs (Gopal Tiwari) [1921591] - nvmet-fc: use RCU proctection for assoc_list (Gopal Tiwari) [1921591] - nvmet: Fix nvmet_is_port_enabled indentation (Gopal Tiwari) [1921591] - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a SPCC device (Gopal Tiwari) [1921591] - nvme-core: use list_add_tail_rcu instead of list_add_tail for nvme_init_ns_head (Gopal Tiwari) [1921591] - nvme: allow revalidate to set a namespace read-only (Gopal Tiwari) [1921591] - nvmet: set right status on error in id-ns handler (Gopal Tiwari) [1921591] - nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout (Gopal Tiwari) [1921591] - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout (Gopal Tiwari) [1921591] - nvme-pci: allow use of cmb on v1.4 controllers (Gopal Tiwari) [1921591] - nvme: check the PRINFO bit before deciding the host buffer length (Gopal Tiwari) [1921591] - nvme-tcp: fix possible data corruption with bio merges (Gopal Tiwari) [1921591] - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT (Gopal Tiwari) [1921591] - nvme: don't intialize hwmon for discovery controllers (Gopal Tiwari) [1921591] - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY (Gopal Tiwari) [1921591] - nvmet-rdma: Fix list_del corruption on queue establishment failure (Gopal Tiwari) [1921591] - nvme: unexport functions with no external caller (Gopal Tiwari) [1921591] - nvme: avoid possible double fetch in handling CQE (Gopal Tiwari) [1921591] - nvme: remove the unused status argument from nvme_trace_bio_complete (Gopal Tiwari) [1921591] - nvme-tcp: Fix possible race of io_work and direct send (Gopal Tiwari) [1921591] - nvme-fcloop: Fix sscanf type and list_first_entry_or_null warnings (Gopal Tiwari) [1921591] - nvme-fc: avoid calling _nvme_fc_abort_outstanding_ios from interrupt context (Gopal Tiwari) [1921591] - nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class (Gopal Tiwari) [1921591] - nvme: rename controller base dev_t char device (Gopal Tiwari) [1921591] - nvme: remove unnecessary return values (Gopal Tiwari) [1921591] - nvme: rename bdev operations (Gopal Tiwari) [1921591] - nvme: export zoned namespaces without Zone Append support read-only (Gopal Tiwari) [1921591] - nvme: print a warning for when listing active namespaces fails (Gopal Tiwari) [1921591] - nvme: improve an error message on Identify failure (Gopal Tiwari) [1921591] - nvmet: fix a spelling mistake "incuding" -> "including" in Kconfig (Gopal Tiwari) [1921591] - nvme-fabrics: reject I/O to offline device (Gopal Tiwari) [1921591] - nvmet: make sure discovery change log event is protected (Gopal Tiwari) [1921591] - nvme-pci: don't allocate unused I/O queues (Gopal Tiwari) [1921591] - nvme-pci: drop min() from nr_io_queues assignment (Gopal Tiwari) [1921591] - nvmet: use inline bio for passthru fast path (Gopal Tiwari) [1921591] - nvmet: use blk_rq_bio_prep instead of blk_rq_append_bio (Gopal Tiwari) [1921591] - nvmet: remove unused ctrl->cqs (Gopal Tiwari) [1921591] - nvmet: remove op_flags for passthru commands (Gopal Tiwari) [1921591] - nvme: use consistent macro name for timeout (Gopal Tiwari) [1921591] - nvmet: add passthru io timeout value attr (Gopal Tiwari) [1921591] - nvmet: add passthru admin timeout value attr (Gopal Tiwari) [1921591] - nvme: split nvme_alloc_request() (Gopal Tiwari) [1921591] - nvme: centralize setting the timeout in nvme_alloc_request (Gopal Tiwari) [1921591] - nvme: simplify nvme_req_qid() (Gopal Tiwari) [1921591] - nvme-fcloop: add sysfs attribute to inject command drop (Gopal Tiwari) [1921591] - nvme: let set_capacity_revalidate_and_notify update the bdev size (Gopal Tiwari) [1921591] - nvme: directly cache command effects log (Gopal Tiwari) [1921591] - nvme: fix memory leak freeing command effects (Gopal Tiwari) [1921591] - nvme: free sq/cq dbbuf pointers when dbbuf set fails (Gopal Tiwari) [1921591] - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device (Gopal Tiwari) [1921591] - RDMA: Lift ibdev_to_node from rds to common code (Gopal Tiwari) [1921591] - nvme: fix incorrect behavior when BLKROSET is called by the user (Gopal Tiwari) [1921591] - Revert "nvme-pci: remove last_sq_tail" (Gopal Tiwari) [1921591] - nvmet: fix a NULL pointer dereference when tracing the flush command (Gopal Tiwari) [1921591] - nvme-fc: remove nvme_fc_terminate_io() (Gopal Tiwari) [1921591] - nvme-fc: eliminate terminate_io use by nvme_fc_error_recovery (Gopal Tiwari) [1921591] - nvme-fc: remove err_work work item (Gopal Tiwari) [1921591] - nvme-fc: track error_recovery while connecting (Gopal Tiwari) [1921591] - nvme-rdma: handle unexpected nvme completion data length (Gopal Tiwari) [1921591] - nvme: ignore zone validate errors on subsequent scans (Gopal Tiwari) [1921591] - nvme-fc: shorten reconnect delay if possible for FC (Gopal Tiwari) [1921591] - nvme-fc: wait for queues to freeze before calling update_hr_hw_queues (Gopal Tiwari) [1921591] - nvme-fc: fix error loop in create_hw_io_queues (Gopal Tiwari) [1921591] - nvme-fc: fix io timeout to abort I/O (Gopal Tiwari) [1921591] - nvmet: cleanup nvmet_passthru_map_sg() (Gopal Tiwari) [1921591] - nvmet: don't use BLK_MQ_REQ_NOWAIT for passthru (Gopal Tiwari) [1921591] - nvmet: limit passthru MTDS by BIO_MAX_PAGES (Gopal Tiwari) [1921591] - nvme-rdma: fix crash due to incorrect cqe (Gopal Tiwari) [1921591] - nvmet: fix uninitialized work for zero kato (Gopal Tiwari) [1921591] - nvme: use queuedata for nvme_req_qid (Gopal Tiwari) [1921591] - nvme-pci: disable Write Zeroes on Sandisk Skyhawk (Gopal Tiwari) [1921591] - nvme-rdma: fix crash when connect rejected (Gopal Tiwari) [1921591] - nvme: translate zone resource errors (Gopal Tiwari) [1921591] - block: add zone specific block statuses (Gopal Tiwari) [1921591] - nvme-core: remove extra condition for vwc (Gopal Tiwari) [1921591] - nvme-core: remove extra variable (Gopal Tiwari) [1921591] - nvme: remove nvme_identify_ns_list (Gopal Tiwari) [1921591] - nvme: refactor nvme_validate_ns (Gopal Tiwari) [1921591] - nvme: move nvme_validate_ns (Gopal Tiwari) [1921591] - nvme: remove nvme_update_formats (Gopal Tiwari) [1921591] - nvme: update the known admin effects (Gopal Tiwari) [1921591] - nvme: query namespace identifiers before adding the namespace (Gopal Tiwari) [1921591] - nvme: revalidate zone bitmaps in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: call nvme_identify_ns as the first thing in nvme_alloc_ns_block (Gopal Tiwari) [1921591] - nvme: set the queue limits in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: remove the 0 lba_shift check in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: freeze the queue over ->lba_shift updates (Gopal Tiwari) [1921591] - nvme: factor out a nvme_configure_metadata helper (Gopal Tiwari) [1921591] - nvme: lift the check for an unallocated namespace into nvme_identify_ns (Gopal Tiwari) [1921591] - nvme: clean up the check for too large logic block sizes (Gopal Tiwari) [1921591] - nvme: remove the disk argument to nvme_update_zone_info (Gopal Tiwari) [1921591] - nvme: rename __nvme_revalidate_disk (Gopal Tiwari) [1921591] - nvme: rename _nvme_revalidate_disk (Gopal Tiwari) [1921591] - nvme: rename nvme_validate_ns to nvme_validate_or_alloc_ns (Gopal Tiwari) [1921591] - nvme: fix initialization of the zone bitmaps (Gopal Tiwari) [1921591] - nvme-loop: don't put ctrl on nvme_init_ctrl error (Gopal Tiwari) [1921591] - nvme-core: put ctrl ref when module ref get fail (Gopal Tiwari) [1921591] - nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage() (Gopal Tiwari) [1921591] - nvmet-fc: fix missing check for no hostport struct (Gopal Tiwari) [1921591] - nvme: fix error handling in nvme_ns_report_zones (Gopal Tiwari) [1921591] - nvmet: add passthru ZNS support (Gopal Tiwari) [1921591] - nvmet: handle keep-alive timer when kato is modified by a set features cmd (Gopal Tiwari) [1921591] - nvme-pci: allocate separate interrupt for the reserved non-polled I/O queue (Gopal Tiwari) [1921591] - nvmet-tcp: have queue io_work context run on sock incoming cpu (Gopal Tiwari) [1921591] - nvme: lift the file open code from nvme_ctrl_get_by_path (Gopal Tiwari) [1921591] - nvme: use an xarray to lookup the Commands Supported and Effects log (Gopal Tiwari) [1921591] - nvme-pci: Move enumeration by class to be last in the table (Gopal Tiwari) [1921591] - nvme-core: don't use NVME_NSID_ALL for command effects and supported log (Gopal Tiwari) [1921591] - nvme-fc: fail new connections to a deleted host or remote port (Gopal Tiwari) [1921591] - nvme: return errors for hwmon init (Gopal Tiwari) [1921591] - nvme-pci: fix NULL req in completion handler (Gopal Tiwari) [1921591] - nvmet: get transport reference for passthru ctrl (Gopal Tiwari) [1921591] - nvme-core: get/put ctrl and transport module in nvme_dev_open/release() (Gopal Tiwari) [1921591] - nvme-tcp: fix kconfig dependency warning when !CRYPTO (Gopal Tiwari) [1921591] - nvme: use blk_mq_complete_request_remote to avoid an indirect function call (Gopal Tiwari) [1921591] - nvme-core: replace ctrl page size with a macro (Gopal Tiwari) [1921591] - nvme-pci: remove the inline scatterlist optimization (Gopal Tiwari) [1921591] - block: optimize blk_queue_zoned_model for !CONFIG_BLK_DEV_ZONED (Gopal Tiwari) [1921591] - nvme: support for zoned namespaces (Gopal Tiwari) [1921591] - null_blk: introduce zone capacity for zoned device (Gopal Tiwari) [1921591] - block: add capacity field to zone descriptors (Gopal Tiwari) [1921591]- vmxnet3: Set the default of vxlan overlay offload to disabled (Cathy Avery) [1941714] - vmxnet3: Update driver to use ethtool_sprintf (Cathy Avery) [1923796] - vmxnet3: Remove buf_info from device accessible structures (Cathy Avery) [1923796] - igc: Fix overwrites return value (Corinna Vinschen) [1920285] - igc: Add set/clear large buffer helpers (Corinna Vinschen) [1920285] - igc: Refactor Rx timestamp handling (Corinna Vinschen) [1920285] - igc: Introduce igc_get_rx_frame_truesize() helper (Corinna Vinschen) [1920285] - igc: Introduce igc_rx_buffer_flip() helper (Corinna Vinschen) [1920285] - igc: Remove unused argument from igc_tx_cmd_type() (Corinna Vinschen) [1920285] - igc: Fix prototype warning (Corinna Vinschen) [1920285] - igc: Assign boolean values to a bool variable (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_LOOPBACK (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_SPEED (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_RESET (Corinna Vinschen) [1920285] - igc: Fix igc_ptp_rx_pktstamp() (Corinna Vinschen) [1920285] - igc: Fix Supported Pause Frame Link Setting (Corinna Vinschen) [1920285] - igc: Fix Pause Frame Advertising (Corinna Vinschen) [1920285] - igc: reinit_locked() should be called with rtnl_lock (Corinna Vinschen) [1920285] - igc: Fix TDBAL register show incorrect value (Corinna Vinschen) [1920285] - igc: Remove unused FUNC_1 mask (Corinna Vinschen) [1920285] - igc: Remove unused local receiver mask (Corinna Vinschen) [1920285] - igc: Prefer strscpy over strlcpy (Corinna Vinschen) [1920285] - igc: Expose the gPHY firmware version (Corinna Vinschen) [1920285] - igc: Expose the NVM version (Corinna Vinschen) [1920285] - igc: Add Host Good Packets Transmitted Count (Corinna Vinschen) [1920285] - igc: Remove MULR mask define (Corinna Vinschen) [1920285] - igc: Remove igc_set_fw_version comment (Corinna Vinschen) [1920285] - igc: Clean up nvm_operations structure (Corinna Vinschen) [1920285] - igc: check return value of ret_val in igc_config_fc_after_link_up (Corinna Vinschen) [1920285] - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr (Corinna Vinschen) [1920285] - igc: Report speed and duplex as unknown when device is runtime suspended (Corinna Vinschen) [1920285] - net: igc: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920285] - igc: Add new device ID (Corinna Vinschen) [1920285] - net: igbvf: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920287] - igbvf: Refactor traces (Corinna Vinschen) [1920287] - igbvf: amend removal of MODULE_VERSION (Corinna Vinschen) [1955752] - netlink: add tracepoint at NL_SET_ERR_MSG (Marcelo Ricardo Leitner) [1956983] - xfrm: Provide private skb extensions for segmented and hw offloaded ESP packets (Sabrina Dubroca) [1935575] - xfrm: BEET mode doesn't support fragments for inner packets (Xin Long) [1870900] - xfrm: Fix NULL pointer dereference on policy lookup (Sabrina Dubroca) [1951965] - xfrm: use secpath_exist where applicable (Sabrina Dubroca) [1951965] - net: xfrm: Use sequence counter with associated spinlock (Sabrina Dubroca) [1951965] - net: xfrm: Localize sequence counter per network namespace (Sabrina Dubroca) [1951965] - xfrm: Return the correct errno code (Sabrina Dubroca) [1951965] - xfrm: Fix wraparound in xfrm_policy_addr_delta() (Sabrina Dubroca) [1951965] - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces (Sabrina Dubroca) [1951965] - xfrm: Fix oops in xfrm_replay_advance_bmp (Sabrina Dubroca) [1951965] - ah6: fix error return code in ah6_input() (Sabrina Dubroca) [1951965] - net: xfrm: fix a race condition during allocing spi (Sabrina Dubroca) [1951965] - xfrm: policy: Use sequence counters with associated lock (Sabrina Dubroca) [1951965] - selftests: net: mirror_gre_vlan_bridge_1q: Make an FDB entry static (Ivan Vecera) [1952586] - net: bridge: switchdev: include local flag in FDB notifications (Ivan Vecera) [1952586] - net: bridge: switchdev: refactor br_switchdev_fdb_notify (Ivan Vecera) [1952586] - net: bridge: don't notify switchdev for local FDB addresses (Ivan Vecera) [1952586] - net: bridge: use switchdev for port flags set through sysfs too (Ivan Vecera) [1952586] - net: bridge: vlan: fix error return code in __vlan_add() (Ivan Vecera) [1952586] - net: bridge: add missing counters to ndo_get_stats64 callback (Ivan Vecera) [1952586] - net: bridge: use new function dev_fetch_sw_netstats (Ivan Vecera) [1952586] - net: bridge: fdb: don't flush ext_learn entries (Ivan Vecera) [1952586] - net: bridge: clear bridge's private skb space on xmit (Ivan Vecera) [1952586] - bridge: mcast: Fix MLD2 Report IPv6 payload length check (Ivan Vecera) [1952586] - net: bridge: enfore alignment for ethernet address (Ivan Vecera) [1952586] - netfilter: nft_reject_bridge: enable reject with bridge vlan (Ivan Vecera) [1952586] - net: bridge: vlan: Add a schedule point during VLAN processing (Ivan Vecera) [1952586] - netfilter: ebtables: compat: reject all padding in matches/watchers (Ivan Vecera) [1952586] - net: bridge: deny dev_set_mac_address() when unregistering (Ivan Vecera) [1952586] - net: bridge: fdb: set flags directly in fdb_create (Ivan Vecera) [1952586] - net: bridge: fdb: convert offloaded to use bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert added_by_external_learn to use bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert added_by_user to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_sticky to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_static to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_local to bitops (Ivan Vecera) [1952586] - net: bridge: move default pvid init/deinit to NETDEV_REGISTER/UNREGISTER (Ivan Vecera) [1952586] - bridge: Fix possible use-after-free when deleting bridge port (Ivan Vecera) [1952586] - bridge: update vlan dev link state for bridge netdev changes (Ivan Vecera) [1952586] - bridge: update vlan dev state when port added to or deleted from vlan (Ivan Vecera) [1952586] - bridge: support binding vlan dev link state to vlan member bridge ports (Ivan Vecera) [1952586] - vlan: do not transfer link state in vlan bridge binding mode (Ivan Vecera) [1952586] - vlan: support binding link state to vlan member bridge ports (Ivan Vecera) [1952586] - ipv6: weaken the v4mapped source check (Paolo Abeni) [1950298] - tcp: relookup sock for RST+ACK packets handled by obsolete req sock (Paolo Abeni) [1950298] - inet_connection_sock: remove unused parameter of reqsk_queue_unlink func (Paolo Abeni) [1950298] - tcp: add sanity tests to TCP_QUEUE_SEQ (Paolo Abeni) [1950298] - tcp: fix SO_RCVLOWAT related hangs under mem pressure (Paolo Abeni) [1950298] - tcp: do not mess with cloned skbs in tcp_add_backlog() (Paolo Abeni) [1950298] - tcp: fix cwnd-limited bug for TSO deferral where we send nothing (Paolo Abeni) [1950298] - vfio-ccw: Wire in the request callback (Thomas Huth) [1940451] - vfio-mdev: Wire in a request handler for mdev parent (Thomas Huth) [1940451] - intel_idle: add Iclelake-D support (David Arcari) [1960287] - scsi: ibmvfc: Fix potential race in ibmvfc_wait_for_ops() (Steve Best) [1941180] - powerpc/sstep: Fix VSX instruction emulation (Steve Best) [1934187] - powerpc/pseries/hibernation: remove pseries_suspend_cpu() (Steve Best) [1932970] - powerpc/pseries: remove cede offline state for CPUs (Steve Best) [1932970] - powerpc/pseries: export LPAR security flavor in lparcfg (Steve Best) [1935660] - Makefile: update early devel phase flag (Bruno Meneguele) [1930504]- configs: Enable CONFIG_BPF_KPROBE_OVERRIDE (Jiri Olsa) [1920439] - powerpc/kvm: Fix build error when PPC_MEM_KEYS/PPC_PSERIES=n (Greg Kurz) [1945745] - powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure MSR[HV] is always clear in guest MSR (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure MSR[ME] is always set in guest MSR (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix CONFIG_SPAPR_TCE_IOMMU=n default hcalls (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: remove unused kvmppc_h_protect argument (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Remove redundant mtspr PSPB (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Prevent radix guests setting LPCR[TC] (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Disallow LPCR[AIL] to be set to 1 or 2 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Add a function to filter guest LPCR bits (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Nested move LPCR sanitising to sanitise_hv_regs (Greg Kurz) [1945745] - KVM: PPC: Book3S HV P9: Restore host CTRL SPR after guest exit (Greg Kurz) [1945745] - KVM: PPC: Don't always report hash MMU capability for P9 < DD2.2 (Greg Kurz) [1945745] - powerpc/xive: Assign boolean values to a bool variable (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix host radix SLB optimisation with hash guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure radix guest has no SLB entries (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Save and restore FSCR in the P9 path (Greg Kurz) [1945745] - KVM: PPC: remove unneeded semicolon (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Use POWER9 SLBIA IH=6 variant to clear SLB (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: No need to clear radix host SLB before loading HPT guest (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix radix guest SLB side channel (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Remove support for running HPT guest on RPT host without mixed mode support (Greg Kurz) [1945745] - powerpc/mm: Update tlbiel loop on POWER10 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Allow nested guest creation when L0 hv_guest_state > L1 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Context tracking exit guest context before enabling irqs (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Include prototypes (Greg Kurz) [1945745] - KVM: PPC: Make the VMX instruction emulation routines static (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix mask size for emulated msgsndp (Greg Kurz) [1945745] - KVM: PPC: fix comparison to bool warning (Greg Kurz) [1945745] - KVM: PPC: Book3S: Assign boolean values to a bool variable (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Add a comment regarding VP numbering (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_EOI_FW (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_MASK_FW (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_SHIFT_BUG (Greg Kurz) [1945745] - powerpc/xive: Add a debug_show handler to the XIVE irq_domain (Greg Kurz) [1945745] - powerpc/xive: Rename XIVE_IRQ_NO_EOI to show its a flag (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Show detailed configuration in debug output (Greg Kurz) [1945745] - powerpc/64s: Remove MSR[ISF] bit (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ratelimit machine check messages coming from guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Don't attempt to recover machine checks for FWNMI enabled guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page (Greg Kurz) [1945745] - clocksource/drivers/hyper-v: Move handling of STIMER0 interrupts (Mohammed Gamal) [1940901] - clocksource/drivers/hyper-v: Set clocksource rating based on Hyper-V feature (Mohammed Gamal) [1940901] - clocksource/drivers/hyper-v: Handle sched_clock differences inline (Mohammed Gamal) [1940901] - clocksource/hyperv: use MSR-based access if running as root (Mohammed Gamal) [1940901] - cifs: fix interrupted close commands (Ronnie Sahlberg) [1952263] - cifs: add NULL check for ses->tcon_ipc (Ronnie Sahlberg) [1952263] - smb3: set COMPOUND_FID to FileID field of subsequent compound request (Ronnie Sahlberg) [1952263] - cifs: fix potential use-after-free in cifs_echo_request() (Ronnie Sahlberg) [1952263] - cifs: allow syscalls to be restarted in __smb_send_rqst() (Ronnie Sahlberg) [1952263] - smb3: Handle error case during offload read path (Ronnie Sahlberg) [1952263] - smb3: Avoid Mid pending list corruption (Ronnie Sahlberg) [1952263] - smb3: Call cifs reconnect from demultiplex thread (Ronnie Sahlberg) [1952263] - cifs: fix a memleak with modefromsid (Ronnie Sahlberg) [1952263] - cifs: update internal module version number (Ronnie Sahlberg) [1952263] - smb3: add some missing definitions from MS-FSCC (Ronnie Sahlberg) [1952263] - smb3: remove two unused variables (Ronnie Sahlberg) [1952263] - smb3: add support for stat of WSL reparse points for special file types (Ronnie Sahlberg) [1952263] - SMB3: add support for recognizing WSL reparse tags (Ronnie Sahlberg) [1952263] - cifs: remove bogus debug code (Ronnie Sahlberg) [1952263] - smb3.1.1: fix typo in compression flag (Ronnie Sahlberg) [1952263] - cifs: move smb version mount options into fs_context.c (Ronnie Sahlberg) [1952263] - cifs: move cache mount options to fs_context.ch (Ronnie Sahlberg) [1952263] - cifs: move security mount options into fs_context.ch (Ronnie Sahlberg) [1952263] - cifs: add files to host new mount api (Ronnie Sahlberg) [1952263] - smb3: do not try to cache root directory if dir leases not supported (Ronnie Sahlberg) [1952263] - smb3: fix stat when special device file and mounted with modefromsid (Ronnie Sahlberg) [1952263] - cifs: Print the address and port we are connecting to in generic_ip_connect() (Ronnie Sahlberg) [1952263] - SMB3: Resolve data corruption of TCP server info fields (Ronnie Sahlberg) [1952263] - cifs: make const array static, makes object smaller (Ronnie Sahlberg) [1952263] - SMB3.1.1: Fix ids returned in POSIX query dir (Ronnie Sahlberg) [1952263] - smb3: add dynamic trace point to trace when credits obtained (Ronnie Sahlberg) [1952263] - smb3.1.1: do not fail if no encryption required but server doesn't support it (Ronnie Sahlberg) [1952263] - cifs: Return the error from crypt_message when enc/dec key not found. (Ronnie Sahlberg) [1952263] - smb3.1.1: set gcm256 when requested (Ronnie Sahlberg) [1952263] - smb3.1.1: rename nonces used for GCM and CCM encryption (Ronnie Sahlberg) [1952263] - smb3.1.1: print warning if server does not support requested encryption type (Ronnie Sahlberg) [1952263] - smb3.1.1: add new module load parm enable_gcm_256 (Ronnie Sahlberg) [1952263] - smb3.1.1: add new module load parm require_gcm_256 (Ronnie Sahlberg) [1952263] - cifs: map STATUS_ACCOUNT_LOCKED_OUT to -EACCES (Ronnie Sahlberg) [1952263] - SMB3.1.1: add defines for new signing negotiate context (Ronnie Sahlberg) [1952263] - Handle STATUS_IO_TIMEOUT gracefully (Ronnie Sahlberg) [1952263] - cifs: compute full_path already in cifs_readdir() (Ronnie Sahlberg) [1952263] - cifs: return cached_fid from open_shroot (Ronnie Sahlberg) [1952263] - update structure definitions from updated protocol documentation (Ronnie Sahlberg) [1952263] - smb3: add defines for new crypto algorithms (Ronnie Sahlberg) [1952263] - cifs: fix check of tcon dfs in smb1 (Ronnie Sahlberg) [1952263] - SMB3: Fix mkdir when idsfromsid configured on mount (Ronnie Sahlberg) [1952263] - cifs: Convert to use the fallthrough macro (Ronnie Sahlberg) [1952263] - cifs: Fix an error pointer dereference in cifs_mount() (Ronnie Sahlberg) [1952263] - cifs: document and cleanup dfs mount (Ronnie Sahlberg) [1952263] - cifs: only update prefix path of DFS links in cifs_tree_connect() (Ronnie Sahlberg) [1952263] - cifs: fix double free error on share and prefix (Ronnie Sahlberg) [1952263] - cifs: handle RESP_GET_DFS_REFERRAL.PathConsumed in reconnect (Ronnie Sahlberg) [1952263] - cifs: handle empty list of targets in cifs_reconnect() (Ronnie Sahlberg) [1952263] - cifs: rename reconn_inval_dfs_target() (Ronnie Sahlberg) [1952263] - cifs: reduce number of referral requests in DFS link lookups (Ronnie Sahlberg) [1952263] - cifs: merge __{cifs,smb2}_reconnect[_tcon]() into cifs_tree_connect() (Ronnie Sahlberg) [1952263] - cifs: convert to use be32_add_cpu() (Ronnie Sahlberg) [1952263] - cifs: delete duplicated words in header files (Ronnie Sahlberg) [1952263] - cifs: Remove the superfluous break (Ronnie Sahlberg) [1952263] - cifs: remove unused variable 'server' (Ronnie Sahlberg) [1952263] - smb3: warn on confusing error scenario with sec=krb5 (Ronnie Sahlberg) [1952263] - fuse: 32-bit user space ioctl compat for fuse device (Miklos Szeredi) [1949873] - virtiofs: Fail dax mount if device does not support it (Miklos Szeredi) [1949873] - fuse: fix live lock in fuse_iget() (Miklos Szeredi) [1949873] - mm/filemap: remove unused parameter and change to void type for replace_page_cache_page() (Miklos Szeredi) [1949873] - fuse: support SB_NOSEC flag to improve write performance (Miklos Szeredi) [1949873] - fuse: add a flag FUSE_OPEN_KILL_SUIDGID for open() request (Miklos Szeredi) [1949873] - fuse: don't send ATTR_MODE to kill suid/sgid for handle_killpriv_v2 (Miklos Szeredi) [1949873] - fuse: setattr should set FATTR_KILL_SUIDGID (Miklos Szeredi) [1949873] - fuse: set FUSE_WRITE_KILL_SUIDGID in cached write path (Miklos Szeredi) [1949873] - fuse: rename FUSE_WRITE_KILL_PRIV to FUSE_WRITE_KILL_SUIDGID (Miklos Szeredi) [1949873] - fuse: introduce the notion of FUSE_HANDLE_KILLPRIV_V2 (Miklos Szeredi) [1949873] - fuse: always revalidate if exclusive create (Miklos Szeredi) [1949873] - virtiofs: clean up error handling in virtio_fs_get_tree() (Miklos Szeredi) [1949873] - fuse: add fuse_sb_destroy() helper (Miklos Szeredi) [1949873] - fuse: simplify get_fuse_conn*() (Miklos Szeredi) [1949873] - fuse: get rid of fuse_mount refcount (Miklos Szeredi) [1949873] - virtiofs: simplify sb setup (Miklos Szeredi) [1949873] - virtiofs fix leak in setup (Miklos Szeredi) [1949873] - fuse: launder page should wait for page writeback (Miklos Szeredi) [1949873] - fuse: connection remove fix (Miklos Szeredi) [1949873] - fuse: implement crossmounts (Miklos Szeredi) [1949873] - fuse: Allow fuse_fill_super_common() for submounts (Miklos Szeredi) [1949873] - fuse: split fuse_mount off of fuse_conn (Miklos Szeredi) [1949873] - fuse: drop fuse_conn parameter where possible (Miklos Szeredi) [1949873] - fuse: store fuse_conn in fuse_req (Miklos Szeredi) [1949873] - fuse: add submount support to (Miklos Szeredi) [1949873] - fuse: fix page dereference after free (Miklos Szeredi) [1949873] - fuse: update project homepage (Miklos Szeredi) [1949873] - fuse: Fix parameter for FS_IOC_{GET,SET}FLAGS (Miklos Szeredi) [1949873] - fuse: don't ignore errors from fuse_writepages_fill() (Miklos Szeredi) [1949873] - fuse: clean up condition for writepage sending (Miklos Szeredi) [1949873] - fuse: fix warning in tree_insert() and clean up writepage insertion (Miklos Szeredi) [1949873] - fuse: move rb_erase() before tree_insert() (Miklos Szeredi) [1949873] - fuse: optimize writepages search (Miklos Szeredi) [1949873] - fuse: Update stale comment in queue_interrupt() (Miklos Szeredi) [1949873] - fuse: use true,false for bool variable (Miklos Szeredi) [1949873] - fuse: Add changelog entries for protocols 7.1 - 7.8 (Miklos Szeredi) [1949873] - fuse: reserve byteswapped init opcodes (Miklos Szeredi) [1949873] - convenience helper: get_tree_single() (finish backport) (Miklos Szeredi) [1949873] - fuse: Convert fusectl to use the new mount API (Miklos Szeredi) [1949873] - fuse: fix changelog entry for protocol 7.9 (Miklos Szeredi) [1949873] - fuse: fix changelog entry for protocol 7.12 (Miklos Szeredi) [1949873] - sfc: adjust efx->xdp_tx_queue_count with the real number of initialized queues (Íñigo Huguet) [1934254] - sfc: Remove duplicate argument (Íñigo Huguet) [1934254] - sfc: Use 'skb_add_rx_frag()' instead of hand coding it (Íñigo Huguet) [1934254] - sfc-falcon: Fix a typo (Íñigo Huguet) [1934254] - sfc: ef10: fix TX queue lookup in TX event handling (Íñigo Huguet) [1934254] - sfc: farch: fix TX queue lookup in TX event handling (Íñigo Huguet) [1934254] - sfc: farch: fix TX queue lookup in TX flush done handling (Íñigo Huguet) [1934254] - sfc: reduce the number of requested xdp ev queues (Íñigo Huguet) [1934254] - sfc: support GRE TSO on EF100 (Íñigo Huguet) [1934254] - sfc: correctly support non-partial GSO_UDP_TUNNEL_CSUM on EF100 (Íñigo Huguet) [1934254] - sfc: extend bitfield macros to 19 fields (Íñigo Huguet) [1934254] - sfc: advertise our vlan features (Íñigo Huguet) [1934254] - sfc: only use fixed-id if the skb asks for it (Íñigo Huguet) [1934254] - sfc: implement encap TSO on EF100 (Íñigo Huguet) [1934254] - sfc: extend bitfield macros to 17 fields (Íñigo Huguet) [1934254] - sfc: move initialisation of efx->filter_sem to efx_init_struct() (Íñigo Huguet) [1934254] - net: sfc: Use GFP_KERNEL in efx_ef10_try_update_nic_stats() (Íñigo Huguet) [1934254] - net: sfc: Replace in_interrupt() usage (Íñigo Huguet) [1934254] - sfc: clean up mis-targeted comments (Íñigo Huguet) [1934254] - sfc: fix kdoc warning (Íñigo Huguet) [1934254] - sfc: clean up unused assignments (Íñigo Huguet) [1934254] - sfc: advertise encapsulated offloads on EF10 (Íñigo Huguet) [1934254] - sfc: implement encapsulated TSO on EF10 (Íñigo Huguet) [1934254] - sfc: de-indirect TSO handling (Íñigo Huguet) [1934254] - sfc: select inner-csum-offload TX queues for skbs that need it (Íñigo Huguet) [1934254] - sfc: create inner-csum queues on EF10 if supported (Íñigo Huguet) [1934254] - sfc: define inner/outer csum offload TXQ types (Íñigo Huguet) [1934254] - sfc: decouple TXQ type from label (Íñigo Huguet) [1934254] - sfc: cleanups around efx_alloc_channel (Íñigo Huguet) [1934254] - sfc: remove spurious unreachable return statement (Íñigo Huguet) [1934254] - sfc: remove duplicate call to efx_init_channels from EF100 probe (Íñigo Huguet) [1934254] - sfc: coding style cleanups in mcdi_port_common.c (Íñigo Huguet) [1934254] - sfc: simplify DMA mask setting (Íñigo Huguet) [1934254] - sfc: remove EFX_DRIVER_VERSION (Íñigo Huguet) [1934254] - sfc: handle limited FEC support (Íñigo Huguet) [1934254] - sfc: add ethtool ops and miscellaneous ndos to EF100 (Íñigo Huguet) [1934254] - sfc: remove phy_op indirection (Íñigo Huguet) [1934254] - sfc: remove efx_tx_queue_partner (Íñigo Huguet) [1934254] - sfc: rewrite efx_tx_may_pio (Íñigo Huguet) [1934254] - sfc: use efx_channel_tx_[old_]fill_level() in Siena/EF10 TX datapath (Íñigo Huguet) [1934254] - sfc: use tx_queue->old_read_count in EF100 TX path (Íñigo Huguet) [1934254] - sfc: make ef100 xmit_more handling look more like ef10's (Íñigo Huguet) [1934254] - sfc: add and use efx_tx_send_pending in tx.c (Íñigo Huguet) [1934254] - sfc: return errors from efx_mcdi_set_id_led, and de-indirect (Íñigo Huguet) [1934254] - sfc: fix kernel-doc on struct efx_loopback_state (Íñigo Huguet) [1934254] - sfc: fix unused-but-set-variable warning in efx_farch_filter_remove_safe (Íñigo Huguet) [1934254] - sfc: fix W=1 warnings in efx_farch_handle_rx_not_ok (Íñigo Huguet) [1934254] - sfc: convert to new udp_tunnel infrastructure (Íñigo Huguet) [1934254] - net: don't warn in inet diag when IPV6 is disabled (Hangbin Liu) [1938639] - tcp: do not mess with cloned skbs in tcp_add_backlog() (Hangbin Liu) [1880432] - redhat: enable MHI bus driver support (Jarod Wilson) [1938030] - bus: mhi: core: Fix invalid error returning in mhi_queue (Jarod Wilson) [1938030] - bus: mhi: pci_generic: Remove WQ_MEM_RECLAIM flag from state workqueue (Jarod Wilson) [1938030] - bus: mhi: core: Fix check for syserr at power_up (Jarod Wilson) [1938030] - mhi: Fix double dma free (Jarod Wilson) [1938030] - bus: mhi: pci_generic: Increase num of elements in hw event ring (Jarod Wilson) [1938030] - mhi: pci_generic: Print warning in case of firmware crash (Jarod Wilson) [1938030] - bus: mhi: core: Add helper API to return number of free TREs (Jarod Wilson) [1938030] - mhi: core: Factorize mhi queuing (Jarod Wilson) [1938030] - mhi: use irq_flags if controller driver configures it (Jarod Wilson) [1938030] - mhi: pci_generic: Fix shared MSI vector support (Jarod Wilson) [1938030] - mhi: unconstify mhi_event_config (Jarod Wilson) [1938030] - bus: mhi: Ensure correct ring update ordering with memory barrier (Jarod Wilson) [1938030] - mhi: pci_generic: Set irq moderation value to 1ms for hw channels (Jarod Wilson) [1938030] - mhi: pci_generic: Add diag channels (Jarod Wilson) [1938030] - mhi: pci_generic: Increase controller timeout value (Jarod Wilson) [1938030] - mhi: pci_generic: Add health-check (Jarod Wilson) [1938030] - mhi: pci_generic: Add PCI error handlers (Jarod Wilson) [1938030] - mhi: pci_generic: Add suspend/resume/recovery procedure (Jarod Wilson) [1938030] - mhi: pci_generic: Add support for reset (Jarod Wilson) [1938030] - mhi: pci_generic: Enable burst mode for hardware channels (Jarod Wilson) [1938030] - mhi: pci-generic: Increase number of hardware events (Jarod Wilson) [1938030] - bus: mhi: core: Add device hardware reset support (Jarod Wilson) [1938030] - mhi: pci_generic: Fix implicit conversion warning (Jarod Wilson) [1938030] - bus: mhi: core: Fix error handling in mhi_register_controller() (Jarod Wilson) [1938030] - bus: mhi: core: Fix device hierarchy (Jarod Wilson) [1938030] - bus: mhi: core: Indexed MHI controller name (Jarod Wilson) [1938030] - bus: mhi: core: Remove MHI event ring IRQ handlers when powering down (Jarod Wilson) [1938030] - bus: mhi: core: Mark and maintain device states early on after power down (Jarod Wilson) [1938030] - bus: mhi: core: Separate system error and power down handling (Jarod Wilson) [1938030] - bus: mhi: core: Check for IRQ availability during registration (Jarod Wilson) [1938030] - bus: mhi: core: Move to an error state on mission mode failure (Jarod Wilson) [1938030] - bus: mhi: core: Use appropriate label in firmware load handler API (Jarod Wilson) [1938030] - bus: mhi: core: Move to an error state on any firmware load failure (Jarod Wilson) [1938030] - bus: mhi: core: Prevent sending multiple RDDM entry callbacks (Jarod Wilson) [1938030] - bus: mhi: core: Move to SYS_ERROR regardless of RDDM capability (Jarod Wilson) [1938030] - bus: mhi: core: Skip device wake in error or shutdown states (Jarod Wilson) [1938030] - bus: mhi: core: Move to using high priority workqueue (Jarod Wilson) [1938030] - bus: mhi: core: Use appropriate names for firmware load functions (Jarod Wilson) [1938030] - bus: mhi: core: Skip RDDM download for unknown execution environment (Jarod Wilson) [1938030] - bus: mhi: core: Rename RDDM download function to use proper words (Jarod Wilson) [1938030] - bus: mhi: core: Remove unused mhi_fw_load_worker() declaration (Jarod Wilson) [1938030] - bus: mhi: core: Expose mhi_get_exec_env() API for controllers (Jarod Wilson) [1938030] - bus: mhi: core: Add missing EXPORT_SYMBOL for mhi_get_mhi_state() (Jarod Wilson) [1938030] - bus: mhi: core: Remove unnecessary counter from mhi_firmware_copy() (Jarod Wilson) [1938030] - bus: mhi: Fix channel close issue on driver remove (Jarod Wilson) [1938030] - bus: mhi: core: Fix null pointer access when parsing MHI configuration (Jarod Wilson) [1938030] - bus: mhi: Add MHI PCI support for WWAN modems (Jarod Wilson) [1938030] - bus: mhi: core: fix potential operator-precedence with BHI macros (Jarod Wilson) [1938030] - bus: mhi: core: Remove double locking from mhi_driver_remove() (Jarod Wilson) [1938030] - bus: mhi: Remove auto-start option (Jarod Wilson) [1938030] - bus: mhi: Add mhi_queue_is_full function (Jarod Wilson) [1938030] - bus: mhi: debugfs: Print channel context read-pointer (Jarod Wilson) [1938030] - bus: mhi: core: Fix the building of MHI module (Jarod Wilson) [1938030] - bus: mhi: Remove unused nr_irqs_req variable (Jarod Wilson) [1938030] - bus: mhi: core: Allow shared IRQ for event rings (Jarod Wilson) [1938030] - bus: mhi: core: Introduce sysfs entries for MHI (Jarod Wilson) [1938030] - bus: mhi: core: Introduce debugfs entries for MHI (Jarod Wilson) [1938030] - bus: mhi: Fix entries based on Kconfig coding style (Jarod Wilson) [1938030] - bus: mhi: Remove include of rwlock_types.h (Jarod Wilson) [1938030] - bus: mhi: core: Add const qualifier to MHI config information (Jarod Wilson) [1938030] - bus: mhi: core: Introduce APIs to allocate and free the MHI controller (Jarod Wilson) [1938030] - bus: mhi: core: Read and save device hardware information from BHI (Jarod Wilson) [1938030] - bus: mhi: core: Introduce counters to track MHI device state transitions (Jarod Wilson) [1938030] - bus: mhi: core: Introduce helper function to check device state (Jarod Wilson) [1938030] - bus: mhi: core: Use generic name field for an MHI device (Jarod Wilson) [1938030] - bus: mhi: core: Trigger host resume if suspended during mhi_device_get() (Jarod Wilson) [1938030] - bus: mhi: core: Use helper API to trigger a non-blocking host resume (Jarod Wilson) [1938030] - bus: mhi: core: Abort suspends due to outgoing pending packets (Jarod Wilson) [1938030] - bus: mhi: core: Remove double occurrence for mhi_ctrl_ev_task() declaration (Jarod Wilson) [1938030] - bus: mhi: fix doubled words and struct image_info kernel-doc (Jarod Wilson) [1938030] - bus: mhi: core: Handle syserr during power_up (Jarod Wilson) [1938030] - bus: mhi: core: Handle write lock properly in mhi_pm_m0_transition (Jarod Wilson) [1938030] - bus: mhi: core: Do not process SYS_ERROR if RDDM is supported (Jarod Wilson) [1938030] - bus: mhi: core: Skip handling BHI irq if MHI reg access is not allowed (Jarod Wilson) [1938030] - bus: mhi: core: Handle disable transitions in state worker (Jarod Wilson) [1938030] - bus: mhi: core: Remove the system error worker thread (Jarod Wilson) [1938030] - bus: mhi: core: Ensure non-zero session or sequence ID values are used (Jarod Wilson) [1938030] - bus: mhi: core: Improve debug logs for loading firmware (Jarod Wilson) [1938030] - bus: mhi: core: Return appropriate error codes for AMSS load failure (Jarod Wilson) [1938030] - bus: mhi: core: Handle firmware load using state worker (Jarod Wilson) [1938030] - bus: mhi: core: Read transfer length from an event properly (Jarod Wilson) [1938030] - bus: mhi: core: Add range check for channel id received in event ring (Jarod Wilson) [1938030] - bus: mhi: core: Cache intmod from mhi event to mhi channel (Jarod Wilson) [1938030] - bus: mhi: core: Refactor mhi queue APIs (Jarod Wilson) [1938030] - bus: mhi: core: Fix some error return code (Jarod Wilson) [1938030] - bus: mhi: core: Fix channel device name conflict (Jarod Wilson) [1938030] - bus: mhi: core: Fix typo in comment (Jarod Wilson) [1938030] - bus: mhi: core: Offload register accesses to the controller (Jarod Wilson) [1938030] - bus: mhi: core: Remove link_status() callback (Jarod Wilson) [1938030] - bus: mhi: core: Make sure to powerdown if mhi_sync_power_up fails (Jarod Wilson) [1938030] - bus: mhi: Fix parsing of mhi_flags (Jarod Wilson) [1938030] - bus: mhi: core: Fix a NULL vs IS_ERR check in mhi_create_devices() (Jarod Wilson) [1938030] - bus: mhi: core: Add support for MHI suspend and resume (Jarod Wilson) [1938030] - bus: mhi: core: Drop the references to mhi_dev in mhi_destroy_device() (Jarod Wilson) [1938030] - bus: mhi: core: Initialize bhie field in mhi_cntrl for RDDM capture (Jarod Wilson) [1938030] - bus: mhi: core: Add support for reading MHI info from device (Jarod Wilson) [1938030] - bus: mhi: core: Pass module owner during client driver registration (Jarod Wilson) [1938030] - bus/mhi: fix printk format for size_t (Jarod Wilson) [1938030] - bus: mhi: core: Add uevent support for module autoloading (Jarod Wilson) [1938030] - bus: mhi: core: Add support for data transfer (Jarod Wilson) [1938030] - bus: mhi: core: Add support for processing events from client device (Jarod Wilson) [1938030] - bus: mhi: core: Add support for downloading RDDM image during panic (Jarod Wilson) [1938030] - bus: mhi: core: Add support for downloading firmware over BHIe (Jarod Wilson) [1938030] - bus: mhi: core: Add support for basic PM operations (Jarod Wilson) [1938030] - bus: mhi: core: Add support for PM state transitions (Jarod Wilson) [1938030] - bus: mhi: core: Add support for ringing channel/event ring doorbells (Jarod Wilson) [1938030] - bus: mhi: core: Add support for creating and destroying MHI devices (Jarod Wilson) [1938030] - bus: mhi: core: Add support for registering MHI client drivers (Jarod Wilson) [1938030] - bus: mhi: core: Add support for registering MHI controllers (Jarod Wilson) [1938030]- ipmi: remove open coded version of SMBus block write (Tony Camuso) [1947126] - char: ipmi: convert comma to semicolon (Tony Camuso) [1947126] - ipmi: msghandler: Suppress suspicious RCU usage warning (Tony Camuso) [1947126] - ipmi/watchdog: replace atomic_add() and atomic_sub() (Tony Camuso) [1947126] - char: ipmi: remove unneeded break (Tony Camuso) [1947126] - ipmi_si: Fix wrong return value in try_smi_init() (Tony Camuso) [1947126] - ipmi: msghandler: Fix a signedness bug (Tony Camuso) [1947126] - ipmi: add retry in try_get_dev_id() (Tony Camuso) [1947126] - ipmi: Clean up some printks (Tony Camuso) [1947126] - ipmi:msghandler: retry to get device id on an error (Tony Camuso) [1947126] - ipmi:sm: Print current state when the state is invalid (Tony Camuso) [1947126] - ipmi: Reset response handler when failing to send the command (Tony Camuso) [1947126] - ipmi: add a newline when printing parameter 'panic_op' by sysfs (Tony Camuso) [1947126] - cpuidle: Select polling interval based on a c-state with a longer target residency (Mark Langsdorf) [1922024] - cpuidle: big.LITTLE: enable driver only on Peach-Pit/Pi Chromebooks (Mark Langsdorf) [1922024] - cpuidle: record state entry rejection statistics (Mark Langsdorf) [1922024] - nitro_enclaves: Fix stale file descriptors on failed usercopy (Vitaly Kuznetsov) [1953717] - iavf: amend removal of MODULE_VERSION (Stefan Assmann) [1955738] - ixgbevf: Amend commit acf03026ec5a to include a version in module info. (Ken Cox) [1955764] - devlink: move flash end and begin to core devlink (Petr Oros) [1935671] - devlink: move request_firmware out of driver (Petr Oros) [1935671] - ice: add additional debug logging for firmware update (Petr Oros) [1935671] - ice: add support for flash update overwrite mask (Petr Oros) [1935671] - driver core: auxiliary bus: Fix calling stage for auxiliary bus init (Ivan Vecera) [1933820] - driver core: auxiliary bus: Fix auxiliary bus shutdown null auxdrv ptr (Ivan Vecera) [1933820] - driver core: auxiliary bus: minor coding style tweaks (Ivan Vecera) [1933820] - driver core: auxiliary bus: make remove function return void (Ivan Vecera) [1933820] - driver core: auxiliary bus: move slab.h from include file (Ivan Vecera) [1933820] - Add auxiliary bus support (Ivan Vecera) [1933820] - modpost: file2alias: go back to simple devtable lookup (Ivan Vecera) [1933820] - scsi: lpfc: Fix bad memory access during VPD DUMP mailbox command (Dick Kennedy) [1923762] - scsi: lpfc: Fix DMA virtual address ptr assignment in bsg (Dick Kennedy) [1923762] - scsi: lpfc: Fix illegal memory access on Abort IOCBs (Dick Kennedy) [1923762] - scsi: lpfc: Copyright updates for 12.8.0.9 patches (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.9 (Dick Kennedy) [1923762] - scsi: lpfc: Eliminate use of LPFC_DRIVER_NAME in lpfc_attr.c (Dick Kennedy) [1923762] - scsi: lpfc: Standardize discovery object logging format (Dick Kennedy) [1923762] - scsi: lpfc: Fix various trivial errors in comments and log messages (Dick Kennedy) [1923762] - scsi: lpfc: Remove unsupported mbox PORT_CAPABILITIES logic (Dick Kennedy) [1923762] - scsi: lpfc: Fix lpfc_hdw_queue attribute being ignored (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing FDMI registrations after Mgmt Svc login (Dick Kennedy) [1923762] - scsi: lpfc: Fix silent memory allocation failure in lpfc_sli4_bsg_link_diag_test() (Dick Kennedy) [1923762] - scsi: lpfc: Fix use-after-free on unused nodes after port swap (Dick Kennedy) [1923762] - scsi: lpfc: Fix error handling for mailboxes completed in MBX_POLL mode (Dick Kennedy) [1923762] - scsi: lpfc: Fix lack of device removal on port swaps with PRLIs (Dick Kennedy) [1923762] - scsi: lpfc: Fix NMI crash during rmmod due to circular hbalock dependency (Dick Kennedy) [1923762] - scsi: lpfc: Fix reference counting errors in lpfc_cmpl_els_rsp() (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when a REG_RPI mailbox fails triggering a LOGO response (Dick Kennedy) [1923762] - scsi: lpfc: Fix rmmod crash due to bad ring pointers to abort_iotag (Dick Kennedy) [1923762] - scsi: lpfc: Fix gcc -Wstringop-overread warning (Dick Kennedy) [1923762] - scsi: lpfc: Fix a typo (Dick Kennedy) [1923762] - scsi: lpfc: Fix a typo (Dick Kennedy) [1923762] - scsi: lpfc: Fix kernel-doc formatting issue (Dick Kennedy) [1923762] - scsi: lpfc: Fix a few incorrectly named functions (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrectly documented function lpfc_debugfs_commonxripools_data() (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of misnamed functions (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of kernel-doc misdemeanours (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrect naming of __lpfc_update_fcf_record() (Dick Kennedy) [1923762] - scsi: lpfc: Fix formatting and misspelling issues (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of kernel-doc issues (Dick Kennedy) [1923762] - scsi: lpfc: Update copyrights for 12.8.0.7 and 12.8.0.8 changes (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.8 (Dick Kennedy) [1923762] - scsi: lpfc: Correct function header comments related to ndlp reference counting (Dick Kennedy) [1923762] - scsi: lpfc: Reduce LOG_TRACE_EVENT logging for vports (Dick Kennedy) [1923762] - scsi: lpfc: Change wording of invalid pci reset log message (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash caused by switch reboot (Dick Kennedy) [1923762] - scsi: lpfc: Fix pt2pt state transition causing rmmod hang (Dick Kennedy) [1923762] - scsi: lpfc: Fix nodeinfo debugfs output (Dick Kennedy) [1923762] - scsi: lpfc: Fix ADISC handling that never frees nodes (Dick Kennedy) [1923762] - scsi: lpfc: Fix PLOGI ACC to be transmit after REG_LOGIN (Dick Kennedy) [1923762] - scsi: lpfc: Fix dropped FLOGI during pt2pt discovery recovery (Dick Kennedy) [1923762] - scsi: lpfc: Fix status returned in lpfc_els_retry() error exit path (Dick Kennedy) [1923762] - scsi: lpfc: Fix use after free in lpfc_els_free_iocb (Dick Kennedy) [1923762] - scsi: lpfc: Fix null pointer dereference in lpfc_prep_els_iocb() (Dick Kennedy) [1923762] - scsi: lpfc: Fix unnecessary null check in lpfc_release_scsi_buf (Dick Kennedy) [1923762] - scsi: lpfc: Fix pt2pt connection does not recover after LOGO (Dick Kennedy) [1923762] - scsi: lpfc: Fix lpfc_els_retry() possible null pointer dereference (Dick Kennedy) [1923762] - scsi: lpfc: Fix FLOGI failure due to accessing a freed node (Dick Kennedy) [1923762] - scsi: lpfc: Fix stale node accesses on stale RRQ request (Dick Kennedy) [1923762] - scsi: lpfc: Fix reftag generation sizing errors (Dick Kennedy) [1923762] - scsi: lpfc: Fix vport indices in lpfc_find_vport_by_vpid() (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrect dbde assignment when building target abts wqe (Dick Kennedy) [1923762] - scsi: lpfc: Fix 'physical' typos (Dick Kennedy) [1923762] - scsi: lpfc: Fix ancient double free (Dick Kennedy) [1923762] - scsi: lpfc: Fix kerneldoc inconsistency in lpfc_sli4_dump_page_a0() (Dick Kennedy) [1923762] - scsi: lpfc: Add support for eh_should_retry_cmd() (Dick Kennedy) [1923762] - scsi: lpfc: Simplify bool comparison (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.7 (Dick Kennedy) [1923762] - scsi: lpfc: Enhancements to LOG_TRACE_EVENT for better readability (Dick Kennedy) [1923762] - scsi: lpfc: Implement health checking when aborting I/O (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when nvmet transport calls host_release (Dick Kennedy) [1923762] - scsi: lpfc: Fix vport create logging (Dick Kennedy) [1923762] - scsi: lpfc: Fix NVMe recovery after mailbox timeout (Dick Kennedy) [1923762] - scsi: lpfc: Fix target reset failing (Dick Kennedy) [1923762] - scsi: lpfc: Fix error log messages being logged following SCSI task mgnt (Dick Kennedy) [1923762] - scsi: lpfc: Fix FW reset action if I/Os are outstanding (Dick Kennedy) [1923762] - scsi: lpfc: Use the nvme-fc transport supplied timeout for LS requests (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when a fabric node is released prematurely (Dick Kennedy) [1923762] - scsi: lpfc: Refresh ndlp when a new PRLI is received in the PRLI issue state (Dick Kennedy) [1923762] - scsi: lpfc: Fix auto sli_mode and its effect on CONFIG_PORT for SLI3 (Dick Kennedy) [1923762] - scsi: lpfc: Fix PLOGI S_ID of 0 on pt2pt config (Dick Kennedy) [1923762] - scsi: lpfc: Fix fall-through warnings for Clang (Dick Kennedy) [1923762] - scsi: lpfc: Correct null ndlp reference on routine exit (Dick Kennedy) [1923762] - scsi: lpfc: Use generic power management (Dick Kennedy) [1923762] - scsi: lpfc: Fix variable 'vport' set but not used in lpfc_sli4_abts_err_handler() (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing prototype for lpfc_nvmet_prep_abort_wqe() (Dick Kennedy) [1923762] - scsi: lpfc: Fix set but unused variables in lpfc_dev_loss_tmo_handler() (Dick Kennedy) [1923762] - scsi: lpfc: Fix set but not used warnings from Rework remote port lock handling (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing prototype warning for lpfc_fdmi_vendor_attr_mi() (Dick Kennedy) [1923762] - scsi: lpfc: Fix memory leak on lcb_context (Dick Kennedy) [1923762] - scsi: lpfc: Remove dead code on second !ndlp check (Dick Kennedy) [1923762] - scsi: lpfc: Fix pointer defereference before it is null checked issue (Dick Kennedy) [1923762] - scsi: lpfc: Update changed file copyrights for 2020 (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.6 (Dick Kennedy) [1923762] - scsi: lpfc: Convert abort handling to SLI-3 and SLI-4 handlers (Dick Kennedy) [1923762] - scsi: lpfc: Convert SCSI I/O completions to SLI-3 and SLI-4 handlers (Dick Kennedy) [1923762] - scsi: lpfc: Convert SCSI path to use common I/O submission path (Dick Kennedy) [1923762] - scsi: lpfc: Enable common send_io interface for SCSI and NVMe (Dick Kennedy) [1923762] - scsi: lpfc: Enable common wqe_template support for both SCSI and NVMe (Dick Kennedy) [1923762] - scsi: lpfc: Refactor WQE structure definitions for common use (Dick Kennedy) [1923762] - scsi: lpfc: Fix NPIV Fabric Node reference counting (Dick Kennedy) [1923762] - scsi: lpfc: Fix NPIV discovery and Fabric Node detection (Dick Kennedy) [1923762] - scsi: lpfc: Unsolicited ELS leaves node in incorrect state while dropping it (Dick Kennedy) [1923762] - scsi: lpfc: Remove ndlp when a PLOGI/ADISC/PRLI/REG_RPI ultimately fails (Dick Kennedy) [1923762] - scsi: lpfc: Rework remote port lock handling (Dick Kennedy) [1923762] - scsi: lpfc: Honor module parameter lpfc_use_adisc (Dick Kennedy) [1923762] - scsi: lpfc: Fix refcounting around SCSI and NVMe transport APIs (Dick Kennedy) [1923762] - scsi: lpfc: Fix removal of SCSI transport device get and put on dev structure (Dick Kennedy) [1923762] - scsi: lpfc: Rework locations of ndlp reference taking (Dick Kennedy) [1923762] - scsi: lpfc: Rework remote port ref counting and node freeing (Dick Kennedy) [1923762] - scsi: lpfc: remove ScsiResult macro (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvmet: Fix-up some formatting and doc-rot issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvme: Fix some kernel-doc related issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvme: Remove unused variable 'phba' (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_bsg: Provide correct documentation for a bunch of functions (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_debugfs: Fix a couple of function documentation issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_attr: Fix-up a bunch of kernel-doc misdemeanours (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_attr: Demote kernel-doc format for redefined functions (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_scsi: Fix a whole host of kernel-doc issues (Dick Kennedy) [1923762] - block: return -EBUSY when there are open partitions in blkdev_reread_part (Ming Lei) [1936800] - block: Try to handle busy underlying device on discard (Ming Lei) [1936800] - md: check for NULL ->meta_bdev before calling bdev_read_only (Ming Lei) [1936800] - blk-settings: align max_sectors on "logical_block_size" boundary (Ming Lei) [1936800] - nbd: handle device refs for DESTROY_ON_DISCONNECT properly (Ming Lei) [1936800] - kyber: introduce kyber_depth_updated() (Ming Lei) [1936800] - loop: fix I/O error on fsync() in detached loop devices (Ming Lei) [1936800] - block: fix potential IO hang when turning off io_poll (Ming Lei) [1936800] - bfq: Use only idle IO periods for think time calculations (Ming Lei) [1936800] - bfq: Use 'ttime' local variable (Ming Lei) [1936800] - bfq: Avoid false bfq queue merging (Ming Lei) [1936800] - bfq: bfq_check_waker() should be static (Ming Lei) [1936800] - block, bfq: make waker-queue detection more robust (Ming Lei) [1936800] - block, bfq: save also injection state on queue merging (Ming Lei) [1936800] - block, bfq: save also weight-raised service on queue merging (Ming Lei) [1936800] - block, bfq: fix switch back from soft-rt weitgh-raising (Ming Lei) [1936800] - block, bfq: re-evaluate convenience of I/O plugging on rq arrivals (Ming Lei) [1936800] - block, bfq: replace mechanism for evaluating I/O intensity (Ming Lei) [1936800] - block: set .bi_max_vecs as actual allocated vector number (Ming Lei) [1936800] - block: don't allocate inline bvecs if this bioset needn't bvecs (Ming Lei) [1936800] - block: don't pass BIOSET_NEED_BVECS for q->bio_split (Ming Lei) [1936800] - block: manage bio slab cache by xarray (Ming Lei) [1936800] - block, bfq: do not expire a queue when it is the only busy one (Ming Lei) [1936800] - block, bfq: avoid spurious switches to soft_rt of interactive queues (Ming Lei) [1936800] - block, bfq: do not raise non-default weights (Ming Lei) [1936800] - block, bfq: increase time window for waker detection (Ming Lei) [1936800] - block, bfq: use half slice_idle as a threshold to check short ttime (Ming Lei) [1936800] - brd: remove the end of device check in brd_do_bvec (Ming Lei) [1936800] - block: propagate BLKROSET on the whole device to all partitions (Ming Lei) [1936800] - block: add a hard-readonly flag to struct gendisk (Ming Lei) [1936800] - block: remove the NULL bdev check in bdev_read_only (Ming Lei) [1936800] - dm: use bdev_read_only to check if a device is read-only (Ming Lei) [1936800] - block: reopen the device in blkdev_reread_part (Ming Lei) [1936800] - block, bfq: set next_rq to waker_bfqq->next_rq in waker injection (Ming Lei) [1936800] - Revert "block: simplify set_init_blocksize" to regain lost performance (Ming Lei) [1936800] - bfq-iosched: Revert "bfq: Fix computation of shallow depth" (Ming Lei) [1936800] - blk-mq-debugfs: Add decode for BLK_MQ_F_TAG_HCTX_SHARED (Ming Lei) [1936800] - bfq: Fix computation of shallow depth (Ming Lei) [1936800] - block: rsxx: select CONFIG_CRC32 (Ming Lei) [1936800] - block: add debugfs stanza for QUEUE_FLAG_NOWAIT (Ming Lei) [1936800] - blk-mq: Don't complete on a remote CPU in force threaded mode (Ming Lei) [1936800] - blk-mq: Remove 'running from the wrong CPU' warning (Ming Lei) [1936800] - block: disable iopoll for split bio (Ming Lei) [1936800] - block: Improve blk_revalidate_disk_zones() checks (Ming Lei) [1936800] - sbitmap: replace CAS with atomic and (Ming Lei) [1936800] - sbitmap: remove swap_lock (Ming Lei) [1936800] - sbitmap: optimise sbitmap_deferred_clear() (Ming Lei) [1936800] - blk-mq: skip hybrid polling if iopoll doesn't spin (Ming Lei) [1936800] - blktrace: fix up a kerneldoc comment (Ming Lei) [1936800] - block: remove the unused block_sleeprq tracepoint (Ming Lei) [1936800] - blk-throttle: don't check whether or not lower limit is valid if CONFIG_BLK_DEV_THROTTLING_LOW is off (Ming Lei) [1936800] - block: fix inflight statistics of part0 (Ming Lei) [1936800] - block: optimise for_each_bvec() advance (Ming Lei) [1936800] - block: opencode devcgroup_inode_permission (Ming Lei) [1936800] - block: move bdput() to the callers of __blkdev_get (Ming Lei) [1936800] - block: refactor blkdev_get (Ming Lei) [1936800] - block: refactor __blkdev_put (Ming Lei) [1936800] - block: switch bdgrab to use igrab (Ming Lei) [1936800] - block: change the hash used for looking up block devices (Ming Lei) [1936800] - block: use put_device in put_disk (Ming Lei) [1936800] - block: use disk_part_iter_exit in disk_part_iter_next (Ming Lei) [1936800] - block: add a bdev_kobj helper (Ming Lei) [1936800] - block: remove a superflous check in blkpg_do_ioctl (Ming Lei) [1936800] - block: remove a duplicate __disk_get_part prototype (Ming Lei) [1936800] - loop: do not call set_blocksize (Ming Lei) [1936800] - zram: do not call set_blocksize (Ming Lei) [1936800] - block: wbt: Remove unnecessary invoking of wbt_update_limits in wbt_init (Ming Lei) [1936800] - virtio-blk: remove a spurious call to revalidate_disk_size (Ming Lei) [1936800] - md: remove a spurious call to revalidate_disk_size in update_size (Ming Lei) [1936800] - aoe: don't call set_capacity from irq context (Ming Lei) [1936800] - nbd: validate the block size in nbd_set_size (Ming Lei) [1936800] - nbd: refactor size updates (Ming Lei) [1936800] - nbd: move the task_recv check into nbd_size_update (Ming Lei) [1936800] - nbd: remove the call to set_blocksize (Ming Lei) [1936800] - loop: let set_capacity_revalidate_and_notify update the bdev size (Ming Lei) [1936800] - block: remove the call to __invalidate_device in check_disk_size_change (Ming Lei) [1936800] - block: fix the kerneldoc comment for __register_blkdev (Ming Lei) [1936800] - block: switch gendisk lookup to a simple xarray (Ming Lei) [1936800] - ide: switch to __register_blkdev for command set probing (Ming Lei) [1936800] - md: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - loop: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - brd: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - sd: use __register_blkdev to avoid a modprobe for an unregistered dev_t (Ming Lei) [1936800] - swim: don't call blk_register_region (Ming Lei) [1936800] - ide: remove ide_{,un}register_region (Ming Lei) [1936800] - block: add an optional probe callback to major_names (Ming Lei) [1936800] - block: rework requesting modules for unclaimed devices (Ming Lei) [1936800] - block: split block_class_lock (Ming Lei) [1936800] - block: open code kobj_map into in block/genhd.c (Ming Lei) [1936800] - block: cleanup del_gendisk a bit (Ming Lei) [1936800] - loop: use set_disk_ro (Ming Lei) [1936800] - dasd: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - md: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - rbd: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - block: add a new set_read_only method (Ming Lei) [1936800] - blk-cgroup: fix a hd_struct leak in blkcg_fill_root_iostats (Ming Lei) [1936800] - blk-cgroup: Pre-allocate tree node on blkg_conf_prep (Ming Lei) [1936800] - blk-cgroup: Fix memleak on error path (Ming Lei) [1936800] - blk-mq: remove the calling of local_memory_node() (Ming Lei) [1936800] - zram: Fix __zram_bvec_{read,write}() locking order (Ming Lei) [1936800] - skd_main: remove unused including (Ming Lei) [1936800] - sgl_alloc_order: fix memory leak (Ming Lei) [1936800] - block: fix uapi blkzoned.h comments (Ming Lei) [1936800] - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue (Ming Lei) [1936800] - blk-mq: get rid of the dead flush handle code path (Ming Lei) [1936800] - block: get rid of unnecessary local variable (Ming Lei) [1936800] - block: fix comment and add lockdep assert (Ming Lei) [1936800] - blk-mq: use helper function to test hw stopped (Ming Lei) [1936800] - block: use helper function to test queue register (Ming Lei) [1936800] - block: remove redundant mq check (Ming Lei) [1936800] - block: invoke blk_mq_exit_sched no matter whether have .exit_sched (Ming Lei) [1936800] - block: ratelimit handle_bad_sector() message (Ming Lei) [1936800] - blk-throttle: Re-use the throtl_set_slice_end() (Ming Lei) [1936800] - blk-throttle: Open code __throtl_de/enqueue_tg() (Ming Lei) [1936800] - blk-throttle: Move service tree validation out of the throtl_rb_first() (Ming Lei) [1936800] - blk-throttle: Move the list operation after list validation (Ming Lei) [1936800] - blk-throttle: Fix IO hang for a corner case (Ming Lei) [1936800] - blk-throttle: Avoid tracking latency if low limit is invalid (Ming Lei) [1936800] - blk-throttle: Avoid getting the current time if tg->last_finish_time is 0 (Ming Lei) [1936800] - blk-throttle: Remove a meaningless parameter for throtl_downgrade_state() (Ming Lei) [1936800] - block: Remove redundant 'return' statement (Ming Lei) [1936800] - block: Consider only dispatched requests for inflight statistic (Ming Lei) [1936800] - block: remove the unused blk_integrity_merge_bio export (Ming Lei) [1936800] - block: remove the unused blk_integrity_merge_rq export (Ming Lei) [1936800] - blk-mq: add cond_resched() in __blk_mq_alloc_rq_maps() (Ming Lei) [1936800] - vsprintf: use bd_partno in bdev_name (Ming Lei) [1936800] - block: use bd_partno in bdevname (Ming Lei) [1936800] - target/iblock: fix holder printing in iblock_show_configfs_dev_params (Ming Lei) [1936800] - drbd: don't set ->bd_contains (Ming Lei) [1936800] - drbd: don't detour through bd_contains for the gendisk (Ming Lei) [1936800] - block: add a bdev_is_partition helper (Ming Lei) [1936800] - bdi: remove BDI_CAP_CGROUP_WRITEBACK (Ming Lei) [1936800] - block: lift setting the readahead size into the block layer (Ming Lei) [1936800] - bdi: initialize ->ra_pages and ->io_pages in bdi_init (Ming Lei) [1936800] - block: ensure bdi->io_pages is always initialized (Ming Lei) [1936800] - aoe: set an optimal I/O size (Ming Lei) [1936800] - drbd: remove dead code in device_to_statistics (Ming Lei) [1936800] - raw: don't keep unopened block device around (Ming Lei) [1936800] - zram: cleanup backing_dev_store (Ming Lei) [1936800] - zram: fix double free backing device (Ming Lei) [1936800] - pktcdvd: use blkdev_get_by_dev instead of open coding it (Ming Lei) [1936800] - pktcdvd: remove the if 0'ed pkt_start_recovery function (Ming Lei) [1936800] - block: cleanup blkdev_bszset (Ming Lei) [1936800] - block: move the NEED_PART_SCAN flag to struct gendisk (Ming Lei) [1936800] - block: drop double zeroing (Ming Lei) [1936800] - blk-throttle: Avoid checking bps/iops limitation if bps or iops is unlimited (Ming Lei) [1936800] - blk-throttle: Avoid calculating bps/iops limitation repeatedly (Ming Lei) [1936800] - blk-throttle: Define readable macros instead of static variables (Ming Lei) [1936800] - blk-throttle: Use readable READ/WRITE macros (Ming Lei) [1936800] - blk-throttle: Fix some comments' typos (Ming Lei) [1936800] - block: introduce part_[begin|end]_io_acct (Ming Lei) [1936800] - blkcg: add plugging support for punt bio (Ming Lei) [1936800] - block: remove check_disk_change (Ming Lei) [1936800] - sr: simplify sr_block_revalidate_disk (Ming Lei) [1936800] - sr: use bdev_check_media_change (Ming Lei) [1936800] - sd: use bdev_check_media_change (Ming Lei) [1936800] - md: use bdev_check_media_change (Ming Lei) [1936800] - gdrom: use bdev_check_media_change (Ming Lei) [1936800] - paride/pcd: use bdev_check_media_change (Ming Lei) [1936800] - xsysace: simplify media change handling (Ming Lei) [1936800] - xsysace: use bdev_check_media_change (Ming Lei) [1936800] - swim3: use bdev_check_media_changed (Ming Lei) [1936800] - swim: simplify media change handling (Ming Lei) [1936800] - swim: use bdev_check_media_change (Ming Lei) [1936800] - ataflop: use bdev_check_media_change (Ming Lei) [1936800] - amiflop: use bdev_check_media_change (Ming Lei) [1936800] - block: add a bdev_check_media_change helper (Ming Lei) [1936800] - block: Remove unused blk_mq_sched_free_hctx_data() (Ming Lei) [1936800] - block: Do not discard buffers under a mounted filesystem (Ming Lei) [1936800] - fs: Don't invalidate page buffers in block_write_full_page() (Ming Lei) [1936800] - block: remove revalidate_disk() (Ming Lei) [1936800] - nvdimm: simplify revalidate_disk handling (Ming Lei) [1936800] - sd: open code revalidate_disk (Ming Lei) [1936800] - nvme: opencode revalidate_disk in nvme_validate_ns (Ming Lei) [1936800] - block: use revalidate_disk_size in set_capacity_revalidate_and_notify (Ming Lei) [1936800] - block: add a new revalidate_disk_size helper (Ming Lei) [1936800] - block: rename bd_invalidated (Ming Lei) [1936800] - block: don't clear bd_invalidated in check_disk_size_change (Ming Lei) [1936800] - block: better deal with the delayed not supported case in blk_cloned_rq_check_limits (Ming Lei) [1936800] - block: Return blk_status_t instead of errno codes (Ming Lei) [1936800] - block: grant IOPRIO_CLASS_RT to CAP_SYS_NICE (Ming Lei) [1936800] - block: remove the unused q argument to part_in_flight and part_in_flight_rw (Ming Lei) [1936800] - block: remove the disk argument to delete_partition (Ming Lei) [1936800] - block: move the devcgroup_inode_permission call to blkdev_get (Ming Lei) [1936800] - blk-mq: use BLK_MQ_NO_TAG for no tag (Ming Lei) [1936800] - block: Move blk_mq_bio_list_merge() into blk-merge.c (Ming Lei) [1936800] - block: Move bio merge related functions into blk-merge.c (Ming Lei) [1936800] - blk-wbt: Remove obsolete multiqueue I/O scheduling comment (Ming Lei) [1936800] - raw: deprecate the raw driver (Ming Lei) [1936800] - nvme: don't call revalidate_disk from nvme_set_queue_dying (Ming Lei) [1936800] - block: fix locking for struct block_device size updates (Ming Lei) [1936800] - block: replace bd_set_size with bd_set_nr_sectors (Ming Lei) [1936800] - block: Make request_queue.rpm_status an enum (Ming Lei) [1936800] - mmc: remove the call to check_disk_change (Ming Lei) [1936800] - block: integrate bd_start_claiming into __blkdev_get (Ming Lei) [1936800] - block: use bd_prepare_to_claim directly in the loop driver (Ming Lei) [1936800] - block: refactor bd_start_claiming (Ming Lei) [1936800] - block: simplify the restart case in __blkdev_get (Ming Lei) [1936800] - block: simplify set_init_blocksize (Ming Lei) [1936800] - block: remove flush_disk (Ming Lei) [1936800] - block: move block-related definitions out of fs.h (Ming Lei) [1936800] - xen-blkfront.c: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1936800]- redhat/configs: Add CONFIG_PINCTRL_EMMITSBURG (David Arcari) [1959506] - redhat/configs: Remove CONFIG_EMMITSBURG (David Arcari) [1959506] - fuse: fix write deadlock (Miklos Szeredi) [1904597] - sched/debug: Fix cgroup_path[] serialization (Waiman Long) [1954363] - KVM: x86/xen: Take srcu lock when accessing kvm_memslots() (Paolo Bonzini) [1945742] - KVM: SVM: Allocate SEV command structures on local stack (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack and common buffer for INIT command (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack and common buffer for status commands (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack for small SEV command buffers (Paolo Bonzini) [1945742] - crypto: ccp: Play nice with vmalloc'd memory for SEV command structs (Paolo Bonzini) [1945742] - crypto: ccp: Reject SEV commands with mismatching command buffer (Paolo Bonzini) [1945742] - crypto: ccp: Detect and reject "invalid" addresses destined for PSP (Paolo Bonzini) [1945742] - crypto: ccp: Free SEV device if SEV init fails (Paolo Bonzini) [1945742] - crypto: ccp - Fix sparse warnings in sev-dev (Paolo Bonzini) [1945742] - drivers/crypto/ccp/sev-dev.c: get rid of pointless access_ok() (Paolo Bonzini) [1945742] - crypto: ccp - Add support for SEV-ES to the PSP driver (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_RECEIVE_FINISH command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_RECEIVE_UPDATE_DATA command (Paolo Bonzini) [1945742] - KVM: SVM: Add support for KVM_SEV_RECEIVE_START command (Paolo Bonzini) [1945742] - KVM: SVM: Add support for KVM_SEV_SEND_CANCEL command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_SEND_FINISH command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEND_UPDATE_DATA command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV SEND_START command (Paolo Bonzini) [1945742] - KVM: Boost vCPU candidate in user mode which is delivering interrupt (Paolo Bonzini) [1945742] - nSVM: Check addresses of MSR and IO permission maps (Paolo Bonzini) [1945742] - KVM: SVM: Define actual size of IOPM and MSRPM tables (Paolo Bonzini) [1945742] - KVM: vmx: add mismatched size assertions in vmcs_check32() (Paolo Bonzini) [1945742] - KVM: Add proper lockdep assertion in I/O bus unregister (Paolo Bonzini) [1945742] - KVM: Stop looking for coalesced MMIO zones if the bus is destroyed (Paolo Bonzini) [1945742] - KVM: Destroy I/O bus devices on unregister failure _after_ sync'ing SRCU (Paolo Bonzini) [1945742] - KVM: SVM: Enhance and clean up the vmcb tracking comment in pre_svm_run() (Paolo Bonzini) [1945742] - KVM: SVM: Add a comment to clarify what vcpu_svm.vmcb points at (Paolo Bonzini) [1945742] - KVM: SVM: Drop vcpu_svm.vmcb_pa (Paolo Bonzini) [1945742] - KVM: SVM: Don't set current_vmcb->cpu when switching vmcb (Paolo Bonzini) [1945742] - KVM: SVM: Make sure GHCB is mapped before updating (Paolo Bonzini) [1945742] - KVM: X86: Do not yield to self (Paolo Bonzini) [1945742] - KVM: X86: Count attempted/successful directed yield (Paolo Bonzini) [1945742] - KVM: x86/mmu: Protect the tdp_mmu_roots list with RCU (Paolo Bonzini) [1945742] - KVM: x86/mmu: handle cmpxchg failure in kvm_tdp_mmu_get_root (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make TDP MMU root refcount atomic (Paolo Bonzini) [1945742] - KVM: x86: implement KVM_CAP_SET_GUEST_DEBUG2 (Paolo Bonzini) [1945742] - KVM: x86/mmu: Refactor yield safe root iterator (Paolo Bonzini) [1945742] - KVM: x86/mmu: Merge TDP MMU put and free root (Paolo Bonzini) [1945742] - KVM: x86/mmu: use tdp_mmu_free_sp to free roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move kvm_mmu_(get|put)_root to TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Re-add const qualifier in kvm_tdp_mmu_zap_collapsible_sptes (Paolo Bonzini) [1945742] - KVM: constify kvm_arch_flush_remote_tlbs_memslot (Paolo Bonzini) [1945742] - KVM: Explicitly use GFP_KERNEL_ACCOUNT for 'struct kvm_vcpu' allocations (Paolo Bonzini) [1945742] - KVM: MMU: protect TDP MMU pages only down to required level (Paolo Bonzini) [1945742] - KVM: introduce KVM_CAP_SET_GUEST_DEBUG2 (Paolo Bonzini) [1945742] - KVM: x86: pending exceptions must not be blocked by an injected event (Paolo Bonzini) [1945742] - KVM: nSVM: call nested_svm_load_cr3 on nested state load (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should include the autoload/autostore MSR lists (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should show the effective EFER (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should consider only the load controls of EFER/PAT (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should not conflate EFER and PAT presence in VMCS (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should not assume GUEST_IA32_EFER is valid (Paolo Bonzini) [1945742] - KVM: nSVM: improve SYSENTER emulation on AMD (Paolo Bonzini) [1945742] - KVM: x86: add guest_cpuid_is_intel (Paolo Bonzini) [1945742] - KVM: x86: Account a variety of miscellaneous allocations (Paolo Bonzini) [1945742] - KVM: SVM: Do not allow SEV/SEV-ES initialization after vCPUs are created (Paolo Bonzini) [1945742] - KVM: SVM: Do not set sev->es_active until KVM_SEV_ES_INIT completes (Paolo Bonzini) [1945742] - KVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Simplify code for aging SPTEs in TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove spurious clearing of dirty bit from TDP MMU SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use leaf-only loop for walking TDP SPTEs when changing SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass address space ID to TDP MMU root walkers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass address space ID to __kvm_tdp_mmu_zap_gfn_range() (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TLB flushes across address spaces for gfn range zap (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TLB flushes when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move flushing for "slot" handlers to caller for legacy MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TDP MMU TLB flushes when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/vPMU: Forbid reading from MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE (Paolo Bonzini) [1945742] - KVM: nSVM: If VMRUN is single-stepped, queue the #DB intercept in nested_svm_vmexit() (Paolo Bonzini) [1945742] - KVM: MMU: load PDPTRs outside mmu_lock (Paolo Bonzini) [1945742] - KVM: SVM: ensure that EFER.SVME is set when running nested guest or on nested vmexit (Paolo Bonzini) [1945742] - KVM: SVM: load control fields from VMCB12 before checking them (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't allow TDP MMU to yield when recovering NX pages (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure TLBs are flushed when yielding during GFN range zap (Paolo Bonzini) [1945742] - KVM: make: Fix out-of-source module builds (Paolo Bonzini) [1945742] - KVM: x86/vPMU: Forbid writing to MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE (Paolo Bonzini) [1945742] - KVM: x86: remove unused declaration of kvm_write_tsc() (Paolo Bonzini) [1945742] - KVM: clean up the unused argument (Paolo Bonzini) [1945742] - x86/kvm: Fix broken irq restoration in kvm_wait (Paolo Bonzini) [1945742] - KVM: X86: Fix missing local pCPU when executing wbinvd on all dirty pCPUs (Paolo Bonzini) [1945742] - KVM: x86: Protect userspace MSR filter with SRCU, and set atomically-ish (Paolo Bonzini) [1945742] - KVM: x86/mmu: Store the address space ID in the TDP iterator (Paolo Bonzini) [1945742] - KVM: x86/mmu: Factor out tdp_iter_return_to_root (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix RCU usage when atomically zapping SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix RCU usage in handle_removed_tdp_mmu_page (Paolo Bonzini) [1945742] - KVM: x86/mmu: Mark the PAE roots as decrypted for shadow paging (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use '0' as the one and only value for an invalid PAE root (Paolo Bonzini) [1945742] - KVM: VMX: Track root HPA instead of EPTP for paravirt Hyper-V TLB flush (Paolo Bonzini) [1945742] - KVM: VMX: Skip additional Hyper-V TLB EPTP flushes if one fails (Paolo Bonzini) [1945742] - KVM: VMX: Define Hyper-V paravirt TLB flush fields iff Hyper-V is enabled (Paolo Bonzini) [1945742] - KVM: VMX: Explicitly check for hv_remote_flush_tlb when loading pgd (Paolo Bonzini) [1945742] - KVM: VMX: Don't invalidate hv_tlb_eptp if the new EPTP matches (Paolo Bonzini) [1945742] - KVM: VMX: Invalidate hv_tlb_eptp to denote an EPTP mismatch (Paolo Bonzini) [1945742] - KVM: VMX: Do Hyper-V TLB flush iff vCPU's EPTP hasn't been flushed (Paolo Bonzini) [1945742] - KVM: VMX: Fold Hyper-V EPTP checking into it's only caller (Paolo Bonzini) [1945742] - KVM: VMX: Stash kvm_vmx in a local variable for Hyper-V paravirt TLB flush (Paolo Bonzini) [1945742] - KVM: VMX: Track common EPTP for Hyper-V's paravirt TLB flush (Paolo Bonzini) [1945742] - KVM: x86: Get active PCID only when writing a CR3 value (Paolo Bonzini) [1945742] - KVM/SVM: Move vmenter.S exception fixups out of line (Paolo Bonzini) [1945742] - KVM: x86/mmu: Dump reserved bits if they're detected on non-MMIO SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use low available bits for removed SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use is_removed_spte() instead of open coded equivalents (Paolo Bonzini) [1945742] - KVM: x86/mmu: Tweak auditing WARN for A/D bits to !PRESENT (was MMIO) (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use a dedicated bit to track shadow/MMU-present SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use high bits for host/mmu writable masks for EPT SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make Host-writable and MMU-writable bit locations dynamic (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move logic for setting SPTE masks for EPT into the MMU proper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Co-locate code for setting various SPTE masks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move initial kvm_mmu_set_mask_ptes() call into MMU proper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Document dependency bewteen TDP A/D type and saved bits (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use MMIO SPTE bits 53 and 52 for the MMIO generation (Paolo Bonzini) [1945742] - KVM: x86/mmu: Rename and document A/D scheme for TDP SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add module param to disable MMIO caching (for testing) (Paolo Bonzini) [1945742] - KVM: x86/mmu: Stop using software available bits to denote MMIO SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Rename 'mask' to 'spte' in MMIO SPTE helpers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Drop redundant trace_kvm_mmu_set_spte() in the TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Handle MMIO SPTEs directly in mmu_set_spte() (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't install bogus MMIO SPTEs if MMIO caching is disabled (Paolo Bonzini) [1945742] - KVM: x86/mmu: Retry page faults that hit an invalid memslot (Paolo Bonzini) [1945742] - KVM: x86/mmu: Disable MMIO caching if MMIO value collides with L1TF (Paolo Bonzini) [1945742] - KVM: x86/mmu: Bail from fast_page_fault() if SPTE is not shadow-present (Paolo Bonzini) [1945742] - KVM: x86/mmu: Check for shadow-present SPTE before querying A/D status (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add convenience wrapper for acting on single hva in TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add typedefs for rmap/iter handlers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use 'end' param in TDP MMU's test_age_gfn() (Paolo Bonzini) [1945742] - KVM: x86/mmu: WARN if TDP MMU's set_tdp_spte() sees multiple GFNs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove spurious TLB flush from TDP MMU's change_pte() hook (Paolo Bonzini) [1945742] - KVM: x86: mmu: initialize fault.async_page_fault in walk_addr_generic (Paolo Bonzini) [1945742] - KVM: x86: determine if an exception has an error code only when injecting it. (Paolo Bonzini) [1945742] - KVM: nSVM: Optimize vmcb12 to vmcb02 save area copies (Paolo Bonzini) [1945742] - KVM: SVM: Add support for Virtual SPEC_CTRL (Paolo Bonzini) [1945742] - x86/cpufeatures: Add the Virtual SPEC_CTRL feature (Paolo Bonzini) [1945742] - KVM: nSVM: always use vmcb01 to for vmsave/vmload of guest state (Paolo Bonzini) [1945742] - KVM: SVM: move VMLOAD/VMSAVE to C code (Paolo Bonzini) [1945742] - KVM: SVM: Skip intercepted PAUSE instructions after emulation (Paolo Bonzini) [1945742] - KVM: SVM: Don't manually emulate RDPMC if nrips=0 (Paolo Bonzini) [1945742] - KVM: x86: Move RDPMC emulation to common code (Paolo Bonzini) [1945742] - KVM: x86: Move trivial instruction-based exit handlers to common code (Paolo Bonzini) [1945742] - KVM: x86: Move XSETBV emulation to common code (Paolo Bonzini) [1945742] - KVM: nSVM: Add VMLOAD/VMSAVE helper to deduplicate code (Paolo Bonzini) [1945742] - KVM: nSVM: Add helper to synthesize nested VM-Exit without collateral (Paolo Bonzini) [1945742] - KVM: x86: Handle triple fault in L2 without killing L1 (Paolo Bonzini) [1945742] - KVM: SVM: Pass struct kvm_vcpu to exit handlers (and many, many other places) (Paolo Bonzini) [1945742] - KVM: SVM: merge update_cr0_intercept into svm_set_cr0 (Paolo Bonzini) [1945742] - KVM: nSVM: Trace VM-Enter consistency check failures (Paolo Bonzini) [1945742] - KVM: x86: Move nVMX's consistency check macro to common code (Paolo Bonzini) [1945742] - KVM: nSVM: Add missing checks for reserved bits to svm_set_nested_state() (Paolo Bonzini) [1945742] - KVM: nSVM: only copy L1 non-VMLOAD/VMSAVE data in svm_set_nested_state() (Paolo Bonzini) [1945742] - KVM: nSVM: do not mark all VMCB02 fields dirty on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: do not mark all VMCB01 fields dirty on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: do not copy vmcb01->control blindly to vmcb02->control (Paolo Bonzini) [1945742] - KVM: nSVM: rename functions and variables according to vmcbXY nomenclature (Paolo Bonzini) [1945742] - KVM: nSVM: Track the ASID generation of the vmcb vmrun through the vmcb (Paolo Bonzini) [1945742] - KVM: nSVM: Track the physical cpu of the vmcb vmrun through the vmcb (Paolo Bonzini) [1945742] - KVM: SVM: Use a separate vmcb for the nested L2 guest (Paolo Bonzini) [1945742] - KVM: nSVM: Set the shadow root level to the TDP level for nested NPT (Paolo Bonzini) [1945742] - KVM: SVM: Don't strip the C-bit from CR2 on #PF interception (Paolo Bonzini) [1945742] - KVM: x86/mmu: WARN on NULL pae_root or lm_root, or bad shadow root level (Paolo Bonzini) [1945742] - KVM: x86/mmu: Sync roots after MMU load iff load as successful (Paolo Bonzini) [1945742] - KVM: x86/mmu: Unexport MMU load/unload functions (Paolo Bonzini) [1945742] - KVM: x86: Defer the MMU unload to the normal path on an global INVPCID (Paolo Bonzini) [1945742] - KVM: nVMX: Defer the MMU reload to the normal path on an EPTP switch (Paolo Bonzini) [1945742] - KVM: x86/mmu: Set the C-bit in the PDPTRs and LM pseudo-PDPTRs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix and unconditionally enable WARNs to detect PAE leaks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Check PDPTRs before allocating PAE roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure MMU pages are available when allocating roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Allocate pae_root and lm_root pages in dedicated helper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Allocate the lm_root before allocating PAE roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Capture 'mmu' in a local variable when allocating roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Alloc page for PDPTEs when shadowing 32-bit NPT with 64-bit (Paolo Bonzini) [1945742] - KVM: x86: to track if L1 is running L2 VM (Paolo Bonzini) [1945742] - KVM: LAPIC: Advancing the timer expiration on guest initiated write (Paolo Bonzini) [1945742] - KVM: x86/mmu: Skip !MMU-present SPTEs when removing SP in exclusive mode (Paolo Bonzini) [1945742] - KVM: kvmclock: Fix vCPUs > 64 can't be online/hotpluged (Paolo Bonzini) [1945742] - kvm: x86: use NULL instead of using plain integer as pointer (Paolo Bonzini) [1945742] - KVM: SVM: Connect 'npt' module param to KVM's internal 'npt_enabled' (Paolo Bonzini) [1945742] - KVM: x86: Ensure deadline timer has truly expired before posting its IRQ (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix return code when clearing vcpu_info and vcpu_time_info (Paolo Bonzini) [1945742] - KVM: x86/mmu: Set SPTE_AD_WRPROT_ONLY_MASK if and only if PML is enabled (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Fix Hyper-V context null-ptr-deref (Paolo Bonzini) [1945742] - KVM: SVM: Fix nested VM-Exit on #GP interception handling (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Fix dummy check if lbr_desc->event is created (Paolo Bonzini) [1945742] - KVM: x86/mmu: Consider the hva in mmu_notifier retry (Paolo Bonzini) [1945742] - kernel.h: split out min()/max() et al. helpers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Skip mmu_notifier check when handling MMIO page fault (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove a variety of unnecessary exports (Paolo Bonzini) [1945742] - KVM: x86: Fold "write-protect large" use case into generic write-protect (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't set dirty bits when disabling dirty logging w/ PML (Paolo Bonzini) [1945742] - KVM: VMX: Dynamically enable/disable PML based on memslot dirty logging (Paolo Bonzini) [1945742] - KVM: x86: Further clarify the logic and comments for toggling log dirty (Paolo Bonzini) [1945742] - KVM: x86: Move MMU's PML logic to common code (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make dirty log size hook (PML) a value, not a function (Paolo Bonzini) [1945742] - KVM: x86/mmu: Expand on the comment in kvm_vcpu_ad_need_write_protect() (Paolo Bonzini) [1945742] - KVM: nVMX: Disable PML in hardware when running L2 (Paolo Bonzini) [1945742] - KVM: x86/mmu: Consult max mapping level when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass the memslot to the rmap callbacks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Split out max mapping level calculation to helper (Paolo Bonzini) [1945742] - KVM: nVMX: no need to undo inject_page_fault change on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: move nested vmrun tracepoint to enter_svm_guest_mode (Paolo Bonzini) [1945742] - KVM: VMX: read idt_vectoring_info a bit earlier (Paolo Bonzini) [1945742] - KVM: VMX: Allow INVPCID in guest without PCID (Paolo Bonzini) [1945742] - KVM: x86: Advertise INVPCID by default (Paolo Bonzini) [1945742] - KVM: SVM: Intercept INVPCID when it's disabled to inject #UD (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make HVA handler retpoline-friendly (Paolo Bonzini) [1945742] - KVM: x86: move kvm_inject_gp up from kvm_set_dr to callers (Paolo Bonzini) [1945742] - KVM: x86: reading DR cannot fail (Paolo Bonzini) [1945742] - KVM: SVM: Remove an unnecessary forward declaration (Paolo Bonzini) [1945742] - KVM: SVM: Move AVIC vCPU kicking snippet to helper function (Paolo Bonzini) [1945742] - KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64 (Paolo Bonzini) [1945742] - KVM: x86: Remove misleading DR6/DR7 adjustments from RSM emulation (Paolo Bonzini) [1945742] - KVM: x86/xen: Use hva_t for holding hypercall page address (Paolo Bonzini) [1945742] - KVM: x86/xen: Remove extra unlock in kvm_xen_hvm_set_attr() (Paolo Bonzini) [1945742] - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() (Paolo Bonzini) [1945742] - KVM: x86: Add helper to consolidate "raw" reserved GPA mask calculations (Paolo Bonzini) [1945742] - KVM: selftests: Always run vCPU thread with blocked SIG_IPI (Paolo Bonzini) [1945742] - KVM: selftests: Sync data verify of dirty logging with guest sync (Paolo Bonzini) [1945742] - KVM: selftests: Add a test for kvm page table code (Paolo Bonzini) [1945742] - KVM: selftests: Adapt vm_userspace_mem_region_add to new helpers (Paolo Bonzini) [1945742] - KVM: selftests: List all hugetlb src types specified with page sizes (Paolo Bonzini) [1945742] - tools/headers: sync headers of asm-generic/hugetlb_encode.h (Paolo Bonzini) [1945742] - tools include uapi: Update linux/mmap.h copy (Paolo Bonzini) [1945742] - tools UAPI: Update copy of linux/mman.h from the kernel sources (Paolo Bonzini) [1945742] - mm/hugetlb: add mmap() encodings for 32MB and 512MB page sizes (Paolo Bonzini) [1945742] - RHEL: Add #defines for 16k hugepages (Paolo Bonzini) [1945742] - KVM: selftests: Add a helper to get system default hugetlb page size (Paolo Bonzini) [1945742] - KVM: selftests: Add a helper to get system configured THP page size (Paolo Bonzini) [1945742] - KVM: selftests: Make a generic helper to get vm guest mode strings (Paolo Bonzini) [1945742] - KVM: selftests: Print the errno besides error-string in TEST_ASSERT (Paolo Bonzini) [1945742] - KVM: selftests: remove redundant semi-colon (Paolo Bonzini) [1945742] - selftests: kvm: Check that TSC page value is small after KVM_SET_CLOCK(0) (Paolo Bonzini) [1945742] - KVM: x86: Prevent 'hv_clock->system_time' from going negative in kvm_guest_time_update() (Paolo Bonzini) [1945742] - selftests: kvm: make hardware_disable_test less verbose (Paolo Bonzini) [1945742] - selftests: kvm: add set_boot_cpu_id test (Paolo Bonzini) [1945742] - selftests: kvm: add _vm_ioctl (Paolo Bonzini) [1945742] - selftests: kvm: add get_msr_index_features (Paolo Bonzini) [1945742] - KVM: x86/xen: Add support for vCPU runstate information (Paolo Bonzini) [1945742] - RHEL: configs: do not enable CONFIG_KVM_XEN (Paolo Bonzini) [1945742] - KVM: x86: allow compiling out the Xen hypercall interface (Paolo Bonzini) [1945742] - KVM: x86: compile out TDP MMU on 32-bit systems (Paolo Bonzini) [1945742] - KVM: xen: flush deferred static key before checking it (Paolo Bonzini) [1945742] - KVM: x86/xen: Explicitly pad struct compat_vcpu_info to 64 bytes (Paolo Bonzini) [1945742] - KVM: x86/xen: Allow reset of Xen attributes (Paolo Bonzini) [1945742] - KVM: Documentation: rectify rst markup in kvm_run->flags (Paolo Bonzini) [1945742] - Documentation: kvm: fix messy conversion from .txt to .rst (Paolo Bonzini) [1945742] - KVM: Documentation: rectify rst markup in KVM_GET_SUPPORTED_HV_CPUID (Paolo Bonzini) [1945742] - Documentation: kvm: fix warning (Paolo Bonzini) [1945742] - KVM: Add documentation for Xen hypercall and shared_info updates (Paolo Bonzini) [1945742] - KVM: X86: Add the Document for KVM_CAP_X86_BUS_LOCK_EXIT (Paolo Bonzini) [1945742] - KVM: Documentation: Fix documentation for nested. (Paolo Bonzini) [1945742] - KVM: Documentation: Add arm64 KVM_RUN error codes (Paolo Bonzini) [1945742] - KVM: Documentation: Update entry for KVM_CAP_ENFORCE_PV_CPUID (Paolo Bonzini) [1945742] - KVM: Documentation: Update entry for KVM_X86_SET_MSR_FILTER (Paolo Bonzini) [1945742] - docs: kvm: add documentation for KVM_CAP_S390_DIAG318 (Paolo Bonzini) [1945742] - selftests: kvm: Mmap the entire vcpu mmap area (Paolo Bonzini) [1945742] - selftests: kvm: avoid uninitialized variable warning (Paolo Bonzini) [1945742] - selftests: kvm: add hardware_disable test (Paolo Bonzini) [1945742] - KVM: selftests: Don't bother mapping GVA for Xen shinfo test (Paolo Bonzini) [1945742] - KVM: selftests: Fix hex vs. decimal snafu in Xen test (Paolo Bonzini) [1945742] - KVM: selftests: Fix size of memslots created by Xen tests (Paolo Bonzini) [1945742] - KVM: selftests: Ignore recently added Xen tests' build output (Paolo Bonzini) [1945742] - KVM: x86: declare Xen HVM shared info capability and add test case (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Drop hv_vcpu_to_vcpu() helper (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Allocate Hyper-V context lazily (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Make Hyper-V emulation enablement conditional (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Allocate 'struct kvm_vcpu_hv' dynamically (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Prepare to meet unallocated Hyper-V context (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Always use to_hv_vcpu() accessor to get to 'struct kvm_vcpu_hv' (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Stop shadowing global 'current_vcpu' variable (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Introduce to_kvm_hv() helper (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_hv_syndbg() to to_hv_syndbg() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_stimer()/stimer_to_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_synic()/synic_to_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_hv_vcpu() to to_hv_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Drop unused kvm_hv_vapic_assist_page_enabled() (Paolo Bonzini) [1945742] - KVM: x86/xen: Add event channel interrupt vector upcall (Paolo Bonzini) [1945742] - KVM: x86/xen: register vcpu time info region (Paolo Bonzini) [1945742] - KVM: x86/xen: setup pvclock updates (Paolo Bonzini) [1945742] - KVM: x86/xen: register vcpu info (Paolo Bonzini) [1945742] - KVM: x86/xen: Add KVM_XEN_VCPU_SET_ATTR/KVM_XEN_VCPU_GET_ATTR (Paolo Bonzini) [1945742] - KVM: x86/xen: update wallclock region (Paolo Bonzini) [1945742] - xen: add wc_sec_hi to struct shared_info (Paolo Bonzini) [1945742] - KVM: x86/xen: register shared_info page (Paolo Bonzini) [1945742] - KVM: x86/xen: add definitions of compat_shared_info, compat_vcpu_info (Paolo Bonzini) [1945742] - KVM: x86/xen: latch long_mode when hypercall page is set up (Paolo Bonzini) [1945742] - KVM: x86/xen: add KVM_XEN_HVM_SET_ATTR/KVM_XEN_HVM_GET_ATTR (Paolo Bonzini) [1945742] - KVM: x86/xen: Add kvm_xen_enabled static key (Paolo Bonzini) [1945742] - KVM: x86/xen: Move KVM_XEN_HVM_CONFIG handling to xen.c (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix coexistence of Xen and Hyper-V hypercalls (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add helper to generate mask of reserved HPA bits (Paolo Bonzini) [1945742] - KVM: x86: Use reserved_gpa_bits to calculate reserved PxE bits (Paolo Bonzini) [1945742] - KVM: x86: SEV: Treat C-bit as legal GPA bit regardless of vCPU mode (Paolo Bonzini) [1945742] - KVM: nSVM: Use common GPA helper to check for illegal CR3 (Paolo Bonzini) [1945742] - KVM: VMX: Use GPA legality helpers to replace open coded equivalents (Paolo Bonzini) [1945742] - KVM: x86: Add a helper to handle legal GPA with an alignment requirement (Paolo Bonzini) [1945742] - KVM: x86: Add a helper to check for a legal GPA (Paolo Bonzini) [1945742] - KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs (Paolo Bonzini) [1945742] - KVM: x86: Set so called 'reserved CR3 bits in LM mask' at vCPU reset (Paolo Bonzini) [1945742] - KVM: x86/xen: intercept xen hypercalls if enabled (Paolo Bonzini) [1945742] - KVM: selftests: Add missing header file needed by xAPIC IPI tests (Paolo Bonzini) [1945742] - KVM: selftests: Add operand to vmsave/vmload/vmrun in svm.c (Paolo Bonzini) [1945742] - selftests: kvm: Properly set Hyper-V CPUIDs in evmcs_test (Paolo Bonzini) [1945742] - selftests: kvm: Move kvm_get_supported_hv_cpuid() to common code (Paolo Bonzini) [1945742] - selftest: kvm: x86: test KVM_GET_CPUID2 and guest visible CPUIDs against KVM_GET_SUPPORTED_CPUID (Paolo Bonzini) [1945742] - selftests: kvm/x86: add test for pmu msr MSR_IA32_PERF_CAPABILITIES (Paolo Bonzini) [1945742] - KVM: selftests: Disable dirty logging with vCPUs running (Paolo Bonzini) [1945742] - KVM: selftests: Add backing src parameter to dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Add memslot modification stress test (Paolo Bonzini) [1945742] - KVM: selftests: Add option to overlap vCPU memory access (Paolo Bonzini) [1945742] - KVM: selftests: Fix population stage in dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Convert iterations to int in dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Avoid flooding debug log while populating memory (Paolo Bonzini) [1945742] - KVM: selftests: Rename timespec_diff_now to timespec_elapsed (Paolo Bonzini) [1945742] - KVM: selftests: Test IPI to halted vCPU in xAPIC while backing page moves (Paolo Bonzini) [1945742] - KVM: selftests: Implement perf_test_util more conventionally (Paolo Bonzini) [1945742] - KVM: selftests: Use vm_create_with_vcpus in create_vm (Paolo Bonzini) [1945742] - KVM: selftests: Factor out guest mode code (Paolo Bonzini) [1945742] - selftests: kvm: Merge user_msr_test into userspace_msr_exit_test (Paolo Bonzini) [1945742] - selftests: kvm: Test MSR exiting to userspace (Paolo Bonzini) [1945742] - KVM: selftests: sync_regs test for diag318 (Paolo Bonzini) [1945742] - KVM: selftests: x86: Set supported CPUIDs on default VM (Paolo Bonzini) [1945742] - KVM: selftests: Make test skipping consistent (Paolo Bonzini) [1945742] - KVM: selftests: Introduce vm_create_[default_]_with_vcpus (Paolo Bonzini) [1945742] - KVM: selftests: Make vm_create_default common (Paolo Bonzini) [1945742] - KVM: selftests: always use manual clear in dirty_log_perf_test (Paolo Bonzini) [1945742] - selftests: kvm: keep .gitignore add to date (Paolo Bonzini) [1945742] - KVM: selftests: Add "-c" parameter to dirty log test (Paolo Bonzini) [1945742] - KVM: selftests: Run dirty ring test asynchronously (Paolo Bonzini) [1945742] - KVM: selftests: Add dirty ring buffer test (Paolo Bonzini) [1945742] - KVM: selftests: Introduce after_vcpu_run hook for dirty log test (Paolo Bonzini) [1945742] - KVM: selftests: Verify supported CR4 bits can be set before KVM_SET_CPUID2 (Paolo Bonzini) [1945742] - KVM: selftests: allow two iterations of dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Introduce the dirty log perf test (Paolo Bonzini) [1945742] - KVM: selftests: Make the number of vcpus global (Paolo Bonzini) [1945742] - KVM: selftests: Make the per vcpu memory size global (Paolo Bonzini) [1945742] - KVM: selftests: Drop pointless vm_create wrapper (Paolo Bonzini) [1945742] - KVM: selftests: Add wrfract to common guest code (Paolo Bonzini) [1945742] - KVM: selftests: Simplify demand_paging_test with timespec_diff_now (Paolo Bonzini) [1945742] - KVM: selftests: Remove address rounding in guest code (Paolo Bonzini) [1945742] - KVM: selftests: Factor code out of demand_paging_test (Paolo Bonzini) [1945742] - KVM: selftests: Use a single binary for dirty/clear log test (Paolo Bonzini) [1945742] - KVM: selftests: Always clear dirty bitmap after iteration (Paolo Bonzini) [1945742] - selftests: kvm: test enforcement of paravirtual cpuid features (Paolo Bonzini) [1945742] - selftests: kvm: Add exception handling to selftests (Paolo Bonzini) [1945742] - selftests: kvm: Clear uc so UCALL_NONE is being properly reported (Paolo Bonzini) [1945742] - selftests: kvm: Fix the segment descriptor layout to match the actual layout (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix __user pointer handling for hypercall page installation (Paolo Bonzini) [1945742] - KVM: x86/xen: fix Xen hypercall page msr handling (Paolo Bonzini) [1945742] - KVM: x86: move kvm_inject_gp up from kvm_set_xcr to callers (Paolo Bonzini) [1945742] - KVM: cleanup DR6/DR7 reserved bits checks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add '__func__' in rmap_printk() (Paolo Bonzini) [1945742] - KVM: SVM: Replace hard-coded value with #define (Paolo Bonzini) [1945742] - KVM: SVM: use .prepare_guest_switch() to handle CPU register save/setup (Paolo Bonzini) [1945742] - KVM: SVM: remove uneeded fields from host_save_users_msrs (Paolo Bonzini) [1945742] - KVM: SVM: use vmsave/vmload for saving/restoring additional host state (Paolo Bonzini) [1945742] - KVM: SVM: Use asm goto to handle unexpected #UD on SVM instructions (Paolo Bonzini) [1945742] - KVM: VMX: Use the kernel's version of VMXOFF (Paolo Bonzini) [1945742] - KVM: VMX: Move Intel PT shenanigans out of VMXON/VMXOFF flows (Paolo Bonzini) [1945742] - KVM/nVMX: Use __vmx_vcpu_run in nested_vmx_check_vmentry_hw (Paolo Bonzini) [1945742] - x86/virt: Mark flags and memory as clobbered by VMXOFF (Paolo Bonzini) [1945742] - x86/reboot: Force all cpus to exit VMX root if VMX is supported (Paolo Bonzini) [1945742] - x86/virt: Eat faults on VMXOFF in reboot flows (Paolo Bonzini) [1945742] - KVM: x86: use static calls to reduce kvm_x86_ops overhead (Paolo Bonzini) [1945742] - KVM: x86: introduce definitions to support static calls for kvm_x86_ops (Paolo Bonzini) [1945742] - KVM: RHEL: include linux/static_call.h (Paolo Bonzini) [1945742] - KVM: X86: prepend vmx/svm prefix to additional kvm_x86_ops functions (Paolo Bonzini) [1945742] - KVM: Stop using deprecated jump label APIs (Paolo Bonzini) [1945742] - locking/static_key: Add support for deferred static branches (Paolo Bonzini) [1945742] - KVM: X86: Rename DR6_INIT to DR6_ACTIVE_LOW (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Expose LBR_FMT in the MSR_IA32_PERF_CAPABILITIES (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Release guest LBR event via lazy release mechanism (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Emulate legacy freezing LBRs on virtual PMI (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Reduce the overhead of LBR pass-through or cancellation (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Pass-through LBR msrs when the guest LBR event is ACTIVE (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Create a guest LBR event when vcpu sets DEBUGCTLMSR_LBR (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Add PMU_CAP_LBR_FMT check when guest LBR is enabled (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Add PMU_CAP_LBR_FMT check when guest LBR is enabled (Paolo Bonzini) [1945742] - KVM: x86/pmu: preserve IA32_PERF_CAPABILITIES across CPUID refresh (Paolo Bonzini) [1945742] - KVM: x86/vmx: Make vmx_set_intercept_for_msr() non-static (Paolo Bonzini) [1945742] - KVM: VMX: read/write MSR_IA32_DEBUGCTLMSR from GUEST_IA32_DEBUGCTL (Paolo Bonzini) [1945742] - KVM: VMX: Use x2apic_mode to avoid RDMSR when querying PI state (Paolo Bonzini) [1945742] - x86/apic: Export x2apic_mode for use by KVM in "warm" path (Paolo Bonzini) [1945742] - KVM: VMX: Enable bus lock VM exit (Paolo Bonzini) [1945742] - KVM: X86: Reset the vcpu->run->flags at the beginning of vcpu_run (Paolo Bonzini) [1945742] - KVM: VMX: Convert vcpu_vmx.exit_reason to a union (Paolo Bonzini) [1945742] - KVM/SVM: add support for SEV attestation command (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove the defunct update_pte() paging hook (Paolo Bonzini) [1945742] - KVM: Expose AVX_VNNI instruction to guset (Paolo Bonzini) [1945742] - Enumerate AVX Vector Neural Network instructions (Paolo Bonzini) [1945742] - x86: kvm: style: Simplify bool comparison (Paolo Bonzini) [1945742] - KVM: x86: Zap the oldest MMU pages, not the newest (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use boolean returns for (S)PTE accessors (Paolo Bonzini) [1945742] - KVM: X86: use vzalloc() instead of vmalloc/memset (Paolo Bonzini) [1945742] - KVM: x86: Take KVM's SRCU lock only if steal time update is needed (Paolo Bonzini) [1945742] - KVM: x86: Remove obsolete disabling of page faults in kvm_arch_vcpu_put() (Paolo Bonzini) [1945742] - KVM: do not assume PTE is writable after follow_pfn (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix TDP MMU zap collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86: cleanup CR3 reserved bits checks (Paolo Bonzini) [1945742] - KVM: SVM: Treat SVM as unsupported when running as an SEV guest (Paolo Bonzini) [1945742] - KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode (Paolo Bonzini) [1945742] - KVM: x86: Supplement __cr4_reserved_bits() with X86_FEATURE_PCID check (Paolo Bonzini) [1945742] - KVM/x86: assign hva with the right value to vm_munmap the pages (Paolo Bonzini) [1945742] - Fix unsynchronized access to sev members through svm_register_enc_region (Paolo Bonzini) [1945742] - KVM: x86: Revert "KVM: x86: Mark GPRs dirty when written" (Paolo Bonzini) [1945742] - KVM: SVM: Unconditionally sync GPRs to GHCB on VMRUN of SEV-ES guest (Paolo Bonzini) [1945742] - KVM: x86: __kvm_vcpu_halt can be static (Paolo Bonzini) [1945742] - KVM: SVM: Add support for booting APs in an SEV-ES guest (Paolo Bonzini) [1945742] - KVM/SVM: Remove leftover __svm_vcpu_run prototype from svm.c (Paolo Bonzini) [1945742] - KVM: SVM: Add register operand to vmsave call in sev_es_vcpu_load (Paolo Bonzini) [1945742] - KVM: SVM: fix 32-bit compilation (Paolo Bonzini) [1945742] - KVM: SVM: Add AP_JUMP_TABLE support in prep for AP booting (Paolo Bonzini) [1945742] - KVM: SVM: Provide support to launch and run an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Provide an updated VMRUN invocation for SEV-ES guests (Paolo Bonzini) [1945742] - x86/kvm/svm: Use uninstrumented wrmsrl() to restore GS (Paolo Bonzini) [1945742] - KVM: SVM: Provide support for SEV-ES vCPU loading (Paolo Bonzini) [1945742] - KVM: SVM: Provide support for SEV-ES vCPU creation/loading (Paolo Bonzini) [1945742] - KVM: SVM: Update ASID allocation to support SEV-ES guests (Paolo Bonzini) [1945742] - KVM: SVM: Set the encryption mask for the SVM host save area (Paolo Bonzini) [1945742] - KVM: SVM: Add NMI support for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Guest FPU state save/restore not needed for SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Do not report support for SMM for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: x86: Update __get_sregs() / __set_sregs() to support SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR8 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR4 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR0 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for EFER write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Support string IO operations for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Support MMIO for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Create trace events for VMGEXIT MSR protocol processing (Paolo Bonzini) [1945742] - KVM: SVM: Create trace events for VMGEXIT processing (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x100 (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x004 (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x002 (Paolo Bonzini) [1945742] - KVM: SVM: Add initial support for a VMGEXIT VMEXIT (Paolo Bonzini) [1945742] - KVM: SVM: Add GHCB accessor functions for retrieving fields (Paolo Bonzini) [1945742] - KVM: SVM: Prepare for SEV-ES exit handling in the sev.c file (Paolo Bonzini) [1945742] - KVM: SVM: Cannot re-initialize the VMCB after shutdown with SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Do not allow instruction emulation under SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Prevent debugging under SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Add required changes to support intercepts under SEV-ES (Paolo Bonzini) [1945742] - KVM: x86: introduce complete_emulated_msr callback (Paolo Bonzini) [1945742] - KVM: x86: Mark GPRs dirty when written (Paolo Bonzini) [1945742] - KVM: SVM: Add support for the SEV-ES VMSA (Paolo Bonzini) [1945742] - x86/cpu: Add VM page flush MSR availablility as a CPUID feature (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES capability in KVM (Paolo Bonzini) [1945742] - KVM/VMX/SVM: Move kvm_machine_check function to x86.h (Paolo Bonzini) [1945742] - KVM: Don't allocate dirty bitmap if dirty ring is enabled (Paolo Bonzini) [1945742] - KVM: Make dirty ring exclusive to dirty bitmap log (Paolo Bonzini) [1945742] - KVM: X86: Implement ring-based dirty memory tracking (Paolo Bonzini) [1945742] - KVM: Pass in kvm pointer into mark_page_dirty_in_slot() (Paolo Bonzini) [1945742] - kvm/eventfd: Drain events from eventfd in irqfd_wakeup() (Paolo Bonzini) [1945742] - eventfd: Export eventfd_ctx_do_read() (Paolo Bonzini) [1945742] - kvm/eventfd: Use priority waitqueue to catch events before userspace (Paolo Bonzini) [1945742] - sched/wait: Add add_wait_queue_priority() (Paolo Bonzini) [1945742] - cpuidle-haltpoll: fix error comments in arch_haltpoll_disable (Paolo Bonzini) [1945742] - kvm/eventfd: Use sequence counter with associated spinlock (Paolo Bonzini) [1945742] - x86/kvm/vmx: Use native read/write_cr2() (Paolo Bonzini) [1945742] - KVM: SVM: convert get_user_pages() --> pin_user_pages() (Paolo Bonzini) [1945742] - x86/asm: Change all ENTRY+ENDPROC to SYM_FUNC_* (Paolo Bonzini) [1945742] - x86/entry/64: Fix unwind hints in __switch_to_asm() (Paolo Bonzini) [1945742] - x86/asm/64: Change all ENTRY+END to SYM_CODE_* (Paolo Bonzini) [1945742] - x86/head/64: Annotate start_cpu0() as non-callable (Paolo Bonzini) [1945742] - x86/asm: Do not annotate functions with GLOBAL (Paolo Bonzini) [1945742] - kprobes/x86/xen: blacklist non-attachable xen interrupt functions (Paolo Bonzini) [1945742] - x86/asm/64: Add ENDs to some functions and relabel with SYM_CODE_* (Paolo Bonzini) [1945742] - x86/asm: Use SYM_INNER_LABEL instead of GLOBAL (Paolo Bonzini) [1945742] - x86/asm: Annotate aliases (Paolo Bonzini) [1945742] - x86/asm/crypto: Annotate local functions (Paolo Bonzini) [1945742] - static_call: Add static_call_cond() (Paolo Bonzini) [1945742] - static_call: Add basic static call infrastructure (Paolo Bonzini) [1945742] - devlink: use _BITUL() macro instead of BIT() in the UAPI header (Petr Oros) [1935646] - devlink: Fix reload stats structure (Petr Oros) [1935646] - devlink: Avoid overwriting port attributes of registered port (Petr Oros) [1935646] - devlink: Add Documentation/networking/devlink/devlink-reload.rst (Petr Oros) [1935646] - devlink: Add enable_remote_dev_reset generic parameter (Petr Oros) [1935646] - devlink: Add remote reload stats (Petr Oros) [1935646] - devlink: Add reload stats (Petr Oros) [1935646] - devlink: Add devlink reload limit option (Petr Oros) [1935646] - devlink: Add reload action option to devlink reload command (Petr Oros) [1935646] - devlink: Change devlink_reload_supported() param type (Petr Oros) [1935646]- CI: Rename KABI option (Veronika Kabatova) - CI: Disable result checking for realtime checks (Veronika Kabatova) - Revert "GFS2: Re-add a call to log_flush_wait when flushing the journal" (Bob Peterson) [1917930] - md/raid1: properly indicate failure when ending a failed write request (Nigel Croxon) [1954588] - Revert "uio: use request_threaded_irq instead" (Vitaly Kuznetsov) [1946644] - drm/ast: Set format registers in primary plane's update (Lyude Paul) [1923857] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [1940926] - x86/hyperv: Move hv_do_rep_hypercall to asm-generic (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Increase wait time for VMbus unload (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Initialize unload_event statically (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Check for pending channel interrupts before taking a CPU offline (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Drivers: hv: vmbus: Introduce CHANNELMSG_MODIFYCHANNEL_RESPONSE (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Introduce and negotiate VMBus protocol version 5.3 (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Use after free in __vmbus_open() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: remove unused function (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Remove unused linux/version.h header (Mohammed Gamal) [1940926] - x86/Hyper-V: Support for free page reporting (Mohammed Gamal) [1940926] - x86/hyper-v: Move hv_message_type to architecture neutral module (Mohammed Gamal) [1940926] - asm-generic/hyperv: import data structures for mapping device interrupts (Mohammed Gamal) [1940926] - asm-generic/hyperv: introduce hv_device_id and auxiliary structures (Mohammed Gamal) [1940926] - asm-generic/hyperv: update hv_interrupt_entry (Mohammed Gamal) [1940926] - asm-generic/hyperv: update hv_msi_entry (Mohammed Gamal) [1940926] - x86/hyperv: provide a bunch of helper functions (Mohammed Gamal) [1940926] - x86/hyperv: extract partition ID from Microsoft Hypervisor if necessary (Mohammed Gamal) [1940926] - asm-generic/hyperv: Add definitions for Get/SetVpRegister hypercalls (Mohammed Gamal) [1940926] - drivers: hv: Fix EXPORT_SYMBOL and tab spaces issue (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Drop error message when 'No request id available' (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move handling of VMbus interrupts (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Handle auto EOI quirk inline (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move hyperv_report_panic_msg to arch neutral code (Mohammed Gamal) [1940926] - Drivers: hv: Redo Hyper-V synthetic MSR get/set functions (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move Hyper-V page allocator to arch neutral code (Mohammed Gamal) [1940926] - x86/hyperv: allocate output arg pages if required (Mohammed Gamal) [1940926] - drivers: hv: Fix whitespace errors (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: skip VMBus initialization if Linux is root (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Enforce 'VMBus version >= 5.2' on isolated guests (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Restrict vmbus_devices on isolated guests (Mohammed Gamal) [1940926] - hv_utils: Fix spelling mistake "Hearbeat" -> "Heartbeat" (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Add /sys/bus/vmbus/hibernation (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Resolve race condition in vmbus_onoffer_rescind() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Copy the hv_message in vmbus_on_msg_dpc() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Reduce number of references to message in vmbus_on_msg_dpc() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Initialize memory to be sent to the host (Mohammed Gamal) [1940926] - hv_utils: Add validation for untrusted Hyper-V values (Mohammed Gamal) [1940926] - drivers/hv: remove obsolete TODO and fix misleading typo in comment (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix checkpatch SPLIT_STRING (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix call msleep using < 20ms (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix checkpatch LINE_SPACING (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Replace symbolic permissions by octal permissions (Mohammed Gamal) [1940926] - drivers: hv: Fix hyperv_record_panic_msg path on comment (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Add vmbus_requestor data structure for VMBus hardening (Mohammed Gamal) [1940926] - ena: revert removal of MODULE_VERSION from ena (Petr Oros) [1955712] - Revert "[netdrv] net/intel: remove driver versions from Intel drivers" (Jonathan Toppins) [1955745] - Revert "[netdrv] net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1955721] - net: core: add dev_get_tstats64 as a ndo_get_stats64 implementation (Josef Oskera) [1939453]- igb: amend removal of MODULE_VERSION (Corinna Vinschen) [1955748] - igc: amend removal of MODULE_VERSION (Corinna Vinschen) [1955755] - i40e: amend removal of MODULE_VERSION (Stefan Assmann) [1955736] - ixgbe: Amend commit acf03026ec5a to include a version string in module info. (Ken Cox) [1955759] - i40e: Fix parameters in aq_get_phy_register() (Stefan Assmann) [1907852] - initramfs: panic with memory information (Coiby Xu) [1936031] - powercap/intel_rapl: add support for AlderLake (David Arcari) [1838605] - xfs: restore shutdown check in mapped write fault path (Brian Foster) [1926089] - xfs: consider shutdown in bmapbt cursor delete assert (Brian Foster) [1926077] - iomap: Fix negative assignment to unsigned sis->pages in iomap_swapfile_activate (Carlos Maiolino) [1938210] - scsi: scsi_dh_alua: Remove check for ASC 24h in alua_rtpg() (Ewan D. Milne) [1929878] - perf/arm-cmn: Move IRQs when migrating context (Jeremy Linton) [1816850] - perf/arm-cmn: Fix PMU instance naming (Jeremy Linton) [1816850] - perf: arm-cmn: Fix conversion specifiers for node type (Jeremy Linton) [1816850] - perf: arm-cmn: Fix unsigned comparison to less than zero (Jeremy Linton) [1816850] - perf: Add Arm CMN-600 PMU driver (Jeremy Linton) [1816850] - redhat/configs: Use CONFIG_VIRTIO_CONSOLE=m on s390x, too (Thomas Huth) [1954119] - s390/config: do not select VIRTIO_CONSOLE via Kconfig (Thomas Huth) [1954119] - x86/platform/uv: Fix an error code in uv_hubs_init() (Frank Ramsay) [1936605] - x86/platform/uv: Add more to secondary CPU kdump info (Frank Ramsay) [1936605] - x86/platform/uv: Use x2apic enabled bit as set by BIOS to indicate APIC mode (Frank Ramsay) [1936605] - redhat/configs: Add CONFIG_UV_SYSFS (Frank Ramsay) [1936605] - x86/platform/uv: Fix indentation warning in Documentation/ABI/testing/sysfs-firmware-sgi_uv (Frank Ramsay) [1936605] - x86/platform/uv: Set section block size for hubless architectures (Frank Ramsay) [1936605] - x86/platform/uv: Update sysfs documentation (Frank Ramsay) [1936605] - x86/platform/uv: Add deprecated messages to /proc info leaves (Frank Ramsay) [1936605] - x86/platform/uv: Add sysfs hubless leaves (Frank Ramsay) [1936605] - x86/platform/uv: Add sysfs leaves to replace those in procfs (Frank Ramsay) [1936605] - x86/platform/uv: Add kernel interfaces for obtaining system info (Frank Ramsay) [1936605] - x86/platform/uv: Update MAINTAINERS for uv_sysfs driver (Frank Ramsay) [1936605] - x86/platform/uv: Update ABI documentation of /sys/firmware/sgi_uv/ (Frank Ramsay) [1936605] - x86/platform/uv: Add new uv_sysfs platform driver (Frank Ramsay) [1936605] - x86/platform/uv: Add and export uv_bios_* functions (Frank Ramsay) [1936605] - x86/platform/uv: Remove existing /sys/firmware/sgi_uv/interface (Frank Ramsay) [1936605] - x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c (Frank Ramsay) [1936605] - x86/platform/uv: Unexport sn_coherency_id (Frank Ramsay) [1936605] - x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static (Frank Ramsay) [1936605] - UV: Add SPDX license identifier - Makefile/Kconfig (Frank Ramsay) [1936605] - netdevsim: Only use sampling truncation length when valid (Ivan Vecera) [1955163] - selftests: netdevsim: Test psample functionality (Ivan Vecera) [1955163] - netdevsim: Add dummy psample implementation (Ivan Vecera) [1955163] - psample: Add additional metadata attributes (Ivan Vecera) [1955163] - psample: Encapsulate packet metadata in a struct (Ivan Vecera) [1955163] - net: psample: fix build error when CONFIG_INET is not enabled (Ivan Vecera) [1955163] - devlink: include for _BITUL (Petr Oros) [1935630] - netdevsim: add support for flash_update overwrite mask (Petr Oros) [1935630] - devlink: introduce flash update overwrite mask (Petr Oros) [1935630] - devlink: convert flash_update to use params structure (Petr Oros) [1935630] - devlink: check flash_update parameter support in net core (Petr Oros) [1935630] - devlink: Enhance policy to validate port type input value (Petr Oros) [1935630] - devlink: Enhance policy to validate eswitch mode value (Petr Oros) [1935630] - net: devlink: region: Pass the region ops to the snapshot function (Petr Oros) [1935630] - net: devlink: regions: Add a priv member to the regions ops struct (Petr Oros) [1935630]- Enumerate AVX Vector Neural Network instructions (Steve Best) [1838616] - net: fix skb use after free in netpoll (Ivan Vecera) [1913481] - cipso,calipso: resolve a number of problems with the DOI refcounts (Guillaume Nault) [1950996] - netfilter: rpfilter: mask ecn bits before fib lookup (Guillaume Nault) [1950996] - netfilter: Fix rpfilter dropping vrf packets by mistake (Guillaume Nault) [1950996] - redhat: enable CONFIG_DM_MULTIPATH_HST and CONFIG_DM_MULTIPATH_IOA (Mike Snitzer) [1949682] - dm ioctl: fix out of bounds array access when no devices (Mike Snitzer) [1949682] - dm table: Fix zoned model check and zone sectors check (Mike Snitzer) [1949682] - dm: simplify target code conditional on CONFIG_BLK_DEV_ZONED (Mike Snitzer) [1949682] - dm verity: fix DM_VERITY_OPTS_MAX value (Mike Snitzer) [1949682] - dm verity fec: fix misaligned RS roots IO (Mike Snitzer) [1949682] - dm verity: fix FEC for RS roots unaligned to block size (Mike Snitzer) [1949682] - dm bufio: subtract the number of initial sectors in dm_bufio_get_device_size (Mike Snitzer) [1949682] - dm: fix deadlock when swapping to encrypted device (Mike Snitzer) [1949682] - dm era: only resize metadata in preresume (Mike Snitzer) [1949682] - dm era: Use correct value size in equality function of writeset tree (Mike Snitzer) [1949682] - dm era: Fix bitset memory leaks (Mike Snitzer) [1949682] - dm era: Verify the data block size hasn't changed (Mike Snitzer) [1949682] - dm era: Reinitialize bitset cache before digesting a new writeset (Mike Snitzer) [1949682] - dm era: Update in-core bitset after committing the metadata (Mike Snitzer) [1949682] - dm era: Recover committed writeset after crash (Mike Snitzer) [1949682] - dm writecache: fix writing beyond end of underlying device when shrinking (Mike Snitzer) [1949682] - dm table: remove needless request_queue NULL pointer checks (Mike Snitzer) [1949682] - dm table: fix zoned iterate_devices based device capability checks (Mike Snitzer) [1949682] - dm writecache: return the exact table values that were set (Mike Snitzer) [1949682] - dm writecache: fix unnecessary NULL check warnings (Mike Snitzer) [1949682] - dm writecache: fix performance degradation in ssd mode (Mike Snitzer) [1949682] - dm integrity: introduce the "fix_hmac" argument (Mike Snitzer) [1949682] - dm persistent data: fix return type of shadow_root() (Mike Snitzer) [1949682] - dm: cleanup of front padding calculation (Mike Snitzer) [1949682] - dm integrity: fix spelling mistake "flusing" -> "flushing" (Mike Snitzer) [1949682] - dm crypt: Spelling s_cihper_cipher_ (Mike Snitzer) [1949682] - dm: avoid filesystem lookup in dm_get_dev_t() (Mike Snitzer) [1949682] - dm integrity: conditionally disable "recalculate" feature (Mike Snitzer) [1949682] - dm integrity: fix a crash if "recalculate" used without "internal_hash" (Mike Snitzer) [1949682] - dm integrity: fix the maximum number of arguments (Mike Snitzer) [1949682] - dm integrity: fix flush with external metadata device (Mike Snitzer) [1949682] - dm snapshot: flush merged data before committing metadata (Mike Snitzer) [1949682] - dm zoned: select CONFIG_CRC32 (Mike Snitzer) [1949682] - dm integrity: select CRYPTO_SKCIPHER (Mike Snitzer) [1949682] - dm cache: simplify the return expression of load_mapping() (Mike Snitzer) [1949682] - dm verity: skip verity work if I_O error when system is shutting down (Mike Snitzer) [1949682] - dm ioctl: fix error return code in target_message (Mike Snitzer) [1949682] - dm crypt: Constify static crypt_iv_operations (Mike Snitzer) [1949682] - dm: add support for REQ_NOWAIT to various targets (Mike Snitzer) [1949682] - dm: rename multipath path selector source files to have "dm-ps" prefix (Mike Snitzer) [1949682] - dm mpath: add IO affinity path selector (Mike Snitzer) [1949682] - dm verity: Add support for signature verification with 2nd keyring (Mike Snitzer) [1949682] - dm: remove unnecessary current->bio_list check when submitting split bio (Mike Snitzer) [1949682] - dm: remove invalid sparse __acquires and __releases annotations (Mike Snitzer) [1949682] - dm: fix double RCU unlock in dm_dax_zero_page_range() error path (Mike Snitzer) [1949682] - dm writecache: remove BUG() and fail gracefully instead (Mike Snitzer) [1949682] - dm table: Remove BUG_ON(in_interrupt()) (Mike Snitzer) [1949682] - dm: fix bug with RCU locking in dm_blk_report_zones (Mike Snitzer) [1949682] - Revert "dm cache: fix arm link errors with inline" (Mike Snitzer) [1949682] - vfs: remove lockdep bogosity in __sb_start_write (Brian Foster) [1926097] - nbd: freeze the queue while we're adding connections (Ming Lei) [1927246] - selftests/livepatch: Do not check order when using "comm" for dmesg checking (Joel Savitz) [1942056] - RDMA/siw,rxe: Make emulated devices virtual in the device tree (Kamal Heib) [1931849] - RDMA/core: remove use of dma_virt_ops (Kamal Heib) [1931849] - RDMA/umem: Use ib_dma_max_seg_size instead of dma_get_max_seg_size (Kamal Heib) [1931849] - RDMA/core: Fix ib_dma_max_seg_size() (Kamal Heib) [1931849] - RDMA/umem: Move to allocate SG table from pages (Kamal Heib) [1931849] - lib/scatterlist: Do not limit max_segment to PAGE_ALIGNED values (Kamal Heib) [1931849] - lib/scatterlist: Add support in dynamic allocation of SG table from pages (Kamal Heib) [1931846] - RDMA/srp: Increase max_segment_size (Kamal Heib) [1931849] - RDMA/uverbs: Allow drivers to create a new HW object during rereg_mr (Kamal Heib) [1931849] - RDMA/mlx5: Use ib_umem_find_best_pgoff() for SRQ (Kamal Heib) [1931849] - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC (Kamal Heib) [1931849] - RDMA/cma: Fix error flow in default_roce_mode_store (Kamal Heib) [1931849] - RDMA/umem: Avoid undefined behavior of rounddown_pow_of_two() (Kamal Heib) [1931849] - RDMA/restrack: Don't treat as an error allocation ID wrapping (Kamal Heib) [1931849] - RDMA/ucma: Do not miss ctx destruction steps in some cases (Kamal Heib) [1931849] - RDMA/cma: Don't overwrite sgid_attr after device is released (Kamal Heib) [1931849] - RDMA/rxe: Use acquire/release for memory ordering (Kamal Heib) [1931849] - RDMA/uverbs: Fix incorrect variable type (Kamal Heib) [1931849] - RDMA/core: Update kernel documentation for ib_create_named_qp() (Kamal Heib) [1931849] - RDMA/iser: Remove in_interrupt() usage (Kamal Heib) [1931849] - IB: Fix kernel-doc markups (Kamal Heib) [1931849] - RDMA/uverbs: Check ODP in ib_check_mr_access() as well (Kamal Heib) [1931849] - RDMA/uverbs: Tidy input validation of ib_uverbs_rereg_mr() (Kamal Heib) [1931849] - RDMA/efa: Use dma_set_mask_and_coherent() to simplify code (Kamal Heib) [1931849] - RDMA/restrack: Support all QP types (Kamal Heib) [1931849] - RDMA/core: Allow drivers to disable restrack DB (Kamal Heib) [1931849] - RDMA/core: Track device memory MRs (Kamal Heib) [1931849] - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind (Kamal Heib) [1931849] - IB/hfi1: Fix fall-through warnings for Clang (Kamal Heib) [1931849] - RDMA/ipoib: Distribute cq completion vector better (Kamal Heib) [1931849] - RDMA/efa: Remove .create_ah callback assignment (Kamal Heib) [1931849] - RDMA/cma: Add missing error handling of listen_id (Kamal Heib) [1931849] - RDMA/restrack: Store all special QPs in restrack DB (Kamal Heib) [1931849] - RDMA/counter: Combine allocation and bind logic (Kamal Heib) [1931849] - RDMA/core: Remove ib_dma_{alloc,free}_coherent (Kamal Heib) [1931849] - RDMA/core: Make FD destroy callback void (Kamal Heib) [1931849] - RDMA/core: Postpone uobject cleanup on failure till FD close (Kamal Heib) [1931849] - IB/isert: Do not excplicitly check == false for bool (Kamal Heib) [1931849] - IB/core: Add support for NDR link speed (Kamal Heib) [1931849] - RDMA/ipoib: Add 50Gb and 100Gb link speeds to ethtool (Kamal Heib) [1931849] - RDMA/rxe,siw: Restore uverbs_cmd_mask IB_USER_VERBS_CMD_POST_SEND (Kamal Heib) [1931849] - RDMA/siw: Fix typo of EAGAIN not -EAGAIN in siw_cm_work_handler() (Kamal Heib) [1931849] - RDMA/rxe: Compute PSN windows correctly (Kamal Heib) [1931849] - RDMA/core: Fix error return in _ib_modify_qp() (Kamal Heib) [1931849] - IB/verbs: avoid nested container_of() (Kamal Heib) [1931849] - RDMA/rxe: Remove unused RXE_MR_TYPE_FMR (Kamal Heib) [1931849] - RDMA: Remove AH from uverbs_cmd_mask (Kamal Heib) [1931849] - RDMA: Remove uverbs cmds from drivers that don't use them (Kamal Heib) [1931849] - RDMA/core Remove uverbs_ex_cmd_mask (Kamal Heib) [1931849] - RDMA: Check create_flags during create_qp (Kamal Heib) [1931849] - RDMA: Check flags during create_cq (Kamal Heib) [1931849] - RDMA: Check attr_mask during modify_qp (Kamal Heib) [1931849] - RDMA: Check srq_type during create_srq (Kamal Heib) [1931849] - RDMA: Move more uverbs_cmd_mask settings to the core (Kamal Heib) [1931849] - RDMA: Remove elements in uverbs_cmd_mask that all drivers set (Kamal Heib) [1931849] - RDMA: Remove uverbs_ex_cmd_mask values that are linked to functions (Kamal Heib) [1931849] - RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait (Kamal Heib) [1931846] - RDMA/core: Fix empty gid table for non IB/RoCE devices (Kamal Heib) [1931846] - RDMA/efa: Use the correct current and new states in modify QP (Kamal Heib) [1931846] - RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs (Kamal Heib) [1931846] - RDMA/srpt: Fix typo in srpt_unregister_mad_agent docstring (Kamal Heib) [1931846] - RDMA/vmw_pvrdma: Fix the active_speed and phys_state value (Kamal Heib) [1931846] - RDMA: Fix software RDMA drivers for dma mapping error (Kamal Heib) [1931846] - IB/srpt: docs: add a description for cq_size member (Kamal Heib) [1931846] - RDMA: Add rdma_connect_locked() (Kamal Heib) [1931846] - RDMA/uverbs: Fix false error in query gid IOCTL (Kamal Heib) [1931846] - RDMA/rxe: Fix small problem in network_type patch (Kamal Heib) [1931846] - RDMA/ucma: Fix use after free in destroy id flow (Kamal Heib) [1931846] - RDMA/rxe: Move the definitions for rxe_av.network_type to uAPI (Kamal Heib) [1931846] - RDMA: Explicitly pass in the dma_device to ib_register_device (Kamal Heib) [1931846] - RDMA/usnic: Remove the query_pkey callback (Kamal Heib) [1931846] - RDMA/usnic: Fix spelling mistake "transistion" -> "transition" (Kamal Heib) [1931846] - RDMA/usnic: switch from 'pci_' to 'dma_' API (Kamal Heib) [1931846] - RDMA/usnic: Avoid overly large buffers on stack (Kamal Heib) [1931846] - IB/usnic: Use dev_get_drvdata (Kamal Heib) [1931846] - IB/usnic: Fix deadlock (Kamal Heib) [1931846] - Revert "[infiniband] usnic_verbs: fix deadlock" (Kamal Heib) [1931846] - RDMA/rxe: Remove duplicate entries in struct rxe_mr (Kamal Heib) [1931846] - RDMA/uverbs: Expose the new GID query API to user space (Kamal Heib) [1931846] - RDMA/core: Introduce new GID table query API (Kamal Heib) [1931846] - RDMA/core: Modify enum ib_gid_type and enum rdma_network_type (Kamal Heib) [1931846] - RDMA/core: Change rdma_get_gid_attr returned error code (Kamal Heib) [1931846] - RDMA/core: Constify struct attribute_group (Kamal Heib) [1931846] - RDMA/core: Remove ucontext->closing (Kamal Heib) [1931846] - RDMA/drivers: Remove udata check from special QP (Kamal Heib) [1931846] - RDMA/qedr: Add support for user mode XRC-SRQ's (Kamal Heib) [1931846] - RDMA/mlx4: Prepare QP allocation to remove from the driver (Kamal Heib) [1931846] - RDMA/mlx4: Embed GSI QP into general mlx4_ib QP (Kamal Heib) [1931846] - RDMA/core: Align write and ioctl checks of QP types (Kamal Heib) [1931846] - RDMA/efa: Drop double zeroing for sg_init_table() (Kamal Heib) [1931846] - RDMA/efa: Add messages and RDMA read work requests HW stats (Kamal Heib) [1931846] - RDMA/efa: Group keep alive received counter with other SW stats (Kamal Heib) [1931846] - RDMA/restrack: Improve readability in task name management (Kamal Heib) [1931846] - RDMA/restrack: Simplify restrack tracking in kernel flows (Kamal Heib) [1931846] - RDMA/restrack: Count references to the verbs objects (Kamal Heib) [1931846] - RDMA/cma: Delete from restrack DB after successful destroy (Kamal Heib) [1931846] - RDMA/ucma: Rework ucma_migrate_id() to avoid races with destroy (Kamal Heib) [1931846] - RDMA: Fix link active_speed size (Kamal Heib) [1931846] - net/mlx5: Refactor query port speed functions (Kamal Heib) [1931846] - RDMA: Convert RWQ table logic to ib_core allocation scheme (Kamal Heib) [1931846] - RDMA: Clean MW allocation and free flows (Kamal Heib) [1931846] - RDMA/cma: Fix use after free race in roce multicast join (Kamal Heib) [1931846] - RDMA/cma: Consolidate the destruction of a cma_multicast in one place (Kamal Heib) [1931846] - RDMA/cma: Remove dead code for kernel rdmacm multicast (Kamal Heib) [1931846] - RDMA/cma: Combine cma_ndev_work with cma_work (Kamal Heib) [1931846] - RDMA/cma: Remove cma_comp() (Kamal Heib) [1931846] - RDMA/cma: Fix locking for the RDMA_CM_LISTEN state (Kamal Heib) [1931846] - RDMA/cma: Make the locking for automatic state transition more clear (Kamal Heib) [1931846] - RDMA/cma: Fix locking for the RDMA_CM_CONNECT state (Kamal Heib) [1931846] - RDMA/core: Added missing WR and WC opcodes (Kamal Heib) [1931846] - RDMA/qedr: Remove fbo and zbva from the MR (Kamal Heib) [1931846] - RDMA/mlx4: Use ib_umem_num_dma_blocks() (Kamal Heib) [1931846] - RDMA/pvrdma: Use ib_umem_num_dma_blocks() instead of ib_umem_page_count() (Kamal Heib) [1931846] - RDMA/bnxt: Do not use ib_umem_page_count() or ib_umem_num_pages() (Kamal Heib) [1931846] - RDMA/qedr: Use ib_umem_num_dma_blocks() instead of ib_umem_page_count() (Kamal Heib) [1931846] - RDMA/qedr: Use rdma_umem_for_each_dma_block() instead of open-coding (Kamal Heib) [1931846] - RDMA/i40iw: Use ib_umem_num_dma_pages() (Kamal Heib) [1931846] - RDMA/efa: Use ib_umem_num_dma_pages() (Kamal Heib) [1931846] - RDMA/umem: Split ib_umem_num_pages() into ib_umem_num_dma_blocks() (Kamal Heib) [1931846] - RDMA/umem: Replace for_each_sg_dma_page with rdma_umem_for_each_dma_block (Kamal Heib) [1931846] - RDMA/umem: Add rdma_umem_for_each_dma_block() (Kamal Heib) [1931846] - RDMA/umem: Use simpler logic for ib_umem_find_best_pgsz() (Kamal Heib) [1931846] - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page boundary (Kamal Heib) [1931846] - RDMA: Make counters destroy symmetrical (Kamal Heib) [1931846] - RDMA: Restore ability to return error for destroy WQ (Kamal Heib) [1931846] - RDMA: Change XRCD destroy return value (Kamal Heib) [1931846] - RDMA: Allow fail of destroy CQ (Kamal Heib) [1931846] - RDMA/core: Delete function indirection for alloc/free kernel CQ (Kamal Heib) [1931846] - RDMA: Restore ability to fail on SRQ destroy (Kamal Heib) [1931846] - RDMA/mlx5: Issue FW command to destroy SRQ on reentry (Kamal Heib) [1931846] - RDMA: Restore ability to fail on AH destroy (Kamal Heib) [1931846] - RDMA: Restore ability to fail on PD deallocate (Kamal Heib) [1931846] - RDMA/core: Change how failing destroy is handled during uobj abort (Kamal Heib) [1931846] - RDMA/ucma: Fix resource leak on error path (Kamal Heib) [1931846] - RDMA/rxe: Address an issue with hardened user copy (Kamal Heib) [1931846] - RDMA/rxe: Add SPDX hdrs to rxe source files (Kamal Heib) [1931846] - RDMA/core: Trigger a WARN_ON if the driver causes uobjects to become leaked (Kamal Heib) [1931846] - RDMA/rxe: Fix style warnings (Kamal Heib) [1931846] - RDMA/ucma: Remove closing and the close_wq (Kamal Heib) [1931846] - RDMA/ucma: Rework how new connections are passed through event delivery (Kamal Heib) [1931846] - RDMA/ucma: Narrow file->mut in ucma_event_handler() (Kamal Heib) [1931846] - RDMA/ucma: Change backlog into an atomic (Kamal Heib) [1931846] - RDMA/ucma: Add missing locking around rdma_leave_multicast() (Kamal Heib) [1931846] - RDMA/ucma: Fix locking for ctx->events_reported (Kamal Heib) [1931846] - RDMA/ucma: Fix the locking of ctx->file (Kamal Heib) [1931846] - RDMA/ucma: Do not use file->mut to lock destroying (Kamal Heib) [1931846] - RDMA/cma: Add missing locking to rdma_accept() (Kamal Heib) [1931846] - RDMA/ucma: Remove mc_list and rely on xarray (Kamal Heib) [1931846] - RDMA/ucma: Fix error cases around ucma_alloc_ctx() (Kamal Heib) [1931846] - RDMA/ucma: Consolidate the two destroy flows (Kamal Heib) [1931846] - RDMA/ucma: Remove unnecessary locking of file->ctx_list in close (Kamal Heib) [1931846] - RDMA/ucma: Fix refcount 0 incr in ucma_get_ctx() (Kamal Heib) [1931846] - RDMA/cm: Add tracepoints to track MAD send operations (Kamal Heib) [1931846] - RDMA/cm: Replace pr_debug() call sites with tracepoints (Kamal Heib) [1931846] - RDMA/core: Move the rdma_show_ib_cm_event() macro (Kamal Heib) [1931846] - RDMA/efa: Remove redundant udata check from alloc ucontext response (Kamal Heib) [1931846] - RDMA/vmw_pvrdma: Fix kernel-doc documentation (Kamal Heib) [1931846] - RDMA/rxe: prevent rxe creation on top of vlan interface (Kamal Heib) [1931846] - RDMA/cm: Remove unused cm_class (Kamal Heib) [1931846] - IB/isert: remove duplicated error prints (Kamal Heib) [1931846] - RDMA/efa: Introduce SRD RNR retry (Kamal Heib) [1931846] - RDMA/efa: Introduce SRD QP state machine (Kamal Heib) [1931846] - RDMA/efa: Be consistent with modify QP bitmask (Kamal Heib) [1931846] - RDMA/efa: Add a generic capability check helper (Kamal Heib) [1931846] - RDMA: Remove constant domain argument from flow creation call (Kamal Heib) [1931846] - RDMA/i40iw: Avoid typecast from void to pci_dev (Kamal Heib) [1931846] - sched/uclamp: Add CPU's clamp buckets refcounting (Kamal Heib) [1931846] - overflow: Include header file with SIZE_MAX declaration (Kamal Heib) [1931846] - treewide: Use fallthrough pseudo-keyword (Kamal Heib) [1931846] - IB/hfi1: Use fallthrough pseudo-keyword (Kamal Heib) [1931846] - treewide: replace '---help---' in Kconfig files with 'help' (Kamal Heib) [1931846] - remove ioremap_nocache and devm_ioremap_nocache (Kamal Heib) [1931846]- ethtool: pause: make sure we init driver stats (Ivan Vecera) [1935611] - ethtool: correct policy for ETHTOOL_MSG_CHANNELS_SET (Ivan Vecera) [1935611] - ethtool: strset: allow ETHTOOL_A_STRSET_COUNTS_ONLY attr (Ivan Vecera) [1935611] - ethtool: specify which header flags are supported per command (Ivan Vecera) [1935611] - ethtool: link up ethnl_header_policy as a nested policy (Ivan Vecera) [1935611] - ethtool: trim policy tables (Ivan Vecera) [1935611] - ethtool: wire up set policies to ops (Ivan Vecera) [1935611] - ethtool: wire up get policies to ops (Ivan Vecera) [1935611] - netdevsim: fix duplicated debugfs directory (Ivan Vecera) [1935611] - selftests: add a test for ethtool pause stats (Ivan Vecera) [1935611] - netdevsim: add pause frame stats (Ivan Vecera) [1935611] - docs: net: include the new ethtool pause stats in the stats doc (Ivan Vecera) [1935611] - ethtool: add standard pause stats (Ivan Vecera) [1935611] - net: tighten the definition of interface statistics (Ivan Vecera) [1935611]- PCI: hv: Fix typo (Mohammed Gamal) [1940924] - asm-generic/hyperv: change HV_CPU_POWER_MANAGEMENT to HV_CPU_MANAGEMENT (Mohammed Gamal) [1940925] - x86/hyperv: detect if Linux is the root partition (Mohammed Gamal) [1940925] - hyperv: hyperv.h: drop a duplicated word (Mohammed Gamal) [1940925] - hyper-v: Remove internal types from UAPI header (Mohammed Gamal) [1940925] - x86/hyperv: Load/save the Isolation Configuration leaf (Mohammed Gamal) [1940925] - x86/hyperv: Initialize clockevents after LAPIC is initialized (Mohammed Gamal) [1940925] - x86/hyperv: check cpu mask after interrupt has been disabled (Mohammed Gamal) [1940925] - x86/hyperv: Fix kexec panic/hang issues (Mohammed Gamal) [1940925] - video: hyperv_fb: Fix a double free in hvfb_probe (Mohammed Gamal) [1940922] - uio: uio_hv_generic: use devm_kzalloc() for private data alloc (Mohammed Gamal) [1940922] - Avoid macro redefinition in compiler-{clang,gcc}.h (Jerome Marchand) [1907271] - x86/split_lock: Add Icelake microserver and Tigerlake CPU models (Prarit Bhargava) [1847576] - tools/power/x86/intel-speed-select: Update version to 1.8 (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Add new command to get/set TRL (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Add new command turbo-mode (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or base_frequency (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency (Prarit Bhargava) [1921801] - platform/x86: ISST: Mark mmio_range_devid_0 and mmio_range_devid_1 with static keyword (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Update version for v5.11 (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Account for missing sysfs for die_id (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Read TRL from mailbox (Prarit Bhargava) [1921801] - platform/x86: ISST: Change PCI device macros (Prarit Bhargava) [1921801] - platform/x86: ISST: Allow configurable offset range (Prarit Bhargava) [1921801] - platform/x86: ISST: Check for unaligned mmio address (Prarit Bhargava) [1921801] - tools/power/turbostat: Fallback to an MSR read for EPB (Prarit Bhargava) [1926913] - tools/power/turbostat: Read energy_perf_bias from sysfs (Prarit Bhargava) [1926913] - Bluetooth: btusb: Add workaround for remote-wakeup issues with Barrot 8041a02 fake CSR controllers (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix detection of some fake CSR controllers with a bcdDevice val of 0x0134 (Gopal Tiwari) [1946951] - Bluetooth: btusb: support download nvm with different board id for wcn6855 (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: Add the missed release_firmware() in mtk_setup_firmware() (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add the missed release_firmware() in btusb_mtk_setup_firmware() (Gopal Tiwari) [1946951] - Bluetooth: btusb: Support 0bda:c123 Realtek 8822CE device (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Add OBDA0623 ACPI HID (Gopal Tiwari) [1946951] - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Wait for timeout during suspend (Gopal Tiwari) [1946951] - Bluetooth: btrtl: fix incorrect skb allocation failure check (Gopal Tiwari) [1946951] - Bluetooth: hci_ll: add a small delay for wl1271 enable bt_en (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add support for 1358:c123 Realtek 8822CE device (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: resolve various warnings (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Enhance retry logic in qca_setup (Gopal Tiwari) [1946951] - Bluetooth: btusb: btrtl: Add support for RTL8852A (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add support for 13d3:3560 MediaTek MT7615E device (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: fix memory leak in h5_close (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Ask 8821C to drop old firmware (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Refine the ic_id_table for clearer and more regular (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add the more support IDs for Realtek RTL8822CE (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: close serdev device and free hu in h5_close (Gopal Tiwari) [1946951] - Bluetooth: btintel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add Qualcomm Bluetooth SoC WCN6855 support (Gopal Tiwari) [1946951] - Bluetooth: btusb: Enable wide band speech support for BTUSB_QCA_ROME (Gopal Tiwari) [1946951] - Bluetooth: hci_serdev: Close UART port if NON_PERSISTENT_SETUP is set (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Remove duplicate power off in proto close (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: enable on new platform (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: use NULL instead of zero (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: switch to list_for_each_entry() (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: drop strange le16_to_cpu() against u8 values (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: remove redundant null check (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb (Gopal Tiwari) [1946951] - Bluetooth: hci_uart: Cancel init work before unregistering (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Remove ignored flag HCI_UART_RESET_ON_INIT (Gopal Tiwari) [1946951] - Bluetooth: btmrvl: eliminate duplicates introducing btmrvl_reg_89xx (Gopal Tiwari) [1946951] - Revert "Bluetooth: btusb: Disable runtime suspend on Realtek devices" (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Stop collecting memdump again for command timeout during SSR (Gopal Tiwari) [1946951] - Bluetooth: hci_serdev: Only unregister device if it was registered (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth controllers (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Bug fixes for SSR (Gopal Tiwari) [1946951] - Bluetooth: btusb: add Realtek 8822CE to usb_device_id table (Gopal Tiwari) [1946951] - Bluetooth: btusb: USB alternate setting 1 for WBS (Gopal Tiwari) [1946951] - Bluetooth: btusb: Comment on unbalanced pm reference (Gopal Tiwari) [1946951] - Bluetooth: btusb: BTUSB_WAKEUP_DISABLE prevents wake (Gopal Tiwari) [1946951] - Bluetooth: btusb: Reset port on cmd timeout (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: fix up firmware download sequence (Gopal Tiwari) [1946951] - Bluetooth: btusb: fix up firmware download sequence (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Disable SoC debug logging for WCN3991 (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Request Tx clock vote off only when Tx is pending (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Refactor irq wakeup (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Implement prevent_wake (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Set parent dev to hdev (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Bug fix during SSR timeout (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Refactor error handling in qca_suspend() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Skip serdev wait when no transfer is pending (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Simplify determination of serial clock on/off state from votes (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix an error pointer dereference (Gopal Tiwari) [1946951] - btmrvl: Fix firmware filename for sd8977 chipset (Gopal Tiwari) [1946951] - btmrvl: Fix firmware filename for sd8997 chipset (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix QCA6390 memdump failure (Gopal Tiwari) [1946951] - Bluetooth: btmtkuart: Use serdev_device_write_buf() instead of serdev_device_write() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Improve controller ID info log level (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix qca6390 enable failure after warm reboot (Gopal Tiwari) [1946951] - Bluetooth: btmtkuart: Improve exception handling in btmtuart_probe() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix suspend/resume functionality failure (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Added 003.006.007, changed 001.003.015 (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix uninitialized access to hdev (Gopal Tiwari) [1946951] - Bluetooth: serdev: Constify serdev_device_ops (Gopal Tiwari) [1946951] - Bluetooth: Add hook for driver to prevent wake from suspend (Gopal Tiwari) [1946951] - Bluetooth: btusb: Implement hdev->prevent_wake (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Add support for binding RTL8723BS with device tree (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: allow max-speed to be set for QCA9377 devices (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: add compatible for QCA9377 (Gopal Tiwari) [1946951] - Bluetooth: btusb: Adding support for LE scatternet to Jfp and ThP (Gopal Tiwari) [1946951] - Bluetooth: Adding driver and quirk defs for multi-role LE (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Add 2 missing models to subver tables (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Move setting of USE_BDADDR_PROPERTY quirk to hci_bcm.c (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Try multiple Patch filenames when loading the Patch firmware (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Bail sooner from btbcm_initialize() when not loading fw (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Drop upper nibble version check from btbcm_initialize() (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Make btbcm_setup_patchram use btbcm_finalize (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Make btbcm_initialize() print local-name on re-init too (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Fold Patch loading + applying into btbcm_initialize() (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Add support for RTL8761B (Gopal Tiwari) [1946951] - Bluetooth: btusb: check for NULL in btusb_find_altsetting() (Gopal Tiwari) [1946951] - Bluetooth: btusb: handle mSBC audio over USB Endpoints (Gopal Tiwari) [1946951] - Bluetooth: add support to notify using SCO air mode (Gopal Tiwari) [1946951] - Bluetooth: hci_bcm: respect IRQ polarity from DT (Gopal Tiwari) [1946951] - Bluetooth: hci_bcm: fix freeing not-requested IRQ (Gopal Tiwari) [1946951] - intel_idle: remove definition of DEBUG (David Arcari) [1926917] - intel_idle: Build fix (David Arcari) [1926917] - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known (Phil Auld) [1937103] - cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not there (Phil Auld) [1937103] - cpufreq: ACPI: Extend frequency tables to cover boost frequencies (Phil Auld) [1937103] - sched/uclamp: Add CPU's clamp buckets refcounting (Phil Auld) [1937103] - x86: PM: Register syscore_ops for scale invariance (Phil Auld) [1937103] - sched/fair: Reduce cases for active balance (Phil Auld) [1937103] - sched/fair: Don't set LBF_ALL_PINNED unnecessarily (Phil Auld) [1937103] - sched/fair: Skip idle cfs_rq (Phil Auld) [1937103] - tick/sched: Make jiffies update quick check more robust (Phil Auld) [1937103] - sched/fair: Trivial correction of the newidle_balance() comment (Phil Auld) [1937103] - sched/fair: Clear SMT siblings after determining the core is not idle (Phil Auld) [1937103] - sched: Fix kernel-doc markup (Phil Auld) [1937103] - x86: Print ratio freq_max/freq_base used in frequency invariance calculations (Phil Auld) [1937103] - x86, sched: Use midpoint of max_boost and max_P for frequency invariance on AMD EPYC (Phil Auld) [1937103] - x86, sched: Calculate frequency invariance for AMD systems (Phil Auld) [1937103] - sched: Limit the amount of NUMA imbalance that can exist at fork time (Phil Auld) [1937103] - sched/numa: Allow a floating imbalance between NUMA nodes (Phil Auld) [1937103] - sched: Avoid unnecessary calculation of load imbalance at clone time (Phil Auld) [1937103] - sched/numa: Rename nr_running and break out the magic number (Phil Auld) [1937103] - sched/topology: Condition EAS enablement on FIE support (Phil Auld) [1937103] - sched/topology: Don't enable EAS on SMT systems (Phil Auld) [1937103] - sched/topology,schedutil: Wrap sched domains rebuild (Phil Auld) [1937103] - sched/core: Fix typos in comments (Phil Auld) [1937103] - sched: Fix rq->nr_iowait ordering (Phil Auld) [1937103] - sched: Fix data-race in wakeup (Phil Auld) [1937103] - sched/fair: Fix overutilized update in enqueue_task_fair() (Phil Auld) [1937103] - sched/fair: Dissociate wakeup decisions from SD flag value (Phil Auld) [1937103] - sched: Remove select_task_rq()'s sd_flag parameter (Phil Auld) [1937103] - sched: Add WF_TTWU, WF_EXEC wakeup flags (Phil Auld) [1937103] - sched/fair: Remove superfluous lock section in do_sched_cfs_slack_timer() (Phil Auld) [1937103] - sched/fair: Ensure tasks spreading in LLC during LB (Phil Auld) [1937103] - sched/fair: Reorder throttle_cfs_rq() path (Phil Auld) [1937103] - sched/fair: Check for idle core in wake_affine (Phil Auld) [1937103] - sched: Reenable interrupts in do_sched_yield() (Phil Auld) [1937103] - sched/fair: Improve the accuracy of sched_stat_wait statistics (Phil Auld) [1937103] - sched/fair: Tweak pick_next_entity() (Phil Auld) [1937103] - sched/debug: Add new tracepoint to track cpu_capacity (Phil Auld) [1937103] - sched/fair: Remove the force parameter of update_tg_load_avg() (Phil Auld) [1937103] - sched/rt: Disable RT_RUNTIME_SHARE by default (Phil Auld) [1937103] - sched: Cache task_struct::flags in sched_submit_work() (Phil Auld) [1937103] - sched/fair: Simplify the work when reweighting entity (Phil Auld) [1937103] - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu() (Phil Auld) [1937103] - sched/fair: Ignore cache hotness for SMT migration (Phil Auld) [1937103] - sched: Use __always_inline on is_idle_task() (Phil Auld) [1937103] - treewide: Use fallthrough pseudo-keyword (Phil Auld) [1937103] - sched/debug: Fix the alignment of the show-state debug output (Phil Auld) [1937103] - x86, sched: Bail out of frequency invariance if turbo_freq/base_freq gives 0 (Phil Auld) [1937103] - x86, sched: Bail out of frequency invariance if turbo frequency is unknown (Phil Auld) [1937103] - x86, sched: check for counters overflow in frequency invariant accounting (Phil Auld) [1937103] - exit: Move preemption fixup up, move blocking operations down (Phil Auld) [1937103] - net: bonding: remove repeated word (Jarod Wilson) [1936982] - net: bonding: Correct function name bond_change_active_slave() in comment (Jarod Wilson) [1936982] - bonding: Added -ENODEV interpret for slaves option (Jarod Wilson) [1936982] - bonding: 3ad: Print an error for unknown speeds (Jarod Wilson) [1936982] - bonding: 3ad: add support for 400G speed (Jarod Wilson) [1936982] - bonding: 3ad: add support for 200G speed (Jarod Wilson) [1936982] - net/bonding: Declare TLS RX device offload support (Jarod Wilson) [1936982] - net/bonding: Implement TLS TX device offload (Jarod Wilson) [1936982] - net/bonding: Take update_features call out of XFRM funciton (Jarod Wilson) [1936982] - net/bonding: Implement ndo_sk_get_lower_dev (Jarod Wilson) [1936982] - net/bonding: Take IP hash logic into a helper (Jarod Wilson) [1936982] - net: bonding: Notify ports about their initial state (Jarod Wilson) [1936982] - bonding: wait for sysfs kobject destruction before freeing struct slave (Jarod Wilson) [1936982] - bonding: advertise NETIF_F_GSO_SOFTWARE (Jarod Wilson) [1936982] - net/tls: Except bond interface from some TLS checks (Jarod Wilson) [1936982] - net/tls: Device offload to use lowest netdevice in chain (Jarod Wilson) [1936982] - ethtool: Add common function for filling out strings (Ivan Vecera) [1950987] - selftests: forwarding: vxlan_bridge_1d: Fix vxlan ecn decapsulate value (Hangbin Liu) [1949349] - selftests: forwarding: Fix race condition in mirror installation (Hangbin Liu) [1949349] - selftests: txtimestamp: fix compilation issue (Hangbin Liu) [1949349] - selftests: net: fib_tests: remove duplicate log test (Hangbin Liu) [1949349] - selftests: xfrm: fix test return value override issue in xfrm_policy.sh (Hangbin Liu) [1949349] - selftests: rtnetlink: load fou module for kci_test_encap_fou() test (Hangbin Liu) [1949349] - vxlan: move debug check after netdev unregister (Guillaume Nault) [1949167] - net: ip: always refragment ip defragmented packets (Guillaume Nault) [1949167] - net: fix pmtu check in nopmtudisc mode (Guillaume Nault) [1949167] - net: udp: make udp_tunnel_nic_info structure extensible (Ivan Vecera) [1948450] - macvlan: macvlan_count_rx() needs to be aware of preemption (Antoine Tenart) [1950012] - macvlan: remove redundant null check on data (Antoine Tenart) [1950012] - net: fix dev_ifsioc_locked() race condition (Antoine Tenart) [1950234] - ipv6: weaken the v4mapped source check (Hangbin Liu) [1949499] - ipv6: set multicast flag on the multicast route (Hangbin Liu) [1949499] - ipv6: create multicast route with RTPROT_KERNEL (Hangbin Liu) [1949499] - net: ipv6: Validate GSO SKB before finish IPv6 processing (Hangbin Liu) [1949499] - net: sit: unregister_netdevice on newlink's error path (Hangbin Liu) [1949499] - net: ip6_gre: fix moving ip6gre between namespaces (Hangbin Liu) [1949499] - gso: validate gso_type on ipip style tunnels (Hangbin Liu) [1949499] - net: page_pool: simplify page recycling condition tests (Ivan Vecera) [1935698] - net: use the new dev_page_is_reusable() instead of private versions (Ivan Vecera) [1935698] - net: introduce common dev_page_is_reusable() (Ivan Vecera) [1935698] - skbuff: constify skb_propagate_pfmemalloc() "page" argument (Ivan Vecera) [1935698] - mm: constify page_is_pfmemalloc() argument (Ivan Vecera) [1935698] - genetlink: allow dumping command-specific policy (Ivan Vecera) [1938919] - genetlink: properly support per-op policy dumping (Ivan Vecera) [1938919] - genetlink: factor skb preparation out of ctrl_dumppolicy() (Ivan Vecera) [1938919] - netlink: rework policy dump to support multiple policies (Ivan Vecera) [1938919] - netlink: compare policy more accurately (Ivan Vecera) [1938919] - genetlink: switch control commands to per-op policies (Ivan Vecera) [1938919] - genetlink: use parsed attrs in dumppolicy (Ivan Vecera) [1938919] - taskstats: move specifying netlink policy back to ops (Ivan Vecera) [1938919] - genetlink: bring back per op policy (Ivan Vecera) [1938919] - genetlink: use .start callback for dumppolicy (Ivan Vecera) [1938919] - genetlink: add a structure for dump state (Ivan Vecera) [1938919] - genetlink: move to smaller ops wherever possible (Ivan Vecera) [1938919] - genetlink: add small version of ops (Ivan Vecera) [1938919] - netlink: fix policy dump leak (Ivan Vecera) [1938919] - genetlink: get rid of family->attrbuf (Ivan Vecera) [1938919] - genetlink: clean up family attributes allocations (Ivan Vecera) [1938919] - genetlink: fix memory leaks in genl_family_rcv_msg_dumpit() (Ivan Vecera) [1938919] - net: genetlink: return the error code when attribute parsing fails. (Ivan Vecera) [1938919] - genetlink: do not parse attributes for families with zero maxattr (Ivan Vecera) [1938919] - net: tipc: prepare attrs in __tipc_nl_compat_dumpit() (Ivan Vecera) [1938919] - net: genetlink: always allocate separate attrs for dumpit ops (Ivan Vecera) [1938919] - net: genetlink: remove unused genl_family_attrbuf() (Ivan Vecera) [1938919] - net: tipc: allocate attrs locally instead of using genl_family_attrbuf in compat_dumpit() (Ivan Vecera) [1938919] - net: tipc: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: nfc: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: ieee802154: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: genetlink: parse attrs and store in contect info struct during dumpit (Ivan Vecera) [1938919] - net: genetlink: push attrbuf allocation and parsing to a separate function (Ivan Vecera) [1938919] - net: genetlink: introduce dump info struct to be available during dumpit op (Ivan Vecera) [1938919] - net: genetlink: push doit/dumpit code from genl_family_rcv_msg (Ivan Vecera) [1938919] - devlink: Use controller while building phys_port_name (Petr Oros) [1935615] - devlink: Introduce controller number (Petr Oros) [1935615] - devlink: Introduce external controller flag (Petr Oros) [1935615] - devlink: Move structure comments outside of structure (Petr Oros) [1935615] - devlink: Add comment block for missing port attributes (Petr Oros) [1935615] - net/mlx5: E-switch, Read controller number from device (Petr Oros) [1935615] - devlink: don't crash if netdev is NULL (Petr Oros) [1935615] - vdpa/mlx5: Use write memory barrier after updating CQ index (Jason Wang) [1877270] - vhost_vdpa: return -EFAULT if copy_to_user() fails (Jason Wang) [1877270] - vdpa: mlx5: fix vdpa/vhost dependencies (Jason Wang) [1877270] - vhost-vdpa: fix page pinning leakage in error path (rework) (Jason Wang) [1877270] - vdpasim: fix "mac_pton" undefined error (Jason Wang) [1877270] - vdpasim: allow to assign a MAC address (Jason Wang) [1877270] - vdpasim: fix MAC address configuration (Jason Wang) [1877270] - vdpa: handle irq bypass register failure case (Jason Wang) [1877270] - vdpa_sim: Fix DMA mask (Jason Wang) [1877270] - Revert "vhost-vdpa: fix page pinning leakage in error path" (Jason Wang) [1877270] - vdpa/mlx5: Fix error return in map_direct_mr() (Jason Wang) [1877270] - vhost_vdpa: Return -EFAULT if copy_from_user() fails (Jason Wang) [1877270] - vdpa_sim: implement get_iova_range() (Jason Wang) [1877270] - vhost: vdpa: report iova range (Jason Wang) [1877270] - vdpa: introduce config op to get valid iova range (Jason Wang) [1877270] - vhost_vdpa: remove unnecessary spin_lock in vhost_vring_call (Jason Wang) [1877270] - vdpa/mlx5: Setup driver only if VIRTIO_CONFIG_S_DRIVER_OK (Jason Wang) [1877270] - vhost_vdpa: Fix duplicate included kernel.h (Jason Wang) [1877270] - vdpa/mlx5: Fix failure to bring link up (Jason Wang) [1877270] - vdpa/mlx5: Make use of a specific 16 bit endianness API (Jason Wang) [1877270] - vdpa/mlx5: Fix dependency on MLX5_CORE (Jason Wang) [1877270] - vdpa/mlx5: should keep avail_index despite device status (Jason Wang) [1877270] - vhost-vdpa: fix page pinning leakage in error path (Jason Wang) [1877270] - vhost-vdpa: fix vhost_vdpa_map() on error condition (Jason Wang) [1877270] - vhost vdpa: fix vhost_vdpa_open error handling (Jason Wang) [1877270] - vhost-vdpa: fix backend feature ioctls (Jason Wang) [1877270] - vdpa/mlx5: Avoid warnings about shifts on 32-bit platforms (Jason Wang) [1877270] - vdpa: ifcvf: free config irq in ifcvf_free_irq() (Jason Wang) [1877270] - vdpa: ifcvf: return err when fail to request config irq (Jason Wang) [1877270] - vdpa/mlx5: fix up endian-ness for mtu (Jason Wang) [1877270] - vdpa: Fix pointer math bug in vdpasim_get_config() (Jason Wang) [1877270] - vdpa/mlx5: Fix pointer math in mlx5_vdpa_get_config() (Jason Wang) [1877270] - mlx5: vdpa: fix possible uninitialized var (Jason Wang) [1877270] - vdpa/mlx5: fix memory allocation failure checks (Jason Wang) [1877270] - vdpa/mlx5: Fix uninitialised variable in core/mr.c (Jason Wang) [1877270] - vdpa_sim: init iommu lock (Jason Wang) [1877270] - redhat: enable mlx5e vDPA driver (Jason Wang) [1877270] - vdpa/mlx5: Add VDPA driver for supported mlx5 devices (Jason Wang) [1877270] - vdpa/mlx5: Add shared memory registration code (Jason Wang) [1877270] - vdpa/mlx5: Add support library for mlx5 VDPA implementation (Jason Wang) [1877270] - vdpa/mlx5: Add hardware descriptive header file (Jason Wang) [1877270] - vdpa: Modify get_vq_state() to return error code (Jason Wang) [1877270] - net/vdpa: Use struct for set/get vq state (Jason Wang) [1877270] - vdpa: remove hard coded virtq num (Jason Wang) [1877270] - vdpasim: support batch updating (Jason Wang) [1877270] - vhost-vdpa: support IOTLB batching hints (Jason Wang) [1877270] - vhost-vdpa: support get/set backend features (Jason Wang) [1877270] - vhost: generialize backend features setting/getting (Jason Wang) [1877270] - vhost-vdpa: refine ioctl pre-processing (Jason Wang) [1877270] - vDPA: dont change vq irq after DRIVER_OK (Jason Wang) [1877270] - ifcvf: implement vdpa_config_ops.get_vq_irq() (Jason Wang) [1877270] - vhost_vdpa: implement IRQ offloading in vhost_vdpa (Jason Wang) [1877270] - vDPA: add get_vq_irq() in vdpa_config_ops (Jason Wang) [1877270] - vhost: introduce vhost_vring_call (Jason Wang) [1877270] - vdpasim: protect concurrent access to iommu iotlb (Jason Wang) [1877270] - vhost: vdpa: remove per device feature whitelist (Jason Wang) [1877270] - vdpa_sim: fix endian-ness of config space (Jason Wang) [1877270] - virtio_vdpa: legacy features handling (Jason Wang) [1877270] - vhost/vdpa: switch to new helpers (Jason Wang) [1877270] - vdpa: make sure set_features is invoked for legacy (Jason Wang) [1877270] - vhost_vdpa: Fix potential underflow in vhost_vdpa_mmap() (Jason Wang) [1877270] - vdpa: fix typos in the comments for __vdpa_alloc_device() (Jason Wang) [1877270] - ifcvf: implement config interrupt in IFCVF (Jason Wang) [1877270] - vhost: replace -1 with VHOST_FILE_UNBIND in ioctls (Jason Wang) [1877270] - vhost_vdpa: Support config interrupt in vdpa (Jason Wang) [1877270] - ifcvf: ignore continuous setting same status value (Jason Wang) [1877270] - vdpasim: Fix some coccinelle warnings (Jason Wang) [1877270] - ifcvf: move IRQ request/free to status change handlers (Jason Wang) [1877270] - vhost_vdpa: disable doorbell mapping for !MMU (Jason Wang) [1877270] - vhost_vdpa: support doorbell mapping via mmap (Jason Wang) [1877270] - vdpa: introduce get_vq_notification method (Jason Wang) [1877270] - vhost: use mmgrab() instead of mmget() for non worker device (Jason Wang) [1877270] - vhost: allow device that does not depend on vhost worker (Jason Wang) [1877270] - vhost: revert "vhost: disable for OABI" (Jason Wang) [1877270] - vdpasim: remove unused variable 'ret' (Jason Wang) [1877270] - vhost: remove set but not used variable 'status' (Jason Wang) [1877270] - vhost: vdpa: remove unnecessary null check (Jason Wang) [1877270] - virtio/test: fix up after IOTLB changes (Jason Wang) [1877270] - vhost/test: fix build for vhost test (Jason Wang) [1877270] - tools/virtio: option to build an out of tree module (Jason Wang) [1877270] - vhost/test: fix build for vhost test (Jason Wang) [1877270] - vhost: fix VHOST_GET_BACKEND_FEATURES ioctl request definition (Jason Wang) [1877270] - perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3 (Michael Petlan) [1950388]- redhat/configs/editconfig: Add support for a bugzilla entry (David Arcari) - tools/power turbostat: Revert "[tools] tools/power turbostat: Enable accumulate RAPL display" (Prarit Bhargava) [1944699] - mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start (Jarod Wilson) [1914996] {CVE-2020-36158} - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP (Alaa Hleihel) [1932839 1936742] - net/mlx5e: Reject tc rules which redirect from a VF to itself (Alaa Hleihel) [1932839] - net/mlx5: CT: Add support for matching on ct_state inv and rel flags (Alaa Hleihel) [1932839 1942681] - net: openvswitch: add log message for error case (Eelco Chaudron) [1937697] - net: openvswitch: conntrack: simplify the return expression of ovs_ct_limit_get_default_limit() (Eelco Chaudron) [1937697] - net: openvswitch: Be liberal in tcp conntrack. (Eelco Chaudron) [1937697] - netfilter: conntrack: tcp: only close if RST matches exact sequence (Eelco Chaudron) [1937697] - openvswitch: Use IS_ERR instead of IS_ERR_OR_NULL (Eelco Chaudron) [1937697] - net: openvswitch: Fix kerneldoc warnings (Eelco Chaudron) [1937697] - net: openvswitch: remove unnecessary ASSERT_OVSL in ovs_vport_del() (Eelco Chaudron) [1937697] - cifs: revalidate mapping when we open files for SMB1 POSIX (Ronnie Sahlberg) [1933527] - Revert "vfs: Allow userns root to call mknod on owned filesystems." (Alexey Gladkov) [1902543] - mfd: intel-lpss: Add Intel Alder Lake PCH-S PCI IDs (David Arcari) [1840244] - nvme: retrigger ANA log update if group descriptor isn't found (Gopal Tiwari) [1910493] - locking/qrwlock: Fix ordering in queued_write_lock_slowpath() (Waiman Long) [1950110] - PCI: switchtec: Add missing __iomem tag to fix sparse warnings (Myron Stowe) [1946645] - PCI: switchtec: Add missing __iomem and __user tags to fix sparse warnings (Myron Stowe) [1946645] - PCI: Release IVRS table in AMD ACS quirk (Myron Stowe) [1946645] - PCI/MSI: Forward MSI-X error code in pci_alloc_irq_vectors_affinity() (Myron Stowe) [1946645] - PCI: Remove unused pci_lost_interrupt() (Myron Stowe) [1946645] - PCI: Move PCI_VENDOR_ID_REDHAT definition to pci_ids.h (Myron Stowe) [1946645] - PCI: Fix error in panic message (Myron Stowe) [1946645] - PCI: Replace lkml.org, spinics, gmane with lore.kernel.org (Myron Stowe) [1946645] - PCI: Replace http:// links with https:// (Myron Stowe) [1946645] - PCI: exynos: Rename Exynos to lowercase (Myron Stowe) [1946645] - PCI: Align PCIe capability and PCI accessor return values (Myron Stowe) [1946645] - PCI: Convert PCIe capability PCIBIOS errors to errno (Myron Stowe) [1946645] - PCI: rpadlpar: Make functions static (Myron Stowe) [1946645] - PCI: Fix pci_slot_release() NULL pointer dereference (Myron Stowe) [1946645] - PCI: Fix pci_create_slot() reference count leak (Myron Stowe) [1946645] - PCI: Announce device after early fixups (Myron Stowe) [1946645] - PCI: Always enable ACS even if no ACS Capability (Myron Stowe) [1946645] - PCI: Cache ACS capability offset in device (Myron Stowe) [1946645] - PCI: Reorder pci_enable_acs() and dependencies (Myron Stowe) [1946645] - PCI: Add device even if driver attach failed (Myron Stowe) [1946645] - PCI: Fix pci_cfg_wait queue locking problem (Myron Stowe) [1946645] - PCI/ASPM: Add missing newline in sysfs 'policy' (Myron Stowe) [1946645]- gfs2: report "already frozen/thawed" errors (Bob Peterson) [1932236] - gfs2: move freeze glock outside the make_fs_rw and _ro functions (Bob Peterson) [1932236] - gfs2: Add common helper for holding and releasing the freeze glock (Bob Peterson) [1932236] - gfs2: in signal_our_withdraw wait for unfreeze of _this_ fs only (Bob Peterson) [1932236] - gfs2: Don't freeze the file system during unmount (Bob Peterson) [1932236] - gfs2: Fix regression in freeze_go_sync (Bob Peterson) [1932236] - gfs2: The freeze glock should never be frozen (Bob Peterson) [1932236] - gfs2: When freezing gfs2, use GL_EXACT and not GL_NOCACHE (Bob Peterson) [1932236] - gfs2: Abort gfs2_freeze if io error is seen (Bob Peterson) [1932236] - gfs2: read-only mounts should grab the sd_freeze_gl glock (Bob Peterson) [1932236] - gfs2: freeze should work on read-only mounts (Bob Peterson) [1932236] - bpf: Mark LSM link with rh_mark_used_feature call (Jiri Olsa) [1901039] - Revert "[tools] bpf: selftests: remove test_progs LSM test" (Ondrej Mosnacek) [1901039] - configs: enable BPF LSM (Ondrej Mosnacek) [1901039] - security: Fix hook iteration and default value for inode_copy_up_xattr (Ondrej Mosnacek) [1901039] - security: Fix hook iteration for secid_to_secctx (Ondrej Mosnacek) [1901039] - security: Fix the default value of secid_to_secctx hook (Ondrej Mosnacek) [1901039] - security: Fix the default value of fs_context_parse_param hook (Ondrej Mosnacek) [1901039] - bpf: lsm: Initialize the BPF LSM hooks (Ondrej Mosnacek) [1901039] - security: Refactor declaration of LSM hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the shm_* hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the sem_* hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the msg_queue_* hooks (Ondrej Mosnacek) [1901039] - LSM: Revive CONFIG_DEFAULT_SECURITY_* for "make oldconfig" (Ondrej Mosnacek) [1901039] - LSM: Ignore "security=" when "lsm=" is specified (Ondrej Mosnacek) [1901039] - LSM: Update function documentation for cap_capable (Ondrej Mosnacek) [1901039] - procfs: add smack subdir to attrs (Ondrej Mosnacek) [1901039] - capability: Initialize as LSM_ORDER_FIRST (Ondrej Mosnacek) [1901039] - LSM: Introduce enum lsm_order (Ondrej Mosnacek) [1901039] - Yama: Initialize as ordered LSM (Ondrej Mosnacek) [1901039] - LoadPin: Initialize as ordered LSM (Ondrej Mosnacek) [1901039] - LSM: Split LSM preparation from initialization (Ondrej Mosnacek) [1901039] - LSM: Add all exclusive LSMs to ordered initialization (Ondrej Mosnacek) [1901039] - LSM: Separate idea of "major" LSM from "exclusive" LSM (Ondrej Mosnacek) [1901039] - LSM: Refactor "security=" in terms of enable/disable (Ondrej Mosnacek) [1901039] - LSM: Prepare for reorganizing "security=" logic (Ondrej Mosnacek) [1901039] - LSM: Tie enabling logic to presence in ordered list (Ondrej Mosnacek) [1901039] - LSM: Introduce "lsm=" for boottime LSM selection (Ondrej Mosnacek) [1901039] - LSM: Introduce CONFIG_LSM (Ondrej Mosnacek) [1901039] - LSM: Build ordered list of LSMs to initialize (Ondrej Mosnacek) [1901039] - LSM: Lift LSM selection out of individual LSMs (Ondrej Mosnacek) [1901039] - LSM: Plumb visibility into optional "enabled" state (Ondrej Mosnacek) [1901039] - LSM: Provide separate ordered initialization (Ondrej Mosnacek) [1901039] - LSM: Introduce LSM_FLAG_LEGACY_MAJOR (Ondrej Mosnacek) [1901039] - LSM: Don't ignore initialization failures (Ondrej Mosnacek) [1901039] - LSM: Provide init debugging infrastructure (Ondrej Mosnacek) [1901039] - LSM: Record LSM name in struct lsm_info (Ondrej Mosnacek) [1901039] - LSM: Convert security_initcall() into DEFINE_LSM() (Ondrej Mosnacek) [1901039] - vmlinux.lds.h: Move LSM_TABLE into INIT_DATA (Ondrej Mosnacek) [1901039] - LSM: Convert from initcall to struct lsm_info (Ondrej Mosnacek) [1901039] - LSM: Remove initcall tracing (Ondrej Mosnacek) [1901039] - LSM: Rename .security_initcall section to .lsm_info (Ondrej Mosnacek) [1901039] - vmlinux.lds.h: Avoid copy/paste of security_init section (Ondrej Mosnacek) [1901039] - LSM: Correctly announce start of LSM initialization (Ondrej Mosnacek) [1901039] - proc: save 2 atomic ops on write to "/proc/*/attr/*" (Ondrej Mosnacek) [1901039] - ALSA: usb-audio: fix NULL ptr dereference in usb_audio_probe (Jaroslav Kysela) [1870724] - ALSA: usb-audio: fix use after free in usb_audio_disconnect (Jaroslav Kysela) [1870724] - ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend() (Jaroslav Kysela) [1870724] - Bluetooth: btusb: Fix the autosuspend enable and disable (Gopal Tiwari) [1927375] - flow_dissector: fix TTL and TOS dissection on IPv4 fragments (Davide Caratti) [1882607] - net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0 (Balazs Nemeth) [1922898] - net: check if protocol extracted by virtio_net_hdr_set_proto is correct (Balazs Nemeth) [1922898] - redhat/configs: Add CONFIG_PINCTRL_ALDERLAKE (David Arcari) [1840250] - pinctrl: intel: Add Intel Alder Lake-S pin controller support (David Arcari) [1840250] - cpufreq: intel_pstate: Remove repeated word (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if available (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Rename two functions (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Always read hwp_cap_cached with READ_ONCE() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: remove obsolete functions (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Use HWP capabilities in intel_cpufreq_adjust_perf() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Fix fast-switch fallback path (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Use most recent guaranteed performance values (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Implement the ->adjust_perf() callback (Puneet Sethi) [1926919] - cpufreq: Add special-purpose fast-switching callback for drivers (Puneet Sethi) [1926919] - cpufreq: schedutil: Add util to struct sg_cpu (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Simplify intel_cpufreq_update_pstate() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Take CPUFREQ_GOV_STRICT_TARGET into account (Puneet Sethi) [1926919] - cpufreq: Add strict_target to struct cpufreq_policy (Puneet Sethi) [1926919] - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET (Puneet Sethi) [1926919] - cpufreq: Introduce governor flags (Puneet Sethi) [1926919] - cpufreq: schedutil: Don't skip freq update if need_freq_update is set (Puneet Sethi) [1926919] - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is set (Puneet Sethi) [1926919] - cpufreq: Introduce cpufreq_driver_test_flags() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Avoid missing HWP max updates in passive mode (Puneet Sethi) [1926919] - cpufreq: schedutil: restore cached freq when next_f is not changed (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Delete intel_pstate sysfs if failed to register the driver (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Fix missing return statement (Puneet Sethi) [1926919] - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag (Puneet Sethi) [1926919] - ACPI: processor: Fix build when CONFIG_ACPI_PROCESSOR=m (Vitaly Kuznetsov) [1929266] - ACPI: processor: Fix CPU0 wakeup in acpi_idle_play_dead() (Vitaly Kuznetsov) [1929266] - x86/ioapic: Ignore IRQ2 again (Vitaly Kuznetsov) [1929266]- selinux: fix deadlock in security_set_bools() (Ondrej Mosnacek) [1924230] - sctp: move sk_route_caps check and set into sctp_outq_flush_transports (Xin Long) [1946733] - sctp: bring inet(6)_skb_parm back to sctp_input_cb (Xin Long) [1946733] - sctp: enable udp tunneling socks (Xin Long) [1946733] - sctp: handle the init chunk matching an existing asoc (Xin Long) [1946733] - sctp: add the error cause for new encapsulation port restart (Xin Long) [1946733] - sctp: support for sending packet over udp6 sock (Xin Long) [1946733] - sctp: support for sending packet over udp4 sock (Xin Long) [1946733] - sctp: call sk_setup_caps in sctp_packet_transmit instead (Xin Long) [1946733] - sctp: add udphdr to overhead when udp_port is set (Xin Long) [1946733] - sctp: allow changing transport encap_port by peer packets (Xin Long) [1946733] - sctp: add SCTP_REMOTE_UDP_ENCAPS_PORT sockopt (Xin Long) [1946733] - sctp: add encap_port for netns sock asoc and transport (Xin Long) [1946733] - sctp: add encap_err_lookup for udp encap socks (Xin Long) [1946733] - sctp: create udp6 sock and set its encap_rcv (Xin Long) [1946733] - sctp: create udp4 sock and add its encap_rcv (Xin Long) [1946733] - udp: support sctp over udp in skb_udp_tunnel_segment (Xin Long) [1946733] - udp6: move the mss check after udp gso tunnel processing (Xin Long) [1946733] - udp: check udp sock encap_type in __udp_lib_err (Xin Long) [1946733] - sctp: copy the optval from user space in sctp_setsockopt (Xin Long) [1946733] - net: Convert protocol error handlers from void to int (Xin Long) [1946733] - Enable CONFIG_ENERGY_MODEL (Phil Auld) [1938339] - proc/sysctl: add shared variables for range check (Phil Auld) [1938339] - Enable CONFIG_CPU_FREQ_GOV_SCHEDUTIL for all architectures (Phil Auld) [1938339] - PM / hibernate: cast PAGE_SIZE to int when comparing with error code (Chris von Recklinghausen) [1934033] - mm: revert fix false-positive OVERCOMMIT_GUESS failures (Rafael Aquini) [1913045 1908668] - redhat/config: Enable CONFIG_PAGE_POISONING (Waiman Long) [1942149] - mm, page_poison: remove CONFIG_PAGE_POISONING_ZERO (Waiman Long) [1942149] - mm, page_poison: remove CONFIG_PAGE_POISONING_NO_SANITY (Waiman Long) [1942149] - kernel/power: allow hibernation with page_poison sanity checking (Waiman Long) [1942149] - mm, page_poison: use static key more efficiently (Waiman Long) [1942149] - mm, page_alloc: do not rely on the order of page_poison and init_on_alloc/free parameters (Waiman Long) [1942149] - mm/page_alloc: clear all pages in post_alloc_hook() with init_on_alloc=1 (Waiman Long) [1942149] - arch, mm: make kernel_page_present() always available (Waiman Long) [1942149] - arch, mm: restore dependency of __kernel_map_pages() on DEBUG_PAGEALLOC (Waiman Long) [1942149] - PM: hibernate: make direct map manipulations more explicit (Waiman Long) [1942149] - mm: introduce debug_pagealloc_{map,unmap}_pages() helpers (Waiman Long) [1942149] - mm: rename page_order() to buddy_order() (Waiman Long) [1942149] - mm/page_alloc: place pages to tail in __free_pages_core() (Waiman Long) [1942149] - mm/page_alloc: move pages to tail in move_to_free_list() (Waiman Long) [1942149] - mm/page_alloc: place pages to tail in __putback_isolated_page() (Waiman Long) [1942149] - mm/page_alloc: convert "report" flag of __free_one_page() to a proper flag (Waiman Long) [1942149] - mm/page_alloc: drop stale pageblock comment in memmap_init_zone*() (Waiman Long) [1942149] - mm/memory_hotplug: simplify page onlining (Waiman Long) [1942149] - mm/page_isolation: simplify return value of start_isolate_page_range() (Waiman Long) [1942149] - mm/memory_hotplug: drop nr_isolate_pageblock in offline_pages() (Waiman Long) [1942149] - mm/page_alloc: simplify __offline_isolated_pages() (Waiman Long) [1942149] - mm/memory_hotplug: simplify page offlining (Waiman Long) [1942149] - mm/memory_hotplug: enforce section granularity when onlining/offlining (Waiman Long) [1942149] - mm/memory_hotplug: inline __offline_pages() into offline_pages() (Waiman Long) [1942149] - mm/page_poison.c: replace bool variable with static key (Waiman Long) [1942149] - mm/page_alloc.c: fix early params garbage value accesses (Waiman Long) [1942149] - mm/memory_hotplug: document why shuffle_zone() is relevant (Waiman Long) [1942149] - mm: replace '---help---' in Kconfig files with 'help' (Waiman Long) [1942149] - mm/memory_hotplug: fix a typo in comment "recoreded"->"recorded" (Waiman Long) [1942149] - mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE (Waiman Long) [1942149] - x86/mm/cpa: Flush direct map alias during cpa (Waiman Long) [1942149] - mm/page_alloc: simplify page_is_buddy() for better code readability (Waiman Long) [1942149] - mm/memory.c: add apply_to_existing_page_range() helper (Waiman Long) [1942149] - x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/ (Waiman Long) [1942149] - x86/mm/pat: Rename pat_rbtree.c to pat_interval.c (Waiman Long) [1942149] - mm/memory_hotplug: online_pages cannot be 0 in online_pages() (Waiman Long) [1942149] - mm/memory_hotplug: make sure the pfn is aligned to the order when onlining (Waiman Long) [1942149] - mm/memory_hotplug: simplify online_pages_range() (Waiman Long) [1942149] - mm/memory_hotplug: drop PageReserved() check in online_pages_range() (Waiman Long) [1942149] - mm/memory_hotplug.c: use PFN_UP / PFN_DOWN in walk_system_ram_range() (Waiman Long) [1942149] - mm/page_poison.c: fix a typo in a comment (Waiman Long) [1942149] - mm/slab: Remove store_stackinfo() (Waiman Long) [1942149] - mm/resource: Let walk_system_ram_range() search child resources (Waiman Long) [1942149] - mm/page_alloc.c: use a single function to free page (Waiman Long) [1942149] - mm/page_alloc.c: free order-0 pages through PCP in page_frag_free() (Waiman Long) [1942149] - x86/mm/cpa: Fix set_mce_nospec() (Waiman Long) [1942149] - x86/mm/cpa: Rename @addrinarray to @numpages (Waiman Long) [1942149] - x86/mm/cpa: Better use CLFLUSHOPT (Waiman Long) [1942149] - x86/mm/cpa: Fold cpa_flush_range() and cpa_flush_array() into a single cpa_flush() function (Waiman Long) [1942149] - x86/mm/cpa: Make cpa_data::numpages invariant (Waiman Long) [1942149] - x86/mm/cpa: Optimize cpa_flush_array() TLB invalidation (Waiman Long) [1942149] - x86/mm/cpa: Simplify the code after making cpa->vaddr invariant (Waiman Long) [1942149] - x86/mm/cpa: Make cpa_data::vaddr invariant (Waiman Long) [1942149] - x86/mm/cpa: Add __cpa_addr() helper (Waiman Long) [1942149] - x86/mm/cpa: Add ARRAY and PAGES_ARRAY selftests (Waiman Long) [1942149] - resource/docs: Complete kernel-doc style function documentation (Waiman Long) [1942149] - resource/docs: Fix new kernel-doc warnings (Waiman Long) [1942149] - resource: Clean it up a bit (Waiman Long) [1942149] - mm: clarify CONFIG_PAGE_POISONING and usage (Waiman Long) [1942149] - selftests: kvm: Raise the default timeout to 120 seconds (Emanuele Giuseppe Esposito) [1894828] - KVM: Raise the maximum number of user memslots (Emanuele Giuseppe Esposito) [1894828] - block: recalculate segment count for multi-segment discards correctly (Ming Lei) [1922370] - i40e: Fix VFs not created (Stefan Assmann) [1875338] - vfs: fix page locking deadlocks when deduping files (Gao Xiang) [1916242]- tg3: improve PCI VPD access (Jonathan Toppins) [1921456] - scsi: target: pscsi: Clean up after failure in pscsi_map_sg() (Maurizio Lombardi) [1939458] - scsi: target: pscsi: Avoid OOM in pscsi_map_sg() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix memory leak caused by wrong uio usage (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Move some functions without code change (Maurizio Lombardi) [1939458] - scsi: target: core: Prevent underflow for service actions (Maurizio Lombardi) [1939458] - scsi: target: core: Add cmd length set before cmd complete (Maurizio Lombardi) [1939458] - scsi: target: sbp: Remove unneeded semicolon (Maurizio Lombardi) [1939458] - scsi: target: core: Change ASCQ for residual write (Maurizio Lombardi) [1939458] - scsi: target: core: Signal WRITE residuals (Maurizio Lombardi) [1939458] - scsi: target: core: Set residuals for 4Kn devices (Maurizio Lombardi) [1939458] - scsi: target: core: Remove in_interrupt() check in transport_handle_cdb_direct() (Maurizio Lombardi) [1939458] - scsi: target: core: Replace in_interrupt() usage in target_submit_cmd_map_sgls() (Maurizio Lombardi) [1939458] - scsi: target: alua: Remove in_interrupt() usage in core_alua_check_nonop_delay() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Redo iscsit_check_session_usage_count() return code (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Avoid in_interrupt() usage in iscsit_check_session_usage_count() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Avoid in_interrupt() usage in iscsit_close_session() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Fix typo in comment (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix use-after-free of se_cmd->priv (Maurizio Lombardi) [1939458] - scsi: target: core: Fix fall-through warnings for Clang (Maurizio Lombardi) [1939458] - scsi: tcm_loop: Allow queues, can_queue and cmd_per_lun to be settable (Maurizio Lombardi) [1939458] - scsi: target: Make state_list per CPU (Maurizio Lombardi) [1939458] - scsi: target: Drop sess_cmd_lock from I/O path (Maurizio Lombardi) [1939458] - scsi: target: Remove TARGET_SCF_LOOKUP_LUN_FROM_TAG (Maurizio Lombardi) [1939458] - scsi: target: Fix cmd_count ref leak (Maurizio Lombardi) [1939458] - scsi: target: Fix LUN ref count handling (Maurizio Lombardi) [1939458] - scsi: target: Return COMPARE AND WRITE miscompare offsets (Maurizio Lombardi) [1939458] - scsi: target: Split out COMPARE AND WRITE memcmp into helper (Maurizio Lombardi) [1939458] - scsi: target: Rename cmd.bad_sector to cmd.sense_info (Maurizio Lombardi) [1939458] - scsi: target: Rename struct sense_info to sense_detail (Maurizio Lombardi) [1939458] - scsi: target: tcmu: scatter_/gather_data_area() rework (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Replace zero-length array with flexible-array member (Maurizio Lombardi) [1939458] - scsi: target: rd: Drop double zeroing (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Optimize scatter_data_area() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Optimize queue_cmd_ring() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Join tcmu_cmd_get_data_length() and tcmu_cmd_get_block_cnt() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Add missing newline when printing parameters (Maurizio Lombardi) [1939458] - scsi: target: Remove redundant assignment to variable 'ret' (Maurizio Lombardi) [1939458] - x86/resctrl: Fix AMD L3 QOS CDP enable/disable (Wei Huang) [1868984] - i2c: i801: Add support for Intel Alder Lake PCH-S (David Arcari) [1840242] - esp: delete NETIF_F_SCTP_CRC bit from features for esp offload (Xin Long) [1815560] - net/sched: act_ct: clear post_ct if doing ct_clear (Marcelo Ricardo Leitner) [1941889] - net: Change dev parameter to const in netif_device_present() (Josef Oskera) [1941728] - [x86] x86/mce: Increase maximum number of banks to 64 (Terry Bowman) [1931679]- scsi: megaraid_sas: Fix a bunch of misnamed functions in their headers (Tomas Henzl) [1924687] - scsi: megaraid_sas: Replace sdev_busy with local counter (Tomas Henzl) [1924687] - scsi: megaraid: Fix ifnullfree.cocci warnings (Tomas Henzl) [1924687] - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression (Tomas Henzl) [1924687] - Revert "Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug"" (Tomas Henzl) [1924687] - Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug" (Tomas Henzl) [1924687] - scsi: megaraid_sas: Update function description (Tomas Henzl) [1924687] - scsi: megaraid_sas: Use generic power management (Tomas Henzl) [1924687] - megaraid_sas(treewide): Use fallthrough pseudo-keyword (Tomas Henzl) [1924687] - scsi: megaraid_sas: Drop PCI wakeup calls from .resume (Tomas Henzl) [1924687] - scsi: megaraid_sas: Check user-provided offsets (Tomas Henzl) [1924687] - scsi: mpt3sas: Update driver version to 37.101.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply post array allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply post buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force sense buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force chain buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force PCIe scatterlist allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Replace unnecessary dynamic allocation with a static one (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix some kernel-doc misnaming issues (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix a couple of misdocumented functions/params (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix a bunch of potential naming doc-rot (Tomas Henzl) [1922058] - scsi: mpt3sas: Move a little data from the stack onto the heap (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix misspelling of _base_put_smid_default_atomic() (Tomas Henzl) [1922058] - scsi: mpt3sas: Update driver version to 37.100.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Additional diagnostic buffer query interface (Tomas Henzl) [1922058] - scsi: mpt3sas: Add support for shared host tagset for CPU hotplug (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix ReplyPostFree pool allocation (Tomas Henzl) [1922058] - scsi: mpt3sas: Simplify bool comparison (Tomas Henzl) [1922058] - scsi: mpt3sas: Signedness bug in _base_get_diag_triggers() (Tomas Henzl) [1922058] - scsi: mpt3sas: Update driver version to 36.100.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Handle trigger page after firmware update (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent MPI trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent SCSI sense trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent Event trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent Master trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent trigger pages support (Tomas Henzl) [1922058] - scsi: mpt3sas: Sync time periodically between driver and firmware (Tomas Henzl) [1922058] - scsi: mpt3sas: Increase IOCInit request timeout to 30s (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix ioctl timeout (Tomas Henzl) [1922058] - scsi: mpt3sas: Remove in_interrupt() (Tomas Henzl) [1922058] - scsi: mpt3sas_scsih: Use generic power management (Tomas Henzl) [1922058] - scsi: mpt3sas_scsih: Drop PCI Wakeup calls from .resume (Tomas Henzl) [1922058] - scsi: mpt3sas: mpt3sas_scsih: Fix function documentation formatting (Tomas Henzl) [1922058] - mpt3sas: Use fallthrough pseudo-keyword (Tomas Henzl) [1922058] - net: add inline function skb_csum_is_sctp (Josef Oskera) [1939341] - psample: Fix user API breakage (Ivan Vecera) [1939499] - net: psample: Fix netlink skb length with tunnel info (Ivan Vecera) [1939499] - net: psample: Add tunnel support (Ivan Vecera) [1939499] - net: core: introduce struct netdev_nested_priv for nested interface infrastructure (Ivan Vecera) [1939402] - net: add function dev_fetch_sw_netstats for fetching pcpu_sw_netstats (Josef Oskera) [1935717] - net: core: add devm_netdev_alloc_pcpu_stats (Josef Oskera) [1935717] - net: core: add dev_sw_netstats_tx_add (Josef Oskera) [1935717] - net: netdevice.h: sw_netstats_rx_add helper (Josef Oskera) [1935717] - net: netdevice: Add operation ndo_sk_get_lower_dev (Josef Oskera) [1935709] - genirq: Provide irq_get_effective_affinity() (Josef Oskera) [1935670]- locking/locktorture: Fix incorrect use of ww_acquire_ctx in ww_mutex test (Waiman Long) [1871851] - locking/locktorture: Pass thread id to lock/unlock functions (Waiman Long) [1871851] - locking/ww_mutex: Remove DEFINE_WW_MUTEX() macro (Waiman Long) [1871851] - locking/locktorture: Fix false positive circular locking splat in ww_mutex test (Waiman Long) [1871851] - locking/ww_mutex: Fix acquire/release imbalance in ww_acquire_init()/ww_acquire_fini() (Waiman Long) [1871851] - locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling (Waiman Long) [1871851] - locking: Remove duplicate include of percpu-rwsem.h (Waiman Long) [1871851] - locktorture: Invoke percpu_free_rwsem() to do percpu-rwsem cleanup (Waiman Long) [1871851] - locktorture: Prevent hangs for invalid arguments (Waiman Long) [1871851] - locktorture: Ignore nreaders_stress if no readlock support (Waiman Long) [1871851] - locktorture: Track time of last ->writeunlock() (Waiman Long) [1871851] - locktorture: Make function torture_percpu_rwsem_init() static (Waiman Long) [1871851] - sched,locktorture: Convert to sched_set_fifo() (Waiman Long) [1871851] - locktorture: Use true and false to assign to bool variables (Waiman Long) [1871851] - locktorture: Print ratio of acquisitions, not failures (Waiman Long) [1871851] - locktorture: NULL cxt.lwsa and cxt.lrsa to allow bad-arg detection (Waiman Long) [1871851] - locking/locktorture: Convert to SPDX license identifier (Waiman Long) [1871851] - tty: Fix ->session locking (Chris von Recklinghausen) [1908059] {CVE-2020-29660} - net: skbext: fix secpath use-after-free with ip fragmentation (Sabrina Dubroca) [1901454]- nfs: we don't support removing system.nfs4_acl (Scott Mayhew) [1944659] - redhat/configs: Disable CONFIG_INFINIBAND_HNS* (Kamal Heib) [1941259] - mm: Revert "remove the account_page_dirtied export" (Waiman Long) [1941257] - Revert "[netdrv] net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1940842]- geneve: do not modify the shared tunnel info when PMTU triggers an ICMP reply (Antoine Tenart) [1941753] - vxlan: do not modify the shared tunnel info when PMTU triggers an ICMP reply (Antoine Tenart) [1941753] - net: Add netif_rx_any_context() (Josef Oskera) [1939466] - bitfield.h: add FIELD_MAX() and field_max() (Ivan Vecera) [1939478] - md/raid5: cast chunk_sectors to sector_t value (Nigel Croxon) [1921468] - md: Set prev_flush_start and flush_bio in an atomic way (Nigel Croxon) [1921468] - md/cluster: fix deadlock when node is doing resync job (Nigel Croxon) [1921468] - md/cluster: block reshape with remote resync job (Nigel Croxon) [1921468] - md: use current request time as base for ktime comparisons (Nigel Croxon) [1921468] - md: add comments in md_flush_request() (Nigel Croxon) [1921468] - md: improve variable names in md_flush_request() (Nigel Croxon) [1921468] - md/raid10: initialize r10_bio->read_slot before use. (Nigel Croxon) [1921468] - md: fix a warning caused by a race between concurrent md_ioctl()s (Nigel Croxon) [1921468] - Revert "md: improve variable names in md_flush_request()" (Nigel Croxon) [1921468] - Revert "md: Set prev_flush_start and flush_bio in an atomic way" (Nigel Croxon) [1921468] - KVM: nSVM: fix running nested guests when npt=0 (Emanuele Giuseppe Esposito) [1799073] - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent (Julia Denham) [1908311] {CVE-2020-35508} - Revert "redhat: switch secureboot kernel image signing to release keys" (Bruno Meneguele) - redhat: switch secureboot kernel image signing to release keys (Jan Stancek) - Revert "[md] md/raid5: add a new member of offset into r5dev" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: make async_copy_data() to support different page offset" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid5: add new xor function to support different page offset" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: convert to new xor compution interface" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid6: let syndrome computor support different page offset" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid6: let async recovery function support different page offset" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: let multiple devices of stripe_head share page" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: resize stripe_head when reshape array" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: reallocate page array after setting new stripe_size" (Nigel Croxon) [1936903] - ACPI: PNP: compare the string length in the matching_id() (Mark Langsdorf) [1933702] - ceph: add missing break when parsing "nowsync" mount option (Jeff Layton) [1932753] - get_maintainer.conf: Update with new location of RHMAINTAINERS (Prarit Bhargava) - redhat: make pathspec exclusion compatible with old git versions (Herton R. Krzesinski) - redhat/scripts: Update merge-subtrees.sh with new subtree location (Prarit Bhargava) - tree: Add RHMAINTAINERS soft link in 8.4 (Prarit Bhargava) - tree: remove existing redhat/rhdocs subtree in 8.4 (Prarit Bhargava)- ntp: Use freezable workqueue for RTC synchronization (Phil Auld) [1793880] - ntp: Fix RTC synchronization on 32-bit platforms (Phil Auld) [1793880] - ntp: Make the RTC synchronization more reliable (Phil Auld) [1793880] - PCI: rpadlpar: Fix potential drc_name corruption in store functions (Gustavo Luiz Duarte) [1938116] - selftests: kvm: Add basic Hyper-V clocksources tests (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Don't touch TSC page values when guest opted for re-enlightenment (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Track Hyper-V TSC page status (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Prevent using not-yet-updated TSC page by secondary CPUs (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Limit guest to writing zero to HV_X64_MSR_TSC_EMULATION_STATUS (Vitaly Kuznetsov) [1931782] - drm/i915/guc: Update to use firmware v49.0.1 (Dave Airlie) [1935281] {CVE-2020-12362} - time: Enable __kernel_timespec for 32-bit vdso build (Waiman Long) [1936282] - lib/idr.c: document calling context for IDA APIs mustn't use locks (Chris von Recklinghausen) [1917764] - ida: Free allocated bitmap in error path (Chris von Recklinghausen) [1917764] - radix tree test suite: Fix compilation (Chris von Recklinghausen) [1917764] - vmalloc: convert to XArray (Chris von Recklinghausen) [1917764] - mm: pass addr as unsigned long to vb_free (Chris von Recklinghausen) [1917764] - radix tree: Remove multiorder support (Chris von Recklinghausen) [1917764] - radix tree test: Convert multiorder tests to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Convert item_delete_rcu to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Convert item_kill_tree to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Move item_insert_order (Chris von Recklinghausen) [1917764] - radix tree test suite: Remove multiorder benchmarking (Chris von Recklinghausen) [1917764] - radix tree test suite: Remove __item_insert (Chris von Recklinghausen) [1917764] - radix tree: Remove radix_tree_clear_tags (Chris von Recklinghausen) [1917764] - radix tree: Remove split/join code (Chris von Recklinghausen) [1917764] - radix tree: Remove radix_tree_update_node_t (Chris von Recklinghausen) [1917764] - mm: Convert truncate to XArray (Chris von Recklinghausen) [1917764] - copy rh_kabi.h to tools/testing/radix-tree/linux (Chris von Recklinghausen) [1917764]- tick: Get rid of tick_period (Phil Auld) [1936504] - tick/sched: Release seqcount before invoking calc_load_global() (Phil Auld) [1936504] - tick/sched: Optimize tick_do_update_jiffies64() further (Phil Auld) [1936504] - tick/sched: Reduce seqcount held scope in tick_do_update_jiffies64() (Phil Auld) [1936504] - tick/sched: Use tick_next_period for lockless quick check (Phil Auld) [1936504] - tick: Document protections for tick related data (Phil Auld) [1936504] - tick/broadcast: Serialize access to tick_next_period (Phil Auld) [1936504] - timekeeping: Split jiffies seqlock (Phil Auld) [1936504] - tick/sched: Annotate lockless access to last_jiffies_update (Phil Auld) [1936504] - net, sctp, filter: remap copy_from_user failure error (Hangbin Liu) [1929476] {CVE-2021-20239} - tty: serial_core: Set port active bit in uart_port_activate (Artem Savkov) [1915177] - cgroup: fix psi monitor for root cgroup (Waiman Long) [1936868] - cgroup-v1: add disabled controller check in cgroup1_parse_param() (Waiman Long) [1936868] - cgroup: cgroup.{procs,threads} factor out common parts (Waiman Long) [1936868] - cpuset: fix typos in comments (Waiman Long) [1936868] - kernel: cgroup: Mundane spelling fixes throughout the file (Waiman Long) [1936868] - cgroup/cgroup.c: replace 'of->kn->priv' with of_cft() (Waiman Long) [1936868] - cgroup: Zero sized write should be no-op (Waiman Long) [1936868] - cgroup: remove redundant kernfs_activate in cgroup_setup_root() (Waiman Long) [1936868] - cgroup: Use generic ns_common::count (Waiman Long) [1936868] - ns: Add a common refcount into ns_common (Waiman Long) [1936868] - cgroup: add cpu.stat file to root cgroup (Waiman Long) [1936868] - cgroup: Remove stale comments (Waiman Long) [1936868] - cgroup: Restructure release_agent_path handling (Waiman Long) [1936868] - cgroup: add cgroup_may_write() helper (Waiman Long) [1936868] - cgroup: refactor fork helpers (Waiman Long) [1936868] - cgroup: add cgroup_get_from_file() helper (Waiman Long) [1936868] - cgroup: unify attach permission checking (Waiman Long) [1936868] - cpuset: Make cpuset hotplug synchronous (Waiman Long) [1936868] - cgroup: Clean up css_set task traversal (Waiman Long) [1936868] - cgroup.c: Use built-in RCU list checking (Waiman Long) [1936868] - fork: record start_time late (Waiman Long) [1936868] - sched/deadline: Reduce rq lock contention in dl_add_task_root_domain() (Phil Auld) [1936501] - sched/deadline: Fix sched_dl_global_validate() (Phil Auld) [1936501] - sched/deadline: Optimize sched_dl_global_validate() (Phil Auld) [1936501] - sched/deadline: Fix a typo in a comment (Phil Auld) [1936501] - sched/deadline: Implement fallback mechanism for !fit case (Phil Auld) [1936501] - sched/deadline: Make DL capacity-aware (Phil Auld) [1936501] - sched/deadline: Improve admission control for asymmetric CPU capacities (Phil Auld) [1936501] - sched/deadline: Add dl_bw_capacity() (Phil Auld) [1936501] - sched/deadline: Optimize dl_bw_cpus() (Phil Auld) [1936501] - sched/deadline: Impose global limits on sched_attr::sched_period (Phil Auld) [1936501] - ibmvnic: fix a race between open and reset (Diego Domingos) [1940042] - ibmvnic: Set to CLOSED state even on error (Diego Domingos) [1940042] - ibmvnic: device remove has higher precedence over reset (Diego Domingos) [1940042] - ibmvnic: merge do_change_param_reset into do_reset (Diego Domingos) [1940042] - ibmvfc: disable MQ channelization by default (Gustavo Luiz Duarte) [1939359] - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() (Steve Dickson) [1926945] - scsi: iscsi: Verify lengths on passthrough PDUs (Chris Leech) [1930833] {CVE-2021-27365} - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE (Chris Leech) [1930856] {CVE-2021-27363} - scsi: iscsi: Restrict sessions and handles to admin capabilities (Chris Leech) [1930809] {CVE-2021-27364} - futex: Handle faults correctly for PI futexes (Waiman Long) [1924635] - futex: Simplify fixup_pi_state_owner() (Waiman Long) [1924635] - futex: Use pi_state_update_owner() in put_pi_state() (Waiman Long) [1924635] - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() (Waiman Long) [1924635] - futex: Provide and use pi_state_update_owner() (Waiman Long) [1924635] - futex: Replace pointless printk in fixup_owner() (Waiman Long) [1924635] - futex: Ensure the correct return value from futex_lock_pi() (Waiman Long) [1924635] - futex: Don't enable IRQs unconditionally in put_pi_state() (Waiman Long) [1924635] - futex: Fix incorrect should_fail_futex() handling (Waiman Long) [1924635] - futex: Consistently use fshared as boolean (Waiman Long) [1924635] - futex: Remove needless goto's (Waiman Long) [1924635] - futex: Remove put_futex_key() (Waiman Long) [1924635] - NFS: Correct size calculation for create reply length (Benjamin Coddington) [1934903] - SUNRPC: Set memalloc_nofs_save() for sync tasks (Benjamin Coddington) [1934098] - net/mlx5: CT: Add support for matching on ct_state reply flag (Alaa Hleihel) [1919651] - net/mlx5e: CT: manage the lifetime of the ct entry object (Alaa Hleihel) [1919651] - net/mlx5e: CT: Use per flow counter when CT flow accounting is enabled (Alaa Hleihel) [1919651] - net/mlx5e: Fix a use after free on error in mlx5_tc_ct_shared_counter_get() (Alaa Hleihel) [1919651] - net/mlx5e: CT: Use the same counter for both directions (Alaa Hleihel) [1919651] - ethtool: fix the check logic of at least one channel for RX/TX (Ivan Vecera) [1907406]- [scsi] scsi: qedi: Correct max length of CHAP secret (Nilesh Javali) [1909180] - redhat: use tags from git notes for zstream to generate changelog (Frantisek Hrbata) - redhat: add CI file for kernel-private (Bruno Meneguele) - CI: Drop unused variable (Bruno Meneguele) - CI: Enable RT verification (Bruno Meneguele) - KVM: SVM: Clear the CR4 register on reset (Vitaly Kuznetsov) [1920788] - net: flow_offload: Add original direction flag to ct_metadata (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower: Add match on the ct_state reply flag (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower add CT_FLAGS_INVALID flag support (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower: Reject invalid ct_state flags rules (Marcelo Ricardo Leitner) [1921946] - netlink: add mask validation (Marcelo Ricardo Leitner) [1921946] - netlink: create helpers for checking type is an int (Marcelo Ricardo Leitner) [1921946] - netlink: policy: correct validation type check (Marcelo Ricardo Leitner) [1921946] - netlink: make NLA_BINARY validation more flexible (Marcelo Ricardo Leitner) [1921946]- md: Set prev_flush_start and flush_bio in an atomic way (Xiao Ni) [1901598] - md: improve variable names in md_flush_request() (Xiao Ni) [1901598] - hpsa: fix regression issue for old controllers (Joseph Szczypek) [1925711] - scsi: hpsa: Correct dev cmds outstanding for retried cmds (Joseph Szczypek) [1925711] - vt: Disable KD_FONT_OP_COPY (Dave Airlie) [1903937] {CVE-2020-28974} - drm/i915/rkl: Remove require_force_probe protection (Lyude Paul) [1937558] - drm/i915/tgl/psr: Disable PSR on Tigerlake for now (Lyude Paul) [1924702] - dm raid: fix discard limits for raid0 and raid10 (Mike Snitzer) [1934274] - dm: fix __send_changing_extent_only to avoid duplicate dm_target_offset() (Mike Snitzer) [1934274] - mm/hugetlb.c: fix unnecessary address expansion of pmd sharing (Waiman Long) [1934212] - mm: memcontrol: fix slub memory accounting (Waiman Long) [1934212] - mm: memcontrol: fix swap undercounting in cgroup2 (Waiman Long) [1934212] - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving (Waiman Long) [1934212] - mm, slub: better heuristic for number of cpus when calculating slab order (Waiman Long) [1934212] - Revert "mm: memcontrol: avoid workload stalls when lowering memory.high" (Waiman Long) [1934212] - selftests/bpf: Set gopt opt_class to 0 if get tunnel opt failed (Hangbin Liu) [1931732] - selftests/bpf: No need to drop the packet when there is no geneve opt (Hangbin Liu) [1931732]- drm/i915/gen11+: Only load DRAM information from pcode (Lyude Paul) [1934537] - drm/i915/dg1: Wait for pcode/uncore handshake at startup (Lyude Paul) [1934537] - powercap/intel_rapl: add support for TigerLake Desktop (David Arcari) [1932457] - powerpc/perf: Fix handling of privilege level checks in perf interrupt context (Gustavo Luiz Duarte) [1918411] - NFSv4.2: fix error return on memory allocation failure (Scott Mayhew) [1917689] - NFSv4.2: improve page handling for GETXATTR (Scott Mayhew) [1917689] - NFSv4.2: Fix up the get/listxattr calls to rpc_prepare_reply_pages() (Scott Mayhew) [1917689] - NFS: Fix rpcrdma_inline_fixup() crash with new LISTXATTRS operation (Scott Mayhew) [1917689] - SUNRPC: Fix up xdr_set_page() (Benjamin Coddington) [1917689] - NFSv4: Fix open coded xdr_stream_remaining() (Benjamin Coddington) [1917689] - SUNRPC: Clean up the handling of page padding in rpc_prepare_reply_pages() (Benjamin Coddington) [1917689] - SUNRPC: Fix up xdr_read_pages() to take arbitrary object lengths (Benjamin Coddington) [1917689] - SUNRPC: Clean up helpers xdr_set_iov() and xdr_set_page_base() (Benjamin Coddington) [1917689] - SUNRPC: Split out a function for setting current page (Benjamin Coddington) [1917689] - SUNRPC: Fix up typo in xdr_init_decode() (Benjamin Coddington) [1917689] - NFSv4: Fix the alignment of page data in the getdeviceinfo reply (Benjamin Coddington) [1917689] - net: fix pos incrementment in ipv6_route_seq_next (Lorenzo Bianconi) [1926608] - ipv6_route_seq_next should increase position index (Lorenzo Bianconi) [1926608] - bpf: Clear subreg_def for global function return values (Yauheni Kaliuta) [1934062] - igc: Fix returning wrong statistics (Corinna Vinschen) [1910873]- KVM: nSVM: prepare guest save area while is_guest_mode is true (Vitaly Kuznetsov) [1860223] - redhat: add CI file for kernel-private (Bruno Meneguele) - CI: Drop unused variable (Veronika Kabatova) - CI: Enable RT verification (Veronika Kabatova) - redhat: use tags from git notes for zstream to generate changelog (Frantisek Hrbata) - redhat: open the RHEL-8.5 development (Bruno Meneguele) [1930504]- KVM: SVM: Make symbol 'svm_gp_erratum_intercept' static (Paolo Bonzini) [1769283] - KVM: SVM: Fix #GP handling for doubly-nested virtualization (Paolo Bonzini) [1769283] - KVM: SVM: Add support for SVM instruction address check change (Paolo Bonzini) [1769283] - KVM: SVM: Add emulation support for #GP triggered by SVM instructions (Paolo Bonzini) [1769283] - KVM: x86: Factor out x86 instruction emulation with decoding (Paolo Bonzini) [1769283] - gfs2: In gfs2_ail1_start_one unplug the IO when needed (Bob Peterson) [1648446] - gfs2: Free rd_bits later in gfs2_clear-rgrpd to fix use-after-free (Bob Peterson) [1648446] - gfs2: Only access gl_delete for iopen glocks (Bob Peterson) [1648446] - gfs2: Fix case in which ail writes are done to jdata holes (Bob Peterson) [1648446] - gfs2: simplify gfs2_block_map (Bob Peterson) [1648446] - gfs2: Only set PageChecked if we have a transaction (Bob Peterson) [1648446] - gfs2: don't lock sd_ail_lock in gfs2_releasepage (Bob Peterson) [1648446] - gfs2: make gfs2_ail1_empty_one return the count of active items (Bob Peterson) [1648446] - gfs2: Wipe jdata and ail1 in gfs2_journal_wipe, formerly gfs2_meta_wipe (Bob Peterson) [1648446] - gfs2: enhance log_blocks trace point to show log blocks free (Bob Peterson) [1648446] - gfs2: rename gfs2_write_full_page to gfs2_write_jdata_page, remove parm (Bob Peterson) [1648446] - PM: hibernate: flush swap writer after marking (Lenny Szubowicz) [1898677] - cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown (Lenny Szubowicz) [1898677] - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation (Lenny Szubowicz) [1898677] - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation (Jiri Benc) [1882215] - ice, xsk: clear the status bits for the next_to_use descriptor (Jiri Benc) [1906820] - net/mlx4_en: Handle TX error CQE (Alaa Hleihel) [1925690] - net/mlx4_en: Avoid scheduling restart task if it is already running (Alaa Hleihel) [1925690] - blk-mq: test QUEUE_FLAG_HCTX_ACTIVE for sbitmap_shared in hctx_may_queue (Ming Lei) [1922013] - blk-mq: Improve performance of non-mq IO schedulers with multiple HW queues (Ming Lei) [1922013] - Revert "blk-mq, elevator: Count requests per hctx to improve performance" (Ming Lei) [1922013] - bpftool: Disable CAP_BPF check for feature command (Jiri Olsa) [1921542] - RDMA/siw: Fix calculation of tx_valid_cpus size (Kamal Heib) [1919502] - net/mlx5e: Disable performance optimization for IPv4/IPv6 ethertype (Alaa Hleihel) [1928671 1919807] - IB/mlx5: Return appropriate error code instead of ENOMEM (Alaa Hleihel) [1928671] - net/mlx5: Disable devlink reload for lag devices (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disable devlink reload for multi port slave device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disallow RoCE on lag device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disallow RoCE on multi port slave device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Fix health error state handling (Alaa Hleihel) [1928671] - net/mlx5e: Change interrupt moderation channel params also when channels are closed (Alaa Hleihel) [1928671] - net/mlx5e: Don't change interrupt moderation params when DIM is enabled (Alaa Hleihel) [1928671] - net/mlx5e: E-switch, Fix rate calculation for overflow (Alaa Hleihel) [1928671] - net/mlx5e: Release skb in case of failure in tc update skb (Alaa Hleihel) [1928671 1929119] - net/mlx5e: Check tunnel offload is required before setting SWP (Alaa Hleihel) [1928671 1925439] - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context (Alaa Hleihel) [1928671 1928706] - net/mlx5e: Fix CQ params of ICOSQ and async ICOSQ (Alaa Hleihel) [1928671 1928706] - net/mlx5e: Replace synchronize_rcu with synchronize_net (Alaa Hleihel) [1928671 1913616] - net/mlx5e: Enable XDP for Connect-X IPsec capable devices (Alaa Hleihel) [1928671 1856795] - net/mlx5e: Enable striding RQ for Connect-X IPsec capable devices (Alaa Hleihel) [1928671 1926120] - fix regression in "epoll: Keep a reference on files added to the check list" (Carlos Maiolino) [1920776] {CVE-2020-0466} - do_epoll_ctl(): clean the failure exits up a bit (Carlos Maiolino) [1920776] {CVE-2020-0466} - epoll: Keep a reference on files added to the check list (Carlos Maiolino) [1920776] {CVE-2020-0466}- perf/x86/intel/uncore: With > 8 nodes, get pci bus die id from NUMA info (Prarit Bhargava) [1766743] - perf/x86/intel/uncore: Store the logical die id instead of the physical die id. (Prarit Bhargava) [1766743] - mm: fix page reference leak in soft_offline_page() (Aristeu Rozanski) [1768372] - mm,hwpoison: try to narrow window race for free pages (Aristeu Rozanski) [1768372] - mm,hwpoison: double-check page count in __get_any_page() (Aristeu Rozanski) [1768372] - mm,hwpoison: introduce MF_MSG_UNSPLIT_THP (Aristeu Rozanski) [1768372] - mm,hwpoison: return 0 if the page is already poisoned in soft-offline (Aristeu Rozanski) [1768372] - mm,hwpoison: refactor soft_offline_huge_page and __soft_offline_page (Aristeu Rozanski) [1768372] - mm,hwpoison: rework soft offline for in-use pages (Aristeu Rozanski) [1768372] - mm,hwpoison: rework soft offline for free pages (Aristeu Rozanski) [1768372] - mm,hwpoison: unify THP handling for hard and soft offline (Aristeu Rozanski) [1768372] - mm,hwpoison: kill put_hwpoison_page (Aristeu Rozanski) [1768372] - mm,hwpoison: refactor madvise_inject_error (Aristeu Rozanski) [1768372] - mm,hwpoison: unexport get_hwpoison_page and make it static (Aristeu Rozanski) [1768372] - mm,hwpoison-inject: don't pin for hwpoison_filter (Aristeu Rozanski) [1768372] - mm, hwpoison: remove recalculating hpage (Aristeu Rozanski) [1768372] - mm,hwpoison: cleanup unused PageHuge() check (Aristeu Rozanski) [1768372] - mm/madvise.c: replace with page_size() in madvise_inject_error() (Aristeu Rozanski) [1768372] - mm, soft-offline: convert parameter to pfn (Aristeu Rozanski) [1768372] - tick/nohz: Revert "Narrow down noise while setting current task's tick dependency" (Waiman Long) [1931004] - kvm: Add kvm_stat.service file and kvm_stat logrotate config to the tools (Thomas Huth) [1919930] - igc: fix link speed advertising (Corinna Vinschen) [1769701] - [crypto] crypto: qat - add capability detection logic in qat_4xxx (Vladis Dronov) [1833004] - [crypto] crypto: qat - add AES-XTS support for QAT GEN4 devices (Vladis Dronov) [1833004] - [crypto] crypto: qat - add AES-CTR support for QAT GEN4 devices (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix excluded_middle.cocci warnings (Vladis Dronov) [1833004] - [crypto] crypto: qat - add qat_4xxx driver (Vladis Dronov) [1833004] - [crypto] crypto: qat - add hook to initialize vector routing table (Vladis Dronov) [1833004] - [crypto] crypto: qat - target fw images to specific AEs (Vladis Dronov) [1833004] - [crypto] crypto: qat - add gen4 firmware loader (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for broadcasting mode (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for shared ustore (Vladis Dronov) [1833004] - [crypto] crypto: qat - allow to target specific AEs (Vladis Dronov) [1833004] - [crypto] crypto: qat - add FCU CSRs to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add CSS3K support (Vladis Dronov) [1833004] - [crypto] crypto: qat - use ae_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - add check for null pointer (Vladis Dronov) [1833004] - [crypto] crypto: qat - add misc control CSR to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add wake up event to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add clock enable CSR to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add reset CSR and mask to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add local memory size to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for lm2 and lm3 (Vladis Dronov) [1833004] - [crypto] crypto: qat - add next neighbor to chip_info (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace check based on DID (Vladis Dronov) [1833004] - [crypto] crypto: qat - introduce chip info structure (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor long expressions (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_uclo_set_ae_mode() (Vladis Dronov) [1833004] - [crypto] crypto: qat - move defines to header files (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove global CSRs helpers (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor AE start (Vladis Dronov) [1833004] - [crypto] crypto: qat - change micro word data mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - change type for ctx_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for relative FW ucode loading (Vladis Dronov) [1833004] - [crypto] crypto: qat - rename qat_uclo_del_uof_obj() (Vladis Dronov) [1833004] - [crypto] crypto: qat - introduce additional parenthesis (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unnecessary parenthesis (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix error message (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix CSR access (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() (Vladis Dronov) [1833004] - [crypto] crypto: qat - support for mof format in fw loader (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace pci with PCI in comments (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove cast for mailbox CSR (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unneeded semicolon (Vladis Dronov) [1833004] - [crypto] crypto: qat - extend ae_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - allow for instances in different banks (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_crypto_dev_config() (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_crypto_create_instances() (Vladis Dronov) [1833004] - [crypto] crypto: qat - change return value in adf_cfg_key_val_get() (Vladis Dronov) [1833004] - [crypto] crypto: qat - change return value in adf_cfg_add_key_value_param() (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unnecessary void* casts (Vladis Dronov) [1833004] - [crypto] crypto: qat - call functions in adf_sriov if available (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove hardcoded bank irq clear flag mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract writes to arbiter enable (Vladis Dronov) [1833004] - [crypto] crypto: qat - use BIT_ULL() - 1 pattern for masks (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace constant masks with GENMASK (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract build ring base (Vladis Dronov) [1833004] - [crypto] crypto: qat - enable ring after pair is programmed (Vladis Dronov) [1833004] - [crypto] crypto: qat - register crypto instances based on capability (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for capability detection (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract arbiter access (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unused macros in arbiter module (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove writes into WQCFG (Vladis Dronov) [1833004] - [crypto] crypto: qat - update constants table (Vladis Dronov) [1833004] - [crypto] crypto: qat - use admin mask to send fw constants (Vladis Dronov) [1833004] - [crypto] crypto: qat - change admin sequence (Vladis Dronov) [1833004] - [crypto] crypto: qat - rename ME in AE (Vladis Dronov) [1833004] - [crypto] crypto: qat - add packed to init admin structures (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract admin interface (Vladis Dronov) [1833004] - [crypto] crypto: qat - relocate GEN2 CSR access code (Vladis Dronov) [1833004] - [crypto] crypto: qat - split transport CSR access logic (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix configuration of iov threads (Vladis Dronov) [1833004] - [crypto] crypto: qat - num_rings_per_bank is device dependent (Vladis Dronov) [1833004] - [crypto] crypto: qat - mask device capabilities with soft straps (Vladis Dronov) [1833004] - [crypto] crypto: qat - update IV in software (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unused function (Vladis Dronov) [1833004]- mptcp: send ack for every add_addr (Davide Caratti) [1929280] - Revert "[net] tcp: change pingpong threshold to 3" (Davide Caratti) [1929280] - powerpc/pseries: Don't enforce MSI affinity with kdump (Greg Kurz) [1919427] - rtc: disallow update interrupts when time is invalid (Waiman Long) [1918288] - rtc: disable uie before setting time and enable after (Waiman Long) [1918288] - rtc: don't reference bogus function pointer in kdoc (Waiman Long) [1918288] - KVM: x86/mmu: Expand collapsible SPTE zap for TDP MMU to ZONE_DEVICE and HugeTLB pages (Paolo Bonzini) [1897366] - KVM: x86/mmu: Allow parallel page faults for the TDP MMU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Mark SPTEs in disconnected pages as removed (Paolo Bonzini) [1897366] - KVM: x86/mmu: Flush TLBs after zap in TDP MMU PF handler (Paolo Bonzini) [1897366] - KVM: x86/mmu: Use atomic ops to set SPTEs in TDP MMU map (Paolo Bonzini) [1897366] - KVM: x86/mmu: Factor out functions to add/remove TDP MMU pages (Paolo Bonzini) [1897366] - i915: kvmgt: the KVM mmu_lock is now an rwlock (Paolo Bonzini) [1897366] - KVM: x86/mmu: Use an rwlock for the x86 MMU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Protect TDP MMU page table memory with RCU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Clear dirtied pages mask bit before early break (Paolo Bonzini) [1897366] - KVM: x86/mmu: Skip no-op changes in TDP MMU functions (Paolo Bonzini) [1897366] - KVM: x86/mmu: Yield in TDU MMU iter even if no SPTES changed (Paolo Bonzini) [1897366] - KVM: x86/mmu: Ensure forward progress when yielding in TDP MMU iter (Paolo Bonzini) [1897366] - KVM: x86/mmu: Rename goal_gfn to next_last_level_gfn (Paolo Bonzini) [1897366] - KVM: x86/mmu: Merge flush and non-flush tdp_mmu_iter_cond_resched (Paolo Bonzini) [1897366] - KVM: x86/mmu: Fix braces in kvm_recover_nx_lpages (Paolo Bonzini) [1897366] - KVM: x86/mmu: Factor out handling of removed page tables (Paolo Bonzini) [1897366] - KVM: x86/mmu: Don't redundantly clear TDP MMU pt memory (Paolo Bonzini) [1897366] - KVM: x86/mmu: Add lockdep when setting a TDP MMU SPTE (Paolo Bonzini) [1897366] - KVM: x86/mmu: Add comment on __tdp_mmu_set_spte (Paolo Bonzini) [1897366] - KVM: x86/mmu: change TDP MMU yield function returns to match cond_resched (Paolo Bonzini) [1897366] - locking/arch: Move qrwlock.h include after qspinlock.h (Paolo Bonzini) [1897366] - sched: Add cond_resched_rwlock (Paolo Bonzini) [1897366] - sched: Add needbreak for rwlocks (Paolo Bonzini) [1897366] - locking/rwlocks: Add contention detection for rwlocks (Paolo Bonzini) [1897366] - RDMA/srp: Fix support for unpopulated and unbalanced NUMA nodes (Kamal Heib) [1919395] - net/vmw_vsock: fix NULL pointer dereference (Jon Maloy) [1925600] {CVE-2021-26708} - net/vmw_vsock: improve locking in vsock_connect_timeout() (Jon Maloy) [1925600] {CVE-2021-26708} - vsock: fix locking in vsock_shutdown() (Jon Maloy) [1925600] {CVE-2021-26708} - vsock: fix the race conditions in multi-transport support (Jon Maloy) [1925600] {CVE-2021-26708} - ahci: Add missing Intel Emmitsburg PCH RAID PCI IDs (David Arcari) [1928789] - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off (Paolo Bonzini) [1912448] - [sound] ALSA: hda/via: Fix runtime PM for Clevo W35xSS (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add mute LED quirk for more HP laptops (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Modify Dell platform name (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 (Jaroslav Kysela) [1916102] - [sound] ALSA: ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Apply jack fixup for Quanta NL3 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add quirk for MSI-GP73 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Supported Dell fixed type headset (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: Fix incorrect mutex unlock in silent_stream_disable() (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: packet buffer index must be set before reading value (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: always print pin NIDs as hexadecimal (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: fix silent stream for first playback to DP (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/conexant: add a new hda codec CX11970 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: Fix regressions on clear and reconfig sysfs (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/proc - print DP-MST connections (Jaroslav Kysela) [1916102] - [sound] ALSA: hda - Fix the return value if cb func is already registered (Jaroslav Kysela) [1916102] - [sound] ALSA: mixart: Fix mutex deadlock (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add new codec supported for ALC897 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fixed Dell AIO wrong sound tone (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - HP Headset Mic can't detect after boot (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported mute Led for HP (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220) (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headphone for ASUS TM420 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fixed HP headset Mic can't be detected (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/generic: Add option to enforce preferred_dacs pairs (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link() (Jaroslav Kysela) [1916102] - [sound] ALSA: seq: oss: Avoid mutex lock for a long-time ioctl (Jaroslav Kysela) [1916102] - [fs] gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end (Andreas Grunbacher) [1926852] - [net] netfilter: nf_tables: coalesce multiple notifications into one skbuff (Phil Sutter) [1855207] - [drm] drm/i915/rkl: new rkl ddc map for different PCH (Lyude Paul) [1910761] - [drm] drm/nouveau: fix dma syncing warning with debugging on (Lyude Paul) [1915548] - [drm] drm/i915: Update TGL and RKL HuC firmware versions (Lyude Paul) [1924209] - [drm] drm/i915/tgl, rkl: Make Wa_1606700617/22010271021 permanent (Lyude Paul) [1924209] - [drm] drm/i915: Update gen12 forcewake table (Lyude Paul) [1924209] - [drm] drm/i915: Rename FORCEWAKE_BLITTER to FORCEWAKE_GT (Lyude Paul) [1924209] - [drm] drm/i915/display/fbc: Implement WA 22010751166 (Lyude Paul) [1924209] - [drm] drm/i915: Tweaked Wa_14010685332 for PCHs used on gen11 platforms (Lyude Paul) [1924209] - [drm] drm/i915: Reorder hpd init vs. display resume (Lyude Paul) [1921868] - [drm] drm/i915/dp: Don't use DPCD backlights that need PWM enable/disable (Lyude Paul) [1885406] - [drm] drm/dp: Revert "drm/dp: Introduce EDID-based quirks" (Lyude Paul) [1885406] - [drm] drm/i915/dp: Allow forcing specific interfaces through enable_dpcd_backlight (Lyude Paul) [1885406] - [drm] drm/i915/dp: Enable Intel's HDR backlight interface (only SDR for now) (Lyude Paul) [1885406] - [drm] drm/i915: Keep track of pwm-related backlight hooks separately (Lyude Paul) [1885406] - [drm] drm/i915: Pass port to intel_panel_bl_funcs.get() (Lyude Paul) [1885406] - [drm] drm/i915/dp: Add register definitions for Intel HDR backlight interface (Lyude Paul) [1885406] - [drm] drm/i915/dp: Rename eDP VESA backlight interface functions (Lyude Paul) [1885406] - [drm] drm/i915: Pass down brightness values to enable/disable backlight callbacks (Lyude Paul) [1885406] - [drm] drm/i915: Rename pwm_* backlight callbacks to ext_pwm_* (Lyude Paul) [1885406] - [drm] drm/i915/dp: Program source OUI on eDP panels (Lyude Paul) [1885406] - [drm] drm/i915: refactor panel backlight control functions. (v2) (Lyude Paul) [1885406] - [drm] drm/i915/backlight: fix CPU mode backlight takeover on LPT (Lyude Paul) [1885406] - [drm] drm/i915/dpcd_bl: uncheck PWM_PIN_CAP when detect eDP backlight capabilities (Lyude Paul) [1885406] - [drm] drm/i915: panel: Add get_vbt_pwm_freq() helper (Lyude Paul) [1885406] - [drm] drm/i915/dp: Tweak initial dpcd backlight.enabled value (Lyude Paul) [1885406] - [drm] kms: handle mDP connectors (Lyude Paul) [1876992] - [drm] drm/i915/tgl: Fix Combo PHY DPLL fractional divider for 38.4MHz ref clock (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add new cdclk table (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Handle HTI (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add DPLL4 support (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add initial workarounds (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Handle new DPCLKA_CFGCR0 layout (Lyude Paul) [1876992] - [drm] drm/i915: Update TGL and RKL DMC firmware versions (Lyude Paul) [1876992] - [drm] drm/i915/gt: Program mocs:63 for cache eviction on gen9 (Lyude Paul) [1876992] - [drm] drm/i915/gt: Limit frequency drop to RPe on parking (Lyude Paul) [1876992] - [drm] drm/i915/gt: Retain default context state across shrinking (Lyude Paul) [1876992] - [drm] drm/amdgpu/vcn3.0: remove old DPG workaround (Lyude Paul) [1876992] - [drm] drm/amdgpu/vcn3.0: stall DPG when WPTR/RPTR reset (Lyude Paul) [1876992] - [drm] drm/i915/gt: Fixup tgl mocs for PTE tracking (Lyude Paul) [1876992] - [drm] drm/amdgpu: add rlc iram and dram firmware support (Lyude Paul) [1876992] - [drm] drm/nouveau: fix relocations applying logic and a double-free (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid HDCP initialization in devices without output (Lyude Paul) [1876992] - [drm] drm/amd/amdgpu: fix null pointer in runtime pm (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix a page fault (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix SI UVD firmware validate resume fail (Lyude Paul) [1876992] - [drm] drm/i915/tgl: Fix Media power gate sequence (Lyude Paul) [1876992] - [drm] drm/i915: Handle max_bpc==16 (Lyude Paul) [1876992] - [drm] drm/amd/display: Add missing pflip irq for dcn2.0 (Lyude Paul) [1876992] - [drm] drm/gma500: Fix out-of-bounds access to struct drm_device.vblank (Lyude Paul) [1876992] - [drm] drm/i915: Correctly set SFC capability for video engines (Lyude Paul) [1876992] - [drm] drm/amd/display: Add missing pflip irq (Lyude Paul) [1876992] - [drm] drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running (Lyude Paul) [1876992] - [drm] drm/amd/pm: perform SMC reset on suspend/hibernation (Lyude Paul) [1876992] - [drm] drm/amd/pm: correct the baco reset sequence for CI ASICs (Lyude Paul) [1876992] - [drm] drm/amdgpu: perform srbm soft reset always on SDMA resume (Lyude Paul) [1876992] - [drm] drm/i915/gem: Flush coherency domains on first set-domain-ioctl (Lyude Paul) [1876992] - [drm] drm/i915: Hold onto an explicit ref to i915_vma_work.pinned (Lyude Paul) [1876992] - [drm] drm/i915/gt: Use the local HWSP offset during submission (Lyude Paul) [1876992] - [drm] drm/i915: Fix encoder lookup during PSR atomic check (Lyude Paul) [1876992] - [drm] drm/nouveau/gem: fix "refcount_t: underflow; use-after-free" (Lyude Paul) [1876992] - [drm] drm/nouveau/nouveau: fix the start/end range for migration (Lyude Paul) [1876992] - [drm] drm/amd/display: adding ddc_gpio_vga_reg_list to ddc reg def'ns (Lyude Paul) [1876992] - [drm] drm/amd/display: Fixed panic during seamless boot (Lyude Paul) [1876992] - [drm] drm/amdgpu: add DID for navi10 blockchain SKU (Lyude Paul) [1876992] - [drm] drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3) (Lyude Paul) [1876992] - [drm] drm/amdgpu: resolved ASD loading issue on sienna (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/nouveau/device: fix changing endianess code to work on older GPUs (Lyude Paul) [1876992] - [drm] drm/nouveau/kms/nv50-: Program notifier offset before requesting disp caps (Lyude Paul) [1876992] - [drm] drm/i915: Restore ILK-M RPS support (Lyude Paul) [1876992] - [drm] drm/i915: Reject 90/270 degree rotated initial fbs (Lyude Paul) [1876992] - [drm] drm/i915: Use the active reference on the vma while capturing (Lyude Paul) [1876992] - [drm] drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup during fbdev init (Lyude Paul) [1876992] - [drm] drm/i915: Exclude low pages (128KiB) of stolen from use (Lyude Paul) [1876992] - [drm] drm/i915: Drop runtime-pm assert from vgpu io accessors (Lyude Paul) [1876992] - [drm] drm/i915/gt: Delay execlist processing for tgl (Lyude Paul) [1876992] - [drm] drm/i915/gt: Undo forced context restores after trivial preemptions (Lyude Paul) [1876992] - [drm] drm/i915/gt: Initialize reserved and unspecified MOCS indices (Lyude Paul) [1876992] - [drm] drm/i915: Fix TGL DKL PHY DP vswing handling (Lyude Paul) [1876992] - [drm] drm/i915: Avoid mixing integer types during batch copies (Lyude Paul) [1876992] - [drm] drm/i915: Cancel outstanding work after disabling heartbeats on an engine (Lyude Paul) [1876992] - [drm] drm/i915: Break up error capture compression loops with cond_resched() (Lyude Paul) [1876992] - [drm] drm/i915/gt: Always send a pulse down the engine after disabling heartbeat (Lyude Paul) [1876992] - [drm] drm/i915/gem: Always test execution status on closing the context (Lyude Paul) [1876992] - [drm] drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not supported (Lyude Paul) [1876992] - [drm] drm/i915/gem: Avoid implicit vmap for highmem on x86-32 (Lyude Paul) [1876992] - [drm] drm/amdgpu: correct the cu and rb info for sienna cichlid (Lyude Paul) [1876992] - [drm] drm/amd/psp: Fix sysfs: cannot create duplicate filename (Lyude Paul) [1876992] - [drm] drm/amd/swsmu: add missing feature map for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amd/pm: fix pp_dpm_fclk (Lyude Paul) [1876992] - [drm] drm/amd/pm: increase mclk switch threshold to 200 us (Lyude Paul) [1876992] - [drm] drm/amdgpu/swsmu: drop smu i2c bus on navi1x (Lyude Paul) [1876992] - [drm] drm/ttm: fix eviction valuable range check (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix kernel panic by dal_gpio_open() error (Lyude Paul) [1876992] - [drm] drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally (Lyude Paul) [1876992] - [drm] drm/amdgpu: increase the reserved VM size to 2MB (Lyude Paul) [1876992] - [drm] drm/amdgpu: add function to program pbb mode for sienna cichlid (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid MST manager resource leak (Lyude Paul) [1876992] - [drm] drm/amdkfd: Use same SQ prefetch setting as amdgpu (Lyude Paul) [1876992] - [drm] drm/amdgpu: correct the gpu reset handling for job != NULL case (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amdgpu: vcn and jpeg ring synchronization (Lyude Paul) [1876992] - [drm] drm/amd/display: Increase timeout for DP Disable (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix incorrect backlight register offset for DCN (Lyude Paul) [1876992] - [drm] drm/amdgpu: don't map BO in reserved region (Lyude Paul) [1876992] - [drm] drm/shme-helpers: Fix dma_buf_mmap forwarding bug (Lyude Paul) [1876992] - [drm] drm/i915: Force VT'd workarounds when running as a guest OS (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid set zero in the requested clk (Lyude Paul) [1876992] - [drm] drm/amd/display: HDMI remote sink need mode validation for Linux (Lyude Paul) [1876992] - [drm] drm/amdgpu: No sysfs, not an error condition (Lyude Paul) [1876992] - [drm] drm/amd/display: Check clock table return (Lyude Paul) [1876992] - [drm] drm/bridge/synopsys: dsi: add support for non-continuous HS clock (Lyude Paul) [1876992] - [drm] drm/vkms: avoid warning in vkms_get_vblank_timestamp (Lyude Paul) [1876992] - [drm] drm/bridge_connector: Set default status connected for eDP connectors (Lyude Paul) [1876992] - [drm] drm/scheduler: Scheduler priority fixes (v2) (Lyude Paul) [1876992] - [drm] drm/amdgpu: restore ras flags when user resets eeprom(v2) (Lyude Paul) [1876992] - [drm] drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex (Lyude Paul) [1876992] - [drm] drm/amd/display: Disconnect pipe separetely when disable pipe split (Lyude Paul) [1876992] - [drm] drm/hisilicon: Code refactoring for hibmc_drv_de (Lyude Paul) [1876992] - [drm] drm/amd/display: Screen corruption on dual displays (DP+USB-C) (Lyude Paul) [1876992] - [drm] drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create (Lyude Paul) [1876992] - [drm] drm/amdgpu: Fix invalid number of character '{' in amdgpu_acpi_init (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix max_entries calculation v4 (Lyude Paul) [1876992] - [drm] drm/crc-debugfs: Fix memleak in crc_control_write (Lyude Paul) [1876992] - [drm] drm/gma500: fix error check (Lyude Paul) [1876992] - [drm] drm/amd/display: fix potential integer overflow when shifting 32 bit variable bl_pwm (Lyude Paul) [1876992] - [drm] drm/vkms: add missing platform_device_unregister() in vkms_init() (Lyude Paul) [1876992] - [drm] drm/vgem: add missing platform_device_unregister() in vgem_init() (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix wrong return value in dm_update_plane_state() (Lyude Paul) [1876992] - [drm] drm/vkms: fix xrgb on compute crc (Lyude Paul) [1876992] - [iommu] iommu/amd: Set iommu->int_enabled consistently when interrupts are set up (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix IOMMU interrupt generation in X2APIC mode (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix union of bitfields in intcapxt support (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix kerneldoc comments (Vitaly Kuznetsov) [1915038] - [x86] x86/irq: Prepare consolidation of irq_alloc_info (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Use msi_msg shadow structs (Vitaly Kuznetsov) [1915038] - [iommu] x86_irq_Rename_X86_IRQ_ALLOC_TYPE_MSI_to_reflect_PCI_dependency (Vitaly Kuznetsov) [1915038] - [netdrv] Revert "e1000e: disable s0ix entry and exit flows for ME systems" (Ken Cox) [1872412] - [netdrv] e1000e: fix S0ix flow to allow S0i3.2 subset entry (Ken Cox) [1872412]- dm table: fix DAX iterate_devices based device capability checks (Mike Snitzer) [1905679] - dm table: fix various whitespace issues with recent DAX code (Mike Snitzer) [1905679] - dm table: fix dax_dev NULL dereference in device_synchronous() (Mike Snitzer) [1905679] - dm: enable synchronous dax (Mike Snitzer) [1905679] - dm table: fix iterate_devices based device capability checks (Mike Snitzer) [1905679] - dm: remove special-casing of bio-based immutable singleton target on NVMe (Mike Snitzer) [1905679] - [s390] s390/dasd: Fix inconsistent kobject removal (Philipp Rudo) [1928106] - [powerpc] powerpc/perf/hv-24x7: Dont create sysfs event files for dummy events (Steve Best) [1927730] - [powerpc] powerpc/pseries/dlpar: handle ibm, configure-connector delay status (Steve Best) [1927371] - [x86] x86/kvm: Increase KVM_MAX_VCPUS to 2048 (Eduardo Habkost) [1840923]- Unbreak mount_capable() (Scott Mayhew) [1903983]- [powerpc] powerpc: fix wrong backport on Kernel lockdown for power (Diego Domingos) [1928778] - [powerpc] powerpc/kexec_file: fix FDT size estimation for kdump kernel (Steve Best) [1928105] - [kernel] sched/features: Distinguish between NORMAL and DEADLINE hrtick (Juri Lelli) [1912118] - [kernel] sched/features: Fix hrtick reprogramming (Juri Lelli) [1912118] - [scsi] scsi: lpfc: Fix EEH encountering oops with NVMe traffic (Dick Kennedy) [1854776] - [scsi] scsi: lpfc: Prevent duplicate requests to unregister with cpuhp framework (Dick Kennedy) [1894960] - [target] scsi: target: iscsi: Fix cmd abort fabric stop race (Maurizio Lombardi) [1908215]- [net] netfilter: nft_dynset: add timeout extension to template (Florian Westphal) [1906915] - [net] netfilter: nftables: fix possible UAF over chains from packet path in netns (Florian Westphal) [1906915] - [net] netfilter: flowtable: fix tcp and udp header checksum update (Florian Westphal) [1906915] - [net] netfilter: xt_recent: Fix attempt to update deleted entry (Florian Westphal) [1906915] - [net] netfilter: conntrack: connection timeout after re-register (Florian Westphal) [1906915] - [netdrv] ice: Fix MSI-X vector fallback logic (Jonathan Toppins) [1896639 1877645] - [netdrv] ice: Don't allow more channels than LAN MSI-X available (Jonathan Toppins) [1896639 1877645] - [net] netfilter: nf_nat: Fix memleak in nf_nat_init (Florian Westphal) [1906915] - [net] netfilter: xt_RATEEST: reject non-null terminated string from userspace (Florian Westphal) [1906915] - [include] net: flow_dissector: Wrap unionized VLAN fields in a struct (Florian Westphal) [1906915] - [net] netfilter: x_tables: Switch synchronization to RCU (Florian Westphal) [1906915] - [net] netfilter: nftables_offload: build mask based from the matching bytes (Florian Westphal) [1906915] - [net] netfilter: nft_payload: add C-VLAN offload support (Florian Westphal) [1906915] - [net] netfilter: nft_payload: add VLAN offload support (Florian Westphal) [1906915] - [net] netfilter: nf_tables_offload: allow ethernet interface type only (Florian Westphal) [1906915] - [net] netfilter: nftables_offload: set address type in control dissector (Florian Westphal) [1906915] - [net] netfilter: nf_tables: avoid false-postive lockdep splat (Florian Westphal) [1906915] - [net] netfilter: nf_tables: missing validation from the abort path (Florian Westphal) [1906915] - [net] netfilter: nftables: fix netlink report logic in flowtable and genid (Florian Westphal) [1906915] - [include] netfilter: nf_tables: constify nft_reg_load{8, 16, 64}() (Florian Westphal) [1906915] - [net] netfilter: nf_tables: Introduce new 64-bit helper register functions (Florian Westphal) [1906915] - [include] netfilter: nf_tables: drop include of module.h from nf_tables.h (Florian Westphal) [1906915] - [net] netfilter: nf_fwd_netdev: clear timestamp in forwarding path (Florian Westphal) [1906915] - [net] netfilter: ipset: prevent uninit-value in hash_ip6_add (Florian Westphal) [1906915] - [net] netfilter: use actual socket sk rather than skb sk when routing harder (Florian Westphal) [1906915] - [net] netfilter: ipv4: remove useless export_symbol (Florian Westphal) [1906915] - [net] netfilter: conntrack: don't set related state for different outer address (Florian Westphal) [1906915] - [fs] xfs: don't catch dax+reflink inodes as corruption in verifier (Bill O'Donnell) [1915510]- [powerpc] powerpc: Don't enable FSCR_SCV in init_FSCR_power9() (Gustavo Duarte) [1928399] - [netdrv] ibmvnic: Clear failover_pending if unable to schedule (Steve Best) [1926365] - [netdrv] ibmvnic: change IBMVNIC_MAX_IND_DESCS to 16 (Steve Best) [1928243] - [tools] perf powerpc: Fix printf conversion specifier for IP addresses (Steve Best) [1928209] - [tools] perf powerpc: Fix gap between kernel end and module start (Steve Best) [1928209] - [netdrv] i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" (Stefan Assmann) [1838733] - [netdrv] i40e: acquire VSI pointer only after VF is initialized (Stefan Assmann) [1838733] - [netdrv] i40e: fix potential NULL pointer dereferencing (Stefan Assmann) [1838733] - [netdrv] i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: clear the status bits for the next_to_use descriptor (Stefan Assmann) [1838733] - [netdrv] i40e: avoid premature Rx buffer reuse (Stefan Assmann) [1838733] - [netdrv] i40e: Remove unnecessary sw_ring access from xsk Tx (Stefan Assmann) [1838733] - [netdrv] i40e: Fix removing driver while bare-metal VFs pass traffic (Stefan Assmann) [1838733] - [netdrv] i40e: report correct VF link speed when link state is set to enable (Stefan Assmann) [1838733] - [netdrv] i40e: remove redundant assignment (Stefan Assmann) [1838733] - [netdrv] i40e: Fix MAC address setting for a VF via Host/VM (Stefan Assmann) [1838733] - [netdrv] i40e: Allow changing FEC settings on X722 if supported by FW (Stefan Assmann) [1838733] - [netdrv] net: intel: Remove in_interrupt() warnings (Stefan Assmann) [1838733] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: uninitialized variable in i40e_clean_rx_irq_zc() (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: move buffer allocation out of the Rx processing loop (Stefan Assmann) [1838733] - [netdrv] i40e: use 16B HW descriptors instead of 32B (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: remove HW descriptor prefetch in AF_XDP path (Stefan Assmann) [1838733] - [netdrv] i40e: optimise prefetch page refcount (Stefan Assmann) [1838733] - [netdrv] i40e: not compute affinity_mask for IRQ (Stefan Assmann) [1838733] - [netdrv] i40e: Fix crash during removing i40e driver (Stefan Assmann) [1838733] - [netdrv] i40e: Set RX_ONLY mode for unicast promiscuous on VLAN (Stefan Assmann) [1838733] - [netdrv] PCI: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Stefan Assmann) [1838733] - [netdrv] i40e: introduce new dump desc XDP command (Stefan Assmann) [1838733] - [netdrv] i40e: add XDP ring statistics to dump VSI debug output (Stefan Assmann) [1838733] - [netdrv] i40e: add XDP ring statistics to VSI stats (Stefan Assmann) [1838733] - [netdrv] i40e: move check of full Tx ring to outside of send loop (Stefan Assmann) [1838733] - [netdrv] i40e: eliminate division in napi_poll data path (Stefan Assmann) [1838733] - [netdrv] i40e: optimize AF_XDP Tx completion path (Stefan Assmann) [1838733] - [netdrv] i40e: Add support for a new feature Total Port Shutdown (Stefan Assmann) [1838733] - [netdrv] ethernet/intel: Convert fallthrough code comments (Stefan Assmann) [1838733] - [netdrv] i40e: Add support for 5Gbps cards (Stefan Assmann) [1838733] - [netdrv] net/intel: remove driver versions from Intel drivers (Stefan Assmann) [1838733] - [netdrv] i40e: Add a check to see if MFS is set (Stefan Assmann) [1838733] - [netdrv] i40e: detect and log info about pre-recovery mode (Stefan Assmann) [1838733] - [netdrv] i40e: make PF wait reset loop reliable (Stefan Assmann) [1838733] - [netdrv] i40e: remove unused defines (Stefan Assmann) [1838733] - [netdrv] i40e: Move client header location (Stefan Assmann) [1838733] - [netdrv] i40e: protect ring accesses with READ- and WRITE_ONCE (Stefan Assmann) [1838733] - [netdrv] i40e: Make i40e_shutdown_adminq() return void (Stefan Assmann) [1838733] - [netdrv] i40e: trivial fixup of comments in i40e_xsk.c (Stefan Assmann) [1838733] - [netdrv] i40e: Use scnprintf() for avoiding potential buffer overflow (Stefan Assmann) [1838733] - [netdrv] team: protect features update by RCU to avoid deadlock (Josef Oskera) [1909593] - [tools] bpf: selftests: remove test_progs LSM test (Yauheni Kaliuta) [1925911] - [net] bpf: Fix a verifier failure with xor (Yauheni Kaliuta) [1925911] - [tools] selftests: Remove fmod_ret from test_overhead (Jiri Olsa) [1925911] - [s390] s390/kdump: fix out-of-memory with PCI (Philipp Rudo) [1927744] - [x86] x86/intel_split_lock: Really Disable split lock detector by default in RHEL8 (Prarit Bhargava) [1924578] - [scsi] megaraid_sas: re-add certain pci-ids as unsupported (Tomas Henzl) [1761485] - [scsi] megaraid_sas: mark unsupported devices (Tomas Henzl) [1761485] - [pci] rh_taint: add support function (Tomas Henzl) [1761485] - [powerpc] powerpc/xmon: Restrict when kernel is locked down (Diego Domingos) [1853307] - [powerpc] powerpc/xmon: add read-only mode (Diego Domingos) [1853307] - [powerpc] powerpc: lock down kernel in secure boot mode (Diego Domingos) [1853307] - [net] fix iteration for sctp transport seq_files (Xin Long) [1916824] - [tools] x86: xen: insn: Decode Xen and KVM emulate-prefix signature (Michael Petlan) [1867733] - [tools] objtool: Ignore intentional differences for the x86 insn decoder (Michael Petlan) [1867733] - [x86] x86/insn: Add Control-flow Enforcement (CET) instructions to the opcode map (Michael Petlan) [1867733] - [x86] x86/decoder: Add TEST opcode to Group3-2 (Michael Petlan) [1867733] - [x86] x86/insn: Add some more Intel instructions to the opcode map (Michael Petlan) [1867733] - [x86] x86/insn: Add some Intel instructions to the opcode map (Michael Petlan) [1867733] - [net] udp: call udp_encap_enable for v6 sockets when enabling encap (Xin Long) [1907754] - [fs] close_range: unshare all fds for CLOSE_RANGE_UNSHARE | CLOSE_RANGE_CLOEXEC (Pavel Reichl) [1900674] - [fs] fs, close_range: add flag CLOSE_RANGE_CLOEXEC (Pavel Reichl) [1900674] - [tools] tests: close_range - Replace clone3 with clone (Pavel Reichl) [1900674] - [tools] selftests: core: use SKIP instead of XFAIL in close_range_test.c (Pavel Reichl) [1900674] - [tools] tools headers API: Update close_range affected files (Pavel Reichl) [1900674] - [tools] tests: add CLOSE_RANGE_UNSHARE tests (Pavel Reichl) [1900674] - [fs] close_range: add CLOSE_RANGE_UNSHARE (Pavel Reichl) [1900674] - [tools] tests: add close_range() tests (Pavel Reichl) [1900674] - [powerpc] arch: wire-up close_range() (Pavel Reichl) [1900674] - [fs] open: add close_range() (Pavel Reichl) [1900674] - [x86] x86/sgx: mark tech preview (Vladis Dronov) [1660337] - [tools] tools headers cpufeatures: Sync with the kernel sources (Vladis Dronov) [1660337] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Vladis Dronov) [1660337] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Vladis Dronov) [1660337] - [x86] x86/sgx: Drop racy follow_pfn() check (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix the return type of sgx_init() (Vladis Dronov) [1660337] - [x86] x86/sgx: Return -EINVAL on a zero length buffer in sgx_ioc_enclave_add_pages() (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix a typo in kernel-doc markup (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix sgx_ioc_enclave_provision() kernel-doc comment (Vladis Dronov) [1660337] - [x86] x86/sgx: Return -ERESTARTSYS in sgx_ioc_enclave_add_pages() (Vladis Dronov) [1660337] - [tools] selftests/sgx: Use a statically generated 3072-bit RSA key (Vladis Dronov) [1660337] - [x86] x86/sgx: Clarify 'laundry_list' locking (Vladis Dronov) [1660337] - [documentation] Documentation/x86: Document SGX kernel architecture (Vladis Dronov) [1660337] - [x86] x86/sgx: Add ptrace() support for the SGX driver (Vladis Dronov) [1660337] - [x86] x86/sgx: Add a page reclaimer (Vladis Dronov) [1660337] - [tools] selftests/x86: Add a selftest for SGX (Vladis Dronov) [1660337] - [x86] x86/vdso: Implement a vDSO for Intel SGX enclave call (Vladis Dronov) [1660337] - [mm] x86/traps: Attempt to fixup exceptions in vDSO before signaling (Vladis Dronov) [1660337] - [mm] x86/fault: Add a helper function to sanitize error code (Vladis Dronov) [1660337] - [x86] x86/vdso: Add support for exception fixup in vDSO functions (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_PROVISION (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_INIT (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_ADD_PAGES (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_CREATE (Vladis Dronov) [1660337] - [x86] x86/sgx: Add an SGX misc driver interface (Vladis Dronov) [1660337] - [mm] mm: Add 'mprotect' hook to struct vm_operations_struct (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX page allocator functions (Vladis Dronov) [1660337] - [x86] x86/cpu/intel: Add a nosgx kernel parameter (Vladis Dronov) [1660337] - [x86] x86/cpu/intel: Detect SGX support (Vladis Dronov) [1660337] - [mm] x86/mm: Signal SIGSEGV with PF_SGX (Vladis Dronov) [1660337] - [x86] x86/sgx: Initialize metadata for Enclave Page Cache (EPC) sections (Vladis Dronov) [1660337] - [x86] x86/{cpufeatures, msr}: Add Intel SGX Launch Control hardware bits (Vladis Dronov) [1660337] - [x86] x86/cpufeatures: Add Intel SGX hardware bits (Vladis Dronov) [1660337] - [x86] x86/sgx: Add wrappers for ENCLS functions (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX architectural data structures (Vladis Dronov) [1660337] - [mm] x86/fault: Make error_code sanitization more robust (Vladis Dronov) [1660337] - [video] vgacon: remove software scrollback support (Chris von Recklinghausen) [1883596] - [tools] libbpf: fix backport of "libbpf: Remove any use of reallocarray() in libbpf" (Jiri Benc) [1924711] - [net] bpf: Prevent double bpf_prog_put call from bpf_tracing_prog_attach (Jiri Benc) [1924711] - [tools] selftests/bpf: Adding test for arg dereference in extension trace (Jiri Benc) [1924711] - [tools] selftests: Add selftest for disallowing modify_return attachment to freplace (Jiri Benc) [1924711] - [tools] selftests: Add test for multiple attachments of freplace program (Jiri Benc) [1924711] - [tools] selftests/bpf: Turn fexit_bpf2bpf into test with subtests (Jiri Benc) [1924711] - [tools] libbpf: Add support for freplace attachment in bpf_link_create (Jiri Benc) [1924711] - [net] bpf: Fix context type resolving for extension programs (Jiri Benc) [1924711] - [net] bpf: Support attaching freplace programs to multiple attach points (Jiri Benc) [1924711] - [net] bpf: Move prog->aux->linked_prog and trampoline into bpf_link on attach (Jiri Benc) [1924711] - [net] bpf: verifier: refactor check_attach_btf_id() (Jiri Benc) [1924711] - [net] bpf: change logging calls from verbose() to bpf_log() and use log pointer (Jiri Benc) [1924711] - [net] bpf: disallow attaching modify_return tracing functions to other BPF programs (Jiri Benc) [1924711] - [mm] kasan: fix incorrect arguments passing in kasan_add_zero_shadow (Waiman Long) [1921394] - [mm] kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow (Waiman Long) [1921394] - [mm] mm: memcg/slab: optimize objcg stock draining (Waiman Long) [1921394] - [mm] mm: don't wake kswapd prematurely when watermark boosting is disabled (Waiman Long) [1921394] - [mm] mm/vmalloc.c: fix kasan shadow poisoning size (Waiman Long) [1921394] - [mm] mm/vmalloc: Fix unlock order in s_stop() (Waiman Long) [1921394] - [mm] mm/swapfile: do not sleep with a spin lock held (Waiman Long) [1921394] - [mm] mm: list_lru: set shrinker map bit when child nr_items is not zero (Waiman Long) [1921394] - [mm] mm: mempolicy: fix potential pte_unmap_unlock pte error (Waiman Long) [1921394] - [mm] mm/mmu_notifier: fix mmget() assert in __mmu_interval_notifier_insert (Waiman Long) [1921394] - [mm] mm/swapfile.c: fix potential memory leak in sys_swapon (Waiman Long) [1921394] - [mm] mm: validate pmd after splitting (Waiman Long) [1921394] - [mm] hugetlb_cgroup: convert comma to semicolon (Waiman Long) [1921394] - [mm] mm/memory_hotplug: fix unpaired mem_hotplug_begin/done (Waiman Long) [1921394] - [mm] khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter() (Waiman Long) [1921394] - [mm] khugepaged: khugepaged_test_exit() check mmget_still_valid() (Waiman Long) [1921394] - [mm] mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible (Waiman Long) [1921394] - [mm] mm/hugetlb.c: clean code by removing unnecessary initialization (Waiman Long) [1921394] - [mm] mm/sparse: never partially remove memmap for early section (Waiman Long) [1921394] - [mm] mm/sparse: fix kernel crash with pfn_section_valid check (Waiman Long) [1921394] - [mm] mm/shuffle: don't move pages between zones and don't read garbage memmaps (Waiman Long) [1921394] - [mm] mm/sparse: rename pfn_present() to pfn_in_present_section() (Waiman Long) [1921394] - [powerpc] powerpc/pseries: Advance pfn if section is not present in lmb_is_removable() (Waiman Long) [1921394] - [powerpc] powerpc/pseries/hotplug-memory: Change rc variable to bool (Waiman Long) [1921394] - [mm] mm/gup: fix fixup_user_fault() on multiple retries (Waiman Long) [1921394] - [mm] mm/gup: Let __get_user_pages_locked() return -EINTR for fatal signal (Waiman Long) [1921394] - [mm] mm/mempolicy: Allow lookup_node() to handle fatal signal (Waiman Long) [1921394] - [include] include/linux/memremap.h: remove stale comments (Waiman Long) [1921394] - [mm] mm/sparsemem: get address to page struct instead of address to pfn (Waiman Long) [1921394] - [fs] hibernate: Allow uswsusp to write to swap (Waiman Long) [1921394] - [mm] mm/hotplug: fix hot remove failure in SPARSEMEM|!VMEMMAP case (Waiman Long) [1921394] - [mm] mm/hmm: add missing call to hmm_pte_need_fault in HMM_PFN_SPECIAL handling (Waiman Long) [1921394] - [mm] mm/hmm: add missing unmaps of the ptep during hmm_vma_handle_pte() (Waiman Long) [1921394] - [mm] mm/hmm: allow snapshot of the special zero page (Waiman Long) [1921394] - [mm] mm/hmm: a few more C style and comment clean ups (Waiman Long) [1921394] - [mm] mm/sparse.c: do not waste pre allocated memmap space (Waiman Long) [1921394] - [mm] mm/sparse: consistently do not zero memmap (Waiman Long) [1921394] - [mm] mm/gup: fix a misnamed "write" argument, and a related bug (Waiman Long) [1921394] - [powerpc] treewide: add checks for the return value of memblock_alloc*() (Waiman Long) [1921394] - [kvm] KVM: x86: Expose AVX512_FP16 for supported CPUID (Paul Lai) [1838734] - [x86] x86: Enumerate AVX512 FP16 CPUID feature flag (Paul Lai) [1838734] - [kvm] x86/kvm: Expose TSX Suspend Load Tracking feature (Paul Lai) [1838734] - [net] sched: act_ct: enable stats for HW offloaded entries (Marcelo Leitner) [1909257] - [scsi] scsi: fnic: Validate io_req before others (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Set scsi_set_resid() only for underflow (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Change shost_printk() to FNIC_MAIN_DBG() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Avoid looping in TRANS ETH on unload (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Change shost_printk() to FNIC_FCS_DBG() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Simplify the return expression of vnic_wq_copy_alloc() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Fix inconsistent format argument type in fnic_debugfs.c (Govindarajulu Varadarajan) [1845720] - [x86] perf/x86/intel/uncore: Fix the scale of the IMC free-running events (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Reduce the number of CBOX counters (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Update Ice Lake uncore units (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Split the Ice Lake and Tiger Lake MSR uncore support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Support PCIe3 unit on Snow Ridge (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Generic support for the PCI sub driver (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_pmu_unregister() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_pmu_register() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_find_dev_pmu() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_get_dev_die_info() (Michael Petlan) [1884818 1908305]- [mmc] mmc: sdhci-acpi: For amd device set driver type as MMC_SET_DRIVER_TYPE_A (David Arcari) [1906067] - [pinctrl] pinctrl: Added IRQF_SHARED flag for amd-pinctrl driver (David Arcari) [1906067] - [block] block: export blk_mq_make_request (Ming Lei) [1917913] - [platform] platform/x86: dell-wmi-sysman: fix a NULL pointer dereference (Perry Yuan) [1922587] - [platform] platform/x86: dell-wmi-sysman: work around for BIOS bug (Juan Martinez) [1504859] - [platform] platform/x86: dell-wmi-sysman: fix init_bios_attributes() error handling (Juan Martinez) [1504859] - [platform] platform/x86/dell-wmi-sysman: Make some symbols static (Juan Martinez) [1504859] - [platform] platform/x86/dell-wmi-sysman: Make wmi_sysman_kobj_sysfs_ops static (Juan Martinez) [1504859] - [documentation] docs: ABI: sysfs-class-firmware-attributes: solve some warnings (Juan Martinez) [1504859] - [platform] platform/x86: Use appropriate module alias macro for this kernel (Juan Martinez) [1504859] - [platform] platform/x86: Introduce support for Systems Management Driver over WMI for Dell Systems (Juan Martinez) [1504859] - [md] dm: eliminate potential source of excessive kernel log noise (Mike Snitzer) [1876840] - [scsi] scsi: sd: Suppress spurious errors when WRITE SAME is being disabled (Ewan Milne) [1871060] - [net] libceph, ceph: disambiguate ceph_connection_operations handlers (Jeff Layton) [1893177] - [net] libceph: zero out session key and connection secret (Jeff Layton) [1893177] - [include] libceph: add __maybe_unused to DEFINE_MSGR2_FEATURE (Jeff Layton) [1893177] - [net] libceph: align session_key and con_secret to 16 bytes (Jeff Layton) [1893177] - [net] libceph: fix auth_signature buffer allocation in secure mode (Jeff Layton) [1893177] - [fs] ceph: reencode gid_list when reconnecting (Jeff Layton) [1893177] - [net] libceph: drop ceph_auth_{create, update}_authorizer() (Jeff Layton) [1893177] - [fs] libceph, ceph: make use of __ceph_auth_get_authorizer() in msgr1 (Jeff Layton) [1893177] - [net] libceph, ceph: implement msgr2.1 protocol (crc and secure modes) (Jeff Layton) [1893177] - [net] libceph: introduce connection modes and ms_mode option (Jeff Layton) [1893177] - [block] libceph, rbd: ignore addr->type while comparing in some cases (Jeff Layton) [1893177] - [net] libceph, ceph: get and handle cluster maps with addrvecs (Jeff Layton) [1893177] - [net] libceph: factor out finish_auth() (Jeff Layton) [1893177] - [net] libceph: drop ac->ops->name field (Jeff Layton) [1893177] - [net] libceph: amend cephx init_protocol() and build_request() (Jeff Layton) [1893177] - [net] libceph, ceph: incorporate nautilus cephx changes (Jeff Layton) [1893177] - [net] libceph: safer en/decoding of cephx requests and replies (Jeff Layton) [1893177] - [net] libceph: more insight into ticket expiry and invalidation (Jeff Layton) [1893177] - [net] libceph: move msgr1 protocol specific fields to its own struct (Jeff Layton) [1893177] - [net] libceph: move msgr1 protocol implementation to its own file (Jeff Layton) [1893177] - [net] libceph: use sendpage_ok() in ceph_tcp_sendpage() (Jeff Layton) [1893177] - [net] net: introduce helper sendpage_ok() in include/linux/net.h (Jeff Layton) [1893177] - [net] libceph: separate msgr1 protocol implementation (Jeff Layton) [1893177] - [net] libceph: export remaining protocol independent infrastructure (Jeff Layton) [1893177] - [net] libceph: export zero_page (Jeff Layton) [1893177] - [net] libceph: rename and export con->flags bits (Jeff Layton) [1893177] - [net] libceph: rename and export con->state states (Jeff Layton) [1893177] - [net] libceph: make con->state an int (Jeff Layton) [1893177] - [net] libceph: don't export ceph_messenger_{init_fini}() to modules (Jeff Layton) [1893177] - [net] libceph: make sure our addr->port is zero and addr->nonce is non-zero (Jeff Layton) [1893177] - [net] libceph: factor out ceph_con_get_out_msg() (Jeff Layton) [1893177] - [net] libceph: change ceph_con_in_msg_alloc() to take hdr (Jeff Layton) [1893177] - [net] libceph: change ceph_msg_data_cursor_init() to take cursor (Jeff Layton) [1893177] - [net] libceph: handle discarding acked and requeued messages separately (Jeff Layton) [1893177] - [net] libceph: drop msg->ack_stamp field (Jeff Layton) [1893177] - [net] libceph: remove redundant session reset log message (Jeff Layton) [1893177] - [net] libceph: clear con->peer_global_seq on RESETSESSION (Jeff Layton) [1893177] - [net] libceph: rename reset_connection() to ceph_con_reset_session() (Jeff Layton) [1893177] - [net] libceph: split protocol reset bits out of reset_connection() (Jeff Layton) [1893177] - [net] libceph: don't call reset_connection() on version/feature mismatches (Jeff Layton) [1893177] - [net] libceph: lower exponential backoff delay (Jeff Layton) [1893177] - [net] libceph: include middle_len in process_message() dout (Jeff Layton) [1893177] - [fs] ceph: implement updated ceph_mds_request_head structure (Jeff Layton) [1893177] - [fs] ceph: clean up argument lists to __prepare_send_request and __send_request (Jeff Layton) [1893177] - [fs] ceph: take a cred reference instead of tracking individual uid/gid (Jeff Layton) [1893177] - [fs] ceph: don't reach into request header for readdir info (Jeff Layton) [1893177] - [fs] ceph: set osdmap epoch for setxattr (Jeff Layton) [1893177] - [fs] ceph: remove redundant assignment to variable i (Jeff Layton) [1893177] - [fs] ceph: add ceph.caps vxattr (Jeff Layton) [1893177] - [fs] ceph: when filling trace, call ceph_get_inode outside of mutexes (Jeff Layton) [1893177] - [fs] Revert "ceph: allow rename operation under different quota realms" (Jeff Layton) [1893177] - [fs] ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode fails (Jeff Layton) [1893177] - [fs] ceph: downgrade warning from mdsmap decode to debug (Jeff Layton) [1893177] - [fs] ceph: fix race in concurrent __ceph_remove_cap invocations (Jeff Layton) [1893177] - [fs] ceph: pass down the flags to grab_cache_page_write_begin (Jeff Layton) [1893177] - [fs] ceph: add ceph.{cluster_fsid/client_id} vxattrs (Jeff Layton) [1893177] - [fs] ceph: add status debugfs file (Jeff Layton) [1893177] - [include] libceph: remove unused port macros (Jeff Layton) [1893177] - [fs] ceph: ensure we have Fs caps when fetching dir link count (Jeff Layton) [1893177] - [fs] ceph: send dentry lease metrics to MDS daemon (Jeff Layton) [1893177] - [fs] ceph: acquire Fs caps when getting dir stats (Jeff Layton) [1893177] - [fs] ceph: fix up some warnings on W=1 builds (Jeff Layton) [1893177] - [fs] ceph: queue MDS requests to REJECTED sessions when CLEANRECOVER is set (Jeff Layton) [1893177] - [fs] ceph: remove timeout on allowing reconnect after blocklisting (Jeff Layton) [1893177] - [fs] ceph: add new RECOVER mount_state when recovering session (Jeff Layton) [1893177] - [fs] ceph: make fsc->mount_state an int (Jeff Layton) [1893177] - [fs] ceph: don't WARN when removing caps due to blocklisting (Jeff Layton) [1893177] - [fs] ceph: check session state after bumping session->s_seq (Jeff Layton) [1893177] - [net] libceph: clear con->out_msg on Policy::stateful_server faults (Jeff Layton) [1893177] - [net] libceph: format ceph_entity_addr nonces as unsigned (Jeff Layton) [1893177] - [include] libceph: fix ENTITY_NAME format suggestion (Jeff Layton) [1893177] - [net] libceph: move a dout in queue_con_delay() (Jeff Layton) [1893177] - [fs] ceph: comment cleanups and clarifications (Jeff Layton) [1893177] - [fs] ceph: break up send_cap_msg (Jeff Layton) [1893177] - [fs] ceph: drop separate mdsc argument from __send_cap (Jeff Layton) [1893177] - [fs] ceph: promote to unsigned long long before shifting (Jeff Layton) [1893177] - [fs] ceph: don't SetPageError on readpage errors (Jeff Layton) [1893177] - [fs] ceph: mark ceph_fmt_xattr() as printf-like for better type checking (Jeff Layton) [1893177] - [fs] ceph: fold ceph_update_writeable_page into ceph_write_begin (Jeff Layton) [1893177] - [fs] ceph: fold ceph_sync_writepages into writepage_nounlock (Jeff Layton) [1893177] - [fs] ceph: fold ceph_sync_readpages into ceph_readpage (Jeff Layton) [1893177] - [fs] ceph: don't call ceph_update_writeable_page from page_mkwrite (Jeff Layton) [1893177] - [fs] ceph: break out writeback of incompatible snap context to separate function (Jeff Layton) [1893177] - [fs] ceph: add a note explaining session reject error string (Jeff Layton) [1893177] - [net] libceph: switch to the new "osd blocklist add" command (Jeff Layton) [1893177] - [fs] libceph, rbd, ceph: "blacklist" -> "blocklist" (Jeff Layton) [1893177] - [fs] ceph: have ceph_writepages_start call pagevec_lookup_range_tag (Jeff Layton) [1893177] - [fs] ceph: use kill_anon_super helper (Jeff Layton) [1893177] - [fs] ceph: metrics for opened files, pinned caps and opened inodes (Jeff Layton) [1893177] - [fs] ceph: add ceph_sb_to_mdsc helper support to parse the mdsc (Jeff Layton) [1893177] - [fs] ceph: drop special-casing for ITER_PIPE in ceph_sync_read (Jeff Layton) [1893177] - [fs] ceph: add column 'mds' to show caps in more user friendly (Jeff Layton) [1893177] - [include] libceph: multiple workspaces for CRUSH computations (Jeff Layton) [1893177] - [fs] ceph: remove unnecessary return in switch statement (Jeff Layton) [1893177] - [fs] ceph: encode inodes' parent/d_name in cap reconnect message (Jeff Layton) [1893177] - [include] libceph: add __maybe_unused to DEFINE_CEPH_FEATURE (Jeff Layton) [1893177] - [fs] ceph: use frag's MDS in either mode (Jeff Layton) [1893177] - [fs] ceph: move sb->wb_pagevec_pool to be a global mempool (Jeff Layton) [1893177] - [fs] ceph: remove redundant initialization of variable mds (Jeff Layton) [1893177] - [fs] ceph: fix use-after-free for fsc->mdsc (Jeff Layton) [1893177] - [fs] ceph: remove unused variables in ceph_mdsmap_decode() (Jeff Layton) [1893177] - [fs] ceph: delete repeated words in fs/ceph/ (Jeff Layton) [1893177] - [fs] ceph: send client provided metric flags in client metadata (Jeff Layton) [1893177] - [fs] ceph: periodically send perf metrics to MDSes (Jeff Layton) [1893177] - [fs] ceph: check the sesion state and return false in case it is closed (Jeff Layton) [1893177] - [net] libceph: replace HTTP links with HTTPS ones (Jeff Layton) [1893177] - [fs] ceph: remove unnecessary cast in kfree() (Jeff Layton) [1893177] - [net] libceph: just have osd_req_op_init() return a pointer (Jeff Layton) [1893177] - [fs] ceph: do not access the kiocb after aio requests (Jeff Layton) [1893177] - [fs] ceph: clean up and optimize ceph_check_delayed_caps() (Jeff Layton) [1893177] - [fs] ceph: fix potential mdsc use-after-free crash (Jeff Layton) [1893177] - [fs] ceph: switch to WARN_ON_ONCE in encode_supported_features() (Jeff Layton) [1893177] - [fs] ceph: add global total_caps to count the mdsc's total caps number (Jeff Layton) [1893177] - [fs] ceph: add check_session_state() helper and make it global (Jeff Layton) [1893177] - [net] libceph: dump class and method names on method calls (Jeff Layton) [1893177] - [net] libceph: use target_copy() in send_linger() (Jeff Layton) [1893177] - [fs] ceph: add metadata perf metric support (Jeff Layton) [1893177] - [fs] ceph: add read/write latency metric support (Jeff Layton) [1893177] - [fs] ceph: add caps perf metric for each superblock (Jeff Layton) [1893177] - [fs] ceph: add dentry lease metric support (Jeff Layton) [1893177] - [include] math64: New DIV64_U64_ROUND_CLOSEST helper (Jeff Layton) [1893177] - [tty] tty: Fix ->pgrp locking in tiocspgrp() (Waiman Long) [1908197] {CVE-2020-29661}- [mm] Revert "powerpc: Ensure that swiotlb buffer is allocated from low memory" (Diego Domingos) [1907131] - [fs] xfs: use ENOTBLK for direct I/O to buffered I/O fallback (Carlos Maiolino) [1922953] - [nvme] nvme-multipath: Early exit if no path is available (Gopal Tiwari) [1880508] - [scsi] scsi: lpfc: Add support for eh_should_retry_cmd() (Ewan Milne) [1801585] - [scsi] scsi: scsi_transport_fc: Add store capability to rport port_state in sysfs (Ewan Milne) [1801585] - [scsi] scsi: scsi_transport_fc: Add a new rport state FC_PORTSTATE_MARGINAL (Ewan Milne) [1801585] - [scsi] scsi: core: No retries on abort success (Ewan Milne) [1801585] - [scsi] scsi: core: Add a new error code DID_TRANSPORT_MARGINAL in scsi.h (Ewan Milne) [1801585] - [scsi] scsi: core: Add limitless cmd retry support (Ewan Milne) [1801585] - [fs] gfs2: Fix deadlock between gfs2_{create_inode, inode_lookup} and delete_work_func (Andreas Grunbacher) [1903190] - [fs] gfs2: Don't call cancel_delayed_work_sync from within delete work function (Andreas Grunbacher) [1903190] - [cpufreq] acpi-cpufreq: Honor _PSD table setting on new AMD CPUs (Terry Bowman) [1886943] - [x86] x86/cpufeatures: Enumerate TSX suspend load address tracking instructions (Josh Poimboeuf) [1836980] - [powerpc] powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memory (Diego Domingos) [1869184] - [mm] powerpc: Ensure that swiotlb buffer is allocated from low memory (Diego Domingos) [1869184] - [fs] debugfs: Fix module state check condition (Vladis Dronov) [1866285] - [fs] debugfs: Check module state before warning in {full/open}_proxy_open() (Vladis Dronov) [1866285]- [firmware] efi: Don't attempt to map RCI2 config table if it doesn't exist (Lenny Szubowicz) [1779590] - [firmware] efi: Make CONFIG_EFI_RCI2_TABLE selectable on x86 only (Lenny Szubowicz) [1779590] - [firmware] efi: Make unexported efi_rci2_sysfs_init() static (Lenny Szubowicz) [1779590] - [iommu] iommu: use the __iommu_attach_device() directly for deferred attach (Lianbo Jiang) [1904658] - [iommu] dma-iommu: use static-key to minimize the impact in the fast-path (Lianbo Jiang) [1904658] - [x86] x86/PCI: sta2x11: use default DMA address translation (Jerry Snitselaar) [1887546] - [powerpc] powerpc: use the generic dma_ops_bypass mode (Jerry Snitselaar) [1887546] - [dma] dmaengine: fix error codes in channel_register() (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: off by one in cleanup code (Jerry Snitselaar) [1837187] - [documentation] dmaengine: idxd: Add ABI documentation for shared wq (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Clean up descriptors with fault error (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Add shared workqueue support (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix mapping of portal size (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix wq config registers offset programming (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Allocate correct size for descriptor chunk (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: add missing invalid flags field to completion (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: fix hw descriptor fields for delta record (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: Merge definition of dsa_batch_desc into dsa_hw_desc (Jerry Snitselaar) [1838386 1837187] - [dma] dmaengine: dmatest: Return boolean result directly in filter() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Check list for emptiness before access its last entry (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Make two symbols static (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Print error codes as signed value (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add command status to idxd sysfs attribute (Jerry Snitselaar) [1893465 1837187] - [dma] dmaengine: idxd: add support for configurable max wq batch size (Jerry Snitselaar) [1893468 1837187] - [dma] dmaengine: idxd: add support for configurable max wq xfer size (Jerry Snitselaar) [1893468 1837187] - [documentation] dmaengine: idxd: add leading / for sysfspath in ABI documentation (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: clear misc interrupt cause after read (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Prevent to run on misconfigured channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Put the CSRT table after using it (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: reset states after device disable or reset (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: move idxd interrupt handling to mask instead of ignore (Jerry Snitselaar) [1872374 1837187] - [dma] dmaengine: idxd: add work queue drain support (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: move submission to sbitmap_queue (Jerry Snitselaar) [1837187] - [dma] dmaengine: cookie bypass for out of order completion (Jerry Snitselaar) [1838893 1837187] - [dma] dmaengine: ioat setting ioat timeout as module parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: stop completed threads when running without set channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix misc interrupt handler thread unmasking (Jerry Snitselaar) [1877126 1837187] - [dma] dmaengine: idxd: cleanup workqueue config after disabling (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix cdev locking for open and release (Jerry Snitselaar) [1837187] - [dma] dmaengine: Replace zero-length array with flexible-array (Jerry Snitselaar) [1837187] - [dma] dmaengine: Fix doc strings to satisfy validation script (Jerry Snitselaar) [1837187] - [dma] dmaengine: Include dmaengine.h into dmaengine.c (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Describe members of struct dmatest_info (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Describe members of struct dmatest_params (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Allow negative timeout value to specify infinite wait (Jerry Snitselaar) [1837187] - [dma] Revert "dmaengine: dmatest: timeout value of -1 should specify infinite wait" (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: adding missed issue_pending to timeout handler (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: remove unnesesery double complition timer modification (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: removing duplicate code from timeout handler (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Decreasing allocation chunk size 2M->512K (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: fixing chunk sizing macros dependency (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: export hw version through sysfs (Jerry Snitselaar) [1838888 1837187] - [dma] dmaengine: dmatest: Restore default for channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix interrupt completion after unmasking (Jerry Snitselaar) [1838895 1837187] - [dma] dmaengine: dmatest: Fix process hang when reading 'wait' parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Fix iteration non-stop logic (Jerry Snitselaar) [1837187] - [dma] dmaengine: fix channel index enumeration (Jerry Snitselaar) [1838390 1837187] - [include] include/linux/dmaengine: Typos fixes in API documentation (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove global token limit check (Jerry Snitselaar) [1838385 1837187] - [dma] dmaengine: idxd: reflect shadow copy of traffic class programming (Jerry Snitselaar) [1838381 1837187] - [dma] dmaengine: Create debug directories for DMA devices (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add basic debugfs support (Jerry Snitselaar) [1837187] - [include] dmaengine: consistently return string literal from switch-case (Jerry Snitselaar) [1837187] - [include] dmaengine: Drop redundant 'else' keyword (Jerry Snitselaar) [1837187] - [include] dmaengine: Use negative condition for better readability (Jerry Snitselaar) [1837187] - [include] dmaengine: Refactor dmaengine_check_align() to be bit operations only (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: expose general capabilities register in sysfs (Jerry Snitselaar) [1837187 1836532] - [dma] dmaengine: idxd: check return result from check_vma() in cdev (Jerry Snitselaar) [1837187 1836530] - [dma] dmanegine: ioat/dca: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove set but not used variable 'idxd_cdev' (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove set but not used variable 'group' (Jerry Snitselaar) [1837187] - [documentation] dmaengine: idxd: add sysfs ABI for idxd driver (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix off by one on cdev dwq refcount (Jerry Snitselaar) [1838366 1837187] - [dma] dmaengine: idxd: wq size configuration needs to check global max size (Jerry Snitselaar) [1837187 1836579] - [dma] dmaengine: idxd: sysfs input of wq incorrect wq type should return error (Jerry Snitselaar) [1837187 1836585] - [dma] dmaengine: idxd: correct reserved token calculation (Jerry Snitselaar) [1837187 1836647] - [dma] dmaengine: idxd: Fix error handling in idxd_wq_cdev_dev_setup() (Jerry Snitselaar) [1838354 1837187] - [dma] dmaengine: idxd: fix runaway module ref count on device driver bind (Jerry Snitselaar) [1837187 1836649] - [dma] dmaengine: idxd: fix boolconv.cocci warnings (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add char driver to expose submission portal to userland (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: connect idxd to dmaengine subsystem (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add descriptor manipulation routines (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add configuration component of driver (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Init and probe for Intel data accelerators (Jerry Snitselaar) [1837187] - [include] io-64-nonatomic: add io{read|write}64{_lo_hi|_hi_lo} macros (Jerry Snitselaar) [1837187] - [powerpc] iomap: introduce io{read|write}64_{lo_hi|hi_lo} (Jerry Snitselaar) [1837187] - [lib] iomap: Use non-raw io functions for io{read|write}XXbe (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: use vchan_vdesc_fini() to free descriptors (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Add missing locking around list operations (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Do not call desc_free() under a spin_lock (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: remove debug message (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Add missing locking (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Support in-use unbind (Jerry Snitselaar) [1837187] - [dma] dmaengine: move .device_release missing log warning to debug level (Jerry Snitselaar) [1837187] - [dma] dmaengine: Cleanups for the slave <-> channel symlink support (Jerry Snitselaar) [1837187] - [dma] dmaengine: fix null ptr check for __dma_async_device_channel_register() (Jerry Snitselaar) [1837187] - [dma] dmaengine: Fix return value for dma_request_chan() in case of failure (Jerry Snitselaar) [1837187] - [dma] dmaengine: Create symlinks between DMA channels and slaves (Jerry Snitselaar) [1837187] - [dma] dmaengine: add support to dynamic register/unregister of channels (Jerry Snitselaar) [1837187] - [dma] dmaengine: break out channel registration (Jerry Snitselaar) [1837187] - [x86] x86/asm: Carve out a generic movdir64b() helper for general usage (Jerry Snitselaar) [1837187] - [x86] x86/asm: add iosubmit_cmds512() based on MOVDIR64B CPU instruction (Jerry Snitselaar) [1837187] - [dma] dmaengine: Move dma_get_{, any_}slave_channel() to private dmaengine.h (Jerry Snitselaar) [1837187] - [include] dmaengine: Remove dma_request_slave_channel_compat() wrapper (Jerry Snitselaar) [1837187] - [dma] dmaengine: Remove dma_device_satisfies_mask() wrapper (Jerry Snitselaar) [1837187] - [include] dmaengine: Add helper function to convert direction value to text (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add support for reporting DMA cached data amount (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add metadata_ops for dma_async_tx_descriptor (Jerry Snitselaar) [1837187] - [dma] dmaengine: print more meaningful error message (Jerry Snitselaar) [1837187] - [dma] dmaengine: move module_/dma_device_put() after route free (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add reference counting to dma_device struct (Jerry Snitselaar) [1837187] - [dma] dmaengine: Move dma_channel_rebalance() infrastructure up in code (Jerry Snitselaar) [1837187] - [dma] dmaengine: Call module_put() after device_free_chan_resources() (Jerry Snitselaar) [1837187] - [dma] dmaengine: Store module owner in dma_device struct (Jerry Snitselaar) [1837187] - [include] dmaengine: Remove spaces before TABs (Jerry Snitselaar) [1837187] - [dma] ioat: ioat_alloc_ring() failure handling (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Fix access after free in vchan_complete() (Jerry Snitselaar) [1837187] - [include] dmaengine: Fix access to uninitialized dma_slave_caps (Jerry Snitselaar) [1837187] - [dma] dmanegine: ioat/dca: Use struct_size() helper (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Add kernel doc parameter descriptions (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Set up DMA mask based on CSRT (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add support for completion polling (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: store result on dma descriptor (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: timeout value of -1 should specify infinite wait (Jerry Snitselaar) [1837187] - [dma] dmaengine: Grammar s/the its/its/, s/need/needs/ (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 (Jerry Snitselaar) [1837187] - [dma] treewide: Add SPDX license identifier - Makefile/Kconfig (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 7 (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: move test data alloc & free into functions (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: add short-hand `buf_size` var in dmatest_func() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: wrap src & dst data into a struct (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Abort test in case of mapping error (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add transfer_size parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add alignment parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Use fixed point div to calculate iops (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add support for multi channel testing (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: fix a small memory leak in dmatest_func() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: move size checks earlier in function (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: use dmaengine_terminate_sync() instead (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: unmap data on a single code-path when xfer done (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma64: replace spin_lock_irqsave with spin_lock (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma: remove dma_slave_config direction usage (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: fix prototype of ioat_enumerate_channels (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioatdma: set the completion address register after channel reset (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma64: Support dmaengine_terminate_sync() (Jerry Snitselaar) [1837187] - [dma] dmaengine: add a new helper dmaenginem_async_device_register (Jerry Snitselaar) [1837187] - [documentation] Documentation/x86: Add documentation for SVA (Shared Virtual Addressing) (Jerry Snitselaar) [1836777] - [iommu] iommu/vt-d: Change flags type to unsigned int in binding mm (Jerry Snitselaar) [1836777] - [drm] drm, iommu: Change type of pasid to u32 (Jerry Snitselaar) [1836777] - [x86] x86/asm: Add an enqcmds() wrapper for the ENQCMDS instruction (Jerry Snitselaar) [1837187] - [x86] x86/mmu: Allocate/free a PASID (Jerry Snitselaar) [1836777] - [x86] x86/cpufeatures: Mark ENQCMD as disabled when configured out (Jerry Snitselaar) [1836777] - [mm] mm: Add a pasid member to struct mm_struct (Jerry Snitselaar) [1836777] - [x86] x86/msr-index: Define an IA32_PASID MSR (Jerry Snitselaar) [1836777] - [x86] x86/fpu/xstate: Add supervisor PASID state for ENQCMD (Jerry Snitselaar) [1836777] - [x86] x86/cpufeatures: Enumerate ENQCMD and ENQCMDS instructions (Jerry Snitselaar) [1836777] - [x86] x86/fpu/xstate: Restore supervisor states for signal return (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Preserve supervisor states for the slow path in __fpu__restore_sig() (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Introduce copy_supervisor_to_kernel() (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Update copy_kernel_to_xregs_err() for supervisor states (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Update sanitize_restored_xstate() for supervisor xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Define new functions for clearing fpregs and xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Introduce XSAVES supervisor states (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Separate user and supervisor xfeatures mask (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Define new macros for supervisor and user xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Rename validate_xstate_header() to validate_user_xstate_header() (Jerry Snitselaar) [1837178] - [x86] copy_xstate_to_kernel: Fix typo which caused GDB regression (Jerry Snitselaar) [1837178] - [x86] copy_xstate_to_kernel(): don't leave parts of destination uninitialized (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Warn when checking alignment of disabled xfeatures (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix XSAVES offsets in setup_xstate_comp() (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix last_good_offset in setup_xstate_features() (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Shrink space allocated for xstate_comp_offsets (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Make xfeature_is_supervisor()/xfeature_is_user() return bool (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix small issues (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Use XFEATURE_FP/SSE enum values instead of hardcoded numbers (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Use unsigned long long shift in xfeature_uncompacted_offset() (Jerry Snitselaar) [1837178] - [iommu] iommu/vt-d: Fix sid not set issue in intel_svm_bind_gpasid() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix kernel NULL pointer dereference in find_domain() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Don't read VCCAP register unless it exists (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Add SMMUv3.2 range invalidation support (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Batch ATC invalidation commands (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Add command queue batching helpers (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Add sanity check for interrupt remapping table length macros (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Restore IRTE.RemapEn bit for amd_iommu_activate_guest_mode (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Fix potential @entry null deref (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Handle 36bit addressing for x86-32 (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Do not use IOMMUv2 functionality when SME is active (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Do not force direct mapping when SME is active (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Restore IRTE.RemapEn bit after programming IRTE (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix NULL pointer dereference in dev_iommu_priv_set() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Serialize IOMMU GCMD register modifications (Jerry Snitselaar) [1887546] - [dma] dma-pool: Fix an uninitialized variable bug in atomic_pool_expand() (Jerry Snitselaar) [1887546] - [dma] dma-pool: Only allocate from CMA when in same memory zone (Jerry Snitselaar) [1887546] - [dma] dma-pool: fix coherent pool allocations for IOMMU mappings (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Move Kconfig and Makefile bits down into amd directory (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move Kconfig and Makefile bits down into intel directory (Jerry Snitselaar) [1887546] - [iommu] iommu: Add gfp parameter to io_pgtable_ops->map() (Jerry Snitselaar) [1887546] - [iommu] iommu: Mark __iommu_map_sg() as static (Jerry Snitselaar) [1887546] - [iommu] iommu: Tidy up Kconfig for SoC IOMMUs (Jerry Snitselaar) [1887546] - [iommu] iommu: Make some functions static (Jerry Snitselaar) [1887546] - [include] iommu: Move sg_table wrapper out of CONFIG_IOMMU_SUPPORT (Jerry Snitselaar) [1887546] - [powerpc] powerpc/dma: Remove dev->archdata.iommu_domain (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove double zero check (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Rename intel-pasid.h to pasid.h (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add page response ops support (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Report page request faults for guest SVA (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add a helper to get svm and sdev for pasid (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Refactor device_to_iommu() helper (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Disable multiple GPASID-dev bind (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Warn on out-of-range invalidation address (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix devTLB flush for vSVA (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Handle non-page aligned address (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix PASID devTLB invalidation (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove global page support in devTLB flush (Jerry Snitselaar) [1887546] - [include] iommu/vt-d: Enforce PASID devTLB field mask (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove unused IOMMU_SYS_CACHE_ONLY flag (Jerry Snitselaar) [1887546] - [iommu] PCI/ATS: Add pci_pri_supported() to check device or associated PF (Jerry Snitselaar) [1887546] - [pci] PCI: Treat "external-facing" devices themselves as internal (Jerry Snitselaar) [1887546] - [documentation] docs: fix references for DMA*.txt files (Jerry Snitselaar) [1887546] - [dma] dma-contiguous: cleanup dma_alloc_contiguous (Jerry Snitselaar) [1887546] - [dma] dma-debug: use named initializers for dir2name (Jerry Snitselaar) [1887546] - [dma] dma-mapping: add a dma_ops_bypass flag to struct device (Jerry Snitselaar) [1887546] - [dma] dma-mapping: inline the fast path dma-direct calls (Jerry Snitselaar) [1887546] - [dma] dma-mapping: move the remaining DMA API calls out of line (Jerry Snitselaar) [1887546] - [dma] dma-mapping: don't BUG when calling dma_map_resource on RAM (Jerry Snitselaar) [1887546] - [of] of: Allow the iommu-map property to omit untranslated devices (Jerry Snitselaar) [1887546] - [iommu] treewide: Remove uninitialized_var() usage (Jerry Snitselaar) [1887546] - [dma] dma-pool: do not allocate pool memory from CMA (Jerry Snitselaar) [1887546] - [dma] dma-pool: make sure atomic pool suits device (Jerry Snitselaar) [1887546] - [dma] dma-pool: introduce dma_guess_pool() (Jerry Snitselaar) [1887546] - [dma] dma-pool: get rid of dma_in_atomic_pool() (Jerry Snitselaar) [1887546] - [dma] dma-direct: provide function to check physical memory area validity (Jerry Snitselaar) [1887546] - [documentation] docs: move DMA kAPI to Documentation/core-api (Jerry Snitselaar) [1887546] - [dma] dma-mapping: remove dma_mark_declared_memory_occupied (Jerry Snitselaar) [1887546] - [documentation] docs: DMA-API-HOWTO.txt: fix an unmarked code block (Jerry Snitselaar) [1887546] - [documentation] Documentation: DMA-API: fix a function name of max_mapping_size (Jerry Snitselaar) [1887546] - [documentation] docs: DMA-API-HOWTO: add a missing "=" (Jerry Snitselaar) [1887546] - [documentation] Documentation/DMA-API-HOWTO: update dma_mask sections (Jerry Snitselaar) [1887546] - [documentation] Documentation/DMA-ISA-LPC: fix an incorrect reference (Jerry Snitselaar) [1887546] - [documentation] Documentation: DMA-API: fix two typos (Jerry Snitselaar) [1887546] - [dma] dma-mapping: warn when coherent pool is depleted (Jerry Snitselaar) [1887546] - [dma] dma-remap: align the size in dma_common_*_remap() (Jerry Snitselaar) [1887546] - [dma] dma-mapping: DMA_COHERENT_POOL should select GENERIC_ALLOCATOR (Jerry Snitselaar) [1887546] - [dma] dma-direct: add missing set_memory_decrypted() for coherent mapping (Jerry Snitselaar) [1887546] - [dma] dma-direct: check return value when encrypting or decrypting memory (Jerry Snitselaar) [1887546] - [dma] dma-direct: re-encrypt memory if dma_direct_alloc_pages() fails (Jerry Snitselaar) [1887546] - [dma] dma-direct: always align allocation size in dma_direct_alloc_pages() (Jerry Snitselaar) [1887546] - [dma] dma-direct: mark __dma_direct_alloc_pages static (Jerry Snitselaar) [1887546] - [dma] dma-direct: re-enable mmap for !CONFIG_MMU (Jerry Snitselaar) [1887546] - [dma] dma-pool: decouple DMA_REMAP from DMA_COHERENT_POOL (Jerry Snitselaar) [1887546] - [message] scsi: mptfusion: Don't use GFP_ATOMIC for larger DMA allocations (Jerry Snitselaar) [1887546] - [dma] dma-pool: fix too large DMA pools on medium memory size systems (Jerry Snitselaar) [1887546] - [iommu] treewide: replace '---help---' in Kconfig files with 'help' (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Make remove callback message more informative (Jerry Snitselaar) [1887546] - [include] iommu: add generic helper for mapping sgtable objects (Jerry Snitselaar) [1887546] - [dma] dma-contiguous: fix comment for dma_release_from_contiguous (Jerry Snitselaar) [1887546] - [dma] dma-pool: scale the default DMA coherent pool size with memory capacity (Jerry Snitselaar) [1887546] - [x86] x86/mm: unencrypted non-blocking DMA allocations use coherent pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: add pool sizes to debugfs (Jerry Snitselaar) [1887546] - [dma] dma-direct: atomic allocations must come from atomic coherent pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: dynamically expanding atomic pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: add additional coherent pools to map to gfp mask (Jerry Snitselaar) [1887546] - [dma] dma-remap: separate DMA atomic pools from direct remap code (Jerry Snitselaar) [1887546] - [dma] dma-mapping: use vmap insted of reimplementing it (Jerry Snitselaar) [1887546] - [dma] dma-debug: make __dma_entry_alloc_check_leak() static (Jerry Snitselaar) [1887546] - [dma] dma: debug: no need to check return value of debugfs_create functions (Jerry Snitselaar) [1887546] - [dma] dma-debug: Batch dma_debug_entry allocation (Jerry Snitselaar) [1887546] - [dma] dma/debug: Remove dma_debug_resize_entries() (Jerry Snitselaar) [1887546] - [dma] dma-debug: Make leak-like behaviour apparent (Jerry Snitselaar) [1887546] - [dma] dma-debug: Dynamically expand the dma_debug_entry pool (Jerry Snitselaar) [1887546] - [dma] dma-debug: Use pr_fmt() (Jerry Snitselaar) [1887546] - [dma] dma-debug: Expose nr_total_entries in debugfs (Jerry Snitselaar) [1887546] - [dma] dma-debug: fix displaying of dma allocation type (Jerry Snitselaar) [1887546] - [dma] dma-direct: fix data truncation in dma_direct_get_required_mask() (Jerry Snitselaar) [1887546] - [dma] dma-direct: provide a arch_dma_clear_uncached hook (Jerry Snitselaar) [1887546] - [dma] dma-direct: make uncached_kernel_address more general (Jerry Snitselaar) [1887546] - [include] dma-direct: remove the cached_kernel_address hook (Jerry Snitselaar) [1887546] - [dma] dma-direct: consolidate the error handling in dma_direct_alloc_pages (Jerry Snitselaar) [1887546] - [dma] dma-coherent: fix integer overflow in the reserved-memory dma allocation (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix misuse of iommu_domain_identity_map() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Update scalable mode paging structure coherency (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Enable PCI ACS for platform opt in hint (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Set U/S bit in first level page table by default (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Make Intel SVM code 64-bit only (Jerry Snitselaar) [1887546] - [arm64] arm64: Remove dev->archdata.iommu pointer (Jerry Snitselaar) [1887546] - [x86] x86: Remove dev->archdata.iommu pointer (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use dev_iommu_priv_get/set() (Jerry Snitselaar) [1887546] - [iommu] iommu: Allow page responses without PASID (Jerry Snitselaar) [1887546] - [iommu] iommu/iova: Don't BUG on invalid PFNs (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Add helper functions to update domain->pt_root (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Print extended features in one line to fix divergent log levels (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Make amd_iommu_apply_ivrs_quirks() static inline (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move Intel IOMMU driver into subdirectory (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Move AMD IOMMU driver into subdirectory (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove redundant devid checks (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Store dev_data as device iommu private data (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Merge private header files (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove PD_DMA_OPS_MASK (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Consolidate domain allocation/freeing (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Free page-table in protection_domain_free() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Allocate page-table in protection_domain_init() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Let free_pagetable() not rely on domain->pt_root (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Unexport get_dev_data() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Unify format of the printed messages (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove iommu_sva_ops::mm_exit() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [pci] PCI/ATS: Only enable ATS for trusted devices (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Implement iommu_ops->def_domain_type call-back (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Don't reserve implementation defined register space (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: remove set but not used variable 'smmu' (Jerry Snitselaar) [1887546] - [uapi] iommu/virtio: Fix sparse warning (Jerry Snitselaar) [1887546] - [pci] PCI/ATS: Export symbols of PASID functions (Jerry Snitselaar) [1887546] - [iommu] iommu/mediatek: Fix MTK_IOMMU dependencies (Jerry Snitselaar) [1887546] - [iommu] iommu: spapr_tce: Disable compile testing to fix build on book3s_32 config (Jerry Snitselaar) [1887546] - [iommu] iommu: Enable compile testing for some of drivers (Jerry Snitselaar) [1887546] - [x86] x86: Hide the archdata.iommu field behind generic IOMMU_API (Jerry Snitselaar) [1887546] - [iommu] iommu/hyper-v: Constify hyperv_ir_domain_ops (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix compile warning (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: fix a GCC warning (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix pointer cast warnings on 32 bit (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove IOVA handling code from the non-dma_ops path (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove duplicated check in intel_svm_bind_mm() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove redundant IOTLB flush (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add page request draining support (Jerry Snitselaar) [1887546 1847060] - [iommu] iommu/vt-d: Disable non-recoverable fault processing before unbind (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: debugfs: Add support to show inv queue internals (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Multiple descriptors per qi_submit_sync() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Replace intel SVM APIs with generic SVA APIs (Jerry Snitselaar) [1887546 1836578] - [include] iommu/vt-d: Fix compile warning from intel-svm.h (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Report SVA feature with generic flag (Jerry Snitselaar) [1887546 1836578] - [iommu] iommu/vt-d: Add custom allocator for IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Enlightened PASID allocation (Jerry Snitselaar) [1887546 1837167] - [iommu] iommu/vt-d: Add svm/sva invalidate function (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Support flushing more translation cache types (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add bind guest PASID support (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add nested translation helper function (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use a helper function to skip agaw for SL (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move domain helper to header (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove functions that support private domain (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Unify format of the printed messages (Jerry Snitselaar) [1887546] - [iommu] iommu: Introduce guest PASID bind function (Jerry Snitselaar) [1887546] - [iommu] iommu: Introduce cache_invalidate API (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: debugfs: Add support to show page table internals (Jerry Snitselaar) [1887546 1835059] - [iommu] iommu/vt-d: Use iova over first level (Jerry Snitselaar) [1887546 1837160] - [iommu] iommu/vt-d: Update first level super page capability (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Make first level IOVA canonical (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Flush PASID-based iotlb for iova over first level (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Setup pasid entries for iova over first level (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add PASID_FLAG_FL5LP for first-level pasid setup (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add set domain DOMAIN_ATTR_NESTING attr (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Identify domains using first level page table (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Misc macro clean up for SVM (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add build dependency on IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Replace Intel specific PASID allocator with IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/ioasid: Add custom allocators (Jerry Snitselaar) [1887546] - [iommu] iommu: Add I/O ASID allocator (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use right Kconfig option name (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add Kconfig option to enable/disable scalable mode (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Reverse arguments to list_add (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Use accessor functions for iommu private data (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Reject IOMMU page granule larger than PAGE_SIZE (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Fix freeing of incomplete domains (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Build virtio-iommu as module (Jerry Snitselaar) [1887546] - [iommu] iommu: virtio: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Remove unused variable (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Update to most recent specification (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Add event queue (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Add probe request (Jerry Snitselaar) [1887546] - [iommu] iommu: Add virtio-iommu driver (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove duplicate error message (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Fix uninitilized variable warning (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rename IOMMU_QCOM_SYS_CACHE and improve doc (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Restore naming of driver parameter prefix (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Use WRITE_ONCE() when changing validity of an STE (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Improve SMR mask test (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Fix IOVA validation for 32-bit (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Prepare for TTBR1 usage (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise VTCR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rename public #defines under ARM_SMMU_ namespace (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise TCR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Ensure ARM_64_LPAE_S2_TCR_RES1 is unsigned (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Improve attribute handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Support non-coherent stage-2 page tables (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Fix -Wunused-const-variable warning (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Remove useless of_match_ptr() (Jerry Snitselaar) [1887546] - [iommu] drivers/iommu: Initialise module 'owner' field in iommu_device_set_ops() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Update my email address in MODULE_AUTHOR() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Allow building as a module (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Unregister IOMMU and bus ops on device removal (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Allow building as a module (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Support SMMU module probing from the IORT (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Unregister IOMMU and bus ops on device removal (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Prevent forced unbinding of Arm SMMU drivers (Jerry Snitselaar) [1887546] - [iommu] Revert "iommu/arm-smmu: Make arm-smmu explicitly non-modular" (Jerry Snitselaar) [1887546] - [iommu] Revert "iommu/arm-smmu: Make arm-smmu-v3 explicitly non-modular" (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise TTBRn handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise MAIR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify level indexing (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify PGD size handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify start level lookup (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify bounds checks (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise size check (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable: Make selftest gubbins consistently __init (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Avoid pathological RPM behaviour for unmaps (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable: Move some initialization data to .init.rodata (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Report USF more clearly (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove arm_smmu_flush_ops (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Move .tlb_sync method to implementation (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove "leaf" indirection (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove .tlb_inv_range indirection (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm-v7s: Use ias/oas to check the valid iova/pa (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm-v7s: Add paddr_to_iopte and iopte_to_paddr helpers (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Ensure 64-bit I/O accessors are available on 32-bit CPU (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Make private implementation details static (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add context init implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add reset implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add configuration implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Move Secure access quirk to implementation (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: ioremap smmu mmio region before implementation init (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add implementation infrastructure (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rename arm-smmu-regs.h (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract GR0 accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract context bank accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract GR1 accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Get rid of weird "atomic" write (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Split arm_smmu_tlb_inv_range_nosync() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rework cb_base handling (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert context bank registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert GR1 registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert GR0 registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove IOMMU_OF_DECLARE (Jerry Snitselaar) [1887546] - [iommu] iommu: Stop deferring probe at end of initcalls (Jerry Snitselaar) [1887546] - [iommu] iommu: Fix use-after-free in iommu_release_device (Jerry Snitselaar) [1887546] - [dma] dma-mapping: Fix dma_pgprot() for unencrypted coherent pages (Jerry Snitselaar) [1887546] - [x86] x86: Don't let pgprot_modify() change the page encryption bit (Jerry Snitselaar) [1887546] - [x86] x86/PCI: Remove X86_DEV_DMA_OPS (Jerry Snitselaar) [1887546] - [pci] PCI: vmd: Remove dma_map_ops overrides (Jerry Snitselaar) [1887546] - [pci] x86/pci: Clean up usage of X86_DEV_DMA_OPS (Jerry Snitselaar) [1887546] - [x86] x86/Kconfig: Remove the unused X86_DMA_REMAP KConfig symbol (Jerry Snitselaar) [1887546] - [dma] dma-direct: avoid a forward declaration for phys_to_dma (Jerry Snitselaar) [1887546] - [dma] dma-mapping: Add vmap checks to dma_map_single() (Jerry Snitselaar) [1887546] - [x86] x86/platform/uv: Fix UV4 hub revision adjustment (Frank Ramsay) [1908507] - [ata] ahci: Add Intel Rocket Lake PCH-H RAID PCI IDs (Steve Best) [1868308]- [mfd] mfd: intel-lpss: Fix Intel Elkhart Lake LPSS I2C input clock (Steve Best) [1783586] - [mfd] mfd: intel-lpss: Add Intel Elkhart Lake PCH PCI IDs (Steve Best) [1783586] - [i2c] i2c: i801: Add support for Intel Elkhart Lake (Steve Best) [1783586] - [fs] fuse: fix bad inode (Miklos Szeredi) [1906908] - [fs] virtiofs: calculate number of scatter-gather elements accurately (Vivek Goyal) [1783467] - [fs] virtiofs: add logic to free up a memory range (Vivek Goyal) [1783467] - [fs] virtiofs: maintain a list of busy elements (Vivek Goyal) [1783467] - [fs] virtiofs: serialize truncate/punch_hole and dax fault path (Vivek Goyal) [1783467] - [fs] virtiofs: define dax address space operations (Vivek Goyal) [1783467] - [fs] virtiofs: add DAX mmap support (Vivek Goyal) [1783467] - [fs] virtiofs: implement dax read/write operations (Vivek Goyal) [1783467] - [uapi] virtiofs: introduce setupmapping/removemapping commands (Vivek Goyal) [1783467] - [fs] virtiofs: implement FUSE_INIT map_alignment field (Vivek Goyal) [1783467] - [fs] virtiofs: keep a list of free dax memory ranges (Vivek Goyal) [1783467] - [fs] virtiofs: add a mount option to enable dax (Vivek Goyal) [1783467] - [fs] virtiofs: set up virtio_fs dax_device (Vivek Goyal) [1783467] - [fs] virtiofs: get rid of no_mount_options (Vivek Goyal) [1783467] - [fs] virtiofs: provide a helper function for virtqueue initialization (Vivek Goyal) [1783467] - [fs] dax: Create a range version of dax_layout_busy_page() (Vivek Goyal) [1783467] - [dax] dax: Modify bdev_dax_pgoff() to handle NULL bdev (Vivek Goyal) [1783467] - [virtio] virtio: Implement get_shm_region for MMIO transport (Vivek Goyal) [1783467] - [virtio] virtio: Implement get_shm_region for PCI transport (Vivek Goyal) [1783467] - [include] virtio: Add get_shm_region method (Vivek Goyal) [1783467] - [fs] virtiofs: do not use fuse_fill_super_common() for device installation (Vivek Goyal) [1783467] - [uapi] fuse: reserve values for mapping protocol (Vivek Goyal) [1783467] - [fs] virtiofs: Convert virtiofs to use new mount API (Vivek Goyal) [1783467] - [fs] fuse: reject options on reconfigure via fsconfig(2) (Vivek Goyal) [1783467] - [fs] fuse: ignore 'data' argument of mount(..., MS_REMOUNT) (Vivek Goyal) [1783467] - [fs] fuse: use ->reconfigure() instead of ->remount_fs() (Vivek Goyal) [1783467] - [fs] fuse: switch to use errorfc() et.al (Vivek Goyal) [1783467] - [fs] fs_parse: fold fs_parameter_desc/fs_parameter_spec (Vivek Goyal) [1783467] - [fs] fs_parser: remove fs_parameter_description name field (Vivek Goyal) [1783467] - [fs] vfs: subtype handling moved to fuse (Vivek Goyal) [1783467] - [fs] fuse: convert to use the new mount API (Vivek Goyal) [1783467] - [lib] lib/zlib: fix inflating zlib streams on s390 (Philipp Rudo) [1908011] - [scsi] scsi: ibmvfc: Set default timeout to avoid crash during migration (Diego Domingos) [1890710] - [net] Bluetooth: Fix null pointer dereference in hci_event_packet() (Gopal Tiwari) [1921475] - [tools] selftests: fix poll error in udpgro.sh (Hangbin Liu) [1922213] - [net] mptcp: fix length of MP_PRIO suboption (Davide Caratti) [1923156] - [powerpc] powerpc/sstep: Fix array out of bound warning (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/watchpoint: Workaround P10 DD1 issue with VSX-32 byte instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Add testcases for VSX vector paired load/store instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/ppc-opcode: Add encoding macros for VSX vector paired instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Support VSX vector paired storage access instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Cover new VSX instructions under CONFIG_VSX (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Emulate prefixed instructions only when CPU_FTR_ARCH_31 is set (Desnes Augusto Nunes do Rosario) [1908739] - [net] fix setsockopt(SO_REUSEADDR) for MPTCP sockets (Paolo Abeni) [1922500] - [net] net_sched: avoid shift-out-of-bounds in tcindex_set_parms() (Davide Caratti) [1917366] - [net] net_sched: reject silly cell_log in qdisc_get_rtab() (Davide Caratti) [1917366] - [net] sched: prevent invalid Scell_log shift count (Davide Caratti) [1917366] - [net] netem: fix zero division in tabledist (Davide Caratti) [1917366] - [net] protect tcf_block_unbind with block lock (Davide Caratti) [1917366] - [pinctrl] pinctrl: intel: Add Intel Elkhart Lake pin controller support (Steve Best) [1783600] - [fs] dlm: fix invalid cluster name warning (Alexander Aring) [1655771] - [mm] arm64: acpi: Make apei_claim_sea() synchronise with APEI's irq work (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Fix doc warnings in iort.c (Al Stone) [1865698 1851555] - [acpi] ACPI, APEI, Fix error return value in apei_map_generic_address() (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Initialize performance state sysfs attribute (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Support Alder Lake (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Add DMI quirk for Medion Akoya E2228T (Al Stone) [1865698 1851555] - [acpi] ACPI: Fix whitespace inconsistencies (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Drop no longer necessary Acer SW5-012 lid_init_state quirk (Al Stone) [1865698 1851555] - [acpi] ACPI: dock: fix enum-conversion warning (Al Stone) [1865698 1851555] - [acpi] ACPI: utils: remove unreachable breaks (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add missing type casts in GPE register access code (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add ACPI_DPTF Kconfig menu (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Fix participant driver names (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: remove comment regarding string _UID support (Al Stone) [1865698 1851555] - [acpi] ACPI: reboot: Avoid racing after writing to ACPI RESET_REG (Al Stone) [1865698 1851555] - [acpi] ACPI: debug: don't allow debugging when ACPI is disabled (Al Stone) [1865698 1851555] - [dax] ACPI: HMAT: refactor hmat_register_target_device to hmem_register_device (Al Stone) [1865698 1851555] - [acpi] x86/numa: add 'nohmat' option (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200925 Version 20200925 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Remove unnecessary semicolon (Al Stone) [1865698 1851555] - [acpi] ACPICA: Debugger: Add a new command: "ALL " (Al Stone) [1865698 1851555] - [acpi] ACPICA: iASL: Return exceptions for string-to-integer conversions (Al Stone) [1865698 1851555] - [acpi] ACPICA: acpi_help: Update UUID list (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add predefined names found in the SMBus sepcification (Al Stone) [1865698 1851555] - [acpi] ACPICA: Tree-wide: fix various typos and spelling mistakes (Al Stone) [1865698 1851555] - [acpi] ACPICA: Drop the repeated word "an" in a comment (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add support for 64 bit risc-v compilation (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: Flush EC work unconditionally after wakeup (Al Stone) [1865698 1851555] - [acpi] ACPI: button: fix handling lid state changes when input device closed (Al Stone) [1865698 1851555] - [acpi] ACPI: scan: Replace ACPI_DEBUG_PRINT() with pr_debug() (Al Stone) [1865698 1851555] - [acpi] ACPI: memhotplug: Remove 'state' from struct acpi_memory_device (Al Stone) [1865698 1851555] - [acpi] ACPI / extlog: Check for RDMSR failure (Al Stone) [1865698 1851555] - [acpi] node: Add access1 class to represent CPU to memory characteristics (Al Stone) [1865698 1851555] - [acpi] ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 (Al Stone) [1865698 1851555] - [acpi] ACPI: Let ACPI know we support Generic Initiator Affinity Structures (Al Stone) [1865698 1851555] - [acpi] ACPI: Support Generic Initiator only domains (Al Stone) [1865698 1851555] - [acpi] ACPI / NUMA: Add stub function for pxm_to_node() (Al Stone) [1865698 1851555] - [acpi] virtio-mem: Allow to specify an ACPI PXM as nid (Al Stone) [1865698 1851555] - [acpi] ACPI: battery: include linux/power_supply.h (Al Stone) [1865698 1851555] - [acpi] ACPI: wakeup: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Remove leftover ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: tiny-power-button: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: proc: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: Remove unused ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: event: Remove leftover ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: dock: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: debugfs: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: custom_method: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: container: Remove leftover ACPICA debug functionality (Al Stone) [1865698 1851555] - [acpi] ACPI: platform: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: memhotplug: Remove leftover ACPICA debug functionality (Al Stone) [1865698 1851555] - [acpi] ACPI: LPSS: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: cmos_rtc: Remove leftover ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: update kernel-doc line comments (Al Stone) [1865698 1851555] - [acpi] PNP: ACPI: Fix missing-prototypes in acpi_pnp.c (Al Stone) [1865698 1851555] - [acpi] ACPI: configfs: Add missing config_item_put() to fix refcount leak (Al Stone) [1865698 1851555] - [acpi] ACPI: video: use ACPI backlight for HP 635 Notebook (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Clean up header file include statements (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove unnecessary APD_ADDR() macro stub (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove flags from struct apd_device_desc (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Add kerneldoc for properties in struct apd_device_desc (Al Stone) [1865698 1851555] - [acpi] ACPI: Remove side effect of partly creating a node in acpi_get_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: Rename acpi_map_pxm_to_online_node() to pxm_to_online_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: Do not create new NUMA domains from ACPI static tables that are not SRAT (Al Stone) [1865698 1851555] - [acpi] ACPI: Add out of bounds and numa_off protections to pxm_to_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Print more information when acpi_processor_evaluate_cst() fails (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add PCH FIVR participant driver (Al Stone) [1865698 1851555] - [acpi] PCI/ACPI: Add Ampere Altra SOC MCFG quirk (Al Stone) [1865698 1851555] - [acpi] ACPI / APEI: Add a notifier chain for unknown (vendor) CPER records (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Move TPS68470 OpRegion driver to drivers/acpi/pmic/ (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Split out Kconfig and Makefile specific for ACPI PMIC (Al Stone) [1865698 1851555] - [acpi] PCI/ACPI: Tone down missing MCFG message (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Make ACPICA use logical addresses of GPE blocks (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Change the type of acpi_os_map_generic_address() return value (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add support for using logical addresses of GPE blocks (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove the unused inline functions (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Drop the unused @ops of iort_add_device_replay() (Al Stone) [1865698 1851555] - [acpi] ACPI / LPSS: Save Cherry Trail PWM ctx registers only once (at activation) (Al Stone) [1865698 1851555] - [acpi] ACPI / LPSS: Resume Cherry Trail PWM controller in no-irq phase (Al Stone) [1865698 1851555] - [acpi] ACPICA: Introduce special struct type for GPE register addresses (Al Stone) [1865698 1851555] - [acpi] ACPICA: Introduce acpi_hw_gpe_read() and acpi_hw_gpe_write() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Validate GPE blocks at init time (Al Stone) [1865698 1851555] - [acpi] ACPI: Export acpi_get_first_physical_node() to modules (Al Stone) [1865698 1851555] - [kernel] rcu/tree: Export rcu_idle_{enter, exit} to modules (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: fix -Wformat (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Fix build for ARCH_APICTIMER_STOPS_ON_C3 unset (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Take over RCU-idle for C3-BM idle (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Use CPUIDLE_FLAG_TLB_FLUSHED (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Use CPUIDLE_FLAG_TIMER_STOP (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Prevent acpi_release_memory() from returning too early (Al Stone) [1865698 1851555] - [acpi] ACPI: ioremap: avoid redundant rounding to OS page size (Al Stone) [1865698 1851555] - [acpi] ACPI: SoC: APD: Check return value of acpi_dev_get_property() (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Add a fmw property is_raven (Al Stone) [1865698 1851555] - [include] ACPI: APD: Change name from ST to FCH (Al Stone) [1865698 1851555] - [acpi] i2c: designware: Add device HID for Hygon I2C controller (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Add an input ID to acpi_dma_configure() (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove useless PCI bus walk (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_msi_map_rid() PCI agnostic (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_get_device_domain IRQ domain agnostic (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_match_node_callback walk the ACPI namespace for NC (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: remove redundant assignment to variable rc (Al Stone) [1865698 1851555] - [acpi] ACPI: NUMA: Remove the useless 'node >= MAX_NUMNODES' check (Al Stone) [1865698 1851555] - [acpi] ACPI: NUMA: Remove the useless sub table pointer check (Al Stone) [1865698 1851555] - [acpi] ACPI: tables: Remove the duplicated checks for acpi_parse_entries_array() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200717 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Do not increment operation_region reference counts for field units (Al Stone) [1865698 1851555] - [acpi] ACPICA: Replace one-element array with flexible-array (Al Stone) [1865698 1851555] - [acpi] ACPI: acpi_pad: initialize preferred_cpu (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Clean up the removal of unused memory mappings (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Use deferred unmapping in acpi_os_unmap_iomem() (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Use deferred unmapping in acpi_os_unmap_generic_address() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Preserve memory opregion mappings (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Implement deferred unmapping of ACPI memory (Al Stone) [1865698 1851555] - [acpi] ACPI: Use fallthrough pseudo-keyword (Al Stone) [1865698 1851555] - [acpi] acpi: thermal: Don't call thermal_zone_device_is_enabled() (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Fix Tiger Lake ACPI device ID (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add battery participant for TigerLake (Al Stone) [1865698 1851555] - [acpi] ACPI: tables: avoid relocations for table signature array (Al Stone) [1865698 1851555] - [acpi] ACPI: PAD: Eliminate usage of uninitialized_var() macro (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: add newlines when printing module parameters (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: add newline when printing 'ec_event_clearing' module parameter (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: Fix pm_profile_attr type (Al Stone) [1865698 1851555] - [acpi] ACPI: property: use cached name in acpi_fwnode_get_named_child_node() (Al Stone) [1865698 1851555] - [acpi] sched,acpi_pad: Convert to sched_set_fifo*() (Al Stone) [1865698 1851555] - [acpi] ACPI: PM: Avoid using power resources if there are none for D0 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200528 (Al Stone) [1865698 1851555] - [acpi] ACPICA: iASL: add new OperationRegion subtype keyword PlatformRtMechanism (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: Fix reference count leak in acpi_cppc_processor_probe() (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: Fix reference count leak in acpi_sysfs_add_hotplug_profile() (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: use correct trigger type field in _Exx / _Lxx handling (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove the unused __get_pci_rid() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: s2idle: Extend GPE dispatching debug message (Al Stone) [1865698 1851555] - [acpi] ACPI: PM: s2idle: Print type of wakeup debug messages (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add battery participant driver (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Additional sysfs attributes for power participant driver (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Use native backlight on Acer TravelMate 5735Z (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Fix PMCG node single ID mapping handling (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Kick the memory_failure() queue for synchronous errors (Al Stone) [1865698 1851555] - [mm] mm/memory-failure: Add memory_failure_queue_kick() (Al Stone) [1865698 1851555] - [acpi] ACPI: IORT: Add comments for not calling acpi_put_table() (Al Stone) [1865698 1851555] - [acpi] ACPI: GTDT: Put GTDT table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Add i2c address for thermal control (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: add support for _Exx / _Lxx handler methods (Al Stone) [1865698 1851555] - [acpi] ACPI: Delete unused proc filename macros (Al Stone) [1865698 1851555] - [acpi] ACPI: IORT: Add extra message "applying workaround" for off-by-1 issue (Al Stone) [1865698 1851555] - [acpi] ACPI: utils: Add acpi_evaluate_reg() helper (Al Stone) [1865698 1851555] - [acpi] ACPI: debug: Make two functions static (Al Stone) [1865698 1851555] - [acpi] ACPI: sleep: Put the FACS table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: scan: Put SPCR and STAO table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Put the ACPI table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the HEST table for error path (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the error record serialization table for error path (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the error injection table for error path and module exit (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the boot error record table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI: watchdog: Put the watchdog action table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI: LPIT: Put the low power idle table after using it (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200430 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix required parameters for _NIG and _NIH (Al Stone) [1865698 1851555] - [acpi] ACPICA: Dispatcher: add status checks (Al Stone) [1865698 1851555] - [acpi] ACPICA: Disassembler: ignore AE_ALREADY_EXISTS status when parsing create operators (Al Stone) [1865698 1851555] - [acpi] ACPICA: Move acpi_gbl_next_cmd_num definition to acglobal.h (Al Stone) [1865698 1851555] - [acpi] ACPICA: Make acpi_protocol_lengths static (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: work around num_ids ambiguity (Al Stone) [1865698 1851555] - [acpi] Revert "ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map()" (Al Stone) [1865698 1851555] - [pci] PCI: Constify struct pci_ecam_ops (Al Stone) [1865698 1851555] - [acpi] PM: ACPI: Output correct message on target power state (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: Make some symbols static (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: idle: Allow probing on platforms with one ACPI C-state (Al Stone) [1865698 1851555] - [documentation] PM: sleep: core: Rename DPM_FLAG_LEAVE_SUSPENDED (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rename dev_pm_smart_suspend_and_suspended() (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rename dev_pm_may_skip_resume() (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rework the power.may_skip_resume handling (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Do not skip callbacks in the resume phase (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Switch back to async_schedule_dev() (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Fold functions into their callers (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Simplify the SMART_SUSPEND flag handling (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Use built-in RCU list checking (Al Stone) [1865698 1851555] - [base] PM: core: Fix handling of devices deleted during system-wide resume (Al Stone) [1865698 1851555] - [base] PM: sleep: Drop dpm_noirq_begin() and dpm_noirq_end() (Al Stone) [1865698 1851555] - [kernel] PM: sleep: Integrate suspend-to-idle with generig suspend flow (Al Stone) [1865698 1851555] - [base] PM: sleep: Drop dev_pm_skip_next_resume_phases() (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Drop no longer necessary Asus T200TA lid_init_state quirk (Al Stone) [1865698 1851555] - [acpi] ACPI/PCI: pci_link: use extended_irq union member when setting ext-irq shareable (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Fix up fast path check in acpi_ec_add() (Al Stone) [1865698 1851555] - [x86] ACPI, x86/boot: make acpi_nobgrt static (Al Stone) [1865698 1851555] - [x86] acpi/x86: add a kernel parameter to disable ACPI BGRT (Al Stone) [1865698 1851555] - [acpi] x86: ACPI: fix CPU hotplug deadlock (Al Stone) [1865698 1851555] - [x86] acpi/x86: ignore unspecified bit positions in the ACPI global lock field (Al Stone) [1865698 1851555] - [x86] x86/acpi: make "asmlinkage" part first thing in the function definition (Al Stone) [1865698 1851555] - [x86] x86/ACPI/sleep: Move acpi_get_wakeup_address() into sleep.c, remove from (Al Stone) [1865698 1851555] - [x86] x86/ACPI/sleep: Remove an unnecessary include of asm/realmode.h (Al Stone) [1865698 1851555] - [x86] x86/efi: Explicitly include realmode.h to handle RM trampoline quirk (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Use native backlight on Acer Aspire 5783z (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version 20200326 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fixes for acpiExec namespace init file (Al Stone) [1865698 1851555] - [acpi] ACPICA: WSMT: Fix typo, no functional change (Al Stone) [1865698 1851555] - [acpi] ACPICA: utilities: fix sprintf() (Al Stone) [1865698 1851555] - [acpi] ACPICA: acpiexec: remove redeclaration of acpi_gbl_db_opt_no_region_support (Al Stone) [1865698 1851555] - [acpi] ACPICA: Change PlatformCommChannel ASL keyword to PCC (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix IVRS IVHD type 10h reserved field name (Al Stone) [1865698 1851555] - [acpi] ACPICA: Implement IVRS IVHD type 11h parsing (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a typo in a comment field (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200214 (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: clean up acpi_get_psd_map() (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: Use scnprintf() for avoiding potential buffer overflow (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Use scnprintf() for avoiding potential buffer overflow (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Eliminate EC_FLAGS_QUERY_HANDSHAKE (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Do not clear boot_ec_is_ecdt in acpi_ec_add() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Simplify acpi_ec_ecdt_start() and acpi_ec_init() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Consolidate event handler installation code (Al Stone) [1865698 1851555] - [acpi] ACPI: list_for_each_safe() -> list_for_each_entry_safe() (Al Stone) [1865698 1851555] - [acpi] ACPI: video: remove redundant assignments to variable result (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Add missing __acquires/__releases annotations (Al Stone) [1865698 1851555] - [acpi] ACPI / battery: Cleanup Lenovo Ideapad Miix 320 DMI table entry (Al Stone) [1865698 1851555] - [acpi] ACPI / AC: Cleanup DMI quirk table (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Use fast path in acpi_ec_add() for DSDT boot EC (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Simplify acpi_ec_add() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Drop AE_NOT_FOUND special case from ec_install_handlers() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Avoid passing redundant argument to functions (Al Stone) [1865698 1851555] - [include] ACPI: NUMA: Up-level "map to online node" functionality (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a couple of typos (Al Stone) [1865698 1851555] - [acpi] ACPICA: use acpi_size instead of u32 for prefix_path_length (Al Stone) [1865698 1851555] - [acpi] ACPICA: cast length arguement to acpi_ns_build_normalized_path() as u32 (Al Stone) [1865698 1851555] - [acpi] ACPICA: cast the result of the pointer difference to u32 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Table Manager: Update comments in a function header (Al Stone) [1865698 1851555] - [acpi] ACPICA: Enable sleep button on ACPI legacy wake (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a comment "enable" fixed events -> "disable" all fixed events (Al Stone) [1865698 1851555] - [acpi] ACPICA: ASL-ASL+ converter: make root file a parameter for cv_init_file_tree (Al Stone) [1865698 1851555] - [acpi] ACPICA: ASL-ASL+ converter: remove function parameters from cv_init_file_tree() (Al Stone) [1865698 1851555] - [acpi] ACPI: Add new tiny-power-button driver to directly signal init (Al Stone) [1865698 1851555] - [acpi] ACPI: button: move HIDs to acpi/button.h (Al Stone) [1865698 1851555] - [acpi] ACPI: treewide: remove redundant IS_ERR() before error code check (Al Stone) [1865698 1851555] - [dma] dmaengine: idma64: Use actual device for DMA transfers (Steve Best) [1784118] - [platform] platform/x86: dell-smbios-wmi: Correct a memory leak (David Arcari) [1898516] - [x86] x86/{mce,mm}: Unmap the entire page if the whole page is affected and poisoned (Aristeu Rozanski) [1850800]- [x86] kvm: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: use kvm_complete_insn_gp in emulating RDMSR/WRMSR (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: remove bogus #GP injection (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: de-allocate svm_cpu_data for all cpus in svm_cpu_uninit() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Fix split-irqchip vs interrupt injection window request (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: fix error return code in svm_create_vcpu() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Fix offset computation bug in __sev_dbg_decrypt() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use cpuid to determine max gfn (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: mmu: Fix SPTE encoding of MMIO generation upper half (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nvmx: Sync unsync'd vmcs02 state to vmcs12 on migration (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: tracing: Fix unmatched kvm_entry and kvm_exit events (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: documentation: Update description of KVM_{GET, CLEAR}_DIRTY_LOG (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: get smi pending status correctly (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in intel_arch_events[] (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Add more protection against undefined behavior in rsvd_bits() (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: Forbid the use of tagged userspace addresses for memslots (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: allow KVM_REQ_GET_NESTED_STATE_PAGES outside guest mode for VMX (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: cancel KVM_REQ_GET_NESTED_STATE_PAGES on nested vmexit (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: mark vmcb as dirty when forcingly leaving the guest mode (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: correctly restore nested_run_pending on migration (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Clarify TDP MMU page list invariants (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Ensure TDP MMU roots are freed after yield (Paolo Bonzini) [1904054 1906893 1904128] - [security] apparmor: remove duplicate macro list_entry_is_head() (Paolo Bonzini) [1904054 1906893 1904128] - [kernel] linux/list.h: add a macro to test if entry is pointing to the head (Paolo Bonzini) [1904054 1906893 1904128] - [virt] kvm: check tlbs_dirty directly (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: change in pv_eoi_get_pending() to make code more readable (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: fix shift out of bounds reported by UBSAN (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Optimize not-present/MMIO SPTE check in get_mmio_spte() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use raw level to index into MMIO walks' sptes array (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Get root level from walkers when retrieving MMIO SPTE (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use -1 to flag an undefined spte in get_mmio_spte() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Remove the call to sev_platform_status() during setup (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Don't flush cache if hardware enforces cache coherency across encryption domains (Paolo Bonzini) [1904054 1906893 1904128] - [x86] cpu: Add hardware-enforced cache coherency as a CPUID feature (Paolo Bonzini) [1904054 1906893 1904128] - [x86] Remove X86_FEATURE_MFENCE_RDTSC (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm/vmx: Use TEST REG, REG instead of CMP $0, REG in vmenter.S (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: ignore SIPIs that are received while not in wait-for-sipi state (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: set fixed bits by hand (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Add TDP MMU SPTE changed trace point (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Add existing trace points to TDP MMU (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: check CR4 changes against vcpu->arch (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: adjust SEV for commit 7e8e6eed75e (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Move asid to vcpu_svm (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: remove unused macro HV_CLOCK_SIZE (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Sink cpuid update into vendor-specific set_cr4 functions (Paolo Bonzini) [1904054 1906893 1904128] - [virt] kvm: remove kvm_clear_guest_page (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Don't track dirty for KVM_SET_[TSS_ADDR|IDENTITY_MAP_ADDR] (Paolo Bonzini) [1904054 1906893 1904128] - [tools] kvm: selftests: test KVM_GET_SUPPORTED_HV_CPUID as a system ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: hyper-v: allow KVM_GET_SUPPORTED_HV_CPUID as a system ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: emulate wait-for-SIPI and SIPI-VMExit (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: fix apic_accept_events vs check_nested_events (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Return bool instead of int for CR4 and SREGS validity checks (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Move vendor CR4 validity check to dedicated kvm_x86_ops hook (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Drop VMXE check from svm_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: vmx: Drop explicit 'nested' check from vmx_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: vmx: Drop guest CPUID check for VMXE in vmx_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [netdrv] net/mlx5e: Update max_opened_tc also when channels are closed (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Fix leak upon failure of rule creation (Alaa Hleihel) [1918379 1914766] - [netdrv] net/mlx5: Fix function calculation for page trees (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Allow creating all QPs even when non RDMA profile is used (Alaa Hleihel) [1918379] - [netdrv] mlx5: Mark BlueField-3 as unsupported device (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Enable host PF HCA after eswitch is initialized (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: Rename peer_pf to host_pf (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: Make API mlx5_core_is_ecpf accept const pointer (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: simplify the return expression of mlx5_ec_init() (Alaa Hleihel) [1918379] - [infiniband] IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Use strict get/set operations for obj_id (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation (Alaa Hleihel) [1918379] - [include] net/mlx5: Expose ifc bits for query modify header (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: CT: Fix incorrect removal of tuple_nat_node from nat rhashtable (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Revert parameters on errors when changing MTU and LRO state without reset (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Revert parameters on errors when changing trust state without reset (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Correctly handle changing the number of queues when the interface is down (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Fix CT rule + encap slow path offload and deletion (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Maintain separate page trees for ECPF and PF functions (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Fix IPSEC stats (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Reduce tc unsupported key print level (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: free page before return (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: E-switch, Fix rate calculation for overflow (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Fix memory leak on flow table creation error flow (Alaa Hleihel) [1918379] - [infiniband] Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Fix wrong free of blue flame register on error (Alaa Hleihel) [1918379] - [infiniband] IB/mlx5: Fix error unwinding when set_has_smi_cap fails (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Add missing capability check for uplink follow (Alaa Hleihel) [1918379] - [netdrv] iavf: Use kzalloc for allocating only one thing (Stefan Assmann) [1838735] - [netdrv] iavf: fix double-release of rtnl_lock (Stefan Assmann) [1838735] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Stefan Assmann) [1838735] - [netdrv] iavf: Fix updating statistics (Stefan Assmann) [1838735] - [netdrv] iavf: fix error return code in iavf_init_get_resources() (Stefan Assmann) [1838735] - [netdrv] ethernet/intel: Convert fallthrough code comments (Stefan Assmann) [1838735] - [netdrv] net/intel: remove driver versions from Intel drivers (Stefan Assmann) [1838735] - [net] Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (Gopal Tiwari) [1916057] - [fs] fs/fs-writeback.c: fix kernel-doc warning (Waiman Long) [1918047] - [include] memcg: only record foreign writebacks with dirty pages when memcg is not disabled (Waiman Long) [1918047] - [trace] writeback: don't access page->mapping directly in track_foreign_dirty TP (Waiman Long) [1918047] - [fs] writeback: add tracepoints for cgroup foreign writebacks (Waiman Long) [1918047] - [mm] writeback, memcg: Implement foreign dirty flushing (Waiman Long) [1918047] - [mm] mm: remove the account_page_dirtied export (Waiman Long) [1918047] - [fs] writeback, memcg: Implement cgroup_writeback_by_id() (Waiman Long) [1918047] - [mm] writeback: Separate out wb_get_lookup() from wb_get_create() (Waiman Long) [1918047] - [include] bdi: Add bdi->id (Waiman Long) [1918047] - [mm] mm/page-writeback: introduce tracepoint for wait_on_page_writeback() (Waiman Long) [1918047] - [fs] kernfs: fix barrier usage in __kernfs_new_node() (Waiman Long) [1918047] - [fs] kernfs: Allocating memory for kernfs_iattrs with kmem_cache (Waiman Long) [1918047] - [fs] fs: Convert writeback to XArray (Waiman Long) [1918047] - [mm] mm: Convert page-writeback to XArray (Waiman Long) [1918047] - [mm] mm/filemap: add missing mem_cgroup_uncharge() to __add_to_page_cache_locked() (Waiman Long) [1917681] - [mm] mm/slub: fix panic in slab_alloc_node() (Oleksandr Natalenko) [1921056] - [net] xfrm: interface: fix the priorities for ipip and ipv6 tunnels (Sabrina Dubroca) [1923269] - [net] netfilter: ipset: fix shift-out-of-bounds in htable_bits() (Antoine Tenart) [1918684] - [net] tcp: refine tcp_pacing_delay() for very low pacing rates (Antoine Tenart) [1905897] - [net] ensure correct skb->tstamp in various fragmenters (Antoine Tenart) [1905897] - [net] tcp: repaired skbs must init their tso_segs (Antoine Tenart) [1905897] - [net] tcp: address problems caused by EDT misshaps (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: ensure maxrate fq parameter applies to EDT flows (Antoine Tenart) [1905897] - [net] tcp: refine tcp_tso_should_defer() after EDT adoption (Antoine Tenart) [1905897] - [net] tcp_bbr: update comments to reflect pacing_margin_percent (Antoine Tenart) [1905897] - [net] tcp: add tcp_reset_xmit_timer() helper (Antoine Tenart) [1905897] - [net] tcp: fix TCP_REPAIR xmit queue setup (Antoine Tenart) [1905897] - [net] tcp_bbr: adjust TCP BBR for departure time pacing (Antoine Tenart) [1905897] - [net] tcp_bbr: fix typo in bbr_pacing_margin_percent (Antoine Tenart) [1905897] - [net] tcp: optimize tcp internal pacing (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: no longer use skb_is_tcp_pure_ack() (Antoine Tenart) [1905897] - [net] tcp: mitigate scheduling jitter in EDT pacing model (Antoine Tenart) [1905897] - [net] tcp: do not change tcp_wstamp_ns in tcp_mstamp_refresh (Antoine Tenart) [1905897] - [net] tcp/fq: move back to CLOCK_MONOTONIC (Antoine Tenart) [1905897] - [net] tcp: switch tcp_internal_pacing() to tcp_wstamp_ns (Antoine Tenart) [1905897] - [net] tcp: switch tcp and sch_fq to new earliest departure time model (Antoine Tenart) [1905897] - [net] tcp: switch internal pacing timer to CLOCK_TAI (Antoine Tenart) [1905897] - [net] tcp: provide earliest departure time in skb->tstamp (Antoine Tenart) [1905897] - [net] tcp: add tcp_wstamp_ns socket field (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: switch to CLOCK_TAI (Antoine Tenart) [1905897] - [net] tcp: introduce tcp_skb_timestamp_us() helper (Antoine Tenart) [1905897] - [net] tcp: switch tcp_clock_ns() to CLOCK_TAI base (Antoine Tenart) [1905897] - [drm] drm/nouveau/disp/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/dmaobj/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/gpio/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/bar/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/mmu/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/timer/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/fb/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/imem/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/privring/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/mc/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/devinit/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/bios/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/pci/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/core: recognise GA10 (Ben Skeggs) [1916583] - [drm] drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 (Ben Skeggs) [1916583] - [drm] drm/nouveau/mmu: fix vram heap sizing (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gk110-: disable hw-initiated dpcd reads (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gk110: split out from i2c/gk104 (Ben Skeggs) [1916583] - [drm] drm/nouveau/privring: ack interrupts the same way as RM (Ben Skeggs) [1916583] - [drm] drm/nouveau/bios: fix issue shadowing expansion ROMs (Ben Skeggs) [1916583] - [netdrv] net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: Fix two double free cases (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: ethtool, Fix restriction of autoneg with 56G (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: In skb build skip setting mark in switchdev mode (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: E-Switch, fix changing vf VLANID (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: Fix SWP offsets when vlan inserted by driver (Alaa Hleihel) [1899457 1819580] - [netdrv] net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: Check if lag is supported before creating one (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Fix MR cache memory leak (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: Fix passing zero to 'PTR_ERR' (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: remove unnecessary memset (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Assign dev to DM MR (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Remove mlx5_ib_mr->npages (Alaa Hleihel) [1899457] - [documentation] scsi: fc: Update documentation of sysfs nodes for FPIN stats (Ewan Milne) [1859967] - [scsi] scsi: fc: Add mechanism to update FPIN signal statistics (Ewan Milne) [1859967] - [scsi] scsi: fc: Parse FPIN packets and update statistics (Ewan Milne) [1859967] - [scsi] scsi: fc: Add FPIN statistics to fc_host and fc_rport objects (Ewan Milne) [1859967] - [uapi] scsi: fc: Update formal FPIN descriptor definitions (Ewan Milne) [1859967] - [scsi] scsi: smartpqi: Update version to 1.2.16-012 (Don Brace) [1890727 1889844] - [scsi] scsi: smartpqi: Correct pqi_sas_smp_handler busy condition (Don Brace) [1890727 1889844] - [scsi] scsi: smartpqi: Correct driver removal with HBA disks (Don Brace) [1890727 1889844] - [target] scsi: target: Fix XCOPY NAA identifier lookup (Maurizio Lombardi) [1900463] {CVE-2020-28374} - [x86] perf/x86/intel/uncore: Add Comet Lake support (Michael Petlan) [1873271]- [net] bridge: Fix a warning when del bridge sysfs (Davide Caratti) [1917518] - [net] bridge: Avoid infinite loop when suppressing NS messages with invalid options (Davide Caratti) [1917518] - [net] bridge: fix stale eth hdr pointer in br_dev_xmit (Davide Caratti) [1917518] - [net] SUNRPC: Handle 0 length opaque XDR object data properly (Dave Wysochanski) [1906400] - [net] SUNRPC: Move simple_get_bytes and simple_get_netobj into private header (Dave Wysochanski) [1906400] - [block] nbd: make the config put is called before the notifying the waiter (Ming Lei) [1743857] - [block] nbd: restore default timeout when setting it to zero (Ming Lei) [1743857] - [kernel] rcu/tree: Defer kvfree_rcu() allocation to a clean context (Waiman Long) [1922453] - [kernel] cgroup: Fix memory leak when parsing multiple source parameters (Waiman Long) [1922453] - [kernel] cpuset: fix race between hotplug work and later CPU offline (Waiman Long) [1922453] - [kernel] cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in ptrace_stop() (Waiman Long) [1922453] - [kernel] cgroup: freezer: fix frozen state inheritance (Waiman Long) [1922453] - [kernel] locking/lockdep: Cure noinstr fail (Waiman Long) [1922453] - [kernel] tick/nohz: Narrow down noise while setting current task's tick dependency (Waiman Long) [1922453] - [fs] fs: Kill DCACHE_DONTCACHE dentry even if DCACHE_REFERENCED is set (Eric Sandeen) [1921903] - [fs] fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode() (Eric Sandeen) [1921903] - [netdrv] ice: update dev_addr in ice_set_mac_address even if HW filter exists (Jonathan Toppins) [1879318] - [tools] libbpf: Fix uninitialized variable in btf_parse_type_sec (Jiri Olsa) [1922197] - [tools] libbpf: Support BTF loading and raw data output in both endianness (Jiri Olsa) [1922197] - [tools] selftests/bpf: Test BTF writing APIs (Jiri Olsa) [1922197] - [tools] libbpf: Add btf__str_by_offset() as a more generic variant of name_by_offset (Jiri Olsa) [1922197] - [tools] libbpf: Add BTF writing APIs (Jiri Olsa) [1922197] - [tools] libbpf: Add btf__new_empty() to create an empty BTF object (Jiri Olsa) [1922197] - [tools] libbpf: Allow modification of BTF and add btf__add_str API (Jiri Olsa) [1922197] - [tools] libbpf: Extract generic string hashing function for reuse (Jiri Olsa) [1922197] - [tools] libbpf: Generalize common logic for managing dynamically-sized arrays (Jiri Olsa) [1922197] - [tools] libbpf: Remove assumption of single contiguous memory for BTF data (Jiri Olsa) [1922197] - [tools] libbpf: Refactor internals of BTF type index (Jiri Olsa) [1922197] - [tools] libbpf: Remove any use of reallocarray() in libbpf (Jiri Olsa) [1922197] - [tools] libbpf: Clean up and improve CO-RE reloc logging (Jiri Olsa) [1922197] - [tools] libbpf: Improve error logging for mismatched BTF kind cases (Jiri Olsa) [1922197] - [scsi] scsi: qla2xxx: Fix mailbox Ch erroneous error (Nilesh Javali) [1894578] - [sound] ALSA: ASoC: Intel: tgl: remove sof_fw_filename set for tgl_3_in_1_default (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: allow soundwire use desc->default_fw_filename (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E (Jaroslav Kysela) [1783462] - [sound] ALSA: hda: intel-dsp-config: add PCI id for TGL-H (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Properly unregister DAI on removal (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Add missing size check (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Fix wrong size check (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Simplify remove_widget function (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove empty functions (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Change allocations to resource managed (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Unify all device references (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove unused functions from topology API (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98926: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98925: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98926: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98925: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max9867: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: codecs: max98373-sdw: align regmap use with other codecs (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98371: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98390: Fix error codes in max98390_dsm_init() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98371: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98095: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98373: don't access volatile registers in bias level off (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98090: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: pcm: DRAIN support reactivation (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt711: mutex between calibration and power state changes (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt711: remove warnings (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt5660: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: codecs: rt*.c: remove useless pointer cast (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015p: delay 300ms after SDB pulling high for calibration (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015p: move SDB control from trigger to DAPM (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: check the return value of regmap_read during i2c probe (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: modification for calibration to get better performance (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: support TDM slot configuration (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: qcom: Fix build failure when slimbus is module (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: master: use pm_runtime_set_active() on add (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: intel: fix another unused-function warning (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: only clear valid DPN interrupts (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: only clear valid DP0 interrupts (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: registers: add definitions for clearable interrupt fields (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: reset slave_notify status at each loop (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: add comments to explain interrupt loop filter (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: SDCA: detect sdca_cascade interrupt (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: update TDM slot_width (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for tgl_rt1011_rt5682 (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: add dpcm_capture flag for speaker_smart_amp (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add quirk for Dooly (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for cml_rt1015_rt5682 (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: sof_sdw: add quirk for new TigerLake-SDCA device (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: add hw specific PCM constraints (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: loader: do not warn about unknown firmware headers (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove multistep topology loading (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: sof-audio: remove goto used for force-nocodec support (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ops: modify the signature of stall op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: topology: remove const in sizeof() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: use inclusive language for bclk and fsync (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: use inclusive language for bclk and fsync (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ops: add parse_platform_ext_manifest() op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: relax PCM period and buffer size constraints (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: nocodec: modify DAI link definitions (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: trace: Add runtime trace filtering mechanism (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Add `memory_info` file to debugfs (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Change section comment for SOF_IPC_TEST_ (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Improve code alignment in header.h (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: IPC: fix implicit type overflow (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ext_manifest: Parse firmware config dictionary (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: fix the condition passed to sof_dev_dbg_or_err (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: modify the SOF_DBG flags (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated status dump (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ext_manifest: parse cavs extra config data elem (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: define parse_platform_ext_manifest op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: control: override volume info callback (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: control: remove const in sizeof() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Add .prepare/.complete callbacks (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Activate runtime PM with SOF OF device (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: add missing ret=0 at soc_pcm_open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: ignore un-needed mutex_unlock() case on soc_pcm_open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: remove unneeded dev_err() for snd_soc_component_module/open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: remove unneeded dev_err() for snd_soc_dai_startup() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: add soc_pcm_clean() and call it from soc_pcm_open/close() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-link: add mark for snd_soc_link_startup/shutdown() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-dai: add mark for snd_soc_dai_startup/shutdown() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-component: add mark for snd_soc_pcm_component_pm_runtime_get/put() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-component: add mark for soc_pcm_components_open/close() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: KMB: Fix S24_LE configuration (Jaroslav Kysela) [1783462] - [sound] ALSA: ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled clock (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt5682: change SAR voltage threshold (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: increase the time to detect BCLK (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: add delay to fix pop noise from speaker (Jaroslav Kysela) [1783462] - [powerpc] powerpc/tm: Avoid machine crash on rt_sigreturn() (Gustavo Duarte) [1860550] - [net] udp: Prevent reuseport_select_sock from reading uninitialized socks (Guillaume Nault) [1917953] - [net] flow_offload: Fix memory leak for indirect flow block (Guillaume Nault) [1917953] - [net] sock: set sk_err to ee_errno on dequeue from errq (Guillaume Nault) [1917953] - [net] devlink: Make sure devlink instance and port are in same net namespace (Guillaume Nault) [1917953] - [net] devlink: Hold rtnl lock while reading netdev attributes (Guillaume Nault) [1917953] - [net] devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill() (Guillaume Nault) [1917953] - [net] tipc: fix NULL deref in tipc_link_xmit() (Xin Long) [1918657] - [net] tipc: prevent possible null deref of link (Xin Long) [1918657] - [net] tipc: fix incompatible mtu of transmission (Xin Long) [1918657] - [net] tipc: fix memory leak in tipc_topsrv_start() (Xin Long) [1918657] - [net] tipc: add stricter control of reserved service types (Xin Long) [1918657] - [tools] selftests/bpf/test_offload.py: Filter bpftool internal map when counting maps (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Reset ethtool features after failed setting (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Fix expected case of extack messages (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Only check verifier log on verification fails (Jiri Benc) [1882709] - [netdrv] netdevsim: Add debugfs toggle to reject BPF programs in verifier (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Remove check for program load flags match (Jiri Benc) [1882709] - [net] xdp: Remove the xdp_attachment_flags_ok() callback (Jiri Benc) [1882709] - [net] net, xsk: Avoid taking multiple skbuff references (Jiri Benc) [1882709] - [net] increment xmit_recursion level in dev_direct_xmit() (Jiri Benc) [1882709] - [kernel] usermodehelper: reset umask to default before executing user process (Jiri Benc) [1882709] - [net] xsk: Do not discard packet when NETDEV_TX_BUSY (Jiri Benc) [1882709] - [net] xsk: Fix number of pinned pages/umem size discrepancy (Jiri Benc) [1882709] - [include] netdevice.h: fix xdp_state kernel-doc warning (Jiri Benc) [1882709] - [net] bpf: xdp: Fix XDP mode when no mode flags specified (Jiri Benc) [1882709] - [net] bpf: Fix XDP FD-based attach/detach logic around XDP_FLAGS_UPDATE_IF_NOEXIST (Jiri Benc) [1882709] - [kernel] add a kernel_wait helper (Jiri Benc) [1882709] - [tools] selftests/bpf: Add link detach tests for cgroup, netns, and xdp bpf_links (Jiri Benc) [1882709] - [net] bpf: Add support for forced LINK_DETACH command (Jiri Benc) [1882709] - [kernel] bpf: Fix build without CONFIG_NET when using BPF XDP link (Jiri Benc) [1882709] - [net] xdp: Prevent kernel-infoleak in xsk_getsockopt() (Jiri Benc) [1882709] - [net] udp, bpf: Ignore connections in reuseport group after BPF sk lookup (Jiri Benc) [1882709] - [net] Revert "net: optimize the sockptr_t for unified kernel/user address spaces" (Jiri Benc) [1882709] - [net] improve the user pointer check in init_user_sockptr (Jiri Benc) [1882709] - [include] net: remove sockptr_advance (Jiri Benc) [1882709] - [include] net: make sockptr_is_null strict aliasing safe (Jiri Benc) [1882709] - [net] optimize the sockptr_t for unified kernel/user address spaces (Jiri Benc) [1882709] - [net] bpfilter: switch bpfilter_ip_set_sockopt to sockptr_t (Jiri Benc) [1882709] - [net] switch copy_bpf_fprog_from_user to sockptr_t (Jiri Benc) [1882709] - [include] net: add a new sockptr_t type (Jiri Benc) [1882709] - [net] bpfilter: reject kernel addresses (Jiri Benc) [1882709] - [net] bpfilter: split __bpfilter_process_sockopt (Jiri Benc) [1882709] - [net] bpfilter: fix up a sparse annotation (Jiri Benc) [1882709] - [net] udp: Don't discard reuseport selection when group has connections (Jiri Benc) [1882709] - [net] bpf, xdp: Remove XDP_QUERY_PROG and XDP_QUERY_PROG_HW XDP commands (Jiri Benc) [1882709] - [tools] selftests/bpf: Add BPF XDP link selftests (Jiri Benc) [1882709] - [net] bpf: Implement BPF XDP link-specific introspection APIs (Jiri Benc) [1882709] - [net] bpf, xdp: Implement LINK_UPDATE for BPF XDP link (Jiri Benc) [1882709] - [net] bpf, xdp: Add bpf_link-based XDP attachment API (Jiri Benc) [1882709] - [net] bpf, xdp: Extract common XDP program attachment logic (Jiri Benc) [1882709] - [net] bpf, xdp: Maintain info on attached XDP BPF programs in net_device (Jiri Benc) [1882709] - [kernel] bpf, netns: Fix build without CONFIG_INET (Jiri Benc) [1882709] - [net] udp6: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] udp6: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] udp: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] udp: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] ipv6: remove unused arg exact_dif in compute_score (Jiri Benc) [1882709] - [net] ipv4: remove unused arg exact_dif in compute_score (Jiri Benc) [1882709] - [net] udp: Remove unused variable/function (exact_dif) (Jiri Benc) [1882709] - [net] udp: Remove unused parameter (exact_dif) (Jiri Benc) [1882709] - [net] udp: only choose unbound UDP socket for multicast when not in a VRF (Jiri Benc) [1882709] - [net] ensure unbound datagram socket to be chosen when not in a VRF (Jiri Benc) [1882709] - [net] ensure unbound stream socket to be chosen when not in a VRF (Jiri Benc) [1882709] - [net] allow binding socket in a VRF when there's an unbound socket (Jiri Benc) [1882709] - [net] udp6: drop unneeded likely() call around IS_ERR() (Jiri Benc) [1882709] - [net] udp: drop unneeded likely() call around IS_ERR() (Jiri Benc) [1882709] - [net] inet6: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] inet6: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] inet: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] inet: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] simplify cBPF setsockopt compat handling (Jiri Benc) [1882709] - [net] explicitly include in net/core/sock.c (Jiri Benc) [1882709] - [include] compat: provide compat_ptr() on all architectures (Jiri Benc) [1882709] - [net] socket: move compat timeout handling into sock.c (Jiri Benc) [1882709] - [include] xdp: introduce xdp_get_shared_info_from_{buff, frame} utility routines (Jiri Benc) [1882709] - [net] xsk: Add xdp statistics to xsk_diag (Jiri Benc) [1882709] - [net] xsk: Add new statistics (Jiri Benc) [1882709] - [net] bpfilter: Initialize pos variable (Jiri Benc) [1882709] - [kernel] umd: Stop using split_argv (Jiri Benc) [1882709] - [kernel] umd: Remove exit_umh (Jiri Benc) [1882709] - [net] bpfilter: Take advantage of the facilities of struct pid (Jiri Benc) [1882709] - [kernel] exit: Factor thread_group_exited out of pidfd_poll (Jiri Benc) [1882709] - [kernel] umd: Track user space drivers with struct pid (Jiri Benc) [1882709] - [net] bpfilter: Move bpfilter_umh back into init data (Jiri Benc) [1882709] - [fs] exec: Remove do_execve_file (Jiri Benc) [1882709] - [kernel] umh: Stop calling do_execve_file (Jiri Benc) [1882709] - [kernel] umd: Transform fork_usermode_blob into fork_usermode_driver (Jiri Benc) [1882709] - [kernel] umd: Rename umd_info.cmdline umd_info.driver_name (Jiri Benc) [1882709] - [kernel] umd: For clarity rename umh_info umd_info (Jiri Benc) [1882709] - [kernel] umh: Separate the user mode driver and the user mode helper support (Jiri Benc) [1882709] - [kernel] umh: Move setting PF_UMH into umh_pipe_setup (Jiri Benc) [1882709] - [kernel] umh: Remove call_usermodehelper_setup_file. (Jiri Benc) [1882709] - [kernel] umh: Rename the user mode driver helpers for clarity (Jiri Benc) [1882709] - [kernel] umh: Capture the pid in umh_pipe_setup (Jiri Benc) [1882709] - [net] bpf: Add SO_KEEPALIVE and related options to bpf_setsockopt (Jiri Benc) [1882709] - [net] tcp: Expose tcp_sock_set_keepidle_locked (Jiri Benc) [1882709] - [net] tcp: add tcp_sock_set_keepidle (Jiri Benc) [1882709] - [net] sock: Move sock_valbool_flag to header (Jiri Benc) [1882709] - [net] spread "enum sock_flags" (Jiri Benc) [1882709] - [tools] bpf: Use local copy of headers including uapi/linux/filter.h (Jiri Benc) [1882709] - [net] bpfilter: fix iptables failure if bpfilter_umh is disabled (Jiri Benc) [1882709] - [s390] s390/crypto: add arch_get_random_long() support (Vladis Dronov) [1904274] - [net] net/smc: Add support for obtaining SMCR device list (Philipp Rudo) [1868684] - [net] net/smc: Add support for obtaining SMCD device list (Philipp Rudo) [1868684] - [net] net/smc: Add SMC-D Linkgroup diagnostic support (Philipp Rudo) [1868684] - [net] net/smc: Introduce SMCR get link command (Philipp Rudo) [1868684] - [net] net/smc: Introduce SMCR get linkgroup command (Philipp Rudo) [1868684] - [net] net/smc: Add support for obtaining system information (Philipp Rudo) [1868684] - [net] net/smc: Introduce generic netlink interface for diagnostic purposes (Philipp Rudo) [1868684] - [net] net/smc: Refactor smc ism v2 capability handling (Philipp Rudo) [1868684] - [net] net/smc: Add diagnostic information to link structure (Philipp Rudo) [1868684] - [net] net/smc: Add diagnostic information to smc ib-device (Philipp Rudo) [1868684] - [net] net/smc: Add link counters for IB device ports (Philipp Rudo) [1868684] - [net] net/smc: Add connection counters for links (Philipp Rudo) [1868684] - [net] net/smc: Use active link of the connection (Philipp Rudo) [1868684] - [net] net/smc: use helper smc_conn_abort() in listen processing (Philipp Rudo) [1868684] - [net] sched: sch_frag: add generic packet fragment support. (Marcelo Leitner) [1909262] - [net] sched: act_mirred: refactor the handle of xmit (Marcelo Leitner) [1909262] - [net] sched: fix miss init the mru in qdisc_skb_cb (Marcelo Leitner) [1909262] - [net] openvswitch: using ip6_fragment in ipv6_stub (Marcelo Leitner) [1909262] - [net] ipv6: add ipv6_fragment hook in ipv6_stub (Marcelo Leitner) [1909262] - [x86] x86/resctrl: Fix spelling in user-visible warning messages (Puneet Sethi) [1717078] - [x86] x86/resctrl: Enable user to view thread or core throttling mode (Puneet Sethi) [1717078] - [x86] x86/resctrl: Enumerate per-thread MBA controls (Puneet Sethi) [1717078] - [x86] cacheinfo: Move resctrl's get_cache_id() to the cacheinfo header file (Puneet Sethi) [1717078] - [x86] x86/resctrl: Add struct rdt_cache::arch_has_{sparse, empty}_bitmaps (Puneet Sethi) [1717078] - [x86] x86/resctrl: Merge AMD/Intel parse_bw() calls (Puneet Sethi) [1717078] - [x86] x86/resctrl: Add struct rdt_membw::arch_needs_linear to explain AMD/Intel MBA difference (Puneet Sethi) [1717078] - [x86] x86/resctrl: Use is_closid_match() in more places (Puneet Sethi) [1717078] - [x86] x86/resctrl: Use container_of() in delayed_work handlers (Puneet Sethi) [1717078] - [x86] x86/resctrl: Fix stale comment (Puneet Sethi) [1717078] - [x86] x86/resctrl: Remove struct rdt_membw::max_delay (Puneet Sethi) [1717078] - [x86] x86/resctrl: Remove unused struct mbm_state::chunks_bw (Puneet Sethi) [1717078] - [x86] x86/resctrl: Fix memory bandwidth counter width for AMD (Puneet Sethi) [1845633 1717078] - [documentation] Documentation: x86: fix some typos (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Clarify MBA takes MB as referring to mba_sc (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Remove cdpl2 unspported statement and fix capitalisation (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Contiguous cbm isn't all X86 (Puneet Sethi) [1717078] - [documentation] Documentation: x86: convert resctrl_ui.txt to reST (Puneet Sethi) [1717078] - [kernel] livepatch: Make klp_apply_object_relocs static (Yannick Cote) [1866433] - [kernel] livepatch: Prevent module-specific KLP rela sections from referencing vmlinux symbols (Yannick Cote) [1866433] - [x86] livepatch: Remove .klp.arch (Yannick Cote) [1866433] - [kernel] livepatch: Apply vmlinux-specific KLP relocations early (Yannick Cote) [1866433] - [kernel] livepatch: Disallow vmlinux.ko (Yannick Cote) [1866433]- [sound] ALSA: hda: Add Cometlake-R PCI ID (Jaroslav Kysela) [1915650] - [fs] xfs: don't drain buffer lru on freeze and read-only remount (Brian Foster) [1903387] - [fs] xfs: rename xfs_wait_buftarg() to xfs_buftarg_drain() (Brian Foster) [1903387] - [net] mptcp: implement delegated actions (Paolo Abeni) [1892375] - [net] mptcp: schedule work for better snd subflow selection (Paolo Abeni) [1892375] - [net] mptcp: do not queue excessive data on subflows (Paolo Abeni) [1892375] - [net] mptcp: re-enable sndbuf autotune (Paolo Abeni) [1892375] - [net] mptcp: always graft subflow socket to parent (Paolo Abeni) [1892375] - [include] lockdep: Introduce in_softirq lockdep assert (Paolo Abeni) [1892375] - [net] selinux: handle MPTCP consistently with TCP (Paolo Abeni) [1892375] - [net] mptcp: fix locking in mptcp_disconnect() (Paolo Abeni) [1892375] - [net] mptcp: better msk-level shutdown. (Paolo Abeni) [1892375] - [net] mptcp: more strict state checking for acks (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add the MP_PRIO testcases (Paolo Abeni) [1892375] - [net] mptcp: add the mibs for MP_PRIO (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add set_flags command in pm_nl_ctl (Paolo Abeni) [1892375] - [net] mptcp: add set_flags command in PM netlink (Paolo Abeni) [1892375] - [net] mptcp: add the incoming MP_PRIO support (Paolo Abeni) [1892375] - [net] mptcp: add the outgoing MP_PRIO support (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add testcases for setting the address ID (Paolo Abeni) [1892375] - [net] mptcp: add the address ID assignment bitmap (Paolo Abeni) [1892375] - [net] mptcp: cap forward allocation to 1M (Paolo Abeni) [1892375] - [net] mptcp: fix pending data accounting (Paolo Abeni) [1892375] - [net] mptcp: push pending frames when subflow has free space (Paolo Abeni) [1892375] - [net] mptcp: properly annotate nested lock (Paolo Abeni) [1892375] - [net] mptcp: fix security context on server socket (Paolo Abeni) [1892375] - [net] mptcp: clear use_ack and use_map when dropping other suboptions (Paolo Abeni) [1892375] - [net] mptcp: let MPTCP create max size skbs (Paolo Abeni) [1892375] - [net] mptcp: pm: simplify select_local_address() (Paolo Abeni) [1892375] - [net] mptcp: parse and act on incoming FASTCLOSE option (Paolo Abeni) [1892375] - [net] mptcp: hold mptcp socket before calling tcp_done (Paolo Abeni) [1892375] - [net] mptcp: use MPTCPOPT_HMAC_LEN macro (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add the flush addrs testcase (Paolo Abeni) [1892375] - [net] mptcp: remove address when netlink flushes addrs (Paolo Abeni) [1892375] - [net] mptcp: attach subflow socket to parent cgroup (Paolo Abeni) [1892375] - [net] mptcp: be careful on subflows shutdown (Paolo Abeni) [1892375] - [net] mptcp: plug subflow context memory leak (Paolo Abeni) [1892375] - [net] mptcp: link MPC subflow into msk only after accept (Paolo Abeni) [1892375] - [net] mptcp: use the variable sk instead of open-coding (Paolo Abeni) [1892375] - [net] mptcp: rename add_addr_signal and mptcp_add_addr_status (Paolo Abeni) [1892375] - [net] mptcp: drop rm_addr_signal flag (Paolo Abeni) [1892375] - [net] mptcp: print out port and ahmac when receiving ADD_ADDR (Paolo Abeni) [1892375] - [net] mptcp: add port parameter for mptcp_pm_announce_addr (Paolo Abeni) [1892375] - [net] mptcp: send out dedicated packet for ADD_ADDR using port (Paolo Abeni) [1892375] - [net] mptcp: add the outgoing ADD_ADDR port support (Paolo Abeni) [1892375] - [net] mptcp: use adding up size to get ADD_ADDR length (Paolo Abeni) [1892375] - [net] mptcp: add port support for ADD_ADDR suboption writing (Paolo Abeni) [1892375] - [net] mptcp: unify ADD_ADDR and ADD_ADDR6 suboptions writing (Paolo Abeni) [1892375] - [net] mptcp: unify ADD_ADDR and echo suboptions writing (Paolo Abeni) [1892375] - [net] mptcp: print new line in mptcp_seq_show() if mptcp isn't in use (Paolo Abeni) [1892375] - [net] mptcp: emit tcp reset when a join request fails (Paolo Abeni) [1892375] - [net] tcp: merge 'init_req' and 'route_req' functions (Paolo Abeni) [1892375] - [net] security: add const qualifier to struct sock in various places (Paolo Abeni) [1892375] - [net] mptcp: avoid potential infinite loop in mptcp_recvmsg() (Paolo Abeni) [1892375] - [net] mptcp: use mptcp release_cb for delayed tasks (Paolo Abeni) [1892375] - [net] mptcp: avoid a few atomic ops in the rx path (Paolo Abeni) [1892375] - [net] mptcp: allocate TX skbs in msk context (Paolo Abeni) [1892375] - [net] mptcp: protect the rx path with the msk socket spinlock (Paolo Abeni) [1892375] - [net] mptcp: implement wmem reservation (Paolo Abeni) [1892375] - [net] mptcp: open code mptcp variant for lock_sock (Paolo Abeni) [1892375] - [net] mptcp: fix NULL ptr dereference on bad MPJ (Paolo Abeni) [1892375] - [net] mptcp: be careful on MPTCP-level ack. (Paolo Abeni) [1892375] - [net] mptcp: put reference in mptcp timeout timer (Paolo Abeni) [1892375] - [net] mptcp: refine MPTCP-level ack scheduling (Paolo Abeni) [1892375] - [net] mptcp: track window announced to peer (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add ADD_ADDR IPv6 test cases (Paolo Abeni) [1892375] - [net] mptcp: send out dedicated ADD_ADDR packet (Paolo Abeni) [1892375] - [net] mptcp: change add_addr_signal type (Paolo Abeni) [1892375] - [net] mptcp: keep unaccepted MPC subflow into join list (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add link failure test case (Paolo Abeni) [1892375] - [net] mptcp: skip to next candidate if subflow has unacked data (Paolo Abeni) [1892375] - [net] mptcp: fix state tracking for fallback socket (Paolo Abeni) [1892375] - [net] mptcp: drop WORKER_RUNNING status bit (Paolo Abeni) [1892375] - [net] mptcp: update rtx timeout only if required. (Paolo Abeni) [1892375] - [net] mptcp: send explicit ack on delayed ack_seq incr (Paolo Abeni) [1892375] - [net] mptcp: keep track of advertised windows right edge (Paolo Abeni) [1892375] - [net] mptcp: rework poll+nospace handling (Paolo Abeni) [1892375] - [net] mptcp: try to push pending data on snd una updates (Paolo Abeni) [1892375] - [net] mptcp: move page frag allocation in mptcp_sendmsg() (Paolo Abeni) [1892375] - [net] mptcp: refactor shutdown and close (Paolo Abeni) [1892375] - [net] mptcp: introduce MPTCP snd_nxt (Paolo Abeni) [1892375] - [net] mptcp: add accounting for pending data (Paolo Abeni) [1892375] - [net] mptcp: reduce the arguments of mptcp_sendmsg_frag (Paolo Abeni) [1892375] - [net] mptcp: introduce mptcp_schedule_work (Paolo Abeni) [1892375] - [net] tcp: factor out __tcp_close() helper (Paolo Abeni) [1892375] - [net] mptcp: use tcp_build_frag() (Paolo Abeni) [1892375] - [net] tcp: factor out tcp_build_frag() (Paolo Abeni) [1892375] - [net] tcp: schedule EPOLLOUT after a partial sendmsg (Paolo Abeni) [1892375] - [net] tcp: annotate tp->write_seq lockless reads (Paolo Abeni) [1892375] - [net] mptcp: fix static checker warnings in mptcp_pm_add_timer (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add ADD_ADDR timeout test case (Paolo Abeni) [1892375] - [documentation] networking: mptcp: Add MPTCP sysctl entries (Paolo Abeni) [1892375] - [net] mptcp: add a new sysctl add_addr_timeout (Paolo Abeni) [1892375] - [net] mptcp: split mptcp_clean_una function (Paolo Abeni) [1892375] - [net] tcp: propagate MPTCP skb extensions on xmit splits (Paolo Abeni) [1892375] - [net] mptcp: use _fast lock version in __mptcp_move_skbs (Paolo Abeni) [1892375] - [net] mptcp: adjust mptcp receive buffer limit if subflow has larger one (Paolo Abeni) [1892375] - [net] tcp: fix compile error if !CONFIG_SYSCTL (Paolo Abeni) [1892375] - [net] tcp: add tcp_tx_skb_cache sysctl (Paolo Abeni) [1892375] - [net] tcp: do not recycle cloned skbs (Paolo Abeni) [1892375] - [net] tcp: properly reset skb->truesize for tx recycling (Paolo Abeni) [1892375] - [net] tcp: cleanup sk_tx_skb_cache before reuse (Paolo Abeni) [1892375] - [net] tcp: fix zerocopy and notsent_lowat issues (Paolo Abeni) [1892375] - [net] tcp: add one skb cache for tx (Paolo Abeni) [1892375] - [include] include: fpga: adi-axi-common.h: fixup whitespace tab -> space (Luis Goncalves) [1494702] - [include] include: fpga: adi-axi-common.h: add version helper macros (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: convert get_user_pages() --> pin_user_pages() (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fix bug in port reset handshake (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: reduce the scope of variable 'ret' (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: add device id for Intel FPGA PAC N3000 (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: add AFU interrupt support (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fme: add interrupt support for global error reporting (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: add interrupt support for port error reporting (Luis Goncalves) [1494702] - [fpga] fpga: dfl: introduce interrupt trigger setting API (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: add irq info for feature devices enumeration (Luis Goncalves) [1494702] - [fpga] fpga: dfl: parse interrupt info for feature devices on enumeration (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: check INIT_B pin during write_init (Luis Goncalves) [1494702] - [fpga] fpga: Fix dead store in fpga-bridge.c (Luis Goncalves) [1494702] - [fpga] fpga: Fix dead store fpga-mgr.c (Luis Goncalves) [1494702] - [fpga] fpga: dfl: Use struct_size() in kzalloc() (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: remove unneeded, mistyped variables (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: valid for the 7 Series too (Luis Goncalves) [1494702] - [fpga] fpga: zynqmp: fix modular build (Luis Goncalves) [1494702] - [fpga] drivers/fpga/dfl-afu-dma-region.c: get rid of pointless access_ok() (Luis Goncalves) [1494702] - [fpga] drivers/fpga/dfl-fme-pr.c: get rid of pointless access_ok() (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: Corrected error handling levels (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: support debug access to memory-mapped afu regions (Luis Goncalves) [1494702] - [fpga] fpga: dfl.h: Replace zero-length array with flexible-array member (Luis Goncalves) [1494702] - [fpga] fpga: stratix10-soc: add compatible property value for intel agilex (Luis Goncalves) [1494702] - [fpga] fpga: machxo2-spi: Use new structure for SPI transfer delays (Luis Goncalves) [1494702] - [fpga] fpga: ice40-spi: Use new structure for SPI transfer delays (Luis Goncalves) [1494702] - [fpga] fpga: dfl: support multiple opens on feature device node (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fme: add performance reporting support (Luis Goncalves) [1494702] - [firmware] firmware: fpga: replace the error codes with the standard ones (Luis Goncalves) [1494702] - [net] sched: act_mpls: ensure LSE is pullable before reading it (Guillaume Nault) [1917918] - [net] openvswitch: ensure LSE is pullable before reading it (Guillaume Nault) [1917918] - [net] skbuff: ensure LSE is pullable before decrementing the MPLS ttl (Guillaume Nault) [1917918] - [net] sched: act_mpls: Add softdep on mpls_gso.ko (Guillaume Nault) [1917918] - [net] mpls: load mpls_gso after mpls_iptunnel (Guillaume Nault) [1917918] - [net] netfilter: nf_tables: handle nft_object lookups via rhltable (Phil Sutter) [1848816] - [arm64] kvm: arm64: Remove PMU RAZ/WI handling (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Inject UNDEF on PMU access when no PMU configured (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Set ID_AA64DFR0_EL1.PMUVer to 0 when no PMU support (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Add kvm_vcpu_has_pmu() helper (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Refactor PMU attribute error handling (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Introduce handling of AArch32 TTBCR2 traps (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: pmu: Make overflow handler NMI safe (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Also build dirty_log_perf_test on AArch64 (Auger Eric) [1890373 1907826] - [tools] selftests: kvm/set_memory_region_test: Fix race in move region test (Auger Eric) [1890373 1907826] - [tools] kvm: arm64: selftests: Filter out DEMUX registers (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Add blessed SVE registers to get-reg-list (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Add aarch64 get-reg-list test (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Don't access PMCR_EL0 when no PMU is available (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Don't hide ID registers from userspace (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Force PTE mapping on fault resulting in a device mapping (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Fix AArch32 handling of DBGD{CCINT, SCRext} and DBGVCR (Auger Eric) [1890373 1907826] - [kernel] kvm: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return SMCCC_RET_NOT_REQUIRED (Auger Eric) [1890373 1907826] - [kernel] smccc: Make constants available to assembly (Auger Eric) [1890373 1907826] - [kernel] firmware: smccc: Add the definition for SMCCCv1.2 version/error codes (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Ensure user_mem_abort() return value is initialised (Auger Eric) [1890373 1907826] - [] ASoC: SOF: Intel: fix page fault at probe if i915 init fails (Jaroslav Kysela) [1906665] - [include] powerpc: fix the backport macros of hv_24x7 and hv_gpci (Diego Domingos) [1915159] - [net] tcp: Prevent low rmem stalls with SO_RCVLOWAT. (Davide Caratti) [1917976] - [net] tcp: fix to update snd_wl1 in bulk receiver fast path (Davide Caratti) [1917976] - [net] tcp: md5: refine tcp_md5_do_add()/tcp_md5_hash_key() barriers (Davide Caratti) [1917976] - [net] tcp: md5: add missing memory barriers in tcp_md5_do_add()/tcp_md5_hash_key() (Davide Caratti) [1917976] - [net] sunrpc: clean-up cache downcall (J. Bruce Fields) [1887178] - [net] sunrpc: raise kernel RPC channel buffer size (J. Bruce Fields) [1887178] - [netdrv] mlx5: Remove the unsupported mark from ConnectX-6 Lx and BlueField-2 (Alaa Hleihel) [1802118 1790541] - [s390] s390/qeth: make af_iucv TX notification call more robust (Philipp Rudo) [1915919] - [s390] s390/dasd: fix list corruption of lcu list (Philipp Rudo) [1915918] - [s390] s390/dasd: fix list corruption of pavgroup group list (Philipp Rudo) [1915918] - [s390] s390/dasd: prevent inconsistent LCU device data (Philipp Rudo) [1915918] - [s390] s390/dasd: fix hanging device offline processing (Philipp Rudo) [1915918] - [block] Revert "block: Fix a lockdep complaint triggered by request queue flushing" (Ming Lei) [1897404] - [nvme] nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class (Ming Lei) [1897404] - [block] blk-mq: add new API of blk_mq_hctx_set_fq_lock_class (Ming Lei) [1897404] - [scsi] scsi: core: Fix race between handling STS_RESOURCE and completion (Ming Lei) [1897404]- [fs] inotify: Increase default inotify.max_user_watches limit to 1048576 (Waiman Long) [1888617] - [kernel] cgroup: fix psi_show() crash on 32bit ino archs (Waiman Long) [1920288] - [kernel] cgroup: fix incorrect WARN_ON_ONCE() in cgroup_setup_root() (Waiman Long) [1920288] - [netdrv] net: bareudp: add missing error handling for bareudp_link_config() (Guillaume Nault) [1920194] - [netdrv] bareudp: Fix use of incorrect min_headroom size (Guillaume Nault) [1920194] - [netdrv] bareudp: set NETIF_F_LLTX flag (Guillaume Nault) [1920194] - [netdrv] vxlan: fix error return code in __vxlan_dev_create() (Guillaume Nault) [1920194] - [netdrv] ip_tunnels: Set tunnel option flag when tunnel metadata is present (Guillaume Nault) [1920194] - [net] vsock/virtio: discard packets only when socket is really closed (Stefano Garzarella) [1920004] - [net] vsock: fix the error return when an invalid ioctl command is used (Stefano Garzarella) [1920004] - [net] vsock: remove ratelimit unknown ioctl message (Stefano Garzarella) [1920004] - [net] vsock: use ns_capable_noaudit() on socket create (Stefano Garzarella) [1920004] - [net] vsock: fix potential null pointer dereference in vsock_poll() (Stefano Garzarella) [1920004] - [net] vsock/vmci: make vmci_vsock_transport_cb() static (Stefano Garzarella) [1920004] - [block] block: add blk_queue_make_request declaration back (Ming Lei) [1919764] - [net] erspan: fix version 1 check in gre_parse_header() (Guillaume Nault) [1919388] - [net] ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() (Guillaume Nault) [1919388] - [net] ipv4: Fix tos mask in inet_rtm_getroute() (Guillaume Nault) [1919388] - [net] inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill() (Guillaume Nault) [1919388] - [mm] usercopy: mark dma-kmalloc caches as usercopy caches (Waiman Long) [1660290] - [mm] mm, slab_common: use enum kmalloc_cache_type to iterate over kmalloc caches (Waiman Long) [1660290] - [mm] mm, slab: remove unused kmalloc_size() (Waiman Long) [1660290] - [mm] mm, slab: make kmalloc_infocontain all types of names (Waiman Long) [1660290] - [netdrv] net: stmmac: fix taprio configuration when base_time is in the past (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes (Mark Salter) [1870102] - [netdrv] net: stmmac: delete the eee_ctrl_timer after napi disabled (Mark Salter) [1870102] - [netdrv] net: stmmac: free tx skb buffer in stmmac_resume() (Mark Salter) [1870102] - [netdrv] net: stmmac: start phylink instance before stmmac_hw_setup() (Mark Salter) [1870102] - [netdrv] net: stmmac: increase the timeout for dma reset (Mark Salter) [1870102] - [netdrv] net: stmmac: fix incorrect merge of patch upstream (Mark Salter) [1870102] - [netdrv] net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac_lib: enlarge dma reset timeout (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix channel lock initialization (Mark Salter) [1870102] - [netdrv] net: stmmac: Add option for VLAN filter fail queue enable (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support to Ethtool get/set ring parameters (Mark Salter) [1870102] - [netdrv] net: stmmac: use netif_tx_start|stop_all_queues() function (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix incorrect location to set real_num_rx|tx_queues (Mark Salter) [1870102] - [netdrv] net: stmmac: add ethtool support for get/set channels (Mark Salter) [1870102] - [netdrv] net: stmmac: set get_rx_header_len() as void for it didn't have any error code to return (Mark Salter) [1870102] - [netdrv] net: stmmac: remove redundant null check before clk_disable_unprepare() (Mark Salter) [1870102] - [netdrv] net: phylink: avoid oops during initialisation (Mark Salter) [1870102] - [netdrv] net: stmmac: Modify configuration method of EEE timers (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: provide multicast filter fallback (Mark Salter) [1870102] - [netdrv] net: stmmac: fix failed to suspend if phy based WOL is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Speed down the PHY if WoL to save energy (Mark Salter) [1870102] - [netdrv] net: stmmac: Support WOL with phy (Mark Salter) [1870102] - [netdrv] net: stmmac: only call pmt() during suspend/resume if HW enables PMT (Mark Salter) [1870102] - [netdrv] net: stmmac: Move device_can_wakeup() check earlier in set_wol (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove WAKE_MAGIC if HW shows no pmt_magic_frame (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove unused inline function stmmac_rx_threshold_count (Mark Salter) [1870102] - [include] net: pylink.h: add kernel-doc descriptions for new fields at phylink_config (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN promiscuous mode (Mark Salter) [1870102] - [netdrv] net: stmmac: removed enabling eee in EEE set callback (Mark Salter) [1870102] - [documentation] net: phy: add PHY_INTERFACE_MODE_10GBASER (Mark Salter) [1870102] - [include] net: mii: convert mii_lpa_to_ethtool_lpa_x() to linkmode variant (Mark Salter) [1870102] - [base] driver core: platform: Add platform_get_irq_byname_optional() (Mark Salter) [1870102] - [netdrv] net: stmmac: enable timestamp snapshot for required PTP packets in dwmac v5.10a (Mark Salter) [1870102] - [netdrv] net: stmmac: don't attach interface until resume finishes (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: fix potential integer overflow on 32 bit multiply (Mark Salter) [1870102] - [netdrv] stmmac: fix pointer check after utilization in stmmac_interrupt (Mark Salter) [1870102] - [netdrv] stmmac: intel: Fix kernel crash due to wrong error path (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable SERDES power up/down sequence (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix sub-second increment (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: fix out-of-bounds mac address reg setting (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix VLAN register handling (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix VLAN filtering when HW does not support it (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Rx filtering (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac_lib: remove unnecessary checks in dwmac_dma_reset() (Mark Salter) [1870102] - [netdrv] net: rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Mark Salter) [1870102] - [netdrv] net: stmmac: use readl_poll_timeout() function in dwmac4_dma_reset() (Mark Salter) [1870102] - [netdrv] net: stmmac: use readl_poll_timeout() function in init_systime() (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: convert to devm_platform_ioremap_resource (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate it with DesignWare XPCS (Mark Salter) [1870102] - [netdrv] net: phy: Add Synopsys DesignWare XPCS MDIO module (Mark Salter) [1870102] - [netdrv] net: stmmac: Use resolved link config in mac_link_up() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to dev_fwnode() if needed (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch to linkmode_and()/linkmode_andnot() (Mark Salter) [1870102] - [netdrv] flow_offload: check for basic action hw stats type (Mark Salter) [1870102] - [netdrv] stmmac: let core reject the unsupported coalescing parameters (Mark Salter) [1870102] - [netdrv] net: phylink: propagate resolved link config via mac_link_up() (Mark Salter) [1870102] - [netdrv] net: ethernet: stmmac: demote warnings about missing optional clocks (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: Fix misleading interrupt error msg (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Disable ACS if enhanced descs are not used (Mark Salter) [1870102] - [netdrv] net: stmmac: fix notifier registration (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: fix missing IFF_MULTICAST checki in dwxgmac2_set_filter (Mark Salter) [1870102] - [netdrv] net: stmmac: fix missing IFF_MULTICAST check in dwmac4_set_filter (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: fix incorrect XGMAC_VLAN_TAG register writting (Mark Salter) [1870102] - [netdrv] net: stmmac: fix incorrect GMAC_VLAN_TAG register writting in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Delete txtimer in suspend() (Mark Salter) [1870102] - [netdrv] net: stmmac: modified pcs mode support for RGMII (Mark Salter) [1870102] - [netdrv] net: stmmac: Add missing information in DebugFS capabilities file (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Add TBS support (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add TBS support (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Add support for ETF Scheduler using TBS (Mark Salter) [1870102] - [netdrv] net: stmmac: Initial support for TBS (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: Fix missing return (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix missing return (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Fix TAPRIO division operation (Mark Salter) [1870102] - [netdrv] net: stmmac: mmc: Add Frame Preemption counters on GMAC5+ cores (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac3+: Add support for Frame Preemption (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: Add support for Frame Preemption (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Frame Preemption support using TAPRIO API (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate EST with TAPRIO scheduler API (Mark Salter) [1870102] - [netdrv] net: stmmac: Add basic EST support for XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Add basic EST support for GMAC5+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Always use TX coalesce timer value when rescheduling (Mark Salter) [1870102] - [netdrv] net: stmmac: Let TX and RX interrupts be independently enabled/disabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Print more information in DebugFS DMA Capabilities file (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: avoid clk and reset for acpi device (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: use generic device api (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: fix probe for ACPI devices (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Do not setup flower filtering if RSS is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Fixed link does not need MDIO Bus (Mark Salter) [1870102] - [netdrv] stmmac: debugfs entry name is not be changed when udev rename device name (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: Fix MDIO init for platforms without PHY (Mark Salter) [1870102] - [netdrv] net: stmmac: Always arm TX Timer at end of transmission start (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable 16KB buffer size (Mark Salter) [1870102] - [netdrv] net: stmmac: 16KB buffer must be 16 byte aligned (Mark Salter) [1870102] - [netdrv] net: stmmac: RX buffer size must be 16 byte aligned (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Clear previous RX buffer size (Mark Salter) [1870102] - [netdrv] net: stmmac: Only the last buffer has the FCS field (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not accept invalid MTU values (Mark Salter) [1870102] - [netdrv] net: stmmac: Determine earlier the size of RX buffer (Mark Salter) [1870102] - [netdrv] treewide: Use sizeof_field() macro (Mark Salter) [1870102] - [netdrv] net: stmmac: reset Tx desc base address before restarting Tx (Mark Salter) [1870102] - [netdrv] net: phylink: rename mac_link_state() op to mac_pcs_get_state() (Mark Salter) [1870102] - [netdrv] page_pool: do not release pool until inflight == 0 (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Do not enable TBU interrupt (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework TX Coalesce logic (Mark Salter) [1870102] - [netdrv] net: stmmac: Tune-up default coalesce settings (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Remove uneeded computation for RFA/RFD (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Remove uneeded computation for RFA/RFD (Mark Salter) [1870102] - [netdrv] net: stmmac: Setup a default RX Coalesce value instead of the minimum (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not set RX IC bit if RX Coalesce is zero (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement UDP Segmentation Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework stmmac_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Remove the speed dependency (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add C45 PHY support in the MDIO callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Add Split Header support (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix sparse warning (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove break after a return (Mark Salter) [1870102] - [netdrv] net: stmmac: add flexible PPS to dwmac 4.10a (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement L3/L4 Filters in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to VLAN Perfect filtering if HASH is not available (Mark Salter) [1870102] - [netdrv] net: stmmac: Support enhanced addressing mode for DWMAC 4.10 (Mark Salter) [1870102] - [netdrv] net: stmmac: Only enable enhanced addressing mode when needed (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the TX IOC in xmit path (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix TSO descriptor with Enhanced Addressing (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the packet count in stmmac_rx() (Mark Salter) [1870102] - ethernet: Delete unnecessary checks before the macro call “dev_kfree_skb” (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable MMC interrupts by default (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable Flow Control when 1 or more queues are in AV (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix AV Feature detection (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix TSA selection (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Only get SPH header len if available (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: bitrev32 returns u32 (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4: bitrev32 returns u32 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the problem of tso_xmit (Mark Salter) [1870102] - [netdrv] net: stmmac: fix argument to stmmac_pcs_ctrl_ane() (Mark Salter) [1870102] - [netdrv] net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow (Mark Salter) [1870102] - [netdrv] net: stmmac: make tc_flow_parsers static (Mark Salter) [1870102] - [netdrv] net: stmmac: fix disabling flexible PPS output (Mark Salter) [1870102] - [netdrv] net: stmmac: fix length of PTP clock's name string (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Not all Unicast addresses may be available (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid deadlock on suspend/resume (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix RSS writing wrong keys (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix RSS not writing all Keys to HW (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable the Timestamp interrupt by default (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not stop PHY if WoL is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Correctly take timestamp for PTPv2 (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Always update the MAC Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Detect Hash Table size dinamically (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Not all Unicast addresses may be available (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix page pool size (Mark Salter) [1870102] - [netdrv] net: stmmac: selftest: avoid large stack usage (Mark Salter) [1870102] - [netdrv] net: stmmac: Hold rtnl lock in suspend/resume callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: implement support for passive mode converters via dt (Mark Salter) [1870102] - [netdrv] net: stmmac: ARP Offload for GMAC4+ Cores (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Insertion Offload in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for SA Insertion/Replacement in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Reinitialize correctly a variable (Mark Salter) [1870102] - [netdrv] net: stmmac: Add VLAN HASH filtering support in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent divide-by-zero (Mark Salter) [1870102] - [netdrv] net: stmmac: Limit max speeds of XGMAC if asked to (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Enable RX Jumbo frame support (Mark Salter) [1870102] - [netdrv] stmmac: platform: adjust messages and move to dev level (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Enable RX Jumbo frame support (Mark Salter) [1870102] - [netdrv] net: stmmac: Correctly assing MAX MTU in XGMAC cores case (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Correct RAVSEL field interpretation (Mark Salter) [1870102] - [netdrv] net: stmmac: ethtool: Let user configure TX coalesce without RIWT (Mark Salter) [1870102] - [netdrv] net: stmmac: Only consider RX error when HW Timestamping is not enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement ARP Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement L3/L4 Filters using TC Flower (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not return error code in TC Initialization (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add RBU handling in DMA interrupt (Mark Salter) [1870102] - [netdrv] net: stmmac: depend on COMMON_CLK (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: use devm_platform_ioremap_resource() to simplify code (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Insertion Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add EEE support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for SA Insertion/Replacement in XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: Add ethtool register dump for XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Add Flexible PPS support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add a counter for Split Header packets (Mark Salter) [1870102] - [netdrv] net: page_pool: API cleanup and comments (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Split Header support and enable it in XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Correctly return that RX descriptor is not last one (Mark Salter) [1870102] - [netdrv] net: stmmac: Prepare to add Split Header support (Mark Salter) [1870102] - [netdrv] net: stmmac: Get correct timestamp values from XGMAC (Mark Salter) [1870102] - [netdrv] stmmac: no need to check return value of debugfs_create functions (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Flexible RX Parser support in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement Safety Features in XGMAC core (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement VLAN Hash Filtering in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement RSS and enable it in XGMAC core (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement tx_queue_prio() (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement set_mtl_tx_queue_weight() (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement MMC counters (Mark Salter) [1870102] - [netdrv] net: Remove dev_err() usage after platform_get_irq() (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not request stmmaceth clock (Mark Salter) [1870102] - [netdrv] net: stmmac: Make MDIO bus reset optional (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Do not return a fragment entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix issues when number of Queues >= 4 (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix XGMAC selftests (Mark Salter) [1870102] - [netdrv] net: stmmac: manage errors returned by of_get_mac_address() (Mark Salter) [1870102] - [netdrv] net: stmmac: Use netif_tx_napi_add() for TX polling function (Mark Salter) [1870102] - [netdrv] net: stmmac: Sync RX Buffer upon allocation (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not cut down 1G modes (Mark Salter) [1870102] - [netdrv] net: stmmac: Use kcalloc() instead of kmalloc_array() (Mark Salter) [1870102] - [netdrv] net: stmmac: RX Descriptors need to be clean before setting buffers (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix misuses of GENMASK macro (Mark Salter) [1870102] - [netdrv] net: stmmac: add support for hash table size 128/256 in dwmac4 (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: mac address array boudary violation issue (Mark Salter) [1870102] - [netdrv] net: stmmac: Introducing support for Page Pool (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix descriptors address being in > 32 bits address space (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement RX Coalesce Frames setting (Mark Salter) [1870102] - [netdrv] net: stmmac: Re-work the queue selection for TSO packets (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable dwmac4 jumbo frame more than 8KiB (Mark Salter) [1870102] - [netdrv] net: stmmac: make "snps, reset-delays-us" optional again (Mark Salter) [1870102] - [netdrv] net: stmmac: Re-word Kconfig entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Update Kconfig entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Only disable interrupts if NAPI is scheduled (Mark Salter) [1870102] - [netdrv] net: stmmac: Update RX Tail Pointer to last free entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable support for > 32 Bits addressing in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not disable interrupts when cleaning TX (Mark Salter) [1870102] - [netdrv] net: stmmac: Add the missing speeds that XGMAC supports (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Fix the undefined burst setting (Mark Salter) [1870102] - [netdrv] net: stmmac: Decrease default RX Watchdog value (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not try to enable PHY EEE if MAC does not support it (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Enable EDMA by default (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix case when PHY handle is not present (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix crash observed if PHY does not support EEE (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix possible deadlock when disabling EEE support (Mark Salter) [1870102] - [netdrv] net: stmmac: initialize the reset delay array (Mark Salter) [1870102] - [netdrv] net: stmmac: add sanity check to device_property_read_u32_array call (Mark Salter) [1870102] - [netdrv] net: stmmac: fix unused-variable warning (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the phy_reset hook from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the reset delays from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the reset GPIO from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: use device_property_read_u32_array to read the reset delays (Mark Salter) [1870102] - [netdrv] net: stmmac: drop redundant check in stmmac_mdio_reset (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix wrapper drivers not detecting PHY (Mark Salter) [1870102] - [netdrv] net: stmmac: use GPIO descriptors in stmmac_mdio_reset (Mark Salter) [1870102] - [netdrv] net: stmmac: Convert to phylink and remove phylib logic (Mark Salter) [1870102] - [netdrv] net: stmmac: Start adding phylink support (Mark Salter) [1870102] - [netdrv] net: stmmac: Prepare to convert to phylink (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: fix flow control issue (Mark Salter) [1870102] - [netdrv] net: stmmac: modify default value of tx-frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch to devm_alloc_etherdev_mqs (Mark Salter) [1870102] - [netdrv] net: stmmac: use dev_info() before netdev is registered (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent missing interrupts when running NAPI (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Clear unused address entries (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Do not disable whole RX in dma_stop_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Do not disable whole RX in dma_stop_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Fix Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Clear unused address entries (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Fix Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch MMC functions to HWIF callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac100: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MAC loopback callback to HWIF (Mark Salter) [1870102] - [netdrv] net: stmmac: set IC bit when transmitting frames with HW timestamp (Mark Salter) [1870102] - [netdrv] net: stmmac: fixed new system time seconds value calculation (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not output error on deferred probe (Mark Salter) [1870102] - [netdrv] net: stmmac: fix csr_clk can't be zero issue (Mark Salter) [1870102] - [netdrv] net: stmmac: update rx tail pointer register to fix rx dma hang issue (Mark Salter) [1870102] - [netdrv] net: stmmac: fix reset gpio free missing (Mark Salter) [1870102] - [netdrv] net: stmmac: dma channel control register need to be init first (Mark Salter) [1870102] - [netdrv] net: stmmac: fix ethtool flow control not able to get/set (Mark Salter) [1870102] - [netdrv] dwmac4_prog_mtl_tx_algorithms() missing write operation (Mark Salter) [1870102] - [netdrv] net: stmmac: Set Flow Control to automatic mode in the driver (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Finish the Flow Control implementation (Mark Salter) [1870102] - [netdrv] net: stmmac: move stmmac_check_ether_addr() to driver probe (Mark Salter) [1870102] - [netdrv] net: stmmac: Use bfsize1 in ndesc_init_rx_desc (Mark Salter) [1870102] - [netdrv] net: stmmac: don't log oversized frames (Mark Salter) [1870102] - [netdrv] net: stmmac: fix dropping of multi-descriptor RX frames (Mark Salter) [1870102] - [netdrv] net: stmmac: don't overwrite discard_frame status (Mark Salter) [1870102] - [netdrv] net: stmmac: don't stop NAPI processing when dropping a packet (Mark Salter) [1870102] - [netdrv] net: stmmac: ratelimit RX error logs (Mark Salter) [1870102] - [netdrv] net: stmmac: use correct DMA buffer size in the RX descriptor (Mark Salter) [1870102] - [netdrv] net: stmmac: fix memory corruption with large MTUs (Mark Salter) [1870102] - [netdrv] net: stmmac: fix jumbo frame sending with non-linear skbs (Mark Salter) [1870102] - [netdrv] net: stmmac: don't set own bit too early for jumbo frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid one more sometimes uninitialized Clang warning (Mark Salter) [1870102] - [netdrv] net: ethernet: stmmac: add management of clk_csr property (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid sometimes uninitialized Clang warnings (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Also use TBU interrupt to clean TX path (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Also use TBU interrupt to clean TX path (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix NAPI poll in TX path when in multi-queue (Mark Salter) [1870102] - [netdrv] net: stmmac: use correct define to get rx timestamp on GMAC4 (Mark Salter) [1870102] - [netdrv] net: stmmac: fix ptp timestamping on Rx on gmac4 (Mark Salter) [1870102] - [netdrv] net: stmmac: implement the SIOCGHWTSTAMP ioctl (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix a race in EEE enable callback (Mark Salter) [1870102] - [netdrv] net: stmmac: handle endianness in dwmac4_get_timestamp (Mark Salter) [1870102] - [netdrv] net: stmmac: Disable EEE mode earlier in XMIT callback (Mark Salter) [1870102] - [netdrv] net: stmmac: Send TSO packets always from Queue 0 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to Platform Data clock in Watchdog conversion (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent RX starvation in stmmac_napi_poll() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the logic of checking if RX Watchdog must be enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Check if CBS is supported before configuring (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Only clear interrupts that are active (Mark Salter) [1870102] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Mark Salter) [1870102] - [netdrv] net: stmmac: convert to DEFINE_SHOW_ATTRIBUTE (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix an error code in probe() (Mark Salter) [1870102] - [netdrv] net: stmmac: Move debugfs init/exit to ->probe()/->remove() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix RX packet size > 8191 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules (Mark Salter) [1870102] - [netdrv] net: stmmac: Set OWN bit for jumbo frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable TC Ops for GMAC >= 4 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add CBS support in XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fixup the tail addr setting in xmit path (Mark Salter) [1870102] - [netdrv] stmmac: fix valid numbers of unicast filter entries (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework coalesce timer and fix multi-queue races (Mark Salter) [1870102] - [netdrv] Revert "net: stmmac: Do not keep rearming the coalesce timer in stmmac_xmit" (Mark Salter) [1870102] - [netdrv] Revert "net: stmmac: fix build failure due to missing COMMON_CLK dependency" (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate XGMAC into main driver flow (Mark Salter) [1870102] - [netdrv] net: stmmac: Add PTP support for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MDIO related functions for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add descriptor related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add DMA related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MAC related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add XGMAC 2.10 HWIF entry (Mark Salter) [1870102] - [netdrv] stmmac: fix signed 64-bit division (Mark Salter) [1870102] - [netdrv] net: stmmac_tc: use 64-bit arithmetic instead of 32-bit (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for CBS QDISC (Mark Salter) [1870102] - [tty] serial: 8250_tegra: Create Tegra specific 8250 driver (Mark Salter) [1870103] - [pci] PCI: Disable MSI for Tegra root ports (Mark Salter) [1870101] - [pci] PCI: Add MCFG quirks for Tegra194 host controllers (Mark Salter) [1870101] - [netdrv] tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS (Antoine Tenart) [1919364 1917563] {CVE-2021-0342} - [netdrv] tun: correct header offsets in napi frags mode (Antoine Tenart) [1919364 1917563] {CVE-2021-0342} - [netdrv] tun: Don't put_page() for all negative return values from XDP program (Antoine Tenart) [1919364] - [netdrv] tun: add mutex_unlock() call and napi.skb clearing in tun_get_user() (Antoine Tenart) [1919364] - [netdrv] tun: fix data-race in gro_normal_list() (Antoine Tenart) [1919364] - [netdrv] tun: fix use-after-free when register netdev failed (Antoine Tenart) [1919364] - [netdrv] tun: mark small packets as owned by the tap sock (Antoine Tenart) [1919364] - [netdrv] tun: use netdev_alloc_frag() in tun_napi_alloc_frags() (Antoine Tenart) [1919364] - [scsi] scsi: ibmvfc: Fix error return in ibmvfc_probe() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Provide modules parameters for MQ settings (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Enable MQ and set reasonable defaults (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Purge SCSI channels after transport loss/reset (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Send Cancel MAD down each hw SCSI channel (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add cancel mad initialization helper (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Register Sub-CRQ handles with VIOS during channel setup (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Send commands down HW Sub-CRQ when channelized (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Set and track hw queue in ibmvfc_event struct (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Advertise client support for using hardware channels (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Implement channel enquiry and setup commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Map/request irq and register Sub-CRQ interrupt handler (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define Sub-CRQ interrupt handler routine (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add handlers to drain and complete Sub-CRQ responses (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add Sub-CRQ IRQ enable/disable routine (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add alloc/dealloc routines for SCSI Sub-CRQ Channels (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add Subordinate CRQ definitions (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define hcall wrapper for registering a Sub-CRQ (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add size parameter to ibmvfc_init_event_pool() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Init/free event pool during queue allocation/free (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Move event pool init/free routines (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add vhost fields and defaults for MQ enablement (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Fix missing cast of ibmvfc_event pointer to u64 handle (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Relax locking around ibmvfc_queuecommand() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Complete commands outside the host/queue lock (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define per-queue state/list locks (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Make command event pool queue specific (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define generic queue structure for CRQs (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Advertise client support for targetWWPN using v2 commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add support for target_wwpn field in v2 MADs and vfcFrame (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add FC payload retrieval routines for versioned vfcFrames (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add helper for testing capability flags (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add new fields for version 2 of several MADs (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Deduplicate common ibmvfc_cmd init code (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Use correlation token to tag commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Remove trailing semicolon (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Byte swap login_buf.resp values in attribute show functions (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Interface updates for future FPIN and MQ support (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Protect vhost->task_set increment by the host lock (Desnes Augusto Nunes do Rosario) [1868055] - [net] tcp: Fix potential use-after-free due to double kfree() (Florian Westphal) [1915164] - [nvdimm] libnvdimm/region: Enable MAP_SYNC for volatile regions (Steve Best) [1916650] - [net] bpf: Permit cond_resched for some iterators (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix PID fetching with a lot of results (Yauheni Kaliuta) [1874005] - [net] bpf: verifier: Use target program's type for access verifications (Yauheni Kaliuta) [1874005] - [tools] selftests: bpf: Test sockmap update from BPF (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Allow update from BPF (Yauheni Kaliuta) [1874005] - [net] bpf: Override the meaning of ARG_PTR_TO_MAP_VALUE for sockmap and sockhash (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Call sock_map_update_elem directly (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Merge sockmap and sockhash update functions (Yauheni Kaliuta) [1874005] - [net] net: sk_msg: Simplify sk_psock initialization (Yauheni Kaliuta) [1874005] - [net] bpf: Enforce id generation for all may-be-null register type (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Cleanup bpf_load.o from Makefile (Yauheni Kaliuta) [1874005] - [include] bpf: Plug hole in struct bpf_sk_lookup_kern (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix endianness issues in sk_lookup/ctx_narrow_access (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix build slowdown (Yauheni Kaliuta) [1874005] - [net] bpf: Fix scalar32_min_max_or bounds tracking (Yauheni Kaliuta) [1874005] - [net] bpf: Fix "unresolved symbol" build error with resolve_btfids (Yauheni Kaliuta) [1874005] - [powerpc] bpf, powerpc: Fix misuse of fallthrough in bpf_jit_comp() (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix XDP program load regression for old kernels (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix native endian assumption when parsing BTF (Yauheni Kaliuta) [1874005] - [include] bpf: Prevent .BTF section elimination (Yauheni Kaliuta) [1874005] - [net] bpf: Fix sysfs export of empty BTF section (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Support passing BPFTOOL_VERSION to make (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a rcu warning for bpffs map pretty-print (Yauheni Kaliuta) [1874005] - [net] bpf: Bpf_skc_to_* casting helpers require a NULL check on sk (Yauheni Kaliuta) [1874005] - [documentation] docs/bpf: Remove source code links (Yauheni Kaliuta) [1874005] - [documentation] docs/bpf: Fix ringbuf documentation (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix VERSIONED_SYM_COUNT number parsing (Yauheni Kaliuta) [1874005] - [tools] tools/libbpf: Avoid counting local symbols in ABI check (Yauheni Kaliuta) [1874005] - [net] bpf: Fix clobbering of r2 in bpf_gen_ld_abs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add bpf_{update, delete}_map_elem in hashmap iter program (Yauheni Kaliuta) [1874005] - [net] bpf: Do not use bucket_lock for hashmap iterator (Yauheni Kaliuta) [1874005] - [tools] libbpf: Remove arch-specific include path in Makefile (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: build: Make sure resolve_btfids cleans up after itself (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix build failure from uninitialized variable warning (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix massive output from test_maps (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix test_progs-flavor run getting number of tests (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a buffer out-of-bound access when filling raw_tp link_info (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix two typos in uapi/linux/bpf.h (Yauheni Kaliuta) [1874005] - [tools] tools/resolve_btfids: Fix sections with wrong alignment (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix map index used in error message (Yauheni Kaliuta) [1874005] - [tools] bpftool: Handle EAGAIN error code properly in pids collection (Yauheni Kaliuta) [1874005] - [net] bpf: Avoid visit same object multiple times (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a rcu_sched stall issue with bpf task/task_file iterator (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix build on ppc64le architecture (Yauheni Kaliuta) [1874005] - [net] bpf: Use get_file_rcu() instead of get_file() for task_file iterator (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Make test_varlen work with 32-bit user-space arch (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Generate data section struct with conservative alignment (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Correct various core_reloc 64-bit assumptions (Yauheni Kaliuta) [1874005] - [tools] libbpf: Enforce 64-bitness of BTF for BPF object files (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix btf_dump test cases on 32-bit arches (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle BTF pointer sizes more carefully (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix BTF-defined map-in-map initialization on 32-bit host arches (Yauheni Kaliuta) [1874005] - [tools] selftest/bpf: Fix compilation warnings in 32-bit mode (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix compilation warnings in 32-bit mode (Yauheni Kaliuta) [1874005] - [documentation] doc: Add link to bpf helpers man page (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests to sock_ops for loading sk (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests for sock_ops load with r9, r8.r7 registers (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests for ctx access in sock_ops with single register (Yauheni Kaliuta) [1874005] - [net] bpf: sock_ops sk access may stomp registers when dst_reg = src_reg (Yauheni Kaliuta) [1874005] - [net] bpf: sock_ops ctx access may stomp registers in corner case (Yauheni Kaliuta) [1874005] - [net] net/core/filter.c: Use sizeof_field() macro (Yauheni Kaliuta) [1874005] - [tools] libbpf: Prevent overriding errno when logging errors (Yauheni Kaliuta) [1874005] - [net] bpf: Iterate through all PT_NOTE sections when looking for build id (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle GCC built-in types for Arm NEON (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Make skeleton code C++17-friendly by dropping typeof() (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix v4_to_v6 in sk_lookup (Yauheni Kaliuta) [1874005] - [tools] libbpf: Do not use __builtin_offsetof for offsetof (Yauheni Kaliuta) [1874005] - [net] bpf: Delete repeated words in comments (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix silent Makefile output (Yauheni Kaliuta) [1874005] - [documentation] bpf, doc: Remove references to warning message when using bpf_trace_printk() (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix compilation warning of selftests (Yauheni Kaliuta) [1874005] - [kernel] bpf: Remove inline from bpf_do_trace_printk (Yauheni Kaliuta) [1874005] - [tools] bpf: Add missing return to resolve_btfids (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Support new uapi for map element bpf iterator (Yauheni Kaliuta) [1874005] - [net] bpf: Change uapi for bpf iterator map elements (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Prevent runqslower from racing on building bpftool (Yauheni Kaliuta) [1874005] - [net] bpf: Allow to specify ifindex for skb in bpf_prog_test_run_skb (Yauheni Kaliuta) [1874005] - [net] bpf: Setup socket family and addresses in bpf_prog_test_run_skb (Yauheni Kaliuta) [1874005] - [tools] tools/resolve_btfids: Use libbpf's btf__parse() API (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Use libbpf's btf__parse() API for parsing BTF from file (Yauheni Kaliuta) [1874005] - [tools] libbf: Fix uninitialized pointer at btf__parse_raw() (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add btf__parse_raw() and generic btf__parse() APIs (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Fix wrong return value in do_dump() (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix spurious test failures in core_retro selftest (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add documentation and bash-completion for `link detach` (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add `link detach` subcommand (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add bpf_link detach APIs (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Use single cgroup helpers for both test_sockmap/progs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix register in PT_REGS MIPS macros (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make destructors more robust by handling ERR_PTR(err) cases (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Omit nodad flag when adding addresses to loopback (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Don't destroy failed link (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add xdpdrv mode for test_xdp_redirect (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Verify socket storage in cgroup/sock_{create, release} (Yauheni Kaliuta) [1874005] - [net] bpf: Expose socket storage to BPF_PROG_TYPE_CGROUP_SOCK (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test bpf_iter buffer access with negative offset (Yauheni Kaliuta) [1874005] - [net] bpf: Add missing newline characters in verifier error messages (Yauheni Kaliuta) [1874005] - [arm64] bpf, arm64: Add BPF exception tables (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: use :: 1 for localhost in tcp_server.py (Yauheni Kaliuta) [1874005] - [net] bpf: Fix swapped arguments in calls to check_buffer_access (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add new bpf_iter context structs to fix build on old kernels (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix bpf_ringbuf_output() signature to return long (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Add LSM type to array of prog names (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Skip type probe if name is not found (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for BPF XDP link (Yauheni Kaliuta) [1874005] - [include] bpf: Make bpf_link API available indepently of CONFIG_BPF_SYSCALL (Yauheni Kaliuta) [1874005] - [net] bpf: Fix build on architectures with special bpf_user_pt_regs_t (Yauheni Kaliuta) [1874005] - [net] bpf/local_storage: Fix build without CONFIG_CGROUP (Yauheni Kaliuta) [1874005] - [documentation] Documentation/bpf: Document CGROUP_STORAGE map type (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test CGROUP_STORAGE behavior on shared egress + ingress (Yauheni Kaliuta) [1874005] - [net] bpf: Make cgroup storages shared between programs on the same cgroup (Yauheni Kaliuta) [1874005] - [net] cgroup: use cgrp->kn->id as the cgroup ID (Yauheni Kaliuta) [1874005] - [net] netprio: use css ID instead of cgroup ID (Yauheni Kaliuta) [1874005] - [fs] kernfs: convert kernfs_node->id from union kernfs_node_id to u64 (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add get_stackid_cannot_attach (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test CGROUP_STORAGE map can't be used by multiple progs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add callchain_stackid (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for CGROUP_STORAGE map on multiple attaches (Yauheni Kaliuta) [1874005] - [tools] libbpf: Print hint when PERF_EVENT_IOC_SET_BPF returns -EPROTO (Yauheni Kaliuta) [1874005] - [net] bpf: Fail PERF_EVENT_IOC_SET_BPF when bpf_get_cannot work (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add a test for out of bound rdonly buf access (Yauheni Kaliuta) [1874005] - [net] bpf: Separate bpf_get_for perf events BPF (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add a test for bpf sk_storage_map iterator (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for bpf array map iterators (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for bpf hash map iterators (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add bpftool support for bpf map element iterator (Yauheni Kaliuta) [1874005] - [tools] tools/libbpf: Add support for bpf map element iterator (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for sock local storage map (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for array maps (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for hash maps (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for map elements (Yauheni Kaliuta) [1874005] - [net] bpf: Fix pos computation for bpf_iter seq_ops->start() (Yauheni Kaliuta) [1874005] - [net] bpf: Support readonly/readwrite buffers in verifier (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test BPF socket lookup and reuseport with connections (Yauheni Kaliuta) [1874005] - [net] bpf: Refactor to provide aux info to bpf_iter_init_seq_priv_t (Yauheni Kaliuta) [1874005] - [net] bpf: Refactor bpf_iter_reg to have separate seq_info member (Yauheni Kaliuta) [1874005] - [net] bpf: Add bpf_prog iterator (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Strip BPF .o files before skeleton generation (Yauheni Kaliuta) [1874005] - [documentation] docs: bpf/bpf_devel_QA.rst: fix reference to nonexistent document (Yauheni Kaliuta) [1874005] - [documentation] docs: bpf/index.rst: Add ringbuf.rst (Yauheni Kaliuta) [1874005] - [tools] bpftool: Use only nftw for file tree parsing (Yauheni Kaliuta) [1874005] - [net] bpf: net: Use precomputed btf_id for bpf iterators (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix test_lwt_seg6local.sh hangs (Yauheni Kaliuta) [1874005] - [net] bpf: Make btf_sock_ids global (Yauheni Kaliuta) [1874005] - [tools] bpf: Add BTF_ID_LIST_GLOBAL in btf_ids.h (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Sync btf_ids.h to tools (Yauheni Kaliuta) [1874005] - [net] bpf: Compute bpf_skc_to_*() helper socket btf ids at build time (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix error handing in do_skeleton() (Yauheni Kaliuta) [1874005] - [tools] libbpf bpf_helpers: Use __builtin_offsetof for offsetof (Yauheni Kaliuta) [1874005] - [s390] s390/bpf: Use bpf_skip() in bpf_jit_prologue() (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Fix possible rcpu kthread hung (Yauheni Kaliuta) [1874005] - [s390] s390/bpf: implement BPF_PROBE_MEM (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/kernel: expand exception table logic to allow new handling options (Yauheni Kaliuta) [1874005 1868273] - [s390] s390: fix __EMIT_BUG() macro (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/bug: add entry size to the __bug_table section (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/kernel: unify EX_TABLE* implementations (Yauheni Kaliuta) [1874005 1868273] - [tools] selftests/bpf: Tests for BPF_SK_LOOKUP attach point (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add verifier tests for bpf_sk_lookup context access (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add name mappings for SK_LOOKUP prog and attach type (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for SK_LOOKUP program type (Yauheni Kaliuta) [1874005] - [tools] bpf: Sync linux/bpf.h to tools/ (Yauheni Kaliuta) [1874005] - [include] bpf: Introduce SK_LOOKUP program type with a dedicated attach point (Yauheni Kaliuta) [1874005] - [net] bpf, netns: Handle multiple link attachments (Yauheni Kaliuta) [1874005] - [tools] bpf: Drop duplicated words in uapi helper comments (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix possible hang in sockopt_inherit (Yauheni Kaliuta) [1874005] - [tools] selftest: Add tests for XDP programs in CPUMAP entries (Yauheni Kaliuta) [1874005] - [samples] samples/bpf: xdp_redirect_cpu: Load a eBPF program on cpumap (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add SEC name for xdp programs attached to CPUMAP (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Implement XDP_REDIRECT for eBPF programs attached to map entries (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Add the possibility to attach an eBPF program to cpumap (Yauheni Kaliuta) [1874005] - [net] net: Refactor xdp_convert_buff_to_frame (Yauheni Kaliuta) [1874005] - [net] cpumap: Formalize map value as a named struct (Yauheni Kaliuta) [1874005] - [samples] samples/bpf: xdp_redirect_cpu_user: Do not update bpf maps in option loop (Yauheni Kaliuta) [1874005] - [net] cpumap: Use non-locked version __ptr_ring_consume_batched (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Consolidate powerpc instructions from bpf_jit.h (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/bpf_jit: Reuse instruction macros from ppc-opcode.h (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Move ppc instruction encoding from test_emulate_step (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/lib: Fix emulate_step() std test (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Introduce PPC_RAW_* macros for base instruction encoding (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix cross build for CONFIG_DEBUG_INFO_BTF option (Yauheni Kaliuta) [1874005] - [include] bpf: Fix build for disabled CONFIG_DEBUG_INFO_BTF option (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Strip away modifiers from global variables (Yauheni Kaliuta) [1874005] - [tools] libbpf: Support stripping modifiers for btf_dump (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add selftests verifying bpf_trace_printk() behaviour (Yauheni Kaliuta) [1874005] - [kernel] bpf: Use dedicated bpf_trace_printk event instead of trace_printk() (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Remove warning about PID iterator support (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for resolve_btfids (Yauheni Kaliuta) [1874005] - [tools] tools headers: Adopt verbatim copy of btf_ids.h from kernel sources (Yauheni Kaliuta) [1874005] - [documentation] bpf: Add info about .BTF_ids section to btf.rst (Yauheni Kaliuta) [1874005] - [net] bpf: Use BTF_ID to resolve bpf_ctx_convert struct (Yauheni Kaliuta) [1874005] - [net] bpf: Remove btf_id helpers resolving (Yauheni Kaliuta) [1874005] - [net] bpf: Resolve BTF IDs in vmlinux image (Yauheni Kaliuta) [1874005] - [include] bpf: Add BTF_ID_LIST/BTF_ID/BTF_ID_UNUSED macros (Yauheni Kaliuta) [1874005] - [net] bpf: Support llvm-objcopy for vmlinux BTF (Yauheni Kaliuta) [1874005] - [powerpc] powerpc: Include .BTF section (Yauheni Kaliuta) [1874005] - [scripts] kbuild: Remove debug info from kallsyms linking (Yauheni Kaliuta) [1874005] - [scripts] kbuild: Parameterize kallsyms generation and correct reporting (Yauheni Kaliuta) [1874005] - [tools] bpf: Compile resolve_btfids tool at kernel compilation start (Yauheni Kaliuta) [1874005] - [kernel] tracing: Make struct ring_buffer less ambiguous (Yauheni Kaliuta) [1874005] - [kernel] tracing: Rename trace_buffer to array_buffer (Yauheni Kaliuta) [1874005] - [tools] tools headers: Synchronize linux/bits.h with the kernel sources (Yauheni Kaliuta) [1874005] - [tools] tools headers: Update linux/vdso.h and grab a copy of vdso/const.h (Yauheni Kaliuta) [1874005] - [tools] tools headers: Adopt verbatim copy of compiletime_assert() from kernel sources (Yauheni Kaliuta) [1874005] - [tools] objtool: Query pkg-config for libelf location (Yauheni Kaliuta) [1874005] - [tools] bpf: Add resolve_btfids tool to resolve BTF IDs in ELF object (Yauheni Kaliuta) [1874005] - [samples] bpf: Fix fds_example SIGSEGV error (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix memory leak and optimize BTF sanitization (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Switch perf_buffer test to tracepoint and skeleton (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle missing BPF_OBJ_GET_INFO_BY_FD gracefully in perf_buffer (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test relying only on CO-RE and no recent kernel features (Yauheni Kaliuta) [1874005] - [tools] libbpf: Improve BTF sanitization handling (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add btf__set_fd() for more control over loaded BTF FD (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make BTF finalization strict (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: test_progs avoid minus shell exit codes (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: test_progs use another shell exit on non-actions (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix another bpftool segfault without skeleton code enabled (Yauheni Kaliuta) [1874005] - [tools] selftests: bpf: Remove unused bpf_map_def_legacy struct (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Refactor BPF map performance test with libbpf (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Refactor BPF map in map test with libbpf (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Fix bpf programs with kprobe/sys_connect event (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [tools] bpftool: Add support for BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [net] bpf: Add BPF_CGROUP_INET_SOCK_RELEASE hook (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix compilation error of bpf_iter_task_stack.c (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix bpftool without skeleton code enabled (Yauheni Kaliuta) [1874005] - [net] bpf: Fix build without CONFIG_STACKTRACE (Yauheni Kaliuta) [1874005] - [tools] bpf: selftests: Restore netns after each test (Yauheni Kaliuta) [1874005] - [tools] bpf: selftests: A few improvements to network_helpers.c (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs option for listing test names (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs option for getting number of tests (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs indicate to shell on non-actions (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Turn off -Wnested-externs warning (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Switch test_vmlinux to use hrtimer_range_start_ns (Yauheni Kaliuta) [1874005] - [net] bpf: Fix net/core/filter build errors when INET is not enabled (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add bpf_iter test with bpf_get_task_stack() (Yauheni Kaliuta) [1874005] - [kernel] bpf: Allow pB in bpf_seq_printf() and bpf_trace_printk() (Yauheni Kaliuta) [1874005] - [net] bpf: Introduce helper bpf_get_task_stack() (Yauheni Kaliuta) [1874005] - [net] bpf: Remove redundant synchronize_rcu (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add byte swapping selftest (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make bpf_endian co-exist with vmlinux.h (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Allow substituting custom vmlinux.h for selftests build (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Allow substituting custom vmlinux.h for the build (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test auto-load disabling logic for BPF programs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Support disabling auto-loading BPF programs (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Define attach_type_name array only once (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Define prog_type_name array only once (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add tcp/udp iterator programs to selftests (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Implement sample udp/udp6 bpf_iter programs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Implement sample tcp/tcp6 bpf_iter programs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add more common macros to bpf_tracing_net.h (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Refactor some net macros to bpf_tracing_net.h (Yauheni Kaliuta) [1874005] - [kernel] bpf: Add bpf_skc_to_udp6_sock() helper (Yauheni Kaliuta) [1874005] - [net] net: bpf: Implement bpf iterator for udp (Yauheni Kaliuta) [1874005] - [net] net: bpf: Add bpf_seq_afinfo in udp_iter_state (Yauheni Kaliuta) [1874005] - [kernel] bpf: Add bpf_skc_to_{tcp, tcp_timewait, tcp_request}_sock() helpers (Yauheni Kaliuta) [1874005] - [net] bpf: Add bpf_skc_to_tcp6_sock() helper (Yauheni Kaliuta) [1874005] - [kernel] bpf: Allow tracing programs to use bpf_jiffies64() helper (Yauheni Kaliuta) [1874005] - [kernel] bpf: Support 'X' in bpf_seq_printf() helper (Yauheni Kaliuta) [1874005] - [net] net: bpf: Implement bpf iterator for tcp (Yauheni Kaliuta) [1874005] - [net] net: bpf: Add bpf_seq_afinfo in tcp_iter_state (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Workaround for get_stack_rawtp test (Yauheni Kaliuta) [1874005] - [tools] libbpf: Prevent loading vmlinux BTF twice (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix spelling mistake "kallasyms" -> "kallsyms" (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Fix variable shadowing in emit_obj_refs_json() (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Correctly evaluate $(BUILD_BPF_SKELS) in Makefile (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add variable-length data concat pattern less than test (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add variable-length data concatenation pattern test (Yauheni Kaliuta) [1874005] - [tools] bpf: Switch most helper return values from 32-bit int to 64-bit long (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add documentation and sample output for process info (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Show info for processes holding BPF map/prog/link/btf FDs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Wrap source argument of BPF_CORE_READ macro in parentheses (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Generalize BPF skeleton support and generate vmlinux.h (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Minimize bootstrap bpftool (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Move map/prog parsing logic into common (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add __ksym extern selftest (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for extracting kernel symbol addresses (Yauheni Kaliuta) [1874005] - [tools] libbpf: Generalize libbpf externs support (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add a bunch of attribute getters/setters for map definitions (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test access to bpf map pointer (Yauheni Kaliuta) [1874005] - [net] bpf: Set map_btf_{name, id} for all map types (Yauheni Kaliuta) [1874005] - [net] bpf: Support access to bpf map fields (Yauheni Kaliuta) [1874005] - [net] bpf: Rename bpf_htab to bpf_shtab in sock_map (Yauheni Kaliuta) [1874005] - [net] bpf: Switch btf_parse_vmlinux to btf_find_by_name_kind (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Relicense bpftool's BPF profiler prog as dual-license GPL/BSD (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Add verifier tests for 32bit pointer/scalar arithmetic (Yauheni Kaliuta) [1874005] - [net] bpf: Avoid verifier failure for 32bit pointer arithmetic (Yauheni Kaliuta) [1874005] - [net] bpf: sk_storage: Prefer to get a free cache_idx (Yauheni Kaliuta) [1874005] - [tools] libbpf: Bump version to 0.1.0 (Yauheni Kaliuta) [1874005] - [s390] s390/pci: fix hot-plug of PCI function missing bus (Philipp Rudo) [1915916] - [net] tcp: fix race condition when creating child sockets from syncookies (Florian Westphal) [1915164] - [netdrv] bonding: set xfrm feature flags more sanely (Jarod Wilson) [1893979] - [netdrv] bonding: fix feature flag setting at init time (Jarod Wilson) [1893979]- [fs] cifs: handle -EINTR in cifs_setattr (Leif Sahlberg) [1848178] - [tty] serial: 8250: drop the printk from serial8250_interrupt() (Vitaly Kuznetsov) [1919745] - [fs] cifs: do not fail __smb_send_rqst if non-fatal signals are pending (Leif Sahlberg) [1848178] - [netdrv] ibmvnic: continue fatal error reset after passive init (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix: NULL pointer dereference (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix login buffer memory leak (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix rx buffer tracking and index management in replenish_rx_pool partial success (Diego Domingos) [1901513] - [netdrv] ibmvnic: add some debugs (Diego Domingos) [1901513] - [netdrv] ibmvnic: Fix TX completion error handling (Diego Domingos) [1901513] - [netdrv] ibmvnic: Ensure that SCRQ entry reads are correctly ordered (Diego Domingos) [1901513] - [netdrv] ibmvnic: reduce wait for completion time (Diego Domingos) [1901513] - [netdrv] ibmvnic: no reset timeout for 5 seconds after reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: send_login should check for crq errors (Diego Domingos) [1901513] - [netdrv] ibmvnic: track pending login (Diego Domingos) [1901513] - [netdrv] ibmvnic: delay next reset if hard reset fails (Diego Domingos) [1901513] - [netdrv] ibmvnic: restore adapter state on failed reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: avoid memset null scrq msgs (Diego Domingos) [1901513] - [netdrv] ibmvnic: stop free_all_rwi on failed reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: handle inconsistent login with reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: enhance resetting status check during module exit (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues (Diego Domingos) [1901513] - [netdrv] ibmvnic: skip tx timeout reset while in resetting (Diego Domingos) [1901513] - [netdrv] ibmvnic: notify peers when failover and migration happen (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix call_netdevice_notifiers in do_reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: Do not replenish RX buffers after every polling loop (Diego Domingos) [1901513] - [netdrv] ibmvnic: Use netdev_alloc_skb instead of alloc_skb to replenish RX buffers (Diego Domingos) [1901513] - [netdrv] ibmvnic: Correctly re-enable interrupts in NAPI polling routine (Diego Domingos) [1901513] - [netdrv] ibmvnic: Ensure that device queue memory is cache-line aligned (Diego Domingos) [1901513] - [netdrv] ibmvnic: Remove send_subcrq function (Diego Domingos) [1901513] - [netdrv] ibmvnic: Clean up TX code and TX buffer data structure (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce xmit_more support using batched subCRQ hcalls (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce batched RX buffer descriptor transmission (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce indirect subordinate Command Response Queue buffer (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix ibmvnic_set_mac (Diego Domingos) [1901513] - [netdrv] ibmvnic: save changed mac address to adapter->mac_addr (Diego Domingos) [1901513] - [netdrv] ibmvnic: create send_control_ip_offload (Diego Domingos) [1901513] - [netdrv] ibmvnic: create send_query_ip_offload (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename send_map_query to send_query_map (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename ibmvnic_send_req_caps to send_request_cap (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename send_cap_queries to send_query_cap (Diego Domingos) [1901513] - [netdrv] ibmvnic: set up 200GBPS speed (Diego Domingos) [1901513] - [netdrv] Revert "ibmvnic: remove never executed if statement" (Diego Domingos) [1901513] - [netdrv] ibmvnic: Harden device Command Response Queue handshake (Diego Domingos) [1901513] - [netdrv] ibmvnic: Fix use-after-free of VNIC login response buffer (Diego Domingos) [1901513] - [netdrv] ibmvnic: merge ibmvnic_reset_init and ibmvnic_init (Diego Domingos) [1901513] - [netdrv] ibmvnic: remove never executed if statement (Diego Domingos) [1901513] - [netdrv] ibmvnic: improve ibmvnic_init and ibmvnic_reset_init (Diego Domingos) [1901513] - [netdrv] ibmvnic: compare adapter->init_done_rc with more readable ibmvnic_rc_codes (Diego Domingos) [1901513] - [netdrv] ibmvnic: store RX and TX subCRQ handle array in ibmvnic_adapter struct (Diego Domingos) [1901513] - [netdrv] net: ibm: fix return type of ndo_start_xmit function (Diego Domingos) [1901513] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (David Arcari) [1916478] - [x86] x86/cpu/amd: Call init_amd_zn() om Family 19h processors too (David Arcari) [1916478] - [ata] ahci: Add Intel Emmitsburg PCH RAID PCI IDs (David Arcari) [1894284] - [vfio] vfio iommu: Add dma available capability (Philipp Rudo) [1903970] - [x86] x86/entry/64: Do not include inst.h in calling.h (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix GS == 1, 2, and 3 tests (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Reap a forgotten child (Scott Wood) [1490498] - [x86] x86/fsgsbase: Replace static_cpu_has() with boot_cpu_has() (Scott Wood) [1490498] - [x86] x86/entry/64: Correct the comment over SAVE_AND_SET_GSBASE (Scott Wood) [1490498] - [x86] x86/entry/64: Do not use RDPID in paranoid entry to accomodate KVM (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task (Scott Wood) [1490498] - [x86] x86/fsgsbase: Fix Xen PV support (Scott Wood) [1490498] - [x86] x86/ptrace: Fix 32-bit PTRACE_SETREGS vs fsbase and gsbase (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Add a missing memory constraint (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix a comment in the ptrace_write_gsbase test (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base write (Scott Wood) [1490498] - [documentation] Documentation/x86/64: Add documentation for GS/FS addressing mode (Scott Wood) [1490498] - [x86] x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 (Scott Wood) [1490498] - [x86] x86/cpu: Enable FSGSBASE on 64bit by default and add a chicken bit (Scott Wood) [1490498] - [x86] x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit (Scott Wood) [1490498] - [x86] x86/entry/64: Remove TRACE_IRQS_*_DEBUG (Scott Wood) [1490498] - [x86] x86/entry/64: Introduce the FIND_PERCPU_BASE macro (Scott Wood) [1490498] - [x86] x86/entry/64: Switch CR3 before SWAPGS in paranoid entry (Scott Wood) [1490498] - [x86] x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation (Scott Wood) [1490498] - [x86] x86/process/64: Use FSGSBASE instructions on thread copy and ptrace (Scott Wood) [1490498] - [x86] x86/process: Unify copy_thread_tls() (Scott Wood) [1490498] - [x86] x86/process/64: Use FSBSBASE in switch_to() if available (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions (Scott Wood) [1490498] - [x86] x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE (Scott Wood) [1490498] - [x86] x86/ptrace: Prevent ptrace from clearing the FS/GS selector (Scott Wood) [1490498] - [x86] x86/ptrace: Document FSBASE and GSBASE ABI oddities (Scott Wood) [1490498] - [x86] Revert "x86/ptrace: Prevent ptrace from clearing the FS/GS selector" and fix the test (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix some test case bugs (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test ptracer-induced GSBASE write with FSGSBASE (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test RD/WRGSBASE (Scott Wood) [1490498] - [documentation] kbuild: Raise the minimum required binutils version to 2.21 (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test ptracer-induced GSBASE write (Scott Wood) [1490498] - [x86] x86/ptrace: Prevent ptrace from clearing the FS/GS selector (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix the base write helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Clean up various details (Scott Wood) [1490498] - [x86] x86/segments: Introduce the 'CPUNODE' naming to better document the segment limit CPU/node NR trick (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Factor out FS/GS segment loading from __switch_to() (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Convert the ELF core dump code to the new FSGSBASE helpers (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Make ptrace use the new FS/GS base helpers (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Introduce FS/GS base helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix ptrace() to read the FS/GS base accurately (Scott Wood) [1490498] - [net] esp: select CRYPTO_SEQIV (Vladis Dronov) [1905088] - [crypto] treewide: Use fallthrough pseudo-keyword (Vladis Dronov) [1905088] - [crypto] crypto: drbg - always try to free Jitter RNG instance (Vladis Dronov) [1905088] - [crypto] crypto: drbg - should select CTR (Vladis Dronov) [1905088] - [crypto] crypto: ctr - no longer needs CRYPTO_SEQIV (Vladis Dronov) [1905088] - [crypto] crypto: drbg - always seeded with SP800-90B compliant noise source (Vladis Dronov) [1905088] - [crypto] crypto: jitter - SP800-90B compliance (Vladis Dronov) [1905088] - [crypto] crypto: jitter - add header to fix buildwarnings (Vladis Dronov) [1905088] - [crypto] crypto: jitter - fix comments (Vladis Dronov) [1905088] - [crypto] crypto: jitter - update implementation to 2.1.2 (Vladis Dronov) [1905088] - [crypto] crypto: drbg - in-place cipher operation for CTR (Vladis Dronov) [1905088] - [crypto] crypto: drbg - eliminate constant reinitialization of SGL (Vladis Dronov) [1905088] - [vfio] vfio/pci: Implement ioeventfd thread handler for contended memory lock (Alex Williamson) [1861560] - [vfio] vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages (Alex Williamson) [1896568] - [vfio] vfio/pci: Clear token on bypass registration failure (Alex Williamson) [1896568] - [vfio] vfio/type1: fix dirty bitmap calculation in vfio_dma_rw (Alex Williamson) [1497898] - [vfio] vfio: fix a missed vfio group put in vfio_pin_pages (Alex Williamson) [1497898] - [vfio] vfio: add a singleton check for vfio_group_pin_pages (Alex Williamson) [1497898] - [vfio] vfio/pci: Don't regenerate vconfig for all BARs if !bardirty (Alex Williamson) [1896568] - [vfio] vfio/pci: Remove redundant declaration of vfio_pci_driver (Alex Williamson) [1896568] - [uapi] vfio: Fix typo of the device_state (Alex Williamson) [1497898] - [vfio] vfio/type1: Add proper error unwind for vfio_iommu_replay() (Alex Williamson) [1866141] - [vfio] vfio-pci: Avoid recursive read-lock usage (Alex Williamson) [1861560] - [vfio] vfio/type1: Refactor vfio_iommu_type1_ioctl() (Alex Williamson) [1896568] - [vfio] vfio/pci: Add QAT devices to denylist (Alex Williamson) [1896565] - [vfio] vfio/pci: Add device denylist (Alex Williamson) [1896565] - [vfio] vfio/pci: Hold igate across releasing eventfd contexts (Alex Williamson) [1896568] - [vfio] vfio/type1: Add conditional rescheduling after iommu map failed (Alex Williamson) [1896568] - [vfio] vfio/pci: Add Intel X550 to hidden INTx devices (Alex Williamson) [1896567] - [vfio] vfio: Cleanup allowed driver naming (Alex Williamson) [1896568] - [uapi] vfio/type1: Fix migration info capability ID (Alex Williamson) [1497898] - [vfio] vfio iommu: typecast corrections (Alex Williamson) [1497898] - [vfio] vfio iommu: Use shift operation for 64-bit integer division (Alex Williamson) [1497898] - [vfio] vfio/mdev: Fix reference count leak in add_mdev_supported_type (Alex Williamson) [1896568] - [vfio] vfio: Selective dirty page tracking if IOMMU backed device pins pages (Alex Williamson) [1497898] - [vfio] vfio iommu: Add migration capability to report supported features (Alex Williamson) [1497898] - [vfio] vfio iommu: Update UNMAP_DMA ioctl to get dirty bitmap before unmap (Alex Williamson) [1497898] - [vfio] vfio iommu: Implementation of ioctl for dirty pages tracking (Alex Williamson) [1497898] - [uapi] vfio iommu: Add ioctl definition for dirty pages tracking (Alex Williamson) [1497898] - [vfio] vfio iommu: Cache pgsize_bitmap in struct vfio_iommu (Alex Williamson) [1497898] - [vfio] vfio iommu: Remove atomicity of ref_count of pinned pages (Alex Williamson) [1497898] - [uapi] vfio: UAPI for migration interface for device state (Alex Williamson) [1497898] - [vfio] vfio/pci: Remove dev_fmt definition (Alex Williamson) [1896568] - [vfio] vfio: Use dev_printk() when possible (Alex Williamson) [1896568] - [drm] drm: allow limiting the scatter list size (Lyude Paul) [1876018 1851790] - [drm] drm/nouveau/kms/nv50-: Fix clock checking algorithm in nv50_dp_mode_valid() (Lyude Paul) [1876018] - [drm] drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid() (Lyude Paul) [1876018] - [drm] DRM Backport 5.8 -> 5.9 (Lyude Paul) [1876018] - [drm] drm/edid: Fix uninitialized variable in drm_cvt_modes() (Lyude Paul) [1876018] - [of] of_graph: add of_graph_is_present() (Lyude Paul) [1876018] - [drm] virtio: virtio_has_iommu_quirk -> virtio_has_dma_quirk (Lyude Paul) [1876018] - [vhost] virtio: VIRTIO_F_IOMMU_PLATFORM -> VIRTIO_F_ACCESS_PLATFORM (Lyude Paul) [1876018] - [include] virtio_config: LE config space accessors (Lyude Paul) [1876018] - [kernel] sched: Remove sched_set_*() return value (Lyude Paul) [1876018] - [include] scatterlist: protect parameters of the sg_table related macros (Lyude Paul) [1876018] - [include] scatterlist: add generic wrappers for iterating over sgtable objects (Lyude Paul) [1876018] - [dma] dma-mapping: add generic helpers for mapping sgtable objects (Lyude Paul) [1876018] - [drm] DRM Backport 5.7 -> 5.8 (Lyude Paul) [1876018] - [drm] drm/fb-helper: Fix vt restore (Lyude Paul) [1876018] - [tty] tty/sysrq: constify the the sysrq_key_op(s) (Lyude Paul) [1876018] - [tools] augmented rbtree: rework the RB_DECLARE_CALLBACKS macro definition (Lyude Paul) [1876018] - [mm] augmented rbtree: add new RB_DECLARE_CALLBACKS_MAX macro (Lyude Paul) [1876018] - [tools] augmented rbtree: add comments for RB_DECLARE_CALLBACKS macro (Lyude Paul) [1876018] - [tools] rbtree: avoid generating code twice for the cached versions (tools copy) (Lyude Paul) [1876018] - [tty] tty/sysrq: constify the sysrq API (Lyude Paul) [1876018] - [tty] tty/sysrq: alpha: export and use __sysrq_get_key_op() (Lyude Paul) [1876018] - [include] uaccess: Add user_read_access_begin/end and user_write_access_begin/end (Lyude Paul) [1876018] - [PATCH] [drm] DRM Backport 5.6 -> 5.7 (Lyude Paul) [1876018] - [vfio] vfio: avoid inefficient operations on VFIO group in vfio_pin/unpin_pages (Lyude Paul) [1876018] - [vfio] vfio: allow external user to get vfio group from device (Lyude Paul) [1876018] - [drm] drm/fbdev-helper: don't force restores (Lyude Paul) [1876018] - [include] vgaswitcheroo: call fbcon_remap_all directly (Lyude Paul) [1876018] - [video] fbcon: Do not takeover the console from atomic context (Lyude Paul) [1878805 1876018] - [video] fbcon: Only defer console takeover if the current console driver is the dummycon (Lyude Paul) [1878805 1876018] - [video] fbcon: Only allow FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER if fbdev is builtin (Lyude Paul) [1878805 1876018] - [video] console/fbcon: Add support for deferred console takeover (Lyude Paul) [1878805 1876018] - [video] fbcon: Call WARN_CONSOLE_UNLOCKED() where applicable (Lyude Paul) [1878805 1876018] - [mm] mm: Split huge pages on write-notify or COW (Chris von Recklinghausen) [1913692] - [mm] mm: Introduce vma_is_special_huge (Chris von Recklinghausen) [1913692]- [tools] kselftests: set rx/txtimestamp.sh to correct permission (Hangbin Liu) [1908269] - [tools] kselftests: set udpgro.sh, udpgro_bench.sh, reuseport_addr_any.sh to correct permission (Hangbin Liu) [1908269] - [net] DCB: Validate DCB_ATTR_DCB_BUFFER argument (Balazs Nemeth) [1891595] - [net] netlabel: remove unused param from audit_log_format() (Balazs Nemeth) [1891595] - [net] netlabel: fix problems with mapping removal (Balazs Nemeth) [1891595] - [net] af_key: pfkey_dump needs parameter validation (Balazs Nemeth) [1891595] - [tools] perf tools: Add 'evlist' control command (Jiri Olsa) [1844111] - [tools] perf tools: Allow to enable/disable events via control file (Jiri Olsa) [1844111] - [tools] perf tools: Add evlist__disable_evsel/evlist__enable_evsel (Jiri Olsa) [1844111] - [tools] perf tools: Reformat record's control fd man text (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' 'find' methods (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' enable event methods (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' 'toggle' methods (Jiri Olsa) [1844111] - [x86] perf/amd/uncore: Inform the user how many counters each uncore PMU has (Michael Petlan) [1884816] - [powercap] powercap: RAPL: Add AMD Fam19h RAPL support (Michael Petlan) [1884816] - [powercap] powercap: Add AMD Fam17h RAPL support (Michael Petlan) [1884816] - [powercap] powercap/intel_rapl_msr: Convert rapl_msr_priv into pointer (Michael Petlan) [1884816] - [x86] x86/msr-index: sort AMD RAPL MSRs by address (Michael Petlan) [1884816] - [thunderbolt] thunderbolt: Add support for Intel Maple Ridge (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add USB4 router operation proxy for firmware connection manager (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Move constants for USB4 router operations to tb_regs.h (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add connection manager specific hooks for USB4 router operations (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Pass TX and RX data directly to usb4_switch_op() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Pass metadata directly to usb4_switch_op() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Perform USB4 router NVM upgrade in two phases (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Return -ENOTCONN when ERR_CONN is received (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Keep the parent runtime resumed for a while on device disconnect (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Log adapter numbers in decimal in path activation/deactivation (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Log which connection manager implementation is used (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Move max_boot_acl field to correct place in struct icm (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Fix use-after-free in remove_unplugged_switch() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add DMA traffic test driver (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add support for end-to-end flow control (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Make it possible to allocate one directional DMA tunnel (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Create debugfs directory automatically for services (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add functions for enabling and disabling lane bonding on XDomain (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add link_speed and link_width to XDomain (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Create XDomain devices for loops back to the host (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Find XDomain by route instead of UUID (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Do not clear USB4 router protocol adapter IFC and ISE bits (Torez Smith) [1782721] - [net] ipv6: fib: flush exceptions when purging route (Hangbin Liu) [1916084] - [net] ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init (Hangbin Liu) [1916084] - [net] ipv6: remove unused function ipv6_skb_idev() (Hangbin Liu) [1916084] - [net] ipv6: Fix error path to cancel the meseage (Hangbin Liu) [1916084] - [tools] selftests/net/fib_tests: update addr_metric_test for peer route testing (Hangbin Liu) [1916084] - [net] net/ipv6: remove the old peer route if change it to a new one (Hangbin Liu) [1916084] - [tools] selftests/net: remove not backported tests (Hangbin Liu) [1908340] - [netdrv] bonding: add a vlan+srcmac tx hashing option (Jarod Wilson) [1724795] - [security] selinux: mark selinux_xfrm_refcount as __read_mostly (Ondrej Mosnacek) [1904940] - [net] udp: fix integer overflow while computing available space in sk_rcvbuf (Xin Long) [1916997] - [fs] NFSv4: make cache consistency bitmask dynamic (Steve Dickson) [1881647] - [include] NFSv4: Save a few bytes in the nfs_pgio_args/res (Steve Dickson) [1881647] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1884818 1908305] - [tools] perf test: Use generic event for expand_libpfm_events() (Michael Petlan) [1884818 1908305] - [tools] perf probe: Change function definition check due to broken DWARF (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fix to die_entrypc() returns error correctly (Michael Petlan) [1884818 1908305] - [tools] perf stat: Use proper cpu for shadow stats (Michael Petlan) [1884818 1908305] - [tools] perf record: Synthesize cgroup events only if needed (Michael Petlan) [1884818 1908305] - [tools] perf diff: Fix error return value in __cmd_diff() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Update copy of libbpf's hashmap.c (Michael Petlan) [1884818 1908305] - [tools] perf test: Avoid an msan warning in a copied stack (Michael Petlan) [1884818 1908305] - [tools] perf inject: Fix file corruption due to event deletion (Michael Petlan) [1884818 1908305] - [tools] perf test: Update branch sample pattern for cs-etm (Michael Petlan) [1884818 1908305] - [tools] perf test: Fix a typo in cs-etm testing (Michael Petlan) [1884818 1908305] - [tools] perf lock: Don't free "lock_seq_stat" if read_count isn't zero (Michael Petlan) [1884818 1908305] - [tools] perf lock: Correct field name "flags" (Michael Petlan) [1884818 1908305] - [tools] tools feature: Fixup fast path feature detection (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add missing swap for cgroup events (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add missing swap for ino_generation (Michael Petlan) [1884818 1908305] - [tools] perf tools: Initialize output buffer in build_id__sprintf (Michael Petlan) [1884818 1908305] - [tools] perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse() (Michael Petlan) [1884818 1908305] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1884818 1908305] - [tools] perf scripting python: Avoid declaring function pointers with a visibility attribute (Michael Petlan) [1884818 1908305] - [tools] perf tools: Remove broken __no_tail_call attribute (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Fix DRAM_BW_Use 0 issue for CLX/SKX (Michael Petlan) [1884818 1908305] - [tools] perf trace: Fix segfault when trying to trace events by cgroup (Michael Petlan) [1884818 1908305] - [tools] perf tools: Fix crash with non-jited bpf progs (Michael Petlan) [1884818 1908305] - [tools] perf tools: Update copy of libbpf's hashmap.c (Michael Petlan) [1884818 1908305] - [tools] perf tools: Remove LTO compiler options when building perl support (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Update documentation for metrics reorganization (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Add metrics "RMT Load Hit" (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Correct LLC load hit metrics (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Change header for LLC local hit (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Use more explicit headers for HITM (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Change header from "LLC Load Hitm" to "Load Hitm" (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Organize metrics based on memory hierarchy (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Display "Total Stores" as a standalone metrics (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Display the total numbers continuously (Michael Petlan) [1884818 1908305] - [tools] perf bench: Use condition variables in numa (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Fix event code for events referencing std arch events (Michael Petlan) [1884818 1908305] - [tools] perf diff: Support hot streams comparison (Michael Petlan) [1884818 1908305] - [tools] perf streams: Report hot streams (Michael Petlan) [1884818 1908305] - [tools] perf streams: Calculate the sum of total streams hits (Michael Petlan) [1884818 1908305] - [tools] perf streams: Link stream pair (Michael Petlan) [1884818 1908305] - [tools] perf streams: Compare two streams (Michael Petlan) [1884818 1908305] - [tools] perf streams: Get the evsel_streams by evsel_idx (Michael Petlan) [1884818 1908305] - [tools] perf streams: Introduce branch history "streams" (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Improve PT documentation slightly (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add support for exclusive groups/events (Michael Petlan) [1884818 1908305] - [tools] perf test: Add build id shell test (Michael Petlan) [1884818 1908305] - [tools] perf tools: Align buildid list output for short build ids (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add size to 'struct perf_record_header_build_id' (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to dso__build_id_equal() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to dso__set_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to build_id__sprintf() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build id object to sysfs__read_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to filename__read_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Use build_id object in dso (Michael Petlan) [1884818 1908305] - [tools] perf config: Export the perf_config_from_file() function (Michael Petlan) [1884818 1908305] - [tools] perf python: Autodetect python3 binary (Michael Petlan) [1884818 1908305] - [tools] perf tests: Show python test script in verbose mode (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Update usage for showing memory events (Michael Petlan) [1884818 1908305] - [tools] perf stat: Fix out of bounds CPU map access when handling armv8_pmu events (Michael Petlan) [1884818 1908305] - [tools] perf python scripting: Fix printable strings in python3 scripts (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Fix uncore metric expressions (Michael Petlan) [1884818 1908305] - [tools] perf parse-event: Release cpu_map refcount if evsel alloc failed (Michael Petlan) [1884818 1908305] - [tools] perf parse-event: Fix cpu map refcounting (Michael Petlan) [1884818 1908305] - [tools] tools lib traceevent: Hide non API functions (Michael Petlan) [1884818 1908305] - [tools] perf sched: Show start of latency as well (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Fix typos in power8 PMU events (Michael Petlan) [1884818 1908305] - [tools] perf bench: Run inject-build-id with --buildid-all option too (Michael Petlan) [1884818 1908305] - [tools] perf inject: Add --buildid-all option (Michael Petlan) [1884818 1908305] - [tools] perf inject: Do not load map/dso when injecting build-id (Michael Petlan) [1884818 1908305] - [tools] perf inject: Enter namespace when reading build-id (Michael Petlan) [1884818 1908305] - [tools] perf inject: Add missing callbacks in perf_tool (Michael Petlan) [1884818 1908305] - [tools] perf bench: Add build-id injection benchmark (Michael Petlan) [1884818 1908305] - [tools] perf trace: Use the autogenerated mmap 'prot' string/id table (Michael Petlan) [1884818 1908305] - [tools] tools beauty: Add script to generate table of mmap's 'prot' argument (Michael Petlan) [1884818 1908305] - [tools] perf beauty mmap_flags: Conditionaly define the mmap flags (Michael Petlan) [1884818 1908305] - [tools] perf trace beauty: Add script to autogenerate mremap's flags args string/id table (Michael Petlan) [1884818 1908305] - [tools] perf tools: Separate the checking of headers only used to build beautification tables (Michael Petlan) [1884818 1908305] - [tools] perf parse-events: Reduce casts around bp_addr (Michael Petlan) [1884818 1908305] - [tools] perf test: Add expand cgroup event test (Michael Petlan) [1884818 1908305] - [tools] perf tools: Allow creation of cgroup without open (Michael Petlan) [1884818 1908305] - [tools] perf tools: Copy metric events properly when expand cgroups (Michael Petlan) [1884818 1908305] - [tools] perf stat: Add --for-each-cgroup option (Michael Petlan) [1884818 1908305] - [tools] perf evsel: Add evsel__clone() function (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Update SkylakeX events to v1.21 (Michael Petlan) [1884818 1908305] - [tools] perf vendor events intel: Update CascadelakeX events to v1.08 (Michael Petlan) [1884818 1908305] - [tools] perf script: Add min, max to futex-contention output, in addition to avg (Michael Petlan) [1884818 1908305] - [tools] perf script: Autopep8 futex-contention (Michael Petlan) [1884818 1908305] - [tools] perf stat: Skip duration_time in setup_system_wide (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Support cap_user_time_short for event TIME_CONV (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Calculate timestamp with cap_user_time_short (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Add rdtsc() for Arm64 (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Move out common functions from x86 (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fall back to debuginfod query if debuginfo and source not found locally (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fix to adjust symbol address with correct reloc_sym address (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Fix "context_switch event has no tid" error (Michael Petlan) [1884818 1908305] - [tools] perf script: Display negative tid in non-sample events (Michael Petlan) [1884818 1908305] - [tools] perf docs: Improve help information in perf.txt (Michael Petlan) [1884818 1908305] - [tools] perf metric: Remove duplicate include (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add documentation for topdown metrics (Michael Petlan) [1884818 1908305] - [tools] perf stat: Support new per thread TopDown metrics (Michael Petlan) [1884818 1908305] - [tools] perf record: Support sample-read topdown metric group (Michael Petlan) [1884818 1908305] - [tools] perf tools: Rename group to topdown (Michael Petlan) [1884818 1908305] - [tools] perf machine: Add machine__for_each_dso() function (Michael Petlan) [1884818 1908305] - [tools] perf tests: Call test_attr__open() directly (Michael Petlan) [1884818 1908305] - [tools] perf vendor events power9: Add hv_24x7 core level metric events (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Pass pmu_event structure as a parameter for arch_get_runtimeparam() (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Add support for parsing perchip/percore events (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Add new structure to pass json fields (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Make json_events() static and ditch jevents.h file (Michael Petlan) [1884818 1908305] - [tools] perf test: Introduce script for Arm CoreSight testing (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Fix typo in comment (Michael Petlan) [1884818 1908305] - [tools] perf stat: Remove dead code: no need to set os.evsel twice (Michael Petlan) [1884818 1908305] - [tools] perf list: Do not print 'Metric Groups:' unnecessarily (Michael Petlan) [1884818 1908305] - [tools] perf list: Remove dead code in argument check (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add build test with GTK+ (Michael Petlan) [1884818 1908305] - [tools] tools feature: Add missing -lzstd to the fast path feature detection (Michael Petlan) [1884818 1908305] - [tools] perf tools: Make GTK2 support opt-in (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Enable Family 19h users by matching Zen2 events (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add recommended events (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add ITLB Instruction Fetch Hits event for zen1 (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add L2 Prefetch events for zen1 (Michael Petlan) [1884818 1908305] - [tools] perf: ftrace: Add filter support for option -F/--funcs (Michael Petlan) [1884818 1908305] - [tools] perf tools: Consolidate close_control_option()'s into one function (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Document snapshot control command (Michael Petlan) [1884818 1908305] - [tools] perf annotate: Add 'ret' (intel disasm style) as an alias for 'retq' (Michael Petlan) [1884818 1908305] - [tools] perf annotate: Allow configuring the 'disassembler_style' knob via 'perf config' (Michael Petlan) [1884818 1908305] - [tools] perf record: Add 'snapshot' control command (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add FIFO file names as alternative options to --control (Michael Petlan) [1884818 1908305] - [tools] perf tools: Use AsciiDoc formatting for --control option documentation (Michael Petlan) [1884818 1908305] - [tools] perf tools: Handle read errors from ctl_fd (Michael Petlan) [1884818 1908305] - [tools] perf tools: Consolidate --control option parsing into one function (Michael Petlan) [1884818 1908305] - [tools] perf tests: Add test for PE binary format support (Michael Petlan) [1884818 1908305] - [tools] perf symbols: Try reading the symbol table with libbfd (Michael Petlan) [1884818 1908305] - [tools] perf dso: Use libbfd to read build_id and .gnu_debuglink section (Michael Petlan) [1884818 1908305] - [tools] tools features: Add feature test to check if libbfd has buildid support (Michael Petlan) [1884818 1908305] - [tools] tools: Remove feature-libelf-mmap feature detection (Michael Petlan) [1884818 1908305] - [tools] perf build: Allow nested externs to enable BUILD_BUG() usage (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Check PEBS status correctly (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS (Michael Petlan) [1884818 1908305] - [x86] perf/x86: fix sysfs type mismatches (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Make anythread filter support conditional (Michael Petlan) [1884818 1908305] - [kernel] perf: Tweak perf_event_attr::exclusive semantics (Michael Petlan) [1884818 1908305] - [kernel] perf: Fix event multiplexing for exclusive groups (Michael Petlan) [1884818 1908305] - [kernel] perf: Simplify group_sched_in() (Michael Petlan) [1884818 1908305] - [kernel] perf: Simplify group_sched_out() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Make dummy_iregs static (Michael Petlan) [1884818 1908305] - [include] perf/arch: Remove perf_sample_data::regs_user_copy (Michael Petlan) [1884818 1908305] - [kernel] perf: Optimize get_recursion_context() (Michael Petlan) [1884818 1908305] - [kernel] perf: Fix get_recursion_context() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Reduce stack usage for x86_pmu::drain_pebs() (Michael Petlan) [1884818 1908305] - [kernel] perf: Reduce stack usage of perf_output_begin() (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Fix a memory leak in perf_event_parse_addr_filter() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Fix n_metric for cancelled txn (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Fix n_pair for cancelled txn (Michael Petlan) [1884818 1908305] - [x86] x86/events/amd/iommu: Fix sizeof mismatch (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Check perf metrics feature for each CPU (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix Ice Lake event constraint table (Michael Petlan) [1884818 1908305] - [x86] perf/x86/msr: Add Jasper Lake support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Add Jasper Lake support (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Allow F19h user coreid, threadmask, and sliceid specification (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Allow F17h user threadmask and slicemask specification (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Prepare to scale for more attributes that vary per family (Michael Petlan) [1884818 1908305] - [x86] arch/x86/amd/ibs: Fix re-arming IBS Fetch (Michael Petlan) [1884818 1908305] - [x86] perf/x86/rapl: Add AMD Fam19h RAPL support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Support 27-bit extended Op/cycle counter (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Fix raw sample data accumulation (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd: Fix sampling Large Increment per Cycle events (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Set all slices and threads to restore perf stat -a behaviour (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Pull pmu::sched_task() into perf_event_context_sched_out() (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Pull pmu::sched_task() into perf_event_context_sched_in() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Support per-thread RDPMC TopDown metrics (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Support TopDown metrics on Ice Lake (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Add a macro for RDPMC offset of fixed counters (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Generic support for hardware TopDown metrics (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Add a new PERF_EV_CAP_SIBLING event capability (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Use switch in intel_pmu_disable/enable_event (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix the name of perf METRICS (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Move BTS index to 47 (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Introduce the fourth fixed counter (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Name the global status bit in NMI handler (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Use event_base_rdpmc for the RDPMC userspace support (Michael Petlan) [1884818 1908305] - [powerpc] powerpc/cacheinfo: Print correct cache-sibling map/list for L2 cache (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Add support detecting thread-groups sharing L2 cache (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Rename init_thread_group_l1_cache_map() to make it generic (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Rename cpu_l1_cache_map as thread_group_l1_cache_map (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Parse ibm, thread-groups with multiple properties (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Use GFP_ATOMIC while allocating tmp mask (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Remove unnecessary variable (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize update_coregroup_mask (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Move coregroup mask updation to a new function (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize update_mask_by_l2 (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Check for duplicate topologies and consolidate (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Depend on cpu_l1_cache_map when adding CPUs (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Stop passing mask to update_mask_by_l2 (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Limit CPUs traversed to within a node (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize remove_cpu_from_masks (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Remove get_physical_package_id (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Stop updating cpu_core_mask (Diego Domingos) [1906504] - [powerpc] powerpc/topology: Update topology_core_cpumask (Diego Domingos) [1906504] - [powerpc] powerpc/topology: Override cpu_smt_mask (Diego Domingos) [1906504] - [include] sched/topology: Allow archs to override cpu_smt_mask (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Add per cpu per index shared_cpu_list (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Make cpumap_show code reusable (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Use cpumap_print to print cpumap (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Use IS_ENABLED() to avoid #ifdef (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Drop superfluous NULL check (Diego Domingos) [1906504] - [vfio] pci: Cleanup .probe() exit paths (Clark Williams) [1860192] - [vfio] pci: Add sriov_configure support (Clark Williams) [1860192] - [vfio] Introduce VFIO_DEVICE_FEATURE ioctl and first user (Clark Williams) [1860192] - [vfio] pci: Introduce VF token (Clark Williams) [1860192] - [vfio] pci: Implement match ops (Clark Williams) [1860192] - [vfio] Include optional device match in vfio_device_ops callbacks (Clark Williams) [1860192] - [infiniband] IB/hfi1: Ensure correct mm is used at all times (Kamal Heib) [1879586] {CVE-2020-27835} - [block] rbd: require global CAP_SYS_ADMIN for mapping and unmapping (Ming Lei) [1887327] {CVE-2020-25284}- [tools] kunit: tool: unmark test_data as binary blobs (Nico Pache) [1900119] - [tools] kunit: tools: fix kunit_tool tests for parsing test plans (Nico Pache) [1900119] - [documentation] Documentation: kunit: Update Kconfig parts for KUNIT's module support (Nico Pache) [1900119] - [tools] kunit: Don't fail test suites if one of them is empty (Nico Pache) [1900119] - [tools] kunit: Fix kunit.py --raw_output option (Nico Pache) [1900119] - [tools] kunit: tool: fix improper treatment of file location (Nico Pache) [1900119] - [tools] kunit: tool: fix broken default args in unit tests (Nico Pache) [1900119] - [tools] kunit: capture stderr on all make subprocess calls (Nico Pache) [1900119] - [documentation] Documentation: kunit: Remove references to --defconfig (Nico Pache) [1900119] - [kernel] kcsan: Add test suite (Nico Pache) [1900119] - [documentation] Documentation: kunit: Add some troubleshooting tips to the FAQ (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Fix invalid result when build fails (Nico Pache) [1900119] - [tools] kunit: show error if kunit results are not present (Nico Pache) [1900119] - [tools] kunit: kunit_config: Fix parsing of CONFIG options with space (Nico Pache) [1900119] - [lib] kunit: add support for named resources (Nico Pache) [1900119] - [lib] kunit: generalize kunit_resource API beyond allocated resources (Nico Pache) [1900119] - [security] security: apparmor: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [fs] fs: ext4: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [base] drivers: base: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] lib: Kconfig.debug: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] kunit: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] kunit: Kconfig: enable a KUNIT_ALL_TESTS fragment (Nico Pache) [1900119] - [tools] kunit: Fix TabError, remove defconfig code and handle when there is no kunitconfig (Nico Pache) [1900119] - [tools] kunit: use KUnit defconfig by default (Nico Pache) [1900119] - [tools] kunit: use --build_dir=.kunit as default (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Separate out config/build/exec/parse (Nico Pache) [1900119] - [lib] lib/test_linear_ranges: add a test for the 'linear_ranges' (Nico Pache) [1900119] - [lib] kunit: Add missing newline in summary message (Nico Pache) [1900119] - [tools] kunit: tool: add missing test data file content (Nico Pache) [1900119] - [documentation] kunit: update documentation to describe debugfs representation (Nico Pache) [1900119] - [lib] kunit: subtests should be indented 4 spaces according to TAP (Nico Pache) [1900119] - [lib] kunit: add log test (Nico Pache) [1900119] - [lib] kunit: add debugfs /sys/kernel/debug/kunit//results display (Nico Pache) [1900119] - [documentation] Documentation: kunit: Make the KUnit documentation less UML-specific (Nico Pache) [1900119] - [lib] Fix linked-list KUnit test when run multiple times (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Allow .kunitconfig to disable config items (Nico Pache) [1900119] - [lib] kunit: Always print actual pointer values in asserts (Nico Pache) [1900119] - [tools] kunit: add --make_options (Nico Pache) [1900119] - [tools] kunit: Run all KUnit tests through allyesconfig (Nico Pache) [1900119] - [tools] kunit: kunit_parser: make parser more robust (Nico Pache) [1900119] - [of] of: unittest: annotate warnings triggered by unittest (Nico Pache) [1900119] - [of] of: unittest: Disable interrupt node tests for old world MAC systems (Nico Pache) [1900119] - [of] of: unittest: add overlay gpio test to catch gpio hog problem (Nico Pache) [1900119] - [tools] kunit: run kunit_tool from any directory (Nico Pache) [1900119] - [tools] kunit: test: Improve error messages for kunit_tool when kunitconfig is invalid (Nico Pache) [1900119] - [documentation] Documentation: kunit: fixed sphinx error in code block (Nico Pache) [1900119] - [base] software node: introduce CONFIG_KUNIT_DRIVER_PE_TEST (Nico Pache) [1900119] - [base] kunit: building kunit as a module breaks allmodconfig (Nico Pache) [1900119] - [documentation] kunit: update documentation to describe module-based build (Nico Pache) [1900119] - [lib] kunit: allow kunit to be loaded as a module (Nico Pache) [1900119] - [lib] kunit: remove timeout dependence on sysctl_hung_task_timeout_seconds (Nico Pache) [1900119] - [lib] kunit: allow kunit tests to be loaded as a module (Nico Pache) [1900119] - [lib] kunit: hide unexported try-catch interface in try-catch-impl.h (Nico Pache) [1900119] - [lib] kunit: move string-stream.h to lib/kunit (Nico Pache) [1900119] - [security] apparmor: add AppArmor KUnit tests for policy unpack (Nico Pache) [1900119] - [tools] kunit/kunit_tool_test: Test '--build_dir' option run (Nico Pache) [1900119] - [tools] kunit: Rename 'kunitconfig' to '.kunitconfig' (Nico Pache) [1900119] - [tools] kunit: Place 'test.log' under the 'build_dir' (Nico Pache) [1900119] - [tools] kunit: Create default config in '--build_dir' (Nico Pache) [1900119] - [tools] kunit: Remove duplicated defconfig creation (Nico Pache) [1900119] - [documentation] docs/kunit/start: Use in-tree 'kunit_defconfig' (Nico Pache) [1900119] - [documentation] Documentation: kunit: add documentation for kunit_tool (Nico Pache) [1900119] - [documentation] Documentation: kunit: fix typos and gramatical errors (Nico Pache) [1900119] - [tools] kunit: testing kunit: Bug fix in test_run_timeout function (Nico Pache) [1900119] - [base] PM / QoS: Initial kunit test (Nico Pache) [1900119] - [lib] lib/list-test: add a test for the 'list' doubly linked list (Nico Pache) [1900119] - [fs] ext4: add kunit test for decoding extended timestamps (Nico Pache) [1900119] - [documentation] Documentation: kunit: Fix verification command (Nico Pache) [1900119] - [tools] kunit: Fix '--build_dir' option (Nico Pache) [1900119] - [lib] kunit: fix failure to build without printk (Nico Pache) [1900119] - [kernel] kernel/sysctl-test: Add null pointer test for sysctl.c:proc_dointvec() (Nico Pache) [1900119] - [documentation] Documentation: kunit: add documentation for KUnit (Nico Pache) [1900119] - [tools] kunit: defconfig: add defconfigs for building KUnit tests (Nico Pache) [1900119] - [tools] kunit: tool: add Python wrappers for running KUnit tests (Nico Pache) [1900119] - [lib] kunit: test: add tests for KUnit managed resources (Nico Pache) [1900119] - [lib] kunit: test: add the concept of assertions (Nico Pache) [1900119] - [lib] kunit: test: add tests for kunit test abort (Nico Pache) [1900119] - [lib] kunit: test: add support for test abort (Nico Pache) [1900119] - [tools] objtool: add kunit_try_catch_throw to the noreturn list (Nico Pache) [1900119] - [tools] objtool: Add rewind_stack_do_exit() to the noreturn list (Nico Pache) [1900119] - [lib] kunit: test: add initial tests (Nico Pache) [1900119] - [lib] lib: enable building KUnit in lib/ (Nico Pache) [1900119] - [lib] kunit: test: add the concept of expectations (Nico Pache) [1900119] - [lib] kunit: test: add assertion printing library (Nico Pache) [1900119] - [lib] kunit: test: add string_stream a std::stream like string builder (Nico Pache) [1900119] - [lib] kunit: test: add test resource management API (Nico Pache) [1900119] - [lib] kunit: test: add KUnit test runner core (Nico Pache) [1900119] - [watchdog] watchdog/hpwdt: Reflect changes (Joseph Szczypek) [1905293] - [watchdog] watchdog/hpwdt: Disable NMI in Crash Kernel (Joseph Szczypek) [1905293] - [idle] intel_idle: add SnowRidge C-state table (Steve Best) [1838554] - [mm] mm: memcg/slab: fix use after free in obj_cgroup_charge (Waiman Long) [1916962] - [mm] mm: memcg/slab: fix return of child memcg objcg for root memcg (Waiman Long) [1916962] - [mm] mm: memcg/slab: fix obj_cgroup_charge() return value handling (Waiman Long) [1916962] - [mm] mm: kmem: move memcg_kmem_bypass() calls to get_mem/obj_cgroup_from_current() (Waiman Long) [1916962] - [s390] s390/kexec_file: fix diag308 subcode when loading crash kernel (Philipp Rudo) [1897184] - [net] ethtool: fix error paths in ethnl_set_channels() (Ivan Vecera) [1906682] - [powerpc] powerpc/pci: Remove LSI mappings on device teardown (Diego Domingos) [1909722] - [powerpc] Revert "powerpc/pci: unmap legacy INTx interrupts of passthrough IO adapters" (Diego Domingos) [1909722] - [block] block: add blk_alloc_queue declaration back (Ming Lei) [1911343] - [net] tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate (Antoine Tenart) [1901863] - [net] tcp_bbr: improve arithmetic division in bbr_update_bw() (Antoine Tenart) [1901863] - [net] tcp_bbr: clarify that bbr_bdp() rounds up in comments (Antoine Tenart) [1901863] - [net] tcp_bbr: adapt cwnd based on ack aggregation estimation (Antoine Tenart) [1901863] - [net] tcp_bbr: fix bbr pacing rate for internal pacing (Antoine Tenart) [1901863]- [wireless] iwlwifi: fw: acpi: Demote non-conformant function headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: dbg: Fix misspelling of 'reg_data' in function header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-phy-db: Add missing struct member description for 'trans' (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-eeprom-parse: Fix 'struct iwl_eeprom_enhanced_txpwr's header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-eeprom-read: Demote one nonconformant function header (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: rs: Demote non-conformant function documentation headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-drv: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: validate notification size when waiting (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: purge the BSS table upon firmware load (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: check that statistics TLV version match struct version (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add size checks for range response notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: hook up missing RX handlers (Jarod Wilson) [1857772] - [wireless] iwlwifi: tighten RX MPDU bounds checks (Jarod Wilson) [1857772] - [wireless] iwlwifi: Add a new card for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: disconnect if channel switch delay is too long (Jarod Wilson) [1857772] - [wireless] iwlwifi: support firmware reset handshake (Jarod Wilson) [1857772] - [wireless] iwlwifi: add an extra firmware state in the transport (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix a race in CSA that caused assert 0x3420 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: validate firmware sync response size (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: clean up some rx code (Jarod Wilson) [1857772] - [wireless] iwlwifi: use SPDX tags (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg-tlv: fix old length in is_trig_data_contained() (Jarod Wilson) [1857772] - [wireless] iwlwifi: trans: consider firmware dead after errors (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove unnecessary setting of inta_mask (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: file: fix documentation for SAR flag (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove MSIX_HW_INT_CAUSES_REG_IML handling (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clean up scan state on failure (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: do more useful queue sync accounting (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix 22000 series driver NMI (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: change 12k A-MSDU config to use 16k buffers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: move iwl_mvm_stop_device() out of line (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clear up iwl_mvm_notify_rx_queue() argument type (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove sw_csum_tx (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: validate RX descriptor length (Jarod Wilson) [1857772] - [wireless] iwlwifi: validate MPDU length against notification length (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: iterate active stations when updating statistics (Jarod Wilson) [1857772] - [wireless] iwlwifi: sort out the NVM offsets (Jarod Wilson) [1857772] - [wireless] iwlwifi: fix typo in comment (Jarod Wilson) [1857772] - [wireless] iwlwifi: follow the new inclusive terminology (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove the read_nvm from iwl_run_unified_mvm_ucode (Jarod Wilson) [1857772] - [wireless] iwlwifi: avoid endless HW errors at assert time (Jarod Wilson) [1857772] - [wireless] iwlwifi: enable sending/setting debug host event (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for 6GHz (Jarod Wilson) [1857772] - [wireless] iwlwifi: copy iwl_he_capa for modifications (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove obsolete pre-release support code (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove the read_nvm from iwl_run_init_mvm_ucode (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Init error table memory to zero (Jarod Wilson) [1857772] - [wireless] iwlwifi: d3: do not send the WOWLAN_CONFIGURATION command for netdetect (Jarod Wilson) [1857772] - [wireless] iwlwifi: move reclaim flows to the queue file (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix sar profile printing issue (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: align the write pointer to DWs (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: add the ability to dump phy periphery (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove all queue resources before free (Jarod Wilson) [1857772] - [wireless] wireless: remove unneeded break (Jarod Wilson) [1857772] - [net] nl80211/cfg80211: fix potential infinite loop (Jarod Wilson) [1857772] - [net] cfg80211: select CONFIG_CRC32 (Jarod Wilson) [1857772] - [net] nl80211/cfg80211: support 6 GHz scanning (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: add some missing entries for AX210 (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: invert values of NO_160 device config entries (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: add one missing entry for AX210 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix kernel panic in case of assert during CSA (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: set LTR to avoid completion timeout (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: write queue_sync_state only for sync (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: properly cancel a session protection for P2P (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC (Jarod Wilson) [1857772] - [wireless] iwlwifi: sta: set max HE max A-MPDU according to HE capa (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: limit memory read spin time (Jarod Wilson) [1857772] - [wireless] Revert "iwlwifi: remove wide_cmd_header field" (Jarod Wilson) [1857772] - [wireless] iwlwifi: bump FW API to 59 for AX devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: read and parse PNVM file (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: implement set_pnvm op (Jarod Wilson) [1857772] - [wireless] iwlwifi: add trans op to set PNVM (Jarod Wilson) [1857772] - [wireless] iwlwifi: move PNVM implementation to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: align to new TLC config command API (Jarod Wilson) [1857772] - [wireless] iwlwifi: fix sar geo table initialization (Jarod Wilson) [1857772] - [wireless] iwlwifi: stats: add new api fields for statistics cmd/ntfy (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix suspicious rcu usage warnings (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove memset of kek_kck command (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: don't send a CSA command the firmware doesn't know (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix the xtal latency value for a few qu devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix xtal latency for 9560 devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix 0x271B and 0x271C trans cfg struct (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: avoid possible NULL pointer dereference (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support ADD_STA_CMD_API_S ver 12 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add a get lmac id function (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: prepare roc_done_wk to work sync (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: re-enable TX after channel switch (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues (Jarod Wilson) [1857772] - [wireless] iwlwifi: support an additional Qu subsystem id (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: stop claiming NL80211_EXT_FEATURE_SET_SCAN_DWELL (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ring the doorbell and wait for PNVM load completion (Jarod Wilson) [1857772] - [wireless] iwlwifi: update prph scratch structure to include PNVM data (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: read and parse SKU ID if available (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: get number of stations from TLV (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-drv: Provide descriptions debugfs dentries (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: devices: Fix function documentation formatting issues (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: tx: Demote misuse of kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: rxon: Demote non-conformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: scan: Demote a few nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: utils: Fix some doc-rot (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Demote a couple of nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ops: Remove unused static struct 'iwl_mvm_debug_names' (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: sta: Demote a bunch of nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: calib: Demote seemingly unintentional kerneldoc header (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: lib: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: tx: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: bump FW API to 57 for AX devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: add support for internal buffer allocation in D3 (Jarod Wilson) [1857772] - [wireless] iwlwifi: api: fix u32 -> __le32 (Jarod Wilson) [1857772] - [wireless] iwlwifi: use correct group for alive notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: support version 5 of the alive notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ignore the scan duration parameter (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: add debug host notification (DHN) time point (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: make iwl_pcie_txq_update_byte_cnt_tbl bus independent (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clear all scan UIDs (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: d3: parse wowlan status version 11 (Jarod Wilson) [1857772] - [wireless] iwlwifi: align RX status flags with firmware (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove redundant log in iwl_mvm_tvqm_enable_txq() (Jarod Wilson) [1857772] - [wireless] iwlwifi: phy-ctxt: add new API VER 3 for phy context cmd (Jarod Wilson) [1857772] - [wireless] iwlwifi: thermal: support new temperature measurement API (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add d3 prints (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: d3: support GCMP ciphers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support more GTK rekeying algorithms (Jarod Wilson) [1857772] - [wireless] iwlwifi: move all bus-independent TX functions to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: initiator: add option for adding a PASN responder (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: responder: allow to set only the HLTK for an associated station (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: location: set the HLTK when PASN station is added (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Add FTM initiator RTT smoothing logic (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for responder dynamic config command version 3 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for range request command ver 11 (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove wide_cmd_header field (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: add default value for iwl_fw_lookup_cmd_ver (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: in non acpi compilations remove iwl_sar_geo_init (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: set RTS protection for all non legacy rates (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support new KEK KCK api (Jarod Wilson) [1857772] - [wireless] iwlwifi: support version 3 of GEO_TX_POWER_LIMIT (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: rename geo structs to contain versioning (Jarod Wilson) [1857772] - [wireless] iwlwifi: support REDUCE_TX_POWER_CMD version 6 (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: prepare SAR profile selection code for multiple sizes (Jarod Wilson) [1857772] - [wireless] iwlwifi: add a common struct for all iwl_tx_power_cmd versions (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new card for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: remove dummy definition of iwl_sar_set_profile() (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove iwl_validate_sar_geo_profile() export (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: use CHECKSUM_COMPLETE (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove redundant support_umac_log field (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for new WOWLAN_TSC_RSC_PARAM version (Jarod Wilson) [1857772] - [wireless] iwlwifi: don't export acpi functions unnecessarily (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: process ba-notifications also when sta rcu is invalid (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for new version of WOWLAN_TKIP_SETTING_API_S (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Don't install CMAC/GMAC key in AP mode (Jarod Wilson) [1857772] - [wireless] iwl-trans: move dev_cmd_offs, page_offs to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: regulatory: regulatory capabilities api change (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: add dumping special device memory (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: remove IWL_FW_INI_TIME_POINT_WDG_TIMEOUT (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: support ppag table command v2 (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new cards for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: move bc_table_dword to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-trans: move tfd to trans layer (Jarod Wilson) [1857772] - [wireless] iwlwifi: move bc_pool to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-trans: move all txcmd init to trans alloc (Jarod Wilson) [1857772] - [wireless] iwlwifi: enable twt by default (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add an option to add PASN station (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new cards for AX201 family (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: move assert descriptor parser to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: wowlan: adapt to wowlan status API version 10 (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: evaluate dsm to disable 5.8GHz channels (Jarod Wilson) [1857772] - [wireless] iwlwifi: msix: limit max RX queues for 9000 family (Jarod Wilson) [1857772] - [wireless] iwlwifi: sta: defer ADDBA transmit in case reclaimed SN != next SN (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: set PROTECTED_TWT feature if supported by firmware (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: set PROTECTED_TWT in MAC data policy (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add PROTECTED_TWT firmware API (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: rs-fw: handle VHT extended NSS capability (Jarod Wilson) [1857772] - [x86] sev-es: Use new for_each_insn_prefix() macro to loop over prefixes bytes (Vitaly Kuznetsov) [1915453] - [x86] insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes bytes (Vitaly Kuznetsov) [1915453] - [tools] x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes (Vitaly Kuznetsov) [1915453] - [powercap] powercap/intel_rapl: add support for ElkhartLake (Steve Best) [1847054] - [char] tpm: efi: Don't create binary_bios_measurements file for an empty log (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis: Add a check for invalid status (Jerry Snitselaar) [1887536 1855183] - [char] tpm: use *ph to print small buffer (Jerry Snitselaar) [1887536 1855183] - [char] tpm: Add support for event log pointer found in TPM2 ACPI table (Jerry Snitselaar) [1887536 1855183] - [acpi] acpi: Extend TPM2 ACPI table with missing log fields (Jerry Snitselaar) [1887536] - [char] tpm: Unify the mismatching TPM space buffer sizes (Jerry Snitselaar) [1887536 1855183] - [include] tpm: Require that all digests are present in TCG_PCR_EVENT2 structures (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis_spi: Prefer async probe (Jerry Snitselaar) [1887536 1855183] - [char] tpm/st33zp24: fix spelling mistake "drescription" -> "description" (Jerry Snitselaar) [1887536] - [char] tpm_tis: extra chip->ops check on error path in tpm_tis_core_init (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis_spi: Don't send anything during flow control (Jerry Snitselaar) [1887536 1855183] - [include] efi/tpm: Verify event log header before parsing (Jerry Snitselaar) [1887536 1855183] - [char] tpm: eventlog: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1887536 1855183] - [char] tpm: fix wrong return value in tpm_pcr_extend (Jerry Snitselaar) [1887536 1855183] - [include] tpm_eventlog.h: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1887536 1855183] - [include] phylink: : fix function prototype kernel-doc warning (Petr Oros) [1878147] - [netdrv] net: phy: call phy_disable_interrupts() in phy_attach_direct() instead (Petr Oros) [1878147] - [net] net: ethtool: Handle missing cable test TDR parameters (Petr Oros) [1878147] - [documentation] docs: networking: fix extra spaces in ethtool-netlink (Petr Oros) [1878147] - [documentation] dt-bindings: net: mvusb: Fix example errors (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: fix null pointer dereference (Petr Oros) [1878147] - [netdrv] net: phy: fix memory leak in device-create error path (Petr Oros) [1878147] - [netdrv] net: mdio device: use flexible sleeping in reset function (Petr Oros) [1878147] - [netdrv] net: mdiobus: add reset-post-delay-us handling (Petr Oros) [1878147] - [netdrv] net: mdiobus: use flexible sleeping for reset-delay-us (Petr Oros) [1878147] - [netdrv] net: phylink: add interface to configure clause 22 PCS PHY (Petr Oros) [1878147] - [netdrv] net: phylink: add struct phylink_pcs (Petr Oros) [1878147] - [netdrv] net: phylink: re-implement interface configuration with PCS (Petr Oros) [1878147] - [netdrv] net: phylink: in-band pause mode advertisement update for PCS (Petr Oros) [1878147] - [netdrv] net: phylink: simplify fixed-link case for ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: use config.an_enabled in ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: simplify phy case for ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: simplify ksettings_set() implementation (Petr Oros) [1878147] - [netdrv] net: phylink: avoid mac_config calls (Petr Oros) [1878147] - [netdrv] net: phylink: update PCS when changing interface during resolution (Petr Oros) [1878147] - [netdrv] net: phylink: ensure link is down when changing interface (Petr Oros) [1878147] - [netdrv] net: phylink: rearrange resolve mac_config() call (Petr Oros) [1878147] - [netdrv] net: phylink: rejig link state tracking (Petr Oros) [1878147] - [netdrv] net: phylink: update ethtool reporting for fixed-link modes (Petr Oros) [1878147] - [netdrv] net: phy: fix check in get_phy_c45_ids (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add mdix configuration support for AR9331 and AR8035 (Petr Oros) [1878147] - [netdrv] net: dp83640: fix SIOCSHWTSTAMP to update the struct with actual configuration (Petr Oros) [1878147] - [netdrv] net: phy: continue searching for C45 MMDs even if first returned ffff:ffff (Petr Oros) [1878147] - [netdrv] net: phy: dp83640: Fixup cast to restricted __be16 warning (Petr Oros) [1878147] - [netdrv] net: phy: Make phy_10gbit_fec_features_array static (Petr Oros) [1878147] - [netdrv] net: phy: Properly define genphy_c45_driver (Petr Oros) [1878147] - [netdrv] net: phy: Fixup parameters in kerneldoc (Petr Oros) [1878147] - [netdrv] net: phy: at803x: Avoid comparison is always false warning (Petr Oros) [1878147] - [netdrv] net: phy: mdio: reset MDIO devices even if probe() is not implemented (Petr Oros) [1878147] - [netdrv] net: phy: reset the PHY even if probe() is not implemented (Petr Oros) [1878147] - [include] net: mdio: add a forward declaration for reset_control to mdio.h (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in phy_device.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in mdio_device.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in mdio_bus.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phylink: only restart AN if the link mode is using in-band AN (Petr Oros) [1878147] - [netdrv] net: phylink: add phylink_speed_(up|down) interface (Petr Oros) [1878147] - [netdrv] net: phy: call phy_disable_interrupts() in phy_init_hw() (Petr Oros) [1878147] - [netdrv] net: phy: make phy_disable_interrupts() non-static (Petr Oros) [1878147] - [netdrv] net: phylink: ensure manual pause mode configuration takes effect (Petr Oros) [1878147] - [netdrv] net: phylink: fix ethtool -A with attached PHYs (Petr Oros) [1878147] - [include] net: phy: add support for a common probe between shared PHYs (Petr Oros) [1878147] - [netdrv] net: phy: Allow mdio buses to auto-probe c45 devices (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add Marvell 88E1548P support (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add Marvell 88E1340S support (Petr Oros) [1878147] - [netdrv] net: phy: marvell: use a single style for referencing functions (Petr Oros) [1878147] - [netdrv] net: phy: smsc: fix printing too many logs (Petr Oros) [1878147] - [netdrv] net: phy: Check harder for errors in get_phy_id() (Petr Oros) [1878147] - [of] of: of_mdio: Correct loop scanning logic (Petr Oros) [1878147] - [of] of: mdio: preserve phy dev_flags in of_phy_connect() (Petr Oros) [1878147] - [netdrv] net: phy: read MMD ID from all present MMDs (Petr Oros) [1878147] - [netdrv] net: phy: split devices_in_package (Petr Oros) [1878147] - [netdrv] net: phy: set devices_in_package only after validation (Petr Oros) [1878147] - [netdrv] net: phy: add support for probing MMDs >= 8 for devices-in-package (Petr Oros) [1878147] - [netdrv] net: phy: reword get_phy_device() kerneldoc (Petr Oros) [1878147] - [netdrv] net: phy: clean up get_phy_c22_id() invalid ID handling (Petr Oros) [1878147] - [netdrv] net: phy: clean up get_phy_c45_ids() failure handling (Petr Oros) [1878147] - [netdrv] net: phy: clean up PHY ID reading (Petr Oros) [1878147] - [netdrv] net: phy: clean up cortina workaround (Petr Oros) [1878147] - [netdrv] net: dp83869: Reset return variable if PHY strap is read (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: don't export RDB/legacy access methods (Petr Oros) [1878147] - [netdrv] net: phy: marvell: unlock after phy_select_page() failure (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add cable diagnostics support for ATH9331 and ATH8032 (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Configure TDR pulse based on measurement length (Petr Oros) [1878147] - [netdrv] net : phy: marvell: Speedup TDR data retrieval by only changing page once (Petr Oros) [1878147] - [netdrv] net: ethtool: Allow PHY cable test TDR data to configured (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add support for amplitude graph (Petr Oros) [1878147] - [net] net: ethtool: Add helpers for cable test TDR data (Petr Oros) [1878147] - [net] net: ethtool: Add generic parts of cable test TDR (Petr Oros) [1878147] - [uapi] net: ethtool: Add attributes for cable test TDR data (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: read poll when high resolution timers are disabled (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: improve waiting logic (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: remove redundant timeout check (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: use more reasonable delays (Petr Oros) [1878147] - [netdrv] net: mdiobus: add clause 45 mdiobus accessors (Petr Oros) [1878147] - [netdrv] net: phy: at803x: fix PHY ID masks (Petr Oros) [1878147] - [netdrv] net: phy: dp83869: Set opmode from straps (Petr Oros) [1878147] - [netdrv] net: phy: dp83869: Update port-mirroring to read straps (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add SQI support (Petr Oros) [1878147] - [netdrv] net: phy: simplify phy_link_change arguments (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: fix checkpatch complains about tabs (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add support for BCM54811 PHY (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: execute cable test on link up (Petr Oros) [1878147] - [netdrv] net: phy: mdio-moxart: remove unneeded include (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add cable diagnostics support (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add cable diagnostics support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add cable test support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add bcm_phy_modify_exp() (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add exp register access methods without buslock (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add cable-test support (Petr Oros) [1878147] - [netdrv] net: phy: fix aneg restart in phy_ethtool_set_eee (Petr Oros) [1878147] - [net] net: phy: Send notifier when starting the cable test (Petr Oros) [1878147] - [netdrv] net: phy: Put interface into oper testing during cable test (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add cable test support (Petr Oros) [1878147] - [include] net: ethtool: Add helpers for reporting test results (Petr Oros) [1878147] - [include] net: ethtool: Add infrastructure for reporting cable test results (Petr Oros) [1878147] - [uapi] net: ethtool: Add attributes for cable test reports (Petr Oros) [1878147] - [net] net: ethtool: netlink: Add support for triggering a cable test (Petr Oros) [1878147] - [netdrv] net: phy: Add support for polling cable test (Petr Oros) [1878147] - [netdrv] net: phy: Add cable test support to state machine (Petr Oros) [1878147] - [net] net: ethtool: self_test: Mark interface in testing operative status (Petr Oros) [1878147] - [net] net: Add testing sysfs attribute (Petr Oros) [1878147] - [net] net: Add IF_OPER_TESTING (Petr Oros) [1878147] - [netdrv] net: phy: fix less than zero comparison with unsigned variable val (Petr Oros) [1878147] - [netdrv] net: phy: Make iproc_mdio_resume static (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: use phy_package_shared (Petr Oros) [1878147] - [netdrv] net: phy: add concept of shared storage for PHYs (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add support for master-slave configuration (Petr Oros) [1878147] - [uapi] ethtool: provide UAPI for PHY master/slave configuration (Petr Oros) [1878147] - [netdrv] dp83640: reverse arguments to list_add_tail (Petr Oros) [1878147] - [documentation] dt-bindings: add Qualcomm IPQ4019 MDIO bindings (Petr Oros) [1878147] - [netdrv] net: phy: mdio: add IPQ4019 MDIO driver (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add second PHY ID (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: apply the workaround on b0 chips (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: fix phy_id_mask (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: use genphy_soft_reset() (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add downshift support (Petr Oros) [1878147] - [netdrv] net: phy: DP83TC811: Fix WoL in config init to be disabled (Petr Oros) [1878147] - [netdrv] net: phy: DP83822: Fix WoL in config init to be disabled (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: Make a bunch of functions static (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: fix temperature sensor on 2110 (Petr Oros) [1878147] - [gpio] gpiolib: Rename "chip" variables to "gc" in core header file (Petr Oros) [1878147] - [netdrv] net: phy: dp83867: Remove unneeded semicolon (Petr Oros) [1878147] - [netdrv] net: phy: clear phydev->suspended after soft reset (Petr Oros) [1878147] - [netdrv] net: phy: remove genphy_no_soft_reset (Petr Oros) [1878147] - [netdrv] net: phy: make phy_suspend a no-op if PHY is suspended already (Petr Oros) [1878147] - [netdrv] net: phylink, dsa: eliminate phylink_fixed_state_cb() (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: fix less than zero comparison on an unsigned (Petr Oros) [1878147] - [netdrv] net: phy: bcm84881: clear settings on link down (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add delayed registration of TJA1102 PHY1 (Petr Oros) [1878147] - [of] net: mdio: of: export part of of_mdiobus_register_phy() (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add initial TJA1102 support (Petr Oros) [1878147] - [documentation] dt-bindings: net: phy: Add support for NXP TJA11xx (Petr Oros) [1878147] - [netdrv] net: phy: Use IS_ERR() to check and simplify code (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: limit soft reset to 88x3310 (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add hwmon support (Petr Oros) [1878147] - [netdrv] net: phy: add Broadcom BCM54140 support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add helper to write/read RDB registers (Petr Oros) [1878147] - [netdrv] net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx phy (Petr Oros) [1878147] - [netdrv] net: phy: Propagate error from bus->reset (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Add support for BCM53125 internal PHYs (Petr Oros) [1878147] - [netdrv] net: phy: mdio-bcm-iproc: Do not show kernel pointer (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add support for AR8032 PHY (Petr Oros) [1878147] - [netdrv] net: marvell10g: soft-reset the PHY when coming out of low power (Petr Oros) [1878147] - [netdrv] net: marvell10g: report firmware version (Petr Oros) [1878147] - [netdrv] net: phy: micrel: use genphy_read_status for KSZ9131 (Petr Oros) [1878147] - [netdrv] net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before accessing PHY registers (Petr Oros) [1878147] - [netdrv] net: phylink: add separate pcs operations structure (Petr Oros) [1878147] - [netdrv] net: phylink: rename 'ops' to 'mac_ops' (Petr Oros) [1878147] - [netdrv] net: phylink: change phylink_mii_c22_pcs_set_advertisement() prototype (Petr Oros) [1878147] - [ptp] ptp: Avoid deadlocks in the programmable pin code (Petr Oros) [1878147] - [netdrv] net: phy: probe PHY drivers synchronously (Petr Oros) [1878147] - [netdrv] net: phy: don't touch suspended flag if there's no suspend/resume callback (Petr Oros) [1878147] - [netdrv] net: phy: micrel.c: add rgmii interface delay possibility to ksz9131 (Petr Oros) [1878147] - [netdrv] net: phy: mdio-mux-bcm-iproc: use readl_poll_timeout() to simplify code (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: smsc: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: aquantia: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: bcm84881: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: add marvell usb to mdio controller (Petr Oros) [1878147] - [documentation] dt-bindings: net: add marvell usb to mdio bindings (Petr Oros) [1878147] - [netdrv] net: phy: aquantia: remove downshift warning now that phylib takes care (Petr Oros) [1878147] - [netdrv] net: phy: marvell: remove downshift warning now that phylib takes care (Petr Oros) [1878147] - [netdrv] net: phy: add and use phy_check_downshift (Petr Oros) [1878147] - [netdrv] net: phylink: pcs: add 802.3 clause 45 helpers (Petr Oros) [1878147] - [netdrv] net: phylink: pcs: add 802.3 clause 22 helpers (Petr Oros) [1878147] - [netdrv] net: mdiobus: add APIs for modifying a MDIO device register (Petr Oros) [1878147] - [netdrv] net: mdiobus: avoid BUG_ON() in mdiobus accessors (Petr Oros) [1878147] - [netdrv] net: phy: improve phy_driver callback handle_interrupt (Petr Oros) [1878147] - [netdrv] net: phylink: Add XLGMII support (Petr Oros) [1878147] - [include] net: phy: Add XLGMII interface define (Petr Oros) [1878147] - [netdrv] net: phylink: Test if MAC/PCS support Autoneg (Petr Oros) [1878147] - [netdrv] net: phylink: Add missing Backplane speeds (Petr Oros) [1878147] - [netdrv] net: mdio: add ipq8064 mdio driver (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: place in powersave mode at probe (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: add energy detect power down tunable (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: add mdix control (Petr Oros) [1878147] - [netdrv] net: phy: mscc: add constants for used interrupt mask bits (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: read copper results from CSSR1 (Petr Oros) [1878147] - [netdrv] net: phy: mscc: add missing shift for media operation mode selection (Petr Oros) [1878147] - [netdrv] net: phylink: propagate resolved link config via mac_link_up() (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Wire suspend/resume for BCM54810 (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Have bcm54xx_adjust_rxrefclk() check for flags (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Allow BCM54810 to use bcm54xx_adjust_rxrefclk() (Petr Oros) [1878147] - [netdrv] net: phy: dp83867: Add speed optimization feature (Petr Oros) [1878147] - [netdrv] net: phy: allow bcm84881 to be a module (Petr Oros) [1878147] - [include] net: phylink: clarify flow control settings in documentation (Petr Oros) [1878147] - [netdrv] net: phylink: improve initial mac configuration (Petr Oros) [1878147] - [netdrv] net: phylink: allow ethtool -A to change flow control advertisement (Petr Oros) [1878147] - [netdrv] net: phylink: resolve fixed link flow control (Petr Oros) [1878147] - [netdrv] net: phylink: use phylib resolved flow control modes (Petr Oros) [1878147] - [netdrv] net: phylink: ensure manual flow control is selected appropriately (Petr Oros) [1878147] - [netdrv] net: phylink: remove pause mode ethtool setting for fixed links (Petr Oros) [1878147] - [netdrv] net: add linkmode helper for setting flow control advertisement (Petr Oros) [1878147] - [netdrv] net: add helpers to resolve negotiated flow control (Petr Oros) [1878147] - [include] net: linkmode: make linkmode_test_bit() take const pointer (Petr Oros) [1878147] - [include] net: phylink: further documentation clarifications (Petr Oros) [1878147] - [include] net: phylink: further mac_config documentation improvements (Petr Oros) [1878147] - [netdrv] net: phylink: rename mac_link_state() op to mac_pcs_get_state() (Petr Oros) [1878147] - [md] md/raid5: fix oops during stripe resizing (Nigel Croxon) [1898617] - [md] md/bitmap: fix memory leak of temporary bitmap (Nigel Croxon) [1898617] - [md] md: fix the checking of wrong work queue (Nigel Croxon) [1898617] - [md] md/bitmap: md_bitmap_get_counter returns wrong blocks (Nigel Croxon) [1898617] - [md] md/bitmap: md_bitmap_read_sb uses wrong bitmap blocks (Nigel Croxon) [1898617] - [md] md/raid0: remove unused function is_io_in_chunk_boundary() (Nigel Croxon) [1898617] - [md] md: don't detour through bd_contains for the gendisk (Nigel Croxon) [1898617] - [md] md: compare bd_disk instead of bd_contains (Nigel Croxon) [1898617] - [md] md: Simplify code with existing definition RESYNC_SECTORS in raid10.c (Nigel Croxon) [1898617] - [md] md/raid5: reallocate page array after setting new stripe_size (Nigel Croxon) [1898617] - [md] md/raid5: resize stripe_head when reshape array (Nigel Croxon) [1898617] - [md] md/raid5: let multiple devices of stripe_head share page (Nigel Croxon) [1898617] - [crypto] md/raid6: let async recovery function support different page offset (Nigel Croxon) [1898617] - [crypto] md/raid6: let syndrome computor support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: convert to new xor compution interface (Nigel Croxon) [1898617] - [crypto] md/raid5: add new xor function to support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: make async_copy_data() to support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: add a new member of offset into r5dev (Nigel Croxon) [1898617] - [md] md: only calculate blocksize once and use i_blocksize() (Nigel Croxon) [1898617] - [md] md: update the optimal I/O size on reshape (Nigel Croxon) [1898617] - [md] md/raid5: make sure stripe_size as power of two (Nigel Croxon) [1898617] - [md] md-cluster: Fix potential error pointer dereference in resize_bitmaps() (Nigel Croxon) [1898617] - [md] md: get sysfs entry after redundancy attr group create (Nigel Croxon) [1898617] - [kernel] lockdep: Fix preemption WARN for spurious IRQ-enable (Waiman Long) [1908640] - [powerpc] powerpc/smp: Call rcu_cpu_starting() earlier (Waiman Long) [1908640] - [include] seqlock: Fix multiple kernel-doc warnings (Waiman Long) [1908640] - [kernel] lockdep: Fix usage_traceoverflow (Waiman Long) [1908640] - [kernel] locking/lockdep: Remove more raw_cpu_read() usage (Waiman Long) [1908640] - [include] lockdep: Revert "lockdep: Use raw_cpu_*() for per-cpu variables" (Waiman Long) [1908640] - [kernel] lockdep: Fix lockdep recursion (Waiman Long) [1908640] - [kernel] lockdep,trace: Expose tracepoints (Waiman Long) [1908640] - [x86] locking/lockdep: Fix TRACE_IRQFLAGS vs. NMIs (Waiman Long) [1908640] - [s390] s390: don't trace preemption in percpu macros (Waiman Long) [1908640] - [fs] blkdev: avoid migration stalls for blkdev pages (Chris von Recklinghausen) [1876502] - [netdrv] ionic: account for vlan tag len in rx buffer len (Jonathan Toppins) [1908642] - [netdrv] net/mlx5e: Fix refcount leak on kTLS RX resync (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Fix leak on resync error flow (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add missing dma_unmap in RX resync (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Fix napi sync and possible use-after-free (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Improve rx handler function call (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Cleanup redundant capability check (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: Increase Async ICO SQ size (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add kTLS RX stats (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add kTLS RX resync support (Alaa Hleihel) [1866808] - [infiniband] RDMA/siw: Fix handling of zero-sized Read and Receive Queues (Kamal Heib) [1900985 1875703] - [fs] ext4: fix bogus warning in ext4_update_dx_flag() (Lukas Czerner) [1908714] - [fs] ext4: handle dax mount option collision (Lukas Czerner) [1908714] - [fs] jbd2: fix up sparse warnings in checkpoint code (Lukas Czerner) [1908714] - [fs] ext4: unlock xattr_sem properly in ext4_inline_data_truncate() (Lukas Czerner) [1908714] - [fs] ext4: do not use extent after put_bh (Lukas Czerner) [1908714] - [fs] ext4: fix invalid inode checksum (Lukas Czerner) [1908714] - [fs] ext4: clear buffer verified flag if read meta block from disk (Lukas Czerner) [1908714] - [fs] ext4: treat buffers contining write errors as valid in ext4_sb_bread() (Lukas Czerner) [1908714] - [fs] ext4: treat buffers with write errors as containing valid data (Lukas Czerner) [1908714] - [fs] ext4: limit entries returned when counting fsmap records (Lukas Czerner) [1908714] - [fs] ext4: fix error handling code in add_new_gdb (Lukas Czerner) [1908714] - [fs] ext4: fix leaking sysfs kobject after failed mount (Lukas Czerner) [1908714] - [fs] ext4: fix checking of directory entry validity for inline directories (Lukas Czerner) [1908714] - [fs] ext4: correctly restore system zone info when remount fails (Lukas Czerner) [1908714] - [fs] ext4: handle add_system_zone() failure in ext4_setup_system_zone() (Lukas Czerner) [1908714] - [fs] ext4: fold ext4_data_block_valid_rcu() into the caller (Lukas Czerner) [1908714] - [fs] ext4: check journal inode extents more carefully (Lukas Czerner) [1908714] - [fs] ext4: don't allow overlapping system zones (Lukas Czerner) [1908714] - [fs] ext4: handle error of ext4_setup_system_zone() on remount (Lukas Czerner) [1908714] - [fs] jbd2: add the missing unlock_buffer() in the error path of jbd2_write_superblock() (Lukas Czerner) [1908714] - [fs] ext4: fix mount failure with quota configured as module (Lukas Czerner) [1908714] - [fs] ext4: improve explanation of a mount failure caused by a misconfigured kernel (Lukas Czerner) [1908714] - [include] jbd2: fix kernel-doc notation warning (Lukas Czerner) [1908714] - [base] mm: don't panic when links can't be created in sysfs (Baoquan He) [1890171] - [base] mm: don't rely on system state to detect hot-plug operations (Baoquan He) [1890171] - [mm] mm: replace memmap_context by meminit_context (Baoquan He) [1890171] - [net] Update window_clamp if SOCK_RCVBUF is set (Balazs Nemeth) [1905985] - [cpufreq] cpufreq: acpi-cpufreq: Mark sometimes used ID structs as __maybe_unused (David Arcari) [1857102] - [cpufreq] cpufreq: acpi-cpufreq: Mark 'dummy' variable as __always_unused (David Arcari) [1857102] - [cpufreq] cpufreq: Replace HTTP links with HTTPS ones (David Arcari) [1857102] - [cpufreq] cpufreq: change '.set_boost' to act on one policy (David Arcari) [1857102] - [cpufreq] cpufreq: Fix up cpufreq_boost_set_sw() (David Arcari) [1857102] - [cpufreq] cpufreq: Convert to new X86 CPU match macros (David Arcari) [1857102] - [cpufreq] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (David Arcari) [1857102]- [platform] platform/x86: ISST: Add new PCI device ids (Prarit Bhargava) [1836722] - [net] net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when storing xps_rxqs (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when storing xps_cpus (Antoine Tenart) [1912253] - [fs] gfs2: Improve mmap write vs. punch_hole consistency (Andreas Grunbacher) [1872043] - [netdrv] bnx2x: fix spelling mistake "occurd" -> "occurred" (Manish Chopra) [1853224] - [netdrv] bnx2x: Perform Idlechk dump during the debug collection (Manish Chopra) [1853224] - [netdrv] bnx2x: Add support for idlechk tests (Manish Chopra) [1853224] - [netdrv] bnx2x: Add Idlechk related register definitions (Manish Chopra) [1853224] - [netdrv] bnx2x: use generic power management (Manish Chopra) [1853224] - [netdrv] bnx2x: allow bnx2x_bsc_read() to schedule (Manish Chopra) [1853224] - [netdrv] bnx2x: Remove unused inline function bnx2x_vf_vlan_credit (Manish Chopra) [1853224] - [netdrv] bnx2x: Remove Comparison to bool in bnx2x_dcb.c (Manish Chopra) [1853224] - [netdrv] bnx2x: correct a comment mistake in grammar (Manish Chopra) [1853224] - [netdrv] net: bnx2x: reject unsupported coalescing params (Manish Chopra) [1853224] - [net] tls: Implement getsockopt SOL_TLS TLS_RX (Sabrina Dubroca) [1889664] - [net] tls: Protect from calling tls_dev_del for TLS RX twice (Sabrina Dubroca) [1889664] - [net] tls: missing received data after fast remote close (Sabrina Dubroca) [1889664] - [net] tls: Fix wrong record sn in async mode of device resync (Sabrina Dubroca) [1889664] - [net] tls: fix corrupted data in recvmsg (Sabrina Dubroca) [1889664] - [net] tls: sendfile fails with ktls offload (Sabrina Dubroca) [1889664] - [net] tls: race causes kernel panic (Sabrina Dubroca) [1889664] - [net] tls: Fix kmap usage (Sabrina Dubroca) [1889664] - [net] tls: allow MSG_CMSG_COMPAT in sendmsg (Sabrina Dubroca) [1889664] - [net] tls: fix sign extension issue when left shifting u16 value (Sabrina Dubroca) [1889664] - [net] tls: Add asynchronous resync (Sabrina Dubroca) [1889664] - [net] revert "net/tls: Add force_resync for driver resync" (Sabrina Dubroca) [1889664] - [net] net/tls: Add force_resync for driver resync (Sabrina Dubroca) [1889664] - [net] tls: Avoid assigning 'const' pointer to non-const pointer (Sabrina Dubroca) [1889664] - [net] tls: move mark_tech_preview to tls_init (Sabrina Dubroca) [1907477] - [mm] mm/hmm: do not call hmm_vma_walk_hole() while holding a spinlock (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: add 'depth' parameter to pte_hole (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: don't lock PTEs for walk_page_range_novma() (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: allow walking without vma (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: add p4d_entry() and pgd_entry() (Chris von Recklinghausen) [1890943] - [x86] x86: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [s390] s390: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [powerpc] powerpc: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [arm64] arm64: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [mm] mm: add generic p?d_leaf() macros (Chris von Recklinghausen) [1890943] - [mm] mm: move_pages: report the number of non-attempted pages (Chris von Recklinghausen) [1890943] - [mm] autonuma: fix watermark checking in migrate_balanced_pgdat() (Chris von Recklinghausen) [1890943] - [mm] mm/migrate.c: handle freed page at the first place (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: Take the pagetable lock in walk_pte_range() (Chris von Recklinghausen) [1890943] - [mm] mm: untag user pointers passed to memory syscalls (Chris von Recklinghausen) [1890943] - [mm] mm: page cache: store only head pages in i_pages (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: fix reference check race between __find_get_block() and migration (Chris von Recklinghausen) [1890943] - [fs] mm: migrate: remove unused mode argument (Chris von Recklinghausen) [1890943] - [mm] powerpc/book3s: Use config independent helpers for page table walk (Chris von Recklinghausen) [1890943] - [mm] mm/mmu_notifier: use correct mmu_notifier events for each invalidation (Chris von Recklinghausen) [1890943] - [mm] mm/mmu_notifier: contextual information for event triggering invalidation (Chris von Recklinghausen) [1890943] - [mm] powerpc/mm: move __find_linux_pte() out of hugetlbpage.c (Chris von Recklinghausen) [1890943] - [mm] mm/filemap.c: remove redundant test from find_get_pages_contig (Chris von Recklinghausen) [1890943] - [mm] mm/hugetlb: distinguish between migratability and movability (Chris von Recklinghausen) [1890943] - [mm] numa: change get_mempolicy() to use nr_node_ids instead of MAX_NUMNODES (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: make buffer_migrate_page_norefs() actually succeed (Chris von Recklinghausen) [1890943] - [mm] mm: treewide: remove unused address argument from pte_alloc functions (Chris von Recklinghausen) [1890943] - [fs] mm: migrate: drop unused argument of migrate_page_move_mapping() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: provide buffer_migrate_page_norefs() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: move migrate_page_lock_buffers() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: lock buffers before migrate_page_move_mapping() (Chris von Recklinghausen) [1890943] - [mm] mm: Convert huge_memory to XArray (Chris von Recklinghausen) [1890943] - [mm] mm: Convert page migration to XArray (Chris von Recklinghausen) [1890943] - [mm] powerpc/mm/book3s: Check for pmd_large instead of pmd_trans_huge (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move two more functions from pgtable_64.h to pgtable.h (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move pti_set_user_pgtbl() to pgtable.h (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move pgdp kernel/user conversion functions to pgtable.h (Chris von Recklinghausen) [1890943] - [mm] x86/pgtable: Rename pti_set_user_pgd() to pti_set_user_pgtbl() (Chris von Recklinghausen) [1890943] - [mm] mm: memcg/slab: fix root memcg vmstats (Waiman Long) [1877019] - [mm] mm/slub: let number of online CPUs determine the slub page order (Waiman Long) [1877019] - [mm] mm, debug_pagealloc: don't rely on static keys too early (Waiman Long) [1877019] - [mm] mm: memcg: link page counters to root if use_hierarchy is false (Waiman Long) [1877019] - [mm] mm/memcg: unify swap and memsw page counters (Waiman Long) [1877019] - [mm] mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg (Waiman Long) [1877019] - [mm] mlock: fix unevictable_pgs event counts on THP (Waiman Long) [1877019] - [mm] mm/filemap: fix storing to a THP shadow entry (Waiman Long) [1877019] - [lib] XArray: add xas_split (Waiman Long) [1877019] - [lib] XArray: add xa_get_order (Waiman Long) [1877019] - [lib] XArray: Add private interface for workingset node deletion (Waiman Long) [1877019] - [include] XArray: Fix xas_reload for multi-index entries (Waiman Long) [1877019] - [include] xarray.h: correct return code documentation for xa_store_{bh, irq}() (Waiman Long) [1877019] - [mm] mm: memcg/slab: uncharge during kmem_cache_free_bulk() (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix racy access to page->mem_cgroup in mem_cgroup_from_obj() (Waiman Long) [1877019] - [mm] mm: memcontrol: fix missing suffix of workingset_restore (Waiman Long) [1877019] - [mm] mm: memcontrol: fix warning when allocating the root cgroup (Waiman Long) [1877019] - [mm] mm: replace hpage_nr_pages with thp_nr_pages (Waiman Long) [1877019] - [mm] mm: add thp_size (Waiman Long) [1877019] - [include] mm: add thp_order (Waiman Long) [1877019] - [include] include/linux/huge_mm.h: check PageTail in hpage_nr_pages even when !THP (Waiman Long) [1877019] - [mm] mm/page_vma_mapped.c: explicitly compare pfn for normal, hugetlbfs and THP page (Waiman Long) [1877019] - [mm] mm/vmscan: restore active/inactive ratio for anonymous LRU (Waiman Long) [1877019] - [mm] mm/swap: implement workingset detection for anonymous LRU (Waiman Long) [1877019] - [mm] mm/swapcache: support to handle the shadow entries (Waiman Long) [1877019] - [mm] mm: fix swap cache node allocation mask (Waiman Long) [1877019] - [include] include/linux/swap.h: delete meaningless __add_to_swap_cache() declaration (Waiman Long) [1877019] - [mm] mm/swap_state.c: use the same way to count page in_swap_cache (Waiman Long) [1877019] - [mm] mm: shmem: use proper gfp flags for shmem_writepage() (Waiman Long) [1877019] - [mm] mm/workingset: prepare the workingset detection infrastructure for anon LRU (Waiman Long) [1877019] - [mm] mm/vmscan: protect the workingset on anonymous LRU (Waiman Long) [1877019] - [mm] mm/vmscan: make active/inactive ratio as 1:1 for anon lru (Waiman Long) [1877019] - [tools] kselftests: cgroup: add perpcu memory accounting test (Waiman Long) [1877019] - [mm] mm: memcg: charge memcg percpu memory to the parent cgroup (Waiman Long) [1877019] - [mm] mm: memcg/percpu: per-memcg percpu memory statistics (Waiman Long) [1877019] - [mm] mm: memcg/percpu: account percpu memory to memory cgroups (Waiman Long) [1877019] - [mm] percpu: return number of released bytes from pcpu_free_area() (Waiman Long) [1877019] - [mm] percpu: make pcpu_alloc() aware of current gfp context (Waiman Long) [1877019] - [mm] mm/khugepaged: fix filemap page_to_pgoff(page) != offset (Waiman Long) [1877019] - [mm] mm, slub: restore initial kmem_cache flags (Waiman Long) [1877019] - [include] mm: memcg/slab: fix slab statistics in !SMP configuration (Waiman Long) [1877019] - [mm] mm: slab: fix potential double free in ___cache_free (Waiman Long) [1877019] - [mm] ksm: reinstate memcg charge on copied pages (Waiman Long) [1877019] - [mm] mm: slub: fix conversion of freelist_corrupted() (Waiman Long) [1877019] - [mm] memcg: fix use-after-free in uncharge_batch (Waiman Long) [1877019] - [mm] mm/memory: fix IO cost for anonymous page (Waiman Long) [1877019] - [mm] mm: workingset: age nonresident information alongside anonymous pages (Waiman Long) [1877019] - [mm] slub: cure list_slab_objects() from double fix (Waiman Long) [1877019] - [mm] mm: do_swap_page(): fix up the error code (Waiman Long) [1877019] - [misc] lkdtm/heap: Avoid edge and middle of slabs (Waiman Long) [1877019] - [mm] mm: slub: really fix slab walking for init_on_free (Waiman Long) [1877019] - [mm] mm/slab.c: fix kernel-doc warning for __ksize() (Waiman Long) [1877019] - [mm] mm: memcontrol: restore proper dirty throttling when memory.high changes (Waiman Long) [1877019] - [mm] memcg, oom: check memcg margin for parallel oom (Waiman Long) [1877019] - [mm] mm, memcg: avoid stale protection values when cgroup is above protection (Waiman Long) [1877019] - [mm] mm, memcg: unify reclaim retry limits with page allocator (Waiman Long) [1877019] - [mm] mm, memcg: reclaim more aggressively before high allocator throttling (Waiman Long) [1877019] - [mm] mm: memcontrol: avoid workload stalls when lowering memory.high (Waiman Long) [1877019] - [include] mm: kmem: switch to static_branch_likely() in memcg_kmem_enabled() (Waiman Long) [1877019] - [mm] mm: slab: rename (un)charge_slab_page() to (un)account_slab_page() (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove unused argument by charge_slab_page() (Waiman Long) [1877019] - [tools] tools/cgroup: add memcg_slabinfo.py tool (Waiman Long) [1877019] - [tools] kselftests: cgroup: add kernel memory accounting tests (Waiman Long) [1877019] - [mm] mm: memcg/slab: use a single set of kmem_caches for all allocations (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove redundant check in memcg_accumulate_slabinfo() (Waiman Long) [1877019] - [mm] mm: memcg/slab: deprecate slab_root_caches (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove memcg_kmem_get_cache() (Waiman Long) [1877019] - [mm] mm: memcg/slab: simplify memcg cache creation (Waiman Long) [1877019] - [mm] mm: memcg/slab: use a single set of kmem_caches for all accounted allocations (Waiman Long) [1877019] - [mm] mm, slab_common: fix a typo in comment "eariler"->"earlier" (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix memory leak at non-root kmem_cache destroy (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer release (Waiman Long) [1877019] - [mm] mm: memcg/slab: move memcg_kmem_bypass() to memcontrol.h (Waiman Long) [1877019] - [mm] mm: memcg/slab: deprecate memory.kmem.slabinfo (Waiman Long) [1877019] - [mm] mm, memcg: fix build error around the usage of kmem_caches (Waiman Long) [1877019] - [mm] mm: memcg/slab: charge individual slab objects instead of pages (Waiman Long) [1877019] - [mm] mm: memcg/slab: save obj_cgroup for non-root slab objects (Waiman Long) [1877019] - [mm] mm: memcg/slab: allocate obj_cgroups for non-root slab pages (Waiman Long) [1877019] - [mm] mm: memcg/slab: obj_cgroup API (Waiman Long) [1877019] - [mm] mm: memcontrol: decouple reference counting from page accounting (Waiman Long) [1877019] - [mm] mm: slub: implement SLUB version of obj_to_index() (Waiman Long) [1877019] - [mm] mm: memcg: convert vmstat slab counters to bytes (Waiman Long) [1877019] - [mm] mm: memcg: prepare for byte-sized vmstat items (Waiman Long) [1877019] - [mm] mm: memcg: factor out memcg- and lruvec-level changes out of __mod_lruvec_state() (Waiman Long) [1877019] - [mm] mm: kmem: make memcg_kmem_enabled() irreversible (Waiman Long) [1877019] - [mm] mm, slab/slub: improve error reporting and overhead of cache_from_obj() (Waiman Long) [1877019] - [mm] mm, slab/slub: move and improve cache_from_obj() (Waiman Long) [1877019] - [mm] mm, slub: extend checks guarded by slub_debug static key (Waiman Long) [1877019] - [mm] mm, slub: introduce kmem_cache_debug_flags() (Waiman Long) [1877019] - [mm] mm, slub: introduce static key for slub_debug() (Waiman Long) [1877019] - [mm] mm, slub: make reclaim_account attribute read-only (Waiman Long) [1877019] - [mm] mm, slub: make remaining slub_debug related attributes read-only (Waiman Long) [1877019] - [mm] mm, slub: remove runtime allocation order changes (Waiman Long) [1877019] - [mm] mm, slub: make some slub_debug related attributes read-only (Waiman Long) [1877019] - [documentation] mm, slub: extend slub_debug syntax for multiple blocks (Waiman Long) [1877019] - [mm] mm/slab.c: update outdated kmem_list3 in a comment (Waiman Long) [1877019] - [mm] mm, slab: check GFP_SLAB_BUG_MASK before alloc_pages in kmalloc_order (Waiman Long) [1877019] - [mm] mm/slab: add naive detection of double free (Waiman Long) [1877019] - [init] mm/slab: expand CONFIG_SLAB_FREELIST_HARDENED to include SLAB (Waiman Long) [1877019] - [mm] mm: ksize() should silently accept a NULL pointer (Waiman Long) [1877019] - [include] include/linux/vmstat.h: remove unused page state adjustment macro (Waiman Long) [1877019] - [include] mm, memcg: fix inconsistent oom event behavior (Waiman Long) [1877019] - [mm] mm/memcg: fix refcount error while moving and swapping (Waiman Long) [1877019] - [mm] mm/memcontrol: fix OOPS inside mem_cgroup_get_nr_swap_pages() (Waiman Long) [1877019] - [mm] mm/memcontrol.c: add missed css_put() (Waiman Long) [1877019] - [mm] mm: memcontrol: handle div0 crash race condition in memory.low (Waiman Long) [1877019] - [kernel] mm: memcontrol: recursive memory.low protection (Waiman Long) [1877019] - [include] mm, memcg: consider subtrees in memory.events (Waiman Long) [1877019] - [net] mm, treewide: rename kzfree() to kfree_sensitive() (Waiman Long) [1877019] - [mm] mm/slab: use memzero_explicit() in kzfree() (Waiman Long) [1877019] - [mm] mm: swap: memcg: fix memcg stats for huge pages (Waiman Long) [1877019] - [mm] mm: swap: fix vmstats for huge pages (Waiman Long) [1877019] - [mm] mm: vmscan: limit the range of LRU type balancing (Waiman Long) [1877019] - [mm] mm: vmscan: reclaim writepage is IO cost (Waiman Long) [1877019] - [mm] mm: vmscan: determine anon/file pressure balance at the reclaim root (Waiman Long) [1877019] - [mm] mm: balance LRU lists based on relative thrashing (Waiman Long) [1877019] - [mm] mm: only count actual rotations as LRU reclaim cost (Waiman Long) [1877019] - [mm] mm: deactivations shouldn't bias the LRU balance (Waiman Long) [1877019] - [mm] mm: base LRU balancing on an explicit cost model (Waiman Long) [1877019] - [mm] mm: vmscan: drop unnecessary div0 avoidance rounding in get_scan_count() (Waiman Long) [1877019] - [mm] mm: remove use-once cache bias from LRU balancing (Waiman Long) [1877019] - [mm] mm: workingset: let cache workingset challenge anon (Waiman Long) [1877019] - [mm] mm: fold and remove lru_cache_add_anon() and lru_cache_add_file() (Waiman Long) [1877019] - [kernel] mm: allow swappiness that prefers reclaiming anon over the file workingset (Waiman Long) [1877019] - [mm] mm: keep separate anon and file statistics on page reclaim activity (Waiman Long) [1877019] - [mm] mm: fix LRU balancing effect of new transparent huge pages (Waiman Long) [1877019] - [mm] mm: replace list_move_tail() with add_page_to_lru_list_tail() (Waiman Long) [1877019] - [mm] mm: memcontrol: update page->mem_cgroup stability rules (Waiman Long) [1877019] - [mm] mm: memcontrol: delete unused lrucare handling (Waiman Long) [1877019] - [documentation] mm: memcontrol: document the new swap control behavior (Waiman Long) [1877019] - [mm] mm: memcontrol: charge swapin pages on instantiation (Waiman Long) [1877019] - [mm] mm: memcontrol: make swap tracking an integral part of memory control (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare swap controller setup for integration (Waiman Long) [1877019] - [mm] mm: memcontrol: drop unused try/commit/cancel charge API (Waiman Long) [1877019] - [mm] mm: memcontrol: convert anon and file-thp to new mem_cgroup_charge() API (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_ANON_THPS counter (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_ANON_MAPPED counter (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_FILE_PAGES and NR_SHMEM counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare cgroup vmstat infrastructure for native anon counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare move_account for removal of private page type counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare uncharging for removal of private page type counters (Waiman Long) [1877019] - [mm] mm: memcontrol: convert page cache to a new mem_cgroup_charge() API (Waiman Long) [1877019] - [mm] mm: memcontrol: move out cgroup swaprate throttling (Waiman Long) [1877019] - [mm] mm: shmem: remove rare optimization when swapin races with hole punching (Waiman Long) [1877019] - [mm] mm: memcontrol: drop @compound parameter from memcg charging API (Waiman Long) [1877019] - [mm] mm: memcontrol: fix stat-corrupting race in charge moving (Waiman Long) [1877019] - [mm] mm: fix NUMA node file count error in replace_page_cache() (Waiman Long) [1877019] - [mm] mm/slub: fix stack overruns with SLUB_STATS (Waiman Long) [1877019] - [mm] slub: remove kmalloc under list_lock from list_slab_objects() V2 (Waiman Long) [1877019] - [mm] slub: Remove userspace notifier for cache add/remove (Waiman Long) [1877019] - [mm] mm/slub.c: fix corrupted freechain in deactivate_slab() (Waiman Long) [1877019] - [mm] mm/slub: fix incorrect interpretation of s->offset (Waiman Long) [1877019] - [mm] slub: avoid redzone when choosing freepointer location (Waiman Long) [1877019] - [mm] slub: relocate freelist pointer to middle of object (Waiman Long) [1877019] - [mm] slub: improve bit diffusion for freelist ptr obfuscation (Waiman Long) [1877019] - [mm] mm, slb: improve memory accounting (Waiman Long) [1877019] - [mm] thp: change CoW semantics for anon-THP (Waiman Long) [1877019] - [mm] khugepaged: allow to collapse PTE-mapped compound pages (Waiman Long) [1877019] - [mm] khugepaged: allow to collapse a page shared across fork (Waiman Long) [1877019] - [mm] khugepaged: drain LRU add pagevec after swapin (Waiman Long) [1877019] - [mm] khugepaged: drain all LRU caches before scanning pages (Waiman Long) [1877019] - [mm] khugepaged: do not stop collapse if less than half PTEs are referenced (Waiman Long) [1877019] - [tools] khugepaged: add self test (Waiman Long) [1877019] - [mm] mm: code cleanup for MADV_FREE (Waiman Long) [1877019] - [mm] mm, thp: track fallbacks due to failed memcg charges separately (Waiman Long) [1877019] - [mm] mm, shmem: add vmstat for hugepage fallback (Waiman Long) [1877019] - [mm] autonuma: reduce cache footprint when scanning page tables (Waiman Long) [1877019] - [trace] mm/vmscan: simplify trace_reclaim_flags and trace_shrink_flags (Waiman Long) [1877019] - [mm] mm/memcg: optimize memory.numa_stat like memory.stat (Waiman Long) [1877019] - [mm] memcg: fix memcg_kmem_bypass() for remote memcg charging (Waiman Long) [1877019] - [mm] mm/memcg: automatically penalize tasks with high swap use (Waiman Long) [1877019] - [include] mm/memcg: move cgroup high memory limit setting into struct page_counter (Waiman Long) [1877019] - [mm] mm/memcg: move penalty delay clamping out of calculate_high_delay() (Waiman Long) [1877019] - [mm] mm/memcg: prepare for swap over-high accounting and penalty calculation (Waiman Long) [1877019] - [mm] memcg: expose root cgroup's memory.stat (Waiman Long) [1877019] - [mm] mm, memcg: add workingset_restore in memory.stat (Waiman Long) [1877019] - [documentation] doc: cgroup: improve formatting of mem stats (Waiman Long) [1877019] - [documentation] docs: cgroup: mm: Fix spelling of "list" (Waiman Long) [1877019] - [mm] mm, memcg: fix error return value of mem_cgroup_css_alloc() (Waiman Long) [1877019] - [include] memcontrol.h: Replace zero-length array with flexible-array member (Waiman Long) [1877019] - [mm] mm, memcg: bypass high reclaim iteration for cgroup hierarchy root (Waiman Long) [1877019] - [mm] mm: memcg: make memory.oom.group tolerable to task migration (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.swap.max load tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.low load/store tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.max load tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.high load/store tearing (Waiman Long) [1877019] - [mm] mm/memcontrol.c: make mem_cgroup_id_get_many() __maybe_unused (Waiman Long) [1877019] - [mm] memcg: css_tryget_online cleanups (Waiman Long) [1877019] - [mm] mm/memcontrol.c: cleanup some useless code (Waiman Long) [1877019] - [mm] mm/memcontrol.c: fix a -Wunused-function warning (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to rcu protection in drain_all_stock() (Waiman Long) [1877019] - [mm] mm/khugepaged.c: fix khugepaged's request size in collapse_file (Waiman Long) [1877019] - [mm] khugepaged: fix null-pointer dereference due to race (Waiman Long) [1877019] - [mm] mm, thp: stop leaking unreleased file pages (Waiman Long) [1877019] - [trace] mm: khugepaged: add trace status description for SCAN_PAGE_HAS_PRIVATE (Waiman Long) [1877019] - [mm] mm, thp: recheck each page before collapsing file THP (Waiman Long) [1877019] - [mm] mm/thp: allow dropping THP from page cache (Waiman Long) [1877019] - [mm] mm/vmscan.c: support removing arbitrary sized pages from mapping (Waiman Long) [1877019] - [mm] mm/thp: fix node page state in split_huge_page_to_list() (Waiman Long) [1877019] - [fs] proc/meminfo: fix output alignment (Waiman Long) [1877019] - [mm] mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy path (Waiman Long) [1877019] - [fs] mm, thp: avoid writes to file with THP in pagecache (Waiman Long) [1877019] - [mm] mm, thp: add read-only THP support for (non-shmem) FS (Waiman Long) [1877019] - [mm] khugepaged: rename collapse_shmem() and khugepaged_scan_shmem() (Waiman Long) [1877019] - [fs] mm,thp: stats for file backed THP (Waiman Long) [1877019] - [mm] filemap: update offset check in filemap_fault() (Waiman Long) [1877019] - [mm] filemap: check compound_head(page)->mapping in pagecache_get_page() (Waiman Long) [1877019] - [mm] filemap: check compound_head(page)->mapping in filemap_fault() (Waiman Long) [1877019] - [mm] mm: mempolicy: fix the wrong return value and potential pages leak of mbind (Waiman Long) [1877019] - [mm] mm: thp: fix false negative of shmem vma's THP eligibility (Waiman Long) [1877019] - [mm] mm: thp: make transhuge_vma_suitable available for anonymous THP (Waiman Long) [1877019] - [mm] mm, thp, proc: report THP eligibility for each vma (Waiman Long) [1877019] - [documentation] mm, proc: be more verbose about unstable VMA flags in /proc//smaps (Waiman Long) [1877019] - [mm] mm: thp: pass correct vm_flags to hugepage_vma_check() (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps_rollup: convert to single value seq_file (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps: factor out common stats printing (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps: factor out mem stats gathering (Waiman Long) [1877019] - [fs] mm: /proc/pid/*maps remove is_pid and related wrappers (Waiman Long) [1877019] - [mm] mm: workingset: fix vmstat counters for shadow nodes (Waiman Long) [1877019] - [mm] mm: workingset: add vmstat counter for shadow nodes (Waiman Long) [1877019] - [include] mm/memcg: Document access rule regarding mem_cgroup structure (Waiman Long) [1877019] - [mm] mm/page_alloc: silence a KASAN false positive (Waiman Long) [1877019] - [s390] s390/setup: init jump labels before command line parsing (Waiman Long) [1877019] - [mm] s390/maccess: add no DAT mode to kernel_write (Waiman Long) [1877019] - [mm] s390: Change s390_kernel_write() return type to match memcpy() (Waiman Long) [1877019] - [kernel] PM: hibernate: fix crashes with init_on_free=1 (Waiman Long) [1877019] - [mm] mm/slub.c: init_on_free=1 should wipe freelist ptr for bulk allocations (Waiman Long) [1877019] - [mm] mm/page_alloc.c: fix a crash in free_pages_prepare() (Waiman Long) [1877019] - [mm] mm: slub: Fix slab walking for init_on_free (Waiman Long) [1877019] - [mm] mm, slab: move memcg_cache_params structure to mm/slab.h (Waiman Long) [1877019] - [mm] mm, slab: extend slab/shrink to shrink all memcg caches (Waiman Long) [1877019] - [mm] mm: mempolicy: handle vma with unmovable pages mapped correctly in mbind (Waiman Long) [1877019] - [mm] mm: mempolicy: make the behavior consistent when MPOL_MF_MOVE* and MPOL_MF_STRICT were specified (Waiman Long) [1877019] - [init] init/Kconfig: fix neighboring typos (Waiman Long) [1877019] - [mm] mm: security: introduce init_on_alloc=1 and init_on_free=1 boot options (Waiman Long) [1877019] - [mm] memcg, oom: no oom-kill for __GFP_RETRY_MAYFAIL (Waiman Long) [1877019] - [mm] mm/kasan: add object validation in ksize() (Waiman Long) [1877019] - [mm] mm/slab: refactor common ksize KASAN logic into slab_common.c (Waiman Long) [1877019] - [mm] mm/slub.c: avoid double string traverse in kmem_cache_flags() (Waiman Long) [1877019] - [mm] mm/slab: sanity-check page type when looking up cache (Waiman Long) [1877019] - [mm] mm/slab: validate cache membership under freelist hardening (Waiman Long) [1877019] - [mm] mm/migrate: add stable check in migrate_vma_insert_page() (Waiman Long) [1877019] - [mm] mm/migrate: clean up some minor coding style (Waiman Long) [1877019] - [mm] mm/migrate: remove useless mask of start address (Waiman Long) [1877019] - [kernel] uprobe: use original page when all uprobes are removed (Waiman Long) [1877019] - [mm] mm: move memcmp_pages() and pages_identical() (Waiman Long) [1877019] - [mm] mm, thp: do not queue fully unmapped pages for deferred split (Waiman Long) [1877019] - [mm] mm/khugepaged: fix the xas_create_range() error path (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() do not crash on Compound (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() without freezing new_page (Waiman Long) [1877019] - [mm] mm/khugepaged: minor reorderings in collapse_shmem() (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() remember to clear holes (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() stop if punched or truncated (Waiman Long) [1877019] - [mm] mm: Convert khugepaged_scan_shmem to XArray (Waiman Long) [1877019] - [mm] mm: Convert collapse_shmem to XArray (Waiman Long) [1877019] - [mm] mm: thp: inc counter for collapsed shmem THP (Waiman Long) [1877019] - [mm] mm: thp: register mm for khugepaged when merging vma for shmem (Waiman Long) [1877019] - [mm] mm: swapoff: shmem_unuse() stop eviction without igrab() (Waiman Long) [1877019] - [mm] mm: swapoff: take notice of completion sooner (Waiman Long) [1877019] - [mm] mm: swapoff: remove too limiting SWAP_UNUSE_MAX_TRIES (Waiman Long) [1877019] - [mm] mm: swapoff: shmem_find_swap_entries() filter out other types (Waiman Long) [1877019] - [mm] mm: rid swapoff of quadratic complexity (Waiman Long) [1877019] - [mm] shmem: Comment fixups (Waiman Long) [1877019] - [mm] memfd: Convert memfd_tag_pins to XArray (Waiman Long) [1877019] - [mm] memfd: Convert memfd_wait_for_pins to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_partial_swap_usage to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_free_swap to XArray (Waiman Long) [1877019] - [lib] shmem: Convert shmem_alloc_hugepage to XArray (Waiman Long) [1877019] - [tools] shmem: Convert find_swap_entry to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_confirm_swap to XArray (Waiman Long) [1877019]- [infiniband] RDMA/core: Do not indicate device ready when device enablement fails (Kamal Heib) [1902144] - [infiniband] RDMA/core: Clean up cq pool mechanism (Kamal Heib) [1902144] - [pci] PCI/ASPM: Disable ASPM on ASMedia ASM1083/1085 PCIe-to-PCI bridge (Myron Stowe) [1897927] - [pci] PCI: Make pcie_find_root_port() work for Root Ports (Myron Stowe) [1897927] - [pci] PCI: Add ACS quirk for Intel Root Complex Integrated Endpoints (Myron Stowe) [1897927] - [pci] PCI: Avoid FLR for AMD Starship USB 3.0 (Myron Stowe) [1897927] - [pci] PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0 (Myron Stowe) [1897927] - [pci] PCI/switchtec: Correct bool variable type assignment (Myron Stowe) [1897927] - [pci] PCI: Allow pci_resize_resource() for devices on root bus (Myron Stowe) [1897927] - [pci] PCI/PM: Adjust pcie_wait_for_link_delay() for caller delay (Myron Stowe) [1897927] - [pci] PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect (Myron Stowe) [1897927] - [tty] serial: 8250_pci: Move Pericom IDs to pci_ids.h (Myron Stowe) [1897927] - [pci] PCI/PM: Call .bridge_d3() hook only if non-NULL (Myron Stowe) [1897927] - [pci] PCI: Rename _DSM constants to align with spec (Myron Stowe) [1897927] - [pci] PCI/PME: Fix kernel-doc of pcie_pme_resume() and pcie_pme_remove() (Myron Stowe) [1897927] - [pci] PCI: Unify pcie_find_root_port() and pci_find_pcie_root_port() (Myron Stowe) [1897927] - [pci] PCI: Replace zero-length array with flexible-array (Myron Stowe) [1897927] - [pci] PCI: shpchp: Make shpchp_unconfigure_device() void (Myron Stowe) [1897927] - [pci] PCI: Use of_node_name_eq() for node name comparisons (Myron Stowe) [1897927] - [pci] PCI: pciehp: Remove unused EMI() and HP_SUPR_RM() macros (Myron Stowe) [1897927] - [pcmcia] pcmcia: Use CardBus window names (PCI_CB_BRIDGE_IO_0_WINDOW etc) when freeing (Myron Stowe) [1897927] - [pci] PCI: Use bridge window names (PCI_BRIDGE_IO_WINDOW etc) (Myron Stowe) [1897927] - [pci] PCI/PTM: Inherit Switch Downstream Port PTM settings from Upstream Port (Myron Stowe) [1897927] - [pci] PCI: Program MPS for RCiEP devices (Myron Stowe) [1897927] - [pci] PCI: Fix pci_host_bridge struct device release/free handling (Myron Stowe) [1897927] - [pci] PCI: Fix pci_register_host_bridge() device_register() error handling (Myron Stowe) [1897927] - [pci] PCI/ASPM: Allow ASPM on links to PCIe-to-PCI/PCI-X Bridges (Myron Stowe) [1897927] - [x86] x86/tboot: Don't disable swiotlb when iommu is forced on (Tony Camuso) [1883395] - [iommu] iommu/vt-d: Avoid panic if iommu init fails in tboot system (Tony Camuso) [1883395] - [pci] PCI/ERR: Clear PCIe Device Status errors only if OS owns AER (Myron Stowe) [1838358] - [pci] PCI/ERR: Rename pci_aer_clear_device_status() to pcie_clear_device_status() (Myron Stowe) [1838358] - [pci] PCI/AER: Log correctable errors as warning, not error (Myron Stowe) [1838358] - [pci] PCI/AER: Simplify __aer_print_error() (Myron Stowe) [1838358] - [misc] mei: hdcp: fix mei_hdcp_verify_mprime() input parameter (Tony Camuso) [1874577] - [misc] mei: add device kind to sysfs (Tony Camuso) [1874577] - [misc] mei: hw: don't use one element arrays (Tony Camuso) [1874577] - [misc] mei: hw: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: client: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: bus: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: ioctl: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: hbm: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] Revert "mei: Avoid the use of one-element arrays" (Tony Camuso) [1874577] - [misc] mei: Avoid the use of one-element arrays (Tony Camuso) [1874577] - [misc] mei: Replace HTTP links with HTTPS ones (Tony Camuso) [1874577] - [misc] mei: hdcp: Replace one-element array with flexible-array member (Tony Camuso) [1874577] - [misc] mei: bus: don't clean driver pointer (Tony Camuso) [1874577] - [misc] mei: me: add MEI device for KBP with ITPS capability (Tony Camuso) [1874577] - [misc] mei: me: add MEI device for SPT with ITPS capability (Tony Camuso) [1874577] - [misc] mei: me: add kdoc for mei_me_fw_type_nm() (Tony Camuso) [1874577] - [misc] mei: me: make mei_me_fw_sku_sps_4() less cryptic (Tony Camuso) [1874577] - [misc] mei: me: constify the device parameter to the probe quirk (Tony Camuso) [1874577] - [misc] mei: hdcp: Constify struct mei_cl_device_id (Tony Camuso) [1874577] - [misc] mei: me: add tiger lake point device ids for H platforms (Tony Camuso) [1874577] - [misc] mei: me: disable mei interface on Mehlow server platforms (Tony Camuso) [1874577] - [misc] mei: release me_cl object reference (Tony Camuso) [1874577] - [misc] mei: me: disable mei interface on LBG servers (Tony Camuso) [1874577] - [fs] NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock (Dave Wysochanski) [1906306] - [fs] NFS: Adjust fs_context error logging (Scott Mayhew) [1907711] - [mm] powerpc/book3s64/pkeys: Fix pkey_access_permitted() for execute disable pkey (Steve Best) [1912294] - [infiniband] IB/isert: add module param to set sg_tablesize for IO cmd (Kamal Heib) [1887359] - [infiniband] IB/isert: allocate RW ctxs according to max IO size (Kamal Heib) [1887359] - [net] sched: flower: Mark MPLS multilabel match as Tech Preview (Guillaume Nault) [1814836] - [net] sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower (Guillaume Nault) [1814836] - [net] cls_flower: remove mpls_opts_policy (Guillaume Nault) [1814836] - [net] flow_dissector: work around stack frame size warning (Guillaume Nault) [1814836] - [net] cls_flower: Support filtering on multiple MPLS Label Stack Entries (Guillaume Nault) [1814836] - [net] flow_dissector: Parse multiple MPLS Label Stack Entries (Guillaume Nault) [1814836] - [netdrv] net/mlx5e: Use generic API to build MPLS label (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Support pedit on mpls over UDP decap (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Add support for hw decapsulation of MPLS over UDP (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Allow to match on mpls parameters (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Add support for hw encapsulation of MPLS over UDP (Alaa Hleihel) [1790220]- [netdrv] net: intel: Remove in_interrupt() warnings (Ken Cox) [1838731] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838731] - [netdrv] ixgbe: use eth_zero_addr() to clear mac address (Ken Cox) [1838731] - [netdrv] ixgbe: Remove unnecessary usages of memset (Ken Cox) [1838731] - [netdrv] ixgbe: use generic power management (Ken Cox) [1838731] - [netdrv] ixgbe: convert to new udp_tunnel_nic infra (Ken Cox) [1838731] - [netdrv] ixgbe: don't clear UDP tunnel ports when RXCSUM is disabled (Ken Cox) [1838731] - [netdrv] ixgbe: Cleanup unneeded delay in ethtool test (Ken Cox) [1838731] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838731] - [netdrv] net: ethernet: ixgbe: don't call devm_mdiobus_free() (Ken Cox) [1838731] - [netdrv] net: ethernet: ixgbe: check the return value of ixgbe_mii_bus_init() (Ken Cox) [1838731] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838731] - [netdrv] ixgbe: protect ring accesses with READ- and WRITE_ONCE (Ken Cox) [1838731] - [netdrv] ixgbe: Remove unused inline function ixgbe_irq_disable_queues (Ken Cox) [1838731] - [netdrv] ixgbe: Use true, false for bool variable in __ixgbe_enable_sriov() (Ken Cox) [1838731] - [netdrv] ixgbe: Remove conversion to bool in ixgbe_device_supports_autoneg_fc() (Ken Cox) [1838731] - [netdrv] ixgbe: fix signed-integer-overflow warning (Ken Cox) [1838731] - [netdrv] ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (Ken Cox) [1838731] - [netdrv] ionic: use mc sync for multicast filters (Jonathan Toppins) [1909329] - [fs] xfs: always return -ENOSPC on project quota reservation failure (Carlos Maiolino) [1908612] - [fs] xfs: group quota should return EDQUOT when prj quota enabled (Carlos Maiolino) [1908612] - [pwm] pwm: Add DesignWare PWM Controller Driver (Steve Best) [1783562] - [pwm] pwm: Ensure pwm_apply_state() doesn't modify the state argument (Steve Best) [1783562] - [net] sched: Mark VLAN_ACT_{POP,PUSH}_ETH as Tech Preview (Guillaume Nault) [1909345] - [vfio] vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn (Claudio Imbrenda) [1903972] - [s390] s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY (Claudio Imbrenda) [1903972] - [pci] PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY (Claudio Imbrenda) [1903972] - [iommu] s390/pci: adaptation of iommu to multifunction (Claudio Imbrenda) [1903972] - [s390] s390/pci: fix leak of DMA tables on hard unplug (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix PF/VF linking on hot plug (Claudio Imbrenda) [1853312] - [s390] s390/pci: re-introduce zpci_remove_device() (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix zpci_bus_link_virtfn() (Claudio Imbrenda) [1853312] - [s390] s390/pci: ignore stale configuration request event (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix enabling a reserved PCI function (Claudio Imbrenda) [1853312] - [s390] s390/pci: create links between PFs and VFs (Claudio Imbrenda) [1853312] - [pci] PCI/IOV: Introduce pci_iov_sysfs_link() function (Claudio Imbrenda) [1853312] - [s390] s390/pci: removes wrong PCI multifunction assignment (Claudio Imbrenda) [1853312] - [s390] s390/pci: Handling multifunctions (Claudio Imbrenda) [1853312] - [s390] s390/pci: Adding bus resource (Claudio Imbrenda) [1853312] - [s390] s390/pci: adapt events for zbus (Claudio Imbrenda) [1853312] - [s390] s390/pci: create zPCI bus (Claudio Imbrenda) [1853312] - [s390] s390/pci: define RID and RID available (Claudio Imbrenda) [1853312] - [s390] s390/pci: define kernel parameters for PCI multifunction (Claudio Imbrenda) [1853312] - [pci] s390/pci: embedding hotplug_slot in zdev (Claudio Imbrenda) [1853312] - [s390] s390/pci: Expose new port attribute for PCIe functions (Claudio Imbrenda) [1853312] - [s390] s390/pci: Improve handling of unset UID (Claudio Imbrenda) [1853312] - [s390] s390/pci: Fix zpci_alloc_domain() over allocation (Claudio Imbrenda) [1853312] - [arm64] arm64: insn: Fix two bugs in encoding 32-bit logical immediates (Yauheni Kaliuta) [1900977] - [iommu] iommu/amd: Set DTEto represent 512 IRTEs (Jerry Snitselaar) [1897492 1894769] - [iommu] iommu/amd: Increase interrupt remapping table limit to 512 entries (Jerry Snitselaar) [1897492 1894769] - [tools] selftests: forwarding: Add MPLS L2VPN test (Guillaume Nault) [1861261] - [net] sched: act_mpls: Add action to push MPLS LSE before Ethernet header (Guillaume Nault) [1861261] - [net] sched: act_vlan: Add {POP,PUSH}_ETH actions (Guillaume Nault) [1861261] - [fs] cifs: Fix incomplete memory allocation on setxattr path (Leif Sahlberg) [1903883] - [fs] cifs: Fix leak when handling lease break for cached root fid (Leif Sahlberg) [1903883] - [fs] Revert "cifs: Fix the target file was deleted when rename failed." (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] cifs: fix reference leak for tlink (Leif Sahlberg) [1903883] - [fs] smb3: fix unneeded error message on change notify (Leif Sahlberg) [1903883] - [fs] cifs: remove the retry in cifs_poxis_lock_set (Leif Sahlberg) [1903883] - [fs] smb3: fix access denied on change notify request to some servers (Leif Sahlberg) [1903883] - [fs] Replace HTTP links with HTTPS ones: CIFS (Leif Sahlberg) [1903883] - [fs] cifs: prevent truncation from long to int in wait_for_free_credits (Leif Sahlberg) [1903883] - [fs] cifs: Fix the target file was deleted when rename failed (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'posix' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'handletimeout' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor lease disabling for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor persistent/resilient handle flags for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'seal' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] cifs: Display local UID details for SMB sessions in DebugData (Leif Sahlberg) [1903883] - [fs] cifs: misc: Use array_size() in if-statement controlling expression (Leif Sahlberg) [1903883] - [fs] cifs: update ctime and mtime during truncate (Leif Sahlberg) [1903883] - [fs] cifs/smb3: Fix data inconsistent when punch hole (Leif Sahlberg) [1903883] - [fs] cifs/smb3: Fix data inconsistent when zero file range (Leif Sahlberg) [1903883] - [fs] cifs: Fix double add page to memcg when cifs_readpages (Leif Sahlberg) [1903883] - [fs] cifs: Fix cached_fid refcnt leak in open_shroot (Leif Sahlberg) [1903883] - [fs] smb3: Add debug message for new file creation with idsfromsid mount option (Leif Sahlberg) [1903883] - [fs] cifs: fix chown and chgrp when idsfromsid mount option enabled (Leif Sahlberg) [1903883] - [fs] smb3: allow uid and gid owners to be set on create with idsfromsid mount option (Leif Sahlberg) [1903883] - [fs] smb311: Add tracepoints for new compound posix query info (Leif Sahlberg) [1903883] - [fs] smb311: add support for using info level for posix extensions query (Leif Sahlberg) [1903883] - [fs] smb311: Add support for lookup with posix extensions query info (Leif Sahlberg) [1903883] - [fs] smb311: Add support for SMB311 query info (non-compounded) (Leif Sahlberg) [1903883] - [fs] SMB311: Add support for query info using posix extensions (level 100) (Leif Sahlberg) [1903883] - [fs] smb3: add indatalen that can be a non-zero value to calculation of credit charge in smb2 ioctl (Leif Sahlberg) [1903883] - [fs] smb3: fix typo in mount options displayed in /proc/mounts (Leif Sahlberg) [1903883] - [fs] cifs: Add get_security_type_str function to return sec type (Leif Sahlberg) [1903883] - [fs] smb3: extend fscache mount volume coherency check (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] smb3: fix incorrect number of credits when ioctl MaxOutputResponse > 64K (Leif Sahlberg) [1903883] - [fs] smb3: remove static checker warning (Leif Sahlberg) [1903883] - [fs] cifs: fix minor typos in comments and log messages (Leif Sahlberg) [1903883] - [fs] smb3: minor update to compression header definitions (Leif Sahlberg) [1903883] - [fs] cifs: minor fix to two debug messages (Leif Sahlberg) [1903883] - [fs] cifs: Standardize logging output (Leif Sahlberg) [1903883] - [fs] smb3: Add new parm "nodelete" (Leif Sahlberg) [1903883] - [fs] cifs: get rid of unused parameter in reconn_setup_dfs_targets() (Leif Sahlberg) [1903883] - [fs] cifs: handle hostnames that resolve to same ip in failover (Leif Sahlberg) [1903883] - [fs] cifs: set up next DFS target before generic_ip_connect() (Leif Sahlberg) [1903883] - [fs] cifs: remove redundant initialization of variable rc (Leif Sahlberg) [1903883] - [fs] cifs: handle "nolease" option for vers=1.0 (Leif Sahlberg) [1903883] - [fs] cifs: fix leaked reference on requeued write (Leif Sahlberg) [1903883] - [fs] cifs: Fix null pointer check in cifs_read (Leif Sahlberg) [1903883] - [fs] CIFS: Spelling s/EACCESS/EACCES/ (Leif Sahlberg) [1903883] - [fs] cifs: fix uninitialised lease_key in open_shroot() (Leif Sahlberg) [1903883] - [fs] cifs: ensure correct super block for DFS reconnect (Leif Sahlberg) [1903883] - [fs] cifs: do not share tcons with DFS (Leif Sahlberg) [1903883] - [fs] cifs: minor update to comments around the cifs_tcp_ses_lock mutex (Leif Sahlberg) [1903883] - [fs] cifs: protect updating server->dstaddr with a spinlock (Leif Sahlberg) [1903883] - [fs] smb3: remove overly noisy debug line in signing errors (Leif Sahlberg) [1903883] - [fs] cifs: improve read performance for page size 64KB & cache=strict & vers=2.1+ (Leif Sahlberg) [1903883] - [fs] cifs: dump the session id and keys also for SMB2 sessions (Leif Sahlberg) [1903883] - [fs] smb3: enable swap on SMB3 mounts (Leif Sahlberg) [1903883] - [fs] smb3: change noisy error message to FYI (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] smb3: use SMB2_SIGNATURE_SIZE define (Leif Sahlberg) [1903883] - [fs] CIFS: Fix bug which the return value by asynchronous read is error (Leif Sahlberg) [1903883] - [fs] CIFS: check new file size when extending file by fallocate (Leif Sahlberg) [1903883] - [fs] SMB3: Minor cleanup of protocol definitions (Leif Sahlberg) [1903883] - [fs] SMB3: Additional compression structures (Leif Sahlberg) [1903883] - [fs] SMB3: Add new compression flags (Leif Sahlberg) [1903883] - [fs] cifs: smb2pdu.h: Replace zero-length array with flexible-array member (Leif Sahlberg) [1903883] - [fs] cifs: clear PF_MEMALLOC before exiting demultiplex thread (Leif Sahlberg) [1903883] - [fs] cifs: cifspdu.h: Replace zero-length array with flexible-array member (Leif Sahlberg) [1903883] - [fs] CIFS: Warn less noisily on default mount (Leif Sahlberg) [1903883] - [fs] fs/cifs: fix gcc warning in sid_to_id (Leif Sahlberg) [1903883] - [fs] cifs: allow unlock flock and OFD lock across fork (Leif Sahlberg) [1903883] - [fs] cifs: do d_move in rename (Leif Sahlberg) [1903883] - [fs] cifs: add SMB2_open() arg to return POSIX data (Leif Sahlberg) [1903883] - [fs] cifs: plumb smb2 POSIX dir enumeration (Leif Sahlberg) [1903883] - [fs] cifs: add smb2 POSIX info level (Leif Sahlberg) [1903883] - [fs] cifs: rename posix create rsp (Leif Sahlberg) [1903883] - [fs] cifs: print warning mounting with vers=1.0 (Leif Sahlberg) [1903883] - [fs] smb3: fix performance regression with setting mtime (Leif Sahlberg) [1903883] - [fs] cifs: make use of cap_unix(ses) in cifs_reconnect_tcon() (Leif Sahlberg) [1903883] - [fs] cifs: use mod_delayed_work() for &server->reconnect if already queued (Leif Sahlberg) [1903883] - [fs] cifs: call wake_up(&server->response_q) inside of cifs_reconnect() (Leif Sahlberg) [1903883] - [fs] cifs: do not ignore the SYNC flags in getattr (Leif Sahlberg) [1903883] - [tools] tools/power/x86/intel-speed-select: Update version for v5.10 (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Fix missing base-freq core IDs (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Update version for v5.9 (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Add retries for mail box commands (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Add option to delay mbox commands (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Ignore -o option processing on error (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Change path for caching topology info (Prarit Bhargava) [1896211] - [kernel] perf/core: Fix race in the perf_mmap_close() function (Michael Petlan) [1869925] {CVE-2020-14351} - [kernel] perf: Make struct ring_buffer less ambiguous (Michael Petlan) [1869925] {CVE-2020-14351} - [arm64] arm64: bpf: Fix branch offset in JIT (Yauheni Kaliuta) [1875342]- [hwmon] hwmon: (amd_energy) fix allocation of hwmon_channel_info config (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Add AMD family 19h model 01h x86 match (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) modify the visibility of the counters (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Improve the accumulation logic (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) optimize accumulation interval (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Move label out of accumulation structure (David Arcari) [1911220] - [powerpc] powerpc/64s: Remove TM from Power10 features (Gustavo Duarte) [1892471] - [netdrv] ionic: start queues before announcing link up (Jonathan Toppins) [1906250] - [fs] NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy (Benjamin Coddington) [1873897] - [bluetooth] Bluetooth: btusb: Map Typhoon peak controller to BTUSB_INTEL_NEWGEN (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add support for Intel Bluetooth Device Typhoon Peak (8087:0032) (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Helper function to download firmware to Intel adapters (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Define a function to construct firmware filename (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add *setup* function for new generation Intel controllers (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Fix endianness issue for TLV version information (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Functions to send firmware header / payload (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Add infrastructure to read controller information (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Refactor firmware download function (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Update boot parameter specific to SKU (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Refactor of firmware download flow for Intel conrollers (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Enable Intel events even if already in operational mode (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Configure Intel debug feature based on available support (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add support to read Intel debug feature (Gopal Tiwari) [1900356] - [kernel] rcuwait: avoid lockdep splats from rcuwait_active() (Auger Eric) [1903095] - [net] udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments (Xin Long) [1879403] - [net] udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO (Xin Long) [1879403] - [net] udp: fix UDP header access on Fast/frag0 UDP GRO (Xin Long) [1879403] - [net] ethtool: add missing NETIF_F_GSO_FRAGLIST feature string (Xin Long) [1879403] - [net] fix fraglist segmentation reference count leak (Xin Long) [1879403] - [net] udp: initialize is_flist with 0 in udp_gro_receive (Xin Long) [1879403] - [include] udp: segment looped gso packets correctly (Xin Long) [1879403] - [net] udp: Support UDP fraglist GRO/GSO. (Xin Long) [1879403] - [net] Support GRO/GSO fraglist chaining. (Xin Long) [1879403] - [net] Add a netdev software feature set that defaults to off. (Xin Long) [1879403] - [net] Add fraglist GRO/GSO feature flags (Xin Long) [1879403] - [include] udp: Avoid post-GRO UDP checksum recalculation (Xin Long) [1879403] - [net] udp: fix GRO packet of death (Xin Long) [1879403] - [net] udp: fix GRO reception in case of length mismatch (Xin Long) [1879403] - [net] udp: cope with UDP GRO packet misdirection (Xin Long) [1879403] - [net] ipv6: factor out protocol delivery helper (Xin Long) [1879403] - [net] ip: factor out protocol delivery helper (Xin Long) [1879403] - [net] udp: add support for UDP_GRO cmsg (Xin Long) [1879403] - [net] udp: implement GRO for plain UDP sockets. (Xin Long) [1879403]- [powerpc] powerpc/perf: Fix Threshold Event Counter Multiplier width for P10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Exclude kernel samples while counting events in user space (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Invoke per-CPU variable access with disabled interrupts (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: MMCR0 control for PMU registers under PMCC=00 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/64s: Convert some cpu_setup() and cpu_restore() functions to C (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/64: Set up a kernel stack for secondaries before cpu_restore() (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc: Wire up memtest (Desnes Augusto Nunes do Rosario) [1906084] - [mm] powerpc/mm: Don't report hugepage tables as memory leaks when using kmemleak (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update cache events with l2l3 events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update generic event codes for power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Add generic and cache event list for power10 DD1 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix the PMU group constraints for threshold events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Update the PMU group constraints for l2l3 events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update radix_scope_qual in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [nvme] nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN (Gopal Tiwari) [1903513] - [base] driver: core: Fix list corruption after device_del() (Torez Smith) [1900751] - [base] device property: Don't clear secondary pointer for shared primary firmware node (Torez Smith) [1900751] - [base] device property: Keep secondary firmware node secondary by type (Torez Smith) [1900751] - [of] of: property: Fix create device links for all child-supplier dependencies (Torez Smith) [1900751] - [base] drivers/base/test: fix global-out-of-bounds error (Torez Smith) [1900751] - [base] driver core: Fix use-after-free and double free on glue directory (Torez Smith) [1900751] - [thunderbolt] thunderbolt: Add uaccess dependency to debugfs interface (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use "if USB4" instead of "depends on" in Kconfig (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Allow KUnit tests to be built also when CONFIG_USB4=m (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: debugfs: Fix uninitialized return in counters_write() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add debugfs interface (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Report power supply changes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: hisilicon: fix refercence leak in xhci_histb_probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for Intel Tiger Lake-H (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Only configure USB4 wake for lane 0 adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix memory leak if ida_simple_get() fails in enumerate_services() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit FN980 composition 0x1055 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cyberjack: fix write-URB completion race (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add NO_LPM quirk for Kingston flash drive (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't create stream debugfs files with spinlock held (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Workaround for S3 issue on AMD SNPS 3.0 xHC (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix sizeof() mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix signedness comparison issue with enum variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add missing MODULE_DEVICE_TABLE() to stusb160x (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore: Check both id_table and match() when both available (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix an IS_ERR() vs NULL check in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: reset hard_reset_count for any disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: fix cooldown mechanism (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: fix kernel-doc markups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix some signedness bugs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Quectel EC200T module support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add the missed ida_simple_remove() in ring_request_msix() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [documentation] usb: docs: document altmode register/unregister functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add QCOM PMIC typec detection driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Cellient MPL200 card (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_maxim: Add support for Sink FRS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Implement callbacks for FRS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: tcpm: Add support for Sink Fast Role SWAP(FRS) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_maxim: Chip level TCPC driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add set_vbus tcpci callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add a getter method to retrieve tcpm_port reference (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: add quirk to blacklist ETAS ES58X devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: use cur_altsetting for consistency (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: Add Telit FT980-KS composition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: remove polling for /sys/kernel/debug/usb/devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add support for STUSB160x Type-C controller family (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add typec_find_pwr_opmode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Use OF graph API to get the connector fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: displayport: Reduce noise from the driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Add Kconfig option to reduce number of port initialization retries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Clean up use of port initialization schemes and retries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: fix altsetting probing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: clean up jtag quirks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add device-id for HP GC device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: clean up no-union-descriptor handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: use common data-class define (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: handle broken union descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "cdc-acm: hardening against malicious devices" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Accommodate usbip (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] PM: core: introduce pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [kernel] sched: Provide sched_set_fifo() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Fix incorrect downcast (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Fix specific driver selection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [sound] USB: correct API of usb_control_msg_send/recv in sound driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: correct API of usb_control_msg_send/recv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "USB: legousbtower: use usb_control_msg_recv()" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "USB: core: hub.c: use usb_control_msg_send() in a few places" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: pci-quirks: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: ehci-dbgp: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: appledisplay: use module_usb_driver to simplify the code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: add debugfs support for ep with stream (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: don't create endpoint debugfs entry before ring buffer is set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Tune interrupt blocking for isochronous transfers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: omit duplicate actions when suspending a runtime suspended host (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: improve the comments for xhci_plat_suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add wakeup entry at sysfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add priv quirk for skip PHY initialization (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: delete the unnecessary code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add .suspend_quirk for struct xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add platform data support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: cleanup of data structures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usblp: fix race between disconnect() and read() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: don't inherity DMA properties for USB devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ehci-hcd: Move include to keep CRC stable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Only stop control channel when entering freeze (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Capitalize comment on top of QUIRK_FORCE_POWER_LINK_CONTROLLER (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Correct tb_check_quirks() kernel-doc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Log correct zeroX entries in decode_error() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Handle ERR_LOCK notification (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Handle SCU IPC error conditions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin notebook (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: update ROLE_CONTROL for DRP (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add support when hidden tx registers are inaccessible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add register definitions to tcpci (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: UAS: use macro for reporting results (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Pass correct USB Type-C port number to SoC (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Add dependency on ACPI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: microtek: use set_host_byte() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: UAS: fix disconnect by unplugging a hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Prevent mode overrun (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Increase command completion timeout value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: use usb_control_msg_recv() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: hub.c: use usb_control_msg_send() in a few places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: message.c: use usb_control_msg_send() in a few places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb typec: mt6360: Add support for mt6360 Type-C driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ehci-sched: Remove ununsed function tt_start_uframe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci: Make distrust_firmware param default to false (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci: Default to per-port over-current protection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Retry DROM read once if parsing fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Support for device role (UFP) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Check the port status before connect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in Alternate modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Do not configure Altmode HPD High (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] device connection: Remove struct device_connection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] uas: bump hw_max_sectors to 2048 blocks for SS or faster drives (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] uas: fix sdev->host->dma_dev (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: fix sdev->host->dma_dev (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/host: ehci-npcm7xx: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/misc: usb3503: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/misc: usb4604: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: driver: fix stray tabs in error messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Check the _DEP dependencies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: fix slab-out-of-bounds Read in read_descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Fix out of sync data toggle if a configured device is reconfigured (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Un-register the USB role switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_is_ice_lake() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_is_tiger_lake() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check for Intel vendor ID when identifying controller (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_port_is_nhi() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Create device links from ACPI description (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to warn in TB_CFG_ERROR_INVALID_CONFIG_SPACE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_next_cap() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_port_next_cap() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Move struct tb_cap_any to tb_regs.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add runtime PM for Software CM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [pci] PCI / thunderbolt: Switch to use device links instead of PCI quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Enable wakes from system suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Tear down DP tunnels when suspending (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Disable lane 1 for XDomain connection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Configure port for XDomain (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Set port configured for both ends of the link (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Configure link after lane bonding is enabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not change default USB4 router notification timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Initialize TMU again on resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Send reset only to first generation routers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not program NFC buffers for USB4 router protocol adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Optimize NHI LC mailbox command processing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Optimize Force Power logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Software CM only should set force power in Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use bit 31 to check if Firmware CM is running in Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to log an error if tb_switch_lane_bonding_enable() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use kobj_to_dev() instead of container_of() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: support dynamic Quectel USB compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Migrate workqueue to RT priority for processing events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: pd: Fix formatting in pd.h header (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: During PR_SWAP, source caps should be sent only after tSwapSourceStart (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: Remove the superfluous break (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: Add unusual_uas entry for Sony PSZ drives (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: atm: don't use snprintf() for sysfs attrs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Fix Fix source hard reset response for TDA 2.3.1.1 and TDA 2.3.1.2 failures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use maximum USB3 link rate when reclaiming if link is not up (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add USB3 bandwidth management (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Disable ports that are not implemented (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Do warm-reset when both CAS and XDEV_RESUME are set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: fix ep context print mismatch in debugfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: uas: Add quirk for PNY Pro Elite (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Better name for __check_usb_generic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix device driver race (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Also match device drivers using the ->match vfunc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: fix tegra_xusb_get_phy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: otg usb2/usb3 port init (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: pci-quirks: Bypass xHCI quirks for Raspberry Pi 4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] Revert "USB: pci-quirks: Add Raspberry Pi 4 quirk" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-pci: Add support for reset controllers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Solve race condition in anchor cleanup functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Print error on failure to get VBUS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Make VBUS supply optional (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: remove needless check before usb_free_coherent() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: remove a duplicated entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: isd200: fix spelling mistake "removeable" -> "removable" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: Fix typo (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hcd: Fix use after free in usb_hcd_pci_remove() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Hold con->lock for the entire duration of ucsi_register_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Rework ppm_lock handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix 2 unlocked ucsi_run_command calls (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix AB BA lock inversion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: lvtest: return proper error code in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: rework notification_buffer resizing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Add no-lpm quirk for another Raydium touchscreen (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: Fix bad gfp argument (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: merge fix for kunix_resource changes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Register charger (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix ASMedia ASM1142 DMA addressing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: define IDs for various ASMedia host controllers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Simplify USB ID table match (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Add WARN_ON ensure we are not trying to send 2 VDM packets at the same time (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Fix AB BA lock inversion between tcpm code and the alt-mode drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Refactor tcpm_handle_vdm_request (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Refactor tcpm_handle_vdm_request payload handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Add tcpm_queue_vdm_unlocked() helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Move mod_delayed_work(&port->vdm_state_machine) call into tcpm_queue_vdm() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Make function xhci_dbc_ring_alloc() static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgtty: Make some functions static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for pinctrl-0 through pinctrl-8 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for multiple DT bindings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix up report size handling for some devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: remove tty specific port structure from struct xhci_dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgcap: remove dbc dependency on dbctty specific flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Add a operations structure to access driver functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbctty: split dbc tty driver registration and unregistration functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: remove endpoint pointers from dbc_port structure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: simplify dbc requests allocation and queueing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc start and stop functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc memory init and cleanup functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: don't use generic xhci ring allocation functions for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci context allocation for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Use dbc structure in the request completion instead of xhci_hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to get_in/out_ep() helper functions to get endpoints (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgtty: Pass dbc pointer when registering a dbctty device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc_handle_xfer_event() instead of xhci_hcd pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Change to pass dbc pointer to xhci_do_dbc_stop() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to endpoint init and exit functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Get the device pointer from dbc structure in dbc_ep_do_queue() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't pass the xhci pointer as a parameter to xhci_dbc_init_context() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use xhci_write_64() as it takes xhci as a parameter (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Use dev_info() and similar instead of xhci_info() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Add device pointer to dbc structure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Remove dbc_dma_free_coherent() wrapper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Remove dbc_dma_alloc_coherent() wrapper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci erst allocation and free functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't pass struct xhci_hcd pointer to xhci_link_seg() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci inc_deq() function for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Make debug message consistent with bus and port number (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: tegra: Fix allocation for the FPCI context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: stop using compat_alloc_user_space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix ASM2142/ASM3142 DMA addressing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: fix the failure of bandwidth allocation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: appledisplay: remove needless check before usb_free_coherent() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbtest: reduce stack usage in test_queue (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Stay in BIST mode till hardreset or unattached (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Support BIST test data mode for compliance (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Support bist test data mode for compliance (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Error handling for tcpm_register_partner_altmodes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Comment correction for typec_partner_register_altmode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Avoid connect request on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: fix quirks_param_set() writing to a const pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hcd: Try MSI interrupts on PCI devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: add EM7305 QDL product ID (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: fix led-activity helpers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: fix memory corruption (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: sisusbvga: Move static const tables out to different include file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: sisusbvga: sisusb_init: Remove genunine unused static const arrays (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: class: cdc-wdm: Provide description for usb_cdc_wdm_register()'s manage_power arg (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb/serial.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb/pd_vdo.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Remove pci-dma-compat wrapper APIs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: Fix a potential UB casued by left shifting a negative value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ohci: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: sierra: clean up special-interface handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: use in-kernel types in port data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: drop unnecessary packed attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: add support for TIOCGICOUNT (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: add support for line-status events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: disable interface on errors in open (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OHCI: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: xhci-dbc: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: xhci-dbc: Supply missing 'xhci-dbgp.h' headerfile (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: ehci-dbgp: Remove set but never checked variable 'ret' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ucsi: Staticify and stop export of ucsi_init() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: legousbtower: Demote function header which is clearly not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: legousbtower: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: ldusb: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: iowarrior: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: iowarrior: Fix odd corruption issue in the file header (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: fusb302: Use 'gnu_printf' format notation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmodes: displayport: Supply missing displayport.h include file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmodes: displayport: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: alauda: Remove set but unchecked variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-debugfs: Use 'gnu_printf' format notation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-dbgtty: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-dbgcap: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-mem: Demote obvious misuse of kerneldoc to standard comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: Demote obvious misuse of kerneldoc to standard comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: adutux: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: atm: ueagle-atm: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: ledtrig-usbport: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: drop redundant transfer-buffer casts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: serial: drop extern keyword from function declarations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: serial: drop unnecessary sysrq include (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: add sysrq break-handler dummy (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: inline sysrq dummy function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: only process sysrq when enabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: only set sysrq timestamp for consoles (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: fix break and sysrq handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: clean up receive processing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: make process-packet buffer unsigned (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Quectel EG95 LTE modem (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix missing simulated-break margin (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: re-enable auto-RTS on open (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: enable usb generic throttle/unthrottle (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: simulate break condition if not supported (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: class: usbtmc: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ohci: Mark cc_to_error as __maybe_unused (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: ulpi: Fix a few kerneldoc related issues (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Demote comment block which is clearly not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: debug: Demote comment blocks which are obviously not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: pci-quirks: Demote function header from kerneldoc to comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: Fix up terminology in include files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix old style declaration warning (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: console: add support for flow control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: quatech2: drop two stub functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: kobil_sct: log failure to update line settings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan_pda: drop unused firmware reset status (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: drop unused URB submission results (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: don't compile unused packet definitions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Add support for USB4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Definitions for response status bits (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add data structure for Enter_USB message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Combine the definitions for Accessory and USB modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix up terminology (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: fix kernel-doc warnings and formatting in (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for authenticate on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for separating the flush to SPI and authenticate (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Ensure left shift of 512 does not overflow a 32 bit int (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add min and max line-speed macros (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: name prescaler, divisor registers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Poll for U0 after disabling USB2 LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Return if xHCI doesn't support LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-mtk: avoid runtime suspend when removing hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix enumeration issue when setting max packet size for FS devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix incorrect EP_STATE_MASK (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add new Product ID for CH340 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add GosunCn GM500 series (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cypress_m8: enable Simply Automated UPB PIM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for on-board retimers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Implement USB4 port sideband operations for retimer access (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Split common NVM functionality into a separate file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Retry USB4 block read operation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Generalize usb4_switch_do__data() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add Intel USB-IF ID to the NVM upgrade supported list (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Increase DP DPRX wait timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_port_get_link_speed() available to other files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Handle incomplete PCIe/USB3 paths correctly in discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Increase path length in discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add KUnit tests for tunneling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add KUnit tests for path walking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add DP IN resources for all routers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Report consumed bandwidth in both directions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make usb4_switch_map_pcie_down() also return enabled ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make usb4_switch_map_usb3_down() also return enabled ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not tunnel USB3 if link is not USB4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Implement USB3 bandwidth negotiation routines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check that both ports are reachable when allocating path (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_path_alloc() work with tree topologies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_next_port_on_path() work with tree topologies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix path indices used in USB3 tunnel discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [netdrv] thunderbolt: Get rid of E2E workaround (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: NHI can use HopIDs 1-7 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to warn if NHI hop_count != 12 or hop_count != 32 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Build initial XDomain property block upon first connect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OTG: rename product list of devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: scsi: fix up comment to be more specific (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: fix wording in error message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: sierra: unify quirk handling logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: fix up wording in a comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OHCI: remove obsolete FIXME comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rename USB OTG hub configuration option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rename USB quirk to USB_QUIRK_ENDPOINT_IGNORE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [uapi] USB: replace hardcode maximum usb string length by definition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_rt1711h: avoid screaming irq causing boot hangs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbtest: fix missing kfree(dev->buf) in usbtest_disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ehci: reopen solution for Synopsys HC bug (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: Add DISABLE_ECHO quirk for Microchip/SMSC chip (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: add USB_QUIRK_DELAY_INIT for Logitech C922 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel_pmc_mux: Fix DP alternate mode entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: change char to u8 for sisusb_copy_memory (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: sisusb_con: Use array_size() helper in memcpy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: tegra: Remove PLL power supplies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] drivers: usb: Fix trivial spelling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: additional Device Classes to debug/usb/devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Improve USB4 config symbol help text (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: kcov: collect coverage from usb complete callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: get rid of pointless access_ok() calls (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix lockup of devices with limited prescaler (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add basis for quirk detection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] CDC-ACM: heed quirk also in error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit LE910C1-EUX compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: add DW5816e QDL support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add trivial .shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Ensure USB_ROLE_SWITCH is set as a dependency for tps6598x (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: make symbols static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: usb_wwan: do not resubmit rx urb on fatal errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/xhci-plat: Set PM runtime as active on resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Add support for Renesas controller with memory (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: renesas-xhci: Add the renesas xhci driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hci: add hc_driver as argument for usb_hcd_pci_probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: fix mmap dma mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: keep runtime active when removing host (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Update Kconfig to allow building on other architectures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel: Fix DP_HPD_LVL bit field (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ehci: Add new EHCI driver for Broadcom STB SoC's (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: xhci-plat: Add support for Broadcom STB SoC's (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Add USB role switching logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Add OF probe binding (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Switch on role-switch uevent reporting (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel_pmc_mux: Support for static SBU/HSL orientation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add typec_find_orientation() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usblp: poison URBs upon disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] sierra-ms: do not call scsi_get_host_dev() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] USB: pci-quirks: Add Raspberry Pi 4 quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] thunderbolt: Replace zero-length array with flexible-array (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: correct kernel->user page attribute mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Fix the property names (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel: Handle alt mode HPD_HIGH (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Fix misleading driver bug report (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: Add DW5816e support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: add quirk for LaCie 2Big Quadra (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Do not link to disabled devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check return value of tb_sw_read() in usb4_switch_op() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: use true, false for bool variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix the stub for ucsi_register_port_psy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Convert the Intel PMC Mux driver to use new SCU IPC API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: register with power_supply class (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: save power data objects in PD mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Correct bit-mask for CCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: replace magic numbers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Workaround for missed op_mode change (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: set USB data role when partner type is power cable/ufp (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Storage: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Replace an empty statement with a debug message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/early: remove unused including (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: pci-quirks: use true, false for bool variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: typec: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: Change port variable from signed to unsigned (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Add unusual_devs entry for JMicron JMS566 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration scheme first for high speed devices") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Fix handling of connect changes during sleep (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for Intel Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmode: Fix typec_altmode_get_partner sometimes returning an invalid pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: add sanity checking for data length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't clear hub TT buffer on ep0 protocol stall (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: prevent bus suspend if a roothub port detected a over-current condition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix handling halted endpoint even if endpoint ring appears empty (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [gpio] usb: fusb302: Convert to use GPIO descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 RGB RAPIDFIRE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Ignore CC and vbus changes in PORT_RESET change (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: introduce a cool down (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: close race betrween suspend() and acm_softint (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: fix deadlock in error handling and PM flushing work (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: no use logging any details in case of ENODEV (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: pi3usb30532: Set switch_ / mux_desc name field to NULL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: early: Handle AMD's spec-compliant identifiers, too (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Fix free-while-in-use bug in the USB S-Glibrary (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: host: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: early: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] Revert "thunderbolt: Prevent crash if non-active NVMem file is read" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for extcon (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: restore capability check order (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Correct the documentation for typec_cable_put() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: fix slab-out-of-bounds read in edge_interrupt_callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Wistron Neweb D19Q1 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add BroadMobi BM806U (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for ASKEY WWHC050 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Add ACPI support for USB interface devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-tegra: Add OTG support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add control driver for F81534A (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: fix rounding error in TIOCSSERIAL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: fix close_delay and closing_wait units in TIOCSSERIAL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: quirks: add NO_LPM quirk for RTL8153 based ethernet adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-pci: Allow host runtime PM as default for Intel Tiger Lake xHCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Finetune host initiated USB3 rootport link suspend and resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Tegra186/Tegra194 LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Enable LPM for VIA LABS VL805 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Show host status when watchdog triggers and host is assumed dead (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add a separate debug message for split transaction errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: bail out early if driver can't accress host in resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add device-id for HP LD381 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add ME910G1 ECM composition 0x110b (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: mon: Use scnprintf() for avoiding potential buffer overflow (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi_ccg: workaround for NVIDIA test device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add a shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix a potential race during registration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix NULL pointer dereference (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Disable LPM on WD19's Realtek Hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use scnprintf() for avoiding potential buffer overflow (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: fix tty cleanup-op kernel-doc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: clean up carrier-detect helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Delete of_devlink kernel commandline option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: driver for Intel PMC mux control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add definitions for Thunderbolt 3 Alternate Mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Allow the role switches to be named (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Provide the switch drivers handle to the switch in the API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Leave the private driver data pointer to the drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Allow the mux handles to be requested with fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Add helpers for setting the mux state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Allow the muxes to be named (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: port: do error out if usb_autopm_get_interface() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: do error out if usb_autopm_get_interface() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: fix unhandled return by employing a void function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: Add quirk for Samsung Fit flash (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: quirks: add NO_LPM quirk for Logitech Screen Share (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: fix regulator probe and error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add sysfs node to show cc orientation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: move to SNK_UNATTACHED if sink removed for DRP (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for power-domains and hwlocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: set F81534A serial port with RS232 mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add F81534A support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: use devm_kzalloc for port data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add tx_empty function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: extract LSR handler (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: uhci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ohci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ehci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Use ACPI_SUCCESS() at appropriate places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Make use of acpi_evaluate_object() status (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Use const to reduce object data size (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ucsi: ccg: disable runtime pm during fw flashing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: register DP only for NVIDIA DP VDO (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for the 100 device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add missing annotation for xhci_enter_test_mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add missing annotation for xhci_set_port_power() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Do not open code __print_symbolic() in xhci trace events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: use kobj_to_dev() API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add missing kernel-doc parameter descriptions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: set correct data role for non-DRD (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: icm: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: eeprom: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: don't probe unhandled devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: fix endianess issue in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add driver to control USB fast charge for iOS devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fallback to generic driver when specific driver fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Select better matching USB drivers when available (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Implement usb_device_match_id() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Make it possible to "subclass" usb_device_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Export generic USB device driver functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Drop support for device name matching (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmode: Remove the notification chain (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Fix the description of struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Allow power role swapping even without USB PD (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Hide the port_type attribute when it's not supported (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Make the attributes read-only when writing is not possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for the 28 and 28L devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for 2 OEMed devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix novation SourceControl XL after suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak when caching protocol extended capability PSI tables - take 2 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "xhci: Fix memory leak when caching protocol extended capability PSI tables" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: remove redundant assignment to variable num (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: host: ehci-platform: add a quirk to avoid stuck (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: clean up endpoint-descriptor parsing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: blacklist duplicate ep on Sound Devices USBPre2 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: add endpoint-blacklist quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [uapi] usb: charger: assign specific number for enum value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Don't record a connect-change event during reset-resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: uas: fix a plug & unplug racing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Fix the broken detection of USB3 device in SMSC hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: apply XHCI_PME_STUCK_QUIRK to Intel Comet Lake platforms (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix runtime pm enabling for quirky Intel hosts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak when caching protocol extended capability PSI tables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Force Maximum Packet size for Full-speed bulk devices to valid range (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: digi_acceleport: remove redundant assignment to pointer priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: relax unthrottle memory barrier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix receiver regression (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: Silence harmless uninitialized variable warning (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cyberjack: fix spelling mistake "To" -> "Too" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: simplify endpoint check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: make set_termios synchronous (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: fix IrLAP framing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: fix link-speed handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: add missing endpoint sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: wcove: fix "op-sink-microwatt" default that was in mW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: mask event interrupts when remove driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: Always unlink URBs in reverse order (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: quatech2: handle unbound ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan: handle unbound ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: add missing active-port sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: handle unbound ports on URB completion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: handle unbound port at reset_resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: Use flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: stop all I/O on close() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: add chars_in_buffer() implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: suppress driver bind attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Quectel RM500Q in QDL mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: Improved device recognition on remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: phy-generic: Delete unused platform data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: fix control-message timeouts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: Add support for Quectel RM500Q (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: ulpi: Add resource-managed variant of otg_ulpi_create() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Provide definitions for the USB modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Give the mux drivers all the details regarding the port state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add definitions for the latest specification releases (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add the Product Type VDOs to struct usb_pd_identity (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: pd: Add definition for DFP and UFP1 VDOs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: pd: Add definitions for the Enter_USB message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: More API for cable handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add parameter for the VDO to typec_altmode_enter() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Block mode entry if the port has the mode disabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: fix spelling mistake "connetor" -> "connector" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: missing parentheses in USE_NEW_SCHEME (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix the notification bit offsets (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Actually enable all the interface notifications (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix non-kernel-doc comments (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix: Don't skip endpoint descriptors with maxpacket=0 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB-PD tcpm: bad warning+size, PPS adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb3503: Convert to use GPIO descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: add support for separate DP altmode devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Store the notification mask (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: mtk-xhci: Do not explicitly set the DMA mask (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: fix check for duplicate endpoints (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add ZLP support for 0x1bc7/0x9010 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix build warning seen with CONFIG_PM=n (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Fix an undefined reference to 'extcon_get_state' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: EHCI: Do not return -EPIPE when hub is disconnected (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit ME910G1 0x110a composition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: make sure interrupts are restored to correct state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: handle some XHCI_TRUST_TX_LENGTH quirks cases as default behaviour (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Increase STS_HALT timeout in xhci_suspend() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: only set D3hot for pci device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix USB3 device initiated resume race with roothub autosuspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak in xhci_add_in_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix incorrect DMA allocations for local memory pool drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: fix interface sanity checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix interface sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: ueagle-atm: add missing endpoint check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: fix epic endpoint lookup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: mon: Fix a deadlock in usbmon between mmap and read (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Don't log an error on probe deferral (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: urb: fix URB structure initialization function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix use after free in typec_register_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: fix a potential use after free (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Implement basic ELPG support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add XUSB controller context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add support for XUSB context save/restore (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Enable runtime PM as late as possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Reuse stored register base address (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Extract firmware enable helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Use CNR as firmware ready indicator (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Avoid a fixed duration sleep (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Separate firmware request and load (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Fix "tega" -> "tegra" typo (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: drop comment about 2 uhci drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb, kcov: collect coverage from hub_event (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for interrupt-parent, dmas and -gpio(s) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: serial: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for "iommu-map" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Fix the semantics of of_is_ancestor_of() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Disable UAS on JMicron SATA enclosure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: heed CAPACITY_HEURISTICS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: honor flag to avoid CAPACITY16 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Correct phy enable sequence (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-serial: cp201x: support Mark-10 digital force gauge (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Remove tcpc_config configuration mechanism (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-pci: Allow host runtime PM as default also for Intel Ice Lake xHCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: Support running urb giveback in tasklet context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add tracing for xhci doorbell register writes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: update event ring dequeue pointer on purpose (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Fix documentation for out values (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add device IDs for U-Blox C099-F9P (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Foxconn T77W968 LTE modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Clarify documentation for fwnode_operations.add_links() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop port open flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop read-urb check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop port driver data accessors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop serial struct accessor (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop paranoid serial checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop paranoid port checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop redundant urb context check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: rip out broken interrupt handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: fix probe error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: document MCS7810 detection hack (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: clean up device-type handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: fix remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7720: fix remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: chaoskey: fix error case of a timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for DW5821e with eSIM support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] appledisplay: fix error handling in the scheduled work (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop superfluous newlines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop superfluous brackets (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: clean up runaway white space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant endianness comments (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop unnecessary packed attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: clean up pointer declarations in driver data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: remove tower_abort_transfers() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: stop interrupt-out URB unconditionally (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant interrupt-in running flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop noisy disconnect messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant open_count check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: zero driver data at allocation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant NULL check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant MODULE_LICENSE ifdef (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: clean up runaway white space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: drop redundant open-count check from release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: simplify disconnect handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Allow USB device to be warm reset in suspended state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for iommus, mboxes and io-channels (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Make it easy to add device links from DT properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: add USB ID to support Moxa UPort 2210 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Optimise ucsi_unregister() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: New error codes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove all bit-fields (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove struct ucsi_control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove the old API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ccg: Move to the new API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Move to the new API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Simplified registration and I/O API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Give the connector fwnode to the port device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Remove unused members from struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Remove the callback members from struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Separate the operations vector (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Introduce typec_get_drvdata() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Copy everything from struct typec_capability during registration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: Add support for USB2422 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: Drop some unused defines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Add usb_role_switch_find_by_fwnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: reimplement line-speed handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Remove redundant vmap checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: whiteheat: fix line-speed endianness (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: whiteheat: fix potential slab corruption (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: Revert commit 3ae62a42090f ("UAS: fix alignment of scatter/gather segments") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Revert commit 747668dbc061 ("usb-storage: Set virt_boundary_mask to avoid SG overflows") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: fix __le32/__le64 accessors in debugfs code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: fix Immediate Data Transfer endianness (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix use-after-free regression in xhci clear hub TT implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix control-message timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: use unsigned size format specifiers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix ring-buffer locking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Skip endpoints with 0 maxpacket length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add support for PL2303HXN (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix read info leaks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver: core: Improve documentation for fwnode_operations.add_links() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Minor code formatting/style clean ups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ti_usb_3410_5052: clean up serial data access (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ti_usb_3410_5052: fix port-close races (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: Suppress problematic bind and unbind uevents (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix a signedness bug in tower_probe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix memleak on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix memleak on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix an IS_ERR() vs NULL bug in hd3ss3220_probe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] device property: Fix the description of struct fwnode_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: fix NULL-derefs on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: use pr_err() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: drop redundant iowarrior mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: drop redundant disconnect mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: chaoskey: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix NULL-derefs on driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: drop redundant in-urb check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix use-after-free after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix NULL-deref on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: remove duplicated include from hd3ss3220.c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: drop OOM message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: devio.c: Fix assignment of 0/1 to bool variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: hd3ss3220_probe() warn: passing zero to 'PTR_ERR' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hub: Check device descriptor before resusciation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add dependency for TYPEC_HD3SS3220 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add Tegra194 XHCI support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: tegra: Parameterize mailbox register addresses (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: image: microtek.c: Remove unused variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220_irq() can be static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] kcov: remote coverage support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Create device links for all child-supplier depencencies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add functional dependency link from DT bindings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-ext-caps.c: Add missing platform_device_put() on error in xhci_create_intel_xhci_sw_pdev() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix NULL pointer dereference in xhci_clear_tt_buffer_complete() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Increase STS_SAVE timeout in xhci_suspend() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Prevent deadlock when xhci adapter breaks during init (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: wait for CNR controller not ready bit in xhci resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix USB 3.1 capability detection on early xHCI 1.1 spec based hosts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Check all endpoints for LPM timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Prevent device initiated U1/U2 link pm if exit latency is too long (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix false warning message about wrong bounce buffer write length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: add pm_ops (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: simplify reset helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: add vdd supply support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: driver for TI HD3SS3220 USB Type-C DRP port controller (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: use regulator_bulk_set_supply_names() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ftdi-elan: move a couple of statements to next line (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix open after failed reset request (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix potential NULL-deref on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix deadlock on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix slab info leak at probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix for the mode entering routine (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ccg: Remove run_isr flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: use pr_err() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: drop redundant lcd mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: drop redundant disconnect mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: fix I/O after disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: usb: typec: tcpm: Fix a signedness bug in tcpm_fw_get_caps() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix NULL-derefs on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: Don't retry on unexpected errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: microtek: fix info-leak at probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan: fix NULL-derefs on open() and write() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Cinterion CLS8 devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: SCSI glue: use dev_err instead of printk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit FN980 compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbcore: Fix slab-out-of-bounds bug during device reset (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rio500: Fix lockdep violation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rio500: simplify locking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: add USB GPIO based connection detection driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: create Kconfig file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: get usb-role-switch from parent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Add fwnode_usb_role_switch_get() function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: roles: Introduce stubs for the exiting functions in role.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbip: Implement SG support to vhci-hcd and stub driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: intel: Enable static DRD mode for role switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-ext-caps.c: Add property to disable Intel SW switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: phy: add support for PHY calibration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-rcar: Add a helper macro to set xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add quirks member into struct xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix possible memleak on setup address fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: add TSP bitflag to TRB tracing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: dbc: Use GFP_KERNEL instead of GFP_ATOMIC in 'xhci_dbc_alloc_requests()' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: dbc: Simplify error handling in 'xhci_dbc_alloc_requests()' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Fix build error without CONFIG_REGMAP_I2C (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove commented out dma wrappers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove a stale comment in hcd_alloc_coherent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: use hcd_uses_dma to check for DMA capabilities (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Simplify usb_decode_get_set_descriptor function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Patch simplify usb_decode_set_clear_feature function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Separated decoding functions from dwc3 driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: add an optional xhci_ck clock (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add support for FT232H CBUS gpios (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] device property: Remove duplicate test for NULL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: intel_xhci: Supplying software node for the role mux (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: core: document phy_calibrate() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb-skeleton: make comment block in line with coding style (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: only account once for mmap()'ed usb memory usage (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Call fusb302_debugfs_init earlier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Use usb_debug_root as root for our debugfs entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Use usb_debug_root as root for our debugfs entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci-nxp: enable compile-testing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: isd200: remove redundant assignment to variable sendToTransport (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Always provide fwnode for the port (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Remove unused properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: Add a capability flag for runtime suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: remove single-use define for debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: Add definitions for the USB2.0 hub TT requests (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove ehci-w90x900 driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbfs: Add ioctls for runtime power management (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbsevseg: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: trancevibrator: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: cxacru: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: lvstest: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cytherm: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cypress_cy7c63: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbtmc: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ueagle-atm: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: typec: ucsi_ccg: convert i2c driver to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: add support for dev_groups to struct usb_device_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: add support for dev_groups to struct usb_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbip: convert platform driver to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Disable USB2 LPM at shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Prevent an abnormally restrictive PHY init skipping (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Remove dev_err() usage after platform_get_irq() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-hub: fix extra endianness conversion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: Remove call to memset after dma_alloc_coherent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Switch to use fwnode_property_count_uXX() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Switch to use fwnode_property_count_uXX() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: host: oxu210hp-hcd: remove include/linux/oxu210hp.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: hcd-pci: Use dev_get_drvdata where possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: resume ccgx i2c client (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: add runtime pm support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: refactor master_xfer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Registering real device entries for the muxes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: implement break control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add high baud rate support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ark3116: drop redundant init_termios (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: Supply CCGx driver the fw build info (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: core: Invoke pm_runtime_get_*/pm_runtime_put_* before invoking reset callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Document that of_graph_get_endpoint_by_regs needs of_node_put (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: make phy-core explicitly non-modular (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] OF: properties: add missing of_node_put (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: mark resume function as __maybe_unused (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: Use of_node_name_eq for node name comparisons (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: limit reads also for combined messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: adhere to I2C fault codes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: make pm_ops static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: add i2c bus driver for NVIDIA GPU (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [tty] complete ->et_serial() switchover (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb_wwan: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] whiteheat: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ti_usb_3410_5052: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ssu100: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] quatech2: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] pl2303: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] opticon: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] mos7840: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] mos7720: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] io_ti: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] io_edgeport: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] fdti_sio: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] f81232: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ark3116: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-serial: begin switching to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [tty] tty_ioctl(): start taking TIOCSERIAL into separate methods (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Remove device_connection_add() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Remove device_connection_find() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix device_pm_lock() locking for device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver code: print symbolic error code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Fix the secondary firmware node handling in set_primary_fwnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: add device probe log helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Change delimiter in devlink device's name to "--" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Avoid NULL pointer dereference in device_get_next_child_node() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix sleeping in invalid context during device link deletion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add waiting_for_supplier sysfs file for devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add state_synced sysfs file for devices that support it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [documentation] driver core: Expose device link details in sysfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Avoid deferred probe due to fw_devlink_pause/resume() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Rename dev_links_info.defer_sync to defer_hook (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Don't do deferred probe in parallel with kernel_init thread (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Use software_node_unregister() when unregistering group of nodes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device_is_dependent() to linux/device.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Update device link status correctly for SYNC_STATE_ONLY links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: implement software_node_unregister() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [lib] lib/test_printf: Add tests for pfw printk modifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove unnecessary is_fwnode_dev variable in device_add() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers property: When no children in primary, try secondary (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix handling of SYNC_STATE_ONLY + STATELESS device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix SYNC_STATE_ONLY device link implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove check in driver_deferred_probe_force_trigger() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: fw_devlink: Add support for batching fwnode parsing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Look for waiting consumers only for a fwnode's primary device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Move code to the right part of the file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device links from fwnode only for the primary device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] Revert "Revert "driver core: Set fw_devlink to "permissive" behavior by default"" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix handling of fw_devlink=permissive (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: fw_devlink_flags can be static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add fw_devlink kernel commandline option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Reevaluate dev->links.need_for_probe as suppliers are added (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Skip unnecessary work when device doesn't have sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add dev_has_sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Call sync_state() even if supplier has no consumers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow device link operations inside sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add sync_state driver/bus callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device link support for SYNC_STATE_ONLY flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix creation of device links with PM-runtime flags (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove device link creation limitation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add missing description of new struct device_link field (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device link flag DL_FLAG_AUTOPROBE_CONSUMER (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Make driver core own stateful device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix adding device links to probing suppliers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: core: Remove glue dirs from sysfs earlier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove the link if there is no driver with AUTO flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: silence device link messages unless debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] base: core: Remove WARN_ON from link dependencies check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: export set_secondary_fwnode() to modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Allow register and unregister software node groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Export fwnode_get_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] Revert "software node: Simplify software_node_release() function" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: add basic tests for property entries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: remove separate handling of references (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: implement reference properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: allow embedding of small arrays into property_entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: replace is_array with is_inline (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: unify PROPERTY_ENTRY_XXX macros (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: simplify property_entry_read_string_array() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: remove property_entry_read_uNN_array functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: get rid of property_set_pointer() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] efi/apple-properties: use PROPERTY_ENTRY_U8_ARRAY_LEN (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: mark internal macros with double underscores (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: introduce PROPERTY_ENTRY_XXX_ARRAY_LEN() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: remove DEV_PROP_MAX (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: clean up property_copy_string_array() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow fwnode_operations.add_links to differentiate errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow a device to wait on optional suppliers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add a function to obtain a node's prefix (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add fwnode_get_name for returning the name of a node (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add functions for accessing node's parents (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Move fwnode_get_parent() up (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Make argument to to_software_node const (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Get reference to parent swnode in get_parent op (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add support for linking devices during device addition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add fwnode_to_dev() to look up device from fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Initialize the return value in software_node_find_by_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Initialize the return value in software_node_to_swnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Add fwnode_connection_find_match() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add software_node_find_by_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: Introduce device lookup variants by device type (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: Introduce device lookup variants by fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Find connections also by checking the references (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Introduce fwnode_find_reference() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add software_node_get_reference_args() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Use kobject name when finding child nodes by name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add support for static node descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Simplify software_node_release() function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Allow node creation without properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add fwnode_graph_get_endpoint_by_id() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: Make two functions static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Implement get_named_child_node fwnode callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Find device connections also from device graphs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Prepare support for firmware described connections (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: drop use of BUS_ATTR() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: bus: convert to use BUS_ATTR_WO and RW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: check if swnode is NULL before dereferencing it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: check if pointer p is NULL before dereferencing it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] sysfs: Disable lockdep for driver bind/unbind files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: fix fwnode_graph_get_next_endpoint() documentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: remove need for a temporary string for the node name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] kobject: return error code if writing /sys/.../uevent fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Remove struct property_set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Move device_add_properties() to swnode.c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: Introducing software nodes to the firmware node framework (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [mm] powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm (Chris von Recklinghausen) [1862347] - [powerpc] powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM (Chris von Recklinghausen) [1862347] - [fs] mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race (Chris von Recklinghausen) [1862347] - [arm64] arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect() (Andrew Jones) [1908439] - [arm64] arm64: pgtable: Fix pte_accessible() (Andrew Jones) [1908439] - [kernel] kernel: fork: properly initialize task_struct->task_struct_rh (Rafael Aquini) [1895892] - [s390] s390/dasd: Process FCES path event notification (Philipp Rudo) [1723823] - [s390] s390/dasd: Prepare for additional path event handling (Philipp Rudo) [1723823] - [s390] s390/dasd: Display FC Endpoint Security information via sysfs (Philipp Rudo) [1723823] - [s390] s390/dasd: Fix operational path inconsistency (Philipp Rudo) [1723823] - [s390] s390/dasd: Store path configuration data during path handling (Philipp Rudo) [1723823] - [s390] s390/dasd: Move duplicate code to separate function (Philipp Rudo) [1723823] - [s390] s390/dasd: Remove unused parameter from dasd_generic_probe() (Philipp Rudo) [1723823] - [s390] s390/cio: Add support for FCES status notification (Philipp Rudo) [1723823] - [s390] s390/cio: Provide Endpoint-Security Mode per CU (Philipp Rudo) [1723823] - [s390] s390/cio: Export information about Endpoint-Security Capability (Philipp Rudo) [1723823] - [net] net/af_iucv: fix null pointer dereference on shutdown (Philipp Rudo) [1903966] - [s390] s390/dasd: fix null pointer dereference for ERP requests (Philipp Rudo) [1903965] - [tools] selftests: netfilter: add command usage (Hangbin Liu) [1899374] - [tools] selftests: netfilter: simplify command testing (Hangbin Liu) [1899374] - [tools] selftests: netfilter: remove unused variable in make_file() (Hangbin Liu) [1899374] - [tools] selftests: netfilter: exit on invalid parameters (Hangbin Liu) [1899374] - [tools] selftests: netfilter: fix header example (Hangbin Liu) [1899374] - [tools] selftests: netfilter: kill running process only (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add MTU arguments to flowtables (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add checktool function (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add test case for conntrack helper assignment (Hangbin Liu) [1899374] - [tools] selftests: netfilter: extend nfqueue test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add nfqueue test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs tunnel test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs nat test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs test script (Hangbin Liu) [1899374] - [tools] selftests: netfilter: check icmp pkttoobig errors are set as related (Hangbin Liu) [1899374] - [hwtracing] intel_th: pci: Add Emmitsburg PCH support (Jiri Olsa) [1838703] - [hwtracing] intel_th: pci: Add Tiger Lake PCH-H support (Jiri Olsa) [1783492 1782729] - [hwtracing] intel_th: pci: Add Jasper Lake CPU support (Jiri Olsa) [1783097] - [hwtracing] intel_th: pci: Add Elkhart Lake CPU support (Jiri Olsa) [1783596] - [hwtracing] intel_th: pci: Add Elkhart Lake SOC support (Jiri Olsa) [1783596] - [hwtracing] intel_th: pci: Add Ice Lake CPU support (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix a NULL dereference when hub driver is not loaded (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Make stopping the trace optional (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix user-visible error codes (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Fix the unexpected state warning (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Disallow multi mode on devices where it's broken (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Fix window switching without windows (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix freeing IRQs (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix a double put_device() in error path (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729]- [idle] intel_idle: Fix intel_idle() vs tracing (David Arcari) [1903307] - [idle] intel_idle: Fix max_cstate for processor models without C-state tables (David Arcari) [1903307] - [idle] intel_idle: Ignore _CST if control cannot be taken from the platform (David Arcari) [1903307] - [idle] intel_idle: mention assumption that WBINVD is not needed (David Arcari) [1903307] - [idle] intel_idle: Remove uninitialized_var() usage (David Arcari) [1903307] - [idle] intel_idle: cleanup code to address out of order commits (David Arcari) [1903307] - [s390] Revert "s390/qeth: phase out OSN support" (Philipp Rudo) [1903962] - [net] net/smc: fix matching of existing link groups (Philipp Rudo) [1903961] - [netdrv] mlxsw: core: Use variable timeout for EMAD retries (Ivan Vecera) [1857594] - [netdrv] mlxsw: Fix firmware flashing (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix memory leak on module removal (Ivan Vecera) [1857594] - [netdrv] mlxsw: Only advertise link modes supported by both driver and device (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add a PFC test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add headroom handling test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: qos_lib: Add a wrapper for running mlnx_qos (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Support port-less topologies (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Add devlink_cell_size_get() (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Split devlink_..._set() into save & set (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Expose transceiver_overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: Update module's settings when module is plugged in (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Initialize netdev's module overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: Enable temperature event for all supported port module sensors (Ivan Vecera) [1857594] - [netdrv] mlxsw: Update transceiver_overheat counter according to MTWE (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add an infrastructure to track transceiver overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Query MTMP before writing to set only relevant fields (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Ports Module Administrative and Operational Status Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Port Module Plug/Unplug Event Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Management Temperature Warning Event Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: simplify the return expression of __mlxsw_sp_router_init() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Disable port buffer autoresize with qdiscs (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Implement dcbnl_setbuffer / getbuffer (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Support two headroom modes (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Manage internal buffer in the hdroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Introduce shared buffer ops (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Convert mlxsw_sp_port_headroom_init() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Inline mlxsw_sp_sb_max_headroom_cells() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Move here the new headroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Move here the three-step headroom configuration from DCB (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Convert mlxsw_sp_port_pg_prio_map() to hdroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Convert ETS handler fully to mlxsw_sp_hdroom_configure() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Split headroom autoresize out of buffer configuration (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track buffer sizes in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track lossiness in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track priorities in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track MTU in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Unify delay handling between PFC and pause (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Add struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Introduce fw_fatal health reporter (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring FW General Debug Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring FW Debug Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move fw_load_policy devlink param into core.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Push code doing params register/unregister into separate helpers (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move fw flashing code into core.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: Bump firmware version to XX.2008.1310 (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Derive SBIB from maximum port speed & MTU (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Keep maximum speed around (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Keep maximum MTU around (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Introduce ptys_max_speed callback (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Extract a helper to get Ethernet attributes (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Extend hwmon interface with critical and emergency alarms (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Calculate MLXSW_HWMON_ATTR_COUNT more accurately (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Split temperature querying from show functions (Ivan Vecera) [1857594] - [netdrv] treewide: Use fallthrough pseudo-keyword (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Remove internal speeds from PTYS register (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Reduce runtime of tc-police scale test (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Fix mausezahn delay parameter in mirror_test() (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Increase burst size for burst test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Increase burst size for rate test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Decrease required rate accuracy (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Adjust default policer burst size for Spectrum-{2, 3} (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ptp: Use generic helper function (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: RED: Test offload of trapping on RED qevents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Offload action trap for qevents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Add early_drop trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Allow for per-ASIC traps initialization (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Allow for per-ASIC trap groups initialization (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: On policer_id_base_ref_count, use dec_and_test (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Use 'size_t' for array sizes (Ivan Vecera) [1857594] - [netdrv] devlink: Pass extack when setting trap's action and group's parameters (Ivan Vecera) [1857594] - [net] devlink: Add early_drop trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_cnt: Use flex_array_size() helper in memcpy() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Fix use-after-free in router init / de-init (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Free EMAD transactions using kfree_rcu() (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Increase scope of RCU read-side critical section (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use different trap group for externally routed packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Allow programming link-local host routes (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add support for temperature thresholds reading for QSFP-DD transceivers (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add ethtool support for QSFP-DD transceivers (Ivan Vecera) [1857594] - [netdrv] mlxsw: destroy workqueue when trap_register in mlxsw_emad_init (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix wrong SFP EEPROM reading for upper pages 1-3 (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Test policers' occupancy (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add scale test for tc-police (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: Test tc-police restrictions (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add tc-police tests (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Offload FLOW_ACTION_POLICE (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Add police action (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Work around hardware limitation (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_policer: Add devlink resource support (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_policer: Add policer core (Ivan Vecera) [1857594] - [netdrv] mlxsw: resources: Add resource identifier for global policers (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add policer bandwidth limits (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Use mirror reason during Rx listener lookup (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Retrieve mirror reason from CQE during receive (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Add mirror reason field to CQEv2 (Ivan Vecera) [1857594] - [netdrv] mlxsw: trap: Add trap identifiers for mirrored packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Increase trap identifier to 10 bits (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Allow setting policer on a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Allow passing parameters to SPAN agents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add support for mirroring towards CPU port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Do not dereference destination netdev (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add driver private info to parms_set() callback (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add per-ASIC SPAN agent operations (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: add mirroring_pid_base to MOGCR register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add session_id and pid to MPAT register (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: RED: Test offload of mirror on RED early_drop qevent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Offload mirroring on RED qevent early_drop (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Promote binder-type dispatch to spectrum.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Publish matchall data structures (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Drop an unused field (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Convert a goto to a return (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to enable / disable global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add support for global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Prepare for global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Move SPAN operations out of global file (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring Port Analyzer Global Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring Mirror Trigger Enable Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Fix use-after-free in case of failed devlink reload (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Remove inappropriate usage of WARN_ON() (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add tests for ethtool extended state (Ivan Vecera) [1857594] - [tools] selftests: forwarding: forwarding.config.sample: Add port with no cable connected (Ivan Vecera) [1857594] - [tools] selftests: forwarding: ethtool: Move different_speeds_get() to ethtool_lib (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Add link extended state (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Port Diagnostics Database Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Move mlxsw_sp_port_type_speed_ops structs (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move ethtool_ops to spectrum_ethtool.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Rename mlxsw_sp_port_headroom_set() (Ivan Vecera) [1857594] - [netdrv] mlxsw: Enforce firmware version for Spectrum-3 (Ivan Vecera) [1857594] - [netdrv] mlxsw: Bump firmware version to XX.2007.1168 (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Fix a spelling typo in spectrum_dcb.c (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add a test for pedit munge tcp, udp sport, dport (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Support FLOW_ACTION_MANGLE for TCP, UDP ports (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Add L4_PORT_ACTION (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Split handling of pedit mangle by chip type (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Do not rely on machine endianness (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Adjust headroom buffers for 8x ports (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Use different get_trend() callbacks for different thermal zones (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add test for control packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register ACL control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register layer 3 control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register layer 2 control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Factor out common Rx listener function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Move layer 3 exceptions to exceptions trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: remove redundant initialization of pointer br_dev (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Allow programming link-local prefix routes (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Add packet traps for BFD packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Treat IPv6 link-local SIP as an exception (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Share one group for all locally delivered packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Move all trap groups under the same enum (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Do not hard code "thin" policer identifier (Ivan Vecera) [1857594] - [netdrv] mlxsw: switchx2: Move SwitchX-2 trap groups out of main enum (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Reduce priority of locally delivered packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for local routes and link-local destination (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use separate trap group for FID miss (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for various IPv6 packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename IPv6 ND trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same switch case for identical groups (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use dedicated trap group for ACL trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Fix spelling mistake in trap's name (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use dedicated trap group for sampled packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for IPv6 ND and ARP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename ARP trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Remove unnecessary field (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Align TC and trap priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Assign non-zero quotas to TC 0 of the CPU port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Change default rate and priority of DHCP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Trap IPv4 DHCP packets in router (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for MLD and IGMP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename IGMP trap group (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Do not hard code trap group name (Ivan Vecera) [1857594] - [tools] selftests: devlink_lib: Remove double blank line (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap group data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap policer data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Move struct definition out of header file (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: add couple of test for the correct matchall-flower ordering (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: add test to check sample action restrictions (Ivan Vecera) [1857594] - [] selftests: mlxsw: rename tc_flower_restrictions.sh to tc_restrictions.sh (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flower: Forbid to insert flower rules in collision with matchall rules (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Forbid to insert matchall rules in collision with flower rules (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Expose a function to get min and max rule priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Put matchall list into substruct of flow struct (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flower: Expose a function to get min and max rule priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Restrict sample action to be allowed only on ingress (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Remove old SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Use new analyzed ports list during speed / MTU change (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Convert flower-based mirroring to new SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Convert matchall-based mirroring to new SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to bind / unbind a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Wrap buffer change in a function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Rename function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to get / put an analyzed port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to get / put a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Move flow offload binding into spectrum_flow.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Process matchall events from the same cb as flower (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Avoid copying sample values and use RCU pointer direcly instead (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Push per-port rule add/del into separate functions (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Move ingress indication into mall_entry (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Pass mall_entry as arg to mlxsw_sp_mall_port_sample_add() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Pass mall_entry as arg to mlxsw_sp_mall_port_mirror_add() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Use block variable in mlxsw_sp_acl_rule_del() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Push matchall bits into a separate file (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Push flow_block related functions into a separate file (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename acl_block to flow_block (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Move block helpers into inline header functions (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Replace zero-length array with flexible-array member (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Use 'refcount_t' for reference counting (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Remove unnecessary debug prints (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Rename parms() to parms_set() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Reduce nesting in mlxsw_sp_span_entry_configure() (Ivan Vecera) [1857594] - [netdrv] net/mlxfw: Remove unneeded semicolon (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Increase register field length to 13 bits (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Re-increase scale of IPv6 nexthop groups (Ivan Vecera) [1857594] - [net] ipv6: Fix use of anycast address with loopback (Ivan Vecera) [1899591] - [net] ipv6: addrconf_f6i_alloc - fix non-null pointer check to !IS_ERR() (Ivan Vecera) [1899591] - [net] ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and others) (Ivan Vecera) [1899591] - [net] ipv6: Change addrconf_f6i_alloc to use ip6_route_info_create (Ivan Vecera) [1899591] - [net] ipv6: Move setting default metric for routes (Ivan Vecera) [1899591] - [net] Add extack argument to ip_fib_metrics_init (Ivan Vecera) [1899591] - [net] ipv6: do not leave garbage in rt->fib6_metrics (Ivan Vecera) [1899591] - [net] Move free of dst_metrics to helper (Ivan Vecera) [1899591] - [net] common metrics init helper for dst_entry (Ivan Vecera) [1899591] - [net] Move free of fib_metrics to helper (Ivan Vecera) [1899591] - [net] common metrics init helper for FIB entries (Ivan Vecera) [1899591] - [net] rtmsg_to_fib6_config() - use new style struct initializer instead of memset (Ivan Vecera) [1899591] - [powercap] powercap/intel_rapl: enumerate Psys RAPL domain together with package RAPL domain (Puneet Sethi) [1893463] - [powercap] powercap/intel_rapl: Fix domain detection (Puneet Sethi) [1893463]- [net] openvswitch: fix TTL decrement exception action execution (Eelco Chaudron) [1902610] - [net] openvswitch: fix error return code in validate_and_copy_dec_ttl() (Eelco Chaudron) [1902610] - [net] openvswitch: fix TTL decrement action netlink message format (Eelco Chaudron) [1902610] - [x86] hyperv: Enable 15-bit APIC ID if the hypervisor supports it (Vitaly Kuznetsov) [1903823] - [x86] kvm: Enable 15-bit extension when KVM_FEATURE_MSI_EXT_DEST_ID detected (Vitaly Kuznetsov) [1903823] - [documentation] x86/kvm: Reserve KVM_FEATURE_MSI_EXT_DEST_ID (Vitaly Kuznetsov) [1903823] - [iommu] hyper-v: Disable IRQ pseudo-remapping if 15 bit APIC IDs are available (Vitaly Kuznetsov) [1903823] - [x86] apic: Support 15 bits of APIC ID in MSI where available (Vitaly Kuznetsov) [1903823] - [x86] msi: Provide msi message shadow structs (Vitaly Kuznetsov) [1903823] - [kernel] genirq/msi: allow shadow declarations of msi_msg:: $member (Vitaly Kuznetsov) [1903823] - [x86] ioapic: Handle Extended Destination ID field in RTE (Vitaly Kuznetsov) [1903823] - [x86] apic: Always provide irq_compose_msi_msg() method for vector domain (Vitaly Kuznetsov) [1903823] - [x86] apic: Cleanup delivery mode defines (Vitaly Kuznetsov) [1903823] - [x86] apic/uv: Fix inconsistent destination mode (Vitaly Kuznetsov) [1903823] - [x86] msi: Only use high bits of MSI address for DMAR unit (Vitaly Kuznetsov) [1903823] - [x86] msi: Move compose message callback where it belongs (Vitaly Kuznetsov) [1903823] - [kernel] genirq/chip: Use the first chip in irq_chip_compose_msi_msg() (Vitaly Kuznetsov) [1903823] - [x86] apic: Fix x2apic enablement without interrupt remapping (Vitaly Kuznetsov) [1903823] - [tools] perf test: Fix msan uninitialized use (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Fix the ratio comments of miss-events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Free formats for perf pmu parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Do not free metric when failed to resolve (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Free metric when it failed to resolve (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Release expr_parse_ctx after testing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix memory leaks in parse-metric test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-event: Fix memory leak in evsel->unit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix cpu/thread map leak (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix some memory leaks - part 2 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix some memory leaks (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Free aliases for PMU event map aliases test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf vendor events amd: Remove trailing commas (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Leader sampling shouldn't clear sample period (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Prevent override of attr->sample_period for libpfm4 events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Set PERF_RECORD_PERIOD if attr->freq is set (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Fix 2 memory sanitizer warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix the "signal" test inline assembly (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record/stat: Explicitly call out event modifiers in the documentation (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fix build warning on 32-bit arches (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf jevents: Fix suspicious code in fixregex() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use uintptr_t when casting numbers to pointers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf report: Disable ordered_events for raw dump (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Correct SNOOPX field offset (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix corrupt data after perf inject from (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf cs-etm: Fix corrupt data after perf inject from (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Avoid an uninitialized read when using fake PMUs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Fix out of bounds array access in the print_counters() evlist method (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Set NULL sentinel in pmu_events table in "Parse and process metrics" test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Set exclude_guest=1 for user-space counting (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Correct the help info of option "--no-bpf-event" (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Use zd for size_t printf formats on 32-bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: arm-spe: Fix check error when synthesizing events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf symbols: Add mwait_idle_with_hints.constprop.0 to the list of idle symbols (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf sched timehist: Fix use of CPU list with summary option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix basic bpf filtering test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Make option description initials all capital letters (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf build-ids: Fall back to debuginfod query if debuginfo not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Remove dead code in parse_nodes_opt() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Update POWER9 metrics to utilize other metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add change log (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: ftrace: Add set_tracing_options() to set all trace options (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option --tid to filter by thread id (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option -D/--delay to delay tracing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: ftrace: Allow set graph depth by '--graph-opts' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option tracing_thresh (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option 'verbose' to show more info for graph tracer (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for tracing option 'irq-info' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option funcgraph-irqs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option sleep-time (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for tracing option 'func_stack_trace' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add general function to parse sublevel options (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '--inherit' to trace children processes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Show trace column header (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '-m/--buffer-size' to set per-cpu buffer size (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Factor out function write_tracing_file_int() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '-F/--funcs' to list available functions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Select function/function_graph tracer automatically (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Use numa_node_to_cpus() to bind tasks to nodes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix cpumask memory leak in node_has_cpus() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools build feature: Quote CC and CXX for their arguments (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Fix module symbol processing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Rename 'enum dso_kernel_type' to 'enum dso_space_type' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Fix man page typos (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Allow multiple probes in record+script_probe_vfs_getname.sh (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench mem: Always memset source before memcpy (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf sched: Prefer sched_waking event when it exists (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Fix a couple of spelling mistakes in options text (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix benchmark names (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix number of processes in "2x3-convergence" test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf trace beauty: Use the autogenerated protocol family table (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf trace beauty: Add script to autogenerate socket families table (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Add 'tod' field to display time of day (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Change the 'enum perf_output_field' enumerators to be 64 bits (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf data: Add support to store time of day in CTF data conversion (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Move clockid_res_ns under clock struct (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf header: Store clock references for -k/--clockid option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add clockid_name function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf clockid: Move parse_clockid() to new clockid object (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Handle possible strdup() error in tep_add_plugin_path() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed description of tep_add_plugin_path() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed type in PRINT_FMT_STING (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed broken indentation in parse_ip4_print_args() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Improve error handling of tep_plugin_add_option() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fix typo in tep_plugin_add_option() description (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Handle strdup() error in parse_option_name() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Document tep_load_plugins_hook() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evsel: Extend message to mention CAP_SYS_PTRACE and perf security doc link (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for decoding PSB+ only (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for decoding FUP/TIP only (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add itrace 'q' option for quicker, less detailed decoding (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Time filter logged perf events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Use itrace debug log flags to suppress some messages (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add optional log flags to the itrace 'd' option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Use itrace error flags to suppress some errors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add optional error flags to the itrace 'e' option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add missing itrace options to help text (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Improve aux_output not supported error (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix duplicate branch after CBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix FUP packet state (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Introduce --control fd:ctl-fdoptions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Implement control commands handling (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Extend -D, --delay option with -1 value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Introduce --control fd:ctl-fdoptions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Add benchmark of find_next_bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools build feature: Use CC and CXX from parent (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename group_list to metric_list (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename struct egroup to metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add metric group test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Make compute_single function more precise (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add recursion check when processing nested metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add DCache_L2 to metric parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add cache_miss_cycles to metric parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add events for the current list (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Compute referenced metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add referenced metrics to hash data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Collect referenced metrics in struct metric_expr (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Collect referenced metrics in struct metric_ref_node (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename __metricgroup__add_metric to __add_metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add add_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add macros for iterating map events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add expr__del_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Change expr__get_id to return struct expr_id_data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add expr__add_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix memory leak in expr__add_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Ensure sample_period is set libpfm4 events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Fix term parsing for raw syntax (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Allow r0x event syntax (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: No need to cache the PMUs in ARM SPE auxtrace init routine (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Add basic syscall benchmark (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Implement control commands handling (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: extend -D, --delay option with -1 value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out event handling loop into dispatch_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out body of event handling loop for fork case (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Move target check to loop control statement (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out body of event handling loop for system wide (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Implement control command handling functions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Introduce control file descriptors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Avoid counting of nonfilterable fdarray fds (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Add flags to fdarray fds objects (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Avoid internal moving of fdarray fds (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add 'struct expr_id_data' to keep expr value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename expr__add_id() to expr__add_val() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Warn if the target function is a GNU indirect function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Fix memory leakage when the probe point is not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Fix wrong variable warning when the probe point is not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Avoid setting probes on the same address for the same event (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf kmem: Pass additional arguments to 'perf record' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Report BPF errors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Show text poke address symbol (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Add option --show-text-poke-events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for text poke events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add support for PERF_RECORD_TEXT_POKE (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf annotate: Fix non-null terminated buffer returned by readlink() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf inject jit: Remove //anon mmap events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf symbols: Add s390 idle functions 'psw_idle' and 'psw_idle_exit' to list of idle symbols (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Fix reporting of unknown SVM exit reasons (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Change to SPDX License format (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add builtin handler for trace_marker_raw (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Move kernel_stack event handler to "function" plugin (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add plugin for decoding syscalls/sys_enter_futex (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add offset option for function plugin (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add more SVM exit reasons (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add plugin for tlb_flush (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Optimize pretty_print() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add support for more printk format specifiers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Introduced new traceevent API, for adding new plugins directories (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add interface for options to plugins (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add tep_load_plugins_hook() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Disable a subset of bison warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Disable a subset of flex warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Declare bison header file output (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add missing headers noticed when building with NO_LIBBPF=1 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Declare flex header file output (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add flex debug build flag (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add bison debug build flag (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use automatic variable for yacc input (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use automatic variable for flex input (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' branch_type methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' sample_id_all methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' sample_type methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' strerror methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' 'add' evsel methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Improve CPU core PMU HW event list ordering (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: List kernel supplied event aliases for arm64 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf cs-etm: Allow no CoreSight sink to be specified on command line (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add < and > operators (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add d_ratio operation (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Fixup some evsel/evlist method names (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add parse metric test for frontend metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add parse metric test for ipc metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add test_generic_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Release metric_events rblist (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Factor out prepare_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add metricgroup__parse_groups_test function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add map to parse_groups() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add fake_pmu to parse_group() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse: Factor out parse_groups() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add another metric parsing test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add a perf_pmu__fake object to use with __parse_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse: Provide a way to pass a fake_pmu to parse_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Factor check_parse_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add fake pmu support (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf annotate: Remove unneeded conversion to bool (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools/: replace HTTP links with HTTPS ones (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools, build: Propagate build failures from tools/build/Makefile.build (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] x86/cpufeatures: Add Architectural LBRs feature bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Add support for Intel SPR platform (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Support multiple RAPL unit quirks (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Fix missing psys sysfs attributes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Take over CAP_SYS_PTRACE creds to CAP_PERFMON capability (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf: Expose get/put_callchain_entry() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [include] perf: : drop a duplicated word (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Remove task_ctx_size (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Create kmem_cache for the LBR context data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Use kmem_cache to allocate the PMU specific data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Factor out functions to allocate/free the task_ctx_data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Support Architectural LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out intel_pmu_store_lbr (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out rdlbr_all() and wrlbr_all() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Mark the {rd, wr}lbr_{to, from} wrappers __always_inline (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Unify the stored format of LBR information (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Support LBR_CTL (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] x86/msr-index: Add bunch of MSRs for Arch LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Expose CPUID enumeration bits for arch LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Use dynamic data structure for task_ctx (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out a new struct for generic optimization (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add the function pointers for LBR save and restore (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add a function pointer for LBR read (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add a function pointer for LBR reset (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Keep LBR records unchanged in host context for guest usage (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Add constraint to create guest LBR event without hw counter (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/lbr: Add interface to get LBR information (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Provide stubs of KVM helpers for non-Intel CPUs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/core: Refactor hw->idx checks and cleanup (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Fix variable types for LBR registers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf: Add perf text poke event (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [uapi] perf: Add perf_event_mmap_page::cap_user_time_short ABI (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] sev-es: Do not support MMIO to/from encrypted memory (Vitaly Kuznetsov) [1868080] - [x86] head/64: Check SEV encryption before switching to kernel page-table (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Sanity-check CPUID results in the early #VC handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Check SEV encryption in 64-bit boot-path (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Introduce sev_status (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Use GHCB accessor for setting the MMIO scratch buffer (Vitaly Kuznetsov) [1868080] - [x86] head/64: Disable stack protection for head$(BITS).o (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Check required CPU features for SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] efi: Add GHCB mappings when SEV-ES is active (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle NMI State (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Support CPU offline/online (Vitaly Kuznetsov) [1868080] - [x86] head/64: Don't call verify_cpu() on starting APs (Vitaly Kuznetsov) [1868080] - [x86] smpboot: Load TSS and getcpu GDT entry before loading IDT (Vitaly Kuznetsov) [1868080] - [x86] realmode: Setup AP jump table (Vitaly Kuznetsov) [1868080] - [x86] realmode: Add SEV-ES specific trampoline entry point (Vitaly Kuznetsov) [1868080] - [x86] vmware: Add VMware-specific handling for VMMCALL under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] kvm: Add KVM-specific VMMCALL handling under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] paravirt: Allow hypervisor-specific VMMCALL handling under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle #DB Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle #AC Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle VMMCALL Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MWAIT/MWAITX Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MONITOR/MONITORX Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle INVD Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle RDPMC Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle RDTSC(P) Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle WBINVD Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle DR7 read/write events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MSR events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MMIO String Instructions (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MMIO events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle instruction fetches from user-space (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Wire up existing #VC exit-code handlers (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add a Runtime #VC Exception Handler (Vitaly Kuznetsov) [1868080] - [x86] entry/64: Add entry code for #VC handler (Vitaly Kuznetsov) [1868080] - [x86] dumpstack/64: Add noinstr version of get_stack_info() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Adjust #VC IST Stack on entering NMI handler (Vitaly Kuznetsov) [1868080] - [x86] boot/64: Explicitly map boot_params and command line (Vitaly Kuznetsov) [1868080] - [x86] boot/64: Initialize 5-level paging variables earlier (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Allocate and map an IST stack for #VC handler (Vitaly Kuznetsov) [1868080] - [x86] debug: Allow a single level of #DB recursion (Vitaly Kuznetsov) [1868080] - [x86] entry: Remove DBn stacks (Vitaly Kuznetsov) [1868080] - [x86] entry, nmi: Disable #DB (Vitaly Kuznetsov) [1868080] - [x86] nmi: Protect NMI entry against instrumentation (Vitaly Kuznetsov) [1868080] - [x86] entry: Introduce local_db_{save, restore}() (Vitaly Kuznetsov) [1868080] - [x86] db: Split out dr6/7 handling (Vitaly Kuznetsov) [1868080] - [x86] Replace ist_enter() with nmi_enter() (Vitaly Kuznetsov) [1868080] - [x86] traps: Stop using ist_enter/exit() in do_int3() (Vitaly Kuznetsov) [1868080] - [x86] entry: Get rid of ist_begin/end_non_atomic() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup per-CPU GHCBs for the runtime handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup GHCB-based boot #VC handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup an early #VC handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Compile early handler code into kernel image (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Print SEV-ES info into the kernel log (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add SEV-ES Feature Detection (Vitaly Kuznetsov) [1868080] - [x86] head/64: Move early exception dispatch to C code (Vitaly Kuznetsov) [1868080] - [x86] idt: Make IDT init functions static inlines (Vitaly Kuznetsov) [1868080] - [x86] head/64: Install a CPU bringup IDT (Vitaly Kuznetsov) [1868080] - [x86] head/64: Switch to initial stack earlier (Vitaly Kuznetsov) [1868080] - [x86] head/64: Load segment registers earlier (Vitaly Kuznetsov) [1868080] - [x86] irq/64: Update stale comment (Vitaly Kuznetsov) [1868080] - [x86] head/64: Load GDT after switch to virtual addresses (Vitaly Kuznetsov) [1868080] - [x86] head/64: Install startup GDT (Vitaly Kuznetsov) [1868080] - [x86] idt: Split idt_data setup out of set_intr_gate() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add CPUID handling to #VC handler (Vitaly Kuznetsov) [1868080] - [x86] fpu: Move xgetbv()/xsetbv() into a separate header (Vitaly Kuznetsov) [1868080] - [x86] cpu: Use XGETBV and XSETBV mnemonics in fpu/internal.h (Vitaly Kuznetsov) [1868080] - [x86] fpu: Reset MXCSR to default in kernel_fpu_begin() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add support for handling IOIO exceptions (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Unmap GHCB page before booting the kernel (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Setup a GHCB-based VC Exception handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add set_page_en/decrypted() helpers (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Check return value of kernel_ident_mapping_init() (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Call set_sev_encryption_mask() earlier (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add stage1 #VC handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Change add_identity_map() to take start and end (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Don't pre-map memory in KASLR code (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Always switch to own page table (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add page-fault handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Rename kaslr_64.c to ident_map_64.c (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add IDT Infrastructure (Vitaly Kuznetsov) [1868080] - [x86] traps: Split trap numbers out in a separate header (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Disable red-zone usage (Vitaly Kuznetsov) [1868080] - [x86] insn: Add insn_has_rep_prefix() helper (Vitaly Kuznetsov) [1868080] - [x86] insn: Add insn_get_modrm_reg_off() (Vitaly Kuznetsov) [1868080] - [x86] umip: Factor out instruction decoding (Vitaly Kuznetsov) [1868080] - [x86] umip: Factor out instruction fetch (Vitaly Kuznetsov) [1868080] - [tools] x86/insn: Make inat-tables.c suitable for pre-decompression code (Vitaly Kuznetsov) [1868080] - [x86] traps: Move pf error codes to (Vitaly Kuznetsov) [1868080] - [x86] cpufeatures: Add SEV-ES CPU feature (Vitaly Kuznetsov) [1868080] - [x86] kvm: svm: Use __packed shorthand (Vitaly Kuznetsov) [1868080] - [x86] kvm: svm: Add GHCB Accessor functions (Vitaly Kuznetsov) [1868080] - [x86] cpu: Unify cpu_init() (Vitaly Kuznetsov) [1868080] - [x86] insn-eval: Add support for 64-bit kernel mode (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Get rid of GOT fixup code (Vitaly Kuznetsov) [1868080] - [kernel] x86/boot/compressed: Force hidden visibility for all symbol references (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Move .got.plt entries out of the .got section (Vitaly Kuznetsov) [1868080] - [x86] boot: Correct relocation destination on old linkers (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Switch to __KERNEL_CS after GDT is loaded (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Fix reloading of GDTR post-relocation (Vitaly Kuznetsov) [1868080] - [x86] boot: Reload GDTR after copying to the end of the buffer (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Don't declare __force_order in kaslr_64.c (Vitaly Kuznetsov) [1868080] - [mm] mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault() (Philipp Rudo) [1903968] - [s390] s390/ap: fix ap devices reference counting (Philipp Rudo) [1903967] - [infiniband] RDMA/cxgb4: Validate the number of CQEs (Kamal Heib) [1894720] - [net] treewide: Use fallthrough pseudo-keyword (Petr Oros) [1892748] - [net] devlink: Remove overzealous WARN_ON with snapshots (Petr Oros) [1892748] - [net] devlink: ignore -EOPNOTSUPP errors on dumpit (Petr Oros) [1892748] - [net] devlink: Always use user_ptr[0] for devlink and simplify post_doit (Petr Oros) [1892748] - [net] devlink: Constify devlink instance pointer (Petr Oros) [1892748] - [net] devlink: Add comment for devlink instance lock (Petr Oros) [1892748] - [net] devlink: Do not hold devlink mutex when initializing devlink fields (Petr Oros) [1892748] - [docs] ice: add documentation for device-caps region (Petr Oros) [1892748] - [net] devlink: remove new uninitialized_var() usage (Petr Oros) [1892748] - [docs] networking: convert sja1105's devlink info to RTS (Petr Oros) [1892748] - [net] devlink: refactor end checks in devlink_nl_cmd_region_read_dumpit (Petr Oros) [1892748] - [docs] ice: cleanup language in ice.rst for fw.app (Petr Oros) [1892748] - [docs] devlink: don't wrap commands in rST shell blocks (Petr Oros) [1892748] - [net] devlink: Protect devlink port list traversal (Petr Oros) [1895042] - [net] devlink: Fix per port reporter fields initialization (Petr Oros) [1895042] - [net] devlink: Fix use-after-free when destroying health reporters (Petr Oros) [1895042] - [net] devlink: introduce the health reporter test command (Petr Oros) [1895042] - [net] devlink: Add devlink health port reporters API (Petr Oros) [1895042] - [net] devlink: Implement devlink health reporters on per-port basis (Petr Oros) [1895042] - [net] devlink: Create generic devlink health reporter search function (Petr Oros) [1895042] - [net] devlink: Rework devlink health reporter destructor (Petr Oros) [1895042] - [net] devlink: Refactor devlink health reporter constructor (Petr Oros) [1895042]- [md] dm writecache: fix the maximum number of arguments (Mike Snitzer) [1895117] - [md] dm writecache: advance the number of arguments when reporting max_age (Mike Snitzer) [1895117] - [x86] x86/cpu/amd: Make erratum #1054 a legacy erratum (Michael Petlan) [1791459] - [x86] x86/cpu/amd: Enable the fixed Instructions Retired counter IRPERF (Michael Petlan) [1791459] - [s390] s390/early: improve machine detection (Claudio Imbrenda) [1896307] - [infiniband] IB/mlx5: Fix fall-through warnings for Clang (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Properly convey driver version to firmware (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Enforce HW TX csum offload with kTLS (Alaa Hleihel) [1858561] - [netdrv] net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix wrong address reclaim when command interface is down (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Disable QoS when min_rates on all VFs are zero (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Clear bw_share upon VF disable (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add handling of port type in rule deletion (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix check if netdev is bond slave (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Set IPsec WAs only in IP's non checksum partial case (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix incorrect access of RCU-protected xdp_prog (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VXLAN synchronization after function reload (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Avoid extack error log for disabled vport (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix deletion of duplicate rules (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Protect encap route dev from concurrent release (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix modify header actions memory leak (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix devlink deadlock on net namespace deletion (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix type warning of sizeof in __mlx5_ib_alloc_counters() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Clarify what the UMR is for when creating MRs (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Remove dead check for EAGAIN after alloc_mr_from_cache() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix potential race between destroy and CQE poll (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Use kvfree() for memory allocated with kvzalloc() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: TC: Remove unused parameter from mlx5_tc_ct_add_no_trk_match() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Setup all vports' metadata to support peer miss rule (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Dedicated metadata for uplink vport (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Check and enable metadata support flag before using (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Release clock lock before scheduling a PPS work (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Rename ptp clock info (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Always use container_of to find mdev pointer from clock struct (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix uninitialized variable warning (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec Tx data path offload (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add TX steering rule per IPsec state (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: Add NIC TX domain namespace (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: Enhanced TX MPWQE for SKBs (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move TX code into functions to be used by MPWQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Rename xmit-related structs to generalize them (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Generalize TX MPWQE checks for full session (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Support multiple SKBs in a TX WQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move the TLS resync check out of the function (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Unify constants for WQE_EMPTY_DS_COUNT (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Small improvements for XDP TX MPWQE logic (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor xmit functions (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move mlx5e_tx_wqe_inline_mode to en_tx.c (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use struct assignment to initialize mlx5e_tx_wqe_info (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor inline header size calculation in the TX path (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add IPv6 traffic class (DSCP) header rewrite support (Alaa Hleihel) [1889981 1858561] - [netdrv] net/mlx5e: Add LAG warning if bond slave is not lag master (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Add LAG warning for unsupported tx type (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Return a valid errno if can't get lag device index (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Fix race condition on nhe->n pointer in neigh update (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VLAN create flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VLAN cleanup flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix return status when setting unsupported FEC mode (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix driver's declaration to support GRE offload (Alaa Hleihel) [1858561 1819619] - [netdrv] net/mlx5e: CT, Fix coverity issue (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix error path for RQ alloc (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix request_irqs error flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: cmdif, Avoid skipping reclaim pages if FW is not accessible (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add retry mechanism to the command entry index allocation (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: poll cmd EQ in case of command timeout (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Avoid possible free of command entry while timeout comp handler (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix a race when moving command interface to polling mode (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: mlx5e_fec_in_caps() returns a boolean (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix using wrong stats_grps in mlx5e_update_ndo_stats() (Alaa Hleihel) [1870593 1858561] - [netdrv] net/mlx5e: Fix multicast counter not up-to-date in "ip -s" (Alaa Hleihel) [1858561 1693130] - [netdrv] net/mlx5e: Fix endianness when calculating pedit mask first bit (Alaa Hleihel) [1889981 1858561] - [netdrv] net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: CT: Fix freeing ct_label mapping (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix memory leak of tunnel info when rule under multipath not ready (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use synchronize_rcu to sync with NAPI (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use RCU to protect rq->xdp_prog (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix FTE cleanup (Alaa Hleihel) [1858561] - [infiniband] mlx5: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix flow destination setting for RDMA TX flow table (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Delete extra dump stack that gives nothing (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: convert to new udp_tunnel infrastructure (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: DR, Change push vlan action sequence (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enable users to change VF/PF representors carrier state (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Delete unreachable code (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: drop unnecessary list_empty (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: DR, Reduce print level for matcher print (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add support for PCI relaxed ordering (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use indirect call wrappers for RX post WQEs functions (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move exposure of datapath function to txrx header (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: RX, Re-work initializaiton of RX function pointers (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Use eswitch total_vports (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Reuse total_vports and avoid duplicate nvports (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Consider maximum vf vports for steering init (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: Add function ID to reclaim pages debug log (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Hold pages RB tree per VF (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Set mkey relaxed ordering by UMR with ConnectX-7 (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Use MLX5_SET macro instead of local structure (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add missing srcu_read_lock in ODP implicit flow (Alaa Hleihel) [1858561] - [include] RDMA/mlx5: ConnectX-7 new capabilities to set relaxed ordering by UMR (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Allow SQ modification (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Do not request completion on every single UMR WQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: RX, Avoid indirect call in representor CQE handling (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: XDP, Avoid indirect call in TX flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec ESN update offload support (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec Rx data path offload (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add IPsec steering in local NIC RX (Alaa Hleihel) [1858561 1790222] - [include] net/mlx5: Add IPsec related Flow steering entry's fields (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: IPsec: Add HW crypto offload support (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: Accel, Add core IPsec support for the Connect-X family (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: E-switch, Reduce dependency on num_vfs during mode set (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Avoid function change handler for non ECPF (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Make MLX5_EN_TLS non-prompt (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Enable count action for rules with allow action (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add interface changes required for VDPA (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add VDPA interface type to supported enumerations (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Support setting access rights of dma addresses (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move devlink port register and unregister calls (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Remove unused to_mibmr function (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, When eswitch is unsupported, return -EOPNOTSUPP (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Added support for 100Gbps per lane link modes (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Delete one-time used functions (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Cleanup DEVX initialization flow (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate flow steering logic from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate counters from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate restrack callbacks initialization from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Limit the scope of mlx5_ib_enable_driver function (Alaa Hleihel) [1858561] - [infiniband] RDMA: Move XRCD to be under ib_core responsibility (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Introduce UAPI to query PD attributes (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Implement the query ucontext functionality (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Refactor mlx5_ib_alloc_ucontext() response (Alaa Hleihel) [1858561] - [infiniband] RDMA/core: Optimize XRC target lookup (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Get XRCD number directly for the internal use (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Enable QP number request when creating IPoIB underlay QP (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Introduce ODP prefetch counter (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance TX timeout recovery (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance ICOSQ data on RX reporter's diagnose (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add EQ info to TX/RX reporter's diagnose (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance CQ data on diagnose output (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Rename reporter's helpers (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add helper to get the RQ WQE counter (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add helper to get RQ WQE's head (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move RQ helpers to txrx.h (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Align RX/TX reporters diagnose output format (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Remove redundant RQ state query (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add a flush timeout define (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Change reporters create functions to return void (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: fix memory leak of tls (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix build break when CONFIG_XPS is not set (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Add kTLS RX HW offload support (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Use kernel API to extract private offload context (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Improve TLS feature modularity (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Accel, Expose flow steering API for rules add/del (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Receive flow steering framework for accelerated TCP flows (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: API to manipulate TTC rules destinations (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor build channel params (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Turn XSK ICOSQ into a general asynchronous one (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: kTLS, Improve TLS params layout structures (Alaa Hleihel) [1858561] - [include] net/mlx5: Avoid RDMA file inclusion in core driver (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: vxlan: Return bool instead of opaque ptr in port_lookup() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move TC-specific function definitions into MLX5_CLS_ACT (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Use kfree(ft->g) in arfs_create_groups() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: FWTrace: Add missing space (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get MR resource in RAW format (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get CQ resource in RAW format (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get QP resource in RAW format (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add support in query QP, CQ and MKEY segments (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Export resource dump interface (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Supporting setting devlink port function mac address (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Split mac address setting function for using state_lock (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Support querying port function mac address (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Move helper to eswitch layer (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Introduce and use eswitch support check helper (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: Constify mac address pointer (Alaa Hleihel) [1858561] - [tty] serial: 8250: export serial8250_do_set_divisor() (Steve Best) [1784119] - [tty] serial: 8250: introduce get_divisor() and set_divisor() hook (Steve Best) [1784119] - [tty] serial: 8250: let serial8250_get_divisor() get uart_port * as param (Steve Best) [1784119] - [tty] serial: 8250_lpss: Add ->setup() for Elkhart Lake ports (Steve Best) [1784119] - [tty] serial: 8250_lpss: Switch over to MSI interrupts (Steve Best) [1784119] - [tty] serial: 8250_lpss: Enable HS UART on Elkhart Lake (Steve Best) [1784119] - [tty] serial: 8250_lpss: Get rid of custom LPSS_DEVICE() macro (Steve Best) [1784119] - [tty] serial: 8250_lpss: register DMA IRQ and pool with instance ID (Steve Best) [1784119] - [tty] serial: 8250_lpss: add fractional divisor support (Steve Best) [1784119] - [tty] serial: 8250_lpss: switch to use 8250_dwlib library (Steve Best) [1784119] - [tty] tty: serial: Use the correct style for SPDX License Identifier (Steve Best) [1784119] - [tty] serial: 8250_dw: split Synopsys DesignWare 8250 common functions (Steve Best) [1784119] - [tty] 8250_lpss: check null return when calling pci_ioremap_bar (Steve Best) [1784119] - [dma] dmaengine: dw: Remove misleading is_private property (Steve Best) [1784119] - [tty] serial: 8250: fix null-ptr-deref in serial8250_start_tx() (John Linville) [1903272] {CVE-2020-15437} - [i2c] i2c: designware-pci: Fix BUG_ON during device removal (Steve Best) [1784122] - [i2c] i2c: designware-pci: Add support for Elkhart Lake PSE I2C (Steve Best) [1784122] - [i2c] i2c: designware-pci: Switch over to MSI interrupts (Steve Best) [1784122] - [mmc] mmc: sdhci: Add LTR support for some Intel BYT based controllers (Steve Best) [1906791] - [mmc] mmc: sdhci-pci: Add max-frequency device property for Intel controllers (Steve Best) [1906791] - [powerpc] powerpc/64s: Trim offlined CPUs from mm_cpumasks (Steve Best) [1905892] - [kernel] kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling (Steve Best) [1905892] - [mm] powerpc/64s/pseries: Fix hash tlbiel_all_isa300 for guest kernels (Steve Best) [1905892] - [mm] powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation (Steve Best) [1905892] - [mm] powerpc/64s: Add cp_abort after tlbiel to invalidate copy-buffer address (Steve Best) [1905892] - [powerpc] powerpc: untangle cputable mce include (Steve Best) [1905892] - [mmc] mmc: sdhci-pci: Add support for Intel EHL (Steve Best) [1783588] - [scsi] qla2xxx: Update version to 10.02.00.104-k (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix device loss on 4G and older HBAs (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: If fcport is undergoing deletion complete I/O with retry (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix the call trace for flush workqueue (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix flash update in 28XX adapters on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Handle aborts correctly for port undergoing deletion (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix N2N and NVMe connect retry failure (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix FW initialization error on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix crash during driver load on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix compilation issue in PPC systems (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Don't check for fw_started while posting NVMe command (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Tear down session if FW say it is down (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Limit interrupt vectors to number of CPUs (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Change post del message from debug level to log level (Nilesh Javali) [1905493] - [s390] s390/qeth: Remove pnso workaround (Philipp Rudo) [1903964] - [s390] s390/purgatory: do not build purgatory with kcov, kasan and friends (Philipp Rudo) [1900550] - [fs] iomap: Fix misplaced page flushing (Carlos Maiolino) [1868429] - [fs] iomap: Use round_down/round_up macros in __iomap_write_begin (Carlos Maiolino) [1868429] - [fs] iomap: Mark read blocks uptodate in write_begin (Carlos Maiolino) [1868429] - [fs] iomap: Clear page error before beginning a write (Carlos Maiolino) [1868429] - [fs] iomap: fix WARN_ON_ONCE() from unprivileged users (Carlos Maiolino) [1868429] - [fs] iomap: fall back to buffered writes for invalidation failures (Carlos Maiolino) [1868429] - [fs] iomap: Only invalidate page cache pages on direct IO writes (Carlos Maiolino) [1868429] - [fs] iomap: Make sure iomap_end is called after iomap_begin (Carlos Maiolino) [1868429] - [fs] iomap: Fix unsharing of an extent >2GB on a 32-bit machine (Carlos Maiolino) [1868429] - [fs] iomap: fix the iomap_fiemap prototype (Carlos Maiolino) [1868429] - [fs] iomap: remove lockdep_assert_held() (Carlos Maiolino) [1868429] - [mm] powerpc/numa: Fix a regression on memoryless node 0 (Steve Best) [1903613] - [mm] powerpc/numa: Offline memoryless cpuless node 0 (Steve Best) [1903613] - [mm] powerpc/numa: Prefer node id queried from vphn (Steve Best) [1903613] - [mm] powerpc/numa: Set numa_node for all possible cpus (Steve Best) [1903613] - [powerpc] powerpc/numa: Remove late request for home node associativity (Steve Best) [1903613] - [mm] powerpc/numa: Early request for home node associativity (Steve Best) [1903613] - [mm] powerpc/numa: Use cpu node map of first sibling thread (Steve Best) [1903613] - [x86] xen: don't unbind uninitialized lock_kicker_irq (Brian Masney) [1896786] - [net] Bluetooth: Acquire sk_lock.slock without disabling interrupts (Ivan Vecera) [1889859] - [wireless] mwifiex: fix double free (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: run init_cfg function once per driver load (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: remove no filter condition (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: split a print to avoid a WARNING in ROC (Jarod Wilson) [1860496] - [wireless] qtnfmac: fix resource leaks on unsupported iftype error return path (Jarod Wilson) [1860496] - [net] nl80211: fix OBSS PD min and max offset validation (Jarod Wilson) [1860496] - [wireless] rtw88: Fix potential probe error handling race with wow firmware loading (Jarod Wilson) [1860496] - [wireless] rtw88: Fix probe error handling race with firmware loading (Jarod Wilson) [1860496] - [wireless] ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd() (Jarod Wilson) [1860496] - [wireless] ath11k: Add checked value for ath11k_ahb_remove (Jarod Wilson) [1860496] - [wireless] mwifiex: remove function pointer check (Jarod Wilson) [1860496] - [wireless] ath11k: fix uninitialized return in ath11k_spectral_process_data() (Jarod Wilson) [1860496] - [wireless] ath11k: fix a double free and a memory leak (Jarod Wilson) [1860496] - [wireless] rtw88: fix compile warning: (Jarod Wilson) [1860496] - [wireless] mwifiex: Remove unnecessary braces from HostCmd_SET_SEQ_NO_BSS_INFO (Jarod Wilson) [1860496] - [wireless] rtw88: don't treat NULL pointer as an array (Jarod Wilson) [1860496] - [wireless] mwifiex: Do not use GFP_KERNEL in atomic context (Jarod Wilson) [1860496] - [wireless] brcmfmac: check ndev pointer (Jarod Wilson) [1860496] - [wireless] ath11k: Fix possible memleak in ath11k_qmi_init_service (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path (Jarod Wilson) [1860496] - [wireless] ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb() (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Use appropriate rs_datalen type (Jarod Wilson) [1860496] - [wireless] ath6kl: prevent potential array overflow in ath6kl_add_new_sta() (Jarod Wilson) [1860496] - [net] net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reduce maximum VHT MPDU length to 7991 (Jarod Wilson) [1860496] - [net] mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz (Jarod Wilson) [1860496] - [net] mac80211: do not allow bigger VHT MPDUs than the hardware supports (Jarod Wilson) [1860496] - [net] cfg80211: fix 6 GHz channel conversion (Jarod Wilson) [1860496] - [net] mac80211: do not disable HE if HT is missing on 2.4 GHz (Jarod Wilson) [1860496] - [net] mac80211: Fix radiotap header channel flag for 6GHz band (Jarod Wilson) [1860496] - [net] lib80211: fix unmet direct dependendices config warning when !CRYPTO (Jarod Wilson) [1860496] - [net] mac80211: add AQL support for VHT160 tx rates (Jarod Wilson) [1860496] - [net] mac80211: extend AQL aggregation estimation to HE and fix unit mismatch (Jarod Wilson) [1860496] - [wireless] mwifiex: Increase AES key storage size to 256 bits (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: use ieee80211_free_txskb to free tx skbs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing stations (Jarod Wilson) [1860496] - [net] cfg80211: Adjust 6 GHz frequency to channel conversion (Jarod Wilson) [1860496] - [net] mac80211: reduce packet loss event false positives (Jarod Wilson) [1860496] - [net] cfg80211: regulatory: reject invalid hints (Jarod Wilson) [1860496] - [net] wireless: fix wrong 160/80+80 MHz setting (Jarod Wilson) [1860496] - [net] mac80211: improve AQL aggregation estimation for low data rates (Jarod Wilson) [1860496] - [net] mac80211: factor out code to look up the average packet length duration for a rate (Jarod Wilson) [1860496] - [net] mac80211: use rate provided via status->rate on ieee80211_tx_status_ext for AQL (Jarod Wilson) [1860496] - [net] nl80211: fix NL80211_ATTR_HE_6GHZ_CAPABILITY usage (Jarod Wilson) [1860496] - [wireless] brcmfmac: reserve tx credit only when txctl is ready to send (Jarod Wilson) [1860496] - [net] wireless: Use fallthrough pseudo-keyword (Jarod Wilson) [1860496] - [wireless] rtl818x: constify ioreadX() iomem argument (as in generic implementation) (Jarod Wilson) [1860496] - [net] mac80211: Do not report beacon loss if beacon filtering enabled (Jarod Wilson) [1860496] - [net] mac80211: fix misplaced while instead of if (Jarod Wilson) [1860496] - [net] nl80211: use eth_zero_addr() to clear mac address (Jarod Wilson) [1860496] - [net] mac80211: use eth_zero_addr() to clear mac address (Jarod Wilson) [1860496] - [net] mac8211: fix struct initialisation (Jarod Wilson) [1860496] - [net] mac80211: Handle special status codes in SAE commit (Jarod Wilson) [1860496] - [wireless] brcmfmac: Set timeout value when configuring power save (Jarod Wilson) [1860496] - [wireless] hostap: use generic power management (Jarod Wilson) [1860496] - [wireless] rt2x00: pci: use generic power management (Jarod Wilson) [1860496] - [wireless] mt7601u: add missing release on skb in mt7601u_mcu_msg_send (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't print failure if debug firmware is missing (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: coex: add functions and parameters (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: make symbol 'rtw8821c_rtw_pwr_track_tbl' static (Jarod Wilson) [1860496] - [wireless] rtw88: add h2c command in debugfs (Jarod Wilson) [1860496] - [wireless] rtw88: allows driver to enable/disable beacon (Jarod Wilson) [1860496] - [wireless] rtw88: add ieee80211_ops::change_interface (Jarod Wilson) [1860496] - [wireless] rtw88: coex: only skip coex triggered by BT info (Jarod Wilson) [1860496] - [wireless] rtw88: update tx descriptor of mgmt and reserved page packets (Jarod Wilson) [1860496] - [wireless] rtw88: fix short GI capability based on current bandwidth (Jarod Wilson) [1860496] - [wireless] rtw88: fix LDPC field for RA info (Jarod Wilson) [1860496] - [wireless] prism54: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1860496] - [wireless] prism54: islpci_hotplug: use generic power management (Jarod Wilson) [1860496] - [wireless] prism54: Replace HTTP links with HTTPS ones (Jarod Wilson) [1860496] - [wireless] p54: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1860496] - [wireless] mwifiex: 11n_rxreorder: Remove unnecessary cast in kfree() (Jarod Wilson) [1860496] - [wireless] rtlwifi: btcoex: use *ph to print small buffer (Jarod Wilson) [1860496] - [wireless] rtlwifi: btcoex: remove redundant initialization of variables ant_num and single_ant_path (Jarod Wilson) [1860496] - [net] mac80211: warn only once in check_sdata_in_driver() at each caller (Jarod Wilson) [1860496] - [net] nl80211: support 4-way handshake offloading for WPA/WPA2-PSK in AP mode (Jarod Wilson) [1860496] - [net] cfg80211: invert HE BSS color 'disabled' to 'enabled' (Jarod Wilson) [1860496] - [net] mac80211: add a function for running rx without passing skbs to the stack (Jarod Wilson) [1860496] - [net] mac80211: parse radiotap header when selecting Tx queue (Jarod Wilson) [1860496] - [net] mac80211: remove unused flags argument in transmit functions (Jarod Wilson) [1860496] - [net] mac80211: use same flag everywhere to avoid sequence number overwrite (Jarod Wilson) [1860496] - [net] mac80211: do not overwrite the sequence number if requested (Jarod Wilson) [1860496] - [net] mac80211: add radiotap flag to prevent sequence number overwrite (Jarod Wilson) [1860496] - [net] mac80211: never drop injected frames even if normally not allowed (Jarod Wilson) [1860496] - [uapi] cfg80211: Add support to advertize OCV support (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: avoid bss color setting in non-HE modes (Jarod Wilson) [1860496] - [net] mac80211: calculate skb hash early when using itxq (Jarod Wilson) [1860496] - [net] mac80211: improve AQL tx airtime estimation (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add connected to auth server to station info (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add connected to auth server to meshconf (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add mesh_param "mesh_nolearn" to skip path discovery (Jarod Wilson) [1860496] - [net] cfg80211: allow the low level driver to flush the BSS table (Jarod Wilson) [1860496] - [net] mac80211: Use fallthrough pseudo-keyword (Jarod Wilson) [1860496] - [net] nl80211: Simplify error handling path in 'nl80211_trigger_scan()' (Jarod Wilson) [1860496] - [net] nl80211: Remove a misleading label in 'nl80211_trigger_scan()' (Jarod Wilson) [1860496] - [uapi] net/wireless: wireless.h: drop duplicate word in comments (Jarod Wilson) [1860496] - [uapi] net/wireless: nl80211.h: drop duplicate words in comments (Jarod Wilson) [1860496] - [net] cfg80211: allow vendor dumpit to terminate by returning 0 (Jarod Wilson) [1860496] - [net] mac80211: remove the need for variable rates_idx (Jarod Wilson) [1860496] - [net] nl80211: S1G band and channel definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add missing release on skb in __mt76x02u_mcu_send_msg (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible memory leak in mt7615_mcu_wtbl_sta_add (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt76s: move queue accounting in mt76s_tx_queue_skb (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663s support (Jarod Wilson) [1860496] - [wireless] mt76: introduce mt76_sdio module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663-usb-sdio-common module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: sdio code must access rate/key regs in preocess context (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_skb_adjust_pad utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: take into account sdio bus configuring txwi (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add missing CONFIG_MAC80211_DEBUGFS (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: potential array overflow in mt7915_mcu_tx_rate_report() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix memory leak in set key (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reschedule ps work according to last activity (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: avoid scheduling runtime-pm during hw scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: sync probe sampling with rate configuration (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: improve mt7615_driver_own reliability (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add idle-timeout knob in mt7615 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable beacon hw filter for runtime-pm (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add runtime-pm knob in mt7615 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not request {driver, fw}_own if already granted (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: check MT76_STATE_PM flag before accessing the device (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_pm_wake in mt7615_mac_sta_{add, remove} (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before pushing frames in mt7615_tx (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before pulling packets from mac80211 queues (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_mcu_set_roc holding mt76 mutex (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_mcu_set_wmm holding mt76 mutex (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing lock in mt7615_regd_notifier (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before performing freq scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: acquire driver_own before configuring device for suspend (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device in mt7615_update_channel before access regmap (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce pm_power_save delayed work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before configuring hw keys (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before accessing regmap in debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mutex_{acquire, release} utilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7615_pm_wake utility routine (Jarod Wilson) [1860496] - [wireless] mt76: move mt76 workqueue in common code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: avoid polling in fw_own for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: avoid memcpy in rxv operation (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2u: enable HC-M7662BU1 (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: fix pci suspend/resume on mt7612e (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: update HE capabilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement testmode support (Jarod Wilson) [1860496] - [wireless] mt76: add API for testmode support (Jarod Wilson) [1860496] - [wireless] mt76: vif_mask to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use full on-chip memory address for WF_PHY registers (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for accessing RF registers via MCU (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for accessing mapped registers via bus ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: schedule tx tasklet and sta poll on mac tx free (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2e: rename routines in pci.c (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: overwrite qid for non-bufferable mgmt frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: use ieee80211_tx_queue_params to avoid open coded (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add MU-MIMO support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add a fixed AC queue mapping (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add .set_tsf callback (Jarod Wilson) [1860496] - [wireless] mt76: add U-APSD support on AP side (Jarod Wilson) [1860496] - [wireless] mt76: rely on register macros (Jarod Wilson) [1860496] - [wireless] mt76: fix include in pci.h (Jarod Wilson) [1860496] - [wireless] mt76: allow more channels, allowed in ETSI domain (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix up typo in Kconfig for MT7663U (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce ARP filter offload (Jarod Wilson) [1860496] - [wireless] mt76: usb: rely on mt76_for_each_q_rx (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: re-enable offloading of sequence number assignment (Jarod Wilson) [1860496] - [wireless] wireless: Fix trivial spelling (Jarod Wilson) [1860496] - [wireless] rtlwifi: 8821ae: remove unused path B parameters from swing table (Jarod Wilson) [1860496] - [wireless] rtlwifi: Use const in 8188ee/8723be/8821ae swing_table declarations (Jarod Wilson) [1860496] - [wireless] rtl818x_pci: use generic power management (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Free ieee80211_hw if probing fails (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Prevent leaking urb (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Fix deadlock (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Remove uninitialized_var() usage (Jarod Wilson) [1860496] - [wireless] orinoco_usb: fix spelling mistake (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: Fix endian issue (Jarod Wilson) [1860496] - [wireless] rtlwifi: Fix endian issue in ps.c (Jarod Wilson) [1860496] - [wireless] broadcom: fix wiki website url (Jarod Wilson) [1860496] - [wireless] wireless: fix wiki website url in main Kconfig (Jarod Wilson) [1860496] - [wireless] rtw88: coex: Fix ACL Tx pause during BT inquiry/page (Jarod Wilson) [1860496] - [wireless] mwifiex: Prevent memory corruption handling keys (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix reporting 'operation not supported' error code (Jarod Wilson) [1860496] - [wireless] mwifiex: Use macro MWIFIEX_MAX_BSS_NUM for specifying limit of interfaces (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: add new RFE type 6 (Jarod Wilson) [1860496] - [wireless] rtw88: 8822ce: add support for device ID 0xc82f (Jarod Wilson) [1860496] - [wireless] rtw88: pci: disable aspm for platform inter-op with module parameter (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: Add 8821CE to Kconfig and Makefile (Jarod Wilson) [1860496] - [wireless] rtw88: single rf path chips don't support TX STBC (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add beamformee support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add cck pd settings (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add phy calibration (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add false alarm statistics (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add query rx desc support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add set channel support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add dig related settings (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add set tx power index (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add basic functions (Jarod Wilson) [1860496] - [wireless] brcm80211: brcmsmac: Move LEDs to GPIO descriptors (Jarod Wilson) [1860496] - [wireless] brcmfmac: Transform compatible string for FW loading (Jarod Wilson) [1860496] - [wireless] brcmfmac: set pacing shift before transmitting skb to bus (Jarod Wilson) [1860496] - [wireless] brcmfmac: set state of hanger slot to FREE when flushing PSQ (Jarod Wilson) [1860496] - [wireless] brcmfmac: reset SDIO bus on a firmware crash (Jarod Wilson) [1860496] - [wireless] brcmfmac: do not disconnect for disassoc frame from unconnected AP (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix for wrong disconnection event source information (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix for unable to return to visible SSID (Jarod Wilson) [1860496] - [wireless] brcmfmac: initialize the requested dwell time (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix throughput zero stalls on PM 1 mode due to credit map (Jarod Wilson) [1860496] - [wireless] brcmfmac: update tx status flags to sync with firmware (Jarod Wilson) [1860496] - [wireless] brcmfmac: reserve 2 credits for host tx control path (Jarod Wilson) [1860496] - [wireless] brcmfmac: increase message buffer size for control packets (Jarod Wilson) [1860496] - [wireless] brcmfmac: allow credit borrowing for all access categories (Jarod Wilson) [1860496] - [wireless] brcmfmac: To fix Bss Info flag definition Bug (Jarod Wilson) [1860496] - [wireless] brcmfmac: reduce maximum station interface from 2 to 1 in RSDB mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: keep SDIO watchdog running when console_interval is non-zero (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix invalid permanent MAC address in wiphy (Jarod Wilson) [1860496] - [wireless] brcmfmac: To fix kernel crash on out of boundary access (Jarod Wilson) [1860496] - [net] net: wireless: kerneldoc fixes (Jarod Wilson) [1860496] - [net] net: mac80211: kerneldoc fixes (Jarod Wilson) [1860496] - [wireless] ath11k: fix wmi peer flags in peer assoc command (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for ring backpressure stats (Jarod Wilson) [1860496] - [wireless] ath11k: Add dp tx err stats (Jarod Wilson) [1860496] - [wireless] ath11k: removing redundant reo unlock followed by immediate lock (Jarod Wilson) [1860496] - [wireless] ath11k: add support for spectral scan (Jarod Wilson) [1860496] - [wireless] ath11k: Add direct buffer ring support (Jarod Wilson) [1860496] - [wireless] ath11k: build HE 6 GHz capability (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for 6g scan hint (Jarod Wilson) [1860496] - [wireless] ath11k: Send multiple scan_chan_list messages if required (Jarod Wilson) [1860496] - [wireless] ath11k: Add 6G scan dwell time parameter in scan request command (Jarod Wilson) [1860496] - [wireless] ath11k: set psc channel flag when sending channel list to firmware (Jarod Wilson) [1860496] - [wireless] ath11k: extend peer_assoc_cmd for 6GHz band (Jarod Wilson) [1860496] - [wireless] ath11k: Use freq instead of channel number in rx path (Jarod Wilson) [1860496] - [wireless] ath11k: add support for 6GHz radio in driver (Jarod Wilson) [1860496] - [wireless] ath11k: add 6G frequency list supported by driver (Jarod Wilson) [1860496] - [wireless] net: wireless: intel: fix wiki website url (Jarod Wilson) [1860496] - [wireless] iwlwifi: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: Remove unused inline function iwl_mvm_tid_to_ac_queue (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: fix gcc-10 zero-length-bounds warning (Jarod Wilson) [1860496] - [wireless] ath: fix wiki website url (Jarod Wilson) [1860496] - [wireless] ath10k: Acquire tx_lock in tx error paths (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove redundant assignment to variable ret (Jarod Wilson) [1860496] - [wireless] iwlwifi: fix config variable name in comment (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: Fix avg-power report (Jarod Wilson) [1860496] - [wireless] iwlwifi: Don't IWL_WARN on FW reconfiguration (Jarod Wilson) [1860496] - [wireless] iwlwifi: Extended Key ID support for mvm and dvm (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix firmware filename for sd8997 chipset (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix firmware filename for sd8977 chipset (Jarod Wilson) [1860496] - [net] mac80211: remove STA txq pending airtime underflow warning (Jarod Wilson) [1860496] - [net] mac80211: Fix bug in Tx ack status reporting in 802.3 xmit path (Jarod Wilson) [1860496] - [net] cfg80211: check vendor command doit pointer before use (Jarod Wilson) [1860496] - [net] mac80211: mesh: Free pending skb when destroying a mpath (Jarod Wilson) [1860496] - [net] mac80211: mesh: Free ie data when leaving mesh (Jarod Wilson) [1860496] - [net] mac80211: fix warning in 6 GHz IE addition in mesh mode (Jarod Wilson) [1860496] - [wireless] ath10k: Fix NULL pointer dereference in AHB device probe (Jarod Wilson) [1860496] - [wireless] iwlwifi: Make some Killer Wireless-AC 1550 cards work again (Jarod Wilson) [1860496] - [wireless] ath9k: Fix regression with Atheros 9271 (Jarod Wilson) [1860496] - [net] nl80211: fix memory leak when parsing NL80211_ATTR_HE_BSS_COLOR (Jarod Wilson) [1860496] - [net] nl80211: don't return err unconditionally in nl80211_start_ap() (Jarod Wilson) [1860496] - [net] mac80211: allow rx of mesh eapol frames with default rx key (Jarod Wilson) [1860496] - [net] mac80211: skip mpath lookup also for control port tx (Jarod Wilson) [1860496] - [net] mac80211: Fix dropping broadcast packets in 802.11 encap (Jarod Wilson) [1860496] - [net] mac80211: simplify mesh code (Jarod Wilson) [1860496] - [net] mac80211: fix control port tx status check (Jarod Wilson) [1860496] - [include] ieee80211: Add missing and new AKM suite selector definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix EEPROM buffer size (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix memory leaks in mt7663u_probe (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: do not access uninitialized NAPI structs (Jarod Wilson) [1860496] - [wireless] iwlwifi: fix crash in iwl_dbg_tlv_alloc_trigger (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: don't call iwl_mvm_free_inactive_queue() under RCU (Jarod Wilson) [1860496] - [wireless] wireless: replace '---help---' in Kconfig files with 'help' (Jarod Wilson) [1860496] - [net] net: fix wiki website url mac80211 and wireless files (Jarod Wilson) [1860496] - [uapi] include: fix wiki website url in netlink interface header (Jarod Wilson) [1860496] - [wireless] mt76: overwrite qid for non-bufferable mgmt frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix hw queue mapping (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix lmac queue debugsfs entry (Jarod Wilson) [1860496] - [wireless] mt76: add missing lock configuring coverage class (Jarod Wilson) [1860496] - [net] mac80211: initialize return flags in HE 6 GHz operation parsing (Jarod Wilson) [1860496] - [net] cfg80211: fix management registrations deadlock (Jarod Wilson) [1860496] - [net] cfg80211: support bigger kek/kck key length (Jarod Wilson) [1860496] - [net] mac80211: set short_slot for 6 GHz band (Jarod Wilson) [1860496] - [net] mac80211: Consider 6 GHz band when handling power constraint (Jarod Wilson) [1860496] - [net] mac80211: accept aggregation sessions on 6 GHz (Jarod Wilson) [1860496] - [net] cfg80211: require HE capabilities for 6 GHz band (Jarod Wilson) [1860496] - [net] cfg80211: reject HT/VHT capabilities on 6 GHz band (Jarod Wilson) [1860496] - [net] cfg80211: treat 6 GHz channels as valid regardless of capability (Jarod Wilson) [1860496] - [net] mac80211: Add HE 6GHz capabilities element to probe request (Jarod Wilson) [1860496] - [net] mac80211: use HE 6 GHz band capability and pass it to the driver (Jarod Wilson) [1860496] - [net] mac80211: check the correct bit for EMA AP (Jarod Wilson) [1860496] - [net] mac80211: determine chandef from HE 6 GHz operation (Jarod Wilson) [1860496] - [net] mac80211: avoid using ext NSS high BW if not supported (Jarod Wilson) [1860496] - [net] mac80211: do not allow HT/VHT IEs in 6 GHz mesh mode (Jarod Wilson) [1860496] - [net] mac80211: build HE operation with 6 GHz oper information (Jarod Wilson) [1860496] - [net] mac80211: add HE 6 GHz Band Capability element (Jarod Wilson) [1860496] - [net] cfg80211: add and expose HE 6 GHz band capabilities (Jarod Wilson) [1860496] - [net] mac80211: add HE 6 GHz Band Capabilities into parse extension (Jarod Wilson) [1860496] - [net] cfg80211: handle 6 GHz capability of new station (Jarod Wilson) [1860496] - [include] ieee80211: add HE ext EIDs and 6 GHz capability defines (Jarod Wilson) [1860496] - [include] ieee80211: add code to obtain and parse 6 GHz operation field (Jarod Wilson) [1860496] - [include] ieee80211: definitions for reduced neighbor reports (Jarod Wilson) [1860496] - [net] cfg80211: add a helper to identify 6 GHz PSCs (Jarod Wilson) [1860496] - [net] nl80211: really allow client-only BIGTK support (Jarod Wilson) [1860496] - [net] cfg80211: adapt to new channelization of the 6GHz band (Jarod Wilson) [1860496] - [net] cfg80211: fix 6 GHz frequencies to kHz (Jarod Wilson) [1860496] - [wireless] ath11k: clear DCM max constellation tx value (Jarod Wilson) [1860496] - [wireless] ath11k: reset trigger frame MAC padding duration (Jarod Wilson) [1860496] - [wireless] ath10k: Remove ath10k_qmi_register_service_notifier() declaration (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Set RX filter based to allow broadcast Action frame RX (Jarod Wilson) [1860496] - [wireless] ath9k: Set RX filter based to allow broadcast Action frame RX (Jarod Wilson) [1860496] - [wireless] mwifiex: Add support for NL80211_ATTR_MAX_AP_ASSOC_STA (Jarod Wilson) [1860496] - [wireless] mwifiex: Parse all API_VER_ID properties (Jarod Wilson) [1860496] - [wireless] brcmfmac: 43012 Update MES Watermark (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 43455 CRC error under SDIO 3.0 SDR104 mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: set F2 blocksize and watermark for 4354/4356 SDIO (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 4339 CRC error under SDIO 3.0 SDR104 mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: set F2 blocksize for 4373 (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: remove CCK TX setting when switch channel (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: fix missing brace warning for old compilers (Jarod Wilson) [1860496] - [wireless] rtw88: fix EAPOL 4-way failure by finish IQK earlier (Jarod Wilson) [1860496] - [wireless] rtw88: coex: 8723d: handle BT inquiry cases (Jarod Wilson) [1860496] - [wireless] rtw88: coex: 8723d: set antanna control owner (Jarod Wilson) [1860496] - [wireless] Revert "rtw88: no need to set registers for SDIO" (Jarod Wilson) [1860496] - [wireless] rt2800: enable MFP support unconditionally (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Fix Cypress SDIO IDs macros in common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from b43-sdio driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from ath10k driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from mwifiex driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Change macro names for Marvell 8688 modules (Jarod Wilson) [1860496] - [mmc] mmc: sdio: Fix macro name for Marvell device with ID 0x9134 (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 56 for AX devices (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for range request version 10 (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: fix aux station leak (Jarod Wilson) [1860496] - [wireless] iwlwifi: move txq-specific from trans_pcie to common trans (Jarod Wilson) [1860496] - [wireless] iwlwifi: move iwl_txq and substructures to a common trans header (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen3: indicate 8k/12k RB size to device (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: evaluate dsm to enable 5.2 bands in Indonesia (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: support device specific method (DSM) (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: keep trans instead of trans_pcie in iwl_txq (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: don't count on the FW to set persistence mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: set NO_HE if the regulatory domain forbids it (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: remove set but not used variable 'msta' (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Use kmemdup in mt7615_queue_key_update() (Jarod Wilson) [1860496] - [wireless] mt76: only iterate over initialized rx queues (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for MT7611N (Jarod Wilson) [1860496] - [wireless] mt76: fix wcid allocation issues (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix possible NULL pointer dereference in mt7915_register_ext_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix hw_scan with ssid_type for specified SSID only (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix a handful of spelling mistakes (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch to per-vif power_save support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix some sparse warnings (Jarod Wilson) [1860496] - [wireless] mt76: fix per-driver wcid range checks after wcid array size bump (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix decoded radiotap HE flags (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix NULL pointer deref in mt7615_register_ext_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix sparse warnings: incorrect type initializer (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix some sparse warnings (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add spatial reuse support (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: remove check in mt76x02_mcu_msg_send (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce remain_on_channel support (Jarod Wilson) [1860496] - [net] mac80211: support control port TX status reporting (Jarod Wilson) [1860496] - [net] mac80211: fix HT-Control field reception for management frames (Jarod Wilson) [1860496] - [net] cfg80211: fix CFG82011_CRDA_SUPPORT still mentioning internal regdb (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific Tx rate configuration (Jarod Wilson) [1860496] - [net] mac80211: allow SA-QUERY processing in userspace (Jarod Wilson) [1860496] - [net] nl80211: add ability to report TX status for control port TX (Jarod Wilson) [1860496] - [net] mac80211: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [net] cfg80211: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [include] mac80211: Add new AMPDU factor macro for HE peer caps (Jarod Wilson) [1860496] - [include] ieee80211: S1G defines (Jarod Wilson) [1860496] - [net] nl80211: support scan frequencies in KHz (Jarod Wilson) [1860496] - [net] nl80211: add KHz frequency offset for most wifi commands (Jarod Wilson) [1860496] - [net] cfg80211: add KHz variants of frame RX API (Jarod Wilson) [1860496] - [net] nl80211: simplify peer specific TID configuration (Jarod Wilson) [1860496] - [net] cfg80211: add support for TID specific AMSDU configuration (Jarod Wilson) [1860496] - [net] mac80211: fix variable names in TID config methods (Jarod Wilson) [1860496] - [net] cfg80211: fix mask type in cfg80211_tid_cfg structure (Jarod Wilson) [1860496] - [net] cfg80211: fix debugfs rename crash (Jarod Wilson) [1860496] - [include] ieee80211: Fix incorrect mask for default PE duration (Jarod Wilson) [1860496] - [net] mac80211: mesh: fix discovery timer re-arming issue / crash (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: Fix build error (Jarod Wilson) [1860496] - [wireless] ath11k: Fix some resource leaks in error path in 'ath11k_thermal_register()' (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192ee: remove redundant for-loop (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix memory corruption in dump_station (Jarod Wilson) [1860496] - [wireless] rtw88: no need to set registers for SDIO (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: fix incorrect setting of ldo_pwr (Jarod Wilson) [1860496] - [wireless] rtw88: rename rtw88.ko/rtwpci.ko to rtw88_core.ko/rtw88_pci.ko (Jarod Wilson) [1860496] - [wireless] rtw88: extract: remove the unused after extracting (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8723d an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8822b an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8822c an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: export symbols about pci interface (Jarod Wilson) [1860496] - [wireless] rtw88: extract: export symbols used in chip functionalities (Jarod Wilson) [1860496] - [wireless] rtlwifi: Fix a double free in _rtl_usb_tx_urb_setup() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix typo defining ps work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: configure bss info adding the interface (Jarod Wilson) [1860496] - [wireless] mt76: enable p2p support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reduce hw scan timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not report scan_complete twice to mac80211 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix the usage WoW with net detect support (Jarod Wilson) [1860496] - [wireless] ath11k: fix htt stats module not handle multiple skbs (Jarod Wilson) [1860496] - [wireless] rtl8187: Remove unused variable rtl8225z2_tx_power_ofdm (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: fix sparse warnings for power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add 8723DE to Kconfig and Makefile (Jarod Wilson) [1860496] - [wireless] rtw88: fill zeros to words 0x06 and 0x07 of security cam entry (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add coex support (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: set ltecoex register address in chip_info (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: implement flush queue (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add shutdown callback to disable BT USB suspend (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add IQ calibration (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add LC calibration (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix WPA/WPA2-PSK 4-way handshake offload and SAE offload failures (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix possible deadlock in mt7915_stop (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: allocate proper size for tlv tags (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add debugfs to track TxBF status (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add TxBF capabilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Tx beamformee support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Tx beamformer support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: introduce mt7915_get_he_phy_cap (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: usb: cancel ps work stopping the vif (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: add missing register definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: copy key pointer in mt7663u_mac_write_txwi (Jarod Wilson) [1860496] - [wireless] mt76: set runtime stream caps by mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: enable firmware module debug support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add tsf related callbacks (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: set peer Tx fixed rate through debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add .sta_statistics support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add .sta_add_debugfs support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Rx radiotap header support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add HE capabilities support for peers (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add HE bss_conf support for interfaces (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: register per-phy HE capabilities for each interface (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: implement HE per-rate tx power support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: enable Rx HE rate reporting (Jarod Wilson) [1860496] - [wireless] mt76: add mac80211 driver for MT7915 PCIe-based chipsets (Jarod Wilson) [1860496] - [wireless] mt76: add HE phy modes and hardware queue (Jarod Wilson) [1860496] - [wireless] mt76: adjust wcid size to support new 802.11ax generation (Jarod Wilson) [1860496] - [wireless] mt76: add Rx stats support for radiotap (Jarod Wilson) [1860496] - [wireless] mt76: add support for HE RX rate reporting (Jarod Wilson) [1860496] - [wireless] mt76: avoid rx reorder buffer overflow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: scan all channels if not specified (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: add support to sched scan with randomise addr (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce WoW with net detect support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix delta tx power for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix target power parsing (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix ibss mode for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: check return value of mt7615_eeprom_get_power_index (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: read tx streams from eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce beacon_loss mcu event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add gtk rekey offload support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce PM support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: introduce suspend/resume to mt7663u (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add WoW support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_set_hif_suspend mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce support for hardware beacon filter (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: free pci_vector if mt7615_pci_probe fails (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add passive mode for hw scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not mark sched_scan disabled in mt7615_scan_work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_check_offload_capability routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix ssid configuration in mt7615_mcu_hw_scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: remove duplicate error message (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix getting maximum tx power from eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: set spatial extension index (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: remove check in mt7663_load_n9 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: add the possibility to load firmware v2 (Jarod Wilson) [1860496] - [wireless] mt76: mt76x0: enable MCS 8 and MCS9 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix event report in mt7615_mcu_bss_event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add sta pointer to mt7615_mcu_add_bss_info signature (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix up BMC entry indicated to unicmd firmware (Jarod Wilson) [1860496] - [wireless] mt76: enable TDLS support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mcu bss upload before creating the sta (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: fix tx status rate index calculation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix tx status rate index calculation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not adjust MAC timings if the device is not running (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: adjust timing in mt7615_mac_set_timing to match fw/hw values (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: never use an 802.11b CF-End rate on 5GHz (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: never use an 802.11b CF-End rate on 5GHz (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use larger rx buffers if VHT is supported (Jarod Wilson) [1860496] - [wireless] mt76: fix A-MPDU density handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix sta ampdu factor for VHT (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: enable AirTimeFairness (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework mt7615_mac_sta_poll for usb code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix aid configuration in mt7615_mcu_wtbl_generic_tlv (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7615_driver_own routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix max wtbl size for 7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7615_firmware_own for mt7663e (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: parse mcu return code for unified commands (Jarod Wilson) [1860496] - [wireless] mt76: add rx queues info to mt76 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: make Kconfig entry obvious for MT7663E (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce 802.11 PS support in sta mode (Jarod Wilson) [1860496] - [wireless] mt76: remove PS_NULLFUNC_STACK capability (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: provide aid info to the mcu (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable aspm by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable scs for mt7663 driver (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663u support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move core shared code in mt7615-common module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible deadlock in mt7615_stop (Jarod Wilson) [1860496] - [wireless] mt76: remove unnecessary annotations (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable MSI by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework IRQ handling to prepare for MSI support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix DMA unmap length (Jarod Wilson) [1860496] - [wireless] mt76: mt7622: fix DMA unmap length (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: set hw scan limits only for firmware with offload support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable hw/sched scan ops for non-offload firmware (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix aggr range entry in debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible division by 0 in mt7615_mac_update_mib_stats (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for applying tx DPD calibration from EEPROM (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for applying DC offset calibration from EEPROM (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Delete an error message in mt7622_wmac_probe() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not always reset the dfs state setting the channel (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: correct the name of the rom patch (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add address parameter to mt7615_eeprom_init (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_wtbl_desc data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework wtbl key configuration (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rely on mt7622 queue scheme for mt7663u (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mac_wtbl_addr in mac.h (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce __mt7663_load_firmware routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mac_update_rate_desc routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663u support to mt7615_write_txwi (Jarod Wilson) [1860496] - [wireless] mt76: add headroom and tailroom to mt76_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove unnecessary register operations (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce rlm tlv in bss_info mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce BSS absence event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce scheduled scan support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce hw scan support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: keep Rx filters as the default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_set_channel_domain mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add ethool support to mt7663 driver (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: disable RDD commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: make scs configurable per phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: enable nf estimation (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix mt7615_mac_cca_stats_reset routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add more useful Tx mib counters (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: cleanup mib related defines and structs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable aggr_stats for both phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: modify mt7615_ampdu_stat_read for each phy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x0: pci: add mt7610 PCI ID (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2u: introduce Mercury UD13 support (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: Add support for newer versions of the XBox One wifi adapter (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: fix handling MCU timeouts during hw restart (Jarod Wilson) [1860496] - [wireless] rndis_wlan: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] mwl8k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] rndis_wlan: Remove logically dead code (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove Comparison to bool in brcmf_p2p_send_action_frame() (Jarod Wilson) [1860496] - [wireless] brcmfmac: make non-global functions static (Jarod Wilson) [1860496] - [wireless] brcmfmac: Use seq/seq_len and set iv_initialize when plumbing of rxiv in (GTK) keys (Jarod Wilson) [1860496] - [wireless] brcmfmac: use actframe_abort to cancel ongoing action frame (Jarod Wilson) [1860496] - [wireless] brcmfmac: set security after reiniting interface (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 802.1d priority to ac mapping for pcie dongles (Jarod Wilson) [1860496] - [wireless] brcmfmac: map 802.1d priority to precedence level based on AP WMM params (Jarod Wilson) [1860496] - [wireless] ath11k: convert to devm_platform_get_and_ioremap_resource (Jarod Wilson) [1860496] - [wireless] ath11k: remove redundant initialization of pointer info (Jarod Wilson) [1860496] - [wireless] ath10k: fix ath10k_pci struct layout (Jarod Wilson) [1860496] - [wireless] ath10k: fix gcc-10 zero-length-bounds warnings (Jarod Wilson) [1860496] - [wireless] ath10k: remove experimental tag from SDIO and SNOC busses in Kconfig (Jarod Wilson) [1860496] - [wireless] ath10k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath11k: Remove bus layer includes from upper layer (Jarod Wilson) [1860496] - [wireless] ath11k: Add drv private for bus opaque struct (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for multibus support (Jarod Wilson) [1860496] - [wireless] ath10k: fix __le32 warning in ath10k_wmi_tlv_op_gen_request_peer_stats_info() (Jarod Wilson) [1860496] - [wireless] ath10k: Remove msdu from idr when management pkt send fails (Jarod Wilson) [1860496] - [wireless] ath10k: Skip handling del_server during driver exit (Jarod Wilson) [1860496] - [wireless] ath11k: remove stale monitor status descriptor (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg_ini: differentiate ax210 hw with same hw type (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: skip fragmented receive buffers (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove outdated copyright print/module statement (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: don't transmit on unallocated queue (Jarod Wilson) [1860496] - [wireless] iwlwifi: tx: enable A-MSDU in low latency mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: use longer queues for 256-BA (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen2: use DMA pool for byte-count tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove some dead code (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: mark a variable __maybe_unused (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: attempt to allocate smaller queues (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: allocate much smaller byte-count table (Jarod Wilson) [1860496] - [wireless] iwlwifi: dump api version in yaml format (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: convert all AX101 devices to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove occurrences of 22000 in the FW name defines (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: convert QnJ with Hr to the device table (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove mangling for iwl_ax101_cfg_qu_hr (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove outdated comment about PCI RTPM reference (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add IML/ROM information to the assertion dumps (Jarod Wilson) [1860496] - [wireless] iwlwifi: move iwl_set_soc_latency to iwl-drv to be used by other op_modes (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: remove magic number (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: initialize iwl_dev_tx_power_cmd to zero (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: set debug descriptor to NULL outside of iwl_fw_free_dump_desc (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 55 for AX devices (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add D3 resume timepoint (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: set properly station flags in STA_HE_CTXT_CMD (Jarod Wilson) [1860496] - [wireless] iwlwifi: avoid debug max amsdu config overwriting itself (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove iwlmvm's tfd_q_hang_detect module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: stop supporting swcrypto and bt_coex_active module parameters (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for range request command version 9 (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't access TLV before verifying len (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove antenna_coupling module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: use hweight_long instead of bit manipulating (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add support for parsing SHARED_MEM_ALLOC version 4 (Jarod Wilson) [1860496] - [wireless] iwlwifi: fw api: fix PHY data 2/3 position (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: remove Comparison to bool in rf.c (Jarod Wilson) [1860496] - [wireless] mwifiex: avoid -Wstringop-overflow warning (Jarod Wilson) [1860496] - [wireless] rtlwifi: remove comparison of 0/1 to bool variable (Jarod Wilson) [1860496] - [wireless] brcmsmac: remove Comparison to bool in brcms_b_txstatus() (Jarod Wilson) [1860496] - [wireless] brcmfmac: Add P2P Action Frame retry delay to fix GAS Comeback Response failure issue (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix P2P Group Formation failure via Go-neg method (Jarod Wilson) [1860496] - [wireless] brcmfmac: support the second p2p connection (Jarod Wilson) [1860496] - [wireless] rtw88: fix an issue about leak system resources (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add interface configurations table (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Set IG register for CCK rate (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add chip_ops::false_alarm_statistics (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: some chips don't support LDPC (Jarod Wilson) [1860496] - [wireless] rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add set_channel (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add query_rx_desc (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add DIG parameter (Jarod Wilson) [1860496] - [wireless] rtlwifi: use true, false for bool variable in rtl_init_rfkill() (Jarod Wilson) [1860496] - [wireless] rtw88: Use udelay instead of usleep in atomic context (Jarod Wilson) [1860496] - [wireless] ath11k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Silence undersized packet warnings (Jarod Wilson) [1860496] - [wireless] ath6kl: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath11k: fix kernel panic by freeing the msdu received with invalid length (Jarod Wilson) [1860496] - [wireless] ath11k: Add support to reset htt peer stats (Jarod Wilson) [1860496] - [wireless] ath11k: add tx hw 802.11 encapsulation offloading support (Jarod Wilson) [1860496] - [wireless] ath11k: fix resource unavailability for htt stats after peer stats display (Jarod Wilson) [1860496] - [wireless] ath11k: use true,false for bool variables (Jarod Wilson) [1860496] - [wireless] ath10k: Add support for targets without trustzone (Jarod Wilson) [1860496] - [wireless] ath10k: Setup the msa resources before qmi init (Jarod Wilson) [1860496] - [wireless] ath10k: remove the max_sched_scan_reqs value (Jarod Wilson) [1860496] - [wireless] ath10k: Avoid override CE5 configuration for QCA99X0 chipsets (Jarod Wilson) [1860496] - [wireless] brcmfmac: no need to check return value of debugfs_create functions (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove comparison to bool in brcmf_fws_attach() (Jarod Wilson) [1860496] - [wireless] brcmfmac: add vendor ie for association responses (Jarod Wilson) [1860496] - [wireless] brcmfmac: only generate random p2p address when needed (Jarod Wilson) [1860496] - [wireless] brcmfmac: p2p cert 6.1.9-support GOUT handling p2p presence request (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove arp_hostip_clear from brcmf_netdev_stop (Jarod Wilson) [1860496] - [wireless] brcmfmac: keep apsta enabled when AP starts with MCHAN feature (Jarod Wilson) [1860496] - [wireless] rtw88: fix spelling mistake "fimrware" -> "firmware" (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: update phy parameter tables to v50 (Jarod Wilson) [1860496] - [wireless] ath11k: add DBG_MAC prints to track vdev events (Jarod Wilson) [1860496] - [wireless] ath11k: fix mgmt_tx_wmi cmd sent to FW for deleted vdev (Jarod Wilson) [1860496] - [wireless] ath11k: fix error return code in ath11k_dp_alloc() (Jarod Wilson) [1860496] - [wireless] ath10k: fix possible memory leak in ath10k_bmi_lz_data_large() (Jarod Wilson) [1860496] - [wireless] mac80211: fix memory overlap due to variable length param (Jarod Wilson) [1860496] - [net] mac80211: TX legacy rate control for Beacon frames (Jarod Wilson) [1860496] - [wireless] ath11k: use GFP_ATOMIC under spin lock (Jarod Wilson) [1860496] - [wireless] ath10k: correct tx bitrate of iw for SDIO (Jarod Wilson) [1860496] - [wireless] ath10k: add bitrate parse for peer stats info (Jarod Wilson) [1860496] - [wireless] ath10k: add rx bitrate report for SDIO (Jarod Wilson) [1860496] - [wireless] ath10k: enable firmware peer stats info for wmi tlv (Jarod Wilson) [1860496] - [wireless] ath5k: remove conversion to bool in ath5k_ani_calibration() (Jarod Wilson) [1860496] - [wireless] ath9k: add calibration timeout for AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: invalidate all calibrations at once (Jarod Wilson) [1860496] - [wireless] ath9k: interleaved NF calibration on AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: do not miss longcal on AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: remove needless NFCAL_PENDING flag setting (Jarod Wilson) [1860496] - [wireless] ath9k: fix AR9002 ADC and NF calibrations (Jarod Wilson) [1860496] - [wireless] rtw88: fix sparse warnings for download firmware routine (Jarod Wilson) [1860496] - [wireless] ath10k: add statistics of tx retries and tx failed when tx complete disable (Jarod Wilson) [1860496] - [wireless] ath10k: enable rx duration report default for wmi tlv (Jarod Wilson) [1860496] - [wireless] ath11k: fix reo flush send (Jarod Wilson) [1860496] - [wireless] iwlwifi: debug: set NPK buffer in context info (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add new structs for So devices with long latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add new structure for Qu devices with medium latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: tell firmware about required LTR delay (Jarod Wilson) [1860496] - [wireless] iwlwifi: update few product names in AX family (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add cfgs for SoCs with device ID 0x4FD0 (Jarod Wilson) [1860496] - [wireless] iwlwifi: add new cards for AX family (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: read TAS table from ACPI and send it to the FW (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove fw_monitor module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove deprecated and unused iwl_mvm_keyinfo struct (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add framework for specific phy configuration (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: move iwl_pcie_ctxt_info_alloc_dma() to user (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: support IWL_FW_INI_TIME_POINT_HOST_ALIVE_TIMEOUT time point (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add DCM flag to rate pretty-print (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen2: minor code cleanups in byte table update (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add n_window/ampdu to tx_queue debugfs (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: use seq_file for tx_queue debugfs file (Jarod Wilson) [1860496] - [wireless] iwlwifi: support version 9 of WOWLAN_GET_STATUS notification (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: support multiple dumps in legacy dump flow (Jarod Wilson) [1860496] - [wireless] iwlwifi: move API version lookup to common code (Jarod Wilson) [1860496] - [wireless] iwlwifi: nvm: use iwl_nl80211_band_from_channel_idx (Jarod Wilson) [1860496] - [net] mac80211: fix two missing documentation entries (Jarod Wilson) [1860496] - [net] cfg80211: reject channels/chandefs with KHz offset >= 1000 (Jarod Wilson) [1860496] - [net] mac80211: add freq_offset to RX status (Jarod Wilson) [1860496] - [net] mac80211: handle channel frequency offset (Jarod Wilson) [1860496] - [net] cfg80211: express channels with a KHz component (Jarod Wilson) [1860496] - [net] ieee80211: share 802.11 unit conversion helpers (Jarod Wilson) [1860496] - [net] mac80211: minstrel_ht_assign_best_tp_rates: remove redundant test (Jarod Wilson) [1860496] - [net] mac80211: Fail association when AP has no legacy rates (Jarod Wilson) [1860496] - [net] mac80211: agg-tx: add an option to defer ADDBA transmit (Jarod Wilson) [1860496] - [net] mac80211: agg-tx: refactor sending addba (Jarod Wilson) [1860496] - [net] mac80211: Skip entries with HE membership selector (Jarod Wilson) [1860496] - [net] cfg80211: Parse HE membership selector (Jarod Wilson) [1860496] - [net] mac80211: Don't destroy auth data in case of anti-clogging (Jarod Wilson) [1860496] - [net] mac80211: add twt_protected flag to the bss_conf structure (Jarod Wilson) [1860496] - [net] mac80211: implement Operating Mode Notification extended NSS support (Jarod Wilson) [1860496] - [net] mac80211: Process multicast RX registration for Action frames (Jarod Wilson) [1860496] - [net] nl80211: allow client-only BIGTK support (Jarod Wilson) [1860496] - [net] cfg80211: support multicast RX registration (Jarod Wilson) [1860496] - [net] cfg80211: change internal management frame registration API (Jarod Wilson) [1860496] - [net] mac80211: Report beacon protection failures to user space (Jarod Wilson) [1860496] - [net] cfg80211: Unprotected Beacon frame RX indication (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: remove support for fw scan api v13 (Jarod Wilson) [1860496] - [net] mac80211: fix drv_config_iface_filter() behaviour (Jarod Wilson) [1860496] - [net] mac80211: mlme: remove duplicate AID bookkeeping (Jarod Wilson) [1860496] - [wireless] ath10k: drop the TX packet which size exceed credit size for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the invalid tx/rx chainmask configuration (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: initialize mac/bb/rf basic functions (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Organize chip TX/RX FIFO (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: implement set_tx_power_index ops (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: 11N chips don't support H2C queue (Jarod Wilson) [1860496] - [wireless] rtw88: decompose while(1) loop of power sequence polling command (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add mac power-on/-off function (Jarod Wilson) [1860496] - [wireless] rtw88: no need to send additional information to legacy firmware (Jarod Wilson) [1860496] - [wireless] rtw88: add legacy firmware download for 8723D devices (Jarod Wilson) [1860496] - [wireless] ath10k: add flush tx packets for SDIO chip (Jarod Wilson) [1860496] - [wireless] ath10k: enable alt data of TX path for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: add htt TX bundle for sdio (Jarod Wilson) [1860496] - [wireless] ath11k: remove conversion to bool in ath11k_debug_fw_stats_process() (Jarod Wilson) [1860496] - [wireless] ath11k: remove conversion to bool in ath11k_dp_rxdesc_mpdu_valid() (Jarod Wilson) [1860496] - [wireless] rtw88: set power trim according to efuse PG values (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add read_efuse to recognize efuse info from map (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add new chip op efuse_grant() to control efuse access (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add cfg_ldo25 to control LDO25 (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add RF read/write ops (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add power sequence (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add beamform wrapper functions (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add basic chip capabilities (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: fix warning comparison to bool (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8821ae: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723be: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192ee: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] ath10k: hif: make send_complete_check op optional (Jarod Wilson) [1860496] - [wireless] ath10k: sdio: remove _hif_ prefix from functions not part of hif interface (Jarod Wilson) [1860496] - [wireless] ath10k: improve power save performance for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: rename ath10k_hif_swap_mailbox() to ath10k_hif_start_post() (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove leading space (Jarod Wilson) [1860496] - [wireless] brcmsmac: make brcms_c_stf_ss_update() void (Jarod Wilson) [1860496] - [wireless] brcmsmac: Add missing annotation for brcms_down() (Jarod Wilson) [1860496] - [wireless] brcmsmac: Add missing annotation for brcms_rfkill_set_hw_state() (Jarod Wilson) [1860496] - [wireless] hostap: Add missing annotations for prism2_bss_list_proc_start() and prism2_bss_list_proc_stop (Jarod Wilson) [1860496] - [wireless] rtw88: add support for set/get antennas (Jarod Wilson) [1860496] - [wireless] rtw88: make rtw_chip_ops::set_antenna return int (Jarod Wilson) [1860496] - [wireless] ath11k: Add dynamic tcl ring selection logic with retry mechanism (Jarod Wilson) [1860496] - [wireless] ath11k: cleanup reo command error code overwritten (Jarod Wilson) [1860496] - [wireless] ath10k: Fix typo in warning messages (Jarod Wilson) [1860496] - [wireless] ath11k: Fix rx_filter flags setting for per peer rx_stats (Jarod Wilson) [1860496] - [wireless] ath11k: Fix fw assert by setting proper vht cap (Jarod Wilson) [1860496] - [wireless] ath11k: Cleanup in pdev destroy and mac register during crash on recovery (Jarod Wilson) [1860496] - [wireless] brcmsmac: make brcms_c_set_mac() void (Jarod Wilson) [1860496] - [wireless] rtw88: Add delay on polling h2c command status bit (Jarod Wilson) [1860496] - [wireless] brcm80211: remove redundant pointer 'address' (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: fix spelling mistake "chang" -> "change" (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix wrong location to get firmware feature (Jarod Wilson) [1860496] - [wireless] rtw88: Make two functions static (Jarod Wilson) [1860496] - [net] cfg80211: fix kernel-doc notation (Jarod Wilson) [1860496] - [wireless] ath11k: rx path optimizations (Jarod Wilson) [1860496] - [wireless] ath11k: set IRQ_DISABLE_UNLAZY flag for DP interrupts (Jarod Wilson) [1860496] - [wireless] ath11k: Fix TWT radio count (Jarod Wilson) [1860496] - [wireless] ath11k: Modify the interrupt timer threshold (Jarod Wilson) [1860496] - [wireless] ath11k: fix duplication peer create on same radio (Jarod Wilson) [1860496] - [wireless] ath10k: change ATH10K_SDIO_BUS_REQUEST_MAX_NUM from 64 to 1024 (Jarod Wilson) [1860496] - [wireless] ath10k: disable TX complete indication of htt for sdio (Jarod Wilson) [1860496] - [wireless] ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb (Jarod Wilson) [1860496] - [wireless] ath9x: Fix stack-out-of-bounds Write in ath9k_hif_usb_rx_cb (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Write in ath9k_htc_rx_msg (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Read in ath9k_wmi_ctrl_rx (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Read in htc_connect_service (Jarod Wilson) [1860496] - [wireless] ath10k: fix kernel null pointer dereference (Jarod Wilson) [1860496] - [wireless] ath10k: enable radar detection in secondary segment (Jarod Wilson) [1860496] - [wireless] ath10k: enable VHT160 and VHT80+80 modes (Jarod Wilson) [1860496] - [wireless] ath11k: Avoid mgmt tx count underflow (Jarod Wilson) [1860496] - [wireless] ath11k: Increase the tx completion ring size (Jarod Wilson) [1860496] - [wireless] ath11k: fix error message to correctly report the command that failed (Jarod Wilson) [1860496] - [wireless] ath11k: add pktlog checksum in trace events to support pktlog (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the race condition in firmware dump work queue (Jarod Wilson) [1860496] - [wireless] ath11k: Add sta debugfs support to configure ADDBA and DELBA (Jarod Wilson) [1860496] - [wireless] ath11k: fix compiler warnings without CONFIG_THERMAL (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove newline from rs_pretty_print_rate() (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: make iwl_pcie_cmdq_reclaim static (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 53 for 22000 series (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove IWL_FW_DBG_DOMAIN macro (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: enable yoyo by default (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: support FW APIs with variable number of profiles (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't block dumping internal memory when not in SRAM mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove support for QnJ HR FPGA (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove support for QnJ Hr STEP A (Jarod Wilson) [1860496] - [wireless] iwlwifi: add trans_cfg for devices with long latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: add support for version 2 of SOC_CONFIGURATION_CMD (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for non EDCA based measurements (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove unnecessary cfg mangling for Qu C and QuZ with Jf (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert QnJ with Jf devices to new config table (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert all Qu with Jf devices to the new config table (Jarod Wilson) [1860496] - [wireless] iwlwifi: add HW step to new cfg device table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove some unused extern declarations from iwl-config.h (Jarod Wilson) [1860496] - [wireless] iwlwifi: move integrated, extra_phy and soc_latency to trans_cfg (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: enable SF also when we have HE (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove redundant iwl9560_2ac_cfg struct (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: rs-fw: fix some indentation (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: support scan req cmd ver 14 (Jarod Wilson) [1860496] - [wireless] iwlwifi: pass trans and NVM data to HE capability parsing (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: implement read_config32 (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add PCI config space region type (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add soc latency support (Jarod Wilson) [1860496] - [wireless] hostap: convert to struct proc_ops (Jarod Wilson) [1860496] - [wireless] rtw88: fix non-increase management packet sequence number (Jarod Wilson) [1860496] - [wireless] brcmfmac: add USB autosuspend feature support (Jarod Wilson) [1860496] - [wireless] brcmfmac: increase max hanger slots from 1K to 3K in fws layer (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix the incorrect return value in brcmf_inform_single_bss() (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix double freeing in the fmac usb data path (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix driver crash on USB control transfer timeout (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: Feed current txrate information for mac80211 (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: add enumeration for channel bandwidth (Jarod Wilson) [1860496] - [wireless] rtw88: add a debugfs entry to enable/disable coex mechanism (Jarod Wilson) [1860496] - [wireless] rtw88: add a debugfs entry to dump coex's info (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: Fix sparse warning: cast from restricted __le16 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing declaration in mt7615.h (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix endianness in unified command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7663e firmware struct endianness (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: config RF table path B before path A (Jarod Wilson) [1860496] - [wireless] rtw88: kick off TX packets once for higher efficiency (Jarod Wilson) [1860496] - [wireless] rtw88: pci: define a mask for TX/RX BD indexes (Jarod Wilson) [1860496] - [wireless] rtw88: associate reserved pages with each vif (Jarod Wilson) [1860496] - [wireless] rtw88: extract alloc rsvd_page and h2c skb routines (Jarod Wilson) [1860496] - [wireless] brcmfmac: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: marvell: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] hostap: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: ti: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: realtek: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] ath10k: Fill GCMP MIC length for PMF (Jarod Wilson) [1860496] - [net] mac80211: driver can remain on channel if not using chan_ctx (Jarod Wilson) [1860496] - [net] nl80211: clarify code in nl80211_del_station() (Jarod Wilson) [1860496] - [net] cfg80211: Configure PMK lifetime and reauth threshold for PMKSA entries (Jarod Wilson) [1860496] - [net] mac80211: Read rx_stats with perCPU pointers (Jarod Wilson) [1860496] - [net] mac80211: Allow deleting stations in ibss mode to reset their state (Jarod Wilson) [1860496] - [net] cfg80211: Add support for userspace to reset stations in IBSS mode (Jarod Wilson) [1860496] - [net] mac80211: consider WLAN_EID_EXT_HE_OPERATION for parsing CRC (Jarod Wilson) [1860496] - [uapi] nl80211: add PROTECTED_TWT nl80211 extended feature (Jarod Wilson) [1860496] - [net] mac80211: HE: set missing bss_conf fields in AP mode (Jarod Wilson) [1860496] - [net] nl80211: pass HE operation element to the driver (Jarod Wilson) [1860496] - [net] nl80211/cfg80211: add support for non EDCA based ranging measurement (Jarod Wilson) [1860496] - [net] mac80211: don't leave skb->next/prev pointing to stack (Jarod Wilson) [1860496] - [net] mac80211: update documentation about tx power (Jarod Wilson) [1860496] - [net] mac80211: handle no-preauth flag for control port (Jarod Wilson) [1860496] - [net] nl80211: add no pre-auth attribute and ext. feature flag for ctrl. port (Jarod Wilson) [1860496] - [net] cfg80211: fix documentation format (Jarod Wilson) [1860496] - [wireless] ath11k: Perform per-msdu rx processing (Jarod Wilson) [1860496] - [wireless] ath11k: Configure hash based reo destination ring selection (Jarod Wilson) [1860496] - [wireless] ath11k: Adding proper validation before accessing tx_stats (Jarod Wilson) [1860496] - [wireless] ath11k: dump SRNG stats during FW assert (Jarod Wilson) [1860496] - [wireless] ath11k: fill channel info from rx channel (Jarod Wilson) [1860496] - [wireless] ath11k: Supporting RX ring backpressure HTT event and stats handling (Jarod Wilson) [1860496] - [wireless] iwlwifi: move AX200 devices to the new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove trans entries from COMMON 9260 macro (Jarod Wilson) [1860496] - [wireless] iwlwifi: move shared clock entries to new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: move pu devices to new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove 9260 devices with 0x1010 and 0x1210 subsytem IDs (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert the 9260-1x1 device to use the new parameters (Jarod Wilson) [1860496] - [wireless] iwlwifi: move TH1 devices to the new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: map 9461 and 9462 using RF type and RF ID (Jarod Wilson) [1860496] - [wireless] iwlwifi: add Pu/PnJ/Th device values to differentiate them (Jarod Wilson) [1860496] - [wireless] iwlwifi: add GNSS differentiation to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: add mac/rf types and 160MHz to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: combine 9260 cfgs that only change names (Jarod Wilson) [1860496] - [wireless] iwlwifi: move the remaining 0x2526 configs to the new table (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663e support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: get rid of sta_rec_wtbl data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce set_ba uni command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add more uni mcu commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce set_bmc and st_sta for uni commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce uni cmd command types (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_init_mac_chain routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_eeprom_parse_hw_band_cap routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_{driver, firmware}_own (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_reg_map (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_register_map (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce MCU_FW_PREFIX for fw mcu commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move more mcu commands in mt7615_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework mt7615_mcu_set_bss_info using skb APIs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rely on skb API for mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mcu_set_sta in mt7615_mcu_ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mcu_set_bmc to mt7615_mcu_ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7615_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_send_message routine (Jarod Wilson) [1860496] - [wireless] mt76: always init to 0 mcu messages (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_init_device routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: cleanup fw queue just for mmio devices (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_wait_response (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_fill_msg (Jarod Wilson) [1860496] - [wireless] mt76: remove variable 'val' set but not used (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove a stray if statement (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: reset MCU timeout counter earlier in watchdog reset (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix monitor injection of beacon frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: make dynamic sensitivity adjustment configurable via debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: add upper limit for dynamic sensitivity minimum receive power (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix antenna mask initialization in DBDC mode (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rely only on data buffer for usb control messagges (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: fix a possible memory leak in mt76u_init (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: loop over all possible rx queues in mt76u_rx_tasklet (Jarod Wilson) [1860496] - [wireless] ath11k: add handling for BSS color (Jarod Wilson) [1860496] - [wireless] ath11k: add WMI calls required for handling BSS color (Jarod Wilson) [1860496] - [wireless] ath11k: set queue_len to 4096 (Jarod Wilson) [1860496] - [wireless] ath11k: enable PN offload (Jarod Wilson) [1860496] - [wireless] ath11k: handle RX fragments (Jarod Wilson) [1860496] - [wireless] rtw88: remove unused member of struct rtw_hal (Jarod Wilson) [1860496] - [wireless] ath5k: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1860496] - [wireless] ath11k: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1860496] - [wireless] ath10k: allow qca988x family to support ack rssi of tx data packets (Jarod Wilson) [1860496] - [wireless] ath5k: Add proper dependency for ATH5K_AHB (Jarod Wilson) [1860496] - [wireless] ath11k: add thermal sensor device support (Jarod Wilson) [1860496] - [wireless] ath11k: add thermal cooling device support (Jarod Wilson) [1860496] - [wireless] ath10k: fix not registering airtime of 11a station with WMM disable (Jarod Wilson) [1860496] - [wireless] ath11k: config reorder queue for all tids during peer setup (Jarod Wilson) [1860496] - [wireless] ath10k: fix unsupported chip reset debugs file write (Jarod Wilson) [1860496] - [wireless] ath10k: use kzalloc to read for ath10k_sdio_hif_diag_read (Jarod Wilson) [1860496] - [wireless] ath10k: start recovery process when read int status fail for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: add QCA9377 sdio hw_param item (Jarod Wilson) [1860496] - [wireless] ath10k: avoid consecutive OTP download to reduce boot time (Jarod Wilson) [1860496] - [net] mac80211: Add api to support configuring TID specific configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific RTSCTS configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific AMPDU configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific retry configuration (Jarod Wilson) [1860496] - [net] nl80211: modify TID-config API (Jarod Wilson) [1860496] - [net] nl80211: Add NL command to support TID speicific configurations (Jarod Wilson) [1860496] - [net] mac80211: Beacon protection using the new BIGTK (STA) (Jarod Wilson) [1860496] - [net] mac80211: Beacon protection using the new BIGTK (AP) (Jarod Wilson) [1860496] - [net] mac80211: Update BIP to support Beacon frames (Jarod Wilson) [1860496] - [net] mac80211: Support BIGTK configuration for Beacon protection (Jarod Wilson) [1860496] - [net] cfg80211: Support key configuration for Beacon protection (BIGTK) (Jarod Wilson) [1860496] - [net] cfg80211: More error messages for key addition failures (Jarod Wilson) [1860496] - [net] cfg80211: fix indentation errors (Jarod Wilson) [1860496] - [net] cfg80211: merge documentations of field "dev" (Jarod Wilson) [1860496] - [net] cfg80211: merge documentations of field "debugfsdir" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "reg_notifier" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "perm_addr" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "_net" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "registered" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "privid" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "probe_resp_offload" (Jarod Wilson) [1860496] - [net] Revert "nl80211: add src and dst addr attributes for control port tx/rx" (Jarod Wilson) [1860496] - [net] Revert "mac80211: support NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_MAC_ADDRS" (Jarod Wilson) [1860496] - [net] cfg80211: remove support for adjacent channel compensation (Jarod Wilson) [1860496] - [net] mac80211: check vif pointer before airtime calculation (Jarod Wilson) [1860496] - [net] cfg80211: Pass lockdep expression to RCU lists (Jarod Wilson) [1860496] - [wireless] mwifiex: change license text from MARVELL to NXP (Jarod Wilson) [1860496] - [wireless] mt76: Introduce mt76_mcu data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove rx_mask in mt7615_eeprom_parse_hw_cap (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rename stat_wq in wq (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: extend RX scatter gather number (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rely on mt76_queues_read for mt7622 (Jarod Wilson) [1860496] - [wireless] mt76: do not set HOST_BROADCAST_PS_BUFFERING for mt7615 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework rx phy index handling (Jarod Wilson) [1860496] - [wireless] mt76: fix rounding issues on converting per-chain and combined txpower (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: avoid starting the MAC too early (Jarod Wilson) [1860496] - [wireless] mt76: avoid extra RCU synchronization on station removal (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix monitor mode on second PHY (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix adding active monitor interfaces (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch mt7615_mcu_set_rx_ba to v2 format (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch mt7615_mcu_set_tx_ba to v2 format (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use new tag sta_rec_wtbl (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add starec operating flow for firmware v2 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add a helper to encapsulate sta_rec operation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: simplify mcu_set_sta flow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: simplify mcu_set_bmc flow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for testing hardware reset (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement hardware reset support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report firmware log event messages (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix and rework tx power handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add Kconfig entry for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable DBDC on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: decrease rx ring size for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement DMA support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement probing and firmware loading on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable 5 GHz on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add calibration free support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add eeprom support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add dma and tx queue initialization for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix MT_INT_TX_DONE_ALL definition for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: store N9 firmware version instead of CR4 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: split up firmware loading functions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mmio related code from pci.c to mmio.c (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add __aligned(4) to txp structs (Jarod Wilson) [1860496] - [wireless] mt76: enable Airtime Queue Limit support (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: increase dma mcu rx ring size (Jarod Wilson) [1860496] - [wireless] mt76: dma: do not write cpu_idx on rx queue reset until after refill (Jarod Wilson) [1860496] - [wireless] mt76: fix handling full tx queues in mt76_dma_tx_queue_skb_raw (Jarod Wilson) [1860496] - [wireless] mt76: set dma-done flag for flushed descriptors (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce MT_DRV_RX_DMA_HDR flag (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add endpoint to mt76u_bulk_msg signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_skb_dma_info routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: take into account different queue mapping for 7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add {read/write}_extended utility routines (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_alloc_mcu_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: resume all rx queue in mt76u_resume_rx (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add queue parameter to mt76u_rx_urb_alloc (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76u_alloc_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: stop/free all possible rx queues (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_free_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: move mcu buffer allocation in mt76x02u drivers (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add queue id parameter to mt76u_submit_rx_buffers (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: use mt76_queue as mt76u_complete_rx context (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_queue to mt76u_refill_rx signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_queue to mt76u_get_next_rx_entry signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76u_process_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: check tx_status_data pointer in mt76u_tx_tasklet (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: avoid overwrite max_tx_fragments (Jarod Wilson) [1860496] - [wireless] mt76: rely on mac80211 utility routines to compute airtime (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove leftover routine declaration (Jarod Wilson) [1860496] - [wireless] mt76: move WIPHY_FLAG_HAS_CHANNEL_SWITCH in mt76_phy_init (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix endianness in mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: initialize radar specs from host driver (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: get rid of leftover target (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add tracing support (Jarod Wilson) [1860496] - [wireless] mt76: move mac_txdone tracepoint in mt76 module (Jarod Wilson) [1860496] - [wireless] mt76: move dev_irq tracepoint in mt76 module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add a get_stats() callback (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add per-phy mib statistics (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report TSF information (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add set_antenna callback (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework set_channel function (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing settings for simultaneous dual-band support (Jarod Wilson) [1860496] - [wireless] mt76: fix compilation warning in mt76_eeprom_override() (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: simplify led reg definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: simplify led reg definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce LED support (Jarod Wilson) [1860496] - [wireless] mt76: clear skb pointers from rx aggregation reorder buffer during cleanup (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: fix input validation issues for powersave-filtered frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: increase MCU command timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: measure channel noise and report it via survey (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix MT7615_CFEND_RATE_DEFAULT value (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: minor mt76x02_mac_set_beacon optimization (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: do not set NULL beacons (Jarod Wilson) [1860496] - [wireless] mt76: usb: use max packet length for m76u_copy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: add channel switch support for usb interfaces (Jarod Wilson) [1860496] - [wireless] mt76: speed up usb bulk copy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: remove a copy call for usb speedup (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: add check for invalid vif idx (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: split beaconing (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: omit beacon slot clearing (Jarod Wilson) [1860496] - [wireless] mt76: use AC specific reorder timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add set_coverage class support (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: set 0 as min coverage_class value (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report firmware version using ethtool (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Fix build with older compilers (Jarod Wilson) [1860496] - [wireless] mt76: eeprom: add support for big endian eeprom partition (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: reset STA_CCA counter setting the channel (Jarod Wilson) [1860496] - [wireless] mt76: fix possible undetected invalid MAC address (Jarod Wilson) [1860496] - [wireless] mt76: disable bh in mt76_dma_rx_poll (Jarod Wilson) [1860496] - [wireless] mt76: fix rx dma ring descriptor state on reset (Jarod Wilson) [1860496] - [wireless] mt7615: replace sta_state callback with sta_add/sta_remove (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: defer mcu initialization via workqueue (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: update beacon contents on BSS_CHANGED_BEACON (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for registering a second wiphy via debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: select the correct tx queue for frames sent to the second phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move radio/mac initialization to .start/stop callbacks (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: initialize dbdc settings on interface add (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support to the rx path (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework chainmask handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support to the dfs support code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove useless MT_HW_RDD0/1 enum (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing register init for dual-wiphy support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support for smart carrier sense (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add dual-phy support for mac80211 ops (Jarod Wilson) [1860496] - [wireless] mt76: do not overwrite max_tx_fragments if it has been set (Jarod Wilson) [1860496] - [wireless] mt76: move ampdu_ref from mt76_dev to driver struct (Jarod Wilson) [1860496] - [wireless] mt76: add ext_phy field to struct mt76_wcid (Jarod Wilson) [1860496] - [wireless] mt76: add function for allocating an extra wiphy (Jarod Wilson) [1860496] - [wireless] mt76: add priv pointer to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: add multiple wiphy support to mt76_get_min_avg_rssi (Jarod Wilson) [1860496] - [wireless] mt76: move txpower and antenna mask to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: move txpower_conf back to driver specific structs (Jarod Wilson) [1860496] - [wireless] mt76: move chainmask back to driver specific structs (Jarod Wilson) [1860496] - [wireless] mt76: move state from struct mt76_dev to mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: keep a set of software tx queues per phy (Jarod Wilson) [1860496] - [wireless] mt76: move channel state to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in mt76_sta_state() (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the tx status path (Jarod Wilson) [1860496] - [net] mac80211: allow setting queue_len for drivers not using wake_tx_queue (Jarod Wilson) [1860496] - [include] ieee80211: add WPA3 OWE AKM suite selector (Jarod Wilson) [1860496] - [wireless] mac80211: Fix setting txpower to zero (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the main tx path (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the rx path (Jarod Wilson) [1860496] - [wireless] mt76: introduce struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: move initialization of some struct members to mt76_alloc_device (Jarod Wilson) [1860496] - [wireless] rtw88: Fix incorrect beamformee role setting (Jarod Wilson) [1860496] - [wireless] rtw88: 8822: Make tables const, reduce data object size (Jarod Wilson) [1860496] - [wireless] rtw88: disable TX-AMSDU on 2.4G band (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: modify rf protection setting (Jarod Wilson) [1860496] - [wireless] rtw88: Use secondary channel offset enumeration (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: update power sequence to v16 (Jarod Wilson) [1860496] - [wireless] rtw88: add ciphers to suppress error message (Jarod Wilson) [1860496] - [wireless] rtw88: avoid holding mutex for cancel_delayed_work_sync() (Jarod Wilson) [1860496] - [wireless] rtw88: move rtw_enter_ips() to the last when config (Jarod Wilson) [1860496] - [wireless] rtw88: pci: 8822c should set clock delay to zero (Jarod Wilson) [1860496] - [wireless] rtw88: add rtw_read8_mask and rtw_read16_mask (Jarod Wilson) [1860496] - [wireless] rtw88: remove unused parameter vif in rtw_lps_pg_info_get() (Jarod Wilson) [1860496] - [wireless] brcmfmac: add the BRCM 4364 found in MacBook Pro 15, 2 (Jarod Wilson) [1860496] - [wireless] ath11k: fix incorrect peer stats counters update (Jarod Wilson) [1860496] - [wireless] ath11k: Fixing dangling pointer issue upon peer delete failure (Jarod Wilson) [1860496] - [wireless] ath11k: fix parsing PPDU_CTRL type in pktlog (Jarod Wilson) [1860496] - [wireless] ath11k: fix warn-on in disassociation (Jarod Wilson) [1860496] - [wireless] ath11k: fix rcu lock protect in peer assoc confirmation (Jarod Wilson) [1860496] - [wireless] ath11k: add HE rate accounting to driver (Jarod Wilson) [1860496] - [wireless] ath11k: drop tx_info from ath11k_sta (Jarod Wilson) [1860496] - [wireless] ath10k: Add support to read btcoex related data from DT (Jarod Wilson) [1860496] - [wireless] ath10k: fix few checkpatch warnings (Jarod Wilson) [1860496] - [net] mac80211: support NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_MAC_ADDRS (Jarod Wilson) [1860496] - [net] nl80211: add src and dst addr attributes for control port tx/rx (Jarod Wilson) [1860496] - [net] mac80211: parse also the RSNXE IE (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: Allow user space to register for station Rx authentication (Jarod Wilson) [1860496] - [include] ieee80211: fix 'the' doubling in comments (Jarod Wilson) [1860496] - [net] mac80211: Remove support for changing AP SMPS mode (Jarod Wilson) [1860496] - [net] mac80211: Handle SMPS mode changes only in AP mode (Jarod Wilson) [1860496] - [net] mac80211: Accept broadcast probe responses on 6GHz band (Jarod Wilson) [1860496] - [net] mac80211: HE: set RX NSS (Jarod Wilson) [1860496] - [net] mac80211: set station bandwidth from HE capability (Jarod Wilson) [1860496] - [net] mac80211: remove supported channels element in 6 GHz if ECSA support (Jarod Wilson) [1860496] - [net] mac80211: update condition for HE disablement (Jarod Wilson) [1860496] - [net] mac80211: make ieee80211_wep_init() return void (Jarod Wilson) [1860496] - [net] mac80211: allow changing TX-related netdev features (Jarod Wilson) [1860496] - [net] mac80211: check whether HE connection is allowed by the reg domain (Jarod Wilson) [1860496] - [net] mac80211: refactor extended element parsing (Jarod Wilson) [1860496] - [net] mac80211: simplify and improve HT/VHT/HE disable code (Jarod Wilson) [1860496] - [net] cfg80211: Enhance the AKM advertizement to support per interface (Jarod Wilson) [1860496] - [net] cfg80211: add no HE indication to the channel flag (Jarod Wilson) [1860496] - [net] mac80211: fix 11w when using encapsulation offloading (Jarod Wilson) [1860496] - [net] mac80211: fix tx status for no ack cases (Jarod Wilson) [1860496] - [net] mac80211: add handling for BSS color (Jarod Wilson) [1860496] - [net] nl80211: add handling for BSS color (Jarod Wilson) [1860496] - [net] mac80211: debugfs: improve airtime_flags handler readability (Jarod Wilson) [1860496] - [net] mac80211: Remove redundant assertion (Jarod Wilson) [1860496] - [net] mac80211: add 802.11 encapsulation offloading support (Jarod Wilson) [1860496] - [net] mac80211: Always show airtime debugfs file when TXQs are enabled (Jarod Wilson) [1860496] - [include] trivial: mac80211: fix indentation (Jarod Wilson) [1860496]- [fs] xfs: force writes to delalloc regions to unwritten (Carlos Maiolino) [1696580] - [fs] xfs: refactor xfs_iomap_prealloc_size (Carlos Maiolino) [1696580] - [fs] xfs: measure all contiguous previous extents for prealloc size (Carlos Maiolino) [1696580] - [fs] xfs: don't fail unwritten extent conversion on writeback due to edquot (Carlos Maiolino) [1696580] - [trace] SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Dave Wysochanski) [1906309] - [trace] Revert "SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow()" (Dave Wysochanski) [1906309] - [uapi] uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT (Eric Sandeen) [1905205] - [trace] SUNRPC: Fix oops in the rpc_xdr_buf event class (Scott Mayhew) [1900157] - [fs] NFS: Fix listxattr receive buffer size (Scott Mayhew) [1900157] - [trace] SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Scott Mayhew) [1900157] - [net] SUNRPC: fix copying of multiple pages in gss_read_proxy_verf() (Scott Mayhew) [1900157] - [net] svcrdma: fix bounce buffers for unaligned offsets and multiple pages (Scott Mayhew) [1900157] - [pci] hv: Document missing hv_pci_protocol_negotiation() parameter (Mohammed Gamal) [1886102] - [pci] hv: Make some functions static (Mohammed Gamal) [1886102] - [pci] hv: Use struct_size() helper (Mohammed Gamal) [1886102] - [pci] hv: Prepare hv_compose_msi_msg() for the VMBus-channel-interrupt-to-vCPU reassignment functionality (Mohammed Gamal) [1886102] - [fs] xfs: allow individual quota grace period extension (Bill O'Donnell) [1827913] - [fs] xfs: per-type quota timers and warn limits (Bill O'Donnell) [1827913] - [fs] xfs: switch xfs_get_defquota to take explicit type (Bill O'Donnell) [1827913] - [fs] xfs: pass xfs_dquot to xfs_qm_adjust_dqtimers (Bill O'Donnell) [1827913] - [fs] xfs: fix up some whitespace in quota code (Bill O'Donnell) [1827913] - [fs] xfs: preserve default grace interval during quotacheck (Bill O'Donnell) [1827913] - [fs] quota: honor quota type in Q_XGETQSTATcalls (Bill O'Donnell) [1827913]- [fs] NFS: Do uncached readdir when we're seeking a cookie in an empty page cache (Dave Wysochanski) [1893882] - [fs] NFS: Reduce number of RPC calls when doing uncached readdir (Dave Wysochanski) [1893882] - [fs] NFS: Optimisations for monotonically increasing readdir cookies (Dave Wysochanski) [1893882] - [fs] NFS: Improve handling of directory verifiers (Dave Wysochanski) [1893882] - [fs] NFS: Handle NFS4ERR_NOT_SAME and NFSERR_BADCOOKIE from readdir calls (Dave Wysochanski) [1893882] - [fs] NFS: Allow the NFS generic code to pass in a verifier to readdir (Dave Wysochanski) [1893882] - [fs] NFS: Cleanup to remove nfs_readdir_descriptor_t typedef (Dave Wysochanski) [1893882] - [fs] NFS: Reduce readdir stack usage (Dave Wysochanski) [1893882] - [fs] NFS: nfs_do_filldir() does not return a value (Dave Wysochanski) [1893882] - [fs] NFS: More readdir cleanups (Dave Wysochanski) [1893882] - [fs] NFS: Support larger readdir buffers (Dave Wysochanski) [1893882] - [fs] NFS: Simplify struct nfs_cache_array_entry (Dave Wysochanski) [1893882] - [fs] NFS: Replace kmap() with kmap_atomic() in nfs_readdir_search_array() (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary kmap in nfs_readdir_xdr_to_array() (Dave Wysochanski) [1893882] - [fs] NFS: Don't discard readdir results (Dave Wysochanski) [1893882] - [fs] NFS: Clean up directory array handling (Dave Wysochanski) [1893882] - [fs] NFS: Clean up nfs_readdir_page_filler() (Dave Wysochanski) [1893882] - [fs] NFS: Clean up readdir struct nfs_cache_array (Dave Wysochanski) [1893882] - [fs] NFS: Ensure contents of struct nfs_open_dir_context are consistent (Dave Wysochanski) [1893882] - [fs] NFSv4.2: condition READDIR's mask for security label based on LSM state (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary inode lock in nfs_fsync_dir() (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary inode locking in nfs_llseek_dir() (Dave Wysochanski) [1893882] - [netdrv] net: intel: Remove in_interrupt() warnings (Ken Cox) [1838732] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838732] - [netdrv] ixgbevf: use generic power management (Ken Cox) [1838732] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838732] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838732] - [iommu] vt-d: Don't dereference iommu_device if IOMMU_API is not built (Vitaly Kuznetsov) [1887216] - [iommu] vt-d: Gracefully handle DMAR units with no supported address widths (Vitaly Kuznetsov) [1887216] - [iommu] vt-d: Skip TE disabling on quirky gfx dedicated iommu (Vitaly Kuznetsov) [1887216] - [netdrv] Revert "mark the intel igc driver as tech preview" (Corinna Vinschen) [1838742] - [netdrv] net: intel: Remove in_interrupt() warnings (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up nvm_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Reject schedules with a base_time in the future (Corinna Vinschen) [1838742] - [netdrv] igc: Export a way to read the PTP timer (Corinna Vinschen) [1838742] - [netdrv] igc: Remove reset disable flag (Corinna Vinschen) [1838742] - [netdrv] igc: Save PTP time before a reset (Corinna Vinschen) [1838742] - [netdrv] igc: Remove references to SYSTIMR register (Corinna Vinschen) [1838742] - [netdrv] igc: Expose LPI counters (Corinna Vinschen) [1838742] - [netdrv] igc: Clean RX descriptor error flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove timeout check from ptp_tx work (Corinna Vinschen) [1838742] - [netdrv] igc: Don't reschedule ptp_tx work (Corinna Vinschen) [1838742] - [netdrv] igc: Rename IGC_TSYNCTXCTL_VALID macro (Corinna Vinschen) [1838742] - [netdrv] igc: Add new device ID's (Corinna Vinschen) [1838742] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838742] - [netdrv] igc: Fix not considering the TX delay for timestamps (Corinna Vinschen) [1838742] - [netdrv] igc: Fix wrong timestamp latency numbers (Corinna Vinschen) [1838742] - [netdrv] igc: Fix PTP initialization (Corinna Vinschen) [1838742] - [netdrv] igc: Fix static checker warning (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up the hw_stats structure (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up the mac_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Remove ledctl_ fields from the mac_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Fix registers definition (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded ICTXQMTC register (Corinna Vinschen) [1838742] - [netdrv] igc: Add Receive Descriptor Minimum Threshold Count to clear HW counters (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded variable (Corinna Vinschen) [1838742] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838742] - [netdrv] igc: Remove checking media type during MAC initialization (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded check for copper media type (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor the igc_power_down_link() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove TCP segmentation TX fail counter (Corinna Vinschen) [1838742] - [netdrv] igc: Add LPI counters (Corinna Vinschen) [1838742] - [netdrv] igc: Fix Rx timestamp disabling (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ptp_set_timestamp_mode() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove UDP filter setup in PTP code (Corinna Vinschen) [1838742] - [netdrv] igc: Check __IGC_PTP_TX_IN_PROGRESS instead of ptp_tx_skb (Corinna Vinschen) [1838742] - [netdrv] igc: Remove duplicate code in Tx timestamp handling (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up Rx timestamping logic (Corinna Vinschen) [1838742] - [netdrv] igc: Add initial LTR support (Corinna Vinschen) [1838742] - [netdrv] igc: Add initial EEE support (Corinna Vinschen) [1838742] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838742] - [netdrv] igc: Fix wrong register name (Corinna Vinschen) [1838742] - [netdrv] igc: Remove Sequence Error Counter (Corinna Vinschen) [1838742] - [netdrv] igc: Add Receive Error Counter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove symbol error counter (Corinna Vinschen) [1838742] - [netdrv] igc: Fix IGC_MAX_RXNFC_RULES (Corinna Vinschen) [1838742] - [netdrv] igc: Reject NFC rules with multiple matches (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused descriptor's flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove igc_nfc_rule_exit() (Corinna Vinschen) [1838742] - [netdrv] igc: Change adapter->nfc_rule_lock to mutex (Corinna Vinschen) [1838742] - [netdrv] igc: Change return type from igc_disable_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rule validation (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules leak when driver is unloaded (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ethtool_update_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules restoration (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules with multicast addresses (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rule overwrite cases (Corinna Vinschen) [1838742] - [netdrv] igc: Fix locking issue when retrieving NFC rules (Corinna Vinschen) [1838742] - [netdrv] igc: Fix 'sw_idx' type in struct igc_nfc_rule (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ethtool_add_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Change byte order in struct igc_nfc_filter (Corinna Vinschen) [1838742] - [netdrv] igc: Align terms used in NFC support code (Corinna Vinschen) [1838742] - [netdrv] igc: Add 'igc_ethtool_' prefix to functions in igc_ethtool.c (Corinna Vinschen) [1838742] - [netdrv] igc: Early return in igc_get_ethtool_nfc_entry() (Corinna Vinschen) [1838742] - [netdrv] igc: Cleanup _get|set_rxnfc ethtool ops (Corinna Vinschen) [1838742] - [netdrv] igc: Get rid of igc_max_channels() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused field from igc_nfc_filter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove per queue good transmited counter register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove header redirection register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove obsolete circuit breaker registers (Corinna Vinschen) [1838742] - [netdrv] igc: Enable NFC rules based source MAC address (Corinna Vinschen) [1838742] - [netdrv] igc: Add support for source address filters in core (Corinna Vinschen) [1838742] - [netdrv] igc: Remove mac_table from igc_adapter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove IGC_MAC_STATE_SRC_ADDR flag (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused registers (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused IGC_ICS_DRSTA define (Corinna Vinschen) [1838742] - [netdrv] igc: Dump ETQF registers (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor ethertype filtering code (Corinna Vinschen) [1838742] - [netdrv] igc: Fix MAX_ETYPE_FILTER value (Corinna Vinschen) [1838742] - [netdrv] igc: Remove ethertype filter in PTP code (Corinna Vinschen) [1838742] - [netdrv] igc: Remove duplicated IGC_RXPBS macro (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor VLAN priority filtering code (Corinna Vinschen) [1838742] - [netdrv] igc: Return -EOPNOTSUPP when VLAN mask doesn't match (Corinna Vinschen) [1838742] - [netdrv] igc: Dump VLANPQF register (Corinna Vinschen) [1838742] - [netdrv] igc: Rename IGC_VLAPQF macro (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up obsolete NVM defines (Corinna Vinschen) [1838742] - [netdrv] igc: remove IGC_REMOVED function (Corinna Vinschen) [1838742] - [netdrv] igc: Remove PCIe Control register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded definition (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_base.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_dump.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_ptp.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_ethtool.c (Corinna Vinschen) [1838742] - [netdrv] igc: add support to eeprom, registers and link self-tests (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_main.c (Corinna Vinschen) [1838742] - [netdrv] igc: Add ECN support for TSO (Corinna Vinschen) [1838742] - [netdrv] ionic: fix mem leak in rx_empty (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: no rx flush in deinit (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: clean up sparse complaints (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: add new bad firmware error code (Jonathan Toppins) [1887516] - [netdrv] ionic: use lif ident for filter count (Jonathan Toppins) [1887516] - [netdrv] ionic: refill lif identity after fw_up (Jonathan Toppins) [1887516] - [netdrv] ionic: disable all queue napi contexts on timeout (Jonathan Toppins) [1887516] - [netdrv] ionic: check qcq ptr in ionic_qcq_disable (Jonathan Toppins) [1887516] - [netdrv] ionic: clear linkcheck bit on alloc fail (Jonathan Toppins) [1887516] - [netdrv] ionic: drain the work queue (Jonathan Toppins) [1887516] - [netdrv] ionic: contiguous memory for notifyq (Jonathan Toppins) [1887516] - [netdrv] ionic: prevent early watchdog check (Jonathan Toppins) [1887516] - [netdrv] ionic: stop watchdog timer earlier on remove (Jonathan Toppins) [1887516 1887263] - [netdrv] net: ionic: Remove WARN_ON(in_interrupt()) (Jonathan Toppins) [1887516] - [netdrv] net: ionic: Replace in_interrupt() usage (Jonathan Toppins) [1887516] - [netdrv] ionic: add DIMLIB to Kconfig (Jonathan Toppins) [1861520] - [netdrv] ionic: add devlink firmware update (Jonathan Toppins) [1861520] - [netdrv] ionic: update the fw update api (Jonathan Toppins) [1861520] - [netdrv] ionic: dynamic interrupt moderation (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up debugfs after queue swap (Jonathan Toppins) [1861520] - [netdrv] ionic: clarify boolean precedence (Jonathan Toppins) [1861520] - [netdrv] ionic: remove unused variable (Jonathan Toppins) [1861520] - [netdrv] ionic: clean adminq service routine (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up desc_info and cq_info structs (Jonathan Toppins) [1861520] - [netdrv] ionic: struct reorder for faster access (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up page handling code (Jonathan Toppins) [1861520] - [netdrv] ionic: fix txrx work accounting (Jonathan Toppins) [1861520] - [netdrv] ionic: pull reset_queues into tx_timeout handler (Jonathan Toppins) [1861520] - [netdrv] ionic: change queue count with no reset (Jonathan Toppins) [1861520] - [netdrv] ionic: change the descriptor ring length without full reset (Jonathan Toppins) [1861520] - [netdrv] ionic: change mtu without full queue rebuild (Jonathan Toppins) [1861520] - [netdrv] ionic: use index not pointer for queue tracking (Jonathan Toppins) [1861520] - [netdrv] ionic: reduce contiguous memory allocation requirement (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up unnecessary non-static functions (Jonathan Toppins) [1861520] - [netdrv] ionic: rework and simplify handling of the queue stats block (Jonathan Toppins) [1861520] - [netdrv] ionic: remove lif list concept (Jonathan Toppins) [1861520] - [netdrv] ionic: use kcalloc for new arrays (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up a couple of debug strings (Jonathan Toppins) [1861520] - [netdrv] ionic: set MTU floor at ETH_MIN_MTU (Jonathan Toppins) [1861520] - [netdrv] ionic_lif: Use devm_kcalloc() in ionic_qcq_alloc() (Jonathan Toppins) [1861520] - [netdrv] ionic: separate interrupt for Tx and Rx (Jonathan Toppins) [1861520] - [netdrv] ionic: tx separate servicing (Jonathan Toppins) [1861520] - [netdrv] ionic: use fewer firmware doorbells on rx fill (Jonathan Toppins) [1861520] - [netdrv] ionic: fix memory leak of object 'lid' (Jonathan Toppins) [1861520] - [netdrv] ionic: interface file updates (Jonathan Toppins) [1861520] - [netdrv] ionic: rearrange reset and bus-master control (Jonathan Toppins) [1861520] - [netdrv] ionic: update eid test for overflow (Jonathan Toppins) [1861520] - [netdrv] ionic: remove unused ionic_coal_hw_to_usec (Jonathan Toppins) [1861520] - [netdrv] ionic: set netdev default name (Jonathan Toppins) [1861520] - [netdrv] ionic: get MTU from lif identity (Jonathan Toppins) [1861520] - [netdrv] ionic: keep rss hash after fw update (Jonathan Toppins) [1861520] - [netdrv] ionic: update filter id after replay (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up filter locks and debug msgs (Jonathan Toppins) [1861520] - [netdrv] ionic: use offset for ethtool regs data (Jonathan Toppins) [1861520] - [md] md/raid5: Allow degraded raid6 to do rmw (Nigel Croxon) [1856838] - [md] md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 (Nigel Croxon) [1856838] - [md] raid5: don't duplicate code for different paths in handle_stripe (Nigel Croxon) [1856838] - [md] raid5-cache: hold spinlock instead of mutex in r5c_journal_mode_show (Nigel Croxon) [1856838] - [md] md: print errno in super_written (Nigel Croxon) [1856838] - [md] md/raid5: remove the redundant setting of STRIPE_HANDLE (Nigel Croxon) [1856838] - [md] md: register new md sysfs file 'uuid' read-only (Nigel Croxon) [1856838] - [md] md: fix max sectors calculation for super 1.0 (Nigel Croxon) [1856838] - [md] md/raid5: use do_div() for 64 bit divisions in raid5_sync_request (Nigel Croxon) [1856838] - [md] md/raid10: avoid deadlock on recovery (Nigel Croxon) [1856838] - [md] md-cluster: fix rmmod issue when md_cluster convert bitmap to none (Nigel Croxon) [1856838] - [md] md-cluster: fix safemode_delay value when converting to clustered bitmap (Nigel Croxon) [1856838] - [md] md/raid5: support config stripe_size by sysfs entry (Nigel Croxon) [1856838] - [md] md/raid5: set default stripe_size as 4096 (Nigel Croxon) [1856838] - [md] md/raid456: convert macro STRIPE_* to RAID5_STRIPE_* (Nigel Croxon) [1856838] - [md] raid5: remove the meaningless check in raid5_make_request (Nigel Croxon) [1856838] - [md] raid5: put the comment of clear_batch_ready to the right place (Nigel Croxon) [1856838] - [md] raid5: call clear_batch_ready before set STRIPE_ACTIVE (Nigel Croxon) [1856838] - [md] md: raid10: Fix compilation warning (Nigel Croxon) [1856838] - [md] md: raid5: Fix compilation warning (Nigel Croxon) [1856838] - [md] md: raid5-cache: Remove set but unused variable (Nigel Croxon) [1856838] - [md] md: Fix compilation warning (Nigel Croxon) [1856838] - [md] md-cluster: fix wild pointer of unlock_all_bitmaps() (Nigel Croxon) [1856838] - [md] md/raid5-cache: clear MD_SB_CHANGE_PENDING before flushing stripes (Nigel Croxon) [1856838] - [md] md: fix deadlock causing by sysfs_notify (Nigel Croxon) [1856838] - [md] md: raid0/linear: fix dereference before null check on pointer mddev (Nigel Croxon) [1856838] - [md] md/raid1: Replace zero-length array with flexible-array (Nigel Croxon) [1856838] - [md] md: add a newline when printing parameter 'start_ro' by sysfs (Nigel Croxon) [1856838] - [md] md: stop using ->queuedata (Nigel Croxon) [1856838] - [md] md/raid1: release pending accounting for an I/O only after write-behind is also finished (Nigel Croxon) [1856838] - [md] md: remove redundant memalloc scope API usage (Nigel Croxon) [1856838] - [md] raid5: update code comment of scribble_alloc() (Nigel Croxon) [1856838] - [md] raid5: remove gfp flags from scribble_alloc() (Nigel Croxon) [1856838] - [md] md: use memalloc scope APIs in mddev_suspend()/mddev_resume() (Nigel Croxon) [1856838] - [md] md: remove the extra line for ->hot_add_disk (Nigel Croxon) [1856838] - [md] md: flush md_rdev_misc_wq for HOT_ADD_DISK case (Nigel Croxon) [1856838] - [md] md: don't flush workqueue unconditionally in md_open (Nigel Croxon) [1856838] - [md] md: add new workqueue for delete rdev (Nigel Croxon) [1856838] - [md] md: add checkings before flush md_misc_wq (Nigel Croxon) [1856838] - [md] md: check arrays is suspended in mddev_detach before call quiesce operations (Nigel Croxon) [1856838]- [scsi] storvsc: Fix error return in storvsc_probe() (Cathy Avery) [1895026] - [scsi] storvsc: Support PAGE_SIZE larger than 4K (Cathy Avery) [1895026] - [kernel] hv: hyperv.h: Introduce some hvpfn helper functions (Cathy Avery) [1895026] - [scsi] storvsc: Add validation for untrusted Hyper-V values (Cathy Avery) [1895026] - [scsi] storvsc: Fix spelling mistake (Cathy Avery) [1895026] - [scsi] storvsc: Remove memset before memory freeing in storvsc_suspend() (Cathy Avery) [1895026] - [net] tipc: fix incorrect setting window for bcast link (Xin Long) [1893085] - [net] tipc: re-configure queue limit for broadcast link (Xin Long) [1893085] - [net] tipc: fix NULL pointer dereference in tipc_named_rcv (Xin Long) [1893085] - [net] tipc: Supply missing udp_media.h include file (Xin Long) [1893085] - [net] tipc: add automatic rekeying for encryption key (Xin Long) [1893085] - [net] tipc: add automatic session key exchange (Xin Long) [1893085] - [net] tipc: introduce encryption master key (Xin Long) [1893085] - [net] tipc: optimize key switching time and logic (Xin Long) [1893085] - [net] tipc: Fix memory leak in tipc_group_create_member() (Xin Long) [1893085] - [net] tipc: fix shutdown() of connection oriented socket (Xin Long) [1893085] - [net] tipc: fix a deadlock when flushing scheduled work (Xin Long) [1893085] - [net] tipc: fix shutdown() of connectionless socket (Xin Long) [1893085] - [net] tipc: fix using smp_processor_id() in preemptible (Xin Long) [1893085] - [net] tipc: fix use-after-free in tipc_bcast_get_mode (Xin Long) [1893085] - [net] tipc: call rcu_read_lock() in tipc_aead_encrypt_done() (Xin Long) [1893085] - [net] tipc: fix uninit skb->data in tipc_nl_compat_dumpit() (Xin Long) [1893085] - [net] tipc: update a binding service via broadcast (Xin Long) [1893085] - [hv] hv_balloon: do adjust_managed_page_count() when ballooning/un-ballooning (Vitaly Kuznetsov) [1894717] - [hv] hv_balloon: simplify math in alloc_balloon_pages() (Vitaly Kuznetsov) [1894717] - [md] dm integrity: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [md] dm crypt: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [crypto] crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [include] crypto: algapi - introduce the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [fs] iomap: Set all uptodate bits for an Uptodate page (Brian Foster) [1654127] - [scsi] scsi: ibmvfc: Avoid link down on FS9100 canister reboot (Desnes Augusto Nunes do Rosario) [1882613] - [scsi] scsi: ibmvfc: Use compiler attribute defines instead of __attribute__() (Desnes Augusto Nunes do Rosario) [1882613] - [arm64] arm64: Enable PCI write-combine resources under sysfs (Petr Oros) [1872943] - [scsi] scsi: mpt3sas: Bump driver version to 35.101.00.00 (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Add module parameter multipath_on_hba (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Handle vSES vphy object during HBA reset (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Add bypass_dirty_port_flag parameter (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Handling HBA vSES device (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Set valid PhysicalPort in SMPPassThrough (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Update hba_port objects after host reset (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Get sas_device objects using device's rphy (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Rename transport_del_phy_from_an_existing_port() (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Get device objects using sas_address & portID (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Update hba_port's sas_address & phy_mask (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Rearrange _scsih_mark_responding_sas_device() (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Allocate memory for hba_port objects (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Define hba_port structure (Tomas Henzl) [1888543]- [netdrv] net: phy: realtek: Modify 2.5G PHY name to RTL8226 (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: enable ALDPS to save power for RTL8211F (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: fix rtl8211e rx/tx delay config (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: add support for RTL8125B-internal PHY (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: add delay to resume path of certain internal PHY's (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: read actual speed to detect downshift (Josef Oskera) [1889854] - [netdrv] r8169: fix issue with forced threading in combination with shared interrupts (Josef Oskera) [1889854] - [netdrv] r8169: fix operation under forced interrupt threading (Josef Oskera) [1889854] - [netdrv] r8169: factor out handling rtl8169_stats (Josef Oskera) [1889854] - [netdrv] r8169: consider that PHY reset may still be in progress after applying firmware (Josef Oskera) [1889854] - [netdrv] r8169: fix data corruption issue on RTL8402 (Josef Oskera) [1889854] - [netdrv] r8169: fix handling ether_clk (Josef Oskera) [1889854] - [netdrv] r8169: fix RTL8168f/RTL8411 EPHY config (Josef Oskera) [1889854] - [netdrv] r8169: remove member irq_enabled from struct rtl8169_private (Josef Oskera) [1889854] - [netdrv] r8169: use napi_complete_done return value (Josef Oskera) [1889854] - [netdrv] r8169: allow to enable ASPM on RTL8125A (Josef Oskera) [1889854] - [netdrv] r8169: add support for RTL8125B (Josef Oskera) [1889854] - [netdrv] r8169: sync support for RTL8401 with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: merge handling of RTL8101e and RTL8100e (Josef Oskera) [1889854] - [netdrv] r8169: rename RTL8125 to RTL8125A (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_runtime_resume (Josef Oskera) [1889854] - [netdrv] r8169: remove driver-specific mutex (Josef Oskera) [1889854] - [netdrv] r8169: use RTNL to protect critical sections (Josef Oskera) [1889854] - [netdrv] r8169: add rtl8169_up (Josef Oskera) [1889854] - [netdrv] r8169: remove no longer needed checks for device being runtime-active (Josef Oskera) [1889854] - [netdrv] r8169: mark device as not present when in PCI D3 (Josef Oskera) [1889854] - [netdrv] r8169: allow setting irq coalescing if link is down (Josef Oskera) [1889854] - [netdrv] r8169: move switching optional clock on/off to pll power functions (Josef Oskera) [1889854] - [netdrv] r8169: move updating counters to rtl8169_down (Josef Oskera) [1889854] - [netdrv] r8169: move napi_disable call and rename rtl8169_hw_reset (Josef Oskera) [1889854] - [netdrv] r8169: replace synchronize_rcu with synchronize_net (Josef Oskera) [1889854] - [netdrv] r8169: improve setting WoL on runtime-resume (Josef Oskera) [1889854] - [netdrv] r8169: remove unused constant RsvdMask (Josef Oskera) [1889854] - [netdrv] r8169: add info for DASH being enabled (Josef Oskera) [1889854] - [netdrv] r8169: fix failing WoL (Josef Oskera) [1889854] - [netdrv] r8169: improve handling power management ops (Josef Oskera) [1889854] - [netdrv] r8169: make rtl8169_down central chip quiesce function (Josef Oskera) [1889854] - [netdrv] r8169: move some calls to rtl8169_hw_reset (Josef Oskera) [1889854] - [netdrv] r8169: don't reset tx ring indexes in rtl8169_tx_clear (Josef Oskera) [1889854] - [netdrv] r8169: enable WAKE_PHY as only WoL source when runtime-suspending (Josef Oskera) [1889854] - [netdrv] r8169: change driver data type (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_remove_one (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168f/RTL8411 hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168evl hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168h hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168g hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from r8168ep_ocp_read (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from r8168dp_ocp_read (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from rtl_w0w1_eri (Josef Oskera) [1889854] - [netdrv] r8169: work around an irq coalescing related tx timeout (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_mark_to_asic (Josef Oskera) [1889854] - [netdrv] r8169: make rtl_rx better readable (Josef Oskera) [1889854] - [netdrv] r8169: remove remaining call to mdiobus_unregister (Josef Oskera) [1889854] - [netdrv] r8169: don't include linux/moduleparam.h (Josef Oskera) [1889854] - [netdrv] r8169: remove not needed checks in rtl8169_set_eee (Josef Oskera) [1889854] - [netdrv] r8169: improve reset handling for chips from RTL8168g (Josef Oskera) [1889854] - [netdrv] r8169: add helper rtl_wait_txrx_fifo_empty (Josef Oskera) [1889854] - [netdrv] r8169: add helper rtl_enable_rxdvgate (Josef Oskera) [1889854] - [netdrv] r8169: add helper r8168g_wait_ll_share_fifo_ready (Josef Oskera) [1889854] - [netdrv] r8169: use fsleep in polling functions (Josef Oskera) [1889854] - [netdrv] r8169: use new helper eth_hw_addr_crc (Josef Oskera) [1889854] - [netdrv] r8169: switch from netif_xxx message functions to netdev_xxx (Josef Oskera) [1889854] - [netdrv] r8169: remove "out of memory" error message from rtl_request_firmware (Josef Oskera) [1889854] - [netdrv] r8169: simplify counter handling (Josef Oskera) [1889854] - [netdrv] r8169: remove redundant driver message when entering promiscuous mode (Josef Oskera) [1889854] - [netdrv] r8169: remove not needed parameter in rtl8169_set_magic_reg (Josef Oskera) [1889854] - [netdrv] r8169: configure PME_SIGNAL for RTL8125 too (Josef Oskera) [1889854] - [netdrv] r8169: improve max jumbo packet size definition (Josef Oskera) [1889854] - [netdrv] r8169: add check for invalid parameter combination in rtl_set_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_set_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: improve interrupt coalescing parameter handling (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_coalesce_choose_scale (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_get_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: merge scale for tx and rx irq coalescing (Josef Oskera) [1889854] - [netdrv] r8169: don't pass net_device to irq coalescing sub-functions (Josef Oskera) [1889854] - [netdrv] r8169: improve error message if no dedicated PHY driver is found (Josef Oskera) [1889854] - [netdrv] r8169: improve configuring RxConfig register (Josef Oskera) [1889854] - [netdrv] r8169: improve handling CPCMD_MASK (Josef Oskera) [1889854] - [netdrv] r8169: use devm_mdiobus_register (Josef Oskera) [1889854] - [netdrv] r8169: change wmb to smb_wmb in rtl8169_start_xmit (Josef Oskera) [1889854] - [netdrv] r8169: inline rtl8169_make_unusable_by_asic (Josef Oskera) [1889854] - [netdrv] r8169: inline rtl8169_mark_as_last_descriptor (Josef Oskera) [1889854] - [netdrv] r8169: remove PHY resume delay that is handled in the PHY driver now (Josef Oskera) [1889854] - [netdrv] r8169: add workaround for RTL8168evl TSO hw issues (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_tso_csum_v2 (Josef Oskera) [1889854] - [netdrv] r8169: use rtl8169_set_features in rtl8169_init_one (Josef Oskera) [1889854] - [netdrv] r8169: preserve VLAN setting on RTL8125 in rtl_init_rxcfg (Josef Oskera) [1889854] - [netdrv] r8169: remove NETIF_F_HIGHDMA from vlan_features (Josef Oskera) [1889854] - [netdrv] r8169: move setting OCP base to generic init code (Josef Oskera) [1889854] - [s390] sclp: provide extended sccb support (Thomas Huth) [1798484] - [s390] sclp: avoid copy of sclp_info_sccb (Thomas Huth) [1798484] - [s390] sclp: use memblock for early read cpu info (Thomas Huth) [1798484] - [include] ptp: add stub function for ptp_get_msgtype() (Ivan Vecera) [1899217] - [include] ptp: Add generic ptp message type function (Ivan Vecera) [1899217] - [net] ptp: Add generic ptp v2 header parsing function (Ivan Vecera) [1899217] - [video] hyperv_fb: Fix the cache type when mapping the VRAM (Mohammed Gamal) [1886106] - [video] hyperv_fb: include vmalloc.h (Mohammed Gamal) [1886106] - [video] hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs (Mohammed Gamal) [1886106] - [video] hyperv_fb: Fix hibernation for the deferred IO feature (Mohammed Gamal) [1886106] - [video] hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver (Mohammed Gamal) [1886106] - [uio] uio_hv_generic: add missed sysfs_remove_bin_file (Mohammed Gamal) [1886106] - [input] hyperv-keyboard: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886106] - [hid] hyperv: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886106] - [netdrv] hv_netvsc: Add validation for untrusted Hyper-V values (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Remove "unlikely" from netvsc_select_queue (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: do not use VF device if link is down (Mohammed Gamal) [1886097] - [netdrv] hyperv: dump TX indirection table to ethtool regs (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: add support for vlans in AF_PACKET mode (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Fix netvsc_start_xmit's return type (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Remove unnecessary round_up for recv_completion_cnt (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: use new helper tcp_v6_gso_csum_prep (Mohammed Gamal) [1886097] - [tools] kvm_stat: add sample systemd unit file (Thomas Huth) [1851123] - [tools] kvm_stat: Add command line switch '-L' to log to file (Thomas Huth) [1851123] - [tools] kvm_stat: add command line switch '-z' to skip zero records (Thomas Huth) [1851123] - [mm] mm/gup: Mark lock taken only after a successful retake (Chris von Recklinghausen) [1885412] - [mm] mm/filemap.c: fix a data race in filemap_fault() (Chris von Recklinghausen) [1885412] - [mm] mm: fix kthread_use_mm() vs TLB invalidate (Chris von Recklinghausen) [1885412] - [fs] kernel: set USER_DS in kthread_use_mm (Chris von Recklinghausen) [1885412] - [drm] kernel: better document the use_mm/unuse_mm API contract (Chris von Recklinghausen) [1885412] - [kernel] kernel: move use_mm/unuse_mm to kthread.c (Chris von Recklinghausen) [1885412] - [drm] drm/i915: convert get_user_pages() --> pin_user_pages() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: introduce pin_user_pages_fast_only() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: refactor and de-duplicate gup_fast() code (Chris von Recklinghausen) [1885412] - [mm] mm/gup: move __get_user_pages_fast() down a few lines in gup.c (Chris von Recklinghausen) [1885412] - [mm] gup: document and work around "COW can break either way" issue (Chris von Recklinghausen) [1885412] - [vfio] vfio: checking of validity of user vaddr in vfio_dma_rw (Chris von Recklinghausen) [1885412] - [fs] mm/userfaultfd: honor FAULT_FLAG_KILLABLE in fault path (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow to react to fatal signals (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow VM_FAULT_RETRY for multiple times (Chris von Recklinghausen) [1885412] - [mm] mm: allow VM_FAULT_RETRY for multiple times (Chris von Recklinghausen) [1885412] - [fs] mm: introduce FAULT_FLAG_INTERRUPTIBLE (Chris von Recklinghausen) [1885412] - [mm] mm: introduce FAULT_FLAG_DEFAULT (Chris von Recklinghausen) [1885412] - [fs] userfaultfd: don't retake mmap_sem to emulate NOPAGE (Chris von Recklinghausen) [1885412] - [include] mm: return faster for non-fatal signals in user mode faults (Chris von Recklinghausen) [1885412] - [mm] powerpc/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] arm64/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] x86/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] mm: introduce fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: fix __get_user_pages() on fault retry of hugetlb (Chris von Recklinghausen) [1885412] - [mm] mm/gup: rename "nonblocking" to "locked" where proper (Chris von Recklinghausen) [1885412] - [mm] mm/gup: rename nr as nr_pinned in get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: require FOLL_GET for get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/filemap.c: don't bother dropping mmap_sem for zero size readahead (Chris von Recklinghausen) [1885412] - [mm] mm/slb: export __kmalloc_track(_node)_caller (Chris von Recklinghausen) [1885412] - [mm] mm: Add vmf_insert_pfn_xxx_prot() for huge page-table entries (Chris von Recklinghausen) [1885412] - [vfio] vfio: introduce vfio_dma_rw to read/write a range of IOVAs (Chris von Recklinghausen) [1885412] - [infiniband] mm, tree-wide: rename put_user_page*() to unpin_user_page*() (Chris von Recklinghausen) [1885412] - [mm] mm/gup_benchmark: use proper FOLL_WRITE flags instead of hard-coding "1" (Chris von Recklinghausen) [1885412] - [mm] powerpc: book3s64: convert to pin_user_pages() and put_user_page() (Chris von Recklinghausen) [1885412] - [vfio] vfio, mm: pin_user_pages (FOLL_PIN) and put_user_page() conversion (Chris von Recklinghausen) [1885412] - [media] media/v4l2-core: pin_user_pages (FOLL_PIN) and put_user_page() conversion (Chris von Recklinghausen) [1885412] - [net] net/xdp: set FOLL_PIN via pin_user_pages() (Chris von Recklinghausen) [1885412] - [drm] drm/via: set FOLL_PIN via pin_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/process_vm_access: set FOLL_PIN via pin_user_pages_remote() (Chris von Recklinghausen) [1885412] - [infiniband] IB/{core, hw, umem}: set FOLL_PIN via pin_user_pages*(), fix up ODP (Chris von Recklinghausen) [1885412] - [documentation] mm/gup: introduce pin_user_pages*() and FOLL_PIN (Chris von Recklinghausen) [1885412] - [media] media/v4l2-core: set pages dirty upon releasing DMA buffers (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow FOLL_FORCE for get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [vfio] vfio: fix FOLL_LONGTERM use, simplify get_user_pages_remote() call (Chris von Recklinghausen) [1885412] - [mm] mm: fix get_user_pages_remote()'s handling of FOLL_LONGTERM (Chris von Recklinghausen) [1885412] - [mm] mm/gup: factor out duplicate code from four routines (Chris von Recklinghausen) [1885412] - [mm] mm: drop mmap_sem before calling balance_dirty_pages() in write fault (Chris von Recklinghausen) [1885412] - [vfio] vfio/type1: untag user pointers in vaddr_get_pfn (Chris von Recklinghausen) [1885412] - [mm] mm: untag user pointers in mm/gup.c (Chris von Recklinghausen) [1885412] - [drm] drivers/gpu/drm/via: convert put_page() to put_user_page*() (Chris von Recklinghausen) [1885412] - [fs] fs/io_uring.c: convert put_page() to put_user_page*() (Chris von Recklinghausen) [1885412] - [mm] mm: mark the page referenced in gup_hugepte (Chris von Recklinghausen) [1885412] - [mm] mm: switch gup_hugepte to use try_get_compound_head (Chris von Recklinghausen) [1885412] - [mm] mm: move the powerpc hugepd code to mm/gup.c (Chris von Recklinghausen) [1885412] - [mm] mm: validate get_user_pages_fast flags (Chris von Recklinghausen) [1885412] - [mm] mm: consolidate the get_user_pages* implementations (Chris von Recklinghausen) [1885412] - [mm] mm: reorder code blocks in gup.c (Chris von Recklinghausen) [1885412] - [mm] mm: rename CONFIG_HAVE_GENERIC_GUP to CONFIG_HAVE_FAST_GUP (Chris von Recklinghausen) [1885412] - [x86] mm: lift the x86_32 PAE version of gup_get_pte to common code (Chris von Recklinghausen) [1885412] - [s390] mm: simplify gup_fast_permitted (Chris von Recklinghausen) [1885412] - [mm] mm: use untagged_addr() for get_user_pages_fast addresses (Chris von Recklinghausen) [1885412] - [mm] powerpc/mm: make gup_hugepte() static (Chris von Recklinghausen) [1885412] - [mm] filemap: drop the mmap_sem for all blocking operations (Chris von Recklinghausen) [1885412] - [mm] filemap: kill page_cache_read usage in filemap_fault (Chris von Recklinghausen) [1885412] - [mm] filemap: pass vm_fault to the mmap ra helpers (Chris von Recklinghausen) [1885412] - [mm] docs/core-api/mm: fix return value descriptions in mm/ (Chris von Recklinghausen) [1885412] - [mm] docs/mm: vmalloc: re-indent kernel-doc comemnts (Chris von Recklinghausen) [1885412] - [drm] drm/via: mark expected switch fall-throughs (Chris von Recklinghausen) [1885412] - [mm] x86/mm: Break out kernel address space handling (Chris von Recklinghausen) [1885412] - [kernel] locking/rwsem: Remove reader optimistic spinning (Waiman Long) [1895046] - [kernel] locking/rwsem: Enable reader optimistic lock stealing (Waiman Long) [1895046] - [kernel] locking/rwsem: Prevent potential lock starvation (Waiman Long) [1895046] - [kernel] locking/rwsem: Pass the current atomic count to rwsem_down_read_slowpath() (Waiman Long) [1895046] - [kernel] locking/rwsem: Fold __down_{read,write}*() (Waiman Long) [1895046] - [kernel] locking/rwsem: Introduce rwsem_write_trylock() (Waiman Long) [1895046] - [kernel] locking/rwsem: Better collate rwsem_read_trylock() (Waiman Long) [1895046] - [kernel] rwsem: Implement down_read_interruptible (Waiman Long) [1895046] - [kernel] rwsem: Implement down_read_killable_nested (Waiman Long) [1895046] - [powerpc] powerpc/perf: Fix crash with is_sier_available when pmu is not set (Steve Best) [1904225] - [powerpc] kvm: ppc: book3s hv: xive: Fix vCPU id sanity check (Greg Kurz) [1902709] - [net] ip6_gre: set dev->hard_header_len when using header_ops (Antoine Tenart) [1895789] - [fs] xfs: flush new eof page on truncate to avoid post-eof corruption (Brian Foster) [1878495] - [netdrv] bonding: set dev->needed_headroom in bond_setup_by_slave() (Antoine Tenart) [1903073] - [net] netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal (Antoine Tenart) [1901026] - [infiniband] RDMA/umem: Prevent small pages from being returned by ib_umem_find_best_pgsz() (Kamal Heib) [1857605] - [infiniband] IB/hfi1: Fix error return code in hfi1_init_dd() (Kamal Heib) [1857605] - [infiniband] RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device() (Kamal Heib) [1857605] - [infiniband] RDMA/cm: Make the local_id_table xarray non-irq (Kamal Heib) [1857605] - [infiniband] IB/srpt: Fix memory leak in srpt_add_one (Kamal Heib) [1857605] - [infiniband] RDMA/bnxt_re: Set queue pair state when being queried (Kamal Heib) [1894681 1857605] - [infiniband] RDMA/rxe: Handle skb_clone() failure in rxe_recv.c (Kamal Heib) [1857605] - [infiniband] RDMA/rxe: Fix bug rejecting all multicast packets (Kamal Heib) [1857605] - [infiniband] RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt() (Kamal Heib) [1857605] - [infiniband] IB/rdmavt: Fix sizeof mismatch (Kamal Heib) [1857605] - [infiniband] RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces (Kamal Heib) [1883480 1883478 1857605] - [infiniband] RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() (Kamal Heib) [1857605] - [rdma] RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz() (Kamal Heib) [1857605] - [x86] kretprobe: Prevent triggering kretprobe from within kprobe_flush_task (Jerome Marchand) [1821265] - [netdrv] net: intel: Remove in_interrupt() warnings (Jonathan Toppins) [1891101] - [netdrv] ice: fix adding IP4 IP6 Flow Director rules (Jonathan Toppins) [1891101] - [netdrv] ice: Fix pointer cast warnings (Jonathan Toppins) [1891101] - [netdrv] ice: refactor devlink_port to be per-VSI (Jonathan Toppins) [1891101] - [netdrv] ice: add the DDP Track ID to devlink info (Jonathan Toppins) [1891101] - [netdrv] ice: Change ice_info_get_dsn to be void (Jonathan Toppins) [1891101] - [netdrv] ice: remove repeated words (Jonathan Toppins) [1891101] - [netdrv] ice: devlink: use *phD to print small buffer (Jonathan Toppins) [1891101] - [netdrv] ice: preserve NVM capabilities in safe mode (Jonathan Toppins) [1891101] - [netdrv] ice: increase maximum wait time for flash write commands (Jonathan Toppins) [1891101] - [netdrv] ice: remove unused args from ice_get_open_tunnel_port() (Jonathan Toppins) [1891101] - [netdrv] ice: fix memory leak in ice_vsi_setup (Jonathan Toppins) [1891101] - [netdrv] ice: fix memory leak if register_netdev_fails (Jonathan Toppins) [1891101] - [netdrv] ice: Fix call trace on suspend (Jonathan Toppins) [1891101] - [netdrv] ice: simplify the return expression of ice_finalize_update() (Jonathan Toppins) [1891101] - [netdrv] ice: Misc minor fixes (Jonathan Toppins) [1838737] - [netdrv] ice: adjust profile ID map locks (Jonathan Toppins) [1838737] - [netdrv] ice: update PTYPE lookup table (Jonathan Toppins) [1838737] - [netdrv] ice: Graceful error handling in HW table calloc failure (Jonathan Toppins) [1838737] - [netdrv] ice: port fix for chk_linearlize (Jonathan Toppins) [1838737] - [netdrv] ice: Allow 2 queue pairs per VF on SR-IOV initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Clear and free XLT entries on reset (Jonathan Toppins) [1838737] - [netdrv] ice: add useful statistics (Jonathan Toppins) [1838737] - [netdrv] ice: remove page_reuse statistic (Jonathan Toppins) [1838737] - [netdrv] ice: Fix RSS profile locks (Jonathan Toppins) [1838737] - [netdrv] ice: fix the vsi_id mask to be 10 bit for set_rss_lut (Jonathan Toppins) [1838737] - [netdrv] ice: rename misleading grst_delay variable (Jonathan Toppins) [1838737] - [netdrv] ice: mark PM functions as __maybe_unused (Jonathan Toppins) [1838737] - [netdrv] ice: fix unused parameter warning (Jonathan Toppins) [1838737] - [netdrv] ice: disable no longer needed workaround for FW logging (Jonathan Toppins) [1838737] - [netdrv] ice: reduce scope of variable (Jonathan Toppins) [1838737] - [netdrv] ice: cleanup VSI on probe fail (Jonathan Toppins) [1838737] - [netdrv] ice: Allow all VLANs in safe mode (Jonathan Toppins) [1838737] - [netdrv] ice: need_wakeup flag might not be set for Tx (Jonathan Toppins) [1838737] - [netdrv] ice: distribute Tx queues evenly (Jonathan Toppins) [1838737] - [netdrv] ice: Adjust scheduler default BW weight (Jonathan Toppins) [1838737] - [netdrv] ice: Add RL profile bit mask check (Jonathan Toppins) [1838737] - [netdrv] ice: fix overwriting TX/RX descriptor values when rebuilding VSI (Jonathan Toppins) [1838737] - [netdrv] ice: return correct error code from ice_aq_sw_rules (Jonathan Toppins) [1838737] - [netdrv] ice: restore VF MSI-X state during PCI reset (Jonathan Toppins) [1838737] - [netdrv] ice: fix link event handling timing (Jonathan Toppins) [1838737] - [netdrv] ice: Fix link broken after GLOBR reset (Jonathan Toppins) [1838737] - [netdrv] ice: Implement LFC workaround (Jonathan Toppins) [1838737] - [netdrv] ice: implement device flash update via devlink (Jonathan Toppins) [1838737] - [netdrv] ice: add flags indicating pending update of firmware module (Jonathan Toppins) [1838737] - [netdrv] ice: Add AdminQ commands for FW update (Jonathan Toppins) [1838737] - [netdrv] ice: Add support for unified NVM update flow capability (Jonathan Toppins) [1838737] - [netdrv] ice: add 1G SGMII PHY type (Jonathan Toppins) [1838737] - [netdrv] ice: Report AOC PHY Types as Fiber (Jonathan Toppins) [1838737] - [netdrv] ice: add AQC get link topology handle support (Jonathan Toppins) [1838737] - [netdrv] ice: Rename low_power_ctrl (Jonathan Toppins) [1838737] - [netdrv] ice: update reporting of autoneg capabilities (Jonathan Toppins) [1838737] - [netdrv] ice: add ice_aq_get_phy_caps() debug logs (Jonathan Toppins) [1838737] - [netdrv] ice: support Total Port Shutdown on devices that support it (Jonathan Toppins) [1838737] - [netdrv] ice: add link lenient and default override support (Jonathan Toppins) [1838737] - [netdrv] ice: restore PHY settings on media insertion (Jonathan Toppins) [1838737] - [netdrv] ice: move auto FEC checks into ice_cfg_phy_fec() (Jonathan Toppins) [1838737] - [netdrv] ice: refactor FC functions (Jonathan Toppins) [1838737] - [netdrv] ice: Add advanced power mgmt for WoL (Jonathan Toppins) [1838737] - [netdrv] ice: split ice_discover_caps into two functions (Jonathan Toppins) [1838737] - [netdrv] ice: split ice_parse_caps into separate functions (Jonathan Toppins) [1838737] - [netdrv] ice: refactor ice_discover_caps to avoid need to retry (Jonathan Toppins) [1838737] - [netdrv] ice: replace single-element array used for C struct hack (Jonathan Toppins) [1838737] - [netdrv] ice: avoid unnecessary single-member variable-length structs (Jonathan Toppins) [1838737] - [netdrv] ice: implement snapshot for device capabilities (Jonathan Toppins) [1838737] - [netdrv] net/intel: remove driver versions from Intel drivers (Jonathan Toppins) [1838737] - [netdrv] ice: protect ring accesses with WRITE_ONCE (Jonathan Toppins) [1838737] - [netdrv] ice: Ignore EMODE when setting PHY config (Jonathan Toppins) [1838737] - [netdrv] ice: fix aRFS after flow director delete (Jonathan Toppins) [1838737] - [netdrv] ice: Use coalesce values from q_vector 0 when increasing q_vectors (Jonathan Toppins) [1838737] - [netdrv] ice: fix PCI device serial number to be lowercase values (Jonathan Toppins) [1838737] - [netdrv] ice: fix function signature style format (Jonathan Toppins) [1838737] - [netdrv] ice: Allow VF to request reset as soon as it's initialized (Jonathan Toppins) [1838737] - [netdrv] ice: Fix inability to set channels when down (Jonathan Toppins) [1838737] - [netdrv] ice: Always clear QRXFLXP_CNTXT before writing new value (Jonathan Toppins) [1838737] - [netdrv] ice: Reset VF for all port VLAN changes from host (Jonathan Toppins) [1838737] - [netdrv] ice: Update ICE_PHY_TYPE_HIGH_MAX_INDEX value (Jonathan Toppins) [1838737] - [netdrv] ice: Increase timeout after PFR (Jonathan Toppins) [1838737] - [netdrv] ice: Fix transmit for all software offloaded VLANs (Jonathan Toppins) [1838737] - [netdrv] ice: support adding 16 unicast/multicast filter on untrusted VF (Jonathan Toppins) [1838737] - [netdrv] ice: allow host to clear administratively set VF MAC (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor VF VSI release and setup functions (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor VF reset (Jonathan Toppins) [1838737] - [netdrv] ice: remove VM/VF disable command on CORER/GLOBR reset (Jonathan Toppins) [1838737] - [netdrv] ice: Add functions to rebuild host VLAN/MAC config for a VF (Jonathan Toppins) [1838737] - [netdrv] ice: Add function to set trust mode bit on reset (Jonathan Toppins) [1838737] - [netdrv] ice: Renaming and simplification in VF init path (Jonathan Toppins) [1838737] - [netdrv] ice: Separate VF VSI initialization/creation from reset flow (Jonathan Toppins) [1838737] - [netdrv] ice: Add helper function for clearing VPGEN_VFRTRIG (Jonathan Toppins) [1838737] - [netdrv] ice: Simplify ice_sriov_configure (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor ice_ena_vf_mappings to split MSIX and queue mappings (Jonathan Toppins) [1838737] - [netdrv] ice: Declare functions static (Jonathan Toppins) [1838737] - [netdrv] ice: fix kernel BUG if register_netdev fails (Jonathan Toppins) [1838737] - [netdrv] ice: fix potential double free in probe unrolling (Jonathan Toppins) [1838737] - [netdrv] ice: cleanup VSI context initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Poll for reset completion when DDP load fails (Jonathan Toppins) [1838737] - [netdrv] ice: Check UMEM FQ size when allocating bufs (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor Rx checksum checks (Jonathan Toppins) [1838737] - [netdrv] ice: avoid undefined behavior (Jonathan Toppins) [1838737] - [netdrv] ice: Change number of XDP Tx queues to match number of Rx queues (Jonathan Toppins) [1838737] - [netdrv] ice: Add XDP Tx to VSI ring stats (Jonathan Toppins) [1838737] - [netdrv] ice: Change number of XDP TxQ to 0 when destroying rings (Jonathan Toppins) [1838737] - [netdrv] ice: Handle critical FW error during admin queue initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Don't allow VLAN stripping change when pvid set (Jonathan Toppins) [1838737] - [netdrv] ice: Add more Rx errors to netdev's rx_error counter (Jonathan Toppins) [1838737] - [netdrv] ice: Fix for memory leaks and modify ICE_FREE_CQ_BUFS (Jonathan Toppins) [1838737] - [netdrv] ice: Fix memory leak (Jonathan Toppins) [1838737] - [netdrv] ice: fix MAC write command (Jonathan Toppins) [1838737] - [netdrv] ice: set VF default LAN address (Jonathan Toppins) [1838737] - [netdrv] ice: remove unused macro (Jonathan Toppins) [1838737] - [netdrv] ice: fix signed vs unsigned comparisons (Jonathan Toppins) [1838737] - [netdrv] ice: Fix error return code in ice_add_prof() (Jonathan Toppins) [1838737] - [netdrv] ice: replace "fallthrough" comments with fallthrough reserved word (Jonathan Toppins) [1838737]- [kernel] kernel/crash: reserve more memory for fadump (Pingfan Liu) [1891043] - [powerpc] pseries: Pass MSI affinity to irq_create_mapping() (Laurent Vivier) [1702939] - [kernel] genirq/irqdomain: Add an irq_create_mapping_affinity() function (Laurent Vivier) [1702939] - [powerpc] powerpc/perf: Use regs->nip when SIAR is zero (Steve Best) [1903731] - [powerpc] powerpc/perf: Use the address from SIAR register to set cpumode flags (Steve Best) [1903731] - [powerpc] powerpc/perf: Drop the check for SIAR_VALID (Steve Best) [1903731] - [powerpc] powerpc/perf: Add new power PMU flag "PPMU_P10_DD1" for power10 DD1 (Steve Best) [1903731] - [netdrv] net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Initialize QP mutex for the debug kernels (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Allow providing extra scatter CQE QP flag (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Query PPS pin operational status before registering it (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix slab-out-of-bounds in mlx5e_rep_is_lag_netdev (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Verify Hardware supports requested ptp function on a given pin (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix a bug of using ptp channel index as pin index (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix error path of device attach (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix forward to next namespace (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-switch, Destroy TSAR after reload interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-switch, Destroy TSAR when fail to enable the mode (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix prefetch memory leak if get_prefetchable_mr fails (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Prevent prefetch from racing with implicit destruction (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use xa_lock_irq when access to SRQ table (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix usage of rcu-protected pointer (Alaa Hleihel) [1858560] - [netdrv] net/mxl5e: Verify that rpriv is not NULL (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Fix vlan or qos setting in legacy mode (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set PD pointers for the error flow unwind (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix legacy IPoIB QP initialization (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Protect from kernel crash if XRC_TGT doesn't have udata (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix integrity enabled QP creation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove ECE limitation from the RAW_PACKET QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix remote gid value in query QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Don't access ib_qp fields in internal destroy QP path (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add missed RST2INIT and INIT2INIT steps during ECE handshake (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix -Wformat warning in check_ucmd_data() (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove duplicated assignment to resp.response_length (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Fix some error pointer dereferences (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return ECE DC support (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Don't rely on FW to set zeros in ECE response (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return an error if copy_to_user fails (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Make mlx5e_dcbnl_ops static (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: reduce stack usage in qp_read_field (Alaa Hleihel) [1858560] - [netdrv] mlx5: fix xdp data_meta setup in mlx5e_fill_xdp_buff (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Support TX port affinity for VF drivers in LAG mode (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Optimize performance for IPv4/IPv6 ethertype (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Helper function to set ethertype (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use change upper event to setup representors' bond_metadata (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Slave representors sharing unique metadata for match (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Alloc and free unique metadata for match (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Add bond_metadata and its slave entries (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Offload flow rules to active lower representor (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Support tc block sharing for representors (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use netdev events to set/del egress acl forward-to-vport rule (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Introduce APIs to enable egress acl forward-to-vport rule (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Refactor eswitch ingress acl codes (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Refactor eswitch egress acl codes (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return ECE data after modify QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set ECE options during modify QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Convert modify QP to use MLX5_SET macros (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove manually crafted QP context the query call (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use direct modify QP implementation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set ECE options during QP create (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Get ECE options from FW during create QP (Alaa Hleihel) [1858560] - [include] net/mlx5: Add ability to read and write ECE options (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use IS_ERR() to check and simplify code (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Add support for RDMA TX FT headers modifying (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Move iseg access helper routines close to mlx5_core driver (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Cleanup mlx5_ifc_fte_match_set_misc2_bits (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update mlx5_ib driver name (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Calculate SQ stop room in a robust way (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Move internal timer read function to clock library (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix a bug of releasing wrong chunks on > 4K page size systems (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Dedicate fw page to the requesting function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix query_srq_cmd() function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add support for drop action in DV steering (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add support in steering default miss (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor DV create flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support in forward to namespace (Alaa Hleihel) [1858560] - [infiniband] {IB/net}/mlx5: Simplify don't trap code (Alaa Hleihel) [1858560] - [include] net/mlx5: Replace zero-length array with flexible-array (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Enhance ICOSQ WQE info fields (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Accel, Remove unnecessary header include (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use struct assignment for WQE info updates (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Take TX WQE info structures out of general EN header (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: kTLS, Do not fill edge for the DUMP WQEs in TX flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: kTLS, Fill work queue edge separately in TX flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Split TX acceleration offloads into two phases (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Update UDP fields of the SKB for GSO first (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Make TLS offload independent of wqe and pi (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Pass only eseg to IPSEC offload (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Return void from mlx5e_sq_xmit and mlx5i_sq_xmit (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Unify checks of TLS offloads (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Return bool from TLS and IPSEC offloads (Alaa Hleihel) [1858560] - [netdrv] net: remove newlines in NL_SET_ERR_MSG_MOD (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove duplicated assignment to variable rcqe_sz (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Allow only raw Ethernet QPs when RoCE isn't enabled (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Assign profile before calling stages (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Move all WR logic from qp.c to separate file (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor mlx5_post_send() to improve readability (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update mlx5_ib to use new cmd interface (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set UDP source port based on the grh.flow_label (Alaa Hleihel) [1858560 1851704] - [infiniband] RDMA/mlx5: Define RoCEv2 udp source port when set path (Alaa Hleihel) [1858560 1851704] - [infiniband] RDMA/mlx5: Set lag tx affinity according to slave (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor affinity related code (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support to get lag physical port (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Change lag mutex lock to spin lock (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Consolidate into special function all create QP calls (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove redundant destroy QP call (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Copy response to the user in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Handle udate outlen checks in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Promote RSS RAW QP flags check to higher level (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Group all create QP parameters to simplify in-kernel interfaces (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Reduce amount of duplication in QP destroy (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate to user/kernel create QP flows (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate XRC_TGT QP creation from common flow (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Globally parse DEVX UID (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete impossible inlen check (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Rely on existence of udata to separate kernel/user flows (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove second user copy in create_user_qp (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Combine copy of create QP command in RSS RAW QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Promote RSS RAW QP attribute check in higher level (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Store QP type in the vendor QP structure (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete unsupported QP types (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Unify reserving space for WQEs (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Rename ICOSQ WQE info struct and field (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fetch WQE: reuse code and enforce typing (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: XDP, Print the offending TX descriptor on error completion (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: TX, Generalise code and usage of error CQE dump (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use proper name field for the UMR key (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support for release all pages event (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Rate limit page not found error messages (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add helper function to release fw page (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove unused field in EQ (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Remove unneeded semicolon (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: IPsec, Fix coverity issue (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Process all vendor flags in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return all configured create flags through query QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Change scatter CQE flag to be set like other vendor flags (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use flags_en mechanism to mark QP created with WQE signature (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Process create QP flags in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete create QP flags obfuscation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Initial separation of RAW_PACKET QP from common flow (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove second copy from user for non RSS RAW QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Move DRIVER QP flags check into separate function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update all DRIVER QP places to use QP subtype (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Split scatter CQE configuration for DCT QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate create QP flows to be based on type (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set QP subtype immediately when it is known (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Avoid setting redundant NULL for XRC QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Prepare QP allocation for future removal (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Perform check if QP creation flow is valid (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete impossible GSI port check (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Organize QP types checks in one place (Alaa Hleihel) [1858560] - [include] net/mlx5: TX WQE Add trailer insertion field (Alaa Hleihel) [1858560] - [include] net/mlx5: Add release all pages capability bit (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Introduce TLS RX offload hardware bits (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add structure and defines for pci sync for fw update event (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add structure layout and defines for MFRL register (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Use aligned variable while allocating ICM memory (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Introduce IPsec Connect-X offload hardware bits and structures (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update transobj.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update SW steering new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update port.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update rl.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update uar.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update pd.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update pagealloc.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mr.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mcg.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update main.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update vxlan.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mpfs.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update gid.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update lag.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update fw.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update fs_core new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update FPGA to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update eswitch to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] ethernet: remove redundant memset (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update statistics to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update eq.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update ecpf.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update debugfs.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update cq.c to new cmd interface (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Update vport.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: improve some comments (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Read embedded cpu bit only once (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Handle errors from netif_set_real_num_{tx, rx}_queues (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: IPsec, Refactor SA handle creation and destruction (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: IPSec, Expose IPsec HW stat only for supporting HW (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Refactor mlx5_accel_esp_create_hw_context parameter list (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Use the correct IPsec capability function for FPGA ops (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Enable SW-defined RoCEv2 UDP source port (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Refactor HCA capability set flow (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Move QP logic to mlx5_ib (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Alphabetically sort build artifacts (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Delete not-used cmd header (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete Q counter allocations command (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove Q counter low level helper APIs (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Replace hand written QP context struct with automatic getters (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove extra indirection while storing QPN (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in the IPoIB module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in the FPGA module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in steering module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove empty QP and CQ events handlers (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code create and destroy QP calls (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Provide simplified command interfaces (Alaa Hleihel) [1858560] - [x86] kvm: x86/mmu: Fix get_mmio_spte() on CPUs supporting 5-level PT (Vitaly Kuznetsov) [1902184] - [net] netdevsim: devlink flash timeout message (Petr Oros) [1882019] - [net] devlink: collect flash notify params into a struct (Petr Oros) [1882019] - [net] devlink: add timeout information to status_notify (Petr Oros) [1882019] - [firmware] efi/esrt: Only call efi_mem_reserve() for boot services memory (Kairui Song) [1878024] - [firmware] efi: Drop type and attribute checks in efi_mem_desc_lookup() (Kairui Song) [1878024] - [fs] iomap: Fix direct I/O write consistency check (Andreas Grunbacher) [1875556] - [fs] gfs2: fix O_SYNC write handling (Andreas Grunbacher) [1871923] - [fs] gfs2: move setting current->backing_dev_info (Andreas Grunbacher) [1871923] - [fs] gfs2: Don't return NULL from gfs2_inode_lookup (Andreas Grunbacher) [1872061] - [fs] gfs2: If go_sync returns error, withdraw but skip invalidate (Robert S Peterson) [1875035] - [fs] gfs2: Close timing window with GLF_INVALIDATE_IN_PROGRESS (Robert S Peterson) [1875035] - [fs] gfs2: Fix refcount leak in gfs2_glock_poke (Robert S Peterson) [1875035] - [fs] gfs2: Add missing truncate_inode_pages_final for sd_aspace (Robert S Peterson) [1875035] - [fs] gfs2: call truncate_inode_pages_final for address space glocks (Robert S Peterson) [1875035] - [fs] gfs2: simplify the logic in gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: factor evict_linked_inode out of gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: further simplify gfs2_evict_inode with new func evict_should_delete (Robert S Peterson) [1875035] - [fs] gfs2: factor evict_unlinked_inode out of gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: rename variable error to ret in gfs2_evict_inode (Robert S Peterson) [1875035] - [net] ethtool: Add link extended state (Ivan Vecera) [1894545] - [documentation] networking: ethtool-netlink: Add link extended state (Ivan Vecera) [1894545] - [net] ethtool: fix error handling in linkstate_prepare_data() (Ivan Vecera) [1894545] - [net] ethtool: provide UAPI for PHY Signal Quality Index (SQI) (Ivan Vecera) [1894545]- [mm] mm/hugetlb: fix a race between hugetlb sysctl handlers (Julia Denham) [1886241] {CVE-2020-25285} - [kernel] audit: do not set FS_EVENT_ON_CHILD in audit marks mask (Richard Guy Briggs) [1896480] - [net] missing barriers in some of unix_sock ->addr and ->path accesses (Richard Guy Briggs) [1896480] - [kernel] audit: fix macros warnings (Richard Guy Briggs) [1896480] - [kernel] audit: trigger accompanying records when no rules present (Richard Guy Briggs) [1896480] - [kernel] audit: fix a kernel-doc markup (Richard Guy Briggs) [1896480] - [kernel] audit: Remove redundant null check (Richard Guy Briggs) [1896480] - [kernel] audit: uninitialize variable audit_sig_sid (Richard Guy Briggs) [1896480] - [kernel] audit: change unnecessary globals into statics (Richard Guy Briggs) [1896480] - [kernel] audit: report audit wait metric in audit status reply (Richard Guy Briggs) [1896480] - [security] audit: purge audit_log_string from the intra-kernel audit API (Richard Guy Briggs) [1896480] - [security] apparmor: Check buffer bounds when mapping permissions mask (Richard Guy Briggs) [1896480] - [kernel] audit: issue CWD record to accompany LSM_AUDIT_DATA_* records (Richard Guy Briggs) [1896480] - [net] audit: use the proper gfp flags in the audit_log_nfcfg() calls (Richard Guy Briggs) [1896480] - [include] audit: remove unused !CONFIG_AUDITSYSCALL __audit_inode* stubs (Richard Guy Briggs) [1896480] - [net] audit: add gfp parameter to audit_log_nfcfg (Richard Guy Briggs) [1896480] - [kernel] audit: log nftables configuration change events (Richard Guy Briggs) [1896480] - [kernel] audit: Use struct_size() helper in alloc_chunk (Richard Guy Briggs) [1896480] - [kernel] revert: 1320a4052ea1 ("audit: trigger accompanying records when no rules present") (Richard Guy Briggs) [1896480] - [include] audit: Replace zero-length array with flexible-array (Richard Guy Briggs) [1896480] - [netdrv] net: usb: lan78xx: Disable interrupts before calling generic_handle_irq() (Waiman Long) [1904213] - [mm] x86/mm/cpa: Prevent large page split when ftrace flips RW on kernel text (Waiman Long) [1904213] - [mm] x86/mm/cpa: Fix cpa_flush_array() TLB invalidation (Waiman Long) [1904213] - [net] netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist() (Ondrej Mosnacek) [1901171] - [net] netlabel: fix our progress tracking in netlbl_unlabel_staticlist() (Ondrej Mosnacek) [1901171] - [netdrv] net: ena: fix packet's addresses for rx_offset feature (Petr Oros) [1861967] - [netdrv] net: ena: handle bad request id in ena_netdev (Petr Oros) [1861967] - [netdrv] net: ena: Change WARN_ON expression in ena_del_napi_in_range() (Petr Oros) [1861967] - [netdrv] net: ena: support new LLQ acceleration mode (Petr Oros) [1861967] - [netdrv] net: ena: move llq configuration from ena_probe to ena_device_init() (Petr Oros) [1861967] - [netdrv] net: ena: enable support of rss hash key and function changes (Petr Oros) [1861967] - [netdrv] net: ena: add support for traffic mirroring (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: change ena_com_stats_admin stats to u64 (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: satisfy gcc warning (Petr Oros) [1861967] - [netdrv] net: ena: add reserved PCI device ID (Petr Oros) [1861967] - [netdrv] net: ena: avoid unnecessary rearming of interrupt vector when busy-polling (Petr Oros) [1861967] - [netdrv] net: ena: Fix using plain integer as NULL pointer in ena_init_napi_in_range (Petr Oros) [1861967] - [netdrv] ena_netdev: use generic power management (Petr Oros) [1861967] - [netdrv] net: ena: xdp: update napi budget for DROP and ABORTED (Petr Oros) [1861967] - [netdrv] net: ena: xdp: XDP_TX: fix memory leak (Petr Oros) [1861967] - [netdrv] xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame (Petr Oros) [1861967] - [netdrv] net: ena: reduce driver load time (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: minor code changes (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix spacing issues (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: code reorderings (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: remove unnecessary code (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix line break issues (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix spelling and grammar mistakes in comments (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: set queue sizes to u32 for consistency (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: rename ena_update_tx/rx_rings_intr_moderation() (Petr Oros) [1861967] - [netdrv] net: ena: simplify ena_com_update_intr_delay_resolution() (Petr Oros) [1861967] - [netdrv] net: ena: fix ena_com_comp_status_to_errno() return value (Petr Oros) [1861967] - [netdrv] net: ena: use explicit variable size for clarity (Petr Oros) [1861967] - [netdrv] net: ena: rename ena_com_free_desc to make API more uniform (Petr Oros) [1861967] - [netdrv] net: ena: add support for the rx offset feature (Petr Oros) [1861967] - [netdrv] ena: Add XDP frame size to amazon NIC driver (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: extract code to ena_indirection_table_set() (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: remove unnecessary spaces and tabs in ena_com.h macros (Petr Oros) [1861967] - [netdrv] net: ena: use SHUTDOWN as reset reason when closing interface (Petr Oros) [1861967] - [netdrv] net: ena: drop superfluous prototype (Petr Oros) [1861967] - [netdrv] net: ena: add support for reporting of packet drops (Petr Oros) [1861967] - [netdrv] net: ena: add unmask interrupts statistics to ethtool (Petr Oros) [1861967] - [netdrv] net: ena: remove code that does nothing (Petr Oros) [1861967] - [netdrv] net: ena: changes to RSS hash key allocation (Petr Oros) [1861967] - [netdrv] net: ena: change default RSS hash function to Toeplitz (Petr Oros) [1861967] - [netdrv] net: ena: allow setting the hash function without changing the key (Petr Oros) [1861967] - [netdrv] net: ena: fix error returning in ena_com_get_hash_function() (Petr Oros) [1861967] - [netdrv] net: ena: avoid unnecessary admin command when RSS function set fails (Petr Oros) [1861967] - [netdrv] net/ena: Fix build warning in ena_xdp_set() (Petr Oros) [1861967] - [netdrv] net: ena: Make some functions static (Petr Oros) [1861967] - [netdrv] net: ena: fix continuous keep-alive resets (Petr Oros) [1861967] - [netdrv] net: ena: avoid memory access violation by validating req_id properly (Petr Oros) [1861967] - [netdrv] net: ena: fix request of incorrect number of IRQ vectors (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrect setting of the number of msix vectors (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: clean up minor indentation issue (Petr Oros) [1861967] - [netdrv] net: ena: reject unsupported coalescing params (Petr Oros) [1861967] - [netdrv] net: ena: fix broken interface between ENA driver and FW (Petr Oros) [1861967] - [netdrv] net/amazon: Ensure that driver version is aligned to the linux kernel (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: remove redundant non-zero check on rc (Petr Oros) [1861967] - [netdrv] net: ena: remove set but not used variable 'hash_key' (Petr Oros) [1861967] - [netdrv] net: ena: ena-com.c: prevent NULL pointer dereference (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: use correct value for crc32 hash (Petr Oros) [1861967] - [netdrv] net: ena: make ena rxfh support ETH_RSS_HASH_NO_CHANGE (Petr Oros) [1861967] - [netdrv] net: ena: fix corruption of dev_idx_to_host_tbl (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrectly saving queue numbers when setting RSS indirection table (Petr Oros) [1861967] - [netdrv] net: ena: rss: store hash function as values and not bits (Petr Oros) [1861967] - [netdrv] net: ena: rss: fix failure to get indirection table (Petr Oros) [1861967] - [netdrv] net: ena: rss: do not allocate key when not supported (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrect default RSS key (Petr Oros) [1861967] - [netdrv] net: ena: add missing ethtool TX timestamping indication (Petr Oros) [1861967] - [netdrv] net: ena: fix uses of round_jiffies() (Petr Oros) [1861967] - [netdrv] net: ena: fix potential crash when rxfh key is NULL (Petr Oros) [1861967] - [netdrv] net: ena: remove set but not used variable 'rx_ring' (Petr Oros) [1861967] - [netdrv] net: ena: fix issues in setting interrupt moderation params in ethtool (Petr Oros) [1861967] - [netdrv] net: ena: fix default tx interrupt moderation interval (Petr Oros) [1861967] - [netdrv] net: ena: Add first_interrupt field to napi struct (Petr Oros) [1861967] - [netdrv] net: ena: Implement XDP_TX action (Petr Oros) [1861967] - [netdrv] net: ena: implement XDP drop support (Petr Oros) [1861967] - [netdrv] net: ena: fix napi handler misbehavior when the napi budget is zero (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: support set_channels callback (Petr Oros) [1861967] - [netdrv] net: ena: remove redundant print of number of queues (Petr Oros) [1861967] - [netdrv] net: ena: make ethtool -l show correct max number of queues (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: get_channels: use combined only (Petr Oros) [1861967] - [netdrv] net: ena: multiple queue creation related cleanups (Petr Oros) [1861967] - [netdrv] net: ena: change num_queues to num_io_queues for clarity and consistency (Petr Oros) [1861967] - [kernel] rcu/tree: docs: document bkvcache new members at struct kfree_rcu_cpu (Nico Pache) [1894223] - [mm] kasan: don't assume percpu shadow allocations will succeed (Nico Pache) [1894223] - [lib] kasan: update required compiler versions in documentation (Nico Pache) [1894223] - [lib] kasan: improve and simplify Kconfig.kasan (Nico Pache) [1894223] - [lib] kasan: Fix required compiler version (Nico Pache) [1894223] - [lib] kasan: Bump required compiler version (Nico Pache) [1894223] - [documentation] kasan: update documentation for generic kasan (Nico Pache) [1894223] - [mm] kasan: record and print the free track (Nico Pache) [1894223] - [mm] rcu: kasan: record and print call_rcu() call stack (Nico Pache) [1894223] - [kernel] rcu: Support reclaim for head-less object (Nico Pache) [1894223] - [kernel] rcu: Introduce 2 arg kvfree_rcu() interface (Nico Pache) [1894223] - [mm] mm/list_lru.c: Rename kvfree_rcu() to local variant (Nico Pache) [1894223] - [kernel] rcu: Rename *_kfree_callback/*_kfree_rcu_offset/kfree_call_* (Nico Pache) [1894223] - [kernel] rcu/tiny: support vmalloc in tiny-RCU (Nico Pache) [1894223] - [kernel] rcu/tree: Maintain separate array for vmalloc ptrs (Nico Pache) [1894223] - [kernel] rcu/tree: cache specified number of objects (Nico Pache) [1894223] - [kernel] rcu/tree: Use static initializer for krc.lock (Nico Pache) [1894223] - [kernel] rcu/tree: Move kfree_rcu_cpu locking/unlocking to separate functions (Nico Pache) [1894223] - [kernel] rcu/tree: Simplify KFREE_BULK_MAX_ENTR macro (Nico Pache) [1894223] - [kernel] rcu/tree: Make debug_objects logic independent of rcu_head (Nico Pache) [1894223] - [kernel] rcu/tree: Repeat the monitor if any free channel is busy (Nico Pache) [1894223] - [kernel] rcu/tree: Skip entry into the page allocator for PREEMPT_RT (Nico Pache) [1894223] - [kernel] rcu/tree: Keep kfree_rcu() awake during lock contention (Nico Pache) [1894223] - [kernel] rcu: Fix a kernel-doc warnings for "count" (Nico Pache) [1894223] - [kernel] rcu/tree: Count number of batched kfree_rcu() locklessly (Nico Pache) [1894223] - [kernel] rcu/tree: Add a shrinker to prevent OOM due to kfree_rcu() batching (Nico Pache) [1894223] - [kernel] rcuperf: Measure memory footprint during kfree_rcu() test (Nico Pache) [1894223] - [kernel] rcu: Add a trace event for kfree_rcu() use of kfree_bulk() (Nico Pache) [1894223] - [kernel] rcu: Support kfree_bulk() interface in kfree_rcu() (Nico Pache) [1894223] - [mm] kasan: fix clang compilation warning due to stack protector (Nico Pache) [1894223] - [mm] kasan: disable branch tracing for core runtime (Nico Pache) [1894223] - [mm] kasan: add missing functions declarations to kasan.h (Nico Pache) [1894223] - [mm] kasan: consistently disable debugging features (Nico Pache) [1894223] - [mm] kasan: unset panic_on_warn before calling panic() (Nico Pache) [1894223] - [mm] kasan: detect negative size in memory operation function (Nico Pache) [1894223] - [mm] kasan: No KASAN's memmove check if archs don't have it (Nico Pache) [1894223] - [mm] kasan: use apply_to_existing_page_range() for releasing vmalloc shadow (Nico Pache) [1894223] - [mm] kasan: fix crashes on access to memory mapped by vm_map_ram() (Nico Pache) [1894223] - [mm] mm/kasan/common.c: fix compile error (Nico Pache) [1894223] - [mm] kasan: support backing vmalloc space with real shadow memory (Nico Pache) [1894223] - [mm] mm/vmalloc: rework vmap_area_lock (Nico Pache) [1894223] - [mm] mm/vmalloc: remove preempt_disable/enable when doing preloading (Nico Pache) [1894223] - [mm] mm/vmalloc.c: switch to WARN_ON() and move it under unlink_va() (Nico Pache) [1894223] - [mm] mm/vmalloc.c: get rid of one single unlink_va() when merge (Nico Pache) [1894223] - [mm] mm/vmalloc.c: preload a CPU with one object for split purpose (Nico Pache) [1894223] - [mm] mm/vmalloc.c: remove "node" argument (Nico Pache) [1894223] - [mm] mm/vmalloc: modify struct vmap_area to reduce its size (Nico Pache) [1894223] - [mm] mm/vmalloc: do not keep unpurged areas in the busy tree (Nico Pache) [1894223] - [mm] mm/vmalloc.c: fix percpu free VM area search criteria (Nico Pache) [1894223] - [mm] mm/vmalloc.c: avoid bogus -Wmaybe-uninitialized warning (Nico Pache) [1894223] - [mm] mm/vmap: add DEBUG_AUGMENT_LOWEST_MATCH_CHECK macro (Nico Pache) [1894223] - [mm] mm/vmap: add DEBUG_AUGMENT_PROPAGATE_CHECK macro (Nico Pache) [1894223] - [mm] mm/vmalloc.c: keep track of free blocks for vmap allocation (Nico Pache) [1894223] - [mm] mm/vmalloc.c: convert vmap_lazy_nr to atomic_long_t (Nico Pache) [1894223] - [mm] mm/kasan: change kasan_check_{read, write} to return boolean (Nico Pache) [1894223] - [mm] mm/kasan: introduce __kasan_check_{read, write} (Nico Pache) [1894223] - [mm] kasan: fix coccinelle warnings in kasan_p*_table (Nico Pache) [1894223] - [mm] kasan: fix kasan_check_read/write definitions (Nico Pache) [1894223] - [lib] kasan: remove use after scope bugs detection (Nico Pache) [1894223] - [lib] kasan: remove clang version check for KASAN_STACK (Nico Pache) [1894223] - [lib] kasan: turn off asan-stack for clang-8 and earlier (Nico Pache) [1894223] - [block] nbd: fix a block_device refcount leak in nbd_release (Ming Lei) [1901400] - [tools] selftests: Set default protocol for raw sockets in nettest (Hangbin Liu) [1898813] - [tools] selftests/net: improve descriptions for XFAIL cases in psock_snd.sh (Hangbin Liu) [1898813] - [tools] selftests: rtnetlink: make kci_test_encap() return sub-test result (Hangbin Liu) [1898813] - [tools] selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support (Hangbin Liu) [1898813] - [tools] selftests: use LDLIBS for libraries instead of LDFLAGS (Hangbin Liu) [1898813] - [tools] selftests: tls: run all tests for TLS 1.2 and TLS 1.3 (Hangbin Liu) [1898813] - [tools] selftests/net: add definition for SOL_DCCP to fix compilation errors for old libc (Hangbin Liu) [1898813] - [tools] selftests: net: reuseport_addr_any: silence clang warning (Hangbin Liu) [1898813] - [tools] selftests: net: refactor reuseport_addr_any test (Hangbin Liu) [1898813] - [tools] selftests: net: reuseport_addr_any: add DCCP (Hangbin Liu) [1898813] - [tools] selftests: net: test that listening sockets match on address properly (Hangbin Liu) [1898813] - [tools] selftests/net: make udpgso_bench skip unsupported testcases (Hangbin Liu) [1898813] - [tools] net/udpgso_bench.sh test fails on error (Hangbin Liu) [1898813] - [tools] net/udpgso_bench.sh add UDP GSO audit tests (Hangbin Liu) [1898813] - [tools] selftests: extend zerocopy tests to udp (Hangbin Liu) [1898813] - [tools] net/udpgso_bench_tx: options to exercise TX CMSG (Hangbin Liu) [1898813] - [tools] selftests: fixes for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests/net: replace obsolete NFT_CHAIN configuration (Hangbin Liu) [1898813] - [tools] selftests: explicitly require kernel features needed by udpgro tests (Hangbin Liu) [1898813] - [tools] selftests: add explicit test for multiple concurrent GRO sockets (Hangbin Liu) [1898813] - [tools] selftests: add functionals test for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests: add some benchmark for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests: add GRO support to udp bench rx program (Hangbin Liu) [1898813] - [net] sctp: change to hold/put transport for proto_unreach_timer (Xin Long) [1897084] - [scsi] scsi: qedi: Add schedule_hw_err_handler callback for fan failure (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Add support for handling PCIe errors (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Add firmware error recovery invocation support (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Mark all connections for recovery on link down event (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Use snprintf instead of sprintf (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Protect active command list to avoid list corruption (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Fix list_del corruption while removing active I/O (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Skip firmware connection termination for PCI shutdown handler (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Use qed count from set_fp_int in msix allocation (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove redundant NULL check (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Staticify non-external function 'qedi_get_iscsi_error' (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Demote seemingly unintentional kerneldoc header (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove set but unused variable 'tmp' (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove 2 set but unused variables (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove unused variable udev & uctrl (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove comparison of 0/1 to bool variable (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Check for buffer overflow in qedi_set_path() (Nilesh Javali) [1854121] - [scsi] scsi: qedf: Remove redundant assignment to variable 'rc' (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Retry qed->probe during recovery (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Add schedule_hw_err_handler callback for fan failure (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Return SUCCESS if stale rport is encountered (Nilesh Javali) [1854122] - [scsi] scsi: qedf: FDMI attributes correction (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Use pci_get_dsn() (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix for the session's E_D_TOV value (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Correct the comment in qedf_initiate_els (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Change the debug parameter permission to read & write (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix null ptr reference in qedf_stag_change_work (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix race between ELS completion and flushing ELS request (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Don't process ELS completion if event is flushed or cleaned up (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Initiate cleanup for ELS commands as well (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Send cleanup even for RRQ on timeout (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Do not kill timeout work for original I/O on RRQ completion (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Check the validity of rjt frame before processing (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Check for port type and role before processing an event (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove a whole host of unused variables (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove set but not checked variable 'tmp' (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove redundant initialization of variable rc (Nilesh Javali) [1854122] - [infiniband] RDMA/qedr: Fix memory leak in iWARP CM (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix function prototype parameters alignment (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix inline size returned for iWARP (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix iWARP active mtu display (Manish Chopra) [1857857] - [netdrv] qede: Notify qedr when mtu has changed (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix return code if accept is called on a destroyed qp (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix use of uninitialized field (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix doorbell setting (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix qp structure memory leak (Manish Chopra) [1857857] - [netdrv] net: qed: RDMA personality shouldn't fail VF load (Manish Chopra) [1857857] - [netdrv] net: qede: Disable aRFS for NPAR and 100G (Manish Chopra) [1857857] - [netdrv] net: qed: Disable aRFS for NPAR and 100G (Manish Chopra) [1857857] - [netdrv] net: qed: use eth_zero_addr() to clear mac address (Manish Chopra) [1857857] - [netdrv] net: qede: use eth_zero_addr() to clear mac address (Manish Chopra) [1857857] - [netdrv] qede: Use pM format specifier for MAC addresses (Manish Chopra) [1857857] - [netdrv] qed: Use pM format specifier for MAC addresses (Manish Chopra) [1857857] - [infiniband] qed: fix assignment of n_rq_elems to incorrect params field (Manish Chopra) [1857857] - [netdrv] qed: fix the allocation of the chains with an external PBL (Manish Chopra) [1857857] - [netdrv] qede: add .ndo_xdp_xmit() and XDP_REDIRECT support (Manish Chopra) [1857857] - [netdrv] qede: refactor XDP Tx processing (Manish Chopra) [1857857] - [netdrv] qede: reformat net_device_ops declarations (Manish Chopra) [1857857] - [netdrv] qede: reformat several structures in "qede.h" (Manish Chopra) [1857857] - [include] qed: introduce qed_chain_get_elem_used{, u32}() (Manish Chopra) [1857857] - [include] qed: optimize common chain accessors (Manish Chopra) [1857857] - [infiniband] qed: add support for different page sizes for chains (Manish Chopra) [1857857] - [netdrv] qed: simplify chain allocation with init params struct (Manish Chopra) [1857857] - [netdrv] qed: simplify initialization of the chains with an external PBL (Manish Chopra) [1857857] - [netdrv] qed: move chain initialization inlines next to allocation functions (Manish Chopra) [1857857] - [netdrv] qed: sanitize PBL chains allocation (Manish Chopra) [1857857] - [netdrv] qed: prevent possible double-frees of the chains (Manish Chopra) [1857857] - [netdrv] qed: move chain methods to a separate file (Manish Chopra) [1857857] - [netdrv] qed: reformat Makefile (Manish Chopra) [1857857] - [include] qed: reformat "qed_chain.h" a bit (Manish Chopra) [1857857] - [netdrv] net: qed_hsi.h: Avoid the use of one-element array (Manish Chopra) [1857857] - [netdrv] net: qed: Remove unneeded cast from memory allocation (Manish Chopra) [1857857] - [netdrv] qed: suppress false-positives interrupt error messages on HW init (Manish Chopra) [1857857] - [netdrv] qed: suppress "don't support RoCE & iWARP" flooding on HW init (Manish Chopra) [1857857] - [netdrv] qed: Fix ILT and XRCD bitmap memory leaks (Manish Chopra) [1857857] - [netdrv] qed: add support for the extended speed and FEC modes (Manish Chopra) [1857857] - [netdrv] qed: populate supported link modes maps on module init (Manish Chopra) [1857857] - [netdrv] qed: add missing loopback modes (Manish Chopra) [1857857] - [netdrv] qed: add support for new port modes (Manish Chopra) [1857857] - [netdrv] qed: remove unused qed_hw_info::port_mode and QED_PORT_MODE (Manish Chopra) [1857857] - [netdrv] qed: reformat several structures a bit (Manish Chopra) [1857857] - [netdrv] qede: introduce support for FEC control (Manish Chopra) [1857857] - [netdrv] qede: format qede{,_vf}_ethtool_ops (Manish Chopra) [1857857] - [netdrv] qed: add support for Forward Error Correction (Manish Chopra) [1857857] - [netdrv] qed: reformat several structures a bit (Manish Chopra) [1857857] - [netdrv] qed: use transceiver data to fill link partner's advertising speeds (Manish Chopra) [1857857] - [netdrv] qed: add support for multi-rate transceivers (Manish Chopra) [1857857] - [netdrv] qed: reformat public_port::transceiver_data a bit (Manish Chopra) [1857857] - [netdrv] qede: populate supported link modes maps on module init (Manish Chopra) [1857857] - [netdrv] qed, qede, qedf: convert link mode from u32 to ETHTOOL_LINK_MODE (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Add EDPM max size to alloc ucontext response (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Add EDPM mode type for user-fw compatibility (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: SRQ's bug fixes (Manish Chopra) [1857857] - [include] net: qed: drop duplicate words in comments (Manish Chopra) [1857857] - [netdrv] qede: convert to new udp_tunnel_nic infra (Manish Chopra) [1857857] - [netdrv] qed: Disable "MFW indication via attention" SPAM every 5 minutes (Manish Chopra) [1857857] - [netdrv] qed: Populate nvm-file attributes while reading nvm config partition (Manish Chopra) [1857857] - [netdrv] net: qede: fix BE vs CPU comparison (Manish Chopra) [1857857] - [netdrv] net: qede: fix kernel-doc for qede_ptp_adjfreq() (Manish Chopra) [1857857] - [netdrv] net: qed: sanitize BE/LE data processing (Manish Chopra) [1857857] - [netdrv] net: qed: use ptr shortcuts to dedup field accessing in some parts (Manish Chopra) [1857857] - [netdrv] net: qed: improve indentation of some parts of code (Manish Chopra) [1857857] - [netdrv] net: qed: address kernel-doc warnings (Manish Chopra) [1857857] - [netdrv] net: qed: correct qed_hw_err_notify() prototype (Manish Chopra) [1857857] - [netdrv] net: qed: cleanup global structs declarations (Manish Chopra) [1857857] - [netdrv] net: qed: move static iro_arrout of header file (Manish Chopra) [1857857] - [netdrv] qed: Make symbol 'qed_hw_err_type_descr' static (Manish Chopra) [1857857] - [netdrv] net: qede: update copyright years (Manish Chopra) [1857857] - [netdrv] net: qede: convert to SPDX License Identifiers (Manish Chopra) [1857857] - [netdrv] net: qede: correct existing SPDX tags (Manish Chopra) [1857857] - [netdrv] net: qed: update copyright years (Manish Chopra) [1857857] - [netdrv] net: qed: convert to SPDX License Identifiers (Manish Chopra) [1857857] - [netdrv] net: qed: correct existing SPDX tags (Manish Chopra) [1857857] - [netdrv] qed: add missing error test for DBG_STATUS_NO_MATCHING_FRAMING_MODE (Manish Chopra) [1857857] - [netdrv] net: qed: fix "maybe uninitialized" warning (Manish Chopra) [1857857] - [netdrv] net: qed: reset ILT block sizes before recomputing to fix crashes (Manish Chopra) [1857857] - [netdrv] net: qede: fix use-after-free on recovery and AER handling (Manish Chopra) [1857857] - [netdrv] net: qede: fix PTP initialization on recovery (Manish Chopra) [1857857] - [netdrv] net: qed: fix excessive QM ILT lines consumption (Manish Chopra) [1857857] - [netdrv] net: qed: fix NVMe login fails over VFs (Manish Chopra) [1857857] - [netdrv] net: qede: stop adding events on an already destroyed workqueue (Manish Chopra) [1857857] - [netdrv] net: qed: fix async event callbacks unregistering (Manish Chopra) [1857857] - [include] net: qed: fix left elements count calculation (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix KASAN: use-after-free in ucma_event_handler+0x532 (Manish Chopra) [1857857] - [netdrv] qed: Add EDPM mode type for user-fw compatibility (Manish Chopra) [1857857] - [netdrv] qed: Add XRC to RoCE (Manish Chopra) [1857857] - [netdrv] qed: changes to ILT to support XRC (Manish Chopra) [1857857] - [include] net: qed: fix bad formatting (Manish Chopra) [1857857] - [netdrv] net: qed: introduce critical hardware error handler (Manish Chopra) [1857857] - [netdrv] net: qed: introduce critical fan failure handler (Manish Chopra) [1857857] - [netdrv] net: qede: Implement ndo_tx_timeout (Manish Chopra) [1857857] - [netdrv] net: qede: optional hw recovery procedure (Manish Chopra) [1857857] - [netdrv] net: qed: attention clearing properties (Manish Chopra) [1857857] - [netdrv] net: qed: cleanup debug related declarations (Manish Chopra) [1857857] - [netdrv] net: qed: critical err reporting to management firmware (Manish Chopra) [1857857] - [netdrv] net: qed: invoke err notify on critical areas (Manish Chopra) [1857857] - [netdrv] net: qede: add hw err scheduled handler (Manish Chopra) [1857857] - [netdrv] net: qed: adding hw_err states and handling (Manish Chopra) [1857857] - [netdrv] net: qede: Use true for bool variable in qede_init_fp() (Manish Chopra) [1857857] - [netdrv] qed: Make ll2_cbs static (Manish Chopra) [1857857] - [netdrv] qede: Add support for handling the pcie errors (Manish Chopra) [1857857] - [netdrv] qed: Enable device error reporting capability (Manish Chopra) [1857857] - [netdrv] qed: use true,false for bool variables (Manish Chopra) [1857857] - [netdrv] net: qed: Remove unneeded cast from memory allocation (Manish Chopra) [1857857] - [netdrv] net: qede: reject unsupported coalescing params (Manish Chopra) [1857857] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 (Manish Chopra) [1857857] - [scsi] treewide: Add SPDX license identifier - Makefile/Kconfig (Manish Chopra) [1857857] - [netdrv] sfc: don't double-down() filters in ef100_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: Fix error code in probe (Jarod Wilson) [1856681] - [netdrv] sfc: fix boolreturn.cocci warning and rename function (Jarod Wilson) [1856681] - [netdrv] sfc: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Jarod Wilson) [1856681] - [netdrv] sfc: Use fallthrough pseudo-keyword (Jarod Wilson) [1856681] - [netdrv] sfc: fix build warnings on 32-bit (Jarod Wilson) [1856681] - [netdrv] sfc: don't free_irq()s if they were never requested (Jarod Wilson) [1856681] - [netdrv] sfc: null out channel->rps_flow_id after freeing it (Jarod Wilson) [1856681] - [netdrv] sfc: take correct lock in ef100_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: really check hash is valid before using it (Jarod Wilson) [1856681] - [netdrv] sfc: check hash is valid before using it (Jarod Wilson) [1856681] - [netdrv] sfc: fix ef100 design-param checking (Jarod Wilson) [1856681] - [netdrv] sfc: Fix build with CONFIG_RFS_ACCEL disabled (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add nic-type for VFs, and bind to them (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read pf_index at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: functions for selftests (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: statistics gathering (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: plumb in fini_dmaq (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: RX path for EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: RX filter table management and related gubbins (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: TX path for EF100 NICs (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read Design Parameters at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: fail the probe if NIC uses unsol_ev credits (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: check firmware version at start-of-day (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: remove duplicated include from ef100_netdev.c (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement ndo_get_phys_port_{id, name} (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read device MAC address at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: probe the PHY and configure the MAC (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: actually perform resets (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: extend ef100_check_caps to cover datapath_caps3 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read datapath caps, implement check_caps (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: process events for MCDI completions (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement ndo_open/close and EVQ probing (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement MCDI transport (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: don't call efx_reset_down()/up() on EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: PHY probe stub (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: reset-handling stub (Jarod Wilson) [1856681] - [netdrv] sfc: skeleton EF100 PF driver (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: register accesses on EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add EF100 register definitions (Jarod Wilson) [1856681] - [netdrv] sfc: remove efx_ethtool_nway_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: drop unnecessary list_empty (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: helper function to set default RSS table of given size (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: NVRAM selftest support code (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: populate BUFFER_SIZE_BYTES in INIT_RXQ (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add EF100 to NIC-revision enumeration (Jarod Wilson) [1856681] - [netdrv] sfc: get drvinfo driver name from outside the common code (Jarod Wilson) [1856681] - [netdrv] sfc: initialise RSS context ID to 'no RSS context' in efx_init_struct() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx_fini_dmaq (Jarod Wilson) [1856681] - [netdrv] sfc: factor out efx_mcdi_filter_table_down() from _remove() (Jarod Wilson) [1856681] - [netdrv] sfc: don't call tx_limit_len if NIC type doesn't have one (Jarod Wilson) [1856681] - [netdrv] sfc: assign TXQs without gaps (Jarod Wilson) [1856681] - [netdrv] sfc: commonise netif_set_real_numx_queues calls (Jarod Wilson) [1856681] - [netdrv] sfc: make tx_queues_per_channel variable at runtime (Jarod Wilson) [1856681] - [netdrv] sfc: move modparam 'rss_cpus' out of common channel code (Jarod Wilson) [1856681] - [netdrv] sfc: move modparam 'interrupt_mode' out of common channel code (Jarod Wilson) [1856681] - [netdrv] sfc: remove max_interrupt_mode (Jarod Wilson) [1856681] - [netdrv] sfc: support setting MTU even if not privileged to configure MAC fully (Jarod Wilson) [1856681] - [netdrv] sfc: don't call tx_remove if there isn't one (Jarod Wilson) [1856681] - [netdrv] sfc: commonise initialisation of efx->vport_id (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx->xq_entries initialisation (Jarod Wilson) [1856681] - [netdrv] sfc: initialise max_channels in efx_init_channels() (Jarod Wilson) [1856681] - [netdrv] sfc: move definition of EFX_MC_STATS_GENERATION_INVALID (Jarod Wilson) [1856681] - [netdrv] sfc: factor out efx_tx_tso_header_length() and understand encapsulation (Jarod Wilson) [1856681] - [netdrv] sfc: remove duplicate declaration of efx_enqueue_skb_tso() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise TSO fallback code (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx_sync_rx_buffer() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise some MAC configuration code (Jarod Wilson) [1856681] - [netdrv] sfc: commonise miscellaneous efx functions (Jarod Wilson) [1856681] - [netdrv] sfc: add missing licence info to mcdi_filters.c (Jarod Wilson) [1856681] - [netdrv] sfc: commonise MCDI MAC stats handling (Jarod Wilson) [1856681] - [netdrv] sfc: move NIC-specific mcdi_port declarations out of common header (Jarod Wilson) [1856681] - [netdrv] sfc: extend common GRO interface to support CHECKSUM_COMPLETE (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ARFS handling (Jarod Wilson) [1856681] - [netdrv] sfc: commonise drain event handling (Jarod Wilson) [1856681] - [netdrv] sfc: commonise PCI error handlers (Jarod Wilson) [1856681] - [netdrv] sfc: track which BAR is mapped (Jarod Wilson) [1856681] - [netdrv] sfc: commonise FC advertising (Jarod Wilson) [1856681] - [netdrv] sfc: commonise other ethtool bits (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ethtool NFC and RXFH/RSS functions (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ethtool link handling functions (Jarod Wilson) [1856681] - [netdrv] sfc: split up nic.h (Jarod Wilson) [1856681] - [netdrv] sfc: refactor EF10 stats handling (Jarod Wilson) [1856681] - [netdrv] sfc: don't try to create more channels than we can have VIs (Jarod Wilson) [1856681] - [netdrv] sfc: extend bitfield macros up to POPULATE_DWORD_13 (Jarod Wilson) [1856681] - [netdrv] sfc: determine flag word automatically in efx_has_cap() (Jarod Wilson) [1856681] - [netdrv] sfc: update MCDI protocol headers (Jarod Wilson) [1856681] - [netdrv] sfc: replace '---help---' in Kconfig files with 'help' (Jarod Wilson) [1856681] - [netdrv] sfc: add missing annotation for efx_ef10_try_update_nic_stats_vf() (Jarod Wilson) [1856681] - [netdrv] sfc: avoid an unused-variable warning (Jarod Wilson) [1856681] - [netdrv] sfc: fix dereference of table before it is null checked (Jarod Wilson) [1856681] - [netdrv] sfc: siena_check_caps() can be static (Jarod Wilson) [1856681] - [netdrv] sfc: actually wire up siena_check_caps() (Jarod Wilson) [1856681] - [netdrv] sfc: make firmware-variant printing a nic_type function (Jarod Wilson) [1856681] - [netdrv] sfc: make filter table probe caller responsible for adding VLANs (Jarod Wilson) [1856681] - [netdrv] sfc: move rx_rss_context_exclusive into struct efx_mcdi_filter_table (Jarod Wilson) [1856681] - [netdrv] sfc: rework handling of (firmware) multicast chaining state (Jarod Wilson) [1856681] - [netdrv] sfc: move 'must restore' flags out of ef10-specific nic_data (Jarod Wilson) [1856681] - [netdrv] sfc: use efx_has_cap for capability checks outside of NIC-specific code (Jarod Wilson) [1856681] - [netdrv] sfc: make capability checking a nic_type function (Jarod Wilson) [1856681] - [netdrv] sfc: move vport_id to struct efx_nic (Jarod Wilson) [1856681] - [ntb] NTB: Revert "Add Hygon Device ID" (Myron Stowe) [1880468] - [tools] NTB: ntb_test: Fix bug when counting remote files (Myron Stowe) [1908031] - [ntb] NTB: perf: Fix race condition when run with ntb_test (Myron Stowe) [1908031] - [ntb] NTB: perf: Fix support for hardware that doesn't have port numbers (Myron Stowe) [1908031] - [ntb] NTB: perf: Don't require one more memory window than number of peers (Myron Stowe) [1908031] - [ntb] NTB: ntb_pingpong: Choose doorbells based on port number (Myron Stowe) [1908031] - [ntb] NTB: Fix the default port and peer numbers for legacy drivers (Myron Stowe) [1908031] - [ntb] NTB: Revert the change to use the NTB device dev for DMA allocations (Myron Stowe) [1908031] - [ntb] NTB: ntb_tool: reading the link file should not end in a NULL byte (Myron Stowe) [1908031] - [ntb] ntb_perf: avoid false dma unmap of destination address (Myron Stowe) [1908031] - [ntb] ntb_perf: increase sleep time from one milli sec to one sec (Myron Stowe) [1908031] - [ntb] ntb_tool: pass correct struct device to dma_alloc_coherent (Myron Stowe) [1908031] - [ntb] ntb_perf: pass correct struct device to dma_alloc_coherent (Myron Stowe) [1908031] - [include] NTB: correct ntb_peer_spad_addr and ntb_peer_spad_read comment typos (Myron Stowe) [1908031] - [ntb] ntb: intel: fix static declaration (Myron Stowe) [1908031] - [ntb] ntb: intel: add hw workaround for NTB BAR alignment (Myron Stowe) [1908031] - [ntb] ntb: intel: Add Icelake (gen4) support for Intel NTB (Myron Stowe) [1908031] - [ntb] NTB: Fix static check warning in perf_clear_test (Myron Stowe) [1908031] - [include] include/ntb: Fix typo in ntb_unregister_device description (Myron Stowe) [1908031] - [ntb] NTB: add pci shutdown handler for AMD NTB (Myron Stowe) [1908031] - [ntb] NTB: send DB event when driver is loaded or un-loaded (Myron Stowe) [1908031] - [ntb] NTB: remove redundant setting of DB valid mask (Myron Stowe) [1908031] - [ntb] NTB: return link up status correctly for PRI and SEC (Myron Stowe) [1908031] - [ntb] NTB: add helper functions to set and clear sideinfo (Myron Stowe) [1908031] - [ntb] NTB: move ntb_ctrl handling to init and deinit (Myron Stowe) [1908031] - [ntb] NTB: handle link up, D0 and D3 events correctly (Myron Stowe) [1908031] - [ntb] NTB: handle link down event correctly (Myron Stowe) [1908031] - [ntb] NTB: remove handling of peer_sta from amd_link_is_up (Myron Stowe) [1908031] - [ntb] NTB: set peer_sta within event handler itself (Myron Stowe) [1908031] - [ntb] NTB: return the side info status from amd_poll_link (Myron Stowe) [1908031] - [ntb] NTB: define a new function to get link status (Myron Stowe) [1908031] - [ntb] NTB: Enable link up and down event notification (Myron Stowe) [1908031] - [ntb] NTB: clear interrupt status register (Myron Stowe) [1908031] - [ntb] NTB: Fix access to link status and control register (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Use scnprintf() for avoiding potential buffer overflow (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Fix ntb_mw_clear_trans error if size == 0 (Myron Stowe) [1908031] - [ntb] ntb_tool: Fix printk format (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Fix address err in perf_copy_chunk (Myron Stowe) [1908031] - [ntb] NTB: Fix an error in get link status (Myron Stowe) [1908031] - [ntb] NTB: Add Hygon Device ID (Myron Stowe) [1908031] - [ntb] NTB: fix IDT Kconfig typos/spellos (Myron Stowe) [1908031] - [ntb] ntb_hw_amd: Add memory window support for new AMD hardware (Myron Stowe) [1908031] - [ntb] ntb_hw_amd: Add a new NTB PCI device ID (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: remove redundant assignment to rc (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: make ntb_mw_set_trans() work when addr == 0 (Myron Stowe) [1908031] - [ntb] ntb: point to right memory window index (Myron Stowe) [1908031] - [ntb] NTB/msi: remove incorrect MODULE defines (Myron Stowe) [1908031] - [documentation] NTB: Describe the ntb_msi_test client in the documentation (Myron Stowe) [1908031] - [ntb] NTB: Add MSI interrupt support to ntb_transport (Myron Stowe) [1908031] - [tools] NTB: Add ntb_msi_test support to ntb_test (Myron Stowe) [1908031] - [ntb] NTB: Introduce NTB MSI Test Client (Myron Stowe) [1908031] - [ntb] NTB: Introduce MSI library (Myron Stowe) [1908031] - [ntb] NTB: Rename ntb.c to support multiple source files in the module (Myron Stowe) [1908031] - [include] NTB: Introduce functions to calculate multi-port resource index (Myron Stowe) [1908031] - [include] NTB: Introduce helper functions to calculate logical port number (Myron Stowe) [1908031] - [pci] PCI/switchtec: Add module parameter to request more interrupts (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Fix setup MW with failure bug (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Skip unnecessary re-setup of shared memory window for crosslink case (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Remove redundant steps of switchtec_ntb_reinit_peer() function (Myron Stowe) [1908031] - [include] NTB: correct ntb_dev_ops and ntb_dev comment typos (Myron Stowe) [1908031] - [ntb] NTB: amd: Silence shift wrapping warning in amd_ntb_db_vector_mask() (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: potential shift wrapping bug in switchtec_ntb_init_sndev() (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Ensure qp->tx_mw_dma_addr is initaliazed (Myron Stowe) [1908031] - [ntb] NTB: ntb_hw_amd: set peer limit register (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Clear stale values in doorbell and command SPAD register (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Disable NTB link after clearing peer XLAT registers (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Increased the number of message retries to 1000 (Myron Stowe) [1908031] - [ntb] ntb: intel: Make intel_ntb3_peer_db_addr static (Myron Stowe) [1908031] - [ntb] NTB: add new parameter to peer_db_addr() db_bit and db_data (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Ensure the destination buffer is mapped for TX DMA (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Free MWs in ntb_transport_link_cleanup() (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Added support of >=4G memory windows (Myron Stowe) [1908031] - [include] ntb_hw_switchtec: NT req id mapping table register entry number should be 512 (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: debug print 64bit aligned crosslink BAR Numbers (Myron Stowe) [1908031] - [ntb] ntb: idt: Alter the driver info comments (Myron Stowe) [1908031] - [ntb] ntb: idt: Discard temperature sensor IRQ handler (Myron Stowe) [1908031] - [ntb] ntb: idt: Add basic hwmon sysfs interface (Myron Stowe) [1908031] - [ntb] ntb: idt: Alter temperature read method (Myron Stowe) [1908031] - [netdrv] ntb_netdev: Simplify remove with client device drvdata (Myron Stowe) [1908031] - [ntb] NTB: transport: Try harder to alloc an aligned MW buffer (Myron Stowe) [1908031] - [ntb] ntb: ntb_transport: Mark expected switch fall-throughs (Myron Stowe) [1908031] - [ntb] ntb: idt: Set PCIe bus address to BARLIMITx (Myron Stowe) [1908031] - [ntb] NTB: ntb_hw_idt: replace IS_ERR_OR_NULL with regular NULL checks (Myron Stowe) [1908031] - [ntb] ntb: intel: fix return value for ndev_vec_mask() (Myron Stowe) [1908031] - [netdrv] ntb_netdev: fix sleep time mismatch (Myron Stowe) [1908031]- [block] block: fix incorrect branching in blk_max_size_offset() (Mike Snitzer) [1903722] - [md] dm: fix IO splitting (Mike Snitzer) [1903722] - [block] block: fix get_max_io_size() (Mike Snitzer) [1903722] - [block] block: Improve physical block alignment of split bios (Mike Snitzer) [1903722] - [block] block: use gcd() to fix chunk_sectors limit stacking (Mike Snitzer) [1903722] - [kernel] sched/deadline: Fix priority inheritance with multiple scheduling classes (Phil Auld) [1780490] - [fs] Convert trailing spaces and periods in path components (Leif Sahlberg) [1882457] - [block] loop: Fix occasional uevent drop (Ming Lei) [1897401] - [block] block: add a return value to set_capacity_revalidate_and_notify (Ming Lei) [1897401] - [fs] fat: truncate inode timestamp updates in setattr (Pavel Reichl) [1533270] - [fs] fat: change timestamp updates to use fat_truncate_time (Pavel Reichl) [1533270] - [fs] fat: add functions to update and truncate timestamps appropriately (Pavel Reichl) [1533270] - [fs] fat: create a function to calculate the timezone offest (Pavel Reichl) [1533270] - [net] icmp: randomize the global rate limiter (Guillaume Nault) [1899137] - [net] ipv4: Restore flowi4_oif update before call to xfrm_lookup_route (Guillaume Nault) [1899137] - [net] ipv4: Update exception handling for multipath routes via same device (Guillaume Nault) [1899137] - [net] ip: fix tos reflection in ack and reset packets (Guillaume Nault) [1899137] - [net] initialize fastreuse on inet_inherit_port (Guillaume Nault) [1899137] - [net] refactor bind_bucket fastreuse into helper (Guillaume Nault) [1899137] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'qplib_ctx' (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Fix driver crash on unaligned PSN entry address (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Restrict the max_gids to 256 (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Static NQ depth allocation (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Fix the qp table indexing (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Do not report transparent vlan from QP1 (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Change wr posting logic to accommodate variable wqes (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Add helper data structures (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Pull psn buffer dynamically based on prod (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: introduce a function to allocate swq (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: introduce wqe mode to select execution path (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt: Delete 'nq_ptr' variable which is not used (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove dead code from rcfw (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Simplify obtaining queue entry from hw ring (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Update missing hsi data structures (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Reduce device page size detection code (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove unsupported modify_device callback (Selvin Xavier) [1861886] - [include] net: Add netif_is_bareudp() API to identify bareudp devices (Guillaume Nault) [1839788] - [net] Removed the device type check to add mpls support for devices (Guillaume Nault) [1839788] - [tools] selftests: set conf.all.rp_filter=0 in bareudp.sh (Guillaume Nault) [1839788] - [tools] selftests: disable rp_filter when testing bareudp (Guillaume Nault) [1839788] - [tools] selftests: add test script for bareudp tunnels (Guillaume Nault) [1839788] - [documentation] bareudp: Corrected description of bareudp module. (Guillaume Nault) [1839788] - [netdrv] bareudp: forbid mixing IP and MPLS in multiproto mode (Guillaume Nault) [1839788] - [netdrv] bareudp: Reverted support to enable & disable rx metadata collection (Guillaume Nault) [1839788] - [documentation] bareudp: update iproute2 sample commands (Guillaume Nault) [1839788] - [netdrv] bareudp: Added attribute to enable & disable rx metadata collection (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed multiproto mode configuration (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed configuration to avoid having garbage values (Guillaume Nault) [1839788] - [netdrv] net: bareudp: avoid uninitialized variable warning (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed bareudp receive handling (Guillaume Nault) [1839788] - [netdrv] bareudp: remove unnecessary udp_encap_enable() in bareudp_socket_create() (Guillaume Nault) [1839788] - [netdrv] bareudp: print error message when command fails (Guillaume Nault) [1839788] - [netdrv] bareudp: add module alias (Guillaume Nault) [1839788] - [netdrv] bareudp: Fix uninitialized variable warnings. (Guillaume Nault) [1839788] - [netdrv] Special handling for IP & MPLS. (Guillaume Nault) [1839788] - [net] UDP tunnel encapsulation module for tunnelling different protocols like MPLS, IP, NSH etc. (Guillaume Nault) [1839788] - [arm64] arm64: remove arm64ksyms.c (Mark Salter) [1883365] - [arm64] arm64: frace: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: string: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: uaccess: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: page: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: smccc: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: tishift: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: add EXPORT_SYMBOL_NOKASAN() (Mark Salter) [1883365] - [mm] arm64: move memstart_addr export inline (Mark Salter) [1883365] - [arm64] arm64: remove bitop exports (Mark Salter) [1883365] - [arm64] arm64: lib: use C string functions with KASAN enabled (Mark Salter) [1883365] - [arm64] arm64: add (Mark Salter) [1883365] - [arm64] locking/atomics/arm64, arm64/bitops: Include (Mark Salter) [1883365] - [arm64] locking/atomics/arm64: Replace our atomic/lock bitop implementations with asm-generic (Mark Salter) [1883365] - [include] locking/atomics, asm-generic/bitops/lock.h: Rewrite using atomic_fetch_*() (Mark Salter) [1883365] - [include] locking/atomics, asm-generic/bitops/atomic.h: Rewrite using atomic_*() APIs (Mark Salter) [1883365] - [thermal] thermal: rcar_thermal: Add missing braces to conditional statement (Ivan Vecera) [1894564] - [thermal] thermal: Rename set_mode() to change_mode() (Ivan Vecera) [1894564] - [thermal] thermal: Simplify or eliminate unnecessary set_mode() methods (Ivan Vecera) [1894564] - [thermal] thermal: core: Stop polling DISABLED thermal devices (Ivan Vecera) [1894564] - [thermal] thermal: Explicitly enable non-changing thermal zone devices (Ivan Vecera) [1894564] - [thermal] thermal: Use mode helpers in drivers (Ivan Vecera) [1894564] - [thermal] thermal: Add mode helpers (Ivan Vecera) [1894564] - [thermal] thermal: remove get_mode() operation of drivers (Ivan Vecera) [1894564] - [thermal] thermal: Store device mode in struct thermal_zone_device (Ivan Vecera) [1894564] - [include] thermal: Add current mode to thermal zone device (Ivan Vecera) [1894564] - [acpi] thermal: Store thermal mode in a dedicated enum (Ivan Vecera) [1894564] - [acpi] acpi: thermal: Fix error handling in the register function (Ivan Vecera) [1894564] - [thermal] thermal: core: skip update disabled thermal zones after suspend (Ivan Vecera) [1894564] - [thermal] Thermal: do not clear passive state during system sleep (Ivan Vecera) [1894564] - [thermal] thermal: of-thermal: disable passive polling when thermal zone is disabled (Ivan Vecera) [1894564] - [crypto] crypto: qat - drop input parameter from adf_enable_aer() (Vladis Dronov) [1855190] - [crypto] crypto: qat - fix function parameters descriptions (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove unnecessary mutex_init() (Vladis Dronov) [1855190] - [crypto] crypto: qat - use PCI_VDEVICE (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace device ids defines (Vladis Dronov) [1855190] - [crypto] crypto: qat - include domain in top level debugfs path (Vladis Dronov) [1855190] - [crypto] crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA (Vladis Dronov) [1855190] - [crypto] crypto: qat - Use fallthrough pseudo-keyword (Vladis Dronov) [1855190] - [crypto] crypto: qat - add delay before polling mailbox (Vladis Dronov) [1855190] - [include] PCI: Add Intel QuickAssist device IDs (Vladis Dronov) [1855190] - [crypto] crypto: qat - fix double free in qat_uclo_create_batch_init_list (Vladis Dronov) [1855190] - [crypto] crypto: qat - fallback for xts with 192 bit keys (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove unused field in skcipher ctx (Vladis Dronov) [1855190] - [crypto] crypto: qat - validate xts key (Vladis Dronov) [1855190] - [crypto] crypto: qat - allow xts requests not multiple of block (Vladis Dronov) [1855190] - [crypto] crypto: qat - update timeout logic in put admin msg (Vladis Dronov) [1855190] - [crypto] crypto: qat - send admin messages to set of AEs (Vladis Dronov) [1855190] - [crypto] crypto: qat - update fw init admin msg (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove packed attribute in etr structs (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace user types with kernel ABI __u types (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace user types with kernel u types (Vladis Dronov) [1855190] - [crypto] crypto: qat - convert to SPDX License Identifiers (Vladis Dronov) [1855190] - [crypto] crypto: qat - simplify the qat_crypto function (Vladis Dronov) [1855190] - [crypto] crypto: qat - spelling s/Decrytp/Decrypt/ (Vladis Dronov) [1855190] - [crypto] crypto: qat/adf_aer - Replace GFP_ATOMIC with GFP_KERNEL in adf_dev_aer_schedule_reset() (Vladis Dronov) [1855190] - [thermal] thermal: int340x: processor_thermal: fix: update Jasper Lake PCI id (David Arcari) [1889331] - [thermal] thermal: int3403_thermal: Downgrade error message (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Prevent page fault on .set_mode() op (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Don't require IDSP to exist (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Export OEM vendor variables (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Export GDDV (David Arcari) [1889331] - [thermal] thermal: int3400_thermal: Statically initialize .get_mode()/.set_mode() ops (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: fix: Update Tiger Lake ACPI device IDs (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: Use scnprintf() for avoiding potential buffer overflow (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Tiger Lake support (David Arcari) [1889331] - [platform] acpi: Remove header dependency (David Arcari) [1889331] - [thermal] thermal: int340x: switch to use helpers (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Jasper Lake support (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: Add Tiger Lake ACPI device IDs (David Arcari) [1889331] - [thermal] thermal: intel: int3403: replace printk(KERN_WARN...) with pr_warn(...) (David Arcari) [1889331] - [thermal] thermal: intel: int340x_thermal: Remove unnecessary acpi_has_method() uses (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Ice Lake support (David Arcari) [1889331] - [thermal] drivers: thermal: processor_thermal_device: Export sysfs interface for TCC offset (David Arcari) [1889331] - [netdrv] net/mlx5e: Fix arch depending casting issue in FEC (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Kconfig: convert imply usage to weak dependency (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Fix condition for termination table cleanup (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Use a separate work queue for fib event handling (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Add support for RDMA TX flow table (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Add support for RDMA TX steering (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Move to fully dynamic UAR mode once user space supports it (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Limit the scope of struct mlx5_bfreg_info to mlx5_ib (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Extend QP creation to get uar page index from user space (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Extend CQ creation to get uar page index from user space (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid group version scan when not necessary (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid incrementing FTE version (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Simplify matching group searches (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Generally use the WC auto detection test result (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid forwarding to other eswitch uplink (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Eswitch, enable forwarding back to uplink port (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5e: Add support for offloading traffic from uplink to uplink (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Don't use termination tables in slow path (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Avoid configuring eswitch QoS if not supported (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: DR, Add support for flow table id destination action (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Refactor unload all reps per rep type (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Update VF vports config when num of VFs changed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Introduce per vport configuration for eswitch modes (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-switch, Make vport setup/cleanup sequence symmetric (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Prepare for vport enable/disable refactor (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Remove redundant warning when QoS enable failed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Remove redundant check of eswitch manager cap (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Allow MRs to be created in the cache synchronously (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Revise how the hysteresis scheme works for cache filling (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Fix locking in MR cache work queue (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Lock access to ent->available_mrs/limit when doing queue_work (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Fix MR cache size and limit debugfs (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Always remove MRs from the cache before destroying them (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Simplify how the MR cache bucket is located (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Rename the tracking variables for the MR cache (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Replace spinlock protected write with atomic var (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Move asynchronous mkey creation to mlx5_ib (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Assign mkey variant in mlx5_ib only (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Setup mkey variant before mr create command invocation (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Use offsetofend() instead of duplicated variant (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Remove duplicate definitions of SW_ICM macros (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-switch, make query inline mode a static function (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Allocate smaller size tables for ft offload (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Introduce TLS and IPSec objects enums (Alaa Hleihel) [1858559] - [include] net/mlx5: Introduce egress acl forward-to-vport capability (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Add np_min_time_between_cnps and rp_max_rate debug params (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Fix header guard in rsc_dump.h (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Replace zero-length array with flexible-array member (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Remove a useless 'drain_workqueue()' call in 'mlx5e_ipsec_cleanup()' (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Add support for FEC modes based on 50G per lane links (Alaa Hleihel) [1858559] - [netdrv] net/mlxe5: Separate between FEC and current speed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Advertise globaly supported FEC modes (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Enforce setting of a single FEC mode (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Set FEC to auto when configured mode is not supported (Alaa Hleihel) [1858559] - [netdrv] mlx5: Use proper logging and tracing line terminations (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Support dump callback in RX reporter (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Support dump callback in TX reporter (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Gather reporters APIs together (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Add support for resource dump (Alaa Hleihel) [1858559] - [netdrv] bnxt_en: Fix wrong flag value passed to HWRM_PORT_QSTATS_EXT fw call (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix HWRM_FUNC_QSTATS_EXT firmware call (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return -EOPNOTSUPP for ETHTOOL_GREGS on VFs (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: return proper error codes in bnxt_show_temp (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Use memcpy to copy VPD field info (Jonathan Toppins) [1861885] - [netdrv] net: ethernet: broadcom: have drivers select DIMLIB as needed (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Avoid sending firmware messages when AER error is detected (Jonathan Toppins) [1861885] - [netdrv] bnxt: don't enable NAPI until rings are ready (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Setup default RSS map in all scenarios (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: init RSS table for Minimal-Static VF reservation (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix HWRM error when querying VF temperature (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix possible crash in bnxt_fw_reset_task() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix PCI AER error recovery flow (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Check for zero dir entries in NVRAM (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Don't query FW when netif_running() is false (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Remove superfluous memset() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add support for 'ethtool -d' (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Switch over to use the 64-bit software accumulated counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Accumulate all counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Retrieve hardware masks for port counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Retrieve hardware counter masks from firmware if available (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Allocate additional memory for all statistics blocks (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Refactor statistics code and structures (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Use macros to define port statistics size and offset (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Update firmware interface to 1.10.1.54 (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Remove PCIe non-counters from ethtool statistics (Jonathan Toppins) [1861885] - [netdrv] net: bnxt: don't complain if TC flower can't be supported (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix completion ring sizing with TPA enabled (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Init ethtool link settings after reading updated PHY configuration (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix race when modifying pause settings (Jonathan Toppins) [1861885] - [netdrv] bnxt: convert to new udp_tunnel_nic infra (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: allow firmware to disable VLAN offloads (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: clean up VLAN feature bit handling (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Implement ethtool -X to set indirection table (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return correct RSS indirection table entries to ethtool -x (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fill HW RSS table from the RSS logical indirection table (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add helper function to return the number of RSS contexts (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add logical RSS indirection table structure (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix up bnxt_get_rxfh_indir_size() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Set up the chip specific RSS table size (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Read VPD info only for PFs (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix statistics counters issue during ifdown with older firmware (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Do not enable legacy TX push on older firmware (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Store the running firmware version code (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add board.serial_number field to info_get cb (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return from timer if interface is not in open state (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix AER reset logic on 57500 chips (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Re-enable SRIOV during resume (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Simplify bnxt_resume() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix firmware message length endianness (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix return code to "flash_device" (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix accumulation of bp->net_stats_prev (Jonathan Toppins) [1861885] - [netdrv] net: bnxt: Remove Comparison to bool in bnxt_ethtool.c (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: show only relevant ethtool stats for a TX or RX ring (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Split HW ring statistics strings into RX and TX parts (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Refactor the software ring counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add doorbell information to bnxt_en_dev struct (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add support for L2 doorbell size (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Set the db_offset on 57500 chips for the RDMA MSIX entries (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Define the doorbell offsets on 57500 chips (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Improve kernel log messages related to ethtool reset (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix ethtool_reset_flags ABI violations (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: refactor ethtool firmware reset types (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: prepare to refactor ethtool reset types (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Do not include ETH_FCS_LEN in the max packet length sent to fw (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Improve TQM ring context memory sizing formulas (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Allocate TQM ring context memory according to fw specification (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Update firmware spec. to 1.10.1.33 (Jonathan Toppins) [1861885] - [fs] fs/namespace.c: fix mountpoint reference counter race (Pavel Reichl) [1852651] {CVE-2020-12114}- [powerpc] powerpc/64: Fix kernel stack 16-byte alignment (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/aout: Fix struct user definition to use user_pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/uapi: Fix sigcontext definition to use user_pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] bpf: powerpc: fix broken uapi for BPF_PROG_TYPE_PERF_EVENT (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Tests for kernel accessing user memory (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Introduce PPC_DEBUG_FEATURE_DATA_BP_ARCH_31 (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix exception handling for CONFIG_HAVE_HW_BREAKPOINT=N (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix length calculation for unaligned target (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Move DAWR detection logic outside of hw_breakpoint.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix handling of vector instructions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix quadword instruction handling on p10 predecessors (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/hw_breakpoint.h: delete duplicated word (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Remove 512 byte boundary (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Return available watchpoints dynamically (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Guest support for 2nd DAWR hcall (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Set CPU_FTR_DAWR1 based on pa-features bit (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/dt_cpu_ftrs: Add feature for 2nd DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Enable watchpoint functionality on power10 guest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix DAWR exception for CACHEOP (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix DAWR exception constraint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix 512 byte boundary limit (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] hw-breakpoints: Fix build warnings with clang (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/xmon: Support 2nd DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/xmon: Don't allow breakpoint overwriting (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Don't allow concurrent perf and ptrace events (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Prepare handler to handle more than one watchpoint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Use builtin ALIGN*() macros (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Introduce is_ptrace_bp() function (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Use loop for thread_struct->ptrace_bps (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Convert thread_struct->hw_brk to an array (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Disable all available watchpoints when !dawr_force_enable (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Get watchpoint count dynamically while disabling them (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Provide DAWR number to __set_breakpoint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Provide DAWR number to set_dawr (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Return actual num of available watchpoints (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Introduce function to get nr watchpoints dynamically (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Add SPRN macros for second DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: move ptrace_triggered() into hw_breakpoint.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: create ppc_gethwdinfo() (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: create ptrace_get_debugreg() (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out ADV_DEBUG_REGS related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: move register viewing functions out of ptrace.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out TRANSACTIONAL_MEM related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out SPE related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out ALTIVEC related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out VSX related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: drop PARAMETER_SAVE_AREA_OFFSET (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: drop unnecessary #ifdefs CONFIG_PPC64 (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: remove unused header includes (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Move ptrace into a subdirectory (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Don't call dar_within_range() for Book3S (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Enable range tests on 8xx in ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/hw_breakpoints: Rewrite 8xx breakpoints to allow any address range size (Desnes Augusto Nunes do Rosario) [1854528] - [tools] powerpc/watchpoint: Support for 8xx in ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [tools] powerpc/watchpoint: Add DAR outside test in perf-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Rewrite ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: permanently include 8xx registers in reg.h (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: Simplify vr_get/set() to avoid GCC warning (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/64: Interrupts save PPR on stack rather than thread_struct (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Use SWITCH_FRAME_SIZE for prom and rtas entry (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: Don't use sizeof(struct pt_regs) in ptrace code (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Split user/kernel definitions of struct pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: declare set_breakpoint() static (Desnes Augusto Nunes do Rosario) [1854528] - [tools] perf vendor events power9: Added nest imc metric events (Michael Petlan) [1780258] - [powerpc] powerpc/perf: Fix crashes with generic_compat_pmu & BHRB (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints (Michael Petlan) [1854525] - [powerpc] powerpc/powernv/idle: add a basic stop 0-3 driver for POWER10 (Michael Petlan) [1854525] - [powerpc] powerpc/kernel: Cleanup machine check function declarations (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Fix soft lockups due to missed interrupt accounting (Michael Petlan) [1854525] - [powerpc] powerpc: Add POWER10 raw mode cputable entry (Michael Petlan) [1854525] - [powerpc] powerpc/powernv: Machine check handler for POWER10 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add extended regs support for power10 platform (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add support for outputting extended regs in perf intr_regs (Michael Petlan) [1854525] - [tools] perf tools powerpc: Add support for extended regs in power10 (Michael Petlan) [1854525] - [tools] perf tools powerpc: Add support for extended register capability (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Fix MMCRA_BHRB_DISABLE define for binutils < 2.28 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Initialize power10 PMU registers in cpu setup routine (Michael Petlan) [1854525] - [powerpc] powerpc/perf: BHRB control to disable BHRB logic when not used (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add Power10 BHRB filter support for PERF_SAMPLE_BRANCH_IND_CALL/COND (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Ignore the BHRB kernel address filtering for P10 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: power10 Performance Monitoring support (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add Power10 PMU feature to DT CPU features (Michael Petlan) [1854525] - [powerpc] powerpc/xmon: Add PowerISA v3.1 PMU SPRs (Michael Petlan) [1854525] - [powerpc] powerpc64: Break asm/percpu.h vs spinlock_types.h dependency (Greg Kurz) [1882796] - [powerpc] watchpoint: Rename current DAWR macros (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Make struct kernel_param_ops definition const (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: simplify kvm_cma_reserve() (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Fix symbol undeclared warnings (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Remove redundant initialization of variable ret (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: xive: Convert to DEFINE_SHOW_ATTRIBUTE (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Set LPCR[HDICE] before writing HDEC (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Do not allocate HPT for a nested guest (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Don't return -ENOTSUPP to userspace in ioctls (Greg Kurz) [1882796] - [powerpc] 64s: handle ISA v3.1 local copy-paste context switches (Greg Kurz) [1882796] - [powerpc] 64s: Move HMI IRQ stat from percpu variable to paca (Greg Kurz) [1882796] - [powerpc] kvm/cma: Improve kernel log during boot (Greg Kurz) [1882796] - [powerpc] kvm: Use correct CONFIG symbol in comment (Greg Kurz) [1882796] - [powerpc] watchpoint: Rename current H_SET_MODE DAWR macro (Greg Kurz) [1882796] - [tools] kvm: ppc: Fix typo on H_DISABLE_AND_GET hcall (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Clean up redundant kvm_run parameters in assembly (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Save/restore new PMU registers (Greg Kurz) [1882796] - [powerpc] perf: Add support for ISA3.1 PMU SPRs (Greg Kurz) [1882796] - [powerpc] perf: Update Power PMU cache_events to u64 type (Greg Kurz) [1882796] - [powerpc] perf: Update cpu_hw_event to use `struct` for storing MMCR registers (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Cleanup updates for kvm vcpu MMCR (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Protect kvm_vcpu_read_guest with srcu locks (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Increase KVMPPC_NR_LPIDS on POWER8 and POWER9 (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3shv: Enable support for ISA v3.1 guests (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s pr: Remove uninitialized_var() usage (Greg Kurz) [1882796] - [powerpc] kvm/book3s64: Fix kernel crash with nested kvm & DEBUG_VIRTUAL (Greg Kurz) [1882796] - [powerpc] book3s64/kvm: Fix secondary page table walk warning during migration (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Fix some RCU-list locks (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Ignore kmemleak false positives (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Clean up redundant 'kvm_run' parameters (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Remove redundant kvm_run from vcpu_arch (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Remove redundant NULL check (Greg Kurz) [1882796] - [powerpc] Fix compile issue with force DAWR (Greg Kurz) [1882796] - [powerpc] silence a -Wcast-function-type warning in dawr_write_file_bool (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Fix r3 corruption in h_set_dabr() (Greg Kurz) [1882796] - [powerpc] Add force enable of DAWR on P9 option (Greg Kurz) [1882796] - [documentation] powerpc: Document issues with the DAWR on POWER9 (Greg Kurz) [1882796] - [powerpc] Replace _ALIGN_UP() by ALIGN() (Greg Kurz) [1882796] - [powerpc] Replace _ALIGN_DOWN() by ALIGN_DOWN() (Greg Kurz) [1882796] - [netdrv] tg3: Fix soft lockup when tg3_reset_task() fails (Jonathan Toppins) [1899595] - [tools] tools/power turbostat: update version number (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: harden against cpu hotplug (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: adjust for temperature offset (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Build with _FILE_OFFSET_BITS=64 (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support AMD Family 19h (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Remove empty columns for Jacobsville (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Add a new GFXAMHz column that exposes gt_act_freq_mhz (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Skip pc8, pc9, pc10 columns, if they are disabled (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix output formatting for ACPI CST enumeration (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Replace HTTP links with HTTPS ones: TURBOSTAT UTILITY (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Enable accumulate RAPL display (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Introduce functions to accumulate RAPL consumption (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Make the energy variable to be 64 bit (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Always print idle in the system configuration header (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Print /dev/cpu_dma_latency (Prarit Bhargava) [1857136] - [tools] turbostat/.gitignore: add SPDX License Identifier (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: update version (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Print cpuidle information (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix 32-bit capabilities warning (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix missing SYS_LPI counter on some Chromebooks (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix gcc build warnings (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support Elkhart Lake (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support Jasper Lake (Prarit Bhargava) [1857136] - [scsi] scsi: core: Return BLK_STS_AGAIN for ALUA transitioning (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Set 'transitioning' state on Unit Attention (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Return BLK_STS_AGAIN for ALUA transitioning state (Ewan Milne) [1867264] - [block] scsi: block: Return status code in blk_mq_end_request() (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Avoid crash during alua_bus_detach() (Ewan Milne) [1877156] - [fs] gfs2: check for live vs. read-only file system in gfs2_fitrim (Abhijith Das) [1335139] - [fs] gfs2: don't initialize statfs_change inodes in spectator mode (Abhijith Das) [1335139] - [fs] gfs2: init_journal's undo directive should also undo the statfs inodes (Abhijith Das) [1335139] - [fs] gfs2: Recover statfs info in journal head (Abhijith Das) [1335139] - [fs] gfs2: lookup local statfs inodes prior to journal recovery (Abhijith Das) [1335139] - [fs] gfs2: Add fields for statfs info in struct gfs2_log_header_host (Abhijith Das) [1335139] - [block] nbd: don't update block size after device is started (Ming Lei) [1891363] - [platform] platform/x86: thinkpad_acpi: lap or desk mode interface (David Arcari) [1889642] - [infiniband] IB/mlx4: Convert rej_tmout radix-tree to XArray (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Adjust delayed work when a dup is observed (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add support for REJ due to timeout (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Fix starvation in paravirt mux/demux (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Separate tunnel and wire bufs parameters (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add support for MRA (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add and improve logging (Alaa Hleihel) [1858564] - [netdrv] net: ethernet: mlx4: Avoid assigning a value to ring_cons but not used it anymore in mlx4_en_xmit() (Alaa Hleihel) [1858564] - [netdrv] net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init() (Alaa Hleihel) [1858564] - [infiniband] treewide: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858564] - [netdrv] net/mlx4: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858564] - [netdrv] mlx4: convert to new udp_tunnel_nic infra (Alaa Hleihel) [1858564] - [netdrv] mlx4: Mark PM functions as __maybe_unused (Alaa Hleihel) [1858564] - [netdrv] mlx4: use generic power management (Alaa Hleihel) [1858564] - [netdrv] mlx4: disable device on shutdown (Alaa Hleihel) [1858564 1858563] - [include] IB/mlx4: Replace zero-length array with flexible-array (Alaa Hleihel) [1858564 1858563] - [netdrv] net: mlx4: remove unneeded variable "err" in mlx4_en_ethtool_add_mac_rule() (Alaa Hleihel) [1858564 1858563] - [netdrv] net: mlx4: remove unneeded variable "err" in mlx4_en_get_rxfh() (Alaa Hleihel) [1858564 1858563] - [netdrv] net/mlx4_en: use napi_complete_done() in TX completion (Alaa Hleihel) [1858564 1858563] - [netdrv] net/mlx4_en: avoid indirect call in TX completion (Alaa Hleihel) [1858564 1858562] - [infiniband] RDMA/mlx4: Delete duplicated offsetofend implementation (Alaa Hleihel) [1858564 1858562] - [netdrv] net: mlx4: reject unsupported coalescing params (Alaa Hleihel) [1858564 1858562] - [hwmon] hwmon: (amd_energy) match for supported models (David Arcari) [1860387] - [hwmon] hwmon: (amd_energy) Missing platform_driver_unregister() on error in amd_energy_init() (David Arcari) [1860387] - [hwmon] hwmon: Add amd_energy driver to report energy counters (David Arcari) [1860387] - [include] include/asm-generic/topology.h: guard cpumask_of_node() macro argument (David Arcari) [1860387]- [x86] x86/dumpstack: Fix misleading instruction pointer error message (Kenneth Yin) [1903506] - [powerpc] powerpc/powernv/opal-dump : Use IRQ_HANDLED instead of numbers in interrupt handler (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/dump: Handle multiple writes to ack attribute (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/dump: Fix race while processing OPAL dump (Diego Domingos) [1891822] - [powerpc] powerpc/opal_elog: Handle multiple writes to ack attribute (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/elog: Fix race while processing OPAL error log event (Diego Domingos) [1891822] - [hid] HID: logitech-dj: Fix an error in mse_bluetooth_descriptor (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Add PID for MX Anywhere 2 (Benjamin Tissoires) [1885560] - [hid] HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery (Benjamin Tissoires) [1885560] - [hid] HID: ite: Add USB id match for Acer One S1003 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons (Benjamin Tissoires) [1885560] - [hid] HID: hid-input: fix stylus battery reporting (Benjamin Tissoires) [1885560] - [hid] HID: roccat: add bounds checking in kone_sysfs_write_settings() (Benjamin Tissoires) [1885560] - [hid] HID: core: Sanitize event code and type when mapping input (Benjamin Tissoires) [1885560] - [hid] HID: core: Correctly handle ReportSize being zero (Benjamin Tissoires) [1885560] - [hid] HID: elan: Fix memleak in elan_input_configured (Benjamin Tissoires) [1885560] - [hid] HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices (Benjamin Tissoires) [1885560] - [hid] Revert "HID: usbhid: do not sleep when opening device" (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage() (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Always poll three more Lenovo PixArt mice (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands (Benjamin Tissoires) [1885560] - [hid] HID: macally: Constify macally_id_table (Benjamin Tissoires) [1885560] - [hid] HID: cougar: Constify cougar_id_table (Benjamin Tissoires) [1885560] - [hid] HID: quirks: add NOGET quirk for Logitech GROUP (Benjamin Tissoires) [1885560] - [hid] HID: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [1885560] - [hid] HID: udraw-ps3: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [1885560] - [hid] HID: input: Fix devices that return multiple bytes in battery report (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Fix spurious F23 key press report during resume from suspend (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard fn_lock support (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard support (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Rename fn_lock sysfs attr handlers to make them generic (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Factor out generic parts of the LED code (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Merge tpkbd and cptkbd data structures (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: avoid repeated "multiplier = " log messages (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Use HIDPP_RECEIVER_INDEX instead of 0xff (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: Replace PCI_DEV_FLAGS_NO_D3 with pci_save_state (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Ignore Simply Automated UPB PIM (Benjamin Tissoires) [1885560] - [hid] HID: apple: Disable Fn-key key-re-mapping on clone keyboards (Benjamin Tissoires) [1885560] - [hid] HID: Wiimote: Treat the d-pad as an analogue stick (Benjamin Tissoires) [1885560] - [hid] HID: steam: fixes race in handling device list (Benjamin Tissoires) [1885560] - [hid] HID: magicmouse: do not set up autorepeat (Benjamin Tissoires) [1885560] - [hid] HID: alps: support devices with report id 2 (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Always poll Obins Anne Pro 2 keyboard (Benjamin Tissoires) [1885560] - [hid] HID: input: do not run GET_REPORT unless there's a Resolution Multiplier (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Mediacom FlexBook edge13 to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: remove redundant assignment to variable retval (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: do not sleep when opening device (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: Remove MT_CLS_WIN_8_DUAL (Benjamin Tissoires) [1885560] - [hid] HID: sony: Fix for broken buttons on DS3 USB dongles (Benjamin Tissoires) [1885560] - [hid] HID: Add quirks for Trust Panora Graphic Tablet (Benjamin Tissoires) [1885560] - [hid] HID: apple: Swap the Fn and Left Control keys on Apple keyboards (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Schneider SCL142ALM to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: avoid bogus uninitialized-variable warning (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: reset Synaptics SYNA2393 on resume (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: Fix race between usbhid_close() and usbhid_stop() (Benjamin Tissoires) [1885560] - [hid] HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead (Benjamin Tissoires) [1885560] - [hid] HID: alps: Add AUI1657 device ID (Benjamin Tissoires) [1885560] - [hid] HID: fix typo in Kconfig (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add support for Logitech G11 extra keys (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: add eGalaxTouch P80H84 support (Benjamin Tissoires) [1885560] - [hid] HID: logitech: drop outdated references to unifying receivers (Benjamin Tissoires) [1885560] - [hid] HID: rmi: Simplify an error handling path in 'rmi_hid_read_block()' (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: hbm.h: Replace zero-length array with flexible-array member (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: ishtp-dev.h: Replace zero-length array with flexible-array member (Benjamin Tissoires) [1885560] - [hid] HID: Add driver fixing Glorious PC Gaming Race mouse report descriptor (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Do not fail the probe when we fail to disable F# emulation (Benjamin Tissoires) [1885560] - [hid] HID: fix Kconfig word ordering (Benjamin Tissoires) [1885560] - [hid] HID: add ALWAYS_POLL quirk to lenovo pixart mouse (Benjamin Tissoires) [1885560] - [hid] HID: google: add moonball USB id (Benjamin Tissoires) [1885560] - [hid] HID: appleir: Use devm_kzalloc() instead of kzalloc() (Benjamin Tissoires) [1885560] - [hid] HID: appleir: Remove unnecessary goto label (Benjamin Tissoires) [1885560] - [hid] HID: hid-sensor-custom: Use scnprintf() for avoiding potential buffer overflow (Benjamin Tissoires) [1885560] - [hid] HID: hid-picolcd_fb: Use scnprintf() for avoiding potential buffer overflow (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add support for the static device in the Powerplay mat/receiver (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: fix race condition for scheduled work during removal (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: call hid_hw_stop() in case of error (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: fix general protection fault caused by double kfree (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Trekstor Surfbook E11B to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: alps: Fix an error handling path in 'alps_input_configured()' (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: Fix race in in hiddev_disconnect() (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add debug msg when exporting a HID++ report descriptors (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Remove ITE 8595 entry from hid_have_special_driver (Benjamin Tissoires) [1885560] - [include] HID: core: increase HID report buffer size to 8KiB (Benjamin Tissoires) [1885560] - [hid] HID: core: fix off-by-one memset in hid_report_raw_event() (Benjamin Tissoires) [1885560] - [hid] HID: apple: Add support for recent firmware on Magic Keyboards (Benjamin Tissoires) [1885560] - [hid] HID: ite: Only bind to keyboard USB interface on Acer SW5-012 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: BatteryVoltage: only read chargeStatus if extPower is active (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: avoid duplicate error handling code in 'hidpp_probe()' (Benjamin Tissoires) [1885560] - [hid] HID: hidraw, uhid: Always report EPOLLOUT (Benjamin Tissoires) [1885560] - [hid] HID: steam: Fix input device disappearing (Benjamin Tissoires) [1885560] - [hid] hid-logitech-hidpp: read battery voltage from newer devices (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add MX Master 3 Mouse (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Support WirelessDeviceStatus connect events (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Support translations from short to long reports (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: fix mess in hiddev_open() (Benjamin Tissoires) [1885560] - [hid] HID: hid-input: clear unmapped usages (Benjamin Tissoires) [1885560] - [hid] HID: Add quirk for incorrect input length on Lenovo Y720 (Benjamin Tissoires) [1885560] - [hid] HID: ite: Add USB id match for Acer SW5-012 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: Add quirk for Xin-Mo Dual Controller (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: add support uniq ioctl (Benjamin Tissoires) [1885560] - [hid] HID: Fix slab-out-of-bounds read in hid_field_extract (Benjamin Tissoires) [1885560] - [hid] HID: picoLCD: constify fb ops (Benjamin Tissoires) [1885560] - [hid] HID: uhid: Fix returning EPOLLOUT from uhid_char_poll (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: Fix returning EPOLLOUT from hidraw_poll (Benjamin Tissoires) [1885560] - [hid] HID: rmi: Check that the RMI_STARTED bit is set before unregistering the RMI transport device (Benjamin Tissoires) [1885560] - [hid] HID: quirks: remove hid-led devices from hid_have_special_driver (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Reset ALPS touchpads on resume (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: fix no irq after reset on raydium 3118 (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Silence intermittent get_battery_capacity errors (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: remove orphaned member sleep_delay (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Add quirk for HP MSU1465 PIXART OEM mouse (Benjamin Tissoires) [1885560] - [hid] HID: core: check whether Usage Page item is after Usage ID items (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Send power-on command after reset (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Remove runtime power management (Benjamin Tissoires) [1885560] - [hid] HID: google: Detect base folded usage instead of hard-coding whiskers (Benjamin Tissoires) [1885560] - [hid] HID: google: add magnemite/masterball USB ids (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add depends on LEDS_CLASS to Logitech Kconfig entry (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the G510's M1-M3 and MR LEDs (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for controlling the G510's RGB backlight (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the G510 keyboards' gaming keys (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the M1-M3 and MR LEDs (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add keyboard and LCD backlight control (Benjamin Tissoires) [1885560] - [hid] HID: Add driver for Logitech gaming keyboards (G15, G15 v2) (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: replace printk() with corresponding pr_xx() variant (Benjamin Tissoires) [1885560] - [hid] HID: prodikeys: make array keys static const, makes object smaller (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: signal tablet mode on connect (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: signal tablet mode switch on disconnect (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: more robust tablet mode detection (Benjamin Tissoires) [1885560] - [hid] HID: core: fix dmesg flooding if report field larger than 32bit (Benjamin Tissoires) [1885560] - [include] HID: core: Add printk_once variants to hid_warn() etc (Benjamin Tissoires) [1885560] - [include] HID: core: reformat and reduce hid_printk macros (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: modify quirks for weida's devices (Benjamin Tissoires) [1885560] - [hid] hid-logitech-dj: add the new Lightspeed receiver (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add support of the G700(s) receiver (Benjamin Tissoires) [1885560] - [hid] HID: do not call hid_set_drvdata(hdev, NULL) in drivers (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: extend consumer usages range (Benjamin Tissoires) [1885560] - [hid] hiddev: Return EPOLLOUT from hiddev_poll (Benjamin Tissoires) [1885560] - [hid] hidraw: Return EPOLLOUT from hidraw_poll (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add nopnp quirk for Acer Aspire 5 A515 (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists (Benjamin Tissoires) [1885560] - [input] input: i8042 - Remove special Cayman handling (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - only increment wakeup count on touch (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add ic type 0x15 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add support for high resolution reports (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - do not constantly re-query pattern ID (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add firmware update info for ICs 0x11, 0x13, 0x14 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle firmware updated on newer ICs (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add support for different firmware page sizes (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - fix detecting IAP version on older controllers (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle devices with patterns above 1 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - make fetching IC type of older controllers more robust (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle firmware not implementing "get pattern" command (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Lenovo XiaoXin Air 12 to i8042 nomux list (Benjamin Tissoires) [1885560] - [input] Input: elantech - remove redundant assignments to variable error (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable InterTouch for ThinkPad X1E 1st gen (Benjamin Tissoires) [1885560] - [uapi] Input: add `SW_MACHINE_COVER` (Benjamin Tissoires) [1885560] - [input] input: i8042 - Remove special PowerPC handling (Benjamin Tissoires) [1885560] - [input] Input: synaptics - add a second working PNP_ID for Lenovo T470s (Benjamin Tissoires) [1885560] - [input] Input: introduce input_mt_report_slot_inactive() (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add ThinkPad S230u to i8042 reset list (Benjamin Tissoires) [1885560] - [input] Revert "Input: i8042 - add ThinkPad S230u to i8042 nomux list" (Benjamin Tissoires) [1885560] - [input] Input: i8042 - attach fwnode to serio i8042 kbd device (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add ThinkPad S230u to i8042 nomux list (Benjamin Tissoires) [1885560] - [uapi] Input: update SPDX tag for input-event-codes.h (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Acer Aspire 5738z to nomux list (Benjamin Tissoires) [1885560] - [uapi] Input: move the new KEY_SELECTIVE_SCREENSHOT keycode (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable RMI on HP Envy 13-ad105ng (Benjamin Tissoires) [1885560] - [uapi] Input: allocate keycode for "Selective Screenshot" key (Benjamin Tissoires) [1885560] - [input] Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable SMBus on ThinkPad L470 (Benjamin Tissoires) [1885560] - [input] Input: synaptics - switch T470s to RMI4 by default (Benjamin Tissoires) [1885560] - [input] Input: input_event - fix struct padding on sparc64 (Benjamin Tissoires) [1885560] - [uapi] Input: add privacy screen toggle keycode (Benjamin Tissoires) [1885560] - [input] Input: synaptics - switch another X1 Carbon 6 to RMI/SMbus (Benjamin Tissoires) [1885560] - [uapi] Input: Add event-codes for macro keys found on various keyboards (Benjamin Tissoires) [1885560] - [input] Input: i8042 - enable wakeup on a stable struct device (Benjamin Tissoires) [1885560] - [input] Input: psmouse - drop all unneeded functions from mouse headers (Benjamin Tissoires) [1885560] - [input] Input: remove dev_err() usage after platform_get_irq() (Benjamin Tissoires) [1885560] - [input] Input: synaptics - fix a typo (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - switch to using devm_add_action_or_reset() (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - switch to using devm_device_add_groups() (Benjamin Tissoires) [1885560] - [power] power: supply: core: Add Standard, Adaptive, and Custom charge types (Benjamin Tissoires) [1885560] - [scsi] scsi: mpt3sas: Fix timeouts observed while reenabling IRQ (Tomas Henzl) [1880114] - [fs] ext4: handle option set by mount flags correctly (Pavel Reichl) [1848084] - [fs] xfs: preserve inode versioning across remounts (Pavel Reichl) [1848084] - [kernel] kheaders: explain why include/config/autoconf.h is excluded from md5sum (Jiri Olsa) [1899585] - [kernel] kheaders: remove the last bashism to allow sh to run it (Jiri Olsa) [1899585] - [kernel] kheaders: optimize header copy for in-tree builds (Jiri Olsa) [1899585] - [kernel] kheaders: optimize md5sum calculation for in-tree builds (Jiri Olsa) [1899585] - [kernel] kheaders: remove unneeded 'cat' command piped to 'head' / 'tail' (Jiri Olsa) [1899585] - [kernel] kheaders: substituting --sort in archive creation (Jiri Olsa) [1899585] - [kernel] kheaders: make headers archive reproducible (Jiri Olsa) [1899585] - [kernel] kheaders: include only headers into kheaders_data.tar.xz (Jiri Olsa) [1899585] - [kernel] kheaders: remove meaningless -R option of 'ls' (Jiri Olsa) [1899585] - [kernel] kheaders: Do not regenerate archive if config is not changed (Jiri Olsa) [1899585] - [kernel] kheaders: Move from proc to sysfs (Jiri Olsa) [1899585] - [kernel] kernel/Makefile: don't assume that kernel/gen_ikh_data.sh is executable (Jiri Olsa) [1899585] - [init] init/config: Do not select BUILD_BIN2C for IKCONFIG (Jiri Olsa) [1899585] - [kernel] Provide in-kernel headers to make extending kernel easier (Jiri Olsa) [1899585] - [tty] pty: do tty_flip_buffer_push without port->lock in pty_write (Artem Savkov) [1787975] - [virtio] virtio_balloon: fix sparse warning (Nico Pache) [1839055] - [virtio] virtio_balloon: fix up endian-ness for free cmd id (Nico Pache) [1839055] - [virtio] virtio-balloon: Document byte ordering of poison_val (Nico Pache) [1839055] - [virtio] virtio-mmio: Reject invalid IRQ 0 command line argument (Nico Pache) [1839055] - [virtio] virtio-balloon: Disable free page reporting if page poison reporting is not enabled (Nico Pache) [1839055] - [virtio] virtio-mmio: Delete an error message in vm_find_vqs() (Nico Pache) [1839055] - [virtio] virtio: add VIRTIO_RING_NO_LEGACY (Nico Pache) [1839055] - [virtio] virtio-balloon: Avoid using the word 'report' when referring to free page hinting (Nico Pache) [1839055] - [virtio] virtio-balloon: make virtballoon_free_page_report() static (Nico Pache) [1839055] - [virtio] virtio-balloon: switch back to OOM handler for VIRTIO_BALLOON_F_DEFLATE_ON_OOM (Nico Pache) [1839055] - [documentation] mm/page_reporting: add free page reporting documentation (Nico Pache) [1839055] - [mm] mm/page_reporting: add budget limit on how many pages can be reported per pass (Nico Pache) [1839055] - [mm] mm/page_reporting: rotate reported pages to the tail of the list (Nico Pache) [1839055] - [virtio] virtio-balloon: add support for providing free page reports to host (Nico Pache) [1839055] - [virtio] virtio-balloon: pull page poisoning config out of free page hinting (Nico Pache) [1839055] - [mm] mm: introduce Reported pages (Nico Pache) [1839055] - [mm] mm: add function __putback_isolated_page (Nico Pache) [1839055] - [mm] mm: use zone and order instead of free area in free_list manipulators (Nico Pache) [1839055] - [mm] mm: adjust shuffle code to allow for future coalescing (Nico Pache) [1839055] - [virtio] virtio_balloon: Adjust label in virtballoon_probe (Nico Pache) [1839055] - [virtio] virtio_ring: Fix mem leak with vring_new_virtqueue() (Nico Pache) [1839055] - [virtio] virtio_balloon: Fix memory leaks on errors in virtballoon_probe() (Nico Pache) [1839055] - [virtio] virtio-balloon: Fix memory leak when unloading while hinting is in progress (Nico Pache) [1839055] - [virtio] virtio_balloon: prevent pfn array overflow (Nico Pache) [1839055] - [virtio] virtio-pci: check name when counting MSI-X vectors (Nico Pache) [1839055] - [virtio] virtio-balloon: initialize all vq callbacks (Nico Pache) [1839055] - [virtio] virtio-mmio: convert to devm_platform_ioremap_resource (Nico Pache) [1839055] - [virtio] virtio_balloon: divide/multiply instead of shifts (Nico Pache) [1839055] - [virtio] virtio_balloon: name cleanups (Nico Pache) [1839055] - [virtio] virtio_balloon: fix shrinker count (Nico Pache) [1839055] - [virtio] virtio_balloon: fix shrinker scan number of pages (Nico Pache) [1839055] - [virtio] virtio-mmio: add error check for platform_get_irq (Nico Pache) [1839055] - [virtio] virtio: Fix indentation of VIRTIO_MMIO (Nico Pache) [1839055] - [virtio] virtio/virtio_ring: do some comment fixes (Nico Pache) [1839055] - [virtio] virtio_pci: fix a NULL pointer reference in vp_del_vqs (Nico Pache) [1839055] - [virtio] virtio: hint if callbacks surprisingly might sleep (Nico Pache) [1839055] - [virtio] virtio_balloon: remove the unnecessary 0-initialization (Nico Pache) [1839055] - [virtio] virtio-balloon: improve update_balloon_size_func (Nico Pache) [1839055] - [virtio] virtio-balloon: tweak config_changed implementation (Nico Pache) [1839055] - [misc] virtio: don't allocate vqs when names= NULL (Nico Pache) [1839055] - [virtio] virtio_pci: use queue idx instead of array idx to set up the vq (Nico Pache) [1839055] - [virtio] virtio: remove deprecated VIRTIO_PCI_CONFIG() (Nico Pache) [1839055] - [mm] mm/page_poison: expose page_poisoning_enabled to kernel modules (Nico Pache) [1839055] - [virtio] virtio-balloon: VIRTIO_BALLOON_F_PAGE_POISON (Nico Pache) [1839055] - [virtio] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_HINT (Nico Pache) [1839055] - [virtio] virtio: pci-legacy: Validate queue pfn (Nico Pache) [1839055] - [virtio] virtio: mmio-v1: Validate queue PFN (Nico Pache) [1839055] - [virtio] virtio_balloon: replace oom notifier with shrinker (Nico Pache) [1839055] - [virtio] virtio-balloon: kzalloc the vb struct (Nico Pache) [1839055] - [virtio] virtio-balloon: remove BUG() in init_vqs (Nico Pache) [1839055] - [mm] mm, debug_pagealloc: use a page type instead of page_ext flag (Nico Pache) [1839055] - [mm] mm, page_alloc: more extensive free page checking with debug_pagealloc (Nico Pache) [1839055] - [mm] mm, debug_pagelloc: use static keys to enable debugging (Nico Pache) [1839055] - [include] include/linux/page_ext.h: drop definition of unused PAGE_EXT_DEBUG_POISON (Nico Pache) [1839055] - [tty] vt: vt_ioctl: fix use-after-free in vt_in_use() (Vladis Dronov) [1875585] - [tty] vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console (Vladis Dronov) [1875585] - [tty] vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines (Vladis Dronov) [1875585] - [tty] vt: selection, introduce vc_is_sel (Vladis Dronov) [1875585] - [fs] gfs2: Don't sleep during glock hash walk (Andreas Grunbacher) [1871173]- [powerpc] powerpc/64s/hash: Fix hash_preload running with interrupts enabled (Diego Domingos) [1884152] - [powerpc] powerpc/pseries: Avoid using addr_to_pfn in real mode (Diego Domingos) [1822675] - [powerpc] powerpc/pseries: Handle UE event for memcpy_mcsafe (Diego Domingos) [1822675] - [powerpc] powerpc/pseries: Fix MCE handling on pseries (Diego Domingos) [1822675] - [powerpc] powerpc/64s/pseries: machine check convert to use common event code (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Print additional information about MCE error (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Print correct severity for MCE error (Diego Domingos) [1822675] - [powerpc] powerpc/64s: Report SLB multi-hit rather than parity error (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Reduce MCE console logs to lesser lines (Diego Domingos) [1822675] - [powerpc] powerpc/pseries/mce: Improve array initialization (Diego Domingos) [1822675] - [powerpc] powerpc/pseries/mce: Fix misleading print for TLB mutlihit (Diego Domingos) [1822675] - [netdrv] i40e: fix crash when Rx descriptor count is changed (Jiri Benc) [1882708] - [netdrv] virtio_net: Fix out of bounds access of sq (Jiri Benc) [1882708] - [tools] tools/bpftool: Fix attaching flow dissector (Jiri Benc) [1882708] - [docs] bpf: Use valid and new links in index.rst (Jiri Benc) [1882708] - [netdrv] netdevsim: fix unbalaced locking in nsim_create() (Jiri Benc) [1882708] - [net] bpfilter: Allow to build bpfilter_umh as a module without static library (Jiri Benc) [1882708] - [net] bpf, netns: Fix use-after-free in pernet pre_exit callback (Jiri Benc) [1882708] - [net] xsk: Use dma_need_sync instead of reimplenting it (Jiri Benc) [1882708] - [net] xsk: Remove a double pool->dev assignment in xp_dma_map (Jiri Benc) [1882708] - [net] xsk: Replace the cheap_dma flag with a dma_need_sync flag (Jiri Benc) [1882708] - [net] dma-mapping: Add a new dma_need_sync API (Jiri Benc) [1882708] - [tools] selftests: bpf: Pass program to bpf_prog_detach in flow_dissector (Jiri Benc) [1882708] - [tools] selftests: bpf: Pass program and target_fd in flow_dissector_reattach (Jiri Benc) [1882708] - [net] bpf: flow_dissector: Check value of unused flags to BPF_PROG_DETACH (Jiri Benc) [1882708] - [net] bpf: flow_dissector: Check value of unused flags to BPF_PROG_ATTACH (Jiri Benc) [1882708] - [tools] libbpf: Adjust SEC short cut for expected attach type BPF_XDP_DEVMAP (Jiri Benc) [1882708] - [tools] selftests/bpf: Test updating flow_dissector link with same program (Jiri Benc) [1882708] - [net] bpf, netns: Keep a list of attached bpf_link's (Jiri Benc) [1882708] - [net] bpf, netns: Keep attached programs in bpf_prog_array (Jiri Benc) [1882708] - [net] flow_dissector: Pull BPF program assignment up to bpf-netns (Jiri Benc) [1882708] - [tools] libbpf: Fix CO-RE relocs against .text section (Jiri Benc) [1882708] - [tools] selftests/bpf: Move newer bpf_iter_* type redefining to a new header file (Jiri Benc) [1882708] - [net] xdp: Handle frame_sz in xdp_convert_zc_to_xdp_frame() (Jiri Benc) [1882708] - [net] xdp: Fix xsk_generic_xmit errno (Jiri Benc) [1882708] - [tools] bpf: Selftests and tools use struct bpf_devmap_val from uapi (Jiri Benc) [1882708] - [net] xdp: use shift instead of 64 bit division (Jiri Benc) [1882708] - [net] bpf: Fix unused-var without NETDEVICES (Jiri Benc) [1882708] - [net] seg6: fix seg6_validate_srh() to avoid slab-out-of-bounds (Jiri Benc) [1882708] - [net] seg6: fix SRH processing to comply with RFC8754 (Jiri Benc) [1882708] - [tools] selftests/bpf: Extend test_flow_dissector to cover link creation (Jiri Benc) [1882708] - [tools] selftests/bpf: Convert test_flow_dissector to use BPF skeleton (Jiri Benc) [1882708] - [tools] selftests/bpf, flow_dissector: Close TAP device FD after the test (Jiri Benc) [1882708] - [tools] selftests/bpf: Add tests for attaching bpf_link to netns (Jiri Benc) [1882708] - [tools] bpftool: Support link show for netns-attached links (Jiri Benc) [1882708] - [tools] bpftool: Extract helpers for showing link attach type (Jiri Benc) [1882708] - [tools] libbpf: Add support for bpf_link-based netns attachment (Jiri Benc) [1882708] - [net] bpf: Add link-based BPF program attachment to network namespace (Jiri Benc) [1882708] - [net] flow_dissector: Move out netns_bpf prog callbacks (Jiri Benc) [1882708] - [net] Introduce netns_bpf for BPF programs attached to netns (Jiri Benc) [1882708] - [net] flow_dissector: Pull locking up from prog attach callback (Jiri Benc) [1882708] - [net] bpf: Allow SO_BINDTODEVICE opt in bpf_setsockopt (Jiri Benc) [1882708] - [net] Make locking in sock_bindtoindex optional (Jiri Benc) [1882708] - [net] add sock_bindtoindex (Jiri Benc) [1882708] - [tools] selftest: Add tests for XDP programs in devmap entries (Jiri Benc) [1882708] - [net] xdp: Add xdp_txq_info to xdp_buff (Jiri Benc) [1882708] - [net] xdp: Introduce xdp_convert_frame_to_buff utility routine (Jiri Benc) [1882708] - [net] maintainers: Adjust entry in XDP SOCKETS to actual file name (Jiri Benc) [1882708] - [net] maintainers, xsk: Update AF_XDP section after moves/adds (Jiri Benc) [1882708] - [net] xsk: Explicitly inline functions and move definitions (Jiri Benc) [1882708] - [net] xdp: Simplify xdp_return_{frame, frame_rx_napi, buff} (Jiri Benc) [1882708] - [net] xsk: Remove MEM_TYPE_ZERO_COPY and corresponding code (Jiri Benc) [1882708] - [netdrv] mlx5, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] ixgbe, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] ice, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] i40e, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] i40e: Separate kernel allocated rx_bi rings from AF_XDP rings (Jiri Benc) [1882708] - [netdrv] i40e: Refactor rx_bi accesses (Jiri Benc) [1882708] - [net] xsk: Introduce AF_XDP buffer allocation API (Jiri Benc) [1867206 1882708] - [net] xsk: Move defines only used by AF_XDP internals to xsk.h (Jiri Benc) [1882708] - [net] xsk: Move driver interface to xdp_sock_drv.h (Jiri Benc) [1882708] - [net] xsk: Move xskmap.c to net/xdp/ (Jiri Benc) [1882708] - [net] xsk: Fix xsk_umem_xdp_frame_sz() (Jiri Benc) [1882708] - [tools] selftests/bpf: Convert bpf_iter_test_kern{3, 4}.c to define own bpf_iter_meta (Jiri Benc) [1882708] - [tools] selftest/bpf: Make bpf_iter selftest compilable against old vmlinux.h (Jiri Benc) [1882708] - [net] bpf: Fix too large copy from user in bpf_test_init (Jiri Benc) [1882708] - [tools] selftests/bpf: Xdp_adjust_tail add grow tail tests (Jiri Benc) [1882708] - [tools] selftests/bpf: Adjust BPF selftest for xdp_adjust_tail (Jiri Benc) [1882708] - [net] bpf: Add xdp.frame_sz in bpf_prog_test_run_xdp(). (Jiri Benc) [1882708] - [net] xdp: Clear grow memory in bpf_xdp_adjust_tail() (Jiri Benc) [1882708] - [net] xdp: Allow bpf_xdp_adjust_tail() to grow packet size (Jiri Benc) [1882708] - [netdrv] mlx5: Rx queue setup time determine frame_sz for XDP (Jiri Benc) [1882708] - [netdrv] xdp: For Intel AF_XDP drivers add XDP frame_sz (Jiri Benc) [1882708] - [netdrv] ice: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] i40e: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] ixgbevf: Add XDP frame size to VF driver (Jiri Benc) [1882708] - [netdrv] ixgbe: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP frame size in two code paths (Jiri Benc) [1882708] - [netdrv] vhost_net: Also populate XDP frame size (Jiri Benc) [1882708] - [netdrv] tun: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] nfp: Add XDP frame size to netronome driver (Jiri Benc) [1882708] - [netdrv] net: thunderx: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] mlx4: Add XDP frame size and adjust max XDP MTU (Jiri Benc) [1882708] - [netdrv] qlogic/qede: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] hv_netvsc: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] veth: Xdp using frame_sz in veth driver (Jiri Benc) [1882708] - [netdrv] veth: Adjust hard_start offset on redirect XDP frames (Jiri Benc) [1882708] - [net] xdp: Cpumap redirect use frame_sz and increase skb_tailroom (Jiri Benc) [1882708] - [net] xdp: Xdp_frame add member frame_sz and handle in convert_to_xdp_frame (Jiri Benc) [1882708] - [net] XDP-generic determining XDP frame size (Jiri Benc) [1882708] - [netdrv] sfc: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] bnxt: Add XDP frame size to driver (Jiri Benc) [1882708] - [net] xdp: Add frame size to xdp_buff (Jiri Benc) [1867209 1882708] - [net] bpfilter: switch to kernel_write (Jiri Benc) [1882708] - [tools] bpf: selftests: Add bpf_iter selftests (Jiri Benc) [1882708] - [tools] bpf: selftests: Add iterator programs for ipv6_route and netlink (Jiri Benc) [1882708] - [net] bpf: Enable bpf_iter targets registering ctx argument types (Jiri Benc) [1882708] - [net] bpf: Change func bpf_iter_unreg_target() signature (Jiri Benc) [1882708] - [net] bpf: Refactor bpf_iter target registration (Jiri Benc) [1882708] - [net] bpf: Add netlink and ipv6_route bpf_iter targets (Jiri Benc) [1882708] - [net] bpfilter: check if $(CC) can link static libc in Kconfig (Jiri Benc) [1882708] - [net] bpfilter: document build requirements for bpfilter_umh (Jiri Benc) [1882708] - [net] xsk: Remove unnecessary member in xdp_umem (Jiri Benc) [1882708] - [net] xsk: Change two variable names for increased clarity (Jiri Benc) [1882708] - [net] bpfilter: match bit size of bpfilter_umh to that of the kernel (Jiri Benc) [1882708] - [docs] networking: convert filter.txt to ReST (Jiri Benc) [1882708] - [net] xsk: Fix typo in xsk_umem_consume_tx and xsk_generic_xmit comments (Jiri Benc) [1882708] - [net] introduce SO_BINDTOIFINDEX sockopt (Jiri Benc) [1882708] - [net] netlink: Use sizeof_field() macro (Jiri Benc) [1882708] - [net] xdp: Add SPDX license identifier - Makefile/Kconfig (Jiri Benc) [1882708] - [net] bpfilter: prefix header search paths with $(srctree)/ (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP meta data support (Jiri Benc) [1882708] - [netdrv] virtio_net: Keep vnet header zeroed if XDP is loaded for small buffer (Jiri Benc) [1882708] - [netdrv] virtio-net: keep vnet header zeroed after processing XDP (Jiri Benc) [1882708] - [netdrv] virtio-net: get rid of unnecessary container of rq stats (Jiri Benc) [1882708] - [netdrv] virtio-net: correctly update XDP_TX counters (Jiri Benc) [1882708] - [netdrv] virtio_net: Add kick stats (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP related stats (Jiri Benc) [1882708] - [netdrv] virtio_net: Factor out the logic to determine xdp sq (Jiri Benc) [1882708] - [netdrv] virtio_net: Make drop counter per-queue (Jiri Benc) [1882708] - [netdrv] virtio_net: Use temporary storage for accounting rx stats (Jiri Benc) [1882708] - [netdrv] bnx2: mark driver deprecated (Jonathan Toppins) [1878183] - [net] openvswitch: silence suspicious RCU usage warning (Eelco Chaudron) [1895862] - [net] openswitch: reuse the helper variable to improve the code readablity (Eelco Chaudron) [1895862] - [net] openvswitch: remove unused keep_flows (Eelco Chaudron) [1895862] - [net] openvswitch: refactor flow free function (Eelco Chaudron) [1895862] - [net] openvswitch: improve the coding style (Eelco Chaudron) [1895862] - [net] openvswitch: use skb_list_walk_safe helper for gso segments (Eelco Chaudron) [1895862] - [net] openvswitch: do not update max_headroom if new headroom is equal to old headroom (Eelco Chaudron) [1895862] - [net] openvswitch: drop unneeded likely() call around IS_ERR() (Eelco Chaudron) [1895862] - [net] openvswitch: convert to kvmalloc (Eelco Chaudron) [1895862] - [infiniband] RDMA/rxe: Mark Soft-RoCE driver as unsupported (Kamal Heib) [1878207] - [net] netfilter: nf_log: missing vlan offload tag and proto (Florian Westphal) [1889990] - [net] ipvs: clear skb->tstamp in forwarding path (Florian Westphal) [1889990] - [net] netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid (Florian Westphal) [1889990] - [net] netfilter: ctnetlink: add a range check for l3/l4 protonum (Florian Westphal) [1889990] {CVE-2020-25211} - [net] netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS (Florian Westphal) [1889990] - [net] netfilter: nf_tables: fix destination register zeroing (Florian Westphal) [1889990] - [net] netfilter: nf_tables: add NFTA_SET_USERDATA if not null (Florian Westphal) [1889990] - [net] netfilter: flowtable: Set offload timeout when adding flow (Florian Westphal) [1889990] - [net] netfilter: conntrack: Move nf_ct_offload_timeout to header file (Florian Westphal) [1889990] - [net] netfilter: nft_set_rbtree: Handle outcomes of tree rotations in overlap detection (Florian Westphal) [1889990] - [net] netfilter: nf_tables: nft_exthdr: the presence return value should be little-endian (Florian Westphal) [1889990] - [net] netfilter: nft_set_pipapo: Drop useless assignment of scratch map index on insert (Florian Westphal) [1889990] - [net] netfilter: arp_tables: init netns pointer in xt_tgdtor_param struct (Florian Westphal) [1889990] - [net] netfilter: arp_tables: init netns pointer in xt_tgchk_param struct (Florian Westphal) [1889990] - [net] ipvs: do not schedule icmp errors from tunnels (Florian Westphal) [1889990] - [powercap] powercap: intel_rapl: add support for Sapphire Rapids (Steve Best) [1837373] - [powercap] powercap/intel_rapl: add support for RocketLake (Steve Best) [1782715] - [char] ipmi: Use fallthrough pseudo-keyword (Tony Camuso) [1877848] - [char] ipmi/watchdog: add missing newlines when printing parameters by sysfs (Tony Camuso) [1877848] - [char] ipmi: remve duplicate code in __ipmi_bmc_register() (Tony Camuso) [1877848] - [documentation] docs: ipmi: Replace HTTP links with HTTPS ones (Tony Camuso) [1877848] - [char] ipmi: ssif: Remove finished TODO comment about SMBus alert (Tony Camuso) [1877848] - [documentation] Doc: driver-api: ipmi: Add description of alerts_broken module param (Tony Camuso) [1877848] - [char] ipmi:ssif: Remove dynamic platform device handing (Tony Camuso) [1877848] - [char] Try to load acpi_ipmi when an SSIF ACPI IPMI interface is added (Tony Camuso) [1877848] - [char] ipmi_si: Load acpi_ipmi when ACPI IPMI interface added (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Fix error handling and status check (Tony Camuso) [1877848] - [char] ipmi: Replace guid_copy() with import_guid() where it makes sense (Tony Camuso) [1877848] - [char] ipmi: use vzalloc instead of kmalloc for user creation (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Fix some format issue of the code (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Avoid unnecessary check (Tony Camuso) [1877848] - [char] docs: fix references for ipmi.rst file (Tony Camuso) [1877848] - [documentation] docs: move IPMI.txt to the driver API book (Tony Camuso) [1877848]- [powerpc] pseries: Fix 64 bit logical memory block panic (Steve Best) [1894922] - [mm] powerpc/book3s64/radix: Make radix_mem_block_size 64bit (Steve Best) [1894922] - [powerpc] powerpc/64s/radix: Fix build failure with RADIX_MMU=n (Steve Best) [1894922] - [x86] kvm: mmu: fix is_tdp_mmu_check when the TDP MMU is not in use (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: svm: Update cr3_lm_rsvd_bits for AMD SEV guests (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: Introduce cr3_lm_rsvd_bits in kvm_vcpu_arch (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: clflushopt should be treated as a no-op by emulation (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: handle MSR_IA32_DEBUGCTLMSR with report_ignored_msrs (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: request masterclock update any time guest uses different msr (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: ensure pv_cpuid.features is initialized when enabling cap (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: reads of restricted pv msrs should also result in #GP (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: use positive error values for msr emulation that causes #GP (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86/mmu: fix counting of rmap entries in pte_list_add (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: bump KVM_MAX_CPUID_ENTRIES (Vitaly Kuznetsov) [1898914 1878097] - [x86] vmxfeatures: rename features for consistency with KVM and manual (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: vmx: Add VMX_FEATURE_USR_WAIT_PAUSE (Vitaly Kuznetsov) [1878097 1898914] - [x86] Expose SERIALIZE for supported cpuid (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: x86: Expose fast short REP MOV for supported cpuid (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: x86: Expose AVX512 VP2INTERSECT in cpuid for TGL (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: Convert to new CPU match macros (Vitaly Kuznetsov) [1878097 1898914] - [documentation] docs: kvm: fix referenced ioctl symbol (Vitaly Kuznetsov) [1878097 1898914] - [documentation] docs: kvm: api.rst: add missing spaces (Vitaly Kuznetsov) [1878097 1898914] - [virt] kvm: use struct_size() and flex_array_size() helpers in kvm_io_bus_unregister_dev() (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix a typo (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix some typos in cpuid.rst (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix a typo (Vitaly Kuznetsov) [1878097 1898914] - [x86] x86/cpu: Fix typos and improve the comments in sync_core() (David Arcari) [1837457] - [x86] x86/cpu: Use SERIALIZE in sync_core() when available (David Arcari) [1837457] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (David Arcari) [1837457] - [x86] x86/cpufeatures: Add enumeration for SERIALIZE instruction (David Arcari) [1837457] - [x86] x86/cpu: Refactor sync_core() for readability (David Arcari) [1837457] - [x86] x86/cpu: Relocate sync_core() to sync_core.h (David Arcari) [1837457] - [arm64] kvm: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception (Auger Eric) [1882794] - [arm64] kvm: arm64: Survive synchronous exceptions caused by AT instructions (Auger Eric) [1882794] - [arm64] kvm: arm64: Add kvm_extable for vaxorcism code (Auger Eric) [1882794] - [arm64] kvm: arm64: Print warning when cpu erratum can cause guests to deadlock (Auger Eric) [1882794] - [arm64] kvm: arm64: clean up redundant 'kvm_run' parameters (Auger Eric) [1882794] - [arm64] kvm: arm64: Use common KVM implementation of MMU memory caches (Auger Eric) [1882794] - [arm64] kvm: arm64: Use common code's approach for __GFP_ZERO with memory caches (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop @max param from mmu_topup_memory_cache() (Auger Eric) [1882794] - [arm64] s/AMEVTYPE/AMEVTYPER (Auger Eric) [1882794] - [arm64] kvm: arm64: bti: Reset BTYPE when skipping emulated instructions (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove S1PTW check from kvm_vcpu_dabt_iswrite() (Auger Eric) [1882794] - [arm64] kvm: arm64: Assume write fault on S1PTW permission fault on instruction fetch (Auger Eric) [1882794] - [arm64] kvm: arm64: Update page shift if stage 2 block mapping not supported (Auger Eric) [1882794] - [arm64] kvm: arm64: Fix address truncation in traces (Auger Eric) [1882794] - [arm64] kvm: arm64: Do not try to map PUDs when they are folded into PMD (Auger Eric) [1882794] - [documentation] arm64/x86: kvm: Introduce steal-time cap (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Fix stolen time accounting across migration (Auger Eric) [1882794] - [kernel] kvm: arm64: Drop type input from kvm_put_guest (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Fix potential loss of stolen time (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: steal-time is only supported when configured (Auger Eric) [1882794] - [arm64] kvm: arm64: Move S1PTW S2 fault logic out of io_mem_abort() (Auger Eric) [1882794] - [arm64] kvm: arm64: Don't skip cache maintenance for read-only memslots (Auger Eric) [1882794] - [arm64] kvm: arm64: Handle data and instruction external aborts the same way (Auger Eric) [1882794] - [arm64] kvm: arm64: Rename kvm_vcpu_dabt_isextabt() (Auger Eric) [1882794] - [trace] kvm: arm: Add trace name for ARM_NISV (Auger Eric) [1882794] - [arm64] kvm: arm64: Ensure that all nVHE hyp code is in .hyp.text (Auger Eric) [1882794] - [arm64] kvm: arm64: Don't use has_vhe() for CHOOSE_HYP_SYM() (Auger Eric) [1882794] - [arm64] kvm: arm64: timers: Move timer registers to the sys_regs file (Auger Eric) [1882794] - [arm64] kvm: arm64: timers: Rename kvm_timer_sync_hwstate to kvm_timer_sync_user (Auger Eric) [1882794] - [arm64] kvm: arm64: Move SPSR_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Disintegrate SPSR array (Auger Eric) [1882794] - [arm64] kvm: arm64: Move SP_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Move ELR_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Make struct kvm_regs userspace-only (Auger Eric) [1882794] - [arm64] kvm: arm64: debug: Drop useless vpcu parameter (Auger Eric) [1882794] - [arm64] kvm: arm64: pauth: Use ctxt_sys_reg() instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: sve: Use __vcpu_sys_reg() instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: hyp: Use ctxt_sys_reg/__vcpu_sys_reg instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: Introduce accessor for ctxt->sys_reg (Auger Eric) [1882794] - [arm64] kvm: arm64: Rename HSR to ESR (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop long gone function parameter documentation (Auger Eric) [1882794] - [arm64] kvm: arm64: vgic-its: Change default outer cacheability for {PEND, PROP}BASER (Auger Eric) [1882794] - [arm64] kvm: arm64: Lift instrumentation restrictions on VHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove __hyp_text macro, use build rules instead (Auger Eric) [1882794] - [arm64] kvm: arm64: Compile remaining hyp/ files for both VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Duplicate hyp/timer-sr.c for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/sysreg-sr.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/debug-sr.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/switch.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Duplicate hyp/tlb.c for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Move hyp-init.S to nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Build hyp-entry.S separately for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Handle calls to prefixed hyp functions (Auger Eric) [1882794] - [arm64] kvm: arm64: Use build-time defines in has_vhe() (Auger Eric) [1882794] - [arm64] kvm: arm64: Add build rules for separate VHE/nVHE object files (Auger Eric) [1882794] - [arm64] kvm: arm64: Move __smccc_workaround_1_smc to .rodata (Auger Eric) [1882794] - [arm64] kvm: arm64: Fix symbol dependency in __hyp_call_panic_nvhe (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove the target table (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove target_table from exit handlers (Auger Eric) [1882794] - [arm64] kvm: arm64: Move ACTLR_EL1 emulation to the sys_reg_descs array (Auger Eric) [1882794] - [arm64] kvm: arm64: Tolerate an empty target_table list (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop the target_table[] indirection (Auger Eric) [1882794] - [arm64] kvm: Remove kern_hyp_va from get_vcpu_ptr (Auger Eric) [1882794] - [arm64] kvm: arm64: Allow in-atomic injection of SPIs (Auger Eric) [1882794] - [arm64] kvm: arm64: Add emulation for 32bit guests accessing ACTLR2 (Auger Eric) [1882794] - [arm64] kvm: arm64: Use cpus_have_final_cap for has_vhe() (Auger Eric) [1882794] - [arm64] efi: Move variable assignments after SECTIONS (Auger Eric) [1882794] - [arm64] efi: Mark __efistub_stext_offset as an absolute symbol explicitly (Auger Eric) [1882794] - [arm64] drop linker script hack to hide __efistub_ symbols (Auger Eric) [1882794] - [arm64] kvm: arm64: Synchronize sysreg state on injecting an AArch32 exception (Auger Eric) [1882794] - [arm64] kvm: arm64: Make vcpu_cp1x() work on Big Endian hosts (Auger Eric) [1882794] - [arm64] kvm: arm64: Stop sparse from moaning at __hyp_this_cpu_ptr (Auger Eric) [1882794] - [arm64] kvm: arm64: Check advertised Stage-2 page size capability (Auger Eric) [1882794] - [arm64] cpufeature: Don't treat granule sizes as strict (Auger Eric) [1882794] - [arm64] cpufeature: Validate hypervisor capabilities during CPU hotplug (Auger Eric) [1882794] - [arm64] kvm: hyp: use cpus_have_final_cap() (Auger Eric) [1882794] - [arm64] cpufeature: add cpus_have_final_cap() (Auger Eric) [1882794] - [arm64] mark (__)cpus_have_const_cap as __always_inline (Auger Eric) [1882794] - [arm64] Mark call_smc_arch_workaround_1 as __maybe_unused (Auger Eric) [1882794] - [arm64] Make use of ARCH_WORKAROUND_1 even when KVM is not enabled (Auger Eric) [1882794] - [arm64] kvm: arm64: Delete duplicated label in invalid_vector (Auger Eric) [1882794] - [arm64] use mov_q instead of literal ldr (Auger Eric) [1882794] - [arm64] kvm: Modernize __smccc_workaround_1_smc_start annotations (Auger Eric) [1882794] - [arm64] kvm: Modernize annotation for __bp_harden_hyp_vecs (Auger Eric) [1882794] - [arm64] kvm: Annotate assembly using modern annoations (Auger Eric) [1882794] - [arm64] kvm: arm64: Prevent vcpu_has_ptrauth from generating OOL functions (Auger Eric) [1882794] - [arm64] kvm: disable access to AMU registers from kvm guests (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Ensure task delay accounting is enabled (Auger Eric) [1882794] - [arm64] kvm: arm64: Stop writing aarch32's CSSELR into ACTLR (Auger Eric) [1882794] - [arm64] kvm: Annotate guest entry/exit as a single function (Auger Eric) [1882794] - [kernel] linkage: Introduce new macros for assembler symbols (Auger Eric) [1882794] - [s390] kvm: s390: remove diag318 reset code (Thomas Huth) [1899497] - [powerpc] powerpc/hv-gpci: Add sysfs files inside hv-gpci device to show cpumask (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-gpci: Add cpu hotplug support (Michael Petlan) [1844416] - [documentation] Documentation/ABI: Add ABI documentation for hv-gpci format (Michael Petlan) [1844416] - [documentation] Documentation/ABI: Add ABI documentation for hv-24x7 format (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-gpci: Fix starting index value (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-24x7: Move cpumask file to top folder of hv-24x7 driver (Michael Petlan) [1844416] - [powerpc] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show cpumask (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-24x7: Add cpu hotplug support (Michael Petlan) [1844416] - [powerpc] powerpc/perf: Fix reading of MSRbits in trace-imc (Michael Petlan) [1854536] - [powerpc] powerpc/perf: Add kernel support for new MSRbits in trace-imc (Michael Petlan) [1854536] - [documentation] kdump: update kdump documentation due to change of crash URL (Lianbo Jiang) [1896236] - [pinctrl] pinctrl: intel: Add Intel Emmitsburg pin controller support (David Arcari) [1837409] - [x86] x86/platform/uv: Fix copied UV5 output archtype (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Drop last traces of uv_flush_tlb_others (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Recognize UV5 hubless system identifier (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove spaces from OEM IDs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Fix missing OEM_TABLE_ID (Frank Ramsay) [1861439] - [misc] x86/platform/uv: Update Copyrights to conform to HPE standards (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update for UV5 NMI MMR changes (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV5 TSC checking (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update node present counting (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV5 MMR references in UV GRU (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Adjust GAM MMR references affected by UV5 updates (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update MMIOH references based on new UV5 MMRs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Add and decode Arch Type in UVsystab (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Add UV5 direct references (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV MMRs for UV5 (Frank Ramsay) [1861439] - [misc] drivers/misc/sgi-xp: Adjust references in UV kernel modules (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove SCIR MMR references for UV systems (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove UV BAU TLB Shootdown Handler (Frank Ramsay) [1861439] - [x86] x86/kernel: Fix more -Wmissing-prototypes warnings (Frank Ramsay) [1861439] - [x86] x86/apic/uv: Avoid unused variable warning (Frank Ramsay) [1861439] - [misc] misc: sgi-xp: xp_main: Staticify local functions xp_init() and xp_exit() (Frank Ramsay) [1861439] - [misc] misc/sgi-xp: remove SGI SN2 support (Frank Ramsay) [1861439] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Frank Ramsay) [1861439] - [x86] efi/x86: Remove unreachable code in kexec_enter_virtual_mode() (Frank Ramsay) [1861439] - [x86] x86/efi: Remove unused EFI_UV1_MEMMAP code (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove uv bios and efi code related to EFI_UV1_MEMMAP (Frank Ramsay) [1861439] - [x86] x86/efi: Remove references to no-longer-used efi_have_uv1_memmap() (Frank Ramsay) [1861439] - [x86] x86/efi: Delete SGI UV1 detection (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove efi=old_map command line option (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove vestigial mention of UV1 platform from bios header (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for uv1 platform from uv_hub (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_bau (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_mmrs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from x2apic_uv_x (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_tlb (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_time (Frank Ramsay) [1861439] - [x86] x86/apic/uv: Make x2apic_extra_bits static (Frank Ramsay) [1861439] - [s390] uv: add destroy page call (Thomas Huth) [1882800] - [s390] gmap: improve THP splitting (Thomas Huth) [1882800] - [s390] kvm: s390: clean up redundant 'kvm_run' parameters (Thomas Huth) [1882800] - [documentation] documentation: virt: kvm/s390-pv: drop doubled words (Thomas Huth) [1882800] - [s390] kvm: s390: reduce number of IO pins to 1 (Thomas Huth) [1882800] - [s390] protvirt: use scnprintf() instead of snprintf() (Thomas Huth) [1882800] - [s390] kvm: s390: remove unneeded semicolon in gisa_vcpu_kicker() (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: gmap_table_walk() simplifications (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Move conditional reschedule (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Fix possible race when shadowing region 3 tables (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Fix region 1 ASCE sanity shadow address checks (Thomas Huth) [1882800] - [s390] kvm: s390: Use fallthrough; (Thomas Huth) [1882800] - [s390] mm: use refcount_t for refcount (Thomas Huth) [1882800] - [s390] mm: make gmap_test_and_clear_dirty_pmd static (Thomas Huth) [1882800] - [s390] mm: optimize locking without huge pages in gmap_pmd_op_walk() (Thomas Huth) [1882800] - [net] openvswitch: introduce common code for flushing flows (Eelco Chaudron) [1888576] - [net] openvswitch: silence suspicious RCU usage warning (Eelco Chaudron) [1888576] - [net] openvswitch: make masks cache size configurable (Eelco Chaudron) [1888576] - [net] openvswitch: add masks cache hit counter (Eelco Chaudron) [1888576] - [net] openvswitch: Prevent kernel-infoleak in ovs_ct_put_key() (Eelco Chaudron) [1888576] - [net] openvswitch: kerneldoc fixes (Eelco Chaudron) [1888576] - [net] openvswitch: use div_u64() for 64-by-32 divisions (Eelco Chaudron) [1888576] - [net] openvswitch: suitable access to the dp_meters (Eelco Chaudron) [1888576] - [net] openvswitch: use u64 for meter bucket (Eelco Chaudron) [1888576] - [net] openvswitch: make EINVAL return value more obvious (Eelco Chaudron) [1888576] - [net] openvswitch: remove the unnecessary check (Eelco Chaudron) [1888576] - [net] openvswitch: set max limitation to meters (Eelco Chaudron) [1888576] - [net] openvswitch: expand the meters supported number (Eelco Chaudron) [1888576] - [net] openvswitch: use hlist_for_each_entry_rcu instead of hlist_for_each_entry (Eelco Chaudron) [1888576] - [net] ovs: datapath: hide clang frame-overflow warnings (Eelco Chaudron) [1888576] - [net] openvswitch: use netif_ovs_is_port() instead of opencode (Eelco Chaudron) [1888576] - [platform] platform/x86: intel_pmc_core: avoid unused-function warnings (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make pmc_core_substate_res_show() generic (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make pmc_core_lpm_display() generic for platforms that support sub-states (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add slp_s0_offset attribute back to tgl_reg_map (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove duplicate 'if' to create debugfs entry (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Relocate pmc_core_*_display() to outside of CONFIG_DEBUG_FS (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs support to access live status registers (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Dump low power status registers on an S0ix.y failure (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add an additional parameter to pmc_core_lpm_display() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove slp_s0 attributes from tgl_reg_map (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Refactor the driver by removing redundant code (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs entry for low power mode status registers (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs entry to access sub-state residencies (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Fix spelling of MHz unit (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Fix indentation in function definitions (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Put more stuff under #ifdef DEBUG_FS (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Respect error code of kstrtou32_from_user() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make debugfs entry for pch_ip_power_gating_status conditional (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove unnecessary assignments (David Arcari) [1783140]- [net] mptcp: provide rmem[0] limit (Davide Caratti) [1874368] - [net] mptcp: add missing memory scheduling in the rx path (Davide Caratti) [1874368] - [net] mptcp: depends on IPV6 but not as a module (Davide Caratti) [1874368] - [tools] selftests: mptcp: depends on built-in IPv6 (Davide Caratti) [1874368] - [net] mptcp: MPTCP_IPV6 should depend on IPV6 instead of selecting it (Davide Caratti) [1874368] - [net] mptcp: subflows garbage collection (Davide Caratti) [1874368] - [net] mptcp: fix fallback for MP_JOIN subflows (Davide Caratti) [1874368] - [net] mptcp: make DACK4/DACK8 usage consistent among all subflows (Davide Caratti) [1874368] - [net] mptcp: fix infinite loop on recvmsg()/worker() race. (Davide Caratti) [1874368] - [net] mptcp: don't skip needed ack (Davide Caratti) [1874368] - [net] mptcp: more DATA FIN fixes (Davide Caratti) [1874368] - [net] mptcp: Constify mptcp_pm_ops (Davide Caratti) [1874368] - [net] mptcp: ADD_ADDRs with echo bit are smaller (Davide Caratti) [1874368] - [net] mptcp: Handle incoming 32-bit DATA_FIN values (Davide Caratti) [1874368] - [net] mptcp: Consistently use READ_ONCE/WRITE_ONCE with msk->ack_seq (Davide Caratti) [1874368] - [net] tcp: drop unused function argument from mptcp_incoming_options (Davide Caratti) [1874368] - [net] mptcp: retransmit ADD_ADDR when timeout (Davide Caratti) [1874368] - [net] mptcp: add sk_stop_timer_sync helper (Davide Caratti) [1874368] - [net] mptcp: add struct mptcp_pm_add_entry (Davide Caratti) [1874368] - [tools] selftests: mptcp: add remove addr and subflow test cases (Davide Caratti) [1874368] - [tools] selftests: mptcp: add remove cfg in mptcp_connect (Davide Caratti) [1874368] - [net] mptcp: add mptcp_destroy_common helper (Davide Caratti) [1874368] - [net] mptcp: add RM_ADDR related mibs (Davide Caratti) [1874368] - [net] mptcp: implement mptcp_pm_remove_subflow (Davide Caratti) [1874368] - [net] mptcp: remove addr and subflow in PM netlink (Davide Caratti) [1874368] - [net] mptcp: add accept_subflow re-check (Davide Caratti) [1874368] - [tools] selftests: mptcp: add ADD_ADDR mibs check function (Davide Caratti) [1874368] - [net] tcp: change pingpong threshold to 3 (Davide Caratti) [1874368] - [net] tcp: Refactor pingpong code (Davide Caratti) [1874368] - [net] mptcp: add ADD_ADDR related mibs (Davide Caratti) [1874368] - [net] mptcp: send out ADD_ADDR with echo flag (Davide Caratti) [1874368] - [net] mptcp: add the incoming RM_ADDR support (Davide Caratti) [1874368] - [net] mptcp: add the outgoing RM_ADDR support (Davide Caratti) [1874368] - [net] mptcp: rename addr_signal and the related functions (Davide Caratti) [1874368] - [net] mptcp: Wake up MPTCP worker when DATA_FIN found on a TCP FIN packet (Davide Caratti) [1874368] - [net] mptcp: fix integer overflow in mptcp_subflow_discard_data() (Davide Caratti) [1874368] - [net] mptcp: Fix unsigned 'max_seq' compared with zero in mptcp_data_queue_ofo (Davide Caratti) [1874368] - [tools] selftests: mptcp: interpret \n as a new line (Davide Caratti) [1874368] - [tools] selftests: mptcp: interpret \n as a new line (Davide Caratti) [1874368] - [tools] mptcp: simult flow self-tests (Davide Caratti) [1874368] - [net] mptcp: call tcp_cleanup_rbuf on subflows (Davide Caratti) [1874368] - [net] mptcp: allow picking different xmit subflows (Davide Caratti) [1874368] - [net] mptcp: allow creating non-backup subflows (Davide Caratti) [1874368] - [net] mptcp: move address attribute into mptcp_addr_info (Davide Caratti) [1874368] - [net] mptcp: add OoO related mibs (Davide Caratti) [1874368] - [net] mptcp: cleanup mptcp_subflow_discard_data() (Davide Caratti) [1874368] - [net] mptcp: move ooo skbs into msk out of order queue. (Davide Caratti) [1874368] - [net] mptcp: introduce and use mptcp_try_coalesce() (Davide Caratti) [1874368] - [net] mptcp: basic sndbuf autotuning (Davide Caratti) [1874368] - [net] mptcp: trigger msk processing even for OoO data (Davide Caratti) [1874368] - [net] mptcp: set data_ready status bit in subflow_check_data_avail() (Davide Caratti) [1874368] - [net] mptcp: rethink 'is writable' conditional (Davide Caratti) [1874368] - [net] tcp: reduce POLLOUT events caused by TCP_NOTSENT_LOWAT (Davide Caratti) [1874368] - [net] mptcp: fix kmalloc flag in mptcp_pm_nl_get_local_id (Davide Caratti) [1874368] - [net] mptcp: fix subflow's remote_id issues (Davide Caratti) [1874368] - [net] mptcp: fix subflow's local_id issues (Davide Caratti) [1874368] - [net] mptcp: Remove unused macro MPTCP_SAME_STATE (Davide Caratti) [1874368] - [net] treewide: Use fallthrough pseudo-keyword (Davide Caratti) [1874368] - [net] netlink: consistently use NLA_POLICY_EXACT_LEN() (Davide Caratti) [1874368] - [net] mptcp: free acked data before waiting for more memory (Davide Caratti) [1874368] - [net] mptcp: sendmsg: reset iter on error redux (Davide Caratti) [1874368] - [net] mptcp: sendmsg: reset iter on error (Davide Caratti) [1874368] - [net] mptcp: fix warn at shutdown time for unaccepted msk sockets (Davide Caratti) [1874368] - [net] mptcp: use mptcp_for_each_subflow in mptcp_stream_accept (Davide Caratti) [1874368] - [net] mptcp: fix syncookie build error on UP (Davide Caratti) [1874368] - [net] tcp: fix syn cookied MPTCP request socket leak (Davide Caratti) [1874368] - [net] tcp: fix build fong CONFIG_MPTCP=n (Davide Caratti) [1874368] - [tools] selftests: mptcp: add test cases for mptcp join tests with syn cookies (Davide Caratti) [1874368] - [tools] selftests: mptcp: make 2nd net namespace use tcp syn cookies unconditionally (Davide Caratti) [1874368] - [net] mptcp: enable JOIN requests even if cookies are in use (Davide Caratti) [1874368] - [net] tcp: free request sock directly upon TFO or syncookies error (Davide Caratti) [1874368] - [include] net: keep refcount warning in reqsk_free() (Davide Caratti) [1874368] - [net] tcp: syncookies: create mptcp request socket for ACK cookies with MPTCP option (Davide Caratti) [1874368] - [net] mptcp: subflow: add mptcp_subflow_init_cookie_req helper (Davide Caratti) [1874368] - [net] mptcp: rename and export mptcp_subflow_request_sock_ops (Davide Caratti) [1874368] - [net] mptcp: subflow: split subflow_init_req (Davide Caratti) [1874368] - [net] mptcp: token: move retry to caller (Davide Caratti) [1874368] - [net] tcp: rename request_sock cookie_ts bit to syncookie (Davide Caratti) [1874368] - [net] mptcp: Safely store sequence number when sending data (Davide Caratti) [1874368] - [net] mptcp: Safely read sequence number when lock isn't held (Davide Caratti) [1874368] - [net] mptcp: Skip unnecessary skb extension allocation for bare acks (Davide Caratti) [1874368] - [net] mptcp: Only use subflow EOF signaling on fallback connections (Davide Caratti) [1874368] - [net] mptcp: Use full MPTCP-level disconnect state machine (Davide Caratti) [1874368] - [net] mptcp: Add helper to process acks of DATA_FIN (Davide Caratti) [1874368] - [net] mptcp: Add mptcp_close_state() helper (Davide Caratti) [1874368] - [net] mptcp: Track received DATA_FIN sequence number and add related helpers (Davide Caratti) [1874368] - [net] mptcp: Use MPTCP-level flag for sending DATA_FIN (Davide Caratti) [1874368] - [net] mptcp: Remove outdated and incorrect comment (Davide Caratti) [1874368] - [net] mptcp: Return EPIPE if sending is shut down during a sendmsg (Davide Caratti) [1874368] - [net] mptcp: Allow DATA_FIN in headers without TCP FIN (Davide Caratti) [1874368] - [net] subflow: introduce and use mptcp_can_accept_new_subflow() (Davide Caratti) [1874368] - [net] subflow: use rsk_ops->send_reset() (Davide Caratti) [1874368] - [net] mptcp: cleanup subflow_finish_connect() (Davide Caratti) [1874368] - [net] mptcp: explicitly track the fully established status (Davide Caratti) [1874368] - [net] mptcp: mark as fallback even early ones (Davide Caratti) [1874368] - [net] mptcp: avoid data corruption on reinsert (Davide Caratti) [1874368] - [net] subflow: always init 'rel_write_seq' (Davide Caratti) [1874368] - [net] mptcp: zero token hash at creation time. (Davide Caratti) [1874368] - [net] mptcp: move helper to where its used (Davide Caratti) [1874368] - [tools] selftests/mptcp: Better delay & reordering configuration (Davide Caratti) [1874368] - [tools] selftests: mptcp: fix typo in mptcp_connect usage (Davide Caratti) [1874368] - [tools] mptcp: more stable diag self-tests (Davide Caratti) [1874368] - [tools] selftests: mptcp: fix dependecies (Davide Caratti) [1874368] - [net] inet_diag: validate INET_DIAG_REQ_PROTOCOL attribute (Davide Caratti) [1874368] - [tools] selftests/mptcp: add diag interface tests (Davide Caratti) [1874368] - [net] mptcp: add MPTCP socket diag interface (Davide Caratti) [1874368] - [net] mptcp: add msk interations helper (Davide Caratti) [1874368] - [net] inet_diag: support for wider protocol numbers (Davide Caratti) [1874368] - [net] mptcp: use mptcp worker for path management (Davide Caratti) [1874368] - [include] mptcp: Remove unused inline function mptcp_rcv_synsent() (Davide Caratti) [1874368] - [net] mptcp: support IPV6_V6ONLY setsockopt (Davide Caratti) [1874368] - [net] mptcp: add REUSEADDR/REUSEPORT support (Davide Caratti) [1874368] - [net] use mptcp setsockopt function for SOL_SOCKET on mptcp sockets (Davide Caratti) [1874368] - [net] mptcp: do nonce initialization at subflow creation time (Davide Caratti) [1874368] - [net] mptcp: close poll() races (Davide Caratti) [1874368] - [net] mptcp: __mptcp_tcp_fallback() returns a struct sock (Davide Caratti) [1874368] - [net] mptcp: create first subflow at msk creation time (Davide Caratti) [1874368] - [net] mptcp: check for plain TCP sock at accept time (Davide Caratti) [1874368] - [net] mptcp: move mptcp_options_received's port initialization (Davide Caratti) [1874368] - [net] mptcp: initialize mptcp_options_received's ahmac (Davide Caratti) [1874368] - [net] mptcp: MPTCP_KUNIT_TESTS should depend on MPTCP instead of selecting it (Davide Caratti) [1874368] - [net] mptcp: introduce token KUNIT self-tests (Davide Caratti) [1874368] - [net] mptcp: move crypto test to KUNIT (Davide Caratti) [1874368] - [net] mptcp: refactor token container (Davide Caratti) [1874368] - [net] mptcp: add __init annotation on setup functions (Davide Caratti) [1874368] - [net] tcp: move ipv4_specific to tcp include file (Davide Caratti) [1874368] - [net] tcp: move ipv6_specific declaration to remove a warning (Davide Caratti) [1874368] - [net] mptcp: use list_first_entry_or_null (Davide Caratti) [1874368] - [net] mptcp: attempt coalescing when moving skbs to mptcp rx queue (Davide Caratti) [1874368] - [net] allow __skb_ext_alloc to sleep (Davide Caratti) [1874368] - [net] mptcp: remove inner wait loop from mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: fill skb page frag cache outside of mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: fill skb extension cache outside of mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: move common nospace-pattern to a helper (Davide Caratti) [1874368] - [net] mptcp: Use 32-bit DATA_ACK when possible (Davide Caratti) [1874368] - [s390] s390/qeth: implement ndo_bridge_setlink for learning_sync (Philipp Rudo) [1651745] - [s390] s390/qeth: implement ndo_bridge_getlink for learning_sync (Philipp Rudo) [1651745] - [s390] s390/qeth: Reset address notification in case of buffer overflow (Philipp Rudo) [1651745] - [net] bridge: Add SWITCHDEV_FDB_FLUSH_TO_BRIDGE notifier (Philipp Rudo) [1651745] - [s390] s390/qeth: Translate address events into switchdev notifiers (Philipp Rudo) [1651745] - [s390] s390/qeth: Detect PNSO OC3 capability (Philipp Rudo) [1651745] - [s390] s390/cio: Helper functions to read CSSID, IID, and CHID (Philipp Rudo) [1651745] - [s390] s390/cio: Add new Operation Code OC3 to PNSO (Philipp Rudo) [1651745] - [cpuidle] cpuidle: Drop misleading comments about RCU usage (David Arcari) [1888014] - [cpuidle] cpuidle: Allow cpuidle drivers to take over RCU-idle (David Arcari) [1888014] - [include] cpuidle: Make CPUIDLE_FLAG_TLB_FLUSHED generic (David Arcari) [1888014] - [cpuidle] sched, idle, rcu: Push rcu_idle deeper into the idle path (David Arcari) [1888014] - [cpuidle] cpuidle: Fixup IRQ state (David Arcari) [1888014] - [kernel] cpuidle: Add RH_KABI warnings (David Arcari) [1878232] - [acpi] cpuidle: ACPI: fix 'return' with no value build warning (David Arcari) [1878232] - [acpi] cpuidle: change enter_s2idle() prototype (David Arcari) [1878232] - [cpuidle] cpuidle/pseries: Make symbol 'pseries_idle_driver' static (David Arcari) [1878232] - [cpuidle] cpuidle/powernv : Remove dead code block (David Arcari) [1878232] - [cpuidle] cpuidle: Rearrange s2idle-specific idle state entry code (David Arcari) [1878232] - [cpuidle] PM: s2idle: Clear _TIF_POLLING_NRFLAG before suspend to idle (David Arcari) [1878232] - [cpuidle] cpuidle: Fix three reference count leaks (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Remove sysfs_switch and switch attributes (David Arcari) [1878232] - [cpuidle] cpuidle: Make cpuidle governor switchable to be the default behaviour (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Accept governor name with 15 characters (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Fix the overlap for showing available governors (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Minor coding style corrections (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Remove the unused define_one_r(o/w) macros (David Arcari) [1878232] - [cpuidle] cpuidle-haltpoll: Fix small typo (David Arcari) [1878232] - [idle] intel_idle: Customize IceLake server support (David Arcari) [1881620 1857129] - [idle] intel_idle: Eliminate redundant static variable (David Arcari) [1857129] - [idle] intel_idle: Update copyright notice, known limitations and version (David Arcari) [1857129] - [idle] intel_idle: Define CPUIDLE_FLAG_TLB_FLUSHED as BIT(16) (David Arcari) [1857129] - [idle] intel_idle: Clean up kerneldoc comments for multiple functions (David Arcari) [1857129] - [idle] intel_idle: Reorder declarations of static variables (David Arcari) [1857129] - [idle] intel_idle: Annotate init time data structures (David Arcari) [1857129] - [idle] intel_idle: Add __initdata annotations to init time variables (David Arcari) [1857129] - [idle] intel_idle: Relocate definitions of cpuidle callbacks (David Arcari) [1857129] - [idle] intel_idle: Clean up definitions of cpuidle callbacks (David Arcari) [1857129] - [idle] intel_idle: Simplify LAPIC timer reliability checks (David Arcari) [1857129] - [idle] intel_idle: Introduce 'states_off' module parameter (David Arcari) [1857129] - [idle] intel_idle: Clean up irtl_2_usec() (David Arcari) [1857129] - [idle] intel_idle: Move 3 functions closer to their callers (David Arcari) [1857129] - [idle] intel_idle: Annotate initialization code and data structures (David Arcari) [1857129] - [idle] intel_idle: Move and clean up intel_idle_cpuidle_devices_uninit() (David Arcari) [1857129] - [idle] intel_idle: Rearrange intel_idle_cpuidle_driver_init() (David Arcari) [1857129] - [idle] intel_idle: Clean up NULL pointer check in intel_idle_init() (David Arcari) [1857129] - [idle] intel_idle: Fold intel_idle_probe() into intel_idle_init() (David Arcari) [1857129] - [idle] intel_idle: Eliminate __setup_broadcast_timer() (David Arcari) [1857129] - [idle] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (David Arcari) [1857129]- [hv] hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Add parsing of VMbus interrupt in ACPI DSDT (Mohammed Gamal) [1886096] - [hv] driver: hv: util: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Move virt_to_hvpfn() to hyperv header (Mohammed Gamal) [1886096] - [hv] hv: Use HV_HYP_PAGE in hv_synic_enable_regs() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Introduce types of GPADL (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Move __vmbus_open() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Always use HV_HYP_PAGE_SIZE for gpadl (Mohammed Gamal) [1886096] - [hv] hv: remove cast from hyperv_die_event (Mohammed Gamal) [1886096] - [hv] hv: Change flag to write log level in panic msg to false (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Remove the lock field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [scsi] storvsc: Introduce the per-storvsc_device spinlock (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list updaters) (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Use channel_mutex in channel_vp_mapping_show() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list readers) (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Replace cpumask_test_cpu(, cpu_online_mask) with cpu_online() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove the numa_node field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Remove the target_vp field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Resolve more races involving init_vp_index() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Resolve race between init_vp_index() and CPU hotplug (Mohammed Gamal) [1886096] - [hv] driver: hv: vmbus: drop a no long applicable comment (Mohammed Gamal) [1886096] - [hv] hyper-v: Replace open-coded variant of *phN specifier (Mohammed Gamal) [1886096] - [hv] hyper-v: Supply GUID pointer to printf() like functions (Mohammed Gamal) [1886096] - [hv] hyper-v: Use UUID API for exporting the GUID (part 2) (Mohammed Gamal) [1886096] - [hv] hv: remove redundant assignment to pointer primary_channel (Mohammed Gamal) [1886096] - [scsi] storvsc: Re-init stor_chns when a channel interrupt is re-assigned (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Introduce the CHANNELMSG_MODIFYCHANNEL message type (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Synchronize init_vp_index() vs. CPU hotplug (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove the unused HV_LOCALIZED channel affinity logic (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Use a spin lock for synchronizing channel scheduling vs. channel removal (Mohammed Gamal) [1886096] - [hv] hv_utils: Always execute the fcopy and vss callbacks in a tasklet (Mohammed Gamal) [1886096] - [netdrv] hv_netvsc: Disable NAPI before closing the VMBus channel (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Replace the per-CPU channel lists with a global array of channels (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Don't bind the offer&rescind works to a specific CPU (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Always handle the VMBus messages on CPU0 (Mohammed Gamal) [1886096] - [hv] hv: check VMBus messages lengths (Mohammed Gamal) [1886096] - [hv] hv: make sure that 'struct vmbus_channel_message_header' compiles correctly (Mohammed Gamal) [1886096] - [hv] hv: avoid passing opaque pointer to vmbus_onmessage() (Mohammed Gamal) [1886096] - [hv] hv: allocate the exact needed memory for messages (Mohammed Gamal) [1886096] - [hv] hv: copy from message page only what's needed (Mohammed Gamal) [1886096] - [x86] hyperv: Clarify comment on x2apic mode (Mohammed Gamal) [1886099] - [x86] hyperv: report value of misc_features (Mohammed Gamal) [1886099] - [x86] hyperv: Make hv_setup_sched_clock inline (Mohammed Gamal) [1886099] - [net] ipv6: reply ICMP error if the first fragment don't include all headers (Hangbin Liu) [1874734] - [net] icmpv6: Add ICMPv6 Parameter Problem, code 3 definition (Hangbin Liu) [1874734] - [powerpc] powerpc/process: Add missing include of stacktrace.h (Desnes Augusto Nunes do Rosario) [1883975] - [powerpc] powerpc/test_emulate_sstep: Fix build error (Desnes Augusto Nunes do Rosario) [1883975] - [nvdimm] powerpc/pmem: Initialize pmem device on newer hardware (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Avoid the barrier in flush routines (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Update ppc64 to use the new barrier instruction (Desnes Augusto Nunes do Rosario) [1878632] - [md] libnvdimm/nvdimm/flush: Allow architecture to override the flush barrier (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Add flush routines using new pmem store and sync instruction (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Add new instructions for persistent storage and sync (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Restrict papr_scm to P8 and above (Desnes Augusto Nunes do Rosario) [1878632] - [i2c] i2c: ismt: Add support for Intel Emmitsburg PCH (David Arcari) [1886162] - [include] timer: add fsleep for flexible sleeping (Josef Oskera) [1892674] - [scsi] qla2xxx: Update driver version to 10.02.00.103-k (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Return EBUSY on fcport deletion (Nilesh Javali) [1887427] - [trace] scsi: qla2xxx: Suppress two recently introduced compiler warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix return of uninitialized value in rval (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Convert to DEFINE_SHOW_ATTRIBUTE (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Initialize variable in qla8044_poll_reg() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Do not consume srb greedily (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use constant when it is known (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in qla_dbg.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in qla_os.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in tcm_qla2xxx.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix point-to-point (N2N) device discovery issue (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix crash on session cleanup with unload (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix reset of MPI firmware (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix MPI reset needed message (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix buffer-buffer credit extraction error (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Correct the check for sscanf() return value (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add SLER and PI control support (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add IOCB resource tracking (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add rport fields in debugfs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make tgt_port_database available in initiator mode (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix I/O errors during LIP reset tests (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Performance tweak (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix memory size truncation (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Reduce duplicate code in reporting speed (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Honor status qualifier in FCP_RSP per spec (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Allow dev_loss_tmo setting for FC-NVMe devices (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Setup debugfs entries for remote ports (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix I/O failures during remote port toggle testing (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove unneeded variable 'rval' (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Handle incorrect entry_type entries (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Log calling function name in qla2x00_get_sp_from_handle() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify return value logic in qla2x00_get_sp_from_handle() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Warn if done() or free() are called on an already freed srb (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the return value (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove redundant variable initialization (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove pci-dma-compat wrapper API (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove superfluous memset() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix regression on sparc64 (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use MBX_TOV_SECONDS for mailbox command timeout values (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Address a set of sparse warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: SAN congestion management implementation (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change in PUREX to handle FPIN ELS requests (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Introduce a function for computing the debug message prefix (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla2x00_restart_isp() easier to read (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix a Coverity complaint in qla2100_fw_dump() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make __qla2x00_alloc_iocbs() initialize 32 bits of request_t.handle (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove a superfluous cast (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Initialize 'n' before using it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla82xx_flash_wait_write_finish() easier to read (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove the __packed annotation from struct fcp_hdr and fcp_hdr_le (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Check the size of struct fcp_hdr at compile time (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix a condition in qla2x00_find_all_fabric_devs() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Set NVMe status code for failed NVMe FCP request (Nilesh Javali) [1887427] - [scsi] scsi: Fix trivial spelling (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove return value from qla_nvme_ls() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove an unused function (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix endianness annotations in source files (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix endianness annotations in header files (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use make_handle() instead of open-coding it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Cast explicitly to uint16_t / uint32_t (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change {RD, WRT}_REG_*() function names from upper case into lower case (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the code that reads from mailbox registers (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use register names instead of register offsets (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change two hardcoded constants into offsetof() / sizeof() expressions (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Increase the size of struct qla_fcp_prio_cfg to FCP_PRIO_CFG_SIZE (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make a gap in struct qla2xxx_offld_chain explicit (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add more BUILD_BUG_ON() statements (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Sort BUILD_BUG_ON() statements alphabetically (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify the functions for dumping firmware (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix spelling of a variable name (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Do not log message when reading port speed via sysfs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qlafx00_process_aen() return void (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use true, false for ha->fw_dumped (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use true, false for need_mpi_reset (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla_set_ini_mode() return void (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix issue with adapter's stopping state (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix failure message in qlt_disable_vha() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix warning after FC target reset (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: check UNLOADING before posting async work (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: set UNLOADING before waiting for session deletion (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use ARRAY_SIZE() instead of open-coding it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Split qla2x00_configure_local_loop() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix regression warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove non functional code (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: add ring buffer for tracing debug logs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix RDP respond data format (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: fix FW resource count values (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Improved secure flash support messages (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use FC generic update firmware options routine for ISP27xx (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Avoid setting firmware options twice in 24xx_update_fw_options (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix sparse warnings triggered by the PCI state checking code (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Suppress endianness complaints in qla2x00_configure_local_loop() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify the code for aborting SCSI commands (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix sparse warning reported by kbuild bot (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Print portname for logging in qla24xx_logio_entry() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix qla2x00_echo_test() based on ISP type (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Correction to selection of loopback/echo test (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix RDP response size (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Handle cases for limiting RDP response payload length (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add deferred queue for processing ABTS and RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Cleanup ELS/PUREX iocb fields (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Show correct port speed capabilities for RDP command (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Display message for FCE enabled (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add vendor extended FDMI commands (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add ql2xrdpenable module parameter for RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add vendor extended RDP additions and amendments (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add changes in preparation for vendor extended FDMI/RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix gnl.l memory leak on adapter init failure (Nilesh Javali) [1887427]- [kernel] PM: hibernate: Batch hibernate and resume IO requests (Lenny Szubowicz) [1868096] - [net] tunnels: Fix off-by-one in lower MTU bounds for ICMP/ICMPv6 replies (Antoine Tenart) [1895765] - [block] block: mark flush request as IDLE when it is really finished (Ming Lei) [1895913] - [net] vsock: forward all packets to the host when no H2G is registered (Vitaly Kuznetsov) [1893826] - [maintainers] maintainers: Add entry for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [documentation] nitro_enclaves: Add overview documentation (Vitaly Kuznetsov) [1893826] - [samples] nitro_enclaves: Add sample for ioctl interface usage (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add Makefile for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add Kconfig for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for terminating an enclave (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for starting an enclave (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for setting an enclave memory region (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for getting the enclave image load info (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for setting an enclave vCPU (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for creating an enclave VM (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Init misc device providing the ioctl interface (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Handle out-of-band PCI device events (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Handle PCI device command requests (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Init PCI device driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Define enclave info for internal bookkeeping (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Define the PCI device interface (Vitaly Kuznetsov) [1893826] - [uapi] nitro_enclaves: Add ioctl interface definition (Vitaly Kuznetsov) [1893826] - [kernel] cpu/hotplug: Add new {add, remove}_cpu() functions (Vitaly Kuznetsov) [1893826] - [x86] x86/delay: Introduce TPAUSE delay (Prarit Bhargava) [1838636] - [x86] x86/delay: Refactor delay_mwaitx() for TPAUSE support (Prarit Bhargava) [1838636] - [x86] x86/delay: Preparatory code cleanup (Prarit Bhargava) [1838636] - [net] netfilter: ipset: Update byte and packet counters regardless of whether they match (Phil Sutter) [1806882] - [net] ethtool: add and use message type for tunnel info reply (Ivan Vecera) [1867211] - [infiniband] RDMA/hns: Mark hns_roce driver as unsupported (Kamal Heib) [1878211] - [net] tipc: fix memory leak caused by tipc_buf_append() (Xin Long) [1865774] - [net] tipc: fix the skb_unshare() in tipc_buf_append() (Xin Long) [1865774] - [net] tipc: use skb_unshare() instead in tipc_buf_append() (Xin Long) [1865774] - [netdrv] net: team: fix memory leak in __team_options_register (Hangbin Liu) [1892142] - [netdrv] team: set dev->needed_headroom in team_setup_by_port() (Hangbin Liu) [1892142] - [netdrv] team: use netif_is_team_port() (Hangbin Liu) [1892142] - [char] random: decouple random and urandom extrng fops (Vladis Dronov) [1890711] - [platform] platform/x86: intel_pmc_core: Add Intel RocketLake (RKL) support (Steve Best) [1782713] - [netdrv] fm10k: convert to new udp_tunnel_nic infra (Vladis Dronov) [1884254] - [netdrv] ethernet/intel: Convert fallthrough code comments (Vladis Dronov) [1884254] - [netdrv] docs: networking: reorganize driver documentation again (Vladis Dronov) [1884254] - [netdrv] net/intel: remove driver versions from Intel drivers (Vladis Dronov) [1884254] - [infiniband] RDMA/core: Fix ordering of CQ pool destruction (Kamal Heib) [1878969 1857603] - [infiniband] IB/isert: Fix unaligned immediate-data handling (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix reported speed and width (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Fix panic when calling kmem_cache_create() (Kamal Heib) [1867296 1857603] - [infiniband] RDMA/rxe: Fix memleak in rxe_mem_init_user (Kamal Heib) [1857603] - [net] xprtrdma: Release in-flight MRs on disconnect (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars (Kamal Heib) [1870430 1857603] - [infiniband] RDMA/hfi1: Correct an interlock issue for TID RDMA WRITE request (Kamal Heib) [1870281 1857603] - [infiniband] RDMA/core: Fix spelling mistake "Could't" -> "Couldn't" (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove pkey table (Kamal Heib) [1857603] - [infiniband] RDMA/umem: Add a schedule point in ib_umem_get() (Kamal Heib) [1857603] - [infiniband] RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP (Kamal Heib) [1857603] - [rdma] RDMA/include: Replace license text with SPDX tags (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Execute rdma_cm destruction from a handler properly (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Remove unneeded locking for req paths (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Using the standard locking pattern when delivering the removal event (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Simplify DEVICE_REMOVAL for internal_id (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Add EFA 0xefa1 PCI ID (Kamal Heib) [1857603] - [infiniband] RDMA/efa: User/kernel compatibility handshake mechanism (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Expose minimum SQ size (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Expose maximum TX doorbell batch (Kamal Heib) [1857603] - [infiniband] IB/srpt: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] IB/isert: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] IB/iser: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix return error value in _ib_modify_qp() to negative (Kamal Heib) [1857603] - [infiniband] RDMA/uverbs: Silence shiftTooManyBitsSigned warning (Kamal Heib) [1857603] - [infiniband] RDMA/core: Update write interface to use automatic object lifetime (Kamal Heib) [1857603] - [infiniband] RDMA/core: Align abort/commit object scheme for write() and ioctl() paths (Kamal Heib) [1857603] - [uapi] RDMA: rdma_user_ioctl.h: fix a duplicated word + clarify (Kamal Heib) [1857603] - [infiniband] RDMA/qedr: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/i40iw: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/cxgb4: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/siw: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/core: Remove query_pkey from the mandatory ops (Kamal Heib) [1857603] - [infiniband] RDMA/core: Allocate the pkey cache only if the pkey_tbl_len is set (Kamal Heib) [1857603] - [infiniband] RDMA/core: Expose pkeys sysfs files only if pkey_tbl_len is set (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue (Kamal Heib) [1857603] - [infiniband] IB/hfi1: Remove unnecessary fall-through markings (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove rxe_link_layer() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Return void from rxe_mem_init_dma() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Return void from rxe_init_port_param() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Drop pointless checks in rxe_init_ports (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Allow manually bind QPs with different pids to same counter (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Only bind user QPs in auto mode (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Add PID category support in auto mode (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Skip dgid check in loopback mode (Kamal Heib) [1857603] - [infiniband] RDMA/core: Create and destroy counters in the ib_core (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Expose UAPI to query MR (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Expose UAPI to query ucontext (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Set IOVA on IB MR in uverbs layer (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Enable CQ ioctl commands by default (Kamal Heib) [1857603] - [infiniband] RDMA/core: Clean ib_alloc_xrcd() and reuse it to allocate XRC domain (Kamal Heib) [1857603] - [infiniband] RDMA: Remove the udata parameter from alloc_mr callback (Kamal Heib) [1857603] - [infiniband] RDMA/core: Remove ib_alloc_mr_user function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Check for error instead of success in alloc MR function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Clean up tracepoint headers (Kamal Heib) [1857603] - [infiniband] RDMA/ipoib: Handle user-supplied address when creating child (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued() (Kamal Heib) [1857603] - [infiniband] IB/hfi1: Convert PCIBIOS_* errors to generic -E* errors (Kamal Heib) [1857603] - [infiniband] RDMA/core: Delete not-used create RWQ table function (Kamal Heib) [1857603] - [infiniband] IB/mad: Delete RMPP_STATE_CANCELING state (Kamal Heib) [1857603] - [infiniband] IB/mad: Change atomics to refcount API (Kamal Heib) [1857603] - [infiniband] IB/mad: Issue complete whenever decrements agent refcount (Kamal Heib) [1857603] - [infiniband] RDMA: Add support to dump resource tracker in RAW format (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated CM_ID resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated QP resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add a dedicated CQ resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated MR resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Don't call fill_res_entry for PD (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove unused rxe_mem_map_pages (Kamal Heib) [1857603] - [infiniband] RDMA/hfi1: Remove hfi1_create_qp declaration (Kamal Heib) [1857603] - [infiniband] RDMA/ipoib: Return void from ipoib_mcast_stop_thread() (Kamal Heib) [1857603] - [infiniband] RDMA: Correct trivial kernel-doc inconsistencies (Kamal Heib) [1857603] - [infiniband] IB/srpt: Remove WARN_ON from srpt_cm_req_recv (Kamal Heib) [1857603] - [tools] tools/power turbostat: Support additional CPU model numbers (Steve Best) [1782718] - [net] udp_tunnel: add the ability to hard-code IANA VXLAN (Ivan Vecera) [1879204] - [tools] selftests: net: add a test for UDP tunnel info infra (Ivan Vecera) [1867211] - [netdrv] netdevsim: add UDP tunnel port offload support (Ivan Vecera) [1867211] - [net] ethtool: add tunnel info interface (Ivan Vecera) [1867211] - [net] ethtool: Make helpers public (Ivan Vecera) [1867211] - [net] udp_tunnel: add central NIC RX port offload infrastructure (Ivan Vecera) [1867211] - [net] udp_tunnel: re-number the offload tunnel types (Ivan Vecera) [1867211] - [fs] debugfs: make sure we can remove u32_array files cleanly (Ivan Vecera) [1867211] - [fs] debugfs: make debugfs_create_u32_array() return void (Ivan Vecera) [1867211] - [fs] debugfs: update documented return values of debugfs helpers (Ivan Vecera) [1867211]- [net] openvswitch: fix to make sure flow_lookup() is not preempted (Eelco Chaudron) [1888237] - [netdrv] powerpc/vnic: Extend "failover pending" window (Steve Best) [1897280] - [net] ipv6: Set SIT tunnel hard_header_len to zero (Davide Caratti) [1897244] - [net] ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags (Davide Caratti) [1897244] - [net] gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY (Davide Caratti) [1897244] - [netdrv] vxlan: fix memleak of fdb (Davide Caratti) [1897244] - [net] vxlan: Ensure FDB dump is performed under RCU (Davide Caratti) [1897244] - [net] gre: refetch erspan header from skb->data after pskb_may_pull() (Davide Caratti) [1897244] - [net] erspan: fix the tun_info options_len check for erspan (Davide Caratti) [1897244] - [net] ip_gre: fix possible use-after-free in erspan_rcv (Davide Caratti) [1897244] - [net] erspan: fix error handling for erspan tunnel (Davide Caratti) [1897244] - [net] erspan: return PACKET_REJECT when the appropriate tunnel is not found (Davide Caratti) [1897244] - [netdrv] net: atlantic: fix build when object tree is separate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Use readx_poll_timeout() for large timeout (Igor Russkikh) [1857861] - [netdrv] net: ethernet: aquantia: Fix wrong return value (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix PTP on AQC10X (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add hwmon getter for MAC temperature (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A0 ntuple filters (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use intermediate variable to improve readability a bit (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use U32_MAX in aq_hw_utils.c (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add support for 64-bit reads/writes (Igor Russkikh) [1857861] - [netdrv] net: atlantic: enable ipv6 support for TCP LSO and UDP GSO (Igor Russkikh) [1857861] - [netdrv] net: atlantic: PTP statistics (Igor Russkikh) [1857861] - [netdrv] net: atlantic: additional per-queue stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use u64_stats_update_* to protect access to 64-bit stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: split rx and tx per-queue stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make _get_sw_stats return count as return value (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use simple assignment in _get_stats and _get_sw_stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move FRAC_PER_NS to aq_hw.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add support for FW 4.x (Igor Russkikh) [1857861] - [netdrv] net: atlantic: align return value of ver_match function with function name (Igor Russkikh) [1857861] - [netdrv] net: atlantic: disable PTP on AQC111, AQC112 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix ip dst and ipv6 address filters (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix aq_ndev_start_xmit()'s return type (Igor Russkikh) [1857861] - [netdrv] net: atlantic: put ptp code under IS_REACHABLE check (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add alignment checks in hw_atl2_utils_fw.c (Igor Russkikh) [1857861] - [netdrv] net: atlantic: missing space in a comment in aq_nic.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix typo in aq_ring_tx_clean (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make aq_pci_func_init static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Replace ENOTSUPP usage to EOPNOTSUPP (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix variable type in aq_ethtool_get_pauseparam (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: phy loopback support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: report link partner capabilities (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: flow control support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: EEE support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove baseX usage (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: half duplex support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: proper rss_ctrl1 (54c0) initialization (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: min_rate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: change the order of arguments for TC weight/credit setters (Igor Russkikh) [1857861] - [netdrv] net: atlantic: always use random TC-queue mapping for TX on A2 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: automatically downgrade the number of queues if necessary (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: max_rate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make TCVEC2RING accept nic_cfg (Igor Russkikh) [1857861] - [netdrv] net: atlantic: per-TC queue statistics (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: changes for multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move PTP TC initialization to a separate function (Igor Russkikh) [1857861] - [netdrv] net: atlantic: changes for multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: unify MAC generation (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove check for boot code survivability before reset request (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove hw_atl_b0_hw_rss_set call from A2 code (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove TPO2 check from A0 code (Igor Russkikh) [1857861] - [netdrv] net: atlantic: rename AQ_NIC_RATE_2GS to AQ_NIC_RATE_2G5 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use __packed instead of the full expansion (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 ingress / egress hw configuration (Igor Russkikh) [1857861] - [netdrv] net: atlantic: basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: common functions needed for basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: HW bindings for basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add A2 RPF hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: HW bindings for A2 RFP (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 hw_ops skeleton (Igor Russkikh) [1857861] - [netdrv] net: atlantic: minimal A2 fw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: minimal A2 HW bindings required for fw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 driver-firmware interface (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move IS_CHIP_FEATURE to aq_hw.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make hw_get_regs optional (Igor Russkikh) [1857861] - [netdrv] net: atlantic: simplify hw_get_fw_version() usage (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add hw_soft_reset, hw_prepare to hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add defines for 10M and EEE 100M link mode (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add A2 device IDs (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update company name in the driver description (Igor Russkikh) [1857861] - [netdrv] aquantia: Fix the media type of AQC100 ethernet controller in the driver (Igor Russkikh) [1857861] - [netdrv] net: atlantic: MACSec offload statistics implementation (Igor Russkikh) [1857861] - [netdrv] net: aquantia: reject all unsupported coalescing params (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Replace zero-length array with flexible-array member (Igor Russkikh) [1857861] - [netdrv] net/aquantia: Delete module version (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix out of range usage of active_vlans array (Igor Russkikh) [1857861] - [netdrv] net: atlantic: possible fault in transition to hibernation (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix potential error handling (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix use after free kasan warn (Igor Russkikh) [1857861] - [netdrv] net: atlantic: better loopback mode handling (Igor Russkikh) [1857861] - [netdrv] net: atlantic: ptp gpio adjustments (Igor Russkikh) [1857861] - [netdrv] net: atlantic: check rpc result and wait for rpc address (Igor Russkikh) [1857861] - [netdrv] net: atlantic: checksum compat issue (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove duplicate entries (Igor Russkikh) [1857861] - [netdrv] net: atlantic: loopback configuration in improper place (Igor Russkikh) [1857861] - [netdrv] net: atlantic: broken link status on old fw (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Signedness bug in aq_vec_isr_legacy() (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make function 'aq_ethtool_get_priv_flags', 'aq_ethtool_set_priv_flags' static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make symbol 'aq_pm_ops' static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: change email domains to Marvell (Igor Russkikh) [1857861] - [netdrv] net: atlantic: implement UDP GSO offload (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update flow control logic (Igor Russkikh) [1857861] - [netdrv] net: atlantic: stylistic renames (Igor Russkikh) [1857861] - [netdrv] net: atlantic: code style cleanup (Igor Russkikh) [1857861] - [netdrv] net: atlantic: loopback tests via private flags (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add fw configuration memory area (Igor Russkikh) [1857861] - [netdrv] net: atlantic: adding ethtool physical identification (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add msglevel configuration (Igor Russkikh) [1857861] - [netdrv] net: atlantic: refactoring pm logic (Igor Russkikh) [1857861] - [netdrv] net: atlantic: implement wake_phy feature (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update firmware interface (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix return value check in aq_ptp_init() (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix error handling in aq_ptp_poll (Igor Russkikh) [1857861] - [netdrv] net: aquantia: remove unused including (Igor Russkikh) [1857861] - [netdrv] net: aquantia: make two symbols be static (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix unintention integer overflow on left shift (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix spelling mistake: tx_queus -> tx_queues (Igor Russkikh) [1857861] - [netdrv] net: aquantia: disable ptp object build if no config (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix warnings on endianness (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix var initialization warning (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for PIN funcs (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for Phy access (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement get_ts_info ethtool (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for ptp ioctls (Igor Russkikh) [1857861] - [netdrv] net: aquantia: rx filters for ptp (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement data PTP datapath (Igor Russkikh) [1857861] - [netdrv] net: aquantia: styling fixes on ptp related functions (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add PTP rings infrastructure (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add basic ptp_clock callbacks (Igor Russkikh) [1857861] - [netdrv] net: aquantia: unify styling of bit enums (Igor Russkikh) [1857861] - [netdrv] net: aquantia: PTP skeleton declarations and callbacks (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add an error handling in aq_nic_set_multicast_list (Igor Russkikh) [1857861] - [netdrv] net: aquantia: correctly handle macvlan and multicast coexistence (Igor Russkikh) [1857861] - [netdrv] net: aquantia: do not pass lro session with invalid tcp checksum (Igor Russkikh) [1857861] - [netdrv] net: aquantia: when cleaning hw cache it should be toggled (Igor Russkikh) [1857861] - [netdrv] net: aquantia: temperature retrieval fix (Igor Russkikh) [1857861] - [netdrv] net: aquantia: Fix aq_vec_isr_legacy() return value (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix out of memory condition on rx side (Igor Russkikh) [1857861] - [netdrv] net: aquantia: linkstate irq should be oneshot (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix limit of vlan filters (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix removal of vlan 0 (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement vlan offload configuration (Igor Russkikh) [1857861] - [netdrv] net: aquantia: vlan offloads logic in datapath (Igor Russkikh) [1857861] - [netdrv] net: aquantia: adding fields and device features for vlan offload (Igor Russkikh) [1857861] - [netdrv] net: aquantia: added vlan offload related macros and functions (Igor Russkikh) [1857861] - [netdrv] net: aquantia: make all files GPL-2.0-only (Igor Russkikh) [1857861] - [netdrv] net: aquantia: replace internal driver version code with uts (Igor Russkikh) [1857861] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Igor Russkikh) [1857861] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 308 (Igor Russkikh) [1857861] - [include] net: phy: introduce phy_read_mmd_poll_timeout macro (Josef Oskera) [1892739] - [include] net: phy: introduce phy_read_poll_timeout macro (Josef Oskera) [1892739] - [netdrv] phy: add device-managed devm_mdiobus_register (Josef Oskera) [1892740] - [include] net: add helper eth_hw_addr_crc (Josef Oskera) [1892738] - [netdrv] LiquidIO: mark liquidio and liquidio_vf as deprecated in RHEL8 (Stefan Assmann) [1878178] - [net] tcp: remove SOCK_QUEUE_SHRUNK (Paolo Abeni) [1890058] - [net] tcp: fix receive window update in tcp_add_backlog() (Paolo Abeni) [1890058] - [net] tcp: md5: allow changing MD5 keys in all socket states (Paolo Abeni) [1890058] - [net] tcp: fix SO_RCVLOWAT possible hangs under high mem pressure (Paolo Abeni) [1890058] - [net] tcp: md5: do not send silly options in SYNCOOKIES (Paolo Abeni) [1890058] - [net] tcp: grow window for OOO packets only for SACK flows (Paolo Abeni) [1890058] - [net] tcp: fix error recovery in tcp_zerocopy_receive() (Paolo Abeni) [1890058] - [net] tcp: fix SO_RCVLOWAT hangs with fat skbs (Paolo Abeni) [1890058] - [net] tcp: fix rx timestamp behavior for tcp_recvmsg (Paolo Abeni) [1890058] - [fs] smb3: smbdirect support can be configured by default (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Do not schedule work to send immediate packet on every receive (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Properly process errors on ib_post_send (Leif Sahlberg) [1887940] - [fs] cifs: Allocate crypto structures on the fly for calculating signatures of incoming packets (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Update receive credits before sending and deal with credits roll back on failure before sending (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Check send queue size before posting a send (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Merge code to track pending packets (Leif Sahlberg) [1887940] - [fs] cifs: Allocate encryption header through kmalloc (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Check and extend sender credits in interrupt context (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Calculate the correct maximum packet size for segmented SMBDirect send/receive (Leif Sahlberg) [1887940] - [net] core: device_rename: Use rwsem instead of a seqcount (Patrick Talbert) [1883310]- [tools] perf tools: Add bpf image check to __map__is_kmodule (Michael Petlan) [1873270] - [tools] perf tools: Add support for PERF_RECORD_KSYMBOL_TYPE_OOL (Michael Petlan) [1873270] - [tools] perf record: Don't clear event's period if set by a term (Michael Petlan) [1873270] - [tools] perf bench: The do_run_multi_threaded() function must use IS_ERR(perf_session__new()) (Michael Petlan) [1873270] - [tools] perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set (Michael Petlan) [1873270] - [tools] perf record: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set (Michael Petlan) [1873270] - [tools] perf evsel: Don't set sample_regs_intr/sample_regs_user for dummy event (Michael Petlan) [1873270] - [tools] perf stat: Turn off summary for interval mode by default (Michael Petlan) [1873270] - [tools] perf trace: Fix off by ones in memset() after realloc() in arches using libaudit (Michael Petlan) [1873270] - [tools] perf top/report: Fix infinite loop in the TUI for grouped events (Michael Petlan) [1873270] - [tools] redhat: use local hashmap library in perf (Michael Petlan) [1873270] - [tools] libtraceevent: Fix build with binutils 2.35 (Michael Petlan) [1873270] - [tools] perf tools: Fix record failure when mixed with ARM SPE event (Michael Petlan) [1873270] - [tools] perf tests: Fix test 68 zstd compression for s390 (Michael Petlan) [1873270] - [tools] tools lib traceevent: Fix memory leak in process_dynamic_array_len (Michael Petlan) [1873270] - [tools] perf tools: Sync hashmap.h with libbpf's (Michael Petlan) [1873270] - [tools] libsubcmd: Fix OPT_CALLBACK_SET() (Michael Petlan) [1873270] - [tools] perf report TUI: Remove needless 'dummy' event from menu (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix PEBS sample for XMM registers (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix displaying PEBS-via-PT with registers (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix recording PEBS-via-PT with registers (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add proper KBUFFER_TYPE_TIME_STAMP handling (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add API to read time information from kbuffer (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix time chart call tree (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix zero id in call tree 'Find' result (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix zero id in call graph 'Find' result (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix unexpanded 'Find' result (Michael Petlan) [1873270] - [tools] perf record: Fix duplicated sideband events with Intel PT system wide tracing (Michael Petlan) [1873270] - [tools] perf scripts python: export-to-postgresql.py: Fix struct.pack() int argument (Michael Petlan) [1873270] - [tools] perf build: Fix error message when asking for -fsanitize=address without required libraries (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add handler for __builtin_expect() (Michael Petlan) [1873270] - [tools] tools lib traceevent: Handle __attribute__((user)) in field names (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add append() function helper for appending strings (Michael Petlan) [1873270] - [tools] perf script: Initialize zstd_data (Michael Petlan) [1873270] - [tools] perf pmu: Remove unused declaration (Michael Petlan) [1873270] - [tools] perf parse-events: Fix an old style declaration (Michael Petlan) [1873270] - [tools] perf parse-events: Fix an incompatible pointer (Michael Petlan) [1873270] - [tools] perf bpf: Fix bpf prologue generation (Michael Petlan) [1873270] - [tools] perf probe: Fix user attribute access in kprobes (Michael Petlan) [1873270] - [tools] perf stat: Fix NULL pointer dereference (Michael Petlan) [1873270] - [tools] perf report: Fix NULL pointer dereference in hists__fprintf_nr_sample_events() (Michael Petlan) [1873270] - [tools] perf tools: Remove some duplicated includes (Michael Petlan) [1873270] - [tools] perf symbols: Fix kernel maps for kcore and eBPF (Michael Petlan) [1873270] - [tools] perf stat: Ensure group is defined on top of the same cpu mask (Michael Petlan) [1873270] - [tools] perf libdw: Fix off-by 1 relative directory includes (Michael Petlan) [1873270] - [tools] perf arm-spe: Support synthetic events (Michael Petlan) [1873270] - [tools] perf auxtrace: Add four itrace options (Michael Petlan) [1873270] - [tools] perf tools: Move arm-spe-pkt-decoder.h/c to the new dir (Michael Petlan) [1873270] - [tools] perf test: Initialize memory in dwarf-unwind (Michael Petlan) [1873270] - [tools] perf tests: Don't tail call optimize in unwind test (Michael Petlan) [1873270] - [tools] tools compiler.h: Add attribute to disable tail calls (Michael Petlan) [1873270] - [tools] perf build: Add a LIBPFM4=1 build test entry (Michael Petlan) [1873270] - [tools] perf tools: Add optional support for libpfm4 (Michael Petlan) [1873270] - [tools] perf tools: Correct license on jsmn JSON parser (Michael Petlan) [1873270] - [tools] perf jit: Fix inaccurate DWARF line table (Michael Petlan) [1873270] - [tools] perf jvmti: Remove redundant jitdump line table entries (Michael Petlan) [1873270] - [tools] perf build: Add NO_SDT=1 to the default set of build tests (Michael Petlan) [1873270] - [tools] perf build: Add NO_LIBCRYPTO=1 to the default set of build tests (Michael Petlan) [1873270] - [tools] perf build: Add NO_SYSCALL_TABLE=1 to the build tests (Michael Petlan) [1873270] - [tools] perf build: Remove libaudit from the default feature checks (Michael Petlan) [1873270] - [tools] perf trace: Grow the syscall table as needed when using libaudit (Michael Petlan) [1873270] - [tools] perf trace: Use zalloc() to make sure all fields are zeroed in the syscalltbl constructor (Michael Petlan) [1873270] - [tools] perf trace: Remove union from syscalltbl, all the fields are needed (Michael Petlan) [1873270] - [tools] perf build: Allow explicitely disabling the NO_SYSCALL_TABLE variable (Michael Petlan) [1873270] - [tools] perf build: Group the NO_SYSCALL_TABLE logic (Michael Petlan) [1873270] - [tools] perf intel-pt: Refine kernel decoding only warning message (Michael Petlan) [1873270] - [tools] perf record: Respect --no-switch-events (Michael Petlan) [1873270] - [tools] perf script: Fix --call-trace for Intel PT (Michael Petlan) [1873270] - [tools] perf evlist: Disable 'immediate' events last (Michael Petlan) [1873270] - [tools] perf kcore_copy: Fix module map when there are no modules loaded (Michael Petlan) [1873270] - [tools] perf jvmti: Fix demangling Java symbols (Michael Petlan) [1873270] - [tools] perf tests: Add test for the java demangler (Michael Petlan) [1873270] - [tools] perf jvmti: Do not report error when missing debug information (Michael Petlan) [1873270] - [tools] perf jvmti: Fix jitdump for methods without debug info (Michael Petlan) [1873270] - [tools] perf symbols: Fix debuginfo search for Ubuntu (Michael Petlan) [1873270] - [tools] perf parse: Add 'struct parse_events_state' pointer to scanner (Michael Petlan) [1873270] - [tools] perf stat: Do not pass avg to generic_metric (Michael Petlan) [1873270] - [tools] perf tests: Consider subtests when searching for user specified tests (Michael Petlan) [1873270] - [tools] perf list: Add metrics to command line usage (Michael Petlan) [1873270] - [tools] perf script: Don't force less for non tty output with --xed (Michael Petlan) [1873270] - [tools] perf metricgroup: Remove unnecessary ', ' from events (Michael Petlan) [1873270] - [tools] perf metricgroup: Add options to not group or merge (Michael Petlan) [1873270] - [tools] perf metricgroup: Remove duped metric group events (Michael Petlan) [1873270] - [tools] perf metricgroup: Order event groups by size (Michael Petlan) [1873270] - [tools] perf metricgroup: Delay events string creation (Michael Petlan) [1873270] - [tools] perf metricgroup: Use early return in add_metric (Michael Petlan) [1873270] - [tools] perf metricgroup: Always place duration_time last (Michael Petlan) [1873270] - [tools] perf metricgroup: Free metric_events on error (Michael Petlan) [1873270] - [tools] perf util: Fix potential SEGFAULT in put_tracepoints_path error path (Michael Petlan) [1873270] - [tools] perf util: Fix memory leak of prefix_if_not_in (Michael Petlan) [1873270] - [tools] perf ftrace: Detect workload failure (Michael Petlan) [1873270] - [tools] perf ftrace: Trace system wide if no target is given (Michael Petlan) [1873270] - [tools] perf branch: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [tools] perf config: Add stat.big-num support (Michael Petlan) [1873270] - [tools] perf bpf-loader: Add missing '*' for key_scan_pos (Michael Petlan) [1873270] - [tools] perf stat: Report summary for interval mode (Michael Petlan) [1873270] - [tools] perf stat: Save aggr value to first member of prev_raw_counts (Michael Petlan) [1873270] - [tools] perf stat: Copy counts from prev_raw_counts to evsel->counts (Michael Petlan) [1873270] - [tools] perf counts: Reset prev_raw_counts counts (Michael Petlan) [1873270] - [tools] perf stat: Fix wrong per-thread runtime stat for interval mode (Michael Petlan) [1873270] - [tools] perf expr: Allow numbers to be followed by a dot (Michael Petlan) [1873270] - [tools] perf metricgroup: Make 'evlist_used' variable a bitmap instead of array of bools (Michael Petlan) [1873270] - [tools] perf stat: Fail on extra comma while parsing events (Michael Petlan) [1873270] - [tools] perf script: Better align register values in dump (Michael Petlan) [1873270] - [tools] perf stat: POWER9 metrics: expand "ICT" acronym (Michael Petlan) [1873270] - [tools] perf tools: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [tools] perf intel-pt: Use allocated branch stack for PEBS sample (Michael Petlan) [1873270] - [tools] perf docs: Introduce security.txt file to document related issues (Michael Petlan) [1873270] - [tools] perf tool: Make perf tool aware of SELinux access control (Michael Petlan) [1873270] - [tools] perf docs: Extend CAP_SYS_ADMIN with CAP_PERFMON where needed (Michael Petlan) [1873270] - [tools] perf expr: Migrate expr ids table to a hashmap (Michael Petlan) [1873270] - [tools] perf tools: Grab a copy of libbpf's hashmap (Michael Petlan) [1873270] - [tools] perf stat: Fix duration_time value for higher intervals (Michael Petlan) [1873270] - [tools] perf trace: Fix compilation error for make NO_LIBBPF=1 DEBUG=1 (Michael Petlan) [1873270] - [tools] perf beauty: Allow the CC used in the arch errno names script to acccept CFLAGS (Michael Petlan) [1873270] - [tools] perf trace: Fix the selection for architectures to generate the errno name tables (Michael Petlan) [1873270] - [tools] perf test: Improve pmu event metric testing (Michael Petlan) [1873270] - [tools] perf test: Provide a subtest callback to ask for the reason for skipping a subtest (Michael Petlan) [1873270] - [tools] perf parse-events: Make add PMU verbose output clearer (Michael Petlan) [1873270] - [tools] perf expr: Fix memory leaks in metric bison (Michael Petlan) [1873270] - [tools] perf expr: Test parsing of floating point numbers (Michael Petlan) [1873270] - [tools] perf record: Use an eventfd to wakeup when done (Michael Petlan) [1873270] - [tools] tools feature: Rename HAVE_EVENTFD to HAVE_EVENTFD_SUPPORT (Michael Petlan) [1873270] - [tools] perf evsel: Initialize evsel->per_pkg_mask to NULL in evsel__init() (Michael Petlan) [1873270] - [tools] perf evsel: Fix 2 memory leaks (Michael Petlan) [1873270] - [tools] perf parse-events: Fix incorrect conversion of 'if () free()' to 'zfree()' (Michael Petlan) [1873270] - [tools] perf tools: Fix is_bpf_image function logic (Michael Petlan) [1873270] - [tools] perf c2c: Fix 'perf c2c record -e list' to show the default events used (Michael Petlan) [1873270] - [tools] perf record: Add dummy event during system wide synthesis (Michael Petlan) [1873270] - [tools] perf evsel: Dummy events never triggers, no need to ask for PERF_SAMPLE_BRANCH_STACK (Michael Petlan) [1873270] - [tools] perf parse-events: Use strcmp() to compare the PMU name (Michael Petlan) [1873270] - [tools] perf expr: Print a debug message for division by zero (Michael Petlan) [1873270] - [tools] perf expr: Debug lex if debugging yacc (Michael Petlan) [1873270] - [tools] perf expr: Parse numbers as doubles (Michael Petlan) [1873270] - [tools] perf expr: Increase max other (Michael Petlan) [1873270] - [tools] perf expr: Allow ',' to be an other token (Michael Petlan) [1873270] - [tools] perf metrics: Fix parse errors in skylake metrics (Michael Petlan) [1873270] - [tools] perf metrics: Fix parse errors in cascade lake metrics (Michael Petlan) [1873270] - [tools] perf expr: Allow for unlimited escaped characters in a symbol (Michael Petlan) [1873270] - [tools] perf script: Enable IP fields for callchains (Michael Petlan) [1873270] - [tools] perf callchain: Setup callchain properly in pipe mode (Michael Petlan) [1873270] - [tools] perf session: Try to read pipe data from file (Michael Petlan) [1873270] - [tools] perf tools: Do not seek in pipe fd during tracing data processing (Michael Petlan) [1873270] - [tools] perf tools: Do not display extra info when there is nothing to build (Michael Petlan) [1873270] - [tools] perf probe: Do not show the skipped events (Michael Petlan) [1873270] - [tools] perf probe: Check address correctness by map instead of _etext (Michael Petlan) [1873270] - [tools] perf probe: Fix to check blacklist address correctly (Michael Petlan) [1873270] - [tools] perf probe: Accept the instance number of kretprobe event (Michael Petlan) [1873270] - [tools] perf counts: Rename perf_evsel__*counts() to evsel__*counts() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__w_cache* to evsel__w_cache* (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__new*() to evsel__new*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__get_config_term() & friends to evsel__env() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__fprintf() to evsel__fprintf() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__resort*() to evsel__resort*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__object_config() to evsel__object_config() (Michael Petlan) [1873270] - [tools] perf cs-etm: Move definition of 'traceid_list' global variable from header file (Michael Petlan) [1873270] - [tools] libsymbols kallsyms: Move hex2u64 out of header (Michael Petlan) [1873270] - [tools] libsymbols kallsyms: Parse using io api (Michael Petlan) [1873270] - [tools] perf bench: Add kallsyms parsing (Michael Petlan) [1873270] - [tools] perf: cs-etm: Update to build with latest opencsd version (Michael Petlan) [1873270] - [tools] perf symbol: Fix kernel symbol address display (Michael Petlan) [1873270] - [tools] perf inject: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf annotate: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf trace: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf script: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf sched: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf lock: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf kmem: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf stat: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__store_ids() to evsel__store_id() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__env() to evsel__env() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__group_idx() to evsel__group_idx() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__fallback() to evsel__fallback() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__has*() to evsel__has*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__{prev, next}() to evsel__{prev, next}() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__parse_sample*() to evsel__parse_sample*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__read*() to *evsel__read() (Michael Petlan) [1873270] - [tools] perf evsel: Ditch perf_evsel__cmp(), not used for quite a while (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__is_*() to evsel__is*() (Michael Petlan) [1873270] - [tools] perf pmu: Add perf_pmu__find_by_type helper (Michael Petlan) [1873270] - [tools] tools feature: Add support for detecting libpfm4 (Michael Petlan) [1873270] - [tools] perf doc: Pass ASCIIDOC_EXTRA as an argument (Michael Petlan) [1873270] - [tools] perf mem2node: Avoid double free related to realloc (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__{str, int}val() and other tracepoint field metehods to to evsel__*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__open_per_*() to evsel__open_per_*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__*filter*() to evsel__*filter*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__*set_sample_*() to *evsel__*set_sample_*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__group_desc() to evsel__group_desc() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__*name() to *evsel__*name() (Michael Petlan) [1873270] - [tools] perf evsel: Rename __perf_evsel__sample_size() to __evsel__sample_size() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__calc_id_pos() to evsel__calc_id_pos() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__config*() to evsel__config*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__exit() to evsel__exit() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__is_aux_event() to evsel__is_aux_event() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__find_pmu() to evsel__find_pmu() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__compute_deltas() to evsel__compute_deltas() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__nr_cpus() to evsel__nr_cpus() (Michael Petlan) [1873270] - [tools] perf evsel: Rename 'struct perf_evsel__sb_cb_t' to 'struct evsel__sb_cb_t' (Michael Petlan) [1873270] - [tools] perf intel-pt: Update documentation about using /proc/kcore (Michael Petlan) [1873270] - [tools] perf intel-pt: Update documentation about itrace G and L options (Michael Petlan) [1873270] - [tools] perf intel-pt: Add support for synthesizing branch stacks for regular events (Michael Petlan) [1873270] - [tools] perf thread-stack: Add thread_stack__br_sample_late() (Michael Petlan) [1873270] - [tools] perf evsel: Add support for synthesized branch stack sample type (Michael Petlan) [1873270] - [tools] perf auxtrace: Add option to synthesize branch stack for regular events (Michael Petlan) [1873270] - [tools] perf intel-pt: Change branch stack support to use thread-stacks (Michael Petlan) [1873270] - [tools] perf intel-pt: Consolidate thread-stack use condition (Michael Petlan) [1873270] - [tools] perf thread-stack: Add branch stack support (Michael Petlan) [1873270] - [tools] perf tools: Simplify checking if SMT is active (Michael Petlan) [1873270] - [tools] perf tools: Fix reading new topology attribute "core_cpus" (Michael Petlan) [1873270] - [tools] libperf evlist: Fix a refcount leak (Michael Petlan) [1873270] - [tools] perf parse-events: Fix another memory leaks found on parse_events() (Michael Petlan) [1873270] - [tools] perf parse-events: Fix memory leaks found on parse_events (Michael Petlan) [1873270] - [tools] perf parse-events: Fix memory leaks found on parse_events (Michael Petlan) [1873270] - [tools] libperf: Add NULL pointer check for cpu_map iteration and NULL assignment for all_cpus (Michael Petlan) [1873270] - [tools] perf record: Move side band evlist setup to separate routine (Michael Petlan) [1873270] - [tools] perf record: Introduce --switch-output-event (Michael Petlan) [1873270] - [tools] libsubcmd: Introduce OPT_CALLBACK_SET() (Michael Petlan) [1873270] - [tools] perf evlist: Allow reusing the side band thread for more purposes (Michael Petlan) [1873270] - [tools] perf evlist: Move the sideband thread routines to separate object (Michael Petlan) [1873270] - [tools] perf parse-events: Add parse_events_option() variant that creates evlist (Michael Petlan) [1873270] - [tools] perf bpf: Decouple creating the evlist from adding the SB event (Michael Petlan) [1873270] - [tools] perf top: Move sb_evlist to 'struct perf_top' (Michael Petlan) [1873270] - [tools] perf record: Move sb_evlist to 'struct record' (Michael Petlan) [1873270] - [tools] perf tools: Move routines that probe for perf API features to separate file (Michael Petlan) [1873270] - [tools] perf vendor events power9: Add hv_24x7 socket/chip level metric events (Michael Petlan) [1873270] - [tools] perf tools: Enable Hz/hz prinitg for --metric-only option (Michael Petlan) [1873270] - [tools] perf tests expr: Added test for runtime param in metric expression (Michael Petlan) [1873270] - [tools] perf metricgroups: Enhance JSON/metric infrastructure to handle "?" (Michael Petlan) [1873270] - [tools] perf pmu: Fix function name in comment, its get_cpuid_str(), not get_cpustr() (Michael Petlan) [1873270] - [tools] perf report: Fix warning assignment of 0/1 to bool variable (Michael Petlan) [1873270] - [tools] perf tools: Remove unneeded semicolons (Michael Petlan) [1873270] - [tools] perf c2c: Remove unneeded semicolon (Michael Petlan) [1873270] - [tools] libtraceevent: Remove unneeded semicolon (Michael Petlan) [1873270] - [tools] perf script: Remove extraneous newline in perf_sample__fprintf_regs() (Michael Petlan) [1873270] - [tools] perf synthetic events: Remove use of sscanf from /proc reading (Michael Petlan) [1873270] - [tools] tools api: Add a lightweight buffered reading api (Michael Petlan) [1873270] - [tools] perf bench: Add a multi-threaded synthesize benchmark (Michael Petlan) [1873270] - [tools] perf record: Add num-synthesize-threads option (Michael Petlan) [1873270] - [tools] perf test session topology: Fix data path (Michael Petlan) [1873270] - [tools] perf stat: Improve runtime stat for interval mode (Michael Petlan) [1873270] - [tools] perf stat: Zero all the 'ena' and 'run' array slot stats for interval mode (Michael Petlan) [1873270] - [tools] perf evlist: Remove duplicate headers (Michael Petlan) [1873270] - [tools] perf bench: Fix div-by-zero if runtime is zero (Michael Petlan) [1873270] - [tools] perf cgroup: Avoid needless closing of unopened fd (Michael Petlan) [1873270] - [tools] perf hist: Add fast path for duplicate entries check (Michael Petlan) [1873270] - [tools] perf c2c: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf top: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf script: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf report: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf callchain: Stitch LBR call stack (Michael Petlan) [1873270] - [tools] perf callchain: Save previous cursor nodes for LBR stitching approach (Michael Petlan) [1873270] - [tools] perf thread: Save previous sample for LBR stitching approach (Michael Petlan) [1873270] - [tools] perf thread: Add a knob for LBR stitch approach (Michael Petlan) [1873270] - [tools] perf machine: Factor out lbr_callchain_add_lbr_ip() (Michael Petlan) [1873270] - [tools] perf machine: Factor out lbr_callchain_add_kernel_ip() (Michael Petlan) [1873270] - [tools] perf machine: Refine the function for LBR call stack reconstruction (Michael Petlan) [1873270] - [tools] perf machine: Remove the indent in resolve_lbr_callchain_sample (Michael Petlan) [1873270] - [tools] perf header: Support CPU PMU capabilities (Michael Petlan) [1873270] - [tools] perf parser: Add support to specify rXXX event with pmu (Michael Petlan) [1873270] - [tools] perf doc: allow ASCIIDOC_EXTRA to be an argument (Michael Petlan) [1873270] - [tools] perf pmu: Add support for PMU capabilities (Michael Petlan) [1873270] - [tools] tools lib traceevent: Take care of return value of asprintf (Michael Petlan) [1873270] - [tools] perf stat: Force error in fallback on :k events (Michael Petlan) [1873270] - [tools] perf tools: Add support for leader-sampling with AUX area events (Michael Petlan) [1873270] - [tools] perf evlist: Allow multiple read formats (Michael Petlan) [1873270] - [tools] perf evsel: Rearrange perf_evsel__config_leader_sampling() (Michael Petlan) [1873270] - [tools] perf evlist: Move leader-sampling configuration (Michael Petlan) [1873270] - [tools] perf evsel: Move and globalize perf_evsel__find_pmu() and perf_evsel__is_aux_event() (Michael Petlan) [1873270] - [tools] perf intel-pt: Add support for synthesizing callchains for regular events (Michael Petlan) [1873270] - [tools] perf evsel: Add support for synthesized sample type (Michael Petlan) [1873270] - [tools] perf evsel: Be consistent when looking which evsel PERF_SAMPLE_ bits are set (Michael Petlan) [1873270] - [tools] perf thread-stack: Add thread_stack__sample_late() (Michael Petlan) [1873270] - [tools] perf auxtrace: Add an option to synthesize callchains for regular events (Michael Petlan) [1873270] - [tools] perf auxtrace: For reporting purposes, un-group AUX area event (Michael Petlan) [1873270] - [tools] perf s390-cpumsf: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf cs-etm: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf arm-spe: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf intel-bts: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf intel-pt: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf auxtrace: Add ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf metrictroup: Split the metricgroup__add_metric function (Michael Petlan) [1873270] - [tools] perf expr: Add expr_scanner_ctx object (Michael Petlan) [1873270] - [tools] perf expr: Add expr_ prefix for parse_ctx and parse_id (Michael Petlan) [1873270] - [tools] perf synthetic-events: save 4kb from 2 stack frames (Michael Petlan) [1873270] - [tools] tools api fs: Make xxx__mountpoint() more scalable (Michael Petlan) [1873270] - [tools] perf bench: Add event synthesis benchmark (Michael Petlan) [1873270] - [tools] perf script: Simplify auxiliary event printing functions (Michael Petlan) [1873270] - [tools] perf tools: Support CAP_PERFMON capability (Michael Petlan) [1873270] - [tools] perf annotate: Add basic support for bpf_image (Michael Petlan) [1873270] - [tools] perf machine: Set ksymbol dso as loaded on arrival (Michael Petlan) [1873270] - [tools] perf tools: Synthesize bpf_trampoline/dispatcher ksymbol event (Michael Petlan) [1873270] - [tools] perf stat: Honour --timeout for forked workloads (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Add hw_len wherever missing (Michael Petlan) [1873270] - [kernel] perf: Fix task_function_call() error handling (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Fix RAPL config variable bug (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Add AMD Fam17h RAPL support (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Make perf_probe_msr() more robust and flexible (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Flip logic on default events visibility (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Refactor to share the RAPL code between Intel and AMD CPUs (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Move RAPL support to common x86 code (Michael Petlan) [1873270] - [kernel] perf/core: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [x86] perf/x86: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [x86] perf/x86/intel: Add more available bits for OFFCORE_RESPONSE of Intel Tremont (Michael Petlan) [1873270] - [x86] perf/x86/intel/pt: Drop pointless NULL assignment (Michael Petlan) [1873270] - [kernel] perf: Add cond_resched() to task_function_call() (Michael Petlan) [1873270] - [powerpc] powerpc/perf: open access for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [kernel] perf/core: open access to probes for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [kernel] perf/core: Open access to the core for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [include] perf/core: Fix !CONFIG_PERF_EVENTS build warnings and failures (Michael Petlan) [1873270] - [security] perf_event: Add support for LSM and SELinux checks (Michael Petlan) [1873270] - [powerpc] powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run (Michael Petlan) [1873270] - [powerpc] powerpc/hv-24x7: Add rtas call in hv-24x7 driver to get processor details (Michael Petlan) [1873270] - [powerpc] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show processor details (Michael Petlan) [1873270] - [documentation] Documentation/ABI: Add ABI documentation for chips and sockets (Michael Petlan) [1873270] - [powerpc] powerpc/pseries: Update hv-24x7 information after migration (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Fix ptrace code that muck around with address/len (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Fix length calculation for unaligned target (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Introduce macros for watchpoint length (Michael Petlan) [1873270] - [powerpc] powerpc/perf: fix imc allocation failure handling (Michael Petlan) [1873270] - [powerpc] powerpc/perf/24x7: use rb_entry (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix MMCRA corruption by bhrb_filter (Michael Petlan) [1873270] - [powerpc] perf/core, arch/powerpc: use PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1873270] - [powerpc] Powerpc/perf: Wire up PMI throttling (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Remove l2 bus events from HW cache event array (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Add constraints for power9 l2/l3 bus events (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix unit_sel/cache_sel checks (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Cleanup cache_sel bits comment (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix thresholding counter data for unknown type (Michael Petlan) [1873270] - [fs] writeback: Drop I_DIRTY_TIME_EXPIRE (Waiman Long) [1860031] - [fs] writeback: Fix sync livelock due to b_dirty_time processing (Waiman Long) [1860031] - [fs] writeback: Avoid skipping inode writeback (Waiman Long) [1860031] - [fs] writeback: Protect inode->i_io_list with inode->i_lock (Waiman Long) [1860031] - [fs] dcache: sort the freeing-without-RCU-delay mess for good (Waiman Long) [1860031] - [net] udp: Improve load balancing for SO_REUSEPORT. (Davide Caratti) [1894075] - [net] udp: Fix wrong clean up for IS_UDPLITE macro (Davide Caratti) [1894075] - [fs] ext4: disallow modifying DAX inode flag if inline_data has been set (Eric Sandeen) [1838344] - [include] dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Fix stack overflow when mounting fsdax pmem device (Eric Sandeen) [1838876 1854346 1838344] - [dax] dm: Call proper helper to determine dax support (Eric Sandeen) [1838876 1854346 1838344] - [md] dm/dax: Fix table reference counts (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: fix detection of dax support for non-persistent memory block devices (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: do not print error message for non-persistent memory block device (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Fix incorrect argument passed to xas_set_err() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Support that ioctl(SETXFLAGS/GETXFLAGS) can set/get inode DAX on XFS (Eric Sandeen) [1838876 1854346 1838344] - [dax] drivers/dax: Expand lock scope to cover the use of addresses (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/dax: Remove unused size parameter (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: print error message by pr_info() in __generic_fsdax_supported() (Eric Sandeen) [1838876 1854346 1838344] - [fs] ext4: avoid race conditions when remounting with options that change dax (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Update xfs_ioctl_setattr_dax_invalidate() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Combine xfs_diflags_to_linux() and xfs_diflags_to_iflags() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Create function xfs_inode_should_enable_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Make DAX mount option a tri-state (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Change XFS_MOUNT_DAX to XFS_MOUNT_DAX_ALWAYS (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Remove unnecessary initialization of i_rwsem (Eric Sandeen) [1838876 1854346 1838344] - [documentation] Documentation/dax: Update DAX enablement for ext4 (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Introduce DAX inode flag (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Remove jflag variable (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Make DAX mount option a tri-state (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Only change S_DAX on inode load (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Update ext4_should_use_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Change EXT4_MOUNT_DAX to EXT4_MOUNT_DAX_ALWAYS (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Narrow scope of DAX check in setflags (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Introduce DCACHE_DONTCACHE (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Lift XFS_IDONTCACHE to the VFS layer (Eric Sandeen) [1838876 1854346 1838344] - [documentation] Documentation/dax: Update Usage section (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/stat: Define DAX statx attribute (Eric Sandeen) [1838876 1854346 1838344] - [block] fs: Remove unneeded IS_DAX() check in io_is_direct() (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Move mandatory ->zero_page_range() check in alloc_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax, iomap: Add helper dax_iomap_zero() to zero a range (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Use new dax zero page method for zeroing a page (Eric Sandeen) [1838876 1854346 1838344] - [md] dm,dax: Add dax zero_page_range operation (Eric Sandeen) [1838876 1854346 1838344] - [s390] s390, dcssblk, dax: Add dax zero_page_range operation to dcssblk driver (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax, pmem: Add a dax operation zero_page_range (Eric Sandeen) [1838876 1854346 1838344] - [nvdimm] pmem: Add functions for reading/writing page to/from pmem (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Constify vma argument to vma_is_dax (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: pass NOWAIT flag to iomap_apply (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Get rid of fs_dax_get_by_host() helper (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Pass dax_dev instead of bdev to dax_writeback_mapping_range() (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Fix alloc_dax_region() compile warning (Eric Sandeen) [1838876 1854346 1838344] - [fs] xfs: disable map_sync for async flush (Eric Sandeen) [1838876 1854346 1838344] - [fs] ext4: disable map_sync for async flush (Eric Sandeen) [1838876 1854346 1838344] - [include] dax: check synchronous mapping is supported (Eric Sandeen) [1838876 1854346 1838344] - [dax] libnvdimm: add dax_dev sync flag (Eric Sandeen) [1838876 1854346 1838344] - [nvdimm] libnvdimm: nd_region flush callback support (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: only allow FSSETXATTR to set DAX flag on files and dirs (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: teach vfs_ioc_fssetxattr_check to check extent size hints (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: teach vfs_ioc_fssetxattr_check to check project id info (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: create a generic checking function for FS_IOC_FSSETXATTR (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: create a generic checking and prep function for FS_IOC_SETFLAGS (Eric Sandeen) [1838876 1854346 1838344] - [dax] drivers/dax: Allow to include DEV_DAX_PMEM as builtin (Eric Sandeen) [1838876 1854346 1838344] - [netdrv] net: intel: Remove in_interrupt() warnings (Corinna Vinschen) [1838746] - [netdrv] igb: read PBA number from flash (Corinna Vinschen) [1838746] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838746] - [netdrv] treewide: Use fallthrough pseudo-keyword (Corinna Vinschen) [1838746] - [netdrv] igb: use eth_zero_addr() to clear mac address (Corinna Vinschen) [1838746] - [netdrv] igb: Remove unnecessary usages of memset (Corinna Vinschen) [1838746] - [netdrv] igb: reinit_locked() should be called with rtnl_lock (Corinna Vinschen) [1838746] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838746] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838746] - [netdrv] igb: make igb_set_fc_watermarks() return void (Corinna Vinschen) [1838746] - [netdrv] igb: Report speed and duplex as unknown when device is runtime suspended (Corinna Vinschen) [1838746] - [netdrv] igb: convert to use i2c_new_client_device() (Corinna Vinschen) [1838746] - [net] Bluetooth: Allow suspend even when preparation has failed (Gopal Tiwari) [1881485] - [net] Bluetooth: Check scan state before disabling during suspend (Gopal Tiwari) [1881485] - [fs] fuse: fix the ->direct_IO() treatment of iov_iter (Miklos Szeredi) [1875608] - [net] openvswitch: handle DNAT tuple collision (Dumitru Ceara) [1877128] - [net] xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame (Petr Oros) [1867194]- [fs] NFSv4.2: fix failure to unregister shrinker (Scott Mayhew) [1897988] - [tools] cpupower: Provide online and offline CPU information (Diego Domingos) [1893779] - [net] net/smc: improve return codes for SMC-Dv2 (Claudio Imbrenda) [1731027] - [s390] s390/ism: fix incorrect system EID (Claudio Imbrenda) [1731027] - [net] net/smc: fix suppressed return code (Claudio Imbrenda) [1731027] - [net] net/smc: fix null pointer dereference in smc_listen_decline() (Claudio Imbrenda) [1731027] - [net] net/smc: fix invalid return code in smcd_new_buf_create() (Claudio Imbrenda) [1731027] - [net] net/smc: fix valid DMBE buffer sizes (Claudio Imbrenda) [1731027] - [net] net/smc: fix use-after-free of delayed events (Claudio Imbrenda) [1731027] - [net] net/smc: restore smcd_version when all ISM V2 devices failed to init (Claudio Imbrenda) [1731027] - [net] net/smc: cleanup buffer usage in smc_listen_work() (Claudio Imbrenda) [1731027] - [net] net/smc: consolidate unlocking in same function (Claudio Imbrenda) [1731027] - [net] net/smc: use an array to check fields in system EID (Claudio Imbrenda) [1731027] - [net] net/smc: send ISM devices with unique chid in CLC proposal (Claudio Imbrenda) [1731027] - [net] net/smc: CLC decline - V2 enhancements (Claudio Imbrenda) [1731027] - [net] net/smc: introduce CLC first contact extension (Claudio Imbrenda) [1731027] - [net] net/smc: CLC accept / confirm V2 (Claudio Imbrenda) [1731027] - [net] net/smc: determine accepted ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: build and send V2 CLC proposal (Claudio Imbrenda) [1731027] - [net] net/smc: determine proposed ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce list of pnetids for Ethernet devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce CHID callback for ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce System Enterprise ID (SEID) (Claudio Imbrenda) [1731027] - [net] net/smc: prepare for more proposed ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: split CLC confirm/accept data to be sent (Claudio Imbrenda) [1731027] - [net] net/smc: separate find device functions (Claudio Imbrenda) [1731027] - [net] net/smc: CLC header fields renaming (Claudio Imbrenda) [1731027] - [net] net/smc: remove constant and introduce helper to check for a pnet id (Claudio Imbrenda) [1731027] - [netdrv] vmxnet3: fix cksum offload issues for non-udp tunnels (Cathy Avery) [1868451] - [netdrv] vmxnet3: use correct tcp hdr length when packet is encapsulated (Cathy Avery) [1868451] - [scsi] scsi: vmw_pvscsi: Use true, false for adapter->use_msg (Cathy Avery) [1895014] - [scsi] scsi: vmw_pvscsi: Silence dma mapping errors (Cathy Avery) [1895014] - [scsi] scsi: vmw_pvscsi: Fix swiotlb operation (Cathy Avery) [1895014] - [scsi] scsi: vmw_pscsi: use sg helper to iterate over scatterlist (Cathy Avery) [1895014] - [scsi] Revert "vmw_pvscsi: Fixed to work with SG_CHAIN" (Cathy Avery) [1895014] - [scsi] scsi: vmw_pscsi: switch to generic DMA API (Cathy Avery) [1895014] - [netdrv] mdiobus: Disable preemption upon u64_stats update (Petr Oros) [1889849] - [net] u64_stats: Document writer non-preemptibility requirement (Petr Oros) [1889849] - [netdrv] phy: fixed_phy: Remove unused seqcount (Petr Oros) [1889849] - [net] net/smc: fix double kfree in smc_listen_work() (Claudio Imbrenda) [1847444] - [net] net/smc: check variable before dereferencing in smc_close.c (Claudio Imbrenda) [1847444] - [net] net/smc: use separate work queues for different worker types (Claudio Imbrenda) [1847444] - [net] net/smc: use the retry mechanism for netlink messages (Claudio Imbrenda) [1847444] - [net] net/smc: immediate freeing in smc_lgr_cleanup_early() (Claudio Imbrenda) [1847444] - [net] net/smc: reduce smc_listen_decline() calls (Claudio Imbrenda) [1847444] - [net] net/smc: improve server ISM device determination (Claudio Imbrenda) [1847444] - [net] net/smc: common routine for CLC accept and confirm (Claudio Imbrenda) [1847444] - [net] net/smc: dynamic allocation of CLC proposal buffer (Claudio Imbrenda) [1847444] - [net] net/smc: introduce better field names (Claudio Imbrenda) [1847444] - [net] net/smc: reduce active tcp_listen workers (Claudio Imbrenda) [1847444] - [net] net/smc: fix sock refcounting in case of termination (Claudio Imbrenda) [1847444] - [net] net/smc: reset sndbuf_desc if freed (Claudio Imbrenda) [1847444] - [net] net/smc: fix toleration of fake add_link messages (Claudio Imbrenda) [1847444] - [net] net/smc: Prevent kernel-infoleak in __smc_diag_dump() (Claudio Imbrenda) [1847444] - [s390] s390/ism: fix error return code in ism_probe() (Claudio Imbrenda) [1847444] - [s390] s390/zcrypt: Introduce Failure Injection feature (Philipp Rudo) [1851124] - [s390] s390/zcrypt: move ap_msg param one level up the call chain (Philipp Rudo) [1851124] - [s390] s390/ap/zcrypt: revisit ap and zcrypt error handling (Philipp Rudo) [1851124] - [s390] s390/ap: Support AP card SCLP config and deconfig operations (Philipp Rudo) [1851124] - [s390] s390/sclp: Add support for SCLP AP adapter config/deconfig (Philipp Rudo) [1851124] - [s390] s390/ap: add card/queue deconfig state (Philipp Rudo) [1851124] - [s390] s390/ap: add error response code field for ap queue devices (Philipp Rudo) [1851124] - [s390] s390/ap: split ap queue state machine state from device state (Philipp Rudo) [1851124] - [crypto] s390/zcrypt: New config switch CONFIG_ZCRYPT_DEBUG (Philipp Rudo) [1851124] - [s390] s390/zcrypt: introduce msg tracking in zcrypt functions (Philipp Rudo) [1851124] - [s390] s390/ap: rework crypto config info and default domain code (Philipp Rudo) [1851124] - [s390] s390/zcrypt: provide cex4 cca sysfs attributes for cex3 (Philipp Rudo) [1851124] - [s390] s390/ap: rename and clarify ap state machine related stuff (Philipp Rudo) [1851124] - [s390] s390/zcrypt: split ioctl function into smaller code units (Philipp Rudo) [1851124] - [s390] s390/zcrypt: code beautification and struct field renames (Philipp Rudo) [1851124] - [s390] s390/zcrypt: fix smatch warnings (Philipp Rudo) [1851124] - [s390] s390/ap: introduce new ap function ap_get_qdev() (Philipp Rudo) [1851124] - [s390] s390/zcrypt: replace snprintf/sprintf with scnprintf (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Use scnprintf() for avoiding potential buffer overflow (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Support for CCA protected key block version 2 (Philipp Rudo) [1851124] - [s390] s390/zcrypt: fix card and queue total counter wrap (Philipp Rudo) [1851124] - [s390] s390/zcrypt: move ap device reset from bus to driver code (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Fix CCA cipher key gen with clear key value function (Philipp Rudo) [1851124] - [s390] s390/zcrypt: handle new reply code FILTERED_BY_HYPERVISOR (Philipp Rudo) [1851124] - [fs] NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1888612] - [fs] NFSv4.x recover from pre-mature loss of openstateid (Benjamin Coddington) [1888612] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1888612] - [hv] hv: vmbus: Add timeout to vmbus_wait_for_unload (Mohammed Gamal) [1888980] - [net] sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action() (Ivan Vecera) [1874071] - [net] sched: act_ct: Fix adding udp port mangle operation (Ivan Vecera) [1874071] - [net] sched: Fix suspicious RCU usage while accessing tcf_tunnel_info (Ivan Vecera) [1874071] - [net] sched: get rid of qdisc->padded (Ivan Vecera) [1874071] - [net] sched: check error pointer in tcf_dump_walker() (Ivan Vecera) [1874071] - [net] sched: remove a redundant goto chain check (Ivan Vecera) [1874071] - [net] sched: cls_u32: Replace one-element array with flexible-array member (Ivan Vecera) [1874071] - [net] sched: commit action insertions together (Ivan Vecera) [1874071] - [net] sched: defer tcf_idr_insert() in tcf_action_init_1() (Ivan Vecera) [1874071] - [net] sched: Remove unused function qdisc_queue_drop_head() (Ivan Vecera) [1874071] - [net] sched: taprio: Fix allowing too small intervals (Ivan Vecera) [1874071] - [net] sched: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc (Ivan Vecera) [1874071] - [net] sched: skip an unnecessay check (Ivan Vecera) [1874071] - [net] sched: act_ife: load meta modules before tcf_idr_check_alloc() (Ivan Vecera) [1874071] - [net] sched: fix error path in red_init() (Ivan Vecera) [1874071] - [net] sched: taprio: Fix using wrong queues in gate mask (Ivan Vecera) [1874071] - [net] sched: Use fallthrough pseudo-keyword (Ivan Vecera) [1874071] - [net] netlink: consistently use NLA_POLICY_EXACT_LEN() (Ivan Vecera) [1874071] - [net] sched: act_ct: fix miss set mru for ovs after defrag in act_ct (Ivan Vecera) [1874071] - [net] sched: cls_u32: Use struct_size() helper (Ivan Vecera) [1874071] - [net] sched: act_pedit: Use flex_array_size() helper in memcpy() (Ivan Vecera) [1874071] - [net] sched: initialize timer earlier in red_init() (Ivan Vecera) [1874071] - [net] sched: cls_flower: Add hash info to flow classification (Ivan Vecera) [1874071] - [net] flow_dissector: add packet hash dissection (Ivan Vecera) [1874071] - [net] sched: sch_api: add missing rcu read lock to silence the warning (Ivan Vecera) [1874071] - [tools] tc-testing: Add tdc to kselftests (Ivan Vecera) [1874071] - [net] sched: Do not drop root lock in tcf_qevent_handle() (Ivan Vecera) [1874071] - [net] sched: kerneldoc fixes (Ivan Vecera) [1874071] - [net] sched: Pass qdisc reference in struct flow_block_offload (Ivan Vecera) [1874071] - [net] sched: Use fallthrough pseudo-keyword (Ivan Vecera) [1874071] - [net] sched: Allow changing default qdisc to FQ-PIE (Ivan Vecera) [1874071] - [net] qos: police action offloading parameter 'burst' change to the original value (Ivan Vecera) [1874071] - [tools] selftests: forwarding: Add a RED test for SW datapath (Ivan Vecera) [1874071] - [net] sched: sch_red: Add qevents "early_drop" and "mark" (Ivan Vecera) [1874071] - [net] sched: sch_red: Split init and change callbacks (Ivan Vecera) [1874071] - [net] sched: Introduce helpers for qevent blocks (Ivan Vecera) [1874071] - [net] sched: sch_cake: add RFC 8622 LE PHB support to CAKE diffserv handling (Ivan Vecera) [1874071] - [net] qos: police action add index for tc flower offloading (Ivan Vecera) [1874071] - [net] qos: add tc police offloading action with max frame size limit (Ivan Vecera) [1874071] - [net] sched: tcindex_change: Remove redundant null check (Ivan Vecera) [1874071] - [net] sched: Remove redundant skb null check (Ivan Vecera) [1874071] - [net] sched: Remove redundant condition in qdisc_graft (Ivan Vecera) [1874071] - [net] sched: cls_u32: Use struct_size() in kzalloc() (Ivan Vecera) [1874071] - [net] sched: taprio: Use struct_size() in kzalloc() (Ivan Vecera) [1874071] - [net] vlan: consolidate VLAN parsing code and limit max parsing depth (Ivan Vecera) [1874071] - [net] flow_offload: Move rhashtable inclusion to the source file (Ivan Vecera) [1874071] - [net] sched: act_ct: fix restore the qdisc_skb_cb after defrag (Ivan Vecera) [1874071] - [net] sched: fix a memory leak in atm_tc_init() (Ivan Vecera) [1874071] - [net] sched: act_ct: add miss tcf_lastuse_update. (Ivan Vecera) [1874071] - [net] sched: consistently handle layer3 header accesses in the presence of VLANs (Ivan Vecera) [1874071] - [net] tunnel: Propagate ECT(1) when decapsulating as recommended by RFC6040 (Ivan Vecera) [1874071] - [net] sched: sch_cake: fix a few style nits (Ivan Vecera) [1874071] - [net] sched: sch_cake: don't call diffserv parsing code when it is not needed (Ivan Vecera) [1874071] - [net] sched: sch_cake: don't try to reallocate or unshare skb unconditionally (Ivan Vecera) [1874071] - [tools] tc-testing: avoid action cookies with odd length. (Ivan Vecera) [1874071] - [net] sched: Add MODULE_DESCRIPTION entries to network modules (Ivan Vecera) [1874071] - [tools] tc-testing: update geneve options match in tunnel_key unit tests (Ivan Vecera) [1874071] - [net] flow_offload: fix flow_indr_dev_unregister path (Ivan Vecera) [1874071] - [net] flow_offload: use flow_indr_block_cb_alloc/remove function (Ivan Vecera) [1874071] - [net] flow_offload: add flow_indr_block_cb_alloc/remove function (Ivan Vecera) [1874071] - [net] sched: act_gate: fix configuration of the periodic timer (Ivan Vecera) [1874071] - [net] sched: act_gate: fix NULL dereference in tcf_gate_init() (Ivan Vecera) [1874071] - [net] flow_offload: remove indirect flow_block declarations leftover (Ivan Vecera) [1874071] - [net] sched: export __netdev_watchdog_up() (Ivan Vecera) [1874071] - [net] sched: act_ct: add nat mangle action only for NAT-conntrack (Ivan Vecera) [1874071] - [net] sched: sch_cake: Take advantage of skb->hash where appropriate (Ivan Vecera) [1874071] - [net] sched: fix a couple of splats in the error path of tfc_gate_init() (Ivan Vecera) [1874071] - [net] sched: get rid of unnecessary dev_qdisc_reset() (Ivan Vecera) [1874071] - [net] sched: avoid resetting active qdisc for multiple times (Ivan Vecera) [1874071] - [net] sched: add a tracepoint for qdisc creation (Ivan Vecera) [1874071] - [net] sched: add tracepoints for qdisc_reset() and qdisc_destroy() (Ivan Vecera) [1874071] - [net] sched: use qdisc_reset() in qdisc_destroy() (Ivan Vecera) [1874071] - [net] sched: fix infinite loop in sch_fq_pie (Ivan Vecera) [1874071] - [net] sched: fix reporting the first-time use timestamp (Ivan Vecera) [1874071] - [net] tracing: Fix header include guards in trace event headers (Ivan Vecera) [1874071] - [netdrv] ipvlan: fix device features (Davide Caratti) [1892621] - [netdrv] ipvlan: consolidate TSO flags using NETIF_F_ALL_TSO (Davide Caratti) [1892621] - [netdrv] ipvlan: set hw_enc_features like macvlan (Davide Caratti) [1892621] - [tools] ACPI: Use valid link to the ACPI specification (David Arcari) [1857138] - [tools] cpupower: Replace HTTP links with HTTPS ones (David Arcari) [1857138] - [tools] cpupower: Fix NULL but dereferenced coccicheck errors (David Arcari) [1857138] - [tools] cpupower: Fix comparing pointer to 0 coccicheck warns (David Arcari) [1857138] - [tools] cpupower: Remove unneeded semicolon (David Arcari) [1857138] - [tools] cpupower: .gitignore: add SPDX License Identifier (David Arcari) [1857138] - [tools] cpupower: avoid multiple definition with gcc -fno-common (David Arcari) [1857138] - [tools] cpupower: Revert library ABI changes from commit ae2917093fb60bdc1ed3e (David Arcari) [1857138] - [tools] cpupower: ToDo: Update ToDo with ideas for per_cpu_schedule handling (David Arcari) [1857138] - [tools] tools/power/cpupower: Fix initializer override in hsw_ext_cstates (David Arcari) [1857138] - [tools] cpupower: update German translation (David Arcari) [1857138] - [tools] tools/power/cpupower: fix 64bit detection when cross-compiling (David Arcari) [1857138] - [tools] cpupower: Add missing newline at end of file (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (David Arcari) [1857138] - [tools] cpupower: correct spelling of interval (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 167 (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 166 (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (David Arcari) [1857138] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 155 (David Arcari) [1857138] - [tools] cpupower: Add SPDX license identifier for more missed files (David Arcari) [1857138] - [tools] tools/power/cpupower: Display boost frequency separately (David Arcari) [1857138] - [tools] cpupower : Auto-completion for cpupower tool (David Arcari) [1857138] - [tools] tools/power/cpupower: fix compilation with STATIC=true (David Arcari) [1857138] - [tools] cpupower: remove stringop-truncation waring (David Arcari) [1857138] - [tools] cpupower: convert ISO_8859-1 text comments to utf-8 (David Arcari) [1857138] - [x86] x86/resctrl: Support wider MBM counters (Puneet Sethi) [1834658] - [x86] x86/resctrl: Support CPUID enumeration of MBM counter width (Puneet Sethi) [1834658] - [x86] x86/resctrl: Maintain MBM counter width per resource (Puneet Sethi) [1834658] - [x86] x86/resctrl: Query LLC monitoring properties once during boot (Puneet Sethi) [1834658] - [x86] x86/resctrl: Remove unnecessary RMID checks (Puneet Sethi) [1834658] - [x86] x86/cpu: Move resctrl CPUID code to resctrl/ (Puneet Sethi) [1834658] - [x86] x86/resctrl: Rename asm/resctrl_sched.h to asm/resctrl.h (Puneet Sethi) [1834658] - [x86] x86/resctrl: Preserve CDP enable over CPU hotplug (Puneet Sethi) [1834658] - [net] af_packet: TPACKET_V3: fix fill status rwlock imbalance (Ivan Vecera) [1889829] - [net] packet: tpacket_rcv: do not increment ring index on drop (Ivan Vecera) [1889829] - [net] af_packet: TPACKET_V3: replace busy-wait loop (Ivan Vecera) [1889829] - [net] SUNRPC: Fix svc_flush_dcache() (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Be consistent about mirror index types (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read (Scott Mayhew) [1888214] - [fs] NFSv4.2: fix client's attribute cache management for copy_file_range (Scott Mayhew) [1888214] - [fs] nfs: Fix security label length not being reset (Scott Mayhew) [1888214] - [net] SUNRPC: stop printk reading past end of string (Scott Mayhew) [1888214] - [fs] NFS: Zero-stateid SETATTR should first return delegation (Scott Mayhew) [1888214] - [fs] NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall (Scott Mayhew) [1888214] - [net] SUNRPC: remove duplicate include (Scott Mayhew) [1888214] - [fs] nfsd: fix oops on mixed NFSv4/NFSv3 client access (Scott Mayhew) [1888214] - [fs] NFS: Fix flexfiles read failover (Scott Mayhew) [1888214] - [fs] fs: nfs: delete repeated words in comments (Scott Mayhew) [1888214] - [fs] rpc_pipefs: convert comma to semicolon (Scott Mayhew) [1888214] - [fs] NFS: Don't return layout segments that are in use (Scott Mayhew) [1888214] - [fs] NFS: Don't move layouts to plh_return_segs list while in use (Scott Mayhew) [1888214] - [fs] NFS: Add layout segment info to pnfs read/write/commit tracepoints (Scott Mayhew) [1888214] - [fs] NFS: Add tracepoints for layouterror and layoutstats (Scott Mayhew) [1888214] - [fs] NFS: Report the stateid + status in trace_nfs4_layoutreturn_on_close() (Scott Mayhew) [1888214] - [fs] NFSv4.2: xattr cache: get rid of cache discard work queue (Scott Mayhew) [1888214] - [fs] NFS: remove redundant initialization of variable result (Scott Mayhew) [1888214] - [net] svcrdma: CM event handler clean up (Scott Mayhew) [1888214] - [net] svcrdma: Remove transport reference counting (Scott Mayhew) [1888214] - [net] svcrdma: Fix another Receive buffer leak (Scott Mayhew) [1888214] - [trace] SUNRPC: Refresh the show_rqstp_flags() macro (Scott Mayhew) [1888214] - [fs] nfsd: netns.h: delete a duplicated word (Scott Mayhew) [1888214] - [net] sunrpc: destroy rpc_inode_cachep after unregister_filesystem (Scott Mayhew) [1888214] - [fs] freezer: Add unsafe version of freezable_schedule_timeout_interruptible() for NFS (Scott Mayhew) [1888214] - [fs] NFSv4.2: add client side xattr caching (Scott Mayhew) [1888214] - [fs] NFSv4.2: hook in the user extended attribute handlers (Scott Mayhew) [1888214] - [fs] NFSv4.2: add the extended attribute proc functions (Scott Mayhew) [1888214] - [fs] nfs: make the buf_to_pages_noslab function available to the nfs code (Scott Mayhew) [1888214] - [fs] nfs: define and use the NFS_INO_INVALID_XATTR flag (Scott Mayhew) [1888214] - [fs] NFS: Update symbolic flags displayed by trace events (Scott Mayhew) [1888214] - [fs] nfs: modify update_changeattr to deal with regular files (Scott Mayhew) [1888214] - [fs] NFSv4.2: query the extended attribute access bits (Scott Mayhew) [1888214] - [fs] nfs: define nfs_access_get_cached function (Scott Mayhew) [1888214] - [fs] NFSv4.2: add client side XDR handling for extended attributes (Scott Mayhew) [1888214] - [fs] NFSv4.2: query the server for extended attribute support (Scott Mayhew) [1888214] - [fs] NFSv4.2: define limits and sizes for user xattr handling (Scott Mayhew) [1888214] - [include] nfs: add client side only definitions for user xattrs (Scott Mayhew) [1888214] - [fs] nfsd: Use seq_putc() in two functions (Scott Mayhew) [1888214] - [net] svcrdma: Display chunk completion ID when posting a rw_ctxt (Scott Mayhew) [1888214] - [net] svcrdma: Record send_ctxt completion ID in trace_svcrdma_post_send() (Scott Mayhew) [1888214] - [net] svcrdma: Introduce Send completion IDs (Scott Mayhew) [1888214] - [net] svcrdma: Record Receive completion ID in svc_rdma_decode_rqst (Scott Mayhew) [1888214] - [net] svcrdma: Introduce Receive completion IDs (Scott Mayhew) [1888214] - [trace] svcrdma: Introduce infrastructure to support completion IDs (Scott Mayhew) [1888214] - [net] svcrdma: Add common XDR encoders for RDMA and Read segments (Scott Mayhew) [1888214] - [net] svcrdma: Add common XDR decoders for RDMA and Read segments (Scott Mayhew) [1888214] - [net] SUNRPC: Add helpers for decoding list discriminators symbolically (Scott Mayhew) [1888214] - [include] svcrdma: Remove declarations for functions long removed (Scott Mayhew) [1888214] - [net] svcrdma: Clean up trace_svcrdma_send_failed() tracepoint (Scott Mayhew) [1888214] - [net] svcrdma: Consolidate send_error helper functions (Scott Mayhew) [1888214] - [net] svcrdma: Make svc_rdma_send_error_msg() a global function (Scott Mayhew) [1888214] - [net] svcrdma: Eliminate return value for svc_rdma_send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Add a @status parameter to svc_rdma_send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Add @rctxt parameter to svc_rdma_send_error() functions (Scott Mayhew) [1888214] - [net] svcrdma: Remove save_io_pages() call from send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Fix page leak in svc_rdma_recv_read_chunk() (Scott Mayhew) [1888214] - [net] SUNRPC: Augment server-side rpcgss tracepoints (Scott Mayhew) [1888214] - [fs] nfsd: add fattr support for user extended attributes (Scott Mayhew) [1888214] - [fs] nfsd: implement the xattr functions and en/decode logic (Scott Mayhew) [1888214] - [fs] nfsd: add structure definitions for xattr requests / responses (Scott Mayhew) [1888214] - [fs] nfsd: take xattr bits into account for permission checks (Scott Mayhew) [1888214] - [fs] nfsd: define xattr functions to call into their vfs counterparts (Scott Mayhew) [1888214] - [fs] nfsd: add defines for NFSv4.2 extended attribute support (Scott Mayhew) [1888214] - [fs] nfsd: split off the write decode code into a separate function (Scott Mayhew) [1888214] - [fs] xattr: add a function to check if a namespace is supported (Scott Mayhew) [1888214] - [fs] xattr: break delegations in {set, remove}xattr (Scott Mayhew) [1888214] - [uapi] nfs, nfsd: NFSv4.2 extended attribute protocol definitions (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: The mirror count could depend on the layout segment range (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Clean up redundant calls to pnfs_put_lseg() (Scott Mayhew) [1888214] - [fs] NFS: Allow applications to speed up readdir+statx() using AT_STATX_DONT_SYNC (Scott Mayhew) [1888214] - [include] NFS: Replace zero-length array with flexible-array (Scott Mayhew) [1888214] - [include] nfs4: Remove unneeded semicolon (Scott Mayhew) [1888214] - [tools] selftests/livepatch: adopt to newer sysctl error format (Yannick Cote) [1869880] - [tools] selftests/livepatch: Use "comm" instead of "diff" for dmesg (Yannick Cote) [1869880] - [tools] selftests/livepatch: add test delimiter to dmesg (Yannick Cote) [1869880] - [tools] selftests/livepatch: refine dmesg 'taints' in dmesg comparison (Yannick Cote) [1869880] - [tools] selftests/livepatch: Don't clear dmesg when running tests (Yannick Cote) [1869880] - [lib] selftests/livepatch: fix mem leaks in test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: more verification in test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: rework test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: simplify test-klp-callbacks busy target tests (Yannick Cote) [1869880] - [tools] selftests: Install settings files to fix TIMEOUT failures (Yannick Cote) [1869880] - [cpufreq] cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Free memory only when turning off (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Add ->offline and ->online callbacks (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Tweak the EPP sysfs interface (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Update cached EPP in the active mode (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Refuse to turn off with HWP enabled (Puneet Sethi) [1881199] - [documentation] Documentation: fix pm/intel_pstate build warning and wording (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Implement passive mode with HWP enabled (Puneet Sethi) [1881199] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0 (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Rearrange the storing of new EPP values (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Avoid enabling HWP if EPP is not supported (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Clean up aperf_mperf_shift description (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Supply struct attribute description for get_aperf_mperf_shift() (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix static checker warning for epp variable (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Allow raw energy performance preference value (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Allow enable/disable energy efficiency (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Add one more OOB control bit (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: update links for references (Puneet Sethi) [1881199] - [documentation] Documentation: PM: Unify copyright notices (Puneet Sethi) [1881199] - [documentation] Documentation: PM: Add SPDX license tags to multiple files (Puneet Sethi) [1881199] - [documentation] cpufreq: intel_pstate: Documentation: Add references sections (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: Clarify coordination of P-State limits (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: Add base_frequency information (Puneet Sethi) [1881199] - [i2c] i2c: ismt: Remove call to memset after dmam_alloc_coherent (Tony Camuso) [1875395] - [i2c] i2c: ismt: Add support for Intel Cedar Fork (Tony Camuso) [1875395] - [documentation] docs: net: fm10k: add documentation for fm10k driver (Vladis Dronov) [1838728] - [netdrv] net: fm10k: reject unsupported coalescing params (Vladis Dronov) [1838728] - [netdrv] intel: Replace zero-length array with flexible-array member (Vladis Dronov) [1838728] - [netdrv] net: Use skb accessors in network drivers (Vladis Dronov) [1838728] - [netdrv] hdlc_ppp: add range checks in ppp_cp_parse_cr() (Guillaume Nault) [1882082] {CVE-2020-25643}- [pinctrl] pinctrl: sunrisepoint: Modify COMMUNITY macros to be consistent (David Arcari) [1783488] - [pinctrl] pinctrl: cannonlake: Modify COMMUNITY macros to be consistent (David Arcari) [1783488] - [pinctrl] pinctrl: tigerlake: Fix register offsets for TGL-H variant (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Update header block to reflect direct dependencies (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Switch to use intel_pinctrl_get_soc_data() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Extract intel_pinctrl_get_soc_data() helper for wider use (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Use fallthrough pseudo-keyword (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Fix pin being driven low for a while on gpiod_get(..., GPIOD_OUT_HIGH) (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Drop no-op ACPI_PTR() call (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Make use of for_each_requested_gpio_in_range() (David Arcari) [1783488] - [include] gpiolib: Introduce for_each_requested_gpio_in_range() macro (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Protect IO in few call backs by lock (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Split intel_config_get() to three functions (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Drop the only label in the code for consistency (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Get rid of redundant 'else' in intel_config_set_debounce() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Make use of IRQ_RETVAL() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Reduce scope of the lock (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Disable input and output buffer when switching to GPIO (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Allow drivers to define ACPI address space ID (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Allow drivers to define total amount of IRQs per community (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Move npins closer to pin_base in struct intel_community (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Update description in struct intel_community (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Use platform_get_irq_optional() explicitly (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Introduce new flag to force GPIO base to be 0 (David Arcari) [1783488] - [pinctrl] pinctrl: tigerlake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: icelake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: cannonlake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Enable pin configuration setting for GPIO chip (David Arcari) [1783488] - [pinctrl] pinctrl: sunrisepoint: Fix PAD lock register offset for SPT-H (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Mark expected switch fall-throughs (David Arcari) [1783488] - [kernel] mm: disable proactive compaction by default (Rafael Aquini) [1848427] - [mm] mm: use unsigned types for fragmentation score (Rafael Aquini) [1848427] - [mm] mm: fix compile error due to COMPACTION_HPAGE_ORDER (Rafael Aquini) [1848427] - [mm] mm: proactive compaction (Rafael Aquini) [1848427] - [i2c] i2c: mlxbf: I2C_MLXBF should depend on MELLANOX_PLATFORM (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Update author and maintainer email info (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Update reference clock frequency (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Remove unecessary wrapper functions (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Fix resrticted cast warning of sparse (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Add CONFIG_ACPI to guard ACPI function call (Alaa Hleihel) [1655741 1655709] - [documentation] dt-bindings: i2c: I2C binding for Mellanox BlueField SoC (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: I2C SMBus driver for Mellanox BlueField SoC (Alaa Hleihel) [1655741 1655709] - [misc] misc: eeprom: ee1004: convert to i2c_new_dummy_device (Alaa Hleihel) [1655741] - [misc] eeprom: ee1004: Deal with nack on page selection (Alaa Hleihel) [1655741] - [misc] eeprom: ee1004: Move selected page detection to a separate function (Alaa Hleihel) [1655741] - [misc] eeprom: New ee1004 driver for DDR4 memory (Alaa Hleihel) [1655741] - [net] xfrm: Use correct address family in xfrm_state_find (Xin Long) [1892641] - [net] xfrm: clone whole liftime_cur structure in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate (Xin Long) [1892641] - [net] ip_vti: Fix unused variable warning (Xin Long) [1892641] - [net] xfrm: Make the policy hold queue work with VTI. (Xin Long) [1892641] - [s390] s390/qeth: delay draining the TX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: strictly order bridge address events (Philipp Rudo) [1847443] - [s390] s390/qeth: unify structs for bridge port state (Philipp Rudo) [1847443] - [s390] s390/qeth: copy less data from bridge state events (Philipp Rudo) [1847443] - [s390] s390/qeth: don't let HW override the configured port role (Philipp Rudo) [1847443] - [s390] s390/qeth: don't disable address events during initialization (Philipp Rudo) [1847443] - [s390] s390/qeth: make queue lock a proper spinlock (Philipp Rudo) [1847443] - [s390] s390/qeth: use to_delayed_work() (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up qeth_l3_send_setdelmc()'s declaration (Philipp Rudo) [1847443] - [s390] s390/qeth: use all configured RX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: don't process empty bridge port events (Philipp Rudo) [1847443] - [s390] s390/qeth: integrate RX refill worker with NAPI (Philipp Rudo) [1847443] - [s390] s390/qeth: tolerate pre-filled RX buffer (Philipp Rudo) [1847443] - [s390] s390/qdio: remove internal polling in non-thinint path (Philipp Rudo) [1847443] - [s390] s390/qdio: allow to scan all 128 Input SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: fix statistics for 128 SBALs (Philipp Rudo) [1847443] - [s390] s390/qeth: constify the MPC initialization data (Philipp Rudo) [1847443] - [s390] s390/qeth: unify RX-mode hashtables (Philipp Rudo) [1847443] - [s390] s390/qeth: cleanup OAT code (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up a magic number in the OAT callback (Philipp Rudo) [1847443] - [s390] s390/qeth: use u64_to_user_ptr() in the OAT code (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up error handling for isolation mode cmds (Philipp Rudo) [1847443] - [s390] s390/qeth: don't clear the configured isolation mode (Philipp Rudo) [1847443] - [s390] s390/qeth: only init the isolation mode when necessary (Philipp Rudo) [1847443] - [s390] s390/qeth: fine-tune errno when cmds are cancelled (Philipp Rudo) [1847443] - [s390] s390/qeth: reject unsupported link type earlier (Philipp Rudo) [1847443] - [s390] s390/qeth: let isolation mode override HW offload restrictions (Philipp Rudo) [1847443] - [s390] s390/qeth: fix error handling for isolation mode cmds (Philipp Rudo) [1847443] - [s390] s390/qdio: warn about unexpected SLSB states (Philipp Rudo) [1847443] - [s390] s390/qdio: clean up usage of qdio_data (Philipp Rudo) [1847443] - [s390] s390/qdio: reduce SLSB writes during Input Queue processing (Philipp Rudo) [1847443] - [s390] s390/qdio: fine-tune SLSB update (Philipp Rudo) [1847443] - [s390] s390/cio, s390/qeth: cleanup PNSO CHSC (Philipp Rudo) [1847443] - [s390] s390/qdio: remove q->first_to_kick (Philipp Rudo) [1847443] - [s390] s390/qdio: fix up qdio_start_irq() kerneldoc (Philipp Rudo) [1847443] - [s390] s390/qdio: add IRQ reduction for error SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: refactor ACK processing for primed SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify overlap calculation on Input refill (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up Kconfig help text (Philipp Rudo) [1847443] - [s390] s390/qeth: return error when starting a reset fails (Philipp Rudo) [1847443] - [s390] s390/qeth: set TX IRQ marker on last buffer in a group (Philipp Rudo) [1847443] - [s390] s390/qeth: indicate contiguous TX buffer elements (Philipp Rudo) [1847443] - [s390] s390/qeth: merge TX skb mapping code (Philipp Rudo) [1847443] - [s390] s390/qeth: don't use restricted offloads for local traffic (Philipp Rudo) [1847443] - [s390] s390/qeth: extract helpers for next-hop lookup (Philipp Rudo) [1847443] - [s390] s390/qeth: add debugfs file for local IP addresses (Philipp Rudo) [1847443] - [s390] s390/qeth: process local address events (Philipp Rudo) [1847443] - [s390] s390/qeth: keep track of LP2LP capability for csum offload (Philipp Rudo) [1847443] - [s390] s390/qeth: fix cancelling of TX timer on dev_close() (Philipp Rudo) [1847443] - [s390] s390/qdio: remove always-true condition (Philipp Rudo) [1847443] - [s390] s390/qdio: de-duplicate tiqdio_inbound_processing() (Philipp Rudo) [1847443] - [s390] s390/qdio: keep track of allocated queue count (Philipp Rudo) [1847443] - [s390] s390/qdio: roll-back after queue allocation error (Philipp Rudo) [1847443] - [s390] s390/qdio: do more fine-grained allocation roll-back (Philipp Rudo) [1847443] - [s390] s390/qdio: consolidate thinint init/exit (Philipp Rudo) [1847443] - [s390] s390/qdio: put thinint indicator after early error (Philipp Rudo) [1847443] - [s390] s390/qdio: tear down thinint indicator after early error (Philipp Rudo) [1847443] - [s390] s390/qdio: consistently restore the IRQ handler (Philipp Rudo) [1847443] - [s390] s390/qdio: clear DSCI early for polling drivers (Philipp Rudo) [1847443] - [s390] s390/qdio: inline shared_ind() (Philipp Rudo) [1847443] - [s390] s390/qdio: remove cdev from init_data (Philipp Rudo) [1847443] - [s390] s390/qdio: allow for non-contiguous SBAL array in init_data (Philipp Rudo) [1847443] - [s390] zfcp: inline zfcp_qdio_setup_init_data() (Philipp Rudo) [1847443] - [s390] s390/qdio: cleanly split alloc and establish (Philipp Rudo) [1847443] - [s390] s390/qeth: phase out OSN support (Philipp Rudo) [1847443] - [s390] s390/qeth: make OSN / OSX support configurable (Philipp Rudo) [1847443] - [s390] s390/qeth: remove fake_broadcast attribute (Philipp Rudo) [1847443] - [s390] s390/qdio: set qdio_irq->cdev at allocation time (Philipp Rudo) [1847443] - [s390] s390/qdio: remove unused function declarations (Philipp Rudo) [1847443] - [s390] s390/qeth: modernize two list helpers (Philipp Rudo) [1847443] - [s390] s390/qeth: keep track of fixed prio-queue configuration (Philipp Rudo) [1847443] - [s390] s390/qeth: fine-tune MAC Address-related errnos (Philipp Rudo) [1847443] - [s390] s390/qeth: add TX IRQ coalescing support for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: collect more TX statistics (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up the mac_bits (Philipp Rudo) [1847443] - [s390] s390/qeth: simplify L3 dev_id logic (Philipp Rudo) [1847443] - [s390] s390/qdio: extend polling support to multiple queues (Philipp Rudo) [1847443] - [s390] s390/qeth: remove redundant if-clause in RX poll code (Philipp Rudo) [1847443] - [s390] s390/qeth: split out RX poll code (Philipp Rudo) [1847443] - [s390] s390/qeth: simplify RX buffer tracking (Philipp Rudo) [1847443] - [s390] s390/qdio: pass ISC as parameter to chsc_sadc() (Philipp Rudo) [1847443] - [s390] s390/qeth: use dev->reg_state (Philipp Rudo) [1847443] - [s390] s390/qeth: remove gratuitous NULL checks (Philipp Rudo) [1847443] - [s390] s390/qeth: add phys_to_virt() translation for AOB (Philipp Rudo) [1847443] - [s390] s390/qeth: don't report hard-coded driver version (Philipp Rudo) [1847443] - [s390] s390/qeth: add SW timestamping support for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: balance the TX queue selection for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: allow configuration of TX queues for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: allow configuration of TX queues for z/VM NICs (Philipp Rudo) [1847443] - [s390] s390/qeth: remove prio-queueing support for z/VM NICs (Philipp Rudo) [1847443] - [s390] s390/qeth: use memory reserves in TX slow path (Philipp Rudo) [1847443] - [s390] s390/qeth: use memory reserves to back RX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: remove VNICC callback parameter struct (Philipp Rudo) [1847443] - [s390] s390/qdio: add tighter controls for IRQ polling (Philipp Rudo) [1847443] - [s390] s390/qdio: export SSQD via debugfs (Philipp Rudo) [1847443] - [s390] s390/qeth: support configurable RX copybreak (Philipp Rudo) [1847443] - [s390] s390/qeth: don't check for IFF_UP when scheduling napi (Philipp Rudo) [1847443] - [s390] s390/qeth: don't re-start read cmd when IDX has terminated (Philipp Rudo) [1847443] - [s390] s390/qeth: reset seqnos on connection startup (Philipp Rudo) [1847443] - [s390] s390/qeth: remove unused cmd definitions (Philipp Rudo) [1847443] - [s390] s390/qeth: validate device-provided MAC address (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up CREATE_ADDR cmd code (Philipp Rudo) [1847443] - [s390] s390/qeth: remove dead code in qeth_l3_iqd_read_initial_mac() (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify debugfs code (Philipp Rudo) [1847443] - [s390] s390/qdio: use QDIO_IRQ_STATE_INACTIVE instead of 0 (Philipp Rudo) [1847443] - [s390] s390/qeth: don't warn for napi with 0 budget (Philipp Rudo) [1847443] - [s390] s390/qdio: reduce access to cdev->private->qdio_data (Philipp Rudo) [1847443] - [s390] s390/qdio: clean up cdev access in qdio_setup_irq() (Philipp Rudo) [1847443] - [s390] s390/qdio: fill SL with absolute addresses (Philipp Rudo) [1847443] - [s390] s390/qdio: don't allocate *aob array with GFP_ATOMIC (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify ACK tracking (Philipp Rudo) [1847443] - [s390] s390/qeth: remove HARDSETUP state (Philipp Rudo) [1847443] - [s390] s390/qeth: make cmd/reply matching more flexible (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate online/offline code (Philipp Rudo) [1847443] - [s390] s390/qeth: shift some bridgeport code around (Philipp Rudo) [1847443] - [s390] s390/qeth: remove QETH_RX_PULL_LEN (Philipp Rudo) [1847443] - [s390] s390/qeth: use napi_gro_frags() for SG skbs (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate RX code (Philipp Rudo) [1847443] - [s390] s390/qeth: make use of napi_schedule_irqoff() (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate helpers for capability checking (Philipp Rudo) [1847443] - [s390] s390/qeth: stop yielding the ip_lock during IPv4 registration (Philipp Rudo) [1847443] - [s390] s390/qeth: don't raise NETDEV_REBOOT event from L3 offline path (Philipp Rudo) [1847443] - [s390] s390/qeth: remove open-coded inet_make_mask() (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up L3 sysfs code (Philipp Rudo) [1847443] - [s390] s390/qeth: overhaul L3 IP address dump code (Philipp Rudo) [1847443] - [s390] s390/qeth: wake up all waiters from qeth_irq() (Philipp Rudo) [1847443] - [s390] s390/qeth: only handle IRQs while device is online (Philipp Rudo) [1847443] - [s390] s390: clean up qdio.h (Philipp Rudo) [1847443] - [s390] s390/cio: fix kdoc for tiqdio_thinint_handler (Philipp Rudo) [1847443] - [s390] s390/drivers: fix proc/debugfs file permissions (Philipp Rudo) [1847443] - [s390] s390: convert to DEFINE_SHOW_ATTRIBUTE (Philipp Rudo) [1847443] - [s390] scsi: zfcp: Avoid benign overflow of the Request Queue's free-level (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Replace open-coded list move (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Clean up zfcp_erp_action_ready() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Fix an outdated comment for zfcp_qdio_send() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Use prandom_u32_max() for backoff (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix wrong data and display format of SFP+ temperature (Philipp Rudo) [1874100] - [s390] scsi: zfcp: trace channel log even for FCP command responses (Philipp Rudo) [1874100] - [s390] scsi: zfcp: proper indentation to reduce confusion in zfcp_erp_required_act (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move maximum age of diagnostic buffers into a per-adapter variable (Philipp Rudo) [1874100] - [s390] scsi: zfcp: implicitly refresh config-data diagnostics when reading sysfs (Philipp Rudo) [1874100] - [s390] scsi: zfcp: introduce sysfs interface to read the local B2B-Credit (Philipp Rudo) [1874100] - [s390] scsi: zfcp: implicitly refresh port-data diagnostics when reading sysfs (Philipp Rudo) [1874100] - [s390] scsi: zfcp: introduce sysfs interface for diagnostics of local SFP transceiver (Philipp Rudo) [1874100] - [s390] scsi: zfcp: support retrieval of SFP Data via Exchange Port Data (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix GCC compiler warning emitted with -Wmaybe-uninitialized (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix request object use-after-free in send path causing seqno errors (Philipp Rudo) [1874100] - [s390] scsi: s390: zfcp_fc: use sg helper to iterate over scatterlist (Philipp Rudo) [1874100] - [s390] scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN (Philipp Rudo) [1874100] - [s390] scsi: zfcp: improve kdoc for return of zfcp_status_read_refill() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop old default switch case which might paper over missing case (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop default switch case which might paper over missing case (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence -Wimplicit-fallthrough in zfcp_erp_lun_strategy() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence remaining kdoc warnings in header files (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence all W=1 build warnings for existing kdoc (Philipp Rudo) [1874100] - [s390] scsi: zfcp: properly format LUN (and WWPN) for LUN sharing violation kmsg (Philipp Rudo) [1874100] - [s390] scsi: zfcp: use enum zfcp_erp_act_result for argument/return of affected functions (Philipp Rudo) [1874100] - [s390] scsi: zfcp: use enum zfcp_erp_steps for struct zfcp_erp_action.step (Philipp Rudo) [1874100] - [s390] scsi: zfcp: the action field of zfcp_erp_action is actually the type (Philipp Rudo) [1874100] - [s390] scsi: zfcp: clarify function argument name for trace tag string (Philipp Rudo) [1874100] - [s390] scsi: zfcp: ERP thread setup kdoc update (Philipp Rudo) [1874100] - [s390] scsi: zfcp: update kernel message for invalid FCP_CMND length, it's not the CDB (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop duplicate seq_no from zfcp_fsf_req which is also in QTCB header (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop duplicate fsf_command from zfcp_fsf_req which is also in QTCB header (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop unnecessary forward prototype for struct zfcp_fsf_req (Philipp Rudo) [1874100] - [s390] scsi: zfcp: group sort internal structure definitions for proximity (Philipp Rudo) [1874100] - [s390] scsi: zfcp: namespace prefix for internal latency data structures (Philipp Rudo) [1874100] - [s390] scsi: zfcp: update width in comment for ZFCP_COMMON_FLAGS mask (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move scsi_eh & non-ERP timeout defines owned by and local to zfcp_fsf.c (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop unnecessary forward prototype for struct zfcp_reqlist (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move SG table helper from aux to fc and make them static (Philipp Rudo) [1874100] - [s390] scsi: zfcp: remove unnecessary null pointer check before mempool_destroy (Philipp Rudo) [1874100] - [s390] s390/dasd, zfcp: fix gcc 8 stringop-truncation warnings (Philipp Rudo) [1874100] - [s390] s390/stp: unify stp_work_mutex and clock_sync_mutex (Philipp Rudo) [1856342] - [s390] s390/stp: add sysfs file to show scheduled leap seconds (Philipp Rudo) [1856342] - [s390] s390/stp: add support for leap seconds (Philipp Rudo) [1856342] - [s390] s390/stp: use u32 instead of unsigned int (Philipp Rudo) [1856342] - [s390] s390/stp: use __packed (Philipp Rudo) [1856342] - [s390] s390/stp: add locking to sysfs functions (Philipp Rudo) [1856342] - [s390] s390/stp: allow group and users to read stp sysfs files (Philipp Rudo) [1856342] - [s390] s390/ipl: add support to control memory clearing for nvme re-IPL (Philipp Rudo) [1851122] - [kernel] tick: broadcast-hrtimer: Fix a race in bc_set_next (Vladis Dronov) [1876567] - [fs] gfs2: Make sure we don't miss any delayed withdraws (Robert S Peterson) [1873565] - [fs] gfs2: add some much needed cleanup for log flushes that fail (Robert S Peterson) [1873565] - [fs] gfs2: fix trans slab error when withdraw occurs inside log_flush (Robert S Peterson) [1873565] - [block] blk-mq: mark flush request as IDLE in flush_end_io() (Gopal Tiwari) [1894347] - [nvme] nvme-tcp: avoid repeated request completion (Gopal Tiwari) [1894347] - [nvme] nvme-rdma: avoid repeated request completion (Gopal Tiwari) [1894347] - [nvme] nvme-tcp: avoid race between time out and tear down (Gopal Tiwari) [1894347] - [nvme] nvme-rdma: avoid race between time out and tear down (Gopal Tiwari) [1894347] - [nvme] nvme: introduce nvme_sync_io_queues (Gopal Tiwari) [1894347] - [documentation] kvm: x86: hyper-v: Mention SynDBG CPUID leaves in api.rst (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: remove unused variable (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: Don't require THP to run tests (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: evmcs: make evmcs_sanitize_exec_ctrls() work again (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: test behavior of unmapped L2 APIC-access address (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix NULL dereference at kvm_msr_ignored_check() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: replace static const variables with macros (Vitaly Kuznetsov) [1882793] - [x86] kvm: ioapic: break infinite recursion on lazy EOI (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: rename pi_init to avoid conflict with paride (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid modulo operator on 64-bit value to fix i386 build (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: NX largepage recovery for TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Don't clear write flooding count for direct roots (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support MMIO in the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support write protection for nesting in tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support disabling dirty logging for the tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support dirty logging for the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support changed pte notifier in tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add access tracking for tdp_mmu (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support invalidate range MMU notifier for TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Allocate struct kvm_mmu_pages for all pages in TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add TDP MMU PF handler (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Remove disallowed_hugepage_adjust shadow_walk_iterator arg (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support zapping SPTEs in the TDP MMU (Vitaly Kuznetsov) [1882793] - [virt] kvm: Cache as_id in kvm_memory_slot (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add functions to handle changed TDP SPTEs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Allocate and free TDP MMU roots (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Init / Uninit the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Introduce tdp_iter (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: extract spte.h and spte.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: Separate updating a PTE from kvm_set_pte_rmapp (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Separate making SPTEs from set_spte (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: Separate making non-leaf sptes from link_shadow_page (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Let the guest own CR4.FSGSBASE (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Intercept guest reserved CR4 bits to inject #GP fault (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move call to update_exception_bitmap() into VMX code (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Invoke vendor's vcpu_after_set_cpuid() after all common updates (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Intercept LA57 to inject #GP fault when it's reserved (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Initialize prev_ga_tag before use (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: implement on demand allocation of the nested state (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allow kvm_x86_ops.set_efer to return an error value (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: report negative values from wrmsr emulation to userspace (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: xen_hvm_config: cleanup return values (Vitaly Kuznetsov) [1882793] - [x86] kvm x86/mmu: Make struct kernel_param_ops definitions const (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allocate vcpu->arch.cpuid_entries dynamically (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: disconnect kvm_check_cpuid() from vcpu->arch.cpuid_entries (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: only provide PV features if enabled in guest's CPUID (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: set wall_clock in kvm_write_wall_clock() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: encapsulate wrmsr(MSR_KVM_SYSTEM_TIME) emulation in helper fn (Vitaly Kuznetsov) [1882793] - [x86] kvm: hide KVM options from menuconfig when KVM is not compiled (Vitaly Kuznetsov) [1882793] - [documentation] kvm: vmx: Forbid userspace MSR filters for x2APIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Ignore userspace MSR filters for x2APIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Fix x2APIC MSR intercept handling on !APICV platforms (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: vmx_uret_msrs_list[] can be static (Vitaly Kuznetsov) [1882793] - [tools] kvm: x86: do not attempt TSC synchronization on guest writes (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: delay MSR permission processing to first nested VM run (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: rename KVM_REQ_GET_VMCS12_PAGES (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: Add test for user space MSR handling (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Introduce MSR filtering (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: vmx: Prevent MSR passthrough when MSR access is denied (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: svm: Prevent MSR passthrough when MSR access is denied (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Prepare MSR bitmaps for userspace tracked MSRs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add infrastructure for MSR filtering (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Allow deflecting unknown MSR accesses to user space (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Return -ENOENT on unimplemented MSRs (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vmx_uret_msr's "index" to "slot" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_msr_index" to "vmx_uret_msrs_list" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_set_guest_msr" to "vmx_set_guest_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "find_msr_entry" to "vmx_find_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add vmx_setup_uret_msr() to handle lookup and swap (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Move uret MSR lookup into update_transition_efer() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Check guest support for RDTSCP before processing MSR_TSC_AUX (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "__find_msr_index" to "__vmx_find_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "guest_msrs_ready" to "guest_uret_msrs_loaded" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "save_nmsrs" to "nr_active_uret_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "nmsrs" to "nr_uret_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename the "shared_msr_entry" struct to "vmx_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_find_msr_index" to "vmx_find_loadstore_msr_slot" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Prepend "MAX_" to MSR array size defines (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename "shared_msrs" to "user_return_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move individual kvm_mmu initialization into common helper (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Read EXIT_QUAL and INTR_INFO only when needed for nested exit (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Use common definition for kvm_nested_vmexit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add macro wrapper for defining kvm_exit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add intr/vectoring info and error code to kvm_exit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add a helper to test for a valid error code given an intr info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Read guest RIP from within the kvm_nested_vmexit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add RIP to the kvm_entry, i.e. VM-Enter, tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: WARN on attempt to switch the currently loaded VMCS (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Drop redundant VMCS switch and free_nested() call (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Ensure vmcs01 is the loaded VMCS when freeing nested state (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Move free_nested() below vmx_switch_vmcs() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Explicitly check for valid guest state for !unrestricted guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Reload vmcs01 if getting vmcs12's pages fails (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Reset the segment cache when stuffing guest segs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Track write/user faults using bools (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Hoist ITLB multi-hit workaround check up a level (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename 'hlevel' to 'level' in FNAME(fetch) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Account NX huge page disallowed iff huge page was requested (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Capture requested page level before NX huge page workaround (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move "huge page disallowed" calculation into mapping helpers (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Refactor the zap loop for recovering NX lpages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Commit zap of remaining invalid pages when recovering lpages (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename ops.h to vmx_ops.h (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Extract posted interrupt support to separate files (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Bail early from final #PF handling on spurious faults (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Return unique RET_PF_* values if the fault was fixed (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Invert RET_PF_* check when falling through to emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Return -EIO if page fault returns RET_PF_INVALID (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Recursively zap nested TDP SPs when zapping last/only parent (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move flush logic from mmu_page_zap_pte() to FNAME(invlpg) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: hyper-v: disallow configuring SynIC timers with no SynIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Stash 'kvm' in a local variable in kvm_mmu_free_roots() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add a helper and macros to reduce boilerplate for sec exec ctls (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename RDTSCP secondary exec control name to insert "ENABLE" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use VMX_FEATURE_* flags to define VMCS control bits (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Unconditionally clear CPUID.INVPCID if !CPUID.PCID (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vmx_*_supported() helpers to cpu_has_vmx_*() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use "illegal GPA" helper for PT/RTIT output base check (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move illegal GPA helper out of the MMU code (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Replace MSR_IA32_RTIT_OUTPUT_BASE_MASK with helper function (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Unexport cpuid_query_maxphyaddr() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use precomputed MAXPHYADDR for RTIT base MSR check (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Do not perform emulation for INVD intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: sev: shorten comments around sev_clflush_pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Mark SEV launch secret pages as dirty (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Add VM-Enter failed tracepoints for super early checks (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: CR3 MBZ bits are only 63:52 (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: emulating RDPID failure shall return #UD rather than #GP (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Morph notification vector IRQ on nested VM-Enter to pending PI (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add tracepoint for cr_interception (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Analyze is_guest_mode() in svm_vcpu_run() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Invoke NMI handler via indirect call instead of INTn (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Move IRQ invocation to assembly subroutine (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add kvm_x86_ops hook to short circuit emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: use __GFP_ZERO instead of clear_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: KVM needs to unset "unrestricted guest" VM-execution control in vmcs02 if vmcs12 doesn't set it (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Enable INVPCID feature on AMD (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move handling of INVPCID types to x86 (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename and move the function vmx_handle_memory_failure to x86.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Remove set_cr_intercept, clr_cr_intercept and is_cr_intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add new intercept word in vmcb_control_area (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Modify 64 bit intercept field to two 32 bit vectors (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Modify intercept_exceptions to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Change intercept_dr to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Change intercept_cr to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Introduce vmcb_(set_intercept/clr_intercept/_is_intercept) (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Remove unused field (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: refactor exit labels in svm_create_vcpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: use __GFP_ZERO instead of clear_page (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: refactor msr permission bitmap allocation (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: rename nested vmcb to vmcb12 (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: rename a variable in the svm_create_vcpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Reduce world switch latency caused by timer_advance_ns (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Narrow down the kick target vCPU (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Guarantee the timer is in tsc-deadline mode when setting (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Return 0 when getting the tscdeadline timer if the lapic is hw disabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Fix updating DFR missing apic map recalculation (Vitaly Kuznetsov) [1882793] - [virt] kvm/eventfd: move wildcard calculation outside loop (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Simplify the initialization of nested_vmx_msrs (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Fix VMX controls MSRs setup when nested VMX enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Avoid freeing uninitialized pointers in svm_set_nested_state() (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Remove aliases with X64 in their name (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Split hyperv-tlfs.h into arch dependent and independent files (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Remove HV_PROCESSOR_POWER_STATE #defines (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add GHCB definitions (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: nested: Don't allocate VMCB structures on stack (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: page_track: Fix RCU list API usage (Vitaly Kuznetsov) [1882793] - [kernel] rculist: Introduce list/hlist_for_each_entry_srcu() macros (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: update PFEC_MASK/PFEC_MATCH together with PF intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add a dedicated INVD intercept routine (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: fix MSR_IA32_TSC read for nested migration (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: Fix assert failure in single-step test (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: vmx: Make smaller physical guest address space support user-configurable (Vitaly Kuznetsov) [1882793] - [x86] revert "kvm: Check the allocation of pv cpu mask" (Vitaly Kuznetsov) [1882793] - [x86] kvm: emulator: more strict rsm checks (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: more strict SMM checks when returning to nested guest (Vitaly Kuznetsov) [1882793] - [x86] svm: nsvm: setup nested msr permission bitmap on nested state load (Vitaly Kuznetsov) [1882793] - [x86] svm: nsvm: correctly restore GIF on vmexit from nesting after migration (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Don't freeze guest when event delivery causes an APIC-access exit (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: avoid emulation with stale next_rip (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: always allow writing '0' to MSR_KVM_ASYNC_PF_EN (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Periodically schedule when unregistering regions on destroy (Vitaly Kuznetsov) [1882793] - [x86] kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL control (Vitaly Kuznetsov) [1882793] - [virt] kvm: fix memory leak in kvm_io_bus_unregister_dev() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Check the allocation of pv cpu mask (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Update VMCS02 when L2 PAE PDPTE updates detected (Vitaly Kuznetsov) [1882793] - [documentation] kvm: documentation: Minor fixups (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: fix access code passed to gva_to_gpa (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: Use a shorter encoding to clear RAX (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Synic default SCONTROL MSR needs to be enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Don't attempt to load PDPTRs when 64-bit mode is enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: detect assigned device via irqbypass manager (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Fix sev_pin_memory() error handling (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Set the TDCR settable bits (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Fix disable pause loop exit/pause filtering capability on SVM (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Prevent setting the tscdeadline timer if the lapic is hw disabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Specify max TDP level via kvm_configure_mmu() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename max_page_level to max_huge_page_level (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Dynamically calculate TDP level from max level and MAXPHYADDR (Vitaly Kuznetsov) [1882793] - [x86] kvm: vxm: Remove temporary WARN on expected vs. actual EPTP level mismatch (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Pull the PGD's level from the MMU instead of recalculating it (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Make vmx_load_mmu_pgd() static (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add separate helper for shadow NPT root page role calc (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Drop a duplicate declaration of construct_eptp() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Using macros instead of magic values (Vitaly Kuznetsov) [1882793] - [tools] kvm: nvmx: check for invalid hdr.vmx.flags (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: check for required but missing VMCS12 in KVM_SET_NESTED_STATE (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: do not set guest mode flag (Vitaly Kuznetsov) [1882793] - [documentation] documentation: virt/kvm/api: eliminate duplicated word (Vitaly Kuznetsov) [1882793] - [documentation] docs: kvm: Replace HTTP links with HTTPS ones (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: remove nonsensical EXITINFO1 adjustment on nested NPF (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add a capability for GUEST_MAXPHYADDR < HOST_MAXPHYADDR support (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: optimize #PF injection when MAXPHYADDR does not match (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add guest physical address check in EPT violation and misconfig (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: introduce vmx_need_pf_intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: update exception bitmap on CPUID changes (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: rename update_bp_intercept to update_exception_bitmap (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: mmu: Add guest physical address check in translate_gpa() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: mmu: Move translate_gpa() to mmu.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add helper functions for illegal GPA checking and page fault injection (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: move MSR_IA32_PERF_CAPABILITIES emulation to common x86 code (Vitaly Kuznetsov) [1882793] - [virt] kvm: Move x86's MMU memory cache helpers to common KVM code (Vitaly Kuznetsov) [1882793] - [kernel] kvm: Move x86's version of struct kvm_mmu_memory_cache to common code (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Prepend "kvm_" to memory cache helpers that will be global (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Skip filling the gfn cache for guaranteed direct MMU topups (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Zero allocate shadow pages (outside of mmu_lock) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make __GFP_ZERO a property of the memory cache (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Separate the memory caches for shadow pages and gfn arrays (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Clean up the gorilla math in mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Topup memory caches after walking GVA->GPA (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move fast_page_fault() call above mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Try to avoid crashing KVM if a MMU memory cache is empty (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Remove superfluous gotos from mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Use consistent "mc" name for kvm_mmu_memory_cache locals (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Consolidate "page" variant of memory cache helpers (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Track the associated kmem_cache in the MMU caches (Vitaly Kuznetsov) [1882793] - [x86] kvm/x86: pmu: Fix #GP condition check for RDPMC emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move kvm_x86_ops.vcpu_after_set_cpuid() into kvm_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename cpuid_update() callback to vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename kvm_update_cpuid() to kvm_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Extract kvm_update_cpuid_runtime() from kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Introduce kvm_check_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move kvm_apic_set_version() to kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Use guest_cpuid_has() in kvm_apic_set_version() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Go on updating other CPUID leaves when leaf 1 is absent (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Reset vcpu->arch.cpuid_nent to 0 if SET_CPUID* fails (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: limit the maximum number of vPMU fixed counters to 3 (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Check that MBZ bits in CR3 and CR4 are not set on vmrun of nested guests (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Make CR4.VMXE reserved for the guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Create mask for guest CR4 reserved bits in kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Read PDPTEs on CR0.CD and CR0.NW changes (Vitaly Kuznetsov) [1882793] - [x86] kvm: Add "nopvspin" parameter to disable PV spinlocks (Vitaly Kuznetsov) [1882793] - [x86] kvm: Change print code to use pr_*() format (Vitaly Kuznetsov) [1882793] - [x86] revert "kvm: x86: Fix setup the virt_spin_lock_key before static key get initialized" (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename page_header() to to_shadow_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add sptep_to_sp() helper to wrap shadow page lookup (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make kvm_mmu_page definition and accessor internal-only (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add MMU-internal header (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move kvm_mmu_available_pages() into mmu.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move mmu_audit.c and mmutrace.h into the mmu/ sub-directory (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Exit to userspace on make_mmu_pages_available() error (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Batch zap MMU pages when shrinking the slab (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Batch zap MMU pages when recycling oldest pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Don't put invalid SPs back on the list of active pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Optimize MMU page cache lookup for fully direct MMUs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid multiple hash lookups in kvm_get_mmu_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Use VMCALL and VMMCALL mnemonics in kvm_para.h (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Rename svm_nested_virtualize_tpr() to nested_svm_virtualize_tpr() (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add svm_ prefix to set/clr/is_intercept() (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add vmcb_ prefix to mark_*() functions (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Rename struct nested_state to svm_nested_state (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Wrap VM-Fail valid path in generic VM-Fail helper (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Set last_vmentry_cpu in vcpu_enter_guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move last_cpu into kvm_vcpu_arch as last_vmentry_cpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add "last CPU" to some KVM_EXIT information (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add last_cpu to struct vcpu_vmx (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Always set svm->last_cpu on VMRUN (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Prefer vcpu->cpu to raw_smp_processor_id() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: report sev_pin_memory errors with PTR_ERR (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: fix svn_pin_memory()'s use of get_user_pages_fast() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Check that DR6[63:32] and DR7[64:32] are not set on vmrun of nested guests (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move the check for upper 32 reserved bits of DR6 to separate function (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Do the same ignore_msrs check for feature msrs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move ignore_msrs handling upper the stack (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make .write_log_dirty a nested operation (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: WARN if PML emulation helper is invoked outside of nested guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Drop kvm_arch_write_log_dirty() wrapper (Vitaly Kuznetsov) [1882793] - [s390] kvm: async_pf: change kvm_setup_async_pf()/kvm_arch_setup_async_pf() return type to bool (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: drop KVM_PV_REASON_PAGE_READY case from kvm_handle_page_fault() (Vitaly Kuznetsov) [1882793] - [documentation] documentation: virt: kvm/api: drop doubled words (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use KVM_POSSIBLE_CR*_GUEST_BITS to initialize guest/host masks (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Mark CR4.TSD as being possibly owned by the guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Inject #GP if guest attempts to toggle CR4.LA57 in 64-bit mode (Vitaly Kuznetsov) [1882793] - [virt] kvm: use more precise cast and do not drop __user (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: bit 8 of non-leaf PDPEs is not reserved (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix async pf caused null-ptr-deref (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Remove vcpu_vmx's defunct copy of host_pkru (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allow TSC to differ by NTP correction bounds without TSC scaling (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix MSR range of APIC registers in X2APIC mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Stop context switching MSR_IA32_UMWAIT_CONTROL (Vitaly Kuznetsov) [1882793] - [x86] cpu: Move prototype for get_umwait_control_msr() to a global location (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Plumb L2 GPA through to PML emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid mixing gpa_t with gfn_t in walk_addr_generic() (Vitaly Kuznetsov) [1882793] - [x86] process/64: Make save_fsgs_for_kvm() ready for FSGSBASE (Vitaly Kuznetsov) [1882793] - [kernel] kvm: Replace zero-length array with flexible-array (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add helpers to identify interrupt type from intr_info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Switch KVM guest to using interrupts for page ready APF delivery (Vitaly Kuznetsov) [1882793] - [x86] kvm: Remove defunct KVM_DEBUG_FS Kconfig (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Always treat MSR_IA32_PERF_CAPABILITIES as a valid PMU MSR (Vitaly Kuznetsov) [1882793] - [x86] kvm_hv_set_msr(): use __put_user() instead of 32bit __clear_user() (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: update hyperv_cpuid with SynDBG tests (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Add support for synthetic debugger via hypercalls (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: enable hypercalls regardless of hypercall page (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Add support for synthetic debugger interface (Vitaly Kuznetsov) [1882793] - [x86] hyper-v: Add synthetic debugger definitions (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/pmu: Support full width counting (Vitaly Kuznetsov) [1882793] - [documentation] kvm: x86: announce KVM_FEATURE_ASYNC_PF_INT (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: acknowledgment mechanism for async pf page ready notifications (Vitaly Kuznetsov) [1882793] - [documentation] kvm: x86: interrupt based APF 'page ready' event delivery (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: extend struct kvm_vcpu_pv_apf_data with token info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: hyperv: Remove duplicate definitions of Reference TSC Page (Vitaly Kuznetsov) [1882793] - [x86] kvm: Restrict ASYNC_PF to user space (Vitaly Kuznetsov) [1882793] - [x86] kvm: Sanitize kvm_async_pf_task_wait() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Handle async page faults directly through do_page_fault() (Vitaly Kuznetsov) [1882793] - [virt] kvm: add halt-polling cpu usage stats (Vitaly Kuznetsov) [1882793] - [powerpc] kvm: Replace vcpu->swait with rcuwait (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Introduce rcuwait_active() (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Introduce prepare_to and finish_rcuwait (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Add @state argument to rcuwait_wait_event() (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Let rcuwait_wake_up() return whether or not a task was awoken (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Fix stale wake call name in comment (Vitaly Kuznetsov) [1882793] - [s390] kvm: s390: Use kvm_vcpu_wake_up in kvm_s390_vcpu_wakeup (Vitaly Kuznetsov) [1882793] - [documentation] docs/virt/kvm: Document configuring and running nested guests (Vitaly Kuznetsov) [1882793] - [tools] docs: fix broken references for ReST files that moved around (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Extend VMXs #AC interceptor to handle split lock #AC in guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Emulate split-lock access as a write in emulator (Vitaly Kuznetsov) [1882793] - [net] core: check length before updating Ethertype in skb_mpls_{push,pop} (Guillaume Nault) [1893886] - [net] pktgen: fix error message with wrong function name (Guillaume Nault) [1893886] - [net] handle the return value of pskb_carve_frag_list() correctly (Guillaume Nault) [1893886] - [net] Fix potential wrong skb->protocol in skb_vlan_untag() (Guillaume Nault) [1893886] - [net] make symbol 'flush_works' static (Guillaume Nault) [1893886] - [net] compat: Add missing sock updates for SCM_RIGHTS (Guillaume Nault) [1893886] - [net] mpls: drop skb's dst in mpls_forward() (Guillaume Nault) [1893886] - [include] net: Added pointer check for dst->ops->neigh_lookup in dst_neigh_lookup_skb (Guillaume Nault) [1893886] - [net] fix skb_panic to output real address (Guillaume Nault) [1893886] - [net] fix a potential recursive NETDEV_FEAT_CHANGE (Guillaume Nault) [1893886] - [net] neigh: send protocol value in neighbor create notification (Guillaume Nault) [1893886] - [net] revert default NAPI poll timeout to 2 jiffies (Guillaume Nault) [1893886] - [net] compat_ioctl: handle SIOCOUTQNSD (Guillaume Nault) [1893886] - [net] neigh: use long type to store jiffies delta (Guillaume Nault) [1893886] - [documentation] dev-tools: kselftest.rst: Update examples and paths (Hangbin Liu) [1876011] - [tools] selftests/run_kselftest.sh: Make each test individually selectable (Hangbin Liu) [1876011] - [tools] selftests: Extract run_kselftest.sh and generate stand-alone test list (Hangbin Liu) [1876011] - [tools] selftests/harness: Flush stdout before forking (Hangbin Liu) [1876011] - [tools] selftests: forwarding: Add missing 'rp_filter' configuration (Hangbin Liu) [1892298] - [tools] selftests/net: relax cpu affinity requirement in msg_zerocopy test (Hangbin Liu) [1892298] - [tools] selftests: ethtool: Fix test when only two speeds are supported (Hangbin Liu) [1892298] - [tools] selftests/net: tcp_mmap: fix clang warning for target arch PowerPC (Hangbin Liu) [1892298] - [tools] selftests/net: psock_fanout: fix clang issues for target arch PowerPC (Hangbin Liu) [1892298] - [netdrv] netxen: mark netxen_nic as deprecated in RHEL8 (Ivan Vecera) [1878188] - [net] linkmode: introduce linkmode_intersects() (Ivan Vecera) [1893193] - [net] ipv6: avoid lockdep issue in fib6_del() (Hangbin Liu) [1892196] - [net] ipv6: fix memory leaks on IPV6_ADDRFORM path (Hangbin Liu) [1892196] - [net] ila: remove unused inline function ila_addr_is_ila (Hangbin Liu) [1892196] - [net] ila: Fix uninitialised return value in ila_xlat_nl_cmd_flush (Hangbin Liu) [1892196] - [netdrv] i40e: always propagate error value in i40e_set_vsi_promisc() (Stefan Assmann) [1835705] - [netdrv] i40e: fix return of uninitialized aq_ret in i40e_set_vsi_promisc (Stefan Assmann) [1835705] - [netdrv] i40e: Remove scheduling while atomic possibility (Stefan Assmann) [1835705] - [pci] hv: Fix hibernation in case interrupts are not re-created (Mohammed Gamal) [1846838] - [powerpc] kvm: ppc: book3s hv: xics: Replace the 'destroy' method by a 'release' method (Greg Kurz) [1857527] - [security] selinux: complete the inlining of hashtab functions (Ondrej Mosnacek) [1878149] - [security] selinux: prepare for inlining of hashtab functions (Ondrej Mosnacek) [1878149] - [security] selinux: specialize symtab insert and search functions (Ondrej Mosnacek) [1878149] - [security] selinux: fixed a checkpatch warning with the sizeof macro (Ondrej Mosnacek) [1878149] - [security] selinux: log error messages on required process class / permissions (Ondrej Mosnacek) [1878149] - [security] selinux: fix undefined return of cond_evaluate_expr (Ondrej Mosnacek) [1878149] - [security] selinux: fix a double free in cond_read_node()/cond_read_list() (Ondrej Mosnacek) [1878149] - [security] selinux: fix double free (Ondrej Mosnacek) [1878149] - [security] selinux: netlabel: Remove unused inline function (Ondrej Mosnacek) [1878149] - [security] selinux: do not allocate hashtabs dynamically (Ondrej Mosnacek) [1878149] - [security] selinux: fix return value on error in policydb_read() (Ondrej Mosnacek) [1878149] - [security] selinux: simplify range_write() (Ondrej Mosnacek) [1878149] - [security] selinux: fix error return code in policydb_read() (Ondrej Mosnacek) [1878149] - [security] selinux: don't produce incorrect filename_trans_count (Ondrej Mosnacek) [1878149] - [security] selinux: implement new format of filename transitions (Ondrej Mosnacek) [1878149] - [security] selinux: move context hashing under sidtab (Ondrej Mosnacek) [1878149] - [security] selinux: hash context structure directly (Ondrej Mosnacek) [1878149] - [security] selinux: store role transitions in a hash table (Ondrej Mosnacek) [1878149] - [security] selinux: drop unnecessary smp_load_acquire() call (Ondrej Mosnacek) [1878149] - [security] selinux: fix warning Comparison to bool (Ondrej Mosnacek) [1878149] - [security] selinux: fix error return code in cond_read_list() (Ondrej Mosnacek) [1878149] - [security] selinux: free str on error in str_read() (Ondrej Mosnacek) [1878149] - [security] selinux: clean up indentation issue with assignment statement (Ondrej Mosnacek) [1878149] - [security] selinux: avtab_init() and cond_policydb_init() return void (Ondrej Mosnacek) [1878149] - [security] selinux: clean up error path in policydb_init() (Ondrej Mosnacek) [1878149] - [security] selinux: remove unused initial SIDs and improve handling (Ondrej Mosnacek) [1878149] - [security] selinux: reduce the use of hard-coded hash sizes (Ondrej Mosnacek) [1878149] - [security] selinux: Add xfs quota command types (Ondrej Mosnacek) [1878149] - [security] selinux: optimize storage of filename transitions (Ondrej Mosnacek) [1878149] - [security] selinux: factor out loop body from filename_trans_read() (Ondrej Mosnacek) [1878149] - [security] selinux: generalize evaluate_cond_node() (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_expr to array (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_av_list to array (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_list to array (Ondrej Mosnacek) [1878149] - [security] selinux: sel_avc_get_stat_idx should increase position index (Ondrej Mosnacek) [1878149] - [security] selinux: simplify evaluate_cond_node() (Ondrej Mosnacek) [1878149] - [security] selinux: move status variables out of selinux_ss (Ondrej Mosnacek) [1878149] - [scripts] selinux: use kernel linux/socket.h for genheaders and mdp (Ondrej Mosnacek) [1878149] - [scripts] genheaders: -s had been there since v6; -*s - since v7 (Ondrej Mosnacek) [1878149] - [scsi] scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug (Ming Lei) [1876863] - [scsi] scsi: scsi_debug: Support host tagset (Ming Lei) [1876863] - [scsi] scsi: core: Show nr_hw_queues in sysfs (Ming Lei) [1876863] - [scsi] scsi: Add host and host template flag 'host_tagset' (Ming Lei) [1876863] - [block] null_blk: Support shared tag bitmap (Ming Lei) [1876863] - [block] blk-mq, elevator: Count requests per hctx to improve performance (Ming Lei) [1876863] - [block] blk-mq: Record active_queues_shared_sbitmap per tag_set for when using shared sbitmap (Ming Lei) [1876863] - [block] blk-mq: Record nr_active_requests per queue for when using shared sbitmap (Ming Lei) [1876863] - [block] blk-mq: Relocate hctx_may_queue() (Ming Lei) [1876863] - [block] blk-mq: Facilitate a shared sbitmap per tagset (Ming Lei) [1876863] - [block] blk-mq: Use pointers for blk_mq_tags bitmap tags (Ming Lei) [1876863] - [block] blk-mq: Pass flags for tag init/free (Ming Lei) [1876863] - [block] blk-mq: Free tags in blk_mq_init_tags() upon error (Ming Lei) [1876863] - [block] blk-mq: Rename blk_mq_update_tag_set_depth() (Ming Lei) [1876863] - [block] blk-mq: Rename BLK_MQ_F_TAG_SHARED as BLK_MQ_F_TAG_QUEUE_SHARED (Ming Lei) [1876863] - [block] block: fix double account of flush request's driver tag (Ming Lei) [1876863] - [block] blk-mq: centralise related handling into blk_mq_get_driver_tag (Ming Lei) [1876863] - [block] blk-mq: streamline handling of q->mq_ops->queue_rq result (Ming Lei) [1876863] - [block] blk-mq: remove pointless call of list_entry_rq() in hctx_show_busy_rq() (Ming Lei) [1876863] - [block] blk-mq: move blk_mq_get_driver_tag into blk-mq.c (Ming Lei) [1876863] - [block] blk-mq: support batching dispatch in case of io (Ming Lei) [1876863] - [block] blk-mq: pass obtained budget count to blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: remove dead check from blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: move getting driver tag and budget into one helper (Ming Lei) [1876863] - [block] blk-mq: pass hctx to blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: remove the BLK_MQ_REQ_INTERNAL flag (Ming Lei) [1876863] - [net] netns: Constify exported functions (Guillaume Nault) [1806134] - [net] netns: protect netns ID lookups with RCU (Guillaume Nault) [1806134] - [net] netns: Remove __peernet2id_alloc() (Guillaume Nault) [1806134] - [net] netns: read NETNSA_NSID as s32 attribute in rtnl_net_getid() (Guillaume Nault) [1806134] - [tools] selftests: txtimestamp: add flag for timestamp validation tolerance. (Hangbin Liu) [1861175] - [tools] selftests/net: so_txtime: fix clang issues for target arch PowerPC (Hangbin Liu) [1861175] - [tools] selftests/net: rxtimestamp: fix clang issues for target arch PowerPC (Hangbin Liu) [1861175] - [tools] selftest: txtimestamp: fix net ns entry logic (Hangbin Liu) [1861175] - [tools] selftests/net: update initializer syntax to use c99 designators (Hangbin Liu) [1861175] - [tools] selftests/net: add ipv6 test coverage in rxtimestamp test (Hangbin Liu) [1861175] - [tools] selftests/net: plug rxtimestamp test into kselftest framework (Hangbin Liu) [1861175] - [tools] selftests/net: in rxtimestamp getopt_long needs terminating null entry (Hangbin Liu) [1861175] - [tools] selftests/net: in timestamping, strncpy needs to preserve null byte (Hangbin Liu) [1861175] - [tools] selftests: move timestamping selftests to net folder (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: print statistics for timestamp events. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: add support for epoll(). (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: add new command-line flags. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: allow printing latencies in nsec. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: allow individual txtimestamp tests. (Hangbin Liu) [1861175] - [tools] selftests: timestamping: Fix SIOCGSTAMP undeclared build failure (Hangbin Liu) [1861175] - [tools] selftests: fix timestamping Makefile (Hangbin Liu) [1861175] - [tools] selftests: add missing include unistd (Hangbin Liu) [1861175] - [tools] selftests/txtimestamp: Fix an equals vs assign bug (Hangbin Liu) [1861175] - [tools] selftests: add txtimestamp kselftest (Hangbin Liu) [1861175] - [tools] selftests: expand txtimestamp with ipv6 dgram + raw and pf_packet (Hangbin Liu) [1861175] - [tools] selftests: expand txtimestamp with cmsg support (Hangbin Liu) [1861175] - [hwmon] hwmon: (k10temp) Add support for Zen3 CPUs (Wei Huang) [1846851] - [powerpc] vfs: add faccessat2 syscall (Miklos Szeredi) [1333764] - [fs] vfs: split out access_override_creds() (Miklos Szeredi) [1333764] - [md] Revert "dm writecache: set "Tech Preview" taint using mark_tech_preview()" (Mike Snitzer) [1859413] - [s390] mm: fix huge pte soft dirty copying (Cornelia Huck) [1700709] - [fs] proc/mounts: add cursor (Miklos Szeredi) [1759472]- [char] random: Add a poll handler to extrng_fops (Vladis Dronov) [1884857] - [platform] platform/mellanox: mlxbf-pmc: Add Mellanox BlueField PMC driver (Alaa Hleihel) [1655729] - [mm] mm/page_idle.c: skip offline pages (Chris von Recklinghausen) [1867490] - [powerpc] powerpc/pseries: Detect secure and trusted boot state of the system (Diego Domingos) [1853411] - [net] bpf: Check correct cred for CAP_SYSLOG in bpf_dump_raw_ok() (Yauheni Kaliuta) [1874003] - [kernel] kallsyms: Refactor kallsyms_show_value() to take cred (Yauheni Kaliuta) [1874003] - [kernel] kprobes: Show blacklist addresses as same as kallsyms does (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Report PAC and BTI instructions as skippable (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Don't assume unrecognized HINTs are skippable (Yauheni Kaliuta) [1874003] - [lib] usercopy: Avoid soft lockups in test_check_nonzero_user() (Yauheni Kaliuta) [1874003] - [security] selinux: map CAP_PERFMON and CAP_BPF to CAP_SYS_ADMIN (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: fix netdevsim trap_flow_action_cookie read (Yauheni Kaliuta) [1874003] - [net] net/bpfilter: Initialize pos in __bpfilter_process_sockopt (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Extend map-in-map selftest to detect memory leaks (Yauheni Kaliuta) [1874003] - [net] bpf: Fix map leak in HASH_OF_MAPS map (Yauheni Kaliuta) [1874003] - [net] bpf: Fix NULL pointer dereference in __btf_resolve_helper_id() (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix cgroup sockopt verifier test (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix libbpf hashmap on (I)LP32 architectures (Yauheni Kaliuta) [1874003] - [tools] selftests: bpf: Fix detach from sockmap tests (Yauheni Kaliuta) [1874003] - [net] bpf: net: Avoid incorrect bpf_sk_reuseport_detach call (Yauheni Kaliuta) [1874003] - [net] bpf: net: Avoid copying sk_user_data of reuseport_array during sk_clone (Yauheni Kaliuta) [1874003] - [tools] bpf: Add tests for PTR_TO_BTF_ID vs. null comparison (Yauheni Kaliuta) [1874003] - [net] bpf: Fix an incorrect branch elimination by verifier (Yauheni Kaliuta) [1874003] - [include] bpf: sockmap: Require attach_bpf_fd when detaching a program (Yauheni Kaliuta) [1874003] - [net] bpf: sockmap: Check value of unused args to BPF_PROG_ATTACH (Yauheni Kaliuta) [1874003] - [net] bpf: Enforce BPF ringbuf size to be the power of 2 (Yauheni Kaliuta) [1874003] - [tools] bpf, sockmap: Add ingres skb tests that utilize merge skbs (Yauheni Kaliuta) [1874003] - [net] bpf, sockmap: RCU dereferenced psock may be used outside RCU block (Yauheni Kaliuta) [1874003] - [net] bpf, sockmap: RCU splat with redirect and strparser error or TLS (Yauheni Kaliuta) [1874003] - [tools] bpf: tcp: bpf_cubic: fix spurious HYSTART_DELAY exit upon drop in min RTT (Yauheni Kaliuta) [1874003] - [net] bpf: Do not allow btf_ctx_access with __int128 types (Yauheni Kaliuta) [1874003] - [tools] bpf: Fix formatting in documentation for BPF helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Restore behaviour of CAP_SYS_ADMIN allowing the loading of networking bpf programs (Yauheni Kaliuta) [1874003] - [net] bpf: Set the number of exception entries properly for subprograms (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix CO-RE relocs against .text section (Yauheni Kaliuta) [1874003] - [tools] libbpf: Forward-declare bpf_stats_type for systems with outdated UAPI headers (Yauheni Kaliuta) [1874003] - [documentation] bpf: Document optval > PAGE_SIZE behavior for sockopt hooks (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Make sure optvals > PAGE_SIZE are bypassed (Yauheni Kaliuta) [1874003] - [net] bpf: Don't return EINVAL from {get, set}sockopt when optlen > PAGE_SIZE (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Add ringbuf map type to map command docs (Yauheni Kaliuta) [1874003] - [samples] bpf, xdp, samples: Fix null pointer dereference in *_user code (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Add ringbuf map to a list of known map types (Yauheni Kaliuta) [1874003] - [tools] bpf: Fix definition of bpf_ringbuf_output() helper in UAPI comments (Yauheni Kaliuta) [1874003] - [net] bpf: Undo internal BPF_PROBE_MEM in BPF insns dump (Yauheni Kaliuta) [1874003] - [tools] libbpf: Support pre-initializing .bss global variables (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Fix skeleton codegen (Yauheni Kaliuta) [1874003] - [net] bpf: Fix memlock accounting for sock_hash (Yauheni Kaliuta) [1874003] - [net] bpf: tcp: Recv() should return 0 when the peer socket is closed (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Exit on error in function codegen (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Fix memory leak in codegen error cases (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add cgroup_skb/egress test for load_bytes_relative (Yauheni Kaliuta) [1874003] - [net] net/filter: Permit reading NET in load_bytes_relative when MAC not set (Yauheni Kaliuta) [1874003] - [tools] tools, bpf: Do not force gcc as CC (Yauheni Kaliuta) [1874003] - [tools] libbpf: Define __WORDSIZE if not available (Yauheni Kaliuta) [1874003] - [net] bpf: Devmap adjust uapi for attach bpf program (Yauheni Kaliuta) [1874003] - [net] bpf: Reset data_meta before running programs attached to devmap entry (Yauheni Kaliuta) [1874003] - [scripts] scripts: Require pahole v1.16 when generating BTF (Yauheni Kaliuta) [1874003] - [net] bpf, sockhash: Synchronize delete from bucket list on map free (Yauheni Kaliuta) [1874003] - [net] bpf, sockhash: Fix memory leak when unlinking sockets in sock_hash_free (Yauheni Kaliuta) [1874003] - [net] bpf/sockmap: Fix kernel panic at __tcp_bpf_recvmsg (Yauheni Kaliuta) [1874003] - [kernel] bpf: rework the compat kernel probe handling (Yauheni Kaliuta) [1874003] - [kernel] bpf: handle the compat string in bpf_trace_copy_string better (Yauheni Kaliuta) [1874003] - [kernel] bpf: factor out a bpf_trace_copy_string helper (Yauheni Kaliuta) [1874003] - [net] mmap locking API: add mmap_read_trylock_non_owner() (Yauheni Kaliuta) [1874003] - [net] bpf: sockmap: use mmap locking API (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix ringbuf selftest sample counting undeterminism (Yauheni Kaliuta) [1874003] - [net] bpf: Fix an error code in check_btf_func() (Yauheni Kaliuta) [1874003] - [net] bpf: make bpf_check_uarg_tail_zero() use check_zeroed_user() (Yauheni Kaliuta) [1874003] - [lib] lib: introduce copy_struct_from_user() helper (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add a default $(CXX) value (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: Don't use $(COMPILE.c) (Yauheni Kaliuta) [1874003] - [s390] s390/bpf: Use bcr 0, 0 as tail call nop filler (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix verifier test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix sample_cnt shared between two threads (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Adapt cls_redirect to call csum_level helper (Yauheni Kaliuta) [1874003] - [net] bpf: Add csum_level helper for fixing up csum levels (Yauheni Kaliuta) [1874003] - [net] bpf: Fix up bpf_skb_adjust_room helper's skb csum setting (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add _GNU_SOURCE for reallocarray to ringbuf.c (Yauheni Kaliuta) [1874003] - [net] bpf: Use tracing helpers for lsm programs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add test for SO_BINDTODEVICE opt of bpf_setsockopt (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Add test for ktls with skb bpf ingress policy (Yauheni Kaliuta) [1874003] - [net] bpf: Fix running sk_skb program types with ktls (Yauheni Kaliuta) [1874003] - [net] bpf: Refactor sockmap redirect code so its easy to reuse (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add SEC name for xdp programs attached to device map (Yauheni Kaliuta) [1874003] - [net] bpf: Add support to attach bpf program to a devmap entry (Yauheni Kaliuta) [1874003] - [kernel] bpf: Use strncpy_from_unsafe_strict() in bpf_seq_printf() helper (Yauheni Kaliuta) [1874003] - [net] devmap: Formalize map value as a named struct (Yauheni Kaliuta) [1874003] - [net] bpf: Add rx_queue_mapping to bpf_sock (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add tests for write-only stacks/queues (Yauheni Kaliuta) [1874003] - [documentation] docs/bpf: Add BPF ring buffer design notes (Yauheni Kaliuta) [1874003] - [tools] bpf: Add BPF ringbuf and perf buffer benchmarks (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add BPF ringbuf selftests (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add BPF ring buffer support (Yauheni Kaliuta) [1874003] - [tools] bpf: Implement BPF ring buffer and verifier support for it (Yauheni Kaliuta) [1874003] - [net] bpf: Fix map permissions check (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Cleanup comments in test_maps (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Cleanup some file descriptors in test_maps (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix a typo in test_maps (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix perf_buffer__free() API for sparse allocs (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Test probe_* helpers from SCHED_CLS (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Add sk_msg helpers load and attach test (Yauheni Kaliuta) [1874003] - [net] bpf, sk_msg: Add get socket storage helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Extend bpf_base_func_proto helpers with probe_* and *current_task* (Yauheni Kaliuta) [1874003] - [net] bpf, sk_msg: Add some generic helpers that may be useful from sk_msg (Yauheni Kaliuta) [1874003] - [net] bpf: Fix spelling in comment explaining ARG1 in ___bpf_prog_run (Yauheni Kaliuta) [1874003] - [tools] libbpf: Install headers as part of make install (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add API to consume the perf ring buffer content (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Print correct error message when failing to load BTF (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Make capability check account for new BPF caps (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Clean subcommand help messages (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: CONFIG_LIRC required for test_lirc_mode2.sh (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: CONFIG_IPV6_SEG6_BPF required for test_seg6_loop.o (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add general instructions for test execution (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add printk to test_sk_lookup_kern to encode null ptr check (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, verifier case for non null pointer map value branch (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, verifier case for non null pointer check branch taken (Yauheni Kaliuta) [1874003] - [net] bpf: Verifier track null pointer branch_taken with JNE and JEQ (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1874003] - [tools] bpf, testing: Add get{peer, sock}name selftests to test_progs (Yauheni Kaliuta) [1874003] - [tools] bpf, bpftool: Enable get{peer, sock}name attach types (Yauheni Kaliuta) [1874003] - [tools] bpf, libbpf: Enable get{peer, sock}name attach types (Yauheni Kaliuta) [1874003] - [net] bpf: Add get{peer, sock}name attach types for sock_addr (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor kprobe, tail call kern progs map definition (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Add tracex7 test file to .gitignore (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor tail call user progs with libbpf (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor kprobe tracing user progs with libbpf (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor pointer error check with libbpf (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add ktls tests to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add blacklist to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add whitelist option to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, provide verbose option for selftests execution (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, break down test_sockmap into subtests (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, improve test_sockmap total bytes counter (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, print error in test_sockmap error cases (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, sockmap test prog run without setting cgroup (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, remove prints from sockmap tests (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, move sockmap bpf prog header into progs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Remove test_align leftovers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Move test_align under test_progs (Yauheni Kaliuta) [1874003] - [tools] libbpf, hashmap: Fix signedness warnings (Yauheni Kaliuta) [1874003] - [tools] libbpf, hashmap: Remove unused #include (Yauheni Kaliuta) [1874003] - [net] bpf: Fix check_return_code to only allowin trace_iter progs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use CAP_BPF and CAP_PERFMON in tests (Yauheni Kaliuta) [1874003] - [net] bpf: Implement CAP_BPF (Yauheni Kaliuta) [1874003] - [security] bpf, capability: Introduce CAP_BPF (Yauheni Kaliuta) [1874003] - [security] capabilities: Introduce CAP_PERFMON to kernel and user space (Yauheni Kaliuta) [1874003] - [tools] bpf, bpftool: Allow probing for CONFIG_HZ from kernel config (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test for sk helpers in cgroup skb (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add connect_fd_to_fd, connect_wait net helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Introduce bpf_sk_{, ancestor_}cgroup_id helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Allow skb_ancestor_cgroup_id helper in cgroup skb (Yauheni Kaliuta) [1874003] - [net] bpf: Allow sk lookup helpers in cgroup skb (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Fix spelling mistake "SIGALARM" -> "SIGALRM" (Yauheni Kaliuta) [1874003] - [net] bpf: Fix bpf_iter's task iterator logic (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test narrow loads for bpf_sock_addr.user_port (Yauheni Kaliuta) [1874003] - [net] bpf: Support narrow loads from bpf_sock_addr.user_port (Yauheni Kaliuta) [1874003] - [samples] samples/bpf: xdp_redirect_cpu: Set MAX_CPUS according to NR_CPUS (Yauheni Kaliuta) [1874003] - [samples] samples/bpf: Remove compiler warnings (Yauheni Kaliuta) [1874003] - [net] bpf: Enable bpf_iter targets registering ctx argument types (Yauheni Kaliuta) [1874003] - [net] bpf: Change func bpf_iter_unreg_target() signature (Yauheni Kaliuta) [1874003] - [net] bpf: net: Refactor bpf_iter target registration (Yauheni Kaliuta) [1874003] - [net] bpf: Add comments to interpret bpf_prog return values (Yauheni Kaliuta) [1874003] - [tools] bpf: Change btf_iter func proto prefix to "bpf_iter_" (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: selftests : Explain bpf_iter test failures with llvm 10.0.0 (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Add BPF triggering benchmark (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Fmod_ret prog and implement test_overhead as part of bench (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add benchmark runner infrastructure (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Extract parse_num_list into generic testing_helpers.c (Yauheni Kaliuta) [1874003] - [tools] tools, bpf: Synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1874003] - [scripts] bpf: Minor fixes to BPF helpers documentation (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Minor fixes for documentation (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Poison and replace kernel integer typedefs (Yauheni Kaliuta) [1874003] - [tools] bpf, libbpf: Replace zero-length array with flexible-array (Yauheni Kaliuta) [1874003] - [arm64] bpf, arm64: Optimize ADD, SUB, JMP BPF_K using arm64 add/sub immediates (Yauheni Kaliuta) [1874003] - [arm64] bpf, arm64: Optimize AND, OR, XOR, JSET BPF_K using arm64 logical immediates (Yauheni Kaliuta) [1874003] - [tools] bpf, runqslower: include proper uapi/bpf.h (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: selftests: Add iter progs for bpf_map/task/task_file (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Add bpf_iter support for bptool (Yauheni Kaliuta) [1874003] - [tools] tools/libpf: Add offsetof/container_of macro in bpf_helpers.h (Yauheni Kaliuta) [1874003] - [tools] tools/libbpf: Add bpf_iter support (Yauheni Kaliuta) [1874003] - [net] bpf: Support variable length array in tracing programs (Yauheni Kaliuta) [1874003] - [net] bpf: Handle spilled PTR_TO_BTF_ID properly when checking stack_boundary (Yauheni Kaliuta) [1874003] - [kernel] bpf: Add bpf_seq_printf and bpf_seq_write helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Add PTR_TO_BTF_ID_OR_NULL support (Yauheni Kaliuta) [1874003] - [net] bpf: Add task and task/file iterator targets (Yauheni Kaliuta) [1874003] - [net] bpf: Add bpf_map iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Implement common macros/helpers for target iterators (Yauheni Kaliuta) [1874003] - [net] bpf: Create file bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Create anonymous bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Implement bpf_seq_read() for bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Support bpf tracing/iter programs for BPF_LINK_UPDATE (Yauheni Kaliuta) [1874003] - [net] bpf: Support bpf tracing/iter programs for BPF_LINK_CREATE (Yauheni Kaliuta) [1874003] - [net] bpf: Allow loading of a bpf_iter program (Yauheni Kaliuta) [1874003] - [net] bpf: Implement an interface to register bpf_iter targets (Yauheni Kaliuta) [1874003] - [tools] bpf: Allow any port in bpf_bind helper (Yauheni Kaliuta) [1874003] - [net] net: Refactor arguments of inet{,6}_bind (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Move existing common networking parts into network_helpers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Generalize helpers to control background listener (Yauheni Kaliuta) [1874003] - [net] crypto: lib/sha1 - rename "sha" to "sha1" (Yauheni Kaliuta) [1874003] - [arm64] arm64: bpf: Annotate JITed code for BTI (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Add constants for new HINT instruction decode (Yauheni Kaliuta) [1874003] - [kernel] sysctl: Fix unused function warning (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use reno instead of dctcp (Yauheni Kaliuta) [1874003] - [net] bpf: Fix use-after-free of bpf_link when priming half-fails (Yauheni Kaliuta) [1874003] - [tools] bpf: Bpf_{g, s}etsockopt for struct bpf_sock_addr (Yauheni Kaliuta) [1874003] - [tools] bpf: Add selftest for BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add support for command BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [net] bpf: Sharing bpf runtime stats with BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test allowed maps for bpf_sk_select_reuseport (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix false uninitialized variable warning (Yauheni Kaliuta) [1874003] - [net] bpf: Fix unused variable warning (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use SOCKMAP for server sockets in bpf_sk_assign test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test that lookup on SOCKMAP/SOCKHASH is allowed (Yauheni Kaliuta) [1874003] - [net] bpf: Allow bpf_map_lookup_elem for SOCKMAP and SOCKHASH (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: Make libcap dependency optional (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: Allow unprivileged users to probe features (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: For "feature probe" define "full_mode" bool as global (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Disable ASAN instrumentation for mmap()'ed memory read (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix invalid memory reads in core_relo selftest (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix memory leak in extract_build_id() (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix memory leak and possible double-free in hashmap__clear (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Convert test_hashmap into test_progs test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add SAN_CFLAGS param to selftests build to allow sanitizers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Ensure test flavors use correct skeletons (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add BTF-defined map-in-map support (Yauheni Kaliuta) [1874003] - [tools] libbpf: Refactor map creation logic and fix cleanup leak (Yauheni Kaliuta) [1874003] - [tools] libbpf: Refactor BTF-defined map definition parsing logic (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add link bash completions (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add bpftool-link manpage (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add bpf_link show and pin support (Yauheni Kaliuta) [1874003] - [tools] bpftool: Expose attach_type-to-string array to non-cgroup code (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test bpf_link's get_next_id, get_fd_by_id, and get_obj_info (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add low-level APIs for new bpf_link commands (Yauheni Kaliuta) [1874003] - [net] bpf: Add support for BPF_OBJ_GET_INFO_BY_FD for bpf_link (Yauheni Kaliuta) [1874003] - [net] bpf: Support GET_FD_BY_ID and GET_NEXT_ID for bpf_link (Yauheni Kaliuta) [1874003] - [net] bpf: Allocate ID for bpf_link (Yauheni Kaliuta) [1874003] - [tools] libbpf: Remove unneeded semicolon in btf_dump_emit_type (Yauheni Kaliuta) [1874003] - [net] bpf, cgroup: Remove unused exports (Yauheni Kaliuta) [1874003] - [tools] libbpf: Return err if bpf_object__load failed (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add cls_redirect classifier (Yauheni Kaliuta) [1874003] - [net] bpf: Make verifier log more relevant by default (Yauheni Kaliuta) [1874003] - [net] bpf: add bpf_ktime_get_boot_ns() (Yauheni Kaliuta) [1874003] - [net] net: bpf: Make bpf_ktime_get_ns() available to non GPL programs (Yauheni Kaliuta) [1874003] - [net] net: bpf: Allow TC programs to call BPF_FUNC_skb_change_head (Yauheni Kaliuta) [1874003] - [net] bpf: Fix missing bpf_base_func_proto in cgroup_base_func_proto for CGROUP_NET=n (Yauheni Kaliuta) [1874003] - [tools] bpf_helpers.h: Add note for building with vmlinux.h or linux/types.h (Yauheni Kaliuta) [1874003] - [net] bpf: Enable more helpers for BPF_PROG_TYPE_CGROUP_{DEVICE, SYSCTL, SOCKOPT} (Yauheni Kaliuta) [1874003] - [tools] tools/bpf/bpftool: Remove duplicate headers (Yauheni Kaliuta) [1874003] - [net] bpf: Remove set but not used variable 'dst_known' (Yauheni Kaliuta) [1874003] - [net] xdp: export the DEV_MAP_BULK_SIZE macro (Yauheni Kaliuta) [1874003] - [kernel] trace/bpf_trace: Open access for CAP_PERFMON privileged process (Yauheni Kaliuta) [1874003] - [scsi] scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.5 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Reject CT request for MIB commands (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add FDMI Vendor MIB support (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix duplicate wq_create_version check (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Removed unused macros in lpfc_attr.c (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix scheduling call while in softirq context in lpfc_unreg_rpi (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc() (Dick Kennedy) [1887549] - [scsi] scsi: Remove unneeded break statements (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add dependency on CPU_FREQ (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove unneeded variable 'status' in lpfc_fcp_cpu_map_store() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Drop nodelist reference on error in lpfc_gen_req() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove set but not used 'qp' (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.4 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional events (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix spelling mistake "Cant" -> "Can't" (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.3 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix validation of bsg reply lengths (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix retry of PRLI when status indicates its unsupported (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix oops when unloading driver while running mds diags (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix RSCN timeout due to incorrect gidft counter (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix no message shown for lpfc_hdw_queue out of range value (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix FCoE speed reporting (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add missing misc_deregister() for lpfc_init() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying targetport (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix typo in comment for ULP (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add description for lpfc_release_rpi()'s 'ndlpl param (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix a bunch of kerneldoc misdemeanors (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add and rename a whole bunch of function parameter descriptions (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Use __printf() format notation (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix kerneldoc parameter formatting/misnaming/missing issues (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix some function parameter descriptions (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Ensure variable has the same stipulations as code using it (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix-up formatting/docrot where appropriate (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Provide description for lpfc_mem_alloc()'s 'align' param (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix-up around 120 documentation issues (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove unused variable 'pg_addr' (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Correct some pretty obvious misdocumentation (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix less-than-zero comparison of unsigned value (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix interrupt assignments when multiple vectors are supported on same CPU (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix inconsistent indenting (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.2 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add an internal trace log buffer (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add blk_io_poll support for latency improvment (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add support to display if adapter dumps are available (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Allow applications to issue Common Set Features mailbox command (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix language in 0373 message to reflect non-error message (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix shost refcount mismatch when deleting vport (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix stack trace seen while setting rrq active (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix oops due to overrun when reading SLI3 data (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix missing MDS functionality (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix unused assignment in lpfc_sli4_bsg_link_diag_test (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Avoid another null dereference in lpfc_sli4_hba_unset() (Dick Kennedy) [1887549] - [scsi] lpfc_debugfs: get rid of pointless access_ok() (Dick Kennedy) [1887549] - [scsi] lpfc: add nvmet discovery_event op support (Dick Kennedy) [1887549] - [scsi] scsi: core: Don't start concurrent async scan on same host (Ming Lei) [1874501] - [crypto] crypto: bcm - Verify GCM/CCM key length in setkey (Vladis Dronov) [1887389] - [x86] x86/cpufeatures: Add support for fast short REP; MOVSB (Steve Best) [1838265] - [scsi] scsi: mpt3sas: A small correction in _base_process_reply_queue (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix sync irqs (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Detect tampered Aero and Sea adapters (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Don't call disable_irq from IRQ poll handler (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Remove pci-dma-compat wrapper API (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Remove superfluous memset() (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Update driver version to 35.100.00.00 (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Postprocessing of target and LUN reset (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Add functions to check if any cmd is outstanding on Target and LUN (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Rename and export interrupt mask/unmask functions (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Cancel the running work during host reset (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Dump system registers for debugging (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Memset config_cmds.reply buffer with zeros (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix kdoc comments format (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix set but unused variable (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix error returns in BRM_status_show (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix unlock imbalance (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix spelling mistake (Tomas Henzl) [1851440] - [s390] s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl (Claudio Imbrenda) [1885962] - [scsi] scsi: megaraid: Make smp_affinity_enable static (Tomas Henzl) [1860910] - [scsi] remove ioremap_nocache and devm_ioremap_nocache (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Remove set but unused variable (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Fix compilation warnings (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Fix kdoc comments format (Tomas Henzl) [1860910] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Tomas Henzl) [1860910] - [net] ethtool: Add support for 100Gbps per lane link modes (Ivan Vecera) [1879202]- [netdrv] ibmveth: Fix use of ibmveth in a bridge (Steve Best) [1893294] - [x86] ima: add a new CONFIG for loading arch-specific policies (Bruno Meneguele) [1869758] - [netdrv] e1000e: Add support for Meteor Lake (Ken Cox) [1838750] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838750] - [netdrv] treewide: Use fallthrough pseudo-keyword (Ken Cox) [1838750] - [netdrv] e1000e: Remove unnecessary usages of memset (Ken Cox) [1838750] - [netdrv] e1000e: continue to init PHY even when failed to disable ULP (Ken Cox) [1838750] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838750] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838750] - [netdrv] e1000e: fix unused-function warning (Ken Cox) [1838750] - [netdrv] e1000e: Do not wake up the system via WOL if device wakeup is disabled (Ken Cox) [1838750] - [netdrv] e1000e: Relax condition to trigger reset for ME workaround (Ken Cox) [1838750] - [netdrv] e1000e: disable s0ix entry and exit flows for ME systems (Ken Cox) [1838750] - [netdrv] e1000e: Disable TSO for buffer overrun workaround (Ken Cox) [1838750] - [netdrv] e1000e: Warn if disabling ULP failed (Ken Cox) [1838750] - [scsi] scsi: fnic: Do not call 'scsi_done()' for unhandled commands (Govindarajulu Varadarajan) [1870397] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838749] - [netdrv] igbvf: use generic power management (Corinna Vinschen) [1838749] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838749] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838749] - [net] SUNRPC: Properly set the @subbuf parameter of xdr_buf_subsegment() (Steve Dickson) [1884361] - [net] SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()") (Steve Dickson) [1884361] - [net] netfilter: nf_queue: do not release refcouts until nf_reinject is done (Florian Westphal) [1886557] - [net] netfilter: nf_queue: place bridge physports into queue_entry struct (Florian Westphal) [1886557] - [net] netfilter: nf_queue: make nf_queue_entry_release_refs static (Florian Westphal) [1886557] - [firewire] firewire: Deprecate Firewire support in RHEL8 (Prarit Bhargava) [1871863] - [lib] Add pldmfw library for PLDM firmware update (Patrick Talbert) [1878278] - [lib] bitops: introduce the for_each_set_clump8 macro (Patrick Talbert) [1878278] - [mm] x86/ioremap: Map EFI runtime services data as encrypted for SEV (Lenny Szubowicz) [1883134] - [powerpc] Revert "powerpc/powernv/idle: Replace CPU feature check with PVR check" (Steve Best) [1882365] - [powerpc] powerpc/xive: Do not expose a debugfs file when XIVE is disabled (Steve Best) [1854526] - [kvm] powerpc/xive: Enforce load-after-store ordering when StoreEOI is active (Steve Best) [1854526] - [powerpc] powerpc/xive: Add a debugfs file to dump internal XIVE state (Steve Best) [1854526] - [net] openvswitch: add TTL decrement action (Eelco Chaudron) [1762450]- [kernel] futex: Adjust absolute futex timeouts with per time namespace offset (Waiman Long) [1548297] - [kernel] futex: Remove unused or redundant includes (Waiman Long) [1548297] - [include] vdso: Fix clocksource.h macro detection (Waiman Long) [1548297] - [x86] um: Fix header inclusion (Waiman Long) [1548297] - [arm64] arm64: vdso32: make vdso32 install conditional (Waiman Long) [1548297] - [arm64] ARM64: vdso32: Install vdso32 from vdso_install (Waiman Long) [1548297] - [arm64] vdso/treewide: Add vdso_data pointer argument to __arch_get_hw_counter() (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Provide vdso_update_begin/end() (Waiman Long) [1548297] - [include] lib/vdso: Allow to add architecture-specific vdso data (Waiman Long) [1548297] - [arm64] arm64: enable time namespace support (Waiman Long) [1548297] - [arm64] arm64/vdso: Restrict splitting VVAR VMA (Waiman Long) [1548297] - [arm64] arm64/vdso: Handle faults on timens page (Waiman Long) [1548297] - [arm64] arm64/vdso: Add time namespace page (Waiman Long) [1548297] - [arm64] arm64/vdso: Zap vvar pages when switching to a time namespace (Waiman Long) [1548297] - [arm64] arm64/vdso: use the fault callback to map vvar pages (Waiman Long) [1548297] - [arm64] arm64: compat: Allow 32-bit vdso and sigpage to co-exist (Waiman Long) [1548297] - [x86] x86/vdso: Unbreak paravirt VDSO clocks (Waiman Long) [1548297] - [lib] lib/vdso: Provide sanity check for cycles (again) (Waiman Long) [1548297] - [kernel] clocksource: Remove obsolete ifdef (Waiman Long) [1548297] - [tools] selftests/timens: handle a case when alarm clocks are not supported (Waiman Long) [1548297] - [arm64] arm64: vdso: Add --eh-frame-hdr to ldflags (Waiman Long) [1548297] - [arm64] arm64: vdso: Add -fasynchronous-unwind-tables to cflags (Waiman Long) [1548297] - [arm64] arm64: vdso: use consistent 'map' nomenclature (Waiman Long) [1548297] - [arm64] arm64: vdso: use consistent 'abi' nomenclature (Waiman Long) [1548297] - [arm64] arm64: vdso: simplify arch_vdso_type ifdeffery (Waiman Long) [1548297] - [arm64] arm64: vdso: remove aarch32_vdso_pages (Waiman Long) [1548297] - [arm64] arm64: vdso: Add '-Bsymbolic' to ldflags (Waiman Long) [1548297] - [x86] x86/vdso/vdso2c: Convert iterators to unsigned (Waiman Long) [1548297] - [x86] x86/vdso/vdso2c: Correct error messages on file open (Waiman Long) [1548297] - [include] vdso/datapage: Use correct clock mode name in comment (Waiman Long) [1548297] - [arm64] arm64: vdso: don't free unallocated pages (Waiman Long) [1548297] - [fs] proc, time/namespace: Show clock symbolic names in /proc/pid/timens_offsets (Waiman Long) [1548297] - [kernel] time/namespace: Add max_time_namespaces ucount (Waiman Long) [1548297] - [kernel] time/namespace: Fix time_for_children symlink (Waiman Long) [1548297] - [arm64] arm64: compat: Fix syscall number of compat_clock_getres (Waiman Long) [1548297] - [tools] selftests/timens: Remove duplicated include (Waiman Long) [1548297] - [kernel] sys/sysinfo: Respect boottime inside time namespace (Waiman Long) [1548297] - [clocksource] clocksource/drivers/arm_arch_timer: Fix vDSO clockmode when vDSO disabled (Waiman Long) [1548297] - [lib] lib/vdso: Enable common headers (Waiman Long) [1548297] - [x86] x86/vdso: Enable x86 to use common headers (Waiman Long) [1548297] - [arm64] arm64: vdso32: Include common headers in the vdso library (Waiman Long) [1548297] - [arm64] arm64: vdso: Include common headers in the vdso library (Waiman Long) [1548297] - [arm64] arm64: Introduce asm/vdso/processor.h (Waiman Long) [1548297] - [arm64] arm64: vdso32: Code clean up (Waiman Long) [1548297] - [include] linux/elfnote.h: Replace elf.h with UAPI equivalent (Waiman Long) [1548297] - [include] common: Introduce processor.h (Waiman Long) [1548297] - [include] linux/ktime.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/jiffies.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time64.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time32.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/math64.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/clocksource.h: Extract common header for vDSO (Waiman Long) [1548297] - [arm64] arm64: Introduce asm/vdso/clocksource.h (Waiman Long) [1548297] - [x86] x86: Introduce asm/vdso/clocksource.h (Waiman Long) [1548297] - [include] linux/limits.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/bits.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/const.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/bits.h: make BIT(), GENMASK(), and friends available in assembly (Waiman Long) [1548297] - [lib] lib/vdso: Allow architectures to provide the vdso data pointer (Waiman Long) [1548297] - [lib] lib/vdso: Allow architectures to override the ns shift operation (Waiman Long) [1548297] - [lib] lib/vdso: Allow fixed clock mode (Waiman Long) [1548297] - [include] lib/vdso: Move VCLOCK_TIMENS to vdso_clock_modes (Waiman Long) [1548297] - [kernel] lib/vdso: Avoid highres update if clocksource is not VDSO capable (Waiman Long) [1548297] - [lib] lib/vdso: Cleanup clock mode storage leftovers (Waiman Long) [1548297] - [arm64] ARM/arm64: vdso: Use common vdso clock mode storage (Waiman Long) [1548297] - [x86] x86/vdso: Use generic VDSO clock mode storage (Waiman Long) [1548297] - [kernel] clocksource: Add common vdso clock mode storage (Waiman Long) [1548297] - [x86] x86/vdso: Move VDSO clocksource state tracking to callback (Waiman Long) [1548297] - [include] clocksource: Cleanup struct clocksource and documentation (Waiman Long) [1548297] - [lib] lib/vdso: Allow the high resolution parts to be compiled out (Waiman Long) [1548297] - [lib] lib/vdso: Only read hrtimer_res when needed in __cvdso_clock_getres() (Waiman Long) [1548297] - [x86] x86/vdso: Mark the TSC clocksource path likely (Waiman Long) [1548297] - [kernel] lib/vdso: Update coarse timekeeper unconditionally (Waiman Long) [1548297] - [kernel] lib/vdso: Make __arch_update_vdso_data() logic understandable (Waiman Long) [1548297] - [kernel] alarmtimer: Unregister wakeup source when module get fails (Waiman Long) [1548297] - [tools] selftests/timens: Check for right timens offsets after fork and exec (Waiman Long) [1548297] - [tools] selftests/timens: Add a simple perf test for clock_gettime() (Waiman Long) [1548297] - [tools] selftests/timens: Add timer offsets test (Waiman Long) [1548297] - [tools] selftests/timens: Add procfs selftest (Waiman Long) [1548297] - [tools] selftests/timens: Add a test for clock_nanosleep() (Waiman Long) [1548297] - [tools] selftests/timens: Add a test for timerfd (Waiman Long) [1548297] - [tools] selftests/timens: Add Time Namespace test for supported clocks (Waiman Long) [1548297] - [fs] fs/proc: Introduce /proc/pid/timens_offsets (Waiman Long) [1548297] - [x86] x86/vdso: Zap vvar pages when switching to a time namespace (Waiman Long) [1548297] - [x86] x86/vdso: On timens page fault prefault also VVAR page (Waiman Long) [1548297] - [x86] x86/vdso: Handle faults on timens page (Waiman Long) [1548297] - [kernel] time: Allocate per-timens vvar page (Waiman Long) [1548297] - [x86] x86/vdso: Add time napespace page (Waiman Long) [1548297] - [x86] x86/vdso: Provide vdso_data offset on vvar_page (Waiman Long) [1548297] - [lib] lib/vdso: Prepare for time namespace support (Waiman Long) [1548297] - [x86] x86/vdso: Restrict splitting VVAR VMA (Waiman Long) [1548297] - [fs] fs/proc: Respect boottime inside time namespace for /proc/uptime (Waiman Long) [1548297] - [kernel] posix-timers: Make clock_nanosleep() time namespace aware (Waiman Long) [1548297] - [kernel] hrtimers: Prepare hrtimer_nanosleep() for time namespaces (Waiman Long) [1548297] - [kernel] alarmtimer: Make nanosleep() time namespace aware (Waiman Long) [1548297] - [kernel] posix-timers: Make timer_settime() time namespace aware (Waiman Long) [1548297] - [fs] timerfd: Make timerfd_settime() time namespace aware (Waiman Long) [1548297] - [kernel] time: Add do_timens_ktime_to_host() helper (Waiman Long) [1548297] - [kernel] posix-clocks: Wire up clock_gettime() with timens offsets (Waiman Long) [1548297] - [kernel] posix-timers: Use clock_get_ktime() in common_timer_get() (Waiman Long) [1548297] - [kernel] posix-clocks: Introduce clock_get_ktime() callback (Waiman Long) [1548297] - [kernel] alarmtimer: Provide get_timespec() callback (Waiman Long) [1548297] - [kernel] alarmtimer: Rename gettime() callback to get_ktime() (Waiman Long) [1548297] - [kernel] posix-clocks: Rename .clock_get_timespec() callbacks accordingly (Waiman Long) [1548297] - [kernel] posix-clocks: Rename the clock_get() callback to clock_get_timespec() (Waiman Long) [1548297] - [kernel] time: Add timens_offsets to be used for tasks in time namespace (Waiman Long) [1548297] - [kernel] ns: Introduce Time Namespace (Waiman Long) [1548297] - [lib] lib/vdso: Mark do_hres() and do_coarse() as __always_inline (Waiman Long) [1548297] - [lib] lib/vdso: Avoid duplication in __cvdso_clock_getres() (Waiman Long) [1548297] - [lib] lib/vdso: Let do_coarse() return 0 to simplify the callsite (Waiman Long) [1548297] - [x86] x86/vdso: Remove unused VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Remove unused VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [lib] lib/vdso: Remove checks on return value for 32 bit vDSO (Waiman Long) [1548297] - [lib] lib/vdso: Remove VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Expose BUILD_VDSO32 (Waiman Long) [1548297] - [include] lib/vdso: Add unlikely() hint into vdso_read_begin() (Waiman Long) [1548297] - [x86] y2038: vdso: change time_t to __kernel_old_time_t (Waiman Long) [1548297] - [uapi] y2038: add __kernel_old_timespec and __kernel_old_time_t (Waiman Long) [1548297] - [arm64] timekeeping/vsyscall: Update VDSO data unconditionally (Waiman Long) [1548297] - [x86] um: Fix VDSO compiler warning (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Prevent math overflow in BOOTTIME update (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Use legacy syscalls as fallback (Waiman Long) [1548297] - [x86] x86/vdso/32: Use 32bit syscall fallback (Waiman Long) [1548297] - [arm64] arm64: vdso: Cleanup Makefiles (Waiman Long) [1548297] - [arm64] arm64: vdso: fix flip/flop vdso build bug (Waiman Long) [1548297] - [x86] x86/vdso: Fix flip/flop vdso build bug (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Use __iter_div_u64_rem() (Waiman Long) [1548297] - [arm64] arm64: compat: Fix __arch_get_hw_counter() implementation (Waiman Long) [1548297] - [arm64] arm64: Fix __arch_get_hw_counter() implementation (Waiman Long) [1548297] - [arm64] arm64: compat: No need for pre-ARMv7 barriers on an ARMv8 system (Waiman Long) [1548297] - [arm64] arm64: vdso: Remove unnecessary asm-offsets.c definitions (Waiman Long) [1548297] - [include] vdso: Remove superfluous #ifdef __KERNEL__ in vdso/datapage.h (Waiman Long) [1548297] - [arm64] arm64: vdso: Enable vDSO compat support (Waiman Long) [1548297] - [arm64] arm64: compat: Get sigreturn trampolines from vDSO (Waiman Long) [1548297] - [arm64] arm64: elf: VDSO code page discovery (Waiman Long) [1548297] - [arm64] arm64: compat: VDSO setup for compat layer (Waiman Long) [1548297] - [arm64] arm64: vdso: Refactor vDSO code (Waiman Long) [1548297] - [arm64] arm64: compat: Add vDSO (Waiman Long) [1548297] - [arm64] arm64: compat: Generate asm offsets for signals (Waiman Long) [1548297] - [arm64] arm64: compat: Expose signal related structures (Waiman Long) [1548297] - [arm64] arm64: compat: Add missing syscall numbers (Waiman Long) [1548297] - [arm64] arm64: vdso: Build vDSO with -ffixed-x18 (Waiman Long) [1548297] - [arm64] arm64: vdso: Substitute gettimeofday() with C implementation (Waiman Long) [1548297] - [lib] lib/vdso: Build 32 bit specific functions in the right context (Waiman Long) [1548297] - [lib] lib/vdso: Make __cvdso_clock_getres() static (Waiman Long) [1548297] - [lib] lib/vdso: Make clock_getres() POSIX compliant again (Waiman Long) [1548297] - [lib] lib/vdso/32: Provide legacy syscall fallbacks (Waiman Long) [1548297] - [lib] lib/vdso: Move fallback invocation to the callers (Waiman Long) [1548297] - [lib] lib/vdso/32: Remove inconsistent NULL pointer checks (Waiman Long) [1548297] - [x86] lib/vdso: Make delta calculation work correctly (Waiman Long) [1548297] - [x86] x86/vdso: Add clock_gettime64() entry point (Waiman Long) [1548297] - [x86] x86/vdso: Add clock_getres() entry point (Waiman Long) [1548297] - [x86] x86/vdso: Switch to generic vDSO implementation (Waiman Long) [1548297] - [x86] x86/vdso: Prevent segfaults due to hoisted vclock reads (Waiman Long) [1548297] - [kernel] timekeeping: Provide a generic update_vsyscall() implementation (Waiman Long) [1548297] - [lib] lib/vdso: Add compat support (Waiman Long) [1548297] - [lib] lib/vdso: Provide generic VDSO implementation (Waiman Long) [1548297] - [include] hrtimer: Split out hrtimer defines into separate header (Waiman Long) [1548297] - [include] vdso: Define standardized vdso_datapage (Waiman Long) [1548297] - [arm64] arm64: arch_timer: mark functions as __always_inline (Waiman Long) [1548297] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 223 (Waiman Long) [1548297] - [clocksource] clocksource/drivers/arm_arch_timer: Don't trace count reader functions (Waiman Long) [1548297] - [arm64] arm64: vdso: Explicitly add build-id option (Waiman Long) [1548297] - [x86] gcc-9: properly declare the {pv, hv}clock_page storage (Waiman Long) [1548297] - [arm64] arm64: vdso: Fix clock_getres() for CLOCK_REALTIME (Waiman Long) [1548297] - [arm64] arm64: compat: Refactor aarch32_alloc_vdso_pages() (Waiman Long) [1548297] - [arm64] arm64: compat: Split kuser32 (Waiman Long) [1548297] - [arm64] arm64: compat: Alloc separate pages for vectors and sigpage (Waiman Long) [1548297] - [arm64] arm64: arch_timer: Ensure counter register reads occur with seqlock held (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Use arch_timer_read_counter to access stable counters (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Remove use of workaround static key (Waiman Long) [1548297] - [arm64] clocksource/arm_arch_timer: Drop use of static key in arch_timer_reg_read_stable (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Direcly assign set_next_event workaround (Waiman Long) [1548297] - [arm64] arm64: Use arch_timer_read_counter instead of arch_counter_get_cntvct (Waiman Long) [1548297] - [watchdog] watchdog/sbsa: Use arch_timer_read_counter instead of arch_counter_get_cntvct (Waiman Long) [1548297] - [kernel] alarmtimer: Return correct remaining time (Waiman Long) [1548297] - [arm64] arm64: vdso: use $(LD) instead of $(CC) to link VDSO (Waiman Long) [1548297] - [arm64] arm64: vdso: fix and clean-up Makefile (Waiman Long) [1548297] - [x86] x86/vdso: Remove hpet_page from vDSO (Waiman Long) [1548297] - [scripts] checksyscalls: fix up mq_timedreceive and stat exceptions (Waiman Long) [1548297] - [uapi] time: Add time_types.h (Waiman Long) [1548297] - [uapi] socket: Add struct __kernel_sock_timeval (Waiman Long) [1548297] - [arm64] arm64: asm-offsets: remove unused offsets (Waiman Long) [1548297] - [arm64] y2038: add 64-bit time_t syscalls to all 32-bit architectures (Waiman Long) [1548297] - [arm64] arm64: replace arm64-obj-* in Makefile with obj-* (Waiman Long) [1548297] - [x86] x86/vdso: Remove obsolete "fake section table" reservation (Waiman Long) [1548297] - [x86] x86/vdso: Rename variable to fix -Wshadow warning (Waiman Long) [1548297] - [x86] x86/vdso: Rearrange do_hres() to improve code generation (Waiman Long) [1548297] - [x86] x86/vdso: Document vgtod_ts better (Waiman Long) [1548297] - [x86] x86/vdso: Remove "memory" clobbers in the vDSO syscall fallbacks (Waiman Long) [1548297] - [x86] x86/vdso: Initialize the CPU/node NR segment descriptor earlier (Waiman Long) [1548297] - [x86] x86/vdso: Introduce helper functions for CPU and node number (Waiman Long) [1548297] - [x86] x86/segments/64: Rename the GDT PER_CPU entry to CPU_NUMBER (Waiman Long) [1548297] - [x86] x66/vdso: Add CLOCK_TAI support (Waiman Long) [1548297] - [x86] x86/vdso: Move cycle_last handling into the caller (Waiman Long) [1548297] - [x86] x86/vdso: Simplify the invalid vclock case (Waiman Long) [1548297] - [x86] x86/vdso: Replace the clockid switch case (Waiman Long) [1548297] - [x86] x86/vdso: Collapse coarse functions (Waiman Long) [1548297] - [x86] x86/vdso: Collapse high resolution functions (Waiman Long) [1548297] - [x86] x86/vdso: Introduce and use vgtod_ts (Waiman Long) [1548297] - [x86] x86/vdso: Use unsigned int consistently for vsyscall_gtod_data:: Seq (Waiman Long) [1548297] - [x86] x86/vdso: Enforce 64bit clocksource (Waiman Long) [1548297] - [x86] x86/time: Implement clocksource_arch_init() (Waiman Long) [1548297] - [kernel] clocksource: Provide clocksource_arch_init() (Waiman Long) [1548297] - [fs] fs/proc/uptime.c: use ktime_get_boottime_ts64 (Waiman Long) [1548297] - [include] y2038: Provide aliases for compat helpers (Waiman Long) [1548297] - [fs] kernel: add kcompat_sys_{f,}statfs64() (Waiman Long) [1548297] - [kernel] sysinfo: Remove get_monotonic_boottime() (Waiman Long) [1548297] - [kernel] posix-timers: Use new ktime_get_*_ts64() helpers (Waiman Long) [1548297] - [kernel] time: Use ktime_get_real_seconds() in time syscall (Waiman Long) [1548297] - [include] time: Introduce struct __kernel_itimerspec (Waiman Long) [1548297] - [scripts] kconfig: improve the recursive dependency report (Bruno Meneguele) [1890578] - [scripts] kconfig: report recursive dependency involving 'imply' (Bruno Meneguele) [1890578] - [scripts] kconfig: error out when seeing recursive dependency (Bruno Meneguele) [1890578] - [scsi] scsi: hpsa: Update copyright (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Remove pci-dma-compat wrapper API (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Use fallthrough pseudo-keyword (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Correct ctrl queue depth (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Bump version (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Increase controller error handling timeout (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Increase queue depth for external LUNs (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Correct rare oob condition (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: hpsa_ioctl(): Tidy up a bit (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Get rid of compat_alloc_user_space() (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Don't bother with vmalloc for BIG_IOCTL_Command_struct (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Lift {BIG_, }IOCTL_Command_struct copy{in, out} into hpsa_ioctl() (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: remove ioremap_nocache and devm_ioremap_nocache (Joseph Szczypek) [1861541] - [tools] selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load workaround (Gustavo Duarte) [1887442] - [powerpc] powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation (Gustavo Duarte) [1887442] - [scsi] scsi: smartpqi: Update copyright (Don Brace) [1861538] - [scsi] scsi: smartpqi: Bump version to 1.2.16-010 (Don Brace) [1861538] - [scsi] scsi: smartpqi: Add RAID bypass counter (Don Brace) [1861538] - [scsi] scsi: smartpqi: Avoid crashing kernel for controller issues (Don Brace) [1861538] - [scsi] scsi: smartpqi: Update logical volume size after expansion (Don Brace) [1861538] - [scsi] scsi: smartpqi: Add id support for SmartRAID 3152-8i (Don Brace) [1861538] - [scsi] scsi: smartpqi: Identify physical devices without issuing INQUIRY (Don Brace) [1861538] - [mm] mm: simplify find_min_pfn_with_active_regions() (Baoquan He) [1844157] - [mm] mm: clean up free_area_init_node() and its helpers (Baoquan He) [1844157] - [mm] mm: rename free_area_init_node() to free_area_init_memoryless_node() (Baoquan He) [1844157] - [mm] mm: free_area_init: allow defining max_zone_pfn in descending order (Baoquan He) [1844157] - [powerpc] mm: remove early_pfn_in_nid() and CONFIG_NODES_SPAN_OTHER_NODES (Baoquan He) [1844157] - [mm] mm: memmap_init: iterate over memblock regions rather that check each PFN (Baoquan He) [1844157] - [mm] arm64: simplify detection of memory zone boundaries for UMA configs (Baoquan He) [1844157] - [mm] mm: use free_area_init() instead of free_area_init_nodes() (Baoquan He) [1844157] - [mm] mm: free_area_init: use maximal zone PFNs rather than zone sizes (Baoquan He) [1844157] - [mm] mm: remove CONFIG_HAVE_MEMBLOCK_NODE_MAP option (Baoquan He) [1844157] - [mm] numa: make "nr_node_ids" unsigned int (Baoquan He) [1844157] - [mm] mm: make early_pfn_to_nid() and related defintions close to each other (Baoquan He) [1844157] - [mm] mm: memblock: replace dereferences of memblock_region.nid with API calls (Baoquan He) [1844157] - [mm] mm: factor out next_present_section_nr() (Baoquan He) [1844157] - [mm] mm/page_alloc: fix and rework pfn handling in memmap_init_zone() (Baoquan He) [1844157] - [mm] mm/page_alloc: skip non present sections on zone initialization (Baoquan He) [1844157] - [mm] mm: move mirrored memory specific code outside of memmap_init_zone (Baoquan He) [1844157] - [mm] mm: calculate deferred pages after skipping mirrored memory (Baoquan He) [1844157] - [mm] mm/memblock.c: fix a typo in __next_mem_pfn_range() comments (Baoquan He) [1844157] - [mm] memblock: remove memblock_{set, clear}_region_flags (Baoquan He) [1844157] - [mm] mm: replace all open encodings for NUMA_NO_NODE (Baoquan He) [1844157] - [powerpc] lockdep: Only trace IRQ edges (Waiman Long) [1885084] - [arm64] arm64: Implement arch_irqs_disabled() (Waiman Long) [1885084] - [include] locking/lockdep: Cleanup (Waiman Long) [1885084] - [include] lockdep: Use raw_cpu_*() for per-cpu variables (Waiman Long) [1885084] - [x86] locking/seqlock, headers: Untangle the spaghetti monster (Waiman Long) [1885084] - [misc] vmw_balloon: Explicitly include linux/io.h for virt_to_phys() (Waiman Long) [1885084] - [x86] x86: i8259: Add missing include file (Waiman Long) [1885084] - [include] seqcount: More consistent seqprop names (Waiman Long) [1885084] - [include] seqcount: Compress SEQCNT_LOCKNAME_ZERO() (Waiman Long) [1885084] - [include] seqlock: Fold seqcount_LOCKNAME_init() definition (Waiman Long) [1885084] - [include] seqlock: Fold seqcount_LOCKNAME_t definition (Waiman Long) [1885084] - [include] seqlock: s/__SEQ_LOCKDEP/__SEQ_LOCK/g (Waiman Long) [1885084] - [kernel] hrtimer: Use sequence counter with associated raw spinlock (Waiman Long) [1885084] - [kernel] timekeeping: Use sequence counter with associated raw spinlock (Waiman Long) [1885084] - [kernel] timekeeping: Use proper seqcount initializer (Waiman Long) [1885084] - [init] sched: tasks: Use sequence counter with associated spinlock (Waiman Long) [1885084] - [kernel] lockdep: Refactor IRQ trace events fields into struct (Waiman Long) [1885084] - [drm] dma-buf: Use sequence counter with associated wound/wait mutex (Waiman Long) [1885084] - [dma-buf] dma-buf: Remove custom seqcount lockdep class key (Waiman Long) [1885084] - [include] seqlock: Align multi-line macros newline escapes at 72 columns (Waiman Long) [1885084] - [documentation] seqlock: Extend seqcount API with associated locks (Waiman Long) [1885084] - [include] seqlock: lockdep assert non-preemptibility on seqcount_t write (Waiman Long) [1885084] - [lib] lockdep: Add preemption enabled/disabled assertion APIs (Waiman Long) [1885084] - [include] seqlock: Implement raw_seqcount_begin() in terms of raw_read_seqcount() (Waiman Long) [1885084] - [include] seqlock: Add kernel-doc for seqcount_t and seqlock_t APIs (Waiman Long) [1885084] - [include] seqlock: Reorder seqcount_t and seqlock_t API definitions (Waiman Long) [1885084] - [include] seqlock: seqcount_t latch: End read sections with read_seqcount_retry() (Waiman Long) [1885084] - [include] seqlock: Properly format kernel-doc code samples (Waiman Long) [1885084] - [documentation] Documentation: locking: Describe seqlock design and usage (Waiman Long) [1885084] - [include] seqlock: Require WRITE_ONCE surrounding raw_seqcount_barrier (Waiman Long) [1885084] - [include] seqlock, kcsan: Add annotations for KCSAN (Waiman Long) [1885084] - [include] include/linux/compiler.h: Introduce data_race(expr) macro (Waiman Long) [1885084] - [kernel] kcsan: Add Kernel Concurrency Sanitizer infrastructure (Waiman Long) [1885084] - [include] locking/qspinlock: Do not include atomic.h from qspinlock_types.h (Waiman Long) [1885084] - [include] locking/atomic: Move ATOMIC_INIT into linux/types.h (Waiman Long) [1885084] - [connector] connector/cn_proc: Protect send_msg() with a local lock (Waiman Long) [1885084] - [mm] mm/swap: Use local_lock for protection (Waiman Long) [1885084] - [include] radix-tree: Use local_lock for protection (Waiman Long) [1885084] - [include] locking: Introduce local_lock() (Waiman Long) [1885084] - [documentation] Documentation/locking/locktypes: Minor copy editor fixes (Waiman Long) [1885084] - [documentation] Documentation/locking/locktypes: Further clarifications and wordsmithing (Waiman Long) [1885084] - [documentation] Documentation: Add lock ordering and nesting documentation (Waiman Long) [1885084] - [mm] mm/swap.c: trivial mark_page_accessed() cleanup (Waiman Long) [1885084] - [lib] radix tree: Remove radix_tree_maybe_preload_order (Waiman Long) [1885084] - [kernel] locking/lockdep: Fix "USED" <- "IN-NMI" inversions (Waiman Long) [1885084] - [kernel] lockdep: Remove lockdep_hardirq{s_enabled, _context}() argument (Waiman Long) [1885084] - [kernel] lockdep: Change hardirq{s_enabled, _context} to per-cpu variables (Waiman Long) [1885084] - [kernel] x86/entry: Rename trace_hardirqs_off_prepare() (Waiman Long) [1885084] - [kernel] lockdep: Prepare for NMI IRQ state tracking (Waiman Long) [1885084] - [include] lockdep: Move list.h inclusion into lockdep.h (Waiman Long) [1885084] - [include] lockdep: Split header file into lockdep and lockdep_types (Waiman Long) [1885084] - [kernel] lockdep: __always_inline more for noinstr (Waiman Long) [1885084] - [kernel] lockdep: Prepare for noinstr sections (Waiman Long) [1885084] - [kernel] tracing: Provide lockdep less trace_hardirqs_on/off() variants (Waiman Long) [1885084] - [include] vmlinux.lds.h: Create section for protection against instrumentation (Waiman Long) [1885084] - [kernel] locking/lockdep: Replace zero-length array with flexible-array (Waiman Long) [1885084] - [kernel] hrtimer: Don't dereference the hrtimer pointer after the callback (Waiman Long) [1885084] - [kernel] hrtimer: Add missing sparse annotation for __run_timer() (Waiman Long) [1885084] - [kernel] lockdep: Always inline lockdep_{off,on}() (Waiman Long) [1885084] - [kernel] locking/lockdep: Improve 'invalid wait context' splat (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_{hard, soft}{irq_context, irqs_enabled}() (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_softirqs_{on,off}() (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_hardirq_{enter, exit}() (Waiman Long) [1885084] - [kernel] completion: Use lockdep_assert_RT_in_threaded_ctx() in complete_all() (Waiman Long) [1885084] - [usb] completion: Use simple wait queues (Waiman Long) [1885084] - [kernel] sched/swait: Prepare usage in completions (Waiman Long) [1885084] - [kernel] lockdep: Add posixtimer context tracing bits (Waiman Long) [1885084] - [kernel] lockdep: Annotate irq_work (Waiman Long) [1885084] - [kernel] lockdep: Add hrtimer context tracing bits (Waiman Long) [1885084] - [include] lockdep: Introduce wait-type checks (Waiman Long) [1885084] - [kernel] lockdep: Teach lockdep about "USED" <- "IN-NMI" inversions (Waiman Long) [1885084] - [kernel] locking/lockdep: Rework lockdep_lock (Waiman Long) [1885084] - [kernel] locking/lockdep: Fix bad recursion pattern (Waiman Long) [1885084] - [s390] s390/ftrace: fix endless recursion in function_graph tracer (Waiman Long) [1885084] - [s390] s390/time: ensure get_clock_monotonic() returns monotonic values (Waiman Long) [1885084] - [kernel] irq_work: Fix IRQ_WORK_BUSY bit clearing (Waiman Long) [1885084] - [kernel] irq_work: Slightly simplify IRQ_WORK_PENDING clearing (Waiman Long) [1885084] - [kernel] irq_work: Fix irq_work_claim() memory ordering (Waiman Long) [1885084] - [kernel] irq_work: Convert flags to atomic_t (Waiman Long) [1885084] - [kernel] kprobes: Prohibit probing on lockdep functions (Waiman Long) [1885084] - [kernel] kprobes: Prohibit probing on hardirq tracers (Waiman Long) [1885084] - [lib] locking/lockdep: Make global debug_locks* variables read-mostly (Waiman Long) [1885084] - [kernel] locking/lockdep: Delete unnecessary #include (Waiman Long) [1885084] - [kernel] tracing: More reverting of "tracing: Centralize preemptirq tracepoints and unify their usage" (Waiman Long) [1885084] - [kernel] tracing/irqsoff: Handle preempt_count for different configs (Waiman Long) [1885084] - [kernel] tracing: Partial revert of "tracing: Centralize preemptirq tracepoints and unify their usage" (Waiman Long) [1885084] - [kernel] tracing: irqsoff: Account for additional preempt_disable (Waiman Long) [1885084] - [kernel] tracing: Centralize preemptirq tracepoints and unify their usage (Waiman Long) [1885084] - [kernel] tracing/irqsoff: Split reset into separate functions (Waiman Long) [1885084] - [kernel] sched/fair: Use dst group while checking imbalance for NUMA balancer (Phil Auld) [1877360] - [kernel] sched/fair: Reduce busy load balance interval (Phil Auld) [1877360] - [kernel] sched/fair: Reduce minimal imbalance threshold (Phil Auld) [1877360] - [kernel] sched/fair: Minimize concurrent LBs between domain level (Phil Auld) [1877360] - [kernel] sched/fair: Fix wrong cpu selecting from isolated domain (Phil Auld) [1877360] - [kernel] sched/fair: Relax constraint on task's load during load balance (Phil Auld) [1877360] - [kernel] sched/numa: Use runnable_avg to classify node (Phil Auld) [1877360] - [kernel] sched: Remove duplicated tick_nohz_full_enabled() check (Phil Auld) [1877360] - [kernel] sched: Warn if garbage is passed to default_wake_function() (Phil Auld) [1877360] - [kernel] sched: nohz: stop passing around unused "ticks" parameter (Phil Auld) [1877360] - [kernel] sched/fair: update_pick_idlest() Select group with lowest group_util when idle_cpus are equal (Phil Auld) [1877360] - [kernel] sched: Better document ttwu() (Phil Auld) [1877360] - [kernel] sched/fair: handle case of task_h_load() returning 0 (Phil Auld) [1877360] - [kernel] sched: Fix unreliable rseq cpu_id for new tasks (Phil Auld) [1877360] - [kernel] sched/core: s/WF_ON_RQ/WQ_ON_CPU/ (Phil Auld) [1877360] - [include] sched/core: Remove mmdrop() definition (Phil Auld) [1877360] - [kernel] sched/fair: Optimize dequeue_task_fair() (Phil Auld) [1877360] - [kernel] sched/pelt: Cleanup PELT divider (Phil Auld) [1877360] - [kernel] sched/fair: Fix NOHZ next idle balance (Phil Auld) [1877360] - [kernel] sched: correct SD_flags returned by tl->sd_flags() (Phil Auld) [1877360] - [kernel] sched/fair: Remove unused 'sd' parameter from scale_rt_capacity() (Phil Auld) [1877360] - [kernel] sched/idle, stop: Remove .get_rr_interval from sched_class (Phil Auld) [1877360] - [kernel] sched/core: Remove redundant 'preempt' param from sched_class->yield_to_task() (Phil Auld) [1877360] - [kernel] sched/pelt: Remove redundant cap_scale() definition (Phil Auld) [1877360] - [kernel] sched/pelt: Sync util/runnable_sum with PELT window when propagating (Phil Auld) [1877360] - [kernel] sched/cpuacct: Fix charge cpuacct.usage_sys (Phil Auld) [1877360] - [kernel] sched/cpuacct: Use __this_cpu_add() instead of this_cpu_ptr() (Phil Auld) [1877360] - [kernel] sched/fair: Fix unthrottle_cfs_rq() for leaf_cfs_rq list (Phil Auld) [1877360] - [kernel] sched/core: Simplify sched_init() (Phil Auld) [1877360] - [kernel] sched/fair: Mark sched_init_granularity __init (Phil Auld) [1877360] - [kernel] sched/core: Fix illegal RCU from offline CPUs (Phil Auld) [1877360] - [kernel] sched/fair: Use __this_cpu_read() in wake_wide() (Phil Auld) [1877360] - [kernel] sched: Extract the task putting code from pick_next_task() (Phil Auld) [1877360] - [kernel] sched: Make newidle_balance() static again (Phil Auld) [1877360] - [kernel] sched/fair: Remove distribute_running from CFS bandwidth (Phil Auld) [1877360] - [kernel] sched/fair: Simplify the code of should_we_balance() (Phil Auld) [1877360] - [kernel] sched/debug: Fix trival print_task() format (Phil Auld) [1877360] - [kernel] sched/debug: Factor out printing formats into common macros (Phil Auld) [1877360] - [kernel] sched/debug: Remove redundant macro define (Phil Auld) [1877360] - [kernel] sched/core: Remove unused rq::last_load_update_tick (Phil Auld) [1877360] - [kernel] sched/fair: Align rq->avg_idle and rq->avg_scan_cost (Phil Auld) [1877360] - [kernel] sched/fair: Improve spreading of utilization (Phil Auld) [1877360] - [kernel] sched/fair: Fix condition of avg_load calculation (Phil Auld) [1877360] - [kernel] kthread: Do not preempt current task if it is going to call schedule() (Phil Auld) [1877360] - [kernel] sched/core: Distribute tasks within affinity masks (Phil Auld) [1877360] - [kernel] time/sched_clock: Expire timer in hardirq context (Phil Auld) [1877360] - [kernel] sched/deadline: Make two functions static (Phil Auld) [1877360] - [mm] slab: store tagged freelist for off-slab slabmgmt (Waiman Long) [1887067] - [mm] mm/kasan: fix false positive invalid-free reports with CONFIG_KASAN_SW_TAGS=y (Waiman Long) [1887067] - [arm64] arm64: avoid clang warning about self-assignment (Waiman Long) [1887067] - [mm] kasan: add memory corruption identification for software tag-based mode (Waiman Long) [1887067] - [mm] mm/kasan: print frame description for stack bugs (Waiman Long) [1887067] - [mm] kasan: initialize tag to 0xff in __kasan_kmalloc (Waiman Long) [1887067] - [mm] kasan: Makefile: Replace -pg with CC_FLAGS_FTRACE (Waiman Long) [1887067] - [mm] x86/uaccess, kasan: Fix KASAN vs SMAP (Waiman Long) [1887067] - [mm] mm/kasan: Simplify stacktrace handling (Waiman Long) [1887067] - [mm] kasan: fix variable 'tag' set but not used warning (Waiman Long) [1887067] - [mm] slub: fix a crash with SLUB_DEBUG + KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan, slab: remove redundant kasan_slab_alloc hooks (Waiman Long) [1887067] - [mm] kasan, slab: make freelist stored without tags (Waiman Long) [1887067] - [mm] kasan, slab: fix conflicts with CONFIG_HARDENED_USERCOPY (Waiman Long) [1887067] - [mm] kasan: prevent tracing of tags.c (Waiman Long) [1887067] - [mm] kasan: fix random seed generation for tag-based mode (Waiman Long) [1887067] - [mm] slub: fix SLAB_CONSISTENCY_CHECKS + KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan, slub: fix more conflicts with CONFIG_SLAB_FREELIST_HARDENED (Waiman Long) [1887067] - [mm] kasan, slub: fix conflicts with CONFIG_SLAB_FREELIST_HARDENED (Waiman Long) [1887067] - [mm] kasan, slub: move kasan_poison_slab hook before page_address (Waiman Long) [1887067] - [mm] kmemleak: account for tagged pointers when calculating pointer range (Waiman Long) [1887067] - [mm] kasan, kmemleak: pass tagged pointers to kmemleak (Waiman Long) [1887067] - [mm] kasan: fix assigning tags twice (Waiman Long) [1887067] - [mm] kasan: mark file common so ftrace doesn't trace it (Waiman Long) [1887067] - [mm] kasan: fix krealloc handling for tag-based mode (Waiman Long) [1887067] - [mm] kasan: make tag based mode work with CONFIG_HARDENED_USERCOPY (Waiman Long) [1887067] - [arm64] kasan, arm64: use ARCH_SLAB_MINALIGN instead of manual aligning (Waiman Long) [1887067] - [mm] kasan: add SPDX-License-Identifier mark to source files (Waiman Long) [1887067] - [documentation] kasan: update documentation (Waiman Long) [1887067] - [arm64] kasan, arm64: select HAVE_ARCH_KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan: add __must_check annotations to kasan hooks (Waiman Long) [1887067] - [mm] kasan, mm, arm64: tag non slab memory allocated via pagealloc (Waiman Long) [1887067] - [arm64] kasan, arm64: add brk handler for inline instrumentation (Waiman Long) [1887067] - [mm] kasan: add hooks implementation for tag-based mode (Waiman Long) [1887067] - [mm] kasan: add bug reporting routines for tag-based mode (Waiman Long) [1887067] - [mm] kasan: split out generic_report.c from report.c (Waiman Long) [1887067] - [mm] kasan, mm: perform untagged pointers comparison in krealloc (Waiman Long) [1887067] - [mm] kasan, arm64: enable top byte ignore for the kernel (Waiman Long) [1887067] - [mm] kasan, arm64: fix up fault handling logic (Waiman Long) [1887067] - [mm] kasan: preassign tags to objects with ctors or SLAB_TYPESAFE_BY_RCU (Waiman Long) [1887067] - [arm64] kasan, arm64: untag address in _virt_addr_is_linear (Waiman Long) [1887067] - [arm64] kasan: add tag related helper functions (Waiman Long) [1887067] - [mm] kasan: initialize shadow to 0xff for tag-based mode (Waiman Long) [1887067] - [mm] kasan: rename kasan_zero_page to kasan_early_shadow_page (Waiman Long) [1887067] - [arm64] kasan, arm64: adjust shadow size for tag-based mode (Waiman Long) [1887067] - [mm] kasan: add CONFIG_KASAN_GENERIC and CONFIG_KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan: rename source files to reflect the new naming scheme (Waiman Long) [1887067] - [mm] kasan: move common generic and tag-based code to common.c (Waiman Long) [1887067] - [mm] kasan, slub: handle pointer tags in early_kmem_cache_node_alloc (Waiman Long) [1887067] - [mm] kasan, mm: change hooks signatures (Waiman Long) [1887067] - [arm64] arm64: kasan: Increase stack size for KASAN_EXTRA (Waiman Long) [1887067] - [s390] s390/cio: add cond_resched() in the slow_eval_known_fn() loop (Claudio Imbrenda) [1885961] - [s390] scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point (Claudio Imbrenda) [1885876] - [tools] selftests/vm/gup_benchmark.c: match gup struct to kernel (Rafael Aquini) [1873952] - [uapi] redhat: Fix the number of KVM_CAP_S390_DIAG318 (Thomas Huth) [1659413] - [s390] setup: diag 318: refactor struct (Thomas Huth) [1659413] - [s390] kvm: diagnose 0x318 sync and reset (Thomas Huth) [1659413] - [mm] swap: reduce lock contention on swap cache from swap slots allocation (Nico Pache) [1839049] - [mm] mm/swapfile.c: use prandom_u32_max() (Nico Pache) [1839049] - [mm] swap: try to scan more free slots even when fragmented (Nico Pache) [1839049] - [mm] mm/swapfile.c: move inode_lock out of claim_swapfile (Nico Pache) [1839049] - [mm] vfs: don't allow writes to swap files (Nico Pache) [1839049] - [mm] mm: set S_SWAPFILE on blockdev swap devices (Nico Pache) [1839049] - [edac] EDAC/ie31200: Add Intel Coffee Lake CPU support (Aristeu Rozanski) [1847567]- [netdrv] macsec: avoid use-after-free in macsec_handle_frame() (Balazs Nemeth) [1890122] - [include] netlink: check for null extack in cookie helpers (Ivan Vecera) [1878274] - [net] ethtool: Don't omit the netlink reply if no features were changed (Ivan Vecera) [1878274] - [net] ethtool: Account for hw_features in netlink interface (Ivan Vecera) [1878274] - [net] ethtool: Fix preserving of wanted feature bits in netlink interface (Ivan Vecera) [1878274] - [net] ethtool: ethnl_set_linkmodes: remove redundant null check (Ivan Vecera) [1878274] - [net] ethtool: fix genlmsg_put() failure handling in ethnl_default_dumpit() (Ivan Vecera) [1878274] - [net] ethtool: add missing string for NETIF_F_GSO_TUNNEL_REMCSUM (Ivan Vecera) [1878274] - [net] ethtool: Fix check in ethtool_rx_flow_rule_create (Ivan Vecera) [1878274] - [net] ethtool: linkinfo: remove an unnecessary NULL check (Ivan Vecera) [1878274] - [net] ethtool: propagate get_coalesce return value (Ivan Vecera) [1878274] - [net] ethtool: don't call set_channels in drivers if config didn't change (Ivan Vecera) [1878274] - [net] ethtool: check if there is at least one channel for TX/RX in the core (Ivan Vecera) [1878274] - [net] drivers: Remove inclusion of vermagic header (Ivan Vecera) [1878274] - [net] ethtool: count header size in reply size estimate (Ivan Vecera) [1878274] - [net] ethtool: provide timestamping information with TSINFO_GET request (Ivan Vecera) [1878274] - [net] ethtool: add timestamping related string sets (Ivan Vecera) [1878274] - [net] ethtool: add EEE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set EEE settings with EEE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide EEE settings with EEE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add PAUSE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set pause parameters with PAUSE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide pause parameters with PAUSE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add COALESCE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set coalescing parameters with COALESCE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide coalescing parameters with COALESCE_GET request (Ivan Vecera) [1878274] - [net] ethtool: fix reference leak in ethnl_set_privflags() (Ivan Vecera) [1878274] - [net] ethtool: fix incorrect tx-checksumming settings reporting (Ivan Vecera) [1878274] - [include] ethtool.h: Replace zero-length array with flexible-array member (Ivan Vecera) [1878274] - [net] ethtool: fix reference leak in some *_SET handlers (Ivan Vecera) [1878274] - [net] ethtool: reject unrecognized request flags (Ivan Vecera) [1878274] - [include] netlink: add nl_set_extack_cookie_u32() (Ivan Vecera) [1878274] - [net] netlink: allow extack cookie also for error messages (Ivan Vecera) [1878274] - [net] ethtool: fix spelling mistake "exceeeds" -> "exceeds" (Ivan Vecera) [1878274] - [net] ethtool: add CHANNELS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device channel counts with CHANNELS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide channel counts with CHANNELS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add RINGS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device ring sizes with RINGS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide ring sizes with RINGS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add PRIVFLAGS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device private flags with PRIVFLAGS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide private flags with PRIVFLAGS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add FEATURES_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set netdev features with FEATURES_SET request (Ivan Vecera) [1878274] - [net] ethtool: add ethnl_parse_bitset() helper (Ivan Vecera) [1878274] - [net] ethtool: provide netdev features with FEATURES_GET request (Ivan Vecera) [1878274] - [net] ethtool: update mapping of features to legacy ioctl requests (Ivan Vecera) [1878274] - [net] ethtool: rename ethnl_parse_header() to ethnl_parse_header_dev_get() (Ivan Vecera) [1878274] - [include] hns: reject unsupported coalescing params (Ivan Vecera) [1878274] - [include] net: liquidio: reject unsupported coalescing params (Ivan Vecera) [1878274] - [net] ethtool: Factored out similar ethtool link settings for virtual devices to core (Ivan Vecera) [1878274] - [net] ethtool: limit bitset size (Ivan Vecera) [1878274] - [net] ethtool: fix application of verbose no_mask bitset (Ivan Vecera) [1878274] - [net] ethtool: Add support for low latency RS FEC (Ivan Vecera) [1878274] - [net] ethtool: add WOL_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set wake-on-lan settings with WOL_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide WoL settings with WOL_GET request (Ivan Vecera) [1878274] - [net] ethtool: add DEBUG_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set message mask with DEBUG_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide message mask with DEBUG_GET request (Ivan Vecera) [1878274] - [net] ethtool: fix kernel-doc descriptions (Ivan Vecera) [1878274] - [net] ethtool: potential NULL dereference in strset_prepare_data() (Ivan Vecera) [1878274] - [net] ethtool: fix ->reply_size() error handling (Ivan Vecera) [1878274] - [net] ethtool: fix a memory leak in ethnl_default_start() (Ivan Vecera) [1878274] - [net] ethtool: remove set but not used variable 'lsettings' (Ivan Vecera) [1878274] - [net] ethtool: provide link state with LINKSTATE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add LINKMODES_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set link modes related data with LINKMODES_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide link mode information with LINKMODES_GET request (Ivan Vecera) [1878274] - [net] ethtool: add LINKINFO_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: add default notification handler (Ivan Vecera) [1878274] - [net] ethtool: set link settings with LINKINFO_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide link settings with LINKINFO_GET request (Ivan Vecera) [1878274] - [net] ethtool: provide string sets with STRSET_GET request (Ivan Vecera) [1878274] - [net] ethtool: default handlers for GET requests (Ivan Vecera) [1878274] - [net] ethtool: support for netlink notifications (Ivan Vecera) [1878274] - [net] ethtool: netlink bitset handling (Ivan Vecera) [1878274] - [net] ethtool: helper functions for netlink interface (Ivan Vecera) [1878274] - [net] ethtool: introduce ethtool netlink interface (Ivan Vecera) [1878274] - [net] ethtool: provide link mode names as a string set (Ivan Vecera) [1878274] - [net] ethtool: move string arrays into common file (Ivan Vecera) [1878274] - [net] ethtool: move RHEL specific stuff to separate header file (Ivan Vecera) [1878274] - [net] ethtool: move to its own directory (Ivan Vecera) [1878274] - [net] rtnetlink: provide permanent hardware address in RTM_NEWLINK (Ivan Vecera) [1878274] - [net] Zeroing the structure ethtool_wolinfo in ethtool_get_wol() (Ivan Vecera) [1878274] - [net] ethtool: Allow parsing ETHER_FLOW types when using flow_rule (Ivan Vecera) [1878274] - [net] ethtool: Allow matching on vlan DEI bit (Ivan Vecera) [1878274] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Ivan Vecera) [1878274] - [include] net: ethtool: Document get_rxfh_context and set_rxfh_context ethtool ops (Ivan Vecera) [1878274] - [include] ethtool: avoid signed-unsigned comparison in ethtool_validate_speed() (Ivan Vecera) [1878274] - [net] ethtool: not call vzalloc for zero sized memory request (Ivan Vecera) [1878274] - [net] ethtool: reduce stack usage with clang (Ivan Vecera) [1878274] - [net] ethtool: Use explicit designated initializers for .cmd (Ivan Vecera) [1878274] - [net] ethtool: remove unnecessary check in ethtool_get_regs() (Ivan Vecera) [1878274] - [include] uapi/ethtool: fix spelling errors (Ivan Vecera) [1878274] - [net] ethtool: fix a missing-check bug (Ivan Vecera) [1878274] - [include] ethtool: Remove trailing semicolon for static inline (Ivan Vecera) [1878274] - [net] ipv6: some fixes for ipv6_dev_find() (Xin Long) [1862458] - [net] tipc: not enable tipc when ipv6 works as a module (Xin Long) [1862458] - [net] tipc: set ub->ifindex for local ipv6 address (Xin Long) [1862458] - [net] ipv6: add ipv6_dev_find() (Xin Long) [1862458] - [powerpc] powerpc/pseries: explicitly reschedule during drmem_lmb list traversal (Steve Best) [1892377] - [scsi] scsi: ibmvscsi: Fix potential race after loss of transport (Steve Best) [1892316] - [mm] mm: fix a race during THP splitting (Rafael Aquini) [1865813 1739593] - [mm] mm, memcg: do not high throttle allocators based on wraparound (Waiman Long) [1873759] - [mm] mm, memcg: throttle allocators based on ancestral memory.high (Waiman Long) [1873759] - [mm] mm, memcg: fix corruption on 64-bit divisor in memory.high throttling (Waiman Long) [1873759] - [mm] mm, memcg: throttle allocators when failing reclaim over memory.high (Waiman Long) [1873759] - [mm] mm, oom: dump stack of victim when reaping failed (Waiman Long) [1873759] - [mm] mm/oom: fix pgtables units mismatch in Killed process message (Waiman Long) [1873759] - [mm] mm, oom: consider present pages for the node size (Waiman Long) [1873759] - [mm] mm/oom_kill.c: fix oom_cpuset_eligible() comment (Waiman Long) [1873759] - [mm] mm/oom: add oom_score_adj and pgtables to Killed process message (Waiman Long) [1873759] - [mm] mm/oom_kill.c: remove redundant OOM score normalization in select_bad_process() (Waiman Long) [1873759] - [fs] oom: decouple mems_allowed from oom_unkillable_task (Waiman Long) [1873759] - [mm] mm, oom: remove redundant task_in_mem_cgroup() check (Waiman Long) [1873759] - [mm] mm, oom: refactor dump_tasks for memcg OOMs (Waiman Long) [1873759] - [mm] mm, oom: describe task memory unit, larger PID pad (Waiman Long) [1873759] - [mm] mm, oom: remove oom_lock from oom_reaper (Waiman Long) [1873759] - [mm] mm/vmscan: remove unused RECLAIM_OFF/RECLAIM_ZONE (Waiman Long) [1873759] - [mm] mm/vmscan: remove prefetch_prev_lru_page (Waiman Long) [1873759] - [mm] mm/vmscan.c: remove unused return value of shrink_node (Waiman Long) [1873759] - [mm] mm/vmscan.c: clean code by removing unnecessary assignment (Waiman Long) [1873759] - [mm] mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG (Waiman Long) [1873759] - [mm] mm/vmscan.c: fix typo in comment (Waiman Long) [1873759] - [mm] mm: vmscan: enforce inactive:active ratio at the reclaim root (Waiman Long) [1873759] - [mm] mm: vmscan: detect file thrashing at the reclaim root (Waiman Long) [1873759] - [mm] mm: vmscan: move file exhaustion detection to the node level (Waiman Long) [1873759] - [include] mm: vmscan: harmonize writeback congestion tracking for nodes & memcgs (Waiman Long) [1873759] - [mm] mm: vmscan: split shrink_node() into node part and memcgs part (Waiman Long) [1873759] - [mm] mm: vmscan: turn shrink_node_memcg() into shrink_lruvec() (Waiman Long) [1873759] - [mm] mm: vmscan: replace shrink_node() loop with a retry jump (Waiman Long) [1873759] - [mm] mm: vmscan: naming fixes: global_reclaim() and sane_reclaim() (Waiman Long) [1873759] - [mm] mm: vmscan: move inactive_list_is_low() swap check to the caller (Waiman Long) [1873759] - [mm] mm: vmscan: simplify lruvec_lru_size() (Waiman Long) [1873759] - [mm] mm/vmscan.c: remove unused scan_control parameter from pageout() (Waiman Long) [1873759] - [mm] mm/vmscan: remove unused lru_pages argument (Waiman Long) [1873759] - [mm] mm: do not allow MADV_PAGEOUT for CoW pages (Waiman Long) [1873759] - [mm] mm: fix trying to reclaim unevictable lru page when calling madvise_pageout (Waiman Long) [1873759] - [mm] mm: factor out common parts between MADV_COLD and MADV_PAGEOUT (Waiman Long) [1873759] - [mm] mm: introduce MADV_PAGEOUT (Waiman Long) [1873759] - [mm] mm: change PAGEREF_RECLAIM_CLEAN with PAGE_REFRECLAIM (Waiman Long) [1873759] - [mm] mm: introduce MADV_COLD (Waiman Long) [1873759] - [mm] mm: thp: don't need care deferred split queue in memcg charge move path (Waiman Long) [1873759] - [mm] mm: thp: make deferred split shrinker memcg aware (Waiman Long) [1873759] - [mm] mm: shrinker: make shrinker not depend on memcg kmem (Waiman Long) [1873759] - [mm] mm: move mem_cgroup_uncharge out of __page_cache_release() (Waiman Long) [1873759] - [mm] mm: thp: extract split_queue_* into a struct (Waiman Long) [1873759] - [mm] mm/page_alloc.c: move ifdefery out of free_area_init_core (Waiman Long) [1873759] - [mm] mm, memcg: do not set reclaim_state on soft limit reclaim (Waiman Long) [1873759] - [mm] mm, vmscan: do not special-case slab reclaim when watermarks are boosted (Waiman Long) [1873759] - [mm] mm/vmscan.c: add checks for incorrect handling of current->reclaim_state (Waiman Long) [1873759] - [mm] mm/vmscan.c: calculate reclaimed slab caches in all reclaim paths (Waiman Long) [1873759] - [mm] mm/vmscan.c: add a new member reclaim_state in struct shrink_control (Waiman Long) [1873759] - [mm] mm: vmscan: remove double slab pressure by inc'ing sc->nr_scanned (Waiman Long) [1873759] - [mm] mm: limit boost_watermark on small zones (Waiman Long) [1873759] - [mm] mm: do not boost watermarks to avoid fragmentation for the DISCONTIG memory model (Waiman Long) [1873759] - [mm] mm, page_alloc: fix a division by zero error when boosting watermarks v2 (Waiman Long) [1873759] - [mm] mm, page_alloc: do not wake kswapd with zone lock held (Waiman Long) [1873759] - [mm] mm/page_alloc.c: drop uneeded __meminit and __meminitdata (Waiman Long) [1873759] - [mm] mm/page_alloc.c: fix never set ALLOC_NOFRAGMENT flag (Waiman Long) [1873759] - [mm] mm/page_alloc.c: avoid potential NULL pointer dereference (Waiman Long) [1873759] - [mm] mm/vmscan.c: don't disable irq again when count pgrefill for memcg (Waiman Long) [1873759] - [mm] mm/vmscan: drop may_writepage and classzone_idx from direct reclaim begin template (Waiman Long) [1873759] - [mm] mm/vmscan: add tracepoints for node reclaim (Waiman Long) [1873759] - [mm] mm: generalize putback scan functions (Waiman Long) [1873759] - [mm] mm: remove pages_to_free argument of move_active_pages_to_lru() (Waiman Long) [1873759] - [mm] mm/workingset: remove unused @mapping argument in workingset_eviction() (Waiman Long) [1873759] - [mm] Revert "mm: slowly shrink slabs with a relatively small number of objects" (Waiman Long) [1873759] - [mm] mm: reclaim small amounts of memory when an external fragmentation event occurs (Waiman Long) [1873759] - [mm] mm: use alloc_flags to record if kswapd can wake (Waiman Long) [1873759] - [mm] mm: move zone watermark accesses behind an accessor (Waiman Long) [1873759] - [mm] mm, page_alloc: spread allocations across zones before introducing fragmentation (Waiman Long) [1873759] - [mm] mm: Convert delete_from_swap_cache to XArray (Waiman Long) [1873759] - [fs] mm: zero-seek shrinkers (Waiman Long) [1873759] - [mm] mm/vmscan.c: fix int overflow in callers of do_shrink_slab() (Waiman Long) [1873759] - [mm] mm: slowly shrink slabs with a relatively small number of objects (Waiman Long) [1873759] - [mm] mm: fix page_freeze_refs and page_unfreeze_refs in comments (Waiman Long) [1873759] - [mm] mm: check shrinker is memcg-aware in register_shrinker_prepared() (Waiman Long) [1873759] - [mm] mm: use special value SHRINKER_REGISTERING instead of list_empty() check (Waiman Long) [1873759] - [mm] mm/vmscan.c: move check for SHRINKER_NUMA_AWARE to do_shrink_slab() (Waiman Long) [1873759] - [mm] mm/vmscan.c: condense scan_control (Waiman Long) [1873759] - [arch] asm-generic/tlb: add missing CONFIG symbol (Waiman Long) [1873759] - [include] asm-gemeric/tlb: remove stray function declarations (Waiman Long) [1873759] - [x86] x86/ldt: Remove unused variable in map_ldt_struct() (Waiman Long) [1873759] - [x86] x86/ldt: Unmap PTEs for the slot before freeing LDT pages (Waiman Long) [1873759] - [x86] x86/mm/tlb: Add freed_tables argument to flush_tlb_mm_range (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove tlb_table_flush() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove tlb_flush_mmu_free() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove CONFIG_HAVE_GENERIC_MMU_GATHER (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove arch_tlb*_mmu() (Waiman Long) [1873759] - [s390] s390/tlb: Convert to generic mmu_gather (Waiman Long) [1873759] - [mm] asm-generic/tlb: Introduce CONFIG_HAVE_MMU_GATHER_NO_GATHER=y (Waiman Long) [1873759] - [include] asm-generic/tlb, ia64: Conditionally provide tlb_migrate_finish() (Waiman Long) [1873759] - [include] asm-generic/tlb: Provide generic tlb_flush() based on flush_tlb_mm() (Waiman Long) [1873759] - [arm64] asm-generic/tlb, arch: Provide generic tlb_flush() based on flush_tlb_range() (Waiman Long) [1873759] - [mm] asm-generic/tlb, arch: Provide CONFIG_HAVE_MMU_GATHER_PAGE_SIZE (Waiman Long) [1873759] - [include] asm-generic/tlb: Provide a comment (Waiman Long) [1873759] - [mm] mm/memory: Move mmu_gather and TLB invalidation code into its own file (Waiman Long) [1873759] - [x86] x86/mm: Page size aware flush_tlb_mm_range() (Waiman Long) [1873759] - [x86] x86/ldt: Split out sanity check in map_ldt_struct() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Track which levels of the page tables have been cleared (Waiman Long) [1873759] - [include] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather (Waiman Long) [1873759] - [mm] mm/cow: don't bother write protecting already write-protected pages (Waiman Long) [1873759] - [powerpc] mm/mmu_gather: invalidate TLB correctly on batch allocation failure and flush (Diego Domingos) [1805031] - [powerpc] powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case (Diego Domingos) [1805031] - [fs] cifs: smb1: Try failing back to SetFileInfo if SetPathInfo fails (Leif Sahlberg) [1857038]- [scsi] scsi: libfc: Fix passing zero to 'PTR_ERR' warning (Chris Leech) [1849542] - [scsi] scsi: libfc: Fix for double free() (Chris Leech) [1849542] - [scsi] scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases (Chris Leech) [1849542] - [scsi] scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() (Chris Leech) [1849542] - [scsi] scsi: fcoe: Use eth_zero_addr() to clear mac address (Chris Leech) [1849542] - [scsi] scsi: libfc: Provide missing and repair existing function documentation (Chris Leech) [1849542] - [scsi] scsi: libfc: Fix a couple of misdocumented function parameters (Chris Leech) [1849542] - [scsi] scsi: libfc: Repair function parameter documentation (Chris Leech) [1849542] - [scsi] scsi: fcoe: Correct some kernel-doc issues (Chris Leech) [1849542] - [scsi] scsi: fcoe: Fix a myriad of documentation issues (Chris Leech) [1849542] - [scsi] scsi: fcoe: Fix various kernel-doc infringements (Chris Leech) [1849542] - [scsi] scsi: libfc: trivial: Fix spelling mistake of 'discovery' (Chris Leech) [1849542] - [scsi] scsi: libfc: Supply some missing kerneldoc struct/function attributes/params (Chris Leech) [1849542] - [scsi] scsi: libfc: fc_disc: Fix-up some incorrectly referenced function parameters (Chris Leech) [1849542] - [scsi] scsi: libfc: Skip additional kref updating work event (Chris Leech) [1849542] - [scsi] scsi: libfc: Handling of extra kref (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove unneeded semicolon in fcoe.c (Chris Leech) [1849542] - [scsi] scsi: libfc: rport state move to PLOGI if all PRLI retry exhausted (Chris Leech) [1849542] - [scsi] scsi: libfc: If PRLI rejected, move rport to PLOGI state (Chris Leech) [1849542] - [scsi] scsi: libfc: free response frame from GPN_ID (Chris Leech) [1849542] - [scsi] scsi: fcoe: fix null-ptr-deref Read in fc_release_transport (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove redundant call to skb_transport_header (Chris Leech) [1849542] - [scsi] scsi: fcoe: pass in fcoe_rport structure instead of fc_rport_priv (Chris Leech) [1849542] - [scsi] scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure (Chris Leech) [1849542] - [scsi] scsi: libfc: Whitespace cleanup in libfc.h (Chris Leech) [1849542] - [scsi] scsi: fcoe: fix a typo (Chris Leech) [1849542] - [scsi] scsi: libfc: fix null pointer dereference on a null lport (Chris Leech) [1849542] - [scsi] scsi: libfcoe: switch to SPDX tags (Chris Leech) [1849542] - [scsi] scsi: libfc: switch to SPDX tags (Chris Leech) [1849542] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove unneeded fcoe_ctlr_destroy_store export (Chris Leech) [1849542] - [scsi] scsi: fcoe: convert to use BUS_ATTR_WO (Chris Leech) [1849542] - [scsi] scsi: libfc: free skb when receiving invalid flogi resp (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove set but not used variable 'port' (Chris Leech) [1849542] - [scsi] scsi: libfc: fc_rport: Mark expected switch fall-through (Chris Leech) [1849542] - [scsi] scsi: libfc: Remove set but not used variable 'disc' (Chris Leech) [1849542] - [scsi] scsi: libfc: remove set but not used variable 'rpriv' (Chris Leech) [1849542] - [scsi] scsi: libfc: remove unnecessary condition check (Chris Leech) [1849542] - [scsi] scsi: fcoe: hold disc_mutex when traversing rport lists (Chris Leech) [1849542] - [net] netfilter: nftables: allow re-computing sctp CRC-32C in 'payload' statements (Davide Caratti) [1741052] - [fs] nfsd4: fix NULL dereference in nfsd/clients display code (Scott Mayhew) [1872311] - [fs] nfsd: Fix old-style function definition (Scott Mayhew) [1872311] - [fs] nfsd: clients don't need to break their own delegations (Scott Mayhew) [1872311] - [kernel] kthread: save thread function (Scott Mayhew) [1872311] - [fs] locks: Add trace_leases_conflict (Scott Mayhew) [1872311] - [fs] SUNRPC reverting d03727b248d0 ("NFSv4 fix CLOSE not waiting for direct IO compeletion") (Scott Mayhew) [1872311] - [fs] NFS: Fix interrupted slots by sending a solo SEQUENCE operation (Scott Mayhew) [1872311] - [net] SUNRPC: Add missing definition of ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE (Scott Mayhew) [1872311] - [fs] NFSv4 fix CLOSE not waiting for direct IO compeletion (Scott Mayhew) [1872311] - [fs] nfs: Fix memory leak of export_path (Scott Mayhew) [1872311] - [net] sunrpc: fixed rollback in rpc_gssd_dummy_populate() (Scott Mayhew) [1872311] - [net] xprtrdma: Clean up disconnect (Scott Mayhew) [1872311] - [fs] nfsd: apply umask on fs without ACL support (Scott Mayhew) [1872311] - [fs] NFS: Fix direct WRITE throughput regression (Scott Mayhew) [1872311] - [trace] SUNRPC: rpc_xprt lifetime events should record xprt->state (Scott Mayhew) [1872311] - [fs] nfs: set invalid blocks after NFSv4 writes (Scott Mayhew) [1872311] - [fs] NFS: remove redundant initialization of variable result (Scott Mayhew) [1872311] - [fs] NFS: Add a tracepoint in nfs_set_pgio_error() (Scott Mayhew) [1872311] - [fs] NFS: Trace short NFS READs (Scott Mayhew) [1872311] - [fs] NFS: nfs_xdr_status should record the procedure name (Scott Mayhew) [1872311] - [net] SUNRPC: Set SOFTCONN when destroying GSS contexts (Scott Mayhew) [1872311] - [net] SUNRPC: rpc_call_null_helper() should set RPC_TASK_SOFT (Scott Mayhew) [1872311] - [net] SUNRPC: rpc_call_null_helper() already sets RPC_TASK_NULLCREDS (Scott Mayhew) [1872311] - [net] SUNRPC: trace RPC client lifetime events (Scott Mayhew) [1872311] - [net] SUNRPC: Trace transport lifetime events (Scott Mayhew) [1872311] - [net] SUNRPC: Split the xdr_buf event class (Scott Mayhew) [1872311] - [net] SUNRPC: Add tracepoint to rpc_call_rpcerror() (Scott Mayhew) [1872311] - [trace] SUNRPC: Update the RPC_SHOW_SOCKET() macro (Scott Mayhew) [1872311] - [trace] SUNRPC: Update the rpc_show_task_flags() macro (Scott Mayhew) [1872311] - [net] SUNRPC: Trace GSS context lifetimes (Scott Mayhew) [1872311] - [net] SUNRPC: receive buffer size estimation values almost never change (Scott Mayhew) [1872311] - [net] sunrpc: use kmemdup_nul() in gssp_stringify() (Scott Mayhew) [1872311] - [fs] nfsd: safer handling of corrupted c_type (Scott Mayhew) [1872311] - [fs] mm/writeback: discard NR_UNSTABLE_NFS, use NR_WRITEBACK instead (Scott Mayhew) [1872311] - [mm] mm/writeback: replace PF_LESS_THROTTLE with PF_LOCAL_THROTTLE (Scott Mayhew) [1872311] - [net] SUNRPC: Remove unreachable error condition in rpcb_getport_async() (Scott Mayhew) [1872311] - [fs] nfsd: Fix svc_xprt refcnt leak when setup callback client failed (Scott Mayhew) [1872311] - [net] sunrpc: check that domain table is empty at module unload (Scott Mayhew) [1872311] - [fs] NFS: remove duplicate headers (Scott Mayhew) [1872311] - [fs] NFSv4.1 fix rpc_call_done assignment for BIND_CONN_TO_SESSION (Scott Mayhew) [1872311] - [fs] NFS: Use the correct style for SPDX License Identifier (Scott Mayhew) [1872311] - [net] net: sunrpc: Fix off-by-one issues in 'rpc_ntop6' (Scott Mayhew) [1872311] - [fs] NFS: move dprintk after nfs_alloc_fattr in nfs3_proc_lookup (Scott Mayhew) [1872311] - [fs] NFSD: Fix improperly-formatted Doxygen comments (Scott Mayhew) [1872311] - [fs] NFSD: Squash an annoying compiler warning (Scott Mayhew) [1872311] - [net] SUNRPC: Clean up request deferral tracepoints (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints for monitoring NFSD callbacks (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints to the NFSD state management code (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints to NFSD's duplicate reply cache (Scott Mayhew) [1872311] - [trace] SUNRPC: svc_show_status() macro should have enum definitions (Scott Mayhew) [1872311] - [net] SUNRPC: Restructure svc_udp_recvfrom() (Scott Mayhew) [1872311] - [net] SUNRPC: Refactor svc_recvfrom() (Scott Mayhew) [1872311] - [net] SUNRPC: Clean up svc_release_skb() functions (Scott Mayhew) [1872311] - [net] SUNRPC: Refactor recvfrom path dealing with incomplete TCP receives (Scott Mayhew) [1872311] - [net] SUNRPC: Replace dprintk() call sites in TCP receive path (Scott Mayhew) [1872311] - [net] SUNRPC: Restructure svc_tcp_recv_record() (Scott Mayhew) [1872311] - [net] SUNRPC: Rename svc_sock::sk_reclen (Scott Mayhew) [1872311] - [net] SUNRPC: Trace server-side rpcbind registration events (Scott Mayhew) [1872311] - [net] SUNRPC: Replace dprintk call sites in TCP state change callouts (Scott Mayhew) [1872311] - [net] SUNRPC: Add more svcsock tracepoints (Scott Mayhew) [1872311] - [net] SUNRPC: Remove "#include " (Scott Mayhew) [1872311] - [net] SUNRPC: Trace a few more generic svc_xprt events (Scott Mayhew) [1872311] - [net] SUNRPC: Tracepoint to record errors in svc_xpo_create() (Scott Mayhew) [1872311] - [trace] SUNRPC: Remove kernel memory address from svc_xprt tracepoints (Scott Mayhew) [1872311] - [net] svcrdma: Add tracepoints to report ->xpo_accept failures (Scott Mayhew) [1872311] - [net] svcrdma: Displayed remote IP address should match stored address (Scott Mayhew) [1872311] - [include] svcrdma: Remove the SVCRDMA_DEBUG macro (Scott Mayhew) [1872311] - [net] svcrdma: Rename tracepoints that record header decoding errors (Scott Mayhew) [1872311] - [net] svcrdma: Remove backchannel dprintk call sites (Scott Mayhew) [1872311] - [net] SUNRPC: Move xpt_mutex into socket xpo_sendto methods (Scott Mayhew) [1872311] - [net] sunrpc: add missing newline when printing parameter 'pool_mode' by sysfs (Scott Mayhew) [1872311] - [net] sunrpc: Remove unused function ip_map_update (Scott Mayhew) [1872311] - [fs] nfsd: handle repeated BIND_CONN_TO_SESSION (Scott Mayhew) [1872311] - [net] ip_tunnel_core: Fix build for archs without _HAVE_ARCH_IPV6_CSUM (Aaron Conole) [1849736] - [tools] selftests: pmtu.sh: Add tests for UDP tunnels handled by Open vSwitch (Aaron Conole) [1849736] - [tools] selftests: pmtu.sh: Add tests for bridged UDP tunnels (Aaron Conole) [1849736] - [net] geneve: Support for PMTU discovery on directly bridged links (Aaron Conole) [1849736] - [net] vxlan: Support for PMTU discovery on directly bridged links (Aaron Conole) [1849736] - [net] tunnels: PMTU discovery support for directly bridged IP packets (Aaron Conole) [1849736] - [net] ipv4: route: Ignore output interface in FIB lookup for PMTU route (Aaron Conole) [1849736] - [infiniband] RDMA/core: Free DIM memory in error unwind (Kamal Heib) [1857602] - [infiniband] RDMA/core: Stop DIM before destroying CQ (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Add min length checks to user structure copies (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Protect access to remote_sidr_table (Kamal Heib) [1857602] - [infiniband] RDMA/core: Fix race in rdma_alloc_commit_uobject() (Kamal Heib) [1857602] - [net] xprtrdma: fix incorrect header size calculations (Kamal Heib) [1857602] - [net] xprtrdma: Fix handling of connect errors (Kamal Heib) [1857602] - [net] xprtrdma: Fix return code from rpcrdma_xprt_connect() (Kamal Heib) [1857602] - [net] xprtrdma: Fix recursion into rpcrdma_xprt_disconnect() (Kamal Heib) [1857602] - [net] xprtrdma: Fix double-free in rpcrdma_ep_create() (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Fix reporting vendor_part_id (Kamal Heib) [1857602] - [infiniband] IB/sa: Resolv use-after-free in ib_nl_make_request() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add explicit cast OPA_MTU_8192 to 'enum ib_mtu' (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add atomic triggered sleep/wakeup (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Correct -EBUSY handling in tx code (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Restore kfree in dummy_netdev cleanup (Kamal Heib) [1857602] - [infiniband] IB/mad: Fix use after free when destroying MAD agent (Kamal Heib) [1857602] - [infiniband] RDMA/counter: Query a counter before release (Kamal Heib) [1857602] - [net] xprtrdma: Fix handling of RDMA_ERROR replies (Kamal Heib) [1857602] - [net] xprtrdma: Clean up synopsis of rpcrdma_flush_disconnect() (Kamal Heib) [1857602] - [net] xprtrdma: Use re_connect_status safely in rpcrdma_xprt_connect() (Kamal Heib) [1857602] - [net] xprtrdma: Prevent dereferencing r_xprt->rx_ep after it is freed (Kamal Heib) [1857602] - [infiniband] RDMA/mad: Fix possible memory leak in ib_mad_post_receive_mads() (Kamal Heib) [1857602] - [infiniband] RDMA/core: Check that type_attrs is not NULL prior access (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Protect bind_list and listen_list while finding matching cm id (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Set maximum pkeys device attribute (Kamal Heib) [1857602] - [infiniband] RDMA/rvt: Fix potential memory leak caused by rvt_alloc_rq (Kamal Heib) [1857602] - [infiniband] RDMA/core: Annotate CMA unlock helper routine (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Fix pointer-to-int-cast warning in siw_rx_pbl() (Kamal Heib) [1857602] - [infiniband] RDMA/hfi1: Fix trivial mis-spelling of 'descriptor' (Kamal Heib) [1857602] - [net] xprtrdma: Make xprt_rdma_slot_table_entries static (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Spurious WARNING triggered in cm_destroy_id() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Use free_netdev() in hfi1_netdev_free() (Kamal Heib) [1857602] - [infiniband] RDMA/core: Move and rename trace_cm_id_create() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Fix hfi1_netdev_rx_init() error handling (Kamal Heib) [1857602] - [infiniband] RDMA: Remove 'max_map_per_fmr' (Kamal Heib) [1857602] - [infiniband] RDMA: Remove 'max_fmr' (Kamal Heib) [1857602] - [net] RDMA/rds: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/core: Remove FMR device ops (Kamal Heib) [1857602] - [infiniband] RDMA/rdmavt: Remove FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/mthca: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/mlx4: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/i40iw: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/bnxt_re: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/mlx5: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/core: Remove FMR pool API (Kamal Heib) [1857602] - [infiniband] RDMA/srp: Remove support for FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/iser: Remove support for FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/core: Fix several reference count leaks (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Fix spelling mistake "enought" -> "enough" (Kamal Heib) [1857602] - [rdma] RDMA/core: Use offsetofend() instead of open coding (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Increase max_send_sge (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Reduce max_recv_sge to 1 (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Make debug output more detailed (Kamal Heib) [1857602] - [infiniband] RDMA/srp: Make the channel count configurable per target (Kamal Heib) [1857602] - [infiniband] hfi1: get rid of pointless access_ok() (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Provide ECE reject reason (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Connect ECE to rdma_accept (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Send and receive ECE parameter over the wire (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Deliver ECE parameters through UCMA events (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Extend ucma_connect to receive ECE parameters (Kamal Heib) [1857602] - [rdma] RDMA/cm: Add Enhanced Connection Establishment (ECE) bits (Kamal Heib) [1857602] - [infiniband] RDMA/core: Use sizeof_field() helper (Kamal Heib) [1857602] - [infiniband] RDMA/ipoib: Remove can_sleep parameter from iboib_mcast_alloc (Kamal Heib) [1857602] - [infiniband] IB/cma: Fix ports memory leak in cma_configfs (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy QP commands over ioctl (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy WQ commands over ioctl (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy SRQ commands over ioctl (Kamal Heib) [1857602] - [rdma] IB/uverbs: Move QP, SRQ, WQ type and flags to UAPI (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Extend CQ to get its own asynchronous event FD (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Refactor related objects to use their own asynchronous event FD (Kamal Heib) [1857602] - [infiniband] RDMA/core: Allow the ioctl layer to abort a fully created uobject (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Expose UAR object and its alloc/destroy commands (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Fix a NULL vs IS_ERR() check (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Introduce UAPIs to manage packet pacing (Kamal Heib) [1857602] - [netdrv] net/mlx5: Expose raw packet pacing APIs (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Enable the transmit side of the datagram ipoib netdev (Kamal Heib) [1857602] - [infiniband] IB/ipoib: Add capability to switch between datagram and connected mode (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add packet histogram trace event (Kamal Heib) [1857602] - [infiniband] IB/{hfi1, ipoib, rdma}: Broadcast ping sent packets which exceeded mtu size (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Activate the dummy netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add rx functions for dummy netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add interrupt handler functions for accelerated ipoib (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add functions to receive accelerated ipoib packets (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Rename num_vnic_contexts as num_netdev_contexts (Kamal Heib) [1857602] - [infiniband] IB/ipoib: Increase ipoib Datagram mode MTU's upper limit (Kamal Heib) [1857602] - [infiniband] IB/hfi1: RSM rules for AIP (Kamal Heib) [1857602] - [infiniband] IB/{rdmavt, hfi1}: Implement creation of accelerated UD QPs (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Remove module parameter for KDETH qpns (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add the transmit side of a datagram ipoib RDMA netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add functions to transmit datagram ipoib packets (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add accelerated IP capability bit (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Report host information to the device (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Fix setting of wrong bit in get/set_feature commands (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Replace one-element array and use struct_size() helper (Kamal Heib) [1857602] - [net] svcrdma: Fix backchannel return code (Kamal Heib) [1857602] - [net] svcrdma: trace undersized Write chunks (Kamal Heib) [1857602] - [net] svcrdma: Trace page overruns when constructing RDMA Reads (Kamal Heib) [1857602] - [net] svcrdma: Clean up handling of get_rw_ctx errors (Kamal Heib) [1857602] - [net] svcrdma: Clean up the tracing for rw_ctx_init errors (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Add a newline when printing parameter 'srpt_service_guid' by sysfs (Kamal Heib) [1857602] - [infiniband] RDMA/core: Consolidate ib_create_srq flows (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Fix create WQ to use the given user handle (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Cleanup wq/srq context usage from uverbs layer (Kamal Heib) [1857602] - [rdma] IB/rdmavt: Replace zero-length array with flexible-array (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Increment the refcount inside cm_find_listen() (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove needless cm_id variable (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove the cm_free_id() wrapper function (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Make find_remote_id() return a cm_id_private (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Add a note explaining how the timewait is eventually freed (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Pass the cm_id_private into cm_cleanup_timewait (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Pull duplicated code into cm_queue_work_unlock() (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove unused store to ret in cm_rej_handler (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove return code from add_cm_id_to_port_list (Kamal Heib) [1857602] - [infiniband] RDMA/addr: Mark addr_resolve as might_sleep() (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Return stable IB device index as identifier (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Initialize the flow label of CM's route path record (Kamal Heib) [1857602] - [infiniband] RDMA/core: Consider flow label when building skb (Kamal Heib) [1857602] - [rdma] RDMA/core: Add hash functions to calculate RoCEv2 flowlabel and UDP source port (Kamal Heib) [1857602] - [infiniband] RDMA: Allow ib_client's to fail when add() is called (Kamal Heib) [1857602] - [infiniband] RDMA/mad: Remove snoop interface (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Count admin commands errors (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Count mmap failures (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Report create CQ error counter (Kamal Heib) [1857602] - [infiniband] RDMA/core: Get xmit slave for LAG (Kamal Heib) [1857602] - [infiniband] RDMA/core: Add LAG functionality (Kamal Heib) [1857602] - [infiniband] RDMA: Group create AH arguments in struct (Kamal Heib) [1857602] - [infiniband] RDMA/rw: use DIV_ROUND_UP to calculate nr_ops (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Limit the scope of rdma_is_consumer_reject function (Kamal Heib) [1857602] - [infiniband] IB: Fix some documentation warnings (Kamal Heib) [1857602] - [infiniband] RDMA: Remove a few extra calls to ib_get_client_data() (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Make the event_queue fds return POLLERR when disassociated (Kamal Heib) [1857602] - [infiniband] RDMA/rxe: Set default vendor ID (Kamal Heib) [1857602] - [netdrv] bonding: Use fallthrough pseudo-keyword (Jarod Wilson) [1860495] - [netdrv] bonding: fix active-backup failover for current ARP slave (Jarod Wilson) [1860495] - [netdrv] bonding: fix a potential double-unregister (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_alb: Describe alb_handle_addr_collision_on_attach()'s 'bond' and 'addr' params (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_main: Document 'proto' and rename 'new_active' parameters (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_3ad: Fix a bunch of kerneldoc parameter issues (Jarod Wilson) [1860495] - [netdrv] bonding: show saner speed for broadcast mode (Jarod Wilson) [1868265 1860495] - [netdrv] bonding: check return value of register_netdevice() in bond_newlink() (Jarod Wilson) [1860495] - [netdrv] bonding: check error value of register_netdevice() immediately (Jarod Wilson) [1860495] - [netdrv] bonding: don't need RTNL for ipsec helpers (Jarod Wilson) [1860495] - [netdrv] bonding: deal with xfrm state in all modes and add more error-checking (Jarod Wilson) [1860495] - [netdrv] bonding: allow xfrm offload setup post-module-load (Jarod Wilson) [1860495] - [netdrv] bonding: Remove extraneous parentheses in bond_setup (Jarod Wilson) [1860495] - [netdrv] bonding/xfrm: use real_dev instead of slave_dev (Jarod Wilson) [1860495] - [netdrv] bonding: support hardware encryption offload to slaves (Jarod Wilson) [1860495] - [netdrv] mlx5: become aware of when running as a bonding slave (Jarod Wilson) [1860495] - [netdrv] ixgbe_ipsec: become aware of when running as a bonding slave (Jarod Wilson) [1860495] - [net] xfrm: bail early on slave pass over skb (Jarod Wilson) [1860495] - [netdrv] bonding: Fix reference count leak in bond_sysfs_slave_add (Jarod Wilson) [1860495] - [netdrv] bonding: propagate transmit status (Jarod Wilson) [1860495] - [netdrv] bonding: remove useless stats_lock_key (Jarod Wilson) [1860495] - [netdrv] bonding: Implement ndo_get_xmit_slave (Jarod Wilson) [1860495] - [netdrv] bonding: Add array of all slaves (Jarod Wilson) [1860495] - [netdrv] bonding: Add function to get the xmit slave in active-backup mode (Jarod Wilson) [1860495] - [netdrv] bonding: Add helper function to get the xmit slave in rr mode (Jarod Wilson) [1860495] - [netdrv] bonding: Add helper function to get the xmit slave based on hash (Jarod Wilson) [1860495] - [netdrv] bonding/alb: Add helper functions to get the xmit slave (Jarod Wilson) [1860495] - [netdrv] bonding: Rename slave_arr to usable_slaves (Jarod Wilson) [1860495] - [netdrv] bonding: Export skip slave logic to function (Jarod Wilson) [1860495] - [netdrv] bonding: Remove inclusion of vermagic header (Jarod Wilson) [1860495] - [netdrv] net/bond: Delete driver and module versions (Jarod Wilson) [1860495]- [mm] powerpc/book3s64/radix: Fix boot failure with large amount of guest memory (Steve Best) [1854543] - [powerpc] powerpc/book3s64/radix: Add kernel command line option to disable radix GTSE (Steve Best) [1854543] - [powerpc] powerpc/prom: Enable Radix GTSE in cpu pa-features (Steve Best) [1854543] - [powerpc] powerpc/mm/book3s64/radix: Off-load TLB invalidations to host when !GTSE (Steve Best) [1854543] - [powerpc] powerpc/pseries: H_REGISTER_PROC_TBL should ask for GTSE only if enabled (Steve Best) [1854543] - [powerpc] powerpc/mm: Enable radix GTSE only if supported (Steve Best) [1854543] - [misc] powerpc/64s/radix: introduce options to disable use of the tlbie instruction (Steve Best) [1854543] - [mm] powerpc/64s: remove unnecessary translation cache flushes at boot (Steve Best) [1854543] - [mm] powerpc/64s/pseries: radix flush translations before MMU is enabled at boot (Steve Best) [1854543] - [mm] powerpc/64s: make mmu_partition_table_set_entry TLB flush optional (Steve Best) [1854543] - [mm] powerpc/64s/radix: tidy up TLB flushing code (Steve Best) [1854543] - [mm] powerpc/64s: remove register_process_table callback (Steve Best) [1854543] - [mm] powerpc/mm: Limit resize_hpt_for_hotplug() call to hash guests only (Steve Best) [1854543] - [powerpc] powerpc/mm/radix: Create separate mappings for hot-plugged memory (Steve Best) [1854543] - [mm] powerpc/mm/radix: Remove split_kernel_mapping() (Steve Best) [1854543] - [mm] powerpc/mm/radix: Free PUD table when freeing pagetable (Steve Best) [1854543] - [mm] powerpc/mm/radix: Fix PTE/PMD fragment count for early page table mappings (Steve Best) [1854543] - [mm] powerpc/64s: Fix page table fragment refcount race vs speculative references (Steve Best) [1854543] - [powerpc] powerpc/security: Fix link stack flush instruction (Gustavo Duarte) [1862103] - [powerpc] powerpc/pseries: add new branch prediction security bits for link stack (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: Allow for processors that flush the link stack using the special bcctr (Gustavo Duarte) [1862103] - [powerpc] powerpc/64s: Move branch cache flushing bcctr variant to ppc-ops.h (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: split branch cache flush toggle from code patching (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: make display of branch cache flush more consistent (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: change link stack flush state to the flush type enum (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: re-name count cache flush to branch cache flush (Gustavo Duarte) [1862103] - [kernel] smp: Remove superfluous cond_func check in smp_call_function_many_cond() (Prarit Bhargava) [1882551] - [kernel] smp: Remove allocation mask from on_each_cpu_cond.*() (Prarit Bhargava) [1882551] - [kernel] smp: Add a smp_cond_func_t argument to smp_call_function_many() (Prarit Bhargava) [1882551] - [kernel] smp: Use smp_cond_func_t as type for the conditional function (Prarit Bhargava) [1882551] - [kernel] smp, cpumask: introduce on_each_cpu_cond_mask (Prarit Bhargava) [1882551] - [kernel] smp: use __cpumask_set_cpu in on_each_cpu_cond (Prarit Bhargava) [1882551] - [pci] PCI: Add support for root bus sizing (Myron Stowe) [1886036] - [drm] PCI: Use ioremap(), not phys_to_virt() for platform ROM (Myron Stowe) [1886036] - [pci] PCI: Avoid ASMedia XHCI USB PME# from D0 defect (Myron Stowe) [1886036] - [pci] PCI/ACPI: Move pcie_to_hpx3_typefrom stack to static data (Myron Stowe) [1886036] - [documentation] Documentation: PCI: Add background on Boot Interrupts (Myron Stowe) [1886036] - [pci] PCI: Add boot interrupt quirk mechanism for Xeon chipsets (Myron Stowe) [1886036] - [pci] PCI: Add PCIE_LNKCAP2_SLS2SPEED() macro (Myron Stowe) [1886036] - [pci] PCI: Use pci_speed_string() for all PCI/PCI-X/PCIe strings (Myron Stowe) [1886036] - [pci] PCI: Add pci_speed_string() (Myron Stowe) [1886036] - [pci] PCI: Add 32 GT/s decoding in some macros (Myron Stowe) [1886036] - [powerpc] powerpc/test_emulate_step: Move extern declaration to sstep.h (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/sstep: Introduce macros to retrieve Prefix instruction operands (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/test_emulate_step: Add negative tests for prefixed addi (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/test_emulate_step: Enhancement to test negative scenarios (Desnes Augusto Nunes do Rosario) [1854542] - [netdrv] drivers/net/ibmvnic: Update VNIC protocol version reporting (Steve Best) [1882269] - [s390] s390/zcrypt: fix kmalloc 256k failure (Claudio Imbrenda) [1885963] - [x86] crypto: x86/aesni-gcm - fix crash on empty plaintext (Herbert Xu) [1882868] - [x86] crypto: x86/aesni-gcm - make 'struct aesni_gcm_tfm_s' static const (Herbert Xu) [1882868] - [x86] crypto: aesni - Add scatter/gather avx stubs, and use them in C (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce partial block macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce READ_PARTIAL_BLOCK macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Move ghash_mul to GCM_COMPLETE (Herbert Xu) [1882868] - [x86] crypto: aesni - Fill in new context data structures (Herbert Xu) [1882868] - [x86] crypto: aesni - Merge avx precompute functions (Herbert Xu) [1882868] - [x86] crypto: aesni - Split AAD hash calculation to separate macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Add GCM_COMPLETE macro (Herbert Xu) [1882868] - [x86] crypto: aesni - support 256 byte keys in avx asm (Herbert Xu) [1882868] - [x86] crypto: aesni - Macro-ify func save/restore (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce gcm_context_data (Herbert Xu) [1882868] - [x86] crypto: aesni - Merge GCM_ENC_DEC (Herbert Xu) [1882868] - [pci] PCI: Add DMA alias quirk for PLX PEX NTB (Myron Stowe) [1884657] - [pci] PCI: Add nr_devfns parameter to pci_add_dma_alias() (Myron Stowe) [1884657] - [pci] PCI: Fix pci_add_dma_alias() bitmask size (Myron Stowe) [1884657] - [pci] PCI/IOV: Fix memory leak in pci_iov_add_virtfn() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 device IDs (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 MRPC GAS access permission check (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 flash information interface support (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 system info register support (Myron Stowe) [1884657] - [pci] PCI/switchtec: Separate Gen3 register structures into unions (Myron Stowe) [1884657] - [pci] PCI/switchtec: Factor out Gen3 ioctl_flash_part_info() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add 'generation' variable (Myron Stowe) [1884657] - [pci] PCI/switchtec: Rename generation-specific constants (Myron Stowe) [1884657] - [pci] PCI/switchtec: Move check event ID from mask_event() to switchtec_event_isr() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Remove redundant valid PFF number count (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add support for Intercomm Notify and Upstream Error Containment (Myron Stowe) [1884657] - [pci] PCI/switchtec: Fix vep_vector_number ioread width (Myron Stowe) [1884657] - [pci] PCI/switchtec: Use dma_set_mask_and_coherent() (Myron Stowe) [1884657] - [pci] PCI: Allow adjust_bridge_window() to shrink resource if necessary (Myron Stowe) [1884657] - [pci] PCI: Set resource size directly in adjust_bridge_window() (Myron Stowe) [1884657] - [pci] PCI: Rename extend_bridge_window() to adjust_bridge_window() (Myron Stowe) [1884657] - [pci] PCI: Rename extend_bridge_window() parameter (Myron Stowe) [1884657] - [pci] PCI: Consider alignment of hot-added bridges when assigning resources (Myron Stowe) [1884657] - [pci] PCI: Remove local variable usage in pci_bus_distribute_available_resources() (Myron Stowe) [1884657] - [pci] PCI: Pass size + alignment to pci_bus_distribute_available_resources() (Myron Stowe) [1884657] - [pci] PCI: Rename variables (Myron Stowe) [1884657] - [pci] PCI: Remove unnecessary braces (Myron Stowe) [1884657] - [pci] PCI: Don't disable bridge BARs when assigning bus resources (Myron Stowe) [1884657] - [documentation] Documentation: PCI: Fix pci_alloc_irq_vectors() function name typo (Myron Stowe) [1884657] - [pci] PCI: Increase D3 delay for AMD Ryzen5/7 XHCI controllers (Myron Stowe) [1884657] - [pci] PCI: Add generic quirk for increasing D3hot delay (Myron Stowe) [1884657] - [edac] x86/mce, EDAC/mce_amd: Print PPIN in machine check records (Prarit Bhargava) [1860381]- [netdrv] geneve: add transport ports in route lookup for geneve (Mark Gray) [1884481] {CVE-2020-25645} - [drm] PM: sleep: core: Rename DPM_FLAG_NEVER_SKIP (Ivan Vecera) [1867164] - [base] PM: sleep: core: Drop racy and redundant checks from device_prepare() (Ivan Vecera) [1867164] - [mm] mm/page_isolation: fix potential warning from user (Waiman Long) [1811009] - [mm] mm/hotplug: silence a lockdep splat with printk() (Waiman Long) [1811009] - [mm] mm/debug.c: always print flags in dump_page() (Waiman Long) [1811009] - [mm] mm/debug.c: PageAnon() is true for PageKsm() pages (Waiman Long) [1811009] - [mm] mm/debug.c: __dump_page() prints an extra line (Waiman Long) [1811009] - [mm] mm: fix some typos in mm directory (Waiman Long) [1811009] - [mm] mm, fault_around: do not take a reference to a locked page (Waiman Long) [1811009] - [mm] mm: remove the exporting of totalram_pages (Waiman Long) [1880090] - [mm] mm: remove managed_page_count_lock spinlock (Waiman Long) [1880090] - [mm] mm: convert totalram_pages and totalhigh_pages variables to atomic (Waiman Long) [1880090] - [mm] mm: convert zone->managed_pages to atomic variable (Waiman Long) [1880090] - [net] mm: reference totalram_pages and managed_pages once per function (Waiman Long) [1880090] - [mm] mm/page_alloc: Introduce free_area_init_core_hotplug (Waiman Long) [1880090] - [mm] mm/page_alloc: inline function to handle CONFIG_DEFERRED_STRUCT_PAGE_INIT (Waiman Long) [1880090] - [mm] mm: remove __paginginit (Waiman Long) [1880090] - [mm] mm: access zone->node via zone_to_nid() and zone_set_nid() (Waiman Long) [1880090] - [mm] mm, page_alloc: double zone's batchsize (Waiman Long) [1880090] - [powerpc] powerpc/pseries/cmm: fix managed page counts when migrating pages between zones (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: drain per-cpu pages again during memory offline (Chris von Recklinghausen) [1754739] - [mm] mm: move nr_deactivate accounting to shrink_active_list() (Chris von Recklinghausen) [1754739] - [mm] sh: fix build error in mm/init.c (Chris von Recklinghausen) [1754739] - [mm] mm/memremap: set caching mode for PCI P2PDMA memory to WC (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: add pgprot_t to mhp_params (Chris von Recklinghausen) [1754739] - [mm] powerpc/mm: thread pgprot_t through create_section_mapping() (Chris von Recklinghausen) [1754739] - [mm] x86/mm: thread pgprot_t through init_memory_mapping() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: rename mhp_restrictions to mhp_params (Chris von Recklinghausen) [1754739] - [include] mm/memory_hotplug: drop the flags field from struct mhp_restrictions (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: cleanup __add_pages() (Chris von Recklinghausen) [1754739] - [mm] mm, hotplug: fix page online with DEBUG_PAGEALLOC compiled but not enabled (Chris von Recklinghausen) [1754739] - [mm] arm64/mm: Enable memory hot remove (Chris von Recklinghausen) [1754739] - [firmware] arm/efi: EFI soft reservation to memblock (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: convert mm/dump.c to use walk_page_range() (Chris von Recklinghausen) [1754739] - [base] mm/memory_hotplug: drop valid_start/valid_end from test_pages_in_a_zone() (Chris von Recklinghausen) [1754739] - [base] mm/memory_hotplug: pass in nid to online_pages() (Chris von Recklinghausen) [1754739] - [mm] mm: remove "count" parameter from has_unmovable_pages() (Chris von Recklinghausen) [1754739] - [base] mm: remove the memory isolate notifier (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Disable instrumentation in the EFI runtime handling code (Chris von Recklinghausen) [1754739] - [x86] efi/x86: avoid KASAN false positives when accessing the 1: 1 mapping (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Limit EFI old memory map to SGI UV machines (Chris von Recklinghausen) [1754739] - [x86] efi/libstub/x86: Fix unused-variable warning (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Simplify mixed mode call wrapper (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Simplify 64-bit EFI firmware call wrapper (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Split SetVirtualAddresMap() wrappers into 32 and 64 bit versions (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Split off some old memmap handling into separate routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Re-disable RT services for 32-bit kernels running on 64-bit EFI (Chris von Recklinghausen) [1754739] - [x86] efi/libstub: Distinguish between native/mixed not 32/64 bit (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub: Extend native protocol definitions with mixed_mode aliases (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub: Use a helper to iterate over a EFI handle array (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Rename efi_is_native() to efi_is_mixed() (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Unify 32/64-bit functions (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Convert GOP structures to typedef and clean up some types (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Remove unused typedef (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Remove bogus packed attribute from GOP structures (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub/random: Initialize pointer variables to zero for mixed mode (Chris von Recklinghausen) [1754739] - [firmware] efi: Fix efi_loaded_image_t::unload type (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Fix memory leak in __gop_query32/64() (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Return EFI_SUCCESS if a usable GOP was found (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Return EFI_NOT_FOUND if there are no usable GOPs (Chris von Recklinghausen) [1754739] - [hv] mm/memory_hotplug.c: remove __online_page_set_limits() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: don't allow to online/offline memory blocks with holes (Chris von Recklinghausen) [1754739] - [mm] mm/page_isolation.c: convert SKIP_HWPOISON to MEMORY_OFFLINE (Chris von Recklinghausen) [1754739] - [mm] mm/page_alloc.c: don't set pages PageReserved() when offlining (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: remove __online_page_free() and __online_page_increment_counters() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: add a bounds check to __add_pages() (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Fix NMI vs ESPFIX (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Unwind the ESPFIX stack earlier on exception entry (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Move FIXUP_FRAME after pushing fs in SAVE_ALL (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Simplify common_exception (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Use ss segment where required (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Fix IRET exception (Chris von Recklinghausen) [1754739] - [x86] x86/xen/32: Make xen_iret_crit_fixup() independent of frame layout (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Repair 32-bit Xen PV (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Allow int3_emulate_push() (Chris von Recklinghausen) [1754739] - [x86] x86: Hide the int3_emulate_call/jmp functions from UML (Chris von Recklinghausen) [1754739] - [x86] ftrace/x86_64: Emulate call function while updating in breakpoint handler (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Provide consistent pt_regs (Chris von Recklinghausen) [1754739] - [x86] kprobes, x86/ptrace.h: Make regs_get_kernel_stack_nth() not fault on bad stack (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe, x86/ftrace: Add pt_regs frame annotations (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe, x86/kprobes: Fix frame pointer annotations (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe: Move ENCODE_FRAME_POINTER to asm/frame.h (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Clean up return from interrupt preemption path (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Simulation mode (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Switch to balloon_page_alloc() (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Implement balloon compaction (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Convert loaned_pages to an atomic_long_t (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Rip out memory isolate notifier (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Use adjust_managed_page_count() insted of totalram_pages_* (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Drop page array (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Cleanup rc handling in cmm_init() (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Report errors when registering notifiers fails (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Implement release() function for sysfs device (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Push EFI_MEMMAP check into leaf routines (Chris von Recklinghausen) [1754739] - [mm] powerpc: Don't flush caches when adding memory (Chris von Recklinghausen) [1754739] - [firmware] efi/random: use arch-independent efi_call_proto() (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Don't evaluate exception stacks before setup (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Mark pages PG_offline in balloon_append() (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Drop __balloon_append() (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Set pages PageOffline() in balloon_add_region() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: prevent memory leak when reusing pgdat (Chris von Recklinghausen) [1754739] - [base] drivers/base/memory.c: don't store end_section_nr in memory blocks (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: remove move_pfn_range() (Chris von Recklinghausen) [1754739] - [mm] mm: introduce compound_nr() (Chris von Recklinghausen) [1754739] - [x86] x86/asm: Make some functions local labels (Chris von Recklinghausen) [1754739] - [firmware] efi-stub: Fix get_efi_config_table on mixed-mode setups (Chris von Recklinghausen) [1754739] - [x86] efi/x86: move UV_SYSTAB handling into arch/x86 (Chris von Recklinghausen) [1754739] - [x86] efi: x86: move efi_is_table_address() into arch/x86 (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: remove unneeded return for void function (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Remove redundant CLACs in getuser/putuser error paths (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Remove ELF function annotation from copy_user_handle_tail() (Chris von Recklinghausen) [1754739] - [x86] x86/entry: Fix thunk function ELF sizes (Chris von Recklinghausen) [1754739] - [x86] x86/entry/64: Simplify idtentry a little (Chris von Recklinghausen) [1754739] - [mm] mm: vmscan: correct some vmscan counters for THP swapout (Chris von Recklinghausen) [1754739] - [mm] mm/gup: speed up check_and_migrate_cma_pages() on huge page (Chris von Recklinghausen) [1754739] - [x86] x86/ldt: Initialize the context lock for init_mm (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries: avoid blocking in irq when queuing hotplug events (Chris von Recklinghausen) [1754739] - [arm64] arm64/mm: don't initialize pgd_cache twice (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: fix recent_rotated history (Chris von Recklinghausen) [1754739] - [x86] efi/x86/Add missing error handling to old_memmap 1:1 mapping code (Chris von Recklinghausen) [1754739] - [mm] arm64/mm: Inhibit huge-vmap with ptdump (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: simplify shrink_inactive_list() (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: cleanup memory offline path (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: fix the wrong usage of N_HIGH_MEMORY (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: drop redundant hugepage_migration_supported check (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: unlock 1GB-hugetlb on x86_64 (Chris von Recklinghausen) [1754739] - [mm] mm: move recent_rotated pages calculation to shrink_inactive_list() (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Initialize PGD cache during mm initialization (Chris von Recklinghausen) [1754739] - [x86] x86/alternatives: Initialize temporary mm for patching (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Fix a crash with kmemleak_scan() (Chris von Recklinghausen) [1754739] - [x86] x86/irq: Fix outdated comments (Chris von Recklinghausen) [1754739] - [mm] mm/hotplug: treat CMA pages as unmovable (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remove stack overflow debug code (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remap the IRQ stack with guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Split the IRQ stack into its own pages (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Init hardirq_stack_ptr during CPU hotplug (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Handle irq stack allocation failure proper (Chris von Recklinghausen) [1754739] - [xen] x86/irq/32: Invoke irq_ctx_init() from init_IRQ() (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Rename irq_stack_ptr to hardirq_stack_ptr (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Rename hard/softirq_stack to hard/softirq_stack_ptr (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Make irq stack a character array (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Define IRQ_STACK_SIZE (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Speedup in_exception_stack() (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Split debug IST stack (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Enable IST guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Disconnect IST index and stack order (Chris von Recklinghausen) [1754739] - [x86] x86/cpu: Remove orig_ist array (Chris von Recklinghausen) [1754739] - [x86] x86/cpu: Prepare TSS.IST setup for guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Use cpu_entry_area instead of orig_ist (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Use cpu entry area instead of orig_ist (Chris von Recklinghausen) [1754739] - [mm] x86/traps: Use cpu_entry_area instead of orig_ist (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Provide exception stack accessor (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Prepare for IST guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Add structs for exception stacks (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Cleanup setup functions (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Make IST index zero based (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Remove unused stack defines on 32bit (Chris von Recklinghausen) [1754739] - [x86] x86/64: Remove stale CURRENT_MASK (Chris von Recklinghausen) [1754739] - [x86] x86/idt: Remove unused macro SISTG (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Sanitize the top/bottom confusion (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remove a hardcoded irq_stack_union access (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack: Fix off-by-one errors in stack identification (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Limit IST stack overflow check to #DB stack (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: Consolidate early page table allocation (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: don't call page table ctors for init_mm (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: use appropriate ctors for page tables (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Move copy_user_handle_tail() into asm (Chris von Recklinghausen) [1754739] - [mm] mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: fix notification in offline error path (Chris von Recklinghausen) [1754739] - [mm] mm/hotplug: fix an imbalance with DEBUG_PAGEALLOC (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: explicitly pass the head to isolate_huge_page (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: do not allocate duplicate stack variables in shrink_page_list() (Chris von Recklinghausen) [1754739] - [mm] mm: refactor swap-in logic out of shmem_getpage_gfp (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: remove 7th argument of isolate_lru_pages() (Chris von Recklinghausen) [1754739] - [mm] mm: remove extra drain pages on pcp list (Chris von Recklinghausen) [1754739] - [mm] mm/memory-hotplug: Allow memory resources to be children (Chris von Recklinghausen) [1754739] - [kernel] mm/resource: Move HMM pr_debug() deeper into resource code (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: fix off-by-one in is_pageblock_removable (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Move percpu_setup_debug_store() to __init section (Chris von Recklinghausen) [1754739] - [mm] arm64: ptdump: Don't iterate kernel page tables using PTRS_PER_PXX (Chris von Recklinghausen) [1754739] - [firmware] efi: Use 32-bit alignment for efi_guid_t (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: __offline_pages fix wrong locking (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: test_pages_in_a_zone do not pass the end of zone (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: is_mem_section_removable do not pass the end of a zone (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: don't bail out in do_migrate_range() prematurely (Chris von Recklinghausen) [1754739] - [mm] arm64: dump: no need to check return value of debugfs_create functions (Chris von Recklinghausen) [1754739] - [x86] x86/asm/suspend: Drop ENTRY from local data (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: deobfuscate migration part of offlining (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: try to migrate full pfn range (Chris von Recklinghausen) [1754739] - [mm] mm, hotplug: move init_currently_empty_zone() under zone_span_lock protection (Chris von Recklinghausen) [1754739] - [mm] mm: only report isolation failures when offlining memory (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: be more verbose for memory offline failures (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: print reason for the offlining failure (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: drop pointless block alignment checks from __offline_pages (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Don't unmap EFI boot services code/data regions for EFI_OLD_MEMMAP and EFI_MIXED_MODE (Chris von Recklinghausen) [1754739] - [x86] kprobes/x86: Blacklist non-attachable interrupt functions (Chris von Recklinghausen) [1754739] - [include] linkage: add generic GLOBAL() macro (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Move efi__boot_services() to arch/x86 (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Unmap EFI boot services code/data regions from efi_pgd (Chris von Recklinghausen) [1754739] - [mm] x86/mm/pageattr: Introduce helper function to unmap EFI boot services (Chris von Recklinghausen) [1754739] - [x86] x86/fpu: Use the correct exception table macro in the XSTATE_OP wrapper (Chris von Recklinghausen) [1754739] - [firmware] efi/arm/libstub: Pack FDT after populating it (Chris von Recklinghausen) [1754739] - [x86] x86/traps: Complete prototype declarations (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: clean up node_states_check_changes_offline() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: simplify node_states_check_changes_online (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: tidy up node_states_clear_node() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: spare unnecessary calls to node_set_state (Chris von Recklinghausen) [1754739] - [include] include/linux/linkage.h: align weak symbols (Chris von Recklinghausen) [1754739] - [mm] shmem: Convert shmem_add_to_page_cache to XArray (Chris von Recklinghausen) [1754739] - [mm] shmem: Convert shmem_radix_tree_replace to XArray (Chris von Recklinghausen) [1754739] - [mm] mm: Convert add_to_swap_cache to XArray (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Clear the CS high bits (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Set up temporary text mapping for 32bit system (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Switch to original page table after resumed (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Enable CONFIG_ARCH_HIBERNATION_HEADER on 32bit system (Chris von Recklinghausen) [1754739] - [x86] x86, hibernate: Extract the common code of 64/32 bit system (Chris von Recklinghausen) [1754739] - [x86] x86-32/asm/power: Create stack frames in hibernate_asm_32.S (Chris von Recklinghausen) [1754739] - [x86] PM / hibernate: Check the success of generating md5 digest before hibernation (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Load fixmap GDT in efi_call_phys_epilog() before setting cr3 (Chris von Recklinghausen) [1754739] - [x86] x86/xen: Move pv irq related functions under CONFIG_XEN_PV umbrella (Chris von Recklinghausen) [1754739] - [x86] x86/extable: Introduce _ASM_EXTABLE_UA for uaccess fixups (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Load fixmap GDT in efi_call_phys_epilog() (Chris von Recklinghausen) [1754739] - [tools] tools arch: Update arch/x86/lib/memcpy_64.S copy used in 'perf bench mem memcpy' (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Remove redundant check for kmem_cache_create() (Chris von Recklinghausen) [1754739] - [x86] x86/power/hibernate_64: Remove VLA usage (Chris von Recklinghausen) [1754739] - [firmware] efi: Deduplicate efi_open_volume() (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Merge 32-bit and 64-bit UGA draw protocol setup routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Align efi_uga_draw_protocol typedef names to convention (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Merge the setup_efi_pci32() and setup_efi_pci64() routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Prevent reentrant firmware calls in mixed mode (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add debug code to check entry/exit CR3 (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add PTI CR3 switches to NMI handler code (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add PTI cr3 switch to non-NMI entry/exit points (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Handle Entry from Kernel-Mode on Entry-Stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Introduce SAVE_ALL_NMI and RESTORE_ALL_NMI (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Leave the kernel via trampoline stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Enter the kernel via trampoline stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Load task stack from x86_tss.sp1 in SYSENTER handler (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Split off return-to-kernel path (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Unshare NMI return path (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Put ESPFIX code into a macro (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Rename TSS_sysenter_sp0 to TSS_entry2task_stack (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Clean up the eboot code (Chris von Recklinghausen) [1754739] - [x86] x86/asm/64: Use 32-bit XOR to zero registers (Chris von Recklinghausen) [1754739] - [x86] Revert "x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static" (Frank Ramsay) [1833121] - [x86] Revert "x86/platform/uv: Unexport sn_coherency_id" (Frank Ramsay) [1833121] - [x86] Revert "x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c" (Frank Ramsay) [1833121] - [x86] x86/apic: Cleanup the include maze (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Fix missing checks of kcalloc() return values (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Replace kmalloc() and memset() with kalloc() calls (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the unused _uv_cpu_blade_processor_id() macro (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport uv_apicid_hibits (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove _uv_hub_info_check() (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Simplify uv_send_IPI_one() (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark uv_min_hub_revision_id static (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark is_uv_hubless() static (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the UV*_HUB_IS_SUPPORTED macros (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport sn_coherency_id (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the uv_partition_coherence_id() macro (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Mark memblock related init code and data correctly (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Remove unnecessary #ifdef CONFIG_EFI (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Remove uv_bios_call_reentrant() (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Use efi_enabled() instead of test_bit() (Frank Ramsay) [1833121] - [x86] x86/apic/uv: Remove code for unused distributed GRU mode (Frank Ramsay) [1833121]- [thermal] thermal/x86_pkg_temp: Make pkg_temp_lock a raw_spinlock_t (Prarit Bhargava) [1890657] - [net] sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels (Davide Caratti) [1889601] - [netdrv] ibmveth: Identify ingress large send packets (Gustavo Duarte) [1887038] - [netdrv] ibmveth: Switch order of ibmveth_helper calls (Gustavo Duarte) [1887038] - [sound] ALSA: redhat: add drivers/soundwire tree and regmap-sdw to the redhat/filter-modules.sh (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC - enable AMD Renoir support for DMIC (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC - enable the Intel's SoundWire driver (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix jack detection with Realtek codecs when in D3 (Jaroslav Kysela) [1869536] - [sound] ALSA: fireworks: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/i915 - fix list corruption with concurrent probes (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - The front Mic on a HP machine doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: hdspm: Fix typo arbitary (Jaroslav Kysela) [1869536] - [sound] ALSA: bebob: potential info leak in hwdep_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: endpoint.c: fix repeated word 'there' (Jaroslav Kysela) [1869536] - [sound] ALSA: portman2x4: fix repeated word 'if' (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: handle all SOF_IPC_EXT types (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add version_id to avoid rt714/rt715 confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715-sdw: probe with RT714 Device ID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1316: add missing component string (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1308: add extra check on init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: add ifdef CONFIG_OF around of_device_id (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Enable MI2S BCLK and LRCLK together (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: add codec prefix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Remove unused variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Remove ti, asi-format code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Set regcache when shutting down and waking device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Add shutdown capability via a GPIO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Remove duplicate code for I/V sense (Jaroslav Kysela) [1869536] - [sound] ALSA: ASOC: Intel: sof_sdw: restore playback functionality with max98373 amps (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: add support for new SoundWire hardware layout on TGL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: remove hard-coded codec_conf table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: remove ternary operator (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_max98090: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: hda_dsp_common: use static function in conditional block (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: mx27vis-aic32x4: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-mc13783: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Pass full name to snd_ctl_notify (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715: Add power-up delay to fix dmic pop sound issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Enable the power of "MICBIAS" and "Vref2" for the DMIC clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: allow runtime pm at end of probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: add codec name prefix to ACPI machine description (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sysfs: add slave status and device number before probe (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: add enumerated Slave device to device list (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove an unnecessary NULL check (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: add data port test fail interrupt (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: enable test modes (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: enable Data Port test modes (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - set mic to auto detect on a HP AIO machine (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - Don't register a cb func if it is registered already (Jaroslav Kysela) [1869536] - [sound] ALSA: HDA: Early Forbid of runtime PM (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - remove kerneldoc for internal hdac_i915 function (Jaroslav Kysela) [1869536] - [sound] ALSA: ctl: Workaround for lockdep warning wrt card->ctl_files_rwlock (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Disable autosuspend for Lenovo ThinkStation P620 (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: Remove uninitialized_var() usage (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: arm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: add dpcm_create/remove_debugfs_state() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: move CONFIG_DEBUG_FS functions to top side (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: magician: convert to use i2c_new_client_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: Enable AC'97 bus support for PXA machines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: Select regmap from AC'97 machines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support TDM out and 8ch I2S out (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: kirkwood: fix external clock probe defer (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: keywest: convert to use i2c_new_client_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: Use sizeof_field() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: hdac_hdmi: Set ops to NULL on remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: More constifications (Jaroslav Kysela) [1869536] - [sound] ALSA: i2c: Constify snd_kcontrol_new items (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1869536] - [sound] ALSA: vxpocket: Support PCM sync_stop (Jaroslav Kysela) [1869536] - [sound] ALSA: mips: Constify snd_device_ops definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: i2c: Constify snd_device_ops definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: Fix running status after receiving sysex (Jaroslav Kysela) [1869536] - [sound] ALSA: arm: More constification (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: add "WITH Linux-syscall-note" to SPDX tag of uapi headers (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: replace '---help---' in Kconfig files with 'help' (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix SPDX license for header file (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac: make SOF HDA codec driver probe deterministic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Refactor sample rate function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix the spacing and new lines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Convert bit mask to GENMASK in header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix unbalanced calls to pm_runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add the TAS2110 class-D amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: add size checks for ext_bytes control .put() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: fix size checks for volatile ext_bytes control .get() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: fix size checks for ext_bytes control .get() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tlv320aic32x4: Enable fast charge (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tlv320aic32x4: Ensure a minimum delay before clock stabilization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt711: wait for the delayed work to finish when the system suspends (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix error handling with update_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix required DT properties in the code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Add missing bias level power states (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix calling reset in probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt700: wait for the delayed work to finish when the system suspends (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add the TAS2564 compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: add missing MODULE_LICENSE() for imx-common (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pm: Fix prepare callback behavior for OF usecase (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cs42l51: add additional ADC volume controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix the process being scheduled on core0 always (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - fix CONTROLLER_IN_GPU macro name (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - handle multiple i915 device instances (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - controller is in GPU on the DG1 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - add Intel DG1 PCI and HDMI ids (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO" (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add delay quirk for H570e USB headsets (Jaroslav Kysela) [1869536] - [sound] ALSA: compat_ioctl: avoid compat_alloc_user_space (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: fix spellint typo in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: fix iounmap in error handler (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use {u32|u16}p_replace_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: use u32p_replace_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: get max rows and cols info from compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add support to block packing mode (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: clear BIT FIELDs before value set (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: Add generic bandwidth allocation algorithm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak4458: Add DSD support for ak4458 and ak4497 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-sc7180: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Add support for tgl-h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv320aic32x4: do software reset before clock registration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv320aic32x4: fix missing aic32x4_disable_regulators() in error path (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Set MCLK input or output direction (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add fsl_sai_check_version function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add new added registers and new bit definition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe-clocks: add q6afe clock controller (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce verbosity of boot error logs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: fix range checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: remove several superfluous type-casts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: (cosmetic) remove redundant "ret" variable uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: update test for pm_runtime_get_sync() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: debug: update test for pm_runtime_get_sync() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add `src_hash` to `sof_ipc_fw_version` structure (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Add debug support for imx platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: disable size checks for bytes_ext controls if needed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_audmix: make clock and output src write only (Jaroslav Kysela) [1869536] - [sound] ALSA: remove calls to usb_pipe_type_check for control endpoints (Jaroslav Kysela) [1869536] - [sound] ALSA: hiface: move to use usb_control_msg_send() (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: move to use usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: 6fire: move to use usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: usx2y: move to use usb_control_msg_send() (Jaroslav Kysela) [1869536] - [sound] ALSA: USB: add usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: USB: move snd_usb_pipe_sanity_check into the USB core (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Fix the failure to flush DAC data before playback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Fix DC calibration on bypass boost mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: stm32: sai: add pm_runtime support (Jaroslav Kysela) [1869536] - [sound] ALSA: rockchip_i2s: fix a possible divide-by-zero bug in rockchip_i2s_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Use DMI oem string search for tgl_max98373_rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: s/master/primary (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: remove the HDA_DSP_CORE_MASK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: modify core_power_up/down op (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: rename cores_mask to host_managed_cores_mask (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: j721e-evm: Add support for j7200-cpb audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support machine driver with rt1015p (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe-dai: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add codec lpass clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: update q6afe_set_param to support global clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add lpass hw voting support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add global q6afe waitqueue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: prepare afe_apr_send_pkt to take response opcode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6routing: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: dt-bindings: Add q6afe display_port dt binding (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015p: add codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: add parity error injection through debugfs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: export broadcast read/write capability for tests (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: realtek-soundwire: ignore initial PARITY errors (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: use quirk to filter out invalid parity errors (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: add first_interrupt_done status (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: filter-out unwanted interrupt reports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC/soundwire: bus: use property to set interrupt masks (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Remove unused inline function snd_mask_sizeof (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: Remove unused function hpi_stream_group_get_map() (Jaroslav Kysela) [1869536] - [sound] ALSA: mixart: Correct comment wrt obsoleted tasklet usage (Jaroslav Kysela) [1869536] - [sound] ALSA: aloop: Replace tasklet with work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mchp-spdiftx: add driver for S/PDIF TX Controller (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix SLIBMUS/SLIMBUS typo (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: fix race condition between suspend and Slave device alerts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Parse auxiliary devices from device tree (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mt6359: fix failed to parse DT properties (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Implement snd_sof_bytes_ext_volatile_get kcontrol IO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: Add support for WO and RO TLV byte kcontrols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Kconfig: Allow the j721e machine driver to be used on K3 platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KeemBay: Fix warning potential ! vs ~ typo (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add v1.5.1 compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: dt-bindings: soundwire: add bindings for Qcom controller (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add support for mmio soundwire master devices (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: avoid dependency on CONFIG_SLIMBUS (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix abh/ahb typo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: make process type optional (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_mux (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_process (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_tone (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_asrc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_src (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_host (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_volume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: add helper for setting up IPC component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: use the sof_ipc_comp reserved bytes for extended data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: parse comp_ext_tokens for all widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: create component extended tokens (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add comp_ext to struct snd_sof_widget (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: tokens: add token for component UUID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Manage module clock via DAPM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Attach the bus clock to the regmap (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Sort masks in a consistent order (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix field bit number indentation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix ADC_DIG_CTRL field name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1_MXR_SRC field names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1_ADCDAT_CTRL field names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1 MODCLK widget name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Remove extraneous widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add dailink .prepare and .hw_free callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add dailink .trigger callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: clarify return value for get_sdw_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove stream handling from .prepare and .hw_free (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove .trigger operation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix NULL/ERR_PTR confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: fix NULL/IS_ERR confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove SDW_REG_SHIFT() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom : use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: use SDW_DISCO_LINK_ID() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: use FIELD_GET() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: define and use addr bit masks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix core enable sequence (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: support topology components on secondary cores (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add a "core" parameter to widget loading functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Set SAI Channel Mode to Output Mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Support multiple data channel enable bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: don't manage link power individually (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: pass link_mask information to each master (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add error log for clock-stop invalid configs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: enable hw_sync as needed by hardware (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add multi-link hw_synchronization information (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: update multi-link definition with hw sync details (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add missing support for all clock stop modes (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add multi-link support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: ignore software command retries (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: disable shim wake on suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix port_readydynamic allocation in mipi_disco (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add definition for maximum number of ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: soundwire: remove port_readyusage from codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_core: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: rawmidi: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: atmel: ac97: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: (cosmetic) align argument names (Jaroslav Kysela) [1869536] - [sound] ALSA: usb: scarless_gen2: fix endianness issue (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: auto_parser: remove shadowed variable declaration (Jaroslav Kysela) [1869536] - [sound] ALSA: aoa: i2sbus: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: core: init: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: compress_offload: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: compress_offload: dereference after checking for NULL pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: core: timer: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: core: timer: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm_memory: dereference pointer after NULL checks (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm: simplify locking for timers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Prefer async probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: remove artificial component and DAI name constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: shutdown codec when changing filter type (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Clean kernel log from deferred probe error messages (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Simplify error handling during FW boot (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Add sof_tgl_ops for TGL platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Define FW boot sequence with ICCMAX (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: define macro for code loader stream format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: modify the signature of get_stream_with_tag() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Add helper function to program ICCMAX stream (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Remove unused parameters in cl_dsp_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix VS_LTRC register name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sof-of-dev: Add .arch_ops field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Replace sdev->private with sdev->pdata->hw_pdata (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: add extended rom status dump to error log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix the ipc_size calculation for process component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: intel: hda: support also devices with 1 and 3 dmics (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: report error only for the last ROM init iteration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: Add debug box region (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: Parse debug ABI version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: fix memory leak in get_ext_windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: IPC: make sof_ipc_window monosized (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix intel_suspend/resume defined but not used warning (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 exit commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 custom controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 microphone selection commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add output selection for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add DSP setup functions for AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add init data for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add pre-init function for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add ca0132_mmio_init data for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Set AE-7 bools and select mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add SoundBlaster AE-7 pincfg (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix Recon3D Center/LFE output (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add quirk output selection structures (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Clean up ca0132_alt_out_select (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Remove surround output selection (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add bass redirection controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add full-range speaker selection controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add surround channel config control (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add speaker tuning initialization commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Cleanup ca0132_mmio_init function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hdmi: tidy up a memset() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: use consistent HDAudio spelling in comments/docs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add dev_dbg log when driver is not selected (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: acpi: add dev_dbg() log for probe completion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: IPC: reduce verbosity of IPC pointer updates (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: reduce the log level for unhandled widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: remove unnecessary memory alloc for sdev->private (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: (cosmetic) use the "bool" type where it makes sense (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add -EPROBE_DEFER check for regmap init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak5558: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: clean-up inclusion of header files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: add rt711 rt1316 rt714 SDCA codec support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add topology filename override based on dmi data match (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: SoC: Intel: sof_sdw: Add support for product Ripto (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: rename id as part_id (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: check SoundWire version when matching codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373-sdw: add missing test on resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: add support for SDCA boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: mirror CML and TGL configurations (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-soundwire: add support for rt5682 on link2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: cnl: add support for rt5682 on SoundWire link2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: modify SoundWire version id in acpi match table (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Correct wrongly matching entries with audio class (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Fix I/O voltage range configuration during probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: add .exit callback function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: add support for TLV320AIC32x4 codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add build support for SoundWire (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: add missing out of memory check on drvdata->clks allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt6359: add codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Properly match with audio interface class (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Simplify quirk entries with a macro (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Move device rename and profile quirks to an internal table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Hook up component probe function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: s3c2412-i2s: avoid hardcoded S3C2410_PA_IIS (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: rx1950: turn into platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: neo1973: turn into platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: use SDW_SLAVE_ENTRY_EXT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Update naming in error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Get "extal" clock rate by clk_get_rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: add a dedicated menuconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Export DAC/ADC monomix switches (Jaroslav Kysela) [1869536] - [sound] ALSA: remove duplicate "the the" phrase in Kconfig text (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm0010: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: simple-card: Use snd_soc_of_parse_aux_devs() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Add common helper to parse aux devs from device tree (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak4458: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hdmi: support 'ELD' mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: sound/soc/intel: Fix spelling mistake "cant" --> "can't" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: various vendors: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-topology: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-topology: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: sst-utils: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: cldma: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-nhlt: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell-ipc: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Baytrail: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: (cosmetic) align parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_pvt: simplify return handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_loader: remove always-true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: remove useless assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: platform-pcm: fix redundant return (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_pvt: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst: remove useless NULL assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: platform-pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: compress: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst-atom-controls: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: refine runtime pm for SDW_INTEL_CLK_STOP_BUS_RESET (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: support clock_stop mode without quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: handle power rail dependencies for clock stop mode (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_NOT_ALLOWED support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_BUS_RESET support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_TEARDOWN for pm_runtime suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: pm_runtime idle scheduling (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reinitialize IP+DSP in .prepare(), but only when resuming (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: call helper to reset Slave states on resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix race condition on system resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reset pm_runtime status during system resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add pm_runtime support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Fix clock handling around codec level probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Move soft reset handling to codec level probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Move required devm_* allocations to device level code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add support to copy callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add gapless support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: prepare set params to accept profile change (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add next track metadata support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add support to gapless flag in q6asm open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add support to remove intial and trailing silence (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add length to write command token (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: use flags directly from q6asm-dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: make commands specific to streams (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: rename misleading session id variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Enable TDM audio capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Moving GPIO reset and add ADC reset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Increased maximum supported channels (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Enable 24 bit audio support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for earpiece switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for line out switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Make line out routes stereo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for headphone switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Make headphone routes stereo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Group and sort mixer routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Gate the amplifier clock during suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Fix duplicate use of ADC enable bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcht_cx2072x: simplify return handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: rename shadowed variable for all broadwell boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda-codec: move variable used conditionally (Jaroslav Kysela) [1869536] - [sound] ALSA: ASOC: SOF: Intel: hda-codec: move unused label to correct position (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Add a quirk for LRCK inversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Add missing mixer routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix DAPM to match the hardware topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Replace synchronous check with fsl_sai_dir_is_synced (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Drop TMR/RMR settings for synchronous mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Refine enable/disable TE/RE sequence in trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: Use platform_get_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Use platform_get_resource (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-sc7180: Add platform driver for lpass audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: fix concurrency issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass: Use regmap_field for i2sctl and dmactl registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: fix memory leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: Replace card->dev with component->dev (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Move ahbix clk to platform specific function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Add common array to initialize soc based core clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Use dev_dbg() in rt5682_clk_check() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: Add basic power management support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: enable pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add argument to function definition (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add module_sdw_driver helper macro (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sdw.h: fix indentation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sdw.h: fix PRBS/Static_1 swapped definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: virmidi: Fix running status after receiving sysex (Jaroslav Kysela) [1869536] - [sound] ALSA: bt87x: use pci_status_get_and_clear_errors (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - The Mic on a RedmiBook doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fixup headset for ASUS GX502 laptop (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix double free of dangling pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: use consistent HDAudio spelling in comments/docs (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add dev_dbg log when driver is not selected (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: hdmi - add Rocketlake support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Fix power transition refactor (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-toddr: fix channel order on g12 platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: add snd_soc_find_dai_with_mutex() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: always check pin power status in i915 pin fixup (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Fix refcount imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt700: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt711: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1308-sdw: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98373: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for UR22C (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: fixup ams_delta_mute() function name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pcm3168a: ignore 0 Hz settings (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda: Add support for Loongson 7A1000 controller" (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Program WAKEEN register for Tegra (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Fix 2 channel swapping for Tegra (Jaroslav Kysela) [1869536] - [sound] ALSA: ca0106: fix error code handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: tgl_max98373: fix a runtime pm issue in multi-thread case (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-digi00x: exclude Avid Adrenaline from detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ALSA; firewire-tascam: exclude Tascam FE-8 from detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Set card->owner to avoid warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: atom: Add period size constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: avoid reset of sdo_limit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in autosuspend delay (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: fix typo in comment on INTSTAT registers (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: ignore broken processing/extension unit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: Fix memleak in sst_media_open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Avoid attempts to read unreadable registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: msm8916-wcd-analog: fix register Interrupt offset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Prevent access to invalid VU register bits on WM1811 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add model alc298-samsung-headphone (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Update documentation comment for MS2109 quirk (Jaroslav Kysela) [1869536] - [sound] ALSA: isa: fix spelling mistakes in the comments (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1) (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Flex Book (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Fix potential Oops in snd_echo_resume() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6routing: add dummy register read/write function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe-dai: mark all widgets registers as SND_SOC_NOPM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Make soc_component_read() returning an error code again (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - reverse the setting value in the micmute_led_set (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaduio: Drop superfluous volatile modifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Replacing component->name with codec_dai->name (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Pioneer DDJ-RB (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fix spelling mistake "buss" -> "bus" (Jaroslav Kysela) [1869536] - [sound] ALSA: pci: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: isa: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Add 100us dma stop delay (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add dma stop delay variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hda/tegra: Set buffer alignment to 128 bytes (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: Serialize ioctls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Add quirk to force connectivity (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add startech usb audio dock name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_i2s: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_dmic: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_ahub: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_admaif: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra186_dspk: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add support for Lenovo ThinkStation P620 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: renoir: restore two more registers during resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Do not remove ADDITIONAL_CONTROL_4 from readable register list (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Remove fsl_asoc_card_set_bias_level function (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda: call runtime_allow() for all hda controllers" (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix AE-5 microphone selection commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add new quirk ID for Recon3D (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Two step component registration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Simplify snd_soc_component_initialize declaration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Relocate and expose snd_soc_component_initialize (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sh: Replace 'select' DMADEVICES 'with depends on' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Fix value of FSL_SAI_CR1_RFW_MASK (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: use less strict tests for dailink capabilities (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rk3399_gru_sound: Add DAPM pins, kcontrols for jack detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Do not access WM8962_GPIO_BASE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: use resource_size (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: drop unnecessary list_empty (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Added hw_params support for ALC1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Passing card structure based on codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Renaming snd-soc-card structure and fields (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Add sound support for Midas boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Rework disable channel function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Add 8kHz audio support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Fix regression causing sysfs entries to disappear (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdm-formatters: fix sclk inversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdmin: fix g12a skew (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdm-interface: fix link fmt setup (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fixed HP right speaker no sound (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix NULL pointer dereference during suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm2835: Silence clk_get() error on -EPROBE_DEFER (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Update shutdown GPIO property (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: disable traces when switching to S0Ix D0I3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: fix the suspend procedure to support s0ix entry (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Fix keep_power assignment for non-component devices (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Workaround for spurious wakeups on some Intel platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: endpoint : remove needless check before usb_free_coherent() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Restore PME_EN state at Power On (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/boards: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fix add a "ultra_low_power" function for intel reference board (alc256) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: don't call pm_runtime_* on card device (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: typo_fix: enable headset mic of ASUS ROG Zephyrus G14(GA401) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G15(GA502) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: update dsm param bin max size (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Update dsm init sequence and condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: don't report of_xlate_dai_name failures (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Avoid printing errors for -EPROBE_DEFER (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: apq8016_sbc: Use qcom_snd_parse_of() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Parse properties with "qcom, " prefix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Support parsing links without DPCM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe: Remove unused q6afe_is_rx_port() function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Use snd_soc_dai_link_set_capabilities() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Use devm for resource management (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix dac event dapm mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support configuring dai fmt from DT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: add IRQF_SHARED for devm_request_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Fix build error due to 64-by-32 division (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: fix SND_SOC_J721E_EVM warnings & errors (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: omap: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Support new metadata block ID's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: xtensa: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: kirkwood: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sprd: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: generic: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: au1x: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dwc: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cirrus: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sh: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: stm: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-xxx: add asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix deadlock after PCM open error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix memleak on module unload (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: call patch_ops.free() on probe error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support machine driver with max98357b (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support left justified format for I2S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - fix probe regression on systems without i915 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pcm: Update rate/channels for SAI/ESAI DAIs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Update SAI config bclk/fsync rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Add SAI dai driver for i.MX/i.MX8X (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8m: Fix SAI DAI driver for i.MX8M (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Fix ESAI DAI driver name for i.MX8/iMX8X (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Use ARRAY_SIZE instead of hardcoded value (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops for imx8 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for SSL2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based ADMAIF driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix reset gpio property name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98357a: move control of SD_MODE back to DAI ops (Jaroslav Kysela) [1869536] - [sound] ALSA: Soundwire: intel_init: save Slave(s) _ADR info in sdw_intel_ctx (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add wake interrupt support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel/cadence: merge Soundwire interrupt handlers/threads (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: add implementation of sdw_intel_enable_irq() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: introduce helper for link synchronization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: introduce a helper to arm link synchronization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: revisit SHIM programming sequences (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: report slave_ids for each link to SOF driver (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add clock stop quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add mutex for shared SHIM register access (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add prototype for WAKEEN interrupt processing (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add link_list to handle interrupts with a single thread (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: update headers for interrupts (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reuse code for wait loops to set/clear bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: board: sof_rt5682: Update rt1015 pll input clk freq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: avoid crash if invalid DSP topology loaded (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add support for systems without i915 audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove properties in card remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove hard-coded codec name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.h: drop a duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd9335.h: fix duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra20_das.h: delete duplicated words (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Avoid the use of one-element array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra186 based DSPK driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based AHUB driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based I2S driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based DMIC driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add support for CIF programming (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: change match table ehl-rt5660 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: remove .digital_mute (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace the word "slave" in vmaster API (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: delete duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fixed ALC298 sound bug by adding quirk for Samsung Notebook Pen S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: optimize the power consumption (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.h: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: Use IS_ERR() instead of IS_ERR_OR_NULL() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: disable MICBIAS and Vref2 widget in default (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: Use the defined variable to clean code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: snd_soc_dai_digital_mute() for both CPU/Codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: fixes the missed kfree() for axg_card_add_tdm_loopback (Jaroslav Kysela) [1869536] - [sound] ALSA: info: Drop WARN_ON() from buffer NULL sanity check (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Use kmemdup in podhd_set_monitor_level() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add support for Loongson 7A1000 controller (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: Add missed return for calling soc_component_ret (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: Trivial: Fix misspelling of 'exists' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support Headphone and Microphone Jack detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: simple-card-utils: Support configure pin_name for asoc_simple_init_jack (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: es*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: alc*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: pcm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ssm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tas*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: spear: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdmi-codec: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: drm/mediatek: exit earlier if failed to register audio driver (Jaroslav Kysela) [1869536] - [sound] ALSA: drm/i2c/tda998x: Make tda998x_audio_digital_mute static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.c: add .no_capture_mute support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdmi-codec: return -ENOTSUPP for digital_mute (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix snd_hda_codec_cleanup() documentation (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: export snd_hda_codec_cleanup_for_unbind() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Report the button event in the headset type only (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add missed put_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - fixup for yet another Intel reference board (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable Speaker for ASUS UX563 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable Speaker for ASUS UX533 and UX534 (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix the kernel-doc comment (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Replace blacklist word (Jaroslav Kysela) [1869536] - [sound] ALSA: via82xx: Replace the words whitelist (Jaroslav Kysela) [1869536] - [sound] ALSA: nm256: Replace the words blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: intel8x0: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: es1968: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: ctxfi: Replace the word blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: bt87x: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: don't free dma_data in DAI shutdown (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: allocate/free dma_data in set_sdw_stream (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove stream allocation/free (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: add helper to startup/shutdown streams (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: implement get_sdw_stream() operations (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Disable sync-write operation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ssi: don't use discriminatory terms for debug log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: siu: don't use discriminatory terms for parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsi: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rsnd: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rsnd: don't use discriminatory terms for function names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Enable Vref2 under using PLL2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: spdif: Handle clk by pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: re-enable IRQs on failure path (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: add hw monitor volume control for POD HD500 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer TravelMate B311R-31 with ALC256 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G14(G401) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - change to suitable link model for ASUS platform (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix race against the error recovery URB submission (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Improve dai-set-fmt comment in cht_codec_fixup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support HDMI jack reporting (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: use hdmi-codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: use hdmi-codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add kctl for configuring TX validity bit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Clear the validity bit for TX (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Sync the pending work cancel at disconnection (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Perform sanity check for each URB creation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak4458: Remove set but never checked variable 'ret' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv320aic26: Demote seemingly unintentional kerneldoc header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt5659: Remove many unused const variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt5631: fix spurious kernel-doc start and missing arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: ux500_msp_i2s: Remove unused variables 'reg_val_DR' and 'reg_val_TSTDR' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: pxa-ssp: Demote seemingly unintentional kerneldoc header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: sun4i-spdif: Fix misspelling of 'reg_dac_txdata' in kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: sun4i-i2s: add missing clock and format arguments in kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: q6asm: Provide documentation for 'codec_profile' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sti: uniperif: fix 'defined by not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel-pdmic: remove codec component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel-classd: remove codec component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98390: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: es8316: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: omap-mcbsp-st: Remove set, but unused variable 'w' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: jz4770: Remove defined but never used variable 'mic_boost_tlv' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da7219: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da7210: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: aio-core: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra20_das: remove always-true comparison (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: pcm: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: spdif: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sdw_max98373: add card_late_probe support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-sdw: add MAX98373 I2C dependencies (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: add SoundWire support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: split I2C and common parts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support machine driver with rt1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: extract codec and DAI names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: remove forward declaration of headset_init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: sort header inclusions in alphabetical (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt286: fix unexpected interrupt happens (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8974: remove unsupported clock mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8974: fix Boost Mixer Aux Switch (Jaroslav Kysela) [1869536] - [sound] ALSA: xen: Remove superfluous fall through comments (Jaroslav Kysela) [1869536] - [sound] ALSA: atmel: Remove invalid "fall through" comments (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Address bugs in the interrupt handling (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Prevent some noise on unloading the module (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Prevent races in calls to set_audio_format() (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Race conditions around "opencount" (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Remove redundant check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: fixed kernel warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support machine driver with rt1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: sort header inclusions in alphabetical (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: use dev_err instead of pr_err (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add command opcode to timeout error report (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: core: fix null-ptr-deref bug during device removal (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: codecs: max98373: remove Idle_bias_on to let codec suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: Removed superfluous volume control from chip default (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: add more logs when topology load fails (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: factor kfree(se) in error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: use break on errors, not continue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: fix tlvs in error handling for widget_dmixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: fix kernel oops on route addition error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: add min/max channels for SAI/ESAI on i.MX8/i.MX8M (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix non BE conversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: set dai_link dpcm_ flags with a helper (Jaroslav Kysela) [1869536] - [sound] ALSA: usb/line6: remove 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: mpc8610_hpcd: Add missing of_node_put() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: add default clock handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACPI dependency check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-i2s: remove unused-but-set variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-pcm-dma: remove unused-but-set variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-i2s: fix 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-pcm-dma: fix 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: acp-rt5645: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: acp-da7219-max98357a: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Fix build error on m68k and others (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Remove only the registered component in devm functions (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Add Intel silent stream support (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/au88x0: remove "defined but not used" warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: vx_core: remove warning for empty loop body (Jaroslav Kysela) [1869536] - [sound] ALSA: pcmcia/pdaudiocf: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/via82xx: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/fm801: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/es1938: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: xen: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/oxygen/xonar_wm87x6: remove always true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/rme9652/hdspm: remove always true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/korg1212: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/emu10k1: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pci/emu10k1: remove "set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/ctxfi: fix kernel-doc warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/ctxfi/ctatc: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/aw2-saa7146: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/echoaudio: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/gus: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/gus: remove -Wmissing-prototypes warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: compress: fix partial_drain completion state (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for RTX6001 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix SND_HDA_GENERIC kconfig & build (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm_iec958: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer Veriton N4660G with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer C20-820 with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable audio jacks of Acer vCopperbox with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix Lenovo Thinkpad X1 Carbon 7th quirk subdevice id (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: improve debug traces for stream lookups (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: fix failures at PCM open on Intel ICL and later (Jaroslav Kysela) [1869536] - [sound] ALSA: opl3: fix infoleak in opl3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8400: remove unused variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-ac97: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add logic to check dmic hardware runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: j721e-evm: Fix missing unlock on error in j721e_audio_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_esai: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_asrc: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_spdif: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_ssi: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_ssi_dbg: remove spurious kernel-doc comment start (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Rename dev_gpio to gpio1_is_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Remove struct rt5670_platform_data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: return -EINVAL on unrecognized speaker amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8994: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm9713: remove spurious kernel-doc comment start (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8960: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8986: fix missing kernel-doc arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs42l42: remove always-true comparisons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs4270: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sof-acpi-dev: fix 'defined but unused' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: atom: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: atom: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: support MAX98390 speaker amp (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Add an option to select internal ratio mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Enable interrupt in dma_open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KeemBay: Fix header guard (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Refine regcache usage with pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Add custom machine driver for j721e EVM (CPB and IVI) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: davinci-mcasp: Specify stream_name for playback/capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: add format and rate constraints on rk3399 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Rectifying Unbalanced pm_runtime_enable! issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null even soundwire mode (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix some typos (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Replace s/frame/packet/ where appropriate (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix packet size calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: initialize bus clock base and scale registers (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add definitions for 1.2 spec (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove multiple blank lines (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: extend SDW_SLAVE_ENTRY (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: convert open-coded while() to for() loop (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Add new gpio1_is_ext_spk_en quirk and enable it on the Lenovo Miix 2 10 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Correct RT5670_LDO_SEL_MASK (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Change bus format to I2S 2 channel (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add voltage sense slot configuration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add right and left channel slot programming (Jaroslav Kysela) [1869536] - [sound] ALSA: asoc: Update supported rate and format for dummy dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Drop HAS_DMA dependency to fix link failure (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: Add MAX98373 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Fix a typo in Kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: add match table for TGL MAX98373 + RT5682 SoundWire driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: Intel: cml_rt1011_rt5682: explicitly access first codec (Jaroslav Kysela) [1869536] - [sound] ALSA: snd/soc: correct trivial kernel-doc inconsistency (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: Update TDM configuration in hw_params (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: use for_each_card_prelinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: cml_rt1011_rt5682: use statically define codec config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: cml_rt1011_rt5682: reduce log level for printing quirk (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for jsl-max98360a-rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: Fix the comment for max_98373_components (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: add dai_trigger function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: byt*.c: remove cast in dev_info quirk log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add quirk override with kernel parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt_rt298: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cml_rt1011_rt5682: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: nocodec: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: add missing header inclusion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: declare missing structure prototypes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: move definition of enum snd_soc_bias_level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Fix format issue for extra space before a comma (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Update shutdown GPIO property (Jaroslav Kysela) [1869536] - [sound] ALSA: AsoC: amd: add missing snd- module prefix to the acp3x-rn driver kernel module (Jaroslav Kysela) [1869536] - [sound] ALSA: core: Warn on empty module (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - let hs_mic be picked ahead of hp_mic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Add WM8524 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix the pop noise while OMTP type headset plugin (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix OOB access of mixer element list (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Samsung USBC Headset (AKG) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1011: fix KASAN out-of-bounds bug in find_next_bit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: set playback and capture constraints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix uninitialized scalar variable in fsl_easrc_set_ctx_format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: disable jack in dailink .exit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_rt5682: move disabling jack to dai link's exit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: kbl-rt5660: use .exit() dailink callback to release gpiod (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix module load/unload issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: introduce exit() callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_mqs: Fix unchecked return value for clk_prepare_enable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_mqs: Don't check clock is NULL before calling clk API (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Flight S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Add controls for calibration and diagnostic FW (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: remove snd_soc_component_read32() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: alc*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: msm*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wcd*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: use io_mutex correctly (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge snd_soc_component_read() and snd_soc_component_read32() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: Constify static structs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: transition to 3 steps initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: pass link information as platform data (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: use devm_ allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: remove useless test (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: clarify drvdata and remove more indirections (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: cleanups for indirections/logs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix memory leak with devm_kasprintf (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: clock_stop: don't deal with UNATTACHED Slave devices (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: Replace 'objs' by 'y' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add pm runtime function (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Enable sync-write operation as default for all controllers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: Fix a reference count leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Removing unnecessary instance initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: closing specific instance (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Let LED cdev handling suspend/resume (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Unify LED helper code (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/sigmatel: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/conexant: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Add vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Drop the old mic-mute LED hook (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Drop unused snd_hda_gen_fixup_micmute_led() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/sigmatel: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/conexant: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Add a helper for mic-mute LED with LED classdev (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Always call led-trigger for mic mute LED (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Intel: add missing PCI IDs for ICL-H, TGL-H and EKL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht*: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: byt*: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix memleak with regmap not freed on remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI IDs for ICL-H and TGL-H (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for CometLake-S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: SOF: merge COMETLAKE_LP and COMETLAKE_H (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: imply acodec glue on axg sound card (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add support for imx6sx platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Add MQS support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Fix reference count leaks (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix potential use-after-free of streams (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add quirk for MSI GE63 laptop (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Flush DAC data before playback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_ssi: Fix bclk calculation for mono channel (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Use mixer control to switch between DMICs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Add Amp init common setting func (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: DAI wclk supports 44100 Hz output (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Let PLL2 support the freq conversion for 44100Hz sample rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Add new supports on rl6231 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-parallel-out: Fix a reference count leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8960: Support headphone jack detection function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Add driver for Aries boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm0010: Use kmemdup rather than duplicating its implementation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Add makefiles and kconfig changes for KeemBay (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Add KeemBay platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt6358: support DMIC one-wire mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix "Function parameter not described" warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix -Wunused-but-set-variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix -Wmissing-prototypes warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: tidyup Copyright (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge soc_pcm_trigger_start/stop() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge soc-io.c into soc-component.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_hw_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_prepare() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add soc_component_err() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_initialize() to soc-component.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_xxx_regmap() to soc-component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add soc_component_pin() and share code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm/compress: reduce verbosity on mapping ok messages (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: improve error messages in soc_pcm_new() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: reduce verbosity of BE override message (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Use SG-buffer only when direct DMA is available (Jaroslav Kysela) [1869536] - [sound] ALSA: memalloc: Make SG-buffer helper usable for continuous buffer, too (Jaroslav Kysela) [1869536] - [sound] ALSA: memalloc: Initialize all fields of snd_dma_buffer properly (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Use dma_mmap_coherent() on x86, too (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98357a: add compatible string for MAX98360A (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Clear RIRB status before reading WP (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Update rt1015 default register value according to spec modification (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: set correct directions for dailinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: q6afe: add support to get port direction (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: fix checks for multi-cpu FE dailinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Let dai clks be registered whether mclk exists or not (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: wait for notification when changing clock configuration for protocol v3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-topology: use devm_snd_soc_register_dai() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-devres: add devm_snd_soc_register_dai() (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Set 48 kHz rate for Rodecaster (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Denon DCD-1500RE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Fix data copying speed issue with EDMA (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Reuse the dma channel if available in Back-End (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dmaengine_pcm: export soc_component_to_pcm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: export snd_soc_lookup_component_nolocked (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for SSL2+ (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add NVIDIA codec IDs 9a & 9d through a0 to patch table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: handle EOS correctly (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Update regmap readable reg and volatile (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5645: Add platform-data for Asus T101HA (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT10-A tablet (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: nocodec: conditionally set dpcm_capture/dpcm_playback flags (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: replace capture_only by dpcm_capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: only convert non DPCM link to DPCM link (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: dpcm: fix playback/capture checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: dpcm: Only allow playback/capture if supported (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: add missing free_irq() in error path (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: disallow linking stream to itself (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Manage auto-pm of all bundled interfaces (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - add a pintbl quirk for several Lenovo machines (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: fix snd_pcm_link() lockdep splat (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Use the new macro for HP Dock rename quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add vendor, product and profile name for HP Thunderbolt Dock (Jaroslav Kysela) [1869536] - [sound] ALSA: emu10k1: delete an unnecessary condition (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix inconsistent card PM state after resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix potential crash during param fw loading (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix incorrect printf qualifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Defer probe when fail to find codec device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Modify the target DMIC clock rate (Jaroslav Kysela) [1869536] - [sound] ALSA: es1688: Add the missed snd_card_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add sienna_cichlid audio asic id for sienna_cichlid up (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add Pioneer DJ DJM-900NXS2 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: q6asm-dai: kCFI fix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_remove_dai_link() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_add_dai_link() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_set_bias_level_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_set_bias_level() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_remove() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_late_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add probed bit field to snd_soc_card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_resume_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_resume_pre() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_suspend_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_suspend_pre() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_subclass to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_get_codec_dai() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_set/get_drvdata() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_jack_new() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_get_kcontrol() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: add soc-card.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc.h: convert bool to bit field for snd_soc_card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof_pcm512x: remove CONFIG_SND_HDA_CODEC_HDMI condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof-sdw: remove CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: add depends on SND_SOC_SOF_HDA_AUDIO_CODEC for common hdmi (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fixing usage of plain int instead of NULL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: fix generic hda codec support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Baytrail: fix 'defined but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: Subject:ASoC: soc-pcm: fix BE dai not hw_free and shutdown during mixer update (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: reduce verbosity of error messages for sof-dai and sof-link (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Fix dma_chan leak when config DMA channel failed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Enable class-D silence and clock detections (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-i2s-out: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: remove the redundant pass checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: refine and log the header in the correct pass (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: Remove sound driver for ancient platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Removing unnecessary instance initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sta32x: add missed function calls in error paths (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: split i2c driver into separate module (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: nau8810: add I2C device and compatible ID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ingenic: Unconditionally depend on devicetree (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Clean up quirk entries with macros (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Fix return value check in asoc_mmp_sspa_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-spdif-in: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-spdif-out: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: harden IPC initialization and handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: mask BUSY or DONE interrupts in handler (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: add .remove op (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ipc: ignore DSP replies received when they are not expected (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: byt/cht: add .pm_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640/51: remove .ignore_suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pm: handle resume on legacy Intel platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: byt: Add PM callbacks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: Move dai_link widgets to runtime to fix use after free (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add new codec supported for ALC287 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2552: Fix runtime PM imbalance in tas2552_component_probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fix incomplete error-handling in img_i2s_in_probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Fix runtime PM imbalance in omap2_mcbsp_set_clks_src (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fix semicolon.cocci warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add a model for Thinkpad T570 without DAC workaround (Jaroslav Kysela) [1869536] - [sound] ALSA: hwdep: fix a left shifting 1 by 31 UB bug (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Merge suspend/resume function to runtime_suspend/resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-audmix: Fix unused assignment to variable 'ret' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Fix -Wmissing-prototypes warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Added Amplifier Driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse compiler version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse firmware version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce extended manifest (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: Adjust validation condition for fw_offset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_set_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_shutdown() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_startup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_be_hw_params_fixup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: remove unneeded parameter from snd_soc_link_xxx() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: move soc_rtd_xxx() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: add soc-link.c (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add support for MOTU UltraLite-mk3 (FireWire only model) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: keep ADCs and DACs always on (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add digital microphone controls (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v2 for fetching mode switch (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v3 for clock source getter (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v2 for clock source getter (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: remove obsoleted codes (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: use table-based calculation of packet formats for stream management (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: use table-based calculation of packet formats for proc (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add alternative functions to detect packet format for protocol v3 (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add alternative functions to detect packet format for protocol v2 (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add model-specific table of chunk count (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: drop protocol structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add wrapper functions for protocol-dependent operations (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: localize protocol data (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: move spec data to v3 protocol file (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: move spec data to v2 protocol file (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: remove Compulab pxa2xx boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add mono playback switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add filter controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: don't use regmap defaults (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Fix the error handling in probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use a single module (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: fix ADC level control (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix spelling mistake (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix trailing line in sysfs_slave.c (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add Slave sysfs support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: add sysfs support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: disco: s/ch/channels/ (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add Device Tree support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: return error when acp de-init fails (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: refactoring dai_hw_params() callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: fix kernel warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Do not pass irq numbers in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Remove unneeded ifdef's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Set ASR76K and ASR56K based on processing clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: enable build for RN machine driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: RN machine driver using dmic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: create platform devices for Renoir (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: enable Renoir acp3x drivers build (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP PDM DMA driver pm ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP PCI driver PM ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP PDM DMA driver dai ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add acp3x pdm driver dma ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: irq handler changes for ACP3x PDM dma driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP3x PDM platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: create acp3x pdm platform device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add acp init/de-init functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP PCI driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP3x IP register header (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add more fixup entries for Clevo machines (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: add runtime pm support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: add sdw_master_device support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: add unique bus id (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: introduce sdw_slave_type and sdw_master_type (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: rename sdw_bus_master_add/delete, add arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio option (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT8-A tablet (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: fix volume controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Fix unused assignment in fsl_set_clock_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: Make the driver name consistent across files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Fix indentation to put on one line affected code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cleanup dai / component active code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dwc: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: jz4740: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cirrus: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atomel: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_stream_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dapm: use snd_soc_dai_activate()/deactivate() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_action() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: replace snd_soc_runtime_activate()/deactivate() to macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: move set_pll to codec level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: move set_sysclk to codec level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: Add da7212 DT compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: remap BTN_0 as KEY_PLAYPAUSE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: remap buttons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remap buttons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: fix typo in components string (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: change machine driver name for WM8804 platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: make imx8m_dsp_ops static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: make dsp_ops static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: sdw: relax sdw machine select constraints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: add support to smart amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: inform DSP that driver is going to be removed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add a power_down_notify method (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Do nothing when DSP PM callbacks are not set (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt1308-sdw: remove duplicate allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: fix memory leak in set_sdw_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: don't assign slave_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: fix incorrect hw_base increase (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Unexport some local helper functions (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Drop unused snd_hda_queue_unsol_event() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Fix potential race in unsol event handler (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add duplex sound support for USB devices using implicit feedback (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fixing upper volume limit for RME Babyface Pro routing crosspoints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: introduce SoC specific data (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Limit int mic boost for Thinkpad T530 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Use force clear for WM8962_SYSCLK_ENA after reset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Set appropriate bus format for given bit width (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add support for the runtime power management (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Prepare/unprepare the clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Remove the embedded struct ssp_device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add support for soc-generic-dmaengine-pcm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Get rid of dma_params and phys_base (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: A trivial typo fix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: omap-mcbsp: Fix an error handling path in 'asoc_mcbsp_probe()' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Update description for HDaudio kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: mop500: Fix some refcounted resources issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Drop S20_3LE case (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Flip SNDRV_PCM_FMTBIT_S24_3LE on (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Use readq to read 64 bit registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: baytrail: Fix register access (Jaroslav Kysela) [1869536] - [sound] ALSA: SoC: rsnd: add interrupt support for SSI BUSIF buffer (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add COEF workaround for ASUS ZenBook UX431DA (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of ASUS UX581LV with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS UX550GE with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS GL503VM with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: drivers/powerpc: Replace _ALIGN_UP() by ALIGN() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: core: fix error return code in sof_probe_continue() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: set headset button maps (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: fulfill missing entries in Kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: (cosmetic) remove multiple superfluous "else" statements (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: (cosmetic) remove multiple superfluous "else" statements (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: Use IRQF_ONESHOT (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: add support for RME Fireface UFX (untested) (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: add support for RME FireFace 802 (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: code refactoring to decide name of sound card (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: code refactoring to add enumeration constants for model identification (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: start IR context immediately (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: fix configuration error for nominal sampling transfer frequency (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Notebook (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: use sequence of syt offset and data block on pool in AMDTP domain (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: pool ideal sequence of syt offset and data block (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: add cache for packet sequence to AMDTP domain structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for data block calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for syt offset calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for syt computation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for parameters of packet queue and IRQ timing (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: add reference to domain structure from stream structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: use macro for maximum value of second in 1394 OHCI isoc descriptor (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: fix invalid assignment to union data for directional parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: fireworks: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: rawmidi: Fix racy buffer resize under concurrent accesses (Jaroslav Kysela) [1869536] - [sound] ALSA: soc: fsl_asrc: Make some functions static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1016: Add the rt1016 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5677: Use devm_snd_soc_register_component() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: fix error handling of platform_get_irq() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Allow SST driver on SKL and KBL platforms with DMIC (Jaroslav Kysela) [1869536] - [sound] ALSA: portman2x4: Use bitwise instead of arithmetic operator for flags (Jaroslav Kysela) [1869536] - [sound] ALSA: sound/ppc: Use bitwise instead of arithmetic operator for flags (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: Fix error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd :High hw_level while simultaneous capture (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Return true, false for return type bool (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Make I2S SD lines configurable (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Use hdac_to_hda_codec macro (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Use dev_to_hdac_dev macro (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: reduce verbosity on enumeration (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: debugfs: clarify SDPX license with GPL-2.0-only (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: don't init debugfs on device registration error (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix error handling in probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8524: Add support S32_LE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Use the defined variable to simplify code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Add condition to prevent SoC providing bclk in ratio of 50 times of sample rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Add the K bypass for the PLL parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: adau7118: Mark the ADAU7118 reset register as volatile (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max9768: update contact email (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98373: reorder max98373_reset() in resume (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: workaround playback failure on Tegra194 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add member to store ratio for stripe control (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: correct number of SDO lines for Tegra194 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add mapping for ASRock TRX40 Creator (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda/realtek: Fix pop noise on ALC225" (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints format (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Add poll callback for hwdep (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: hwdep: add support for O_NONBLOCK opening mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF/Intel: clarify SPDX license with GPL-2.0-only (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ipc: channel map structures (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: sof-wm8804: support for Hifiberry Digiplus boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Update correct LED status at the first time usage of update_mute_led() (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/wavefront: prevent out of bounds write in ioctl (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix unused variable warning w/o CONFIG_LEDS_TRIGGER_AUDIO (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add LED class support for micmute LED (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable micmute LED on and HP system (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Introduce polarity for micmute LED GPIO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sort out Kconfig, again (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove unwanted btn_type assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove duplicate rt5682_reset() calls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: replace message printing from pr_() to dev_() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove empty default case (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix space issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: simplify assertions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: change trigger sequence to fix pop noise when stopping playback on sdw platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: replace sof_link_hda_process by sof_set_dai_config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: set component dai_index to ipc dai config dai_index (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: send ipc for all found DAIs in sof_set_dai_config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: Fix oops during module removal (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix I2C/Soundwire dependencies (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: mark PM functions __maybe_unused (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: remove unused inline function snd_seq_oss_timer_is_realtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs-saif: Fix unused assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: nau8810: add AUX related dapm widgets and routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm97xx: fix ac97 dependency (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: component: suppress uninitialized-variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_get_metadata() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_set_metadata() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_pointer() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_ack() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_get_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_set_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_shutdown() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_start() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_remove() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_bespoke_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_prepare() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_new() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: don't overwide dai->driver->ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add soc_dai_err() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: broadwell: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bdw-rt5650: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bdw-rt5677: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: add explicit dependency on GPIOLIB when DMIC is used (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: davinci-mcasp: Fix dma_chan refcnt leak when getting dma type (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Automatic DMIC format configuration according to information from NHLT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Multiple I/O PCM format support for pipe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Add alternative topology binary name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hisilicon: Use the defined variable to clean code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Check for null pointer before dereferencing "ctx" in fsl_easrc_hw_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: remove comparison to bool in omap_mcbsp_dai_set_dai_fmt() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs-saif: Avoid unnecessary check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add amp number in components string for ucm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hisilicon: Use IS_ERR() instead of IS_ERR_OR_NULL() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: Disable exception interrupt before scheduling tasklet (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm_native: result of put_user() needs to be checked (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: snd-sof-intel-hda-common - add hda_model parameter and pass it to HDA codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: avoid false-positive Wuninitialized warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: set CLOCKING2 as non-volatile register (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix racy list management in output queue (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Remove async workaround for Scarlett 2nd gen (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Improve frames size computation (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Refactor Intel NHLT init (Jaroslav Kysela) [1869536] - [sound] ALSA: ACPICA: Add NHLT table signature (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add missing dependency on IMX_SCU (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: fix spelling mistake "prefitler" -> "prefilter" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Replace guid_copy() with import_guid() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dmic: Allow GPIO operations to sleep (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: return true, false in snd_soc_volsw_is_stereo() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Fix build (Jaroslav Kysela) [1869536] - [sound] ALSA: oxygen: use true, false for bool variables (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix a limit check in proc_dump_substream_formats() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - fix oops on systems without i915 audio codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Add initial ZL38060 driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: remove snd_compr_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sprd: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: atom: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: q6sp6: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: wm_adsp: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: add snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: txx9: add back the hack for a too small resource_size_t (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Add EASRC ASoC CPU DAI drivers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Move common definition to fsl_asrc_common (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Support new property fsl, asrc-format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support new property fsl, asrc-format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: rename asrc_priv to asrc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Enable audio mclk during tegra_asoc_utils_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add audio mclk parent configuration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Use device managed resource APIs to get the clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd934x: remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd9335: remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd934x: remove unnecessary comparisons to bool (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: split woofer and tweeter support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Fix wrong dependency of da7210 and wm8983 (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Print more information in stream proc files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: txx9: don't work around too small resource_size_t (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Power transition refactor (Jaroslav Kysela) [1869536] - [sound] ALSA: Fix misspellings of "Analog Devices" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Fix misspellings of "Analog Devices" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: handle multiple sets of tuple arrays (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: stop parsing when all tokens have been found (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Get HDA rate and channels from topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix: parse hda_tokens to &config->hda (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Get ALH rate amd channels from topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: align sof_ipc_dai_alh_params with FW (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Rename deprecated DMIC IPC struct field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Change DMIC load IPC to fixed length (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Fix typo in header file comment text (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add XRUN flags field to struct sof_ipc_buffer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: make sof_ipc_cc_version to fixed length (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in topology.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in trace.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in info.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add debug ABI version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add probe support extend data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Add support for DC Blocker (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse compiler version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse firmware version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce extended manifest (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce offset in firmware data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Mark get_ext* function ext_hdr arguments as const (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix: handle DAI widget connections properly with multiple CPU DAI's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add i.MX8MP device descriptor (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Add i.MX8M HW support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: fix undefined reference issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Fix randbuild error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: Remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Omit superfluous error message in fsl_micfil_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: skl_hda_generic: remove rtd->codec_dai (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: RME Babyface Pro mixer patch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8900: remove some defined but not used symbols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8990: remove some defined but unused symbols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8991: remove defined but not used 'wm8991_dapm_rxvoice_controls' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: remove wm1811_snd_controls and mixin_boost_tlv (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Support nvidia, headset property (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt5682: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1308: remove codec dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_hdmi: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_hdmi: fix compilation issue in fallback mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-da7219-max98373: add DMIC widget and route (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: init all aggregated codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: support Elkhart Lake with rt5660 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for ElkhartLake (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add ElkhartLake HDMI codec vid (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_da7219_max98373: Add BE dailink for dmic16k (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: remove cpu_dai/codec_dai/cpu_dais/codec_dais (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: tidyup soc_new_pcm_runtime() rtd setups (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: set rtd->num_cpu/codec at soc_new_pcm_runtime() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Add dynamic debug logs in soc_dai_link_sanity_check() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: log number of microphones detected in NHLT tables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce verbosity on SoundWire detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt1308-sdw: reduce verbosity (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: remove unnecessary parentheses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: remove unneeded variables (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add autodetection for SoundWire (Jaroslav Kysela) [1869536] - [s390] mm/gup: fix gup_fast with dynamic page table folding (Philipp Rudo) [1879401 1768713 1883266]- [netdrv] Take common prefetch code structure into a function (Ivan Vecera) [1882011] - [net] lwtunnel: only keep the available bits when setting vxlan md->gbp (Xin Long) [1879363] - [net] sched: only keep the available bits when setting vxlan md->gbp (Xin Long) [1879363] - [vhost] Don't call access_ok() when using IOTLB (Greg Kurz) [1883084] - [clocksource] hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functions (Mohammed Gamal) [1880230] - [net] core: Replace driver version to be kernel version (Petr Oros) [1867192] - [net] use netif_is_bridge_port() to check for IFF_BRIDGE_PORT (Josef Oskera) [1867923] - [net] sctp: fix sctp_auth_init_hmacs() error path (Xin Long) [1891413] - [net] sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant (Xin Long) [1891413] - [net] sctp: add SCTP_PEER_ADDR_THLDS_V2 sockopt (Xin Long) [1891413] - [net] sctp: add support for Primary Path Switchover (Xin Long) [1891413] - [net] sctp: add SCTP_EXPOSE_POTENTIALLY_FAILED_STATE sockopt (Xin Long) [1891413] - [net] sctp: add SCTP_ADDR_POTENTIALLY_FAILED notification (Xin Long) [1891413] - [net] sctp: add pf_expose per netns and sock and asoc (Xin Long) [1891413] - [net] qos offload add flow status with dropped count (Ivan Vecera) [1890263] - [i2c] i2c: i801: Add support for Intel Tiger Lake PCH-H (Steve Best) [1782725] - [i2c] i2c: i801: Add support for Intel Emmitsburg PCH (David Arcari) [1837403] - [mfd] mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs (David Arcari) [1837403] - [powerpc] powerpc/papr_scm: Fix warning triggered by perf_stats_show() (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Limit the readability of 'perf_stats' sysfs attribute (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Add support for fetching nvdimm 'fuel-gauge' metric (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Fetch nvdimm performance stats from PHYP (Diego Domingos) [1875364] - [include] driver-core: Introduce DEVICE_ATTR_ADMIN_{RO, RW} (Diego Domingos) [1875364] - [net] netfilter: reject: skip csum verification for protocols that don't support it (Florian Westphal) [1740082] - [net] netfilter: Fix remainder of pseudo-header protocol 0 (Florian Westphal) [1740082] - [powerpc] powerpc/pseries: Add KVM guest doorbell restrictions (Diego Domingos) [1870221] - [powerpc] powerpc: Inline doorbell sending functions (Diego Domingos) [1870221] - [powerpc] powerpc/pseries: Use doorbells even if XIVE is available (Diego Domingos) [1870221] - [powerpc] powerpc: Fix P10 PVR revision in /proc/cpuinfo for SMT4 cores (Steve Best) [1885927] - [tools] selftests: implement flower classifier terse dump tests (Ivan Vecera) [1879189] - [net] sched: cls_flower: implement terse dump support (Ivan Vecera) [1879189] - [net] sched: implement terse dump support in act (Ivan Vecera) [1879189] - [net] sched: introduce terse dump flag (Ivan Vecera) [1879189] - [netdrv] net/mlx5e: Fix missing switch_id for representors (Petr Oros) [1874073] - [tools] selftests: net: Add port split test (Petr Oros) [1874073] - [net] devlink: Move input checks from driver to devlink (Petr Oros) [1874073] - [net] devlink: Add a new devlink port split ability attribute and pass to netlink (Petr Oros) [1874073] - [netdrv] mlxsw: Set port split ability attribute in driver (Petr Oros) [1874073] - [net] devlink: Add a new devlink port lanes attribute and pass to netlink (Petr Oros) [1874073] - [netdrv] mlxsw: Set number of port lanes attribute in driver (Petr Oros) [1874073] - [net] devlink: Replace devlink_port_attrs_set parameters with a struct (Petr Oros) [1874073] - [net] devlink: Move switch_port attribute of devlink_port_attrs to devlink_port (Petr Oros) [1874073] - [net] devlink: Move set attribute of devlink_port_attrs to devlink_port (Petr Oros) [1874073] - [netdrv] mlx5e: Use helper API to get devlink port index for all port flavours (Petr Oros) [1874073] - [net] devlink: Add support for board.serial_number to info_get cb. (Petr Oros) [1879194] - [net] devlink: Support setting hardware address of port function (Petr Oros) [1879195] - [net] devlink: Support querying hardware address of port function (Petr Oros) [1879195] - [net] devlink: Prepare devlink port functions to fill extack (Petr Oros) [1879195] - [net] sctp: not disable bh in the whole sctp_get_port_local() (Xin Long) [1704525] - [net] sctp: replace some sock_net(sk) with just 'net' (Xin Long) [1704525] - [x86] x86/resctrl: Fix a NULL vs IS_ERR() static checker warning in rdt_cdp_peer_get() (Terry Bowman) [1873124]- [net] sched: initialize with 0 before setting erspan md->u (Xin Long) [1879358] - [net] ipv6: Discard next-hop MTU less than minimum link MTU (Balazs Nemeth) [1879893] - [kvm] Revert "x86/kvm: Move context tracking where it belongs" (Nitesh Narayan Lal) [1890284] - [video] hyperv_fb: Update screen_info after removing old framebuffer (Kairui Song) [1870081] - [x86] x86/kexec: Use up-to-dated screen_info copy to fill boot params (Kairui Song) [1870081] - [netdrv] netdevsim: Register control traps (Petr Oros) [1888724] - [net] devlink: Add ACL control packet traps (Petr Oros) [1888724] - [net] devlink: Add layer 3 control packet traps (Petr Oros) [1888724] - [net] devlink: Add layer 2 control packet traps (Petr Oros) [1888724] - [net] devlink: Add 'control' trap type (Petr Oros) [1888724] - [net] devlink: Add 'mirror' trap action (Petr Oros) [1888724] - [netdrv] netdevsim: Move layer 3 exceptions to exceptions trap group (Petr Oros) [1888724] - [net] devlink: Create dedicated trap group for layer 3 exceptions (Petr Oros) [1888724] - [net] xfrmi: drop ignore_df check before updating pmtu (Balazs Nemeth) [1857679] - [kernel] sched/features: Fix !CONFIG_JUMP_LABEL case (Daniel Bristot de Oliveira) [1885850] - [net] flow_offload: simplify hw stats check handling (Ivan Vecera) [1888317] - [scsi] scsi: core: Only re-run queue in scsi_end_request() if device queue is busy (Ewan Milne) [1885733] - [scsi] scsi: core: Clean up scsi_noretry_cmd() (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Make sdebug_build_parts() respect virtual_gb (Ewan Milne) [1885733] - [scsi] scsi: fc: Add 256GBit speed setting to SCSI FC transport (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement lun_format (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Remove superfluous close zone in resp_open_zone() (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_sas: Add spaces around binary operator "|" (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_srp: Sanitize scsi_target_block/unblock sequences (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement tur_ms_to_ready parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix request sense (Ewan Milne) [1885733] - [scsi] scsi: core: Delete unnecessary buffer allocation for every loop iteration (Ewan Milne) [1885733] - [scsi] scsi: core: Add missing scsi_device_put() in scsi_host_block() (Ewan Milne) [1885733] - [scsi] scsi: core: Only return started requests from scsi_host_find_tag() (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_iscsi: Drop a duplicated word (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_sas: Add missing newline in sysfs 'enable' attribute (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_fc: Match HBA Attribute Length with HBAAPI V2.0 definitions (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Update documentation url and bump version (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: every_nth triggered error injection (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Support hostwide tags (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add check for sdebug_max_queue during module init (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Fix kdoc comment format (Ewan Milne) [1885733] - [scsi] scsi: sd: Fix kdoc comment format (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix in_use bitmap corruption (Ewan Milne) [1885733] - [scsi] scsi: core: Register sysfs for SCSI workqueue (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_spi: Fix function pointer check (Ewan Milne) [1885733] - [scsi] scsi: core: Fix formatting errors in scsi_lib.c (Ewan Milne) [1885733] - [scsi] scsi: core: Remove scsi_sdb_cache (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_probe() missing deallocate of device minor (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_probe() missing mutex_destroy (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Parser tables and code interaction (Ewan Milne) [1885733] - [scsi] scsi: core: Refactor scsi_mq_setup_tags function (Ewan Milne) [1885733] - [scsi] scsi: core: Fix incorrect usage of shost_for_each_device (Ewan Milne) [1885733] - [scsi] scsi: sd: Add zoned capabilities device attribute (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix an error handling bug in sdeb_zbc_model_str() (Ewan Milne) [1885733] - [scsi] scsi: pm: Balance pm_only counter of request queue during system resume (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Disallow zone sizes that are not powers of 2 (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement ZBC host-aware emulation (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_size_mb module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_nr_conv module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_max_open module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC zone commands (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC mode and VPD pages (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Bump to version 1.89 (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Re-arrange parameters alphabetically (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement PRE-FETCH commands (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Weaken rwlock around ramdisk access (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement VERIFY(10), add VERIFY(16) (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add per_host_store option (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Use scsi_et_resid() where appropriate (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Randomize command completion time (Ewan Milne) [1885733] - [scsi] scsi: core: doc: Change function comments to kernel-doc style (Ewan Milne) [1885733] - [scsi] scsi: sr: Use {get, put}_unaligned_be*() instead of open-coding these functions (Ewan Milne) [1885733] - [scsi] scsi_ioctl.c: switch SCSI_IOCTL_GET_IDLUN to copy_to_user() (Ewan Milne) [1885733] - [scsi] scsi: core: Avoid calling synchronize_rcu() for each device in scsi_host_block() (Ewan Milne) [1885733] - [scsi] scsi: st: remove unneeded variable 'result' in st_release() (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_block_release() (Ewan Milne) [1885733] - [scsi] scsi: scsi_trace: Use get_unaligned_be24() (Ewan Milne) [1885733] - [scsi] scsi: st: Use get_unaligned_be24() and sign_extend32() (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_busy_iter() (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_(block, unblock) helper function (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_complete_all_commands() helper (Ewan Milne) [1885733] - [scsi] scsi: sr: get rid of sr global mutex (Ewan Milne) [1885733] - [powerpc] scsi: sr: remove references to BLK_DEV_SR_VENDOR, leave it enabled (Ewan Milne) [1885733] - [scsi] scsi: core: remove .for_blk_mq (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Rename sd_zbc_check_zones() (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Simplify sd_zbc_check_zones() (Ewan Milne) [1885733] - [ata] scsi: core: Clean up SG_NONE (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport.h: switch to SPDX tags (Ewan Milne) [1885733] - [scsi] scsi: libsas: Inject revalidate event for root port event (Ewan Milne) [1885733] - [scsi] scsi: libsas: Stop hardcoding SAS address length (Ewan Milne) [1885733] - [scsi] scsi: clean obsolete return values of eh_timed_out (Ewan Milne) [1885733] - [scsi] scsi: libsas: Fix some indentation in libsas.h (Ewan Milne) [1885733] - [scsi] scsi: st: mark expected switch fall-throughs (Ewan Milne) [1885733] - [scsi] scsi: libsas: delete dead code in scsi_transport_sas.c (Ewan Milne) [1885733] - [nvme] nvme-rdma: params to enable pi_capable devices (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Fix return value in __lpfc_nvme_ls_abort (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: fix axchg pointer reference after free and double frees (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Fix pointer checks and comments in (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] scsi: lpfc: Fix lpfc_nodelist leak when processing unsolicited event (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] scsi: lpfc: Remove redundant initialization to variable rc (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Response support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Abort support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvme: Add Receive LS Request and Send LS Response support to nvme (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Request support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvmet: Add Send LS Request and Abort LS Request support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvmet: Add support for NVME LS request hosthandle (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor NVME LS receive handling (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Commonize lpfc_async_xchg_ctx state and flag definitions (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor nvmet_rcv_ctx to create lpfc_async_xchg_ctx (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor lpfc nvme headers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: allow to queue requests for live queues (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Revert: Fix controller creation races with teardown flow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: only use power of two io boundaries (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix reset hang if controller died in the middle of a reset (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix NULL dereference for pci nvme controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: cancel nvme device request before disabling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Fix a missed _irqsave version of spin_lock in 'nvmet_fc_fod_op_done()' (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: serialize controller teardown sequences (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix reset hang if controller died in the middle of a reset (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix timeout handler (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix controller instance leak (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix timeout handler (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: serialize controller teardown sequences (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: have nvme_wait_freeze_timeout return if it timed out (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Disable keep-alive timer when kato is cleared to 0h (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Fix wrong return value in __nvme_fc_init_request() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Use spin_lock_irq() when taking the ctrl->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: skip noiob for zoned devices (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: call blk_mq_free_request() directly (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix oops in pt cmd execution (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Use u32 for nvme_dev.q_depth and nvme_queue.q_depth (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add ns tear down label for pt-cmd handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix a memory leak (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-passthru: Reject commands with non-sgl flags set (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: remove extra variable in create ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: set ctrl state connecting after init (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce nvme_ctrl_get_by_path() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce the passthru Kconfig option (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce the passthru configfs interface (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Add passthru enable/disable helpers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add passthru code to process commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: export nvme_find_get_ns() and nvme_put_ns() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce nvme_execute_passthru_rq to call nvme_passthru_() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: remove redundant del_work_active flag (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: create helper function to obtain command effects (Gopal Tiwari) [1857052 1853231] - [nvme] nvme-hwmon: log the controller device name (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: check successful reference in nvmet_fc_find_target_assoc (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clear any SGL flags in passthru commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix deadlock in disconnect during scan_work and/or ana_work (Gopal Tiwari) [1857052 1857051 1853231] - [acpi] nvme-pci: add support for ACPI StorageD3Enable property (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: use new shared CQ mechanism (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use xarray for ctrl ns storing (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: document nvme controller states (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: use new shared CQ mechanism (Gopal Tiwari) [1857052 1857051 1853231] - [infiniband] RDMA/core: Add protection for shared CQs used by ULPs (Gopal Tiwari) [1857052 1853231] - [infiniband] RDMA/core: Introduce shared CQ pool API (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove an unnecessary condition (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove redundant validation in nvme_start_ctrl() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: prevent SK hynix PC400 from using Write Zeroes command (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix possible hang waiting for icresp response (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: explicitly update mpath disk capacity on revalidation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove ns->disk checks (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: fix some comments issues (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove redundant segment validation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use the consistent return type of nvme_pci_iod_alloc_size() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: add a blank line after declarations (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: support for multiple Command Sets Supported and Effects log pages (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: document quirked Intel models (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose reconnect_delay and ctrl_loss_tmo via sysfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: use USEC_PER_SEC instead of magic numbers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: implement multiple I/O Command Set support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: simplify nvmet_process_resp_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: leverage request plugging (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: have queue prod/cons send list become a llist (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: optimize network stack with setting msg flags according to batch size (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: verify wwnn and wwpn format (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use unsigned type for u64 (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce flags member in nvmet_fabrics_ops (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: remove has_keyed_sgls initialization (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-loop: remove unused 'target_ctrl' in nvme_loop_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove the empty line at the beginning of nvme_should_reset() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: code cleanup for nvme_alloc_host_mem() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use unsigned for io queue depth (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-core: use u16 type for ctrl->sqsize (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-core: use u16 type for directives (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix a crash in nvme_mpath_add_disk (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix a missing completion with remove invalidation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: factor out a nvme_rdma_end_request helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix deadlock due to head->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: don't protect ns mutation with ns->head->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix bogus request queue reference put (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix deadlock between ana_work and scan_work (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix possible deadlock when I/O is blocked (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: assign completion vector correctly (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: override the value of the controller's numa node (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: set initial value for controller's numa node (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use simple suspend when a HMB is enabled (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: constify nvmet_tcp_ops (Gopal Tiwari) [1857052 1857051 1853231] - [net] net: add sock_set_keepalive (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: constify nvme_tcp_mq_ops and nvme_tcp_admin_mq_ops (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: do not call del_gendisk() on a disk that was never added (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] ipv4: add ip_sock_set_tos (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] tcp: add tcp_sock_set_syncnt (Gopal Tiwari) [1857052 1857051 1853231] - [net] tcp: add tcp_sock_set_nodelay (Gopal Tiwari) [1857052 1857051 1853231] - [net] net: add sock_no_linger (Gopal Tiwari) [1857052 1857051 1853231] - [target] net: add sock_set_reuseaddr (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] net: add sock_set_priority (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: avoid race between nvme_reap_pending_cqes() and nvme_poll() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata support for block devices (Gopal Tiwari) [1857052 1857051 1853231] - [include] nvme: add Metadata Capabilities enumerations (Gopal Tiwari) [1857052 1853231] - [nvme] nvme: set dma alignment to qword (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata characteristics for a namespace (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce NVME_INLINE_METADATA_SG_CNT (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce max_integrity_segments ctrl attribute (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: enforce extended LBA format for fabrics metadata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: introduce nvme_rdma_sgl structure (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: rename nvmet_check_data_len to nvmet_check_transfer_len (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: rename nvmet_rw_len to nvmet_rw_data_len (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: generate AEN for ns revalidate size change (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce NVME_NS_METADATA_SUPPORTED flag (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce namespace features flag (Gopal Tiwari) [1857052 1857051 1853231] - [lightnvm] lightnvm: disable interleaved metadata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: make nvme_ns_has_pi accessible to transports (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add helper to revalidate bdev and file ns (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: revalidate-ns & generate AEN from configfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: set MSG_EOR if we send last payload in the batch (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: replace zero-length array with flexible-array (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: delete an unnecessary declaration (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: make sure write/poll_queues less or equal then cpu count (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: disable streams when get stream params failed (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix io_opt limit setting (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: set MSG_SENDPAGE_NOTLAST with MSG_MORE when we have more to send (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: move send/recv error handling in the send/recv methods instead of call-sites (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: mark nvmet_ana_state static (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: set MSG_SENDPAGE_NOTLAST with MSG_MORE when we have more to send (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: replace kstrndup() with kmemdup_nul() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: dma read memory barrier for completions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: try to send request in queue_rq context (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: align addrfam list to spec (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: flush scan work on passthrough commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: define constants for identification values (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for address treq (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for ana states (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for address family (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: stop using ->queuedata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove volatile cqes (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: avoid scheduling io_work if we are already polling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clean up error handling in nvme_init_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove last_sq_tail (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add generic type-name mapping (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: centralize port enable access for configfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: avoid gcc-10 zero-length-bounds warning (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: use bh_lock in data_ready (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add ns revalidation support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: slight cleanup for kbuild test warnings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: unlink head after removing last namespace (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: set bdi capabilities once (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: revalidate after verifying identifiers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: use SRQ per completion vector (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: add an error flow for post_recv failures (Gopal Tiwari) [1857052 1853231] - [nvme] nvme: remove the magic 1024 constant in nvme_scan_ns_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: release namespace head reference on error (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: avoid an Identify Controller command for each namespace scan (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: factor out a nvme_ns_remove_by_nsid helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: consolidate chunk_sectors settings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: consolodate io settings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: revalidate namespace stream parameters (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clean up nvme_scan_work (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: refine the Qemu Identify CNS quirk (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: check namespace head shared property (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: always search for namespace head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove unused parameter (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: add LS failure messages (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: provide num dword helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Add Disconnect Association Xmt support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: track hostport handle for associations (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: add target to host LS request support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: refactor to enable target to host LS (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: rename ls_list to ls_rcv_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: perform small cleanups on unneeded checks (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Update header and host for common definitions for LS handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Update target for common definitions for LS handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Better size LS buffers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc nvmet-fc: refactor for common LS definitions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Add Disconnect Association Rcv support (Gopal Tiwari) [1857052 1857051 1853231] - [include] nvme-fc: Sync header to FC-NVME-2 rev 1.08 (Gopal Tiwari) [1857052 1853231] - [nvme] nvme-fc and nvmet-fc: revise LLDD api for LS reception and LS request (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: fix "slimmer CQ head update" (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: prevent double free in nvme_alloc_ns() error handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: fix double free of rdma queue (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: fix bonding failover possible NULL deref (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix NULL dereference when removing a referral (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: inherit stable pages constraint in the mpath stack device (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: fix typo in comment (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: Replace comma with a semicolon (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: fix deallocation of working context (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix compat address handling in several ioctls (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix controller creation races with teardown flow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: Add warning on state change failure at nvme_rdma_setup_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: cleanup namespace identifier reporting in nvme_init_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: rename __nvme_find_ns_head to nvme_find_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: release ida resources (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: Implement get_mdts controller op (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Use nvme_state_terminal helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: allocate RW ctxs according to mdts (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Add compat_ioctl handler for NVME_IOCTL_SUBMIT_IO (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: Use scnprintf() for avoiding potential buffer overflow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Remove unused return code from nvme_delete_ctrl_sync (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Re-order nvme_pci_free_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: properly print controller address (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Add get_mdts op for controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Simplify nvme_poll_irqdisable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: slimmer CQ head update (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Remove two-pass completions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Remove tag from process cq (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: check ncqr & nsqr for set-features cmd (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Check for readiness more quickly, to speed up boot time (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: code cleanup nvme_identify_ns_desc() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Don't deter users from enabling hwmon support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose hostid via sysfs for fabrics controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose hostnqn via sysfs for fabrics controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] scsi: treewide: Consolidate {get, put}_unaligned_e24() definitions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: check sscanf value for subsys serial attr (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove unused return code from nvme_alloc_ns (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: configfs code cleanup (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: make ctrl model configurable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: make ctrl-id configurable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix uninitialized-variable warning (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Use single IRQ vector for old Apple models (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme/pci: Add sleep quirk for Samsung and Toshiba drives (Gopal Tiwari) [1857052 1857051 1853231] - [md] dm: fix request-based DM to not bounce through indirect dm_make_request (Mike Snitzer) [1885650] - [md] dm: add support for REQ_NOWAIT and enable it for linear target (Mike Snitzer) [1885650] - [block] block: add QUEUE_FLAG_NOWAIT (Mike Snitzer) [1885650] - [md] dm: export dm_copy_name_and_uuid (Mike Snitzer) [1885650] - [md] dm snap persistent: simplify area_io() (Mike Snitzer) [1885650] - [md] dm thin metadata: Remove unused local variable when create thin and snap (Mike Snitzer) [1885650] - [md] dm raid: fix discard limits for raid0, raid1 and raid10 (Mike Snitzer) [1885650] - [md] dm: use dm_table_get_device_name() where appropriate in targets (Mike Snitzer) [1885650] - [md] dm table: make 'struct dm_table' definition accessible to all of DM core (Mike Snitzer) [1885650] - [md] dm: eliminate need for start_io_acct() forward declaration (Mike Snitzer) [1885650] - [md] dm: simplify __process_abnormal_io() (Mike Snitzer) [1885650] - [md] dm: push use of on-stack flush_bio down to __send_empty_flush() (Mike Snitzer) [1885650] - [md] dm thin metadata: Fix use-after-free in dm_bm_set_read_only (Mike Snitzer) [1885650] - [md] dm thin metadata: Avoid returning cmd->bm wild pointer on error (Mike Snitzer) [1885650] - [md] dm cache metadata: Avoid returning cmd->bm wild pointer on error (Mike Snitzer) [1885650] - [md] dm integrity: fix error reporting in bitmap mode after creation (Mike Snitzer) [1885650] - [md] dm crypt: Initialize crypto wait structures (Mike Snitzer) [1885650] - [md] dm mpath: fix racey management of PG initialization (Mike Snitzer) [1885650] - [md] dm writecache: handle DAX to partitions on persistent memory correctly (Mike Snitzer) [1885650] - [md] dm ioctl: Fix compilation warning (Mike Snitzer) [1885650] - [md] dm raid: Remove empty if statement (Mike Snitzer) [1885650] - [md] dm verity: Fix compilation warning (Mike Snitzer) [1885650] - [md] dm bufio: do buffer cleanup from a workqueue (Mike Snitzer) [1885650] - [md] dm verity: add "panic_on_corruption" error handling mode (Mike Snitzer) [1885650] - [md] dm: use noio when sending kobject event (Mike Snitzer) [1885650] - [md] dm writecache: add cond_resched to loop in persistent_memory_claim() (Mike Snitzer) [1885650] - [md] dm ioctl: use struct_size() helper in retrieve_deps() (Mike Snitzer) [1885650] - [md] dm writecache: skip writecache_wait when using pmem mode (Mike Snitzer) [1885650] - [md] dm writecache: correct uncommitted_block when discarding uncommitted entry (Mike Snitzer) [1885650] - [md] dm crypt: avoid truncating the logical block size (Mike Snitzer) [1885650] - [md] dm bufio: clean up rbtree block ordering (Mike Snitzer) [1885650] - [documentation] dm integrity: add status line documentation (Mike Snitzer) [1885650] - [md] dm: replace zero-length array with flexible-array (Mike Snitzer) [1885650] - [md] dm mpath: add Historical Service Time Path Selector (Mike Snitzer) [1885650] - [md] dm mpath: pass IO start time to path selector (Mike Snitzer) [1885650] - [md] dm writecache: improve performance on DDR persistent memory (Optane) (Mike Snitzer) [1885650] - [md] dm writecache: remove superfluous test in persistent_memory_claim (Mike Snitzer) [1885650] - [md] dm persistent data: switch exit_ro_spine to return void (Mike Snitzer) [1885650] - [md] dm integrity: remove set but not used variables (Mike Snitzer) [1885650] - [documentation] dm crypt: document encrypted keyring key option (Mike Snitzer) [1885650] - [md] dm crypt: support using encrypted keys (Mike Snitzer) [1885650] - [md] dm verity fec: fix hash block number in verity_fec_decode (Mike Snitzer) [1885650] - [documentation] dm integrity: document allow_discard option (Mike Snitzer) [1885650] - [net] bridge: always clear mcast matching struct on reports and leaves (Ivan Vecera) [1859244] - [net] bridge: increase multicast's default maximum number of entries (Ivan Vecera) [1859244] - [net] bridge: mark hash_elasticity as obsolete (Ivan Vecera) [1859244] - [net] bridge: multicast: use non-bh rcu flavor (Ivan Vecera) [1859244] - [net] bridge: convert multicast to generic rhashtable (Ivan Vecera) [1859244] - [net] revert "net/bridge: Replace call_rcu_bh() and rcu_barrier_bh()" (Ivan Vecera) [1859244] - [net] ip6gre: avoid tx_error when sending MLD/DAD on external tunnels (Davide Caratti) [1847838] - [nvme] nvme-rdma: fix controller reset hang during traffic (Ming Lei) [1881760] - [nvme] nvme-tcp: fix controller reset hang during traffic (Ming Lei) [1881760] - [scsi] scsi: sd: sd_zbc: Fix ZBC disk initialization (Ming Lei) [1881760] - [md] dm: update original bio sector on Zone Append (Ming Lei) [1881760] - [s390] s390/dasd: Fix zero write for FBA devices (Ming Lei) [1881760] - [block] block: restore a specific error code in bdev_del_partition (Ming Lei) [1881760] - [block] blk-stat: make q->stats->lock irqsafe (Ming Lei) [1881760] - [block] blk-iocost: ioc_pd_free() shouldn't assume irq disabled (Ming Lei) [1881760] - [block] block: fix locking in bdev_del_partition (Ming Lei) [1881760] - [block] block: release disk reference in hd_struct_free_work (Ming Lei) [1881760] - [block] loop: Set correct device size when using LOOP_CONFIGURE (Ming Lei) [1881760] - [block] loop: unset GENHD_FL_NO_PART_SCAN on LOOP_CONFIGURE (Ming Lei) [1881760] - [block] block: check queue's limits.discard_granularity in __blkdev_issue_discard() (Ming Lei) [1881760] - [block] block: don't do revalidate zones on invalid devices (Ming Lei) [1881760] - [s390] s390/dasd: fix inability to use DASD with DIAG driver (Ming Lei) [1881760] - [tools] iocost_monitor: start from the oldest usage index (Ming Lei) [1881760] - [block] iocost: Fix check condition of iocg abs_vdebt (Ming Lei) [1881760] - [block] block: Use non _rcu version of list functions for tag_set_list (Ming Lei) [1881760] - [block] blk-cgroup: show global disk stats in root cgroup io.stat (Ming Lei) [1881760] - [block] blk-cgroup: make iostat functions visible to stat printing (Ming Lei) [1881760] - [block] block: improve discard bio alignment in __blkdev_issue_discard() (Ming Lei) [1881760] - [block] block: defer flush request no matter whether we have elevator (Ming Lei) [1881760] - [block] block: make blk_timeout_init() static (Ming Lei) [1881760] - [block] Revert "blk-rq-qos: remove redundant finish_wait to rq_qos_wait." (Ming Lei) [1881760] - [block] block: relax jiffies rounding for timeouts (Ming Lei) [1881760] - [lib] sbitmap: Consider cleared bits in sbitmap_bitmap_show() (Ming Lei) [1881760] - [block] blk-cgroup: clean up indentation (Ming Lei) [1881760] - [block] blk-cgroup: remove a dead check in blk_throtl_bio (Ming Lei) [1881760] - [block] blk-cgroup: remove blkcg_bio_issue_check (Ming Lei) [1881760] - [block] blk-cgroup: move rcu locking from blkcg_bio_issue_check to blk_throtl_bio (Ming Lei) [1881760] - [kernel] cgroup: unexport cgroup_rstat_updated (Ming Lei) [1881760] - [block] blk-cgroup: remove the !bio->bi_blkg check in blkcg_bio_issue_check (Ming Lei) [1881760] - [block] block: move the initial blkg lookup into blkg_tryget_closest (Ming Lei) [1881760] - [block] block: bypass blkg_tryget_closest for the root_blkg (Ming Lei) [1881760] - [block] block: merge blkg_lookup_create and __blkg_lookup_create (Ming Lei) [1881760] - [block] block: move the bio cgroup associatation helpers to blk-cgroup.c (Ming Lei) [1881760] - [block] block: move bio_associate_blkg_from_page to mm/page_io.c (Ming Lei) [1881760] - [block] block: merge __bio_associate_blkg into bio_associate_blkg_from_css (Ming Lei) [1881760] - [block] block: really clone the block cgroup in bio_clone_blkg_association (Ming Lei) [1881760] - [block] blkcg: clean up blkg_tryget_closest() (Ming Lei) [1881760] - [block] block: remove bio_disassociate_blkg (Ming Lei) [1881760] - [md] dm: use bio_uninit instead of bio_disassociate_blkg (Ming Lei) [1881760] - [block] blk-rq-qos: remove redundant finish_wait to rq_qos_wait (Ming Lei) [1881760] - [block] blktrace: Provide event for request merging (Ming Lei) [1881760] - [fs] block: simplify sb_is_blkdev_sb (Ming Lei) [1881760] - [fs] block: mark bd_finish_claiming static (Ming Lei) [1881760] - [tty] tty/sysrq: emergency_thaw_all does not depend on CONFIG_BLOCK (Ming Lei) [1881760] - [block] blk-iocost: Use struct_size() in kzalloc_node() (Ming Lei) [1881760] - [block] block: bio: Use struct_size() in kmalloc() (Ming Lei) [1881760] - [block] block: create the request_queue debugfs_dir on registration (Ming Lei) [1881760] - [block] blk-mq: add a new blk_mq_complete_request_remote API (Ming Lei) [1881760] - [block] blk-mq: factor out a blk_mq_complete_need_ipi helper (Ming Lei) [1881760] - [block] blk-mq: remove the get_cpu/put_cpu pair in blk_mq_complete_request (Ming Lei) [1881760] - [block] blk-mq: move failure injection out of blk_mq_complete_request (Ming Lei) [1881760] - [block] blk-mq: merge the softirq vs non-softirq IPI logic (Ming Lei) [1881760] - [block] blk-mq: short cut the IPI path in blk_mq_force_complete_rq for !SMP (Ming Lei) [1881760] - [block] blk-mq: complete polled requests directly (Ming Lei) [1881760] - [block] blk-mq: remove raise_blk_irq (Ming Lei) [1881760] - [block] blk-mq: factor out a helper to reise the block softirq (Ming Lei) [1881760] - [block] blk-mq: merge blk-softirq.c into blk-mq.c (Ming Lei) [1881760] - [block] nbd: Fix memory leak in nbd_add_socket (Ming Lei) [1881760] - [block] block: make function __bio_integrity_free() static (Ming Lei) [1881760] - [block] virtio-blk: free vblk-vqs in error path of virtblk_probe() (Ming Lei) [1881760] - [block] blk-mq-debugfs: update blk_queue_flag_nameaccordingly for new flags (Ming Lei) [1881760] - [block] block: release bip in a right way in error path (Ming Lei) [1881760] - [fs] block: make function 'kill_bdev' static (Ming Lei) [1881760] - [block] loop: replace kill_bdev with invalidate_bdev (Ming Lei) [1881760] - [block] partitions/ldm: Replace uuid_copy() with import_uuid() where it makes sense (Ming Lei) [1881760] - [block] block: update hctx map when use multiple maps (Ming Lei) [1881760] - [trace] trace/events/block.h: drop kernel-doc for dropped function parameter (Ming Lei) [1881760] - [block] blk-mq: Remove redundant 'return' statement (Ming Lei) [1881760] - [block] umem: remove redundant initialization of variable ret (Ming Lei) [1881760] - [block] pktcdvd: remove redundant initialization of variable ret (Ming Lei) [1881760] - [kernel] blktrace: fix endianness for blk_log_remap() (Ming Lei) [1881760] - [kernel] blktrace: fix endianness in get_pdu_int() (Ming Lei) [1881760] - [kernel] blktrace: use errno instead of bi_status (Ming Lei) [1881760] - [block] block: nr_sects_write(): Disable preemption on seqcount write (Ming Lei) [1881760] - [nvme] block: remove the error argument to the block_bio_complete tracepoint (Ming Lei) [1881760] - [block] loop: Fix wrong masking of status flags (Ming Lei) [1881760] - [block] block/bio-integrity: don't free 'buf' if bio_integrity_add_page() failed (Ming Lei) [1881760] - [block] block: always define struct blk_integrity in genhd.h (Ming Lei) [1881760] - [s390] dasd: refactor dasd_ioctl_information (Ming Lei) [1881760] - [block] loop: Add LOOP_CONFIGURE ioctl (Ming Lei) [1881760] - [block] loop: Clean up LOOP_SET_STATUS lo_flags handling (Ming Lei) [1881760] - [block] loop: Rework lo_ioctl() __user argument casting (Ming Lei) [1881760] - [block] loop: Move loop_set_status_from_info() and friends up (Ming Lei) [1881760] - [block] loop: Factor out configuring loop from status (Ming Lei) [1881760] - [block] loop: Remove figure_loop_size() (Ming Lei) [1881760] - [block] loop: Refactor loop_set_status() size calculation (Ming Lei) [1881760] - [block] loop: Switch to set_capacity_revalidate_and_notify() (Ming Lei) [1881760] - [block] loop: Factor out setting loop device size (Ming Lei) [1881760] - [block] loop: Remove sector_t truncation checks (Ming Lei) [1881760] - [block] loop: Call loop_config_discard() only after new config is applied (Ming Lei) [1881760] - [block] block/swim3: use set_current_state macro (Ming Lei) [1881760] - [block] block: mark bio_wouldblock_error() bio with BIO_QUIET (Ming Lei) [1881760] - [block] blk-wbt: rename __wbt_update_limits to wbt_update_limits (Ming Lei) [1881760] - [block] blk-wbt: remove wbt_update_limits (Ming Lei) [1881760] - [block] blk-throttle: remove tg_drain_bios (Ming Lei) [1881760] - [block] blk-throttle: remove blk_throtl_drain (Ming Lei) [1881760] - [block] null_blk: force complete for timeout request (Ming Lei) [1881760] - [block] block: fix a warning when blkdev.h is included for !CONFIG_BLOCK builds (Ming Lei) [1881760] - [block] block: reduce part_stat_lock() scope (Ming Lei) [1881760] - [block] block: use __this_cpu_add() instead of access by smp_processor_id() (Ming Lei) [1881760] - [block] block: remove rcu_read_lock() from part_stat_lock() (Ming Lei) [1881760] - [block] block: add a blk_account_io_merge_bio helper (Ming Lei) [1881760] - [block] block: account merge of two requests (Ming Lei) [1881760] - [block] zram: nvdimm: use bio_{start, end}_io_acct and disk_{start, end}_io_acct (Ming Lei) [1881760] - [nvdimm] nvdimm: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [md] dm: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] rsxx: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] drbd: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] block: add disk/bio-based accounting helpers (Ming Lei) [1881760] - [block] block: remove the disk and queue NULL checks in blkdev_issue_flush (Ming Lei) [1881760] - [fs] block: remove the error_sector argument to blkdev_issue_flush (Ming Lei) [1881760] - [block] block: Remove unused flush_queue_delayed in struct blk_flush_queue (Ming Lei) [1881760] - [block] null_blk: Zero-initialize read buffers in non-memory-backed mode (Ming Lei) [1881760] - [include] block: Document the bio_vec properties (Ming Lei) [1881760] - [block] bio.h: Declare the arguments of the bio iteration functions const (Ming Lei) [1881760] - [block] block: Fix type of first compat_put_{, u}long() argument (Ming Lei) [1881760] - [block] block: merge part_{inc, dev}_in_flight into their only callers (Ming Lei) [1881760] - [block] block: don't call part_{inc, dec}_in_flight for blk-mq devices (Ming Lei) [1881760] - [block] block: move the blk-mq calls out of part_in_flight{, _rw} (Ming Lei) [1881760] - [block] block: mark blk_account_io_completion static (Ming Lei) [1881760] - [block] blk-mq: allow blk_mq_make_request to consume the q_usage_counter reference (Ming Lei) [1881760] - [kernel] blktrace: Report pid with note messages (Ming Lei) [1881760] - [block] iocost: don't let vrate run wild while there's no saturation signal (Ming Lei) [1881760] - [block] block: move blk_io_schedule() out of header file (Ming Lei) [1881760] - [block] block: export bio_release_pages and bio_iov_iter_get_pages (Ming Lei) [1881760] - [block] null_blk: Support REQ_OP_ZONE_APPEND (Ming Lei) [1881760] - [scsi] scsi: sd_zbc: emulate ZONE_APPEND commands (Ming Lei) [1881760] - [scsi] scsi: sd_zbc: factor out sanity checks for zoned commands (Ming Lei) [1881760] - [block] block: Modify revalidate zones (Ming Lei) [1881760] - [block] block: introduce blk_req_zone_write_trylock (Ming Lei) [1881760] - [block] block: Introduce REQ_OP_ZONE_APPEND (Ming Lei) [1881760] - [block] block: rename __bio_add_pc_page to bio_add_hw_page (Ming Lei) [1881760] - [block] block: provide fallbacks for blk_queue_zone_is_seq and blk_queue_zone_no (Ming Lei) [1881760] - [fs] block: add blk_io_schedule() for avoiding task hung in sync dio (Ming Lei) [1881760] - [block] block: don't hold part0's refcount in IO path (Ming Lei) [1881760] - [block] block: only define 'nr_sects_seq' in hd_part for 32bit SMP (Ming Lei) [1881760] - [block] bdi: fix up for "remove the name field in struct backing_dev_info" (Ming Lei) [1881760] - [fs] hfs: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] bdi: remove the name field in struct backing_dev_info (Ming Lei) [1881760] - [mtd] bdi: simplify bdi_alloc (Ming Lei) [1881760] - [block] bdi: remove bdi_register_owner (Ming Lei) [1881760] - [mm] bdi: unexport bdi_register_va (Ming Lei) [1881760] - [base] driver core: remove device_create_vargs (Ming Lei) [1881760] - [block] block: rename blk_mq_alloc_rq_maps (Ming Lei) [1881760] - [block] block: rename __blk_mq_alloc_rq_map (Ming Lei) [1881760] - [fs] udf: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] isofs: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] hfsplus: stop using ioctl_by_bdev (Ming Lei) [1881760] - [cdrom] cdrom: factor out a cdrom_multisession helper (Ming Lei) [1881760] - [cdrom] cdrom: factor out a cdrom_read_tocentry helper (Ming Lei) [1881760] - [ide] ide-cd: rename cdrom_read_tocentry (Ming Lei) [1881760] - [cdrom] block: add a cdrom_device_info pointer to struct gendisk (Ming Lei) [1881760] - [block] block: add a bio_queue_enter helper (Ming Lei) [1881760] - [block] block: replace BIO_QUEUE_ENTERED with BIO_CGROUP_ACCT (Ming Lei) [1881760] - [block] block: improve the submit_bio and generic_make_request documentation (Ming Lei) [1881760] - [block] blk-mq: make function '__blk_mq_sched_dispatch_requests' static (Ming Lei) [1881760] - [block] block: bypass ->make_request_fn for blk-mq drivers (Ming Lei) [1881760] - [md] dm: remove the make_request_fn check in device_area_is_invalid (Ming Lei) [1881760] - [block] block: remove create_io_context (Ming Lei) [1881760] - [fs] block: unexport bdev_read_page and bdev_write_page (Ming Lei) [1881760] - [scsi] scsi: merge scsi_init_sgtable into scsi_init_io (Ming Lei) [1881760] - [block] block: provide a blk_rq_map_sg variant that returns the last element (Ming Lei) [1881760] - [block] block: remove RQF_COPY_USER (Ming Lei) [1881760] - [block] block: fold bdev_unhash_inode into invalidate_partition (Ming Lei) [1881760] - [block] block: simplify block device syncing in bdev_del_partition (Ming Lei) [1881760] - [block] block: don't call invalidate_partition from blk_drop_partitions (Ming Lei) [1881760] - [s390] dasd: use blk_drop_partitions instead of badly reimplementing it (Ming Lei) [1881760] - [block] block: remove the disk argument from blk_drop_partitions (Ming Lei) [1881760] - [block] block: remove hd_struct_kill (Ming Lei) [1881760] - [block] block: cleanup hd_struct freeing (Ming Lei) [1881760] - [block] block: pass a hd_struct to delete_partition (Ming Lei) [1881760] - [block] block: refactor blkpg_ioctl (Ming Lei) [1881760] - [block] null_blk: don't allow discard for zoned mode (Ming Lei) [1881760] - [block] null_blk: return error for invalid zone size (Ming Lei) [1881760] - [block] iocost: protect iocg->abs_vdebt with iocg->waitq.lock (Ming Lei) [1881760] - [block] block: remove the bd_openers checks in blk_drop_partitions (Ming Lei) [1881760] - [block] null_blk: Cleanup zoned device initialization (Ming Lei) [1881760] - [block] null_blk: Fix zoned command handling (Ming Lei) [1881760] - [fs] block: remove unused header (Ming Lei) [1881760] - [fs] bdev: Reduce time holding bd_mutex in sync in blkdev_close() (Ming Lei) [1881760] - [trace] blk-wbt: Drop needless newlines from tracepoint format strings (Ming Lei) [1881760] - [block] blk-wbt: Use tracepoint_string() for wbt_step tracepoint string literals (Ming Lei) [1881760] - [s390] s390/dasd: remove IOSCHED_DEADLINE from DASD Kconfig (Ming Lei) [1881760] - [block] block: fix busy device checking in blk_drop_partitions again (Ming Lei) [1881760] - [block] block: fix busy device checking in blk_drop_partitions (Ming Lei) [1881760] - [block] blkcg: don't offline parent blkcg first (Ming Lei) [1881760] - [block] blkcg: rename blkcg->cgwb_refcnt to ->online_pin and always use it (Ming Lei) [1881760] - [block] null_blk: add trace in null_blk_zoned.c (Ming Lei) [1881760] - [block] null_blk: add tracepoint helpers for zoned mode (Ming Lei) [1881760] - [block] block: add a zone condition debug helper (Ming Lei) [1881760] - [block] rsxx: Replace zero-length array with flexible-array member (Ming Lei) [1881760] - [block] null_blk: describe the usage of fault injection param (Ming Lei) [1881760] - [block] null_blk: fix spurious IO errors after failed past-wp access (Ming Lei) [1881760] - [block] nbd: requeue command if the soecket is changed (Ming Lei) [1881760] - [block] nbd: enable replace socket if only one connection is configured (Ming Lei) [1881760] - [block] block/drbd: delete invalid function drbd_md_mark_dirty_ (Ming Lei) [1881760] - [block] loop: Only freeze block queue when needed (Ming Lei) [1881760] - [block] loop: Only change blocksize when needed (Ming Lei) [1881760] - [block] block: move bdevname() into block/generic-partition-rh.c (Ming Lei) [1881760] - [block] block: return NULL in blk_alloc_queue() on error (Ming Lei) [1881760] - [block] block: simplify queue allocation (Ming Lei) [1881760] - [block] Revert "blkdev: check for valid request queue before issuing flush" (Ming Lei) [1881760] - [block] null_blk: use blk_mq_init_queue_data (Ming Lei) [1881760] - [block] block: add a blk_mq_init_queue_data helper (Ming Lei) [1881760] - [block] block: move the ->devnode callback to struct block_device_operations (Ming Lei) [1881760] - [block] block: move block layer internals out of include/linux/genhd.h (Ming Lei) [1881760] - [fs] block: move guard_bio_eod to bio.c (Ming Lei) [1881760] - [block] block: unexport disk_map_sector_rcu (Ming Lei) [1881760] - [block] block: unexport disk_get_part (Ming Lei) [1881760] - [block] block: mark part_in_flight and part_in_flight_rw static (Ming Lei) [1881760] - [block] block: mark block_depr static (Ming Lei) [1881760] - [block] block: factor out requeue handling from dispatch code (Ming Lei) [1881760] - [block] block/diskstats: replace time_in_queue with sum of request times (Ming Lei) [1881760] - [block] block/diskstats: accumulate all per-cpu counters in one pass (Ming Lei) [1881760] - [block] block: merge partition-generic.c and check.c (Ming Lei) [1881760] - [block] block: move the various x86 Unix label formats out of genhd.h (Ming Lei) [1881760] - [block] partitions/msdos: remove LINUX_SWAP_PARTITION (Ming Lei) [1881760] - [block] block: move the *_PARTITION enum out of genhd.h (Ming Lei) [1881760] - [scsi] block: move struct partition out of genhd.h (Ming Lei) [1881760] - [block] block: remove block/partitions/sun.h (Ming Lei) [1881760] - [block] block: remove block/partitions/sgi.h (Ming Lei) [1881760] - [block] block: remove block/partitions/osf.h (Ming Lei) [1881760] - [block] block: remove block/partitions/karma.h (Ming Lei) [1881760] - [block] block: declare all partition detection routines in check.h (Ming Lei) [1881760] - [block] block: remove warn_no_part (Ming Lei) [1881760] - [md] block: cleanup how md_autodetect_dev is called (Ming Lei) [1881760] - [block] block: unexport read_dev_sector and put_dev_sector (Ming Lei) [1881760] - [scsi] scsi: simplify scsi_partsize (Ming Lei) [1881760] - [block] block: remove alloc_part_info and free_part_info (Ming Lei) [1881760] - [block] block: move sysfs methods shared by disks and partitions to genhd.c (Ming Lei) [1881760] - [block] block: move disk_name and related helpers out of partition-generic.c (Ming Lei) [1881760] - [fs] block: remove __bdevname (Ming Lei) [1881760] - [block] block: remove the blk_lookup_devt export (Ming Lei) [1881760] - [block] block, bfq: invoke flush_idle_tree after reparent_active_queues in pd_offline (Ming Lei) [1881760] - [block] block, bfq: make reparent_leaf_entity actually work only on leaf entities (Ming Lei) [1881760] - [block] block, bfq: turn put_queue into release_process_ref in __bfq_bic_change_cgroup (Ming Lei) [1881760] - [block] block, bfq: move forward the getting of an extra ref in bfq_bfqq_move (Ming Lei) [1881760] - [scsi] scsi: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [nvme] nvme: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [block] virtio_blk.c: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [block] block/genhd: Notify udev about capacity change (Ming Lei) [1881760] - [fs] block: fix a device invalidation regression (Ming Lei) [1881760] - [block] blk-iocost: remove duplicated lines in comments (Ming Lei) [1881760] - [block] block: sed-opal: Change the check condition for regular session validity (Ming Lei) [1881760] - [block] block: Document genhd capability flags (Ming Lei) [1881760] - [block] block: cleanup comment for blk_flush_complete_seq (Ming Lei) [1881760] - [block] block: remove unneeded argument from blk_alloc_flush_queue (Ming Lei) [1881760] - [block] block: cleanup for _blk/blk_rq_prep_clone (Ming Lei) [1881760] - [block] block: remove redundant setting of QUEUE_FLAG_DYING (Ming Lei) [1881760] - [block] block: use bio_{wouldblock, io}_error in direct_make_request (Ming Lei) [1881760] - [block] block: fix comment for blk_cloned_rq_check_limits (Ming Lei) [1881760] - [block] null_blk: Add support for init_hctx() fault injection (Ming Lei) [1881760] - [block] null_blk: Handle null_add_dev() failures properly (Ming Lei) [1881760] - [block] null_blk: Fix the null_add_dev() error path (Ming Lei) [1881760] - [block] compat_ioctl: simplify up block/ioctl.c (Ming Lei) [1881760] - [block] compat_ioctl: block: simplify compat_blkpg_ioctl() (Ming Lei) [1881760] - [block] compat_ioctl: block: move blkdev_compat_ioctl() into ioctl.c (Ming Lei) [1881760] - [block] blk-mq: insert flush request to the front of dispatch queue (Ming Lei) [1881760] - [block] block: Remove used kblockd_schedule_work_on() (Ming Lei) [1881760] - [block] null_blk: remove unused fields in 'nullb_cmd' (Ming Lei) [1881760] - [block] drbd: fifo_alloc() should use struct_size (Ming Lei) [1881760] - [block] partitions/ldm: fix spelling mistake "to" -> "too" (Ming Lei) [1881760] - [block] block: mark zone-mgmt bios with REQ_SYNC (Ming Lei) [1881760] - [block] blk-mq: Document functions for sending request (Ming Lei) [1881760] - [block] block: Allow t10-pi to be modular (Ming Lei) [1881760] - [block] blk-mq: optimise blk_mq_flush_plug_list() (Ming Lei) [1881760] - [include] list: introduce list_for_each_continue() (Ming Lei) [1881760] - [block] blk-mq: optimise rq sort function (Ming Lei) [1881760] - [block] blk-cgroup: cgroup_rstat_updated() shouldn't be called on cgroup1 (Ming Lei) [1881760] - [block] blk-cgroup: separate out blkg_rwstat under CONFIG_BLK_CGROUP_RWSTAT (Ming Lei) [1881760] - [block] blk-cgroup: reimplement basic IO stats using cgroup rstat (Ming Lei) [1881760] - [block] blk-cgroup: remove now unused blkg_print_stat_{bytes|ios}_recursive() (Ming Lei) [1881760] - [block] blk-throtl: stop using blkg->stat_bytes and ->stat_ios (Ming Lei) [1881760] - [block] bfq-iosched: Ensure bio->bi_blkg is valid before using it (Ming Lei) [1881760] - [block] bfq-iosched: stop using blkg->stat_bytes and ->stat_ios (Ming Lei) [1881760] - [block] bfq-iosched: relocate bfqg_*rwstat*() helpers (Ming Lei) [1881760] - [md] dm: fix comment in __dm_suspend() (Mike Snitzer) [1881531] - [md] dm: fold dm_process_bio() into dm_make_request() (Mike Snitzer) [1881531] - [md] dm: fix missing imposition of queue_limits from dm_wq_work() thread (Mike Snitzer) [1881531] - [md] dm: optimize max_io_len() by inlining max_io_len_target_boundary() (Mike Snitzer) [1881531] - [md] dm: push md->immutable_target optimization down to __process_bio() (Mike Snitzer) [1881531] - [md] dm: change max_io_len() to use blk_max_size_offset() (Mike Snitzer) [1881531] - [md] dm table: stack 'chunk_sectors' limit to account for target-specific splitting (Mike Snitzer) [1881531] - [block] block: allow 'chunk_sectors' to be non-power-of-2 (Mike Snitzer) [1881531] - [block] block: use lcm_not_zero() when stacking chunk_sectors (Mike Snitzer) [1881531] - [md] dm: fix bio splitting and its bio completion order for regular IO (Mike Snitzer) [1881531] - [net] net-sysfs: add backlog len and CPU id to softnet data (Paolo Abeni) [1866909] - [net] try to avoid unneeded backlog flush (Paolo Abeni) [1866909] - [net] skbuff: fix a data race in skb_queue_len() (Paolo Abeni) [1866909] - [cpuidle] cpuidle: pseries: Fix CEDE latency conversion from tb to us (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Fixup exit latency for CEDE(0) (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Add function to parse extended CEDE records (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Set the latency-hint before entering CEDE (Diego Domingos) [1608791] - [arm64] paravirt: Initialize steal time when cpu is online (Andrew Jones) [1879137]- [infiniband] i40iw: Add support to make destroy QP synchronous (Stefan Assmann) [1757949] - [fs] xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork (Carlos Maiolino) [1859160] - [fs] xfs: fix inode allocation block res calculation precedence (Carlos Maiolino) [1859160] - [fs] xfs: fix reflink quota reservation accounting error (Carlos Maiolino) [1859160] - [fs] xfs: preserve rmapbt swapext block reservation from freed blocks (Carlos Maiolino) [1859160] - [fs] xfs: fix duplicate verification from xfs_qm_dqflush() (Carlos Maiolino) [1859160] - [fs] xfs: fix unmount hang and memory leak on shutdown during quotaoff (Carlos Maiolino) [1859160] - [fs] xfs: factor out quotaoff intent AIL removal and memory free (Carlos Maiolino) [1859160] - [fs] xfs: fix incorrect test in xfs_alloc_ag_vextent_lastblock (Carlos Maiolino) [1859160] - [fs] xfs: fix regression in "cleanup xfs_dir2_block_getdents" (Carlos Maiolino) [1859160] - [fs] xfs: fix use-after-free when aborting corrupt attr inactivation (Carlos Maiolino) [1859160] - [fs] xfs: fix iclog release error check race with shutdown (Carlos Maiolino) [1859160] - [fs] xfs: Add the missed xfs_perag_put() for xfs_ifree_cluster() (Carlos Maiolino) [1859160] - [fs] xfs: clean up the error handling in xfs_swap_extents (Carlos Maiolino) [1859160] - [fs] xfs: acquire superblock freeze protection on eofblocks scans (Carlos Maiolino) [1859160] - [fs] xfs: xfs_dabuf_map should return ENOMEM when map allocation fails (Carlos Maiolino) [1859160] - [fs] xfs: fix xfs_buf_ioerror_alert location reporting (Carlos Maiolino) [1859160] - [fs] xfs: remove unnecessary null pointer checks from _read_agf callers (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_*read_agf return EAGAIN to ALLOC_FLAG_TRYLOCK callers (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_btree_get_buffunctions (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_trans_get_buf return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_trans_get_buf_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_read return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get_uncached return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_read_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_alloc return an error code (Carlos Maiolino) [1859160] - [fs] xfs: fix uninitialized variable in xfs_attr3_leaf_inactive (Carlos Maiolino) [1859160] - [fs] xfs: change return value of xfs_inode_need_cow to int (Carlos Maiolino) [1859160] - [fs] xfs: check log iovec size to make sure it's plausibly a buffer log format (Carlos Maiolino) [1859160] - [fs] xfs: make struct xfs_buf_log_format have a consistent size (Carlos Maiolino) [1859160] - [fs] xfs: complain if anyone tries to create a too-large buffer log item (Carlos Maiolino) [1859160] - [fs] xfs: clean up xfs_buf_item_get_format return value (Carlos Maiolino) [1859160] - [fs] xfs: streamline xfs_attr3_leaf_inactive (Carlos Maiolino) [1859160] - [fs] xfs: fix memory corruption during remote attr value buffer invalidation (Carlos Maiolino) [1859160] - [fs] xfs: refactor remote attr value buffer invalidation (Carlos Maiolino) [1859160] - [fs] xfs: fix IOCB_NOWAIT handling in xfs_file_dio_aio_read (Carlos Maiolino) [1859160] - [fs] xfs: Add __packed to xfs_dir2_sf_entry_t definition (Carlos Maiolino) [1859160] - [fs] xfs: fix s_maxbytes computation on 32-bit kernels (Carlos Maiolino) [1859160] - [fs] xfs: truncate should remove all blocks, not just to the end of the page cache (Carlos Maiolino) [1859160] - [fs] xfs: introduce XFS_MAX_FILEOFF (Carlos Maiolino) [1859160] - [fs] xfs: remove bogus assertion when online repair isn't enabled (Carlos Maiolino) [1859160] - [fs] xfs: Remove all strlen in all xfs_attr_* functions for attr names (Carlos Maiolino) [1859160] - [fs] xfs: fix misuse of the XFS_ATTR_INCOMPLETE flag (Carlos Maiolino) [1859160] - [fs] xfs: also remove cached ACLs when removing the underlying attr (Carlos Maiolino) [1859160] - [fs] xfs: reject invalid flags combinations in XFS_IOC_ATTRMULTI_BY_HANDLE (Carlos Maiolino) [1859160] - [fs] xfs: remove shadow variable in xfs_btree_lshift (Carlos Maiolino) [1859160] - [fs] xfs: quota: move to time64_t interfaces (Carlos Maiolino) [1859160] - [fs] xfs: Make the symbol 'xfs_rtalloc_log_count' static (Carlos Maiolino) [1859160] - [fs] libxfs: resync with the userspace libxfs (Carlos Maiolino) [1859160] - [fs] xfs: fix log reservation overflows when allocating large rt extents (Carlos Maiolino) [1859160] - [fs] xfs: fix mount failure crash on invalid iclog memory access (Carlos Maiolino) [1859160] - [fs] xfs: don't check for AG deadlock for realtime files in bunmapi (Carlos Maiolino) [1859160] - [fs] xfs: fix realtime file data space leak (Carlos Maiolino) [1859160] - [fs] xfs: allow parent directory scans to be interrupted with fatal signals (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_get_buf (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_read_buf (Carlos Maiolino) [1859160] - [fs] xfs: split xfs_da3_node_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_dir3_leafn_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_dir3_leaf_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_attr3_leaf_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_reada_buf (Carlos Maiolino) [1859160] - [fs] xfs: improve the xfs_dabuf_map calling conventions (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_dabuf_map (Carlos Maiolino) [1859160] - [fs] xfs: simplify mappedbno handling in xfs_da_{get, read}_buf (Carlos Maiolino) [1859160] - [fs] xfs: report corruption only as a regular error (Carlos Maiolino) [1859160] - [fs] xfs: Remove kmem_zone_free() wrapper (Carlos Maiolino) [1859160] - [fs] xfs: Remove kmem_zone_destroy() wrapper (Carlos Maiolino) [1859160] - [fs] xfs: Remove slab init wrappers (Carlos Maiolino) [1859160] - [fs] xfs: fix another missing include (Carlos Maiolino) [1859160] - [fs] xfs: remove XFS_IOC_FSSETDM and XFS_IOC_FSSETDM_BY_HANDLE (Carlos Maiolino) [1859160] - [fs] xfs: remove duplicated include from xfs_dir2_data.c (Carlos Maiolino) [1859160] - [fs] xfs: remove unused structure members & simple typedefs (Carlos Maiolino) [1859160] - [fs] xfs: remove unused typedef definitions (Carlos Maiolino) [1859160] - [fs] xfs: Replace function declaration by actual definition (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_qoff_logitem_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_dq_logitem_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_quotainfo_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_disk_dquot_t and xfs_dquot_t (Carlos Maiolino) [1859160] - [fs] xfs: avoid time_t in user api (Carlos Maiolino) [1859160] - [fs] xfs: don't reset the "inode core" in xfs_iread (Carlos Maiolino) [1859160] - [fs] xfs: merge the projid fields in struct xfs_icdinode (Carlos Maiolino) [1859160] - [fs] xfs: use a struct timespec64 for the in-core crtime (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->m_dirnameops (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused m_chsize field (Carlos Maiolino) [1859160] - [fs] xfs: convert open coded corruption check to use XFS_IS_CORRUPT (Carlos Maiolino) [1859160] - [fs] xfs: kill the XFS_WANT_CORRUPT_* macros (Carlos Maiolino) [1859160] - [fs] xfs: add a XFS_IS_CORRUPT macro (Carlos Maiolino) [1859160] - [fs] xfs: attach dquots before performing xfs_swap_extents (Carlos Maiolino) [1859160] - [fs] xfs: actually check xfs_btree_check_block return in xfs_btree_islastblock (Carlos Maiolino) [1859160] - [fs] xfs: always pass a valid hdr to xfs_dir3_leaf_check_int (Carlos Maiolino) [1859160] - [fs] xfs: merge xfs_dir2_data_freescan and xfs_dir2_data_freescan_int (Carlos Maiolino) [1859160] - [fs] xfs: remove the now unused dir ops infrastructure (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_get_ftype and ->data_put_ftype (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_bestfree_p (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_data_entsize (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 data block fixed offsets to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_entry_tag_p (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_entsize (Carlos Maiolino) [1859160] - [fs] xfs: replace xfs_dir3_data_endp with xfs_dir3_data_end_offset (Carlos Maiolino) [1859160] - [fs] xfs: remove the now unused ->data_entry_p method (Carlos Maiolino) [1859160] - [fs] xfs: cleanup __xfs_dir3_data_check (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_data_freescan_int (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_block_to_sf (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xchk_directory_data_bestfree (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xchk_dir_rec (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_leaf_getdents (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_block_getdents (Carlos Maiolino) [1859160] - [fs] xfs: remove the ->data_unused_p method (Carlos Maiolino) [1859160] - [fs] xfs: remove the ->data_dot_entry_p and ->data_dotdot_entry_p methods (Carlos Maiolino) [1859160] - [fs] xfs: remove the data_dotdot_offset field in struct xfs_dir_ops (Carlos Maiolino) [1859160] - [fs] xfs: remove the data_dot_offset field in struct xfs_dir_ops (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused ->data_first_entry_p method (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_ftype and ->sf_put_ftype (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_ino and ->sf_put_ino (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_entsize and ->sf_nextentry (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_parent_ino and ->sf_put_parent_ino (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->db_to_fdb and ->db_to_fdindex (Carlos Maiolino) [1859160] - [fs] xfs: move the max dir2 free bests count to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 free header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add a bests pointer to struct xfs_dir3_icfree_hdr (Carlos Maiolino) [1859160] - [fs] xfs: make the xfs_dir3_icfree_hdr available to xfs_dir2_node_addname_int (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->free_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->free_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: move the max dir2 leaf entries count to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 leaf header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add an entries pointer to struct xfs_dir3_icleaf_hdr (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->leaf_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->leaf_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: move the node header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add a btree entries pointer to struct xfs_da3_icnode_hdr (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->node_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->node_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: refactor btree node scrubbing (Carlos Maiolino) [1859160] - [fs] xfs: use unsigned int for all size values in struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move incore structures out of xfs_da_format.h (Carlos Maiolino) [1859160] - [fs] xfs: remove a stray tab in xfs_remount_rw() (Carlos Maiolino) [1859160] - [fs] xfs: convert EIO to EFSCORRUPTED when log contents are invalid (Carlos Maiolino) [1859160] - [fs] xfs: refactor "does this fork map blocks" predicate (Carlos Maiolino) [1859160] - [fs] xfs: clean up weird while loop in xfs_alloc_ag_vextent_near (Carlos Maiolino) [1859160] - [fs] xfs: annotate functions that trip static checker locking checks (Carlos Maiolino) [1859160] - [fs] xfs: Correct comment tyops -> typos (Carlos Maiolino) [1859160] - [fs] xfs: range check ri_cnt when recovering log items (Carlos Maiolino) [1859160] - [fs] xfs: "optimize" buffer item log segment bitmap setting (Carlos Maiolino) [1859160] - [fs] xfs: null out bma->prev if no previous extent (Carlos Maiolino) [1859160] - [fs] xfs: fix missing header includes (Carlos Maiolino) [1859160] - [fs] xfs: periodically yield scrub threads to the scheduler (Carlos Maiolino) [1859160] - [fs] xfs: remove redundant assignment to variable error (Carlos Maiolino) [1859160] - [fs] xfs: add missing early termination checks to record scrubbing functions (Carlos Maiolino) [1859160] - [fs] xfs: make the assertion message functions take a mount parameter (Carlos Maiolino) [1859160] - [fs] xfs: add missing assert in xfs_fsmap_owner_from_rmap (Carlos Maiolino) [1859160] - [fs] xfs: decrease indenting problems in xfs_dabuf_map (Carlos Maiolino) [1859160] - [fs] xfs: fold xfs_mount-alloc() into xfs_init_fs_context() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_parse_param() above xfs_fc_get_tree() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_get_tree() above xfs_fc_reconfigure() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_reconfigure() above xfs_fc_free() (Carlos Maiolino) [1859160] - [fs] xfs: switch to use the new mount-api (Carlos Maiolino) [1859160] - [fs] xfs: dont set sb in xfs_mount_alloc() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_parseargs() validation to a helper (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_parseags() (Carlos Maiolino) [1859160] - [fs] xfs: avoid redundant checks when options is empty (Carlos Maiolino) [1859160] - [fs] xfs: refactor suffix_kstrtoint() (Carlos Maiolino) [1859160] - [fs] xfs: add xfs_remount_ro() helper (Carlos Maiolino) [1859160] - [fs] xfs: add xfs_remount_rw() helper (Carlos Maiolino) [1859160] - [fs] xfs: merge freeing of mp names and mp (Carlos Maiolino) [1859160] - [fs] xfs: use kmem functions for struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: dont use XFS_IS_QUOTA_RUNNING() for option check (Carlos Maiolino) [1859160] - [fs] xfs: use super s_id instead of struct xfs_mount m_fsname (Carlos Maiolino) [1859160] - [fs] xfs: remove unused struct xfs_mount field m_fsname_len (Carlos Maiolino) [1859160] - [fs] xfs: always log corruption errors (Carlos Maiolino) [1859160] - [fs] xfs: constify the buffer pointer arguments to error functions (Carlos Maiolino) [1859160] - [fs] xfs: relax shortform directory size checks (Carlos Maiolino) [1859160] - [fs] xfs: cleanup use of the XFS_ALLOC_ flags (Carlos Maiolino) [1859160] - [fs] xfs: move extent zeroing to xfs_bmapi_allocate (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_bmapi_allocate (Carlos Maiolino) [1859160] - [fs] xfs: simplify the xfs_iomap_write_direct calling (Carlos Maiolino) [1859160] - [fs] xfs: don't log the inode in xfs_fs_map_blocks if it (Carlos Maiolino) [1859160] - [fs] xfs: slightly tweak an assert in xfs_fs_map_blocks (Carlos Maiolino) [1859160] - [fs] xfs: remove the extsize argument to xfs_eof_alignment (Carlos Maiolino) [1859160] - [fs] xfs: mark xfs_eof_alignment static (Carlos Maiolino) [1859160] - [fs] xfs: simplify xfs_iomap_eof_align_last_fsb (Carlos Maiolino) [1859160] - [fs] xfs: merge xfs_showargs into xfs_fs_show_options (Carlos Maiolino) [1859160] - [fs] xfs: clean up printing inode32/64 in xfs_showargs (Carlos Maiolino) [1859160] - [fs] xfs: clean up printing the allocsize option in (Carlos Maiolino) [1859160] - [fs] xfs: reverse the polarity of XFS_MOUNT_COMPAT_IOSIZE (Carlos Maiolino) [1859160] - [fs] xfs: rename the XFS_MOUNT_DFLT_IOSIZE option to (Carlos Maiolino) [1859160] - [fs] xfs: simplify parsing of allocsize mount option (Carlos Maiolino) [1859160] - [fs] xfs: rename the m_writeio_* fields in struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: remove the m_readio_* fields in struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: don't use a different allocsice for -o wsync (Carlos Maiolino) [1859160] - [fs] xfs: cleanup calculating the stat optimal I/O size (Carlos Maiolino) [1859160] - [fs] xfs: remove the dsunit and dswidth variables in (Carlos Maiolino) [1859160] - [fs] xfs: simplify setting bio flags (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_iread_extents to use xfs_btree_visit_blocks (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_bmap_count_blocks using newer btree helpers (Carlos Maiolino) [1859160] - [fs] xfs: replace -EIO with -EFSCORRUPTED for corrupt metadata (Carlos Maiolino) [1859160] - [fs] xfs: namecheck directory entry names before listing them (Carlos Maiolino) [1859160] - [fs] xfs: namecheck attribute names before listing them (Carlos Maiolino) [1859160] - [fs] xfs: check attribute leaf block structure (Carlos Maiolino) [1859160] - [fs] xfs: consolidate preallocation in xfs_file_fallocate (Carlos Maiolino) [1859160] - [fs] xfs: disable xfs_ioc_space for always COW inodes (Carlos Maiolino) [1859160] - [fs] fs: add generic UNRESVSP and ZERO_RANGE ioctl handlers (Carlos Maiolino) [1859160] - [fs] xfs: don't implement XFS_IOC_RESVSP / XFS_IOC_RESVSP64 (Carlos Maiolino) [1859160] - [fs] xfs: use xfs_inode_buftarg in xfs_file_ioctl (Carlos Maiolino) [1859160] - [fs] xfs: use xfs_inode_buftarg in xfs_file_dio_aio_write (Carlos Maiolino) [1859160] - [fs] xfs: add a xfs_inode_buftarg helper (Carlos Maiolino) [1859160] - [fs] xfs: mark xfs_buf_free static (Carlos Maiolino) [1859160] - [fs] xfs: add mising include of xfs_pnfs.h for missing declarations (Carlos Maiolino) [1859160] - [fs] xfs: don't set bmapi total block req where minleft is (Carlos Maiolino) [1859160] - [fs] xfs: cap longest free extent to maximum allocatable (Carlos Maiolino) [1859160] - [fs] xfs: remove the duplicated inode log fieldmask set (Carlos Maiolino) [1859160] - [fs] xfs: improve the IOMAP_NOWAIT check for COW inodes (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_direct_write_iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: rename the whichfork variable in xfs_buffered_write_iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: split the iomap ops for buffered vs direct writes (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_file_iomap_begin_delay around (Carlos Maiolino) [1859160] - [fs] xfs: split out a new set of read-only iomap ops (Carlos Maiolino) [1859160] - [fs] xfs: factor out a helper to calculate the end_fsb (Carlos Maiolino) [1859160] - [fs] xfs: fill out the srcmap in iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_file_iomap_begin_delay (Carlos Maiolino) [1859160] - [fs] xfs: pass two imaps to xfs_reflink_allocate_cow (Carlos Maiolino) [1859160] - [fs] xfs: remove xfs_reflink_dirty_extents (Carlos Maiolino) [1859160] - [fs] xfs: also call xfs_file_iomap_end_delalloc for zeroing operations (Carlos Maiolino) [1859160] - [fs] xfs: remove the XLOG_STATE_DO_CALLBACK state (Carlos Maiolino) [1859160] - [fs] xfs: turn ic_state into an enum (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused XLOG_STATE_ALL and XLOG_STATE_UNUSED flags (Carlos Maiolino) [1859160] - [fs] xfs: remove dead ifdef XFSERRORDEBUG code (Carlos Maiolino) [1859160] - [fs] xfs: call xlog_state_release_iclog with l_icloglock held (Carlos Maiolino) [1859160] - [fs] xfs: move the locking from xlog_state_finish_copy to the callers (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused ic_io_size field from xlog_in_core (Carlos Maiolino) [1859160] - [fs] xfs: pass the correct flag to xlog_write_iclog (Carlos Maiolino) [1859160] - [fs] xfs: optimize near mode bnobt scans with concurrent cntbt lookups (Carlos Maiolino) [1859160] - [fs] xfs: factor out tree fixup logic into helper (Carlos Maiolino) [1859160] - [fs] xfs: refactor near mode alloc bnobt scan into separate function (Carlos Maiolino) [1859160] - [fs] xfs: refactor and reuse best extent scanning logic (Carlos Maiolino) [1859160] - [fs] xfs: refactor allocation tree fixup code (Carlos Maiolino) [1859160] - [fs] xfs: reuse best extent tracking logic for bnobt scan (Carlos Maiolino) [1859160] - [fs] xfs: refactor cntbt lastblock scan best extent logic into helper (Carlos Maiolino) [1859160] - [fs] xfs: track best extent from cntbt lastblock scan in alloc cursor (Carlos Maiolino) [1859160] - [fs] xfs: track allocation busy state in allocation cursor (Carlos Maiolino) [1859160] - [fs] xfs: introduce allocation cursor data structure (Carlos Maiolino) [1859160] - [fs] xfs: track active state of allocation btree cursors (Carlos Maiolino) [1859160] - [fs] xfs: ignore extent size hints for always COW inodes (Carlos Maiolino) [1859160] - [fs] xfs: include QUOTA, FATAL ASSERT build options in XFS_BUILD_OPTIONS (Carlos Maiolino) [1859160] - [pinctrl] pinctrl: tigerlake: Add support for Tiger Lake-H (Steve Best) [1782722] - [pinctrl] pinctrl: intel: Introduce common flags for GPIO mapping scheme (Steve Best) [1782722] - [mfd] mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs (Steve Best) [1782724]- [netdrv] iavf: Fix incorrect adapter get in iavf_resume (Stefan Assmann) [1842896] - [netdrv] iavf: use generic power management (Stefan Assmann) [1842896] - [net] openvswitch: fixes crash if nf_conncount_init() fails (Eelco Chaudron) [1876445] - [fs] cifs`: handle ERRBaduid for SMB1 (Leif Sahlberg) [1875184] - [net] SUNRPC: 'Directory with parent 'rpc_clnt' already present!' (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Don't use RPC_TASK_CRED_NOREF with pnfs (Scott Mayhew) [1872310] - [fs] NFS: Don't use RPC_TASK_CRED_NOREF with delegreturn (Scott Mayhew) [1872310] - [net] SUNRPC: Signalled ASYNC tasks need to exit (Scott Mayhew) [1872310] - [net] SUNRPC: fix use-after-free in rpc_free_client_work() (Scott Mayhew) [1872310] - [fs] NFS: Fix a race in __nfs_list_for_each_server() (Scott Mayhew) [1872310] - [net] SUNRPC: defer slow parts of rpc_free_client() to a workqueue (Scott Mayhew) [1872310] - [net] SUNRPC: Revert 241b1f419f0e ("SUNRPC: Remove xdr_buf_trim()") (Scott Mayhew) [1872310] - [fs] NFSv4: Remove unreachable error condition due to rpc_run_task() (Scott Mayhew) [1872310] - [net] SUNRPC: Remove unreachable error condition (Scott Mayhew) [1872310] - [fs] nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Fix a credential use-after-free issue in pnfs_roc() (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Ensure that _pnfs_return_layout() waits for layoutreturn completion (Scott Mayhew) [1872310] - [net] svcrdma: Fix leak of svc_rdma_recv_ctxt objects (Scott Mayhew) [1872310] - [fs] NFS: Fix an ABBA spinlock issue in pnfs_update_layout() (Scott Mayhew) [1872310] - [net] SUNRPC/cache: Fix unsafe traverse caused double-free in cache_purge (Scott Mayhew) [1872310] - [fs] nfsd: memory corruption in nfsd4_lock() (Scott Mayhew) [1872310] - [fs] pNFS: Fix RCU lock leakage (Scott Mayhew) [1872310] - [fs] NFS: Clean up process of marking inode stale (Scott Mayhew) [1872310] - [fs] NFS: Add softreval behaviour to nfs_lookup_revalidate() (Scott Mayhew) [1872310] - [fs] NFS: Add mount option 'softreval' (Scott Mayhew) [1872310] - [net] SUNRPC: Don't start a timer on an already queued rpc task (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Reference the layout cred in pnfs_prepare_layoutreturn() (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Fix dereference of layout cred in pnfs_layoutcommit_inode() (Scott Mayhew) [1872310] - [fs] NFS: Beware when dereferencing the delegation cred (Scott Mayhew) [1872310] - [fs] NFS: Add a module parameter to set nfs_mountpoint_expiry_timeout (Scott Mayhew) [1872310] - [fs] NFS: Try to join page groups before an O_DIRECT retransmission (Scott Mayhew) [1872310] - [fs] NFS: Refactor nfs_lock_and_join_requests() (Scott Mayhew) [1872310] - [fs] NFS: Reverse the submission order of requests in __nfs_pageio_add_request() (Scott Mayhew) [1872310] - [fs] NFS: Clean up nfs_lock_and_join_requests() (Scott Mayhew) [1872310] - [fs] NFS: Remove the redundant function nfs_pgio_has_mirroring() (Scott Mayhew) [1872310] - [fs] NFS: Fix memory leaks in nfs_pageio_stop_mirroring() (Scott Mayhew) [1872310] - [fs] NFS: Fix a request reference leak in nfs_direct_write_clear_reqs() (Scott Mayhew) [1872310] - [fs] NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests() (Scott Mayhew) [1872310] - [fs] NFS: Remove unused FLUSH_SYNC support in nfs_initiate_pgio() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Specify the layout segment range in LAYOUTGET (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: remove requirement for whole file layouts (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Check the layout segment range before doing I/O (Scott Mayhew) [1872310] - [fs] pNFS/flexfile: Don't merge layout segments if the mirrors don't match (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Fix pnfs_layout_mark_request_commit() invalid layout segment handling (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Simplify bucket layout segment reference counting (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Clean up pNFS commit operations (Scott Mayhew) [1872310] - [fs] NFS: Remove bucket array from struct pnfs_ds_commit_info (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Add a helper pnfs_generic_search_commit_reqs() (Scott Mayhew) [1872310] - [fs] pNFS: Enable per-layout segment commit structures (Scott Mayhew) [1872310] - [fs] pNFS: Add infrastructure for cleaning up per-layout commit structures (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Support commit arrays in nfs_clear_pnfs_ds_commit_verifiers() (Scott Mayhew) [1872310] - [fs] NFS: Fix O_DIRECT commit verifier handling (Scott Mayhew) [1872310] - [fs] NFS: commit errors should be fatal (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Allow O_DIRECT to release the DS commitinfo (Scott Mayhew) [1872310] - [fs] pNFS: Support per-layout segment commits in pnfs_generic_commit_pagelist() (Scott Mayhew) [1872310] - [fs] pNFS: Support per-layout segment commits in pnfs_generic_recover_commit_reqs() (Scott Mayhew) [1872310] - [fs] NFSv4/pNFS: Scan the full list of commit arrays when committing (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Support a list of commit arrays in struct pnfs_ds_commit_info (Scott Mayhew) [1872310] - [net] SUNRPC: Fix a potential buffer overflow in 'svc_print_xprts()' (Scott Mayhew) [1872310] - [include] SUNRPC/cache: don't allow invalid entries to be flushed (Scott Mayhew) [1872310] - [fs] pNFS: Add a helper to allocate the array of buckets (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Refactor pnfs_generic_commit_pagelist() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Simplify allocation of the mirror array (Scott Mayhew) [1872310] - [fs] NFS: Don't specify NFS version in "UDP not supported" error (Scott Mayhew) [1872310] - [fs] nfsroot: set tcp as the default transport protocol (Scott Mayhew) [1872310] - [fs] NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails (Scott Mayhew) [1872310] - [fs] nfs: Fix up documentation in nfs_follow_referral() and nfs_do_submount() (Scott Mayhew) [1872310] - [net] sunrpc: Add tracing for cache events (Scott Mayhew) [1872310] - [net] SUNRPC/cache: Allow garbage collection of invalid cache entries (Scott Mayhew) [1872310] - [net] sunrpc: clean up cache entry add/remove from hashtable (Scott Mayhew) [1872310] - [net] sunrpc: Fix potential leaks in sunrpc_cache_unhash() (Scott Mayhew) [1872310] - [fs] nfsd: export upcalls must not return ESTALE when mountd is down (Scott Mayhew) [1872310] - [fs] nfsd: Don't add locks to closed or closing open stateids (Scott Mayhew) [1872310] - [net] SUNRPC: Teach server to use xprt_sock_sendmsg for socket sends (Scott Mayhew) [1872310] - [net] SUNRPC: Refactor xs_sendpages() (Scott Mayhew) [1872310] - [fs] NFSD: Clean up nfsd4_encode_readv (Scott Mayhew) [1872310] - [fs] fs: nfsd: nfs4state.c: Use built-in RCU list checking (Scott Mayhew) [1872310] - [net] sunrpc: Pass lockdep expression to RCU lists (Scott Mayhew) [1872310] - [include] sunrpc: Replace zero-length array with flexible-array member (Scott Mayhew) [1872310] - [net] SUNRPC: Trim stack utilization in the wrap and unwrap paths (Scott Mayhew) [1872310] - [net] SUNRPC: Remove xdr_buf_read_mic() (Scott Mayhew) [1872310] - [net] sunrpc: Fix gss_unwrap_resp_integ() again (Scott Mayhew) [1872310] - [fs] nfs: Replace zero-length array with flexible-array member (Scott Mayhew) [1872310] - [fs] NFSv4.2: error out when relink swapfile (Scott Mayhew) [1872310] - [fs] NFS:remove redundant call to nfs_do_access (Scott Mayhew) [1872310] - [net] SUNRPC: remove redundant assignments to variable status (Scott Mayhew) [1872310] - [fs] NFSv4: Add support for CB_RECALL_ANY for flexfiles layouts (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_delegation_reap_expired() (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_delegation_reap_unclaimed() (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_client_return_marked_delegations() (Scott Mayhew) [1872310] - [fs] NFS: Add a helper nfs_client_for_each_server() (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Clean up nfs_layout_find_inode() (Scott Mayhew) [1872310] - [fs] NFSv4: Ensure layout headers are RCU safe (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Report DELAY and GRACE errors from the DS to the server (Scott Mayhew) [1872310] - [fs] NFS: Limit the size of the access cache by default (Scott Mayhew) [1872310] - [fs] NFS: Avoid referencing the cred twice in async rename/unlink (Scott Mayhew) [1872310] - [fs] NFSv4: Avoid unnecessary credential references in layoutget (Scott Mayhew) [1872310] - [fs] NFSv4: Avoid referencing the cred unnecessarily during NFSv4 I/O (Scott Mayhew) [1872310] - [fs] NFS: Assume cred is pinned by open context in I/O requests (Scott Mayhew) [1872310] - [net] SUNRPC: Don't take a reference to the cred on synchronous tasks (Scott Mayhew) [1872310] - [net] SUNRPC: Add a flag to avoid reference counts on credentials (Scott Mayhew) [1872310] - [fs] NFS: Ensure we time out if a delegreturn does not complete (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: pnfs_set_layout_stateid() should update the layout cred (Scott Mayhew) [1872310] - [fs] NFSv4: nfs_update_inplace_delegation() should update delegation cred (Scott Mayhew) [1872310] - [fs] NFS: Use the 64-bit server readdir cookies when possible (Scott Mayhew) [1872310] - [net] Documentation: nfsroot.rst: Fix references to nfsroot.rst (Scott Mayhew) [1872310] - [fs] nfs: add missing "posix" local_lock constant table definition (Scott Mayhew) [1622041] - [samples] samples/vfs: avoid warning in statx override (Scott Mayhew) [1622041] - [fs] Fix use after free in get_tree_bdev() (Scott Mayhew) [1622041] - [security] selinux: fix regression introduced by move_mount(2) syscall (Scott Mayhew) [1622041] - [fs] mm/hugetlbfs: fix for_each_hstate() loop in init_hugetlbfs_fs() (Scott Mayhew) [1622041] - [fs] mm/hugetlbfs: fix error handling when setting up mounts (Scott Mayhew) [1622041] - [fs] cramfs: fix usage on non-MTD device (Scott Mayhew) [1622041] - [fs] vfs: move_mount: reject moving kernel internal mounts (Scott Mayhew) [1622041] - [fs] do_move_mount(): fix an unsafe use of is_anon_ns() (Scott Mayhew) [1622041] - [fs] fs/namespace: fix unprivileged mount propagation (Scott Mayhew) [1622041] - [fs] vfs: fsmount: add missing mntget() (Scott Mayhew) [1622041] - [fs] get rid of checking for absent device name in vfs_get_tree() (Scott Mayhew) [1622041] - [scripts] scripts/gdb: replace flags (MS_xyz -> SB_xyz) (Scott Mayhew) [1622041] - [mm] tmpfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [kernel] cgroup1: switch to use of errorfc() et.al (Scott Mayhew) [1622041] - [fs] procfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [fs] hugetlbfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [fs] cramfs: switch to use of errofc() et.al (Scott Mayhew) [1622041] - [fs] gfs2: switch to use of errorfc() et.al (Scott Mayhew) [1622041] - [include] prefix-handling analogues of errorf() and friends (Scott Mayhew) [1622041] - [fs] turn fs_param_is_... into functions (Scott Mayhew) [1622041] - [fs] fs_parse: handle optional arguments sanely (Scott Mayhew) [1622041] - [fs] fs_parse: fold fs_parameter_desc/fs_parameter_spec (Scott Mayhew) [1622041] - [x86] x86/resctrl: Fix typos in the mba_sc mount option (Scott Mayhew) [1622041] - [fs] fs_parser: remove fs_parameter_description name field (Scott Mayhew) [1622041] - [documentation] vfs: Update mount API docs (Scott Mayhew) [1622041] - [fs] add prefix to fs_context->log (Scott Mayhew) [1622041] - [include] new primitive: __fs_parse() (Scott Mayhew) [1622041] - [include] struct p_log, variants of warnf() et.al. taking that one instead (Scott Mayhew) [1622041] - [fs] teach logfc() to handle prefices, give it saner calling conventions (Scott Mayhew) [1622041] - [kernel] get rid of cg_invalf() (Scott Mayhew) [1622041] - [fs] get rid of fs_value_is_filename_empty (Scott Mayhew) [1622041] - [fs] don't bother with explicit length argument for __lookup_constant() (Scott Mayhew) [1622041] - [fs] fold struct fs_parameter_enum into struct constant_table (Scott Mayhew) [1622041] - [fs] fs_parse: get rid of ->enums (Scott Mayhew) [1622041] - [fs] fs: fs_parser: fix printk format warning (Scott Mayhew) [1622041] - [fs] Pass consistent param->type to fs_parse() (Scott Mayhew) [1622041] - [fs] vfs: add missing blkdev_put() in get_tree_bdev() (Scott Mayhew) [1622041] - [mm] shmem: fix LSM options parsing (Scott Mayhew) [1622041] - [fs] gfs2: make gfs2_fs_parameters static (Scott Mayhew) [1622041] - [fs] gfs2: Fix initialisation of args for remount (Scott Mayhew) [1622041] - [fs] gfs2: Fix memory leak when gfs2meta's fs_context is freed (Scott Mayhew) [1622041] - [fs] gfs2: Convert gfs2 to fs_context (Scott Mayhew) [1622041] - [fs] NFS: Fix fscache super_cookie allocation (Scott Mayhew) [1622041] - [fs] NFS: Fix a few constant_table array definitions (Scott Mayhew) [1622041] - [fs] NFS: Fix leak of ctx->nfs_server.hostname (Scott Mayhew) [1622041] - [fs] NFS: Don't hard-code the fs_type when submounting (Scott Mayhew) [1622041] - [fs] NFS: Ensure the fs_context has the correct fs_type before mounting (Scott Mayhew) [1622041] - [fs] nfs: Return EINVAL rather than ERANGE for mount parse errors (Scott Mayhew) [1622041] - [fs] NFS: Attach supplementary error information to fs_context (Scott Mayhew) [1622041] - [fs] NFS: Additional refactoring for fs_context conversion (Scott Mayhew) [1622041] - [fs] NFS: Add fs_context support (Scott Mayhew) [1622041] - [fs] NFS: Convert mount option parsing to use functionality from fs_parser.h (Scott Mayhew) [1622041] - [fs] NFS: rename nfs_fs_context pointer arg in a few functions (Scott Mayhew) [1622041] - [fs] NFS: Do some tidying of the parsing code (Scott Mayhew) [1622041] - [fs] NFS: Add a small buffer in nfs_fs_context to avoid string dup (Scott Mayhew) [1622041] - [fs] NFS: Deindent nfs_fs_context_parse_option() (Scott Mayhew) [1622041] - [fs] NFS: Split nfs_parse_mount_options() (Scott Mayhew) [1622041] - [fs] NFS: Rename struct nfs_parsed_mount_data to struct nfs_fs_context (Scott Mayhew) [1622041] - [fs] NFS: Constify mount argument match tables (Scott Mayhew) [1622041] - [fs] NFS: Move mount parameterisation bits into their own file (Scott Mayhew) [1622041] - [fs] nfs: get rid of ->set_security() (Scott Mayhew) [1622041] - [fs] nfs_clone_sb_security(): simplify the check for server bogosity (Scott Mayhew) [1622041] - [fs] nfs: get rid of mount_info ->fill_super() (Scott Mayhew) [1622041] - [fs] nfs: don't pass nfs_subversion to ->create_server() (Scott Mayhew) [1622041] - [fs] nfs: unexport nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] nfs: merge xdev and remote file_system_type (Scott Mayhew) [1622041] - [fs] nfs: don't bother passing nfs_subversion to ->try_mount() and nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] nfs: stash nfs_subversion reference into nfs_mount_info (Scott Mayhew) [1622041] - [fs] nfs: lift setting mount_info from nfs_xdev_mount() (Scott Mayhew) [1622041] - [fs] nfs4: fold nfs_do_root_mount/nfs_follow_remote_path (Scott Mayhew) [1622041] - [fs] nfs: don't bother setting/restoring export_path around do_nfs_root_mount() (Scott Mayhew) [1622041] - [fs] nfs: fold nfs4_remote_fs_type and nfs4_remote_referral_fs_type (Scott Mayhew) [1622041] - [fs] nfs: lift setting mount_info from nfs4_remote{, _referral}_mount (Scott Mayhew) [1622041] - [fs] nfs: stash server into struct nfs_mount_info (Scott Mayhew) [1622041] - [fs] saner calling conventions for nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] NFS: Make "port=" mount option optional for RDMA mounts (Scott Mayhew) [1622041] - [fs] vfs: Make fs_parse() handle fs_param_is_fd-type params better (Scott Mayhew) [1622041] - [include] vfs: Convert ramfs, shmem, tmpfs, devtmpfs, rootfs to use the new mount API (Scott Mayhew) [1622041] - [mm] shmem_parse_one(): switch to use of fs_parse() (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): take handling a single option into a helper (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): don't bother with mpol in separate variable (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): use a separate structure to keep the results (Scott Mayhew) [1622041] - [base] make shmem_fill_super() static (Scott Mayhew) [1622041] - [fs] make ramfs_fill_super() static (Scott Mayhew) [1622041] - [base] devtmpfs: don't mix {ramfs, shmem}_fill_super() with mount_single() (Scott Mayhew) [1622041] - [fs] vfs: Convert squashfs to use the new mount API (Scott Mayhew) [1622041] - [mtd] mtd: Kill mount_mtd() (Scott Mayhew) [1622041] - [fs] vfs: Convert cramfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Add a single-or-reconfig keying to vfs_get_super() (Scott Mayhew) [1622041] - [mtd] mtd: Provide fs_context-aware mount_mtd() replacement (Scott Mayhew) [1622041] - [fs] vfs: Create fs_context-aware mount_bdev() replacement (Scott Mayhew) [1622041] - [fs] new helper: get_tree_keyed() (Scott Mayhew) [1622041] - [fs] vfs: set fs_context::user_ns for reconfigure (Scott Mayhew) [1622041] - [init] mnt_init(): call shmem_init() unconditionally (Scott Mayhew) [1622041] - [base] constify ksys_mount() string arguments (Scott Mayhew) [1622041] - [fs] don't bother with registering rootfs (Scott Mayhew) [1622041] - [fs] init_rootfs(): don't bother with init_ramfs_fs() (Scott Mayhew) [1622041] - [security] vfs: Convert selinuxfs to use the new mount API (Scott Mayhew) [1622041] - [security] vfs: Convert securityfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert openpromfs to use the new mount API (Scott Mayhew) [1622041] - [xen] vfs: Convert xenfs to use the new mount API (Scott Mayhew) [1622041] - [oprofile] vfs: Convert oprofilefs to use the new mount API (Scott Mayhew) [1622041] - [misc] vfs: Convert ibmasmfs to use the new mount API (Scott Mayhew) [1622041] - [infiniband] vfs: Convert qib_fs/ipathfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert efivarfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert configfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert binfmt_misc to use the new mount API (Scott Mayhew) [1622041] - [fs] convenience helper: get_tree_single() (Scott Mayhew) [1622041] - [fs] convenience helper get_tree_nodev() (Scott Mayhew) [1622041] - [fs] vfs: Kill sget_userns() (Scott Mayhew) [1622041] - [fs] vfs: Use sget_fc() for pseudo-filesystems (Scott Mayhew) [1622041] - [dma-buf] fold mount_pseudo_xattr() into pseudo_fs_get_tree() (Scott Mayhew) [1622041] - [virtio] vfs: Convert virtio_balloon to use the new mount API (Scott Mayhew) [1622041] - [scsi] vfs: Convert ocxlflash to use the new mount API (Scott Mayhew) [1622041] - [misc] vfs: Convert cxl to use the new mount API (Scott Mayhew) [1622041] - [drm] vfs: Convert drm to use the new mount API (Scott Mayhew) [1622041] - [dax] vfs: Convert dax to use the new mount API (Scott Mayhew) [1622041] - [net] vfs: Convert sockfs to use the new mount API (Scott Mayhew) [1622041] - [mm] vfs: Convert zsmalloc to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert pipe to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert nsfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert bdev to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert anon_inodes to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert aio to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Provide a mount_pseudo-replacement for the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Provide sb->s_iflags settings in fs_context struct (Scott Mayhew) [1622041] - [fs] vfs: Fix refcounting of filenames in fs_parser (Scott Mayhew) [1622041] - [fs] move mount_capable() further out (Scott Mayhew) [1622041] - [fs] move mount_capable() calls to vfs_get_tree() (Scott Mayhew) [1622041] - [kernel] cpuset: move mount -t cpuset logics into cgroup.c (Scott Mayhew) [1622041] - [fs] procfs: set ->user_ns before calling ->get_tree() (Scott Mayhew) [1622041] - [ipc] mqueue: set ->user_ns before ->get_tree() (Scott Mayhew) [1622041] - [fs] switch mount_capable() to fs_context (Scott Mayhew) [1622041] - [fs] legacy_get_tree(): pass fc->user_ns to mount_capable() (Scott Mayhew) [1622041] - [fs] move the capability checks from sget_userns() to legacy_get_tree() (Scott Mayhew) [1622041] - [fs] vfs: Kill mount_ns() (Scott Mayhew) [1622041] - [fs] vfs: Convert nfsctl to use the new mount API (Scott Mayhew) [1622041] - [net] vfs: Convert rpc_pipefs to use the new mount API (Scott Mayhew) [1622041] - [fs] consolidate the capability checks in sget_{fc, userns}() (Scott Mayhew) [1622041] - [fs] start massaging the checks in sget_...(): move to sget_userns() (Scott Mayhew) [1622041] - [x86] no need to protect against put_user_ns(NULL) (Scott Mayhew) [1622041] - [fs] mount_pseudo(): drop 'name' argument, switch to d_make_root() (Scott Mayhew) [1622041] - [mm] zsmalloc: don't bother with dentry_operations (Scott Mayhew) [1622041] - [virtio] balloon: don't bother with dentry_operations (Scott Mayhew) [1622041] - [scsi] cxlflash: don't bother with dentry_operations (Scott Mayhew) [1622041] - [misc] cxl: don't bother with dentry_operations (Scott Mayhew) [1622041] - [fs] fs: VALIDATE_FS_PARSER should default to n (Scott Mayhew) [1622041] - [security] selinux: fix a missing-check bug in selinux_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] selinux: fix a missing-check bug in selinux_add_mnt_opt( ) (Scott Mayhew) [1622041] - [powerpc] uapi: Wire up the mount API syscalls on non-x86 arches (Scott Mayhew) [1622041] - [x86] uapi, x86: Fix the syscall numbering of the mount API syscalls (Scott Mayhew) [1622041] - [fs] uapi, fsopen: use square brackets around "fscontext" (Scott Mayhew) [1622041] - [samples] vfs: Add a sample program for the new mount API (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add fspick() to select a superblock for reconfiguration (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add fsmount() to create a mount for a superblock (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add fsconfig() for configuring and managing a context (Scott Mayhew) [1622041] - [fs] vfs: Implement logging through fs_context (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add fsopen() to prepare for superblock creation (Scott Mayhew) [1622041] - [fs] Make anon_inodes unconditional (Scott Mayhew) [1622041] - [fs] teach move_mount(2) to work with OPEN_TREE_CLONE (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add move_mount(2) to move mounts around (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add open_tree(2) to reference or clone a mount (Scott Mayhew) [1622041] - [fs] fix sysfs_init_fs_context() in !CONFIG_NET_NS case (Scott Mayhew) [1622041] - [fs] vfs: Add some logging to the core users of the fs_context log (Scott Mayhew) [1622041] - [fs] vfs: Implement logging through fs_context (Scott Mayhew) [1622041] - [documentation] vfs: Provide documentation for new mount API (Scott Mayhew) [1622041] - [fs] vfs: Remove kern_mount_data() (Scott Mayhew) [1622041] - [fs] hugetlbfs: Convert to fs_context (Scott Mayhew) [1622041] - [kernel] cpuset: Use fs_context (Scott Mayhew) [1622041] - [fs] kernfs, sysfs, cgroup, intel_rdt: Support fs_context (Scott Mayhew) [1622041] - [kernel] cgroup: store a reference to cgroup_ns into cgroup_fs_context (Scott Mayhew) [1622041] - [kernel] cgroup1_get_tree(): separate "get cgroup_root to use" into a separate helper (Scott Mayhew) [1622041] - [kernel] cgroup_do_mount(): massage calling conventions (Scott Mayhew) [1622041] - [kernel] cgroup: stash cgroup_root reference into cgroup_fs_context (Scott Mayhew) [1622041] - [kernel] cgroup2: switch to option-by-option parsing (Scott Mayhew) [1622041] - [kernel] cgroup1: switch to option-by-option parsing (Scott Mayhew) [1622041] - [kernel] cgroup: take options parsing into ->parse_monolithic() (Scott Mayhew) [1622041] - [kernel] cgroup: fold cgroup1_mount() into cgroup1_get_tree() (Scott Mayhew) [1622041] - [kernel] cgroup: start switching to fs_context (Scott Mayhew) [1622041] - [ipc] ipc: Convert mqueue fs to fs_context (Scott Mayhew) [1622041] - [fs] proc: Add fs_context support to procfs (Scott Mayhew) [1622041] - [fs] procfs: Move proc_fill_super() to fs/proc/root.c (Scott Mayhew) [1622041] - [include] introduce cloning of fs_context (Scott Mayhew) [1622041] - [fs] convenience helpers: vfs_get_super() and sget_fc() (Scott Mayhew) [1622041] - [fs] vfs: Implement a filesystem superblock creation/configuration context (Scott Mayhew) [1622041] - [include] vfs: Put security flags into the fs_context struct (Scott Mayhew) [1622041] - [security] selinux: Implement the new mount API LSM hooks (Scott Mayhew) [1622041] - [include] vfs: Add LSM hooks for the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Add configuration parser helpers (Scott Mayhew) [1622041] - [include] vfs: Introduce logging functions (Scott Mayhew) [1622041] - [fs] introduce fs_context methods (Scott Mayhew) [1622041] - [fs] fs_context flavour for submounts (Scott Mayhew) [1622041] - [fs] convert do_remount_sb() to fs_context (Scott Mayhew) [1622041] - [fs] vfs_get_tree(): evict the call of security_sb_kern_mount() (Scott Mayhew) [1622041] - [fs] new helper: do_new_mount_fc() (Scott Mayhew) [1622041] - [fs] teach vfs_get_tree() to handle subtype, switch do_new_mount() to it (Scott Mayhew) [1622041] - [fs] new helpers: vfs_create_mount(), fc_mount() (Scott Mayhew) [1622041] - [fs] vfs: Introduce fs_context, switch vfs_kern_mount() to it (Scott Mayhew) [1622041] - [fs] saner handling of temporary namespaces (Scott Mayhew) [1622041] - [fs] separate copying and locking mount tree on cross-userns copies (Scott Mayhew) [1622041] - [fs] kill kernfs_pin_sb() (Scott Mayhew) [1622041] - [fs] mount_fs: suppress MAC on MS_SUBMOUNT as well as MS_KERNMOUNT (Scott Mayhew) [1622041] - [security] LSM: new method: ->sb_add_mnt_opt() (Scott Mayhew) [1622041] - [security] selinux: rewrite selinux_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] selinux: regularize Opt_... names a bit (Scott Mayhew) [1622041] - [security] selinux: switch away from match_token() (Scott Mayhew) [1622041] - [security] selinux: new helper - selinux_add_opt() (Scott Mayhew) [1622041] - [include] LSM: bury struct security_mnt_opts (Scott Mayhew) [1622041] - [security] selinux: switch to private struct selinux_mnt_opts (Scott Mayhew) [1622041] - [fs] LSM: hide struct security_mnt_opts from any generic code (Scott Mayhew) [1622041] - [security] LSM: turn sb_eat_lsm_opts() into a method (Scott Mayhew) [1622041] - [fs] nfs_remount(): don't leak, don't ignore LSM options quietly (Scott Mayhew) [1622041] - [security] LSM: split ->sb_set_mnt_opts() out of ->sb_kern_mount() (Scott Mayhew) [1622041] - [fs] new helper: security_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] LSM: lift extracting and parsing LSM options into the caller of ->sb_remount() (Scott Mayhew) [1622041] - [security] LSM: lift parsing LSM options into the caller of ->sb_kern_mount() (Scott Mayhew) [1622041] - [fs] vfs: Separate changing mount flags full remount (Scott Mayhew) [1622041] - [fs] vfs: Suppress MS_* flag defs within the kernel unless explicitly enabled (Scott Mayhew) [1622041]- [hv] hv_utils: drain the timesync packets on onchannelcallback (Vitaly Kuznetsov) [1884733] - [hv] hv_utils: return error if host timesysnc update is stale (Vitaly Kuznetsov) [1884733] - [netdrv] hv_netvsc: Cache the current data path to avoid duplicate call and message (Mohammed Gamal) [1876527] - [netdrv] hv_netvsc: Switch the data path at the right time during hibernation (Mohammed Gamal) [1876527] - [netdrv] hv_netvsc: Fix hibernation for mlx5 VF driver (Mohammed Gamal) [1876527] - [hv] hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume() (Mohammed Gamal) [1876519] - [target] scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix hang in iscsit_access_np() when getting tpg->np_login_sem (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix data digest calculation (Maurizio Lombardi) [1880395] - [target] scsi: target: Make iscsit_register_transport() return void (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Make TMR notification optional (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Implement tmr_notify callback (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix and simplify timeout handling (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Factor out new helper ring_insert_padding (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Do not queue aborted commands (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Use priv pointer in se_cmd (Maurizio Lombardi) [1880395] - [target] scsi: target: Add tmr_notify backend function (Maurizio Lombardi) [1880395] - [target] scsi: target: Modify core_tmr_abort_task() (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix inconsistent debug message (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix login error when receiving (Maurizio Lombardi) [1880395] - [target] scsi: target: Remove unused variable 'tpg' (Maurizio Lombardi) [1880395] - [target] scsi: target: cxgbit: Remove tx flow control code (Maurizio Lombardi) [1880395] - [target] scsi: target: cxgbit: Check connection state before issuing hardware command (Maurizio Lombardi) [1880395] - [target] scsi: target: Handle short iSIDs (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id buf len calculation (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id buffer setup (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id parsing (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix crash during SPEC_I_PT handling (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix xcopy sess release leak (Maurizio Lombardi) [1880395] - [target] scsi: target: Check enforce_pr_isids during registration (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix crash on ARM during cmd completion (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Optimize use of flush_dcache_page (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Remove unnecessary bit TCMU_CMD_BIT_INFLIGHT (Maurizio Lombardi) [1880395] - [target] scsi: target: Rename target_setup_cmd_from_cdb() to target_cmd_parse_cdb() (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix NULL pointer dereference (Maurizio Lombardi) [1880395] - [target] scsi: target: Initialize LUN in transport_init_se_cmd() (Maurizio Lombardi) [1880395] - [target] scsi: target: Factor out a new helper, target_cmd_init_cdb() (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix size in calls to tcmu_flush_dcache_range (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix a use after free in tcmu_check_expired_queue_cmd() (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Userspace must not complete queued commands (Maurizio Lombardi) [1880395] - [target] scsi: target: core: Add initiatorname to NON_EXISTENT_LUN error (Maurizio Lombardi) [1880395] - [target] scsi: target: loopback: Fix READ with data and sensebytes (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Make pgr_support and alua_support attributes writable (Maurizio Lombardi) [1880395] - [target] scsi: target: Make transport_flags per device (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Add attributes enforce_pr_isids and force_pr_aptpl (Maurizio Lombardi) [1880395] - [target] scsi: target: Add missing emulate_pr attribute to passthrough backends (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Remove the iscsi_data_count structure (Maurizio Lombardi) [1880395] - [target] scsi: target: Put lun_ref at end of tmr processing (Maurizio Lombardi) [1880395] - [target] scsi: target/iblock: fix WRITE SAME zeroing (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN (Maurizio Lombardi) [1880395] - [target] scsi: target: fix PR IN / READ FULL STATUS for FC (Maurizio Lombardi) [1880395] - [target] scsi: target: Write NULL to *port_nexus_ptr if no ISID (Maurizio Lombardi) [1880395] - [target] scsi: target: use the stack for XCOPY passthrough cmds (Maurizio Lombardi) [1880395] - [target] scsi: target: increase XCOPY I/O size (Maurizio Lombardi) [1880395] - [target] scsi: target: avoid per-loop XCOPY buffer allocations (Maurizio Lombardi) [1880395] - [target] scsi: target: drop xcopy DISK BLOCK LENGTH debug (Maurizio Lombardi) [1880395] - [target] scsi: target: use #define for xcopy descriptor len (Maurizio Lombardi) [1880395] - [crypto] crypto: testmgr - mark cts(cbc(aes)) as FIPS allowed (Vladis Dronov) [1855161] - [kernel] sched/deadline: Unthrottle PI boosted threads while enqueuing (Daniel Bristot de Oliveira) [1869760] - [kernel] sched/deadline: Fix stale throttling on de-/boosted tasks (Daniel Bristot de Oliveira) [1869760] - [netdrv] treewide: Use fallthrough pseudo-keyword (Jonathan Toppins) [1871286] - [netdrv] tg3: Avoid the use of one-element array (Jonathan Toppins) [1871286] - [netdrv] net: tg3: tidy up loop, remove need to compute off with a multiply (Jonathan Toppins) [1871286] - [netdrv] net: tg3: reject unsupported coalescing params (Jonathan Toppins) [1871286] - [netdrv] net: tg3: use skb_list_walk_safe helper for gso segments (Jonathan Toppins) [1871286] - [gpio] gpio: gpio-mlxbf2.c: Provide __releases() annotation to stop confusing Sparse (Alaa Hleihel) [1816931] - [gpio] gpio: gpio-mlxbf2: Tell the compiler that ACPI functions may not be use (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: Fix sleeping while holding spinlock (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: fix return value check in mlxbf2_gpio_get_lock_res() (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: remove unused including (Alaa Hleihel) [1816931] - [gpio] gpio: add driver for Mellanox BlueField 2 GPIO controller (Alaa Hleihel) [1816931] - [include] compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use (Ivan Vecera) [1867168] - [net] net: sctp: Rename fallthrough label to unhandled (Ivan Vecera) [1867168]- [pci] PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken (Myron Stowe) [1888310] - [netdrv] nfp: flower: fix ABI mismatch between driver and firmware (Ivan Vecera) [1886717] - [netdrv] netronome: fix ipv6 link error (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix incorrect flag assignment (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix used time of merge flow statistics (Ivan Vecera) [1886717] - [netdrv] nfp: flower: inform firmware of flower features (Ivan Vecera) [1886717] - [netdrv] nfp: flower: renaming of feature bits (Ivan Vecera) [1886717] - [netdrv] nfp: don't check lack of RX/TX channels (Ivan Vecera) [1886717] - [netdrv] nfp: abm: fix error return code in nfp_abm_vnic_alloc() (Ivan Vecera) [1886717] - [netdrv] nfp: abm: fix a memory leak bug (Ivan Vecera) [1886717] - [netdrv] net/nfp: Update driver to use global kernel version (Ivan Vecera) [1886717] - [netdrv] nfp: allow explicitly selected delayed stats (Ivan Vecera) [1886717] - [netdrv] net: nfp: Use scnprintf() for avoiding potential buffer overflow (Ivan Vecera) [1886717] - [netdrv] nfp: let core reject the unsupported coalescing parameters (Ivan Vecera) [1886717] - [netdrv] nfp: Use pci_get_dsn() (Ivan Vecera) [1886717] - [netdrv] netronome: Replace zero-length array with flexible-array member (Ivan Vecera) [1886717] - [netdrv] devlink: move devlink documentation to subfolder (Ivan Vecera) [1886717] - [netdrv] remove ioremap_nocache and devm_ioremap_nocache (Ivan Vecera) [1886717] - [netdrv] nfp: tls: implement the stream sync RX resync (Ivan Vecera) [1886717] - [netdrv] nfp: pass packet pointer to nfp_net_parse_meta() (Ivan Vecera) [1886717] - [netdrv] nfp: flower: update flow merge code to support IPv6 tunnels (Ivan Vecera) [1886717] - [netdrv] nfp: flower: support ipv6 tunnel keep-alive messages from fw (Ivan Vecera) [1886717] - [netdrv] nfp: flower: handle notifiers for ipv6 route changes (Ivan Vecera) [1886717] - [netdrv] nfp: flower: handle ipv6 tunnel no neigh request (Ivan Vecera) [1886717] - [netdrv] nfp: flower: modify pre-tunnel and set tunnel action for ipv6 (Ivan Vecera) [1886717] - [netdrv] nfp: flower: offload list of IPv6 tunnel endpoint addresses (Ivan Vecera) [1886717] - [netdrv] nfp: flower: compile match for IPv6 tunnels (Ivan Vecera) [1886717] - [netdrv] nfp: flower: move udp tunnel key match compilation to helper function (Ivan Vecera) [1886717] - [netdrv] nfp: flower: pass flow rule pointer directly to match functions (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix stats id allocation (Ivan Vecera) [1886717] - [netdrv] netronome: use the new txqueue timeout argument (Ivan Vecera) [1886717] - [netdrv] nfp: add support for TLV device stats (Ivan Vecera) [1886717] - [netdrv] treewide: Use sizeof_field() macro (Ivan Vecera) [1886717] - [netdrv] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: make array exp_mask static, makes object smaller (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix memory leak in nfp_flower_spawn_vnic_reprs (Ivan Vecera) [1886717] - [netdrv] nfp: flower: prevent memory leak in nfp_flower_spawn_phy_reprs (Ivan Vecera) [1886717] - [netdrv] nfp: read chip model from the PluDevice register (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: set unknown fw_load_policy (Ivan Vecera) [1886717] - [documentation] Documentation: nfp: add nfp driver specific notes (Ivan Vecera) [1886717] - [netdrv] kdoc: fix nfp_fw_load documentation (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: add 'reset_dev_on_drv_probe' support (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: add 'fw_load_policy' support (Ivan Vecera) [1886717] - [netdrv] nfp: add devlink param infrastructure (Ivan Vecera) [1886717] - [netdrv] nfp: honor FW reset and loading policies (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for hwinfo set operation (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for optional hwinfo lookup (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for fw_loaded command (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: add simple map op cache (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: rework MTU checking (Ivan Vecera) [1886717] - [netdrv] net: Use skb accessors in network drivers (Ivan Vecera) [1886717] - [netdrv] nfp: tls: rename tls packet counters (Ivan Vecera) [1886717] - [netdrv] nfp: tls: undo TLS sequence tracking when dropping the frame (Ivan Vecera) [1886717] - [netdrv] nfp: tls: avoid one of the ifdefs for TLS (Ivan Vecera) [1886717] - [netdrv] nfp: tls: don't leave key material in freed FW cmsg skbs (Ivan Vecera) [1886717] - [netdrv] nfp: tls: count TSO segments separately for the TLS offload (Ivan Vecera) [1886717] - [netdrv] nfp: tls: use unique connection ids instead of 4-tuple for TX (Ivan Vecera) [1886717] - [netdrv] nfp: tls: move setting ipver_vlan to a helper (Ivan Vecera) [1886717] - [netdrv] nfp: tls: ignore queue limits for delete commands (Ivan Vecera) [1886717] - [netdrv] nfp: tls: fix error return code in nfp_net_tls_add() (Ivan Vecera) [1886717] - [netdrv] nfp: tls: enable TLS RX offload (Ivan Vecera) [1886717] - [netdrv] net/tls: don't clear TX resync flag on error (Ivan Vecera) [1886717] - [netdrv] net/tls: add tracing for device/offload events (Ivan Vecera) [1886717] - [netdrv] nfp: tls: make use of kernel-driven TX resync (Ivan Vecera) [1886717] - [netdrv] net/tls: generalize the resync callback (Ivan Vecera) [1886717] - [netdrv] nfp: tls: implement RX TLS resync (Ivan Vecera) [1886717] - [netdrv] nfp: add async version of mailbox communication (Ivan Vecera) [1886717] - [netdrv] nfp: rename nfp_ccm_mbox_alloc() (Ivan Vecera) [1886717] - [netdrv] nfp: tls: set skb decrypted flag (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add basic statistics (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add/delete TLS TX connections (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add datapath support for TLS TX (Ivan Vecera) [1886717] - [netdrv] nfp: flower: use struct_size() helper (Ivan Vecera) [1886717] - [netdrv] nfp: add missing kdoc (Ivan Vecera) [1886717] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Ivan Vecera) [1886717] - [iommu] iommu/amd: Fix the overwritten field in IVMD header (Baoquan He) [1869148] - [powerpc] pseries/drmem: don't cache node id in drmem_lmb struct (Diego Domingos) [1816543] - [include] cgroup: Fix sock_cgroup_data on big-endian (Vladis Dronov) [1868659] {CVE-2020-14356} - [include] cgroup: fix cgroup_sk_alloc() for sk_clone_lock() (Vladis Dronov) [1868659] {CVE-2020-14356} - [net] netprio_cgroup: Fix unlimited memory leak of v2 cgroups (Vladis Dronov) [1868659] {CVE-2020-14356} - [netdrv] net/broadcom: Clean broadcom code from driver versions (Jonathan Toppins) [1872443]- [net] Bluetooth: fix kernel oops in store_pending_adv_report (Gopal Tiwari) [1888455] {CVE-2020-24490} - [net] Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel (Gopal Tiwari) [1888258] {CVE-2020-12351} - [net] Bluetooth: A2MP: Fix not initializing all members (Gopal Tiwari) [1888807] {CVE-2020-12352} - [mm] mm, compaction: make capture control handling safe wrt interrupts (Rafael Aquini) [1862175] - [mm] mm/compaction: fix a typo in comment "pessemistic"->"pessimistic" (Rafael Aquini) [1862175] - [mm] mm/compaction: add missing annotation for compact_lock_irqsave (Rafael Aquini) [1862175] - [mm] mm/compaction.c: clean code by removing unnecessary assignment (Rafael Aquini) [1862175] - [kernel] mm/compaction: Disable compact_unevictable_allowed on RT (Rafael Aquini) [1862175] - [kernel] mm/compaction: really limit compact_unevictable_allowed to 0 and 1 (Rafael Aquini) [1862175] - [mm] mm, compaction: fully assume capture is not NULL in compact_zone_order() (Rafael Aquini) [1862175] - [mm] mm, compaction: fix wrong pfn handling in __reset_isolation_pfn() (Rafael Aquini) [1862175] - [mm] mm/compaction.c: remove unnecessary zone parameter in isolate_migratepages() (Rafael Aquini) [1862175] - [mm] mm: compaction: avoid 100 CPU usage during compaction when a task is killed (Rafael Aquini) [1862175] - [mm] mm, compaction: make sure we isolate a valid PFN (Rafael Aquini) [1862175] - [mm] mm/compaction.c: correct zone boundary handling when isolating pages from a pageblock (Rafael Aquini) [1862175] - [trace] mm, compaction: some tracepoints should be defined only when CONFIG_COMPACTION is set (Rafael Aquini) [1862175] - [trace] mm: compaction: show gfp flag names in try_to_compact_pages tracepoint (Rafael Aquini) [1862175] - [mm] mm/compaction.c: fix an undefined behaviour (Rafael Aquini) [1862175] - [mm] mm, page_alloc: always use a captured page regardless of compaction result (Rafael Aquini) [1862175] - [mm] mm/compaction.c: abort search if isolation fails (Rafael Aquini) [1862175] - [mm] mm/compaction.c: correct zone boundary handling when resetting pageblock skip hints (Rafael Aquini) [1862175] - [include] include/linux/list.h: fix list_is_first() kernel-doc (Rafael Aquini) [1862175] - [mm] mm/compaction: pass pgdat to too_many_isolated() instead of zone (Rafael Aquini) [1862175] - [mm] mm: remove zone_lru_lock() function, access ->lru_lock directly (Rafael Aquini) [1862175] - [mm] mm, compaction: capture a page under direct compaction (Rafael Aquini) [1862175] - [mm] mm, compaction: be selective about what pageblocks to clear skip hints (Rafael Aquini) [1862175] - [mm] mm, compaction: sample pageblocks for free pages (Rafael Aquini) [1862175] - [mm] mm, compaction: round-robin the order while searching the free lists for a target (Rafael Aquini) [1862175] - [mm] mm, compaction: reduce premature advancement of the migration target scanner (Rafael Aquini) [1862175] - [mm] mm, compaction: do not consider a need to reschedule as contention (Rafael Aquini) [1862175] - [mm] mm, compaction: rework compact_should_abort as compact_check_resched (Rafael Aquini) [1862175] - [mm] mm, compaction: keep cached migration PFNs synced for unusable pageblocks (Rafael Aquini) [1862175] - [mm] mm, compaction: check early for huge pages encountered by the migration scanner (Rafael Aquini) [1862175] - [mm] mm, compaction: finish pageblock scanning on contention (Rafael Aquini) [1862175] - [mm] mm, compaction: avoid rescanning the same pageblock multiple times (Rafael Aquini) [1862175] - [mm] mm, compaction: use free lists to quickly locate a migration target (Rafael Aquini) [1862175] - [mm] mm, compaction: keep migration source private to a single compaction instance (Rafael Aquini) [1862175] - [mm] mm, compaction: use free lists to quickly locate a migration source (Rafael Aquini) [1862175] - [mm] mm, compaction: always finish scanning of a full pageblock (Rafael Aquini) [1862175] - [mm] mm, migrate: immediately fail migration of a page with no migration handler (Rafael Aquini) [1862175] - [mm] mm, compaction: rename map_pages to split_map_pages (Rafael Aquini) [1862175] - [mm] mm, compaction: remove unnecessary zone parameter in some instances (Rafael Aquini) [1862175] - [mm] mm, compaction: remove last_migrated_pfn from compact_control (Rafael Aquini) [1862175] - [mm] mm, compaction: rearrange compact_control (Rafael Aquini) [1862175] - [mm] mm, compaction: shrink compact_control (Rafael Aquini) [1862175] - [kernel] mm: remove sysctl_extfrag_handler() (Rafael Aquini) [1862175] - [net] netlink: fix state reallocation in policy export (Petr Oros) [1874050] - [net] netlink: add infrastructure to expose policies to userspace (Petr Oros) [1874050] - [lib] netlink: factor out policy range helpers (Petr Oros) [1874050] - [net] netlink: remove NLA_EXACT_LEN_WARN (Petr Oros) [1874050] - [include] netlink: allow NLA_MSECS to have range validation (Petr Oros) [1874050] - [net] netlink: extend policy range validation (Petr Oros) [1874050] - [net] nl80211: link recursive netlink nested policy (Petr Oros) [1874050] - [lib] netlink: limit recursion depth in policy validation (Petr Oros) [1874050] - [net] netlink: remove type-unsafe validation_data pointer (Petr Oros) [1874050] - [powerpc] powerpc/pseries: new lparcfg key/value pair: partition_affinity_score (Steve Best) [1879420] - [powerpc] powerpc/perf: consolidate GPCI hcall structs into asm/hvcall.h (Steve Best) [1879420] - [include] iopoll: Introduce read_poll_timeout_atomic macro (Patrick Talbert) [1879211] - [include] iopoll: redefined readx_poll_timeout macro to simplify the code (Patrick Talbert) [1879211] - [include] iopoll: introduce read_poll_timeout macro (Patrick Talbert) [1879211] - [infiniband] IB/ipoib: Fix double free of skb in case of multicast traffic in CM mode (Kamal Heib) [1857600] - [infiniband] RDMA/core: Fix double destruction of uobject (Kamal Heib) [1857600] - [infiniband] RDMA/pvrdma: Fix missing pci disable in pvrdma_pci_probe() (Kamal Heib) [1857600] - [net] xprtrdma: Fix use of xdr_stream_encode_item_{present, absent} (Kamal Heib) [1857600] - [net] xprtrdma: Fix trace point use-after-free race (Kamal Heib) [1857600] - [net] xprtrdma: Restore wake-up-all to rpcrdma_cm_event_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Fix missing RDMA_CM_EVENT_REJECTED event after receiving REJ message (Kamal Heib) [1857600] - [net] xprtrdma: kmalloc rpcrdma_ep separate from rpcrdma_xprt (Kamal Heib) [1857600] - [net] xprtrdma: Extract sockaddr from struct rdma_cm_id (Kamal Heib) [1857600] - [net] xprtrdma: Merge struct rpcrdma_ia into struct rpcrdma_ep (Kamal Heib) [1857600] - [net] xprtrdma: Disconnect on flushed completion (Kamal Heib) [1857600] - [net] xprtrdma: Remove rpcrdma_ia::ri_flags (Kamal Heib) [1857600] - [net] xprtrdma: Invoke rpcrdma_ia_open in the connect worker (Kamal Heib) [1857600] - [net] xprtrdma: Allocate Protection Domain in rpcrdma_ep_create() (Kamal Heib) [1857600] - [net] xprtrdma: Refactor rpcrdma_ep_connect() and rpcrdma_ep_disconnect() (Kamal Heib) [1857600] - [net] xprtrdma: Clean up the post_send path (Kamal Heib) [1857600] - [net] xprtrdma: Refactor frwr_init_mr() (Kamal Heib) [1857600] - [net] xprtrdma: Invoke rpcrdma_ep_create() in the connect worker (Kamal Heib) [1857600] - [net] xprtrdma: Enhance MR-related trace points (Kamal Heib) [1857600] - [infiniband] IB/iser: Always check sig MR before putting it to the free pool (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Use in-kernel offsetofend() to check field availability (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make sure the cm_id is in the IB_CM_IDLE state in destroy (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_sidr_rep() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_rej() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_drep() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_dreq() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Add some lockdep assertions for cm_id_priv->lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make it clearer how concurrency works in cm_req_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make it clear that there is no concurrency in cm_sidr_req_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Simplify establishing a listen cm_id (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make the destroy_id flow more robust (Kamal Heib) [1857600] - [net] svcrdma: Avoid DMA mapping small RPC Replies (Kamal Heib) [1857600] - [net] svcrdma: Fix double sync of transport header buffer (Kamal Heib) [1857600] - [net] svcrdma: Refactor chunk list encoders (Kamal Heib) [1857600] - [net] SUNRPC: Add encoders for list item discriminators (Kamal Heib) [1857600] - [net] svcrdma: Rename svcrdma_encode trace points in send routines (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_send_reply_msg() (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_map_reply_msg() (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_send_reply_chunk() (Kamal Heib) [1857600] - [net] svcrdma: De-duplicate code that locates Write and Reply chunks (Kamal Heib) [1857600] - [include] svcrdma: Use struct xdr_stream to decode ingress transport headers (Kamal Heib) [1857600] - [net] svcrdma: Remove svcrdma_cm_event() trace point (Kamal Heib) [1857600] - [net] SUNRPC: Add xdr_pad_size() helper (Kamal Heib) [1857600] - [net] nfsd: Fix NFSv4 READ on RDMA when using readv (Kamal Heib) [1857600] - [net] svcrdma: Replace zero-length array with flexible-array member (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Delete not implemented CM peer to peer communication (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Teach lockdep about the order of rtnl and lock (Kamal Heib) [1857600] - [infiniband] RDMA/rw: map P2P memory correctly for signature operations (Kamal Heib) [1857600] - [infiniband] RDMA/ipoib: reject unsupported coalescing params (Kamal Heib) [1857600] - [infiniband] RDMA/providers: Fix return value when QP type isn't supported (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Use the new APIs for printing log (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Optimize hns_roce_modify_qp function (Kamal Heib) [1857600] - [infiniband] RDMA/hns: RDMA/hns: Assign rq head pointer when enable rq record db (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Update the prompt message for creating and destroy qp (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Do not delay freeing of DMA pages (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Properly document the interrupt mask register (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Unified getters/setters for device structs bitmask access (Kamal Heib) [1857600] - [infiniband] RDMA/ipoib: Don't set constant driver version (Kamal Heib) [1857600] - [infiniband] RDMA: Replace zero-length array with flexible-array member (Kamal Heib) [1857600] - [infiniband] RDMA/ucma: Use refcount_t for the ctx->ref (Kamal Heib) [1857600] - [infiniband] RDMA/core: Get rid of ib_create_qp_user (Kamal Heib) [1857600] - [infiniband] RDMA/core: Add weak ordering dma attr to dma mapping (Kamal Heib) [1857600] - [infiniband] RDMA/ucma: Mask QPN to be 24 bits according to IBTA (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use refcount API to reflect refcount (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Rename cma_device ref/deref helpers to to get/put (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use refcount API to reflect refcount (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Rename cma_device ref/deref helpers to to get/put (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use RDMA device port iterator (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use a helper function to enqueue resolve work items (Kamal Heib) [1857600] - [infiniband] RDMA/rw: Fix error flow during RDMA context initialization (Kamal Heib) [1857600] - [infiniband] IB/core: Add interface to advise_mr for kernel users (Kamal Heib) [1857600] - [infiniband] IB/core: Introduce ib_reg_user_mr (Kamal Heib) [1857600] - [uapi] RDMA/core: Add the core support field to METHOD_GET_CONTEXT (Kamal Heib) [1857600] - [infiniband] RDMA/uverbs: Add ioctl command to get a device context (Kamal Heib) [1857600] - [fs] xfs: Fix false positive lockdep warning with sb_internal & fs_reclaim (Waiman Long) [1838643] - [mm] mm/mmu_notifier: mm/rmap.c: Fix a mmu_notifier range bug in try_to_unmap_one (Waiman Long) [1871883] - [mm] mm/memory.c: initialise mmu_notifier_range correctly (Waiman Long) [1871883] - [mm] mm/mmu_notifier: use structure for invalidate_range_start/end calls v2 (Waiman Long) [1871883] - [mm] hugetlb: take PMD sharing into account when flushing tlb/caches (Waiman Long) [1871883] - [mm] mm, hugetlbfs: pass fault address to cow handler (Waiman Long) [1871883] - [mm] mm, hugetlbfs: rename address to haddr in hugetlb_cow() (Waiman Long) [1871883] - [mm] mm, huge page: copy target sub-page last when copy huge page (Waiman Long) [1871883] - [mm] mm, clear_huge_page: move order algorithm into a separate function (Waiman Long) [1871883] - [mm] Revert "mm: always flush VMA ranges affected by zap_page_range" (Waiman Long) [1871883] - [kernel] psi: eliminate kthread_worker from psi trigger scheduling mechanism (Waiman Long) [1873040] - [kernel] psi: get poll_work to run when calling poll syscall next time (Waiman Long) [1873040] - [block] block: loop: set discard granularity and alignment for block device backed loop (Ming Lei) [1866712] - [net] gre: recompute gre csum for sctp over gre tunnels (Lorenzo Bianconi) [1755200] - [include] mm/hugetlb: enable arch specific huge page size support for migration (Donghai Qiao) [1869887] - [mm] arm64/mm: enable HugeTLB migration for contiguous bit HugeTLB pages (Donghai Qiao) [1869887] - [lib] idr: Fix idr_get_next_ul race with idr_remove (Felix Ansell) [1866062] - [lib] genalloc: Fix a set of docs build warnings (Felix Ansell) [1866062] - [lib] lib/Kconfig: fix OBJAGG in lib/ menu structure (Felix Ansell) [1866062] - [lib] lib: Reduce user_access_begin() boundaries in strncpy_from_user() and strnlen_user() (Felix Ansell) [1866062]- [char] random32: update the net random state on interrupt and activity (Donghai Qiao) [1867569] {CVE-2020-16166} - [fs] nfs: Fix getxattr kernel panic and memory overflow (Benjamin Coddington) [1880894] {CVE-2020-25212} - [tools] selftests: rtnetlink: Test bridge enslavement with different parent IDs (Jonathan Toppins) [1860479] - [tools] selftests: rtnetlink: correct the final return value for the test (Jonathan Toppins) [1860479] - [net] Fix bridge enslavement failure (Jonathan Toppins) [1860479] - [net] Make mpls_entry_encode() available for generic users (Patrick Talbert) [1878818] - [net] SUNRPC dont update timeout value on connection reset (Steve Dickson) [1861895] - [kernel] overflow.h: Add flex_array_size() helper (Petr Oros) [1876924] - [net] netpoll: accept NULL np argument in netpoll_send_skb() (Ivan Vecera) [1867968] - [net] netpoll: netpoll_send_skb() returns transmit status (Ivan Vecera) [1867968] - [net] netpoll: move netpoll_send_skb() out of line (Ivan Vecera) [1867968] - [net] netpoll: remove dev argument from netpoll_send_skb_on_dev() (Ivan Vecera) [1867968] - [net] netpoll: Fix use correct return type for ndo_start_xmit() (Ivan Vecera) [1867968] - [net] core: Introduce netdev_get_xmit_slave (Ivan Vecera) [1867974] - [net] get rid of lockdep_set_class_and_subclass() (Ivan Vecera) [1867961] - [net] change addr_list_lock back to static key (Ivan Vecera) [1867961] - [net] batman-adv: Revert "Drop lockdep.h include for soft-interface.c" (Ivan Vecera) [1867961] - [net] partially revert dynamic lockdep key changes (Ivan Vecera) [1867961] - [kernel] rcu: Maintain RHEL kABI (Waiman Long) [1862812] - [kernel] rcu: Don't acquire lock in NMI handler in rcu_nmi_enter_common() (Waiman Long) [1862812] - [kernel] rcu: Add *_ONCE() to rcu_data ->rcu_forced_tick (Waiman Long) [1862812] - [kernel] rcu: Make rcu_barrier() account for offline no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu: Clear ->core_needs_qs at GP end or self-reported QS (Waiman Long) [1862812] - [kernel] rcu: Forgive slow expedited grace periods at boot time (Waiman Long) [1862812] - [tools] torture: Hoist calls to lscpu to higher-level kvm.sh script (Waiman Long) [1862812] - [tools] torture: Allow "CFLIST" to specify default list of scenarios (Waiman Long) [1862812] - [kernel] rcutorture: Dynamically allocate rcu_fwds structure (Waiman Long) [1862812] - [kernel] rcutorture: Complete threading rcu_fwd pointers through functions (Waiman Long) [1862812] - [kernel] rcutorture: Move to dynamic initialization of rcu_fwds (Waiman Long) [1862812] - [kernel] rcutorture: Thread rcu_fwd pointer through forward-progress functions (Waiman Long) [1862812] - [kernel] rcutorture: Pull callback forward-progress data into rcu_fwd struct (Waiman Long) [1862812] - [tools] rcutorture: Add worst-case call_rcu() forward-progress results (Waiman Long) [1862812] - [tools] torture: Handle systems lacking the mpstat command (Waiman Long) [1862812] - [tools] torture: Handle jitter for CPUs that cannot be offlined (Waiman Long) [1862812] - [tools] rcutorture: Dispense with Dracut for initrd creation (Waiman Long) [1862812] - [tools] torture: Use gawk instead of awk for systime() function (Waiman Long) [1862812] - [kernel] rcu: Avoid tick_dep_set_cpu() misordering (Waiman Long) [1862812] - [kernel] rcu: Provide wrappers for uses of ->rcu_read_lock_nesting (Waiman Long) [1862812] - [kernel] rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special() (Waiman Long) [1862812] - [kernel] rcu: Clear ->rcu_read_unlock_special only once (Waiman Long) [1862812] - [kernel] rcu: Clear .exp_hint only when deferred quiescent state has been reported (Waiman Long) [1862812] - [kernel] rcu: Rename some instance of CONFIG_PREEMPTION to CONFIG_PREEMPT_RCU (Waiman Long) [1862812] - [kernel] rcu: Use CONFIG_PREEMPTION where appropriate (Waiman Long) [1862812] - [kernel] rcu: Make PREEMPT_RCU be a modifier to TREE_RCU (Waiman Long) [1862812] - [kernel] rcu: Use lockdep rather than comment to enforce lock held (Waiman Long) [1862812] - [kernel] rcu: Avoid data-race in rcu_gp_fqs_check_wake() (Waiman Long) [1862812] - [kernel] rcu/nocb: Fix dump_tree hierarchy print always active (Waiman Long) [1862812] - [kernel] rculist.h: Add list_tail_rcu() (Waiman Long) [1862812] - [kernel] rculist_nulls: Change docbook comment headers (Waiman Long) [1862812] - [kernel] rculist_nulls: Add docbook comments (Waiman Long) [1862812] - [include] rcu: Add a hlist_nulls_unhashed_lockless() function (Waiman Long) [1862812] - [kernel] rcu: Use WRITE_ONCE() for assignments to ->pprev for hlist_nulls (Waiman Long) [1862812] - [kernel] rcu: Remove kfree_call_rcu_nobatch() (Waiman Long) [1862812] - [kernel] rcu: Remove kfree_rcu() special casing and lazy-callback handling (Waiman Long) [1862812] - [kernel] rcu: Add support for debug_objects debugging for kfree_rcu() (Waiman Long) [1862812] - [kernel] rcu: Add multiple in-flight batches of kfree_rcu() work (Waiman Long) [1862812] - [kernel] rcu: Make kfree_rcu() use a non-atomic ->monitor_todo (Waiman Long) [1862812] - [kernel] rcuperf: Add kfree_rcu() performance Tests (Waiman Long) [1862812] - [kernel] rcu: Add basic support for kfree_rcu() batching (Waiman Long) [1862812] - [kernel] rcu: Remove unused stop-machine #include (Waiman Long) [1862812] - [kernel] srcu: Apply *_ONCE() to ->srcu_last_gp_end (Waiman Long) [1862812] - [kernel] rcu: Switch force_qs_rnp() to for_each_leaf_node_cpu_mask() (Waiman Long) [1862812] - [kernel] rcu: Move rcu_{expedited, normal} definitions into rcupdate.h (Waiman Long) [1862812] - [kernel] rcu: Move gp_state_namesand gp_state_getname() to tree_stall.h (Waiman Long) [1862812] - [kernel] rcu: Remove the declaration of call_rcu() in tree.h (Waiman Long) [1862812] - [kernel] rcu: Fix tracepoint tracking RCU CPU kthread utilization (Waiman Long) [1862812] - [kernel] rcu: Fix harmless omission of "CONFIG_" from #if condition (Waiman Long) [1862812] - [kernel] rcu: Mark non-global functions and variables as static (Waiman Long) [1862812] - [kernel] rcu: Enable tick for nohz_full CPUs slow to provide expedited QS (Waiman Long) [1862812] - [kernel] rcu: Replace synchronize_sched_expedited_wait() "_sched" with "_rcu" (Waiman Long) [1862812] - [kernel] rcu: Update tree_exp.h function-header comments (Waiman Long) [1862812] - [kernel] rcu: Rename sync_rcu_preempt_exp_done() to sync_rcu_exp_done() (Waiman Long) [1862812] - [kernel] rcu: Allow only one expedited GP to run concurrently with wakeups (Waiman Long) [1862812] - [kernel] rcu: Fix missed wakeup of exp_wq waiters (Waiman Long) [1862812] - [kernel] rcu: Substitute lookup for bit-twiddling in sync_rcu_exp_select_node_cpus() (Waiman Long) [1862812] - [kernel] rcu: Fix data-race due to atomic_t copy-by-value (Waiman Long) [1862812] - [kernel] rcu: Avoid modifying mask_ofl_ipi in sync_rcu_exp_select_node_cpus() (Waiman Long) [1862812] - [kernel] rcu: Use *_ONCE() to protect lockless ->expmask accesses (Waiman Long) [1862812] - [kernel] rcutorture: Make in-kernel-loop testing more brutal (Waiman Long) [1862812] - [kernel] rcutorture: Separate warnings for each failure type (Waiman Long) [1862812] - [kernel] rcu: Remove unused variable rcu_perf_writer_state (Waiman Long) [1862812] - [tools] rcutorture: Remove CONFIG_HOTPLUG_CPU=n from scenarios (Waiman Long) [1862812] - [kernel] rcu: Remove unused function rcutorture_record_progress() (Waiman Long) [1862812] - [kernel] rcu: Make kernel-mode nohz_full CPUs invoke the RCU core processing (Waiman Long) [1862812] - [kernel] rcu: Confine ->core_needs_qs accesses to the corresponding CPU (Waiman Long) [1862812] - [kernel] rcu: Reset CPU hints when reporting a quiescent state (Waiman Long) [1862812] - [kernel] rcu: Force nohz_full tick on upon irq enter instead of exit (Waiman Long) [1862812] - [kernel] rcu: Force tick on for nohz_full CPUs not reaching quiescent states (Waiman Long) [1862812] - [kernel] rcutorture: Emulate dyntick aspect of userspace nohz_full sojourn (Waiman Long) [1862812] - [kernel] rcu: Make CPU-hotplug removal operations enable tick (Waiman Long) [1862812] - [kernel] stop_machine: Provide RCU quiescent state in multi_cpu_stop() (Waiman Long) [1862812] - [kernel] rcutorture: Force on tick for readers and callback flooders (Waiman Long) [1862812] - [kernel] rcu: Force on tick when invoking lots of callbacks (Waiman Long) [1862812] - [kernel] time: Export tick start/stop functions for rcutorture (Waiman Long) [1862812] - [kernel] nohz: Add TICK_DEP_BIT_RCU (Waiman Long) [1862812] - [kernel] rcu: Suppress levelspread uninitialized messages (Waiman Long) [1862812] - [kernel] rcu: Fix uninitialized variable in nocb_gp_wait() (Waiman Long) [1862812] - [trace] rcu: Update descriptions for rcu_future_grace_period tracepoint (Waiman Long) [1862812] - [trace] rcu: Update descriptions for rcu_nocb_wake tracepoint (Waiman Long) [1862812] - [trace] rcu: Remove obsolete descriptions for rcu_barrier tracepoint (Waiman Long) [1862812] - [kernel] rcu: Ensure that ->rcu_urgent_qs is set before resched IPI (Waiman Long) [1862812] - [kernel] rcu: Several rcu_segcblist functions can be static (Waiman Long) [1862812] - [kernel] rcu: Remove unused function hlist_bl_del_init_rcu() (Waiman Long) [1862812] - [kernel] rcu: Allow rcu_do_batch() to dynamically adjust batch sizes (Waiman Long) [1862812] - [kernel] srcu: Avoid srcutorture security-based pointer obfuscation (Waiman Long) [1862812] - [kernel] rcu/nocb: Don't wake no-CBs GP kthread if timer posted under overload (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce __call_rcu_nocb_wake() leaf rcu_node ->lock contention (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce nocb_cb_wait() leaf rcu_node ->lock contention (Waiman Long) [1862812] - [kernel] rcu/nocb: Advance CBs after merge in rcutree_migrate_callbacks() (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid synchronous wakeup in __call_rcu_nocb_wake() (Waiman Long) [1862812] - [kernel] rcu/nocb: Print no-CBs diagnostics when rcutorture writer unduly delayed (Waiman Long) [1862812] - [kernel] rcu/nocb: EXP Check use and usefulness of ->nocb_lock_contended (Waiman Long) [1862812] - [kernel] rcu/nocb: Add bypass callback queueing (Waiman Long) [1862812] - [kernel] rcu/nocb: Atomic ->len field in rcu_segcblist structure (Waiman Long) [1862812] - [kernel] rcu/nocb: Unconditionally advance and wake for excessive CBs (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce ->nocb_lock contention with separate ->nocb_gp_lock (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce contention at no-CBs invocation-done time (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce contention at no-CBs registry-time CB advancement (Waiman Long) [1862812] - [kernel] rcu/nocb: Round down for number of no-CBs grace-period kthreads (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid ->nocb_lock capture by corresponding CPU (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid needless wakeups of no-CBs grace-period kthread (Waiman Long) [1862812] - [kernel] rcu/nocb: Make __call_rcu_nocb_wake() safe for many callbacks (Waiman Long) [1862812] - [kernel] rcu/nocb: Never downgrade ->nocb_defer_wakeup in wake_nocb_gp_defer() (Waiman Long) [1862812] - [kernel] rcu/nocb: Enable re-awakening under high callback load (Waiman Long) [1862812] - [kernel] rcu/nohz: Turn off tick for offloaded CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Suppress uninitialized false-positive in nocb_gp_wait() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_pending() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_core() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_do_batch() (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_gp_head and nocb_gp_tail fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_cb_tail and nocb_cb_head fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_q_count and nocb_q_count_lazy fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_head and nocb_tail fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Use rcu_segcblist for no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Leave ->cblist enabled for no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Allow lockless use of rcu_segcblist_empty() (Waiman Long) [1862812] - [kernel] rcu/nocb: Allow lockless use of rcu_segcblist_restempty() (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove deferred wakeup checks for extended quiescent states (Waiman Long) [1862812] - [kernel] rcu/nocb: Check for deferred nocb wakeups before nohz_full early exit (Waiman Long) [1862812] - [kernel] rcu/nocb: Make rcutree_migrate_callbacks() start at leaf rcu_node structure (Waiman Long) [1862812] - [kernel] rcu/nocb: Add checks for offloaded callback processing (Waiman Long) [1862812] - [kernel] rcu/nocb: Use separate flag to indicate offloaded ->cblist (Waiman Long) [1862812] - [kernel] rcu/nocb: Use separate flag to indicate disabled ->cblist (Waiman Long) [1862812] - [kernel] rcu/nocb: Print gp/cb kthread hierarchy if dump_tree (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_nocb_leader_stride kernel boot parameter (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename and document no-CB CB kthread sleep trace event (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_organize_nocb_kthreads() local variable (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename wake_nocb_leader_defer() to wake_nocb_gp_defer() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename __wake_nocb_leader() to __wake_nocb_gp() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename wake_nocb_leader() to wake_nocb_gp() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename nocb_follower_wait() to nocb_cb_wait() (Waiman Long) [1862812] - [kernel] rcu/nocb: Provide separate no-CBs grace-period kthreads (Waiman Long) [1862812] - [kernel] rcu/nocb: Update comments to prepare for forward-progress work (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_data fields to prepare for forward-progress work (Waiman Long) [1862812] - [kernel] rcutorture: Aggressive forward-progress tests shouldn't block shutdown (Waiman Long) [1862812] - [kernel] rcuperf: Make rcuperf kernel test more robust for !expedited mode (Waiman Long) [1862812] - [kernel] rcutorture: Emulate userspace sojourn during call_rcu() floods (Waiman Long) [1862812] - [tools] rcutorture: Test TREE03 with the threadirqs kernel boot parameter (Waiman Long) [1862812] - [tools] torture: Expand last_ts variable in kvm-test-1-run.sh (Waiman Long) [1862812] - [kernel] rcuperf: Fix perf_type module-parameter description (Waiman Long) [1862812] - [documentation] doc: Add rcutree.kthread_prio pointer to stallwarn.txt (Waiman Long) [1862812] - [kernel] rcu: Change return type of rcu_spawn_one_boost_kthread() (Waiman Long) [1862812] - [kernel] rcu: Add destroy_work_on_stack() to match INIT_WORK_ONSTACK() (Waiman Long) [1862812] - [kernel] rcu: Add kernel parameter to dump trace after RCU CPU stall warning (Waiman Long) [1862812] - [kernel] rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock() (Waiman Long) [1862812] - [kernel] rcu: Simplify rcu_note_context_switch exit from critical section (Waiman Long) [1862812] - [kernel] rcu: Make rcu_read_unlock_special() checks match raise_softirq_irqoff() (Waiman Long) [1862812] - [kernel] rcu: Simplify rcu_read_unlock_special() deferred wakeups (Waiman Long) [1862812] - [tools] rcu: Don't return a value from rcu_assign_pointer() (Waiman Long) [1862812] - [kernel] rcu: Force inlining of rcu_read_lock() (Waiman Long) [1862812] - [kernel] rcu: Fix irritating whitespace error in rcu_assign_pointer() (Waiman Long) [1862812] - [kernel] rcu: validate arguments for rcu tracepoints (Waiman Long) [1862812] - [trace] tracing: introduce TRACE_EVENT_NOP() (Waiman Long) [1862812] - [kernel] kprobes: Prohibit probing on RCU debug routine (Waiman Long) [1862812] - [init] time: Make VIRT_CPU_ACCOUNTING_GEN depend on GENERIC_CLOCKEVENTS (Waiman Long) [1862812] - [kernel] time: Move CONTEXT_TRACKING to kernel/time/Kconfig (Waiman Long) [1862812]- [fs] xfs: don't commit sunit/swidth updates to disk if that would cause repair failures (Bill O'Donnell) [1849407] - [fs] xfs: split the sunit parameter update into two parts (Bill O'Donnell) [1849407] - [fs] xfs: refactor agfl length computation function (Bill O'Donnell) [1849407] - [net] netfilter: conntrack: proc: rename stat column (Florian Westphal) [1875681] - [net] netfilter: conntrack: add clash resolution stat counter (Florian Westphal) [1875681] - [net] netfilter: conntrack: remove ignore stats (Florian Westphal) [1875681] - [net] netfilter: conntrack: do not increment two error counters at same time (Florian Westphal) [1875681] - [net] netfilter: conntrack: do not auto-delete clash entries on reply (Florian Westphal) [1875681] - [powerpc] powerpc/pseries/iommu: Allow bigger 64bit window by removing default DMA window (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Move window-removing part of remove_ddw into remove_dma_window (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Update call to ibm, query-pe-dma-windows (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Create defines for operations in ibm, ddw-applicable (Steve Best) [1725198] - [x86] x86/cpu: Add Sapphire Rapids CPU model number (Puneet Sethi) [1872367] - [x86] x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel CPU family (Steve Best) [1838902]- [powerpc] powerpc/xmon: Improve dumping prefixed instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a ppc_inst_as_str() helper (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add ppc_inst_as_u64() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add ppc_inst_next() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for Prefixed Add Immediate (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Let compute tests specify a required cpu feature (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Set NIP in instruction emulation tests (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for prefixed floating-point load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for prefixed integer load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add POWER10 architected mode (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Add MMA feature (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Enable Prefixed Instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Advertise support for ISA v3.1 if selected (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add support for ISA v3.1 (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add new HWCAP bits (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for prefixed fixed-point arithmetic (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for prefixed load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Support prefixed instructions in alignment handler (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kprobes: Don't allow breakpoints on suffixes (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Don't allow breakpoints on suffixes (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Test prefixed instructions in feature fixups (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Test prefixed code patching (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add prefixed instructions to instruction data type (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/optprobes: Add register argument to patch_imm64_load_insns() (Desnes Augusto Nunes do Rosario) [1854524] - [kvm] powerpc: Define new SRR1 bits for a ISA v3.1 (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/83xx: handle machine check caused by watchdog timer (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Enable Prefixed Instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Make test_translate_branch() independent of instruction length (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move insertion of breakpoint for xol'ing (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Use a function for reading instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Introduce a function for reporting instruction length (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Define and use get_user_instr() et. al (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kprobes: Use patch_instruction() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a probe_kernel_read_inst() function (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a probe_user_read_inst() function (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for reading instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a datatype for instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: Refactor __patch_instruction() to use __put_user_asm() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: use probe_user_read() and probe_user_write() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Constify the number of insns printed by show instructions functions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Fix interleaved output in show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Fix sparse address space warnings (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Don't print kernel instructions in show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: fix book3s/32 boot failure due to code patching (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Introduce functions for instruction equality (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for byte swapping instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for getting the instruction op code (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use an accessor for instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for extswsli instruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add support for maddhd, maddhdu, maddld instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a macro for creating instructions from u32s (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/fsl: Add infrastructure to fixup branch predictor flush (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/smp: Use code patching to restore reset vector (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for addcinstruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for addinstruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for compute type instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Fix DS operand in ld encoding to appropriate value (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/fsl: Add barrier_nospec implementation for NXP PowerPC Book3E (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/watchpoint: Don't ignore extraneous exceptions blindly (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/watchpoint: Disable watchpoint hit by larx/stcx instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kgdb: add kgdb_arch_set/remove_breakpoint() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/hw_breakpoint: move instruction stepping out of hw_breakpoint_handler() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: add modify_instruction() and modify_instruction_site() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Change calling convention for create_branch() et. al (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: simplify patch_instruction_site() and patch_branch_site() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/code-patching: Add a helper to get the address of a patch_site (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/ftrace: Handle large kernel configs (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/32: use patch_site_addr() in machine_init() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: Use patch_site to patch copy_32 functions once cache is enabled (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Use bitwise calculations in_breakpoint_table() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move breakpoints to text section (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move breakpoint instructions to own array (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Remove store_inst() for patch_instruction() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/powernv/idle: Exclude mfspr on HID1, 4, 5 on P9 and above (Steve Best) [1854539] - [powerpc] powerpc/powernv/idle: Rename pnv_first_spr_loss_level variable (Steve Best) [1854539] - [powerpc] powerpc/powernv/idle: Replace CPU feature check with PVR check (Steve Best) [1854539] - [powerpc] powerpc/64s: Don't set FSCR bits in INIT_THREAD (Steve Best) [1854523] - [powerpc] powerpc/64s: Save FSCR to init_task.thread.fscr after feature init (Steve Best) [1854523] - [powerpc] powerpc/64s: Don't let DT CPU features set FSCR_DSCR (Steve Best) [1854523] - [powerpc] powerpc/64s: Don't init FSCR_DSCR in __init_FSCR() (Steve Best) [1854523]- [kernel] sched/cfs: change initial value of runnable_avg (Phil Auld) [1875995] - [kernel] sched/fair: Fix runnable_avg for throttled cfs (Phil Auld) [1875995] - [kernel] sched/fair: Fix kernel build warning in test_idle_cores() for !SMT NUMA (Phil Auld) [1875995] - [kernel] sched/numa: Acquire RCU lock for checking idle cores during NUMA balancing (Phil Auld) [1875995] - [kernel] sched/numa: Stop an exhastive search if a reasonable swap candidate or idle CPU is found (Phil Auld) [1875995] - [kernel] sched/numa: Bias swapping tasks based on their preferred node (Phil Auld) [1875995] - [kernel] sched/numa: Find an alternative idle CPU if the CPU is part of an active NUMA balance (Phil Auld) [1875995] - [kernel] sched/numa: Prefer using an idle CPU as a migration target instead of comparing tasks (Phil Auld) [1875995] - [kernel] sched/fair: Take into account runnable_avg to classify group (Phil Auld) [1875995] - [kernel] sched/pelt: Add a new runnable average signal (Phil Auld) [1875995] - [kernel] sched/pelt: Remove unused runnable load average (Phil Auld) [1875995] - [kernel] sched: Disable allowing small imbalance to preserve RHEL performance (Phil Auld) [1875995] - [kernel] sched/numa: Use similar logic to the load balancer for moving between domains with spare capacity (Phil Auld) [1875995] - [kernel] sched/numa: Replace runnable_load_avg by load_avg (Phil Auld) [1875995] - [kernel] sched/numa: Distinguish between the different task_numa_migrate() failure cases (Phil Auld) [1875995] - [kernel] sched/numa: Trace when no candidate CPU was found on the preferred node (Phil Auld) [1875995] - [kernel] sched/fair: Allow a small load imbalance between low utilisation SD_NUMA domains (Phil Auld) [1875995] - [mm] powerpc/smp: Implement cpu_to_coregroup_id (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Create coregroup domain (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Allocate cpumask only after searching thread group (Diego Domingos) [1854541] - [powerpc] powerpc/numa: Detect support for coregroup (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Optimize start_secondary (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Dont assume l2-cache to be superset of sibling (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Move topology fixups into a new function (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Move powerpc_topology above (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Merge Power9 topology with Power topology (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Fix a warning under !NEED_MULTIPLE_NODES (Diego Domingos) [1854541] - [mm] powerpc/numa: Restrict possible nodes based on platform (Diego Domingos) [1854541] - [mm] powerpc/numa: Limit possible nodes to within num_possible_nodes (Diego Domingos) [1854541] - [powerpc] powerpc: Fix misleading small cores print (Diego Domingos) [1854541] - [netdrv] ibmvnic: add missing parenthesis in do_reset() (Steve Best) [1879547] - [wireless] rtw88: don't hold all IRQs disabled for PS operations (Jarod Wilson) [1874730] - [netdrv] ibmvnic fix NULL tx_pools and rx_tools issue at do_reset (Steve Best) [1872676]- [kernel] sched: Fix use of count for nr_running tracepoint (Phil Auld) [1861444] - [kernel] sched: Add a tracepoint to track rq->nr_running (Phil Auld) [1861444] - [kernel] sched/debug: Add new tracepoints to track util_est (Phil Auld) [1861444] - [kernel] sched/debug: Export the newly added tracepoints (Phil Auld) [1861444] - [kernel] sched/debug: Add sched_overutilized tracepoint (Phil Auld) [1861444] - [kernel] sched/debug: Add new tracepoint to track PELT at se level (Phil Auld) [1861444] - [kernel] sched/debug: Add a new sched_trace_*() helper functions (Phil Auld) [1861444] - [kernel] sched/autogroup: Make autogroup_path() always available (Phil Auld) [1861444]- [mm] mm/kmemleak.c: fix check for softirq context (Waiman Long) [1878006] - [include] mm/hotplug: invalid PFNs from pfn_to_online_page() (Waiman Long) [1878006] - [mm] mm, kmemleak: little optimization while scanning (Waiman Long) [1878006] - [mm] kmemleak: add module param to print warnings to dmesg (Waiman Long) [1878006] - [mm] kmemleak: always register debugfs file (Waiman Long) [1878006] - [scsi] scsi: megaraid_sas: Don't call disable_irq from process IRQ poll (Tomas Henzl) [1837200] - [scsi] scsi: megaraid_sas: Remove undefined ENABLE_IRQ_POLL macro (Tomas Henzl) [1837200] - [platform] platform/x86: dcdbas: Check SMBIOS for protected buffer address (David Arcari) [1858680] - [platform] firmware: dcdbas: Move dcdbas to drivers/platform/x86 (David Arcari) [1858680] - [fs] cifs: fix DFS mount with cifsacl/modefromsid (Leif Sahlberg) [1871246] - [fs] ext4: fix potential negative array index in do_split() (Pavel Reichl) [1846165] {CVE-2020-14314} - [include] block: allow for_each_bvec to support zero len bvec (Ming Lei) [1872032] - [nvme] nvme-pci: disable the write zeros command for Intel 600P/P3100 (David Milburn) [1875391]- [netdrv] ice: Disable VLAN pruning in promiscuous mode (Jonathan Toppins) [1787477] - [mm] mm: slub: introduce 'slub_merge' kernel parameter (Rafael Aquini) [1871214] - [kernel] time/tick-broadcast: Fix tick_broadcast_offline() lockdep complaint (Alexey Klimov) [1877380]- [init] init/Kconfig: disable io_uring (Jeff Moyer) [1879754] - [block] blk-mq: always allow reserved allocation in hctx_may_queue (Ming Lei) [1740874] - [nvme] nvme-rdma: Avoid double freeing of async event data (Gopal Tiwari) [1878140] - [kernel] printk: queue wake_up_klogd irq_work only if per-CPU areas are ready (Igor Mammedov) [1867022]- [firmware] efi: don't reserve MOK config table memory region (Kairui Song) [1878584] - [fs] xfs: fix boundary test in xfs_attr_shortform_verify (Eric Sandeen) [1875316] {CVE-2020-14385} - [powerpc] powerpc/pseries: Do not initiate shutdown when system is running on UPS (Diego Domingos) [1870477]- [fs] nfsd: avoid a NULL dereference in __cld_pipe_upcall() (Scott Mayhew) [1847225] - [net] packet: fix overflow in tpacket_rcv (Hangbin Liu) [1876224] {CVE-2020-14386} - [net] packet: make tp_drops atomic (Hangbin Liu) [1876224] {CVE-2020-14386} - [net] espintcp: restore IP CB before handing the packet to xfrm (Sabrina Dubroca) [1868201] - [fs] Revert "NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE" (Benjamin Coddington) [1865978] - [fs] Revert "NFSv4.x recover from pre-mature loss of openstateid" (Benjamin Coddington) [1865978] - [infiniband] RDMA/mlx4: Read pkey table length instead of hardcoded value (Alaa Hleihel) [1853564] - [net] net/smc: set rx_off for SMCR explicitly (Philipp Rudo) [1875833] - [drm] drm/i915: Auto detect DPCD backlight support by default (Lyude Paul) [1872381] - [drm] drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() (Lyude Paul) [1872381] - [drm] drm/i915: Assume 100 brightness when not in DPCD control mode (Lyude Paul) [1872381] - [drm] drm/i915: Fix eDP DPCD aux max backlight calculations (Lyude Paul) [1872381] - [kernel] tracing: Define MCOUNT_INSN_SIZE when not defined without direct calls (Jiri Olsa) [1857599] - [kernel] ftrace: Fix function_graph tracer interaction with BPF trampoline (Jiri Olsa) [1857599] - [x86] x86/function_graph: Simplify with function_graph_enter() (Jiri Olsa) [1857599] - [kernel] function_graph: Create function_graph_enter() to consolidate architecture code (Jiri Olsa) [1857599]- [crypto] pefile: Support multiple signatures in verify_pefile_signature (Lenny Szubowicz) [1862072] - [security] integrity: Load certs from the EFI MOK config table (Lenny Szubowicz) [1868306] - [security] integrity: Move import of MokListRT certs to a separate routine (Lenny Szubowicz) [1868306] - [firmware] efi: Support for MOK variable config table (Lenny Szubowicz) [1868306] - [kernel] Move to dual-signing to split signing keys up better (Frantisek Hrbata) [1837434] {CVE-2020-10713} - [powerpc] pseries/hotplug-cpu: wait indefinitely for vCPU death (Michael Roth) [1856588] - [powerpc] kvm: ppc: book3s hv: Rework secure mem slot dropping (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Move kvmppc_svm_page_out up (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Migrate hot plugged memory (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: In H_SVM_INIT_DONE, migrate remaining normal-GFNs to secure-GFNs (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Track the state GFNs associated with secure VMs (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Disable page merging in H_SVM_INIT_START (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Fix function definition in book3s_hv_uvmem.c (Michael Roth) [1851259] - [kernel] mmap locking api: initial implementation as rwsem wrappers (Michael Roth) [1851259] - [mm] handle multiple owners of device private pages in migrate_vma (Michael Roth) [1851259] - [mm] migrate.c: clean up useless code in migrate_vma_collect_pmd() (Michael Roth) [1851259] - [mm] remove the unused MIGRATE_PFN_DEVICE flag (Michael Roth) [1851259] - [powerpc] rhel: powerpc: kvm: Increase HDEC threshold to enter guest (David Gibson) [1733467] - [netdrv] r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2 (Michal Schmidt) [1851966] - [fs] ceph: fix inode number handling on arches with 32-bit ino_t (Jeff Layton) [1869679] - [fs] ceph: don't allow setlease on cephfs (Jeff Layton) [1872382] - [block] blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART (Ming Lei) [1859628]- [s390] scsi: zfcp: Move allocation of the shost object to after xconf- and xport-data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence early sysfs interfaces for accesses of shost objects (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence adapter status propagation for common statuses (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move p-t-p port allocation to after xport data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence fc_host updates during link-down handling (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move fc_host updates during xport data handling into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move shost updates during xconfig data handling into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move shost modification after QDIO (re-)open into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: fix fc_host attributes that should be unknown on local link down (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: wire previously driver-specific sysfs attributes also to fc_host (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: expose fabric name as common fc_host sysfs attribute (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: add diagnostics buffer for exchange config data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: diagnostics buffer caching and use for exchange port data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: signal incomplete or error for sync exchange config/port data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fix use-after-free in request timeout handlers (Claudio Imbrenda) [1872796] - [tools] selftests/powerpc: Update the stack expansion test (Gustavo Duarte) [1869755] - [mm] powerpc: Allow 4224 bytes of stack expansion for the signal frame (Gustavo Duarte) [1869755] - [tools] selftests/powerpc: Add test of stack expansion logic (Gustavo Duarte) [1869755] - [mm] mm: check that mm is still valid in madvise() (Jeff Moyer) [1874560] - [block] block: virtio_blk: fix handling single range discard request (Ming Lei) [1842035] - [block] block: respect queue limit of max discard segment (Ming Lei) [1842035] - [fs] io_uring: Fix NULL pointer dereference in loop_rw_iter() (Jeff Moyer) [1854649] - [fs] io_uring: return locked and pinned page accounting (Jeff Moyer) [1854649] - [fs] io_uring: always allow drain/link/hardlink/async sqe flags (Jeff Moyer) [1854649] - [fs] io_uring: ensure double poll additions work with both request types (Jeff Moyer) [1854649] - [fs] io_uring: fix recvmsg memory leak with buffer selection (Jeff Moyer) [1854649] - [fs] io_uring: fix missing msg_name assignment (Jeff Moyer) [1854649] - [fs] io_uring: fix memleak in io_sqe_files_register() (Jeff Moyer) [1854649] - [fs] io_uring: account user memory freed when exit has been queued (Jeff Moyer) [1854649] - [fs] io_uring: fix memleak in __io_sqe_files_update() (Jeff Moyer) [1854649] - [fs] io_uring: fix regression with always ignoring signals in io_cqring_wait() (Jeff Moyer) [1854649] - [fs] io_uring: use signal based task_work running (Jeff Moyer) [1854649] - [kernel] task_work: teach task_work_add() to do signal_wake_up() (Jeff Moyer) [1854649] - [fs] io_uring: fix missing ->mm on exit (Jeff Moyer) [1854649] - [fs] io_uring: fix potential use after free on fallback request free (Jeff Moyer) [1854649] - [fs] io_uring: fix req->work corruption (Jeff Moyer) [1854649] - [fs] io_uring: fix NULL-mm for linked reqs (Jeff Moyer) [1854649] - [fs] io_uring: fix current->mm NULL dereference on exit (Jeff Moyer) [1854649] - [fs] io_uring: fix hanging iopoll in case of -EAGAIN (Jeff Moyer) [1854649] - [fs] io_uring: fix io_sq_thread no schedule when busy (Jeff Moyer) [1854649] - [fs] io_uring: fix possible race condition against REQ_F_NEED_CLEANUP (Jeff Moyer) [1854649] - [fs] io_uring: reap poll completions while waiting for refs to drop on exit (Jeff Moyer) [1854649] - [fs] io_uring: acquire 'mm' for task_work for SQPOLL (Jeff Moyer) [1854649] - [fs] io_uring: add memory barrier to synchronize io_kiocb's result and iopoll_completed (Jeff Moyer) [1854649] - [fs] io_uring: don't fail links for EAGAIN error in IOPOLL mode (Jeff Moyer) [1854649] - [fs] io_uring: fix io_kiocb.flags modification race in IOPOLL mode (Jeff Moyer) [1854649] - [fs] io_uring: allow O_NONBLOCK async retry (Jeff Moyer) [1854649] - [fs] io_uring: use kvfree() in io_sqe_buffer_register() (Jeff Moyer) [1854649] - [fs] io_uring: validate the full range of provided buffers for access (Jeff Moyer) [1854649] - [fs] io_uring: re-set iov base/len for buffer select retry (Jeff Moyer) [1854649] - [fs] io_uring: fix {SQ, IO}POLL with unsupported opcodes (Jeff Moyer) [1854649] - [fs] io_uring: disallow close of ring itself (Jeff Moyer) [1854649] - [fs] io_uring: fix overflowed reqs cancellation (Jeff Moyer) [1854649] - [fs] io_uring: fix flush req->refs underflow (Jeff Moyer) [1854649] - [fs] io_uring: async task poll trigger cleanup (Jeff Moyer) [1854649] - [fs] io_uring: allow POLL_ADD with double poll_wait() users (Jeff Moyer) [1854649] - [fs] io_uring: remove 'fd is io_uring' from close path (Jeff Moyer) [1854649] - [nvme] nvme: allow retry for requests with REQ_FAILFAST_TRANSPORT set (Mike Snitzer) [1843515] - [nvme] nvme: decouple basic ANA log page re-read support from native multipathing (Mike Snitzer) [1843515] - [nvme] nvme: update failover handling to work with REQ_FAILFAST_TRANSPORT (Mike Snitzer) [1843515] - [nvme] nvme: Return BLK_STS_TARGET if the DNR bit is set (Mike Snitzer) [1843515] - [nvme] nvme: redirect commands on dying queue (Mike Snitzer) [1843515] - [nvme] nvme: just check the status code type in nvme_is_path_error (Mike Snitzer) [1843515] - [nvme] nvme: refactor command completion (Mike Snitzer) [1843515] - [nvme] nvme-multipath: do not reset on unknown status (Mike Snitzer) [1843515] - [nvme] Revert "nvme: allow ANA support to be independent of native multipathing" (Mike Snitzer) [1843515] - [nvme] Revert "nvme-multipath: do not reset on unknown status" (Mike Snitzer) [1843515] - [mm] mm, THP, swap: fix allocating cluster for swapfile by mistake (Gao Xiang) [1855474] - [net] sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error flow (Marcelo Leitner) [1866391] - [net] netfilter: conntrack: allow sctp hearbeat after connection re-use (Florian Westphal) [1865798] - [video] vgacon: Fix for missing check in scrollback handling (Lyude Paul) [1859472] {CVE-2020-14331} - [scsi] Revert "scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe" (Nilesh Javali) [1866744] - [scsi] Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix null pointer access during disconnect from subsystem (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Check if FW supports MQ before enabling (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix WARN_ON in qla_nvme_register_hba (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Allow ql2xextended_error_logging special value 1 to be set anytime (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Reduce noisy debug message (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix login timeout (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Flush I/O on zone disable (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Flush all sessions on zone disable (Nilesh Javali) [1866744] - [tools] bpf: selftests: global_funcs: Check err_str before strstr (Yauheni Kaliuta) [1873163] - [netdrv] net/mlx5e: E-Switch, Specify flow_source for rule with no in_port (Alaa Hleihel) [1869602] - [netdrv] net/mlx5e: E-Switch, Add misc bit when misc fields changed for mirroring (Alaa Hleihel) [1869602] - [tools] selftests/bpf: test for map update access from within EXT programs (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [tools] selftests/bpf: test for checking return code for the extended prog (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [tools] selftests/bpf: Add test for freplace program with write access (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [net] bpf: verifier: use target program's type for access verifications (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [scsi] scsi: lpfc: Fix NVMe rport deregister and registration during ADISC (Dick Kennedy) [1871223] - [scsi] scsi: lpfc: Fix LUN loss after cable pull (Dick Kennedy) [1871223] - [infiniband] RDMA/bnxt_re: Do not add user qps to flushlist (Selvin Xavier) [1858674] - [fs] NFSv4.0 allow nconnect for v4.0 (Benjamin Coddington) [1842746] - [mm] mm/vunmap: add cond_resched() in vunmap_pmd_range (Rafael Aquini) [1871710] - [s390] s390/bpf: Maintain 8-byte stack alignment (Jiri Olsa) [1871040]- [netdrv] vrf: Fix IPv6 with qdisc and xfrm (Sabrina Dubroca) [1868565] - [netdrv] vrf: make sure skb->data contains ip header to make routing (Sabrina Dubroca) [1868565] - [netdrv] vrf: Check skb for XFRM_TRANSFORMED flag (Sabrina Dubroca) [1868565] - [net] Do not clear the sock TX queue in sk_set_socket() (Andrea Claudi) [1850421] - [net] Use RCU_INIT_POINTER() to set sk_wq (Andrea Claudi) [1850421] - [net] netfilter: ip6tables: Add a .pre_exit hook in all ip6table_foo.c. (Florian Westphal) [1862384] - [net] netfilter: iptables: Add a .pre_exit hook in all iptable_foo.c. (Florian Westphal) [1862384] - [net] netfilter: ipset: Fix an error code in ip_set_sockfn_get() (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Don't account for expired elements on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Drop spurious condition for overlap detection on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Detect partial overlaps on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start() (Florian Westphal) [1862384] - [net] netfilter: nf_tables: fix nat hook table deletion (Florian Westphal) [1862384] - [net] netfilter: ipset: call ip_set_free() instead of kfree() (Florian Westphal) [1862384] - [net] netfilter: ip6tables: Split ip6t_unregister_table() into pre_exit and exit helpers. (Florian Westphal) [1862384] - [net] netfilter: iptables: Split ipt_unregister_table() into pre_exit and exit helpers. (Florian Westphal) [1862384] - [net] netfilter: nft_set_pipapo: Disable preemption before getting per-CPU pointer (Florian Westphal) [1862384] - [net] netfilter: nft_nat: return EOPNOTSUPP if type or flags are not supported (Florian Westphal) [1862384] - [net] netfilter: conntrack: comparison of unsigned in cthelper confirmation (Florian Westphal) [1862384] - [net] netfilter: conntrack: refetch conntrack after nf_conntrack_update() (Florian Westphal) [1862384] - [net] netfilter: conntrack: Pass value of ctinfo to __nf_conntrack_update (Florian Westphal) [1862384] - [net] netfilter: conntrack: make conntrack userspace helpers work again (Florian Westphal) [1862384] - [net] netfilter: nfnetlink_cthelper: unbreak userspace helper support (Florian Westphal) [1862384] - [net] netfilter: nf_conntrack_pptp: fix compilation warning with W=1 build (Florian Westphal) [1862384] - [net] netfilter: nf_conntrack_pptp: prevent buffer overflows in debug code (Florian Westphal) [1862384] - [net] netfilter: nft_set_bitmap: initialize set element extension in lookups (Florian Westphal) [1862384] - [net] netfilter: nft_fwd_netdev: validate family and chain type (Florian Westphal) [1862384] - [net] netfilter: nft_payload: add missing attribute validation for payload csum flags (Florian Westphal) [1862384] - [net] netfilter: cthelper: add missing attribute validation for cthelper (Florian Westphal) [1862384] - [net] netfilter: ipset: Fix forceadd evaluation path (Florian Westphal) [1862384] - [net] netfilter: bridge: make sure to pull arp header in br_nf_forward_arp() (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: bogus lookup/get on consecutive elements in named sets (Florian Westphal) [1862384] - [net] netfilter: ctnetlink: netns exit must wait for callbacks (Florian Westphal) [1862384] - [arm64] kvm: arm64: Don't inherit exec permission across page-table levels (Andrew Jones) [1869297] - [arm64] kvm: arm64: Flush the instruction cache if not unmapping the VM on reboot (Andrew Jones) [1869297] - [s390] s390, dcssblk: kaddr and pfn can be NULL to ->direct_access() (Claudio Imbrenda) [1868927] - [fs] chardev: Avoid potential use-after-free in 'chrdev_open()' (Vladis Dronov) [1866324] {CVE-2020-0305} - [net] net: accept an empty mask in /sys/class/net/*/queues/rx-*/rps_cpus (Nitesh Narayan Lal) [1868433] - [x86] Revert "x86/intel: Disable HPET on Intel Ice Lake platforms" (David Arcari) [1868405] - [kernel] sched: Fix race against ptrace_freeze_trace() (Oleg Nesterov) [1862560] - [kernel] sched: Fix loadavg accounting race (Oleg Nesterov) [1862560] - [kernel] kernel/sched/: remove caller signal_pending branch predictions (Oleg Nesterov) [1862560] - [kernel] locking/spinlock, sched/core: Clarify requirements for smp_mb__after_spinlock() (Oleg Nesterov) [1862560] - [nvme] nvme: multipath: round-robin: eliminate "fallback" variable (Gopal Tiwari) [1868443] - [nvme] nvme: multipath: round-robin: fix single non-optimized path case (Gopal Tiwari) [1868443] - [nvme] nvme-multipath: do not fall back to __nvme_find_path() for non-optimized paths (Gopal Tiwari) [1868443] - [nvme] nvme-multipath: fix logic for non-optimized paths (Gopal Tiwari) [1868443] - [tools] selftests/bpf: Fix segmentation fault in test_progs (Yauheni Kaliuta) [1868494] - [pci] hv: Fix a timing issue which causes kdump to fail occasionally (Mohammed Gamal) [1861960] - [hv] hv: vmbus: Only notify Hyper-V for die events that are oops (Vitaly Kuznetsov) [1868131] - [x86] kvm: nsvm: Correctly set the shadow NPT root level in its MMU role (Vitaly Kuznetsov) [1845507] - [x86] kvm: x86: drop superfluous mmu_check_root() from fast_pgd_switch() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: use nested_svm_load_cr3() on guest->host switch (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: implement nested_svm_load_cr3() and use it for host->guest switch (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: move kvm_set_cr3() after nested_svm_uninit_mmu_context() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: introduce nested_svm_load_cr3()/nested_npt_enabled() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: prepare to handle errors from enter_svm_guest_mode() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: reset nested_run_pending upon nested_svm_vmrun_msrpm() failure (Vitaly Kuznetsov) [1845507] - [x86] kvm: mmu: stop dereferencing vcpu->arch.mmu to get the context for MMU init (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: split kvm_init_shadow_npt_mmu() from kvm_init_shadow_mmu() (Vitaly Kuznetsov) [1845507] - [security] selinux: compute genfs symlink context in case of CephFS (Ondrej Mosnacek) [1865800] - [fs] ceph: set sec_context xattr on symlink creation (Ondrej Mosnacek) [1861509] - [tools] selftests: bpf: define SO_RCVTIMEO and SO_SNDTIMEO properly for ppc64le (Jiri Benc) [1860386] - [tools] bpf: Sync RHEL version of asm-generic/socket.h to tools/ (Jiri Benc) [1860386] - [tools] selftests: bpf: skip tests not working on RHEL (Jiri Benc) [1866908] - [tools] Revert "selftests: bpf: disable test_lwt_seg6local" (Jiri Benc) [1866908] - [tools] Revert "bpf: selftests: remove test_bpftool_build.sh from TEST_PROGS" (Jiri Benc) [1866908] - [tools] selftests: add option to skip specific tests in RHEL (Jiri Benc) [1866908] - [tools] selftests: bpf: switch off timeout (Jiri Benc) [1866908] - [tools] selftest/firmware: Add selftest timeout in settings (Jiri Benc) [1866908] - [tools] selftests/harness: Limit step counter reporting (Jiri Benc) [1866908] - [tools] selftests/harness: Clean up kern-doc for fixtures (Jiri Benc) [1866908] - [tools] selftests: fix condition in run_tests (Jiri Benc) [1866908] - [tools] selftests: do not use .ONESHELL (Jiri Benc) [1866908] - [tools] selftests/harness: Report skip reason (Jiri Benc) [1866908] - [tools] selftests/harness: Display signed values correctly (Jiri Benc) [1866908] - [tools] selftests/harness: Refactor XFAIL into SKIP (Jiri Benc) [1866908] - [tools] selftests/harness: Switch to TAP output (Jiri Benc) [1866908] - [tools] selftests: Add header documentation and helpers (Jiri Benc) [1866908] - [tools] kselftest: fix TAP output for skipped tests (Jiri Benc) [1866908] - [tools] kselftest: ksft_test_num return type should be unsigned (Jiri Benc) [1866908] - [tools] selftests: introduce gen_tar Makefile target (Jiri Benc) [1866908] - [tools] kselftest: add fixture variants (Jiri Benc) [1866908] - [tools] kselftest: run tests by fixture (Jiri Benc) [1866908] - [tools] kselftest: create fixture objects (Jiri Benc) [1866908] - [tools] kselftest: factor out list manipulation to a helper (Jiri Benc) [1866908] - [tools] selftests: add build/cross-build dependency check script (Jiri Benc) [1866908] - [tools] kselftest/runner: allow to properly deliver signals to tests (Jiri Benc) [1866908] - [tools] selftests/harness: fix spelling mistake "SIGARLM" -> "SIGALRM" (Jiri Benc) [1866908] - [tools] selftests: enforce local header dependency in lib.mk (Jiri Benc) [1866908] - [tools] selftests/harness: Handle timeouts cleanly (Jiri Benc) [1866908] - [tools] selftests/harness: Move test child waiting logic (Jiri Benc) [1866908] - [tools] selftests: Fix kselftest O=objdir build from cluttering top level objdir (Jiri Benc) [1866908] - [tools] selftests: allow detection of build failures (Jiri Benc) [1866908] - [tools] selftests: fix build behaviour on targets' failures (Jiri Benc) [1866908] - [tools] kselftest: Support old perl versions (Jiri Benc) [1866908] - [tools] kselftest/runner: Print new line in print of timeout log (Jiri Benc) [1866908] - [tools] selftests: Fix dangling documentation references to kselftest_module.sh (Jiri Benc) [1866908] - [tools] kselftest: Fix NULL INSTALL_PATH for TARGETS runlist (Jiri Benc) [1866908] - [tools] selftests: Move kselftest_module.sh into kselftest/ (Jiri Benc) [1866908] - [tools] selftests: gen_kselftest_tar.sh: Do not clobber kselftest/ (Jiri Benc) [1866908] - [tools] selftests/kselftest/runner.sh: Add 45 second timeout per test (Jiri Benc) [1866908] - [tools] kselftest: exclude failed TARGETS from runlist (Jiri Benc) [1866908] - [tools] kselftest: add capability to skip chosen TARGETS (Jiri Benc) [1866908] - [tools] selftests: Add kselftest-all and kselftest-install targets (Jiri Benc) [1866908] - [tools] selftests: use "$(MAKE)" instead of "make" (Jiri Benc) [1866908] - [tools] kselftest: save-and-restore errno to allow for m formatting (Jiri Benc) [1866908] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 481 (Jiri Benc) [1866908] - [tools] selftests/harness: Allow test to configure timeout (Jiri Benc) [1866908] - [tools] selftests: avoid KBUILD_OUTPUT dir cluttering with selftest objects (Jiri Benc) [1866908] - [tools] selftests: fix bpf build/test workflow regression when KBUILD_OUTPUT is set (Jiri Benc) [1866908] - [tools] selftests: fix install target to use default install path (Jiri Benc) [1866908] - [tools] selftests: build and run gpio when output directory is the src dir (Jiri Benc) [1866908] - [documentation] doc: kselftest: Fix KBUILD_OUTPUT usage instructions (Jiri Benc) [1866908] - [tools] selftests: fix headers_install circular dependency (Jiri Benc) [1866908] - [tools] selftests/harness: Add 30 second timeout per test (Jiri Benc) [1866908] - [tools] kselftest: Add test module framework header (Jiri Benc) [1866908] - [tools] kselftest: Add test runner creation script (Jiri Benc) [1866908] - [tools] selftests/harness: Update named initializer syntax (Jiri Benc) [1866908] - [tools] selftest: include stdio.h in kselftest.h (Jiri Benc) [1866908] - [tools] selftests: do not macro-expand failed assertion expressions (Jiri Benc) [1866908] - [documentation] Documentation/dev-tools: clean up kselftest.rst (Jiri Benc) [1866908] - [documentation] doc: dev-tools: kselftest.rst: update config file location (Jiri Benc) [1866908] - [documentation] doc: dev-tools: kselftest.rst: update contributing new tests (Jiri Benc) [1866908]- [fs] nfs: ensure correct writeback errors are returned on close() (Scott Mayhew) [1849424] - [netdrv] net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task() (Dean Nelson) [1824858] - [crypto] crypto: ecc - SP800-56A rev 3 local public key validation (Herbert Xu) [1855817] - [crypto] crypto: dh - SP800-56A rev 3 local public key validation (Herbert Xu) [1855817] - [crypto] crypto: dh - check validity of Z before export (Herbert Xu) [1855817] - [lib] lib/mpi: Add mpi_sub_ui() (Herbert Xu) [1855817] - [crypto] crypto: ecdh - check validity of Z before export (Herbert Xu) [1855817] - [netdrv] net: thunderx: initialize VF's mailbox mutex before first usage (Dean Nelson) [1866827] - [kernel] timers: Lower base clock forwarding threshold (Phil Auld) [1833096] - [kernel] timers: Remove must_forward_clk (Phil Auld) [1833096] - [kernel] timers: Spare timer softirq until next expiry (Phil Auld) [1833096] - [kernel] timers: Expand clk forward logic beyond nohz (Phil Auld) [1833096] - [kernel] timers: Reuse next expiry cache after nohz exit (Phil Auld) [1833096] - [kernel] timers: Always keep track of next expiry (Phil Auld) [1833096] - [kernel] timers: Optimize _next_timer_interrupt() level iteration (Phil Auld) [1833096] - [kernel] timers: Add comments about calc_index() ceiling work (Phil Auld) [1833096] - [kernel] timers: Move trigger_dyntick_cpu() to enqueue_timer() (Phil Auld) [1833096] - [kernel] timers: Use only bucket expiry for base->next_expiry value (Phil Auld) [1833096] - [kernel] timers: Preserve higher bits of expiration on index calculation (Phil Auld) [1833096] - [kernel] timer: Fix wheel index calculation on last level (Phil Auld) [1833096] - [kernel] timer: Prevent base->clk from moving backward (Phil Auld) [1833096] - [kernel] timer: Read jiffies once when forwarding base clk (Phil Auld) [1833096] - [powerpc] powerpc/64: Update Speculation_Store_Bypass in /proc//status (Gustavo Duarte) [1773868] - [scsi] scsi: virtio-scsi: Correctly handle the case where all LUNs are unplugged (Maxim Levitsky) [1756093] - [kvm] kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host (Maxim Levitsky) [1853447] - [kvm] x86/kvm: Move context tracking where it belongs (Nitesh Narayan Lal) [1854011] - [scsi] scsi: megaraid_sas: Clear affinity hint (Tomas Henzl) [1828351] - [netdrv] revert "vxlan: fix tos value before xmit" (Andrea Claudi) [1862166] - [net] udp: Copy has_conns in reuseport_grow(). (Marcelo Leitner) [1867160] - [net] dev: Defer free of skbs in flush_backlog (Marcelo Leitner) [1867160] - [include] net: core: reduce recursion limit value (Marcelo Leitner) [1867160] - [netdrv] pppoe: only process PADT targeted at local interfaces (Andrea Claudi) [1866850] - [net] espintcp: count packets dropped in espintcp_rcv (Sabrina Dubroca) [1866393] - [net] espintcp: handle short messages instead of breaking the encap socket (Sabrina Dubroca) [1866393] - [net] espintcp: recv() should return 0 when the peer socket is closed (Sabrina Dubroca) [1866393] - [net] espintcp: support non-blocking sends (Sabrina Dubroca) [1866393] - [net] mptcp: be careful on subflow creation (Davide Caratti) [1862200] - [net] mptcp: fix bogus sendmsg() return code under pressure (Davide Caratti) [1862200] - [net] mptcp: fix joined subflows with unblocking sk (Davide Caratti) [1862200] - [net] subflow: explicitly check for plain tcp rsk (Davide Caratti) [1862200] - [net] mptcp: silence warning in subflow_data_ready() (Davide Caratti) [1862200] - [net] mptcp: fix race in subflow_data_ready() (Davide Caratti) [1862200] - [net] mptcp: fix memory leak in mptcp_subflow_create_socket() (Davide Caratti) [1862200] - [net] mptcp: don't leak msk in token container (Davide Caratti) [1862200] - [net] ipv4: Silence suspicious RCU usage warning (Guillaume Nault) [1866430] - [net] devinet: fix memleak in inetdev_init() (Guillaume Nault) [1866430] - [net] ipip: fix wrong address family in init error path (Guillaume Nault) [1866430] - [net] inet_csk: Fix so_reuseport bind-address cache in tb->fast* (Guillaume Nault) [1866430] - [net] ipmr: Add lockdep expression to ipmr_for_each_table macro (Guillaume Nault) [1866430] - [net] ipmr: Fix RCU list debugging warning (Guillaume Nault) [1866430] - [net] tcp: make sure listeners don't initialize congestion-control state (Paolo Abeni) [1865904] - [net] sched: The error lable position is corrected in ct_init_module (Davide Caratti) [1865890] - [net] sched: cls_api: fix nooffloaddevcnt warning dmesg log (Davide Caratti) [1865890] - [net] tls: fix race condition causing kernel panic (Sabrina Dubroca) [1861756] - [net] tls: free record only on encryption error (Sabrina Dubroca) [1861756] - [net] tls: fix encryption error checking (Sabrina Dubroca) [1861756] - [net] l2tp: add sk_family checks to l2tp_validate_socket (Guillaume Nault) [1861453] - [net] l2tp: do not use inet_hash()/inet_unhash() (Guillaume Nault) [1861453] - [net] tipc: allow to build NACK message in link timeout function (Xin Long) [1860877] - [net] tipc: fix retransmission on unicast links (Xin Long) [1860877] - [net] tipc: fix NULL pointer dereference in tipc_disc_rcv() (Xin Long) [1860877] - [net] tipc: remove set but not used variable 'prev' (Xin Long) [1860877] - [net] tipc: call tsk_set_importance from tipc_topsrv_create_listener (Xin Long) [1860877] - [net] tipc: add support for broadcast rcv stats dumping (Xin Long) [1860877] - [net] tipc: enable broadcast retrans via unicast (Xin Long) [1860877] - [net] tipc: add back link trace events (Xin Long) [1860877] - [net] tipc: introduce Gap ACK blocks for broadcast link (Xin Long) [1860877] - [net] tipc: block BH before using dst_cache (Xin Long) [1860877] - [net] tipc: fix partial topology connection closure (Xin Long) [1860877] - [net] xfrm: policy: match with both mark and mask on user interfaces (Xin Long) [1854116] - [scsi] scsi: dh: Add Fujitsu device to devinfo and dh lists (Ewan Milne) [1861418] - [x86] kvm: Set KVM_SOFT_MAX_VCPUS to 1024 (Eduardo Habkost) [1856996] - [md] dm integrity: fix integrity recalculation that is improperly skipped (Mike Snitzer) [1860160] - [netdrv] ibmvnic: Fix IRQ mapping disposal in error path (Steve Best) [1867498] - [infiniband] IB/hfi1: Do not destroy link_wq when the device is shut down (Kamal Heib) [1858392] - [infiniband] IB/hfi1: Do not destroy hfi1_wq when the device is shut down (Kamal Heib) [1858392] - [netdrv] Revert "net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1867146] - [net] devmap: Use bpf_map_area_alloc() for allocating hash buckets (Jiri Benc) [1842380] - [kernel] kexec_file: Correctly output debugging information for the PT_LOAD ELF header (Lianbo Jiang) [1861186] - [kernel] kexec: Improve & fix crash_exclude_mem_range() to handle overlapping ranges (Lianbo Jiang) [1861186] - [x86] x86/crash: Correct the address boundary of function parameters (Lianbo Jiang) [1861186] - [fs] ceph: handle zero-length feature mask in session messages (Jeff Layton) [1866018] - [s390] s390/bpf: Tolerate not converging code shrinking (Yauheni Kaliuta) [1857120] - [s390] s390/bpf: Use brcl for jumping to exit_ip if necessary (Yauheni Kaliuta) [1857120] - [s390] s390/bpf: Fix sign extension in branch_ku (Yauheni Kaliuta) [1857120] - [tools] selftests: bpf: test_kmod.sh: Fix running out of srctree (Yauheni Kaliuta) [1857120] - [lib] bpf: revert "test_bpf: Flag tests that cannot be jited on s390" (Yauheni Kaliuta) [1857120] - [kernel] uprobes: ensure that uprobe->offset and ->ref_ctr_offset are properly aligned (Oleg Nesterov) [1848596]- [fs] nfs: nfs_file_write() should check for writeback errors (Scott Mayhew) [1852788] - [s390] s390/cpum_cf, perf: change DFLT_CCERROR counter name (Philipp Rudo) [1865794] - [net] net/smc: unique reason code for exceeded max dmb count (Philipp Rudo) [1865792] - [s390] s390/ism: indicate correct error reason in ism_alloc_dmb() (Philipp Rudo) [1865792] - [net] net/smc: fix dmb buffer shortage (Philipp Rudo) [1865792] - [net] net/smc: put slot when connection is killed (Philipp Rudo) [1865792] - [net] net/smc: fix restoring of fallback changes (Philipp Rudo) [1865792] - [net] net/smc: remove freed buffer from list (Philipp Rudo) [1865792] - [net] net/smc: do not call dma sync for unmapped memory (Philipp Rudo) [1865792] - [net] net/smc: fix handling of delete link requests (Philipp Rudo) [1865792] - [net] net/smc: move add link processing for new device into llc layer (Philipp Rudo) [1865792] - [net] net/smc: drop out-of-flow llc response messages (Philipp Rudo) [1865792] - [net] net/smc: protect smc ib device initialization (Philipp Rudo) [1865792] - [net] net/smc: fix link lookup for new rdma connections (Philipp Rudo) [1865792] - [net] net/smc: clear link during SMC client link down processing (Philipp Rudo) [1865792] - [net] net/smc: handle unexpected response types for confirm link (Philipp Rudo) [1865792] - [net] net/smc: switch smcd_dev_list spinlock to mutex (Philipp Rudo) [1865792] - [net] net/smc: fix sleep bug in smc_pnet_find_roce_resource() (Philipp Rudo) [1865792] - [net] net/smc: fix work request handling (Philipp Rudo) [1865792] - [net] net/smc: separate LLC wait queues for flow and messages (Philipp Rudo) [1865792] - [net] net/smc: pre-fetch send buffer outside of send_lock (Philipp Rudo) [1865792] - [nvme] nvme-fc: set max_segments to lldd max value (Ewan Milne) [1853181] - [powerpc] ppc64/kexec_file: enable early kernel's OPAL calls (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: fix kexec load failure with lack of memory hole (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: add appropriate regions for memory reserve map (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: prepare elfcore header for crashing kernel (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: setup backup region for kdump kernel (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: restrict memory usage of kdump kernel (Diego Domingos) [1829715] - [mm] powerpc/drmem: make lmb walk a bit more flexible (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: avoid stomping memory used by special regions (Diego Domingos) [1829715] - [powerpc] powerpc/kexec_file: add helper functions for getting memory ranges (Diego Domingos) [1829715] - [powerpc] powerpc/kexec_file: mark PPC64 specific code (Diego Domingos) [1829715] - [kernel] kexec_file: allow archs to handle special regions while locating memory hole (Diego Domingos) [1829715] - [netdrv] net/mlx5e: CT: Support restore ipv6 tunnel (Alaa Hleihel) [1862975] - [netdrv] ionic: unlock queue mutex in error path (Jonathan Toppins) [1854270] - [netdrv] ionic: use mutex to protect queue operations (Jonathan Toppins) [1854270] - [net] xfrm: esp6: fix the location of the transport header with encapsulation (Sabrina Dubroca) [1857653] - [net] ipv4: fill fl4_icmp_{type, code} in ping_v4_sendmsg (Sabrina Dubroca) [1861324] - [netdrv] geneve: fix an uninitialized value in geneve_changelink() (Sabrina Dubroca) [1860945] - [net] ip_tunnel: fix use-after-free in ip_tunnel_lookup() (Sabrina Dubroca) [1860945] - [netdrv] vxlan: Avoid infinite loop when suppressing NS messages with invalid options (Sabrina Dubroca) [1860945] - [tools] selftests: mptcp: capture pcap on both sides (Hangbin Liu) [1859880] - [tools] selftests/net: report etf errors correctly (Hangbin Liu) [1859880] - [tools] selftests: net: ip_defrag: ignore EPERM (Hangbin Liu) [1859880] - [tools] selftests: forwarding: pedit_dsfield: Check counter value (Hangbin Liu) [1859880] - [tools] selftests: net: tcp_mmap: fix SO_RCVLOWAT setting (Hangbin Liu) [1859880] - [tools] selftests: net: tcp_mmap: clear whole tcp_zerocopy_receive struct (Hangbin Liu) [1859880] - [tools] selftests: A few improvements to fib_nexthops.sh (Hangbin Liu) [1859880] - [tools] selftests: Add tests for vrf and xfrms (Hangbin Liu) [1859880] - [tools] selftests: pmtu: implement IPIP, SIT and ip6tnl PMTU discovery tests (Hangbin Liu) [1859880] - [tools] selftests/net/forwarding: define libs as TEST_PROGS_EXTENDED (Hangbin Liu) [1859880] - [tools] selftests/net/forwarding: add Makefile to install tests (Hangbin Liu) [1859880] - [tools] selftests: nft_concat_range: Move option for 'list ruleset' before command (Hangbin Liu) [1859880] - [tools] selftests: netfilter: use randomized netns names (Hangbin Liu) [1859880] - [tools] kselftests: netfilter: fix leftover net/net-next merge conflict (Hangbin Liu) [1859880] - [tools] selftests: netfilter: missing error check when setting up veth interface (Hangbin Liu) [1859880] - [net] sctp: Don't advertise IPv4 addresses if ipv6only is set on the socket (Xin Long) [1860673] - [net] sctp: check assoc before SCTP_ADDR_{MADE_PRIM, ADDED} event (Xin Long) [1860673] - [net] sctp: fix typo sctp_ulpevent_nofity_peer_addr_change (Xin Long) [1860673] - [net] sctp: Fix spelling in Kconfig help (Xin Long) [1860673] - [net] sctp: Start shutdown on association restart if in SHUTDOWN-SENT state and socket is closed (Xin Long) [1860673] - [net] sctp: Don't add the shutdown timer if its already been added (Xin Long) [1860673] - [net] sctp: Fix SHUTDOWN CTSN Ack in the peer restart case (Xin Long) [1860673] - [net] sctp: Fix bundling of SHUTDOWN with COOKIE-ACK (Xin Long) [1860673] - [net] ip6_vti: use IS_REACHABLE to avoid some compile errors (Xin Long) [1840976 1835075] - [net] xfrm: interface: use IS_REACHABLE to avoid some compile errors (Xin Long) [1840976 1835075] - [net] xfrm: interface: not xfrmi_ipv6/ipip_handler twice (Xin Long) [1840976 1835075] - [net] ip6_vti: not register vti_ipv6_handler twice (Xin Long) [1840976 1835075] - [net] ip_vti: not register vti_ipip_handler twice (Xin Long) [1840976 1835075] - [net] xfrm: interface: support IPIP and IPIP6 tunnels processing with .cb_handler (Xin Long) [1840976 1835075] - [net] xfrm: interface: support IP6IP6 and IP6IP tunnels processing with .cb_handler (Xin Long) [1840976 1835075] - [net] ipcomp: assign if_id to child tunnel from parent tunnel (Xin Long) [1840976 1835075] - [net] ip6_vti: support IP6IP tunnel processing (Xin Long) [1840976 1835075] - [net] ip6_vti: support IP6IP6 tunnel processing with .cb_handler (Xin Long) [1840976 1835075] - [net] ip_vti: support IPIP6 tunnel processing (Xin Long) [1840976 1835075] - [net] ip_vti: support IPIP tunnel processing with .cb_handler (Xin Long) [1840976 1835075] - [net] tunnel6: add tunnel6_input_afinfo for ipip and ipv6 tunnels (Xin Long) [1840976 1835075] - [net] tunnel4: add cb_handler to struct xfrm_tunnel (Xin Long) [1840976 1835075] - [net] xfrm: add is_ipip to struct xfrm_input_afinfo (Xin Long) [1840976 1835075] - [net] tunnel6: support for IPPROTO_MPLS (Xin Long) [1840976 1835075] - [net] virtio_vsock: Enhance connection semantics (Stefano Garzarella) [1861735] - [net] virtio_vsock: Fix race condition in virtio_transport_recv_pkt (Stefano Garzarella) [1858135] - [net] vsock/virtio: annotate 'the_virtio_vsock' RCU pointer (Stefano Garzarella) [1861762] - [vhost] vsock/virtio: fix multiple packet delivery to monitoring devices (Stefano Garzarella) [1861762] - [vhost] vsock: fix packet delivery order to monitoring devices (Stefano Garzarella) [1861762] - [vhost] vsock: accept only packets with the right dst_cid (Stefano Garzarella) [1861762] - [vhost] vsock: refuse CID assigned to the guest->host transport (Stefano Garzarella) [1861762] - [vhost] vsock: switch to a mutex for vhost_vsock_hash (Stefano Garzarella) [1861762] - [net] vsock: fix timeout in vsock_accept() (Stefano Garzarella) [1861762] - [net] vsock: Simplify '__vsock_release()' (Stefano Garzarella) [1861762] - [netdrv] net/mlx5e: Fix kernel crash when setting vf VLANID on a VF dev (Alaa Hleihel) [1859477] - [netdrv] net/mlx5e: Modify uplink state on interface up/down (Alaa Hleihel) [1861720 1859477] - [netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup (Alaa Hleihel) [1859477 1856660] - [netdrv] ixgbe: Add ethtool support to enable 2.5 and 5.0 Gbps support (Ken Cox) [1835962] - [x86] x86/purgatory: Add -fno-stack-protector (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Fail the build if purgatory.ro has missing symbols (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Do not use __builtin_memcpy and __builtin_memset (Lianbo Jiang) [1857528] - [x86] x86/boot: Provide KASAN compatible aliases for string routines (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Disable various profiling and sanitizing options (Lianbo Jiang) [1857528] - [x86] x86/boot: Restrict header scope to make Clang happy (Lianbo Jiang) [1857528]- [x86] x86/entry/64: Update comments and sanity tests for create_gap (Jiri Olsa) [1850831] - [x86] x86/alternatives: add missing insn.h include (Jiri Olsa) [1850831] - [x86] x86/alternatives: Teach text_poke_bp() to emulate instructions (Jiri Olsa) [1850831] - [x86] x86/paravirt: Standardize 'insn_buff' variable names (Jiri Olsa) [1850831] - [x86] x86_64: Allow breakpoints to emulate call instructions (Jiri Olsa) [1850831] - [x86] x86_64: Add gap to int3 to allow for call emulation (Jiri Olsa) [1850831] - [x86] x86/alternatives: Sync bp_patching update for avoiding NULL pointer exception (Jiri Olsa) [1850831] - [nvme] nvme: add a Identify Namespace Identification Descriptor list quirk (Gopal Tiwari) [1862136] - [nvme] nvme: fix identify error status silent ignore (Gopal Tiwari) [1862136] - [nvme] nvme: fix possible hang when ns scanning fails during error recovery (Gopal Tiwari) [1862136] - [nvme] nvme: refactor nvme_identify_ns_descs error handling (Gopal Tiwari) [1862136] - [infiniband] IB/rdmavt: Fix RQ counting issues causing use of an invalid RWQE (Kamal Heib) [1850314] - [powerpc] powerpc/pseries: PCIE PHB reset (Steve Best) [1747345] - [drm] drm/nouveau/kms: Handle -EINPROGRESS in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Fix runtime PM leak in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Invert conditionals in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Use pm_runtime_put_autosuspend() in hpd_work (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Use pm_runtime_put_autosuspend() in suspend work (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Fix pm_runtime calls in nouveau_fbcon_output_poll_changed() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Correct pm_runtime calls in nouveau_fbcon_release() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Fix rpm leak in nouveau_connector_hotplug() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Handle -EINPROGRESS in nouveau_connector_hotplug() (Lyude Paul) [1827812] - [drm] drm/nouveau/fbcon: fix module unload when fbcon init has failed for some reason (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/tu102: wait for core update to complete when assigning windows (Lyude Paul) [1827812] - [drm] drm/nouveau/disp/gm200-: fix regression from HDA SOR selection changes (Lyude Paul) [1827812] - [drm] drm/amd/powerplay: fix a crash when overclocking Vega M (Lyude Paul) [1827812] - [drm] drm/amdgpu: Fix NULL dereference in dpm sysfs handlers (Lyude Paul) [1827812] - [drm] drm/amdgpu: fix preemption unit test (Lyude Paul) [1827812] - [drm] drm/amdgpu/gfx10: fix race condition for kiq (Lyude Paul) [1827812] - [drm] drm/amd/display: add dmcub check on RENOIR (Lyude Paul) [1827812] - [drm] drm/amd/display: Check DMCU Exists Before Loading (Lyude Paul) [1827812] - [drm] drm/nouveau/nouveau: fix page fault on device private memory (Lyude Paul) [1827812] - [drm] drm/nouveau/i2c/g94-: increase NV_PMGR_DP_AUXCTL_TRANSACTREQ timeout (Lyude Paul) [1827812] - [drm] drm/i915/perf: Use GTT when saving/restoring engine GPR (Lyude Paul) [1827812] - [drm] drm/i915/gvt: Fix two CFL MMIO handling caused by regression (Lyude Paul) [1827812] - [drm] drm/i915/gt: Only swap to a random sibling once upon creation (Lyude Paul) [1827812] - [drm] drm/i915/gt: Ignore irq enabling on the virtual engines (Lyude Paul) [1827812] - [drm] drm/i915: Move cec_notifier to intel_hdmi_connector_unregister, v2 (Lyude Paul) [1827812] - [drm] drm/amdgpu/display: create fake mst encoders ahead of time (v4) (Lyude Paul) [1827812] - [drm] drm/amd/display: handle failed allocation during stream construction (Lyude Paul) [1827812] - [drm] drm/amdgpu/sdma5: fix wptr overwritten in ->get_wptr() (Lyude Paul) [1827812] - [drm] drm/amdgpu/powerplay: Modify SMC message name for setting power profile mode (Lyude Paul) [1827812] - [drm] drm/i915: Also drop vm.ref along error paths for vma construction (Lyude Paul) [1827812] - [drm] drm/i915: Drop vm.ref for duplicate vma on construction (Lyude Paul) [1827812] - [drm] drm/amdgpu: asd function needs to be unloaded in suspend phase (Lyude Paul) [1827812] - [drm] drm/amdgpu: add TMR destory function for psp (Lyude Paul) [1827812] - [drm] drm/amdgpu: don't do soft recovery if gpu_recovery=0 (Lyude Paul) [1827812] - [drm] drm/i915: Skip stale object handle for debugfs per-file-stats (Lyude Paul) [1827812] - [drm] drm/i915/gt: Pin the rings before marking active (Lyude Paul) [1827812] - [drm] drm/radeon: fix double free (Lyude Paul) [1827812] - [drm] drm: panel-orientation-quirks: Use generic orientation-data for Acer S1003 (Lyude Paul) [1827812] - [drm] drm: panel-orientation-quirks: Add quirk for Asus T101HA panel (Lyude Paul) [1827812] - [iommu] iommu/vt-d: Don't apply gfx quirks to untrusted devices (Lyude Paul) [1827812] - [drm] drm/tegra: hub: Do not enable orphaned window group (Lyude Paul) [1827812] - [drm] drm/ttm: Fix dma_fence refcnt leak when adding move fence (Lyude Paul) [1827812] - [drm] drm/ttm: Fix dma_fence refcnt leak in ttm_bo_vm_fault_reserved (Lyude Paul) [1827812] - [drm] drm/amdgpu/atomfirmware: fix vram_info fetching for renoir (Lyude Paul) [1827812] - [drm] drm/amdgpu: use u rather than d for sclk/mclk (Lyude Paul) [1827812] - [drm] drm/amd/display: Only revalidate bandwidth on medium and fast updates (Lyude Paul) [1827812] - [drm] drm/i915/gt: Mark timeline->cacheline as destroyed after rcu grace period (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix ineffective setting of max bpc property (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix incorrectly pruned modes with deep color (Lyude Paul) [1827812] - [drm] drm/amdgpu: add fw release for sdma v5_0 (Lyude Paul) [1827812] - [drm] drm/radeon: fix fb_div check in ni_init_smc_spll_table() (Lyude Paul) [1827812] - [drm] drm/amd: fix potential memleak in err branch (Lyude Paul) [1827812] - [drm] drm/amd/display: Enable output_bpc property on all outputs (Lyude Paul) [1827812] - [drm] drm/amd/display: Use kfree() to free rgb_user in calculate_user_regamma_ramp() (Lyude Paul) [1827812] - [drm] Revert "drm/amd/display: disable dcn20 abm feature for bring up" (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move gen4 GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move vlv GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move ilk GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move snb GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move ivb GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move hsw GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Incrementally check for rewinding (Lyude Paul) [1827812] - [drm] drm/i915/tc: fix the reset of ln0 (Lyude Paul) [1827812] - [drm] drm/i915/icl+: Fix hotplug interrupt disabling after storm detection (Lyude Paul) [1827812] - [drm] drm/amd/display: Use kvfree() to free coeff in build_regamma() (Lyude Paul) [1827812] - [drm] drm/amdkfd: Use correct major in devcgroup check (Lyude Paul) [1827812] - [drm] drm/connector: notify userspace on hotplug after register complete (Lyude Paul) [1827812] - [drm] drm/i915: Whitelist context-local timestamp in the gen9 cmdparser (Lyude Paul) [1827812] - [drm] drm/i915/gem: Avoid iterating an empty list (Lyude Paul) [1827812] - [drm] drm/i915: Fix AUX power domain toggling across TypeC mode resets (Lyude Paul) [1827812] - [drm] drm/dp_mst: Increase ACT retry timeout to 3s (Lyude Paul) [1827812] - [drm] drm/ast: Don't check new mode if CRTC is being disabled (Lyude Paul) [1827812] - [drm] drm/amdgpu: Replace invalid device ID with a valid device ID (Lyude Paul) [1827812] - [drm] drm/amdgpu/display: use blanked rather than plane state for sync groups (Lyude Paul) [1827812] - [drm] drm/qxl: Use correct notify port address when creating cursor ring (Lyude Paul) [1827812] - [drm] drm/dp_mst: Reformat drm_dp_check_act_status() a bit (Lyude Paul) [1827812] - [drm] drm/ast: fix missing break in switch statement for format->cppcase 4 (Lyude Paul) [1827812] - [drm] drm/amd/display: Revalidate bandwidth before commiting DC updates (Lyude Paul) [1827812] - [drm] drm/nouveau: gr/gk20a: Use firmware version 0 (Lyude Paul) [1827812] - [drm] drm/amdgpu: Sync with VM root BO when switching VM to CPU update mode (Lyude Paul) [1827812] - [drm] drm/amd/powerpay: Disable gfxoff when setting manual mode on picasso and raven (Lyude Paul) [1827812] - [drm] drm/amd/display: Do not disable pipe split if mode is not supported (Lyude Paul) [1827812] - [drm] drm/amd/display: dmcu wait loop calculation is incorrect in RV (Lyude Paul) [1827812] - [drm] drm/amd/display: Correct updating logic of dcn21's pipe VM flags (Lyude Paul) [1827812] - [drm] drm/ast: Allocate initial CRTC state of the correct size (Lyude Paul) [1827812] - [drm] drm/hisilicon: Enforce 128-byte stride alignment to fix the hardware limitation (Lyude Paul) [1827812] - [drm] drm/dp: Lenovo X13 Yoga OLED panel brightness fix (Lyude Paul) [1827812] - [drm] drm/i915/dpcd_bl: Unbreak enable_dpcd_backlight modparam (Lyude Paul) [1827812] - [drm] drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels (Lyude Paul) [1827812] - [drm] drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel (Lyude Paul) [1827812] - [drm] drm/dp: Introduce EDID-based quirks (Lyude Paul) [1827812] - [drm] drm/amdgpu: Init data to avoid oops while reading pp_num_states (Lyude Paul) [1827812] - [drm] drm/amd/display: fix virtual signal dsc setup (Lyude Paul) [1827812] - [drm] drm/amd/display: Force watermark value propagation (Lyude Paul) [1827812] - [drm] drm: bridge: adv7511: Extend list of audio sample rates (Lyude Paul) [1827812] - [drm] drm/amdgpu: fix and cleanup amdgpu_gem_object_close v4 (Lyude Paul) [1827812] - [drm] drm/vkms: Hold gem object while still in-use (Lyude Paul) [1827812] - [drm] drm/amd/display: Not doing optimize bandwidth if flip pending (Lyude Paul) [1827812] - [drm] drm/amd/display: remove invalid dc_is_hw_initialized function (Lyude Paul) [1827812] - [drm] drm/amd/display: DP training to set properly SCRAMBLING_DISABLE (Lyude Paul) [1827812] - [drm] drm/edid: Add Oculus Rift S to non-desktop list (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix potential integer wraparound resulting in a hang (Lyude Paul) [1827812] - [drm] drm/amd/display: Added locking for atomic update stream and update planes (Lyude Paul) [1827812] - [drm] drm/amd/display: Indicate dsc updates explicitly (Lyude Paul) [1827812] - [drm] drm/amd/display: Split program front end part that occur outside lock (Lyude Paul) [1827812] - [drm] drm/amd/display: drop cursor position check in atomic test (Lyude Paul) [1827812] - [drm] drm/amd/amdgpu: Update update_config() logic (Lyude Paul) [1827812] - [drm] drm/amdgpu: Use GEM obj reference for KFD BOs (Lyude Paul) [1827812] - [drm] drm/amd/powerplay: perform PG ungate prior to CG ungate (Lyude Paul) [1827812] - [drm] drm/amdgpu: drop unnecessary cancel_delayed_work_sync on PG ungate (Lyude Paul) [1827812] - [drm] drm/i915: Propagate error from completed fences (Lyude Paul) [1827812] - [drm] drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance (Lyude Paul) [1827812] - [drm] drm/amd/display: Prevent dpcd reads with passive dongles (Lyude Paul) [1827812] - [drm] drm/amd/display: fix counter in wait_for_no_pipes_pending (Lyude Paul) [1827812] - [gpu] vgaarb: Keep adding VGA device in queue (Lyude Paul) [1827812]- [net] openvswitch: fixes potential deadlock in dp cleanup code (Eelco Chaudron) [1845662] - [net] openvswitch: reorder masks array based on usage (Eelco Chaudron) [1845662] - [net] openvswitch: ovs_ct_exit to be done under ovs_lock (Eelco Chaudron) [1860853] - [net] ip6_gre: fix null-ptr-deref in ip6gre_init_net() (Hangbin Liu) [1860221] - [net] ip6_gre: fix use-after-free in ip6gre_tunnel_lookup() (Hangbin Liu) [1860221] - [net] mld: fix memory leak in ipv6_mc_destroy_dev() (Hangbin Liu) [1860221] - [net] ipv6: Fix suspicious RCU usage warning in ip6mr (Hangbin Liu) [1860221] - [net] ip6mr: Fix RCU list debugging warning (Hangbin Liu) [1860221] - [net] revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu" (Hangbin Liu) [1860221] - [netdrv] macsec: avoid to set wrong mtu (Sabrina Dubroca) [1860944] - [netdrv] team: fix hang in team_mode_get() (Hangbin Liu) [1860219] - [include] xfrm: Fix crash when the hold queue is used. (Xin Long) [1860672] - [net] xfrm: policy: fix IPv6-only espintcp compilation (Xin Long) [1860672] - [net] xfrm: esp6: fix encapsulation header offset computation (Xin Long) [1860672] - [net] xfrm: Fix double ESP trailer insertion in IPsec crypto offload. (Xin Long) [1860672] - [net] esp4: improve xfrm4_beet_gso_segment() to be more readable (Xin Long) [1860672] - [net] xfrm interface: don't take extra reference to netdev (Xin Long) [1860672] - [net] xfrm interface: fix oops when deleting a x-netns interface (Xin Long) [1860672] - [net] xfrm: remove the unnecessary .net_exit for xfrmi (Xin Long) [1860672] - [net] xfrm: Always set XFRM_TRANSFORMED in xfrm{4, 6}_output_finish (Xin Long) [1860672] - [include] xfrm: fix error in comment (Xin Long) [1860672] - [net] sctp: shrink stream outq when fails to do addstream reconf (Xin Long) [1853535] - [net] sctp: shrink stream outq only when new outcnt < old outcnt (Xin Long) [1853535] - [net] tipc: fix kernel WARNING in tipc_msg_append() (Xin Long) [1844377] - [net] tipc: fix NULL pointer dereference in streaming (Xin Long) [1844377] - [net] tipc: add test for Nagle algorithm effectiveness (Xin Long) [1844377] - [net] tipc: fix failed service subscription deletion (Xin Long) [1844377] - [net] tipc: fix memory leak in service subscripting (Xin Long) [1844377] - [net] tipc: fix large latency in smart Nagle streaming (Xin Long) [1844377] - [net] mptcp: add receive buffer auto-tuning (Florian Westphal) [1858276] - [tools] selftests: mptcp: add option to specify size of file to transfer (Florian Westphal) [1858276] - [net] mptcp: fallback in case of simultaneous connect (Florian Westphal) [1858276] - [net] mptcp: improve fallback to TCP (Florian Westphal) [1858276] - [net] mptcp: fix unblocking connect() (Florian Westphal) [1858276] - [net] mptcp: cache msk on MP_JOIN init_req (Florian Westphal) [1858276] - [net] mptcp: remove msk from the token container at destruction time. (Florian Westphal) [1858276] - [net] mptcp: fix races between shutdown and recvmsg (Florian Westphal) [1858276] - [net] mptcp: fix race between MP_JOIN and close (Florian Westphal) [1858276] - [net] mptcp: drop MPTCP_PM_MAX_ADDR (Florian Westphal) [1858276] - [net] mptcp: bugfix for RM_ADDR option parsing (Florian Westphal) [1858276] - [net] mptcp: drop MP_JOIN request sock on syn cookies (Florian Westphal) [1858276] - [net] mptcp: avoid NULL-ptr derefence on fallback (Florian Westphal) [1858276] - [net] mptcp: drop sndr_key in mptcp_syn_options (Florian Westphal) [1858276] - [net] mptcp: MPTCP_HMAC_TEST should depend on MPTCP (Florian Westphal) [1858276] - [net] mptcp: fix DSS map generation on fin retransmission (Florian Westphal) [1858276] - [net] inet_connection_sock: clear inet_num out of destroy helper (Florian Westphal) [1858276] - [net] mptcp: fix NULL ptr dereference in MP_JOIN error path (Florian Westphal) [1858276] - [net] mptcp: avoid blocking in tcp_sendpages (Florian Westphal) [1858276] - [net] mptcp: break and restart in case mptcp sndbuf is full (Florian Westphal) [1858276] - [net] l2tp: remove skb_dst_set() from l2tp_xmit_skb() (Xin Long) [1832799] - [net] rtnetlink: prevent underflows in do_setvfinfo() (Davide Caratti) [1854740] - [net] netfilter: nf_tables: reintroduce the NFT_SET_CONCAT flag (Phil Sutter) [1847553] - [net] netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type (Phil Sutter) [1847553] - [net] openvswitch: take into account de-fragmentation/gso_size in execute_check_pkt_len (Lorenzo Bianconi) [1851888] - [tools] selftests: forwarding: mirror_lib: Use mausezahn (Davide Caratti) [1816443] - [x86] perf/x86/rapl: Add Ice Lake RAPL support (Michael Petlan) [1841266] - [arm64] arm64/mm: enable HugeTLB migration (Donghai Qiao) [1758717] - [scsi] scsi: core: Run queue in case of I/O resource contention failure (Ewan Milne) [1854958] - [message] scsi: mptscsih: Fix read sense data size (Tomas Henzl) [1850563] - [netdrv] net: qed: fix buffer overflow on ethtool -d (Manish Chopra) [1858915] - [x86] sched/cputime: Improve cputime_adjust() (Oleg Nesterov) [1859977] - [kernel] uprobes: Change handle_swbp() to send SIGTRAP with si_code=SI_KERNEL, to fix GDB regression (Oleg Nesterov) [1855390] - [x86] x86/asm: Fix MWAITX C-state hint value (Vladis Dronov) [1767064] - [x86] x86/kexec: Fill in acpi_rsdp_addr from the first kernel (Kairui Song) [1684462] - [x86] x86/kexec: Don't setup EFI info if EFI runtime is not enabled (Kairui Song) [1684462] - [vfio] vfio/pci: fix racy on error and request eventfd ctx (Alex Williamson) [1858346] - [platform] platform/x86: ISST: Increase timeout (Prarit Bhargava) [1854682] - [mm] x86/mm: split vmalloc_sync_all() (Al Stone) [1851547] - [acpi] ACPI: watchdog: Fix gas->access_width usage (Al Stone) [1851547] - [acpi] ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro (Al Stone) [1851547]- [virt] kvm: x86: take as_id into account when checking PGD (Vitaly Kuznetsov) [1615704] - [arm64] kvm: arm64: Stop clobbering x0 for HVC_SOFT_RESTART (Andrew Jones) [1855788] - [arm64] kvm: arm64: pmu: Fix per-CPU access in preemptible context (Andrew Jones) [1855788] - [arm64] kvm: arm64: Fix kvm_reset_vcpu() return code being incorrect with SVE (Andrew Jones) [1855788] - [arm64] kvm: arm64: Annotate hyp NMI-related functions as __always_inline (Andrew Jones) [1855788] - [arm64] kvm: arm64: Remove host_cpu_context member from vcpu structure (Andrew Jones) [1855788] - [arm64] kvm: arm64: Move hyp_symbol_addr() to kvm_asm.h (Andrew Jones) [1855788] - [arm64] kvm: arm64: Handle PtrAuth traps early (Andrew Jones) [1855788] - [arm64] kvm: arm64: Save the host's PtrAuth keys in non-preemptible context (Andrew Jones) [1855788] - [arm64] kvm: arm64: Stop save/restoring ACTLR_EL1 (Andrew Jones) [1855788] - [kernel] firmware: smccc: Update link to latest SMCCC specification (Andrew Jones) [1855788] - [kernel] arm/arm64: smccc-1.1: Handle function result as parameters (Andrew Jones) [1855788] - [kernel] arm/arm64: smccc-1.1: Make return values unsigned long (Andrew Jones) [1855788] - [video] Revert "hyperv_fb: Fix hibernation for the deferred IO feature" (Mohammed Gamal) [1858755] - [netdrv] net/mlx5e: CT: Map 128 bits labels to 32 bit map ID (Alaa Hleihel) [1859540] - [security] ima: move APPRAISE_BOOTPARAM dependency on ARCH_POLICY to runtime (Bruno Meneguele) [1847219] - [scsi] scsi: lpfc: NVMe remote port devloss_tmo from lldd (Dick Kennedy) [1859344] - [netdrv] net/mlx5e: Disable devlink port support for non-switchdev mode (Alaa Hleihel) [1858501 1852904 1849623] - [tools] perf powerpc: Don't ignore sym-handling.c file (Michael Petlan) [1858133] - [fs] ext4: reserve revoke credits in __ext4_new_inode (Lukas Czerner) [1856760] - [include] jbd2: make jbd2_handle_buffer_credits() handle reserved handles (Lukas Czerner) [1856760] - [fs] jbd2: avoid leaking transaction credits when unreserving handle (Lukas Czerner) [1856760] - [fs] jbd2: Fine tune estimate of necessary descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Provide trace event for handle restarts (Lukas Czerner) [1856760] - [fs] ext4: Reserve revoke credits for freed blocks (Lukas Czerner) [1856760] - [fs] jbd2: Make credit checking more strict (Lukas Czerner) [1856760] - [fs] jbd2: Rename h_buffer_credits to h_total_credits (Lukas Czerner) [1856760] - [fs] jbd2: add missing tracepoint for reserved handle (Lukas Czerner) [1856760] - [fs] jbd2: Reserve space for revoke descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Drop jbd2_space_needed() (Lukas Czerner) [1856760] - [fs] jbd2: remove repeated assignments in __jbd2_log_wait_for_space() (Lukas Czerner) [1856760] - [fs] jbd2: Account descriptor blocks into t_outstanding_credits (Lukas Czerner) [1856760] - [include] jbd2: update locking documentation for transaction_t (Lukas Czerner) [1856760] - [fs] jbd2: Factor out common parts of stopping and restarting a handle (Lukas Czerner) [1856760] - [fs] jbd2: Drop pointless wakeup from jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] jbd2: Drop pointless check from jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] jbd2: Reorganize jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] ext4, jbd2: Provide accessor function for handle credits (Lukas Czerner) [1856760] - [fs] ext4: Provide function to handle transaction restarts (Lukas Czerner) [1856760] - [fs] ext4: Avoid unnecessary revokes in ext4_alloc_branch() (Lukas Czerner) [1856760] - [fs] ext4: Use ext4_journal_extend() instead of jbd2_journal_extend() (Lukas Czerner) [1856760] - [fs] jbd2: Completely fill journal descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Fixup stale comment in commit code (Lukas Czerner) [1856760] - [include] jbd2: Fix possible overflow in jbd2_log_space_left() (Lukas Czerner) [1856760] - [fs] ext4, jbd2: ensure panic by fix a race between jbd2 abort and ext4 error handlers (Lukas Czerner) [1856760] - [fs] ext4: remove set but not used variable 'es' in ext4_jbd2.c (Lukas Czerner) [1856760] - [fs] ext4: remove set but not used variable 'es' (Lukas Czerner) [1856760] - [fs] ext4: save all error info in save_error_info() and drop ext4_set_errno() (Lukas Czerner) [1856760] - [fs] ext4: save the error code which triggered an ext4_error() in the superblock (Lukas Czerner) [1856760] - [fs] jbd2: clean __jbd2_journal_abort_hard() and __journal_abort_soft() (Lukas Czerner) [1856760] - [fs] ext4: stop overwrite the errcode in ext4_setup_super (Lukas Czerner) [1856760] - [fs] ext4: fix partial cluster initialization when splitting extent (Lukas Czerner) [1856760] - [fs] ext4: avoid ext4_error()'s caused by ENOMEM in the truncate path (Lukas Czerner) [1856760] - [fs] ext4: fix race between ext4_sync_parent() and rename() (Lukas Czerner) [1856760] - [fs] ext4: clean up ext4_ext_convert_to_initialized() error handling (Lukas Czerner) [1856760] - [fs] ext4: clean up GET_BLOCKS_PRE_IO error handling (Lukas Czerner) [1856760] - [fs] ext4: fix error pointer dereference (Lukas Czerner) [1856760] - [fs] ext4: Avoid freeing inodes on dirty list (Lukas Czerner) [1856760] - [fs] writeback: Export inode_io_list_del() (Lukas Czerner) [1856760] - [fs] ext4: fix buffer_head refcnt leak when ext4_iget() fails (Lukas Czerner) [1856760] - [fs] ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max (Lukas Czerner) [1856760] - [fs] ext4: fix a style issue in fs/ext4/acl.c (Lukas Czerner) [1856760] - [fs] ext4: fix return-value types in several function comments (Lukas Czerner) [1856760] - [fs] ext4: use non-movable memory for superblock readahead (Lukas Czerner) [1856760] - [fs] ext4: fix incorrect group count in ext4_fill_super error message (Lukas Czerner) [1856760] - [fs] ext4: fix incorrect inodes per group in error message (Lukas Czerner) [1856760] - [fs] ext4: avoid ENOSPC when avoiding to reuse recently deleted inodes (Lukas Czerner) [1856760] - [fs] ext4: fix a data race at inode->i_disksize (Lukas Czerner) [1856760] - [fs] ext4: fix a data race at inode->i_blocks (Lukas Czerner) [1856760] - [fs] ext4: clean up error return for convert_initialized_extent() (Lukas Czerner) [1856760] - [fs] ext4: force buffer up-to-date while marking it dirty (Lukas Czerner) [1856760] - [fs] ext4: fix race between writepages and enabling EXT4_EXTENTS_FL (Lukas Czerner) [1856760] - [fs] ext4: rename s_journal_flag_rwsem to s_writepages_rwsem (Lukas Czerner) [1856760] - [fs] ext4: potential crash on allocation error in ext4_alloc_flex_bg_array() (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between s_flex_groups online resizing and access (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between s_group_info online resizing and access (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between online resizing and write operations (Lukas Czerner) [1856760] - [fs] ext4: add cond_resched() to __ext4_find_entry() (Lukas Czerner) [1856760] - [fs] ext4: fix a data race in EXT4_I(inode)->i_disksize (Lukas Czerner) [1856760] - [fs] ext4: fix checksum errors with indexed dirs (Lukas Czerner) [1856760] - [fs] ext4: simplify checking quota limits in ext4_statfs() (Lukas Czerner) [1856760] - [fs] ext4: choose hardlimit when softlimit is larger than hardlimit in ext4_statfs_project() (Lukas Czerner) [1856760] - [fs] ext4: don't assume that mmp_nodename/bdevname have NUL (Lukas Czerner) [1856760] - [fs] jbd2: make sure ESHUTDOWN to be recorded in the journal superblock (Lukas Czerner) [1856760] - [fs] ext4, jbd2: ensure panic when aborting with zero errno (Lukas Czerner) [1856760] - [fs] jbd2: switch to use jbd2_journal_abort() when failed to submit the commit record (Lukas Czerner) [1856760] - [fs] jbd2_seq_info_next should increase position index (Lukas Czerner) [1856760] - [fs] ext4,jbd2: fix comment and code style (Lukas Czerner) [1856760] - [fs] ext4: fix extent_status trace points (Lukas Czerner) [1856760] - [fs] ext4: fix extent_status fragmentation for plain files (Lukas Czerner) [1856760] - [fs] jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info when load journal (Lukas Czerner) [1856760] - [fs] ext4: fix some nonstandard indentation in extents.c (Lukas Czerner) [1856760] - [fs] ext4: fix documentation for ext4_ext_try_to_merge() (Lukas Czerner) [1856760] - [fs] ext4: avoid fetching btime in ext4_getattr() unless requested (Lukas Czerner) [1856760] - [fs] ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT (Lukas Czerner) [1856760] - [fs] ext4: optimize __ext4_check_dir_entry() (Lukas Czerner) [1856760] - [fs] ext4: check for directory entries too close to block end (Lukas Czerner) [1856760] - [fs] ext4: fix a bug in ext4_wait_for_tail_page_commit (Lukas Czerner) [1856760] - [fs] jbd2: Fix statistics for the number of logged blocks (Lukas Czerner) [1856760] - [fs] ext4: Fix ext4_should_journal_data() for EA inodes (Lukas Czerner) [1856760] - [fs] ext4: Fix credit estimate for final inode freeing (Lukas Czerner) [1856760] - [fs] ext4: Do not iput inode under running transaction (Lukas Czerner) [1856760] - [fs] ext4: Move marking of handle as sync to ext4_add_nondir() (Lukas Czerner) [1856760] - [fs] ext4: update direct I/O read lock pattern for IOCB_NOWAIT (Lukas Czerner) [1856760] - [fs] jbd2: flush_descriptor(): Do not decrease buffer head's ref count (Lukas Czerner) [1856760] - [fs] ext4: fix prefetchw of NULL page (Lukas Czerner) [1856760] - [fs] ext4: check for non-zero journal inum in ext4_calculate_overhead (Lukas Czerner) [1814574] - [fs] ext4: do not commit super on read-only bdev (Lukas Czerner) [1814574] - [kernel] isolcpus: Affine unbound kernel threads to housekeeping cpus (Marcelo Tosatti) [1791930] - [kernel] kthread: Switch to cpu_possible_mask (Marcelo Tosatti) [1791930] - [scsi] scsi: lpfc: Quieten some printks (Dick Kennedy) [1859338] - [scsi] Revert "scsi: lpfc: Fix scsi host template for SLI3 vports" (Dick Kennedy) [1851189] - [md] dm mpath: use double checked locking in fast path (Mike Snitzer) [1848651] - [md] dm mpath: rename current_pgpath to pgpath in multipath_prepare_ioctl (Mike Snitzer) [1848651] - [md] dm mpath: rework __map_bio() (Mike Snitzer) [1848651] - [md] dm mpath: factor out multipath_queue_bio (Mike Snitzer) [1848651] - [md] dm mpath: push locking down to must_push_back_rq() (Mike Snitzer) [1848651] - [md] dm mpath: take m->lock spinlock when testing QUEUE_IF_NO_PATH (Mike Snitzer) [1848651] - [md] dm mpath: changes from initial m->flags locking audit (Mike Snitzer) [1848651] - [md] dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() (Mike Snitzer) [1848651] - [md] dm: do not use waitqueue for request-based DM (Mike Snitzer) [1848651] - [block] blk-mq: consider non-idle request as "inflight" in blk_mq_rq_inflight() (Mike Snitzer) [1848651] - [powerpc] powerpc/fadump: fix race between pstore write and fadump crash trigger (Steve Best) [1820109] - [tools] libbpf: Fix probe code to return EPERM if encountered (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1856592] - [tools] tools selftests/bpf: Fix vmlinux test for kprobe and trampoline probes (Jiri Olsa) [1855778] - [net] net: Restrict receive packets queuing to housekeeping CPUs (Nitesh Narayan Lal) [1844520] - [pci] PCI: Restrict probe functions to housekeeping CPUs (Nitesh Narayan Lal) [1844520] - [lib] lib: Restrict cpumask_local_spread to houskeeping CPUs (Nitesh Narayan Lal) [1844520]- [tools] selftests/powerpc: Purge extra count_pmc() calls of ebb selftests (Desnes Augusto Nunes do Rosario) [1739769] - [netdrv] bonding: symmetric ICMP transmit (Jarod Wilson) [1760293] - [netdrv] bonding: balance ICMP echoes in layer3+4 mode (Jarod Wilson) [1760362] - [powerpc] powerpc/vas: Report proper error code for address translation failure (Steve Best) [1858160] - [infiniband] IB/hfi1: Fix module use count flaw due to leftover module put calls (Kamal Heib) [1858388] - [gpu] vgaarb: Add support for 64-bit frame buffer address (Karol Herbst) [1735217] - [netdrv] ionic: centralize queue reset code (Jonathan Toppins) [1857851] - [s390] s390/qeth: support net namespaces for L3 devices (Philipp Rudo) [1857311] - [s390] s390/qeth: implement smarter resizing of the RX buffer pool (Philipp Rudo) [1857311] - [s390] s390/qeth: refactor buffer pool code (Philipp Rudo) [1857311] - [s390] s390/qeth: use page pointers to manage RX buffer pool (Philipp Rudo) [1857311] - [s390] s390/qeth: cancel RX reclaim work earlier (Philipp Rudo) [1857311] - [s390] s390/qeth: handle error when backing RX buffer (Philipp Rudo) [1857311] - [s390] s390/qeth: don't reset default_out_queue (Philipp Rudo) [1857311] - [s390] s390/qdio: fill SBALEs with absolute addresses (Philipp Rudo) [1857311] - [s390] s390/qeth: fix off-by-one in RX copybreak check (Philipp Rudo) [1857311] - [s390] s390/qeth: vnicc Fix EOPNOTSUPP precedence (Philipp Rudo) [1857311] - [s390] s390/qeth: consolidate QDIO queue setup (Philipp Rudo) [1857311] - [s390] s390/pci: Fix s390_mmio_read/write with MIO (Philipp Rudo) [1857315] - [s390] scsi: zfcp: Fix panic on ERP timeout for previously dismissed ERP action (Philipp Rudo) [1857312] - [net] net/smc: tolerate future SMCD versions (Philipp Rudo) [1854992] - [fs] ext4: use RCU API in debug_print_tree (Lukas Czerner) [1837777] - [fs] ext4: fix potential use after free after remounting with noblock_validity (Lukas Czerner) [1837777] - [fs] ext4: add cond_resched() to ext4_protect_reserved_inode (Lukas Czerner) [1837777] - [fs] fibmap: Reject negative block numbers (Carlos Maiolino) [1687121] - [vfio] vfio/pci: Fix SR-IOV VF handling with MMIO blocking (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio-pci: Invalidate mmaps and block MMIO access on disabled memory (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio-pci: Fault mmaps to enable vma tracking (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/type1: Support faulting PFNMAP vmas (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn() (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/pci: call irq_bypass_unregister_producer() before freeing irq (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio_pci: Enable memory accesses before calling pci_map_rom (Alex Williamson) [1837310] {CVE-2020-12888} - [x86] mm: Fix mremap not considering huge pmd devmap (Rafael Aquini) [1843441] {CVE-2020-10757} - [x86] x86/speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect branches (Waiman Long) [1847396 1846029] {CVE-2020-10768} - [x86] x86/speculation: Prevent rogue cross-process SSBD shutdown (Waiman Long) [1847358 1846029] {CVE-2020-10766} - [x86] x86/speculation: Avoid force-disabling IBPB based on STIBP and enhanced IBRS (Waiman Long) [1847379 1846029] {CVE-2020-10767} - [x86] x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline (Waiman Long) [1846029] - [arm64] Return ENODEV when the selected speculation misfeature is unsupported (Waiman Long) [1846029] - [x86] x86/speculation: Add support for STIBP always-on preferred mode (Waiman Long) [1846029] - [x86] x86/speculation: Change misspelled STIPB to STIBP (Waiman Long) [1846029]- [powerpc] powernv/iov: Ensure the pdn for VFs always contains a valid PE number (David Gibson) [1848235] - [powerpc] don't use ioremap_prot() nor __ioremap() unless really needed (Greg Kurz) [1855957] - [char] tpm: ibmvtpm: Wait for ready buffer before probing for TPM2 attributes (David Gibson) [1837283] - [powerpc] Check prom_init for disallowed sections (Michael Roth) [1856099] - [powerpc] prom_init: Move __prombss to it's own section and store it in .bss (Michael Roth) [1856099] - [powerpc] prom_init: Move const structures to __initconst (Michael Roth) [1856099] - [powerpc] prom_init: Make "default_colors" const (Michael Roth) [1856099] - [powerpc] prom_init: Move ibm_arch_vec to __prombss (Michael Roth) [1856099] - [fs] ext4: unregister sysfs path before destroying jbd2 journal (Lukas Czerner) [1814577] - [powerpc] powerpc/pseries/svm: Fix incorrect check for shared_lppaca_size (Steve Best) [1856889] - [netdrv] bnxt_en: fix NULL dereference in case SR-IOV configuration fails (Jonathan Toppins) [1856372] - [security] kexec: Allow kexec_file() with appropriate IMA policy when locked down (Bruno Meneguele) [1854097] - [x86] x86/apic/vector: Warn when vector space exhaustion breaks affinity (Neil Horman) [1714686] - [tools] perf report TUI: Fix segmentation fault in perf_evsel__hists_browse() (Michael Petlan) [1855737] - [fs] ext4: do not zeroout extents beyond i_disksize (Lukas Czerner) [1817816] - [pci] PCI/DPC: Print IRQ number used by port (Myron Stowe) [1855343] - [pci] PCI/AER: Use "aer" variable for capability offset (Myron Stowe) [1855343] - [pci] PCI/AER: Remove redundant dev->aer_cap checks (Myron Stowe) [1855343] - [pci] PCI/AER: Remove redundant pci_is_pcie() checks (Myron Stowe) [1855343] - [pci] PCI/AER: Remove HEST/FIRMWARE_FIRST parsing for AER ownership (Myron Stowe) [1855343] - [tools] selftests: bpf: use __u32 for sock::sk_pacing_rate (Yauheni Kaliuta) [1856324] - [tools] libbpf: Handle GCC noreturn-turned-volatile quirk (Yauheni Kaliuta) [1854327] - [netdrv] net/mlx5e: CT: Fix releasing ft entries (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Remove unused function param (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Return err_ptr from internal functions (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Expand tunnel register mappings (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Use mapping for zone restore register (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Re-use tuple modify headers for identical modify actions (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Export sharing of mod headers to a new file (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Add support for COPY steering action (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Accept flow rules without match (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Restore ct state from lookup in zone instead of tupleid (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Don't offload tuple rewrites for established tuples (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Use netdev_info instead of pr_info (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Allow header rewrite of 5-tuple and ct clear action (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Save ct entries tuples in hashtables (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: CT: Remove unused variables (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Avoid eswitch header inclusion in fs core layer (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: vxlan: Use RCU for vxlan table lookup (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Remove unused mlx5e_xsk_first_unused_channel (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Fix memory leak in cleanup (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix port buffers cell size value (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix 50G per lane indication (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix CPU mapping after function reload to avoid aRFS RX crash (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix VXLAN configuration restore after function reload (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Fix eeprom support for SFP module (Alaa Hleihel) [1856057] - [infiniband] IB/mlx5: Fix 50G per lane indication (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Do not include rwlock.h directly (Alaa Hleihel) [1856057] - [fs] jbd2: fix data races at struct journal_head (Lukas Czerner) [1792518] - [fs] jbd2: remove pointless assertion in __journal_remove_journal_head (Lukas Czerner) [1792518] - [fs] jbd2: improve comments about freeing data buffers whose page mapping is NULL (Lukas Czerner) [1792518] - [fs] jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer (Lukas Czerner) [1792518] - [fs] jbd2: move the clearing of b_modified flag to the journal_unmap_buffer() (Lukas Czerner) [1792518] - [fs] ext4: unlock on error in ext4_expand_extra_isize() (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: fix support for inode sizes > 1024 bytes (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: validate the debug_want_extra_isize mount option at parse time (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: add more paranoia checking in ext4_expand_extra_isize handling (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: unsigned int compared against zero (Lukas Czerner) [1836666] {CVE-2019-19319} - [fs] ext4: protect journal inode's blocks using block_validity (Lukas Czerner) [1836666] {CVE-2019-19319} - [powerpc] powerpc/kernel/sysfs: Add new config option PMU_SYSFS to enable PMU SPRs sysfs file creation (Michael Petlan) [1821284] - [powerpc] powerpc/kernel/sysfs: Refactor current sysfs.c (Michael Petlan) [1821284] - [kernel] irqdomain: Add the missing assignment of domain->fwnode for named fwnode (Mohammed Gamal) [1846666] - [security] lockdown: Allow unprivileged users to see lockdown status (Vladis Dronov) [1805299] - [edac] EDAC/ghes: Setup DIMM label from DMI and use it in error reports (Robert Richter) [1726153]- [x86] kvm: nvmx: fixes for preemption timer migration (Paolo Bonzini) [1854831] - [powerpc] pci/of: Parse unassigned resources (Greg Kurz) [1849921] - [video] revert "hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver" (Vitaly Kuznetsov) [1848840] - [video] revert "hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs" (Vitaly Kuznetsov) [1848840] - [pci] hv: Retry PCI bus D0 entry on invalid device state (Mohammed Gamal) [1846666] - [pci] hv: Fix the PCI HyperV probe failure path to release resource properly (Mohammed Gamal) [1846666] - [pci] hv: Allocate a named fwnode instead of an address-based one (Mohammed Gamal) [1846666] - [netdrv] tg3: driver sleeps indefinitely when EEH errors exceed eeh_max_freezes (Jonathan Toppins) [1850176] - [scsi] scsi: lpfc: Fix kdump hang on PPC (Dick Kennedy) [1722596] - [fs] nfsd: fix nfsdfs inode reference count leak ("J. Bruce Fields") [1846235] - [fs] nfsd4: fix nfsdfs reference count loop ("J. Bruce Fields") [1846235] - [kernel] sched: Defend cfs and rt bandwidth quota against overflow (Phil Auld) [1854180] - [kernel] sched/core: Make some functions static (Phil Auld) [1854180] - [kernel] sched/fair: Refill bandwidth before scaling (Phil Auld) [1854180] - [kernel] sched/fair: Eliminate bandwidth race between throttling and distribution (Phil Auld) [1854180] - [kernel] sched/fair: Fix race between runtime distribution and assignment (Phil Auld) [1854180] - [kernel] sched/deadline: Initialize ->dl_boosted (Phil Auld) [1854179] - [kernel] sched/core: Fix PI boosting between RT and DEADLINE tasks (Phil Auld) [1854179] - [netdrv] ibmveth: Fix max MTU limit (Diego Domingos) [1846435] - [kernel] sched/core: Fix ttwu() race (Phil Auld) [1854178] - [tools] perf flamegraph: Explicitly set utf-8 encoding (Michael Petlan) [1849027] - [kernel] sched/core: Check cpus_mask, not cpus_ptr in __set_cpus_allowed_ptr(), to fix mask corruption (Phil Auld) [1854174] - [kernel] workqueue: Remove the warning in wq_worker_sleeping() (Phil Auld) [1854174] - [kernel] sched/fair: Fix negative imbalance in imbalance calculation (Phil Auld) [1854174] - [kernel] sched/fair: Optimize select_idle_core() (Phil Auld) [1854174] - [x86] x86/PCI: Mark Intel C620 MROMs as having non-compliant BARs (Myron Stowe) [1854184] - [netdrv] r8169: fix firmware not resetting tp->ocp_base (Josef Oskera) [1851960] - [acpi] ACPI: configfs: Disallow loading ACPI tables when locked down (Lenny Szubowicz) [1852969] - [arm64] Revert "bpf: Restrict bpf_probe_read{, str}() only to archs where they work" (Jiri Olsa) [1847837] - [s390] s390/mm: Explicitly compare PAGE_DEFAULT_KEY against zero in storage_key_init_range (Jiri Olsa) [1847837] - [net] Bluetooth: Modify LE window and interval for suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix incorrect type for window and interval (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Use DEFER_SETUP to group ECRED connections (Gopal Tiwari) [1838924] - [net] Bluetooth: don't assume key size is 16 when the command fails (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add get_peer_pid callback (Gopal Tiwari) [1838924] - [net] Bluetooth: Restore running state if suspend fails (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix incorrect branch in connection complete (Gopal Tiwari) [1838924] - [net] Bluetooth: Do not cancel advertising when starting a scan (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: remove set but not used variable 'credits' (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Fix a condition in l2cap_sock_recvmsg() (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: handle l2cap config request during open state (Gopal Tiwari) [1838924] - [net] Bluetooth: clean up connection in hci_cs_disconnect (Gopal Tiwari) [1838924] - [net] Bluetooth: Pause discovery and advertising during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle LE devices during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle BR/EDR devices during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle PM_SUSPEND_PREPARE and PM_POST_SUSPEND (Gopal Tiwari) [1838924] - [net] Bluetooth: mgmt: add mgmt_cmd_status in add_advertising (Gopal Tiwari) [1838924] - [net] Bluetooth: fix off by one in err_data_reporting cmd masks (Gopal Tiwari) [1838924] - [net] Bluetooth: Use bt_dev_err for RPA generation failure message (Gopal Tiwari) [1838924] - [net] Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add module option to enable ECRED mode (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add initial code for Enhanced Credit Based Mode (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add definitions (Gopal Tiwari) [1838924] - [net] Bluetooth: Increment management interface revision (Gopal Tiwari) [1838924] - [net] Bluetooth: Make use of skb_pull to parse L2CAP signaling PDUs (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix calculation of SCO handle for packet processing (Gopal Tiwari) [1838924] - [net] Bluetooth: guard against controllers sending zero'd events (Gopal Tiwari) [1838924] - [net] Bluetooth: During le_conn_timeout disable EXT_ADV (Gopal Tiwari) [1838924] - [net] Bluetooth: Remove adv set for directed advertising (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix Suspicious RCU usage warnings (Gopal Tiwari) [1838924] - [net] Bluetooth: Use list_for_each_entry_rcu() to traverse RCU list in RCU read-side CS (Gopal Tiwari) [1838924] - [net] Bluetooth: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [net] Bluetooth: fix passkey uninitialized when used (Gopal Tiwari) [1838924] - [net] Bluetooth: RFCOMM: Use MTU auto tune logic (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix crash when using new BT_PHY option (Gopal Tiwari) [1838924] - [net] Bluetooth: Disable Extended Adv if enabled (Gopal Tiwari) [1838924] - [net] Bluetooth: Add BT_PHY socket option (Gopal Tiwari) [1838924] - [net] Bluetooth: secure bluetooth stack from bluedump attack (Gopal Tiwari) [1838924] - [net] Bluetooth: remove __get_channel/dir and __dir (Gopal Tiwari) [1838924] - [net] Bluetooth: prefetch channel before killing sock (Gopal Tiwari) [1838924] - [net] Bluetooth: optimize barrier usage for Rmw atomics (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix refcount use-after-free issue (Gopal Tiwari) [1838924] - [net] Bluetooth: SMP: Fix SALT value in some comments (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix race condition in hci_release_sock() (Gopal Tiwari) [1838924] - [net] Bluetooth: Move {min, max}_key_size debugfs into hci_debugfs_create_le (Gopal Tiwari) [1838924] - [net] Bluetooth: Add missing checks for HCI_ISODATA_PKT packet type (Gopal Tiwari) [1838924] - [net] Bluetooth: fix appearance typo in mgmt.c (Gopal Tiwari) [1838924] - [net] Bluetooth: adding missing const decoration to mgmt_status_table (Gopal Tiwari) [1838924] - [net] Bluetooth: Increment management interface revision (Gopal Tiwari) [1838924] - [net] Bluetooth: monitor: Add support for ISO packets (Gopal Tiwari) [1838924] - [net] Bluetooth: Make use of __check_timeout on hci_sched_le (Gopal Tiwari) [1838924] - [net] Bluetooth: Implementation of MGMT_OP_SET_BLOCKED_KEYS (Gopal Tiwari) [1838924] - [net] Bluetooth: remove redundant assignment to variable icid (Gopal Tiwari) [1838924] - [net] Bluetooth: Auto tune if input MTU is set to 0 (Gopal Tiwari) [1838924] - [net] Bluetooth: Remove usage of BT_ERR_RATELIMITED macro (Gopal Tiwari) [1838924] - [net] Bluetooth: Adding a bt_dev_warn_ratelimited macro (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix memory leak in hci_connect_le_scan (Gopal Tiwari) [1838924] - [net] Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR quirks (Gopal Tiwari) [1838924] - [net] Bluetooth: delete a stray unlock (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix advertising duplicated flags (Gopal Tiwari) [1838924] - [net] net: use skb_queue_empty_lockless() in poll() handlers (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix not using LE_ADV_NONCONN_IND for instance 0 (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix using advertising instance duration as timeout (Gopal Tiwari) [1838924] - [fs] compat_ioctl: move hci_sock handlers into driver (Gopal Tiwari) [1838924] - [fs] compat_ioctl: move rfcomm handlers into driver (Gopal Tiwari) [1838924] - [net] Bluetooth: hci_core: fix init for HCI_USER_CHANNEL (Gopal Tiwari) [1838924] - [net] Bluetooth: Workaround directed advertising bug in Broadcom controllers (Gopal Tiwari) [1838924] - [net] Bluetooth: missed cpu_to_le16 conversion in hci_init4_req (Gopal Tiwari) [1838924] - [hid] Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message (Gopal Tiwari) [1838924] - [net] Bluetooth: mgmt: Use struct_size() helper (Gopal Tiwari) [1838924] - [net] Bluetooth: Add support for utilizing Fast Advertising Interval (Gopal Tiwari) [1838924] - [net] Bluetooth: 6lowpan: Make variable header_ops constant (Gopal Tiwari) [1838924] - [net] Revert "Bluetooth: validate BLE connection interval updates" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: print Intel fw build version in power-on boot (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Switch from BT_ERR to bt_dev_err where possible (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: bfusb: Switch from BT_ERR to bt_dev_err where possible (Gopal Tiwari) [1838924] - [net] Bluetooth: Enable erroneous data reporting if WBS is supported (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Replace devm_gpiod_get() with devm_gpiod_get_optional() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Make bt_en and susclk not mandatory for QCA Rome (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btqca: Fix the NVM baudrate tag offcet for wcn3991 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Not send vendor pre-shutdown command for QCA Rome (Gopal Tiwari) [1838924] - [net] Bluetooth: Support querying for WBS support through MGMT (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add flag to define wideband speech capability (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Remove a redundant assignment in 'h4_flush()' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Fix a typo in a comment (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Move variable into local scope (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Bug fixes while collecting controller memory dump (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: btrtl: Add support for RTL8822C (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: Fix a typo in Kconfig (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_uart: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_intel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btintel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add support for 13d3:3548 Realtek 8822CE device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Optimized code while enabling clocks for BT SOC (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Enable clocks required for BT SOC (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Use kvmalloc for FW allocations (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Enable power off/on support during hci down/up for QCA Rome (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Retry btsoc initialize when it fails (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add QCA Rome power off support to the qca_power_shutdown() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: enable IRQ capability from devicetree (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_vhci: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btsdio: Check for valid packet type (Gopal Tiwari) [1838924] - [net] Bluetooth: Add definitions (Gopal Tiwari) [1838924] - [net] Bluetooth: Add support for (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add qca_power_on() API to support both wcn399x and Rome power up (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm : Fix warning about missing blank lines after declarations (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Remove set but not used variable 'opcode' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Use vfree() instead of kfree() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add support for 04ca:3021 QCA_ROME device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Collect controller memory dump during SSR (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Drive RTS only for BCM43438 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Replace of_device_get_match_data with device_get_match_data (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add missing static inline in header (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Disable runtime suspend on Realtek devices (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix memory leak on fw (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix non-atomic allocation in completion handler (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Support pcm params in dts (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Support pcm configuration (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Disallow set_baudrate for BCM4354 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Edit the logical value for Realtek Bluetooth reset (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add entry for BCM4335A0 UART bluetooth (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add entry for BCM4334B0 UART Bluetooth (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix PM leak in error case of setup (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btqca: Rename ROME specific variables to generic variables (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btmtksdio: add MODULE_DEVICE_TABLE() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: Fix invalid-free in bcsp_close() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: add PM support (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Add compatible string for BCM43540 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: remove unneeded semicolon (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Fix RTS handling during startup (Gopal Tiwari) [1838924] - [bluetooth] Revert "Bluetooth: hci_qca: Add delay for wcn3990 stability" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Remove return statement in btintel_reset_to_bootloader (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Split qca_power_setup() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Use regulator bulk enable/disable (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Don't vote for specific voltage (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Update regulator_set_load() usage (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add delay for wcn3990 stability (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Trigger Intel FW download error recovery (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btwilink: drop superseded driver (Gopal Tiwari) [1838924] - [bluetooth] Revert "Bluetooth: hci_ll: set operational frequency earlier" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Fix an issue for the incorrect error return code (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Use IS_ENABLED instead of #ifdef (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: print FW version after FW download (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: avoid unused function warning (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_nokia: Save a few cycles in 'nokia_enqueue()' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Use cmd_timeout to reset Realtek device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Fix an issue that failing to download the FW which size is over 32K bytes (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Remove trailing newline from calls to rtl_dev macros (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for QCA UART Radio (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Remove redundant prefix from calls to rtl_dev macros (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY (Gopal Tiwari) [1838924] - [bluetooth] bluetooth: bcm: Add support for loading firmware for BCM4345C5 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Add firmware version print (Gopal Tiwari) [1838924] - [bluetooth] bluetooth: hci_bcm: Give more time to come out of reset (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: wait for Pre shutdown complete event before sending the Power off pulse (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Fix -Wunused-const-variable warnings (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Fix suspend issue for Realtek devices (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Remove redundant initializations to zero (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Make structure qca_proto constant (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: bpa10x: change return value (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: disable irqs when spinlock is acquired (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Additional Realtek 8822CE Bluetooth devices (Gopal Tiwari) [1838924]- [powerpc] powerpc/papr_scm: Implement support for PAPR_PDSM_HEALTH (Gustavo Duarte) [1782178] - [powerpc] ndctl/papr_scm, uapi: Add support for PAPR nvdimm specific methods (Gustavo Duarte) [1782178] - [powerpc] powerpc/papr_scm: Improve error logging and handling papr_scm_ndctl() (Gustavo Duarte) [1782178] - [powerpc] powerpc/papr_scm: Fetch nvdimm health information from PHYP (Gustavo Duarte) [1782178] - [lib] seq_buf: Export seq_buf_printf (Gustavo Duarte) [1782178] - [firmware] efi: Restrict efivar_ssdt_load when the kernel is locked down (Lenny Szubowicz) [1852949] - [netdrv] vmxnet3: allow rx flow hash ops only when rss is enabled (Cathy Avery) [1845417] - [netdrv] net: vmxnet3: fix possible buffer overflow caused by bad DMA value in vmxnet3_get_rss() (Cathy Avery) [1845417] - [netdrv] vmxnet3: use correct hdr reference when packet is encapsulated (Cathy Avery) [1845417] - [netdrv] vmxnet3: update to version 4 (Cathy Avery) [1845417] - [netdrv] vmxnet3: add geneve and vxlan tunnel offload support (Cathy Avery) [1845417] - [netdrv] vmxnet3: add support to get/set rx flow hash (Cathy Avery) [1845417] - [netdrv] vmxnet3: prepare for version 4 changes (Cathy Avery) [1845417] - [netdrv] vmxnet3: let core reject the unsupported coalescing parameters (Cathy Avery) [1845417] - [netdrv] vmxnet3: use new helper tcp_v6_gso_csum_prep (Cathy Avery) [1845417] - [netdrv] vmxnet3: Remove always false conditional statement (Cathy Avery) [1845417] - [kernel] kexec: do not verify the signature without the lockdown or mandatory signature (Lianbo Jiang) [1836148] - [fs] block: Fix use-after-free in blkdev_get() (Ming Lei) [1847779] - [kernel] kernel: rh_features: fix reading empty feature list from /proc (Jiri Benc) [1843064] {CVE-2020-10774} - [netdrv] ice: cleanup unsigned loops (Jonathan Toppins) [1781403] - [netdrv] ice: fix usage of incorrect variable (Jonathan Toppins) [1781403] - [netdrv] ice: Fix bad register reads (Jonathan Toppins) [1781403] - [netdrv] ice: check for compatibility between DDP package and firmware (Jonathan Toppins) [1781403] - [netdrv] ice: Check if unicast MAC exists before setting VF MAC (Jonathan Toppins) [1781403] - [netdrv] ice: print Rx MDD auto reset message before VF reset (Jonathan Toppins) [1781403] - [netdrv] ice: Call ice_aq_set_mac_cfg (Jonathan Toppins) [1781403] - [netdrv] ice: Implement aRFS (Jonathan Toppins) [1781403] - [netdrv] ice: Restore filters following reset (Jonathan Toppins) [1781403] - [netdrv] ice: Enable flex-bytes support (Jonathan Toppins) [1781403] - [netdrv] ice: Support IPv6 Flow Director filters (Jonathan Toppins) [1781403] - [netdrv] ice: Support IPv4 Flow Director filters (Jonathan Toppins) [1781403] - [netdrv] ice: Support displaying ntuple rules (Jonathan Toppins) [1781403] - [netdrv] ice: Initialize Flow Director resources (Jonathan Toppins) [1781403] - [netdrv] ice: Rename build_ctob to ice_build_ctob (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary backslash (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary check (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary expression that is always true (Jonathan Toppins) [1781405] - [netdrv] ice: Fix check for removing/adding mac filters (Jonathan Toppins) [1781405] - [netdrv] ice: refactor filter functions (Jonathan Toppins) [1781405] - [netdrv] ice: Fix resource leak on early exit from function (Jonathan Toppins) [1781405] - [netdrv] ice: cleanup vf_id signedness (Jonathan Toppins) [1781405] - [netdrv] ice: Fix casting issues (Jonathan Toppins) [1781405] - [netdrv] ice: Provide more meaningful error message (Jonathan Toppins) [1781405] - [netdrv] ice: Fix probe/open race condition (Jonathan Toppins) [1781405] - [netdrv] ice: only drop link once when setting pauseparams (Jonathan Toppins) [1781405] - [netdrv] ice: Fix check for contiguous TCs (Jonathan Toppins) [1781405] - [netdrv] ice: Don't reset and rebuild for Tx timeout on PFC enabled queue (Jonathan Toppins) [1781405] - [netdrv] ice: Add VF promiscuous support (Jonathan Toppins) [1781405] - [netdrv] ice: Add support for tunnel offloads (Jonathan Toppins) [1781405] - [netdrv] ice: report netlist version in .info_get (Jonathan Toppins) [1781405] - [netdrv] ice: add additional E810 device id (Jonathan Toppins) [1725447] - [x86] x86/split_lock: Update to use X86_MATCH_INTEL_FAM6_MODEL() (Prarit Bhargava) [1482757] - [x86] x86/intel_split_lock: Disable split lock detector by default in RHEL8 (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Provide handle_guest_split_lock() (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Add Tremont family CPU models (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Bits in IA32_CORE_CAPABILITIES are not architectural (Prarit Bhargava) [1482757] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (Prarit Bhargava) [1482757] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Avoid runtime reads of the TEST_CTRL MSR (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Rework the initialization flow of split lock detection (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Enable split lock detection by kernel (Prarit Bhargava) [1482757] - [netdrv] drivers/net/b44: Change to non-atomic bit operations on pwol_mask (Prarit Bhargava) [1482757] - [x86] x86/cpu: Align cpu_caps_cleared and cpu_caps_set to unsigned long (Prarit Bhargava) [1482757] - [x86] x86/boot: Make the GDT 8-byte aligned (Prarit Bhargava) [1482757] - [wireless] wlcore: simplify/fix/optimize reg_ch_conf_pending operations (Prarit Bhargava) [1482757] - [uapi] prctl: PR_{G, S}ET_IO_FLUSHER to support controlling memory reclaim (Waiman Long) [1757240]- [kernel] kernel: fork: avoid utilizing a non-initialized task_struct_rh pointer in the error exit path (Rafael Aquini) [1838475 1820041] - [infiniband] RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah() (Kamal Heib) [1846063] - [infiniband] RDMA/ipoib: Return void from ipoib_ib_dev_stop() (Kamal Heib) [1846063] - [powerpc] mm/pkeys: Make pkey access check work on execute_only_key (Greg Kurz) [1748772] - [powerpc] mm/book3s64: Fix MADV_DONTNEED and parallel page fault race (Greg Kurz) [1748772] - [mm] change pmdp_huge_get_and_clear_full take vm_area_struct as arg (Greg Kurz) [1748772] - [powerpc] mm/book3s64: Avoid sending IPI on clearing PMD (Greg Kurz) [1748772] - [powerpc] 64s: Fix THP PMD collapse serialisation (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use pte_present instead of opencoding _PAGE_PRESENT check (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in kvmppc_get_hpa (Greg Kurz) [1748772] - [powerpc] kvm/book3s: use find_kvm_host_pte in kvmppc_book3s_instantiate_page (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Avoid using rmap to protect parallel page table update (Greg Kurz) [1748772] - [powerpc] kvm/book3s: use find_kvm_host_pte in pute_tce functions (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in h_enter (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in page fault handler (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Add helper for host page table walk (Greg Kurz) [1748772] - [powerpc] kvm: ppc: Fix nested guest RC bits update (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use kvm helpers to walk shadow or secondary table (Greg Kurz) [1748772] - [powerpc] kvm/nested: Add helper to walk nested shadow linux page table (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Add helper to walk partition scoped linux page table (Greg Kurz) [1748772] - [powerpc] kvm/book3s: switch from raw_spin_*lock to arch_spin_lock (Greg Kurz) [1748772] - [powerpc] perf/callchain: Use __get_user_pages_fast in read_user_stack_slow (Greg Kurz) [1748772] - [powerpc] mce: Don't reload pte val in addr_to_pfn (Greg Kurz) [1748772] - [powerpc] book3s64/hash: Use the pte_t address from the caller (Greg Kurz) [1748772] - [powerpc] hash64: Restrict page table lookup using init_mm with __flush_hash_table_range (Greg Kurz) [1748772] - [powerpc] mm/hash64: use _PAGE_PTE when checking for pte_present (Greg Kurz) [1748772] - [powerpc] pkeys: Check vma before returning key fault error to the user (Greg Kurz) [1748772] - [powerpc] pkeys: Avoid using lockless page table walk (Greg Kurz) [1748772] - [powerpc] mmu: add is_strict_kernel_rwx() helper (Greg Kurz) [1748772] - [powerpc] mm: move update_mmu_cache() into book3s hash utils (Greg Kurz) [1748772] - [powerpc] mm: Move book3s32 specifics in subdirectory mm/book3s64 (Greg Kurz) [1748772] - [powerpc] mm: move FSL_BOOK3 version of update_mmu_cache() (Greg Kurz) [1748772] - [powerpc] mm: define empty update_mmu_cache() as static inline (Greg Kurz) [1748772] - [powerpc] change CONFIG_PPC_STD_MMU to CONFIG_PPC_BOOK3S (Greg Kurz) [1748772] - [powerpc] mm: don't use _PAGE_EXEC for calling hash_preload() (Greg Kurz) [1748772] - [powerpc] change CONFIG_PPC_STD_MMU_32 to CONFIG_PPC_BOOK3S_32 (Greg Kurz) [1748772] - [powerpc] handover page flags with a pgprot_t parameter (Greg Kurz) [1748772] - [powerpc] mm: properly set PAGE_KERNEL flags in ioremap() (Greg Kurz) [1748772] - [powerpc] 32: Add ioremap_wt() and ioremap_coherent() (Greg Kurz) [1748772] - [netdrv] crypto/chcr: error seen if CONFIG_CHELSIO_TLS_DEVICE isn't set (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: avoid -Wreturn-local-addr warning (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: fix EOTID leak when disabling TC-MQPRIO offload (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4/chcr: Enable ktls settings at run time (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: cleanup error code in setup_sge_queues_uld() (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: add adapter hotplug support for ULDs (Christoph von Recklinghausen) [1797945] - [crypto] Crypto: chelsio - Fixes a deadlock between rtnl_lock and uld_mutex (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4/chcr: nic-tls stats in ethtool (Christoph von Recklinghausen) [1797945] - [crypto] crypto/chcr: fix incorrect ipv6 packet length (Christoph von Recklinghausen) [1797945] - [crypto] crypto/chcr: Add missing include file (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: Add ipv6 support and statistics (Christoph von Recklinghausen) [1797945] - [crypto] chcr: Handle first or middle part of record (Christoph von Recklinghausen) [1797945] - [crypto] chcr: handle partial end part of a record (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: complete record tx handling (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: Save tx keys and handle HW response (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr : Register to tls add and del callback (Christoph von Recklinghausen) [1797945] - [hwmon] hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' (Al Stone) [1749529] - [netdrv] net/mlx4_core: fix a memory leak bug (Alaa Hleihel) [1846792] - [netdrv] net/mlx4_core: Add missing iounmap() in error path (Alaa Hleihel) [1846792] - [netdrv] net/mlx5: E-switch, Fix error unwinding flow for steering init failure (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: E-Switch, Enable chains only if regs loopback is enabled (Alaa Hleihel) [1848830 1846791] - [netdrv] net/mlx5e: en_tc: Rely just on register loopback for tunnel restoration (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: E-Switch, Skip restore modify header between prios of same chain (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: CT: Fix ipv6 nat header rewrite actions (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Don't fail driver on failure to create debugfs (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Add missing mutex destroy (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Fix devlink objects and devlink device unregister sequence (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Wait for inactive autogroups (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Disable reload while removing the device (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: Fix ethtool hfunc configuration change (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: Fix repeated XSK usage on one channel (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Split RX and TX lock for parallel insertion (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Add a spinlock to protect the send ring (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Fix freeing in dr_create_rc_qp() (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Fix fatal error handling during device load (Alaa Hleihel) [1846791 1841363] - [netdrv] net/mlx5: drain health workqueue in case of driver load error (Alaa Hleihel) [1846791 1841363] - [netdrv] net/mlx5: Drain wq first during PCI device removal (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Have single error unwinding path (Alaa Hleihel) [1846791] - [netdrv] mlx5: reject unsupported coalescing params (Alaa Hleihel) [1846791] - [crypto] Crypto: chelsio - Fixes a hang issue during driver registration (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Use multiple txq/rxq per tfm to process the requests (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Recalculate iv only if it is needed (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - un-register crypto algorithms (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Endianess bug in create_authenc_wr (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Print the chcr driver information while module load (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - This fixes the libkcapi's cbc(aes) aio fail test cases (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Resetting crypto counters during the driver unregister (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - fix writing tfm flags to wrong place (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - calculating tx_channel_id as per the max number of channels (Vishal Kulkarni) [1845004] - [firmware] tpm: check event log version before reading final events (Jerry Snitselaar) [1839284] - [char] tpm: Fix TIS locality timeout problems (Jerry Snitselaar) [1840789]- [vfio] vfio/pci: Clear error and request eventfd ctx after releasing (Alex Williamson) [1847731] - [fs] pNFS/flexfiles: Fix list corruption if the mirror count changes (Benjamin Coddington) [1852500] - [netdrv] ionic: update the queue count on open (Michal Schmidt) [1846879] - [tools] turbostat: Use sched_getcpu() instead of hardcoded cpu 0 (Prarit Bhargava) [1852123] - [infiniband] RDMA/hfi1: Fix null-pointer dereference when calling mmu_notifier_register (Kamal Heib) [1850345] - [platform] Revert "intel-speed-select: Firmware workarounds for Icelake" (Prarit Bhargava) [1820597] - [powerpc] powerpc/crashkernel: Take "mem=" option into account (Pingfan Liu) [1747969] - [tools] perf stat: Increase perf metric output resolution (Michael Petlan) [1844632] - [tools] perf vendor events power9: Add missing metrics to POWER9 'cpi_breakdown' (Michael Petlan) [1844632] - [tools] perf metrics: Fix parse errors in power8 metrics (Michael Petlan) [1844632] - [tools] perf metrics: Fix parse errors in power9 metrics (Michael Petlan) [1844632] - [s390] s390/kaslr: add support for R_390_JMP_SLOT relocation type (Claudio Imbrenda) [1850908] - [s390] s390: prevent leaking kernel address in BEAR (Claudio Imbrenda) [1850907] - [s390] s390/cpumf: Adjust registration of s390 PMU device drivers (Claudio Imbrenda) [1850906] - [firmware] efi/x86: Add TPM related EFI tables to unencrypted mapping checks (Lenny Szubowicz) [1849922] - [security] selinux: allow reading labels before policy is loaded (Ondrej Mosnacek) [1839819] - [idle] intel_idle: Introduce 'use_acpi' module parameter (Prarit Bhargava) [1849666] - [net] xsk: Add overflow check for u64 division, stored into u32 (Jiri Benc) [1838075] - [tools] selftests: netdevsim: Always initialize 'RET' variable (Jiri Benc) [1838075] - [netdrv] netdevsim: Ensure policer drop counter always increases (Jiri Benc) [1838075] - [tools] selftests/bpf: Check for correct program attach/detach in xdp_attach test (Jiri Benc) [1838075] - [tools] libbpf: Fix type of old_fd in bpf_xdp_set_link_opts (Jiri Benc) [1838075] - [net] xsk: Add missing check on user supplied headroom size (Jiri Benc) [1838075] - [net] xdp: Reset prog in dev_change_xdp_fd when fd is negative (Jiri Benc) [1838075] - [netdrv] veth: rely on peer veth_rq for ndo_xdp_xmit accounting (Jiri Benc) [1838075] - [netdrv] veth: rely on veth_rq in veth_xdp_flush_bq signature (Jiri Benc) [1838075] - [net] page pool: allow to pass zero flags to page_pool_init() (Jiri Benc) [1838075] - [tools] selftests/bpf: Add tests for attaching XDP programs (Jiri Benc) [1838075] - [tools] libbpf: Add function to set link XDP fd while specifying old program (Jiri Benc) [1838075] - [tools] Add EXPECTED_FD-related definitions in if_link.h (Jiri Benc) [1838075] - [net] xdp: Support specifying expected existing program when attaching XDP (Jiri Benc) [1838075] - [netdrv] veth: remove atomic64_add from veth_xdp_xmit hotpath (Jiri Benc) [1838075] - [netdrv] veth: introduce more xdp counters (Jiri Benc) [1838075] - [netdrv] veth: distinguish between rx_drops and xdp_drops (Jiri Benc) [1838075] - [netdrv] veth: introduce more specialized counters in veth_stats (Jiri Benc) [1838075] - [netdrv] veth: move xdp stats in a dedicated structure (Jiri Benc) [1838075] - [net] xdp: Replace zero-length array with flexible-array member (Jiri Benc) [1838075] - [net] bpf: inet_diag: Dump bpf_sk_storages in inet_diag_dump() (Jiri Benc) [1838075] - [net] bpf: INET_DIAG support in bpf_sk_storage (Jiri Benc) [1838075] - [net] inet_diag: Move the INET_DIAG_REQ_BYTECODE nlattr to cb->data (Jiri Benc) [1838075] - [net] inet_diag: Refactor inet_sk_diag_fill(), dump(), and dump_one() (Jiri Benc) [1838075] - [net] inet_diag: return classid for all socket types (Jiri Benc) [1838075] - [net] inet_diag: fix reporting cgroup classid and fallback to priority (Jiri Benc) [1838075] - [net] Remove unneeded export of a couple of xdp generic functions (Jiri Benc) [1838075] - [net] page_pool: API cleanup and comments (Jiri Benc) [1838075] - [net] bpf, sockmap: Replace zero-length array with flexible-array member (Jiri Benc) [1838075] - [netdrv] geneve: allow changing DF behavior after creation (Sabrina Dubroca) [1847861] - [net] netfilter: nf_tables: add missing ->release_ops() in error path of newrule() (Andrea Claudi) [1846236] - [net] netfilter: nft_compat: use .release_ops and remove list of extension (Andrea Claudi) [1846236] - [net] ipv6: fix IPV6_ADDRFORM operation logic (Hangbin Liu) [1842025] - [net] ipv6: fix restrict IPV6_ADDRFORM operation (Hangbin Liu) [1842025] - [net] netfilter: nat: fix error handling upon registering inet hook (Florian Westphal) [1579145] - [net] netfilter: nf_tables: fix module autoload for redir (Florian Westphal) [1579145] - [net] netfilter: nf_tables: fix module autoload with inet family (Florian Westphal) [1579145] - [net] netfilter: nft_chain_nat: inet family is missing module ownership (Florian Westphal) [1579145] - [net] netfilter: nf_tables: Support auto-loading for inet nat (Florian Westphal) [1579145] - [net] netfilter: nft_redir: fix module autoload with ip4 (Florian Westphal) [1579145] - [net] netfilter: nat: fix udp checksum corruption (Florian Westphal) [1579145] - [tools] kselftests: extend nft_nat with inet family based nat hooks (Florian Westphal) [1579145] - [net] netfilter: nft_redir: add inet support (Florian Westphal) [1579145] - [net] netfilter: nft_masq: add inet support (Florian Westphal) [1579145] - [net] netfilter: nf_tables: merge route type into core (Florian Westphal) [1579145] - [net] netfilter: nat: add inet family nat support (Florian Westphal) [1579145] - [net] netfilter: nat: don't register device notifier twice (Florian Westphal) [1579145] - [net] netfilter: nf_tables: merge ipv4 and ipv6 nat chain types (Florian Westphal) [1579145] - [net] netfilter: nf_tables: nat: merge nft_masq protocol specific modules (Florian Westphal) [1579145] - [net] netfilter: nf_tables: nat: merge nft_redir protocol specific modules (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l3proto.h and nf_nat_core.h (Florian Westphal) [1579145] - [net] netfilter: nat: remove l3proto struct (Florian Westphal) [1579145] - [net] netfilter: nat: remove csum_recalc hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove csum_update hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove l3 manip_pkt hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l4proto.h (Florian Westphal) [1579145] - [net] netfilter: nat: merge nf_nat_ipv4, 6 into nat core (Florian Westphal) [1579145] - [net] netfilter: nat: fix spurious connection timeouts (Florian Westphal) [1579145] - [net] netfilter: nat: move nlattr parse and xfrm session decode to core (Florian Westphal) [1579145] - [net] netfilter: nat: merge ipv4 and ipv6 masquerade functionality (Florian Westphal) [1579145] - [net] netfilter: kconfig: nat related expression depend on nftables core (Florian Westphal) [1579145] - [net] netfilter: conntrack: fix bogus port values for other l4 protocols (Florian Westphal) [1579145] - [net] netfilter: conntrack: avoid unneeded nf_conntrack_l4proto lookups (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove pernet l4 proto register interface (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove remaining l4proto indirect packet calls (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove module owner field (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove invert_tuple callback (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove pkt_to_tuple callback (Florian Westphal) [1579145] - [net] netfilter: conntrack: udp: set stream timeout to 2 minutes (Florian Westphal) [1579145] - [net] netfilter: conntrack: udp: only extend timeout to stream mode after 2s (Florian Westphal) [1579145] - [net] netfilter: nat: un-export nf_nat_used_tuple (Florian Westphal) [1579145] - [net] netfilter: nat: fix ICMP header corruption on ICMP errors (Florian Westphal) [1579145] - [net] netfilter: nat: fix icmp id randomization (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l4proto struct (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->manip_pkt (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->nlattr_to_range (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->in_range (Florian Westphal) [1579145] - [net] netfilter: nat: fold in_range indirection into caller (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->unique_tuple (Florian Westphal) [1579145] - [net] netfilter: nat: un-export nf_nat_l4proto_unique_tuple (Florian Westphal) [1579145] - [net] netfilter: remove NF_NAT_RANGE_PROTO_RANDOM support (Florian Westphal) [1579145] - [x86] kvm: x86/pmu: Tweak kvm_pmu_get_msr to pass 'struct msr_data' in (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: do not pass poisoned hva to __kvm_set_memory_region (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: fix sync_with_host() in smm_test (Vitaly Kuznetsov) [1849987] - [x86] kvm: async_pf: Inject 'page ready' event only if 'page not present' was previously injected (Vitaly Kuznetsov) [1849987] - [x86] revert "kvm: async_pf: Fix #DF due to inject "Page not Present" and "Page Ready" exceptions simultaneously" (Vitaly Kuznetsov) [1849987] - [virt] kvm: async_pf: Cleanup kvm_setup_async_pf() (Vitaly Kuznetsov) [1849987] - [x86] kvm: i8254: remove redundant assignment to pointer s (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: respect singlestep when emulating instruction (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Don't probe KVM_CAP_HYPERV_ENLIGHTENED_VMCS when nested VMX is unsupported (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: do not substitute SVM/VMX check with KVM_CAP_NESTED_STATE check (Vitaly Kuznetsov) [1849987] - [x86] kvm: nvmx: Consult only the "basic" exit reason when routing nested exit (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Unexport x86_fpu_cache and make it static (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Ignore KVM 5-level paging support for VM_MODE_PXXV48_4K (Vitaly Kuznetsov) [1849987] - [virt] kvm: x86: Fix APIC page invalidation race (Vitaly Kuznetsov) [1849987] - [x86] kvm: svm: fix calls to is_intercept (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: fix vmx_preemption_timer_test build with GCC10 (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Add x86_64/debug_regs to .gitignore (Vitaly Kuznetsov) [1849987] - [x86] revert "kvm: x86: work around leak of uninitialized stack contents" (Vitaly Kuznetsov) [1849987] - [x86] kvm: vmx: Properly handle kvm_read/write_guest_virt*() result (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: emulate reserved nops from 0f/18 to 0f/1f (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Fix build with "make ARCH=x86_64" (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: minor code refactor and comments fixup around dirty logging (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: avoid unnecessary rmap walks when creating/moving slots (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: remove unnecessary rmap walk of read-only memslots (Vitaly Kuznetsov) [1849987] - [virt] kvm: Use vmemdup_user() (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Move MPK feature detection to common code (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Assign correct value to array.maxnent (Vitaly Kuznetsov) [1849987] - [x86] kvm: let kvm_destroy_vm_debugfs clean up vCPU debugfs directories (Vitaly Kuznetsov) [1849987] - [x86] kvm: Handle reads of SandyBridge RAPL PMU MSRs rather than injecting #GP (Vitaly Kuznetsov) [1849987] - [documentation] docs: virt/kvm: close inline string literal (Vitaly Kuznetsov) [1849987] - [documentation] docs: kvm: Fix KVM_KVMCLOCK_CTRL API doc (Vitaly Kuznetsov) [1849987] - [x86] arch/x86/kvm/svm/sev.c: change flag passed to GUP fast in sev_pin_memory() (Vitaly Kuznetsov) [1849987] - [virt] kvm/eventfd: remove unneeded conversion to bool (Vitaly Kuznetsov) [1849987] - [tools] selftests: fix kvm relocatable native/cross builds and installs (Vitaly Kuznetsov) [1849987] - [virt] kvm: x86: move kvm_create_vcpu_debugfs after last failure point (Vitaly Kuznetsov) [1849987] - [powerpc] xive: Share the event-queue page with the Hypervisor (Michael Roth) [1837232] - [powerpc] kvm: ppc: book3s hv: Read ibm, secure-memory nodes (Michael Roth) [1837232] - [powerpc] kvm: ppc: book3s hv: Relax check on H_SVM_INIT_ABORT (Michael Roth) [1837232]- [scsi] scsi: be2iscsi: Use scnprintf() for avoiding potential buffer overflow (Maurizio Lombardi) [1849586] - [edac] EDAC/i10nm: Update driver to support different bus number config register offsets (Aristeu Rozanski) [1838508] - [edac] EDAC, {skx, i10nm}: Make some configurations CPU model specific (Aristeu Rozanski) [1838508] - [fs] fuse: copy_file_range should truncate cache (Miklos Szeredi) [1849786] - [fs] fuse: fix copy_file_range cache issues (Miklos Szeredi) [1849786] - [fs] fuse: update attr_version counter on fuse_notify_inval_inode() (Miklos Szeredi) [1849786] - [fs] fuse: don't check refcount after stealing page (Miklos Szeredi) [1849786] - [fs] fuse: fix weird page warning (Miklos Szeredi) [1849786] - [fs] fuse: use dump_page (Miklos Szeredi) [1849786] - [fs] fuse: always allow query of st_dev (Miklos Szeredi) [1849786] - [fs] fuse: always flush dirty data on close(2) (Miklos Szeredi) [1849786] - [fs] fuse: invalidate inode attr in writeback cache mode (Miklos Szeredi) [1849786] - [fs] virtiofs: schedule blocking async replies in separate worker (Miklos Szeredi) [1849786] - [fs] fuse: Support RENAME_WHITEOUT flag (Miklos Szeredi) [1849786] - [fs] fuse: don't overflow LLONG_MAX with end offset (Miklos Szeredi) [1849786] - [fs] fix up iter on short count in fuse_direct_io() (Miklos Szeredi) [1849786] - [fs] fuse: fix fuse_send_readpages() in the syncronous read case (Miklos Szeredi) [1849786] - [fs] fuse: fix Kconfig indentation (Miklos Szeredi) [1849786] - [fs] virtiofs: Use completions while waiting for queue to be drained (Miklos Szeredi) [1849786] - [fs] virtiofs: Do not send forget request "struct list_head" element (Miklos Szeredi) [1849786] - [fs] virtiofs: Use a common function to send forget (Miklos Szeredi) [1849786] - [fs] virtiofs: Fix old-style declaration (Miklos Szeredi) [1849786] - [fs] fuse: verify nlink (Miklos Szeredi) [1849786] - [fs] fuse: verify write return (Miklos Szeredi) [1849786] - [fs] fuse: verify attributes (Miklos Szeredi) [1849786] - [fs] fuse: redundant get_fuse_inode() calls in fuse_writepages_fill() (Miklos Szeredi) [1849786] - [fs] fuse: truncate pending writes on O_TRUNC (Miklos Szeredi) [1849786] - [fs] fuse: flush dirty data/metadata before non-truncate setattr (Miklos Szeredi) [1849786] - [fs] ovl: initialize error in ovl_copy_xattr (Miklos Szeredi) [1849770] - [fs] ovl: fix redirect traversal on metacopy dentries (Miklos Szeredi) [1849770] - [fs] ovl: initialize OVL_UPPERDATA in ovl_lookup() (Miklos Szeredi) [1849770] - [fs] ovl: use only uppermetacopy state in ovl_lookup() (Miklos Szeredi) [1849770] - [fs] ovl: simplify setting of origin for index lookup (Miklos Szeredi) [1849770] - [fs] ovl: fix out of bounds access warning in ovl_check_fb_len() (Miklos Szeredi) [1849770] - [fs] ovl: return required buffer size for file handles (Miklos Szeredi) [1849770] - [fs] ovl: sync dirty data when remounting to ro mode (Miklos Szeredi) [1849770] - [fs] ovl: resolve more conflicting mount options (Miklos Szeredi) [1849770] - [fs] ovl: potential crash in ovl_fid_to_fh() (Miklos Szeredi) [1849770] - [fs] ovl: clear ATTR_OPEN from attr->ia_valid (Miklos Szeredi) [1849770] - [fs] ovl: clear ATTR_FILE from attr->ia_valid (Miklos Szeredi) [1849770] - [documentation] ovl: document xino expected behavior (Miklos Szeredi) [1849770] - [fs] ovl: enable xino automatically in more cases (Miklos Szeredi) [1849770] - [fs] ovl: avoid possible inode number collisions with xino=on (Miklos Szeredi) [1849770] - [fs] ovl: use a private non-persistent ino pool (Miklos Szeredi) [1849770] - [fs] ovl: fix WARN_ON nlink drop to zero (Miklos Szeredi) [1849770] - [fs] ovl: fix a typo in comment (Miklos Szeredi) [1849770] - [fs] ovl: replace zero-length array with flexible-array member (Miklos Szeredi) [1849770] - [fs] ovl: ovl_obtain_alias(): don't call d_instantiate_anon() for old (Miklos Szeredi) [1849770] - [fs] ovl: strict upper fs requirements for remote upper fs (Miklos Szeredi) [1849770] - [fs] ovl: check if upper fs supports RENAME_WHITEOUT (Miklos Szeredi) [1849770] - [fs] ovl: allow remote upper (Miklos Szeredi) [1849770] - [fs] ovl: decide if revalidate needed on a per-dentry basis (Miklos Szeredi) [1849770] - [fs] ovl: separate detection of remote upper layer from stacked overlay (Miklos Szeredi) [1849770] - [fs] ovl: restructure dentry revalidation (Miklos Szeredi) [1849770] - [fs] ovl: ignore failure to copy up unknown xattrs (Miklos Szeredi) [1849770] - [documentation] ovl: document permission model (Miklos Szeredi) [1849770] - [fs] ovl: simplify i_ino initialization (Miklos Szeredi) [1849770] - [fs] ovl: factor out helper ovl_get_root() (Miklos Szeredi) [1849770] - [fs] ovl: fix out of date comment and unreachable code (Miklos Szeredi) [1849770] - [fs] ovl: fix value of i_ino for lower hardlink corner case (Miklos Szeredi) [1849770] - [fs] ovl: fix lockdep warning for async write (Miklos Szeredi) [1849770] - [fs] ovl: fix some xino configurations (Miklos Szeredi) [1849770] - [fs] ovl: fix lock in ovl_llseek() (Miklos Szeredi) [1849770] - [fs] ovl: fix lseek overflow on 32bit (Miklos Szeredi) [1849770] - [documentation] docs: filesystems: add overlayfs to index.rst (Miklos Szeredi) [1849770] - [fs] ovl: add splice file read write helper (Miklos Szeredi) [1849770] - [fs] ovl: implement async IO routines (Miklos Szeredi) [1849770] - [fs] vfs: add vfs_iocb_iter_helper functions (Miklos Szeredi) [1849770] - [fs] ovl: layer is const (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of non-constant st_dev; st_ino (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of conflicting lower layer uuid (Miklos Szeredi) [1849770] - [fs] ovl: generalize the lower_fsarray (Miklos Szeredi) [1849770] - [fs] ovl: simplify ovl_same_sb() helper (Miklos Szeredi) [1849770] - [fs] ovl: generalize the lower_layersarray (Miklos Szeredi) [1849770] - [fs] ovl: improving copy-up efficiency for big sparse file (Miklos Szeredi) [1849770] - [fs] ovl: use ovl_inode_lock in ovl_llseek() (Miklos Szeredi) [1849770] - [fs] ovl: use pr_fmt auto generate prefix (Miklos Szeredi) [1849770] - [fs] ovl: fix wrong WARN_ON() in ovl_cache_update_ino() (Miklos Szeredi) [1849770] - [fs] locks: print unsigned ino in /proc/locks (Miklos Szeredi) [1849770] - [documentation] docs: filesystems: overlayfs: Fix restview warnings (Miklos Szeredi) [1849770] - [fs] ovl: relax WARN_ON() on rename to self (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of non-unique st_dev; st_ino (Miklos Szeredi) [1849770] - [fs] ovl: don't use a temp buf for encoding real fh (Miklos Szeredi) [1849770] - [fs] ovl: make sure that real fid is 32bit aligned in memory (Miklos Szeredi) [1849770] - [fs] ovl: fix lookup failure on multi lower squashfs (Miklos Szeredi) [1849770] - [fs] ovl: filter of trusted xattr results in audit (Miklos Szeredi) [1849770] - [fs] ovl: Fix dereferencing possible ERR_PTR() (Miklos Szeredi) [1849770] - [fs] ovl: fix regression caused by overlapping layers detection (Miklos Szeredi) [1849770] - [fs] ovl: make i_ino consistent with st_ino in more cases (Miklos Szeredi) [1849770] - [fs] ovl: fix typo in MODULE_PARM_DESC (Miklos Szeredi) [1849770] - [fs] ovl: fix bogus -Wmaybe-unitialized warning (Miklos Szeredi) [1849770] - [fs] ovl: don't fail with disconnected lower NFS (Miklos Szeredi) [1849770] - [fs] ovl: detect overlapping layers (Miklos Szeredi) [1849770] - [fs] ovl: using posix_acl_xattr_size() to get size instead of posix_acl_to_xattr() (Miklos Szeredi) [1849770] - [fs] ovl: abstract ovl_inode lock with a helper (Miklos Szeredi) [1849770] - [fs] ovl: remove the 'locked' argument of ovl_nlink_{start, end} (Miklos Szeredi) [1849770] - [fs] ovl: relax requirement for non null uuid of lower fs (Miklos Szeredi) [1849770] - [fs] ovl: fold copy-up helpers into callers (Miklos Szeredi) [1849770] - [fs] ovl: untangle copy up call chain (Miklos Szeredi) [1849770] - [fs] ovl: clean up error handling in ovl_get_tmpfile() (Miklos Szeredi) [1849770] - [netdrv] ionic: tame the watchdog timer on reconfig (Jonathan Toppins) [1846879 1846280] - [remoteproc] remoteproc: pull in slab.h (Jarod Wilson) [1849080]- [x86] revert "kvm: vmx: Micro-optimize vmexit time when not exposing PMU" (Vitaly Kuznetsov) [1844099] - [fs] nfsd4: kill warnings on testing stateids with mismatched clientids (Benjamin Coddington) [1765672] - [fs] NFS: Ensure security label is set for root inode (Scott Mayhew) [1660798] - [s390] kexec: Fix file verification on S390 (Lianbo Jiang) [1815369] - [s390] kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE (Lianbo Jiang) [1815369] - [netdrv] ibmvnic: continue to init in CRQ reset returns H_CLOSED (Steve Best) [1850179] - [net] sunrpc: add missing newline when printing parameter 'auth_hashtable_size' by sysfs (Benjamin Coddington) [1849998] - [net] sunrpc: clean up properly in gss_mech_unregister() (Benjamin Coddington) [1849998] - [net] sunrpc: svcauth_gss_register_pseudoflavor must reject duplicate registrations (Benjamin Coddington) [1849998] - [net] SUNRPC: Fix backchannel RPC soft lockups (Benjamin Coddington) [1849998] - [fs] NFS: Fix a page leak in nfs_destroy_unlinked_subrequests() (Benjamin Coddington) [1849998] - [fs] nfsd4: make drc_slab global, not per-net (Benjamin Coddington) [1849998] - [net] SUNRPC: Fix GSS privacy computation of auth->au_ralign (Benjamin Coddington) [1849998] - [net] SUNRPC: Add "@len" parameter to gss_unwrap() (Benjamin Coddington) [1849998] - [fs] NFS: finish_automount() requires us to hold 2 refs to the mount record (Benjamin Coddington) [1849998] - [fs] NFS: Fix use-after-free issues in nfs_pageio_add_request() (Benjamin Coddington) [1849998] - [fs] NFS: alloc_nfs_open_context() must use the file cred when available (Benjamin Coddington) [1849998] - [net] libceph: don't omit used_replica in target_copy() (Jeff Layton) [1847528] - [net] libceph: don't omit recovery_deletes in target_copy() (Jeff Layton) [1847528] - [net] libceph: move away from global osd_req_flags (Jeff Layton) [1847528] - [fs] ceph: skip checking caps when session reconnecting and releasing reqs (Jeff Layton) [1847528] - [fs] ceph: make sure mdsc->mutex is nested in s->s_mutex to fix dead lock (Jeff Layton) [1847528] - [fs] ceph: don't return -ESTALE if there's still an open file (Jeff Layton) [1847528] - [include] libceph, rbd: replace zero-length array with flexible-array (Jeff Layton) [1847528] - [fs] ceph: allow rename operation under different quota realms (Jeff Layton) [1847528] - [fs] ceph: normalize 'delta' parameter usage in check_quota_exceeded (Jeff Layton) [1847528] - [fs] ceph: ceph_kick_flushing_caps needs the s_mutex (Jeff Layton) [1847528] - [fs] ceph: request expedited service on session's last cap flush (Jeff Layton) [1847528] - [fs] ceph: convert mdsc->cap_dirty to a per-session list (Jeff Layton) [1847528] - [fs] ceph: reset i_requested_max_size if file write is not wanted (Jeff Layton) [1847528] - [fs] ceph: throw a warning if we destroy session with mutex still locked (Jeff Layton) [1847528] - [fs] ceph: fix potential race in ceph_check_caps (Jeff Layton) [1847528] - [fs] ceph: document what protects i_dirty_item and i_flushing_item (Jeff Layton) [1847528] - [fs] ceph: don't take i_ceph_lock in handle_cap_import (Jeff Layton) [1847528] - [fs] ceph: don't release i_ceph_lock in handle_cap_trunc (Jeff Layton) [1847528] - [fs] ceph: add comments for handle_cap_flush_ack logic (Jeff Layton) [1847528] - [fs] ceph: split up __finish_cap_flush (Jeff Layton) [1847528] - [fs] ceph: reorganize __send_cap for less spinlock abuse (Jeff Layton) [1847528] - [fs] ceph: flush release queue when handling caps for unknown inode (Jeff Layton) [1847528] - [net] libceph: ignore pool overlay and cache logic on redirects (Jeff Layton) [1847528] - [x86] kvm: lapic: ensure APIC map is up to date on concurrent update requests (Igor Mammedov) [1835330] - [x86] kvm: lapic: fix broken vcpu hotplug (Igor Mammedov) [1835330] - [netdrv] net: hns3: add some error checking in hclge_tm module (Mark Langsdorf) [1809057] {CVE-2019-15925} - [fs] udf: Fix mounting of Win7 created UDF filesystems (Oleksandr Natalenko) [1842400] - [netdrv] net: qed: fixes crash while running driver in kdump kernel (Manish Chopra) [1727746] - [netdrv] net: qed: Disable SRIOV functionality inside kdump kernel (Manish Chopra) [1727746] - [netdrv] net: qed*: Reduce RX and TX default ring count when running inside kdump kernel (Manish Chopra) [1727746] - [fs] cifs: dump Security Type info in DebugData (Leif Sahlberg) [1845390] - [net] netfilter: flowtable: Make nf_flow_table_offload_add/del_cb inline (Marcelo Leitner) [1840938] - [net] sched: act_ct: Make tcf_ct_flow_table_restore_skb inline (Marcelo Leitner) [1840938] - [net] netfilter: flowtable: Add pending bit for offload work (Marcelo Leitner) [1842670] - [net] Evict neighbor entries on carrier down (Ivan Vecera) [1845352] - [net] bridge: explicitly zero is_sticky in fdb_create (Ivan Vecera) [1845350] - [net] bridge: add support for sticky fdb entries (Ivan Vecera) [1845350] - [net] remove indirect block netdev event registration (Marcelo Leitner) [1841300] - [netdrv] bnxt_tc: update indirect block support (Marcelo Leitner) [1841300] - [netdrv] nfp: update indirect block support (Marcelo Leitner) [1841300] - [netdrv] mlx5: update indirect block support (Marcelo Leitner) [1841300] - [net] use flow_indr_dev_setup_offload() (Marcelo Leitner) [1841300] - [net] cls_api: add tcf_block_offload_init() (Marcelo Leitner) [1841300] - [net] flow_offload: consolidate indirect flow_block infrastructure (Marcelo Leitner) [1841300] - [net] netfilter: nf_flowtable: expose nf_flow_table_gc_cleanup() (Marcelo Leitner) [1841300] - [fs] iomap: Handle memory allocation failure in readahead (Carlos Maiolino) [1828792] - [fs] iomap: fix comments in iomap_dio_rw (Carlos Maiolino) [1828792] - [fs] iomap: Remove pgoff from tracepoints (Carlos Maiolino) [1828792] - [fs] fs: Fix page_mkwrite off-by-one errors (Carlos Maiolino) [1828792] - [fs] iomap: stop using ioend after it's been freed in iomap_finish_ioend() (Carlos Maiolino) [1828792] - [fs] iomap: fix sub-page uptodate handling (Carlos Maiolino) [1828792] - [fs] iomap: remove unneeded variable in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: Do not create fake iter in iomap_dio_bio_actor() (Carlos Maiolino) [1828792] - [fs] iomap: trace iomap_appply results (Carlos Maiolino) [1828792] - [fs] fs/iomap: remove redundant check in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: use a srcmap for a read-modify-write I/O (Carlos Maiolino) [1828792] - [fs] iomap: renumber IOMAP_HOLE to 0 (Carlos Maiolino) [1828792] - [fs] iomap: use write_begin to read pages to unshare (Carlos Maiolino) [1828792] - [fs] iomap: move the zeroing case out of iomap_read_page_sync (Carlos Maiolino) [1828792] - [fs] iomap: ignore non-shared or non-data blocks in xfs_file_dirty (Carlos Maiolino) [1828792] - [fs] iomap: always use AOP_FLAG_NOFS in iomap_write_begin (Carlos Maiolino) [1828792] - [fs] iomap: remove the unused iomap argument to __iomap_write_end (Carlos Maiolino) [1828792] - [fs] iomap: better document the IOMAP_F_* flags (Carlos Maiolino) [1828792] - [fs] iomap: enhance writeback error message (Carlos Maiolino) [1828792] - [fs] iomap: pass a struct page to iomap_finish_page_writeback (Carlos Maiolino) [1828792] - [fs] iomap: cleanup iomap_ioend_compare (Carlos Maiolino) [1828792] - [fs] iomap: move struct iomap_page out of iomap.h (Carlos Maiolino) [1828792] - [fs] iomap: warn on inline maps in iomap_writepage_map (Carlos Maiolino) [1828792] - [fs] iomap: lift the xfs writeback code to iomap (Carlos Maiolino) [1828792] - [fs] iomap: lift common tracing code from xfs to iomap (Carlos Maiolino) [1828792] - [fs] iomap: zero newly allocated mapped blocks (Carlos Maiolino) [1828792] - [fs] xfs: remove the fork fields in the writepage_ctx and ioend (Carlos Maiolino) [1828792] - [fs] xfs: turn io_append_trans into an io_private void pointer (Carlos Maiolino) [1828792] - [fs] xfs: refactor the ioend merging code (Carlos Maiolino) [1828792] - [fs] xfs: use a struct iomap in xfs_writepage_ctx (Carlos Maiolino) [1828792] - [fs] xfs: set IOMAP_F_NEW more carefully (Carlos Maiolino) [1828792] - [fs] xfs: initialize iomap->flags in xfs_bmbt_to_iomap (Carlos Maiolino) [1828792] - [fs] xfs: Use iomap_dio_rw to wait for unaligned direct IO (Carlos Maiolino) [1828792] - [fs] iomap: Allow forcing of waiting for running DIO in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: move the iomap_dio_rw ->end_io callback into a structure (Carlos Maiolino) [1828792] - [fs] iomap: split size and error for iomap_dio_rw ->end_io (Carlos Maiolino) [1828792] - [fs] iomap: fix Invalid License ID (Carlos Maiolino) [1828792] - [fs] iomap: move internal declarations into fs/iomap/ (Carlos Maiolino) [1828792] - [fs] iomap: move the main iteration code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the buffered IO code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the direct IO code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the SEEK_HOLE code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the file mapping reporting code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the swapfile code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: start moving code to fs/iomap/ (Carlos Maiolino) [1828792] - [fs] iomap: move iomap_read_inline_data around (Carlos Maiolino) [1828792] - [fs] iomap: convert to SPDX identifier (Carlos Maiolino) [1828792] - [fs] iomap: remove duplicated include from iomap.c (Carlos Maiolino) [1828792] - [netdrv] fjes: Handle workqueue allocation failure (Masayoshi Mizuma) [1830565] {CVE-2019-16231}- [fs] NFSv4: Ensure the delegation cred is pinned when we call delegreturn (Benjamin Coddington) [1848933] - [fs] NFSv4: Ensure the delegation is pinned in nfs_do_return_delegation() (Benjamin Coddington) [1848933] - [fs] NFSv4.1 make cachethis=no for writes (Benjamin Coddington) [1848933] - [fs] NFSv4: Fix revalidation of dentries with delegations (Benjamin Coddington) [1848933] - [fs] NFSv4: Fix races between open and dentry revalidation (Benjamin Coddington) [1848933] - [fs] NFS: Fix up directory verifier races (Benjamin Coddington) [1848933] - [net] sunrpc: expiry_time should be seconds not timeval (Benjamin Coddington) [1848933] - [fs] NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals (Benjamin Coddington) [1848933] - [fs] NFSv4: try lease recovery on NFS4ERR_EXPIRED (Benjamin Coddington) [1848933] - [fs] NFS: Fix memory leaks (Benjamin Coddington) [1848933] - [fs] nfs: optimise readdir cache page invalidation (Benjamin Coddington) [1848933] - [fs] NFS: Switch readdir to using iterate_shared() (Benjamin Coddington) [1848933] - [fs] NFS: Use kmemdup_nul() in nfs_readdir_make_qstr() (Benjamin Coddington) [1848933] - [fs] NFS: Directory page cache pages need to be locked when read (Benjamin Coddington) [1848933] - [fs] NFS: Fix memory leaks and corruption in readdir (Benjamin Coddington) [1848933] - [net] SUNRPC: Use kmemdup_nul() in rpc_parse_scope_id() (Benjamin Coddington) [1848933] - [fs] NFS: Replace various occurrences of kstrndup() with kmemdup_nul() (Benjamin Coddington) [1848933] - [fs] NFSv4: Limit the total number of cached delegations (Benjamin Coddington) [1848933] - [fs] NFSv4: Add accounting for the number of active delegations held (Benjamin Coddington) [1848933] - [fs] NFSv4: Try to return the delegation immediately when marked for return on close (Benjamin Coddington) [1848933] - [fs] NFS: Clear NFS_DELEGATION_RETURN_IF_CLOSED when the delegation is returned (Benjamin Coddington) [1848933] - [fs] NFSv4: nfs_inode_evict_delegation() should set NFS_DELEGATION_RETURNING (Benjamin Coddington) [1848933] - [fs] NFS: nfs_find_open_context() should use cred_fscmp() (Benjamin Coddington) [1848933] - [fs] NFS: nfs_access_get_cached_rcu() should use cred_fscmp() (Benjamin Coddington) [1848933] - [fs] NFSv3: FIx bug when using chacl and chmod to change acl (Benjamin Coddington) [1848933] - [fs] NFSv4.x recover from pre-mature loss of openstateid (Benjamin Coddington) [1848933] - [fs] NFS: Trust cached access if we've already revalidated the inode once (Benjamin Coddington) [1848933] - [fs] NFS: Fix nfs_direct_write_reschedule_io() (Benjamin Coddington) [1848933] - [fs] NFS: When resending after a short write, reset the reply count to zero (Benjamin Coddington) [1848933] - [fs] NFS: Improve tracing of permission calls (Benjamin Coddington) [1848933] - [fs] NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes() (Benjamin Coddington) [1848933] - [fs] NFS: Fix up fsync() when the server rebooted (Benjamin Coddington) [1848933] - [net] SUNRPC: Remove broken gss_mech_list_pseudoflavors() (Benjamin Coddington) [1848933] - [fs] NFS: Revalidate the file mapping on all fatal writeback errors (Benjamin Coddington) [1848933] - [fs] NFS: Revalidate the file size on a fatal write error (Benjamin Coddington) [1848933] - [fs] nfs: NFS_SWAP should depend on SWAP (Benjamin Coddington) [1848933] - [net] SUNRPC: constify copied structure (Benjamin Coddington) [1848933] - [fs] fs/nfs, swapon: check holes in swapfile (Benjamin Coddington) [1848933] - [net] SUNRPC: call_connect_status should handle -EPROTO (Benjamin Coddington) [1848933] - [fs] NFS: Introduce trace events triggered by page writeback errors (Benjamin Coddington) [1848933] - [net] SUNRPC: Capture signalled RPC tasks (Benjamin Coddington) [1848933] - [fs] NFS: move dprintk after nfs_alloc_fattr in nfs3_proc_lookup (Benjamin Coddington) [1848933] - [fs] NFS4: Remove unneeded semicolon (Benjamin Coddington) [1848933] - [fs] nfs: encode nfsv4 timestamps as 64-bit (Benjamin Coddington) [1848933] - [fs] nfs: remove timespec from xdr_encode_nfstime (Benjamin Coddington) [1848933] - [fs] nfs: use timespec64 in nfs_fattr (Benjamin Coddington) [1848933] - [net] sunrpc: convert to time64_t for expiry (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in nfssvc.c (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in nfs4proc.c (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in vfs.c (Benjamin Coddington) [1848933] - [fs] nfsd: remove nfs4_reset_lease() declarations (Benjamin Coddington) [1848933] - [fs] nfsd: use ktime_get_real_seconds() in nfs4_verifier (Benjamin Coddington) [1848933] - [fs] nfsd: use boottime for lease expiry calculation (Benjamin Coddington) [1848933] - [fs] nfsd: fix jiffies/time_t mixup in LRU list (Benjamin Coddington) [1848933] - [fs] nfsd: fix delay timer on 32-bit architectures (Benjamin Coddington) [1848933] - [fs] nfsd: use time64_t in nfsd_proc_setattr() check (Benjamin Coddington) [1848933] - [fs] nfsd: pass a 64-bit guardtime to nfsd_setattr() (Benjamin Coddington) [1848933] - [fs] nfsd: make 'boot_time' 64-bit wide (Benjamin Coddington) [1848933] - [fs] nfsd: use timespec64 in encode_time_delta (Benjamin Coddington) [1848933] - [fs] nfsd: handle nfs3 timestamps as unsigned (Benjamin Coddington) [1848933] - [fs] nfsd: print 64-bit timestamps in client_info_show (Benjamin Coddington) [1848933] - [fs] nfsd: use ktime_get_seconds() for timestamps (Benjamin Coddington) [1848933] - [fs] nfsd: remove unnecessary assertion in nfsd4_encode_replay (Benjamin Coddington) [1848933] - [fs] nfsd: Clone should commit src file metadata too (Benjamin Coddington) [1848933] - [fs] nfsd4: Remove unneeded semicolon (Benjamin Coddington) [1848933] - [fs] nfs: fix timstamp debug prints (Benjamin Coddington) [1848933] - [net] nfs: use time64_t internally (Benjamin Coddington) [1848933] - [fs] nfsd: Return the correct number of bytes written to the file (Benjamin Coddington) [1848933] - [fs] nfsd: Fix up some unused variable warnings (Benjamin Coddington) [1848933] - [kernel] blktrace: ensure our debugfs dir exists (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: fix debugfs use after free (Ming Lei) [1816559] {CVE-2019-19770} - [block] loop: be paranoid on exit and prevent new additions / removals (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: annotate required lock on do_blk_trace_setup() (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: revert back to synchronous request_queue removal (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: clarify context for refcount increment helpers (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: add docs for gendisk / request_queue refcount helpers (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: no need to check return value of debugfs_create functions (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: Avoid sparse warnings when assigning q->blk_trace (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: break out of blktrace setup on concurrent calls (Ming Lei) [1816559] {CVE-2019-19770} - [nvme] nvme-fc: don't call nvme_cleanup_cmd() for AENs (Ewan Milne) [1847572] - [nvme] nvme-fc: convert assoc_active flag to bit op (Ewan Milne) [1847572] - [nvme] nvme-fc: Ensure private pointers are NULL if no data (Ewan Milne) [1847572] - [nvme] nvme-multipath: do not reset on unknown status (Ewan Milne) [1847572] - [documentation] x86/speculation: Add Ivy Bridge to affected list (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [documentation] x86/speculation: Add SRBDS vulnerability and mitigation documentation (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu: Add 'table' argument to cpu_matches() (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu: Add a steppings field to struct x86_cpu_id (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu/bugs: Convert to new matching macros (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [crypto] crypto: simd - correctly take reqsize of wrapped skcipher into account (Mark Salter) [1830471] - [fs] nfsd: depend on CRYPTO_MD5 for legacy client tracking (Benjamin Coddington) [1847468] - [fs] nfsd: check for EBUSY from vfs_rmdir/vfs_unink (Benjamin Coddington) [1847468] - [fs] NFS: Fallocate should use the nfs4_fattr_bitmap (Benjamin Coddington) [1847468] - [fs] NFS: Return -ETXTBSY when attempting to write to a swapfile (Benjamin Coddington) [1847468] - [fs] fs: nfs: sysfs: Remove NULL check before kfree (Benjamin Coddington) [1847468] - [fs] NFS: remove unneeded semicolon (Benjamin Coddington) [1847468] - [fs] NFSv4: add declaration of current_stateid (Benjamin Coddington) [1847468] - [include] sunrpc: remove __KERNEL__ ifdefs (Benjamin Coddington) [1847468] - [fs] nfsd: document callback_wq serialization of callback code (Benjamin Coddington) [1847468] - [fs] nfsd: mark cb path down on unknown errors (Benjamin Coddington) [1847468] - [net] SUNRPC: Avoid RPC delays when exiting suspend (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't retry the GETATTR on old stateid in nfs4_delegreturn_done() (Benjamin Coddington) [1847468] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in delegreturn (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix races between open and delegreturn (Benjamin Coddington) [1847468] - [fs] NFS: nfs_inode_find_state_and_recover() fix stateid matching (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix nfs4_inode_make_writeable() (Benjamin Coddington) [1847468] - [fs] NFSv4: nfs4_return_incompatible_delegation() should check delegation validity (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't reclaim delegations that have been returned or revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Ignore requests to return the delegation if it was revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Revoke the delegation on success in nfs4_delegreturn_done() (Benjamin Coddington) [1847468] - [fs] NFSv4: Update the stateid seqid in nfs_revoke_delegation() (Benjamin Coddington) [1847468] - [fs] NFSv4: Clear the NFS_DELEGATION_REVOKED flag in nfs_update_inplace_delegation() (Benjamin Coddington) [1847468] - [fs] NFSv4: Hold the delegation spinlock when updating the seqid (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't remove the delegation from the super_list more than once (Benjamin Coddington) [1847468] - [fs] NFS: Rename nfs_inode_return_delegation_noreclaim() (Benjamin Coddington) [1847468] - [fs] NFSv4: fail nfs4_refresh_delegation_stateid() when the delegation was revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Delegation recalls should not find revoked delegations (Benjamin Coddington) [1847468] - [fs] NFSv4: nfs4_callback_getattr() should ignore revoked delegations (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix delegation handling in update_open_stateid() (Benjamin Coddington) [1847468] - [fs] NFSv4.1: Don't rebind to the same source port when reconnecting to the server (Benjamin Coddington) [1847468] - [fs] NFS/pnfs: Separate NFSv3 DS and MDS traffic (Benjamin Coddington) [1847468] - [fs] pNFS: nfs3_set_ds_client should set NFS_CS_NOPING (Benjamin Coddington) [1847468] - [fs] NFS: Add a flag to tell nfs_client to set RPC_CLNT_CREATE_NOPING (Benjamin Coddington) [1847468] - [fs] NFS: Use non-atomic bit ops when initialising struct nfs_client_initdata (Benjamin Coddington) [1847468] - [fs] NFSv3: Clean up timespec encode (Benjamin Coddington) [1847468] - [fs] NFSv2: Clean up timespec encode (Benjamin Coddington) [1847468] - [fs] NFSv2: Fix a typo in encode_sattr() (Benjamin Coddington) [1847468] - [fs] NFSv4: NFSv4 callbacks also support 64-bit timestamps (Benjamin Coddington) [1847468] - [fs] NFSv4: Encode 64-bit timestamps (Benjamin Coddington) [1847468] - [fs] NFS: Convert struct nfs_fattr to use struct timespec64 (Benjamin Coddington) [1847468] - [fs] NFS: If nfs_mountpoint_expiry_timeout < 0, do not expire submounts (Benjamin Coddington) [1847468] - [net] SUNRPC: Add trace points to observe transport congestion control (Benjamin Coddington) [1847468] - [net] SUNRPC: Eliminate log noise in call_reserveresult (Benjamin Coddington) [1847468] - [fs] nfsd: remove private bin2hex implementation (Benjamin Coddington) [1847468] - [fs] nfsd: remove set but not used variable 'len' (Benjamin Coddington) [1847468] - [fs] NFSv3: fix rpc receive buffer size for MOUNT call (Steve Dickson) [1837034] - [fs] NFS: remove unused macros (Steve Dickson) [1837034] - [mm] mm, slab: fix sign conversion problem in memcg_uncharge_slab() (Waiman Long) [1849016] - [mm] mm: fix false-positive OVERCOMMIT_GUESS failures (Waiman Long) [1849016] - [mm] mm: remove CONFIG_MIGRATE_VMA_HELPER (Karol Herbst) [1847908] - [nvdimm] libnvdimm: Export the target_node attribute for regions and namespaces (Jeff Moyer) [1783157] - [dax] dax: Add numa_node to the default device-dax attributes (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Simplify root read-only definition for the 'resource' attribute (Jeff Moyer) [1783157] - [dax] dax: Simplify root read-only definition for the 'resource' attribute (Jeff Moyer) [1783157] - [dax] dax: Create a dax device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nvdimm_bus_attribute_group to device_type (Jeff Moyer) [1783157] - [acpi] libnvdimm: Move nvdimm_attribute_group to device_type (Jeff Moyer) [1783157] - [acpi] libnvdimm: Move nd_mapping_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_region_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_numa_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_device_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move region attribute group definition (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move attribute groups to device type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm/region: Initialize bad block for volatile namespaces (Jeff Moyer) [1783157] - [x86] x86/mce: Add Xeon Icelake to list of CPUs that support PPIN (Steve Best) [1848710] - [powerpc] powerpc/kernel: Enables memory hot-remove after reboot on pseries guests (David Gibson) [1848844] - [fs] cifs: multichannel: try to rebind when reconnecting a channel (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: use pointer for binding channel (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: move channel selection above transport layer (Leif Sahlberg) [1842759] - [fs] cifs: move some variables off the stack in smb2_ioctl_query_info (Leif Sahlberg) [1842759] - [fs] cifs: reduce stack use in smb2_compound_op (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: always zero struct cifs_io_parms (Leif Sahlberg) [1842759] - [fs] smb3: default to minimum of two channels when multichannel specified (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: move channel selection in function (Leif Sahlberg) [1842759] - [mm] x86/init: fix build with CONFIG_SWAP=n (Waiman Long) [1839415] - [netdrv] ionic: add pcie_print_link_status (Jonathan Toppins) [1846506] - [netdrv] ionic: no link check while resetting queues (Jonathan Toppins) [1846953] - [netdrv] ionic: export features for vlans to use (Jonathan Toppins) [1846868] - [netdrv] ionic: remove support for mgmt device (Jonathan Toppins) [1846506] - [netdrv] ionic: wait on queue start until after IFF_UP (Jonathan Toppins) [1844924] - [netdrv] ionic: add more ethtool stats (Jonathan Toppins) [1848149] - [netdrv] ionic: more ionic name tweaks (Jonathan Toppins) [1848149] - [netdrv] ionic: ionic_intr_free parameter change (Jonathan Toppins) [1848149] - [netdrv] ionic: reset device at probe (Jonathan Toppins) [1848149] - [netdrv] ionic: shorter dev cmd wait time (Jonathan Toppins) [1848149] - [netdrv] ionic: add support for more xcvr types (Jonathan Toppins) [1848149] - [netdrv] ionic: protect vf calls from fw reset (Jonathan Toppins) [1848149] - [netdrv] ionic: updates to ionic FW api description (Jonathan Toppins) [1848149] - [netdrv] ionic: support longer tx sg lists (Jonathan Toppins) [1848149] - [netdrv] ionic: Use debugfs_create_bool() to export bool (Jonathan Toppins) [1848149] - [netdrv] drivers:Remove inclusion of vermagic header (Jonathan Toppins) [1848149] - [net] SUNRPC: Destroy the back channel when we destroy the host transport (Benjamin Coddington) [1846984] - [net] SUNRPC: fix race to sk_err after xs_error_report (Benjamin Coddington) [1846984] - [fs] NFS: Remove redundant mirror tracking in O_DIRECT (Benjamin Coddington) [1846984] - [fs] nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request (Benjamin Coddington) [1846984] - [net] sunrpc: clean up indentation issue (Benjamin Coddington) [1846984] - [fs] NFS: Optimise the default readahead size (Benjamin Coddington) [1846984] - [fs] nfsd: fix nfs read eof detection (Benjamin Coddington) [1846984] - [fs] nfsd: Make nfsd_reset_boot_verifier_locked static (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in LOCKU (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1846984] - [fs] NFSv4: Fix OPEN_DOWNGRADE error handling (Benjamin Coddington) [1846984] - [fs] pNFS: Handle NFS4ERR_OLD_STATEID on layoutreturn by bumping the state seqid (Benjamin Coddington) [1846984] - [fs] NFSv4: Add a helper to increment stateid seqids (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle RPC level errors in LAYOUTRETURN (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_DELAY correctly in return-on-close (Benjamin Coddington) [1846984] - [fs] NFSv4: Clean up pNFS return-on-close error handling (Benjamin Coddington) [1846984] - [fs] NFS: remove unused check for negative dentry (Benjamin Coddington) [1846984] - [fs] NFSv3: use nfs_add_or_obtain() to create and reference inodes (Benjamin Coddington) [1846984] - [fs] NFS: Refactor nfs_instantiate() for dentry referencing callers (Benjamin Coddington) [1846984] - [fs] nfs_instantiate(): prevent multiple aliases for directory inode (Benjamin Coddington) [1846984] - [net] SUNRPC: Rename xdr_buf_read_netobj to xdr_buf_read_mic (Benjamin Coddington) [1846984] - [fs] nfsd: degraded slot-count more gracefully as allocation nears exhaustion (Benjamin Coddington) [1846984] - [fs] nfsd: handle drc over-allocation gracefully (Benjamin Coddington) [1846984] - [net] SUNRPC: RPC level errors should always set task->tk_rpc_status (Benjamin Coddington) [1846984] - [fs] nfsd: Support the server resetting the boot verifier (Benjamin Coddington) [1846984] - [net] sunrpc: Use kzfree rather than its implementation (Benjamin Coddington) [1846984] - [fs] nfsd: eliminate an unnecessary acl size limit (Benjamin Coddington) [1846984] - [fs] Deprecate nfsd fault injection (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs4_proc_get_lease_time() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs41_proc_secinfo_no_name() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs41_proc_reclaim_complete() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have _nfs4_proc_secinfo() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs4_proc_setclientid() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Add an nfs4_call_sync_custom() function (Benjamin Coddington) [1846984] - [fs] NFSv4: Fix a memory leak bug (Benjamin Coddington) [1846984] - [net] xprtrdma: Fix bc_max_slots return value (Benjamin Coddington) [1846984] - [net] SUNRPC: Inline xdr_commit_encode (Benjamin Coddington) [1846984] - [net] SUNRPC: Remove rpc_wake_up_queued_task_on_wq() (Benjamin Coddington) [1846984] - [fs] fs: nfs: Fix possible null-pointer dereferences in encode_attrs() (Benjamin Coddington) [1846984] - [fs] nfsd: Fix the documentation for svcxdr_tmpalloc() (Benjamin Coddington) [1846984] - [fs] nfsd: Remove unnecessary NULL checks (Benjamin Coddington) [1846984] - [s390] vfio-ccw: make vfio_ccw_regops variables declarations static (Cornelia Huck) [1660917] - [s390] vfio-ccw: Add trace for CRW event (Cornelia Huck) [1660917] - [s390] vfio-ccw: Wire up the CRW irq and CRW region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce a new CRW region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor IRQ handlers (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce a new schib region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor the unregister of the async regions (Cornelia Huck) [1660917] - [s390] vfio-ccw: Register a chp_event callback for vfio-ccw (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce new helper functions to free/destroy regions (Cornelia Huck) [1660917] - [documentation] vfio-ccw: document possible errors (Cornelia Huck) [1660917] - [s390] vfio-ccw: Enable transparent CCW IPL from DASD (Cornelia Huck) [1660917] - [s390] cio: generate delayed uevent for vfio-ccw subchannels (Cornelia Huck) [1660917] - [s390] vfio-ccw: Use the correct style for SPDX License Identifier (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rework the io_fctl trace (Cornelia Huck) [1660917] - [s390] vfio-ccw: Add a trace for asynchronous requests (Cornelia Huck) [1660917] - [s390] vfio-ccw: Trace the FSM jumptable (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor how the traces are built (Cornelia Huck) [1660917] - [s390] vfio-ccw: fix error return code in vfio_ccw_sch_init() (Cornelia Huck) [1660917] - [s390] vfio-ccw: add some logging (Cornelia Huck) [1660917] - [s390] vfio-ccw: make vfio_ccw_async_region_ops static (Cornelia Huck) [1660917] - [documentation] documentation: fix vfio-ccw doc (Cornelia Huck) [1660917] - [documentation] vfio-ccw: Update documentation for csch/hsch (Cornelia Huck) [1660917] - [s390] vfio-ccw: Don't call cp_free if we are processing a channel program (Cornelia Huck) [1660917] - [s390] vfio-ccw: Set pa_nr to 0 if memory allocation fails for pa_iova_pfn (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix memory leak and don't call cp_free in cp_init (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix misleading comment when setting orb.cmd.c64 (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix the conversion of Format-0 CCWs to Format-1 (Cornelia Huck) [1660917] - [s390] cio: introduce driver_override on the css bus (Cornelia Huck) [1660917] - [s390] vfio-ccw: make convert_ccw0_to_ccw1 static (Cornelia Huck) [1660917] - [s390] vfio-ccw: Remove copy_ccw_from_iova() (Cornelia Huck) [1660917] - [s390] vfio-ccw: Factor out the ccw0-to-ccw1 transition (Cornelia Huck) [1660917] - [s390] vfio-ccw: Copy CCW data outside length calculation (Cornelia Huck) [1660917] - [s390] vfio-ccw: Skip second copy of guest cp to host (Cornelia Huck) [1660917] - [s390] vfio-ccw: Move guest_cp storage into common struct (Cornelia Huck) [1660917] - [s390] cio: Combine direct and indirect CCW paths (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rearrange IDAL allocation in direct CCW (Cornelia Huck) [1660917] - [s390] vfio-ccw: Remove pfn_array_table (Cornelia Huck) [1660917] - [s390] vfio-ccw: Adjust the first IDAW outside of the nested loops (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rearrange pfn_array and pfn_array_table arrays (Cornelia Huck) [1660917] - [s390] cio: Use generalized CCW handler in cp_init() (Cornelia Huck) [1660917] - [s390] cio: Generalize the TIC handler (Cornelia Huck) [1660917] - [s390] cio: Refactor the routine that handles TIC CCWs (Cornelia Huck) [1660917] - [s390] cio: Squash cp_free() and cp_unpin_free() (Cornelia Huck) [1660917] - [s390] vfio-ccw: Destroy kmem cache region on module exit (Cornelia Huck) [1660917] - [documentation] docs: s390: convert docs to ReST and rename to *.rst (Cornelia Huck) [1660917] - [s390] cio: Remove vfio-ccw checks of command codes (Cornelia Huck) [1660917] - [s390] cio: Allow zero-length CCWs in vfio-ccw (Cornelia Huck) [1660917] - [s390] cio: Don't pin vfio pages for empty transfers (Cornelia Huck) [1660917] - [s390] cio: Initialize the host addresses in pfn_array (Cornelia Huck) [1660917] - [s390] cio: Split pfn_array_alloc_pin into pieces (Cornelia Huck) [1660917] - [s390] cio: Set vfio-ccw FSM state before ioeventfd (Cornelia Huck) [1660917] - [s390] cio: Update SCSW if it points to the end of the chain (Cornelia Huck) [1660917] - [s390] vfio-ccw: Prevent quiesce function going into an infinite loop (Cornelia Huck) [1660917] - [s390] vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev (Cornelia Huck) [1660917] - [s390] vfio-ccw: Do not call flush_workqueue while holding the spinlock (Cornelia Huck) [1660917] - [s390] vfio-ccw: add handling for async channel instructions (Cornelia Huck) [1660917] - [s390] cio: export hsch to modules (Cornelia Huck) [1660917] - [s390] vfio-ccw: add capabilities chain (Cornelia Huck) [1660917] - [s390] vfio-ccw: protect the I/O region (Cornelia Huck) [1660917] - [s390] vfio-ccw: rework ssch state handling (Cornelia Huck) [1660917] - [s390] vfio-ccw: make it safe to access channel programs (Cornelia Huck) [1660917] - [s390] vfio: ccw: only free cp on final interrupt (Cornelia Huck) [1660917] - [s390] cio: Use cpa range elsewhere within vfio-ccw (Cornelia Huck) [1660917] - [s390] cio: Fix vfio-ccw handling of recursive TICs (Cornelia Huck) [1660917] - [s390] vfio-ccw: Don't assume there are more ccws after a TIC (Cornelia Huck) [1660917] - [s390] vfio: ccw: Merge BUSY and BOXED states (Cornelia Huck) [1660917] - [s390] cio: Fix cleanup when unsupported IDA format is used (Cornelia Huck) [1660917] - [s390] cio: Fix cleanup of pfn_array alloc failure (Cornelia Huck) [1660917] - [s390] vfio: ccw: Register mediated device once all structures are initialized (Cornelia Huck) [1660917] - [s390] cio: make vfio_ccw_io_region static (Cornelia Huck) [1660917] - [s390] cio: Fix how vfio-ccw checks pinned pages (Cornelia Huck) [1660917] - [s390] cio: Refactor alloc of ccw_io_region (Cornelia Huck) [1660917] - [s390] cio: Convert ccw_io_region to pointer (Cornelia Huck) [1660917] - [netdrv] ibmvnic: Harden device login requests (Steve Best) [1847183] - [mm] s390/cmm: fix information leak in cmm_timeout_handler() (Nico Pache) [1846532] {CVE-2020-10773} - [fs] kernfs: fix potential null pointer dereference (Carlos Maiolino) [1847872] - [netdrv] net: sfc: reject unsupported coalescing params (Jarod Wilson) [1844659] - [netdrv] iavf: increase reset complete wait time (Stefan Assmann) [1844598] - [netdrv] iavf: Fix reporting 2.5 Gb and 5Gb speeds (Stefan Assmann) [1844598] - [netdrv] iavf: use appropriate enum for comparison (Stefan Assmann) [1844598] - [netdrv] iavf: fix speed reporting over virtchnl (Stefan Assmann) [1844598] - [block] blk-mq: fix blk_mq_all_tag_iter (Ming Lei) [1824037] - [block] blk-mq: split out a __blk_mq_get_driver_tag helper (Ming Lei) [1824037] - [block] blk-mq: drain I/O when all CPUs in a hctx are offline (Ming Lei) [1824037] - [block] blk-mq: add blk_mq_all_tag_iter (Ming Lei) [1824037] - [block] blk-mq: open code __blk_mq_alloc_request in blk_mq_alloc_request_hctx (Ming Lei) [1824037] - [block] blk-mq: use BLK_MQ_NO_TAG in more places (Ming Lei) [1824037] - [block] blk-mq: rename BLK_MQ_TAG_FAIL to BLK_MQ_NO_TAG (Ming Lei) [1824037] - [block] blk-mq: move more request initialization to blk_mq_rq_ctx_init (Ming Lei) [1824037] - [block] blk-mq: simplify the blk_mq_get_request calling convention (Ming Lei) [1824037] - [block] blk-mq: remove a pointless queue enter pair in blk_mq_alloc_request_hctx (Ming Lei) [1824037] - [block] blk-mq: remove a pointless queue enter pair in blk_mq_alloc_request (Ming Lei) [1824037] - [block] blk-mq: move the call to blk_queue_enter_live out of blk_mq_get_request (Ming Lei) [1824037] - [nvme] nvme: force complete cancelled requests (Ming Lei) [1824037] - [block] blk-mq: blk-mq: provide forced completion method (Ming Lei) [1824037] - [block] block: Limit number of items taken from the I/O scheduler in one go (Ming Lei) [1824037] - [scsi] Revert "scsi: core: run queue if SCSI device queue isn't ready and queue is idle" (Ming Lei) [1824037] - [block] blk-mq: Rerun dispatching in the case of budget contention (Ming Lei) [1824037] - [block] blk-mq: Add blk_mq_delay_run_hw_queues() API call (Ming Lei) [1824037] - [block] blk-mq: In blk_mq_dispatch_rq_list() "no budget" is a reason to kick (Ming Lei) [1824037] - [block] blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget (Ming Lei) [1824037] - [block] blk-mq: don't commit_rqs() if none were queued (Ming Lei) [1824037] - [block] blk-mq: Remove some unused function arguments (Ming Lei) [1824037] - [block] blk-mq-tag: document tag iteration helper return value (Ming Lei) [1824037] - [block] blk-mq: Document the functions that iterate over requests (Ming Lei) [1824037] - [block] loop: Better discard support for block devices (Ming Lei) [1824037] - [block] loop: Report EOPNOTSUPP properly (Ming Lei) [1824037] - [block] block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices (Ming Lei) [1824037] - [block] block, zoned: fix integer overflow with BLKRESETZONE et al (Ming Lei) [1824037] - [block] block: Fix use-after-free issue accessing struct io_cq (Ming Lei) [1824037] - [netdrv] cxgb4: add EOTID tracking and software context dump (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: tune burst buffer size for TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: improve credits recovery in TC-MQPRIO Tx path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix delete filter entry fail in unload path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix large delays in PTP synchronization (Vishal Kulkarni) [1828665] - [netdrv] net/cxgb4: Check the return from t4_query_params properly (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: free MQPRIO resources in shutdown path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix MPS index overwrite when setting MAC address (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Add support to catch bits set in INT_CAUSE5 (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove set but not used variable 'tab' (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/ptp: pass the sign of offset delta in FW CMD (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix Txq restart check during backpressure (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix throughput drop during Tx backpressure (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: rework TC filter rule insertion across regions (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: update T5/T6 adapter register ranges (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix checks for max queues to allocate (Vishal Kulkarni) [1828665] - [netdrv] net/chelsio: Don't set N/A for not available FW (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Added tls stats prints (Vishal Kulkarni) [1828665] - [netdrv] l2t_seq_next should increase position index (Vishal Kulkarni) [1828665] - [netdrv] seq_tab_next() should increase position index (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: reject overlapped queues in TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix Tx multi channel port rate limit (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/cxgb4vf: fix flow control display for auto negotiation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix refcount init for TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/chtls: fix ULD connection failures due to wrong TID base (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix missed high priority region calculation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Fix kernel panic while accessing sge_info (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add support for high priority filters (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add stats for MQPRIO QoS offload Tx path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add UDP segmentation offload support (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/chcr: update SGL DMA unmap for USO (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add TC-MATCHALL classifier ingress offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: check rule prio conflicts before offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add TC-MATCHALL classifier egress offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove unneeded semicolon for switch block (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Fix an error code in cxgb4_mqprio_alloc_hw_resources() (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: make function 'cxgb4_mqprio_free_hw_resources' static (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove redundant assignment to hdr_len (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix 64-bit division on i386 (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Use match_string() helper to simplify the code (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add FLOWC based QoS offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add Tx and Rx path for ETHOFLD traffic (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add ETHOFLD hardware queue support (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: parse and configure TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: rework queue config and MSI-X allocation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: query firmware for QoS offload resources (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Add pci reset handler (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/l2t: Simplify 't4_l2e_free()' and '_t4_l2e_free()' (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix panic when attaching to ULD fail (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: request the TX CIDX updates to status page (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Signedness bug in init_one() (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: no need to check return value of debugfs_create functions (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: smt: Use normal int for refcount (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: smt: Add lock for atomic_dec_and_test (Vishal Kulkarni) [1828665] - [fs] xfs: clear PF_MEMALLOC before exiting xfsaild thread (Brian Foster) [1827912]- [drm] drm/amd/display: Defer cursor lock until after VUPDATE (Lyude Paul) [1814893] - [drm] drm/amd/display: Use cursor locking to prevent flip delays (Lyude Paul) [1814893] - [drm] drm/amdgpu/display: Fix Pollock Variant Detection (Lyude Paul) [1814893] - [drm] drm/amd/display: Fix RV2 Variant Detection (Lyude Paul) [1814893] - [drm] drm/amdgpu/display: fix pci revision id fetching (Lyude Paul) [1814893] - [drm] drm/nouveau/device: detect vGPUs (Lyude Paul) [1814893] - [drm] drm/nouveau/device: detect if changing endianness failed (Lyude Paul) [1814893] - [drm] drm/nouveau/device: rework mmio mapping code to get rid of second map (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gm200-: detect and potentially disable HDA support on some SORs (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gp100: split SOR implementation from gm200 (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: modify OR allocation policy to account for HDA requirements (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: split part of OR allocation logic into a function (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: provide hint to OR allocation about HDA requirements (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/gt215-: fix race with audio driver runpm (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gv100-: NV_PDISP_SF_AUDIO_CNTRL0 register moved (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gf119-: select HDA device entry based on bound head (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gf119-: add HAL for programming device entry in SF (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gt215-: pass head to nvkm_ior.hda.eld() (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gm200-: fix NV_PDISP_SOR_HDMI2_CTRL(n) selection (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Share DP SST mode_valid() handling with MST (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Move 8BPC limit for MST into nv50_mstc_get_modes() (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/gv100-: Add support for interlaced modes (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Probe SOR and PIOR caps for DP interlacing support (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Initialize core channel in nouveau_display_create() (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gv100-: expose capabilities class (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/nv50-: increase timeout on pio channel free() polling (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: wait for FIFO space on PIO channels (Lyude Paul) [1814893] - [drm] drm/nouveau/nvif: protect waits against GPU falling off the bus (Lyude Paul) [1814893] - [drm] drm/nouveau/nvif: access PTIMER through usermode class, if available (Lyude Paul) [1814893] - [drm] drm/nouveau/ttm: evict other IO mappings when running out of BAR1 space (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: clear SW state of disabled windows harder (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Add aux table invalidate for all engines (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Invalidate aux table entries forcibly (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Flush L3 (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Fix HDC pipeline flush (Lyude Paul) [1814893] - [drm] Revert "drm/i915/tgl: Include ro parts of l3 to invalidate" (Lyude Paul) [1814893] - [drm] drm/i915: Push MST link retraining to the hotplug work (Lyude Paul) [1814893] - [drm] drm/i915: Flatten intel_dp_check_mst_status() a bit (Lyude Paul) [1814893] - [drm] drm/i915/tc: Do not warn when aux power well of static TC ports timeout (Lyude Paul) [1814893] - [drm] drm/i915/tc: Catch TC users accessing FIA registers without enable aux (Lyude Paul) [1814893] - [drm] drm/i915/tc/tgl: Implement TC cold sequences (Lyude Paul) [1814893] - [drm] drm/i915/tc: Skip ref held check for TC legacy aux power wells (Lyude Paul) [1814893] - [drm] drm/i915/tc/icl: Implement TC cold sequences (Lyude Paul) [1814893] - [drm] drm/i915/display: Split hsw_power_well_enable() into two (Lyude Paul) [1814893] - [drm] drm/i915/display: Add intel_legacy_aux_to_power_domain() (Lyude Paul) [1814893] - [drm] drm/i915/display: Move out code to return the digital_port of the aux ch (Lyude Paul) [1814893] - [drm] drm/i915: Add missing deinitialization cases of load failure (Lyude Paul) [1814893] - [drm] drm/i915: split intel_modeset_init() to pre/post irq install (Lyude Paul) [1814893] - [drm] drm/i915: split i915_driver_modeset_probe() to pre/post irq install (Lyude Paul) [1814893] - [drm] drm/i915: split i915_driver_modeset_remove() to pre/post irq uninstall (Lyude Paul) [1814893] - [drm] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall (Lyude Paul) [1814893] - [drm] drm/i915: Extract skl SAGV checking (Lyude Paul) [1814893] - [drm] drm/i915: Track active_pipes in bw_state (Lyude Paul) [1814893] - [drm] drm/i915: Use bw state for per crtc SAGV evaluation (Lyude Paul) [1814893] - [drm] drm/i915: Introduce intel_calc_active_pipes() (Lyude Paul) [1814893] - [drm] drm/i915: Add pre/post plane updates for SAGV (Lyude Paul) [1814893] - [drm] drm/i915: Prepare to extract gen specific functions from intel_can_enable_sagv (Lyude Paul) [1814893] - [drm] drm/i915: Add intel_atomic_get_bw_*_state helpers (Lyude Paul) [1814893] - [drm] drm/i915: Introduce skl_plane_wm_level accessor (Lyude Paul) [1814893] - [drm] drm/i915: do AUD_FREQ_CNTRL state save on all gen9+ platforms (Lyude Paul) [1814893] - [drm] drm/i915: Extend hotplug detect retry on TypeC connectors to 5 seconds (Lyude Paul) [1814893] - [drm] drm/i915: Add a retry counter for hotplug detect retries (Lyude Paul) [1814893] - [drm] drm/i915: Introduce intel_connector_hpd_pin() (Lyude Paul) [1814893] - [drm] drm/i915: Prefer intel_connector over drm_connector in hotplug code (Lyude Paul) [1814893] - [drm] drm/i915: Use intel_attached_encoder() (Lyude Paul) [1814893] - [drm] drm/i915/ehl: Restrict w/a 1607087056 for EHL/JSL (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Initialize multicast register steering for workarounds (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Make Wa_14010229206 permanent (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1605460711 / Wa_1408767742 to ICL and EHL (Lyude Paul) [1814893] - [drm] drm/i915: Apply Wa_1406680159:icl, ehl as an engine workaround (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1406306137:icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1604278689:icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Don't treat unslice registers as masked (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Make Wa_1606700617 permanent (Lyude Paul) [1814893] - [drm] drm/i915/tgl: WaDisableGPGPUMidThreadPreemption (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Move and restrict Wa_1408615072 (Lyude Paul) [1814893] - [drm] drm/i915/gen11: Moving WAs to rcs_engine_wa_init() (Lyude Paul) [1814893] - [drm] drm/i915: add Wa_14010594013: icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa number to WaAllowPMDepthAndInvocationCountAccessFromUMD (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note about Wa_1409142259 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Fix the Wa number of a fix (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note about Wa_1607063988 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note to Wa_1607297627 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Extend Wa_1606931601 for all steppings (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_1409085225, Wa_14010229206 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Implement Wa_1806527549 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Implement Wa_1409804808 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_1808121037 to tgl (Lyude Paul) [1814893] - [drm] drm/i915: Use engine wa list for Wa_1607090982 (Lyude Paul) [1814893] - [drm] drm/i915: Implement Wa_1607090982 (Lyude Paul) [1814893] - [drm] drm/i915: Disable tesselation clock gating on tgl A0 (Lyude Paul) [1814893] - [drm] drm/i915: Move ringbuffer WAs to engine workaround list (Lyude Paul) [1814893] - [drm] drm/i915/gt: Skip rmw for masked registers (Lyude Paul) [1814893] - [drm] drm/i915/selftests: Also wait for the scratch buffer to be bound (Lyude Paul) [1814893] - [drm] drm/i915/dp: Return the right vswing tables (Lyude Paul) [1814893] - [drm] drm/i915/dp/tgl+: Update combo phy vswing tables (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add definitions for VRR registers and bits (Lyude Paul) [1814893] - [drm] drm/i915: use forced codec wake on all gen9+ platforms (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add new PCI IDs to TGL (Lyude Paul) [1814893] - [drm] drm/i915/perf: Invalidate OA TLB on when closing perf stream (Lyude Paul) [1814893] - [drm] Bump DRM backport version to 5.6.14 (Lyude Paul) [1814893] - [drm] drm/i915/tgl+: Fix interrupt handling for DP AUX transactions (Lyude Paul) [1814893] - [drm] drm/amd/amdgpu: add raven1 part to the gfxoff quirk list (Lyude Paul) [1814893] - [drm] drm/amd/display: add basic atomic check for cursor plane (Lyude Paul) [1814893] - [drm] Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() (Lyude Paul) [1814893] - [drm] drm/i915: Handle idling during i915_gem_evict_something busy loops (Lyude Paul) [1814893] - [drm] drm/i915: Mark concurrent submissions with a weak-dependency (Lyude Paul) [1814893] - [drm] drm/i915/gvt: Fix kernel oops for 3-level ppgtt guest (Lyude Paul) [1814893] - [drm] drm/amdgpu: force fbdev into vram (Lyude Paul) [1814893] - [drm] drm/i915/gem: Remove object_is_locked assertion from unpin_from_display_plane (Lyude Paul) [1814893] - [drm] drm/i915: Don't enable WaIncreaseLatencyIPCEnabled when IPC is disabled (Lyude Paul) [1814893] - [drm] drm/i915/gt: Make timeslicing an explicit engine property (Lyude Paul) [1814893] - [drm] drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper() (Lyude Paul) [1814893] - [drm] drm/amd/display: Update downspread percent to match spreadsheet for DCN2.1 (Lyude Paul) [1814893] - [drm] drm/amd/display: Defer cursor update around VUPDATE for all ASIC (Lyude Paul) [1814893] - [drm] drm/amd/display: check if REFCLK_CNTL register is present (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: avoid using pm_en before it is initialized revised (Lyude Paul) [1814893] - [drm] drm/amd/display: blank dp stream before re-train the link (Lyude Paul) [1814893] - [drm] drm/i915/display: Load DP_TP_CTL/STATUS offset before use it (Lyude Paul) [1814893] - [drm] drm/i915/tgl: TBT AUX should use TC power well ops (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_14010477008:tgl (Lyude Paul) [1814893] - [drm] drm/amd/display: work around fp code being emitted outside of DC_FP_START/END (Lyude Paul) [1814893] - [drm] drm/amdgpu: drop redundant cg/pg ungate on runpm enter (Lyude Paul) [1814893] - [drm] drm/amdgpu: move kfd suspend after ip_suspend_phase1 (Lyude Paul) [1814893] - [drm] drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event (Lyude Paul) [1814893] - [drm] drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay table v0 (e.g Hawaii) (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: fix resume failed as smu table initialize early exit (Lyude Paul) [1814893] - [drm] drm/bridge: anx6345: set correct BPC for display_info of connector (Lyude Paul) [1814893] - [drm] drm/i915: Use proper fault mask in interrupt postinstall too (Lyude Paul) [1814893] - [drm] drm/i915/selftests: Fix i915_address_space refcnt leak (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release use after free (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release leak in qxl_hw_surface_alloc() (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release leak in qxl_draw_dirty_fb() (Lyude Paul) [1814893] - [drm] drm/i915/gt: Check cacheline is valid before acquiring (Lyude Paul) [1814893] - [drm] drm/i915/gem: Hold obj->vma.lock over for_each_ggtt_vma() (Lyude Paul) [1814893] - [drm] drm/amd/display: Fix green screen issue after suspend (Lyude Paul) [1814893] - [drm] drm/edid: Fix off-by-one in DispID DTD pixel clock (Lyude Paul) [1814893] - [drm] drm/amdgpu: invalidate L2 before SDMA IBs (v2) (Lyude Paul) [1814893] - [dma-buf] dma-buf: Fix SET_NAME ioctl uapi (Lyude Paul) [1814893] - [drm] drm/scheduler: fix drm_sched_get_cleanup_job (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix wrong vram lost counter increment V2 (Lyude Paul) [1814893] - [drm] drm/dp_mst: Zero assigned PBN when releasing VCPI slots (Lyude Paul) [1814893] - [drm] drm/amd/display: Calculate scaling ratios on every medium/full update (Lyude Paul) [1814893] - [drm] drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax (Lyude Paul) [1814893] - [video] fbdev: potential information leak in do_fb_ioctl() (Lyude Paul) [1814893] - [drm] drm/nouveau/gr/gp107, gp108: implement workaround for HW hanging during init (Lyude Paul) [1814893] - [drm] drm/amdkfd: kfree the wrong pointer (Lyude Paul) [1814893] - [drm] drm/nouveau: workaround runpm fail by disabling PCI power management on certain intel bridges (Lyude Paul) [1814893] - [drm] drm/nouveau/svm: fix vma range check for migration (Lyude Paul) [1814893] - [drm] drm/nouveau/svm: check for SVM initialized before migrating (Lyude Paul) [1814893] - [drm] drm/amd/display: Don't try hdcp1.4 when content_type is set to type1 (Lyude Paul) [1814893] - [drm] drm/ttm: flush the fence on the bo after we individualize the reservation object (Lyude Paul) [1814893] - [drm] drm/i915/perf: Do not clear pollin for small user read buffers (Lyude Paul) [1814893] - [drm] drm/nouveau/sec2/gv100-: add missing MODULE_FIRMWARE() (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix the hw hang during perform system reboot and reset (Lyude Paul) [1814893] - [drm] drm/amdgpu/gfx9: add gfxoff quirk (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled (Lyude Paul) [1814893] - [drm] drm/i915/gt: Fill all the unused space in the GGTT (Lyude Paul) [1814893] - [drm] drm/i915/ggtt: do not set bits 1-11 in gen12 ptes (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix gfx hang during suspend with video playback (v2) (Lyude Paul) [1814893] - [drm] drm/dp_mst: Fix clearing payload state on topology disable (Lyude Paul) [1814893] - [drm] Revert "drm/dp_mst: Remove VCPI while disabling topology mgr" (Lyude Paul) [1814893] - [drm] drm/i915/gt: Treat idling as a RPS downclock event (Lyude Paul) [1814893] - [drm] drm/vboxvideo: Add missing remove_conflicting_pci_framebuffers call, v2 (Lyude Paul) [1814893] - [drm] drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode (Lyude Paul) [1814893] - [drm] drm/amd/display: Check for null fclk voltage when parsing clock table (Lyude Paul) [1814893] - [drm] drm/amdgpu: unify fw_write_wait for new gfx9 asics (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: implement the is_dpm_running() (Lyude Paul) [1814893] - [drm] drm/amdgpu/powerplay: using the FCLK DPM table to set the MCLK (Lyude Paul) [1814893] - [drm] drm: Remove PageReserved manipulation from drm_pci_alloc (Lyude Paul) [1814893] - [drm] drm/bridge: analogix-anx78xx: Fix drm_dp_link helper removal (Lyude Paul) [1814893] - [drm] drm/i915/gem: Flush all the reloc_gpu batch (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Disable preemption timeout (Lyude Paul) [1814893] - [drm] drm/i915/display: Fix mode private_flags comparison at atomic_check (Lyude Paul) [1814893] - [drm] drm/bridge: analogix-anx6345: Avoid duplicate -supply suffix (Lyude Paul) [1814893] - [drm] drm/i915: Allow for different modes of interruptible i915_active_wait (Lyude Paul) [1814893] - [gpu] DRM Backport 5.5 -> 5.6 (Lyude Paul) [1814893] - [video] video: fbdev: intelfb: use const pointer for fb_ops (Lyude Paul) [1814893] - [include] video: fbdev: make fbops member of struct fb_info a const pointer (Lyude Paul) [1814893] - [video] video: fbdev: uvesafb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: nvidia: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: mb862xx: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: atyfb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbmem: use const pointer for fb_ops (Lyude Paul) [1814893] - [video] video: fbdev: vesafb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: udlfb: don't restore fb_mmap after deferred IO cleanup (Lyude Paul) [1814893] - [video] video: smscufx: don't restore fb_mmap after deferred IO cleanup (Lyude Paul) [1814893] - [drm] drm/fb-helper: don't preserve fb_ops across deferred IO use (Lyude Paul) [1814893] - [drm] drm/fb-helper: Remove drm_fb_helper_fbdev_{setup, teardown}() (Lyude Paul) [1814893] - [video] video: fb_defio: preserve user fb_ops (Lyude Paul) [1814893] - [drm] mm, drm/ttm: Fix vm page protection handling (Lyude Paul) [1814893] - [dma-buf] udmabuf: Remove deleted map/unmap handlers (Lyude Paul) [1814893] - [include] dma-buf: Remove kernel map/unmap hooks (Lyude Paul) [1814893] - [drm] drm/udl: Remove udl implementation of GEM's free_object() (Lyude Paul) [1814893] - [drm] drm/udl: Unmap buffer object after damage update (Lyude Paul) [1814893] - [drm] drm/udl: Fix Kconfig indentation (Lyude Paul) [1814893] - [drm] drm/udl: Replace fbdev code with generic emulation (Lyude Paul) [1814893] - [drm] drm/udl: Remove struct udl_gem_object and functions (Lyude Paul) [1814893] - [drm] drm/udl: Switch to SHMEM (Lyude Paul) [1814893] - [drm] drm/udl: Allocate GEM object via struct drm_driver.gem_create_object (Lyude Paul) [1814893] - [drm] drm/udl: Remove flags field from struct udl_gem_object (Lyude Paul) [1814893] - [drm] drm/armada: Delete dma_buf->k(un)map implemenation (Lyude Paul) [1814893] - [tee] drm/tee_shm: Drop dma_buf_k(unmap) support (Lyude Paul) [1814893] - [samples] sample/vfio-mdev/mbocs: Remove dma_buf_k(un)map support (Lyude Paul) [1814893] - [media] media/videobuf2: Drop dma_buf->k(un)map support (Lyude Paul) [1814893] - [drm] drm/vmwgfx: Delete mmaping functions (Lyude Paul) [1814893] - [dma-buf] dma-buf: Drop dma_buf_k(un)map (Lyude Paul) [1814893] - [drm] drm/tegra: Remove dma_buf->k(un)map (Lyude Paul) [1814893] - [drm] drm/omapdrm: Drop dma_buf->k(un)map (Lyude Paul) [1814893] - [drm] drm/i915: Drop dma_buf->k(un)map (Lyude Paul) [1814893] - [staging] staging/android/ion: delete dma_buf->kmap/unmap implemenation (Lyude Paul) [1814893] - [drm] drm/i915: Remove dma_buf_kmap selftest (Lyude Paul) [1814893] - [drm] drm/tegra: Delete host1x_bo_ops->k(un)map (Lyude Paul) [1814893] - [gpu] drm/tegra: Map cmdbuf once for reloc processing (Lyude Paul) [1814893] - [pinctrl] pinctrl: Allow modules to use pinctrl_register_mappings (Lyude Paul) [1814893] - [include] lockdep: add might_lock_nested() (Lyude Paul) [1814893] - [gpu] DRM Backport 5.4 -> 5.5 (Lyude Paul) [1814893] - [security] device_cgroup: Export devcgroup_check_permission (Lyude Paul) [1814893] - [video] fbdev: drop res_id parameter from remove_conflicting_pci_framebuffers (Lyude Paul) [1814893] - [media] media: cec: check 'transmit_in_progress', not 'transmitting' (Lyude Paul) [1814893] - [media] media: cec: avoid decrementing transmit_queue_sz if it is 0 (Lyude Paul) [1814893] - [media] media: cec: CEC 2.0-only bcast messages were ignored (Lyude Paul) [1814893] - [media] cec: add cec_adapter to cec_notifier_cec_adap_unregister() (Lyude Paul) [1814893] - [media] media: cec-pin: add 'received' callback (Lyude Paul) [1814893] - [media] media: cec: expose the new connector info API (Lyude Paul) [1814893] - [media] media: cec/cec-adap.c: use new UI_CMD defines (Lyude Paul) [1814893] - [media] media: cec-notifier: clear cec_adap in cec_notifier_unregister (Lyude Paul) [1814893] - [media] media: cec-adap: return from cec_s_conn_info() if adap is invalid (Lyude Paul) [1814893] - [media] media: cec-notifier: add new notifier functions (Lyude Paul) [1814893] - [media] media: cec: add struct cec_connector_info support (Lyude Paul) [1814893] - [media] media: cec-notifier: rename variables, check kstrdup and n->conn_name (Lyude Paul) [1814893] - [media] media: cec-adap: fix regression in ping sanity check (Lyude Paul) [1814893] - [media] media: cec: allow any initiator for Ping and Image/Text View On (Lyude Paul) [1814893] - [media] media: cec: support CEC_MSG_FL_RAW (Lyude Paul) [1814893] - [media] media: cec: add CEC_MSG_FL_RAW flag and msg_is_raw helper function (Lyude Paul) [1814893] - [media] media: cec: move check from cec_transmit to cec_transmit_msg_fh (Lyude Paul) [1814893] - [media] media: cec: cec_transmit_msg_fh: do sanity checks first (Lyude Paul) [1814893] - [media] media: cec: mark devnode as registered before actually registering it (Lyude Paul) [1814893] - [media] media: cec-notifier: add cec_notifier_parse_hdmi_phandle helper (Lyude Paul) [1814893] - [media] media: Kconfig files: use the right help coding style (Lyude Paul) [1814893] - [media] media: cec: fill in cec chardev kobject to ease debugging (Lyude Paul) [1814893] - [media] media: cec: fix epoll() by calling poll_wait first (Lyude Paul) [1814893] - [media] media: cec: keep track of outstanding transmits (Lyude Paul) [1814893] - [media] media: cec: add debug_phys_addr module option (Lyude Paul) [1814893] - [media] media: cec: report Vendor ID after initialization (Lyude Paul) [1814893] - [media] media: cec-pin: fix broken tx_ignore_nack_until_eom error injection (Lyude Paul) [1814893] - [media] media: cec: increase debug level for 'queue full' (Lyude Paul) [1814893] - [media] media: cec: check for non-OK/NACK conditions while claiming a LA (Lyude Paul) [1814893] - [media] media: cec: forgot to cancel delayed work (Lyude Paul) [1814893] - [media] media: cec: name for RC passthrough device does not need 'RC for' (Lyude Paul) [1814893] - [media] media: cec-gpio: select correct Signal Free Time (Lyude Paul) [1814893] - [media] media: cec: fix the Signal Free Time calculation (Lyude Paul) [1814893] - [media] media: cec: add new tx/rx status bits to detect aborts/timeouts (Lyude Paul) [1814893] - [media] media: cec: remove cec-edid.c (Lyude Paul) [1814893] - [media] media: cec/v4l2: move V4L2 specific CEC functions to V4L2 (Lyude Paul) [1814893] - [media] media: cec: integrate cec_validate_phys_addr() in cec-api.c (Lyude Paul) [1814893] - [media] media: cec: make cec_get_edid_spa_location() an inline function (Lyude Paul) [1814893] - [media] media: use strscpy() instead of strlcpy() (Lyude Paul) [1814893] - [media] media: cec: move compat_ioctl handling to cec-api.c (Lyude Paul) [1814893] - [media] media: cec: add support for 5V signal testing (Lyude Paul) [1814893] - [uapi] media: uapi/linux/cec.h: add 5V events (Lyude Paul) [1814893] - [scsi] compat_ioctl: move more drivers to compat_ptr_ioctl (Lyude Paul) [1814893] - [vhost] compat_ioctl: move drivers to compat_ptr_ioctl (Lyude Paul) [1814893] - [rtc] compat_ioctl: move rtc handling into drivers/rtc/dev.c (Lyude Paul) [1814893] - [fs] ceph: fix compat_ioctl for ceph_dir_operations (Lyude Paul) [1814893] - [fs] compat_sys_ioctl(): make parallel to do_vfs_ioctl() (Lyude Paul) [1814893] - [fs] compat: move FS_IOC_RESVSP_32 handling to fs/ioctl.c (Lyude Paul) [1814893] - [fs] do_vfs_ioctl(): use saner types (Lyude Paul) [1814893] - [fs] compat: itanic doesn't have one (Lyude Paul) [1814893] - [fs] FIGETBSZ: fix compat (Lyude Paul) [1814893] - [fs] fix compat handling of FICLONERANGE, FIDEDUPERANGE and FS_IOC_FIEMAP (Lyude Paul) [1814893] - [gpu] DRM Backport 5.3 -> 5.4 (Lyude Paul) [1814893] - [include] Add wait_var_event_interruptible() (Lyude Paul) [1814893] - [kernel] kthread: Add __kthread_should_park() (Lyude Paul) [1814893] - [kernel] PM / sleep: Refactor filesystems sync to reduce duplication (Lyude Paul) [1814893] - [fpga] drivers: Introduce device lookup variants by of_node (Lyude Paul) [1814893] - [s390] drivers: Introduce device lookup variants by name (Lyude Paul) [1814893] - [base] drivers: Add generic helper to match by of_node (Lyude Paul) [1814893] - [drm] kbuild: change *FLAGS_.o to take the path relative to $(obj) (Lyude Paul) [1814893] - [video] fbdev: lock_fb_info cannot fail (Lyude Paul) [1814893] - [video] fbdev/atyfb: lock_fb_info can't fail (Lyude Paul) [1814893] - [video] fbdev: sysfs files can't disappear before the device is gone (Lyude Paul) [1814893] - [video] fbcon: call fbcon_fb_(un)registered directly (Lyude Paul) [1814893] - [video] fbcon: Remove fbcon_has_exited (Lyude Paul) [1814893] - [video] fbcon: s/struct display/struct fbcon_display/ (Lyude Paul) [1814893] - [video] fbdev: locking check for fb_set_suspend (Lyude Paul) [1814893] - [tty] vt/fbcon: deinitialize resources in visual_init() after failed memory allocation (Lyude Paul) [1814893] - [video] fbcon: Don't reset logo_shown when logo is currently shown (Lyude Paul) [1814893] - [video] fbdev: fix WARNING in __alloc_pages_nodemask bug (Lyude Paul) [1814893] - [video] fbdev: fix divide error in fb_var_to_videomode (Lyude Paul) [1814893] - [video] fbdev: list all pci memory bars as conflicting apertures (Lyude Paul) [1814893]- [block] Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT" (Jeff Moyer) [1784478] - [fs] io_uring: reset -EBUSY error when io sq thread is waken up (Jeff Moyer) [1784478] - [fs] io_uring: don't add non-IO requests to iopoll pending list (Jeff Moyer) [1784478] - [fs] io_uring: don't use kiocb.private to store buf_index (Jeff Moyer) [1784478] - [fs] io_uring: cancel work if task_work_add() fails (Jeff Moyer) [1784478] - [fs] io_uring: remove dead check in io_splice() (Jeff Moyer) [1784478] - [fs] io_uring: fix FORCE_ASYNC req preparation (Jeff Moyer) [1784478] - [fs] io_uring: don't prepare DRAIN reqs twice (Jeff Moyer) [1784478] - [fs] io_uring: initialize ctx->sqo_wait earlier (Jeff Moyer) [1784478] - [fs] io_uring: polled fixed file must go through free iteration (Jeff Moyer) [1784478] - [fs] io_uring: fix zero len do_splice() (Jeff Moyer) [1784478] - [fs] io_uring: don't use 'fd' for openat/openat2/statx (Jeff Moyer) [1784478] - [fs] splice: move f_mode checks to do_{splice, tee}() (Jeff Moyer) [1784478] - [fs] io_uring: handle -EFAULT properly in io_uring_setup() (Jeff Moyer) [1784478] - [fs] io_uring: fix mismatched finish_wait() calls in io_uring_cancel_files() (Jeff Moyer) [1784478] - [fs] io_uring: punt splice async because of inode mutex (Jeff Moyer) [1784478] - [fs] io_uring: check non-sync defer_list carefully (Jeff Moyer) [1784478] - [fs] io_uring: fix extra put in sync_file_range() (Jeff Moyer) [1784478] - [fs] io_uring: use cond_resched() in io_ring_ctx_wait_and_kill() (Jeff Moyer) [1784478] - [fs] io_uring: use proper references for fallback_req locking (Jeff Moyer) [1784478] - [fs] io_uring: only force async punt if poll based retry can't handle it (Jeff Moyer) [1784478] - [fs] io_uring: enable poll retry for any file with ->read_iter / ->write_iter (Jeff Moyer) [1784478] - [fs] io_uring: statx must grab the file table for valid fd (Jeff Moyer) [1784478] - [fs] io_uring: only restore req->work for req that needs do completion (Jeff Moyer) [1784478] - [fs] io_uring: don't count rqs failed after current one (Jeff Moyer) [1784478] - [fs] io_uring: kill already cached timeout.seq_offset (Jeff Moyer) [1784478] - [fs] io_uring: fix cached_sq_head in io_timeout() (Jeff Moyer) [1784478] - [fs] io_uring: only post events in io_poll_remove_all() if we completed some (Jeff Moyer) [1784478] - [fs] io_uring: io_async_task_func() should check and honor cancelation (Jeff Moyer) [1784478] - [fs] io_uring: check for need to re-wait in polled async handling (Jeff Moyer) [1784478] - [fs] io_uring: correct O_NONBLOCK check for splice punt (Jeff Moyer) [1784478] - [fs] io_uring: restore req->work when canceling poll request (Jeff Moyer) [1784478] - [fs] io_uring: move all request init code in one place (Jeff Moyer) [1784478] - [fs] io_uring: keep all sqe->flags in req->flags (Jeff Moyer) [1784478] - [fs] io_uring: early submission req fail code (Jeff Moyer) [1784478] - [fs] io_uring: track mm through current->mm (Jeff Moyer) [1784478] - [fs] io_uring: remove obsolete @mm_fault (Jeff Moyer) [1784478] - [fs] io_uring: punt final io_ring_ctx wait-and-free to workqueue (Jeff Moyer) [1784478] - [fs] io_uring: fix fs cleanup on cqe overflow (Jeff Moyer) [1784478] - [fs] io_uring: don't read user-shared sqe flags twice (Jeff Moyer) [1784478] - [fs] io_uring: remove req init from io_get_req() (Jeff Moyer) [1784478] - [fs] io_uring: alloc req only after getting sqe (Jeff Moyer) [1784478] - [fs] io_uring: simplify io_get_sqring (Jeff Moyer) [1784478] - [fs] io_uring: do not always copy iovec in io_req_map_rw() (Jeff Moyer) [1784478] - [fs] io_uring: ensure openat sets O_LARGEFILE if needed (Jeff Moyer) [1784478] - [fs] io_uring: initialize fixed_file_data lock (Jeff Moyer) [1784478] - [fs] io_uring: remove redundant variable pointer nxt and io_wq_assign_next call (Jeff Moyer) [1784478] - [fs] io_uring: fix ctx refcounting in io_submit_sqes() (Jeff Moyer) [1784478] - [fs] io_uring: process requests completed with -EAGAIN on poll list (Jeff Moyer) [1784478] - [fs] io_uring: remove bogus RLIMIT_NOFILE check in file registration (Jeff Moyer) [1784478] - [fs] io_uring: use io-wq manager as backup task if task is exiting (Jeff Moyer) [1784478] - [fs] io_uring: grab task reference for poll requests (Jeff Moyer) [1784478] - [fs] io_uring: retry poll if we got woken with non-matching mask (Jeff Moyer) [1784478] - [fs] io_uring: add missing finish_wait() in io_sq_thread() (Jeff Moyer) [1784478] - [fs] io_uring: refactor file register/unregister/update handling (Jeff Moyer) [1784478] - [fs] io_uring: cleanup io_alloc_async_ctx() (Jeff Moyer) [1784478] - [fs] io_uring: fix missing 'return' in comment (Jeff Moyer) [1784478] - [fs] io-wq: handle hashed writes in chains (Jeff Moyer) [1784478] - [fs] io-uring: drop 'free_pfile' in struct io_file_put (Jeff Moyer) [1784478] - [fs] io-uring: drop completion when removing file (Jeff Moyer) [1784478] - [fs] io_uring: Fix ->data corruption on re-enqueue (Jeff Moyer) [1784478] - [fs] io-wq: close cancel gap for hashed linked work (Jeff Moyer) [1784478] - [uapi] io_uring: make spdxcheck.py happy (Jeff Moyer) [1784478] - [fs] io_uring: honor original task RLIMIT_FSIZE (Jeff Moyer) [1784478] - [fs] io_uring: make sure accept honor rlimit nofile (Jeff Moyer) [1784478] - [fs] io_uring: make sure openat/openat2 honor rlimit nofile (Jeff Moyer) [1784478] - [fs] io-wq: hash dependent work (Jeff Moyer) [1784478] - [fs] io-wq: split hashing and enqueueing (Jeff Moyer) [1784478] - [fs] io-wq: don't resched if there is no work (Jeff Moyer) [1784478] - [fs] io_uring: NULL-deref for IOSQE_{ASYNC,DRAIN} (Jeff Moyer) [1784478] - [fs] io-wq: remove duplicated cancel code (Jeff Moyer) [1784478] - [fs] io_uring: fix truncated async read/readv and write/writev retry (Jeff Moyer) [1784478] - [uapi] io_uring: dual license io_uring.h uapi header (Jeff Moyer) [1784478] - [fs] io_uring: io_uring_enter(2) don't poll while SETUP_IOPOLL|SETUP_SQPOLL enabled (Jeff Moyer) [1784478] - [fs] io_uring: Fix unused function warnings (Jeff Moyer) [1784478] - [fs] io_uring: add end-of-bits marker and build time verify it (Jeff Moyer) [1784478] - [fs] io_uring: provide means of removing buffers (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_RECVMSG (Jeff Moyer) [1784478] - [net] net: abstract out normal and compat msghdr import (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_READV (Jeff Moyer) [1784478] - [fs] io_uring: support buffer selection for OP_READ and OP_RECV (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_PROVIDE_BUFFERS (Jeff Moyer) [1784478] - [fs] io_uring: ensure RCU callback ordering with rcu_barrier() (Jeff Moyer) [1784478] - [fs] io_uring: fix lockup with timeouts (Jeff Moyer) [1784478] - [fs] io_uring: free fixed_file_data after RCU grace period (Jeff Moyer) [1784478] - [fs] io_uring: buffer registration infrastructure (Jeff Moyer) [1784478] - [fs] io_uring/io-wq: forward submission ref to async (Jeff Moyer) [1784478] - [fs] io-wq: optimise out *next_work() double lock (Jeff Moyer) [1784478] - [fs] io-wq: optimise locking in io_worker_handle_work() (Jeff Moyer) [1784478] - [fs] io-wq: shuffle io_worker_handle_work() code (Jeff Moyer) [1784478] - [fs] io_uring: get next work with submission ref drop (Jeff Moyer) [1784478] - [fs] io_uring: remove @nxt from handlers (Jeff Moyer) [1784478] - [fs] io_uring: make submission ref putting consistent (Jeff Moyer) [1784478] - [fs] io_uring: clean up io_close (Jeff Moyer) [1784478] - [fs] io_uring: Ensure mask is initialized in io_arm_poll_handler (Jeff Moyer) [1784478] - [fs] io_uring: remove io_prep_next_work() (Jeff Moyer) [1784478] - [fs] io_uring: remove extra nxt check after punt (Jeff Moyer) [1784478] - [fs] io_uring: use poll driven retry for files that support it (Jeff Moyer) [1784478] - [fs] io_uring: mark requests that we can do poll async in io_op_defs (Jeff Moyer) [1784478] - [fs] io_uring: add per-task callback handler (Jeff Moyer) [1784478] - [fs] io_uring: store io_kiocb in wait->private (Jeff Moyer) [1784478] - [fs] io-wq: use BIT for ulong hash (Jeff Moyer) [1784478] - [fs] io_uring: remove IO_WQ_WORK_CB (Jeff Moyer) [1784478] - [fs] io-wq: remove unused IO_WQ_WORK_HAS_MM (Jeff Moyer) [1784478] - [fs] io_uring: extract kmsg copy helper (Jeff Moyer) [1784478] - [fs] io_uring: clean io_poll_complete (Jeff Moyer) [1784478] - [fs] io_uring: add splice(2) support (Jeff Moyer) [1784478] - [fs] io_uring: add interface for getting files (Jeff Moyer) [1784478] - [fs] splice: make do_splice public (Jeff Moyer) [1784478] - [fs] io_uring: remove req->in_async (Jeff Moyer) [1784478] - [fs] io_uring: don't do full *prep_worker() from io-wq (Jeff Moyer) [1784478] - [fs] io_uring: don't call work.func from sync ctx (Jeff Moyer) [1784478] - [fs] io_uring: io_accept() should hold on to submit reference on retry (Jeff Moyer) [1784478] - [fs] io_uring: consider any io_read/write -EAGAIN as final (Jeff Moyer) [1784478] - [fs] io-wq: remove io_wq_flush and IO_WQ_WORK_INTERNAL (Jeff Moyer) [1784478] - [fs] io-wq: fix IO_WQ_WORK_NO_CANCEL cancellation (Jeff Moyer) [1784478] - [fs] io_uring: fix 32-bit compatability with sendmsg/recvmsg (Jeff Moyer) [1784478] - [fs] io_uring: define and set show_fdinfo only if procfs is enabled (Jeff Moyer) [1784478] - [fs] io_uring: drop file set ref put/get on switch (Jeff Moyer) [1784478] - [fs] io_uring: import_single_range() returns 0/-ERROR (Jeff Moyer) [1784478] - [fs] io_uring: pick up link work on submit reference drop (Jeff Moyer) [1784478] - [fs] io-wq: ensure work->task_pid is cleared on init (Jeff Moyer) [1784478] - [fs] io-wq: remove spin-for-work optimization (Jeff Moyer) [1784478] - [fs] io_uring: fix poll_list race for SETUP_IOPOLL|SETUP_SQPOLL (Jeff Moyer) [1784478] - [fs] io_uring: fix personality idr leak (Jeff Moyer) [1784478] - [fs] io_uring: handle multiple personalities in link chains (Jeff Moyer) [1784478] - [fs] io_uring: fix __io_iopoll_check deadlock in io_sq_thread (Jeff Moyer) [1784478] - [fs] io_uring: prevent sq_thread from spinning when it should stop (Jeff Moyer) [1784478] - [fs] io_uring: fix use-after-free by io_cleanup_req() (Jeff Moyer) [1784478] - [fs] io_uring: remove unnecessary NULL checks (Jeff Moyer) [1784478] - [fs] io_uring: add missing io_req_cancelled() (Jeff Moyer) [1784478] - [fs] io_uring: prune request from overflow list on flush (Jeff Moyer) [1784478] - [fs] io-wq: don't call kXalloc_node() with non-online node (Jeff Moyer) [1784478] - [fs] io_uring: retain sockaddr_storage across send/recvmsg async punt (Jeff Moyer) [1784478] - [fs] io_uring: cancel pending async work if task exits (Jeff Moyer) [1784478] - [fs] io-wq: add io_wq_cancel_pid() to cancel based on a specific pid (Jeff Moyer) [1784478] - [fs] io-wq: make io_wqe_cancel_work() take a match handler (Jeff Moyer) [1784478] - [fs] io_uring: fix openat/statx's filename leak (Jeff Moyer) [1784478] - [fs] io_uring: fix double prep iovec leak (Jeff Moyer) [1784478] - [fs] io_uring: fix async close() with f_op->flush() (Jeff Moyer) [1784478] - [fs] io_uring: allow AT_FDCWD for non-file openat/openat2/statx (Jeff Moyer) [1784478] - [fs] io_uring: grab ->fs as part of async preparation (Jeff Moyer) [1784478] - [fs] io-wq: add support for inheriting ->fs (Jeff Moyer) [1784478] - [fs] io_uring: retry raw bdev writes if we hit -EOPNOTSUPP (Jeff Moyer) [1784478] - [fs] io_uring: add cleanup for openat()/statx() (Jeff Moyer) [1784478] - [fs] io_uring: fix iovec leaks (Jeff Moyer) [1784478] - [fs] io_uring: remove unused struct io_async_open (Jeff Moyer) [1784478] - [fs] io_uring: flush overflowed CQ events in the io_uring_poll() (Jeff Moyer) [1784478] - [fs] io_uring: statx/openat/openat2 don't support fixed files (Jeff Moyer) [1784478] - [fs] io_uring: fix deferred req iovec leak (Jeff Moyer) [1784478] - [fs] io_uring: fix 1-bit bitfields to be unsigned (Jeff Moyer) [1784478] - [fs] io_uring: get rid of delayed mm check (Jeff Moyer) [1784478] - [fs] io_uring: cleanup fixed file data table references (Jeff Moyer) [1784478] - [fs] io_uring: spin for sq thread to idle on shutdown (Jeff Moyer) [1784478] - [fs] io_uring: put the flag changing code in the same spot (Jeff Moyer) [1784478] - [fs] io_uring: iterate req cache backwards (Jeff Moyer) [1784478] - [fs] io_uring: punt even fadvise() WILLNEED to async context (Jeff Moyer) [1784478] - [fs] io_uring: fix sporadic double CQE entry for close (Jeff Moyer) [1784478] - [fs] io_uring: remove extra ->file check (Jeff Moyer) [1784478] - [fs] io_uring: don't map read/write iovec potentially twice (Jeff Moyer) [1784478] - [fs] io_uring: use the proper helpers for io_send/recv (Jeff Moyer) [1784478] - [fs] io_uring: prevent potential eventfd recursion on poll (Jeff Moyer) [1784478] - [fs] eventfd: track eventfd_signal() recursion depth (Jeff Moyer) [1784478] - [fs] io_uring: add BUILD_BUG_ON() to assert the layout of struct io_uring_sqe (Jeff Moyer) [1784478] - [fs] io_uring: add ->show_fdinfo() for the io_uring file descriptor (Jeff Moyer) [1784478] - [fs] io_uring: add support for epoll_ctl(2) (Jeff Moyer) [1784478] - [fs] eventpoll: support non-blocking do_epoll_ctl() calls (Jeff Moyer) [1784478] - [fs] eventpoll: abstract out epoll_ctl() handler (Jeff Moyer) [1784478] - [fs] io_uring: fix linked command file table usage (Jeff Moyer) [1784478] - [fs] io_uring: support using a registered personality for commands (Jeff Moyer) [1784478] - [fs] io_uring: allow registering credentials (Jeff Moyer) [1784478] - [fs] io_uring: add io-wq workqueue sharing (Jeff Moyer) [1784478] - [fs] io-wq: allow grabbing existing io-wq (Jeff Moyer) [1784478] - [fs] io_uring/io-wq: don't use static creds/mm assignments (Jeff Moyer) [1784478] - [fs] io-wq: make the io_wq ref counted (Jeff Moyer) [1784478] - [fs] io_uring: fix refcounting with batched allocations at OOM (Jeff Moyer) [1784478] - [fs] io_uring: add comment for drain_next (Jeff Moyer) [1784478] - [fs] io_uring: don't attempt to copy iovec for READ/WRITE (Jeff Moyer) [1784478] - [fs] io_uring: don't cancel all work on process exit (Jeff Moyer) [1784478] - [fs] Revert "io_uring: only allow submit from owning task" (Jeff Moyer) [1784478] - [fs] io_uring: honor IOSQE_ASYNC for linked reqs (Jeff Moyer) [1784478] - [fs] io_uring: prep req when do IOSQE_ASYNC (Jeff Moyer) [1784478] - [fs] io_uring: use labeled array init in io_op_defs (Jeff Moyer) [1784478] - [fs] io_uring: optimise sqe-to-req flags translation (Jeff Moyer) [1784478] - [fs] io_uring: remove REQ_F_IO_DRAINED (Jeff Moyer) [1784478] - [fs] io_uring: file switch work needs to get flushed on exit (Jeff Moyer) [1784478] - [fs] io_uring: hide uring_fd in ctx (Jeff Moyer) [1784478] - [fs] io_uring: remove extra check in __io_commit_cqring (Jeff Moyer) [1784478] - [fs] io_uring: optimise use of ctx->drain_next (Jeff Moyer) [1784478] - [fs] RHEL-only: Add IORING_OP_OPENAT2 opcode (Jeff Moyer) [1784478] - [fs] io_uring: add support for probing opcodes (Jeff Moyer) [1784478] - [fs] io_uring: account fixed file references correctly in batch (Jeff Moyer) [1784478] - [fs] io_uring: add opcode to issue trace event (Jeff Moyer) [1784478] - [fs] io_uring: enable option to only trigger eventfd for async completions (Jeff Moyer) [1784478] - [fs] io_uring: change io_ring_ctx bool fields into bit fields (Jeff Moyer) [1784478] - [fs] io_uring: file set registration should use interruptible waits (Jeff Moyer) [1784478] - [fs] io_uring: Remove unnecessary null check (Jeff Moyer) [1784478] - [fs] io_uring: add support for send(2) and recv(2) (Jeff Moyer) [1784478] - [fs] io_uring: remove extra io_wq_current_is_worker() (Jeff Moyer) [1784478] - [fs] io_uring: optimise commit_sqring() for common case (Jeff Moyer) [1784478] - [fs] io_uring: optimise head checks in io_get_sqring() (Jeff Moyer) [1784478] - [fs] io_uring: clamp to_submit in io_submit_sqes() (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_SETUP_CLAMP (Jeff Moyer) [1784478] - [fs] io_uring: extend batch freeing to cover more cases (Jeff Moyer) [1784478] - [fs] io_uring: wrap multi-req freeing in struct req_batch (Jeff Moyer) [1784478] - [fs] io_uring: batch getting pcpu references (Jeff Moyer) [1784478] - [include] pcpu_ref: add percpu_ref_tryget_many() (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_MADVISE (Jeff Moyer) [1784478] - [mm] mm: make do_madvise() available internally (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_FADVISE (Jeff Moyer) [1784478] - [fs] io_uring: allow use of offset == -1 to mean file position (Jeff Moyer) [1784478] - [fs] io_uring: add non-vectored read/write commands (Jeff Moyer) [1784478] - [fs] io_uring: improve poll completion performance (Jeff Moyer) [1784478] - [fs] io_uring: split overflow state into SQ and CQ side (Jeff Moyer) [1784478] - [fs] io_uring: add lookup table for various opcode needs (Jeff Moyer) [1784478] - [fs] io_uring: remove two unnecessary function declarations (Jeff Moyer) [1784478] - [fs] io_uring: move *queue_link_head() from common path (Jeff Moyer) [1784478] - [fs] io_uring: rename prev to head (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_ASYNC (Jeff Moyer) [1784478] - [fs] io-wq: support concurrent non-blocking work (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_STATX (Jeff Moyer) [1784478] - [fs] fs: make two stat prep helpers available (Jeff Moyer) [1784478] - [fs] io_uring: avoid ring quiesce for fixed file set unregister and update (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_CLOSE (Jeff Moyer) [1784478] - [fs] io-wq: add support for uncancellable work (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_OPENAT (Jeff Moyer) [1784478] - [fs] fs: make build_open_flags() available internally (Jeff Moyer) [1784478] - [fs] io_uring: add support for fallocate() (Jeff Moyer) [1784478] - [fs] io_uring: fix compat for IORING_REGISTER_FILES_UPDATE (Jeff Moyer) [1784478] - [fs] io_uring: only allow submit from owning task (Jeff Moyer) [1784478] - [fs] io_uring: ensure workqueue offload grabs ring mutex for poll list (Jeff Moyer) [1784478] - [fs] io_uring: clear req->result always before issuing a read/write request (Jeff Moyer) [1784478] - [fs] io_uring: be consistent in assigning next work from handler (Jeff Moyer) [1784478] - [fs] io-wq: cancel work if we fail getting a mm reference (Jeff Moyer) [1784478] - [fs] io_uring: don't setup async context for read/write fixed (Jeff Moyer) [1784478] - [fs] io_uring: remove punt of short reads to async context (Jeff Moyer) [1784478] - [fs] io-wq: add cond_resched() to worker thread (Jeff Moyer) [1784478] - [fs] io-wq: remove unused busy list from io_sqe (Jeff Moyer) [1784478] - [fs] io_uring: pass in 'sqe' to the prep handlers (Jeff Moyer) [1784478] - [fs] io_uring: standardize the prep methods (Jeff Moyer) [1784478] - [fs] io_uring: read 'count' for IORING_OP_TIMEOUT in prep handler (Jeff Moyer) [1784478] - [fs] io_uring: move all prep state for IORING_OP_{SEND, RECV}_MGS to prep handler (Jeff Moyer) [1784478] - [fs] io_uring: move all prep state for IORING_OP_CONNECT to prep handler (Jeff Moyer) [1784478] - [fs] io_uring: add and use struct io_rw for read/writes (Jeff Moyer) [1784478] - [fs] io_uring: use u64_to_user_ptr() consistently (Jeff Moyer) [1784478] - [fs] io_uring: io_wq_submit_work() should not touch req->rw (Jeff Moyer) [1784478] - [fs] io_uring: don't wait when under-submitting (Jeff Moyer) [1784478] - [fs] io_uring: warn about unhandled opcode (Jeff Moyer) [1784478] - [fs] io_uring: read opcode and user_data from SQE exactly once (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_OP_TIMEOUT_REMOVE deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_OP_CANCEL_ASYNC deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_POLL_ADD and IORING_POLL_REMOVE deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make HARDLINK imply LINK (Jeff Moyer) [1784478] - [fs] io_uring: any deferred command must have stable sqe data (Jeff Moyer) [1784478] - [fs] io_uring: remove 'sqe' parameter to the OP helpers that take it (Jeff Moyer) [1784478] - [fs] io_uring: fix pre-prepped issue with force_nonblock == true (Jeff Moyer) [1784478] - [fs] io-wq: re-add io_wq_current_is_worker() (Jeff Moyer) [1784478] - [fs] io_uring: fix sporadic -EFAULT from IORING_OP_RECVMSG (Jeff Moyer) [1784478] - [fs] io_uring: fix stale comment and a few typos (Jeff Moyer) [1784478] - [fs] io_uring: ensure we return -EINVAL on unknown opcode (Jeff Moyer) [1784478] - [fs] io_uring: add sockets to list of files that support non-blocking issue (Jeff Moyer) [1784478] - [net] net: make socket read/write_iter() honor IOCB_NOWAIT (Jeff Moyer) [1784478] - [fs] io_uring: only hash regular files for async work execution (Jeff Moyer) [1784478] - [fs] io_uring: run next sqe inline if possible (Jeff Moyer) [1784478] - [fs] io_uring: don't dynamically allocate poll data (Jeff Moyer) [1784478] - [fs] io_uring: deferred send/recvmsg should assign iov (Jeff Moyer) [1784478] - [fs] io_uring: sqthread should grab ctx->uring_lock for submissions (Jeff Moyer) [1784478] - [fs] io-wq: briefly spin for new work after finishing work (Jeff Moyer) [1784478] - [fs] io-wq: remove worker->wait waitqueue (Jeff Moyer) [1784478] - [fs] io_uring: allow unbreakable links (Jeff Moyer) [1784478] - [fs] io_uring: fix a typo in a comment (Jeff Moyer) [1784478] - [fs] io_uring: hook all linked requests via link_list (Jeff Moyer) [1784478] - [fs] io_uring: fix error handling in io_queue_link_head (Jeff Moyer) [1784478] - [fs] io_uring: use hash table for poll command lookups (Jeff Moyer) [1784478] - [fs] io-wq: clear node->next on list deletion (Jeff Moyer) [1784478] - [fs] io_uring: ensure deferred timeouts copy necessary data (Jeff Moyer) [1784478] - [fs] io_uring: allow IO_SQE_* flags on IORING_OP_TIMEOUT (Jeff Moyer) [1784478] - [fs] io_uring: handle connect -EINPROGRESS like -EAGAIN (Jeff Moyer) [1784478] - [fs] io_uring: remove io_wq_current_is_worker (Jeff Moyer) [1784478] - [fs] io_uring: remove parameter ctx of io_submit_state_start (Jeff Moyer) [1784478] - [fs] io_uring: mark us with IORING_FEAT_SUBMIT_STABLE (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted connect requests copy data (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted sendmsg/recvmsg requests copy data (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted read/write requests copy iovec (Jeff Moyer) [1784478] - [fs] io_uring: add general async offload context (Jeff Moyer) [1784478] - [fs] io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR (Jeff Moyer) [1784478] - [fs] io_uring: use current task creds instead of allocating a new one (Jeff Moyer) [1784478] - [fs] io_uring: fix missing kmap() declaration on powerpc (Jeff Moyer) [1784478] - [fs] io_uring: add mapping support for NOMMU archs (Jeff Moyer) [1784478] - [fs] io_uring: make poll->wait dynamically allocated (Jeff Moyer) [1784478] - [fs] io-wq: shrink io_wq_work a bit (Jeff Moyer) [1784478] - [fs] io-wq: fix handling of NUMA node IDs (Jeff Moyer) [1784478] - [fs] io_uring: use kzalloc instead of kcalloc for single-element allocations (Jeff Moyer) [1784478] - [fs] io_uring: cleanup io_import_fixed() (Jeff Moyer) [1784478] - [fs] io_uring: inline struct sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: store timeout's sqe->off in proper place (Jeff Moyer) [1784478] - [net] net: disallow ancillary data for __sys_{send, recv}msg_file() (Jeff Moyer) [1784478] - [net] net: separate out the msghdr copy from ___sys_{send, recv}msg() (Jeff Moyer) [1784478] - [fs] io_uring: remove superfluous check for sqe->off in io_accept() (Jeff Moyer) [1784478] - [fs] io_uring: async workers should inherit the user creds (Jeff Moyer) [1784478] - [fs] io-wq: have io_wq_create() take a 'data' argument (Jeff Moyer) [1784478] - [fs] io_uring: fix dead-hung for non-iter fixed rw (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_CONNECT (Jeff Moyer) [1784478] - [net] net: add __sys_connect_file() helper (Jeff Moyer) [1784478] - [fs] io_uring: only return -EBUSY for submit on non-flushed backlog (Jeff Moyer) [1784478] - [fs] io_uring: only !null ptr to io_issue_sqe() (Jeff Moyer) [1784478] - [fs] io_uring: simplify io_req_link_next() (Jeff Moyer) [1784478] - [fs] io_uring: pass only !null to io_req_find_next() (Jeff Moyer) [1784478] - [fs] io_uring: remove io_free_req_find_next() (Jeff Moyer) [1784478] - [fs] io_uring: add likely/unlikely in io_get_sqring() (Jeff Moyer) [1784478] - [fs] io_uring: rename __io_submit_sqe() (Jeff Moyer) [1784478] - [fs] io_uring: improve trace_io_uring_defer() trace point (Jeff Moyer) [1784478] - [fs] io_uring: drain next sqe instead of shadowing (Jeff Moyer) [1784478] - [fs] io_uring: close lookup gap for dependent next work (Jeff Moyer) [1784478] - [fs] io_uring: allow finding next link independent of req reference count (Jeff Moyer) [1784478] - [fs] io_uring: io_allocate_scq_urings() should return a sane state (Jeff Moyer) [1784478] - [fs] io_uring: Always REQ_F_FREE_SQE for allocated sqe (Jeff Moyer) [1784478] - [fs] io_uring: io_fail_links() should only consider first linked timeout (Jeff Moyer) [1784478] - [fs] io_uring: Fix leaking linked timeouts (Jeff Moyer) [1784478] - [fs] io_uring: remove redundant check (Jeff Moyer) [1784478] - [fs] io_uring: break links for failed defer (Jeff Moyer) [1784478] - [fs] io-wq: remove extra space characters (Jeff Moyer) [1784478] - [fs] io-wq: wait for io_wq_create() to setup necessary workers (Jeff Moyer) [1784478] - [fs] io_uring: request cancellations should break links (Jeff Moyer) [1784478] - [fs] io_uring: correct poll cancel and linked timeout expiration completion (Jeff Moyer) [1784478] - [fs] io_uring: remove dead REQ_F_SEQ_PREV flag (Jeff Moyer) [1784478] - [fs] io_uring: fix sequencing issues with linked timeouts (Jeff Moyer) [1784478] - [fs] io_uring: make req->timeout be dynamically allocated (Jeff Moyer) [1784478] - [fs] io_uring: make io_double_put_req() use normal completion path (Jeff Moyer) [1784478] - [fs] io_uring: cleanup return values from the queueing functions (Jeff Moyer) [1784478] - [fs] io_uring: io_async_cancel() should pass in 'nxt' request pointer (Jeff Moyer) [1784478] - [fs] io_uring: make POLL_ADD/POLL_REMOVE scale better (Jeff Moyer) [1784478] - [fs] io-wq: remove now redundant struct io_wq_nulls_list (Jeff Moyer) [1784478] - [fs] io_uring: Fix getting file for non-fd opcodes (Jeff Moyer) [1784478] - [fs] io_uring: introduce req_need_defer() (Jeff Moyer) [1784478] - [fs] io_uring: clean up io_uring_cancel_files() (Jeff Moyer) [1784478] - [fs] io-wq: ensure free/busy list browsing see all items (Jeff Moyer) [1784478] - [fs] io_uring: ensure registered buffer import returns the IO length (Jeff Moyer) [1784478] - [fs] io_uring: Fix getting file for timeout (Jeff Moyer) [1784478] - [fs] io-wq: ensure we have a stable view of ->cur_work for cancellations (Jeff Moyer) [1784478] - [fs] io_wq: add get/put_work handlers to io_wq_create() (Jeff Moyer) [1784478] - [fs] io_uring: check for validity of ->rings in teardown (Jeff Moyer) [1784478] - [fs] io_uring: fix potential deadlock in io_poll_wake() (Jeff Moyer) [1784478] - [fs] io_uring: use correct "is IO worker" helper (Jeff Moyer) [1784478] - [fs] io_uring: make timeout sequence == 0 mean no sequence (Jeff Moyer) [1784478] - [fs] io_uring: fix -ENOENT issue with linked timer with short timeout (Jeff Moyer) [1784478] - [fs] io_uring: don't do flush cancel under inflight_lock (Jeff Moyer) [1784478] - [fs] io_uring: flag SQPOLL busy condition to userspace (Jeff Moyer) [1784478] - [fs] io_uring: make ASYNC_CANCEL work with poll and timeout (Jeff Moyer) [1784478] - [fs] io_uring: provide fallback request for OOM situations (Jeff Moyer) [1784478] - [fs] io_uring: convert accept4() -ERESTARTSYS into -EINTR (Jeff Moyer) [1784478] - [fs] io_uring: fix error clear of ->file_table in io_sqe_files_register() (Jeff Moyer) [1784478] - [fs] io_uring: separate the io_free_req and io_free_req_find_next interface (Jeff Moyer) [1784478] - [fs] io_uring: keep io_put_req only responsible for release and put req (Jeff Moyer) [1784478] - [fs] io_uring: remove passed in 'ctx' function parameter ctx if possible (Jeff Moyer) [1784478] - [fs] io_uring: reduce/pack size of io_ring_ctx (Jeff Moyer) [1784478] - [fs] io_uring: properly mark async work as bounded vs unbounded (Jeff Moyer) [1784478] - [fs] io-wq: add support for bounded vs unbunded work (Jeff Moyer) [1784478] - [fs] io-wq: io_wqe_run_queue() doesn't need to use list_empty_careful() (Jeff Moyer) [1784478] - [fs] io_uring: add support for backlogged CQ ring (Jeff Moyer) [1784478] - [fs] io_uring: pass in io_kiocb to fill/add CQ handlers (Jeff Moyer) [1784478] - [fs] io_uring: make io_cqring_events() take 'ctx' as argument (Jeff Moyer) [1784478] - [fs] io_uring: add support for linked SQE timeouts (Jeff Moyer) [1784478] - [fs] io_uring: abstract out io_async_cancel_one() helper (Jeff Moyer) [1784478] - [fs] io_uring: use inlined struct sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: Use submit info inlined into req (Jeff Moyer) [1784478] - [fs] io_uring: allocate io_kiocb upfront (Jeff Moyer) [1784478] - [fs] io_uring: io_queue_link*() right after submit (Jeff Moyer) [1784478] - [fs] io_uring: Merge io_submit_sqes and io_ring_submit (Jeff Moyer) [1784478] - [fs] io_uring: kill dead REQ_F_LINK_DONE flag (Jeff Moyer) [1784478] - [fs] io_uring: fixup a few spots where link failure isn't flagged (Jeff Moyer) [1784478] - [fs] io_uring: enable optimized link handling for IORING_OP_POLL_ADD (Jeff Moyer) [1784478] - [fs] io-wq: use proper nesting IRQ disabling spinlocks for cancel (Jeff Moyer) [1784478] - [fs] io_uring: add completion trace event (Jeff Moyer) [1784478] - [fs] io-wq: use kfree_rcu() to simplify the code (Jeff Moyer) [1784478] - [fs] io_uring: set -EINTR directly when a signal wakes up in io_cqring_wait (Jeff Moyer) [1784478] - [fs] io_uring: support for generic async request cancel (Jeff Moyer) [1784478] - [fs] io_uring: ensure we clear io_kiocb->result before each issue (Jeff Moyer) [1784478] - [fs] io_uring: io_wq_create() returns an error pointer, not NULL (Jeff Moyer) [1784478] - [fs] io_uring: fix race with canceling timeouts (Jeff Moyer) [1784478] - [fs] io_uring: support for larger fixed file sets (Jeff Moyer) [1784478] - [fs] io_uring: protect fixed file indexing with array_index_nospec() (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_ACCEPT (Jeff Moyer) [1784478] - [net] net: add __sys_accept4_file() helper (Jeff Moyer) [1784478] - [fs] io_uring: io_uring: add support for async work inheriting files (Jeff Moyer) [1784478] - [fs] io_uring: replace workqueue usage with io-wq (Jeff Moyer) [1784478] - [fs] io-wq: small threadpool implementation for io_uring (Jeff Moyer) [1784478] - [fs] io_uring: Fix mm_fault with READ/WRITE_FIXED (Jeff Moyer) [1784478] - [fs] io_uring: remove index from sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: add set of tracing events (Jeff Moyer) [1784478] - [fs] io_uring: add support for canceling timeout requests (Jeff Moyer) [1784478] - [fs] io_uring: add support for absolute timeouts (Jeff Moyer) [1784478] - [fs] io_uring: replace s->needs_lock with s->in_async (Jeff Moyer) [1784478] - [fs] io_uring: allow application controlled CQ ring size (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_REGISTER_FILES_UPDATE (Jeff Moyer) [1784478] - [fs] io_uring: allow sparse fixed file sets (Jeff Moyer) [1784478] - [fs] io_uring: run dependent links inline if possible (Jeff Moyer) [1784478] - [fs] io_uring: don't touch ctx in setup after ring fd install (Jeff Moyer) [1784478] - [fs] io_uring: Fix leaked shadow_req (Jeff Moyer) [1784478] - [fs] io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD (Jeff Moyer) [1784478] - [fs] io_uring: used cached copies of sq->dropped and cq->overflow (Jeff Moyer) [1784478] - [fs] io_uring: Fix race for sqes with userspace (Jeff Moyer) [1784478] - [fs] io_uring: Fix broken links with offloading (Jeff Moyer) [1784478] - [fs] io_uring: Fix corrupted user_data (Jeff Moyer) [1784478] - [fs] io_uring: correct timeout req sequence when inserting a new entry (Jeff Moyer) [1784478] - [fs] io_uring : correct timeout req sequence when waiting timeout (Jeff Moyer) [1784478] - [fs] io_uring: revert "io_uring: optimize submit_and_wait API" (Jeff Moyer) [1784478] - [fs] io_uring: fix logic error in io_timeout (Jeff Moyer) [1784478] - [fs] io_uring: fix up O_NONBLOCK handling for sockets (Jeff Moyer) [1784478] - [fs] io_uring: consider the overflow of sequence for timeout req (Jeff Moyer) [1784478] - [fs] io_uring: fix sequence logic for timeout requests (Jeff Moyer) [1784478] - [fs] io_uring: only flush workqueues on fileset removal (Jeff Moyer) [1784478] - [fs] io_uring: remove wait loop spurious wakeups (Jeff Moyer) [1784478] - [fs] io_uring: fix reversed nonblock flag for link submission (Jeff Moyer) [1784478] - [fs] io_uring: use __kernel_timespec in timeout ABI (Jeff Moyer) [1784478] - [fs] io_uring: make CQ ring wakeups be more efficient (Jeff Moyer) [1784478] - [fs] io_uring: compare cached_cq_tail with cq.head in_io_uring_poll (Jeff Moyer) [1784478] - [fs] io_uring: correctly handle non ->{read, write}_iter() file_operations (Jeff Moyer) [1784478] - [fs] io_uring: IORING_OP_TIMEOUT support (Jeff Moyer) [1784478] - [fs] io_uring: use cond_resched() in sqthread (Jeff Moyer) [1784478] - [fs] io_uring: fix potential crash issue due to io_get_req failure (Jeff Moyer) [1784478] - [fs] io_uring: ensure poll commands clear ->sqe (Jeff Moyer) [1784478] - [fs] io_uring: fix use-after-free of shadow_req (Jeff Moyer) [1784478] - [fs] io_uring: use kmemdup instead of kmalloc and memcpy (Jeff Moyer) [1784478] - [fs] io_uring: increase IORING_MAX_ENTRIES to 32K (Jeff Moyer) [1784478] - [fs] io_uring: make sqpoll wakeup possible with getevents (Jeff Moyer) [1784478] - [fs] io_uring: extend async work merging (Jeff Moyer) [1784478] - [fs] io_uring: limit parallelism of buffered writes (Jeff Moyer) [1784478] - [fs] io_uring: add io_queue_async_work() helper (Jeff Moyer) [1784478] - [fs] io_uring: optimize submit_and_wait API (Jeff Moyer) [1784478] - [fs] io_uring: add support for link with drain (Jeff Moyer) [1784478] - [fs] io_uring: fix wrong sequence setting logic (Jeff Moyer) [1784478] - [fs] io_uring: expose single mmap capability (Jeff Moyer) [1784478] - [fs] io_uring: allocate the two rings together (Jeff Moyer) [1784478] - [lib] percpu_ref: release percpu memory early without PERCPU_REF_ALLOW_REINIT (Jeff Moyer) [1784478] - [fs] io_uring: initialize percpu refcounters using PERCU_REF_ALLOW_REINIT (Jeff Moyer) [1784478] - [include] percpu_ref: introduce PERCPU_REF_ALLOW_REINIT flag (Jeff Moyer) [1784478] - [fs] binder: fix use-after-free due to ksys_close() during fdget() (Jeff Moyer) [1784478] - [init] RHEL-only: Enable io_uring for x86 builds (Jeff Moyer) [1784478] - [arm64] compat: ARM64: always include asm-generic/compat.h (Jeff Moyer) [1784478] - [include] asm-generic: Move common compat types to asm-generic/compat.h (Jeff Moyer) [1784478]- [fs] coredump: fix crash when umh is disabled (Yauheni Kaliuta) [1845114] - [kernel] umh: fix memory leak on execve failure (Yauheni Kaliuta) [1845114] - [net] bpf: Replace zero-length array with flexible-array member (Yauheni Kaliuta) [1845114] - [net] bpf: Fix returned error sign when link doesn't support updates (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Don't attach programs to UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: cgroup: Allow multi-attach program to replace itself (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: use struct timespec instead of __kernel_timespec (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix bpf_link leak in ns_current_pid_tgid selftest (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix test_align verifier log patterns (Yauheni Kaliuta) [1845114] - [net] bpf, cgroup: Return ENOLINK for auto-detached links on update (Yauheni Kaliuta) [1845114] - [net] bpf: Refactor bpf_link update handling (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Add a verifier test for assigning 32bit reg states to 64bit ones (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Verifier bounds tests need to be updated (Yauheni Kaliuta) [1845114] - [net] bpf: Fix a verifier issue when assigning 32bit reg states to 64bit ones (Yauheni Kaliuta) [1845114] - [net] bpf: Fix use-after-free in fmod_ret check (Yauheni Kaliuta) [1845114] - [net] flow_dissector: Drop BPF flow dissector prog ref on netns cleanup (Yauheni Kaliuta) [1845114] - [tools] bpf: Prevent mmap()'ing read-only maps as writable (Yauheni Kaliuta) [1845114] - [net] bpf: Enforce returning 0 for fentry/fexit progs (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix register naming in PT_REGS s390 macros (Yauheni Kaliuta) [1845114] - [samples] samples: bpf: Fix build error (Yauheni Kaliuta) [1845114] - [net] bpf: Fix error return code in map_lookup_and_delete_elem() (Yauheni Kaliuta) [1845114] - [net] bpf: Fix sk_psock refcnt leak when receiving message (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Ensure own vmlinux.h is picked up first (Yauheni Kaliuta) [1845114] - [net] bpf: Make bpf_link_fops static (Yauheni Kaliuta) [1845114] - [tools] bpftool: Respect the -d option in struct_ops cmd (Yauheni Kaliuta) [1845114] - [net] bpf: Fix leak in LINK_UPDATE and enforce empty old_prog_fd (Yauheni Kaliuta) [1845114] - [tools] bpf: Fix reStructuredText markup (Yauheni Kaliuta) [1845114] - [tools] libbpf: Only check mode flags in get_xdp_id (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Add test for BPF_STX BPF_B storing R10 (Yauheni Kaliuta) [1845114] - [x86] bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B (Yauheni Kaliuta) [1845114] - [net] bpf: Forbid XADD on spilled pointers for unprivileged users (Yauheni Kaliuta) [1845114] - [tools] libbpf: Always specify expected_attach_type on program load if supported (Yauheni Kaliuta) [1845114] - [net] bpf: remove unneeded conversion to bool in __mark_reg_unknown (Yauheni Kaliuta) [1845114] - [tools] tools, bpftool: Fix struct_ops command invalid pointer free (Yauheni Kaliuta) [1845114] - [net] bpf: Fix use of sk->sk_reuseport from sk_assign (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add test for bpf_get_link_xdp_id (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix bpf_get_link_xdp_id flags handling (Yauheni Kaliuta) [1845114] - [net] bpf: Fix a typo "inacitve" -> "inactive" (Yauheni Kaliuta) [1845114] - [tools] libbpf: Initialize *nl_pid so gcc 10 is happy (Yauheni Kaliuta) [1845114] - [tools] bpf, lsm: Fix the file_mprotect LSM test (Yauheni Kaliuta) [1845114] - [tools] bpf: Fix spelling mistake "arithmatic" -> "arithmetic" in test_verifier (Yauheni Kaliuta) [1845114] - [lib] kbuild, btf: Fix dependencies for DEBUG_INFO_BTF (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Test FD-based cgroup attachment (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add support for bpf_link-based cgroup attachment (Yauheni Kaliuta) [1845114] - [net] bpf: Implement bpf_prog replacement for an active bpf_cgroup_link (Yauheni Kaliuta) [1845114] - [net] bpf: Implement bpf_link-based cgroup BPF program attachment (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, add alu32 bounds tracking tests (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, #65 error message updates for trunc of boundary-cross (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, bpf_get_stack return value add <0 (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_progs, add test to catch retval refine error handling (Yauheni Kaliuta) [1845114] - [net] bpf: Verifier, refine 32bit bound in do_refine_retval_range (Yauheni Kaliuta) [1845114] - [include] bpf: Verifier, do explicit ALU32 bounds tracking (Yauheni Kaliuta) [1845114] - [net] bpf: Verifier, do_refine_retval_range may clamp umin to 0 incorrectly (Yauheni Kaliuta) [1845114] - [init] bpf, lsm: Make BPF_LSM depend on BPF_EVENTS (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Extend sk_assign tests for UDP (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Add test for sk_assign (Yauheni Kaliuta) [1845114] - [net] bpf: Don't refcount LISTEN sockets in sk_assign() (Yauheni Kaliuta) [1845114] - [net] net: Track socket refcounts in skb_steal_sock() (Yauheni Kaliuta) [1845114] - [net] bpf: Add socket assign support (Yauheni Kaliuta) [1845114] - [net] bpf: btf: Fix arg verification in btf_ctx_access() (Yauheni Kaliuta) [1845114] - [net] bpf: Simplify reg_set_min_max_inv handling (Yauheni Kaliuta) [1845114] - [documentation] bpf: lsm: Add Documentation (Yauheni Kaliuta) [1845114] - [tools] bpf: lsm: Add selftests for BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [tools] tools/libbpf: Add support for BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [net] bpf: lsm: Implement attach, detach and execution (Yauheni Kaliuta) [1845114] - [net] bpf: lsm: Provide attachment points for BPF LSM programs (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [tools] selftests: Add test for overriding global data value before load (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add setter for initial value for internal maps (Yauheni Kaliuta) [1845114] - [net] bpf, net: Fix build issue when net ns not configured (Yauheni Kaliuta) [1845114] - [net] bpf: Fix build warning regarding missing prototypes (Yauheni Kaliuta) [1845114] - [tools] libbpf, xsk: Init all ring members in xsk_umem__create and xsk_socket__create (Yauheni Kaliuta) [1845114] - [tools] bpf: Add selftest cases for ctx_or_null argument type (Yauheni Kaliuta) [1845114] - [net] bpf: Enable retrival of pid/tgid/comm from bpf cgroup hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Enable bpf cgroup hooks to retrieve cgroup v2 and ancestor id (Yauheni Kaliuta) [1845114] - [net] bpf: Allow to retrieve cgroup v1 classid from v2 hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Add netns cookie and enable it for bpf cgroup hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Enable perf event rb output for bpf cgroup progs (Yauheni Kaliuta) [1845114] - [net] bpf: Enable retrieval of socket cookie for bind/post-bind hook (Yauheni Kaliuta) [1845114] - [net] bpf: Remove unused vairable 'bpf_xdp_link_lops' (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out attach_type to prog_type mapping for attach/detach (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out cgroup storages operations (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, #70 error message updates for 32-bit right shift (Yauheni Kaliuta) [1845114] - [net] bpf: Verifer, adjust_scalar_min_max_vals to always call update_reg_bounds() (Yauheni Kaliuta) [1845114] - [net] bpf: Verifer, refactor adjust_scalar_min_max_vals (Yauheni Kaliuta) [1845114] - [tools] libbpf: Don't allocate 16M for log buffer by default (Yauheni Kaliuta) [1845114] - [tools] libbpf: Remove unused parameter `def` to get_map_field_int (Yauheni Kaliuta) [1845114] - [documentation] bpf: Document bpf_inspect drgn tool (Yauheni Kaliuta) [1845114] - [samples] samples, bpf: Refactor perf_event user program with libbpf bpf_link (Yauheni Kaliuta) [1845114] - [samples] samples, bpf: Move read_trace_pipe to trace_helpers (Yauheni Kaliuta) [1845114] - [tools] bpf: Add tests for bpf_sk_storage to bpf_tcp_ca (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_sk_storage support to bpf_tcp_ca (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix mix of tabs and spaces (Yauheni Kaliuta) [1845114] - [net] bpf, tcp: Make tcp_bpf_recvmsg static (Yauheni Kaliuta) [1845114] - [net] bpf, tcp: Fix unused function warnings (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add struct_ops support (Yauheni Kaliuta) [1845114] - [tools] bpftool: Translate prog_id to its bpf prog_name (Yauheni Kaliuta) [1845114] - [tools] bpftool: Print as a string for char array (Yauheni Kaliuta) [1845114] - [tools] bpftool: Print the enum's name instead of value (Yauheni Kaliuta) [1845114] - [tools] bpf, libbpf: Fix ___bpf_kretprobe_args1(x) macro definition (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Reset process and thread affinity after each test/sub-test (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix test_progs's parsing of test numbers (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix race in tcp_rtt test (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix nanosleep for real this time (Yauheni Kaliuta) [1845114] - [tools] selftest/bpf: Fix compilation warning in sockmap_parse_prog.c (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add vmlinux.h selftest exercising tracing of syscalls (Yauheni Kaliuta) [1845114] - [tools] libbpf: Provide CO-RE variants of PT_REGS macros (Yauheni Kaliuta) [1845114] - [tools] libbpf: Ignore incompatible types with matching name during CO-RE relocation (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Ensure consistent test failure output (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix spurious failures in accept due to EAGAIN (Yauheni Kaliuta) [1845114] - [tools] tools/bpf: Move linux/types.h for selftests and bpftool (Yauheni Kaliuta) [1845114] - [net] bpf: Add missing annotations for __bpf_prog_enter() and __bpf_prog_exit() (Yauheni Kaliuta) [1845114] - [scripts] bpf_helpers_doc.py: Fix warning when compiling bpftool (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix usleep() implementation (Yauheni Kaliuta) [1845114] - [net] bpf: Remove bpf_image tree (Yauheni Kaliuta) [1845114] - [net] bpf: Add dispatchers to kallsyms (Yauheni Kaliuta) [1845114] - [net] bpf: Add trampolines to kallsyms (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_ksym_add/del functions (Yauheni Kaliuta) [1845114] - [net] bpf: Add prog flag to struct bpf_ksym object (Yauheni Kaliuta) [1845114] - [net] bpf: Abstract away entire bpf_link clean up procedure (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_ksym_find function (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Make tcp_rtt test more robust to failures (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: test_progs: fix client/server race in tcp_rtt (Yauheni Kaliuta) [1845114] - [net] bpf: Move ksym_tnode to bpf_ksym (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Guarantee that useep() calls nanosleep() syscall (Yauheni Kaliuta) [1845114] - [net] bpf: Move lnode list node to struct bpf_ksym (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Restore message on failure to guess program type (Yauheni Kaliuta) [1845114] - [include] bpf: Add name to struct bpf_ksym (Yauheni Kaliuta) [1845114] - [net] bpf: Add struct bpf_ksym (Yauheni Kaliuta) [1845114] - [include] bpf: Add bpf_trampoline_ name prefix for DECLARE_BPF_DISPATCHER (Yauheni Kaliuta) [1845114] - [mm] x86/mm: Rename is_kernel_text to __is_kernel_text (Yauheni Kaliuta) [1845114] - [tools] bpf: Add bpf_xdp_output() helper (Yauheni Kaliuta) [1845114] - [tools] tools/testing/selftests/bpf: Add self-tests for new helper bpf_get_ns_current_pid_tgid (Yauheni Kaliuta) [1845114] - [net] bpf: Added new helper bpf_get_ns_current_pid_tgid (Yauheni Kaliuta) [1845114] - [fs] fs/nsfs.c: Added ns_match (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Fix minor bash completion mistakes (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Allow all prog/map handles for pinning objects (Yauheni Kaliuta) [1845114] - [tools] libbpf: Split BTF presence checks into libbpf- and kernel-specific parts (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add _bpftool and profiler.skel.h to .gitignore (Yauheni Kaliuta) [1845114] - [tools] bpftool: Skeleton should depend on libbpf (Yauheni Kaliuta) [1845114] - [tools] bpftool: Only build bpftool-prog-profile if supported by clang (Yauheni Kaliuta) [1845114] - [tools] bpftool: Use linux/types.h from source tree for profiler build (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Add BPF_F_CURRENT_CPU for running selftest on older kernels (Yauheni Kaliuta) [1845114] - [x86] bpf: Fix trampoline generation for fmod_ret programs (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_link_new_file that doesn't install FD (Yauheni Kaliuta) [1845114] - [tools] bpftool: Bash completion for "bpftool prog profile" (Yauheni Kaliuta) [1845114] - [tools] bpftool: Documentation for bpftool prog profile (Yauheni Kaliuta) [1845114] - [tools] bpftool: Introduce "prog profile" command (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Enable UDP sockmap reuseport tests (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Add tests for UDP sockets in sockmap (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Don't listen() on UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Add UDP support (Yauheni Kaliuta) [1845114] - [net] bpf: Add sockmap hooks for UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Simplify sock_map_init_proto (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Move generic sockmap hooks from BPF TCP (Yauheni Kaliuta) [1845114] - [net] bpf: tcp: Guard declarations with CONFIG_NET_SOCK_MSG (Yauheni Kaliuta) [1845114] - [net] bpf: tcp: Move assertions into tcp_bpf_get_proto (Yauheni Kaliuta) [1845114] - [net] skmsg: Update saved hooks only once (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Only check ULP for TCP sockets (Yauheni Kaliuta) [1845114] - [kernel] bpf: Fix bpf_prog_test_run_tracing for !CONFIG_NET (Yauheni Kaliuta) [1845114] - [net] bpf: Remove unnecessary CAP_MAC_ADMIN check (Yauheni Kaliuta) [1845114] - [tools] bpf: Add selftests for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [tools] bpf: Add test ops for BPF_PROG_TYPE_TRACING (Yauheni Kaliuta) [1845114] - [tools] tools/libbpf: Add support for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [net] bpf: Attachment verification for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [x86] bpf: JIT helpers for fmod_ret progs (Yauheni Kaliuta) [1845114] - [net] bpf: Refactor trampoline update code (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Support out-of-tree vmlinux builds for VMLINUX_BTF (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Drop copy/pasted BPF_F_CURRENT_CPU definiton (Yauheni Kaliuta) [1845114] - [tools] libbpf: Assume unsigned values for BTF_KIND_ENUM (Yauheni Kaliuta) [1845114] - [tools] bpf: Switch BPF UAPI #define constants used from BPF program side to enums (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Test new __sk_buff field gso_size (Yauheni Kaliuta) [1845114] - [tools] bpf: Sync uapi bpf.h to tools/ (Yauheni Kaliuta) [1845114] - [net] bpf: Add gso_size to __sk_buff (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add link pinning selftests (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add bpf_link pinning/unpinning (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce pinnable bpf_link abstraction (Yauheni Kaliuta) [1845114] - [tools] libbpf: Merge selftests' bpf_trace_helpers.h into libbpf's bpf_tracing.h (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix use of PT_REGS_PARM macros with vmlinux.h (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add header guards to generated vmlinux.h (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add test for "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] selftests/tpm2: Add log and *.pyc to .gitignore (Yauheni Kaliuta) [1845114] - [tools] bpftool: Update bash completion for "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] bpftool: Update documentation of "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] bpftool: Make probes which emit dmesg warnings optional (Yauheni Kaliuta) [1845114] - [tools] bpftool: Move out sections to separate functions (Yauheni Kaliuta) [1845114] - [tools] bpftool: Support struct_ops, tracing, ext prog types (Yauheni Kaliuta) [1845114] - [scripts] scripts/bpf: Switch to more portable python3 shebang (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Print backtrace on SIGSEGV in test_progs (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Run reuseport tests only with supported socket types (Yauheni Kaliuta) [1845114] - [net] bpf/stackmap: Dont trylock mmap_sem with PREEMPT_RT and interrupts disabled (Yauheni Kaliuta) [1845114] - [net] bpf, lpm: Make locking RT friendly (Yauheni Kaliuta) [1845114] - [net] bpf: Prepare hashtab locking for PREEMPT_RT (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out hashtab bucket lock operations (Yauheni Kaliuta) [1845114] - [net] bpf: Replace open coded recursion prevention in sys_bpf() (Yauheni Kaliuta) [1845114] - [net] bpf: Use recursion prevention helpers in hashtab code (Yauheni Kaliuta) [1845114] - [include] bpf: Provide recursion prevention helpers (Yauheni Kaliuta) [1845114] - [include] bpf: Use migrate_disable/enable in array macros and cgroup/lirc code (Yauheni Kaliuta) [1845114] - [net] bpf: Use migrate_disable/enabe() in trampoline code (Yauheni Kaliuta) [1845114] - [lib] bpf/tests: Use migrate disable instead of preempt disable (Yauheni Kaliuta) [1845114] - [net] bpf: Use bpf_prog_run_pin_on_cpu() at simple call sites (Yauheni Kaliuta) [1845114] - [include] bpf: Replace cant_sleep() with cant_migrate() (Yauheni Kaliuta) [1845114] - [include] bpf: Provide bpf_prog_run_pin_on_cpu() helper (Yauheni Kaliuta) [1845114] - [include] sched/rt: Provide migrate_disable/enable() inlines (Yauheni Kaliuta) [1845114] - [include] sched: Provide cant_migrate() (Yauheni Kaliuta) [1845114] - [net] bpf: Dont iterate over possible CPUs with interrupts disabled (Yauheni Kaliuta) [1845114] - [net] bpf: Remove recursion prevention from rcu free callback (Yauheni Kaliuta) [1845114] - [kernel] perf/bpf: Remove preempt disable around BPF invocation (Yauheni Kaliuta) [1845114] - [kernel] bpf/trace: Remove redundant preempt_disable from trace_call_bpf() (Yauheni Kaliuta) [1845114] - [kernel] bpf: disable preemption for bpf progs attached to uprobe (Yauheni Kaliuta) [1845114] - [kernel] bpf/trace: Remove EXPORT from trace_call_bpf() (Yauheni Kaliuta) [1845114] - [kernel] bpf/tracing: Remove redundant preempt_disable() in __bpf_trace_run() (Yauheni Kaliuta) [1845114] - [net] bpf: Update locking comment in hashtab code (Yauheni Kaliuta) [1845114] - [net] bpf: Enforce preallocation for instrumentation programs on RT (Yauheni Kaliuta) [1845114] - [net] bpf: Tighten the requirements for preallocated hash maps (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Tests for sockmap/sockhash holding listening sockets (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Extend SK_REUSEPORT tests to cover SOCKMAP/SOCKHASH (Yauheni Kaliuta) [1845114] - [documentation] docs/bpf: Update bpf development Q/A file (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Update xdp_bpf2bpf test to use new set_attach_target API (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add support for dynamic program attach target (Yauheni Kaliuta) [1845114] - [tools] libbpf: Bump libpf current version to v0.0.8 (Yauheni Kaliuta) [1845114] - [tools] libbpf: Relax check whether BTF is mandatory (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Change llvm flag -mcpu=probe to -mcpu=v3 (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add bpf_read_branch_records() selftest (Yauheni Kaliuta) [1845114] - [kernel] bpf: Add bpf_read_branch_records() helper (Yauheni Kaliuta) [1845114] - [kernel] bpf: Allow bpf_perf_event_read_value in all BPF programs (Yauheni Kaliuta) [1845114] - [dma] dma-direct: improve DMA mask overflow reporting (Don Dutile) [1816437] - [dma] dma-direct: improve swiotlb error reporting (Don Dutile) [1816437] - [dma] dma-direct: relax addressability checks in dma_direct_supported (Don Dutile) [1816437] - [dma] dma-contiguous: CMA: give precedence to cmdline (Don Dutile) [1816437] - [misc] lib/genalloc.c: rename addr_in_gen_pool to gen_pool_has_addr (Don Dutile) [1816437] - [lib] lib/genalloc.c: export symbol addr_in_gen_pool (Don Dutile) [1816437] - [acpi] dma-mapping: treat dev->bus_dma_mask as a DMA limit (Don Dutile) [1816437] - [powerpc] dma-direct: unify the dma_capable definitions (Don Dutile) [1816437] - [of] of/device: Really only set bus DMA mask when appropriate (Don Dutile) [1816437] - [dma] dma-direct: exclude dma_direct_map_resource from the min_low_pfn check (Don Dutile) [1816437] - [dma] dma-debug: clean up put_hash_bucket() (Don Dutile) [1816437] - [iommu] dma-mapping: drop the dev argument to arch_sync_dma_for_* (Don Dutile) [1816437] - [xen] swiotlb-xen: simplify cache maintainance (Don Dutile) [1816437] - [xen] swiotlb-xen: simplify the DMA sync method implementations (Don Dutile) [1816437] - [dma] dma-debug: increase HASH_SIZE (Don Dutile) [1816437] - [dma] dma-debug: reorder struct dma_debug_entry fields (Don Dutile) [1816437] - [dma] dma-mapping: merge the generic remapping helpers into dma-direct (Don Dutile) [1816437] - [dma] dma-direct: provide mmap and get_sgtable method overrides (Don Dutile) [1816437] - [dma] dma-direct: remove the dma_handle argument to __dma_direct_alloc_pages (Don Dutile) [1816437] - [dma] dma-direct: remove __dma_direct_free_pages (Don Dutile) [1816437] - [mm] dma/direct: turn ARCH_ZONE_DMA_BITS into a variable (Don Dutile) [1816437] - [dma] dma-direct: check for overflows on 32 bit DMA addresses (Don Dutile) [1816437] - [s390] s390/dma: provide proper ARCH_ZONE_DMA_BITS value (Don Dutile) [1816437] - [mm] powerpc: fix off by one in max_zone_pfn initialization for ZONE_DMA (Don Dutile) [1816437] - [powerpc] powerpc: enable a 30-bit ZONE_DMA for 32-bit pmac (Don Dutile) [1816437] - [mm] arm64: rename variables used to calculate ZONE_DMA32's size (Don Dutile) [1816437] - [mm] arm64: mm: use arm64_dma_phys_limit instead of calling max_zone_dma_phys() (Don Dutile) [1816437] - [mm] arm64: mm: make CONFIG_ZONE_DMA32 configurable (Don Dutile) [1816437] - [dma] kernel: dma-contiguous: mark CMA parameters __initdata/__initconst (Don Dutile) [1816437] - [dma] dma-debug: add a schedule point in debug_dma_dump_mappings() (Don Dutile) [1816437] - [dma] dma-debug: Use pr_warn instead of pr_warning (Don Dutile) [1816437] - [dma] dma-mapping: fix false positivse warnings in dma_common_free_remap() (Don Dutile) [1816437] - [xen] swiotlb-xen: ensure we have a single callsite for xen_dma_map_page (Don Dutile) [1816437] - [iommu] dma-mapping: introduce a dma_common_find_pages helper (Don Dutile) [1816437] - [iommu] dma-mapping: always use VM_DMA_COHERENT for generic DMA remap (Don Dutile) [1816437] - [mm] vmalloc: lift the arm flag for coherent mappings to common code (Don Dutile) [1816437] - [mm] dma-mapping: provide a better default ->get_required_mask (Don Dutile) [1816437] - [dma] dma-mapping: remove the dma_declare_coherent_memory export (Don Dutile) [1816437] - [dma] dma-mapping: remove the dma_mmap_from_dev_coherent export (Don Dutile) [1816437] - [dma] dma-mapping: remove CONFIG_ARCH_NO_COHERENT_DMA_MMAP (Don Dutile) [1816437] - [dma] dma-mapping: add a dma_can_mmap helper (Don Dutile) [1816437] - [powerpc] dma-mapping: explicitly wire up ->mmap and ->get_sgtable (Don Dutile) [1816437] - [mm] dma-mapping: move the dma_get_sgtable API comments from arm to common code (Don Dutile) [1816437] - [dma] dma-mapping: introduce dma_get_merge_boundary() (Don Dutile) [1816437] - [mm] dma-mapping: make dma_atomic_pool_init self-contained (Don Dutile) [1816437] - [arm64] dma-mapping: remove arch_dma_mmap_pgprot (Don Dutile) [1816437] - [scsi] scsi: ibmvscsi: Don't send host info in adapter info MAD after LPM (Steve Best) [1847078] - [fs] NFS: Fix inode fileid checks in attribute revalidation code (Benjamin Coddington) [1846295] - [fs] NFS: remove set but not used variable 'mapping' (Benjamin Coddington) [1846295] - [fs] NFSv2: Fix write regression (Benjamin Coddington) [1846295] - [fs] NFSv2: Fix eof handling (Benjamin Coddington) [1846295] - [fs] NFS: Fix writepage(s) error handling to not report errors twice (Benjamin Coddington) [1846295] - [fs] NFS: Fix spurious EIO read errors (Benjamin Coddington) [1846295] - [fs] pNFS/flexfiles: Don't time out requests on hard mounts (Benjamin Coddington) [1846295] - [net] SUNRPC: Handle EADDRINUSE and ENOBUFS correctly (Benjamin Coddington) [1846295] - [fs] pNFS/flexfiles: Turn off soft RPC calls (Benjamin Coddington) [1846295] - [fs] NFS: On fatal writeback errors, we need to call nfs_inode_remove_request() (Benjamin Coddington) [1846295] - [fs] NFS: Fix initialisation of I/O result struct in nfs_pgio_rpcsetup (Benjamin Coddington) [1846295] - [fs] NFSv4: Fix return value in nfs_finish_open() (Benjamin Coddington) [1846295] - [fs] NFSv4: Fix return values for nfs4_file_open() (Benjamin Coddington) [1846295] - [fs] NFS: Don't refresh attributes with mounted-on-file information (Benjamin Coddington) [1846295] - [fs] NFSv4: Ensure state recovery handles ETIMEDOUT correctly (Benjamin Coddington) [1846295] - [fs] NFSv4: Report the error from nfs4_select_rw_stateid() (Benjamin Coddington) [1846295] - [fs] NFSv4: Print an error in the syslog when state is marked as irrecoverable (Benjamin Coddington) [1846295] - [net] SUNRPC: Optimise transport balancing code (Benjamin Coddington) [1846295] - [fs] NFSv4: Don't use the zero stateid with layoutget (Benjamin Coddington) [1846295] - [net] SUNRPC: Fix up backchannel slot table accounting (Benjamin Coddington) [1846295] - [net] SUNRPC: Skip zero-refcount transports (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace division by multiplication in calculation of queue length (Benjamin Coddington) [1846295] - [fs] NFSv4: Validate the stateid before applying it to state recovery (Benjamin Coddington) [1846295] - [fs] nfs4.0: Refetch lease_time after clientid update (Benjamin Coddington) [1846295] - [fs] nfs4: Rename nfs41_setup_state_renewal (Benjamin Coddington) [1846295] - [fs] nfs4: Make nfs4_proc_get_lease_time available for nfs4.0 (Benjamin Coddington) [1846295] - [fs] nfs: Fix copy-and-paste error in debug message (Benjamin Coddington) [1846295] - [fs] NFS: Replace 16 seq_printf() calls by seq_puts() (Benjamin Coddington) [1846295] - [fs] NFS: Use seq_putc() in nfs_show_stats() (Benjamin Coddington) [1846295] - [fs] nfsd: Fix misuse of strlcpy (Benjamin Coddington) [1846295] - [net] SUNRPC: Drop redundant CONFIG_ from CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES (Benjamin Coddington) [1846295] - [fs] NFS: Cleanup if nfs_match_client is interrupted (Benjamin Coddington) [1846295] - [fs] nfs: disable client side deduplication (Benjamin Coddington) [1846295] - [fs] NFS: Clean up writeback code (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove warning in debugfs.c when compiling with W=1 (Benjamin Coddington) [1846295] - [fs] NFS: Add sysfs support for per-container identifier (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove the bh-safe lock requirement on the rpc_wait_queue->lock (Benjamin Coddington) [1846295] - [fs] NFS: Cleanup - add nfs_clients_exit to mirror nfs_clients_init (Benjamin Coddington) [1846295] - [fs] NFS: Create a root NFS directory in /sys/fs/nfs (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove the bh-safe lock requirement on xprt->transport_lock (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace direct task wakeups from softirq context (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace the queue timer with a delayed work function (Benjamin Coddington) [1846295] - [fs] NFSv4: Handle open for execute correctly (Benjamin Coddington) [1846295] - [fs] nfs: dget_parent() never returns NULL (Benjamin Coddington) [1846295] - [net] nfs: fix out-of-date connectathon talk URL (Benjamin Coddington) [1846295] - [fs] nfsd4: remove outdated nfsd4_decode_time comment (Benjamin Coddington) [1846295] - [fs] nfsd: Spelling s/EACCESS/EACCES/ (Benjamin Coddington) [1846295] - [fs] lockd: Make two symbols static (Benjamin Coddington) [1846295] - [fs] lockd: Show pid of lockd for remote locks (Benjamin Coddington) [1846295] - [fs] lockd: Remove lm_compare_owner and lm_owner_key (Benjamin Coddington) [1846295] - [fs] lockd: Convert NLM service fl_owner to nlm_lockowner (Benjamin Coddington) [1846295] - [fs] lockd: prepare nlm_lockowner for use by the server (Benjamin Coddington) [1846295] - [net] sunrpc: no need to check return value of debugfs_create functions (Benjamin Coddington) [1846295] - [fs] nfsd: no need to check return value of debugfs_create functions (Benjamin Coddington) [1846295] - [fs] xfs: add agf freeblocks verify in xfs_agf_verify (Brian Foster) [1837192] {CVE-2020-12655} - [scsi] scsi: iscsi: Fix deadlock on recovery path during GFP_IO reclaim (Chris Leech) [1830140] - [scsi] scsi: iscsi: Register sysfs for iscsi workqueue (Chris Leech) [1830140] - [scsi] scsi: iscsi: Report unbind session event when the target has been removed (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Fix error count for active session (Chris Leech) [1830140] - [scsi] scsi: iscsi: Report connection state in sysfs (Chris Leech) [1830140] - [scsi] scsi: iscsi: Add support for asynchronous iSCSI session destruction (Chris Leech) [1830140] - [scsi] scsi: iscsi: Perform connection failure entirely in kernel space (Chris Leech) [1830140] - [scsi] scsi: iscsi: Don't destroy session if there are outstanding connections (Chris Leech) [1830140] - [scsi] scsi: iscsi: Fix a potential deadlock in the timeout handler (Chris Leech) [1830140] - [scsi] scsi: iscsi: Don't send data to unbound connection (Chris Leech) [1830140] - [scsi] scsi: libiscsi: switch to SPDX tags (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Hold back_lock when calling iscsi_complete_task (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Use scsi_et_resid() where appropriate (Chris Leech) [1830140] - [scsi] scsi: iscsi: Capture iscsi debug messages using tracepoints (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Fix NULL pointer dereference in iscsi_eh_session_reset (Chris Leech) [1830140] - [scsi] scsi: iscsi_tcp: Explicitly cast param in iscsi_sw_tcp_host_get_param (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Annotate fall-through (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Annotate locking assumptions (Chris Leech) [1830140] - [nvme] nvmet: fail outstanding host posted AEN req (David Milburn) [1833642] - [nvme] nvmet: add async event tracing support (David Milburn) [1833642] - [nvme] nvmet: cleanups the loop in nvmet_async_events_process (David Milburn) [1833642] - [nvme] nvmet: fix memory leak when removing namespaces and controllers concurrently (David Milburn) [1833642] - [netdrv] ibmvnic: Flush existing work items before device removal (Steve Best) [1846761] - [kernel] signal: Extend exec_id to 64bits (Chris von Recklinghausen) [1834652] {CVE-2020-12826}- [arm64] docs: fix broken references to text files (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move __load_guest_stage2 to kvm_mmu.h (Andrew Jones) [1842468] - [arm64] kvm: arm64: Drop obsolete comment about sys_reg ordering (Andrew Jones) [1842468] - [arm64] kvm: arm64: Parametrize exception entry with a target EL (Andrew Jones) [1842468] - [arm64] kvm: arm64: Don't use empty structures as CPU reset state (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move sysreg reset check to boot time (Andrew Jones) [1842468] - [arm64] kvm: arm64: Add missing reset handlers for PMU emulation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Refactor vcpu_{read, write}_sys_reg (Andrew Jones) [1842468] - [arm64] kvm: arm64: vgic-v3: Take cpu_if pointer directly instead of vcpu (Andrew Jones) [1842468] - [arm64] kvm: arm64: Remove obsolete kvm_virt_to_phys abstraction (Andrew Jones) [1842468] - [arm64] kvm: arm64: Fix incorrect comment on kvm_get_hyp_vector() (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up cpu_init_hyp_mode() (Andrew Jones) [1842468] - [arm64] cpufeature: Drop open encodings while extracting parange (Andrew Jones) [1842468] - [arm64] kvm: arm64: Make KVM_CAP_MAX_VCPUS compatible with the selected GIC version (Andrew Jones) [1842468] - [arm64] kvm: arm64: Support enabling dirty log gradually in small chunks (Andrew Jones) [1842468] - [arm64] kvm: arm64: Unify handling THP backed host memory (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up the checking for huge mapping (Andrew Jones) [1842468] - [arm64] kvm: arm/arm64: Release kvm->mmu_lock in loop to prevent starvation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Sidestep stage2_unmap_vm() on vcpu reset when S2FWB is supported (Andrew Jones) [1842468] - [arm64] kvm: Fix spelling in code comments (Andrew Jones) [1842468] - [arm64] kvm: arm64: Simplify __kvm_timer_set_cntvoff implementation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up kvm makefiles (Andrew Jones) [1842468] - [arm64] kvm: arm64: Change CONFIG_KVM to a menuconfig entry (Andrew Jones) [1842468] - [arm64] kvm: arm64: Update help text (Andrew Jones) [1842468] - [arm64] kvm: arm64: Kill off CONFIG_KVM_ARM_HOST (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move virt/kvm/arm to arch/arm64 (Andrew Jones) [1842468] - [arm64] Unify WORKAROUND_SPECULATIVE_AT_{NVHE, VHE} (Andrew Jones) [1842468] - [arm64] cpufeature: Add CPU capability for AArch32 EL1 support (Andrew Jones) [1842468] - [net] SUNRPC: Fix a credential refcount leak (Benjamin Coddington) [1831672] - [net] Revert "SUNRPC: Declare RPC timers as TIMER_DEFERRABLE" (Benjamin Coddington) [1831672] - [net] net :sunrpc :clnt :Fix xps refcount imbalance on the error path (Benjamin Coddington) [1831672] - [net] SUNRPC: Rebalance a kref in auth_gss.c (Benjamin Coddington) [1831672] - [fs] NFS: Fix a double unlock from nfs_match, get_client (Benjamin Coddington) [1831672] - [fs] nfs: pass the correct prototype to read_cache_page (Benjamin Coddington) [1831672] - [fs] NFSv4: don't mark all open state for recovery when handling recallable state revoked flag (Benjamin Coddington) [1831672] - [net] SUNRPC: Fix an error code in gss_alloc_msg() (Benjamin Coddington) [1831672] - [net] SUNRPC: task should be exit if encode return EKEYEXPIRED more times (Benjamin Coddington) [1831672] - [fs] NFS: make nfs_match_client killable (Benjamin Coddington) [1831672] - [fs] nfsd: update callback done processing (Benjamin Coddington) [1831672] - [fs] lockd: Store the lockd client credential in struct nlm_host (Benjamin Coddington) [1831672] - [fs] NFS: When mounting, don't share filesystems between different user namespaces (Benjamin Coddington) [1831672] - [fs] NFS: Convert NFSv2 to use the container user namespace (Benjamin Coddington) [1831672] - [fs] NFSv4: Convert the NFS client idmapper to use the container user namespace (Benjamin Coddington) [1831672] - [fs] NFS: Convert NFSv3 to use the container user namespace (Benjamin Coddington) [1831672] - [net] SUNRPC: Use namespace of listening daemon in the client AUTH_GSS upcall (Benjamin Coddington) [1831672] - [net] net: Remove some unneeded semicolon (Benjamin Coddington) [1831672] - [net] SUNRPC: Use the client user namespace when encoding creds (Benjamin Coddington) [1831672] - [fs] NFS: Store the credential of the mount process in the nfs_server (Benjamin Coddington) [1831672] - [fs] SUNRPC: Cache cred of process creating the rpc_client (Benjamin Coddington) [1831672] - [net] SUNRPC: Update comments based on recent changes (Benjamin Coddington) [1831672] - [net] SUNRPC: Avoid digging into the ATOMIC pool (Benjamin Coddington) [1831672] - [net] xprtrdma: Recognize XDRBUF_SPARSE_PAGES (Benjamin Coddington) [1831672] - [fs] Fix nfs4.2 return -EINVAL when do dedupe operation (Benjamin Coddington) [1831672] - [fs] NFS: Remove redundant open context from nfs_page (Benjamin Coddington) [1831672] - [fs] NFS: Add a helper to return a pointer to the open context of a struct nfs_page (Benjamin Coddington) [1831672] - [fs] NFS: Ensure that all nfs lock contexts have a valid open context (Benjamin Coddington) [1831672] - [fs] NFS: Allow signal interruption of NFS4ERR_DELAYed operations (Benjamin Coddington) [1831672] - [fs] pNFS: Add tracking to limit the number of pNFS retries (Benjamin Coddington) [1831672] - [fs] NFS: Remove unused argument from nfs_create_request() (Benjamin Coddington) [1831672] - [fs] NFS: Fix up NFS I/O subrequest creation (Benjamin Coddington) [1831672] - [fs] NFS: Replace custom error reporting mechanism with generic one (Benjamin Coddington) [1831672] - [fs] NFS: Don't inadvertently clear writeback errors (Benjamin Coddington) [1831672] - [fs] NFS: Don't call generic_error_remove_page() while holding locks (Benjamin Coddington) [1831672] - [fs] NFS: Don't interrupt file writeout due to fatal errors (Benjamin Coddington) [1831672] - [fs] NFS: Add a mount option "softerr" to allow clients to see ETIMEDOUT errors (Benjamin Coddington) [1831672] - [uapi] NFS: Move internal constants out of uapi/linux/nfs_mount.h (Benjamin Coddington) [1831672] - [fs] NFS: Consider ETIMEDOUT to be a fatal error (Benjamin Coddington) [1831672] - [net] SUNRPC: Add the 'softerr' rpc_client flag (Benjamin Coddington) [1831672] - [net] SUNRPC: Ensure to ratelimit the "server not responding" syslog messages (Benjamin Coddington) [1831672] - [net] SUNRPC: Start the first major timeout calculation at task creation (Benjamin Coddington) [1831672] - [net] SUNRPC: Ensure that the transport layer respect major timeouts (Benjamin Coddington) [1831672] - [net] SUNRPC: Declare RPC timers as TIMER_DEFERRABLE (Benjamin Coddington) [1831672] - [net] SUNRPC: Simplify queue timeouts using timer_reduce() (Benjamin Coddington) [1831672] - [net] SUNRPC: Fix up tracking of timeouts (Benjamin Coddington) [1831672] - [net] SUNRPC: Add function rpc_sleep_on_timeout() (Benjamin Coddington) [1831672] - [fs] SUNRPC: Remove unused argument 'action' from rpc_sleep_on_priority() (Benjamin Coddington) [1831672] - [net] SUNRPC: Refactor rpc_sleep_on() (Benjamin Coddington) [1831672] - [net] SUNRPC: Refactor xprt_request_wait_receive() (Benjamin Coddington) [1831672] - [fs] nfsd: fh_drop_write in nfsd_unlink (Benjamin Coddington) [1831672] - [fs] nfsd: avoid uninitialized variable warning (Benjamin Coddington) [1831672] - [netdrv] Revert "net: phy: realtek: fix using paged operations with RTL8105e / RTL8208" (Josef Oskera) [1846022] - [netdrv] ice: Fix Tx timeout when link is toggled on a VF's interface (Jonathan Toppins) [1843144] - [netdrv] ice: add a devlink region for dumping NVM contents (Jonathan Toppins) [1843144] - [nvme] nvme-fc: print proper nvme-fc devloss_tmo value (Gopal Tiwari) [1846049] - [acpi] ACPI: EC: PM: Avoid flushing EC work when EC GPE is inactive (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Avoid premature returns from acpi_s2idle_wake() (Al Stone) [1803969] - [acpi] ACPI: PM: Add acpi_register_wakeup_handler() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Refine active GPEs check (Al Stone) [1803969] - [acpi] ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE (Al Stone) [1803969] - [base] PM: sleep: wakeup: Skip wakeup_source_sysfs_remove() if device is not there (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late() (Al Stone) [1803969] - [platform] platform/x86: sony-laptop: Make resuming thermal profile safer (Al Stone) [1803969] - [platform] platform/x86: sony-laptop: SNC calls should handle BUFFER types (Al Stone) [1803969] - [acpi] ACPI: Update Tiger Lake ACPI device IDs (Al Stone) [1803969] - [acpi] ACPI: EC: Avoid printing confusing messages in acpi_ec_setup() (Al Stone) [1803969] - [acpi] ACPI: EC: Fix flushing of pending work (Al Stone) [1803969] - [base] PM / wakeup: Register wakeup class kobj after device is added (Al Stone) [1803969] - [base] PM / wakeup: Fix sysfs registration error path (Al Stone) [1803969] - [base] PM / wakeup: Unexport wakeup_source_sysfs_{add, remove}() (Al Stone) [1803969] - [kernel] PM: suspend: Fix platform_suspend_prepare_noirq() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system (Al Stone) [1803969] - [acpi] ACPICA: Introduce acpi_any_gpe_status_set() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Avoid possible race related to the EC GPE (Al Stone) [1803969] - [acpi] ACPI: watchdog: Allow disabling WDAT at boot (Al Stone) [1803969] - [acpi] ACPI / APD: Add clock frequency for Hisilicon Hip08-Lite I2C controller (Al Stone) [1803969] - [acpi] ACPI: thermal: switch to use helpers (Al Stone) [1803969] - [acpi] ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map() (Al Stone) [1803969] - [acpi] ACPI/IORT: Parse SSID property of named component node (Al Stone) [1803969] - [iommu] iommu/arm-smmu-v3: Parse PASID devicetree property of platform devices (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20200110 (Al Stone) [1803969] - [acpi] ACPICA: All acpica: Update copyrights to 2020 Including tool signons (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch (Al Stone) [1803969] - [acpi] ACPI: PPTT: Consistently use unsigned int as parameter type (Al Stone) [1803969] - [acpi] ACPI: EC: Reference count query handlers under lock (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20191213 (Al Stone) [1803969] - [acpi] ACPICA: Dispatcher: always generate buffer objects for ASL create_field() operator (Al Stone) [1803969] - [acpi] ACPICA: acpisrc: add unix line ending support for non-windows build (Al Stone) [1803969] - [acpi] ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1 (Al Stone) [1803969] - [acpi] ACPICA: debugger: fix spelling mistake "adress" -> "address" (Al Stone) [1803969] - [acpi] ACPI: video: Do not export a non working backlight interface on MSI MS-7721 boards (Al Stone) [1803969] - [acpi] ACPI: fan: Add Tiger Lake ACPI device ID (Al Stone) [1803969] - [acpi] ACPI: DPTF: Add Tiger Lake ACPI device IDs (Al Stone) [1803969] - [acpi] ACPI: fan: Expose fan performance state information (Al Stone) [1803969] - [acpi] ACPI / LPSS: Rename pwm_backlight pwm-lookup to pwm_soc_backlight (Al Stone) [1803969] - [acpi] ACPI: video: Use native backlight on Lenovo E41-25/45 (Al Stone) [1803969] - [acpi] ACPI: video: fix typo in comment (Al Stone) [1803969] - [acpi] ACPI / battery: Deal better with neither design nor full capacity not being reported (Al Stone) [1803969] - [acpi] ACPI / battery: Use design-cap for capacity calculations if full-cap is not available (Al Stone) [1803969] - [acpi] ACPI / battery: Deal with design or full capacity being reported as -1 (Al Stone) [1803969] - [acpi] ACPI/sleep: Convert acpi_wakeup_address into a function (Al Stone) [1803969] - [acpi] ACPI: PM: Avoid attaching ACPI PM domain to certain devices (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Rework ACPI events synchronization (Al Stone) [1803969] - [acpi] ACPI: EC: Rework flushing of pending work (Al Stone) [1803969] - [acpi] ACPI: bus: Fix NULL pointer check in acpi_bus_get_private_data() (Al Stone) [1803969] - [acpi] ACPI: Fix Kconfig indentation (Al Stone) [1803969] - [acpi] ACPI: OSL: only free map once in osl.c (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Acer Switch 10 SW5-032 lid-switch (Al Stone) [1803969] - [acpi] ACPI: sysfs: Change ACPI_MASKABLE_GPE_MAX to 0x100 (Al Stone) [1803969] - [acpi] ACPI: OSI: Shoot duplicate word (Al Stone) [1803969] - [acpi] ACPI: HMAT: use u instead of d to print u32 values (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: fix a section mismatch (Al Stone) [1803969] - [acpi] ACPI: HMAT: don't mix pxm and nid when setting memory target processor_pxm (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: Register "soft reserved" memory as an "hmem" device (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: Register HMAT at device_initcall level (Al Stone) [1803969] - [acpi] ACPI: NUMA: Establish a new drivers/acpi/numa/ directory (Al Stone) [1803969] - [x86] x86/efi: EFI soft reservation to E820 enumeration (Al Stone) [1803969] - [firmware] efi: Common enable/disable infrastructure for EFI soft reservation (Al Stone) [1803969] - [firmware] efi: Enumerate EFI_MEMORY_SP (Al Stone) [1803969] - [dax] device-dax: Add a driver for "hmem" devices (Al Stone) [1803969] - [nvdimm] lib: Uplevel the pmem "region" ida to a global allocator (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20191018 (Al Stone) [1803969] - [acpi] ACPICA: debugger: remove leading whitespaces when converting a string to a buffer (Al Stone) [1803969] - [acpi] ACPICA: acpiexec: initialize all simple types and field units from user input (Al Stone) [1803969] - [acpi] ACPICA: debugger: add field unit support for acpi_db_get_next_token (Al Stone) [1803969] - [acpi] ACPICA: debugger: surround field unit output with braces '{' (Al Stone) [1803969] - [acpi] ACPICA: debugger: add command to dump all fields of particular subtype (Al Stone) [1803969] - [acpi] ACPICA: utilities: add flag to only display data when dumping buffers (Al Stone) [1803969] - [acpi] ACPICA: make acpi_load_table() return table index (Al Stone) [1803969] - [acpi] ACPICA: Add new external interface, acpi_unload_table() (Al Stone) [1803969] - [acpi] ACPICA: More Clang changes (Al Stone) [1803969] - [acpi] ACPICA: Win OSL: Replace get_tick_count with get_tick_count64 (Al Stone) [1803969] - [acpi] ACPICA: Results from Clang (Al Stone) [1803969] - [acpi] ACPI: EC: add support for hardware-reduced systems (Al Stone) [1803969] - [acpi] ACPI: EC: tweak naming in preparation for GpioInt support (Al Stone) [1803969] - [acpi] ACPI: button: Remove unused acpi_lid_notifier_register() functions (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Asus T200TA (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Medion Akoya E2215T (Al Stone) [1803969] - [acpi] ACPI: button: Turn lid_blacklst DMI table into a generic quirk table (Al Stone) [1803969] - [acpi] ACPI: button: Allow disabling LID support with the lid_init_state module option (Al Stone) [1803969] - [acpi] ACPI: button: Refactor lid_init_state module parsing code (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add dmi quirk for skipping _DEP check for some device-links (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add LNXVIDEO -> BYT I2C1 to lpss_device_links (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add LNXVIDEO -> BYT I2C7 to lpss_device_links (Al Stone) [1803969] - [acpi] ACPI / PMIC: Add Cherry Trail Crystal Cove PMIC OpRegion driver (Al Stone) [1803969] - [acpi] ACPI / PMIC: Add byt prefix to Crystal Cove PMIC OpRegion driver (Al Stone) [1803969] - [acpi] ACPI / PMIC: Do not register handlers for unhandled OpRegions (Al Stone) [1803969] - [acpi] ACPI: processor_idle: Skip dummy wait if kernel is in guest (Al Stone) [1803969] - [acpi] acpi: Use pr_warn instead of pr_warning (Al Stone) [1803969] - [acpi] ACPI: CPPC: Set pcc_datato NULL in acpi_cppc_processor_exit() (Al Stone) [1803969] - [mfd] rhel: constify some function arguments when searching for devices (Al Stone) [1803969] - [acpi] ACPI: platform: Unregister stale platform devices (Al Stone) [1803969] - [i2c] i2c: Revert incorrect conversion to use generic helper (Al Stone) [1803969] - [base] drivers: Introduce device lookup variants by ACPI_COMPANION device (Al Stone) [1803969] - [s390] drivers: s390/cio: Fix compilation warning about const qualifiers (Al Stone) [1803969] - [s390] driver_find_device: Unify the match function with class_find_device() (Al Stone) [1803969] - [acpi] ACPI / LPSS: Switch to use acpi_dev_hid_uid_match() (Al Stone) [1803969] - [acpi] ACPI / utils: Move acpi_dev_get_first_match_dev() under CONFIG_ACPI (Al Stone) [1803969] - [acpi] ACPI / utils: Describe function parameters in kernel-doc (Al Stone) [1803969] - [acpi] ACPI: Always build evged in (Al Stone) [1803969] - [acpi] ACPI: video: update doc for acpi_video_bus_DOS() (Al Stone) [1803969] - [acpi] ACPI: PM: Drop Dell XPS13 9360 from LPS0 Idle _DSM blacklist (Al Stone) [1803969] - [acpi] ACPI: HMAT: ACPI_HMAT_MEMORY_PD_VALID is deprecated since ACPI-6.3 (Al Stone) [1803969] - [acpi] i2c: imx: ACPI support for NXP i2c controller (Al Stone) [1803969] - [acpi] ACPI / PCI: fix acpi_pci_irq_enable() memory leak (Al Stone) [1803969] - [acpi] ACPI: custom_method: fix memory leaks (Al Stone) [1803969] - [acpi] ACPI: thermal: Remove redundant acpi_has_method() calls (Al Stone) [1803969] - [acpi] ACPI / property: Fix acpi_graph_get_remote_endpoint() name in kerneldoc (Al Stone) [1803969] - [acpi] ACPI / CPPC: do not require the _PSD method (Al Stone) [1803969] - [acpi] ACPI: SBS: remove unused const variable 'SMBUS_PEC' (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Always set up EC GPE for system wakeup (Al Stone) [1803969] - [platform] intel-hid: Disable button array during suspend-to-idle (Al Stone) [1803969] - [platform] intel-hid: intel-vbtn: Avoid leaking wakeup_mode set (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Missing power button release on some Dell models (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Convert to use SPDX identifier (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Add support for Device Specific Methods (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Avoid rearming SCI for wakeup unnecessarily (Al Stone) [1803969] - [base] PM / wakeup: Show wakeup sources stats in sysfs (Al Stone) [1803969] - [kernel] PM / wakeup: Use wakeup_source_register() in wakelock.c (Al Stone) [1803969] - [base] PM / wakeup: Drop wakeup_source_init(), wakeup_source_prepare() (Al Stone) [1803969] - [base] PM: sleep: Fix possible overflow in pm_system_cancel_wakeup() (Al Stone) [1803969] - [acpi] ACPI/PCI: Remove surplus parentheses from a return statement (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20190816 (Al Stone) [1803969] - [acpi] ACPICA: Add "Windows 2019" string to _OSI support (Al Stone) [1803969] - [acpi] ACPICA: Differentiate Windows 8.1 from Windows 8 (Al Stone) [1803969] - [acpi] ACPICA: Fully deploy ACPI_PRINTF_LIKE macro (Al Stone) [1803969] - [acpi] ACPICA: Fix issues with arg types within printf format strings (Al Stone) [1803969] - [acpi] ACPICA: Macros: remove pointer math on a null pointer (Al Stone) [1803969] - [acpi] ACPICA: Debugger: remove redundant assignment on obj_desc (Al Stone) [1803969] - [acpi] ACPI / APEI: Release resources if gen_pool_add() fails (Al Stone) [1803969] - [acpi] acpi: Use built-in RCU list checking for acpi_ioremaps list (Al Stone) [1803969] - [acpi] HMAT: Skip publishing target info for nodes with no online memory (Al Stone) [1803969] - [acpi] HMAT: Register attributes for memory hot add (Al Stone) [1803969] - [acpi] HMAT: Register memory-side cache after parsing (Al Stone) [1803969] - [acpi] ACPI / processor: don't print errors for processorIDs == 0xff (Al Stone) [1803969] - [acpi] ACPI: PM: Print debug messages on device power state changes (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Execute LPS0 _DSM functions with suspended devices (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Make acpi_ec_dispatch_gpe() print debug message (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Consolidate some code depending on PM_SLEEP (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Eliminate acpi_sleep_no_ec_events() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Switch EC over to polling during "noirq" suspend (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Add acpi.sleep_no_lps0 module parameter (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Rearrange lps0_device_attach() (Al Stone) [1803969] - [acpi] ACPI / APEI: Get rid of NULL_UUID_LE constant (Al Stone) [1803969] - [acpi] ACPI: PM: Set up EC GPE for system wakeup from drivers that need it (Al Stone) [1803969] - [acpi] PM: sleep: Simplify suspend-to-idle control flow (Al Stone) [1803969] - [kernel] PCI: irq: Introduce rearm_wake_irq() (Al Stone) [1803969] - [acpi] ACPI: PM: Set s2idle_wakeup earlier and clear it later (Al Stone) [1803969] - [acpi] ACPI: EC: Return bool from acpi_ec_dispatch_gpe() (Al Stone) [1803969] - [acpi] ACPICA: Return u32 from acpi_dispatch_gpe() (Al Stone) [1803969] - [kernel] kernel/sysctl.c: ignore out-of-range taint bits introduced via kernel.tainted (Rafael Aquini) [1845358] - [documentation] kernel: add panic_on_taint (Rafael Aquini) [1845358] - [mm] hugetlbfs: fix changes to command line processing (Baoquan He) [1823769] - [documentation] hugetlbfs: clean up command line processing (Baoquan He) [1823769] - [mm] hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate (Baoquan He) [1823769] - [mm] hugetlbfs: move hugepagesz= parsing to arch independent code (Baoquan He) [1823769] - [mm] mm: simplify MEMORY_ISOLATION && COMPACTION || CMA into CONTIG_ALLOC (Baoquan He) [1823769] - [mm] hugetlbfs: add arch_hugetlb_valid_size (Baoquan He) [1823769] - [mm] arm64/hugetlb: Use macros for contiguous huge page sizes (Baoquan He) [1823769] - [mm] arm64: hugetlb: Register hugepages during arch init (Baoquan He) [1823769] - [fs] xfs: prohibit fs freezing when using empty transactions (Brian Foster) [1845099] - [security] selinux: properly handle multiple messages in selinux_netlink_send() (Ondrej Mosnacek) [1839643] {CVE-2020-10751} - [mm] bdi: add a ->dev_name field to struct backing_dev_info (Ming Lei) [1788378] - [block] bdi: use bdi_dev_name() to get device name (Ming Lei) [1788378] - [mm] bdi: move bdi_dev_name out of line (Ming Lei) [1788378] - [fs] memcg: fix a crash in wb_workfn when a device disappears (Ming Lei) [1788378]- [tools] libbpf: provide backported RHEL symbols as upstream aliases 2 (Yauheni Kaliuta) [1813372] - [include] bpf: include/linux/bpf.h: fix spaces (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test for freplace program with expected_attach_type (Yauheni Kaliuta) [1813372] - [scripts] checkpatch: don't warn about new vsprintf pointer extension 'pe' (Yauheni Kaliuta) [1813372] - [s390] s390: enable bpf jit by default when not built as always-on (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Copy runqslower to OUTPUT directory (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix memory leak in test selector (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix huge memory leak in libbpf_find_vmlinux_btf_id() (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add runqslower binary to .gitignore (Yauheni Kaliuta) [1813372] - [net] bpf: Change kvfree to kfree in generic_map_lookup_batch() (Yauheni Kaliuta) [1813372] - [tools] bpf, selftests: Use bpf_probe_read_kernel (Yauheni Kaliuta) [1813372] - [net] bpf/cgroup: Replace rcu_swap_protected() with rcu_replace_pointer() (Yauheni Kaliuta) [1813372] - [net] bpf: Fix bug in mmap() implementation for BPF array map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Validate frozen map contents stays frozen (Yauheni Kaliuta) [1813372] - [net] bpf: Fix handling of XADD on BTF memory (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Run SYN cookies with reuseport BPF test only for TCP (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix typo in bash-completion (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix handling of optional field_name in btf_dump__emit_type_decl (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Declare bpf_log_buf variables as static (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix a couple of broken test_btf cases (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Enforce returning 0 for fentry/fexit programs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix BPF_KRETPROBE macro and use it in attach_probe test (Yauheni Kaliuta) [1813372] - [net] bpf: Propagate expected_attach_type when verifying freplace programs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix trampoline_count clean up logic (Yauheni Kaliuta) [1813372] - [net] bpf: Explicitly memset some bpf info structures declared on the stack (Yauheni Kaliuta) [1813372] - [net] bpf: Explicitly memset the bpf_attr structure (Yauheni Kaliuta) [1813372] - [net] bpf: Sanitize the bpf_struct_ops tcp-cc name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test for the packed enum member in struct/union (Yauheni Kaliuta) [1813372] - [net] bpf/btf: Fix BTF verification of enum members in struct/union (Yauheni Kaliuta) [1813372] - [net] bpf: Fix cgroup ref leak in cgroup_bpf_inherit on out-of-memory (Yauheni Kaliuta) [1813372] - [net] bpf: Initialize storage pointers to NULL to prevent freeing garbage pointer (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Add test for JMP32 JSET BPF_X with upper bits set (Yauheni Kaliuta) [1813372] - [x86] bpf, x32: Fix bug with JMP32 JSET BPF_X checking upper bits (Yauheni Kaliuta) [1813372] - [net] bpf: Do not allow map_freeze in struct_ops map (Yauheni Kaliuta) [1813372] - [net] bpf: Return better error value in delete_elem for struct_ops map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add send_signal_sched_switch test (Yauheni Kaliuta) [1813372] - [kernel] bpf: Fix deadlock with rq_lock in bpf_send_signal() (Yauheni Kaliuta) [1813372] - [net] bpf: Fix a potential deadlock with bpf_map_do_batch (Yauheni Kaliuta) [1813372] - [net] bpf: Do not grab the bucket spinlock by default on htab batch ops (Yauheni Kaliuta) [1813372] - [tools] libbpf: Sanitise internal map names so they are not rejected by the kernel (Yauheni Kaliuta) [1813372] - [tools] bpf, uapi: Remove text about bpf_redirect_map() giving higher performance (Yauheni Kaliuta) [1813372] - [net] bpf, offload: Replace bitwise AND by logical AND in bpf_prog_offload_info_fill (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Mark SYN cookie test skipped for UDP sockets (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix error checking on reading the tcp_fastopen sysctl (Yauheni Kaliuta) [1813372] - [net] bpf: Make btf_check_func_type_match() static (Yauheni Kaliuta) [1813372] - [tools] bpf: Selftests build error in sockmap_basic.c (Yauheni Kaliuta) [1813372] - [net] bpf: Improve bucket_log calculation logic (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test freeing sockmap/sockhash with a socket in it (Yauheni Kaliuta) [1813372] - [tools] tools/bpf/runqslower: Rebuild libbpf.a on libbpf source change (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix trampoline_count.c selftest compilation warning (Yauheni Kaliuta) [1813372] - [net] bpf: Fix modifier skipping logic (Yauheni Kaliuta) [1813372] - [tools] bpftool: Remove redundant "HAVE" prefix from the large INSN limit check (Yauheni Kaliuta) [1813372] - [tools] runqslower: Fix Makefile (Yauheni Kaliuta) [1813372] - [net] bpf: Reuse log from btf_prase_vmlinux() in btf_struct_ops_init() (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test based on port range for BPF flow dissector (Yauheni Kaliuta) [1813372] - [net] bpf: map_seq_next should always increase position index (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Allow overriding llvm tools for runqslower (Yauheni Kaliuta) [1813372] - [tools] selftest/bpf: Add test for allowed trampolines count (Yauheni Kaliuta) [1813372] - [net] bpf: Allow to resolve bpf trampoline and dispatcher in unwind (Yauheni Kaliuta) [1813372] - [net] bpf: Allow BTF ctx access for string pointers (Yauheni Kaliuta) [1813372] - [tools] libbpf: Improve handling of failed CO-RE relocations (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Reset global state between reuseport test runs (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Make reuseport test output more legible (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Ignore FIN packets for reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Use a temporary file in test_sockmap (Yauheni Kaliuta) [1813372] - [tools] bpftool: Print function linkage in BTF dump (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Improve bpftool changes detection (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Initialize duration variable before using (Yauheni Kaliuta) [1813372] - [tools] bpf: tcp: Add bpf_cubic example (Yauheni Kaliuta) [1813372] - [tools] bpf: Sync uapi bpf.h to tools/ (Yauheni Kaliuta) [1813372] - [net] bpf: Add BPF_FUNC_jiffies64 (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add tests for program extensions (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add support for program extensions (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce dynamic program extensions (Yauheni Kaliuta) [1813372] - [scripts] bpf, btf: Always output invariant hit in pahole DWARF to BTF transform (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Build urandom_read with LDFLAGS and LDLIBS (Yauheni Kaliuta) [1813372] - [net] bpf: Fix error path under memory pressure (Yauheni Kaliuta) [1813372] - [net] bpf: don't bother with getname/kern_path - use user_path_at (Yauheni Kaliuta) [1813372] - [tools] selftests: Refactor build to remove tools/lib/bpf from include path (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] bpftool: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] runsqslower: Support user-specified libbpf include and object paths (Yauheni Kaliuta) [1813372] - [tools] tools/runqslower: Remove tools/lib/bpf from include path (Yauheni Kaliuta) [1813372] - [tools] selftests: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] tools/runqslower: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] selftests: Pass VMLINUX_BTF to runqslower Makefile (Yauheni Kaliuta) [1813372] - [tools] tools/bpf/runqslower: Fix override option for VMLINUX_BTF (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Don't try to remove user's homedir on clean (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Skip perf hw events test if the setup disabled it (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Don't check for btf fd in test_btf (Yauheni Kaliuta) [1813372] - [net] bpf: Fix memory leaks in generic update/delete batch ops (Yauheni Kaliuta) [1813372] - [tools] libbpf: Load btf_vmlinux only once per object (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix potential multiplication overflow in mmap() size calculation (Yauheni Kaliuta) [1813372] - [tools] libbpf: Simplify BTF initialization logic (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix error handling bug in btf_dump__new (Yauheni Kaliuta) [1813372] - [net] bpf: Remove set but not used variable 'first_key' (Yauheni Kaliuta) [1813372] - [tools] libbpf: Revert bpf_helper_defs.h inclusion regression (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix test_progs send_signal flakiness with nmi mode (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix unneeded extra initialization in bpf_map_batch_common (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add whitelist/blacklist of test names to test_progs (Yauheni Kaliuta) [1813372] - [tools] bpftool: Support dumping a map with btf_vmlinux_value_type_id (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add struct_ops map name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose bpf_find_kernel_btf as a LIBBPF_API (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix missing BTF output for json during map dump (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix a leak of btf object (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add batch ops testing to array bpf map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add batch ops testing for htab and htab_percpu map (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add libbpf support to batch ops (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Sync uapi header bpf.h (Yauheni Kaliuta) [1813372] - [net] bpf: Add batch ops to all htab bpf map (Yauheni Kaliuta) [1813372] - [net] bpf: Add lookup and update batch ops to arraymap (Yauheni Kaliuta) [1813372] - [net] bpf: Add generic support for update and delete batch ops (Yauheni Kaliuta) [1813372] - [net] bpf: Add generic support for lookup batch op (Yauheni Kaliuta) [1813372] - [net] bpf: Add bpf_map_{value_size, update_value, map_copy_value} functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add a test for attaching a bpf fentry/fexit trace to an XDP program (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Add self tests for bpf_send_signal_thread() (Yauheni Kaliuta) [1813372] - [kernel] bpf: Add bpf_send_signal_thread() helper (Yauheni Kaliuta) [1813372] - [net] bpf: Fix seq_show for BPF_MAP_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Build runqslower from selftests (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Add runqslower tool to tools/bpf (Yauheni Kaliuta) [1813372] - [tools] bpftool: Apply preserve_access_index attribute to all types in BTF dump (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Conform selftests/bpf Makefile output to libbpf and bpftool (Yauheni Kaliuta) [1813372] - [scripts] libbpf: Clean up bpf_helper_defs.h generation output (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add BPF_PROG, BPF_KPROBE, and BPF_KRETPROBE macros (Yauheni Kaliuta) [1813372] - [tools] libbpf: Poison kernel-only integer types (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add unit tests for global functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Modify a test to check global functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add a test for a large global function (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add fexit-to-skb test for global funcs (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce function-by-function verification (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Further clean up Makefile output (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Ensure bpf_helper_defs.h are taken from selftests dir (Yauheni Kaliuta) [1813372] - [tools] libbpf,selftests/bpf: Fix clean targets (Yauheni Kaliuta) [1813372] - [tools] libbpf: Make bpf_map order and indices stable (Yauheni Kaliuta) [1813372] - [tools] bpf: Document BPF_F_QUERY_EFFECTIVE flag (Yauheni Kaliuta) [1813372] - [tools] bpf: Add bpf_dctcp example (Yauheni Kaliuta) [1813372] - [tools] bpf: libbpf: Add STRUCT_OPS support (Yauheni Kaliuta) [1813372] - [tools] bpf: Synch uapi bpf.h to tools/ (Yauheni Kaliuta) [1813372] - [net] bpf: Add BPF_FUNC_tcp_send_ack helper (Yauheni Kaliuta) [1813372] - [net] bpf: tcp: Support tcp_congestion_ops in bpf (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF_MAP_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF_PROG_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [net] bpf: Support bitfield read access in btf_struct_access (Yauheni Kaliuta) [1813372] - [net] bpf: Add enum support to btf_ctx_access() (Yauheni Kaliuta) [1813372] - [net] bpf: Avoid storing modifier to info->btf_id (Yauheni Kaliuta) [1813372] - [net] bpf: Save PTR_TO_BTF_ID register state when spilling to stack (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Restore original comm in test_overhead (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add misc section and probe for large INSN limit (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add probe for large INSN limit (Yauheni Kaliuta) [1813372] - [tools] bpftool: Make skeleton C code compilable with C++ compiler (Yauheni Kaliuta) [1813372] - [tools] bpf: Print error message for bpftool cgroup show (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify transmit fill pattern (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify tx packet size (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify number of packets to send (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify batch size (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Use common code to handle signal and main exit (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add duration option to specify how long to run (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Preserve errno in test_progs CHECK macros (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test BPF_F_REPLACE in cgroup_attach_multi (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Convert test_cgroup_attach to prog_tests (Yauheni Kaliuta) [1813372] - [tools] libbpf: Introduce bpf_prog_attach_xattr (Yauheni Kaliuta) [1813372] - [net] bpf: Support replacing cgroup-bpf program in MULTI mode (Yauheni Kaliuta) [1813372] - [net] bpf: Remove unused new_flags in hierarchy_allows_attach() (Yauheni Kaliuta) [1813372] - [net] bpf: Simplify __cgroup_bpf_attach (Yauheni Kaliuta) [1813372] - [net] bpf: Remove unnecessary assertion on fp_old (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix another __u64 printf warning (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix printing of ulimit value (Yauheni Kaliuta) [1813372] - [tools] libbpf: BTF is required when externs are present (Yauheni Kaliuta) [1813372] - [tools] libbpf: Allow to augment system Kconfig through extra optional config (Yauheni Kaliuta) [1813372] - [tools] libbpf: Put Kconfig externs into .kconfig section (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add bpf_link__disconnect() API to preserve underlying BPF resource (Yauheni Kaliuta) [1813372] - [tools] bpf: Allow to change skb mark in test_run (Yauheni Kaliuta) [1813372] - [tools] bpftool: Work-around rst2man conversion bug (Yauheni Kaliuta) [1813372] - [tools] bpftool: Simplify format string to not use positional args (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add gen subcommand manpage (Yauheni Kaliuta) [1813372] - [tools] libbpf: Remove BPF_EMBED_OBJ macro from libbpf.h (Yauheni Kaliuta) [1813372] - [tools] bpftool, selftests/bpf: Embed object file inside skeleton (Yauheni Kaliuta) [1813372] - [tools] libbpf: Reduce log level for custom section names (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix libbpf_common.h when installing libbpf through 'make install' (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: More succinct Makefile output (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add zlib as a dependency in pkg-config template (Yauheni Kaliuta) [1813372] - [tools] libbpf: Print hint about ulimit when getting permission denied error (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Attach XDP programs in driver mode by default (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Set -fno-stack-protector when building BPF programs (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Add missing -lz to TPROGS_LDLIBS (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix compilation warning on shadowed variable (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix build by renaming variables (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add flexible array relocation tests (Yauheni Kaliuta) [1813372] - [tools] libbpf: Support flexible arrays in CO-RE (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add tests for libbpf-provided externs (Yauheni Kaliuta) [1813372] - [tools] bpftool: Generate externs datasec in BPF skeleton (Yauheni Kaliuta) [1813372] - [tools] libbpf: Support libbpf-provided extern variables (Yauheni Kaliuta) [1813372] - [tools] libbpf: Extract internal map names into constants (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add `gen skeleton` BASH completions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test validating data section to struct convertion layout (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Convert few more selftest to skeletons (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add BPF skeletons selftests and convert attach_probe.c (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add skeleton codegen command (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add BPF object skeleton support (Yauheni Kaliuta) [1813372] - [tools] libbpf: Reduce log level of supported section names dump (Yauheni Kaliuta) [1813372] - [tools] libbpf: Postpone BTF ID finding for TRACING programs to load phase (Yauheni Kaliuta) [1813372] - [tools] libbpf: Refactor global data map initialization (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose BPF program's function name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose BTF-to-C type declaration emitting API (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose btf__align_of() API (Yauheni Kaliuta) [1813372] - [tools] libbpf: Extract common user-facing helpers (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add BPF_EMBED_OBJ macro for embedding BPF .o files (Yauheni Kaliuta) [1813372] - [tools] libbpf: Move non-public APIs from libbpf.h to libbpf_internal.h (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add generic bpf_program__attach() (Yauheni Kaliuta) [1813372] - [tools] libbpf: Don't require root for bpf_object__open() (Yauheni Kaliuta) [1813372] - [tools] bpftool: Match maps by name (Yauheni Kaliuta) [1813372] - [tools] bpftool: Match programs by name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test wire_len/gso_segs in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [net] bpf: Expose __sk_buff wire_len/gso_segs to BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [x86] bpf, x86: Align dispatcher branch targets to 16B (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Add xdp_perf test (Yauheni Kaliuta) [1813372] - [net] bpf: Start using the BPF dispatcher in BPF_TEST_RUN (Yauheni Kaliuta) [1813372] - [net] bpf, xdp: Start using the BPF dispatcher for XDP (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF dispatcher (Yauheni Kaliuta) [1813372] - [net] bpf: Move trampoline JIT image allocation to a function (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add CPU mask parsing tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Switch reuseport tests for test_progs framework (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Move reuseport tests under prog_tests/ (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Pull up printing the test name into test runner (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Propagate errors during setup for reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Run reuseport tests in a loop (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Unroll the main loop in reuseport test (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add helpers for getting socket family & type name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Use sa_family_t everywhere in reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Let libbpf determine program type from section name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Recognize SK_REUSEPORT programs from section name (Yauheni Kaliuta) [1813372] - [arm64] bpf, x86, arm64: Enable jit by default when not built as always-on (Yauheni Kaliuta) [1813372] - [net] bpf: Switch to offsetofend in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [tools] libbpf: Bump libpf current version to v0.0.7 (Yauheni Kaliuta) [1813372] - [fs] vmalloc: fix remap_vmalloc_range() bounds checks (Yauheni Kaliuta) [1813370] - [net] bpf: Prevent re-mmap()'ing BPF map as writable for initially r/o mapping (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: fix test_sysctl_prog with alu32 (Yauheni Kaliuta) [1813370] - [powerpc] powerpc/bpf: Enable bpf_probe_read{, str}() on powerpc again (Yauheni Kaliuta) [1813370] - [kernel] bpf: Restrict bpf_trace_printk()'s s usage and add pks, pus specifier (Yauheni Kaliuta) [1813370] - [lib] printf: add support for printing symbolic error names (Yauheni Kaliuta) [1813370] - [net] bpf: Add bpf_probe_read_{user, kernel}_str() to do_refine_retval_range (Yauheni Kaliuta) [1813370] - [arm64] bpf: Restrict bpf_probe_read{, str}() only to archs where they work (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Fix accounting bug with direct->count in register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Return the first found result in lookup_rec() (Yauheni Kaliuta) [1813370] - [net] bpf: Undo incorrect __reg_bound_offset32 handling (Yauheni Kaliuta) [1813370] - [net] bpf: Fix tnum constraints for 32-bit comparisons (Yauheni Kaliuta) [1813370] - [x86] x86: Fix kernel-doc atomic.h warnings (Yauheni Kaliuta) [1813370] - [net] bpf: Fix trampoline usage in preempt (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Reintroduce missed build targets (Yauheni Kaliuta) [1813370] - [trace] bpf: Reliably preserve btf_trace_xxx types (Yauheni Kaliuta) [1813370] - [include] bpf: Avoid setting bpf insns pages read-only when prog is jited (Yauheni Kaliuta) [1813370] - [scripts] bpf: Force .BTF section start to zero when dumping from vmlinux (Yauheni Kaliuta) [1813370] - [scripts] bpf: Support pre-2.25-binutils objcopy for vmlinux BTF (Yauheni Kaliuta) [1813370] - [net] bpfilter: remove superfluous testing message (Jiri Benc) [1819632] - [net] bpfilter: fix dprintf usage for /dev/kmsg (Jiri Benc) [1819632] - [net] bpf, sockmap: Remove bucket->lock from sock_{hash|map}_free (Jiri Benc) [1819632] - [netdrv] veth: ignore peer tx_dropped when counting local rx_dropped (Jiri Benc) [1819632] - [net] xsk: Publish global consumer pointers when NAPI is finished (Jiri Benc) [1819632] - [kernel] bpf, xdp: Remove no longer required rcu_read_{un}lock() (Jiri Benc) [1819632] - [netdrv] bpf, xdp: virtio_net use access ptr macro for xdp enable check (Jiri Benc) [1819632] - [kernel] bpf, xdp: Update devmap comments to reflect napi/rcu usage (Jiri Benc) [1819632] - [net] xsk, net: Make sock_def_readable() have external linkage (Jiri Benc) [1819632] - [kernel] devmap: Adjust tracepoint for map-less queue flush (Jiri Benc) [1819632] - [net] xdp: Use bulking for non-map XDP_REDIRECT and consolidate code paths (Jiri Benc) [1819632] - [net] xdp: Move devmap bulk queue into struct net_device (Jiri Benc) [1819632] - [net] xsk: Support allocations of large umems (Jiri Benc) [1819632] - [tools] Sync uapi/linux/if_link.h (Jiri Benc) [1819632] - [net] bpf: Return -EBADRQC for invalid map type in __bpf_tx_xdp_map (Jiri Benc) [1819632] - [net] flow_dissector: fix document for skb_flow_get_icmp_tci (Jiri Benc) [1819632] - [net] xsk: Use struct_size() helper (Jiri Benc) [1819632] - [net] xsk: Add function naming comments and reorder functions (Jiri Benc) [1819632] - [net] xsk: Remove unnecessary READ_ONCE of data (Jiri Benc) [1819632] - [net] xsk: ixgbe: i40e: ice: mlx5: Xsk_umem_discard_addr to xsk_umem_release_addr (Jiri Benc) [1819632] - [net] xsk: Change names of validation functions (Jiri Benc) [1819632] - [net] xsk: Simplify the consumer ring access functions (Jiri Benc) [1819632] - [net] xsk: Simplify xskq_nb_avail and xskq_nb_free (Jiri Benc) [1819632] - [net] xsk: Eliminate the RX batch size (Jiri Benc) [1819632] - [net] xsk: Standardize naming of producer ring access functions (Jiri Benc) [1819632] - [net] xsk: Consolidate to one single cached producer pointer (Jiri Benc) [1819632] - [net] xsk: Simplify detection of empty and full rings (Jiri Benc) [1819632] - [net] xsk: Eliminate the lazy update threshold (Jiri Benc) [1819632] - [net] xdp: Simplify __bpf_tx_xdp_map() (Jiri Benc) [1819632] - [net] xdp: Remove map_to_flush and map swap detection (Jiri Benc) [1819632] - [net] xdp: Make cpumap flush_list common for all map instances (Jiri Benc) [1819632] - [net] xdp: Make devmap flush_list common for all map instances (Jiri Benc) [1819632] - [net] xsk: Make xskmap flush_list common for all map instances (Jiri Benc) [1819632] - [kernel] xdp: Fix graze->grace type-o in cpumap comments (Jiri Benc) [1819632] - [kernel] xdp: Simplify cpumap cleanup (Jiri Benc) [1819632] - [kernel] xdp: Simplify devmap cleanup (Jiri Benc) [1819632] - [net] sysctl: Fix compiler warning when only cBPF is present (Jiri Benc) [1819631] - [net] dsa: fix flow dissection on Tx path (Jiri Benc) [1819631] - [net] page_pool: add the possibility to sync DMA memory for device (Jiri Benc) [1819631] - [net] xsk: Fix xsk_poll()'s return type (Jiri Benc) [1819631] - [tools] net-af_xdp: Use correct number of channels from ethtool (Jiri Benc) [1819631] - [net] xdp: remove memory poison on free for struct xdp_mem_allocator (Jiri Benc) [1819631] - [documentation] xsk: Extend documentation for Rx|Tx-only sockets and shared umems (Jiri Benc) [1819631] - [net] xsk: Restructure/inline XSKMAP lookup/redirect/flush (Jiri Benc) [1819631] - [kernel] xsk: Store struct xdp_sock as a flexible array member of the XSKMAP (Jiri Benc) [1819631] - [include] xdp: Fix type of string pointer in __XDP_ACT_SYM_TAB (Jiri Benc) [1819631] - [documentation] xsk: Improve documentation for AF_XDP (Jiri Benc) [1819631] - [tools] Sync if_link.h (Jiri Benc) [1819631] - [net] xdp: Trivial, fix spelling in function description (Jiri Benc) [1819631] - [netdrv] netdevsim: Use scnprintf() for avoiding potential buffer overflow (Jiri Benc) [1819631] - [netdrv] netdevsim: fix ptr_ret.cocci warnings (Jiri Benc) [1819631] - [netdrv] netdevsim: remove unused sdev code (Jiri Benc) [1819631] - [netdrv] netdevsim: use IS_ERR instead of IS_ERR_OR_NULL for debugfs (Jiri Benc) [1819631] - [netdrv] netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init() (Jiri Benc) [1819631] - [netdrv] netdevsim: fix panic in nsim_dev_take_snapshot_write() (Jiri Benc) [1819631] - [net] openvswitch: New MPLS actions for layer 2 tunnelling (Guillaume Nault) [1839760] - [net] Rephrased comments section of skb_mpls_pop() (Guillaume Nault) [1839760] - [net] skb_mpls_push() modified to allow MPLS header push at start of packet. (Guillaume Nault) [1839760] - [net] Change in Openvswitch to support MPLS label depth of 3 in ingress direction (Guillaume Nault) [1839182] - [block] block: fix use-after-free on cached last_lookup partition (Ming Lei) [1787968]- [drm] drm/prime: fix extracting of the DMA addresses from a scatterlist (Jerry Snitselaar) [1815610] - [iommu] iommu: Check for deferred attach in iommu_group_do_dma_attach() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add get_domain_info() helper (Jerry Snitselaar) [1815610] - [iommu] iommu: Don't take group reference in iommu_alloc_default_domain() (Jerry Snitselaar) [1815610] - [iommu] iommu: Don't call .probe_finalize() under group->mutex (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Apply per-device dma_ops (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allow PCI sub-hierarchy to use DMA domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allow 32bit devices to uses DMA domain (Jerry Snitselaar) [1815610] - [iommu] iommu: Do not probe devices on IOMMU-less busses (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix variable "iommu" set but not used (Jerry Snitselaar) [1815610] - [iommu] iommu: Unexport iommu_group_get_for_dev() (Jerry Snitselaar) [1815610] - [iommu] iommu: Move more initialization to __iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove add_device()/remove_device() code-paths (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Axe a useless test in 'arm_smmu_master_alloc_smes()' (Jerry Snitselaar) [1815610] - [iommu] iommu/s390: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove dev_data->passthrough (Jerry Snitselaar) [1815610] - [iommu] iommu: Export bus_iommu_probe() and make is safe for re-probing (Jerry Snitselaar) [1815610] - [iommu] iommu: Move iommu_group_create_direct_mappings() out of iommu_group_add_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Split off default domain allocation from group assignment (Jerry Snitselaar) [1815610] - [iommu] iommu: Move new probe_device path to separate function (Jerry Snitselaar) [1815610] - [iommu] iommu: Keep a list of allocated groups in __iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Move default domain allocation to iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Add probe_device() and release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Return -ENODEV in add_device when device is not handled by IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove dma_mask check from check_device() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Wire up iommu_ops->def_domain_type (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Implement iommu_ops->def_domain_type call-back (Jerry Snitselaar) [1815610] - [iommu] iommu: Add def_domain_type() callback in iommu_ops (Jerry Snitselaar) [1815610] - [iommu] iommu: Move default domain allocation to separate function (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix reference count leak in iommu_group_alloc (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove real DMA lookup in find_domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allocate domain info for real DMA sub-devices (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Only clear real DMA device's context entries (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix get_acpihid_device_id() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Switch to use acpi_dev_hid_uid_match() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix over-read of ACPI UID from IVRS table (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix deferred domain attachment (Jerry Snitselaar) [1815610] - [include] iommu: Move fwspec->iommu_priv to struct dev_iommu (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Use accessor functions for iommu private data (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Refactor master_cfg/fwspec usage (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Use accessor functions for iommu private data (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Improve add_device() error handling (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Return -EBUSY when trying to re-add a device (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Fix resource_size check (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Drop __GFP_ZERO flag from DMA allocation (Jerry Snitselaar) [1815610] - [include] iommu: Introduce accessors for iommu private data (Jerry Snitselaar) [1815610] - [acpi] ACPI/IORT: Remove direct access of dev->iommu_fwspec (Jerry Snitselaar) [1815610] - [include] iommu: Define dev_iommu_fwspec_get() for !CONFIG_IOMMU_API (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not flush Device Table in iommu_map_page() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Update Device Table in increase_address_space() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Call domain_flush_complete() in update_domain() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not loop forever when trying to increase address space (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix race in increase_address_space()/fetch_pte() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix the memory leak in dev_iommu_free() (Jerry Snitselaar) [1815610] - [include] iommu: Move iommu_fwspec to struct dev_iommu (Jerry Snitselaar) [1815610] - [include] iommu: Rename struct iommu_param to dev_iommu (Jerry Snitselaar) [1815610] - [iommu] iommu/of: Take a ref to the IOMMU driver during ->of_xlate() (Jerry Snitselaar) [1815610] - [iommu] drivers/iommu: Take a ref to the IOMMU driver prior to ->add_device() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix mm reference leak (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix the configuration of GCR3 table root pointer (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Silence RCU-list debugging warning in dmar_find_atsr() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix page request descriptor size (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Populate debugfs if IOMMUs are detected (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Ignore devices with out-of-spec domain number (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix the wrong printing in RHSA parsing (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix debugfs register reads (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: quirk_ioat_snb_local_iommu: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: dmar_parse_one_rmrr: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: dmar: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Silence RCU-list debugging warnings (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix RCU-list bugs in intel_iommu_init() (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Fix MSI reservation allocation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix a bug in intel_iommu_iova_to_phys() for huge page (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Disable IOMMU on Stoney Ridge systems (Jerry Snitselaar) [1815610] - [iommu] iommu: intel: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: amd: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: arm: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: Implement generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu/iova: Silence warnings under memory pressure (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix Kconfig indentation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove unnecessary WARN_ON_ONCE() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Unnecessary to handle default identity domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add RMRR base and end addresses sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Mark firmware tainted if RMRR fails sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Don't reject Host Bridge due to scope mismatch (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Loose requirement for flush queue initializaton (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid iova flush queue in strict mode (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: trace: Extend map_sg trace event (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid sending invalid page response (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix off-by-one in PASID allocation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid duplicated code for PASID setup (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Reject SVM bind for failed capability check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Match CPU and IOMMU paging mode (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix CPU and IOMMU SVM feature matching checks (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove VMD child device sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use pci_real_dma_dev() for mapping (Jerry Snitselaar) [1815610] - [pci] PCI: Introduce pci_real_dma_dev() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove the unnecessary assignment (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unused struct member (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Replace two consecutive readl calls with one readq (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix typos for PPR macros (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove local variables (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unused variable (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Only support x2APIC with IVHD type 11h/40h (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Check feature support bit before accessing MSI capability registers (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Treat per-device exclusion ranges as r/w unity-mapped regions (Jerry Snitselaar) [1815610] - [iommu] iommu: Use C99 flexible array in fwspec (Jerry Snitselaar) [1833512 1815610] - [iommu] drivers/iommu: Allow IOMMU bus ops to be unregistered (Jerry Snitselaar) [1815610] - [iommu] iommu/of: Request ACS from the PCI core when configuring IOMMU linkage (Jerry Snitselaar) [1815610] - [iommu] drivers/iommu: Export core IOMMU API symbols to permit modular drivers (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix IOMMU perf counter clobbering during init (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: fix variable 'cookie' set but not used (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Unlink device if failed to add to group (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove device link to group on failure (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix adding non-PCI devices to Intel IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Relax locking in iommu_dma_prepare_msi() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove incorrect PSI capability check (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Rationalise types for DMA masks (Jerry Snitselaar) [1815610] - [iommu] iommu/iova: Init the struct iova to fix the possible memleak (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Check VT-d RMRR region in BIOS is reported as reserved (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Turn off translations at shutdown (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Support multiple PCI DMA aliases in device table (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not re-fetch iommu->cmd_buf_tail (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Pass gfp flags to iommu_map_page() in amd_iommu_map() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Simpify decoding logic for INVALID_PPR_REQUEST event (Jerry Snitselaar) [1815610] - [drm] drm/prime: use dma length macro when mapping sg (Jerry Snitselaar) [1815610] - [drm] drm/amdgpu: fix scatter-gather mapping with user pages (Jerry Snitselaar) [1815610] - [drm] drm/radeon: fix scatter-gather mapping with user pages (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Convert AMD iommu driver to the dma-iommu api (Jerry Snitselaar) [1815610] - [iommu] iommu/dma-iommu: Use the dev->coherent_dma_mask (Jerry Snitselaar) [1815610] - [iommu] iommu/dma-iommu: Handle deferred devices (Jerry Snitselaar) [1815610] - [include] iommu: KABI cleanup (Jerry Snitselaar) [1815610] - [iommu] iommu: Add gfp parameter to iommu_ops::map (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unnecessary locking from AMD iommu driver (Jerry Snitselaar) [1815610] - [iommu] drivers: iommu: hyperv: Make HYPERV_IOMMU only available on x86 (Jerry Snitselaar) [1815610] - [include] iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros (Jerry Snitselaar) [1815610] - [iommu] iommu: pass cell_count = -1 to of_for_each_phandle with cells_name (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Free context bitmap in the err path of arm_smmu_init_domain_context (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Return the correct dma mask when we are bypassing the IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41 (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Mask TLBI address correctly (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove wrong default domain comments (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Fix for dereferencing before null checking (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Declare Broadwell igfx dmar support snafu (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add Scalable Mode fault information (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use bounce buffer for untrusted devices (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add trace events for device dma map/unmap (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Don't switch off swiotlb if bounce page is used (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Check whether device requires bounce buffer (Jerry Snitselaar) [1815610] - [dma] swiotlb: Split size parameter to map/unmap APIs (Jerry Snitselaar) [1815610] - [xen] swiotlb-xen: use ->map_page to implement ->map_sg (Jerry Snitselaar) [1815610] - [xen] swiotlb-xen: make instances match their method names (Jerry Snitselaar) [1815610] - [uapi] iommu: Add padding to struct iommu_fault (Jerry Snitselaar) [1815610] - [iommu] iommu: Add recoverable fault reporting (Jerry Snitselaar) [1815610] - [iommu] iommu: Introduce device fault report API (Jerry Snitselaar) [1815610] - [include] driver core: Add per device iommu param (Jerry Snitselaar) [1815610] - [uapi] iommu: Introduce device fault data (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Silence warnings under memory pressure (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Override wrong IVRS IOAPIC on Raven Ridge systems (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use dma_direct for bypass devices (Jerry Snitselaar) [1815610] - [dma] dma-direct: don't check swiotlb=force in dma_direct_map_resource (Jerry Snitselaar) [1815610] - [mm] dma-mapping: remove the default map_resource implementation (Jerry Snitselaar) [1815610] - [iommu] Revert "iommu/vt-d: Fix lock inversion between iommu->lock and device_domain_lock" (Jerry Snitselaar) [1815610 1813666] - [dma] dma-direct: don't truncate dma_required_mask to bus addressing capabilities (Jerry Snitselaar) [1815610] - [acpi] ACPI / utils: Introduce acpi_dev_hid_uid_match() helper (Jerry Snitselaar) [1815610] - [security] efi: Only print errors about failing to get certs if EFI vars are found (Lenny Szubowicz) [1804969] - [infiniband] RDMA/iw_cxgb4: Fix incorrect function parameters (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cxgb4: initiate CLOSE when entering TERM (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cgxb4: Fix an error handling path in 'c4iw_connect()' (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case (Vishal Kulkarni) [1828676] - [infiniband] iw_cxgb4: fix ECN check on the passive accept (Vishal Kulkarni) [1828676] - [vfio] vfio/pci: fix memory leaks of eventfd ctx (Alex Williamson) [1837678] - [vfio] vfio/pci: fix memory leaks in alloc_perm_bits() (Alex Williamson) [1837678] - [vfio] vfio: avoid possible overflow in vfio_iommu_type1_pin_pages (Alex Williamson) [1837678] - [vfio] vfio/mdev: make create attribute static (Alex Williamson) [1837678] - [vfio] vfio/type1: remove hugepage checks in is_invalid_reserved_pfn() (Alex Williamson) [1837678] - [vfio] vfio/type1: Initialize resv_msi_base (Alex Williamson) [1837678] - [vfio] vfio_pci: Restore original state on release (Alex Williamson) [1837678] - [uapi] vfio: re-arrange vfio region definitions (Alex Williamson) [1837678] - [vfio] mdev: Send uevents around parent device registration (Alex Williamson) [1837678] - [vfio] vfio/mdev: Synchronize device create/remove with parent removal (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid creating sysfs remove file on stale device removal (Alex Williamson) [1837678] - [vfio] vfio/mdev: Improve the create/remove sequence (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid inline get and put parent helpers (Alex Williamson) [1837678] - [vfio] vfio/mdev: Fix aborting mdev child device removal if one fails (Alex Williamson) [1837678] - [vfio] vfio/mdev: Follow correct remove sequence (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid masking error code to EBUSY (Alex Williamson) [1837678] - [vfio] vfio/mdev: Removed unused kref (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid release parent reference during error path (Alex Williamson) [1837678] - [uapi] vfio-ccw: add handling for async channel instructions (Alex Williamson) [1837678] - [uapi] vfio-ccw: add capabilities chain (Alex Williamson) [1837678] - [vfio] vfio: Fix WARNING "do not call blocking ops when !TASK_RUNNING" (Alex Williamson) [1837678] - [vfio] vfio/pci: use correct format characters (Alex Williamson) [1837678] - [vfio] vfio: expand minor range when registering chrdev region (Alex Williamson) [1837678] - [vfio] vfio/mdev: add static modifier to add_mdev_supported_type (Alex Williamson) [1837678] - [vfio] vfio/type1: Remove map_try_harder() code path (Alex Williamson) [1837678] - [vfio] vfio/pci: Fix potential memory leak in vfio_msi_cap_len (Alex Williamson) [1837678] - [vfio] vfio: Mark expected switch fall-throughs (Alex Williamson) [1837678] - [fs] gfs2: Only do glock put in gfs2_create_inode for free inodes (Robert S Peterson) [1831666] - [fs] gfs2: Grab glock reference sooner in gfs2_add_revoke (Robert S Peterson) [1831666] - [fs] Revert "gfs2: Don't demote a glock until its revokes are written" (Robert S Peterson) [1831666] - [fs] signal: Fix wrong PIDTYPE_TGID check in send_sigio() & send_sigurg() (Waiman Long) [1845597] - [md] dm mpath: add DM device name to Failing/Reinstating path log messages (Mike Snitzer) [1822975] - [md] dm mpath: enhance queue_if_no_path debugging (Mike Snitzer) [1822975] - [md] dm mpath: restrict queue_if_no_path state machine (Mike Snitzer) [1822975] - [md] dm mpath: simplify __must_push_back (Mike Snitzer) [1822975] - [md] dm: use DMDEBUG macros now that they use pr_debug variants (Mike Snitzer) [1822975] - [include] dm: use dynamic debug instead of compile-time config option (Mike Snitzer) [1822975] - [md] dm mpath: switch paths in dm_blk_ioctl() code path (Mike Snitzer) [1822975] - [md] dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath (Mike Snitzer) [1822975] - [tools] selftests: mlxsw: qos_mc_aware: Specify arping timeout as an integer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload fails (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl_tcam: Position vchunk in a vregion list properly (Ivan Vecera) [1821646] - [netdrv] mlxsw: Fix some IS_ERR() vs NULL bugs (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_VLAN_MANGLE (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_PRIORITY (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: fix unintention integer overflow on left shift (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap policers (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add support for setting of packet trap group parameters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Switch to use correct packet trap group (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Do not initialize dedicated discard policer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add devlink-trap policer support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Prepare policers for registration with devlink (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Track used packet trap policer IDs (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend QPCR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_ptp: Fix build warnings (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Avoid uninitialized symbol errors (Ivan Vecera) [1821646] - [netdrv] mlxsw: switchx2: Remove unnecessary conversion to bool (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl: Avoid defining static variable in header file (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remove unused RIF and FID families (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Add proper function documentation (Ivan Vecera) [1821646] - [netdrv] mlxsw: i2c: Add missing field documentation (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Fix list iteration in error path (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_dscp_router: Test no DSCP rewrite after pedit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Offload FLOW_ACTION_MANGLE (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add DSCP, ECN, dscp_rw to QOS_ACTION (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Rename mlxsw_afa_qos_cmd to mlxsw_afa_qos_switch_prio_cmd (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Explicitly register packet trap groups (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Fix 64-bit division in mlxsw_sp_counter_resources_register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Offload FLOW_ACTION_PRIORITY (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add QOS_ACTION (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Only issue reset when system is ready (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add tc action hw_stats tests (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Expose devlink resource occupancy for counters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Consolidate subpools initialization (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Move config validation along with resource register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Expose subpool sizes over devlink resources (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Add entry_size_res_id for each subpool and use it to query entry size (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Move sub_pools under per-instance pool struct (Ivan Vecera) [1821646] - [tools] selftests: spectrum-2: Adjust tc_flower_scale limit according to current counter count (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Query bank size from FW resources (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase register field length to 31 bits (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: RED: Test RED ECN nodrop offload (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Offload RED ECN nodrop mode (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Ask device for rule stats only if counter was created (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of FIFO Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Add handle parameter to ..._ops.replace (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Introduce struct mlxsw_sp_qdisc_state (Ivan Vecera) [1821646] - [netdrv] net: mlxfw: Replace zero-length array with flexible-array member (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_defprio: Use until_counter_is (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Wait longer before accessing the device after reset (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Update module_type values in PMTM register and map them to width (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: resource_scale: Invoke for Spectrum-3 (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Reduce router scale running time using offload indication (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Reduce running time using offload indication (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add shared buffer traffic test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add mlxsw lib (Ivan Vecera) [1821646] - [tools] selftests: devlink_lib: Add devlink port helpers (Ivan Vecera) [1821646] - [tools] selftests: devlink_lib: Check devlink info command is supported (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add shared buffer configuration test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in rtnetlink test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in vxlan test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in blackhole routes test (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_l3_drops: Avoid race condition (Ivan Vecera) [1821646] - [tools] selftests: add a mirror test to mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [tools] selftests: add egress redirect test to mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add mlxsw_sp_span_ops.buffsize_get for Spectrum-3 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Initialize advertised speeds to supported speeds (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Move the ECN-marked packet counter to ethtool (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Optimize SFN records processing (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Lookup and pass cookie down to devlink_trap_report() (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Extract cookie index for ACL discard trap packets (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Implement flow_offload action cookie offload (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Add trap with userdef action (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: fix spelling mistake: "progamming" -> "programming" (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_acl_drops: Add ACL traps test (Ivan Vecera) [1821646] - [tools] selftests: pass pref and handle to devlink_trap_drop_* helpers (Ivan Vecera) [1821646] - [tools] selftests: introduce test for mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add ACL devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Introduce dummy group with thin policer (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend MLXSW_RXL_DIS to register disabled trap group (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Allow to enable/disable rx_listener for trap (Ivan Vecera) [1821646] - [netdrv] mlxsw: acl_flex_actions: Trap all ACL dropped packets to DISCARD_*_ACL traps (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Pass the ingress indication down to flex action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Disable mixed bound blocks to contain action drop (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Track ingress and egress block bindings (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Prepare mlxsw_core_trap_action_set() to handle not only action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Use listener->en/dis_action instead of hard-coded values (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Allow to register disabled traps using MLXSW_RXL_DIS (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Set unreg_action to be SET_FW_DEFAULT (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Remove unused values (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove priv from listener equality comparison (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Make block arg const where appropriate (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Make global arrays const as they should be (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove initialization to false of mlxsw_listener struct (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Convert is_event and is_ctrl bools to be single bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove dummy union name from struct mlxsw_listener (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove unused action field from mlxsw_rx_listener struct (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Move policer initialization to mlxsw_sp_trap_init() (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Rename Trap / Discard Action to Trap Action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Move functions to avoid their forward declarations (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Use err variable instead of directly checking func return value (Ivan Vecera) [1821646] - [netdrv] net/mlx5: Add fsm_reactivate callback support (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Add reactivate flow support to FSM burn flow (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Use MLXFW_ERR_MSG macro for error reporting (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Convert pr_* to dev_* in mlxfw_fsm.c (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: More error messages coverage (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Improve FSM err message reporting and return codes (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Generic mlx FW flash status notify (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remove RTNL where possible (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from exported helpers (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from inetaddr listeners (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from netdev listener (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dpipe: Take router lock from dpipe code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from inside routing code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Introduce router lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Store NVE decapsulation configuration in router (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Expose router struct to internal users (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Protect multicast route list with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Protect multicast table list with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Publish multicast route after writing it to the device (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_nve: Make tunnel initialization symmetric (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Export function to check if RIF exists (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Prevent RIF access outside of routing code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Prepare function for router lock introduction (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Prepare function for router lock introduction (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken when resolving underlay device (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken during RIF teardown (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken during nexthop init (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Only update mirroring agents if present (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Convert callers to use new mirroring API (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Prepare work item to update mirroring agents (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Use struct_size() to simplify allocation (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Do no expose mirroring agents to entire driver (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Protect counter pool with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_kvdl: Protect allocations with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: Replace zero-length array with flexible-array member (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: vxlan: Add test for error path (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: vxlan: Adjust test to recent changes (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: extack: Test creation of multiple VLAN-aware bridges (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: extack: Test bridge creation with VXLAN (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Remove deprecated test (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Reduce dependency between bridge and router code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Remove VXLAN checks during FID membership (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Have VXLAN device take reference on FID (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack to bridge creation function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_fid: Use 'refcount_t' for FID reference counting (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dpipe: Add missing error path (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add validation of hardware device types for MGPIR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Clear offload indication from IPv6 nexthops on abort (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for local table route replacement (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Fix 64-bit division error in mlxsw_sp_qdisc_tbf_rate_kbps (Ivan Vecera) [1821646] - [netdrv] mlxsw: minimal: Fix an error handling path in 'mlxsw_m_port_create()' (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of TBF Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Configure shaper rate and burst size together (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add lowest_shaper_bs to struct mlxsw_sp (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase MLXSW_REG_QEEC_MAS_DIS (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add max_shaper_bs to QoS ETS Element Configuration (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Extract a common leaf unoffload function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Add mlxsw_sp_qdisc_get_class_stats() (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Extract a per-TC stat function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Fix use-after-free during reload (Ivan Vecera) [1821646] - [netdrv] spectrum: Add a delayed work to update SPAN buffsize according to speed (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix SPAN egress mirroring buffer size for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Put buffsize update code into helper function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Push code getting port speed into a helper (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_vxlan: Add test case for overlay_smac_is_mc (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add OVERLAY_SMAC_MC trap (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_ipip: Add test case for decap_error (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_vxlan: Add test case for decap_error (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add tunnel devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Reorder cases according to enum order (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add ECN configurations with IPinIP tunnels (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Tunneling IPinIP Decapsulation ECN Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Tunneling IPinIP Encapsulation ECN Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add NON_ROUTABLE trap (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_l3_drops: Add test cases of irif and erif disabled (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add irif and erif disabled traps (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Include MC TCs in Qdisc counters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Wipe xstats.backlog of down ports (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_mc_aware: Fix mausezahn invocation (Ivan Vecera) [1821646] - [netdrv] mlxsw: switchx2: Do not modify cloned SKBs during xmit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Do not modify cloned SKBs during xmit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Do not enforce same firmware version for multiple ASICs (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test for FIB offload API (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Set hardware flags for routes (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Separate nexthop offload indication from route (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Only require minimum firmware version (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Update firmware version to xx.2000.2714 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Ignore grafting of invisible FIFO (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable DIP_LINK_LOCAL check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable SIP_DIP check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable MC_DMAC check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable SIP_CLASS_E check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dcb: Allow setting default port priority (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add QoS Port DSCP to Priority Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of ETS Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Generalize PRIO offload to support ETS (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Rename MLXSW_REG_QEEC_HIERARCY_* enumerators (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Clarify a comment (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use dedicated policer for VRRP packets (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Skip loopback RIFs during MAC validation (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Fix out-of-memory error in mfa2 flash burning (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Fix use of uninitialized adjacency index (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: After underlay moves, demote conflicting tunnels (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Check devlink device before running test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add router scale test for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Fix determining underlay for a GRE tunnel (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Verify FSM error code translation doesn't exceed array size (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Allocate discard adjacency entry when needed (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Enable EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add support for using EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend EMAD information reported to devlink hwerr (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add support for EMAD string TLV parsing (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: emad: Remove deprecated EMAD TLVs (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Parse TLVs' offsets of incoming EMADs (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Enable devlink reload only on probe (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap layer 3 exceptions (Ivan Vecera) [1821646] - [tools] selftests: forwarding: devlink: Add functionality for trap exceptions test (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 3 devlink-trap exceptions support (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add specific trap for packets routed via invalid nexthops (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add new FIB entry type for reject routes (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap layer 3 drops (Ivan Vecera) [1821646] - [tools] selftests: devlink: Make devlink_trap_cleanup() more generic (Ivan Vecera) [1821646] - [tools] selftests: devlink: Export functions to devlink library (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 3 devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix error return code in mlxsw_sp_port_module_info_init() (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Generalize split count check (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Iterate over all ports in gap during unsplit create (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix base port get for split count 4 and 8 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use port_module_max_width to compute base port index (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remember split base local port and use it in unsplit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Introduce resource for getting offset of 4 lanes split port (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Push getting offsets of split ports into a helper (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add sanity checks into module info get (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Pass mapping values in port mapping structure (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use mapping of port being split for creating split ports (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Replace port_to_module array with array of structs (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Distinguish between unsplittable and split port (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Move max_width check up before count check (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use PMTM register to get max module width (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Port Module Type Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend PMLP tx/rx lane value size to 4 bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: Fix 64-bit division in mlxsw_sp_sb_prs_init (Ivan Vecera) [1821646] - [netdrv] mlxsw: Enforce firmware version for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: Bump firmware version to 13.2000.2308 (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Increase PCI reset timeout for SN3800 systems (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase size of MPAR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Unpublish devlink parameters during reload (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: remove unneeded semicolon (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Calculate the size of the main pool (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use guaranteed buffer size as pool size limit (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend QSFP EEPROM size for ethtool (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add macro for getting QSFP module EEPROM page number (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Push Ethernet header before reporting trap (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add Spectrum-2 target scale for tc flower scale test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add a resource scale test for Spectrum-2 (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add Spectrum-2 mirror-to-gretap target scale test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Generalize the parameters of mirror_gre test (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Register switched port analyzers (SPAN) as resource (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add support for 400Gbps (50Gbps per lane) link modes (Ivan Vecera) [1821646] - [netdrv] mlxsw: minimal: Add validation for FW version (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Push minor/subminor fw version check into helper (Ivan Vecera) [1821646] - [netdrv] mlxsw: thermal: Provide optimization for QSFP modules number detection (Ivan Vecera) [1821646] - [netdrv] mlxsw: hwmon: Provide optimization for QSFP modules number detection (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend MGPIR register with new field exposing the number of QSFP modules (Ivan Vecera) [1821646] - [netdrv] mlxsw: Propagate extack down to register_fib_notifier() (Ivan Vecera) [1821646] - [netdrv] mlxsw: Register port netdevices into net of core (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Take devlink net instead of init_net (Ivan Vecera) [1821646] - [netdrv] mlxsw: PCI: Send EMAD traffic on a separate queue (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use per-netns netdevice notifier registration (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Fail in case user specifies multiple mirror actions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Clear VLAN filters during port initialization (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Add the ability to query the CPU port's shared buffer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Register CPU port with devlink (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Prevent changing CPU port's configuration (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add a test case for devlink-trap (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap L2 drops (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add trap group for layer 2 discards (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 2 discard trap IDs (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add new trap actions (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add API to set trap action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Extend to support Spectrum-3 ASIC (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Forbid to offload match on reserved TCP flags bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Track rules that forbid egress block bind (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Forbid to offload mirred redirect on egress (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Increase scale of IPv6 nexthop groups (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Expose KVD size for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] geneve: change from tx_error to tx_dropped on missing metadata (Jiri Benc) [1843412] - [net] mptcp: use untruncated hash in ADD_ADDR HMAC (Florian Westphal) [1840167] - [net] mptcp: use rightmost 64 bits in ADD_ADDR HMAC (Florian Westphal) [1840167] - [tools] selftests: mptcp: pm: rm the right tmp file (Florian Westphal) [1840167] - [net] mptcp: cope better with MP_JOIN failure (Florian Westphal) [1840167] - [net] inet_connection_sock: factor out destroy helper. (Florian Westphal) [1840167] - [net] mptcp: add new sock flag to deal with join subflows (Florian Westphal) [1840167] - [net] mptcp: Initialize map_seq upon subflow establishment (Florian Westphal) [1840167] - [net] mptcp: set correct vfs info for subflows (Florian Westphal) [1840167] - [net] mptcp: fix uninitialized value access (Florian Westphal) [1840167] - [net] mptcp: initialize the data_fin field for mpc packets (Florian Westphal) [1840167] - [net] mptcp: fix 'use_ack' option access. (Florian Westphal) [1840167] - [net] mptcp: avoid a WARN on bad input. (Florian Westphal) [1840167] - [net] mptcp: move option parsing into mptcp_incoming_options() (Florian Westphal) [1840167] - [net] mptcp: consolidate synack processing. (Florian Westphal) [1840167] - [net] mptcp: replace mptcp_disconnect with a stub (Florian Westphal) [1840167] - [net] mptcp: fix race in msk status update (Florian Westphal) [1840167] - [net] tcp: mptcp: use mptcp receive buffer space to select rcv window (Florian Westphal) [1840167] - [net] mptcp/pm_netlink.c : add check for nla_put_in/6_addr (Florian Westphal) [1840167] - [net] mptcp: fix data_fin handing in RX path (Florian Westphal) [1840167] - [net] mptcp: drop req socket remote_key* fields (Florian Westphal) [1840167] - [net] mptcp: avoid flipping mp_capable field in syn_recv_sock() (Florian Westphal) [1840167] - [net] mptcp: handle mptcp listener destruction via rcu (Florian Westphal) [1840167] - [net] mptcp: fix 'Attempt to release TCP socket in state' warnings (Florian Westphal) [1840167] - [net] mptcp: fix splat when incoming connection is never accepted before exit/close (Florian Westphal) [1840167] - [net] mptcp: fix double-unlock in mptcp_poll (Florian Westphal) [1840167] - [net] mptcp: add some missing pr_fmt defines (Florian Westphal) [1840167] - [net] mptcp: fix "fn parameter not described" warnings (Florian Westphal) [1840167] - [net] mptcp: re-check dsn before reading from subflow (Florian Westphal) [1840167] - [net] mptcp: subflow: check parent mptcp socket on subflow state change (Florian Westphal) [1840167] - [net] mptcp: fix tcp fallback crash (Florian Westphal) [1840167] - [tools] selftests:mptcp: fix failure due to whitespace damage (Florian Westphal) [1840167] - [tools] selftests: add test-cases for MPTCP MP_JOIN (Florian Westphal) [1840167] - [tools] selftests: add PM netlink functional tests (Florian Westphal) [1840167] - [net] mptcp: add netlink-based PM (Florian Westphal) [1840167] - [net] mptcp: add and use MIB counter infrastructure (Florian Westphal) [1840167] - [net] mptcp: allow dumping subflow context to userspace (Florian Westphal) [1840167] - [net] mptcp: implement and use MPTCP-level retransmission (Florian Westphal) [1840167] - [net] mptcp: rework mptcp_sendmsg_frag to accept optional dfrag (Florian Westphal) [1840167] - [net] mptcp: allow partial cleaning of rtx head dfrag (Florian Westphal) [1840167] - [net] mptcp: implement memory accounting for mptcp rtx queue (Florian Westphal) [1840167] - [net] mptcp: introduce MPTCP retransmission timer (Florian Westphal) [1840167] - [net] mptcp: queue data for mptcp level retransmission (Florian Westphal) [1840167] - [net] mptcp: update per unacked sequence on pkt reception (Florian Westphal) [1840167] - [net] mptcp: Implement path manager interface commands (Florian Westphal) [1840167] - [net] mptcp: Add handling of outgoing MP_JOIN requests (Florian Westphal) [1840167] - [net] mptcp: Add handling of incoming MP_JOIN requests (Florian Westphal) [1840167] - [net] mptcp: Add path manager interface (Florian Westphal) [1840167] - [net] mptcp: Add ADD_ADDR handling (Florian Westphal) [1840167] - [net] tcp: annotate sk->sk_wmem_queued lockless reads (Florian Westphal) [1840167] - [net] mptcp: don't hang in mptcp_sendmsg() after TCP fallback (Florian Westphal) [1840167] - [net] mptcp: Remove set but not used variable 'can_ack' (Florian Westphal) [1840167] - [net] mptcp: rename fourth ack field (Florian Westphal) [1840167] - [net] mptcp: move msk state update to subflow_syn_recv_sock() (Florian Westphal) [1840167] - [net] mptcp: drop unneeded checks (Florian Westphal) [1840167] - [net] mptcp: create msk early (Florian Westphal) [1840167] - [net] mptcp: don't hang before sending 'MP capable with data' (Florian Westphal) [1840167] - [net] mptcp: don't grow mptcp socket receive buffer when rcvbuf is locked (Florian Westphal) [1840167] - [tools] mptcp: selftests: add rcvbuf set option (Florian Westphal) [1840167] - [net] mptcp: always include dack if possible. (Florian Westphal) [1840167] - [net] mptcp: Only send DATA_FIN with final mapping (Florian Westphal) [1840167] - [net] mptcp: Use per-subflow storage for DATA_FIN sequence number (Florian Westphal) [1840167] - [net] mptcp: Check connection state before attempting send (Florian Westphal) [1840167] - [net] mptcp: add dummy icsk_sync_mss() (Florian Westphal) [1840167] - [net] mptcp: defer work schedule until mptcp lock is released (Florian Westphal) [1840167] - [net] mptcp: avoid work queue scheduling if possible (Florian Westphal) [1840167] - [net] mptcp: remove mptcp_read_actor (Florian Westphal) [1840167] - [net] mptcp: add rmem queue accounting (Florian Westphal) [1840167] - [net] mptcp: update mptcp ack sequence from work queue (Florian Westphal) [1840167] - [net] mptcp: add work queue skeleton (Florian Westphal) [1840167] - [net] mptcp: add and use mptcp_data_ready helper (Florian Westphal) [1840167] - [net] xfrm: fix a NULL-ptr deref in xfrm_local_error (Xin Long) [1835208] - [net] xfrm: add IPv6 support for espintcp (Sabrina Dubroca) [1446392] - [net] xfrm: add support for UDPv6 encapsulation of ESP (Sabrina Dubroca) [1446392] - [net] xfrm: ifdef setsockopt(UDP_ENCAP_ESPINUDP/UDP_ENCAP_ESPINUDP_NON_IKE) (Sabrina Dubroca) [1446392] - [net] esp: Export esp_output_fill_trailer function (Sabrina Dubroca) [1446392] - [net] udp: fix jump label misuse (Sabrina Dubroca) [1446392] - [net] udp: implement complete book-keeping for encap_needed (Sabrina Dubroca) [1446392] - [net] xfrm: espintcp: save and call old ->sk_destruct (Sabrina Dubroca) [1446392] - [net] xfrm: add espintcp (RFC 8229) (Sabrina Dubroca) [1446392] - [net] esp4: split esp_output_udp_encap and introduce esp_output_encap (Sabrina Dubroca) [1446392] - [net] esp4: prepare esp_input_done2 for non-UDP encapsulation (Sabrina Dubroca) [1446392] - [net] xfrm: add route lookup to xfrm4_rcv_encap (Sabrina Dubroca) [1446392] - [net] xfrm: introduce xfrm_trans_queue_net (Sabrina Dubroca) [1446392] - [net] add queue argument to __skb_wait_for_more_packets and __skb_{, try_}recv_datagram (Sabrina Dubroca) [1446392] - [net] use skb_queue_empty_lockless() in busy poll contexts (Sabrina Dubroca) [1446392] - [include] net: add skb_queue_empty_lockless() (Sabrina Dubroca) [1446392] - [net] add READ_ONCE() annotation in __skb_wait_for_more_packets() (Sabrina Dubroca) [1446392] - [net] datagram: remove rendundant 'peeked' argument (Sabrina Dubroca) [1446392] - [tools] kvm: selftests: fix rdtsc() for vmx_tsc_adjust_test (Vitaly Kuznetsov) [1841490] - [x86] kvm: lapic: Also cancel preemption timer when disarm LAPIC timer (Vitaly Kuznetsov) [1841490] - [s390] kvm_host: unify VM_STAT and VCPU_STAT definitions in a single place (Vitaly Kuznetsov) [1841490] - [x86] kvm/x86: Remove redundant function implementations (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: VMX preemption timer migration test (Vitaly Kuznetsov) [1841490] - [tools] tools arch kvm: Sync kvm headers with the kernel sources (Vitaly Kuznetsov) [1841490] - [tools] tools headers uapi: Update tools's copy of kvm.h headers (Vitaly Kuznetsov) [1841490] - [tools] tools headers: Sync the various kvm.h header copies (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Fix VMX preemption timer migration (Vitaly Kuznetsov) [1841490] - [uapi] x86/kvm/hyper-v: Explicitly align hcall param for kvm_hyperv_exit (Vitaly Kuznetsov) [1841490] - [virt] kvm: introduce kvm_read_guest_offset_cached() (Vitaly Kuznetsov) [1841490] - [virt] kvm: rename kvm_arch_can_inject_async_page_present() to kvm_arch_can_dequeue_async_page_present() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Replace zero-length array with flexible-array (Vitaly Kuznetsov) [1841490] - [virt] revert "kvm: No need to retry for hva_to_pfn_remapped()" (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: implement KVM_GET_NESTED_STATE and KVM_SET_NESTED_STATE (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: fix smm test on SVM (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: add a SVM version of state-test (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: introduce cpu_has_svm() check (Vitaly Kuznetsov) [1841490] - [x86] kvm: mmu: pass arbitrary CR0/CR4/EFER to kvm_init_shadow_mmu (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: leave guest mode when clearing EFER.SVME (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: split nested_vmcb_check_controls (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove HF_HIF_MASK (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove HF_VINTR_MASK (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: synthesize correct EXITINTINFO on vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: preserve VGIF across VMCB switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract svm_set_gif (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove unnecessary if (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: synchronize VMCB controls updated by the processor on every vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: restore clobbered INT_CTL fields after clearing VINTR (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: save all control fields in svm->nested (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove trailing padding for struct vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: pass vmcb_control_area to copy_vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: clean up tsc_offset update (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: move MMU setup to nested_prepare_vmcb_control (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract preparation of VMCB for nested run (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract load_nested_vmcb_control (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: move map argument out of enter_svm_guest_mode (Vitaly Kuznetsov) [1841490] - [virt] kvm: check userspace_addr for all memslots (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: always update CR3 in VMCS (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: always update CR3 in VMCB (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: correctly inject INIT vmexits (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove exit_required (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: inject exceptions via svm_check_nested_events (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: enable event window in inject_pending_event (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: track manually whether an event has been injected (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Preserve registers modifications done before nested_svm_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Initialize tdp_level during vCPU creation (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: leave ASID aside in copy_vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: fix condition for filtering async PF (Vitaly Kuznetsov) [1841490] - [x86] kvm: Fix the indentation to match coding style (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: replace "fall through" with "return" to indicate different case (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Take an unsigned 32-bit int for has_emulated_msr()'s index (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Remove superfluous brackets from case statement (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: allow KVM_STATE_NESTED_MTF_PENDING in kvm_state flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: simplify is_mmio_spte (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: don't expose MSR_IA32_UMWAIT_CONTROL unconditionally (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: enable X86_FEATURE_WAITPKG in KVM capabilities (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Set mmio_value to '0' if reserved #PF can't be generated (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: only do L1TF workaround on affected processors (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Migrate the VMX-preemption timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Change emulated VMX-preemption timer hrtimer to absolute (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Really make emulated nested preemption timer pinned (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Remove unused 'ops' param from nested_vmx_hardware_setup() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Remove unnecessary V_IRQ unsetting (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Merge svm_enable_vintr into svm_set_vintr (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Handle preemption timer fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: TSCDEADLINE MSR emulation fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: introduce kvm_can_use_hv_timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Optimize posted-interrupt delivery for timer fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce more exit_fastpath_completion enum values (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce kvm_vcpu_exit_request() helper (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Print symbolic names of VMX VM-Exit flags in traces (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Introduce generic fastpath handler (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop superfluous VMREAD of vmcs02.GUEST_SYSENTER_* (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Truncate writes to vmcs.SYSENTER_EIP/ESP for 32-bit vCPU (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Improve handle_external_interrupt_irqoff inline assembly (Vitaly Kuznetsov) [1841490] - [documentation] kvm: documentation: Fix up cpuid page (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Sanity check on gfn before removal (Vitaly Kuznetsov) [1841490] - [virt] kvm: No need to retry for hva_to_pfn_remapped() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Force ASYNC_PF_PER_VCPU to be power of two (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Remove unneeded __ASM_SIZE usage with POP instruction (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add a helper to consolidate root sp allocation (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Drop KVM's hugepage enums in favor of the kernel's enums (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Move max hugepage level to a separate #define (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Tweak PSE hugepage handling to avoid 2M vs 4M conundrum (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Cleanup vcpu->arch.guest_xstate_size (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Tweak handling of failure code for nested VM-Enter failure (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Capture TDP level when updating CPUID (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move nested EPT out of kvm_x86_ops.get_tdp_level() hook (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Add proper cache tracking for CR0 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Add proper cache tracking for CR4 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Unconditionally validate CR3 during nested transitions (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Save L1 TSC offset in 'struct kvm_vcpu_arch' (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip IBPB when temporarily switching between vmcs01 and vmcs02 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip IBPB when switching between vmcs01 and vmcs02 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use accessor to read vmcs.INTR_INFO when handling exception (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: handle wrap around 32-bit address space (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Replace late check_nested_events() hack with more precise fix (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vmx_get_rflags() to query RFLAGS in vmx_interrupt_blocked() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vmx_interrupt_blocked() directly from vmx_handle_exit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: WARN on injected+pending exception even in nested case (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Preserve IRQ/NMI/SMI priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Report interrupts as allowed when in L2 and exit-on-interrupt is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Prioritize SMI over nested IRQ/NMI (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Preserve IRQ/NMI priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Split out architectural interrupt/NMI/SMI blocking checks (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Split out architectural interrupt/NMI blocking checks (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Move SMI vmexit handling to svm_check_nested_events() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Report NMIs as allowed when in L2 and Exit-on-NMI is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Report NMIs as allowed when in L2 and Exit-on-NMI is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: replace is_smm checks with kvm_x86_ops.smi_allowed (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Make return for {interrupt_nmi, smi}_allowed() a bool instead of int (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Set KVM_REQ_EVENT if run is canceled with req_immediate_exit set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Open a window for pending nested VMX preemption timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Preserve exception priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Implement check_nested_events for NMI (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: immediately inject INTR vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: leave halted state on vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: introduce nested_run_pending (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix pkru save/restore when guest CR4.PKE=0, move it to x86.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Disable AVIC before setting V_IRQ (Vitaly Kuznetsov) [1841490] - [virt] kvm: Introduce kvm_make_all_cpus_request_except() (Vitaly Kuznetsov) [1841490] - [tools] kvm: vmx: pass correct DR6 for GD userspace exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86, svm: isolate vcpu->arch.dr6 from vmcb->save.dr6 (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: keep DR6 synchronized with vcpu->arch.dr6 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: trap #DB and #BP to userspace if guest debugging is on (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add KVM_SET_GUEST_DEBUG test (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix single-step with KVM_SET_GUEST_DEBUG (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Set RTM for DB_VECTOR too for KVM_EXIT_DEBUG (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: fix DR6 delivery for various cases of #DB injection (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Declare KVM_CAP_SET_GUEST_DEBUG properly (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Fix build for evmcs.h (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Use KVM CPU capabilities to determine CR4 reserved bits (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB path (Vitaly Kuznetsov) [1841490] - [x86] kvm: ioapic: Restrict lazy EOI update to edge-triggered interrupts (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fixes posted interrupt check for IRQs delivery modes (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: fill in kvm_run->debug.arch.dr[67] (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Replace a BUG_ON(1) with BUG() to squash clang warning (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: do not allow VMRUN inside SMM (Vitaly Kuznetsov) [1841490] - [virt] kvm: add capability for halt polling (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Store vmcs.EXIT_QUALIFICATION as an unsigned long, not u32 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop a redundant call to vmx_get_intr_info() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: move nested-related kvm_x86_ops to a separate struct (Vitaly Kuznetsov) [1841490] - [x86] kvm: evmcs: check if nesting is enabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: check_nested_events is never NULL (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm/set_memory_region_test: do not check RIP if the guest shuts down (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: avoid infinite loop on NPF from bad address (Vitaly Kuznetsov) [1841490] - [x86] kvm: Remove redundant argument to kvm_arch_vcpu_ioctl_run (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Check for CR0.CD and CR0.NW on VMRUN of nested guests (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Improve latency for single target IPI fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Optimize handling of VM-Entry failures in vmx_vcpu_run() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Remove non-functional "support" for CR3 target values (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Avoid an extra memslot lookup in try_async_pf() for L2 (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Set @writable to false for non-visible accesses by L2 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Cache vmcs.EXIT_INTR_INFO using arch avail_reg flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Cache vmcs.EXIT_QUALIFICATION using arch avail_reg flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop manual clearing of segment cache on nested VMCS switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Reset register cache (available and dirty masks) on VMCS switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invoke ept_save_pdptrs() if and only if PAE paging is enabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Rename exit_reason to vm_exit_reason for nested VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Cast exit_reason to u16 to check for nested EXTERNAL_INTERRUPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Pull exit_reason from vcpu_vmx in nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop a superfluous WARN on reflecting EXTERNAL_INTERRUPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Split VM-Exit reflection logic into L0 vs. L1 wants (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: match comment with return type for nested_vmx_exit_reflected (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move nested VM-Exit tracepoint into nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move VM-Fail check out of nested_vmx_exit_reflected() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Uninline nested_vmx_reflect_vmexit(), i.e. move it to nested.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move reflection check into nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Use do_machine_check to pass MCE to the host (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Clean cr3/pgd handling in vmx_load_mmu_pgd() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Replace "cr3" with "pgd" in "new cr3/pgd" related code (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Free only the affected contexts when emulating INVEPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Don't flush TLB on nested VMX transition (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip MMU sync on nested VMX transition when possible (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add module param to force TLB flush on root reuse (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add separate override for MMU sync during fast CR3 switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Move fast_cr3_switch() side effects to __kvm_mmu_new_cr3() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Don't reload APIC access page if its control is disabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Retrieve APIC access page HPA only when necessary (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Reload APIC access page on nested VM-Exit only if necessary (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Selectively use TLB_FLUSH_CURRENT for nested VM-Enter/VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Use KVM_REQ_TLB_FLUSH_CURRENT for MMU specific flushes (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce KVM_REQ_TLB_FLUSH_CURRENT to flush current ASID (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Add helper to handle TLB flushes on nested VM-Enter/VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Rename ->tlb_flush() to ->tlb_flush_all() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Document the ASID logic in svm_flush_tlb() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Introduce vmx_flush_tlb_current() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move nested_get_vpid02() to vmx/nested.h (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move vmx_flush_tlb() to vmx.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Wire up ->tlb_flush_guest() directly to svm_flush_tlb() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Drop @invalidate_gpa param from kvm_x86_ops' tlb_flush() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Clean up vmx_flush_tlb_gva() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: make Hyper-V PV TLB flush use tlb_flush_guest() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Move "flush guest's TLB" logic to separate kvm_x86_ops hook (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Use vpid_sync_vcpu_addr() to emulate INVVPID with address (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Drop redundant capability checks in low level INVVPID helpers (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Handle INVVPID fallback logic in vpid_sync_vcpu_addr() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move vpid_sync_vcpu_addr() down a few lines (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vpid_sync_context() directly when possible (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Skip global INVVPID fallback if vpid==0 in vpid_sync_context() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Sync SPTEs when injecting page/EPT fault into L1 (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: cleanup kvm_inject_emulated_page_fault (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: introduce kvm_mmu_invalidate_gva (Vitaly Kuznetsov) [1841490] - [x86] kvm: Disable objtool frame pointer checking for vmenter.S (Vitaly Kuznetsov) [1841490] - [x86] kvm: Remove CREATE_IRQCHIP/SET_PIT2 race (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Export kvm_propagate_fault() (as kvm_inject_emulated_page_fault) (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invalidate all roots when emulating INVVPID without EPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invalidate all EPTP contexts when emulating INVEPT for L1 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Validate the EPTP when emulating INVEPT(EXTENT_CONTEXT) (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Flush all EPTP/VPID contexts on remote TLB flush (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: Add testcase for creating max number of memslots (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Make set_memory_region_test common to all architectures (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add "zero" testcase to set_memory_region_test (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: Add vm_get_fd() in kvm_util (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add "delete" testcase to set_memory_region_test (Vitaly Kuznetsov) [1841490] - [tools] kvm: sefltests: Add explicit synchronization to move mem region test (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add GUEST_ASSERT variants to pass values to host (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add util to delete memory region (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Use kernel's list instead of homebrewed replacement (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Take vcpu pointer instead of id in vm_vcpu_rm() (Vitaly Kuznetsov) [1841490] - [x86] kvm: pass through CPUID(0x80000006) (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Return updated timer current count register from KVM_GET_LAPIC (Vitaly Kuznetsov) [1841490] - [virt] kvm: remove redundant assignment to variable r (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Fix __svm_vcpu_run declaration (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Do not setup frame pointer in __svm_vcpu_run (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Do not mark svm_vcpu_run with STACK_FRAME_NON_STANDARD (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: reflect MTF VM-exits if injected by L1 (Vitaly Kuznetsov) [1841490] - [kernel] kvm: Check validity of resolved slot when searching memslots (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Enable machine check support for 32bit targets (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: move more vmentry code to assembly (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: fix compilation with modular PSP and non-modular KVM (Vitaly Kuznetsov) [1841490] - [x86] Increase KVM_MAX_VCPUS to 1024, KVM_MAX_VCPU_ID to 2048 (Eduardo Habkost) [1810811] - [scsi] scsi: core: avoid host-wide host_busy counter for scsi_mq (Ewan Milne) [1761928] - [gpio] gpio: xgene-sb: set valid IRQ type in to_irq() (Brian Masney) [1802402] - [block] rbd: compression_hint option (Ilya Dryomov) [1835925] - [include] libceph: support for alloc hint flags (Ilya Dryomov) [1835925] - [net] libceph: read_from_replica option (Ilya Dryomov) [1835925] - [net] libceph: support for balanced and localized reads (Ilya Dryomov) [1835925] - [net] libceph: crush_location infrastructure (Ilya Dryomov) [1835925] - [net] libceph: decode CRUSH device/bucket types and names (Ilya Dryomov) [1835925] - [net] libceph: add non-asserting rbtree insertion helper (Ilya Dryomov) [1835925] - [pci] PCI: pciehp: Fix MSI interrupt race (Myron Stowe) [1779610] - [security] ima: Remove __init annotation from ima_pcrread() (Bruno Meneguele) [1843774] - [security] ima: Call ima_calc_boot_aggregate() in ima_eventdigest_init() (Bruno Meneguele) [1843774] - [security] ima: Directly assign the ima_default_policy pointer to ima_rules (Bruno Meneguele) [1843774] - [documentation] powerpc/fadump: sysfs for fadump memory reservation (Diego Domingos) [1804202] - [documentation] Documentation/ABI: Mark /sys/kernel/fadump_* sysfs files deprecated (Diego Domingos) [1804202] - [documentation] powerpc/powernv: Move core and fadump_release_opalcore under new kobject (Diego Domingos) [1804202] - [powerpc] powerpc/fadump: Reorganize /sys/kernel/fadump_* sysfs files (Diego Domingos) [1804202] - [fs] sysfs: wrap __compat_only_sysfs_link_entry_to_kobj function to change the symlink name (Diego Domingos) [1804202] - [documentation] Documentation/ABI: Add ABI documentation for /sys/kernel/fadump_* (Diego Domingos) [1804202] - [hwtracing] intel_th: pci: Add Tiger Lake CPU support (Jiri Olsa) [1483079] - [netdrv] e1000e: fix S0ix flows for cable connected case (Ken Cox) [1781385] - [netdrv] e1000e: reject unsupported coalescing params (Ken Cox) [1781385] - [netdrv] e1000e: Add support for Tiger Lake device (Ken Cox) [1781385] - [netdrv] e1000e: Add support for Alder Lake (Ken Cox) [1781385] - [netdrv] net: intel: e1000e: fix possible sleep-in-atomic-context bugs in e1000e_get_hw_semaphore() (Ken Cox) [1781385] - [netdrv] e1000e: fix missing cpu_to_le64 on buffer_addr (Ken Cox) [1781385] - [netdrv] e1000(e): use new helper tcp_v6_gso_csum_prep (Ken Cox) [1781385] - [netdrv] e1000e: Revert "e1000e: Make watchdog use delayed work" (Ken Cox) [1781385] - [netdrv] e1000e: Use netdev_info instead of pr_info for link messages (Ken Cox) [1781385] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Ken Cox) [1781385] - [netdrv] e1000e: Fix compiler warning when CONFIG_PM_SLEEP is not set (Ken Cox) [1781385] - [netdrv] net: ixgbevf: reject unsupported coalescing params (Ken Cox) [1781379] - [netdrv] ixgbevf: Remove limit of 10 entries for unicast filter list (Ken Cox) [1781379] - [netdrv] net: ixgbe: reject unsupported coalescing params (Ken Cox) [1781378] - [netdrv] ixgbe: Use pci_get_dsn() (Ken Cox) [1781378] - [netdrv] intel: Replace zero-length array with flexible-array member (Ken Cox) [1781378] - [netdrv] ixgbe: Fix calculation of queue with VFs and flow director on interface flap (Ken Cox) [1781378] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Ken Cox) [1781378] - [netdrv] ixgbe: protect TX timestamping from API misuse (Ken Cox) [1781378] - [netdrv] ixgbe: Make use of cpumask_local_spread to improve RSS locality (Ken Cox) [1781378] - [netdrv] ixgbe: Remove duplicate clear_bit() call (Ken Cox) [1781378] - [netdrv] ixgbe: Add UDP segmentation offload support (Ken Cox) [1781378] - [x86] x86/resctrl: Fix invalid attempt at removing the default resource group (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Clean up unused function parameter in mkdir path (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix a deadlock due to inaccurate reference (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix use-after-free due to inaccurate refcount of rdtgroup (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix use-after-free when deleting resource groups (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Add task resctrl information display (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Check monitoring static key in the MBM overflow handler (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Do not reconfigure exiting tasks (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix potential memory leak (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix an imbalance in domain_remove_cpu() (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix potential lockdep warning (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Prevent NULL pointer dereference when reading mondata (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Cleanup cbm_ensure_valid() (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Prevent possible overrun during bitmap operations (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Don't stop walking closids when a locksetup group is found (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Use _ASM_BX to avoid ifdeffery (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Remove unused variable (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Remove duplicate MSR_MISC_FEATURE_CONTROL definition (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Avoid confusion over the new X86_RESCTRL config (Alexander Beregalov) [1830948] - [x86] x86/cache: Rename config option to CONFIG_X86_RESCTRL (Alexander Beregalov) [1830948] - [tools] perf flamegraph: Use /bin/bash for report and record scripts (Michael Petlan) [1281843] - [tools] perf script: Add flamegraph.py script (Michael Petlan) [1281843] - [tools] perf script: Avoid NULL dereference on symbol (Michael Petlan) [1841130] - [tools] tools/build: tweak unused value workaround (Michael Petlan) [1841130] - [tools] perf stat: Fix no metric header if --per-socket and --metric-only set (Michael Petlan) [1841130] - [tools] perf python: Check if clang supports -fno-semantic-interposition (Michael Petlan) [1841130] - [tools] perf tools: Support Python 3.8+ in Makefile (Michael Petlan) [1841130] - [tools] perf script: Fix invalid read of directory entry after closedir() (Michael Petlan) [1841130] - [tools] perf script report: Fix SEGFAULT when using DWARF mode (Michael Petlan) [1841130] - [tools] perf script: add -S/--symbols documentation (Michael Petlan) [1841130] - [tools] perf pmu-events x86: Use CPU_CLK_UNHALTED.THREAD in Kernel_Utilization metric (Michael Petlan) [1841130] - [tools] perf events parser: Add missing Intel CPU events to parser (Michael Petlan) [1841130] - [tools] perf script: Allow --symbol to accept hexadecimal addresses (Michael Petlan) [1841130] - [tools] perf top: Support hotkey to change sort order (Michael Petlan) [1841130] - [tools] perf top: Support --group-sort-idx to change the sort order (Michael Petlan) [1841130] - [tools] perf symbols: Fix arm64 gap between kernel start and module end (Michael Petlan) [1841130] - [tools] perf build-test: Honour JOBS to override detection of number of cores (Michael Petlan) [1841130] - [tools] perf script: Add --show-cgroup-events option (Michael Petlan) [1841130] - [tools] perf top: Add --all-cgroups option (Michael Petlan) [1841130] - [tools] perf record: Add --all-cgroups option (Michael Petlan) [1841130] - [tools] perf record: Support synthesizing cgroup events (Michael Petlan) [1841130] - [tools] perf report: Add 'cgroup' sort key (Michael Petlan) [1841130] - [tools] perf cgroup: Maintain cgroup hierarchy (Michael Petlan) [1841130] - [tools] perf tools: Basic support for CGROUP event (Michael Petlan) [1841130] - [tools] perf tools: Add file-handle feature test (Michael Petlan) [1841130] - [tools] perf python: Include rwsem.c in the pythong biding (Michael Petlan) [1841130] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1841130] - [tools] perf script: Introduce --deltatime option (Michael Petlan) [1841130] - [tools] perf: Normalize gcc parameter when generating arch errno table (Michael Petlan) [1841130] - [tools] perf parse-events: Add defensive NULL check (Michael Petlan) [1841130] - [tools] perf callchain: Update docs regarding kernel/user space unwinding (Michael Petlan) [1841130] - [tools] perf cpumap: Fix snprintf overflow check (Michael Petlan) [1841130] - [tools] perf test: Test pmu-events aliases (Michael Petlan) [1841130] - [tools] perf pmu: Make pmu_uncore_alias_match() public (Michael Petlan) [1841130] - [tools] perf pmu: Add is_pmu_core() (Michael Petlan) [1841130] - [tools] perf test: Add pmu-events test (Michael Petlan) [1841130] - [tools] perf pmu: Refactor pmu_add_cpu_aliases() (Michael Petlan) [1841130] - [tools] perf jevents: Support test events folder (Michael Petlan) [1841130] - [tools] perf jevents: Add some test events (Michael Petlan) [1841130] - [tools] perf tools: Unify a bit the build directory output (Michael Petlan) [1841130] - [tools] perf metricgroup: Fix printing event names of metric group with multiple events incase of overlapping events (Michael Petlan) [1841130] - [tools] perf stat: Align the output for interval aggregation mode (Michael Petlan) [1841130] - [tools] perf report/top TUI: Support hotkeys to let user select any event for sorting (Michael Petlan) [1841130] - [tools] perf report: Support a new key to reload the browser (Michael Petlan) [1841130] - [tools] perf report: Allow specifying event to be used as sort key in --group output (Michael Petlan) [1841130] - [tools] perf report/top TUI: Support hotkey 'a' for annotation of unresolved addresses (Michael Petlan) [1841130] - [tools] perf report: Support interactive annotation of code without symbols (Michael Petlan) [1841130] - [tools] perf report: Print al_addr when symbol is not found (Michael Petlan) [1841130] - [tools] perf symbols: Consolidate symbol fixup issue (Michael Petlan) [1841130] - [tools] perf parse-events: Fix 3 use after frees found with clang ASAN (Michael Petlan) [1841130] - [tools] perf/tests: Add CET instructions to the new instructions test (Michael Petlan) [1841130] - [tools] perf expr: Fix copy/paste mistake (Michael Petlan) [1841130] - [tools] perf report: Fix no branch type statistics report issue (Michael Petlan) [1841130] - [tools] perf tools: Give synthetic mmap events an inode generation (Michael Petlan) [1841130] - [tools] perf test: Print if shell directory isn't present (Michael Petlan) [1841130] - [tools] perf record: Fix binding of AIO user space buffers to nodes (Michael Petlan) [1841130] - [tools] perf intel-pt: Update intel-pt.txt file with new location of the documentation (Michael Petlan) [1841130] - [tools] perf intel-pt: Add Intel PT man page references (Michael Petlan) [1841130] - [tools] perf intel-pt: Rename intel-pt.txt and put it in man page format (Michael Petlan) [1841130] - [tools] perf doc: Set man page date to last git commit (Michael Petlan) [1841130] - [tools] perf cs-etm: Fix unsigned variable comparison to zero (Michael Petlan) [1841130] - [tools] perf cs-etm: Optimize copying last branches (Michael Petlan) [1841130] - [tools] perf cs-etm: Correct synthesizing instruction samples (Michael Petlan) [1841130] - [tools] perf cs-etm: Continuously record last branch (Michael Petlan) [1841130] - [tools] perf cs-etm: Swap packets for instruction samples (Michael Petlan) [1841130] - [tools] perf map: Use strstarts() to look for Android libraries (Michael Petlan) [1841130] - [tools] perf vendor events intel: Add NO_NMI_WATCHDOG metric constraint (Michael Petlan) [1841130] - [tools] perf metricgroup: Support metric constraint (Michael Petlan) [1841130] - [tools] perf util: Factor out sysctl__nmi_watchdog_enabled() (Michael Petlan) [1841130] - [tools] perf metricgroup: Factor out metricgroup__add_metric_weak_group() (Michael Petlan) [1841130] - [tools] perf jevents: Support metric constraint (Michael Petlan) [1841130] - [tools] perf block-info: Support color ops to print block percents in color (Michael Petlan) [1841130] - [tools] perf block-info: Allow selecting which columns to report and its order (Michael Petlan) [1841130] - [tools] perf diff: Use __block_info__cmp() to replace block_pair_cmp() (Michael Petlan) [1841130] - [tools] perf expr: Make expr__parse() return -1 on error (Michael Petlan) [1841130] - [tools] perf expr: Straighten expr__parse()/expr__find_other() interface (Michael Petlan) [1841130] - [tools] perf expr: Increase EXPR_MAX_OTHER to support metrics with more than 15 variables (Michael Petlan) [1841130] - [tools] perf expr: Move expr lexer to flex (Michael Petlan) [1841130] - [tools] perf expr: Add expr.c object (Michael Petlan) [1841130] - [tools] perf header: Add check for unexpected use of reserved membrs in event attr (Michael Petlan) [1841130] - [tools] perf evsel: Support PERF_SAMPLE_BRANCH_HW_INDEX (Michael Petlan) [1841130] - [tools] perf tools: Add hw_idx in struct branch_stack (Michael Petlan) [1841130] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1841130] - [tools] tools lib traceevent: Remove extra '\n' in print_event_time() (Michael Petlan) [1841130] - [tools] perf annotate: Get rid of annotation->nr_jumps (Michael Petlan) [1841130] - [tools] perf llvm: Add debug hint message about missing kernel-devel package (Michael Petlan) [1841130] - [tools] perf stat: Show percore counts in per CPU output (Michael Petlan) [1841130] - [tools] tools lib api fs: Move cgroupsfs_find_mountpoint() (Michael Petlan) [1841130] - [kernel] perf/core: fix parent pid/tid in task exit events (Michael Petlan) [1841130] - [x86] perf/x86/cstate: Add Jasper Lake CPU support (Michael Petlan) [1841130] - [kernel] perf/core: Disable page faults when getting phys address (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Add Ice Lake server uncore support (Michael Petlan) [1841130] - [kernel] perf/cgroup: Correct indirection in perf_less_group_idx() (Michael Petlan) [1841130] - [kernel] perf/core: Fix event cgroup tracking (Michael Petlan) [1841130] - [init] perf/core: Add PERF_SAMPLE_CGROUP feature (Michael Petlan) [1841130] - [kernel] perf/core: Add PERF_RECORD_CGROUP event (Michael Petlan) [1841130] - [x86] x86 user stack frame reads: switch to explicit __get_user() (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Factor out __snr_uncore_mmio_init_box (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Add box_offsets for free-running counters (Michael Petlan) [1841130] - [kernel] perf/core: Fix reversed NULL check in perf_event_groups_less() (Michael Petlan) [1841130] - [kernel] perf/core: Fix endless multiplex timer (Michael Petlan) [1841130] - [kernel] perf/cgroup: Order events in RB tree by cgroup id (Michael Petlan) [1841130] - [kernel] perf/cgroup: Grow per perf_cpu_context heap storage (Michael Petlan) [1841130] - [kernel] perf/core: Add per perf_cpu_context min_heap storage (Michael Petlan) [1841130] - [kernel] perf/core: Use min_heap in visit_groups_merge() (Michael Petlan) [1841130] - [lib] lib: Introduce generic min-heap (Michael Petlan) [1841130] - [kernel] perf/cgroup: Reorder perf_cgroup_connect() (Michael Petlan) [1841130] - [kernel] perf/core: Remove 'struct sched_in_data' (Michael Petlan) [1841130] - [kernel] perf/core: Unify {pinned, flexible}_sched_in() (Michael Petlan) [1841130] - [x86] perf/x86: Add Intel Tiger Lake uncore support (Michael Petlan) [1841130] - [x86] perf/x86/intel: Output LBR TOS information correctly (Michael Petlan) [1841130] - [powerpc] perf/core: Add new branch sample type for HW index of raw branch records (Michael Petlan) [1841130] - [x86] perf/x86/intel: Avoid unnecessary PEBS_ENABLE MSR access in PMI (Michael Petlan) [1841130] - [x86] x86/cpu: Add Jasper Lake to Intel family (Michael Petlan) [1841130] - [fs] pstore/ram: Run without kernel crash dump region (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore/ram: Avoid NULL deref in ftrace merging failure path (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore: Convert buf_lock to semaphore (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore/ram: Correctly calculate usable PRZ bytes (Desnes Augusto Nunes do Rosario) [1824906] - [drm] memremap: add an owner field to struct dev_pagemap (Don Dutile) [1816441] - [mm] mm: devmap: refactor 1-based refcounting for ZONE_DEVICE pages (Don Dutile) [1816441] - [mm] mm/swap: fix release_pages() when releasing devmap pages (Don Dutile) [1816441] - [mm] mm: revert remove MEMORY_DEVICE_PUBLIC support in swap.c (Don Dutile) [1816441] - [nvdimm] mm: Cleanup __put_devmap_managed_page() vs ->page_free() (Don Dutile) [1816441] - [documentation] hv_netvsc: Update document for XDP support (Mohammed Gamal) [1815497] - [netdrv] hv_netvsc: Fix XDP refcnt for synthetic and VF NICs (Mohammed Gamal) [1815497] - [netdrv] hv_netvsc: Add XDP support (Mohammed Gamal) [1815497] - [powerpc] kvm: ppc: book3s hv: Remove user-triggerable WARN_ON (Laurent Vivier) [1784050] - [powerpc] kvm: ppc: book3s hv: Close race with page faults around memslot flushes (Laurent Vivier) [1784050] - [powerpc] pseries/svm: Allow IOMMU to work in SVM (Michael Roth) [1730194] - [powerpc] pseries/iommu: Separate FW_FEATURE_MULTITCE to put/stuff features (Michael Roth) [1730194] - [powerpc] pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW (Michael Roth) [1730194] - [powerpc] revert "powerpc/pseries/iommu: Don't use dma_iommu_ops on secure guests" (Michael Roth) [1730194] - [powerpc] ultravisor: Add PPC_UV config option (Michael Roth) [1730194] - [mm] ksm: Export ksm_madvise() (Michael Roth) [1730194] - [powerpc] configs: Enable secure guest support in pseries and ppc64 defconfigs (Michael Roth) [1730194] - [powerpc] prom_init: Undo relocation before entering secure mode (Michael Roth) [1730194] - [powerpc] pseries/svm: Force SWIOTLB for secure guests (Michael Roth) [1730194] - [powerpc] pseries/iommu: Don't use dma_iommu_ops on secure guests (Michael Roth) [1730194] - [powerpc] pseries/svm: Disable doorbells in SVM guests (Michael Roth) [1730194] - [powerpc] pseries/svm: Export guest SVM status to user space via sysfs (Michael Roth) [1730194] - [powerpc] pseries/svm: Use shared memory for Debug Trace Log (DTL) (Michael Roth) [1730194] - [powerpc] prom_init: Pass the "os-term" message to hypervisor (Michael Roth) [1730194] - [powerpc] Add support for adding an ESM blob to the zImage wrapper (Michael Roth) [1730194] - [powerpc] pseries: Introduce option to build secure virtual machines (Michael Roth) [1730194] - [s390] mm: Remove sev_active() function (Michael Roth) [1730194] - [kernel] fs/core/vmcore: Move sev_active() reference to x86 arch code (Michael Roth) [1730194] - [kernel] x86, s390/mm: Move sme_active() and sme_me_mask to x86-specific header (Michael Roth) [1730194] - [kernel] dma-mapping: Remove dma_check_mask() (Michael Roth) [1730194] - [kernel] swiotlb: Remove call to sme_active() (Michael Roth) [1730194] - [x86] s390: Move ARCH_HAS_MEM_ENCRYPT definition to arch/Kconfig (Michael Roth) [1730194] - [powerpc] xmon: don't access ASDR in VMs (Michael Roth) [1730194] - [powerpc] xmon: Fix compile error in print_insn* functions (Michael Roth) [1730194] - [mm] memremap: provide a not device managed memremap_pages (Michael Roth) [1730194] - [mm] memremap: don't use a separate devm action for devmap_managed_enable_get (Michael Roth) [1730194] - [mm] memremap: remove the dev field in struct dev_pagemap (Michael Roth) [1730194] - [kernel] resource: add a not device managed request_free_mem_region variant (Michael Roth) [1730194] - [mm] turn migrate_vma upside down (Michael Roth) [1730194] - [kernel] mm: simplify ZONE_DEVICE page private data (Michael Roth) [1730194] - [kernel] mm: remove hmm_devmem_add (Michael Roth) [1730194] - [mm] remove hmm_vma_alloc_locked_page (Michael Roth) [1730194] - [dax] device-dax: use the dev_pagemap internal refcount (Michael Roth) [1730194] - [mm] export alloc_pages_vma (Michael Roth) [1730194] - [netdrv] net/mlx5: Kconfig: Fix spelling typo (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Introduce kconfig var for TC support (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Move TC-specific code from en_main.c to en_tc.c (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Extract neigh-specific code from en_rep.c to rep/neigh.c (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Extract TC-specific code from en_rep.c to rep/tc.c (Alaa Hleihel) [1843359] - [infiniband] net/mlx5: Refactor imm_inval_pkey field in cqe struct (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Take DCBNL-related definitions into dedicated files (Alaa Hleihel) [1843359] - [netdrv] net/mlx5: E-Switch: Move eswitch chains to a new directory (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: remove duplicated check chain_index in mlx5e_rep_setup_ft_cb (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: add mlx5e_rep_indr_setup_ft_cb support (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: refactor indr setup block (Alaa Hleihel) [1843359] - [infiniband] IB/mlx5: Fix DEVX support for MLX5_CMD_OP_INIT2INIT_QP command (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Remove warning "devices are not on same switch HW" (Alaa Hleihel) [1842258] - [infiniband] RDMA/mlx5: Add init2init as a modify command (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: replace EINVAL in mlx5e_flower_parse_meta() (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix MLX5_TC_CT dependencies (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Properly set default values when disabling adaptive moderation (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix stats update for matchall classifier (Alaa Hleihel) [1842258] - [netdrv] net: sched: expose HW stats types per action used by drivers (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: en_tc: Fix cast to restricted __be32 warning (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: en_tc: Fix incorrect type in initializer warnings (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Allow partial data mask for tunnel options (Alaa Hleihel) [1842258] - [include] net/mlx5: IPSec: Fix incorrect type for spi (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Accel: fpga tls fix cast to __be64 and incorrect argument types (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: cmd: Fix memset with byte count warning (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix incorrect type in return expression (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix cast to restricted __be32 (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix incorrect type in argument (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: IPoIB, Drop multicast packets that this interface sent (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: IPoIB, Enable loopback packets for IPoIB interfaces (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix error flow in case of function_setup failure (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: CT: Correctly get flow rule (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5e: Update netdev txq on completions during closure (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Annotate mutex destroy for root ns (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Don't maintain a case of del_sw_func being null (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Fix cleaning unmanaged flow tables (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Fix memory leak in mlx5_events_init (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix inner tirs handling (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: kTLS, Destroy key object after destroying the TIS (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix allowed tc redirect merged eswitch offload cases (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Avoid processing commands before cmdif is ready (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix a race when moving command interface to events mode (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Add command entry handling completion (Alaa Hleihel) [1842258] - [infiniband] RDMA/mlx5: Fix NULL pointer dereference in destroy_prefetch_work (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix crash upon suspend/resume (Alaa Hleihel) [1842258 1841973] - [netdrv] net/mlx5e: Fix devlink port netdev unregistration sequence (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Fix devlink port register sequence (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Use devlink virtual flavour for VF devlink port (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Add support for devlink-port in non-representors mode (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Rename representor get devlink port function (Alaa Hleihel) [1842258 1790226] - [fs] nfsd4: add filename to states output ("J. Bruce Fields") [1475182] - [fs] nfsd4: stid display should preserve on-the-wire byte order ("J. Bruce Fields") [1475182] - [fs] nfsd4: common stateid-printing code ("J. Bruce Fields") [1475182] - [fs] nfsd: remove read permission bit for ctl sysctl ("J. Bruce Fields") [1475182] - [fs] nfsd: "\s" should be "s" ("J. Bruce Fields") [1475182] - [fs] nfsd: initialize i_private before d_add ("J. Bruce Fields") [1475182] - [fs] nfsd: use i_wrlock instead of rcu for nfsdfs i_private ("J. Bruce Fields") [1475182] - [fs] nfsd: fix dentry leak upon mkdir failure ("J. Bruce Fields") [1475182] - [fs] nfsd: Make __get_nfsdfs_client() static ("J. Bruce Fields") [1475182] - [fs] nfsd: Make two functions static ("J. Bruce Fields") [1475182] - [fs] nfsd: decode implementation id ("J. Bruce Fields") [1475182] - [fs] nfsd: use 64-bit seconds fields in nfsd v4 code ("J. Bruce Fields") [1475182] - [fs] nfsd: create xdr_netobj_dup helper ("J. Bruce Fields") [1475182] - [fs] nfsd: allow forced expiration of NFSv4 clients ("J. Bruce Fields") [1475182] - [fs] nfsd: create get_nfsdfs_clp helper ("J. Bruce Fields") [1475182] - [fs] nfsd4: show layout stateids ("J. Bruce Fields") [1475182] - [fs] nfsd: show lock and deleg stateids ("J. Bruce Fields") [1475182] - [fs] nfsd4: add file to display list of client's opens ("J. Bruce Fields") [1475182] - [fs] nfsd: add more information to client info file ("J. Bruce Fields") [1475182] - [include] nfsd: escape high characters in binary data ("J. Bruce Fields") [1475182] - [fs] nfsd: copy client's address including port number to cl_addr ("J. Bruce Fields") [1475182] - [fs] nfsd4: add a client info file ("J. Bruce Fields") [1475182] - [fs] nfsd: make client/ directory names small ints ("J. Bruce Fields") [1475182] - [fs] nfsd: add nfsd/clients directory ("J. Bruce Fields") [1475182] - [fs] nfsd4: use reference count to free client ("J. Bruce Fields") [1475182] - [fs] nfsd: rename cl_refcount ("J. Bruce Fields") [1475182] - [fs] nfsd: persist nfsd filesystem across mounts ("J. Bruce Fields") [1475182]- [wireless] iwlwifi: pcie: handle QuZ configs with killer NICs as well (Jarod Wilson) [1844129 1842382] - [net] mac80211: add ieee80211_is_any_nullfunc() (Jarod Wilson) [1844129] - [net] mac80211: sta_info: Add lockdep condition for RCU list usage (Jarod Wilson) [1844129] - [net] mac80211: fix channel switch trigger from unknown mesh peer (Jarod Wilson) [1844129] - [wireless] rtw88: avoid unused function warnings (Jarod Wilson) [1844129] - [wireless] brcmfmac: add stub for monitor interface xmit (Jarod Wilson) [1844129] - [wireless] iwlwifi: actually check allocated conf_tlv pointer (Jarod Wilson) [1844129] - [wireless] iwlwifi: fix WGDS check when WRDS is disabled (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: fix inactive TID removal return value usage (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: Do not declare support for ACK Enabled Aggregation (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: limit maximum queue appropriately (Jarod Wilson) [1844129] - [wireless] iwlwifi: pcie: indicate correct RB size to device (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: beacon statistics shouldn't go backwards (Jarod Wilson) [1844129] - [wireless] iwlwifi: pcie: actually release queue memory in TVQM (Jarod Wilson) [1844129] - [wireless] mac80211: populate debugfs only after cfg80211 init (Jarod Wilson) [1844129] - [net] mac80211: fix race in ieee80211_register_hw() (Jarod Wilson) [1844129] - [net] nl80211: fix NL80211_ATTR_FTM_RESPONDER policy (Jarod Wilson) [1844129] - [powerpc] powerpc/fadump: Account for memory_limit while reserving memory (Steve Best) [1840646] - [mm] mm: make deferred init's max threads arch-specific (David Hildenbrand) [1818764] - [mm] mm: parallelize deferred_init_memmap() (David Hildenbrand) [1818764] - [mm] mm: don't track number of pages during deferred initialization (David Hildenbrand) [1818764] - [kernel] padata: add basic support for multithreaded jobs (David Hildenbrand) [1818764] - [kernel] padata: allocate work structures for parallel jobs from a pool (David Hildenbrand) [1818764] - [init] padata: initialize earlier (David Hildenbrand) [1818764] - [kernel] padata: remove exit routine (David Hildenbrand) [1818764] - [documentation] padata: update documentation (David Hildenbrand) [1818764] - [mm] mm: call cond_resched() from deferred_init_memmap() (David Hildenbrand) [1818764] - [mm] mm: initialize deferred pages with interrupts enabled (David Hildenbrand) [1818764] - [mm] mm/pagealloc.c: call touch_nmi_watchdog() on max order boundaries in deferred init (David Hildenbrand) [1818764] - [mm] mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous() (David Hildenbrand) [1818764] - [mm] mm/page_alloc.c: fix regression with deferred struct page init (David Hildenbrand) [1818764] - [mm] mm: initialize MAX_ORDER_NR_PAGES at a time instead of doing larger sections (David Hildenbrand) [1818764] - [mm] mm: implement new zone specific memblock iterator (David Hildenbrand) [1818764] - [mm] mm: drop meminit_pfn_in_nid as it is redundant (David Hildenbrand) [1818764] - [kernel] audit: add subj creds to NETFILTER_CFG record to (Richard Guy Briggs) [1478533] - [kernel] audit: make symbol 'audit_nfcfgs' static (Richard Guy Briggs) [1478533] - [net] netfilter: add audit table unregister actions (Richard Guy Briggs) [1478533] - [net] audit: tidy and extend netfilter_cfg x_tables (Richard Guy Briggs) [1478533] - [x86] x86/efi: Allocate e820 buffer before calling efi_exit_boot_service (Lenny Szubowicz) [1824005] - [mm] hugetlb_cgroup: fix possible illegal access to memory (Joel Savitz) [1835398] - [kvm] KVM: s390: Remove false WARN_ON_ONCE for the PQAP instruction (Claudio Imbrenda) [1836184] - [sound] ASoC: Intel: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [thermal] thermal: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [powercap] powercap/intel_rapl: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [platform] platform/x86: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [pci] PCI: intel-mid: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [mmc] mmc: sdhci-acpi: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [idle] intel_idle: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [extcon] extcon: axp288: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [edac] EDAC: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [acpi] ACPI: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/platform: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/kernel: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/perf/events: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/cpu: Add consistent CPU match macros (Prarit Bhargava) [1841649] - [fs] fix autofs regression caused by follow_managed() changes (Miklos Szeredi) [1784857] - [fs] fs/namei.c: fix missing barriers when checking positivity (Miklos Szeredi) [1784857] - [fs] fix dget_parent() fastpath race (Miklos Szeredi) [1784857] - [fs] new helper: lookup_positive_unlocked() (Miklos Szeredi) [1784857] - [fs] fs/namei.c: pull positivity check into follow_managed() (Miklos Szeredi) [1784857] - [mm] x86/kasan: Fix boot with 5-level paging and KASAN (Baoquan He) [1838418] - [netdrv] bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return error when allocating zero size context memory (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve AER slot reset (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Reduce BNXT_MSIX_VEC_MAX value to supported CQs per PF (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix VF anti-spoof filter setup (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix "fw.mgmt" and "fw.nsci" info via devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add partno to devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Read partno and serialno of the board from VPD (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add fw.mgmt.api version to devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Reset rings if ring reservation fails during open() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Free context memory after disabling PCI in probe error path (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return error if bnxt_alloc_ctx_mem() fails (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: fix memory leaks in bnxt_dcbnl_ieee_getets() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix Priority Bytes and Packets counters in ethtool -S (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Call devlink_port_type_clear() in remove() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return -EAGAIN if fw command returns BUSY (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Modify some bnxt_hwrm_*_free() functions to void (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Remove unnecessary assignment of return code (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Clear DCB settings after firmware reset (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Process the NQ under NAPI continuous polling (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Simplify __bnxt_poll_cqs_done() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Handle all NQ notifications in bnxt_poll_p5() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Use pci_get_dsn() (Jonathan Toppins) [1790621] - [netdrv] bnxt: reject unsupported coalescing params (Jonathan Toppins) [1790621] - [netdrv] net/broadcom: Clean broadcom code from driver versions (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: fix error handling when flashing from file (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: reinitialize IRQs when MTU is modified (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: add newline to netdev_*() format strings (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve device shutdown method (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for devlink info command (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Rename switch_id to dsn (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support to update progress of flash update (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Move devlink_register before registering netdev (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Register devlink irrespective of firmware spec version (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Refactor bnxt_dl_register() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Disable workaround for lost interrupts on 575XX B0 and newer chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Periodically check and remove aged-out ntuple filters (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Do not accept fragments for aRFS flow steering (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Support UDP RSS hashing on 575XX chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve bnxt_probe_phy() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve link up detection (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Call recovery done after reset is successfully done (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Remove unnecessary NULL checks for fw_health (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for flashing the device via devlink (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Allow PHY settings on multi-function or NPAR PFs if allowed by FW (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add async. event logic for PHY configuration changes (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Refactor the initialization of the ethtool link settings (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Skip disabling autoneg before PHY loopback when appropriate (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Assign more RSS context resources to the VFs (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Initialize context memory to the value specified by firmware (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add chip IDs for 57452 and 57454 chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Report health status update after reset is done (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Set MASTER flag during driver registration (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Update firmware interface spec to 1.10.1.12 (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix array overrun in bnxt_fill_l2_rewrite_fields() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for NAT(L3/L4 rewrite) (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for L2 rewrite (Jonathan Toppins) [1790621] - [netdrv] net/mlx5: E-switch, Protect eswitch mode changes (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Extend eswitch enable to handle num_vfs change (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Split eswitch mode check to different helper function (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Simplify mlx5_unload_one() and its callers (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Simplify mlx5_register_device to return void (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Avoid deriving mlx5_core_dev second time (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Annotate esw state_lock mutex destroy (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Annotate termtbl_mutex mutex destroy (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5e: CT: Fix offload with CT action after CT NAT action (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix missing pedit action after ct clear action (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: remove set but not used variable 'unnew' (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Fix insert rules when TC_CT config isn't enabled (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix actions_match_supported() return (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Avoid false warning about rule may be used uninitialized (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Use correct type for chain, prio and level values (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-switch, Fix printing wrong error value (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix rejecting all egress rules not on vlan (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch: Fix using fwd and modify when firmware doesn't support it (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: Add missing inline to stub esw_add_restore_rule (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Enable restore table only if reg_c1 is supported (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, free flow_group_in after creating the restore table (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-switch, Fix mutex init order (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: CT: Change idr to xarray to protect parallel tuple id allocation (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Use rhashtable's ct entries instead of a separate list (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Fix stack usage compiler warning (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Support clear action (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Handle misses after executing CT action (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Offload established flows (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Introduce connection tracking (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Support getting chain mapping (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Add support for offloading rules with no in_port (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Introduce global tables (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: en_rep: Create uplink rep root table after eswitch offloads table (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Enable reg c1 loopback when possible (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: Restore tunnel metadata on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Get reg_c1 value on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Support inner header rewrite with goto action (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Disallow inserting vxlan/vlan egress rules without decap/pop (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Move tc tunnel parsing logic with the rest at tc_tun module (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Allow re-allocating mod header actions (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Restore chain id on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Rx, Split rep rx mpwqe handler from nic (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Mark miss packets with new chain id mapping (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Get reg_c0 value on CQE (Alaa Hleihel) [1790219 1790218 1663246] - [infiniband] net/mlx5: E-Switch, Move source port on reg_c0 to the upper 16 bits (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: Introduce mapping infra for mapping unique ids to data (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Add devlink fdb_large_groups parameter (Alaa Hleihel) [1790203 1663246] - [netdrv] net/mlx5: Change the name of steering mode param id (Alaa Hleihel) [1790203 1663246] - [netdrv] net/mlx5e: Fix an IS_ERR() vs NULL check (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: Verify goto chain offload support (Alaa Hleihel) [1663246] - [include] net/mlx5: HW bit for goto chain offload support (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Remove redundant comment about goto slow path (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Reduce number of arguments in slow path handling (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Use NL_SET_ERR_MSG_MOD() extack for errors (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Allow goto earlier chain if FW supports it (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Eswitch, Use per vport tables for mirroring (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: make the symbol 'ESW_POOLS' static (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Increase number of chains and priorities (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Refactor chains and priorities (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: ft: Check prio and chain sanity for ft offload (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: ft: Use getter function to get ft chain (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: TC: Offload flow table rules (Alaa Hleihel) [1663246]- [net] neigh: fix ARP retransmit timer guard (Hangbin Liu) [1767282] - [net] xfrm: fix a warning in xfrm_policy_insert_list (Xin Long) [1820956] - [net] netfilter: ipset: Fix subcounter update skip (Phil Sutter) [1834881] - [netdrv] macvlan: return correct error value (Matteo Croce) [1806146] - [net] core: properly remove skb from list (Ivan Vecera) [1839657] - [tools] selftests: fix flower parent qdisc (Ivan Vecera) [1824071] - [net] sch_choke: Remove classid from choke_skb_cb. (Ivan Vecera) [1824071] - [net] sched: choke: Remove unused inline function choke_set_classid (Ivan Vecera) [1824071] - [net] schedule: add action gate offloading (Ivan Vecera) [1824071] - [net] qos: introduce a gate control flow action (Ivan Vecera) [1824071] - [net] sched: fallback to qdisc noqueue if default qdisc setup fail (Ivan Vecera) [1824071] - [tools] selftests: forwarding: tc_actions.sh: add matchall mirror test (Ivan Vecera) [1824071] - [net] sched: report ndo_setup_tc failures via extack (Ivan Vecera) [1824071] - [net] sched : Remove unnecessary cast in kfree (Ivan Vecera) [1824071] - [tools] selftests: tc-testing: Add a TDC test for pedit munge ip6 dsfield (Ivan Vecera) [1824071] - [tools] selftests: forwarding: pedit_dsfield: Add pedit munge ip6 dsfield (Ivan Vecera) [1824071] - [net] sched: act_ct: update nf_conn_acct for act_ct SW offload in flowtable (Ivan Vecera) [1824071] - [net] net_sched: gen_estimator: extend packet counter to 64bit (Ivan Vecera) [1824071] - [net] flow_offload: skip hw stats check for FLOW_ACTION_HW_STATS_DONT_CARE (Ivan Vecera) [1824071] - [net] net_sched: sch_skbprio: add message validation to skbprio_change() (Ivan Vecera) [1824071] - [net] net_sched: fix tcm_parent in tc filter dump (Ivan Vecera) [1824071] - [net] sch_sfq: validate silly quantum values (Ivan Vecera) [1824071] - [net] sch_choke: avoid potential panic in choke_reset() (Ivan Vecera) [1824071] - [net] fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks (Ivan Vecera) [1824071] - [net] sched: etf: do not assume all sockets are full blown (Ivan Vecera) [1824071] - [tools] tc-testing: remove duplicate code in tdc.py (Ivan Vecera) [1824071] - [net] sched: Fix setting last executed chain on skb extension (Ivan Vecera) [1824071] - [net] net_sched: fix a missing refcnt in tcindex_init() (Ivan Vecera) [1824071] - [net] net_sched: add a temporary refcnt for struct tcindex_data (Ivan Vecera) [1824071] - [net] sched: expose HW stats types per action used by drivers (Ivan Vecera) [1824071] - [net] introduce nla_put_bitfield32() helper and use it (Ivan Vecera) [1824071] - [tools] selftests: skbedit_priority: Test counters at the skbedit rule (Ivan Vecera) [1824071] - [net] sched: act_pedit: Implement stats_update callback (Ivan Vecera) [1824071] - [net] sched: act_skbedit: Implement stats_update callback (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Add a forwarding test for pedit munge dsfield (Ivan Vecera) [1824071] - [net] flow_offload.h: Fix a comment at flow_action_entry.mangle (Ivan Vecera) [1824071] - [net] Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build (Ivan Vecera) [1824071] - [net] netfilter: nft_fwd_netdev: allow to redirect to ifb via ingress (Ivan Vecera) [1824071] - [net] cbs: Fix software cbs to consider packet sending time (Ivan Vecera) [1824071] - [include] taprio: do not use BIT() in TCA_TAPRIO_ATTR_FLAG_* definitions (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for flags key (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for src and dst port range options (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for mpls options (Ivan Vecera) [1824071] - [include] net: sched: refine extack messages in tcf_change_indev (Ivan Vecera) [1824071] - [net] sched: rename more stats_types (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Add an skbedit priority selftest (Ivan Vecera) [1824071] - [net] tc_skbedit: Make the skbedit priority offloadable (Ivan Vecera) [1824071] - [include] tc_skbedit: Factor a helper out of is_tcf_skbedit_{mark, ptype}() (Ivan Vecera) [1824071] - [include] net: sched: Do not assume RTNL is held in tunnel key action helpers (Ivan Vecera) [1824071] - [net] sched: act_ct: Fix leak of ct zone template on replace (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: enable use of hrtimer slack (Ivan Vecera) [1824071] - [net] net_sched: do not reprogram a timer about to expire (Ivan Vecera) [1824071] - [net] net_sched: add qdisc_watchdog_schedule_range_ns() (Ivan Vecera) [1824071] - [net] rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Ivan Vecera) [1824071] - [net] net_sched: cls_route: remove the right filter from hashtable (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: RED: Add nodrop tests (Ivan Vecera) [1824071] - [net] sched: RED: Introduce an ECN nodrop mode (Ivan Vecera) [1824071] - [net] sched: Allow extending set of supported RED flags (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: Add TDC test for RED (Ivan Vecera) [1824071] - [tools] tc-testing: add ETS scheduler to tdc build configuration (Ivan Vecera) [1824071] - [net] sched: act_ct: Enable hardware offload of flow table entires (Ivan Vecera) [1824071] - [net] sched: act_ct: Support refreshing the flow table entries (Ivan Vecera) [1824071] - [net] sched: act_ct: Support restoring conntrack info on skbs (Ivan Vecera) [1824071] - [net] sched: act_ct: Instantiate flow table entry actions (Ivan Vecera) [1824071] - [net] net_sched: keep alloc_hash updated after hash allocation (Ivan Vecera) [1824071] - [net] net_sched: hold rtnl lock in tcindex_partial_destroy_work() (Ivan Vecera) [1824071] - [include] flow_offload: restrict driver to pass one allowed bit to flow_action_hw_stats_types_check() (Ivan Vecera) [1824071] - [netdrv] flow_offload: introduce "delayed" HW stats type and allow it in mlx5 (Ivan Vecera) [1824071] - [include] flow_offload: turn hw_stats_type into dedicated enum (Ivan Vecera) [1824071] - [include] flow_offload: use flow_action_for_each in flow_action_mixed_hw_stats_types_check() (Ivan Vecera) [1824071] - [net] sched: pie: change tc_pie_xstats->prob (Ivan Vecera) [1824071] - [net] taprio: Fix sending packets without dequeueing them (Ivan Vecera) [1824071] - [net] sched: act_ct: fix lockdep splat in tcf_ct_flow_table_get (Ivan Vecera) [1824071] - [tools] selftests: forwarding: ETS: Use Qdisc counters (Ivan Vecera) [1824071] - [net] sched: Make FIFO Qdisc offloadable (Ivan Vecera) [1824071] - [include] pie: realign comment (Ivan Vecera) [1824071] - [net] pie: remove pie_vars->accu_prob_overflows (Ivan Vecera) [1824071] - [net] pie: remove unnecessary type casting (Ivan Vecera) [1824071] - [net] pie: use term backlog instead of qlen (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with canid extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: list kernel options for basic filter with canid ematch. (Ivan Vecera) [1824071] - [net] sched: act_ct: Use pskb_network_may_pull() (Ivan Vecera) [1824071] - [net] sched: act_ct: Fix ipv6 lookup of offloaded connections (Ivan Vecera) [1824071] - [net] sched: act_ct: Software offload of established flows (Ivan Vecera) [1824071] - [net] sched: act_ct: Offload established connections to flow table (Ivan Vecera) [1824071] - [net] sched: act_ct: Create nf flow table per zone (Ivan Vecera) [1824071] - [net] taprio: add missing attribute validation for txtime delay (Ivan Vecera) [1824071] - [net] fq: add missing attribute validation for orphan mask (Ivan Vecera) [1824071] - [tools] selftests: forwarding: tc_common: Convert to use busywait (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Convert until_counter_is() to take expression (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Add tc_rule_handle_stats_get() (Ivan Vecera) [1824071] - [include] net: flow_offload: Replace zero-length array with flexible-array member (Ivan Vecera) [1824071] - [net] sched: Replace zero-length array with flexible-array member (Ivan Vecera) [1824071] - [net] sched: act: count in the size of action flags bitfield (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with u32 extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with u16 extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter (Ivan Vecera) [1824071] - [net] sched: correct flower port blocking (Ivan Vecera) [1824071] - [net] sched: Support specifying a starting chain via tc skb ext (Ivan Vecera) [1824071] - [net] sched: Change the block's chain list to an rcu list (Ivan Vecera) [1824071] - [net] sched: Pass ingress block to tcf_classify_ingress (Ivan Vecera) [1824071] - [net] sched: Introduce ingress classification function (Ivan Vecera) [1824071] - [net] sched: flower: add missing validation of TCA_FLOWER_FLAGS (Ivan Vecera) [1824071] - [net] sched: matchall: add missing validation of TCA_MATCHALL_FLAGS (Ivan Vecera) [1824071] - [net] taprio: Fix dropping packets when using taprio + ETF offloading (Ivan Vecera) [1824071] - [net] taprio: Use taprio_reset_tc() to reset Traffic Classes configuration (Ivan Vecera) [1824071] - [net] taprio: Add missing policy validation for flags (Ivan Vecera) [1824071] - [net] taprio: Fix still allowing changing the flags during runtime (Ivan Vecera) [1824071] - [net] taprio: Fix enabling offload with wrong number of traffic classes (Ivan Vecera) [1824071] - [net] sched: prevent a use after free (Ivan Vecera) [1824071] - [tools] tc-testing: add missing 'nsPlugin' to basic.json (Ivan Vecera) [1824071] - [net] sch_choke: Use kvcalloc (Ivan Vecera) [1824071] - [tools] selftests: mlxsw: Add a RED selftest (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib.sh: Add start_tcp_traffic (Ivan Vecera) [1824071] - [tools] selftests: mlxsw: Add a TBF selftest (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Allow reading TC rule byte counters (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Add helpers for busywaiting (Ivan Vecera) [1824071] - [tools] selftests: Move two functions from mlxsw's qos_lib to lib (Ivan Vecera) [1824071] - [net] sched: Make TBF Qdisc offloadable (Ivan Vecera) [1824071] - [net] sched: sch_tbf: Don't overwrite backlog before dumping (Ivan Vecera) [1824071] - [net] sched: add Flow Queue PIE packet scheduler (Ivan Vecera) [1824071] - [net] sched: pie: export symbols to be reused by FQ-PIE (Ivan Vecera) [1824071] - [net] sched: pie: fix alignment in struct instances (Ivan Vecera) [1824071] - [net] sched: pie: fix commenting (Ivan Vecera) [1824071] - [include] pie: improve comments and commenting style (Ivan Vecera) [1824071] - [net] pie: rearrange structure members and their initializations (Ivan Vecera) [1824071] - [include] pie: use u8 instead of bool in pie_vars (Ivan Vecera) [1824071] - [include] pie: rearrange macros in order of length (Ivan Vecera) [1824071] - [include] pie: use U64_MAX to denote (2^64 - 1) (Ivan Vecera) [1824071] - [net] sched: pie: move common code to pie.h (Ivan Vecera) [1824071] - [net] sched: use skb_list_walk_safe helper for gso segments (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: Add test coverage for ETS Qdisc (Ivan Vecera) [1824071] - [tools] selftests: forwarding: sch_ets: Add test coverage for ETS Qdisc (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Move start_/stop_traffic from mlxsw to lib.sh (Ivan Vecera) [1824071] - [net] sch_ets: Make the ETS qdisc offloadable (Ivan Vecera) [1824071] - [net] sch_ets: Add a new Qdisc (Ivan Vecera) [1824071] - [include] net: pkt_cls: Clarify a comment (Ivan Vecera) [1824071] - [net] sch_cake: drop unused variable tin_quantum_prio (Ivan Vecera) [1824071] - [net] sched: act_ctinfo: fix memory leak (Ivan Vecera) [1824071] - [net] sched: act_ife: initalize ife->metalist earlier (Ivan Vecera) [1824071] - [net] sch_cake: avoid possible divide by zero in cake_enqueue() (Ivan Vecera) [1824071] - [tools] tc-testing: initial tdc selftests for cls_u32 (Ivan Vecera) [1824071] - [net] treewide: Use sizeof_field() macro (Ivan Vecera) [1824071] - [tools] tc-testing: unbreak full listing of tdc testcases (Ivan Vecera) [1824071] - [net] act_ct: support asymmetric conntrack (Ivan Vecera) [1824071] - [net] sch_cake: Add missing NLA policy entry TCA_CAKE_SPLIT_GSO (Ivan Vecera) [1824071] - [net] remove the unnecessary strict_start_type in some policies (Ivan Vecera) [1824071] - [net] sched: pie: enable timestamp based delay calculation (Ivan Vecera) [1824071] - [net] taprio: don't reject same mqprio settings (Ivan Vecera) [1824071] - [tools] tc-testing: Introduced tdc tests for basic filter (Ivan Vecera) [1824071] - [tools] tc-testing: updated pedit TDC tests (Ivan Vecera) [1824071] - [net] net_sched: add TCA_STATS_PKT64 attribute (Ivan Vecera) [1824071] - [net] net_sched: extend packet counter to 64bit (Ivan Vecera) [1824071] - [include] net_sched: do not export gnet_stats_basic_packed to uapi (Ivan Vecera) [1824071] - [tools] tc-testing: added tests with cookie for mpls TC action (Ivan Vecera) [1824071] - [net] icmp: remove duplicate code (Ivan Vecera) [1824071] - [include] icmp: add helpers to recognize ICMP error packets (Ivan Vecera) [1824071] - [net] taprio: fix panic while hw offload sched list swap (Ivan Vecera) [1824071] - [net] sched: Replace rcu_swap_protected() with rcu_replace_pointer() (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: avoid calling ktime_get_ns() if not needed (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: add dctcp-like marking (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: remove dead code dealing with retransmits (Ivan Vecera) [1824071] - [net] sched: act_ct: fix build failure in RHEL8 (Ivan Vecera) [1824071] - [net] don't return invalid table id error when we fall back to PF_UNSPEC (Sabrina Dubroca) [1814093] - [net] netfilter: update include directives. (Marcelo Leitner) [1837856] - [include] netfilter: fix include guards. (Marcelo Leitner) [1837856] - [include] netfilter: add include guard to xt_connlabel.h (Marcelo Leitner) [1837856] - [net] sk_msg: Don't use RCU_INIT_POINTER on sk_user_data (Sabrina Dubroca) [1819627] - [tools] selftests/bpf: Fix build of sockmap_ktls.c (Sabrina Dubroca) [1819627] - [net] Generate reuseport group ID on group creation (Sabrina Dubroca) [1819627] - [net] bpf: Allow selecting reuseport socket from a SOCKMAP/SOCKHASH (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Let all kernel-land lookup values in SOCKMAP/SOCKHASH (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Return socket cookie on lookup from syscall (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Don't set up upcalls and progs for listening sockets (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Allow inserting listening TCP sockets into sockmap (Sabrina Dubroca) [1819627] - [net] tcp_bpf: Don't let child socket inherit parent protocol ops on copy (Sabrina Dubroca) [1819627] - [net] net, sk_msg: Clear sk_user_data pointer on clone if tagged (Sabrina Dubroca) [1819627] - [net] net, sk_msg: Annotate lockless access to sk_prot on clone (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: bpf_tcp_ingress needs to subtract bytes from sg.size (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: msg_pop_data can incorrecty set an sge length (Sabrina Dubroca) [1819627] - [net] tls: fix const assignment warning (Sabrina Dubroca) [1819627] - [net] tls: Fix sk_psock refcnt leak in bpf_exec_tx_verdict() (Sabrina Dubroca) [1819627] - [net] tls: Fix sk_psock refcnt leak when in tls_data_ready() (Sabrina Dubroca) [1819627] - [tools] selftests/bpf: Test unhashing kTLS socket after removing from map (Sabrina Dubroca) [1819627] - [include] bpf, sk_msg: Don't clear saved sock proto on restore (Sabrina Dubroca) [1819627] - [include] bpf, sk_msg: Let ULP restore sk_proto and write_space callback (Sabrina Dubroca) [1819627] - [net] tls: Annotate access to sk_prot with READ_ONCE/WRITE_ONCE (Sabrina Dubroca) [1819627] - [net] tls: Read sk_prot once when building tls proto ops (Sabrina Dubroca) [1819627] - [net] tls: Constify base proto ops used for building tls proto (Sabrina Dubroca) [1819627] - [net] tls: Fix to avoid gettig invalid tls record (Sabrina Dubroca) [1819627] - [net] tls: avoid spurious decryption error with HW resync (Sabrina Dubroca) [1819627] - [net] tls: add helper for testing if socket is RX offloaded (Sabrina Dubroca) [1819627] - [tools] selftests: net: tls: remove recv_rcvbuf test (Sabrina Dubroca) [1819627] - [net] tls: use sg_next() to walk sg entries (Sabrina Dubroca) [1819627] - [net] tls: remove the dead inplace_crypto code (Sabrina Dubroca) [1819627] - [tools] selftests/tls: add a test for fragmented messages (Sabrina Dubroca) [1819627] - [net] tls: Fix unused function warning (Sabrina Dubroca) [1819627] - [net] tls: store decrypted on a single bit (Sabrina Dubroca) [1819627] - [net] tls: store async_capable on a single bit (Sabrina Dubroca) [1819627] - [net] tls: pass context to tls_device_decrypted() (Sabrina Dubroca) [1819627] - [net] tls: make allocation failure unlikely (Sabrina Dubroca) [1819627] - [net] tls: mark sk->err being set as unlikely (Sabrina Dubroca) [1819627] - [net] sockmap: use bitmap for copy info (Sabrina Dubroca) [1819627] - [net] tls: add TlsDeviceRxResync statistic (Sabrina Dubroca) [1819627] - [net] tls: add TlsDecryptError stat (Sabrina Dubroca) [1819627] - [net] tls: add statistics for installed sessions (Sabrina Dubroca) [1819627] - [net] tls: add skeleton of MIB statistics (Sabrina Dubroca) [1819627] - [net] tls: add device decrypted trace point (Sabrina Dubroca) [1819627] - [net] tls: add tracing for device/offload events (Sabrina Dubroca) [1819627] - [net] tls: allow compiling TLS TOE out (Sabrina Dubroca) [1819627] - [net] tls: rename tls_hw_* functions tls_toe_* (Sabrina Dubroca) [1819627] - [net] tls: move TOE-related code to a separate file (Sabrina Dubroca) [1819627] - [net] tls: move tls_build_proto() on init path (Sabrina Dubroca) [1819627] - [net] tls: use the full sk_proto pointer (Sabrina Dubroca) [1819627] - [net] tls: rename tls_device to tls_toe_device (Sabrina Dubroca) [1819627] - [net] tls: move TOE-related structures to a separate header (Sabrina Dubroca) [1819627] - [net] tls: sleeping function from invalid context (Sabrina Dubroca) [1819627] - [net] netfilter: nft_set_rbtree: Add missing expired checks (Phil Sutter) [1778020] - [tools] selftests: netfilter: extend flowtable test script with dnat rule (Marcelo Leitner) [1811193] - [tools] selftests: netfilter: extend flowtable test script for ipsec (Marcelo Leitner) [1811193] - [tools] selftests: netfilter: add flowtable test script (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: set NF_FLOW_TEARDOWN flag on entry expiration (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Remove WQ_MEM_RECLAIM from workqueue (Marcelo Leitner) [1811193] - [net] netfilter: nf_conntrack: add IPS_HW_OFFLOAD status bit (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Free block_cb when being deleted (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add counter support in HW offload (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: add nf_ct_acct_add() (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: export nf_ct_acct_update() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use work entry per offload command (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use rw sem as flow block lock (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add counter support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add enum nft_flowtable_flags to uapi (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix incorrect tc_setup_type type (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: populate addr_type mask (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix flushing of offloaded flows on free (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: fix NULL pointer dereference in tunnel offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: reload ip{v6}h in nf_flow_tuple_ip{v6} (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: reload ip{v6}h in nf_flow_nat_ip{v6} (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: dump NFTA_CHAIN_FLAGS attribute (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: free flowtable hooks on hook register error (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add tunnel encap/decap action offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add indr block setup support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_table_block_offload_init() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add tunnel match offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: skip offload setup if disabled (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use nf_flow_offload_tuple for stats as well (Marcelo Leitner) [1811193] - [net] flow_offload: Add flow_match_ct to get rule ct match (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Enable hardware offload of flow table entires (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Support refreshing the flow table entries (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Support restoring conntrack info on skbs (Marcelo Leitner) [1811193] - [net] sched: act_ct: Instantiate flow table entry actions (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Add API for registering to flow table events (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix setting forgotten NF_FLOW_HW_DEAD flag (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix missing flush hardware on table free (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix hardware flush order on nf_flow_table_cleanup (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: fix check the chain offload flag (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: fix memory leak in nf_tables_parse_netdev_hooks() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_table_offload_cmd() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_offload_tuple() helper (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: refresh flow if hardware offload fails (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flowtable_hw_offload() helper function (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: use atomic bitwise operations for flow flags (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: remove dying bit, use teardown bit instead (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_offload_work_alloc() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: restrict flow dissector match on meta ingress device (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: fetch stats only if flow is still alive (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flowtable_time_stamp (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: unbind callbacks from flowtable destroy path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: fix the nat port mangle. (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: check the status of dst_neigh (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: fix incorrect ethernet dst address (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix big-endian integer overflow (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Correct memcpy size for flow_overload_mangle() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: return EOPNOTSUPP if rule specifies no actions (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add IPv6 match description (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Don't use offset uninitialized in flow_offload_port_{d, s}nat (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix block_cb tc_setup_type as TC_SETUP_CLSFLOWER (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix block setup as TC_SETUP_FT cmd (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: check if bind callback fails and unbind if hook registration fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add nft_unregister_flowtable_hook() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: undo updates if transaction fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: release flow_rule on error from commit path (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove reference to flow rule from deletion path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add IPv6 support (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add flow_action_entry_next() and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary parameter in flow_offload_fill_dir (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix check ndo_setup_tc when setup_block (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: Check for the NETDEV_UNREGISTER event (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: hardware offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add flowtable offload control plane (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: detach routing information from flow description (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: skip tcp rst and fin packets (Marcelo Leitner) [1811193] - [net] netfilter: nf_flowtable: remove flow_offload_entry structure (Marcelo Leitner) [1811193] - [include] netfilter: nf_flow_table: remove union from flow_offload structure (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: move conntrack object to struct flow_offload (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: skip EBUSY on chain update (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: bogus EOPNOTSUPP on basechain update (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: pass extack to nft_flow_cls_offload_setup() (Marcelo Leitner) [1811193] - [net] netfilter: nft_meta: offload support for interface index (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: white-space fixes. (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: check for register data length mismatches (Marcelo Leitner) [1811193] - [net] netfilter: nft_bitwise: Adjust parentheses to fix memcmp size argument (Marcelo Leitner) [1811193] - [net] netfilter: nft_bitwise: add offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: unbind if multi-device binding fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_block_offload_init() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_chain_offload_cmd() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: restore basechain deletion (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: support for multiple devices per netdev hook (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: fix base chain stat rcu_dereference usage (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove rules on unregistered device only (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_cls_offload_setup() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: Pass callback list to nft_setup_cb_call() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_block_chain() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: increase maximum devices number per flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: allow netdevice to be used only once per flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: dynamically allocate hooks per net_device in flowtables (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove flowtable hook flush routine in netns exit routine (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: move priority to struct nf_flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nft_payload: fix missing check for matching length in offloads (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: set timeout before insertion into hashes (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: fix always true policy is unset check (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add NFT_CHAIN_POLICY_UNSET and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove rules when the device unregisters (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: refactor the nft_flow_offload_rule function (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: refactor the nft_flow_offload_chain function (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add __nft_offload_get_chain function (Marcelo Leitner) [1811193] - [net] netfilter: nft_{fwd, dup}_netdev: add offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: avoid excessive stack usage (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: move indirect flow_block callback logic to core (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: set default timeout after successful insertion (Marcelo Leitner) [1811193] - [net] netfilter: ctnetlink: honor IPS_OFFLOAD flag (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: clear skb tstamp before xmit (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: map basechain priority to hardware priority (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: teardown flow timeout race (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: conntrack picks up expired flows (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: support indr block call (Marcelo Leitner) [1811193] - [net] flow_offload: add flow_block structure and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: store data in offload context registers (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix offload for flows that are subject to xfrm (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: don't fail when updating base chain policy (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add hardware offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: delay chain policy update until transaction is complete (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: IPCB is only valid for ipv4 family (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: don't offload when sequence numbers need adjustment (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: set liberal tracking mode for tcp (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: ignore DF bit setting (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary variable in flow_offload_tuple (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: add entry to flowtable after confirmation (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: fix checking method of conntrack helper (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix missing error check for rhashtable_insert_fast (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: do not flow offload deleted conntrack entries (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: simplify nf_flow_offload_gc_step() (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: check ttl value in flow offload data path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix netdev refcnt leak (Marcelo Leitner) [1811193] - [net] netfilter: nf_flowtable: skip device lookup from interface index (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: fix IPV6=n builds (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: fix interaction with vrf slave device (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: Fix reverse route lookup (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: make nf_flow_table_iterate() static (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: do not remove offload when other netns's interface is down (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary parameter of nf_flow_table_cleanup() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary nat flag check code (Marcelo Leitner) [1811193] - [net] mptcp: mark tech preview and disable by default (Florian Westphal) [1835796] - [net] mptcp: fix bogus socket flag values (Florian Westphal) [1835796] - [net] mptcp: select CRYPTO (Florian Westphal) [1835796] - [net] mptcp: Protect subflow socket options before connection completes (Florian Westphal) [1835796] - [net] mptcp: make the symbol 'mptcp_sk_clone_lock' static (Florian Westphal) [1835796] - [net] mptcp: fix use-after-free for ipv6 (Florian Westphal) [1835796] - [net] mptcp: fix use-after-free on tcp fallback (Florian Westphal) [1835796] - [net] mptcp: Fix undefined mptcp_handle_ipv6_mapped for modular IPV6 (Florian Westphal) [1835796] - [net] mptcp: Fix incorrect IPV6 dependency check (Florian Westphal) [1835796] - [net] mptcp: handle tcp fallback when using syn cookies (Florian Westphal) [1835796] - [net] mptcp: avoid a lockdep splat when mcast group was joined (Florian Westphal) [1835796] - [net] mptcp: fix panic on user pointer access (Florian Westphal) [1835796] - [net] mptcp: defer freeing of cached ext until last moment (Florian Westphal) [1835796] - [net] mptcp: Fix build with PROC_FS disabled. (Florian Westphal) [1835796] - [tools] selftests: settings: tests can be in subsubdirs (Florian Westphal) [1835796] - [net] mptcp: Fix code formatting (Florian Westphal) [1835796] - [net] mptcp: do not inherit inet proto ops (Florian Westphal) [1835796] - [net] add and use MPTCP_PROTO_KERN (Florian Westphal) [1835796] - [net] mptcp: cope with later TCP fallback (Florian Westphal) [1835796] - [net] mptcp: process MP_CAPABLE data option (Florian Westphal) [1835796] - [net] mptcp: parse and emit MP_CAPABLE option according to v1 spec (Florian Westphal) [1835796] - [net] mptcp: move from sha1 (v0) to sha256 (v1) (Florian Westphal) [1835796] - [tools] mptcp: add basic kselftest for mptcp (Florian Westphal) [1835796] - [net] mptcp: new sysctl to control the activation per NS (Florian Westphal) [1835796] - [net] mptcp: allow collapsing consecutive sendpages on the same substream (Florian Westphal) [1835796] - [net] mptcp: recvmsg() can drain data from multiple subflows (Florian Westphal) [1835796] - [net] mptcp: add subflow write space signalling and mptcp_poll (Florian Westphal) [1835796] - [net] mptcp: Implement MPTCP receive path (Florian Westphal) [1835796] - [net] mptcp: Write MPTCP DSS headers to outgoing data packets (Florian Westphal) [1835796] - [net] mptcp: Add setsockopt()/getsockopt() socket operations (Florian Westphal) [1835796] - [net] mptcp: Add shutdown() socket operation (Florian Westphal) [1835796] - [net] mptcp: Add key generation and token tree (Florian Westphal) [1835796] - [net] mptcp: Create SUBFLOW socket for incoming connections (Florian Westphal) [1835796] - [net] mptcp: Handle MP_CAPABLE options for outgoing connections (Florian Westphal) [1835796] - [net] mptcp: Associate MPTCP context with TCP socket (Florian Westphal) [1835796] - [net] mptcp: Handle MPTCP TCP options (Florian Westphal) [1835796] - [net] mptcp: Add MPTCP socket stubs (Florian Westphal) [1835796] - [net] netfilter: conntrack: fix infinite loop on rmmod (Florian Westphal) [1832381] - [tools] selftests: add netdevsim devlink dev info test (Petr Oros) [1830928] - [tools] selftests: test netdevsim reload forbid and fail (Petr Oros) [1830928] - [netdrv] mlx4: fix "initializer element not constant" compiler error (Petr Oros) [1830928] - [netdrv] netdevsim: dev: Fix memory leak in nsim_dev_take_snapshot_write (Petr Oros) [1830928] - [net] devlink: fix return value after hitting end in region read (Petr Oros) [1830928] - [net] devlink: Fix reporter's recovery condition (Petr Oros) [1830928] - [documentation] docs: devlink: clarify the scope of snapshot id (Petr Oros) [1830928] - [net] devlink: let kernel allocate region snapshot id (Petr Oros) [1830928] - [net] devlink: factor out building a snapshot notification (Petr Oros) [1830928] - [documentation] devlink: fix broken link warning (Petr Oros) [1830928] - [net] devlink: use NL_SET_ERR_MSG_MOD instead of NL_SET_ERR_MSG (Petr Oros) [1830928] - [include] devlink: Add macro for "fw.mgmt.api" to info_get cb. (Petr Oros) [1830928] - [netdrv] netdevsim: support taking immediate snapshot via devlink (Petr Oros) [1830928] - [net] devlink: implement DEVLINK_CMD_REGION_NEW (Petr Oros) [1830928] - [net] devlink: track snapshot id usage count using an xarray (Petr Oros) [1830928] - [net] devlink: report error once U32_MAX snapshot ids have been used (Petr Oros) [1830928] - [net] devlink: extract snapshot id allocation to helper function (Petr Oros) [1830928] - [net] devlink: use -ENOSPC to indicate no more room for snapshots (Petr Oros) [1830928] - [net] devlink: add function to take snapshot while locked (Petr Oros) [1830928] - [net] devlink: trivial: fix tab in function documentation (Petr Oros) [1830928] - [net] devlink: convert snapshot destructor callback to region op (Petr Oros) [1830928] - [net] devlink: prepare to support region operations (Petr Oros) [1830928] - [documentation] devlink: expand the devlink-info documentation (Petr Oros) [1830928] - [net] devlink: Introduce devlink port flavour virtual (Petr Oros) [1830928] - [net] devlink: validate length of region addr/len (Petr Oros) [1830928] - [net] devlink: validate length of param values (Petr Oros) [1830928] - [net] core: Replace zero-length array with flexible-array member (Petr Oros) [1830928] - [net] core: devlink.c: Use built-in RCU list checking (Petr Oros) [1830928] - [net] devlink: Rely on driver eswitch thread safety instead of devlink (Petr Oros) [1830928] - [net] core: devlink.c: Hold devlink->lock from the beginning of devlink_dpipe_table_register() (Petr Oros) [1830928] - [net] devlink: Force enclosing array on binary fmsg data (Petr Oros) [1830928] - [net] devlink: report 0 after hitting end in region read (Petr Oros) [1830928] - [net] devlink: correct misspelling of snapshot (Petr Oros) [1830928] - [tools] selftests: Add a test of large binary to devlink health test (Petr Oros) [1830928] - [netdrv] netdevsim: Update dummy reporter's devlink binary interface (Petr Oros) [1830928] - [net] devlink: Allow large formatted message of binary output (Petr Oros) [1830928] - [tools] selftests: netdevsim: Add test cases for devlink-trap policers (Petr Oros) [1823743] - [netdrv] netdevsim: Add support for setting of packet trap group parameters (Petr Oros) [1823743] - [net] devlink: Allow setting of packet trap group parameters (Petr Oros) [1823743] - [net] devlink: Add packet trap group parameters support (Petr Oros) [1823743] - [netdrv] netdevsim: Add devlink-trap policer support (Petr Oros) [1823743] - [documentation] Add description of packet trap policers (Petr Oros) [1823743] - [net] devlink: Add packet trap policers support (Petr Oros) [1823743] - [net] devlink: Add auto dump flag to health reporter (Petr Oros) [1823743] - [net] devlink: Implicitly set auto recover flag when registering health reporter (Petr Oros) [1823743] - [netdrv] netdevsim: Change dummy reporter auto recover default (Petr Oros) [1823743] - [net] devlink: Only pass packet trap group identifier in trap structure (Petr Oros) [1823743] - [net] devlink: Stop reference counting packet trap groups (Petr Oros) [1823743] - [netdrv] netdevsim: Explicitly register packet trap groups (Petr Oros) [1823743] - [net] devlink: Add API to register packet trap groups (Petr Oros) [1823743] - [net] esp6: calculate transport_header correctly when sel.family != AF_INET6 (Xin Long) [1815980 1761579] - [net] esp4: support ipv6 nexthdrs process for beet gso segment (Xin Long) [1815980 1761579] - [net] esp6: support ipv6 nexthdrs process for beet gso segment (Xin Long) [1815980 1761579] - [net] xfrm: remove the xfrm_state_put call becofe going to out_reset (Xin Long) [1815980 1761579] - [net] esp6: get the right proto for transport mode in esp6_gso_encap (Xin Long) [1815980 1761579] - [net] xfrm: do pskb_pull properly in __xfrm_transport_prep (Xin Long) [1815980 1761579] - [net] xfrm: allow to accept packets with ipv6 NEXTHDR_HOP in xfrm_input (Xin Long) [1815980 1761579] - [net] xfrm: add prep for esp beet mode offload (Xin Long) [1815980 1761579] - [net] esp6: add gso_segment for esp6 beet mode (Xin Long) [1815980 1761579] - [net] esp4: add gso_segment for esp4 beet mode (Xin Long) [1815980 1761579] - [net] xfrm: kconfig: make xfrm depend on inet (Xin Long) [1815980 1761579] - [net] xfrm: make xfrm modes builtin (Xin Long) [1815980 1761579] - [net] xfrm: remove afinfo pointer from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove output2 indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove input2 indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove gso_segment indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove xmit indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove output indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove input indirection from xfrm_mode (Xin Long) [1761579 1815980] - [net] xfrm: prefer family stored in xfrm_mode struct (Xin Long) [1815980 1761579] - [net] xfrm: place af number into xfrm_mode struct (Xin Long) [1761579 1815980] - [net] xfrm: gso partial offload support (Xin Long) [1761579 1815980] - [net] netfilter: cttimeout: remove set but not used variable 'l3num' (Florian Westphal) [1822085] - [net] netfilter: conntrack: handle icmp pkt_to_tuple helper via direct calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: handle builtin l4proto packet functions via direct calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove net_id (Florian Westphal) [1822085] - [net] netfilter: conntrack: gre: switch module to be built-in (Florian Westphal) [1822085] - [net] netfilter: remove unused parameters in nf_ct_l4proto_[un]register_sysctl() (Florian Westphal) [1822085] - [net] netfilter: conntrack: gre: convert rwlock to rcu (Florian Westphal) [1822085] - [net] netfilter: nfnetlink_cttimeout: fetch timeouts for udplite and gre, too (Florian Westphal) [1822085] - [net] netfilter: nfnetlink_cttimeout: pass default timeout policy to obj_to_nlattr (Florian Westphal) [1822085] - [net] netfilter: conntrack: add nf_{tcp, udp, sctp, icmp, dccp, icmpv6, generic}_pernet() (Florian Westphal) [1822085] - [net] netfilter: conntrack: clamp l4proto array size at largers supported protocol (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove l3->l4 mapping information (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove unused proto arg from netns init functions (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove error callback and handle icmp from core (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid using ->error callback if possible (Florian Westphal) [1822085] - [net] netfilter: conntrack: deconstify packet callback skb pointer (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove the l4proto->new() function (Florian Westphal) [1822085] - [net] netfilter: conntrack: timeout interface depend on CONFIG_NF_CONNTRACK_TIMEOUT (Florian Westphal) [1822085] - [net] netfilter: conntrack: pass nf_hook_state to packet and error handlers (Florian Westphal) [1822085] - [net] netfilter: conntrack: place 'new' timeout in first location too (Florian Westphal) [1822085] - [net] netfilter: nf_conntrack_h323: Remove deprecated config check (Florian Westphal) [1822085] - [include] netfilter: nf_tables: merge route type into core (Florian Westphal) [1822085] - [net] netfilter: ipv6: avoid indirect calls for IPV6=y case (Florian Westphal) [1822085] - [net] netfilter: nat: remove module dependency on ipv6 core (Florian Westphal) [1822085] - [net] netfilter: remove obsolete need_conntrack stub (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid use-after free on rmmod (Florian Westphal) [1822085] - [net] netfilter: conntrack: dccp, sctp: handle null timeout argument (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove duplicated include from nf_conntrack_proto_udp.c (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove l3proto abstraction (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove get_timeout() indirection (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid l4proto pkt_to_tuple calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid calls to l4proto invert_tuple (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove get_l4proto indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove invert_tuple indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove pkt_to_tuple indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove ctnetlink callbacks from l3 protocol trackers (Florian Westphal) [1822085] - [net] openvswitch: use nf_ct_get_tuplepr, invert_tuplepr (Florian Westphal) [1822085] - [net] netfilter: utils: move nf_ip6_checksum* from ipv6 to utils (Florian Westphal) [1822085] - [net] netfilter: utils: move nf_ip_checksum* from ipv4 to utils (Florian Westphal) [1822085] - [net] netfilter: flowtables: use fixed renew timeout on teardown (Florian Westphal) [1822085] - [netdrv] geneve: use the correct nlattr array in NL_SET_ERR_MSG_ATTR (Xin Long) [1809503] - [netdrv] vxlan: use the correct nlattr array in NL_SET_ERR_MSG_ATTR (Xin Long) [1809503] - [netdrv] geneve: Allow configuration of DF behaviour (Xin Long) [1809503] - [netdrv] vxlan: Allow configuration of DF behaviour (Xin Long) [1809503] - [netdrv] net: phy: realtek: fix using paged operations with RTL8105e / RTL8208 (Josef Oskera) [1841511] - [netdrv] r8169: fix OCP access on RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: re-establish support for RTL8401 chip version (Josef Oskera) [1841511] - [netdrv] r8169: change back SG and TSO to be disabled by default (Josef Oskera) [1841511] - [netdrv] r8169: factor out rtl8169_tx_map (Josef Oskera) [1841511] - [netdrv] r8169: improve handling of TD_MSS_MAX (Josef Oskera) [1841511] - [netdrv] r8169: fix PHY driver check on platforms w/o module softdeps (Josef Oskera) [1841511] - [netdrv] r8169: re-enable MSI on RTL8168c (Josef Oskera) [1841511] - [netdrv] r8169: don't use MSI before RTL8168d (Josef Oskera) [1841511] - [netdrv] r8169: improve RTL8168b FIFO overflow workaround (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl_schedule_task (Josef Oskera) [1841511] - [netdrv] r8169: simplify rtl_task (Josef Oskera) [1841511] - [netdrv] r8169: add new helper rtl8168g_enable_gphy_10m (Josef Oskera) [1841511] - [netdrv] net: r8169: reject unsupported coalescing params (Josef Oskera) [1841511] - [netdrv] r8169: simplify getting stats by using netdev_stats_to_stats64 (Josef Oskera) [1841511] - [netdrv] r8169: let rtl8169_mark_to_asic clear rx descriptor field opts2 (Josef Oskera) [1841511] - [netdrv] r8169: remove now unneeded barrier in rtl_tx (Josef Oskera) [1841511] - [netdrv] r8169: simplify usage of rtl8169_unmap_tx_skb (Josef Oskera) [1841511] - [netdrv] r8169: ensure tx_skb is fully reset after calling rtl8169_unmap_tx_skb (Josef Oskera) [1841511] - [netdrv] r8169: convert while to for loop in rtl_tx (Josef Oskera) [1841511] - [netdrv] r8169: use pci_status_get_and_clear_errors (Josef Oskera) [1841511] - [netdrv] r8169: add PCI_STATUS_PARITY to PCI status error bits (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_start_xmit (Josef Oskera) [1841511] - [netdrv] r8169: remove RTL_EVENT_NAPI constants (Josef Oskera) [1841511] - [netdrv] r8169: use new helper tcp_v6_gso_csum_prep (Josef Oskera) [1841511] - [netdrv] r8169: improve statistics of missed rx packets (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl_jumbo_config (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_get_mac_version (Josef Oskera) [1841511] - [netdrv] r8169: add helper rtl_pci_commit (Josef Oskera) [1841511] - [netdrv] r8169: simplify setting netdev features (Josef Oskera) [1841511] - [netdrv] r8169: remove setting PCI_CACHE_LINE_SIZE in rtl_hw_start_8169 (Josef Oskera) [1841511] - [netdrv] r8169: remove unneeded check from rtl_link_chg_patch (Josef Oskera) [1841511] - [netdrv] r8169: fix performance regression related to PCIe max read request size (Josef Oskera) [1841511] - [netdrv] r8169: don't set min_mtu/max_mtu if not needed (Josef Oskera) [1841511] - [netdrv] r8169: factor out PHY configuration to r8169_phy_config.c (Josef Oskera) [1841511] - [netdrv] r8169: add r8169.h (Josef Oskera) [1841511] - [netdrv] r8169: rename rtl_apply_firmware (Josef Oskera) [1841511] - [netdrv] r8169: add phydev argument to rtl8168d_apply_firmware_cond (Josef Oskera) [1841511] - [netdrv] r8169: use phy_read/write instead of rtl_readphy/writephy (Josef Oskera) [1841511] - [netdrv] r8169: replace rtl_w0w1_phy (Josef Oskera) [1841511] - [netdrv] r8169: replace rtl_patchphy (Josef Oskera) [1841511] - [netdrv] r8169: move disabling MAC EEE for RTL8402/RTL8106e (Josef Oskera) [1841511] - [netdrv] r8169: move setting ERI register 0x1d0 for RTL8106 (Josef Oskera) [1841511] - [netdrv] r8169: switch to phylib functions in rtl_writephy_batch (Josef Oskera) [1841511] - [netdrv] r8169: change argument type of RTL8168g-specific PHY config functions (Josef Oskera) [1841511] - [netdrv] r8169: change argument type of EEE PHY functions (Josef Oskera) [1841511] - [netdrv] r8169: move RTL8169scd Gigabyte PHY quirk (Josef Oskera) [1841511] - [netdrv] r8169: remove not needed debug print in rtl8169_init_phy (Josef Oskera) [1841511] - [netdrv] r8169: prepare for exporting rtl_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: add constant EnAnaPLL (Josef Oskera) [1841511] - [netdrv] r8169: move enabling EEE to rtl8169_init_phy (Josef Oskera) [1841511] - [netdrv] r8169: remove MAC workaround in rtl8168e_2_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: factor out rtl8168h_2_get_adc_bias_ioffset (Josef Oskera) [1841511] - [netdrv] r8169: check that Realtek PHY driver module is loaded (Josef Oskera) [1841511] - [netdrv] treewide: Use sizeof_field() macro (Josef Oskera) [1841511] - [netdrv] r8169: fix rtl_hw_jumbo_disable for RTL8168evl (Josef Oskera) [1841511] - [netdrv] r8169: add missing RX enabling for WoL on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: fix jumbo configuration for RTL8168evl (Josef Oskera) [1841511] - [netdrv] r8169: add check for PHY_MDIO_CHG to rtl_nic_fw_data_ok (Josef Oskera) [1841511] - [netdrv] r8169: use macro FIELD_SIZEOF in definition of FW_OPCODE_SIZE (Josef Oskera) [1841511] - [netdrv] r8169: change mdelay to msleep in rtl_fw_write_firmware (Josef Oskera) [1841511] - [netdrv] r8169: load firmware for RTL8168fp/RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: improve conditional firmware loading for RTL8168d (Josef Oskera) [1841511] - [netdrv] r8169: use r8168d_modify_extpage in rtl8168f_config_eee_phy (Josef Oskera) [1841511] - [netdrv] r8169: add support for RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: respect EEE user setting when restarting network (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl8168c_4_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168d_modify_extpage (Josef Oskera) [1841511] - [netdrv] r8169: switch to phylib functions in more places (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168d_phy_param (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168g_phy_param (Josef Oskera) [1841511] - [netdrv] r8169: fix page read in r8168g_mdio_read (Josef Oskera) [1841511] - [netdrv] r8169: fix wrong PHY ID issue with RTL8168dp (Josef Oskera) [1841511] - [netdrv] r8169: use helper rtl_hw_aspm_clkreq_enable also in rtl_hw_start_8168g_2 (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_rx_fill (Josef Oskera) [1841511] - [netdrv] r8169: align fix_features callback with vendor driver (Josef Oskera) [1841511] - [netdrv] r8169: never set PCI_EXP_DEVCTL_NOSNOOP_EN (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl_hw_start_8168bef (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl_hw_start_8168dp (Josef Oskera) [1841511] - [netdrv] r8169: simplify setting PCI_EXP_DEVCTL_NOSNOOP_EN (Josef Oskera) [1841511] - [netdrv] r8169: remove fiddling with the PCIe max read request size (Josef Oskera) [1841511] - [netdrv] r8169: fix jumbo packet handling on resume from suspend (Josef Oskera) [1841511] - [netdrv] r8169: don't set bit RxVlan on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: add support for EEE on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: add RTL8125 PHY initialization (Josef Oskera) [1841511] - [netdrv] r8169: add support for RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: don't use bit LastFrag in tx descriptor after send (Josef Oskera) [1841511] - [netdrv] r8169: read common register for PCI commit (Josef Oskera) [1841511] - [netdrv] r8169: move disabling interrupt coalescing to RTL8169/RTL8168 init (Josef Oskera) [1841511] - [netdrv] r8169: factor out reading MAC address from registers (Josef Oskera) [1841511] - [netdrv] r8169: restrict rtl_is_8168evl_up to RTL8168 chip versions (Josef Oskera) [1841511] - [netdrv] r8169: change interrupt mask type to u32 (Josef Oskera) [1841511] - [netdrv] r8169: improve DMA handling in rtl_rx (Josef Oskera) [1841511] - [netdrv] r8169: fix DMA issue on MIPS platform (Josef Oskera) [1841511] - [netdrv] r8169: sync EEE handling for RTL8168h with vendor driver (Josef Oskera) [1841511] - [netdrv] r8169: use the generic EEE management functions (Josef Oskera) [1841511] - [fs] gfs2: Even more gfs2_find_jhead fixes (Abhijith Das) [1828653] - [kernel] sched/fair: Don't NUMA balance for kthreads (Phil Auld) [1842543] - [kernel] sched/core: Offload wakee task activation if it the wakee is descheduling (Phil Auld) [1842543] - [kernel] sched/core: Optimize ttwu() spinning on p->on_cpu (Phil Auld) [1842543] - [fs] gfs2: Smarter iopen glock waiting (Andreas Grunbacher) [1582655] - [fs] gfs2: Wake up when setting GLF_DEMOTE (Andreas Grunbacher) [1582655] - [fs] gfs2: Check inode generation number in delete_work_func (Andreas Grunbacher) [1582655] - [fs] gfs2: Move inode generation number check into gfs2_inode_lookup (Andreas Grunbacher) [1582655] - [fs] gfs2: Minor gfs2_lookup_by_inum cleanup (Andreas Grunbacher) [1582655] - [fs] gfs2: Try harder to delete inodes locally (Andreas Grunbacher) [1582655] - [fs] gfs2: Give up the iopen glock on contention (Andreas Grunbacher) [1582655] - [fs] gfs2: Turn gl_delete into a delayed work (Andreas Grunbacher) [1582655] - [fs] gfs2: Keep track of deleted inode generations in LVBs (Andreas Grunbacher) [1582655] - [fs] gfs2: Allow ASPACE glocks to also have an lvb (Andreas Grunbacher) [1582655] - [fs] gfs2: Avoid access time thrashing in gfs2_inode_lookup (Andreas Grunbacher) [1582655] - [fs] gfs2: Use IS_ERR_OR_NULL (Andreas Grunbacher) [1582655] - [fpga] fpga: mark the intel fpga drivers as tech preview (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: stratix10-svc: Remove unneeded semicolon (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: Fix incompatible function behavior for RSU driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: add Intel Stratix10 remote system update driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] firmware: stratix10-svc: extend svc to support new RSU features (Luis Goncalves) [1689274 1660310 1494701 1494699] - [edac] EDAC/altera, firmware/intel: Add Stratix10 ECC DBE SMC call (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: stratix10-svc: fix wrong of_node_put() in init function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] firmware: add remote status update client support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: add Intel Stratix10 service layer driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: pci: fix return value of cci_pci_sriov_configure (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: xilinx-pr-decoupler: Remove clk_get error message for probe defer (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: remove redundant dev_err message (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: remove set but not used variable 'afu' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove set but not used variable 'fme' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add power management support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add thermal management support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] Documentation: fpga: dfl: add descriptions for thermal/power management interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: Remove dev_err() usage after platform_get_irq() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] Documentation: fpga: dfl: add descriptions for virtualization and new interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add global error reporting support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add STP (SignalTap) support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add error reporting support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: expose __afu_port_enable/disable function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add userclock sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: convert platform_driver to use dev_groups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: convert platform_driver to use dev_groups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: make init callback optional (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Add Stratix10 (V2) Support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Preparation for V2 parts (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Discover Vendor Specific offset (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-ps-spi: Fix getting of optional confd gpio (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add capability sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: make uinit callback optional (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add id_table for dfl private feature driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add AFU state related sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: pci: enable SRIOV support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add DFL_FPGA_FME_PORT_RELEASE/ASSIGN ioctl support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: use driver core functions, not sysfs ones (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-pr-ip: Make alt_pr_unregister function void (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Fix function definition argument (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga-manager: altera-ps-spi: Fix build error (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: align PR buffer size per PR datawidth (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove copy_to_user() in ioctl for PR (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-fme-mgr: fix FME_PR_INTFC_ID register address (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] drivers: fpga: Kconfig: pedantic cleanups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: convert docs to ReST and rename to *.rst (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: zynqmp-fpga: Correctly handle error pointer (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] include: fpga: adi-axi-common.h: add common regs & defs header (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: expand minor range when registering chrdev region (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: Add lockdep classes for pdata->lock (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: Pass the correct device to dma_mapping_error() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: stratix10-soc: fix use-after-free on s10_init() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Add SPDX license identifier - Makefile/Kconfig (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] mm/gup: change GUP fast to use flags rather than a write 'bool' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga manager: Adding FPGA Manager support for Xilinx zynqmp (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera_freeze_bridge: remove restriction to socfpga (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: altera-ps-spi: make array dummy static, shrinks object size (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: stratix10-soc: fix wrong of_node_put() in init function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] Remove 'type' argument from access_ok() function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: of-fpga-region: Use platform_set_drvdata (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-fme-region: Use platform_get_drvdata() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add intel stratix10 soc fpga manager driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: altera-ps-spi: enable usage on non-dt platforms (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: fix probing for multiple FPGAs on the bus (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] zynq-fpga: Only route PR via PCAP when required (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Fix registration for CvP incapable devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove set but not used variable 'priv' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: fix 'bad IO access' on x86_64 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add devm_fpga_region_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: bridge: add devm_fpga_bridge_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: add devm_fpga_mgr_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: document fpga manager flags (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: bridge: fix obvious function documentation error (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: do not access region struct after fpga_region_unregister (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] drivers: fpga: fix two trivial spelling mistakes (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: fix return value check in in pr_mgmt_init() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add DFL_FPGA_PORT_DMA_MAP/UNMAP ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add afu sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add DFL_FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add header sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add port ops support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add FPGA Accelerated Function Unit driver basic framework (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme-region: add support for compat_id (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga region platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga bridge platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme-mgr: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga manager platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add partial reconfiguration sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add DFL_FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add header sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add FPGA Management Engine driver basic framework (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-pci: add enumeration for feature devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add FPGA DFL PCIe device driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_check_port_id function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_port_ops support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add feature device infrastructure (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_cdev_find_port (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add chardev support for feature devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add device feature list support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: region: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] fpga: mgr: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: add status for fpga-manager (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] fpga: mgr: add region_id to fpga_image_info (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: add a document for FPGA Device Feature List (DFL) Framework Overview (Luis Goncalves) [1689274 1660310 1494701 1494699] - [mm] mm: Add a vmf_insert_mixed_prot() function (Dave Airlie) [1838335] - [mm] mm: Add write-protect and clean utilities for address space ranges (Dave Airlie) [1838335] - [mm] mm: Add a walk_page_mapping() function to the pagewalk code (Dave Airlie) [1838335] - [mm] pagewalk: separate function pointers from iterator data (Dave Airlie) [1838335] - [mm] mm: split out a new pagewalk.h header from mm.h (Dave Airlie) [1838335] - [mm] mm: update ptep_modify_prot_commit to take old pte value as arg (Dave Airlie) [1838335] - [x86] mm: update ptep_modify_prot_start/commit to take vm_area_struct as arg (Dave Airlie) [1838335] - [mm] mm/mmu_notifier: add an interval tree notifier (Dave Airlie) [1838335] - [mm] mm/mmu_notifier: define the header pre-processor parts even if disabled (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: add a lockdep map for invalidate_range_start/end (Dave Airlie) [1838335] - [misc] misc/sgi-gru: use mmu_notifier_get/put for struct gru_mm_struct (Dave Airlie) [1838335] - [drm] drm/backport: add mmu notifier get/put support to drm backport (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: add a get/put scheme for the registration (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: do not speculatively allocate a mmu_notifier_mm (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: hoist do_mmu_notifier_register down_write to the caller (Dave Airlie) [1838335] - [mm] mm/mmu_notifier.c: remove mmu_notifier_synchronize() (Dave Airlie) [1838335] - [infiniband] locking/lockdep: Rename lockdep_assert_held_exclusive() -> lockdep_assert_held_write() (Dave Airlie) [1838335] - [include] mm/mmu_notifier: contextual information for event enums (Dave Airlie) [1838335] - [mm] mm/memory_hotplug.c: only respect mem= parameter during boot stage (Baoquan He) [1838809 1781472] - [scsi] scsi: mpt3sas: Remove unused including (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix double free warnings (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Disable DIF when prot_mask set to zero (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Capture IOC data for debugging purposes (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Use true, false for ioc->use_32bit_dma (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Remove NULL check before freeing function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update mpt3sas version to 33.101.00.00 (Tomas Henzl) [1790760] - [scsi] mpt3sas: Fix memset in non-rdpq mode (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix reply queue count in non RDPQ mode (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Handle RDPQ DMA allocation in same 4G region (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Separate out RDPQ allocation to new function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Rename function name is_MSB_are_same (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Don't change the DMA coherent mask after allocations (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: use true, false for bool variables (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug (Tomas Henzl) [1790760] - [scsi] scsi: Replace zero-length array with flexible-array member (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update drive version to 33.100.00.00 (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Remove usage of device_busy counter (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Print function name in which cmd timed out (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Optimize mpt3sas driver logging (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: print in which path firmware fault occurred (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Handle CoreDump state from watchdog thread (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Add support IOCs new state named COREDUMP (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: renamed _base_after_reset_handler function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Add support for NVMe shutdown (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update MPI Headers to v02.00.57 (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix double free in attach error handling (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Clean up some indenting (Tomas Henzl) [1790760] - [crypto] crypto: af_alg - cast ki_complete ternary op to int (Herbert Xu) [1837499] - [netdrv] virtio-net: per-queue RPS config (Eugenio Perez) [1718086] - [netdrv] virtio_net: Differentiate sk_buff and xdp_frame on freeing (Eugenio Perez) [1718086] - [netdrv] virtio_net: Use xdp_return_frame to free xdp_frames on destroying vqs (Eugenio Perez) [1718086] - [netdrv] virtio_net: enable napi_tx by default (Eugenio Perez) [1718086] - [netdrv] virtio_net: Don't call free_old_xmit_skbs for xdp_frames (Eugenio Perez) [1718086] - [netdrv] virtio_net: Don't enable NAPI when interface is down (Eugenio Perez) [1718086] - [include] cpumask: make cpumask_next_wrap available without smp (Eugenio Perez) [1718086] - [netdrv] virtio_net: Stripe queue affinities across cores (Eugenio Perez) [1718086] - [virtio] virtio: Make vp_set_vq_affinity() take a mask (Eugenio Perez) [1718086]- [netdrv] ice: add board identifier info to devlink .info_get (Jonathan Toppins) [1796682] - [netdrv] ice: add basic handler for devlink .info_get (Jonathan Toppins) [1796682] - [netdrv] ice: enable initial devlink support (Jonathan Toppins) [1796682] - [netdrv] ice: implement full NVM read from ETHTOOL_GEEPROM (Jonathan Toppins) [1796682] - [netdrv] ice: discover and store size of available flash (Jonathan Toppins) [1796682] - [netdrv] ice: store NVM version info in extracted format (Jonathan Toppins) [1796682] - [netdrv] ice: create function to read a section of the NVM and Shadow RAM (Jonathan Toppins) [1796682] - [netdrv] ice: use __le16 types for explicitly Little Endian values (Jonathan Toppins) [1796682] - [netdrv] ice: fix incorrect size description of ice_get_nvm_version (Jonathan Toppins) [1781388] - [netdrv] ice: use variable name more descriptive than type (Jonathan Toppins) [1781388] - [netdrv] ice: Use EOPNOTSUPP instead of ENOTSUPP (Jonathan Toppins) [1781388] - [netdrv] ice: Fix format specifier (Jonathan Toppins) [1781388] - [netdrv] ice: fix use of deprecated strlcpy() (Jonathan Toppins) [1781388] - [netdrv] ice: Increase mailbox receive queue length to maximum (Jonathan Toppins) [1781388] - [netdrv] ice: Correct setting VLAN pruning (Jonathan Toppins) [1781388] - [netdrv] ice: renegotiate link after FW DCB on (Jonathan Toppins) [1781388] - [netdrv] ice: Fix corner case when switching from IEEE to CEE (Jonathan Toppins) [1781388] - [netdrv] ice: Display Link detected via Ethtool in safe mode (Jonathan Toppins) [1781388] - [netdrv] ice: Fix removing driver while bare-metal VFs pass traffic (Jonathan Toppins) [1781388] - [netdrv] ice: Improve clarity of prints and variables (Jonathan Toppins) [1781388] - [netdrv] ice: allow bigger VFs (Jonathan Toppins) [1781388] - [netdrv] ice: Cleanup unneeded parenthesis (Jonathan Toppins) [1781388] - [netdrv] ice: Use pci_get_dsn() (Jonathan Toppins) [1781388] - [netdrv] ice: let core reject the unsupported coalescing parameters (Jonathan Toppins) [1781388] - [netdrv] ice: fix define for E822 backplane device (Jonathan Toppins) [1781388] - [netdrv] ice: add support for E823 devices (Jonathan Toppins) [1795812] - [netdrv] ice: add backslash-n to strings (Jonathan Toppins) [1781388] - [netdrv] ice: increase PF reset wait timeout to 300 milliseconds (Jonathan Toppins) [1781388] - [netdrv] ice: Support XDP UMEM wake up mechanism (Jonathan Toppins) [1781388] - [netdrv] ice: SW DCB, report correct max TC value (Jonathan Toppins) [1781388] - [netdrv] ice: Report correct DCB mode (Jonathan Toppins) [1781388] - [netdrv] ice: Add DCBNL ops required to configure ETS in CEE for SW DCB (Jonathan Toppins) [1781388] - [netdrv] ice: Always clear the QRXFLXP_CNTXT register for VF Rx queues (Jonathan Toppins) [1781388] - [netdrv] ice: Fix for TCAM entry management (Jonathan Toppins) [1781388] - [netdrv] ice: update malicious driver detection event handling (Jonathan Toppins) [1781388] - [netdrv] ice: Validate config for SW DCB map (Jonathan Toppins) [1781388] - [netdrv] ice: Wait for VF to be reset/ready before configuration (Jonathan Toppins) [1792691] - [netdrv] ice: Don't reject odd values of usecs set by user (Jonathan Toppins) [1781388] - [netdrv] ice: use true/false for bool types (Jonathan Toppins) [1781388] - [netdrv] ice: add function argument description to function header comment (Jonathan Toppins) [1781388] - [netdrv] ice: use proper format for function pointer as a function parameter (Jonathan Toppins) [1781388] - [netdrv] ice: remove unnecessary fallthrough comments (Jonathan Toppins) [1781388] - [netdrv] ice: Fix virtchnl_queue_select bitmap validation (Jonathan Toppins) [1781388] - [netdrv] ice: Fix and refactor Rx queue disable for VFs (Jonathan Toppins) [1781388] - [netdrv] ice: Handle LAN overflow event for VF queues (Jonathan Toppins) [1781388] - [netdrv] ice: Fix implicit queue mapping mode in ice_vsi_get_qs (Jonathan Toppins) [1781388] - [netdrv] ice: Add support to enable/disable all Rx queues before waiting (Jonathan Toppins) [1781388] - [netdrv] ice: Only allow tagged bcast/mcast traffic for VF in port VLAN (Jonathan Toppins) [1781388] - [netdrv] ice: Fix Port VLAN priority bits (Jonathan Toppins) [1781388] - [netdrv] ice: Add helper to determine if VF link is up (Jonathan Toppins) [1781388] - [netdrv] ice: Refactor port vlan configuration for the VF (Jonathan Toppins) [1781388] - [netdrv] ice: Add initial support for QinQ (Jonathan Toppins) [1781388] - [netdrv] ice: Trivial fixes (Jonathan Toppins) [1781388] - [netdrv] ice: Use correct netif error function (Jonathan Toppins) [1781388] - [netdrv] ice: Cleanup ice_vsi_alloc_q_vectors (Jonathan Toppins) [1781388] - [netdrv] ice: Make print statements more compact (Jonathan Toppins) [1781388] - [netdrv] ice: Use ice_pf_to_dev (Jonathan Toppins) [1781388] - [netdrv] ice: Remove possible null dereference (Jonathan Toppins) [1781388] - [netdrv] ice: update Unit Load Status bitmask to check after reset (Jonathan Toppins) [1781388] - [netdrv] ice: fix and consolidate logging of NVM/firmware version information (Jonathan Toppins) [1781388] - [netdrv] ice: Modify link message logging (Jonathan Toppins) [1781388] - [netdrv] ice: Remove CONFIG_PCI_IOV wrap in ice_set_pf_caps (Jonathan Toppins) [1781388] - [netdrv] ice: Remove ice_dev_onetime_setup() (Jonathan Toppins) [1781388] - [netdrv] ice: Don't allow same value for Rx tail to be written twice (Jonathan Toppins) [1781388] - [netdrv] ice: display supported and advertised link modes (Jonathan Toppins) [1781388] - [netdrv] ice: Fix switch between FW and SW LLDP (Jonathan Toppins) [1781388] - [netdrv] ice: Fix DCB rebuild after reset (Jonathan Toppins) [1781388] - [netdrv] ice: Bump version (Jonathan Toppins) [1781401] - [netdrv] ice: Implement ethtool get/set rx-flow-hash (Jonathan Toppins) [1781401] - [netdrv] ice: Initilialize VF RSS tables (Jonathan Toppins) [1781401] - [netdrv] ice: Optimize table usage (Jonathan Toppins) [1781401] - [netdrv] ice: Enable writing filtering tables (Jonathan Toppins) [1781401] - [netdrv] ice: Populate TCAM filter software structures (Jonathan Toppins) [1781401] - [netdrv] ice: Allocate flow profile (Jonathan Toppins) [1781401] - [netdrv] ice: Enable writing hardware filtering tables (Jonathan Toppins) [1781401] - [netdrv] ice: remove redundant assignment to variable xmit_done (Jonathan Toppins) [1781388] - [netdrv] ice: Removing hung_queue variable to use txqueue function parameter (Jonathan Toppins) [1781388] - [netdrv] ice: Add device ids for E822 devices (Jonathan Toppins) [1781951] - [netdrv] ice: Suppress Coverity warnings for xdp_rxq_info_reg (Jonathan Toppins) [1781388] - [netdrv] ice: Add a boundary check in ice_xsk_umem() (Jonathan Toppins) [1781388] - [netdrv] ice: add extra check for null Rx descriptor (Jonathan Toppins) [1781388] - [netdrv] ice: suppress checked_return error (Jonathan Toppins) [1781388] - [netdrv] ice: Demote MTU change print to debug (Jonathan Toppins) [1781388] - [netdrv] ice: Enable ip link show on the PF to display VF unicast MAC(s) (Jonathan Toppins) [1781388] - [netdrv] ice: Fix VF link state when it's IFLA_VF_LINK_STATE_AUTO (Jonathan Toppins) [1781388] - [netdrv] ice: Remove Rx flex descriptor programming (Jonathan Toppins) [1781388] - [netdrv] ice: Return error on not supported ethtool -C parameters (Jonathan Toppins) [1781388] - [netdrv] ice: Restore interrupt throttle settings after VSI rebuild (Jonathan Toppins) [1781388] - [netdrv] ice: Set default value for ITR in alloc function (Jonathan Toppins) [1781388] - [netdrv] ice: Add ice_for_each_vf() macro (Jonathan Toppins) [1781388] - [netdrv] ice: Add code to keep track of current dflt_vsi (Jonathan Toppins) [1781388] - [netdrv] ice: Fix VF spoofchk (Jonathan Toppins) [1781388] - [netdrv] ice: Support UDP segmentation offload (Jonathan Toppins) [1781388] - [netdrv] ice: Update FW API minor version (Jonathan Toppins) [1781388] - [netdrv] ice: remove pointless NULL check of port_info (Jonathan Toppins) [1781388] - [netdrv] ice: Implement ethtool ops for channels (Jonathan Toppins) [1781388] - [netdrv] ice: implement VF stats NDO (Jonathan Toppins) [1781388] - [netdrv] ice: add helpers for virtchnl (Jonathan Toppins) [1781388] - [netdrv] ice: Add ice_pf_to_dev(pf) macro (Jonathan Toppins) [1781388] - [netdrv] ice: Do not use devm* functions for local uses (Jonathan Toppins) [1781388] - [netdrv] ice: Refactor removal of VLAN promiscuous rules (Jonathan Toppins) [1781388] - [netdrv] ice: Fix setting coalesce to handle DCB configuration (Jonathan Toppins) [1781388] - [netdrv] ice: Only disable VF state when freeing each VF resources (Jonathan Toppins) [1781388] - [netdrv] ice: fix stack leakage (Jonathan Toppins) [1781388] - [netdrv] ice: Don't modify stripping for add/del VLANs on VF (Jonathan Toppins) [1781388] - [netdrv] ice: Disallow VF VLAN opcodes if VLAN offloads disabled (Jonathan Toppins) [1781388] - [netdrv] ice: Correct capabilities reporting of max TCs (Jonathan Toppins) [1781388] - [netdrv] ice: Store number of functions for the device (Jonathan Toppins) [1781388] - [netdrv] ice: fix potential infinite loop because loop counter being too small (Jonathan Toppins) [1781388] - [netdrv] ice: print opcode when printing controlq errors (Jonathan Toppins) [1781388] - [netdrv] ice: use more accurate ICE_DBG mask types (Jonathan Toppins) [1781388] - [netdrv] ice: Introduce and use ice_vsi_type_str (Jonathan Toppins) [1781388] - [netdrv] ice: remove unnecessary conditional check (Jonathan Toppins) [1781388] - [netdrv] ice: Update enum ice_flg64_bits to current specification (Jonathan Toppins) [1781388] - [netdrv] ice: delay less (Jonathan Toppins) [1781388] - [netdrv] ice: use pkg_dwnld_status instead of sq_last_status (Jonathan Toppins) [1781388] - [netdrv] ice: Change max MSI-x vector_id check in cfg_irq_map (Jonathan Toppins) [1781388] - [netdrv] ice: Check if VF is disabled for Opcode and other operations (Jonathan Toppins) [1781388] - [netdrv] ice: configure software LLDP in ice_init_pf_dcb (Jonathan Toppins) [1781388] - [netdrv] ice: Fix to change Rx/Tx ring descriptor size via ethtool with DCBx (Jonathan Toppins) [1781388] - [netdrv] ice: avoid setting features during reset (Jonathan Toppins) [1781388] - [netdrv] ice: Implement DCBNL support (Jonathan Toppins) [1781388] - [netdrv] ice: Add NDO callback to set the maximum per-queue bitrate (Jonathan Toppins) [1781388] - [netdrv] ice: Use ice_ena_vsi and ice_dis_vsi in DCB configuration flow (Jonathan Toppins) [1781388] - [netdrv] ice: Fix return value when SR-IOV is not supported (Jonathan Toppins) [1781388] - [netdrv] ice: Rename VF function ice_vc_dis_vf to match its behavior (Jonathan Toppins) [1781388] - [netdrv] ice: Get rid of ice_cleanup_header (Jonathan Toppins) [1781388] - [netdrv] ice: print PCI link speed and width (Jonathan Toppins) [1781388] - [netdrv] ice: print unsupported module message (Jonathan Toppins) [1781388] - [netdrv] ice: write register with correct offset (Jonathan Toppins) [1781388] - [netdrv] ice: Check for null pointer dereference when setting rings (Jonathan Toppins) [1781388] - [netdrv] ice: save PCI state in probe (Jonathan Toppins) [1781388] - [netdrv] ice: Adjust DCB INIT for SW mode (Jonathan Toppins) [1781388] - [netdrv] ice: fix driver unload flow (Jonathan Toppins) [1781388] - [netdrv] ice: handle DCBx non-contiguous TC request (Jonathan Toppins) [1781388] - [netdrv] ice: Update Boot Configuration Section read of NVM (Jonathan Toppins) [1781388] - [netdrv] ice: add ethtool -m support for reading i2c eeprom modules (Jonathan Toppins) [1781388] - [netdrv] ice: allow 3k MTU for XDP (Jonathan Toppins) [1781388] - [netdrv] ice: add build_skb() support (Jonathan Toppins) [1781388] - [netdrv] ice: introduce frame padding computation logic (Jonathan Toppins) [1781388] - [netdrv] ice: introduce legacy Rx flag (Jonathan Toppins) [1781388] - [netdrv] ice: Add support for AF_XDP (Jonathan Toppins) [1730487] - [netdrv] ice: Move common functions to ice_txrx_lib.c (Jonathan Toppins) [1781388] - [netdrv] ice: Add support for XDP (Jonathan Toppins) [1730487] - [netdrv] ice: get rid of per-tc flow in Tx queue configuration routines (Jonathan Toppins) [1781388] - [netdrv] ice: Introduce ice_base.c (Jonathan Toppins) [1781388] - [netdrv] net:Use skb accessors in network drivers (Jonathan Toppins) [1781388] - [powerpc] powerpc/eeh: Remove eeh_add_device_tree_late() (Myron Stowe) [1840904] - [powerpc] powerpc/eeh: Add sysfs files in late probe (Myron Stowe) [1840904] - [powerpc] powerpc: Drop using struct of_pci_range.pci_space field (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Fold pcibios_setup_device() into pcibios_bus_add_device() (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Remove pcibios_setup_bus_devices() (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Fix pcibios_setup_device() ordering (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Remove legacy debug code (Myron Stowe) [1840904] - [x86] x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE (David Arcari) [1826966] - [x86] x86/microcode/AMD: Make stub function static inline (David Arcari) [1826966] - [x86] x86/microcode/intel: Issue the revision updated message only on the BSP (David Arcari) [1826966] - [x86] x86/microcode: Update late microcode in parallel (David Arcari) [1826966] - [x86] x86/microcode/amd: Fix two -Wunused-but-set-variable warnings (David Arcari) [1826966] - [x86] x86/microcode: Fix the microcode load on CPU hotplug for real (David Arcari) [1826966] - [x86] x86/microcode, cpuhotplug: Add a microcode loader CPU hotplug callback (David Arcari) [1826966] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 353 (David Arcari) [1826966] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1826966] - [x86] treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1826966] - [x86] x86/microcode: Fix the ancient deprecated microcode loading method (David Arcari) [1826966] - [x86] x86/microcode/intel: Refactor Intel microcode blob loading (David Arcari) [1826966] - [x86] x86/microcode: Announce reload operation's completion (David Arcari) [1826966] - [x86] x86/microcode/AMD: Update copyright (David Arcari) [1826966] - [x86] x86/microcode/AMD: Check the equivalence table size when scanning it (David Arcari) [1826966] - [x86] x86/microcode/AMD: Convert CPU equivalence table variable into a struct (David Arcari) [1826966] - [x86] x86/microcode/AMD: Check microcode container data in the late loader (David Arcari) [1826966] - [x86] x86/microcode/AMD: Fix container size's type (David Arcari) [1826966] - [x86] x86/microcode/AMD: Convert early parser to the new verification routines (David Arcari) [1826966] - [x86] x86/microcode/AMD: Change verify_patch()'s return value (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move chipset-specific check into verify_patch() (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move patch family check to verify_patch() (David Arcari) [1826966] - [x86] x86/microcode/AMD: Simplify patch family detection (David Arcari) [1826966] - [x86] x86/microcode/AMD: Concentrate patch verification (David Arcari) [1826966] - [x86] x86/microcode/AMD: Cleanup verify_patch_size() more (David Arcari) [1826966] - [x86] x86/microcode/AMD: Clean up per-family patch size checks (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move verify_patch_size() up in the file (David Arcari) [1826966] - [x86] x86/microcode/AMD: Add microcode container verification (David Arcari) [1826966] - [x86] x86/microcode/AMD: Subtract SECTION_HDR_SIZE from file leftover length (David Arcari) [1826966] - [x86] x86/microcode: Make revision and processor flags world-readable (David Arcari) [1826966] - [pci] PCI: Add pci_status_get_and_clear_errors (Josef Oskera) [1840535] - [pci] PCI: Add constant PCI_STATUS_ERROR_BITS (Josef Oskera) [1840535] - [arm64] arm64: dts: ls1046ardb: set RGMII interfaces to RGMII_ID mode (Petr Oros) [1816982] - [arm64] arm64: dts: ls1043a-rdb: correct RGMII delay mode to rgmii-id (Petr Oros) [1816982] - [netdrv] net: phy: marvell: Fix pause frame negotiation (Petr Oros) [1816982] - [netdrv] net: phy: propagate an error back to the callers of phy_sfp_probe (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix clock sink configuration on ATH8030 and ATH8035 (Petr Oros) [1816982] - [netdrv] r8169: fix resume on cable plug-in (Petr Oros) [1816982] - [documentation] dt-bindings: net: remove un-implemented property (Petr Oros) [1816982] - [netdrv] net: phy: mdio-bcm-unimac: Fix clock handling (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: w/a for fld detect threshold bootstrapping issue (Petr Oros) [1816982] - [netdrv] net: phy: sfp-bus.c: get rid of docs warnings (Petr Oros) [1816982] - [netdrv] net: phy: mdio-mux-bcm-iproc: check clk_prepare_enable() return value (Petr Oros) [1816982] - [netdrv] net: phy: fix MDIO bus PM PHY resuming (Petr Oros) [1816982] - [of] drivers/of/of_mdio.c:fix of_mdiobus_register() (Petr Oros) [1816982] - [netdrv] net: phy: bcm63xx: fix OOPS due to missing driver name (Petr Oros) [1816982] - [netdrv] phylink: Improve error message when validate failed (Petr Oros) [1816982] - [netdrv] net: phy: avoid clearing PHY interrupts twice in irq handler (Petr Oros) [1816982] - [netdrv] net: phy: marvell: don't interpret PHY status unless resolved (Petr Oros) [1816982] - [netdrv] net: phy: mscc: fix firmware paths (Petr Oros) [1816982] - [netdrv] net: phy: corrected the return value for genphy_check_and_restart_aneg and genphy_c45_check_and_restart_aneg (Petr Oros) [1816982] - [documentation] docs: networking: phy: Rephrase paragraph for clarity (Petr Oros) [1816982] - [netdrv] net: phy: Avoid multiple suspends (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Fix a typo ("firsly") (Petr Oros) [1816982] - [netdrv] net: phy: restore mdio regs in the iproc mdio driver (Petr Oros) [1816982] - [netdrv] net: phy: at803x: disable vddio regulator (Petr Oros) [1816982] - [netdrv] net: mii_timestamper: fix static allocation by PHY driver (Petr Oros) [1816982] - [of] net: mdio: of: fix potential NULL pointer derefernce (Petr Oros) [1816982] - [netdrv] net: phy: add default ARCH_BCM_IPROC for MDIO_BCM_IPROC (Petr Oros) [1816982] - [netdrv] net: phy: DP83822: Add support for additional DP83825 devices (Petr Oros) [1816982] - [netdrv] phy: dp83826: Add phy IDs for DP83826N and 826NC (Petr Oros) [1816982] - [netdrv] net: phy: add new version of phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phy: rename phy_do_ioctl to phy_do_ioctl_running (Petr Oros) [1816982] - [netdrv] r8169: use generic ndo_do_ioctl handler phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phy: add generic ndo_do_ioctl handler phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phylink: allow in-band AN for USXGMII (Petr Oros) [1816982] - [netdrv] net: phy: adin: fix a warning about msleep (Petr Oros) [1816982] - [netdrv] net: phy: don't crash in phy_read/_write_mmd without a PHY driver (Petr Oros) [1816982] - [netdrv] net: phylink: Allow 2.5BASE-T, 5GBASE-T and 10GBASE-T for the 10G link modes (Petr Oros) [1816982] - [netdrv] net: phy: adin: const-ify static data (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Set FORCE_LINK_GOOD to default after reset (Petr Oros) [1816982] - [netdrv] net: phy: Maintain MDIO device and bus statistics (Petr Oros) [1816982] - [powerpc] powerpc: Add const qual to local_read() parameter (Petr Oros) [1816982] - [include] u64_stats: provide u64_stats_t type (Petr Oros) [1816982] - [documentation] Documentation: net-sysfs: Remove duplicate PHY device documentation (Petr Oros) [1816982] - [netdrv] mdio_bus: Simplify reset handling and extend to non-DT systems (Petr Oros) [1816982] - [netdrv] net: phy: Added IRQ print to phylink_bringup_phy() (Petr Oros) [1816982] - [netdrv] net: phy: DP83822: Update Kconfig with DP83825I support (Petr Oros) [1816982] - [netdrv] net: phy: DP83TC811: Fix typo in Kconfig (Petr Oros) [1816982] - [netdrv] net: phylink: add support for polling MAC PCS (Petr Oros) [1816982] - [netdrv] net: phylink: make QSGMII a valid PHY mode for in-band AN (Petr Oros) [1816982] - [uapi] mii: Add helpers for parsing SGMII auto-negotiation (Petr Oros) [1816982] - [netdrv] net: phylink: fix failure to register on x86 systems (Petr Oros) [1816982] - [netdrv] net: phy: fixed_phy: switch to using fwnode_gpiod_get_index (Petr Oros) [1816982] - [netdrv] net: phy: fixed_phy: fix use-after-free when checking link GPIO (Petr Oros) [1816982] - [netdrv] net: phylink: switch to using fwnode_gpiod_get_index() (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for configuring the RX delay on RTL8211F (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add logging for the RGMII TX delay configuration (Petr Oros) [1816982] - [netdrv] net: mdio: of: Register discovered MII time stampers (Petr Oros) [1816982] - [documentation] dt-bindings: ptp: Introduce MII time stamping devices (Petr Oros) [1816982] - [netdrv] net: Add a layer for non-PHY MII time stamping drivers (Petr Oros) [1816982] - [netdrv] net: Introduce a new MII time stamping interface (Petr Oros) [1816982] - [netdrv] net: phy: dp83640: Move the probe and remove methods around (Petr Oros) [1816982] - [netdrv] net: netcp_ethss: Use the PHY time stamping interface (Petr Oros) [1816982] - [net] net: ethtool: Use the PHY time stamping interface (Petr Oros) [1816982] - [net] net: vlan: Use the PHY time stamping interface (Petr Oros) [1816982] - [netdrv] net: macvlan: Use the PHY time stamping interface (Petr Oros) [1816982] - [include] net: phy: Introduce helper functions for time stamping support (Petr Oros) [1816982] - [include] of: mdio: Add missing inline to of_mdiobus_child_is_phy() dummy (Petr Oros) [1816982] - [netdrv] net: phy: aquantia: add suspend / resume ops for AQR105 (Petr Oros) [1816982] - [netdrv] net: phy: ensure that phy IDs are correctly typed (Petr Oros) [1816982] - [include] mod_devicetable: fix PHY module format (Petr Oros) [1816982] - [of] of: mdio: export of_mdiobus_child_is_phy (Petr Oros) [1816982] - [netdrv] net: sfp: report error on failure to read sfp soft status (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use genphy_check_and_restart_aneg() (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use phy_modify_changed() (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use existing clause 37 definitions (Petr Oros) [1816982] - [netdrv] net: phy: marvell: consolidate phy status reading (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use positive logic for link state (Petr Oros) [1816982] - [netdrv] net: phy: marvell: initialise link partner state earlier (Petr Oros) [1816982] - [netdrv] net: phy: marvell: rearrange to use genphy_read_lpa() (Petr Oros) [1816982] - [netdrv] net: phy: provide and use genphy_read_status_fixed() (Petr Oros) [1816982] - [netdrv] net: phy: add genphy_check_and_restart_aneg() (Petr Oros) [1816982] - [netdrv] net: phy: use phy_resolve_aneg_pause() (Petr Oros) [1816982] - [netdrv] net: phy: remove redundant .aneg_done initialisers (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Remove unneeded semicolon (Petr Oros) [1816982] - [netdrv] net: phylink: extend clause 45 PHY validation workaround (Petr Oros) [1816982] - [netdrv] net: phylink: improve clause 45 PHY ksettings_set implementation (Petr Oros) [1816982] - [netdrv] net: phylink: fix interface passed to mac_link_up (Petr Oros) [1816982] - [netdrv] net: phylink: propagate phy_attach_direct() return code (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add rx-fifo-depth and tx-fifo-depth (Petr Oros) [1816982] - [documentation] dt-bindings: dp83867: Convert fifo-depth to common fifo-depth and make optional (Petr Oros) [1816982] - [netdrv] net: sfp: re-attempt probing for phy (Petr Oros) [1816982] - [netdrv] net: sfp: error handling for phy probe (Petr Oros) [1816982] - [netdrv] net: sfp: rename sm_retries (Petr Oros) [1816982] - [netdrv] net: sfp: use a definition for the fault recovery attempts (Petr Oros) [1816982] - [netdrv] net: sfp: add support for Clause 45 PHYs (Petr Oros) [1816982] - [netdrv] net: phy: add Broadcom BCM84881 PHY driver (Petr Oros) [1816982] - [netdrv] net: phylink: make Broadcom BCM84881 based SFPs work (Petr Oros) [1816982] - [netdrv] net: phylink: delay MAC configuration for copper SFP modules (Petr Oros) [1816982] - [netdrv] net: phylink: split phylink_sfp_module_insert() (Petr Oros) [1816982] - [netdrv] net: phylink: split link_an_mode configured and current settings (Petr Oros) [1816982] - [netdrv] net: phylink: support Clause 45 PHYs on SFP+ modules (Petr Oros) [1816982] - [netdrv] net: phylink: re-split __phylink_connect_phy() (Petr Oros) [1816982] - [netdrv] net: mdio-i2c: add support for Clause 45 accesses (Petr Oros) [1816982] - [netdrv] net: sfp: move phy_start()/phy_stop() to phylink (Petr Oros) [1816982] - [netdrv] net: sfp: add module start/stop upstream notifications (Petr Oros) [1816982] - [netdrv] net: sfp: derive interface mode from ethtool link modes (Petr Oros) [1816982] - [netdrv] net: sfp: remove incomplete 100BASE-FX and 100BASE-LX support (Petr Oros) [1816982] - [netdrv] net: sfp: avoid tx-fault with Nokia GPON module (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: fix hfs boot in rgmii mode (Petr Oros) [1816982] - [netdrv] phy: mdio-thunder: add missed pci_release_regions in remove (Petr Oros) [1816982] - [netdrv] net: sfp: fix hwmon (Petr Oros) [1816982] - [netdrv] net: sfp: fix unbind (Petr Oros) [1816982] - [netdrv] net: phy: realtek: fix using paged operations with RTL8105e / RTL8208 (Petr Oros) [1816982] - [netdrv] net: phy: Use the correct style for SPDX License Identifier (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Fix return paths to return proper values (Petr Oros) [1816982] - [netdrv] net: phy: add helpers phy_(un)lock_mdio_bus (Petr Oros) [1816982] - [netdrv] mdio_bus: don't use managed reset-controller (Petr Oros) [1816982] - [netdrv] net: phy: initialise phydev speed and duplex sanely (Petr Oros) [1816982] - [netdrv] net: phy: remove phy_ethtool_sset() (Petr Oros) [1816982] - [netdrv] net: sfp: soft status and control support (Petr Oros) [1816982] - [netdrv] net: sfp: add some quirks for GPON modules (Petr Oros) [1816982] - [netdrv] net: sfp: add support for module quirks (Petr Oros) [1816982] - [netdrv] net: phylink: fix link mode modification in PHY mode (Petr Oros) [1816982] - [netdrv] net: phylink: update documentation on create and destroy (Petr Oros) [1816982] - [netdrv] mdio_bus: Fix init if CONFIG_RESET_CONTROLLER=n (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: fix return of uninitialized variable ret (Petr Oros) [1816982] - [netdrv] phy: mdio-sun4i: add missed regulator_disable in remove (Petr Oros) [1816982] - [netdrv] mscc.c: fix semicolon.cocci warnings (Petr Oros) [1816982] - [netdrv] net: phy: avoid matching all-ones clause 45 PHY IDs (Petr Oros) [1816982] - [netdrv] net: phylink: update to use phy_support_asym_pause() (Petr Oros) [1816982] - [netdrv] net: phy: marvell10g: add SFP+ support (Petr Oros) [1816982] - [netdrv] net: phy: add core phylib sfp support (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Add TI dp83869 phy (Petr Oros) [1816982] - [documentation] dt-bindings: net: dp83869: Add TI dp83869 phy (Petr Oros) [1816982] - [netdrv] mscc.c: Add support for additional VSC PHYs (Petr Oros) [1816982] - [netdrv] net: sfp: fix spelling mistake "requies" -> "requires" (Petr Oros) [1816982] - [netdrv] net: sfp: allow modules with slow diagnostics to probe (Petr Oros) [1816982] - [netdrv] net: sfp: allow sfp to probe slow to initialise GPON modules (Petr Oros) [1816982] - [netdrv] net: sfp: move module insert reporting out of probe (Petr Oros) [1816982] - [netdrv] net: sfp: split power mode switching from probe (Petr Oros) [1816982] - [netdrv] net: sfp: track upstream's attachment state in state machine (Petr Oros) [1816982] - [netdrv] net: sfp: ensure TX_FAULT has deasserted before probing the PHY (Petr Oros) [1816982] - [netdrv] net: sfp: allow fault processing to transition to other states (Petr Oros) [1816982] - [netdrv] net: sfp: eliminate mdelay() from PHY probe (Petr Oros) [1816982] - [netdrv] net: sfp: split the PHY probe from sfp_sm_mod_init() (Petr Oros) [1816982] - [netdrv] net: sfp: control TX_DISABLE and phy only from main state machine (Petr Oros) [1816982] - [netdrv] net: sfp: avoid power switch on address-change modules (Petr Oros) [1816982] - [netdrv] net: sfp: parse SFP power requirement earlier (Petr Oros) [1816982] - [netdrv] net: sfp: rename T_PROBE_WAIT to T_SERIAL (Petr Oros) [1816982] - [netdrv] net: sfp: handle module remove outside state machine (Petr Oros) [1816982] - [netdrv] net: sfp: rename sfp_sm_ins_next() as sfp_sm_mod_next() (Petr Oros) [1816982] - [netdrv] net: sfp: move tx disable on device down to main state machine (Petr Oros) [1816982] - [netdrv] net: sfp: move sfp sub-state machines into separate functions (Petr Oros) [1816982] - [netdrv] net: sfp: fix sfp_bus_put() kernel documentation (Petr Oros) [1816982] - [include] net: sfp: fix sfp_bus_add_upstream() warning (Petr Oros) [1816982] - [netdrv] net: sfp: rework upstream interface (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add missing dependency on CONFIG_REGULATOR (Petr Oros) [1816982] - [netdrv] net: phy: at803x: remove config_init for AR9331 (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix the PHY names (Petr Oros) [1816982] - [netdrv] net: phy: at803x: mention AR8033 as same as AR8031 (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add device tree binding (Petr Oros) [1816982] - [documentation] dt-bindings: net: phy: Add support for AT803X (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix Kconfig description (Petr Oros) [1816982] - [netdrv] net: phylink: Fix phylink_dbg() macro (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add downshift support for 88E1145 (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add PHY tunable support for more PHY versions (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add downshift support for M88E1111 (Petr Oros) [1816982] - [netdrv] net: phy: marvell: fix downshift function naming (Petr Oros) [1816982] - [netdrv] net: phy: marvell: fix typo in constant MII_M1011_PHY_SRC_DOWNSHIFT_MASK (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: support Wake on LAN (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: move dt parsing to probe (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: enable robust auto-mdix (Petr Oros) [1816982] - [netdrv] net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: add 1000Base-X support for BCM54616S (Petr Oros) [1816982] - [netdrv] net: phy: add support for clause 37 auto-negotiation (Petr Oros) [1816982] - [netdrv] net: phy: modify assignment to OR for dev_flags in phy_attach_direct (Petr Oros) [1816982] - [netdrv] net: phy: marvell: remove superseded function marvell_set_downshift (Petr Oros) [1816982] - [netdrv] net: phy: marvell: support downshift as PHY tunable (Petr Oros) [1816982] - [netdrv] net: phy: avoid NPE if read_page/write_page callbacks are not available (Petr Oros) [1816982] - [netdrv] net: phy: micrel: Update KSZ87xx PHY name (Petr Oros) [1816982] - [netdrv] net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs (Petr Oros) [1816982] - [netdrv] net: phy: Fix "link partner" information disappear issue (Petr Oros) [1816982] - [netdrv] net: sfp: move fwnode parsing into sfp-bus layer (Petr Oros) [1816982] - [netdrv] net: phylink: use more linkmode_* (Petr Oros) [1816982] - [netdrv] phylink: fix kernel-doc warnings (Petr Oros) [1816982] - [netdrv] net: phy: mscc: make arrays static, makes object smaller (Petr Oros) [1816982] - [netdrv] net: phy: at803x: use operating parameters from PHY-specific status (Petr Oros) [1816982] - [netdrv] net: phy: extract pause mode (Petr Oros) [1816982] - [netdrv] net: phy: extract link partner advertisement reading (Petr Oros) [1816982] - [netdrv] net: phy: allow for reset line to be tied to a sleepy GPIO controller (Petr Oros) [1816982] - [documentation] docs: networking: phy: Improve phrasing (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Use bcm54xx_config_clock_delay() for BCM54612E (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Fix RGMII delays configuration for BCM54210E (Petr Oros) [1816982] - [netdrv] net: phy: at803x: remove probe and struct at803x_priv (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add ar9331 support (Petr Oros) [1816982] - [of] of: mdio: Fix a signedness bug in of_phy_get_and_connect() (Petr Oros) [1816982] - [netdrv] net/phy: fix DP83865 10 Mbps HDX loopback disable function (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable (Petr Oros) [1816982] - [net] ethtool: implement Energy Detect Powerdown support via phy-tunable (Petr Oros) [1816982] - [netdrv] net: mdio: switch to using gpiod_get_optional() (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add SGMII mode type switching (Petr Oros) [1816982] - [documentation] net: phy: dp83867: Add documentation for SGMII mode type (Petr Oros) [1816982] - [netdrv] net: phylink: Fix flow control resolution (Petr Oros) [1816982] - [netdrv] net: phy: Do not check Link status when loopback is enabled (Petr Oros) [1816982] - [netdrv] net: phy: gmii2rgmii: Dont use priv field in phy device (Petr Oros) [1816982] - [include] include: mdio: Add driver data helpers (Petr Oros) [1816982] - [netdrv] net: phy: force phy suspend when calling phy_stop (Petr Oros) [1816982] - [netdrv] phy: mdio-sun4i: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-mux-meson-g12a: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-moxart: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-hisi-femac: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-bcm-iproc: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] net: phy: sfp: Add labels to hwmon sensors (Petr Oros) [1816982] - [netdrv] net: phy: remove genphy_config_init (Petr Oros) [1816982] - [netdrv] net: phy: remove calls to genphy_config_init (Petr Oros) [1816982] - [netdrv] net: phy: realtek: support NBase-T MMD EEE registers on RTL8125 (Petr Oros) [1816982] - [uapi] net: phy: add EEE-related constants (Petr Oros) [1816982] - [documentation] dt-bindings: net: add bindings for ADIN PHY driver (Petr Oros) [1816982] - [netdrv] net: phy: adin: add ethtool get_stats support (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement downshift configuration via phy-tunable (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement PHY subsystem software reset (Petr Oros) [1816982] - [netdrv] net: phy: adin: add EEE translation layer from Clause 45 to Clause 22 (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support MDI/MDIX/Auto-MDI selection (Petr Oros) [1816982] - [netdrv] net: phy: adin: make RMII fifo depth configurable (Petr Oros) [1816982] - [netdrv] net: phy: adin: make RGMII internal delays configurable (Petr Oros) [1816982] - [netdrv] net: phy: adin: configure RGMII/RMII/MII modes on config (Petr Oros) [1816982] - [netdrv] net: phy: adin: add {write,read}_mmd hooks (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support for interrupts (Petr Oros) [1816982] - [netdrv] net: phy: adin: hook genphy_{suspend, resume} into the driver (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support for Analog Devices PHYs (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for EEE registers on integrated PHY's (Petr Oros) [1816982] - [netdrv] net: phy: swphy: emulate register MII_ESTATUS (Petr Oros) [1816982] - [netdrv] net: phy: read MII_CTRL1000 in genphy_read_status only if needed (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add NBase-T PHY auto-detection (Petr Oros) [1816982] - [netdrv] net: phy: let phy_speed_down/up support speeds >1Gbps (Petr Oros) [1816982] - [netdrv] net: phy: add phy_speed_down_core and phy_resolve_min_speed (Petr Oros) [1816982] - [netdrv] net: phy: add __set_linkmode_max_speed (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for the 2.5Gbps PHY in RTL8125 (Petr Oros) [1816982] - [netdrv] net: phy: add phy_modify_paged_changed (Petr Oros) [1816982] - [netdrv] net: phy: prepare phylib to deal with PHY's extending Clause 22 (Petr Oros) [1816982] - [netdrv] net: phy: simplify genphy_config_advert by using the linkmode_adv_to_xxx_t functions (Petr Oros) [1816982] - [netdrv] net: phy: at803x: stop switching phy delay config needlessly (Petr Oros) [1816982] - [netdrv] net: mdio-octeon: Fix Kconfig warnings and build errors (Petr Oros) [1816982] - [netdrv] net: phy: xgene: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] net: phy: Add mdio-aspeed (Petr Oros) [1816982] - [netdrv] net: phy: phy_led_triggers: Fix a possible null-pointer dereference in phy_led_trigger_change_speed() (Petr Oros) [1816982] - [netdrv] net: phylink: Fix flow control for fixed-link (Petr Oros) [1816982] - [netdrv] net: phylink: don't start and stop SGMII PHYs in SFP modules twice (Petr Oros) [1816982] - [netdrv] net: phy: Make use of linkmode_mod_bit helper (Petr Oros) [1816982] - [netdrv] net: stmmac: enable clause 45 mdio support (Petr Oros) [1816982] - [documentation] doc: phy: document some PHY_INTERFACE_MODE_xxx settings (Petr Oros) [1816982] - [netdrv] Revert "net: phylink: set the autoneg state in phylink_phy_change" (Petr Oros) [1816982] - [netdrv] net: phy: sfp: clean up a condition (Petr Oros) [1816982] - [netdrv] net: phylink: set the autoneg state in phylink_phy_change (Petr Oros) [1816982] - [netdrv] net: phy: Add more 1000BaseX support detection (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Add genphy_suspend and genphy_resume for BCM5464 (Petr Oros) [1816982] - [netdrv] net: sfp: add mutex to prevent concurrent state checks (Petr Oros) [1816982] - [netdrv] net: sfp: Stop SFP polling and interrupt handling during shutdown (Petr Oros) [1816982] - [netdrv] net: phy: Add detection of 1000BaseX link mode support (Petr Oros) [1816982] - [netdrv] net: phy: remove state PHY_FORCING (Petr Oros) [1816982] - [netdrv] net: phy: export phy_queue_state_machine (Petr Oros) [1816982] - [netdrv] net: phy: add callback for custom interrupt handler to struct phy_driver (Petr Oros) [1816982] - [netdrv] net: phy: enable interrupts when PHY is attached already (Petr Oros) [1816982] - [netdrv] net: phy: sfp: enable i2c-bus detection on ACPI based systems (Petr Oros) [1816982] - [netdrv] net: phy: tja11xx: Switch to HWMON_CHANNEL_INFO() (Petr Oros) [1816982] - [netdrv] net: phylink: Add phylink_{printk, err, warn, info, dbg} macros (Petr Oros) [1816982] - [netdrv] net: phylink: Add PHYLINK_DEV operation type (Petr Oros) [1816982] - [netdrv] net: phylink: Add struct phylink_config to PHYLINK API (Petr Oros) [1816982] - [netdrv] net: phylink: Add phylink_mac_link_{up, down} wrapper functions (Petr Oros) [1816982] - [netdrv] net: phy: Add phy_standalone sysfs entry (Petr Oros) [1816982] - [netdrv] net: phy: Check against net_device being NULL (Petr Oros) [1816982] - [netdrv] net: phy: Guard against the presence of a netdev (Petr Oros) [1816982] - [netdrv] net: phy: Add phy_sysfs_create_links helper function (Petr Oros) [1816982] - [netdrv] net: sfp: remove sfp-bus use of netdevs (Petr Oros) [1816982] - [netdrv] net: sfp: add mandatory attach/detach methods for sfp buses (Petr Oros) [1816982] - [netdrv] net: phy: allow Clause 45 access via mii ioctl (Petr Oros) [1816982] - [netdrv] net: phylink: support for link gpio interrupt (Petr Oros) [1816982] - [netdrv] net: phylink: remove netdev from phylink mii ioctl emulation (Petr Oros) [1816982] - [netdrv] net: phy: bcm87xx: improve bcm87xx_config_init and feature detection (Petr Oros) [1816982] - [netdrv] net: phy: tja11xx: Add TJA11xx PHY driver (Petr Oros) [1816982] - [netdrv] net: phy: aquantia: add USXGMII support and warn if XGMII mode is set (Petr Oros) [1816982] - [documentation] dt-bindings: net: document new usxgmii phy mode (Petr Oros) [1816982] - [include] net: phy: add interface mode PHY_INTERFACE_MODE_USXGMII (Petr Oros) [1816982] - [netdrv] net: phy: lxt: Add suspend/resume support to LXT971 and LXT973 (Petr Oros) [1816982] - [netdrv] net: phy: Make phy_basic_t1_features use base100t1 (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Allocate state struct in probe (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Validate FIFO depth property (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: IO impedance is not dependent on RGMII delay (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Use unsigned variables to store unsigned properties (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Rework delay rgmii delay handling (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add ability to disable output clock (Petr Oros) [1816982] - [documentation] dt-bindings: phy: dp83867: Add documentation for disabling clock output (Petr Oros) [1816982] - [documentation] dt-bindings: phy: dp83867: Describe how driver behaves w.r.t rgmii delay (Petr Oros) [1816982] - [documentation] Documentation: net: phy: switch documentation to rst format (Petr Oros) [1816982] - [of] of: mdio: Support fixed links in of_phy_get_and_connect() (Petr Oros) [1816982] - [documentation] doc: add phylink documentation to the networking book (Petr Oros) [1816982] - [include] net: phylink: update mac_config() documentation (Petr Oros) [1816982] - [tools] libbpf: use .so dynamic symbols for abi check (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Install generated test progs (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Fix memory leak caused by not freeing entry in unregister_ftrace_direct() (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support CO-RE relocations for LDX/ST/STX instructions (Yauheni Kaliuta) [1813370] - [include] bpf: Add bpf_jit_blinding_enabled for !CONFIG_BPF_JIT (Yauheni Kaliuta) [1813370] - [tools] tools, bpf_asm: Warn when jumps are out of range (Yauheni Kaliuta) [1813370] - [include] bpf: Add typecast to bpf helpers to help BTF generation (Yauheni Kaliuta) [1813370] - [trace] bpf: Add typecast to raw_tracepoints to help BTF generation (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix build on read-only filesystems (Yauheni Kaliuta) [1813370] - [tools] bpf: Add further test_verifier cases for record_func_key (Yauheni Kaliuta) [1813370] - [net] bpf: Fix record_func_key to perform backtracking on r3 (Yauheni Kaliuta) [1813370] - [net] bpf: Fix missing prog untrack in release_maps (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: fix syscall_tp due to unused syscall (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Replace symbol compare of trace_event (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Test function_graph tracer and bpf trampoline together (Yauheni Kaliuta) [1813370] - [net] bpf: Make BPF trampoline use register_ftrace_direct() API (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add modify_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add information on number of page groups allocated (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Tell objtool to ignore nondeterministic ftrace stack layout (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Add a counter to test function_graph with direct (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Add register_ftrace_direct() for custom trampolines (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add another check for match in register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add ftrace_find_direct_func() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Separate out the copying of a ftrace_hash from __ftrace_hash_move() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Separate out functionality from ftrace_location_range() (Yauheni Kaliuta) [1813370] - [net] bpf: Fix build in minimal configurations, again (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add a fexit/bpf2bpf test with target bpf prog no callees (Yauheni Kaliuta) [1813370] - [net] bpf: Fix a bug when getting subprog 0 jited image in check_attach_btf_id (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Bring back c++ include/link test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Don't hard-code root cgroup id (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix broken xdp_rxq_info due to map order assumptions (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix readelf output parsing for Fedora (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix readelf output parsing on powerpc with recent binutils (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: correct perror strings (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: test_sockmap: handle file creation failures gracefully (Yauheni Kaliuta) [1813370] - [net] bpf: Fix build in minimal configurations (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix up generation of bpf_helper_defs.h (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix global variable relocation (Yauheni Kaliuta) [1813370] - [net] bpf: Fix static checker warning (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix usage of u32 in userspace code (Yauheni Kaliuta) [1813370] - [net] bpf: Simplify __bpf_arch_text_poke poke type handling (Yauheni Kaliuta) [1813370] - [tools] bpf: Introduce BPF_TRACE_x helper for the tracing tests (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add various tail call test cases (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Emit patchable direct jump as tail call (Yauheni Kaliuta) [1813370] - [net] bpf: Constant map key tracking for prog array pokes (Yauheni Kaliuta) [1813370] - [net] bpf: Add poke dependency tracking for prog array maps (Yauheni Kaliuta) [1813370] - [include] bpf: Add initial poke descriptor table for jit images (Yauheni Kaliuta) [1813370] - [net] bpf: Move owner type, jited info into array auxiliary data (Yauheni Kaliuta) [1813370] - [net] bpf: Move bpf_free_used_maps into sleepable section (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Generalize and extend bpf_arch_text_poke for direct jumps (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add BPF trampoline performance test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Ensure core_reloc_kernel is reading test_progs's data only (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add verifier tests for better jmp32 register bounds (Yauheni Kaliuta) [1813370] - [net] bpf: Provide better register bounds after jmp32 instructions (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Integrate verbose verifier log into test_progs (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support initialized global variables (Yauheni Kaliuta) [1813370] - [tools] selftests, bpftool: Skip the build test if not in tree (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix various errors and warning reported by checkpatch.pl (Yauheni Kaliuta) [1813370] - [tools] selftests, bpftool: Set EXIT trap after usage function (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Ensure no DWARF relocations for BPF object files (Yauheni Kaliuta) [1813370] - [tools] tools, bpftool: Fix warning on ignored return value for 'read' (Yauheni Kaliuta) [1813370] - [net] bpf: Switch bpf_map_{area_alloc, area_mmapable_alloc}() to u64 size (Yauheni Kaliuta) [1813370] - [net] bpf: Make array_map_mmap static (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Enforce no-ALU32 for test_progs-no_alu32 (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Remove JITed image size limitations (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use lg(f)rl when long displacement cannot be used (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use lgrl instead of lg where possible (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Load literal pool register using larl (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Align literal pool entries (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use relative long branches (Yauheni Kaliuta) [1813370] - [net] bpf: Fix memory leak on object 'data' (Yauheni Kaliuta) [1813370] - [tools] selftests, bpf: Workaround an alu32 sub-register spilling issue (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add BPF_TYPE_MAP_ARRAY mmap() tests (Yauheni Kaliuta) [1813370] - [tools] libbpf: Make global data internal arrays mmap()-able, if possible (Yauheni Kaliuta) [1813370] - [net] bpf: Add mmap() support for BPF_MAP_TYPE_ARRAY (Yauheni Kaliuta) [1813370] - [netdrv] bpf: Convert bpf_prog refcnt to atomic64_t (Yauheni Kaliuta) [1813370] - [netdrv] net: thunderx: set xdp_prog to NULL if bpf_prog_add fails (Yauheni Kaliuta) [1813370] - [net] bpf: Switch bpf_map ref counter to atomic64_t so bpf_map_inc() never fails (Yauheni Kaliuta) [1813370] - [lib] locking/atomic: Use s64 for atomic64 (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make conditional inc/dec ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make unconditional inc/dec ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make test ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic64_fetch_add_unless() optional (Yauheni Kaliuta) [1813370] - [powerpc] atomics/powerpc: Define atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [lib] atomics/generic: Define atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [include] atomics: Prepare for atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic_fetch_add_unless() optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic64_inc_not_zero() optional (Yauheni Kaliuta) [1813370] - [include] atomics: Make conditional ops return 'bool' (Yauheni Kaliuta) [1813370] - [net] atomics/treewide: Remove atomic_inc_not_zero_hint() (Yauheni Kaliuta) [1813370] - [net] atomics/treewide: Rename __atomic_add_unless() => atomic_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add a test for attaching BPF prog to another BPF prog and subprog (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Extend test_pkt_access test (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for attaching BPF programs to other BPF programs (Yauheni Kaliuta) [1813370] - [net] bpf: Support attaching tracing BPF program to other BPF programs (Yauheni Kaliuta) [1813370] - [net] bpf: Compare BTF types of functions arguments with actual types (Yauheni Kaliuta) [1813370] - [net] bpf: Annotate context types (Yauheni Kaliuta) [1813370] - [net] bpf: Fix race in btf_resolve_helper_id() (Yauheni Kaliuta) [1813370] - [x86] bpf: Reserve space for BPF trampoline in BPF programs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add stress test for maximum number of progs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add combined fentry/fexit test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add fexit tests for BPF trampoline (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add test for BPF trampoline (Yauheni Kaliuta) [1813370] - [net] bpf: Add kernel test functions for fentry testing (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Simple test for fentry/fexit (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support to attach to fentry/fexit tracing progs (Yauheni Kaliuta) [1813370] - [tools] libbpf: Introduce btf__find_by_name_kind() (Yauheni Kaliuta) [1813370] - [net] bpf: Introduce BPF trampoline (Yauheni Kaliuta) [1813370] - [x86] bpf: Add bpf_arch_text_poke() helper (Yauheni Kaliuta) [1813370] - [x86] bpf: Refactor x86 JIT into helpers (Yauheni Kaliuta) [1813370] - [documentation] bpf, doc: Change right arguments for JIT example code (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add missing option to xdpsock usage (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Remove duplicate option from xdpsock (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Make sure JIT passes do not increase code size (Yauheni Kaliuta) [1813370] - [net] bpf: Support doubleword alignment in bpf_jit_binary_alloc (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: adjust Makefile and README.rst (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add missing object file to TEST_FILES (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Workaround a verifier failure for test_progs (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use Rx-only and Tx-only sockets in xdpsock (Yauheni Kaliuta) [1813370] - [tools] libbpf: Allow for creating Rx or Tx only AF_XDP sockets (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add XDP_SHARED_UMEM support to xdpsock (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support XDP_SHARED_UMEM with external XDP program (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add tests for automatic map unpinning on load failure (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: update map definition to new syntax BTF-defined map (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Update outdated error message (Yauheni Kaliuta) [1813370] - [tools] bpf: Add cb access in kfree_skb test (Yauheni Kaliuta) [1813370] - [net] bpf: Add array support to btf_struct_access (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Remove unused SEEN_RET0, SEEN_REG_AX and ret0_ip (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Wrap JIT macro parameter usages in parentheses (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use kvcalloc for addrs array (Yauheni Kaliuta) [1813370] - [net] bpf: Account for insn->off when doing bpf_probe_read_kernel (Yauheni Kaliuta) [1813370] - [tools] libbpf: Simplify BPF_CORE_READ_BITFIELD_PROBED usage (Yauheni Kaliuta) [1813370] - [tools] selftests/bps: Clean up removed ints relocations negative tests (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: log direct file writes (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add field size relocation tests (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Add relocatable bitfield reading tests (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for field size relocations (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for relocatable bitfields (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Remove too strict field offset relo test cases (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add selftest to read/write sockaddr from user space (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Convert prog tests to probe_read_{user, kernel}{, _str} helper (Yauheni Kaliuta) [1813370] - [samples] bpf, samples: Use bpf_probe_read_user where appropriate (Yauheni Kaliuta) [1813370] - [net] bpf: Switch BPF probe insns to bpf_probe_read_kernel (Yauheni Kaliuta) [1813370] - [kernel] bpf: Add probe_read_{user, kernel} and probe_read_{user, kernel}_str helpers (Yauheni Kaliuta) [1813370] - [kernel] bpf: Make use of probe_user_write in probe write helper (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add strict non-pagefault kernel-space read function (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add non-pagefault user-space write function (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add non-pagefault user-space read functions (Yauheni Kaliuta) [1813370] - [tools] selftests: Add tests for automatic map pinning (Yauheni Kaliuta) [1813370] - [net] bpf: Implement map_gen_lookup() callback for XSKMAP (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for prog_tracing (Yauheni Kaliuta) [1813370] - [net] bpf: Replace prog_raw_tp+btf_id with prog_tracing (Yauheni Kaliuta) [1813370] - [net] bpf: Fix bpf jit kallsym access (Yauheni Kaliuta) [1813370] - [documentation] bpf: Add s390 testing documentation (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Test narrow load from bpf_sysctl.write (Yauheni Kaliuta) [1813370] - [net] bpf: Enforce 'return 0' in BTF-enabled raw_tp programs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Restore $(OUTPUT)/test_stub.o rule (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Use -m{little, big}-endian for clang (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix .gitignore to ignore no_alu32/ (Yauheni Kaliuta) [1813370] - [net] bpf: Prepare btf_ctx_access for non raw_tp use case (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix strncat bounds error in libbpf_prog_type_by_name (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix LDLIBS order (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Move test_section_names into test_progs and fix it (Yauheni Kaliuta) [1813370] - [tools] tools/bpf: Turn on llvm alu32 attribute by default (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Get rid of a bunch of explicit BPF program type setting (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Make reference_tracking test use subtests (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Make a copy of subtest name (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add uprobe/uretprobe and tp/raw_tp section suffixes (Yauheni Kaliuta) [1813370] - [tools] bpf, libbpf: Add kernel version section parsing back (Yauheni Kaliuta) [1813370] - [kernel] bpf: Fix build error without CONFIG_NET (Yauheni Kaliuta) [1813370] - [net] bpf: Fix bpf_attr.attach_btf_id check (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Remove test_libbpf.sh and test_libbpf_open (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Move test_queue_stack_map.h into progs/ where it belongs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Replace test_progs and test_maps w/ general rule (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add simple per-test targets to Makefile (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Switch test_maps to test_progs' test.h format (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Teach test_progs to cd into subdir (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Restore the netns after flow dissector reattach test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add kfree_skb raw_tp test (Yauheni Kaliuta) [1813370] - [net] bpf: Check types of arguments passed into helpers (Yauheni Kaliuta) [1813370] - [net] bpf: Add support for BTF pointers to x86 JIT (Yauheni Kaliuta) [1813370] - [net] bpf: Add support for BTF pointers to interpreter (Yauheni Kaliuta) [1813370] - [net] bpf: Attach raw_tp program with BTF via type name (Yauheni Kaliuta) [1813370] - [net] bpf: Implement accurate raw_tp context access via BTF (Yauheni Kaliuta) [1813370] - [tools] libbpf: Auto-detect btf_id of BTF-based raw_tracepoints (Yauheni Kaliuta) [1813370] - [net] bpf: Add attach_btf_id attribute to program load (Yauheni Kaliuta) [1813370] - [net] bpf: Process in-kernel BTF (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: Add selftest for __sk_buff tstamp (Yauheni Kaliuta) [1813370] - [net] bpf: Allow __sk_buff tstamp in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Remove obsolete pahole/BTF support detection (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Enforce libbpf build before BPF programs are built (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add preparation steps and sysroot info to readme (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add sysroot support (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Provide C/LDFLAGS to libbpf (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add C/LDFLAGS to libbpf.so and test_libpf targets (Yauheni Kaliuta) [1813370] - [tools] libbpf: Don't use cxx to test_libpf target (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use target CC environment for HDR_PROBE (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use own flags but not HOSTCFLAGS (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Base target programs rules on Makefile.target (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add makefile.target for separate CC target build (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Drop unnecessarily inclusion for bpf_load (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use __LINUX_ARM_ARCH__ selector for arm (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use own EXTRA_CFLAGS for clang commands (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use --target from cross-compile (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix cookie_uid_helper_example obj build (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix HDR_PROBE "echo" (Yauheni Kaliuta) [1813370] - [tools] libbpf: Handle invalid typedef emitted by old GCC (Yauheni Kaliuta) [1813370] - [tools] libbpf: Generate more efficient BPF_CORE_READ code (Yauheni Kaliuta) [1813370] - [net] bpf: Fix cast to pointer from integer of different size warning (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Check that flow dissector can be re-attached (Yauheni Kaliuta) [1813370] - [net] flow_dissector: Allow updating the flow dissector program atomically (Yauheni Kaliuta) [1813370] - [include] bpf: Align struct bpf_prog_stats (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add read-only map values propagation tests (Yauheni Kaliuta) [1813370] - [net] bpf: Track contents of read-only maps as scalars (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Convert test_btf_dump into test_progs test (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Add max_pckt_size option at xdp_adjust_tail (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: add test for BPF flow dissector in the root namespace (Yauheni Kaliuta) [1813370] - [net] bpf/flow_dissector: add mode to enforce global BPF flow dissector (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Trivial - fix spelling mistake in usage (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix dependency ordering for attach_probe test (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add cscope and tags targets to Makefile (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: switch tests to new bpf_object__open_{file, mem}() APIs (Yauheni Kaliuta) [1813370] - [tools] bpf: Add loop test case with 32 bit reg comparison against 0 (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Small optimization in comparing against imm0 (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Correct path to include msg + path (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add static to enable_all_controllers() (Yauheni Kaliuta) [1813370] - [tools] libbpf: provide backported RHEL symbols as upstream aliases (Yauheni Kaliuta) [1813370] - [tools] libbpf: Bump current version to v0.0.6 (Yauheni Kaliuta) [1813370] - [tools] libbpf: bump up version, 0.0.5 (Yauheni Kaliuta) [1813370] - [net] cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled (Yauheni Kaliuta) [1823623 1813370] - [vfio] vfio-pci: Mask cap zero (Alex Williamson) [1840248] - [vfio] spapr_tce: Fix incorrect tce_iommu_group memory free (David Gibson) [1832386] - [fs] CIFS: fiemap: do not return EINVAL if get nothing (Leif Sahlberg) [1837180] - [fs] CIFS: Increment num_remote_opens stats counter even in case of smb2_query_dir_first (Leif Sahlberg) [1837180] - [fs] cifs: potential unintitliazed error code in cifs_getattr() (Leif Sahlberg) [1837180] - [fs] cifs: Use #define in cifs_dbg (Leif Sahlberg) [1837180] - [fs] cifs: fix rename() by ensuring source handle opened with DELETE bit (Leif Sahlberg) [1837180] - [fs] cifs: add missing mount option to /proc/mounts (Leif Sahlberg) [1837180] - [fs] cifs: fix potential mismatch of UNC paths (Leif Sahlberg) [1837180] - [fs] cifs: enable change notification for SMB2.1 dialect (Leif Sahlberg) [1837180] - [fs] cifs: Fix mode output in debugging statements (Leif Sahlberg) [1837180] - [fs] cifs: fix mount option display for sec=krb5i (Leif Sahlberg) [1837180] - [fs] smb3: Add defines for new information level, FileIdInformation (Leif Sahlberg) [1837180] - [fs] smb3: print warning once if posix context returned on open (Leif Sahlberg) [1837180] - [fs] smb3: add one more dynamic tracepoint missing from strict fsync path (Leif Sahlberg) [1837180] - [fs] cifs: fix mode bits from dir listing when mounted with modefromsid (Leif Sahlberg) [1837180] - [fs] cifs: fix channel signing (Leif Sahlberg) [1837180] - [fs] cifs: add SMB3 change notification support (Leif Sahlberg) [1837180] - [fs] cifs: make multichannel warning more visible (Leif Sahlberg) [1837180] - [fs] cifs: Add tracepoints for errors on flush or fsync (Leif Sahlberg) [1837180] - [fs] cifs: log warning message (once) if out of disk space (Leif Sahlberg) [1837180] - [fs] smb3: fix problem with null cifs super block with previous patch (Leif Sahlberg) [1837180] - [fs] SMB3: Backup intent flag missing from some more ops (Leif Sahlberg) [1837180] - [fs] cifs: update internal module version number (Leif Sahlberg) [1837180] - [fs] CIFS: Fix task struct use-after-free on reconnect (Leif Sahlberg) [1837180] - [fs] cifs: use PTR_ERR_OR_ZERO() to simplify code (Leif Sahlberg) [1837180] - [fs] cifs: add support for fallocate mode 0 for non-sparse files (Leif Sahlberg) [1837180] - [fs] CIFS: Add support for setting owner info, dos attributes, and create time (Leif Sahlberg) [1837180] - [fs] cifs: remove set but not used variable 'server' (Leif Sahlberg) [1837180] - [fs] cifs: fix unitialized variable poential problem with network I/O cache lock patch (Leif Sahlberg) [1837180] - [fs] cifs: Fix return value in __update_cache_entry (Leif Sahlberg) [1837180] - [fs] cifs: Avoid doing network I/O while holding cache lock (Leif Sahlberg) [1837180] - [fs] cifs: Fix potential deadlock when updating vol in cifs_reconnect() (Leif Sahlberg) [1837180] - [fs] cifs: Merge is_path_valid() into get_normalized_path() (Leif Sahlberg) [1837180] - [fs] cifs: Introduce helpers for finding TCP connection (Leif Sahlberg) [1837180] - [fs] cifs: Get rid of kstrdup_const()'d paths (Leif Sahlberg) [1837180] - [fs] cifs: Clean up DFS referral cache (Leif Sahlberg) [1837180] - [fs] cifs: Don't use iov_iter::type directly (Leif Sahlberg) [1837180] - [fs] cifs: set correct max-buffer-size for smb2_ioctl_init() (Leif Sahlberg) [1837180] - [fs] fs/cifs/cifssmb.c: use true, false for bool variable (Leif Sahlberg) [1837180] - [fs] fs/cifs/smb2ops.c: use true, false for bool variable (Leif Sahlberg) [1837180]- [lib] XArray: Optimise xas_sibling() if !CONFIG_XARRAY_MULTI (Don Dutile) [1840916] - [include] XArray: Fix incorrect comment in header file (Don Dutile) [1840916] - [lib] XArray: Fix xas_pause for large multi-index entries (Don Dutile) [1840916] - [lib] XArray: Fix xa_find_next for large multi-index entries (Don Dutile) [1840916] - [lib] XArray tests: Add check_insert (Don Dutile) [1840916] - [documentation] XArray: Add xa_for_each_range (Don Dutile) [1840916] - [documentation] XArray: Improve documentation of search marks (Don Dutile) [1840916] - [documentation] docs: remove :c:func: annotations from xarray.rst (Don Dutile) [1840916] - [lib] XArray: Fix xas_find returning too many entries (Don Dutile) [1840916] - [lib] XArray: Fix xa_find_after with multi-index entries (Don Dutile) [1840916] - [lib] XArray: Fix infinite loop with entry at ULONG_MAX (Don Dutile) [1840916] - [include] XArray: Add wrappers for nested spinlocks (Don Dutile) [1840916] - [lib] XArray: Fix xas_pause at ULONG_MAX (Don Dutile) [1840916] - [include] xarray.h: fix kernel-doc warning (Don Dutile) [1840916] - [lib] XArray: Fix xas_next() with a single entry at 0 (Don Dutile) [1840916] - [fs] mm: fix page cache convergence regression (Don Dutile) [1840916] - [netdrv] ionic: call ionic_port_init after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: leave netdev mac alone after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: add device reset to fw upgrade down (Jonathan Toppins) [1830969] - [netdrv] ionic: refresh devinfo after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: no link check until after probe (Jonathan Toppins) [1830969] - [netdrv] phy: avoid unnecessary link-up delay in polling mode (Petr Oros) [1785663] - [x86] x86: Select HARDIRQS_SW_RESEND on x86 (David Arcari) [1840433] - [pci] PCI/AER: Fix the broken interrupt injection (David Arcari) [1840433] - [kernel] genirq: Provide interrupt injection mechanism (David Arcari) [1840433] - [kernel] genirq: Sanitize state handling in check_irq_resend() (David Arcari) [1840433] - [kernel] genirq: Add return value to check_irq_resend() (David Arcari) [1840433] - [x86] x86/apic/vector: Force interupt handler invocation to irq context (David Arcari) [1840433] - [kernel] genirq: Add protection against unsafe usage of generic_handle_irq() (David Arcari) [1840433] - [kernel] genirq/debugfs: Add missing sanity checks to interrupt injection (David Arcari) [1840433] - [include] genirq/irqdomain: Make sure all irq domain flags are distinct (David Arcari) [1840433] - [x86] x86/apic/msi: Plug non-maskable MSI affinity race (David Arcari) [1840433] - [char] char: ipmi: convert to use i2c_new_client_device() (Tony Camuso) [1832408] - [char] ipmi: kcs: Fix aspeed_kcs_probe_of_v1() (Tony Camuso) [1832408] - [char] ipmi: Add missing annotation for ipmi_ssif_lock_cond() and ipmi_ssif_unlock_cond() (Tony Camuso) [1832408] - [char] ipmi: kcs: aspeed: Implement v2 bindings (Tony Camuso) [1832408] - [char] ipmi: kcs: Finish configuring ASPEED KCS device before enable (Tony Camuso) [1832408] - [char] ipmi: fix hung processes in __get_guid() (Tony Camuso) [1832408] - [char] drivers: char: ipmi: ipmi_msghandler: Pass lockdep expression to RCU lists (Tony Camuso) [1832408] - [char] ipmi_si: Avoid spurious errors for optional IRQs (Tony Camuso) [1832408] - [base] driver core: platform: Export platform_get_irq_optional() (Tony Camuso) [1832408] - [base] driver core: platform: Introduce platform_get_irq_optional() (Tony Camuso) [1832408] - [x86] x86/efi: Update e820 with reserved EFI boot services data to fix kexec breakage (Kairui Song) [1779544] - [powerpc] powerpc/nvdimm: use H_SCM_QUERY hcall on H_OVERLAP error (Pingfan Liu) [1792125] - [powerpc] powerpc/nvdimm: Use HCALL error as the return value (Pingfan Liu) [1792125] - [scsi] scsi: sd: Signal drive managed SMR disks (Ewan Milne) [1838784] - [scsi] scsi: core: free sgtables in case command setup fails (Ewan Milne) [1838784] - [scsi] scsi: core: Allow the state change from SDEV_QUIESCE to SDEV_BLOCK (Ewan Milne) [1838784] - [scsi] scsi: sg: add sg_remove_request in sg_write (Ewan Milne) [1838784] - [scsi] scsi: sg: add sg_remove_request in sg_common_write (Ewan Milne) [1838784] - [scsi] scsi: sd: Fix optimal I/O size for devices that change reported values (Ewan Milne) [1838784] - [scsi] scsi: move scsicam_bios_param to the end of scsicam.c (Ewan Milne) [1838784] - [scsi] scsi: simplify scsi_bios_ptable (Ewan Milne) [1838784] - [scsi] scsi: core: Use scnprintf() for avoiding potential buffer overflow (Ewan Milne) [1838784] - [scsi] scsi: core: avoid repetitive logging of device offline messages (Ewan Milne) [1838784] - [scsi] scsi: core: use kobj_to_dev (Ewan Milne) [1838784] - [scsi] scsi: sd: Clear sdkp->protection_type if disk is reformatted without PI (Ewan Milne) [1838784] - [scsi] scsi: core: Fix a compiler warning triggered by the SCSI logging code (Ewan Milne) [1838784] - [scsi] scsi: core: Adjust DBD setting in MODE SENSE for caching mode page per LLD (Ewan Milne) [1838784] - [scsi] scsi: sd_zbc: Improve report zones error printout (Ewan Milne) [1838784] - [scsi] scsi: scsi_transport_sas: Fix memory leak when removing devices (Ewan Milne) [1838784] - [scsi] scsi: scsi_debug: num_tgts must be >= 0 (Ewan Milne) [1838784] - [scsi] scsi: core: Handle drivers which set sg_tablesize to zero (Ewan Milne) [1838784] - [scsi] scsi: tracing: Fix handling of TRANSFER LENGTH == 0 for READ(6) and WRITE(6) (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_ioctl(): get rid of access_ok() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_write(): get rid of access_ok()/__copy_from_user()/__get_user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_read(): get rid of access_ok()/__copy_..._user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_new_write(): don't bother with access_ok (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_write(): __get_user() can fail.. (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_new_write(): replace access_ok() + __copy_from_user() with copy_from_user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_ioctl(): fix copyout handling (Ewan Milne) [1838784] - [scsi] scsi: core: scsi_trace: Use get_unaligned_be*() (Ewan Milne) [1838784] - [scsi] drivers/scsi: Replace rcu_swap_protected() with rcu_replace_pointer() (Ewan Milne) [1838784] - [scsi] scsi: sd: define variable dif as unsigned int instead of bool (Ewan Milne) [1838784] - [scsi] scsi: core: try to get module before removing device (Ewan Milne) [1838784] - [scsi] scsi: scsi_dh_alua: handle RTPG sense code correctly during state transitions (Ewan Milne) [1838784] - [powerpc] powerpc/64: flush_inval_dcache_range() becomes flush_dcache_range() (Gustavo Duarte) [1834180] - [x86] x86/ima: use correct identifier for SetupMode variable (Diego Domingos) [1781925] - [lib] kobject: fix dereference before null check on kobj (Diego Domingos) [1781925] - [include] MODSIGN: make new include file self contained (Diego Domingos) [1781925] - [security] ima: initialize the "template" field with the default template (Diego Domingos) [1781925] - [x86] x86/ima: Check EFI_RUNTIME_SERVICES before using (Diego Domingos) [1781925] - [x86] x86/ima: check EFI SetupMode too (Diego Domingos) [1781925] - [security] ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash() (Diego Domingos) [1781925] - [security] evm: check hash algorithm passed to init_desc() (Diego Domingos) [1781925] - [base] firmware: improve LSM/IMA security behaviour (Diego Domingos) [1781925] - [lib] kobject: Add support for default attribute groups to kobj_type (Diego Domingos) [1781925] - [samples] samples/kobject: Replace foo_ktype's default_attrs field with groups (Diego Domingos) [1781925] - [x86] x86/ima: require signed kernel modules (Diego Domingos) [1781925] - [security] powerpc: Load firmware trusted keys/hashes into kernel keyring (Diego Domingos) [1781925] - [powerpc] powerpc: expose secure variables to userspace via sysfs (Diego Domingos) [1781925] - [powerpc] powerpc/powernv: Add OPAL API interface to access secure variable (Diego Domingos) [1781925] - [powerpc] powerpc/ima: fix secure boot rules in ima arch policy (Diego Domingos) [1781925] - [security] ima: Set again build_ima_appraise variable (Diego Domingos) [1781925] - [security] ima: Remove redundant policy rule set in add_rules() (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Indicate kernel modules appended signatures are enforced (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Update ima arch policy to check for blacklist (Diego Domingos) [1781925] - [security] ima: Check against blacklisted hashes for files with modsig (Diego Domingos) [1781925] - [security] ima: prevent a file already mmap'ed write to be mmap'ed execute (Diego Domingos) [1781925] - [certs] certs: Add wrapper function to check blacklisted binary hash (Diego Domingos) [1781925] - [security] ima: Make process_buffer_measurement() generic (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Define trusted boot policy (Diego Domingos) [1781925] - [powerpc] powerpc: Detect the trusted boot state of the system (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Add support to initialize ima policy rules (Diego Domingos) [1781925] - [powerpc] powerpc: Detect the secure boot mode of the system (Diego Domingos) [1781925] - [security] ima: use struct_size() in kzalloc() (Diego Domingos) [1781925] - [tools] sefltest/ima: support appended signatures (modsig) (Diego Domingos) [1781925] - [security] ima: Fix use after free in ima_read_modsig() (Diego Domingos) [1781925] - [security] ima: fix freeing ongoing ahash_request (Diego Domingos) [1781925] - [security] ima: always return negative code for error (Diego Domingos) [1781925] - [security] ima: Store the measurement again when appraising a modsig (Diego Domingos) [1781925] - [security] ima: Define ima-modsig template (Diego Domingos) [1781925] - [security] ima: Collect modsig (Diego Domingos) [1781925] - [security] ima: Implement support for module-style appended signatures (Diego Domingos) [1781925] - [security] ima: Factor xattr_verify() out of ima_appraise_measurement() (Diego Domingos) [1781925] - [security] integrity: Introduce struct evm_xattr (Diego Domingos) [1781925] - [security] ima: Add modsig appraise_type option for module-style appended signatures (Diego Domingos) [1781925] - [kernel] MODSIGN: Export module signature definitions (Diego Domingos) [1781925] - [kernel] modsign: log module name in the event of an error (Diego Domingos) [1781925] - [kernel] KEXEC: Call ima_kexec_cmdline to measure the boot command line args (Diego Domingos) [1781925] - [security] IMA: Define a new template field buf (Diego Domingos) [1781925] - [security] IMA: Define a new hook to measure the kexec boot command line arguments (Diego Domingos) [1781925] - [security] IMA: support for per policy rule template formats (Diego Domingos) [1781925] - [security] integrity: Fix __integrity_init_keyring() section mismatch (Diego Domingos) [1781925] - [security] x86/ima: fix the Kconfig dependency for IMA_ARCH_POLICY (Diego Domingos) [1781925] - [security] ima: Make arch_policy_entry static (Diego Domingos) [1781925] - [security] ima: show rules with IMA_INMASK correctly (Diego Domingos) [1781925] - [security] ima: fix wrong signed policy requirement when not appraising (Diego Domingos) [1781925] - [tools] selftests/kexec: update get_secureboot_mode (Diego Domingos) [1781925] - [tools] selftests/kexec: make kexec_load test independent of IMA being enabled (Diego Domingos) [1781925] - [tools] selftests/kexec: check kexec_load and kexec_file_load are enabled (Diego Domingos) [1781925] - [tools] selftests/kexec: Add missing '=y' to config options (Diego Domingos) [1781925] - [tools] selftests/kexec: kexec_file_load syscall test (Diego Domingos) [1781925] - [tools] selftests/kexec: define "require_root_privileges" (Diego Domingos) [1781925] - [tools] selftests/kexec: define common logging functions (Diego Domingos) [1781925] - [tools] selftests/kexec: define a set of common functions (Diego Domingos) [1781925] - [tools] selftests/kexec: cleanup the kexec selftest (Diego Domingos) [1781925] - [tools] selftests/kexec: move the IMA kexec_load selftest to selftests/kexec (Diego Domingos) [1781925] - [security] evm: remove set but not used variable 'xattr' (Diego Domingos) [1781925] - [security] security: integrity: partial revert of make ima_main explicitly non-modular (Diego Domingos) [1781925] - [security] ima: cleanup the match_token policy code (Diego Domingos) [1781925] - [security] ima: Use inode_is_open_for_write (Diego Domingos) [1781925] - [security] security: fs: make inode explicitly non-modular (Diego Domingos) [1781925] - [security] security: audit and remove any unnecessary uses of module.h (Diego Domingos) [1781925] - [security] security: integrity: make evm_main explicitly non-modular (Diego Domingos) [1781925] - [security] security: integrity: make ima_main explicitly non-modular (Diego Domingos) [1781925] - [tools] selftests/ima: kexec_load syscall test (Diego Domingos) [1781925] - [security] ima: don't measure/appraise files on efivarfs (Diego Domingos) [1781925] - [x86] x86/ima: retry detecting secure boot mode (Diego Domingos) [1781925] - [x86] x86/ima: define arch_get_ima_policy() for x86 (Diego Domingos) [1781925] - [kernel] kernel/kexec_file.c: remove some duplicated includes (Diego Domingos) [1781925] - [security] ima: open a new file instance if no read permissions (Diego Domingos) [1781925] - [security] security/integrity: constify some read-only data (Diego Domingos) [1781925] - [documentation] security: fix LSM description location (Diego Domingos) [1781925] - [security] evm: Allow non-SHA1 digital signatures (Diego Domingos) [1781925] - [security] security: export security_kernel_load_data function (Diego Domingos) [1781925] - [security] ima: based on policy warn about loading firmware (pre-allocated buffer) (Diego Domingos) [1781925] - [security] ima: prevent kexec_load syscall based on runtime secureboot flag (Diego Domingos) [1781925] - [security] module: replace the existing LSM hook in init_module (Diego Domingos) [1781925] - [security] ima: based on policy require signed firmware (sysfs fallback) (Diego Domingos) [1781925] - [security] ima: add support for arch specific policies (Diego Domingos) [1781925] - [security] ima: based on policy require signed kexec kernel images (Diego Domingos) [1781925] - [security] ima: refactor ima_init_policy() (Diego Domingos) [1781925] - [include] sysfs: Fixes __BIN_ATTR_WO() macro (Diego Domingos) [1781925] - [include] security: define new LSM hook named security_kernel_load_data (Diego Domingos) [1781925] - [kernel] kexec: add call to LSM hook in original kexec_load syscall (Diego Domingos) [1781925] - [base] firmware: add call to LSM hook before firmware sysfs fallback (Diego Domingos) [1781925] - [security] ima: add build time policy (Diego Domingos) [1781925] - [security] ima: Support platform keyring for kernel appraisal (Diego Domingos) [1781925] - [security] integrity: Remove references to module keyring (Diego Domingos) [1781925] - [powerpc] powerpc/kexec: Fix loading of kernel + initramfs with kexec_file_load() (Diego Domingos) [1781925] - [security] ima: Use designated initializers for struct ima_event_data (Diego Domingos) [1781925] - [security] ima: Update MAX_TEMPLATE_NAME_LEN to fit largest reasonable definition (Diego Domingos) [1781925] - [certs] PKCS#7: Refactor verify_pkcs7_signature() (Diego Domingos) [1781925] - [crypto] PKCS#7: Introduce pkcs7_get_digest() (Diego Domingos) [1781925] - [security] integrity: Select CONFIG_KEYS instead of depending on it (Diego Domingos) [1781925] - [powerpc] powerpc/powernv: Move opal_power_control_init() call in opal_init() (Diego Domingos) [1781925] - [security] x86/efi: move common keyring handler functions to new file (Diego Domingos) [1781925] - [security] x86/efi: remove unused variables (Diego Domingos) [1781925] - [include] sysfs: add BIN_ATTR_WO() macro (Diego Domingos) [1781925] - [x86] x86/ima: define arch_ima_get_secureboot (Diego Domingos) [1781925] - [powerpc] powerpc/pci: unmap legacy INTx interrupts of passthrough IO adapters (Steve Best) [1840279] - [powerpc] powerpc/xive: Clear the page tables for the ESB IO mapping (Steve Best) [1840279] - [hv] hyper-v: Use UUID API for exporting the GUID (Mohammed Gamal) [1828451 1815498] - [kernel] uuid: Add inline helpers to import / export UUIDs (Mohammed Gamal) [1828451 1815498] - [hv] hv: Move AEOI determination to architecture dependent code (Mohammed Gamal) [1828451 1815498] - [x86] hyper-v: Report crash data in die() when panic_on_oops is set (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Report crash register data when sysctl_record_panic_msg is not set (Mohammed Gamal) [1828451 1815498] - [x86] hyper-v: Report crash register data or kmsg before running crash kernel (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Trigger crash enlightenment only once during system crash (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Free hv_panic_page when fail to register kmsg dump (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Unload vmbus channel in hv panic callback (Mohammed Gamal) [1828451 1815498] - [hv] hv_debugfs: Make hv_debug_root static (Mohammed Gamal) [1828451 1815498] - [hv] hyperv_vmbus.h: Replace zero-length array with flexible-array member (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Ignore CHANNELMSG_TL_CONNECT_RESULT(23) (Mohammed Gamal) [1828451 1815498] - [hv] hv_balloon: Balloon up according to request page number (Mohammed Gamal) [1828451 1815498] - [hv] hv_balloon: use generic_online_page() (Mohammed Gamal) [1828451 1815498] - [mm] memory_hotplug: export generic_online_page() (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Fix crash handler reset of Hyper-V synic (Mohammed Gamal) [1828451 1815498] - [hv] hv: Replace binary semaphore with mutex (Mohammed Gamal) [1828451 1815498] - [hv] hv: balloon: Remove dependencies on guest page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Remove dependencies on guest page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: util: Specify ring buffer size using Hyper-V page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: Specify receive buffer size using Hyper-V page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Add module parameter to cap the VMBus version (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Enable VMBus protocol versions 4.1, 5.1 and 5.2 (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Introduce table of VMBus protocol versions (Mohammed Gamal) [1828451 1815498] - [pci] hv: Replace zero-length array with flexible-array member (Mohammed Gamal) [1793636] - [pci] hv: Decouple the func definition in hv_dr_state from VSP message (Mohammed Gamal) [1793636] - [pci] hv: Add support for protocol 1.3 and support PCI_BUS_RELATIONS2 (Mohammed Gamal) [1793636] - [pci] hv: Add missing kfree(hbus) in hv_pci_probe()'s error handling path (Mohammed Gamal) [1793636] - [pci] hv: Remove unnecessary type casting from kzalloc (Mohammed Gamal) [1793636] - [pci] hv: Avoid a kmemleak false positive caused by the hbus buffer (Mohammed Gamal) [1793636] - [infiniband] RDMA/srpt: Fix disabling device management (Kamal Heib) [1840016] - [misc] vhost: disable for OABI (Jason Wang) [1771441] - [include] virtio: drop vringh.h dependency (Jason Wang) [1771441] - [virtio] virtio_input: pull in slab.h (Jason Wang) [1771441] - [char] virtio-rng: pull in slab.h (Jason Wang) [1771441] - [block] virtio_blk: add a missing include (Jason Wang) [1771441] - [vdpa] vdpa: fix comment of vdpa_register_device() (Jason Wang) [1771441] - [vhost] vdpa: make vhost, virtio depend on menu (Jason Wang) [1771441] - [include] vdpa: allow a 32 bit vq alignment (Jason Wang) [1771441] - [vdpa] vdpasim: Return status in vdpasim_get_status (Jason Wang) [1771441] - [vdpa] vdpa: remove unused variables 'ifcvf' and 'ifcvf_lm' (Jason Wang) [1771441] - [vdpa] vdpa-sim: depend on HAS_DMA (Jason Wang) [1771441] - [virtio] vdpa: move to drivers/vdpa (Jason Wang) [1771441] - [virtio] virtio: Intel IFC VF driver for VDPA (Jason Wang) [1771441] - [virtio] vdpasim: vDPA device simulator (Jason Wang) [1771441] - [vhost] vhost: introduce vDPA-based backend (Jason Wang) [1771441] - [virtio] virtio: introduce a vDPA based transport (Jason Wang) [1771441] - [virtio] vDPA: introduce vDPA bus (Jason Wang) [1771441] - [vhost] vringh: IOTLB support (Jason Wang) [1771441] - [vhost] vhost: factor out IOTLB (Jason Wang) [1771441] - [vhost] vhost: allow per device message handler (Jason Wang) [1771441] - [misc] vhost: refine vhost and vringh kconfig (Jason Wang) [1771441] - [vhost] vringh: fix copy direction of vringh_iov_push_kern() (Jason Wang) [1771441] - [vhost] vhost: factor out setting vring addr and num (Jason Wang) [1771441] - [vhost] vhost: introduce helpers to get the size of metadata area (Jason Wang) [1771441] - [vhost] vhost: rename vq_iotlb_prefetch() to vq_meta_prefetch() (Jason Wang) [1771441] - [vhost] vhost: fine grain userspace memory accessors (Jason Wang) [1771441] - [vhost] vhost: generalize adding used elem (Jason Wang) [1771441] - [misc] mic: vop: Allow building on more systems (Jason Wang) [1771441] - [virtio] virtio: support VIRTIO_F_ORDER_PLATFORM (Jason Wang) [1771441] - [uapi] vhost: split structs into a separate header file (Jason Wang) [1771441] - [fs] compat_ioctl: add compat_ptr_ioctl() (Jason Wang) [1771441] - [vhost] vhost: allow vhost-scsi driver to be built-in (Jason Wang) [1771441] - [x86] arch/x86: Remove vendor specific CPU ID checks (Prarit Bhargava) [1840145] - [tools] perf vendor events amd: Update Zen1 events to V2 (Wei Huang) [1790641] - [tools] perf vendor events amd: Add Zen2 events (Wei Huang) [1790641] - [tools] perf vendor events amd: Restrict model detection for zen1 based processors (Wei Huang) [1790641] - [x86] perf/amd/uncore: Add support for Family 19h L3 PMU (Wei Huang) [1790641] - [x86] perf/amd/uncore: Make L3 thread mask code more readable (Wei Huang) [1790641] - [x86] perf/amd/uncore: Prepare L3 thread mask code for Family 19h (Wei Huang) [1790641] - [scsi] scsi: fnic: Use scnprintf() for avoiding potential buffer overflow (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: do not queue commands during fwreset (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: fix invalid stack access (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: fix use after free (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: make array dev_cmd_err static const, makes object smaller (Govindarajulu Varadarajan) [1797808]- [media] media: v4l: fix uapi mpeg slice params definition (Torez Smith) [1825410 1821835] - [uapi] v4l2-controls: add a missing include (Torez Smith) [1825410 1821835] - [dma] dma-mapping: remove dma_release_declared_memory (Torez Smith) [1825410 1821835] - [usb] usb/ohci-tmio: remove the HCD_DMA flag (Torez Smith) [1825410 1821835] - [usb] usb: add a HCD_DMA flag instead of guestimating DMA capabilities (Torez Smith) [1825410 1821835] - [usb] usb: add a hcd_uses_dma helper (Torez Smith) [1825410 1821835] - [usb] usb: don't create dma pools for HCDs with a localmem_pool (Torez Smith) [1825410 1821835] - [usb] usb: host: ohci-tmio: Mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [usb] USB: drop HCD_LOCAL_MEM flag (Torez Smith) [1825410 1821835] - [usb] usb: host: ohci-tmio: init genalloc for local memory (Torez Smith) [1825410 1821835] - [usb] dma-mapping: remove the DMA_MEMORY_EXCLUSIVE flag (Torez Smith) [1825410 1821835] - [media] media: xirlink_cit: add missing descriptor sanity checks (Torez Smith) [1825410 1821835] - [media] media: ttusb-dec: Fix info-leak in ttusb_dec_send_command() (Torez Smith) [1788005 1825410 1821835] {CVE-2019-19533} - [media] media: usb: fix memory leak in af9005_identify_state (Torez Smith) [1825141 1825410 1821835] {CVE-2019-18809} - [netdrv] cdc_ether: fix rndis support for Mediatek based smartphones (Torez Smith) [1825410 1821835] - [netdrv] r8152: remove calling netif_napi_del (Torez Smith) [1825410 1821835] - [netdrv] Revert "r8152: napi hangup fix after disconnect" (Torez Smith) [1825410 1821835] - [netdrv] r8152: Set memory to all 0xFFs on failed reg reads (Torez Smith) [1825410 1821835] - [netdrv] net: kalmia: fix memory leaks (Torez Smith) [1825410 1821835] - [netdrv] cx82310_eth: fix a memory leak bug (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Fix memory leaks (Torez Smith) [1825410 1821835] - [netdrv] r8152: fix typo in register name (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: pcan_usb_pro: Fix info-leaks to USB devices (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: pcan_usb_fd: Fix info-leaks to USB devices (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: force the string buffer NULL-terminated (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: fix improper read if get_registers() fail (Torez Smith) [1825410 1821835] - [netdrv] net: usb: qmi_wwan: Add the BroadMobi BM818 card (Torez Smith) [1825410 1821835] - [netdrv] can: mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: fix potential double kfree_skb() (Torez Smith) [1825410 1821835] - [netdrv] usb: qmi_wwan: add D-Link DWM-222 A2 device ID (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: change V4L2_PIX_FMT_BGRA444 define: fourcc was already in use (Torez Smith) [1825410 1821835] - [netdrv] r8152: set RTL8152_UNPLUG only for real disconnection (Torez Smith) [1825410 1821835] - [netdrv] r8152: move calling r8153b_rx_agg_chg_indicate() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: init MAC address buffers (Torez Smith) [1825410 1821835] - [netdrv] r8152: fix the setting of detecting the linking change for runtime suspend (Torez Smith) [1825410 1821835] - [media] media: hdpvr: fix locking and a missing msleep (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Fix out-of-bounds read (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Fix shifting signed 32-bit value by 31 bits problem (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 468 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 238 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 235 (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: extend permitted QMAP mux_id value range (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: avoid RCU stalls on device disconnect when in QMAP mode (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add network device usage statistics for qmimux devices (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add support for QMAP padding in the RX path (Torez Smith) [1825410 1821835] - [media] media: cx231xx-cards: Add Hauppauge 955Q variant (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add Hauppauge HVR1955/1975 devices (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add i2c client demod/tuner support (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add multiple dvb frontend support (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix access to uninitialized fields on probe error (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Include streaming interface number in debugfs dir name (Torez Smith) [1825410 1821835] - [netdrv] can: usb: Kconfig: Remove duplicate menu entry (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: fix null-ptr-deref in class_unregister() (Torez Smith) [1825410 1821835] - [media] media: cxusb: Revert "media: cxusb: add raw mode support for, Medion MD95700" (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 412 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 286 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 258 (Torez Smith) [1825410 1821835] - [media] media: media/usb: set device_caps in struct video_device (Torez Smith) [1825410 1821835] - [media] media: dvb-usb/cxusb-analog.c: fix coccinelle warning, use ktime.h (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 164 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 131 (Torez Smith) [1825410 1821835] - [media] media: cx231xx-dvb: fix memory leak in dvb_fini() (Torez Smith) [1825410 1821835] - [media] media: em28xx: use usb_to_input_id() rather than handrolling it (Torez Smith) [1825410 1821835] - [media] media: em28xx: use common code for decoding nec scancodes (Torez Smith) [1825410 1821835] - [media] media: em28xx: give RC device proper name (Torez Smith) [1825410 1821835] - [media] media: cxusb: fix several coding style issues (Torez Smith) [1825410 1821835] - [media] media: cxusb-analog: Fix some coding style issues (Torez Smith) [1825410 1821835] - [media] media: cxusb: add raw mode support for Medion MD95700 (Torez Smith) [1825410 1821835] - [media] media: cxusb: add analog mode support for Medion MD95700 (Torez Smith) [1825410 1821835] - [media] media: cxusb: implement Medion MD95700 digital / analog coexistence (Torez Smith) [1825410 1821835] - [media] media: usb:zr364xx:Fix KASAN:null-ptr-deref Read in zr364xx_vidioc_querycap (Torez Smith) [1825410 1821835] - [media] media: pwc: convert to BIT macro (Torez Smith) [1825410 1821835] - [media] media: cpia2_usb: first wake up, then free in disconnect (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: use a different format for warnings (Torez Smith) [1825410 1821835] - [media] media: smsusb: better handle optional alignment (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 65 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Torez Smith) [1825410 1821835] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 55 (Torez Smith) [1825410 1821835] - [media] media: remove redundant 'default n' from Kconfig-s (Torez Smith) [1825410 1821835] - [media] media: af9035: Remove duplicate error reporting for dvbsky_usb_generic_rw (Torez Smith) [1825410 1821835] - [media] media: dvbsky: Remove duplicate error reporting for dvbsky_usb_generic_rw (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: Report error on all error paths (Torez Smith) [1825410 1821835] - [media] media: au0828: fix null dereference in error path (Torez Smith) [1825410 1821835] - [media] media: dvb: usb: fix use after free in dvb_usb_device_exit (Torez Smith) [1825410 1821835] - [media] media: usb: siano: Fix false-positive "uninitialized variable" warning (Torez Smith) [1825410 1821835] - [netdrv] usbnet: fix kernel crash after disconnect (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: fix racing condition (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 24 (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 17 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (Torez Smith) [1825410 1821835] - [media] treewide: Add SPDX license identifier - Makefile/Kconfig (Torez Smith) [1825410 1821835] - [media] treewide: Add SPDX license identifier for more missed files (Torez Smith) [1825410 1821835] - [media] media: usb: siano: Fix general protection fault in smsusb (Torez Smith) [1825410 1821835] - [media] media: prefix header search paths with $(srctree)/ (Torez Smith) [1825410 1821835] - [media] media: remove unneeded header search paths (Torez Smith) [1825410 1821835] - [netdrv] aqc111: cleanup mtu related logic (Torez Smith) [1825410 1821835] - [netdrv] Revert "aqc111: fix writing to the phy on BE" (Torez Smith) [1825410 1821835] - [netdrv] Revert "aqc111: fix double endianness swap on BE" (Torez Smith) [1825410 1821835] - [netdrv] net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix double endianness swap on BE (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix writing to the phy on BE (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix endianness issue in aqc111_change_mtu (Torez Smith) [1825410 1821835] - [netdrv] net: usb: smsc: fix warning reported by kbuild test robot (Torez Smith) [1825410 1821835] - [netdrv] net: usb: support of_get_mac_address new ERR_PTR error (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: Remove unnecessary NULL pointer check (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: Simplify device detection (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: new Wistron, ZTE and D-Link devices (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 16-bit RGB555 formats (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 16-bit RGB4444 formats (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 32-bit RGB formats (Torez Smith) [1825410 1821835] - [netdrv] r8152: sync sa_family with the media type of network device (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Prevent a buffer overflow (Torez Smith) [1825410 1821835] - [media] media: au0828: stop video streaming only when last user stops (Torez Smith) [1825410 1821835] - [media] media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() (Torez Smith) [1825410 1821835] - [media] media: au0828: fix enable and disable source audio and video inconsistencies (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add quirk for Quectel dynamic config (Torez Smith) [1825410 1821835] - [netdrv] r8152: Refresh MAC address during USBDEVFS_RESET (Torez Smith) [1825410 1821835] - [netdrv] r8152: remove extra action copying ethernet address (Torez Smith) [1825410 1821835] - [media] media: replace strncpy() by strscpy() (Torez Smith) [1825410 1821835] - [media] media: usbvision: fix a potential NULL pointer dereference (Torez Smith) [1825410 1821835] - [media] media: gspca: Kill URBs on USB device disconnect (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add Olicard 600 (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend HWID table by QNAP device (Torez Smith) [1825410 1821835] - [media] media: pwc-ctl: pChoose can't be NULL (Torez Smith) [1825410 1821835] - [media] media: Kconfig files: use the right help coding style (Torez Smith) [1825410 1821835] - [media] media: em28xx-input: make const array addr_list static (Torez Smith) [1825410 1821835] - [media] media: dvb: Add support for the Avermedia TD310 (Torez Smith) [1825410 1821835] - [media] media: dvb: init i2c already in it930x_frontend_attach (Torez Smith) [1825410 1821835] - [media] media: dvbsky: Avoid leaking dvb frontend (Torez Smith) [1825410 1821835] - [media] media: gspca: do not resubmit URBs when streaming has stopped (Torez Smith) [1825410 1821835] - [media] media: au0828: minor fix to a misleading comment in _close() (Torez Smith) [1825410 1821835] - [media] media: go7007: avoid clang frame overflow warning with KASAN (Torez Smith) [1825410 1821835] - [media] media: cpia2: Fix use-after-free in cpia2_exit (Torez Smith) [1825410 1821835] - [netdrv] peak_usb: fix clang build warning (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add support for Quectel EG12/EM12 (Torez Smith) [1825410 1821835] - [media] media: a few more typos at staging, pci, platform, radio and usb (Torez Smith) [1825410 1821835] - [media] media: usb: fix several typos (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Use usb_make_path to fill in usb_info (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix smatch warning (Torez Smith) [1825410 1821835] - [media] media: v4l: Add 32-bit packed YUV formats (Torez Smith) [1825410 1821835] - [netdrv] net: usb: cdc-phonet: use struct_size() in alloc_netdev() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: rtl8150: mark expected switch fall-through (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: Mark expected switch fall-through (Torez Smith) [1825410 1821835] - [media] media: hdpvr: fix smatch warning (Torez Smith) [1825410 1821835] - [media] media: usbvision: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: cpia2: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Avoid NULL pointer dereference at the end of streaming (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix 'type' check leading to overflow (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: ax88772_bind return error when hw_reset fail (Torez Smith) [1825410 1821835] - [netdrv] net: usb: rtl8150: remove set but not used variable 'rx_stat' (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend HWID table by TRENDnet device (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Add more field helper macros (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov772x: remove unnecessary COM3 initialization (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov722x: remove camera clock setup from bridge_init (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov722x: remove mode specific video data registers from bridge_init (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov772x: add SGBRG8 bayer mode support (Torez Smith) [1825410 1821835] - [media] media: gspca: ov543-ov772x: move video format specific registers into bridge_start (Torez Smith) [1825410 1821835] - [media] media: gspca: support multiple pixel formats in TRY_FMT (Torez Smith) [1825410 1821835] - [media] media: gspca: support multiple pixel formats in ENUM_FRAMEINTERVALS (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534: replace msleep(10) with usleep_range (Torez Smith) [1825410 1821835] - [uapi] media: v4l: uAPI: V4L2_BUF_TYPE_META_OUTPUT is an output buffer type (Torez Smith) [1825410 1821835] - [media] media: gspca: mt9m111: Check write_bridge for timeout (Torez Smith) [1825410 1821835] - [media] media: gspca: Check the return value of write_bridge for timeout (Torez Smith) [1825410 1821835] - [media] media: usb: gspca: add a missed check for goto_low_power (Torez Smith) [1825410 1821835] - [media] media: usb: gspca: add a missed return-value check for do_command (Torez Smith) [1825410 1821835] - [media] media: v4l2-ctrls.c/uvc: zero v4l2_event (Torez Smith) [1825410 1821835] - [media] media: usb: pwc: Don't use coherent DMA buffers for ISO transfer (Torez Smith) [1825410 1821835] - [media] media: usb: pwc: Introduce TRACE_EVENTs for pwc_isoc_handler() (Torez Smith) [1825410 1821835] - [netdrv] cdc_ether: trivial whitespace readability fix (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add MTU default to qmap network interface (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Fix qmap header retrieval in qmimux_rx_fixup (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add support for Fibocom NL678 series (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Resolve issue with changing MAC address (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Telit LN940 series (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Fibocom NL668 series (Torez Smith) [1825410 1821835] - [media] media: v4l: Add support for V4L2_BUF_TYPE_META_OUTPUT (Torez Smith) [1825410 1821835] - [media] media: siano: Use kmemdup instead of duplicating its function (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: fix spelling mistake "statuss" -> "status" (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Move interrupt buffer to priv buffer (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Add missing usb_free_urb to free interrupt urb (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: Bugfix for wrong return values (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: Support for ASUS A6VM notebook added (Torez Smith) [1825410 1821835] - [media] media: usb: dvb-usb: remove old friio driver (Torez Smith) [1825410 1821835] - [media] media: lmedm04: use dvb_usbv2_generic_rw_locked (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Move usb buffer to lme2510_state (Torez Smith) [1825410 1821835] - [media] media: rtl28xxu: add support for Sony CXD2837ER slave demod (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Utilise for_each_uvc_urb iterator (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Rename uvc_{un, }init_video() (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Split uvc_video_enable into two (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Move decode processing to process context (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Abstract streaming object lifetime (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: queue: Support asynchronous buffer handling (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: queue: Simplify spin-lock usage (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Protect queue internals with helper (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Convert decode functions to use new context structure (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Refactor URB descriptors (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix spelling mistake, "Cinnergy" -> "Cinergy" (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Refactor teardown of uvc on USB disconnect (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Add support for the CNF4 format (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add 4bpp packed depth confidence format CNF4 (Torez Smith) [1825410 1821835] - [media] media: usb: Use kmemdup instead of duplicating its function (Torez Smith) [1825410 1821835] - [media] media: dvb: Use WARM definition from identify_state() (Torez Smith) [1825410 1821835] - [media] media: dib0700: fix spelling mistake "Amplifyer" -> "Amplifier" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: Fix incorrect use of transfer_flags URB_FREE_BUFFER (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Initialize wol_cfg with memset in aqc111_suspend (Torez Smith) [1825410 1821835] - [netdrv] net: Don't default Aquantia USB driver to 'y' (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: fix spelling mistake: "resumbmitting" -> "resubmitting" (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend cdc_ether blacklist (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add ASIX's HW ids (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for wake on LAN by MAGIC packet (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement get/set_link_ksettings callbacks (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Initialize ethtool_ops structure (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add RX VLAN filtering support (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for VLAN_CTAG_TX/RX offload (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement set_rx_mode callback (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for TSO (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for enable/disable checksum offload (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for changing MTU (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add checksum offload support (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement RX data path (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement TX data path (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for getting and setting of MAC address (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Introduce link management (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Introduce PHY access (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Various callbacks implementation (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add implementation of read and write commands (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add bind and empty unbind callbacks (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Driver skeleton for Aquantia AQtion USB to 5GbE (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: fix potential recvmsg bug and recvmsg bug 2 (Torez Smith) [1825410 1821835] - [media] media: pulse8-cec: return 0 when invalidating the logical address (Torez Smith) [1825410 1821835] - [media] media: gspca: fix frame overflow error (Torez Smith) [1825410 1821835] - [media] media: cropcap/g_selection split (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: check for csum being in last four bytes (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: fix memcpy for accessing rx-data (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: simplify tx_fixup code (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: fix rx packet alignment (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: remove duplicated include from ucan.c (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: remove set but not used variable 'udev' (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix accessing freed memory in kvaser_usb_start_xmit() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix potential uninitialized variable use (Torez Smith) [1825410 1821835] - [netdrv] net: smsc95xx: Fix MTU range (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: disable carrier check while suspending (Torez Smith) [1825410 1821835] - [netdrv] net: cdc_ncm: remove set but not used variable 'ctx' (Torez Smith) [1825410 1821835] - [netdrv] net: cdc_ncm: use tasklet_init() for tasklet_struct init (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Gemalto's Cinterion ALASxx WWAN interface (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: replace `printk` with `pr_*` (Torez Smith) [1825410 1821835] - [media] media: cx231xx: fix potential sign-extension overflow on large shift (Torez Smith) [1825410 1821835] - [media] Revert "media: dvbsky: use just one mutex for serializing device R/W ops" (Torez Smith) [1825410 1821835] - [netdrv] net/usb: cancel pending work when unbinding smsc75xx (Torez Smith) [1825410 1821835] - [netdrv] smsc95xx: Check for Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] smsc75xx: Check for Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] r8152: Check for supported Wake-on-LAN Modes (Torez Smith) [1825410 1821835] - [netdrv] sr9800: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] ax88179_178a: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] asix: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [media] media: v4l: Add definition for the Sunxi tiled NV12 format (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add definitions for MPEG-2 slice format and metadata (Torez Smith) [1825410 1821835] - [media] media: au0828: Fix incorrect error messages (Torez Smith) [1825410 1821835] - [media] media: au0828: cannot kfree dev before usb disconnect (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Avoid unnecessary self assignment (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: set DTR for modems in forced USB2 mode (Torez Smith) [1825410 1821835] - [media] media: mxl111sf: declare its own pads (Torez Smith) [1825410 1821835] - [media] media: au0828: use signals instead of hardcoding a pad number (Torez Smith) [1825410 1821835] - [media] media: v4l2: taint pads with the signal types for consumer devices (Torez Smith) [1825410 1821835] - [media] media: em28xx: make v4l2-compliance happier by starting sequence on zero (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix input name for Terratec AV 350 (Torez Smith) [1825410 1821835] - [media] media: em28xx: use a default format if TRY_FMT fails (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix handler for vidioc_s_input() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: remove redundant null pointer check before of_node_put (Torez Smith) [1825410 1821835] - [media] media: usbvision: remove time_in_irq (Torez Smith) [1825410 1821835] - [media] media: gspca: sq930x: use GFP_KERNEL in sd_dq_callback() (Torez Smith) [1825410 1821835] - [media] media: replace strcpy() by strscpy() (Torez Smith) [1825410 1821835] - [media] media: use strscpy() instead of strlcpy() (Torez Smith) [1825410 1821835] - [documentation] media: videodev2.h: add new capabilities for buffer types (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Store device information pointer in struct uvc_device (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Rename UVC_QUIRK_INFO to UVC_INFO_QUIRK (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix uvc_alloc_entity() allocation alignment (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix spelling mistake: "entites" -> "entities" (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Remove unnecessary NULL check before debugfs_remove_recursive (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Make uvc_control_mapping menu_info field const (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Make some structs const (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Support dynamic config on Quectel EP06 (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Do not access skb_queue_head list pointers directly (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Make declaration style consistent (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Switch to SPDX identifier (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Drop unnecessary strcpy in lan78xx_probe (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Bail out if lan78xx_get_endpoints fails (Torez Smith) [1825410 1821835] - [netdrv] net: usbnet: mark expected switch fall-through (Torez Smith) [1825410 1821835] - [media] media: v4l2-ctrls: v4l2_ctrl_add_handler: add from_other_dev (Torez Smith) [1825410 1821835] - [media] media: videodev2.h: add request_fd field to v4l2_ext_controls (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Add new DV flag CAN_DETECT_REDUCED_FPS (Torez Smith) [1825410 1821835] - [media] media: af9035: prevent buffer overflow on write (Torez Smith) [1825410 1821835] - [netdrv] r8152: disable RX aggregation on new Dell TB16 dock (Torez Smith) [1825410 1821835] - [netdrv] drivers/net/usb/r8152: remove the unneeded variable "ret" in rtl8152_system_suspend (Torez Smith) [1825410 1821835] - [media] media: rtl28xxu: be sure that it won't go past the array size (Torez Smith) [1825410 1821835] - [netdrv] net:usb: Use ARRAY_SIZE instead of calculating the array size (Torez Smith) [1825410 1821835] - [media] media: au0828: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: cx231xx: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: usb: hackrf: Replace GFP_ATOMIC with GFP_KERNEL (Torez Smith) [1825410 1821835] - [media] media: usb: em28xx: Replace mdelay() with msleep() in em28xx_pre_card_setup() (Torez Smith) [1825410 1821835] - [media] media: usb: em28xx: Replace GFP_ATOMIC with GFP_KERNEL in em28xx_init_usb_xfer() (Torez Smith) [1825410 1821835] - [media] media: dw2102: Fix memleak on sequence of probes (Torez Smith) [1825410 1821835] - [media] media: usbtv: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [media] media: go7007: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [media] media: cx231xx: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add new 10-bit packed grayscale format (Torez Smith) [1825410 1821835] - [documentation] media: doc-rst: Add packed Bayer raw14 pixel formats (Torez Smith) [1825410 1821835] - [media] media: em28xx: disable null packet filter for WinTVdualHD (Torez Smith) [1825410 1821835] - [uapi] media: videodev2: get rid of VIDIOC_RESERVED (Torez Smith) [1825410 1821835] - [media] media: em28xx: explicitly disable TS packet filter (Torez Smith) [1825410 1821835] - [media] media: dvb-usb/friio, dvb-usb-v2/gl861: decompose friio and merge with gl861 (Torez Smith) [1825410 1821835] - [netdrv] net: usb: sr9700: Replace mdelay() with msleep() in sr9700_bind() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: Replace mdelay() with msleep() in setup_pegasus_II() (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Send a control event when a Control Change interrupt arrives (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Handle control pipe protocol STALLs (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Remove a redundant check (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Also validate buffers in BULK mode (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Add KSMedia 8-bit IR format support (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix minor spelling (Torez Smith) [1825410 1821835] - [media] media: em28xx-cards: disable V4L2 mode for dual tuners (Torez Smith) [1825410 1821835] - [media] media: em28xx: Remove duplicate PID (Torez Smith) [1825410 1821835] - [media] media: em28xx: Fix DualHD disconnect oops (Torez Smith) [1825410 1821835] - [media] media: em28xx: Fix dual transport stream operation (Torez Smith) [1825410 1821835] - [media] media: dib0700: add code comment (Torez Smith) [1825410 1821835] - [media] media: cx231xx: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: em28xx: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: hdpvr: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: dvb-usb: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: tm6000: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: gl861: fix probe of dvb_usb_gl861 (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Simplify struct kvaser_cmd_cardinfo (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add support for Kvaser USB hydra family (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Split driver into kvaser_usb_core.c and kvaser_usb_leaf.c (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add SPDX GPL-2.0 license identifier (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix typos (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Improve logging messages (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Refactor kvaser_usb_init_one() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Refactor kvaser_usb_get_endpoints() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add pointer to struct usb_interface into struct kvaser_usb (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Replace USB timeout constants with one define (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Rename message/msg to command/cmd (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Remove unused commands and defines (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Remove unnecessary return (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: add driver for Theobroma Systems UCAN devices (Torez Smith) [1825410 1821835] - [netdrv] can: usb: Kconfig/Makefile: sort alphabetically (Torez Smith) [1825410 1821835] - [media] media: gspca_kinect: cast sizeof to int for comparison (Torez Smith) [1825410 1821835] - [media] media: videodev.h: add PIX_FMT_FWHT for use with vicodec (Torez Smith) [1825410 1821835] - [netdrv] net: usb: hso: use swap macro in hso_kick_transmit (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: allow optionally getting mac address from device tree (Torez Smith) [1825410 1821835]- [hid] HID: Improve Windows Precision Touchpad detection (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: enable multi-input as a quirk for some devices (Benjamin Tissoires) [1811209] - [hid] drivers/hid/hid-multitouch.c: fix a possible null pointer access (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: Add LG MELF0410 I2C touchscreen support (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: add support for the Smart Tech panel (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: do not filter mice nodes (Benjamin Tissoires) [1811209] - [hid] HID: wacom: Report 2nd-gen Intuos Pro S center button status over BT (Benjamin Tissoires) [1835753] - [hid] Revert "HID: wacom: generic: read the number of expected touches on a per collection basis" (Benjamin Tissoires) [1835753] - [hid] HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices (Benjamin Tissoires) [1835753] - [hid] HID: wacom: Recognize new MobileStudio Pro PID (Benjamin Tissoires) [1835753] - [hid] HID: wacom: generic: Treat serial number and related fields as unsigned (Benjamin Tissoires) [1835753] - [hid] HID: wacom: add new MobileStudio Pro 13 support (Benjamin Tissoires) [1835753] - [hid] HID: wacom: do not call hid_set_drvdata(hdev, NULL) (Benjamin Tissoires) [1835753] - [hid] HID: wacom: support named keys on older devices (Benjamin Tissoires) [1835753] - [target] scsi: target: iscsi: calling iscsit_stop_session() inside iscsit_close_session() has no effect (Maurizio Lombardi) [1840024] - [target] scsi: target: fix hang when multiple threads try to destroy the same iscsi session (Maurizio Lombardi) [1840024] - [target] scsi: target: remove boilerplate code (Maurizio Lombardi) [1840024] - [target] scsi: target: use an enum to track emulate_ua_intlck_ctrl (Maurizio Lombardi) [1840024] - [target] scsi: target: convert boolean se_dev_attrib types to bool (Maurizio Lombardi) [1840024] - [target] scsi: target: fix unmap_zeroes_data boolean initialisation (Maurizio Lombardi) [1840024] - [fs] page cache: Finish XArray conversion (Waiman Long) [1812073] - [mm] mm: Convert __do_page_cache_readahead to XArray (Waiman Long) [1812073] - [mm] mm: Convert is_page_cache_freeable to XArray (Waiman Long) [1812073] - [mm] mm: memcontrol: clean up and document effective low/min calculations (Waiman Long) [1812073] - [mm] mm: memcontrol: fix memory.low proportional distribution (Waiman Long) [1812073] - [mm] mm: kmem: rename (__)memcg_kmem_(un)charge_memcg() to __memcg_kmem_(un)charge() (Waiman Long) [1812073] - [mm] mm: memcg/slab: cache page number in memcg_(un)charge_slab() (Waiman Long) [1812073] - [mm] mm: kmem: switch to nr_pages in (__)memcg_kmem_charge_memcg() (Waiman Long) [1812073] - [mm] mm: kmem: rename memcg_kmem_(un)charge() into memcg_kmem_(un)charge_page() (Waiman Long) [1812073] - [mm] mm: kmem: cleanup memcg_kmem_uncharge_memcg() arguments (Waiman Long) [1812073] - [mm] mm: kmem: cleanup (__)memcg_kmem_charge_memcg() arguments (Waiman Long) [1812073] - [mm] mm: memcg/slab: use mem_cgroup_from_obj() (Waiman Long) [1812073] - [kernel] mm: fork: fix kernel_stack memcg stats for various stack implementations (Waiman Long) [1812073] - [mm] memcg: fix NULL pointer dereference in __mem_cgroup_usage_unregister_event (Waiman Long) [1812073] - [mm] mm: clean up and clarify lruvec lookup procedure (Waiman Long) [1812073] - [mm] mm: memcontrol: try harder to set a new memory.high (Waiman Long) [1812073] - [mm] mm: memcontrol: remove dead code from memory_max_write() (Waiman Long) [1812073] - [mm] mm, memcg: clean up reclaim iter array (Waiman Long) [1812073] - [mm] mm, memcg: make scan aggression always exclude protection (Waiman Long) [1812073] - [mm] mm, memcg: make memory.emin the baseline for utilisation determination (Waiman Long) [1812073] - [mm] mm, memcg: proportional memory.{low, min} reclaim (Waiman Long) [1812073] - [mm] memcg, kmem: do not fail __GFP_NOFAIL charges (Waiman Long) [1812073] - [mm] mm: workingset: fix vmstat counters for shadow nodes (Waiman Long) [1812073] - [mm] mm: memcontrol: use CSS_TASK_ITER_PROCS at mem_cgroup_scan_tasks() (Waiman Long) [1812073] - [kernel] fork, memcg: alloc_thread_stack_node needs to set tsk->stack (Waiman Long) [1812073] - [mm] mm/memcontrol.c: fix bad line in comment (Waiman Long) [1812073] - [kernel] fork, memcg: fix cached_stacks case (Waiman Long) [1812073] - [mm] mm: don't raise MEMCG_OOM event due to failed high-order allocation (Waiman Long) [1812073] - [mm] mm: vmscan: memcontrol: remove mem_cgroup_select_victim_node() (Waiman Long) [1812073] - [mm] mm: vmscan: do not share cgroup iteration between reclaimers (Waiman Long) [1812073] - [mm] mm: vmscan: do not iterate all mem cgroups for global direct reclaim (Waiman Long) [1812073] - [mm] mm: workingset: use cheaper __inc_lruvec_state in irqsafe node reclaim (Waiman Long) [1812073] - [tools] xarray: Fix early termination of xas_for_each_marked (Waiman Long) [1812073] - [lib] mm: Convert workingset to XArray (Waiman Long) [1812073] - [mm] page cache: Convert filemap_range_has_page to XArray (Waiman Long) [1812073] - [mm] page cache: Remove stray radix comment (Waiman Long) [1812073] - [mm] page cache: Convert delete_batch to XArray (Waiman Long) [1812073] - [mm] page cache: Convert filemap_map_pages to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entries_tag to XArray (Waiman Long) [1812073] - [mm] page cache; Convert find_get_pages_range_tag to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_pages_contig to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_pages_range to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entries to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entry to XArray (Waiman Long) [1812073] - [mm] page cache: Convert page deletion to XArray (Waiman Long) [1812073] - [include] page cache: Add and replace pages using the XArray (Waiman Long) [1812073] - [mm] page cache: Convert hole search to XArray (Waiman Long) [1812073] - [kernel] docs: cgroup-v1: Document the cpuset_v2_mode mount option (Waiman Long) [1812073] - [kernel] cgroup1: don't call release_agent when it is "" (Waiman Long) [1812073] - [kernel] cgroup: Iterate tasks that did not finish do_exit() (Waiman Long) [1812073] - [kernel] cgroup: cgroup_procs_next should increase position index (Waiman Long) [1812073] - [kernel] cgroup-v1: cgroup_pidlist_next should update position index (Waiman Long) [1812073] - [kernel] cgroup: init_tasks shouldn't be linked to the root cgroup (Waiman Long) [1812073] - [kernel] cgroup: Prevent double killing of css when enabling threaded cgroup (Waiman Long) [1812073] - [kernel] cgroup: fix function name in comment (Waiman Long) [1812073] - [kernel] cgroup: freezer: don't change task and cgroups status unnecessarily (Waiman Long) [1812073] - [kernel] cgroup: use cgroup->last_bstat instead of cgroup->bstat_pending for consistency (Waiman Long) [1812073] - [kernel] cgroup: remove cgroup_enable_task_cg_lists() optimization (Waiman Long) [1812073] - [kernel] cgroup: pids: use atomic64_t for pids->limit (Waiman Long) [1812073] - [kernel] cgroup: Optimize single thread migration (Waiman Long) [1812073] - [kernel] cgroup: Update comments about task exit path (Waiman Long) [1812073] - [kernel] cgroup: short-circuit current_cgns_cgroup_from_root() on the default hierarchy (Waiman Long) [1812073] - [kernel] Use kvmalloc in cgroups-v1 (Waiman Long) [1812073] - [kernel] cgroup: minor tweak for logic to get cgroup css (Waiman Long) [1812073] - [kernel] cgroup: Replace a seq_printf() call by seq_puts() in cgroup_print_ss_mask() (Waiman Long) [1812073] - [kernel] cgroup: Fix css_task_iter_advance_css_set() cset skip condition (Waiman Long) [1812073] - [kernel] cgroup: css_task_iter_skip()'d iterators must be advanced before accessed (Waiman Long) [1812073] - [include] cgroup: Include dying leaders with live threads in PROCS iterations (Waiman Long) [1812073] - [kernel] cgroup: Implement css_task_iter_skip() (Waiman Long) [1812073] - [kernel] cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix the accounting (Waiman Long) [1586281 1812073] - [platform] intel-speed-select: Firmware workarounds for Icelake (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Fix invalid core mask (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Increase CPU count (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Fix json perf-profile output output (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Enable clos for turbo-freq enable (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Check support status before enable (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Change debug to error (Prarit Bhargava) [1840289] - [platform] intel_speed_select: internal-only-debug-patch (Prarit Bhargava) [1840289]- [nvdimm] libnvdimm/region: Fix build error (Diego Domingos) [1779218] - [nvdimm] libnvdimm/region: Introduce an 'align' attribute (Diego Domingos) [1779218] - [nvdimm] libnvdimm/region: Introduce NDD_LABELING (Diego Domingos) [1779218] - [nvdimm] libnvdimm/namespace: Enforce memremap_compat_align() (Diego Domingos) [1779218] - [nvdimm] libnvdimm/pfn: Prevent raw mode fallback if pfn-infoblock valid (Diego Domingos) [1779218] - [mm] mm/memremap_pages: Introduce memremap_compat_align() (Diego Domingos) [1779218] - [x86] x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix error handling in __unwind_start() (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix premature unwind stoppage due to IRET frames (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix error path for bad ORC entry type (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Prevent unwinding before ORC initialization (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Don't skip the first frame for inactive tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind: Prevent false warnings for non-current tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Convert global variables to static (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in rewind_stack_do_exit() (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in __switch_to_asm() (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in kernel exit path (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in register clearing code (Josh Poimboeuf) [1755143] - [tools] objtool: Fix stack offset tracking for indirect CFAs (Josh Poimboeuf) [1755143] - [s390] s390: nvme reipl (Philipp Rudo) [1525179] - [s390] s390: nvme ipl (Philipp Rudo) [1525179] - [infiniband] RDMA/bnxt_re: make bnxt_re_ib_init static (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Wait for all the CQ events before freeing CQ data structures (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove unnecessary sched count (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Fix lifetimes in bnxt_re_task (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Use ib_device_try_get() (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove a redundant 'memset' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variables 'pg' and 'idx' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'dev_attr' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'pg_size' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Use driver_unregister and unregistration API (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor device add/remove functionalities (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Using vmalloc requires including vmalloc.h (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: use ibdev based message printing functions (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor doorbell management functions (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor notification queue management code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor command queue management code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor net ring allocation function (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor hardware queue memory allocation (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Replace chip context structure with pointer (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor queue pair creation code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: remove ioremap_nocache and devm_ioremap_nocache (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Enable SRIOV VF support on Broadcom's 57500 adapter series (Selvin Xavier) [1790622] - [netdrv] net: be2net: reject unsupported coalescing params (Petr Oros) [1790633] - [netdrv] treewide: Use sizeof_field() macro (Petr Oros) [1790633] - [netdrv] net: emulex: benet: indent a Kconfig depends continuation line (Petr Oros) [1790633] - [infiniband] i40iw: fix null pointer dereference on a null wqe pointer (Stefan Assmann) [1839718] - [infiniband] RDMA/providers: Fix return value when QP type isn't supported (Stefan Assmann) [1839718] - [infiniband] RDMA: Replace zero-length array with flexible-array member (Stefan Assmann) [1839718] - [infiniband] i40iw: Do an RCU lookup in i40iw_add_ipv4_addr (Stefan Assmann) [1839718] - [infiniband] IB/core: Introduce ib_reg_user_mr (Stefan Assmann) [1839718] - [infiniband] RDMA/i40iw: fix a potential NULL pointer dereference (Stefan Assmann) [1839718] - [infiniband] i40iw: Remove setting of VMA private data and use rdma_user_mmap_io (Stefan Assmann) [1839718] - [infiniband] RDMA/i40iw: Fix potential use after free (Stefan Assmann) [1839718] - [powerpc] powerpc/pseries: Fix of_read_drc_info_cell() to point at next record (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Enable support for ibm, drc-info property (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Correctly match ibm, my-drc-index to drc-name when using drc-info (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Avoid a sometimes-uninitialized warning (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Annotate and correctly byte swap DRC properties (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Add drc-info support for hotplug slot registration (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Don't rely on firmware feature to imply drc-info support (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Fix up pointer to first drc-info entry (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Add cpu DLPAR support for drc-info property (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Fix drc-info mappings of logical cpus to drc-index (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Fix bad drc_index_start value parsing of drc-info entry (Diego Domingos) [1779198] - [kernel] sched/fair: Optimize enqueue_task_fair() (Phil Auld) [1780466] - [kernel] sched/fair: Fix enqueue_task_fair() warning some more (Phil Auld) [1780466] - [kernel] sched/fair: Fix enqueue_task_fair warning (Phil Auld) [1780466] - [kernel] sched/fair: Fix reordering of enqueue/dequeue_task_fair() (Phil Auld) [1780466] - [kernel] sched/fair: Reorder enqueue/dequeue_task_fair path (Phil Auld) [1780466] - [fs] ceph: demote quotarealm lookup warning to a debug message (Jeff Layton) [1827767] - [fs] ceph: fix double unlock in handle_cap_export() (Jeff Layton) [1827767] - [fs] ceph: fix special error code in ceph_try_get_caps() (Jeff Layton) [1827767] - [fs] ceph: fix endianness bug when handling MDS session feature bits (Jeff Layton) [1827767] - [fs] ceph: fix potential bad pointer deref in async dirops cb's (Jeff Layton) [1827767] - [block] rbd: don't mess with a page vector in rbd_notify_op_lock() (Jeff Layton) [1827767] - [block] rbd: don't test rbd_dev->opts in rbd_dev_image_release() (Jeff Layton) [1827767] - [block] rbd: call rbd_dev_unprobe() after unwatching and flushing notifies (Jeff Layton) [1827767] - [block] rbd: avoid a deadlock on header_rwsem when flushing notifies (Jeff Layton) [1827767] - [fs] ceph: fix snapshot directory timestamps (Jeff Layton) [1827767] - [fs] ceph: wait for async creating inode before requesting new max size (Jeff Layton) [1827767] - [fs] ceph: don't skip updating wanted caps when cap is stale (Jeff Layton) [1827767] - [fs] ceph: request new max size only when there is auth cap (Jeff Layton) [1827767] - [fs] ceph: cleanup return error of try_get_cap_refs() (Jeff Layton) [1827767] - [fs] ceph: return ceph_mdsc_do_request() errors from __get_parent() (Jeff Layton) [1827767] - [fs] ceph: check all mds' caps after page writeback (Jeff Layton) [1827767] - [fs] ceph: update i_requested_max_size only when sending cap msg to auth mds (Jeff Layton) [1827767] - [fs] ceph: simplify calling of ceph_get_fmode() (Jeff Layton) [1827767] - [fs] ceph: remove delay check logic from ceph_check_caps() (Jeff Layton) [1827767] - [fs] ceph: consider inode's last read/write when calculating wanted caps (Jeff Layton) [1827767] - [fs] ceph: always renew caps if mds_wanted is insufficient (Jeff Layton) [1827767] - [fs] ceph: update dentry lease for async create (Jeff Layton) [1827767] - [fs] ceph: attempt to do async create when possible (Jeff Layton) [1827767] - [fs] ceph: cache layout in parent dir on first sync create (Jeff Layton) [1827767] - [fs] ceph: add new MDS req field to hold delegated inode number (Jeff Layton) [1827767] - [fs] ceph: decode interval_sets for delegated inos (Jeff Layton) [1827767] - [fs] ceph: make ceph_fill_inode non-static (Jeff Layton) [1827767] - [fs] ceph: perform asynchronous unlink if we have sufficient caps (Jeff Layton) [1827767] - [fs] ceph: don't take refs to want mask unless we have all bits (Jeff Layton) [1827767] - [fs] ceph: cap tracking for async directory operations (Jeff Layton) [1827767] - [fs] ceph: make __take_cap_refs non-static (Jeff Layton) [1827767] - [fs] ceph: add infrastructure for waiting for async create to complete (Jeff Layton) [1827767] - [fs] ceph: track primary dentry link (Jeff Layton) [1827767] - [fs] ceph: add flag to designate that a request is asynchronous (Jeff Layton) [1827767] - [fs] ceph: more caps.c lockdep assertions (Jeff Layton) [1827767] - [fs] ceph: clean up kick_flushing_inode_caps() (Jeff Layton) [1827767] - [net] libceph: directly skip to the end of redirect reply (Jeff Layton) [1827767] - [net] libceph: simplify ceph_monc_handle_map() (Jeff Layton) [1827767] - [fs] ceph: return ETIMEDOUT errno to userland when request timed out (Jeff Layton) [1827767] - [fs] ceph: re-org copy_file_range and fix some error paths (Jeff Layton) [1827767] - [fs] ceph: move to a dedicated slabcache for mds requests (Jeff Layton) [1827767] - [fs] ceph: reorganize fields in ceph_mds_request (Jeff Layton) [1827767] - [fs] ceph: replace zero-length array with flexible-array member (Jeff Layton) [1827767] - [block] rbd: enable multiple blk-mq queues (Jeff Layton) [1827767] - [block] rbd: embed image request in blk-mq pdu (Jeff Layton) [1827767] - [block] rbd: acquire header_rwsem just once in rbd_queue_workfn() (Jeff Layton) [1827767] - [block] rbd: get rid of img_request_layered_clear() (Jeff Layton) [1827767] - [block] rbd: kill img_request kref (Jeff Layton) [1827767] - [fs] ceph: check if file lock exists before sending unlock request (Jeff Layton) [1827767] - [fs] ceph: move ceph_osdc_{read, write}pages to ceph.ko (Jeff Layton) [1827767] - [fs] ceph: don't ClearPageChecked in ceph_invalidatepage() (Jeff Layton) [1827767] - [block] rbd: remove barriers from img_request_layered_{set, clear, test}() (Jeff Layton) [1827767] - [fs] libceph: drop CEPH_DEFINE_SHOW_FUNC (Jeff Layton) [1827767] - [fs] ceph: check inode type for CEPH_CAP_FILE_{CACHE, RD, REXTEND, LAZYIO} (Jeff Layton) [1827767] - [fs] ceph: add refcounting for Fx caps (Jeff Layton) [1827767] - [fs] ceph: register MDS request with dir inode from the start (Jeff Layton) [1827767] - [fs] ceph: fix memory leak in ceph_cleanup_snapid_map() (Jeff Layton) [1827767] - [net] libceph: fix alloc_msg_with_page_vector() memory leaks (Jeff Layton) [1827767] - [include] ceph: check POOL_FLAG_FULL/NEARFULL in addition to OSDMAP_FULL/NEARFULL (Jeff Layton) [1827767] - [fs] ceph: canonicalize server path in place (Jeff Layton) [1827767] - [fs] ceph: do not execute direct write in parallel if O_APPEND is specified (Jeff Layton) [1827767] - [block] rbd: set the 'device' link in sysfs (Jeff Layton) [1827767] - [fs] ceph: move net/ceph/ceph_fs.c to fs/ceph/util.c (Jeff Layton) [1827767] - [fs] ceph: print name of xattr in __ceph_{get, set}xattr() douts (Jeff Layton) [1827767] - [fs] ceph: print r_direct_hash in hex in __choose_mds() dout (Jeff Layton) [1827767] - [fs] ceph: use copy-from2 op in copy_file_range (Jeff Layton) [1827767] - [fs] ceph: close holes in structs ceph_mds_session and ceph_mds_request (Jeff Layton) [1827767] - [block] rbd: work around -Wuninitialized warning (Jeff Layton) [1827767] - [fs] ceph: allocate the correct amount of extra bytes for the session features (Jeff Layton) [1827767] - [fs] ceph: rename get_session and switch to use ceph_get_mds_session (Jeff Layton) [1827767] - [fs] ceph: remove the extra slashes in the server path (Jeff Layton) [1827767] - [fs] ceph: add possible_max_rank and make the code more readable (Jeff Layton) [1827767] - [fs] ceph: print dentry offset in hex and fix xattr_version type (Jeff Layton) [1827767] - [fs] ceph: only touch the caps which have the subset mask requested (Jeff Layton) [1827767] - [fs] ceph: don't clear I_NEW until inode metadata is fully populated (Jeff Layton) [1827767] - [fs] ceph: retry the same mds later after the new session is opened (Jeff Layton) [1827767] - [fs] ceph: check availability of mds cluster on mount after wait timeout (Jeff Layton) [1827767] - [fs] ceph: keep the session state until it is released (Jeff Layton) [1827767] - [fs] ceph: add __send_request helper (Jeff Layton) [1827767] - [fs] ceph: ensure we have a new cap before continuing in fill_inode (Jeff Layton) [1827767] - [fs] ceph: drop unused ttl_from parameter from fill_inode (Jeff Layton) [1827767] - [fs] ceph: fix possible long time wait during umount (Jeff Layton) [1827767] - [fs] ceph: only choose one MDS who is in up:active state without laggy (Jeff Layton) [1827767] - [fs] ceph: fix mdsmap cluster available check based on laggy number (Jeff Layton) [1827767] - [fs] ceph: remove unnecessary assignment in ceph_pre_init_acls() (Jeff Layton) [1827767] - [fs] ceph: delete redundant douts in con_get/put() (Jeff Layton) [1827767] - [fs] ceph: hold extra reference to r_parent over life of request (Jeff Layton) [1827767] - [fs] ceph: add more debug info when decoding mdsmap (Jeff Layton) [1827767] - [fs] ceph: switch to global cap helper (Jeff Layton) [1827767] - [fs] ceph: trigger the reclaim work once there has enough pending caps (Jeff Layton) [1827767] - [fs] ceph: show tasks waiting on caps in debugfs caps file (Jeff Layton) [1827767] - [fs] fs: ceph: Delete timespec64_trunc() usage (Jeff Layton) [1827767] - [block] rbd: ask for a weaker incompat mask for read-only mappings (Jeff Layton) [1827767] - [block] rbd: don't query snapshot features (Jeff Layton) [1827767] - [block] rbd: remove snapshot existence validation code (Jeff Layton) [1827767] - [block] rbd: don't establish watch for read-only mappings (Jeff Layton) [1827767] - [block] rbd: don't acquire exclusive lock for read-only mappings (Jeff Layton) [1827767] - [block] rbd: disallow read-write partitions on images mapped read-only (Jeff Layton) [1827767] - [block] rbd: treat images mapped read-only seriously (Jeff Layton) [1827767] - [block] rbd: introduce RBD_DEV_FLAG_READONLY (Jeff Layton) [1827767] - [block] rbd: introduce rbd_is_snap() (Jeff Layton) [1827767] - [fs] ceph: don't leave ino field in ceph_mds_request_head uninitialized (Jeff Layton) [1827767] - [fs] ceph: tone down loglevel on ceph_mdsc_build_path warning (Jeff Layton) [1827767] - [fs] ceph: fix geting random mds from mdsmap (Jeff Layton) [1827767] - [block] rbd: fix spelling mistake "requeueing" -> "requeuing" (Jeff Layton) [1827767] - [fs] ceph: make several helper accessors take const pointers (Jeff Layton) [1827767] - [net] libceph: drop unnecessary check from dispatch() in mon_client.c (Jeff Layton) [1827767] - [fs] ceph: don't allow copy_file_range when stripe_count != 1 (Jeff Layton) [1827767] - [fs] ceph: allow object copies across different filesystems in the same cluster (Jeff Layton) [1827767] - [fs] ceph: pass filp to ceph_get_caps() (Jeff Layton) [1827767] - [fs] ceph: allow copy_file_range when src and dst inode are same (Jeff Layton) [1827767] - [fs] ceph: increment change_attribute on local changes (Jeff Layton) [1827767] - [fs] ceph: make 'nocopyfrom' a default mount option (Jeff Layton) [1827767] - [fs] vfs: allow copy_file_range to copy across devices (Jeff Layton) [1827767] - [fs] vfs: no fallback for ->copy_file_range (Jeff Layton) [1827767] - [fs] ceph: add destination file data sync before doing any remote copy (Jeff Layton) [1827767] - [fs] ceph: new mount option to disable usage of copy-from op (Jeff Layton) [1827767] - [fs] ceph: support copy_file_range file operation (Jeff Layton) [1827767] - [include] libceph: support the RADOS copy-from operation (Jeff Layton) [1827767] - [fs] cachefiles: Fix race between read_waiter and read_copier involving op->to_do (Dave Wysochanski) [1832644] - [char] security: keys: trusted: fix lost handle flush (Jerry Snitselaar) [1815609] - [security] KEYS: trusted: Remove set but not used variable 'keyhndl' (Jerry Snitselaar) [1815609] - [char] KEYS: trusted: Move TPM2 trusted keys code (Jerry Snitselaar) [1815609] - [security] KEYS: trusted: Create trusted keys subsystem (Jerry Snitselaar) [1815609] - [security] KEYS: Use common tpm_buf for trusted and asymmetric keys (Jerry Snitselaar) [1815609] - [char] tpm: Move tpm_buf code to include/linux/ (Jerry Snitselaar) [1815609] - [char] tpm/tpm_tis: Free IRQ if probing fails (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Revert tpm_tis_spi_mod.ko to tpm_tis_spi.ko (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Add tpm_version_major sysfs file (Jerry Snitselaar) [1815609] - [char] tpm: Handle negative priv->response_len in tpm_common_read() (Jerry Snitselaar) [1815609] - [char] tpm: fix invalid locking in NONBLOCKING mode (Jerry Snitselaar) [1815609] - [char] tpm_crb: fix fTPM on AMD Zen+ CPUs (Jerry Snitselaar) [1815609] - [char] tpm: use GFP_KERNEL instead of GFP_HIGHMEM for tpm_buf (Jerry Snitselaar) [1815609] - [char] tpm: add check after commands attribs tab allocation (Jerry Snitselaar) [1815609] - [char] tpm: tpm_tis_spi: Drop THIS_MODULE usage from driver struct (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Cleanup includes (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Support cr50 devices (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Introduce a flow control callback (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Add a flag to indicate TPM power is managed by firmware (Jerry Snitselaar) [1815609] - [char] tpm_tis: override durations for STM tpm with firmware 1.2.8.28 (Jerry Snitselaar) [1815609 1788758] - [char] tpm: provide a way to override the chip returned durations (Jerry Snitselaar) [1815609] - [char] tpm: Remove duplicate code from caps_show() in tpm-sysfs.c (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm2_bios_measurements_next should increase position index (Jerry Snitselaar) [1815609 1795739] - [char] tpm: tpm1_bios_measurements_next should increase position index (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Don't make log failures fatal (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Initialize crypto_id of allocated_banks to HASH_ALGO__LAST (Jerry Snitselaar) [1815609 1795739] - [include] efi/tpm: Don't access event->count when it isn't mapped (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Return -EINVAL when determining tpm final events log size fails (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Fix sanity check of unsigned tbl_size being less than zero (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Only set 'efi_tpm_final_log_size' after successful event log parsing (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Don't traverse an event log with no events (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Don't duplicate events from the final event log in the TCG2 log (Jerry Snitselaar) [1815609 1795739] - [firmware] Abstract out support for locating an EFI config table (Jerry Snitselaar) [1815609 1795739] - [firmware] efi: Attempt to get the TCG2 event log in the boot stub (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Append the final event log to the TPM event log (Jerry Snitselaar) [1815609 1795739] - [firmware] tpm: Reserve the TPM final events table (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Abstract crypto agile event size calculations (Jerry Snitselaar) [1815609 1795739] - [netdrv] bnx2x: Fix accounting of vlan resources among the PFs (Manish Chopra) [1791026] - [netdrv] bnx2x: Use appropriate define for vlan credit (Manish Chopra) [1791026] - [netdrv] bnx2x: Fix logic to get total no. of PFs per engine (Manish Chopra) [1791026] - [netdrv] bnx2x: Do not handle requests from VFs after parity (Manish Chopra) [1791026] - [netdrv] qed: remove redundant assignment to variable 'rc' (Manish Chopra) [1791024] - [netdrv] qed: Fix use after free in qed_chain_free (Manish Chopra) [1791024] - [netdrv] qed: Fix race condition between scheduling and destroying the slowpath workqueue (Manish Chopra) [1791024] - [netdrv] qede: remove some unused code in function qede_selftest_receive_traffic (Manish Chopra) [1791024] - [netdrv] qede: Fix race between rdma destroy workqueue and link change event (Manish Chopra) [1791024] - [netdrv] qed: Fix timestamping issue for L2 unicast ptp packets (Manish Chopra) [1791024] - [netdrv] qed: Remove set but not used variable 'p_link' (Manish Chopra) [1791024] - [netdrv] qed: Fix a error code in qed_hw_init() (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 debug features (Manish Chopra) [1791024] - [netdrv] qed: rt init valid initialization changed (Manish Chopra) [1791024] - [netdrv] qed: Debug feature: ilt and mdump (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Add fw overlay feature (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 HSI changes (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 iscsi/fcoe changes (Manish Chopra) [1791024] - [netdrv] qed: Add abstraction for different hsi values per chip (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Additional ll2 type (Manish Chopra) [1791024] - [netdrv] qed: Use dmae to write to widebus registers in fw_funcs (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Parser offsets modified (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Queue Manager changes (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Expose new registers and change windows (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Internal ram offsets modifications (Manish Chopra) [1791024] - [netdrv] qede: Disable hardware gro when xdp prog is installed (Manish Chopra) [1791024] - [netdrv] qed: remove redundant assignments to rc (Manish Chopra) [1791024] - [netdrv] qed: Optimize execution time for nvm attributes configuration (Manish Chopra) [1791024] - [netdrv] qed: fix spelling mistake "queuess" -> "queues" (Manish Chopra) [1791024] - [fs] fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info() (Bhupesh Sharma) [1832060] {CVE-2020-10732} - [tty] vt: selection, push sel_lock up (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection, push console lock down (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [staging] staging: speakup: refactor to use existing code in vt (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection: allow functions to be called from inside kernel (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: don't reinvent min() (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection, close sel_buffer race (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: fix broken display when running aptitude (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection: take screen contents from uniscr if available (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: preserve unicode values corresponding to screen characters (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [input] Input: add safety guards to input_set_keycode() (Chris von Recklinghausen) [1828223] {CVE-2019-20636}- [scsi] scsi: bnx2i: fix potential use after free (Nilesh Javali) [1792114] - [tools] perf python: Fix clang detection to strip out options passed in $CC (Michael Petlan) [1818841] - [tools] libperf: Add counting example (Michael Petlan) [1818841] - [tools] perf report/top TUI: Fix title line formatting (Michael Petlan) [1818841] - [tools] perf probe: Do not depend on dwfl_module_addrsym() (Michael Petlan) [1818841] - [tools] perf probe: Fix to delete multiple probe event (Michael Petlan) [1818841] - [tools] perf parse-events: Fix reading of invalid memory in event parsing (Michael Petlan) [1818841] - [tools] perf python: Fix clang detection when using CC=clang-version (Michael Petlan) [1818841] - [tools] perf map: Fix off by one in strncpy() size argument (Michael Petlan) [1818841] - [tools] tools: Let O= makes handle a relative path with -C option (Michael Petlan) [1818841] - [tools] tools: Fix off-by 1 relative directory includes (Michael Petlan) [1818841] - [tools] perf jevents: Fix leak of mapfile memory (Michael Petlan) [1818841] - [tools] perf bench: Clear struct sigaction before sigaction() syscall (Michael Petlan) [1818841] - [tools] perf bench futex-wake: Restore thread count default to online CPU count (Michael Petlan) [1818841] - [tools] perf top: Fix stdio interface input handling with glibc 2.28+ (Michael Petlan) [1818841] - [tools] perf diff: Fix undefined string comparision spotted by clang's -Wstring-compare (Michael Petlan) [1818841] - [tools] perf symbols: Don't try to find a vmlinux file when looking for kernel modules (Michael Petlan) [1818841] - [tools] perf bench: Share some global variables to fix build with gcc 10 (Michael Petlan) [1818841] - [tools] perf parse-events: Use asprintf() instead of strncpy() to read tracepoint files (Michael Petlan) [1818841] - [tools] perf env: Do not return pointers to local variables (Michael Petlan) [1818841] - [tools] perf tests bp_account: Make global variable static (Michael Petlan) [1818841] - [tools] perf annotate: Fix segfault with source toggle (Michael Petlan) [1818841] - [tools] perf annotate: Align struct annotate_args (Michael Petlan) [1818841] - [tools] perf annotate: Simplify disasm_line allocation and freeing code (Michael Petlan) [1818841] - [tools] perf annotate: Remove privsize from symbol__annotate() args (Michael Petlan) [1818841] - [tools] perf probe: Check return value of strlist__add() for -ENOMEM (Michael Petlan) [1818841] - [tools] perf config: Document missing config options (Michael Petlan) [1818841] - [tools] perf annotate: Fix perf config option description (Michael Petlan) [1818841] - [tools] perf annotate: Prefer cmdline option over default config (Michael Petlan) [1818841] - [tools] perf annotate: Make perf config effective (Michael Petlan) [1818841] - [tools] perf config: Introduce perf_config_u8() (Michael Petlan) [1818841] - [tools] perf annotate: Fix --show-nr-samples for tui/stdio2 (Michael Petlan) [1818841] - [tools] perf annotate: Fix --show-total-period for tui/stdio2 (Michael Petlan) [1818841] - [tools] perf annotate/tui: Re-render title bar after switching back from script browser (Michael Petlan) [1818841] - [tools] perf arch powerpc: Sync powerpc syscall.tbl with the kernel sources (Michael Petlan) [1818841] - [tools] perf auxtrace: Add auxtrace_record__read_finish() (Michael Petlan) [1818841] - [tools] perf arm-spe: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf cs-etm: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf intel-bts: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf intel-pt: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf test: Fix test trace+probe_vfs_getname.sh on s390 (Michael Petlan) [1818841] - [tools] perf bpf: Remove bpf/ subdir from bpf.h headers used to build bpf events (Michael Petlan) [1818841] - [tools] perf llvm: Fix script used to obtain kernel make directives to work with new kbuild (Michael Petlan) [1818841] - [tools] perf tools: Add arm64 version of get_cpuid() (Michael Petlan) [1818841] - [tools] perf trace: Resolve prctl's 'option' arg strings to numbers (Michael Petlan) [1818841] - [tools] perf beauty prctl: Export the 'options' strarray (Michael Petlan) [1818841] - [tools] perf maps: Move kmap::kmaps setup to maps__insert() (Michael Petlan) [1818841] - [tools] perf maps: Fix map__clone() for struct kmap (Michael Petlan) [1818841] - [tools] perf maps: Mark ksymbol DSOs with kernel type (Michael Petlan) [1818841] - [tools] perf maps: Mark module DSOs with kernel type (Michael Petlan) [1818841] - [tools] perf symbols: Convert symbol__is_idle() to use strlist (Michael Petlan) [1818841] - [tools] perf symbols: Update the list of kernel idle symbols (Michael Petlan) [1818841] - [tools] perf stat: Don't report a null stalled cycles per insn metric (Michael Petlan) [1818841] - [tools] perf probe: Add ustring support for perf probe command (Michael Petlan) [1818841] - [tools] perf: Make perf able to build with latest libbfd (Michael Petlan) [1818841] - [tools] perf test: Fix test case Merge cpu map (Michael Petlan) [1818841] - [tools] perf parse: Copy string to perf_evsel_config_term (Michael Petlan) [1818841] - [tools] perf parse: Refactor 'struct perf_evsel_config_term' (Michael Petlan) [1818841] - [tools] perf: Use consistent include paths for libbpf (Michael Petlan) [1818841] - [tools] perf beauty sockaddr: Fix augmented syscall format warning (Michael Petlan) [1818841] - [tools] perf/ui/gtk: Fix gtk2 build (Michael Petlan) [1818841] - [tools] perf ui gtk: Add missing zalloc object (Michael Petlan) [1818841] - [tools] perf tools: Use define api.pure full instead of pure-parser (Michael Petlan) [1818841] - [tools] perf tools: Support --prefix/--prefix-strip (Michael Petlan) [1818841] - [tools] perf report: Clarify in help that --children is default (Michael Petlan) [1818841] - [tools] tools build: Fix test-clang.cpp with Clang 8+ (Michael Petlan) [1818841] - [tools] perf clang: Fix build with Clang 9 (Michael Petlan) [1818841] - [tools] tools lib: Fix builds when glibc contains strlcpy() (Michael Petlan) [1818841] - [tools] perf report/top: Make 'e' visible in the help and make it toggle showing callchains (Michael Petlan) [1818841] - [tools] perf report/top: Do not offer annotation for symbols without samples (Michael Petlan) [1818841] - [tools] perf report/top: Allow pressing hotkeys in the options popup menu (Michael Petlan) [1818841] - [tools] tools ui popup: Allow returning hotkeys (Michael Petlan) [1818841] - [tools] perf hists browser: Allow passing an initial hotkey (Michael Petlan) [1818841] - [tools] perf report/top: Add 'k' hotkey to zoom directly into the kernel map (Michael Petlan) [1818841] - [tools] perf hists browser: Generalize the do_zoom_dso() function (Michael Petlan) [1818841] - [tools] perf report/top: Improve toggle callchain menu option (Michael Petlan) [1818841] - [tools] perf report/top: Add menu entry for toggling callchain expansion (Michael Petlan) [1818841] - [tools] perf report/top: Make ENTER consistently bring up menu (Michael Petlan) [1818841] - [tools] perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc (Michael Petlan) [1818841] - [tools] tools lib api fs: Fix gcc9 stringop-truncation compilation error (Michael Petlan) [1818841] - [tools] libperf: Add man pages (Michael Petlan) [1818841] - [tools] libperf: Move to tools/lib/perf (Michael Petlan) [1818841] - [tools] perf tests bp_signal: Show expected versus obtained values (Michael Petlan) [1818841] - [tools] perf sched timehist: Add support for filtering on CPU (Michael Petlan) [1818841] - [tools] perf record: Adapt affinity to machines with #CPUs > 1K (Michael Petlan) [1818841] - [tools] perf mmap: Declare type for cpu mask of arbitrary length (Michael Petlan) [1818841] - [tools] tools bitmap: Implement bitmap_equal() operation at bitmap API (Michael Petlan) [1818841] - [x86] perf/amd/uncore: Replace manual sampling check with CAP_NO_INTERRUPT flag (Michael Petlan) [1818841] - [x86] perf/x86/intel: Fix inaccurate period in context switch for auto-reload (Michael Petlan) [1818841] - [x86] perf/x86/amd: Add missing L2 misses event spec to AMD Family 17h's event map (Michael Petlan) [1818841] - [x86] perf/x86/msr: Add Tremont support (Michael Petlan) [1818841] - [x86] perf/x86/cstate: Add Tremont support (Michael Petlan) [1818841] - [x86] perf/x86/intel: Add Elkhart Lake support (Michael Petlan) [1818841] - [include] kernel/events: Add a missing prototype for arch_perf_update_userpage() (Michael Petlan) [1818841] - [x86] perf/x86/amd: Add support for Large Increment per Cycle Events (Michael Petlan) [1818841] - [x86] perf/x86/amd: Constrain Large Increment per Cycle events (Michael Petlan) [1818841] - [x86] perf/x86/intel/rapl: Add Comet Lake support (Michael Petlan) [1818841] - [x86] perf/x86/intel: Explicitly include asm/io.h to use virt_to_phys() (Michael Petlan) [1818841] - [x86] x86/cpu: Add Elkhart Lake to Intel family (Michael Petlan) [1818841] - [x86] x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode (David Arcari) [1837490] - [x86] x86/intel: Disable HPET on Intel Ice Lake platforms (David Arcari) [1837490] - [x86] x86/timer: Force PIT initialization when !X86_FEATURE_ARAT (David Arcari) [1837490] - [x86] x86/timer: Skip PIT initialization on modern chipsets (David Arcari) [1837490] - [x86] x86/apic: Rename 'lapic_timer_frequency' to 'lapic_timer_period' (David Arcari) [1837490] - [x86] x86/apic: Unify duplicated local apic timer clockevent initialization (David Arcari) [1837490] - [vhost] vsock: kick send_pkt worker once device is started (Stefano Garzarella) [1835651] - [tools] redhat: update kvm/{arm, arm64} headers in tools (Gavin Shan) [1833572] - [tools] kvm: selftests: aarch64: Use stream when given (Gavin Shan) [1833572] - [virt] kvm: arm64: Fix 32bit PC wrap-around (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS (Gavin Shan) [1833572] - [arm64] kvm: arm64: Save/restore sp_el0 as part of __guest_enter (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-its: Fix memory leak on the error path of vgic_add_lpi() (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-v3: Retire all pending LPIs on vcpu destroy (Gavin Shan) [1833572] - [virt] kvm: arm: vgic-v2: Only use the virtual state when userspace accesses pending bits (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Only use the virtual state when userspace accesses enable bits (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Synchronize the whole guest on GIC{D, R}_I{S, C}ACTIVER read (Gavin Shan) [1833572] - [virt] kvm: arm64: psci: Forbid 64bit functions for 32bit guests (Gavin Shan) [1833572] - [virt] kvm: arm64: psci: Narrow input registers when using 32bit functions (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Update effective affinity of virtual SGIs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add support for VPENDBASER's Dirty+Valid signaling (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Expose HW-based SGIs in debugfs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Eagerly vmap vPEs (Gavin Shan) [1833572] - [arm64] kvm: arm64: gicv4.1: Allow non-trapping WFI when using HW SGIs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add VSGI property setup (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Reload VLPI configuration on distributor enable/disable (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add VSGI allocation/teardown (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Plumb SGI implementation selection in the distributor (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Move doorbell management to the GICv4 abstraction layer (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Allow SGIs to switch between HW and SW interrupts (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb set_vcpu_affinity SGI callbacks (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Add direct injection capability to SGI registers (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Let doorbells be auto-enabled (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb get/set_irqchip_state SGI callbacks (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb mask/unmask SGI callbacks (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add initial SGI configuration (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb skeletal VSGI irqchip (Gavin Shan) [1833572] - [irqchip] gic-v3: Move irq_domain_update_bus_token to after checking for NULL domain (Gavin Shan) [1833572] - [kernel] irqchip/gic-v4: Use Inner-Shareable attributes for virtual pending tables (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Map the ITS SGIR register page (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Advertise support v4.1 to KVM (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Ensure mutual exclusion betwen invalidations on the same RD (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Wait for completion of redistributor's INVALL operation (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Ensure mutual exclusion between vPE affinity change and RD access (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Skip absent CPUs while iterating over redistributors (Gavin Shan) [1833572] - [irqchip] gic-v3: Use SGIs without active state if offered (Gavin Shan) [1833572] - [irqchip] gic-v4: Provide irq_retrigger to avoid circular locking dependency (Gavin Shan) [1833572] - [irqchip] gic-v3-its: Probe ITS page size for all GITS_BASERn registers (Gavin Shan) [1833572] - [irqchip] gic-v3-its: Fix access width for gicr_syncr (Gavin Shan) [1833572] - [documentation] kvm: arm/arm64: Always capitalize ITS (Gavin Shan) [1833572] - [nvme] nvme-pci: align io queue count with allocted nvme_queue in nvme_probe (Gopal Tiwari) [1837824] - [rtc] rtc: cmos: Stop using shared IRQ (Pingfan Liu) [1829667]- [netdrv] enic: prevent waking up stopped tx queues over watchdog reset (Govindarajulu Varadarajan) [1797807] - [kernel] crash_core: Increase crashkernel=auto size for x86_64 & S390 (Kairui Song) [1746644] - [netdrv] net: iavf: reject unsupported coalescing params (Stefan Assmann) [1781341] - [netdrv] iavf: Enable support for up to 16 queues (Stefan Assmann) [1781341] - [netdrv] iavf: use tc_cls_can_offload_and_chain0() instead of chain check (Stefan Assmann) [1781341] - [netdrv] treewide: Use sizeof_field() macro (Stefan Assmann) [1781341] - [netdrv] i40e: Remove unneeded conversion to bool (Stefan Assmann) [1781334] - [netdrv] net: i40e: reject unsupported coalescing params (Stefan Assmann) [1781334] - [netdrv] intel: Replace zero-length array with flexible-array member (Stefan Assmann) [1781334] - [netdrv] i40e: Fix the conditional for i40e_vc_validate_vqs_bitmaps (Stefan Assmann) [1781334] - [netdrv] i40e: fix spelling mistake "to" -> "too" (Stefan Assmann) [1781334] - [netdrv] i40e: Set PHY Access flag on X722 (Stefan Assmann) [1781334] - [netdrv] i40e: Fix virtchnl_queue_select bitmap validation (Stefan Assmann) [1781334] - [netdrv] i40e: Removing hung_queue variable to use txqueue function parameter (Stefan Assmann) [1781334] - [netdrv] treewide: Use sizeof_field() macro (Stefan Assmann) [1781334] - [netdrv] i40e: need_wakeup flag might not be set for Tx (Stefan Assmann) [1781334] - [netdrv] i40e: Fix receive buffer starvation for AF_XDP (Stefan Assmann) [1781334] - [netdrv] i40e: fix potential RX buffer starvation for AF_XDP (Stefan Assmann) [1781334] - [block] null_blk: Fix changing the number of hardware queues (Ming Lei) [1835602] - [block] block: reset mapping if failed to update hardware queue count (Ming Lei) [1835602] - [block] block: alloc map and request for new hardware queue (Ming Lei) [1835602] - [block] block: save previous hardware queue count before udpate (Ming Lei) [1835602] - [block] block: free both rq_map and request (Ming Lei) [1835602] - [block] blk-mq: Fix a recently introduced regression in blk_mq_realloc_hw_ctxs() (Ming Lei) [1835602] - [documentation] Documentation: admin-guide: PM: Add intel_idle document (Steve Best) [1485545] - [idle] intel_idle: Use ACPI _CST on server systems (Steve Best) [1485545] - [idle] intel_idle: Add module parameter to prevent ACPI _CST from being used (Steve Best) [1485545] - [idle] intel_idle: Allow ACPI _CST to be used for selected known processors (Steve Best) [1485545] - [idle] intel_idle: Use ACPI _CST for processor models without C-state tables (Steve Best) [1485545] - [idle] intel_idle: Refactor intel_idle_cpuidle_driver_init() (Steve Best) [1485545] - [infiniband] RDMA/uverbs: Move IB_EVENT_DEVICE_FATAL to destroy_uobj (Kamal Heib) [1786608] - [infiniband] RDMA/uverbs: Do not discard the IB_EVENT_DEVICE_FATAL event (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix double put of resource (Kamal Heib) [1786608] - [infiniband] IB/core: Fix potential NULL pointer dereference in pkey cache (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Fix another case where pq is left on waitlist (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Always return ERR_PTR from rxe_create_mmap_info() (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix race between destroy and release FD object (Kamal Heib) [1786608] - [infiniband] IB/rdmavt: Always return ERR_PTR from rvt_create_mmap_info() (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix overwriting of uobj in case of error (Kamal Heib) [1786608] - [infiniband] RDMA/core: Prevent mixed use of FDs between shared ufiles (Kamal Heib) [1786608] - [infiniband] RDMA/uverbs: Fix a race with disassociate and exit_mmap() (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix potential siw_mem refcnt leak in siw_fastreg_mr() (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix an error check in cm_alloc_id_priv() (Kamal Heib) [1786608] - [net] svcrdma: Fix trace point use-after-free race (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Call kobject_put() when kobject_init_and_add() fails (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Set sys_image_guid to be aligned with HW IB devices (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Use scnprintf() for avoiding potential buffer overflow (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Remove kobj from hfi1_devdata (Kamal Heib) [1786608] - [infiniband] IB/rdmavt: Delete unused routine (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Fix configuration of atomic queue pair attributes (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Fix memory leaks in sysfs registration and unregistration (Kamal Heib) [1819051 1786608] - [net] svcrdma: Fix leak of transport addresses (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Suppress uninitialized var warning (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Add missing locking around id.state in cm_dup_req_handler (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Read id.state under lock when doing pr_debug() (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Remove a race freeing timewait_info (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix checking for allowed duplicate listens (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id() (Kamal Heib) [1786608] - [net] svcrdma: Fix double svc_rdma_send_ctxt_put() in an error path (Kamal Heib) [1786608] - [infiniband] RDMA/core: Remove the duplicate header file (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix passive connection establishment (Kamal Heib) [1786608] - [infiniband] RDMA/ucma: Put a lock around every call to the rdma_cm layer (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix setting active_{speed, width} attributes (Kamal Heib) [1798583 1786608] - [scsi] qla2xxx: Update driver version to 10.01.00.25.08.3-k (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Delete all sessions before unregister local nvme port (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: make 1-bit bit-fields unsigned int (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix MPI failure AEN (8200) handling (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Move free of fcport out of interrupt context (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix I/Os being passed down when FC device is being deleted (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Set Nport ID for N2N (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Handle NVME status iocb correctly (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Remove restriction of FC T10-PI and FC-NVMe (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Serialize fc_port alloc in N2N (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix NPIV instantiation after FW dump (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Force semaphore on flash validation failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: add more FW debug information (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Update BPM enablement semantics (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use a dedicated interrupt handler for 'handshake-required' ISPs (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Return appropriate failure through BSG Interface (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix FCP-SCSI FC4 flag passing error (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add 16.0GT for PCI String (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use QLA_FW_STOPPED macro to propagate flag (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add fixes for mailbox command (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix control flags for login/logout IOCB (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Save rscn_gen for new fcport (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use correct ISP28xx active FW region (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use endian macros to assign static fields in fwdump header (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add endianizer macro calls to fc host stats (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use get_unaligned_*() instead of open-coding these functions (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Improve readability of the code that handles qla_flt_header (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix mtcp dump collection failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix stuck session in GNL (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix RIDA Format-2 (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Consolidate fabric scan (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Correct fcport flags handling (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix stuck login session using prli_pend_timer (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use common routine to free fcport struct (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add D-Port Diagnostic reason explanation logs (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix update_fcport for current_topology (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Cleanup unused async_logout_done (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add a shadow variable to hold disc_state history of fcport (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix fabric scan hang (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Remove defer flag to indicate immeadiate port loss (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add debug dump of LOGO payload and ELS IOCB (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Ignore PORT UPDATE after N2N PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Don't defer relogin unconditonally (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Send Notify ACK after N2N PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Configure local loop for N2N target (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix PLOGI payload and ELS IOCB dump length (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Don't call qlt_async_event twice (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Allow PLOGI in target mode (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Change discovery state before PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Drop superfluous INIT_WORK of del_work (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Initialize free_work before flushing it (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use explicit LOGO in target mode (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Ignore NULL pointer in tcm_qla2xxx_free_mcmd (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: unregister ports after GPN_FT failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan (Nilesh Javali) [1789526] - [s390] s390/kexec_file: fix initrd location for kdump kernel (Lianbo Jiang) [1835097]- [sound] ALSA: ALSA - update sound configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: Revert "ALSA: Use the legacy HDA driver as default for Intel DSP platforms" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: IPC: dai-intel: move ALH declarations in header file (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: add core id to sof_ipc_comp (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: bump the version (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add alac & ape decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: Add wma decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add wma codec profiles (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove X86 dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: depend on ACPI || OF (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: depend on ACPI (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix regmap dependencies and align with other serial links (Jaroslav Kysela) [1797509] - [sound] ALSA: treewide: Add SPDX license identifier - Makefile/Kconfig (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix kconfig help format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Kconfig: fix help format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove useless prototypes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: Switch to use fwnode_property_count_uXX() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: don't program ports when a stream that has not been prepared (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix support for multiple Slaves on the same link (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: do not update parameters during DISABLED-PREPARED transition (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: only prepare stream when it is configured (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: update state machine and add state checks (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: Ensure that code is inside the code blocks (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: fix stream.rst markup warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: Add documentation for multi link (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove redundant pr_err traces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove unnecessary variable initializations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix disable sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix bad unlock balance (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: use sdw_write instead of update (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix PDI/stream mapping for Bulk (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus_type: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: export helpers to find row and column values (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: check first if Slaves become UNATTACHED (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: Add read_only_wordlength flag to port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix device number leak on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: track unattach_request to handle all init sequences (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add initialization_complete definition (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add enumeration_complete structure (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add probe_complete structure and new fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove bitfield for unique_id, use u8 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: make stream name a const pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Add compute_params callback (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: provide correct return value on error (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add helper macros for devID fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: don't treat CMD_IGNORED as error on ClockStop (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add clock stop helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix io error when processing alert event (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: avoid multiple assignments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: disable pm_runtime in sdw_slave_delete (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add helper to clear Slave status to UNATTACHED (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: write Slave Device Number without runtime_pm (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add PM/no-PM versions of read/write functions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: improve dynamic debug comments for enumeration (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: split handling of Device0 events (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with initialization_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with enumeration_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with probe_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: ignore uniqueID when irrelevant (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: add helper to extract slave ID (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: fix scanf format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: core: add device tree support for slave devices (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: set initial value to port_status (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: clear FIFO to avoid pop noise issue on playback start (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: multi-link support (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: commit changes in the exit_reset() sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove automatic command retries (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove PREQ_DELAY assignment (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: enable NORMAL operation in cdns_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: reorder MCP_CONFIG settings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: make SSP interval programmable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: move clock/SSP related inits to dedicated function (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: merge routines to clear/set bits (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: mask Slave interrupt before stopping clock (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: fix a io timeout issue in S3 test (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: add clock_stop/restart routines (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: handle error cases with CONFIG_UPDATE (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: add interface to check clock status (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: simplifiy cdns_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: s/update_config/config_update (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: fix kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove useless variable incrementation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: update kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: handle multiple status reports per Slave (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: remove config update for interrupt setting (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: log more useful information during timeouts (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: clear interrupt status before enabling interrupt (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: filter out bad interrupts (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: make clock stop exit configurable on init (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: free all resources on hw_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add sdw_stream_setup helper for .startup callback (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add trigger support in sdw dai driver (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add prepare support in sdw dai driver (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: rename res field as link_res (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix factor of two in MCLK handling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: update stream callbacks for hwparams/free stream operations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: update interfaces between ASoC and SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix typo in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: use correct header for io calls (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: add kernel module parameter to filter out links (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: add checks on link numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: filter SoundWire controller device search (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove empty line after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add helper for initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix intel_register_dai PDI offsets and numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel/cadence: add flag for interrupt enable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove playback/capture stream_name (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove DAI_ID_RANGE definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add missing headers for cross-compilation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: handle disabled links (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add debugfs register dump (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: more alignment fixes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add hw_reset capability in debugfs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel/cadence: fix startup sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: improve PDI allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: don't filter out PDI0/1 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence/intel: simplify PDI/port mapping (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add debugfs register dump (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: move shutdown() callback and don't export symbol (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix alignment issues in header files (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix SPDX license for header files (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add kernel parameter to override interrupt mask (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix divider setting in clock register (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: make use of mclk_freq property (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: use firmware defaults for frame shape (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: revisit interrupt settings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix definitions for INTSTAT0/1 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix register definition for SLAVE_STATE (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: simplify bus clash interrupt clear (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: check the number of bidir PDIs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: log Slave status mask on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: use rate_limited dynamic debug (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: remove spurious newline (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: balance parentheses (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cdns: Fix compilation error on arm64 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove empty line after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: read mclk_freq property from firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix channel number reported by hardware (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: prevent possible dereference in hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove BIOS work-arounds (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: set dai min and max channels correctly (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Intel: add log for number of PCM and PDM PDIs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add debugfs support (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add new mclk_freq field for properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: include mod_devicetable.h to avoid compiling warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: rename/clarify MIPI DisCo properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: clarify comment (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi-disco: fix clock stop modes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi-disco: remove master_count property for masters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove master data port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add port-related definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: wrap macro argument in parenthesis (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: rename 'freq' fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix master/link error (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix out of boundary access on port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add a blank line between functions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix more typos (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: more alignment fixes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove empty line before/after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add missing newlines in dynamic debug logs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove useless initialization of local variable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix boolean comparison (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: protect macro parameters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix implicit header use of module.h/export.h (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix inversion in devm_kcalloc parameters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: remove spurious newline (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: remove useless parentheses (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix typos in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove useless initializations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix SPDX license for header files (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: Add SNDRV_PCM_INFO_BATCH flag (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support for ALAC and APE decoders (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support to wma decoder (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: only enable dais from device tree (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support for alac and ape configs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support to wma config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: pass codec profile to q6asm_open_write (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6routing: remove default routing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: Allow the MCDT driver to build into modules (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: lpass-platform: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: common: Silence duplicate parse error messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: handle soundwire stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Update dependencies for Arizona machine drivers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: qcom: add support for get_sdw_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soundwaire: qcom: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: qcom: add support for SoundWire controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: Fix build after removal of DAI suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Silence warnings during deferred probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: fsi: Restore devm_ioremap() alignment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: dma: set bus width to data width for monaural data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix "status check failed" spam for multi-SSI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix sai probe (Jaroslav Kysela) [1797509] - [sound] ALSA: soc/stm/stm32_sub_sai: Add missing '\n' in log messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: Add missing cleanup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix regmap status check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sunxi: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sun8i-codec: Remove unused dev from codec struct (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Support DAPM events for built-in microphone (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: remove redundant assignment to variable ret (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for platforms using UDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: Add udma-pcm platform driver for UDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: zte: zx-spdif: remove redundant dev_err message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: zte: zx-tdm: remove redundant variables dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: apq8016_sbc: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mxs: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: use SND_SOC_DAPM_PINCTRL in TDM out (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: apply some refactors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: pull TDM GPIO pins down when probed (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: change supported formats of DL2 and UL1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: add speaker switch (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650: support HDMI jack reporting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add support for the JZ4770 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add support for the JZ4760 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Avoid passing enum as match data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add local dev variable in probe function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Use of_device_get_match_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Fix divider written at incorrect offset in register (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: img: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card-utils: use for_each_pcm_streams() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: Add support for codec2codec DAI links (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_asrc_dma: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-i2s: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cirrus: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: Fix pointer cast warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: brcm: Add DSL/PON SoC audio driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mchp-i2s-mcc: make signed 1 bit bitfields unsigned (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Allow I2S wake event after ACP is powerd On (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x-pcm-dma: clean up two indentation issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: AMD: Clear format bits before setting them (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Adding TDM support in hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix button configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: amd: acp3x: Add missing include (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix compile warning of argument type (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: amd: Add DMIC switch capability to machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Add machine driver for Raven based platform (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Fix potential NULL dereference (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Alpha S (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply async workaround for Scarlett 2i4 2nd gen (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add quirk for Focusrite Scarlett 2i2 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use pcm_for_each_format() macro for PCM format iterations (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix missing braces in some struct inits (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add connector notifier delegation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Check mapping at creating connector controls, too (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add mixer workaround for TRX40 and co (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't create jack controls for PCM terminals (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't override ignore_ctl_error value from the map (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Filter error from connector kctl ops, too (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix mixer controls' USB interface for Kingston HyperX Amp (0951:16d8) (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Parse source ID of UAC2 effect unit (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: audio-v2: Add uac2_effect_unit_descriptor definition (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't create a mixer element with bogus volume range (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix case when USB MIDI interface has more than one extra endpoint descriptor (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-midi: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Fix POD HD500 audio playback (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Fix endless MIDI read loop (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add support for Presonus Studio 1810c (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add support for MOTU MicroBook IIc (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Inform devices that need delayed registration (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add delayed_register option (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Rewrite registration quirk handling (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Create a registration quirk for Kingston HyperX Amp (0951:16d8) (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd9335: fix address map representation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Remove some unnecessary NULL checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: remove unused headers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: fix High Accuracy Buck enable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Remove set but not unused variable 'hph_comp_ctrl7' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm0010: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8960: Fix wrong clock after suspend & resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: wsa881x: remove soundwire stream handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: wsa881x: request gpio direction before setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wsa881x: mark read_only_wordlength flag (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8974: remove unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Use scnprintf() for the limited buffer output (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas571x: disable regulators on failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fixed incorrect amp_level setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add support for ISENSE and VSENSE (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add entries for the TAS2563 audio amplifier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add support for digital volume control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: Fix VAG power-on handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: modify some structure to be static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply ac97 fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm89xx: Add missing dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix unmet dependencies (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply misc fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau7118: Fix Kconfig warning without CONFIG_I2C (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply I2C fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply SPI fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682-sdw: fix 'defined but not used' pm functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Make rt5682_clock_config static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Fix build error without CONFIG_I2C (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: move DAI clock registry to I2S mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add a property for DMIC delay (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add a property for DMIC clock rate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: remove noisy debug messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix the random recording noise of headset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Fine tune the HP performance in soundwire mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Revise the DAC1 volume setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Revise the function name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add the soundwire support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Use imply for SND_SOC_ALL_CODECS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add CCF usage for providing I2S clks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Enable PLL2 function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add the field "is_sdw" of private data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5659: remove redundant assignment to variable idx (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Add platform-data for Medion E1239T (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: use slot and rx_mask to configure stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: add set_tdm_slot() support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: fix typo for bypass boost control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rl6231: Add new supports on rl6231 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: Make RK3328 GPIO_MUTE control explicit (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: MT6660: make spdxcheck.py happy (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: MT6660 update to 1.0.8_G (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98357a: Add ACPI HID MAX98360A (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98357a: move control of SD_MODE to DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: hdac_hdmi: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cs4270: pull reset GPIO low then high (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: allow operation without i915 gfx (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: fix ordering bug in resume flow (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add parameter to control SoundWire clock stop quirks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: initial SoundWire machine driver autodetect (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add SoundWire stream config/free callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Account for compress streams when servicing IRQs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix stream cleanup on hw free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: clear the IPC ack bit after FW_PURGE done (Jaroslav Kysela) [1797509] - [sound] ALSA: Asoc: SOF: Intel: hda: check SoundWire wakeen interrupt in irq thread (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add WAKEEN interrupt support for SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: merge IPC, stream and SoundWire interrupt handlers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add SoundWire configuration interface (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Expose SDnFMT helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Fix probe point getter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pcm: skip DMA buffer pre-allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Turn "firmware boot complete" message into a dbg message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: ipc: check ipc return value before data copy (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: sof-audio: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Do not reset hw_params for streams that ignored suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: audio: Add helper to check if only D0i3 streams are active (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add i.MX8QM device descriptor (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Remove SOF_IPC_EXT_DMA_BUFFER (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Make sof_ipc_ext_data enum more rigid (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix uninitialised "work" with VirtIO (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: (cosmetic) use for_each_pcm_streams() in sof_dai_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: connect dai widget to all cpu-dais (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: remove unnecessary ROM IPC filter function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-dai: add stream capability (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-ctrl: add reset cycle before parsing capabilities (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: call codec wake at chip init (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: do not leave clock gating off upon error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: disable SoundWire interrupts on suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Improve DSP state logging (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: use snd_sof_dsp_set_power_state() op (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Allow trace DMA in S0 when DSP is in D0I3 for debug (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Amend the DSP state transition diagram (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: cnl: Implement feature to support DSP D0i3 in S0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: remove unnecessary waitq before loading firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add min/max channels for SSP on Baytrail/Broadwell (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Probe compress operations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix Kconfig indentation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: Add ops for i.MX8QM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Rename i.MX8 platform to i.MX8X (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Provide probe debugfs support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Move DSP power state transitions to platform-specific ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pm: Introduce DSP power states (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pm: Unify suspend/resume routines (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Add Probe compress CPU DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Generic probe compress operations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Implement Probe IPC API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_da7219_max98927: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: haswell: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: BXT: switch pcm512x based boards to sof_pcm512x (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: CHT: add support for pcm512x boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: soc-acpi-intel-icl-match: remove useless 'rt1308_2_adr' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: soc-acpi-intel-cml-match: remove useless 'rt1308_2_adr' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: drop reverse deps for SND_HDA_CODEC_HDMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Add support for tgl-max98373-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Add rt1015 speaker amp support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: drop reverse deps for SND_HDA_CODEC_HDMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_sdw: Add Volteer support with RT5682 SNDW helper function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: add sof_sdw machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match table for TGL RT5682 SoundWire driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: soc-acpi: update topology and driver name for SoundWire platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: Add mach table for tgl-max98373-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: expand description of _ADR-based devices (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Await purge request ack on CNL (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Allow for ROM init retry on CNL platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skylake: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Enable codec wakeup during chip init (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Select hda configuration permissively (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Remove superfluous chip initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Shield against no-NHLT configurations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_da7219_max98373: Add speaker switch (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_da7219_max98373: Add support for max98360a speaker amp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: disable route checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel/skl/hda - add no-HDMI cases to generic HDA driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Make glk+rt5682 echo ref dynamic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: don't use GFP_ATOMIC for machine driver contexts (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: Revert back SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Revert SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: Revert SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: (cosmetic) simplify structure member access (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Fix uninitialized variable compiler warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: mrfld: return error codes when an error occurs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: make HDMI optional for all platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: add support for SOF platforms with pcm512x (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: mrfld: fix incorrect check on p->sink (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Check drv->lock is locked in sst_fill_and_send_cmd_unlocked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Take the drv->lock mutex before calling sst_send_slot_map() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use scnprintf() for string truncation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Allow setting preallocation again for x86 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix endianness issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_dai_config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of pcm_new_ver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Add missing memory checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check soc_tplg_add_route return value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_*_create (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_create_tlv (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: use name_prefix for new kcontrol (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Perform component check upfront (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix regwmask (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Remove dapm_connect_dai_link_widgets helper (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Move error message to avoid some duplication (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: select sleep_state when initializing PINCTRL widget (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: connect virtual mux with default value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: fixup dapm kcontrol widget (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: revert all changes to DAI startup/shutdown sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: fix DAI startup/shutdown sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: return proper error for get_sdw_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: add get_sdw_stream() callback (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: export DPCM runtime update functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dpcm: allow start or stop during pause for backend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: (cosmetic) simplify dpcm_prune_paths() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge CPU/Codec for soc_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Fix regression introducing multiple copies of DAI widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add asoc_rtd_to_cpu/codec() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge CPU/Codec DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add for_each_card_widgets() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add for_each_card_dapms() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: remove non plural form for_each_xxx macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: add for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: disable route checks for legacy devices (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add initial support for multiple CPU DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix card registration regression (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: don't use rtd->cpu_dai on for_each_rtd_cpu_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add multiple CPU DAI support in DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add dapm_add_valid_dai_widget helper (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Do Digital Mute for both CPU/Codec in same timing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: check DAI's activity more simply (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: tidyup dulicate handing at dpcm_fe_dai_startup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use snd_soc_dai_get_pcm_stream() at dpcm_set_fe_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add dpcm_fe_dai_cleanup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dpcm_fe_dai_close() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Export parameter intersection logic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove duplicate be check from dpcm_add_paths() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use defined stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: check if cpu-dai supports a given stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Return error if the function does not support multi-cpu (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add multiple CPU DAI support for PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fix state tracking error in snd_soc_component_open/close() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dpcm_path_put() to soc-pcm.c (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: merge dpcm_run_new/old_update() into dpcm_fe_runtime_update() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dai_get_widget() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: cleanup soc_pcm_apply_msb() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dai_get_pcm_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dpcm: remove confusing trace in dpcm_get_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Fix possible buffer overflow in dpcm state sysfs output (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: merge playback/cature_active into stream_active (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use goto and remove multi return (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dpcm_can_be() and remove duplicate code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove snd_soc_dpcm_be_get/set_state() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove soc_dpcm_be_digital_mute() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dpcm_get_be() at dpcm_end_walk_at_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dai_get_widget() at dpcm_end_walk_at_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dai_get_widget() at dpcm_get_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dai_get_widget() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fix regression in soc_new_pcm() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: tidyup soc_pcm_open() order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move soc_pcm_close() next to soc_pcm_open() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: adjustment for DAI member 0 reset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: call snd_soc_component_open/close() once (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: don't use bit-OR'ed error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add for_each_dapm_widgets() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_runtime_action() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: call snd_soc_dai_startup()/shutdown() once (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: ensure component names are unique (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: allow a dt node to provide several components (Jaroslav Kysela) [1797509] - [sound] ALSA: emu8000: Fix the cast to __user pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: shut up gcc-10 range warning (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_queue() (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_locked() (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: use KBUILD_MODNAME for struct driver.name instead of string (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Fix endianness annotations (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: remove redundant assignment to variable err (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: fix if-statement empty body warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Fix invalid access for enumerated ctl items (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add new codec supported for ALC245 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix unexpected init_amp override (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset mic on Asus FX505DT (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for MSI GL63 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add HP new mute led supported for ALC236 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add supported new mute Led for HP (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for Lenovo Carbon X1 8th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Set principled PC Beep configuration for ALC256 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - a fake key event is triggered by running shutup (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek: Enable mute LED on an HP system (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset of Acer N50-600 with ALC662 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable headset mic of Acer X2660G with ALC662 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek: Fix pop noise on ALC225 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Move ELD parse and jack reporting into update_eld() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Move runtime PM resume into hdmi_present_sense_via_verbs() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Don't use standard hda_jack for generic HDMI jacks (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Reduce hda_jack_tbl lookup at unsol event handling (Jaroslav Kysela) [1797509] - [sound] ALSA: drm/nouveau: Fix regression by audio component transition (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: fix without unlocked before return (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: fix race in monitor detection during probe (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Add module option to disable audio component binding (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Add Recon3Di quirk to handle integrated sound on EVGA X99 Classified motherboard (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Match both PCI ID and SSID for driver blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Remove ASUS ROG Zenith from the blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: call runtime_allow() for all hda controllers (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Keep the controller initialization even if no codecs found (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Release resources at error in delayed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Honor PM disablement in PM freeze and thaw_noirq ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Don't release card at firmware loading error (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add driver blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: remove redundant assignment to variable timeout (Jaroslav Kysela) [1797509] - [sound] ALSA: hda_codec: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Always use jackpoll helper for jack update after resume (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Skip controller resume if not needed (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix potential access overflow in beep helper (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: default enable CA0132 DSP support (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Fix endianness annotations (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Remove unnecessary cast in kfree (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: remove redundant variable capture_flag (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Use standard macros for fixing PCM format cast (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Fix PCM format assignment (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Use a macro for parameter masks to reduce the needed cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Minor refactoring (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: No need to take runtime reference twice in pcm_pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: Consider DMA cache caused delay in pointer callback (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: Consider DMA cache caused delay in pointer callback (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm_dmaengine: Use pcm_for_each_format() macro for PCM format iteration (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix superfluous snprintf() usage (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Place the plugin buffer overflow checks correctly (for 5.7) (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Fix regression by buffer overflow fix (again) (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Remove WARNING from snd_pcm_plug_alloc() checks (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Simplify plugin frame size calculations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Avoid plugin buffer overflow (Jaroslav Kysela) [1797509] - [sound] ALSA: info: remove redundant assignment to variable c (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Unlock mutex temporarily for sleeping at read/write (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Use standard macros for fixing PCM format cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add a standalone version of snd_pcm_limit_hw_rates (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: More helper macros for reducing snd_pcm_format_t cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm.h: add for_each_pcm_streams() (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Add snd_device_get_state() helper (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Implement compress page allocation and free routines (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Expand DMA buffer information (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Fix sparse warning (Jaroslav Kysela) [1797509] - [sound] ALSA: control: Fix incompatible protocol error (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: bump protocol version up to v2.1.0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: remove unused macro for timestamping of elem_value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: use __u32 instead of uint32_t in uapi headers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: uapi: remove unused sof header files (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Drop unneeded typedefs (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Add linux/types.h include back (but carefully) (Jaroslav Kysela) [1797509] - [sound] ALSA: hdspm: Drop linux/types.h inclusion in uapi header (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Spelling s/configr/configur/ (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fix for_rtd_codec_dai_rollback() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dpcm: tidyup for_each_dpcm_xx() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple_card_utils.h: Fix potential multiple redefinition error (Jaroslav Kysela) [1797509] - [sound] ALSA: rawmidi: Avoid bit fields for state flags (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Drop snd_dma_pci_data() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: media: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: media: solo6x10: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: cs231xx: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: em28xx: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: delete unused proc_fs.h include (Jaroslav Kysela) [1797509] - [sound] ALSA: media: em28xx-audio: use GFP_KERNEL for memory allocation during init (Jaroslav Kysela) [1797509] - [sound] ALSA: media: go7007: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tm6000: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: usbtv: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: solo6x10: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tw686x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tw686x: audio: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: Allow const arrays for legacy resource management helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: pcmcia: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: pcmcia: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: fix corruption due to spin lock without restoration in SoftIRQ context (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: fix for Stanton SCS.1d (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: don't add MIDI/PCM interface when packet streaming is unavailable (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: fix return value in error path of isochronous resources reservation (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: use ENXIO for not-supported cases (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-motu: fix double unlocked 'motu->mutex' (Jaroslav Kysela) [1797509] - [sound] ALSA: fireface: fix return value in error path of isochronous resources reservation (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: loosen stream format check for MIDI conformant data channel (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: fix fallback from protocol extension into limited functionality (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: add support for Alesis MasterControl (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: emux: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply 48kHz fixed rate playback for Jabra Evolve 65 headset (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply sample rate quirk for Audioengine D1 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix UAC2/3 effect unit parsing (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix endianess in descriptor validation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: add implicit fb quirk for MOTU M Series (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: unlock on error in probe (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix sync-ep altsetting sanity check (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add boot quirk for MOTU M Series (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: update old-style static const declaration (Jaroslav Kysela) [1797509] - [sound] ALSA: bcd2000: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use lower hex numbers for IDs (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply the sample rate quirk for Bose Companion 5 (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Constify struct snd_usb_audio_quirk entries (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Constify snd_ratden definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_pcm_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix Corsair Virtuoso mixer label collision (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix set_format altsetting sanity check (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: set the interface format after resume on Dell WD19 (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Adjust indentation in snd_usX2Y_hwdep_dsp_status (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ua101: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hiface: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix Focusrite Scarlett 6i6 gen1 - input handling (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix NULL dereference at parsing BADD (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix Scarlett 6i6 Gen 2 port data (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add skip_validation option (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix incorrect size check for processing/extension units (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix incorrect NULL check in create_yamaha_midi_quirk() (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: not submit urb for stopped endpoint (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix missing error check at mixer resolution test (Jaroslav Kysela) [1797509] - [sound] ALSA: ua101: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: hiface: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Drop the dead code (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: intel_hdmi: Remove dev_err() on platform_get_irq() failure (Jaroslav Kysela) [1797509] - [sound] ALSA: x86: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hdml-lpe-audio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: xen: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: atmel: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: arm: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: arm: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: wavefront: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sc6000: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3sa2: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: msnd: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cs423x: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4236: fix error return comparison of an unsigned integer (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8330: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8328: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xlnx: Use devm_platform_ioremap_resource() in xlnx_formatter_pcm_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: xtfpga-i2s: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: xlnx_formatter_pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: aio-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: txx9aclc: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: sdma-pcm: Add back the flags parameter for non standard dma names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: disable rx_fifo after disable stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: add a TDM configuration callback (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sunxi: sun4i-codec: remove unneeded semicolon (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix race condition in irq handler (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: retry synchronization in sync state (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix possible circular locking (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: add restriction on mmap support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix sysclk management on shutdown (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: dfsdm: fix 16 bits record (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm: stm32_adfsdm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: sprd-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: ipc: Fix memory leak in sof_set_get_large_ctrl_data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: fix the CONFIG_ prefix missing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: fix memory allocation failure check on priv->pd_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: utils: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-utils: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-ops: use snd_soc_card_get_kcontrol() at snd_soc_limit_volume() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic-dmaengine-pcm: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic-dmaengine: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: do error check after rsnd_channel_normalization() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: dma: fix SSI9 4/5/6/7 busif dma address (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: fsi: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rcar: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: core.c: add WARN_ON() on rsnd_channel_normalization() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: add missing of_node_put() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: rsnd: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: siu_pcm: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: siu_pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dma-sh7760: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: dma-sh7760: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Use pr_warn instead of pr_warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: idma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Rename Arndale card driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: arndale: Add support for WM1811 CODEC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: arndale: Simplify DAI link initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: Enable SHDN to fix headset detection (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip_max98090: Add HDMI jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip_max98090: Optionally support HDMI use case (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6routing: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: lpass-platform: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: pxa2xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: pxa-ssp: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: poodle: Spelling s/enpoints/endpoints/, s/connetion/connection/ (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: pxa2xx: No need to keep pointer to platform device (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: mmp-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: g12a: add tohdmitx reset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: relax period size constraints (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: improve depth handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: fix fifo threshold setup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183: support WoV (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mt8183: fix audio playback slowly after playback during bootup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mtk-btcvsd: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: fix device remove ordering (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Remove unused match variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: fix IRQ error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: kirkwood-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Drop lb60 board code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: fixup simple_dai_link_of_dpcm() comment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: audio-graph: fixup graph_dai_link_of_dpcm() comment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: Fix noise when using EDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Move static keyword to the front of declarations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Fix error handling in probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: remove set but not used variable 'bclk' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_esai: Add spin lock to protect reset, stop and start (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: fix build failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: don't use snd_soc_rtdcom_lookup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: imx-pcm-fiq: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: mpc5200_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_asrc_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8958: use to simplify code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic32x4: add a check for devm_clk_get (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd9335: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: tas2770: Remove unused defines and variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fix misuse of GENMASK macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt6358: support WoV (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-digital: add missing MIX2 path for RX1/2 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Add earpiece (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix RX1 selection in RDAC2 MUX (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: refine the setting of internal clock divider (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Fix error with S24_3LE format bitstream in i.MX8 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: update supported sample format (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Use in(out)put_format instead of in(out)put_word_width (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Add MQS component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8994: Add support for MCLKn clock gating (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8994: Add support for setting MCLK clock rate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fix sample rate error message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Return invalid for when bitwidth is invalid (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Introduce the TAS2562 amplifier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: clean up an indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: Fix snd_soc_update_bits error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: Remove unneeded read of the TDM_CFG3 register (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: tas2770: Fix build error without GPIOLIB (Jaroslav Kysela) [1797509] - [sound] ALSA: tas2770: fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: tas2770: add tas2770 smart PA kernel driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5663: clean up indentation issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5650: Add Kahlee platform specfic changes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Fix serial mode dependent format support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Use fixup instead of constraint for channels and formats (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: The codec does not support S32_LE (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: adau7118: Change regulators id (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: Add ADAU7118 8 Channel PDM-to-I2S/TDM Converter driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau1761: Add ALC controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau1761: Add PGA Slew time control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: cygnus-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: dbdma2: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel_ssc_dai: Remove wrong spinlock usage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: atmel-pcm-pdc: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: ACP needs to be powered off in BIOS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Additional DAI for I2S SP instance (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix simultaneous playback and capture (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x: Fix return value check in acp3x_dai_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: add ACP3x TDM mode support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Buffer Size instead of MAX Buffer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix for Subsequent Playback issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd MMAP_INTERLEAVED Support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Added ACP3x system resume and runtime pm (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Handle ACP3x I2S-SP Interrupts (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Enabling I2S instance in DMA and DAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Refactoring of DAI from DMA driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8741: Fix typo in Kconfig prompt (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Fix snd_sof_ipc_stream_posn() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: modify pre-divider for sysclk (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: add operation callback function for rt1015_dai (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: tidyup snd_soc_pcm_component_sync_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Correct DAPM handling of active widgets during shutdown (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Fix available clock counter incrementation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm512x: Fix unbalanced regulator enable call in probe error path (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix memleak in soc_tplg_manifest_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix memleak in soc_tplg_link_elems_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl: Fix possible buffer overflow in debug outputs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl: Fix pin debug prints (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sun8i-codec: Fix setting DAI data format (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: remove snd_soc_dapm_put_enum_double_locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: revert invalid fix for handling SHDN (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codec2codec: avoid invalid/double-free of pcm runtime (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: move i915 init earlier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add system_suspend_target field to struct snd_sof_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: fix atmel_ssc_set_audio link failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: Fix exiting path on probing failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Add missing COMMON_CLK dependency to SND_SOC_ALL_CODECS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Add missing COMMON_CLK dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: treewide: remove redundant IS_ERR() before error code check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for JasperLake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: consistent HDMI codec probing code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: soc-acpi-intel-icl-match: fix rt715 ADR (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pci: add missing default_fw_name of JasperLake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: trace: fix unconditional free in trace release (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: release resources on errors in probe_continue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: free trace on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix an Oops, caused by invalid topology (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: do not disable i915 power during probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: refactor i915_get/put functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: Remove unnecessary const (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: silence lockdep warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove null_snd_soc_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_trigger() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_hw_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_hw_params() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_prepare() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_shutdown() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_startup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: add rt1015 amplifier driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add MediaTek MT6660 Speaker Amp Driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix deadlock in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: add snd_soc_dapm_put_enum_double_locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: revert "ASoC: max98090: fix lockdep warning" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove bus_control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove DAI suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: ux500_msp_dai: remove unused DAI .suspend/.resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: omap-mcpdm: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sti: sti_uniperif: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: spdif: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: jz4740-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cirrus: ep93xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: atmel_ssc_dai: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: cygnus-ssp: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: Fix error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: crash in snd_soc_dapm_new_dai (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Remove code duplication in byt_rt5640_codec_fixup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Add MIC BIAS Internal3 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Simplify MIC BIAS Internal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: fix return value check in rt715_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: fix return value check in rt711_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: fix return value check in rt700_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Fix SKL dai count (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Correct cache handling of new kernel control API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: add multi endpoint support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Add support for imx8qm & imx8qxp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: Fix VDDA and VDDIO comparison (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: Add jz4770-codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: remove unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcht_es8316: removed unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_rt286: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: Intel: kbl_rt5663_rt5514_max98927: remove useless initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5660: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: remove unnecessary initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: test return value on route add (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: removed unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bxt_rt298: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-dai: fix compilation warning in pcm_prepare (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: remove warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: use dev_to_sdw_dev() instead of to_sdw_slave_device() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: add rt1308 SdW amplifier driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-digital: Reset RX interpolation path after use (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix MIC BIAS Internal1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sti: fix possible sleep-in-atomic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix selected events for MIC BIAS External1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: Fix error in driver removal after failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: fix HDA codec driver probe with multiple controllers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: lower print level to dbg if we will reinit DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: reference SoundWire machine lists (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: support alternate list of machines (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for TGL w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for CNL/CFL/CML w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for ICL w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: soc-acpi: declare new tables for SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: add _ADR-based link descriptors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: add link_mask field (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix PCM playback through ALSA OSS emulation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix Kconfig dependencies (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: add RT715 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Remove unused rtd variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_close_delayed_work() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: do pinctrl_pm_select_xxx() as component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove duplicate pinctrl operation when suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: care .ignore_suspend for Component suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_rtdcom_add() to snd_soc_rtd_add_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: add rt700 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_rtdcom_list (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: Drop incorrectly applied duplicate commit (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: add rt711 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: add wsa881x amplifier support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix lockdep warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix incorrect helper in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix incorrect helper in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: gtm601: fix build warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: add dynamic debug trace (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pci: change the default firmware path when the community key is used (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix NULL dereference at freeing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Ignore the speaker amp when there isn't one (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Fix Irbis NB41 netbook quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5640: Fix NULL dereference on module unload (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-topology: fix endianness issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: hda_dsp_common: use NULL pointer assignment, not 0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Fix compile-testing RT1011/RT5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: use resource_size (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Create multiple I2S platform device endpoint (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: add support to DB845c and Lenovo Yoga (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add audio routings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add capture dapm widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add playback dapm widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add basic controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add support to wcd9340/wcd9341 codec (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: gtm601: add Broadmobi bm818 sound profile (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: remove unused variable 'constraints_16000' and 'ch_mono' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: Update hdac hda dai table to include intel-hdmi-hifi4 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Add iDisp4 DAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: Fix dsp_box offset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_audmix: add missed pm_runtime_disable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix input pin state management (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix inconsistent lock state (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Fix access to uninitialized list heads (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Set dpcm_playback / dpcm_capture (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: Remove empty suspend function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Add Broadwell rt5650 machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: move arch_ops under ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Prevent use-after-free in snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: Read SAI parameters and send them to DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: Describe SAI parameters to be sent to DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: fix incorrect HDMI Kconfig dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: drop HDA codec upon probe failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Add machine driver for da7219_max98373 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: log compiler name and version information (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: define struct with compiler name and version (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Introduce state machine for FW boot (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: remove references to Haswell (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: cml_rt1011_rt5682: fix codec_conf by removing legacy style (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix fault at driver unload after failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: compress: Add pm_runtime support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skylake: Remove superfluous bus ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove legacy style of codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: rx51: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: speyside: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: lowland: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: bells: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5676: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5514: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl_nau88l25_ssm4567: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_rt5663_rt5514_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_rt5663_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_da7219_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: imx-audmix: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: support snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8962: fix lambda value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Drop snd_soc_pcm_lib_ioctl() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: haswell: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: baytrail: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup for CONFIG_DEBUG_FS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup for CONFIG_DMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_set_name_prefix() and soc_set_of_name_prefix() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: byt: fixup topology filename for BYT-CR (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: soc_set_name_prefix(): get component device_node at out of loop (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: soc_set_name_prefix(): tidyup loop condition (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename soc_link_init() to soc_init_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add missing return value check for soc_link_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_link_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename soc_link_dai_pcm_new() to soc_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_link_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_remove_dai_link() to snd_soc_remove_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_add_dai_link() to snd_soc_add_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_find_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: find rtd via dai_link pointer at snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_get_dai_substream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_disconnect_sync() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove dai_link_list (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: dobj is used only when SND_SOC_TOPOLOGY (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: add SND_SOC_BYTES_E (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add codec_mask module parameter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add asynchronous sample rate converter topology support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: work-around incorrect ACPI HID for CML boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: split cht and byt debug window sizes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: fix snd_sof_fw_parse_ext_data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: snd_sof_fw_parse_ext_data log warning on unknown header (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: Don't create separate link when platform is present (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value for soc_tplg_pcm_create() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value for snd_soc_add_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Explicitly include linux/io.h for virt_to_phys() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: nocodec: Amend arguments for sof_nocodec_setup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Remove unused drv_name in sof_pdata (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: remove nocodec_fw_filename (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Make creation of machine device from SOF core optional (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: intel: hda: Modify signature for hda_codec_probe_bus() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: partition audio-related parts from SOF core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Introduce default_fw_filename member in sof_dev_desc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: move check for runtime callbacks to core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: modify the signature for snd_sof_create_page_table (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: remove snd_sof_init_topology() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: remove unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel/skl/hda - export number of digital microphones via control components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: set plugged_cb to NULL when component removing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: re-introduce mutex locking again (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: drop mutex locking again (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix soc-core.c kernel-doc warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: solve MSI issues by merging ipc and stream irq handlers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Improve the sysclk selection (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cs42l51: add dac mux widget in codec routes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Calculate DALIGN inversion at run-time (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: Add Volume Soft Stepping control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: save and restore SHDN when changing sensitive registers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: add IRQF_SHARED (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: Add HP output driver pop reduction controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: common: refine hw_params and hw_prepare (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: common: add some helpers to control mtk_memif (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hdmi: Drop support for Icelake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: make common HDMI driver default (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: Add mach table for tgl-max98357a-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for tgl-max98357a-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_rt5682: Add quirk for number of HDMI DAI's (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: only flush inited work during free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Update quirk for Teclast X89 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Init pcm runtime work early to avoid warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sst: Add missing include (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix possible race conditions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: exit workaround earlier if PLL is locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: remove msleep in PLL unlocked workaround (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: fix automatic sysclk configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Fix build error without CONFIG_SPI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: Fix unload for SAI/ESAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: BYT: fix a copy/paste mistake in byt_dump() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: AMD: Enable clk in startup intead of hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix i2c arbitration lost issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: DMI long name - avoid to add board name if matches with product name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: improve the DMI long card code in asoc-core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: fix DALIGN register for SSIU (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: component: Add sync_stop PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Make ioctl ops optional (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: check symmetry before hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Update the RST gpio handling to align with documentation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: add control components management (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove soc_pcm_private_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fixup dead-lock at snd_soc_unregister_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fix RIP warning on card removal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: tidyup snd_soc_pcm_component_new/free() parameter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Update quirk for Acer Switch 10 SW5-012 2-in-1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Expose mixer control API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: configure output common-mode voltage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix build break (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Add support for optional RST gpio handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm5100: add missed pm_runtime_disable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm2200: add missed operations in remove and probe failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support to flac decoder (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add flac decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support to flac config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: rt5677_check_hotword() can be static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix the charge pump capacitor discharges (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Use dma_request_chan() directly for channel request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dmaengine: Use dma_request_chan() directly for channel request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: care card_probed at soc_cleanup_card_resources() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_unbind_card() next to snd_soc_bind_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call snd_soc_dapm_shutdown() at soc_cleanup_card_resources() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Fixed typo for buddy jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: fix regcache handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_probe_aux_devices() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_bind_card() and snd_soc_instantiate_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_remove_component() and soc_cleanup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_remove_dai_link() and soc_unbind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_add_dai_link() and soc_bind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_unregister_dai() and soc_del_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_register_dai() and soc_add_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove soc_is_dai_link_bound() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Jack: Fix NULL pointer dereference in snd_soc_jack_report (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: free kcontrol memory on error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: only suspend to D0I3 when needed (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: add helper to check if we should enter d0i3 suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: add check before setting d0_substate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: add state machine to comments (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: use fallback for firmware name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: acpi-match: split CNL tables in three (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Fixed buddy jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: configure sysclk/FLL automatically (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: Add dmic format constraint (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add DA7213 audio codec as selectable option (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Wait for DSP to boot before loading firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Set ADC clock to use PLL and enable ASRC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bdw-rt5677: Turn on MCLK1 for DSP via DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Allow VAD to be shut on/off at all times (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Disable irq at suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Stop and restart DSP over suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Mark reg RT5677_PWR_ANLG2 as volatile (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add DAPM audio path for hotword stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Enable jack detect while DSP is running (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bdw-rt5677: Add a DAI link for rt5677 SPI PCM device (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_audmix: Add spin lock to protect tdms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: set L1SEN on S0ix suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: fix missing NULL pointer check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Fix compile warning with CONFIG_DEBUG_FS=n (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: Fix bytes control size checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove topology specific operation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call snd_soc_register_dai() from snd_soc_register_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: don't call snd_soc_dapm_new_dai_widgets() at snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: have legacy_dai_naming at snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_unregister_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_unregister_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use snd_soc_lookup_component() at snd_soc_unregister_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_component_add/del() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_del_component_unlocked() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup snd_soc_lookup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_lookup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add soc_unbind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call soc_bind_dai_link() under snd_soc_add_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove duplicated soc_is_dai_link_bound() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: typo fix at soc_dai_link_sanity_check() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_init_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_init_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add for_each_rtd_components() and replace (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove for_each_rtdcom_safe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Use different sequence for start/stop trigger (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: snd_soc_unbind_card() cleanup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_pcm_lib_ioctl() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: setup card->rtd_num at snd_soc_instantiate_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use devm_xxx for component related resource (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add soc_setup_card_name() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove soc_remove_dai_links() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use devm_kzalloc() for rtd (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Clarify usage of ignore_machine (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_rtdcom_del_all() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_new_pcm_runtime() alloc order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: set trigger order for FE DAI link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: update FE/BE trigger order based on the command (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98373: replace gpio_request with devm_gpio_request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: mark HDAudio codec support as deprecated (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: use def_tristate, avoid using select (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: fix reverse CONFIG_SND_SOC_SOF_OF dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Kconfig: add EXPERT dependency for developer options, clarify help (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: add mutual exclusion between SOF and legacy Baytrail driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Baytrail: clarify mutual exclusion with Atom/SST driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Simplify the hda_dsp_wait_d0i3c_done() function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Add acpi match for rt1011 based m/c driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: Remove redundant variable "status" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: fix race in device removal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: set the different setting for QFN/WLCSP package (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: some minor changes to improve readability (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: add the range check for temperature_calib from device property (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: remove unnecessary tabs using spaces instead (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: fix spelling mistake "temperture" -> "temperature" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: Read and apply r0 and temperature device property (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: set tx/rx slots from tx/rx_mask in TDM case (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: improve the rt1011_set_dai_fmt() function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: remove redundant code in kcontrol (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove unneeded snd_soc_tplg_component_remove() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Load firmware via SPI using delayed work (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: fixup compile warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: fix sparse warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add missing null check for failed allocation of rt5677_dsp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add a PCM device for streaming hotword via SPI (Jaroslav Kysela) [1797509] - [sound] ALSA: serial-u16550: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: opl4: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: oss: Constify snd_seq_oss_callback definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3: Constify snd_opl3_drum_voice definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: mts64: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Constify snd_pcm_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Fix PCM format loop in proc output (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Fix dependency on timer API (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: do not override bus codec_mask in link_get() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Reset stream if DMA RUN bit not cleared (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: No preallocation on x86 platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Update kernel-doc function parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Comment about snd_hdac_bus_update_rirb() and spinlock (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Apply aligned MMIO access only conditionally (Jaroslav Kysela) [1797509] - [sound] ALSA: remove ioremap_nocache and devm_ioremap_nocache (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset of ASUS B9450FA with ALC294 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Button supported for ThinkPad X1 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Mic supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply quirk for yet another MSI laptop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply quirk for MSI GP63, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix silent output on MSI-GL73 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add more codec supported Headset Button (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Clear RIRB status before reading WP (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fixed one of HP ALC671 platform Headset Mic supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Fix DP-MST support for NVIDIA codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: Make the firmware loading ioctl a bit more readable (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Fix annotation and cast for the recent uapi header change (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add JasperLake PCI ID and codec vid (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add Clevo W65_67SB the power_save blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: fix spelling mistake "to" -> "too" (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add docking station support for Lenovo Thinkpad T420s (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - add retry logic to parse_intel_hdmi() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Mic supported for HP cPC (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/analog - Minor optimization for SPDIF mux connections (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: patch_hdmi: remove warnings with empty body (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: correct kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Manage concurrent reg access more properly (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: enable regmap internal locking (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix a typo in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Disable regmap internal locking (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: patch_realtek: fix empty macro usage in if block (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Rename back to dmic_detect option (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: echoaudio: remove set but not used variable 'chip' (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for the bass speaker on Lenovo Yoga X1 7th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Set EAPD control to default for ALC222 (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: ak4531: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: nm256: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: rme9652: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hdspm: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add new codec supported for ALCS1200A (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - constify and cleanup static NodeID tables (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_pci_quirk tables (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_pci_quirk tables (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Constify snd_fm801_tea575x_gpios (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Constify snd_es1968_tea575x_gpios (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Constify snd_emu_chip_details (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Constify snd_bt87x_boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Constify wm-specific tables (Jaroslav Kysela) [1797509] - [sound] ALSA: ice17xx: Constify snd_ice1712_card_info (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Constify snd_ca0106_details (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Constify snd_ca0106_category_str items (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Constify snd_ac97_res_table definition (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Constify snd_vx_hardware and snd_vx_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: info: Make snd_info_entry_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Treat snd_ac97_bus_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: Constify snd_timer_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_pcm_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the bass speaker of ASUS UX431FLC (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Fix sleep-in-atomic in Infrasonic Quartet support code (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Bass Speaker and fixed dac for bass speaker (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Apply sync-write workaround to old Intel platforms, too (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: echoaudio: remove usage of dimen menber of elem_value structure (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - fix atpx_present when CLASS is not VGA (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Make uapi/emu10k1.h compilable again (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add headset Mic no shutup for ALC283 (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Allow disabling MPU port via module option (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Downgrade error message for single-cmd fallback (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix regression by strip mask fix (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Fix work handling in delayed HP detection (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Avoid endless loop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Keep power on during processing DSP response (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Unify get_response handling (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use waitqueue for RIRB in HDA-core helper, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: tegra: Fix unused variable compile warning (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: Make uapi/hdsp.h compilable again (Jaroslav Kysela) [1797509] - [sound] ALSA: vx222: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sonicvibes: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sis7019: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme9652: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme96: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: oxygen: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: nm256: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: maestro3: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: lola: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs5535audio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: als300: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1889: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Line-out jack doesn't work on a Dell AIO (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Fix duplicate unref of pci_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: simplify get_audio_levels (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - Keep old slot assignment behavior for Intel platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Modify stream stripe mask only when needed (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - fixup for the bass speaker on Lenovo Carbon X1 7th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - preserve non-MST PCM routing for Intel platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix kernel oops caused by invalid PCM idx (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix inverted bass GPIO pin on Acer 8951G (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Dell headphone has noise on unmute for ALC236 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix regression in connect list handling (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - enable automatic runtime pm for AMD HDMI codecs by default (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - enable runtime pm for newer AMD display audio (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Add new pci ids for AMD GPU display audio (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - fix vgaswitcheroo detection for AMD (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable internal speaker of ASUS UX431FLC (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Clear codec->relaxed_resume flag at unbinding (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Move some alc236 pintbls to fallback table (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Move some alc256 pintbls to fallback table (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add mute led support for HP ProBook 645 G4 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST support for NVIDIA codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST support for non-acomp codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Rename snd_hda_pin_sense to snd_hda_jack_pin_sense (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - remove forced polling workaround for CFL and CNL (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - remove redundant code comments (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix port numbering for ICL and TGL platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Clean up Intel platform-specific fixup checks (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Fix incorrect device pointer for preallocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix pin setup on Tigerlake (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add Cometlake-S PCI ID (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - add Tigerlake support (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Fix possible workqueue stall (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Fix concurrent access to queue current tick/time (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Avoid concurrent access to queue flags (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix double hw_free calls (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix sparse warnings wrt snd_pcm_state_t (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix memory leak at closing a stream without hw_free (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Set per-card upper limit of PCM buffer allocations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Make snd_pcm_hw_constraints_init() and _complete() static (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Fix racy access for queue timer in proc read (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: fix nsec/sec initialization confusion (Jaroslav Kysela) [1797509] - [sound] ALSA: control: potential uninitialized return value (Jaroslav Kysela) [1797509] - [sound] ALSA: rawmidi: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: oss: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: jack: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: info: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: control: Add verification for kctl accesses (Jaroslav Kysela) [1797509] - [sound] ALSA: mixer: oss: Constify snd_mixer_oss_assign_table definition (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Constify struct snd_midi_op (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Constify snd_timer_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Treat snd_device_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: allow TLV read operation for callback type of element in locked case (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: remove dimen member from elem_info structure (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Avoid possible info leaks from PCM stream buffers (Jaroslav Kysela) [1797509] - [sound] ALSA: control: remove useless assignment in .info callback of PCM chmap element (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Fix typos and header inclusion in asound.h (Jaroslav Kysela) [1797509] - [sound] ALSA: bump uapi version numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: add new 32-bit layout for snd_pcm_mmap_status/control (Jaroslav Kysela) [1797509] - [sound] ALSA: move snd_pcm_ioctl_sync_ptr_compat into pcm_native.c (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_ctl_elem_value (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_timer_tread (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_rawmidi_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_pcm_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_timer_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Replace timespec with timespec64 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fixup dpcm_prune_paths() loop continue (Jaroslav Kysela) [1797509] - [sound] ALSA: ps3: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pmac: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sonicvibes: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sis7019: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: oxygen: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: maestro3: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: lola: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cs5535: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: als4000: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8330: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcsp: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atmel: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aaci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: rme: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: als300: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1889: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use standard waitqueue for RIRB wakeup (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: atom: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-mfld-platform-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-baytrail-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-haswell-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skylake: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ml403: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Avoid pointer dereference before null-check (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Avoid unexpected timer event callback tasklets (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Remove redundant locking in timer open function (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support runtime change of snd_timer via info interface (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support selection of snd_timer instead of jiffies (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Move CABLE_VALID_BOTH to the top of file (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Rename all jiffies timer specific functions (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Use callback functions for timer specific implementations (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support return of error code for timer start and stop (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Describe units of variables (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_free_pcm_runtime() and soc_rtd_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_new_pcm_runtime() and soc_rtd_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: create rtd->codec_dais first (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call list_del(&rtd->list) at soc_free_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_add_pcm_runtime() into soc_new_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_free_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: use list_del_init and move it back to soc_cleanup_component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: delete component->card_list in soc_remove_component only (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: remove snd_pcm_ops from component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add new pcm_construct/pcm_destruct (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_pcm_ops member to component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component.h: remove GPL explanation from header (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Avoid potential buffer overflows (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add card sync_irq field (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add the support for sync-stop operation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Move PCM_RUNTIME_CHECK() macro into local header (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Allow NULL ioctl ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Introduce managed buffer allocation mode (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix stream lock usage in snd_pcm_period_elapsed() (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix the breakage of slave link open (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Unexport snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Yet another missing check of non-cached buffer type (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix possible race at assigning a timer instance (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Make snd_timer_close() returning void (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Unify master/slave linking code (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix incorrectly assigned timer instance (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Limit max amount of slave instances (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Create proc files only for non-empty preallocations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Warn if doubly preallocated (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Handle special page mapping in the default mmap handler (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Add vmalloc buffer allocation support (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Allow NULL device for SNDRV_DMA_TYPE_CONTINUOUS type (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm_dmaengine: Extract snd_dmaengine_pcm_refine_runtime_hwparams (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel - do not describe I/O configuration in the long card name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel - use control components to describe card config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: make common HDMI driver the default for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: sof_rt5682: use dependency on SOF_HDA_LINK (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Geminilake is only supported by SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: fix configs for bxt-da7219-max98057a (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: remove select SND_HDA_DSP_LOADER (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Add CML m/c using RT1011 and RT5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: compress: fix unsigned integer overflow check (Jaroslav Kysela) [1797509] - [sound] ALSA: Revert "ALSA: usb-audio: set the interface format after resume on Dell WD19" (Jaroslav Kysela) [1797509]- [crypto] crypto: ccp - use file mode for sev ioctl permissions (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Cleanup sp_dev_master in psp_dev_destroy() (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Cleanup misc_dev on sev_exit() (Vladis Dronov) [1765717] - [crypto] crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Vladis Dronov) [1765717] - [crypto] crypto: ccp - move SEV vdata to a dedicated data structure (Vladis Dronov) [1765717] - [crypto] crypto: ccp - create a generic psp-dev file (Vladis Dronov) [1765717] - [crypto] crypto: ccp - rename psp-dev files to sev-dev (Vladis Dronov) [1765717] - [crypto] crypto: ccp - set max RSA modulus size for v3 platform devices as well (Vladis Dronov) [1765717] - [crypto] crypto: ccp - add SEV command privilege separation (Vladis Dronov) [1765717] - [crypto] crypto: ccp - fix uninitialized list head (Vladis Dronov) [1765717] - [crypto] crypto: user - fix memory leak in crypto_report (Vladis Dronov) [1829808 1765717] {CVE-2019-19062} - [crypto] crypto: ccp - Release all allocated memory if sha type is invalid (Vladis Dronov) [1825134 1765717] {CVE-2019-18808} - [crypto] crypto: ccp - invoke fallback for XTS ciphertext stealing (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove unnecessary linux/pci.h include (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Include DMA declarations explicitly (Vladis Dronov) [1765717] - [crypto] crypto: ccp - use devm_platform_ioremap_resource() to simplify code (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Clean up and exit correctly on allocation failure (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Log an error message when ccp-crypto fails to load (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Ignore tag length when decrypting GCM ciphertext (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add support for valid authsize values less than 16 (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Fix oops by properly managing allocated structures (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Reduce maximum stack usage (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Include the module name in system log messages (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add a module parameter to control registration for DMA (Vladis Dronov) [1765717] - [crypto] crypto: ccp - module parameter to limit the number of enabled CCPs (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add a module parameter to specify a queue count (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Make CCP debugfs support optional (Vladis Dronov) [1765717] - [crypto] crypto: ctr - add helper for performing a CTR encryption walk (Vladis Dronov) [1765717] - [crypto] crypto: ccp - memset structure fields to zero before reuse (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Fix 3DES complaint from ccp-crypto module (Vladis Dronov) [1765717] - [crypto] crypto: ccp - fix AES CFB error exposed by new test vectors (Vladis Dronov) [1765717] - [crypto] crypto: ccp - AES CFB mode is a stream cipher (Vladis Dronov) [1765717] - [crypto] treewide: Add SPDX license identifier - Makefile/Kconfig (Vladis Dronov) [1765717] - [crypto] crypto: shash - remove shash_desc::flags (Vladis Dronov) [1765717] - [crypto] crypto: ccp - no need to check return value of debugfs_create functions (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove forward declaration (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove VLA usage of skcipher (Vladis Dronov) [1765717] - [crypto] crypto: skcipher - Introduce crypto_sync_skcipher (Vladis Dronov) [1765717] - [infiniband] IB/mlx4: Test return value of calls to ib_get_cached_pkey (Alaa Hleihel) [1767259] - [netdrv] net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc() (Alaa Hleihel) [1767259] - [infiniband] RDMA/mlx4: Initialize ib_spec on the stack (Alaa Hleihel) [1767259] - [powerpc] powerpc/powernv: Re-enable imc trace-mode in kernel (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Implement a global lock to avoid races between trace, core and thread imc events (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Return accordingly on invalid chip-id in (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Remove PM_BR_CMPL_ALT from power9 event list (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Add generic compat mode pmu driver (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: init pmu from core-book3s (Desnes Augusto Nunes do Rosario) [1725201] - [fs] NFS: Fix fscache super_cookie index_key from changing after umount (Dave Wysochanski) [1790933] - [fs] NFSv4: Fix fscache cookie aux_data to ensure change_attr is included (Dave Wysochanski) [1793560] - [fs] nfs: fscache: use timespec64 in inode auxdata (Dave Wysochanski) [1793560] - [documentation] i2c: replace i2c_new_probed_device with an ERR_PTR variant (David Arcari) [1835245] - [documentation] docs: stop suggesting strlcpy (David Arcari) [1835245] - [scsi] scsi: hpsa: Update driver version (Joseph Szczypek) [1815628] - [scsi] scsi: hpsa: correct race condition in offload enabled (Joseph Szczypek) [1815628] - [kernel] audit: log audit netlink multicast bind and unbind (Richard Guy Briggs) [1829622] - [ipc] ipc/mqueue.c: change __do_notify() to bypass check_kill_permission() (Oleg Nesterov) [1808931] - [scsi] scsi: megaraid_sas: Update driver version to 07.714.04.00-rc1 (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: TM command refire leads to controller firmware crash (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Replace undefined MFI_BIG_ENDIAN macro with __BIG_ENDIAN_BITFIELD macro (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Remove IO buffer hole detection logic (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Limit device queue depth to controller queue depth (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: Use true, false for bool variables (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make two symbols static in megaraid_sas_base.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make some symbols static in megaraid_sas_fusion.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make some symbols static in megaraid_sas_fp.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Use scnprintf() for avoiding potential buffer overflow (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: silence a warning (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: fix indentation issue (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Update driver version to 07.713.01.00-rc1 (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Use Block layer API to check SCSI device in-flight IO requests (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Limit the number of retries for the IOCTLs causing firmware fault (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Re-Define enum DCMD_RETURN_STATUS (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not set HBA Operational if FW is not in operational state (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not kill HBA if JBOD Seqence map or RAID map is disabled (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not kill host bus adapter, if adapter is already dead (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Update optimal queue depth for SAS and NVMe devices (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Set no_write_same only for Virtual Disk (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Reset adapter if FW is not in READY state after device resume (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Make poll_aen_lock static (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: remove unused variables 'debugBlk', 'fusion' (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Unique names for MSI-X vectors (Tomas Henzl) [1791041]- [crypto] crypto: drbg - fix error return code in drbg_alloc_state() (Vladis Dronov) [1822458] - [fs] fs: call fsnotify_sb_delete after evict_inodes (Jay Shin) [1834741] - [fs] fs: avoid softlockups in s_inodes iterators (Jay Shin) [1834741] - [fs] fs/drop_caches.c: avoid softlockups in drop_pagecache_sb() (Jay Shin) [1834741] - [net] net/smc: remove set but not used variables 'del_llc, del_llc_resp' (Philipp Rudo) [1725886] - [net] net/smc: remove unused inline function smc_curs_read (Philipp Rudo) [1725886] - [net] net/smc: log important pnetid and state change events (Philipp Rudo) [1725886] - [net] net/smc: save SMC-R peer link_uid (Philipp Rudo) [1725886] - [net] net/smc: create improved SMC-R link_uid (Philipp Rudo) [1725886] - [net] net/smc: improve termination processing (Philipp Rudo) [1725886] - [net] net/smc: add termination reason and handle LLC protocol violation (Philipp Rudo) [1725886] - [net] net/smc: asymmetric link tagging (Philipp Rudo) [1725886] - [net] net/smc: assign link to a new connection (Philipp Rudo) [1725886] - [net] net/smc: send DELETE_LINK, ALL message and wait for send to complete (Philipp Rudo) [1725886] - [net] net/smc: wait for departure of an IB message (Philipp Rudo) [1725886] - [net] net/smc: handle incoming CDC validation message (Philipp Rudo) [1725886] - [net] net/smc: send failover validation message (Philipp Rudo) [1725886] - [net] net/smc: switch connections to alternate link (Philipp Rudo) [1725886] - [net] net/smc: save state of last sent CDC message (Philipp Rudo) [1725886] - [net] net/smc: enqueue local LLC messages (Philipp Rudo) [1725886] - [net] net/smc: delete link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: delete link processing as SMC client (Philipp Rudo) [1725886] - [net] net/smc: llc_del_link_work and use the LLC flow for delete link (Philipp Rudo) [1725886] - [net] net/smc: delete an asymmetric link as SMC server (Philipp Rudo) [1725886] - [net] net/smc: final part of add link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: rkey processing for a new link as SMC server (Philipp Rudo) [1725886] - [net] net/smc: first part of add link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: final part of add link processing as SMC client (Philipp Rudo) [1725886] - [net] net/smc: rkey processing for a new link as SMC client (Philipp Rudo) [1725886] - [net] net/smc: first part of add link processing as SMC client (Philipp Rudo) [1725886] - [net] smc: Remove unused function (Philipp Rudo) [1725886] - [net] net/smc: llc_add_link_work to handle ADD_LINK LLC requests (Philipp Rudo) [1725886] - [net] net/smc: allocate index for a new link (Philipp Rudo) [1725886] - [net] net/smc: introduce smc_pnet_find_alt_roce() (Philipp Rudo) [1725886] - [net] net/smc: remove DELETE LINK processing from smc_core.c (Philipp Rudo) [1725886] - [net] net/smc: take link down instead of terminating the link group (Philipp Rudo) [1725886] - [net] net/smc: add smcr_port_err() and smcr_link_down() processing (Philipp Rudo) [1725886] - [net] net/smc: add smcr_port_add() and smcr_link_up() processing (Philipp Rudo) [1725886] - [net] net/smc: remember PNETID of IB device for later device matching (Philipp Rudo) [1725886] - [net] net/smc: mutex to protect the lgr against parallel reconfigurations (Philipp Rudo) [1725886] - [net] net/smc: extend smc_llc_send_add_link() and smc_llc_send_delete_link() (Philipp Rudo) [1725886] - [net] net/smc: map and register buffers for a new link (Philipp Rudo) [1725886] - [net] net/smc: unmapping of buffers to support multiple links (Philipp Rudo) [1725886] - [net] net/smc: multiple link support for rmb buffer registration (Philipp Rudo) [1725886] - [net] net/smc: remove obsolete link state DELETING (Philipp Rudo) [1725886] - [net] net/smc: remove handling of CONFIRM_RKEY_CONTINUE (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC remote DELETE_RKEY processing to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC remote CONFIRM_RKEY processing to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: new smc_rtoken_set functions for multiple link support (Philipp Rudo) [1725886] - [net] net/smc: move the TEST_LINK response processing into event handler (Philipp Rudo) [1725886] - [net] net/smc: multiple link support and LLC flow for smc_llc_do_delete_rkey (Philipp Rudo) [1725886] - [net] net/smc: multiple link support and LLC flow for smc_llc_do_confirm_rkey (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC client code to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC server code to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: add logic to evaluate CONFIRM_LINK messages to LLC layer (Philipp Rudo) [1725886] - [net] net/smc: introduce link group type (Philipp Rudo) [1725886] - [net] net/smc: enqueue all received LLC messages (Philipp Rudo) [1725886] - [net] net/smc: add event-based llc_flow framework (Philipp Rudo) [1725886] - [net] net/smc: move llc layer related init and clear into smc_llc.c (Philipp Rudo) [1725886] - [net] net/smc: use mutex instead of rwlock_t to protect buffers (Philipp Rudo) [1725886] - [net] net/smc: process llc responses in tasklet context (Philipp Rudo) [1725886] - [net] net/smc: use worker to process incoming llc messages (Philipp Rudo) [1725886] - [net] net/smc: simplify link deactivation (Philipp Rudo) [1725886] - [net] net/smc: move testlink work to system work queue (Philipp Rudo) [1725886] - [net] net/smc: add new link state and related helpers (Philipp Rudo) [1725886] - [net] net/smc: multi-link support for smc_rmb_rtoken_handling() (Philipp Rudo) [1725886] - [net] net/smc: convert static link ID instances to support multiple links (Philipp Rudo) [1725886] - [net] net/smc: convert static link ID to dynamic references (Philipp Rudo) [1725886] - [net] net/smc: introduce link_idx for link group array (Philipp Rudo) [1725886] - [net] net/smc: separate function for link initialization (Philipp Rudo) [1725886] - [net] net/smc: rework pnet table to support SMC-R failover (Philipp Rudo) [1725886] - [net] net/smc: improve peer ID in CLC decline for SMC-R (Philipp Rudo) [1725886] - [net] net/smc: rework peer ID handling (Philipp Rudo) [1725886] - [net] net/smc: reduce port_event scheduling (Philipp Rudo) [1725886] - [net] net/smc: simplify normal link termination (Philipp Rudo) [1725886] - [net] net/smc: remove unused parameter of smc_lgr_terminate() (Philipp Rudo) [1725886] - [net] net/smc: do not delete lgr from list twice (Philipp Rudo) [1725886] - [net] net/smc: use termination worker under send_lock (Philipp Rudo) [1725886] - [net] net/smc: improve smc_lgr_cleanup() (Philipp Rudo) [1725886] - [pci] PCI: Add new PCI_VPD_RO_KEYWORD_SERIALNO macro (Jonathan Toppins) [1834900] - [pci] PCI: Introduce pci_get_dsn (Jonathan Toppins) [1834900] - [scsi] scsi: lpfc: Remove redundant initialization to variable rc (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.1 (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix MDS Diagnostic Enablement definition (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix noderef and address space warnings (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Remove unnecessary lockdep_assert_held calls (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Change default queue allocation for reduced memory consumption (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix negation of else clause in lpfc_prep_node_fc4type (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Remove re-binding of nvme rport during registration (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Maintain atomic consistency of queue_claimed flag (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: remove duplicate unloading checks (Dick Kennedy) [1835310] - [scsi] scsi: qedf: Get dev info after updating the params (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Fix crash when MFW calls for protocol stats while function is still probing (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Add schedule recovery handler (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Implement callback for bw_update (Nilesh Javali) [1792113] - [netdrv] scsi: qed: Send BW update notifications to the protocol drivers (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Honor status qualifier in FCP_RSP per spec (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Acquire rport_lock for resetting the delay_timestamp (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Increase the upper limit of retry delay (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Keep track of num of pending flogi (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Simplify mutex_unlock() usage (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Add port_id getter (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Remove always false 'tmp_prio < 0' statement (Nilesh Javali) [1792113] - [include] NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION (Steve Dickson) [1828592] - [edac] EDAC/amd64: Drop some family checks for newer systems (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Add family ops for Family 19h Models 00h-0Fh (Aristeu Rozanski) [1779822 1735611] - [x86] x86/amd_nb: Add Family 19h PCI IDs (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/mce_amd: Always load on SMCA systems (Aristeu Rozanski) [1779822 1735611] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new Load Store unit McaType (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Save max number of controllers to family type (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Gather hardware information early (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Make struct amd64_family_type global (Aristeu Rozanski) [1779822 1735611] - [fs] nfsd: Add tracepoints for update of the expkey and export cache entries (Dave Wysochanski) [1775408] - [fs] nfsd: Add tracepoints for exp_find_key() and exp_get_by_name() (Dave Wysochanski) [1775408] - [fs] nfsd: Add tracing to nfsd_set_fh_dentry() (Dave Wysochanski) [1775408] - [net] SUNRPC: Clean up: Replace dprintk and BUG_ON call sites in svcauth_gss.c (Dave Wysochanski) [1775408] - [net] svcrdma: Create a generic tracing class for displaying xdr_buf layout (Dave Wysochanski) [1775408] - [net] SUNRPC: Capture completion of all RPC tasks (Dave Wysochanski) [1775408] - [net] SUNRPC: Trace gssproxy upcall results (Dave Wysochanski) [1775408] - [trace] fix null pointer deref in tracepoints in back channel (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic file commit tracepoint (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic writeback tracepoints (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic file read tracepoints (Dave Wysochanski) [1775408] - [fs] pNFS/flexfiles: Add tracing for layout errors (Dave Wysochanski) [1775408] - [fs] pNFS/flexfiles: Record resend attempts on I/O failure (Dave Wysochanski) [1775408] - [fs] NFS: Fix fix of show_nfs_errors (Dave Wysochanski) [1775408] - [fs] NFSv4: Improve read/write/commit tracing (Dave Wysochanski) [1775408] - [fs] NFS4: Report callback authentication errors (Dave Wysochanski) [1775408] - [fs] NFS4: Trace lock reclaims (Dave Wysochanski) [1775408] - [fs] NFS4: Trace state recovery operation (Dave Wysochanski) [1775408] - [fs] NFS: Add a tracepoint in nfs_fh_to_dentry() (Dave Wysochanski) [1775408] - [fs] pnfs/flexfiles: Add tracepoints for detecting pnfs fallback to MDS (Dave Wysochanski) [1775408] - [fs] NFS: Record task, client ID, and XID in xdr_status trace points (Dave Wysochanski) [1775408] - [fs] NFS: Display symbolic status code names in trace log (Dave Wysochanski) [1775408] - [fs] NFS: Fix show_nfs_errors macros again (Dave Wysochanski) [1775408] - [fs] NFS4: Add a trace event to record invalid CB sequence IDs (Dave Wysochanski) [1775408] - [media] media: v4l: event: Add subscription to list before calling "add" operation (Jarod Wilson) [1828805] {CVE-2019-9458} - [media] media: v4l: event: Prevent freeing event subscriptions while accessed (Jarod Wilson) [1828805] {CVE-2019-9458} - [vhost] vhost: Check docket sk_family instead of call getname (Vladis Dronov) [1823301] {CVE-2020-10942} - [documentation] kvm: ppc: book3s hv: Add a capability for enabling secure guests (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: H_SVM_INIT_START must call UV_RETURN (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Check caller of H_SVM_* Hcalls (David Gibson) [1814624] - [powerpc] Introduce the MSR_S bit (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Skip kvmppc_uvmem_free if Ultravisor is not supported (David Gibson) [1814624] - [powerpc] kvm: ppc: Kill kvmppc_ops::mmu_destroy() and kvmppc_mmu_destroy() (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Move kvmppc_mmu_init() into PR KVM (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Treat TM-related invalid form instructions on P9 like the valid ones (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Use RADIX_PTE_INDEX_SIZE in Radix MMU code (David Gibson) [1814624] - [powerpc] kvm: no need to check return value of debugfs_create functions (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Fix -Werror=return-type build failure (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Release lock on page-out failure path (David Gibson) [1814624] - [powerpc] mm: Remove kvm radix prefetch workaround for Power9 DD2.2 (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: xive: Fix typo in comment (David Gibson) [1814624] - [documentation] kvm: ppc: book3s hv: Implement H_SVM_INIT_ABORT hcall (David Gibson) [1814624] - [powerpc] kvm: ppc: Add skip_page_out parameter to uvmem functions (David Gibson) [1814624] - [powerpc] kvm: ppc: book3e: Replace current->mm by kvm->mm (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Replace current->mm by kvm->mm (David Gibson) [1814624] - [mm] add account_locked_vm utility function (David Gibson) [1814624] - [powerpc] kvm: ppc: Remove set but not used variable 'ra', 'rs', 'rt' (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't do ultravisor calls on systems without ultravisor (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Support reset of secure guest (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Handle memory plug/unplug to secure VM (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Radix changes for secure guest (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Shared pages support for secure guests (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Support for running secure guests (David Gibson) [1814624] - [powerpc] pseries/svm: Unshare all pages before kexecing a new kernel (David Gibson) [1814624] - [powerpc] pseries/svm: Use shared memory for LPPACA structures (David Gibson) [1814624] - [powerpc] pseries: Add and use LPPACA_SIZE constant (David Gibson) [1814624] - [powerpc] pseries/svm: Add helpers for UV_SHARE_PAGE and UV_UNSHARE_PAGE (David Gibson) [1814624] - [powerpc] prom_init: Add the ESM call to prom_init (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Reject mflags=2 (LPCR[AIL]=2) ADDR_TRANS_MODE mode (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Implement LPCR[AIL]=3 mode for injected interrupts (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Reuse kvmppc_inject_interrupt for async guest delivery (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Replace reset_msr mmu op with inject_interrupt arch op (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Define and use SRR1_MSR_BITS (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: xive: Show VP id in debugfs (David Gibson) [1814624] - [powerpc] kvm: ppc: e500: Replace current->mm by kvm->mm (David Gibson) [1814624] - [powerpc] kvm: ppc: Report single stepping capability (David Gibson) [1814624] - [powerpc] kvm: Fix kvmppc_vcore->in_guest value in kvmhv_switch_to_host (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: use smp_mb() when setting/clearing host_ipi flag (David Gibson) [1814624] - [powerpc] 64s: Set reserved PCR bits (David Gibson) [1814624] - [powerpc] Fix definition of PCR bits to work with old binutils (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Invalidate multiple TCEs at once (David Gibson) [1814624] - [powerpc] powernv/ioda: Split out TCE invalidation from TCE updates (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't lose pending doorbell request on migration on P9 (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Check for MMU ready on piggybacked virtual cores (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Define usage types for rmap array in guest memslot (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't push XIVE context when not using XIVE device (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Fix race in re-enabling XIVE escalation interrupts (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Fix software breakpoints (David Gibson) [1814624] - [powerpc] kvm: ppc: Remove leftover comment from emulate_loadstore.c (David Gibson) [1814624] - [x86] hyperv: Properly suspend/resume reenlightenment notifications (Mohammed Gamal) [1815475] - [kernel] pm: hibernate: Freeze kernel threads in software_resume() (Mohammed Gamal) [1815475] - [kernel] pm: hibernate: Propagate the return value of hibernation_restore() (Mohammed Gamal) [1815475] - [x86] hyperv: Suspend/resume the VP assist page for hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM (Mohammed Gamal) [1815475] - [net] hv_sock: Add the support of hibernation (Mohammed Gamal) [1815475] - [video] hyperv_fb: Fix hibernation for the deferred IO feature (Mohammed Gamal) [1815475] - [video] hyperv_fb: Add the support of hibernation (Mohammed Gamal) [1815475] - [scsi] storvsc: Add the support of hibernation (Mohammed Gamal) [1815475] - [netdrv] hv_netvsc: Add the support of hibernation (Mohammed Gamal) [1815475] - [pci] hv: Change pci_protocol_version to per-hbus (Mohammed Gamal) [1815475] - [pci] hv: Add hibernation support (Mohammed Gamal) [1815475] - [input] hyperv-keyboard: Add the support of hibernation (Mohammed Gamal) [1815475] - [hid] hyperv: NULL check before some freeing functions is not needed (Mohammed Gamal) [1815475] - [hid] hyperv: Add the support of hibernation (Mohammed Gamal) [1815475] - [clocksource] hyper-v: Suspend/resume Hyper-V clocksource for hibernation (Mohammed Gamal) [1815475] - [x86] hyperv: Suspend/resume the hypercall page for hibernation (Mohammed Gamal) [1815475] - [x86] hyperv: Implement hv_is_hibernation_supported() (Mohammed Gamal) [1815475] - [hv] hv_utils: Add the support of hibernation (Mohammed Gamal) [1815475] - [hv] hv_utils: Support host-initiated hibernation request (Mohammed Gamal) [1815475] - [hv] hv_utils: Support host-initiated restart request (Mohammed Gamal) [1815475] - [hv] hv_balloon: Add the support of hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Resume after fixing up old primary channels (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Suspend after cleaning up hv_sock and sub channels (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Clean up hv_sock channels by force upon suspend (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Suspend/resume the vmbus itself for hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Ignore the offers when resuming from hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Implement suspend/resume for VSC drivers for hibernation (Mohammed Gamal) [1815475] - [net] ipv4: really enforce backoff for redirects (Paolo Abeni) [1834184] - [net] netfilter: nat: never update the UDP checksum when it's 0 (Guillaume Nault) [1794714] - [net] sched: allow flower to match erspan options (Xin Long) [1830482] - [net] sched: allow flower to match vxlan options (Xin Long) [1830482] - [net] sched: add erspan option support to act_tunnel_key (Xin Long) [1830482] - [net] sched: add vxlan option support to act_tunnel_key (Xin Long) [1830482] - [netdrv] netdevsim: disable devlink reload when resources are being used (Ivan Vecera) [1829778] - [netdrv] netdevsim: fix using uninitialized resources (Ivan Vecera) [1829778] - [netdrv] drivers/net: netdevsim depends on INET (Ivan Vecera) [1829778] - [netdrv] netdevsim: fix nsim_fib6_rt_create() error path (Ivan Vecera) [1829778] - [tools] selftests: netdevsim: Add test for FIB offload API (Ivan Vecera) [1829778] - [tools] selftests: forwarding: Add helpers and tests for FIB offload (Ivan Vecera) [1829778] - [tools] selftests: mlxsw: Add a self-test for port-default priority (Ivan Vecera) [1829778] - [netdrv] netdevsim: fib: Add dummy implementation for FIB offload (Ivan Vecera) [1829778] - [net] ipv6: Add "offload" and "trap" indications to routes (Ivan Vecera) [1829778] - [net] ipv4: Add "offload" and "trap" indications to routes (Ivan Vecera) [1829778] - [net] ipv4: Encapsulate function arguments in a struct (Ivan Vecera) [1829778] - [net] ipv4: Replace route in list before notifying (Ivan Vecera) [1829778] - [tools] selftests: netdevsim: Extend devlink trap test to include flow action cookie (Petr Oros) [1823745] - [netdrv] netdevsim: add ACL trap reporting cookie as a metadata (Petr Oros) [1823745] - [net] devlink: extend devlink_trap_report() to accept cookie and pass (Petr Oros) [1823745] - [net] drop_monitor: extend by passing cookie from driver (Petr Oros) [1823745] - [net] devlink: add trap metadata type for cookie (Petr Oros) [1823745] - [net] devlink: add ACL generic packet traps (Petr Oros) [1823745] - [net] devlink: Add overlay source MAC is multicast trap (Petr Oros) [1823745] - [net] devlink: Add tunnel generic packet traps (Petr Oros) [1823745] - [net] devlink: Add non-routable packet trap (Petr Oros) [1823745] - [netdrv] mlxsw: spectrum_router: Prevent incorrect replacement of local table routes (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Remove FIB entry list from FIB node (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Consolidate identical functions (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Make route creation and destruction symmetric (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Eliminate dead code (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Remove unnecessary checks (Ivan Vecera) [1828994] - [net] ipv6: Remove old route notifications and convert listeners (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Start using new IPv6 route notifications (Ivan Vecera) [1828994] - [net] ipv6: Handle multipath route deletion notification (Ivan Vecera) [1828994] - [net] ipv6: Handle route deletion notification (Ivan Vecera) [1828994] - [net] ipv6: Only Replay routes of interest to new listeners (Ivan Vecera) [1828994] - [net] ipv6: Notify multipath route if should be offloaded (Ivan Vecera) [1828994] - [net] ipv6: Notify route if replacing currently offloaded one (Ivan Vecera) [1828994] - [net] ipv6: Notify newly added route if should be offloaded (Ivan Vecera) [1828994] - [include] net: fib_notifier: Add temporary events to the FIB notification chain (Ivan Vecera) [1828994] - [net] ipv4: Remove old route notifications and convert listeners (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Start using new IPv4 route notifications (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Don't rely on missing extack to symbolize dump (Ivan Vecera) [1828994] - [net] ipv4: Only Replay routes of interest to new listeners (Ivan Vecera) [1828994] - [net] ipv4: Handle route deletion notification during flush (Ivan Vecera) [1828994] - [net] ipv4: Handle route deletion notification (Ivan Vecera) [1828994] - [net] ipv4: Notify newly added route if should be offloaded (Ivan Vecera) [1828994] - [net] ipv4: Notify route if replacing currently offloaded one (Ivan Vecera) [1828994] - [net] ipv4: Extend FIB alias find function (Ivan Vecera) [1828994] - [net] ipv4: Notify route after insertion to the routing table (Ivan Vecera) [1828994] - [include] net: fib_notifier: Add temporary events to the FIB notification chain (Ivan Vecera) [1828994] - [net] vti6: Fix memory leak of skb if input policy check fails (Xin Long) [1829720] - [net] xfrm: policy: Fix doulbe free in xfrm_policy_timer (Xin Long) [1829720] - [net] xfrm: add the missing verify_sec_ctx_len check in xfrm_add_acquire (Xin Long) [1829720] - [net] xfrm: fix uctx len check in verify_sec_ctx_len (Xin Long) [1829720] - [net] xfrm: handle NETDEV_UNREGISTER for xfrm device (Xin Long) [1829720] - [net] xfrm: interface: do not confirm neighbor when do pmtu update (Xin Long) [1829720] - [documentation] xfrm: update doc about xfrm[46]_gc_thresh (Xin Long) [1829720] - [documentation] devlink: remove trigger command from devlink-region.rst (Petr Oros) [1822570] - [include] devlink: promote "fw.bundle_id" to a generic info version (Petr Oros) [1822570] - [documentation] devlink: document devlink info versions reported by bnxt_en driver (Petr Oros) [1822570] - [include] devlink: add macro for "fw.roce" (Petr Oros) [1822570] - [documentation] Fix typo in devlink documentation (Petr Oros) [1822570] - [documentation] devlink: fix typos in qed documentation (Petr Oros) [1822570] - [documentation] devlink: document region snapshot triggering from userspace (Petr Oros) [1822570] - [documentation] devlink: introduce devlink-dpipe.rst documentation file (Petr Oros) [1822570] - [documentation] devlink: add a devlink-resource.rst documentation file (Petr Oros) [1822570] - [netdrv] devlink: rename and expand devlink-trap-netdevsim.rst (Petr Oros) [1822570] - [documentation] devlink: add documentation for ionic device driver (Petr Oros) [1822570] - [documentation] devlink: add a file documenting devlink regions (Petr Oros) [1822570] - [documentation] devlink: add a driver-specific file for the qed driver (Petr Oros) [1822570] - [documentation] devlink: add parameter documentation for the mlx4 driver (Petr Oros) [1822570] - [documentation] devlink: document info versions for each driver (Petr Oros) [1822570] - [documentation] devlink: convert driver-specific files to reStructuredText (Petr Oros) [1822570] - [documentation] devlink: mention reloading in devlink-params.rst (Petr Oros) [1822570] - [documentation] devlink: add documentation for generic devlink parameters (Petr Oros) [1822570] - [documentation] devlink: convert devlink-params.txt to reStructuredText (Petr Oros) [1822570] - [documentation] devlink: rename devlink-info-versions.rst and add a header (Petr Oros) [1822570] - [documentation] devlink: convert devlink-health.txt to rst format (Petr Oros) [1822570] - [documentation] devlink: move devlink documentation to subfolder (Petr Oros) [1822570] - [include] devlink: add macro for "fw.psid" (Petr Oros) [1822570] - [netdrv] ethtool: Add support for 400Gbps (50Gbps per lane) link modes (Ivan Vecera) [1828942] - [netdrv] phy: Add support for 100BaseT1 and 1000BaseT1 (Ivan Vecera) [1828942] - [net] phy: improve definition of __ETHTOOL_LINK_MODE_MASK_NBITS (Ivan Vecera) [1828942] - [net] netfilter: nf_tables: simplify NLM_F_CREATE handling (Phil Sutter) [1812666] - [net] devlink: Add layer 3 generic packet exception traps (Petr Oros) [1828737] - [net] devlink: Add layer 3 generic packet traps (Petr Oros) [1828737] - [net] netfilter: nf_tables: fix infinite loop when expr is not available (Phil Sutter) [1757933] - [net] netfilter: nf_tables: autoload modules from the abort path (Phil Sutter) [1757933] - [net] netfilter: nf_tables: remove WARN and add NLA_STRING upper limits (Phil Sutter) [1757933] - [net] netfilter: nf_tables: store transaction list locally while requesting module (Phil Sutter) [1757933] - [net] netfilter: nf_tables: use-after-free in failing rule with bound set (Phil Sutter) [1757933] - [net] netfilter: nft_meta: skip EAGAIN if nft_meta_bridge is not a module (Phil Sutter) [1757933] - [net] netfilter: nf_tables: force module load in case select_ops() returns -EAGAIN (Phil Sutter) [1757933] - [net] netfilter: nf_tables: add nft_expr_type_request_module() (Phil Sutter) [1757933] - [net] netfilter: nf_tables: bogus EBUSY in helper removal from transaction (Phil Sutter) [1757933] - [net] netfilter: nf_tables: fix set double-free in abort path (Phil Sutter) [1757933] - [net] netfilter: nft_compat: don't use refcount_inc on newly allocated entry (Phil Sutter) [1757933] - [net] netfilter: nf_tables: unbind set in rule from commit path (Phil Sutter) [1757933] - [net] netfilter: nft_compat: destroy function must not have side effects (Phil Sutter) [1757933] - [net] netfilter: nft_compat: make lists per netns (Phil Sutter) [1757933] - [net] netfilter: nft_compat: use refcnt_t type for nft_xt reference count (Phil Sutter) [1757933] - [net] netfilter: nf_tables: fix suspicious RCU usage in nft_chain_stats_replace() (Phil Sutter) [1757933] - [net] netfilter: nf_tables: asynchronous release (Phil Sutter) [1757933] - [net] netfilter: nf_tables: split set destruction in deactivate and destroy phase (Phil Sutter) [1757933] - [net] netfilter: nf_tables: flow event notifier must use transaction mutex (Phil Sutter) [1757933] - [net] netfilter: nf_tables: use dedicated mutex to guard transactions (Phil Sutter) [1757933] - [net] netfilter: nf_tables: avoid global info storage (Phil Sutter) [1757933] - [net] netfilter: nf_tables: take module reference when starting a batch (Phil Sutter) [1757933] - [net] netfilter: nf_tables: make valid_genid callback mandatory (Phil Sutter) [1757933] - [net] netfilter: nf_tables: add and use helper for module autoload (Phil Sutter) [1757933]- [kernel] sched: Fix missing bracket in membarrier_switch_mm from mismerge (Phil Auld) [1745111] - [fs] nfs: fix NULL deference in nfs4_get_valid_delegation ("J. Bruce Fields") [1831553] - [acpi] PCI/AER: Use only _OSC to determine AER ownership (Myron Stowe) [1712820] - [pci] PCI/EDR: Log only ACPI_NOTIFY_DISCONNECT_RECOVER events (Myron Stowe) [1712820] - [pci] PCI/AER: Rationalize error status register clearing (Myron Stowe) [1712820] - [pci] PCI/DPC: Add Error Disconnect Recover (EDR) support (Myron Stowe) [1712820] - [pci] PCI/DPC: Expose dpc_process_error(), dpc_reset_link() for use by EDR (Myron Stowe) [1712820] - [pci] PCI/AER: Add pci_aer_raw_clear_status() to unconditionally clear Error Status (Myron Stowe) [1712820] - [pci] PCI/DPC: Cache DPC capabilities in pci_init_capabilities() (Myron Stowe) [1712820] - [pci] PCI/ERR: Return status of pcie_do_recovery() (Myron Stowe) [1712820] - [pci] PCI/ERR: Remove service dependency in pcie_do_recovery() (Myron Stowe) [1712820] - [pci] PCI/DPC: Move DPC data into struct pci_dev (Myron Stowe) [1712820] - [pci] PCI/ERR: Update error status after reset_link() (Myron Stowe) [1712820] - [pci] PCI/ERR: Combine pci_channel_io_frozen cases (Myron Stowe) [1712820] - [pci] PCI/ASPM: Reduce severity of common clock config message (Myron Stowe) [1712820] - [pci] PCI/ASPM: Clear the correct bits when enabling L1 substates (Myron Stowe) [1712820] - [pci] PCI/PM: Print config space of devices before suspend (Myron Stowe) [1712820] - [pci] PCI/AER: Initialize aer_fifo (Myron Stowe) [1712820] - [pci] PCI/AER: Factor message prefixes with dev_fmt() (Myron Stowe) [1712820] - [pci] PCI/AER: Log which device prevents error recovery (Myron Stowe) [1712820] - [security] ima: Switch to ima_hash_algo for boot aggregate (Jerry Snitselaar) [1786441] - [mm] mm: mempolicy: require at least one nodeid for MPOL_PREFERRED (Rafael Aquini) [1834435] {CVE-2020-11565} - [tools] perf maps: Add missing unlock to maps__insert() error case (Michael Petlan) [1818838] - [tools] perf dso: Fix dso comparison (Michael Petlan) [1818838] - [tools] perf block-info: Fix wrong block address comparison in block_info__cmp() (Michael Petlan) [1818838] - [tools] libperf: Setup initial evlist::all_cpus value (Michael Petlan) [1818838] - [tools] perf report: Fix no libunwind compiled warning break s390 issue (Michael Petlan) [1818838] - [tools] perf hists: Fix variable name's inconsistency in hists__for_each() macro (Michael Petlan) [1818838] - [tools] perf map: Set kmap->kmaps backpointer for main kernel map chunks (Michael Petlan) [1818838] - [tools] perf report: Fix incorrectly added dimensions as switch perf data file (Michael Petlan) [1818838] - [tools] tools lib traceevent: Fix memory leakage in filter_event (Michael Petlan) [1818838] - [tools] perf vendor events s390: Remove name from L1D_RO_EXCL_WRITES description (Michael Petlan) [1818838] - [tools] perf vendor events s390: Fix counter long description for DTLB1_GPAGE_WRITES (Michael Petlan) [1818838] - [tools] libtraceevent: Allow custom libdir path (Michael Petlan) [1818838] - [tools] perf top: Do not bail out when perf_env__read_cpuid() returns ENOSYS (Michael Petlan) [1818838] - [tools] perf arch: Make the default get_cpuid() return compatible error (Michael Petlan) [1818838] - [tools] perf inject: Fix processing of ID index for injected instruction tracing (Michael Petlan) [1818838] - [tools] perf report: Bail out --mem-mode if mem info is not available (Michael Petlan) [1818838] - [tools] perf report: Make -F more strict like -s (Michael Petlan) [1818838] - [tools] perf report/top TUI: Replace pr_err() with ui__error() (Michael Petlan) [1818838] - [tools] libtraceevent: Copy pkg-config file to output folder when using O= (Michael Petlan) [1818838] - [tools] libtraceevent: Fix lib installation with O= (Michael Petlan) [1818838] - [tools] perf kvm: Clarify the 'perf kvm' -i and -o command line options (Michael Petlan) [1818838] - [tools] perf machine: Fill map_symbol->maps in append_inlines() to fix segfault (Michael Petlan) [1818838] - [tools] perf jit: Move test functionality in to a test (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for enabling/disabling events (Michael Petlan) [1818838] - [tools] perf evsel: Add functions to enable/disable for a specific CPU (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for reading (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for opening events (Michael Petlan) [1818838] - [tools] perf stat: Factor out open error handling (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for closing file descriptors (Michael Petlan) [1818838] - [tools] perf evsel: Add functions to close evsel on a CPU (Michael Petlan) [1818838] - [tools] perf evsel: Add iterator to iterate over events ordered by CPU (Michael Petlan) [1818838] - [tools] perf evlist: Maintain evlist->all_cpus (Michael Petlan) [1818838] - [tools] perf cpumap: Maintain cpumaps ordered and without dups (Michael Petlan) [1818838] - [tools] perf script: Fix brstackinsn for AUXTRACE (Michael Petlan) [1818838] - [tools] perf affinity: Add infrastructure to save/restore affinity (Michael Petlan) [1818838] - [tools] perf pmu: Use file system cache to optimize sysfs access (Michael Petlan) [1818838] - [tools] perf regs: Make perf_reg_name() return "unknown" instead of NULL (Michael Petlan) [1818838] - [tools] perf diff: Use llabs() with 64-bit values (Michael Petlan) [1818838] - [tools] perf diff: Use llabs() with 64-bit values (Michael Petlan) [1818838] - [tools] perf tests: Rename tests/map_groups.c to tests/maps.c (Michael Petlan) [1818838] - [tools] perf tests: Rename thread-mg-share to thread-maps-share (Michael Petlan) [1818838] - [tools] perf maps: Rename map_groups.h to maps.h (Michael Petlan) [1818838] - [tools] perf maps: Rename 'mg' variables to 'maps' (Michael Petlan) [1818838] - [tools] perf map_symbol: Rename ms->mg to ms->maps (Michael Petlan) [1818838] - [tools] perf addr_location: Rename al->mg to al->maps (Michael Petlan) [1818838] - [tools] perf thread: Rename thread->mg to thread->maps (Michael Petlan) [1818838] - [tools] perf maps: Merge 'struct maps' with 'struct map_groups' (Michael Petlan) [1818838] - [tools] x86/insn: perf tools: Add some more instructions to the new instructions test (Michael Petlan) [1818838] - [tools] perf map: Remove unused functions (Michael Petlan) [1818838] - [tools] perf map: Remove needless struct forward declarations (Michael Petlan) [1818838] - [tools] perf map: Ditch leftover map__reloc_vmlinux() prototype (Michael Petlan) [1818838] - [tools] perf script: Move map__fprintf_srccode() to near its only user (Michael Petlan) [1818838] - [tools] perf parse: Fix potential memory leak when handling tracepoint errors (Michael Petlan) [1818838] - [tools] libtraceevent: Fix memory leakage in copy_filter_type (Michael Petlan) [1818838] - [tools] libtraceevent: Fix header installation (Michael Petlan) [1818838] - [tools] perf intel-bts: Does not support AUX area sampling (Michael Petlan) [1818838] - [tools] perf intel-pt: Add support for decoding AUX area samples (Michael Petlan) [1818838] - [tools] perf intel-pt: Add support for recording AUX area samples (Michael Petlan) [1818838] - [tools] perf pmu: When using default config, record which bits of config were changed by the user (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for queuing AUX area samples (Michael Petlan) [1818838] - [tools] perf session: Add facility to peek at all events (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for dumping AUX area samples (Michael Petlan) [1818838] - [tools] perf inject: Cut AUX area samples (Michael Petlan) [1818838] - [tools] perf record: Add aux-sample-size config term (Michael Petlan) [1818838] - [tools] perf record: Add support for AUX area sampling (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for AUX area sample recording (Michael Petlan) [1818838] - [tools] perf auxtrace: Move perf_evsel__find_pmu() (Michael Petlan) [1818838] - [tools] perf record: Add a function to test for kernel support for AUX area sampling (Michael Petlan) [1818838] - [tools] perf tools: Add kernel AUX area sampling definitions (Michael Petlan) [1818838] - [tools] perf report: Jump to symbol source view from total cycles view (Michael Petlan) [1818838] - [tools] perf util: Move block TUI function to ui browsers (Michael Petlan) [1818838] - [tools] perf dso: Move dso_id from 'struct map' to 'struct dso' (Michael Petlan) [1818838] - [tools] perf dsos: Remove unused dsos__find() method (Michael Petlan) [1818838] - [tools] perf map: Move comparision of map's dso_id to a separate function (Michael Petlan) [1818838] - [tools] perf map: Pass a dso_id to map__new() (Michael Petlan) [1818838] - [tools] perf map: Move maj/min/ino/ino_generation to separate struct (Michael Petlan) [1818838] - [tools] perf parse: Report initial event parsing error (Michael Petlan) [1818838] - [tools] x86/insn: perf tools: Add some instructions to the new instructions test (Michael Petlan) [1818838] - [tools] perf map: Move seldom used ->flags field to second cacheline (Michael Petlan) [1818838] - [tools] perf map: Use bitmap for booleans (Michael Petlan) [1818838] - [tools] libtraceevent: Fix parsing of event o and X argument types (Michael Petlan) [1818838] - [tools] perf callchain: Fix segfault in thread__resolve_callchain_sample() (Michael Petlan) [1818838] - [tools] perf map_groups: Auto sort maps by name, if needed (Michael Petlan) [1818838] - [tools] perf machine: No need to check if kernel module maps pre-exist (Michael Petlan) [1818838] - [tools] perf record: No need to process the synthesized MMAP events twice (Michael Petlan) [1818838] - [tools] perf map: No need to adjust the long name of modules (Michael Petlan) [1818838] - [tools] perf map_groups: Add a front end cache for map lookups by name (Michael Petlan) [1818838] - [tools] perf maps: Do not use an rbtree to sort by map name (Michael Petlan) [1818838] - [tools] perf maps: Purge the entries from maps->names in __maps__purge() (Michael Petlan) [1818838] - [tools] perf vendor events power9: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf vendor events power8: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf parse: Use YYABORT to clear stack after failure, plugging leaks (Michael Petlan) [1818838] - [tools] perf tool: Provide an option to print perf_event_open args and return value (Michael Petlan) [1818838] - [tools] perf map: Remove ->groups from 'struct map' (Michael Petlan) [1818838] - [tools] perf map: Combine maps__fixup_overlappings with its only use (Michael Petlan) [1818838] - [tools] perf annotate: Stop using map->groups, use map_symbol->mg instead (Michael Petlan) [1818838] - [tools] perf tools: Add a 'struct map_groups' pointer to 'struct map_symbol' (Michael Petlan) [1818838] - [tools] perf symbols: Use kmaps(map)->machine when we know its a kernel map (Michael Petlan) [1818838] - [tools] pref tools: Make 'struct addr_map_symbol' contain 'struct map_symbol' (Michael Petlan) [1818838] - [tools] perf callchain: Use 'struct map_symbol' in 'struct callchain_cursor_node' (Michael Petlan) [1818838] - [tools] perf unwind: Use 'struct map_symbol' in 'struct unwind_entry' (Michael Petlan) [1818838] - [tools] perf annotate: Pass a 'map_symbol' in places receiving a pair of 'map' and 'symbol' pointers (Michael Petlan) [1818838] - [tools] perf tools: Add map_groups to 'struct addr_location' (Michael Petlan) [1818838] - [tools] perf map_groups: Pass the object to map_groups__find_ams() (Michael Petlan) [1818838] - [tools] perf symbols: Stop using map->groups, we can use kmaps instead (Michael Petlan) [1818838] - [tools] perf map: Use map->dso->kernel + map__kmaps() in map__kmaps() (Michael Petlan) [1818838] - [tools] perf report: Sort by sampled cycles percent per block for tui (Michael Petlan) [1818838] - [tools] perf report: Support --percent-limit for --total-cycles (Michael Petlan) [1818838] - [tools] perf report: Sort by sampled cycles percent per block for stdio (Michael Petlan) [1818838] - [tools] perf hist: Support block formats with compare/sort/display (Michael Petlan) [1818838] - [tools] perf hist: Count the total cycles of all samples (Michael Petlan) [1818838] - [tools] perf block: Cleanup and refactor block info functions (Michael Petlan) [1818838] - [tools] perf diff: Don't use hack to skip column length calculation (Michael Petlan) [1818838] - [tools] perf tests: Fix out of bounds memory access (Michael Petlan) [1818838] - [tools] perf record: Add support for limit perf output file size (Michael Petlan) [1818838] - [tools] perf annotate: Fix heap overflow (Michael Petlan) [1818838] - [tools] perf machine: Add kernel_dso() method (Michael Petlan) [1818838] - [tools] perf symbols: Remove needless checks for map->groups->machine (Michael Petlan) [1818838] - [tools] perf parse: Add a deep delete for parse event terms (Michael Petlan) [1818838] - [tools] perf parse: If pmu configuration fails free terms (Michael Petlan) [1818838] - [tools] perf parse: Before yyabort-ing free components (Michael Petlan) [1818838] - [tools] perf parse: Add destructors for parse event terms (Michael Petlan) [1818838] - [tools] perf parse: Ensure config and str in terms are unique (Michael Petlan) [1818838] - [tools] perf parse: Add parse events handle error (Michael Petlan) [1818838] - [tools] perf inject: Make --strip keep evsels (Michael Petlan) [1818838] - [tools] perf tools: Fix cross compile for ARM64 (Michael Petlan) [1818838] - [tools] perf stat: Add --per-node agregation support (Michael Petlan) [1818838] - [tools] perf env: Add perf_env__numa_node() (Michael Petlan) [1818838] - [tools] perf tools: Splice events onto evlist even on error (Michael Petlan) [1818838] - [tools] libsubcmd: Use -O0 with DEBUG=1 (Michael Petlan) [1818838] - [tools] libsubcmd: Move EXTRA_FLAGS to the end to allow overriding existing flags (Michael Petlan) [1818838] - [tools] perf map_groups: Introduce for_each_entry() and for_each_entry_safe() iterators (Michael Petlan) [1818838] - [tools] perf maps: Add for_each_entry()/_safe() iterators (Michael Petlan) [1818838] - [tools] perf map: Allow map__next() to receive a NULL arg (Michael Petlan) [1818838] - [tools] perf map: Check if the map still has some refcounts on exit (Michael Petlan) [1818838] - [tools] perf dso: Add dso__data_write_cache_addr() (Michael Petlan) [1818838] - [tools] perf dso: Refactor dso_cache__read() (Michael Petlan) [1818838] - [tools] perf auxtrace: Add auxtrace_cache__remove() (Michael Petlan) [1818838] - [tools] perf jevents: Fix resource leak in process_mapfile() and main() (Michael Petlan) [1818838] - [tools] perf kvm: Use evlist layer api when possible (Michael Petlan) [1818838] - [tools] perf tests: Fix a typo (Michael Petlan) [1818838] - [tools] perf tools: Avoid a malloc() for array events (Michael Petlan) [1818838] - [tools] perf tools: Move ALLOC_LIST into a function (Michael Petlan) [1818838] - [tools] perf evsel: Avoid close(-1) (Michael Petlan) [1818838] - [tools] perf evsel: Always preserve errno while cleaning up perf_event_open failures (Michael Petlan) [1818838] - [tools] perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR (Michael Petlan) [1818838] - [tools] perf llvm: Make .o saving a debug message, not an info one (Michael Petlan) [1818838] - [tools] perf record: Put a copy of kcore into the perf.data directory (Michael Petlan) [1818838] - [tools] perf data: Support single perf.data file directory (Michael Petlan) [1818838] - [tools] perf session: Fix indent in perf_session__new()" (Michael Petlan) [1818838] - [tools] perf data: Rename directory "header" file to "data" (Michael Petlan) [1818838] - [tools] perf data: Move perf_dir_version into data.h (Michael Petlan) [1818838] - [tools] perf data: Correctly identify directory data files (Michael Petlan) [1818838] - [tools] perf trace: Use STUL_STRARRAY_FLAGS with mmap (Michael Petlan) [1818838] - [tools] perf trace: Wire up strarray__strtoul_flags() (Michael Petlan) [1818838] - [tools] libbeauty: Introduce strarray__strtoul_flags() (Michael Petlan) [1818838] - [tools] libbeauty: Make the mmap_flags strarray visible outside of its beautifier (Michael Petlan) [1818838] - [tools] perf trace: Use strtoul for the fcntl 'cmd' argument (Michael Petlan) [1818838] - [tools] libbeauty: Introduce syscall_arg__strtoul_strarrays() (Michael Petlan) [1818838] - [tools] libperf: Add pr_err() macro (Michael Petlan) [1818838] - [tools] libperf: Do not export perf_evsel__init()/perf_evlist__init() (Michael Petlan) [1818838] - [tools] libperf: Keep count of failed tests (Michael Petlan) [1818838] - [tools] libperf: Add tests_mmap_cpus test (Michael Petlan) [1818838] - [tools] libperf: Add tests_mmap_thread test (Michael Petlan) [1818838] - [tools] libperf: Link static tests with libapi.a (Michael Petlan) [1818838] - [tools] libperf: Move mask setup to perf_evlist__mmap_ops() (Michael Petlan) [1818838] - [tools] libperf: Move mmap allocation to perf_evlist__mmap_ops::get (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__for_each_mmap() (Michael Petlan) [1818838] - [tools] perf tests: Disable bp_signal testing for arm64 (Michael Petlan) [1818838] - [tools] perf tests bp_account: Add dedicated checking helper is_supported() (Michael Petlan) [1818838] - [tools] perf tests: Remove needless headers for bp_account (Michael Petlan) [1818838] - [tools] perf list: Hide deprecated events by default (Michael Petlan) [1818838] - [tools] perf trace: Pass a syscall_arg to syscall_arg_fmt->strtoul() (Michael Petlan) [1818838] - [tools] perf trace: Honour --max-events in processing syscalls:sys_enter_* (Michael Petlan) [1818838] - [tools] libbeauty: Introduce syscall_arg__strtoul_strarray() (Michael Petlan) [1818838] - [tools] perf trace: Initialize evsel_trace->fmt for syscalls:sys_enter_* tracepoints (Michael Petlan) [1818838] - [tools] perf trace: Introduce 'struct evsel__trace' for evsel->priv needs (Michael Petlan) [1818838] - [tools] perf trace: Hide evsel->access further, simplify code (Michael Petlan) [1818838] - [tools] perf trace: Introduce accessors to trace specific evsel->priv (Michael Petlan) [1818838] - [tools] perf trace: Show error message when not finding a field used in a filter expression (Michael Petlan) [1818838] - [tools] perf trace: Hook the 'vec' tracepoint argument with the x86 IRQ vectors scnprintf/strtoul (Michael Petlan) [1818838] - [tools] perf trace beauty: Add the glue for the autogenerated x86 IRQ vector array (Michael Petlan) [1818838] - [tools] libbeauty: Add a strarray__scnprintf_suffix() method (Michael Petlan) [1818838] - [tools] libbeauty: Hook up the x86 irq_vectors table generator (Michael Petlan) [1818838] - [tools] libbeauty: Add a generator for x86's IRQ vectors -> strings (Michael Petlan) [1818838] - [tools] tools arch x86: Grab a copy of the file containing the IRQ vector defines (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 HHA PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 L3C PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 DDRC PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Fix Hisi hip08 DDRC PMU eventname (Michael Petlan) [1818838] - [tools] perf trace: Support tracepoint dynamic char arrays (Michael Petlan) [1818838] - [tools] perf trace: Filter own pid to avoid a feedback look in 'perf trace record -a' (Michael Petlan) [1818838] - [tools] perf string: Export asprintf__tp_filter_pids() (Michael Petlan) [1818838] - [tools] perf trace: Introduce --errno-summary (Michael Petlan) [1818838] - [tools] perf trace: Add syscall failure stats to -s/--summary and -S/--with-summary (Michael Petlan) [1818838] - [tools] perf stat: Support --all-kernel/--all-user (Michael Petlan) [1818838] - [tools] perf annotate: Fix objdump --no-show-raw-insn flag (Michael Petlan) [1818838] - [tools] perf annotate: Don't pipe objdump output through 'expand' command (Michael Petlan) [1818838] - [tools] perf annotate: Don't pipe objdump output through 'grep' command (Michael Petlan) [1818838] - [tools] perf annotate: Use libsubcmd's run-command.h to fork objdump (Michael Petlan) [1818838] - [tools] perf annotate: Avoid reallocation in objdump parsing (Michael Petlan) [1818838] - [tools] perf report: Add warning when libunwind not compiled in (Michael Petlan) [1818838] - [tools] perf test: Avoid infinite loop for task exit case (Michael Petlan) [1818838] - [tools] perf test: Report failure for mmap events (Michael Petlan) [1818838] - [tools] perf script: Fix --reltime with --time (Michael Petlan) [1818838] - [tools] perf tools: Allow to build with -ltcmalloc (Michael Petlan) [1818838] - [tools] perf diff: Report noisy for cycles diff (Michael Petlan) [1818838] - [tools] perf tools: Propagate CFLAGS to libperf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_evlist__filter_pollfd() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__purge() (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__exit() (Michael Petlan) [1818838] - [tools] libperf: Move the pollfd allocation from tools/perf to libperf (Michael Petlan) [1818838] - [tools] libperf: Centralize map refcnt setting (Michael Petlan) [1818838] - [tools] perf evlist: Switch to libperf's mmap interface (Michael Petlan) [1818838] - [tools] perf evlist: Introduce perf_evlist__mmap_cb_mmap() (Michael Petlan) [1818838] - [tools] perf evlist: Introduce perf_evlist__mmap_cb_get() (Michael Petlan) [1818838] - [tools] perf tools: Introduce perf_evlist__mmap_cb_idx() (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist_mmap_ops::mmap callback (Michael Petlan) [1818838] - [tools] libperf: Add perf_evlist_mmap_ops::get callback (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist_mmap_ops::idx callback (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__mmap_ops() (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_evlist__mmap()/munmap() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_event() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_done() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_init() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__consume() function from tools/perf (Michael Petlan) [1818838] - [tools] perf tools: Use perf_mmap way to detect aux mmap (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__put() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__unmap() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__get() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__mmap() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__mmap_len() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Add 'struct perf_mmap_param' (Michael Petlan) [1818838] - [tools] libperf: Add perf_mmap__init() function (Michael Petlan) [1818838] - [tools] perf tools: Avoid 'sample_reg_masks' being const + weak (Michael Petlan) [1818838] - [tools] perf beauty: Introduce strtoul() for x86 MSRs (Michael Petlan) [1818838] - [tools] perf trace: Expand strings in filters to integers (Michael Petlan) [1818838] - [tools] perf trace: Introduce a strtoul() method for 'struct strarrays' (Michael Petlan) [1818838] - [tools] perf trace: Add a strtoul() method to 'struct syscall_arg_fmt' (Michael Petlan) [1818838] - [tools] perf trace: Introduce --filter for tracepoint events (Michael Petlan) [1818838] - [tools] perf evlist: Introduce append_tp_filter_pid() and append_tp_filter_pids() (Michael Petlan) [1818838] - [tools] perf evlist: Introduce append_tp_filter() method (Michael Petlan) [1818838] - [tools] perf evlist: Factor out asprintf routine to build a tracepoint pid filter (Michael Petlan) [1818838] - [tools] perf trace: Associate the "msr" tracepoint arg name with x86_MSR__scnprintf() (Michael Petlan) [1818838] - [tools] perf trace beauty: Add the glue for the autogenerated MSR arrays (Michael Petlan) [1818838] - [tools] perf trace: Allow associating scnprintf routines with well known arg names (Michael Petlan) [1818838] - [tools] perf beauty: Hook up the x86 MSR table generator (Michael Petlan) [1818838] - [tools] perf trace beauty: Add a x86 MSR cmd id->str table generator (Michael Petlan) [1818838] - [tools] perf beauty: Make strarray's offset be u64 (Michael Petlan) [1818838] - [tools] perf trace: Allow choosing how to augment the tracepoint arguments (Michael Petlan) [1818838] - [tools] perf trace: Enclose all events argument lists with () (Michael Petlan) [1818838] - [tools] perf trace: Add array of chars scnprintf beautifier (Michael Petlan) [1818838] - [tools] perf trace: Add the syscall_arg_fmt pointer to syscall_arg (Michael Petlan) [1818838] - [tools] perf trace: Move some scnprintf methods from syscall to syscall_arg_fmt (Michael Petlan) [1818838] - [tools] perf trace: Allocate an array of beautifiers for tracepoint args (Michael Petlan) [1818838] - [tools] perf trace: Factor out the initialization of syscal_arg_fmt->scnprintf (Michael Petlan) [1818838] - [tools] perf script: Allow --time with --reltime (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add Time chart by CPU (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add ability for Call tree to open at a specified task and time (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Tidy up Call tree call_time (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add global time range calculations (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add HBoxLayout and VBoxLayout (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add LookupModel() (Michael Petlan) [1818838] - [tools] perf trace augmented_syscalls: Do not show syscalls when none was asked for (Michael Petlan) [1818838] - [tools] perf trace: Postpone parsing .perfconfig trace.add_events to after --verbose is processed (Michael Petlan) [1818838] - [tools] perf trace: Generalize the syscall_fmt find routines (Michael Petlan) [1818838] - [tools] perf trace: Separate 'struct syscall_fmt' definition from syscall_fmts variable (Michael Petlan) [1818838] - [tools] perf trace: Make evlist__set_evsel_handler() affect just entries without a handler (Michael Petlan) [1818838] - [tools] perf evlist: Adopt __set_tracepoint_handlers method from perf_session (Michael Petlan) [1818838] - [tools] perf top: Initialize perf_env->cpuid, needed by the per arch annotation init routine (Michael Petlan) [1818838] - [tools] perf env: Add routine to read the env->cpuid from the running machine (Michael Petlan) [1818838] - [kernel] perf/cgroups: Install cgroup events to correct cpuctx (Michael Petlan) [1818838] - [kernel] perf/core: Fix mlock accounting in perf_mmap() (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Remove PCIe3 unit for SNR (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Fix missing marker for snr_uncore_imc_freerunning_events (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family (Michael Petlan) [1818838] - [kernel] perf: Correctly handle failed perf_get_aux_event() (Michael Petlan) [1818838] - [x86] perf/x86/intel: Fix PT PMI handling (Michael Petlan) [1818838] - [x86] perf/x86/intel/bts: Fix the use of page_private() (Michael Petlan) [1818838] - [x86] perf/x86: Fix potential out-of-bounds access (Michael Petlan) [1818838] - [x86] perf/x86: Implement immediate enforcement of /sys/devices/cpu/rdpmc value of 0 (Michael Petlan) [1818838] - [kernel] perf/core: Make the mlock accounting simple again (Michael Petlan) [1818838] - [kernel] perf/core: Fix the mlock accounting, again (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Prevent redundant WRMSRs (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Opportunistically use single range output mode (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Add sampling support (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Factor out pt_config_start() (Michael Petlan) [1818838] - [kernel] perf/aux: Allow using AUX data in perf samples (Michael Petlan) [1818838] - [kernel] perf/core: Fix unlock balance in perf_init_event() (Michael Petlan) [1818838] - [x86] perf/x86/amd: Remove set but not used variable 'active' (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_init_event() for TYPE_SOFTWARE (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_init_event() (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_install_in_event() (Michael Petlan) [1818838] - [x86] perf/x86: Synchronize PMU task contexts on optimized context switches (Michael Petlan) [1818838] - [x86] perf/x86/intel: Implement LBR callstack context synchronization (Michael Petlan) [1818838] - [x86] perf/x86: Install platform specific ->swap_task_ctx() adapter (Michael Petlan) [1818838] - [x86] perf/core, perf/x86: Introduce swap_task_ctx() method at 'struct pmu' (Michael Petlan) [1818838] - [kernel] perf/ring_buffer: Matching the memory allocate and free, in rb_alloc() (Michael Petlan) [1818838] - [kernel] perf/ring_buffer: Modify the parameter type of perf_mmap_free_page() (Michael Petlan) [1818838] - [documentation] Documentation: Document sysfs interfaces purr, spurr, idle_purr, idle_spurr (Steve Best) [1783286] - [powerpc] powerpc/sysfs: Show idle_purr and idle_spurr for every CPU (Steve Best) [1783286] - [powerpc] powerpc/pseries: Account for SPURR ticks on idle CPUs (Steve Best) [1783286] - [powerpc] powerpc/idle: Store PURR snapshot in a per-cpu global variable (Steve Best) [1783286] - [powerpc] powerpc: Move idle_loop_prolog()/epilog() functions to header file (Steve Best) [1783286] - [kernel] padata: add separate cpuhp node for CPUHP_PADATA_DEAD (Herbert Xu) [1671674] - [kernel] padata: fix uninitialized return value in padata_replace() (Herbert Xu) [1671674] - [kernel] padata: remove reorder_objects (Herbert Xu) [1671674] - [crypto] padata: remove cpumask change notifier (Herbert Xu) [1671674] - [kernel] padata: always acquire cpu_hotplug_lock before pinst->lock (Herbert Xu) [1671674] - [kernel] padata: validate cpumask without removed CPU during offline (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - Avoid deadlock by using per-instance padata queues (Herbert Xu) [1671674] - [kernel] padata: Remove unused padata_remove_cpu (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - Fix user-after-free on module unload (Herbert Xu) [1671674] - [kernel] padata: Remove broken queue flushing (Herbert Xu) [1671674] - [kernel] padata: remove cpu_index from the parallel_queue (Herbert Xu) [1671674] - [kernel] padata: unbind parallel jobs from specific CPUs (Herbert Xu) [1671674] - [kernel] padata: use separate workqueues for parallel and serial work (Herbert Xu) [1671674] - [crypto] padata, pcrypt: take CPU hotplug lock internally in padata_alloc_possible (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - remove padata cpumask notifier (Herbert Xu) [1671674] - [crypto] padata: make padata_do_parallel find alternate callback CPU (Herbert Xu) [1671674] - [kernel] workqueue: require CPU hotplug read exclusion for apply_workqueue_attrs (Herbert Xu) [1671674] - [kernel] workqueue: unconfine alloc/apply/free_workqueue_attrs() (Herbert Xu) [1671674] - [crypto] padata: allocate workqueue internally (Herbert Xu) [1671674] - [kernel] padata: initialize pd->cpu with effective cpumask (Herbert Xu) [1671674] - [kernel] padata: purge get_cpu and reorder_via_wq from padata_do_serial (Herbert Xu) [1671674] - [kernel] padata: Replace delayed timer with immediate workqueue in padata_reorder (Herbert Xu) [1671674] - [kernel] padata: use smp_mb in padata_reorder to avoid orphaned padata jobs (Herbert Xu) [1671674] - [kernel] tracing: Avoid memory leak in process_system_preds() (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Have error path in predicate_parse() free its allocated memory (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Avoid memory leak in predicate_parse() (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Fix memory leak in create_filter() (Jerome Marchand) [1829953] {CVE-2019-19072} - [tools] KVM: selftests: s390x: Provide additional num-guest-pages adjustment (Philipp Rudo) [1792266] - [s390] s390/protvirt: fix compilation issue (Philipp Rudo) [1792266] - [kvm] KVM: s390: Fix PV check in deliverable_irqs() (Philipp Rudo) [1792266] - [kvm] KVM: s390: Return last valid slot if approx index is out-of-bounds (Philipp Rudo) [1792266] - [kvm] KVM: s390: vsie: Fix delivery of addressing exceptions (Philipp Rudo) [1792266] - [mm] s390/gmap: return proper error code on ksm unsharing (Philipp Rudo) [1792266] - [s390] KVM: s390: mark sie block as 512 byte aligned (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: check for registers to NOT change on reset (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: test more register variants for the reset ioctl (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: fix early guest crash (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: fixup fprintf format error in reset.c (Philipp Rudo) [1792266] - [kvm] KVM: s390: Also reset registers in sync regs for initial cpu reset (Philipp Rudo) [1792266] - [kvm] KVM: s390: introduce module parameter kvm.use_gisa (Philipp Rudo) [1792266] - [documentation] KVM: s390: protvirt: Add KVM api documentation (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED (Philipp Rudo) [1792266] - [documentation] DOCUMENTATION: Protected virtual machine introduction and IPL (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add UV cpu reset calls (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: do not inject interrupts after start (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Support cmd 5 operation state (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Report CPU state to Ultravisor (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: UV calls in support of diag308 0, 1 (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add program exception injection (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Only sync fmt4 registers (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Do only reset registers that are accessible (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: disallow one_reg (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: STSI handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Write sthyi data to instruction data area (Philipp Rudo) [1792266] - [kvm] KVM: s390/mm: handle guest unpin events (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: handle secure guest prefix pages (Philipp Rudo) [1792266] - [kvm] KVM: S390: protvirt: Introduce instruction data area bounce buffer (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add new gprs location handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Handle spec exception loops (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add SCLP interrupt handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Implement interrupt injection (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Instruction emulation (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Handle SE notification interceptions (Philipp Rudo) [1792266] - [mm] KVM: s390/mm: Make pages accessible before destroying the guest (Philipp Rudo) [1792266] - [mm] KVM: s390: protvirt: Secure memory is not mergeable (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add initial vm and cpu lifecycle handling (Philipp Rudo) [1792266] - [s390] KVM: s390: add new variants of UV CALL (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add UV debug trace (Philipp Rudo) [1792266] - [kvm] KVM: s390/interrupt: do not pin adapter interrupt pages (Philipp Rudo) [1792266] - [s390] s390/protvirt: Add sysfs firmware interface for Ultravisor information (Philipp Rudo) [1792266] - [s390] s390/mm: add (non)secure page access exceptions handlers (Philipp Rudo) [1792266] - [s390] s390/mm: provide memory management functions for protected KVM guests (Philipp Rudo) [1792266] - [s390] s390/protvirt: add ultravisor initialization (Philipp Rudo) [1792266] - [s390] s390/protvirt: introduce host side setup (Philipp Rudo) [1792266] - [documentation] KVM: s390: rstify new ioctls in api.rst (Philipp Rudo) [1792266] - [s390] s390/uv: Fix handling of length extensions (Philipp Rudo) [1792266] - [tools] selftests: KVM: testing the local IRQs resets (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390x: Add reset tests (Philipp Rudo) [1792266] - [kvm] KVM: s390: Add new reset vcpu API (Philipp Rudo) [1792266] - [kvm] KVM: s390: Cleanup initial cpu reset (Philipp Rudo) [1792266] - [kvm] KVM: s390: do not clobber registers during guest reset/store status (Philipp Rudo) [1792266] - [kvm] KVM: s390: ENOTSUPP -> EOPNOTSUPP fixups (Philipp Rudo) [1792266] - [s390] s390/uv: use EOPNOTSUPP instead of ENOTSUPP (Philipp Rudo) [1792266] - [kvm] KVM: s390: Do not yield when target is already running (Philipp Rudo) [1792266] - [kvm] KVM: s390: count invalid yields (Philipp Rudo) [1792266] - [kvm] KVM: s390: mark __insn32_query() as __always_inline (Philipp Rudo) [1792266] - [kvm] KVM: s390: fix __insn32_query() inline assembly (Philipp Rudo) [1792266] - [kvm] KVM: s390: Cleanup kvm_arch_init error path (Philipp Rudo) [1792266] - [kvm] KVM: s390: Remove unused parameter from __inject_sigp_restart() (Philipp Rudo) [1792266] - [mm] mm/gup/writeback: add callbacks for inaccessible pages (Philipp Rudo) [1792266] - [scsi] scsi: libiscsi: fall back to sendmsg for slab pages (Maurizio Lombardi) [1825775] - [fs] smb3: fix default permissions on new files when mounting with modefromsid (Leif Sahlberg) [1833374] - [fs] gfs2: don't call quota_unhold if quotas are not locked (Robert S Peterson) [1830043] - [fs] gfs2: move privileged user check to gfs2_quota_lock_check (Robert S Peterson) [1830043] - [fs] gfs2: remove check for quotas on in gfs2_quota_check (Robert S Peterson) [1830043] - [fs] gfs2: Change BUG_ON to an assert_withdraw in gfs2_quota_change (Robert S Peterson) [1830043] - [fs] gfs2: Fix problems regarding gfs2_qa_get and _put (Robert S Peterson) [1830043] - [powerpc] powerpc/eeh: Fix deadlock handling dead PHB (Sam Bobroff) [1774820] - [powerpc] powerpc/powernv/eeh: Fix oops when probing cxl devices (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Slightly simplify eeh_add_to_parent_pe() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Remove unused return path from eeh_pe_dev_traverse() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Fix crash when edev->pdev changes (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Convert log messages to eeh_edev_* macros (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Introduce EEH edev logging macros (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Add bdfn field to eeh_dev (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Refactor around eeh_probe_devices() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: EEH for pSeries hot plug (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Initialize EEH address cache earlier (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Improve debug messages around device addition (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Clear stale EEH_DEV_NO_HANDLER flag (Sam Bobroff) [1774820] - [powerpc] powerpc/64: Adjust order in pcibios_init() (Sam Bobroff) [1774820] - [powerpc] powerpc/pci: Add pci_find_controller_for_domain() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh_cache: Bump log level of eeh_addr_cache_print() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh_cache: Add pr_debug() prints for insert/remove (Sam Bobroff) [1774820]- [gpio] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 CHT + AXP288 model (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 BYT + AXP288 model (David Arcari) [1829900] - [gpio] gpiolib: acpi: Rework honor_wakeup option into an ignore_wake option (David Arcari) [1829900] - [gpio] gpiolib: acpi: Correct comment for HP x2 10 honor_wakeup quirk (David Arcari) [1829900] - [gpio] gpiolib: Fix irq_disable() semantics (David Arcari) [1829900] - [gpio] gpiolib: fix gpio_do_set_config() (David Arcari) [1829900] - [gpio] gpiolib: remove unnecessary argument from set_config call (David Arcari) [1829900] - [gpio] Revert "gpiolib: remove set but not used variable 'config'" (David Arcari) [1829900] - [gpio] Revert "gpiolib: Remove duplicated function gpio_do_set_config()" (David Arcari) [1829900] - [gpio] treewide: remove redundant IS_ERR() before error code check (David Arcari) [1829900] - [gpio] gpiolib: hold gpio devices lock until ->descs array is initialised (David Arcari) [1829900] - [gpio] gpio: Drop the chained IRQ handler assign function (David Arcari) [1829900] - [gpio] gpio: xlp: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [pinctrl] pinctrl: qcom: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [pinctrl] pinctrl: iproc: allow for error from platform_get_irq() (David Arcari) [1829900] - [pinctrl] pinctrl: bcm-iproc: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [gpio] gpio: pl061: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [gpio] gpio: pl061: Move irq_chip definition inside struct pl061 (David Arcari) [1829900] - [gpio] gpiolib: Lower verbosity when allocating hierarchy irq (David Arcari) [1829900] - [gpio] gpiolib: Remove duplicated function gpio_do_set_config() (David Arcari) [1829900] - [include] gpio: Fix the no return statement warning (David Arcari) [1829900] - [gpio] gpiolib: remove set but not used variable 'config' (David Arcari) [1829900] - [gpio] gpiolib: Set lockdep class for hierarchical irq domains (David Arcari) [1829900] - [gpio] gpiolib: Add the support for the msi parent domain (David Arcari) [1829900] - [gpio] gpiolib: Add support for the irqdomain which doesn't use irq_fwspec as arg (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in gpio_ioctl() (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in lineevent_create() (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in linehandle_create() (David Arcari) [1829900] - [gpio] gpiolib: convert the type of hwnum to unsigned int in gpiochip_get_desc() (David Arcari) [1829900] - [gpio] gpiolib: have a single place of calling set_config() (David Arcari) [1829900] - [gpio] gpiolib: use 'unsigned int' instead of 'unsigned' in gpio_set_config() (David Arcari) [1829900] - [gpio] gpio: gpiolib: fix confusing indention (David Arcari) [1829900] - [mmc] mmc: core: Rework cd-gpio handling (David Arcari) [1829900] - [mmc] mmc: core: Rework wp-gpio handling (David Arcari) [1829900] - [gpio] gpio: add gpiod_toggle_active_low() (David Arcari) [1829900] - [gpio] gpiolib: Make use of assign_bit() API (David Arcari) [1829900] - [gpio] gpiolib: Add GPIOCHIP_NAME definition (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add honor_wakeup module-option + quirk mechanism (David Arcari) [1829900] - [gpio] gpiolib: acpi: Turn dmi_system_id table into a generic quirk table (David Arcari) [1829900] - [gpio] gpiolib: fix up emulated open drain outputs (David Arcari) [1829900] - [gpio] gpio: Fix error message on out-of-range GPIO in lookup table (David Arcari) [1829900] - [gpio] gpiolib: of: Make of_gpio_spi_cs_get_count static (David Arcari) [1829900] - [gpio] gpio: Handle counting of Freescale chipselects (David Arcari) [1829900] - [gpio] gpio: of: Fix bogus reference to gpiod_get_count() (David Arcari) [1829900] - [gpio] gpiolib: Grammar s/manager/managed/ (David Arcari) [1829900] - [gpio] gpiolib: acpi: Make acpi_gpiochip_alloc_event always return AE_OK (David Arcari) [1829900] - [gpio] gpiolib: acpi: Print pin number on acpi_gpiochip_alloc_event errors (David Arcari) [1829900] - [gpio] gpiolib: fix coding style in gpiod_hog() (David Arcari) [1829900] - [gpio] gpio: add new SET_CONFIG ioctl() to gpio chardev (David Arcari) [1829900] - [gpio] gpiolib: move validation of line handle flags into helper function (David Arcari) [1829900] - [gpio] gpiolib: add support for biasing output lines (David Arcari) [1829900] - [gpio] gpiolib: add support for disabling line bias (David Arcari) [1829900] - [gpio] gpiolib: add support for pull up/down to lineevent_create (David Arcari) [1829900] - [gpio] gpio: expose pull-up/pull-down line flags to userspace (David Arcari) [1829900] - [gpio] Revert "gpio: expose pull-up/pull-down line flags to userspace" (David Arcari) [1829900] - [gpio] gpiolib: No need to call gpiochip_remove_pin_ranges() twice (David Arcari) [1829900] - [include] gpio: Add definition for GPIO direction (David Arcari) [1829900] - [gpio] gpiolib: Switch order of valid mask and hw init (David Arcari) [1829900] - [gpio] gpio: of: don't warn if ignored GPIO flag matches the behavior (David Arcari) [1829900] - [gpio] gpio: fix kernel-doc for of_gpio_need_valid_mask() (David Arcari) [1829900] - [gpio] gpio: expose pull-up/pull-down line flags to userspace (David Arcari) [1829900] - [gpio] gpiolib: introduce fwnode_gpiod_get_index() (David Arcari) [1829900] - [gpio] gpiolib: introduce devm_fwnode_gpiod_get_index() (David Arcari) [1829900] - [gpio] gpiolib: sanitize flags before allocating memory in lineevent_create() (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add Terra Pad 1061 to the run_edge_events_on_boot_blacklist (David Arcari) [1829900] - [gpio] gpio: fix getting nonexclusive gpiods from DT (David Arcari) [1829900] - [gpio] gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source (David Arcari) [1829900] - [gpio] gpiolib: of: add a fallback for wlf, reset GPIO name (David Arcari) [1829900] - [gpio] gpio: remove explicit comparison with 0 (David Arcari) [1829900] - [gpio] gpio: devres: Switch to EXPORT_SYMBOL_GPL() (David Arcari) [1829900] - [gpio] gpio: of: Switch to EXPORT_SYMBOL_GPL() (David Arcari) [1829900] - [gpio] gpio: of: Make of_gpio_simple_xlate() private (David Arcari) [1829900] - [gpio] gpio: of: Make of_get_named_gpiod_flags() private (David Arcari) [1829900] - [gpio] gpiolib: acpi: make acpi_can_fallback_to_crs() static (David Arcari) [1829900] - [gpio] gpio: of: Normalize return code variable name (David Arcari) [1829900] - [gpio] gpio: gpiolib: Normalize return code variable name (David Arcari) [1829900] - [include] gpio: Move gpiochip_lock/unlock_as_irq to gpio/driver.h (David Arcari) [1829900] - [gpio] gpio: Use callback presence to determine need of valid_mask (David Arcari) [1829900] - [gpio] gpio: Pass mask and size with the init_valid_mask() (David Arcari) [1829900] - [pinctrl] pinctrl: msm: Add ability for drivers to supply a reserved GPIO list (David Arcari) [1829900] - [pinctrl] pinctrl: msm: Use init_valid_mask exported function (David Arcari) [1829900] - [include] gpio: stubs in headers should be inline (David Arcari) [1829900] - [gpio] gpio: Add support for hierarchical IRQ domains (David Arcari) [1829900] - [kernel] genirq: introduce irq_domain_translate_twocell (David Arcari) [1829900] - [gpio] gpio: refactor gpiochip_allocate_mask() with bitmap_alloc() (David Arcari) [1829900] - [gpio] gpio: of: Fix hard-assigned valid_mask for OF case (David Arcari) [1829900] - [sound] gpiolib-acpi: Move acpi_dev_add_driver_gpios() et al to consumer.h (David Arcari) [1829900] - [gpio] gpiolib: acpi: Split ACPI stuff to gpiolib-acpi.h (David Arcari) [1829900] - [include] gpiolib: of: Reshuffle contents of consumer.h for new library layout (David Arcari) [1829900] - [include] pinctrl: remove unneeded #ifdef around declarations (David Arcari) [1829900] - [hwmon] hwmon: pmbus: ucd9000: remove unneeded include (David Arcari) [1829900] - [include] gpio: remove less important #ifdef around declarations (David Arcari) [1829900] - [gpio] gpio: of: Break out OF-only code (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add gpiolib_acpi_run_edge_events_on_boot option and blacklist (David Arcari) [1829900] - [gpio] gpiolib: of: fix fallback quirks handling (David Arcari) [1829900] - [gpio] gpio: fix line flag validation in lineevent_create (David Arcari) [1829900] - [gpio] gpio: fix line flag validation in linehandle_create (David Arcari) [1829900] - [gpio] gpio: Fix irqchip initialization order (David Arcari) [1829900] - [gpio] gpio: of: fix Freescale SPI CS quirk handling (David Arcari) [1829900] - [gpio] gpiolib: never report open-drain/source lines as 'input' to user-space (David Arcari) [1829900] - [include] gpio: Fix build error of function redefinition (David Arcari) [1829900] - [gpio] gpiolib: Preserve desc->flags when setting state (David Arcari) [1829900] - [include] gpio: don't WARN() on NULL descs if gpiolib is disabled (David Arcari) [1829900] - [gpio] gpiolib: fix incorrect IRQ requesting of an active-low lineevent (David Arcari) [1829900] - [gpio] Revert "gpio/spi: Fix spi-gpio regression on active high CS" (David Arcari) [1829900] - [gpio] gpiolib: of: fix a memory leak in of_gpio_flags_quirks() (David Arcari) [1829900] - [gpio] gpiolib: Use spinlock_t instead of struct spinlock (David Arcari) [1829900] - [gpio] gpiolib: Clarify use of non-sleeping functions (David Arcari) [1829900] - [gpio] gpiolib: Fix references to gpiod_et_*value_cansleep() variants (David Arcari) [1829900] - [include] gpiolib: Document new gpio_chip.init_valid_mask field (David Arcari) [1829900] - [gpio] gpio/spi: Fix spi-gpio regression on active high CS (David Arcari) [1829900] - [gpio] gpio: No need to cast away return value of debugfs_create_file() (David Arcari) [1829900] - [include] gpio: Add comments on #if/#else/#endif (David Arcari) [1829900] - [regulator] gpio: Fix return value mismatch of function gpiod_get_from_of_node() (David Arcari) [1829900] - [gpio] gpio: Drop the parent_irq from gpio_irq_chip (David Arcari) [1829900] - [gpio] gpio: of: parse stmmac PHY reset line specific active-low property (David Arcari) [1829900] - [gpio] gpio: pass lookup and descriptor flags to request_own (David Arcari) [1829900] - [gpio] gpio: of: Handle the Freescale SPI CS (David Arcari) [1829900] - [gpio] gpio: Fix gpiochip_add_data_with_key() error path (David Arcari) [1829900] - [gpio] gpiolib: acpi: Respect pin bias setting (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add acpi_gpio_update_gpiod_lookup_flags() helper (David Arcari) [1829900] - [gpio] gpiolib: acpi: Set pin value, based on bias, more accurately (David Arcari) [1829900] - [gpio] gpiolib: acpi: Change type of dflags (David Arcari) [1829900] - [gpio] gpiolib: Introduce GPIO_LOOKUP_FLAGS_DEFAULT (David Arcari) [1829900] - [gpio] gpiolib: Make use of enum gpio_lookup_flags consistent (David Arcari) [1829900] - [include] gpiolib: Indent entry values of enum gpio_lookup_flags (David Arcari) [1829900] - [gpio] gpio: of: Optimize quirk checks (David Arcari) [1829900] - [gpio] gpio: mmio: Drop bgpio_dir_inverted (David Arcari) [1829900] - [gpio] gpio: Set proper argument value to set_config (David Arcari) [1829900] - [gpio] gpio: Remove obsolete comment about gpiochip_free_hogs() usage (David Arcari) [1829900] - [gpio] gpio: mmio: Fix bgpio_get_set & bgpio_get_set_multiple (David Arcari) [1829900] - [gpio] gpio: mmio: Support two direction registers (David Arcari) [1829900] - [gpio] gpiolib: Don't WARN on gpiod_put() for optional GPIO (David Arcari) [1829900] - [gpio] gpiolib: acpi: Fix references in kernel doc and amend (David Arcari) [1829900] - [gpio] gpio: of: Fix of_gpiochip_add() error path (David Arcari) [1829900] - [gpio] gpio: of: Check for "spi-cs-high" in child instead of parent node (David Arcari) [1829900] - [gpio] gpio: of: Check propname before applying "cs-gpios" quirks (David Arcari) [1829900] - [gpio] Revert "gpio: use new gpio_set_config() helper in more places" (David Arcari) [1829900] - [gpio] gpio: of: Handle both enable-gpio{,s} (David Arcari) [1829900] - [gpio] gpio: of: Restrict enable-gpio quirk to regulator-gpio (David Arcari) [1829900] - [gpio] gpio: of: Apply regulator-gpio quirk only to enable-gpios (David Arcari) [1829900] - [gpio] gpio: add core support for pull-up/pull-down configuration (David Arcari) [1829900] - [gpio] gpio: use new gpio_set_config() helper in more places (David Arcari) [1829900] - [gpio] gpio: rename gpio_set_drive_single_ended() to gpio_set_config() (David Arcari) [1829900] - [gpio] gpiolib: acpi: Correct kernel doc of struct acpi_gpio_event (David Arcari) [1829900] - [gpio] gpio: of: Fix logic inversion (David Arcari) [1829900] - [gpio] gpio: add irq domain activate/deactivate functions (David Arcari) [1829900] - [gpio] gpiolib: fix line event timestamps for nested irqs (David Arcari) [1829900] - [gpio] gpiolib-acpi: Preserve non direction flags when updating gpiod_flags (David Arcari) [1829900] - [gpio] gpiolib-acpi: Remove unnecessary WARN_ON from acpi_gpiochip_free_interrupts (David Arcari) [1829900] - [gpio] gpiolib-acpi: remove unused variable 'err', cleans up build warning (David Arcari) [1829900] - [mmc] mmc: core: don't override the CD GPIO level when "cd-inverted" is set (David Arcari) [1829900] - [arm64] arm64: dts: meson: Fix mmc cd-gpios polarity (David Arcari) [1829900] - [gpio] gpio/mmc/of: Respect polarity in the device tree (David Arcari) [1829900] - [include] gpiolib: Fix return value of gpio_to_desc() stub if !GPIOLIB (David Arcari) [1829900] - [documentation] Documentation: gpio: fix function links in the HTML docs (David Arcari) [1829900] - [documentation] docs: driver-model: convert docs to ReST and rename to *.rst (David Arcari) [1829900] - [documentation] docs: gpio: driver.rst: fix a bad tag (David Arcari) [1829900] - [documentation] gpio: Fix minor grammar errors in documentation (David Arcari) [1829900] - [documentation] gpio: Update documentation (David Arcari) [1829900] - [gpio] gpio: Pass a flag to gpiochip_request_own_desc() (David Arcari) [1829900] - [gpio] gpio: Add devm_gpiod_unhinge() (David Arcari) [1829900] - [gpio] gpio: devres: Handle nonexclusive GPIOs (David Arcari) [1829900] - [gpio] gpio: Enable nonexclusive gpiods from DT nodes (David Arcari) [1829900] - [gpio] gpiolib-acpi: Only defer request_irq for GpioInt ACPI event handlers (David Arcari) [1829900] - [gpio] gpio: OF: Parse MMC-specific CD and WP properties (David Arcari) [1829900] - [gpio] gpio: restore original GPLv2+ license of gpiolib-of.c sources (David Arcari) [1829900] - [include] gpio: drop broken to_gpio_irq_chip() helper (David Arcari) [1829900] - [gpio] gpio: drop devm_gpio_chip_match() (David Arcari) [1829900] - [gpio] gpio: don't free unallocated ida on gpiochip_add_data_with_key() error path (David Arcari) [1829900] - [gpio] gpiolib: Fix possible use after free on label (David Arcari) [1829900] - [documentation] Documentation: gpio: driver: fix wire name for I2C (David Arcari) [1829900] - [documentation] gpio/driver.rst: document gpiochip_disable/enable_irq() (David Arcari) [1829900] - [gpio] gpio: drop devm_gpiochip_remove() (David Arcari) [1829900] - [gpio] gpio: Clarify kerneldoc on gpiochip_set_chained_irqchip() (David Arcari) [1829900] - [gpio] gpio: Remove unused 'irqchip' argument to gpiochip_set_cascaded_irqchip() (David Arcari) [1829900] - [gpio] gpio: Drop parent irq assignment during cascade setup (David Arcari) [1829900] - [gpio] gpiolib: Initialize gdev field before is used (David Arcari) [1829900] - [gpio] gpio: Assign gpio_irq_chip::parents to non-stack pointer (David Arcari) [1829900] - [gpio] gpio: fix doc string for devm_gpiochip_add_data() to not talk about irq_chip (David Arcari) [1829900] - [gpio] gpio: mockup: fix indicated direction (David Arcari) [1829900] - [gpio] gpiolib: Show correct direction from the beginning (David Arcari) [1829900] - [gpio] gpiolib: Add init_valid_mask exported function (David Arcari) [1829900] - [gpio] gpio: Slightly more helpful debugfs (David Arcari) [1829900] - [gpio] Accept partial 'gpio-line-names' property (David Arcari) [1829900] - [gpio] gpio: Restore indentation of continued lines (David Arcari) [1829900] - [gpio] gpio: Propagate errors from gpiod_set_array_value_complex() (David Arcari) [1829900] - [gpio] gpiolib: Fix incorrect use of find_next_zero_bit() (David Arcari) [1829900] - [gpio] gpiolib: Fix missing updates of bitmap index (David Arcari) [1829900] - [gpio] gpio: Add comments on single direction chips (David Arcari) [1829900] - [gpio] gpiolib: Fix gpio_direction_* for single direction GPIOs (David Arcari) [1829900] - [gpio] gpio: Rename devres implementation file (David Arcari) [1829900] - [gpio] gpio: Use SPDX header for core library (David Arcari) [1829900] - [gpio] gpiolib: Fix array members of same chip processed separately (David Arcari) [1829900] - [gpio] gpiolib: Free the last requested descriptor (David Arcari) [1829900] - [gpio] gpio: Get rid of legacy header (David Arcari) [1829900] - [gpio] gpiolib: check if irqchip already has the irq hook replacements (David Arcari) [1829900] - [gpio] gpiolib: use better errno if get_direction is not available (David Arcari) [1829900] - [documentation] gpiolib: Implement fast processing path in get/set array (David Arcari) [1829900] - [documentation] Documentation: gpio: Fix reference to gpiod_get_array() (David Arcari) [1829900] - [gpio] gpiolib: Pass array info to get/set array functions (David Arcari) [1829900] - [gpio] gpiolib: Identify arrays matching GPIO hardware (David Arcari) [1829900] - [gpio] gpiolib: Pass bitmaps, not integer arrays, to get/set array (David Arcari) [1829900] - [gpio] gpiolib: Don't support irq sharing for userspace (David Arcari) [1829900] - [gpio] gpio: of: Handle SPI chipselect legacy bindings (David Arcari) [1829900] - [gpio] gpiolib: override irq_enable/disable (David Arcari) [1829900] - [gpio] gpiolib: add flag to indicate if the irq is disabled (David Arcari) [1829900] - [gpio] gliolib: set hooks in gpiochip_set_irq_hooks() (David Arcari) [1829900] - [gpio] gpiolib: export gpiochip_irq_reqres/relres() (David Arcari) [1829900] - [include] gpio: fix kernel-doc notation warning for 'request_key' (David Arcari) [1829900] - [gpio] gpio: Fix crash due to registration race (David Arcari) [1829900] - [gpio] gpio: Convert to using pOFn instead of device_node.name (David Arcari) [1829900] - [gpio] gpiolib-acpi: Register GpioInt ACPI event handlers from a late_initcall (David Arcari) [1829900] - [gpio] gpiolib: acpi: Switch to cansleep version of GPIO library call (David Arcari) [1829900] - [gpio] gpiolib: Avoid calling chip->request() for unused gpios (David Arcari) [1829900] - [gpio] gpio: mmio: Fix up inverted direction registers (David Arcari) [1829900] - [gpio] gpiolib: Fix of_node inconsistency (David Arcari) [1829900] - [gpio] gpiolib: Don't shadow error code of gpiochip_lock_as_irq() (David Arcari) [1829900] - [include] gpiolib: Use GPIOD_OUT_{LOW, HIGH} macros in open drain ones (David Arcari) [1829900] - [gpio] gpiolib: probe deferral error reporting (David Arcari) [1829900] - [include] Input: gpio_keys - add missing include to gpio_keys.h (David Arcari) [1829900] - [gpio] gpiolib: remove an unnecessary TODO (David Arcari) [1829900] - [gpio] gpiolib: don't allow userspace to set values of input lines (David Arcari) [1829900] - [gpio] gpiolib: Join one line back for better readability (David Arcari) [1829900] - [gpio] gpiolib: Consistent use of ->get_direction() inside gpiolib (David Arcari) [1829900] - [gpio] gpiolib: Defer on non-DT find_chip_by_name() failure (David Arcari) [1829900] - [gpio] gpiolib: Respect error code of ->get_direction() (David Arcari) [1829900] - [gpio] gpiolib: Join string literals back (David Arcari) [1829900] - [include] gpio.h: fix location of gpio legacy documentation (David Arcari) [1829900] - [fs] gfs2: Fix use-after-free in gfs2_logd after withdraw (Robert S Peterson) [1831695] - [fs] gfs2: Fix BUG during unmount after file system withdraw (Robert S Peterson) [1831695] - [fs] gfs2: Fix error exit in do_xmote (Robert S Peterson) [1831695] - [fs] gfs2: fix withdraw sequence deadlock (Robert S Peterson) [1831695] - [mm] s390/mm: fix page table upgrade vs 2ndary address mode accesses (Vladis Dronov) [1828154] {CVE-2020-11884} - [media] media: serial_ir: Fix use-after-free in serial_ir_init_module (Vladis Dronov) [1802396] {CVE-2019-19543} - [mm] mm/memory_hotplug: fix remove_memory() lockdep splat (Christoph von Recklinghausen) [1830942] - [mm] mm/page_alloc.c: initialize memmap of unavailable memory directly (Christoph von Recklinghausen) [1782827] - [fs] fs/proc/page.c: allow inspection of last section and fix end detection (Christoph von Recklinghausen) [1782827] - [mm] mm/page_alloc.c: fix uninitialized memmaps on a partially populated last section (Christoph von Recklinghausen) [1782827] - [powerpc] kvm: ppc: book3s hv: Handle non-present PTEs in page fault functions (David Gibson) [1820402] - [vfio] vfio-pci/nvlink2: Allow fallback to ibm, mmio-atsd[0] (David Gibson) [1819169] - [s390] s390/cpuinfo: fix wrong output when CPU0 is offline (Philipp Rudo) [1812982] - [s390] s390/topology: remove offline CPUs from CPU topology masks (Philipp Rudo) [1812982] - [hwtracing] intel_th: pci: Add Comet Lake PCH-V support (Tony Camuso) [1822983] - [kernel] kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic (Waiman Long) [1833383] - [kernel] kprobes: Set unoptimized flag after unoptimizing code (Waiman Long) [1833383] - [kernel] kprobes: Prohibit probing on BUG() and WARN() address (Waiman Long) [1833383] - [kernel] kprobes: Fix potential deadlock in kprobe_optimizer() (Waiman Long) [1833383] - [fs] gfs2: More gfs2_find_jhead fixes (Abhijith Das) [1828653] - [kernel] audit: fix a net reference leak in audit_list_rules_send() (Richard Guy Briggs) [1827327] - [kernel] audit: fix a net reference leak in audit_send_reply() (Richard Guy Briggs) [1827327] - [kernel] audit: check the length of userspace generated audit records (Richard Guy Briggs) [1827303] - [s390] s390/pci: do not set affinity for floating irqs (Philipp Rudo) [1834319] - [netdrv] mlx5: Remove the unsupported mark from ConnectX-6 Dx device (Alaa Hleihel) [1789382 1782831] - [netdrv] mlx5: Update list of unsupported devices (Alaa Hleihel) [1823685 1789382] - [infiniband] RDMA/mlx5: Verify that QP is created with RQ or SQ (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix udata response upon SRQ creation (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Set of completion request bit should not clear other adjacent bits (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: en_accel, Add missing net/geneve.h include (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix q counters on uplink representors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix command entry leak in Internal Error State (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix forced completion access non initialized command entry (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, On creation set CQ's arm_db member to right value (Alaa Hleihel) [1789384 1789382] - [infiniband] RDMA/mlx5: Set GRH fields in query QP on RoCE (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Get the latest values from counters in switchdev mode (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup to avoid WQ overruns (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix failing fw tracer allocation on s390 (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix pfnum in devlink port attribute (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix nest_level for vlan pop action (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add missing release firmware call (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix frequent ioread PCI access during recovery (Alaa Hleihel) [1789382] - [netdrv] flow_offload: check for basic action hw stats type (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Remove unused argument from parse_tc_pedit_action() (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Use netdev_warn() instead of pr_err() for errors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Remove unneeded functions deceleration (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Improve log messages (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Change matcher priority parameter type (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: Eswitch, avoid redundant mask (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Don't allow forwarding between uplink (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Fix missing congestion control debugfs on rep rdma device (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Optimize u64 division on 32-bit arches (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Prevent UMR usage with RO only when we have RO caps (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix group version management (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: E-Switch, Hold mutex when querying drop counter in legacy mode (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Tidy up and fix reverse christmas ordring (Alaa Hleihel) [1831133 1789382] - [netdrv] net/mlx5: Expose port speed when possible (Alaa Hleihel) [1831133 1789382] - [include] net/mlx5: Expose link speed directly (Alaa Hleihel) [1831133 1789382] - [netdrv] net/mlx5e: Use netdev_warn() for errors for added prefix (Alaa Hleihel) [1789382] - [include] net/mlx5: fix spelling mistake "reserverd" -> "reserved" (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: sparse: warning: Using plain integer as NULL pointer (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: sparse: warning: incorrect type in assignment (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: RX, Use indirect calls wrapper for handling compressed completions (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: RX, Use indirect calls wrapper for posting descriptors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Change inline mode correctly when changing trust state (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add context to the preactivate hook (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Allow mlx5e_switch_priv_channels to fail and recover (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Remove unneeded netif_set_real_num_tx_queues (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix configuration of XPS cpumasks and netdev queues in corner cases (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Use preactivate hook to set the indirection table (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Rename hw_modify to preactivate (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Encapsulate updating netdev queues into a function (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add missing LRO cap check (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Define one flow for TXQ selection when TCs are configured (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Block delay drop to unprivileged users (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix access to wrong pointer while performing flush due to error (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Do not recover from a non-fatal syndrome (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix ICOSQ recovery flow with Striding RQ (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Enhance ICOSQ WQE info fields (Alaa Hleihel) [1789382] - [netdrv] net/mlx5_core: Set IB capability mask1 to fix ib_srpt connection failure (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix the number of hwcounters of a dynamic counter (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Clear LAG notifier pointer after unregister (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix endianness handling in pedit mask (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: kTLS, Fix wrong value in record tracker enum (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: kTLS, Fix TCP seq off-by-1 issue in TX resync flow (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Fix postsend actions write length (Alaa Hleihel) [1789384 1789382] - [infiniband] IB/mlx5: Fix implicit ODP race (Alaa Hleihel) [1789382] - [netdrv] mlx5: register lag notifier for init network namespace only (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix crash in recovery flow without devlink reporter (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Reset RQ doorbell counter before moving RQ state from RST to RDY (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Use div64_u64 for num_var_hw_entries calculation (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Prevent overflow in mmap offset calculations (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix async events cleanup flows (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Deprecate usage of generic TLS HW capability bit (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: TX, Error completion is for last WQE in batch (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: IPsec, Fix esp modify function attribute (Alaa Hleihel) [1789382] - [infiniband] RDMA/core: Make the entire API tree static (Alaa Hleihel) [1789382] - [netdrv] mlx5: Use dev_net netdevice notifier registrations (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Return the administrative GUID if exists (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Allow connecting flow table to a lower/same level table (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Modify header copy support (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Modify set action limitation extension (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5e: Add mlx5e_flower_parse_meta support (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix printk format warning (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Allow creating autogroups with reserved entries (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add ignore level support fwd to table rules (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: fs_core: Introduce unmanaged flow tables (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Refactor mlx5_create_auto_grouped_flow_table (Alaa Hleihel) [1789383 1789382] - [include] net/mlx5e: Expose FEC feilds and related capability bit (Alaa Hleihel) [1789382] - [include] net/mlx5: Add mlx5_ifc definitions for connection tracking support (Alaa Hleihel) [1789382] - [include] net/mlx5: Add copy header action struct layout (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Expose resource dump register mapping (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add structures and defines for MIRC register (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Read MCAM register groups 1 and 2 (Alaa Hleihel) [1789382] - [include] net/mlx5: Add structures layout for new MCAM access reg groups (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Expose RoCE accelerator counters (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Set relaxed ordering when requested (Alaa Hleihel) [1789382] - [include] net/mlx5: Expose relaxed ordering bits (Alaa Hleihel) [1789382] - [include] net/mlx5: Add RoCE accelerator counters (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix handling of IOVA != user_va in ODP paths (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Mask out unsupported ODP capabilities for kernel QPs (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Don't fake udata for kernel path (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Add ODP WQE handlers for kernel QPs (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Simplify devx async commands (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Add mmap support for VAR (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Introduce VAR object and its alloc/destroy methods (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Extend caps stage to handle VAR capabilities (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Expose vDPA emulation device capabilities (Alaa Hleihel) [1789382] - [include] net/mlx5: Add Virtio Emulation related device capabilities (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Use async EQ setup cleanup helpers for multiple EQs (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Reduce No CQ found log level from warn to debug (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Increase the max number of channels to 128 (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Support accept action on nic table (Alaa Hleihel) [1789382] - [netdrv] mlx5: work around high stack usage with gcc (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: limit the function in local scope (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: use true, false for bool variable (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Unify ODP MR code paths to allow extra flexibility (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Fix outstanding_pi index for GSI qps (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add devlink reload (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Set netdev name space on creation (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Load profile according to RoCE enablement state (Alaa Hleihel) [1790200 1789382] - [netdrv] net/mlx5: Handle "enable_roce" devlink param (Alaa Hleihel) [1790200 1789382] - [fs] gfs2: Another gfs2_walk_metadata fix (Andreas Grunbacher) [1826419] - [nvme] nvmet-tcp: optimize tcp stack TX when data digest is used (Chris Leech) [1829540] - [nvme] nvmet-tcp: fix maxh2cdata icresp parameter (Chris Leech) [1829540] - [nvme] nvmet-tcp: set SO_PRIORITY for accepted sockets (Chris Leech) [1829540] - [nvme] nvmet-tcp: set MSG_MORE only if we actually have more to send (Chris Leech) [1829540] - [nvme] nvme-tcp: fix possible crash in recv error flow (Chris Leech) [1829540] - [nvme] nvme-tcp: don't poll a non-live queue (Chris Leech) [1829540] - [nvme] nvme-tcp: fix possible crash in write_zeroes processing (Chris Leech) [1829540] - [nvme] nvme-tcp: Add warning on state change failure at nvme_tcp_setup_ctrl (Chris Leech) [1829540] - [nvme] nvme: Make nvme_uninit_ctrl symmetric to nvme_init_ctrl (Chris Leech) [1829540] - [nvme] nvme: Fix ctrl use-after-free during sysfs deletion (Chris Leech) [1829540] - [nvme] nvme-tcp: break from io_work loop if recv failed (Chris Leech) [1829540] - [nvme] nvme-tcp: move send failure to nvme_tcp_try_send (Chris Leech) [1829540] - [nvme] nvme-tcp: optimize queue io_cpu assignment for multiple queue maps (Chris Leech) [1829540] - [nvme] nvme-tcp: Set SO_PRIORITY for all host sockets (Chris Leech) [1829540] - [nvme] nvme/tcp: fix bug on double requeue when send fails (Chris Leech) [1829540] - [nvme] Revert "nvme: Restart request timers in resetting state" (Chris Leech) [1829540] - [acpi] ACPI: processor: Export acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Make ACPI_PROCESSOR_CSTATE depend on ACPI_PROCESSOR (Steve Best) [1826415] - [acpi] ACPI: processor: Clean up acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Introduce acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Export function to claim _CST control (Steve Best) [1826415] - [s390] s390/ftrace: fix potential crashes when switching tracers (Philipp Rudo) [1831796] - [net] net/smc: cancel event worker during device removal (Philipp Rudo) [1780665] - [net] net/smc: check for valid ib_client_data (Philipp Rudo) [1780665] - [net] net/smc: fix cleanup for linkgroup setup failures (Philipp Rudo) [1780665] - [net] net/smc: no peer ID in CLC decline for SMCD (Philipp Rudo) [1780665] - [net] net/smc: transfer fasync_list in case of fallback (Philipp Rudo) [1780665] - [net] net/smc: fix leak of kernel memory to user space (Philipp Rudo) [1780665] - [net] net/smc: allow unprivileged users to read pnet table (Philipp Rudo) [1780665] - [net] net/smc: unregister ib devices in reboot_event (Philipp Rudo) [1780665] - [net] net/smc: add fallback check to connect() (Philipp Rudo) [1780665] - [net] net/smc: shorten lgr_cnt initialization (Philipp Rudo) [1780665] - [net] net/smc: fix fastopen for non-blocking connect() (Philipp Rudo) [1780665] - [net] net/smc: remove unused constant (Philipp Rudo) [1780665] - [net] net/smc: use rcu_barrier() on module unload (Philipp Rudo) [1780665] - [net] net/smc: guarantee removal of link groups in reboot (Philipp Rudo) [1780665] - [net] net/smc: introduce bookkeeping of SMCR link groups (Philipp Rudo) [1780665] - [net] net/smc: immediate termination for SMCR link groups (Philipp Rudo) [1780665] - [net] net/smc: wait for tx completions before link freeing (Philipp Rudo) [1780665] - [net] net/smc: abnormal termination without orderly flag (Philipp Rudo) [1780665] - [net] net/smc: no WR buffer wait for terminating link group (Philipp Rudo) [1780665] - [net] net/smc: introduce bookkeeping of SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: abnormal termination of SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: immediate termination for SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: fix final cleanup sequence for SMCD devices (Philipp Rudo) [1780665] - [net] net/smc: fix refcount non-blocking connect() -part 2 (Philipp Rudo) [1780665] - [net] net/smc: fix ethernet interface refcounting (Philipp Rudo) [1780665] - [net] net/smc: fix refcounting for non-blocking connect() (Philipp Rudo) [1780665] - [net] net/smc: fix closing of fallback SMC sockets (Philipp Rudo) [1780665] - [net] net/smc: remove close abort worker (Philipp Rudo) [1780665] - [net] net/smc: introduce link group termination worker (Philipp Rudo) [1780665] - [net] net/smc: improve abnormal termination of link groups (Philipp Rudo) [1780665] - [net] net/smc: tell peers about abnormal link group termination (Philipp Rudo) [1780665] - [net] net/smc: improve link group freeing (Philipp Rudo) [1780665] - [net] net/smc: improve abnormal termination locking (Philipp Rudo) [1780665] - [net] net/smc: terminate link group without holding lgr lock (Philipp Rudo) [1780665] - [net] net/smc: cancel send and receive for terminated socket (Philipp Rudo) [1780665] - [net] net/smc: receive pending data after RCV_SHUTDOWN (Philipp Rudo) [1780665] - [net] net/smc: receive returns without data (Philipp Rudo) [1780665] - [net] net/smc: fix SMCD link group creation with VLAN id (Philipp Rudo) [1780665] - [net] net/smc: improve close of terminated socket (Philipp Rudo) [1780665] - [net] net/smc: no new connections on disappearing devices (Philipp Rudo) [1780665] - [net] net/smc: increase device refcount for added link group (Philipp Rudo) [1780665] - [net] net/smc: separate locks for SMCD and SMCR link group lists (Philipp Rudo) [1780665] - [net] net/smc: separate SMCD and SMCR link group lists (Philipp Rudo) [1780665] - [net] net/smc: original socket family in inet_sock_diag (Philipp Rudo) [1780665] - [infiniband] RDMA/bnxt_re: Use rdma_read_gid_hw_context to retrieve HW gid index (Kamal Heib) [1828601] - [infiniband] RDMA/core: Add helper function to retrieve driver gid context from gid attr (Kamal Heib) [1828601] - [media] media: videobuf2-v4l2: drop WARN_ON in vb2_warn_zero_bytesused() (Vladis Dronov) [1825616] {CVE-2019-9455} - [net] SUNRPC: Fix initialisation of struct rpc_xprt_switch (Steve Dickson) [1683394] - [net] SUNRPC: add links for all client xprts to debugfs (Steve Dickson) [1683394] - [net] SUNRPC: enhance rpc_clnt_show_stats() to report on all xprts (Steve Dickson) [1683394] - [net] SUNRPC: Fix transport accounting when caller specifies an rpc_xprt (Steve Dickson) [1683394] - [fs] NFS: send state management on a single connection (Steve Dickson) [1683394] - [net] SUNRPC: Add basic load balancing to the transport switch (Steve Dickson) [1683394] - [net] SUNRPC: Fix up task signalling (Steve Dickson) [1683394] - [fs] NFS: Allow multiple connections to a NFSv2 or NFSv3 server (Steve Dickson) [1683394] - [fs] NFS: Display the "nconnect" mount option if it is set (Steve Dickson) [1683394] - [fs] pNFS: Allow multiple connections to the DS (Steve Dickson) [1683394] - [fs] NFSv4: Allow multiple connections to NFSv4.x (x>0) servers (Steve Dickson) [1683394] - [fs] NFS: Add a mount option to specify number of TCP connections to use (Steve Dickson) [1683394] - [net] SUNRPC: Allow creation of RPC clients with multiple connections (Steve Dickson) [1683394] - [net] netlabel: cope with NULL catmap (Paolo Abeni) [1827251] {CVE-2020-10711} - [scsi] scsi: qla2xxx: fix a potential NULL pointer dereference ("Ewan D. Milne") [1829250] {CVE-2019-16233} - [input] Input: ff-memless - kill timer in destroy() (Chris von Recklinghausen) [1815024] {CVE-2019-19524}- [netdrv] net/mlx5e: kTLS, Do not send decrypted-marked SKBs via non-accel path (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: kTLS, Remove redundant posts in TX resync flow (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: kTLS, Fix corner-case checks in TX resync flow (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Prevent ingress rate configuration of uplink rep (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Fix lowest FDB pool size (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Fix hairpin RSS table size (Alaa Hleihel) [1789380] - [netdrv] Revert "net/mlx5: Support lockless FTE read lookups" (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move devlink registration before interfaces load (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Always print health reporter message to dmesg (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Avoid duplicating rule destinations (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Fix device memory flows (Alaa Hleihel) [1789380] - [netdrv] treewide: Use sizeof_field() macro (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: E-switch, Fix Ingress ACL groups in switchdev mode for prio tag (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Fix build error without IPV6 (Alaa Hleihel) [1789380] - [netdrv] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Remove redundant pointer check (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: TC, Stub out ipv6 tun create header function (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Add support for Geneve packets SW steering (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Add HW bits and definitions for Geneve flex parser (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Refactor VXLAN GPE flex parser tunnel code for SW steering (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Don't write read-only fields in MODIFY_HCA_VPORT_CONTEXT command (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Implement callbacks for getting VFs GUID attributes (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Rx, Update page pool numa node when changed (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Support extended number of strides for Striding RQ (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Remove redundant NULL initializations (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Add new chain for netfilter flow table offload (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Refactor creating fast path prio chains (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Accumulate levels for chains prio namespaces (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Define fdb tc levels per prio (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Rename FDB_* tc related defines to FDB_TC_* defines (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Simplify fdb chain and prio eswitch defines (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Support flow counters offset for bulk counters (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Dump of fw_fatal use updated devlink binary interface (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Rename profile and init methods (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: fix spelling mistake "metdata" -> "metadata" (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: fix kvfree of uninitialized pointer spec (Alaa Hleihel) [1789380] - [infiniband] IB: mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: LAG, Use port enumerators (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: rate limit alloc_ent error messages (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Add ToS (DSCP) header rewrite support (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Bit sized fields rewrite support (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: WQ, Move short getters into header file (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: TX, Dump WQs wqe descriptors on CQE with error events (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Support lockless FTE read lookups (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Do not hold group lock while allocating FTE in software (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Verify that rule has at least one fwd/drop action (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Remove unneeded variable in mlx5_unload_one (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: FPGA, support network cards with standalone FPGA (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Introduce and use mlx5_core_is_vf() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Refactor ingress acl configuration (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Restrict metadata disablement to offloads mode (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Offloads shift ACL programming during enable/disable vport (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Offloads introduce and use per vport acl tables APIs (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move ACL drop counters life cycle close to ACL lifecycle (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Legacy introduce and use per vport acl tables APIs (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Prepare code to handle vport enable error (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Tide up state_lock and vport enabled flag usage (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move legacy drop counter and rule under legacy structure (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move metdata fields under offloads structure (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Introduce and use mlx5_esw_is_manager_vport() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Introduce and use vlan rule config helper (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Rename ingress acl config in offloads mode (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Rename egress config to generic name (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Test write combining support (Alaa Hleihel) [1789380] - [netdrv] net: Fix misspellings of "configure" and "configuration" (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Do not race with mlx5_ib_invalidate_range during create and destroy (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Do not store implicit children in the odp_mkeys xarray (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Rework implicit ODP destroy (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Avoid double lookups on the pagefault path (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Reduce locking in implicit_mr_get_data() (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use an xarray for the children of an implicit ODP (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Split implicit handling from pagefault_mr (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Set the HW IOVA of the child MRs to their place in the tree (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Lift implicit_mr_alloc() into the two routines that call it (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Rework implicit_mr_get_data (Alaa Hleihel) [1789380] - [netdrv] RDMA/mlx5: Delete struct mlx5_priv->mkey_table (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use a dedicated mkey xarray for ODP (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Split sig_err MR data into its own xarray (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use SRCU properly in ODP prefetch (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Align usage of QP1 create flags with rest of mlx5 defines (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Add capability for max sge to get optimized performance (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Introduce and use mkey context setting helper routine (Alaa Hleihel) [1789380] - [include] net/mlx5: Expose optimal performance scatter entries capability (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Remove unnecessary else statement (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Remove unnecessary return statement (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Group boolean parameters to take less space (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Add missing capability bit check for IP-in-IP (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Fix ingress rate configuration for representors (Alaa Hleihel) [1789378] - [netdrv] mlx5: reject unsupported external timestamp flags (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Replace kfree with kvfree when free vhca stats (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Remove incorrect match criteria assignment line (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Enhance TX resync flow (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save a copy of the crypto info (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Remove unneeded cipher type checks (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Limit DUMP wqe size (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Fix missing SQ edge fill (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Fix page refcnt leak in TX resync error flow (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save by-value copy of the record frags (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save only the frag page to release at completion (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Size of a Dump WQE is fixed (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Release reference on DUMPed fragments in shutdown flow (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Put live in the correct place for ODP MRs (Alaa Hleihel) [1789378] - [infiniband] RDMA/odp: Lift umem_mutex out of ib_umem_odp_unmap_dma_pages() (Alaa Hleihel) [1789378] - [netdrv] drivers: net: Fix Kconfig indentation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: DR, Remove redundant dev_name print from err log (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: DR, Remove useless set memory to zero use memset() (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Remove unused function parameter (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Use PTR_ERR_OR_ZERO rather than its implementation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Use ipv6_stub to avoid dependency with ipv6 being a module (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Kconfig: Fix MLX5_CORE dependency with PCI_HYPERV_INTERFACE (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Fix static checker warning of potential pointer math issue (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Remove unlikely() from WARN*() condition (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Support TSO and TX checksum offloads for IP-in-IP tunnels (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Improve stateless offload capability check (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Support RSS for IP-in-IP and IPv6 tunneled packets (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Change function's position to a more fitting file (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add page fault handler for DC initiator WQE (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Remove check of FW capabilities in ODP page fault handling (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Set ODP capabilities for DC transport to max (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: RDMA_RX flow type support for user applications (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Fix return code in case of hyperv wrong size read (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add mlx5e HV VHCA stats agent (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add HV VHCA control agent (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add HV VHCA infrastructure (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add wrappers for HyperV PCIe operations (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add trace point for neigh update (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add trace point for neigh used value update (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add tc flower tracepoints (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Use odp instead of mr->umem in pagefault_mr (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Use ib_umem_start instead of umem.address (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Create bypass and loopback flow steering namespaces for RDMA RX (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add per-namespace flow table default miss action support (Alaa Hleihel) [1789378] - [include] net/mlx5: Expose IP-in-IP capability bit (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Improve functions documentation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Report and recover from CQE with error on RQ (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: RX, Handle CQE with error at the earliest stage (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Report and recover from rx timeout (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Report and recover from CQE error on ICOSQ (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Split open/close ICOSQ into stages (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add support to rx reporter diagnose (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add helper functions for reporter's basics (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add cq info to tx reporter diagnose (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Extend tx reporter diagnostics output (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Extend tx diagnose function (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Generalize tx reporter's functionality (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Change naming convention for reporter's functions (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Rename reporter header file (Alaa Hleihel) [1790198 1789378] - [infiniband] RDMA/mlx5: Annotate lock dependency in bind/unbind slave port (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Expose XRQ legacy commands over the DEVX interface (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add legacy events to DEVX list (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add XRQ legacy commands opcodes (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Use debug message instead of warn (Alaa Hleihel) [1789378] - [netdrv] mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1789378] - [infiniband] mlx5: Use refcount_t for refcount (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Allow dropping specific tunnel packets (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: TX reporter cleanup (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Set tx reporter only on successful creation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Rx, checksum handling refactoring (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Tx, Soften inline mode VLAN dependencies (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: XDP, Slight enhancement for WQE fetch function (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: XDP, Close TX MPWQE session when no room for inline packet left (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Tx, Strict the room needed for SQ edge NOPs (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: E-Switch, add ingress rate support (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Remove DEBUG ODP code (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add CREATE_PSV/DESTROY_PSV for devx interface (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Avoid unnecessary typecast (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: xsk: dynamically allocate mlx5e_channel_param (Alaa Hleihel) [1789378] - [netdrv] net: Use skb accessors in network drivers (Alaa Hleihel) [1789378] - [char] tpm: Export tpm2_get_cc_attrs_tbl for ibmvtpm driver as module (David Gibson) [1781915] - [char] tpm: ibmvtpm: Add support for TPM2 (David Gibson) [1781915] - [char] tpm: of: Handle IBM, vtpm20 case when getting log parameters (David Gibson) [1781915] - [wireless] iwlwifi: mvm: Do not require PHY_SKU NVM section for 3168 devices (Jarod Wilson) [1807052] - [wireless] mwifiex: set needed_headroom, not hard_header_len (Jarod Wilson) [1807052] - [wireless] ath9k: Handle txpower changes even when TPC is disabled (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: fix coverage_class type (Jarod Wilson) [1807052] - [wireless] rtw88: Use kfree_skb() instead of kfree() (Jarod Wilson) [1807052] - [wireless] brcmfmac: abort and release host after error (Jarod Wilson) [1807052] - [wireless] ath11k: Silence clang -Wsometimes-uninitialized in ath11k_update_per_peer_stats_from_txcompl (Jarod Wilson) [1807052] - [wireless] ath10k: Call cpu_latency_qos_*() instead of pm_qos_*() (Jarod Wilson) [1807052] - [net] mac80211: fix authentication with iwlwifi/mvm (Jarod Wilson) [1807052] - [net] mac80211: set IEEE80211_TX_CTRL_PORT_CTRL_PROTO for nl80211 TX (Jarod Wilson) [1807052] - [net] mac80211: mark station unauthorized before key removal (Jarod Wilson) [1807052] - [net] mac80211: Check port authorization in the ieee80211_tx_dequeue() case (Jarod Wilson) [1807052] - [net] cfg80211: Do not warn on same channel at the end of CSA (Jarod Wilson) [1807052] - [net] mac80211: drop data frames without key on encrypted links (Jarod Wilson) [1807052] - [net] nl80211: fix NL80211_ATTR_CHANNEL_WIDTH attribute type (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't send GEO_TX_POWER_LIMIT if no wgds table (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: add 0x2526/0x401* devices back to cfg detection (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Fix regression due to commit d1d1a96bdb44 (Jarod Wilson) [1807052] - [wireless] iwlwifi: cfg: use antenna diversity with all AX101 devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Fix rate scale NSS configuration (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: don't abort if sending DBGC_SUSPEND_RESUME fails (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: don't add TLV offset when reading FIFOs (Jarod Wilson) [1807052] - [wireless] iwlwifi: check allocated pointer when allocating conf_tlvs (Jarod Wilson) [1807052] - [wireless] iwlwifi: consider HE capability when setting LDPC (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: take the required lock when clearing time event data (Jarod Wilson) [1807052] - [net] mac80211: Do not send mesh HWMP PREQ if HWMP is disabled (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for channel switch (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for beacon report scanning (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for critical protocol indication (Jarod Wilson) [1807052] - [wireless] mt76: fix array overflow on receiving too many fragments for a packet (Jarod Wilson) [1807052] - [net] mac80211: rx: avoid RCU list traversal under mutex (Jarod Wilson) [1807052] - [net] nl80211: explicitly include if_vlan.h (Jarod Wilson) [1807052] - [net] mac80211: Remove a redundant mutex unlock (Jarod Wilson) [1807052] - [net] cfg80211: check reg_rule for NULL in handle_channel_custom() (Jarod Wilson) [1807052] - [net] nl80211: fix potential leak in AP start (Jarod Wilson) [1807052] - [net] mac80211: fix wrong 160/80+80 MHz setting (Jarod Wilson) [1807052] - [net] cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix max_nss in mt7615_eeprom_parse_hw_cap (Jarod Wilson) [1807052] - [net] cfg80211: check wiphy driver existence for drvinfo report (Jarod Wilson) [1807052] - [net] mac80211: consider more elements in parsing CRC (Jarod Wilson) [1807052] - [net] mac80211: fix quiet mode activation in action frames (Jarod Wilson) [1807052] - [net] mac80211: use more bits for ack_frame_id (Jarod Wilson) [1807052] - [wireless] rtw88: Fix return value of rtw_wow_check_fw_status (Jarod Wilson) [1807052] - [wireless] iwlwifi: d3: read all FW CPUs error info (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix TDLS discovery with the new firmware API (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Check the sta is not NULL in iwl_mvm_cfg_he_sta() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: avoid use after free for pmsr request (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: update the DTS measurement type (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't throw error when trying to remove IGTK (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Fix thermal zone registration (Jarod Wilson) [1807052] - [wireless] iwlwifi: use helpers (Jarod Wilson) [1807052] - [wireless] mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv() (Jarod Wilson) [1807052] - [wireless] mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status() (Jarod Wilson) [1807052] - [wireless] mwifiex: fix unbalanced locking in mwifiex_process_country_ie() (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: fix spelling mistake "initilized" -> "initialized" (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: remove redundant assignment to variable cond (Jarod Wilson) [1807052] - [wireless] brcmfmac: Remove always false 'idx < 0' statement (Jarod Wilson) [1807052] - [wireless] rtw88: use shorter delay time to poll PS state (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential NULL skb access in TX ISR (Jarod Wilson) [1807052] - [wireless] brcmfmac: add initial support for monitor mode (Jarod Wilson) [1807052] - [wireless] brcmfmac: simplify building interface combinations (Jarod Wilson) [1807052] - [wireless] brcmfmac: sdio: Fix OOB interrupt initialization on brcm43362 (Jarod Wilson) [1807052] - [wireless] brcmfmac: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] rtw88: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Remove sw.h header (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: Remove sw.h header (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: Fix typo (Jarod Wilson) [1807052] - [wireless] rtw88: change max_num_of_tx_queue() definition to inline in pci.h (Jarod Wilson) [1807052] - [wireless] rtw88: assign NULL to skb after being kfree()'ed (Jarod Wilson) [1807052] - [wireless] rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop() (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused vif pointer in struct rtw_vif (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused variable 'in_lps' (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused spinlock (Jarod Wilson) [1807052] - [wireless] rtw88: 8822c: update power sequence to v15 (Jarod Wilson) [1807052] - [wireless] rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M (Jarod Wilson) [1807052] - [wireless] rtw88: fix rate mask for 1SS chip (Jarod Wilson) [1807052] - [wireless] rtw88: Add wowlan net-detect support (Jarod Wilson) [1807052] - [wireless] rtw88: Add wowlan pattern match support (Jarod Wilson) [1807052] - [wireless] rtw88: support wowlan feature for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: load wowlan firmware if wowlan is supported (Jarod Wilson) [1807052] - [wireless] rtw88: add interface config for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset dma when reset pci trx ring (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset ring index when release skbs in tx ring (Jarod Wilson) [1807052] - [wireless] ath10k: Use device_get_match_data() to simplify code (Jarod Wilson) [1807052] - [wireless] ath10k: Add newlines to printk messages (Jarod Wilson) [1807052] - [wireless] ath10k: Correct the DMA direction for management tx buffers (Jarod Wilson) [1807052] - [wireless] mwifiex: drop most magic numbers from mwifiex_process_tdls_action_frame() (Jarod Wilson) [1807052] - [wireless] ath11k: fix up some error paths (Jarod Wilson) [1807052] - [wireless] ath11k: make sure to also report the RX bandwidth inside radiotap (Jarod Wilson) [1807052] - [wireless] ath11k: avoid null pointer dereference when pointer band is null (Jarod Wilson) [1807052] - [wireless] ath11k: Add missing pdev rx rate stats (Jarod Wilson) [1807052] - [wireless] ath11k: ensure ts.flags is initialized before bit-wise or'ing in values (Jarod Wilson) [1807052] - [wireless] ath11k: set TxBf parameters after vdev start (Jarod Wilson) [1807052] - [wireless] ath11k: enable HE tlvs in ppdu stats for pktlog lite (Jarod Wilson) [1807052] - [wireless] ath11k: fix debugfs build failure (Jarod Wilson) [1807052] - [wireless] ath10k: Don't call SCM interface for statically mapped msa region (Jarod Wilson) [1807052] - [wireless] Revert "ath10k: fix DMA related firmware crashes on multiple devices" (Jarod Wilson) [1807052] - [wireless] ath10k: drop RX skb with invalid length for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] ath10k: Add optional qdss clk (Jarod Wilson) [1807052] - [wireless] ath10k: pci: Fix comment on ath10k_pci_dump_memory_sram (Jarod Wilson) [1807052] - [wireless] ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe (Jarod Wilson) [1807052] - [wireless] ath9k: use true,false for bool variable (Jarod Wilson) [1807052] - [net] net: mac80211: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1807052] - [wireless] net: iwlwifi: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1807052] - [wireless] iwlwifi: add device name to device_info (Jarod Wilson) [1807052] - [wireless] iwlwifi: implement a new device configuration table (Jarod Wilson) [1807052] - [wireless] iwlwifi: assume the driver_data is a trans_cfg, but allow full cfg (Jarod Wilson) [1807052] - [wireless] iwlwifi: prph: remove some unused register definitions (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: print out extended secboot status before dump (Jarod Wilson) [1807052] - [wireless] iwlwifi: incorporate firmware filename into version (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: check for the domain on all TLV types during init (Jarod Wilson) [1807052] - [wireless] iwlwifi: add new iwlax411 struct for type SoSnj (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: remove the iwl_dbg_tlv_gen_active_trigs() function (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: remove unnecessary active triggers status flag (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: don't allow changing the domain via debugfs (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Update BEACON_TEMPLATE_CMD firmware API (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove CSR registers abstraction (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove some outdated iwl22000 configurations (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: validate queue ID before array deref/bit ops (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: use partial pages if applicable (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: map only used part of RX buffers (Jarod Wilson) [1807052] - [wireless] iwlwifi: allocate more receive buffers for HE devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for responder config command version 7 (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for location range request version 8 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: remove support for fw scan api v11 (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: don't skip a TX FIFO when dumping (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: update powersave correctly for D3 (Jarod Wilson) [1807052] - [wireless] ath11k: Use sizeof_field() instead of FIELD_SIZEOF() (Jarod Wilson) [1807052] - [wireless] ath11k: explicitly cast wmi commands to their correct struct type (Jarod Wilson) [1807052] - [wireless] orinoco: avoid assertion in case of NULL pointer (Jarod Wilson) [1807052] - [wireless] brcmfmac: Keep OOB wake-interrupt disabled when it shouldn't be enabled (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix memory leak in brcmf_usbdev_qinit (Jarod Wilson) [1807052] - [wireless] brcmfmac: not set mbss in vif if firmware does not support MBSS (Jarod Wilson) [1807052] - [wireless] brcmfmac: add RSDB condition when setting interface combinations (Jarod Wilson) [1807052] - [wireless] brcmfmac: add support for BCM4359 SDIO chipset (Jarod Wilson) [1807052] - [wireless] brcmfmac: make errors when setting roaming parameters non-fatal (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix rambase for 4359/9 (Jarod Wilson) [1807052] - [wireless] brcmfmac: set F2 blocksize and watermark for 4359 (Jarod Wilson) [1807052] - [wireless] brcmfmac: reset two D11 cores if chip has two D11 cores (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix interface sanity check (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix interface sanity check (Jarod Wilson) [1807052] - [wireless] brcmfmac: set interface carrier to off by default (Jarod Wilson) [1807052] - [wireless] mwifiex: delete unused mwifiex_get_intf_num() (Jarod Wilson) [1807052] - [wireless] rt2x00usb: Fix a warning message in 'rt2x00usb_watchdog_tx_dma()' (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix use after free in brcmf_sdio_readframes() (Jarod Wilson) [1807052] - [wireless] rt2x00: use RESET state bit to prevent IV changes on restart (Jarod Wilson) [1807052] - [wireless] rt2x00: implement reconfig_complete (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl_pci: Fix -Wcast-function-type (Jarod Wilson) [1807052] - [wireless] brcmsmac: Remove always false 'channel < 0' statement (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove last definitions of local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl88821ae: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove dependence on special bit manipulation macros for common driver (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: rtl8192c_com: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove usage of private bit manipulation (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Convert inline routines to little-endian words (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Convert macros that set descriptor (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Replace local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Remove unused GET_XXX and SET_XXX macros (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix memory leak in brcmf_p2p_create_p2pdev() (Jarod Wilson) [1807052] - [wireless] ath9k: fix storage endpoint lookup (Jarod Wilson) [1807052] - [wireless] ath11k: Remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] ath11k: remove an unneeded NULL check (Jarod Wilson) [1807052] - [wireless] ath11k: checking for NULL vs IS_ERR() (Jarod Wilson) [1807052] - [wireless] ath11k: delete a stray unlock in ath11k_dbg_htt_stats_req() (Jarod Wilson) [1807052] - [wireless] ath11k: fix missing free of skb on error return path (Jarod Wilson) [1807052] - [wireless] ath11k: fix uninitialized variable radioup (Jarod Wilson) [1807052] - [wireless] ath11k: fix memory leak on reg_info (Jarod Wilson) [1807052] - [wireless] ath11k: Remove unnecessary enum scan_priority (Jarod Wilson) [1807052] - [wireless] ath11k: fix several spelling mistakes (Jarod Wilson) [1807052] - [wireless] ath11k: add some missing __packed qualifiers (Jarod Wilson) [1807052] - [wireless] ath11k: set the BA buffer size to 256 when HE is enabled (Jarod Wilson) [1807052] - [wireless] ath11k: fix pdev when invoking ath11k_wmi_send_twt_enable_cmd() (Jarod Wilson) [1807052] - [wireless] ath11k: optimize ath11k_hal_tx_status_parse (Jarod Wilson) [1807052] - [wireless] ath11k: optimise ath11k_dp_tx_completion_handler (Jarod Wilson) [1807052] - [wireless] ath11k: move some tx_status parsing to debugfs code (Jarod Wilson) [1807052] - [wireless] ath11k: rename ath11k_wmi_base instances from wmi_sc to wmi_ab (Jarod Wilson) [1807052] - [wireless] ath11k: drop memset when setting up a tx cmd desc (Jarod Wilson) [1807052] - [wireless] ath11k: disable PS for STA interfaces by default upon bringup (Jarod Wilson) [1807052] - [wireless] ath11k: add wmi helper for turning STA PS on/off (Jarod Wilson) [1807052] - [wireless] ath10k: Fix some typo in some warning messages (Jarod Wilson) [1807052] - [wireless] ath11k: register HE mesh capabilities (Jarod Wilson) [1807052] - [net] netlink: rename nl80211_validate_nested() to nla_validate_nested() (Jarod Wilson) [1807052] - [wireless] wireless/mediatek: Replace rcu_swap_protected() with rcu_replace_pointer() (Jarod Wilson) [1807052] - [wireless] ath: add support for special 0x0 regulatory domain (Jarod Wilson) [1807052] - [wireless] ath10k: change bundle count for max rx bundle for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: enable napi on RX path for sdio (Jarod Wilson) [1807052] - [wireless] ath11k: fix indentation in ath11k_mac_prepare_he_mode() (Jarod Wilson) [1807052] - [wireless] ath11k: Setup REO destination ring before sending wmi_init command (Jarod Wilson) [1807052] - [wireless] ath11k: Move mac80211 hw allocation before wmi_init command (Jarod Wilson) [1807052] - [wireless] ath11k: Skip update peer stats for management packets (Jarod Wilson) [1807052] - [wireless] ath11k: update tx duration in station info (Jarod Wilson) [1807052] - [wireless] ath11k: fix vht guard interval mapping (Jarod Wilson) [1807052] - [wireless] ath11k: fix memory leak in monitor mode (Jarod Wilson) [1807052] - [wireless] ath11k: Advertise MPDU start spacing as no restriction (Jarod Wilson) [1807052] - [wireless] ath11k: Update tx and rx chain count properly on drv_set_antenna (Jarod Wilson) [1807052] - [wireless] ath11k: add necessary peer assoc params in wmi dbg (Jarod Wilson) [1807052] - [wireless] ath11k: unlock mutex during failure in qmi fw ready (Jarod Wilson) [1807052] - [wireless] ath11k: add support for controlling tx power to a station (Jarod Wilson) [1807052] - [wireless] ath11k: update bawindow size in delba process (Jarod Wilson) [1807052] - [wireless] ath11k: avoid use_after_free in ath11k_dp_rx_msdu_coalesce API (Jarod Wilson) [1807052] - [wireless] ath11k: avoid burst time conversion logic (Jarod Wilson) [1807052] - [wireless] ath11k: pktlog: fix sending/using the pdev id (Jarod Wilson) [1807052] - [wireless] ath11k: qmi clean up in ath11k_qmi_wlanfw_wlan_cfg_send() (Jarod Wilson) [1807052] - [wireless] ath11k: qmi clean up ce and HTC service config update (Jarod Wilson) [1807052] - [wireless] ath11k: tracing: fix ath11k tracing (Jarod Wilson) [1807052] - [wireless] ath10k: enable wow feature for sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: change log level for mpdu status of sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: set WMI_PEER_AUTHORIZE after a firmware crash (Jarod Wilson) [1807052] - [wireless] ath10k: set max mtu to 1500 for sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: enable firmware log by default for sdio (Jarod Wilson) [1807052] - [wireless] ath11k: Fix target crash due to WBM_IDLE_LINK ring desc shortage (Jarod Wilson) [1807052] - [wireless] ath11k: Fixing TLV length issue in peer pktlog WMI command (Jarod Wilson) [1807052] - [wireless] ath11k: Fix skb_panic observed during msdu coalescing (Jarod Wilson) [1807052] - [wireless] ath11k: remove unused tx ring counters (Jarod Wilson) [1807052] - [wireless] ath11k: avoid WMM param truncation (Jarod Wilson) [1807052] - [wireless] ath11k: optimize RX path latency (Jarod Wilson) [1807052] - [wireless] ath11k: update tcl cmd descriptor parameters for STA mode (Jarod Wilson) [1807052] - [wireless] ath11k: fix wmi service ready ext tlv parsing (Jarod Wilson) [1807052] - [wireless] ath11k: fix resource leak in ath11k_mac_sta_state (Jarod Wilson) [1807052] - [wireless] ath11k: Fix htt stats sounding info and pdev cca stats (Jarod Wilson) [1807052] - [wireless] ath10k: move non-fatal warn logs to dbg level (Jarod Wilson) [1807052] - [wireless] ath11k: add spatial reuse support (Jarod Wilson) [1807052] - [wireless] ath11k: add TWT support (Jarod Wilson) [1807052] - [wireless] ath11k: add HE support (Jarod Wilson) [1807052] - [wireless] ath11k: Remove dead code while handling amsdu packets (Jarod Wilson) [1807052] - [wireless] ath11k: fix missed bw conversion in tx completion (Jarod Wilson) [1807052] - [wireless] ath11k: convert message from info to dbg (Jarod Wilson) [1807052] - [wireless] ath11k: ignore event 0x6017 (Jarod Wilson) [1807052] - [wireless] ath11k: add RX stats support for radiotap (Jarod Wilson) [1807052] - [wireless] ath11k: driver for Qualcomm IEEE 802.11ax devices (Jarod Wilson) [1807052] - [wireless] ath10k: fix RX of frames with broken FCS in monitor mode (Jarod Wilson) [1807052] - [wireless] ath10k: report rssi of each chain to mac80211 for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: Handle "invalid" BDFs for msm8998 devices (Jarod Wilson) [1807052] - [wireless] ath10k: Fix qmi init error handling (Jarod Wilson) [1807052] - [wireless] ath10k: add NL80211_FEATURE_ND_RANDOM_MAC_ADDR for NLO (Jarod Wilson) [1807052] - [wireless] ath10k: Handle when FW doesn't support QMI_WLFW_HOST_CAP_REQ_V01 (Jarod Wilson) [1807052] - [wireless] ath10k: add large size for BMI download data for SDIO (Jarod Wilson) [1807052] - [wireless] ath10k: correct the tlv len of ath10k_wmi_tlv_op_gen_config_pno_start (Jarod Wilson) [1807052] - [wireless] ath10k: sdio: remove struct ath10k_sdio_rx_data::status (Jarod Wilson) [1807052] - [wireless] ath10k: sdio: cosmetic cleanup (Jarod Wilson) [1807052] - [wireless] ath10k: add workqueue for RX path of sdio (Jarod Wilson) [1807052] - [wireless] ath10k: change max RX bundle size from 8 to 32 for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: enable RX bundle receive for sdio (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: don't send the IWL_MVM_RXQ_NSSN_SYNC notif to Rx queues (Jarod Wilson) [1807052] - [net] cfg80211: fix page refcount issue in A-MSDU decap (Jarod Wilson) [1807052] - [net] cfg80211: check for set_wiphy_params (Jarod Wilson) [1807052] - [net] cfg80211: fix memory leak in cfg80211_cqm_rssi_update (Jarod Wilson) [1807052] - [net] cfg80211: fix memory leak in nl80211_probe_mesh_link (Jarod Wilson) [1807052] - [net] cfg80211: fix deadlocks in autodisconnect work (Jarod Wilson) [1807052] - [net] wireless: wext: avoid gcc -O3 warning (Jarod Wilson) [1807052] - [net] mac80211: Fix TKIP replay protection immediately after key setup (Jarod Wilson) [1807052] - [net] cfg80211: Fix radar event during another phy CAC (Jarod Wilson) [1807052] - [net] wireless: fix enabling channel 12 for custom regulatory domain (Jarod Wilson) [1807052] - [net] mac80211: mesh: restrict airtime metric to peered established plinks (Jarod Wilson) [1807052] - [wireless] Revert "iwlwifi: mvm: fix scan config command size" (Jarod Wilson) [1807052] - [wireless] iwlwifi: fw: make pos static in iwl_sar_get_ewrd_table() loop (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove lar_disable module parameter (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: force stop the debug monitor HW (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: always disable L0S states (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: rename L0S_ENABLED bit to L0S_DISABLED (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix potential SKB leak on TXQ TX (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix SKB leak on invalid queue (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: extend hardware workaround to context-info (Jarod Wilson) [1807052] - [wireless] iwlwifi: Don't ignore the cap field upon mcc update (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: report TX rate to mac80211 directly for RS offload (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix NVM check for 3168 devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: fix TLV fragment allocation loop (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: allocate smaller dev_cmd for TX headers (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: detect the DMA bug and warn if it happens (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: work around DMA hardware bug (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: move page tracking into get_page_hdr() (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't send PPAG command if disabled (Jarod Wilson) [1807052] - [wireless] mt76: Off by one in mt76_calc_rx_airtime() (Jarod Wilson) [1807052] - [wireless] mt76: fix LED link time failure (Jarod Wilson) [1807052] - [net] mac80211: Turn AQL into an NL80211_EXT_FEATURE (Jarod Wilson) [1807052] - [net] mac80211: airtime: Fix an off by one in ieee80211_calc_rx_airtime() (Jarod Wilson) [1807052] - [net] cfg80211: fix double-free after changing network namespace (Jarod Wilson) [1807052] - [net] mac80211: fix TID field in monitor mode transmit (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: move power gating workaround earlier in the flow (Jarod Wilson) [1807052] - [wireless] Revert "iwlwifi: assign directly to iwl_trans->cfg in QuZ detection" (Jarod Wilson) [1807052] - [wireless] wireles: Use sizeof_field() macro (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: fix default mac address overwrite (Jarod Wilson) [1807052] - [wireless] ath9k: use iowrite32 over __raw_writel (Jarod Wilson) [1807052] - [net] mac80211: Use Airtime-based Queue Limits (AQL) on packet dequeue (Jarod Wilson) [1807052] - [net] mac80211: Implement Airtime-based Queue Limit (AQL) (Jarod Wilson) [1807052] - [net] mac80211: Import airtime calculation code from mt76 (Jarod Wilson) [1807052] - [net] mac80211: consider QoS Null frames for STA_NULLFUNC_ACKED (Jarod Wilson) [1807052] - [net] mac80211: expose HW conf flags through debugfs (Jarod Wilson) [1807052] - [net] mac80211: Add new sta_info getter by sta/vif addrs (Jarod Wilson) [1807052] - [net] mac80211: add a comment about monitor-to-dev injection (Jarod Wilson) [1807052] - [wireless] drivers: net: Fix Kconfig indentation, continued (Jarod Wilson) [1807052] - [wireless] mt76: fix fix ampdu locking (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: fix endpoint definition order (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: read {tx,rx} mask from eeprom (Jarod Wilson) [1807052] - [wireless] mt76: move mt76_get_antenna in mt76_core module (Jarod Wilson) [1807052] - [wireless] mt76: fix possible out-of-bound access in mt7615_fill_txs/mt7603_fill_txs (Jarod Wilson) [1807052] - [wireless] Revert "mt76: mt76x0e: don't use hw encryption for MT7630E" (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: disable radar pattern detector during scanning (Jarod Wilson) [1807052] - [wireless] mt76: move interface_modes definition in mt76_core module (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: add ibss support (Jarod Wilson) [1807052] - [wireless] mt76: move SUPPORTS_REORDERING_BUFFER hw property in mt76_register_device (Jarod Wilson) [1807052] - [wireless] mt76: use mt76_dev in mt76_is_{mmio,usb} (Jarod Wilson) [1807052] - [wireless] mt76: Remove set but not used variable 'idx' (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: rely on a dedicated stats workqueue (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: rely on usb_interface instead of usb_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: remove 350ms delay in mt76x0_phy_calibrate (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02u: update ewma pkt len in mt76x02u_tx_prepare_skb (Jarod Wilson) [1807052] - [wireless] mt76: remove obsolete .add_buf() from struct mt76_queue_ops (Jarod Wilson) [1807052] - [wireless] mt76: add sanity check for a-mpdu rx wcid index (Jarod Wilson) [1807052] - [wireless] mt76: refactor cc_lock locking scheme (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: eeprom: add support for MAC address from OF (Jarod Wilson) [1807052] - [wireless] mt76: avoid enabling interrupt if NAPI poll is still pending (Jarod Wilson) [1807052] - [wireless] mt76: fix aggregation stop issue (Jarod Wilson) [1807052] - [wireless] mt76: drop rcu read lock in mt76_rx_aggr_stop (Jarod Wilson) [1807052] - [wireless] mt76: add missing locking around ampdu action (Jarod Wilson) [1807052] - [wireless] mt76: do not use devm API for led classdev (Jarod Wilson) [1807052] - [wireless] mt76: enable airtime fairness (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: track tx/rx airtime for airtime fairness (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: introduce mt7615_mac_wtbl_update routine (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix survey channel busy time (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: report tx_time, bss_rx and busy time to mac80211 (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: track approximate tx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: move MT_CH_TIME_CFG init to mt76x02_mac_cc_reset (Jarod Wilson) [1807052] - [wireless] mt76: unify channel survey update code (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: switch to a different counter for survey busy time (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: track tx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: track rx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: store current channel survey_state in struct mt76_dev (Jarod Wilson) [1807052] - [wireless] mt76: rename mt76_driver_ops txwi_flags to drv_flags and include tx aligned4 (Jarod Wilson) [1807052] - [wireless] mt76: report rx a-mpdu subframe status (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: remove q_rx field from struct mt7603_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: collect aggregation stats (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: collect aggregation stats (Jarod Wilson) [1807052] - [wireless] mt76: move aggr_stats array in mt76_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: add queue entry in debugfs (Jarod Wilson) [1807052] - [wireless] mt76: move queue debugfs entry to driver specific code (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02u: move mt76x02u_mac_start in mt76x02-usb module (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0u: reset counter starting the device (Jarod Wilson) [1807052] - [wireless] mt76: mt76x2: move mt76x02_mac_reset_counters in mt76x02_mac_start (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: move mac_reset_counter in mt76x02_lib module (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: enable SCS by default (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0e: make array mt76x0_chan_map static const, makes object smaller (Jarod Wilson) [1807052] - [wireless] mt76: usb: add lockdep_assert_held in __mt76u_vendor_request (Jarod Wilson) [1807052] - [wireless] mt76: remove empty flag in mt76_txq_schedule_list (Jarod Wilson) [1807052] - [wireless] mt76: use cancel_delayed_work_sync in mt76_rx_aggr_shutdown (Jarod Wilson) [1807052] - [wireless] mt76: remove aggr_work field from struct mt76_wcid (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix control frame rx in monitor mode (Jarod Wilson) [1807052] - [wireless] iwlwifi: bump FW API to 52 for 22000 series (Jarod Wilson) [1807052] - [wireless] iwlwifi: check kasprintf() return value (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove outdated comment referring to wake lock (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: trace IOVA for iwlwifi_dev_tx_tb (Jarod Wilson) [1807052] - [wireless] iwlwifi: dvm: excessive if in rs_bt_update_lq() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Report tx/rx antennas (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: rx: use rxq queue_size instead of constant (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove left-over non-functional email alias (Jarod Wilson) [1807052] - [wireless] iwlwifi: config: remove max_rx_agg_size (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: make some RX functions static (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: support scan req FW API ver 13 (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: fix support for transmitting SKBs with fraglist (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Remove set but not used variable 'vif', 'dev', 'len' (Jarod Wilson) [1807052] - [wireless] brcmfmac: remove monitor interface when detaching (Jarod Wilson) [1807052] - [wireless] brcmfmac: disable PCIe interrupts before bus reset (Jarod Wilson) [1807052] - [wireless] rtw88: allows to enable/disable HCI link PS mechanism (Jarod Wilson) [1807052] - [wireless] rtw88: pci: enable CLKREQ function if host supports it (Jarod Wilson) [1807052] - [wireless] rtw88: pci: use for loop instead of while loop for DBI/MDIO (Jarod Wilson) [1807052] - [wireless] rtw88: pci: use macros to access PCI DBI/MDIO registers (Jarod Wilson) [1807052] - [wireless] rtlwifi: set proper udelay within rf_serial_read (Jarod Wilson) [1807052] - [wireless] rtlwifi: rf_lock use non-irqsave spin_lock (Jarod Wilson) [1807052] - [wireless] brcmfmac: remove set but not used variable 'mpnum', 'nsp', 'nmp' (Jarod Wilson) [1807052] - [wireless] rtw88: remove duplicated include from ps.c (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Remove set but not used variable 'rsr' (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove unnecessary return (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: wl1251 add device tree support (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix non-ACPI function (Jarod Wilson) [1807052] - [wireless] iwlwifi: 22000: fix some indentation (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove IWL_DEVICE_22560/IWL_DEVICE_FAMILY_22560 (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: sync the iwl_mvm_session_prot_notif layout (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: start CTDP budget from 2400mA (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: don't skip mgmt tid when flushing all tids (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: scan: enable adaptive dwell in p2p (Jarod Wilson) [1807052] - [wireless] iwlwifi: refactor the SAR tables from mvm to acpi (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: support scan req cmd ver 12 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: make new scan req versioning flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix unaligned read of rx_pkt_status (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove redundant assignment to variable bufsz (Jarod Wilson) [1807052] - [wireless] iwlwifi: bump FW API to 51 for 22000 series (Jarod Wilson) [1807052] - [wireless] iwlwifi: FW API: reference enum in docs of modify_mask (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: print rate_n_flags in a pretty format (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: adapt the code to use api ver 11 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: Create function to build scan cmd (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: create function for scan scheduling params (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support dump collection upon assert during D3 (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: make iwl_pcie_gen2_update_byte_tbl static (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: in VHT connection use only VHT capabilities (Jarod Wilson) [1807052] - [wireless] iwlwifi: nvm: update iwl_uhb_nvm_channels (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove else-if in iwl_send_phy_cfg_cmd() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix support for single antenna diversity (Jarod Wilson) [1807052] - [wireless] ath10k: qmi: Sleep for a while before assigning MSA memory (Jarod Wilson) [1807052] - [wireless] ath10k: Revert "ath10k: add cleanup in ath10k_sta_state()" (Jarod Wilson) [1807052] - [wireless] mwifiex: Re-work support for SDIO HW reset (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Add support for Edimax EW-7611ULB (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing enable interrupt flag (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing callback that tests for hw release of buffer (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing code to retrieve RX buffer address (Jarod Wilson) [1807052] - [net] mac80211: Use debugfs_create_xul() helper (Jarod Wilson) [1807052] - [net] cfg80211: VLAN offload support for set_key and set_sta_vlan (Jarod Wilson) [1807052] - [net] mac80211: Shrink the size of ack_frame_id to make room for tx_time_est (Jarod Wilson) [1807052] - [net] mac80211: don't re-parse elems in ieee80211_assoc_success() (Jarod Wilson) [1807052] - [net] mac80211: move store skb ack code to its own function (Jarod Wilson) [1807052] - [wireless] ath10k: disable cpuidle during downloading firmware (Jarod Wilson) [1807052] - [wireless] ath10k: fix potential issue of peer stats allocation (Jarod Wilson) [1807052] - [wireless] ath10k: fix get invalid tx rate for Mesh metric (Jarod Wilson) [1807052] - [wireless] rtw88: signal completion even on firmware-request failure (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential NULL pointer access for firmware (Jarod Wilson) [1807052] - [wireless] rtlwifi: fix memory leak in rtl92c_set_fw_rsvdpagepkt() (Jarod Wilson) [1807052] - [wireless] rt2800: remove errornous duplicate condition (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8225se: remove some unused const variables (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove set but not used variables (Jarod Wilson) [1807052] - [wireless] rtw88: raise LPS threshold to 50, for less power consumption (Jarod Wilson) [1807052] - [wireless] ath5k: eeprom: Remove unneeded variable (Jarod Wilson) [1807052] - [wireless] ath10k: remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] mt7601u: use DEFINE_DEBUGFS_ATTRIBUTE to define debugfs fops (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Drop condition with no effect (Jarod Wilson) [1807052] - [wireless] b43: dma: Fix use true/false for bool type variable (Jarod Wilson) [1807052] - [wireless] b43: main: Fix use true/false for bool type (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192c: Drop condition with no effect (Jarod Wilson) [1807052] - [wireless] rtw88: remove redundant null pointer check on arrays (Jarod Wilson) [1807052] - [wireless] rtw88: avoid FW info flood (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential read outside array boundary (Jarod Wilson) [1807052] - [wireless] rtw88: rearrange if..else statements for rx rate indexes (Jarod Wilson) [1807052] - [wireless] rtw88: use rtw_phy_pg_cfg_pair struct, not arrays (Jarod Wilson) [1807052] - [wireless] rtw88: 8822b: add RFE type 3 support (Jarod Wilson) [1807052] - [wireless] rtw88: fix sparse warnings for power tracking (Jarod Wilson) [1807052] - [wireless] rtw88: fix sparse warnings for DPK (Jarod Wilson) [1807052] - [wireless] net: Fix various misspellings of "connect" (Jarod Wilson) [1807052] - [wireless] net: Fix misspellings of "configure" and "configuration" (Jarod Wilson) [1807052] - [wireless] rtw88: fix GENMASK_ULL for u64 (Jarod Wilson) [1807052] - [wireless] iwlwifi: rx: use new api to get band from rx mpdu (Jarod Wilson) [1807052] - [wireless] iwlwifi: nvm: create function to convert channel index to nl80211_band (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Invert the condition for OFDM rate (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: create function to convert nl80211 band to phy band (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use vzalloc to allocate dumping memory regions (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add user trigger support (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add notification for missed VAP (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix old-style declaration (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: use the new session protection command (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove leftover rs_remove_sta_debugfs() prototype (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for new version for D0I3_END_CMD (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: consider ieee80211 station max amsdu value (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support FW notification dumping in case of missed beacon (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: remove old API and some related code (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: rename external debug configuration file (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support FW response/notification region type (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support domain changing via debugfs (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add periodic trigger new API support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: implement monitor allocation flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: implement time point handling (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add TLV allocation new API support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new API in dump info (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add error tables dumping support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add monitor dumping support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: remove multi buffers infra (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new trigger TLV in dump flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new region TLV in dump flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: load external dbg cfg after internal cfg is loaded (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix warnings for symbol not declared (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: remove set but not used variable 'rate_mask' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove unnecessary NULL check in rtl_regd_init (Jarod Wilson) [1807052] - [wireless] rtw88: add phy_info debugfs to show Tx/Rx physical status (Jarod Wilson) [1807052] - [wireless] rtw88: add set_bitrate_mask support (Jarod Wilson) [1807052] - [wireless] rtw88: Enable 802.11ac beamformee support (Jarod Wilson) [1807052] - [wireless] rtw88: add power tracking support (Jarod Wilson) [1807052] - [wireless] rtw88: use macro to check the current band (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix RTL8723BU connection failure issue after warm reboot (Jarod Wilson) [1807052] - [wireless] rtw88: mark rtw_fw_hdr __packed (Jarod Wilson) [1807052] - [wireless] net/wireless: Delete unnecessary checks before the macro call "dev_kfree_skb" (Jarod Wilson) [1807052] - [wireless] wireless: Remove call to memset after dma_alloc_coherent (Jarod Wilson) [1807052] - [wireless] rtw88: include interrupt.h for tasklet_struct (Jarod Wilson) [1807052] - [wireless] rtw88: use a for loop in rtw_power_mode_change(), not goto (Jarod Wilson) [1807052] - [wireless] rtw88: coex: Set 4 slot mode for A2DP (Jarod Wilson) [1807052] - [wireless] rtw88: pci: config phy after chip info is setup (Jarod Wilson) [1807052] - [wireless] rtw88: Use rtw_write8_set to set SYS_FUNC (Jarod Wilson) [1807052] - [wireless] rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support (Jarod Wilson) [1807052] - [wireless] rtw88: config 8822c multicast address in MAC init flow (Jarod Wilson) [1807052] - [wireless] ath10k: Correct error handling of dma_map_single() (Jarod Wilson) [1807052] - [wireless] ath: rename regulatory rules (Jarod Wilson) [1807052] - [wireless] ath10k: fix memory leak for tpc_stats_final (Jarod Wilson) [1807052] - [wireless] ath10k: fix array out-of-bounds access (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Convert inline routines to little-endian words (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Convert macros that set descriptor (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Replace local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variable 'err' (Jarod Wilson) [1807052] - [wireless] ath10k: fix null dereference on pointer crash_data (Jarod Wilson) [1807052] - [wireless] ath10k: enable transmit data ack RSSI for QCA9884 (Jarod Wilson) [1807052] - [net] mac80211: minstrel_ht: rename prob_ewma to prob_avg, use it for the new average (Jarod Wilson) [1807052] - [net] mac80211: minstrel_ht: replace rate stats ewma with a better moving average (Jarod Wilson) [1807052] - [net] mac80211: minstrel: remove divisions in tx status path (Jarod Wilson) [1807052] - [net] nl80211: trivial: Remove redundant loop (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variable 'cur_tx_wp' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: make arrays static, makes object smaller (Jarod Wilson) [1807052] - [wireless] rtw88: Fix an error message (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: add bluetooth co-existence support for single antenna (Jarod Wilson) [1807052] - [wireless] mwifiex: pcie: Fix memory leak in mwifiex_pcie_alloc_cmdrsp_buf (Jarod Wilson) [1829230 1807052] {CVE-2019-19056} - [wireless] rtlwifi: rtl8723: Remove set but not used variable 'own' (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: Remove set but not used variables 'wifi_busy', 'bt_info_ext' (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: Remove set but not used variable 'result' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove set but not used variable 'h2c_parameter' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove set but not used variables 'v3', 'rtstatus', 'reg_ecc', 'reg_ec4', 'reg_eac', 'b_pathb_ok' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192c: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Remove set but not used variables 'reg_ecc', 'reg_ec4', 'reg_eac', 'b_pathb_ok' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Remove set but not used variables 'rtstatus', 'bd' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Improve TX performance of RTL8723BU on rtl8xxxu driver (Jarod Wilson) [1807052] - [wireless] brcmfmac: add support for SAE authentication offload (Jarod Wilson) [1807052] - [wireless] rtw88: fix error handling when setup efuse info (Jarod Wilson) [1807052] - [wireless] rtw88: fix NSS of hw_cap (Jarod Wilson) [1807052] - [wireless] rtw88: use struct rtw_fw_hdr to access firmware header (Jarod Wilson) [1807052] - [wireless] rtw88: raise firmware version debug level (Jarod Wilson) [1807052] - [wireless] rtw88: configure TX queue EDCA parameters (Jarod Wilson) [1807052] - [wireless] rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption (Jarod Wilson) [1807052] - [wireless] rtw88: fix beaconing mode rsvd_page memory violation issue (Jarod Wilson) [1807052] - [wireless] rtw88: flush hardware tx queues (Jarod Wilson) [1807052] - [wireless] rtw88: add TX-AMSDU support (Jarod Wilson) [1807052] - [wireless] rtw88: report tx rate to mac80211 stack (Jarod Wilson) [1807052] - [wireless] rtw88: take over rate control from mac80211 (Jarod Wilson) [1807052] - [wireless] rtw88: add driver TX queue support (Jarod Wilson) [1807052] - [wireless] rtw88: allows to set RTS in TX descriptor (Jarod Wilson) [1807052] - [wireless] rtw88: check firmware leave lps successfully (Jarod Wilson) [1807052] - [wireless] mac80211: simplify TX aggregation start (Jarod Wilson) [1807052] - [net] mac80211: pass internal sta to ieee80211_tx_frags() (Jarod Wilson) [1807052] - [net] mac80211: IBSS: avoid unneeded return value processing (Jarod Wilson) [1807052] - [wireless] ar5523: check NULL before memcpy() in ar5523_cmd() (Jarod Wilson) [1807052] - [wireless] ath10k: add support for hardware rfkill (Jarod Wilson) [1807052] - [wireless] ath10k: restore QCA9880-AR1A (v1) detection (Jarod Wilson) [1807052] - [wireless] ath10k: fix offchannel tx failure when no ath10k_mac_tx_frm_has_freq (Jarod Wilson) [1807052] - [wireless] cw1200: Fix a signedness bug in cw1200_load_firmware() (Jarod Wilson) [1807052] - [wireless] rtw88: remove misleading module parameter rtw_fw_support_lps (Jarod Wilson) [1807052] - [wireless] rtw88: add deep PS PG mode for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: select deep PS mode when module is inserted (Jarod Wilson) [1807052] - [wireless] rtw88: not to enter LPS by coex strategy (Jarod Wilson) [1807052] - [wireless] rtw88: add deep power save support (Jarod Wilson) [1807052] - [wireless] rtw88: leave PS state for dynamic mechanism (Jarod Wilson) [1807052] - [wireless] rtw88: LPS enter/leave should be protected by lock (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused lps state check helper (Jarod Wilson) [1807052] - [wireless] rtw88: not to control LPS by each vif (Jarod Wilson) [1807052] - [wireless] rtw88: not to enter or leave PS under IRQ (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset H2C queue indexes in a single write (Jarod Wilson) [1807052] - [wireless] rtw88: remove redundant flag check helper function (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variables 'short_gi', 'buf_len' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove set but not used variables 'dataempty', 'hoffset' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove set but not used variable 'rtstate' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: prevent leaking urb (Jarod Wilson) [1829887 1807052] {CVE-2019-19068} - [wireless] net/wireless: Use kmemdup rather than duplicating its implementation (Jarod Wilson) [1807052] - [wireless] ath9k_htc: Discard undersized packets (Jarod Wilson) [1807052] - [wireless] ath9k_htc: Modify byte order for an error message (Jarod Wilson) [1807052] - [wireless] ath9k_hw: fix uninitialized variable data (Jarod Wilson) [1807052] - [wireless] ath10k: fix backtrace on coredump (Jarod Wilson) [1807052] - [wireless] ath10k: coredump: fix IRAM addr for QCA9984, QCA4019, QCA9888 and QCA99x0 (Jarod Wilson) [1807052] - [wireless] ath10k: switch to ieee80211_tx_dequeue_ni (Jarod Wilson) [1807052] - [wireless] ath10k: change sw version print format to hex (Jarod Wilson) [1807052] - [wireless] ath10k: print supported MCS rates within service ready event (Jarod Wilson) [1807052] - [wireless] ath10k: print service ready returned channel range (Jarod Wilson) [1807052] - [wireless] ath10k: add 2ghz channel arguments to service ready structure (Jarod Wilson) [1807052] - [wireless] ath9k: remove unused including (Jarod Wilson) [1807052] - [wireless] mwifiex: use 'total_ie_len' in mwifiex_update_bss_desc_with_ie() (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove excessive check in _rtl_ps_inactive_ps() (Jarod Wilson) [1807052] - [wireless] rtlwifi: prevent memory leak in rtl_usb_probe (Jarod Wilson) [1829850 1807052] {CVE-2019-19063} - [wireless] rtlwifi: rtl8723ae: Remove unused 'rtstatus' variable (Jarod Wilson) [1807052] - [wireless] mt7601u: fix bbp version check in mt7601u_wait_bbp_ready (Jarod Wilson) [1807052] - [wireless] rtw88: 8822c: fix boolreturn.cocci warnings (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove duplicated if condition (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix suspend/resume when power is cut off (Jarod Wilson) [1807052] - [wireless] brcmfmac: don't WARN when there are no requests (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove a useless test (Jarod Wilson) [1807052] - [wireless] brcmfmac: send port authorized event for FT-802.1X (Jarod Wilson) [1807052] - [wireless] ath10k: fix memory leak (Jarod Wilson) [1807052] - [wireless] ath10k: remove the warning of sdio not full support (Jarod Wilson) [1807052] - [wireless] ath: Use dev_get_drvdata where possible (Jarod Wilson) [1807052] - [wireless] ath: fix various spelling mistakes (Jarod Wilson) [1807052] - [wireless] ath10k: fix missing checks for bmi reads and writes (Jarod Wilson) [1807052] - [wireless] ath10k: Add support to provide higher range mem chunks in wmi init command (Jarod Wilson) [1807052] - [wireless] ath10k: Add peer param map for tlv and non-tlv (Jarod Wilson) [1807052] - [wireless] ath10k: Enable MSA region dump support for WCN3990 (Jarod Wilson) [1807052] - [wireless] ath10k: Add xo calibration support for wifi rf clock (Jarod Wilson) [1807052] - [wireless] ath10k: fix spelling mistake "eanble" -> "enable" (Jarod Wilson) [1807052] - [wireless] ath10k: add cleanup in ath10k_sta_state() (Jarod Wilson) [1807052] - [wireless] ath10k: revalidate the msa region coming from firmware (Jarod Wilson) [1807052] - [wireless] ath10k: use ath10k_pci_soc_ functions for all warm_reset instances (Jarod Wilson) [1807052] - [wireless] ath10k: Use ARRAY_SIZE (Jarod Wilson) [1807052] - [wireless] ath10k: avoid leaving .bss_info_changed prematurely (Jarod Wilson) [1807052] - [wireless] ath10k: Use standard bulk clock API in snoc (Jarod Wilson) [1807052] - [wireless] ath10k: Use standard regulator bulk API in snoc (Jarod Wilson) [1807052] - [wireless] ath10k: snoc: skip regulator operations (Jarod Wilson) [1807052] - [wireless] ath10k: Fix HOST capability QMI incompatibility (Jarod Wilson) [1807052] - [wireless] ath10k: Check if station exists before forwarding tx airtime report (Jarod Wilson) [1807052] - [include] include/linux/units.h: add helpers for kelvin to/from Celsius conversion (Jarod Wilson) [1807052]- [x86] x86/PCI: Define to_pci_sysdata() even when !CONFIG_PCI (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add two VMD Device IDs (Myron Stowe) [1788364 1783436] - [pci] x86/PCI: Expose VMD's pci_dev in struct pci_sysdata (Myron Stowe) [1788364 1783436] - [x86] x86/PCI: Add to_pci_sysdata() helper (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add device id for VMD device 8086:9A0B (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add bus 224-255 restriction decode (Myron Stowe) [1788364 1783436] - [fs] fuse: copy_file_range needs to strip setuid bits and update timestamps (Eric Sandeen) [1721881] - [fs] vfs: allow copy_file_range to copy across devices (Eric Sandeen) [1721881] - [fs] vfs: add missing checks to copy_file_range (Eric Sandeen) [1721881] - [mm] vfs: remove redundant checks from generic_remap_checks() (Eric Sandeen) [1721881] - [fs] vfs: introduce generic_file_rw_checks() (Eric Sandeen) [1721881] - [fs] vfs: no fallback for ->copy_file_range (Eric Sandeen) [1721881] - [fs] vfs: introduce generic_copy_file_range() (Eric Sandeen) [1721881] - [ptp] ptp: add VMware virtual PTP clock driver (Prarit Bhargava) [1829706] - [powerpc] powerpc/powernv/ioda: Handle failures correctly in pnv_pci_ioda_iommu_bypass_supported() (Michael Roth) [1805101] - [powerpc] powerpc/pseries/dma: Enable SWIOTLB (Michael Roth) [1805101] - [powerpc] powerpc/pseries/dma: Allow SWIOTLB (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Fix build with IOMMU_API=n (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Remove unused pnv_npu_try_dma_set_bypass() function (Michael Roth) [1805101] - [powerpc] powerpc/dma: Fix invalid DMA mmap behavior (Michael Roth) [1805101] - [powerpc] powerpc/dma: trim the fat from (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove set_dma_offset (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove get_dma_offset (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the generic direct mapping bypass (Michael Roth) [1805101] - [powerpc] powerpc/powernv/npu: Remove NPU DMA ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the dma_direct mapping routines (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the dma-direct allocator for coherent platforms (Michael Roth) [1805101] - [powerpc] swiotlb: remove swiotlb_dma_supported (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_dma_supported (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_get_required_mask (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_mmap_coherent (Michael Roth) [1805101] - [powerpc] powerpc/dma: use phys_to_dma instead of get_dma_offset (Michael Roth) [1805101] - [powerpc] dma-mapping, powerpc: simplify the arch dma_set_mask override (Michael Roth) [1805101] - [powerpc] powerpc/dma: fix an off-by-one in dma_capable (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove max_direct_dma_addr (Michael Roth) [1805101] - [powerpc] powerpc/dma: move pci_dma_dev_setup_swiotlb to fsl_pci.c (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove get_pci_dma_ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the iommu fallback for coherent allocations (Michael Roth) [1805101] - [powerpc] powerpc/pci: remove the dma_set_mask pci_controller ops methods (Michael Roth) [1805101] - [misc] cxl: drop the dma_set_mask callback from vphb (Michael Roth) [1805101] - [powerpc] KABI: re-use deprecated field for iommu_bypass_supported function pointer (Michael Roth) [1805101] - [powerpc] powerpc/dma: stop overriding dma_get_required_mask (Michael Roth) [1805101] - [dma] KABI: add fake includes for headers used in arch/powerpc/kernel/dma.c (Michael Roth) [1805101] - [powerpc] powerpc/powernv: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Remove PCI_MSI ifdef checks (Michael Roth) [1805101] - [powerpc] powerpc/powernv: remove pnv_npu_dma_set_mask (Michael Roth) [1805101] - [powerpc] powerpc/powernv: remove pnv_pci_ioda_pe_single_vendor (Michael Roth) [1805101] - [powerpc] powerpc/dart: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/dart: remove dead cleanup code in iommu_init_early_dart (Michael Roth) [1805101] - [powerpc] powerpc/cell: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/cell: move dma direct window setup out of dma_configure (Michael Roth) [1805101] - [powerpc] powerpc/pseries: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/pseries: unwind dma_get_required_mask_pSeriesLP a bit (Michael Roth) [1805101] - [powerpc] powerpc/dma: handle iommu bypass in dma_iommu_ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: untangle vio_dma_mapping_ops from dma_iommu_ops (Michael Roth) [1805101] - [dma] dma-direct: we might need GFP_DMA for 32-bit dma masks (Michael Roth) [1805101] - [powerpc] powerpc/dma: split the two __dma_alloc_coherent implementations (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused dma_iommu_ops export (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused ISA_DMA_THRESHOLD export (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused ARCH_HAS_DMA_MMAP_COHERENT define (Michael Roth) [1805101] - [powerpc] powerpc/dma: properly wire up the unmap_page and unmap_sg methods (Michael Roth) [1805101] - [powerpc] powerpc: allow NOT_COHERENT_CACHE for amigaone (Michael Roth) [1805101] - [powerpc] powerpc/fadump: consider reserved ranges while reserving memory (Steve Best) [1813701] - [powerpc] powerpc/fadump: use static allocation for reserved memory ranges (Steve Best) [1813701] - [fs] audit: Report suspicious O_CREAT usage (partial) (Eric Sandeen) [1797843] - [fs] vfs: fix do_last() regression (Eric Sandeen) [1797843] - [fs] do_last(): fetch directory ->i_mode and ->i_uid before it's too late (Eric Sandeen) [1797843] - [fs] namei: allow restricted O_CREAT of FIFOs and regular files (Eric Sandeen) [1797843] - [netdrv] fm10k: use txqueue parameter in fm10k_tx_timeout (Neil Horman) [1781387] - [netdrv] fm10k: Use sizeof_field() macro (Neil Horman) [1781387] - [netdrv] fm10k: update driver version to match out-of-tree (Neil Horman) [1781387] - [netdrv] fm10k: add support for ndo_get_vf_stats operation (Neil Horman) [1781387] - [netdrv] fm10k: add missing field initializers to TLV attributes) (Neil Horman) [1781387] - [netdrv] fm10k: use a local variable for the frag pointer (Neil Horman) [1781387] - [netdrv] ethernet: Delete unnecessary checks before the macro call "dev_kfree_skb" (Neil Horman) [1781387] - [netdrv] fm10k: no need to check return value of debugfs_create functions (Neil Horman) [1781387] - [security] KEYS: Avoid false positive ENOMEM error on key read (Waiman Long) [1807693] - [security] KEYS: Don't write out to userspace while holding key semaphore (Waiman Long) [1807693] - [security] selinux: allow per-file labeling for CephFS (Ondrej Mosnacek) [1823764] - [scsi] scsi: qedi: make qedi_ll2_buf_size static (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Fix termination timeouts in session logout (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add modules param to enable qed iSCSI debug (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Do not flush offload work if ARP not resolved (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Use correct msix count for fastpath vectors (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Avoid unnecessary endpoint allocation on link down (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Remove additional char from boot target iqnname (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add PCI shutdown handler support (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add MFW error recovery process (Nilesh Javali) [1792111] - [netdrv] ibmvnic: Skip fatal error reset after passive init (Steve Best) [1830989] - [ata] ahci: Add Intel Comet Lake PCH-V PCI ID (David Milburn) [1802690] - [ata] ahci: Add Intel Comet Lake PCH-H PCI ID (David Milburn) [1802690] - [ata] ahci: Add Intel Comet Lake H RAID PCI ID (David Milburn) [1802690] - [x86] x86, sched: Move check for CPU type to caller function (Prarit Bhargava) [1828260] - [x86] x86, sched: Don't enable static key when starting secondary CPUs (Prarit Bhargava) [1828260] - [x86] x86, sched: Account for CPUs with less than 4 cores in freq. invariance (Prarit Bhargava) [1828260] - [x86] x86, sched: Bail out of frequency invariance if base frequency is unknown (Prarit Bhargava) [1828260] - [lib] scsi: klist: Make it safe to use klists in atomic context (Waiman Long) [1829027] - [char] random: try to actively add entropy rather than passively wait for it (Neil Horman) [1778762] - [md] dm writecache: fix data corruption when reloading the target (Mike Snitzer) [1830129] - [kernel] smp: Allow smp_call_function_single_async() to insert locked csd (Peter Xu) [1830014] - [scsi] scsi: ibmvscsi: Fix WARN_ON during event pool release (Steve Best) [1829242] - [block] block: avoid to check null profile pointer to see if it is in 3rd party module (Ming Lei) [1829464] - [tools] perf scripting perl: Add common_callchain to fix argument order (Michael Petlan) [1809191] - [netdrv] ionic: fix unused assignment (Jonathan Toppins) [1780645] - [netdrv] ionic: add dynamic_debug header (Jonathan Toppins) [1780645] - [netdrv] ionic: set station addr only if needed (Jonathan Toppins) [1780645] - [netdrv] ionic: replay filters after fw upgrade (Jonathan Toppins) [1780645] - [netdrv] ionic: remove lifs on fw reset (Jonathan Toppins) [1780645] - [netdrv] ionic: disable the queues on link down (Jonathan Toppins) [1780645] - [netdrv] ionic: check for queues before deleting (Jonathan Toppins) [1780645] - [netdrv] ionic: clean tx queue of unfinished requests (Jonathan Toppins) [1780645] - [netdrv] ionic: move irq request to qcq alloc (Jonathan Toppins) [1780645] - [netdrv] ionic: move debugfs add/delete to match alloc/free (Jonathan Toppins) [1780645] - [netdrv] ionic: check for linkup in watchdog (Jonathan Toppins) [1780645] - [netdrv] ionic: decouple link message from netdev state (Jonathan Toppins) [1780645] - [netdrv] ionic: check for NULL structs on teardown (Jonathan Toppins) [1780645] - [netdrv] ionic: clean irq affinity on queue deinit (Jonathan Toppins) [1780645] - [netdrv] ionic: ignore eexist on rx filter add (Jonathan Toppins) [1780645] - [netdrv] ionic: only save good lif dentry (Jonathan Toppins) [1780645] - [netdrv] ionic: leave dev cmd request contents alone on FW timeout (Jonathan Toppins) [1780645] - [netdrv] ionic: add timeout error checking for queue disable (Jonathan Toppins) [1780645] - [netdrv] ionic: make spdxcheck.py happy (Jonathan Toppins) [1780645] - [netdrv] ionic: add decode for IONIC_RC_ENOSUPP (Jonathan Toppins) [1780645] - [netdrv] ionic: print data for unknown xcvr type (Jonathan Toppins) [1780645] - [netdrv] ionic: remove adminq napi instance (Jonathan Toppins) [1780645] - [netdrv] ionic: deinit rss only if selected (Jonathan Toppins) [1780645] - [netdrv] ionic: stop devlink warn on mgmt device (Jonathan Toppins) [1780645] - [netdrv] net: ionic: Use scnprintf() for avoiding potential buffer overflow (Jonathan Toppins) [1780645] - [netdrv] netdev:pass the stuck queue to the timeout handler (Jonathan Toppins) [1780645] - [netdrv] ionic: drop ethtool driver version (Jonathan Toppins) [1780645] - [netdrv] ionic: add support for device id 0x1004 (Jonathan Toppins) [1780645] - [netdrv] ionic: print pci bus lane info (Jonathan Toppins) [1780645] - [netdrv] ionic: support ethtool rxhash disable (Jonathan Toppins) [1780645] - [netdrv] ionic: clean up bitflag usage (Jonathan Toppins) [1780645] - [netdrv] ionic: improve irq numa locality (Jonathan Toppins) [1780645] - [netdrv] ionic: remove pragma packed (Jonathan Toppins) [1780645] - [netdrv] ionic: keep ionic dev on lif init fail (Jonathan Toppins) [1780645] - [netdrv] ionic: fix vf op lock usage (Jonathan Toppins) [1780645] - [netdrv] ionic: let core reject the unsupported coalescing parameters (Jonathan Toppins) [1780645] - [netdrv] ionic: fix fw_status read (Jonathan Toppins) [1780645] - [netdrv] ionic: use new helper tcp_v6_gso_csum_prep (Jonathan Toppins) [1780645] - [netdrv] ionic: fix rxq comp packet type mask (Jonathan Toppins) [1780645] - [netdrv] ionic: clear compiler warning on hb use before set (Jonathan Toppins) [1780645] - [netdrv] ionic: restrict received packets to mtu size (Jonathan Toppins) [1780645] - [netdrv] ionic: add Rx dropped packet counter (Jonathan Toppins) [1780645] - [netdrv] ionic: drop use of subdevice tags (Jonathan Toppins) [1780645] - [netdrv] ionic: support sr-iov operations (Jonathan Toppins) [1780645] - [netdrv] ionic: ionic_if bits for sr-iov support (Jonathan Toppins) [1780645] - [netdrv] ionic: keep users rss hash across lif reset (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove set but not used variable 'sg_desc' (Jonathan Toppins) [1780645] - [netdrv] ionic: update driver version (Jonathan Toppins) [1780645] - [netdrv] ionic: implement support for rx sgl (Jonathan Toppins) [1780645] - [netdrv] ionic: add a watchdog timer to monitor heartbeat (Jonathan Toppins) [1780645] - [netdrv] ionic: add heartbeat check (Jonathan Toppins) [1780645] - [netdrv] ionic: reverse an interrupt coalesce calculation (Jonathan Toppins) [1780645] - [netdrv] ionic: fix up struct name comments (Jonathan Toppins) [1780645] - [netdrv] dynamic_debug: provide dynamic_hex_dump stub (Jonathan Toppins) [1780645] - [netdrv] ionic: fix stats memory dereference (Jonathan Toppins) [1780645] - [netdrv] ionic: add lif_quiesce to wait for queue activity to stop (Jonathan Toppins) [1780645] - [netdrv] ionic: implement ethtool set-fec (Jonathan Toppins) [1780645] - [netdrv] ionic: report users coalesce request (Jonathan Toppins) [1780645] - [netdrv] ionic: use wait_on_bit_lock() rather than open code (Jonathan Toppins) [1780645] - [netdrv] ionic: simplify returns in devlink info (Jonathan Toppins) [1780645] - [netdrv] ionic: select CONFIG_NET_DEVLINK (Jonathan Toppins) [1780645] - [netdrv] ionic: Fix an error code in ionic_lif_alloc() (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove unnecessary ternary operator in ionic_debugfs_add_ident (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove unused including (Jonathan Toppins) [1780645] - [netdrv] ionic: Add coalesce and other features (Jonathan Toppins) [1780645] - [netdrv] ionic: Add RSS support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add driver stats (Jonathan Toppins) [1780645] - [netdrv] ionic: Add netdev-event handling (Jonathan Toppins) [1780645] - [netdrv] ionic: Add Tx and Rx handling (Jonathan Toppins) [1780645] - [netdrv] ionic: Add initial ethtool support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add async link status check and basic stats (Jonathan Toppins) [1780645] - [netdrv] ionic: Add Rx filter and rx_mode ndo support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add management of rx filters (Jonathan Toppins) [1780645] - [netdrv] ionic: Add the basic NDO callbacks for netdev support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add notifyq support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add adminq action (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic adminq support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add interrupts and doorbells (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic lif support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add port management commands (Jonathan Toppins) [1780645] - [netdrv] ionic: Add hardware init and device commands (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic framework for IONIC Network device driver (Jonathan Toppins) [1780645] - [netdrv] net: sfp: add more extended compliance codes (Jonathan Toppins) [1780645] - [scsi] scsi: core: Add DID_ALLOC_FAILURE and DID_MEDIUM_ERROR to hostbyte_table (Maurizio Lombardi) [1819061] - [netdrv] igc: Add debug messages to MAC filter code (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_mac_entry_can_be_used() (Corinna Vinschen) [1781384] - [netdrv] igc: Remove igc_*_mac_steering_filter() wrappers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove IGC_MAC_STATE_QUEUE_STEERING (Corinna Vinschen) [1781384] - [netdrv] igc: Remove 'queue' check in igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Improve address check in igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_rar_set_index() (Corinna Vinschen) [1781384] - [netdrv] igc: Fix igc_uc_unsync() (Corinna Vinschen) [1781384] - [netdrv] igc: Change igc_add_mac_filter() returning value (Corinna Vinschen) [1781384] - [netdrv] igc: Check unsupported flag in igc_add_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Remove duplicate code in MAC filtering logic (Corinna Vinschen) [1781384] - [netdrv] igc: Add new device IDs for i225 part (Corinna Vinschen) [1781384] - [netdrv] igc: Fix default MAC address filter override (Corinna Vinschen) [1781384] - [netdrv] igc: Remove dead code related to flower filter (Corinna Vinschen) [1781384] - [netdrv] igc: Fix NFC queue redirection support (Corinna Vinschen) [1781384] - [netdrv] igc: Remove copper fiber switch control (Corinna Vinschen) [1781384] - [netdrv] igc: Enable NETIF_F_HW_TC flag (Corinna Vinschen) [1781384] - [netdrv] igc: Fix double definition (Corinna Vinschen) [1781384] - [netdrv] igc: Fix overwrites when dumping registers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove forward declaration (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused CTRL_EXT_LINK_MODE_MASK (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused MDIC_DEST mask (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for ETF offloading (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for taprio offloading (Corinna Vinschen) [1781384] - [netdrv] igc: Add GSO partial support (Corinna Vinschen) [1781384] - [netdrv] net: igc: let core reject the unsupported coalescing parameters (Corinna Vinschen) [1781384] - [netdrv] intel: Replace zero-length array with flexible-array member (Corinna Vinschen) [1781384] - [netdrv] igc: Add comment (Corinna Vinschen) [1781384] - [netdrv] igc: Add WOL support (Corinna Vinschen) [1781384] - [netdrv] igc: Add pcie error handler support (Corinna Vinschen) [1781384] - [netdrv] igc: Complete to commit Add basic skeleton for PTP (Corinna Vinschen) [1781384] - [netdrv] igc: Fix the typo in comment (Corinna Vinschen) [1781384] - [netdrv] igc: Add dump options (Corinna Vinschen) [1781384] - [netdrv] igc: Complete to commit Add legacy power management support (Corinna Vinschen) [1781384] - [netdrv] igc: make non-global functions static (Corinna Vinschen) [1781384] - [netdrv] igc: Add PHY power management control (Corinna Vinschen) [1781384] - [netdrv] RHEL-only: Revert "igc: add additional delay during phy hw reset" (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for TSO (Corinna Vinschen) [1781384] - [netdrv] igc: Add SKU for i225 device (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused definition (Corinna Vinschen) [1781384] - [netdrv] igc: Fix typo in a comment (Corinna Vinschen) [1781384] - [netdrv] igc: Use Start of Packet signal from PHY for timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for ethtool GET_TS_INFO command (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for TX timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for RX timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add basic skeleton for PTP (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_sw_init (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_write_itr (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_assign_vector (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_free_q_vector (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_free_q_vectors (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_irq_disable (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_irq_enable (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_configure_msix (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_rx_mode (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_interrupt_capability (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_alloc_mapped_page (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_configure (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_default_mac_filter (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_power_down_link (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_clean_tx_ring (Corinna Vinschen) [1781384] - [netdrv] igc: Remove serdes comments from a description of methods (Corinna Vinschen) [1781384] - [netdrv] igc: Add legacy power management support (Corinna Vinschen) [1781384] - [netdrv] igc: Add 64 bit DMA access support (Corinna Vinschen) [1781384] - [netdrv] igc: Fix parameter descriptions for a several functions (Corinna Vinschen) [1781384] - [netdrv] igc: Fix the parameter description for igc_alloc_rx_buffers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove excess parameter description from igc_is_non_eop (Corinna Vinschen) [1781384] - [netdrv] igc: Prefer to use the pci_release_mem_regions method (Corinna Vinschen) [1781384] - [netdrv] igc: Improve the DMA mapping flow (Corinna Vinschen) [1781384] - [netdrv] igc: Add scatter gather support (Corinna Vinschen) [1781384] - [netdrv] treewide: Use sizeof_field() macro (Corinna Vinschen) [1781384] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Corinna Vinschen) [1781384] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781384] - [netdrv] igb/igc: Don't warn on fatal read failures when the device is removed (Corinna Vinschen) [1781384] - [netdrv] net: igb: let core reject the unsupported coalescing parameters (Corinna Vinschen) [1781381] - [netdrv] intel: Replace zero-length array with flexible-array member (Corinna Vinschen) [1781381] - [netdrv] igb: Fix SGMII SFP module discovery for 100FX/LX (Corinna Vinschen) [1781381] - [netdrv] igb: dont drop packets if rx flow control is enabled (Corinna Vinschen) [1781381] - [netdrv] treewide: Use sizeof_field() macro (Corinna Vinschen) [1781381] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Corinna Vinschen) [1781381] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781381] - [netdrv] igb: Fix constant media auto sense switching when no cable is connected (Corinna Vinschen) [1781381] - [netdrv] igb: Enable media autosense for the i350 (Corinna Vinschen) [1781381] - [netdrv] igb/igc: Don't warn on fatal read failures when the device is removed (Corinna Vinschen) [1781381] - [netdrv] igb: Add UDP segmentation offload support (Corinna Vinschen) [1781381] - [netdrv] net: igbvf: reject unsupported coalescing params (Corinna Vinschen) [1781382] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781382] - [ata] ahci: Do not export local variable ahci_em_messages (Prarit Bhargava) [1826320] - [scripts] modpost: check for static EXPORT_SYMBOL* functions (Prarit Bhargava) [1826320] - [kernel] torture: Remove exporting of internal functions (Prarit Bhargava) [1826320] - [input] Input: synaptics-rmi4 - remove the exporting of rmi_2d_sensor_set_input_params (Prarit Bhargava) [1826320] - [netdrv] net: phy: make exported variables non-static (Prarit Bhargava) [1826320] - [scsi] scsi: libsas: remove the exporting of sas_wait_eh (Prarit Bhargava) [1826320] - [drm] drm/client: remove the exporting of drm_client_close (Prarit Bhargava) [1826320] - [scripts] modpost: always show verbose warning for section mismatch (Prarit Bhargava) [1826320] - [net] netfilter: nf_nat_ipv4: remove obsolete EXPORT_SYMBOL (Prarit Bhargava) [1826320] - [crypto] crypto: skcipher - remove the exporting of skcipher_walk_next (Prarit Bhargava) [1826320] - [scsi] scsi: scsi_debug: Fix a recently introduced regression (Ming Lei) [1822001] - [block] scsi: block: remove bidi support (Ming Lei) [1822001] - [scsi] scsi: block: remove req->special (Ming Lei) [1822001] - [scsi] scsi: stop setting up request->special (Ming Lei) [1822001] - [scsi] scsi: remove bidirectional command support (Ming Lei) [1822001] - [scsi] scsi: remove the SCSI OSD library (Ming Lei) [1822001] - [fs] scsi: fs: remove exofs (Ming Lei) [1822001] - [block] scsi: bsg-lib: handle bidi requests without block layer help (Ming Lei) [1822001] - [block] scsi: bsg: refactor bsg_ioctl (Ming Lei) [1822001] - [netdrv] sfc: fix XDP-redirect in this driver (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: support configuring vf spoofchk on EF10 VFs (Jarod Wilson) [1796582 1788753 1684003] - [netdrv] sfc: ethtool: Refactor to remove fallthrough comments in case blocks (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Replace zero-length array with flexible-array member (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove unused variable 'efx_default_channel_type' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: elide assignment of skb (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some ARFS code out of headers (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: only schedule asynchronous filter work if needed (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: detach from cb_page in efx_copy_channel() (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: complete the next packet when we receive a timestamp (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix timestamp reconstruction at 16-bit rollover points (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move mcdi filtering code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: create header for mcdi filtering code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: rename mcdi filtering functions/structs (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove duplicated include from efx.c (Jarod Wilson) [1796582 1788753] - [netdrv] sfc/ethtool_common: Make some function to static (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove set but not used variable 'nic_data' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove duplicated include from ef10.c (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move RPS code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move yet more functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move RSS code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move a couple more functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some ethtool code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move various functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more rx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more tx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: refactor selftest work init code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI logging device attribute (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: conditioned some functionality (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI receive queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI transmit queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI event queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI VI alloc/free code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more MCDI port code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some MCDI port utility functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some port link state/caps code (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move common tx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move common rx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move event queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel interrupt management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel alloc/removal code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel start/stop code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some channel-related code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move struct init and fini code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some device reset code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move datapath management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move mac configuration and status functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move reset workqueue code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: further preparation for code split (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add new headers in preparation for code split (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove ioremap_nocache and devm_ioremap_nocache (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Remove unnecessary dependencies on I2C (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: avoid duplicate error handling code in 'efx_ef10_sriov_set_vf_mac()' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Include XDP packet headroom in buffer step size (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix channel allocation with brute force (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix build without CONFIG_RFS_ACCEL (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: do ARFS expiry work occasionally even without NAPI poll (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add statistics for ARFS (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: suppress MCDI errors from ARFS (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: change ARFS expiry mechanism (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Only cancel the PPS workqueue if it exists (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: trace_xdp_exception on XDP failure (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add XDP counters to ethtool stats (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: handle XDP_TX outcomes of XDP eBPF programs (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: allocate channels for XDP tx queues (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Enable setting of xdp_prog (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: perform XDP processing on received packets (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: support encapsulation of xdp_frames in efx_tx_buffer (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: use the new __netdev_tx_sent_queue BQL optimisation (Jarod Wilson) [1796582 1788753] - [netdrv] net/sfc: Use skb_frag_off accessors (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: phase out dma_zalloc_coherent() (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove redundant variable old_vlan (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: Convert random_ether_addr to eth_random_addr (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: batch up RX delivery (Jarod Wilson) [1796582 1788753] - [netdrv] net: mlx4: Use scnprintf() for avoiding potential buffer overflow (Alaa Hleihel) [1789363] - [infiniband] IB/mlx4: Fix leak in id_map_find_del (Alaa Hleihel) [1789363] - [infiniband] IB/mlx4: Fix memory leak in add_gid error flow (Alaa Hleihel) [1789363] - [include] mlx4: Bump up MAX_MSIX from 64 to 128 (Alaa Hleihel) [1789363] - [infiniband] RDMA/mlx4: use true, false for bool variable (Alaa Hleihel) [1789363] - [infiniband] RDMA/mlx4: Redo TX checksum offload in line with docs (Alaa Hleihel) [1789363] - [netdrv] mlx4: use new txqueue timeout argument (Alaa Hleihel) [1789363] - [netdrv] treewide: Use sizeof_field() macro (Alaa Hleihel) [1789363 1789362] - [infiniband] IB/mlx4: Update HW GID table while adding vlan GID (Alaa Hleihel) [1789363 1789362] - [netdrv] net/mlx4_en: ethtool: make array modes static const, makes object smaller (Alaa Hleihel) [1789363 1789361] - [infiniband] RDMA/mlx4: Annotate boolean arguments as bool and not int (Alaa Hleihel) [1789363 1789361] - [netdrv] mlx4: avoid large stack usage in mlx4_init_hca() (Alaa Hleihel) [1789363 1789361] - [infiniband] RDMA/mlx4: Untag user pointers in mlx4_get_umem_mr (Alaa Hleihel) [1789363 1789361] - [netdrv] net: Use skb accessors in network drivers (Alaa Hleihel) [1789363 1789361]- [net] ip_vti: receive ipip packet by calling ip_tunnel_rcv (Xin Long) [1815554] - [net] xfrm: call xfrm_output_gso when inner_protocol is set in xfrm_output (Xin Long) [1815968] - [net] sched: Fix hw_stats_type setting in pedit loop (Ivan Vecera) [1817156] - [net] sched: set the hw_stats_type in pedit loop (Ivan Vecera) [1817156] - [include] flow_offload: fix allowed types check (Ivan Vecera) [1817156] - [net] sched: act: allow user to specify type of HW stats for a filter (Ivan Vecera) [1817156] - [net] flow_offload: pass action cookie through offload structures (Ivan Vecera) [1817156] - [netdrv] flow_offload: introduce "disabled" HW stats type and allow it in mlxsw (Ivan Vecera) [1817156] - [include] flow_offload: introduce "delayed" HW stats type and allow it in mlx5 (Ivan Vecera) [1817156] - [netdrv] flow_offload: introduce "immediate" HW stats type and allow it in mlxsw (Ivan Vecera) [1817156] - [netdrv] mlxsw: restrict supported HW stats type to "any" (Ivan Vecera) [1817156] - [netdrv] mlxsw: spectrum_flower: Do not allow mixing HW stats types for actions (Ivan Vecera) [1817156] - [netdrv] flow_offload: check for basic action hw stats type (Ivan Vecera) [1817156] - [include] flow_offload: Introduce offload of HW stats type (Ivan Vecera) [1817156] - [net] netfilter: nf_tables: use-after-free in dynamic operations (Phil Sutter) [1822577] - [net] devlink: Add health recover notifications on devlink flows (Petr Oros) [1821169] - [net] devlink: add devink notification when reporter update health state (Petr Oros) [1821169] - [net] devlink: add support for reporter recovery completion (Petr Oros) [1821169] - [net] devlink: Add new "enable_roce" generic device param (Petr Oros) [1805955] - [netdrv] netdevsim: use __GFP_NOWARN to avoid memalloc warning (Petr Oros) [1817157] - [tools] selftests: add netdevsim devlink health tests (Petr Oros) [1817157] - [netdrv] netdevsim: implement couple of testing devlink health reporters (Petr Oros) [1817157] - [net] devlink: propagate extack down to health reporter ops (Petr Oros) [1817157] - [net] devlink: don't do reporter recovery if the state is healthy (Petr Oros) [1817157] - [net] xsk: Fix out of boundary write in __xsk_rcv_memcpy (Jiri Benc) [1819630] - [samples] bpf: Allow for -ENETDOWN in xdpsock (Jiri Benc) [1819630] - [samples] bpf: Drop doubled variable declaration in xdpsock (Jiri Benc) [1819630] - [netdrv] i40e: Relax i40e_xsk_wakeup's return value when PF is busy (Jiri Benc) [1819630] - [netdrv] net/ixgbe: Fix concurrency issues between config flow and XSK (Jiri Benc) [1819630] - [netdrv] net/i40e: Fix concurrency issues between config flow and XSK (Jiri Benc) [1819630] - [net] xsk: Add rcu_read_lock around the XSK wakeup (Jiri Benc) [1819630] - [net] fix installing orphaned programs (Jiri Benc) [1819630] - [tools] libbpf: Don't use kernel-side u32 type in xsk.c (Jiri Benc) [1819630] - [tools] libbpf: Fix compatibility for kernels without need_wakeup (Jiri Benc) [1819630] - [net] xsk: Fix crash in poll when device does not support ndo_xsk_wakeup (Jiri Benc) [1819630] - [kernel] bpf/xskmap: Return ERR_PTR for failure case instead of NULL. (Jiri Benc) [1819630] - [net] xdp: convert put_page() to put_user_page*() (Jiri Benc) [1819630] - [net] xdp: mm: introduce page_size() (Jiri Benc) [1819630] - [net] xsk: relax UMEM headroom alignment (Jiri Benc) [1819630] - [samples] bpf: fix xdpsock l2fwd tx for unaligned mode (Jiri Benc) [1819630] - [netdrv] ixgbe: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] ixgbe: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] i40e: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] i40e: fix xdp handle calculations (Jiri Benc) [1819630] - [net] xsk: use state member for socket synchronization (Jiri Benc) [1819630] - [documentation] doc/af_xdp: include unaligned chunk case (Jiri Benc) [1819630] - [samples] bpf: use hugepages in xdpsock app (Jiri Benc) [1819630] - [samples] bpf: add buffer recycling for unaligned chunks to xdpsock (Jiri Benc) [1819630] - [samples] bpf: add unaligned chunks mode support to xdpsock (Jiri Benc) [1819630] - [tools] libbpf: add flags to umem config (Jiri Benc) [1819630] - [netdrv] mlx5e: Allow XSK frames smaller than a page (Jiri Benc) [1819630] - [netdrv] mlx5e: modify driver for handling offsets (Jiri Benc) [1819630] - [netdrv] ixgbe: modify driver for handling offsets (Jiri Benc) [1819630] - [netdrv] i40e: modify driver for handling offsets (Jiri Benc) [1819630] - [net] xsk: add support to allow unaligned chunk placement (Jiri Benc) [1819630] - [net] xdp: xdp_umem: replace kmap on vmap for umem map (Jiri Benc) [1819630] - [net] Don't call XDP_SETUP_PROG when nothing is changed (Jiri Benc) [1819630] - [kernel] bpf: Use PTR_ERR_OR_ZERO in xsk_map_inc() (Jiri Benc) [1819630] - [kernel] xsk: support BPF_EXIST and BPF_NOEXIST flags in XSKMAP (Jiri Benc) [1819630] - [net] xsk: remove AF_XDP socket from map when the socket is released (Jiri Benc) [1819630] - [netdrv] mlx5e: Add AF_XDP need_wakeup support (Jiri Benc) [1819630] - [netdrv] net/mlx5e: Move the SW XSK code from NAPI poll to a separate function (Jiri Benc) [1819630] - [samples] bpf: add use of need_wakeup flag in xdpsock (Jiri Benc) [1819630] - [tools] libbpf: add support for need_wakeup flag in AF_XDP part (Jiri Benc) [1819630] - [netdrv] ixgbe: need_wakeup flag might not be set for Tx (Jiri Benc) [1819630] - [netdrv] ixgbe: add support for AF_XDP need_wakeup feature (Jiri Benc) [1819630] - [netdrv] i40e: add support for AF_XDP need_wakeup feature (Jiri Benc) [1819630] - [net] xsk: add support for need_wakeup flag in AF_XDP rings (Jiri Benc) [1819630] - [net] xsk: replace ndo_xsk_async_xmit with ndo_xsk_wakeup (Jiri Benc) [1819630] - [net] xdp: xdp_umem: fix umem pages mapping for 32bits systems (Jiri Benc) [1819630] - [net] ethtool: add infrastructure for centralized checking of coalescing parameters (Ivan Vecera) [1818096] - [tools] selftests: netfilter: add simple masq/redirect test cases (Hangbin Liu) [1826220] - [tools] selftests: netfilter: fix config fragment CONFIG_NF_TABLES_INET (Hangbin Liu) [1826220] - [tools] selftests: add script to stress-test nft packet path vs. control plane (Hangbin Liu) [1826220] - [net] devlink: disallow reload operation during device cleanup (Petr Oros) [1805958] - [tools] selftests: test creating netdevsim inside network namespace (Petr Oros) [1805958] - [net] devlink: export devlink net setter (Petr Oros) [1805958] - [net] devlink: don't ignore errors during dumpit (Petr Oros) [1805958] - [netdrv] netdevsim: fix spelling mistake "forbidded" -> "forbid" (Petr Oros) [1805958] - [netdrv] netdevsim: implement devlink dev_info op (Petr Oros) [1805958] - [netdrv] netdevsim: add couple of debugfs bools to debug devlink reload (Petr Oros) [1805958] - [netdrv] netdevsim: create devlink and netdev instances in namespace (Petr Oros) [1805958] - [include] net: skbuff: disambiguate argument and member for skb_list_walk_safe helper (Josef Oskera) [1818105] - [include] net: introduce skb_list_walk_safe for skb segment walking (Josef Oskera) [1818105] - [netdrv] netdevsim: drop code duplicated by a merge (Petr Oros) [1805951] - [tools] selftests: devlink: undo changes at the end of resource_test (Petr Oros) [1805951] - [tools] selftests: netdevsim: add tests for devlink reload with resources (Petr Oros) [1805951] - [net] devlink: allow to change namespaces during reload (Petr Oros) [1805951] - [net] devlink: Add method for time-stamp on reporter's dump (Petr Oros) [1805951] - [netdrv] netdevsim: take devlink net instead of init_net (Petr Oros) [1805951] - [netdrv] netdevsim: register port netdevices into net of device (Petr Oros) [1805951] - [netdrv] netdevsim: implement proper devlink reload (Petr Oros) [1805951] - [netdrv] netdevsim: add all ports in nsim_dev_create() and del them in destroy() (Petr Oros) [1805951] - [net] devlink: export devlink net getter (Petr Oros) [1805951] - [net] fib_notifier: propagate extack down to the notifier block callback (Petr Oros) [1805951] - [net] fib_notifier: propagate possible error during fib notifier registration (Petr Oros) [1805951] - [net] fib_notifier: make FIB notifier per-netns (Petr Oros) [1805951] - [netdrv] netdevsim: change fib accounting and limitations to be per-device (Petr Oros) [1805951] - [netdrv] netdevsim: Set offsets to various protocol layers (Petr Oros) [1805951] - [net] devlink: Fix error handling in param and info_get dumpit cb (Petr Oros) [1805951] - [net] lwtunnel: check erspan options before allocating tun_info (Xin Long) [1730151] - [net] lwtunnel: be STRICT to validate the new LWTUNNEL_IP(6)_OPTS (Xin Long) [1730151] - [net] lwtunnel: add support for multiple geneve opts (Xin Long) [1730151] - [net] lwtunnel: change to use nla_put_u8 for LWTUNNEL_IP_OPT_ERSPAN_VER (Xin Long) [1730151] - [net] lwtunnel: ignore any TUNNEL_OPTIONS_PRESENT flags set by users (Xin Long) [1730151] - [net] lwtunnel: get nlsize for erspan options properly (Xin Long) [1730151] - [net] lwtunnel: change to use nla_parse_nested on new options (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for erspan (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for vxlan (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for geneve (Xin Long) [1730151] - [net] lwtunnel: add options process for cmp_encap (Xin Long) [1730151] - [net] lwtunnel: add options process for arp request (Xin Long) [1730151] - [net] ip_tunnel: Add dst_cache support in lwtunnel_state of ip tunnel (Xin Long) [1730151] - [include] tcp: Define IPPROTO_MPTCP (Florian Westphal) [1812198] - [net] skb: add helpers to allocate ext independently from sk_buff (Florian Westphal) [1812198] - [net] tcp: Check for filled TCP option space before SACK (Florian Westphal) [1812198] - [net] tcp: Export TCP functions and ops struct (Florian Westphal) [1812198] - [net] tcp: coalesce/collapse must respect MPTCP extensions (Florian Westphal) [1812198] - [net] mptcp: Add MPTCP to skb extensions (Florian Westphal) [1812198] - [net] tcp, ulp: Add clone operation to tcp_ulp_ops (Florian Westphal) [1812198] - [include] tcp: Add MPTCP option number (Florian Westphal) [1812198] - [net] Make sock protocol value checks more specific (Florian Westphal) [1812198] - [net] ipv6: provide and use ipv6 specific version for {recv, send}msg (Florian Westphal) [1812198] - [net] inet: factor out inet_send_prepare() (Florian Westphal) [1812198] - [net] tipc: fix incorrect increasing of link window (Xin Long) [1822129] - [net] tipc: Add a missing case of TIPC_DIRECT_MSG type (Xin Long) [1822129] - [net] tipc: add NULL pointer check to prevent kernel oops (Xin Long) [1822129] - [net] tipc: simplify trivial boolean return (Xin Long) [1822129] - [net] tipc: add missing attribute validation for MTU property (Xin Long) [1822129] - [net] tipc: fix successful connect() but timed out (Xin Long) [1822129] - [net] tipc: make three functions static (Xin Long) [1822129] - [net] tipc: fix wrong connect() return code (Xin Long) [1822129] - [net] tipc: make legacy address flag readable over netlink (Xin Long) [1822129] - [net] tipc: don't send gap blocks in ACK messages (Xin Long) [1822129] - [net] tipc: fix use-after-free in tipc_disc_rcv() (Xin Long) [1822129] - [net] tipc: introduce variable window congestion control (Xin Long) [1822129] - [net] tipc: eliminate more unnecessary nacks and retransmissions (Xin Long) [1822129] - [net] tipc: eliminate gap indicator from ACK messages (Xin Long) [1822129] - [net] tipc: fix duplicate SYN messages under link congestion (Xin Long) [1822129] - [net] tipc: support in-order name publication events (Xin Long) [1822129] - [net] tipc: add back tipc prefix to log messages (Xin Long) [1822129] - [net] tipc: fix update of the uninitialized variable err (Xin Long) [1822129] - [net] tipc: add support for AEAD key setting via netlink (Xin Long) [1822129] - [net] tipc: introduce TIPC encryption & authentication (Xin Long) [1822129] - [include] tipc: add new AEAD key structure for user API (Xin Long) [1822129] - [net] tipc: enable creating a "preliminary" node (Xin Long) [1822129] - [net] tipc: add reference counter to bearer (Xin Long) [1822129] - [net] tipc: eliminate checking netns if node established (Xin Long) [1822129] - [net] tipc: eliminate the dummy packet in link synching (Xin Long) [1822129] - [net] tipc: improve message bundling algorithm (Xin Long) [1822129] - [net] tipc: add smart nagle feature (Xin Long) [1822129] - [net] tipc: improve throughput between nodes in netns (Xin Long) [1822129] - [net] tipc: add loopback device tracking (Xin Long) [1822129] - [netdrv] vxlan: check return value of gro_cells_init() (Sabrina Dubroca) [1821295] - [netdrv] geneve: move debug check after netdev unregister (Sabrina Dubroca) [1821295] - [net] ip6_tunnel: enhance tunnel locate with link check (Sabrina Dubroca) [1821295] - [netdrv] vxlan: implement get_link_ksettings ethtool method (Sabrina Dubroca) [1821295] - [netdrv] vxlan: check tun_info options_len properly (Sabrina Dubroca) [1821295] - [include] iptunnel: make TUNNEL_FLAGS available in uapi (Sabrina Dubroca) [1821295] - [net] introduce dev_net notifier register/unregister variants (Ivan Vecera) [1818102] - [net] push code from net notifier reg/unreg into helpers (Ivan Vecera) [1818102] - [net] call call_netdevice_unregister_net_notifiers from unregister (Ivan Vecera) [1818102] - [net] introduce per-netns netdevice notifiers (Ivan Vecera) [1818102] - [net] push loops and nb calls into helper functions (Ivan Vecera) [1818102] - [include] net: ipv6: do not consider routes via gateways for anycast address check (Hangbin Liu) [1816506] - [net] ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface (Hangbin Liu) [1816506] - [net] ipv6: need update peer route when modify metric (Hangbin Liu) [1816506] - [net] ipv6: use configured metric when add peer route (Hangbin Liu) [1816506] - [net] ipv6: restrict IPV6_ADDRFORM operation (Hangbin Liu) [1816506] - [net] ipv6: Fix nlmsg_flags when splitting a multipath route (Hangbin Liu) [1816506] - [net] ipv6: Fix route replacement with dev-only route (Hangbin Liu) [1816506] - [net] ipv6/addrconf: fix potential NULL deref in inet6_set_link_af() (Hangbin Liu) [1816506] - [net] net-ipv6-ndisc: add support for RFC7710 RA Captive Portal Identifier (Hangbin Liu) [1816506] - [net] ipv6: Don't use dst gateway directly in ip6_confirm_neigh() (Hangbin Liu) [1816506] - [net] ipv6: Fix the link time qualifier of 'ping_v6_proc_exit_net()' (Hangbin Liu) [1816506] - [net] ipv6: propagate ipv6_add_dev's error returns out of ipv6_find_idev (Hangbin Liu) [1816506] - [net] ipv6: allow any source address for sendmsg pktinfo with ip_nonlocal_bind (Hangbin Liu) [1816506] - [net] multicast: remove useless parameter for group add (Hangbin Liu) [1816506] - [documentation] networking: devlink-trap: Fix reference to other document (Petr Oros) [1805882] - [netdrv] netdevsim: Fix use-after-free during device dismantle (Petr Oros) [1805882] - [netdrv] netdevsim: Fix build error without CONFIG_INET (Petr Oros) [1805882] - [net] devlink: move reload fail indication to devlink core and expose to user (Petr Oros) [1805882] - [net] devlink: split reload op into two (Petr Oros) [1805882] - [netdrv] mlx4: Split restart_one into two functions (Petr Oros) [1805882] - [include] devlink: add unknown 'fw_load_policy' value (Petr Oros) [1805882] - [net] devlink: add 'reset_dev_on_drv_probe' param (Petr Oros) [1805882] - [include] devlink: extend 'fw_load_policy' values (Petr Oros) [1805882] - [include] devlink: Add new info version tags for ASIC and FW (Petr Oros) [1805882] - [net] devlink: Use switch-case instead of if-else (Petr Oros) [1805882] - [net] devlink: Make port index data type as unsigned int (Petr Oros) [1805882] - [net] devlink: send notifications for deleted snapshots on region destroy (Petr Oros) [1805882] - [net] devlink: remove pointless data_len arg from region snapshot create (Petr Oros) [1805882] - [documentation] Add description of netdevsim traps (Petr Oros) [1805882] - [netdrv] netdevsim: Add devlink-trap support (Petr Oros) [1805882] - [tools] selftests: netdevsim: add devlink regions tests (Petr Oros) [1805882] - [tools] selftests: netdevsim: add devlink params tests (Petr Oros) [1805882] - [netdrv] netdevsim: implement support for devlink region and snapshots (Petr Oros) [1805882] - [netdrv] netdevsim: register couple of devlink params (Petr Oros) [1805882]- [arm64] kvm: arm64: limit PMU version to PMUv3 for ARMv8.1 (Gavin Shan) [1814009] - [arm64] cpufeature: Extract capped perfmon fields (Gavin Shan) [1814009] - [virt] kvm: arm64: Use the correct timer structure to access the physical counter (Gavin Shan) [1814009] - [arm64] Ask the compiler to __always_inline functions used by KVM at HYP (Gavin Shan) [1814009] - [arm64] kvm: arm64: Define our own swab32() to avoid a uapi static inline (Gavin Shan) [1814009] - [arm64] kvm: arm64: Ask the compiler to __always_inline functions used at HYP (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Fold VHE entry/exit work into kvm_vcpu_run_vhe() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Fix up includes for trace.h (Gavin Shan) [1814009] - [virt] kvm: arm64: Treat emulated TVAL TimerValue as a signed 32-bit integer (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Only handle supported event counters (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Fix chained SW_INCR counters (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Don't mark a counter as chained if the odd one is disabled (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset (Gavin Shan) [1814009] - [virt] kvm: arm: Make inject_abt32() inject an external abort instead (Gavin Shan) [1814009] - [virt] kvm: arm: Fix DFSR setting for non-LPAE aarch32 guests (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Fix young bit from mmu notifier (Gavin Shan) [1814009] - [arm64] kvm: Add UAPI notes for swapped registers (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Cleanup MMIO handling (Gavin Shan) [1814009] - [arm64] kvm: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Drop the kvm_vgic_register_mmio_region() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic-its: Properly check the unmapped coll in DISCARD handler (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Correct AArch32 SPSR on exception entry (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Correct CPSR on exception entry (Gavin Shan) [1814009] - [arm64] kvm: arm64: Correct PSTATE on exception entry (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Re-check VMA on detecting a poisoned page (Gavin Shan) [1814009] - [virt] kvm: arm: Remove duplicate include (Gavin Shan) [1814009] - [virt] kvm: arm: Call hyp_cpu_pm_exit at the right place (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Handle GICR_PENDBASER.PTZ filed as RAZ (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic-its: Fix restoration of unmapped collections (Gavin Shan) [1814009] - [virt] kvm: arm64: Only sign-extend MMIO up to register width (Gavin Shan) [1814009] - [arm64] kvm: stop treating register x18 as caller save (Gavin Shan) [1814009] - [arm64] Workaround for Cortex-A55 erratum 1530923 (Gavin Shan) [1814009] - [arm64] Rename WORKAROUND_1319367 to SPECULATIVE_AT_NVHE (Gavin Shan) [1814009] - [arm64] Enable and document ARM errata 1319367 and 1319537 (Gavin Shan) [1814009] - [arm64] Rename WORKAROUND_1165522 to SPECULATIVE_AT_VHE (Gavin Shan) [1814009] - [arm64] Introduce ID_ISAR6 CPU register (Gavin Shan) [1814009] - [arm64] nofpsmid: Handle TIF_FOREIGN_FPSTATE flag cleanly (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Properly handle faulting of device mappings (Gavin Shan) [1814009] - [arm64] kvm: arm64: Ensure 'params' is initialised when looking up sys register (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Remove excessive permission check in kvm_arch_prepare_memory_region (Gavin Shan) [1814009] - [arm64] kvm: arm64: Don't log IMP DEF sysreg traps (Gavin Shan) [1814009] - [arm64] kvm: Invoke compute_layout() before alternatives are applied (Gavin Shan) [1814009] - [arm64] kvm: arm64: Sanely ratelimit sysreg messages (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Use wrapper function to lock/unlock all vcpus in kvm_vgic_create() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Fix potential double free dist->spis in __kvm_vgic_destroy() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Get rid of unused arg in cpu_init_hyp_mode() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Opportunistically turn off WFI trapping when using direct LPI injection (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Let the timer expire in hardirq context on RT (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Fix some comments typo (Gavin Shan) [1814009] - [kvm] arm/arm64: vgic: Remove the declaration of kvm_send_userspace_msi() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Don't set HCR_EL2.TVM when S2FWB is supported (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Show halt poll counters in debugfs (Gavin Shan) [1814009] - [arm64] kvm: Prevent speculative S1 PTW when restoring vcpu context (Gavin Shan) [1814009] - [arm64] kvm: Disable EL1 PTW when invalidating S2 TLBs (Gavin Shan) [1814009] - [arm64] Add ARM64_WORKAROUND_1319367 for all A57 and A72 versions (Gavin Shan) [1814009] - [arm64] kvm: Reorder system register restoration and stage-2 activation (Gavin Shan) [1814009] - [arm64] kvm: arm64: Select TASK_DELAY_ACCT+TASKSTATS rather than SCHEDSTATS (Gavin Shan) [1814009] - [arm64] Retrieve stolen time as paravirtualized guest (Gavin Shan) [1814009] - [arm64] arm/arm64: Make use of the SMCCC 1.1 wrapper (Gavin Shan) [1814009] - [kernel] arm/arm64: Provide a wrapper for SMCCC 1.1 calls (Gavin Shan) [1814009] - [virt] kvm: arm64: Provide VCPU attributes for stolen time (Gavin Shan) [1814009] - [virt] kvm: arm64: Support stolen time reporting via shared structure (Gavin Shan) [1814009] - [virt] kvm: arm64: Implement PV_TIME_FEATURES call (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Factor out hypercall handling from PSCI code (Gavin Shan) [1814009] - [documentation] kvm: arm64: Document PV-time interface (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Allow user injection of external data aborts (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Allow reporting non-ISV data aborts to userspace (Gavin Shan) [1814009] - [arm64] errata: use arm_smccc_1_1_get_conduit() (Gavin Shan) [1814009] - [kernel] arm/arm64: smccc/psci: add arm_smccc_1_1_get_conduit() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Fix ptrauth ID register masking logic (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add capability to advertise ptrauth for guest (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add userspace flag to enable pointer authentication (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Context-switch ptrauth registers (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add a vcpu flag to control ptrauth for guest (Gavin Shan) [1814009] - [tools] selftests: kvm: s390: fix format strings for access reg test (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: make syncregs more reliable on s390 (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: drop vcpu_setup from s390x (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add support for vcpu_args_set to aarch64 and s390x (Vitaly Kuznetsov) [1813987] - [iommu] amd: Fix IOMMU AVIC not properly update the is_run bit in IRTE (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Fix kernel crash with PR KVM (Vitaly Kuznetsov) [1813987] - [x86] cpu: Print "VMX disabled" error message iff KVM is enabled (Vitaly Kuznetsov) [1813987] - [tools] redhat: update kvm/x86 headers in tools (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: fix crash cleanup when KVM wasn't used (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Filter out the broadcast dest for IPI fastpath (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: don't clear mtf_pending when nested events are blocked (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove unnecessary exception trampoline in vmx_vmenter (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Split svm_vcpu_run inline assembly to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move SEV code to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move AVIC code to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move Nested SVM Implementation to nested.c (Vitaly Kuznetsov) [1813987] - [x86] kvm svm: Move SVM related files to own sub-directory (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix a missing-prototypes "vmread_error" (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix BUILD_BUG() in __cpuid_entry_get_reg() w/ CONFIG_UBSAN=y (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add a trampoline to fix VMREAD error handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Annotate svm_x86_ops as __initdata (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Annotate vmx_x86_ops as __initdata (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop __exit from kvm_x86_ops' hardware_unsetup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Copy kvm_x86_ops by value to eliminate layer of indirection (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Set kvm_x86_ops only after ->hardware_setup() completes (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Configure runtime hooks using vmx_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Move hardware_setup() definition below vmx_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move init-only kvm_x86_ops to separate struct (Vitaly Kuznetsov) [1813987] - [virt] kvm: Pass kvm_init()'s opaque param to additional arch funcs (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Fix cosmetic copy-paste error in vm_mem_region_move() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix out of range accesses to memslots (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Micro-optimize IPI fastpath delay (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Delay read msr data iff writes ICR MSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Narrow down the IPI fastpath to single target IPI (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Gracefully handle faults on VMXON (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fold loaded_vmcs_init() into alloc_loaded_vmcs() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Always VMCLEAR in-use VMCSes during crash with kexec support (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: add command line switch '-c' to log in csv format (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: add command line switch '-s' to set update interval (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: switch to argparse (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: rework command line sequence and message texts (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: don't allow memory operands for inline asm that modifies SP (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Mark hrtimer for period or oneshot mode to expire in hard interrupt context (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Issue WBINVD after deactivating an SEV guest (Vitaly Kuznetsov) [1813987] - [documentation] kvm: svm: document KVM_MEM_ENCRYPT_OP, let userspace detect if SEV is available (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove bogus user-triggerable WARN_ON (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rework timespec functions and usage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Code style cleanup in kvm_arch_dev_ioctl() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add blurb to CPUID tracepoint when using max basic leaf values (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add requested index to the CPUID tracepoint (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: check for EFER.SVME=1 before entering guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: remove side effects from nested_vmx_exit_reflected (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: access regs array in vmenter.S in its natural order (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: enlightened VMPTRLD with an incorrect GPA (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: test enlightened vmenter with wrong eVMCS version (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: define and use EVMCS_VERSION (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: properly handle errors in nested_vmx_handle_enlightened_vmptrld() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: stop abusing need_vmcs12_to_shadow_sync for eVMCS mapping (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Uses TEST_FAIL in tests/utilities (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Introduce the TEST_FAIL macro (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce steal-time test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: virt_map should take npages, not size (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Use consistent message for test skipping (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Enable printf format warnings for TEST_ASSERT (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Share common API documentation (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: svm: Add vmcall test to gitignore (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Remove an obsolete comment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: correct meaningless kvm_apicv_activated() check (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Consolidate nested MTF checks to helper function (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Micro-optimize vmexit time when not exposing PMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Introduce GA Log tracepoint for AVIC (Vitaly Kuznetsov) [1813987] - [documentation] kvm: documentation: Update fast page fault for indirect sp (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: avoid loss of pending IRQ/NMI before entering L2 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: implement check_nested_events for interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: ignore L1 interrupt window while running L2 with V_INTR_MASKING=1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: do not change host intercepts while nested VM is running (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: rename set_cr3 callback and related flags to load_mmu_pgd (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: unify callbacks to load paging root (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor kvm_cpuid() param that controls out-of-range logic (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor out-of-range logic to contain the madness (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix CPUID range checks for Hypervisor and Centaur classes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add helpers to perform CPUID-based guest vendor check (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Trace the original requested CPUID function in kvm_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: cpuid: add support for supervisor states (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move nSVM CPUID 0x8000000A handling into common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Advertise and enable NRIPS for L1 iff nrips is enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Expose SVM features to L1 iff nested is enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move VMX's host_efer to common x86 code (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop largepages_enabled and its accessor/mutator (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't propagate MMU lpage support to memslot.disallow_lpage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Configure max page level during hardware setup (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Merge kvm_{enable, disable}_tdp() into a common function (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Refactor logging of NPT enabled/disabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Directly query Intel PT mode when refreshing PMUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check for Intel PT MSR virtualization using KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Directly use VMX capabilities helper to detect RDTSCP support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to detect MSR_TSC_AUX virt support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Do kvm_cpuid_array capacity checks in terminal functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use kvm_cpu_caps to detect Intel PT support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Set emulated/transmuted feature bits via kvm_cpu_caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Override host CPUID results with kvm_cpu_caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Do host CPUID at load time to mask KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove stateful CPUID handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Squash CPUID 0x2.0 insanity for modern CPUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove the unnecessary loop on CPUID 0x7 sub-leafs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold CPUID 0x7 masking back into __do_cpuid_func() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to track UMIP emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to mark CR4.LA57 as not-reserved (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add a helper to check kernel support when setting cpu cap (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move XSAVES CPUID adjust to VMX's KVM cpu cap update (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Convert feature updates from CPUID to KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Convert feature updates from CPUID to KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce kvm_cpu_caps to replace runtime CPUID masking (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor handling of XSAVES CPUID adjustment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: handle GBPAGE CPUID adjustment for EPT with generic code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle Intel PT CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle RDTSCP CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle PKU CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle UMIP emulation CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle INVPCID CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle MPX CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor cpuid_mask() to auto-retrieve the register (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce cpuid_entry_{change, set, clear}() mutators (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce cpuid_entry_{get, has}() accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Replace bare "unsigned" with "unsigned int" in cpuid helpers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use u32 for holding CPUID register value in helpers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop explicit @func param from ->set_supported_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clear output regs for CPUID 0x14 if PT isn't exposed to guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Make kvm_mpx_supported() an inline function (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use supported_xcr0 to detect MPX support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Calculate the supported xcr0 mask at load time (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helpers to query Intel PT mode (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use common loop iterator when handling CPUID 0xD.N (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop redundant array size check (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Encapsulate CPUID entries and metadata in struct (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor CPUID 0x4 and 0x8000001d handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Hoist loop counter and terminator to top of __do_cpuid_func() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Consolidate CPUID array max num entries checking (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop redundant boot cpu checks on SSBD feature bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop the explicit @index from do_cpuid_7_mask() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clean up CPUID 0x7 sub-leaf loop (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor CPUID 0xD.N sub-leaf entry creation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Warn on zero-size save state for valid CPUID 0xD.N sub-leaf (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check for CPUID 0xD.N support before validating array size (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move CPUID 0xD.1 handling out of the index>0 loop (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check userspace CPUID array size after validating sub-leaf (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clean up error handling in kvm_dev_ioctl_get_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Simplify handling of Centaur CPUID leafs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor loop around do_cpuid_func() to separate helper (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Return -E2BIG when KVM_GET_SUPPORTED_CPUID hits max entries (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Shrink the usercopy region of the emulation context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move kvm_emulate.h into KVM's private directory (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Dynamically allocate per-vCPU emulation context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move emulation-only helpers to emulate.c (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Explicitly pass an exception struct to check_intercept (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor I/O emulation helpers to provide vcpu-only variant (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop gfn_to_pfn_atomic() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix warning due to implicit truncation on 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Drop unnecessary check on ept caps for execute-only (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rename kvm_mmu->get_cr3() to ->get_guest_pgd() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Rename EPTP validity helper and associated variables (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Rename nested_ept_get_cr3() to nested_ept_get_eptp() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Allow L1 to use 5-level page walks for nested EPT (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Don't drop level/direct from MMU role calculation (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Support dirty log initial-all-set test (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Properly handle userspace interrupt window request (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: trigger kvmclock sync request just once on VM creation (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Recalculate apic map in batch (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some obsolete comments (Vitaly Kuznetsov) [1813987] - [virt] kvm: x86: enable dirty log gradually in small chunks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Reuse the current root if possible for fast switch (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Ignore guest CR3 on fast root switch for direct MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Inhibit APIC virtualization for X2APIC guest (Vitaly Kuznetsov) [1813987] - [virt] kvm: Remove unnecessary asm/kvm_host.h includes (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Fix unknown ucall command asserts (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Consolidate VM allocation and free for VMX and SVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Directly return __vmalloc() result in ->vm_alloc() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Gracefully handle __vmalloc() failure during VM allocation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Adjust counter sample period after a wrmsr (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Consolidate open coded variants of memslot TLB flushes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Use range-based TLB flush for dirty log memslot flush (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move kvm_arch_flush_remote_tlbs_memslot() to mmu.c (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add test for KVM_SET_USER_MEMORY_REGION (Vitaly Kuznetsov) [1813987] - [virt] kvm: Dynamically size memslot array based on number of used slots (Vitaly Kuznetsov) [1813987] - [virt] kvm: Terminate memslot walks via used_slots (Vitaly Kuznetsov) [1813987] - [virt] kvm: Ensure validity of memslot with respect to kvm_get_dirty_log() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Provide common implementation for generic dirty log functions (Vitaly Kuznetsov) [1813987] - [virt] kvm: Clean up local variable usage in __kvm_set_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Simplify kvm_free_memslot() and all its descendents (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move memslot deletion to helper function (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Free arrays for old memslot when moving memslot's base gfn (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop "const" attribute from old memslot in commit_memory_region() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move setting of memslot into helper routine (Vitaly Kuznetsov) [1813987] - [virt] kvm: Refactor error handling for setting memory region (Vitaly Kuznetsov) [1813987] - [virt] kvm: Explicitly free allocated-but-unused dirty bitmap (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_create_memslot() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move memslot memory allocation into prepare_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate memslot resources during prepare_memory_region() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Don't free new memslot if allocation of said memslot fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: Reinstall old memslots if arch preparation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate new rmap and large page tracking when moving memslot (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move gpa_val and gpa_available into the emulator context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add EMULTYPE_PF when emulation is triggered by a page fault (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: remove unused function apic_lvt_vector() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add 'else' to split mutually exclusive case (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: eliminate some unreachable code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix print format and coding style (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: rewrite the comment in vmx_get_mt_mask (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Convert some printf's to pr_info's (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rework debug message printing (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Time guest demand paging (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Support multiple vCPUs in demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Pass args to vCPU in global vCPU args struct (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add memory size parameter to the demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add configurable demand paging delay (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add demand paging content to the demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Create a demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce num-pages conversion utilities (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce vm_guest_mode_params (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rename vm_guest_mode_params (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: aarch64: Remove unnecessary ifdefs (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Remove unnecessary defines (Vitaly Kuznetsov) [1813987] - [tools] redhat: selftests: kvm: add SPDX-License-Identifier (Vitaly Kuznetsov) [1813987] - [x86] redhat: kvm: x86: add SPDX-License-Identifier (Vitaly Kuznetsov) [1813987] - [x86] x86 kvm page table walks: switch to explicit __get_user() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: avoid NULL pointer dereference with incorrect EVMCS GPAs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Initializing all kvm_lapic_irq fields in ioapic_write_indirect (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Condition ENCLS-exiting enabling on CPU support for SGX1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix Kconfig menu text for -Werror (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove stale comment from struct x86_emulate_ctxt (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix the svm vmexit code for WRMSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix dereference null cpufreq policy (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: limit the number of "kvm: disabled by bios" messages (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid useless copy of cpufreq policy (Vitaly Kuznetsov) [1813987] - [x86] kvm: allow disabling -Werror (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: allow compiling as non-module with W=1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: Pre-allocate 1 cpumask variable per cpu for both pv tlb and pv ipis (Vitaly Kuznetsov) [1813987] - [x86] kvm: Introduce pv check helpers (Vitaly Kuznetsov) [1813987] - [kernel] kvm: let declaration of kvm_get_running_vcpus match implementation (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: allocate AVIC data structures based on kvm_amd module parameter (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Emulate MTF when performing instruction emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix error handling in svm_hardware_setup (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix potential memory leak in svm_cpu_init() (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: avoid calculating pending eoi from an uninitialized val (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: clear PIN_BASED_POSTED_INTR from nested pinbased_ctls only when apicv is globally disabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: handle nested posted interrupts when apicv is disabled for L1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: svm: Fix NULL pointer dereference when AVIC not enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Hold KVM's srcu lock when syncing vmcs12->shadow (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI (Vitaly Kuznetsov) [1813987] - [x86] kvm/emulate: fix a -Werror=cast-function-type (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix incorrect comparison in trace event (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Fix some obsolete comments and grammar error (Vitaly Kuznetsov) [1813987] - [kernel] kvm: x86: fix missing prototypes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: enable -Werror (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: guest-halt-polling.txt convert to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: review-checklist.txt: rename to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert timekeeping.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert s390-diag.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert ppc-pv.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert nested-vmx.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert mmu.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert locking.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert hypercalls.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: arm/psci.txt: convert to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert arm/hyp-abi.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert api.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/xive.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/xics.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vm.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vfio.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vcpu.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/s390_flic.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/mpic.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/arm-vgit.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: devices/arm-vgit-v3.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: devices/arm-vgic-its.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: Convert msr.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: convert halt-polling.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: add arm/pvtime.rst to index.rst (Vitaly Kuznetsov) [1813987] - [documentation] docs: virtual: add it to the documentation body (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix WARN_ON check of an unsigned less than zero (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Remove unused x86_register enum (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fix struct guest_walker arrays for 5-level paging (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use correct root level for nested EPT shadow page tables (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Fix some comment typos and coding style (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Avoid retpoline on ->page_fault() with TDP (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: reuse smp_wmb() in kvm_make_request() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove duplicated KVM_REQ_EVENT request (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: svm: Add vmcall test (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: AMD Nested test infrastructure (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Replace get_{gdt, idt}_base() by get_{gdt, idt}() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Deliver exception payload on KVM_GET_VCPU_EVENTS (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Handle pending #DB when injecting INIT VM-exit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Mask off reserved bit from #DB exception payload (Vitaly Kuznetsov) [1813987] - [virt] kvm: Disable preemption in kvm_get_running_vcpu() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: delete meaningless vmx_decache_cr0_guest_bits() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Mark CR4.UMIP as reserved based on associated CPUID bit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix perfctr WRMSR for running counters (Vitaly Kuznetsov) [1813987] - [x86] kvm: mmu: Separate generating and setting mmio ptes (Vitaly Kuznetsov) [1813987] - [x86] kvm: mmu: Replace unsigned with unsigned int for PTE access (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Remove stale comment from nested_vmx_load_cr3() (Vitaly Kuznetsov) [1813987] - [x86] kvm: do not setup pv tlb flush when not paravirtualized (Vitaly Kuznetsov) [1813987] - [x86] Add "nopv" parameter to disable PV extensions (Vitaly Kuznetsov) [1813987] - [virt] kvm: fix overflow of zero page refcount with ksm running (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Take a u64 when checking for a valid dr7 value (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: use raw clock values consistently (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: reorganize pvclock_gtod_data members (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: delete meaningless nested_vmx_run() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: allow AVIC without split irqchip (Vitaly Kuznetsov) [1813987] - [x86] kvm: ioapic: Lazy update IOAPIC EOI (Vitaly Kuznetsov) [1813987] - [x86] kvm: ioapic: Refactor kvm_ioapic_update_eoi() (Vitaly Kuznetsov) [1813987] - [x86] kvm: i8254: Deactivate APICv when using in-kernel PIT re-injection mode (Vitaly Kuznetsov) [1813987] - [x86] svm: Temporarily deactivate AVIC during ExtINT handling (Vitaly Kuznetsov) [1813987] - [x86] svm: Deactivate AVIC when launching guest with nested SVM support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: hyperv: Use APICv update request interface (Vitaly Kuznetsov) [1813987] - [x86] svm: Add support for dynamic APICv (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce x86 ops hook for pre-update APICv (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce APICv x86 ops for checking APIC inhibit reasons (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: avic: Add support for dynamic setup/teardown of virtual APIC backing page (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: svm: Add support to (de)activate posted interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add APICv (de)activate request trace points (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add support for dynamic APICv activation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove get_enable_apicv from kvm_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce APICv inhibit reason bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Introduce APICv update helper function (Vitaly Kuznetsov) [1813987] - [iommu] amd: Re-factor guest virtual APIC (de-)activation code (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Add fpu and one reg set/get library functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: Clean up host's steal time structure (Vitaly Kuznetsov) [1813987] - [x86] kvm: Make sure KVM_VCPU_FLUSH_TLB flag is not missed (Vitaly Kuznetsov) [1813987] - [virt] x86/kvm: Cache gfn to pfn translation (Vitaly Kuznetsov) [1813987] - [virt] x86/kvm: Introduce kvm_(un)map_gfn() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use a typedef for fastop functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add 'else' to unify fastop and execute call path (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: inline memslot_valid_for_gpte (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Use huge pages for DAX-backed files (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Remove lpage_is_disallowed() check from set_spte() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fold max_mapping_level() into kvm_mmu_hugepage_adjust() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Zap any compound page when collapsing sptes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Remove obsolete gfn restoration in FNAME(fetch) (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rely on host page tables to find HugeTLB mappings (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Drop level optimization from fast_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Walk host page tables to find THP mappings (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor THP adjust to prep for changing query (Vitaly Kuznetsov) [1813987] - [x86] mm: Introduce lookup_address_in_mm() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Play nice with read-only memslots when querying host page size (Vitaly Kuznetsov) [1813987] - [x86] kvm: Use vcpu-specific gva->hva translation when querying host page size (Vitaly Kuznetsov) [1813987] - [mm] thp: kvm: Explicitly check for THP when populating secondary MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Enforce max_level on HugeTLB mappings (Vitaly Kuznetsov) [1813987] - [virt] kvm: Return immediately if __kvm_gfn_to_hva_cache_init() fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: Clean up __kvm_gfn_to_hva_cache_init() and its callers (Vitaly Kuznetsov) [1813987] - [virt] kvm: Check for a bad hva before dropping into the ghc slow path (Vitaly Kuznetsov) [1813987] - [x86] kvm/x86: export kvm_vector_hashing_enabled() is unnecessary (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: remove duplicated segment cache clear (Vitaly Kuznetsov) [1813987] - [x86] Adding 'else' to reduce checking (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check GUEST_DR7 on vmentry of nested guests (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move running VCPU from ARM to common code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop x86_set_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't take srcu lock in init_rmode_identity_map() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add build-time error check on kvm_run size (Vitaly Kuznetsov) [1813987] - [virt] kvm: Remove kvm_read_guest_atomic() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Perform non-canonical checks in 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: WARN on failure to set IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove unused ctxt param from emulator's FPU accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: revert "kvm: x86: Fix fpu state crash in kvm guest" (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Ensure guest's FPU state is loaded when accessing for emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load, put}_guest_fpu() (Vitaly Kuznetsov) [1813987] - [x86] revert "kvm: x86: Add a WARN on TIF_NEED_FPU_LOAD in kvm_load_guest_fpu()" (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: short-circuit kvm_apic_accept_pic_intr() when pic intr is accepted (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid clearing pending exception event twice (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect exit_reason from being used in Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks in x86.c (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations in pmu.h from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move vcpu->run page allocation out of kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move putting of vcpu->pid to kvm_vcpu_destroy() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_vcpu_init() and kvm_arch_vcpu_uninit() (Vitaly Kuznetsov) [1813987] - [arm64] kvm: arm64: Free sve_state via arm specific hook (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: arm: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: booke: Setup vcpu during kvmppc_core_vcpu_create() (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Manually invoke vcpu setup during kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move guts of kvm_arch_vcpu_setup() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move initialization of preempt notifier to kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Unexport kvm_vcpu_cache and kvm_vcpu_{un}init() (Vitaly Kuznetsov) [1813987] - [s390] kvm: Move vcpu alloc and init invocation to common code (Vitaly Kuznetsov) [1813987] - [virt] kvm: Introduce kvm_vcpu_destroy() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Invoke kvm_vcpu_uninit() immediately prior to freeing vcpu (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Invoke kvm_vcpu_init() before allocating sie_page (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Move guts of kvm_arch_vcpu_init() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add kvm_arch_vcpu_precreate() to handle pre-allocation issues (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Remove kvm_arch_vcpu_free() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [virt] kvm: arm: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move kvm_vcpu_init() invocation to common code (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: e500mc: Move reset of oldpir below call to kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s pr: Allocate book3s and shadow vcpu after common init (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Allocate vcpu struct in common PPC code (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: e500mc: Add build-time assert that vcpu is at offset 0 (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s pr: Free shared page if mmu initialization fails (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s hv: Uninit vCPU if vcore creation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove spurious clearing of async #PF MSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove spurious kvm_mmu_unload() from vcpu destruction path (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move kvm_vcpu_init() invocation to common code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move allocation of pio_data page down a few lines (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move FPU allocation to common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate vcpu struct in common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Use direct vcpu pointer during vCPU create/free (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use direct vcpu pointer during vCPU create/free (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Allocate VPID after initializing VCPU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Free wbinvd_dirty_mask if vCPU creation fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: async_pf: drop kvm_arch_async_page_present wrappers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix overlap between SPTE_MMIO_MASK and generation (Vitaly Kuznetsov) [1813987] - [virt] kvm: Refactor handling of VM debugfs files (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: vmread should not set rflags to specify success in case of #PF (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Micro-optimize nEPT's bad memptype/XWR checks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Reorder the reserved bit check in prefetch_invalid_gpte() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: delete meaningless nested_vmx_prepare_msr_bitmap() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor and rename bit() to feature_bit() macro (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Expand build-time assertion on reverse CPUID usage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add CPUID_7_1_EAX to the reverse CPUID table (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move bit() helper to cpuid.h (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add dedicated emulator helpers for querying CPUID features (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add macro to ensure reserved cr4 bits checks stay in sync (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop special XSAVE handling from guest_cpuid_has() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Ensure all logical CPUs have consistent reserved cr4 bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't let userspace set host-reserved cr4 bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helper to consolidate up PT/RTIT WRMSR fault logic (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add non-canonical check on writes to RTIT address MSRs (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some writing mistakes (Vitaly Kuznetsov) [1813987] - [x86] kvm: hyperv: Fix some typos in vcpu unimpl info (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some grammar mistakes (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some comment typos and missing parentheses (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some out-dated function names in comment (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some wrong function names in comment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: check kvm_pit outside kvm_vm_ioctl_reinject() (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: micro-optimize fixed mode ipi delivery (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: FIXED+PHYSICAL mode single target IPI fastpath (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Allow KVM_INTEL when building for Centaur and/or Zhaoxin CPUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Check for full VMX support when verifying CPU compatibility (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use VMX feature flag to query BIOS enabling (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Drop initialization of IA32_FEAT_CTL MSR (Vitaly Kuznetsov) [1813987] - [x86] cpufeatures: Add flag to track whether MSR IA32_FEAT_CTL is configured (Vitaly Kuznetsov) [1813987] - [x86] cpu: Set synthetic VMX cpufeatures during init_ia32_feat_ctl() (Vitaly Kuznetsov) [1813987] - [x86] cpufeatures: Add EPT_AD feature bit (Vitaly Kuznetsov) [1813987] - [x86] cpu: Detect VMX features on Intel, Centaur and Zhaoxin CPUs (Vitaly Kuznetsov) [1813987] - [x86] vmx: Introduce VMX_FEATURES_* (Vitaly Kuznetsov) [1813987] - [x86] cpu: Clear VMX feature flag if VMX is not fully enabled (Vitaly Kuznetsov) [1813987] - [x86] centaur: Use common IA32_FEAT_CTL MSR initialization (Vitaly Kuznetsov) [1813987] - [x86] mce: WARN once if IA32_FEAT_CTL MSR is left unlocked (Vitaly Kuznetsov) [1813987] - [x86] intel: Initialize IA32_FEAT_CTL MSR at boot (Vitaly Kuznetsov) [1813987] - [tools] x86: Sync msr-index.h from kernel sources (Vitaly Kuznetsov) [1813987] - [tools] selftests, kvm: Replace manual MSR defs with common msr-index.h (Vitaly Kuznetsov) [1813987] - [x86] msr-index: Clean up bit defines for IA32_FEATURE_CONTROL MSR (Vitaly Kuznetsov) [1813987] - [tools] tools arch x86: Grab a copy of the file containing the MSR numbers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: WARN if root_hpa is invalid when handling a page fault (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: WARN on an invalid root_hpa (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move root_hpa validity checks to top of page fault handler (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move calls to thp_adjust() down a level (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move transparent_hugepage_adjust() above __direct_map() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Consolidate tdp_page_fault() and nonpaging_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rename lpage_disallowed to account_disallowed_nx_lpage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Persist gfn_lpage_is_disallowed() to max_level (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Incorporate guest's page level into max level for shadow MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor handling of forced 4k pages in page faults (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor the per-slot level calculation in mapping_level() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor handling of cache consistency with TDP (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move nonpaging_page_fault() below try_async_pf() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fold nonpaging_map() into nonpaging_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move definition of make_mmu_pages_available() up (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add a WARN on TIF_NEED_FPU_LOAD in kvm_load_guest_fpu() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Remove duplicated declaration of kvm_vcpu_kick (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Aesthetic cleanup of handle_vmread and handle_vmwrite (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: VMWRITE checks unsupported field before read-only field (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: VMWRITE checks VMCS-link pointer before VMCS field (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix the spelling of CPU_BASED_USE_TSC_OFFSETTING (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename NMI_PENDING to NMI_WINDOW (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename INTERRUPT_PENDING to INTERRUPT_WINDOW (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix some comment typos (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Convert the last users of "shorthand = 0" to use macros (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix callers of kvm_apic_match_dest() to use correct macros (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop KVM_APIC_SHORT_MASK and KVM_APIC_DEST_MASK (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use APIC_DEST_* macros properly in kvm_lapic_irq.dest_mode (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move irrelevant declarations out of ioapic.h (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix kvm_bitmap_or_dest_vcpus() to use irq shorthand (Vitaly Kuznetsov) [1813987] - [x86] kvm: explicitly set rmap_head->val to 0 in pte_list_desc_remove_entry() (Vitaly Kuznetsov) [1813987] - [virt] kvm: get rid of var page in kvm_set_pfn_dirty() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: remove unreachable statement in vmx_get_msr_feature() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: use CPUID to locate host page table reserved bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature AMD_SSBD (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Stop wasting a page for guest_msrs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix out-of-bounds write in KVM_GET_EMULATED_CPUID (CVE-2019-19332) (Vitaly Kuznetsov) [1813987] - [documentation] documentation: kvm: Fix mention to number of ioctls classes (Vitaly Kuznetsov) [1813987] - [x86] kvm x86: Move kvm cpuid support out of svm (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Relax guest IA32_FEATURE_CONTROL constraints (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Grab KVM's srcu lock when setting nested state (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Open code shared_msr_update() in its only caller (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix jump label out_free_* in kvm_init() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: create mmu/ subdirectory (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Remove unnecessary TLB flushes on L1<->L2 switches when L1 use apic-access-page (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Do not mark vmcs02->apic_access_page as dirty when unpinning (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Assume TLB entries of L1 and L2 are tagged differently if L0 use EPT (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Unexport kvm_vcpu_reload_apic_access_page() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: add CR4_LA57 bit to nested CR4_FIXED1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use semi-colon instead of comma for exit-handlers initialization (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Add support for capturing highest observable L2 TSC (Vitaly Kuznetsov) [1813987] - [x86] tss: Fix and move VMX BUILD_BUG_ON() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename function find_msr() to vmx_find_msr_index() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename NR_AUTOLOAD_MSRS to NR_LOADSTORE_MSRS (Vitaly Kuznetsov) [1813987] - [x86] kvm: nested: Introduce read_and_check_msr_entry() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Expose load IA32_PERF_GLOBAL_CTRL VM-{Entry, Exit} control (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Load GUEST_IA32_PERF_GLOBAL_CTRL MSR on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: mark functions in the header as "static inline" (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use kvm_set_msr to load IA32_PERF_GLOBAL_CTRL on VM-Exit (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check HOST_IA32_PERF_GLOBAL_CTRL on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check GUEST_IA32_PERF_GLOBAL_CTRL on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helper to check reserved bits in IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Simplify loop in kvm_create_max_vcpus test (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: optimization: Requst TLB flush in fast_cr3_switch() instead of do it directly (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Add lazy mechanism to release perf_event per vPMC (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Reuse perf_event to avoid unnecessary pmc_reprogram_counter (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Introduce a new kvm_pmu_ops->msr_idx_to_pmc callback (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Rename pmu_ops callbacks from msr_idx to rdpmc_ecx (Vitaly Kuznetsov) [1813987] - [kernel] perf/core: Provide a kernel-internal interface to pause perf_event (Vitaly Kuznetsov) [1813987] - [kernel] perf/core: Provide a kernel-internal interface to recalibrate event period (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Update vmcs01 TPR_THRESHOLD if L2 changed L1 TPR (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Refactor update_cr8_intercept() (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Remove check if APICv enabled in SVM update_cr8_intercept() handler (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: add helper func to remove duplicate code in kvm_pv_send_ipi (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid unused setup_syscalls_segments call when SYSCALL check failed (Vitaly Kuznetsov) [1813987] - [virt] kvm: mmio: get rid of odd out_err label in kvm_coalesced_mmio_init (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consume pending LAPIC INIT event when exit on INIT_SIGNAL (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Prevent set vCPU into INIT/SIPI_RECEIVED state when INIT are latched (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Evaluate latched_init in KVM_SET_VCPU_EVENTS when vCPU not in SMM (Vitaly Kuznetsov) [1813987] - [x86] kvm: retpolines: x86: eliminate retpoline from svm.c exit handlers (Vitaly Kuznetsov) [1813987] - [x86] kvm: retpolines: x86: eliminate retpoline from vmx.c exit handlers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: optimize more exit handlers in vmx.c (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add a comment describing the /dev/kvm no_compat handling (Vitaly Kuznetsov) [1813987] - [virt] kvm: Forbid /dev/kvm being opened by a compat task when CONFIG_KVM_COMPAT=n (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Reset the three MSR list number variables to 0 in kvm_init_msr_list() (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: fix build with glibc >= 2.30 (Vitaly Kuznetsov) [1813987] - [virt] kvm: mmu: Do not treat ZONE_DEVICE pages as being reserved (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Introduce pi_is_pir_empty() helper (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Do not change PID.NDST when loading a blocked vCPU (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consider PID.PIR to determine if vCPU has pending interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix comment to specify PID.ON instead of PIR.ON (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix initialization of MSR lists (Vitaly Kuznetsov) [1813987] - [virt] kvm: fix placement of refcount initialization (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix NULL-ptr deref after kvm_create_vm fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: get rid of odd out jump label in pdptrs_changed (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: switch KVMCLOCK base to monotonic raw clock (Vitaly Kuznetsov) [1813987] - [virt] kvm: call kvm_arch_destroy_vm if vm creation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm/pmu: Replace rcu_swap_protected() with rcu_replace_pointer() (Vitaly Kuznetsov) [1813987] - [kernel] rcu: Upgrade rcu_swap_protected() to rcu_replace_pointer() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1813987] - [virt] kvm: Allocate memslots and buses before calling kvm_arch_init_vm (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Don't leak L1 MMIO regions to L2 (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix potential wrong physical id in avic_handle_ldr_update (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add separate helper for putting borrowed reference to kvm (Vitaly Kuznetsov) [1813987] - [tools] kvm: tests: Add test to verify MSR_IA32_XSS (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Update svm_xsaves_supported (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move IA32_XSS to kvm_{get, set}_msr_common (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move IA32_XSS-swapping on VM-entry/VM-exit to common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use wrmsr for switching between guest and host IA32_XSS on Intel (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Use wrmsr for switching between guest and host IA32_XSS on AMD (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove unneeded kvm_vcpu variable, guest_xcr0_loaded (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix conditions for guest IA32_XSS support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce vcpu->arch.xsaves_enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename {vmx, nested_vmx}_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Initialize vmx->guest_msrs[] right after allocation (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove vmx->hv_deadline_tsc initialization from vmx_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Write VPID to vmcs when creating vcpu (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Declare kvm_pmu->reprogram_pmi field using DECLARE_BITMAP (Vitaly Kuznetsov) [1813987] - [x86] kvm: remove redundant code in kvm_arch_vm_ioctl (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Modify kvm_x86_ops.get_enable_apicv() to use struct kvm parameter (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold decache_cr3() into cache_reg() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add helpers to test/mark reg availability and dirtiness (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold 'enum kvm_ex_reg' definitions into 'enum kvm_reg' (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add WARNs to detect out-of-bounds register indices (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Optimize vmx_set_rflags() for unrestricted guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consolidate to_vmx() usage in RFLAGS accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Skip GUEST_CR3 VMREAD+VMWRITE if the VMCS is up-to-date (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Always write vmcs02.GUEST_CR3 during nested VM-Enter (Vitaly Kuznetsov) [1813987] - [x86] kvm: clear kvmclock MSR on reset (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix bugon.cocci warnings (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove specialized handling of unexpected exit-reasons (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: fix sync_regs_test with newer gccs (Vitaly Kuznetsov) [1813987] - [virt] kvm: Don't shrink/grow vCPU halt_poll_ns if host side polling is disabled (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: synchronize .gitignore to Makefile (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Expose RDPID in KVM_GET_SUPPORTED_CPUID (Vitaly Kuznetsov) [1813987] - [virt] kvm: Allow kvm_device_ops to be const (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Implement kvm_put_guest() (Vitaly Kuznetsov) [1813987] - [x86] xen: kvm: Gather the definition of emulate prefixes (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: do not blindly clobber registers in guest asm (Vitaly Kuznetsov) [1813987]- [fs] cifs: handle prefix paths in reconnect (Leif Sahlberg) [1814203] - [fs] cifs: use compounding for open and first query-dir for readdir() (Leif Sahlberg) [1814203] - [fs] cifs: create a helper function to parse the query-directory response buffer (Leif Sahlberg) [1814203] - [fs] cifs: prepare SMB2_query_directory to be used with compounding (Leif Sahlberg) [1814203] - [fs] xfs: reflink should force the log out if mounted with wsync (Bill O'Donnell) [1825373] - [fs] xfs: factor out a new xfs_log_force_inode helper (Bill O'Donnell) [1825373] - [fs] xfs: don't ever return a stale pointer from __xfs_dir3_free_read (Bill O'Donnell) [1825373] - [fs] xfs: fix xfs_rmap_has_other_keys usage of ECANCELED (Bill O'Donnell) [1825373] - [fs] xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE (Bill O'Donnell) [1825373] - [fs] xfs: use bitops interface for buf log item AIL flag check (Bill O'Donnell) [1825373] - [fs] xfs: Sanity check flags of Q_XQUOTARM call (Bill O'Donnell) [1825373] - [fs] iomap: iomap that extends beyond EOF should be marked dirty (Bill O'Donnell) [1825373] - [s390] s390/kasan: Fix crash when attaching PCI device (Philipp Rudo) [1827334] - [s390] s390/qeth: fix initialization on old HW (Philipp Rudo) [1780667] - [s390] s390/qeth: vnicc Fix init to default (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix vnicc_is_in_use if rx_bcast not set (Philipp Rudo) [1780667] - [s390] s390/qeth: fix false reporting of VNIC CHAR config failure (Philipp Rudo) [1780667] - [s390] s390/qeth: lock the card while changing its hsuid (Philipp Rudo) [1780667] - [s390] s390/qeth: fix qdio teardown after early init error (Philipp Rudo) [1780667] - [s390] s390/qeth: don't return -ENOTSUPP to userspace (Philipp Rudo) [1780667] - [s390] s390/qeth: fix promiscuous mode after reset (Philipp Rudo) [1780667] - [s390] s390/qeth: handle error due to unsupported transport mode (Philipp Rudo) [1780667] - [s390] s390/qeth: return proper errno on IO error (Philipp Rudo) [1780667] - [s390] s390/qeth: don't check drvdata in sysfs code (Philipp Rudo) [1780667] - [s390] s390/qeth: replace qeth_l3_get_addr_buffer() (Philipp Rudo) [1780667] - [s390] s390/qeth: remove VLAN tracking for L3 devices (Philipp Rudo) [1780667] - [net] net: 8021q: vlan_core: allow use list of vlans for real device (Philipp Rudo) [1780667] - [s390] s390/qeth: consolidate L3 mcast registration code (Philipp Rudo) [1780667] - [s390] s390/qeth: remove gratuitious RX modeset (Philipp Rudo) [1780667] - [s390] s390/qeth: fine-tune L3 mcast locking (Philipp Rudo) [1780667] - [s390] s390/qeth: clean up error path in qeth_core_probe_device() (Philipp Rudo) [1780667] - [s390] s390/qeth: don't cache MAC addresses for multicast IPs (Philipp Rudo) [1780667] - [s390] s390/qeth: use helpers for IP address hashing (Philipp Rudo) [1780667] - [s390] s390/qeth: don't set card state in qeth_qdio_clear_card() (Philipp Rudo) [1780667] - [s390] s390/qeth: consolidate some duplicated HW cmd code (Philipp Rudo) [1780667] - [s390] s390/qeth: keep IRQ disabled until NAPI is really done (Philipp Rudo) [1780667] - [s390] s390/qeth: use QDIO_BUFNR() (Philipp Rudo) [1780667] - [s390] s390/qdio: move SSQD Sniffer mask definition (Philipp Rudo) [1780667] - [s390] s390/qdio: don't attempt IRQ avoidance on Output SBALs (Philipp Rudo) [1780667] - [s390] s390/qdio: simplify thinint device registration (Philipp Rudo) [1780667] - [s390] s390/qdio: add statistics helper macro (Philipp Rudo) [1780667] - [s390] s390/qdio: remove a forward declaration (Philipp Rudo) [1780667] - [s390] s390/qdio: reduce log level for EQBS partial (Philipp Rudo) [1780667] - [s390] s390/qdio: use QDIO_BUFNR() (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix initialization of vnicc cmd masks during set online (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix error handling during VNICC initialization (Philipp Rudo) [1780667] - [s390] s390/qdio: clarify size of the QIB parm area (Philipp Rudo) [1780667] - [s390] s390/qeth: get vnicc sub-cmd type from reply data (Philipp Rudo) [1780667] - [s390] s390/qeth: merge qeth_reply struct into qeth_cmd_buffer (Philipp Rudo) [1780667] - [s390] s390/qeth: keep cmd alive after IO completion (Philipp Rudo) [1780667] - [s390] s390/qeth: use correct length field in SNMP cmd callback (Philipp Rudo) [1780667] - [s390] s390/qeth: propagate length of processed cmd IO data to callback (Philipp Rudo) [1780667] - [s390] s390/qeth: use node_descriptor struct (Philipp Rudo) [1780667] - [s390] s390/cio: move struct node_descriptor to cio.h (Philipp Rudo) [1780667] - [s390] scsi: zfcp: log FC Endpoint Security errors (Philipp Rudo) [1723820] - [s390] scsi: zfcp: enhance handling of FC Endpoint Security errors (Philipp Rudo) [1723820] - [lib] lib/zlib: add zlib_deflate_dfltcc_enabled() function (Philipp Rudo) [1659435] - [lib] s390/boot: add dfltcc= kernel command line parameter (Philipp Rudo) [1659435] - [lib] lib/zlib: add s390 hardware support for kernel zlib_inflate (Philipp Rudo) [1659435] - [s390] s390/boot: rename HEAP_SIZE due to name collision (Philipp Rudo) [1659435] - [lib] lib/zlib: add s390 hardware support for kernel zlib_deflate (Philipp Rudo) [1659435] - [base] mm/memory_hotplug: allow to specify a default online_type (David Hildenbrand) [1038941] - [base] mm/memory_hotplug: convert memhp_auto_online to store an online_type (David Hildenbrand) [1038941] - [mm] mm/memory_hotplug: unexport memhp_auto_online (David Hildenbrand) [1038941] - [hv] hv_balloon: don't check for memhp_auto_online manually (David Hildenbrand) [1038941] - [powerpc] powernv/memtrace: always online added memory blocks (David Hildenbrand) [1038941] - [base] drivers/base/memory: store mapping between MMOP_* and string in an array (David Hildenbrand) [1038941] - [base] drivers/base/memory: map MMOP_OFFLINE to 0 (David Hildenbrand) [1038941] - [base] drivers/base/memory: rename MMOP_ONLINE_KEEP to MMOP_ONLINE (David Hildenbrand) [1038941] - [netdrv] cxgb4: fix adapter crash due to wrong MC size (Vishal Kulkarni) [1813128] - [scsi] scsi: ibmvfc: Don't send implicit logouts prior to NPIV login (Steve Best) [1828725] - [fs] cifs: ignore cached share root handle closing errors (Leif Sahlberg) [1827485] - [fs] cifs: Optimize readdir on reparse points (Leif Sahlberg) [1827485] - [fs] cifs: Adjust indentation in smb2_open_file (Leif Sahlberg) [1827485] - [fs] CIFS: Close cached root handle only if it has a lease (Leif Sahlberg) [1827485] - [fs] SMB3: Fix crash in SMB2_open_init due to uninitialized field in compounding path (Leif Sahlberg) [1827485] - [fs] smb3: fix refcount underflow warning on unmount when no directory leases (Leif Sahlberg) [1827485] - [fs] fs: cifs: Delete usage of timespec64_trunc (Leif Sahlberg) [1827485] - [fs] smb3: improve check for when we send the security descriptor context on create (Leif Sahlberg) [1827485] - [fs] smb3: fix mode passed in on create for modetosid mount option (Leif Sahlberg) [1827485] - [fs] cifs: fix possible uninitialized access and race on iface_list (Leif Sahlberg) [1827485] - [fs] cifs: Fix lookup of SMB connections on multichannel (Leif Sahlberg) [1827485] - [fs] smb3: query attributes on file close (Leif Sahlberg) [1827485] - [fs] smb3: remove unused flag passed into close functions (Leif Sahlberg) [1827485] - [fs] cifs: remove redundant assignment to pointer pneg_ctxt (Leif Sahlberg) [1827485] - [fs] fs: cifs: Fix atime update check vs mtime (Leif Sahlberg) [1827485] - [fs] CIFS: fix a white space issue in cifs_get_inode_info() (Leif Sahlberg) [1827485] - [fs] cifs: update internal module version number (Leif Sahlberg) [1827485] - [fs] cifs: Always update signing key of first channel (Leif Sahlberg) [1827485] - [fs] cifs: Fix retrieval of DFS referrals in cifs_mount() (Leif Sahlberg) [1827485] - [fs] cifs: Fix potential softlockups while refreshing DFS cache (Leif Sahlberg) [1827485] - [fs] cifs: Fix lookup of root ses in DFS referral cache (Leif Sahlberg) [1827485] - [fs] cifs: Fix use-after-free bug in cifs_reconnect() (Leif Sahlberg) [1827485] - [fs] cifs: dump channel info in DebugData (Leif Sahlberg) [1827485] - [fs] smb3: dump in_send and num_waiters stats counters by default (Leif Sahlberg) [1827485] - [fs] cifs: try harder to open new channels (Leif Sahlberg) [1827485] - [fs] CIFS: Properly process SMB3 lease breaks (Leif Sahlberg) [1827485] - [fs] cifs: move cifsFileInfo_put logic into a work-queue (Leif Sahlberg) [1827485] - [fs] cifs: try opening channels after mounting (Leif Sahlberg) [1827485] - [fs] CIFS: refactor cifs_get_inode_info() (Leif Sahlberg) [1827485] - [fs] cifs: switch servers depending on binding state (Leif Sahlberg) [1827485] - [fs] cifs: add server param (Leif Sahlberg) [1827485] - [fs] cifs: add multichannel mount options and data structs (Leif Sahlberg) [1827485] - [fs] cifs: sort interface list by speed (Leif Sahlberg) [1827485] - [fs] CIFS: Fix SMB2 oplock break processing (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -EAGAIN when transport is reconnecting (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Only queue work for error recovery on memory registration (Leif Sahlberg) [1827485] - [fs] smb3: add debug messages for closing unmatched open (Leif Sahlberg) [1827485] - [fs] CIFS: Respect O_SYNC and O_DIRECT flags during reconnect (Leif Sahlberg) [1827485] - [fs] smb3: remove confusing dmesg when mounting with encryption ("seal") (Leif Sahlberg) [1827485] - [fs] cifs: close the shared root handle on tree disconnect (Leif Sahlberg) [1827485] - [fs] CIFS: Return directly after a failed build_path_from_dentry() in cifs_do_create() (Leif Sahlberg) [1827485] - [fs] CIFS: Use common error handling code in smb2_ioctl_query_info() (Leif Sahlberg) [1827485] - [fs] CIFS: Use memdup_user() rather than duplicating its implementation (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -ECONNABORTED when trasnport is not in connected state (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Add messages on RDMA session destroy and reconnection (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -EINVAL when the number of iovs exceeds SMBDIRECT_MAX_SGE (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Invalidate and deregister memory registration on re-send for direct I/O (Leif Sahlberg) [1827485] - [fs] cifs: Don't display RDMA transport on reconnect (Leif Sahlberg) [1827485] - [fs] CIFS: remove set but not used variables 'cinode' and 'netfid' (Leif Sahlberg) [1827485] - [fs] cifs: add support for flock (Leif Sahlberg) [1827485] - [fs] cifs: remove unused variable 'sid_user' (Leif Sahlberg) [1827485] - [fs] cifs: rename a variable in SendReceive() (Leif Sahlberg) [1827485] - [fs] SMB3: Fix persistent handles reconnect (Leif Sahlberg) [1827485] - [fs] fix memory leak in large read decrypt offload (Leif Sahlberg) [1827485] - [fs] cifs: Fix missed free operations (Leif Sahlberg) [1827485] - [fs] cifs: clarify comment about timestamp granularity for old servers (Leif Sahlberg) [1827485] - [fs] cifs: Handle -EINPROGRESS only when noblockcnt is set (Leif Sahlberg) [1827485] - [fs] smb3: remove noisy debug message and minor cleanup (Leif Sahlberg) [1827485] - [fs] fs: cifs: mute -Wunused-const-variable message (Leif Sahlberg) [1827485] - [fs] smb3: cleanup some recent endian errors spotted by updated sparse (Leif Sahlberg) [1827485] - [fs] CIFS: Fix oplock handling for SMB 2.1+ protocols (Leif Sahlberg) [1827485] - [fs] smb3: missing ACL related flags (Leif Sahlberg) [1827485] - [fs] smb3: pass mode bits into create calls (Leif Sahlberg) [1827485] - [fs] smb3: Add missing reparse tags (Leif Sahlberg) [1827485] - [fs] CIFS: fix max ea value size (Leif Sahlberg) [1827485] - [fs] fs/cifs/sess.c: Remove set but not used variable 'capabilities' (Leif Sahlberg) [1827485] - [fs] fs/cifs/smb2pdu.c: Make SMB2_notify_init static (Leif Sahlberg) [1827485] - [fs] smb3: fix leak in "open on server" perf counter (Leif Sahlberg) [1827485] - [fs] smb3: allow decryption keys to be dumped by admin for debugging (Leif Sahlberg) [1827485] - [fs] cifs: update internal module version number (Leif Sahlberg) [1827485] - [fs] cifs: modefromsid: write mode ACE first (Leif Sahlberg) [1827485] - [fs] cifs: cifsroot: add more err checking (Leif Sahlberg) [1827485] - [fs] smb3: add missing worker function for SMB3 change notify (Leif Sahlberg) [1827485] - [fs] cifs: Add support for root file systems (Leif Sahlberg) [1827485] - [fs] cifs: modefromsid: make room for 4 ACE (Leif Sahlberg) [1827485] - [fs] smb3: fix potential null dereference in decrypt offload (Leif Sahlberg) [1827485] - [fs] smb3: allow disabling requesting leases (Leif Sahlberg) [1827485] - [fs] smb3: improve handling of share deleted (and share recreated) (Leif Sahlberg) [1827485] - [fs] smb3: display max smb3 requests in flight at any one time (Leif Sahlberg) [1827485] - [fs] smb3: only offload decryption of read responses if multiple requests (Leif Sahlberg) [1827485] - [fs] cifs: add a helper to find an existing readable handle to a file (Leif Sahlberg) [1827485] - [fs] smb3: enable offload of decryption of large reads via mount option (Leif Sahlberg) [1827485] - [fs] smb3: allow parallelizing decryption of reads (Leif Sahlberg) [1827485] - [fs] smb3: allow skipping signature verification for perf sensitive configurations (Leif Sahlberg) [1827485] - [fs] smb3: add dynamic tracepoints for flush and close (Leif Sahlberg) [1827485] - [fs] smb3: log warning if CSC policy conflicts with cache mount option (Leif Sahlberg) [1827485] - [fs] smb3: add mount option to allow RW caching of share accessed by only 1 client (Leif Sahlberg) [1827485] - [fs] smb3: add some more descriptive messages about share when mounting cache=ro (Leif Sahlberg) [1827485] - [fs] smb3: add mount option to allow forced caching of read only share (Leif Sahlberg) [1827485] - [fs] cifs: fix dereference on ses before it is null checked (Leif Sahlberg) [1827485] - [fs] cifs: use existing handle for compound_op(OP_SET_INFO) when possible (Leif Sahlberg) [1827485] - [fs] cifs: create a helper to find a writeable handle by path name (Leif Sahlberg) [1827485] - [fs] cifs: remove set but not used variables (Leif Sahlberg) [1827485] - [fs] smb3: Incorrect size for netname negotiate context (Leif Sahlberg) [1827485] - [fs] cifs: remove unused variable (Leif Sahlberg) [1827485] - [fs] cifs: remove redundant assignment to variable rc (Leif Sahlberg) [1827485] - [fs] smb3: add missing flag definitions (Leif Sahlberg) [1827485] - [fs] cifs: add passthrough for smb2 setinfo (Leif Sahlberg) [1827485] - [fs] cifs: prepare SMB2_Flush to be usable in compounds (Leif Sahlberg) [1827485] - [fs] cifs: allow chmod to set mode bits using special sid (Leif Sahlberg) [1827485] - [fs] cifs: get mode bits from special sid on stat (Leif Sahlberg) [1827485] - [fs] fs: cifs: cifsssmb: remove redundant assignment to variable ret (Leif Sahlberg) [1827485] - [fs] cifs: fix a comment for the timeouts when sending echos (Leif Sahlberg) [1827485] - [fs] fs: cifs: switch to RC4 library interface (Leif Sahlberg) [1827485] - [fs] smb3: smbdirect no longer experimental (Leif Sahlberg) [1827485] - [fs] cifs: copy_file_range needs to strip setuid bits and update timestamps (Leif Sahlberg) [1827485] - [tools] perf vendor events s390: Add new deflate counters for IBM z15 (Philipp Rudo) [1827333] - [s390] s390/cpum_cf: Add new extended counters for IBM z15 (Philipp Rudo) [1827333] - [s390] s390/zcrypt: use kvmalloc instead of kmalloc for 256k alloc (Philipp Rudo) [1827310] - [s390] s390/pkey/zcrypt: Support EP11 AES secure keys (Philipp Rudo) [1723826] - [s390] s390/zcrypt: extend EP11 card and queue sysfs attributes (Philipp Rudo) [1723826] - [s390] s390/zcrypt: add new low level ep11 functions support file (Philipp Rudo) [1723826] - [s390] s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb (Philipp Rudo) [1723826] - [s390] s390/zcrypt: enable card/domain autoselect on ep11 cprbs (Philipp Rudo) [1723826] - [crypto] crypto/testmgr: enable selftests for paes-s390 ciphers (Philipp Rudo) [1780668] - [s390] s390/pkey: Add support for key blob with clear key value (Philipp Rudo) [1780668] - [s390] s390/crypto: enable clear key values for paes ciphers (Philipp Rudo) [1780668] - [s390] s390/crypto: Rework on paes implementation (Philipp Rudo) [1780668] - [s390] scsi: zfcp: trace FC Endpoint Security of FCP devices and connections (Philipp Rudo) [1723822] - [s390] scsi: zfcp: log FC Endpoint Security of connections (Philipp Rudo) [1723822] - [s390] scsi: zfcp: report FC Endpoint Security in sysfs (Philipp Rudo) [1723822] - [s390] scsi: zfcp: auto variables for dereferenced structs in open port handler (Philipp Rudo) [1723822] - [block] blk-iocost: Fix error on iocost_ioc_vrate_adj (Waiman Long) [1828563] - [s390] s390/ipl: add support to control memory clearing for FCP and CCW re-IPL (Philipp Rudo) [1812985] - [s390] s390: support KPROBES_ON_FTRACE (Philipp Rudo) [1810526] - [s390] s390/ftrace: generate traced function stack frame (Philipp Rudo) [1810526] - [s390] s390/ftrace: save traced function caller (Philipp Rudo) [1810526] - [misc] mei: me: fix irq number stored in hw struct (Tony Camuso) [1822645] - [misc] mei: me: add cedar fork device ids (Tony Camuso) [1822645] - [misc] mei: fix CNL itouch device number to match the spec (Tony Camuso) [1822645] - [misc] misc: Replace zero-length array with flexible-array member (Tony Camuso) [1822645] - [misc] mei: remove unused includes from pci-{me, txe}.c (Tony Camuso) [1822645] - [misc] mei: limit number of bytes in mei header (Tony Camuso) [1822645] - [misc] mei: bus: replace zero-length array with flexible-array member (Tony Camuso) [1822645] - [misc] mei: me: add jasper point DID (Tony Camuso) [1822645] - [misc] mei: hdcp: bind only with i915 on the same PCH (Tony Camuso) [1822645] - [misc] mei: bus: use simple sprintf for sysfs (Tony Camuso) [1822645] - [misc] mei: bus: add more client attributes to sysfs (Tony Camuso) [1822645] - [misc] mei: add trc detection register to sysfs (Tony Camuso) [1822645] - [misc] mei: abstract fw status register read (Tony Camuso) [1822645] - [misc] mei: me: store irq number in the hw struct (Tony Camuso) [1822645] - [misc] mei: me: mei_me_dev_init() use struct device instead of struct pci_dev (Tony Camuso) [1822645] - [misc] mei: me: add comet point V device id (Tony Camuso) [1822645] - [misc] mei: bus: prefix device names on bus with the bus name (Tony Camuso) [1822645] - [misc] mei: me: fix me_intr_clear function name in KDoc (Tony Camuso) [1822645] - [misc] mei: buf: drop 'running hook' debug messages (Tony Camuso) [1822645] - [misc] mei: avoid FW version request on Ibex Peak and earlier (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Fill transcoder index in port info (Tony Camuso) [1822645] - [misc] drm/i915: mei_hdcp: I915 sends ddi index as per ME FW (Tony Camuso) [1822645] - [drm] drm/i915: Attach content type property (Tony Camuso) [1822645] - [drm] drm: Add Content protection type property (Tony Camuso) [1822645] - [misc] mei: me: add Tiger Lake point LP device ID (Tony Camuso) [1822645] - [misc] mei: Use dev_get_drvdata where possible (Tony Camuso) [1822645] - [misc] mei: me: add mule creek canyon (EHL) device ids (Tony Camuso) [1822645] - [misc] mei: no need to check return value of debugfs_create functions (Tony Camuso) [1822645] - [documentation] mei: docs: add hdcp documentation (Tony Camuso) [1822645] - [documentation] mei: docs: add a short description for nfc behind mei (Tony Camuso) [1822645] - [documentation] mei: docs: update mei client bus documentation (Tony Camuso) [1822645] - [documentation] mei: docs: move iamt docs to a iamt.rst file (Tony Camuso) [1822645] - [documentation] mei: docs: move documentation under driver-api (Tony Camuso) [1822645] - [misc] mei: Convert to use DEFINE_SHOW_ATTRIBUTE macro (Tony Camuso) [1822645] - [drm] drm: generic fn converting be24 to cpu and vice versa (Tony Camuso) [1822645] - [misc] mei: expose device state in sysfs (Tony Camuso) [1822645] - [misc] mei: hdcp: use own Kconfig file (Tony Camuso) [1822645] - [misc] mei: adjust the copyright notice in the files (Tony Camuso) [1822645] - [misc] mei/hdcp: Fix SPDX identifiers (Tony Camuso) [1822645] - [misc] mei: convert to SPDX license tags (Tony Camuso) [1822645] - [misc] mei: add missing SPDX tag to mei Kconfig (Tony Camuso) [1822645] - [misc] mei: bus: move hw module get/put to probe/release (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Component framework for I915 Interface (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Closing wired HDCP2.2 Tx Session (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Enabling the HDCP authentication (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify M_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Repeater topology verification and ack (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Prepare Session Key (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify L_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Initiate Locality check (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Store the HDCP Pairing info (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify H_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify Receiver Cert and prepare km (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Initiate Wired HDCP2.2 Tx Session (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Define ME FW interface for HDCP2.2 (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Client driver for HDCP application (Tony Camuso) [1822645] - [misc] mei: bus: whitelist hdcp client (Tony Camuso) [1822645] - [misc] mei: hbm: clean the feature flags on link reset (Tony Camuso) [1822645] - [misc] mei: bus: export to_mei_cl_device for mei client devices drivers (Tony Camuso) [1822645] - [misc] mei: free read cb on ctrl_wr list flush (Tony Camuso) [1822645] - [misc] mei: me: add ice lake point device id (Tony Camuso) [1822645] - [misc] mei: squash single_recv_buf into one bit in client properties (Tony Camuso) [1822645] - [misc] mei: me: add denverton innovation engine device IDs (Tony Camuso) [1822645] - [misc] mei: me: mark LBG devices as having dma support (Tony Camuso) [1822645] - [misc] mei: dma: silent the reject message (Tony Camuso) [1822645] - [misc] mei: me: mark CNP devices as having dma support (Tony Camuso) [1822645] - [misc] mei: bump hbm version to 2.1 (Tony Camuso) [1822645] - [misc] mei: dma ring: implement transmit flow (Tony Camuso) [1822645] - [misc] mei: dma ring: implement rx circular buffer logic (Tony Camuso) [1822645] - [misc] mei: hw: add dma ring control block (Tony Camuso) [1822645] - [misc] mei: hbm: setup dma ring (Tony Camuso) [1822645] - [misc] mei: dma ring buffers allocation (Tony Camuso) [1822645] - [misc] mei: expedite ioctl return on the notify set operation error (Tony Camuso) [1822645] - [misc] mei: flush queues by the host client only (Tony Camuso) [1822645] - [misc] mei: hbm: drop BUG() from the hbm handler (Tony Camuso) [1822645] - [misc] mei: replace POLL* with EPOLL* for write queues (Tony Camuso) [1822645] - [misc] misc: remove redundant include moduleparam.h (Tony Camuso) [1822645] - [misc] mei: bus: need to unlink client before freeing (Tony Camuso) [1822645] - [misc] mei: bus: fix hw module get/put balance (Tony Camuso) [1822645] - [misc] mei: fix use-after-free in mei_cl_write (Tony Camuso) [1822645] - [misc] mei: ignore not found client in the enumeration (Tony Camuso) [1822645] - [misc] mei: restrict dma ring support to hbm version 2.1 (Tony Camuso) [1822645] - [misc] mei: hbm: introduce dma bit in the message header (Tony Camuso) [1822645] - [misc] mei: add support for variable length mei headers (Tony Camuso) [1822645] - [misc] mei: add mei_msg_hdr_init wrapper (Tony Camuso) [1822645] - [misc] mei: move hbuf_depth from the mei device to the hw modules (Tony Camuso) [1822645] - [misc] mei: cleanup slots to data conversions (Tony Camuso) [1822645] - [misc] mei: bus: suppress sign-compare warnings (Tony Camuso) [1822645] - [misc] mei: fix ssize_t to int assignment in read and write ops (Tony Camuso) [1822645] - [misc] mei: use correct type for counter variable in for loops (Tony Camuso) [1822645] - [misc] mei: check for error returned from mei_hbuf_empty_slots() (Tony Camuso) [1822645] - [misc] mei: don't update offset in write (Tony Camuso) [1822645] - [misc] mei: bus: type promotion bug in mei_fwver() (Tony Camuso) [1822645] - [misc] mei: bus: type promotion bug in mei_nfc_if_version() (Tony Camuso) [1822645] - [misc] mei: expose fw version to sysfs (Tony Camuso) [1822645] - [misc] mei: add optional timeout to internal bus recv (Tony Camuso) [1822645] - [misc] mei: remove unused MEI_IAMTHIF_STALL_TIMER define (Tony Camuso) [1822645] - [s390] s390/pci: Fix unexpected write combine on resource (Philipp Rudo) [1827311] - [powerpc] pwerpc/vas: Include linux/types.h in uapi/asm/vas-api.h (Gustavo Duarte) [1725806] - [documentation] Documentation/powerpc: VAS API (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Remove 'pid' in vas_tx_win_attr struct (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Enable and setup GZIP compresstion type (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Make enable code generic to add new GZIP compression type (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Rename nx-842-powernv file name to nx-common-powernv (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Initialize coproc entry with kzalloc (Gustavo Duarte) [1725806] - [crypto] crypto: nx - Add of_node_put() before return in 842 (Gustavo Duarte) [1725806] - [crypto] crypto/NX: Set receive window credits to max number of CRBs in RxFIFO (Gustavo Duarte) [1725806] - [powerpc] crypto/nx: Initialize 842 high and normal RxFIFO control registers (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Add VAS user space API (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Define VAS_TX_WIN_OPEN ioctl API (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Initialize window attributes for GZIP coprocessor type (Gustavo Duarte) [1725806] - [powerpc] powerpc: Use mm_context vas_windows counter to issue CP_ABORT (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Free send window in VAS instance after credits returned (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Display process stuck message (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Do not use default credits for receive window (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Print CRB and FIFO values (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Return credits after handling fault (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Update CSB and notify process for fault CRBs (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Setup thread IRQ handler per VAS instance (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Take reference to PID and mm for user space windows (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Register NX with fault window ID and IRQ port value (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Setup fault window per VAS instance (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Alloc and setup IRQ and trigger port (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Define nx_fault_stamp in coprocessor_request_block (Gustavo Duarte) [1725806] - [powerpc] powerpc/xive: Define xive_native_alloc_irq_on_chip() (Gustavo Duarte) [1725806] - [powerpc] powerpc/powernv: remove the unused vas_win_paste_addr and vas_win_id functions (Gustavo Duarte) [1725806] - [tools] intel-speed-select: Fix speed-select-base-freq-properties output on CLX-N (Prarit Bhargava) [1828306] - [tools] tools/power/x86/intel-speed-select: Fix CLX-N package information output (Prarit Bhargava) [1828306] - [kernel] sched/isolation: Allow "isolcpus=" to skip unknown sub-parameters (Peter Xu) [1799014] - [arm64] arm64: tlb: skip tlbi broadcast, fix speculative tlb lookups (Andrea Arcangeli) [1820817] - [x86] pci: hv: Introduce hv_msi_entry (Mohammed Gamal) [1816740] - [pci] hv: Move retarget related structures into tlfs header (Mohammed Gamal) [1816740] - [pci] hv: Move hypercall related definitions into tlfs header (Mohammed Gamal) [1816740] - [pci] hv: Reorganize the code in preparation of hibernation (Mohammed Gamal) [1816740] - [pci] hv: Add a Hyper-V PCI interface driver for software backchannel interface (Mohammed Gamal) [1816740] - [pci] hv: Add a paravirtual backchannel in software (Mohammed Gamal) [1816740]- [include] i2c: fix a doc warning (David Arcari) [1826759] - [i2c] i2c: acpi: put device when verifying client fails (David Arcari) [1826759] - [i2c] i2c: i2c-core-of: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: i2c-core-base: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: i2c-core-acpi: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: fix bus recovery stop mode timing (David Arcari) [1826759] - [i2c] i2c: core: Use DEVICE_ATTR_*() helper macros (David Arcari) [1826759] - [include] i2c: remove unneeded 'extern' from function declatations (David Arcari) [1826759] - [include] i2c: add helper to check if a client has a driver attached (David Arcari) [1826759] - [include] i2c: fix header file kernel-doc warning (David Arcari) [1826759] - [misc] eeprom: at24: use devm_i2c_new_dummy_device() (David Arcari) [1826759] - [i2c] i2c: remove i2c_new_dummy() API (David Arcari) [1826759] - [media] media: dvb-frontends: cxd2820r_core: convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: dvb-frontends: mn88473: convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: dvb-frontends: mn88472: convert to i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83791d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83793d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83781d) convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: ir-kbd-i2c: convert to i2c_new_dummy_device() (David Arcari) [1826759] - [misc] misc: eeprom: max6875: convert to i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83792d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (asb100) convert to i2c_new_dummy_device (David Arcari) [1826759] - [i2c] i2c: replace i2c_new_probed_device with an ERR_PTR variant (David Arcari) [1826759] - [i2c] i2c: smbus: Don't filter out duplicate alerts (David Arcari) [1826759] - [i2c] i2c: of: Populate fwnode in of_i2c_get_board_info() (David Arcari) [1826759] - [i2c] i2c: remove helpers for ref-counting clients (David Arcari) [1826759] - [i2c] i2c: core: fix use after free in of_i2c_notify (David Arcari) [1826759] - [i2c] i2c: acpi: Force bus speed to 400KHz if a Silead touchscreen is present (David Arcari) [1826759] - [i2c] i2c: add support for filters optional properties (David Arcari) [1826759] - [i2c] i2c: slave-eeprom: Add read only mode (David Arcari) [1826759] - [i2c] i2c: slave-eeprom: Add comment about address handling (David Arcari) [1826759] - [i2c] i2c-eeprom_slave: Add support for more eeprom models (David Arcari) [1826759] - [i2c] i2c: make i2c_unregister_device() ERR_PTR safe (David Arcari) [1826759] - [media] i2c: replace i2c_new_secondary_device with an ERR_PTR variant (David Arcari) [1826759] - [i2c] i2c: Drop unneeded check for of_node (David Arcari) [1826759] - [i2c] i2c: core: Tidy up handling of init_irq (David Arcari) [1826759] - [i2c] i2c: core: Move ACPI gpio IRQ handling into i2c_acpi_get_irq (David Arcari) [1826759] - [i2c] i2c: core: Move ACPI IRQ handling to probe time (David Arcari) [1826759] - [i2c] i2c: acpi: Factor out getting the IRQ from ACPI (David Arcari) [1826759] - [i2c] i2c: acpi: Use available IRQ helper functions (David Arcari) [1826759] - [i2c] i2c: core: Allow whole core to use i2c_dev_irq_from_resources (David Arcari) [1826759] - [i2c] i2c: core: add sysfs header (David Arcari) [1826759] - [i2c] i2c: add newly exported functions to the header, too (David Arcari) [1826759] - [i2c] i2c: mux: add sysfs header (David Arcari) [1826759] - [include] i2c: headers: reformat header comment and update copyright (David Arcari) [1826759] - [include] i2c: headers: update docs about I2C_CLIENT_* (David Arcari) [1826759] - [i2c] i2c: core: always have a named variable in arguments (David Arcari) [1826759] - [include] i2c: headers: always have a named variable in arguments (David Arcari) [1826759] - [include] i2c: headers: don't use 'dev' as adapter variable (David Arcari) [1826759] - [i2c] i2c: mux: Use struct_size() in devm_kzalloc() (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (David Arcari) [1826759] - [i2c] i2c: acpi: export i2c_acpi_find_adapter_by_handle (David Arcari) [1826759] - [media] tua6100: Avoid build warnings (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1826759] - [i2c] i2c: acpi: permit bus speed to be discovered after enumeration (David Arcari) [1826759] - [i2c] i2c: dev: fix potential memory leak in i2cdev_ioctl_rdwr (David Arcari) [1826759] - [include] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (David Arcari) [1826759] - [i2c] treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1826759] - [i2c] i2c: core: add device-managed version of i2c_new_dummy (David Arcari) [1826759] - [i2c] i2c: core: improve return value handling of i2c_new_device and i2c_new_dummy (David Arcari) [1826759] - [i2c] i2c: core: apply 'is_suspended' check for SMBus, too (David Arcari) [1826759] - [i2c] i2c: core: ratelimit 'transfer when suspended' errors (David Arcari) [1826759] - [i2c] i2c: Prevent runtime suspend of adapter when Host Notify is required (David Arcari) [1826759] - [i2c] gcc-9: don't warn about uninitialized variable (David Arcari) [1826759] - [i2c] i2c: mux: populate the new *_atomic callbacks (David Arcari) [1826759] - [i2c] i2c: core: introduce callbacks for atomic transfers (David Arcari) [1826759] - [i2c] i2c: core: use I2C locking behaviour also for SMBUS (David Arcari) [1826759] - [i2c] i2c: core: remove use of in_atomic() (David Arcari) [1826759] - [include] i2c: apply coding style for struct i2c_adapter (David Arcari) [1826759] - [i2c] i2c: add extra check to safe DMA buffer helper (David Arcari) [1826759] - [i2c] i2c: Allow recovery of the initial IRQ by an I2C client device (David Arcari) [1826759] - [i2c] i2c: expand minor range when registering chrdev region (David Arcari) [1826759] - [i2c] i2c: core-smbus: don't trace smbus_reply data on errors (David Arcari) [1826759] - [i2c] i2c: of: Try to find an I2C adapter matching the parent (David Arcari) [1826759] - [include] i2c: acpi: Move I2C bits from acpi.h to i2c.h (David Arcari) [1826759] - [i2c] i2c: dev: prevent adapter retries and timeout being set as minus value (David Arcari) [1826759] - [i2c] i2c: add suspended flag and accessors for i2c adapters (David Arcari) [1826759] - [i2c] treewide: surround Kconfig file paths with double quotes (David Arcari) [1826759] - [i2c] i2c: acpi: Introduce i2c_acpi_get_i2c_resource() helper (David Arcari) [1826759] - [i2c] i2c: acpi: Use ACPI_FAILURE instead of !ACPI_SUCCESS (David Arcari) [1826759] - [i2c] i2c: acpi: Return error pointers from i2c_acpi_new_device() (David Arcari) [1826759] - [i2c] i2c: Clear client->irq in i2c_device_remove (David Arcari) [1826759] - [i2c] i2c: Remove unnecessary call to irq_find_mapping (David Arcari) [1826759] - [i2c] i2c: Fix kerneldoc for renamed i2c dma put function (David Arcari) [1826759] - [i2c] i2c: core: remove level of indentation in i2c_transfer (David Arcari) [1826759] - [i2c] i2c: core: remove outdated DEBUG output (David Arcari) [1826759] - [i2c] i2c: refactor function to release a DMA safe buffer (David Arcari) [1826759] - [i2c] i2c: don't use any __deprecated handling anymore (David Arcari) [1826759] - [i2c] i2c: remove deprecated attach_adapter callback (David Arcari) [1826759] - [i2c] i2c: core: Parse SDA hold time from firmware (David Arcari) [1826759] - [i2c] i2c: quirks: add zero length checks (David Arcari) [1826759] - [i2c] i2c: recovery: make pin init look like STOP (David Arcari) [1826759] - [i2c] i2c: recovery: rename variable for easier understanding (David Arcari) [1826759] - [i2c] i2c: recovery: add get_bus_free callback (David Arcari) [1826759] - [i2c] i2c: recovery: refactor recovery function (David Arcari) [1826759] - [i2c] i2c: recovery: require either get_sda or set_sda (David Arcari) [1826759] - [i2c] i2c: remove i2c_lock_adapter and use i2c_lock_bus directly (David Arcari) [1826759] - [media] media: tda1004x: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: tda18271: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: af9013: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: drxk_hard: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: rtl2830: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [i2c] i2c: mux: pca9541: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [i2c] i2c: mux: make use of __i2c_smbus_xfer (David Arcari) [1826759] - [kvm] KVM: PPC: Book3S HV: Fix H_CEDE return code for nested guests (David Gibson) [1778556] - [block] block/diskstats: more accurate approximation of io_ticks for slow disks (Ming Lei) [1811745] - [scsi] scsi: storvsc: Correctly set number of hardware queues for IDE disk (Cathy Avery) [1816702] - [netdrv] bonding/alb: make sure arp header is pulled before accessing it (Jarod Wilson) [1819408] - [netdrv] bonding/alb: properly access headers in bond_alb_xmit() (Jarod Wilson) [1819408] - [netdrv] bonding: rename AD_STATE_* to LACP_STATE_* (Jarod Wilson) [1819408] - [netdrv] bonding: fix active-backup transition after link failure (Jarod Wilson) [1819408] - [netdrv] bonding: move 802.3ad port state flags to uapi (Jarod Wilson) [1819408] - [netdrv] bonding: fix bond_neigh_init() (Jarod Wilson) [1819408] - [netdrv] bonding: fix state transition issue in link monitoring (Jarod Wilson) [1819408] - [netdrv] bonding: fix potential NULL deref in bond_update_slave_arr (Jarod Wilson) [1819408] - [netdrv] team: Always enable vlan tx offload (Hangbin Liu) [1827017] - [net] netlink: Use netlink header as base to calculate bad attribute offset (Andrea Claudi) [1825252] - [net] netlink: cap max groups which will be considered in netlink_bind() (Andrea Claudi) [1825252] - [net] tcp: repair: fix TCP_QUEUE_SEQ implementation (Paolo Abeni) [1823771] - [net] tcp: fix "old stuff" D-SACK causing SACK to be treated as D-SACK (Paolo Abeni) [1823771] - [net] tcp: refine rule to allow EPOLLOUT generation under mem pressure (Paolo Abeni) [1823771] - [net] tcp: refine tcp_write_queue_empty() implementation (Paolo Abeni) [1823771] - [include] fib: add missing attribute validation for tun_id (Marcelo Leitner) [1823468] - [include] net/flow_dissector: remove unexist field description (Marcelo Leitner) [1823468] - [net] vlan: vlan_changelink() should propagate errors (Marcelo Leitner) [1823468] - [net] af_packet: set defaule value for tmo (Marcelo Leitner) [1823468] - [net] packet: fix data-race in fanout_flow_is_huge() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff refcounting in llc_conn_state_process() (Marcelo Leitner) [1823468] - [net] llc: fix another potential sk_buff leak in llc_ui_sendmsg() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff leak in llc_conn_service() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff leak in llc_sap_state_process() (Marcelo Leitner) [1823468] - [net] openvswitch: Fix conntrack cache with timeout (Patrlck Talbert) [1765587] - [net] openvswitch: Fix log message in ovs conntrack (Patrlck Talbert) [1765587] - [net] openvswitch: use after free in __ovs_ct_free_action() (Patrlck Talbert) [1765587] - [net] openvswitch: Add timeout support to ct action (Patrlck Talbert) [1765587] - [net] netfilter: Export nf_ct_{set, destroy}_timeout() (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: ctnl_timeout_find_get() returns incorrect pointer to type (Patrlck Talbert) [1765587] - [net] netfilter: remove ifdef around cttimeout in struct nf_conntrack_l4proto (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: decouple timeout policy from nfnetlink_cttimeout object (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: move ctnl_untimeout to nf_conntrack (Patrlck Talbert) [1765587] - [netdrv] ipvlan: do not use cond_resched_rcu() in ipvlan_process_multicast() (Davide Caratti) [1822906] - [netdrv] ipvlan: add cond_resched_rcu() while processing muticast backlog (Davide Caratti) [1822906] - [netdrv] ipvlan: don't deref eth hdr before checking it's set (Davide Caratti) [1822906] - [netdrv] ipvlan: do not add hardware address of master to its unicast filter list (Davide Caratti) [1822906] - [include] net/dst: do not confirm neighbor for vxlan and geneve pmtu update (Hangbin Liu) [1755686] - [net] sit: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] vti: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] tunnel: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [include] net/dst: add new function skb_dst_update_pmtu_no_confirm (Hangbin Liu) [1755686] - [netdrv] gtp: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] ip6_gre: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] add bool confirm_neigh parameter for dst_ops.update_pmtu (Hangbin Liu) [1755686] - [net] neigh: support smaller retrans_time settting (Hangbin Liu) [1767282] - [include] net: core: add helper tcp_v6_gso_csum_prep (Josef Oskera) [1818097] - [net] ip_tunnel: fix interface lookup with no key (Guillaume Nault) [1822247] - [net] ipv4: fix a RCU-list lock in inet_dump_fib() (Guillaume Nault) [1822247] - [net] gre: fix uninit-value in __iptunnel_pull_header (Guillaume Nault) [1822247] - [net] netfilter: conntrack: allow insertion of clashing entries (Florian Westphal) [1821404] - [net] netfilter: conntrack: split resolve_clash function (Florian Westphal) [1821404] - [net] netfilter: conntrack: place confirm-bit setting in a helper (Florian Westphal) [1821404] - [net] netfilter: never get/set skb->tstamp (Florian Westphal) [1821404] - [net] netfilter: conntrack: remove two args from resolve_clash (Florian Westphal) [1821404] - [net] netfilter: conntrack: tell compiler to not inline nf_ct_resolve_clash (Florian Westphal) [1821404] - [netdrv] macsec: restrict to ethernet devices (Sabrina Dubroca) [1820524] - [netdrv] macsec: add missing attribute validation for port (Sabrina Dubroca) [1820524] - [net] netns: restore ops before calling ops_exit_list (Ivan Vecera) [1822568] - [net] netns: add pre_exit method to struct pernet_operations (Ivan Vecera) [1822568] - [include] net: dst: Force 4-byte alignment of dst_metrics (Guillaume Nault) [1822148] - [include] net: annotate lockless accesses to sk->sk_napi_id (Guillaume Nault) [1822148] - [net] Fix typo of SKB_SGO_CB_OFFSET (Guillaume Nault) [1822148] - [net] use indirect call wrappers for skb_copy_datagram_iter() (Guillaume Nault) [1822148] - [net] datagram: Make __skb_datagram_iter static (Guillaume Nault) [1822148] - [net] Fix Tx hash bound checking (Guillaume Nault) [1822148] - [net] openvswitch: add missing attribute validation for hash (Eelco Chaudron) [1819202] - [net] openvswitch: Distribute switch variables for initialization (Eelco Chaudron) [1819202] - [net] openvswitch: support asymmetric conntrack (Eelco Chaudron) [1819202] - [net] openvswitch: remove another BUG_ON() (Eelco Chaudron) [1819202] - [net] openvswitch: drop unneeded BUG_ON() in ovs_flow_cmd_build_info() (Eelco Chaudron) [1819202] - [net] openvswitch: don't call pad_packet if not necessary (Eelco Chaudron) [1819202] - [net] openvswitch: add hash info to upcall (Eelco Chaudron) [1819202] - [net] openvswitch: select vport upcall portid directly (Eelco Chaudron) [1819202] - [net] openvswitch: simplify the ovs_dp_cmd_new (Eelco Chaudron) [1819202] - [net] openvswitch: fix possible memleak on destroy flow-table (Eelco Chaudron) [1819202] - [net] openvswitch: add likely in flow_lookup (Eelco Chaudron) [1819202] - [net] openvswitch: simplify the flow_hash (Eelco Chaudron) [1819202] - [net] openvswitch: optimize flow-mask looking up (Eelco Chaudron) [1819202] - [net] openvswitch: optimize flow mask cache hash collision (Eelco Chaudron) [1819202] - [net] openvswitch: shrink the mask array if necessary (Eelco Chaudron) [1819202] - [net] openvswitch: convert mask list in mask array (Eelco Chaudron) [1819202] - [net] openvswitch: add flow-mask cache for performance (Eelco Chaudron) [1819202] - [net] openvswitch: Allow attaching helper in later commit (Eelco Chaudron) [1819202] - [net] openvswitch: change type of UPCALL_PID attribute to NLA_UNSPEC (Eelco Chaudron) [1819202] - [net] openvswitch: Make metadata_dst tunnel work in IP_TUNNEL_INFO_BRIDGE mode (Eelco Chaudron) [1819202] - [netdrv] mlxsw: spectrum_router: Remove unlikely user-triggerable warning (Ivan Vecera) [1821358] - [net] ipv6: Error when route does not have any valid nexthops (Ivan Vecera) [1821358] - [tools] selftests: mlxsw: Add a test for FIB offload indication (Ivan Vecera) [1821358] - [net] ipv6: Stop sending in-kernel notifications for each nexthop (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Create IPv6 multipath routes in one go (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Add / delete multiple IPv6 nexthops (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Pass array of routes to route handling functions (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Adjust IPv6 replace logic to new notifications (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Pass multiple routes to work item (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Prepare function to return errors (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Remove processing of IPv6 append notifications (Ivan Vecera) [1821358] - [net] ipv6: Add IPv6 multipath notification for route delete (Ivan Vecera) [1821358] - [net] ipv6: Add IPv6 multipath notifications for add / replace (Ivan Vecera) [1821358] - [netdrv] netdevsim: Ignore IPv6 multipath notifications (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Ignore IPv6 multipath notifications (Ivan Vecera) [1821358] - [net] ipv6: Extend notifier info for multipath routes (Ivan Vecera) [1821358] - [net] ipv6: export function to send route updates (Ivan Vecera) [1821358] - [net] sctp: fix possibly using a bad saddr with a given dst (Xin Long) [1821578] - [net] sctp: fix refcount bug in sctp_wfree (Xin Long) [1821578] - [net] sctp: move the format error check out of __sctp_sf_do_9_1_abort (Xin Long) [1821578] - [net] Remove switchdev_ops (Ivan Vecera) [1821402] - [net] switchdev: Replace port attr set SDO with a notification (Ivan Vecera) [1821402] - [net] switchdev: Complete removal of switchdev_port_attr_get() (Ivan Vecera) [1821402] - [net] Get rid of switchdev_port_attr_get() (Ivan Vecera) [1821402] - [net] Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT (Ivan Vecera) [1821402] - [net] fib_notifier: move fib_notifier_ops from struct net into per-net struct (Ivan Vecera) [1821186] - [net] Properly unlink GRO packets on overflow. (Ivan Vecera) [1805302] - [net] Add and use skb_list_del_init(). (Ivan Vecera) [1805302] - [net] Add and use skb_mark_not_on_list(). (Ivan Vecera) [1805302] - [net] Init backlog NAPI's gro_hash. (Ivan Vecera) [1805302] - [net] gro: properly remove skb from list (Ivan Vecera) [1805302] - [net] core: trivial netif_receive_skb_list() entry point (Ivan Vecera) [1805302] - [net] Convert GRO SKB handling to list_head. (Ivan Vecera) [1805302] - [net] ipv6: don't auto-add link-local address to lag ports (Jarod Wilson) [1733953] - [tools] selftests: forwarding: vxlan_bridge_1d: use more proper tos value (Hangbin Liu) [1816587] - [tools] selftests: forwarding: vxlan_bridge_1d: fix tos value (Hangbin Liu) [1816587] - [tools] selftests: forwarding: use proto icmp for {gretap, ip6gretap}_mac testing (Hangbin Liu) [1816587] - [tools] fcnal-test: Fix vrf argument in local tcp tests (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for destination IP link-local (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for source IP equals destination IP (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for multicast destination MAC mismatch (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for source IP in class E (Hangbin Liu) [1816587] - [tools] selftests/net: make so_txtime more robust to timer variance (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add speed and auto-negotiation test (Hangbin Liu) [1816587] - [tools] selftests: forwarding: lib.sh: Add wait for dev with timeout (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add ethtool_lib.sh (Hangbin Liu) [1816587] - [tools] selftests: net: avoid ptl lock contention in tcp_mmap (Hangbin Liu) [1816587] - [tools] selftest: net: add alternative names test (Hangbin Liu) [1816587] - [tools] selftest: net: add some traceroute tests (Hangbin Liu) [1816587] - [tools] selftests: net: Fix printf format warnings on arm (Hangbin Liu) [1816587] - [tools] selftests: net: Use size_t and ssize_t for counting file size (Hangbin Liu) [1816587] - [tools] selftests: Make l2tp.sh executable (Hangbin Liu) [1816587] - [tools] selftests/net: add nettest to .gitignore (Hangbin Liu) [1816587] - [tools] selftests: Add test cases for `ip nexthop flush proto XX` (Hangbin Liu) [1816587] - [tools] selftest: A few cleanups for fib_nexthops.sh (Hangbin Liu) [1816587] - [tools] selftests: Fix get_ifidx and callers in nettest.c (Hangbin Liu) [1816587] - [tools] selftests: Fix detection of nettest command in fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add l2tp tests (Hangbin Liu) [1816587] - [tools] selftests: nettest: fix spelling mistake: "potocol" -> "protocol" (Hangbin Liu) [1816587] - [tools] selftests: Add use case section to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 netfilter tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 netfilter tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 runtime tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 runtime tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 address bind tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 address bind tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 udp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 udp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 tcp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 tcp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 ping tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 ping tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Setup for functional tests for fib and socket lookups (Hangbin Liu) [1816587] - [tools] selftests: Add nettest (Hangbin Liu) [1816587] - [tools] selftests/net: add missing gitignores (ipv6_flowlabel) (Hangbin Liu) [1816587] - [tools] selftests: txring_overwrite: fix incorrect test of mmap() return value (Hangbin Liu) [1816587] - [tools] selftests/net: skip psock_tpacket test if KALLSYMS was not enabled (Hangbin Liu) [1816587] - [tools] selftests: rtnetlink: skip ipsec offload tests if netdevsim isn't present (Hangbin Liu) [1816587] - [tools] selftests: Add test cases for nexthop objects (Hangbin Liu) [1816587] - [tools] selftests/net: ipv6 flowlabel (Hangbin Liu) [1816587] - [tools] selftests/net: SO_TXTIME with ETF and FQ (Hangbin Liu) [1816587] - [tools] selftests: fib-onlink: Make quiet by default (Hangbin Liu) [1816587] - [tools] selftests/net: correct the return value for run_afpackettests (Hangbin Liu) [1816587] - [tools] selftests/net: correct the return value for run_netsocktests (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add reverse path forwarding (RPF) test cases (Hangbin Liu) [1816587] - [tools] selftest/net: Remove duplicate header (Hangbin Liu) [1816587] - [tools] selftests: fib_tests: sleep after changing carrier. again. (Hangbin Liu) [1816587] - [tools] selftests: net: use LDLIBS instead of LDFLAGS (Hangbin Liu) [1816587] - [tools] selftests/net: add txring_overwrite (Hangbin Liu) [1816587] - [tools] fib_tests: Add tests for invalid metric on route (Hangbin Liu) [1816587] - [tools] selftests: forwarding: test for bridge sticky flag (Hangbin Liu) [1816587] - [tools] selftests: net: Test headroom handling of ip6_gre devices (Hangbin Liu) [1816587] - [net] Don't disable interrupts in __netdev_alloc_skb() (Andrea Claudi) [1811207] - [net] Don't disable interrupts in napi_alloc_frag() (Andrea Claudi) [1811207] - [net] ipv4: ensure rcu_read_lock() in cipso_v4_error() (Matteo Croce) [1720708] - [net] ipv4: add sanity checks in ipv4_link_failure() (Matteo Croce) [1720708] - [net] ipv4: ensure rcu_read_lock() in ipv4_link_failure() (Matteo Croce) [1720708] - [net] ipv4: recompile ip options in ipv4_link_failure (Matteo Croce) [1720708] - [net] avoid use IPCB in cipso_v4_error (Matteo Croce) [1720708] - [net] Add __icmp_send helper. (Matteo Croce) [1720708] - [net] ipv4: defensive cipso option parsing (Matteo Croce) [1720708] - [net] netfilter: nf_queue: enqueue skbs with NULL dst (Matteo Croce) [1786116]- [powerpc] powerpc/pseries/ddw: Extend upper limit for huge DMA window for persistent memory (Steve Best) [1817596] - [cpuidle] cpuidle: haltpoll: allow force loading on hosts without the REALTIME hint (David Arcari) [1825353] - [cpuidle] cpuidle: dt: Support hierarchical CPU idle states (David Arcari) [1825353] - [of] of: base: Add of_get_cpu_state_node() to get idle states for a CPU node (David Arcari) [1825353] - [cpuidle] cpuidle: Allow idle states to be disabled by default (David Arcari) [1825353] - [cpuidle] cpuidle: Drop unnecessary type cast in cpuidle_poll_time() (David Arcari) [1825353] - [cpuidle] cpuidle: Fix cpuidle_driver_state_disabled() (David Arcari) [1825353] - [cpuidle] cpuidle: use first valid target residency as poll time (David Arcari) [1825353] - [cpuidle] cpuidle: Drop disabled field from struct cpuidle_state (David Arcari) [1825353] - [cpuidle] cpuidle: Pass exit latency limit to cpuidle_use_deepest_state() (David Arcari) [1825353] - [include] cpuidle: Allow idle injection to apply exit latency limit (David Arcari) [1825353] - [thermal] cpuidle: play_idle: Increase the resolution to usec (David Arcari) [1825353] - [cpuidle] cpuidle: Use nanoseconds as the unit of time (David Arcari) [1825353] - [cpuidle] cpuidle: menu: Allow tick to be stopped if PM QoS is used (David Arcari) [1825353] - [cpuidle] cpuidle: Consolidate disabled state checks (David Arcari) [1825353] - [cpuidle] cpuidle: Do not unset the driver if it is there already (David Arcari) [1825353] - [cpuidle] cpuidle: haltpoll: Take 'idle=' override into account (David Arcari) [1825353] - [cpuidle] cpuidle-haltpoll: Enable kvm guest polling when dedicated physical CPUs are available (David Arcari) [1825353] - [fs] gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0 (Abhijith Das) [1655566] - [fs] gfs2: Another gfs2_find_jhead fix (Abhijith Das) [1655566] - [fs] gfs2: read journal in large chunks (Abhijith Das) [1655566] - [fs] gfs2: add a helper function to get_log_header that can be used elsewhere (Abhijith Das) [1655566] - [fs] gfs2: changes to gfs2_log_XXX_bio (Abhijith Das) [1655566] - [fs] gfs2: add more timing info to journal recovery process (Abhijith Das) [1655566] - [mm] mm: hugetlb controller for cgroup v2 (Joel Savitz) [1810728] - [arm64] crypto: arm64/aes-ce - implement 5 way interleave for ECB, CBC and CTR (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce - add 5 way interleave routines (Mark Salter) [1826982] - [arm64] crypto: arm64/sha2-ce - correct digest for empty data in finup (Mark Salter) [1826982] - [arm64] crypto: arm64/sha1-ce - correct digest for empty data in finup (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-neonbs - don't access already-freed walk.iv (Mark Salter) [1826982] - [arm64] crypto: arm64/cbcmac - handle empty messages in same way as template (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - update IV after partial final CTR block (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-neonbs - fix returning final keystream block (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif-ce - cleanup and optimizations (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - register PMULL variants as separate algos (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - remove dead code (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - revert to C code for short inputs (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-neon - bump priority to 150 (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash - register PMULL variants as separate algos (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ccm - don't use an atomic walk needlessly (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ccm - fix bugs in non-NEON fallback routine (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - ensure XTS mask is always loaded (Mark Salter) [1826982] - [arm64] crypto: arm64/aes - fix handling sub-block CTS-CBC inputs (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - improve XTS mask handling (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - add support for CTS-CBC mode (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - revert NEON yield for skciphers (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - remove pointless (u8 *) casts (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - implement non-Crypto Extensions alternative (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - preparatory refactor for 8x8 PMULL version (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-modes - get rid of literal load of addend vector (Mark Salter) [1826982] - [arm64] crypto: arm64/sm4-ce - check for the right CPU feature bit (Mark Salter) [1826982] - [arm64] crypto: arm64/gcm-aes-ce - fix no-NEON fallback code (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-gcm-ce - fix scatterwalk API violation (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-ce - implement 4-way aggregation (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-ce - replace NEON yield check with block limit (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - don't reload key schedule if avoidable (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - implement 2-way aggregation (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - operate on two input blocks at a time (Mark Salter) [1826982] - [mm] mm, slub: prevent kmalloc_node crashes and memory leaks (Rafael Aquini) [1819839] - [mm] mm: slub: be more careful about the double cmpxchg of freelist (Rafael Aquini) [1819839] - [mm] mm: slub: add missing TID bump in kmem_cache_alloc_bulk() (Rafael Aquini) [1819839] - [mm] mm/slub.c: avoid slub allocation while holding list_lock (Rafael Aquini) [1819839] - [mm] mm/slub.c: clean up validate_slab() (Rafael Aquini) [1819839] - [mm] mm: slub: print the offset of fault addresses (Rafael Aquini) [1819839] - [mm] hugetlbfs: don't retry when pool page allocations start to fail (Rafael Aquini) [1727288] - [mm] mm, compaction: raise compaction priority after it withdrawns (Rafael Aquini) [1727288] - [mm] mm, reclaim: cleanup should_continue_reclaim() (Rafael Aquini) [1727288] - [mm] mm, reclaim: make should_continue_reclaim perform dryrun detection (Rafael Aquini) [1727288]- [tools] bpf: selftests: remove test_bpftool_build.sh from TEST_PROGS (Yauheni Kaliuta) [1813365] - [tools] libbpf: Support .text sub-calls relocations (Yauheni Kaliuta) [1813365] - [tools] libbpf: Sanitize global functions (Yauheni Kaliuta) [1813365] - [kernel] workqueue: Add RCU annotation for pwq list walk (Yauheni Kaliuta) [1813365] - [kernel] perf/core: Add SRCU annotation for pmus list walk (Yauheni Kaliuta) [1813365] - [net] kcm: disable preemption in kcm_parse_func_strparser() (Yauheni Kaliuta) [1813365] - [net] kcm: use BPF_PROG_RUN (Yauheni Kaliuta) [1813365] - [kernel] bpf: clarify description for CONFIG_BPF_EVENTS (Yauheni Kaliuta) [1813365] - [lib] test_bpf: Fix a new clang warning about xor-ing two numbers (Yauheni Kaliuta) [1813365] - [include] bpf: add include guard to tnum.h (Yauheni Kaliuta) [1813365] - [tools] libbpf: handle symbol versioning properly for libbpf.a (Yauheni Kaliuta) [1813365] - [net] bpf, devmap: Pass lockdep expression to RCU lists (Yauheni Kaliuta) [1813365] - [tools] libbpf: Fix Makefile' libbpf symbol mismatch diagnostic (Yauheni Kaliuta) [1813365] - [net] xdp: Fix cleanup on map free for devmap_hash map type (Yauheni Kaliuta) [1813365] - [tools] tools, bpf: Fix build for 'make -s tools/bpf O=' (Yauheni Kaliuta) [1813365] - [tools] libbpf: Fix passing uninitialized bytes to setsockopt (Yauheni Kaliuta) [1813365] - [tools] selftests: bpf: Skip write only files in debugfs (Yauheni Kaliuta) [1813365] - [net] xdp: Handle device unregister for devmap_hash map type (Yauheni Kaliuta) [1813365] - [net] ipv4: Add lockdep condition to fix for_each_entry() (Yauheni Kaliuta) [1813365] - [kernel] rcu/sync: Remove custom check for RCU readers (Yauheni Kaliuta) [1813365] - [kernel] rcu: Add support for consolidated-RCU reader checking (Yauheni Kaliuta) [1813365] - [kernel] rcu: Remove redundant debug_locks check in rcu_read_lock_sched_held() (Yauheni Kaliuta) [1813365] - [net] xdp: Prevent overflow in devmap_hash cost calculation for 32-bit builds (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: Add a workaround for asm_inline (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: Fix build for task_fd_query_user.c (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: Don't leak server_fd in test_sockopt_inherit (Yauheni Kaliuta) [1813365] - [tools] tools: bpf: Use !building_out_of_srctree to determine srctree (Yauheni Kaliuta) [1813365] - [net] bpf: Clean up indentation issue in BTF kflag processing (Yauheni Kaliuta) [1813365] - [tools] libbpf: Teach btf_dumper to emit stand-alone anonymous enum definitions (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: adjust strobemeta loop to satisfy latest clang (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: delete unused variables in test_sysctl (Yauheni Kaliuta) [1813365] - [tools] libbpf: fix false uninitialized variable warning (Yauheni Kaliuta) [1813365] - [tools] libbpf: Remove getsockopt() check for XDP_OPTIONS (Yauheni Kaliuta) [1813365] - [net] xdp: Fix race in dev_map_hash_update_elem() when replacing element (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_tcp_rtt (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_inherit (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_multi (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_sk (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: add test__join_cgroup helper (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: precision tracking tests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: fix endianness issues in test_sysctl (Yauheni Kaliuta) [1813365] - [arm64] arm64: bpf: optimize modulo operation (Yauheni Kaliuta) [1813365] - [s390] bpf: s390: add JIT support for bpf line info (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: add missing \n to CHECK_FAIL (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: fix verbose mode garbage (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: Fix a typo in test_offload.py (Yauheni Kaliuta) [1813365] - [net] bpf: fix error check in bpf_tcp_gen_syncookie (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: do not link twice against libbpf.a in Makefile (Yauheni Kaliuta) [1813365] - [tools] tools: bpf: account for generated feature/ and libbpf/ directories (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: improve and check builds for different make invocations (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: ignore make built-in rules for getting kernel version (Yauheni Kaliuta) [1813365] - [s390] bpf: s390: add JIT support for multi-function programs (Yauheni Kaliuta) [1746980 1813365] - [tools] selftests/bpf: remove wrong nhoff in flow dissector test (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove unused ret (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove asserts from subtests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove global fail/success counts (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: test__skip (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add precision tracking test (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: verifier precise tests (Yauheni Kaliuta) [1813365] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1813365] - [net] bpf: introduce verifier internal test flag (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add "bpftool map freeze" subcommand (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: show frozen status for maps (Yauheni Kaliuta) [1813365] - [uapi] bpf: clarify when bpf_trace_printk discards lines (Yauheni Kaliuta) [1813365] - [samples] samples: bpf: syscall_nrs: use mmap2 if defined (Yauheni Kaliuta) [1813365] - [tools] libbpf: use LFS (_FILE_OFFSET_BITS) instead of direct mmap2 syscall (Yauheni Kaliuta) [1813365] - [net] bpf: add new BPF_BTF_GET_NEXT_ID syscall command (Yauheni Kaliuta) [1813365] - [net] bpf: add BTF ids in procfs for file descriptors to BTF objects (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add sockopt clone/inheritance test (Yauheni Kaliuta) [1813365] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1813365] - [net] bpf: support cloning sk storage on accept() (Yauheni Kaliuta) [1813365] - [net] bpf: export bpf_map_inc_not_zero (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add documentation for net attach/detach (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add bash-completion for net attach/detach (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add net detach command to detach XDP on interface (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add net attach command to attach XDP on interface (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: compile with $(EXTRA_WARNINGS) (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add feature check for zlib (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: fix reading from /proc/config.gz (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: xdp_fwd explain bpf_fib_lookup return codes (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: make xdp_fwd more practically usable via devmap lookup (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: xdp_fwd rename devmap name to be xdp_tx_ports (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: drop extra trailing tab (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: test__printf -> printf (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: switch to open_memstream (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add loop test 5 (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add loop test 4 (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: extend sockopt_sk selftest with TCP_CONGESTION use case (Yauheni Kaliuta) [1813365] - [net] bpf: always allocate at least 16 bytes for setsockopt hook (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add support for reporting the effective cgroup progs (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add test for bpf_tcp_gen_syncookie (Yauheni Kaliuta) [1813365] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1813365] - [net] bpf: add bpf_tcp_gen_syncookie helper (Yauheni Kaliuta) [1813365] - [net] tcp: add skb-less helpers to retrieve SYN cookie (Yauheni Kaliuta) [1813365] - [net] tcp: tcp_syn_flood_action read port from socket (Yauheni Kaliuta) [1813365] - [net] tcp: rate limit synflood warnings further (Yauheni Kaliuta) [1813365] - [tools] tools: Add definitions for devmap_hash map type (Yauheni Kaliuta) [1813365] - [tools] tools/libbpf_probes: Add new devmap_hash type (Yauheni Kaliuta) [1813365] - [tools] tools/include/uapi: Add devmap_hash BPF map type (Yauheni Kaliuta) [1813365] - [net] xdp: Add devmap_hash map type for looking up devices by hashed index (Yauheni Kaliuta) [1813365] - [net] xdp: Refactor devmap allocation code for reuse (Yauheni Kaliuta) [1813365] - [include] include/bpf.h: Remove map_insert_ctx() stubs (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert send_signal.c to use subtests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert bpf_verif_scale.c to sub-tests API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: support BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP (Yauheni Kaliuta) [1813365] - [tools] bpf/flow_dissector: support ipv6 flow_label and BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: support BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG (Yauheni Kaliuta) [1813365] - [tools] tools/bpf: sync bpf_flow_keys flags (Yauheni Kaliuta) [1813365] - [net] bpf/flow_dissector: support flags in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813365] - [documentation] bpf/flow_dissector: document flags (Yauheni Kaliuta) [1813365] - [net] bpf/flow_dissector: pass input flags to BPF flow dissector program (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: Add selftests for bpf_perf_event_output (Yauheni Kaliuta) [1813365] - [net] bpf: Allow bpf_skb_event_output for a few prog types (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: remove perf buffer helpers (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: switch trace_output sample to perf_buffer API (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: convert xdp_sample_pkts_user to perf_buffer API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: switch test_tcpnotify to perf_buffer API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert test_get_stack_raw_tp to perf_buffer API (Yauheni Kaliuta) [1813365] - [block] block, bfq: fix use-after-free in bfq_idle_slice_timer_body (Ming Lei) [1823596] - [block] block, bfq: fix overwrite of bfq_group pointer in bfq_find_set_group() (Ming Lei) [1823596] - [block] block, bfq: clarify the goal of bfq_split_bfqq() (Ming Lei) [1823596] - [block] block, bfq: get a ref to a group when adding it to a service tree (Ming Lei) [1823596] - [block] block, bfq: remove ifdefs from around gets/puts of bfq groups (Ming Lei) [1823596] - [block] block, bfq: extend incomplete name of field on_st (Ming Lei) [1823596] - [block] block, bfq: get extra ref to prevent a queue from being freed during a group move (Ming Lei) [1823596] - [block] block, bfq: do not insert oom queue into position tree (Ming Lei) [1823596] - [block] block, bfq: do not plug I/O for bfq_queues with no proc refs (Ming Lei) [1823596] - [block] block, bfq: improve arithmetic division in bfq_delta() (Ming Lei) [1823596] - [block] block/bfq: remove unused bfq_class_rt which never used (Ming Lei) [1823596] - [block] block: Prevent hung_check firing during long sync IO (Ming Lei) [1813383] - [block] brd: check and limit max_part par (Ming Lei) [1790403]- [char] random: silence a lockdep splat with printk() (Brian Masney) [1798900] - [net] SUNRPC: fix krb5p mount to provide large enough buffer in rq_rcvsize (Steve Dickson) [1825388] - [include] percpu-refcount: Use normal instead of RCU-sched" (Waiman Long) [1803822] - [kernel] locking/spinlock/debug: Fix various data races (Waiman Long) [1803822] - [kernel] locktorture: Forgive apparent unfairness if CPU hotplug (Waiman Long) [1803822] - [kernel] locktorture: Use private random-number generators (Waiman Long) [1803822] - [tools] locktorture: Allow CPU-hotplug to be disabled via --bootargs (Waiman Long) [1803822] - [kernel] locking: locktorture: Do not include rwlock.h directly (Waiman Long) [1803822] - [kernel] locktorture: Replace strncmp() with str_has_prefix() (Waiman Long) [1803822] - [kernel] locking/rtmutex: rcu: Add WRITE_ONCE() to rt_mutex ->owner (Waiman Long) [1803822] - [arm64] arm64/spinlock: fix a -Wunused-function warning (Waiman Long) [1803822] - [arm64] locking/osq: Use optimized spinning loop for arm64 (Waiman Long) [1803822] - [kernel] locking/qspinlock: Fix inaccessible URL of MCS lock paper (Waiman Long) [1803822] - [include] string.h: Add str_has_prefix() helper function (Waiman Long) [1803822] - [kernel] futex: Remove {get,drop}_futex_key_refs() (Waiman Long) [1803822] - [kernel] futex: Remove pointless mmgrap() + mmdrop() (Waiman Long) [1803822] - [kernel] futex: Unbreak futex hashing (Waiman Long) [1803822] - [fs] futex: Fix inode life-time issue (Waiman Long) [1803822] - [kernel] futex: Fix kernel-doc notation warning (Waiman Long) [1803822] - [kernel] futex: Prevent exit livelock (Waiman Long) [1803822] - [kernel] futex: Provide distinct return value when owner is exiting (Waiman Long) [1803822] - [include] futex: Add mutex around futex exit (Waiman Long) [1803822] - [kernel] futex: Provide state handling for exec() as well (Waiman Long) [1803822] - [kernel] futex: Sanitize exit state handling (Waiman Long) [1803822] - [kernel] futex: Mark the begin of futex exit explicitly (Waiman Long) [1803822] - [kernel] futex: Set task::futex_state to DEAD right after handling futex exit (Waiman Long) [1803822] - [kernel] futex: Split futex_mm_release() for exit/exec (Waiman Long) [1803822] - [kernel] exit/exec: Seperate mm_release() (Waiman Long) [1803822] - [kernel] futex: Replace PF_EXITPIDONE with a state (Waiman Long) [1803822] - [kernel] futex: Move futex exit handling into futex code (Waiman Long) [1803822] - [kernel] futex: Prevent robust futex exit race (Waiman Long) [1803822] - [kernel] futex: Drop leftover wake_q_add() comment (Waiman Long) [1803822] - [kernel] fork: Provide a function for copying init_mm (Waiman Long) [1803822] - [kernel] y2038: futex: Move compat implementation into futex.c (Waiman Long) [1803822] - [fs] nfsd: Fix races between nfsd4_cb_release() and nfsd4_shutdown_callback() ("J. Bruce Fields") [1797484] - [fs] nfsd: minor 4.1 callback cleanup ("J. Bruce Fields") [1797484] - [video] vgacon: Fix a UAF in vgacon_invert_region (Vladis Dronov) [1818732] {CVE-2020-8647 CVE-2020-8649} - [powerpc] powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs (David Gibson) [1773891] - [clocksource] hyper-v: Make sched clock return nanoseconds correctly (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Set TSC clocksource as default w/ InvariantTSC (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Untangle stimers and timesync from clocksources (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Reserve PAGE_SIZE space for tsc page (Mohammed Gamal) [1816731] - [clocksource] x86/hyperv: Initialize clockevents earlier in CPU onlining (Mohammed Gamal) [1816731] - [x86] hyperv: Allow guests to enable InvariantTSC (Mohammed Gamal) [1816731] - [hv] hv: vmbus: Suspend/resume the synic for hibernation (Mohammed Gamal) [1816731] - [hv] hv: vmbus: Break out synic enable and disable operations (Mohammed Gamal) [1816731] - [x86] hyperv: Set pv_info.name to "Hyper-V" (Mohammed Gamal) [1816731] - [x86] hyperv: Hide pv_ops access for CONFIG_PARAVIRT=n (Mohammed Gamal) [1816731] - [clocksource] hyperv: Enable TSC page clocksource on 32bit (Mohammed Gamal) [1816731] - [clocksource] hyperv: Add Hyper-V specific sched clock function (Mohammed Gamal) [1816731] - [clocksource] hyperv: Allocate Hyper-V TSC page statically (Mohammed Gamal) [1816731] - [clocksource] Continue making Hyper-V clocksource ISA agnostic (Mohammed Gamal) [1816731] - [clocksource] Make Hyper-V clocksource ISA agnostic (Mohammed Gamal) [1816731] - [tools] hv: Reopen the devices if read() or write() returns errors (Mohammed Gamal) [1824182] - [tools] hv: add vmbus testing tool (Mohammed Gamal) [1824182] - [tools] hv: move to tools buildsystem (Mohammed Gamal) [1824182] - [tools] hv: kvp: eliminate 'may be used uninitialized' warning (Mohammed Gamal) [1824182] - [tools] hv: fix typos in toolchain (Mohammed Gamal) [1824182] - [tools] hv: fix KVP and VSS daemons exit code (Mohammed Gamal) [1824182] - [tools] hv: fixed Python pep8/flake8 warnings for lsvmbus (Mohammed Gamal) [1824182] - [tools] hv: kvp: Fix a warning of buffer overflow with gcc 8.0.1 (Mohammed Gamal) [1824182] - [tools] hv: fcopy: set 'error' in case an unknown operation was requested (Mohammed Gamal) [1824182] - [tools] hv: Fix a bug in the key delete code (Mohammed Gamal) [1824182] - [tools] hv: vss: fix loop device detection (Mohammed Gamal) [1824182] - [hv] hv: vmbus: Introduce latency testing (Mohammed Gamal) [1824182] - [tools] hv: update lsvmbus to be compatible with python3 (Mohammed Gamal) [1824182]- [hwtracing] coresight: etm4x: Add kernel configuration for CONTEXTID (Michael Petlan) [1818835] - [samples] samples/bpf: fix build by setting HAVE_ATTR_TEST to zero (Michael Petlan) [1818835] - [tools] perf metricgroup: Fix printing event names of metric group with multiple events (Michael Petlan) [1818835] - [tools] perf script: Fix invalid LBR/binary mismatch error (Michael Petlan) [1818835] - [tools] perf c2c: Fix return type for histogram sorting comparision functions (Michael Petlan) [1818835] - [tools] perf session: Fix decompression of PERF_RECORD_COMPRESSED records (Michael Petlan) [1818835] - [tools] perf tools: Fix time sorting (Michael Petlan) [1818835] - [tools] perf tools: Remove unused trace_find_next_event() (Michael Petlan) [1818835] - [tools] perf scripting engines: Iterate on tep event arrays directly (Michael Petlan) [1818835] - [tools] perf tools: Make usage of test_attr__* optional for perf-sys.h (Michael Petlan) [1818835] - [tools] perf kmem: Fix memory leak in compact_gfp_flags() (Michael Petlan) [1818835] - [tools] perf c2c: Fix memory leak in build_cl_output() (Michael Petlan) [1818835] - [tools] perf tools: Fix mode setting in copyfile_mode_ns() (Michael Petlan) [1818835] - [tools] perf annotate: Fix multiple memory and file descriptor leaks (Michael Petlan) [1818835] - [tools] perf tools: Fix resource leak of closedir() on the error paths (Michael Petlan) [1818835] - [tools] perf evlist: Fix fix for freed id arrays (Michael Petlan) [1818835] - [tools] perf annotate: Don't return -1 for error when doing BPF disassembly (Michael Petlan) [1818835] - [tools] perf annotate: Return appropriate error code for allocation failures (Michael Petlan) [1818835] - [tools] perf annotate: Fix arch specific ->init() failure errors (Michael Petlan) [1818835] - [tools] perf annotate: Propagate the symbol__annotate() error return (Michael Petlan) [1818835] - [tools] perf annotate: Fix the signedness of failure returns (Michael Petlan) [1818835] - [tools] perf annotate: Propagate perf_env__arch() error (Michael Petlan) [1818835] - [tools] perf evsel: Fall back to global 'perf_env' in perf_evsel__env() (Michael Petlan) [1818835] - [tools] perf tools: Propagate get_cpuid() error (Michael Petlan) [1818835] - [tools] perf jevents: Fix period for Intel fixed counters (Michael Petlan) [1818835] - [tools] perf script brstackinsn: Fix recovery from LBR/binary mismatch (Michael Petlan) [1818835] - [tools] perf docs: Correct and clarify jitdump spec (Michael Petlan) [1818835] - [tools] perf inject jit: Fix JIT_CODE_MOVE filename (Michael Petlan) [1818835] - [tools] perf map: Fix overlapped map handling (Michael Petlan) [1818835] - [tools] perf vendor events s390: Use s390 machine name instead of type 8561 (Michael Petlan) [1818835] - [tools] perf llvm: Don't access out-of-scope array (Michael Petlan) [1818835] - [tools] perf docs: Allow man page date to be specified (Michael Petlan) [1818835] - [tools] perf tests: Avoid raising SEGV using an obvious NULL dereference (Michael Petlan) [1818835] - [tools] libsubcmd: Make _FORTIFY_SOURCE defines dependent on the feature (Michael Petlan) [1818835] - [tools] perf unwind: Fix libunwind build failure on i386 systems (Michael Petlan) [1818835] - [tools] perf parser: Remove needless include directives (Michael Petlan) [1818835] - [tools] perf build: Add detection of java-11-openjdk-devel package (Michael Petlan) [1818835] - [tools] perf jvmti: Include JVMTI support for s390 (Michael Petlan) [1818835] - [tools] perf evlist: Fix access of freed id arrays (Michael Petlan) [1818835] - [tools] perf stat: Fix free memory access / memory leaks in metrics (Michael Petlan) [1818835] - [tools] perf tools: Replace needless mmap.h with what is needed, event.h (Michael Petlan) [1818835] - [tools] perf evsel: Move config terms to a separate header (Michael Petlan) [1818835] - [tools] perf evlist: Remove unused perf_evlist__fprintf() method (Michael Petlan) [1818835] - [tools] perf evsel: Introduce evsel_fprintf.h (Michael Petlan) [1818835] - [tools] perf evsel: Remove need for symbol_conf in evsel_fprintf.c (Michael Petlan) [1818835] - [tools] perf copyfile: Move copyfile routines to separate files (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__poll() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__add_pollfd() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__alloc_pollfd() function (Michael Petlan) [1818835] - [tools] libperf: Add libperf_init() call to the tests (Michael Petlan) [1818835] - [tools] libperf: Merge libperf_set_print() into libperf_init() (Michael Petlan) [1818835] - [tools] libperf: Add libperf dependency for tests targets (Michael Petlan) [1818835] - [tools] libperf: Use sys/types.h to get ssize_t, not unistd.h (Michael Petlan) [1818835] - [tools] perf tools: No need to include internal/lib.h from util/util.h (Michael Petlan) [1818835] - [tools] libperf: Move 'page_size' global variable to libperf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__id_add_fd() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__id_add() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__read_format() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__first()/last() functions (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__alloc_id/perf_evsel__free_id functions (Michael Petlan) [1818835] - [tools] libperf: Move 'heads' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'ids' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Move 'id' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Move 'sample_id' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Add missing 'struct xyarray' forward declaration (Michael Petlan) [1818835] - [tools] libperf: Move 'pollfd' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'mmap_len' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'nr_mmaps' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'system_wide' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Add 'flush' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add 'event_copy' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add 'overwrite' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add prev/start/end to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'refcnt' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'cpu' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'fd' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'mask' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add perf_mmap struct (Michael Petlan) [1818835] - [tools] perf evlist: Adopt backwards ring buffer state enum (Michael Petlan) [1818835] - [tools] libperf: Link libapi.a in libperf.so (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__purge() to evlist__purge() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__exit() to evlist__exit() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__alloc_mmap() to evlist__alloc_mmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__munmap() to evlist__munmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__mmap() to evlist__mmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename 'struct perf_mmap' to 'struct mmap' (Michael Petlan) [1818835] - [tools] tools: Add missing stdio.h include to asm/bug.h header (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages for tep plugins APIs (Michael Petlan) [1818835] - [tools] libtraceevent: Move traceevent plugins in its own subdirectory (Michael Petlan) [1818835] - [tools] libtraceevent: Add tep_get_event() in event-parse.h (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages fix, changes in event printing APIs (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages fix, rename tep_ref_get() to tep_get_ref() (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages for libtraceevent event print related API (Michael Petlan) [1818835] - [tools] libtraceevent: Round up in tep_print_event() time precision (Michael Petlan) [1818835] - [tools] perf record: Move restricted maps check to after a possible fallback to not collect kernel samples (Michael Petlan) [1818835] - [tools] perf record: Fix priv level with branch sampling for paranoid=2 (Michael Petlan) [1818835] - [tools] perf probe: Fix to clear tev->nargs in clear_probe_trace_event() (Michael Petlan) [1818835] - [tools] perf probe: Skip same probe address for a given line (Michael Petlan) [1818835] - [tools] perf tests: Fix static build test (Michael Petlan) [1818835] - [tools] perf kvm stat: Set 'trace_cycles' as default event for 'perf kvm record' in powerpc (Michael Petlan) [1818835] - [tools] perf kvm: Add arch neutral function to choose event for perf kvm record (Michael Petlan) [1818835] - [tools] perf kvm: Move kvm-stat header file from conditional inclusion to common include section (Michael Petlan) [1818835] - [tools] perf test: Fix spelling mistake "allos" -> "allocate" (Michael Petlan) [1818835] - [tools] perf stat: Fix a segmentation fault when using repeat forever (Michael Petlan) [1818835] - [tools] perf stat: Reset previous counts on repeat with interval (Michael Petlan) [1818835] - [tools] tools lib traceevent: Convert remaining pusers to p (Michael Petlan) [1818835] - [tools] perf tools: Move event synthesizing routines to separate .c file (Michael Petlan) [1818835] - [tools] perf memswap: Adopt 'struct u64_swap' from evsel.h (Michael Petlan) [1818835] - [tools] perf tools: Move event synthesizing routines to separate header (Michael Petlan) [1818835] - [tools] perf auxtrace: Add missing 'struct perf_sample' forward declaration (Michael Petlan) [1818835] - [tools] perf sched: Add missing event.h include directive (Michael Petlan) [1818835] - [tools] perf annotate: Add missing machine.h include directive (Michael Petlan) [1818835] - [tools] perf hist: Add missing 'struct branch_stack' forward declaration (Michael Petlan) [1818835] - [tools] perf python: Remove debug.h (Michael Petlan) [1818835] - [tools] perf callchain: Remove needless event.h include (Michael Petlan) [1818835] - [tools] perf stat: Move perf_stat_synthesize_config() to event.h (Michael Petlan) [1818835] - [tools] perf event: Move perf_event__synthesize* to event.h (Michael Petlan) [1818835] - [tools] perf env: Remove needless cpumap.h header (Michael Petlan) [1818835] - [tools] perf symbols: Add missing dso.h header (Michael Petlan) [1818835] - [tools] perf probe: Add missing build-id.h header (Michael Petlan) [1818835] - [tools] perf tools: Remove util.h from where it is not needed (Michael Petlan) [1818835] - [tools] perf tools: Remove debug.h from places where it is not needed (Michael Petlan) [1818835] - [tools] perf debug: No need to include ui/util.h (Michael Petlan) [1818835] - [tools] perf tools: Remove needless builtin.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Add PMU event JSON files for ARM Cortex-A76 and, Neoverse N1 (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_cpu_map__max() function (Michael Petlan) [1818835] - [tools] libperf: Add missing event.h file to install rule (Michael Petlan) [1818835] - [tools] perf tests: Add libperf automated test for 'make -C tools/perf build-test' (Michael Petlan) [1818835] - [tools] perf python: Add missing python/perf.so dependency for libperf (Michael Petlan) [1818835] - [tools] perf build: Ignore intentional differences for the x86 insn decoder (Michael Petlan) [1818835] - [tools] perf intel-pt: Use shared x86 insn decoder (Michael Petlan) [1818835] - [tools] objtool: Move x86 insn decoder to a common location (Michael Petlan) [1818835] - [tools] perf intel-pt: Remove inat.c from build dependency list (Michael Petlan) [1818835] - [tools] perf: Update .gitignore file (Michael Petlan) [1818835] - [tools] perf metricgroup: Support multiple events for metricgroup (Michael Petlan) [1818835] - [tools] perf metricgroup: Scale the metric result (Michael Petlan) [1818835] - [tools] perf pmu: Change convert_scale from static to global (Michael Petlan) [1818835] - [tools] perf symbols: Move mem_info and branch_info out of symbol.h (Michael Petlan) [1818835] - [tools] perf auxtrace: Uninline functions that touch perf_session (Michael Petlan) [1818835] - [tools] perf tools: Remove needless evlist.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless evlist.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless thread_map.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless thread.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless map.h include directives (Michael Petlan) [1818835] - [tools] perf probe: No need for symbol.h, symbol_conf is enough (Michael Petlan) [1818835] - [tools] perf tools: Remove needless sort.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Move 'struct events_stats' and prototypes to separate header (Michael Petlan) [1818835] - [tools] perf hist: Remove needless ui/progress.h from hist.h (Michael Petlan) [1818835] - [tools] perf dsos: Move the dsos struct and its methods to separate source files (Michael Petlan) [1818835] - [tools] perf symbols: Move symsrc prototypes to a separate header (Michael Petlan) [1818835] - [tools] perf symbols: Add missing linux/refcount.h to symbol.h (Michael Petlan) [1818835] - [tools] perf symbol: Move C++ demangle defines to the only file using it (Michael Petlan) [1818835] - [tools] perf dso: Adopt DSO related macros from symbol.h (Michael Petlan) [1818835] - [tools] libtraceevent: Change users plugin directory (Michael Petlan) [1818835] - [tools] libtraceevent: Remove tep_register_trace_clock() (Michael Petlan) [1818835] - [tools] libtraceevent, perf tools: Changes in tep_print_event_* APIs (Michael Petlan) [1818835] - [tools] perf event: Remove needless include directives from event.h (Michael Petlan) [1818835] - [tools] perf env: Remove env.h from other headers where just a fwd decl is needed (Michael Petlan) [1818835] - [tools] perf debug: Remove needless include directives from debug.h (Michael Petlan) [1818835] - [tools] perf tools: Remove debug.h from header files not needing it (Michael Petlan) [1818835] - [tools] perf tools: Remove perf.h from source files not needing it (Michael Petlan) [1818835] - [tools] perf tools: Remove needless perf.h include directive from headers (Michael Petlan) [1818835] - [tools] perf time-utils: Adopt rdclock() from perf.h (Michael Petlan) [1818835] - [tools] perf tools: Move everything related to sys_perf_event_open() to perf-sys.h (Michael Petlan) [1818835] - [tools] perf header: Move CPUINFO_PROC to the only file where it is used (Michael Petlan) [1818835] - [tools] perf tools: Remove needless libtraceevent include directives (Michael Petlan) [1818835] - [tools] libperf: Warn when exceeding MAX_NR_CPUS in cpumap (Michael Petlan) [1818835] - [tools] perf c2c: Display proper cpu count in nodes column (Michael Petlan) [1818835] - [tools] tools lib traceevent: Remove unneeded qsort and uses memmove instead (Michael Petlan) [1818835] - [tools] tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure (Michael Petlan) [1818835] - [tools] perf evlist: Use unshare(CLONE_FS) in sb threads to let setns(CLONE_NEWNS) work (Michael Petlan) [1818835] - [tools] libperf: Move 'enum perf_user_event_type' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Rename the PERF_RECORD_ structs to have a "perf" prefix (Michael Petlan) [1818835] - [tools] libperf: Add 'union perf_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_COMPRESSED 'struct compressed_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_FEATURE 'struct feature_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_TIME_CONV 'struct time_conv_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT_ROUND 'struct stat_round_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT 'struct stat_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT_CONFIG 'struct stat_config_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_THREAD_MAP 'struct thread_map_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_SWITCH 'struct context_switch_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_ITRACE_START 'struct itrace_start_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUX 'struct aux_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE_ERROR 'struct auxtrace_error_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE 'struct auxtrace_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE_INFO 'struct auxtrace_info_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_ID_INDEX 'struct id_index_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_BUILD_ID 'struct build_id_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_TRACING_DATA 'struct tracing_data_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_EVENT_TYPE 'struct event_type_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_EVENT_UPDATE 'struct event_update_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_CPU_MAP 'struct cpu_map_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_ATTR 'struct attr_event' to perf/event.h (Michael Petlan) [1818835] - [tools] perf top: Fix event group with more than two events (Michael Petlan) [1818835] - [tools] perf top: Decay all events in the evlist (Michael Petlan) [1818835] - [tools] perf clang: Delete needless util-cxx.h header (Michael Petlan) [1818835] - [tools] perf evlist: Remove needless util.h from evlist.h (Michael Petlan) [1818835] - [tools] perf tools: Remove needless util.h include from builtin.h (Michael Petlan) [1818835] - [tools] perf tools: Warn that perf_event_paranoid can restrict kernel symbols (Michael Petlan) [1818835] - [tools] perf symbols: Use CAP_SYSLOG with kptr_restrict checks (Michael Petlan) [1818835] - [tools] perf evsel: Kernel profiling is disallowed only when perf_event_paranoid > 1 (Michael Petlan) [1818835] - [tools] perf tools: Use CAP_SYS_ADMIN with perf_event_paranoid checks (Michael Petlan) [1818835] - [tools] perf event: Check ref_reloc_sym before using it (Michael Petlan) [1818835] - [tools] perf arch powerpc: Sync powerpc syscall.tbl (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_missing_features::bpf_event to ::bpf (Michael Petlan) [1818835] - [tools] perf tool: Rename perf_tool::bpf_event to bpf (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_event::bpf_event to perf_event::bpf (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_event::ksymbol_event to perf_event::ksymbol (Michael Petlan) [1818835] - [tools] libperf: Rename the PERF_RECORD_ structs to have a "perf" suffix (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_SAMPLE 'struct sample_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_BPF_EVENT 'struct bpf_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_KSYMBOL 'struct ksymbol_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_THROTTLE 'struct throttle_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_READ 'struct read_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_LOST_SAMPLES 'struct lost_samples_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_LOST 'struct lost_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_FORK 'struct fork_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_NAMESPACES 'struct namespaces_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_COMM 'struct comm_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_MMAP2 'struct mmap2_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_MMAP 'struct mmap_event' to perf/event.h (Michael Petlan) [1818835] - [tools] perf script: Fix memory leaks in list_scripts() (Michael Petlan) [1818835] - [tools] perf report: Fix --ns time sort key output (Michael Petlan) [1818835] - [tools] perf report: Use timestamp__scnprintf_nsec() for time sort key (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Reduce perf_event_output() boilerplate (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Introduce helper to get the scratch space (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Postpone tmp map lookup to after pid_filter (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Rename augmented_filename to augmented_arg (Michael Petlan) [1818835] - [tools] perf trace beauty ioctl: Fix off-by-one error in cmd->string table (Michael Petlan) [1818835] - [tools] perf tests: Fixes hang in zstd compression test by changing the source of random data (Michael Petlan) [1818835] - [tools] perf sort: Remove needless headers from sort.h, provide fwd struct decls (Michael Petlan) [1818835] - [tools] perf srcline: Add missing srcline.h header to files needing its defs (Michael Petlan) [1818835] - [tools] perf cacheline: Move cacheline related routines to separate files (Michael Petlan) [1818835] - [tools] perf record: Move record_opts and other record decls out of perf.h (Michael Petlan) [1818835] - [tools] perf stat: Remove needless headers from stat.h (Michael Petlan) [1818835] - [tools] perf cpumap: No need to include perf.h, ditch it (Michael Petlan) [1818835] - [tools] libperf: Fix alignment trap with xyarray contents in 'perf stat' (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__nr/perf_thread_map__pid functions (Michael Petlan) [1818835] - [tools] perf cpumap: Remove needless includes from cpumap.h (Michael Petlan) [1818835] - [tools] perf evsel: Switch to libperf's cpumap.h (Michael Petlan) [1818835] - [tools] perf x86 kvm-stat: Add missing string.h header (Michael Petlan) [1818835] - [tools] perf evsel: util/evsel.h needs stdio.h as it uses FILE (Michael Petlan) [1818835] - [tools] perf evsel: Remove needless stddef.h from util/evsel.h (Michael Petlan) [1818835] - [tools] perf evsel: Remove needless counts.h header from util/evsel.h (Michael Petlan) [1818835] - [tools] perf evsel: Add missing perf/evsel.h header in util/evsel.h (Michael Petlan) [1818835] - [tools] perf scripting python: Add missing counts.h header (Michael Petlan) [1818835] - [tools] perf stat: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf tests: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf script: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf evlist: Add missing xyarray.h header (Michael Petlan) [1818835] - [tools] perf bpf: Add missing xyarray.h header (Michael Petlan) [1818835] - [tools] perf counts: Add missing headers needed for types used (Michael Petlan) [1818835] - [tools] perf evsel: Move xyarray.h from evsel.c to evsel.h to reduce include dep tree (Michael Petlan) [1818835] - [tools] perf metricgroup: Remove needless includes from metricgroup.h (Michael Petlan) [1818835] - [tools] perf kvm s390: Add missing string.h header (Michael Petlan) [1818835] - [tools] perf arm64: Add missing debug.h header (Michael Petlan) [1818835] - [tools] libperf: Move perf's cpu_map__idx() to perf_cpu_map__idx() (Michael Petlan) [1818835] - [tools] libperf: Move perf's cpu_map__empty() to perf_cpu_map__empty() (Michael Petlan) [1818835] - [tools] perf tools: Use perf_cpu_map__nr instead of cpu_map__nr (Michael Petlan) [1818835] - [tools] tools headers: Add missing perf_event.h include (Michael Petlan) [1818835] - [tools] libperf: Fix arch include paths (Michael Petlan) [1818835] - [tools] tools headers: Fixup bitsperlong per arch includes (Michael Petlan) [1818835] - [tools] perf top: Show info message while collecting samples (Michael Petlan) [1818835] - [tools] perf ui browser: Allow specifying message to show when no samples are available to display (Michael Petlan) [1818835] - [tools] perf ui: Introduce non-interactive ui__info_window() function (Michael Petlan) [1818835] - [tools] perf ui: Make 'exit_msg' optional in ui__question_window() (Michael Petlan) [1818835] - [tools] perf cs-etm: Support sample flags 'insn' and 'insnlen' (Michael Petlan) [1818835] - [tools] perf report: Prefer DWARF callstacks to LBR ones when captured both (Michael Petlan) [1818835] - [tools] perf report: Dump LBR callstack data by -D jointly with thread stack (Michael Petlan) [1818835] - [tools] perf record: Enable LBR callstack capture jointly with thread stack (Michael Petlan) [1818835] - [tools] tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file (Michael Petlan) [1818835] - [tools] perf evsel: Add comment for 'idx' member in 'struct perf_sample_id (Michael Petlan) [1818835] - [tools] tools headers: Synchronize linux/bits.h with the kernel sources (Michael Petlan) [1818835] - [tools] tools headers: Grab copy of linux/const.h, needed by linux/bits.h (Michael Petlan) [1818835] - [tools] perf tools: tools/include should come before tools/uapi/include (Michael Petlan) [1818835] - [tools] tools headers: Add limits.h to access __WORDSIZE (Michael Petlan) [1818835] - [tools] perf unwind: Remove unnecessary test (Michael Petlan) [1818835] - [tools] perf unwind: Fix libunwind when tid != pid (Michael Petlan) [1818835] - [tools] perf map: Use zalloc for map_groups (Michael Petlan) [1818835] - [tools] perf report: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf top: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf trace: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf evswitch: Add hint when not finding specified on/off events (Michael Petlan) [1818835] - [tools] perf evswitch: Move enoent error message printing to separate function (Michael Petlan) [1818835] - [tools] perf evswitch: Introduce init() method to set the on/off evsels from the command line (Michael Petlan) [1818835] - [tools] perf evswitch: Introduce OPTS_EVSWITCH() for cmd line processing (Michael Petlan) [1818835] - [tools] perf evswitch: Add the names of on/off events (Michael Petlan) [1818835] - [tools] perf evswitch: Move switch logic to use in other tools (Michael Petlan) [1818835] - [tools] perf evswitch: Move struct to a separate header to use in other tools (Michael Petlan) [1818835] - [tools] perf script: Allow specifying event to switch off processing of other events (Michael Petlan) [1818835] - [tools] perf script: Allow showing the --switch-on event (Michael Petlan) [1818835] - [tools] perf script: Allow specifying event to switch on processing of other events (Michael Petlan) [1818835] - [tools] perf vendor events intel: Add Tremontx event file v1.02 (Michael Petlan) [1818835] - [tools] perf ui: No need to set ui_browser to 1 twice (Michael Petlan) [1818835] - [tools] perf record: Support aarch64 random socket_id assignment (Michael Petlan) [1818835] - [tools] perf.data documentation: Clarify HEADER_SAMPLE_TOPOLOGY format (Michael Petlan) [1818835] - [tools] perf evsel: Provide meaningful warning when trying to use 'aux_output' on older kernels (Michael Petlan) [1818835] - [tools] perf intel-pt: Add brief documentation for PEBS via Intel PT (Michael Petlan) [1818835] - [tools] perf tools: Add aux-output config term (Michael Petlan) [1818835] - [tools] perf intel-pt: Process options for PEBS event synthesis (Michael Petlan) [1818835] - [tools] perf tools: Add itrace option 'o' to synthesize aux-output events (Michael Petlan) [1818835] - [tools] perf tools: Add aux_output attribute flag (Michael Petlan) [1818835] - [tools] perf record: Add an option to take an AUX snapshot on exit (Michael Petlan) [1818835] - [tools] perf ftrace: Improve error message about capability to use ftrace (Michael Petlan) [1818835] - [tools] perf ftrace: Use CAP_SYS_ADMIN instead of euid==0 (Michael Petlan) [1818835] - [tools] perf tools: Add CAP_SYSLOG define for older systems (Michael Petlan) [1818835] - [tools] perf tools: Add NO_LIBCAP=1 to the minimal build test (Michael Petlan) [1818835] - [tools] perf tools: Add helpers to use capabilities if present (Michael Petlan) [1818835] - [tools] tools build: Add capability-related feature detection (Michael Petlan) [1818835] - [tools] perf top: Collapse and resort all evsels in a group (Michael Petlan) [1818835] - [tools] perf hist: Remove dummy entries when finding real ones (Michael Petlan) [1818835] - [tools] perf trace: Fix segmentation fault when access syscall info on arm64 (Michael Petlan) [1818835] - [tools] perf hists: Do not link a pair if already linked (Michael Petlan) [1818835] - [tools] perf top: Set display thread COMM to help with debugging (Michael Petlan) [1818835] - [tools] perf vendor events intel: Add Icelake V1.00 event file (Michael Petlan) [1818835] - [tools] perf tools: Fix paths in include statements (Michael Petlan) [1818835] - [tools] perf test vfs_getname: Disable ~/.perfconfig to get default output (Michael Petlan) [1818835] - [tools] perf config: Document the PERF_CONFIG environment variable (Michael Petlan) [1818835] - [tools] perf config: Honour $PERF_CONFIG env var to specify alternate .perfconfig (Michael Petlan) [1818835] - [tools] perf session: Avoid infinite loop when seeing invalid header.size (Michael Petlan) [1818835] - [tools] libperf: Initial documentation (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__enable/disable test (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__enable/disable test (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel tests (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist test (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map test (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map test (Michael Petlan) [1818835] - [tools] libperf: Add tests support (Michael Petlan) [1818835] - [tools] libperf: Add install targets (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__attr() function (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evlist__enable()/disable() functions from perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evlist__open()/close() functions from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__cpus()/threads() functions (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__for_each_cpu() macro (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__enable()/disable()/apply_filter() functions (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__read() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evsel__close() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evsel__open() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__alloc_fd() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt the readn()/writen() functions from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Move nr_members from perf's evsel to libperf's perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Move fd array from perf's evsel to lobperf's perf_evsel class (Michael Petlan) [1818835] - [tools] libperf: Adopt xyarray class from perf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__set_maps() function (Michael Petlan) [1818835] - [tools] libperf: Add threads to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add cpus to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add has_user_cpus to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add threads to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add own_cpus to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add cpus to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__delete() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__delete() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__for_each_evsel() iterator (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__new() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__new() function (Michael Petlan) [1818835] - [tools] libperf: Move zalloc.o into libperf (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__new()/perf_cpu_map__read() functions (Michael Petlan) [1818835] - [tools] libperf: Move perf_event_attr field from perf's evsel to libperf's perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add nr_entries to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__remove() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__add() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__init() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__init function (Michael Petlan) [1818835] - [tools] libperf: Include perf_evlist in evlist object (Michael Petlan) [1818835] - [tools] libperf: Include perf_evsel in evsel object (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist and perf_evsel structs (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__get()/perf_thread_map__put() (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__new_dummy() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map struct (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__get()/perf_cpu_map__put() (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__dummy_new() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map struct (Michael Petlan) [1818835] - [tools] libperf: Add debug output support (Michael Petlan) [1818835] - [tools] libperf: Add perf/core.h header (Michael Petlan) [1818835] - [tools] libperf: Add libperf to the python.so build (Michael Petlan) [1818835] - [tools] libperf: Add build version support (Michael Petlan) [1818835] - [tools] libperf: Make libperf.a part of the perf build (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__disable() to evlist__disable() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__enable() to evlist__enable() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__close() to evlist__close() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__open() to evlist__open() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__cpus() to evsel__cpus() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__apply_filter() to evsel__apply_filter() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__disable() to evsel__disable() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__enable() to evsel__enable() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__open() to evsel__open() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__remove() to evlist__remove() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__add() to evlist__add() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__new() to evsel__new() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__delete() to evsel__delete() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__delete() to evlist__delete() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__new() to evlist__new() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__init() to evlist__init() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__init() to evsel__init() (Michael Petlan) [1818835] - [tools] perf evlist: Rename struct perf_evlist to struct evlist (Michael Petlan) [1818835] - [tools] perf evsel: Rename struct perf_evsel to struct evsel (Michael Petlan) [1818835] - [tools] perf tools: Rename struct thread_map to struct perf_thread_map (Michael Petlan) [1818835] - [tools] perf cpu_map: Rename struct cpu_map to struct perf_cpu_map (Michael Petlan) [1818835] - [tools] perf stat: Move loaded out of struct perf_counts_values (Michael Petlan) [1818835] - [tools] perf trace: Add "sendfile64" alias to the "sendfile" syscall (Michael Petlan) [1818835] - [tools] perf trace: Reuse BPF augmenters from syscalls with similar args signature (Michael Petlan) [1818835] - [tools] perf trace: Preallocate the syscall table (Michael Petlan) [1818835] - [tools] perf trace: Mark syscall ids that are not allocated to avoid unnecessary error messages (Michael Petlan) [1818835] - [tools] perf trace: Forward error codes when trying to read syscall info (Michael Petlan) [1818835] - [tools] perf trace beauty: Add BPF augmenter for the 'rename' syscall (Michael Petlan) [1818835] - [tools] perf trace beauty: Beautify bind's sockaddr arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Beautify 'sendto's sockaddr arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Do not try to use the fd->pathname beautifier for bind/connect fd arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Disable fd->pathname when close() not enabled (Michael Petlan) [1818835] - [tools] perf trace beauty: Make connect's addrlen be printed as an int, not hex (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Augment sockaddr arg in 'connect' (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Rename augmented_args_filename to augmented_args_payload (Michael Petlan) [1818835] - [tools] perf trace: Look for default name for entries in the syscalls prog array (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Support copying two string syscall args (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Switch to using BPF_MAP_TYPE_PROG_ARRAY (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Add handler for "openat" (Michael Petlan) [1818835] - [tools] perf trace: Handle raw_syscalls:sys_enter just like the BPF_OUTPUT augmented event (Michael Petlan) [1818835] - [tools] perf trace: Put the per-syscall entry/exit prog_array BPF map infrastructure in place (Michael Petlan) [1818835] - [tools] perf trace: Allow specifying the bpf prog to augment specific syscalls (Michael Petlan) [1818835] - [tools] perf trace: Add BPF handler for unaugmented syscalls (Michael Petlan) [1818835] - [tools] perf trace: Order -e syscalls table (Michael Petlan) [1818835] - [tools] perf trace: Look up maps just on the __augmented_syscalls__ BPF object (Michael Petlan) [1818835] - [tools] perf trace: Add pointer to BPF object containing __augmented_syscalls__ (Michael Petlan) [1818835] - [tools] perf evsel: Store backpointer to attached bpf_object (Michael Petlan) [1818835] - [tools] perf bpf: Do not attach a BPF prog to a tracepoint if its name starts with ! (Michael Petlan) [1818835] - [tools] perf include bpf: Add bpf_tail_call() prototype (Michael Petlan) [1818835] - [tools] perf: cs-etm: Optimize option setup for CPU-wide sessions (Michael Petlan) [1818835] - [tools] perf cs-etm: Remove duplicate GENMASK() define, use linux/bits.h instead (Michael Petlan) [1818835] - [tools] perf cs-etm: Add support for CPU-wide trace scenarios (Michael Petlan) [1818835] - [tools] perf cs-etm: Add notion of time to decoding code (Michael Petlan) [1818835] - [tools] perf cs-etm: Linking PE contextID with perf thread mechanic (Michael Petlan) [1818835] - [tools] perf cs-etm: Add support for multiple traceID queues (Michael Petlan) [1818835] - [tools] perf cs-etm: Use traceID aware memory callback API (Michael Petlan) [1818835] - [tools] perf cs-etm: Move tid/pid to traceid_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Move thread to traceid_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Get rid of unused cpu in struct cs_etm_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Introduce the concept of trace ID queues (Michael Petlan) [1818835] - [tools] perf cs-etm: Fix indentation in function cs_etm__process_decoder_queue() (Michael Petlan) [1818835] - [tools] perf cs-etm: Move packet queue out of decoder structure (Michael Petlan) [1818835] - [tools] perf cs-etm: Refactor error path in cs_etm_decoder__new() (Michael Petlan) [1818835] - [tools] perf cs-etm: Add handling of switch-CPU-wide events (Michael Petlan) [1818835] - [tools] perf cs-etm: Add handling of itrace start events (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure SWITCH_EVENTS in CPU-wide mode (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure timestamp generation in CPU-wide mode (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure contextID tracing in CPU-wide mode (Michael Petlan) [1818835] - [kernel] perf/core: Fix missing static inline on perf_cgroup_switch() (Michael Petlan) [1818835] - [kernel] perf/core: Consistently fail fork on allocation failures (Michael Petlan) [1818835] - [kernel] perf/core: Disallow uncore-cgroup events (Michael Petlan) [1818835] - [include] perf/headers: Fix spelling s/EACCESS/EACCES/, s/privilidge/privilege/ (Michael Petlan) [1818835] - [x86] perf/x86/uncore: Fix event group support (Michael Petlan) [1818835] - [kernel] perf/core: Start rejecting the syscall with attr.__reserved_2 set (Michael Petlan) [1818835] - [kernel] perf/aux: Fix tracking of auxiliary trace buffer allocation (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Fix base for single entry topa (Michael Petlan) [1818835] - [x86] perf/x86/cstate: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/msr: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/intel: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/cstate: Update C-state counters for Ice Lake (Michael Petlan) [1818835] - [x86] perf/x86/msr: Add new CPU model numbers for Ice Lake (Michael Petlan) [1818835] - [kernel] perf/core: Fix corner case in perf_rotate_context() (Michael Petlan) [1818835] - [kernel] perf/core: Rework memory accounting in perf_mmap() (Michael Petlan) [1818835] - [kernel] perf/core: Fix several typos in comments (Michael Petlan) [1818835] - [x86] perf/x86: Make more stuff static (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Get rid of reverse lookup table for ToPA (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Free up space in a ToPA descriptor (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Split ToPA metadata and page layout (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Use pointer arithmetics instead in ToPA entry calculation (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Use helpers to obtain ToPA entry size (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Clean up ToPA allocation path (Michael Petlan) [1818835]- [scsi] scsi: bnx2fc: Update the driver version to 2.12.13 (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: fix boolreturn.cocci warnings (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: Fix SCSI command completion after cleanup is posted (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: Process the RQE with CQE in interrupt context (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: timeout calculation invalid for bnx2fc_eh_abort() (Nilesh Javali) [1792115] - [powerpc] powerpc/smp: Use nid as fallback for package_id (Steve Best) [1764530] - [kernel] audit: Add __rcu annotation to RCU pointer (Richard Guy Briggs) [1822776] - [infiniband] i40iw: Report correct firmware version (Stefan Assmann) [1726909] - [x86] x86/mce/amd: Add PPIN support for AMD MCE (Wei Huang) [1790521] - [kernel] locking/percpu-rwsem: Fix a task_struct refcount (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Add might_sleep() for writer locking (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Fold __percpu_up_read() (Waiman Long) [1810257] - [kernel] locking/rwsem: Remove RWSEM_OWNER_UNKNOWN (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Remove the embedded rwsem (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Extract __percpu_down_read_trylock() (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Move __this_cpu_inc() into the slowpath (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Convert to bool (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem, lockdep: Make percpu-rwsem use its own lockdep_map (Waiman Long) [1810257] - [kernel] locking/lockdep: Remove unused @nested argument from lock_release() (Waiman Long) [1810257] - [kernel] sched/core: Convert get_task_struct() to return the task (Waiman Long) [1810257] - [kernel] locking/lockdep, cpu/hotplug: Annotate AP thread (Waiman Long) [1810257] - [tty] tty/ldsem: Decrement wait_readers on timeouted down_read() (Waiman Long) [1810257] - [tty] tty/ldsem: Convert to regular lockdep annotations (Waiman Long) [1810257] - [tty] tty/ldsem: Wake up readers after timed out down_write() (Waiman Long) [1810257] - [tty] atomic/tty: Fix up atomic abuse in ldsem (Waiman Long) [1810257] - [kernel] cpu/hotplug: Remove skip_onerr field from cpuhp_step structure (Waiman Long) [1810257] - [watchdog] watchdog: hpwdt: drop warning after calling watchdog_init_timeout (Joseph Szczypek) [1790669] - [mm] powerpc/pkeys: Fix handling of pkey state across fork() (Steve Best) [1823744] - [irqchip] irqchip/gic-v3: Workaround Cavium erratum 38539 when reading GICD_TYPER2 (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Avoid 64bit division for the sake of 32bit ARM (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Rename VPENDBASER/VPROPBASER accessors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Remove superfluous WARN_ON (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Drop 'tmp' in inherit_vpe_l1_table_from_rd() (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Ensure L2 vPE table is allocated at RD level (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Set vpe_l1_base for all redistributors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Fix programming of GICR_VPROPBASER_4_1_SIZE (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building INVALL (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Only provision redistributors that are enabled in ACPI (Mark Salter) [1818174] - [arm64] arm64: acpi: fix DAIF manipulation with pNMI (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Allow direct invalidation of VLPIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Suppress per-VLPI doorbell (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add VPE INVALL callback (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add VPE eviction callback (Mark Salter) [1818174] - [include] irqchip/gic-v4.1: Add VPE residency callback (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add mask/unmask doorbell callbacks (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Plumb skeletal VPE irqchip (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Implement the v4.1 flavour of VMOVP (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Don't use the VPE proxy if RVPEID is set (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Implement the v4.1 flavour of VMAPP (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: VPE table (aka GICR_VPROPBASER) allocation (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add GICv4.1 VPEID size discovery (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Detect GICv4.1 supporting RVPEID (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix get_vlpi_map() breakage with doorbells (Mark Salter) [1818174] - [arm64] arm64: Kconfig: Remove CONFIG_ prefix from ARM64_PSEUDO_NMI section (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make vlpi_lock a spinlock (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Lock VLPI map array before translating it (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Synchronise INT/CLEAR commands targetting a VLPI using VSYNC (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Synchronise INV command targetting a VLPI using VSYNC (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Add its_vlpi_map helpers (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Kill its->device_ids and use TYPER copy instead (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Kill its->ite_size and use TYPER copy instead (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make is_v4 use a TYPER copy (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Allow LPI invalidation via the DirectLPI interface (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Factor out wait_for_syncr primitive (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Free collection mapping on device teardown (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix u64 to __le64 warnings (Mark Salter) [1818174] - [irqchip] irqchip: Remove redundant semicolon after while (Mark Salter) [1818174] - [virt] KVM: vgic-v4: Track the number of VLPIs per vcpu (Mark Salter) [1818174] - [virt] KVM: arm64: vgic-v4: Move the GICv4 residency flow to be driven by vcpu_load/put (Mark Salter) [1818174] - [arm64] arm64: add local_daif_inherit() (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Use the exact ITSList for VMOVP (Mark Salter) [1818174] - [arm64] arm64: Relax ICC_PMR_EL1 accesses when ICC_CTLR_EL1.PMHE is clear (Mark Salter) [1818174] - [arm64] arm64: Fix incorrect irqflag restore for priority masking for compat (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Fix GIC_LINE_NR accessor (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Remove the redundant set_bit for lpi_map (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add quirks for HIP06/07 invalid GICD_TYPER erratum 161010803 (Mark Salter) [1818174] - [irqchip] irqchip/gic: Skip DT quirks when evaluating IIDR-based quirks (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Warn about inconsistent implementations of extended ranges (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add EPPI range support (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Dynamically allocate PPI partition descriptors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Dynamically allocate PPI NMI refcounts (Mark Salter) [1818174] - [irqchip] irqchip/gic: Prepare for more than 16 PPIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add ESPI range support (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add INTID range and convertion primitives (Mark Salter) [1818174] - [irqchip] irqchip/gic: Rework gic_configure_irq to take the full ICFGR base (Mark Salter) [1818174] - [irqchip] irqchip/gic-v2m: Register the frame's PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic: Register the distributor's PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Register the ITS' PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Register the distributor's PA instead of its VA in fwnode (Mark Salter) [1818174] - [arm64] arm64: kprobes: Recover pstate.D in single-step exception handler (Mark Salter) [1818174] - [arm64] arm64: Lower priority mask for GIC_PRIO_IRQON (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Free unused vpt_page when alloc vpe table fail (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Mark expected switch fall-through (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix misuse of GENMASK macro (Mark Salter) [1818174] - [arm64] arm64: fix kernel stack overflow in kdump capture kernel (Mark Salter) [1818174] - [arm64] arm64: irqflags: Introduce explicit debugging for IRQ priorities (Mark Salter) [1818174] - [arm64] arm64: Enable the support of pseudo-NMIs (Mark Salter) [1818174] - [arm64] arm64: Fix incorrect irqflag restore for priority masking (Mark Salter) [1818174] - [arm64] arm64: Fix interrupt tracing in the presence of NMIs (Mark Salter) [1818174] - [arm64] arm64: irqflags: Add condition flags to inline asm clobber list (Mark Salter) [1818174] - [arm64] arm64: irqflags: Pass flags as readonly operand to restore instruction (Mark Salter) [1818174] - [arm64] arm64: Do not enable IRQs for ct_user_exit (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix command queue pointer comparison bug (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make free_lpi_range a little cheaper (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Drop redundant initialization in mk_lpi_range (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Move allocation outside mutex (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix typo in a comment in its_msi_prepare() (Mark Salter) [1818174] - [include] irqchip/gic-v3-its: fix some definitions of inner cacheability attributes (Mark Salter) [1818174] - [arm64] arm64: fix wrong check of on_sdei_stack in nmi context (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp (Mark Salter) [1818174] - [arm64] arm64: remove obsolete selection of MULTI_IRQ_HANDLER (Mark Salter) [1818174] - [irqchip] irqchip/gicv3-its: Use NUMA aware memory allocation for ITS tables (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Avoid parsing _indirect_ twice for Device table (Mark Salter) [1818174] - [arm64] arm64: irqflags: Fix clang build warnings (Mark Salter) [1818174] - [arm64] arm64: KVM/mm: Move SEA handling behind a single 'claim' interface (Mark Salter) [1818174] - [arm64] arm64: Skip irqflags tracing for NMI in IRQs disabled context (Mark Salter) [1818174] - [arm64] arm64: Skip preemption when exiting an NMI (Mark Salter) [1818174] - [arm64] arm64: Handle serror in NMI context (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Allow interrupts to be set as pseudo-NMI (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Handle pseudo-NMIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Detect if GIC can support pseudo-NMIs (Mark Salter) [1818174] - [arm64] arm64: gic-v3: Implement arch support for priority masking (Mark Salter) [1818174] - [irqchip] arm64: Switch to PMR masking when starting CPUs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Factor group0 detection into functions (Mark Salter) [1818174] - [arm64] arm64: alternative: Apply alternatives early in boot process (Mark Salter) [1818174] - [arm64] arm64: alternative: Allow alternative status checking per cpufeature (Mark Salter) [1818174] - [arm64] arm64: sysreg: Make mrs_s and msr_s macros work with Clang and LTO (Mark Salter) [1818174] - [arm64] arm64: daifflags: Include PMR in daifflags restore operations (Mark Salter) [1818174] - [arm64] arm64: irqflags: Use ICC_PMR_EL1 for interrupt masking (Mark Salter) [1818174] - [firmware] efi: Let architectures decide the flags that should be saved/restored (Mark Salter) [1818174] - [kvm] arm64: kvm: Unmask PMR before entering guest (Mark Salter) [1818174] - [mm] arm64: Unmask PMR before going idle (Mark Salter) [1818174] - [arm64] arm64: Make PMR part of task context (Mark Salter) [1818174] - [arm64] arm64: ptrace: Provide definitions for PMR values (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Switch to PMR masking before calling IRQ handler (Mark Salter) [1818174] - [arm64] arm64: cpufeature: Add cpufeature for IRQ priority masking (Mark Salter) [1818174] - [arm64] arm64: cpufeature: Set SYSREG_GIC_CPUIF as a boot system feature (Mark Salter) [1818174] - [arm64] arm64: Remove unused daif related functions/macros (Mark Salter) [1818174] - [arm64] arm64: Fix HCR.TGE status for NMI contexts (Mark Salter) [1818174] - [kernel] irqdesc: Add domain handler for NMIs (Mark Salter) [1818174] - [kernel] genirq: Update irq stats from NMI handlers (Mark Salter) [1818174] - [kernel] genirq: Provide NMI handlers (Mark Salter) [1818174] - [kernel] genirq: Provide NMI management for percpu_devid interrupts (Mark Salter) [1818174] - [kernel] genirq: Provide basic NMI management for interrupt lines (Mark Salter) [1818174] - [include] irqchip/gic-v3-its: Fix ITT_entry_size accessor (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Gracefully fail on LPI exhaustion (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Plug allocation race for devices sharing a DevID (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4: Fix occasional VLPI drop (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-mbi: Fix uninitialized mbi_lock (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add quirk for msm8996 broken registers (Mark Salter) [1818174] - [irqchip] irqchip/gic: Add support to device tree based quirks (Mark Salter) [1818174] - [arm64] arm64: capabilities: Batch cpu_enable callbacks (Mark Salter) [1818174] - [arm64] arm64: capabilities: Use linear array for detection and verification (Mark Salter) [1818174] - [arm64] arm64: capabilities: Optimize this_cpu_has_cap (Mark Salter) [1818174] - [arm64] arm64: capabilities: Speed up capability lookup (Mark Salter) [1818174] - [irqchip] irqchip: Convert to using pOFn instead of device_node.name (Mark Salter) [1818174] - [mm] arm64: Use daifflag_restore after bp_hardening (Mark Salter) [1818174] - [arm64] arm64: daifflags: Use irqflags functions for daifflags (Mark Salter) [1818174] - [include] irqchip/gic: Unify GIC priority definitions (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Remove acknowledge loop (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Allow interrupt to be configured as wake-up sources (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make its_lock a raw_spin_lock_t (Mark Salter) [1818174] - [irqchip] genirq/irqchip: Remove MULTI_IRQ_HANDLER as it's now obselete (Mark Salter) [1818174] - [arm64] arm64: Use the new GENERIC_IRQ_MULTI_HANDLER (Mark Salter) [1818174] - [irqchip] irqchip: Port the ARM IRQ drivers to GENERIC_IRQ_MULTI_HANDLER (Mark Salter) [1818174] - [arm64] arm64: sdei: Mark sdei stack helper functions as static (Mark Salter) [1818174] - [arm64] arm64: Add stack information to on_accessible_stack (Mark Salter) [1818174] - [x86] Reserve at most 64M of SWIOTLB memory for crashkernel (Kairui Song) [1812754] - [md] md/raid1: introduce wait_for_serialization (Nigel Croxon) [1788370] - [md] md/raid1: use bucket based mechanism for IO serialization (Nigel Croxon) [1788370] - [md] md: introduce a new struct for IO serialization (Nigel Croxon) [1788370] - [md] md: don't destroy serial_info_pool if serialize_policy is true (Nigel Croxon) [1788370] - [md] raid1: serialize the overlap write (Nigel Croxon) [1788370] - [md] md: reorgnize mddev_create/destroy_serial_pool (Nigel Croxon) [1788370] - [md] md: add serialize_policy sysfs node for raid1 (Nigel Croxon) [1788370] - [md] md: prepare for enable raid1 io serialization (Nigel Croxon) [1788370] - [md] md: fix a typo s/creat/create (Nigel Croxon) [1788370] - [md] md: rename wb stuffs (Nigel Croxon) [1788370] - [md] raid5: remove worker_cnt_per_group argument from alloc_thread_groups (Nigel Croxon) [1788370] - [lib] md/raid6: fix algorithm choice under larger PAGE_SIZE (Nigel Croxon) [1788370] - [lib] raid6/test: fix a compilation warning (Nigel Croxon) [1788370] - [md] md-bitmap: small cleanups (Nigel Croxon) [1788370]- [firmware] efi: cper: print AER info of PCIe fatal error (Vladis Dronov) [1822595] - [init] redhat: Replace hardware.redhat.com link in Unsupported message (Prarit Bhargava) [1810301] - [pci] PCI: Mark AMD Navi14 GPU rev 0xc5 ATS as broken (Myron Stowe) [1820933] - [pci] PCI: Fix typos (Myron Stowe) [1820933] - [pci] PCI: Remove useless comments and tidy others (Myron Stowe) [1820933] - [pci] PCI: Remove unnecessary includes (Myron Stowe) [1820933] - [tools] tools: PCI: Fix fd leakage (Myron Stowe) [1820933] - [pci] PCI: Export pci_parse_request_of_pci_ranges() (Myron Stowe) [1820933] - [include] resource: Add a resource_list_first_type helper (Myron Stowe) [1820933] - [pci] PCI/ATS: Restore EXPORT_SYMBOL_GPL() for pci_{enable, disable}_ats() (Myron Stowe) [1820933] - [include] PCI/ATS: Add PASID stubs (Myron Stowe) [1820933] - [pci] PCI: Unify ACS quirk desired vs provided checking (Myron Stowe) [1820933] - [pci] PCI: Make ACS quirk implementations more uniform (Myron Stowe) [1820933] - [pci] PCI: Apply Cavium ACS quirk to ThunderX2 and ThunderX3 (Myron Stowe) [1820933] - [pci] PCI/IOV: Serialize sysfs sriov_numvfs reads vs writes (Myron Stowe) [1820933] - [pci] PCI: Add DMA alias quirk for Intel VCA NTB (Myron Stowe) [1820933] - [pci] PCI: Fix Intel ACS quirk UPDCR register address (Myron Stowe) [1820933] - [pci] PCI/ATS: Make pci_restore_pri_state(), pci_restore_pasid_state() private (Myron Stowe) [1820933] - [pci] PCI/ATS: Remove unnecessary EXPORT_SYMBOL_GPL() (Myron Stowe) [1820933] - [include] PCI/ATS: Remove unused PRI and PASID stubs (Myron Stowe) [1820933] - [pci] PCI/ATS: Consolidate ATS declarations in linux/pci-ats.h (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PRI PRG Response PASID Required bit (Myron Stowe) [1820933] - [pci] PCI/ATS: Use PF PASID for VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PASID Capability offset (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PRI Capability offset (Myron Stowe) [1820933] - [pci] PCI/ATS: Disable PF/VF ATS service independently (Myron Stowe) [1820933] - [pci] PCI/ATS: Handle sharing of PF PASID Capability with all VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Handle sharing of PF PRI Capability with all VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Move pci_prg_resp_pasid_required() to CONFIG_PCI_PRI (Myron Stowe) [1820933] - [iommu] iommu/vt-d: Select PCI_PRI for INTEL_IOMMU_SVM (Myron Stowe) [1820933] - [pci] PCI/switchtec: Read all 64 bits of part_event_bitmap (Myron Stowe) [1820933] - [pci] PCI: Do not use bus number zero from EA capability (Myron Stowe) [1820933] - [pci] PCI: Avoid double hpmemsize MMIO window assignment (Myron Stowe) [1820933] - [pci] PCI: Add "pci=hpmmiosize" and "pci=hpmmioprefsize" parameters (Myron Stowe) [1820933] - [pci] PCI: Add PCI_STD_NUM_BARS for the number of standard BARs (Myron Stowe) [1820933] - [pci] PCI: Fix missing bridge dma_ranges resource list cleanup (Myron Stowe) [1820933] - [pci] PCI: Protect pci_reassign_bridge_resources() against concurrent addition/removal (Myron Stowe) [1820933] - [pci] PCI/MSI: Fix incorrect MSI-X masking on resume (Myron Stowe) [1820933] - [pci] PCI/MSI: Move power state check out of pci_msi_supported() (Myron Stowe) [1820933] - [pci] PCI/MSI: Remove unused pci_irq_get_node() (Myron Stowe) [1820933] - [uapi] PCI: Add #defines for Enter Compliance, Transmit Margin (Myron Stowe) [1820933] - [pci] PCI: Allow building PCIe things without PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI: Remove PCIe Kconfig dependencies on PCI (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove dependency on PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI/PTM: Remove dependency on PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI/PTM: Remove spurious "d" from granularity message (Myron Stowe) [1820933] - [pci] PCI: sysfs: Remove unused attribute groups (Myron Stowe) [1820933] - [x86] x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect (Myron Stowe) [1820933] - [pci] PCI: Remove unused includes and superfluous struct declaration (Myron Stowe) [1820933] - [x86] x86/PCI: Replace deprecated EXTRA_CFLAGS with ccflags-y (Myron Stowe) [1820933] - [pci] x86/PCI: Correct SPDX comment style (Myron Stowe) [1820933] - [x86] x86/PCI: Add NumaChip SPDX GPL-2.0 to replace COPYING boilerplate (Myron Stowe) [1820933] - [pci] ACPI / hotplug / PCI: Allocate resources directly under the non-hotplug bridge (Myron Stowe) [1820933] - [pci] PCI: pciehp: Prevent deadlock on disconnect (Myron Stowe) [1820933] - [pci] PCI: pciehp: Do not disable interrupt twice on suspend (Myron Stowe) [1820933] - [pci] PCI: pciehp: Refactor infinite loop in pcie_poll_cmd() (Myron Stowe) [1820933] - [pci] PCI: pciehp: Fix indefinite wait on sysfs requests (Myron Stowe) [1820933] - [pci] PCI: pciehp: Avoid returning prematurely from sysfs requests (Myron Stowe) [1820933] - [pci] PCI: Warn if no host bridge NUMA node info (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove PCIEASPM_DEBUG Kconfig option and related code (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add sysfs attributes for controlling ASPM link states (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add pcie_aspm_get_link() (Myron Stowe) [1820933] - [pci] PCI/ASPM: Allow re-enabling Clock PM (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add L1 PM substate support to pci_disable_link_state() (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove pcie_aspm_enabled() unnecessary locking (Myron Stowe) [1820933] - [pci] PCI/DPC: Add "pcie_ports=dpc-native" to allow DPC without AER control (Myron Stowe) [1820933] - [pci] PCI/AER: Fix kernel-doc warnings (Myron Stowe) [1820933] - [pci] PCI/AER: Use for_each_set_bit() to simplify code (Myron Stowe) [1820933] - [pci] PCI/AER: Add PoisonTLPBlocked to Uncorrectable error counters (Myron Stowe) [1820933] - [pci] PCI/AER: Save AER Capability for suspend/resume (Myron Stowe) [1820933] - [pci] PCI: Add ACS quirk for iProc PAXB (Myron Stowe) [1820933] - [cpufreq] cpufreq: intel_pstate: Simplify intel_pstate_cpu_init() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_work_fn (Prarit Bhargava) [1823339] - [cpufreq] x86/devicetable: Move x86 specific macro out of generic code (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use scnprintf() for avoiding potential buffer overflow (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Consolidate policy verification (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix unsafe notifiers (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix use-after-free (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: dt: Allow platform specific intermediate callbacks (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: add function to get the hardware max frequency (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Prevent unstable evaluation of WARN(vtime->state) (Prarit Bhargava) [1823339] - [cpufreq] docs: cpufreq: fix a broken reference (Prarit Bhargava) [1823339] - [kernel] PM: QoS: annotate data races in pm_qos_*_value() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Fix policy initialization for internal governor drivers (Prarit Bhargava) [1823339] - [documentation] Documentation: power: fix pm_qos_interface.rst format warning (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Make CPU latency QoS depend on CONFIG_CPU_IDLE (Prarit Bhargava) [1823339] - [documentation] Documentation: PM: QoS: Update to reflect previous code changes (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Update file information comments (Prarit Bhargava) [1823339] - [x86] x86: platform: iosf_mbi: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [cpuidle] cpuidle: Call cpu_latency_qos_limit() instead of pm_qos_request() (Prarit Bhargava) [1823339] - [x86] x86: baytrail/cherrytrail: Rework and move P-Unit PMIC bus semaphore code (Prarit Bhargava) [1823339] - [sound] sound: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [media] drivers: media: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [wireless] drivers: net: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [drm] drm/i915: Implement a better i945gm vblank irq vs. C-states workaround (Prarit Bhargava) [1823339] - [drm] drm: i915: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY and rename related functions (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Adjust pm_qos_request() signature and reorder pm_qos.h (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Simplify definitions of CPU latency QoS trace events (Prarit Bhargava) [1823339] - [tty] PM: QoS: Rename things related to the CPU latency QoS (Prarit Bhargava) [1823339] - [cpuidle] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY notifier chain (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Redefine struct pm_qos_request and drop struct pm_qos_object (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up misc device file operations (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop iterations over global QoS classes (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up pm_qos_read_value() and pm_qos_get/set_value() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up pm_qos_update_target() and pm_qos_update_flags() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop the PM_QOS_SUM QoS type (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop pm_qos_update_request_timeout() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop debugfs interface (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: Add support for OPP_PLUS (Prarit Bhargava) [1823339] - [x86] x86/intel_pstate: Handle runtime turbo disablement/enablement in frequency invariance (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on ATOM (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on ATOM_GOLDMONT* (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on XEON_PHI_KNL/KNM (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on SKYLAKE_X (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Avoid creating excessively large stack frames (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: loongson2_cpufreq: adjust cpufreq uses of LOONGSON_CHIPCFG (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: brcmstb-avs: fix imbalance of cpufreq policy refcount (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: fix spelling mistake: "Whethet" -> "Whether" (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: s3c: fix unbalances of cpufreq policy refcount (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: tegra186: convert to devm_platform_ioremap_resource (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: kirkwood: convert to devm_platform_ioremap_resource (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: CPPC: put ACPI table after using it (Prarit Bhargava) [1823339] - [cpufreq] cpufreq : CPPC: Break out if HiSilicon CPPC workaround is matched (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: scmi: Match scmi device by both name and protocol id (Prarit Bhargava) [1823339] - [base] PM / QoS: Restore DEV_PM_QOS_MIN/MAX_FREQUENCY (Prarit Bhargava) [1823339] - [base] PM: QoS: Drop frequency QoS types from device PM QoS (Prarit Bhargava) [1823339] - [include] PM / QoS: Reorder pm_qos/freq_qos/dev_pm_qos structs (Prarit Bhargava) [1823339] - [include] PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Fix Kconfig indentation (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use vtime aware kcpustat accessors for user time (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Bring up complete kcpustat accessor (Prarit Bhargava) [1823339] - [documentation] PM: Wrap documentation to fit in 80 columns (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Invalidate frequency QoS requests after removal (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Register drivers only after CPU devices have been registered (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Add NULL checks to show() and store() methods of cpufreq (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Fix invalid EPB setting (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Initialize cpufreq-dt driver earlier (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Fix plain int as pointer warning from sparse (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: fix stack bloat and hard limit on number of CPUs (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Clarify the comment in cpufreq_set_policy() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use vtime aware kcpustat accessor to fetch CPUTIME_SYSTEM (Prarit Bhargava) [1823339] - [kernel] sched/kcpustat: Introduce vtime-aware kcpustat accessor for CPUTIME_SYSTEM (Prarit Bhargava) [1823339] - [include] sched/vtime: Introduce vtime_accounting_enabled_cpu() (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Rename vtime_accounting_cpu_enabled() to vtime_accounting_enabled_this_cpu() (Prarit Bhargava) [1823339] - [include] context_tracking: Introduce context_tracking_enabled_cpu() (Prarit Bhargava) [1823339] - [include] context_tracking: Rename context_tracking_is_cpu_enabled() to context_tracking_enabled_this_cpu() (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Record CPU under seqcount for kcpustat needs (Prarit Bhargava) [1823339] - [acpi] ACPI: processor: Add QoS requests for all CPUs (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: scpi: remove stale/outdated comment about the driver (Prarit Bhargava) [1823339] - [thermal] thermal/drivers/cpufreq_cooling: Fix return of cpufreq_set_cur_state (Prarit Bhargava) [1823339] - [acpi] cpufreq: Use per-policy frequency QoS (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Introduce frequency QoS (Prarit Bhargava) [1823339] - [acpi] ACPI: processor: Avoid NULL pointer dereferences at init time (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: Add support for AM3517 (Prarit Bhargava) [1823339] - [cpufreq] ARM: dts: omap36xx: using OPP1G needs to control the abb_ldo (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: add support for omap34xx and omap36xx (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Remove CPUFREQ_ADJUST and CPUFREQ_NOTIFY policy notifier events (Prarit Bhargava) [1823339] - [base] arch_topology: Use CPUFREQ_CREATE_POLICY instead of CPUFREQ_NOTIFY (Prarit Bhargava) [1823339] - [acpi] ACPI: cpufreq: Switch to QoS requests instead of cpufreq notifier (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Get rid of unused flags (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Implement QoS supported freq constraints (Prarit Bhargava) [1823339] - [thermal] thermal: cpu_cooling: Switch to QoS requests for freq limits (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Add policy create/remove notifiers back (Prarit Bhargava) [1823339] - [documentation] docs: power: convert docs to ReST and rename to *.rst (Prarit Bhargava) [1823339] - [kernel] PM: QoS: no need to check return value of debugfs_create functions (Prarit Bhargava) [1823339] - [kernel] PM / QoS: Change to use DEFINE_SHOW_ATTRIBUTE macro (Prarit Bhargava) [1823339] - [nvme] nvme-fc: Revert "add module to ops template to allow module references" (Gopal Tiwari) [1823270] - [nvme] nvme: fix deadlock caused by ANA update wrong locking (Gopal Tiwari) [1823270] - [nvme] nvme-pci: Hold cq_poll_lock while completing CQEs (Gopal Tiwari) [1823270] - [uapi] nvme: change nvme_passthru_cmd64 to explicitly mark rsvd (Gopal Tiwari) [1823270] - [tools] tools/power/x86/intel-speed-select: Fix a typo in error message (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Avoid duplicate Package strings for json (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Add display for enabled cpus count (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Print friendly warning for bad command line (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix avx options for turbo-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve CLX commands (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Show error for invalid CPUs in the options (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve core-power result and error display (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Kernel interface error handling (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for turbo-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for base-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve output of perf-profile commands (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance help for core-power assoc (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Display error for invalid priority type (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Check feature status first (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for perf-profile feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Add an API for error/information print (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance --info option (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance help (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Helpful warning for missing kernel interface (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Store topology information (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Max CPU count calculation when CPU0 is offline (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Special handling for CPU 0 online/offline (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Use more verbiage for clos information (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance core-power info command (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Make target CPU optional for core-power info (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Warn for invalid package id (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix last cpu number (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix mailbox usage for CLOS_PM_QOS_CONFIG (Prarit Bhargava) [1778956] - [platform] platform/x86: ISST: Fix wrong unregister type (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Avoid duplicate names for json parsing (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix display for turbo-freq auto mode (Prarit Bhargava) [1778956] - [platform] platform/x86: ISST: Allow additional core-power mailbox commands (Prarit Bhargava) [1778956] - [misc] mei: me: add comet point (lake) H device ids (Ken Cox) [1815355] - [misc] mei: me: add comet point (lake) LP device ids (Ken Cox) [1815355] - [misc] mei: define dma ring buffer sizes for PCH12 HW and newer (Ken Cox) [1815355] - [misc] mei: hbm: define dma ring setup protocol (Ken Cox) [1815355] - [acpi] apei/ghes: Do not delay GHES polling (Robert Richter) [1793544] - [edac] EDAC/ghes: Do not warn when incrementing refcount on 0 (Robert Richter) [1793544] - [edac] EDAC/ghes: Fix locking and memory barrier issues (Robert Richter) [1793544] - [edac] EDAC/ghes: Fix Use after free in ghes_edac remove path (Robert Richter) [1793544] - [edac] EDAC, ghes: Use CPER module handles to locate DIMMs (Robert Richter) [1793544] - [kernel] sched/fair: Fix statistics for find_idlest_group() (Phil Auld) [1794398] - [kernel] sched/core: Annotate curr pointer in rq with __rcu (Phil Auld) [1794398] - [kernel] sched/psi: Fix OOB write when writing 0 bytes to PSI files (Phil Auld) [1794398] - [kernel] sched/psi: Correct overly pessimistic size calculation (Phil Auld) [1794398] - [kernel] sched/fair: Prevent unlimited runtime on throttled group (Phil Auld) [1794398] - [kernel] sched/nohz: Optimize get_nohz_timer_target() (Phil Auld) [1794398] - [kernel] sched/topology: Assert non-NUMA topology masks don't (partially) overlap (Phil Auld) [1794398] - [kernel] sched/psi: create /proc/pressure and /proc/pressure/{io|memory|cpu} only when psi enabled (Phil Auld) [1794398] - [kernel] sched/fair: Remove redundant call to cpufreq_update_util() (Phil Auld) [1794398] - [kernel] sched/debug: Add new tracepoints to track PELT at rq level (Phil Auld) [1794398] - [kernel] sched/fair: calculate delta runnable load only when it's needed (Phil Auld) [1794398] - [kernel] sched/fair: Fix sgc->{min, max}_capacity calculation for SD_OVERLAP (Phil Auld) [1794398] - [kernel] sched/debug: Reset watchdog on all CPUs while processing sysrq-t (Phil Auld) [1794398] - [kernel] sched/fair: Make sched-idle CPU selection consistent throughout (Phil Auld) [1794398] - [kernel] sched/core: Remove unused variable from set_user_nice() (Phil Auld) [1794398] - [kernel] sched/fair: Optimize select_idle_cpu (Phil Auld) [1794398] - [kernel] schied/fair: Skip calculating @contrib without load (Phil Auld) [1794398] - [kernel] sched: Spare resched IPI when prio changes on a single fair task (Phil Auld) [1794398] - [kernel] sched: Use fair:prio_changed() instead of ad-hoc implementation (Phil Auld) [1794398] - [kernel] sched/wait: fix ___wait_var_event(exclusive) (Phil Auld) [1794398] - [kernel] psi: Fix a division error in psi poll() (Phil Auld) [1794398] - [kernel] sched/psi: Fix sampling error and rare div0 crashes with cgroups and high uptime (Phil Auld) [1794398] - [kernel] sched/cpufreq: Move the cfs_rq_util_change() call to cpufreq_update_util() (Phil Auld) [1794398] - [kernel] sched/pelt: Fix update of blocked PELT ordering (Phil Auld) [1794398] - [kernel] sched/core: Avoid spurious lock dependencies (Phil Auld) [1794398] - [kernel] Add wake_up_interruptible_sync_poll_locked() (Phil Auld) [1794398] - [kernel] Remove the nr_exclusive argument from __wake_up_sync_key() (Phil Auld) [1794398] - [x86] x86/mce: Do not log spurious corrected mce errors (Prarit Bhargava) [1819761] - [x86] x86/MCE: Add an MCE-record filtering function (Prarit Bhargava) [1819761]- [mm] mm/page_alloc: increase default min_free_kbytes bound (Joel Savitz) [1808039] - [crypto] crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Neil Horman) [1782179] - [crypto] crypto: qat - switch to skcipher API (Neil Horman) [1782179] - [scsi] scsi: lpfc: Change default SCSI LUN QD to 64 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.0 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Remove prototype FIPS/DSS options from SLI-3 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Make debugfs ktime stats generic for NVME and SCSI (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix erroneous cpu limit of 128 on I/O statistics (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix update of wq consumer index in lpfc_sli4_wq_release (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix crash after handling a pci error (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix scsi host template for SLI3 vports (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix lpfc overwrite of sg_cnt field in nvmefc_tgt_fcp_req (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix lockdep error - register non-static key (Dick Kennedy) [1822334] - [fs] utimes: Clamp the timestamps in notify_change() (Eric Sandeen) [1795991] - [fs] smb3: Fix regression in time handling (Eric Sandeen) [1795991] - [fs] isofs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: ceph: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: fat: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fat: propagate 64-bit inode timestamps (Eric Sandeen) [1795991] - [fs] fs: cifs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: nfs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] ext4: Initialize timestamps limits (Eric Sandeen) [1795991] - [fs] fs: Fill in max and min timestamps in superblock (Eric Sandeen) [1795991] - [fs] utimes: Clamp the timestamps before update (Eric Sandeen) [1795991] - [fs] timestamp_truncate: Replace users of timespec64_trunc (Eric Sandeen) [1795991] - [fs] vfs: Add timestamp_truncate() api (Eric Sandeen) [1795991] - [fs] vfs: Add file timestamp range support (Eric Sandeen) [1795991] - [fs] cramfs: Deprecate cramfs in RHEL (Abhijith Das) [1794513] - [thermal] thermal: intel: intel_pch_thermal: Add Comet Lake (CML) platform support (David Arcari) [1773794] - [thermal] thermal: intel: Fix unmatched pci_release_region (David Arcari) [1773794] - [thermal] thermal: intel: Use dev_get_drvdata (David Arcari) [1773794] - [thermal] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (David Arcari) [1773794] - [thermal] drivers: thermal: Move various drivers for intel platforms into a subdir (David Arcari) [1773794] - [x86] x86/cpufeatures: Enable a new AVX512 CPU feature (David Arcari) [1783143] - [x86] cpu/cpuid-deps: Add a tab to cpuid dependent features (David Arcari) [1783143] - [crypto] crypto: rng - Override drivers/char/random in FIPS mode (Herbert Xu) [1785660] - [char] random: Add hook to override device reads and getrandom(2) (Herbert Xu) [1785660] - [block] nbd: add a flush_workqueue in nbd_start_device (Ming Lei) [1798919] - [scsi] scsi: sd_sbc: Fix sd_zbc_report_zones() (Ming Lei) [1798919] - [block] block: Fix partition support for host aware zoned block devices (Ming Lei) [1798919] - [scsi] block: allow partitions on host aware zone devices (Ming Lei) [1798919] - [block] null_blk: Fix zone write handling (Ming Lei) [1798919] - [fs] fs: move guard_bio_eod() after bio_set_op_attrs (Ming Lei) [1798919] - [block] null_blk: Fix REQ_OP_ZONE_CLOSE handling (Ming Lei) [1798919] - [block] block: add bio_truncate to fix guard_bio_eod (Ming Lei) [1798919] - [block] compat_ioctl: block: handle Persistent Reservations (Ming Lei) [1798919] - [block] compat_ioctl: block: handle add zone open, close and finish ioctl (Ming Lei) [1798919] - [block] compat_ioctl: block: handle BLKGETZONESZ/BLKGETNRZONES (Ming Lei) [1798919] - [block] compat_ioctl: block: handle BLKREPORTZONE/BLKRESETZONE (Ming Lei) [1798919] - [block] block: fix memleak when __blk_rq_map_user_iov() is failed (Ming Lei) [1798919] - [s390] s390/dasd: fix typo in copyright statement (Ming Lei) [1798919] - [s390] s390/dasd: fix memleak in path handling error case (Ming Lei) [1798919] - [s390] s390/dasd/cio: Interpret ccw_device_get_mdc return value correctly (Ming Lei) [1798919] - [block] block: Fix a lockdep complaint triggered by request queue flushing (Ming Lei) [1798919] - [block] block: Fix the type of 'sts' in bsg_queue_rq() (Ming Lei) [1798919] - [block] block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT (Ming Lei) [1798919] - [block] nbd: fix shutdown and recv work deadlock v2 (Ming Lei) [1798919] - [block] blk-iocost: fix incorrect vtime comparison in iocg_is_idle() (Ming Lei) [1798919] - [block] iocost: check active_list of all the ancestors in iocg_activate() (Ming Lei) [1798919] - [block] iocost: over-budget forced IOs should schedule async delay (Ming Lei) [1798919] - [block] blk-cgroup: remove blkcg_drain_queue (Ming Lei) [1798919] - [block] block: fix NULL pointer dereference in account statistics with IDE (Ming Lei) [1798919] - [block] null_blk: remove unused variable warning on !CONFIG_BLK_DEV_ZONED (Ming Lei) [1798919] - [block] brd: warn on un-aligned buffer (Ming Lei) [1798919] - [block] brd: remove max_hw_sectors queue limit (Ming Lei) [1798919] - [block] block: set the zone size in blk_revalidate_disk_zones atomically (Ming Lei) [1798919] - [block] block: don't handle bio based drivers in blk_revalidate_disk_zones (Ming Lei) [1798919] - [block] block: allocate the zone bitmaps lazily (Ming Lei) [1798919] - [block] block: replace seq_zones_bitmap with conv_zones_bitmap (Ming Lei) [1798919] - [block] block: simplify blkdev_nr_zones (Ming Lei) [1798919] - [block] block: remove the empty line at the end of blk-zoned.c (Ming Lei) [1798919] - [block] null_blk: cleanup null_gendisk_register (Ming Lei) [1798919] - [block] null_blk: fix zone size paramter check (Ming Lei) [1798919] - [fs] block: don't send uevent for empty disk when not invalidating (Ming Lei) [1798919] - [block] ataflop: Remove unneeded semicolon (Ming Lei) [1798919] - [block] drbd: Remove unneeded semicolon (Ming Lei) [1798919] - [scsi] sr_vendor: support Beurer GL50 evo CD-on-a-chip devices (Ming Lei) [1798919] - [cdrom] cdrom: respect device capabilities during opening action (Ming Lei) [1798919] - [fs] block: move clearing bd_invalidated into check_disk_size_change (Ming Lei) [1798919] - [block] block: remove (__)blkdev_reread_part as an exported API (Ming Lei) [1798919] - [block] block: fix bdev_disk_changed for non-partitioned devices (Ming Lei) [1798919] - [block] block: move rescan_partitions to fs/block_dev.c (Ming Lei) [1798919] - [block] block: merge invalidate_partitions into rescan_partitions (Ming Lei) [1798919] - [block] block: refactor rescan_partitions (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Remove set but not used variable 'buflen' (Ming Lei) [1798919] - [md] block: rework zone reporting (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Cleanup sd_zbc_alloc_report_buffer() (Ming Lei) [1798919] - [block] null_blk: Add zone_nr_conv to features (Ming Lei) [1798919] - [block] null_blk: clean up report zones (Ming Lei) [1798919] - [block] null_blk: clean up the block device operations (Ming Lei) [1798919] - [block] block: Remove partition support for zoned block devices (Ming Lei) [1798919] - [md] block: Simplify report zones execution (Ming Lei) [1798919] - [block] block: cleanup the !zoned case in blk_revalidate_disk_zones (Ming Lei) [1798919] - [scsi] block: Enhance blk_revalidate_disk_zones() (Ming Lei) [1798919] - [block] nbd: prevent memory leak (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: add zone open, close, and finish support (Ming Lei) [1798919] - [block] null_blk: add zone open, close, and finish support (Ming Lei) [1798919] - [md] dm: add zone open, close and finish support (Ming Lei) [1798919] - [block] loop: fix no-unmap write-zeroes request behavior (Ming Lei) [1798919] - [block] null_blk: return fixed zoned reads > write pointer (Ming Lei) [1798919] - [block] null_blk: Enable modifying 'submit_queues' after an instance has been configured (Ming Lei) [1798919] - [block] null_blk: Improve nullb_device_##NAME##_store() readability (Ming Lei) [1798919] - [block] block,bfq: Skip tracing hooks if possible (Ming Lei) [1798919] - [block] block: Don't disable interrupts in trigger_softirq() (Ming Lei) [1798919] - [lib] sbitmap: Delete sbitmap_any_bit_clear() (Ming Lei) [1798919] - [block] blk-mq: Delete blk_mq_has_free_tags() and blk_mq_can_queue() (Ming Lei) [1798919] - [block] block: add zone open, close and finish ioctl support (Ming Lei) [1798919] - [uapi] uapi: fix ioctl documentation (Ming Lei) [1798919] - [uapi] uapi: linux/blkzoned.h: fix BLKGETZONESZ and BLKGETNRZONES definitions (Ming Lei) [1798919] - [block] block: add zone open, close and finish operations (Ming Lei) [1798919] - [block] block: Simplify REQ_OP_ZONE_RESET_ALL handling (Ming Lei) [1798919] - [block] block: Remove REQ_OP_ZONE_RESET plugging (Ming Lei) [1798919] - [fs] bdev: Refresh bdev size for disks without partitioning (Ming Lei) [1798919] - [fs] bdev: Factor out bdev revalidation into a common helper (Ming Lei) [1798919] - [block] blk-mq: Make blk_mq_run_hw_queue() return void (Ming Lei) [1798919] - [fs] fcntl: fix typo in RWH_WRITE_LIFE_NOT_SET r/w hint name (Ming Lei) [1798919] - [block] blk-mq: remove needless goto from blk_mq_get_driver_tag (Ming Lei) [1798919] - [block] block: Reduce the amount of memory used for tag sets (Ming Lei) [1798919] - [block] block: Reduce the amount of memory required per request queue (Ming Lei) [1798919] - [block] block: Remove the synchronize_rcu() call from __blk_mq_update_nr_hw_queues() (Ming Lei) [1798919] - [block] block: account statistics for passthrough requests (Ming Lei) [1798919] - [block] blk-stat: Optimise blk_stat_add() (Ming Lei) [1798919] - [block] blk-mq: Embed counters into struct mq_inflight (Ming Lei) [1798919] - [block] blk-mq: Reuse callback in blk_mq_in_flight*() (Ming Lei) [1798919] - [block] blk-mq: Inline status checkers (Ming Lei) [1798919] - [block] block: Document all members of blk_mq_tag_set and bkl_mq_queue_map (Ming Lei) [1798919] - [block] block: Reduce sysfs_lock locking inside blk_cleanup_queue() (Ming Lei) [1798919] - [block] block: Remove "dying" checks from sysfs callbacks (Ming Lei) [1798919] - [block] block: Remove request_queue.nr_queues (Ming Lei) [1798919] - [trace] block: Fix writeback throttling W=1 compiler warnings (Ming Lei) [1798919] - [block] block: Fix three kernel-doc warnings (Ming Lei) [1798919] - [fs] writeback: fix use-after-free in finish_writeback_work() (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Fix sd_zbc_complete() (Ming Lei) [1798919] - [block] nbd:fix memory leak in nbd_get_socket() (Ming Lei) [1798919] - [block] nbd: verify socket is supported during setup (Ming Lei) [1798919] - [block] nbd: handle racing with error'ed out commands (Ming Lei) [1798919] - [block] nbd: protect cmd->status with cmd->lock (Ming Lei) [1798919] - [block] nbd: fix possible sysfs duplicate warning (Ming Lei) [1798919] - [block] nbd: fix possible page fault for nbd disk (Ming Lei) [1798919] - [block] nbd: rename the runtime flags as NBD_RT_ prefixed (Ming Lei) [1798919] - [block] nbd: fix max number of supported devs (Ming Lei) [1798919] - [block] nbd: fix zero cmd timeout handling v2 (Ming Lei) [1798919] - [block] nbd: add missing config put (Ming Lei) [1798919] - [block] nbd: add function to convert blk req op to nbd cmd (Ming Lei) [1798919] - [block] nbd: add set cmd timeout helper (Ming Lei) [1798919] - [block] loop: change queue block size to match when using DIO (Ming Lei) [1798919] - [block] rsxx: add missed destroy_workqueue calls in remove (Ming Lei) [1798919] - [fs] cgroup, writeback: don't switch wbs immediately on dead wbs if the memcg is dead (Ming Lei) [1798919] - [block] block: drbd: remove a stray unlock in __drbd_send_protocol() (Ming Lei) [1798919] - [block] blkcg: make blkcg_print_stat() print stats only for online blkgs (Ming Lei) [1798919] - [block] iocost: don't nest spin_lock_irq in ioc_weight_write() (Ming Lei) [1798919] - [block] blk-rq-qos: fix first node deletion of rq_qos_del() (Ming Lei) [1798919] - [block] blkcg: Fix multiple bugs in blkcg_activate_policy() (Ming Lei) [1798919] - [block] block: Fix elv_support_iosched() (Ming Lei) [1798919] - [block] null_blk: Fix zoned command return code (Ming Lei) [1798919] - [block] blk-wbt: fix performance regression in wbt scale_up/scale_down (Ming Lei) [1798919] - [ata] Revert "libata, freezer: avoid block device removal while system is frozen" (Ming Lei) [1798919] - [mm] bdi: Do not use freezable workqueue (Ming Lei) [1798919] - [uapi] block: pg: add header include guard (Ming Lei) [1798919] - [block] block: fix null pointer dereference in blk_mq_rq_timed_out() (Ming Lei) [1798919] - [block] rq-qos: get rid of redundant wbt_update_limits() (Ming Lei) [1798919] - [block] iocost: bump up default latency targets for hard disks (Ming Lei) [1798919] - [block] iocost: improve nr_lagging handling (Ming Lei) [1798919] - [block] iocost: better trace vrate changes (Ming Lei) [1798919] - [block] block: drop device references in bsg_queue_rq() (Ming Lei) [1798919] - [block] pktcdvd: remove warning on attempting to register non-passthrough dev (Ming Lei) [1798919] - [ata] ata: libahci_platform: Add of_node_put() before loop exit (Ming Lei) [1798919] - [block] block, bfq: push up injection only after setting service time (Ming Lei) [1798919] - [block] block, bfq: increase update frequency of inject limit (Ming Lei) [1798919] - [block] block, bfq: reduce upper bound for inject limit to max_rq_in_driver+1 (Ming Lei) [1798919] - [block] block, bfq: update inject limit only after injection occurred (Ming Lei) [1798919] - [block] block: centralize PI remapping logic to the block layer (Ming Lei) [1798919] - [block] block: use symbolic constants for t10_pi type (Ming Lei) [1798919] - [block] null_blk: format pr_* logs with pr_fmt (Ming Lei) [1798919] - [block] null_blk: match the type of parameter nr_devices (Ming Lei) [1798919] - [block] null_blk: do not fail the module load with zero devices (Ming Lei) [1798919] - [block] block: also check RQF_STATS in blk_mq_need_time_stamp() (Ming Lei) [1798919] - [block] block: make rq sector size accessible for block stats (Ming Lei) [1798919] - [block] bfq: Fix bfq linkage error (Ming Lei) [1798919] - [scsi] scsi: core: remove dummy q->dev check (Ming Lei) [1798919] - [block] block: bypass blk_set_runtime_active for uninitialized q->dev (Ming Lei) [1798919] - [block] null_blk: validate the number of devices (Ming Lei) [1798919] - [block] null_blk: fix module name at log message (Ming Lei) [1798919] - [block] iocost_monitor: Report debt (Ming Lei) [1798919] - [tools] iocost_monitor: Report more info with higher accuracy (Ming Lei) [1798919] - [tools] iocost_monitor: Always use strings for json values (Ming Lei) [1798919] - [block] blk-iocost: Don't let merges push vtime into the future (Ming Lei) [1798919] - [block] blk-iocost: Account force-charged overage in absolute vtime (Ming Lei) [1798919] - [block] blk-iocost: Fix incorrect operation order during iocg free (Ming Lei) [1798919] - [block] bfq: Add per-device weight (Ming Lei) [1798919] - [block] bfq: Extract bfq_group_set_weight from bfq_io_set_weight_legacy (Ming Lei) [1798919] - [block] bfq: Fix the missing barrier in __bfq_entity_update_weight_prio (Ming Lei) [1798919] - [block] block: fix elevator_get_by_features() (Ming Lei) [1798919] - [scsi] sd: Set ELEVATOR_F_ZBD_SEQ_WRITE for ZBC disks (Ming Lei) [1798919] - [block] block: Set ELEVATOR_F_ZBD_SEQ_WRITE for nullblk zoned disks (Ming Lei) [1798919] - [block] block: Delay default elevator initialization (Ming Lei) [1798919] - [block] block: Improve default elevator selection (Ming Lei) [1798919] - [block] block: Introduce elevator features (Ming Lei) [1798919] - [block] block: Change elevator_init_mq() to always succeed (Ming Lei) [1798919] - [block] block: Cleanup elevator_init_mq() use (Ming Lei) [1798919] - [block] paride/pcd: need to check if cd->disk is null in pcd_detect (Ming Lei) [1798919] - [block] paride/pcd: need to set queue to NULL before put_disk (Ming Lei) [1798919] - [block] blkcg: add missing NULL check in ioc_cpd_alloc() (Ming Lei) [1798919] - [block] blkcg: fix missing free on error path of blk_iocost_init() (Ming Lei) [1798919] - [trace] blkcg: blk-iocost: predeclare used structs (Ming Lei) [1798919] - [block] blkcg: add tools/cgroup/iocost_coef_gen.py (Ming Lei) [1798919] - [block] blkcg: add tools/cgroup/iocost_monitor.py (Ming Lei) [1798919] - [block] blkcg: implement blk-iocost (Ming Lei) [1798919] - [block] blk-mq: add optional request->alloc_time_ns (Ming Lei) [1798919] - [block] block: extend 'struct request' via 'request_aux' (Ming Lei) [1798919] - [block] blkcg: s/RQ_QOS_CGROUP/RQ_QOS_LATENCY/ (Ming Lei) [1798919] - [block] block/rq_qos: implement rq_qos_ops->queue_depth_changed() (Ming Lei) [1798919] - [block] block/rq_qos: add rq_qos_merge() (Ming Lei) [1798919] - [block] blkcg: separate blkcg_conf_get_disk() out of blkg_conf_prep() (Ming Lei) [1798919] - [block] blkcg: make ->cpd_init_fn() optional (Ming Lei) [1798919] - [block] blkcg: pass @q and @blkcg into blkcg_pol_alloc_pd_fn() (Ming Lei) [1798919] - [include] writeback: Generalize and expose wb_completion (Ming Lei) [1798919] - [block] null_blk: fix inline misuse (Ming Lei) [1798919] - [block] null_blk: create a helper for req completion (Ming Lei) [1798919] - [block] null_blk: create a helper for zoned devices (Ming Lei) [1798919] - [block] null_blk: create a helper for mem-backed ops (Ming Lei) [1798919] - [block] null_blk: create a helper for badblocks (Ming Lei) [1798919] - [block] null_blk: create a helper for throttling (Ming Lei) [1798919] - [block] null_blk: move duplicate code to callers (Ming Lei) [1798919] - [block] block: remove struct request_queue queue_head (Ming Lei) [1798919] - [fs] writeback, cgroup: inode_switch_wbs() shouldn't give up on wb_switch_rwsem trylock fail (Ming Lei) [1798919] - [fs] writeback, cgroup: Adjust WB_FRN_TIME_CUT_DIV to accelerate foreign inode switching (Ming Lei) [1798919] - [block] blk-mq: Fix memory leak in blk_mq_init_allocated_queue error handling (Ming Lei) [1798919] - [block] loop: Add LOOP_SET_DIRECT_IO to compat ioctl (Ming Lei) [1798919] - [lib] lib: scatterlist: Fix to support no mapped sg (Ming Lei) [1798919] - [block] null_blk: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [scsi] scsi: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [block] blk-zoned: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [block] block: add req op to reset all zones and flag (Ming Lei) [1798919] - [block] block: Fix a comment in blk_cleanup_queue() (Ming Lei) [1798919] - [block] block: Fix spelling in the header above blkg_lookup() (Ming Lei) [1798919] - [kernel] cgroup: Move cgroup_parse_float() implementation out of CONFIG_SYSFS (Ming Lei) [1798919] - [kernel] cgroup: add cgroup_parse_float() (Ming Lei) [1798919] - [block] nbd: replace kill_bdev() with __invalidate_device() again (Ming Lei) [1798919] - [block] nbd: add netlink reconfigure resize support (Ming Lei) [1798919] - [block] nbd: fix crash when the blksize is zero (Ming Lei) [1798919] - [block] nbd: propagate genlmsg_reply return code (Ming Lei) [1798919] - [block] block: loop: mark bvec as ITER_BVEC_FLAG_NO_REF (Ming Lei) [1798919] - [block] loop: properly observe rotational flag of underlying device (Ming Lei) [1798919] - [block] block: Limit zone array allocation size (Ming Lei) [1798919] - [block] block: Fix null_blk_zoned creation failure with small number of zones (Ming Lei) [1798919] - [scsi] sd_zbc: Fix report zones buffer allocation (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Fix sd_zbc_report_zones() buffer allocation (Ming Lei) [1798919] - [md] block: Kill gfp_t argument of blkdev_report_zones() (Ming Lei) [1798919] - [md] dm zoned: Fix zone report handling (Ming Lei) [1798919] - [block] blkcg: implement REQ_CGROUP_PUNT (Ming Lei) [1798919] - [include] blkcg, writeback: Implement wbc_blkcg_css() (Ming Lei) [1798919] - [fs] blkcg, writeback: Add wbc->no_cgroup_owner (Ming Lei) [1798919] - [fs] blkcg, writeback: Rename wbc_account_io() to wbc_account_cgroup_owner() (Ming Lei) [1798919] - [block] cgroup, blkcg: Prepare some symbols for module and !CONFIG_CGROUP usages (Ming Lei) [1798919] - [fs] writeback: synchronize sync(2) against cgroup writeback membership switches (Ming Lei) [1798919] - [block] blk-mq: move cancel of requeue_work to the front of blk_exit_queue (Ming Lei) [1798919] - [block] blk-mq-debugfs: support rq_qos (Ming Lei) [1798919] - [block] null_blk: fix type mismatch null_handle_cmd() (Ming Lei) [1798919] - [block] null_blk: remove duplicate 0 initialization (Ming Lei) [1798919] - [block] null_blk: remove duplicate check for report zone (Ming Lei) [1798919] - [block] null_blk: add zoned config support information (Ming Lei) [1798919] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (Vitaly Kuznetsov) [1807448] - [x86] vmware: Use bool type for vmw_sched_clock (Vitaly Kuznetsov) [1807448] - [x86] vmware: Enable steal time accounting (Vitaly Kuznetsov) [1807448] - [x86] vmware: Add steal time clock support for VMware guests (Vitaly Kuznetsov) [1807448] - [x86] vmware: Remove vmware_sched_clock_setup() (Vitaly Kuznetsov) [1807448] - [x86] vmware: Make vmware_select_hypercall() __init (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Fix platform detection VMWARE_PORT macro (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Use the full form of INL in VMWARE_HYPERCALL, for clang/llvm (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Use the full form of INL in VMWARE_PORT (Vitaly Kuznetsov) [1807448] - [x86] vmware: Add a header file for hypercall definitions (Vitaly Kuznetsov) [1807448] - [x86] vmware: Update platform detection code for VMCALL/VMMCALL hypercalls (Vitaly Kuznetsov) [1807448] - [netdrv] hv_netvsc: Fix unwanted wakeup in netvsc_attach() (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: make recording RSS hash depend on feature flag (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: record hardware hash in skb (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: flag software created hash value (Mohammed Gamal) [1815503] - [video] hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs (Mohammed Gamal) [1816744] - [video] hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver (Mohammed Gamal) [1816744] - [video] hyperv: hyperv_fb: Obtain screen resolution from Hyper-V host (Mohammed Gamal) [1816744] - [uio] uio_hv_generic: drop #ifdef DEBUG (Mohammed Gamal) [1816744] - [hid] hv: Remove dependencies on PAGE_SIZE for ring buffer (Mohammed Gamal) [1816744] - [x86] x86/hyperv: Create and use Hyper-V page definitions (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Drop HV_X64_CONFIGURE_PROFILER definition (Mohammed Gamal) [1816285] - [x86] x86: hv: Add function to allocate zeroed page for Hyper-V (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Add functions to allocate/deallocate page for Hyper-V (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Fix indentation in hv_do_fast_hypercall16() (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Micro-optimize send_ipi_one() (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Make vapic support x2apic mode (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Fix overflow bug in fill_gva_list() (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Zero out the VP ASSIST PAGE on allocation (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Make hv_vcpu_is_preempted() visible (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Implement EOI assist (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Prevent potential NULL pointer dereference (Mohammed Gamal) [1816285] - [x86] Drivers: hv: vmbus: Break out ISA independent parts of mshyperv.h (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Remove unused include (Mohammed Gamal) [1816285] - [net] vsock/virtio: add support for MSG_PEEK (Stefano Garzarella) [1818059]- [include] leds: triggers: new function led_set_trigger_data() (Torez Smith) [1686205] - [leds] leds: triggers: add device attribute support (Torez Smith) [1686205] - [usb] USB: cdc-wdm: fix race between write and disconnect due to flag abuse (Torez Smith) [1686205] - [usb] usb: host: xhci: rcar: Fix typo in compatible string matching (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Set DMA mask correctly (Torez Smith) [1686205] - [usb] USB: storage: ums-realtek: Whitelist auto-delink support (Torez Smith) [1686205] - [usb] USB: storage: ums-realtek: Update module parameter description for auto_delink_en (Torez Smith) [1686205] - [usb] usb: host: ohci: fix a race condition between shutdown and irq (Torez Smith) [1686205] - [usb] usb: hcd: use managed device resources (Torez Smith) [1686205] - [usb] typec: tcpm: fix a typo in the comparison of pdo_max_voltage (Torez Smith) [1686205] - [usb] usb-storage: Add new JMS567 revision to unusual_devs (Torez Smith) [1686205] - [usb] usb: chipidea: udc: don't do hardware access if gadget has stopped (Torez Smith) [1686205] - [usb] usbtmc: more sanity checking for packet size (Torez Smith) [1686205] - [usb] usb: udc: lpc32xx: silence fall-through warning (Torez Smith) [1686205] - [usb] usb: chipidea: imx: fix EPROBE_DEFER support during driver probe (Torez Smith) [1686205] - [usb] usb: host: fotg2: restart hcd after port reset (Torez Smith) [1686205] - [usb] USB: CDC: fix sanity checks in CDC union parser (Torez Smith) [1686205] - [usb] usb: cdc-acm: make sure a refcount is taken early enough (Torez Smith) [1686205] - [usb] USB: serial: option: add the BroadMobi BM818 card (Torez Smith) [1686205] - [usb] USB: serial: option: Add Motorola modem UARTs (Torez Smith) [1686205] - [usb] USB: core: Fix races in character device registration and deregistraion (Torez Smith) [1686205] - [usb] usb: gadget: mass_storage: Fix races between fsg_disable and fsg_set_alt (Torez Smith) [1686205] - [usb] usb: gadget: composite: Clear "suspended" on reset/disconnect (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Fix sysfs interface of "role" (Torez Smith) [1686205] - [usb] usb: setup authorized_default attributes using usb_bus_notify (Torez Smith) [1686205] - [usb] usb: iowarrior: fix deadlock on disconnect (Torez Smith) [1686205] - [usb] Revert "USB: rio500: simplify locking" (Torez Smith) [1686205] - [usb] usb: usbfs: fix double-free of usb memory upon submiturb error (Torez Smith) [1686205] - [usb] usb: yurex: Fix use-after-free in yurex_delete (Torez Smith) [1686205] - [usb] USB: serial: option: add D-Link DWM-222 device ID (Torez Smith) [1686205] - [usb] USB: serial: option: Add support for ZTE MF871A (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Ignore unsupported/unknown alternate mode requests (Torez Smith) [1686205] - [usb] xhci: Fix NULL pointer dereference at endpoint zero reset (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Fix timeout in xhci_suspend() (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: Fix uninitilized symbol error (Torez Smith) [1686205] - [usb] usb: typec: tcpm: remove tcpm dir if no children (Torez Smith) [1686205] - [usb] usb: typec: tcpm: free log buf memory when remove debug file (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Add NULL check before dereferencing config (Torez Smith) [1686205] - [tools] tools headers UAPI: Sync usbdevice_fs.h with the kernels to get new ioctl (Torez Smith) [1686205] - [usb] xhci: Fix crash if scatter gather is used with Immediate Data Transfer (IDT) (Torez Smith) [1686205] - [usb] usb: usb251xb: Reallow swap-dx-lanes to apply to the upstream port (Torez Smith) [1686205] - [usb] Revert "usb: usb251xb: Add US port lanes inversion property" (Torez Smith) [1686205] - [documentation] Revert "usb: usb251xb: Add US lanes inversion dts-bindings" (Torez Smith) [1686205] - [usb] usb: wusbcore: fix unbalanced get/put cluster_id (Torez Smith) [1686205] - [usb] usb/hcd: Fix a NULL vs IS_ERR() bug in usb_hcd_setup_local_mem() (Torez Smith) [1686205] - [usb] usb-storage: Add a limitation for blk_queue_max_hw_sectors() (Torez Smith) [1686205] - [usb] usb: pci-quirks: Minor cleanup for AMD PLL quirk (Torez Smith) [1686205] - [usb] usb: pci-quirks: Correct AMD PLL quirk detection (Torez Smith) [1686205] - [usb] vfs: Convert gadgetfs to use the new mount API (Torez Smith) [1686205] - [usb] Revert "usb: gadget: storage: Remove warning message" (Torez Smith) [1686205] - [documentation] Revert "dt-bindings: add binding for USBSS-DRD controller." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Separated decoding functions from dwc3 driver." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Patch simplify usb_decode_set_clear_feature function." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Simplify usb_decode_get_set_descriptor function." (Torez Smith) [1686205] - [usb] Revert "usb:cdns3 Add Cadence USB3 DRD Driver" (Torez Smith) [1686205] - [usb] Revert "usb:cdns3 Fix for stuck packets in on-chip OUT buffer." (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ehci: Fix example warnings (Torez Smith) [1686205] - [usb] usb :fsl: Change string format for errata property (Torez Smith) [1686205] - [usb] usb: host: Stops USB controller init if PLL fails to lock (Torez Smith) [1686205] - [usb] usb: phy: Workaround for USB erratum-A005728 (Torez Smith) [1686205] - [usb] usb: fsl: Set USB_EN bit to select ULPI phy (Torez Smith) [1686205] - [usb] usb: Handle USB3 remote wakeup for LPM enabled devices correctly (Torez Smith) [1686205] - [usb] drivers/usb/typec/tps6598x.c: fix 4CC cmd write (Torez Smith) [1686205] - [usb] drivers/usb/typec/tps6598x.c: fix portinfo width (Torez Smith) [1686205] - [usb] usb: storage: scsiglue: Do not skip VPD if try_vpd_pages is set (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add a workaround for a race condition of workqueue (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: remove redundant assignment to ret (Torez Smith) [1686205] - [usb] usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset() (Torez Smith) [1686205] - [usb] USB: gadget: function: fix issue Unneeded variable: "value" (Torez Smith) [1686205] - [usb] usb: phy: phy-mxs-usb: add imx7ulp support (Torez Smith) [1686205] - [usb] usb:cdns3 Fix for stuck packets in on-chip OUT buffer (Torez Smith) [1686205] - [usb] usb:cdns3 Add Cadence USB3 DRD Driver (Torez Smith) [1686205] - [usb] usb:gadget Simplify usb_decode_get_set_descriptor function (Torez Smith) [1686205] - [usb] usb:gadget Patch simplify usb_decode_set_clear_feature function (Torez Smith) [1686205] - [usb] usb:gadget Separated decoding functions from dwc3 driver (Torez Smith) [1686205] - [documentation] dt-bindings: add binding for USBSS-DRD controller (Torez Smith) [1686205] - [usb] usb: dwc3: pci: add support for TigerLake Devices (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add ID for isodebug v1 (Torez Smith) [1686205] - [usb] usb: host: Fix excessive alignment restriction for local memory allocations (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use struct platform_callback pointer (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add a common function for the .get_id (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move device tree properties parsing (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add struct device * declaration in usbhs_probe() (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add has_new_pipe_configs flag (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use dev_of_node macro instead of open coded (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Remove type member from renesas_usbhs_driver_param (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use a specific flag instead of type for multi_clks (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Avoid to write platform_data's value (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move macros from mod.c to the mod.h (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove notify_hotplug callback (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: revise the irq_vbus comments (Torez Smith) [1686205] - [usb] USB: core: Fix compiler warnings in devio.c (Torez Smith) [1686205] - [usb] USB: core: Remove usbfs_mutex (Torez Smith) [1686205] - [usb] usb: clean up some of the computations in adu_read (Torez Smith) [1686205] - [usb] scsi: usb: image: microtek: use sg helper to iterate over scatterlist (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use struct assignment instead of memcpy() (Torez Smith) [1686205] - [usb] USB: core: correct a spelling mistake in the comment (Torez Smith) [1686205] - [usb] usb: dwc3: remove unused @lock member of dwc3_ep struct (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Add Support for Intel Elkhart Lake Devices (Torez Smith) [1686205] - [usb] usb: Replace snprintf with scnprintf in gether_get_ifname (Torez Smith) [1686205] - [uapi] USB: fix types in uapi include (Torez Smith) [1686205] - [usb] USB: serial: option: add support for GosunCn ME3630 RNDIS mode (Torez Smith) [1686205] - [usb] xhci: detect USB 3.2 capable host controllers correctly (Torez Smith) [1686205] - [usb] usb: xhci: Don't try to recover an endpoint if port is in error state (Torez Smith) [1686205] - [usb] usb: gadget: ether: Fix race between gether_disconnect and rx_submit (Torez Smith) [1686205] - [usb] usb: gadget: storage: Remove warning message (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Add support for disabling U1 and U2 entries (Torez Smith) [1686205] - [usb] usb: gadget: send usb_gadget as an argument in get_config_params (Torez Smith) [1686205] - [documentation] doc: dt: bindings: usb: dwc3: Update entries for disabling U1 and U2 (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Use of_clk_get_parent_count() (Torez Smith) [1686205] - [usb] usb: dwc3: Fix core validation in probe, move after clocks are enabled (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Improve error handling (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Start USB in 'host mode' on the SDM845 (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Add support for booting with ACPI (Torez Smith) [1686205] - [usb] Revert "usb: dwc2: host: Setting qtd to NULL after freeing it" (Torez Smith) [1686205] - [usb] usb: gadget: net2272: remove redundant assignments to pointer 's' (Torez Smith) [1686205] - [usb] usb: gadget: Zero ffs_io_data (Torez Smith) [1686205] - [usb] USB: omap_udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] fotg210-udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: gadget: at91_udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Enhance role switch support (Torez Smith) [1686205] - [usb] usb: gadget: u_audio: Fixed variable declaration coding style issue (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: data_len used before properly set (Torez Smith) [1686205] - [usb] USB: dwc2: Don't turn off the usbphy in suspend if wakeup is enabled (Torez Smith) [1686205] - [documentation] Documentation: dt-bindings: Add snps, need-phy-for-wake for dwc2 USB (Torez Smith) [1686205] - [usb] usb: dwc2: Force 8bit UTMI width for Samsung Exynos SoCs (Torez Smith) [1686205] - [usb] usb: dwc3: meson-g12a: Add support for IRQ based OTG switching (Torez Smith) [1686205] - [usb] usb: dwc2: Use generic PHY width in params setup (Torez Smith) [1686205] - [usb] usb: host: fotg2: add device tree probing (Torez Smith) [1686205] - [usb] usb: isp1362: Spelling s/eclusive/exclusive/ (Torez Smith) [1686205] - [usb] USB: add usbfs ioctl to retrieve the connection parameters (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Fix Wunused-const-variable (Torez Smith) [1686205] - [usb] usb: chipidea: udc: workaround for endpoint conflict issue (Torez Smith) [1686205] - dt-bindings: usb: renesas_gen3: Rename bindings documentation file (Torez Smith) [1686205] - dt-bindings: usb: renesas_usbhs: Rename bindings documentation file (Torez Smith) [1686205] - [documentation] docs: power: convert docs to ReST and rename to *.rst (Torez Smith) [1686205] - [usb] docs: kbuild: convert docs to ReST and rename to *.rst (Torez Smith) [1686205] - [usb] usb: chipidea: msm: Use devm_platform_ioremap_resource() (Torez Smith) [1686205] - [usb] usb: chipidea: imx: Use devm_platform_ioremap_resource() (Torez Smith) [1686205] - [usb] usb: chipidea: Use dev_err() instead of pr_err() (Torez Smith) [1686205] - [usb] usb: chipidea: imx: "fsl, usbphy" phandle is not mandatory now (Torez Smith) [1686205] - [usb] usb: chipidea: imx: add imx7ulp support (Torez Smith) [1686205] - [usb] usb: typec: Make sure an alt mode exist before getting its partner (Torez Smith) [1686205] - [usb] Revert "usb: mtu3: fix up undefined reference to usb_debug_root" (Torez Smith) [1686205] - [usb] USB: sisusbvga: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: typec: tcpm: fusb302: simplify getting the adapter of a client (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add runtime pm workaround (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: enable runtime pm support (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: fix return value check in lpc32xx_udc_probe() (Torez Smith) [1686205] - [usb] usb: gadget: dwc2: fix zlp handling (Torez Smith) [1686205] - [usb] usb: dwc2: Set actual frame number for completed ISOC transfer for none DDMA (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: allocate descriptor with GFP_ATOMIC (Torez Smith) [1686205] - [usb] usb: gadget: fusb300_udc: Fix memory leak of fusb300->ep (Torez Smith) [1686205] - [usb] usb: phy: mxs: Disable external charger detect in mxs_phy_hw_init() (Torez Smith) [1686205] - [usb] usb: dwc2: Fix DMA cache alignment issues (Torez Smith) [1686205] - [usb] usb: dwc2: host: Fix wMaxPacketSize handling (fix webcam regression) (Torez Smith) [1686205] - [usb] USB: move usb debugfs directory creation to the usb common core (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: remove unneeded variable frame (Torez Smith) [1686205] - [usb] media: usb/gadget/f_uvc: set device_caps in struct video_device (Torez Smith) [1686205] - [usb] usbip: Replace unused kvec array with single variable in vhci_send_cmd_unlink() (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove controlling PWEN/EXTLP support (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove sudmac support (Torez Smith) [1686205] - [usb] usb: xhci: Add Clear_TT_Buffer (Torez Smith) [1686205] - [usb] usb: Add devaddr in struct usb_device (Torez Smith) [1686205] - [usb] USB: Fix chipmunk-like voice when using Logitech C270 for recording audio (Torez Smith) [1686205] - [usb] USB: usb-storage: Add new ID to ums-realtek (Torez Smith) [1686205] - [usb] USB: use genalloc for USB HCs with local memory (Torez Smith) [1686205] - [usb] usb: phy: mv-usb: Remove set but not used variable 'phy' (Torez Smith) [1686205] - [usb] usb: ftdi-elan: fix possible condition with no effect (if == else) (Torez Smith) [1686205] - [usb] USB: ohci-spear: Remove set but not used variable 'ohci' (Torez Smith) [1686205] - [usb] USB: atm: ueagle-atm.c: remove redundant license text (Torez Smith) [1686205] - [usb] USB: atm: ueagle-atm.c: fix SPDX tag to be BSD2 (Torez Smith) [1686205] - [usb] usb: ohci-s3c2410: Remove set but not used variable 'hcd' (Torez Smith) [1686205] - [usb] usb: cdc-wdm: remove redundant assignment to rv (Torez Smith) [1686205] - [usb] usb: host: ohci-st: Remove set but not used variable 'ohci' (Torez Smith) [1686205] - [usb] usb: host: ehci-st: Remove set but not used variable 'ehci' (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: fix memory leak in do_flash (Torez Smith) [1686205] - [include] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Torez Smith) [1686205] - [usb] usbip: usbip_host: fix stub_dev lock context imbalance regression (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Torez Smith) [1686205] - [usb] usb: avoid redundant allocation and free of memory (Torez Smith) [1686205] - [usb] signal/usb: Replace kill_pid_info_as_cred with kill_pid_usb_asyncio (Torez Smith) [1686205] - [usb] xhci: Use zu for printing size_t type (Torez Smith) [1686205] - [usb] xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic() (Torez Smith) [1686205] - [usb] xhci: Fix immediate data transfer if buffer is already DMA mapped (Torez Smith) [1686205] - [usb] usb: xhci: avoid null pointer deref when bos field is NULL (Torez Smith) [1686205] - [usb] usb: xhci: Fix a potential null pointer dereference in xhci_debugfs_create_endpoint() (Torez Smith) [1686205] - [usb] xhci: update bounce buffer with correct sg num (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit 0x1260 and 0x1261 compositions (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add Allied Telesis VT-Kit3 (Torez Smith) [1686205] - [usb] USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode (Torez Smith) [1686205] - [tools] treewide: Add SPDX license identifier - Makefile/Kconfig (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r7s9210 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add support for RZ/A2 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: support byte addressable CFIFO (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for CNEN bit (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move flags to param (Torez Smith) [1686205] - [usb] usb: core: hub: Disable hub-initiated U1/U2 (Torez Smith) [1686205] - [usb] usb: core: hub: Enable/disable U1/U2 in configured state (Torez Smith) [1686205] - [usb] USB: rio500: simplify locking (Torez Smith) [1686205] - [usb] USB: rio500: fix memory leak in close after disconnect (Torez Smith) [1686205] - [usb] USB: rio500: refuse more than one device at a time (Torez Smith) [1686205] - [usb] usbip: usbip_host: fix BUG: sleeping function called from invalid context (Torez Smith) [1686205] - [usb] USB: sisusbvga: fix oops in error path of sisusb_probe (Torez Smith) [1686205] - [usb] USB: Add LPM quirk for Surface Dock GigE adapter (Torez Smith) [1686205] - [usb] usb: mtu3: fix up undefined reference to usb_debug_root (Torez Smith) [1686205] - [usb] USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor (Torez Smith) [1686205] - [usb] usb: remove redundant 'default n' from Kconfig-s (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use specific struct instead of USBHS_TYPE_* enums (Torez Smith) [1686205] - [usb] USB: OHCI: remove space before open square bracket '[' (Torez Smith) [1686205] - [usb] usb: exynos: add workaround for the USB device bindings conflict (Torez Smith) [1686205] - [usb] usbip: usbip_host: cleanup do_rebind() return path (Torez Smith) [1686205] - [usb] USB: serial: f81232: clear overrun flag (Torez Smith) [1686205] - [usb] USB: serial: f81232: fix interrupt worker not stop (Torez Smith) [1686205] - [usb] usb: dwc3: Rename DWC3_DCTL_LPM_ERRATA (Torez Smith) [1686205] - [usb] usb: dwc3: Fix default lpm_nyet_threshold value (Torez Smith) [1686205] - [usb] usb: dwc3: debug: Print GET_STATUS(device) tracepoint (Torez Smith) [1686205] - [usb] usb: dwc3: Do core validation early on probe (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Set lpm_capable (Torez Smith) [1686205] - [usb] usb: gadget: atmel: tie wake lock to running clock (Torez Smith) [1686205] - [usb] usb: gadget: atmel: support USB suspend (Torez Smith) [1686205] - [usb] usb: gadget: atmel_usba_udc: simplify setting of interrupt-enabled mask (Torez Smith) [1686205] - [usb] dwc2: gadget: Fix completed transfer size calculation in DDMA (Torez Smith) [1686205] - [usb] usb: dwc2: Set lpm mode parameters depend on HW configuration (Torez Smith) [1686205] - [usb] usb: dwc2: Fix channel disable flow (Torez Smith) [1686205] - [usb] usb: dwc2: Set actual frame number for completed ISOC transfer (Torez Smith) [1686205] - [usb] usb: gadget: do not use __constant_cpu_to_le16 (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Increase descriptors count for ISOC's (Torez Smith) [1686205] - [usb] usb: dwc3: move synchronize_irq() out of the spinlock protected block (Torez Smith) [1686205] - [usb] usb: dwc3: Free resource immediately after use (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: Convert to bulk clk API (Torez Smith) [1686205] - [usb] usb: dwc2: Delayed status support (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: rework interrupt handling (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: add support for stotg04 phy (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: properly setup phy interrupts (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: simplify vbus handling (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: simplify probe (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Move gadget phy init into core phy init (Torez Smith) [1686205] - [usb] usb: dwc2: Move phy init into core (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Replace phyif with phy_utmi_width (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Remove duplicated phy init (Torez Smith) [1686205] - [usb] usb: dwc2: Move UTMI_PHY_DATA defines closer (Torez Smith) [1686205] - [usb] usb: dwc2: optionally assert phy reset when waking up (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: Document quirk to reset PHY upon wakeup (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: document the vbus-supply property (Torez Smith) [1686205] - [usb] USB: UDC: net22{80, 72}: remove mistaken test of req->zero (Torez Smith) [1686205] - [usb] USB: UDC: net2280: Remove redundant "if" condition (Torez Smith) [1686205] - [usb] usb: gadget: fsl: fix link error against usb-gadget module (Torez Smith) [1686205] - [usb] usb: gadget: f_ncm: Add OS descriptor support (Torez Smith) [1686205] - [usb] usb: gadget: f_ncm: Fix NTP-32 support (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Reject LPM token during Control transfers (Torez Smith) [1686205] - [usb] USB: Export usb_wakeup_enabled_descendants() (Torez Smith) [1686205] - [usb] usb: dwc2: bus suspend/resume for hosts with DWC2_POWER_DOWN_PARAM_NONE (Torez Smith) [1686205] - [usb] usb: dwc3: Add Amlogic G12A DWC3 glue (Torez Smith) [1686205] - [usb] usb: dwc2: Add Amlogic G12A DWC2 Params (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc3: Add Amlogic G12A DWC3 Glue Bindings (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: Add Amlogic G12A DWC2 Compatible (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: don't free buffer prematurely (Torez Smith) [1686205] - [usb] USB: serial: io_edgeport: fix up switch fall-through comments (Torez Smith) [1686205] - [usb] usb: usb251xb: Add US port lanes inversion property (Torez Smith) [1686205] - [usb] usb: usb251xb: Create a ports field collector method (Torez Smith) [1686205] - [documentation] usb: usb251xb: Add US lanes inversion dts-bindings (Torez Smith) [1686205] - [usb] usb: isp1760-hcd: Fix fall-through annotations (Torez Smith) [1686205] - [usb] usb: musb: dsps: Use dev_get_drvdata() (Torez Smith) [1686205] - [usb] usb: musb: jz4740: obtain USB PHY from devicetree (Torez Smith) [1686205] - [usb] usb: musb: jz4740: Let the platform probe the PHY (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Add usb-phy property to the jz4740-musb node (Torez Smith) [1686205] - [soc] soc: sunxi: Fix missing dependency on REGMAP_MMIO (Torez Smith) [1686205] - [usb] usb: musb: omap2430: Add support for idling phy when musb is idle (Torez Smith) [1686205] - [usb] usb: musb: Silence error about blacklisting hubs if !CONFIG_USB (Torez Smith) [1686205] - [usb] usbip: vhci_hcd: Mark expected switch fall-through (Torez Smith) [1686205] - [usb] UAS: fix alignment of scatter/gather segments (Torez Smith) [1686205] - [include] USB: serial: drop unused iflag macro (Torez Smith) [1686205] - [usb] USB: serial: drop unnecessary goto (Torez Smith) [1686205] - [usb] USB: serial: clean up throttle handling (Torez Smith) [1686205] - [usb] USB: serial: fix unthrottle races (Torez Smith) [1686205] - [usb] USB: cdc-acm: clean up throttle handling (Torez Smith) [1686205] - [usb] USB: cdc-acm: fix unthrottle races (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: fix missing unlock on error in ccg_cmd_write_flash_row() (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r8a77470 (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a774c0 support (Torez Smith) [1686205] - [usb] usb: xhci: add endpoint context tracing when an endpoint is added (Torez Smith) [1686205] - [usb] xhci: Add tracing for input control context (Torez Smith) [1686205] - [usb] xhci: add port and bus number to port dynamic debugging (Torez Smith) [1686205] - [usb] usb: xhci: add Immediate Data Transfer support (Torez Smith) [1686205] - [usb] usb: usb251xb: Add an empty hub' i2c-bus segment checker (Torez Smith) [1686205] - [usb] USB: serial: spcp8x5: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: oti6858: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop bogus initial cflag (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: clean up initial-termios handling (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: drop unused termios (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: drop unused driver data flag (Torez Smith) [1686205] - [usb] USB: serial: fix initial-termios handling (Torez Smith) [1686205] - [usb] USB: yurex: Fix protection fault after device removal (Torez Smith) [1686205] - [usb] usb: usbip: fix isoc packet num validation in get_pipe (Torez Smith) [1686205] - [usb] usb/hcd: Send a uevent signaling that the host controller had died (Torez Smith) [1686205] - [usb] usb: typec: Add driver for NVIDIA Alt Modes (Torez Smith) [1686205] - [usb] usb: typec: displayport: Export probe and remove functions (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Support for DisplayPort alt mode (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Preliminary support for alternate modes (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add firmware flashing support (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add get_fw_info function (Torez Smith) [1686205] - [usb] usb: usb251xb: Lock i2c-bus segment the hub resides (Torez Smith) [1686205] - [usb] usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON (Torez Smith) [1686205] - [usb] usbip: stub_rx: tidy the indenting in is_clear_halt_cmd() (Torez Smith) [1686205] - [usb] USB: serial: digi_acceleport: clean up set_termios (Torez Smith) [1686205] - [usb] USB: serial: digi_acceleport: clean up modem-control handling (Torez Smith) [1686205] - [usb] USB: core: Fix bug caused by duplicate interface PM usage counter (Torez Smith) [1686205] - [usb] usb: mtu3: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: chipidea: msm: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: dwc2: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: misc: usb3503: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: xhci-mtk: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Revert "Resolve fixed power role contract setup" (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Implement start_toggling for all port-types (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Notify the tcpc to start connection-detection for SRPs (Torez Smith) [1686205] - [usb] usb: host: use usb_endpoint_maxp instead of usb_maxpacket (Torez Smith) [1686205] - [usb] USB: dummy-hcd: Fix failure to give back unlinked URBs (Torez Smith) [1686205] - [usb] USB: core: Don't unbind interfaces following device reset failure (Torez Smith) [1686205] - [usb] usb-storage: Set virt_boundary_mask to avoid SG overflows (Torez Smith) [1686205] - [usb] USB: core: Fix unterminated string returned by usb_string() (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert the generic EHCI binding to YAML (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert the generic OHCI binding to YAML (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert USB HCD generic binding to YAML (Torez Smith) [1686205] - [usb] USB: hub: Remove returned value 'status' since never used (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Add Tegra186 XUSB support (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Selectively program IPFS (Torez Smith) [1686205] - [documentation] dt-bindings: usb: xhci-tegra: Add Tegra186 support (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: drop the vbus GPIO (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: disable the regulator if the overcurrent irq fired (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: let the regulator framework keep track of use count (Torez Smith) [1686205] - [usb] USB: serial: pl2303: fix tranceiver suspend mode (Torez Smith) [1686205] - [usb] USB: serial: pl2303: fix non-supported xon/xoff (Torez Smith) [1686205] - [usb] USB: serial: option: add Olicard 600 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add new device id (Torez Smith) [1686205] - [usb] usb: u132-hcd: fix resource leak (Torez Smith) [1686205] - [usb] usb: cdc-acm: fix race during wakeup blocking TX traffic (Torez Smith) [1686205] - [usb] usb: mtu3: fix EXTCON dependency (Torez Smith) [1686205] - [usb] usb: usb251xb: fix to avoid potential NULL pointer dereference (Torez Smith) [1686205] - [usb] usb: core: Try generic PHY_MODE_USB_HOST if usb_phy_roothub_set_mode fails (Torez Smith) [1686205] - [usb] usb: introduce usb_ep_type_string() function (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Make fusb302_irq_work static (Torez Smith) [1686205] - [usb] usb: u132-hcd: fix potential NULL pointer dereference (Torez Smith) [1686205] - [usb] usb: typec: wcove: Provide fwnode for the port (Torez Smith) [1686205] - [usb] usb: core: Add PM runtime calls to usb_hcd_platform_shutdown (Torez Smith) [1686205] - [usb] usb: sierra: fix a missing check of device_create_file (Torez Smith) [1686205] - [usb] usb: mtu3: add a function to switch mailbox state to string (Torez Smith) [1686205] - [usb] usb: mtu3: add tracepoints to help debug (Torez Smith) [1686205] - [usb] usb: mtu3: move vbus and mode debugfs interfaces into mtu3_debugfs.c (Torez Smith) [1686205] - [usb] usb: mtu3: add debugfs interface files (Torez Smith) [1686205] - [usb] usb: mtu3: supports new QMU format (Torez Smith) [1686205] - [usb] usb: mtu3: rebuild qmu_gpd struct to prepare to support new QMU format (Torez Smith) [1686205] - [usb] usb: mtu3: fix transfer error of USB3 Gen2 isoc (Torez Smith) [1686205] - [usb] usb: mtu3: rebuild the code of getting vbus regulator (Torez Smith) [1686205] - [usb] usb: mtu3: remove unnecessary local variable @req (Torez Smith) [1686205] - [usb] usb: mtu3: print useful information also for device and host modes (Torez Smith) [1686205] - [usb] usb: mtu3: check return value of devm_extcon_register_notifier() (Torez Smith) [1686205] - [usb] xhci: Don't let USB3 ports stuck in polling state prevent suspend (Torez Smith) [1686205] - [usb] usb: xhci: dbc: Don't free all memory with spinlock held (Torez Smith) [1686205] - [usb] xhci: Fix port resume done detection for SS ports with LPM enabled (Torez Smith) [1686205] - [usb] USB: serial: mos7720: fix mos_parport refcount imbalance on error path (Torez Smith) [1686205] - [usb] USB: gadget: f_hid: fix deadlock in f_hidg_write() (Torez Smith) [1686205] - [usb] usb: gadget: net2272: Fix net2272_dequeue() (Torez Smith) [1686205] - [usb] usb: gadget: net2280: Fix net2280_dequeue() (Torez Smith) [1686205] - [usb] usb: gadget: net2280: Fix overrun of OUT messages (Torez Smith) [1686205] - [usb] usb: dwc3: pci: add support for Comet Lake PCH ID (Torez Smith) [1686205] - [usb] usb: usb251xb: Remove unnecessary comparison of unsigned integer with >= 0 (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Add __printf attribute to fusb302_log function (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Improve suspend/resume handling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: 2 small misc. fixes (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Fix fusb302_handle_togdone_src Ra handling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Check vconn is off when we start toggling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Fold fusb302_set_cc_pull into tcpm_set_cc (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Refactor / simplify tcpm_set_cc() (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Make fusb302_set_cc_polarity also set pull ups / downs (Torez Smith) [1686205] - [usb] usb: typec: pi3usb30532: Keep orientation when setting mux to safe mode (Torez Smith) [1686205] - [usb] usb: typec: altmodes/displayport: Fall back to multi-func pins (Torez Smith) [1686205] - [usb] usbip: Remove unnecessary null check (Torez Smith) [1686205] - [include] USB: usb.h: tweak struct urb to remove wasted space (Torez Smith) [1686205] - [usb] usb: common: Consider only available nodes for dr_mode (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Add XHCI_TRUST_TX_LENGTH quirk (Torez Smith) [1686205] - [usb] usb: typec: Fix unchecked return value (Torez Smith) [1686205] - [usb] USB: serial: option: set driver_info for SIM5218 and compatibles (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add additional NovaTech products (Torez Smith) [1686205] - [usb] USB: serial: option: add support for Quectel EM12 (Torez Smith) [1686205] - [usb] wusb: Remove unnecessary static function ckhdid_printf (Torez Smith) [1686205] - [usb] usb: core: make default autosuspend delay configurable (Torez Smith) [1686205] - [usb] usb: core: Fix typo in description of "authorized_default" (Torez Smith) [1686205] - [usb] usb: chipidea: Refactor USB PHY selection and keep a single PHY (Torez Smith) [1686205] - [usb] usb: chipidea: Grab the (legacy) USB PHY by phandle first (Torez Smith) [1686205] - [usb] usb: chipidea: imx: set power polarity (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ci-hdrc-usb2: add property power-active-high (Torez Smith) [1686205] - [usb] usb: chipidea: imx: remove unused header files (Torez Smith) [1686205] - [usb] usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() (Torez Smith) [1686205] - [usb] usb: core: add option of only authorizing internal devices (Torez Smith) [1686205] - [usb] usb: typec: tps6598x: handle block writes separately with plain-I2C adapters (Torez Smith) [1686205] - [usb] usb: xhci: Fix for Enabling USB ROLE SWITCH QUIRK on INTEL_SUNRISEPOINT_LP_XHCI (Torez Smith) [1686205] - [usb] usb: xhci: fix build warning - missing prototype (Torez Smith) [1686205] - [usb] usb: xhci: dbc: Fixing typo error (Torez Smith) [1686205] - [usb] usb: xhci: remove unused member 'parent' in xhci_regset struct (Torez Smith) [1686205] - [usb] xhci: tegra: Prevent error pointer dereference (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit ME910 ECM composition (Torez Smith) [1686205] - [usb] usb: core: Replace hardcoded check with inline function from usb.h (Torez Smith) [1686205] - [usb] usb: core: skip interfaces disabled in devicetree (Torez Smith) [1686205] - [usb] usb: typec: mux: remove redundant check on variable match (Torez Smith) [1686205] - [usb] USB: serial: cp210x: fix GPIO in autosuspend (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Defer probe if extcon device is not found (Torez Smith) [1686205] - [usb] cdc-wdm: pass return value of recover_from_urb_loss (Torez Smith) [1686205] - [usb] usb: host: oxu210hp-hcd: remove set but not used variables 'uframes, transfer_buffer_length' (Torez Smith) [1686205] - [usb] USB: renesas_usbhs: fix spelling mistake "doens't" -> "doesn't" (Torez Smith) [1686205] - [usb] usb: wusbcore: wa-xfer: use struct_size() helper (Torez Smith) [1686205] - [usb] usb: core: config: Use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: dwc2: use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: typec: mux: Fix unsigned comparison with less than zero (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add ID for Hjelmslund Electronics USB485 (Torez Smith) [1686205] - [usb] usb: typec: mux: Find the muxes by also matching against the device node (Torez Smith) [1686205] - [usb] usb: typec: Find the ports by also matching against the device node (Torez Smith) [1686205] - [usb] usb: roles: Find the muxes by also matching against the device node (Torez Smith) [1686205] - [usb] usb: typec: Rationalize the API for the muxes (Torez Smith) [1686205] - [usb] usb: typec: tps6598x: Check mode of operation (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Remove unused functions (Torez Smith) [1686205] - [usb] USB: musb: mark expected switch fall-through (Torez Smith) [1686205] - [usb] usb: phy: twl6030-usb: fix possible use-after-free on remove (Torez Smith) [1686205] - [usb] usb: misc: usbtest: add super-speed isoc support (Torez Smith) [1686205] - [usb] usb: dwc3: Reset num_trbs after skipping (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: don't enable interrupt when disabling endpoint (Torez Smith) [1686205] - [usb] scsi: uas: Use scsi_et_resid() where appropriate (Torez Smith) [1686205] - [usb] usb: host: oxu210hp-hcd: fix indentation issue (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add vbus and overcurrent gpios (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add a helper pointer to &pdev->dev (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add a new line after local variables (Torez Smith) [1686205] - [usb] usb: musb: Kconfig: Drop dependency on CONFIG_USB for jz4740 (Torez Smith) [1686205] - [usb] usb: musb: Kconfig: Drop dependency on MACH_JZ4740 for jz4740 (Torez Smith) [1686205] - [usb] usb: musb: jz4740: Add support for devicetree (Torez Smith) [1686205] - [documentation] Documentation: dt: Add binding info for jz4740-musb driver (Torez Smith) [1686205] - [usb] USB: musb: fix indentation issue on a return statement (Torez Smith) [1686205] - [usb] fotg210-udc: pass struct device to DMA API functions (Torez Smith) [1686205] - [usb] fotg210-udc: remove a bogus dma_sync_single_for_device call (Torez Smith) [1686205] - [usb] usb: gadget: Change Andrzej Pietrasiewicz's e-mail address (Torez Smith) [1686205] - [usb] usb: f_fs: Avoid crash due to out-of-scope stack ptr access (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Remove debug.h file (Torez Smith) [1686205] - [usb] usb: typec: Prepare alt mode enter/exit reporting for UCSI alt mode support (Torez Smith) [1686205] - [usb] usb: typec: displayport: Move the Configuration VDO helpers to the header (Torez Smith) [1686205] - [usb] USB: Fix configuration selection issues introduced in v4.20.0 (Torez Smith) [1686205] - [usb] usb: handle warm-reset port requests on hub resume (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add ID for Ingenico 3070 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add minimum baud rate for CP2105 SCI (Torez Smith) [1686205] - [usb] usb: dwc3: haps: Workaround matching VID PID (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: preserve wMaxPacketSize across usb_ep_autoconfig() call (Torez Smith) [1686205] - [usb] usb: gadget: move non-super speed code out of usb_ep_autoconfig_ss() (Torez Smith) [1686205] - [usb] usb: gadget: function: sync f_uac1 ac header baInterfaceNr (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add scatter-gather mode (Torez Smith) [1686205] - [usb] usb: gadget: fix various indentation issues (Torez Smith) [1686205] - [usb] usb: dwc2: Fix EP TxFIFO number setting (Torez Smith) [1686205] - [usb] udc: net2280: Fix net2280_disable (Torez Smith) [1686205] - [usb] USB: gadget: Improve kerneldoc for usb_ep_dequeue() (Torez Smith) [1686205] - [usb] usb: dwc3: debug: purge usage of strcat (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add GPIO support for CP2104 (Torez Smith) [1686205] - [usb] usb: dwc3: trace: pass trace buffer size to decoding functions (Torez Smith) [1686205] - [usb] usb: core: Move variable initialization to appropriate place (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove DWC3_EP_END_TRANSFER_PENDING (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: early giveback if End Transfer already completed (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: don't use resource_index as a flag (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: clear DWC3_EP_TRANSFER_STARTED on cmd complete (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Correct the PPS out_volt calculation (Torez Smith) [1686205] - [usb] usb: gadget: musb: fix short isoc packets with inventra dma (Torez Smith) [1686205] - [usb] usbip: Fix vep_free_request() null pointer checks on input args (Torez Smith) [1686205] - [usb] usb: ehci-orion: add S2RAM support (Torez Smith) [1686205] - [usb] usb: ehci-orion: avoid double PHY initialization (Torez Smith) [1686205] - [usb] usb: host: xhci: mvebu: add reset on resume quirk (Torez Smith) [1686205] - [usb] usb: core: comply to PHY framework (Torez Smith) [1686205] - [usb] usb: phy: am335x: fix race condition in _probe (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Fix error handling of clk_prepare_enable (Torez Smith) [1686205] - [usb] usb: phy: fix link errors (Torez Smith) [1686205] - [usb] usb: gadget: udc: net2272: Fix bitwise and boolean operations (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Handle 0 xfer length for OUT EP (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove req->started flag (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: prevent dwc3_request from being queued twice (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: add dwc3_request status tracking (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add support for r8a774c0 (Torez Smith) [1686205] - [usb] usb: gadget: uvc: add uvcg_warn macro (Torez Smith) [1686205] - [usb] usb: gadget: u_serial: process RX in workqueue instead of tasklet (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add r8a774c0 support (Torez Smith) [1686205] - [documentation] usb: gadget: udc: renesas_usb3: Add bindings for r8a774c0 (Torez Smith) [1686205] - [usb] usb: gadget: aspeed: fix typo (Torez Smith) [1686205] - [usb] usb: dwc3: keystone: Add support for ti, am654-dwc3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: keystone-usb: Add ti, am654-dwc3 support (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Add support for MSM8998 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Add support for msm8998 (Torez Smith) [1686205] - [usb] usb: gadget: Remove dead branch code (Torez Smith) [1686205] - [usb] USB: serial: cp210x: support all gpios on CP2102N QFN28 package (Torez Smith) [1686205] - [usb] usb: ftdi-elan: Fix if == else warnings in ftdi_elan_respond_engine (Torez Smith) [1686205] - [usb] usb: typec: tpcm: improve error handling of tcpm_register_port (Torez Smith) [1686205] - [usb] usb: misc: usb3503: Add system sleep support in non-I2C mode (Torez Smith) [1686205] - [usb] usbip: Fix vhci_urb_enqueue() URB null transfer buffer error path (Torez Smith) [1686205] - [usb] usb: sisusb: remove useless macros and compact the code (Torez Smith) [1686205] - [usb] usb: sisusb: let files build only when needed (Torez Smith) [1686205] - [usb] usb: sisusb_con, cleanup configs (Torez Smith) [1686205] - [usb] usb: sisusb_con, convert addr macros to functions (Torez Smith) [1686205] - [usb] usb: ftdi-elan: remove a unnecessary variable 'empty_packets' (Torez Smith) [1686205] - [usb] usb: assign ACPI companions for embedded USB devices (Torez Smith) [1686205] - [usb] usb: split code locating ACPI companion into port and device (Torez Smith) [1686205] - [usb] USB: host: whci: rename Kbuild file (Torez Smith) [1686205] - [usb] USB: remove README file (Torez Smith) [1686205] - [usb] USB: add missing SPDX lines to Kconfig and Makefiles (Torez Smith) [1686205] - [usb] USB: storage: karma: add whitespace after declarations (Torez Smith) [1686205] - [usb] USB: serial: keyspan_usa: add proper SPDX lines for .h files (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: add MODULE_DEVICE_TABLE (Torez Smith) [1686205] - [usb] USB: Consolidate LPM checks to avoid enabling LPM twice (Torez Smith) [1686205] - [usb] USB: Add new USB LPM helpers (Torez Smith) [1686205] - [usb] drivers: usb :fsl: Remove USB Errata checking code (Torez Smith) [1686205] - [usb] usb: kconfig: remove dependency FSL_SOC for ehci fsl driver (Torez Smith) [1686205] - [usb] usb: ehci: fsl: Update register accessing for arm/arm64 platforms (Torez Smith) [1686205] - [usb] usb: usb251xb: add usb data lane port swap feature (Torez Smith) [1686205] - [documentation] dt-bindings: usb: usb251xb: add documentation for data lane swapping (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: replace udelay() with usleep_range() (Torez Smith) [1686205] - [usb] USB: host: ohci-at91: add sam9x60-sfr definition for ohci (Torez Smith) [1686205] - [usb] xhci: Use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: hub: add retry routine after intr URB submit error (Torez Smith) [1686205] - [usb] USB: leds: fix regression in usbport led trigger (Torez Smith) [1686205] - [usb] usb: chipidea: fix static checker warning for NULL pointer (Torez Smith) [1686205] - [usb] USB: usbip: delete README file (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add new PID to support PL2303TB (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Fix Remote Wakeup interrupt bit clearing (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: fix GPIO not working in autosuspend (Torez Smith) [1686205] - [usb] usb: gadget: Potential NULL dereference on allocation error (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Fix the uninitialized link_state when udc starts (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Clear req->needs_extra_trb flag on cleanup (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: synchronize_irq dwc irq in suspend (Torez Smith) [1686205] - [usb] USB: core: urb: Use struct_size() in kmalloc() (Torez Smith) [1686205] - [usb] cross-tree: phase out dma_zalloc_coherent() (Torez Smith) [1686205] - [usb] usb: gadget: udc: reduce indentation (Torez Smith) [1686205] - [usb] usb: devio: update max count of DPs per interval for ISOC (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: fix a couple of indentation issues (Torez Smith) [1686205] - [usb] usb: core: Simplify return value of usb_get_configuration() (Torez Smith) [1686205] - [usb] USB: Add USB_QUIRK_DELAY_CTRL_MSG quirk for Corsair K70 RGB (Torez Smith) [1686205] - [usb] usbcore: Select only first configuration for non-UAC3 compliant devices (Torez Smith) [1686205] - [usb] USB: storage: add quirk for SMI SM3350 (Torez Smith) [1686205] - [usb] USB: storage: don't insert sane sense for SPC3+ when bad sense specified (Torez Smith) [1686205] - [usb] usb: cdc-acm: send ZLP for Telit 3G Intel based modems (Torez Smith) [1686205] - [usb] USB: serial: simple: add Motorola Tetra TPG2200 device id (Torez Smith) [1686205] - [usb] USB: serial: option: add Fibocom NL678 series (Torez Smith) [1686205] - [usb] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader (Torez Smith) [1686205] - [usb] usb: r8a66597: Fix a possible concurrency use-after-free bug in r8a66597_endpoint_disable() (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Extend the matching rules on PPS APDO selection (Torez Smith) [1686205] - [documentation] usb: typec: Improve Alt Mode documentation (Torez Smith) [1686205] - [usb] usb: musb: dsps: fix runtime pm for peripheral mode (Torez Smith) [1686205] - [usb] usb: musb: dsps: fix otg state machine (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add ids for Hewlett-Packard HP POS pole displays (Torez Smith) [1686205] - [usb] PCI: Move Synopsys HAPS platform device IDs (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for RZ/G2E (Torez Smith) [1686205] - [usb] usb: ehci-omap: Fix deferred probe for phy handling (Torez Smith) [1686205] - [usb] usb: roles: Add a description for the class to Kconfig (Torez Smith) [1686205] - [usb] xhci: Don't prevent USB2 bus suspend in state check intended for USB3 only (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit LN940 series (Torez Smith) [1686205] - [usb] USB: serial: option: add Fibocom NL668 series (Torez Smith) [1686205] - [usb] USB: serial: option: add Simcom SIM7500/SIM7600 (MBIM mode) (Torez Smith) [1686205] - [usb] USB: serial: option: add GosunCn ZTE WeLink ME3630 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: mark PM functions as __maybe_unused (Torez Smith) [1686205] - [usb] usb: core: Remove unnecessary memset() (Torez Smith) [1686205] - [usb] usb: host: isp1362-hcd: convert to DEFINE_SHOW_ATTRIBUTE (Torez Smith) [1686205] - [usb] usb: dwc2: Fix disable all EP's on disconnect (Torez Smith) [1686205] - [usb] usb: chipidea: imx: allow to configure oc polarity on i.MX25 (Torez Smith) [1686205] - [usb] usb: chipidea: imx: Warn if oc polarity isn't specified (Torez Smith) [1686205] - [usb] usb: chipidea: imx: support configuring for active low oc signal (Torez Smith) [1686205] - [documentation] doc: usb: ci-hdrc-usb2: Add pinctrl properties for HSIC pin groups (Torez Smith) [1686205] - [usb] usb: chipidea: host: override ehci->hub_control (Torez Smith) [1686205] - [usb] usb: chipidea: imx: add HSIC support (Torez Smith) [1686205] - [usb] usb: chipidea: add flag for imx hsic implementation (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Disable CSP for stream OUT ep (Torez Smith) [1686205] - [usb] USB: serial: mos7840: remove set but not used variables 'number, serial' (Torez Smith) [1686205] - [usb] USB: serial: option: add HP lt4132 (Torez Smith) [1686205] - [usb] usb: dwc2: disable power_down on Amlogic devices (Torez Smith) [1686205] - [usb] xhci: move usb2 get port status link resume handling to its own function (Torez Smith) [1686205] - [usb] xhci: refactor U0 link state handling in get_port_status (Torez Smith) [1686205] - [usb] xhci: cleanup code that sets portstatus and portchange bits (Torez Smith) [1686205] - [usb] xhci: move usb2 speficic bits to own function in get_port_status call (Torez Smith) [1686205] - [usb] xhci: move usb3 speficic bits to own function in get_port_status call (Torez Smith) [1686205] - [usb] xhci: remove unused hcd_index() (Torez Smith) [1686205] - [usb] xhci: move bus_state structure under the xhci_hub structure (Torez Smith) [1686205] - [usb] xhci: remove the unused sw_lpm_support (Torez Smith) [1686205] - [usb] Revert "usb: dwc3: pci: Use devm functions to get the phy GPIOs" (Torez Smith) [1686205] - [usb] USB: gadget: udc: s3c2410_udc: convert to DEFINE_SHOW_ATTRIBUTE (Torez Smith) [1686205] - [usb] usb: mtu3: fix dbginfo in qmu_tx_zlp_error_handler (Torez Smith) [1686205] - [usb] usb: dwc3: trace: add missing break statement to make compiler happy (Torez Smith) [1686205] - [usb] xhci: Prevent U1/U2 link pm states if exit latency is too long (Torez Smith) [1686205] - [usb] xhci: workaround CSS timeout on AMD SNPS 3.0 xHC (Torez Smith) [1686205] - [tty] USB: serial: console: fix reported terminal settings (Torez Smith) [1686205] - [usb] usb: appledisplay: Remove unnecessary spinlock (Torez Smith) [1686205] - [usb] usb: appledisplay: Set urb transfer_flags to URB_NO_TRANSFER_DMA_MAP (Torez Smith) [1686205] - [usb] usb: quirk: add no-LPM quirk on SanDisk Ultra Flair device (Torez Smith) [1686205] - [usb] USB: Fix invalid-free bug in port_over_current_notify() (Torez Smith) [1686205] - [usb] usb: appledisplay: Add 27" Apple Cinema Display (Torez Smith) [1686205] - [platform] staging: typec: fusb302: Rename fcs, extcon-name to linux, extcon-name (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Report isoc transfer frame number (Torez Smith) [1686205] - [include] usb: gadget: Introduce frame_number to usb_request (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use SIMPLE_DEV_PM_OPS macro (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Remove dummy runtime PM callbacks (Torez Smith) [1686205] - [usb] usb: dwc2: host: use hrtimer for NAK retries (Torez Smith) [1686205] - [usb] usb: hub: delay hub autosuspend if USB3 port is still link training (Torez Smith) [1686205] - [usb] usb: mtu3: clear SOFTCONN when clear USB3_EN if work as HS mode (Torez Smith) [1686205] - [usb] usb: mtu3: enable SETUPENDISR interrupt (Torez Smith) [1686205] - [usb] usb: mtu3: fix the issue about SetFeature(U1/U2_Enable) (Torez Smith) [1686205] - [usb] usb: mtu3: enable hardware remote wakeup from L1 automatically (Torez Smith) [1686205] - [usb] usb: mtu3: remove QMU checksum (Torez Smith) [1686205] - [usb] usb/mtu3: power down device ip at setup (Torez Smith) [1686205] - [usb] usb: dwc2: Disable power down feature on Samsung SoCs (Torez Smith) [1686205] - [usb] usb: dwc3: Correct the logic for checking TRB full in __dwc3_prepare_one_trb() (Torez Smith) [1686205] - [usb] usb: dwc3: don't issue no-op trb for stream capable endpoints (Torez Smith) [1686205] - [usb] usb: dwc3: update stream id in depcmd (Torez Smith) [1686205] - [usb] USB: serial: mos7840: add a product ID for the new product (Torez Smith) [1686205] - [usb] USB: serial: mos7840: clean up register handling (Torez Smith) [1686205] - [usb] usb: gadget: u_ether: fix unsafe list iteration (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: check if dep->frame_number is still valid (Torez Smith) [1686205] - [usb] USB: omap_udc: fix rejection of out transfers when DMA is used (Torez Smith) [1686205] - [usb] USB: omap_udc: fix USB gadget functionality on Palm Tungsten E (Torez Smith) [1686205] - [usb] USB: omap_udc: fix omap_udc_start() on 15xx machines (Torez Smith) [1686205] - [usb] USB: omap_udc: fix crashes on probe error and module removal (Torez Smith) [1686205] - [usb] USB: omap_udc: use devm_request_irq() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove unnecessary dev_info() (Torez Smith) [1686205] - [usb] usb: dwc3: trace: log ep commands in hex (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: return errors from __dwc3_gadget_start_isoc() (Torez Smith) [1686205] - [usb] usb: core: quirks: add RESET_RESUME quirk for Cherry G230 Stream series (Torez Smith) [1686205] - [usb] USB: usb-storage: Add new IDs to ums-realtek (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove wait_end_transfer (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: move requests to cancelled_list (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: introduce cancelled_list (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: extract dwc3_gadget_ep_skip_trbs() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: use num_trbs when skipping TRBs on ->dequeue() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: track number of TRBs per request (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: combine unaligned and zero flags (Torez Smith) [1686205] - [usb] usb: dwc3: Add workaround for isoc start transfer failure (Torez Smith) [1686205] - [documentation] usb: dwc3: Add disabling of start_transfer failure quirk (Torez Smith) [1686205] - [usb] usb: dwc3: Track DWC_usb31 VERSIONTYPE (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: Allow scatter-gather buffers (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: Add support for CCID descriptors (Torez Smith) [1686205] - [usb] usb: gadget: uvc: constify vb2_ops structure (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Accept LPM token when TxFIFO is not empty (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Fix WkupAlert interrupt handler (Torez Smith) [1686205] - [usb] usb: dwc3: Set default mode for DWC_usb3 v3.30a and higher (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add a safety connection way for forced_b_device (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Add support for DR detection through extcon (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Switch to device property for 'extcon' handling (Torez Smith) [1686205] - [usb] usb: dwc3: don't log probe deferrals; but do log other error codes (Torez Smith) [1686205] - [usb] usb: gadget: aspeed-vhub: constify usb_gadget_ops structure (Torez Smith) [1686205] - [usb] usb: dwc3: Support option to disable USB2 LPM (Torez Smith) [1686205] - [documentation] usb: dwc3: Add a property to disable USB2 LPM (Torez Smith) [1686205] - [usb] usb: dwc3: Set GUSB2PHYCFG.ENBLSLPM (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Print/set link state for peripheral mode (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Properly print/set link state for HS (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Dump internal LSP and ep registers (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Print eps Tx/RxFIFO in bytes (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Properly name Tx/RxFIFO (Torez Smith) [1686205] - [usb] Revert "usb: dwc3: gadget: skip Set/Clear Halt when invalid" (Torez Smith) [1686205] - [usb] drivers: usb: early: clean up indentation, remove extraneous tabs (Torez Smith) [1686205] - [usb] USB: ene_usb6250: add missing indentation (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: use rounding when calculating baud rate divisors (Torez Smith) [1686205] - [usb] USB: serial: f81534: fix reading old/new IC config (Torez Smith) [1686205] - [usb] usb: cdc-acm: add entry for Hiro (Conexant) modem (Torez Smith) [1686205] - [usb] usb: xhci: Prevent bus suspend if a port connect change or polling state is detected (Torez Smith) [1686205] - [usb] usb: core: Fix hub port connection events lost (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: fix ISOC TRB type on unaligned transfers (Torez Smith) [1686205] - [usb] Revert "usb: gadget: ffs: Fix BUG when userland exits with submitted AIO transfers" (Torez Smith) [1686205] - [usb] usb: dwc2: pci: Fix an error code in probe (Torez Smith) [1686205] - [usb] usb: dwc3: Fix NULL pointer exception in dwc3_pci_remove() (Torez Smith) [1686205] - [usb] USB: serial: mos7840: remove set but not used variables 'st, data1, iflag' (Torez Smith) [1686205] - [usb] USB: serial: quatech2: remove set but not used variable 'port_priv' (Torez Smith) [1686205] - [include] USB: remove the unused struct hcd_timeout definition (Torez Smith) [1686205] - [usb] usb: typec: ucsi: add support for Cypress CCGx (Torez Smith) [1686205] - [usb] usb: xhci: fix timeout for transition from RExit to U0 (Torez Smith) [1686205] - [usb] usb: xhci: fix uninitialized completion when USB3 port got wrong status (Torez Smith) [1686205] - [usb] xhci: Add check for invalid byte size error when UAS devices are connected (Torez Smith) [1686205] - [usb] xhci: handle port status events for removed USB3 hcd (Torez Smith) [1686205] - [usb] xhci: Fix leaking USB3 shared_hcd at xhci removal (Torez Smith) [1686205] - [documentation] dt-bindings: usb: xhci-tegra: Add power-domain details (Torez Smith) [1686205] - [usb] USB: misc: appledisplay: add 20" Apple Cinema Display (Torez Smith) [1686205] - [usb] USB: quirks: Add no-lpm quirk for Raydium touchscreens (Torez Smith) [1686205] - [usb] usb: quirks: Add delay-init quirk for Corsair K70 LUX RGB (Torez Smith) [1686205] - [usb] USB: Wait for extra delay time after USB_PORT_FEAT_RESET for quirky hub (Torez Smith) [1686205] - [usb] USB: gadget: udc: fix spelling mistake "intrerrupt" -> "interrupt" (Torez Smith) [1686205] - [usb] usb: host: remove unnecessary condition check (Torez Smith) [1686205] - [usb] usb: typec: tcpm: charge current handling for sink during hard reset (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Do not disconnect link for self powered devices (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Properly check last unaligned/zero chain TRB (Torez Smith) [1686205] - [usb] usb: dwc3: core: Clean up ULPI device (Torez Smith) [1686205] - [usb] usb: phy: ab8500: silence some uninitialized variable warnings (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Add genpd support (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Power-off power-domains on removal (Torez Smith) [1686205] - [usb] usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten (Torez Smith) [1686205] - [tools] usbip: tools: fix atoi() on non-null terminated string (Torez Smith) [1686205] - [usb] USB: misc: appledisplay: fix backlight update_status return code (Torez Smith) [1686205] - [usb] USB: fix the usbfs flag sanitization for control transfers (Torez Smith) [1686205] - [documentation] usb: host: add DT bindings for faraday fotg2 (Torez Smith) [1686205] - [usb] usb: host: ohci-at91: fix request of irq for optional gpio (Torez Smith) [1686205] - [usb] usb: xhci: pci: Enable Intel USB role mux on Apollo Lake platforms (Torez Smith) [1686205] - [usb] usb: roles: intel_xhci: Fix Unbalanced pm_runtime_enable (Torez Smith) [1686205] - [usb] cdc-acm: correct counting of UART states in serial state notification (Torez Smith) [1686205] - [usb] cdc-acm: do not reset notification buffer index upon urb unlinking (Torez Smith) [1686205] - [usb] cdc-acm: fix race between reset and control messaging (Torez Smith) [1686205] - [usb] usb: usbip: Fix BUG: KASAN: slab-out-of-bounds in vhci_hub_control() (Torez Smith) [1686205] - [usb] usb/early: remove set but not used variable 'remain_length' (Torez Smith) [1686205] - [usb] usb: typec: Fix copy/paste on typec_set_vconn_role() kerneldoc (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Report back negotiated PPS voltage and current (Torez Smith) [1686205] - [usb] USB: core: remove set but not used variable 'udev' (Torez Smith) [1686205] - [usb] usb: core: fix memory leak on port_dev_path allocation (Torez Smith) [1686205] - [usb] USB: net2280: Remove ->disconnect() callback from net2280_pullup() (Torez Smith) [1686205] - [usb] usb: dwc2: disable power_down on rockchip devices (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add support for r8a77990 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usb3: add bindings for r8a77990 (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: remove set but not used variable 'iflag' (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: fix interrupt-out transfer length (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add support for FT232R CBUS gpios (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: fix gpio name collisions (Torez Smith) [1686205] - [netdrv] net: usbnet: make driver_info const (Torez Smith) [1686205] - [usb] usb: typec: remove set but not used variables 'snk_ma, min_mv' (Torez Smith) [1686205] - [usb] usb: export firmware port location in sysfs (Torez Smith) [1686205] - [usb] usb: hub: try old enumeration scheme first for high speed devices (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Document r8a7744 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r8a7744 (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage (Torez Smith) [1686205] - [tools] usbip: fix vhci_hcd controller counting (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Fix b-device mode for "workaround" (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add handler for WkupAlert interrupt (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: enable WKUP_ALERT interrupt (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Program GREFCLK register (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add parameters for GREFCLK register (Torez Smith) [1686205] - [usb] usb: dwc2: Add definitions for new registers (Torez Smith) [1686205] - [usb] usb: dwc2: Update target (u)frame calculation (Torez Smith) [1686205] - [usb] usb: dwc2: Add dwc2_gadget_dec_frame_num_by_one() function (Torez Smith) [1686205] - [usb] usb: dwc2: Add core parameter for service interval support (Torez Smith) [1686205] - [usb] usb: dwc2: Update registers definitions to support service interval (Torez Smith) [1686205] - [usb] usb: gadget: f_uac2: disable IN/OUT ep if unused (Torez Smith) [1686205] - [usb] USB: gadget core: Issue ->disconnect() callback from usb_gadget_disconnect() (Torez Smith) [1686205] - [usb] usb: dwc3: Fix spelling of 'optimizations' (Torez Smith) [1686205] - [usb] usb: gadget: atmel: remove pointless retrieval of DT name property (Torez Smith) [1686205] - [usb] usb: gadget: fsl_udc_core: fixup struct_udc_setup documentation (Torez Smith) [1686205] - [usb] usb: gadget: fsl_udc_core: check allocation return value and cleanup on failure (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Check ENBLSLPM before sending ep command (Torez Smith) [1686205] - [usb] usb: dwc2: fix unbalanced use of external vbus-supply (Torez Smith) [1686205] - [usb] usb: dwc2: fix call to vbus supply exit routine, call it unlocked (Torez Smith) [1686205] - [usb] usb: dwc2: fix a race with external vbus supply (Torez Smith) [1686205] - [usb] usb: dwc2: get optional vbus-supply regulator once (Torez Smith) [1686205] - [usb] usb: dwc3: add EXTCON dependency for qcom (Torez Smith) [1686205] - [usb] usb: gadget: udc: atmel: handle at91sam9rl PMC (Torez Smith) [1686205] - [usb] usb: gadget: udc: fotg210-udc: Fix a sleep-in-atomic-context bug in fotg210_get_status() (Torez Smith) [1686205] - [usb] usb: dwc2: Disable all EP's on disconnect (Torez Smith) [1686205] - [documentation] usb: dwc3: exynos: Add support for Exynos5433 variant with all clocks (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Rework clock handling and prepare for new variants (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Remove dead code (Torez Smith) [1686205] - [usb] usb: gadget: udc: Remove unnecessary parentheses (Torez Smith) [1686205] - [usb] usb: dwc2: remove set but unused variable (Torez Smith) [1686205] - [usb] usb: gadget: fix spelling mistakeis "queing" -> "queuing" (Torez Smith) [1686205] - [usb] usb: xhci-mtk: resume USB3 roothub first (Torez Smith) [1686205] - [usb] xhci: Add missing CAS workaround for Intel Sunrise Point xHCI (Torez Smith) [1686205] - [usb] usb: cdc_acm: Do not leak URB buffers (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_abort_bulk_in_tag (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_clear (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_read (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix memory leak in usbtmc_ioctl_request (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for R-Car E3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: add bindings for r8a77990 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: rcar3: Use OTG mode for R-Car D3 (Torez Smith) [1686205] - [usb] Revert "usb: renesas_usbhs: set the mode by using extcon state for non-otg channel" (Torez Smith) [1686205] - [usb] Revert "usb: renesas_usbhs: add extcon notifier to set mode for non-otg channel" (Torez Smith) [1686205] - [usb] usb: core: added uevent for over-current (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Resolve fixed power role contract setup (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Correct spelling mistake for toggling state (Torez Smith) [1686205] - [usb] xhci: Avoid USB autosuspend when resuming USB2 ports (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Firmware header is little endian (Torez Smith) [1686205] - [usb] xhci: Use soft retry to recover faster from transaction errors (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: add platform TPL support (Torez Smith) [1686205] - [usb] usb: xhci-mtk: supports SSP without external USB3 gen2 hub (Torez Smith) [1686205] - [usb] usb: xhci-mtk: supports bandwidth scheduling with multi-TT (Torez Smith) [1686205] - [usb] usb: xhci-mtk: improve bandwidth scheduling (Torez Smith) [1686205] - [usb] usb: xhci-mtk: fix ISOC error when interval is zero (Torez Smith) [1686205] - [usb] usb: xhci-mtk: use maximum ESIT payload of endpiont context (Torez Smith) [1686205] - [usb] usb: host: Replace empty define with do while (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: implement GPIO support for FT-X devices (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Use u to print unsigned int values (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Simplify attributes macros (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Fix operation on big endian platforms (Torez Smith) [1686205] - [uapi] usb: video: Fix endianness mismatches in descriptor structures (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Remove uvc_set_trace_param() function (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Replace plain printk() with dev_*() (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Only halt video streaming endpoint in bulk mode (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Factor out video USB request queueing (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Sort frame intervals upon writing (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Prevent format changes after linking header (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add bFrameIndex attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add bFormatIndex attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add interface number attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Allocate groups dynamically (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Drop leaked references to config items (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: add description for px30 (Torez Smith) [1686205] - [usb] USB: serial: simple: add Motorola Tetra MTP6550 id (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: fix spelling mistake "retreiving" -> "retrieving" (Torez Smith) [1686205] - [usb] USB: STORAGE: ISD200 Fixed coding style issue "space required in for loop" (Torez Smith) [1686205] - [usb] usb: typec: Group all TCPCI/TCPM code together (Torez Smith) [1686205] - [usb] usb: typec: fusb302: reorganizing the probe function a little (Torez Smith) [1686205] - [usb] usb: typec: class: Don't use port parent for getting mux handles (Torez Smith) [1686205] - [usb] usb: typec: mux: Take care of driver module reference counting (Torez Smith) [1686205] - [usb] usb: core: safely deal with the dynamic quirk lists (Torez Smith) [1686205] - [usb] usb: roles: Take care of driver module reference counting (Torez Smith) [1686205] - [usb] usb: phy: mxs: fix spelling mistake "stardard" -> "standard" (Torez Smith) [1686205] - [usb] usb: host: fotg2: Fix potential NULL dereference (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add multiple clocks management (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: add clock-names property (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add reset_control (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ohci: Add clocks description for R-Car Gen3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ehci: Add clocks description for R-Car Gen3 (Torez Smith) [1686205] - [usb] usbcore: Select UAC3 configuration for audio if present (Torez Smith) [1686205] - [documentation] usb: gadget: udc: renesas_usb3: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: ehci-mv: add bindings (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: add DT support (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: use phy-pxa-usb (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: remove private_init (Torez Smith) [1686205] - [usb] USB: EHCI: make ehci-mv a separate driver (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove sysfs group TermChar and auto_abort (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix split quoted string in debug message (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove redundant macro USBTMC_SIZE_IOBUFFER (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove redundant code (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_API_VERSION (Torez Smith) [1686205] - [usb] usb: usbtmc: Replace USBTMC_TIMEOUT macros for control messages (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_OUT (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_IN (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_CLEAR (Torez Smith) [1686205] - [usb] usb: usbtmc: Optimize usbtmc_read (Torez Smith) [1686205] - [usb] usb: usbtmc: Optimize usbtmc_write (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_AUTO_ABORT (Torez Smith) [1686205] - [usb] usb: usbtmc: add ioctl USBTMC_IOCTL_MSG_IN_ATTR (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC488_IOCTL_WAIT_SRQ (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix suspend/resume (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_CLEANUP_IO (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_CANCEL_IO (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for vendor specific read (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_WRITE_RESULT (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for vendor specific write (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for generic requests on control (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Populate tcpc fwnode for TCPM property handling (Torez Smith) [1686205] - [documentation] dt-bindings: usb: fusb302: Use usb-connector bindings for configuration (Torez Smith) [1686205] - [documentation] dt-bindings: connector: Add support for USB-PD PPS APDOs to bindings (Torez Smith) [1686205] - [usb] USB: handle NULL config in usb_find_alt_setting() (Torez Smith) [1686205] - [usb] USB: fix error handling in usb_driver_claim_interface() (Torez Smith) [1686205] - [usb] USB: remove LPM management from usb_driver_claim_interface() (Torez Smith) [1686205] - [usb] USB: usbdevfs: restore warning for nonsensical flags (Torez Smith) [1686205] - [usb] USB: usbdevfs: sanitize flags more (Torez Smith) [1686205] - [usb] Revert "usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt()" (Torez Smith) [1686205] - [usb] usb: musb: dsps: do not disable CPPI41 irq in driver teardown (Torez Smith) [1686205] - [usb] usb: chipidea: Fix otg event handler (Torez Smith) [1686205] - [usb] usb: chipidea: Prevent unbalanced IRQ disable (Torez Smith) [1686205] - [documentation] doc: usb: ci-hdrc-usb2: Add pinctrl properties definition (Torez Smith) [1686205] - [usb] usb: chipidea: Add dynamic pinctrl selection (Torez Smith) [1686205] - [usb] usb: chipidea: imx: make MODULE_LICENCE and SPDX-identifier match (Torez Smith) [1686205] - [usb] usb: chipidea: imx: enable OTG overcurrent in case USB subsystem is already started (Torez Smith) [1686205] - [usb] usb: chipidea: imx: do not use preprocessor conditionals for PM (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add section header comments (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Don't wrap groups unnecessarily (Torez Smith) [1686205] - [usb] mos7720: bury dead TIOCM... in ->ioctl() (Torez Smith) [1686205] - [usb] USB: serial: option: add two-endpoints device-id flag (Torez Smith) [1686205] - [usb] USB: serial: option: improve Quectel EP06 detection (Torez Smith) [1686205] - [usb] Revert "cdc-acm: implement put_char() and flush_chars()" (Torez Smith) [1686205] - [usb] usb: Change usb_of_get_companion_dev() place to usb/common (Torez Smith) [1686205] - [usb] usb: xhci: fix interrupt transfer error happened on MTK platforms (Torez Smith) [1686205] - [usb] usb: core: phy: clean up return value check about devm_of_phy_get_by_index() (Torez Smith) [1686205] - [usb] usb: mtu3: disable vbus rise/fall interrupts of ltssm (Torez Smith) [1686205] - [usb] USB: wusbcore: Switch to bitmap_zalloc() (Torez Smith) [1686205] - [usb] usb: misc: fix obsolete function (Torez Smith) [1686205] - [usb] usb: iowarrior: replace kmalloc with kmalloc_array (Torez Smith) [1686205] - [usb] USB: OHCI: Remove USB bus reset delay from OHCI handover code (Torez Smith) [1686205] - [usb] usb: host: fotg2: add silicon clock handling (Torez Smith) [1686205] - [usb] USB: typec: fsusb302: remove unused variables snk_pdo and toggling_mode_name (Torez Smith) [1686205] - [usb] usb storage: remove inherited SCSI dependency for USB_STORAGE_ENE_UB6250 (Torez Smith) [1686205] - [usb] usb storage: group dependent USB storage Kconfig entries together (Torez Smith) [1686205] - [usb] USB: Removing NULL check for pool since dma_pool_destroy is safe (Torez Smith) [1686205] - [usb] usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt() (Torez Smith) [1686205] - [usb] usb: misc: uss720: Fix two sleep-in-atomic-context bugs (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame() (Torez Smith) [1686205] - [usb] usb: Avoid use-after-free by flushing endpoints early in usb_set_interface() (Torez Smith) [1686205] - [usb] usb/typec: fix kernel-doc notation warning for typec_match_altmode (Torez Smith) [1686205] - [usb] usb: Don't die twice if PCI xhci host is not responding in resume (Torez Smith) [1686205] - [usb] usb: mtu3: fix error of xhci port id when enable U3 dual role (Torez Smith) [1686205] - [usb] usb: uas: add support for more quirk flags (Torez Smith) [1686205] - [usb] USB: Add quirk to support DJI CineSSD (Torez Smith) [1686205] - [usb] usb: typec: fix kernel-doc parameter warning (Torez Smith) [1686205] - [usb] usb/dwc3/gadget: fix kernel-doc parameter warning (Torez Smith) [1686205] - [usb] USB: yurex: Check for truncation in yurex_read() (Torez Smith) [1686205] - [usb] USB: yurex: Fix buffer over-read in yurex_write() (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: Iterate over parent nodes for finding quirks (Torez Smith) [1686205] - [usb] xhci: Fix use after free for URB cancellation on a reallocated endpoint (Torez Smith) [1686205] - [usb] USB: add quirk for WORLDE Controller KS49 or Prodipe MIDI 49C USB controller (Torez Smith) [1686205] - [usb] usb: dwc2: Fix call location of dwc2_check_core_endianness (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Fix return value check in dwc3_byt_enable_ulpi_refclock() (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: fix maxpacket size of ep0 (Torez Smith) [1686205] - [usb] usb: gadget: fotg210-udc: Fix memory leak of fotg210->ep (Torez Smith) [1686205] - [usb] USB: net2280: Fix erroneous synchronization change (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: avoid unused function warnings (Torez Smith) [1686205] - [usb] USB: serial: ti_usb_3410_5052: fix array underflow in completion handler (Torez Smith) [1686205] - [usb] USB: serial: io_ti: fix array underflow in completion handler (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add a new device id for ATEN (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Kconfig: convert to SPDX identifiers (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Check MaxPacketSize from descriptor (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "stm32f4x9_fsotg" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "amlogic" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "his" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "bcm" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: ISOC's starting flow improvement (Torez Smith) [1686205] - [usb] usb: dwc2: Make dwc2_readl/writel functions endianness-agnostic (Torez Smith) [1686205] - [usb] usb: dwc3: core: Enable AutoRetry feature in the controller (Torez Smith) [1686205] - [usb] usb: dwc3: Set default mode for dwc_usb31 (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Add register of usb role switch (Torez Smith) [1686205] - [usb] usb: dwc2: replace ioread32/iowrite32_rep with dwc2_readl/writel_rep (Torez Smith) [1686205] - [usb] usb: dwc2: Modify dwc2_readl/writel functions prototype (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Intel Merrifield can be host (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Supply device properties via driver data (Torez Smith) [1686205] - [documentation] arm64: dts: dwc3: description of incr burst type (Torez Smith) [1686205] - [usb] usb: dwc3: Enable undefined length INCR burst type (Torez Smith) [1686205] - [usb] usb: dwc3: add global soc bus configuration reg0 (Torez Smith) [1686205] - [usb] usb: dwc3: Describe 'wakeup_work' field of struct dwc3_pci (Torez Smith) [1686205] - [usb] USB: option: add support for DW5821e (Torez Smith) [1686205] - [usb] usb: dwc3: change stream event enable bit back to 13 (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: reset host controller at suspend/resume (Torez Smith) [1686205] - [usb] usb: gadget: storage: Remove reference counting (Torez Smith) [1686205] - [usb] usb: gadget: storage: Add error handling for no memory (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Use devm functions to get the phy GPIOs (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Enable ULPI Refclk on platforms where the firmware does not (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Add GPIO lookup table on platforms without ACPI GPIO resources (Torez Smith) [1686205] - [usb] USB: gadget: Document that certain ep operations can be called in interrupt context (Torez Smith) [1686205] - [usb] usb: gadget: configfs: avoid spaces for indentation (Torez Smith) [1686205] - [usb] usb: dwc3: Add a glue driver for Synopsys HAPS platform (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Expose configuration name through video node (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Move function to avoid forward declaration (Torez Smith) [1686205] - [usb] usb: dwc2: Move dwc2_readl/writel functions after hsotg structure (Torez Smith) [1686205] - [usb] usb: gadget: tcm: fix spelling mistake: "Manufactor" -> "Manufacturer" (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Move trace parameter to function module (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Minimize #include in headers (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Move userspace API definition to public header (Torez Smith) [1686205] - [usb] usb: host: exynos: Remove support for Exynos5440 (Torez Smith) [1686205] - [usb] usb: usbtmc: Add support for 32 bit compat applications (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for termination character (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for EOM bit (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for trigger (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctls to set/get usb timeout (Torez Smith) [1686205] - [usb] usb: usbtmc: use consistent timeout error (Torez Smith) [1686205] - [usb] usb: usbtmc: Support Read Status Byte with SRQ per file (Torez Smith) [1686205] - [usb] USB: serial: cp210x: implement GPIO support for CP2102N (Torez Smith) [1686205] - [usb] USB: serial: cp210x: improve line-speed handling for CP2104 and CP2105 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: generalise CP2102N line-speed handling (Torez Smith) [1686205] - [usb] USB: serial: cp210x: improve baudrate support for CP2102N (Torez Smith) [1686205] - [usb] USB: serial: cp210x: honour device-type maximum line speed (Torez Smith) [1686205] - [usb] USB: serial: cp210x: make line-speed quantisation data driven (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop redundant input-speed re-encoding (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop unused driver-data baud rate (Torez Smith) [1686205] - [usb] USB: serial: mos7720: remove redundant variables iflag, mask and serial (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a77990 support (Torez Smith) [1686205] - [usb] usb: host: ehci-sched: remove redundant pointer dev (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: remove redundant variable num_ports (Torez Smith) [1686205] - [usb] USB: host: whci: remove redundant variable t (Torez Smith) [1686205] - [usb] usb: xhci: dbc: remove redundant pointer dbc (Torez Smith) [1686205] - [usb] usb: isp1760: remove redundant variable 'selector' (Torez Smith) [1686205] - [usb] usb-misc: sisusbvga: remove redundant variable modey (Torez Smith) [1686205] - [usb] usb: misc: uss720: remove redundant pointer usbdev (Torez Smith) [1686205] - [usb] usb: usbip: remove redundant pointer ep (Torez Smith) [1686205] - [usb] USB: serial: kl5kusb105: remove KLSI device id (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Add a condition check about PLL active (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Simplify getting the firmware name for R-Car Gen3 (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: add firmware_name for R-Car Gen3 (Torez Smith) [1686205] - [usb] usb: typec: avoid format-overflow warning (Torez Smith) [1686205] - [usb] usb: typec: unlock dp->lock on error exit path, and also zero ret if successful (Torez Smith) [1686205] - [usb] usb: typec: fix dereference before null check on adev (Torez Smith) [1686205] - [usb] usb: usbtest: use irqsave() in USB's complete callback (Torez Smith) [1686205] - [usb] USB: serial: kobil_sct: add missing version error handling (Torez Smith) [1686205] - [usb] USB: serial: kobil_sct: fix modem-status error handling (Torez Smith) [1686205] - [usb] usb: simplify usbport trigger (Torez Smith) [1686205] - [include] device connection: Add fwnode member to struct device_connection (Torez Smith) [1686205]- [security] KEYS: reaching the keys quotas correctly (Vladis Dronov) [1820405] - [security] KEYS: allow reaching the keys quotas exactly (Vladis Dronov) [1820405] - [infiniband] RDMA/core: Ensure security pkey modify is not lost (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Ensure pq is not left on waitlist (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/mad: Do not crash if the rdma device does not have a umad interface (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix missing error check on dev_set_name() (Kamal Heib) [1786604] - [infiniband] RDMA/nl: Do not permit empty devices names during RDMA_NLDEV_CMD_NEWLINK/SET (Kamal Heib) [1786604] - [infiniband] RDMA/iwcm: Fix iwcm work deallocation (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Fix failure handling during device creation (Kamal Heib) [1786604] - [infiniband] RDMA/nldev: Fix crash when set a QP to a new counter but QPN is missing (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix protection fault in ib_mr_pool_destroy (Kamal Heib) [1786604] - [infiniband] IB/hfi1, qib: Ensure RCU is locked when accessing list (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/core: Fix pkey and port assignment in get_new_pps (Kamal Heib) [1786604] - [infiniband] RMDA/cm: Fix missing ib_cm_destroy_id() in ib_cm_insert_listen() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix use of logical OR in get_new_pps (Kamal Heib) [1786604] - [infiniband] Revert "RDMA/cma: Simplify rdma_resolve_addr() error flow" (Kamal Heib) [1786604] - [net] xprtrdma: Fix DMA scatter-gather list mapping imbalance (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix protection fault in get_pkey_idx_qp_list (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq (Kamal Heib) [1786604] - [infiniband] IB/umad: Fix kernel crash while unloading ib_umad (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add missing list deletion on freeing event queue (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix invalid memory access in spec_filter_size (Kamal Heib) [1786604] - [infiniband] IB/rdmavt: Reset all QPs when the device is shut down (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Close window for pq and request coliding (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Acquire lock to release TID entries when user file is closed (Kamal Heib) [1786604 1739282] - [infiniband] IB/umem: use get_user_pages_fast() to pin DMA pages (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Mask access flags with the correct optional range (Kamal Heib) [1786604] - [infiniband] RDMA/cma: Fix unbalanced cm_id reference count during address resolve (Kamal Heib) [1786604] - [infiniband] RDMA/umem: Fix ib_umem_find_best_pgsz() (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Fix logical condition in msix_request_irq (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/cm: Remove CM message structs (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for complex structure members (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for simple structure members (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for swapping get/set acessors (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for simple get/set acessors (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Add SET/GET implementations to hide IBA wire format (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Add accessors for CM_REQ transport_type (Kamal Heib) [1786604] - [infiniband] RDMA/core: Ensure that rdma_user_mmap_entry_remove() is a fence (Kamal Heib) [1786604] - [rdma] RDMA/uverbs: Add new relaxed ordering memory region access flag (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Allow passing of optional access flags for MR registration (Kamal Heib) [1786604] - [rdma] RDMA/core: Add optional access flags range (Kamal Heib) [1786604] - [rdma] RDMA/uverbs: Verify MR access flags (Kamal Heib) [1786604] - [infiniband] RDMA/core: Remove ucontext_lock from the uverbs_destry_ufile_hw() path (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add UVERBS_METHOD_ASYNC_EVENT_ALLOC (Kamal Heib) [1786604] - [infiniband] IB/srp: Never use immediate data if it is disabled by a user (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Compute the maximum sges and inline size based on the WQE size (Kamal Heib) [1786604] - [infiniband] Introduce maximum WQE size to check limits (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Remove unused ucontext parameter from efa_qp_user_mmap_entries_remove (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Remove {} brackets from single statement if (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Device definitions documentation updates (Kamal Heib) [1786604] - [net] xprtrdma: DMA map rr_rdma_buf as each rpcrdma_rep is created (Kamal Heib) [1786604] - [net] xprtrdma: Destroy reps from previous connection instance (Kamal Heib) [1786604] - [net] xprtrdma: Destroy rpcrdma_rep when Receive is flushed (Kamal Heib) [1786604] - [net] xprtrdma: Allocate and map transport header buffers at connect time (Kamal Heib) [1786604] - [net] xprtrdma: Refactor frwr_is_supported (Kamal Heib) [1786604] - [net] xprtrdma: Eliminate per-transport "max pages" (Kamal Heib) [1786604] - [net] xprtrdma: Refactor initialization of ep->rep_max_requests (Kamal Heib) [1786604] - [net] xprtrdma: Make sendctx queue lifetime the same as connection lifetime (Kamal Heib) [1786604] - [net] xprtrdma: Eliminate ri_max_send_sges (Kamal Heib) [1786604] - [infiniband] RDMA/core: Use READ_ONCE for ib_ufile.async_file (Kamal Heib) [1786604] - [infiniband] RDMA/core: Make ib_uverbs_async_event_file into a uobject (Kamal Heib) [1786604] - [rdma] RDMA/core: Remove the ufile arg from rdma_alloc_begin_uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Simplify type usage for ib_uverbs_async_handler() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_wq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_srq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_qp.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_cq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Make ib_ucq_object use ib_uevent_object (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not allow alloc_commit to fail (Kamal Heib) [1786604] - [infiniband] RDMA/core: Simplify destruction of FD uobjects (Kamal Heib) [1786604] - [infiniband] RDMA/mlx5: Use RCU and direct refcounts to keep memory alive (Kamal Heib) [1786604] - [infiniband] RDMA/uverbs: Remove needs_kfree_rcu from uverbs_obj_type_class (Kamal Heib) [1786604] - [infiniband] RDMA/core: Remove err in iw_query_port (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add software counter for ctxt0 seq drop (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Return void in packet receiving functions (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Decouple IRQ name from type (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Create API for auto activate (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: IB/hfi1: Add an API to handle special case drop (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Move common receive IRQ code to function (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add fast and slow handlers for receive context (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Move chip specific functions to chip.c (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/core: Fix locking in ib_uverbs_event_read (Kamal Heib) [1786604] - [infiniband] IB/core: Fix build failure without hugepages (Kamal Heib) [1786604] - [infiniband] IB/core: Rename event_handler_lock to qp_open_list_lock (Kamal Heib) [1786604] - [infiniband] IB/core: Cut down single member ib_cache structure (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add trace points to follow MR allocation (Kamal Heib) [1786604] - [infiniband] RDMA/core: Trace points for diagnosing completion queue issues (Kamal Heib) [1786604] - [infiniband] RDMA/cma: Add trace points in RDMA Connection Manager (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Delete unused CM ARP functions (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Delete unused CM LAP functions (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Fix error type of mmap_offset (Kamal Heib) [1786604] - [infiniband] IB/iser: use true,false for bool variable (Kamal Heib) [1786604] - [infiniband] IB/hfi1: use true,false for bool variable (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/siw: use true,false for bool variable (Kamal Heib) [1786604] - [infiniband] IB/core: Fix ODP with IB_ACCESS_HUGETLB handling (Kamal Heib) [1786604] - [infiniband] IB/core: Fix ODP get user pages flow (Kamal Heib) [1786604] - [infiniband] IB/rdmavt: Correct comments in rdmavt_qp.h header (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: List all receive contexts from debugfs (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add accessor API routines to access context members (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/cm: Use RCU synchronization mechanism to protect cm_id_private xa_load() (Kamal Heib) [1786604] - [infiniband] RDMA/srpt: Remove unnecessary assertion in srpt_queue_response (Kamal Heib) [1786604] - [infiniband] RDMA/netlink: Do not always generate an ACK for some netlink operations (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Simplify QP representation (Kamal Heib) [1786604] - [infiniband] RDMA/qedr: Add kernel capability flags for dpm enabled mode (Kamal Heib) [1786604] - [platform] platform/x86: intel_pmc_core: Add Intel Tiger Lake support (Alexander Beregalov) [1783390] - [platform] platform/x86: intel_pmc_core: Create platform dependent bitmap structs (Alexander Beregalov) [1783390] - [platform] platform/x86: intel_pmc_core: Clean up: Remove comma after the termination line (Alexander Beregalov) [1783390] - [pinctrl] pinctrl: tigerlake: Tiger Lake uses _HID enumeration (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Add Coffee Lake-S ACPI ID (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Pass irqchip when adding gpiochip (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Add GPIO <-> pin mapping ranges via callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Replace WARN with dev_info_once when setting direct-irq pin to output (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Add missing Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Reuse struct intel_pinctrl in the driver (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use local variable to keep device pointer (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Keep pointer to struct device instead of its container (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Share struct intel_pinctrl for wider use (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use GPIO direction definitions (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use GPIO direction definitions (David Arcari) [1773772] - [include] gpio: Add definition for GPIO direction (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Move IRQ valid mask initialization to a dedicated callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Group GPIO IRQ chip initialization (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Allocate IRQ chip dynamic (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Pass irqchip when adding gpiochip (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Add GPIO <-> pin mapping ranges via callback (David Arcari) [1773772] - [gpio] gpiolib: Introduce ->add_pin_ranges() callback (David Arcari) [1773772] - [gpio] gpiolib: Initialize the hardware with a callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Update North Community pin list (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Really serialize all register accesses (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Update pin list according to v1.1v6 (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Missed type change to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Add Intel Tiger Lake pin controller support (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use helper to restore register values on ->resume() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Drop level from warning to debug in intel_restore_hostown() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_intmask() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_hostown() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_padcfg() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Avoid potential glitches if pin is in GPIO mode (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Allocate IRQ chip dynamic (David Arcari) [1773772] - [pinctrl] gpio: Initialize the irqchip valid_mask with a callback (David Arcari) [1773772] - [pinctrl] pinctrl: intel: mark intel_pin_to_gpio __maybe_unused (David Arcari) [1773772] - [pinctrl] pinctrl: intel: remap the pin number to gpio offset for irq enabled pin (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Update pin names according to v1.08 (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Remove dev_err() usage after platform_get_irq() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use NSEC_PER_USEC for debounce calculus (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Re-use data structures from pinctrl-intel.h (part 2) (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Remove default Interrupt Status offset (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Simplify offset validation in intel_get_padcfg() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Drop double check for data in intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use devm_platform_ioremap_resource() (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use devm_platform_ioremap_resource() (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use GENMASK() consistently (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Re-use data structures from pinctrl-intel.h (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use defined macro instead of magic in byt_get_gpio_mux() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Clear interrupt status in mask/unmask callback (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use GENMASK() consistently (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Increase readability of intel_gpio_update_pad_mode() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Retain HOSTSW_OWN for requested gpio pin (David Arcari) [1773772] - [pinctrl] pinctrl: pinctrl-intel: move gpio suspend/resume to noirq phase (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Update pin names according to v1.13c (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Fix potential NULL pointer dereference (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Unexport intel_pinctrl_probe() (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: intel: simplify getting .driver_data (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: simplify getting .driver_data (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Sort register offsets by value (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Update pin list for B0 stepping (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Sort headers alphabetically (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Remove unneeded MODULE_DEVICE_TABLE() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Move linux/pm.h to the local header (David Arcari) [1773772] - [pinctrl] pinctrl: Include nothing else (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce common macro for PM operations (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Convert to use intel_pinctrl_probe_by_hid() (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Convert to use intel_pinctrl_probe_by_hid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_pinctrl_probe_by_hid() internal API (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Convert to use device_get_match_data() (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Convert to use intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Convert to use intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_pinctrl_probe_by_uid() internal API (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Fix a spelling typo in kernel documentation (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: actually print the apparently misconfigured pin (David Arcari) [1773772] - [mm] mm, page_alloc: move_freepages should not examine struct page of reserved memory (Rafael Aquini) [1588584] - [mm] mm, page_alloc: initialize num_movable in move_freepages() (Rafael Aquini) [1588584] - [tools] selftests: vm: drop dependencies on page flags from mlock2 tests (Rafael Aquini) [1658886] - [powercap] powercap/intel_rapl: add support for TigerLake Mobile (David Arcari) [1783136] - [kernel] locking/lockdep: Avoid recursion in lockdep_count_{for, back}ward_deps() (Waiman Long) [1780993] - [kernel] locking/lockdep: Reuse freed chain_hlocks entries (Waiman Long) [1780993] - [kernel] locking/lockdep: Track number of zapped lock chains (Waiman Long) [1780993] - [kernel] locking/lockdep: Throw away all lock chains with zapped class (Waiman Long) [1780993] - [kernel] locking/lockdep: Track number of zapped classes (Waiman Long) [1780993] - [kernel] locking/lockdep: Display irq_context names in /proc/lockdep_chains (Waiman Long) [1780993] - [kernel] locking/lockdep: Decrement IRQ context counters when removing lock chain (Waiman Long) [1780993] - [kernel] locking/lockdep: Fix lockdep_stats indentation problem (Waiman Long) [1780993] - [kernel] locking/lockdep: Fix buffer overrun problem in stack_trace (Waiman Long) [1780993] - [lib] lib/string: Make memzero_explicit() inline instead of external (Florian Westphal) [1820623] - [crypto] crypto: sha256 - Remove sha256/224_init code duplication (Florian Westphal) [1820623] - [crypto] crypto: sha256 - Merge crypto/sha256.h into crypto/sha.h (Florian Westphal) [1820623] - [crypto] crypto: chelsio - Rename arrays to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [x86] crypto: x86 - Rename functions to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [arm64] crypto: arm64 - Rename functions to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [crypto] crypto: sha256_generic - Switch to the generic lib/crypto/sha256.c lib code (Florian Westphal) [1820623] - [lib] crypto: sha256 - Add sha224 support to sha256 library code (Florian Westphal) [1820623] - [lib] crypto: sha256 - Make lib/crypto/sha256.c suitable for generic use (Florian Westphal) [1820623] - [lib] crypto: sha256 - Use get/put_unaligned_be32 to get input, memzero_explicit (Florian Westphal) [1820623] - [s390] crypto: sha256 - Move lib/sha256.c to lib/crypto (Florian Westphal) [1820623] - [crypto] crypto: sha256_generic - Fix some coding style issues (Florian Westphal) [1820623] - [lib] crypto: sha256 - Fix some coding style issues (Florian Westphal) [1820623] - [thunderbolt] thunderbolt: Fix error code in tb_port_is_width_supported() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Prevent crash if non-active NVMem file is read (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: fix memory leak of object sw (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Fix xhci check in usb4_switch_setup() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for USB 3.x tunnels (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for Time Management Unit (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_switch_find_cap() available to other files (Jarod Wilson) [1482838] - [netdrv] thunderbolt: Update Kconfig entries to USB4 (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add initial support for USB4 (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Populate PG field in hot plug acknowledgment packet (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Call tb_eeprom_get_drom_offset() from tb_eeprom_read_n() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_find_port() available to other files (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Power cycle the router if NVM authentication fails (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Do not start firmware unless asked by the user (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add bandwidth management for Display Port tunnels (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add Display Port adapter pairing and resource management (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add Display Port CM handshake for Titan Ridge devices (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add downstream PCIe port mappings for Alpine and Titan Ridge (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Expand controller name in tb_switch_is_xy() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add default linking between lane adapters if not provided by DROM (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for lane bonding (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Refactor add_switch() into two functions (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add helper macro to iterate over switch ports (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_sw_write() take const parameter (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert DP adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert PCIe adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert basic adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Log error if adding switch fails (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Log switch route string on config read/write timeout (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Introduce tb_switch_is_icm() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add 'generation' attribute for devices (Jarod Wilson) [1482838]- [scsi] scsi: lpfc: Copyright updates for 12.6.0.4 patches (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.4 (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Clean up hba max_lun_queue_depth checks (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Remove handler for obsolete ELS - Read Port Status (RPS) (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix coverity errors in fmdi attribute handling (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix compiler warning on frame size (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix registration of ELS type support in fdmi (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix broken Credit Recovery after driver load (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix lpfc_io_buf resource leak in lpfc_get_scsi_buf_s4 error path (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix RQ buffer leakage when no IOCBs available (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Make lpfc_defer_acc_rsp static (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.3 (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix improper flag check for IO type (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix MDS Latency Diagnostics Err-drop rates (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix unmap of dpp bars affecting next driver load (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix disablement of FC-AL on lpe35000 models (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix ras_log via debugfs (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix Fabric hostname registration if system hostname changes (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix missing check for CSF in Write Object Mbox Rsp (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix: Rework setting of fdmi symbolic node name registration (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix incomplete NVME discovery when target (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: fix spelling mistakes of asynchronous (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix memory leak on lpfc_bsg_write_ebuf_set func (Dick Kennedy) [1793674] - [tools] tools/power turbostat: Support Tiger Lake (David Arcari) [1783441] - [md] dm integrity: fix logic bug in integrity tag testing (Mike Snitzer) [1820280] - [md] Revert "dm: always call blk_queue_split() in dm_process_bio()" (Mike Snitzer) [1820705] - [md] dm integrity: fix ppc64le warning (Mike Snitzer) [1820280] - [md] dm writecache: add cond_resched to avoid CPU hangs (Mike Snitzer) [1820280] - [md] dm integrity: improve discard in journal mode (Mike Snitzer) [1820280] - [md] dm integrity: add optional discard support (Mike Snitzer) [1820280] - [md] dm integrity: allow resize of the integrity device (Mike Snitzer) [1820280] - [md] dm integrity: factor out get_provided_data_sectors() (Mike Snitzer) [1820280] - [md] dm integrity: don't replay journal data past the end of the device (Mike Snitzer) [1820280] - [md] dm integrity: remove sector type casts (Mike Snitzer) [1820280] - [md] dm integrity: fix a crash with unusually large tag size (Mike Snitzer) [1820280] - [md] dm verity fec: fix memory leak in verity_fec_dtr (Mike Snitzer) [1820280] - [md] dm writecache: optimize superblock write (Mike Snitzer) [1820280] - [md] dm writecache: implement gradual cleanup (Mike Snitzer) [1820280] - [md] dm writecache: implement the "cleaner" policy (Mike Snitzer) [1820280] - [md] dm writecache: do direct write if the cache is full (Mike Snitzer) [1820280] - [md] dm integrity: print device name in integrity_metadata() error message (Mike Snitzer) [1820280] - [md] dm crypt: use crypt_integrity_aead() helper (Mike Snitzer) [1820280] - [lib] lib/test_bitmap: add tests for bitmap_parselist_user() (Vladis Dronov) [1819152] - [lib] lib/test_bitmap: add testcases for bitmap_parselist() (Vladis Dronov) [1819152] - [lib] lib/test_bitmap: switch test_bitmap_parselist to ktime_get() (Vladis Dronov) [1819152] - [lib] lib: rework bitmap_parselist (Vladis Dronov) [1819152] - [lib] lib: make bitmap_parselist_user() a wrapper on bitmap_parselist() (Vladis Dronov) [1819152] - [platform] platform/x86: mlx-platform: Add support for next generation systems (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add support for new capability register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new capability register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new system type (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Set system mux configuration based on system type (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add more definitions for system attributes (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Style changes (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add missed attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Fix documentation inconsistency for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Cosmetic changes (Ivan Vecera) [1820312] - [platform] platform/mellanox: Fix Kconfig indentation (Ivan Vecera) [1820312] - [leds] leds: mlxreg: Fix possible buffer overflow (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Remove dev_err() usage after platform_get_irq() (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix error handling in mlxplat_init() (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add more reset cause attributes (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Modify DMI matching order (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add regmap structure for the next generation systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Change API for i2c-mlxcpld driver activation (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Move regmap initialization before all drivers activation (Ivan Vecera) [1820312] - [documentation] ABI: sysfs-driver-mlxreg-io: fix the what fields (Ivan Vecera) [1820312] - [documentation] docs: watchdog: convert docs to ReST and rename to *.rst (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix parent device in i2c-mux-reg device registration (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add devm_free_irq call to remove flow (Ivan Vecera) [1820312] - [i2c] i2c: mlxcpld: Fix wrong initialization order in probe (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Use devm_thermal_of_cooling_device_register (Ivan Vecera) [1820312] - [thermal] thermal: Introduce devm_thermal_of_cooling_device_register (Ivan Vecera) [1820312] - [watchdog] watchdog: mlx_wdt: Use 'dev' instead of dereferencing it repeatedly (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Use HWMON_CHANNEL_INFO macro (Ivan Vecera) [1820312] - [include] hwmon: Add convience macro to define simple static sensors (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Add support for fan capability registers (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlx-wdt platform driver activation (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for tachometer speed register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix access mode for fan_dir attribute (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add UID LED for the next generation systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add extra CPLD for next generation systems (Ivan Vecera) [1820312] - [documentation] Documentation/watchdog: Add documentation mlx-wdt driver (Ivan Vecera) [1820312] - [watchdog] watchdog: mlx-wdt: introduce a watchdog driver for Mellanox systems (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: additions for Mellanox watchdog driver (Ivan Vecera) [1820312] - [leds] leds: mlxreg: Add support for capability register (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Fix KASAN warning (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Correct mlxreg-io KernelVersion for 5.0 (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new VMOD0007 board name (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for fan capability registers (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: Add capability field to core platform data (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: Document fixes for core platform data (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for fan direction register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Convert to use SPDX identifier (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Allow mlxreg-io driver activation for new systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix LED configuration (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix tachometer registers (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Rename new systems product names (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add definitions for new registers (Ivan Vecera) [1820312] - [i2c] i2c: mux: mlxcpld: simplify code to reach the adapter (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Properly use mlxplat_mlxcpld_msn201x_items (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix copy-paste error in mlxplat_init() (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Remove unused define (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Change mlxreg-io configuration for MSN274x systems (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Allow mlxreg-io driver activation for more systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add ASIC hotplug device configuration (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add hotplug hwmon uevent notification (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Improve mechanism of ASIC health discovery (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlxreg-fan platform driver activation (Ivan Vecera) [1820312] - [platform] platform/mellanox: Use 2-factor allocator calls (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Modify macros for tachometer fault status reading (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Fix macros for tacho fault reading (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Add support for Mellanox FAN driver (Ivan Vecera) [1820312] - [i2c] i2c: mux: mlxcpld: make use of __i2c_smbus_xfer (Ivan Vecera) [1820312] - [i2c] i2c: smbus: add unlocked __i2c_smbus_xfer variant (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add documentation mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlxreg-io platform driver activation (Ivan Vecera) [1820312] - [platform] platform/mellanox: Introduce support for Mellanox register access driver (Ivan Vecera) [1820312] - [kernel] audit: trigger accompanying records when no rules present (Richard Guy Briggs) [1819944] - [kernel] sched/fair: Allow a per-CPU kthread waking a task to stack on the same CPU, to fix XFS performance regression (Phil Auld) [1745111] - [hid] HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: add CMP device id (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: Spelling s/diconnect/disconnect/ (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring() (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: check the NO_D3 flag to distinguish resume paths (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: make ish suspend paths clear (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: set NO_D3 flag only when needed (Tony Camuso) [1818043] - [netdrv] net: ena: Add PCI shutdown handler to allow safe kexec (Bhupesh Sharma) [1758323] - [net] vsock: fix potential deadlock in transport->release() (Stefano Garzarella) [1771582] - [net] vsock/virtio: remove loopback handling (Stefano Garzarella) [1771582] - [net] vsock: use local transport when it is loaded (Stefano Garzarella) [1771582] - [net] vsock: add vsock_loopback transport (Stefano Garzarella) [1771582] - [net] vsock: add local transport support in the vsock core (Stefano Garzarella) [1771582] - [uapi] vsock: add VMADDR_CID_LOCAL definition (Stefano Garzarella) [1771582] - [net] vsock/virtio_transport_common: remove unused virtio header includes (Stefano Garzarella) [1771582] - [infiniband] IB/rdmavt: Free kernel completion queue when done (Gopal Tiwari) [1805036] - [powerpc] powerpc/64s: Fix section mismatch warnings from boot code (Desnes Augusto Nunes do Rosario) [1391523] - [powerpc] powerpc/prom: convert PROM_BUG() to standard trap (Desnes Augusto Nunes do Rosario) [1391523] - [powerpc] powerpc/64: mark start_here_multiplatform as __ref (Desnes Augusto Nunes do Rosario) [1391523] - [mfd] mfd: intel-lpss: Add Intel Tiger Lake PCI IDs (David Arcari) [1773767] - [mfd] mfd: intel-lpss: Release IDA resources (David Arcari) [1773767] - [mfd] mfd: intel-lpss: Keep device tables sorted by ID (David Arcari) [1773767] - [i2c] i2c: i801: Add support for Intel Tiger Lake (David Arcari) [1773765] - [edac] EDAC/mce_amd: Print !SMCA processor warning only once (Prarit Bhargava) [1796178] - [powerpc] powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() (Steve Best) [1806630] {CVE-2019-12614}- [x86] x86/gart: Rewrite early_gart_iommu_check() comment (Waiman Long) [1818532] - [mm] mm/memblock.c: warn if zero alignment was requested (Waiman Long) [1818532] - [powerpc] memblock: stop using implicit alignment to SMP_CACHE_BYTES (Waiman Long) [1818532] - [mm] memblock: replace BOOTMEM_ALLOC_* with MEMBLOCK variants (Waiman Long) [1818532] - [mm] mm: remove nobootmem (Waiman Long) [1818532] - [mm] memblock: rename __free_pages_bootmem to memblock_free_pages (Waiman Long) [1818532] - [mm] memblock: rename free_all_bootmem to memblock_free_all (Waiman Long) [1818532] - [firmware] memblock: replace free_bootmem_late with memblock_free_late (Waiman Long) [1818532] - [x86] memblock: replace free_bootmem{_node} with memblock_free (Waiman Long) [1818532] - [mm] mm: nobootmem: remove bootmem allocation APIs (Waiman Long) [1818532] - [mm] memblock: replace __alloc_bootmem with memblock_alloc_from (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_pages with memblock_alloc (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_low_pages with memblock_alloc_low (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_pages_node with memblock_alloc_node (Waiman Long) [1818532] - [mm] memblock: add align parameter to memblock_alloc_node() (Waiman Long) [1818532] - [arm64] memblock: replace alloc_bootmem_low with memblock_alloc_low (2) (Waiman Long) [1818532] - [usb] memblock: replace alloc_bootmem_pages_nopanic with memblock_alloc_nopanic (Waiman Long) [1818532] - [x86] memblock: replace __alloc_bootmem_node_nopanic with memblock_alloc_try_nid_nopanic (Waiman Long) [1818532] - [x86] memblock: replace alloc_bootmem_low with memblock_alloc_low (Waiman Long) [1818532] - [x86] memblock: replace alloc_bootmem_align with memblock_alloc (Waiman Long) [1818532] - [mm] memblock: remove _virt from APIs returning virtual address (Waiman Long) [1818532] - [powerpc] memblock: rename memblock_alloc{_nid, _try_nid} to memblock_phys_alloc* (Waiman Long) [1818532] - [mm] mm: nobootmem: remove dead code (Waiman Long) [1818532] - [mm] mm: remove bootmem allocator implementation (Waiman Long) [1818532] - [mm] mm: remove CONFIG_HAVE_MEMBLOCK (Waiman Long) [1818532] - [mm] mm: remove CONFIG_NO_BOOTMEM (Waiman Long) [1818532] - [mm] mm: disable deferred struct page for 32-bit arches (Waiman Long) [1818532] - [mm] mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM (Waiman Long) [1818532] - [mm] mm/hugetlb.c: don't zero 1GiB bootmem pages (Waiman Long) [1818532] - [mm] docs/mm: memblock: add overview documentation (Waiman Long) [1818532] - [include] docs/mm: memblock: add kernel-doc description for memblock types (Waiman Long) [1818532] - [mm] docs/mm: memblock: add kernel-doc comments for memblock_add (Waiman Long) [1818532] - [mm] docs/mm: bootmem: add overview documentation (Waiman Long) [1818532] - [include] docs/mm: bootmem: add kernel-doc description of 'struct bootmem_data' (Waiman Long) [1818532] - [mm] docs/mm: bootmem: fix kernel-doc warnings (Waiman Long) [1818532] - [mm] docs/mm: nobootmem: fixup kernel-doc comments (Waiman Long) [1818532] - [mm] mm/bootmem: drop duplicated kernel-doc comments (Waiman Long) [1818532] - [lib] lib/smp_processor_id: Don't use cpumask_equal() (Waiman Long) [1812092] - [kernel] audit: always check the netlink payload length in audit_receive_msg() (Richard Guy Briggs) [1814448] - [kernel] audit: fix error handling in audit_data_to_entry() (Richard Guy Briggs) [1814448] - [fs] fat: work around race with userspace's read via blockdev while mounting (Bill O'Donnell) [1771351] - [include] raid6/test: fix a compilation error (Bhupesh Sharma) [1817524] - [arm64] arm64: kexec_file: add crash dump support (Bhupesh Sharma) [1817524] - [lib] libfdt: include fdt_addresses.c (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.1-22-gc40aeb60b47a (Bhupesh Sharma) [1817524] - [include] libfdt: reduce the number of headers included from libfdt_env.h (Bhupesh Sharma) [1817524] - [arm64] arm64: dts: amd: Fix SPI bus warnings (Bhupesh Sharma) [1817524] - [arm64] arm64: dts: broadcom: Fix I2C and SPI bus warnings (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.0-30-g702c1b6c0e73 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.0-23-g87963ee20693 (Bhupesh Sharma) [1817524] - [include] linux/kernel.h: split *_MAX and *_MIN macros into (Bhupesh Sharma) [1817524] - [scripts] kbuild: disable dtc simple_bus_reg warnings by default (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.4.7-57-gf267e674d145 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.4.7-14-gc86da84d30e4 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: consolidate include path options in Makefile (Bhupesh Sharma) [1817524] - [pci] PCI: Remove unnecessary returns (Myron Stowe) [1807175] - [pci] PCI: OF: Correct of_irq_parse_pci() documentation (Myron Stowe) [1807175] - [pci] PCI: Fix typos and whitespace errors (Myron Stowe) [1807175] - [documentation] PCI: Correct pci=resource_alignment parameter example (Myron Stowe) [1807175] - [pci] PCI: Use PCI_SRIOV_NUM_BARS in loops instead of PCI_IOV_RESOURCE_END (Myron Stowe) [1807175] - [pci] PCI: Convert pci_resource_to_user() to a weak function (Myron Stowe) [1807175] - [pci] PCI: pciehp: Refer to "Indicators" instead of "LEDs" in comments (Myron Stowe) [1807175] - [pci] PCI: pciehp: Remove pciehp_green_led_{on, off, blink}() (Myron Stowe) [1807175] - [pci] PCI: pciehp: Remove pciehp_set_attention_status() (Myron Stowe) [1807175] - [pci] PCI: pciehp: Combine adjacent indicator updates (Myron Stowe) [1807175] - [pci] PCI: pciehp: Add pciehp_set_indicators() to set both indicators (Myron Stowe) [1807175] - [pci] PCI: Add pci_irq_vector() and other stubs when !CONFIG_PCI (Myron Stowe) [1807175] - [pci] PCI: Force trailing new line to resource_alignment_param in sysfs (Myron Stowe) [1807175] - [pci] PCI: Move pci__resource_alignment_param() into their callers (Myron Stowe) [1807175] - [pci] PCI: pci.c: convert to use BUS_ATTR_RW (Myron Stowe) [1807175] - [pci] PCI: Clean up resource_alignment parameter to not require static buffer (Myron Stowe) [1807175] - [pci] PCI/IOV: Remove group write permission from sriov_numvfs, sriov_drivers_autoprobe (Myron Stowe) [1807175] - [pci] PCI/IOV: Move sysfs SR-IOV functions to iov.c (Myron Stowe) [1807175] - [pci] PCI: sysfs: Change permissions from symbolic to octal (Myron Stowe) [1807175] - [pci] PCI: sysfs: Revert "rescan" file renames (Myron Stowe) [1807175] - [pci] PCI: sysfs: Change DEVICE_ATTR() to DEVICE_ATTR_WO() (Myron Stowe) [1807175] - [pci] PCI: pci-sysfs.c: convert to use BUS_ATTR_WO (Myron Stowe) [1807175] - [pci] PCI: sysfs: Define device attributes with DEVICE_ATTR*() (Myron Stowe) [1807175] - [pci] PCI: Mark expected switch fall-through (Myron Stowe) [1807175] - [pci] PCI: Use devm_add_action_or_reset() (Myron Stowe) [1807175] - [pci] PCI: Get rid of dev->has_secondary_link flag (Myron Stowe) [1807175] - [pci] PCI/ACPI: Remove unnecessary struct hotplug_program_ops (Myron Stowe) [1807175] - [pci] PCI/ACPI: Move _HPP & _HPX functions to pci-acpi.c (Myron Stowe) [1807175] - [pci] PCI/ACPI: Rename _HPX structs from hpp_* to hpx_* (Myron Stowe) [1807175] - [pci] PCI: Make pci_set_of_node(), etc private (Myron Stowe) [1807175] - [pci] PCI: Make pci_enable_ptm() private (Myron Stowe) [1807175] - [pci] PCI: Make pcie_set_ecrc_checking(), pcie_ecrc_get_policy() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_ats_init() private (Myron Stowe) [1807175] - [pci] PCI: Make pcie_update_link_speed() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_bus_get(), pci_bus_put() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_hotplug_io_size, mem_size, and bus_size private (Myron Stowe) [1807175] - [pci] PCI: Make pci_save_vc_state(), pci_restore_vc_state(), etc private (Myron Stowe) [1807175] - [pci] PCI: Make pci_get_host_bridge_device(), pci_put_host_bridge_device() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_check_pme_status(), pci_pme_wakeup_bus() private (Myron Stowe) [1807175] - [pci] PCI: Make PCI_PM_* delay times private (Myron Stowe) [1807175] - [pci] PCI: Unexport pci_bus_sem (Myron Stowe) [1807175] - [pci] PCI: Unexport pci_bus_get() and pci_bus_put() (Myron Stowe) [1807175] - [pci] PCI: Remove pci_block_cfg_access() et al (unused) (Myron Stowe) [1807175] - [wireless] PCI: Move ASPM declarations to linux/pci.h (Myron Stowe) [1807175] - [pci] PCI/MSI: Support allocating virtual MSI interrupts (Myron Stowe) [1807175] - [fs] gfs2: Remove unnecessary gfs2_qa_{get,put} pairs (Robert S Peterson) [1807146] - [fs] gfs2: Split gfs2_rsqa_delete into gfs2_rs_delete and gfs2_qa_put (Robert S Peterson) [1807146] - [fs] gfs2: Change inode qa_data to allow multiple users (Robert S Peterson) [1807146] - [fs] gfs2: eliminate gfs2_rsqa_alloc in favor of gfs2_qa_alloc (Robert S Peterson) [1807146] - [fs] gfs2: Switch to list_{first,last}_entry (Robert S Peterson) [1807146] - [fs] gfs2: Clean up inode initialization and teardown (Robert S Peterson) [1807146] - [fs] gfs2: Minor gfs2_alloc_inode cleanup (Robert S Peterson) [1807146] - [pinctrl] pinctrl: pinmux: fix a possible null pointer in pinmux_can_be_used_for_gpio (David Arcari) [1817454] - [pinctrl] pinctrl/gpio: Take MUX usage into account (David Arcari) [1817454] - [include] gpio: Fix build warnings on undefined struct pinctrl_dev (David Arcari) [1817454] - [pinctrl] pinctrl: remove unused pin_is_valid() (David Arcari) [1817454] - [pinctrl] pinctrl: remove unneeded initializer for list_for_each_entry() iterator (David Arcari) [1817454] - [pinctrl] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (David Arcari) [1817454] - [pinctrl] pinctrl: core: Do not add device links for hogs (David Arcari) [1817454] - [pinctrl] pinctrl: Enable device link creation for pin control (David Arcari) [1817454] - [pinctrl] pinctrl: generic: add new 'drive-strength-microamp' property support (David Arcari) [1817454] - [pinctrl] pinctrl: remove unused 'pinconf-config' debugfs interface (David Arcari) [1817454] - [pinctrl] pinctrl: Change to use DEFINE_SHOW_ATTRIBUTE macro (David Arcari) [1817454] - [pinctrl] pinctrl: core: make sure strcmp() doesn't get a null parameter (David Arcari) [1817454] - [pinctrl] pinctrl: core: Remove broken remove_last group and pinmux functions (David Arcari) [1817454] - [pinctrl] pinctrl: pinmux: Return selector to the pinctrl driver (David Arcari) [1817454] - [pinctrl] pinctrl: core: Return selector to the pinctrl driver (David Arcari) [1817454] - [pinctrl] pinctrl: Cut unused sysfs includes (David Arcari) [1817454] - [mm] mm, numa: fix bad pmd by atomically check for pmd_trans_huge when marking page tables prot_numa (Rafael Aquini) [1763878] - [mm] mm: thp: fix flags for pmd migration when split (Rafael Aquini) [1763878] - [mm] mm: thp: relocate flush_cache_range() in migrate_misplaced_transhuge_page() (Rafael Aquini) [1763878] - [mm] mm: thp: fix mmu_notifier in migrate_misplaced_transhuge_page() (Rafael Aquini) [1763878] - [mm] mm: thp: fix MADV_DONTNEED vs migrate_misplaced_transhuge_page race condition (Rafael Aquini) [1763878] - [fs] nfsd: set the server_scope during service startup (Scott Mayhew) [1817752] - [fs] nfsd: v4 support requires CRYPTO_SHA256 (Scott Mayhew) [1817752] - [fs] nfsd: Fix cld_net->cn_tfm initialization (Scott Mayhew) [1817752] - [fs] nfsd: add support for upcall version 2 (Scott Mayhew) [1817752] - [fs] nfsd: add a "GetVersion" upcall for nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: handle legacy client tracking records sent by nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: re-order client tracking method selection (Scott Mayhew) [1817752] - [fs] nfsd: keep a tally of RECLAIM_COMPLETE operations when using nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: un-deprecate nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: make nfs4_client_reclaim use an xdr_netobj instead of a fixed char array (Scott Mayhew) [1817752]- [s390] scsi: zfcp: fix to prevent port_remove with pure auto scan LUNs (only sdevs) (Philipp Rudo) [1814791] - [s390] scsi: zfcp: fix missing zfcp_port reference put on -EBUSY from port_remove (Philipp Rudo) [1814792] - [infiniband] RDMA/qedr: Fix null-pointer dereference when calling rdma_user_mmap_get_offset (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Make qedr_iw_load_qp() static (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Fix potential use after free (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Remove unsupported modify_port callback (Kamal Heib) [1786602] - [infiniband] IB/ipoib: Add ndo operation for getting VFs GUID attributes (Kamal Heib) [1786602] - [net] xprtrdma: Fix oops in Receive handler after device removal (Kamal Heib) [1786602] - [net] xprtrdma: Fix completion wait during device removal (Kamal Heib) [1786602] - [net] xprtrdma: Fix create_qp crash on device unload (Kamal Heib) [1786602] - [infiniband] IB/hfi1: Adjust flow PSN with the correct resync_psn (Kamal Heib) [1786602] - [infiniband] IB/hfi1: Don't cancel unused work item (Kamal Heib) [1786602] - [infiniband] IB/core: Introduce rdma_user_mmap_entry_insert_range() API (Kamal Heib) [1786602] - [infiniband] RDMA/counter: Prevent auto-binding a QP which are not tracked with res (Kamal Heib) [1786602] - [infiniband] rxe: correctly calculate iCRC for unaligned payloads (Kamal Heib) [1786602] - [infiniband] treewide: Use sizeof_field() macro (Kamal Heib) [1786602] - [infiniband] RDMA/cma: add missed unregister_pernet_subsys in init failure (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Expose RDMA read related attributes (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Support remote read access in MR registration (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Store network attributes in device attributes (Kamal Heib) [1786602] - [infiniband] IB/hfi1: remove redundant assignment to variable ret (Kamal Heib) [1786602] - [infiniband] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Kamal Heib) [1786602] - [infiniband] IB/core: Add interfaces to get VF node and port GUIDs (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Use refcount_t type for refcount variable (Kamal Heib) [1786602] - [infiniband] RDMA/cma: Use ACK timeout for RoCE packetLifeTime (Kamal Heib) [1786602] - [infiniband] IB/umem: remove the dmasync argument to ib_umem_get (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Add iWARP doorbell recovery support (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Add doorbell overflow recovery support (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Use the common mmap API (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Fix memory leak in user qp and mr (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix synchronization methods and memory leaks in qedr (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix qpids xarray api used (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix srqs xarray initialization (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Remove Unneeded variable rc (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/mlx4: Separate creation of RWQ and QP (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Package for hns_roce_rereg_user_mr function (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Fix sg offset non-zero issue (Kamal Heib) [1786602] - [infiniband] dma-mapping: remove the DMA_ATTR_WRITE_BARRIER flag (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Clear the admin command buffer prior to its submission (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Cleanup unused mmap structures (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Report the SCSI residual to the initiator (Kamal Heib) [1786602] - [infiniband] RDMA: Change MAD processing function to remove extra casting and parameter (Kamal Heib) [1786602] - [infiniband] RDMA/mlx5: Rewrite MAD processing logic to be readable (Kamal Heib) [1786602] - [infiniband] RDMA/ocrdma: Simplify process_mad function (Kamal Heib) [1786602] - [infiniband] RDMA/ocrdma: Make ocrdma_pma_counters() return void (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Do not check MAD sizes in roce and ib drivers (Kamal Heib) [1786602] - [infiniband] RDMA/hfi1: Delete unreachable code (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Allocate zeroed MAD buffer (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Delete never implemented functions (Kamal Heib) [1786602] - [infiniband] RDMA/core: Fix return code when modify_port isn't supported (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Use the common mmap_xa helpers (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Use the common mmap_xa helpers (Kamal Heib) [1786602] - [infiniband] RDMA: Connect between the mmap entry and the umap_priv structure (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Use rdma_user_mmap_io (Kamal Heib) [1786602] - [infiniband] RDMA/core: Create mmap database and cookie helper functions (Kamal Heib) [1786602] - [infiniband] RDMA/core: Move core content from ib_uverbs to ib_core (Kamal Heib) [1786602] - [infiniband] RDMA/odp: Remove broken debugging call to invalidate_range (Kamal Heib) [1786602] - [infiniband] RDMA/vmw_pvrdma: Use resource ids from physical device if available (Kamal Heib) [1786602] - [infiniband] RDMA/core: Set DMA parameters correctly (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Increase DMA max_segment_size parameter (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Increase DMA max_segment_size parameter (Kamal Heib) [1786602] - [uapi] rdma: Remove nes ABI header (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix TPG creation (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Update copyright together with SPDX tag (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Use specific keyword to check define (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Delete unused cm_is_active_peer function (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Remove useless rxe_init_device_param assignments (Kamal Heib) [1786602] - [net] xprtrdma: Replace dprintk in xprt_rdma_set_port (Kamal Heib) [1786602] - [net] xprtrdma: Replace dprintk() in rpcrdma_update_connect_private() (Kamal Heib) [1786602] - [net] xprtrdma: Refine trace_xprtrdma_fixup (Kamal Heib) [1786602] - [net] xprtrdma: Report the computed connect delay (Kamal Heib) [1786602] - [net] xprtrdma: Wake tasks after connect worker fails (Kamal Heib) [1786602] - [net] xprtrdma: Pull up sometimes (Kamal Heib) [1786602] - [net] xprtrdma: Refactor rpcrdma_prepare_msg_sges() (Kamal Heib) [1786602] - [net] xprtrdma: Move the rpcrdma_sendctx::sc_wr field (Kamal Heib) [1786602] - [net] xprtrdma: Remove rpcrdma_sendctx::sc_device (Kamal Heib) [1786602] - [net] xprtrdma: Remove rpcrdma_sendctx::sc_xprt (Kamal Heib) [1786602] - [net] xprtrdma: Ensure ri_id is stable during MR recycling (Kamal Heib) [1786602] - [net] xprtrdma: Manage MRs in context of a single connection (Kamal Heib) [1786602] - [net] xprtrdma: Fix MR list handling (Kamal Heib) [1786602] - [net] xprtrdma: Initialize rb_credits in one place (Kamal Heib) [1786602] - [infiniband] RDMA/core: Check that process is still alive before sending it to the users (Kamal Heib) [1786602] - [infiniband] RDMA/restrack: Remove PID namespace support (Kamal Heib) [1786602] - [infiniband] RDMA/uverbs: Add a check for uverbs_attr_get to uverbs_copy_to_struct_or_zero (Kamal Heib) [1786602] - [infiniband] IB/cma: Honor traffic class from lower netdevice for RoCE (Kamal Heib) [1786602] - [infiniband] RDMA/nldev: Provide MR statistics (Kamal Heib) [1786602] - [infiniband] RDMA/mlx5: Return ODP type per MR (Kamal Heib) [1786602] - [infiniband] RDMA/nldev: Allow different fill function per resource (Kamal Heib) [1786602] - [infiniband] IB/mlx5: Introduce ODP diagnostic counters (Kamal Heib) [1786602] - [infiniband] infiniband: fix sw/rdmavt/ kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/ kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iser_initiator.c kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iser_verbs.c kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/verbs.c kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/srpt/ib_srpt.h kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iscsi_iser.h kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/ipwm_util.h kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iscsi_iser.kernel-doc notation (Kamal Heib) [1786602] - [infiniband] RDMA/rw: Support threshold for registration vs scattering to local pages (Kamal Heib) [1786602] - [uapi] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id (Kamal Heib) [1786602] - [net] svcrdma: Improve DMA mapping trace points (Kamal Heib) [1786602] - [infiniband] RDMA/iser: Use iser_err instead of pr_err for logging (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Calculate max_it_iu_size if remote max_it_iu length available (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Add parse function for maximum initiator to target IU size (Kamal Heib) [1786602] - [infiniband] IB/cm: Use container_of() instead of typecast (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Make the code for handling port identities more systematic (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Rework the code that waits until an RDMA port is no longer in use (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Rework the approach for closing an RDMA channel (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Improve a debug message (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix handling of iWARP logins (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix handling of SR-IOV and iWARP ports (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Make route resolving error messages more informative (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Honor the max_send_sge device attribute (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Remove two casts (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Make node GUIDs valid EUI-64 identifiers (Kamal Heib) [1786602] - [infiniband] RDMA/iw_cxgb3: Remove the iw_cxgb3 module from kernel (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Verify modify_device mask (Kamal Heib) [1786602] - [infiniband] RDMA/core: Fix return code when modify_device isn't supported (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Fix port number endianness in a debug message (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Simplify several debug messages (Kamal Heib) [1786602] - [infiniband] IB/iser: remove redundant macro definitions (Kamal Heib) [1786602] - [infiniband] IB/iser: bound protection_sg size by data_sg size (Kamal Heib) [1786602] - [infiniband] IB/iser: add unlikely checks in the fast path (Kamal Heib) [1786602] - [infiniband] RDMA/counter: Prevent QP counter manual binding in auto mode (Kamal Heib) [1786602] - [kvm] KVM: SVM: Override default MMIO mask if memory encryption is enabled (Wei Huang) [1789537] - [netdrv] mlx5e: Reorder mirrer action parsing to check for encap first (Ivan Vecera) [1818074] - [tools] selftests: mlxsw: Adjust test to recent changes (Ivan Vecera) [1818074] - [netdrv] vxlan: fix unexpected failure of vxlan_changelink() (Ivan Vecera) [1818074] - [netdrv] bonding: fix lockdep warning in bond_get_stats() (Ivan Vecera) [1818074] - [netdrv] bonding: fix using uninitialized mode_lock (Ivan Vecera) [1818074] - [net] export netdev_next_lower_dev_rcu() (Ivan Vecera) [1818074] - [netdrv] bonding: add missing netdev_update_lockdep_key() (Ivan Vecera) [1818074] - [net] avoid updating qdisc_xmit_lock_key in netdev_update_lockdep_key() (Ivan Vecera) [1818074] - [include] net: fix kernel-doc warning in (Ivan Vecera) [1818074] - [net] batman-adv: Drop lockdep.h include for soft-interface.c (Ivan Vecera) [1818074] - [net] remove unnecessary variables and callback (Ivan Vecera) [1818074] - [netdrv] macsec: Fix multiple coding style issues (Ivan Vecera) [1818074] - [netdrv] vxlan: add adjacent link to limit depth level (Ivan Vecera) [1818074] - [net] core: add ignore flag to netdev_adjacent structure (Ivan Vecera) [1818074] - [netdrv] team: fix nested locking lockdep warning (Ivan Vecera) [1818074] - [netdrv] bonding: use dynamic lockdep key instead of subclass (Ivan Vecera) [1818074] - [netdrv] bonding: fix unexpected IFF_BONDING bit unset (Ivan Vecera) [1818074] - [net] core: add generic lockdep keys (Ivan Vecera) [1818074] - [net] core: limit nested device depth (Ivan Vecera) [1818074] - [net] udp: rehash on disconnect (Davide Caratti) [1817671] - [net] revert "udp: do rmem bulk free even if the rx sk queue is empty" (Davide Caratti) [1817671] - [net] udp: fix data-race in udp_set_dev_scratch() (Davide Caratti) [1817671] - [net] page_pool: refill page when alloc.count of pool is zero (Petr Oros) [1811201] - [net] page_pool: help compiler remove code in case CONFIG_NUMA=n (Petr Oros) [1811201] - [net] page_pool: handle page recycle for NUMA_NO_NODE condition (Petr Oros) [1811201] - [netdrv] mlx5e: Rx, Update page pool numa node when changed (Petr Oros) [1811201] - [net] page_pool: Don't recycle non-reusable pages (Petr Oros) [1811201] - [net] page_pool: Add API to update numa node (Petr Oros) [1811201] - [include] page_pool: extend tracepoint to also include the page PFN (Petr Oros) [1811201] - [net] page_pool: add destroy attempts counter and rename tracepoint (Petr Oros) [1811201] - [net] page_pool: remove unnecessary variable init (Petr Oros) [1811201] - [net] page_pool: fix logic in __page_pool_get_cached (Petr Oros) [1811201] - [netdrv] team: add missing attribute validation for array index (Hangbin Liu) [1816499] - [netdrv] team: add missing attribute validation for port ifindex (Hangbin Liu) [1816499] - [netdrv] team: Add vlan tx offload to hw_enc_features (Hangbin Liu) [1816499] - [netdrv] team: set slave to promisc if team is already in promisc mode (Hangbin Liu) [1816499] - [netdrv] team: Free BPF filter when unregistering netdev (Hangbin Liu) [1816499] - [netdrv] net: Remove switchdev.h inclusion from team/bond/vlan (Hangbin Liu) [1816499] - [netdrv] team: use operstate consistently for linkup (Hangbin Liu) [1816499] - [netdrv] team: avoid complex list operations in team_nl_cmd_options_set() (Hangbin Liu) [1816499] - [netdev] pass the stuck queue to the timeout handler (Ivan Vecera) [1811203] - [net] flow_dissector: extract more ICMP information (Ivan Vecera) [1795213] - [net] flow_dissector: skip the ICMP dissector for non ICMP packets (Ivan Vecera) [1795213] - [net] flow_dissector: add meaningful comments (Ivan Vecera) [1795213] - [net] vti[6]: fix packet tx through bpf_redirect() in XinY cases (Sabrina Dubroca) [1795145] - [net] xfrm interface: fix packet tx through bpf_redirect() (Sabrina Dubroca) [1795145] - [net] vti[6]: fix packet tx through bpf_redirect() (Sabrina Dubroca) [1795145] - [documentation] Clarify trap's description (Petr Oros) [1809496] - [net] devlink: Wait longer before warning about unset port type (Petr Oros) [1809496] - [documentation] Add a section for devlink-trap testing (Petr Oros) [1809496] - [tools] selftests: devlink_trap: Add test cases for devlink-trap (Petr Oros) [1809496] - [tools] selftests: forwarding: devlink_lib: Add devlink-trap helpers (Petr Oros) [1809496] - [tools] selftests: forwarding: devlink_lib: Allow tests to define devlink device (Petr Oros) [1809496] - [documentation] Add devlink-trap documentation (Petr Oros) [1809496] - [net] devlink: Add generic packet traps and groups (Petr Oros) [1809496] - [net] devlink: Add packet trap infrastructure (Petr Oros) [1809496] - [net] devlink: add warning in case driver does not set port type (Petr Oros) [1809496] - [net] devlink: remove unused devlink_port_get_phys_port_name() function (Petr Oros) [1809496] - [net] tcp: add sanity tests in tcp_add_backlog() (Guillaume Nault) [1790843] - [net] tcp: implement coalescing on backlog queue (Guillaume Nault) [1790843] - [include] tcp: make tcp_space() aware of socket backlog (Guillaume Nault) [1790843] - [net] tcp: take care of compressed acks in tcp_add_reno_sack() (Guillaume Nault) [1790843] - [include] tcp: hint compiler about sack flows (Guillaume Nault) [1790843] - [net] tcp: drop dst in tcp_add_backlog() (Guillaume Nault) [1790843] - [net] drop_monitor: Do not cancel uninitialized work item (Petr Oros) [1810114] - [net] drop_monitor: Use kstrdup (Petr Oros) [1810114] - [net] drop_monitor: Better sanitize notified packets (Petr Oros) [1810114] - [net] drop_monitor: Make timestamps y2038 safe (Petr Oros) [1810114] - [net] drop_monitor: Allow user to start monitoring hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Add support for summary alert mode for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Add support for packet alert mode for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Consider all monitoring states before performing configuration (Petr Oros) [1810114] - [net] drop_monitor: Add basic infrastructure for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Initialize hardware per-CPU data (Petr Oros) [1810114] - [net] drop_monitor: Move per-CPU data init/fini to separate functions (Petr Oros) [1810114] - [maintainers] drop_monitor: Add missing uAPI file to MAINTAINERS file (Petr Oros) [1810114] - [net] drop_monitor: Expose tail drop counter (Petr Oros) [1810114] - [net] drop_monitor: Make drop queue length configurable (Petr Oros) [1810114] - [net] drop_monitor: Add a command to query current configuration (Petr Oros) [1810114] - [net] drop_monitor: Allow truncation of dropped packets (Petr Oros) [1810114] - [net] drop_monitor: Add packet alert mode (Petr Oros) [1810114] - [net] drop_monitor: Add alert mode operations (Petr Oros) [1810114] - [net] drop_monitor: Require CAP_NET_ADMIN for drop monitor configuration (Petr Oros) [1810114] - [net] drop_monitor: Reset per-CPU data before starting to trace (Petr Oros) [1810114] - [net] drop_monitor: Initialize timer and work item upon tracing enable (Petr Oros) [1810114] - [net] drop_monitor: Split tracing enable / disable to different functions (Petr Oros) [1810114] - [net] drop_monitor: Use pre_doit / post_doit hooks (Petr Oros) [1810114] - [net] drop_monitor: Add extack support (Petr Oros) [1810114] - [net] drop_monitor: Avoid multiple blank lines (Petr Oros) [1810114] - [net] drop_monitor: Document scope of spinlock (Petr Oros) [1810114] - [net] drop_monitor: Rename and document scope of mutex (Petr Oros) [1810114] - [net] drop_monitor: Use correct error code (Petr Oros) [1810114] - [net] revert "net: dev: introduce support for sch BYPASS for lockless qdisc" (Paolo Abeni) [1805983] - [net] neighbour: remove neigh_cleanup() method (Ivan Vecera) [1795285] - [include] trace: events: neigh_update: print new state in string format (Ivan Vecera) [1795285] - [net] neigh: hook tracepoints in neigh update code (Ivan Vecera) [1795285] - [net] trace: events: add a few neigh tracepoints (Ivan Vecera) [1795285] - [net] netfilter: nf_tables: add __nft_chain_type_get() (Florian Westphal) [1806888] - [net] devlink: Hang reporter's dump method on a dumpit cb (Andrea Claudi) [1804798] - [net] core: Do not clear VF index for node/port GUIDs query (Petr Oros) [1805312] - [net] core: Populate VF index in struct ifla_vf_guid (Petr Oros) [1805312] - [net] core: Add support for getting VF GUIDs (Petr Oros) [1805312] - [tools] ptp: Extend the test program to check the external time stamp flags (Petr Oros) [1795192] - [netdrv] mlx5: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] igb: Reject requests that fail to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] dp83640: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] mv88e6xxx: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] ptp: Introduce strict checking of external time stamp options (Petr Oros) [1795192] - [netdrv] renesas: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] mlx5: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] igb: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] dp83640: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] mv88e6xxx: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] net: reject PTP periodic output requests with unsupported flags (Petr Oros) [1795192] - [ptp] Validate requests to enable time stamping of external signals (Petr Oros) [1795192] - [tools] ptp: Fix example program to match kernel (Petr Oros) [1795192] - [include] uaccess: add noop untagged_addr definition (Josef Oskera) [1805320] - [include] debugfs: Add debugfs_create_xul() for hexadecimal unsigned long (Josef Oskera) [1795286] - [documentation] debugfs: Document debugfs helper for unsigned long values (Josef Oskera) [1795286] - [net] vsock/virtio: add WARN_ON check on virtio_transport_get_ops() (Stefano Garzarella) [1692797] - [net] vsock/virtio: fix null-pointer dereference in virtio_transport_recv_listen() (Stefano Garzarella) [1692797] - [net] vsock: avoid to assign transport if its initialization fails (Stefano Garzarella) [1692797] - [misc] vsock/vmci: make vmci_vsock_cb_host_called static (Stefano Garzarella) [1692797] - [net] vsock: fix bind() behaviour taking care of CID (Stefano Garzarella) [1692797] - [net] vsock: prevent transport modules unloading (Stefano Garzarella) [1692797] - [misc] vsock/vmci: register vmci_transport only when VMCI guest/host are active (Stefano Garzarella) [1692797] - [net] vsock: add multi-transports support (Stefano Garzarella) [1692797] - [net] hv_sock: set VMADDR_CID_HOST in the hvs_remote_addr_init() (Stefano Garzarella) [1692797] - [net] vsock: move vsock_insert_unbound() in the vsock_create() (Stefano Garzarella) [1692797] - [net] vsock: add vsock_create_connected() called by transports (Stefano Garzarella) [1692797] - [net] vsock: handle buffer_size sockopts in the core (Stefano Garzarella) [1692797] - [net] vsock: add 'struct vsock_sock *' param to vsock_core_get_transport() (Stefano Garzarella) [1692797] - [net] vsock/virtio: add transport parameter to the virtio_transport_reset_no_sock() (Stefano Garzarella) [1692797] - [net] vsock: add 'transport' member in the struct vsock_sock (Stefano Garzarella) [1692797] - [kernel] vsock: remove linux/vm_sockets.h file (Stefano Garzarella) [1692797] - [net] vsock: remove vm_sockets_get_local_cid() (Stefano Garzarella) [1692797] - [net] vsock/vmci: remove unused VSOCK_DEFAULT_CONNECT_TIMEOUT (Stefano Garzarella) [1692797] - [x86] kvm: x86: clear stale x86_emulate_ctxt->intercept value (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: vmx: check descriptor table exits on instruction emulation (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Check IO instruction VM-exit conditions (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Refactor IO bitmap checks into helper function (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Don't emulate instructions in guest mode (Jon Maloy) [1806817] {CVE-2020-2732}- [fs] gfs2: Fix oversight in gfs2_ail1_flush (Robert S Peterson) [1724769] - [kernel] sched/uclamp: Extend sched_setattr() to support utilization clamping (Phil Auld) [1810399] - [kernel] sched/core: Further clarify sched_class::set_next_task() (Phil Auld) [1810399] - [kernel] sched/fair: Use mul_u32_u32() (Phil Auld) [1810399] - [kernel] sched/core: Simplify sched_class::pick_next_task() (Phil Auld) [1810399] - [kernel] sched/core: Optimize pick_next_task() (Phil Auld) [1810399] - [kernel] sched/core: Make pick_next_task_idle() more consistent (Phil Auld) [1810399] - [kernel] sched/fair: Better document newidle_balance() (Phil Auld) [1810399] - [kernel] sched: Fix pick_next_task() vs 'change' pattern race (Phil Auld) [1810399] - [cpufreq] cpufreq: Initialize the governors in core_initcall (Phil Auld) [1810399] - [kernel] sched/vtime: Fix guest/system mis-accounting on task switch (Phil Auld) [1810399] - [kernel] sched/fair/util_est: Implement faster ramp-up EWMA on utilization increases (Phil Auld) [1810399] - [kernel] sched/topology: Allow sched_asym_cpucapacity to be disabled (Phil Auld) [1810399] - [kernel] sched/topology: Don't try to build empty sched domains (Phil Auld) [1810399] - [kernel] sched/topology: Don't set SD_BALANCE_WAKE on cpuset domain relax (Phil Auld) [1810399] - [kernel] membarrier: Fix RCU locking bug caused by faulty merge (Phil Auld) [1810399] - [kernel] sched/core: Fix preempt_schedule() interrupt return comment (Phil Auld) [1810399] - [kernel] sched/membarrier: Return -ENOMEM to userspace on memory allocation failure (Phil Auld) [1810399] - [kernel] sched/membarrier: Skip IPIs when mm->mm_users == 1 (Phil Auld) [1810399] - [tools] selftests, sched/membarrier: Add multi-threaded test (Phil Auld) [1810399] - [kernel] sched/membarrier: Fix p->mm->membarrier_state racy load (Phil Auld) [1810399] - [include] sched/membarrier: Call sync_core only before usermode for same mm (Phil Auld) [1810399] - [kernel] sched/membarrier: Remove redundant check (Phil Auld) [1810399] - [kernel] sched/membarrier: Fix private expedited registration check (Phil Auld) [1810399] - [kernel] tasks, sched/core: RCUify the assignment of rq->curr (Phil Auld) [1810399] - [kernel] tasks, sched/core: With a grace period after finish_task_switch(), remove unnecessary code (Phil Auld) [1810399] - [kernel] tasks, sched/core: Ensure tasks are available for a grace period after leaving the runqueue (Phil Auld) [1810399] - [kernel] tasks: Add a count of task RCU users (Phil Auld) [1810399] - [include] sched/core: Convert task_struct.usage to refcount_t (Phil Auld) [1810399] - [include] sched/core: Convert vcpu_is_preempted() from macro to an inline function (Phil Auld) [1810399] - [kernel] sched/fair: Remove unused cfs_rq_clock_task() function (Phil Auld) [1810399] - [scripts] Kbuild: Handle PREEMPT_RT for version string and magic (Phil Auld) [1810399] - [kernel] sched/fair: Use rq_lock/unlock in online_fair_sched_group (Phil Auld) [1810399] - [kernel] sched: Rework pick_next_task() slow-path (Phil Auld) [1810399] - [kernel] sched: Allow put_prev_task() to drop rq->lock (Phil Auld) [1810399] - [kernel] sched/fair: Expose newidle_balance() (Phil Auld) [1810399] - [kernel] sched: Add task_struct pointer to sched_class::set_curr_task (Phil Auld) [1810399] - [kernel] sched: Rework CPU hotplug task selection (Phil Auld) [1810399] - [kernel] rcu/tree: Fix SCHED_FIFO params (Phil Auld) [1810399] - [kernel] sched: Clean up active_mm reference counting (Phil Auld) [1810399] - [kernel] sched/{rt, deadline}: Fix set_next_task vs pick_next_task (Phil Auld) [1810399] - [kernel] sched: Fix kerneldoc comment for ia64_set_curr_task (Phil Auld) [1810399] - [kernel] stop_machine: Fix stop_cpus_in_progress ordering (Phil Auld) [1810399] - [kernel] sched/psi: Reduce psimon FIFO priority (Phil Auld) [1810399] - [kernel] sched/psi: Do not require setsched permission from the trigger creator (Phil Auld) [1810399] - [x86] x86/kvm: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [x86] x86/dumpstack: Indicate PREEMPT_RT in dumps (Phil Auld) [1810399] - [x86] x86: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] kprobes: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] tracing: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [include] locking/spinlocks: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] rcu: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] sched/preempt: Use CONFIG_PREEMPTION where appropriate (Phil Auld) [1810399] - [kernel] sched/core: Prevent race condition between cpuset and __sched_setscheduler() (Phil Auld) [1810399] - [kernel] rcu/tree: Call setschedule() gp ktread to SCHED_FIFO outside of atomic region (Phil Auld) [1810399] - [kernel] cgroup/cpuset: Change cpuset_rwsem and hotplug lock order (Phil Auld) [1810399] - [kernel] cgroup/cpuset: Convert cpuset_mutex to percpu_rwsem (Phil Auld) [1810399] - [kernel] sched/deadline: Fix bandwidth accounting at all levels after offline migration (Phil Auld) [1810399] - [kernel] cpusets: Rebuild root domain deadline accounting information (Phil Auld) [1810399] - [kernel] sched/core: Streamle calls to task_rq_unlock() (Phil Auld) [1810399] - [kernel] sched/topology: Add partition_sched_domains_locked() (Phil Auld) [1810399] - [kernel] sched/stats: Fix unlikely() use of sched_info_on() (Phil Auld) [1810399] - [kernel] sched/fair: Change task_numa_work() storage to static (Phil Auld) [1810399] - [kernel] sched/fair: Move task_numa_work() init to init_numa_balancing() (Phil Auld) [1810399] - [kernel] sched/fair: Move init_numa_balancing() below task_numa_work() (Phil Auld) [1810399] - [kernel] sched/rt, Kconfig: Unbreak def/oldconfig with CONFIG_PREEMPT=y (Phil Auld) [1810399] - [kernel] sched/rt, Kconfig: Introduce CONFIG_PREEMPT_RT (Phil Auld) [1810399] - [kernel] kconfig: include kernel/Kconfig.preempt from init/Kconfig (Phil Auld) [1810399] - [kernel] sched/core: Fix preempt warning in ttwu (Phil Auld) [1810399] - [kernel] sched/core: Optimize try_to_wake_up() for local wakeups (Phil Auld) [1810399] - [kernel] sched/core: Introduce set_next_task() helper for better code readability (Phil Auld) [1810399] - [kernel] sched/fair: Don't increase sd->balance_interval on newidle balance (Phil Auld) [1810399] - [kernel] sched/fair: Clean up load_balance() condition (Phil Auld) [1810399] - [mm] mm: fix possible PMD dirty bit lost in set_pmd_migration_entry() (Rafael Aquini) [1809698] - [mm] mm, thp: fix defrag setting if newline is not used (Rafael Aquini) [1809698] - [mm] mm/migrate.c: also overwrite error when it is bigger than zero (Rafael Aquini) [1809698] - [mm] mm/mempolicy.c: fix out of bounds write in mpol_parse_str() (Rafael Aquini) [1809698] - [mm] mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is valid (Rafael Aquini) [1809698] - [mm] mm/page-writeback.c: avoid potential division by zero in wb_min_max_ratio() (Rafael Aquini) [1809698] - [mm] mm/gup: fix memory leak in __gup_benchmark_ioctl (Rafael Aquini) [1809698] - [mm] mm: move_pages: return valid node id in status if the page is already on the target node (Rafael Aquini) [1809698] - [mm] mm/zsmalloc.c: fix the migrated zspage statistics (Rafael Aquini) [1809698] - [mm] mm: memcg/slab: wait for !root kmem_cache refcnt killing on root kmem_cache destruction (Rafael Aquini) [1809698] - [mm] mm/mempolicy.c: check range first in queue_pages_test_walk (Rafael Aquini) [1809698] - [mm] mm/memory.c: fix a huge pud insertion race during faulting (Rafael Aquini) [1809698] - [mm] mm: move the backup x_devmap() functions to asm-generic/pgtable.h (Rafael Aquini) [1809698] - [mm] mm/rmap.c: don't reuse anon_vma if we just want a copy (Rafael Aquini) [1809698] - [mm] mm/ksm.c: don't WARN if page is still mapped in remove_stable_node() (Rafael Aquini) [1809698] - [mm] mm/page_io.c: do not free shared swap slots (Rafael Aquini) [1809698] - [mm] mm: thp: handle page cache THP correctly in PageTransCompoundMap (Rafael Aquini) [1809698] - [mm] mm/slub: fix a deadlock in show_slab_objects() (Rafael Aquini) [1809698] - [mm] mm/vmpressure.c: fix a signedness bug in vmpressure_register_event() (Rafael Aquini) [1809698] - [trace] include/trace/events/writeback.h: fix -Wstringop-truncation warnings (Rafael Aquini) [1809698] - [mm] mm/compaction.c: clear total_{migrate, free}_scanned before scanning a new zone (Rafael Aquini) [1809698] - [mm] mm/hmm: fix hmm_range_fault()'s handling of swapped out pages (Rafael Aquini) [1809698] - [mm] mm/migrate.c: initialize pud_entry in migrate_vma() (Rafael Aquini) [1809698] - [kernel] ptrace: restore smp_rmb() in __ptrace_may_access() (Rafael Aquini) [1809698] - [documentation] mm: fix Documentation/vm/hmm.rst Sphinx warnings (Rafael Aquini) [1809698] - [fs] writeback: fix inode cgroup switching comment (Rafael Aquini) [1809698] - [include] mm/page_poison: update comment after code moved (Rafael Aquini) [1809698] - [mm] mm/filemap: pass inclusive 'end_byte' parameter to filemap_range_has_page (Rafael Aquini) [1809698] - [mm] ARM: 8826/1: mm: initialize pfn limits with find_limits() (Rafael Aquini) [1809698] - [fs] mm, proc: report PR_SET_THP_DISABLE in proc (Rafael Aquini) [1809698] - [mm] mm/khugepaged: fix crashes due to misaccounted holes (Rafael Aquini) [1809698] - [include] writeback: don't decrement wb->refcnt if !wb->bdi (Rafael Aquini) [1809698] - [mm] mm/filemap.c: Use existing variable (Rafael Aquini) [1809698] - [fs] removed extra extern file_fdatawait_range (Rafael Aquini) [1809698] - [s390] Revert "s390/dasd: Disable Thin Provisioning to prevent data loss" (Philipp Rudo) [1816984] - [s390] s390/dasd: fix data corruption for thin provisioned devices (Philipp Rudo) [1816984] - [block] virtio-blk: improve virtqueue error to BLK_STS (Philipp Rudo) [1816983] - [block] virtio-blk: fix hw_queue stopped on arbitrary error (Philipp Rudo) [1816983] - [s390] s390/pkey: fix missing length of protected key on return (Philipp Rudo) [1816981] - [s390] s390/mm: fix panic in gup_fast on large pud (Philipp Rudo) [1816980]- [mmc] mmc: core: Use a minimum 1600ms timeout when enabling CACHE ctrl (Yannick Cote) [1811430] - [mmc] mmc: core: Allow BKOPS and CACHE ctrl even if no HPI support (Yannick Cote) [1811430] - [net] net/smc: keep vlan_id for SMC-R in smc_listen_work() (Philipp Rudo) [1796890] - [scripts] redhat: fix modpost.c prerequisites (Frantisek Hrbata) [1818499] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Change the order for clos disable (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Fix result display for turbo-freq auto mode (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Add support for core-power discovery (Prarit Bhargava) [1817068] - [netdrv] can, slip: Protect tty->disc_data in write_wakeup and close with RCU (Steve Best) [1816036] - [kernel] exit: panic before exit_mm() on global init exit (Oleg Nesterov) [1808944] - [fs] nfsd: restore NFSv3 ACL support ("J. Bruce Fields") [1815683] - [fs] nfsd4: Fix kernel crash when reading proc file reply_cache_stats ("J. Bruce Fields") [1815683] - [fs] nfsd: fix cleanup of nfsd_reply_cache_init on failure ("J. Bruce Fields") [1815683] - [fs] nfsd: note inadequate stats locking ("J. Bruce Fields") [1815683] - [fs] nfsd4: drc containerization ("J. Bruce Fields") [1815683] - [fs] nfsd: don't call nfsd_reply_cache_shutdown twice ("J. Bruce Fields") [1815683] - [fs] nfsd: knfsd must use the container user namespace ("J. Bruce Fields") [1815683] - [net] SUNRPC: rsi_parse() should use the current user namespace ("J. Bruce Fields") [1815683] - [net] SUNRPC: Fix the server AUTH_UNIX userspace mappings ("J. Bruce Fields") [1815683] - [fs] lockd: Pass the user cred from knfsd when starting the lockd server ("J. Bruce Fields") [1815683] - [net] SUNRPC: Temporary sockets should inherit the cred from their parent ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Cache the process user cred in the RPC server listener ("J. Bruce Fields") [1815683] - [fs] nfsd: Allow containers to set supported nfs versions ("J. Bruce Fields") [1815683] - [fs] nfsd: Add custom rpcbind callbacks for knfsd ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Allow further customisation of RPC program registration ("J. Bruce Fields") [1815683] - [net] SUNRPC: Clean up generic dispatcher code ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Add a callback to initialise server requests ("J. Bruce Fields") [1815683] - [fs] SUNRPC/nfs: Fix return value for nfs4_callback_compound() ("J. Bruce Fields") [1815683] - [kernel] sched: Avoid scale real weight down to zero (Phil Auld) [1808562] - [nvme] nvme/pci: move cqe check after device shutdown (David Milburn) [1779247 1750267] - [mm] mm, slb: guarantee natural alignment for kmalloc(power-of-two) (Brian Foster) [1814964] - [tools] tools/power turbostat: Support Ice Lake server (Steve Best) [1776467] - [pinctrl] pinctrl: intel: Allow to request locked pads (Prarit Bhargava) [1783115] - [s390] s390/qeth: fix potential deadlock on workqueue flush (Philipp Rudo) [1814783] - [s390] s390/qeth: streamline control code for promisc mode (Philipp Rudo) [1814783] - [s390] scsi: zfcp: fix request object use-after-free in send path causing wrong traces (Philipp Rudo) [1814790] - [s390] s390/pci: Fix possible deadlock in recover_store() (Philipp Rudo) [1814788] - [s390] s390/pci: Recover handle in clp_set_pci_fn() (Philipp Rudo) [1814788] - [s390] scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host (Philipp Rudo) [1814794] - [s390] scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP devices (Philipp Rudo) [1814793] - [s390] s390/cio: fix virtio-ccw DMA without PV (Philipp Rudo) [1814787] - [s390] s390/kaslr: store KASLR offset for early dumps (Philipp Rudo) [1814781] - [mm] s390/mm: fix dynamic pagetable upgrade for hugetlbfs (Philipp Rudo) [1814779] - [char] tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send() (Steve Best) [1808048] - [s390] s390/qeth: fix dangling IO buffers after halt/clear (Philipp Rudo) [1814782] - [virtio] virtio_ring: fix unmap of indirect descriptors (Philipp Rudo) [1797289] - [virtio] virtio_ring: fix return code on DMA mapping fails (Philipp Rudo) [1797289] - [misc] dma-mapping: zero memory returned from dma_alloc_* (Philipp Rudo) [1788928] - [platform] platform/mellanox: fix the mlx-bootctl sysfs (Alaa Hleihel) [1655714] - [platform] platform/mellanox: Add bootctl driver for Mellanox BlueField Soc (Alaa Hleihel) [1655714] - [char] tpm: ibmvtpm: Wait for buffer to be set before proceeding (Steve Best) [1815548] - [scsi] iscsi: Avoid potential deadlock in iscsi_if_rx func (Oleksandr Natalenko) [1815874] - [x86] x86/vector: Remove warning on managed interrupt migration (Peter Xu) [1812331] - [scsi] scsi: lpfc: fix spelling mistake "Notication" -> "Notification" (Dick Kennedy) [1796565] - [scsi] scsi: lpfc: add RDF registration and Link Integrity FPIN logging (Dick Kennedy) [1796565] - [uapi] scsi: fc: Update Descriptor definition and add RDF and Link Integrity FPINs (Dick Kennedy) [1796565]- [kvm] KVM: PPC: Book3S HV: Use __gfn_to_pfn_memslot in HPT page fault handler (Sam Bobroff) [1815491] - [net] tcp: also NULL skb->dev when copy was needed (Florian Westphal) [1775961] - [net] tcp: ensure skb->dev is NULL before leaving TCP stack (Florian Westphal) [1775961]- [mm] mm/memcontrol: use vmstat names for printing statistics (Waiman Long) [1793534] - [base] mm/vmstat: add helpers to get vmstat item names for each enum type (Waiman Long) [1793534] - [mm] mm/vmstat.c: assert that vmstat_text is in sync with stat_items_size (Waiman Long) [1793534] - [mm] mm: memcontrol: dump memory.stat during cgroup OOM (Waiman Long) [1793534] - [mm] mm/memcontrol.c: lost css_put in memcg_expand_shrinker_maps() (Waiman Long) [1793534] - [mm] mm: memcg/slab: fix percpu slab vmstats flushing (Waiman Long) [1793534] - [include] include/linux/memcontrol.h: fix comments based on per-node memcg (Waiman Long) [1793534] - [mm] mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm() (Waiman Long) [1793534] - [mm] mm: memcontrol: fix network errors from failing __GFP_ATOMIC charges (Waiman Long) [1793534] - [mm] mm: slab: make page_cgroup_ino() to recognize non-compound slab pages properly (Waiman Long) [1793534] - [mm] mm: memcontrol: fix NULL-ptr deref in percpu stats flush (Waiman Long) [1793534] - [mm] mm/memcontrol: update lruvec counters in mem_cgroup_move_account (Waiman Long) [1793534] - [mm] mm: memcg: get number of pages on the LRU list in memcgroup base on lru_zone_size (Waiman Long) [1793534] - [mm] mm: memcontrol: fix percpu vmstats and vmevents flush (Waiman Long) [1793534] - [mm] mm, memcg: partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones" (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu slab vmstats on kmem offlining (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu vmevents before releasing memcg (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu vmstats before releasing memcg (Waiman Long) [1793534] - [mm] mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones (Waiman Long) [1793534] - [mm] mm/memcontrol: fix wrong statistics in memory.stat (Waiman Long) [1793534] - [mm] mm: memcontrol: don't batch updates of local VM stats and events (Waiman Long) [1793534] - [mm] mm: memcontrol: fix NUMA round-robin reclaim at intermediate level (Waiman Long) [1793534] - [mm] mm: memcontrol: fix recursive statistics correctness & scalabilty (Waiman Long) [1793534] - [mm] mm: memcontrol: move stat/event counting functions out-of-line (Waiman Long) [1793534] - [mm] mm: memcontrol: make cgroup stats and events query API explicitly local (Waiman Long) [1793534] - [mm] mm, memcg: rename ambiguously named memory.stat counters and functions (Waiman Long) [1793534] - [mm] mm: memcontrol: quarantine the mem_cgroup_nr_lru_pages() API (Waiman Long) [1793534] - [mm] mm: memcontrol: push down mem_cgroup_nr_lru_pages() (Waiman Long) [1793534] - [mm] mm: memcontrol: push down mem_cgroup_node_nr_lru_pages() (Waiman Long) [1793534] - [mm] mm: memcontrol: replace node summing with memcg_page_state() (Waiman Long) [1793534] - [mm] mm: memcontrol: replace zone summing with lruvec_page_state() (Waiman Long) [1793534] - [include] mm: memcontrol: track LRU counts in the vmstats array (Waiman Long) [1793534] - [mm] mm: writeback: use exact memcg dirty counts (Waiman Long) [1793534] - [mm] mm: memcontrol: expose THP events on a per-memcg basis (Waiman Long) [1793534] - [mm] memcg: killed threads should not invoke memcg OOM killer (Waiman Long) [1793534] - [mm] mm, memcg: extract memcg maxable seq_file logic to seq_show_memcg_tunable (Waiman Long) [1793534] - [mm] mm, memcg: create mem_cgroup_from_seq (Waiman Long) [1793534] - [mm] mm/oom_kill.c: fix uninitialized oc->constraint (Waiman Long) [1793534] - [mm] mm, oom: add oom victim's memcg to the oom context information (Waiman Long) [1793534] - [mm] mm, oom: reorganize the oom report in dump_header (Waiman Long) [1793534] - [include] mm: Clarify the implication of adding new node stat items (Waiman Long) [1793534] - [mm] memcg: Revert "Add preemption point in accumulate_memcg_tree()" (Waiman Long) [1793534] - [base] driver core: add dev_groups to all drivers (Don Dutile) [1814347] - [tools] selftests/livepatch: Remove unused local variable in set_ftrace_enabled() (Yannick Cote) [1807115] - [tools] selftests/livepatch: Replace set_dynamic_debug() with setup_config() in README (Yannick Cote) [1807115] - [tools] selftests: livepatch: Fix it to do root uid check and skip (Yannick Cote) [1807115] - [tools] selftests/livepatch: Test interaction with ftrace_enabled (Yannick Cote) [1807115] - [tools] selftests/livepatch: Make dynamic debug setup and restore generic (Yannick Cote) [1807115] - [kernel] ftrace: Introduce PERMANENT ftrace_ops flag (Yannick Cote) [1807115] - [samples] livepatch: Handle allocation failure in the sample of shadow variable API (Yannick Cote) [1807115] - [lib] livepatch/samples/selftest: Use klp_shadow_alloc() API correctly (Yannick Cote) [1807115] - [lib] livepatch/selftest: Clean up shadow variable names and type (Yannick Cote) [1807115] - [samples] livepatch/sample: Use the right type for the leaking data pointer (Yannick Cote) [1807115] - [kernel] kprobes: Allow kprobes coexist with livepatch (Yannick Cote) [1727330 1807115] - [x86] ftrace/x86: Remove mcount() declaration (Yannick Cote) [1807115] - [tools] selftests: livepatch: add missing fragments to config (Yannick Cote) [1807115] - [lib] livepatch: Selftests of the API for tracking system state changes (Yannick Cote) [1807115] - [documentation] livepatch: Documentation of the new API for tracking system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Allow to distinguish different version of system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Basic API to track system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Keep replaced patches until post_patch callback is called (Yannick Cote) [1807115] - [tools] selftests/livepatch: Disable the timeout (Yannick Cote) [1807115] - [kernel] livepatch: Nullify obj->mod in klp_module_coming()'s error path (Yannick Cote) [1807115] - [powerpc] livepatch: Remove klp_check_compiler_support() (Yannick Cote) [1807115] - [x86] ftrace/x86: Remove mcount support (Yannick Cote) [1807115] - [x86] ftrace/x86_32: Remove support for non DYNAMIC_FTRACE (Yannick Cote) [1807115] - [documentation] docs/livepatch: Unify style of livepatch documentation in the ReST format (Yannick Cote) [1807115] - [documentation] docs: livepatch: convert docs to ReST and rename to *.rst (Yannick Cote) [1807115] - [kernel] livepatch: Remove duplicate warning about missing reliable stacktrace support (Yannick Cote) [1807115] - [kernel] livepatch: Use static buffer for debugging messages under rq lock (Yannick Cote) [1807115] - [include] livepatch: Remove stale kobj_added entries from kernel-doc descriptions (Yannick Cote) [1807115] - [kernel] livepatch: Remove duplicated code for early initialization (Yannick Cote) [1807115] - [kernel] livepatch: Remove custom kobject state handling (Yannick Cote) [1807115] - [kernel] livepatch: Convert error about unsupported reliable stacktrace into a warning (Yannick Cote) [1807115] - [kernel] kprobes: Replace p with other pointer types (Yannick Cote) [1727330 1807115]- [drm] drm/bochs: downgrade pci_request_region failure from error to warning (Dave Airlie) [1804735] - [drm] drm/bochs: deinit bugfix (Dave Airlie) [1804735] - [fs] gfs2: fix O_EXCL|O_CREAT handling on cold dcache (Andrew Price) [1811787] - [net] esp: remove the skb from the chain when it's enqueued in cryptd_wq (Xin Long) [1807909] - [powerpc] powerpc/nvdimm: set target_node properly (Diego Domingos) [1815038]- [kernel] posix-cpu-timers: Fix two trivial comments (Prarit Bhargava) [1810244] - [kernel] hrtimer: Annotate lockless access to timer->base (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Fix permission check regression (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Always clear head pointer on dequeue (Prarit Bhargava) [1810244] - [kernel] hrtimer: Add a missing bracket and hide `migration_base' on !SMP (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Make expiry_active check actually work correctly (Prarit Bhargava) [1810244] - [include] posix-timers: Unbreak CONFIG_POSIX_TIMERS=n build (Prarit Bhargava) [1810244] - [kernel] tick: Mark sched_timer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Utilize timerqueue for storage (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Move state tracking to struct posix_cputimers (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Deduplicate rlimit handling (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove pointless comparisons (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of 64bit divisions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Consolidate timer expiry further (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of zero checks (Prarit Bhargava) [1810244] - [kernel] rlimit: Rewrite non-sensical RLIMIT_CPU comment (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Respect INFINITY for hard RTTIME limit (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Switch thread group sampling to array (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Restructure expiry array (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove cputime_expires (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Make expiry checks array based (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide array based sample functions (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Remove the odd field rename defines (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Switch check_*_timers() to array cache (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify set_process_cpu_timer() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify timer queueing (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide array based access to expiry cache (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Move expiry cache into struct posix_cputimers (Prarit Bhargava) [1810244] - [include] sched: Move struct task_cputime to types.h (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Create a container struct (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Move prof/virt_ticks into caller (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sample task times once in expiry check (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of pointer indirection (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify sample functions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove pointless return value check (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_rearm() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_get() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_set() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Consolidate thread group sample code (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Rename thread_group_cputimer() and make it static (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sample directly in timer check (Prarit Bhargava) [1810244] - [kernel] itimers: Use quick sample function (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide quick sample function for itimer (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use common permission check in posix_cpu_timer_create() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use common permission check in posix_cpu_clock_get() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide task validation functions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove tsk argument from run_posix_cpu_timers() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sanitize bogus WARNONS (Prarit Bhargava) [1810244] - [kernel] hrtimer: Don't take expiry_lock when timer is currently migrated (Prarit Bhargava) [1810244] - [kernel] hrtimer: Protect lockless access to timer->base (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Fixup stale comment (Prarit Bhargava) [1810244] - [include] alarmtimers: Avoid rtc.h include (Prarit Bhargava) [1810244] - [include] posix-timers: Cleanup forward declarations and includes (Prarit Bhargava) [1810244] - [kernel] hrtimer: Improve comments on handling priority inversion against softirq kthread (Prarit Bhargava) [1810244] - [kernel] posix-timers: Use a callback for cancel synchronization on PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] posix-timers: Move rcu_head out of it union (Prarit Bhargava) [1810244] - [kernel] posix-timers: Rework cancel retry loops (Prarit Bhargava) [1810244] - [kernel] posix-timers: Cleanup the flag/flags confusion (Prarit Bhargava) [1810244] - [kernel] itimers: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [fs] timerfd: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] alarmtimer: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] sched/deadline: Ensure inactive_timer runs in hardirq context (Prarit Bhargava) [1810244] - [kernel] timers: Prepare support for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Prepare support for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Determine hard/soft expiry mode for hrtimer sleepers on RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Move unmarked hrtimers to soft interrupt expiry on RT (Prarit Bhargava) [1810244] - [kernel] tick: Mark tick related hrtimers to expiry in hard interrupt context (Prarit Bhargava) [1810244] - [kvm] KVM: LAPIC: Mark hrtimer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] watchdog: Mark watchdog_hrtimer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] perf/core: Mark hrtimers to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] hrtimer: Make enqueue mode check work on RT (Prarit Bhargava) [1810244] - [kernel] sched: Mark hrtimers to expire in hard interrupt context (Prarit Bhargava) [1810244] - [staging] hrtimer/treewide: Use hrtimer_sleeper_start_expires() (Prarit Bhargava) [1810244] - [kernel] hrtimer: Provide hrtimer_sleeper_start_expires() (Prarit Bhargava) [1810244] - [kernel] hrtimer: Consolidate hrtimer_init() + hrtimer_init_sleeper() calls (Prarit Bhargava) [1810244] - [kernel] hrtimer: Remove task argument from hrtimer_init_sleeper() (Prarit Bhargava) [1810244] - [kernel] futex: Consolidate duplicated timer setup code (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove private interval storage (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Unbreak timer rearming (Prarit Bhargava) [1810244] - [mm] mm, slub: naive detection of double-free or freelist corruption (Rafael Aquini) [1810288] - [fs] nfs: add minor version to nfs_server_key for fscache (Dave Wysochanski) [1777097] - [edac] EDAC, mellanox: Add ECC support for BlueField DDR4 (Alaa Hleihel) [1725108] - [platform] platform/mellanox: fix potential deadlock in the tmfifo driver (Alaa Hleihel) [1655736] - [platform] platform/mellanox: Add TmFifo driver for Mellanox BlueField Soc (Alaa Hleihel) [1655736] - [mm] powerpc/pmem: Fix kernel crash due to wrong range value usage in flush_dcache_range (Steve Best) [1814279] - [mm] powerpc: Chunk calls to flush_dcache_range in arch_*_memory (Steve Best) [1814279] - [fs] cifs: fix NULL dereference in match_prepath (Leif Sahlberg) [1760879] - [fs] cifs: fail i/o on soft mounts if sessionsetup errors out (Leif Sahlberg) [1798031] - [sound] ALSA: usb-audio: set the interface format after resume on Dell WD19 (Perry Yuan) [1807965] - [fs] cifs: make sure we do not overflow the max EA buffer size (Leif Sahlberg) [1752437]- [netdrv] net/mlx5e: Don't clear the whole vf config when switching modes (mohamad meib) [1814350] - [fs] fuse: fix stack use after return (Miklos Szeredi) [1814666]- [target] scsi: Revert "target: iscsi: Wait for all commands to finish before freeing a session" (Maurizio Lombardi) [1784442] - [infiniband] scsi: Revert "RDMA/isert: Fix a recently introduced regression related to logout" (Maurizio Lombardi) [1784442] - [target] scsi: Revert "target/core: Inline transport_lun_remove_cmd()" (Maurizio Lombardi) [1784442] - [target] scsi: libfc: remove unnecessary assertion on ep variable (Maurizio Lombardi) [1784442] - [infiniband] scsi: RDMA/isert: Fix a recently introduced regression related to logout (Maurizio Lombardi) [1784442] - [target] scsi: target/iblock: Fix protection error with blocks greater than 512B (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Fix a pr_debug() argument (Maurizio Lombardi) [1784442] - [target] scsi: target: iscsi: Wait for all commands to finish before freeing a session (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Release SPC-2 reservations when closing a session (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Document target_cmd_size_check() (Maurizio Lombardi) [1784442] - [target] scsi: target: tcmu: Prevent memory reclaim recursion (Maurizio Lombardi) [1784442] - [scsi] scsi: cxgb4i: remove set but not used variable 'ppmax' (Maurizio Lombardi) [1784442] - [target] scsi: target: remove unused extension parameters (Maurizio Lombardi) [1784442] - [target] scsi: target: fix SendTargets=All string compares (Maurizio Lombardi) [1784442] - [target] scsi: target: Remove tpg_list and se_portal_group.se_tpg_node (Maurizio Lombardi) [1784442] - [target] scsi: target: cxgbit: Fix cxgbit_fw4_ack() (Maurizio Lombardi) [1784442] - [infiniband] IB/hfi1: TID RDMA WRITE should not return IB_WC_RNR_RETRY_EXC_ERR (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Calculate flow weight based on QP MTU for TID RDMA (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure r_tid_ack is valid before building TID RDMA ACK packet (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure full Gen3 speed in a Gen4 system (Kamal Heib) [1786601] - [infiniband] IB/core: Avoid deadlock during netlink message handling (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Fix incorrect error print (Kamal Heib) [1786601] - [infiniband] IB/iser: Support up to 16MB data transfer in a single command (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Add missing cast for 32 bit (Kamal Heib) [1786601] - [documentation] Documentation/infiniband: update name of some functions (Kamal Heib) [1786601] - [infiniband] RDMA/iwpm: Delete unnecessary checks before the macro call "dev_kfree_skb" (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Use existing FIELD_SIZEOF macro (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Remove umem check on dereg MR flow (Kamal Heib) [1786601] - [net] xprtrdma: Send Queue size grows after a reconnect (Kamal Heib) [1786601] - [net] xprtrdma: Clear xprt->reestablish_timeout on close (Kamal Heib) [1786601] - [net] xprtrdma: Recycle MRs after disconnect (Kamal Heib) [1786601] - [net] xprtrdma: Optimize rpcrdma_post_recvs() (Kamal Heib) [1786601] - [net] xprtrdma: Inline XDR chunk encoder functions (Kamal Heib) [1786601] - [infiniband] RDMA/core: Make invalidate_range a device operation (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Use kvcalloc for the dma_list and page_list (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Check for overflow when computing the umem_odp end (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Provide ib_umem_odp_release() to undo the allocs (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Split creating a umem_odp from ib_umem_get (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Make the three ways to create a umem_odp clear (Kamal Heib) [1786601] - [infiniband] RMDA/odp: Consolidate umem_odp initialization (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Make it clearer when a umem is an implicit ODP umem (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Iterate over the whole rbtree directly (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Use the common interval tree library instead of generic (Kamal Heib) [1786601] - [net] xprtrdma: Clean up xprt_rdma_set_connect_timeout() (Kamal Heib) [1786601] - [net] xprtrdma: Use an llist to manage free rpcrdma_reps (Kamal Heib) [1786601] - [net] xprtrdma: Remove rpcrdma_buffer::rb_mrlock (Kamal Heib) [1786601] - [net] xprtrdma: Cache free MRs in each rpcrdma_req (Kamal Heib) [1786601] - [net] xprtrdma: Ensure creating an MR does not trigger FS writeback (Kamal Heib) [1786601] - [net] xprtrdma: Move rpcrdma_mr_get out of frwr_map (Kamal Heib) [1786601] - [net] xprtrdma: Combine rpcrdma_mr_put and rpcrdma_mr_unmap_and_put (Kamal Heib) [1786601] - [net] xprtrdma: Simplify rpcrdma_mr_pop (Kamal Heib) [1786601] - [net] xprtrdma: Rename rpcrdma_buffer::rb_all (Kamal Heib) [1786601] - [net] xprtrdma: Rename CQE field in Receive trace points (Kamal Heib) [1786601] - [infiniband] RDMA: Delete DEBUG code (Kamal Heib) [1786601] - [include] xprtrdma: Boost client's max slot table size to match Linux server (Kamal Heib) [1786601] - [net] xprtrdma: Boost maximum transport header size (Kamal Heib) [1786601] - [net] xprtrdma: Fix calculation of ri_max_segs again (Kamal Heib) [1786601] - [net] xprtrdma: Update obsolete comment (Kamal Heib) [1786601] - [net] xprtrdma: Refresh the documenting comment in frwr_ops.c (Kamal Heib) [1786601] - [net] svcrdma: Use llist for managing cache of recv_ctxts (Kamal Heib) [1786601] - [net] svcrdma: Remove svc_rdma_wq (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Rate limit admin queue error prints (Kamal Heib) [1786601] - [rdma] RDMA/core: Introduce ratelimited ibdev printk functions (Kamal Heib) [1786601] - [net] rdma: Enable ib_alloc_cq to spread work over a device's comp_vectors (Kamal Heib) [1786601] - [infiniband] RDMA/core: fix spelling mistake "Nelink" -> "Netlink" (Kamal Heib) [1786601] - [infiniband] net: Use skb_frag_off accessors (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Expose device statistics (Kamal Heib) [1786601] - [infiniband] RDMA/core: Support netlink commands in non init_net net namespaces (Kamal Heib) [1786601] - [rdma] RDMA: Make most headers compile stand alone (Kamal Heib) [1786601] - [infiniband] RDMA/core: Annotate destroy of mutex to ensure that it is released as unlocked (Kamal Heib) [1786601] - [infiniband] net: Use skb accessors in network drivers (Kamal Heib) [1786601] - [documentation] docs: infiniband: add it to the driver-api bookset (Kamal Heib) [1786601] - [infiniband] IB/hfi1: use the new FOLL_LONGTERM flag to get_user_pages_fast() (Kamal Heib) [1786601] - [documentation] Documentation/infiniband: update from locked to pinned_vm (Kamal Heib) [1786601] - [infiniband] opa_vnic: fix check on record->event, incorrect operator used (Kamal Heib) [1786601] - [infiniband] opa_vnic: Convert vport_idr to XArray (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure ucast_dlid access doesnt exceed bounds (Kamal Heib) [1786601] - [infiniband] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Kamal Heib) [1786601] - [infiniband] treewide: Add SPDX license identifier - Kbuild (Kamal Heib) [1786601] - [infiniband] mm/gup: add make_dirty arg to put_user_pages_dirty_lock() (Kamal Heib) [1786601] - [netdrv] ibmvnic: Do not process device remove during device reset (Steve Best) [1813223] - [bluetooth] Revert "Bluetooth: btusb: driver to enable the usb-wakeup feature" (Gopal Tiwari) [1811534] - [tty] serial: 8250_pci: Make PCI class test non fatal (Prarit Bhargava) [1812742] - [powercap] powercap/intel_rapl: add support for ICX-D (Steve Best) [1485067] - [char] drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds write (Tony Camuso) [1812922] - [char] ipmi:ssif: Handle a possible NULL pointer reference (Tony Camuso) [1812922] - [char] drivers: ipmi: Modify max length of IPMB packet (Tony Camuso) [1812922] - [char] drivers: ipmi: Support raw i2c packet in IPMB (Tony Camuso) [1812922] - [char] ipmi: fix ipmb_poll()'s return type (Tony Camuso) [1812922] - [char] char: Fix Kconfig indentation, continued (Tony Camuso) [1812922] - [char] char: Fix Kconfig indentation (Tony Camuso) [1812922] - [char] ipmi: kill off 'timespec' usage again (Tony Camuso) [1812922] - [char] drivers: ipmi: Support for both IPMB Req and Resp (Tony Camuso) [1812922] - [char] ipmi: Fix memory leak in __ipmi_bmc_register (Tony Camuso) [1812922] - [char] ipmi: bt-bmc: use devm_platform_ioremap_resource() to simplify code (Tony Camuso) [1812922] - [char] ipmi: use *ph to print small buffer (Tony Camuso) [1812922] - [char] ipmi: Don't leave holes in the I2C address list in the ssif driver (Tony Camuso) [1812922] - [char] ipmi: fix return value of ipmi_set_my_LUN (Tony Camuso) [1812922] - [char] ipmi: Convert pr_xxx() to dev_xxx() in the BT code (Tony Camuso) [1812922] - [char] ipmi:dmi: Ignore IPMI SMBIOS entries with a zero base address (Tony Camuso) [1812922] - [char] ipmi_si: fix potential integer overflow on large shift (Tony Camuso) [1812922] - [char] ipmi_si_pci: fix NULL device in ipmi_si error message (Tony Camuso) [1812922] - [char] ipmi: Convert printk(KERN_ to pr_( (Tony Camuso) [1812922] - [char] pci:ipmi: Move IPMI PCI class id defines to pci_ids.h (Tony Camuso) [1812922] - [char] ipmi:powernv: Convert ipmi_smi_t to struct ipmi_smi (Tony Camuso) [1812922] - [fs] NFSv4 fix acl retrieval over krb5i/krb5p mounts (Steve Dickson) [1787627]- [fs] gfs2: Additional information when gfs2_ail1_flush withdraws (Robert S Peterson) [1752976] - [fs] gfs2: Fix lru_count going negative (Robert S Peterson) [1752976] - [fs] gfs2: allow journal replay to hold sd_log_flush_lock (Robert S Peterson) [1752976] - [fs] gfs2: don't allow releasepage to free bd still used for revokes (Robert S Peterson) [1752976] - [fs] gfs2: clean up iopen glock mess in gfs2_create_inode (Robert S Peterson) [1752976] - [fs] gfs2: flesh out delayed withdraw for gfs2_log_flush (Robert S Peterson) [1752976] - [fs] gfs2: Fix incorrect variable name (Robert S Peterson) [1752976] - [fs] gfs2: Do proper error checking for go_sync family of glops functions (Robert S Peterson) [1752976] - [fs] gfs2: Don't demote a glock until its revokes are written (Robert S Peterson) [1752976] - [fs] gfs2: drain the ail2 list after io errors (Robert S Peterson) [1752976] - [fs] gfs2: Withdraw in gfs2_ail1_flush if write_cache_pages fails (Robert S Peterson) [1752976] - [fs] gfs2: Do log_flush in gfs2_ail_empty_gl even if ail list is empty (Robert S Peterson) [1752976] - [fs] gfs2: Check for log write errors before telling dlm to unlock (Robert S Peterson) [1752976] - [fs] gfs2: Prepare to withdraw as soon as an IO error occurs in log write (Robert S Peterson) [1752976] - [fs] gfs2: Issue revokes more intelligently (Robert S Peterson) [1752976] - [fs] gfs2: Add verbose option to check_journal_clean (Robert S Peterson) [1752976] - [fs] gfs2: fix infinite loop when checking ail item count before go_inval (Robert S Peterson) [1752976] - [fs] gfs2: Force withdraw to replay journals and wait for it to finish (Robert S Peterson) [1752976] - [fs] gfs2: Allow some glocks to be used during withdraw (Robert S Peterson) [1752976] - [fs] gfs2: move check_journal_clean to util.c for future use (Robert S Peterson) [1752976] - [fs] gfs2: Ignore dlm recovery requests if gfs2 is withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: Only complain the first time an io error occurs in quota or log (Robert S Peterson) [1752976] - [fs] gfs2: log error reform (Robert S Peterson) [1752976] - [fs] gfs2: Rework how rgrp buffer_heads are managed (Robert S Peterson) [1752976] - [fs] gfs2: clear ail1 list when gfs2 withdraws (Robert S Peterson) [1752976] - [fs] gfs2: Introduce concept of a pending withdraw (Robert S Peterson) [1752976] - [fs] gfs2: Return bool from gfs2_assert functions (Robert S Peterson) [1752976] - [fs] gfs2: Turn gfs2_consist into void functions (Robert S Peterson) [1752976] - [fs] gfs2: Remove usused cluster_wide arguments of gfs2_consist functions (Robert S Peterson) [1752976] - [fs] gfs2: Report errors before withdraw (Robert S Peterson) [1752976] - [fs] gfs2: Split gfs2_lm_withdraw into two functions (Robert S Peterson) [1752976] - [fs] gfs2: Fix possible fs name overflows (Robert S Peterson) [1752976] - [fs] gfs2: Remove active journal side effect from gfs2_write_log_header (Robert S Peterson) [1752976] - [fs] gfs2: Don't loop forever in gfs2_freeze if withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: fix infinite loop in gfs2_ail1_flush on io error (Robert S Peterson) [1752976] - [fs] gfs2: Introduce function gfs2_withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: fix glock reference problem in gfs2_trans_add_unrevoke (Robert S Peterson) [1752976] - [fs] gfs2: make gfs2_log_shutdown static (Robert S Peterson) [1752976] - [fs] gfs2: replace more printk with calls to fs_info and friends (Robert S Peterson) [1752976] - [fs] gfs2: dump fsid when dumping glock problems (Robert S Peterson) [1752976] - [fs] gfs2: simplify gfs2_freeze by removing case (Robert S Peterson) [1752976] - [fs] gfs2: Rename SDF_SHUTDOWN to SDF_WITHDRAWN (Robert S Peterson) [1752976] - [fs] gfs2: Warn when a journal replay overwrites a rgrp with buffers (Robert S Peterson) [1752976] - [fs] gfs2: log which portion of the journal is replayed (Robert S Peterson) [1752976] - [fs] gfs2: kthread and remount improvements (Robert S Peterson) [1752976] - [fs] gfs2: Fix occasional glock use-after-free (Robert S Peterson) [1752976] - [fs] gfs2: Rename sd_log_le_{revoke,ordered} (Robert S Peterson) [1724769] - [watchdog] watchdog: make nowayout sysfs file writable (David Arcari) [1802742] - [watchdog] watchdog: prevent deferral of watchdogd wakeup on RT (David Arcari) [1802742] - [watchdog] watchdog: Fix the race between the release of watchdog_core_data and cdev (David Arcari) [1802742] - [watchdog] watchdog: convert remaining drivers to use SPDX license identifier (David Arcari) [1802742] - [watchdog] watchdog: make the device time out at open_deadline when open_timeout is used (David Arcari) [1802742] - [watchdog] watchdog: introduce CONFIG_WATCHDOG_OPEN_TIMEOUT (David Arcari) [1802742] - [watchdog] watchdog: introduce watchdog.open_timeout commandline parameter (David Arcari) [1802742] - [watchdog] watchdog: let core print error message when registering device fails (David Arcari) [1802742] - [watchdog] watchdog: make watchdog_deferred_registration_add() void (David Arcari) [1802742] - [watchdog] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1802742] - [watchdog] watchdog: add error messages when initializing timeout fails (David Arcari) [1802742] - [watchdog] watchdog: refactor watchdog_init_timeout (David Arcari) [1802742] - [watchdog] watchdog: core: fix null pointer dereference when releasing cdev (David Arcari) [1802742] - [x86] x86/ioapic: Prevent inconsistent state when moving an interrupt (Prarit Bhargava) [1810236] - [x86] x86/fpu: Don't cache access to fpu_fpregs_owner_ctx (Prarit Bhargava) [1810236] - [lib] lib/ubsan: don't serialize UBSAN report (Prarit Bhargava) [1810243] - [lib] ubsan, x86: Annotate and allow __ubsan_handle_shift_out_of_bounds() in uaccess regions (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix pwq ref leak in rescuer_thread() (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix missing kfree(rescuer) in destroy_workqueue() (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix spurious sanity check failures in destroy_workqueue() (Prarit Bhargava) [1810243] - [include] hrtimer: Add kernel doc annotation for HRTIMER_MODE_HARD (Prarit Bhargava) [1810243] - [kernel] genirq: Force interrupt threading on RT (Prarit Bhargava) [1810243] - [include] hrtimer: Introduce HARD expiry mode (Prarit Bhargava) [1810243] - [kernel] workqueue: Remove GPF argument from alloc_workqueue_attrs() (Prarit Bhargava) [1810243] - [kernel] workqueue: Make alloc/apply/free_workqueue_attrs() static (Prarit Bhargava) [1810243] - [tools] objtool: Add UACCESS validation (Prarit Bhargava) [1810243] - [tools] objtool: Handle function aliases (Prarit Bhargava) [1810243] - [lib] ubsan: build ubsan.c more conservatively (Prarit Bhargava) [1810243] - [lib] x86/uaccess, ubsan: Fix UBSAN vs. SMAP (Prarit Bhargava) [1810243] - [tools] objtool: Rewrite alt->skip_orig (Prarit Bhargava) [1810243] - [fs] dlm: Don't swamp the CPU with callbacks queued during recovery (Robert S Peterson) [1752976] - [nvme] nvmet: update AEN list and array at one place (Gopal Tiwari) [1781927] - [nvme] nvmet: Fix controller use after free (Gopal Tiwari) [1781927] - [nvme] nvmet: Fix error print message at nvmet_install_queue function (Gopal Tiwari) [1781927] - [nvme] nvme-pci: remove nvmeq->tags (Gopal Tiwari) [1781927] - [nvme] nvmet: fix dsm failure when payload does not match sgl descriptor (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: switch to use helpers (Gopal Tiwari) [1781927] - [nvme] nvmet: fix per feat data len for get_feature (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Fix read queue count (Gopal Tiwari) [1781927] - [nvme] nvme/pci Limit write queue sizes to possible cpus (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Fix write and poll queue types (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Remove last_cq_head (Gopal Tiwari) [1781927] - [nvme] nvme: Namepace identification descriptor list is optional (Gopal Tiwari) [1781927] - [nvme] Revert "nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T" (Gopal Tiwari) [1781927] - [nvme] nvme: else following return is not needed (Gopal Tiwari) [1781927] - [nvme] nvme: add error message on mismatching controller ids (Gopal Tiwari) [1781927] - [nvme] nvme_fc: add module to ops template to allow module references (Gopal Tiwari) [1781927] - [nvme] nvmet-loop: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: add quirk to avoid changing temperature threshold (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: provide temperature min and max values for each sensor (Gopal Tiwari) [1781927] - [nvme] nvme: Discard workaround for non-conformant devices (Gopal Tiwari) [1781927] - [nvme] nvme: Add hardware monitoring support (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: fix crash in nvme_mpath_clear_ctrl_paths (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: fix a segmentation fault during module unload (Gopal Tiwari) [1781927] - [nvme] nvmet: clean up command parsing a bit (Gopal Tiwari) [1781927] - [nvme] nvmet: fill discovery controller sn, fr and mn correctly (Gopal Tiwari) [1781927] - [nvme] nvmet: Open code nvmet_req_execute() (Gopal Tiwari) [1781927] - [nvme] nvmet: Remove the data_len field from the nvmet_req struct (Gopal Tiwari) [1781927] - [nvme] nvmet: add plugging for read/write when ns is bdev (Gopal Tiwari) [1781927] - [nvme] nvmet: stop using bio_set_op_attrs (Gopal Tiwari) [1781927] - [nvme] nvmet: Introduce nvmet_dsm_len() helper (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Spelling s/resdicovered/rediscovered/ (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Don't check data_len in nvmet_tcp_map_data() (Gopal Tiwari) [1781927] - [nvme] nvme: Introduce nvme_lba_to_sect() (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Don't set the request's data_len (Gopal Tiwari) [1781927] - [nvme] nvmet: Cleanup discovery execute handlers (Gopal Tiwari) [1781927] - [nvme] nvmet-rdma: add unlikely check at nvmet_rdma_map_sgl_keyed (Gopal Tiwari) [1781927] - [nvme] nvme: Cleanup and rename nvme_block_nr() (Gopal Tiwari) [1781927] - [nvme] nvme: introduce "Command Aborted By host" status code (Gopal Tiwari) [1781927] - [nvme] nvmet: Introduce common execute function for get_log_page and identify (Gopal Tiwari) [1781927] - [nvme] nvme: move common call to nvme_cleanup_cmd to core layer (Gopal Tiwari) [1781927] - [nvme] nvmet: add unlikely check at nvmet_req_alloc_sgl (Gopal Tiwari) [1781927] - [nvme] nvme-fc: ensure association_id is cleared regardless of a Disconnect LS (Gopal Tiwari) [1781927] - [nvme] nvme-fc: clarify error messages (Gopal Tiwari) [1781927] - [nvme] nvme: introduce nvme_is_aen_req function (Gopal Tiwari) [1781927] - [nvme] nvme-fc and nvmet-fc: sync with FC-NVME-2 header changes (Gopal Tiwari) [1781927] - [nvme] nvmet: use bio_io_error instead of duplicating it (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Set new cmd set indicator in nvme-fc cmnd iu (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: remove unused groups_only mode in ana log (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: fix possible io hang after ctrl reconnect (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fix possible leakage during error flow (Gopal Tiwari) [1781927] - [nvme] nvmet-loop: fix possible leakage during error flow (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Initialize sk->sk_ll_usec only with NET_RX_BUSY_POLL (Gopal Tiwari) [1781927] - [nvme] nvme: Wait for reset state when required (Gopal Tiwari) [1781927] - [nvme] nvme: Prevent resets during paused controller state (Gopal Tiwari) [1781927] - [nvme] nvme: Restart request timers in resetting state (Gopal Tiwari) [1781927] - [nvme] nvme: Remove ADMIN_ONLY state (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Free tagset if no IO queues (Gopal Tiwari) [1781927] - [nvme] nvme: fix possible deadlock when nvme_update_formats fails (Gopal Tiwari) [1781927] - [include] nvme-fc: Sync nvme-fc header to FC-NVME-2 (Gopal Tiwari) [1781927] - [nvme] nvme: retain split access workaround for capability reads (Gopal Tiwari) [1781927] - [nvme] nvme: Move ctrl sqsize to generic space (Gopal Tiwari) [1781927] - [nvme] nvme: Add ctrl attributes for queue_count and sqsize (Gopal Tiwari) [1781927] - [nvme] nvme: allow 64-bit results in passthru commands (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Fix max_hw_sectors calculation (Gopal Tiwari) [1781927] - [nvme] Added QUIRKs for ADATA XPG SX8200 Pro 512GB (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fix wrong stop condition in io_work (Gopal Tiwari) [1781927] - [nvme] nvme: fix an error code in nvme_init_subsystem() (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: remove superflous check on request sgl (Gopal Tiwari) [1781927] - [nvme] nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Fix a race in controller removal (Gopal Tiwari) [1781927] - [nvme] nvmet: change ppl to lpp (Gopal Tiwari) [1781927] - [nvme] nvme: add uevent variables for controller devices (Gopal Tiwari) [1781927] - [nvme] nvme: Remove redundant assignment of cq vector (Gopal Tiwari) [1781927] - [nvme] nvme: enable aen regardless of the presence of I/O queues (Gopal Tiwari) [1781927] - [nvme] nvme: send discovery log page change events to userspace (Gopal Tiwari) [1781927] - [nvme] nvme: Assign subsys instance from first ctrl (Gopal Tiwari) [1781927] - [nvme] nvmet: fix a wrong error status returned in error log page (Gopal Tiwari) [1781927] - [nvme] nvme: tcp: remove redundant assignment to variable ret (Gopal Tiwari) [1781927] - [nvme] nvme-fabrics: allow discovery subsystems accept a kato (Gopal Tiwari) [1781927] - [nvme] nvmet: Use PTR_ERR_OR_ZERO() in nvmet_init_discovery() (Gopal Tiwari) [1781927] - [nvme] nvme: Treat discovery subsystems as unique subsystems (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Fail transport errors with NVME_SC_HOST_PATH (Gopal Tiwari) [1781927] - [nvme] nvme: make nvme_report_ns_ids propagate error back (Gopal Tiwari) [1781927] - [nvme] nvme: pass status to nvme_error_status (Gopal Tiwari) [1781927] - [nvme] nvme: fix ns removal hang when failing to revalidate due to a transient error (Gopal Tiwari) [1781927] - [nvme] nvme: make nvme_identify_ns propagate errors back (Gopal Tiwari) [1781927] - [nvme] nvme: fail cancelled commands with NVME_SC_HOST_PATH_ERROR (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fail command with NVME_SC_HOST_PATH_ERROR send failed (Gopal Tiwari) [1781927] - [nvme] nvme: include admin_q sync with nvme_sync_queues (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Use rq_dma_dir macro (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Use rq_dma_dir macro (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Add TOS for rdma transport (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Support shared tags across queues for Apple 2018 controllers (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Add support for Apple 2018+ models (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Add support for variable IO SQ element size (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Add TOS for tcp transport (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Use struct nvme_ctrl directly (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Pass the queue to SQ_SIZE/CQ_SIZE macros (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Add TOS for tcp transport (Gopal Tiwari) [1781927] - [nvme] nvme: trace bio completion (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: fix possible NULL deref (Gopal Tiwari) [1781927] - [nvme] nvme: tcp: selects CRYPTO_CRC32C for nvme-tcp (Gopal Tiwari) [1781927] - [nvme] nvme-fabrics: Add type of service (TOS) configuration (Gopal Tiwari) [1781927] - [nvme] nvmet: trace: parse Get LBA Status command in detail (Gopal Tiwari) [1781927] - [nvme] nvmet: fix data units read and written counters in SMART log (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: fix possible memory leak (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: support simple polling (Gopal Tiwari) [1781927] - [nvme] nvme: trace: parse Get LBA Status command in detail (Gopal Tiwari) [1781927] - [include] nvme: add Get LBA Status command opcode (Gopal Tiwari) [1781927] - [nvme] nvme: move sqsize setting to the core (Gopal Tiwari) [1781927] - [nvme] nvme: don't pass cap to nvme_disable_ctrl (Gopal Tiwari) [1781927] - [nvme] nvme-pci: set ctrl sqsize to the device q_depth (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: cleanup nvme_tcp_recv_pdu (Gopal Tiwari) [1781927] - [nvme] nvme: have nvme_init_identify set ctrl->cap (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Use protocol specific operations while reading socket (Gopal Tiwari) [1781927] - [nvme] nvme: Fix cntlid validation when not using NVMEoF (Gopal Tiwari) [1781927] - [infiniband] PCI/P2PDMA: Introduce pci_p2pdma_unmap_sg() (Gopal Tiwari) [1781927] - [nvme] PCI/P2PDMA: Add attrs argument to pci_p2pdma_map_sg() (Gopal Tiwari) [1781927] - [lightnvm] lightnvm: remove nvm_submit_io_sync_fn (Gopal Tiwari) [1781927] - [powerpc] xive: Discard ESB load value when interrupt is invalid (David Gibson) [1744408] - [documentation] kvm: ppc: book3s hv: xive: Allow userspace to set the # of VPs (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Make VP block size configurable (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Set kvm->arch.xive when VPs are allocated (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Compute the VP id in a common helper (David Gibson) [1744408] - [powerpc] xive: Implement get_irqchip_state method for XIVE to fix shutdown race (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Free escalation interrupts before disabling the VP (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Ensure VP isn't already in use (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: Fix regression on big endian hosts (David Gibson) [1725763] - [powerpc] 64s: Fix misleading SPR and timebase information (David Gibson) [1725763] - [powerpc] powernv: Add ultravisor message log interface (David Gibson) [1725763] - [powerpc] powernv/opal-msglog: Refactor memcons code (David Gibson) [1725763] - [powerpc] kvm: Use UV_RETURN ucall to return to ultravisor (David Gibson) [1725763] - [powerpc] powernv: Access LDBAR only if ultravisor disabled (David Gibson) [1725763] - [powerpc] powernv/idle: Fix restore of SPRN_LDBAR for POWER9 stop state (David Gibson) [1725763] - [powerpc] powernv/idle: Restore AMR/UAMOR/AMOR/IAMR after idle (David Gibson) [1725763] - [powerpc] 64s: Reimplement book3s idle code in C (David Gibson) [1725763] - [powerpc] revert "powerpc/powernv/idle: Restore IAMR after idle" (David Gibson) [1725763] - [powerpc] revert "powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle" (David Gibson) [1725763] - [powerpc] mm: Write to PTCR only if ultravisor disabled (David Gibson) [1725763] - [powerpc] mm: Use UV_WRITE_PATE ucall to register a PATE (David Gibson) [1725763] - [powerpc] powernv: Introduce FW_FEATURE_ULTRAVISOR (David Gibson) [1725763] - [powerpc] kernel: Add ucall_norets() ultravisor call handler (David Gibson) [1725763] - [documentation] documentation/powerpc: Ultravisor API (David Gibson) [1725763] - [documentation] documentation/powerpc: Add ELF note documentation (David Gibson) [1725763] - [powerpc] Add PowerPC Capabilities ELF note (David Gibson) [1725763] - [netdrv] mlx5e: allow TSO on VXLAN over VLAN topologies (Davide Caratti) [1780643] - [net] bluetooth: Add debug setting for changing minimum encryption key size (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: Let hidp_send_message return number of queued bytes (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: search for destination address in all peers (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: always check destination address (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: check neighbour table for SLAAC (Gopal Tiwari) [1764976] - [net] bluetooth: Add SMP workaround Microsoft Surface Precision Mouse bug (Gopal Tiwari) [1764976] - [net] bluetooth: Use controller sets when available (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Check bearer type on __l2cap_global_chan_by_addr (Gopal Tiwari) [1764976] - [net] bluetooth: validate BLE connection interval updates (Gopal Tiwari) [1764976] - [net] bluetooth: Add support for LE ping feature (Gopal Tiwari) [1764976] - [net] bluetooth: Check state in l2cap_disconnect_rsp (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: NUL terminate a string in the compat ioctl (Gopal Tiwari) [1764976] - [net] bluetooth: Ignore CC events not matching the last HCI command (Gopal Tiwari) [1764976] - [net] bluetooth: Align minimum encryption key size for LE and BR/EDR connections (Gopal Tiwari) [1764976] - [net] bluetooth: hci_core: Don't stop BT if the BD address missing in dts (Gopal Tiwari) [1764976] - [net] bluetooth: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: Fix incorrect pointer arithmatic in ext_adv_report_evt (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: fix buffer overflow (Gopal Tiwari) [1764976] - [net] bluetooth: Add return check for L2CAP security level set (Gopal Tiwari) [1764976] - [net] bluetooth: Fix not initializing L2CAP tx_credits (Gopal Tiwari) [1764976] - [net] bluetooth: Check address length before reading address field (Gopal Tiwari) [1764976] - [net] bluetooth: Add quirk for reading BD_ADDR from fwnode property (Gopal Tiwari) [1764976] - [net] bluetooth: mgmt: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: a2mp: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: hci_event: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: Fix decrementing reference count twice in releasing socket (Gopal Tiwari) [1764976] - [net] bluetooth: make hw_err static, reduces object code size (Gopal Tiwari) [1764976] - [net] bluetooth: Allow driver specific cmd timeout handling (Gopal Tiwari) [1764976] - [net] bluetooth: Mark expected switch fall-throughs (Gopal Tiwari) [1764976] - [net] bluetooth: Check L2CAP option sizes returned from l2cap_get_conf_opt (Gopal Tiwari) [1764976] - [net] Bluetooth: Fix locking in bt_accept_enqueue() for BH context (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: Fix debugfs_simple_attr.cocci warnings (Gopal Tiwari) [1764976] - [net] bluetooth: Fix unnecessary error message for HCI request completion (Gopal Tiwari) [1764976] - [net] bluetooth: clean an indentation issue, remove extraneous space (Gopal Tiwari) [1764976] - [net] bluetooth: Change to use DEFINE_SHOW_ATTRIBUTE macro (Gopal Tiwari) [1764976] - [net] bluetooth: Remove redundant check on status (Gopal Tiwari) [1764976] - [net] bluetooth: Errata Service Release 8, Erratum 3253 (Gopal Tiwari) [1764976] - [net] bluetooth: Use separate L2CAP LE credit based connection result values (Gopal Tiwari) [1764976] - [net] rfcomm: get rid of mentioning TIOC[SG]SERIAL (Gopal Tiwari) [1764976] - [net] bluetooth: Fix debugfs NULL pointer dereference (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Detect if remote is not able to use the whole MPS (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Derive rx credits from MTU and MPS (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Derive MPS from connection MTU (Gopal Tiwari) [1764976] - [net] bluetooth: Add definitions and track LE resolve list modification (Gopal Tiwari) [1764976] - [net] bluetooth: Remove unnecessary smp_mb__{before, after}_atomic (Gopal Tiwari) [1764976] - [net] bluetooth: smp: fix crash in unpairing (Gopal Tiwari) [1764976] - [net] bluetooth: smp: Fix trying to use non-existent local OOB data (Gopal Tiwari) [1764976] - [net] bluetooth: Use correct tfm to generate OOB data (Gopal Tiwari) [1764976] - [net] hidp: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] hidp: constify hidp_connection_add() (Gopal Tiwari) [1764976] - [net] cmtp: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] bnep: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] bluetooth: Add definitions for LE set address resolution (Gopal Tiwari) [1764976] - [net] bluetooth: remove redundant variables 'adv_set' and 'cp' (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: Fix handling of strncpy for hid->name information (Gopal Tiwari) [1764976] - [net] bluetooth: Add new quirk for non-persistent setup settings (Gopal Tiwari) [1764976] - [net] bluetooth: Handle ADv set terminated event (Gopal Tiwari) [1764976] - [net] bluetooth: Implement secondary advertising on different PHYs (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Set ADV set random address (Gopal Tiwari) [1764976] - [net] bluetooth: Implement disable and removal of adv instance (Gopal Tiwari) [1764976] - [net] bluetooth: Use ext adv for directed adv (Gopal Tiwari) [1764976] - [net] bluetooth: Implement PHY changed event (Gopal Tiwari) [1764976] - [net] bluetooth: Handle extended ADV PDU types (Gopal Tiwari) [1764976] - [net] bluetooth: Use Set ext adv/scan rsp data if controller supports (Gopal Tiwari) [1764976] - [net] bluetooth: Impmlement extended adv enable (Gopal Tiwari) [1764976] - [net] bluetooth: Define PHY flags in hdev and set 1M as default (Gopal Tiwari) [1764976] - [net] bluetooth: Read no of adv sets during init (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Get PHY Configuration mgmt command (Gopal Tiwari) [1764976] - [net] bluetooth: Use selected PHYs in extended connect (Gopal Tiwari) [1764976] - [net] bluetooth: Set Scan PHYs based on selected PHYs by user (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Set PHY Confguration command (Gopal Tiwari) [1764976] - [net] bluetooth: Add defines for BREDR pkt_type (Gopal Tiwari) [1764976] - [net] bluetooth: Use lock_sock_nested in bt_accept_enqueue (Gopal Tiwari) [1764976] - [net] bluetooth: avoid killing an already killed socket (Gopal Tiwari) [1764976] - [net] bluetooth: Use extended LE Connection if supported (Gopal Tiwari) [1764976] - [net] bluetooth: Introduce helpers for le conn status and complete (Gopal Tiwari) [1764976] - [net] bluetooth: Process extended ADV report event (Gopal Tiwari) [1764976] - [net] bluetooth: Use extended scanning if controller supports (Gopal Tiwari) [1764976] - [net] bluetooth: Introduce helpers for LE set scan start and complete (Gopal Tiwari) [1764976] - [net] bluetooth: Store Resolv list size (Gopal Tiwari) [1764976] - [net] bluetooth: Add HCI command for clear Resolv list (Gopal Tiwari) [1764976] - [leds] triggers: let struct (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Skip 1 error print in device_want_to_sleep() (Gopal Tiwari) [1764976] - [bluetooth] btqca: Reset download type to default (Gopal Tiwari) [1764976] - [bluetooth] btqca: release_firmware after qca_inject_cmd_complete_event (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Send VS pre shutdown command (Gopal Tiwari) [1764976] - [bluetooth] btqca: Use correct byte format for opcode of injected command (Gopal Tiwari) [1764976] - [bluetooth] btqca: Add a short delay before downloading the NVM (Gopal Tiwari) [1764976] - [bluetooth] btusb: Fix error return code in btusb_mtk_setup_firmware() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Use kfree_skb() instead of kfree() (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add protocol support for MediaTek MT7663U USB devices (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add protocol support for MediaTek MT7668U USB devices (Gopal Tiwari) [1764976] - [bluetooth] Add new 13d3:3491 QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] Add new 13d3:3501 QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] hci_bcsp: Fix memory leak in rx_skb (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for RTL8723DU (Gopal Tiwari) [1764976] - [bluetooth] btmtkuart: add an implementation for clock osc property (Gopal Tiwari) [1764976] - [bluetooth] btmtkuart: add an implementation for boot-gpios property (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4359C0 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Load customized NVM based on the device property (Gopal Tiwari) [1764976] - [bluetooth] hci_mrvl: Add serdev support (Gopal Tiwari) [1764976] - [bluetooth] hci_mrvl: Wait for final ack before switching baudrate (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Add function to wait for characters to be sent (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: wcn3990: Drop baudrate change vendor event (Gopal Tiwari) [1764976] - [bluetooth] btqca: inject command complete event during fw download (Gopal Tiwari) [1764976] - [bluetooth] Cleanup formatting and coding style (Gopal Tiwari) [1764976] - [bluetooth] btrtl: HCI reset on close for Realtek BT chip (Gopal Tiwari) [1764976] - [bluetooth] hci_ll: Refactor download_firmware (Gopal Tiwari) [1764976] - [bluetooth] hci_ll: set operational frequency earlier (Gopal Tiwari) [1764976] - [bluetooth] btsdio: Do not bind to non-removable BCM4356 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Rename STATE_ to QCA_ (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM2076B1 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Added support for WCN3998 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Fix crash with non-serdev devices (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Give enough time to ROME controller to bootup (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Fix empty regulator supplies for Intel Macs (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM2076B1 UART Bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM43341B (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: add support for SD8987 chipset (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Drop newline with bt_dev logging macros (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Fix hdev->stat.byte_rx accumulation (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Add runtime PM support to SDIO based Bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Add a bit definition for CHLPCR (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Fixed incorrect type in assignment (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: fix spelling mistake "sliped" -> "slipped" (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: fix uninitialized symbol errors in btmtksdio_rx_packet (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Use module_sdio_driver helper (Gopal Tiwari) [1764976] - [bluetooth] mediatek: add support for MediaTek MT7663S and MT7668S SDIO devices (Gopal Tiwari) [1764976] - [bluetooth] btqca: Fix misspelling of 'baudrate' (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add helper function to get the chip family (Gopal Tiwari) [1764976] - [bluetooth] btusb: request wake pin with NOAUTOEN (Gopal Tiwari) [1764976] - [bluetooth] mediatek: add support for MediaTek MT7663U and MT7668U UART devices (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Reduce delay after sending baudrate request for WCN3990 (Gopal Tiwari) [1764976] - [bluetooth] btusb: add QCA6174A compatible properties (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Use msleep() instead of open coding it (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add delay after power-off pulse (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Move boot delay to qca_send_power_pulse() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Pass boolean 'on/off' to qca_send_power_pulse() (Gopal Tiwari) [1764976] - [bluetooth] btqcomsmd: use HCI_QUIRK_USE_BDADDR_PROPERTY (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Set HCI_QUIRK_USE_BDADDR_PROPERTY for wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in hci_uart_set_proto() (Gopal Tiwari) [1764976] - [bluetooth] mediatek: update the common setup between MT7622 and other devices (Gopal Tiwari) [1764976] - [bluetooth] mediatek: pass a pointer to mtk_hci_wmt_sync (Gopal Tiwari) [1764976] - [bluetooth] mediatek: fix up an error path to restore bdev->tx_state (Gopal Tiwari) [1764976] - [bluetooth] mediatek: trivial typo fix (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Initialize hci_dev before open() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Disable IBS state machine and flush Tx buffer (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Deassert RTS while baudrate change command (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: use wait_until_sent() for power pulses (Gopal Tiwari) [1764976] - [bluetooth] remove redundant zero check on count (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add shutdown routine for BTUSB_INTEL_NEW devices (Gopal Tiwari) [1764976] - [bluetooth] btusb: btusb_intel_cmd_timeout: use sleeping functions (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Restore old logic to assume firmware is already loaded (Gopal Tiwari) [1764976] - [bluetooth] btusb: Use the cmd_timeout method to reset the Intel BT chip (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: add support for sd8977 chipset (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: Drop unused GPIO includes (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: lower log level of informational message (Gopal Tiwari) [1764976] - [bluetooth] hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: improve printk messages (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add helper to set device address (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4329B1 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Handle specific unknown packets after firmware loading (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Turn off RTL8723BS on suspend, reprobe on resume (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add suspend / resume ops (Gopal Tiwari) [1764976] - [bluetooth] hci_intel: clean an indentation issue, remove extraneous spaces (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Remove setting of HCI_QUIRK_RESET_ON_CLOSE (Gopal Tiwari) [1764976] - [bluetooth] Remove unnecessary smp_mb__after_atomic() barriers (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add BCM20702A1 variant (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Wait for device to come out of reset after power on (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add support for regulator supplies (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add compatible string for BCM4330 (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM43430A0 (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add support for LPO clock (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Use "txco" and "extclk" to get clock reference (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Simplify clk_get error handling (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Handle deferred probing for the clock supply (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add support for controller debug logs (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add support for 0cf3:535b QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] btsdio: Do not bind to non-removable BCM43430 (Gopal Tiwari) [1764976] - [bluetooth] ath3k: add more information to error message (Gopal Tiwari) [1764976] - [bluetooth] bt3c_cs: Fix obsolete function (Gopal Tiwari) [1764976] - [bluetooth] btrsi: fix bt tx timeout issue (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4335C0 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for RTL8822C with USB interface (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Fixed error space required before open paranethesis (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add poweroff support during hci down for wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add quirk for BTUSB_INTEL_NEW (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Make array extension_sig static, shrinks object size (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Remove serdev_device_open/close function calls (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Remove hdev dereference in qca_close() (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: clear HCI_UART_PROTO_READY to avoid closing proto races (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Add protocol check in hci_uart_dequeue() (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Free rw_semaphore on close (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Fix memory leak (Gopal Tiwari) [1764976] - [bluetooth] Make BT_HCIUART_RTL configuration option depend on ACPI (Gopal Tiwari) [1764976] - [bluetooth] mediatek: pass correct size to h4_recv_buf() (Gopal Tiwari) [1764976] - [bluetooth] Introduce BT_HCIUART_RTL configuration option (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Add protocol support for MediaTek serial devices (Gopal Tiwari) [1764976] - [bluetooth] btqca: Introduce HCI_EV_VENDOR and use it (Gopal Tiwari) [1764976] - [bluetooth] h5: Fix missing dependency on BT_HCIUART_SERDEV (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add support for Qualcomm Bluetooth chip wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Enable 3.2 Mbps operating speed (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add wrapper functions for setting UART speed (Gopal Tiwari) [1764976] - [bluetooth] btqca: Add wcn3990 firmware download support (Gopal Tiwari) [1764976] - [bluetooth] btqca: Redefine qca_uart_setup() to generic function (Gopal Tiwari) [1764976] - [bluetooth] btqca: Rename ROME specific functions to generic functions (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for enable and device-wake GPIOs (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for the RTL8723BS (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add vendor setup, open, and close callbacks (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for serdev enumerated devices (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add support for retrieving the UART settings (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Use rtl_dev_err and rtl_dev_info (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for a config filename postfix (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add support for the RTL8723BS and RTL8723DS chips (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add MODULE_FIRMWARE declarations (Gopal Tiwari) [1764976] - [bluetooth] btrtl: split the device initialization into smaller parts (Gopal Tiwari) [1764976] - [bluetooth] btusb: Release RF resource on BT shutdown (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Replace GFP_ATOMIC with GFP_KERNEL (Gopal Tiwari) [1764976] - [bluetooth] hci_intel: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete() (Gopal Tiwari) [1764976] - [bluetooth] btusb: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete() (Gopal Tiwari) [1764976] - [bluetooth] bfusb: Replace GFP_ATOMIC with GFP_KERNEL in bfusb_send_frame() (Gopal Tiwari) [1764976] - [bluetooth] bluecard_cs: Replace GFP_ATOMIC with GFP_KERNEL in bluecard_hci_set_baud_rate() (Gopal Tiwari) [1764976] - [bluetooth] bpa10x: Replace GFP_ATOMIC with GFP_KERNEL in bpa10x_send_frame() (Gopal Tiwari) [1764976] - [bluetooth] btmrvl_sdio: Replace GFP_ATOMIC with GFP_KERNEL in btmrvl_sdio_card_to_host() (Gopal Tiwari) [1764976] - [bluetooth] btusb: use irqsave() in URB's complete callback (Gopal Tiwari) [1764976] - [bluetooth] Add a new Realtek 8723DE ID 0bda:b009 (Gopal Tiwari) [1764976]- Revert "[redhat] switch secureboot kernel image signing to release keys" (Frantisek Hrbata) - [powerpc] powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable (David Hildenbrand) [1812874] - [x86] kvm/svm: PKU not currently supported (Wei Huang) [1789159] - [x86] Remove the unsupported check for Cooper Lake (David Arcari) [1813921]- [netdrv] net/mlx5e: Show/set Rx network flow classification rules on ul rep (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Init ethtool steering for representors (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Show/set Rx flow indir table and RSS hash key on ul rep (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Introduce root ft concept for representors netdevs (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5: E-Switch, Use vport metadata matching only when mandatory (Alaa Hleihel) [1795156] - [nvme] nvme: log additional message for controller status (David Milburn) [1752952]- [powerpc] powerpc: fix hardware PMU exception bug on PowerVM compatibility mode systems (Desnes Augusto Nunes do Rosario) [1755221] - [mm] powerpc/book3s64/radix: Remove WARN_ON in destroy_context() (Steve Best) [1812821] - [kernel] rcutorture: Upper case solves the case of the vanishing NULL pointer (Waiman Long) [1810247] - [tools] torture: Suppress propagating trace_printk() warning (Waiman Long) [1810247] - [kernel] rcutorture: Dump trace buffer for callback pipe drain failures (Waiman Long) [1810247] - [tools] torture: Add --trust-make to suppress "make clean" (Waiman Long) [1810247] - [tools] torture: Make --cpus override idleness calculations (Waiman Long) [1810247] - [tools] torture: Run kernel build in source directory (Waiman Long) [1810247] - [tools] torture: Add function graph-tracing cheat sheet (Waiman Long) [1810247] - [tools] torture: Capture qemu output (Waiman Long) [1810247] - [tools] rcutorture: Tweak kvm options (Waiman Long) [1810247] - [kernel] rcutorture: Add trivial RCU implementation (Waiman Long) [1810247] - [kernel] rcutorture: Halt forward-progress checks at end of run (Waiman Long) [1810247] - [kernel] rcutorture: Give the scheduler a chance on PREEMPT && NO_HZ_FULL kernels (Waiman Long) [1810247] - [tools] rcutorture: Exempt TREE01 from forward-progress testing (Waiman Long) [1810247] - [kernel] rcutorture: Exempt tasks RCU from timely draining of grace periods (Waiman Long) [1810247] - [tools] rcutorture: Provide rudimentary Makefile (Waiman Long) [1810247] - [tools] torture: Make kvm-find-errors.sh and kvm-recheck.sh provide exit status (Waiman Long) [1810247] - [kernel] torture: Allow inter-stutter interval to be specified (Waiman Long) [1810247] - [kernel] rcutorture: Fix stutter_wait() return value and freelist checks (Waiman Long) [1810247] - [kernel] rcutorture: Add cond_resched() to forward-progress free-up loop (Waiman Long) [1810247] - [tools] rcutorture: Add cpu0 to the set of CPUs to add jitter (Waiman Long) [1810247] - [tools] rcutorture: Select from only online CPUs (Waiman Long) [1810247] - [kernel] rcu/sync: Simplify the state machine (Waiman Long) [1810247] - [kernel] locking/percpu-rwsem: Add DEFINE_PERCPU_RWSEM(), use it to initialize cgroup_threadgroup_rwsem (Waiman Long) [1810247] - [kernel] rcu/sync: Kill rcu_sync_type/gp_type (Waiman Long) [1810247] - [kernel] rcu: Make __call_srcu static (Waiman Long) [1810247] - [kernel] rcu: Upgrade sync_exp_work_done() to smp_mb() (Waiman Long) [1810247] - [documentation] doc: Remove ".vnet" from paulmck email addresses (Waiman Long) [1810247] - [kernel] rcu: Set a maximum limit for back-to-back callback invocation (Waiman Long) [1810247] - [kernel] rcu: Correctly unlock root node in rcu_check_gp_start_stall() (Waiman Long) [1810247] - [kernel] rcu: Dump specified number of blocked tasks (Waiman Long) [1810247] - [kernel] rcu: Remove unused rdp local from synchronize_rcu_expedited() (Waiman Long) [1810247] - [kernel] rcu: Rename rcu_data's ->deferred_qs to ->exp_deferred_qs (Waiman Long) [1810247] - [kernel] rcu: Add checks for dynticks counters in rcu_is_cpu_rrupt_from_idle() (Waiman Long) [1810247] - [kernel] rcu: Avoid self-IPI in sync_sched_exp_online_cleanup() (Waiman Long) [1810247] - [kernel] rcu: Avoid self-IPI in sync_rcu_exp_select_node_cpus() (Waiman Long) [1810247] - [kernel] rcu: Inline invoke_rcu_callbacks() into its sole remaining caller (Waiman Long) [1810247] - [kernel] rcu: Use irq_work to get scheduler's attention in clean context (Waiman Long) [1810247] - [kernel] rcu: Allow rcu_read_unlock_special() to raise_softirq() if in_irq() (Waiman Long) [1810247] - [kernel] rcu: Only do rcu_read_unlock_special() wakeups if expedited (Waiman Long) [1810247] - [kernel] rcu: Check for wakeup-safe conditions in rcu_read_unlock_special() (Waiman Long) [1810247] - [kernel] rcu: Enable elimination of Tree-RCU softirq processing (Waiman Long) [1810247] - [kernel] rcuperf: Fix cleanup path for invalid perf_type strings (Waiman Long) [1810247] - [kernel] rcutorture: Fix cleanup path for invalid torture_type strings (Waiman Long) [1810247] - [kernel] rcutorture: Fix expected forward progress duration in OOM notifier (Waiman Long) [1810247] - [kernel] rcutorture: Remove ->ext_irq_conflict field (Waiman Long) [1810247] - [kernel] rcutorture: Make rcutorture_extend_mask() comment match the code (Waiman Long) [1810247] - [tools] tools/.../rcutorture: Convert to SPDX license identifier (Waiman Long) [1810247] - [kernel] torture: Don't try to offline the last CPU (Waiman Long) [1810247] - [kernel] rcu: Fix nohz status in stall warning (Waiman Long) [1810247] - [kernel] rcu: Move forward-progress checkers into tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Move irq-disabled stall-warning checking to tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Organize functions in tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Move FAST_NO_HZ stall-warning code to tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Inline RCU stall-warning info helper functions (Waiman Long) [1810247] - [kernel] rcu: Move rcu_print_task_exp_stall() to tree_exp.h (Waiman Long) [1810247] - [kernel] rcu: Inline RCU task stall-warning helper functions (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of tree.c (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of tree_plugin.h (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of update.c (Waiman Long) [1810247] - [kernel] srcu: Remove cleanup_srcu_struct_quiesced() (Waiman Long) [1810247] - [kernel] srcu: Check for in-flight callbacks in _cleanup_srcu_struct() (Waiman Long) [1810247] - [kernel] rcu: Correct READ_ONCE()/WRITE_ONCE() for ->rcu_read_unlock_special (Waiman Long) [1810247] - [kernel] rcu: Fix typo in tree_exp.h comment (Waiman Long) [1810247] - [kernel] rcu: Eliminate redundant NULL-pointer check (Waiman Long) [1810247] - [kernel] rcu: Fix force_qs_rnp() header comment (Waiman Long) [1810247] - [kernel] rcu: Update jiffies_to_sched_qs and adjust_jiffies_till_sched_qs() comments (Waiman Long) [1810247] - [kernel] rcu: Do a single rhp->func read in rcu_head_after_call_rcu() (Waiman Long) [1810247] - [kernel] rcu: Default jiffies_to_sched_qs to jiffies_till_sched_qs (Waiman Long) [1810247] - [kernel] rcu: Fix self-wakeups for grace-period kthread (Waiman Long) [1810247] - [kernel] rcu: Report error for bad rcu_nocbs= parameter values (Waiman Long) [1810247] - [kernel] rcu: Allow rcu_nocbs= to specify all CPUs (Waiman Long) [1810247] - [kernel] rcu: Move common code out of if-else block (Waiman Long) [1810247] - [kernel] rcu: Set rcutree.kthread_prio sysfs access to read-only (Waiman Long) [1810247] - [kernel] rcu: Make exit_rcu() handle non-preempted RCU readers (Waiman Long) [1810247] - [kernel] rcu: rcu_qs -- Use raise_softirq_irqoff to not save irqs twice (Waiman Long) [1810247] - [kernel] rcu: Avoid unnecessary softirq when system is idle (Waiman Long) [1810247] - [kernel] rcu: Unconditionally expedite during suspend/hibernate (Waiman Long) [1810247] - [kernel] rcu/tree: Convert to SPDX license identifier (Waiman Long) [1810247] - [kernel] srcu: Remove srcu_queue_delayed_work_on() (Waiman Long) [1810247] - [kernel] sched/fair: Define sched_idle_cpu() only for SMP configurations (Phil Auld) [1419746] - [kernel] sched/fair: Load balance aggressively for SCHED_IDLE CPUs (Phil Auld) [1419746] - [kernel] sched/fair : Improve update_sd_pick_busiest for spare capacity case (Phil Auld) [1419746] - [kernel] sched/fair: Fix find_idlest_group() to handle CPU affinity (Phil Auld) [1419746] - [kernel] sched/cfs: fix spurious active migration (Phil Auld) [1419746] - [kernel] sched/fair: Add comments for group_type and balancing at SD_NUMA level (Phil Auld) [1419746] - [kernel] sched/fair: Fix rework of find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Rework find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Optimize find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Use load instead of runnable load in wakeup path (Phil Auld) [1419746] - [kernel] sched/fair: Use utilization to select misfit task (Phil Auld) [1419746] - [kernel] sched/fair: Spread out tasks evenly when not overloaded (Phil Auld) [1419746] - [kernel] sched/fair: Use load instead of runnable load in load_balance() (Phil Auld) [1419746] - [kernel] sched/fair: Use rq->nr_running when balancing load (Phil Auld) [1419746] - [kernel] sched/fair: Rework load_balance() (Phil Auld) [1419746] - [kernel] sched/fair: Remove meaningless imbalance calculation (Phil Auld) [1419746] - [kernel] sched/fair: Rename sg_lb_stats::sum_nr_running to sum_h_nr_running (Phil Auld) [1419746] - [kernel] sched/fair: Clean up asym packing (Phil Auld) [1419746] - [kernel] sched/fair: Fall back to sched-idle CPU if idle CPU isn't found (Phil Auld) [1419746] - [kernel] sched/fair: Start tracking SCHED_IDLE tasks count in cfs_rq (Phil Auld) [1419746] - [kernel] sched/core: Allow sched_setattr() to use the current policy (Phil Auld) [1419746] - [kernel] sched/fair: Introduce fits_capacity() (Phil Auld) [1419746] - [kernel] sched/core: Provide a pointer to the valid CPU mask (Phil Auld) [1419746] - [x86] x86/percpu: Optimize raw_cpu_xchg() (Phil Auld) [1419746] - [kernel] x86/percpu, sched/fair: Avoid local_clock() (Phil Auld) [1419746] - [x86] x86/percpu, x86/irq: Relax {set,get}_irq_regs() (Phil Auld) [1419746] - [x86] x86/percpu: Relax smp_processor_id() (Phil Auld) [1419746] - [x86] x86/percpu: Differentiate this_cpu_{}() and __this_cpu_{}() (Phil Auld) [1419746] - [kernel] sched/fair: Fix unnecessary increase of balance interval (Phil Auld) [1419746] - [kernel] sched/fair: Trigger asym_packing during idle load balance (Phil Auld) [1419746] - [kernel] sched/fair: Fix rounding bug for asym packing (Phil Auld) [1419746] - [kernel] sched/fair: Fix warning on non-SMP build (Phil Auld) [1419746] - [kernel] sched/core: Create task_has_idle_policy() helper (Phil Auld) [1419746] - [firmware] efi: fix a mistype in comments mentioning efivar_entry_iter_begin() (Vladis Dronov) [1804417] - [firmware] efi: add a sanity check to efivar_store_raw() (Vladis Dronov) [1804417] - [firmware] efi: fix a race and a buffer overflow while reading efivars via sysfs (Vladis Dronov) [1804417] - [scsi] scsi: ibmvfc: Fix NULL return compiler warning (Steve Best) [1810653] - [scsi] scsi: ibmvfc: Avoid loss of all paths during SVC node reboot (Steve Best) [1810653] - [fs] xfs: fix some memory leaks in log recovery (Bill O'Donnell) [1765693] - [fs] xfs: Fix deadlock between AGI and AGF when target_ip exists in xfs_rename() (Bill O'Donnell) [1765693] - [fs] xfs: fix inode fork extent count overflow (Bill O'Donnell) [1765693] - [fs] xfs: change the seconds fields in xfs_bulkstat to signed (Bill O'Donnell) [1765693] - [fs] xfs: assure zeroed memory buffers for certain kmem allocations (Bill O'Donnell) [1765693] - [fs] xfs: removed unused error variable from xchk_refcountbt_rec (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flags arg from xfs_get_aghdr_buf() (Bill O'Donnell) [1765693] - [fs] xfs: Fix tail rounding in xfs_alloc_file_space() (Bill O'Donnell) [1765693] - [fs] xfs: remove unlikely() from WARN_ON() condition (Bill O'Donnell) [1765693] - [fs] xfs: avoid unused to_mp() function warning (Bill O'Donnell) [1765693] - [fs] xfs: log proper length of superblock (Bill O'Donnell) [1765693] - [fs] xfs: revert 1baa2800e62d ("xfs: remove the unused XFS_ALLOC_USERDATA flag") (Bill O'Donnell) [1765693] - [fs] xfs: removed unneeded variable (Bill O'Donnell) [1765693] - [fs] xfs: push the grant head when the log head moves forward (Bill O'Donnell) [1765693] - [fs] xfs: push iclog state cleaning into xlog_state_clean_log (Bill O'Donnell) [1765693] - [fs] xfs: factor iclog state processing out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: factor callbacks out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: factor debug code out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: prevent CIL push holdoff in log recovery (Bill O'Donnell) [1765693] - [fs] xfs: fix missed wakeup on l_flush_wait (Bill O'Donnell) [1765693] - [fs] xfs: push the AIL in xlog_grant_head_wake (Bill O'Donnell) [1765693] - [fs] xfs: Use WARN_ON_ONCE for bailout mount-operation (Bill O'Donnell) [1765693] - [fs] xfs: define a flags field for the AG geometry ioctl structure (Bill O'Donnell) [1765693] - [fs] xfs: add a xfs_valid_startblock helper (Bill O'Donnell) [1765693] - [fs] xfs: remove the unused XFS_ALLOC_USERDATA flag (Bill O'Donnell) [1765693] - [fs] xfs: cleanup xfs_fsb_to_db (Bill O'Donnell) [1765693] - [fs] xfs: fix the dax supported check in xfs_ioctl_setattr_dax_invalidate (Bill O'Donnell) [1765693] - [fs] xfs: Fix stale data exposure when readahead races with hole punch (Bill O'Donnell) [1765693] - [mm] fs: Export generic_fadvise() (Bill O'Donnell) [1765693] - [fs] xfs: reverse search directory freespace indexes (Bill O'Donnell) [1765693] - [fs] xfs: speed up directory bestfree block scanning (Bill O'Donnell) [1765693] - [fs] xfs: factor free block index lookup from xfs_dir2_node_addname_int() (Bill O'Donnell) [1765693] - [fs] xfs: factor data block addition from xfs_dir2_node_addname_int() (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_dir2_addname() (Bill O'Donnell) [1765693] - [fs] xfs: remove all *_ITER_CONTINUE values (Bill O'Donnell) [1765693] - [fs] xfs: remove all *_ITER_ABORT values (Bill O'Donnell) [1765693] - [fs] xfs: log proper length of btree block in scrub/repair (Bill O'Donnell) [1765693] - [fs] xfs: reinitialize rm_flags when unpacking an offset into an rmap irec (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred bmap functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred refcount functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred rmap functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary parameter from xfs_iext_inc_seq (Bill O'Donnell) [1765693] - [fs] xfs: fix sign handling problem in xfs_bmbt_diff_two_keys (Bill O'Donnell) [1765693] - [fs] xfs: don't return _QUERY_ABORT from xfs_rmap_has_other_keys (Bill O'Donnell) [1765693] - [fs] xfs: fix maxicount division by zero error (Bill O'Donnell) [1765693] - [fs] xfs: bmap scrub should only scrub records once (Bill O'Donnell) [1765693] - [fs] xfs: remove excess function parameter description in 'xfs_btree_sblock_v5hdr_verify' (Bill O'Donnell) [1765693] - [fs] fs: xfs: Remove KM_NOSLEEP and KM_SLEEP (Bill O'Donnell) [1765693] - [fs] fs/xfs: Fix return code of xfs_break_leased_layouts() (Bill O'Donnell) [1765693] - [fs] xfs: compat_ioctl: use compat_ptr() (Bill O'Donnell) [1765693] - [fs] xfs: fall back to native ioctls for unhandled compat ones (Bill O'Donnell) [1765693] - [fs] xfs: remove more ondisk directory corruption asserts (Bill O'Donnell) [1765693] - [fs] fs: xfs: xfs_log: Don't use KM_MAYFAIL at xfs_log_reserve() (Bill O'Donnell) [1765693] - [fs] xfs: Fix possible null-pointer dereferences in xchk_da_btree_block_check_sibling() (Bill O'Donnell) [1765693] - [fs] xfs: fix stack contents leakage in the v1 inumber ioctls (Bill O'Donnell) [1765693] - [fs] xfs: sync up xfs_trans_inode with userspace (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_trans_inode.c to libxfs/ (Bill O'Donnell) [1765693] - [fs] xfs: chain bios the right way around in xfs_rw_bdev (Bill O'Donnell) [1765693] - [fs] xfs: bump INUMBERS cursor correctly in xfs_inumbers_walk (Bill O'Donnell) [1765693] - [fs] xfs: don't update lastino for FSBULKSTAT_SINGLE (Bill O'Donnell) [1765693] - [fs] xfs: online scrub needn't bother zeroing its temporary buffer (Bill O'Donnell) [1765693] - [fs] xfs: only allocate memory for scrubbing attributes when we need it (Bill O'Donnell) [1765693] - [fs] xfs: refactor attr scrub memory allocation function (Bill O'Donnell) [1765693] - [fs] xfs: refactor extended attribute buffer pointer functions (Bill O'Donnell) [1765693] - [fs] xfs: attribute scrub should use seen_enough to pass error values (Bill O'Donnell) [1765693] - [fs] xfs: allow single bulkstat of special inodes (Bill O'Donnell) [1765693] - [fs] xfs: specify AG in bulk req (Bill O'Donnell) [1765693] - [fs] xfs: wire up the v5 inumbers ioctl (Bill O'Donnell) [1765693] - [fs] xfs: wire up new v5 bulkstat ioctls (Bill O'Donnell) [1765693] - [fs] xfs: introduce v5 inode group structure (Bill O'Donnell) [1765693] - [fs] xfs: introduce new v5 bulkstat structure (Bill O'Donnell) [1765693] - [fs] xfs: rename bulkstat functions (Bill O'Donnell) [1765693] - [fs] xfs: remove various bulk request typedef usage (Bill O'Donnell) [1765693] - [fs] fs: xfs: xfs_log: Change return type from int to void (Bill O'Donnell) [1765693] - [fs] xfs: poll waiting for quotacheck (Bill O'Donnell) [1765693] - [fs] xfs: multithreaded iwalk implementation (Bill O'Donnell) [1765693] - [fs] xfs: refactor INUMBERS to use iwalk functions (Bill O'Donnell) [1765693] - [fs] xfs: refactor iwalk code to handle walking inobt records (Bill O'Donnell) [1765693] - [fs] xfs: refactor xfs_iwalk_grab_ichunk (Bill O'Donnell) [1765693] - [fs] xfs: clean up long conditionals in xfs_iwalk_ichunk_ra (Bill O'Donnell) [1765693] - [fs] xfs: change xfs_iwalk_grab_ichunk to use startino, not lastino (Bill O'Donnell) [1765693] - [fs] xfs: move bulkstat ichunk helpers to iwalk code (Bill O'Donnell) [1765693] - [fs] xfs: calculate inode walk prefetch more carefully (Bill O'Donnell) [1765693] - [fs] xfs: convert bulkstat to new iwalk infrastructure (Bill O'Donnell) [1765693] - [fs] xfs: bulkstat should copy lastip whenever userspace supplies one (Bill O'Donnell) [1765693] - [fs] xfs: convert quotacheck to use the new iwalk functions (Bill O'Donnell) [1765693] - [fs] xfs: create simplified inode walk function (Bill O'Donnell) [1765693] - [fs] xfs: create iterator error codes (Bill O'Donnell) [1765693] - [fs] xfs: remove XFS_TRANS_NOFS (Bill O'Donnell) [1765693] - [fs] xfs: simplify xfs_ioend_can_merge (Bill O'Donnell) [1765693] - [fs] xfs: allow merging ioends over append boundaries (Bill O'Donnell) [1765693] - [fs] xfs: fix a comment typo in xfs_submit_ioend (Bill O'Donnell) [1765693] - [fs] xfs: remove the unused xfs_count_page_state declaration (Bill O'Donnell) [1765693] - [fs] xfs: fix iclog allocation size (Bill O'Donnell) [1765693] - [fs] xfs: remove unused header files (Bill O'Donnell) [1765693] - [fs] xfs: account for log space when formatting new AGs (Bill O'Donnell) [1765693] - [fs] xfs: refactor free space btree record initialization (Bill O'Donnell) [1765693] - [fs] xfs: always update params on small allocation (Bill O'Donnell) [1765693] - [fs] xfs: skip small alloc cntbt logic on NULL cursor (Bill O'Donnell) [1765693] - [fs] xfs: move small allocation helper (Bill O'Donnell) [1765693] - [fs] xfs: clean up small allocation helper (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_bmap.c into xfs_bmap_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_rmap.c into xfs_rmap_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_refcount.c into xfs_refcount_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_extfree.c into xfs_extfree_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_bud_init into xfs_trans_get_bud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_rud_init into xfs_trans_get_rud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_cud_init into xfs_trans_get_cud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_efd_init into xfs_trans_get_efd (Bill O'Donnell) [1765693] - [fs] xfs: remove a pointless comment duplicated above all xfs_item_ops instances (Bill O'Donnell) [1765693] - [fs] xfs: use a list_head for iclog callbacks (Bill O'Donnell) [1765693] - [fs] xfs: remove the xfs_log_item_t typedef (Bill O'Donnell) [1765693] - [fs] xfs: don't cast inode_log_items to get the log_item (Bill O'Donnell) [1765693] - [fs] xfs: add a flag to release log items on commit (Bill O'Donnell) [1765693] - [fs] xfs: split iop_unlock (Bill O'Donnell) [1765693] - [fs] xfs: don't use xfs_trans_free_items in the commit path (Bill O'Donnell) [1765693] - [fs] xfs: remove the dummy iop_push implementation for inode creation items (Bill O'Donnell) [1765693] - [fs] xfs: don't require log items to implement optional methods (Bill O'Donnell) [1765693] - [fs] xfs: stop using XFS_LI_ABORTED as a parameter flag (Bill O'Donnell) [1765693] - [fs] xfs: fix a trivial comment typo in xfs_trans_committed_bulk (Bill O'Donnell) [1765693] - [fs] xfs: add struct xfs_mount pointer to struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: remove the b_io_length field in struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: properly type the b_log_item field in struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: remove unused buffer cache APIs (Bill O'Donnell) [1765693] - [fs] xfs: stop using bp naming for log recovery buffers (Bill O'Donnell) [1765693] - [fs] xfs: use bios directly to read and write the log recovery buffers (Bill O'Donnell) [1765693] - [fs] xfs: return an offset instead of a pointer from xlog_align (Bill O'Donnell) [1765693] - [fs] xfs: move the log ioend workqueue to struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: use bios directly to write log buffers (Bill O'Donnell) [1765693] - [fs] xfs: make use of the l_targ field in struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: remove the syncing argument from xlog_verify_iclog (Bill O'Donnell) [1765693] - [fs] xfs: update both stat counters together in xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out iclog size calculation from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out splitting of an iclog from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out log buffer writing from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: don't use REQ_PREFLUSH for split log writes (Bill O'Donnell) [1765693] - [fs] xfs: remove XLOG_STATE_IOABORT (Bill O'Donnell) [1765693] - [fs] xfs: reformat xlog_get_lowest_lsn (Bill O'Donnell) [1765693] - [fs] xfs: cleanup xlog_get_iclog_buffer_size (Bill O'Donnell) [1765693] - [fs] xfs: remove the l_iclog_size_log field from struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: renumber XBF_WRITE_FAIL (Bill O'Donnell) [1765693] - [fs] xfs: remove the never used _XBF_COMPOUND flag (Bill O'Donnell) [1765693] - [fs] xfs: remove the no-op spinlock_destroy stub (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_ino_geometry to xfs_shared.h (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flag arguments (Bill O'Donnell) [1765693] - [fs] xfs: remove the debug-only q_transp field from struct xfs_dquot (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_buf_zero and xfs_buf_iomove (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flags arg from getsb interfaces (Bill O'Donnell) [1765693] - [fs] xfs: include WARN, REPAIR build options in XFS_BUILD_OPTIONS (Bill O'Donnell) [1765693] - [fs] xfs: finish converting to inodes_per_cluster (Bill O'Donnell) [1765693] - [fs] xfs: fix inode_cluster_size rounding mayhem (Bill O'Donnell) [1765693] - [fs] xfs: refactor inode geometry setup routines (Bill O'Donnell) [1765693] - [fs] xfs: separate inode geometry (Bill O'Donnell) [1765693] - [fs] xfs: use file_modified() helper (Bill O'Donnell) [1765693] - [fs] vfs: introduce file_modified() helper (Bill O'Donnell) [1765693]- [md] dm: bump version of core and various targets (Mike Snitzer) [1810746] - [md] dm: fix congested_fn for request-based device (Mike Snitzer) [1810746] - [md] dm integrity: use dm_bio_record and dm_bio_restore (Mike Snitzer) [1810746] - [md] dm bio record: save_restore bi_end_io and bi_integrity (Mike Snitzer) [1810746] - [md] dm writecache: verify watermark during resume (Mike Snitzer) [1810746] - [md] dm: report suspended device during destroy (Mike Snitzer) [1810746] - [md] dm thin metadata: fix lockdep complaint (Mike Snitzer) [1810746] - [md] dm cache: fix a crash due to incorrect work item cancelling (Mike Snitzer) [1810746] - [md] dm integrity: fix invalid table returned due to argument count mismatch (Mike Snitzer) [1810746] - [md] dm integrity: fix a deadlock due to offloading to an incorrect workqueue (Mike Snitzer) [1810746] - [md] dm integrity: fix recalculation when moving from journal mode to bitmap mode (Mike Snitzer) [1810746] - [md] dm writecache: improve performance of large linear writes on SSDs (Mike Snitzer) [1810746] - [md] dm mpath: Add timeout mechanism for queue_if_no_path (Mike Snitzer) [1810746] - [md] dm thin: change data device's flush_bio to be member of struct pool (Mike Snitzer) [1810746] - [md] dm thin: don't allow changing data device during thin-pool reload (Mike Snitzer) [1810746] - [md] dm thin: fix use-after-free in metadata_pre_commit_callback (Mike Snitzer) [1810746] - [md] dm thin metadata: use pool locking at end of dm_pool_metadata_close (Mike Snitzer) [1810746] - [md] dm writecache: fix incorrect flush sequence when doing SSD mode commit (Mike Snitzer) [1810746] - [md] dm crypt: fix benbi IV constructor crash if used in authenticated mode (Mike Snitzer) [1810746] - [md] dm crypt: Implement Elephant diffuser for Bitlocker compatibility (Mike Snitzer) [1810746] - [md] dm space map common: fix to ensure new block isn't already in use (Mike Snitzer) [1810746] - [md] dm verity: don't prefetch hash blocks for already-verified data (Mike Snitzer) [1810746] - [md] dm crypt: fix GFP flags passed to skcipher_request_alloc() (Mike Snitzer) [1810746] - [md] dm thin metadata: Fix trivial math error in on-disk format documentation (Mike Snitzer) [1810746] - [md] dm thin metadata: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm snapshot: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm bio prison v2: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm mpath: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm zoned: support zone sizes smaller than 128MiB (Mike Snitzer) [1810746] - [md] dm raid: table line rebuild status fixes (Mike Snitzer) [1810746] - [documentation] docs: dm-integrity: remove reference to ARC4 (Mike Snitzer) [1810746] - [md] dm thin: Flush data device before committing metadata (Mike Snitzer) [1810746] - [md] dm thin metadata: Add support for a pre-commit callback (Mike Snitzer) [1810746] - [md] dm btree: increase rebalance threshold in __rebalance2() (Mike Snitzer) [1810746] - [md] dm mpath: remove harmful bio-based optimization (Mike Snitzer) [1810746] - [md] dm integrity: fix excessive alignment of metadata runs (Mike Snitzer) [1810746] - [md] dm cache: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm bio prison: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm thin: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm raid: streamline rs_get_progress() and its raid_status() caller side (Mike Snitzer) [1810746] - [md] dm raid: simplify rs_setup_recovery call chain (Mike Snitzer) [1810746] - [md] dm raid: to ensure resynchronization, perform raid set grow in preresume (Mike Snitzer) [1810746] - [md] dm raid: change rs_set_dev_and_array_sectors API and callers (Mike Snitzer) [1810746] - [md] dm: introduce DM_GET_TARGET_VERSION (Mike Snitzer) [1810746] - [md] dm bufio: introduce a global cache replacement (Mike Snitzer) [1810746] - [md] dm bufio: remove old-style buffer cleanup (Mike Snitzer) [1810746] - [md] dm bufio: introduce a global queue (Mike Snitzer) [1810746] - [md] dm bufio: refactor adjust_total_allocated (Mike Snitzer) [1810746] - [md] dm bufio: call adjust_total_allocated from __link_buffer and __unlink_buffer (Mike Snitzer) [1810746] - [md] dm crypt: omit parsing of the encapsulated cipher (Mike Snitzer) [1810746] - [md] dm crypt: switch to ESSIV crypto API template (Mike Snitzer) [1810746] - [crypto] crypto: essiv - create wrapper template for ESSIV generation (Mike Snitzer) [1810746] - [security] crypto: drop mask=CRYPTO_ALG_ASYNC from shash tfm allocations (Mike Snitzer) [1810746] - [crypto] crypto: drop mask=CRYPTO_ALG_ASYNC from cipher tfm allocations (Mike Snitzer) [1810746] - [md] dm verity: add root hash pkcs#7 signature verification (Mike Snitzer) [1810746] - [md] dm crypt: reuse eboiv skcipher for IV generation (Mike Snitzer) [1810746] - [md] dm integrity: fix a crash due to BUG_ON in __journal_read_write() (Mike Snitzer) [1810746] - [md] dm kcopyd: Increase default sub-job size to 512KB (Mike Snitzer) [1810746] - [documentation] docs: device-mapper: move it to the admin-guide (Mike Snitzer) [1810746] - [documentation] docs: convert docs to ReST and rename to *.rst (Mike Snitzer) [1810746] - [md] dm crypt: implement eboiv - encrypted byte-offset initialization vector (Mike Snitzer) [1810746] - [md] dm integrity: use kzalloc() instead of kmalloc() + memset() (Mike Snitzer) [1810746] - [md] dm integrity: always set version on superblock update (Mike Snitzer) [1810746] - [md] dm integrity: whitespace, coding style and dead code cleanup (Mike Snitzer) [1810746] - [md] dm integrity: implement synchronous mode for reboot handling (Mike Snitzer) [1810746] - [md] dm integrity: handle machine reboot in bitmap mode (Mike Snitzer) [1810746] - [md] dm integrity: add a bitmap mode (Mike Snitzer) [1810746] - [md] dm integrity: introduce a function add_new_range_and_wait() (Mike Snitzer) [1810746] - [md] dm integrity: allow large ranges to be described (Mike Snitzer) [1810746] - [md] dm ingerity: pass size to dm_integrity_alloc_page_list() (Mike Snitzer) [1810746] - [md] dm integrity: introduce rw_journal_sectors() (Mike Snitzer) [1810746] - [md] dm crypt and integrity: shash - remove shash_desc::flags (Mike Snitzer) [1810746] - [md] dm: fix potential for q->make_request_fn NULL pointer (Mike Snitzer) [1794340] - [netdrv] net/mlx5e: Don't clear the whole vf config when switching modes (mohamad meib) [1811428] - [scsi] scsi: be2iscsi: be_main: Mark expected switch fall-through (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: be_iscsi: Mark expected switch fall-through (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: switch to generic DMA API (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: fix spelling mistake "Retreiving" -> "Retrieving" (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: remove unused variable dmsg (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: Update copyright (Maurizio Lombardi) [1796740] - [security] selinux: fix sidtab string cache locking (Ondrej Mosnacek) [1807001 1806991] - [security] selinux: do not allocate ancillary buffer on first load (Ondrej Mosnacek) [1807001] - [security] selinux: remove redundant selinux_nlmsg_perm (Ondrej Mosnacek) [1807001] - [security] selinux: fix wrong buffer types in policydb.c (Ondrej Mosnacek) [1807001] - [security] selinux: treat atomic flags more carefully (Ondrej Mosnacek) [1807001] - [security] selinux: make default_noexec read-only after init (Ondrej Mosnacek) [1807001] - [security] selinux: move ibpkeys code under CONFIG_SECURITY_INFINIBAND (Ondrej Mosnacek) [1807001] - [security] Documentation, selinux: fix references to old selinuxfs mount point (Ondrej Mosnacek) [1807001] - [security] selinuxfs: use scnprintf to get real length for inode (Ondrej Mosnacek) [1807001] - [security] selinux: remove set but not used variable 'sidtab' (Ondrej Mosnacek) [1807001] - [security] selinux: ensure the policy has been loaded before reading the sidtab stats (Ondrej Mosnacek) [1807001] - [security] selinux: ensure we cleanup the internal AVC counters on error in avc_update() (Ondrej Mosnacek) [1807001] - [security] selinux: randomize layout of key structures (Ondrej Mosnacek) [1807001] - [security] selinux: clean up selinux_enabled/disabled/enforcing_boot (Ondrej Mosnacek) [1807001] - [security] selinux: remove unnecessary selinux cred request (Ondrej Mosnacek) [1807001] - [security] selinux: ensure we cleanup the internal AVC counters on error in avc_insert() (Ondrej Mosnacek) [1807001] - [security] security: only build lsm_audit if CONFIG_SECURITY=y (Ondrej Mosnacek) [1807001] - [security] selinux: clean up selinux_inode_permission MAY_NOT_BLOCK tests (Ondrej Mosnacek) [1807001] - [security] selinux: fall back to ref-walk if audit is required (Ondrej Mosnacek) [1807001] - [security] selinux: revert "stop passing MAY_NOT_BLOCK to the AVC upon follow_link" (Ondrej Mosnacek) [1807001] - [security] selinux: cache the SID -> context string translation (Ondrej Mosnacek) [1807001 1806991] - [security] selinux: sidtab reverse lookup hash table (Ondrej Mosnacek) [1807001] - [security] selinux: default_range glblub implementation (Ondrej Mosnacek) [1807001] - [security] selinux: allow labeling before policy is loaded (Ondrej Mosnacek) [1807001 1777525] - [security] selinux: remove load size limit (Ondrej Mosnacek) [1807001] - [security] selinux: fix residual uses of current_security() for the SELinux blob (Ondrej Mosnacek) [1807001] - [kernel] rcu: Make kfree_rcu() ignore NULL pointers (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of ipc security blobs (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of inode security blob (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of file security blob (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of cred security blob (Ondrej Mosnacek) [1807001] - [security] selinux: kill selinux_sb_get_mnt_opts() (Ondrej Mosnacek) [1807001] - [security] selinux; don't open-code a loop in sb_finish_set_opts() (Ondrej Mosnacek) [1807001] - [security] selinux: expand superblock_doinit() calls (Ondrej Mosnacek) [1807001] - [netdrv] hv_netvsc: Fix unwanted rx_table reset (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix tx_table init in rndis_set_subchannel() (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix send_table offset in case of a host bug (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix offset usage in netvsc_send_table() (Mohammed Gamal) [1805950]- [block] blk-mq: Keep set->nr_hw_queues and set->map.nr_queues in sync (Ming Lei) [1810523] - [block] block: clear REQ_HIPRI if polling is not supported (Ming Lei) [1809506]- [perf] arm_spe: Enable ACPI/Platform automatic module loading (Jeremy Linton) [1501652] - [perf] perf: arm_spe: Don't error on high-order pages for aux buf (Jeremy Linton) [1501652] - [perf] arm_spe: handle devm_kasprintf() failure (Jeremy Linton) [1501652] - [perf] arm_spe: Enable automatic DT loading (Jeremy Linton) [1501652] - [block] blk-iolatency: fix STS_AGAIN handling (Ming Lei) [1764737] - [block] blk-iolatency: only account submitted bios (Ming Lei) [1764737] - [block] blk-iolatency: clear use_delay when io.latency is set to zero (Ming Lei) [1764737] - [block] blk-iolatency: #include "blk.h" (Ming Lei) [1764737] - [block] Blk-iolatency: warn on negative inflight IO counter (Ming Lei) [1764737] - [block] blk-iolatency: fix IO hang due to negative inflight counter (Ming Lei) [1764737] - [block] block: fix blk-iolatency accounting underflow (Ming Lei) [1764737] - [fs] xfs: stabilize insert range start boundary to avoid COW writeback race (Brian Foster) [1728979] - [x86] uprobes/x86: Fix detection of 32-bit user mode (Oleg Nesterov) [1804961] - [ipc] Revert "ipc, sem: remove uneeded sem_undo_list lock usage in exit_sem()" ("Herton R. Krzesinski") [1807627] - [powerpc] powerpc/tm: Fix clearing MSRin current when reclaiming on signal delivery (Gustavo Duarte) [1751116] - [powerpc] powerpc/tm: Set MSRjust prior to recheckpoint (Gustavo Duarte) [1751116] - [arm64] arm64: smp: Increase secondary CPU boot timeout value (Gavin Shan) [1807684] - [fs] ext4: work around deleting a file with i_nlink == 0 safely (Carlos Maiolino) [1801049] - [char] ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier (Waiman Long) [1810638] - [char] ipmi: Revert "fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier" (Waiman Long) [1810638]- [kernel] blktrace: Protect q->blk_trace with RCU (Ming Lei) [1798329] - [drm] drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/dp: Introduce EDID-based quirks (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Auto detect DPCD backlight support by default (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Assume 100 brightness when not in DPCD control mode (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Fix eDP DPCD aux max backlight calculations (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Check backlight type while doing eDP backlight initializaiton (Lyude Paul) [1782671 1773796 1748892] - [tools] selftests: nft_concat_range: Add test for reported add/flush/add issue (Stefano Brivio) [1807892] - [net] nft_set_pipapo: Actually fetch key data in nft_pipapo_remove() (Stefano Brivio) [1807892] - [net] sched: don't take rtnl lock during flow_action setup (Marcelo Leitner) [1804385] - [include] net: sched: refactor ct action helpers to require tcf_lock (Marcelo Leitner) [1804385] - [include] net: sched: refactor police action helpers to require tcf_lock (Marcelo Leitner) [1804385] - [net] sched: lock action when translating it to flow_action infra (Marcelo Leitner) [1804385] - [powerpc] powerpc/smp: Fix NMI IPI xmon timeout (Diego Domingos) [1747320] - [powerpc] powerpc/smp: Fix NMI IPI timeout (Diego Domingos) [1747320] - [powerpc] powerpc: NMI IPI make NMI IPIs fully sychronous (Diego Domingos) [1747320] - [arm64] arm64: select CPUMASK_OFFSTACK if NUMA (Andrea Arcangeli) [1712856] - [arm64] arm64: tlb: skip tlbi broadcast (Andrea Arcangeli) [1712856]- [fs] fs/proc/proc_sysctl.c: Fix a NULL pointer dereference (Vladis Dronov) [1795521] {CVE-2019-20054} - [fs] fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links (Vladis Dronov) [1795521] {CVE-2019-20054} - [ptp] ptp: correctly disable flags on old ioctls (Petr Oros) [1795188] - [uapi] PTP: add support for one-shot output (Petr Oros) [1795188] - [ptp] PTP: introduce new versions of IOCTLs (Petr Oros) [1795188] - [virtio] virtio_ring: fix stalls for packed rings (Eugenio Perez) [1601355] - [virtio] virtio_ring: Fix potential mem leak in virtqueue_add_indirect_packed (Eugenio Perez) [1601355] - [uapi] virtio: drop internal struct from UAPI (Eugenio Perez) [1601355] - [virtio] virtio_ring: advertize packed ring layout (Eugenio Perez) [1601355] - [virtio] virtio_ring: leverage event idx in packed ring (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce packed ring support (Eugenio Perez) [1601355] - [virtio] virtio_ring: cache whether we will use DMA API (Eugenio Perez) [1601355] - [virtio] virtio_ring: extract split ring handling from ring creation (Eugenio Perez) [1601355] - [virtio] virtio_ring: allocate desc state for split ring separately (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce helper for indirect feature (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce debug helpers (Eugenio Perez) [1601355] - [virtio] virtio_ring: put split ring fields in a sub struct (Eugenio Perez) [1601355] - [virtio] virtio_ring: put split ring functions together (Eugenio Perez) [1601355] - [virtio] virtio_ring: add _split suffix for split ring functions (Eugenio Perez) [1601355] - [uapi] virtio: add packed ring types and macros (Eugenio Perez) [1601355] - [x86] x86/mtrr: Skip cache flushes on CPUs with cache self-snooping (Prarit Bhargava) [1724541] - [x86] x86/cpu/intel: Clear cache self-snoop capability in CPUs with known errata (Prarit Bhargava) [1724541] - [documentation] Documentation PCI: Fix pciebus-howto.rst filename typo (Myron Stowe) [1793091] - [tools] tools: PCI: Fix installation when `make tools/pci_install` (Myron Stowe) [1793091] - [tools] tools: PCI: Fix broken pcitest compilation (Myron Stowe) [1793091] - [tools] tools pci: Do not delete pcitest.sh in 'make clean' (Myron Stowe) [1793091] - [pci] PCI: endpoint: Clear BAR before freeing its space (Myron Stowe) [1793091] - [pci] PCI: endpoint: Skip odd BAR when skipping 64bit BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Allocate enough space for fixed size BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Set endpoint controller pointer to NULL (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add support to specify alignment for buffers allocated to BARs (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Use pci_epc_get_features() to get EPC features (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Do not allocate next BARs memory if current BAR is 64Bit (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Remove setting epf_bar flags in function driver (Myron Stowe) [1793091] - [pci] PCI: endpoint: Fix pci_epf_alloc_space() to set correct MEM TYPE flags (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add helper to get first unreserved BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add new pci_epc_ops to get EPC features (Myron Stowe) [1793091] - [pci] PCI: endpoint: functions: Use memcpy_fromio()/memcpy_toio() (Myron Stowe) [1793091] - [pci] PCI: Skip resource distribution when no hotplug bridges (Myron Stowe) [1793091] - [pci] PCI: Simplify pci_bus_distribute_available_resources() (Myron Stowe) [1793091] - [pci] PCI: Reset both NVIDIA GPU and HDA in ThinkPad P50 workaround (Myron Stowe) [1793091] - [pci] PCI: Enable NVIDIA HDA controllers (Myron Stowe) [1793091] - [pci] PCI: Use seq_puts() instead of seq_printf() in show_device() (Myron Stowe) [1793091] - [pci] PCI: Add NVIDIA GPU multi-function power dependencies (Myron Stowe) [1793091] - [pci] PCI: Generalize multi-function power dependency device links (Myron Stowe) [1793091] - [pci] PCI: sysfs: Ignore lockdep for remove attribute (Myron Stowe) [1793091] - [pci] PCI: Decode PCIe 32 GT/s link speed (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-test-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-test-function.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-endpoint-cfs.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-endpoint.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pcieaer-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci-error-recovery.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert acpi-info.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert MSI-HOWTO.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci-iov-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert PCIEBUS-HOWTO.txt to reST (Myron Stowe) [1793091] - [documentation] docs: pci: fix broken links due to conversion from pci.txt to pci.rst (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: add Linux PCI to Sphinx TOC tree (Myron Stowe) [1793091] - [pci] PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary (Myron Stowe) [1793091] - [pci] PCI: Add a stub for pci_ats_disabled() (Myron Stowe) [1793091] - [pci] PCI: Provide pci_match_id() with CONFIG_PCI=n (Myron Stowe) [1793091] - [misc] ocxl: Add PCI hotplug dependency to Kconfig (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Wrap warnings in macro (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Relax check when disabling slot (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Register opencapi slots (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Improve error msg on power state change failure (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Remove erroneous warning (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Find opencapi slot for a device node (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Release opencapi device (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: set up PE on opencapi device when enabling (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Protect PE list (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Fix ref count for devices with their own PE (Steve Best) [1788902] - [of] of: overlay: add_changeset_property() memory leak (Steve Best) [1798483] - [of] of: unittest: initialize args before calling of_*parse_*() (Steve Best) [1798483] - [of] of: unittest: find overlaysentry by name instead of index (Steve Best) [1798483] - [of] of: unittest: allow base devicetree to have symbol metadata (Steve Best) [1798483] - [of] of: overlay: set node fields from properties when add new overlay node (Steve Best) [1798483] - [of] of: unittest: remove unused of_unittest_apply_overlay() argument (Steve Best) [1798483] - [of] of: overlay: check prevents multiple fragments touching same property (Steve Best) [1798483] - [of] of: overlay: check prevents multiple fragments add or delete same node (Steve Best) [1798483] - [of] of: overlay: test case of two fragments adding same node (Steve Best) [1798483] - [of] of: overlay: make all pr_debug() and pr_err() messages unique (Steve Best) [1798483] - [of] of: overlay: validate overlay properties (Steve Best) [1798483] - [of] of: overlay: reorder fields in struct fragment (Steve Best) [1798483] - [of] of: overlay: do not duplicate properties from overlay for new nodes (Steve Best) [1798483] - [of] of: overlay: use prop add changeset entry for property in new nodes (Steve Best) [1798483] - [of] of: Convert to using pOFn instead of device_node.name (Steve Best) [1798483] - [powerpc] powerpc/pseries: add of_node_put() in dlpar_detach_node() (Steve Best) [1798483] - [of] of: overlay: add missing of_node_get() in __of_attach_node_sysfs (Steve Best) [1798483] - [of] of: overlay: add missing of_node_put() after add new node to changeset (Steve Best) [1798483] - [of] of: overlay: add tests to validate kfrees from overlay removal (Steve Best) [1798483]- [kernel] open the RHEL 8.3 development (Frantisek Hrbata) - [netdrv] Revert "r8169: don't use MSI before RTL8168d" (Josef Oskera) [1792839] - [drm] drm/nouveau/kms/gv100-: Re-set LUT after clearing for modesets (Ben Skeggs) [1789026] - [drm] drm/nouveau/disp/gv100-: not all channel types support reporting error codes (Ben Skeggs) [1789481] - [drm] drm/nouveau/disp/nv50-: prevent oops when no channel method map provided (Ben Skeggs) [1789481] - [fs] cifs: don't leak -EAGAIN for stat() during reconnect (Dave Wysochanski) [1769599] - [block] blk-mq: insert passthrough request into hctx->dispatch directly (Ming Lei) [1788728] - [scsi] scsi: megaraid_sas: fixup MSIx interrupt setup during resume (Tomas Henzl) [1805353]- [fs] NFS: Add deferred cache invalidation for close-to-open consistency violations (Benjamin Coddington) [1803162] - [block] nbd: fix stack corruption in nbd_check_sock_type() (Ming Lei) [1803664] - [mm] mm/vmscan.c: don't round up scan size for online memory cgroup (Aristeu Rozanski) [1775691] - [tools] selftests/bpf: fix clearing buffered output between tests/subtests (Yauheni Kaliuta) [1786006] - [tools] libbpf: avoid usage of __builtin_preserve_field_info (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: samples/bpf: fix Split off legacy stuff from bpf_helpers.h (Yauheni Kaliuta) [1786006] - [tools] libbpf: fix Make DECLARE_LIBBPF_OPTS macro strictly a variable declaration (Yauheni Kaliuta) [1786006] - [tools] selftests: fix too long argument (Yauheni Kaliuta) [1786006] - [tools] libbpf: Add BPF-side definitions of supported field relocation kinds (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: add sub-tests support for test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: abstract away test log output (Yauheni Kaliuta) [1786006] - [tools] selftest/bpf: centralize libbpf logging management for test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: prevent headers to be compiled as C code (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: add test selectors by number and name to test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: revamp test_progs to allow more control (Yauheni Kaliuta) [1786006] - [net] core: Don't skip generic XDP program execution for cloned SKBs (Jiri Benc) [1802507] - [tools] selftests/bpf: De-flake test_tcpbpf (Jiri Benc) [1802507] - [net] bpf, sockmap: Check update requirements after locking (Jiri Benc) [1802507] - [net] bpf, sockhash: Synchronize_rcu before free'ing map (Jiri Benc) [1802507] - [net] bpf, sockmap: Don't sleep while holding RCU lock on tear-down (Jiri Benc) [1802507] - [net] net: bpf: Don't leak time wait and request sockets (Jiri Benc) [1802507] - [net] bpf/sockmap: Read psock ingress_msg before sk_receive_queue (Jiri Benc) [1802507] - [net] bpf: Clear skb->tstamp in bpf_redirect when necessary (Jiri Benc) [1802507] - [net] xdp: obtain the mem_id mutex before trying to remove an entry (Jiri Benc) [1802507] - [net] page_pool: do not release pool until inflight == 0 (Jiri Benc) [1802507] - [net] xsk: Fix registration of Rx-only sockets (Jiri Benc) [1802507] - [net] xsk: avoid store-tearing when assigning umem (Jiri Benc) [1802507] - [net] xsk: avoid store-tearing when assigning queues (Jiri Benc) [1802507] - [tools] bpftool: Don't crash on missing xlated program instructions (Jiri Benc) [1802507] - [tools] bpftool: Fix printing incorrect pointer in btf_dump_ptr (Jiri Benc) [1802507] - [tools] bpftool: Don't crash on missing jited insns or ksyms (Jiri Benc) [1802507] - [tools] bpftool: Match several programs with same tag (Jiri Benc) [1802507] - [tools] libbpf: Fix realloc usage in bpf_core_find_cands (Jiri Benc) [1802507] - [tools] libbpf: Add missing newline in opts validation macro (Jiri Benc) [1802507] - [tools] libbpf: Don't attach perf_buffer to offline/missing CPUs (Jiri Benc) [1802507] - [tools] libbpf: Extract and generalize CPU mask parsing logic (Jiri Benc) [1802507] - [tools] libbpf: Fix printf compilation warnings on ppc64le arch (Jiri Benc) [1802507] - [tools] libbpf: Fix sym->st_value print on 32-bit arches (Jiri Benc) [1802507] - [tools] libbpf: Make btf__resolve_size logic always check size error condition (Jiri Benc) [1802507] - [tools] libbpf: Fix another potential overflow issue in bpf_prog_linfo (Jiri Benc) [1802507] - [tools] libbpf: Fix potential overflow issue (Jiri Benc) [1802507] - [tools] libbpf: Fix memory leak/double free issue (Jiri Benc) [1802507] - [tools] libbpf: Fix off-by-one error in ELF sanity check (Jiri Benc) [1802507] - [tools] selftests/bpf: Fix test_attach_probe (Jiri Benc) [1802507] - [kernel] bpf: Fix bpf_event_output re-entry issue (Jiri Benc) [1802507] - [net] bpf: Fix incorrect verifier simulation of ARSH under ALU32 (Jiri Benc) [1802507] - [net] bpf: Fix passing modified ctx to ld/abs/ind instruction (Jiri Benc) [1802507] - [net] bpf: cgroup: prevent out-of-order release of cgroup bpf (Jiri Benc) [1802507] - [net] bpf: Fix precision tracking for unbounded scalars (Jiri Benc) [1802507] - [net] bpf: Fix cgroup local storage prog tracking (Jiri Benc) [1802507] - [net] bpf/stackmap: Fix deadlock with rq_lock in bpf_get_stack() (Jiri Benc) [1802507] - [net] bpf, offload: Unlock on error in bpf_offload_dev_create() (Jiri Benc) [1802507] - [powerpc] powerpc/bpf: Fix tail call implementation (Jiri Benc) [1802507] - [net] bpf: Fix use after free in bpf_get_prog_name (Jiri Benc) [1802507] - [net] bpf: Fix use after free in subprog's jited symbol removal (Jiri Benc) [1802507] - [uapi] bpf: fix BTF limits (Jiri Benc) [1802507] - [net] bpf: fix BTF verification of enums (Jiri Benc) [1802507] - [netdrv] ice: Don't tell the OS that link is going down (Jonathan Toppins) [1792670] - [powerpc] powerpc/powernv: implement opal_put_chars_atomic (Steve Best) [1806254] - [tty] powerpc/powernv: move opal console flushing to udbg (Steve Best) [1806254] - [powerpc] powerpc/powernv: Remove OPALv1 support from opal console driver (Steve Best) [1806254] - [powerpc] powerpc/powernv: Implement and use opal_flush_console (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal-kmsg use flush fallback from console code (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal-kmsg standardise OPAL_BUSY handling (Steve Best) [1806254] - [powerpc] powerpc/powernv: Fix OPAL console driver OPAL_BUSY loops (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal_put_chars partial write fix (Steve Best) [1806254] - [x86] Mark Comet Lake-S as supported (David Arcari) [1805754]- rebuild, due infrastructure issues last kernel build wasn't signed properly [1807216]- [nvme] nvme-multipath: Fix memory leak with ana_log_buf (David Milburn) [1804822] - [powerpc] pci/of: Fix OF flags parsing for 64bit BARs (David Gibson) [1804038]- [pci] PCI: pciehp: Add DMI table for in-band presence disabled (Myron Stowe) [1749528] - [pci] PCI: pciehp: Wait for PDS if in-band presence is disabled (Myron Stowe) [1749528] - [pci] PCI: pciehp: Add support for disabling in-band presence (Myron Stowe) [1749528] - [netdrv] net/mlx5: DR, Handle reformat capability over sw-steering tables (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, Fix matching on vport gvmi (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, use non preemptible call to get the current cpu number (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, Enable counter on non-fwd-dest objects (Alaa Hleihel) [1794997] - [iommu] iommu/vt-d: Simplify check in identity_mapping() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Remove deferred_attach_domain() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Do deferred attachment in iommu_need_mapping() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Move deferred device attachment into helper function (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Add attach_deferred() helper (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Refactor find_domain() helper (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Allow devices with RMRRs to use identity domain (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Call __dmar_remove_one_dev_info with valid pointer (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Fix lock inversion between iommu->lock and device_domain_lock (Jerry Snitselaar) [1797124 1784649] - [ata] ata: ahci: Add shutdown to freeze hardware resources of ahci (David Milburn) [1784955] - [include] redhat: kabi: convert incorrect use of RH_KABI_EXTEND (Jiri Benc) [1715803] - [include] redhat: kabi: macros for intentional kABI breakage (Jiri Benc) [1715803] - [uapi] redhat: kabi: bpf: remove misleading comment (Jiri Benc) [1715803] - [include] redhat: kabi: introduce RH_KABI_HIDE_INCLUDE and RH_KABI_FAKE_INCLUDE (Jiri Benc) [1715803] - [kernel] kernel/module.c: wakeup processes in module_wq on module unload (Prarit Bhargava) [1804209] - [x86] kvm: x86: do not reset microcode version on INIT or RESET (Paolo Bonzini) [1801853] - [x86] kvm: x86: list MSR_IA32_UCODE_REV as an emulated MSR (Paolo Bonzini) [1801853] - [nvme] nvme: prevent warning triggered by nvme_stop_keep_alive (David Milburn) [1799890] - [nvme] nvme: nvme_keep_alive_end_io fixup setting comp_seen flag (David Milburn) [1799890]- [iommu] iommu: don't change default domain if already set by quirk (Jerry Snitselaar) [1786292] - [net] netfilter: ipset: Copy the right MAC address in hash:ip, mac IPv6 sets (Stefano Brivio) [1759422] - [net] ipv6/addrconf: only check invalid header values when NETLINK_F_STRICT_CHK is set (Guillaume Nault) [1802817] - [net] tcp: clear tp->segs_{in|out} in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->data_segs{in|out} in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->delivered in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->total_retrans in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: do not leave dangling pointers in tp->highest_sack (Guillaume Nault) [1802682] - [net] tcp: Fix highest_sack and highest_sack_seq (Guillaume Nault) [1802682] - [net] tcp: do not send empty skb from tcp_write_xmit() (Guillaume Nault) [1802682] - [net] tcp: md5: fix potential overestimation of TCP option space (Guillaume Nault) [1802682] - [net] tcp: fix data-race in tcp_recvmsg() (Guillaume Nault) [1802682] - [net] bridge: ebtables: don't crash when using dnat target in output chains (Andrea Claudi) [1798923] - [net] ip6_tunnel: fix namespaces move (Andrea Claudi) [1798649] - [net] ip_tunnel: fix namespaces move (Andrea Claudi) [1798649] - [net] ipv4: Detect rollover in specific fib table dump (Guillaume Nault) [1801587] - [net] inet: protect against too small mtu values. (Guillaume Nault) [1801587] - [net] icmp: fix data-race in cmp_global_allow() (Guillaume Nault) [1801587] - [net] inetpeer: fix data-race in inet_putpeer / inet_putpeer (Guillaume Nault) [1801587] - [net] ipv4: Fix table id reference in fib_sync_down_addr (Guillaume Nault) [1801587] - [net] dccp: do not leak jiffies on the wire (Guillaume Nault) [1801587] - [net] inet: stop leaking jiffies on the wire (Guillaume Nault) [1801587] - [tools] selftests: fib_tests: add more tests for metric update (Guillaume Nault) [1801587] - [net] ipv4: fix route update on metric change. (Guillaume Nault) [1801587] - [net] iptunnel: Set tun_flags in the iptunnel_metadata_reply from src (Guillaume Nault) [1801587] - [net] flow_dissector: Fix to use new variables for port ranges in bpf hook (Ivan Vecera) [1789862] - [net] net_sched: fix a resource leak in tcindex_set_parms() (Ivan Vecera) [1789862] - [tools] tc-testing: fix eBPF tests failure on linux fresh clones (Ivan Vecera) [1789862] - [net] net_sched: fix an OOB access in cls_tcindex (Ivan Vecera) [1789862] - [net] cls_rsvp: fix rsvp_policy (Ivan Vecera) [1789862] - [net] net_sched: ematch: reject invalid TCF_EM_SIMPLE (Ivan Vecera) [1789862] - [net] net_sched: walk through all child classes in tc_bind_tclass() (Ivan Vecera) [1789862] - [net] net_sched: fix ops->bind_class() implementations (Ivan Vecera) [1789862] - [net] net_sched: fix datalen for ematch (Ivan Vecera) [1789862] - [net] net_sched: use validated TCA_KIND attribute in tc_new_tfilter() (Ivan Vecera) [1789862] - [net] sch_prio: When ungrafting, replace with FIFO (Ivan Vecera) [1789862] - [net] pkt_sched: fq: do not accept silly TCA_FQ_QUANTUM (Ivan Vecera) [1789862] - [net] sched: add delete_empty() to filters and use it in cls_flower (Ivan Vecera) [1789862] - [net] sched: act_mirred: Pull mac prior redir to non mac_header_xmit device (Ivan Vecera) [1789862] - [net] sched: cls_u32: fix refcount leak in the error path of u32_change() (Ivan Vecera) [1789862] - [net] net_sched: sch_fq: properly set sk->sk_pacing_status (Ivan Vecera) [1789862] - [net] net_sched: validate TCA_KIND attribute in tc_chain_tmplt_add() (Ivan Vecera) [1789862] - [net] mqprio: Fix out-of-bounds access in mqprio_dump (Ivan Vecera) [1789862] - [net] sched: allow indirect blocks to bind to clsact in TC (Ivan Vecera) [1789862] - [net] core: rename indirect block ingress cb function (Ivan Vecera) [1789862] - [net] Fixed updating of ethertype in skb_mpls_push() (Ivan Vecera) [1789862] - [net] cls_flower: Fix the behavior using port ranges with hw-offload (Ivan Vecera) [1789862] - [net] sched: fix dump qlen for sch_mq/sch_mqprio with NOLOCK subqueues (Ivan Vecera) [1789862] - [net] Fixed updating of ethertype in function skb_mpls_pop (Ivan Vecera) [1789862] - [net] sched: fix `tc -s class show` no bstats on class with nolock subqueues (Ivan Vecera) [1789862] - [net] sched: act_pedit: fix WARN() in the traffic path (Ivan Vecera) [1789862] - [net] sched: actions: remove unused 'order' (Ivan Vecera) [1789862] - [net] sched: annotate lockless accesses to qdisc->empty (Ivan Vecera) [1789862] - [net] annotate lockless accesses to sk->sk_max_ack_backlog (Ivan Vecera) [1789862] - [net] inet: minor optimization for backlog setting in listen(2) (Ivan Vecera) [1789862] - [net] annotate lockless accesses to sk->sk_ack_backlog (Ivan Vecera) [1789862] - [net] use helpers to change sk_ack_backlog (Ivan Vecera) [1789862] - [net] sched: prevent duplicate flower rules from tcf_proto destroy race (Ivan Vecera) [1789862] - [net] flow_dissector: switch to siphash (Ivan Vecera) [1789862] - [netdrv] macvlan: use skb_reset_mac_header() in macvlan_queue_xmit() (Davide Caratti) [1801128] - [netdrv] macvlan: do not assume mac_header is set in macvlan_broadcast() (Davide Caratti) [1801128] - [net] psample: fix skb_over_panic (Sabrina Dubroca) [1800589] - [net] openvswitch: don't unlock mutex when changing the user_features fails (Davide Caratti) [1799363] - [net] rtnetlink: validate IFLA_MTU attribute in rtnl_create_link() (Guillaume Nault) [1798715] - [net] rtnetlink: fix a typo fbd -> fdb (Guillaume Nault) [1798715] - [net] bpf: Sockmap, skmsg helper overestimates push, pull, and pop bounds (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, msg_push_data may leave end mark in place (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, push write_space updates through ulp updates (Sabrina Dubroca) [1798179] - [net] sk_msg: Don't check if sock is locked when tearing down psock (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, fix pop data with SK_DROP return code (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, skmsg can have wrapped skmsg that needs extra chaining (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, tls_sw can create a plaintext buf > encrypt buf (Sabrina Dubroca) [1798179] - [include] bpf: Sockmap/tls, during free we may call tcp_bpf_unhash() in loop (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap, ensure sock lock held during tear down (Sabrina Dubroca) [1798179] - [net] tls: fix async operation (Sabrina Dubroca) [1798179] - [net] tls: Fix return values to avoid ENOTSUPP (Sabrina Dubroca) [1798179] - [net] skmsg: fix TLS 1.3 crash with full sk_msg (Sabrina Dubroca) [1798179] - [net] tls: free the record on encryption error (Sabrina Dubroca) [1798179] - [net] tls: take into account that bpf_exec_tx_verdict() may free the record (Sabrina Dubroca) [1798179] - [net] bpf: skmsg, fix potential psock NULL pointer dereference (Sabrina Dubroca) [1798179] - [net] tls: enable sk_msg redirect to tls socket egress (Sabrina Dubroca) [1798179] - [netdrv] macsec: fix refcnt leak in module exit routine (Sabrina Dubroca) [1799029] - [netdrv] ppp: Adjust indentation into ppp_async_input (Guillaume Nault) [1798104] - [net] l2tp: Allow duplicate session creation with UDP (Guillaume Nault) [1798104] - [net] Fix bugs introduced by netlink strict checking backport (Petr Oros) [1782172] - [tools] selftests: forwarding: fix race between packet receive and tc check (Hangbin Liu) [1797941] - [tools] selftests: forwarding: tc_common: Add hitting check (Hangbin Liu) [1797941] - [tools] selftests: net: push jq workaround into separate helper (Hangbin Liu) [1797941] - [tools] selftests: loopback.sh: skip this test if the driver does not support (Hangbin Liu) [1797941] - [tools] selftests: pmtu: fix init mtu value in description (Hangbin Liu) [1797941] - [tools] selftests: forwarding: Delete IPv6 address at the end (Hangbin Liu) [1797941] - [tools] selftests: pmtu: use -oneline for ip route list cache (Hangbin Liu) [1797941] - [tools] selftests: net: tcp_mmap should create detached threads (Hangbin Liu) [1797941] - [tools] selftests: net: reuseport_dualstack: fix uninitalized parameter (Hangbin Liu) [1797941] - [net] tipc: fix link overflow issue at socket shutdown (Xin Long) [1798070] - [net] tipc: fix retrans failure due to wrong destination (Xin Long) [1798070] - [net] tipc: fix potential hanging after b/rcast changing (Xin Long) [1798070] - [net] tipc: fix ordering of tipc module init and exit routine (Xin Long) [1798070] - [net] tipc: fix wrong timeout input for tipc_wait_for_cond() (Xin Long) [1798070] - [net] tipc: fix wrong socket reference counter after tipc_sk_timeout() returns (Xin Long) [1798070] - [net] tipc: fix potential memory leak in __tipc_sendmsg() (Xin Long) [1798070] - [net] tipc: fix link name length check (Xin Long) [1798070] - [net] tipc: update replicast capability for broadcast send link (Xin Long) [1798070] - [net] tipc: update cluster capabilities if node deleted (Xin Long) [1798070] - [net] tipc: update mon's self addr when node addr generated (Xin Long) [1798070] - [net] tipc: reduce sensitive to retransmit failures (Xin Long) [1798070] - [net] sctp: free cmd->obj.chunk for the unprocessed SCTP_CMD_REPLY (Xin Long) [1798061] - [net] sctp: fully initialize v4 addr in some functions (Xin Long) [1798061] - [net] sctp: cache netns in sctp_ep_common (Xin Long) [1798061] - [net] sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook (Xin Long) [1798061] - [net] xfrm: support output_mark for offload ESP packets (Xin Long) [1798059] - [net] xfrm: release device reference for invalid state (Xin Long) [1798059] - [net] netfilter: fix a use-after-free in mtype_destroy() (Davide Caratti) [1796361] - [net] netfilter: ipset: avoid null deref when IPSET_ATTR_LINENO is present (Davide Caratti) [1796361] - [net] netfilter: conntrack: Request module if l3proto is unknown (Phil Sutter) [1752765] - [include] tcp: Protect accesses to .ts_recent_stamp with {READ,WRITE}_ONCE() (Guillaume Nault) [1780828] - [include] tcp: tighten acceptance of ACKs not matching a child socket (Guillaume Nault) [1780828] - [include] tcp: fix rejected syncookies due to stale timestamps (Guillaume Nault) [1780828] - [net] SUNRPC: Make "no retrans timeout" soft tasks behave like softconn for timeouts (Steve Dickson) [1801454] - [kernel] genirq, sched/isolation: Isolate from handling managed interrupts (Peter Xu) [1783026]- [nvme] nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info (David Milburn) [1798630] - [mm] arm64: debug: Remove unused return value from do_debug_exception() (Bhupesh Sharma) [1802511] - [mm] arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals (Bhupesh Sharma) [1802511] - [mm] arm64/mm: Reorganize arguments for is_el1_permission_fault() (Bhupesh Sharma) [1802511] - [mm] arm64/mm: Define esr_to_debug_fault_info() (Bhupesh Sharma) [1802511] - [infiniband] IB/mlx5: Do reverse sequence during device removal (Alaa Hleihel) [1801497] - [netdrv] bnxt_en: Fix RDMA driver failure with SRIOV after firmware reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Refactor logic to re-enable SRIOV after firmware reset detected (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix logic that disables Bus Master during firmware reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix TC queue mapping (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix NTUPLE firmware command failures (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix ipv6 RFS filter matching logic (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Do not treat DSN (Digital Serial Number) read failure as fatal (Jonathan Toppins) [1801868] - [netdrv] bnxt: Detach page from page pool before sending up the stack (Jonathan Toppins) [1801868] - [netdrv] bnxt: apply computed clamp value for coalece parameter (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix MSIX request logic for RDMA driver (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Free context memory in the open path if firmware has been reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Return error if FW returns more data than dump length (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix bp->fw_health allocation and free logic (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Add missing devlink health reporters for VFs (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix the logic that creates the health reporters (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Do driver unregister cleanup in bnxt_init_one() failure path (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Send FUNC_RESOURCE_QCAPS command in bnxt_resume() (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Combine 2 functions calling the same HWRM_DRV_RGTR fw command (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Abort waiting for firmware response if there is no heartbeat (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Return proper error code for non-existent NVM variable (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Add a warning message for driver initiated reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Improve RX buffer error handling (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Extend ETHTOOL_RESET to hot reset driver (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Increase firmware response timeout for coredump commands (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix suspend/resume path on 57500 chips (Jonathan Toppins) [1801111] - [netdrv] bnxt_en: Disable/enable Bus master during suspend/resume (Jonathan Toppins) [1801111] - [fs] cifs: fix soft mounts hanging in the reconnect code (Leif Sahlberg) [1795423] - [kernel] audit: CONFIG_CHANGE don't log internal bookkeeping as an event (Richard Guy Briggs) [1798512] - [security] selinux: reorder hooks to make runtime disable less broken (Ondrej Mosnacek) [1778990] - [scsi] scsi: qla2xxx: Fix unbound NVME response length (Himanshu Madhani) [1796480] - [isdn] misdn: enforce CAP_NET_RAW for raw sockets (Andrea Claudi) [1779475] {CVE-2019-17055}- [fs] Revert: f5bcc37b81fc ("namei: allow restricted O_CREAT of FIFOs and regular files") (Eric Sandeen) [1801468] - [fs] Revert: 433cbb6cf0ae ("quota: honor quota type in Q_XGETQSTATcalls") (Eric Sandeen) [1800435] - [infiniband] RDMA/siw: Fix setting active_mtu attribute (Kamal Heib) [1797199] - [infiniband] RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create (Kamal Heib) [1733690] - [scsi] scsi: lpfc: Fix release of hwq to clear the eq relationship (Dick Kennedy) [1798661] - [x86] kvm/hyper-v: don't allow to turn on unsupported VMX controls for nested guests (Vitaly Kuznetsov) [1786288] - [x86] kvm/hyper-v: move VMX controls sanitization out of nested_enable_evmcs() (Vitaly Kuznetsov) [1786288] - [x86] kvm/hyper-v: remove stale evmcs_already_enabled check from nested_enable_evmcs() (Vitaly Kuznetsov) [1786288] - [x86] kvm: svm: relax conditions for allowing MSR_IA32_SPEC_CTRL accesses (Paolo Bonzini) [1796417] - [x86] kvm: x86: avoid incorrect writes to host MSR_IA32_SPEC_CTRL (Paolo Bonzini) [1796417] - [tools] selftests: netfilter: Introduce tests for sets with range concatenation (Stefano Brivio) [1593711] - [net] nf_tables: Add set type for arbitrary concatenation of ranges (Stefano Brivio) [1593711] - [lib] bitmap: Introduce bitmap_cut(): cut bits and shift remaining (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: Support for sets with multiple ranged fields (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: add NFTA_SET_ELEM_KEY_END attribute (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: add nft_setelem_parse_key() (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: validate NFT_DATA_VALUE after nft_data_init() (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: validate NFT_SET_ELEM_INTERVAL_END (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: remove unused parameter ctx (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: remove unused variable (Stefano Brivio) [1593711] - [ptp] ptp: free ptp device pin descriptors properly (Vladis Dronov) [1787568] - [ptp] ptp: fix the race between the release of ptp_clock and cdev (Vladis Dronov) [1787568] - [ptp] ptp: Fix pass zero to ERR_PTR() in ptp_clock_register (Vladis Dronov) [1787568]- [fs] NFSv4: pnfs_roc() must use cred_fscmp() to compare creds (Benjamin Coddington) [1800893] - [drm] drm/nouveau/kms/gv100-: avoid sending a core update until the first modeset (Ben Skeggs) [1801091] - [drm] drm/nouveau/kms/gv100-: move window ownership setup into modesetting path (Ben Skeggs) [1801091] - [drm] drm/nouveau/disp/gv100-: halt NV_PDISP_FE_RM_INTR_STAT_CTRL_DISP_ERROR storms (Ben Skeggs) [1801091] - [drm] drm/nouveau: Add HD-audio component notifier support (Ben Skeggs) [1792191] - [netdrv] net/mlx5: Fix deadlock in fs_core (Alaa Hleihel) [1786630] - [drm] drm/amd/dm/mst: Ignore payload update failures (Lyude Paul) [1773800 1773795] - [kernel] sched/rt: Optimize checking group RT scheduler constraints (Phil Auld) [1797106] - [fs] cifs: Fix mount options set in automount (Dave Wysochanski) [1790922]- [kernel] timers/nohz: Update NOHZ load in remote tick (Scott Wood) [1791434] - [kernel] sched/core: Don't skip remote tick for idle CPUs (Scott Wood) [1791434] - [drm] drm/amdgpu/vi: silence an uninitialized variable warning (Lyude Paul) [1792565] - [drm] drm: panel-lvds: Potential Oops in probe error handling (Lyude Paul) [1792565] - [drm] drm/i915: Fix pid leak with banned clients (Lyude Paul) [1792565] - [drm] drm/amdgpu: allow direct upload save restore list for raven2 (Lyude Paul) [1792565] - [drm] drm/amd/display: Reorder detect_edp_sink_caps before link settings read (Lyude Paul) [1792565] - [drm] drm/i915: Add missing include file (Lyude Paul) [1792565] - [drm] drm/amdgpu: enable gfxoff for raven1 refresh (Lyude Paul) [1792565] - [drm] drm/amdgpu/discovery: reserve discovery data at the top of VRAM (Lyude Paul) [1792565] - [drm] drm/amdgpu: cleanup creating BOs at fixed location (v2) (Lyude Paul) [1792565] - [drm] drm/tegra: Fix ordering of cleanup code (Lyude Paul) [1792565] - [drm] drm/i915/gen9: Clear residual context state on context switch (Lyude Paul) [1792565] - [drm] drm/i915: Add Wa_1407352427:icl,ehl (Lyude Paul) [1792565] - [drm] drm/dp_mst: correct the shifting in DP_REMOTE_I2C_READ (Lyude Paul) [1792565] - [drm] drm/fb-helper: Round up bits_per_pixel if possible (Lyude Paul) [1792565] - [drm] drm/i915: Add Wa_1408615072 and Wa_1407596294 to icl, ehl (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock for vega20 (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock for navi (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock (Lyude Paul) [1792565] - [drm] drm/nouveau/kms/nv50-: fix panel scaling (Lyude Paul) [1792565 1741114] - [drm] drm/nouveau: Fix drm-core using atomic code-paths on pre-nv50 hardware (Lyude Paul) [1792565] - [drm] drm/nouveau: Move the declaration of struct nouveau_conn_atom up a bit (Lyude Paul) [1792565] - [drm] drm/amd/display: Reset steer fifo before unblanking the stream (Lyude Paul) [1792565] - [drm] drm/amd/display: Change the delay time before enabling FEC (Lyude Paul) [1792565] - [drm] drm/amd/display: Fixed kernel panic when booting with DP-to-HDMI dongle (Lyude Paul) [1792565] - [drm] drm/amdgpu: add cache flush workaround to gfx8 emit_fence (Lyude Paul) [1792565] - [drm] drm/amdgpu: add check before enabling/disabling broadcast mode (Lyude Paul) [1792565] - [drm] drm: limit to INT_MAX in create_blob ioctl (Lyude Paul) [1792565] - [drm] drm/amdgpu: Call find_vma under mmap_sem (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix uninitialized variable pasid_mapping_needed (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix bad DMA from INTERRUPT_CNTL2 (Lyude Paul) [1792565] - [drm] drm/amdgpu: Avoid accidental thread reactivation (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix potential double drop fence reference (Lyude Paul) [1792565] - [drm] drm/amdgpu: disallow direct upload save restore list from gfx driver (Lyude Paul) [1792565] - [gpu] gpu: host1x: Allocate gather copy for host1x (Lyude Paul) [1792565] - [drm] drm/tegra: sor: Use correct SOR index on Tegra210 (Lyude Paul) [1792565] - [drm] drm/amd/display: correctly populate dpp refclk in fpga (Lyude Paul) [1792565] - [drm] drm: Don't free jobs in wait_event_interruptible() (Lyude Paul) [1792565] - [drm] drm/gma500: fix memory disclosures due to uninitialized bytes (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix amdgpu trace event print string format error (Lyude Paul) [1792565] - [drm] drm/amd/powerplay: avoid disabling ECC if RAS is enabled for VEGA20 (Lyude Paul) [1792565] - [drm] drm/bridge: dw-hdmi: Restore audio when setting a mode (Lyude Paul) [1792565] - [drm] drm/amd/display: Program DWB watermarks from correct state (Lyude Paul) [1792565] - [drm] drm/amd/display: Fix dongle_caps containing stale information (Lyude Paul) [1792565] - [drm] drm/amd/display: add new active dongle to existent w/a (Lyude Paul) [1792565] - [drm] drm/amd/display: refactor Device ID for external chips (Lyude Paul) [1792565] - [drm] drm/amd/display: wait for set pipe mcp command completion (Lyude Paul) [1792565] - [drm] drm/amd/display: Properly round nominal frequency for SPD (Lyude Paul) [1792565] - [drm] drm/drm_vblank: Change EINVAL by the correct errno (Lyude Paul) [1792565] - [drm] drm/amdkfd: Fix MQD size calculation (Lyude Paul) [1792565] - [drm] drm/bridge: dw-hdmi: Refuse DDC/CI transfers on the internal I2C controller (Lyude Paul) [1792565] - [drm] drm/amd/display: set minimum abm backlight level (Lyude Paul) [1792565] - [drm] drm/amd/display: load iram for abm 2.3 (Lyude Paul) [1792565] - [drm] drm/amd/powerplay: A workaround to GPU RESET on APU (Lyude Paul) [1792565] - [drm] drm/amdkfd: fix a potential NULL pointer dereference (v2) (Lyude Paul) [1792565] - [drm] drm/amd/display: Set number of pipes to 1 if the second pipe was disabled (Lyude Paul) [1792565] - [drm] drm/amd/display: Handle virtual signal type in disable_link() (Lyude Paul) [1792565] - [drm] drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu: grab the id mgr lock while accessing passid_mapping (Lyude Paul) [1792565] - [drm] drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code (Lyude Paul) [1792565] - [drm] drm/bridge: analogix-anx78xx: silence -EPROBE_DEFER warnings (Lyude Paul) [1792565] - [drm] drm/amd/display: verify stream link before link test (Lyude Paul) [1792565] - [drm] drm: Use EOPNOTSUPP, not ENOTSUPP (Lyude Paul) [1792565] - [drm] drm/mipi-dbi: fix a loop in debugfs code (Lyude Paul) [1792565] - [drm] drm: mst: Fix query_payload ack reply struct (Lyude Paul) [1792565] - [drm] Revert "drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper." (Lyude Paul) [1792565] - [drm] drm/amdgpu: add invalidate semaphore limit for SRIOV and picasso in gmc9 (Lyude Paul) [1792565] - [drm] drm/amdgpu: avoid using invalidate semaphore for picasso (Lyude Paul) [1792565] - [drm] drm/amdgpu/gfx10: re-init clear state buffer after gpu reset (Lyude Paul) [1792565] - [drm] drm/amdgpu/gfx10: explicitly wait for cp idle after halt/unhalt (Lyude Paul) [1792565] - [drm] drm/amdgpu: invalidate mmhub semaphore workaround in gmc9/gmc10 (Lyude Paul) [1792565] - [drm] drm/amdgpu: set adev->num_vmhubs for gmc6, 7, 8 (Lyude Paul) [1792565] - [drm] drm/amdgpu: Export function to flush TLB of specific vm hub (Lyude Paul) [1792565] - [drm] drm/amdgpu: add new member in amdgpu_device for vmhub counts per asic chip (Lyude Paul) [1792565] - [drm] drm/amdgpu: rename AMDGPU_GFXHUB/MMHUB macro with hub number (Lyude Paul) [1792565] - [drm] drm/amdgpu: initialize vm_inv_eng0_sem for gfxhub and mmhub (Lyude Paul) [1792565] - [drm] drm/amd/display: add default clocks if not able to fetch them (Lyude Paul) [1792565] - [drm] drm/amd/display: re-enable wait in pipelock, but add timeout (Lyude Paul) [1792565] - [drm] drm/dp_mst: Correct the bug in drm_dp_update_payload_part1() (Lyude Paul) [1792565] - [drm] drm/radeon: fix r1xx/r2xx register checker for POT textures (Lyude Paul) [1792565] - [drm] drm/i915/fbc: Disable fbc by default on all glk+ (Lyude Paul) [1792565] - [drm] drm/nouveau/kms/nv50-: Limit MST BPC to 8 (Lyude Paul) [1792565 1773804] - [drm] drm/nouveau/kms/nv50-: Store the bpc we're using in nv50_head_atom (Lyude Paul) [1792565 1773804] - [drm] drm/nouveau/kms/nv50-: Call outp_atomic_check_view() before handling PBN (Lyude Paul) [1792565 1773804] - [drm] drm/mgag200: Flag all G200 SE A machines as broken wrt (Lyude Paul) [1792565] - [drm] drm/mgag200: Add workaround for HW that does not support 'startadd' (Lyude Paul) [1792565] - [drm] drm/mgag200: Store flags from PCI driver data in device structure (Lyude Paul) [1792565] - [drm] drm/mgag200: Extract device type from flags (Lyude Paul) [1792565] - [dma-buf] dma-buf: Fix memory leak in sync_file_merge() (Lyude Paul) [1792565] - [video] video/hdmi: Fix AVI bar unpack (Lyude Paul) [1792565] - [drm] drm: damage_helper: Fix race checking plane->state->fb (Lyude Paul) [1792565] - [drm] drm/i915: Fix detection for a CMP-V PCH (Lyude Paul) [1792565] - [x86] Mark AMD Ryzen 7 as supported (David Arcari) [1797317] - [x86] Mark AMD Ryzen 5 as supported (David Arcari) [1718051] - [mm] mm/sparse.c: reset section's mem_map when fully deactivated (Pingfan Liu) [1797848] - [drm] drm/mgag200: Don't unpin the current cursor image's buffer (Lyude Paul) [1784290] - [drm] drm/mgag200: Set cursor scanout address to correct BO (Lyude Paul) [1784290] - [drm] drm/mgag200: Pin displayed cursor BO to video memory (Lyude Paul) [1784290] - [tools] Correction to manpage of cpupower (Prarit Bhargava) [1796139] - [fs] cifs: fix soft mounts hanging in the reconnect code (Dave Wysochanski) [1795429] - [net] ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup (Sabrina Dubroca) [1774440] - [net] ipv6: add net argument to ip6_dst_lookup_flow (Sabrina Dubroca) [1774440] - [netdrv] can: peak_usb: fix slab info leak (Guillaume Nault) [1787486] {CVE-2019-19534} - [netdrv] vxlan: fix tos value before xmit (Hangbin Liu) [1786075] - [net] netfilter: nft_tproxy: Fix port selector on Big Endian (Phil Sutter) [1781481] - [net] devlink: Change devlink health locking mechanism (Petr Oros) [1785997] - [net] xfrm: Fix memleak on xfrm state destroy (Xin Long) [1780470] - [net] erspan: remove the incorrect mtu limit for erspan (Hangbin Liu) [1783871] - [net] ieee802154: enforce CAP_NET_RAW for raw sockets (Andrea Claudi) [1779495] {CVE-2019-17053} - [net] netfilter: masquerade: don't flush all conntracks if only one address deleted on device (Patrick Talbert) [1772334]- [mm] memcg: Add preemption point in accumulate_memcg_tree() (Waiman Long) [1795049] - [edac] EDAC: skx_common: downgrade message importance on missing PCI device (Aristeu Rozanski) [1775511] - [infiniband] IB/core: Do not notify GID change event of an unregistered device (Kamal Heib) [1787333] - [infiniband] IB/core: Let IB core distribute cache update events (Kamal Heib) [1787333] - [arm64] arm64: kexec: always reset to EL2 if present (Bhupesh Sharma) [1794805] - [tools] perf header: Use last modification time for timestamp (Michael Petlan) [1791258] - [netdrv] net/mlx5e: Enable all available stats for uplink reps (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Create q counters on uplink representors (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Convert rep stats to mlx5e_stats_grp-based infra (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: IPoIB, use separate stats groups (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Convert stats groups array to array of group pointers (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Declare stats groups via macro (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Profile specific stats groups (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Move uplink rep init/cleanup code into own functions (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Add discard counters per priority (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Add port buffer's congestion counters (Alaa Hleihel) [1786321] - [netdrv] net/mlx5: Expose HW capability bits for port buffer per priority congestion counters (Alaa Hleihel) [1786321] - [netdrv] qede: Fix multicast mac configuration (Manish Chopra) [1784894] - [thunderbolt] thunderbolt: Drop unnecessary read when writing LC command in Ice Lake (Jarod Wilson) [1784568] - [thunderbolt] thunderbolt: Fix lockdep circular locking depedency warning (Jarod Wilson) [1784568] - [thunderbolt] thunderbolt: Read DP IN adapter first two dwords in one go (Jarod Wilson) [1784568]- [pci] PCI/PM: Move pci_dev_wait() definition earlier (Myron Stowe) [1794266] - [pci] PCI/PM: Add missing link delays required by the PCIe spec (Myron Stowe) [1794266] - [pci] PCI/PM: Add pcie_wait_for_link_delay() (Myron Stowe) [1794266] - [pci] PCI/PM: Return error when changing power state from D3cold (Myron Stowe) [1794266] - [pci] PCI/PM: Decode D3cold power state correctly (Myron Stowe) [1794266] - [pci] PCI/PM: Fold __pci_complete_power_transition() into its caller (Myron Stowe) [1794266] - [pci] PCI/PM: Avoid exporting __pci_complete_power_transition() (Myron Stowe) [1794266] - [pci] PCI/PM: Fold __pci_start_power_transition() into its caller (Myron Stowe) [1794266] - [pci] PCI/PM: Use pci_power_up() in pci_set_power_state() (Myron Stowe) [1794266] - [pci] PCI/PM: Move power state update away from pci_power_up() (Myron Stowe) [1794266] - [pci] PCI/PM: Remove unused pci_driver.suspend_late() hook (Myron Stowe) [1794266] - [pci] PCI/PM: Remove unused pci_driver.resume_early() hook (Myron Stowe) [1794266] - [xen] xen-platform: Convert to generic power management (Myron Stowe) [1794266] - [pci] PCI/PM: Simplify pci_set_power_state() (Myron Stowe) [1794266] - [pci] PCI/PM: Expand PM reset messages to mention D3hot (not just D3) (Myron Stowe) [1794266] - [pci] PCI/PM: Apply D2 delay as milliseconds, not microseconds (Myron Stowe) [1794266] - [pci] PCI/PM: Use pci_WARN() to include device information (Myron Stowe) [1794266] - [pci] PCI/PM: Use PCI dev_printk() wrappers for consistency (Myron Stowe) [1794266] - [pci] PCI/PM: Make power management op coding style consistent (Myron Stowe) [1794266] - [pci] PCI/PM: Run resume fixups before disabling wakeup events (Myron Stowe) [1794266] - [pci] PCI/PM: Clear PCIe PME Status even for legacy power management (Myron Stowe) [1794266] - [pci] PCI/PM: Always return devices to D0 when thawing (Myron Stowe) [1794266] - [pci] PCI: PM: Fix pci_power_up() (Myron Stowe) [1794266] - [pci] PCI: Make pcie_downstream_port() available outside of access.c (Myron Stowe) [1794266] - [pci] PCI: Add pci_info_ratelimited() to ratelimit PCI separately (Myron Stowe) [1794266] - [pci] PCI: PM: Simplify bus-level hibernation callbacks (Myron Stowe) [1794266] - [pci] PCI: Do not poll for PME if the device is in D3cold (Myron Stowe) [1794266] - [pci] PCI: PM: Replace pci_dev_keep_suspended() with two functions (Myron Stowe) [1794266] - [pci] PCI: PM: Avoid resuming devices in D3hot during system suspend (Myron Stowe) [1794266] - [pci] PCI: PM: Avoid skipping bus-level PM on platforms without ACPI (Myron Stowe) [1794266] - [pci] treewide: Switch printk users from pf and pF to ps and pS, respectively (Myron Stowe) [1794266] - [sound] ALSA: Use the legacy HDA driver as default for Intel DSP platforms (Jaroslav Kysela) [1793227] - [nvme] nvme: nvme_mpath_init remove multipath check (David Milburn) [1790958] - [mm] mm/page-writeback.c: don't break integrity writeback on ->writepage() error (Christoph von Recklinghausen) [1782117] - [arm64] arm64: Revert support for execute-only user mappings (Jeremy Linton) [1788629] - [powerpc] powerpc/papr_scm: Don't enable direct map for a region by default (Steve Best) [1795706]- [tools] selftests/eeh: Bump EEH wait time to 60s (Steve Best) [1783199] - [tools] tools/kvm_stat: Fix kvm_exit filter name (Gavin Shan) [1780345] - [infiniband] RDMA/bnxt_re: Report more number of completion vectors (Selvin Xavier) [1788037 1753515] - [infiniband] RDMA/bnxt_re: Fix Send Work Entry state check while polling completions (Selvin Xavier) [1788037] - [infiniband] RDMA/bnxt_re: Fix missing le16_to_cpu (Selvin Xavier) [1788037] - [infiniband] RDMA/bnxt_re: Avoid freeing MR resources if dereg fails (Selvin Xavier) [1788037 1737147] - [infiniband] RDMA/bnxt_re: Fix stat push into dma buffer on gen p5 devices (Selvin Xavier) [1788037 1771855] - [infiniband] RDMA/bnxt_re: Fix chip number validation Broadcom's Gen P5 series (Selvin Xavier) [1788037 1783943] - [netdrv] net/mlx5e: Clear VF config when switching modes (mohamad meib) [1787276] - [base] drivers/base/memory.c: cache memory blocks in xarray to accelerate lookup fixup (David Hildenbrand) [1789900] - [base] drivers/base/memory.c: cache memory blocks in xarray to accelerate lookup (David Hildenbrand) [1789900] - [base] drivers/base/memory.c: drop the mem_sysfs_mutex (David Hildenbrand) [1789900] - [base] driver/base/memory.c: validate memory block size early (David Hildenbrand) [1789900] - [fs] block: Don't revalidate bdev of hidden gendisk (David Milburn) [1779342] - [scsi] scsi: virtio_scsi: unplug LUNs when events missed (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: implement request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: fix dh and multipathing for SCSI hosts without request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: fix missing .cleanup_rq for SCSI hosts without request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: add support for request batching (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Use struct_size() helper (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: remove unused 'affinity_hint_set' (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: don't send sc payload with tmfs (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Remove per-target data because it is no longer used (Maxim Levitsky) [1614188] - [powerpc] powerpc/pseries/lparcfg: Fix display of Maximum Memory (Steve Best) [1795622] - [powerpc] powernv: Don't reprogram SLW image on every KVM guest entry/exit (Laurent Vivier) [1751078] - [x86] Mark certain versions of Comet Lake as supported (David Arcari) [1794198] - [s390] s390/dasd: Disable Thin Provisioning to prevent data loss (Philipp Rudo) [1793461]- [x86] kvm: x86/mmu: Take slots_lock when using kvm_mmu_zap_all_fast() (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: x86: disable shattered huge page recovery for PREEMPT_RT (Paolo Bonzini) [1690344] {CVE-2018-12207} - [documentation] documentation: Add ITLB_MULTIHIT documentation (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: x86: mmu: Recovery of shattered NX large pages (Paolo Bonzini) [1690344] {CVE-2018-12207} - [virt] kvm: Add helper function for creating VM worker threads (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: mmu: ITLB_MULTIHIT mitigation (Paolo Bonzini) [1690344] {CVE-2018-12207} - [kernel] cpu/speculation: Uninline and export CPU mitigations helpers (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] cpu: Add Tremont to the cpu vulnerability whitelist (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] bugs: Add ITLB_MULTIHIT bug infrastructure (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: vmx, svm: always run with EFER.NXE=1 when shadow paging is active (Paolo Bonzini) [1690344] {CVE-2018-12207} - [crypto] crypto: hmac - fix memory leak in hmac_init_tfm() (Herbert Xu) [1775858] - [crypto] crypto: hash - fix incorrect HASH_MAX_DESCSIZE (Herbert Xu) [1775858] - [nvme] nvme: Translate more status codes to blk_status_t (Gopal Tiwari) [1781537] - [include] nvme: resync include/linux/nvme.h with nvmecli (Gopal Tiwari) [1781537] - [netdrv] hv_netvsc: Fix memory leak when removing rndis device (Mohammed Gamal) [1733007] - [fs] cifs: Fix memory allocation in __smb2_handle_cancelled_cmd() (Dave Wysochanski) [1793182] - [tools] perf c2c: Fix report with offline cpus (Michael Petlan) [1744903] - [kernel] locking/rwsem: Fix kernel crash when spinning on RWSEM_OWNER_UNKNOWN (Waiman Long) [1793028] - [mm] mm/memory_hotplug: don't free usage map when removing a re-added early section (Pingfan Liu) [1787269] - [netdrv] iavf: remove current MAC address filter on VF reset (Stefan Assmann) [1735725 1738738] - [dma] dma-mapping: fix handling of dma-ranges for reserved memory (again) (Jerry Snitselaar) [1784691]- [fs] pnfs/filelayout: enable LAYOUTGET on OPEN (Steve Dickson) [1756140] - [fs] NFSD fixing possible null pointer derefering in copy offload (Benjamin Coddington) [1763220] - [fs] nfsd: Ensure CLONE persists data and metadata changes to the target file (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix backchannel latency metrics (Benjamin Coddington) [1763220] - [fs] NFSv4.x: Drop the slot if nfs4_delegreturn_prepare waits for layoutreturn (Benjamin Coddington) [1763220] - [fs] NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process() (Benjamin Coddington) [1763220] - [fs] NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid() (Benjamin Coddington) [1763220] - [fs] NFSv4: Don't allow a cached open with a revoked delegation (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix svcauth_gss_proxy_init() (Benjamin Coddington) [1763220] - [net] SUNRPC: The TCP back channel mustn't disappear while requests are outstanding (Benjamin Coddington) [1763220] - [net] xprtrdma: Close window between waking RPC senders and posting Receives (Benjamin Coddington) [1763220] - [net] xprtrdma: Connection becomes unstable after a reconnect (Benjamin Coddington) [1763220] - [net] xprtrdma: Add unique trace points for posting Local Invalidate WRs (Benjamin Coddington) [1763220] - [net] sunrpc: fix crash when cache_head become valid before update (Benjamin Coddington) [1763220] - [fs] nfsd4: fix up replay_matches_cache() (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix leak of clp->cl_acceptor string (Benjamin Coddington) [1763220] - [fs] pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors (Benjamin Coddington) [1763220] - [fs] NFS: Fix O_DIRECT accounting of number of bytes read/written (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix another issue with MIC buffer space (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix buffer handling of GSS MIC without slack (Benjamin Coddington) [1763220] - [fs] Revert "NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated" (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't handle errors if the bind/connect succeeded (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix congestion window race with disconnect (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't try to parse incomplete RPC messages (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't receive TCP data into a request buffer that has been reset (Benjamin Coddington) [1763220] - [net] SUNRPC: Dequeue the request from the receive queue while we're re-encoding (Benjamin Coddington) [1763220] - [net] SUNRPC: Handle connection breakages correctly in call_status() (Benjamin Coddington) [1763220] - [net] xprtrdma: Toggle XPRT_CONGESTED in xprtrdma's slot methods (Benjamin Coddington) [1763220] - [fs] NFS: Ensure O_DIRECT reports an error if the bytes read/written is 0 (Benjamin Coddington) [1763220] - [fs] NFSv4/pnfs: Fix a page lock leak in nfs_pageio_resend() (Benjamin Coddington) [1763220] - [fs] NFS: Fix regression whereby fscache errors are appearing on 'nofsc' mounts (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim() (Benjamin Coddington) [1763220] - [fs] NFSv4.1: Only reap expired delegations (Benjamin Coddington) [1763220] - [fs] NFSv4.1: Fix open stateid recovery (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix a credential refcount leak in nfs41_check_delegation_stateid (Benjamin Coddington) [1763220] - [fs] NFSv4: Handle the special Linux file open access mode (Benjamin Coddington) [1763220] - [fs] nfsd: Fix overflow causing non-working mounts on 1 TB machines (Benjamin Coddington) [1763220] - [md] md: make sure desc_nr less than MD_SB_DISKS (Nigel Croxon) [1769057] - [md] md: raid1: check rdev before reference in raid1_sync_request func (Nigel Croxon) [1769057] - [md] md/raid10: prevent access of uninitialized resync_pages offset (Nigel Croxon) [1769057] - [md] md: avoid invalid memory access for array sb->dev_roles (Nigel Croxon) [1769057] - [md] md/raid1: avoid soft lockup under high load (Nigel Croxon) [1769057] - [md] md: no longer compare spare disk superblock events in super_load (Nigel Croxon) [1769057] - [md] md: improve handling of bio with REQ_PREFLUSH in md_flush_request() (Nigel Croxon) [1769057] - [md] md/bitmap: avoid race window between md_bitmap_resize and bitmap_file_clear_bit (Nigel Croxon) [1769057] - [md] md/raid0: Fix an error message in raid0_make_request() (Nigel Croxon) [1769057] - [md] md/raid0: fix warning message for parameter default_layout (Nigel Croxon) [1769057] - [netdrv] net/mlx5: DR, Init lists that are used in rule's member (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, No need for atomic refcount for internal SW steering resources (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create multiple destination action from dr_create_fte (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Add support for multiple destination table action (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Align dest FT action creation to API (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Pass table flags at creation to lower layer (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create multi-destination table for SW-steering use (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create FTE entry in the FW from SW-steering (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Use attributes struct for FW flow table creation (Alaa Hleihel) [1775986] - [drm] drm/amd/display: fix struct init in update_bounding_box (Don Dutile) [1784621] - [tools] perf/x86/pmu-events: Fix Kernel_Utilization metric (Michael Petlan) [1788434] - [tools] perf vendor events intel: Update all the Intel JSON metrics from TMAM 3.6 (Michael Petlan) [1788434] - [tools] perf vendor events intel: Update CascadelakeX events to v1.05 (Michael Petlan) [1788434] - [tools] cpupower: mperf_monitor: Update cpupower to use the RDPRU instruction (Janakarajan Natarajan) [1766357] - [tools] cpupower: mperf_monitor: Introduce per_cpu_schedule flag (Janakarajan Natarajan) [1766357] - [tools] cpupower: Move needs_root variable into a sub-struct (Janakarajan Natarajan) [1766357] - [mm] coredump: fix race condition between collapse_huge_page() and core dumping (Andrea Arcangeli) [1722986] - [mm] memcg, oom: don't require __GFP_FS when invoking memcg OOM killer (Waiman Long) [1791170] - [uapi] mm: move MAP_SYNC to asm-generic/mman-common.h (Jeff Moyer) [1791539]- [linux] ptr_ring: wrap back ->producer in __ptr_ring_swap_queue() (Lu Lu) [1663784] - [virtio] virtio-balloon: fix managed page counts when migrating pages between zones (David Hildenbrand) [1689800] - [infiniband] IB/mlx4: Follow mirror sequence of device add during device removal (mohamad meib) [1786042] - [netdrv] gve: Fix the queue page list allocated pages count (Patricio Noyola) [1789114] - [netdrv] gve: fix dma sync bug where not all pages synced (David Awogbemila) [1790957] - [netdrv] gve: Fixes DMA synchronization (David Awogbemila) [1789027] - [net] SUNRPC: Ignore queue transmission errors on successful transmission (Benjamin Coddington) [1769367] - [net] Revert "SUNRPC: Micro-optimise when the task is known not to be sleeping" (Benjamin Coddington) [1769367] - [net] SUNRPC: Fix up calculation of client message length (Benjamin Coddington) [1769367] - [net] Merge tag 'nfs-rdma-for-5.1-1' of git://git.linux-nfs.org/projects/anna/linux-nfs (Benjamin Coddington) [1769367] - [char] tpm: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's" (Jerry Snitselaar) [1789088] - [char] tpm: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts" (Jerry Snitselaar) [1789088] - [tools] perf jvmti: Link against tools/lib/ctype.h to have weak strlcpy() (Michael Petlan) [1786048] - [tools] perf jvmti: Link against tools/lib/string.o to have weak strlcpy() (Michael Petlan) [1786048] - [kernel] kprobes: Show address of kprobes if kallsyms does (Michael Petlan) [1747099] - [kernel] genirq/debugfs: Reset domain debugfs_file on removal of the debugfs file (Mohammed Gamal) [1782640] - [powerpc] powerpc: Fix 32-bit KVM-PR lockup and host crash with MacOS guest (Steve Best) [1789594]- [platform] x86: intel_pmc_core: Add Comet Lake (CML) platform support to intel_pmc_core driver (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Fix the SoC naming inconsistency (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core_pltdrv: Module removal warning fix (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Do not ioremap RAM (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Remove dev_err() usage after platform_get_irq() (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Add ICL-NNPI support to PMC Core (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Attach using APCI HID "INT33A1" (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: transform Pkg C-state residency from TSC ticks into microseconds (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc: no need to check return value of debugfs_create functions (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Allow to dump debug registers on S0ix failure (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Convert to a platform_driver (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Don't map non-used optional resources (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Apply same width for offset definitions (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Use BIT() macro (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Mark local function static (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: adding error handling (Lenny Szubowicz) [1773793] - [mm] memory_hotplug: cleanup __remove_pages() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: drop local variables in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't check for "all holes" in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: we always have a zone in find_(smallest|biggest)_section_pfn (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: poison memmap in remove_pfn_range_from_zone() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: shrink zones when offlining memory (Christoph von Recklinghausen) [1766491] - [mm] memmap_init: update variable name in memmap_init_zone (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't access uninitialized memmaps in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: fix try_offline_node() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: fix updating the node span (Christoph von Recklinghausen) [1766491] - [mm] hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span() (Christoph von Recklinghausen) [1766491] - [mm] page_owner: don't access uninitialized memmaps when reading /proc/pagetypeinfo (Christoph von Recklinghausen) [1766491] - [mm] memory-failure.c: don't access uninitialized memmaps in memory_failure() (Christoph von Recklinghausen) [1766491] - [fs] proc/page.c: don't access uninitialized memmaps in fs/proc/page.c (Christoph von Recklinghausen) [1766491] - [base] base/memory.c: don't access uninitialized memmaps in soft_offline_page_store() (Christoph von Recklinghausen) [1766491] - [base] base/node.c: simplify unregister_memory_block_under_nodes() (Christoph von Recklinghausen) [1766491] - [kernel] /proc/kpagecount: return 0 for special pages that are never mapped (Christoph von Recklinghausen) [1766491] - [netdrv] fm10k: fix fm10k_get_fault_pf to read correct address (Neil Horman) [1721716] - [netdrv] fm10k: convert NON_Q_VECTORS(hw) into NON_Q_VECTORS (Neil Horman) [1721716] - [netdrv] fm10k: mark unused parameters with __always_unused (Neil Horman) [1721716] - [netdrv] fm10k: cast page_addr to u8 * when incrementing it (Neil Horman) [1721716] - [netdrv] fm10k: explicitly return 0 on success path in function (Neil Horman) [1721716] - [netdrv] fm10k: remove needless initialization of size local variable (Neil Horman) [1721716] - [netdrv] fm10k: remove needless assignment of err local variable (Neil Horman) [1721716] - [netdrv] fm10k: remove unnecessary variable initializer (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of the ring variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the result local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the local msg variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the local i variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the err variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the tx_buffer variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the q_idx local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of local err variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of qv local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of *p local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of the err variable (Neil Horman) [1721716] - [netdrv] fm10k: Use dev_get_drvdata (Neil Horman) [1721716] - [crypto] crypto: qat - Silence smp_processor_id() warning (Neil Horman) [1723573] - [crypto] crypto: qat - use struct_size() helper (Neil Horman) [1723573] - [crypto] crypto: qat - do not offload zero length requests (Neil Horman) [1723573] - [crypto] crypto: qat - return error for block ciphers for invalid requests (Neil Horman) [1723573] - [crypto] crypto: qat - return proper error code in setkey (Neil Horman) [1723573] - [crypto] crypto: qat - fix block size for aes ctr mode (Neil Horman) [1723573] - [crypto] crypto: qat - update iv after encryption or decryption operations (Neil Horman) [1723573] - [crypto] crypto: qat - add check for negative offset in alg precompute function (Neil Horman) [1723573] - [crypto] crypto: qat - remove spin_lock in qat_ablkcipher_setkey (Neil Horman) [1723573] - [crypto] treewide: Add SPDX license identifier - Makefile/Kconfig (Neil Horman) [1723573] - [crypto] crypto: shash - remove shash_desc::flags (Neil Horman) [1723573] - [crypto] crypto: rsa - unimplement sign/verify for raw RSA backends (Neil Horman) [1723573] - [hv] Revert "hv: vmbus: Implement suspend/resume for VSC drivers for hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Ignore the offers when resuming from hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Suspend/resume the vmbus itself for hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Clean up hv_sock channels by force upon suspend" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Suspend after cleaning up hv_sock and sub channels" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Resume after fixing up old primary channels" (Mohammed Gamal) [1788082] - [hv] Revert "vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP" (Mohammed Gamal) [1788082] - [x86] kvm: vmx: Introduce handle_unexpected_vmexit and handle WAITPKG vmexit (Paul Lai) [1494707] - [x86] kvm: vmx: Emulate MSR IA32_UMWAIT_CONTROL (Paul Lai) [1494707] - [x86] kvm: x86: Add support for user wait instructions (Paul Lai) [1494707] - [tools] tools arch x86: Update tools's copy of cpufeatures.h (Paul Lai) [1494707] - [kvm] KVM: x86: expose AVX512_BF16 feature to guest (Paul Lai) [1642539] - [x86] x86/cpufeatures: Enumerate the new AVX512 BFLOAT16 instructions (Paul Lai) [1642539] - [block] rbd: silence bogus uninitialized warning in rbd_object_map_update_finish() (Jeff Layton) [1777961] - [fs] ceph: increment/decrement dio counter on async requests (Jeff Layton) [1777961] - [fs] ceph: take the inode lock before acquiring cap refs (Jeff Layton) [1777961] - [scsi] scsi: lpfc: fix build failure with DEBUGFS disabled (Dick Kennedy) [1784863] - [scsi] Revert "storvsc: setup 1:1 mapping between hardware queue and CPU queue" (Cathy Avery) [1787594] - [tools] perf session: Return error code for perf_session__new() function on failure (Michael Petlan) [1754995] - [tools] perf header: Fix false warning when there are no duplicate cache entries (Michael Petlan) [1776499] - [firmware] efi/memreserve: Register reservations as 'reserved' in /proc/iomem (Bhupesh Sharma) [1772730] - [firmware] efi/memreserve: deal with memreserve entries in unmapped memory (Bhupesh Sharma) [1772730] - [powerpc] powerpc/powernv: Avoid re-registration of imc debugfs directory (Diego Domingos) [1781098] - [powerpc] powerpc/powernv: Return for invalid IMC domain (Diego Domingos) [1781098]- [tools] perf tools: Allow to link with libbpf dynamicaly (Michael Petlan) [1781570] - [tools] perf probe: Fix spelling mistake "addrees" -> "address" (Michael Petlan) [1760227] - [tools] perf probe: Trace a magic number if variable is not found (Michael Petlan) [1760227] - [tools] perf probe: Support DW_AT_const_value constant value (Michael Petlan) [1760227] - [tools] perf probe: Support multiprobe event (Michael Petlan) [1760227] - [tools] perf probe: Generate event name with line number (Michael Petlan) [1760227] - [tools] perf probe: Do not show non representive lines by perf-probe -L (Michael Petlan) [1760227] - [tools] perf probe: Verify given line is a representive line (Michael Petlan) [1760227] - [tools] perf probe: Show correct statement line number by perf probe -l (Michael Petlan) [1760227] - [tools] perf probe: Skip overlapped location on searching variables (Michael Petlan) [1760227] - [tools] perf probe: Fix to show calling lines of inlined functions (Michael Petlan) [1760227] - [tools] perf probe: Filter out instances except for inlined subroutine and subprogram (Michael Petlan) [1760227] - [tools] perf probe: Skip end-of-sequence and non statement lines (Michael Petlan) [1760227] - [tools] perf probe: Return a better scope DIE if there is no best scope (Michael Petlan) [1760227] - [tools] perf probe: Fix to show ranges of variables in functions without entry_pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to show inlined function callsite without entry_pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to list probe event with correct line number (Michael Petlan) [1760227] - [tools] perf probe: Fix to probe an inline function which has no entry pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to probe a function which has no entry pc (Michael Petlan) [1760227] - [tools] perf probe: Fix wrong address verification (Michael Petlan) [1760227] - [tools] perf probe: Fix to show function entry line as probe-able (Michael Petlan) [1760227] - [tools] perf probe: Walk function lines in lexical blocks (Michael Petlan) [1760227] - [tools] perf probe: Fix to find range-only function instance (Michael Petlan) [1760227] - [scsi] qla2xxx: Fix incorrect SFUB length used for Secure Flash Update MB Cmd (Himanshu Madhani) [1782598] - [scsi] qla2xxx: Added support for MPI and PEP regions for ISP28XX (Himanshu Madhani) [1782598] - [scsi] qla2xxx: Correctly retrieve and interpret active flash region (Himanshu Madhani) [1782598] - [nvme] nvme: Add quirk for LiteON CL1 devices running FW 22301111 (Perry Yuan) [1769179] - [nvme] nvme-pci: Save PCI state before putting drive into deepest state (Perry Yuan) [1769180] - [infiniband] rdma/cxgb4: Fix spelling mistake "immedate" -> "immediate" (Vishal Kulkarni) [1725823] - [infiniband] rdma/cxgb4: Fix null pointer dereference on alloc_skb failure (Vishal Kulkarni) [1725823] - [infiniband] iw_cxgb4: Fix qpid leak (Vishal Kulkarni) [1725823] - [netdrv] net/mlx5e: Use correct enum to determine uplink port (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix concurrency issues between config flow and XSK (mohamad meib) [1786113] - [infiniband] IB/mlx5: Fix steering rule of drop and count (mohamad meib) [1786113] - [netdrv] net/mlx5e: ethtool, Fix analysis of speed setting (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix translation of link mode into speed (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix free peer_flow when refcount is 0 (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix freeing flow with kfree() and not kvfree() (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix SFF 8472 eeprom length (mohamad meib) [1786113] - [netdrv] net/mlx5e: Query global pause state before setting prio2buffer (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix TXQ indices to be sequential (mohamad meib) [1786113] - [infiniband] RDMA/mlx5: Fix a race with mlx5_ib_update_xlt on an implicit MR (mohamad meib) [1786113] - [netdrv] ath10k: Fix a NULL-ptr-deref bug in ath10k_usb_alloc_urb_from_pipe (Jarod Wilson) [1783853] {CVE-2019-15099} - [netdrv] revert "[netdrv] ice: mark driver as tech-preview" (Jonathan Toppins) [1783062] - [netdrv] ibmvnic: Fix typo in retry check (Steve Best) [1783775] - [netdrv] ibmveth: Detect unsupported packets before sending to the hypervisor (Steve Best) [1784904] - [netdrv] igc: add additional delay during phy hw reset (David Arcari) [1782824] - [net] bridge: fix regression in br_mdb_fill_info() (Petr Oros) [1783888] - [net] bpf: Emit audit messages upon successful prog load and unload (Jiri Olsa) [1781266] - [fs] fuse: fix leak of fuse_io_priv (Miklos Szeredi) [1777009] - [fs] virtiofs: Check contents of options string (Vivek Goyal) [1783426] - [fs] exec: Fix mem leak in kernel_read_file (Eric Sandeen) [1683731] {CVE-2019-8980} - [lib] sbitmap: only queue kyber's wait callback if not already active (Ming Lei) [1784544] - [fs] CIFS: Fix NULL-pointer dereference in smb2_push_mandatory_locks (Dave Wysochanski) [1788202] - [kernel] ftrace: Check for successful allocation of hash (Desnes Augusto Nunes do Rosario) [1719414] - [kernel] ftrace: Check for empty hash and comment the race with registering probes (Desnes Augusto Nunes do Rosario) [1719414] - [kernel] ftrace: Fix NULL pointer dereference in t_probe_next() (Desnes Augusto Nunes do Rosario) [1719414] - [iommu] vt-d: Allocate reserved region for ISA with correct permission (Jerry Snitselaar) [1778041] - [iommu] set group default domain before creating direct mappings (Jerry Snitselaar) [1778041] - [iommu] vt-d: Fix dmar pte read access not set error (Jerry Snitselaar) [1778041] - [iommu] vt-d: Set ISA bridge reserved region as relaxable (Jerry Snitselaar) [1778041] - [iommu] fix KASAN use-after-free in iommu_insert_resv_region (Auger Eric) [1777014] - [platform] platform/x86: dell-laptop: fix rfkill functionality (Jarod Wilson) [1725878] - [mm] mm/hugetlb: defer freeing of huge pages if in non-task context (Waiman Long) [1780015] - [mm] powerpc/book3s64/hash: Use secondary hash for bolted mapping if the primary is full (Steve Best) [1783159] - [mm] powerpc/pseries: Don't fail hash page table insert for bolted mapping (Steve Best) [1783159] - [powerpc] powerpc/pseries: Don't opencode HPTE_V_BOLTED (Steve Best) [1783159] - [powerpc] powerpc/perf: Disable trace_imc pmu (Steve Best) [1785573] - [powerpc] powerpc/spinlocks: Include correct header for static key (Phil Auld) [1767529] - [powerpc] powerpc/shared: Use static key to detect shared processor (Phil Auld) [1767529] - [powerpc] powerpc/vcpu: Assume dedicated processors as non-preempt (Phil Auld) [1767529] - [arm64] arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space (Jeremy Linton) [1757828] - [arm64] arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419 (Jeremy Linton) [1757828] - [arm64] arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419 (Jeremy Linton) [1757828] - [arm64] arm64: Handle erratum 1418040 as a superset of erratum 1188873 (Jeremy Linton) [1757828] - [arm64] arm64: errata: Add workaround for Cortex-A76 erratum #1463225 (Jeremy Linton) [1757828] - [arm64] arm64: Kconfig: Tidy up errata workaround help text (Jeremy Linton) [1757828] - [arm64] arm64: Apply ARM64_ERRATUM_1188873 to Neoverse-N1 (Jeremy Linton) [1757828] - [arm64] arm64: Add part number for Neoverse N1 (Jeremy Linton) [1757828] - [arm64] arm64: Make ARM64_ERRATUM_1188873 depend on COMPAT (Jeremy Linton) [1757828] - [clocksource] arm64: Restrict ARM64_ERRATUM_1188873 mitigation to AArch32 (Jeremy Linton) [1757828] - [arm64] arm64: arch_timer: avoid unused function warning (Jeremy Linton) [1757828] - [arm64] arm64: Add workaround for Cortex-A76 erratum 1286807 (Jeremy Linton) [1757828]- [kernel] audit: remove redundant condition check in kauditd_thread() (Richard Guy Briggs) [1716002] - [kernel] audit: Report suspicious O_CREAT usage (Richard Guy Briggs) [1716002] - [fs] namei: allow restricted O_CREAT of FIFOs and regular files (Richard Guy Briggs) [1716002] - [kernel] audit_get_nd(): don't unlock parent too early (Richard Guy Briggs) [1716002] - [fs] namei.c: keep track of nd->root refcount status (Richard Guy Briggs) [1716002] - [fs] namei.c: new helper - legitimize_root() (Richard Guy Briggs) [1716002] - [kernel] kill the last users of user_{path, lpath, path_dir}() (Richard Guy Briggs) [1716002] - [kernel] namei.h: get the comments on LOOKUP_... in sync with reality (Richard Guy Briggs) [1716002] - [kernel] kill LOOKUP_NO_EVAL, don't bother including namei.h from audit.h (Richard Guy Briggs) [1716002] - [kernel] audit_inode(): switch to passing AUDIT_INODE_.. (Richard Guy Briggs) [1716002] - [fs] filename_mountpoint(): make LOOKUP_NO_EVAL unconditional there (Richard Guy Briggs) [1716002] - [fs] filename_lookup(): audit_inode() argument is always 0 (Richard Guy Briggs) [1716002] - [kernel] audit: remove the BUG() calls in the audit rule comparison functions (Richard Guy Briggs) [1716002] - [kernel] audit: enforce op for string fields (Richard Guy Briggs) [1716002] - [kernel] audit: deliver signal_info regarless of syscall (Richard Guy Briggs) [1716002] - [fs] fsnotify: fix unlink performance regression (Richard Guy Briggs) [1716002] - [kernel] audit_compare_dname_path(): switch to const struct qstr * (Richard Guy Briggs) [1716002] - [kernel] audit_update_watch(): switch to const struct qstr * (Richard Guy Briggs) [1716002] - [fs] inotify_handle_event(): don't bother with strlen() (Richard Guy Briggs) [1716002] - [kernel] fsnotify: switch send_to_group() and ->handle_event to const struct qstr * (Richard Guy Briggs) [1716002] - [kernel] fsnotify(): switch to passing const struct qstr * for file_name (Richard Guy Briggs) [1716002] - [kernel] switch fsnotify_move() to passing const struct qstr * for old_name (Richard Guy Briggs) [1716002] - [fs] ovl_lookup_real_one(): don't bother with strlen() (Richard Guy Briggs) [1716002] - [kernel] audit: fix a memory leak bug (Richard Guy Briggs) [1716002] - [kernel] audit: purge unnecessary list_empty calls (Richard Guy Briggs) [1716002] - [security] audit: link integrity evm_write_xattrs record to syscall event (Richard Guy Briggs) [1716002] - [csky] syscall_get_arch: add "struct task_struct *" argument (Richard Guy Briggs) [1716002] - [kernel] audit: Make audit_log_cap and audit_copy_inode static (Richard Guy Briggs) [1716002] - [kernel] audit: connect LOGIN record to its syscall record (Richard Guy Briggs) [1716002] - [kernel] audit: fix a memleak caused by auditing load module (Richard Guy Briggs) [1716002] - [kernel] fanotify: check FS_ISDIR flag instead of d_is_dir() (Richard Guy Briggs) [1716002] - [kernel] fsnotify: report FS_ISDIR flag with MOVE_SELF and DELETE_SELF events (Richard Guy Briggs) [1716002] - [kernel] fsnotify: annotate directory entry modification events (Richard Guy Briggs) [1716002] - [kernel] audit: mark expected switch fall-through (Richard Guy Briggs) [1716002] - [kernel] audit: hide auditsc_get_stamp and audit_serial prototypes (Richard Guy Briggs) [1716002] - [tty] audit: join tty records to their syscall (Richard Guy Briggs) [1716002] - [kernel] audit: remove audit_context when CONFIG_ AUDIT and not AUDITSYSCALL (Richard Guy Briggs) [1716002] - [kernel] audit: remove unused actx param from audit_rule_match (Richard Guy Briggs) [1716002] - [kernel] audit: ignore fcaps on umount (Richard Guy Briggs) [1716002] - [kernel] audit: clean up AUDITSYSCALL prototypes and stubs (Richard Guy Briggs) [1716002] - [kernel] audit: more filter PATH records keyed on filesystem magic (Richard Guy Briggs) [1716002] - [kernel] audit: add support for fcaps v3 (Richard Guy Briggs) [1716002] - [kernel] audit: move loginuid and sessionid from CONFIG_AUDITSYSCALL to CONFIG_AUDIT (Richard Guy Briggs) [1716002] - [kernel] audit: add syscall information to CONFIG_CHANGE records (Richard Guy Briggs) [1716002] - [kernel] audit: hand taken context to audit_kill_trees for syscall logging (Richard Guy Briggs) [1716002] - [kernel] audit: give a clue what CONFIG_CHANGE op was involved (Richard Guy Briggs) [1716002] - [kernel] audit: remove duplicated include from audit.c (Richard Guy Briggs) [1716002] - [kernel] audit: shorten PATH cap values when zero (Richard Guy Briggs) [1716002] - [kernel] audit: use current whenever possible (Richard Guy Briggs) [1716002] - [kernel] audit: minimize our use of audit_log_format() (Richard Guy Briggs) [1716002] - [kernel] audit: remove WATCH and TREE config options (Richard Guy Briggs) [1716002] - [kernel] audit: use session_info helper (Richard Guy Briggs) [1716002] - [kernel] audit: localize audit_log_session_info prototype (Richard Guy Briggs) [1716002] - [kernel] audit: Use 'mark' name for fsnotify_mark variables (Richard Guy Briggs) [1716002] - [kernel] audit: Replace chunk attached to mark instead of replacing mark (Richard Guy Briggs) [1716002] - [kernel] audit: Simplify locking around untag_chunk() (Richard Guy Briggs) [1716002] - [kernel] audit: Drop all unused chunk nodes during deletion (Richard Guy Briggs) [1716002] - [kernel] audit: Guarantee forward progress of chunk untagging (Richard Guy Briggs) [1716002] - [kernel] audit: Allocate fsnotify mark independently of chunk (Richard Guy Briggs) [1716002] - [kernel] audit: Provide helper for dropping mark's chunk reference (Richard Guy Briggs) [1716002] - [kernel] audit: Remove pointless check in insert_hash() (Richard Guy Briggs) [1716002] - [kernel] audit: Factor out chunk replacement code (Richard Guy Briggs) [1716002] - [kernel] audit: Make hash table insertion safe against concurrent lookups (Richard Guy Briggs) [1716002] - [kernel] audit: Embed key into chunk (Richard Guy Briggs) [1716002] - [kernel] audit: Fix possible tagging failures (Richard Guy Briggs) [1716002] - [kernel] audit: Fix possible spurious -ENOSPC error (Richard Guy Briggs) [1716002] - [kernel] audit_tree: Remove mark->lock locking (Richard Guy Briggs) [1716002] - [kernel] audit: print empty EXECVE args (Richard Guy Briggs) [1716002] - [security] evm: fix return value check in evm_write_xattrs() (Richard Guy Briggs) [1716002] - [kernel] audit: fix use-after-free in audit_add_watch (Richard Guy Briggs) [1716002] - [kernel] audit: use ktime_get_coarse_real_ts64() for timestamps (Richard Guy Briggs) [1716002] - [kernel] audit: use ktime_get_coarse_ts64() for time access (Richard Guy Briggs) [1716002] - [kernel] audit: simplify audit_enabled check in audit_watch_log_rule_change() (Richard Guy Briggs) [1716002] - [kernel] audit: check audit_enabled in audit_tree_log_remove_rule() (Richard Guy Briggs) [1716002] - [kernel] cred: conditionally declare groups-related functions (Richard Guy Briggs) [1716002] - [kernel] audit: eliminate audit_enabled magic number comparison (Richard Guy Briggs) [1716002] - [kernel] audit: Fix extended comparison of GID/EGID (Richard Guy Briggs) [1716002] - [kernel] audit: tie ANOM_ABEND records to syscall (Richard Guy Briggs) [1716002] - [kernel] audit: tie SECCOMP records to syscall (Richard Guy Briggs) [1716002] - [kernel] audit: allow other filter list types for AUDIT_EXE (Richard Guy Briggs) [1716002] - [documentation] admin guide/pm: Admin guide for intel-speed-select (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Display TRL buckets for just base config level (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Ignore missing config level (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Increment version (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use core count for base-freq mask (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Support platform with limited Intel(R) Speed Select (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use Frequency weight for CLOS (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Make CLOS frequency in MHz (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use mailbox for CLOS_PM_QOS_CONFIG (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Auto mode for CLX (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Correct CLX-N frequency units (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Change display of "avx" to "avx2" (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Extend command set for perf-profile (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement base-freq commands on CascadeLake-N (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement 'perf-profile info' on CascadeLake-N (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement CascadeLake-N help and command functions structures (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add check for CascadeLake-N models (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Make process_command generic (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add int argument to command functions (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Refuse to disable core-power when getting used (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Turbo-freq feature auto mode (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Base-freq feature auto mode (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Remove warning for unused result (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix perf-profile command output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Extend core-power command set (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix some debug prints (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Format get-assoc information (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Allow online/offline based on tdp (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix high priority core mask over count (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Display core count for bucket (Prarit Bhargava) [1766228] - [platform] x86: isst: Allow additional TRL MSRs (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix memory leak (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Output success/failed for command output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Output human readable CPU list (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Change turbo ratio output to maximum turbo frequency (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Switch output to MHz (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Simplify output for turbo-freq and base-freq (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix cpu-count output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix help option typo (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix package typo (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix a read overflow in isst_set_tdp_level_msr() (Prarit Bhargava) [1766228] - [platform] x86: isst: Use dev_get_drvdata (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add .gitignore file (Prarit Bhargava) [1766228] - [tools] tools/power/x86: A tool to validate Intel Speed Select commands (Prarit Bhargava) [1766228] - [platform] x86: isst: Restore state on resume (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select PUNIT MSR interface (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mailbox interface via MSRs (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mailbox interface via PCI (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mmio interface (Prarit Bhargava) [1766228] - [platform] x86: isst: Add IOCTL to Translate Linux logical CPU to PUNIT CPU number (Prarit Bhargava) [1766228] - [platform] x86: isst: Store per CPU information (Prarit Bhargava) [1766228] - [platform] x86: isst: Add common API to register and handle ioctls (Prarit Bhargava) [1766228] - [documentation] platform/x86: isst: Update ioctl-number.txt for Intel Speed Select interface (Prarit Bhargava) [1766228]- [tools] libbpf: Refactor relocation handling (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix call relocation offset calculation bug (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix bpf_object name determination for bpf_object__open_file() (Yauheni Kaliuta) [1772081] - [tools] libbpf: return previous print callback from libbpf_set_print (Yauheni Kaliuta) [1772081] - [tools] libbpf: fix bpf_object__name() to actually return object name (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Make CO-RE reloc test impartial to test_progs flavor (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Add BPF_CORE_READ and BPF_CORE_READ_STR_INTO macro tests (Yauheni Kaliuta) [1772081] - [tools] bpftool: Allow to read btf as raw data (Yauheni Kaliuta) [1772081] - [tools] bpftool: implement "bpftool btf show|list" (Yauheni Kaliuta) [1772081] - [tools] libbpf: add bpf_btf_get_next_id() to cycle through BTF objects (Jiri Olsa) [1772081] - [tools] libbpf: refactor bpf_*_get_next_id() functions (Yauheni Kaliuta) [1772081] - [tools] bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1772081] - [tools] libbpf: attempt to load kernel BTF from sysfs first (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add getter for program size (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add bpf_get_link_xdp_info() function to get more XDP information (Yauheni Kaliuta) [1772081] - [tools] libbpf: Use pr_warn() when printing netlink errors (Yauheni Kaliuta) [1772081] - [tools] libbpf: Propagate EPERM to caller on program load (Yauheni Kaliuta) [1772081] - [tools] libbpf: Unpin auto-pinned maps if loading fails (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add auto-pinning of maps when loading BPF objects (Yauheni Kaliuta) [1772081] - [tools] libbpf: Teach bpf_object__open to guess program types (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add bpf_program__get_{type, expected_attach_type) APIs (Yauheni Kaliuta) [1772081] - [tools] libbpf: Move directory creation into _pin() functions (Yauheni Kaliuta) [1772081] - [tools] libbpf: Store map pin path and status in struct bpf_map (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix error handling in bpf_map__reuse_fd() (Yauheni Kaliuta) [1772081] - [tools] libbpf: Make DECLARE_LIBBPF_OPTS macro strictly a variable declaration (Yauheni Kaliuta) [1772081] - [tools] bpftool: Fix bpftool build by switching to bpf_object__open_file() (Yauheni Kaliuta) [1772081] - [tools] bpf: Rename pr_warning to pr_warn to align with kernel logging (Yauheni Kaliuta) [1772081] - [tools] libbpf: provide more helpful message on uninitialized global var (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Add field existence CO-RE relocs tests (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add support for field existance CO-RE relocation (Yauheni Kaliuta) [1772081] - [tools] libbpf: Update BTF reloc support to latest Clang format (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add BPF_CORE_READ/BPF_CORE_READ_INTO helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: Refactor bpf_object__open APIs to use common opts (Yauheni Kaliuta) [1772081] - [tools] libbpf: Move bpf_{helpers, helper_defs, endian, tracing}.h into libbpf (Jiri Olsa) [1772081] - [tools] uapi/bpf: fix helper docs (Yauheni Kaliuta) [1772081] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1772081] - [uapi] bpf: fix 'struct pt_reg' typo in documentation (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix BTF-defined map's __type macro handling of arrays (Yauheni Kaliuta) [1772081] - [scripts] bpf: Print an error when known types list needs updating (Yauheni Kaliuta) [1772081] - [scripts] bpf: Emit an #error directive known types list needs updating (Yauheni Kaliuta) [1772081] - [scripts] bpf: Fix xdp_md forward declaration typo (Yauheni Kaliuta) [1772081] - [scripts] bpf: teach bpf_helpers_doc.py to dump BPF helper definitions (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Split off tracing-only helpers into bpf_tracing.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: samples/bpf: Split off legacy stuff from bpf_helpers.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Undo GCC-specific bpf_helpers.h changes (Yauheni Kaliuta) [1772081] - [tools] libbpf: auto-generate list of BPF helper definitions (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add bpf-gcc support (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: bpf_tcp_gen_syncookie->bpf_helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: relicense bpf_helpers.h and bpf_endian.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: introduce bpf_cpu_to_be64 and bpf_be64_to_cpu (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Adjust CO-RE reloc tests for new bpf_core_read() macro (Yauheni Kaliuta) [1772081] - [tools] bpf: fix core_reloc.c compilation error (Yauheni Kaliuta) [1772081] - [tools] libbpf: add bpf_object__open_{file, mem} w/ extensible opts (Yauheni Kaliuta) [1772081] - [tools] libbpf: make libbpf.map source of truth for libbpf version (Yauheni Kaliuta) [1772081] - [tools] libbpf: stop enforcing kern_version, populate it for users (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs misc tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs ints tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs ptr-as-array tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs modifiers/typedef tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs enum/ptr/func_proto tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs array tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs nesting tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs struct flavors tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs testing setup (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add BPF_CORE_READ relocatable read macro (Yauheni Kaliuta) [1772081] - [tools] libbpf: implement BPF CO-RE offset relocation algorithm (Yauheni Kaliuta) [1772081] - [tools] libbpf: add .BTF.ext offset relocation section loading (Yauheni Kaliuta) [1772081] - [tools] libbpf: convert libbpf code to use new btf helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: add helpers for working with BTF types (Yauheni Kaliuta) [1772081] - [gpu] drm/i915: Add new CNL PCH ID seen on a CML platform (Lyude Paul) [1771779] - [gpu] drm/amdgpu: add warning for GRBM 1-cycle delay issue in gfx9 (Lyude Paul) [1771779] - [gpu] drm/amdgpu: register gpu instance before fan boost feature enablment (Lyude Paul) [1771779] - [gpu] drm/amd/swsmu: fix smu workload bit map error (Lyude Paul) [1771779] - [gpu] drm/amdgpu: dont schedule jobs while in reset (Lyude Paul) [1771779] - [gpu] drm/i915/userptr: Try to acquire the page lock around set_page_dirty() (Lyude Paul) [1771779] - [gpu] drm/i915/pmu: "Frequency" is reported as accumulated cycles (Lyude Paul) [1771779] - [gpu] drm/i915: Don't oops in dumb_create ioctl if we have no crtcs (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay: issue no PPSMC_MSG_GetCurrPkgPwr on unsupported ASICs (Lyude Paul) [1771779] - [gpu] drm/amdgpu: disable gfxoff on original raven (Lyude Paul) [1771779] - [gpu] drm/amdgpu: disable gfxoff when using register read interface (Lyude Paul) [1771779] - [gpu] revert "drm/i915/ehl: Update MOCS table for EHL" (Lyude Paul) [1771779] - [gpu] drm/i915: update rawclk also on resume (Lyude Paul) [1771779] - [gpu] dc.c:use kzalloc without test (Lyude Paul) [1771779] - [gpu] drm/amd/display: Passive DP->HDMI dongle detection fix (Lyude Paul) [1771779] - [gpu] drm/amd/display: add 50us buffer as WA for pstate switch in active (Lyude Paul) [1771779] - [gpu] drm/amd/display: do not synchronize "drr" displays (Lyude Paul) [1771779] - [gpu] drm/amdgpu: If amdgpu_ib_schedule fails return back the error (Lyude Paul) [1771779] - [gpu] drm/sched: Set error to s_fence if HW job submission failed (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: do not execute 0-sized IBs (v2) (Lyude Paul) [1771779] - [gpu] drm/radeon: fix si_enable_smc_cac() failed issue (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix error handling in amdgpu_bo_list_create (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix potential VM faults (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix SDMA hang when performing VKexample test (Lyude Paul) [1771779] - [gpu] drm/amdgpu/powerplay/vega10: allow undervolting in p7 (Lyude Paul) [1771779] - [gpu] drm/amdgpu/gfx10: update gfx golden settings (Lyude Paul) [1771779] - [gpu] drm/i915: Fix PCH reference clock for FDI on HSW/BDW (Lyude Paul) [1771779] - [gpu] drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix memory leak (Lyude Paul) [1771779] - [gpu] drm/amdgpu: user pages array memory leak fix (Lyude Paul) [1771779] - [gpu] drm/amdgpu/uvd7: fix allocation size in enc ring test (v2) (Lyude Paul) [1771779] - [gpu] drm/amdgpu/uvd6: fix allocation size in enc ring test (v2) (Lyude Paul) [1771779] - [gpu] drm/amdgpu/vcn: fix allocation size in enc ring test (Lyude Paul) [1771779] - [gpu] drm/amdgpu/vce: fix allocation size in enc ring test (Lyude Paul) [1771779] - [gpu] drm/i915: Favor last VBT child device with conflicting AUX ch/DDC pin (Lyude Paul) [1771779] - [gpu] drm/i915/userptr: Never allow userptr into the mappable GGTT (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1 (Lyude Paul) [1771779] - [gpu] drm/ttm: Restore ttm prefaulting (Lyude Paul) [1771779] - [gpu] drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50 (Lyude Paul) [1771779] - [gpu] drm/amd/display: memory leak (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix multiple memory leaks in acp_hw_init (Lyude Paul) [1771779] - [gpu] drm: Clear the fence pointer when writeback job signaled (Lyude Paul) [1771779] - [gpu] drm: Free the writeback_job when it with an empty fb (Lyude Paul) [1771779] - [gpu] drm/i915: Mark contents as dirty on a write fault (Lyude Paul) [1771779] - [gpu] drm/i915: Whitelist COMMON_SLICE_CHICKEN2 (Lyude Paul) [1771779] - [gpu] drm/i915: Bump skl+ max plane width to 5k for linear/x-tiled (Lyude Paul) [1771779] - [gpu] drm/i915: Perform GGTT restore much earlier during resume (Lyude Paul) [1771779] - [gpu] drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Check for valid number of registers to read (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix KFD-related kernel oops on Hawaii (Lyude Paul) [1771779] - [gpu] drm/i915: to make vgpu ppgtt notificaiton as atomic operation (Lyude Paul) [1771779] - [gpu] drm/i915/gvt: update vgpu workload head pointer correctly (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay: change metrics update period from 1ms to 100ms (Lyude Paul) [1771779] - [gpu] drm/nouveau/kms/nv50-: Don't create MSTMs for eDP connectors (Lyude Paul) [1771779] - [gpu] drm/atomic: Take the atomic toys away from X (Lyude Paul) [1771779] - [gpu] drm/atomic: Reject FLIP_ASYNC unconditionally (Lyude Paul) [1771779] - [gpu] drm/i915/dp: Fix dsc bpp calculations, v5 (Lyude Paul) [1771779] - [dma-buf] sw_sync: Synchronize signal vs syncpt free (Lyude Paul) [1771779] - [gpu] drm/amdgpu/si: fix ASIC tests (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix trigger not generated for freesync (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix MPO HUBP underflow with Scatter Gather (Lyude Paul) [1771779] - [gpu] drm/amd/powerpaly: fix navi series custom peak level value error (Lyude Paul) [1771779] - [gpu] drm/amd/display: support spdif (Lyude Paul) [1771779] - [gpu] drm/nouveau/volt: Fix for some cards having 0 maximum voltage (Lyude Paul) [1771779] - [gpu] drm/nouveau/kms/tu102-: disable input lut when input is already FP16 (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: fix number of sdma5 trap irq types for navi1x (Lyude Paul) [1771779] - [gpu] drm/amd/display: Register VUPDATE_NO_LOCK interrupts for DCN2 (Lyude Paul) [1771779] - [gpu] drm/amd/display: reprogram VM config when system resume (Lyude Paul) [1771779] - [gpu] drm/amd/display: Fix frames_to_insert math (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix issue where 252-255 values are clipped (Lyude Paul) [1771779] - [gpu] drm: radeon: Fix a possible null-pointer dereference in radeon_connector_set_property() (Lyude Paul) [1771779] - [gpu] revert "drm/radeon: Fix EEH during kexec" (Lyude Paul) [1771779] - [gpu] drm/amd/display: Use proper enum conversion functions (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix hard hang for S/G display BOs (Lyude Paul) [1771779] - [gpu] drm/panel: check failure cases in the probe func (Lyude Paul) [1771779] - [gpu] drm/bridge: sii902x: fix missing reference to mclk clock (Lyude Paul) [1771779] - [gpu] drm/tinydrm/kconfig: Select BACKLIGHT_CLASS_DEVICE (Lyude Paul) [1771779] - [video] ssd1307fb: Start page range at page_offset (Lyude Paul) [1771779] - [gpu] drm/amd/display: Copy GSL groups when committing a new context (Lyude Paul) [1771779] - [gpu] drm/amd/display: Clear FEC_READY shadow register if DPCD write fails (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix not calling ppsmu to trigger PME (Lyude Paul) [1771779] - [gpu] drm/amd/display: Power-gate all DSCs at driver init time (Lyude Paul) [1771779] - [gpu] drm/amd/display: add monitor patch to add T7 delay (Lyude Paul) [1771779] - [gpu] drm/panel: simple: fix AUO g185han01 horizontal blanking (Lyude Paul) [1771779] - [gpu] drm/vkms: Avoid assigning 0 for possible_crtc (Lyude Paul) [1771779] - [gpu] drm/bridge: tc358767: Increase AUX transfer length limit (Lyude Paul) [1771779] - [gpu] drm/vkms: Fix crc worker races (Lyude Paul) [1771779] - [gpu] drm/amdgpu/display: fix 64 bit divide (Lyude Paul) [1771779] - [gpu] drm/amd/display: Add missing HBM support and raise Vega20's uclk (Lyude Paul) [1771779] - [gpu] drm/amd/display: dce11.x /dce12 update formula input (Lyude Paul) [1771779] - [gpu] drm/amd/display: Restore backlight brightness after system resume (Lyude Paul) [1771779] - [gpu] drm: fix module name in edid_firmware log message (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2) (Lyude Paul) [1771779] - [gpu] drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines (Lyude Paul) [1771779] - [gpu] drm/amd/display: Don't replace the dc_state for fast updates (Lyude Paul) [1771779] - [gpu] drm/amd/display: Skip determining update type for async updates (Lyude Paul) [1771779] - [gpu] drm/amd/display: Allow cursor async updates for framebuffer swaps (Lyude Paul) [1771779] - [include] sk_buff: fix skb_ext_put() and skb_ext_reset() calls (Ivan Vecera) [1779923] - [net] openvswitch: fix flow command message size (Paolo Abeni) [1776765] - [net] netfilter: nf_tables: add SECMARK support (Phil Sutter) [1715851] - [net] netfilter: nf_tables: add requirements for connsecmark support (Phil Sutter) [1715851] - [wireless] mwifiex: pcie: Fix memory leak in mwifiex_pcie_init_evt_ring (Jarod Wilson) [1781534] {CVE-2019-19057} - [tools] selftests/powerpc: Disable basic EEH selftest (Steve Best) [1782232] - [x86] kvm: x86: Remove a spurious export of a static function (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: vmx: use MSR_IA32_TSX_CTRL to hard-disable TSX on guest that lack it (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: vmx: implement MSR_IA32_TSX_CTRL disable RTM functionality (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: implement MSR_IA32_TSX_CTRL effect on CPUID (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: do not modify masked bits of shared MSRs (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: fix presentation of TSX feature in ARCH_CAPABILITIES (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm/x86: Export MDS_NO=0 to guests when TSX is enabled (Paolo Bonzini) [1779553] {CVE-2019-19338} - [fs] cifs: Close open handle after interrupted close (Leif Sahlberg) [1771691] - [fs] cifs: Do not miss cancelled OPEN responses (Leif Sahlberg) [1771691] - [fs] cifs: Fix NULL pointer dereference in mid callback (Leif Sahlberg) [1771691] - [fs] cifs: add a debug macro that prints \\server\share for errors (Leif Sahlberg) [1772630] - [fs] cifs: add new debugging macro cifs_server_dbg (Leif Sahlberg) [1772630]- [netdrv] wireless: fix nl80211 vendor commands (Jarod Wilson) [1776606] - [net] nl80211: fix VENDOR_CMD_RAW_DATA (Jarod Wilson) [1776606] - [netdrv] rt2x00: initialize last_reset (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't consider IV len in A-MSDU (Jarod Wilson) [1776606] - [net] mac80211: fix station inactive_time shortly after boot (Jarod Wilson) [1776606] - [net] mac80211: fix ieee80211_txq_setup_flows() failure path (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: support new API for scan config cmd (Jarod Wilson) [1776606] - [netdrv] mt76: dma: fix buffer unmap with non-linear skbs (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2e: disable pcie_aspm by default (Jarod Wilson) [1776606] - [net] nl80211: fix validation of mesh path nexthop (Jarod Wilson) [1776606] - [net] nl80211: Disallow setting of HT for channel 14 (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Fix problem of too small skb->len (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: 0x2720 is qu and 0x30DC is not (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: add workaround for power gating in integrated 22000 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: handle iwl_mvm_tvqm_enable_txq() error return (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix all 9460 entries for qnj (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc (Jarod Wilson) [1776606] - [netdrv] rtlwifi: Fix potential overflow on P2P code (Jarod Wilson) [1775223 1776606] {CVE-2019-17666} - [netdrv] iwlwifi: pcie: fix merge damage on making QnJ exclusive (Jarod Wilson) [1776606] - [netdrv] ath10k: fix latency issue for QCA988x (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: change qu with jf devices to use qu configuration (Jarod Wilson) [1776606] - [netdrv] iwlwifi: exclude GEO SAR support for 3168 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix memory leaks in iwl_pcie_ctxt_info_gen3_init (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix memory leak in alloc_sgtable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix rb_allocator workqueue allocation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix indexing in command dump for new HW (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix race in sync rx queue notification (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: force single phy init (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix ACPI table revision checks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't access trans_cfg via cfg (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove input-polldev.h header (Jarod Wilson) [1776606] - [net] mac80211: Don't access sk_queue_head->next directly (Jarod Wilson) [1776606] - [net] mac80211: fix scan when operating on DFS channels in ETSI domains (Jarod Wilson) [1776606] - [net] mac80211: accept deauth frames in IBSS mode (Jarod Wilson) [1776606] - [net] cfg80211: fix a bunch of RCU issues in multi-bssid code (Jarod Wilson) [1776606] - [net] nl80211: fix memory leak in nl80211_get_ftm_responder_stats (Jarod Wilson) [1776606] - [net] cfg80211: wext: avoid copying malformed SSIDs (Jarod Wilson) [1778634 1776606] {CVE-2019-17133} - [net] mac80211: Reject malformed SSID elements (Jarod Wilson) [1776606] - [net] mac80211: keep BHs disabled while calling drv_tx_wake_queue() (Jarod Wilson) [1776606] - [net] mac80211: fix txq null pointer dereference (Jarod Wilson) [1776606] - [net] nl80211: fix null pointer dereference (Jarod Wilson) [1776606] - [net] cfg80211: initialize on-stack chandefs (Jarod Wilson) [1776606] - [net] cfg80211: validate SSID/MBSSID element ordering assumption (Jarod Wilson) [1776606] - [net] nl80211: validate beacon head (Jarod Wilson) [1776606] - [net] cfg80211: Purge frame registrations on iftype change (Jarod Wilson) [1776606] - [net] cfg80211: Do not compare with boolean in nl80211_common_reg_change_event (Jarod Wilson) [1776606] - [net] cfg80211: always shut down on HW rfkill (Jarod Wilson) [1776606] - [net] cfg80211: fix boundary value in ieee80211_frequency_to_channel() (Jarod Wilson) [1776606] - [net] cfg80211: add local BSS receive time to survey information (Jarod Wilson) [1776606] - [net] nl80211: add NL80211_CMD_UPDATE_FT_IES to supported commands (Jarod Wilson) [1776606] - [netdrv] wireless: Fix Kconfig indentation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw: don't send GEO_TX_POWER_LIMIT command to FW version 36 (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix mt7615 firmware path definitions (Jarod Wilson) [1776606] - [netdrv] rtw88: configure firmware after HCI started (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: release tx skbs DMAed when stop (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: extract skbs free routine for trx rings (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix build w/o CONFIG_THERMAL (Jarod Wilson) [1776606] - [netdrv] rtw88: report RX power for each antenna (Jarod Wilson) [1776606] - [netdrv] rtw88: fix wrong rx power calculation (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192de: replace _rtl92d_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: replace _rtl92c_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: replace _rtl92c_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtw88: allows to receive AMSDU in AMPDU (Jarod Wilson) [1776606] - [netdrv] rtw88: add dynamic cck pd mechanism (Jarod Wilson) [1776606] - [netdrv] rtw88: move IQK/DPK into phy_calibration (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add SW DPK support (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add FW IQK support (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: Enable interrupt migration (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update pwr_seq to v13 (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update PHY parameter to v38 (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: rtl8192ce: rtl8192de: rtl8723ae: rtl8821ae: Remove some unused bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Remove unused SET_XXX and GET_XXX macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Remove unused GET_XXX and SET_XXX macros (Jarod Wilson) [1776606] - [netdrv] brcmsmac: Use DIV_ROUND_CLOSEST directly to make it readable (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: make array static const and remove redundant assignment (Jarod Wilson) [1776606] - [netdrv] brcmfmac: don't realloc wiphy during PCIe reset (Jarod Wilson) [1776606] - [netdrv] brcmfmac: split brcmf_attach() and brcmf_detach() functions (Jarod Wilson) [1776606] - [netdrv] brcmfmac: move "cfg80211_ops" pointer to another struct (Jarod Wilson) [1776606] - [netdrv] ath10k: fix channel info parsing for non tlv target (Jarod Wilson) [1776606] - [netdrv] ath10k: adjust skb length in ath10k_sdio_mbox_rx_packet (Jarod Wilson) [1776606] - [netdrv] ath10k: free beacon buf later in vdev teardown (Jarod Wilson) [1776606] - [net] mac80211: allow drivers to set max MTU (Jarod Wilson) [1776606] - [net] mac80211: ibss: send deauth when expiring inactive STAs (Jarod Wilson) [1776606] - [net] mac80211: don't check if key is NULL in ieee80211_key_link() (Jarod Wilson) [1776606] - [net] mac80211: clear crypto tx tailroom counter upon keys enable (Jarod Wilson) [1776606] - [net] mac80211: remove unnecessary key condition (Jarod Wilson) [1776606] - [net] mac80211: list features in WEP/TKIP disable in better order (Jarod Wilson) [1776606] - [net] mac80211: vht: add support VHT EXT NSS BW in parsing VHT (Jarod Wilson) [1776606] - [netdrv] ath9k: release allocated buffer if timed out (Jarod Wilson) [1778582 1776606] {CVE-2019-19074} - [netdrv] ath9k_htc: release allocated buffer if timed out (Jarod Wilson) [1778572 1776606] {CVE-2019-19073} - [netdrv] ath9k: Remove unneeded variable to store return value (Jarod Wilson) [1776606] - [netdrv] ath10k: add reorder and change PN check logic for mac80211 (Jarod Wilson) [1776606] - [netdrv] ath10k: add mic bytes for pmf management packet (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use *ph to print small buffer (Jarod Wilson) [1776606] - [netdrv] hostap: use *ph to print small buffer (Jarod Wilson) [1776606] - [netdrv] rtlwifi: Fix file release memory leak (Jarod Wilson) [1776606] - [netdrv] rtw88: fix seq_file memory leak (Jarod Wilson) [1776606] - [netdrv] hostap: remove set but not used variable 'copied' in prism2_io_debug_proc_read (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add "reset" debugfs entry for testing reset (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add stub version of brcmf_debugfs_get_devdir() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: remove iwl_fw_cancel_dumps function (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove periodic trigger (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix dump structs doc (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: add DRAM buffer allocation command (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove apply point, switch to time point API (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add iwl_tlv_array_len() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: don't log un-decrypted frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add support for single antenna diversity (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: handle BAR_FRAME_RELEASE (0xc2) notification (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: drop BA sessions on too many old-SN frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add sta_id to WOWLAN_CONFIG_CMD (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add support for suspend-resume flow for new device generation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix warning iwl-trans.h is included more than once (Jarod Wilson) [1776606] - [netdrv] iwlwifi: always access the trans configuration via trans (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pass the iwl_trans instead of cfg to some functions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add a pointer to the trans_cfg directly in trans (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pass the iwl_config_trans_params when needed (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: set iwl_trans->cfg later in the probe function (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: move some cfg mangling from trans_pcie_alloc to probe (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: use the cfg we passed to iwl_trans_pcie_alloc() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: separate elements from cfg that are needed by trans_alloc (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use regions ops array instead of switch case in dump flow (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: make a single ops struct for paging collect (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move tx fifo data into fw runtime (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use linked list for dump TLVs during dump creation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: separate cfg and dump flows to different modules (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: look for the first supported channel when add/remove phy ctxt (Jarod Wilson) [1776606] - [netdrv] iwlwifi: allocate bigger nvm data in case of UHB (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove unnecessary IWL_DEVICE_AX200_COMMON definition (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: align wrt log prints to the same format (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove debug flow TLV (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: verify debug TLVs at allocation phase (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use function to check if ini dbg mode is on (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove duplicate FW string definitions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: bump FW API to 50 for 22000 series (Jarod Wilson) [1776606] - [netdrv] iwlwifi: api: fix FTM struct documentation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: support per-platform antenna gain (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove check for lq_sta in __iwl_mvm_rs_tx_status() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: simplify the channel switch flow for newer firmware (Jarod Wilson) [1776606] - [netdrv] iwlwifi: stop passing bogus gfp flags arguments to dma_alloc_coherent (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove periphery phy and aux regions handling (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use linked list to store debug TLVs (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: maintain buffer allocations from trans instead of TLVs buffer (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: add debug periphery registers to 9000 device family (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove unused regdb_ptrs allocation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: align dbg tlv functions names to a single format (Jarod Wilson) [1776606] - [netdrv] iwlwifi: scan: don't pass large argument by value (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove pm_runtime completely (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the d0i3 related module parameters (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: remove some more d0i3 code from the transport (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: remove the refs / unrefs from the transport (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the opmode's d0i3 handlers (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove runtime_pm_mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Set w-pointer upon resume according to SN (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: use FW thermal monitoring regardless of CONFIG_THERMAL (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: name magic numbers with enum (Jarod Wilson) [1776606] - [netdrv] iwlwifi: scan: add support for new scan request command version (Jarod Wilson) [1776606] - [netdrv] iwlwifi: LTR updates (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the code under IWLWIFI_PCIE_RTPM (Jarod Wilson) [1776606] - [netdrv] iwlwifi: trans: remove suspending flag (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove CMD_HIGH_PRIO (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove last leftovers of d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove iwl_mvm_update_d0i3_power_mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove d0i3_ap_sta_id (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: iwl_mvm_wowlan_config_key_params is for wowlan only (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove the d0i3 entry/exit flow (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove the tx defer for d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove all the d0i3 references (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: start to remove the code for d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add the skb length to a print (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix scan config command size (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add ldbg config cmd debug print (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: support debug recording suspend resume command (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move debug recording stop from trans to op mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move monitor recording functionality from header file (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove unnecessary forward declarations (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Block 26-tone RU OFDMA transmissions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove redundant condition in iwl_mvm_set_hw_rfkill_state (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Send DQA enable command only if TVL is on (Jarod Wilson) [1776606] - [netdrv] iwlwifi: bump FW API to 49 for 22000 series (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support to read temperature from mcu (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_txwi_to_txp utility routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use devm_platform_ioremap_resource() to simplify code (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: remove unneeded return value on set channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: remove redundant chandef copy (Jarod Wilson) [1776606] - [netdrv] mt76: make mt76_rx_convert static (Jarod Wilson) [1776606] - [netdrv] mt76: remove offchannel check in tx scheduling (Jarod Wilson) [1776606] - [netdrv] mt76: do not send BAR frame on tx aggregation flush stop (Jarod Wilson) [1776606] - [netdrv] mt76: stop rx aggregation on station removal (Jarod Wilson) [1776606] - [netdrv] mt76: dma: reset q->rx_head on rx reset (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: apply calibration-free data from OTP (Jarod Wilson) [1776606] - [netdrv] mt76: add default implementation for mt76_sw_scan/mt76_sw_scan_complete (Jarod Wilson) [1776606] - [netdrv] mt76: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add BIP_CMAC_128 cipher support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: remove unnecessary mcu queue initialization (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_tx_tasklet in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: enable survey support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: move survey_time in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: enable survey support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: enable multi-vif support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: do not copy beacon skb in mt76x02_mac_set_beacon_enable (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: introduce mt76x02_pre_tbtt_enable and mt76x02_beacon_enable macros (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add Smart Carrier Sense support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rework locking scheme for mt7615_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: switch to SPDX tag instead of verbose boilerplate text (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: Add paragraphs to describe the config symbols fully (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: update cw_min/max related settings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add 4 WMM sets support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix watchdog rescheduling in mt7603_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix MT7615_WATCHDOG_TIME definition (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_mmio_read_copy routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add set_key_cmd and mt76_wcid to mt7615_mac_wtbl_set_key signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove wtbl_sec_key definition (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_mac_wtbl_set_key routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add mt7615_mac_wtbl_addr routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: move mt7615_mac_get_key_info in mac.c (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add missing register initialization (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0u: add support to TP-Link T2UHP (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: usb: remove unneeded {put,get}_unaligned (Jarod Wilson) [1776606] - [netdrv] mt76: usb: fix endian in mt76u_copy (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix invalid fallback rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix invalid fallback rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix PS buffering of action frames (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix using VHT STBC rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: fix typo in mt76u_fill_rx_sg (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: sync with mt7603 rate control changes (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: reset rate index/counters on rate table update (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: move mt7615_mcu_set_rates to mac.c (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: enable hardware rate up/down selection (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_mcu_send_ram_firmware routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: always release sem in mt7615_load_patch (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fall back to sw encryption for unsupported ciphers (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: clean up FWDL TXQ during/after firmware upload (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add radar pattern test knob to debugfs (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add csa support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: do not perform txcalibration before cac is complited (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add hw dfs pattern detector support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_regd_notifier (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: warning: restricted __le16 degrades to integer (Jarod Wilson) [1776606] - [netdrv] mt76: round up length on mt76_wr_copy (Jarod Wilson) [1776606] - [netdrv] ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe() (Jarod Wilson) [1776606] - [netdrv] ath6kl: Fix a possible null-pointer dereference in ath6kl_htc_mbox_create() (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: set ackto to max timeout in ath_dynack_reset (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: set max timeout according to channel width (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: properly set last timeout timestamp in ath_dynack_reset (Jarod Wilson) [1776606] - [netdrv] ath9k: dyanck: introduce ath_dynack_set_timeout routine (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: fix possible deadlock in ath_dynack_node_{de}init (Jarod Wilson) [1776606] - [netdrv] ath9k: add loader for AR92XX (and older) pci(e) (Jarod Wilson) [1776606] - [netdrv] brcmfmac: get chip's default RAM info during PCIe setup (Jarod Wilson) [1776606] - [netdrv] brcmfmac: replace strncpy() by strscpy() (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not set IEEE80211_TX_STAT_AMPDU_NO_BACK on tx status (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove redundant assignment to pointer hash (Jarod Wilson) [1776606] - [netdrv] brcm80211: Avoid possible null-pointer dereferences in wlc_phy_radio_init_2056() (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: enable MSI interrupt (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Move a mass of jobs in hw IRQ to soft IRQ (Jarod Wilson) [1776606] - [netdrv] rtw88: remove redundant assignment to pointer debugfs_topdir (Jarod Wilson) [1776606] - [netdrv] rtw88: drop unused rtw_coex_coex_dm_reset() (Jarod Wilson) [1776606] - [netdrv] rtw88: Fix an error message (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Remove some variable initializations (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Fix memory leak when hardware init fails (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove unused variables 'RTL8712_SDIO_EFUSE_TABLE' and 'MAX_PGPKT_SIZE' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Fix value set in descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: fix non-kerneldoc comment in usb.c (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix infinite loop because supported is not being shifted (Jarod Wilson) [1776606] - [netdrv] mt76: Remove dev_err() usage after platform_get_irq() (Jarod Wilson) [1776606] - [net] mac80211: Do not send Layer 2 Update frame before authorization (Jarod Wilson) [1776606] - [netdrv] revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band" (Jarod Wilson) [1776606] - [netdrv] rt2x00: clear up IV's on key removal (Jarod Wilson) [1776606] - [netdrv] iwlwifi: assign directly to iwl_trans->cfg in QuZ detection (Jarod Wilson) [1776606] - [netdrv] mwifiex: Fix three heap overflow at parsing element in cfg80211_ap_settings (Jarod Wilson) [1776244 1775484 1775475 1776606] - [netdrv] mt76: mt76x0e: disable 5GHz band for MT7630E (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0e: don't use hw encryption for MT7630E (Jarod Wilson) [1776606] - [net] nl80211: fill all policy .type entries (Jarod Wilson) [1776606] - [net] cfg80211: Add support to set tx power for a station associated (Jarod Wilson) [1776606] - [net] cfg80211: Fix Extended Key ID key install checks (Jarod Wilson) [1776606] - [net] mac80211: AMPDU handling for rekeys with Extended Key ID (Jarod Wilson) [1776606] - [net] mac80211: Simplify Extended Key ID API (Jarod Wilson) [1776606] - [net] nl80211: require and validate vendor command policy (Jarod Wilson) [1776606] - [net] mac80211: AMPDU handling for Extended Key ID (Jarod Wilson) [1776606] - [net] mac80211: IEEE 802.11 Extended Key ID support (Jarod Wilson) [1776606] - [net] nl80211/cfg80211: Extended Key ID support (Jarod Wilson) [1776606] - [net] nl80211/cfg80211: Specify band specific min RSSI thresholds with sched scan (Jarod Wilson) [1776606] - [net] cfg80211: Use const more consistently in for_each_element macros (Jarod Wilson) [1776606] - [net] nl80211: use for_each_element() in validate_ie_attr() (Jarod Wilson) [1776606] - [net] cfg80211: add peer measurement with FTM initiator API (Jarod Wilson) [1776606] - [net] nl80211: use netlink policy validation function for elements (Jarod Wilson) [1776606] - [net] nl80211: use policy range validation where applicable (Jarod Wilson) [1776606] - [net] cfg80211: support FTM responder configuration/statistics (Jarod Wilson) [1776606] - [net] lib80211: move TKIP handling to ARC4 library code (Jarod Wilson) [1776606] - [net] lib80211: move WEP handling to ARC4 library code (Jarod Wilson) [1776606] - [net] mac80211: move WEP handling to ARC4 library interface (Jarod Wilson) [1776606] - [netdrv] rt2x00: clear IV's on start to fix AP mode regression (Jarod Wilson) [1776606] - [netdrv] rt2800usb: Add new rt2800usb device PLANEX GW-USMicroN (Jarod Wilson) [1776606] - [netdrv] rt2x00: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [netdrv] rt2x00usb: remove unnecessary rx flag checks (Jarod Wilson) [1776606] - [netdrv] rt2x00usb: fix rx queue hang (Jarod Wilson) [1776606] - [netdrv] rt2800: do not enable watchdog by default (Jarod Wilson) [1776606] - [netdrv] rt2x00: add restart hw (Jarod Wilson) [1776606] - [netdrv] rt2800: do not nullify initialization vector data (Jarod Wilson) [1776606] - [netdrv] rt2800: add pre_reset_hw callback (Jarod Wilson) [1776606] - [netdrv] rt2800: initial watchdog implementation (Jarod Wilson) [1776606] - [netdrv] rt2800: add helpers for reading dma done index (Jarod Wilson) [1776606] - [netdrv] rt2x00: allow to specify watchdog interval (Jarod Wilson) [1776606] - [netdrv] rt2x00: add RT3883 support (Jarod Wilson) [1776606] - [netdrv] rt2x00mmio: remove legacy comment (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove not used entry field (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove last_nostatus_check (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: use timer and work for handling tx statuses timeouts (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: fetch tx status changes (Jarod Wilson) [1776606] - [netdrv] rt2800: move txstatus pending routine (Jarod Wilson) [1776606] - [netdrv] rt2800: new flush implementation for SoC devices (Jarod Wilson) [1776606] - [netdrv] rt2800: partially restore old mmio txstatus behaviour (Jarod Wilson) [1776606] - [netdrv] rt2x00: code-style fix in rt2800usb.c (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not print error when queue is full (Jarod Wilson) [1776606] - [netdrv] rt2x00: check number of EPROTO errors (Jarod Wilson) [1776606] - [netdrv] rt2x00: use ratelimited variants dev_warn/dev_err (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not increment sequence number while re-transmitting (Jarod Wilson) [1776606] - [netdrv] rt2800: comment and simplify AGC init for RT6352 (Jarod Wilson) [1776606] - [netdrv] rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620 (Jarod Wilson) [1776606] - [netdrv] rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove confusing AGC register (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove unneeded check (Jarod Wilson) [1776606] - [netdrv] rt2x00: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [netdrv] rt2x00: Work around a firmware bug with shared keys (Jarod Wilson) [1776606] - [netdrv] rt2x00: reduce tx power to nominal level on RT6352 (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt61pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2800lib: mark expected switch fall-throughs (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2500pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2400pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2800: flush and txstatus rework for rt2800mmio (Jarod Wilson) [1776606] - [netdrv] rt2x00: use different txstatus timeouts when flushing (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not check for txstatus timeout every time on tasklet (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: use txdone/txstatus routines from lib (Jarod Wilson) [1776606] - [netdrv] rt2800: move usb specific txdone/txstatus routines to rt2800lib (Jarod Wilson) [1776606] - [netdrv] rt2x00: use simple_read_from_buffer() (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove redundant functions rt2x00mac_sta_{add/remove} (Jarod Wilson) [1776606] - [net] mac80211: Correctly set noencrypt for PAE frames (Jarod Wilson) [1776606] - [net] mac80211: Don't memset RXCB prior to PAE intercept (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: handle switching killer Qu B0 NICs to C0 (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: improve rate probing for devices with static fallback (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix default max throughput rate indexes (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: reduce unnecessary rate probing attempts (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix per-group max throughput rate initialization (Jarod Wilson) [1776606] - [net] nl80211: Add support for EDMG channels (Jarod Wilson) [1776606] - [net] mac80211: fix possible NULL pointerderef in obss pd code (Jarod Wilson) [1776606] - [net] mac80211: add assoc-at support (Jarod Wilson) [1776606] - [uapi] cfg80211: Support assoc-at timer in sta-info (Jarod Wilson) [1776606] - [net] cfg80211: apply same mandatory rate flags for 5GHz and 6GHz (Jarod Wilson) [1776606] - [net] cfg80211: ibss: use 11a mandatory rates for 6GHz band operation (Jarod Wilson) [1776606] - [net] cfg80211: use same IR permissive rules for 6GHz band (Jarod Wilson) [1776606] - [net] cfg80211: add 6GHz in code handling array with NUM_NL80211_BANDS entries (Jarod Wilson) [1776606] - [net] cfg80211: extend ieee80211_operating_class_to_band() for 6GHz (Jarod Wilson) [1776606] - [net] cfg80211: util: add 6GHz channel to freq conversion and vice versa (Jarod Wilson) [1776606] - [net] cfg80211: add 6GHz UNII band definitions (Jarod Wilson) [1776606] - [uapi] nl80211: add 6GHz band definition to enum nl80211_band (Jarod Wilson) [1776606] - [net] revert "cfg80211: fix processing world regdomain when non modular" (Jarod Wilson) [1776606] - [net] mac80211: add missing length field increment when generating Radiotap header (Jarod Wilson) [1776606] - [net] mac80211: 80Mhz was not reported properly when using tx_status_ext (Jarod Wilson) [1776606] - [net] mac80211: fix bad guard when reporting legacy rates (Jarod Wilson) [1776606] - [net] mac80211: fix TX legacy rate reporting when tx_status_ext is used (Jarod Wilson) [1776606] - [net] mac80211: fix possible sta leak (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix recognition of QuZ devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't switch FW to qnj when ax201 is detected (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix the byte count table format for 22560 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Allow multicast data frames only when associated (Jarod Wilson) [1776606] - [netdrv] revert "mwifiex: fix system hang problem after resume" (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtw88: add BT co-existence support (Jarod Wilson) [1776606] - [netdrv] rtw88: enclose c2h cmd handle with mutex (Jarod Wilson) [1776606] - [netdrv] rtw88: allow c2h operation in irq context (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Remove local configuration variable (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl88188ee: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Remove unused GET_XXX and SET_XXX descriptor macros (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: remove set but not used variable 'ip_sel' (Jarod Wilson) [1776606] - [netdrv] brcmsmac: remove three set but not used variables (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove set but not used variable 'dtim_period' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove unneeded function _rtl_dump_channel_map() (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Use dev_get_drvdata (Jarod Wilson) [1776606] - [netdrv] mwifiex: pcie: Use dev_get_drvdata (Jarod Wilson) [1776606] - [netdrv] mwifiex: make error values consistent in mwifiex_update_bss_desc_with_ie() (Jarod Wilson) [1776606] - [netdrv] rtw88: use txpwr_lmt_cfg_pair struct, not arrays (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix compile time assert build errors (Jarod Wilson) [1776606] - [net] mac80211: HE STA disassoc due to QOS NULL not sent (Jarod Wilson) [1776606] - [net] mac80211: allow setting spatial reuse parameters from bss_conf (Jarod Wilson) [1776606] - [net] nl80211: add strict start type (Jarod Wilson) [1776606] - [net] cfg80211: add support for parsing OBBS_PD attributes (Jarod Wilson) [1776606] - [net] mac80211: reject zero MAC address in add station (Jarod Wilson) [1776606] - [net] cfg80211: use parallel_ops for genl (Jarod Wilson) [1776606] - [net] mac80211: add missing null return check from call to ieee80211_get_sband (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix a use-after-free bug in iwl_mvm_tx_tso_segment (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix an out-of-bound access (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't unmap as page memory that was mapped as single (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix version check for GEO_TX_POWER_LIMIT support (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add 3 new IDs for the 9000 series (iwl9260_2ac_160_cfg) (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix possible out-of-bounds read when accessing lq_info (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix frame drop from the reordering buffer (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: replace RS mutex with a spin_lock (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: send LQ command always ASYNC (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix comparison of u32 variable with less than zero (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix locking in delayed GTK setting (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of debugfs ifdef (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move iwl_dbg_tlv_load_bin out of debug override ifdef (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a wrapper around rs_tx_status to handle locks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a loose synchronization of the NSSN across Rx queues (Jarod Wilson) [1776606] - [netdrv] iwlwiif: mvm: refactor iwl_mvm_notify_rx_queue (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a new RSS sync notification for NSSN sync (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: prepare the ground for more RSS notifications (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: don't send GEO_TX_POWER_LIMIT on version < 41 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: avoid races in rate init and rate perform (Jarod Wilson) [1776606] - [net] revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues" (Jarod Wilson) [1776606] - [net] mac80211: add support for the ADDBA extension element (Jarod Wilson) [1776606] - [net] mac80211: propagate HE operation info into bss_conf (Jarod Wilson) [1776606] - [net] cfg80211: fix dfs channels remain DFS_AVAILABLE after ch_switch (Jarod Wilson) [1776606] - [net] cfg80211: fix duplicated scan entries after channel switch (Jarod Wilson) [1776606] - [net] cfg80211: refactor cfg80211_bss_update (Jarod Wilson) [1776606] - [net] mac80211: don't WARN on short WMM parameters from AP (Jarod Wilson) [1776606] - [net] nl80211: Include wiphy address setup in NEW_WIPHY (Jarod Wilson) [1776606] - [net] mac80211: implement HE support for mesh (Jarod Wilson) [1776606] - [net] mac80211: add IEEE80211_KEY_FLAG_GENERATE_MMIE to ieee80211_key_flags (Jarod Wilson) [1776606] - [kernel] mac80211: he: add Spatial Reuse element parsing support (Jarod Wilson) [1776606] - [net] mac80211: add struct ieee80211_tx_status support to ieee80211_add_tx_radiotap_header (Jarod Wilson) [1776606] - [net] {nl, mac}80211: fix interface combinations on crypto controlled devices (Jarod Wilson) [1776606] - [net] mac80211: propagate struct ieee80211_tx_status into ieee80211_tx_monitor() (Jarod Wilson) [1776606] - [net] mac80211: add xmit rate to struct ieee80211_tx_status (Jarod Wilson) [1776606] - [kernel] mac80211: add support for parsing ADDBA_EXT IEs (Jarod Wilson) [1776606] - [net] cfg80211: give all multi-BSSID BSS entries the same timestamp (Jarod Wilson) [1776606] - [net] cfg80211: don't parse MBSSID if transmitting BSS isn't created (Jarod Wilson) [1776606] - [net] cfg80211: clean up cfg80211_inform_single_bss_frame_data() (Jarod Wilson) [1776606] - [net] cfg80211: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: add tx dequeue function for process context (Jarod Wilson) [1776606] - [net] mac80211: run late dequeue late tx handlers without holding fq->lock (Jarod Wilson) [1776606] - [net] lib80211: use crypto API ccm(aes) transform for CCMP processing (Jarod Wilson) [1776606] - [net] mac80211: remove unused and unneeded remove_sta_debugfs callback (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove unused .remove_sta_debugfs callback (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dvm: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: pass the vif to cancel_remain_on_channel (Jarod Wilson) [1776606] - [netdrv] mwifiex: use eth_broadcast_addr() to assign broadcast address (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove assignment to itself (Jarod Wilson) [1776606] - [netdrv] brcmfmac: don't net_ratelimit() CONSOLE messages on firmware crash (Jarod Wilson) [1776606] - [netdrv] rtw88: debug: dump tx power indexes in use (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: fix issue possible condition with no effect (if == else) (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove unnecessary strlcpy() upon obtaining "ver" iovar (Jarod Wilson) [1776606] - [netdrv] brcmfmac: simply remove flowring if bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: avoid firmware commands when bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: clear events in brcmf_fweh_detach() will always fail (Jarod Wilson) [1776606] - [netdrv] brcmfmac: avoid firmware command in brcmf_netdev_open() when bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: change the order of things in brcmf_detach() (Jarod Wilson) [1776606] - [netdrv] revert "brcmfmac: fix NULL pointer derefence during USB disconnect" (Jarod Wilson) [1776606] - [netdrv] brcmfmac: allow 160MHz in custom regulatory rules (Jarod Wilson) [1776606] - [netdrv] brcmfmac: enable DFS_OFFLOAD extended feature if supported (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add 160MHz in chandef_to_chanspec() (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Use DMA sync instead of remapping in RX ISR (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Rearrange the memory usage for skb in RX ISR (Jarod Wilson) [1776606] - [netdrv] rtw88: Fix misuse of GENMASK macro (Jarod Wilson) [1776606] - [netdrv] rtl8xxxu: Fix wifi low signal strength issue of RTL8723BU (Jarod Wilson) [1776606] - [net] mac80211: don't warn about CW params when not using them (Jarod Wilson) [1776606] - [net] mac80211: fix possible memory leak in ieee80211_assign_beacon (Jarod Wilson) [1776606] - [kernel] fix typos and some coding style in comments (Jarod Wilson) [1776606] - [netdrv] ath10k: work around uninitialized vht_pfr variable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: add support for qu c-step devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 9000 and 20000 series (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: clear rfkill_safe_init_done when we start the firmware (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't WARN when calling iwl_get_shared_mem_conf with RF-Kill (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't service an interrupt that was masked (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix RF-Kill interrupt while FW load for gen2 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix ALIVE interrupt handling for gen2 devices w/o MSI-X (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: delay GTK setting in FW in AP mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove MAC_FILTER_IN_11AX for AP mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: debug recording stop and restart command remove (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: don't stop dbg recording before entering D3 from 9000 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix debug monitor stop and restart in ini mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: make the usage of TWT configurable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: support FSEQ TLV even when FMAC is not compiled (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move trans debug fields to a separate struct (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove redundant checking of ini mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: enforce apply point early on buffer allocation tlv (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: fix debug monitor stop and restart delays (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: increase the size of PCI dumps (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Drop large non sta frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Add log information about SAR status (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Add support for SAR South Korea limitation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix module init error paths (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: convert to FW AC when configuring MU EDCA (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: correctly fill the ac array in the iwl_mac_ctx_cmd (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove some unnecessary NULL checks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: d3: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] iwlwifi: lib: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: support adwell HB default APs number api (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove multiple debugfs entries (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: implement dump info collection (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a debugfs entry to set a fixed size AMSDU for all TX packets (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: support debug info TLV (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use different barker for ini dump (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: add consecutive trigger firing support (Jarod Wilson) [1776606] - [kernel] ieee80211: Add a missing extended capability flag definition (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: abort region collection in case the size is 0 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: update CSI API (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: dump headers cleanup (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: allow dump collection in case of an early error (Jarod Wilson) [1776606] - [netdrv] iwlwifi: iwl_mvm_tx_mpdu() must be called with BH disabled (Jarod Wilson) [1776606] - [netdrv] ath10k: pci: remove unnecessary casts (Jarod Wilson) [1776606] - [netdrv] ath10k: remove unnecessary 'out of memory' message (Jarod Wilson) [1776606] - [netdrv] ath10k: destroy sdio workqueue while remove sdio module (Jarod Wilson) [1776606] - [netdrv] ath10k: Move non-fatal warn logs to dbg level for SDIO chip (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix memory leak in qmi (Jarod Wilson) [1776606] - [netdrv] ath10k: add new hw_ops for sdio chip (Jarod Wilson) [1776606] - [netdrv] ath9k: correctly handle short radar pulses (Jarod Wilson) [1776606] - [netdrv] rtw88: refine flow to get tx power index (Jarod Wilson) [1776606] - [netdrv] rtw88: remove all RTW_MAX_POWER_INDEX macro (Jarod Wilson) [1776606] - [netdrv] rtw88: update tx power limit table to RF v20 (Jarod Wilson) [1776606] - [netdrv] rtw88: correct power limit selection (Jarod Wilson) [1776606] - [netdrv] rtw88: choose the lowest as world-wide power limit (Jarod Wilson) [1776606] - [netdrv] rtw88: fix incorrect tx power limit at 5G (Jarod Wilson) [1776606] - [netdrv] rtw88: remove unused variable (Jarod Wilson) [1776606] - [netdrv] rtw88: unify prefixes for tx power setting routine (Jarod Wilson) [1776606] - [netdrv] rtw88: do not use (void *) as argument (Jarod Wilson) [1776606] - [netdrv] rtw88: resolve order of tx power setting routines (Jarod Wilson) [1776606] - [netdrv] ath: fix SPDX tags (Jarod Wilson) [1776606] - [netdrv] ath10k: Add WMI diag fw logging support for WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: add report MIC error for sdio chip (Jarod Wilson) [1776606] - [netdrv] ath10k: add support for controlling tx power to a station (Jarod Wilson) [1776606] - [netdrv] ath10k: Add peer delete response event (Jarod Wilson) [1776606] - [netdrv] ath10k: wait for vdev delete response from firmware (Jarod Wilson) [1776606] - [netdrv] ath10k: fix PCIE device wake up failed (Jarod Wilson) [1776606] - [netdrv] ath10k: fix failure to set multiple fixed rate (Jarod Wilson) [1776606] - [netdrv] ath10k: Change the warning message string (Jarod Wilson) [1776606] - [netdrv] ath10k: fix fw crash by moving chip reset after napi disabled (Jarod Wilson) [1776606] - [netdrv] ath10k: add missing error handling (Jarod Wilson) [1776606] - [netdrv] ath10k: enabling tx stats support over pktlog (Jarod Wilson) [1776606] - [netdrv] ath10k: acquire lock to fix lockdep's warning (Jarod Wilson) [1776606] - [netdrv] ath10k: change firmware file name for UTF mode of SDIO/USB (Jarod Wilson) [1776606] - [netdrv] ath10k: add support for firmware crash recovery on SDIO chip (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wrapper function to ath10k debug (Jarod Wilson) [1776606] - [netdrv] ath10k: add htt_h2t_aggr_cfg_msg op for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add inline wrapper for htt_h2t_aggr_cfg_msg (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix sparse warnings: warning: incorrect type in assignment (different base types) (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: warning: cast from restricted __le16 (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: incorrect type in assignment (different base types) (Jarod Wilson) [1776606] - [netdrv] mt76: move nl80211_dfs_regions in mt76_dev data structure (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove cfg80211_chan_def from mt7615_set_channel signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: update peer's bssid when state transition occurs (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix incorrect settings in mesh mode (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: take into account extPA when configuring tx power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: init per-channel target power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support for per-chain signal strength reporting (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: simplify mt7615_mcu_set_sta_rec routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: improve hardware rate switching configuration (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: rework and fix tx status reporting (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove key check in mt7615_mcu_set_wtbl_key (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove unused variable in mt7615_mcu_set_bcn (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix slow performance when enable encryption (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: enable support for mesh (Jarod Wilson) [1776606] - [netdrv] mt76: Remove set but not used variables 'pid' and 'final_mpdu' (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_get_rate in mt76-module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rearrange locking in mt7615_config (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: init get_txpower mac80211 callback (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add the capability to configure tx power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: select wifi band according to eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support for mtd eeprom parsing (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_insert_ccmp_hdr in mt76-module (Jarod Wilson) [1776606] - [netdrv] mt76: fix setting chan->max_power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix reading target tx power from eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: do not process rx packets if the device is not initialized (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: add debugfs knob to enable/disable edcca (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add static qualifier to mt7615_rx_poll_complete (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rearrange cleanup operations in mt7615_unregister_device (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: stop mac80211 queues before setting the channel (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: run __mt76_mcu_send_msg in mt7615_mcu_send_firmware (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: init mcu_restart function pointer (Jarod Wilson) [1776606] - [netdrv] mt7615: initialize mt76_mcu_ops data structure (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use standard signature for mt7615_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove unused structure in mcu.h (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: do not use function pointers whenever possible (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: unify __mt7615_mcu_set_dev_info and mt7615_mcu_set_dev_info (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove skb_ret from mt7615_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt7615: remove dest from mt7615_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt7615: remove query from mt7615_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove unused parameter in mt7615_mcu_del_wtbl (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: unify mt7615_mcu_add_wtbl_bmc and mt7615_mcu_del_wtbl_bmc (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl_bmc (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove bss_info_convert_vif_type routine (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: simplify __mt7615_mcu_set_sta_rec (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: simplify __mt7615_mcu_set_wtbl (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: Make mt7615_irq_handler static (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: Use after free in mt7615_mcu_set_bcn() (Jarod Wilson) [1776606] - [netdrv] mt76: Fix a signedness bug in mt7615_add_interface() (Jarod Wilson) [1776606] - [netdrv] mt76: move netif_napi_del in mt76_dma_cleanup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use napi polling for tx cleanup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use napi polling for tx cleanup (Jarod Wilson) [1776606] - [netdrv] wireless/mediatek: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: dynamically alloc mcu req in mt7603_mcu_set_eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: enable/disable pre_tbtt_tasklet in mt7603_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: move pre_tbtt_tasklet in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: move beacon_mask in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: move beacon_int in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: report firmware version using ethtool (Jarod Wilson) [1776606] - [netdrv] mt76: fix endianness sparse warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use sizeof instead of sizeof_field (Jarod Wilson) [1776606] - [netdrv] mt76: add mac80211 driver for MT7615 PCIe-based chipsets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: run __mt76_mcu_send_msg in mt7603_mcu_send_firmware (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: init mcu_restart function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: initialize mt76_mcu_ops data structure (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use standard signature for mt7603_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: remove query from mt7603_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix initialization of max rx length (Jarod Wilson) [1776606] - [netdrv] mt76: use macro for sn and seq_ctrl conversion (Jarod Wilson) [1776606] - [netdrv] mt76: add skb pointer to mt76_tx_info (Jarod Wilson) [1776606] - [netdrv] mt76: move mac_work in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: only schedule txqs from the tx tasklet (Jarod Wilson) [1776606] - [netdrv] mt76: move tx tasklet to struct mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: store wcid tx rate info in one u32 reduce locking (Jarod Wilson) [1776606] - [netdrv] mt76: use readl/writel instead of ioread32/iowrite32 (Jarod Wilson) [1776606] - [netdrv] mt76: fix tx power issues (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_free_device routine (Jarod Wilson) [1776606] - [netdrv] mt76: unify set_tim (Jarod Wilson) [1776606] - [netdrv] mt7603: core: do not use magic numbers in mt7603_reg_map (Jarod Wilson) [1776606] - [netdrv] mt7603: remove mt7603_mcu_init routine (Jarod Wilson) [1776606] - [netdrv] mt76: dma: add static qualifier to mt76_dma_tx_queue_skb (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_tx_info data structure (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_sw_queue data structure (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_complete_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_prepare_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_queue_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: dma: move mt76x02_init_{tx, rx}_queue in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mmio: move mt76x02_set_irq_mask in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: send BAR after powersave wakeup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix sequence number assignment (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: add missing initialization for dev->ps_lock (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use the correct hweight8() function (Jarod Wilson) [1776606] - [netdrv] mt76: fix return value check in mt76_wmac_probe() (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: set moredata flag when queueing ps-filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: clear the service period on releasing PS filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: notify mac80211 about buffered frames in ps queue (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix up hardware queue index for PS filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: clear ps filtering mode before releasing buffered frames (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix tx status HT rate validation (Jarod Wilson) [1776606] - [netdrv] mt76: add driver for MT7603E and MT7628/7688 (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0u: do not reset radio on resume (Jarod Wilson) [1776606] - [netdrv] mt7601u: null check the allocation (Jarod Wilson) [1776606] - [netdrv] mt7601u: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: usb: fix rx A-MSDU support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: get rid of {out,in}_max_packet (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: reduce rx memory footprint (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: fix sparse warnings: should it be static? (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: fix RF frontend initialization for external PA (Jarod Wilson) [1776606] - [netdrv] mt76: generalize mt76_get_txpower for 4x4:4 devices (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix tx reordering on rate control probing without a-mpdu (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix tx status reporting issues (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix edcca file permission (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: run mt76x02_edcca_init atomically in mt76_edcca_set (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2: move mutex_lock inside mt76x2_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2u: remove mt76x02_edcca_init in mt76x2u_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: remove enable from mt76x02_edcca_init signature (Jarod Wilson) [1776606] - [netdrv] mt76: move tx_napi in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: remove useless return in mt76x02_resync_beacon_timer (Jarod Wilson) [1776606] - [netdrv] mt7601u: fix possible memory leak when the device is disconnected (Jarod Wilson) [1776606] - [netdrv] mt7601u: do not schedule rx_tasklet when the device has been disconnected (Jarod Wilson) [1776606] - [netdrv] mwifiex: don't disable hardirqs; just softirqs (Jarod Wilson) [1776606] - [netdrv] mwifiex: dispatch/rotate from reorder table atomically (Jarod Wilson) [1776606] - [netdrv] mwifiex: ignore processing invalid command response (Jarod Wilson) [1776606] - [netdrv] mwifiex: update set_mac_address logic (Jarod Wilson) [1776606] - [netdrv] mwifiex: print PCI mmap with pK (Jarod Wilson) [1776606] - [netdrv] mwifiex: drop 'set_consistent_dma_mask' log message (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add support for hr1 RF ID (Jarod Wilson) [1776606] - [netdrv] iwlwifi: change 0x02F0 fw from qu to quz (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 22000 and change wrong structs (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 22000 and fix struct name (Jarod Wilson) [1776606] - [net] mac80211: notify offchannel expire on mgmt_tx (Jarod Wilson) [1776606] - [net] nl80211: send event when CMD_FRAME duration expires (Jarod Wilson) [1776606] - [net] mac80211: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: extend __rate_control_send_low warning (Jarod Wilson) [1776606] - [net] mac80211: fill low rate even for HAS_RATE_CONTROL (Jarod Wilson) [1776606] - [net] mac80211: use STA info in rate_control_send_low() (Jarod Wilson) [1776606] - [net] mac80211: call rate_control_send_low() internally (Jarod Wilson) [1776606] - [net] cfg80211: Add a function to iterate all BSS entries (Jarod Wilson) [1776606] - [net] mac80211: allow turning TWT responder support on and off via netlink (Jarod Wilson) [1776606] - [net] mac80211: dynamically enable the TWT requester support on STA interfaces (Jarod Wilson) [1776606] - [net] mac80211: add ieee80211_get_he_iftype_cap() helper (Jarod Wilson) [1776606] - [uapi] nl80211: add support for SAE authentication offload (Jarod Wilson) [1776606] - [net] nl80211: add WPA3 definition for SAE authentication (Jarod Wilson) [1776606] - [net] nl80211: add NL80211_ATTR_IFINDEX to port authorized event (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: remove redundant assignment to rtstatus (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove redundant assignment to variable k (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove redundant assignment to variable badworden (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: fix error handle when usb probe failed (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: remove unused function exhalbtc_stack_operation_notify (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: Remove set but not used variable 'len' and 'asso_type_v2' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Remove set but not used variables 'cur_txokcnt' and 'b_last_is_cur_rdl_state' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Remove unused GET_XXX and SET_XXX descriptor macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: use le32 to access cckswing tables (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: Fix used uninitialized variables in power tracking (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: make tables to be 'static const' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: Reduce indentation and fix coding style (Jarod Wilson) [1776606] - [netdrv] rtw88: fix typo rtw_writ16_set (Jarod Wilson) [1776606] - [netdrv] rtw88: rsvd page should go though management queue (Jarod Wilson) [1776606] - [netdrv] rtw88: restore DACK results to save time (Jarod Wilson) [1776606] - [netdrv] rtw88: power on again if it was already on (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: use more accurate ofdm fa counting (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: disable rx clock gating before counter reset (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update channel and bandwidth BB setting (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add rf write protection when switching channel (Jarod Wilson) [1776606] - [netdrv] rtw88: add beacon function setting (Jarod Wilson) [1776606] - [netdrv] rtw88: add support for random mac scan (Jarod Wilson) [1776606] - [netdrv] rtw88: add fast xmit support (Jarod Wilson) [1776606] - [netdrv] rtw88: more descriptions about LPS (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: check if queue mapping exceeds size of ac_to_hwq (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: use ieee80211_ac_numbers instead of 0-3 (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use strlcpy() instead of strcpy() (Jarod Wilson) [1776606] - [netdrv] brcmfmac: fix typos in code comments (Jarod Wilson) [1776606] - [netdrv] brcm80211: select WANT_DEV_COREDUMP conditionally for brcmfmac (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use separate Kconfig file for brcmfmac (Jarod Wilson) [1776606] - [netdrv] brcmfmac: switch source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcmsmac: switch phy source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcmutil: switch source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcm80211: switch common header files to using SPDX license identifier (Jarod Wilson) [1776606] - [net] cfg80211: Handle bss expiry during connection (Jarod Wilson) [1776606] - [netdrv] ath10k: Check tx_stats before use it (Jarod Wilson) [1776606] - [netdrv] ath10k: add peer id check in ath10k_peer_find_by_id (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wmi tlv service map for mesh 11s (Jarod Wilson) [1776606] - [netdrv] ath10k: Do not send probe response template for mesh (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wmi tlv vdev subtype for mesh in WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: change swap mail box config for UTF mode of SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix the wrong value of enums for wmi tlv stats id (Jarod Wilson) [1776606] - [netdrv] ath10k: coredump: use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix encoding for protected management frames (Jarod Wilson) [1776606] - [netdrv] ath10k: rx_duration update for fw_stats debugfs entry (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix the tx stats bytes & packets parsing (Jarod Wilson) [1776606] - [netdrv] ath10k: Modify CE4 src buffer entries to 2048 for WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: Move board id and fw version logging to info level (Jarod Wilson) [1776606] - [netdrv] ath10k: Added support to reset HTT stats in debugfs (Jarod Wilson) [1776606] - [netdrv] ath10k: Extended the HTT stats support to retrieve Mu-MIMO related stats (Jarod Wilson) [1776606] - [netdrv] ath: DFS JP domain W56 fixed pulse type 3 RADAR detection (Jarod Wilson) [1776606] - [netdrv] ath9k: drop redundant code in ar9003_hw_set_channel (Jarod Wilson) [1776606] - [netdrv] ath: drop duplicated define (Jarod Wilson) [1776606] - [netdrv] ath9k: Remove some set but not used variables (Jarod Wilson) [1776606] - [netdrv] ath9k: Differentiate between max combined and per chain power (Jarod Wilson) [1776606] - [netdrv] ath9k: Check for errors when reading SREV register (Jarod Wilson) [1776606] - [netdrv] ath9k: Don't trust TX status TID number when reporting airtime (Jarod Wilson) [1776606] - [netdrv] ath6kl: remove redundant check of status != 0 (Jarod Wilson) [1776606] - [netdrv] ath6kl: add some bounds checking (Jarod Wilson) [1776606] - [netdrv] ath6kl: wmi: use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath6kl: debug: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: fix incorrect multicast/broadcast rate setting (Jarod Wilson) [1776606] - [netdrv] ath10k: enable QCA6174 hw3.2 SDIO hardware (Jarod Wilson) [1776606] - [netdrv] ath10k: add fragmentation handler for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add PN replay protection for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add handler for HTT_T2H_MSG_TYPE_SEC_IND event (Jarod Wilson) [1776606] - [netdrv] ath10k: add struct for high latency PN replay protection (Jarod Wilson) [1776606] - [netdrv] ath10k: sdio: add missing error check (Jarod Wilson) [1776606] - [netdrv] ath10k: add initialization of HTC header (Jarod Wilson) [1776606] - [netdrv] ath10k: fix use-after-free on SDIO data frames (Jarod Wilson) [1776606] - [netdrv] ath10k: htt: support MSDU ids with SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: initialise struct ath10k_bus params to zero (Jarod Wilson) [1776606] - [netdrv] ath10k: htt: don't use txdone_fifo with SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: don't disable interrupts in ath10k_sdio_remove() (Jarod Wilson) [1776606] - [netdrv] ath10k: sdio: workaround firmware UART pin configuration bug (Jarod Wilson) [1776606] - [net] cfg80211: Add airtime statistics and settings (Jarod Wilson) [1776606] - [base] depend on HAS_IOMEM for devm_platform_ioremap_resource() (Jarod Wilson) [1776606] - [base] provide devm_platform_ioremap_resource() (Jarod Wilson) [1776606] - [lib] crypto: arc4 - refactor arc4 core code into separate library (Jarod Wilson) [1776606] - [crypto] export arc4 defines (Jarod Wilson) [1776606] - [crypto] arc4 - convert to skcipher API (Jarod Wilson) [1776606] - [kernel] bitfield: add u8 helpers (Jarod Wilson) [1776606]- [md] raid5: need to set STRIPE_HANDLE for batch head (Nigel Croxon) [1774840] - [scsi] lpfc: remove left-over BUILD_NVME defines (Ewan Milne) [1782235] - [block] fix memleak of bio integrity data (Ming Lei) [1779898] - [fs] xfs: attach dquots and reserve quota blocks during unwritten conversion (Carlos Maiolino) [1782094] - [nvme] nvme-fc: fix double-free scenarios on hw queues (Ewan Milne) [1781390] - [tools] power turbostat: Add Cometlake support (David Arcari) [1759661] - [mm] hugetlbfs: take read_lock on i_mmap for PMD sharing (Waiman Long) [1731295] - [documentation] powerpc/pseries: Add documentation for vcpudispatch_stats (Gustavo Duarte) [1723870] - [powerpc] pseries: Protect against hogging the cpu while setting up the stats (Gustavo Duarte) [1723870] - [powerpc] pseries: Provide vcpu dispatch statistics (Gustavo Duarte) [1723870] - [powerpc] pseries: Move mm/book3s64/vphn.c under platforms/pseries/ (Gustavo Duarte) [1723870] - [powerpc] pseries: Generalize hcall_vphn() (Gustavo Duarte) [1723870] - [powerpc] mm: Move book3s64 specifics in subdirectory mm/book3s64 (Gustavo Duarte) [1723870] - [powerpc] pseries: Introduce rwlock to gatekeep DTLB usage (Gustavo Duarte) [1723870] - [powerpc] pseries: Factor out DTL buffer allocation and registration routines (Gustavo Duarte) [1723870] - [powerpc] pseries: Do not save the previous DTL mask value (Gustavo Duarte) [1723870] - [powerpc] pseries: Use macros for referring to the DTL enable mask (Gustavo Duarte) [1723870] - [powerpc] mm: change #include "mmu_decl.h" to (Gustavo Duarte) [1723870] - [fs] devpts_pty_kill(): don't bother with d_delete() (Eric Sandeen) [1772718] - [fs] devpts: always delete dcache dentry-s in dput() (Eric Sandeen) [1772718] - [infiniband] rdma/siw: Fix post_recv QP state locking (Kamal Heib) [1779625] - [infiniband] rdma/siw: Fix SQ/RQ drain logic (Kamal Heib) [1779625] - [infiniband] rdma/siw: Relax from kmap_atomic() use in TX path (Kamal Heib) [1779625] - [netdrv] nfp: flower: cmsg rtnl locks can timeout reify messages (Pablo Cascon) [1729154] - [netdrv] nfp: Drop unnecessary continue in nfp_net_pf_alloc_vnics (Pablo Cascon) [1729154] - [netdrv] nfp: flower: handle neighbour events on internal ports (Pablo Cascon) [1729154] - [netdrv] nfp: flower: prevent ingress block binds on internal ports (Pablo Cascon) [1729154] - [netdrv] nfp: add AMDA0058 boards to firmware list (Pablo Cascon) [1729154] - [netdrv] nfp: no need to check return value of debugfs_create functions (Pablo Cascon) [1729154] - [netdrv] nfp: flower: encode mac indexes with pre-tunnel rule check (Pablo Cascon) [1729154] - [netdrv] nfp: flower: remove offloaded MACs when reprs are applied to OvS bridges (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: verify pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: detect potential pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: push vlan after tunnel in merge (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS set action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS pop action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS push action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: ensure ip protocol is specified for L4 matches (Pablo Cascon) [1729154] - [netdrv] nfp: flower: fix ethernet check on match fields (Pablo Cascon) [1729154] - [netdrv] nfp: ccm: increase message limits (Pablo Cascon) [1729154] - [netdrv] nfp: Use spinlock_t instead of struct spinlock (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add GRE encap action support (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add GRE decap classification support (Pablo Cascon) [1729154] - [netdrv] nfp: flower: rename tunnel related functions in action offload (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add helper functions for tunnel classification (Pablo Cascon) [1729154] - [netdrv] nfp: flower: refactor tunnel key layer calculation (Pablo Cascon) [1729154] - [netdrv] nfp: flower: extend extack messaging for flower match and actions (Pablo Cascon) [1729154] - [netdrv] nfp: flower: use extack messages in flower offload (Pablo Cascon) [1729154] - [netdrv] nfp: flower: check L4 matches on unknown IP protocols (Pablo Cascon) [1729154] - [netdrv] nfp: print a warning when binding VFs to PF driver (Pablo Cascon) [1729154] - [netdrv] nfp: update the old flash error message (Pablo Cascon) [1729154] - [netdrv] nfp: prepare for more TX metadata prepend (Pablo Cascon) [1729154] - [netdrv] nfp: add tls init code (Pablo Cascon) [1729154] - [netdrv] nfp: parse crypto opcode TLV (Pablo Cascon) [1729154] - [netdrv] nfp: add support for sending control messages via mailbox (Pablo Cascon) [1729154] - [netdrv] nfp: parse the mailbox cmsg TLV (Pablo Cascon) [1729154] - [netdrv] nfp: make bar_lock a semaphore (Pablo Cascon) [1729154] - [netdrv] nfp: count all failed TX attempts as errors (Pablo Cascon) [1729154] - [netdrv] nfp: ensure skb network header is set for packet redirect (Pablo Cascon) [1728773] - [netdrv] nfp: reintroduce ndo_get_port_parent_id for representor ports (Pablo Cascon) [1728773] - [netdrv] nfp: implement PCI driver shutdown callback (Pablo Cascon) [1728773] - [netdrv] nfp: add SR-IOV trusted VF support (Pablo Cascon) [1728773] - [netdrv] nfp: split out common control message handling code (Pablo Cascon) [1728773] - [netdrv] nfp: move vNIC reset before netdev init (Pablo Cascon) [1728773] - [netdrv] nfp: add a mutex lock for the vNIC ctrl BAR (Pablo Cascon) [1728773] - [netdrv] nfp: opportunistically poll for reconfig result (Pablo Cascon) [1728773] - [netdrv] nfp: remove ndo_get_port_parent_id implementation (Pablo Cascon) [1728773] - [netdrv] nfp: pass switch ID through devlink_port_attrs_set() (Pablo Cascon) [1728773] - [netdrv] nfp: implement ethtool get module EEPROM (Pablo Cascon) [1728773] - [netdrv] nfp: nsp: implement read SFF module EEPROM (Pablo Cascon) [1728773] - [netdrv] nfp: do not handle nn->port defined case in nfp_net_get_phys_port_name() (Pablo Cascon) [1728773] - [netdrv] nfp: register devlink port before netdev (Pablo Cascon) [1728773] - [netdrv] nfp: remove defines for unused control bits (Pablo Cascon) [1728773] - [netdrv] replace ndo_get_devlink with ndo_get_devlink_port (Pablo Cascon) [1728773] - [netdrv] nfp: add .ndo_get_devlink (Pablo Cascon) [1728773] - [netdrv] nfp: flower: add rcu locks when accessing netdev for tunnels (Pablo Cascon) [1728773] - [netdrv] nfp: flower: add qos offload stats request and reply (Pablo Cascon) [1728773] - [netdrv] nfp: flower: fix size_t compile warning (Pablo Cascon) [1728773] - [netdrv] nfp: flower: fix implicit fallthrough warning (Pablo Cascon) [1728773] - [netdrv] nfp: flower: offload merge flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: support stats update for merge flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: generate merge flow rule (Pablo Cascon) [1728773] - [netdrv] nfp: flower: validate merge hint flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: handle merge hint messages (Pablo Cascon) [1728773] - [netdrv] nfp: flower: get flows by host context (Pablo Cascon) [1728773] - [netdrv] nfp: flower: allow tunnels to output to internal port (Pablo Cascon) [1728773] - [netdrv] nfp: flower: support fallback packets from internal ports (Pablo Cascon) [1728773] - [netdrv] nfp: allow fallback packets from non-reprs (Pablo Cascon) [1728773] - [netdrv] nfp: flower: allow offloading of matches on 'internal' ports (Pablo Cascon) [1728773] - [netdrv] nfp: flower: turn on recirc and merge hint support in firmware (Pablo Cascon) [1728773] - [netdrv] nfp: flower: reduce action list size by coalescing mangle actions (Pablo Cascon) [1728773] - [fs] xfs: properly serialise fallocate against AIO+DIO (Eric Sandeen) [1765547] - [fs] xfs: fix attr leaf header freemap.size underflow (Brian Foster) [1728989] - [mm] maintain randomization of page free lists (Rafael Aquini) [1620349] - [mm] move buddy list manipulations into helpers (Rafael Aquini) [1620349] - [mm] shuffle initial free memory to improve memory-side-cache utilization (Rafael Aquini) [1620349] - [powerpc] kvm: ppc: book3s hv: Flush link stack on guest exit to host kernel (Gustavo Duarte) [1777686] - [powerpc] book3s64: Fix link stack flush on context switch (Gustavo Duarte) [1777686] - [powerpc] 64s: support nospectre_v2 cmdline option (Gustavo Duarte) [1777686] - [powerpc] fsl: Update Spectre v2 reporting (Gustavo Duarte) [1777686] - [powerpc] fsl: Add nospectre_v2 command line argument (Gustavo Duarte) [1777686] - [powerpc] fsl: Fix spectre_v2 mitigations reporting (Gustavo Duarte) [1777686] - [powerpc] 64: Make meltdown reporting Book3S 64 specific (Gustavo Duarte) [1777686] - [powerpc] 64: Disable the speculation barrier from the command line (Gustavo Duarte) [1777686] - [x86] kprobes: Avoid kretprobe recursion bug (Jiri Olsa) [1779235] - [x86] kprobes: Verify stack frame on kretprobe (Jiri Olsa) [1779235]- [fs] iomap: Fix pipe page leakage during splicing (Andreas Grunbacher) [1622634] - [fs] iomap: fix return value of iomap_dio_bio_actor on 32bit systems (Andreas Grunbacher) [1622634] - [fs] iomap: iomap_bmap should check iomap_apply return value (Andreas Grunbacher) [1622634] - [fs] iomap: Fix overflow in iomap_page_mkwrite (Andreas Grunbacher) [1622634] - [fs] splice: only read in as much information as there is pipe buffer space (Andreas Grunbacher) [1622634] - [fs] gfs2: Always mark inode dirty in fallocate (Andreas Grunbacher) [1622634] - [fs] dax: Fix pmd vs pte conflict detection (Jeff Moyer) [1777250] - [fs] xfs: move local to extent inode logging into bmap helper (Brian Foster) [1737677] - [fs] xfs: remove broken error handling on failed attr sf to leaf change (Brian Foster) [1737677] - [fs] xfs: log the inode on directory sf to block format change (Brian Foster) [1737677] - [block] bfq: deschedule empty bfq_queues not referred by any process (Ming Lei) [1773831] - [scsi] revert "scsi: qla2xxx: Fix memory leak when sending I/O fails" (Himanshu Madhani) [1759275] - [infiniband] rdma/iw_cxgb4: Report correct port speed/width (Vishal Kulkarni) [1757806] - [infiniband] rdma/iw_cxgb4: fix SRQ access from dump_qp() (Vishal Kulkarni) [1779997] - [net] nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds (Vladis Dronov) [1778898] - [atm] iphase: Fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [x86] tls: Fix possible spectre-v1 in do_get_thread_area() (Vladis Dronov) [1778898] - [x86] ptrace: Fix possible spectre-v1 in ptrace_get_debugreg() (Vladis Dronov) [1778898] - [net] atm: Fix potential Spectre v1 vulnerabilities (Vladis Dronov) [1778898] - [powerpc] ptrace: Mitigate potential Spectre v1 (Vladis Dronov) [1778898] - [char] applicom: Fix potential Spectre v1 vulnerabilities (Vladis Dronov) [1778898] - [char] mwave: fix potential Spectre v1 vulnerability (Vladis Dronov) [1778898] - [misc] misc/sgi-gru: fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [usb] gadget: storage: Fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [misc] hmc6352: fix potential Spectre v1 (Vladis Dronov) [1778898] - [s390] qeth: ensure linear access to packet headers (Philipp Rudo) [1781085] - [s390] qeth: guard against runt packets (Philipp Rudo) [1781085] - [s390] qeth: handle skb allocation error gracefully (Philipp Rudo) [1781085] - [s390] qeth: drop unwanted packets earlier in RX path (Philipp Rudo) [1781085] - [s390] qeth: support per-frame invalidation (Philipp Rudo) [1781085] - [s390] qeth: gather more detailed RX dropped/error statistics (Philipp Rudo) [1781085] - [s390] Mark expected switch fall-throughs (Philipp Rudo) [1781085] - [sched] fair: Scale bandwidth quota and period without losing quota/period ratio precision (Phil Auld) [1706247] - [sched] fair: Fix -Wunused-but-set-variable warnings (Phil Auld) [1706247] - [sched] fair: Fix low cpu usage with high throttling by removing expiration of cpu-local slices (Phil Auld) [1706247] - [kernel] sched/core: Remove double update_max_interval() call on CPU startup (Phil Auld) [1757535] - [kernel] sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr() (Phil Auld) [1757535] - [kernel] sched/fair: Don't assign runtime for throttled cfs_rq (Phil Auld) [1757535] - [kernel] cpufreq: schedutil: Don't skip freq update when limits change (Phil Auld) [1757535] - [kernel] sched/deadline: Fix double accounting of rq/running bw in push & pull (Phil Auld) [1757535] - [kernel] sched/fair: Fix imbalance due to CPU affinity (Phil Auld) [1757535] - [kernel] sched/fair: Use RCU accessors consistently for ->numa_group (Phil Auld) [1757535] - [kernel] sched/fair: Don't free p->numa_faults with concurrent readers (Phil Auld) [1757535] - [kernel] sched/fair: Rename weighted_cpuload() to cpu_runnable_load() (Phil Auld) [1757535] - [kernel] sched/topology: Remove unused 'sd' parameter from arch_scale_cpu_capacity() (Phil Auld) [1757535] - [kernel] sched/fair: Don't push cfs_bandwith slack timers forward (Phil Auld) [1757535] - [documentation] sched/fair: Fix "runnable_avg_yN_inv" not used warnings (Phil Auld) [1757535] - [kernel] sched/fair: Clean up definition of NOHZ blocked load functions (Phil Auld) [1757535] - [kernel] sched/core: Add __sched tag for io_schedule() (Phil Auld) [1757535] - [kernel] sched/fair: Remove sgs->sum_weighted_load (Phil Auld) [1757535] - [kernel] sched/core: Remove sd->*_idx (Phil Auld) [1757535] - [kernel] sched/core: Remove rq->cpu_load[] (Phil Auld) [1757535] - [kernel] sched/debug: Remove sd->*_idx range on sysctl (Phil Auld) [1757535] - [kernel] sched/fair: Replace source_load() & target_load() with weighted_cpuload() (Phil Auld) [1757535] - [kernel] sched/fair: Remove the rq->cpu_load[] update code (Phil Auld) [1757535] - [kernel] sched/fair: Remove rq->load (Phil Auld) [1757535] - [kernel] sched/core: Unify p->on_rq updates (Phil Auld) [1757535] - [kernel] sched/core: Remove ttwu_activate() (Phil Auld) [1757535] - [kernel] sched/cpufreq: Fix 32-bit math overflow (Phil Auld) [1757535] - [kernel] sched/fair: Update scale invariance of PELT (Phil Auld) [1757535] - [kernel] sched/pelt: Skip updating util_est when utilization is higher than CPU's capacity (Phil Auld) [1757535] - [kernel] sched/fair: Move the rq_of() helper function (Phil Auld) [1757535] - [kernel] sched/core: Use READ_ONCE()/WRITE_ONCE() in move_queued_task()/task_rq_lock() (Phil Auld) [1757535] - [kernel] sched/numa: Remove unused numa_stats::nr_running field (Phil Auld) [1757535] - [kernel] sched/fair: Add lsub_positive() and use it consistently (Phil Auld) [1706247 1757535] - [kernel] sched/fair: Mask UTIL_AVG_UNCHANGED usages (Phil Auld) [1706247 1757535] - [cpuidle] teo: Avoid using "early hits" incorrectly (Al Stone) [1725618] - [cpuidle] teo: Fix "early hits" handling for disabled idle states (Al Stone) [1725618] - [cpuidle] teo: Consider hits and misses metrics of disabled states (Al Stone) [1725618] - [cpuidle] teo: Rename local variable in teo_select() (Al Stone) [1725618] - [cpuidle] teo: Ignore disabled idle states that are too deep (Al Stone) [1725618] - [cpuidle] teo: Get rid of redundant check in teo_update() (Al Stone) [1725618] - [cpuidle] teo: Allow tick to be stopped if PM QoS is used (Al Stone) [1725618] - [cpuidle] governors: unify last_state_idx (Al Stone) [1725618] - [powerpc] powernv/cpuidle: Fix idle states all being marked invalid (Al Stone) [1725618] - [cpuidle] menu: Avoid overflows when computing variance (Al Stone) [1725618] - [cpuidle] dt: bail out if the idle-state DT node is not compatible (Al Stone) [1725618] - [kernel] cpuidle: use BIT() for idle state flags and remove CPUIDLE_DRIVER_FLAGS_MASK (Al Stone) [1725618] - [cpuidle] New timer events oriented governor for tickless systems (Al Stone) [1725618] - [cpuidle] Add 'above' and 'below' idle state metrics (Al Stone) [1725618] - [cpuidle] big.little: fix refcount leak (Al Stone) [1725618] - [documentation] documentation: admin-guide: pm: Add cpuidle document (Al Stone) [1725618] - [cpuidle] powerpc/pseries/cpuidle: Fix preempt warning (Al Stone) [1725618] - [cpuidle] arm: cpuidle: Convert to use cpuidle_register|unregister() (Al Stone) [1725618] - [cpuidle] arm: cpuidle: Don't register the driver when back-end init returns -ENXIO (Al Stone) [1725618] - [cpuidle] menu: Remove get_loadavg() from the performance multiplier (Al Stone) [1725618] - [kernel] sched: Factor out nr_iowait and nr_iowait_cpu (Al Stone) [1725618] - [kernel] sched/core: Fix comment regarding nr_iowait_cpu() and get_iowait_load() (Al Stone) [1725618] - [cpuidle] menu: Avoid computations when result will be discarded (Al Stone) [1725618] - [cpuidle] menu: Drop redundant comparison (Al Stone) [1725618] - [cpuidle] menu: Simplify checks related to the polling state (Al Stone) [1725618] - [cpuidle] menu: Move the latency_req == 0 special case check (Al Stone) [1725618] - [cpuidle] menu: Avoid computations for very close timers (Al Stone) [1725618] - [cpuidle] menu: Do not update last_state_idx in menu_select() (Al Stone) [1725618] - [cpuidle] menu: Get rid of first_idx from menu_select() (Al Stone) [1725618] - [cpuidle] menu: Compute first_idx when latency_req is known (Al Stone) [1725618] - [cpuidle] menu: Replace data->predicted_us with local variable (Al Stone) [1725618] - [cpuidle] enter_state: Don't needlessly calculate diff time (Al Stone) [1725618] - [kernel] cpuidle: Remove unnecessary wrapper cpuidle_get_last_residency() (Al Stone) [1725618] - [cpuidle] menu: Update stale polling override comment (Al Stone) [1725618] - [cpuidle] menu: Fix white space (Al Stone) [1725618] - [cpuidle] powernv/cpuidle: Use parsed device tree values for cpuidle_init (Al Stone) [1725618] - [powerpc] powernv/cpuidle: Parse dt idle properties into global structure (Al Stone) [1725618] - [cpuidle] arm: cpuidle: silence error on driver registration failure (Al Stone) [1725618]- [documentation] docs: admin-guide: Remove threads-max auto-tuning (Joe Lawrence) [1771270] - [documentation] docs: admin-guide: Fix min value of threads-max in kernel.rst (Joe Lawrence) [1771270] - [kernel] sysctl.c: do not override max_threads provided by userspace (Joe Lawrence) [1771270] - [fs] ext4: fix integer overflow when calculating commit interval (Lukas Czerner) [1775166] - [fs] ext4: fix punch hole for inline_data file systems (Lukas Czerner) [1775166] - [fs] ext4: fix warning inside ext4_convert_unwritten_extents_endio (Lukas Czerner) [1775166] - [fs] ext4: set error return correctly when ext4_htree_store_dirent fails (Lukas Czerner) [1775166] - [fs] ext4: fix warning when turn on dioread_nolock and inline_data (Lukas Czerner) [1775166] - [fs] ext4: use jbd2_inode dirty range scoping (Lukas Czerner) [1775166] - [fs] jbd2: introduce jbd2_inode dirty range scoping (Lukas Czerner) [1775166] - [mm] add filemap_fdatawait_range_keep_errors() (Lukas Czerner) [1775166] - [fs] ext4: enforce the immutable flag on open files (Lukas Czerner) [1775166] - [fs] ext4: don't allow any modifications to an immutable file (Lukas Czerner) [1775166] - [fs] jbd2: fix typo in comment of journal_submit_inode_data_buffers (Lukas Czerner) [1775166] - [fs] jbd2: fix some print format mistakes (Lukas Czerner) [1775166] - [fs] ext4: do not delete unlinked inode from orphan list on failed truncate (Lukas Czerner) [1775166] - [fs] ext4: wait for outstanding dio during truncate in nojournal mode (Lukas Czerner) [1775166] - [fs] ext4: don't perform block validity checks on the journal inode (Lukas Czerner) [1775166] - [fs] ext4: fix block validity checks for journal inodes using indirect blocks (Lukas Czerner) [1775166] - [fs] ext4: fix miscellaneous sparse warnings (Lukas Czerner) [1775166] - [fs] jbd2: fix potential double free (Lukas Czerner) [1775166] - [fs] quota: fix condition for resetting time limit in do_set_dqblk() (Lukas Czerner) [1778119] - [fs] quota: honor quota type in Q_XGETQSTAT[V] calls (Lukas Czerner) [1778119] - [fs] quota: fix a problem about transfer quota (Lukas Czerner) [1778119] - [fs] quota: add dqi_dirty_list description to comment of Dquot List Management (Lukas Czerner) [1778119] - [fs] quota: check time limit when back out space/inode change (Lukas Czerner) [1778119] - [fs] quota: fix wrong indentation (Lukas Czerner) [1778119] - [fs] quota: remove trailing whitespaces (Lukas Czerner) [1778119] - [fs] quota: code cleanup for __dquot_alloc_space() (Lukas Czerner) [1778119] - [fs] quota: Lock s_umount in exclusive mode for Q_XQUOTA{ON, OFF} quotactls (Lukas Czerner) [1778119] - [fs] quota: Replace XQM_MAXQUOTAS usage with MAXQUOTAS (Lukas Czerner) [1778119] - [hv] vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Resume after fixing up old primary channels (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Suspend after cleaning up hv_sock and sub channels (Mohammed Gamal) [1774675] - [kernel] hv: vmbus: Add a helper function is_sub_channel() (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Clean up hv_sock channels by force upon suspend (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Suspend/resume the vmbus itself for hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Ignore the offers when resuming from hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Implement suspend/resume for VSC drivers for hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Fix virt_to_hvpfn() for X86_PAE (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Remove the unused "tsc_page" from struct hv_context (Mohammed Gamal) [1774675] - [hv] tools: hv: Use the correct style for SPDX License Identifier (Mohammed Gamal) [1774675] - [hv] hv_balloon: Reorganize the probe function (Mohammed Gamal) [1774675] - [hv] hv_balloon: Use a static page for the balloon_up send buffer (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Replace page definition with Hyper-V specific one (Mohammed Gamal) [1774675] - [hv] hv: Add a module description line to the hv_vmbus driver (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Fix race condition with new ring_buffer_info mutex (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Set ring_info field to 0 and remove memset (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Refactor chan->state if statement (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Expose monitor data only when monitor pages are used (Mohammed Gamal) [1774675] - [netdrv] hv_netvsc: Fix error handling in netvsc_attach() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix error handling in netvsc_set_features() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Sync offloading features to VF NIC (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Allow scatter-gather feature to be tunable (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix a warning of suspicious RCU usage (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix extra rcu_read_unlock in netvsc_recv_callback() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Set probe mode to sync (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: fix race that may miss tx queue wakeup (Mohammed Gamal) [1774687] - [netdrv] nfp: bpf: fix latency bug when updating stack index register (Pablo Cascon) [1729156] - [netdrv] nfp: bpf: eliminate zero extension code-gen (Pablo Cascon) [1729156] - [netdrv] bnxt_en: Call bnxt_ulp_stop()/bnxt_ulp_start() during suspend/resume (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Call bnxt_ulp_stop()/bnxt_ulp_start() during error recovery (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Improve bnxt_ulp_stop()/bnxt_ulp_start() call sequence (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: flow_offload: offload tunnel decap rules via indirect callbacks (Jonathan Toppins) [1773724] - [netdrv] bnxt: Avoid logging an unnecessary message when a flow can't be offloaded (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Add support to collect crash dump via ethtool (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Add support to invoke OP-TEE API to reset firmware (Jonathan Toppins) [1773724] - [netdrv] broadcom: bnxt: Fix use true/false for bool (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Avoid disabling pci device in bnxt_remove_one() for already disabled device (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Minor formatting changes in FW devlink_health_reporter (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Adjust the time to wait before polling firmware readiness (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Fix devlink NVRAM related byte order related issues (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Fix the size of devlink MSIX parameters (Jonathan Toppins) [1773724] - [nvme] Fix parsing of ANA log page (Ewan Milne) [1769028] - [nvme] nvme-multipath: fix ana log nsid lookup when nsid is not found (Ewan Milne) [1769028] - [nvme] nvme-multipath: fix possible I/O hang when paths are updated (Ewan Milne) [1769028] - [nvme] revert "nvme: update node paths after adding new path" (Ewan Milne) [1769028] - [netdrv] mlx5: Update the list of the PCI supported devices (Mohammad Heib) [1776921] - [netdrv] mlx5: Fix auto group size calculation (Mohammad Heib) [1776921] - [netdrv] mlx5e: Do not use non-EXT link modes in EXT mode (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix set vf link state error flow (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Limit STE hash table enlarge based on bytemask (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix invalid EQ vector number on CQ creation (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Skip rehash for tables with byte mask zero (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix error flow cleanup in mlx5e_tc_tun_create_header_ipv4/6 (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix matcher builders select check (Mohammad Heib) [1776921] - [netdrv] mlx5: Read num_vfs before disabling SR-IOV (Mohammad Heib) [1776921] - [netdrv] mlx5: Clear VF's configuration on disabling SRIOV (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix memory leak during rule creation (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix memory leak in modify action destroy (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix eswitch debug print of max fdb flow (Mohammad Heib) [1776921] - [netdrv] mlx5: LAG, Use affinity type enumerators (Mohammad Heib) [1776921] - [netdrv] mlx5: E-switch, Enable metadata on own vport (Mohammad Heib) [1776921] - [netdrv] mlx5: Correct comment for legacy fields (Mohammad Heib) [1776921] - [netdrv] mlx5: Fixed a typo in a comment in esw_del_uc_addr() (Mohammad Heib) [1776921] - [netdrv] mlx5: Fix rtable reference leak (Mohammad Heib) [1776921] - [netdrv] mlx5: fix a -Wstringop-truncation warning (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix a race with XSKICOSQ in XSK wakeup flow (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix wrong max num channels indication (Mohammad Heib) [1776921] - [netdrv] mlx5e: Add XSK zero-copy support (Mohammad Heib) [1776921]- [mm] memremap: drop unused SECTION_SIZE and SECTION_MASK (Don Dutile) [1754737] - [mm] memremap: Fix reuse of pgmap instances with internal references (Don Dutile) [1754737] - [mm] memunmap: don't access uninitialized memmap in memunmap_pages() (Don Dutile) [1754737] - [mm] memremap: move from kernel/ to mm/ (Don Dutile) [1754737] - [kernel] memremap: provide an optional internal refcount in struct dev_pagemap (Don Dutile) [1754737] - [kernel] memremap: replace the altmap_valid field with a PGMAP_ALTMAP_VALID flag (Don Dutile) [1754737] - [mm] memremap: remove the data field in struct dev_pagemap (Don Dutile) [1754737] - [kernel] memremap: add a migrate_to_ram method to struct dev_pagemap_ops (Don Dutile) [1754737] - [kernel] memremap: lift the devmap_enable manipulation into devm_memremap_pages (Don Dutile) [1754737] - [nvdimm] memremap: pass a struct dev_pagemap to ->kill and ->cleanup (Don Dutile) [1754737] - [kernel] memremap: move dev_pagemap callbacks into a separate structure (Don Dutile) [1754737] - [kernel] memremap: validate the pagemap type passed to devm_memremap_pages (Don Dutile) [1754737] - [mm] remove MEMORY_DEVICE_PUBLIC support (Don Dutile) [1754737] - [mm] migrate.c: cleanup expected_page_refs() (Don Dutile) [1754737] - [mm] migration: factor out code to compute expected number of page references (Don Dutile) [1754737] - [kernel] mm/devm_memremap_pages: fix final page put race (Don Dutile) [1754737] - [kernel] mm/devm_memremap_pages: introduce devm_memunmap_pages (Don Dutile) [1754737] - [kernel] memremap.c: remove the unused device_private_entry_fault() export (Don Dutile) [1754737] - [base] devres: introduce devm_release_action() (Don Dutile) [1754737] - [base] devres: Align data[] to ARCH_KMALLOC_MINALIGN (Don Dutile) [1754737] - [base] devres: provide devm_kstrdup_const() (Don Dutile) [1754737] - [base] devres: constify p in devm_kfree() (Don Dutile) [1754737] - [kernel] mm: move is_kernel_rodata() to asm-generic/sections.h (Don Dutile) [1754737] - [kernel] mm: fix vm_fault_t cast in VM_FAULT_GET_HINDEX() (Don Dutile) [1754737] - [kernel] mm: create the new vm_fault_t type (Don Dutile) [1754737] - [kernel] mm/hmm: convert to use vm_fault_t (Don Dutile) [1754737] - [kernel] mm/hmm: fix memremap.h, move dev_page_fault_t callback to hmm (Don Dutile) [1754737] - [fs] proc/vmcore.c: Convert to use vmf_error() (Don Dutile) [1754737] - [fs] proc/vmcore.c: use new typedef vm_fault_t (Don Dutile) [1754737] - [s390] vdso_fault return type (Don Dutile) [1754737] - [mm] inline vm_insert_pfn_prot() into caller (Don Dutile) [1754737] - [mm] remove vm_insert_pfn() (Don Dutile) [1754737] - [mm] make vm_insert_pfn_prot() static (Don Dutile) [1754737] - [x86] convert vdso to use vm_fault_t (Don Dutile) [1754737] - [mm] introduce vmf_insert_pfn_prot() (Don Dutile) [1754737] - [mm] convert __vm_insert_mixed() to vm_fault_t (Don Dutile) [1754737] - [kernel] mm: remove vm_insert_mixed() (Don Dutile) [1754737] - [fs] cramfs: convert to use vmf_insert_mixed (Don Dutile) [1754737] - [scsi] cxlflash: Change return type for fault handler (Don Dutile) [1754737] - [misc] ocxl: Change return type for fault handler (Don Dutile) [1754737] - [kernel] fs/iomap.c: change return type to vm_fault_t (Don Dutile) [1754737] - [mm] swap.c: remove duplicated include (Don Dutile) [1754737] - [kernel] perf/aux: Fix the aux_output group inheritance fix (Michael Petlan) [1743210] - [kernel] perf/core: Fix inheritance of aux_output groups (Michael Petlan) [1743210] - [kernel] perf/aux: Disallow aux_output for kernel events (Michael Petlan) [1743210] - [kernel] perf/core: Reattach a misplaced comment (Michael Petlan) [1743210] - [kernel] perf/aux: Fix AUX output stopping (Michael Petlan) [1743210] - [tools] perf vendor events s390: Add JSON transaction for machine type 8561 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Fix use of TRUE with SQLite (Michael Petlan) [1743210] - [tools] objtool: Fix build by linking against tools/lib/ctype.o sources (Michael Petlan) [1743210] - [tools] perf list: Allow plurals for metric, metricgroup (Michael Petlan) [1743210] - [tools] perf vendor events: Minor fixes to the README (Michael Petlan) [1743210] - [tools] perf vendor events amd: Remove redundant '[' (Michael Petlan) [1743210] - [tools] perf vendor events amd: Add L3 cache events for Family 17h (Michael Petlan) [1743210] - [tools] tools include uapi: Update copy of files related to new fspick, fsmount, fsconfig, fsopen, move_mount and open_tree syscalls (Michael Petlan) [1743210] - [tools] perf pmu-events: Fix missing "cpu_clk_unhalted.core" event (Michael Petlan) [1743210] - [tools] perf annotate: Fix s390 gap between kernel end and module start (Michael Petlan) [1743210] - [tools] perf record: Fix module size on s390 (Michael Petlan) [1743210] - [tools] perf tools: Fix include paths in ui directory (Michael Petlan) [1743210] - [tools] perf tools: Fix a typo in a variable name in the Documentation Makefile (Michael Petlan) [1743210] - [tools] perf cpumap: Fix writing to illegal memory in handling cpumap mask (Michael Petlan) [1743210] - [tools] perf ftrace: Fix failure to set cpumask when only one cpu is present (Michael Petlan) [1743210] - [tools] perf db-export: Fix thread__exec_comm() (Michael Petlan) [1743210] - [tools] perf annotate: Fix printing of unaugmented disassembled instructions from BPF (Michael Petlan) [1743210] - [tools] perf bench numa: Fix cpu0 binding (Michael Petlan) [1743210] - [tools] perf tools: Fix perf.data documentation units for memory size (Michael Petlan) [1743210] - [tools] perf header: Fix use of unitialized value warning (Michael Petlan) [1743210] - [tools] perf header: Fix divide by zero error if f_header.attr_size==0 (Michael Petlan) [1743210] - [tools] tools perf beauty: Fix usbdevfs_ioctl table generator to handle _IOC() (Michael Petlan) [1743210] - [tools] perf build: Do not use -Wshadow on gcc < 4.8 (Michael Petlan) [1743210] - [tools] perf probe: Avoid calling freeing routine multiple times for same pointer (Michael Petlan) [1743210] - [tools] perf probe: Set pev->nargs to zero after freeing pev->args entries (Michael Petlan) [1743210] - [tools] perf session: Fix loading of compressed data split across adjacent records (Michael Petlan) [1743210] - [tools] perf stat: Always separate stalled cycles per insn (Michael Petlan) [1743210] - [tools] perf stat: Fix segfault for event group in repeat mode (Michael Petlan) [1743210] - [tools] perf tools: Fix proper buffer size for feature processing (Michael Petlan) [1743210] - [tools] perf script: Fix off by one in brstackinsn IPC computation (Michael Petlan) [1743210] - [tools] perf script: Improve man page description of metrics (Michael Petlan) [1743210] - [tools] perf script: Fix --max-blocks man page description (Michael Petlan) [1743210] - [tools] perf vendor events s390: Add JSON files for machine type 8561 (Michael Petlan) [1743210] - [tools] perf cs-etm: Return errcode in cs_etm__process_auxtrace_info() (Michael Petlan) [1743210] - [tools] perf cs-etm: Remove errnoeous ERR_PTR() usage in cs_etm__process_auxtrace_info (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export switch events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export switch events (Michael Petlan) [1743210] - [tools] perf db-export: Export switch events (Michael Petlan) [1743210] - [tools] perf db-export: Factor out db_export__threads() (Michael Petlan) [1743210] - [tools] perf script: Add scripting operation process_switch() (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Use new 'has_calls' column (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Remove redundant semi-colons (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Add has_calls column to comms table (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Add has_calls column to comms table (Michael Petlan) [1743210] - [tools] perf db-export: Also export thread's current comm (Michael Petlan) [1743210] - [tools] perf db-export: Factor out db_export__comm() (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export comm details (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export comm details (Michael Petlan) [1743210] - [tools] perf db-export: Export comm details (Michael Petlan) [1743210] - [tools] perf db-export: Fix a white space issue in db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Move export__comm_thread into db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Export comm before exporting thread (Michael Petlan) [1743210] - [tools] perf db-export: Export main_thread in db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Pass main_thread to db_export__thread() (Michael Petlan) [1743210] - [tools] perf db-export: Rename db_export__comm() to db_export__exec_comm() (Michael Petlan) [1743210] - [tools] perf db-export: Get rid of db_export__deferred() (Michael Petlan) [1743210] - [tools] perf trace: Auto bump rlimit(MEMLOCK) for eBPF maps sake (Michael Petlan) [1743210] - [tools] perf test: Auto bump rlimit(MEMLOCK) for BPF test sake (Michael Petlan) [1743210] - [tools] perf tools: Introduce rlimit__bump_memlock() helper (Michael Petlan) [1743210] - [tools] perf-probe: Add user memory access attribute support (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf intel-bts: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf script: Assume native_arch for pipe mode (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Fix DROP VIEW power_events_view (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Fix DROP VIEW power_events_view (Michael Petlan) [1743210] - [tools] perf hists browser: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf cs-etm: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf parse-events: remove unused variable: error (Michael Petlan) [1743210] - [tools] perf parse-events: Remove unused variable 'i' (Michael Petlan) [1743210] - [tools] perf metricgroup: Add missing list_del_init() when flushing egroups list (Michael Petlan) [1743210] - [tools] perf tools: Use list_del_init() more thorougly (Michael Petlan) [1743210] - [tools] perf tools: Use zfree() where applicable (Michael Petlan) [1743210] - [tools] tools lib: Adopt zalloc()/zfree() from tools/perf (Michael Petlan) [1743210] - [tools] perf tools: Move get_current_dir_name() cond prototype out of util.h (Michael Petlan) [1743210] - [tools] perf namespaces: Move the conditional setns() prototype to namespaces.h (Michael Petlan) [1743210] - [tools] perf tools: Add missing headers, mostly stdlib.h (Michael Petlan) [1743210] - [tools] perf evsel: perf_evsel__name(NULL) is valid, no need to check evsel (Michael Petlan) [1743210] - [tools] perf session: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf inject: The tool->read() call may pass a NULL evsel, handle it (Michael Petlan) [1743210] - [tools] perf map: Fix potential NULL pointer dereference found by smatch tool (Michael Petlan) [1743210] - [tools] perf trace: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf annotate: Fix dereferencing freed memory found by the smatch tool (Michael Petlan) [1743210] - [tools] perf top: Fix potential NULL pointer dereference detected by the smatch tool (Michael Petlan) [1743210] - [tools] perf stat: Fix use-after-freed pointer detected by the smatch tool (Michael Petlan) [1743210] - [tools] perf test mmap-thread-lookup: Initialize variable to suppress memory sanitizer warning (Michael Petlan) [1743210] - [tools] perf script: Allow specifying the files to process guest samples (Michael Petlan) [1743210] - [tools] perf tools metric: Don't include duration_time in group (Michael Petlan) [1743210] - [tools] perf list: avoid extra : for --raw metrics (Michael Petlan) [1743210] - [tools] perf vendor events intel: Metric fixes for SKX/CLX (Michael Petlan) [1743210] - [tools] perf tools: Fix typos / broken sentences (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 L3C PMU aliasing (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 HHA PMU aliasing (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 DDRC PMU aliasing (Michael Petlan) [1743210] - [tools] perf pmu: Support more complex PMU event aliasing (Michael Petlan) [1743210] - [tools] perf diff: Documentation -c cycles option (Michael Petlan) [1743210] - [tools] perf diff: Print the basic block cycles diff (Michael Petlan) [1743210] - [tools] perf diff: Link same basic blocks among different data (Michael Petlan) [1743210] - [tools] perf diff: Use hists to manage basic blocks per symbol (Michael Petlan) [1743210] - [tools] perf diff: Check if all data files with branch stacks (Michael Petlan) [1743210] - [tools] perf hists: Add block_info in hist_entry (Michael Petlan) [1743210] - [tools] perf symbol: Create block_info structure (Michael Petlan) [1743210] - [tools] perf jevents: Use nonlocal include statements in pmu-events.c (Michael Petlan) [1743210] - [tools] perf annotate: Add csky support (Michael Petlan) [1743210] - [tools] perf stat: Fix metrics with --no-merge (Michael Petlan) [1743210] - [tools] perf stat: Fix group lookup for metric group (Michael Petlan) [1743210] - [tools] perf stat: Don't merge events in the same PMU (Michael Petlan) [1743210] - [tools] perf stat: Make metric event lookup more robust (Michael Petlan) [1743210] - [tools] tools lib: Move argv_{split, free} from tools/perf/util/ (Michael Petlan) [1743210] - [tools] perf tools: Drop strxfrchar(), use strreplace() equivalent from kernel (Michael Petlan) [1743210] - [tools] tools lib: Adopt strreplace() from the kernel (Michael Petlan) [1743210] - [tools] perf tools: Ditch rtrim(), use strim() from tools/lib (Michael Petlan) [1743210] - [tools] perf tools: Remove trim() implementation, use tools/lib's strim() (Michael Petlan) [1743210] - [tools] tools lib: Adopt strim() from the kernel (Michael Petlan) [1743210] - [tools] perf tools: Ditch rtrim(), use skip_spaces() to get closer to the kernel (Michael Petlan) [1743210] - [tools] perf report: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf metricgroup: Use strsep() (Michael Petlan) [1743210] - [tools] perf strfilter: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf probe: Use skip_spaces() for argv handling (Michael Petlan) [1743210] - [tools] perf time-utils: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf header: Use skip_spaces() in __write_cpudesc() (Michael Petlan) [1743210] - [tools] perf stat: Use recently introduced skip_spaces() (Michael Petlan) [1743210] - [tools] tools lib: Adopt skip_spaces() from the kernel sources (Michael Petlan) [1743210] - [tools] perf tools: Use linux/ctype.h in more places (Michael Petlan) [1743210] - [tools] tools perf: Move from sane_ctype.h obtained from git to the Linux's original (Michael Petlan) [1743210] - [tools] perf tools: Add missing util.h to pick up 'page_size' variable (Michael Petlan) [1743210] - [tools] perf tools: Remove old baggage that is util/include/linux/ctype.h (Michael Petlan) [1743210] - [tools] perf symbols: We need util.h in symbol-elf.c for zfree() (Michael Petlan) [1743210] - [tools] perf kallsyms: Adopt hex2u64 from tools/perf/util/util.h (Michael Petlan) [1743210] - [tools] tools x86 machine: Add missing util.h to pick up 'page_size' (Michael Petlan) [1743210] - [tools] perf string: Move 'dots' and 'graph_dotted_line' out of sane_ctype.h (Michael Petlan) [1743210] - [tools] perf ctype: Remove now unused 'spaces' variable (Michael Petlan) [1743210] - [tools] perf ui stdio: No need to use 'spaces' to left align (Michael Petlan) [1743210] - [tools] perf ctype: Remove unused 'graph_line' variable (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export Intel PT power and ptwrite events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export Intel PT power and ptwrite events (Michael Petlan) [1743210] - [tools] perf db-export: Export synth events (Michael Petlan) [1743210] - [tools] perf intel-pt: Synthesize CBR events when last seen value changes (Michael Petlan) [1743210] - [tools] perf intel-pt: Add CBR value to decoder state (Michael Petlan) [1743210] - [tools] perf intel-pt: Cater for CBR change in PSB+ (Michael Petlan) [1743210] - [tools] perf intel-pt: Decoder to output CBR changes immediately (Michael Petlan) [1743210] - [tools] perf thread-stack: Eliminate code duplicating thread_stack__pop_ks() (Michael Petlan) [1743210] - [tools] perf thread-stack: Fix thread stack return from kernel for kernel-only case (Michael Petlan) [1743210] - [tools] perf tools: Fix cache.h include directive (Michael Petlan) [1743210] - [tools] tools build: Fix the zstd test in the test-all.c common case feature test (Michael Petlan) [1743210] - [tools] perf build: Handle slang being in /usr/include and in /usr/include/slang/ (Michael Petlan) [1743210] - [tools] tools build: Add test to check if slang.h is in /usr/include/slang/ (Michael Petlan) [1743210] - [tools] perf tools: Don't hardcode host include path for libslang (Michael Petlan) [1743210] - [tools] perf evsel: Make perf_evsel__name() accept a NULL argument (Michael Petlan) [1743210] - [tools] perf trace: Fixup pointer arithmetic when consuming augmented syscall args (Michael Petlan) [1743210] - [tools] perf pmu: Fix uncore PMU alias list for ARM64 (Michael Petlan) [1743210] - [tools] perf tests: Add missing SPDX headers (Michael Petlan) [1743210] - [tools] tools build feature tests: Add missing SPDX headers (Michael Petlan) [1743210] - [tools] perf trace: Streamline validation of select syscall names list (Michael Petlan) [1743210] - [tools] perf trace: Fix exclusion of not available syscall names from selector list (Michael Petlan) [1743210] - [tools] perf intel-pt: Add callchain to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add memory information to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add LBR information to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add XMM registers to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add gp registers to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Synthesize PEBS sample basic information (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out common sample preparation for re-use (Michael Petlan) [1743210] - [tools] perf intel-pt: Prepare to synthesize PEBS samples (Michael Petlan) [1743210] - [tools] perf intel-pt: Add decoder support for PEBS via PT (Michael Petlan) [1743210] - [tools] perf intel-pt: Add Intel PT packet decoder test (Michael Petlan) [1743210] - [tools] perf intel-pt: Add new packets for PEBS via PT (Michael Petlan) [1743210] - [tools] perf tests arm64: Compile tests unconditionally (Michael Petlan) [1743210] - [tools] perf trace: Skip unknown syscalls when expanding strace like syscall groups (Michael Petlan) [1743210] - [tools] perf report: Support s390 diag event display on x86 (Michael Petlan) [1743210] - [tools] perf report: Fix OOM error in TUI mode on s390 (Michael Petlan) [1743210] - [tools] perf test 6: Fix missing kvm module load for s390 (Michael Petlan) [1743210] - [tools] perf time-utils: Add support for multiple explicit time intervals (Michael Petlan) [1743210] - [tools] perf tests: Add a test for time-utils (Michael Petlan) [1743210] - [tools] perf time-utils: Make perf_time__parse_for_ranges() more logical (Michael Petlan) [1743210] - [tools] perf time-utils: Simplify perf_time__parse_for_ranges() error paths slightly (Michael Petlan) [1743210] - [tools] perf time-utils: Fix --time documentation (Michael Petlan) [1743210] - [tools] perf time-utils: Prevent percentage time range overlap (Michael Petlan) [1743210] - [tools] perf time-utils: Factor out set_percent_time() (Michael Petlan) [1743210] - [tools] perf time-utils: Treat time ranges consistently (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for efficient time interval filtering (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for lookahead (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_get_buffer() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add intel_pt_fast_forward() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add reposition parameter to intel_pt_get_data() (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_reposition() (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_8b_tsc() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add lookahead callback (Michael Petlan) [1743210] - [tools] perf report: Set perf time interval in itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf script: Set perf time interval in itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf auxtrace: Add perf time interval to itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf config: Update default value for llvm.clang-bpf-cmd-template (Michael Petlan) [1743210] - [tools] perf cs-etm: Properly set the value of 'old' and 'head' in snapshot mode (Michael Petlan) [1743210] - [tools] perf data: Fix perf.data documentation for HEADER_CPU_TOPOLOGY (Michael Petlan) [1743210] - [tools] perf tools: Apply new CPU topology sysfs attributes (Michael Petlan) [1743210] - [tools] perf header: Rename "sibling cores" to "sibling sockets" (Michael Petlan) [1743210] - [tools] perf stat: Support per-die aggregation (Michael Petlan) [1743210] - [tools] perf header: Add die information in CPU topology (Michael Petlan) [1743210] - [tools] perf cpumap: Retrieve die id information (Michael Petlan) [1743210] - [tools] perf evsel: Remove superfluous nthreads system_wide setup in alloc_fd() (Michael Petlan) [1743210] - [tools] perf record: Add support to collect callchains from kernel or user space only (Michael Petlan) [1743210] - [tools] perf config: Bail out when a handler returns failure for a key-value pair (Michael Petlan) [1743210] - [tools] perf trace: Exit when failing to build eBPF program (Michael Petlan) [1743210] - [tools] perf trace: Associate more argument names with the filename beautifier (Michael Petlan) [1743210] - [tools] perf trace: Consume the augmented_raw_syscalls payload (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Move reading filename to the loop (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Change helper to consider just the augmented_filename part (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Move the probe_read_str to a separate function (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Tell which args are filenames and how many bytes to copy (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Select find text when find bar is activated (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to Call Tree (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to Call Graph Graph (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add CallGraphModelParams (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to the Branch reports (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export IPC information (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export IPC information (Michael Petlan) [1743210] - [tools] perf db-export: Export IPC information (Michael Petlan) [1743210] - [tools] perf db-export: Add brief documentation (Michael Petlan) [1743210] - [tools] perf thread-stack: Accumulate IPC information (Michael Petlan) [1743210] - [tools] perf intel-pt: Document IPC usage (Michael Petlan) [1743210] - [tools] perf intel-pt: Accumulate cycle count from TSC/TMA/MTC packets (Michael Petlan) [1743210] - [tools] perf intel-pt: Re-factor TIP cases in intel_pt_walk_to_ip (Michael Petlan) [1743210] - [tools] perf intel-pt: Record when decoding PSB+ packets (Michael Petlan) [1743210] - [tools] perf script: Add output of IPC ratio (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for samples to contain IPC ratio (Michael Petlan) [1743210] - [tools] perf tools: Add IPC information to perf_sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Accumulate cycle count from CYC packets (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_update_sample_time (Michael Petlan) [1743210] - [tools] perf record: Allow mixing --user-regs with --call-graph=dwarf (Michael Petlan) [1743210] - [tools] perf symbols: Remove unused variable 'err' (Michael Petlan) [1743210] - [tools] perf data: document directory format header: HEADER_DIR_FORMAT (Michael Petlan) [1743210] - [tools] perf data: document clockid header: HEADER_CLOCKID (Michael Petlan) [1743210] - [tools] perf data: document memory topology header: HEADER_MEM_TOPOLOGY (Michael Petlan) [1743210] - [tools] perf data: Add description of header HEADER_BPF_PROG_INFO and HEADER_BPF_BTF (Michael Petlan) [1743210] - [tools] perf intel-pt: Rationalize intel_pt_sync_switch()'s use of next_tid (Michael Petlan) [1743210] - [tools] perf intel-pt: Improve sync_switch by processing PERF_RECORD_SWITCH* in events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Use argparse module for argument parsing (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Change python2 to python (Michael Petlan) [1743210] - [tools] perf top: Lower message level for failure on synthesizing events for pre-existing BPF programs (Michael Petlan) [1743210] - [tools] perf machine: Return NULL instead of null-terminating /proc/version array (Michael Petlan) [1743210] - [tools] perf version: Append 12 git SHA chars to the version string (Michael Petlan) [1743210] - [tools] perf script: Remove superfluous BPF event titles (Michael Petlan) [1743210] - [tools] perf script: Add --show-bpf-events to show eBPF related events (Michael Petlan) [1743210] - [tools] perf tests: Add map_groups__merge_in test (Michael Petlan) [1743210] - [tools] perf script: Pad DSO name for --call-trace (Michael Petlan) [1743210] - [tools] perf dso: Add BPF DSO read and size hooks (Michael Petlan) [1743210] - [tools] perf dso: Simplify dso_cache__read function (Michael Petlan) [1743210] - [tools] perf dso: Separate generic code in dso_cache__read (Michael Petlan) [1743210] - [tools] perf dso: Separate generic code in dso__data_file_size() (Michael Petlan) [1743210] - [tools] perf tools: Remove const from thread read accessors (Michael Petlan) [1743210] - [tools] perf top: Add --namespaces option (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for sync_file_range's 'flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fsmount' arguments (Michael Petlan) [1743210] - [tools] perf trace: Introduce syscall_arg__scnprintf_strarray_flags (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fsmount's 'attr_flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fsconfig' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fsconfig's 'cmd' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fspick' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fspick's 'flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'move_mount' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for 'move_mount' flags argument (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Fix up comment (Michael Petlan) [1743210] - [tools] perf tools: Preserve eBPF maps when loading kcore (Michael Petlan) [1743210] - [tools] perf machine: Keep zero in pgoff BPF map (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix itrace defaults for perf script intel-pt documentation (Michael Petlan) [1743210] - [tools] perf auxtrace: Fix itrace defaults for perf script (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix itrace defaults for perf script (Michael Petlan) [1743210] - [tools] perf-with-kcore.sh: Always allow fix_buildid_cache_permissions (Michael Petlan) [1743210] - [tools] tools build: Check if gettid() is available before providing helper (Michael Petlan) [1743210] - [tools] tools build feature: Check if get_current_dir_name() is available (Michael Petlan) [1743210] - [tools] perf jvmti: Address gcc string overflow warning for strncpy() (Michael Petlan) [1743210] - [tools] perf python: Remove -fstack-protector-strong if clang doesn't have it (Michael Petlan) [1743210] - [tools] perf annotate tui browser: Do not use member from variable within its own initialization (Michael Petlan) [1743210] - [tools] perf thread: Allow references to thread objects after machine__exit() (Michael Petlan) [1743210] - [fs] sysfs: Fix internal_create_group() for named group updates (Michael Petlan) [1743210] - [x86] perf/x86/intel: Support PEBS output to PT (Michael Petlan) [1743210] - [kernel] perf: Allow normal events to output AUX data (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h) (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise RIP validity (Michael Petlan) [1743210] - [kernel] perf/hw_breakpoint: Fix arch_hw_breakpoint use-before-initialization (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Fix sample bias for dispatched micro-ops (Michael Petlan) [1743210] - [x86] perf/x86/intel: Restrict period on Nehalem (Michael Petlan) [1743210] - [x86] perf/x86: Fix typo in comment (Michael Petlan) [1743210] - [kernel] perf/core: Fix creating kernel counters for PMUs that override event->cpu (Michael Petlan) [1743210] - [x86] perf/x86: Apply more accurate check on hypervisor platform (Michael Petlan) [1743210] - [x86] perf/x86/intel: Fix invalid Bit 13 for Icelake MSR_OFFCORE_RSP_x register (Michael Petlan) [1743210] - [x86] perf/x86/intel: Fix SLOTS PEBS event constraint (Michael Petlan) [1743210] - [x86] perf/x86/intel: Mark expected switch fall-throughs (Michael Petlan) [1743210] - [kernel] perf_event_get(): don't bother with fget_raw() (Michael Petlan) [1743210] - [kernel] perf/core: Fix exclusive events' grouping (Michael Petlan) [1743210] - [x86] perf/x86/amd/uncore: Set the thread mask for F17h L3 PMCs (Michael Petlan) [1743210] - [perf] x86/amd/uncore: Do not set 'ThreadMask' and 'SliceMask' for non-L3 PMCs (Michael Petlan) [1743210] - [kernel] perf/core: Fix race between close() and fork() (Michael Petlan) [1743210] - [perf] cgroups: Don't rotate events for cgroups unnecessarily (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get quirk state from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get attributes from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get MSR values from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get rapl_cntr_mask from new probe framework (Michael Petlan) [1743210] - [x86] intel: Aggregate big core client naming (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Use new MSR detection interface (Michael Petlan) [1743210] - [x86] perf/x86/cstate: Use new probe function (Michael Petlan) [1743210] - [x86] perf/x86/msr: Use new probe function (Michael Petlan) [1743210] - [x86] perf/x86: Add MSR probe interface (Michael Petlan) [1743210] - [x86] perf/x86/intel: Disable check_msr for real HW (Michael Petlan) [1743210] - [x86] perf/x86/intel: Use ->is_visible callback for default group (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add IMC uncore support for Snow Ridge (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Clean up client IMC (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Support MMIO type uncore blocks (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Factor out box ref/unref functions (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add uncore support for Snow Ridge server (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Handle invalid event coding for free-running counter (Michael Petlan) [1743210] - [x86] perf/x86/intel: Add more Icelake CPUIDs (Michael Petlan) [1743210] - [x86] perf/x86/intel: Add Icelake desktop CPUID (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for default attributes (Michael Petlan) [1743210] - [x86] perf/x86/intel: Use update attributes for skylake format (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for extra format (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for caps (Michael Petlan) [1743210] - [x86] perf/x86: Add is_visible attribute_group callback for base events (Michael Petlan) [1743210] - [x86] perf/x86: Use the new pmu::update_attrs attribute group (Michael Petlan) [1743210] - [x86] perf/x86: Get rid of x86_pmu::event_attrs (Michael Petlan) [1743210] - [x86] perf/x86/regs: Check reserved bits (Michael Petlan) [1743210] - [fs] sysfs: Add sysfs_update_groups function (Michael Petlan) [1743210] - [kernel] perf/core: Add attr_groups_update into struct pmu (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add new IMC PCI IDs for KabyLake, AmberLake and WhiskeyLake CPUs (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add tabs to Uncore IMC PCI IDs (Michael Petlan) [1743210] - [kernel] perf/core: Allow non-privileged uprobe for user processes (Michael Petlan) [1743210] - [x86] perf/x86: Add Intel Ice Lake NNPI uncore support (Michael Petlan) [1743210] - [perf] arm_pmu: acpi: spe: Add initial MADT/SPE probing (Michael Petlan) [1743210] - [netdrv] mwifiex: fix possible heap overflow in mwifiex_process_country_ie() (Jarod Wilson) [1776210] {CVE-2019-14895} - [kernel] crash_core: Make S390 share the same crashkernel=auto reservation policy as X86_64 (Baoquan He) [1780432] - [s390] kasan: avoid report in get_wchan (Philipp Rudo) [1780112 1780111] - [s390] process: avoid potential reading of freed stack (Philipp Rudo) [1780112] - [fs] cifs: don't use 'pre:' for MODULE_SOFTDEP (Leif Sahlberg) [1767094] - [hwmon] Do not output deprecated warning for hwmon_device_register() (Prarit Bhargava) [1778295] - [scsi] lpfc: size cpu map by last cpu id set (Dick Kennedy) [1778912] - [scsi] lpfc: use hdwq assigned cpu for allocation (Dick Kennedy) [1778908] - [scsi] be2iscsi: Include null char in SET_HOST_DATA (Maurizio Lombardi) [1776358] - [netdrv] vmxnet3: turn off lro when rxcsum is disabled (Neil Horman) [1776056] - [mmc] sdhci-pci: Add another Id for Intel CML (Alexander Beregalov) [1766718] - [x86] kvm: untaint kernel for tech-preview when using nested VMX (Paolo Bonzini) [1726756] - [powerpc] kvm: ppc: book3s hv: xive: Fix potential page leak on error path (Laurent Vivier) [1760202] - [powerpc] kvm: ppc: book3s hv: xive: Free previous EQ page when setting up a new one (Laurent Vivier) [1760202] - [virt] kvm: arm/arm64: vgic: Don't rely on the wrong pending table (Auger Eric) [1777059] - [x86] kvm: x86: remove set but not used variable 'called' (Nitesh Narayan Lal) [1773677] - [x86] kvm: x86: Zero the IOAPIC scan request dest vCPUs bitmap (Nitesh Narayan Lal) [1773677] - [x86] kvm: x86: deliver KVM IOAPIC scan request to target vCPUs (Nitesh Narayan Lal) [1773677] - [kernel] kvm: remember position in kvm->vcpus array (Nitesh Narayan Lal) [1773677] - [kernel] watchdog: Reduce message verbosity (Vitaly Kuznetsov) [1774915]- [fs] binfmt_elf: Do not move brk for INTERP-less ET_EXEC (Waiman Long) [1749633] - [fs] binfmt_elf: move brk out of mmap when doing direct loader exec (Waiman Long) [1749633] - [gpu] drm/i915/cmdparser: Fix jump whitelist clearing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/gen8+: Add RC6 CTX corruption WA (Dave Airlie) [1756805] {CVE-2019-0154} - [gpu] drm/i915: Lower RM timeout to avoid DSI hard hangs (Dave Airlie) [1756805] {CVE-2019-0154} - [gpu] drm/i915/cmdparser: Ignore Length operands during command matching (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/cmdparser: Add support for backward jumps (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/cmdparser: Use explicit goto for error paths (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Add gen9 BCS cmdparsing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Allow parsing of unsized batches (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Support ro ppgtt mapped cmdparser shadow buffers (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Add support for mandatory cmdparsing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Remove Master tables from cmdparser (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Disable Secure Batches for gen6+ (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Rename gen7 cmdparser tables (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] [drm] radeon: fix bad DMA from INTERRUPT_CNTL2 (Sam Bobroff) [1293697] - [netdrv] mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame() (Jarod Wilson) [1776162] {CVE-2019-14901} - [netdrv] mlx4_en: Fix wrong limitation for number of TX rings (Mohammad Heib) [1776822] - [netdrv] mlx4_en: fix mlx4 ethtool -N insertion (Mohammad Heib) [1776822] - [netdrv] mlx4_core: fix wrong comment about the reason of subtract one from the max_cqes (Mohammad Heib) [1776822] - [netdrv] ibmvnic: Serialize device queries (Steve Best) [1778037] - [netdrv] ibmvnic: Bound waits for device queries (Steve Best) [1778037] - [netdrv] ibmvnic: Terminate waiting device threads after loss of service (Steve Best) [1778037] - [netdrv] ibmvnic: Fix completion structure initialization (Steve Best) [1778037] - [netdrv] ibmvnic: Ignore H_FUNCTION return from H_EOI to tolerate XIVE mode (Steve Best) [1778037] - [netdrv] revert "net/ibmvnic: Fix EOI when running in XIVE mode" (Steve Best) [1778037] - [netdrv] cnic: Set fp_hsi_ver as part of CLIENT_SETUP ramrod (Manish Chopra) [1770797] - [netdrv] bnx2x: Fix PF-VF communication over multi-cos queues (Manish Chopra) [1770797] - [netdrv] bnx2x: Enable Multi-Cos feature (Manish Chopra) [1770797] - [netdrv] bnx2x: Utilize FW 7.13.15.0 (Manish Chopra) [1770797] - [fs] seq_file: fix problem when seeking mid-record (Bill O'Donnell) [1753822] - [documentation] fs/seq_file.c: simplify seq_file iteration code and interface (Bill O'Donnell) [1753822] - [scripts] kbuild: replace BASH-specific ${@:2} with shift and ${@} (Jiri Olsa) [1739493] - [scripts] btf: do not use CONFIG_OUTPUT_FORMAT (Jiri Olsa) [1739493] - [kernel] btf: fix return value check in btf_vmlinux_init() (Jiri Olsa) [1739493] - [kernel] btf: rename /sys/kernel/btf/kernel into /sys/kernel/btf/vmlinux (Jiri Olsa) [1739493] - [scripts] btf: expose BTF info through sysfs (Jiri Olsa) [1739493] - [netdrv] qede: fix NULL pointer deref in __qede_remove() (Manish Chopra) [1769203] - [gpu] cleanup: Remove .rej files (Prarit Bhargava) [1779738] - [lib] string: Add strscpy_pad() function (Josef Oskera) [1764588] - [char] virtio_console: allocate inbufs in add_port() only if it is needed (Pankaj Gupta) [1612795] - [fs] xfs: add kmem_alloc_io() (Bill O'Donnell) [1583556] - [fs] xfs: make mem_to_page available outside of xfs_buf.c (Bill O'Donnell) [1583556] - [fs] xfs: get allocation alignment from the buftarg (Bill O'Donnell) [1583556] - [fs] xfs: add kmem_alloc_io() (Bill O'Donnell) [1583556] - [fs] cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs (Leif Sahlberg) [1765979] - [fs] cifs: avoid using MID 0xFFFF (Leif Sahlberg) [1765979] - [fs] cifs: Fix retry mid list corruption on reconnects (Leif Sahlberg) [1765979] - [fs] nfsd: allow fh_want_write to be called twice ("J. Bruce Fields") [1699222] - [net] revert "sunrpc: Fix up task signalling" (Dave Wysochanski) [1776067] - [s390] kasan: support memcpy_real with TRACE_IRQFLAGS (Philipp Rudo) [1777468] - [s390] kasan: add kdump support (Philipp Rudo) [1777468] - [s390] idle: fix cpu idle time calculation (Philipp Rudo) [1777361] - [s390] kaslr: add support for R_390_GLOB_DAT relocation type (Philipp Rudo) [1777467] - [x86] jump_label: Make tp_vec_nr static (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Batch jump label updates (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Batch updates if arch supports it (Daniel Bristot de Oliveira) [1731860] - [x86] alternative: Batch of patch operations (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Sort entries of the same key by the code (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Add a __jump_label_set_jump_code() helper (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Don't warn on __exit jump entries (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Add a jump_label_can_update() helper (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Remove the return value of text_poke_*() (Daniel Bristot de Oliveira) [1731860] - [x86] jump-label: Remove support for custom text poker (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Use text_poke_early() during early init (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Add text_poke_kgdb() to not assert the lock when debugging (Daniel Bristot de Oliveira) [1731860] - [x86] kprobes: Prohibit probing on functions before kprobe_int3_handler() (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Fix NULL dereference bug in __jump_label_mod_update() (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Annotate entries that operate on __init code earlier (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Switch to jump_entry accessors (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Implement generic support for relative references (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Abstract jump_entry member accessors (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Lockdep-enforce text_mutex in text_poke*() (Daniel Bristot de Oliveira) [1731860] - [x86] revert "x86/paravirt: Set up the virt_spin_lock_key after static keys get initialized" (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Initialize static branching early (Vitaly Kuznetsov) [1777260] - [x86] speculation: Fix redundant MDS mitigation message (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation: Fix incorrect MDS/TAA mitigation status (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Fix printing of TAA_MSG_SMT on IBRS_ALL CPUs (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] tsx: Add config options to set tsx=on|off|auto (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [documentation] x86/speculation/taa: Add documentation for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] tsx: Add "auto" option to the tsx= cmdline parameter (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Add sysfs reporting for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Add mitigation for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] cpu: Add a "tsx=" cmdline option with TSX disabled by default (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] cpu: Add a helper function x86_read_arch_cap_msr() (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] msr: Add the IA32_TSX_CTRL MSR (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [powerpc] xive: Prevent page fault issues in the machine crash handler (Diego Domingos) [1756116] - [tools] Fix memcpy_mcsafe_64.S link on selftests (Desnes Augusto Nunes do Rosario) [1775570]- [powerpc] perf: Fix loop exit condition in nest_imc_event_init (Steve Best) [1778609] - [net] netfilter: nf_tables: Add missing nft_tproxy Makefile line (Phil Sutter) [1762977]- [x86] kdump: Remove the backup region handling (Lianbo Jiang) [1730143] - [x86] kdump: Always reserve the low 1M when the crashkernel option is specified (Lianbo Jiang) [1730143] - [x86] crash: Add a forward declaration of struct kimage (Lianbo Jiang) [1730143] - [x86] kdump: Remove the unused crash_copy_backup_region() (Lianbo Jiang) [1730143] - [pci] p2pdma: Fix missing check for dma_virt_ops (Don Dutile) [1754734] - [pci] p2pdma: use the dev_pagemap internal refcount (Don Dutile) [1754734] - [pci] memremap: pass a struct dev_pagemap to ->kill and ->cleanup (Don Dutile) [1754734] - [pci] memremap: move dev_pagemap callbacks into a separate structure (Don Dutile) [1754734] - [pci] mm/devm_memremap_pages: fix final page put race (Don Dutile) [1754734] - [pci] p2pdma: track pgmap references per resource, not globally (Don Dutile) [1754734] - [pci] p2pdma: fix the gen_pool_add_virt() failure path (Don Dutile) [1754734] - [pci] mm, hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL (Don Dutile) [1754734] - [lib] genalloc.c: Add algorithm, align and zeroed family of DMA allocators (Don Dutile) [1754732] - [lib] genalloc.c: include vmalloc.h (Don Dutile) [1754732] - [lib] genalloc.c: use vzalloc_node() to allocate the bitmap (Don Dutile) [1754732] - [md] dm table: propagate BDI_CAP_STABLE_WRITES to fix sporadic checksum errors (Mike Snitzer) [1770210] - [fs] gfs2: fix race between gfs2_freeze_func and unmount (Abhijith Das) [1676972] - [fs] cifs: smbd: Retry on memory registration failure (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Indicate to retry on transport sending failure (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Return EINTR when interrupted (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Don't destroy transport on RDMA disconnect (Leif Sahlberg) [1771772] - [lib] crc-t10dif: crc_t10dif_mutex can be static (Vladis Dronov) [1769462] - [lib] crc-t10dif: Allow current transform to be inspected in sysfs (Vladis Dronov) [1769462] - [lib] crc-t10dif: Pick better transform if one becomes available (Vladis Dronov) [1769462] - [crypto] api - Introduce notifier for new crypto algorithms (Vladis Dronov) [1769462] - [netdrv] e1000e: Drop unnecessary __E1000_DOWN bit twiddling (Ken Cox) [1748256] - [netdrv] e1000e: Use rtnl_lock to prevent race conditions between net and pci/pm (Ken Cox) [1748256]- [powerpc] pseries: safely roll back failed DLPAR cpu add (Steve Best) [1772341] - [powerpc] pseries: address checkpatch warnings in dlpar_offline_cpu (Steve Best) [1772341] - [scsi] storvsc: setup 1:1 mapping between hardware queue and CPU queue (Cathy Avery) [1771503] - [scsi] storvsc: Add ability to change scsi queue depth (Cathy Avery) [1771503] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 320 (Cathy Avery) [1771503] - [scsi] smartpqi: bump version (Don Brace) [1725045] - [scsi] smartpqi: Align driver syntax with oob (Don Brace) [1725045] - [scsi] smartpqi: remove unused manifest constants (Don Brace) [1725045] - [scsi] smartpqi: fix problem with unique ID for physical device (Don Brace) [1725045] - [scsi] smartpqi: correct syntax issue (Don Brace) [1725045] - [scsi] smartpqi: change TMF timeout from 60 to 30 seconds (Don Brace) [1725045] - [scsi] smartpqi: fix LUN reset when fw bkgnd thread is hung (Don Brace) [1725045] - [scsi] smartpqi: add inquiry timeouts (Don Brace) [1725045] - [scsi] smartpqi: fix call trace in device discovery (Don Brace) [1725045] - [scsi] smartpqi: fix controller lockup observed during force reboot (Don Brace) [1725045] - [scsi] smartpqi: clean up an indentation issue (Don Brace) [1725045] - [scsi] smartpqi: remove set but not used variable 'ctrl_info' (Don Brace) [1725045] - [scsi] smartpqi: clean up indentation of a statement (Don Brace) [1725045] - [scsi] smartpqi: bump version (Don Brace) [1725045] - [scsi] smartpqi: update copyright (Don Brace) [1725045] - [scsi] smartpqi: add new pci ids (Don Brace) [1725045] - [scsi] smartpqi: correct REGNEWD return status (Don Brace) [1725045] - [scsi] smartpqi: add gigabyte controller (Don Brace) [1725045] - [scsi] smartpqi: correct hang when deleting 32 lds (Don Brace) [1725045] - [scsi] smartpqi: add bay identifier (Don Brace) [1725045] - [scsi] smartpqi: add sysfs entries (Don Brace) [1725045] - [scsi] smartpqi: add module param to hide vsep (Don Brace) [1725045] - [scsi] smartpqi: add pci ids for fiberhome controller (Don Brace) [1725045] - [scsi] smartpqi: add module param for exposure order (Don Brace) [1725045] - [scsi] smartpqi: unlock on error in pqi_submit_raid_request_synchronous() (Don Brace) [1725045] - [scsi] smartpqi: Reporting unhandled SCSI errors (Don Brace) [1725045] - [scsi] mpt3sas: Bump mpt3sas driver version to 32.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix module parameter max_msix_vectors (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reject NVMe Encap cmnds to unsupported HBA (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use Component img header to get Package ver (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fail release cmnd if diag buffer is released (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add app owned flag support for diag buffer (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reuse diag buffer allocated at load time (Tomas Henzl) [1725737] - [scsi] mpt3sas: clear release bit when buffer reregistered (Tomas Henzl) [1725737] - [scsi] mpt3sas: Maintain owner of buffer through UniqueID (Tomas Henzl) [1725737] - [scsi] mpt3sas: Free diag buffer without any status check (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix clear pending bit in ioctl status (Tomas Henzl) [1725737] - [scsi] mpt3sas: Display message before releasing diag buffer (Tomas Henzl) [1725737] - [scsi] mpt3sas: Register trace buffer based on NVDATA settings (Tomas Henzl) [1725737] - [scsi] mpt3sas: Introduce module parameter to override queue depth (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update driver version to 31.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Run SAS DEVICE STATUS CHANGE EVENT from ISR (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reduce the performance drop (Tomas Henzl) [1725737] - [scsi] mpt3sas: Handle fault during HBA initialization (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add sysfs to know supported features (Tomas Henzl) [1725737] - [scsi] mpt3sas: Support MEMORY MOVE Tool box command (Tomas Henzl) [1725737] - [scsi] mpt3sas: Allow ioctls to blocked access status NVMe (Tomas Henzl) [1725737] - [scsi] mpt3sas: Enumerate SES of a managed PCIe switch (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update MPI headers to 2.6.8 spec (Tomas Henzl) [1725737] - [scsi] mpt3sas: Gracefully handle online firmware update (Tomas Henzl) [1725737] - [scsi] mpt3sas: memset request frame before reusing (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add support for PCIe Lane margin (Tomas Henzl) [1725737] - [scsi] mpt3sas: support target smid for [abort|query] task (Tomas Henzl) [1725737] - [scsi] mpt3sas: clean up a couple sizeof() uses (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix msix load balance on and off settings (Tomas Henzl) [1725737] - [scsi] mpt3sas: Determine smp affinity on per HBA basis (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use configured PCIe link speed, not max (Tomas Henzl) [1725737] - [scsi] mpt3sas: Remove CPU arch check to determine perf_mode (Tomas Henzl) [1725737] - [scsi] mpt3sas: use DEVICE_ATTR_{RO, RW} (Tomas Henzl) [1725737] - [scsi] mpt3sas: make driver options visible in sys (Tomas Henzl) [1725737] - [scsi] mpt3sas: Mark expected switch fall-through (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update driver version to 29.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Introduce perf_mode module parameter (Tomas Henzl) [1725737] - [scsi] mpt3sas: Enable interrupt coalescing on high iops (Tomas Henzl) [1725737] - [scsi] mpt3sas: Affinity high iops queues IRQs to local node (Tomas Henzl) [1725737] - [scsi] mpt3sas: save and use MSI-X index for posting RD (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use high iops queues under some circumstances (Tomas Henzl) [1725737] - [scsi] mpt3sas: change _base_get_msix_index prototype (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add flag high_iops_queues (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add Atomic RequestDescriptor support on Aero (Tomas Henzl) [1725737] - [scsi] mpt3sas: function pointers of request descriptor (Tomas Henzl) [1725737] - [scsi] mpt3sas_ctl: fix double-fetch bug in _ctl_ioctl_main() (Tomas Henzl) [1725737] - [md] revert "dm crypt: use WQ_HIGHPRI for the IO and crypt workqueues" (Mike Snitzer) [1775756] - [md] dm thin: wakeup worker only when deferred bios exist (Mike Snitzer) [1775756] - [md] dm raid: Remove unnecessary negation of a shift in raid10_format_to_md_layout (Mike Snitzer) [1775756] - [md] dm writecache: handle REQ_FUA (Mike Snitzer) [1775756] - [md] dm writecache: fix uninitialized variable warning (Mike Snitzer) [1775756] - [md] dm stripe: use struct_size() in kmalloc() (Mike Snitzer) [1775756] - [md] dm table: do not allow request-based DM to stack on partitions (Mike Snitzer) [1775756] - [md] dm cache: fix bugs when a GFP_NOWAIT allocation fails (Mike Snitzer) [1775756] - [md] dm writecache: skip writecache_wait for pmem mode (Mike Snitzer) [1775756] - [md] dm stats: use struct_size() helper (Mike Snitzer) [1775756] - [md] dm space map common: remove check for impossible sm_find_free() return value (Mike Snitzer) [1775756] - [md] dm raid1: use struct_size() with kzalloc() (Mike Snitzer) [1775756] - [md] dm writecache: optimize performance by sorting the blocks for writeback_all (Mike Snitzer) [1775756] - [md] dm writecache: add unlikely for getting two block with same LBA (Mike Snitzer) [1775756] - [md] dm writecache: remove unused member pointer in writeback_struct (Mike Snitzer) [1775756] - [md] dm: make dm_table_find_target return NULL (Mike Snitzer) [1775756] - [md] dm table: fix invalid memory accesses with too high sector number (Mike Snitzer) [1775756] - [md] dm space map metadata: fix missing store of apply_bops() return value (Mike Snitzer) [1775756] - [md] dm btree: fix order of block initialization in btree_split_beneath (Mike Snitzer) [1775756] - [md] dm raid: add missing cleanup in raid_ctr() (Mike Snitzer) [1775756] - [md] dm kcopyd: always complete failed jobs (Mike Snitzer) [1775756] - [md] dm crypt: remove obsolete comment about plumb IV (Mike Snitzer) [1775756] - [md] dm crypt: wipe private IV struct after key invalid flag is set (Mike Snitzer) [1775756] - [md] dm: update stale comment in end_clone_bio() (Mike Snitzer) [1775756] - [md] dm log writes: fix incorrect comment about the logged sequence example (Mike Snitzer) [1775756] - [md] dm log writes: use struct_size() to calculate size of pending_block (Mike Snitzer) [1775756] - [md] dm crypt: use struct_size() when allocating encryption context (Mike Snitzer) [1775756] - [md] dm thin metadata: check if in fail_io mode when setting needs_check (Mike Snitzer) [1775756] - [md] dm verity: use message limit for data block corruption message (Mike Snitzer) [1775756] - [md] dm log writes: make sure super sector log updates are written in order (Mike Snitzer) [1775756] - [md] dm: fix a couple brace coding style issues (Mike Snitzer) [1775756] - [md] dm crypt: print device name in integrity error message (Mike Snitzer) [1775756] - [documentation] dm integrity: update documentation (Mike Snitzer) [1775756] - [md] dm integrity: don't report unused options (Mike Snitzer) [1775756] - [md] dm integrity: don't check null pointer before kvfree and vfree (Mike Snitzer) [1775756] - [md] dm integrity: correctly calculate the size of metadata area (Mike Snitzer) [1775756] - [md] dm mpath: always free attached_handler_name in parse_path() (Mike Snitzer) [1775756] - [md] dm writecache: avoid unnecessary lookups in writecache_find_entry() (Mike Snitzer) [1775756] - [md] dm writecache: remove unused member page_offset in writeback_struct (Mike Snitzer) [1775756] - [md] dm delay: fix a crash when invalid device is specified (Mike Snitzer) [1775756] - [md] dm: only initialize md->dax_dev if CONFIG_DAX_DRIVER is enabled (Mike Snitzer) [1775756] - [md] dm writecache: add unlikely for returned value of rb_next_prev (Mike Snitzer) [1775756] - [md] dm writecache: remove needless dereferences in __writecache_writeback_pmem() (Mike Snitzer) [1775756] - [md] dm crypt: fix endianness annotations around org_sector_of_dmreq (Mike Snitzer) [1775756] - [md] dm integrity: fix deadlock with overlapping I_O (Mike Snitzer) [1775756] - [md] dm: disable DISCARD if the underlying storage no longer supports it (Mike Snitzer) [1775756] - [md] dm: revert 8f50e358153d ("dm: limit the max bio size as BIO_MAX_PAGES * PAGE_SIZE") (Mike Snitzer) [1775756] - [md] dm integrity: make dm_integrity_init and dm_integrity_exit static (Mike Snitzer) [1775756] - [md] dm integrity: change memcmp to strncmp in dm_integrity_ctr (Mike Snitzer) [1775756] - [x86] platform/uv: Account for UV Hubless in is_uvX_hub Ops (Frank Ramsay) [1757510] - [x86] platform/uv: Check EFI Boot to set reboot type (Frank Ramsay) [1757510] - [x86] platform/uv: Decode UVsystab Info (Frank Ramsay) [1757510] - [x86] platform/uv: Add UV Hubbed/Hubless Proc FS Files (Frank Ramsay) [1757510] - [x86] platform/uv: Setup UV functions for Hubless UV Systems (Frank Ramsay) [1757510] - [x86] platform/uv: Add return code to UV BIOS Init function (Frank Ramsay) [1757510] - [x86] platform/uv: Return UV Hubless System Type (Frank Ramsay) [1757510] - [x86] platform/uv: Save OEM_ID from ACPI MADT probe (Frank Ramsay) [1757510] - [x86] mm: Handle physical-virtual alignment mismatch in phys_p4d_init() (Baoquan He) [1685383] - [x86] mm/kaslr: Reduce randomization granularity for 5-level paging to 1GB (Baoquan He) [1685383] - [x86] mm/kaslr: Use only one PUD entry for real mode trampoline (Baoquan He) [1685383] - [documentation] documentation/stackprotector: powerpc supports stack protector (Bhupesh Sharma) [1714310] - [makefile] kbuild: mark prepare0 as PHONY to fix external module build (Bhupesh Sharma) [1714310] - [makefile] kbuild: fix single target build for external module (Bhupesh Sharma) [1714310] - [arm64] enable per-task stack canaries (Bhupesh Sharma) [1714310] - [powerpc] Fix stack protector crashes on CPU hotplug (Bhupesh Sharma) [1714310] - [powerpc] 64: properly initialise the stackprotector canary on SMP (Bhupesh Sharma) [1714310] - [powerpc] Fix stackprotector detection for non-glibc toolchains (Bhupesh Sharma) [1714310] - [powerpc] 64: add stack protector support (Bhupesh Sharma) [1714310] - [powerpc] 32: add stack protector support (Bhupesh Sharma) [1714310] - [pci] vmd: Fix shadow offsets to reflect spec changes (Myron Stowe) [1757896] - [pci] vmd: Fix config addressing when using bus offsets (Myron Stowe) [1757896] - [pci] Fix typos and whitespace errors (Myron Stowe) [1757896] - [pci] vmd: use the proper dma_* APIs instead of direct methods calls (Myron Stowe) [1757896] - [powerpc] powernv: Disable native PCIe port management (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix eeh eeh_debugfs_break_device() with SRIOV devices (Gustavo Duarte) [1524642] - [tools] selftests/powerpc: Add basic EEH selftest (Gustavo Duarte) [1524642] - [powerpc] eeh: Add a eeh_dev_break debugfs interface (Gustavo Duarte) [1524642] - [powerpc] eeh: Add debugfs interface to run an EEH check (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix debugfs_simple_attr.cocci warnings (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix build with STACKTRACE=n (Gustavo Duarte) [1524642] - [powerpc] eeh: Set attention indicator while recovering (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add attention indicator support (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add support for IODA3 Power9 PHBs (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add a reset_slot() callback (Gustavo Duarte) [1524642] - [powerpc] powernv/eeh: Use generic code to handle hot resets (Gustavo Duarte) [1524642] - [powerpc] eeh: Remove stale CAPI comment (Gustavo Duarte) [1524642] - [powerpc] eeh: Defer printing stack trace (Gustavo Duarte) [1524642] - [powerpc] eeh: Check slot presence state in eeh_handle_normal_event() (Gustavo Duarte) [1524642] - [powerpc] eeh: Make permanently failed devices non-actionable (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix race when freeing PDNs (Gustavo Duarte) [1524642] - [powerpc] eeh: Clean up EEH PEs after recovery finishes (Gustavo Duarte) [1524642] - [netdrv] be2net: disable bh with spin_lock in be_process_mcc (Petr Oros) [1724777] - [netdrv] be2net: Synchronize be_update_queues with dev_watchdog (Petr Oros) [1724777] - [netdrv] be2net: Signal that the device cannot transmit during reconfiguration (Petr Oros) [1724777] - [netdrv] be2net: fix link failure after ethtool offline test (Petr Oros) [1724777] - [netdrv] be2net: Fix number of Rx queues used for flow hashing (Petr Oros) [1724777] - [netdrv] benet: remove broken and unused macro (Petr Oros) [1724777] - [netdrv] benet: use skb_vlan_tag_get_prio() (Petr Oros) [1724777] - [netdrv] benet: use __vlan_hwaccel helpers (Petr Oros) [1724777] - [netdrv] revert "[netdrv] be2net: Disable queue dump in be_tx_timeout handler" (Petr Oros) [1724777] - [infiniband] rdma/i40iw: Set queue pair state when being queried (Stefan Assmann) [1721712] - [infiniband] ib/i40iw: Use kmemdup rather than open coding (Stefan Assmann) [1721712] - [infiniband] rdma/i40iw: Handle workqueue allocation failure (Stefan Assmann) [1721712] - [nvdimm] libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: Fix namespace creation on misaligned addresses (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: stop padding pmem namespaces to section alignment (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields" (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock" (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change" (Baoquan He) [1724969] - [mm] sparsemem: cleanup 'section number' data types (Baoquan He) [1724969] - [kernel] mm/devm_memremap_pages: enable sub-section remap (Baoquan He) [1724969] - [mm] sparsemem: support sub-section hotplug (Baoquan He) [1724969] - [mm] sparsemem: prepare for sub-section ranges (Baoquan He) [1724969] - [kernel] mm: kill is_dev_zone() helper (Baoquan He) [1724969] - [mm] hotplug: kill is_dev_zone() usage in __remove_pages() (Baoquan He) [1724969] - [mm] sparsemem: convert kmalloc_section_memmap() to populate_section_memmap() (Baoquan He) [1724969] - [mm] hotplug: prepare shrink_{zone, pgdat}_span for sub-section removal (Baoquan He) [1724969] - [mm] sparsemem: add helpers track active portions of a section at boot (Baoquan He) [1724969] - [mm] sparsemem: introduce a SECTION_IS_EARLY flag (Baoquan He) [1724969] - [mm] sparsemem: introduce struct mem_section_usage (Baoquan He) [1724969] - [base] base/memory.c: get rid of find_memory_block_hinted() (Baoquan He) [1724969] - [mm] memory_hotplug: move and simplify walk_memory_blocks() (Baoquan He) [1724969] - [mm] memory_hotplug: rename walk_memory_range() and pass start+size instead of pfns (Baoquan He) [1724969] - [mm] hotplug: make remove_memory() interface usable (Baoquan He) [1724969] - [kernel] mm: make register_mem_sect_under_node() static (Baoquan He) [1724969] - [base] base/memory: use "unsigned long" for block ids (Baoquan He) [1724969] - [base] mm: section numbers use the type "unsigned long" (Baoquan He) [1724969] - [base] base/memory.c: Use DEVICE_ATTR_RO and friends (Baoquan He) [1724969] - [mm] sparse.c: set section nid for hot-add memory (Baoquan He) [1724969] - [mm] memory_hotplug: remove "zone" parameter from sparse_remove_one_section (Baoquan He) [1724969] - [base] mm/memory_hotplug: make unregister_memory_block_under_nodes() never fail (Baoquan He) [1724969] - [base] mm/memory_hotplug: remove memory block devices before arch_remove_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: drop MHP_MEMBLOCK_API (Baoquan He) [1724969] - [base] mm/memory_hotplug: create memory block devices after arch_add_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: allow arch_remove_memory() without CONFIG_MEMORY_HOTREMOVE (Baoquan He) [1724969] - [arm64] mm: add temporary arch_remove_memory() implementation (Baoquan He) [1724969] - [mm] sparse.c: clean up obsolete code comment (Baoquan He) [1724969] - [base] base/memory: pass a block_id to init_memory_block() (Baoquan He) [1724969] - [base] base/memory.c: remove an unnecessary check on NR_MEM_SECTIONS (Baoquan He) [1724969] - [s390] s390x/mm: implement arch_remove_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: make __remove_section() never fail (Baoquan He) [1724969] - [base] mm/memory_hotplug: make unregister_memory_section() never fail (Baoquan He) [1724969] - [base] base/memory.c: clean up relics in function parameters (Baoquan He) [1724969] - [base] mm, memory_hotplug: update a comment in unregister_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: release memory resource after arch_remove_memory() (Baoquan He) [1724969] - [kernel] mm, memory_hotplug: provide a more generic restrictions for memory hotplug (Baoquan He) [1724969] - [kernel] linux/memory_hotplug.h: remove duplicate declaration of offline_pages() (Baoquan He) [1724969] - [mm] x86: respect memory size limiting via mem= parameter (Baoquan He) [1724969] - [arm64] Add memory hotplug support (Baoquan He) [1724969] - [arm64] mm: check for upper PAGE_SHIFT bits in pfn_valid() (Baoquan He) [1724969] - [powerpc] mm: Fix section mismatch warning (Baoquan He) [1724969] - [base] mm/memory_hotplug: do not unlock after failing to take the device_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: drop "online" parameter from add_memory_resource() (Baoquan He) [1724969] - [s390] s390x/mm: fail when an altmap is used for arch_add_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: simplify and fix check_hotplug_memory_range() (Baoquan He) [1724969] - [mm] memory_hotplug: add nid parameter to arch_remove_memory (Baoquan He) [1724969] - [mm] sparse: pass nid instead of pgdat to sparse_add_one_section() (Baoquan He) [1724969] - [mm] sparse: drop pgdat_resize_lock in sparse_add/remove_one_section() (Baoquan He) [1724969] - [documentation] memory-hotplug.rst: add some details about locking internals (Baoquan He) [1724969] - [powerpc] powernv: hold device_hotplug_lock when calling memtrace_offline_pages() (Baoquan He) [1724969] - [powerpc] powernv: hold device_hotplug_lock when calling device_online() (Baoquan He) [1724969] - [powerpc] powernv: Allow memory that has been hot-removed to be hot-added (Baoquan He) [1724969] - [powerpc] powernv/memtrace: Remove memtrace mmap() (Baoquan He) [1724969] - [mm] memory_hotplug: fix online/offline_pages called w.o. mem_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: make add_memory() take the device_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: make remove_memory() take the device_hotplug_lock (Baoquan He) [1724969] - [powerpc] memtrace: Remove memory in chunks (Baoquan He) [1724969] - [base] mm/memory_hotplug.c: drop unnecessary checks from register_mem_sect_under_node() (Baoquan He) [1724969] - [base] mm/memory_hotplug.c: make register_mem_sect_under_node() a callback of walk_memory_range() (Baoquan He) [1724969] - [mm] memory_hotplug.c: call register_mem_sect_under_node() (Baoquan He) [1724969] - [mm] memory_hotplug.c: make add_memory_resource use __try_online_node (Baoquan He) [1724969] - [pci] Always allow probing with driver_override (Myron Stowe) [1702178] - [pci] Return error if cannot probe VF (Myron Stowe) [1702178] - [target] scsi: target: core: Do not overwrite CDB byte 1 (Maurizio Lombardi) [1764579] - [target] scsi: target: tcmu: clean the nl_cmd of the udev when nl send fails (Maurizio Lombardi) [1764579] - [target] scsi: target: tcmu: avoid use-after-free after command timeout (Maurizio Lombardi) [1764579] - [target] scsi: tcmu: Simplify tcmu_update_uio_info() (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: fix possible condition with no effect (if == else) (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Make sure PDU processing continues if parsing a command fails (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Make iscsit_map_iovec() more robust (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Handle too large immediate data buffers correctly (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Only send R2T if needed (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Detect conn_cmd_list corruption early (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Make the XCOPY setup code easier to read by inlining two functions (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Simplify LUN initialization in XCOPY implementation (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Remove a set-but-not-used member variable from the XCOPY implementation (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Rework the SPC-2 reservation handling code (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Fix a race condition in the LUN lookup code (Maurizio Lombardi) [1764579] - [target] scsi: target: alua: fix the tg_pt_gps_count (Maurizio Lombardi) [1764579] - [target] scsi: target: iscsi: Free conn_ops when zalloc_cpumask_var failed (Maurizio Lombardi) [1764579] - [target] scsi: target: iscsi: Fix np_ip_proto and np_sock_type in iscsit_setup_np (Maurizio Lombardi) [1764579] - [target] scsi: target: fix unsigned comparision with less than zero (Maurizio Lombardi) [1764579] - [target] scsi: target: Add device product id and revision configfs attributes (Maurizio Lombardi) [1764579] - [kernel] genirq/affinity: Remove const qualifier from node_to_cpumask argument (Ming Lei) [1743064] - [kernel] genirq/affinity: Spread vectors on node according to nr_cpu ratio (Ming Lei) [1743064] - [kernel] genirq/affinity: Improve __irq_build_affinity_masks() (Ming Lei) [1743064] - [kernel] genirq/affinity: Remove unused argument from [__]irq_build_affinity_masks() (Ming Lei) [1743064] - [kernel] workqueue, lockdep: Fix a memory leak in wq->lock_name (Waiman Long) [1736654] - [kernel] workqueue, lockdep: Fix an alloc_workqueue() error path (Waiman Long) [1736654] - [kernel] locking/lockdep: Report more stack trace statistics (Waiman Long) [1736654] - [kernel] locking/lockdep: Reduce space occupied by stack traces (Waiman Long) [1736654] - [kernel] locking/lockdep: Make it clear that what lock_class::key points at is not modified (Waiman Long) [1736654] - [kernel] lockdep: Make print_lock() address visible (Waiman Long) [1736654] - [kernel] locking/lockdep: Clean up #ifdef checks (Waiman Long) [1736654] - [kernel] locking/lockdep: Hide unused 'class' variable (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix lock used or unused stats error (Waiman Long) [1736654] - [kernel] locking/lockdep: increase size of counters for lockdep statistics (Waiman Long) [1736654] - [kernel] locking/lockdep: Move mark_lock() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unnecessary DEBUG_LOCKS_WARN_ON() (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix merging of hlocks with non-zero references (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix OOO unlock when hlocks need merging (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove !dir in lock irq usage check (Waiman Long) [1736654] - [kernel] locking/lockdep: Adjust new bit cases in mark_lock (Waiman Long) [1736654] - [kernel] locking/lockdep: Consolidate lock usage bit initialization (Waiman Long) [1736654] - [kernel] locking/lockdep: Check redundant dependency only when CONFIG_LOCKDEP_SMALL (Waiman Long) [1736654] - [kernel] locking/lockdep: Refactorize check_noncircular and check_redundant (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unused argument in __lock_release (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove redundant argument in check_deadlock (Waiman Long) [1736654] - [documentation] locking/lockdep: Add explanation to lock usage rules in lockdep design doc (Waiman Long) [1736654] - [kernel] locking/lockdep: Update comments on dependency search (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid constant checks in __bfs by using offset reference (Waiman Long) [1736654] - [kernel] locking/lockdep: Change the return type of __cq_dequeue() (Waiman Long) [1736654] - [kernel] locking/lockdep: Change type of the element field in circular_queue (Waiman Long) [1736654] - [kernel] locking/lockdep: Update comment (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unused argument in validate_chain() and check_deadlock() (Waiman Long) [1736654] - [kernel] locking/lockdep: Change the range of class_idx in held_lock struct (Waiman Long) [1736654] - [kernel] locking/lockdep: Define INITIAL_CHAIN_KEY for chain keys to start with (Waiman Long) [1736654] - [kernel] locking/lockdep: Use lockdep_init_task for task initiation consistently (Waiman Long) [1736654] - [kernel] locking/lockdep: Update obsolete struct field description (Waiman Long) [1736654] - [kernel] locking/lockdep: Print the right depth for chain key collision (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove useless conditional macro (Waiman Long) [1736654] - [kernel] locking/lockdep: Adjust lock usage bit character checks (Waiman Long) [1736654] - [documentation] locking/lockdep: Add description and explanation in lockdep design doc (Waiman Long) [1736654] - [kernel] locking/lockdep: Change all print_*() return type to void (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove the unused print_lock_trace() function (Waiman Long) [1736654] - [kernel] locking/lockdep: Don't complain about incorrect name for no validate class (Waiman Long) [1736654] - [kernel] lockdep: Add assertion to check if in an interrupt (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unnecessary unlikely() (Waiman Long) [1736654] - [kernel] locking/lockdep: Test all incompatible scenarios at once in check_irq_usage() (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid bogus Clang warning (Waiman Long) [1736654] - [kernel] locking/lockdep: Generate LOCKF_ bit composites (Waiman Long) [1736654] - [kernel] locking/lockdep: Use expanded masks on find_usage_*() functions (Waiman Long) [1736654] - [kernel] locking/lockdep: Map remaining magic numbers to lock usage mask names (Waiman Long) [1736654] - [kernel] locking/lockdep: Move valid_state() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING (Waiman Long) [1736654] - [kernel] lockdep: Simplify stack trace handling (Waiman Long) [1736654] - [kernel] locking/lockdep: Make lockdep_unregister_key() honor 'debug_locks' again (Waiman Long) [1736654] - [kernel] locking/lockdep: Zap lock classes even with lock debugging disabled (Waiman Long) [1736654] - [kernel] locking/lockdep: Only call init_rcu_head() after RCU has been initialized (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid a Clang warning (Waiman Long) [1736654] - [kernel] locking/lockdep: Shrink struct lock_class_key (Waiman Long) [1736654] - [kernel] locking/lockdep: Add module_param to enable consistency checks (Waiman Long) [1736654] - [tools] lockdep/lib/tests: Test dynamic key registration (Waiman Long) [1736654] - [tools] lockdep/lib/tests: Fix run_tests.sh (Waiman Long) [1736654] - [kernel] workqueue: Use dynamic lockdep keys for workqueues (Waiman Long) [1736654] - [kernel] locking/lockdep: Add support for dynamic keys (Waiman Long) [1736654] - [kernel] locking/lockdep: Verify whether lock objects are small enough to be used as class keys (Waiman Long) [1736654] - [kernel] locking/lockdep: Check data structure consistency (Waiman Long) [1736654] - [kernel] locking/lockdep: Reuse lock chains that have been freed (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix a comment in add_chain_cache() (Waiman Long) [1736654] - [kernel] locking/lockdep: Introduce lockdep_next_lockchain() and lock_chain_count() (Waiman Long) [1736654] - [kernel] locking/lockdep: Reuse list entries that are no longer in use (Waiman Long) [1736654] - [kernel] locking/lockdep: Free lock classes that are no longer in use (Waiman Long) [1736654] - [kernel] locking/lockdep: Update two outdated comments (Waiman Long) [1736654] - [kernel] locking/lockdep: Make it easy to detect whether or not inside a selftest (Waiman Long) [1736654] - [kernel] locking/lockdep: Split lockdep_free_key_range() and lockdep_reset_lock() (Waiman Long) [1736654] - [kernel] locking/lockdep: Initialize the locks_before and locks_after lists earlier (Waiman Long) [1736654] - [kernel] locking/lockdep: Make zap_class() remove all matching lock order entries (Waiman Long) [1736654] - [kernel] locking/lockdep: Reorder struct lock_class members (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid that add_chain_cache() adds an invalid chain to the cache (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix reported required memory size (2/2) (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix reported required memory size (1/2) (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix two 32-bit compiler warnings (Waiman Long) [1736654] - [kernel] locking/lockdep: Rename lockdep_info() to lockdep_init() (Waiman Long) [1736654] - [kernel] locking/lockdep: Add debug_locks check in __lock_downgrade() (Waiman Long) [1736654] - [kernel] locking/lockdep: Provide enum lock_usage_bit mask names (Waiman Long) [1736654] - [kernel] locking/lockdep: Simplify mark_held_locks() (Waiman Long) [1736654] - [kernel] locking/lockdep: Add debug_locks check in __lock_downgrade() (Waiman Long) [1736654] - [kernel] locking/lockdep: Stop using RCU primitives to access 'all_lock_classes' (Waiman Long) [1736654] - [kernel] locking/lockdep: Make concurrent lockdep_reset_lock() calls safe (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove a superfluous INIT_LIST_HEAD() statement (Waiman Long) [1736654] - [kernel] locking/lockdep: Introduce lock_class_cache_is_registered() (Waiman Long) [1736654] - [kernel] locking/lockdep: Inline __lockdep_init_map() (Waiman Long) [1736654] - [kernel] locking/lockdep: Declare local symbols static (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Test the lockdep_reset_lock() implementation (Waiman Long) [1736654] - [tools] lib/lockdep: Add dummy print_irqtrace_events() implementation (Waiman Long) [1736654] - [tools] lib/lockdep: Rename "trywlock" into "trywrlock" (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Run lockdep tests a second time under Valgrind (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Improve testing accuracy (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Fix shellcheck warnings (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Display compiler warning and error messages (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove ::version from lock_class structure (Waiman Long) [1736654] - [init] kconfig: disable io_uring support (Jeff Moyer) [1758680] - [virt] kvm: arm64: pmu: Reset sample period on overflow handling (Auger Eric) [1760872] - [virt] kvm: arm64: pmu: Set the CHAINED attribute before creating the in-kernel event (Auger Eric) [1760872] - [arm64] kvm: Handle PMCR_EL0.LC as RES1 on pure AArch64 systems (Auger Eric) [1760872] - [virt] kvm: arm64: pmu: Fix cycle counter truncation (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Introduce kvm_pmu_vcpu_init() to setup PMU counter index (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Support chained PMU counters (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Remove pmc->bitmask (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Re-create event when setting counter value (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Extract duplicated code to own function (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Rename kvm_pmu_{enable/disable}_counter functions (Auger Eric) [1760872] - [arm64] perf: Hook up new events (Auger Eric) [1760872] - [arm64] perf: Move event definitions into perf_event.h (Auger Eric) [1760872] - [arm64] perf: Remove duplicate generic cache events (Auger Eric) [1760872] - [arm64] perf: Terminate PMU assignment statements with semicolons (Auger Eric) [1760872] - [arm64] Allow CAVIUM_TX2_ERRATUM_219 to be selected (Auger Eric) [1771633] - [arm64] Avoid Cavium TX2 erratum 219 when switching TTBR (Auger Eric) [1771633] - [arm64] Enable workaround for Cavium TX2 erratum 219 when running SMT (Auger Eric) [1771633] - [arm64] kvm: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set (Auger Eric) [1771633] - [arm64] sysreg: fix incorrect definition of SYS_PAR_EL1_F (Auger Eric) [1771633] - [arm64] Force SSBS on context switch (Mark Salter) [1756103] - [arm64] enable pointer authentication (Mark Salter) [1756103] - [arm64] add ptrace regsets for ptrauth key management (Mark Salter) [1756103] - arm64: cpufeature: Rework ptr auth hwcaps using multi_entry_cap_matches (Mark Salter) [1756103] - [arm64] capabilities: Merge duplicate entries for Qualcomm erratum 1003 (Mark Salter) [1756103] - [arm64] cpufeature: Reduce number of pointer auth CPU caps from 6 to 4 (Mark Salter) [1756103] - [documentation] arm64: docs: document pointer authentication (Mark Salter) [1756103] - [documentation] arm64: docs: Document SSBS HWCAP (Mark Salter) [1756103] - [documentation] arm64: docs: Fix typos in ELF hwcaps (Mark Salter) [1756103] - [arm64] ptr auth: Move per-thread keys from thread_info to thread_struct (Mark Salter) [1756103] - [arm64] add prctl control for resetting ptrauth keys (Mark Salter) [1756103] - [arm64] perf: strip PAC when unwinding userspace (Mark Salter) [1756103] - [arm64] expose user PAC bit positions via ptrace (Mark Salter) [1756103] - [arm64] add basic pointer authentication support (Mark Salter) [1756103] - arm64/cpufeature: detect pointer authentication (Mark Salter) [1756103] - [arm64] cpufeature: Convert hook_lock to raw_spin_lock_t in cpu_enable_ssbs() (Mark Salter) [1756103] - [arm64] entry: Allow handling of undefined instructions from EL1 (Mark Salter) [1756103] - [arm64] Fix silly typo in comment (Mark Salter) [1756103] - [fs] smb3: fix signing verification of large reads (Dave Wysochanski) [1753114] - [fs] revert "nfs4: Fix v4.0 client state corruption when mount" (Benjamin Coddington) [1767012] - [kernel] svcrdma: Increase the default connection credit limit (Benjamin Coddington) [1771430] - [x86] quirks: Disable HPET on Intel Coffe Lake platforms (David Arcari) [1773774] - [sched] core: Fix CPU controller for !RT_GROUP_SCHED (Phil Auld) [1774652] - [x86] Add comment for x86 processor OS version support (David Arcari) [1709878] - [x86] kvm: svm: taint module and print taint message iff nested is enabled (Bandan Das) [1775410] - [x86] cpu: Add Tiger Lake to Intel family (Steve Best) [1773790] - [fs] Fix the locking in dcache_readdir() and friends (Miklos Szeredi) [1761746] - [infiniband] rdma/mlx5: Return proper error value (Mohammad Heib) [1772101] - [scsi] mpt3sas: change allocation option (Tomas Henzl) [1770264] - [scsi] qla2xxx: Initialized mailbox to prevent driver load failure (Himanshu Madhani) [1770309] - [mfd] intel-lpss: Add Intel Comet Lake PCH-H PCI IDs (David Arcari) [1773307] - [powercap] intel_rapl: add support for Cometlake desktop (David Arcari) [1759664] - [powercap] intel_rapl: add support for CometLake Mobile (David Arcari) [1746265] - [kernel] intel_rapl: need linux/cpuhotplug.h for enum cpuhp_state (Alexander Beregalov) [1732604] - [thermal] int340x/processor_thermal_device: Fix proc_thermal_rapl_remove() (Alexander Beregalov) [1732604] - [thermal] int340x/processor_thermal_device: add support for MMIO RAPL (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal_device: Fix build warning (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal: Read PPCC on resume (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal: Downgrade error message (Alexander Beregalov) [1732604] - [thermal] intel: int340x: processor_thermal_device: simplify to get driver data (Alexander Beregalov) [1732604] - [thermal] int3403_thermal: favor _TMP instead of PTYP (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: fix mode setting (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: Add additional UUIDs (Alexander Beregalov) [1732604] - [thermal] thermal: int340x_thermal: Fix sysfs race condition (Alexander Beregalov) [1732604] - [thermal] thermal: int340x_thermal: Make PCI dependency explicit (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: Fix a NULL vs IS_ERR() check (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: int3400_thermal: simplify getting .driver_data (Alexander Beregalov) [1732604] - [powercap] Invoke powercap_init() and rapl_init() earlier (Alexander Beregalov) [1732604] - [powercap] intel_rapl: Fix module autoloading issue (Alexander Beregalov) [1732604] - [powercap] intel_rapl: support two power limits for every RAPL domain (Alexander Beregalov) [1732604] - [powercap] intel_rapl: support 64 bit register (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract RAPL common code (Alexander Beregalov) [1732604] - [powercap] intel_rapl: cleanup hardcoded MSR access (Alexander Beregalov) [1732604] - [powercap] intel_rapl: cleanup some functions (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract register access operations (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract register address (Alexander Beregalov) [1732604] - [powercap] intel_rapl: introduce struct rapl_if_private (Alexander Beregalov) [1732604] - [kernel] intel_rapl: introduce intel_rapl.h (Alexander Beregalov) [1732604] - [powercap] intel_rapl: remove hardcoded register index (Alexander Beregalov) [1732604] - [powercap] intel_rapl: use reg instead of msr (Alexander Beregalov) [1732604] - [security] ima: Differentiate auditing policy rules from "audit" actions (Richard Guy Briggs) [1479911] - [security] ima: Do not audit if CONFIG_INTEGRITY_AUDIT is not set (Richard Guy Briggs) [1479911] - [security] ima: Use audit_log_format() rather than audit_log_string() (Richard Guy Briggs) [1479911] - [security] ima: Call audit_log_string() rather than logging it untrusted (Richard Guy Briggs) [1479911] - [security] selinux: avoid atomic_t usage in sidtab (Ondrej Mosnacek) [1741182] - [security] selinux: always return a secid from the network caches if we find one (Ondrej Mosnacek) [1741182] - [security] selinux: policydb - rename type_val_to_struct_array (Ondrej Mosnacek) [1741182] - [security] selinux: policydb - fix some checkpatch.pl warnings (Ondrej Mosnacek) [1741182] - [security] selinux: shuffle around policydb.c to get rid of forward declarations (Ondrej Mosnacek) [1741182] - [security] selinux: fix memory leak in policydb_init() (Ondrej Mosnacek) [1741182] - [security] selinux: check sidtab limit before adding a new entry (Ondrej Mosnacek) [1741182] - [security] selinux: format all invalid context as untrusted (Ondrej Mosnacek) [1479914 1741182] - [security] selinux: remove some no-op BUG_ONs (Ondrej Mosnacek) [1741182] - [security] selinux: provide __le variables explicitly (Ondrej Mosnacek) [1741182] - [security] selinux: avoid uninitialized variable warning (Ondrej Mosnacek) [1741182] - [security] selinux: remove useless assignments (Ondrej Mosnacek) [1741182] - [security] selinux: fix NULL dereference in policydb_destroy() (Ondrej Mosnacek) [1741182] - [security] selinux: convert to kvmalloc (Ondrej Mosnacek) [1741182] - [kernel] lsm: generalize flag passing to security_capable (Ondrej Mosnacek) [1741182] - [kernel] selinux: Remove unused selinux_is_enabled (Ondrej Mosnacek) [1741182] - [kernel] selinux: Remove cred security blob poisoning (Ondrej Mosnacek) [1741182] - [security] selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE (Ondrej Mosnacek) [1741182]- [tools] selftests: mlxsw: Add a test for leftover DSCP rule (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Fix local variable declarations in DSCP tests (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Add counters for GC events (Ivan Vecera) [1737368] - [netdrv] mlxsw: Bump firmware version to 13.2000.1886 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Prevent auto negotiation on number of lanes (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove 56G speed support (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Keep unmatched entries in a linked list (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Further reduce pool size on Spectrum-2 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Fix error path in mlxsw_sp_module_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: fix duplicated check on orig_egr_types (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Fix typo in qos_mc_aware.sh (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Do not process learned records with a dummy FID (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_dcb: Configure DSCP map as the last rule is removed (Ivan Vecera) [1737368] - [netdrv] remove redundant memset (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Apply the PTP shaper enable/disable logic (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Set up PTP shaper when port status has changed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Enable/disable PTP shaper on a port when getting HWTSTAMP on/off (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add new operation for getting the port's speed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Set the PTP shaper parameters (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add QoS PTP Shaper Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add note about the PTP shaper (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add ptps field in QoS ETS Element Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Fix validation in mlxsw_sp1_ptp_packet_finish() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support ethtool get_ts_info (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support SIOCGHWTSTAMP, SIOCSHWTSTAMP ioctls (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Configure PTP traps and FIFO events (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Garbage-collect unmatched entries (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support timestamping on Spectrum-1 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Disable BH when working with PHC (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Add PTP initialization / finalization (Ivan Vecera) [1737368] - [netdrv] mlxsw: pci: ptp: Hook into packet transmit path (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for using SKB control buffer (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Hook into packet receive path (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add support for traps specific to Spectrum-1 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Extract a helper for trap registration (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Global Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Time Precision Packet Timestamping Reading (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Precision Time Protocol Trap Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Time Precision Packet Port Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for negative temperature readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add the hottest thermal zone detection (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend thermal core with per inter-connect device thermal zones (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_flower: Implement support for ingress device matching (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Fix SRC_SYS_PORT element size (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Avoid size check for RX_ACL_SYSTEM_PORT element (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Write RX_ACL_SYSTEM_PORT acl element correctly (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Fix compilation on 32-bit ARM (Ivan Vecera) [1737368] - [tools] selftests: ptp: Add Physical Hardware Clock test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: PTP physical hardware clock initialization (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Add implementation for physical hardware clock operations (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management Pulse Per Second Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management UTC Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: pci: Query free running clock PCI BAR and offsets (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add a new interface for reading the hardware free running clock (Ivan Vecera) [1737368] - [netdrv] mlxsw: cmd: Free running clock PCI BAR and offsets via query firmware (Ivan Vecera) [1737368] - [netdrv] mlxsw: Implement flash update status notifications (Ivan Vecera) [1737368] - [netdrv] mlxfw: Introduce status_notify op and call it to notify about the status (Ivan Vecera) [1737368] - [netdrv] mlxfw: Propagate error messages through extack (Ivan Vecera) [1737368] - [netdrv] mlxsw: Move firmware flash implementation to devlink (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Reduce buffer size in transactions for SFP modules temperature readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend the index size for temperature sensors readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend hwmon interface with inter-connect temperature attributes (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management General Peripheral Information Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Extend sensor index field size of Management Temperature Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Re-order initialization sequence (Ivan Vecera) [1737368] - [netdrv] mlxsw: i2c: Allow flexible setting of I2C transactions size (Ivan Vecera) [1737368] - [netdrv] mlxsw: i2c: Extend initialization with querying firmware info (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Disallow prio-tagged packets when PVID is removed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Reduce pool size on Spectrum-2 (Ivan Vecera) [1737368] - [tools] selftests: tc_flower: Add TOS matching test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_flower: Fix TOS matching (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Test nexthop offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Refresh nexthop neighbour when it becomes dead (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Use different seeds for ECMP and LAG hash (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Prevent force of 56G (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Avoid warning after identical rules insertion (Ivan Vecera) [1737368] - [tools] selftests: Add loopback test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Implement loopback ethtool feature (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Port Physical Loopback Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: split base on local_ports_in_{1x, 2x} resources (Ivan Vecera) [1737368] - [netdrv] mlxsw: resources: Add local_ports_in_{1x, 2x} (Ivan Vecera) [1737368] - [netdrv] mlxsw: Bump firmware version to 13.2000.1122 (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove obsolete dependency on THERMAL=m (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Prevent ipv6 gateway with v4 route via replace and append (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Adjust CPU port shared buffer egress quotas (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Allow skipping ingress port quota configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Split business logic from mlxsw_sp_port_sb_pms_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Use new CPU ingress pool for control packets (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add pools for CPU traffic (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Remove assumption about pool order (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid changing multicast TCs' attributes (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid changing threshold type of first egress pool (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid configuration of multicast pool (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add ability to veto TC's configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add ability to veto pool's configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Use defines for pool indices (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add extack messages for invalid configurations (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Relax FIB rule validation (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Use a stable ECMP/LAG seed (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Test neighbour offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Add neighbour offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Propagate neighbour update errors (Ivan Vecera) [1737368] - [documentation] documentation: networking: devlink-info-versions: Add fw.psid (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for devlink info command (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add MGIR register (Ivan Vecera) [1737368] - [tools] selftests: forwarding: test for bridge mcast traffic after report and leave (Ivan Vecera) [1737368] - [netdrv] mlxsw: switch_ib: Pass valid HW id down to mlxsw_core_port_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove ndo_get_port_parent_id implementation (Ivan Vecera) [1737368] - [netdrv] mlxsw: Pass switch ID through devlink_port_attrs_set() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Rename rehash_dis trace (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Remove failed_rollback dead end (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Move rehash_dis trace call and err msg to vregion_migrate() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Remove redundant failed_rollback from migrate_start() (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove ndo_get_phys_port_name implementation (Ivan Vecera) [1737368] - [netdrv] mlxsw: Implement ndo_get_devlink_port (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Add a new test for strict priority (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Add qos_lib.sh (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: qos_mc_aware: Configure shared buffers (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Add shared buffer helpers (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Simplify deduction of DEVLINK_DEV (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Avoid double sourcing of lib.sh (Ivan Vecera) [1737368] - [tools] selftests: forwarding: Test action VLAN modify (Ivan Vecera) [1737368] - [tools] selftests: forwarding: Add PCP match and VLAN match tests (Ivan Vecera) [1737368] - [infiniband] rdma/mlx5: Use irq xarray locking for mkey_table (Alaa Hleihel) [1724336] - [netdrv] mlx4_core: Dynamically set guaranteed amount of counters per VF (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Initialize on stack link modes bitmap (Alaa Hleihel) [1724336] - [netdrv] mlx5e: fix ethtool self test: link speed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix handling of compressed CQEs in case of low NAPI budget (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Don't store direct pointer to action's tunnel info (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix NULL pointer dereference in extended destination (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only skip encap flows update when encap init failed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Determine source port properly for vlan push action (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix flow counter list auto bits struct (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Clear old rate limit when closing QP (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Remove dead code (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: prevent memory leak in mlx5_fpga_conn_create_cq (Alaa Hleihel) [1724336] - [netdrv] mlx5e: TX, Fix consumer index of error cqe dump (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Zero-memset WQE info struct upon update (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Add missing synchronize_srcu() for MW cases (Alaa Hleihel) [1724307 1724336] - [infiniband] rdma/mlx5: Order num_pending_prefetch properly with synchronize_srcu (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Do not allow rereg of a ODP MR (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix matching on tunnel addresses type (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add device ID of upcoming BlueField-2 (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Free mpi in mp_slave mode (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Use the original address for the page during free_pages (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: FWTrace, Reduce stack usage (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Remove unnecessary clear_bit()s (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix spelling mistake "offlaods" -> "offloads" (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Remove leftover declaration (Alaa Hleihel) [1724336] - [netdrv] mlx5e: ethtool, Fix a typo in WOL function names (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add missing include file to lib/crypto.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: remove self-assignment on esw->dev (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support MLX5_CMD_OP_QUERY_LAG as a DEVX general command (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Fix mlx5_ifc_query_lag_out_bits (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix formats with line continuation whitespace (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix mlx5e_tx_reporter_create return value (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix offset of tisc bits reserved field (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix -Wtype-limits compilation warnings (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support per device q counters in switchdev mode (Alaa Hleihel) [1659186 1724336] - [infiniband] ib/mlx5: Refactor code for counters allocation (Alaa Hleihel) [1659186 1724336] - [netdrv] mlx5: DR, Replace CRC32 implementation to use kernel lib (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Support IPv4 and IPv6 mixed matcher (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Allow insertion of duplicate rules (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: avoid 64-bit division in dr_icm_pool_mr_create() (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5e: Fix traffic duplication in ethtool steering (Alaa Hleihel) [1724336] - [netdrv] mlx5: DR, Allow matching on vport based on vhca_id (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Fix getting incorrect prev node in ste_free (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Remove redundant vport number from action (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: DR, Fix SW steering HW bits and definitions (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix missing assignment of variable err (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Fix rt's type in dr_action_create_reformat_action (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Fix error return code in dr_domain_init_resources() (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Fix addr's type in mlx5dr_icm_dm (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add devlink flow_steering_mode parameter (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add support to use SMFS in switchdev mode (Alaa Hleihel) [1760284 1724327 1724336] - [netdrv] mlx5: Add API to set the namespace steering mode (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add direct rule fs_cmd implementation (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add CONFIG_MLX5_SW_STEERING for software steering support (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose APIs for direct rule managing (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add required FW steering functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering rule functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering action functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering matcher functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering table functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering domain functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add Steering entry (STE) utilities (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose an internal API to issue RDMA operations (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, ICM pool memory allocator (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add direct rule command utilities (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add the internal direct rule types definitions (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add flow steering actions to fs_cmd shim layer (Alaa Hleihel) [1760284 1724327 1724336] - [netdrv] mlx5: Set only stag for match untagged packets (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: Add stub for mlx5_eswitch_mode (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Avoid disabling RoCE when uninitialized (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: Add HW bits and definitions required for SW steering (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Move device memory management to mlx5_core (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5e: Support LAG TX port affinity distribution (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Expose new function for TIS destroy loop (Alaa Hleihel) [1760285 1724336] - [kernel] mlx5: Add lag_tx_port_affinity capability bit (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Add device out of buffer counter (Alaa Hleihel) [1760291 1724336] - [netdrv] mlx5: Fix the order of fc_stats cleanup (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix deallocation of non-fully init encap entries (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only access fully initialized flows in neigh update (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor neigh update for concurrent execution (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor neigh used value update for concurrent execution (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect neigh hash encap list with spinlock and rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor mlx5e_neigh_update_table->encap_lock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend neigh hash entry with rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Always take reference to neigh entry (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extract code that queues neigh update work into function (Alaa Hleihel) [1663231 1724336] - [kernel] mlx5: Add support for VNIC_ENV internal rq counter (Alaa Hleihel) [1760291 1724336] - [netdrv] mlx5e: Use refcount_t for refcount (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Use vhca_id in generating representor port_index (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Simplify querying port representor parent id (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5: E-switch, Removed unused hwid (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Allow concurrent creation of encap entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect encap hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend encap entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Allow concurrent creation of mod_hdr entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect mod_hdr hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect mod header entry flows list with spinlock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend mod header entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Allow concurrent creation of hairpin entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect hairpin hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect hairpin entry flows list with spinlock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend hairpin entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5: E-switch, Tide up eswitch config sequence (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Remove redundant mc_promisc NULL check (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, remove redundant error handling (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Introduce helper function to enable/disable vports (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Initialize TSAR Qos hardware block before its user vports (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Combine metadata enable/disable functionality (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Verify support QoS element type (Alaa Hleihel) [1724336] - [netdrv] mlx5: Make load_one() and unload_one() symmetric (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add flow counter pool (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5: Add flow counter bulk infrastructure (Alaa Hleihel) [1760297 1724336] - [kernel] mlx5: Add flow counter bulk allocation hardware bits and command (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5: Refactor and optimize flow counter bulk query (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5e: Protect tc flow table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Rely on rcu instead of rtnl lock when getting upper dev (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Eswitch, use state_lock to synchronize vlan change (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Eswitch, change offloads num_flows type to atomic64 (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Protect unready flows with dedicated lock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect tc flows hashtable with rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Change flow flags type to unsigned long (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend tc flow struct with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Simplify get_route_and_out_devs helper function (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Improve ethtool rxnfc callback structure (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Avoid warning print when not required (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Print a warning when LRO feature is dropped or not allowed (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Remove ethernet segment from dump WQE (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Add num bytes metadata to WQE info (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix delay in fw fatal report handling due to fw report (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix crdump chunks print (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Block MR WR if UMR is not possible (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix MR re-registration flow to use UMR properly (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Report and handle ODP support properly (Alaa Hleihel) [1724308 1724336] - [infiniband] ib/mlx5: Consolidate use_umr checks into single function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix compatibility issue with ethtool flash device (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix use-after-free error while accessing ev_file pointer (Alaa Hleihel) [1724307 1724336] - [netdrv] mlx5e: Remove redundant check in CQE recovery flow of tx reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix error flow of CQE recovery on tx reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix false negative indication on tx reporter CQE recovery (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix tisn field placement (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix tisn field name (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix progress params context WQE layout (Alaa Hleihel) [1724336] - [kernel] mlx5: kTLS, Fix wrong TIS opmod constants (Alaa Hleihel) [1724336] - [netdrv] mlx5: crypto, Fix wrong offset in encryption key command (Alaa Hleihel) [1724336] - [netdrv] mlx5e: ethtool, Avoid setting speed to 56GBASE when autoneg off (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only support tx/rx pause setting for port owner (Alaa Hleihel) [1724336] - [netdrv] mlx5: Support inner header match criteria for non decap flow action (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Use flow keys dissector to parse packets for ARFS (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Check the correct variable in error handling code (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Fix implicit MR release flow (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5e: always initialize frag->last_in_page (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Release locks during notifier unregister (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix MR registration flow to use UMR properly (Alaa Hleihel) [1764207 1724336] - [netdrv] mlx5e: kTLS, Call WARN_ONCE on netdev mismatch (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Prevent encap flow counter update async to user query (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix matching of speed to PRM link modes (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix modify_cq_in alignment (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add missing RDMA_RX capabilities (Alaa Hleihel) [1724336] - [netdrv] mlx5: Use reversed order when unregister devices (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix RSS Toeplitz setup to be aligned with the HW specification (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Prevent concurrent MR updates during invalidation (Alaa Hleihel) [1724308 1724336] - [infiniband] ib/mlx5: Fix clean_mr() to work in the expected order (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Move MRs to a kernel PD when freeing them to the MR cache (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Use direct mkey destroy command upon UMR unreg failure (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix unreg_umr to ignore the mkey state (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Replace kfree with kvfree (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Replace kfree with kvfree (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Rely on filter_dev instead of dissector keys for tunnels (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Verify encapsulation is supported (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Convert single case statement switch statements into if statements (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Reduce ingress acl modify metadata stack usage (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Fix compilation error in TLS code (Alaa Hleihel) [1724336] - [netdrv] mlx5e: IPoIB, Add error path in mlx5_rdma_setup_rn (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix error flow in tx reporter diagnose (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix return value from timeout recover function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Rx, Fix checksum calculation for new hardware (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix port tunnel GRE entropy control (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Fix default encap mode (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Return in default case statement in tx_post_resync_params (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Register devlink ports for physical link, PCI PF, VFs (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Set RDMA DIM to be enabled by default (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Report correctly tag matching rendezvous capability (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Implement VHCA tunnel mechanism in DEVX (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Introduce VHCA tunnel device capability (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Add kTLS TX HW offload support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Introduce a fenced NOP WQE posting function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Re-work TIS creation functions (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Tx, Unconstify SQ stop room (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Don't implicitly assume SKB-less wqe has one WQEBB (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Make SQ WQE fetch function type generic (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Enforce L4 inline copy when needed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move helper functions to a new txrx datapath header (Alaa Hleihel) [1724336] - [netdrv] mlx5: Accel, Add core TLS support for the Connect-X family (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add crypto library to support create/destroy encryption key (Alaa Hleihel) [1724336] - [netdrv] mlx5: Kconfig, Better organize compilation flags (Alaa Hleihel) [1724336] - [netdrv] mlx5: Accel, Expose accel wrapper for IPsec FPGA function (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Add counter_alloc_stats() and counter_update_stats() support (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support statistic q counter configuration (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Add counter set id as a parameter for mlx5_ib_query_q_counters() (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support set qp counter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Added devlink info callback (Alaa Hleihel) [1724336] - [netdrv] mlx5: Added fw version query command (Alaa Hleihel) [1724336] - [kernel] mlx5: Add rts2rts_qp_counters_set_id field in hca cap (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Use proper allocation API to get zeroed memory (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: DEVX cleanup mdev (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Add DEVX support for CQ events (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Implement DEVX dispatching event (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Enable subscription for device events over DEVX (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Register DEVX with mlx5_core to get async events (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_EVENT_FD (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Properly name the generic WQE control field (Alaa Hleihel) [1724336] - [kernel] mlx5: Introduce TLS TX offload hardware bits and structures (Alaa Hleihel) [1724336] - [netdrv] mlx5: Refactor mlx5_esw_query_functions for modularity (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch prepare functions change handler to be modular (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Introduce and use mlx5_eswitch_get_total_vports() (Alaa Hleihel) [1724327 1724336] - [infiniband] ib/mlx5: Fixed reporting counters on 2nd port for Dual port RoCE (Alaa Hleihel) [1724336] - [kernel] mlx5: Expose device definitions for object events (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report EQE data upon CQ completion (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report a CQ error event only when a handler was set (Alaa Hleihel) [1724336] - [netdrv] mlx5: mlx5_core_create_cq() enhancements (Alaa Hleihel) [1724336] - [netdrv] mlx5: Expose the API to register for ANY event (Alaa Hleihel) [1724336] - [netdrv] mlx5: Use event mask based on device capabilities (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Fix mlx5_core_destroy_cq() error flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Handle UC address change in switchdev mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Consider host PF for inline mode and vlan pop (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use iterator for vlan and min-inline setups (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Reg/unreg function changed event at correct stage (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Consolidate eswitch function number of VFs (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Refactor eswitch SR-IOV interface (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Handle host PF vport mac/guid for ECPF (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use correct flags when configuring vlan (Alaa Hleihel) [1724336] - [netdrv] mlx5: Reduce dependency on enabled_vfs counter and num_vfs (Alaa Hleihel) [1724336] - [netdrv] mlx5: Don't handle VF func change if host PF is disabled (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Limit scope of mlx5_get_next_phys_dev() to PCI PF devices (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move pci status reg access mutex to mlx5_pci_init (Alaa Hleihel) [1724336] - [kernel] mlx5: Rename mlx5_pci_dev_type to mlx5_coredev_type (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Cleanup rep when doing unload (Alaa Hleihel) [1724336] - [infiniband] {ib, net}/mlx5: E-Switch, Use index of rep for vport to IB port mapping (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use vport index when init rep (Alaa Hleihel) [1724327 1724336] - [kernel] mlx5: Added MCQI and MCQS registers' description to ifc (Alaa Hleihel) [1724336] - [kernel] mlx5: Add hardware definitions for sub functions (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Disallow tc redirect offload cases we don't support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Expose same physical switch_id for all representors (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Don't refresh TIRs when updating representor SQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: reduce stack usage in mlx5_eswitch_termtbl_create (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Set drvinfo in generic manner (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Correct phys_port_name for PF port (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Report netdevice MPLS features (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move to HW checksumming advertising (Alaa Hleihel) [1724336] - [netdrv] mlx5: MPFS, Allow adding the same MAC more than once (Alaa Hleihel) [1724336] - [netdrv] mlx5: MPFS, Cleanup add MAC flow (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move queue param structs to en/params.h (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Encapsulate open/close queues into a function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Consider XSK in XDP MTU limit calculation (Alaa Hleihel) [1724336] - [netdrv] mlx5e: XDP_TX from UMEM support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Share the XDP SQ for XDP_TX between RQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Refactor struct mlx5e_xdp_info (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Allow ICO SQ to be used by multiple RQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Calculate linear RX frag size considering XSK (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Replace deprecated PCI_DMA_TODEVICE (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Attach/detach XDP program safely (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Enable vport metadata matching if firmware supports it (Alaa Hleihel) [1724327 1724336] - [infiniband] rdma/mlx5: Add vport metadata matching for IB representors (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Add match on vport metadata for rule in slow path (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Pass metadata from FDB to eswitch manager (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Add query and modify esw vport context functions (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Add match on vport metadata for rule in fast path (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Specifying known origin of packets matching the flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Tag packet with vport number in VF vports and uplink ingress ACLs (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Add flow context for flow tag (Alaa Hleihel) [1724336] - [netdrv] mlx5: Introduce a helper API to check VF vport (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Support allocating modify header context from ingress ACL (Alaa Hleihel) [1724336] - [netdrv] mlx5: Get vport ACL namespace by vport index (Alaa Hleihel) [1724336] - [kernel] mlx5: Introduce vport metadata matching bits and enum constants (Alaa Hleihel) [1724336] - [netdrv] mlx5: Convert mkey_table to XArray (Alaa Hleihel) [1724308 1724307 1724336] - [infiniband] rdma/mlx5: Refactor MR descriptors allocation (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Use PA mapping for PI handover (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Improve PI handover performance (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Remove unused IB_WR_REG_SIG_MR code (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Enable decap and packet reformat on FDB (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Consider eswitch encap mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: add missing void argument to function mlx5_devlink_alloc (Alaa Hleihel) [1724336] - [kernel] mlx5: Expose eswitch encap mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: Declare more strictly devlink encap mode (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: use indirect calls wrapper for the rx packet handler (Alaa Hleihel) [1724336] - [netdrv] mlx5e: use indirect calls wrapper for skb allocation (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report devlink health on FW fatal issues (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add support for FW fatal reporter dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add fw fatal devlink_health_reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report devlink health on FW issues (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add support for FW reporter dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: Create FW devlink_health_reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Issue SW reset on FW assert (Alaa Hleihel) [1724336] - [netdrv] mlx5: Control CR-space access by different PFs (Alaa Hleihel) [1724336] - [netdrv] mlx5: Handle SW reset of FW in error flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add Crdump support (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add Vendor Specific Capability access gateway (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move all devlink related functions calls to devlink.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add EQ enable/disable API (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Use a single IRQ for all async EQs (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Rename mlx5_irq_info to mlx5_irq (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move all IRQ logic to pci_irq.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: Generalize IRQ interface to work with irq_table (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ table creation from EQ table creation (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move IRQ affinity set to IRQ allocation phase (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move IRQ rmap creation to IRQ allocation phase (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ data from EQ table data (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ request/free from EQ life cycle (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Change interrupt handler to call chain notifier (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Introduce EQ polling budget (Alaa Hleihel) [1724336] - [netdrv] mlx5: Support querying max VFs from device (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Return raw output for query esw functions (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Handle representors creation in handler context (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Increase wait time for fw initialization (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move firmware flash implementation to devlink (Alaa Hleihel) [1724336] - [netdrv] mlx5e: TX, Improve performance under GSO workload (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Use termination table for VLAN push actions (Alaa Hleihel) [1722647 1724327 1724336] - [netdrv] mlx5e: Geneve, Add support for encap/decap flows offload (Alaa Hleihel) [1725582 1724336] - [netdrv] mlx5e: Rearrange tc tunnel code in a modular way (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Geneve, Keep tunnel info as pointer to the original struct (Alaa Hleihel) [1724336] - [netdrv] mlx5: Geneve, Manage Geneve TLV options (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Enable setting multiple match criteria for flow group (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Allow matching only enc_key_id/enc_dst_port for decapsulation action (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Generalize vport type in vport representor (Alaa Hleihel) [1724336] - [netdrv] {ib, net}/mlx5: Constify rep ops functions pointers (Alaa Hleihel) [1724327 1724336] - [netdrv] {ib, net}/mlx5: No need to typecast from void* to mlx5_ib_dev* (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Honor eswitch functions changed event cap (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Replace host_params event with functions_changed event (Alaa Hleihel) [1724327 1724336] - [kernel] mlx5: Introduce termination table bits (Alaa Hleihel) [1722647 1724336] - [kernel] mlx5: Add core dump register access HW bits (Alaa Hleihel) [1724336] - [netdrv] mlx5: potential error pointer dereference in error handling (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Support tagged tunnel over bond (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Avoid detaching non-existing netdev under switchdev mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix source port matching in fdb peer flow rule (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace reciprocal_scale in TX select queue function (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid reloading already removed devices (Alaa Hleihel) [1724335] - [netdrv] mlx5: Update pci error handler entries and command translation (Alaa Hleihel) [1724335] - [infiniband] mlx5: avoid 64-bit division (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Disable rxhash when CQE compress is enabled (Alaa Hleihel) [1724335] - [netdrv] mlx5e: restrict the real_dev of vlan device is the same as uplink device (Alaa Hleihel) [1724335] - [netdrv] mlx5: Allocate root ns memory using kzalloc to match kfree (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid double free in fs init error unwinding path (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid double free of root ns in the error flow path (Alaa Hleihel) [1724335] - [netdrv] mlx5: Fix error handling in mlx5_load() (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix possible modify header actions memory leak (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix no rewrite fields with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Additional check for flow destination comparison (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Add missing ethtool driver info for representors (Alaa Hleihel) [1766306 1724335] - [netdrv] mlx5e: Fix number of vports for ingress ACL configuration (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled (Alaa Hleihel) [1724335] - [netdrv] mlx5: Fix peer pf disable hca command (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Correct type to u16 for vport_num and int for vport_index (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add meaningful return codes to status_to_err function (Alaa Hleihel) [1724335] - [netdrv] mlx5: Imply MLXFW in mlx5_core (Alaa Hleihel) [1724335] - [netdrv] mlx5: Set completion EQs as shared resources (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Verify DEVX general object type correctly (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Remove MAYEXEC flag (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Device resource control for privileged DEVX user (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Add steering SW ICM device memory type (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Warn on allocated MEMIC buffers during cleanup (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Support device memory type attribute (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Add missing XRC options to QP optional params mask (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Use atomic rep state to serialize state change (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Fix the check of legal vport (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Use getter to access all vport array (Alaa Hleihel) [1724335] - [netdrv] mlx5: Use available mlx5_vport struct (Alaa Hleihel) [1724335] - [netdrv] mlx5: Reuse mlx5_esw_for_each_vf_vport macro in two files (Alaa Hleihel) [1724335] - [netdrv] mlx5: Remove unused mlx5_query_nic_vport_vlans (Alaa Hleihel) [1724335] - [netdrv] mlx5e: remove meaningless CFLAGS_tracepoint.o (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Put the common XDP code into a function (Alaa Hleihel) [1724335] - [netdrv] mlx5e: ethtool, Add support for EEPROM high pages query (Alaa Hleihel) [1724322 1724335] - [netdrv] mlx5e: Return error when trying to insert existing flower filter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace TC VLAN pop with VLAN 0 rewrite in prio tag mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: ACLs for priority tag mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Turn on HW tunnel offload in all TIRs (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Take common TIR context settings into a function (Alaa Hleihel) [1724335] - [kernel] mlx5: Fix broken hca cap offset (Alaa Hleihel) [1725554 1724335] - [kernel] mlx5: Geneve, Add flow table capabilities for Geneve decap with TLV options (Alaa Hleihel) [1725554 1724335] - [kernel] mlx5: Geneve, Add basic Geneve encap/decap flow table capabilities (Alaa Hleihel) [1725554 1724335] - [netdrv] mlx5: Eswitch, enable RoCE loopback traffic (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add new miss flow table action (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add support in RDMA RX steering (Alaa Hleihel) [1724335] - [netdrv] mlx5: Pass flow steering objects to fs_cmd (Alaa Hleihel) [1724335] - [netdrv] mlx5: Enable general events on all interfaces (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Restrict 'DELAY_DROP_TIMEOUT' subtype to Ethernet interfaces (Alaa Hleihel) [1724335] - [netdrv] mlx5: Separate and generalize dma device from pci device (Alaa Hleihel) [1724335] - [netdrv] mlx5: Get rid of storing copy of device name (Alaa Hleihel) [1724335] - [kernel] mlx5: e-switch: Introduce prio tag mode (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Expose TIR ICM address to user space (Alaa Hleihel) [1724335] - [netdrv] mlx5: Introduce new TIR creation core API (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose TIR ICM address in command outbox (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose SW ICM related device memory capabilities (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Use #define for the WQE wait timeout constant (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused rx_page_reuse stat (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Take HW interrupt trigger into a function (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused parameter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Add an underflow warning comment (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Move parameter calculation functions to en/params.c (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Report mlx5e_xdp_set errors (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused parameter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Inline small packets into the TX MPWQE in XDP xmit flow (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Add TX MPWQE session counter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Enhance RQ indication for XDP redirect flush (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Fix shifted flag index in RQ bitmap (Alaa Hleihel) [1724335] - [netdrv] mlx5e: RX, Support multiple outstanding UMR posts (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Don't create IB representors when in multiport RoCE mode (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Initialize roce port info before multiport master init (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Allow DEVX and raw creation flow on reps (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Add query e-switch vport context to devx white list (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Allow inserting a steering rule to the FDB (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Create flow table with max size supported (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Access the prio bypass inside the FDB flow table namespace (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Check for error return in flow_rule rather than err (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Remove VF representor profile (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move to single device multiport ports in switchdev mode (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move SMI caps logic (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Refactor netdev affinity code (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move default representors SQ steering to rule to modify QP (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move rep into port struct (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Use correct size for device resources (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move ports allocation to outside of INIT stage (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Free IB device on remove (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move netdev info into the port struct (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, add a new prio to be used by the RDMA side (Alaa Hleihel) [1724335] - [kernel] mlx5: E-Switch, don't use hardcoded values for FDB prios (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Remove references to uboject->context (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Unify logic of MTU boundaries (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Obsolete param field holding a constant value (Alaa Hleihel) [1724335] - [netdrv] mlx5: A write memory barrier is sufficient in EQ ci update (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Do not rewrite fields with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Offload TC e-switch rules with ingress VLAN device (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Offload TC e-switch rules with egress VLAN device (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Allow VLAN rewrite of prio field with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Deny VLAN rewrite if there is no VLAN header match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Use helpers to get headers criteria and value pointers (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Return -EOPNOTSUPP when attempting to offload an unsupported action (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Deletes unnecessary setting of esw_attr->parse_attr (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove 'parse_attr' argument in parse_tc_fdb_actions() (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Make the log friendly when decapsulation offload not supported (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Fix double mutex initialization (Alaa Hleihel) [1724335] - [netdrv] mlx5: Handle event of power detection in the PCIE slot (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Cleanup WQE page fault handler (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose MPEIN (Management PCIE INfo) register layout (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add rate limit print macros (Alaa Hleihel) [1724335] - [infiniband] mlx5: Add explicit bar address field (Alaa Hleihel) [1724335] - [netdrv] mlx5: Replace dev_err/warn/info by mlx5_core_err/warn/info (Alaa Hleihel) [1724335] - [netdrv] mlx5: Use dev->priv.name instead of dev_name (Alaa Hleihel) [1724335] - [netdrv] mlx5: Make mlx5_core messages independent from mdev->pdev (Alaa Hleihel) [1724335] - [netdrv] mlx5: Break load_one into three stages (Alaa Hleihel) [1724335] - [netdrv] mlx5: Function setup/teardown procedures (Alaa Hleihel) [1724335] - [netdrv] mlx5: Move health and page alloc init to mdev_init (Alaa Hleihel) [1724335] - [netdrv] mlx5: Split mdev init and pci init (Alaa Hleihel) [1724335] - [netdrv] mlx5: Remove redundant init functions parameter (Alaa Hleihel) [1724335] - [kernel] mlx5: Remove spinlock support from mlx5_write64 (Alaa Hleihel) [1724335] - [kernel] mlx5: Remove unused MLX5_*_DOORBELL_LOCK macros (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Declare devx_async_cmd_event_fops static (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Compare only index part of a memory window rkey (Alaa Hleihel) [1724335] - [infiniband] mlx5: Convert mlx5_srq_table to XArray (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace TC VLAN pop and push actions with VLAN modify (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: Support VLAN modify action (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: Add VLAN ID rewrite fields (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: TX, Add geneve tunnel stateless offload support (Alaa Hleihel) [1722661 1724335] - [netdrv] mlx5e: Take SW parser code to a separate function (Alaa Hleihel) [1722661 1724335] - [netdrv] mlx5e: Fix port buffer function documentation format (Alaa Hleihel) [1724335] - [netdrv] mlx5: Simplify mlx5_sriov_is_enabled() by using pci core API (Alaa Hleihel) [1724335] - [netdrv] mlx5: Rename total_vfs to total_vports (Alaa Hleihel) [1724335] - [netdrv] mlx5: Simplify sriov enable/disable flow (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Use rdma_user_map_io for mapping BAR pages (Alaa Hleihel) [1724333] - [netdrv] mlx5e: ethtool, Remove unsupported SFP EEPROM high pages query (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Switch to Toeplitz RSS hash by default (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Protect against non-uplink representor for encap (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Rx, Fixup skb checksum for packets with tail padding (Alaa Hleihel) [1724333] - [netdrv] mlx5e: XDP, Avoid checksum complete when XDP prog is loaded (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Use fail-safe channels reopen in tx reporter recover (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Skip un-needed tx recover if interface state is down (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update xon formula (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update xoff formula (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, fix syndrome (0x678139) when turn on vepa (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5: E-Switch, Protect from invalid memory access in offload fdb table (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Fix access to invalid memory when toggling esw modes (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5e: Add a lock on tir list (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix error handling when refreshing TIRs (Alaa Hleihel) [1724333] - [netdrv] mlx5: Decrease default mr cache size (Alaa Hleihel) [1748518 1724333] - [infiniband] ib/mlx5: Reset access mask when looping inside page fault handler (Alaa Hleihel) [1724333] - [netdrv] mlx5: Avoid panic when setting vport rate (Alaa Hleihel) [1724333] - [netdrv] mlx5: Avoid panic when setting vport mac, getting vport config (Alaa Hleihel) [1724333] - [netdrv] mlx5e: IPoIB, Fix RX checksum statistics update (Alaa Hleihel) [1724333] - [netdrv] mlx5: Remove redundant lag function to get pf num (Alaa Hleihel) [1724333] - [netdrv] mlx5: ODP support for XRC transport is not enabled by default in FW (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update tx reporter status in case channels were successfully opened (Alaa Hleihel) [1722274 1724333] - [netdrv] mellanox: Switch to bitmap_zalloc() (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Set correct write permissions for implicit ODP MR (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Declare mlx5e_tx_reporter_recover_from_ctx as static (Alaa Hleihel) [1724333] - [netdrv] mlx5: Support ndo bridge_setlink and getlink (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5: E-Switch, Add support for VEPA in legacy mode (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5e: Fix mlx5e_tx_reporter_create return value (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix return status of TX reporter timeout recover (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Re-add support for TX timeout when TX reporter is not valid (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix warn print in case of TX reporter creation failure (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Disable esw manager vport correctly (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Fix the warning on vport index out of range (Alaa Hleihel) [1724333] - [netdrv] mlx5: Delete unused FPGA QPN variable (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Wrap the open and apply of channels in one fail-safe function (Alaa Hleihel) [1724333] - [netdrv] mlx5: Factor out HCA capabilities functions (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Allow transition to offloads mode for ECPF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Load/unload VF reps according to event from host PF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Consider ECPF vport depends on eswitch ownership (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Assign a different position for uplink rep and vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Centralize repersentor reg/unreg to eswitch driver (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Support load/unload reps of specific vport types (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Add state to eswitch vport representors (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Use getter and iterator to access vport/rep (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Split VF and special vports for offloads mode (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Refactor offloads flow steering init/cleanup (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Properly refer to host PF vport as other vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Properly refer to the esw manager vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: Correctly set LAG mode for ECPF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Avoid magic numbers when initializing offloads mode (Alaa Hleihel) [1724333] - [kernel] mlx5: Relocate vport macros to the vport header file (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Normalize the name of uplink vport number (Alaa Hleihel) [1724333] - [kernel] mlx5: Provide an alternative VF upper bound for ECPF (Alaa Hleihel) [1724333] - [kernel] mlx5: Add host params change event (Alaa Hleihel) [1724333] - [kernel] mlx5: Add query host params command (Alaa Hleihel) [1724333] - [netdrv] mlx5: Update enable HCA dependency (Alaa Hleihel) [1724333] - [netdrv] mlx5: Introduce Mellanox SmartNIC and modify page management logic (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Use unified register/load function for uplink and VF vports (Alaa Hleihel) [1724333] - [netdrv] mlx5: Use consistent vport num argument type (Alaa Hleihel) [1724333] - [kernel] mlx5: Use void pointer as the type in address_of macro (Alaa Hleihel) [1724333] - [netdrv] mlx5: Align ODP capability function with netdev coding style (Alaa Hleihel) [1724333] - [netdrv] mlx5: use RCU lock in mlx5_eq_cq_get() (Alaa Hleihel) [1724333] - [infiniband] rdma/mlx5: Fix memory leak in case we fail to add an IB device (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Simplify WQE count power of two check (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Add tx timeout support for mlx5e tx reporter (Alaa Hleihel) [1722274 1724333] - [netdrv] mlx5e: Add tx reporter support (Alaa Hleihel) [1722274 1724333] - [infiniband] ib/mlx5: Advertise XRC ODP support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Advertise SRQ ODP support for supported transports (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Add ODP SRQ support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Let read user wqe also from SRQ buffer (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Add XRC initiator ODP support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Clean mlx5_ib_mr_responder_pfault_handler() signature (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Remove useless check in ODP handler (Alaa Hleihel) [1724333] - [netdrv] mlx5: Set ODP SRQ support in firmware (Alaa Hleihel) [1724333] - [kernel] mlx5: Add XRC transport to ODP device capabilities layout (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Implement DEVX hot unplug for async command FD (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Implement the file ops of DEVX async command FD (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Reuse fold sw stats in representors (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Present the representors SW stats when state is not opened (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Separate between ethtool and netdev software stats folding (Alaa Hleihel) [1724333] - [netdrv] mlx5: Add trace points for flow tables create/destroy (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Expand XPS cpumask to cover all online cpus (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Take CQ decompress fields into a separate structure (Alaa Hleihel) [1724333] - [netdrv] mlx5e: RX, Make sure packet header does not cross page boundary (Alaa Hleihel) [1724333] - [infiniband] mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1724333] - [netdrv] mlx5: Add pci AtomicOps request (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Don't override existing ip_protocol (Alaa Hleihel) [1724333] - [infiniband] rdma/mlx5: Replace kzalloc with kcalloc (Alaa Hleihel) [1724333] - [documentation] netfilter: doc: Add nf_tables part in tproxy.txt (Phil Sutter) [1762977] - [net] netfilter: nft_socket: fix erroneous socket assignment (Phil Sutter) [1762977] - [net] netfilter: nft_socket: Break evaluation if no socket found (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Fix missing-braces warning (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Add missing config check (Phil Sutter) [1762977] - [net] netfilter: nf_tables: Add native tproxy support (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Move nf_tproxy_assign_sock() to nf_tproxy.h (Phil Sutter) [1762977] - [net] sched: ensure opts_len <= IP_TUNNEL_OPTS_MAX in act_tunnel_key (Ivan Vecera) [1774706] - [net] ipmr: Fix skb headroom in ipmr_get_route(). (Guillaume Nault) [1773692] - [net] netns: fix GFP flags in rtnl_net_notifyid() (Guillaume Nault) [1763661] - [net] netns: fix NLM_F_ECHO mechanism for RTM_NEWNSID (Guillaume Nault) [1763661] - [netdrv] ptp: ptp_clock: Publish scaled_ppm_to_ppb (Ivan Vecera) [1772085] - [kernel] rh_features: move rh_features entry to sys/kernel (Hangbin Liu) [1660583] - [net] netfilter: nf_tables: Make nft_meta expression more robust (Phil Sutter) [1725169] - [tools] selftests/tls: add test for concurrent recv and send (Sabrina Dubroca) [1760375] - [net] tls: add a TX lock (Sabrina Dubroca) [1760375] - [net] tls: don't pay attention to sk_write_pending when pushing partial records (Sabrina Dubroca) [1760375] - [net] tls: fix sk_msg trim on fallback to copy mode (Sabrina Dubroca) [1760375] - [net] tls: align non temporal copy to cache lines (Sabrina Dubroca) [1760375] - [net] tls: remove the record tail optimization (Sabrina Dubroca) [1760375] - [net] tls: use RCU for the adder to the offload record list (Sabrina Dubroca) [1760375] - [net] tls: unref frags in order (Sabrina Dubroca) [1760375] - [net] tcp: ulp: fix possible crash in tcp_diag_get_aux_size() (Sabrina Dubroca) [1760375] - [net] tls: dedup the record cleanup (Sabrina Dubroca) [1760375] - [net] tls: clean up the number of #ifdefs for CONFIG_TLS_DEVICE (Sabrina Dubroca) [1760375] - [net] tls: narrow down the critical area of device_offload_lock (Sabrina Dubroca) [1760375] - [net] tls: don't jump to return (Sabrina Dubroca) [1760375] - [net] tls: export protocol version, cipher, tx_conf/rx_conf to socket diag (Sabrina Dubroca) [1760375] - [net] tcp: ulp: add functions to dump ulp-specific information (Sabrina Dubroca) [1760375] - [net] tls: use RCU protection on icsk->icsk_ulp_data (Sabrina Dubroca) [1760375] - [net] core/skmsg: Delete an unnecessary check before the function call "consume_skb" (Sabrina Dubroca) [1760375] - [net] tls, fix sk_write_space NULL write when tx disabled (Sabrina Dubroca) [1760375] - [net] tls: swap sk_write_space on close (Sabrina Dubroca) [1760375] - [net] tls: prevent skb_orphan() from leaking TLS plain text with offload (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a litmus test for the socket reuse through shutdown (Sabrina Dubroca) [1760375] - [net] tls: partially revert fix transition through disconnect with close (Sabrina Dubroca) [1760375] - [documentation] TLS: fix stat counters description (Sabrina Dubroca) [1760375] - [tools] selftests/tls: fix TLS tests with CONFIG_TLS=n (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add shutdown tests (Sabrina Dubroca) [1760375] - [tools] selftests/tls: close the socket with open record (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a bidirectional test (Sabrina Dubroca) [1760375] - [tools] selftests/tls: test error codes around TLS ULP installation (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a test for ULP but no keys (Sabrina Dubroca) [1760375] - [net] bpf: sockmap/tls, close can race with map free (Sabrina Dubroca) [1760375] - [net] tls: fix transition through disconnect with close (Sabrina Dubroca) [1760375] - [net] tls: remove sock unlock/lock around strp_done() (Sabrina Dubroca) [1760375] - [net] tls: remove close callback sock unlock/lock around TX work flush (Sabrina Dubroca) [1760375] - [net] tls: don't call tls_sk_proto_close for hw record offload (Sabrina Dubroca) [1760375] - [net] tls: don't arm strparser immediately in tls_set_sw_offload() (Sabrina Dubroca) [1760375] - [net] tls: add missing prot info init (Sabrina Dubroca) [1760375] - [netdrv] mlx5: Return -EINVAL when WARN_ON_ONCE triggers in mlx5e_tls_resync(). (Sabrina Dubroca) [1760375] - [net] tls: don't clear TX resync flag on error (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add test for poll() with data in TLS ULP (Sabrina Dubroca) [1760375] - [net] tls: add kernel-driven resync mechanism for TX (Sabrina Dubroca) [1760375] - [net] tls: generalize the resync callback (Sabrina Dubroca) [1760375] - [net] tls: add kernel-driven TLS RX resync (Sabrina Dubroca) [1760375] - [net] tls: rename handle_device_resync() (Sabrina Dubroca) [1760375] - [net] tls: pass record number as a byte array (Sabrina Dubroca) [1760375] - [net] tls: simplify seq calculation in handle_device_resync() (Sabrina Dubroca) [1760375] - [net] tls: export TLS per skb encryption (Sabrina Dubroca) [1760375] - [include] net/tls: simplify driver context retrieval (Sabrina Dubroca) [1760375] - [include] net/tls: split the TLS_DRIVER_STATE_SIZE and bump TX to 16 bytes (Sabrina Dubroca) [1760375] - [net] tls: don't pass version to tls_advance_record_sn() (Sabrina Dubroca) [1760375] - [include] net/tls: reorganize struct tls_context (Sabrina Dubroca) [1760375] - [net] tls: use version from prot (Sabrina Dubroca) [1760375] - [net] tls: don't re-check msg decrypted status in tls_device_decrypted() (Sabrina Dubroca) [1760375] - [net] tls: don't look for decrypted frames on non-offloaded sockets (Sabrina Dubroca) [1760375] - [net] tls: remove false positive warning (Sabrina Dubroca) [1760375] - [net] tls: check return values from skb_copy_bits() and skb_store_bits() (Sabrina Dubroca) [1760375] - [net] tls: fully initialize the msg wrapper skb (Sabrina Dubroca) [1760375] - [net] tls: replace the sleeping lock around RX resync with a bit lock (Sabrina Dubroca) [1760375] - [net] revert "net/tls: avoid NULL-deref on resync during device removal" (Sabrina Dubroca) [1760375] - [net] tls: avoid NULL-deref on resync during device removal (Sabrina Dubroca) [1760375] - [net] tls: Add support of AES128-CCM based ciphers (Sabrina Dubroca) [1760375] - [documentation] add TLS offload documentation (Sabrina Dubroca) [1760375] - [documentation] tls: RSTify the ktls documentation (Sabrina Dubroca) [1760375] - [net] xdp: increase kABI version (Jiri Benc) [1749817] - [tools] selftests: bpf: disable test_seg6_loop test (Jiri Benc) [1749817] - [tools] selftests: bpf: fix test_tc_tunnel hanging (Jiri Benc) [1749817] - [tools] selftests: bpf: xdping is not meant to be run standalone (Jiri Benc) [1749817] - [tools] libbpf: Use implicit XSKMAP lookup from AF_XDP XDP program (Jiri Benc) [1749817] - [lib] bpf, testing: Introduce 'gso_linear_no_head_frag' skb_segment test (Jiri Benc) [1749817] - [lib] bpf, testing: Refactor test_skb_segment() for testing skb_segment() on different skbs (Jiri Benc) [1749817] - [tools] selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt (Jiri Benc) [1749817] - [tools] selftests/bpf: test_progs: fix client/server race in tcp_rtt (Jiri Benc) [1749817] - [net] flow_dissector: Fix potential use-after-free on BPF_PROG_DETACH (Jiri Benc) [1749817] - [tools] selftests/bpf: fix race in test_tcp_rtt test (Jiri Benc) [1749817] - [net] xdp: unpin xdp umem pages in error path (Jiri Benc) [1749817] - [net] sock: make cookie generation global instead of per netns (Jiri Benc) [1749817] - [net] bpfilter: add "WITH Linux-syscall-note" to SPDX tag of uapi headers (Jiri Benc) [1749817] - [net] bpf: sockmap, only create entry if ulp is not already enabled (Jiri Benc) [1749817] - [net] bpf: sockmap, synchronize_rcu before free'ing map (Jiri Benc) [1749817] - [net] bpf: sockmap, sock_map_delete needs to use xchg (Jiri Benc) [1749817] - [net] core: page_pool: add user refcnt and reintroduce page_pool_destroy (Jiri Benc) [1749817] - [net] bpf: avoid unused variable warning in tcp_bpf_rtt() (Jiri Benc) [1749817] - [net] xdp: fix potential deadlock on socket mutex (Jiri Benc) [1749817] - [net] bpfilter: print umh messages to /dev/kmsg (Jiri Benc) [1749817] - [net] xdp: fix possible cq entry leak (Jiri Benc) [1749817] - [net] xdp: fix race on generic receive path (Jiri Benc) [1749817] - [samples] bpf: fix tcp_bpf.readme detach command (Jiri Benc) [1749817] - [samples] bpf: add sample program that periodically dumps TCP stats (Jiri Benc) [1749817] - [tools] selftests/bpf: test BPF_SOCK_OPS_RTT_CB (Jiri Benc) [1749817] - [tools] bpf/tools: sync bpf.h (Jiri Benc) [1749817] - [net] bpf: add icsk_retransmits to bpf_tcp_sock (Jiri Benc) [1749817] - [net] bpf: add dsack_dups/delivered{, _ce} to bpf_tcp_sock (Jiri Benc) [1749817] - [net] bpf: split shared bpf_tcp_sock and bpf_sock_ops implementation (Jiri Benc) [1749817] - [net] bpf: add BPF_CGROUP_SOCK_OPS callback that is executed on every RTT (Jiri Benc) [1749817] - [net] init/kconfig: add CONFIG_CC_CAN_LINK (Jiri Benc) [1749817] - [net] page_pool: add helper function for retrieving dma direction (Jiri Benc) [1749817] - [net] xdp: fix hang while unregistering device bound to xdp socket (Jiri Benc) [1749817] - [net] xdp: hold device for umem regardless of zero-copy mode (Jiri Benc) [1749817] - [net] xsk: Change the default frame size to 4096 and allow controlling it (Jiri Benc) [1749817] - [tools] libbpf: Support getsockopt XDP_OPTIONS (Jiri Benc) [1749817] - [net] xsk: Add getsockopt XDP_OPTIONS (Jiri Benc) [1749817] - [net] xsk: Add API to check for available entries in FQ (Jiri Benc) [1749817] - [net] xsk: Properly terminate assignment in xskq_produce_flush_desc (Jiri Benc) [1749817] - [net] xdp: Make __mem_id_disconnect static (Jiri Benc) [1749817] - [net] xsk: sample kernel code is now in libbpf (Jiri Benc) [1749817] - [net] page_pool: fix compile warning when CONFIG_PAGE_POOL is disabled (Jiri Benc) [1749817] - [net] page_pool: make sure struct device is stable (Jiri Benc) [1749817] - [net] page_pool: add tracepoints for page_pool with details need by XDP (Jiri Benc) [1749817] - [net] xdp: add tracepoints for XDP mem (Jiri Benc) [1749817] - [net] xdp: force mem allocator removal and periodic warning (Jiri Benc) [1749817] - [net] xdp: tracking page_pool resources and safe removal (Jiri Benc) [1749817] - [netdrv] mlx5: more strict use of page_pool API (Jiri Benc) [1749817] - [net] page_pool: introduce page_pool_free and use in mlx5 (Jiri Benc) [1749817] - [net] veth: use xdp_release_frame for XDP_PASS (Jiri Benc) [1749817] - [net] xdp: page_pool related fix to cpumap (Jiri Benc) [1749817] - [net] xdp: fix leak of IDA cyclic id if rhashtable_insert_slow fails (Jiri Benc) [1749817] - [net] page_pool: add helper function to unmap dma addresses (Jiri Benc) [1749817] - [net] page_pool: add helper function to retrieve dma addresses (Jiri Benc) [1749817] - [net] page_pool: use DMA_ATTR_SKIP_CPU_SYNC for DMA mappings (Jiri Benc) [1749817] - [net] page_pool: don't use page->private to store dma_addr_t (Jiri Benc) [1749817] - [mm] add dma_addr_t to struct page (Jiri Benc) [1749817] - [tools] bpf: Sync asm-generic/socket.h to tools/ (Jiri Benc) [1749817] - [net] bpf: net: Add SO_DETACH_REUSEPORT_BPF (Jiri Benc) [1749817] - [net] veth: Support bulk XDP_TX (Jiri Benc) [1749817] - [net] flow_dissector: remove unused FLOW_DISSECTOR_F_STOP_AT_L3 flag (Jiri Benc) [1749817] - [tools] selftests/bpf: fix compilation error for flow_dissector.c (Jiri Benc) [1749817] - [net] bpf: Update BPF_CGROUP_RUN_PROG_INET_EGRESS calls (Jiri Benc) [1749817] - [net] signal/bpfilter: Fix bpfilter_kernl to use send_sig not force_sig (Jiri Benc) [1749817] - [net] arch: Use asm-generic/socket.h when possible (Jiri Benc) [1749817] - [net] flow_dissector: correct comments on enum flow_dissector_key_id (Jiri Benc) [1749817] - [net] tcp: add stat of data packet reordering events (Jiri Benc) [1749817] - [net] tcp: add dsack blocks received stats (Jiri Benc) [1749817] - [net] tcp: add data bytes retransmitted stats (Jiri Benc) [1749817] - [net] tcp: add data bytes sent stats (Jiri Benc) [1749817] - [net] tcp: add a helper to calculate size of opt_stats (Jiri Benc) [1749817] - [net] netfilter: Support iif matches in POSTROUTING (Phil Sutter) [1775961] - [tools] selftests: add basic netdevsim devlink flash testing (Petr Oros) [1770359] - [netdrv] netdevsim: implement fake flash updating with notifications (Petr Oros) [1770359] - [net] devlink: allow driver to update progress of flash update (Petr Oros) [1770359] - [net] devlink: Add extack to shared buffer operations (Petr Oros) [1770347] - [net] xfrm: policy: avoid warning splat when merging nodes (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix bydst hlist corruption on hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix infinite loop when merging src-nodes (Sabrina Dubroca) [1758100] - [tools] selftests: xfrm: alter htresh to trigger move of policies to hash table (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix reinsertion on node merge (Sabrina Dubroca) [1758100] - [net] xfrm: policy: delete inexact policies from inexact list on hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: use hlist rcu variants on inexact insert, part 2 (Sabrina Dubroca) [1758100] - [tools] selftests: xfrm: add block rules with adjacent/overlapping subnets (Sabrina Dubroca) [1758100] - [net] xfrm: policy: remove set but not used variable 'priority' (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix policy hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix netlink/pf_key policy lookups (Sabrina Dubroca) [1758100] - [net] xfrm: policy: add 2nd-level saddr trees for inexact policies (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in a tree ordered by source address (Sabrina Dubroca) [1758100] - [net] xfrm: policy: check reinserted policies match their node (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in a tree ordered by destination address (Sabrina Dubroca) [1758100] - [net] xfrm: policy: add inexact policy search tree infrastructure (Sabrina Dubroca) [1758100] - [net] xfrm: policy: consider if_id when hashing inexact policy (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in an rhashtable (Sabrina Dubroca) [1758100] - [net] xfrm: policy: return NULL when inexact search needed (Sabrina Dubroca) [1758100] - [net] xfrm: policy: split list insertion into a helper (Sabrina Dubroca) [1758100] - [net] xfrm: security: iterate all, not inexact lists (Sabrina Dubroca) [1758100] - [tools] selftests: add xfrm policy test script (Sabrina Dubroca) [1758100] - [net] af_packet: fix the tx skb protocol in raw sockets with ETH_P_ALL (Ivan Vecera) [1765561] - [netdrv] mlx5e: Trust kernel regarding transport offset (Ivan Vecera) [1765561] - [netdrv] net/mlx5e: Remove the wrong assumption about transport offset (Ivan Vecera) [1765561] - [net] packet: Remove redundant skb->protocol set (Ivan Vecera) [1765561] - [net] packet: Ask driver for protocol if not provided by user (Ivan Vecera) [1765561] - [net] ethernet: Add parse_protocol header_ops support (Ivan Vecera) [1765561] - [include] net: Introduce parse_protocol header_ops callback (Ivan Vecera) [1765561] - [net] Don't set transport offset to invalid value (Ivan Vecera) [1765561] - [netdrv] Fix Kconfig indentation (Josef Oskera) [1764592] - [netdrv] be2net: make two arrays static const, makes object smaller (Josef Oskera) [1764592] - [netdrv] be2net: eliminate enable field from be_aic_obj (Josef Oskera) [1764592] - [netdrv] Use skb_frag_off accessors (Josef Oskera) [1764592] - [netdrv] Use skb accessors in network drivers (Josef Oskera) [1764592] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 (Josef Oskera) [1764592] - [netdrv] treewide: Add SPDX license identifier - Makefile/Kconfig (Josef Oskera) [1764592] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Josef Oskera) [1764592] - [documentation] networking: switchdev: Update port parent ID section (Ivan Vecera) [1757840] - [net] Get rid of SWITCHDEV_ATTR_ID_PORT_PARENT_ID (Ivan Vecera) [1757840] - [net] dsa: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [drivers] staging: fsl-dpaa2: ethsw: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] mscc: ocelot: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] net/mlx5e: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] liquidio: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [net] tipc: fix unlimited bundling of small messages (Jon Maloy) [1761969] - [net] tipc: clean up skb list lock handling on send path (Jon Maloy) [1761969] - [net] tipc: fix false detection of retransmit failures (Jon Maloy) [1761969] - [net] tipc: reduce risk of wakeup queue starvation (Jon Maloy) [1761969] - [net] tipc: fix changeover issues due to large packet (Jon Maloy) [1761969] - [net] tipc: optimize link synching mechanism (Jon Maloy) [1761969] - [net] tipc: Fix a typo (Jon Maloy) [1761969] - [net] tipc: use rcu dereference functions properly (Jon Maloy) [1761969] - [net] tipc: remove ub->ubsock checks (Jon Maloy) [1761969] - [net] tipc: embed jiffies in macro TIPC_BC_RETR_LIM (Jon Maloy) [1761969] - [net] tipc: add dst_cache support for udp media (Jon Maloy) [1761969] - [net] tipc: rename function msg_get_wrapped() to msg_inner_hdr() (Jon Maloy) [1761969] - [net] tipc: eliminate unnecessary skb expansion during retransmission (Jon Maloy) [1761969] - [net] tipc: simplify stale link failure criteria (Jon Maloy) [1761969] - [net] tipc: check msg->req data len in tipc_nl_compat_bearer_disable (Jon Maloy) [1761969] - [net] tipc: remove the unnecessary msg->req check from tipc_nl_compat_bearer_set (Jon Maloy) [1761969] - [net] tipc: fix issues with early FAILOVER_MSG from peer (Jon Maloy) [1761969] - [net] tipc: include retrans failure detection for unicast (Jon Maloy) [1761969] - [net] tipc: purge deferredq list for each grp member in tipc_group_delete (Jon Maloy) [1761969] - [net] devlink: remove redundant rtnl lock assert (Marcelo Leitner) [1774694]- [gpu] drm/i915/aml: Allow SPT PCH for all AML devices (Lyude Paul) [1761469 1731110] - [gpu] drm/i915/cml: Add second PCH ID for CMP (Lyude Paul) [1731110] - [drm] i915/cml: Add Missing PCI IDs (Lyude Paul) [1727949 1731110] - [gpu] DRM Backport 5.2 -> 5.3 (Lyude Paul) [1731110] - [xen] mm/pgtable: drop pgtable_t variable from pte_fn_t functions (Lyude Paul) [1731110] - [gpu] DRM Backport 5.1 -> 5.2 (Lyude Paul) [1731110] - [s390] bus_find_device: Unify the match callback with class_find_device (Lyude Paul) [1731110] - [kernel] i2c: algo-bit: include main i2c header (Lyude Paul) [1731110] - [extcon] axp288: Add a depends on ACPI to the Kconfig entry (Lyude Paul) [1731110] - [extcon] axp288: Convert to use acpi_dev_get_first_match_dev() (Lyude Paul) [1731110] - [acpi] gpio: merrifield: Fix build err without CONFIG_ACPI (Lyude Paul) [1731110] - [gpio] merrifield: Convert to use acpi_dev_get_first_match_dev() (Lyude Paul) [1731110] - [kernel] proc/sysctl: add shared variables for range check (Lyude Paul) [1731110] - [gpu] drm/i915: Split Pineview device info into desktop and mobile (Lyude Paul) [1731110] - [gpu] snd/hda, drm/i915: Track the display_power_status using a cookie (Lyude Paul) [1731110] - [video] hdmi: Dropped static functions from kernel doc (Lyude Paul) [1731110] - [video] hdmi: Add Unpack function for DRM infoframe (Lyude Paul) [1731110] - [video] drm: Enable HDR infoframe support (Lyude Paul) [1731110] - [kernel] drm: Add HDR source metadata property (Lyude Paul) [1731110] - [gpu] drm: Add colorspace info to AVI Infoframe (Lyude Paul) [1731110] - [gpu] drm: Add HDMI colorspace property (Lyude Paul) [1731110] - [kernel] video/hdmi: Add an enum for HDMI packet types (Lyude Paul) [1731110] - [video] hdmi: Constify infoframe passed to the pack functions (Lyude Paul) [1731110] - [video] hdmi: Constify infoframe passed to the log functions (Lyude Paul) [1731110] - [video] hdmi: Pass buffer size to infoframe unpack functions (Lyude Paul) [1731110] - [video] hdmi: Constify 'buffer' to the unpack functions (Lyude Paul) [1731110] - [video] media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC (Lyude Paul) [1731110] - [media] replace ADOBERGB by OPRGB (Lyude Paul) [1731110] - [dma-buf] add show_fdinfo handler (Lyude Paul) [1731110] - [dma-buf] dma-fence: Signal all callbacks from dma_fence_release() (Lyude Paul) [1731110] - [dma-buf] udmabuf: actually unmap the scatterlist (Lyude Paul) [1731110] - [dma-buf] Make mmap callback actually optional (Lyude Paul) [1731110] - [dma-buf] Remove unused sync_dump() (Lyude Paul) [1731110] - [kernel] dma-buf: explicitely note that dma-fence-chains use 64bit seqno (Lyude Paul) [1731110] - [dma-buf] fix stack corruption in dma_fence_chain_release (Lyude Paul) [1731110] - [dma-buf] add new dma_fence_chain container v7 (Lyude Paul) [1731110] - [dma-buf] add some lockdep asserts to the reservation object implementation (Lyude Paul) [1731110] - [iommu] arm-smmu-v3: Fix build error without CONFIG_PCI_ATS (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Avoid locking on invalidation path when not using ATS (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Fix ATC invalidation ordering wrt main TLBs (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Rework enabling/disabling of ATS for PCI masters (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Don't issue CMD_SYNC for zero-length invalidations (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Remove boolean bitfield for 'ats_enabled' flag (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Document ordering guarantees of command insertion (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Defer TLB invalidation until ->iotlb_sync() (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Reduce contention during command-queue insertion (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Operate directly on low-level queue where possible (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Move low-level queue fields out of arm_smmu_queue (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Drop unused 'q' argument from Q_OVF macro (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Separate s/w and h/w views of prod and cons indexes (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Pass struct iommu_iotlb_gather to ->tlb_add_page() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Pass struct iommu_iotlb_gather to ->unmap() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Remove unused ->tlb_sync() callback (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Replace ->tlb_add_flush() with ->tlb_add_page() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable-arm: Call ->tlb_flush_walk() and ->tlb_flush_leaf() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Hook up ->tlb_flush_walk() and ->tlb_flush_leaf() in drivers (Jerry Snitselaar) [1729845] - [kernel] iommu/io-pgtable: Introduce tlb_flush_walk() and tlb_flush_leaf() (Jerry Snitselaar) [1729845] - [iommu] Pass struct iommu_iotlb_gather to ->unmap() and ->iotlb_sync() (Jerry Snitselaar) [1729845] - [kernel] iommu: Introduce iommu_iotlb_gather_add_page() (Jerry Snitselaar) [1729845] - [kernel] iommu: Introduce struct iommu_iotlb_gather for batching TLB flushes (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Rename iommu_gather_ops to iommu_flush_ops (Jerry Snitselaar) [1729845] - [iommu] io-pgtable-arm: Remove redundant call to io_pgtable_tlb_sync() (Jerry Snitselaar) [1729845] - [kernel] iommu: Remove empty iommu_tlb_range_add() callback from iommu_ops (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Invalidate ATC when detaching a device (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Add support for PCI ATS (Jerry Snitselaar) [1729845] - [iommu] Introduce iotlb_sync_map callback (Jerry Snitselaar) [1742234] - [kernel] dma-mapping: fix page attributes for dma_mmap_* (Jerry Snitselaar) [1754727] - [kernel] dma-mapping: check pfn validity in dma_common_{mmap, get_sgtable} (Jerry Snitselaar) [1754727] - [kernel] swiotlb: checking whether swiotlb buffer is full with io_tlb_used (Jerry Snitselaar) [1754727] - [kernel] dma-direct: fix zone selection after an unaddressable CMA allocation (Jerry Snitselaar) [1754727] - [kernel] dma-contiguous: page-align the size in dma_free_contiguous() (Jerry Snitselaar) [1754727] - [kernel] dma-contiguous: do not overwrite align in dma_alloc_contiguous() (Jerry Snitselaar) [1754727] - [kernel] dma-mapping: fix panic caused by passing empty cma command line argument (Jerry Snitselaar) [1754727] - [iommu] dma: Handle SG length overflow better (Jerry Snitselaar) [1742234] - [iommu] dma: Handle MSI mappings separately (Jerry Snitselaar) [1742234] - [iommu] dma: Apply dma_{alloc, free}_contiguous functions (Jerry Snitselaar) [1742234] - [iommu] dma: Don't depend on CONFIG_DMA_DIRECT_REMAP (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_mmap (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_get_sgtable (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_alloc, part 2 (Jerry Snitselaar) [1742234] - [iommu] dma: Cleanup variable naming in iommu_dma_alloc (Jerry Snitselaar) [1742234] - [iommu] dma: Split iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Merge the CMA and alloc_pages allocation paths (Jerry Snitselaar) [1742234] - [iommu] dma: Don't remap CMA unnecessarily (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_alloc (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Remove __iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor the page array remapping allocator (Jerry Snitselaar) [1742234] - [iommu] dma: Factor out remapped pages lookup (Jerry Snitselaar) [1742234] - [iommu] dma: Squash __iommu_dma_{map, unmap}_page helpers (Jerry Snitselaar) [1742234] - [iommu] dma: Move domain lookup into __iommu_dma_{map, unmap} (Jerry Snitselaar) [1742234] - [iommu] dma: Move __iommu_dma_map (Jerry Snitselaar) [1742234] - [iommu] dma: Use for_each_sg in iommu_dma_alloc (Jerry Snitselaar) [1742234] - [clk] Make clk_bulk_get_all() return a valid "id" (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Support all Mali configurations (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Correct Mali attributes (Jerry Snitselaar) [1722978] - [iommu] vt-d: Fix panic after kexec -p for kdump (Jerry Snitselaar) [1742234] - [kernel] iommu/iova: Fix compilation error with !CONFIG_IOMMU_IOVA (Jerry Snitselaar) [1742234] - [iommu] amd: Check PM_LEVEL_SIZE() condition in locked section (Jerry Snitselaar) [1742234] - [iommu] amd: Fix incorrect PASID decoding from event log (Jerry Snitselaar) [1742234] - [iommu] amd: Lock code paths traversing protection_domain->dev_list (Jerry Snitselaar) [1742234] - [iommu] amd: Lock dev_data in attach/detach code paths (Jerry Snitselaar) [1742234] - [iommu] amd: Check for busy devices earlier in attach_device() (Jerry Snitselaar) [1742234] - [iommu] amd: Take domain->lock for complete attach/detach path (Jerry Snitselaar) [1742234] - [iommu] amd: Remove amd_iommu_devtable_lock (Jerry Snitselaar) [1742234] - [iommu] amd: Remove domain->updated (Jerry Snitselaar) [1742234] - [iommu] iova: Avoid false sharing on fq_timer_on (Jerry Snitselaar) [1742234] - [iommu] Don't use sme_active() in generic code (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix wrong analysis whether devices share the same bus (Jerry Snitselaar) [1742234] - [iommu] amd: Wait for completion of IOTLB flush in attach_device (Jerry Snitselaar) [1742234] - [iommu] amd: Unmap all L7 PTEs when downgrading page-sizes (Jerry Snitselaar) [1742234] - [iommu] amd: Introduce first_pte_l7() helper (Jerry Snitselaar) [1742234] - [iommu] amd: Fix downgrading default page-sizes in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Fix pages leak in free_pagetable() (Jerry Snitselaar) [1742234] - [documentation] documentation: Update Documentation for iommu.passthrough (Jerry Snitselaar) [1745844] - [iommu] Disable passthrough mode when SME is active (Jerry Snitselaar) [1745844] - [iommu] Set default domain type at runtime (Jerry Snitselaar) [1745844] - [iommu] Print default domain type on boot (Jerry Snitselaar) [1745844] - [x86] dma: Get rid of iommu_pass_through (Jerry Snitselaar) [1745844] - [iommu] vt-d: Request passthrough mode from IOMMU core (Jerry Snitselaar) [1745844] - [iommu] amd: Request passthrough mode from IOMMU core (Jerry Snitselaar) [1745844] - [iommu] Use Functions to set default domain type in iommu_set_def_domain_type() (Jerry Snitselaar) [1745844] - [iommu] Add helpers to set/get default domain type (Jerry Snitselaar) [1745844] - [iommu] Remember when default domain type was set on kernel command line (Jerry Snitselaar) [1745844] - [iommu] amd: Flush old domains in kdump kernel (Jerry Snitselaar) [1742234] - [iommu] amd: Fix race in increase_address_space() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove global page flush support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix possible use-after-free of private domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Detach domain before using a private one (Jerry Snitselaar) [1742234] - [iommu] vt-d: Correctly check format of page table in debugfs (Jerry Snitselaar) [1742234] - [iommu] vt-d: Detach domain when move device out of group (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Mark expected switch fall-through (Jerry Snitselaar) [1722978] - [iommu] vt-d: Print pasid table entries MSB to LSB in debugfs (Jerry Snitselaar) [1742234] - [iommu] iova: Remove stale cached32_node (Jerry Snitselaar) [1742234] - [iommu] vt-d: Check if domain->pgd was allocated (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't queue_iova() if there is no flush queue (Jerry Snitselaar) [1742234] - [iommu] amd: fix a crash in iova_magazine_free_pfns (Jerry Snitselaar) [1742234] - [iommu] Use right function to get group for device (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Fix compilation when CONFIG_CMA=n (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Support non-coherent page tables (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Replace IO_PGTABLE_QUIRK_NO_DMA with specific flag (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm-v7s: request DMA32 memory, and improve debugging (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Add support to use system cache (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Increase maximum size of queues (Jerry Snitselaar) [1722978] - [iommu] amd: Flush not present cache in iommu_map_page (Jerry Snitselaar) [1742234] - [iommu] amd: Only free resources once on init error (Jerry Snitselaar) [1742234] - [iommu] amd: Move gart fallback to amd_iommu_init (Jerry Snitselaar) [1742234] - [iommu] amd: Make iommu_disable safer (Jerry Snitselaar) [1742234] - [iommu] amd: Add missed 'tag' to error msg in iommu_print_event (Jerry Snitselaar) [1742234] - [iommu] amd: Remove redundant assignment to variable npages (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup unused variable (Jerry Snitselaar) [1742234] - [iommu] vt-d: Silence a variable set but not used (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove an unused variable "length" (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup after delegating DMA domain to generic iommu (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix suspicious RCU usage in probe_acpi_namespace_devices() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Allow DMA domain attaching to rmrr locked device (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't enable iommu's which have been ignored (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set domain type for a private domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't return error when device gets right domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix a variable set but not used (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Fix typo in SVM code comment (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove static identity map code (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove duplicated code for device hotplug (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove startup parameter from device_def_domain_type() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup get_valid_domain_for_dev() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Implement is_attach_deferred iommu ops entry (Jerry Snitselaar) [1742234] - [iommu] vt-d: Probe DMA-capable ACPI name space devices (Jerry Snitselaar) [1742234] - [iommu] vt-d: Handle 32bit device with identity default domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Identify default domains replaced with private (Jerry Snitselaar) [1742234] - [iommu] vt-d: Delegate the dma domain to upper layer (Jerry Snitselaar) [1742234] - [iommu] vt-d: Delegate the identity domain to upper layer (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add device_def_domain_type() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enable DMA remapping after rmrr mapped (Jerry Snitselaar) [1742234] - [iommu] vt-d: Expose ISA direct mapping region via iommu_get_resv_regions (Jerry Snitselaar) [1742234] - [iommu] vt-d: Implement apply_resv_region iommu ops entry (Jerry Snitselaar) [1742234] - [iommu] Add API to request DMA domain for device (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show scalable mode DMAR table internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Introduce macros useful for dumping DMAR table (Jerry Snitselaar) [1742234] - [iommu] vt-d: Modify the format of intel DMAR tables dump (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unnecessary rcu_read_locks (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix bind svm with multiple devices (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Avoid constant zero in TLBI writes (Jerry Snitselaar) [1722978] - [iommu] vt-d: Set the right field for Page Walk Snoop (Jerry Snitselaar) [1742234] - [iommu] Add missing new line for dma type (Jerry Snitselaar) [1742234] - [kernel] iommu/iova: Separate atomic variables to improve performance (Jerry Snitselaar) [1742234] - [iommu] Remove iommu_callback_data (Jerry Snitselaar) [1742234] - [iommu] amd: Remove amd_iommu_pd_list (Jerry Snitselaar) [1742234] - [iommu] amd: Use pci_prg_resp_pasid_required() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix leak in intel_pasid_alloc_table on error path (Jerry Snitselaar) [1742234] - [iommu] vt-d: Make kernel parameter igfx_off work with vIOMMU (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set intel_iommu_gfx_mapped correctly (Jerry Snitselaar) [1742234] - [iommu] vt-d: cleanup: no spaces at the start of a line (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't request page request irq under dmar_global_lock (Jerry Snitselaar) [1742234] - [iommu] vt-d: Use struct_size() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Flush IOTLB for untrusted device in time (Jerry Snitselaar) [1742234] - [iommu] vt-d: Clean up iommu_no_mapping (Jerry Snitselaar) [1742234] - [vfio] type1: Add domain at(de)taching group helpers (Jerry Snitselaar) [1742234] - [iommu] vt-d: Return ID associated with an auxiliary domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Aux-domain specific domain attach/detach (Jerry Snitselaar) [1742234] - [iommu] vt-d: Move common code out of iommu_attch_device() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add per-device IOMMU feature ops entries (Jerry Snitselaar) [1742234] - [iommu] vt-d: Make intel_iommu_enable_pasid() more generic (Jerry Snitselaar) [1742234] - [iommu] vt-d: Switch to bitmap_zalloc() (Jerry Snitselaar) [1742234] - [iommu] Bind process address spaces to devices (Jerry Snitselaar) [1742234] - [iommu] Add APIs for multiple domains per device (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Log CBFRSYNRA register on context fault (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Don't disable SMMU in kdump kernel (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Disable tagged pointers (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Link domains and devices (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Add a master->domain pointer (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Store SteamIDs in master (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Rename arm_smmu_master_data to arm_smmu_master (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Add ARM Mali midgard MMU page table format (Jerry Snitselaar) [1722978] - [iommu] vt-d: Save the right domain ID used by hardware (Jerry Snitselaar) [1742234] - [iommu] iova: Fix tracking of recently failed iova address (Jerry Snitselaar) [1742234] - [iommu] Fix IOMMU debugfs fallout (Jerry Snitselaar) [1742234] - [kernel] iommu: Document iommu_ops.is_attach_deferred() (Jerry Snitselaar) [1742234] - [kernel] iommu: Document iommu_ops.iotlb_sync_map() (Jerry Snitselaar) [1742234] - [kernel] iommu: Fix flush_tlb_all typo (Jerry Snitselaar) [1742234] - [iommu] io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables (Jerry Snitselaar) [1722978] - [iommu] Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [kernel] iommu: Allow io-pgtable to be used outside of iommu/ (Jerry Snitselaar) [1722978] - [iommu] iova: Allow compiling the library without IOMMU support (Jerry Snitselaar) [1742234] - [iommu] amd: Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [iommu] amd: Remove clear_flush_young notifier (Jerry Snitselaar) [1742234] - [iommu] amd: Print reason for iommu_map_page failure in map_sg (Jerry Snitselaar) [1742234] - [iommu] vt-d: Get domain ID before clear pasid entry (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set context field after value initialized (Jerry Snitselaar) [1742234] - [kernel] pci/ats: Add inline to pci_prg_resp_pasid_required() (Jerry Snitselaar) [1724921 1724927] - [iommu] vt-d: Enable ATS only if the device uses page aligned address (Jerry Snitselaar) [1724922] - [pci] ats: Add pci_ats_page_aligned() interface (Jerry Snitselaar) [1724922] - [iommu] vt-d: Fix PRI/PASID dependency issue (Jerry Snitselaar) [1724921 1724927] - [pci] ats: Add pci_prg_resp_pasid_required() interface (Jerry Snitselaar) [1724921 1724927] - [iommu] vt-d: Allow interrupts from the entire bus for aliased devices (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add helper to set an IRTE to verify only the bus number (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove misleading "domain 0" test from domain_exit() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unused dmar_remove_one_dev_info() argument (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unnecessary local variable initializations (Jerry Snitselaar) [1742234] - [iommu] vt-d: Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove change_pte notifier (Jerry Snitselaar) [1742234] - iommu/vt-d: Implement dma_[un]map_resource() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Support page request in scalable mode (Jerry Snitselaar) [1742234] - [iommu] vt-d: Leave scalable mode default off (Jerry Snitselaar) [1742234] - [iommu] of: Fix probe-deferral (Jerry Snitselaar) [1742234] - [iommu] Check for iommu_ops == NULL in iommu_probe_device() (Jerry Snitselaar) [1742234] - [iommu] of: Don't call iommu_ops->add_device directly (Jerry Snitselaar) [1742234] - powerpc/iommu: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [powerpc] iommu: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [iommu] of: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [iommu] of: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1742234] - [iommu] dma: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1722978] - [acpi] iort: Fix rc_dma_get_range() (Jerry Snitselaar) [1722978] - [kernel] iommu: Change tlb_range_add to iotlb_range_add and tlb_sync to iotlb_sync (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Make arm-smmu-v3 explicitly non-modular (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Make arm-smmu explicitly non-modular (Jerry Snitselaar) [1722978] - [iommu] Audit and remove any unnecessary uses of module.h (Jerry Snitselaar) [1742234] - [iommu] irq_remapping: Remove unused header files (Jerry Snitselaar) [1742234] - [iommu] Do physical merging in iommu_map_sg() (Jerry Snitselaar) [1742234] - [iommu] amd: Remove leading 0s in error log messages (Jerry Snitselaar) [1742234] - [iommu] amd: Fix line-break in error log reporting (Jerry Snitselaar) [1742234] - [iommu] amd: Use pr_fmt() (Jerry Snitselaar) [1742234] - [iommu] amd: Allow to upgrade page-size (Jerry Snitselaar) [1742234] - [iommu] amd: Restart loop if cmpxchg64 succeeded in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Allow downgrading page-sizes in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Ignore page-mode 7 in free_sub_pt() (Jerry Snitselaar) [1742234] - [iommu] amd: Introduce free_sub_pt() function (Jerry Snitselaar) [1742234] - [iommu] amd: Collect page-table pages in freelist (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove deferred invalidation (Jerry Snitselaar) [1724930] - [iommu] vt-d: Shared virtual address in scalable mode (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add first level page table interface (Jerry Snitselaar) [1742234] - [iommu] vt-d: Setup context and enable RID2PASID support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Pass pasid table to context mapping (Jerry Snitselaar) [1742234] - [iommu] vt-d: Setup pasid entry for RID2PASID support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add second level page table interface (Jerry Snitselaar) [1742234] - [iommu] vt-d: Reserve a domain id for FL and PT modes (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add 256-bit invalidation descriptor support (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Move page table helpers into header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Manage scalalble mode PASID tables (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enumerate the scalable mode capability (Jerry Snitselaar) [1742234] - [kernel] iommu/vtd: Cleanup dma_remapping.h header (Jerry Snitselaar) [1742234] - [documentation] dt-bindings: arm-smmu: Add binding doc for Qcom smmu-500 (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add support for qcom, smmu-v2 variant (Jerry Snitselaar) [1722978] - [documentation] dt-bindings: arm-smmu: Add bindings for qcom, smmu-v2 (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add the device_link between masters and smmu (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Invoke pm_runtime across the driver (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add pm_runtime/sleep ops (Jerry Snitselaar) [1722978] - [clk] add managed version of clk_bulk_get_all (Jerry Snitselaar) [1722978] - [clk] add new APIs to operate on all available clocks (Jerry Snitselaar) [1722978] - [clk] bulk: add of_clk_bulk_get() (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Use explicit mb() when moving cons pointer (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Avoid memory corruption from Hisilicon MSI payloads (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Fix big-endian CMD_SYNC writes (Jerry Snitselaar) [1722978] - [iommu] revert "iommu/io-pgtable-arm: Check for v7s-incapable systems" (Jerry Snitselaar) [1722978] - [iommu] Fix a typo (Jerry Snitselaar) [1742234] - [iommu] Tidy up window attributes (Jerry Snitselaar) [1742234] - [iommu] amd: Add default branch in amd_iommu_capable() (Jerry Snitselaar) [1742234] - [iommu] amd: Move iommu_init_pci() to .init section (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show context internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support for Interrupt remapping (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show register contents (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enable base Intel IOMMU debugfs support (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Update register definitions to VT-d 3.0 specification (Jerry Snitselaar) [1742234] - [iommu] vt-d: Relocate struct/function declarations to its header files (Jerry Snitselaar) [1742234] - [of] iommu/of: make of_pci_map_rid() available for other devices too (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Remove unnecessary wrapper function (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Add SPDX header (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Fix a couple of minor comment typos (Jerry Snitselaar) [1722978] - [kernel] iommu/shmobile: Remove unused linux/platform_data/sh_ipmmu.h header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Handle memory shortage on pasid table allocation (Jerry Snitselaar) [1742234] - [iommu] Add sysfs attribyte for domain type (Jerry Snitselaar) [1742234] - [iommu] amd: Add basic debugfs infrastructure for AMD IOMMU (Jerry Snitselaar) [1742234] - [iommu] Enable debugfs exposure of IOMMU driver internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove the obsolete per iommu pasid tables (Jerry Snitselaar) [1742234] - [iommu] vt-d: Apply per pci device pasid table in SVA (Jerry Snitselaar) [1742234] - [iommu] vt-d: Allocate and free pasid table (Jerry Snitselaar) [1742234] - [iommu] vt-d: Per PCI device pasid table interfaces (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add for_each_device_domain() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Move device_domain_info to header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Apply global PASID in SVA (Jerry Snitselaar) [1742234] - [iommu] vt-d: Avoid using idr_for_each_entry() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Global PASID name space (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix dev iotlb pfsid use (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Add definitions for PFSID (Jerry Snitselaar) [1742234] - [iommu] amd: Argument page_size could be uninitialized (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Abort all transactions if SMMU is enabled in kdump kernel (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Prevent any devices access to memory without registration (Jerry Snitselaar) [1722978] - [iommu] [] iommu/arm-smmu-v3: sync the OVACKFLG to PRIQ consumer register (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm-v7s: Abort allocation when table address overflows the PTE (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Fix pgtable allocation in selftest (Jerry Snitselaar) [1722978] - [netdrv] iavf: initialize ITRN registers with correct values (Stefan Assmann) [1721697] - [netdrv] iavf: fix MAC address setting for VFs when filter is rejected (Stefan Assmann) [1721697] - [netdrv] iavf: allow permanent MAC address to change (Stefan Assmann) [1721697] - [netdrv] iavf: remove unused debug function iavf_debug_d (Stefan Assmann) [1721697] - [netdrv] Use skb_frag_off accessors (Stefan Assmann) [1721697] - [netdrv] Use skb accessors in network drivers (Stefan Assmann) [1721697] - [netdrv] iavf: fix dereference of null rx_buffer pointer (Stefan Assmann) [1721697] - [netdrv] iavf: Fix up debug print macro (Stefan Assmann) [1721697] - [netdrv] iavf: use struct_size() helper (Stefan Assmann) [1721697] - [netdrv] iavf: allow null RX descriptors (Stefan Assmann) [1721697] - [netdrv] iavf: add call to iavf_[add|del]_cloud_filter (Stefan Assmann) [1721697] - [netdrv] iavf: Refactor init state machine (Stefan Assmann) [1721697] - [netdrv] iavf: Refactor the watchdog state machine (Stefan Assmann) [1721697] - [netdrv] iavf: Remove timer for work triggering, use delaying work instead (Stefan Assmann) [1721697] - [netdrv] iavf: Move commands processing to the separate function (Stefan Assmann) [1721697] - [netdrv] iavf: Fix the math for valid length for ADq enable (Stefan Assmann) [1721697] - [netdrv] iavf: Change GFP_KERNEL to GFP_ATOMIC in kzalloc() (Stefan Assmann) [1721697] - [netdrv] iavf: wait longer for close to complete (Stefan Assmann) [1721697] - [netdrv] iavf: use signed variable (Stefan Assmann) [1721697] - [netdrv] iavf: Create VLAN tag elements starting from the first element (Stefan Assmann) [1721697] - [netdrv] iavf: update comments and file checks to match iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename i40e_device to iavf_device (Stefan Assmann) [1721697] - [netdrv] iavf: change remaining i40e defines to be iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename iavf_client.h defines to match driver name (Stefan Assmann) [1721697] - [netdrv] iavf: rename iavf_status structure flags (Stefan Assmann) [1721697] - [netdrv] iavf: replace i40e variables with iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename i40e functions to be iavf (Stefan Assmann) [1721697] - [netdrv] iavf: change iavf_status_code to iavf_status (Stefan Assmann) [1721697] - [netdrv] iavf: Rename i40e_adminq* files to iavf_adminq* (Stefan Assmann) [1721697] - [netdrv] iavf: iavf_client: use struct_size() helper (Stefan Assmann) [1721697] - [netdrv] iavf: use struct_size() in kzalloc() (Stefan Assmann) [1721697] - [netdrv] iavf: Limiting RSS queues to CPUs (Stefan Assmann) [1721697] - [netdrv] iavf: Use printf instead of gnu_printf for iavf_debug_d (Stefan Assmann) [1721697] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for ethtool -m issue on X722 NIC (Stefan Assmann) [1721695] - [netdrv] intel: Demote MTU change prints to debug (Stefan Assmann) [1721695] - [netdrv] i40e: implement VF stats NDO (Stefan Assmann) [1721695] - [netdrv] i40e: enable X710 support (Stefan Assmann) [1721695] - [netdrv] i40e: Add UDP segmentation offload support (Stefan Assmann) [1721695] - [netdrv] i40e: prevent memory leak in i40e_setup_macvlans (Stefan Assmann) [1721695] - [netdrv] i40e: Refactoring VF MAC filters counting to make more reliable (Stefan Assmann) [1721695] - [netdrv] i40e: Fix LED blinking flow for X710T*L devices (Stefan Assmann) [1721695] - [netdrv] i40e: allow ethtool to report SW and FW versions in recovery mode (Stefan Assmann) [1721695] - [netdrv] i40e: initialize ITRN registers with correct values (Stefan Assmann) [1721695] - [netdrv] i40e: Extend PHY access with page change flag (Stefan Assmann) [1721695] - [netdrv] i40e: Extract detection of HW flags into a function (Stefan Assmann) [1721695] - [netdrv] i40e: Wrong 'Advertised FEC modes' after set FEC to AUTO (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for persistent lldp support (Stefan Assmann) [1721695] - [netdrv] i40e: clear __I40E_VIRTCHNL_OP_PENDING on invalid min Tx rate (Stefan Assmann) [1721695] - [netdrv] i40e: use BIT macro to specify the cloud filter field flags (Stefan Assmann) [1721695] - [netdrv] i40e: Fix message for other card without FEC (Stefan Assmann) [1721695] - [netdrv] i40e: fix missed "Negotiated" string in i40e_print_link_message() (Stefan Assmann) [1721695] - [netdrv] i40e: mark additional missing bits as reserved (Stefan Assmann) [1721695] - [netdrv] i40e: remove I40E_AQC_ADD_CLOUD_FILTER_OIP (Stefan Assmann) [1721695] - [netdrv] i40e: use ktime_get_real_ts64 instead of ktime_to_timespec64 (Stefan Assmann) [1721695] - [netdrv] i40e: check __I40E_VF_DISABLE bit in i40e_sync_filters_subtask (Stefan Assmann) [1721695] - [netdrv] i40e: Remove EMPR traces from debugfs facility (Stefan Assmann) [1721695] - [netdrv] i40e: Implement debug macro hw_dbg using dev_dbg (Stefan Assmann) [1721695] - [netdrv] i40e: fix hw_dbg usage in i40e_hmc_get_object_va (Stefan Assmann) [1721695] - [netdrv] i40e: simplify Rx buffer recycle (Stefan Assmann) [1721695] - [netdrv] i40e: fix retrying in i40e_aq_get_phy_capabilities (Stefan Assmann) [1721695] - [netdrv] i40e: Persistent LLDP support (Stefan Assmann) [1721695] - [netdrv] i40e: allow reset in recovery mode (Stefan Assmann) [1721695] - [netdrv] i40e: Remove function i40e_update_dcb_config() (Stefan Assmann) [1721695] - [netdrv] i40e: Fix crash caused by stress setting of VF MAC addresses (Stefan Assmann) [1721695] - [netdrv] i40e: reset veb.tc_stats when resetting veb.stats (Stefan Assmann) [1721695] - [netdrv] i40e: Update FW API version to 1.9 (Stefan Assmann) [1721695] - [netdrv] i40e: check_recovery_mode had wrong if statement (Stefan Assmann) [1721695] - [netdrv] i40e: Add drop mode parameter to set mac config (Stefan Assmann) [1721695] - [netdrv] i40e: fix shifts of signed values (Stefan Assmann) [1721695] - [netdrv] i40e: add check on i40e_configure_tx_ring() return value (Stefan Assmann) [1721695] - [netdrv] i40e: Check if transceiver implements DDM before access (Stefan Assmann) [1721695] - [netdrv] i40e: reduce stack usage in i40e_set_fc (Stefan Assmann) [1721695] - [netdrv] i40e: no need to check return value of debugfs_create functions (Stefan Assmann) [1721695] - [netdrv] i40e: Remove unicast log when VF is leaving multicast mode (Stefan Assmann) [1721695] - [netdrv] i40e: verify string count matches even on early return (Stefan Assmann) [1721695] - [netdrv] i40e: Log info when PF is entering and leaving Allmulti mode (Stefan Assmann) [1721695] - [netdrv] i40e: Update visual effect for advertised FEC mode (Stefan Assmann) [1721695] - [netdrv] i40e: fix code comments (Stefan Assmann) [1721695] - [netdrv] i40e: don't report link up for a VF who hasn't enabled queues (Stefan Assmann) [1721695] - [netdrv] i40e: Log disable-fw-lldp flag change by ethtool (Stefan Assmann) [1721695] - [netdrv] i40e: fix incorrect ethtool statistics veb and veb.tc_ (Stefan Assmann) [1721695] - [netdrv] Use skb_frag_off accessors (Stefan Assmann) [1721695] - [netdrv] i40e: Use dev_get_drvdata (Stefan Assmann) [1721695] - [netdrv] Use skb accessors in network drivers (Stefan Assmann) [1721695] - [netdrv] i40e: Add macvlan support on i40e (Stefan Assmann) [1721695] - [netdrv] i40e/i40e_virtchnl_pf: Use struct_size() in kzalloc() (Stefan Assmann) [1721695] - [netdrv] i40e: update copyright string (Stefan Assmann) [1721695] - [netdrv] i40e: Fix descriptor count manipulation (Stefan Assmann) [1721695] - [netdrv] i40e: missing priorities for any QoS traffic (Stefan Assmann) [1721695] - [netdrv] i40e: Add log entry while creating or deleting TC0 (Stefan Assmann) [1721695] - [netdrv] i40e: fix incorrect function documentation comment (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for missing "link modes" info in ethtool (Stefan Assmann) [1721695] - [netdrv] i40e: fix 'Unknown bps' in dmesg for 2.5Gb/5Gb speeds (Stefan Assmann) [1721695] - [netdrv] i40e: mark expected switch fall-through (Stefan Assmann) [1721695] - [netdrv] i40e: Missing response checks in driver when starting/stopping FW LLDP (Stefan Assmann) [1721695] - [netdrv] i40e: remove duplicate stat calculation for tx_errors (Stefan Assmann) [1721695] - [netdrv] i40e: Check if the BAR size is large enough before writing to registers (Stefan Assmann) [1721695] - [netdrv] i40e: Missing response checks in driver when starting/stopping FW LLDP (Stefan Assmann) [1721695] - [netdrv] i40e: add input validation for virtchnl handlers (Stefan Assmann) [1721695] - [netdrv] i40e: Improve AQ log granularity (Stefan Assmann) [1721695] - [netdrv] i40e: Add bounds check for ch[] array (Stefan Assmann) [1721695] - [netdrv] i40e: Use signed variable (Stefan Assmann) [1721695] - [netdrv] i40e: add constraints for accessing veb array (Stefan Assmann) [1721695] - [netdrv] i40e: let untrusted VF to create up to 16 VLANs (Stefan Assmann) [1721695] - [netdrv] i40e: add functions stubs to support EEE (Stefan Assmann) [1721695] - [netdrv] i40e: Use LLDP ethertype define ETH_P_LLDP (Stefan Assmann) [1721695] - [netdrv] r8169: disable TSO on a single version of RTL8168c to fix performance (Corinna Vinschen) [1730024] - [netdrv] r8169: fix sporadic transmit timeout issue (Corinna Vinschen) [1730024] - [netdrv] r8169: inline rtl8169_free_rx_databuff (Corinna Vinschen) [1730024] - [netdrv] r8169: fix performance issue on RTL8168evl (Corinna Vinschen) [1730024] - [netdrv] r8169: allocate rx buffers using alloc_pages_node (Corinna Vinschen) [1730024] - [netdrv] r8169: sync PCIe PHY init with vendor driver 8.047.01 (Corinna Vinschen) [1730024] - [netdrv] r8169: add helper r8168_mac_ocp_modify (Corinna Vinschen) [1730024] - [netdrv] r8169: remove access to legacy register MultiIntr (Corinna Vinschen) [1730024] - [netdrv] r8169: make use of xmit_more (Corinna Vinschen) [1730024] - [netdrv] r8169: don't use MSI before RTL8168d (Corinna Vinschen) [1730024] - [netdrv] revert ("r8169: remove 1000/Half from supported modes") (Corinna Vinschen) [1730024] - [netdrv] r8169: enable HW csum and TSO (Corinna Vinschen) [1730024] - [netdrv] r8169: remove r8169_csum_workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: implement callback ndo_features_check (Corinna Vinschen) [1730024] - [netdrv] r8169: set GSO size and segment limits (Corinna Vinschen) [1730024] - [netdrv] r8169: align setting PME with vendor driver (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_set_rx_mode (Corinna Vinschen) [1730024] - [netdrv] r8169: fix a typo in a comment (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_rx (Corinna Vinschen) [1730024] - [netdrv] r8169: fix RTL8168g PHY init (Corinna Vinschen) [1730024] - [netdrv] r8169: fix issue with confused RX unit after PHY power-down on RTL8411b (Corinna Vinschen) [1730024] - [netdrv] r8169: sync few chip names with vendor driver (Corinna Vinschen) [1730024] - [netdrv] r8169: add random MAC address fallback (Corinna Vinschen) [1730024] - [netdrv] revert "r8169: improve handling VLAN tag" (Corinna Vinschen) [1730024] - [netdrv] r8169: remove not needed call to dma_sync_single_for_device (Corinna Vinschen) [1730024] - [netdrv] r8169: consider that 32 Bit DMA is the default (Corinna Vinschen) [1730024] - [netdrv] r8169: improve handling VLAN tag (Corinna Vinschen) [1730024] - [netdrv] r8169: don't activate ASPM in chip if OS can't control ASPM (Corinna Vinschen) [1730024] - [netdrv] r8169: improve handling of Abit Fatal1ty F-190HD (Corinna Vinschen) [1730024] - [netdrv] r8169: use helper rtl_is_8168evl_up for setting register MaxTxPacketSize (Corinna Vinschen) [1730024] - [netdrv] r8169: add helper rtl_is_8168evl_up (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_coalesce_info (Corinna Vinschen) [1730024] - [netdrv] r8169: let mdio read functions return -ETIMEDOUT (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: remove member coalesce_info from struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: remove callback hw_start from struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: rename CPCMD_QUIRK_MASK and apply it on all chip versions (Corinna Vinschen) [1730024] - [netdrv] r8169: improve setting interrupt mask (Corinna Vinschen) [1730024] - [netdrv] r8169: silence sparse warning in rtl8169_start_xmit (Corinna Vinschen) [1730024] - [netdrv] r8169: factor out firmware handling (Corinna Vinschen) [1730024] - [netdrv] r8169: rename r8169.c to r8169_main.c (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_fw_request_firmware and rtl_fw_release_firmware (Corinna Vinschen) [1730024] - [netdrv] r8169: make rtl_fw_format_ok and rtl_fw_data_ok more independent (Corinna Vinschen) [1730024] - [netdrv] r8169: simplify rtl_fw_write_firmware (Corinna Vinschen) [1730024] - [netdrv] r8169: add enum rtl_fw_opcode (Corinna Vinschen) [1730024] - [netdrv] r8169: use paged versions of phylib MDIO access functions (Corinna Vinschen) [1730024] - [netdrv] r8169: avoid tso csum function indirection (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct jumbo_ops (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct mdio_ops (Corinna Vinschen) [1730024] - [netdrv] r8169: improve r8169_csum_workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: decouple rtl_phy_write_fw from actual driver code (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_fw_format_ok (Corinna Vinschen) [1730024] - [netdrv] r8169: enable WoL speed down on more chip versions (Corinna Vinschen) [1730024] - [netdrv] r8169: fix MAC address being lost in PCI D3 (Corinna Vinschen) [1730024] - [netdrv] r8169: remove 1000/Half from supported modes (Corinna Vinschen) [1730024] - [netdrv] r8169: remove support for RTL_GIGA_MAC_VER_01 (Corinna Vinschen) [1730024] - [netdrv] r8169: improve RTL8168d PHY initialization (Corinna Vinschen) [1730024] - [netdrv] r8169: change type of member mac_version in rtl8169_private (Corinna Vinschen) [1730024] - [netdrv] r8169: remove unneeded return statement in rtl_hw_init_8168g (Corinna Vinschen) [1730024] - [netdrv] r8169: remove rtl_hw_init_8168ep (Corinna Vinschen) [1730024] - [netdrv] treewide: Add SPDX license identifier - Makefile/Kconfig (Corinna Vinschen) [1730024] - [netdrv] treewide: Add SPDX license identifier for more missed files (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl8168g_set_pause_thresholds (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_set_fifo_size (Corinna Vinschen) [1730024] - [netdrv] r8169: move EEE LED config to rtl8168_config_eee_mac (Corinna Vinschen) [1730024] - [netdrv] r8169: simplify rtl_writephy_batch and rtl_ephy_init (Corinna Vinschen) [1730024] - [netdrv] r8169: speed up rtl_loop_wait (Corinna Vinschen) [1730024] - [netdrv] r8169: make use of phy_set_asym_pause (Corinna Vinschen) [1730024] - [netdrv] r8169: remove rtl_write_exgmac_batch (Corinna Vinschen) [1730024] - [netdrv] r8169: remove manual autoneg restart workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_reset_packet_filter (Corinna Vinschen) [1730024] - [netdrv] r8169: add helpers rtl_eri_set/clear_bits (Corinna Vinschen) [1730024] - [netdrv] r8169: make ERIAR_EXGMAC the default in eri functions (Corinna Vinschen) [1730024] - [netdrv] r8169: use pci_dev_id() helper (Corinna Vinschen) [1730024] - [kernel] phy: fix write to mii-ctrl1000 register (Petr Oros) [1772010] - [netdrv] bcmgenet: don't set phydev->link from MAC (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix PTR_ERR applied after initialization to constant (Petr Oros) [1772010] - [netdrv] phy: micrel: add Asym Pause workaround for KSZ9021 (Petr Oros) [1772010] - [netdrv] phy: fix race in genphy_update_link (Petr Oros) [1772010] - [netdrv] phy: consider AN_RESTART status when reading link status (Petr Oros) [1772010] - [kernel] fixed_phy: Add forward declaration for struct gpio_desc; (Petr Oros) [1772010] - [netdrv] phy: fixed_phy: print gpio error only if gpio node is present (Petr Oros) [1772010] - [netdrv] phy: mscc: initialize stats array (Petr Oros) [1772010] - [netdrv] phy: bcm7xxx: define soft_reset for 40nm EPHY (Petr Oros) [1772010] - [netdrv] Add genphy_c45_config_aneg() function to phy-c45.c (Petr Oros) [1772010] - [netdrv] phy: sfp: hwmon: Fix scaling of RX power (Petr Oros) [1772010] - [kernel] hwmon: Fix HWMON_P_MIN_ALARM mask (Petr Oros) [1772010] - [netdrv] phy: rename Asix Electronics PHY driver (Petr Oros) [1772010] - [netdrv] sfp: read eeprom in maximum 16 byte increments (Petr Oros) [1772010] - [netdrv] phylink: avoid reducing support mask (Petr Oros) [1772010] - [netdrv] phy: dp83867: Set up RGMII TX delay (Petr Oros) [1772010] - [netdrv] phy: dp83867: do not call config_init twice (Petr Oros) [1772010] - [netdrv] phy: dp83867: increase SGMII autoneg timer duration (Petr Oros) [1772010] - [netdrv] phy: dp83867: fix speed 10 in sgmii mode (Petr Oros) [1772010] - [netdrv] phy: marvell10g: report if the PHY fails to boot firmware (Petr Oros) [1772010] - [netdrv] phylink: ensure consistent phy interface mode (Petr Oros) [1772010] - [netdrv] phylink: ensure inband AN works correctly (Petr Oros) [1772010] - [netdrv] phy: aquantia: readd XGMII support for AQR107 (Petr Oros) [1772010] - [netdrv] phy: realtek: Replace phy functions with non-locked version in rtl8211e_config_init() (Petr Oros) [1772010] - [netdrv] meson: fixup g12a glue ephy id (Petr Oros) [1772010] - [netdrv] phy: realtek: fix double page ops in generic Realtek driver (Petr Oros) [1772010] - [netdrv] phy: realtek: add missing page operations (Petr Oros) [1772010] - [netdrv] phy: realtek: Change TX-delay setting for RGMII modes only (Petr Oros) [1772010] - [netdrv] phy: realtek: Add rtl8211e rx/tx delays config (Petr Oros) [1772010] - [netdrv] phy: improve pause mode reporting in phy_print_status (Petr Oros) [1772010] - [kernel] phy: improve resuming from hibernation (Petr Oros) [1772010] - [netdrv] phy: fix phy_validate_pause (Petr Oros) [1772010] - [netdrv] phy: micrel: make sure the factory test bit is cleared (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix buffer overrun with stats counters (Petr Oros) [1772010] - [netdrv] phy: avoid unneeded MDIO reads in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: improve genphy_soft_reset (Petr Oros) [1772010] - [netdrv] spi: micrel eth switch: declare missing of table (Petr Oros) [1772010] - [netdrv] phy: marvell: add new default led configure for m88e151x (Petr Oros) [1772010] - [netdrv] phy: vitesse: Remove support for VSC8514 (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8514 PHY (Petr Oros) [1772010] - [netdrv] mdio: rename mdio_device reset to reset_gpio (Petr Oros) [1772010] - [netdrv] phy: add support for reset-controller (Petr Oros) [1772010] - [documentation] dt-bindings: add PHY reset controller binding (Petr Oros) [1772010] - [netdrv] phy: remove dead code from phy_sanitize_settings (Petr Oros) [1772010] - [netdrv] phy: don't set autoneg if it's not supported (Petr Oros) [1772010] - [netdrv] phy: micrel: add Asym Pause workaround (Petr Oros) [1772010] - [netdrv] phy: warn if phylib and ethtool PHY mode definitions are out of sync (Petr Oros) [1772010] - [netdrv] phy: add support for new modes in phylib (Petr Oros) [1772010] - [netdrv] phy: shrink PHY settings array (Petr Oros) [1772010] - [netdrv] phy: switch drivers to use dynamic feature detection (Petr Oros) [1772010] - [netdrv] phy: fix setting autoneg_complete in genphy_update_link (Petr Oros) [1772010] - [netdrv] phy: replace genphy_10g_driver with genphy_c45_driver (Petr Oros) [1772010] - [netdrv] phy: remove unnecessary callback settings in C45 drivers (Petr Oros) [1772010] - [netdrv] phy: improve link partner capability detection (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: clean-up gxl variant driver (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: add g12a support (Petr Oros) [1772010] - [netdrv] phy: add amlogic g12a mdio mux support (Petr Oros) [1772010] - [documentation] dt-bindings: phy: add g12a mdio mux documentation (Petr Oros) [1772010] - [netdrv] phy: realtek: remove setting callback get_features and use phylib fallback (Petr Oros) [1772010] - [netdrv] phy: fix autoneg mismatch case in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: marvell10g: add the suspend/resume callbacks for the 88x2210 (Petr Oros) [1772010] - [netdrv] phy: marvell10g: implement suspend/resume callbacks (Petr Oros) [1772010] - [netdrv] phy: deal properly with autoneg incomplete in genphy_c45_read_lpa (Petr Oros) [1772010] - [netdrv] phy: use c45 standard to detect link partner autoneg capability (Petr Oros) [1772010] - [netdrv] phy: aquantia: add SGMII statistics (Petr Oros) [1772010] - [netdrv] phy: improve genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: aquantia: add suspend / resume callbacks for AQR107 family (Petr Oros) [1772010] - [netdrv] phy: realtek: use genphy_read_abilities (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: remove redundant !timeout check (Petr Oros) [1772010] - [netdrv] phy: marvell: add PHY tunable fast link down support for 88E1540 (Petr Oros) [1772010] - [uapi] ethtool: add PHY Fast Link Down support (Petr Oros) [1772010] - [netdrv] phy: aquantia: inform about proprietary 1000Base-T2 mode being in use (Petr Oros) [1772010] - [netdrv] phy: aquantia: report PHY details like firmware version (Petr Oros) [1772010] - [netdrv] phy: aquantia: print remote capabilities if link partner is Aquantia PHY (Petr Oros) [1772010] - [kernel] phy: bcm54xx: Encode link speed and activity into LEDs (Petr Oros) [1772010] - [netdrv] phy: aquantia: simplify aqr_config_aneg (Petr Oros) [1772010] - [netdrv] phy: don't clear BMCR in genphy_soft_reset (Petr Oros) [1772010] - [netdrv] phy: Re-parent menus for MDIO bus drivers correctly (Petr Oros) [1772010] - [netdrv] phy: Correct Cygnus/Omega PHY driver prompt (Petr Oros) [1772010] - [netdrv] phy: aquantia: add downshift support (Petr Oros) [1772010] - [netdrv] phy: Move Omega PHY entry to Cygnus PHY driver (Petr Oros) [1772010] - [netdrv] phy: Prepare for moving Omega out of bcm7xxx (Petr Oros) [1772010] - [netdrv] phy: Add DP83825I to the DP83822 driver (Petr Oros) [1772010] - [netdrv] phy: aquantia: check for changed interface mode in read_status (Petr Oros) [1772010] - [netdrv] phy: aquantia: check for supported interface modes in config_init (Petr Oros) [1772010] - [netdrv] phy: improve handling link_change_notify callback (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: fix interrupt support (Petr Oros) [1772010] - [gpio] gpiolib: devprop: Fix syntax error (Petr Oros) [1772010] - [kernel] gpiolib: export devprop_gpiochip_set_names() (Petr Oros) [1772010] - [netdrv] phy: mdio-mux: fix Kconfig dependencies (Petr Oros) [1772010] - [netdrv] phy: use phy_modify_mmd_changed in genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_no_soft_reset (Petr Oros) [1772010] - [netdrv] phy: don't export gen10g_read_status (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_config_init (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_suspend and gen10g_resume (Petr Oros) [1772010] - [netdrv] phy: use genphy_c45_aneg_done in genphy_aneg_done (Petr Oros) [1772010] - [netdrv] phy: micrel ksz8061: link failure after cable connect (Petr Oros) [1772010] - [netdrv] phy: phylink: fix uninitialized variable in phylink_get_mac_state (Petr Oros) [1772010] - [netdrv] phy: aquantia: add hwmon support (Petr Oros) [1772010] - [netdrv] phy: aquantia: rename aquantia.c to aquantia_main.c (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use the generic C45 helper to read the 2110 features (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Let genphy_c45_pma_read_abilities set Aneg bit (Petr Oros) [1772010] - [netdrv] phy: dp83867: add soft reset delay (Petr Oros) [1772010] - [netdrv] phy: mdio-mux: Add support for Generic Mux controls (Petr Oros) [1772010] - [netdrv] phy: improve auto-neg emulation in swphy (Petr Oros) [1772010] - [netdrv] phy: marvell10g: add support for the 88x2110 PHY (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Force reading of 2.5/5G (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use a #define for 88X3310 family id (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use 2500BASEX when using 2.5GBASET (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use linkmode_set_bit helper instead of __set_bit (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use get_features to get the PHY abilities (Petr Oros) [1772010] - [netdrv] phy: aquantia: use genphy_c45_read_status (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_read_status (Petr Oros) [1772010] - [netdrv] phy: don't change modes we don't care about in genphy_c45_read_lpa (Petr Oros) [1772010] - [netdrv] phy: aquantia: add support for auto-negotiation configuration (Petr Oros) [1772010] - [netdrv] phy: aquantia: remove false 5G and 10G speed ability for AQCS109 (Petr Oros) [1772010] - [netdrv] phy: check PMAPMD link status only in genphy_c45_read_link (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix use-after-free on device_register fails (Petr Oros) [1772010] - [netdrv] phy: at803x: disable delay only for RGMII mode (Petr Oros) [1772010] - [netdrv] phy: at803x: don't inline helpers (Petr Oros) [1772010] - [netdrv] phy: aquantia: Use get_features for the PHYs abilities (Petr Oros) [1772010] - [netdrv] phy: marvell10g: use genphy_c45_check_and_restart_aneg in mv3310_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_check_and_restart_aneg (Petr Oros) [1772010] - [netdrv] phy: use genphy_config_eee_advert in genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: export genphy_config_eee_advert (Petr Oros) [1772010] - [netdrv] phy: don't use 10BaseT/half as default in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: remove orphaned register read in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: marvell10g: improve mv3310_config_aneg (Petr Oros) [1772010] - [netdrv] phy: disable aneg in genphy_c45_pma_setup_forced (Petr Oros) [1772010] - [netdrv] phy: use mii_10gbt_stat_mod_linkmode_lpa_t in genphy_c45_read_lpa (Petr Oros) [1772010] - [kernel] phy: add helper mii_10gbt_stat_mod_linkmode_lpa_t (Petr Oros) [1772010] - [netdrv] phy: marvell10g: check for newly set aneg (Petr Oros) [1772010] - [netdrv] phy: marvell10g: use genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_an_config_aneg (Petr Oros) [1772010] - [kernel] phy: add helper linkmode_adv_to_mii_10gbt_adv_t (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix PTR_ERR() usage after initialization to constant (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Support generic PHY status read (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Don't explicitly set Pause and Asym_Pause (Petr Oros) [1772010] - [netdrv] phy: use phy_resolve_aneg_linkmode in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: improve phy_resolve_aneg_linkmode (Petr Oros) [1772010] - [netdrv] phy: fix potential race in the phylib state machine (Petr Oros) [1772010] - [kernel] phy: don't use locking in phy_is_started (Petr Oros) [1772010] - [netdrv] phy: fix interrupt handling in non-started states (Petr Oros) [1772010] - [netdrv] phy: simplify genphy_config_eee_advert (Petr Oros) [1772010] - [netdrv] phylink: avoid resolving link state too early (Petr Oros) [1772010] - [netdrv] phylink: add phylink_init_eee() helper (Petr Oros) [1772010] - [netdrv] phylink: only call mac_config() during resolve when link is up (Petr Oros) [1772010] - [netdrv] phy: use phy_modify_changed in genphy_config_advert (Petr Oros) [1772010] - [netdrv] phy: marvell10g: fix usage of new MMD modifying helpers (Petr Oros) [1772010] - [netdrv] phy: add register modifying helpers returning 1 on change (Petr Oros) [1772010] - [netdrv] phy: aquantia: add support for AQCS109 (Petr Oros) [1772010] - [netdrv] phy: disregard "Clause 22 registers present" bit in get_phy_c45_devs_in_pkg (Petr Oros) [1772010] - [netdrv] phy: let genphy_c45_read_link manage the devices to check (Petr Oros) [1772010] - [netdrv] phy: don't double-read link status register if link is up (Petr Oros) [1772010] - [netdrv] fixed-phy: Add fixed_phy_register_with_gpiod() API (Petr Oros) [1772010] - [netdrv] phy: fixed_phy: Fix fixed_phy not checking GPIO (Petr Oros) [1772010] - [netdrv] phy: consider latched link-down status in polling mode (Petr Oros) [1772010] - [netdrv] sfp: do not probe SFP module before we're attached (Petr Oros) [1772010] - [netdrv] phy: make use of new MMD accessors (Petr Oros) [1772010] - [kernel] phy: provide full set of accessor functions to MMD registers (Petr Oros) [1772010] - [netdrv] phy: improve genphy_c45_read_link (Petr Oros) [1772010] - [netdrv] phy: fixed-phy: Drop GPIO from fixed_phy_add() (Petr Oros) [1772010] - [netdrv] dp83640: expire old TX-skb (Petr Oros) [1772010] - [netdrv] phy: aquantia: replace magic numbers with constants (Petr Oros) [1772010] - [netdrv] phy: aquantia: use macro PHY_ID_MATCH_MODEL (Petr Oros) [1772010] - [netdrv] phy: aquantia: remove unneeded includes (Petr Oros) [1772010] - [netdrv] phy: aquantia: Shorten name space prefix to aqr_ (Petr Oros) [1772010] - [netdrv] revert "net: phy: marvell: avoid pause mode on SGMII-to-Copper for 88e151x" (Petr Oros) [1772010] - [netdrv] phy: at803x: Use helpers to access MMD PHY registers (Petr Oros) [1772010] - [netdrv] phy: change phy_start_interrupts to phy_request_interrupt (Petr Oros) [1772010] - [netdrv] phy: start interrupts in phy_start (Petr Oros) [1772010] - [netdrv] phy: warn if phy_start is called from invalid state (Petr Oros) [1772010] - [netdrv] phy: start state machine in phy_start only (Petr Oros) [1772010] - [netdrv] phy: Add SDPX tag based on COPYING file (Petr Oros) [1772010] - [netdrv] phy: Fixup GPLv2 SPDX tags based on license text (Petr Oros) [1772010] - [netdrv] phy: Fixup GPLv2+ SPDX tags based on license text (Petr Oros) [1772010] - [netdrv] phy: Remove redundent License text when SPDX header is present (Petr Oros) [1772010] - [netdrv] phy: Convert some PHY and MDIO driver files to SPDX headers (Petr Oros) [1772010] - [netdrv] phy: at803x: Disable phy delay for RGMII mode (Petr Oros) [1772010] - [netdrv] phy: improve phy_init_hw (Petr Oros) [1772010] - [netdrv] phy: fix issue with loading PHY driver w/o initramfs (Petr Oros) [1772010] - [netdrv] phy: remove phy_stop_interrupts (Petr Oros) [1772010] - [netdrv] phy: ensure phylib state machine is stopped after calling phy_stop (Petr Oros) [1772010] - [netdrv] phy: stop PHY if needed when entering phy_disconnect (Petr Oros) [1772010] - [netdrv] phy: micrel: use phy_read_mmd and phy_write_mmd (Petr Oros) [1772010] - [netdrv] phy: improve get_phy_id (Petr Oros) [1772010] - [kernel] phy: remove state PHY_CHANGELINK (Petr Oros) [1772010] - [netdrv] phy: mdio_bus: add missing device_del() in mdiobus_register() error handling (Petr Oros) [1772010] - [netdrv] phy: check return code when requesting PHY driver module (Petr Oros) [1772010] - [netdrv] phy: Add helpers to determine if PHY driver is generic (Petr Oros) [1772010] - [netdrv] phy: improve logging in phylib (Petr Oros) [1772010] - [netdrv] phy: don't include asm/irq.h directly (Petr Oros) [1772010] - [netdrv] phy: remove preliminary workaround for not loading PHY driver (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: Use the genphy_soft_reset callback (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix deadlock from wrong locking (Petr Oros) [1772010] - [netdrv] phy: marvell: Errata for mv88e6390 internal PHYs (Petr Oros) [1772010] - [netdrv] phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ9031 (Petr Oros) [1772010] - [netdrv] phy: fix too strict check in phy_start_aneg (Petr Oros) [1772010] - [kernel] phy.h: fix obvious errors in doc and kerneldoc content (Petr Oros) [1772010] - [netdrv] phy: mscc: Fix the VSC 8531/41 Chip Init sequence (Petr Oros) [1772010] - [netdrv] phy: Fix the issue that netif always links up after resuming (Petr Oros) [1772010] - [netdrv] phy: print stack trace in phy_error (Petr Oros) [1772010] - [netdrv] phy: improve phy state checking (Petr Oros) [1772010] - [netdrv] fixed phy: Add fixed_phy_change_carrier() (Petr Oros) [1772010] - [netdrv] phy: mdio-gpio: Add phy_ignore_ta_mask to platform data (Petr Oros) [1772010] - [kernel] phy: mdio-gpio: Add platform_data support for phy_mask (Petr Oros) [1772010] - [kernel] gpio: Export gpiod_get_from_of_node() (Petr Oros) [1772010] - [netdrv] phy: Revert toggling reset changes (Petr Oros) [1772010] - [netdrv] phy: sfp: correct store of detected link modes (Petr Oros) [1772010] - [netdrv] phy: micrel: add toggling phy reset if PHY is not attached (Petr Oros) [1772010] - [netdrv] phy: Fix not to call phy_resume() if PHY is not attached (Petr Oros) [1772010] - [netdrv] phy: improve generic EEE ethtool functions (Petr Oros) [1772010] - [netdrv] phy: add workaround for issue where PHY driver doesn't bind to the device (Petr Oros) [1772010] - [netdrv] phy: mscc: fix deadlock in vsc85xx_default_config (Petr Oros) [1772010] - [netdrv] phy: vitesse: remove duplicate support for VSC8574 (Petr Oros) [1772010] - [netdrv] phy: icplus: allow configuring the interrupt function on IP101GR (Petr Oros) [1772010] - [netdrv] phy: icplus: implement .did_interrupt for IP101A/G (Petr Oros) [1772010] - [netdrv] phy: icplus: rename IP101A_G_NO_IRQ to IP101A_G_IRQ_ALL_MASK (Petr Oros) [1772010] - [netdrv] phy: icplus: use the BIT macro where possible (Petr Oros) [1772010] - [netdrv] phy: icplus: keep all ip101a_g functions together (Petr Oros) [1772010] - [documentation] dt-bindings: phy: add bindings for the IC Plus Corp. IP101A/G PHYs (Petr Oros) [1772010] - [documentation] dt-bindings: vendor-prefix: add prefix for IC Plus Corp (Petr Oros) [1772010] - [netdrv] phy: mdio-gpio: Fix working over slow can_sleep GPIOs (Petr Oros) [1772010] - [netdrv] phy: check for implementation of both callbacks in phy_drv_supports_irq (Petr Oros) [1772010] - [netdrv] phy: icplus: add config_intr callback (Petr Oros) [1772010] - [kernel] phy: remove states PHY_STARTING and PHY_PENDING (Petr Oros) [1772010] - [netdrv] phy: leds: Don't make our own link speed names (Petr Oros) [1772010] - [netdrv] phy: improve and inline phy_change (Petr Oros) [1772010] - [netdrv] phy: simplify phy_mac_interrupt and related functions (Petr Oros) [1772010] - [netdrv] phy: don't set state PHY_CHANGELINK in phy_change (Petr Oros) [1772010] - [kernel] phy: improve struct phy_device member interrupts handling (Petr Oros) [1772010] - [netdrv] phy: remove flag PHY_HAS_INTERRUPT from driver configs (Petr Oros) [1772010] - [netdrv] phy: replace PHY_HAS_INTERRUPT with a check for config_intr and ack_interrupt (Petr Oros) [1772010] - [netdrv] phy: use phy_check_link_status in more places in the state machine (Petr Oros) [1772010] - [kernel] phy: remove state PHY_AN (Petr Oros) [1772010] - [netdrv] phy: add phy_check_link_status (Petr Oros) [1772010] - [netdrv] phy: remove useless check in state machine case PHY_RESUMING (Petr Oros) [1772010] - [netdrv] phy: remove useless check in state machine case PHY_NOLINK (Petr Oros) [1772010] - [netdrv] phy: make phy_trigger_machine static (Petr Oros) [1772010] - [netdrv] phy: bcm7xxx: Add entry for BCM7255 (Petr Oros) [1772010] - [netdrv] phy: Allow BCM54616S PHY to setup internal TX/RX clock delay (Petr Oros) [1772010] - [netdrv] phy: mdio-mux-bcm-iproc: simplify getting .driver_data (Petr Oros) [1772010] - [documentation] dt-bindings: add support for Microchip KSZ9131 (Petr Oros) [1772010] - [netdrv] phy: micrel: add Microchip KSZ9131 initial driver (Petr Oros) [1772010] - [netdrv] phy: mscc: fix memory leak in vsc8574_config_pre_init (Petr Oros) [1772010] - [netdrv] phy: mscc: fix signedness bug in vsc85xx_downshift_get (Petr Oros) [1772010] - [netdrv] phy: merge phy_start_aneg and phy_start_aneg_priv (Petr Oros) [1772010] - [netdrv] phy: simplify handling of PHY_RESUMING in state machine (Petr Oros) [1772010] - [netdrv] phy: improve handling of PHY_RUNNING in state machine (Petr Oros) [1772010] - [netdrv] phy: trigger state machine immediately in phy_start_machine (Petr Oros) [1772010] - [netdrv] phy: sfp: remove sfp_mutex's definition (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8574 PHY (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8584 PHY (Petr Oros) [1772010] - [dt-bindings] vsc8531: add two additional LED modes for VSC8584 (Petr Oros) [1772010] - [netdrv] phy: mscc: remove unneeded temporary variable (Petr Oros) [1772010] - [netdrv] phy: mscc: shorten `x != 0` condition to `x` (Petr Oros) [1772010] - [netdrv] phy: mscc: remove unneeded parenthesis (Petr Oros) [1772010] - [netdrv] phy: mscc: Add EEE init sequence (Petr Oros) [1772010] - [netdrv] phy: mscc: add ethtool statistics counters (Petr Oros) [1772010] - [netdrv] phy: mscc: migrate to phy_select/restore_page functions (Petr Oros) [1772010] - [netdrv] phy: phylink: fix SFP interface autodetection (Petr Oros) [1772010] - [netdrv] phy: Convert to using pOFn instead of device_node.name (Petr Oros) [1772010] - [netdrv] phy: improve handling delayed work (Petr Oros) [1772010] - [netdrv] phy: mscc: fix printf format (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: mark PM functions as __maybe_unused (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix build (Petr Oros) [1772010] - [netdrv] phy: marvell: Avoid unnecessary soft reset (Petr Oros) [1772010] - [netdrv] phy: Stop with excessive soft reset (Petr Oros) [1772010] - [netdrv] phy: sfp: Fix unregistering of HWMON SFP device (Petr Oros) [1772010] - [netdrv] phy: fix WoL handling when suspending the PHY (Petr Oros) [1772010] - [net] core: add member wol_enabled to struct net_device (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: Allow configuring MDIO clock divider (Petr Oros) [1772010] - [netdrv] phy: don't reschedule state machine when PHY is halted (Petr Oros) [1772010] - [netdrv] phy: phylink: ensure the carrier is off when starting phylink (Petr Oros) [1772010] - [netdrv] phy: call state machine synchronously in phy_stop (Petr Oros) [1772010] - [net] linkwatch: add check for netdevice being present to linkwatch_do_dev (Petr Oros) [1772010] - [netdrv] sfp: fix oops with ethtool -m (Petr Oros) [1772010] - [netdrv] mdio: remove duplicated include from mdio_bus.c (Petr Oros) [1772010] - [netdrv] phy: et011c: Remove incorrect PHY_POLL flags (Petr Oros) [1772010] - [netdrv] phy: sfp: Handle unimplemented hwmon limits and alarms (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, led-d-mode' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, edge-slowdown' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, vddmac' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: factorize function for getting LED mode from DT (Petr Oros) [1772010] - [netdrv] phy: mscc: factorize code for LEDs mode (Petr Oros) [1772010] - [netdrv] dp83640: Mark expected switch fall-throughs (Petr Oros) [1772010] - [netdrv] phylink: add helper for configuring 2500BaseX modes (Petr Oros) [1772010] - [netdrv] phy: sftp: print debug message with text, not numbers (Petr Oros) [1772010] - [netdrv] phy: Add support for Broadcom Omega internal Combo GPHY (Petr Oros) [1772010] - [netdrv] phy: Add pm support to Broadcom iProc mdio mux driver (Petr Oros) [1772010] - [netdrv] phy: Add support to configure clock in Broadcom iProc mdio mux (Petr Oros) [1772010] - [documentation] dt-bindings: Add clock handle to Broadcom iProc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Use devm api for mdio bus allocation in bcm iproc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Disable external master access in bcm mdio mux driver (Petr Oros) [1772010] - [arm64] dts: Fix the base address of the Broadcom iProc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Fix the register offsets in Broadcom iProc mdio mux driver (Petr Oros) [1772010] - [documentation] dt-bindings: Fix Broadcom iProc mdio mux driver base address (Petr Oros) [1772010] - [netdrv] phy: mscc: the extended page access register is 16 bits (Petr Oros) [1772010] - [netdrv] phy: marvell: Replace mdelay() with msleep() in m88e1116r_config_init() (Petr Oros) [1772010] - [kernel] phy: add helper phy_polling_mode (Petr Oros) [1772010] - [netdrv] phy: prevent PHYs w/o Clause 22 regs from calling genphy_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add GBit master / slave error detection (Petr Oros) [1772010] - [netdrv] phy: sfp: Do not use "imply HWMON" (Petr Oros) [1772010] - [netdrv] phy: sfp: Add HWMON support for module sensors (Petr Oros) [1772010] - [kernel] hwmon: Add helper to tell if a char is invalid in a name (Petr Oros) [1772010] - [kernel] hwmon: Add support for power min, lcrit, min_alarm and lcrit_alarm (Petr Oros) [1772010] - [kernel] hwmon: Add missing HWMON_T_LCRIT_ALARM define (Petr Oros) [1772010] - [netdrv] phy: Drop OF dependency for MDIO_BCM_UNIMAC (Petr Oros) [1772010] - [gpio] gpiolib: Mark gpio_suffixes array with __maybe_unused (Petr Oros) [1772010] - [netdrv] phy: vitesse: Add support for VSC73xx (Petr Oros) [1772010] - [netdrv] phy: dp83tc811: Fix SGMII enable/disable (Petr Oros) [1772010] - [netdrv] phy: dp83tc811: Add INT_STAT3 (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Check read_status results (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Use correct mdio bus (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Check phy_driver ready before accessing (Petr Oros) [1772010] - [netdrv] mdio-mux-gpio: Remove VLA usage (Petr Oros) [1772010] - [netdrv] phy: fixed-phy: Make the error path simpler (Petr Oros) [1772010] - [netdrv] phy: Allow compile test of GPIO consumers if !GPIOLIB (Petr Oros) [1772010] - [watchdog] hpwdt: Reflect changes (Joseph Szczypek) [1769477] - [documentation] watchdog/hpwdt: Update documentation (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Add module parameter kdumptimeout (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Have core ping watchdog (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Advertize max_hw_heartbeat_ms (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Stop hpwdt on unregister (Joseph Szczypek) [1769477] - [watchdog] hpwdt: drop warning after registering device (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Joseph Szczypek) [1769477] - [nvme] make fabrics command run on a separate request queue (David Milburn) [1766361] - [nvme] Restart request timers in resetting state (David Milburn) [1766361] - [nvme] nvme-rdma: fix possible use-after-free in connect timeout (David Milburn) [1766361] - [block] blk-mq: remove blk_mq_complete_request_sync (David Milburn) [1766361] - [nvme] wait until all completed request's complete fn is called (David Milburn) [1766361] - [nvme] don't abort completed request in nvme_cancel_request (David Milburn) [1766361] - [block] blk-mq: introduce blk_mq_tagset_wait_completed_request() (David Milburn) [1766361] - [block] blk-mq: introduce blk_mq_request_completed() (David Milburn) [1766361]- [hwtracing] intel_th: pci: Add Jasper Lake PCH support (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Comet Lake PCH support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix possible memory leak in mode_store() (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix overflow in shift of an unsigned int (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix missing allocation failure check on a kstrndup (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix an uninitialized mutex (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Fix the window switching sequence (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Tiger Lake support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Preserve pre-existing buffer configuration (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Prevent freeing buffers while locked windows exist (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Get rid of the window size limit (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu-sink: An example msu buffer "sink" (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Introduce buffer interface (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Start read iterator from a non-empty window (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Split sgt array and pointer in multiwindow mode (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Support multipage blocks (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Ice Lake NNPI support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix single mode with disabled IOMMU (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Remove set but not used variable 'last' (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix unused variable warning on arm64 platform (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Add current window tracking (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Add a sysfs attribute to trigger window switch (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Correct the block wrap detection (Jiri Olsa) [1771015] - [hwtracing] intel_th: Add switch triggering support (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Factor out trace start/stop (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Factor out pipeline draining (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Switch over to scatterlist (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Replace open-coded list_{first, last, next}_entry variants (Jiri Olsa) [1771015] - [hwtracing] intel_th: Only report useful IRQs to subdevices (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Start handling IRQs (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Use MSI interrupt signalling (Jiri Olsa) [1771015] - [hwtracing] intel_th: Communicate IRQ via resource (Jiri Olsa) [1771015] - [hwtracing] intel_th: Add "rtit" source device (Jiri Olsa) [1771015] - [hwtracing] intel_th: Skip subdevices if their MMIO is missing (Jiri Olsa) [1771015] - [hwtracing] intel_th: Rework resource passing between glue layers and core (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix single mode with IOMMU (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Comet Lake support (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Fix an off-by-one in output unassigning (Jiri Olsa) [1771015] - [hwtracing] intel_th: Don't reference unassigned outputs (Jiri Olsa) [1771015] - [hwtracing] intel_th: pti: Use sysfs_match_string() helper (Jiri Olsa) [1771015] - [hwtracing] intel_th: Only create useful device nodes (Jiri Olsa) [1771015] - [hwtracing] intel_th: Mark expected switch fall-throughs (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix an off-by-one in attribute store (Jiri Olsa) [1771015] - [hwtracing] intel_th: Fix resource handling for ACPI glue layer (Jiri Olsa) [1771015] - [hwtracing] intel_th: Fix device removal logic (Jiri Olsa) [1771015] - [hwtracing] hwtracing/intel_th/msu.c: change return type to vm_fault_t (Jiri Olsa) [1771015] - [scripts] kbuild: modversions: Fix relative CRC byte order interpretation (Don Zickus) [1772940] - [tools] tools x86 uapi asm: Sync the pt_regs.h copy with the kernel sources (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for trace sequences APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for APIs used to extract common fields from a record (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_parse_header_page() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for parse event APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event filter APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event fields APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_read_number_field() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for print field APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for get field value APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for find field APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for libtraceevent event get APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for list events APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event find APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_read_number() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for registering print function (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for function related libtraceevent APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event handler APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_strerror() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for page size APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for host endian APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for file endian APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for get/set cpus APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for header_page APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for tep_handler related APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add support for man pages with multiple names (Michael Petlan) [1743208] - [tools] tools lib traceevent: Introduce man pages (Michael Petlan) [1743208] - [tools] perf/x86/regs: Use PERF_REG_EXTENDED_MASK (Michael Petlan) [1743208] - [tools] perf record: Fix s390 missing module symbol and warning for non-root users (Michael Petlan) [1743208] - [tools] perf machine: Read also the end of the kernel (Michael Petlan) [1743208] - [tools] perf test vmlinux-kallsyms: Ignore aliases to _etext when searching on kallsyms (Michael Petlan) [1743208] - [tools] perf session: Add missing swap ops for namespace events (Michael Petlan) [1743208] - [tools] perf namespace: Protect reading thread's namespace (Michael Petlan) [1743208] - [tools] perf data: Fix 'strncat may truncate' build failure with recent gcc (Michael Petlan) [1743208] - [tools] perf stat: Support 'percore' event qualifier (Michael Petlan) [1743208] - [tools] perf stat: Factor out aggregate counts printing (Michael Petlan) [1743208] - [tools] perf tools: Add a 'percore' event qualifier (Michael Petlan) [1743208] - [tools] perf docs: Add description for stderr (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix sample timestamp wrt non-taken branches (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix improved sample timestamp (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix instructions sampling rate (Michael Petlan) [1743208] - [tools] perf regs x86: Add X86 specific arch__intr_reg_mask() (Michael Petlan) [1743208] - [tools] perf parse-regs: Add generic support for arch__intr/user_reg_mask() (Michael Petlan) [1743208] - [tools] perf parse-regs: Split parse_regs (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Add Cortex-A57 and Cortex-A72 events (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Map Brahma-B53 CPUID to cortex-a53 events (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Remove [[:xdigit:]] wildcard (Michael Petlan) [1743208] - [tools] perf jevents: Remove unused variable (Michael Petlan) [1743208] - [tools] perf test zstd: Fixup verbose mode output (Michael Petlan) [1743208] - [tools] perf tests: Implement Zstd comp/decomp integration test (Michael Petlan) [1743208] - [tools] perf inject: Enable COMPRESSED record decompression (Michael Petlan) [1743208] - [tools] perf report: Implement perf.data record decompression (Michael Petlan) [1743208] - [tools] perf record: Implement -z, --compression_level[=] option (Michael Petlan) [1743208] - [tools] perf report: Add stub processing of compressed events for -D (Michael Petlan) [1743208] - [tools] perf record: Implement compression for AIO trace streaming (Michael Petlan) [1743208] - [tools] perf record: Implement compression for serial trace streaming (Michael Petlan) [1743208] - [tools] perf tools: Introduce Zstd streaming based compression API (Michael Petlan) [1743208] - [tools] perf mmap: Implement dedicated memory buffer for data compression (Michael Petlan) [1743208] - [tools] perf record: Implement COMPRESSED event record and its attributes (Michael Petlan) [1743208] - [tools] perf session: Define 'bytes_transferred' and 'bytes_compressed' metrics (Michael Petlan) [1743208] - [tools] perf build tests: Add NO_LIBZSTD=1 to make_minimal (Michael Petlan) [1743208] - [tools] perf machine: Null-terminate version char array upon fgets(/proc/version) error (Michael Petlan) [1743208] - [tools] perf vendor events intel: Add uncore_upi JSON support (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add 'About' dialog box (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add context menu (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add copy to clipboard (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add tree level (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Fix error when shrinking / enlarging font (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Move view creation (Michael Petlan) [1743208] - [tools] perf tools x86: Add support for recording and printing XMM registers (Michael Petlan) [1743208] - [tools] perf parse-regs: Improve error output when faced with unknown register name (Michael Petlan) [1743208] - [tools] perf record: Fix suggestion to get list of registers usable with --user-regs and --intr-regs (Michael Petlan) [1743208] - [tools] perf tools: Speed up report for perf compiled with linwunwind (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove hard coded install paths from pkg-config file (Michael Petlan) [1743208] - [tools] csky: Add support for libdw (Michael Petlan) [1743208] - [tools] perf test: Fix spelling mistake "leadking" -> "leaking" (Michael Petlan) [1743208] - [tools] perf annotate: Remove hist__account_cycles() from callback (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Silvermont to v14 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update GoldmontPlus to v1.01 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Goldmont to v13 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Bonnell to V4 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update KnightsLanding events to v9 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Haswell events to v28 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update IvyBridge events to v21 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update SandyBridge events to v16 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update JakeTown events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update IvyTown events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update HaswellX events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update BroadwellX events to v14 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update SkylakeX events to v1.12 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Skylake events to v42 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Broadwell-DE events to v7 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Broadwell events to v23 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update metrics from TMAM 3.5 (Michael Petlan) [1743208] - [tools] perf record: Implement --mmap-flush= option (Michael Petlan) [1743208] - [tools] tools build: Implement libzstd feature check, LIBZSTD_DIR and NO_LIBZSTD defines (Michael Petlan) [1743208] - [tools] tools lib traceevent: Rename input arguments and local variables of libtraceevent from pevent to tep (Michael Petlan) [1743208] - [tools] perf tools, tools lib traceevent: Rename "pevent" member of struct tep_event_filter to "tep" (Michael Petlan) [1743208] - [tools] perf tools, tools lib traceevent: Rename "pevent" member of struct tep_event to "tep" (Michael Petlan) [1743208] - [tools] tools lib traceevent: Rename input arguments of libtraceevent APIs from pevent to tep (Michael Petlan) [1743208] - [tools] tools tools, tools lib traceevent: Make traceevent APIs more consistent (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove call to exit() from tep_filter_add_filter_str() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove tep filter trivial APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Removed unneeded !! and return parenthesis (Michael Petlan) [1743208] - [tools] tools lib traceevent: Implement new traceevent APIs for accessing struct tep_handler fields (Michael Petlan) [1743208] - [tools] tools lib traceevent: Coding style fixes (Michael Petlan) [1743208] - [tools] tools lib traceevent: Change description of few APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add more debugging to see various internal ring buffer entries (Michael Petlan) [1743208] - [tools] tools lib traceevent: Implement a new API, tep_list_events_copy() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add mono clocks to be parsed in seconds (Michael Petlan) [1743208] - [tools] tools lib traceevent: Handle trace_printk() "px" (Michael Petlan) [1743208] - [tools] perf list: Output tool events (Michael Petlan) [1743208] - [tools] perf evsel: Support printing evsel name for 'duration_time' (Michael Petlan) [1743208] - [tools] perf stat: Implement duration_time as a proper event (Michael Petlan) [1743208] - [tools] perf stat: Revert checks for duration_time (Michael Petlan) [1743208] - [tools] perf list: Fix s390 counter long description for L1D_RO_EXCL_WRITES (Michael Petlan) [1743208] - [tools] perf tools: Add header defining used namespace struct to event.h (Michael Petlan) [1743208] - [tools] perf trace beauty renameat: No need to include linux/fs.h (Michael Petlan) [1743208] - [tools] perf augmented_raw_syscalls: Use a PERCPU_ARRAY map to copy more string bytes (Michael Petlan) [1743208] - [tools] perf augmented_raw_syscalls: Copy strings from all syscalls with 1st or 2nd string arg (Michael Petlan) [1743208] - [tools] perf trace: Add 'string' event alias to select syscalls with string args (Michael Petlan) [1743208] - [x86] perf/x86: Always store regs->ip in perf_callchain_kernel() (Michael Petlan) [1743208] - [x86] perf/x86: Remove pmu->pebs_no_xmm_regs (Michael Petlan) [1743208] - [x86] perf/x86: Clean up PEBS_XMM_REGS (Michael Petlan) [1743208] - [kernel] perf/x86: Disable extended registers for non-supported PMUs (Michael Petlan) [1743208] - [kernel] perf/ioctl: Add check for the sample_period value (Michael Petlan) [1743208] - [kernel] perf/core: Fix perf_sample_regs_user() mm check (Michael Petlan) [1743208] - [kernel] perf/ring-buffer: Use regular variables for nesting (Michael Petlan) [1743208] - [kernel] perf/ring-buffer: Always use {READ, WRITE}_ONCE() for rb->user_page data (Michael Petlan) [1743208] - [kernel] perf/ring_buffer: Add ordering to rb->nest increment (Michael Petlan) [1743208] - [kernel] perf/ring_buffer: Fix exposing a temporarily decreased data_head (Michael Petlan) [1743208] - [x86] perf/x86/intel/ds: Fix EVENT vs. UEVENT PEBS constraints (Michael Petlan) [1743208] - [x86] perf/x86/intel: Allow PEBS multi-entry in watermark mode (Michael Petlan) [1743208] - [x86] perf/x86/intel: Fix INTEL_FLAGS_EVENT_CONSTRAINT* masking (Michael Petlan) [1743208] - [x86] perf/x86/amd/iommu: Make the 'amd_iommu_attr_groups' symbol static (Michael Petlan) [1743208] - [x86] perf/x86/intel: Add Tremont core PMU support (Michael Petlan) [1743208] - [x86] perf/x86/intel/uncore: Add Intel Icelake uncore support (Michael Petlan) [1743208] - [x86] perf/x86/msr: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel/rapl: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel/cstate: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86: Support constraint ranges (Michael Petlan) [1743208] - [x86] perf/x86/lbr: Avoid reading the LBRs when adaptive PEBS handles them (Michael Petlan) [1743208] - [x86] perf/x86/intel: Support adaptive PEBS v4 (Michael Petlan) [1743208] - [x86] perf/x86/intel/ds: Extract code of event update in short period (Michael Petlan) [1743208] - [x86] perf/x86/intel: Extract memory code PEBS parser for reuse (Michael Petlan) [1743208] - [x86] perf/x86: Support outputting XMM registers (Michael Petlan) [1743208] - [x86] perf/x86/intel: Force resched when TFA sysctl is modified (Michael Petlan) [1743208] - [kernel] perf/core: Add perf_pmu_resched() as global function (Michael Petlan) [1743208] - [kernel] perf/headers: Fix stale comment for struct perf_addr_filter (Michael Petlan) [1743208] - [kernel] perf/core: Make perf_swevent_init_cpu() static (Michael Petlan) [1743208] - [x86] perf/x86: Add sanity checks to x86_schedule_events() (Michael Petlan) [1743208] - [x86] perf/x86: Optimize x86_schedule_events() (Michael Petlan) [1743208] - [x86] perf/x86: Clear ->event_constraint[] on put (Michael Petlan) [1743208] - [x86] perf/x86/intel: Optimize intel_get_excl_constraints() (Michael Petlan) [1743208] - [x86] perf/x86: Remove PERF_X86_EVENT_COMMITTED (Michael Petlan) [1743208] - [x86] perf/x86: Simplify x86_pmu.get_constraints() interface (Michael Petlan) [1743208] - [x86] perf/x86/intel: Simplify intel_tfa_commit_scheduling() (Michael Petlan) [1743208] - [tools] perf evsel: Do not rely on errno values for precise_ip fallback (Michael Petlan) [1715508] - [kernel] redhat: perf kABI-check failure fix (Michael Petlan) [1715508] - [tools] perf vendor events: Remove P8 HW events which are not supported (Michael Petlan) [1715508] - [x86] cpufeature: Fix various quality problems in the header (Michael Petlan) [1715508] - [x86] cpufeature: Add facility to check for min microcode revisions (Michael Petlan) [1715508] - [tools] perf tools: Remove needless asm/unistd.h include fixing build in some places (Michael Petlan) [1715508] - [tools] tools build: Add -ldl to the disassembler-four-args feature test (Michael Petlan) [1715508] - [tools] perf cs-etm: Always allocate memory for cs_etm_queue::prev_packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Don't check cs_etm_queue::prev_packet validity (Michael Petlan) [1715508] - [tools] perf report: Report OOM in status line in the GTK UI (Michael Petlan) [1715508] - [tools] perf bench numa: Add define for RUSAGE_THREAD if not present (Michael Petlan) [1715508] - [tools] tools lib traceevent: Change tag string for error (Michael Petlan) [1715508] - [tools] perf annotate: Fix build on 32 bit for BPF annotation (Michael Petlan) [1715508] - [tools] perf bpf: Return value with unlocking in perf_env__find_btf() (Michael Petlan) [1715508] - [tools] perf bpf: Return NULL when RB tree lookup fails in perf_env__find_btf() (Michael Petlan) [1715508] - [tools] perf tools: Fix map reference counting (Michael Petlan) [1715508] - [tools] perf evlist: Fix side band thread draining (Michael Petlan) [1715508] - [tools] perf tools: Check maps for bpf programs (Michael Petlan) [1715508] - [tools] perf bpf: Return NULL when RB tree lookup fails in perf_env__find_bpf_prog_info() (Michael Petlan) [1715508] - [tools] tools include uapi: Sync sound/asound.h copy (Michael Petlan) [1715508] - [tools] perf top: Always sample time to satisfy needs of use of ordered queuing (Michael Petlan) [1715508] - [tools] perf evsel: Use hweight64() instead of hweight_long(attr.sample_regs_user) (Michael Petlan) [1715508] - [tools] tools lib traceevent: Fix missing equality check for strcmp (Michael Petlan) [1715508] - [tools] perf stat: Disable DIR_FORMAT feature for 'perf stat record' (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-sqlite.py: Fix use of parent_id in calls_view (Michael Petlan) [1715508] - [tools] perf header: Fix lock/unlock imbalances when processing BPF/BTF info (Michael Petlan) [1715508] - [tools] perf pmu: Fix parser error for uncore event alias (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Fix never-ending loop (Michael Petlan) [1715508] - [tools] perf machine: Update kernel map address and re-order properly (Michael Petlan) [1715508] - [tools] tools headers uapi: Synchronize i915_drm.h (Michael Petlan) [1715508] - [tools] tools headers uapi: Update drm/i915_drm.h (Michael Petlan) [1715508] - [tools] perf evsel: Fix max perf_event_attr.precise_ip detection (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix TSC slip (Michael Petlan) [1715508] - [tools] perf cs-etm: Add missing case value (Michael Petlan) [1715508] - [tools] perf bpf: Show more BPF program info in print_bpf_prog_info() (Michael Petlan) [1715508] - [tools] perf bpf: Extract logic to create program names from perf_event__synthesize_one_bpf_prog() (Michael Petlan) [1715508] - [tools] perf tools: Save bpf_prog_info and BTF of new BPF programs (Michael Petlan) [1715508] - [tools] perf evlist: Introduce side band thread (Michael Petlan) [1715508] - [tools] perf annotate: Enable annotation of BPF programs (Michael Petlan) [1715508] - [tools] perf build: Check what binutils's 'disassembler()' signature to use (Michael Petlan) [1715508] - [tools] tools build: Add -lrt to FEATURE_CHECK_LDFLAGS-libaio (Michael Petlan) [1715508] - [tools] tools build: Add test-reallocarray.c to test-all.c to fix the build (Michael Petlan) [1715508] - [tools] perf bpf: Process PERF_BPF_EVENT_PROG_LOAD for annotation (Michael Petlan) [1715508] - [tools] perf symbols: Introduce DSO_BINARY_TYPE__BPF_PROG_INFO (Michael Petlan) [1715508] - [tools] perf feature detection: Add -lopcodes to feature-libbfd (Michael Petlan) [1715508] - [tools] perf top: Add option --no-bpf-event (Michael Petlan) [1715508] - [tools] perf bpf: Save BTF information as headers to perf.data (Michael Petlan) [1715508] - [tools] perf bpf: Save BTF in a rbtree in perf_env (Michael Petlan) [1715508] - [tools] perf bpf: Save bpf_prog_info information as headers to perf.data (Michael Petlan) [1715508] - [tools] perf bpf: Save bpf_prog_info in a rbtree in perf_env (Michael Petlan) [1715508] - [tools] perf bpf: Make synthesize_bpf_events() receive perf_session pointer instead of perf_tool (Michael Petlan) [1715508] - [tools] perf bpf: Synthesize bpf events with bpf_program__get_prog_info_linear() (Michael Petlan) [1715508] - [tools] perf record: Replace option --bpf-event with --no-bpf-event (Michael Petlan) [1715508] - [tools] perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() (Michael Petlan) [1715508] - [tools] perf tests: Fix memory leak by expr__find_other() in test__expr() (Michael Petlan) [1715508] - [tools] perf tests: Fix a memory leak of cpu_map object in the openat_syscall_event_on_all_cpus test (Michael Petlan) [1715508] - [tools] perf evsel: Free evsel->counts in perf_evsel__exit() (Michael Petlan) [1715508] - [tools] perf top: Fix global-buffer-overflow issue (Michael Petlan) [1715508] - [tools] perf maps: Purge all maps from the 'names' tree (Michael Petlan) [1715508] - [tools] perf map: Remove map from 'names' tree in __maps__remove() (Michael Petlan) [1715508] - [tools] perf hist: Add missing map__put() in error case (Michael Petlan) [1715508] - [tools] perf top: Fix error handling in cmd_top() (Michael Petlan) [1715508] - [tools] perf top: Delete the evlist before perf_session, fixing heap-use-after-free issue (Michael Petlan) [1715508] - [tools] perf build-id: Fix memory leak in print_sdt_events() (Michael Petlan) [1715508] - [tools] perf config: Fix a memory leak in collect_config() (Michael Petlan) [1715508] - [tools] perf config: Fix an error in the config template documentation (Michael Petlan) [1715508] - [tools] perf list: Don't forget to drop the reference to the allocated thread_map (Michael Petlan) [1715508] - [tools] perf tools: Add doc about how to build perf with Asan and UBSan (Michael Petlan) [1715508] - [tools] perf vendor events: Remove P8 HW events which are not supported (Michael Petlan) [1715508] - [tools] perf stat: Improve scaling (Michael Petlan) [1715508] - [tools] perf stat: Fix --no-scale (Michael Petlan) [1715508] - [tools] perf script: Support relative time (Michael Petlan) [1715508] - [tools] perf report: Indicate JITed code better in report (Michael Petlan) [1715508] - [tools] perf report: Show all sort keys in help output (Michael Petlan) [1715508] - [tools] perf record: Clarify help for --switch-output (Michael Petlan) [1715508] - [tools] perf record: Allow to limit number of reported perf.data files (Michael Petlan) [1715508] - [tools] perf list: Filter metrics too (Michael Petlan) [1715508] - [tools] perf tools report: Add custom scripts to script menu (Michael Petlan) [1715508] - [tools] perf ui browser: Fix ui popup argv browser for many entries (Michael Petlan) [1715508] - [tools] perf script: Add array bound checking to list_scripts (Michael Petlan) [1715508] - [tools] perf tools: Add some new tips describing the new options (Michael Petlan) [1715508] - [tools] perf report: Implement browsing of individual samples (Michael Petlan) [1715508] - [tools] perf report: Support builtin perf script in scripts menu (Michael Petlan) [1715508] - [tools] perf report: Support running scripts for current time range (Michael Petlan) [1715508] - [tools] perf report: Support time sort key (Michael Petlan) [1715508] - [tools] perf script: Filter COMM/FORK/.. events by CPU (Michael Petlan) [1715508] - [tools] perf tools: Update x86's syscall_64.tbl, no change in tools/perf behaviour (Michael Petlan) [1715508] - [tools] perf script python: Add printdate function to SQL exporters (Michael Petlan) [1715508] - [tools] perf report: Use less for scripts output (Michael Petlan) [1715508] - [tools] perf session: Add process callback to reader object (Michael Petlan) [1715508] - [tools] perf header: Add DIR_FORMAT feature to describe directory data (Michael Petlan) [1715508] - [tools] perf data: Make perf_data__size() work over directory (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__update_dir() function (Michael Petlan) [1715508] - [tools] perf data: Don't store auxtrace index for directory data file (Michael Petlan) [1715508] - [tools] perf data: Support having perf.data stored as a directory (Michael Petlan) [1715508] - [tools] perf vendor events amd: perf PMU events for AMD Family 17h (Michael Petlan) [1715508] - [tools] perf probe: Fix getting the kernel map (Michael Petlan) [1715508] - [tools] perf report: Parse time quantum (Michael Petlan) [1715508] - [tools] perf time-utils: Add utility function to print time stamps in nanoseconds (Michael Petlan) [1715508] - [tools] perf report: Support output in nanoseconds (Michael Petlan) [1715508] - [tools] perf script: Support insn output for normal samples (Michael Petlan) [1715508] - [tools] perf data: Force perf_data__open|close zero data->file.path (Michael Petlan) [1715508] - [tools] perf session: Fix double free in perf_data__close (Michael Petlan) [1715508] - [tools] perf evsel: Probe for precise_ip with simple attr (Michael Petlan) [1715508] - [tools] perf tools: Read and store caps/max_precise in perf_pmu (Michael Petlan) [1715508] - [tools] perf hist: Fix memory leak of srcline (Michael Petlan) [1715508] - [tools] perf hist: Add error path into hist_entry__init (Michael Petlan) [1715508] - [tools] perf diff: Support --pid/--tid filter options (Michael Petlan) [1715508] - [tools] perf diff: Support --cpu filter option (Michael Petlan) [1715508] - [tools] perf diff: Support --time filter option (Michael Petlan) [1715508] - [tools] perf thread: Generalize function to copy from thread addr space from intel-bts code (Michael Petlan) [1715508] - [tools] perf annotate: Calculate the max instruction name, align column to that (Michael Petlan) [1715508] - [tools] perf clang: Remove needless extra semicolon (Michael Petlan) [1715508] - [tools] perf bpf: Automatically add BTF ELF markers (Michael Petlan) [1715508] - [tools] perf beauty msg_flags: Add missing s lost when adding prefix suppression logic (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Add call tree (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out CallGraphModelBase (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Improve TreeModel abstraction (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out TreeWindowBase (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-postgresql.py: Export calls parent_id (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-postgresql.py: Fix invalid input syntax for integer error (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-sqlite.py: Export calls parent_id (Michael Petlan) [1715508] - [tools] perf db-export: Add calls parent_id to enable creation of call trees (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix divide by zero when TSC is not available (Michael Petlan) [1715508] - [tools] perf auxtrace: Improve address filter error message when there is no DSO (Michael Petlan) [1715508] - [tools] perf time-utils: Refactor time range parsing code (Michael Petlan) [1715508] - [tools] tools lib traceevent: Fix buffer overflow in arg_eval (Michael Petlan) [1715508] - [tools] perf probe: Clarify error message about not finding kernel modules debuginfo (Michael Petlan) [1715508] - [tools] replace open encodings for NUMA_NO_NODE (Michael Petlan) [1715508] - [tools] perf script python: Add Python3 support to stat-cpi.py (Michael Petlan) [1715508] - [tools] perf tools: Add perf_exe() helper to find perf binary (Michael Petlan) [1715508] - [tools] perf script: Handle missing fields with -F +. (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__open_dir_data function (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__(create_dir|close_dir) functions (Michael Petlan) [1715508] - [tools] perf data: Fail check_backup in case of error (Michael Petlan) [1715508] - [tools] perf data: Make check_backup work over directories (Michael Petlan) [1715508] - [tools] perf tools: Add rm_rf_perf_data function (Michael Petlan) [1715508] - [tools] perf tools: Add pattern name checking to rm_rf (Michael Petlan) [1715508] - [tools] perf tools: Add depth checking to rm_rf (Michael Petlan) [1715508] - [tools] perf data: Add global path holder (Michael Petlan) [1715508] - [tools] perf data: Move size to struct perf_data_file (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Add top calls report (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove no selection error (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove SQLTableDialogDataItem (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Create new dialog data item classes (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Move report name into ReportVars (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out ReportVars (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out ReportDialogBase (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Move column headers (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Hide Call Graph option if no calls table (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove leftover debugging prints (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Fix missing shebang (Michael Petlan) [1715508] - [tools] perf thread-stack: Hide x86 retpolines (Michael Petlan) [1715508] - [tools] perf thread-stack: Improve thread_stack__no_call_return() (Michael Petlan) [1715508] - [tools] perf tools: Make rm_rf() remove single file (Michael Petlan) [1715508] - [tools] perf cpumap: Increase debug level for cpu_map__snprint verbose output (Michael Petlan) [1715508] - [tools] perf bpf-event: Add missing new line into pr_debug call (Michael Petlan) [1715508] - [tools] perf script: Allow +- operator for type specific fields option (Michael Petlan) [1715508] - [tools] perf evsel: Force sample_type for slave events (Michael Petlan) [1715508] - [tools] perf session: Don't report zero period samples for slave events (Michael Petlan) [1715508] - [tools] perf trace: Allow dumping a BPF map after setting up BPF events (Michael Petlan) [1715508] - [tools] perf bpf: Add bpf_map dumper (Michael Petlan) [1715508] - [tools] perf doc: Fix documentation of the Flags section in perf.data (Michael Petlan) [1715508] - [tools] perf doc: Fix HEADER_CMDLINE description in perf.data documentation (Michael Petlan) [1715508] - [tools] perf report: Don't shadow inlined symbol with different addr range (Michael Petlan) [1715508] - [tools] perf tools: Use sysfs__mountpoint() when reading cpu topology (Michael Petlan) [1715508] - [tools] perf tools: Add numa_topology object (Michael Petlan) [1715508] - [tools] perf tools: Add cpu_topology object (Michael Petlan) [1715508] - [tools] perf tests shell: Skip trace+probe_vfs_getname.sh if built without trace support (Michael Petlan) [1715508] - [tools] perf header: Remove unused 'cpu_nr' field from 'struct cpu_topo' (Michael Petlan) [1715508] - [tools] perf header: Get rid of write_it label (Michael Petlan) [1715508] - [tools] perf list: Display metric expressions for --details option (Michael Petlan) [1715508] - [tools] perf tools: Fix legacy events symbol separator parsing (Michael Petlan) [1715508] - [tools] perf tools: Rename build libperf to perf (Michael Petlan) [1715508] - [tools] perf tools: Rename LIB_FILE to LIBPERF_A (Michael Petlan) [1715508] - [tools] perf tools: Compile perf with libperf-in.o instead of libperf.a (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize auxtrace_buffer fetch function (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize main packet processing loop (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize main decoder function (Michael Petlan) [1715508] - [tools] perf cs-etm: Make cs_etm__run_decoder() queue independent (Michael Petlan) [1715508] - [tools] perf cs-etm: Rethink kernel address initialisation (Michael Petlan) [1715508] - [tools] perf cs-etm: Cleaning up function cs_etm__alloc_queue() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix erroneous comment (Michael Petlan) [1715508] - [tools] perf cs-etm: Introducing function cs_etm__init_trace_params() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix memory leak in error path (Michael Petlan) [1715508] - [tools] perf cs-etm: Introducing function cs_etm_decoder__init_dparams() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix wrong return values in error path (Michael Petlan) [1715508] - [tools] perf cs-etm: Remove unused structure field "time" and "timestamp" (Michael Petlan) [1715508] - [tools] perf cs-etm: Remove unused structure field "state" (Michael Petlan) [1715508] - [tools] perf build: Add missing FEATURE_CHECK_LDFLAGS-libcrypto (Michael Petlan) [1715508] - [tools] perf unwind: Do not put libunwind-{x86, aarch64} in FEATURE_TESTS_BASIC (Michael Petlan) [1715508] - [tools] perf coresight: Do not test for libopencsd by default (Michael Petlan) [1715508] - [tools] perf trace: Filter out gnome-terminal* parent (Michael Petlan) [1715508] - [tools] perf trace: Check if the 'fd' is negative when mapping it to pathname (Michael Petlan) [1715508] - [tools] perf beauty ioctl cmd: The 'fd' arg is signed (Michael Petlan) [1715508] - [tools] perf utils: Silence "Couldn't synthesize bpf events" warning for EPERM (Michael Petlan) [1715508] - [tools] perf cs-etm: Add proper header file for symbols (Michael Petlan) [1715508] - [tools] perf record: Implement --affinity=node|cpu option (Michael Petlan) [1715508] - [tools] perf auxtrace: Add timestamp to auxtrace errors (Michael Petlan) [1715508] - [tools] perf intel-pt: Packet splitting can happen only on 32-bit (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix CYC timestamp calculation after OVF (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix overlap calculation for padding (Michael Petlan) [1715508] - [tools] perf auxtrace: Define auxtrace record alignment (Michael Petlan) [1715508] - [tools] perf thread-stack: Represent jmps to the start of a different symbol (Michael Petlan) [1715508] - [tools] perf thread-stack: Tidy thread_stack__no_call_return() by adding more local variables (Michael Petlan) [1715508] - [tools] perf thread-stack: Tidy thread_stack__push_cp() usage (Michael Petlan) [1715508] - [tools] perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols (Michael Petlan) [1715508] - [tools] perf vendor events intel: Fix Load_Miss_Real_Latency on CLX (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for exception return packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for exception packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Add traceID in packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Change tuple from traceID-CPU# to traceID-metadata (Michael Petlan) [1715508] - [tools] perf cs-etm: Add exception number in exception packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for trace discontinuity (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for instruction range packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Add last instruction information in packet (Michael Petlan) [1715508] - [tools] perf tools: Add documentation for BPF event selection (Michael Petlan) [1715508] - [tools] perf report: Move symbol annotation to the resort phase (Michael Petlan) [1715508] - [tools] perf evsel: Add output_resort_cb method (Michael Petlan) [1715508] - [tools] perf hists: Add argument to hists__resort_cb_t callback (Michael Petlan) [1715508] - [tools] perf record: Apply affinity masks when reading mmap buffers (Michael Petlan) [1715508] - [tools] perf tools: Add fallback versions for CPU_{OR, EQUAL}() (Michael Petlan) [1715508] - [tools] perf record: Bind the AIO user space buffers to nodes (Michael Petlan) [1715508] - [tools] perf record: Allocate affinity masks (Michael Petlan) [1715508] - [tools] perf pmu: Remove set_drv_config API (Michael Petlan) [1715508] - [tools] perf coresight: Remove set_drv_config() API (Michael Petlan) [1715508] - [tools] perf arm cs-etm: Use event attributes to send sink information to kernel (Michael Petlan) [1715508] - [tools] perf pmu: Move EVENT_SOURCE_DEVICE_PATH to PMU header file (Michael Petlan) [1715508] - [tools] perf bpf-loader: Remove unecessary includes from bpf-loader.h (Michael Petlan) [1715508] - [tools] perf powerpc kvm-stat: Add missing evlist.h header (Michael Petlan) [1715508] - [tools] perf kvm stat: Replace kvm-stat.h includes with forward declarations (Michael Petlan) [1715508] - [tools] perf pmu: Remove needless evsel.h only needs one fwd decl (Michael Petlan) [1715508] - [tools] perf tests pmu: Add missing headers (Michael Petlan) [1715508] - [tools] perf hist: Remove the needless callchain.h include from hist.h (Michael Petlan) [1715508] - [tools] perf tools: Add missing include in various places (Michael Petlan) [1715508] - [tools] perf thread: Don't include symbol.h, symbol_conf.h is enough (Michael Petlan) [1715508] - [tools] perf evsel: No need to include symbol.h in evsel.h, symbol_conf.h is enough (Michael Petlan) [1715508] - [tools] perf tools: Add missing include for symbols.h (Michael Petlan) [1715508] - [tools] perf hist: Remove symbol.h from hist.h, just fwd decls are needed (Michael Petlan) [1715508] - [tools] perf tests: Add missing headers so far obtained indirectly (Michael Petlan) [1715508] - [tools] perf map: Move structs and prototypes for map groups to a separate header (Michael Petlan) [1715508] - [tools] pref tools: Add missing map.h includes (Michael Petlan) [1715508] - [tools] perf symbols: Introduce map_symbol.h (Michael Petlan) [1715508] - [tools] perf callchain: Uninline callchain_cursor_reset() to remove map.h dependency (Michael Petlan) [1715508] - [tools] perf srccode: Move struct definition from map.h to srccode.h (Michael Petlan) [1715508] - [tools] perf arm pmu: Add missing linux/string.h header (Michael Petlan) [1715508] - [tools] perf powerpc: Add missing headers to skip-callchain-idx.c (Michael Petlan) [1715508] - [tools] perf augmented_syscalls: Convert to bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf examples: Convert etcsnoop to use bpf_map() (Michael Petlan) [1715508] - [tools] perf trace: Fixup etcsnoop example (Michael Petlan) [1715508] - [tools] perf augmented_raw_syscalls: Use bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf: Convert pid_map() to bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf: Add bpf_map() helper (Michael Petlan) [1715508] - [tools] perf bpf: Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT (Michael Petlan) [1715508] - [tools] perf sched: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf hist: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf symbols: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf util: Use cached rbtree for rblists (Michael Petlan) [1715508] - [tools] perf callchain: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf machine: Use cached rbtrees (Michael Petlan) [1715508] - [tools] Update rbtree implementation (Michael Petlan) [1715508] - [tools] perf callchain: No need to include perf.h (Michael Petlan) [1715508] - [tools] perf comm: Remove needless headers from comm.h (Michael Petlan) [1715508] - [tools] perf namespaces: Remove namespaces.h from .h headers (Michael Petlan) [1715508] - [tools] perf symbols: Remove some unnecessary includes from symbol.h (Michael Petlan) [1715508] - [tools] perf symbols: Remove include map.h from dso.h (Michael Petlan) [1715508] - [tools] perf block-range: Add missing headers (Michael Petlan) [1715508] - [tools] perf tools: Move branch structs to branch.h (Michael Petlan) [1715508] - [tools] perf annotate: Remove lots of headers from annotate.h (Michael Petlan) [1715508] - [tools] perf symbols: Move symbol_conf to separate file (Michael Petlan) [1715508] - [tools] perf color: Add missing stdarg.g to color.h (Michael Petlan) [1715508] - [tools] perf utils: Move perf_config using routines from color.c to separate object (Michael Petlan) [1715508] - [tools] perf top: Synthesize BPF events for pre-existing loaded BPF programs (Michael Petlan) [1715508] - [tools] perf tools: Synthesize PERF_RECORD_* for loaded BPF programs (Michael Petlan) [1715508] - [tools] perf tools: Handle PERF_RECORD_BPF_EVENT (Michael Petlan) [1715508] - [tools] perf tools: Handle PERF_RECORD_KSYMBOL (Michael Petlan) [1715508] - [tools] tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1715508] - [tools] tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1715508] - [tools] perf report: Display names in s390 diagnostic counter sets (Michael Petlan) [1715508] - [tools] perf tools: Remove duplicate headers (Michael Petlan) [1715508] - [tools] perf session: Add reader__process_events function (Michael Petlan) [1715508] - [tools] perf session: Add 'data_offset' member to reader object (Michael Petlan) [1715508] - [tools] perf session: Add 'data_size' member to reader object (Michael Petlan) [1715508] - [tools] perf session: Add reader object (Michael Petlan) [1715508] - [tools] perf session: Get rid of file_size variable (Michael Petlan) [1715508] - [tools] perf session: Rearrange perf_session__process_events function (Michael Petlan) [1715508] - [tools] perf tools: Replace automatic const char[] variables by statics (Michael Petlan) [1715508] - [tools] perf/doc: Update design.txt for exclude_{host|guest} flags (Michael Petlan) [1715508] - [x86] perf/x86/intel/pt: Remove software double buffering PMU capability (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Fix AUX software double buffering (Michael Petlan) [1715508] - [x86] perf/x86/amd: Update generic hardware cache events for Family 17h (Michael Petlan) [1715508] - [x86] perf/x86/amd: Add event map for AMD Family 17h (Michael Petlan) [1715508] - [x86] perf/x86: Fix incorrect PEBS_REGS (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Fix AUX record suppression (Michael Petlan) [1715508] - [kernel] perf/core: Fix the address filtering fix (Michael Petlan) [1715508] - [kernel] perf/core: Fix perf_event_disable_inatomic() race (Michael Petlan) [1715508] - [x86] perf/x86/intel: Initialize TFA MSR (Michael Petlan) [1715508] - [x86] perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS (Michael Petlan) [1715508] - [kernel] perf/core: Restore mmap record type correctly (Michael Petlan) [1715508] - [x86] perf/x86/intel: Make dev_attr_allow_tsx_force_abort static (Michael Petlan) [1715508] - [kernel] uprobes: convert uprobe.ref to refcount_t (Michael Petlan) [1715508] - [kernel] perf, bpf: Consider events with attr.bpf_event as side-band events (Michael Petlan) [1715508] - [kernel] perf/core: Mark expected switch fall-through (Michael Petlan) [1715508] - [x86] perf/x86/intel/uncore: Fix client IMC events return huge result (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Use high order allocations for AUX buffers optimistically (Michael Petlan) [1715508] - [x86] events: Mark expected switch-case fall-throughs (Michael Petlan) [1715508] - [kernel] perf, pt, coresight: Fix address filters for vmas with non-zero offset (Michael Petlan) [1715508] - [kernel] perf: Copy parent's address filter offsets on clone (Michael Petlan) [1715508] - [x86] perf/x86/intel: Add counter freezing quirk for Goldmont (Michael Petlan) [1715508] - [x86] perf/x86/intel: Clean up counter freezing quirk (Michael Petlan) [1715508] - [x86] perf/x86/intel: Clean up SNB PEBS quirk (Michael Petlan) [1715508] - [x86] perf/x86/kvm: Avoid unnecessary work in guest filtering (Michael Petlan) [1715508] - [perf] aux: Make perf_event accessible to setup_aux() (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Convert ring_buffer.aux_refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Convert ring_buffer.refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf: Convert perf_event_context.refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf/uprobes: Convert to SPDX license identifier (Michael Petlan) [1715508] - [kernel] perf/hw_breakpoints: Convert to SPDX license identifier (Michael Petlan) [1715508] - [kernel] perf/core: Convert to SPDX license identifiers (Michael Petlan) [1715508] - [kernel] perf, bpf: Introduce PERF_RECORD_BPF_EVENT (Michael Petlan) [1715508] - [kernel] perf, bpf: Introduce PERF_RECORD_KSYMBOL (Michael Petlan) [1715508] - [kernel] perf: Remove duplicated workqueue.h include from perf_event.h (Michael Petlan) [1715508] - [tools] perf/core: Remove unused perf_flags (Michael Petlan) [1715508] - [x86] perf/core, arch/x86: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE (Michael Petlan) [1715508] - [x86] perf/core, arch/x86: Use PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1715508] - [kernel] perf/core: Add PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1715508] - [kernel] perf/core: Add function to test for event exclusion flags (Michael Petlan) [1715508]- [kernel] mm/hmm: fix ZONE_DEVICE anon page mapping reuse (Jerome Glisse) [1498655 1597758] - [gpu] drm/nouveau/dmem: missing mutex_lock in error path (Jerome Glisse) [1498655 1597758] - [mm] hmm: always return EBUSY for invalid ranges in hmm_range_{fault, snapshot} (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: move hmm_vma_range_done and hmm_vma_fault to nouveau (Jerome Glisse) [1498655 1597758] - [kernel] mm: factor out a devm_request_free_mem_region helper (Jerome Glisse) [1498655 1597758] - [mm] don't clear ->mapping in hmm_devmem_free (Jerome Glisse) [1498655 1597758] - [mm] remove the struct hmm_device infrastructure (Jerome Glisse) [1498655 1597758] - [mm] hmm: Fix error flows in hmm_invalidate_range_start (Jerome Glisse) [1498655 1597758] - [mm] hmm: Remove confusing comment and logic from hmm_release (Jerome Glisse) [1498655 1597758] - [mm] hmm: Poison hmm_range during unregister (Jerome Glisse) [1498655 1597758] - [mm] hmm: Remove racy protection against double-unregistration (Jerome Glisse) [1498655 1597758] - [mm] hmm: Use lockdep instead of comments (Jerome Glisse) [1498655 1597758] - [mm] hmm: Hold on to the mmget for the lifetime of the range (Jerome Glisse) [1498655 1597758] - [mm] hmm: Do not use list*_rcu() for hmm->ranges (Jerome Glisse) [1498655 1597758] - [mm] hmm: Simplify hmm_get_or_create and make it reliable (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: Remove duplicate condition test before wait_event_timeout (Jerome Glisse) [1498655 1597758] - [mm] hmm: Hold a mmgrab from hmm to mm (Jerome Glisse) [1498655 1597758] - [mm] hmm: Use hmm_mirror not mm as an argument for hmm_range_register (Jerome Glisse) [1498655 1597758] - [mm] hmm: fix use after free with struct hmm in the mmu notifiers (Jerome Glisse) [1498655 1597758] - [mm] hmm: Only set FAULT_FLAG_ALLOW_RETRY for non-blocking (Jerome Glisse) [1498655 1597758] - [mm] hmm: support automatic NUMA balancing (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: clean up some coding style and comments (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: suppress compilation warnings when CONFIG_HUGETLB_PAGE is not set (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: convert various hmm_pfn_* to device_entry which is a better name (Jerome Glisse) [1498655 1597758] - [mm] hmm: add a helper function that fault pages and map them to a device (Jerome Glisse) [1498655 1597758] - [mm] hmm: allow to mirror vma of a file on a DAX backed filesystem (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: add helpers to test if mm is still alive or not (Jerome Glisse) [1498655 1597758] - [mm] hmm: mirror hugetlbfs (snapshoting, faulting and DMA mapping) (Jerome Glisse) [1498655 1597758] - [documentation] [documentation] mm/hmm: add default fault flags to avoid the need to pre-fill pfns arrays (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve driver API to work and wait over a range (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve and rename hmm_vma_fault() to hmm_range_fault() (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve and rename hmm_vma_get_pfns() to hmm_range_snapshot() (Jerome Glisse) [1498655 1597758] - [mm] hmm: do not erase snapshot when a range is invalidated (Jerome Glisse) [1498655 1597758] - [mm] hmm: use reference counting for HMM struct (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: convert to use vm_fault_t (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: remove set but not used variable 'devmem' (Jerome Glisse) [1498655 1597758] - [mm] hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL (Jerome Glisse) [1498655 1597758] - [mm] hmm: replace hmm_devmem_pages_create() with devm_memremap_pages() (Jerome Glisse) [1498655 1597758] - [mm] hmm: use devm semantics for hmm_devmem_{add, remove} (Jerome Glisse) [1498655 1597758] - [mm] hmm: invalidate device page table at start of invalidation (Jerome Glisse) [1498655 1597758] - [mm] hmm: use a structure for update callback parameters (Jerome Glisse) [1498655 1597758] - [mm] hmm: properly handle migration pmd (Jerome Glisse) [1498655 1597758] - [mm] hmm: fix utf8 . (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: remove unused variables align_start and align_end (Jerome Glisse) [1498655 1597758] - [hid] hyperv: Use in-place iterator API in the channel callback (Benjamin Tissoires) [1740778 1772010] - [hid] logitech-hidpp: do all FF cleanup in hidpp_ff_destroy() (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: rework device validation (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: split g920_get_config() (Benjamin Tissoires) [1740778] - [hid] fix error message in hid_open_report() (Benjamin Tissoires) [1740778] - [hid] Fix assumption that devices have inputs (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add Trekstor Primebook C11B to descriptor override (Benjamin Tissoires) [1740778] - [hid] apple: Fix stuck function keys when using FN (Benjamin Tissoires) [1740778] - [hid] wacom: Fix several minor compiler warnings (Benjamin Tissoires) [1740778] - [hid] Add quirk for HP X500 PIXART OEM mouse (Benjamin Tissoires) [1740778] - [hid] hidraw: Fix invalid read in hidraw_ioctl (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix crash when initial logi_dj_recv_query_paired_devices fails (Benjamin Tissoires) [1740778] - [hid] logitech: Fix general protection fault caused by Logitech driver (Benjamin Tissoires) [1740778] - [hid] sony: Fix memory corruption issue on cleanup (Benjamin Tissoires) [1740778] - [hid] prodikeys: Fix general protection fault during probe (Benjamin Tissoires) [1740778] - [hid] wacom: correct misreported EKR ring values (Benjamin Tissoires) [1740778] - [hid] cp2112: prevent sleeping function called from invalid context (Benjamin Tissoires) [1740778] - [hid] wacom: Correct distance scale for 2nd-gen Intuos devices (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove support for the G700 over USB (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech-hidpp: add USB PID for a few more supported mice" (Benjamin Tissoires) [1740778] - [hid] sony: Fix race condition between rumble and device remove (Benjamin Tissoires) [1740778] - [hid] hiddev: do cleanup in failure of opening a device (Benjamin Tissoires) [1740778] - [hid] hiddev: avoid opening a disconnected device (Benjamin Tissoires) [1740778] - [hid] input: fix a4tech horizontal wheel custom usage (Benjamin Tissoires) [1740778] - [hid] Add quirk for HP X1200 PIXART OEM mouse (Benjamin Tissoires) [1740778] - [hid] holtek: test for sanity of intfdata (Benjamin Tissoires) [1740778] - [hid] wacom: fix bit shift for Cintiq Companion 2 (Benjamin Tissoires) [1740778] - [hid] quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Really fix return value of logi_dj_recv_query_hidpp_devices (Benjamin Tissoires) [1740778] - [hid] Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add the Powerplay receiver (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add USB PID for a few more supported mice (Benjamin Tissoires) [1740778] - [hid] logitech-dj: rename "gaming" receiver to "lightspeed" (Benjamin Tissoires) [1740778] - [hid] Add another Primax PIXART OEM mouse quirk (Benjamin Tissoires) [1740778] - [hid] wacom: generic: add touchring adjustment for 2nd Gen Pro Small (Benjamin Tissoires) [1740778] - [hid] quirks: Refactor ELAN 400 and 401 handling (Benjamin Tissoires) [1740778] - [hid] video: fbdev: don't print error message on framebuffer_alloc() failure (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix forwarding of very long HID++ reports (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Huion HS64 tablet (Benjamin Tissoires) [1740778] - [hid] wacom: add new MobileStudio Pro support (Benjamin Tissoires) [1740778] - [hid] wacom: generic: read the number of expected touches on a per collection basis (Benjamin Tissoires) [1740778] - [hid] wacom: generic: support the 'report valid' usage for touch (Benjamin Tissoires) [1740778] - [hid] wacom: generic: read HID_DG_CONTACTMAX from any feature report (Benjamin Tissoires) [1740778] - [hid] wacom: Add 2nd gen Intuos Pro Small support (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee Rainbow CV720 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix return value of logi_dj_recv_query_hidpp_devices (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 372 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 307 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 297 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 267 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 265 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix 064d:c52f receiver support (Benjamin Tissoires) [1740778] - [hid] revert "hid: core: Call request_module before doing device_add" (Benjamin Tissoires) [1740778] - [hid] revert "hid: core: Do not call request_module() in async context" (Benjamin Tissoires) [1740778] - [hid] revert "hid: Increase maximum report size allowed by hid_field_extract()" (Benjamin Tissoires) [1740778] - [hid] a4tech: fix horizontal scrolling (Benjamin Tissoires) [1740778] - [hid] hyperv: Add a module description line (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: Add support for the S510 remote control (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: hid: make const array consumer_rdesc_start static (Benjamin Tissoires) [1740778] - [hid] logitech-dj: make const array template static (Benjamin Tissoires) [1740778] - [hid] multitouch: handle faulty Elo touch device (Benjamin Tissoires) [1740778] - [input] treewide: Add SPDX license identifier for more missed files (Benjamin Tissoires) [1740778] - [hid] wacom: Sync INTUOSP2_BT touch state after each frame if necessary (Benjamin Tissoires) [1740778] - [hid] wacom: Correct button numbering 2nd-gen Intuos Pro over Bluetooth (Benjamin Tissoires) [1740778] - [hid] wacom: Send BTN_TOUCH in response to INTUOSP2_BT eraser contact (Benjamin Tissoires) [1740778] - [hid] wacom: Don't report anything prior to the tool entering range (Benjamin Tissoires) [1740778] - [hid] wacom: Don't set tool type until we're in range (Benjamin Tissoires) [1740778] - [hid] wacom: correct touch resolution x/y typo (Benjamin Tissoires) [1740778] - [hid] wacom: generic: Correct pad syncing (Benjamin Tissoires) [1740778] - [hid] wacom: generic: only switch the mode on devices with LEDs (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Add usb-id for the 27MHz MX3000 receiver (Benjamin Tissoires) [1740778] - [hid] rmi: Use SET_REPORT request on control endpoint for Acer Switch 3 and 5 (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for the MX5500 keyboard (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for the Logitech MX5500's Bluetooth Mini-Receiver (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add iBall Aer3 to descriptor override (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix spelling in printk (Benjamin Tissoires) [1740778] - [hid] input: add mapping for KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [1740778] - [hid] input: fix assignment of .value (Benjamin Tissoires) [1740778] - [hid] input: make sure the wheel high resolution multiplier is set (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add usbhid dependency in Kconfig (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 consumer keys reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 extra mouse buttons reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 wheel reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: make hidpp10_set_register_bit a bit more generic (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add input_device ptr to struct hidpp_device (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: do not hardcode very long report length (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: handle devices attached to 27MHz wireless receivers (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: use RAP instead of FAP to get the protocol version (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove unused origin_is_hid_core function parameter (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove double assignment from __hidpp_send_report (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: do not make failure to get the name fatal (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: ignore very-short or empty names (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: make .probe usbhid capable (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: allow non HID++ devices to be handled by this module (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for Logitech Bluetooth Mini-Receiver (Benjamin Tissoires) [1740778] - [hid] logitech-dj: make appending of the HID++ descriptors conditional (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove false-positive error on double queueing of delayed-work (Benjamin Tissoires) [1740778] - [hid] logitech-dj: pick a better name for non-unifying receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: deal with some KVMs adding an extra interface to the usbdev (Benjamin Tissoires) [1740778] - [hid] logitech-dj: replace dev_err calls with hid_err calls (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for 27 MHz mouse-only receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for 27 MHz receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for the gaming unifying receiver (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for non unifying receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add logi_dj_recv_queue_unknown_work helper (Benjamin Tissoires) [1740778] - [hid] logitech-dj: support sharing struct dj_receiver_dev between USB-interfaces (Benjamin Tissoires) [1740778] - [hid] logitech-dj: rename dj_receiver_dev.hdev to dj_receiver_dev.hidpp (Benjamin Tissoires) [1740778] - [hid] logitech-dj: protect the paired_dj_devices access in add_djhid_dev with the lock (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove unused querying_devices variable (Benjamin Tissoires) [1740778] - [hid] logitech-dj: do not schedule the dj report itself (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove USB dependency (Benjamin Tissoires) [1740778] - [hid] logitech-dj: declare and use a few HID++ 1.0 constants (Benjamin Tissoires) [1740778] - [hid] logitech-dj: use BIT() macro for RF Report types (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix variable naming in logi_dj_hidpp_event (Benjamin Tissoires) [1740778] - [hid] logitech-dj: reshuffle logi_dj_recv_forward_* (Benjamin Tissoires) [1740778] - [hid] logitech: Stop setting drvdata to NULL on probe failure and remove (Benjamin Tissoires) [1740778] - [hid] quirks: do not blacklist Logitech devices (Benjamin Tissoires) [1740778] - [hid] u2fzero: fail probe if not using USB transport (Benjamin Tissoires) [1740778] - [hid] u2fzero: fix compiling error in u2fzero_probe() (Benjamin Tissoires) [1740778] - [hid] revert "hid: i2c-hid: Disable runtime PM on Synaptics touchpad" (Benjamin Tissoires) [1740778] - [hid] add driver for U2F Zero built-in LED and RNG (Benjamin Tissoires) [1740778] - [hid] core: Do not call request_module() in async context (Benjamin Tissoires) [1740778] - [hid] macally: Add support for Macally ikey keyboard (Benjamin Tissoires) [1740778] - [hid] core: Call request_module before doing device_add (Benjamin Tissoires) [1740778] - [hid] core: move Usage Page concatenation to Main item (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: change low battery level threshold from 31 to 30 percent (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove hidpp_is_connected() (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: simplify printing of HID++ version (Benjamin Tissoires) [1740778] - [hid] picolcd: Convert to use sysfs_streq() (Benjamin Tissoires) [1740778] - [hid] hid-sensor-custom: simplify getting .driver_data (Benjamin Tissoires) [1740778] - [hid] input: add mapping for Assistant key (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM on Synaptics touchpad (Benjamin Tissoires) [1740778] - [hid] quirks: Fix keyboard + touchpad on Lenovo Miix 630 (Benjamin Tissoires) [1740778] - [hid] input: add mapping for "Toggle Display" key (Benjamin Tissoires) [1740778] - [hid] input: add mapping for "Full Screen" key (Benjamin Tissoires) [1740778] - [hid] input: add mapping for keyboard Brightness Up/Down/Toggle keys (Benjamin Tissoires) [1740778] - [hid] input: add mapping for Expose/Overview key (Benjamin Tissoires) [1740778] - [hid] input: fix mapping of aspect ratio key (Benjamin Tissoires) [1740778] - [hid] logitech: Handle 0 scroll events for the m560 (Benjamin Tissoires) [1740778] - [hid] debug: fix race condition with between rdesc_show() and device removal (Benjamin Tissoires) [1740778] - [hid] logitech: check the return value of create_singlethread_workqueue (Benjamin Tissoires) [1740778] - [hid] steam: fix deadlock with input devices (Benjamin Tissoires) [1740778] - [hid] uclogic: remove redudant duplicated null check on ver_ptr (Benjamin Tissoires) [1740778] - [hid] quirks: Drop misused kernel-doc annotation (Benjamin Tissoires) [1740778] - [hid] quirks: use correct format chars in dbg_hid (Benjamin Tissoires) [1740778] - [hid] Remove Waltop tablets from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] Remove KYE tablets from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] Remove hid-uclogic entries from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] uclogic: Do not initialize non-USB devices (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee G5 (Benjamin Tissoires) [1740778] - [hid] uclogic: Support Gray-coded rotary encoders (Benjamin Tissoires) [1740778] - [hid] uclogic: Support faking Wacom pad device ID (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Deco 01 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Star G640 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Star G540 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee EX07S frame controls (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee M540 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee 2150 (Benjamin Tissoires) [1740778] - [hid] uclogic: Support v2 protocol (Benjamin Tissoires) [1740778] - [hid] uclogic: Support fragmented high-res reports (Benjamin Tissoires) [1740778] - [hid] uclogic: Support in-range reporting emulation (Benjamin Tissoires) [1740778] - [hid] uclogic: Designate current protocol v1 (Benjamin Tissoires) [1740778] - [hid] uclogic: Re-initialize tablets on resume (Benjamin Tissoires) [1740778] - [hid] uclogic: Extract tablet parameter discovery into a module (Benjamin Tissoires) [1740778] - [hid] uclogic: Extract report descriptors to a module (Benjamin Tissoires) [1740778] - [hid] Clarify vendor ID reuse by Ugee tablets (Benjamin Tissoires) [1740778] - [hid] viewsonic: Support PD1011 signature pad (Benjamin Tissoires) [1740778] - [hid] kye: Add support for EasyPen M406XE (Benjamin Tissoires) [1740778] - [hid] wacom: Add support for Pro Pen slim (Benjamin Tissoires) [1740778] - [hid] roccat: Mark expected switch fall-through (Benjamin Tissoires) [1740778] - [hid] wacom: Mark expected switch fall-through (Benjamin Tissoires) [1740778] - [hid] fix Logitech WingMan Formula GP joined axes (Benjamin Tissoires) [1740778] - [hid] multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons (Benjamin Tissoires) [1740778] - [hid] steam: fix boot loop with bluetooth firmware (Benjamin Tissoires) [1740778] - [hid] Add ASUS T100CHI keyboard dock battery quirks (Benjamin Tissoires) [1740778] - [hid] Add support for Toshiba WT10A tablet bluetooth keyboard (Benjamin Tissoires) [1740778] - [hid] wacom: Move HID fix for AES serial number into wacom_hid_usage_quirk (Benjamin Tissoires) [1740778] - [hid] elan: Make array buf static, shrinks object size (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Ignore input report if there's no data present on Elan touchpanels (Benjamin Tissoires) [1740778] - [hid] core: simplify active collection tracking (Benjamin Tissoires) [1740778] - [hid] Support for Maltron L90 keyboard media keys (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM on Goodix touchpad (Benjamin Tissoires) [1740778] - [hid] sony: Fix SHANWAN PS3 GamePad rumble and led settings support (Benjamin Tissoires) [1740778] - [hid] sony: Transform one-time SHANWAN check into quirk (Benjamin Tissoires) [1740778] - [hid] core: replace the collection tree pointers with indices (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add Odys Winbook 13 to descriptor override (Benjamin Tissoires) [1740778] - [hid] lenovo: Add checks to fix of_led_classdev_register (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: add MSI interrupt support (Benjamin Tissoires) [1740778] - [hid] debug: Change to use DEFINE_SHOW_ATTRIBUTE macro (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: fixes incorrect error handling (Benjamin Tissoires) [1740778] - [hid] logitech: Use LDJ_DEVICE macro for existing Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Enable high-resolution scrolling on Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Add function to enable HID++ 1.0 "scrolling acceleration" (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: fix typo, hiddpp to hidpp (Benjamin Tissoires) [1740778] - [hid] input: use the Resolution Multiplier for high-resolution scrolling (Benjamin Tissoires) [1740778] - [hid] core: process the Resolution Multiplier (Benjamin Tissoires) [1740778] - [hid] core: store the collections as a basic tree (Benjamin Tissoires) [1740778] - [hid] cougar: Add support for Cougar 700K Gaming Keyboard (Benjamin Tissoires) [1740778] - [hid] hidraw: enforce minors_lock locking via lockdep (Benjamin Tissoires) [1740778] - [hid] quirks: fix RetroUSB.com devices (Benjamin Tissoires) [1740778] - [kernel] hid: input: support Microsoft wireless radio control hotkey (Benjamin Tissoires) [1740778] - [kernel] hid: use macros in IS_INPUT_APPLICATION (Benjamin Tissoires) [1740778] - [hid] ite: Add USB id match for another ITE based keyboard rfkill key quirk (Benjamin Tissoires) [1740778] - [hid] revert "hid: input: Create a utility class for counting scroll events" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Add function to enable HID++ 1.0 "scrolling acceleration"" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Enable high-resolution scrolling on Logitech mice" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Use LDJ_DEVICE macro for existing Logitech mice" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: fix a used uninitialized GCC warning" (Benjamin Tissoires) [1740778] - [hid] revert "hid: input: simplify/fix high-res scroll event handling" (Benjamin Tissoires) [1740778] - [hid] Add quirk for Primax PIXART OEM mice (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM for LG touchscreen (Benjamin Tissoires) [1740778] - [hid] steam: remove input device when a hid client is running (Benjamin Tissoires) [1740778] - [hid] revert "hid: uhid: use strlcpy() instead of strncpy()" (Benjamin Tissoires) [1740778] - [hid] uhid: forbid UHID_CREATE under KERNEL_DS or elevated privileges (Benjamin Tissoires) [1740778] - [hid] iio/hid-sensors: Fix IIO_CHAN_INFO_RAW returning wrong values for signed numbers (Benjamin Tissoires) [1740778] - [hid] input: Ignore battery reported by Symbol DS4308 (Benjamin Tissoires) [1740778] - [hid] Add quirk for Microsoft PIXART OEM mouse (Benjamin Tissoires) [1740778] - [kernel] hid: fix up .raw_event() documentation (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add Direkt-Tek DTLAPY133-1 to descriptor override (Benjamin Tissoires) [1740778] - [hid] input: simplify/fix high-res scroll event handling (Benjamin Tissoires) [1740778] - [hid] we do not randomly make new drivers 'default y' (Benjamin Tissoires) [1740778] - [hid] i2c-hid: properly terminate i2c_hid_dmi_desc_override_table[] array (Benjamin Tissoires) [1740778] - [hid] alps: allow incoming reports when only the trackstick is opened (Benjamin Tissoires) [1740778] - [hid] revert "hid: add NOGET quirk for Eaton Ellipse MAX UPS" (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add a small delay after sleep command for Raydium touchpanel (Benjamin Tissoires) [1740778] - [hid] usbhid: Add quirk for Redragon/Dragonrise Seymur 2 (Benjamin Tissoires) [1740778] - [hid] wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452 (Benjamin Tissoires) [1740778] - [hid] google: add dependency on Cros EC for Hammer (Benjamin Tissoires) [1740778] - [hid] elan: fix spelling mistake "registred" -> "registered" (Benjamin Tissoires) [1740778] - [hid] google: drop superfluous const before SIMPLE_DEV_PM_OPS() (Benjamin Tissoires) [1740778] - [hid] google: add support tablet mode switch for Whiskers (Benjamin Tissoires) [1740778] - [hid] magicmouse: add support for Apple Magic Trackpad 2 (Benjamin Tissoires) [1740778] - [hid] i2c-hid: override HID descriptors for certain devices (Benjamin Tissoires) [1740778] - [hid] hid-bigbenff: driver for BigBen Interactive PS3OFMINIPAD gamepad (Benjamin Tissoires) [1740778] - [hid] logitech: fix a used uninitialized GCC warning (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: using list_head for ipc write queue (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: use resource-managed api (Benjamin Tissoires) [1740778] - [hid] intel_ish-hid: Enhance API to get ring buffer sizes (Benjamin Tissoires) [1740778] - [hid] input: Set INPUT_PROP_-property for HID_UP_DIGITIZERS (Benjamin Tissoires) [1740778] - [hid] microsoft: the driver now neeed MEMLESS_FF infrastructure (Benjamin Tissoires) [1740778] - [hid] cougar: Stop processing vendor events on hid-core (Benjamin Tissoires) [1740778] - [hid] cougar: Make parameter 'g6_is_space' dinamically settable (Benjamin Tissoires) [1740778] - [hid] microsoft: Add rumble support for Xbox One S controller (Benjamin Tissoires) [1740778] - [hid] microsoft: Convert private data to be a proper struct (Benjamin Tissoires) [1740778] - [hid] logitech: Use LDJ_DEVICE macro for existing Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Enable high-resolution scrolling on Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Add function to enable HID++ 1.0 "scrolling acceleration" (Benjamin Tissoires) [1740778] - [hid] input: Create a utility class for counting scroll events (Benjamin Tissoires) [1740778] - [hid] multitouch: simplify the application retrieval (Benjamin Tissoires) [1740778] - [hid] input: do not append a suffix if the name already has it (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Remove RESEND_REPORT_DESCR quirk and its handling (Benjamin Tissoires) [1740778] - [hid] i2c-hid: disable runtime PM operations on hantick touchpad (Benjamin Tissoires) [1740778] - [hid] sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub report (Benjamin Tissoires) [1740778] - [hid] core: fix NULL pointer dereference (Benjamin Tissoires) [1740778] - [hid] hid-saitek: Add device ID for RAT 7 Contagion (Benjamin Tissoires) [1740778] - [hid] core: fix memory leak on probe (Benjamin Tissoires) [1740778] - [hid] add support for Apple Magic Keyboards (Benjamin Tissoires) [1740778] - [hid] intel_ish-hid: tx_buf memory leak on probe/remove (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: Prevent loading of driver on Mehlow (Benjamin Tissoires) [1740778] - [hid] cougar: Add support for the Cougar 500k Gaming Keyboard (Benjamin Tissoires) [1740778] - [hid] cougar: make compare_device_paths reusable (Benjamin Tissoires) [1740778] - [hid] multitouch: handle palm for touchscreens (Benjamin Tissoires) [1740778] - [hid] multitouch: touchscreens also use confidence reports (Benjamin Tissoires) [1740778] - [hid] multitouch: report MT_TOOL_PALM for non-confident touches (Benjamin Tissoires) [1740778] - [hid] microsoft: support the Surface Dial (Benjamin Tissoires) [1740778] - [hid] core: do not upper bound the collection stack (Benjamin Tissoires) [1740778] - [hid] input: enable Totem on the Dell Canvas 27 (Benjamin Tissoires) [1740778] - [hid] multitouch: remove one copy of values (Benjamin Tissoires) [1740778] - [hid] multitouch: ditch mt_report_id (Benjamin Tissoires) [1740778] - [hid] multitouch: store a per application quirks value (Benjamin Tissoires) [1740778] - [hid] multitouch: Store per collection multitouch data (Benjamin Tissoires) [1740778] - [hid] multitouch: make sure the static list of class is not changed (Benjamin Tissoires) [1740778] - [hid] elan: Add support for touchpad on the Toshiba Click Mini L9W (Benjamin Tissoires) [1740778] - [hid] elan: Add USB-id for HP x2 10-n000nd touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Add a flag for selecting if the touchpad has a LED (Benjamin Tissoires) [1740778] - [hid] elan: Query resolution from the touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Query device max_x and max_y value from touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Hardcode finger-count and usb-interface (Benjamin Tissoires) [1740778] - [hid] elan: Correctly report MT_PRESSURE instead of TOOL_WIDTH (Benjamin Tissoires) [1740778] - [hid] elan: Stop claiming we have TOUCH_MAJOR and then never reporting it (Benjamin Tissoires) [1740778] - [hid] elan: Remove unused max_area_x and max_area_y vatiables (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sc->output_report_dmabuf (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_battery_probe() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_leds_init() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_register_sensors() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_register_touchpad() (Benjamin Tissoires) [1740778] - [hid] wacom: convert Wacom custom usages to standard HID usages (Benjamin Tissoires) [1740778] - [hid] wacom: Move handling of HID quirks into a dedicated function (Benjamin Tissoires) [1740778] - [hid] wacom: Replace touch_max fixup code with static touch_max definitions (Benjamin Tissoires) [1740778] - [hid] wiimote: add support for Guitar-Hero devices (Benjamin Tissoires) [1740778] - [hid] usbhid: use irqsave() in USB's complete callback (Benjamin Tissoires) [1740778] - [hid] redragon: fix num lock and caps lock LEDs (Benjamin Tissoires) [1740778] - [hid] hid-ntrig: add error handling for sysfs_create_group (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add vddl regulator control (Benjamin Tissoires) [1740778] - [uapi] input: document meanings of KEY_SCREEN and KEY_ZOOM (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - avoid processing unknown IRQs (Benjamin Tissoires) [1740778] - [input] revert "input: elantech - enable SMBus on new (2018+) systems" (Benjamin Tissoires) [1740778] - [input] elantech - annotate fall-through case in elantech_use_host_notify() (Benjamin Tissoires) [1740778] - [samples] treewide: Add SPDX license identifier - Makefile/Kconfig (Benjamin Tissoires) [1740778] - [kernel] input: elan_i2c - remove Lenovo Legion Y7000 PnpID (Benjamin Tissoires) [1740778] - [input] synaptics - enable RMI mode for HP Spectre X360 (Benjamin Tissoires) [1740778] - [input] elantech - enable SMBus on new (2018+) systems (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard: Use in-place iterator API in the channel callback (Benjamin Tissoires) [1740778] - [input] usbtouchscreen - initialize PM mutex before using it (Benjamin Tissoires) [1740778] - [input] alps - fix a mismatch between a condition check and its comment (Benjamin Tissoires) [1740778] - [input] psmouse - fix build error of multiple definition (Benjamin Tissoires) [1740778] - [input] alps - don't handle ALPS cs19 trackpoint-only device (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard - remove dependencies on PAGE_SIZE for ring buffer (Benjamin Tissoires) [1740778] - [input] synaptics - fix misuse of strlcpy (Benjamin Tissoires) [1740778] - [input] synaptics - whitelist Lenovo T580 SMBus intertouch (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBUS on T480 thinkpad trackpad (Benjamin Tissoires) [1740778] - [input] joydev - extend absolute mouse detection (Benjamin Tissoires) [1740778] - [kernel] input: elan_i2c - export the device id whitelist (Benjamin Tissoires) [1740778] - [kernel] pm: suspend: Rename pm_suspend_via_s2idle() (Benjamin Tissoires) [1740778] - [kernel] pm: sleep: Add kerneldoc comments to some functions (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus on ThinkPad E480 and E580 (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - remove set but not used variable 'sensor_flags' (Benjamin Tissoires) [1740778] - [input] uinput - add compat ioctl number translation for UI_*_FF_UPLOAD (Benjamin Tissoires) [1740778] - [input] libps2 - mark expected switch fall-through (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - write config register values to the right offset (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fix enum_fmt (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fill initial format (Benjamin Tissoires) [1740778] - [uapi] input: add KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fix possible double free (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard - add module description (Benjamin Tissoires) [1740778] - [input] i8042 - signal wakeup from atkbd/psmouse (Benjamin Tissoires) [1740778] - [input] evdev - use struct_size() in kzalloc() and vzalloc() (Benjamin Tissoires) [1740778] - [input] elan_i2c - add hardware ID for multiple Lenovo laptops (Benjamin Tissoires) [1740778] - [input] wacom_serial4 - add support for Wacom ArtPad II tablet (Benjamin Tissoires) [1740778] - [input] elan_i2c - add id for touchpad found in Lenovo s21e-20 (Benjamin Tissoires) [1740778] - [input] i8042 - rework DT node name comparisons (Benjamin Tissoires) [1740778] - [input] synaptics_i2c - remove redundant spinlock (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for touchpad in Lenovo V330-15ISK (Benjamin Tissoires) [1740778] - [input] revert "input: elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G" (Benjamin Tissoires) [1740778] - [input] elantech - enable 3rd button support on Fujitsu CELSIUS H780 (Benjamin Tissoires) [1740778] - [uapi] input: input_event - fix the CONFIG_SPARC64 mixup (Benjamin Tissoires) [1740778] - [input] uinput - fix undefined behavior in uinput_validate_absinfo() (Benjamin Tissoires) [1740778] - [uapi] input: input_event - provide override for sparc64 (Benjamin Tissoires) [1740778] - [input] soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device (Benjamin Tissoires) [1740778] - [input] soc_button_array - add usage-page 0x01 usage-id 0xca mapping (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus for HP EliteBook 840 G4 (Benjamin Tissoires) [1740778] - [input] synaptics - enable RMI on ThinkPad T560 (Benjamin Tissoires) [1740778] - [documentation] input: add `REL_WHEEL_HI_RES` and `REL_HWHEEL_HI_RES` (Benjamin Tissoires) [1740778] - [uapi] input: restore EV_ABS ABS_RESERVED (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus for HP 15-ay000 (Benjamin Tissoires) [1740778] - [input] synaptics - add PNP ID for ThinkPad P50 to SMBus (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15ARR (Benjamin Tissoires) [1740778] - [input] elan_i2c - add support for ELAN0621 touchpad (Benjamin Tissoires) [1740778] - [documentation] revert "input: Add the `REL_WHEEL_HI_RES` event code" (Benjamin Tissoires) [1740778] - [input] atkbd - clean up indentation issue (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ELAN0620 to the ACPI table (Benjamin Tissoires) [1740778] - [input] synaptics - avoid using uninitialized variable when probing (Benjamin Tissoires) [1740778] - [input] xen-kbdfront - mark expected switch fall-through (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15IGM (Benjamin Tissoires) [1740778] - [input] of_touchscreen - add support for touchscreen-min-x|y (Benjamin Tissoires) [1740778] - [input] elants_i2c - use DMA safe i2c when possible (Benjamin Tissoires) [1740778] - [input] uinput - add a schedule point in uinput_inject_events() (Benjamin Tissoires) [1740778] - [input] evdev - add a schedule point in evdev_write() (Benjamin Tissoires) [1740778] - [input] mousedev - add a schedule point in mousedev_write() (Benjamin Tissoires) [1740778] - [uapi] input: reserve 2 events code because of HID (Benjamin Tissoires) [1740778] - [input] i8042 - enable keyboard wakeups by default when s2idle is used (Benjamin Tissoires) [1740778] - [input] uinput - allow for max == min during input_absinfo validation (Benjamin Tissoires) [1740778] - [input] atakbd - fix Atari CapsLock behaviour (Benjamin Tissoires) [1740778] - [input] atakbd - fix Atari keymap (Benjamin Tissoires) [1740778] - [documentation] input: Add the `REL_WHEEL_HI_RES` event code (Benjamin Tissoires) [1740778] - [input] mark expected switch fall-throughs (Benjamin Tissoires) [1740778] - [input] evdev - switch to bitmap API (Benjamin Tissoires) [1740778] - [input] elan_i2c_smbus - cast sizeof to int for comparison (Benjamin Tissoires) [1740778] - [uapi] input: stop telling users to snail-mail Vojtech (Benjamin Tissoires) [1740778] - [documentation] input: add MT_TOOL_DIAL (Benjamin Tissoires) [1740778] - [input] i8042 - increment wakeup_count for the respective port (Benjamin Tissoires) [1740778] - [input] xen-kbdfront - allow better run-time configuration (Benjamin Tissoires) [1740778] - [xen] Sync up with the canonical protocol definitions in Xen (Benjamin Tissoires) [1740778] - [cpufreq] dev_pm_qos_update_request() can return 1 on success (Al Stone) [1739729 1725581] - [cpufreq] Make cpufreq_generic_init() return void (Al Stone) [1739729 1725581] - [cpufreq] Add QoS requests for userspace constraints (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Reuse refresh_frequency_limits() (Al Stone) [1739729 1725581] - [cpufreq] Register notifiers with the PM QoS framework (Al Stone) [1739729 1725581] - [base] pm / qos: Add support for MIN/MAX frequency constraints (Al Stone) [1739729 1725581] - [base] pm / qos: Pass request type to dev_pm_qos_read_value() (Al Stone) [1739729 1725581] - [base] pm / qos: Rename __dev_pm_qos_read_value() and dev_pm_qos_raw_read_value() (Al Stone) [1739729 1725581] - [base] pm / qos: Pass request type to dev_pm_qos_{add|remove}_notifier() (Al Stone) [1739729 1725581] - [cpufreq] Avoid calling cpufreq_verify_current_freq() from handle_update() (Al Stone) [1739729 1725581] - [cpufreq] Consolidate cpufreq_update_current_freq() and __cpufreq_get() (Al Stone) [1739729 1725581] - [cpufreq] Don't skip frequency validation for has_target() drivers (Al Stone) [1739729 1725581] - [cpufreq] Use has_target() instead of !setpolicy (Al Stone) [1739729 1725581] - [cpufreq] Remove redundant !setpolicy check (Al Stone) [1739729 1725581] - [kernel] cpufreq: Move the IS_ENABLED(CPU_THERMAL) macro into a stub (Al Stone) [1739729 1725581] - [opp] Don't use IS_ERR on invalid supplies (Al Stone) [1739729 1725581] - [kernel] pm: sleep: Update struct wakeup_source documentation (Al Stone) [1739729 1725581] - [base] base: power: remove wakeup_sources_stats_dentry variable (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: Fail initialization if driver cannot be registered (Al Stone) [1739729 1725581] - [opp] Make dev_pm_opp_set_rate() handle freq = 0 to drop performance votes (Al Stone) [1739729 1725581] - [opp] Don't overwrite rounded clk rate (Al Stone) [1739729 1725581] - [base] pm: sleep: Show how long dpm_suspend_start() and dpm_suspend_end() take (Al Stone) [1739729 1725581] - [base] pm / clk: Remove error message on out-of-memory condition (Al Stone) [1739729 1725581] - [base] base: power: clock_ops: Use of_clk_get_parent_count() (Al Stone) [1739729 1725581] - [opp] Allocate genpd_virt_devs from dev_pm_opp_attach_genpd() (Al Stone) [1739729 1725581] - [opp] Attach genpds to devices from within OPP core (Al Stone) [1739729 1725581] - [base] pm / domains: Add GENPD_FLAG_RPM_ALWAYS_ON flag (Al Stone) [1739729 1725581] - [cpufreq] Don't find governor for setpolicy drivers in cpufreq_init_policy() (Al Stone) [1739729 1725581] - [cpufreq] Explain the kobject_put() in cpufreq_policy_alloc() (Al Stone) [1739729 1725581] - [x86] cpufreq: Call transition notifier only once for each policy (Al Stone) [1739729 1725581] - [cpufreq] Fix kobject memleak (Al Stone) [1739729 1725581] - [cpufreq] centrino: Fix centrino_setpolicy() kerneldoc comment (Al Stone) [1739729 1725581] - [base] pm / domains: Allow to attach a CPU via genpd_dev_pm_attach_by_id|name() (Al Stone) [1739729 1725581] - [base] pm / domains: Search for the CPU device outside the genpd lock (Al Stone) [1739729 1725581] - [base] pm / domains: Drop unused in-parameter to some genpd functions (Al Stone) [1739729 1725581] - [base] pm / domains: Use the base device for driver_deferred_probe_check_state() (Al Stone) [1739729 1725581] - [base] pm / domains: Enable genpd_dev_pm_attach_by_id|name() for single PM domain (Al Stone) [1739729 1725581] - [base] pm / domains: Allow OF lookup for multi PM domain case from ->attach_dev() (Al Stone) [1739729 1725581] - [base] pm / domains: Don't kfree() the virtual device in the error path (Al Stone) [1739729 1725581] - [cpufreq] Move ->get callback check outside of __cpufreq_get() (Al Stone) [1739729 1725581] - [x86] tsc: Rework time_cpufreq_notifier() (Al Stone) [1739729 1725581] - [x86] tsc: Fix UV TSC initialization (Al Stone) [1739729 1725581] - [x86] tsc: Prevent result truncation on 32bit (Al Stone) [1739729 1725581] - [x86] tsc: Consolidate init code (Al Stone) [1739729 1725581] - [x86] tsc: Make use of tsc_calibrate_cpu_early() (Al Stone) [1739729 1725581] - [x86] tsc: Split native_calibrate_cpu() into early and late parts (Al Stone) [1739729 1725581] - [x86] tsc: Use TSC as sched clock early (Al Stone) [1739729 1725581] - [x86] tsc: Initialize cyc2ns when tsc frequency is determined (Al Stone) [1739729 1725581] - [x86] tsc: Calibrate tsc only once (Al Stone) [1739729 1725581] - [x86] tsc: Redefine notsc to behave as tsc=unstable (Al Stone) [1739729 1725581] - [x86] platform/uv: Provide is_early_uv_system() (Al Stone) [1739729 1725581] - [base] pm / domains: remove unnecessary unlikely() (Al Stone) [1739729 1725581] - [cpufreq] Remove needless bios_limit check in show_bios_limit() (Al Stone) [1739729 1725581] - [cpufreq] cpufreq/acpi-cpufreq.c: This fixes the following checkpatch warning (Al Stone) [1739729 1725581] - [base] pm / core: Propagate dev->power.wakeup_path when no callbacks (Al Stone) [1739729 1725581] - [base] pm / domains: Add genpd governor for CPUs (Al Stone) [1739729 1725581] - [cpuidle] Export the next timer expiration for CPUs (Al Stone) [1739729 1725581] - [base] pm / core: Introduce dpm_async_fn() helper (Al Stone) [1739729 1725581] - [cpufreq] boost: Remove CONFIG_CPU_FREQ_BOOST_SW Kconfig option (Al Stone) [1739729 1725581] - [opp] Introduce dev_pm_opp_find_freq_ceil_by_volt() (Al Stone) [1739729 1725581] - [base] pm / domains: Add support for CPU devices to genpd (Al Stone) [1739729 1725581] - [base] pm / domains: Add generic data pointer to struct genpd_power_state (Al Stone) [1739729 1725581] - [cpufreq] rhel: cpufreq: switch printk users from pf and pF to ps and pS, respectively (Al Stone) [1739729 1725581] - [base] pm / core: fix kerneldoc comment for device_pm_wait_for_dev() (Al Stone) [1739729 1725581] - [base] pm / core: fix kerneldoc comment for dpm_watchdog_handler() (Al Stone) [1739729 1725581] - [cpufreq] stats: Use lock by stat to replace global spin lock (Al Stone) [1739729 1725581] - [cpufreq] Remove cpufreq_driver check in cpufreq_boost_supported() (Al Stone) [1739729 1725581] - [cpufreq] ppc_cbe: fix possible object reference leak (Al Stone) [1739729 1725581] - [cpufreq] cpufreq: Convert some slow-path static_cpu_has() callers to boot_cpu_has() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Update max frequency on global turbo changes (Al Stone) [1739729 1725581] - [base] pm / wakeup: Use pm_pr_dbg() instead of pr_debug() (Al Stone) [1739729 1725581] - [cpufreq] Add cpufreq_cpu_acquire() and cpufreq_cpu_release() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Driver-specific handling of _PPC updates (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Load only on Intel hardware (Al Stone) [1739729 1725581] - [cpufreq] scpi: Fix use after free (Al Stone) [1739729 1725581] - [base] pm / domains: Avoid a potential deadlock (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Fix up iowait_boost computation (Al Stone) [1739729 1725581] - [opp] pm / opp: Update performance state when freq == old_freq (Al Stone) [1739729 1725581] - [base] pm / wakeup: Drop wakeup_source_drop() (Al Stone) [1739729 1725581] - [base] pm / wakeup: Rework wakeup source timer cancellation (Al Stone) [1739729 1725581] - [base] pm / domains: Remove one unnecessary blank line (Al Stone) [1739729 1725581] - [base] pm / domains: Return early for all errors in _genpd_power_off() (Al Stone) [1739729 1725581] - [base] pm / domains: Improve warn for multiple states but no governor (Al Stone) [1739729 1725581] - [opp] Fix handling of multiple power domains (Al Stone) [1739729 1725581] - [base] pm / qos: Fix typo in file description (Al Stone) [1739729 1725581] - [base] pm-runtime: Call pm_runtime_active|suspended_time() from sysfs (Al Stone) [1739729 1725581] - [base] pm-runtime: Consolidate code to get active/suspended time (Al Stone) [1739729 1725581] - [base] pm: Add and use pr_fmt() (Al Stone) [1739729 1725581] - [cpufreq] Improve kerneldoc comments for cpufreq_cpu_get/put() (Al Stone) [1739729 1725581] - [cpufreq] acpi-cpufreq: Report if CPU doesn't support boost technologies (Al Stone) [1739729 1725581] - [base] driver core: Fix PM-runtime for links added during consumer probe (Al Stone) [1739729 1725581] - [cpufreq] Pass updated policy to driver ->setpolicy() callback (Al Stone) [1739729 1725581] - [cpufreq] Fix two debug messages in cpufreq_set_policy() (Al Stone) [1739729 1725581] - [cpufreq] Reorder and simplify cpufreq_update_policy() (Al Stone) [1739729 1725581] - [cpufreq] Add kerneldoc comments for two core functions (Al Stone) [1739729 1725581] - [cpufreq] scmi: Fix use-after-free in scmi_cpufreq_exit() (Al Stone) [1739729 1725581] - [kernel] pm / core: Add support to skip power management in device/driver model (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Rework iowait boosting to be less aggressive (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Eliminate intel_pstate_get_base_pstate() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Avoid redundant initialization of local vars (Al Stone) [1739729 1725581] - [cpufreq] cpufreq / cppc: Work around for Hisilicon CPPC cpufreq (Al Stone) [1739729 1725581] - [cpufreq] speedstep: convert BUG() to BUG_ON() (Al Stone) [1739729 1725581] - [cpufreq] powernv: fix missing check of return value in init_powernv_pstates() (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: remove unneeded semicolon (Al Stone) [1739729 1725581] - [kernel] pm / domains: Mark "name" const in dev_pm_domain_attach_by_name() (Al Stone) [1739729 1725581] - [kernel] pm / domains: Mark "name" const in genpd_dev_pm_attach_by_name() (Al Stone) [1739729 1725581] - [cpufreq] Replace double NOT (!!) with single NOT (!) (Al Stone) [1739729 1725581] - [base] pm / suspend: Print debug messages for device using direct-complete (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Add reasons for failure and debug messages (Al Stone) [1739729 1725581] - [base] driver core: Fix possible supplier PM-usage counter imbalance (Al Stone) [1739729 1725581] - [base] pm-runtime: Fix __pm_runtime_set_status() race with runtime resume (Al Stone) [1739729 1725581] - [cpufreq] dt: Implement online/offline() callbacks (Al Stone) [1739729 1725581] - [cpufreq] Allow light-weight tear down and bring up of CPUs (Al Stone) [1739729 1725581] - [base] pm-runtime: Take suppliers into account in __pm_runtime_set_status() (Al Stone) [1739729 1725581] - [opp] no need to check return value of debugfs_create functions (Al Stone) [1739729 1725581] - [cpufreq] scmi: Register an Energy Model (Al Stone) [1739729 1725581] - [opp] pm / opp: Introduce a power estimation helper (Al Stone) [1739729 1725581] - [opp] pm / opp: Remove unused parameter of _generic_set_opp_clk_only() (Al Stone) [1739729 1725581] - [cpufreq] scpi: Register an Energy Model (Al Stone) [1739729 1725581] - [cpufreq] dt: Register an Energy Model (Al Stone) [1739729 1725581] - [cpufreq] stats: Fix concurrency issues while resetting stats (Al Stone) [1739729 1725581] - [cpufreq] stats: Declare freq-attr right after their callbacks (Al Stone) [1739729 1725581] - [base] driver core: Do not call rpm_put_suppliers() in pm_runtime_drop_link() (Al Stone) [1739729 1725581] - [base] driver core: Fix handling of runtime PM flags in device_link_add() (Al Stone) [1739729 1725581] - [base] driver core: Do not resume suppliers under device_links_write_lock() (Al Stone) [1739729 1725581] - [base] driver core: Avoid careless re-use of existing device links (Al Stone) [1739729 1725581] - [base] driver core: Fix DL_FLAG_AUTOREMOVE_SUPPLIER device link flag handling (Al Stone) [1739729 1725581] - [base] driver core: Add flag to autoremove device link on supplier unbind (Al Stone) [1739729 1725581] - [base] driver core: Rename flag AUTOREMOVE to AUTOREMOVE_CONSUMER (Al Stone) [1739729 1725581] - [base] pm-runtime: update accounting_timestamp on enable (Al Stone) [1739729 1725581] - [cpufreq] scpi: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] scmi: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] cpufreq-dt: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] Auto-register the driver as a thermal cooling device if asked (Al Stone) [1739729 1725581] - [cpufreq] thermal: cpu_cooling: Require thermal core to be compiled in (Al Stone) [1739729 1725581] - [cpufreq] Use struct kobj_attribute instead of struct global_attr (Al Stone) [1739729 1725581] - [base] pm / wakeup: fix kerneldoc comment for pm_wakeup_dev_event() (Al Stone) [1739729 1725581] - [base] pm: domains: no need to check return value of debugfs_create functions (Al Stone) [1739729 1725581] - [opp] Add support for parsing the 'opp-level' property (Al Stone) [1739729 1725581] - [kernel] cpufreq: Replace open-coded << with BIT() (Al Stone) [1739729 1725581] - [base] pm: clock_ops: fix missing clk_prepare() return value check (Al Stone) [1739729 1725581] - [cpufreq] e_powersaver: Use struct_size() in kzalloc() (Al Stone) [1739729 1725581] - [cpufreq] Don't update new_policy on failures (Al Stone) [1739729 1725581] - [cpufreq] scmi: Fix frequency invariance in slow path (Al Stone) [1739729 1725581] - [cpufreq] check if policy is inactive early in __cpufreq_get() (Al Stone) [1739729 1725581] - [opp] cpufreq: scpi/scmi: Fix freeing of dynamic OPPs (Al Stone) [1739729 1725581] - [base] pm: sleep: call devfreq suspend/resume (Al Stone) [1739729 1725581] - [devfreq] pm / devfreq: add devfreq_suspend/resume() functions (Al Stone) [1739729 1725581] - [base] pm / domains: remove define_genpd_open_function() and define_genpd_debugfs_fops() (Al Stone) [1739729 1725581] - [base] pm / domains: Propagate performance state updates (Al Stone) [1739729 1725581] - [base] pm / domains: Factorize dev_pm_genpd_set_performance_state() (Al Stone) [1739729 1725581] - [base] pm / domains: Save OPP table pointer in genpd (Al Stone) [1739729 1725581] - [opp] Don't return 0 on error from of_get_required_opp_performance_state() (Al Stone) [1739729 1725581] - [opp] Add dev_pm_opp_xlate_performance_state() helper (Al Stone) [1739729 1725581] - [opp] Improve _find_table_of_opp_np() (Al Stone) [1739729 1725581] - [base] pm / domains: Make genpd performance states orthogonal to the idlestates (Al Stone) [1739729 1725581] - [opp] Fix missing debugfs supply directory for OPPs (Al Stone) [1739729 1725581] - [opp] Use opp_table->regulators to verify no regulator case (Al Stone) [1739729 1725581] - [base] pm: Switch to use ptR (Al Stone) [1739729 1725581] - [cpufreq] powernv: add of_node_put() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Force HWP min perf before offline (Al Stone) [1739729 1725581] - [cpufreq] cpufreq: change CONFIG_6xx to CONFIG_PPC_BOOK3S_32 (Al Stone) [1739729 1725581] - [opp] Fix parsing of multiple phandles in "operating-points-v2" property (Al Stone) [1739729 1725581] - [opp] Remove of_dev_pm_opp_find_required_opp() (Al Stone) [1739729 1725581] - [base] opp: Rename and relocate of_genpd_opp_to_performance_state() (Al Stone) [1739729 1725581] - [opp] Configure all required OPPs (Al Stone) [1739729 1725581] - [opp] Add dev_pm_opp_{set|put}_genpd_virt_dev() helper (Al Stone) [1739729 1725581] - [base] pm / domains: Add genpd_opp_to_performance_state() (Al Stone) [1739729 1725581] - [opp] Populate OPPs from "required-opps" property (Al Stone) [1739729 1725581] - [opp] Populate required opp tables from "required-opps" property (Al Stone) [1739729 1725581] - [opp] Separate out custom OPP handler specific code (Al Stone) [1739729 1725581] - [opp] Identify and mark genpd OPP tables (Al Stone) [1739729 1725581] - [base] pm / domains: Rename genpd virtual devices as virt_dev (Al Stone) [1739729 1725581] - [cpufreq] remove unused arm_big_little_dt driver (Al Stone) [1739729 1725581] - [cpufreq] drop ARM_BIG_LITTLE_CPUFREQ support for ARM64 (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Fix compilation for !CONFIG_ACPI (Al Stone) [1739729 1725581] - [base] pm / domains: Deal with multiple states but no governor in genpd (Al Stone) [1739729 1725581] - [base] pm / domains: Don't treat zero found compatible idle states as an error (Al Stone) [1739729 1725581] - [cpufreq] conservative: Take limits changes into account properly (Al Stone) [1739729 1725581] - [opp] pm / opp: _of_add_opp_table_v2(): increment count only if OPP is added (Al Stone) [1739729 1725581] - [cpufreq] dt: Try freeing static OPPs only if we have added them (Al Stone) [1739729 1725581] - [opp] Return error on error from dev_pm_opp_get_opp_count() (Al Stone) [1739729 1725581] - [opp] Improve error handling in dev_pm_opp_of_cpumask_add_table() (Al Stone) [1739729 1725581] - [cpufreq] cpufreq / cppc: Mark acpi_ids as used (Al Stone) [1739729 1725581] - [opp] Pass OPP table to _of_add_opp_table_v{1|2}() (Al Stone) [1739729 1725581] - [opp] Prevent creating multiple OPP tables for devices sharing OPP nodes (Al Stone) [1739729 1725581] - [opp] Use a single mechanism to free the OPP table (Al Stone) [1739729 1725581] - [opp] Don't remove dynamic OPPs from _dev_pm_opp_remove_table() (Al Stone) [1739729 1725581] - [opp] Create separate kref for static OPPs list (Al Stone) [1739729 1725581] - [opp] Don't take OPP table's kref for static OPPs (Al Stone) [1739729 1725581] - [opp] Parse OPP table's DT properties from _of_init_opp_table() (Al Stone) [1739729 1725581] - [opp] Pass index to _of_init_opp_table() (Al Stone) [1739729 1725581] - [opp] Protect dev_list with opp_table lock (Al Stone) [1739729 1725581] - [opp] Don't try to remove all OPP tables on failure (Al Stone) [1739729 1725581] - [opp] Free OPP table properly on performance state irregularities (Al Stone) [1739729 1725581] - [cpufreq] Convert to using pOFn instead of device_node.name (Al Stone) [1739729 1725581] - [cpufreq] remove unnecessary unlikely() (Al Stone) [1739729 1725581] - [base] pm / clk: signedness bug in of_pm_clk_add_clks() (Al Stone) [1739729 1725581] - [trace] cpufreq: trace frequency limits change (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: Disable dynamic scaling on many-CPU systems (Al Stone) [1739729 1725581] - [base] pm / domains: Stop deferring probe at the end of initcall (Al Stone) [1739729 1725581] - [base] driver: core: Allow subsystems to continue deferring probe (Al Stone) [1739729 1725581] - [base] driver core: allow stopping deferred probe after init (Al Stone) [1739729 1725581] - [base] driver core: add a debugfs entry to show deferred devices (Al Stone) [1739729 1725581] - [base] pm / domains: Introduce dev_pm_domain_attach_by_name() (Al Stone) [1739729 1725581] - [base] pm / domains: Introduce option to attach a device by name to genpd (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: use match_string() helper (Al Stone) [1739729 1725581] - [fs] ceph: use ceph_evict_inode to cleanup inode's resource (Jeff Layton) [1767959] - [fs] ceph: return -EINVAL if given fsc mount option on kernel w/o support (Jeff Layton) [1767959] - [fs] ceph: don't try to handle hashed dentries in non-O_CREAT atomic_open (Jeff Layton) [1767959] - [fs] ceph: add missing check in d_revalidate snapdir handling (Jeff Layton) [1767959] - [fs] ceph: fix RCU case handling in ceph_d_revalidate() (Jeff Layton) [1767959] - [fs] ceph: fix use-after-free in __ceph_remove_cap() (Jeff Layton) [1767959] - [block] rbd: cancel lock_dwork if the wait is interrupted (Jeff Layton) [1767959] - [fs] ceph: just skip unrecognized info in ceph_reply_info_extra (Jeff Layton) [1767959] - [fs] ceph: call ceph_mdsc_destroy from destroy_fs_client (Jeff Layton) [1767959] - [net] libceph: use ceph_kvmalloc() for osdmap arrays (Jeff Layton) [1767959] - [net] libceph: avoid a __vmalloc() deadlock in ceph_kvmalloc() (Jeff Layton) [1767959] - [fs] ceph: include ceph_debug.h in cache.c (Jeff Layton) [1767959] - [fs] ceph: move static keyword to the front of declarations (Jeff Layton) [1767959] - [block] rbd: pull rbd_img_request_create() dout out into the callers (Jeff Layton) [1767959] - [fs] ceph: reconnect connection if session hang in opening state (Jeff Layton) [1767959] - [net] libceph: drop unused con parameter of calc_target() (Jeff Layton) [1767959] - [fs] ceph: use release_pages() directly (Jeff Layton) [1767959] - [block] rbd: fix response length parameter for encoded strings (Jeff Layton) [1767959] - [fs] ceph: allow arbitrary security.* xattrs (Jeff Layton) [1767959] - [fs] ceph: only set CEPH_I_SEC_INITED if we got a MAC label (Jeff Layton) [1767959] - [fs] ceph: turn ceph_security_invalidate_secctx into static inline (Jeff Layton) [1767959] - [fs] ceph: add buffered/direct exclusionary locking for reads and writes (Jeff Layton) [1767959] - [net] libceph: handle OSD op ceph_pagelist_append() errors (Jeff Layton) [1767959] - [fs] ceph: don't return a value from void function (Jeff Layton) [1767959] - [fs] ceph: don't freeze during write page faults (Jeff Layton) [1767959] - [fs] ceph: update the mtime when truncating up (Jeff Layton) [1767959] - [fs] ceph: fix indentation in __get_snap_name() (Jeff Layton) [1767959] - [fs] ceph: remove incorrect comment above __send_cap (Jeff Layton) [1767959] - [fs] ceph: remove CEPH_I_NOFLUSH (Jeff Layton) [1767959] - [fs] ceph: remove unneeded test in try_flush_caps (Jeff Layton) [1767959] - [fs] ceph: have __mark_caps_flushing return flush_tid (Jeff Layton) [1767959] - [fs] ceph: fix comments over ceph_add_cap (Jeff Layton) [1767959] - [fs] ceph: eliminate session->s_trim_caps (Jeff Layton) [1767959] - [fs] ceph: fetch cap_gen under spinlock in ceph_add_cap (Jeff Layton) [1767959] - [fs] ceph: remove ceph_get_cap_mds and __ceph_get_cap_mds (Jeff Layton) [1767959] - [fs] ceph: don't SetPageError on writepage errors (Jeff Layton) [1767959] - [fs] ceph: auto reconnect after blacklisted (Jeff Layton) [1767959] - [fs] ceph: invalidate all write mode filp after reconnect (Jeff Layton) [1767959] - [fs] ceph: return -EIO if read/write against filp that lost file locks (Jeff Layton) [1767959] - [fs] ceph: add helper function that forcibly reconnects to ceph cluster (Jeff Layton) [1767959] - [fs] ceph: pass filp to ceph_get_caps() (Jeff Layton) [1767959] - [fs] ceph: track and report error of async metadata operation (Jeff Layton) [1767959] - [fs] ceph: allow closing session in restarting/reconnect state (Jeff Layton) [1767959] - [net] libceph: add function that clears osd client's abort_err (Jeff Layton) [1767959] - [net] libceph: add function that reset client's entity addr (Jeff Layton) [1767959] - [fs] ceph: don't list vxattrs in listxattr() (Jeff Layton) [1767959] - [fs] ceph: fix directories inode i_blkbits initialization (Jeff Layton) [1767959] - [block] rbd: restore zeroing past the overlap when reading from parent (Jeff Layton) [1767959] - [net] libceph: don't call crypto_free_sync_skcipher() on a NULL tfm (Jeff Layton) [1767959] - [net] libceph: fix PG split vs OSD (re)connect race (Jeff Layton) [1767959] - [fs] ceph: don't try fill file_lock on unsuccessful GETFILELOCK reply (Jeff Layton) [1767959] - [fs] ceph: clear page dirty before invalidate page (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in fill_inode() (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in __ceph_build_xattrs_blob() (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in __ceph_setxattr() (Jeff Layton) [1767959] - [kernel] libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer (Jeff Layton) [1767959] - [fs] ceph: fix end offset in truncate_inode_pages_range call (Jeff Layton) [1767959] - [fs] ceph: initialize superblock s_time_gran to 1 (Jeff Layton) [1767959] - [block] rbd: setallochint only if object doesn't exist (Jeff Layton) [1767959] - [block] rbd: support for object-map and fast-diff (Jeff Layton) [1767959] - [block] rbd: call rbd_dev_mapping_set() from rbd_dev_image_probe() (Jeff Layton) [1767959] - [net] libceph: export osd_req_op_data() macro (Jeff Layton) [1767959] - [net] libceph: change ceph_osdc_call() to take page vector for response (Jeff Layton) [1767959] - [kernel] libceph: bump CEPH_MSG_MAX_DATA_LEN (again) (Jeff Layton) [1767959] - [block] rbd: new exclusive lock wait/wake code (Jeff Layton) [1767959] - [block] rbd: quiescing lock should wait for image requests (Jeff Layton) [1767959] - [block] rbd: lock should be quiesced on reacquire (Jeff Layton) [1767959] - [block] rbd: introduce copyup state machine (Jeff Layton) [1767959] - [block] rbd: rename rbd_obj_setup_*() to rbd_obj_init_*() (Jeff Layton) [1767959] - [block] rbd: move OSD request allocation into object request state machines (Jeff Layton) [1767959] - [block] rbd: factor out __rbd_osd_setup_discard_ops() (Jeff Layton) [1767959] - [block] rbd: factor out rbd_osd_setup_copyup() (Jeff Layton) [1767959] - [block] rbd: introduce obj_req->osd_reqs list (Jeff Layton) [1767959] - [fs] libceph: rename r_unsafe_item to r_private_item (Jeff Layton) [1767959] - [block] rbd: introduce image request state machine (Jeff Layton) [1767959] - [block] rbd: move OSD request submission into object request state machines (Jeff Layton) [1767959] - [block] rbd: get rid of RBD_OBJ_WRITE_{FLAT, GUARD} (Jeff Layton) [1767959] - [block] rbd: replace obj_req->tried_parent with obj_req->read_state (Jeff Layton) [1767959] - [block] rbd: get rid of obj_req->xferred, obj_req->result and img_req->xferred (Jeff Layton) [1767959] - [fs] ceph: don't NULL terminate virtual xattrs (Jeff Layton) [1767959] - [fs] ceph: return -ERANGE if virtual xattr value didn't fit in buffer (Jeff Layton) [1767959] - [fs] ceph: make getxattr_cb return ssize_t (Jeff Layton) [1767959] - [fs] ceph: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (Jeff Layton) [1767959] - [fs] ceph: kick flushing and flush snaps before sending normal cap message (Jeff Layton) [1767959] - [fs] ceph: clear CEPH_I_KICK_FLUSH flag inside __kick_flushing_caps() (Jeff Layton) [1767959] - [fs] ceph: increment change_attribute on local changes (Jeff Layton) [1767959] - [fs] ceph: handle change_attr in cap messages (Jeff Layton) [1767959] - [fs] ceph: add change_attr field to ceph_inode_info (Jeff Layton) [1767959] - [kernel] iversion: add a routine to update a raw value with a larger one (Jeff Layton) [1767959] - [fs] ceph: allow querying of STATX_BTIME in ceph_getattr (Jeff Layton) [1767959] - [kernel] libceph: turn on CEPH_FEATURE_MSG_ADDR2 (Jeff Layton) [1767959] - [fs] ceph: handle btime in cap messages (Jeff Layton) [1767959] - [fs] ceph: add btime field to ceph_inode_info (Jeff Layton) [1767959] - [net] libceph: rename ceph_encode_addr to ceph_encode_banner_addr (Jeff Layton) [1767959] - [net] libceph: use TYPE_LEGACY for entity addrs instead of TYPE_NONE (Jeff Layton) [1767959] - [net] ceph: fix decode_locker to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [fs] ceph: have MDS map decoding use entity_addr_t decoder (Jeff Layton) [1767959] - [net] libceph: correctly decode ADDR2 addresses in incremental OSD maps (Jeff Layton) [1767959] - [net] libceph: fix watch_item_t decoding to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: switch osdmap decoding to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: ADDR2 support for monmap (Jeff Layton) [1767959] - [net] libceph: add ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: fix sa_family just after reading address (Jeff Layton) [1767959] - [fs] ceph: remove request from waiting list before unregister (Jeff Layton) [1767959] - [fs] ceph: don't blindly unregister session that is in opening state (Jeff Layton) [1767959] - [fs] ceph: fix infinite loop in get_quota_realm() (Jeff Layton) [1767959] - [fs] ceph: add selinux support (Jeff Layton) [1767959] - [fs] ceph: rename struct ceph_acls_info to ceph_acl_sec_ctx (Jeff Layton) [1767959] - [fs] ceph: fix debug print format in __set_xattr() (Jeff Layton) [1767959] - [fs] ceph: fix warning PTR_ERR_OR_ZERO can be used (Jeff Layton) [1767959] - [fs] ceph: hold i_ceph_lock when removing caps for freeing inode (Jeff Layton) [1767959] - [fs] ceph: ensure d_name/d_parent stability in ceph_mdsc_lease_send_msg() (Jeff Layton) [1767959] - [fs] ceph: use READ_ONCE to access d_parent in RCU critical section (Jeff Layton) [1767959] - [fs] ceph: fix dir_lease_is_valid() (Jeff Layton) [1767959] - [fs] ceph: close race between d_name_cmp() and update_dentry_lease() (Jeff Layton) [1767959] - [fs] ceph: fix improper use of smp_mb__before_atomic() (Jeff Layton) [1767959] - [fs] ceph: fix "ceph.dir.rctime" vxattr value (Jeff Layton) [1767959] - [fs] ceph: remove unused vxattr length helpers (Jeff Layton) [1767959] - [fs] ceph: fix listxattr vxattr buffer length calculation (Jeff Layton) [1767959] - [fs] ceph: add ceph.snap.btime vxattr (Jeff Layton) [1767959] - [fs] ceph: carry snapshot creation time with inodes (Jeff Layton) [1767959] - [fs] ceph: clean up ceph.dir.pin vxattr name sizeof() (Jeff Layton) [1767959] - [fs] ceph: silence a checker warning in mdsc_show() (Jeff Layton) [1767959] - [net] libceph: remove ceph_get_direct_page_vector() (Jeff Layton) [1767959] - [fs] ceph: don't open-code the check for dead lockref (Jeff Layton) [1767959] - [net] ceph: no need to check return value of debugfs_create functions (Jeff Layton) [1767959] - [fs] ceph: fix ceph_mdsc_build_path to not stop on first component (Jeff Layton) [1767959] - [fs] ceph: fix error handling in ceph_get_caps() (Jeff Layton) [1767959] - [fs] ceph: avoid iput_final() while holding mutex or in dispatch thread (Jeff Layton) [1767959] - [fs] ceph: single workqueue for inode related works (Jeff Layton) [1767959] - [fs] ceph: flush dirty inodes before proceeding with remount (Jeff Layton) [1767959] - [fs] ceph: fix unaligned access in ceph_send_cap_releases (Jeff Layton) [1767959] - [net] libceph: make ceph_pr_addr take an struct ceph_entity_addr pointer (Jeff Layton) [1767959] - [net] libceph: fix unaligned accesses in ceph_entity_addr handling (Jeff Layton) [1767959] - [block] rbd: don't assert on writes to snapshots (Jeff Layton) [1767959] - [block] rbd: client_mutex is never nested (Jeff Layton) [1767959] - [fs] ceph: print inode number in __caps_issued_mask debugging messages (Jeff Layton) [1767959] - [fs] ceph: just call get_session in __ceph_lookup_mds_session (Jeff Layton) [1767959] - [fs] ceph: simplify arguments and return semantics of try_get_cap_refs (Jeff Layton) [1767959] - [fs] ceph: fix comment over ceph_drop_caps_for_unlink (Jeff Layton) [1767959] - [fs] ceph: move wait for mds request into helper function (Jeff Layton) [1767959] - [fs] ceph: have ceph_mdsc_do_request call ceph_mdsc_submit_request (Jeff Layton) [1767959] - [fs] ceph: after an MDS request, do callback and completions (Jeff Layton) [1767959] - [fs] ceph: use pathlen values returned by set_request_path_attr (Jeff Layton) [1767959] - [fs] ceph: use __getname/__putname in ceph_mdsc_build_path (Jeff Layton) [1767959] - [fs] ceph: use ceph_mdsc_build_path instead of clone_dentry_name (Jeff Layton) [1767959] - [fs] ceph: fix potential use-after-free in ceph_mdsc_build_path (Jeff Layton) [1767959] - [fs] ceph: dump granular cap info in "caps" debugfs file (Jeff Layton) [1767959] - [fs] ceph: make iterate_session_caps a public symbol (Jeff Layton) [1767959] - [fs] ceph: fix NULL pointer deref when debugging is enabled (Jeff Layton) [1767959] - [fs] ceph: properly handle granular statx requests (Jeff Layton) [1767959] - [fs] ceph: remove superfluous inode_lock in ceph_fsync (Jeff Layton) [1767959] - [kernel] libceph: fix clang warning for CEPH_DEFINE_OID_ONSTACK (Jeff Layton) [1767959] - [block] rbd: convert all rbd_assert(0) to BUG() (Jeff Layton) [1767959] - [block] rbd: avoid clang -Wuninitialized warning (Jeff Layton) [1767959] - [fs] ceph: snapshot nfs re-export (Jeff Layton) [1767959] - [fs] ceph: quota: fix quota subdir mounts (Jeff Layton) [1767959] - [fs] ceph: factor out ceph_lookup_inode() (Jeff Layton) [1767959] - [fs] ceph: remove duplicated filelock ref increase (Jeff Layton) [1767959] - [fs] ceph: fix ci->i_head_snapc leak (Jeff Layton) [1767959] - [fs] ceph: handle the case where a dentry has been renamed on outstanding req (Jeff Layton) [1767959] - [fs] ceph: ensure d_name stability in ceph_dentry_hash() (Jeff Layton) [1767959] - [fs] ceph: only use d_name directly when parent is locked (Jeff Layton) [1767959] - [fs] mark expected switch fall-throughs (Jeff Layton) [1767959] - [fs] ceph: fix use-after-free on symlink traversal (Jeff Layton) [1767959] - [net] libceph: fix breakage caused by multipage bvecs (Jeff Layton) [1767959] - [block] rbd: drop wait_for_latest_osdmap() (Jeff Layton) [1767959] - [net] libceph: wait for latest osdmap in ceph_monc_blacklist_add() (Jeff Layton) [1767959] - [block] rbd: set io_min, io_opt and discard_granularity to alloc_size (Jeff Layton) [1767959] - [block] rbd: advertise support for RBD_FEATURE_DEEP_FLATTEN (Jeff Layton) [1767959] - [block] rbd: whole-object write and zeroout should copyup when snapshots exist (Jeff Layton) [1767959] - [block] rbd: copyup with an empty snapshot context (aka deep-copyup) (Jeff Layton) [1767959] - [block] rbd: introduce rbd_obj_issue_copyup_ops() (Jeff Layton) [1767959] - [block] rbd: stop copying num_osd_ops in rbd_obj_issue_copyup() (Jeff Layton) [1767959] - [block] rbd: factor out __rbd_osd_req_create() (Jeff Layton) [1767959] - [block] rbd: clear ->xferred on error from rbd_obj_issue_copyup() (Jeff Layton) [1767959] - [block] rbd: remove experimental designation from kernel layering (Jeff Layton) [1767959] - [fs] ceph: add mount option to limit caps count (Jeff Layton) [1767959] - [fs] ceph: periodically trim stale dentries (Jeff Layton) [1767959] - [fs] ceph: delete stale dentry when last reference is dropped (Jeff Layton) [1767959] - [fs] ceph: remove dentry_lru file from debugfs (Jeff Layton) [1767959] - [fs] ceph: touch existing cap when handling reply (Jeff Layton) [1767959] - [fs] ceph: pass inclusive lend parameter to filemap_write_and_wait_range() (Jeff Layton) [1767959] - [block] rbd: round off and ignore discards that are too small (Jeff Layton) [1767959] - [block] rbd: handle DISCARD and WRITE_ZEROES separately (Jeff Layton) [1767959] - [block] rbd: get rid of obj_req->obj_request_count (Jeff Layton) [1767959] - [net] libceph: use struct_size() for kmalloc() in crush_decode() (Jeff Layton) [1767959] - [fs] ceph: send cap releases more aggressively (Jeff Layton) [1767959] - [fs] ceph: support getting ceph.dir.pin vxattr (Jeff Layton) [1767959] - [fs] ceph: support versioned reply (Jeff Layton) [1767959] - [fs] ceph: map snapid to anonymous bdev ID (Jeff Layton) [1767959] - [fs] ceph: split large reconnect into multiple messages (Jeff Layton) [1767959] - [fs] ceph: decode feature bits in session message (Jeff Layton) [1767959] - [fs] ceph: set special inode's blocksize to page size (Jeff Layton) [1767959] - [fs] ceph: avoid repeatedly adding inode to mdsc->snap_flush_list (Jeff Layton) [1767959] - [fs] ceph: quota: cleanup license mess (Jeff Layton) [1767959] - [net] libceph: avoid KEEPALIVE_PENDING races in ceph_con_keepalive() (Jeff Layton) [1767959] - [fs] ceph: clear inode pointer when snap realm gets dropped by its inode (Jeff Layton) [1767959] - [block] rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is set (Jeff Layton) [1767959] - [fs] ceph: use vmf_error() in ceph_filemap_fault() (Jeff Layton) [1767959] - [net] libceph: allow setting abort_on_full for rbd (Jeff Layton) [1767959] - [fs] ceph: don't encode inode pathes into reconnect message (Jeff Layton) [1767959] - [fs] ceph: update wanted caps after resuming stale session (Jeff Layton) [1767959] - [fs] ceph: skip updating 'wanted' caps if caps are already issued (Jeff Layton) [1767959] - [fs] ceph: don't request excl caps when mount is readonly (Jeff Layton) [1767959] - [fs] ceph: don't update importing cap's mseq when handing cap export (Jeff Layton) [1767959] - [net] libceph: switch more to bool in ceph_tcp_sendmsg() (Jeff Layton) [1767959] - [net] libceph: use MSG_SENDPAGE_NOTLAST with ceph_tcp_sendpage() (Jeff Layton) [1767959] - [net] libceph: use sock_no_sendpage() as a fallback in ceph_tcp_sendpage() (Jeff Layton) [1767959] - [net] libceph: drop last_piece logic from write_partial_message_data() (Jeff Layton) [1767959] - [fs] ceph: remove redundant assignment (Jeff Layton) [1767959] - [fs] ceph: cleanup splice_dentry() (Jeff Layton) [1767959] - [fs] libceph: assume argonaut on the server side (Jeff Layton) [1767959] - [fs] ceph: quota: fix null pointer dereference in quota check (Jeff Layton) [1767959] - [fs] ceph: add non-blocking parameter to ceph_try_get_caps() (Jeff Layton) [1767959] - [net] libceph: check reply num_data_items in setup_request_data() (Jeff Layton) [1767959] - [net] libceph: preallocate message data items (Jeff Layton) [1767959] - [net] libceph, rbd, ceph: move ceph_osdc_alloc_messages() calls (Jeff Layton) [1767959] - [net] libceph: introduce alloc_watch_request() (Jeff Layton) [1767959] - [net] libceph: assign cookies in linger_submit() (Jeff Layton) [1767959] - [net] libceph: enable fallback to ceph_msg_new() in ceph_msgpool_get() (Jeff Layton) [1767959] - [fs] ceph: num_ops is off by one in ceph_aio_retry_work() (Jeff Layton) [1767959] - [net] libceph: no need to call osd_req_opcode_valid() in osd_req_encode_op() (Jeff Layton) [1767959] - [fs] ceph: set timeout conditionally in __cap_delay_requeue (Jeff Layton) [1767959] - [net] libceph: don't consume a ref on pagelist in ceph_msg_data_add_pagelist() (Jeff Layton) [1767959] - [net] libceph: introduce ceph_pagelist_alloc() (Jeff Layton) [1767959] - [net] libceph: osd_req_op_cls_init() doesn't need to take opcode (Jeff Layton) [1767959] - [kernel] libceph: bump CEPH_MSG_MAX_DATA_LEN (Jeff Layton) [1767959] - [fs] ceph: only allow punch hole mode in fallocate (Jeff Layton) [1767959] - [fs] ceph: refactor ceph_sync_read() (Jeff Layton) [1767959] - [fs] ceph: check if LOOKUPNAME request was aborted when filling trace (Jeff Layton) [1767959] - [fs] ceph: fix dentry leak in ceph_readdir_prepopulate (Jeff Layton) [1767959] - [fs] revert "ceph: fix dentry leak in splice_dentry()" (Jeff Layton) [1767959] - [fs] ceph: check snap first in ceph_set_acl() (Jeff Layton) [1767959] - [block] rbd: add __init/__exit annotations (Jeff Layton) [1767959] - [fs] ceph: reset cap hold timeout only for requeued inode (Jeff Layton) [1767959] - [fs] ceph: don't drop message if it contains more data than expected (Jeff Layton) [1767959] - [fs] ceph: support cephfs' own feature bits (Jeff Layton) [1767959] - [net] crush: fix using plain integer as NULL warning (Jeff Layton) [1767959] - [net] libceph: remove unnecessary non NULL check for request_key (Jeff Layton) [1767959] - [fs] ceph: refactor error handling code in ceph_reserve_caps() (Jeff Layton) [1767959] - [fs] ceph: refactor ceph_unreserve_caps() (Jeff Layton) [1767959] - [fs] ceph: change to void return type for __do_request() (Jeff Layton) [1767959] - [fs] ceph: compare fsc->max_file_size and inode->i_size for max file size limit (Jeff Layton) [1767959] - [fs] ceph: add additional size check in ceph_setattr() (Jeff Layton) [1767959] - [fs] ceph: add additional offset check in ceph_write_iter() (Jeff Layton) [1767959] - [fs] ceph: add additional range check in ceph_fallocate() (Jeff Layton) [1767959] - [fs] ceph: add new field max_file_size in ceph_fs_client (Jeff Layton) [1767959] - [net] ceph: fix whitespace (Jeff Layton) [1767959] - [fs] ceph: adding new return type vm_fault_t (Jeff Layton) [1767959] - [kernel] libceph: remove now unused ceph_{en, de}code_timespec() (Jeff Layton) [1767959] - [fs] ceph: use timespec64 for r_stamp (Jeff Layton) [1767959] - [fs] libceph: use timespec64 for r_mtime (Jeff Layton) [1767959] - [fs] ceph: use timespec64 for inode timestamp (Jeff Layton) [1767959] - [fs] ceph: stop using current_kernel_time() (Jeff Layton) [1767959] - [net] libceph: use timespec64 in for keepalive2 and ticket validity (Jeff Layton) [1767959] - [fs] ceph: add d_drop for some error cases in ceph_symlink() (Jeff Layton) [1767959] - [fs] ceph: add d_drop for some error cases in ceph_mknod() (Jeff Layton) [1767959] - [fs] ceph: return errors from posix_acl_equiv_mode() correctly (Jeff Layton) [1767959] - [net] libceph: amend "bad option arg" error message (Jeff Layton) [1767959] - [net] libceph: stop parsing when a bad int arg is detected (Jeff Layton) [1767959] - [kernel] libceph: change ceph_pagelist_encode_string() to take u32 (Jeff Layton) [1767959] - [net] libceph: make ceph_osdc_notify{, _ack}() payload_len u32 (Jeff Layton) [1767959] - [fs] ceph: restore ctime as well in the case of restoring old mode (Jeff Layton) [1767959] - [fs] ceph: add retry logic for error -ERANGE in ceph_get_acl() (Jeff Layton) [1767959]- [tools] objtool: Support repeated uses of the same C jump table (Yauheni Kaliuta) [1747617] - [tools] objtool: Refactor jump table code (Yauheni Kaliuta) [1747617] - [tools] objtool: Fix sibling call detection (Yauheni Kaliuta) [1747617] - [tools] objtool: Add --backtrace support (Yauheni Kaliuta) [1747617] - [tools] libbpf: Improve handling of corrupted ELF during map initialization (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix negative FD close() in xsk_setup_xdp_prog() (Yauheni Kaliuta) [1747617] - [kernel] bpf: Change size to u64 for bpf_map_{area_alloc, charge_init}() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: Fix btf_dump padding test case (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix struct end padding in btf_dump (Yauheni Kaliuta) [1747617] - [tools] bpf: Allow narrow loads of bpf_sysctl fields with offset > 0 (Yauheni Kaliuta) [1747617] - [tools] bpftool: move "__printf()" attributes to header file (Yauheni Kaliuta) [1747617] - [media] bpf: media: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix format string for p_err() in detect_common_prefix() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix argument for p_err() in BTF do_dump() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix arguments for p_err() in do_event_pipe() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix format strings and arguments for jsonw_printf() (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking of stack slots (Yauheni Kaliuta) [1747617] - [kernel] bpf: handle 32-bit zext during constant blinding (Yauheni Kaliuta) [1747617] - [net] bpf: allow narrow loads of some sk_reuseport_md fields with offset > 0 (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking in presence of bpf2bpf calls (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add config fragment BPF_JIT (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_btf_dump with O= (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_cgroup_storage on s390 (Yauheni Kaliuta) [1747617] - [tools] bpftool: close prog FD before exit on showing a single program (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix "bind{4, 6} deny specific IP & port" on s390 (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools infrastructure (Yauheni Kaliuta) [1747617] - [tools] bpftool: add error message on pin failure (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix error message (prog -> object) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: tests for jmp to 1st insn (Yauheni Kaliuta) [1747617] - [x86] bpf: fix x64 JIT code generation for jmp to 1st insn (Yauheni Kaliuta) [1747617] - [tools] libbpf: set BTF FD for prog only when there is supported .BTF.ext data (Yauheni Kaliuta) [1747617] - [tools] libbpf : make libbpf_num_possible_cpus function thread safe (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix missing __WORDSIZE definition (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix erroneous multi-closing of BTF FD (Yauheni Kaliuta) [1747617] - [tools] libbpf: silence GCC8 warning about string truncation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add another gso_segs access (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix sendmsg6_prog on s390 (Yauheni Kaliuta) [1747617] - [tools] libbpf: Avoid designated initializers for unnamed union members (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix endianness macro usage for some compilers (Yauheni Kaliuta) [1747617] - [tools] libbpf: sanitize VAR to conservative 1-byte INT (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix SIGSEGV when BTF loading fails, but .BTF.ext exists (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_xdp_noinline on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix "valid read map access into a read-only array 1" on s390 (Yauheni Kaliuta) [1747617] - [kernel] bpf: Disable GCC -fgcse optimization for ___bpf_prog_run() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix perf_buffer on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: structure test_{progs, maps, verifier} test runners uniformly (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_verifier/test_maps make dependencies (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix another GCC8 warning for strncpy (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: skip nmi test when perf hw events are disabled (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: remove logic duplication in test_verifier (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add selftests for wide loads (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: rename verifier/wide_store.c to verifier/wide_access.c (Yauheni Kaliuta) [1747617] - [net] bpf: allow wide aligned loads for bpf_sock_addr user_ip6 and msg_src_ip6 (Yauheni Kaliuta) [1747617] - [samples] bpf: build with -D__TARGET_ARCH_$(SRCARCH) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: put test_stub.o into $(OUTPUT) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: make directory prerequisites order-only (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix attach_probe on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: use typedef'ed arrays as map values (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add trickier size resolution tests (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix BTF verifier size resolution logic (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix compiling loop{1, 2, 3}.c on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: make PT_REGS_* work in userspace (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix s930 -> s390 typo (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: compile progs with -D__TARGET_ARCH_$(SRCARCH) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: do not ignore clang failures (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: avoid fall-through warnings (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix bpf_target_sparc check (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix ptr to u64 conversion warning on 32-bit platforms (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision bit propagation for BPF_ST instructions (Yauheni Kaliuta) [1747617] - [kernel] bpf: Fix ORC unwinding in non-JIT BPF code (Yauheni Kaliuta) [1747617] - [tools] objtool: Add support for C jump tables (Yauheni Kaliuta) [1747617] - [tools] objtool: Don't use ignore flag for fake jumps (Yauheni Kaliuta) [1747617] - [tools] objtool: Support per-function rodata sections (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_reuseport_array on s390 (Yauheni Kaliuta) [1747617] - [tools] bpftool: add completion for bpftool prog "loadall" (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup: Fix build error without CONFIG_NET (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_attach_probe map definition (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add verifier tests for wide stores (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [tools] libbpf: add perf_buffer_ prefix to README (Yauheni Kaliuta) [1747617] - [tools] bpftool: switch map event_pipe to libbpf's perf_buffer (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test perf buffer API (Yauheni Kaliuta) [1747617] - [tools] libbpf: auto-set PERF_EVENT_ARRAY size to number of CPUs (Yauheni Kaliuta) [1747617] - [tools] libbpf: add perf buffer API (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add test_tcp_rtt to .gitignore (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_align liveliness expectations (Yauheni Kaliuta) [1747617] - [tools] bpftool: add "prog run" subcommand to test-run programs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert legacy BPF maps to BTF-defined ones (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert selftests using BTF-defined maps to new syntax (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add __uint and __type macro for BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] libbpf: capture value in BTF type info for BTF-defined map defs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert existing tracepoint tests to new APIs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add kprobe/uprobe selftests (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: switch test to new attach_perf_event API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add raw tracepoint attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add tracepoint attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add kprobe/uprobe attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add ability to attach/detach BPF program to perf event (Yauheni Kaliuta) [1747617] - [tools] libbpf: introduce concept of bpf_link (Yauheni Kaliuta) [1747617] - [tools] libbpf: make libbpf_strerror_r agnostic to sign of error (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: fix inlines in test_lwt_seg6local (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: standardize to static __always_inline (Yauheni Kaliuta) [1747617] - [samples] bpf: Add support for fq's EDT to HBM (Yauheni Kaliuta) [1747617] - [tools] bpf, libbpf, smatch: Fix potential NULL pointer dereference (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix GCC8 warning for strncpy (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: add tests for shifts by zero (Yauheni Kaliuta) [1747617] - [x86] bpf, x32: Fix bug with ALU64 {LSH, RSH, ARSH} BPF_K shift by 0 (Yauheni Kaliuta) [1747617] - [x86] bpf, x32: Fix bug with ALU64 {LSH, RSH, ARSH} BPF_X shift by 0 (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking (Yauheni Kaliuta) [1747617] - [tools] bpf: fix uapi bpf_prog_info fields alignment (Yauheni Kaliuta) [1747617] - [kernel] devmap: Allow map lookups from eBPF (Yauheni Kaliuta) [1747617] - [net] bpf_xdp_redirect_map: Perform map lookup in eBPF helper (Yauheni Kaliuta) [1747617] - [net] devmap: Rename ifindex member in bpf_redirect_info (Yauheni Kaliuta) [1747617] - [kernel] devmap/cpumap: Use flush list instead of bitmap (Yauheni Kaliuta) [1747617] - [kernel] xskmap: Move non-standard list manipulation to helper (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix -Wstrict-aliasing in test_sockopt_sk.c (Yauheni Kaliuta) [1747617] - [tools] bpftool: support cgroup sockopt (Yauheni Kaliuta) [1747617] - [documentation] bpf: add sockopt documentation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test that exercises BPF_F_ALLOW_MULTI (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test that exercises sk helpers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test sockopt section name (Yauheni Kaliuta) [1747617] - [tools] libbpf: support sockopt hooks (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [kernel] bpf: implement getsockopt and setsockopt hooks (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix cgroup bpf release synchronization (Yauheni Kaliuta) [1747617] - [samples] bpf: make the use of xdp samples consistent (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix BPF_ALU32 | BPF_ARSH on BE arches (Yauheni Kaliuta) [1747617] - [tools] bpftool: use correct argument in cgroup errors (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix compiler warning with CONFIG_MODULES=n (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: build tests with debug info (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix max() type mismatch for 32bit (Yauheni Kaliuta) [1747617] - [trace] xdp: Add tracepoint for bulk XDP_TX (Yauheni Kaliuta) [1747617] - [tools] selftests, bpf: Add test for veth native XDP (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix spelling mistake "conflictling" -> "conflicting" (Yauheni Kaliuta) [1747617] - [kernel] bpf: precise scalar_value tracking (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add realistic loop tests (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add basic verifier tests for loops (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix tests (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix callees pruning callers (Yauheni Kaliuta) [1747617] - [kernel] bpf: introduce bounded loops (Yauheni Kaliuta) [1747617] - [kernel] bpf: extend is_branch_taken to registers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix tests due to const spill/fill (Yauheni Kaliuta) [1747617] - [kernel] bpf: track spill/fill of constants (Yauheni Kaliuta) [1747617] - [tools] libbpf: constify getter APIs (Yauheni Kaliuta) [1747617] - [samples] bpf: refactor header include path (Yauheni Kaliuta) [1747617] - [samples] bpf: remove unnecessary include options in Makefile (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert tests w/ custom values to BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: switch BPF_ANNOTATE_KV_PAIR tests to BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add test for BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] libbpf: allow specifying map definitions using BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: split initialization and loading of BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: identify maps by section index in addition to offset (Yauheni Kaliuta) [1747617] - [tools] libbpf: refactor map initialization (Yauheni Kaliuta) [1747617] - [tools] libbpf: streamline ELF parsing error-handling (Yauheni Kaliuta) [1747617] - [tools] libbpf: extract BTF loading logic (Yauheni Kaliuta) [1747617] - [tools] libbpf: add common min/max macro to libbpf_internal.h (Yauheni Kaliuta) [1747617] - [net] bpf: fix the check that forwarding is enabled in bpf_ipv6_fib_lookup (Yauheni Kaliuta) [1747617] - [kernel] bpf: Fix build error without CONFIG_INET (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert socket_cookie test to sk storage (Yauheni Kaliuta) [1747617] - [tools] bpf/tools: sync bpf.h (Yauheni Kaliuta) [1747617] - [net] bpf: export bpf_sock for BPF_PROG_TYPE_SOCK_OPS prog type (Yauheni Kaliuta) [1747617] - [net] bpf: export bpf_sock for BPF_PROG_TYPE_CGROUP_SOCK_ADDR prog type (Yauheni Kaliuta) [1747617] - [tools] bpf: Add test for SO_REUSEPORT_DETACH_BPF (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix check for presence of associated BTF for map creation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: signedness bug in enable_all_controllers() (Yauheni Kaliuta) [1747617] - [samples] bpf: fix include path in Makefile (Yauheni Kaliuta) [1747617] - [kernel] bpf: silence warning messages in core (Yauheni Kaliuta) [1747617] - [tools] bpf: use libbpf_num_possible_cpus internally (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: remove bpf_util.h from BPF C progs (Yauheni Kaliuta) [1747617] - [tools] bpf: add a new API libbpf_num_possible_cpus() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf : clean up feature/ when make clean (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix constness of source arg for bpf helpers (Yauheni Kaliuta) [1747617] - [samples] bpf: don't run probes at the local make stage (Yauheni Kaliuta) [1747617] - [tools] libbpf: remove qidconf and better support external bpf programs (Yauheni Kaliuta) [1747617] - [tools] bpf: Add bpf_map_lookup_elem selftest for xskmap (Yauheni Kaliuta) [1747617] - [tools] bpf/tools: sync bpf.h (Yauheni Kaliuta) [1747617] - [net] bpf: Allow bpf_map_lookup_elem() on an xskmap (Yauheni Kaliuta) [1747617] - [documentation] docs: bpf: get rid of two warnings (Yauheni Kaliuta) [1747617] - [net] bpf: allow CGROUP_SKB programs to use bpf_skb_cgroup_id() helper (Yauheni Kaliuta) [1747617] - [samples] bpf: print a warning about headers_install (Yauheni Kaliuta) [1747617] - [kernel] bpf: remove redundant assignment to err (Yauheni Kaliuta) [1747617] - [samples] bpf: hbm: fix spelling mistake "notifcations" -> "notificiations" (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: measure RTT from xdp using xdping (Yauheni Kaliuta) [1747617] - [documentation] bpf: doc: update answer for 32-bit subregister question (Yauheni Kaliuta) [1747617] - [kernel] bpf: move memory size checks to bpf_map_charge_init() (Yauheni Kaliuta) [1747617] - [kernel] bpf: rework memlock-based memory accounting for maps (Yauheni Kaliuta) [1747617] - [kernel] bpf: group memory related fields in struct bpf_map_memory (Yauheni Kaliuta) [1747617] - [net] bpf: add memlock precharge for socket local storage (Yauheni Kaliuta) [1747617] - [kernel] bpf: add memlock precharge check for cgroup_local_storage (Yauheni Kaliuta) [1747617] - [samples] bpf: Add more stats to HBM (Yauheni Kaliuta) [1747617] - [samples] bpf: Add cn support to hbm_out_kern.c (Yauheni Kaliuta) [1747617] - [kernel] bpf: Update __cgroup_bpf_run_filter_skb with cn (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup inet skb programs can return 0 to 3 (Yauheni Kaliuta) [1747617] - [kernel] bpf: Create BPF_PROG_CGROUP_INET_EGRESS_RUN_ARRAY (Yauheni Kaliuta) [1747617] - [tools] libbpf: reduce unnecessary line wrapping (Yauheni Kaliuta) [1747617] - [tools] libbpf: typo and formatting fixes (Yauheni Kaliuta) [1747617] - [tools] libbpf: simplify two pieces of logic (Yauheni Kaliuta) [1747617] - [tools] libbpf: use negative fd to specify missing BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix error code returned on corrupted ELF (Yauheni Kaliuta) [1747617] - [tools] libbpf: check map name retrieved from ELF (Yauheni Kaliuta) [1747617] - [tools] libbpf: simplify endianness check (Yauheni Kaliuta) [1747617] - [tools] libbpf: preserve errno before calling into user callback (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix detection of corrupted BPF instructions section (Yauheni Kaliuta) [1747617] - [tools] libbpf: prevent overwriting of log_level in bpf_object__load_progs() (Yauheni Kaliuta) [1747617] - [kernel] bpf: tracing: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [kernel] bpf: remove __rcu annotations from bpf_prog_array (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add auto-detach test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: enable all available cgroup v2 controllers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert test_cgrp2_attach2 example into kselftest (Yauheni Kaliuta) [1747617] - [samples] bpf: fix a couple of style issues in bpf_load (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fail test_tunnel.sh if subtests fail (Yauheni Kaliuta) [1747617] - [tools] bpftool: make -d option print debug output from verifier (Yauheni Kaliuta) [1747617] - [tools] libbpf: add bpf_object__load_xattr() API function to pass log_level (Yauheni Kaliuta) [1747617] - [tools] bpftool: add -d option to get debug output from libbpf (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix warning that PTR_ERR_OR_ZERO can be used (Yauheni Kaliuta) [1747617] - [tools] bpf: style fix in while(!feof()) loop (Yauheni Kaliuta) [1747617] - [kernel] bpf: check signal validity in nmi for bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpftool: auto-complete BTF IDs for btf dump (Yauheni Kaliuta) [1747617] - [samples] bpf: add ibumad sample to .gitignore (Yauheni Kaliuta) [1747617] - [x86] x32: bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [s390] bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [powerpc] bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: enable hi32 randomization for all tests (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: adjust several test_verifier helpers for insn insertion (Yauheni Kaliuta) [1747617] - [tools] libbpf: add "prog_flags" to bpf_program/bpf_prog_load_attr/bpf_load_program_attr (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: randomize high 32-bit when BPF_F_TEST_RND_HI32 is set (Yauheni Kaliuta) [1747617] - [tools] bpf: sync uapi header bpf.h (Yauheni Kaliuta) [1747617] - [uapi] bpf: introduce new bpf prog load flags "BPF_F_TEST_RND_HI32" (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: insert zero extension according to analysis result (Yauheni Kaliuta) [1747617] - [kernel] bpf: introduce new mov32 variant for doing explicit zero extension (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: mark patched-insn with sub-register zext flag (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: mark verified-insn with sub-register zext flag (Yauheni Kaliuta) [1747617] - [tools] bpf: add selftest in test_progs for bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf uapi header bpf.h to tools directory (Yauheni Kaliuta) [1747617] - [kernel] bpf: implement bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpftool: update bash-completion w/ new c option for btf dump (Yauheni Kaliuta) [1747617] - [tools] bpftool/docs: add description of btf dump C option (Yauheni Kaliuta) [1747617] - [tools] bpftool: add C output format option to btf dump subcommand (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add btf_dump BTF-to-C conversion tests (Yauheni Kaliuta) [1747617] - [tools] libbpf: add btf_dump API for BTF-to-C conversion (Yauheni Kaliuta) [1747617] - [tools] libbpf: switch btf_dedup() to hashmap for dedup table (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add tests for libbpf's hashmap (Yauheni Kaliuta) [1747617] - [tools] libbpf: add resizable non-thread safe internal hashmap (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: use btf__parse_elf to check presence of BTF/BTF.ext (Yauheni Kaliuta) [1747617] - [tools] bpftool: use libbpf's btf__parse_elf API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add btf__parse_elf API to load .BTF and .BTF.ext (Yauheni Kaliuta) [1747617] - [tools] libbpf: ensure libbpf.h is included along libbpf_internal.h (Yauheni Kaliuta) [1747617] - [samples] bpf: Do not define bpf_printk macro (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: Move bpf_printk to bpf_helpers.h (Yauheni Kaliuta) [1747617] - [kernel] bpf: convert explored_states to hash table (Yauheni Kaliuta) [1747617] - [kernel] bpf: split explored_states (Yauheni Kaliuta) [1747617] - [kernel] bpf: cleanup explored_states (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add pyperf scale test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: adjust verifier scale test (Yauheni Kaliuta) [1747617] - [kernel] bpf: bump jmp sequence limit (Yauheni Kaliuta) [1747617] - [tools] libbpf: emit diff of mismatched public API, if any (Yauheni Kaliuta) [1747617] - [tools] bpf, selftest: test global data/bss/rodata sections (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test_tc_tunnel: skip unsupported tests (Jiri Benc) [1749814] - [tools] selftests/bpf: More compatible nc options in test_tc_edt (Jiri Benc) [1749814] - [net] xdp: check device pointer before clearing (Jiri Benc) [1749814] - [net] bpf: udp: Avoid calling reuseport's bpf_prog from udp_gro (Jiri Benc) [1749814] - [net] bpf: sockmap, fix use after free from sleep in psock backlog workqueue (Jiri Benc) [1749814] - [include] bpf: sockmap, restore sk_write_space when psock gets dropped (Jiri Benc) [1749814] - [net] bpfilter: fallback to netfilter if failed to load bpfilter kernel module (Jiri Benc) [1749814] - [net] pass net_device argument to the eth_get_headlen (Jiri Benc) [1749814] - [net] flow_dissector: handle no-skb use case (Jiri Benc) [1749814] - [net] plumb network namespace into __skb_flow_dissect (Jiri Benc) [1749814] - [net] bpfilter: dont use module_init in non-modular code (Jiri Benc) [1749814] - [net] xsk: fix XDP socket ring buffer memory ordering (Jiri Benc) [1749814] - [tools] selftests/bpf: install files test_xdp_vlan.sh (Jiri Benc) [1749814] - [net] fix bpf_xdp_adjust_head regression for generic-XDP (Jiri Benc) [1749814] - [tools] selftests/bpf: reduce time to execute test_xdp_vlan.sh (Jiri Benc) [1749814] - [tools] selftests/bpf: add wrapper scripts for test_xdp_vlan.sh (Jiri Benc) [1749814] - [tools] bpf: fix XDP vlan selftests test_xdp_vlan.sh (Jiri Benc) [1749814] - [net] core: support XDP generic on stacked devices. (Jiri Benc) [1749814] - [netdrv] netvsc: unshare skb in VF rx handler (Jiri Benc) [1749814] - [net] convert rps_needed and rfs_needed to new static branch api (Jiri Benc) [1749814] - [net] core: Document __skb_flow_dissect() flags argument (Jiri Benc) [1749814] - [net] gso: Fix skb_segment splat when splitting gso_size mangled skb having linear-headed frag_list (Jiri Benc) [1749814] - [net] sock_map, fix missing ulp check in sock hash case (Jiri Benc) [1749814] - [net] Fix missing meta data in skb with vlan packet (Jiri Benc) [1749814] - [include] skbuff.h: fix using plain integer as NULL warning (Jiri Benc) [1749814] - [netdrv] netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit (Jiri Benc) [1761359] - [netdrv] netdevsim: Restore per-network namespace accounting for fib entries (Jiri Benc) [1761359] - [netdrv] netdevsim: Make nsim_num_vf static (Jiri Benc) [1761359] - [netdrv] netdevsim: fix fall-through annotation (Jiri Benc) [1761359] - [netdrv] netdevsim: implement ndo_get_devlink_port (Jiri Benc) [1761359] - [netdrv] netdevsim: move netdev creation/destruction to dev probe (Jiri Benc) [1761359] - [netdrv] netdevsim: extend device attrs to support port addition and deletion (Jiri Benc) [1761359] - [netdrv] netdevsim: implement dev probe/remove skeleton with port initialization (Jiri Benc) [1761359] - [netdrv] netdevsim: change debugfs tree topology (Jiri Benc) [1761359] - [netdrv] netdevsim: generate random switch id instead of using dev id (Jiri Benc) [1761359] - [netdrv] netdevsim: merge sdev into dev (Jiri Benc) [1761359] - [netdrv] netdevsim: rename dev_init/exit() functions and make them independent on ns (Jiri Benc) [1761359] - [netdrv] netdevsim: add bus attributes to add new and delete devices (Jiri Benc) [1761359] - [netdrv] netdevsim: use ida for bus device ids (Jiri Benc) [1761359] - [netdrv] netdevsim: add stub netdevsim driver implementation (Jiri Benc) [1761359] - [netdrv] netdevsim: move device registration and related code to bus.c (Jiri Benc) [1761359] - [netdrv] netdevsim: put netdevsim bus code into separate file (Jiri Benc) [1761359] - [netdrv] netdevsim: rename devlink.c to dev.c to contain per-dev(asic) items (Jiri Benc) [1761359] - [netdrv] netdevsim: create devlink instance per netdevsim instance (Jiri Benc) [1761359] - [netdrv] netdevsim: move device registration on bus to be done earlier in init (Jiri Benc) [1761359] - [netdrv] netdevsim: move sdev-specific init/uninit code into separate functions (Jiri Benc) [1761359] - [netdrv] netdevsim: make bpf_offload_dev_create() per-sdev instead of first ns (Jiri Benc) [1761359] - [netdrv] netdevsim: move shared dev creation and destruction into separate file (Jiri Benc) [1761359] - [netdrv] netdevsim: let net core to free netdevsim netdev (Jiri Benc) [1761359] - [netdrv] netdevsim: remove nsim_dellink() implementation (Jiri Benc) [1761359] - [include] driver core: add BUS_ATTR_WO() macro (Jiri Benc) [1761359] - arm64: bpf: do not allocate executable memory (Yauheni Kaliuta) [1762214] - modules: page-align module section allocations only for arches supporting strict module rwx (Yauheni Kaliuta) [1762214] - modules: always page-align module section allocations (Yauheni Kaliuta) [1762214] - modules: fix compile error if don't have strict module rwx (Yauheni Kaliuta) [1762214] - modules: Use vmalloc special flag (Yauheni Kaliuta) [1762214] - modules: fix BUG when load module with rodata=n (Yauheni Kaliuta) [1762214] - x86/modules: Avoid breaking W^X while loading modules (Yauheni Kaliuta) [1762214] - x86/alternatives, jumplabel: Use text_poke_early() before mm_init() (Yauheni Kaliuta) [1762214] - x86/kprobes: Set instruction page as executable (Yauheni Kaliuta) [1762214] - x86/ftrace: Set trampoline pages as executa (Yauheni Kaliuta) [1762214] - [tools] bpftool: Fix json dump crash on powerpc (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix race in flow dissector tests (Yauheni Kaliuta) [1747615] - [arm64] insn: Fix ldadd instruction encoding (Yauheni Kaliuta) [1747615] - [scripts] kbuild: tolerate missing pahole when generating BTF (Yauheni Kaliuta) [1747615] - [scripts] kbuild: handle old pahole more gracefully when generating BTF (Yauheni Kaliuta) [1747615] - [scripts] kbuild: add ability to generate BTF type info for vmlinux (Yauheni Kaliuta) [1747615] - [scripts] kbuild: hardcode genksyms path and remove GENKSYMS variable (Yauheni Kaliuta) [1747615] - [scripts] bpf: fix script for generating man page on BPF helpers (Yauheni Kaliuta) [1747615] - [tools] add smp_* barrier variants to include infrastructure (Yauheni Kaliuta) [1747615] - [tools] tools headers barrier: Fix arm64 tools build failure wrt smp_load_{acquire, release} (Yauheni Kaliuta) [1747615] - [tools] bpf, x32: Fix bug for BPF_JMP | {BPF_JSGT, BPF_JSLE, BPF_JSLT, BPF_JSGE} (Yauheni Kaliuta) [1747615] - [x86] unwind/orc: Fall back to using frame pointers for generated code (Yauheni Kaliuta) [1747615] - [x86] unwind: Add hardcoded ORC entry for NULL (Yauheni Kaliuta) [1747615] - [x86] unwind: Handle NULL pointer calls better in frame unwinder (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix accessing bpf_sysctl.file_pos on s390 (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix narrower loads on s390 (Yauheni Kaliuta) [1747615] - [net] bpf: rename bpf_ctx_wide_store_ok to bpf_ctx_wide_access_ok (Yauheni Kaliuta) [1747615] - [net] bpf: allow wide (u64) aligned stores for some fields of bpf_sock_addr (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: improve unexpected success reporting in test_syctl (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix "ctx:write sysctl:write read ok" on s390 (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix format string for p_err() in query_flow_dissector() (Yauheni Kaliuta) [1747615] - [tools] bpftool: add raw_tracepoint_writable prog type to header (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix NULL deref in btf_type_is_resolve_source_only (Yauheni Kaliuta) [1747615] - [net] bpf: Set sk_bpf_storage back to NULL for cloned sk (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix nested bpf tracepoints with per-cpu data (Yauheni Kaliuta) [1747615] - [net] bpf: Fix out of bounds memory access in bpf_sk_storage (Yauheni Kaliuta) [1747615] - [kernel] sysctl: define proc_do_static_key() (Yauheni Kaliuta) [1747615] - [x86] bpf, x64: fix stack layout of JITed bpf code (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Add missing RCU read lock on flush (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Add missing bulk queue free (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Fix premature entry free on destroying map (Yauheni Kaliuta) [1747615] - [powerpc] bpf: use unsigned division instruction for 64-bit operations (Yauheni Kaliuta) [1747615] - [tools] bpf: fix div64 overflow tests to properly detect errors (Yauheni Kaliuta) [1747615] - [tools] bpf: sync BPF_FIB_LOOKUP flag changes with BPF uapi (Yauheni Kaliuta) [1747615] - [uapi] bpf: simplify definition of BPF_FIB_LOOKUP related flags (Yauheni Kaliuta) [1747615] - [tools] bpf: lpm_trie: check left child of last leftmost node for NULL (Yauheni Kaliuta) [1747615] - [tools] bpf: expand section tests for test_section_names (Yauheni Kaliuta) [1747615] - [tools] bpf: more msg_name rewrite tests to test_sock_addr (Yauheni Kaliuta) [1747615] - [tools] bpf, bpftool: enable recvmsg attach types (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: enable recvmsg attach types (Yauheni Kaliuta) [1747615] - [tools] bpf: sync tooling uapi header (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix unconnected udp hooks (Yauheni Kaliuta) [1747615] - [tools] bpftool: Fix JSON output when lookup fails (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: move test_lirc_mode2_user to TEST_GEN_PROGS_EXTENDED (Yauheni Kaliuta) [1747615] - [tools] libbpf: Return btf_fd for load_sk_storage_btf (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix compiler warning in flow_dissector test (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: complete sub-register zero extension checks (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: move sub-register zero extension checks into subreg.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add zero extend checks for ALU32 and/or/xor (Yauheni Kaliuta) [1747615] - [samples] bpf: suppress compiler warning (Yauheni Kaliuta) [1747615] - [samples] bpf: fix to change the buffer size for read() (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix BTF raw dump of FWD's fwd_kind (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix bpf_get_current_task (Yauheni Kaliuta) [1747615] - [tools] libbpf: move logging helpers into libbpf_internal.h (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add test_sysctl and map_tests/tests.h to .gitignore (Yauheni Kaliuta) [1747615] - [kernel] bpf: relax inode permission check for retrieving bpf program (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add prog detach to flow_dissector test (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add missing \n to flow_dissector CHECK errors (Yauheni Kaliuta) [1747615] - [tools] libbpf: don't fail when feature probing fails (Yauheni Kaliuta) [1747615] - [tools] bpf: test ref bit from data path and add new tests for syscall path (Yauheni Kaliuta) [1747615] - [kernel] bpf, lru: avoid messing with eviction heuristics upon syscall lookup (Yauheni Kaliuta) [1747615] - [kernel] bpf: add map_lookup_elem_sys_only for lookups from syscall side (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync kernel btf.h header (Yauheni Kaliuta) [1747615] - [uapi] bpf: btf: fix the brackets of BTF_INT_OFFSET() (Yauheni Kaliuta) [1747615] - [kernel] bpf: devmap: fix use-after-free Read in __dev_map_entry_free (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix undefined behavior in narrow load handling (Yauheni Kaliuta) [1747615] - [tools] libbpf: detect supported kernel BTF features and sanitize BTF (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: Add files generated after build to .gitignore (Yauheni Kaliuta) [1747615] - [tools] bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix minor issues in documentation for BPF helpers (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix recurring typo in documentation for BPF helpers (Yauheni Kaliuta) [1747615] - [tools] bpf: add various test cases for backward jumps (Yauheni Kaliuta) [1747615] - [documentation] docs/btf: fix the missing section marks (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: initialize bpf_object pointers where needed (Yauheni Kaliuta) [1747615] - [tools] libbpf: add libbpf_util.h to header install (Yauheni Kaliuta) [1747615] - [tools] bpf: fix perf build error with uClibc (seen on ARC) (Yauheni Kaliuta) [1747615] - [tools] bpftool: exclude bash-completion/bpftool from .gitignore pattern (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: set RLIMIT_MEMLOCK properly for test_libbpf_open.c (Yauheni Kaliuta) [1747615] - [net] bpf: Use PTR_ERR_OR_ZERO in bpf_fd_sk_storage_update_elem() (Yauheni Kaliuta) [1747615] - [kernel] bpf: Use vmalloc special flag (Yauheni Kaliuta) [1747615] - [kernel] bpf: Fail bpf_probe_write_user() while mm is switched (Yauheni Kaliuta) [1747615] - [kernel] mm/tlb: Provide default nmi_uaccess_okay() (Yauheni Kaliuta) [1747615] - [kernel] asm-generic/tlb: Guard with #ifdef CONFIG_MMU (Yauheni Kaliuta) [1747615] - [tools] bpf: Add ene-to-end test for bpf_sk_storage_* helpers (Yauheni Kaliuta) [1747615] - [tools] bpf: Add BPF_MAP_TYPE_SK_STORAGE test to test_maps (Yauheni Kaliuta) [1747615] - [tools] bpf: Add verifier tests for the bpf_sk_storage (Yauheni Kaliuta) [1747615] - [tools] bpf: Refactor BTF encoding macro to test_btf.h (Yauheni Kaliuta) [1747615] - [tools] bpf: Support BPF_MAP_TYPE_SK_STORAGE in bpf map probing (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools (Yauheni Kaliuta) [1747615] - [net] bpf: Introduce bpf sk local storage (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: test writable buffers in raw tps (Yauheni Kaliuta) [1747615] - [tools] sync bpf.h (Yauheni Kaliuta) [1747615] - [kernel] bpf: add writable context for raw tracepoints (Yauheni Kaliuta) [1747615] - [arm64] bpf, arm64: use more scalable stadd over ldxr / stxr loop in xadd (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix indendation in bash-completion/bpftool (Yauheni Kaliuta) [1747615] - [tools] bpftool: add bash completions for btf command (Yauheni Kaliuta) [1747615] - [tools] bpftool/docs: add btf sub-command documentation (Yauheni Kaliuta) [1747615] - [tools] bpftool: add ability to dump BTF types (Yauheni Kaliuta) [1747615] - [tools] bpftool: Fix errno variable usage (Yauheni Kaliuta) [1747615] - [tools] bpftool: show flow_dissector attachment status (Yauheni Kaliuta) [1747615] - [net] bpf: support BPF_PROG_QUERY for BPF_FLOW_DISSECTOR attach_type (Yauheni Kaliuta) [1747615] - [samples] bpf: add hbm sample to .gitignore (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix samples/bpf build failure due to undefined UINT32_MAX (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: fix segfault in bpf_object__init_maps' pr_debug statement (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: handle old kernels more graceful wrt global data sections (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand test_tc_tunnel with SIT encap (Yauheni Kaliuta) [1747615] - [net] bpf: update skb->protocol in bpf_skb_net_grow (Yauheni Kaliuta) [1747615] - [tools] bpf/flow_dissector: don't adjust nhoff by ETH_HLEN in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: properly return error from bpf_flow_load (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: run flow dissector tests in skb-less mode (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add flow dissector bpf_skb_load_bytes helper test (Yauheni Kaliuta) [1747615] - [net] bpf: when doing BPF_PROG_TEST_RUN for flow dissector use no-skb mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: drop bpf_verifier_lock (Yauheni Kaliuta) [1747615] - [kernel] bpf: remove global variables (Yauheni Kaliuta) [1747615] - [documentation] bpf: document the verifier limits (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix BPF_LOG_BUF_SIZE off-by-one error (Yauheni Kaliuta) [1747615] - [documentation] bpf: move BPF_PROG_TYPE_FLOW_DISSECTOR documentation to a new common place (Yauheni Kaliuta) [1747615] - [tools] bpf: Increase MAX_NR_MAPS to 17 in test_verifier.c (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix compile errors due to unsync linux/in6.h and netinet/in.h (Yauheni Kaliuta) [1747615] - [documentation] bpf: Document BPF_PROG_TYPE_CGROUP_SYSCTL (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix a compilation error (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap memory prefetchw optimizations for struct page (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap do bulk allocation of SKBs (Yauheni Kaliuta) [1747615] - [net] core: introduce build_skb_around (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap use ptr_ring_consume_batched (Yauheni Kaliuta) [1747615] - [tools] libbpf: optimize barrier for XDP socket rings (Yauheni Kaliuta) [1747615] - [tools] bpftool: show btf_id in map listing (Yauheni Kaliuta) [1747615] - [tools] bpftool: re-organize newline printing for map listing (Yauheni Kaliuta) [1747615] - [tools] bpftool: Support sysctl hook (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix printf formatter for ptrdiff_t argument (Yauheni Kaliuta) [1747615] - [kernel] bpf: use BPF_CAST_CALL for casting bpf call (Yauheni Kaliuta) [1747615] - [uapi] bpf: allow clearing all sock_ops callback flags (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add VRF test cases to lwt_ip_encap test (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: make flow dissector tests more extensible (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: two scale tests (Yauheni Kaliuta) [1747615] - [tools] bpftool: Improve handling of ENOSPC on reuseport_array map dumps (Yauheni Kaliuta) [1747615] - [tools] bpftool: Use print_entry_error() in case of ENOENT when dumping (Yauheni Kaliuta) [1747615] - [tools] bpftool: add a note on program statistics in man page (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix short option name for printing version in man pages (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix man page documentation for "pinmaps" keyword (Yauheni Kaliuta) [1747615] - [tools] bpftool: reset errno for "bpftool cgroup tree" (Yauheni Kaliuta) [1747615] - [tools] bpftool: remove blank line after btf_id when listing programs (Yauheni Kaliuta) [1747615] - [net] bpf: reserve flags in bpf_skb_net_shrink (Yauheni Kaliuta) [1747615] - [tools] bpf: fix whitespace for ENCAP_L2 defines in bpf.h (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: bring back (void *) cast to set_ipv4_csum in test_tc_tunnel (Yauheni Kaliuta) [1747615] - [tools] selftests/btf: add VAR and DATASEC case for dedup tests (Yauheni Kaliuta) [1747615] - [tools] btf: add support for VAR and DATASEC in btf_dedup() (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor "check_reg_arg" to eliminate code redundancy (Yauheni Kaliuta) [1747615] - [kernel] bpf: factor out reg and stack slot propagation into "propagate_liveness_reg" (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor propagate_liveness to eliminate code redundance (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor propagate_liveness to eliminate duplicated for loop (Yauheni Kaliuta) [1747615] - [netdrv] netdevsim: move sdev specific bpf debugfs files to sdev dir (Yauheni Kaliuta) [1747615] - [kernel] bpf: Fix distinct pointer types warning for ARCH=i386 (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: C based test for sysctl and strtoX (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_strtol and bpf_strtoul helpers (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test ARG_PTR_TO_LONG arg type (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Add sysctl and strtoX helpers to bpf_helpers.h (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_strtol and bpf_strtoul helpers (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce ARG_PTR_TO_{INT,LONG} arg types (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test file_pos field in bpf_sysctl ctx (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_sysctl_{get, set}_new_value helpers (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test sysctl_get_current_value helper (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_sysctl_get_name helper (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test BPF_CGROUP_SYSCTL (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test sysctl section name (Yauheni Kaliuta) [1747615] - [tools] libbpf: Support sysctl hook (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add file_pos field to bpf_sysctl ctx (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_{get, set}_new_value helpers (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_get_current_value helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_get_name helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: Sysctl hook (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add base proto function for cgroup-bpf programs (Yauheni Kaliuta) [1747615] - [net] bpf: explicitly prohibit ctx_{in, out} in non-skb BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] selftests_bpf: add L2 encap to test_tc_tunnel (Yauheni Kaliuta) [1747615] - [tools] bpf: sync bpf.h to tools/ for BPF_F_ADJ_ROOM_ENCAP_L2 (Yauheni Kaliuta) [1747615] - [net] bpf: add layer 2 encap support to bpf_skb_adjust_room (Yauheni Kaliuta) [1747615] - [tools] selftests_bpf: extend test_tc_tunnel for UDP encap (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix missing bpf_check_uarg_tail_zero in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [s390] Convert IS_ENABLED uses to __is_defined (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add selftest for __sk_buff context in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] libbpf: add support for ctx_{size, }_{in, out} in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [net] bpf: support input __sk_buff context in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] bpftool: show btf id in program information (Yauheni Kaliuta) [1747615] - [tools] libbpf: Fix build with gcc-8 (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix crash in XDP socket part with new larger BPF_LOG_BUF_SIZE (Yauheni Kaliuta) [1747615] - [tools] bpf, bpftool: fix a few ubsan warnings (Yauheni Kaliuta) [1747615] - [tools] bpf, selftest: add test cases for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [tools] bpf, selftest: test {rd, wr}only flags and direct value access (Yauheni Kaliuta) [1747615] - [tools] bpf: bpftool support for dumping data/bss/rodata sections (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: add support for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: support global data/bss/rodata sections (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: refactor relocation handling (Yauheni Kaliuta) [1747615] - [tools] bpf: sync {btf, bpf}.h uapi header from tools infrastructure (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow for key-less BTF in array map (Yauheni Kaliuta) [1747615] - [kernel] bpf: kernel side support for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [documentation] bpf: add specification for BTF Var and DataSec kinds (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow . char as part of the object name (Yauheni Kaliuta) [1747615] - [kernel] bpf: add syscall side map freeze support (Yauheni Kaliuta) [1747615] - [kernel] bpf: add program side {rd, wr}only support for maps (Yauheni Kaliuta) [1747615] - [kernel] bpf: do not retain flags that are not tied to map lifetime (Yauheni Kaliuta) [1747615] - [kernel] bpf: implement lookup-free direct value access for maps (Yauheni Kaliuta) [1747615] - [net] ipv6: Add neighbor helpers that use the ipv6 stub (Yauheni Kaliuta) [1747615] - [tools] libbpf: Ignore -Wformat-nonliteral warning (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add missed newline in verifier verbose log (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test unbounded var_off stack access (Yauheni Kaliuta) [1747615] - [kernel] bpf: Sanity check max value for var_off stack access (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test indirect var_off stack access in unpriv mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: Reject indirect var_off stack access in unpriv mode (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test indirect var_off stack access in raw mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: Reject indirect var_off stack access in raw mode (Yauheni Kaliuta) [1747615] - [samples] bpf: fix build with new clang (Yauheni Kaliuta) [1747615] - [samples] selftests/bpf: add NULL check for ksym_search (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: ksym_search won't check symbols exists (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: synthetic tests to push verifier limits (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add few verifier scale tests (Yauheni Kaliuta) [1747615] - [tools] libbpf: teach libbpf about log_level bit 2 (Yauheni Kaliuta) [1747615] - [kernel] bpf: increase verifier log limit (Yauheni Kaliuta) [1747615] - [kernel] bpf: increase complexity limit and maximum program size (Yauheni Kaliuta) [1747615] - [kernel] bpf: verbose jump offset overflow check (Yauheni Kaliuta) [1747615] - [kernel] bpf: convert temp arrays to kvcalloc (Yauheni Kaliuta) [1747615] - [kernel] bpf: improve verification speed by not remarking live_read (Yauheni Kaliuta) [1747615] - [kernel] bpf: improve verification speed by droping states (Yauheni Kaliuta) [1747615] - [kernel] bpf: add verifier stats and log_level bit 2 (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: remove duplicate .flags initialization in ctx_skb.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix -Wformat-invalid-specifier for bpf_obj_id.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix -Wformat-security warning for flow_dissector_load.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: tests.h should depend on .c files, not the output (Yauheni Kaliuta) [1747615] - [tools] bpf: add bpffs multi-dimensional array tests in test_btf (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test variable offset stack access (Yauheni Kaliuta) [1747615] - [kernel] bpf: Support variable offset stack access from helpers (Yauheni Kaliuta) [1747615] - [net] ipv6: Move ipv6 stubs to a separate header file (Yauheni Kaliuta) [1747615] - [tools] bpf: generate pkg-config file for libbpf (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: don't depend on hardcoded perf sample_freq (Yauheni Kaliuta) [1747615] - [tools] bpf: test_tc_tunnel.sh needs reverse path filtering disabled (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: tc-bpf flow shaping with EDT (Yauheni Kaliuta) [1747615] - [net] bpf: make bpf_skb_ecn_set_ce callable from BPF_PROG_TYPE_SCHED_ACT (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to encap modes (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to BPF_F_ADJ_ROOM_FIXED_GSO (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to BPF_ADJ_ROOM_MAC (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room encap flags (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_FIXED_GSO (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room mode BPF_ADJ_ROOM_MAC (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: extend bpf tunnel test with tso (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: extend bpf tunnel test with gre (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand bpf tunnel test to ipv6 (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand bpf tunnel test with decap (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: bpf tunnel encap test (Yauheni Kaliuta) [1747615] - [net] bpf: in bpf_skb_adjust_room avoid copy in tx fast path (Yauheni Kaliuta) [1747615] - [samples] bpf: add xdp_sample_pkts to .gitignore (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add tests for bpf_tcp_check_syncookie and bpf_skc_lookup_tcp (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: test references to sock_common (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: allow specifying helper for BPF_SK_LOOKUP (Yauheni Kaliuta) [1747615] - [tools] update uapi/linux/bpf.h (Yauheni Kaliuta) [1747615] - [net] bpf: add helper to check for a valid SYN cookie (Yauheni Kaliuta) [1747615] - [net] bpf: add skc_lookup_tcp helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow helpers to return PTR_TO_SOCK_COMMON (Yauheni Kaliuta) [1747615] - [kernel] bpf: track references based on is_acquire_func (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Add arm target register definitions (Yauheni Kaliuta) [1747615] - [documentation] bpf, doc: add RISC-V JIT to BPF documentation (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1747615] - [uapi] bpf: add documentation for helpers bpf_spin_lock(), bpf_spin_unlock() (Yauheni Kaliuta) [1747615]- [perf] perf: Add CCPI2 PMU support in ThunderX2 UNCORE driver (Robert Richter) [1726054] - [documentation] documentation: perf: Update documentation for ThunderX2 PMU uncore driver (Robert Richter) [1726054] - [scsi] lpfc: Update lpfc version to 12.6.0.2 (Dick Kennedy) [1771674] - [scsi] lpfc: revise nvme max queues to be hdwq count (Dick Kennedy) [1771674] - [scsi] lpfc: Initialize cpu_map for not present cpus (Dick Kennedy) [1771674] - [scsi] lpfc: fix inlining of lpfc_sli4_cleanup_poll_list() (Dick Kennedy) [1771674] - [scsi] lpfc: fix: coverity: lpfc_cmpl_els_rsp(): Null pointer dereferences (Dick Kennedy) [1771674] - [scsi] lpfc: fix: coverity: lpfc_get_scsi_buf_s3(): Null pointer dereferences (Dick Kennedy) [1771674] - [scsi] lpfc: Fix lpfc_cpumask_of_node_init() (Dick Kennedy) [1771674] - [scsi] lpfc: Fix a kernel warning triggered by lpfc_sli4_enable_intr() (Dick Kennedy) [1771674] - [scsi] lpfc: Fix a kernel warning triggered by lpfc_get_sgl_per_hdwq() (Dick Kennedy) [1771674] - [scsi] lpfc: Update lpfc version to 12.6.0.1 (Dick Kennedy) [1771674] - [scsi] lpfc: Add enablement of multiple adapter dumps (Dick Kennedy) [1771674] - [scsi] lpfc: Change default IRQ model on AMD architectures (Dick Kennedy) [1771674] - [scsi] lpfc: Add registration for CPU Offline/Online events (Dick Kennedy) [1771674] - [scsi] lpfc: Clarify FAWNN error message (Dick Kennedy) [1771674] - [scsi] lpfc: Sync with FC-NVMe-2 SLER change to require Conf with SLER (Dick Kennedy) [1771674] - [scsi] lpfc: Fix dynamic fw log enablement check (Dick Kennedy) [1771674] - [scsi] lpfc: Fix unexpected error messages during RSCN handling (Dick Kennedy) [1771674] - [scsi] lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port bounce (Dick Kennedy) [1771674] - [scsi] lpfc: Fix configuration of BB credit recovery in service parameters (Dick Kennedy) [1771674] - [scsi] lpfc: Fix duplicate unreg_rpi error in port offline flow (Dick Kennedy) [1771674] - [infiniband] ib/srp: Add missing new line after displaying fast_io_fail_tmo param (Kamal Heib) [1678461 1720899] - [net] sunrpc: The RDMA back channel mustn't disappear while requests are outstanding (Kamal Heib) [1720899] - [infiniband] rdma/nldev: Skip counter if port doesn't match (Kamal Heib) [1720899] - [rdma] uverbs: Prevent potential underflow (Kamal Heib) [1720899] - [infiniband] ib/core: Use rdma_read_gid_l2_fields to compare GID L2 fields (Kamal Heib) [1720899] - [infiniband] rdma/siw: free siw_base_qp in kref release routine (Kamal Heib) [1720899] - [infiniband] rdma/iwcm: move iw_rem_ref() calls out of spinlock (Kamal Heib) [1720899] - [infiniband] ib/core: Fix wrong iterating on ports (Kamal Heib) [1720899] - [infiniband] rdma/nldev: Reshuffle the code to avoid need to rebind QP in error path (Kamal Heib) [1720899] - [infiniband] rdma/cm: Fix memory leak in cm_add/remove_one (Kamal Heib) [1720899] - [infiniband] rdma/core: Fix an error handling path in 'res_get_common_doit()' (Kamal Heib) [1720899] - [infiniband] rdma/iwcm: Fix a lock inversion issue (Kamal Heib) [1720899] - [infiniband] rdma/siw: Fix serialization issue in write_space() (Kamal Heib) [1720899] - [infiniband] rdma/vmw_pvrdma: Free SRQ only once (Kamal Heib) [1757294 1720899] - [infiniband] rdma: Fix double-free in srq creation error flow (Kamal Heib) [1720899] - [infiniband] rdma/siw: Fix page address mapping in TX path (Kamal Heib) [1720899] - [infiniband] rdma/cma: Fix false error message (Kamal Heib) [1720899] - [infiniband] rdma/{cxgb3, cxgb4, i40iw}: Remove common code (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/core: Fix use after free and refcnt leak on ndev in_device in iwarp_query_port (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/core: Add common iWARP query port (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/i40iw: Associate ibdev to netdev before IB device registration (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/cxgb3: Use ib_device_set_netdev() (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma: Introduce ib_port_phys_state enum (Kamal Heib) [1760097 1745655 1720899] - [sched] topology: Improve load balancing on AMD EPYC systems (Phil Auld) [1757535] - [netdrv] broadcom: Use dev_get_drvdata (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add a new BNXT_FW_RESET_STATE_POLL_FW_DOWN state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.100 (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Increase timeout for HWRM_DBG_COREDUMP_XX commands (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Don't proceed in .ndo_set_rx_mode() when device is not in open state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix compile error regression with CONFIG_BNXT_SRIOV not set (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add FW fatal devlink_health_reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add bnxt_fw_exception() to handle fatal firmware errors (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add RESET_FW state logic to bnxt_fw_reset_task() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Do not send firmware messages if firmware is in error state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Retain user settings on a VF after RESET_NOTIFY event (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add devlink health reset reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle firmware reset (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle RESET_NOTIFY async event from firmware (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add new FW devlink_health_reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add BNXT_STATE_IN_FW_RESET state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Enable health monitoring (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Pre-map the firmware health monitoring registers (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Discover firmware error recovery capabilities (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle firmware reset status during IF_UP (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Register buffers for VFs before reserving resources (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_sriov_enable() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Prepare bnxt_init_one() to be called multiple times (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Suppress all error messages in hwrm_do_send_msg() in silent mode (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Simplify error checking in the SR-IOV message forwarding functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Convert error code in firmware message response to standard code (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Remove the -1 error return code from bnxt_hwrm_do_send_msg() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Use a common function to print the same ethtool -f error message (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix allocation of zero statistics block size regression (Jonathan Toppins) [1724766] - [netdrv] bnxt: no need to check return value of debugfs_create functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add PCI IDs for 57500 series NPAR devices (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Support all variants of the 5750X chip family (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_init_one() and turn on TPA support on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Support TPA counters on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Allocate the larger per-ring statistics block for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor ethtool ring statistics logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add hardware GRO setup function for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add TPA ID mapping logic for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add fast path logic for TPA on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Set TPA GRO mode flags on 57500 chips properly (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor tunneled hardware GRO logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle standalone RX_AGG completions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Expand bnxt_tpa_info struct to support 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor TPA logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add TPA structure definitions for BCM57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.89 (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Suppress HWRM errors for HWRM_NVM_GET_VARIABLE command (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix to include flow direction in L2 key (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Use correct src_fid to determine direction of the flow (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix handling FRAG_ERR when NVM_INSTALL_UPDATE cmd fails (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Improve RX doorbell sequence (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix VNIC clearing logic for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix VNIC accounting when enabling aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add page_pool_destroy() during RX ring cleanup (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: add page_pool support (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: optimized XDP_REDIRECT support (Jonathan Toppins) [1724766 1669220] - [netdrv] bnxt_en: Refactor __bnxt_xmit_xdp() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: rename some xdp functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Device serial number is supported only for PFs (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add support for aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Query firmware capability to support aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Separate RDMA MR/AH context allocation (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: read the clause type from the PHY ID (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Read package version from firmware (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Check new firmware capability to display extended stats (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add support for PCIe statistics (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_alloc_stats() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface to 1.10.0.69 (Jonathan Toppins) [1724766] - [netdrv] bnxt: remove ndo_get_port_parent_id implementation for physical ports (Jonathan Toppins) [1724766] - [netdrv] bnxt: pass switch ID through devlink_port_attrs_set() (Jonathan Toppins) [1724766] - [netdrv] bnxt: move bp->switch_id initialization to PF probe (Jonathan Toppins) [1724766] - [netdrv] bnxt: remove ndo_get_phys_port_name implementation (Jonathan Toppins) [1724766] - [netdrv] bnxt: implement ndo_get_devlink_port (Jonathan Toppins) [1724766] - [netdrv] bnxt: Implement ndo_get_port_parent_id() (Jonathan Toppins) [1724766] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix firmware signaled resource change logic in open (Jonathan Toppins) [1724766] - [netdrv] bnx2x: Mark expected switch fall-thoughs (Jonathan Toppins) [1724766] - [netdrv] bnx2x: Mark expected switch fall-throughs (Jonathan Toppins) [1724766] - [tools] selftests: kvm: vmx_dirty_log_test: skip the test when VMX is not supported (Vitaly Kuznetsov) [1771575] - [tools] selftests: kvm: consolidate VMX support checks (Vitaly Kuznetsov) [1771575] - [tools] selftests: kvm: vmx_set_nested_state_test: don't check for VMX support twice (Vitaly Kuznetsov) [1771575] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Stefano Garzarella) [1769904] - [net] vsock: Send reset control packet when socket is partially bound (Stefano Garzarella) [1769904] - [net] vsock/virtio: fix sock refcnt holding during the shutdown (Stefano Garzarella) [1769855] - [kernel] vsock/virtio: remove unused 'work' field from 'struct virtio_vsock_pkt' (Stefano Garzarella) [1769855] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 482 (Stefano Garzarella) [1769855] - [net] vsock/virtio: set SOCK_DONE on peer shutdown (Stefano Garzarella) [1769855] - [net] vsock/virtio: discard packets if credit is not respected (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: send a credit update when buffer size is changed (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: a better comment on credit update (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: fix locking in virtio_transport_inc_tx_pkt() (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: reduce credit update messages (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: change the maximum packet size allowed (Stefano Garzarella) [1679971] - [vhost] vsock: split packets to send using multiple buffers (Stefano Garzarella) [1679971] - [net] vsock/virtio: limit the memory used per-socket (Stefano Garzarella) [1769744] - [net] vsock/virtio: free packets during the socket release (Stefano Garzarella) [1769744] - [net] vsock: Fix a lockdep warning in __vsock_release() (Stefano Garzarella) [1769714] - [net] vsock: correct removal of socket from the list (Stefano Garzarella) [1769714] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Stefano Garzarella) [1769714] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Stefano Garzarella) [1769714] - [net] Fix ERROR:do not initialise statics to 0 in af_vsock.c (Stefano Garzarella) [1769714] - [net] vsock: bind to random port for VMADDR_PORT_ANY (Stefano Garzarella) [1769714] - [tools] tc-testing: added tests with cookie for conntrack TC action (Ivan Vecera) [1739606] - [net] cls_bpf: fix NULL deref on offload filter removal (Ivan Vecera) [1739606] - [tools] tc-testing: fixed two failing pedit tests (Ivan Vecera) [1739606] - [tools] tc-testing: implement tests for new fast_init action flag (Ivan Vecera) [1739606] - [net] sched: update action implementations to support flags (Ivan Vecera) [1739606] - [net] sched: use temporary variable for actions indexes (Ivan Vecera) [1739606] - [net] sched: extend TCA_ACT space with TCA_ACT_FLAGS (Ivan Vecera) [1739606] - [net] sched: modify stats helper functions to support regular stats (Ivan Vecera) [1739606] - [net] sched: don't expose action qstats to skb_tc_reinsert() (Ivan Vecera) [1739606] - [net] sched: extract qstats update code into functions (Ivan Vecera) [1739606] - [net] sched: extract bstats update code into function (Ivan Vecera) [1739606] - [net] sched: extract common action counters update code into function (Ivan Vecera) [1739606] - [tools] tc-testing: list required kernel options for act_ct action (Ivan Vecera) [1739606] - [net] fq_codel: do not include (Ivan Vecera) [1739606] - [net] sch_generic: Use pfifo_fast as fallback scheduler for CAN hardware (Ivan Vecera) [1739606] - [net] sched: taprio: fix -Wmissing-prototypes warnings (Ivan Vecera) [1739606] - [net] sched: act_police: re-use tcf_tm_dump() (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit TDC tests (Ivan Vecera) [1739606] - [net] sched: Avoid using yield() in a busy waiting loop (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit test cases (Ivan Vecera) [1739606] - [net] sched: etf: Fix ordering of packets with same txtime (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit test cases (Ivan Vecera) [1739606] - [net] taprio: Fix returning EINVAL when configuring without flags (Ivan Vecera) [1739606] - [net] net_sched: fix backward compatibility for TCA_ACT_KIND (Ivan Vecera) [1739606] - [net] net_sched: fix backward compatibility for TCA_KIND (Ivan Vecera) [1739606] - [net] sched: Set default of CONFIG_NET_TC_SKB_EXT to N (Ivan Vecera) [1739606] - [net] sch_netem: fix rcu splat in netem_enqueue() (Ivan Vecera) [1739606] - [net] net_sched: remove need_resched() from qdisc_run() (Ivan Vecera) [1739606] - [net] sched: cbs: Avoid division by zero when calculating the port rate (Ivan Vecera) [1739606] - [net] sched: taprio: Avoid division by zero on invalid link speed (Ivan Vecera) [1739606] - [net] sched: taprio: Fix potential integer overflow in taprio_set_picos_per_byte (Ivan Vecera) [1739606] - [net] sched: cbs: Fix not adding cbs instance to list (Ivan Vecera) [1739606] - [net] Fix Kconfig indentation (Ivan Vecera) [1739606] - [net] net_sched: add policy validation for action attributes (Ivan Vecera) [1739606] - [net] net_sched: add max len check for TCA_KIND (Ivan Vecera) [1739606] - [net] taprio: Add support for hardware offloading (Ivan Vecera) [1739606] - [net] sched: use get_dev() action API in flow_action infra (Ivan Vecera) [1739606] - [net] sched: take reference to psample group in flow_action infra (Ivan Vecera) [1739606] - [net] sched: extend flow_action_entry with destructor (Ivan Vecera) [1739606] - [net] sch_hhf: ensure quantum and hhf_non_hh_weight are non-zero (Ivan Vecera) [1739606] - [net] net_sched: check cops->tcf_block in tc_bind_tclass() (Ivan Vecera) [1739606] - [net] sched: fix reordering issues (Ivan Vecera) [1739606] - [net] net_sched: act_police: add 2 new attributes to support police 64bit rate and peakrate (Ivan Vecera) [1739606] - [net] openvswitch: Set OvS recirc_id from tc chain index (Ivan Vecera) [1739606] - [net] sk_buff: drop all skb extensions on free and skb scrubbing (Ivan Vecera) [1739606] - [net] minor cleanup in skb_ext_add() (Ivan Vecera) [1739606] - [include] net: drop the unused helper skb_ext_get() (Ivan Vecera) [1739606] - [net] fix possible user-after-free in skb_ext_add() (Ivan Vecera) [1739606] - [net] sk_buff: add skb extension infrastructure (Ivan Vecera) [1739606] - [net] sched: cbs: remove redundant assignment to variable port_rate (Ivan Vecera) [1739606] - [tools] tc-testing: don't hardcode 'ip' in nsPlugin.py (Ivan Vecera) [1739606] - [net] sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate (Ivan Vecera) [1739606] - [net] taprio: Set default link speed to 10 Mbps in taprio_set_picos_per_byte (Ivan Vecera) [1739606] - [net] taprio: Fix kernel panic in taprio_destroy (Ivan Vecera) [1739606] - [netdrv] mlx5e: Move local var definition into ifdef block (Ivan Vecera) [1739606] - [net] sched: cls_matchall: cleanup flow_action before deallocating (Ivan Vecera) [1739606] - [net] sched: act_vlan: implement stats_update callback (Ivan Vecera) [1739606] - [net] sched: act_sample: fix psample group handling on overwrite (Ivan Vecera) [1739606] - [net] sched: flower: don't take rtnl lock for cls hw offloads API (Ivan Vecera) [1739606] - [net] sched: copy tunnel info when setting flow_action entry->tunnel (Ivan Vecera) [1739606] - [net] sched: take reference to action dev before calling offloads (Ivan Vecera) [1739606] - [net] sched: take rtnl lock in tc_setup_flow_action() (Ivan Vecera) [1739606] - [net] sched: conditionally obtain rtnl lock in cls hw offloads API (Ivan Vecera) [1739606] - [net] sched: add API for registering unlocked offload block callbacks (Ivan Vecera) [1739606] - [net] sched: notify classifier on successful offload add/delete (Ivan Vecera) [1739606] - [net] sched: refactor block offloads counter usage (Ivan Vecera) [1739606] - [net] sched: change tcf block offload counter type to atomic_t (Ivan Vecera) [1739606] - [net] sched: protect block offload-related fields with rw_semaphore (Ivan Vecera) [1739606] - [net] net_sched: fix a NULL pointer deref in ipt action (Ivan Vecera) [1739606] - [tools] tc-testing: concurrency: wrap piped rule update commands (Ivan Vecera) [1739606] - [tools] tc-testing: use dedicated DUMMY interface name for dummy dev (Ivan Vecera) [1739606] - [net] flow_offload: convert block_ing_cb_list to regular list type (Ivan Vecera) [1739606] - [netdrv] sched: use major priority number as hardware priority (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for matchall filter (Ivan Vecera) [1739606] - [net] taprio: remove unused variable 'entry_list_policy' (Ivan Vecera) [1739606] - [tools] tc-testing: updated skbedit action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update skbedit action for batched events operations (Ivan Vecera) [1739606] - [net] fq_codel: remove set but not used variables 'prev_ecn_mark' and 'prev_drop_count' (Ivan Vecera) [1739606] - [net] flow_offload: support get multi-subsystem block (Ivan Vecera) [1739606] - [net] flow_offload: move tc indirect block to flow offload (Ivan Vecera) [1739606] - [net] cls_api: add flow_indr_block_call function (Ivan Vecera) [1739606] - [net] cls_api: remove the tcf_block cache (Ivan Vecera) [1739606] - [net] cls_api: modify the tc_indr_block_ing_cmd parameters. (Ivan Vecera) [1739606] - [net] sched: sch_taprio: fix memleak in error path for sched list parse (Ivan Vecera) [1739606] - [net] fq_codel: Kill useless per-flow dropped statistic (Ivan Vecera) [1739606] - [net] Increase fq_codel count in the bulk dropper (Ivan Vecera) [1739606] - [include] sched: sample: allow accessing psample_group with rtnl (Ivan Vecera) [1739606] - [tools] tc-testing: updated vlan action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update vlan action for batched events operations (Ivan Vecera) [1739606] - [tools] tc-testing: Clarify the use of tdc's -d option (Ivan Vecera) [1739606] - [net] sched: Fix a possible null-pointer dereference in dequeue_func() (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for [b|p]fifo qdisc (Ivan Vecera) [1739606] - [net] ife: error out when nla attributes are empty (Ivan Vecera) [1739606] - [net] sched: verify that q!=NULL before setting q->flags (Ivan Vecera) [1739606] - [net] net_sched: unset TCQ_F_CAN_BYPASS when adding filters (Ivan Vecera) [1739606] - [net] fix: taprio: Change type of txtime-delay parameter to u32 (Ivan Vecera) [1739606] - [tools] tc-tests: updated skbedit tests (Ivan Vecera) [1739606] - [include] pkt_sched: Include const.h (Ivan Vecera) [1739606] - [tools] tc-testing: introduce scapyPlugin for basic traffic (Ivan Vecera) [1739606] - [tools] tc-testing: Allow tdc plugins to see test case data (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for prio qdisc (Ivan Vecera) [1739606] - [tools] tc-testing: updated mirred action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update mirred action for batched events operations (Ivan Vecera) [1739606] - [net] sched: em_ipt: add support for addrtype matching (Ivan Vecera) [1739606] - [net] sched: em_ipt: keep the user-specified nfproto and dump it (Ivan Vecera) [1739606] - [net] sched: em_ipt: set the family based on the packet if it's unspecified (Ivan Vecera) [1739606] - [net] sched: em_ipt: match only on ip/ipv6 traffic (Ivan Vecera) [1739606] - [net] taprio: Adjust timestamps for TCP packets (Ivan Vecera) [1739606] - [net] taprio: make clock reference conversions easier (Ivan Vecera) [1739606] - [net] taprio: Add support for txtime-assist mode (Ivan Vecera) [1739606] - [net] taprio: Remove inline directive (Ivan Vecera) [1739606] - [net] taprio: calculate cycle_time when schedule is installed (Ivan Vecera) [1739606] - [net] etf: Add skip_sock_check (Ivan Vecera) [1739606] - [include] etf: Don't use BIT() in UAPI headers. (Ivan Vecera) [1739606] - [tools] tc-testing: add ingress qdisc tests (Ivan Vecera) [1739606] - [tools] tc-testing: Restore original behaviour for namespaces in tdc (Ivan Vecera) [1739606] - [include] net: sched: act_ctinfo: tidy UAPI definition (Ivan Vecera) [1739606] - [include] act_ctinfo: Don't use BIT() in UAPI headers. (Ivan Vecera) [1739606] - [net] sched: cls_matchall: allow to delete filter (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: fix policy validation (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: fix action creation (Ivan Vecera) [1739606] - [tools] tc-tests: updated skbedit tests (Ivan Vecera) [1739606] - [tools] tc-tests: added path to ip command in tdc (Ivan Vecera) [1739606] - [net] sched: remove NET_CLS_IND config option (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: use extack error reporting (Ivan Vecera) [1739606] - [net] sched: ingress: set 'unlocked' flag for clsact Qdisc ops (Ivan Vecera) [1739606] - [net] sched: ingress: set 'unlocked' flag for Qdisc ops (Ivan Vecera) [1739606] - [tools] tc-tests: updated fw with bind actions by reference use cases (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: minor size optimisation (Ivan Vecera) [1739606] - [net] flow_offload: use struct_size() in kzalloc() (Ivan Vecera) [1739606] - [net] sched: don't use tc_action->order during action dump (Ivan Vecera) [1739606] - [net] sch_htb: redefine htb qdisc overlimits (Ivan Vecera) [1739606] - [tools] selftests: tc-testing: Add pedit tests (Ivan Vecera) [1739606] - [net] sched: add ingress mirred action to hardware IR (Ivan Vecera) [1757520] - [include] net: tc_act: add helpers to detect ingress mirred actions (Ivan Vecera) [1757520] - [net] sched: add skbedit of ptype action to hardware IR (Ivan Vecera) [1757520] - [include] net: tc_act: add skbedit_ptype helper functions (Ivan Vecera) [1757520] - [net] openvswitch: load and reference the NAT helper. (Flavio Leitner) [1752970] - [net] openvswitch: load NAT helper (Flavio Leitner) [1752970] - [net] netfilter: nf_nat: register NAT helpers. (Flavio Leitner) [1752970] - [net] netfilter: add API to manage NAT helpers. (Flavio Leitner) [1752970] - [net] netfilter: use macros to create module aliases. (Flavio Leitner) [1752970] - [net] xfrm: remove a duplicated assignment (Sabrina Dubroca) [1760002] - [net] xfrm: remove empty xfrmi_init_net (Sabrina Dubroca) [1760002] - [net] xfrm: remove unneeded export_symbols (Sabrina Dubroca) [1760002] - [include] xfrm: clean an indentation issue, remove a space (Sabrina Dubroca) [1760002] - [net] xfrm6: remove BUG_ON from xfrm6_dst_ifdown (Sabrina Dubroca) [1760002] - [net] xfrm: policy: add missing indentation (Sabrina Dubroca) [1760002] - [net] xfrm: Fix bucket count reported to userspace (Sabrina Dubroca) [1760002] - [net] xfrm: use complete IPv6 addresses for hash (Sabrina Dubroca) [1760002] - [net] xfrm: use correct size to initialise sp->ovec (Sabrina Dubroca) [1760002] - [net] xfrm: allow driver to quietly refuse offload (Sabrina Dubroca) [1760002] - [net] esp: remove redundant define esph (Sabrina Dubroca) [1760002] - [net] ip6_vti: simplify stats handling in vti6_xmit (Sabrina Dubroca) [1760002] - [net] xfrm: fix 'passing zero to ERR_PTR()' warning (Sabrina Dubroca) [1760002] - [net] xfrm: remove blank lines at EOF (Sabrina Dubroca) [1760002] - [net] xfrm: don't check offload_handle for nonzero (Sabrina Dubroca) [1760002] - [net] ipv6: xfrm: use 64-bit timestamps (Sabrina Dubroca) [1760002] - [net] devlink: Introduce PCI VF port flavour and port attribute (Petr Oros) [1761495] - [net] devlink: Introduce PCI PF port flavour and port attribute (Petr Oros) [1761495] - [net] devlink: Return physical port fields only for applicable port flavours (Petr Oros) [1761495] - [net] devlink: Refactor physical port attributes (Petr Oros) [1761495] - [net] ipv4: fix race condition between route lookup and invalidation (Guillaume Nault) [1765639] - [net] add {READ|WRITE}_ONCE() annotations on ->rskq_accept_head (Guillaume Nault) [1765639] - [net] ipv4/icmp: fix rt dst dev null pointer dereference (Guillaume Nault) [1765639] - [net] ipip: validate header length in ipip_tunnel_xmit (Guillaume Nault) [1765639] - [net] ipv4: Use return value of inet_iif() for __raw_v4_lookup in the while loop (Guillaume Nault) [1765639] - [net] ipv4: Fix raw socket lookup for local traffic (Guillaume Nault) [1765639] - [net] ipv4: Return error for RTA_VIA attribute (Guillaume Nault) [1765639] - [net] ipmr: fix unresolved entry dumps (Guillaume Nault) [1765639] - [net] ipvs: don't ignore errors in case refcounting ip_vs module fails (Davide Caratti) [1687094] - [net] ipvs: fix tinfo memory leak in start_sync_thread (Davide Caratti) [1687094] - [net] tcp: fix a possible lockdep splat in tcp_done() (Marcelo Leitner) [1764654] - [net] tcp: add rcu protection around tp->fastopen_rsk (Marcelo Leitner) [1764654] - [net] tcp: annotate lockless access to tcp_memory_pressure (Marcelo Leitner) [1764654] - [net] tcp: fix tcp_ecn_withdraw_cwr() to clear TCP_ECN_QUEUE_CWR (Marcelo Leitner) [1764654] - [net] tcp: inherit timestamp on mtu probe (Marcelo Leitner) [1764654] - [net] tcp: remove empty skb from write queue in error cases (Marcelo Leitner) [1764654] - [net] tcp: get rid of tcp_check_send_head() (Marcelo Leitner) [1764654] - [net] tcp: make sure EPOLLOUT wont be missed (Marcelo Leitner) [1764654] - [net] ipv4: set the tcp_min_rtt_wlen range from 0 to one day (Marcelo Leitner) [1764654] - [net] net-tcp: /proc/sys/net/ipv4/tcp_probe_interval is a u32 not int (Marcelo Leitner) [1764654] - [net] tcp: fix a race in inet_diag_dump_icsk() (Marcelo Leitner) [1764654] - [net] netfilter: nft_meta: Add NFT_META_I/OIFKIND meta type (Florian Westphal) [1763657] - [net] netfilter: nft_xfrm: use state family, not hook one (Florian Westphal) [1763654] - [net] netfilter: nf_tables: add xfrm expression (Florian Westphal) [1763654] - [net] netfilter: nf_tables: rt: allow checking if dst has xfrm attached (Florian Westphal) [1763654] - [netdrv] mlx5e: Fix unnecessary flow_block_cb_is_busy call (Ivan Vecera) [1737890] - [netdrv] nfp: flower: verify that block cb is not busy before binding (Ivan Vecera) [1737890] - [netdrv] net/mlx5e: Provide cb_list pointer when setting up tc block on rep (Ivan Vecera) [1737890] - [net] sched: Fix NULL-pointer dereference in tc_indr_block_ing_cmd() (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block structure and use it (Ivan Vecera) [1737890] - [net] flow_offload: rename tc_setup_cb_t to flow_setup_cb_t (Ivan Vecera) [1737890] - [include] flow_offload: include linux/kernel.h from flow_offload.h (Ivan Vecera) [1737890] - [net] flow_offload: remove netns parameter from flow_block_cb_alloc() (Ivan Vecera) [1737890] - [net] openvswitch: rename flow_stats to sw_flow_stats (Ivan Vecera) [1737890] - [netdrv] mlx5e: Fix unused variable warning when CONFIG_MLX5_ESWITCH is off (Ivan Vecera) [1737890] - [netdrv] net: flow_offload: rename tc_cls_flower_offload to flow_cls_offload (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_is_busy() and use it (Ivan Vecera) [1737890] - [net] sched: remove tcf block API (Ivan Vecera) [1737890] - [include] sched: use new symbol for TC kABI version (Ivan Vecera) [1737890] - [netdrv] use flow block API (Ivan Vecera) [1737890] - [net] sched: use flow block API (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_{priv, incref, decref}() (Ivan Vecera) [1737890] - [net] flow_offload: add list handling functions (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_alloc() and flow_block_cb_free() (Ivan Vecera) [1737890] - [net] flow_offload: rename TCF_BLOCK_BINDER_TYPE_* to FLOW_BLOCK_BINDER_TYPE_* (Ivan Vecera) [1737890] - [net] flow_offload: rename TC_BLOCK_{UN}BIND to FLOW_BLOCK_{UN}BIND (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_setup_simple() (Ivan Vecera) [1737890] - [net] openvswitch: free vport unless register_netdevice() succeeds (Stefano Brivio) [1765580] - [net] openvswitch: Clear the L4 portion of the key for "later" fragments. (Stefano Brivio) [1765580] - [net] openvswitch: Properly set L4 keys on "later" IP fragments (Stefano Brivio) [1765580] - [net] openvswitch: Print error when ovs_execute_actions() fails (Stefano Brivio) [1765580] - [net] openvswitch: do not free vport if register_netdevice() is failed. (Stefano Brivio) [1765580] - [net] xfrm: policy: remove pcpu policy cache (Xin Long) [1743519] - [net] netem: correct the parent's backlog when corrupted packet was dropped (Davide Caratti) [1764553] - [net] netem: fix error path for corrupted GSO frames (Davide Caratti) [1764553] - [net] avoid potential infinite loop in tc_ctl_action() (Davide Caratti) [1764553] - [net] act_mirred: Fix mirred_init_module error handling (Davide Caratti) [1764553] - [net] sch_dsmark: fix potential NULL deref in dsmark_init() (Davide Caratti) [1764553] - [net] sch_cbq: validate TCA_CBQ_WRROPT to avoid crash (Davide Caratti) [1764553] - [net] sched: sch_sfb: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: multiq: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: sch_htb: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: fix possible crash in tcf_action_destroy() (Davide Caratti) [1764553] - [net] sch_netem: fix a divide by zero in tabledist() (Davide Caratti) [1764553] - [net] sched: act_sample: don't push mac header on ip6gre ingress (Davide Caratti) [1764553] - [net] net_sched: let qdisc_put() accept NULL pointer (Davide Caratti) [1764553] - [net] tcp: adjust rto_base in retransmits_timed_out() (Marcelo Leitner) [1756775] - [net] tcp: better handle TCP_USER_TIMEOUT in SYN_SENT state (Marcelo Leitner) [1756775] - [include] netlink: use 48 byte ctx instead of 6 signed longs for callback (Petr Oros) [1751273] - [net] rtnetlink: skip metrics loop for dst_default_metrics (Petr Oros) [1751273] - [include] netlink: Add field to skip in-kernel notifications (Petr Oros) [1751273] - [include] netlink: Document all fields of 'struct nl_info' (Petr Oros) [1751273] - [net] ipoib: show VF broadcast address (Petr Oros) [1751273] - [net] remove empty netlink_tap_exit_net (Petr Oros) [1751273] - [net] netlink: make netlink_walk_start() void return type (Petr Oros) [1751273] - [include] net: nexthop uapi (Petr Oros) [1751273] - [net] Treat sock->sk_drops as an unsigned int when printing (Petr Oros) [1751273] - [net] fix two coding style issues (Petr Oros) [1751273] - [net] ipset: drop ipset_nest_start() and ipset_nest_end() (Petr Oros) [1751273] - [net] netlink: make nla_nest_start() add NLA_F_NESTED flag (Petr Oros) [1751273] - [net] netfilter: nf_tables: fix a missing check of nla_put_failure (Petr Oros) [1751273] - [net] ncsi: fix a missing check for nla_nest_start (Petr Oros) [1751273] - [net] genetlink: use idr_alloc_cyclic for family->id assignment (Petr Oros) [1751273] - [net] netlink: Check address length before reading groups field (Petr Oros) [1751273] - [net] core: Fix rtnetlink kernel-doc headers (Petr Oros) [1751273] - [net] rhashtable: Remove obsolete rhashtable_walk_init function (Petr Oros) [1751273] - [net] netfilter: nf_tables: use rhashtable_walk_enter instead of rhashtable_walk_init (Petr Oros) [1751273] - [net] netlink: reduce NLA_POLICY_NESTED{, _ARRAY} arguments (Petr Oros) [1751273] - [net] netlink: rename NETLINK_DUMP_STRICT_CHK -> NETLINK_GET_STRICT_CHK (Petr Oros) [1751273] - [include] netlink: replace __NLA_ENSURE implementation (Petr Oros) [1751273] - [include] netlink: fix typo in nla_parse_nested() comment (Petr Oros) [1751273] - [net] netlink: remove hash::nelems check in netlink_insert (Petr Oros) [1751273] - [net] netlink: Make groups check less stupid in netlink_bind() (Petr Oros) [1751273] - [include] genetlink: constify genl_err_attr() argument (Petr Oros) [1751273] - [net] netlink: do not store start function in netlink_cb (Petr Oros) [1751273] - [include] linux: Add skb_frag_t page_offset accessors (Petr Oros) [1757515] - [include] net: add missing documentation in linux/skbuff.h (Petr Oros) [1757515] - [net] l2tp: Fix possible NULL pointer dereference (Stefano Brivio) [1764185] - [net] l2ip: fix possible use-after-free (Stefano Brivio) [1764185] - [net] l2tp: use rcu_dereference_sk_user_data() in l2tp_udp_encap_recv() (Stefano Brivio) [1764185] - [net] l2tp: fix infoleak in l2tp_ip6_recvmsg() (Stefano Brivio) [1764185] - [net] l2tp: copy 4 more bytes to linear part if necessary (Stefano Brivio) [1764185] - [net] l2tp: fix reading optional fields of L2TPv3 (Stefano Brivio) [1764185] - [net] l2tp: remove ->recv_payload_hook (Stefano Brivio) [1764185] - [net] l2tp: don't export l2tp_session_queue_purge() (Stefano Brivio) [1764185] - [net] l2tp: remove .show from struct l2tp_tunnel (Stefano Brivio) [1764185] - [netdrv] vxlan: do not destroy fdb if register_netdevice() is failed (Stefano Brivio) [1763793] - [net] ip6erspan: remove the incorrect mtu limit for ip6erspan (Stefano Brivio) [1763286] - [net] ipv6: Handle missing host route in __ipv6_ifa_notify (Stefano Brivio) [1763286] - [net] ipv6: drop incoming packets having a v4mapped source address (Stefano Brivio) [1763286] - [net] ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit (Stefano Brivio) [1763286] - [net] mld: fix memory leak in mld_del_delrec() (Stefano Brivio) [1763286] - [net] ipv6: rt6_check should return NULL if 'from' is NULL (Stefano Brivio) [1763286] - [net] ipv6_sockglue: Fix a missing-check bug in ip6_ra_control() (Stefano Brivio) [1763286] - [net] ipv6_gre: Fix GRO to work on IPv6 over GRE tap (Stefano Brivio) [1763286] - [net] ipv4: Return -ENETUNREACH if we can't create route but saddr is valid (Stefano Brivio) [1686686] - [net] netfilter: nft_connlimit: disable bh on garbage collection (Florian Westphal) [1762844] - [net] netfilter: ebtables: Fix argument order to ADD_COUNTER (Florian Westphal) [1762844] - [net] netfilter: ebtables: CONFIG_COMPAT: reject trailing data after last rule (Florian Westphal) [1762844] - [net] netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON (Florian Westphal) [1762844] - [net] netfilter: bridge: set skb transport_header before entering NF_INET_PRE_ROUTING (Florian Westphal) [1762844] - [net] netfilter: ebtables: also count base chain policies (Florian Westphal) [1762844] - [net] netfilter: ebtables: compat: un-break 32bit setsockopt when no rules are present (Florian Westphal) [1762844] - [net] sctp: change sctp_prot .no_autobind with true (Xin Long) [1762625] - [net] sctp: destroy bucket if failed to bind addr (Xin Long) [1762625] - [net] sctp: remove redundant assignment when call sctp_get_port_local (Xin Long) [1762625] - [net] sctp: change return type of sctp_get_port_local (Xin Long) [1762625] - [net] sctp: Fix the link time qualifier of 'sctp_ctrlsock_exit()' (Xin Long) [1762625] - [net] sctp: fix the missing put_user when dumping transport thresholds (Xin Long) [1762625] - [net] sctp: use transport pf_retrans in sctp_do_8_2_transport_strike (Xin Long) [1762625] - [net] sctp: allow users to set ep ecn flag by sockopt (Xin Long) [1762625] - [net] sctp: allow users to set netns ecn flag with sysctl (Xin Long) [1762625] - [net] sctp: make ecn flag per netns and endpoint (Xin Long) [1762625] - [net] sctp: remove net sctp.x_enable working as a global switch (Xin Long) [1762625] - [net] sctp: add SCTP_AUTH_SUPPORTED sockopt (Xin Long) [1762625] - [net] sctp: add sctp_auth_init and sctp_auth_free (Xin Long) [1762625] - [net] sctp: use ep and asoc auth_enable properly (Xin Long) [1762625] - [net] sctp: add SCTP_ASCONF_SUPPORTED sockopt (Xin Long) [1762625] - [net] sctp: check asoc peer.asconf_capable before processing asconf (Xin Long) [1762625] - [net] sctp: not set peer.asconf_capable in sctp_association_init (Xin Long) [1762625] - [net] sctp: add asconf_enable in struct sctp_endpoint (Xin Long) [1762625] - [net] sctp: fix memleak in sctp_send_reset_streams (Xin Long) [1762625] - [net] sctp: fix the transport error_count check (Xin Long) [1762625] - [net] sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions (Ivan Vecera) [1737820] - [net] avoid errors when trying to pop MLPS header on non-MPLS packets (Ivan Vecera) [1737820] - [net] netfilter: connlabels: prefer static lock initialiser (Ivan Vecera) [1737820] - [net] sched: include mpls actions in hardware intermediate representation (Ivan Vecera) [1737820] - [net] sched: Make NET_ACT_CT depends on NF_NAT (Ivan Vecera) [1737820] - [tools] tc-tests: Add tc action ct tests (Ivan Vecera) [1737820] - [net] sched: cls_flower: Add matching on conntrack info (Ivan Vecera) [1737820] - [net] flow_dissector: add connection tracking dissection (Ivan Vecera) [1737820] - [net] sched: Introduce action ct (Ivan Vecera) [1737820] - [tools] tc-tests: actions: add MPLS tests (Ivan Vecera) [1737820] - [net] sched: add mpls manipulation actions to TC (Ivan Vecera) [1737820] - [net] core: add MPLS update core helper and use in OvS (Ivan Vecera) [1737820] - [net] core: move pop MPLS functionality from OvS to core helper (Ivan Vecera) [1737820] - [net] core: move push MPLS functionality from OvS to core helper (Ivan Vecera) [1737820] - [net] sched: Introduce act_ctinfo action (Ivan Vecera) [1737820] - [netdrv] mlx5e: Allow dissector meta key in tc flower (Ivan Vecera) [1762861] - [tools] selftests: tc: add ingress device matching support (Ivan Vecera) [1762861] - [net] flow_offload: implement support for meta key (Ivan Vecera) [1762861] - [net] sched: cls_flower: use flow_dissector for ingress ifindex (Ivan Vecera) [1762861] - [net] flow_dissector: add support for ingress ifindex dissection (Ivan Vecera) [1762861] - [net] udp: only do GSO if # of segs > 1 (Guillaume Nault) [1762357] - [net] udp: fix gso_segs calculations (Guillaume Nault) [1762357] - [tools] selftests: rtnetlink: add small test case with 'promote_secondaries' enabled (Petr Oros) [1759177] - [net] ipv4: fix infinite loop on secondary addr promotion (Petr Oros) [1759177] - [tools] selftests: rtnetlink: add addresses with fixed life time (Petr Oros) [1759177] - [net] ipv4: remove erroneous advancement of list pointer (Petr Oros) [1759177] - [net] ipv4: fix rcu lockdep splat due to wrong annotation (Petr Oros) [1759177] - [net] ipv4: provide __rcu annotation for ifa_list (Petr Oros) [1759177] - [drivers] use in_dev_for_each_ifa_rtnl/rcu (Petr Oros) [1759177] - [net] use new in_dev_ifa iterators (Petr Oros) [1759177] - [net] netfilter: use in_dev_for_each_ifa_rcu (Petr Oros) [1759177] - [net] devinet: use in_dev_for_each_ifa_rcu in more places (Petr Oros) [1759177] - [net] inetdevice: provide replacement iterators for in_ifaddr walk (Petr Oros) [1759177] - [fs] afs: do not send list of client addresses (Petr Oros) [1759177] - [net] sctp: add SCTP_SEND_FAILED_EVENT event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_MADE_PRIM event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_REMOVED event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_ADDED event (Xin Long) [1751129] - [netdrv] team: call RCU read lock when walking the port_list (Hangbin Liu) [1724896] - [net] packet: fix race in tpacket_snd() (Davide Caratti) [1760276] - [net] packet: fix memory leak in packet_set_ring() (Davide Caratti) [1760276] - [net] packet: unconditionally free po->rollover (Davide Caratti) [1760276] - [net] llc: fix skb leak in llc_build_and_send_ui_pkt() (Davide Caratti) [1760276] - [net] af_key: fix leaks in key_pol_get_resp and dump_sp. (Davide Caratti) [1760276] - [net] packet: in recvmsg msg_name return at least sizeof sockaddr_ll (Davide Caratti) [1760276] - [net] packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec (Davide Caratti) [1760276] - [net] packet: fix 4gb buffer limit due to overflow check (Davide Caratti) [1760276] - [net] llc: do not use sk_eat_skb() (Davide Caratti) [1760276] - [fs] proc: fix /proc/net/* after setns(2) (Davide Caratti) [1760276] - [net] Unpublish sk from sk_reuseport_cb before call_rcu (Paolo Abeni) [1760409] - [net] Fix null de-reference of device refcount (Paolo Abeni) [1760409] - [include] ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled (Paolo Abeni) [1760409] - [net] neighbor: Call __ipv4_neigh_lookup_noref in neigh_xmit (Paolo Abeni) [1760409] - [net] ebpf: record usage of flow dissector (Jiri Benc) [1749812] - [tools] selftests/bpf: More compatible nc options in test_lwt_ip_encap (Jiri Benc) [1749812] - [tools] selftests/bpf: Set rp_filter in test_flow_dissector (Jiri Benc) [1749812] - [net] bpf: lwtunnel: fix reroute supplying invalid dst (Jiri Benc) [1749812] - [kernel] rh_features: convert to atomic allocation (Jiri Benc) [1749812] - [net] xsk: lock the control mutex in sock_diag interface (Jiri Benc) [1749812] - [documentation] networking: fix af_xdp.rst Sphinx warnings (Jiri Benc) [1749812] - [documentation] flow_dissector: rst'ify documentation (Jiri Benc) [1749812] - [documentation] flow_dissector: document BPF flow dissector environment (Jiri Benc) [1749812] - [net] xsk: fix umem memory leak on cleanup (Jiri Benc) [1749812] - [net] xsk: fix to reject invalid options in Tx descriptor (Jiri Benc) [1749812] - [net] xsk: fix to reject invalid flags in xsk_bind (Jiri Benc) [1749812] - [net] xsk: fix potential crash in xsk_diag_put_umem() (Jiri Benc) [1749812] - [net] bpfilter: re-add header search paths to tools include to fix build error (Jiri Benc) [1749812] - [documentation] xsk: add FAQ to facilitate for first time users (Jiri Benc) [1749812] - [net] bpf/test_run: fix unkillable BPF_PROG_TEST_RUN for flow dissector (Jiri Benc) [1749812] - [tools] sync uapi/linux/if_link.h header (Jiri Benc) [1749812] - [net] xdp: allow generic and driver XDP on one interface (Jiri Benc) [1749812] - [net] xdp: Provide extack messages when prog attachment failed (Jiri Benc) [1749812] - [net] bpfilter: remove extra header search paths for bpfilter_umh (Jiri Benc) [1749812] - [include] bpf: fix missing prototype warnings (Jiri Benc) [1749812] - [net] xsk: add sock_diag interface for AF_XDP (Jiri Benc) [1749812] - [net] xsk: add id to umem (Jiri Benc) [1749812] - [net] xsk: track AF_XDP sockets on a per-netns list (Jiri Benc) [1749812] - [include] redhat: rh_kabi: introduce RH_KABI_EXTEND_WITH_SIZE (Jiri Benc) [1749812] - [net] tcp: Avoid TCP syncookie rejected by SO_REUSEPORT socket (Jiri Benc) [1749812] - [net] tcp: use monotonic timestamps for PAWS (Jiri Benc) [1749812] - [net] tcp: remove one indentation level in tcp_create_openreq_child (Jiri Benc) [1749812] - [netdrv] ppp: Fix memory leak in ppp_write (Guillaume Nault) [1759312] - [netdrv] ppp: deflate: Fix possible crash in deflate_init (Guillaume Nault) [1759312] - [netdrv] pppoe: fix reception of frames with no mac header (Guillaume Nault) [1759312] - [net] tcp_bbr: fix quantization code to not raise cwnd if not probing bandwidth (Florian Westphal) [1759208] - [net] tcp_bbr: refactor bbr_target_cwnd() for general inflight provisioning (Florian Westphal) [1759208] - [net] tcp_bbr: centralize code to set gains (Florian Westphal) [1759208] - [net] tcp_bbr: apply PROBE_RTT cwnd cap even if acked==0 (Florian Westphal) [1759208] - [net] tcp_bbr: in restart from idle, see if we should exit PROBE_RTT (Florian Westphal) [1759208] - [net] tcp_bbr: add bbr_check_probe_rtt_done() helper (Florian Westphal) [1759208] - [net] xfrm/xfrm_policy: fix dst dev null pointer dereference in collect_md mode (Hangbin Liu) [1734589] - [tools] selftests: forwarding: gre_multipath: Fix flower filters (Hangbin Liu) [1756832] - [tools] selftests: forwarding: gre_multipath: Enable IPv4 forwarding (Hangbin Liu) [1756832] - [tools] set sysctl bc_forwarding properly in router_broadcast.sh (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: enable forwarding before ipv4 from/iif test (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: use pre-defined DEV_ADDR (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: fix local IPv4 address typo (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: print the result and return 1 if any tests failed (Hangbin Liu) [1756832] - [tools] selftests: fib_tests: Fix 'Command line is not complete' errors (Hangbin Liu) [1756832] - [tools] selftests: Update fib_tests to handle missing ping6 (Hangbin Liu) [1756832] - [tools] fib_tests: Add tests for metrics on routes (Hangbin Liu) [1756832] - [tools] selftests: udpgso_bench.sh explicitly requires bash (Hangbin Liu) [1756832] - [tools] selftests/net: add tls to .gitignore (Hangbin Liu) [1756832] - [net] ipv4: avoid mixed n_redirects and rate_tokens usage (Paolo Abeni) [1753092] - [lib] netlink: set bad attribute also on maxtype check (Petr Oros) [1757776] - [lib] netlink: add validation of NLA_F_NESTED flag (Petr Oros) [1757776] - [net] ila: Fix rhashtable walker list corruption (Petr Oros) [1757776] - [lib] ila: make lockdep happy again (Petr Oros) [1757776] - [net] genetlink: do not validate dump requests if there is no policy (Petr Oros) [1757776] - [include] netlink: Fix nlmsg_parse as a wrapper for strict message parsing (Petr Oros) [1757776] - [net] tipc: fix missing indentation in source code (Petr Oros) [1757776] - [net] genetlink: optionally validate strictly/dumps (Petr Oros) [1757776] - [lib] netlink: add strict parsing for future attributes (Petr Oros) [1757776] - [include] netlink: re-add parse/validate functions in strict mode (Petr Oros) [1757776] - [net] netlink: make validation more configurable for future strictness (Petr Oros) [1757776] - [lib] netlink: add NLA_MIN_LEN (Petr Oros) [1757776] - [net] genetlink: make policy common to family (Petr Oros) [1757776] - [net] ila: Flush netlink command to clear xlat table (Petr Oros) [1757776] - [net] ila: Create main ila source file (Petr Oros) [1757776] - [net] ila: Call library function alloc_bucket_locks (Petr Oros) [1757776] - [net] ila: Fix use of rhashtable walk in ila_xlat.c (Petr Oros) [1757776] - [net] rtnetlink: fix rtnl_valid_stats_req() nlmsg_len check (Petr Oros) [1757750] - [net] mpls: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] mpls: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: addrlabel: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: addr: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: ipmr: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] namespace: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] rtnetlink: ifinfo: perform strict checks also for doit handler (Petr Oros) [1757750] - [net] rtnetlink: stats: reject requests for unknown stats (Petr Oros) [1757750] - [net] rtnetlink: stats: validate attributes in get as well as dumps (Petr Oros) [1757750] - [net] netlink: add helper to retrieve NETLINK_F_STRICT_CHK (Petr Oros) [1757750] - [include] linux/netlink.h: drop unnecessary extern prefix (Petr Oros) [1757750] - [net] rtnetlink: avoid frame size warning in rtnl_newlink() (Petr Oros) [1757750] - [net] rtnetlink: remove a level of indentation in rtnl_newlink() (Petr Oros) [1757750] - [net] rtnetlink: Add more extack messages to rtnl_newlink (Petr Oros) [1757750] - [net] netfilter: nf_tables: allow lookups in dynamic sets (Florian Westphal) [1759074] - [net] netfilter: nf_tables: check the result of dereferencing base_chain->stats (Florian Westphal) [1759074] - [net] revert "netfilter: nft_hash: add map lookups for hashing operations" (Florian Westphal) [1759074] - [net] netfilter: nf_tables: don't prevent event handler from device cleanup on netns exit (Florian Westphal) [1759074] - [net] netfilter: nft_ct: enable conntrack for helpers (Florian Westphal) [1759074] - [net] netfilter: conntrack: always store window size un-scaled (Florian Westphal) [1758668] - [net] netfilter: synproxy: fix rst sequence number mismatch (Florian Westphal) [1758668] - [net] netfilter: synproxy: fix erroneous tcp mss option (Florian Westphal) [1758668] - [net] netfilter: nfnetlink: avoid deadlock due to synchronous request_module (Florian Westphal) [1758668] - [net] netfilter: nf_queue: fix reinject verdict handling (Florian Westphal) [1758668] - [net] netfilter: conntrack: Use consistent ct id hash calculation (Florian Westphal) [1758668] - [net] netfilter: ctnetlink: don't use conntrack/expect object addresses as id (Florian Westphal) [1758668] - [net] netfilter: bridge: Don't sabotage nf_hook calls for an l3mdev slave (Florian Westphal) [1758668] - [net] netfilter: avoid using skb->nf_bridge directly (Florian Westphal) [1758668] - [net] netfilter: nat: can't use dst_hold on noref dst (Florian Westphal) [1758668] - [net] netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev (Florian Westphal) [1758668] - [net] netfilter: conntrack: fix removal of conntrack entries when l4tracker is removed (Florian Westphal) [1758668] - [net] netfilter: xt_hashlimit: fix a possible memory leak in htable_create() (Florian Westphal) [1758668] - [net] netfilter: xt_TEE: add missing code to get interface index in checkentry. (Florian Westphal) [1758668] - [net] netfilter: xt_TEE: fix wrong interface selection (Florian Westphal) [1758668] - [net] netfilter: xtables: avoid BUG_ON (Florian Westphal) [1758668] - [net] netfilter: nat: limit port clash resolution attempts (Florian Westphal) [1758646] - [net] netfilter: nat: remove l4 protocol port rovers (Florian Westphal) [1758646] - [net] neighbour: remove stray semicolon (Ivan Vecera) [1757459] - [net] neighbor: Initialize protocol when new pneigh_entry are created (Ivan Vecera) [1757459] - [net] neighbour: register rtnl doit handler (Ivan Vecera) [1757459] - [net] neighbor: Add protocol attribute (Ivan Vecera) [1757459] - [net] neighbor: Add extack messages for add and delete commands (Ivan Vecera) [1757459] - [net] rtnetlink: address is mandatory for rtnl_fdb_get (Ivan Vecera) [1757105] - [netdrv] vxlan: support for ndo_fdb_get (Ivan Vecera) [1757105] - [net] rtnetlink: support for fdb get (Ivan Vecera) [1757105] - [net] bridge: support for ndo_fdb_get (Ivan Vecera) [1757105] - [net] ipmr: remove hard code cache_resolve_queue_len limit (Hangbin Liu) [1631022] - [net] ipv6/addrconf: allow adding multicast addr if IFA_F_MCAUTOJOIN is set (Hangbin Liu) [1740961] - [net] xfrm interface: fix management of phydev (Xin Long) [1727240] - [net] xfrm interface: fix list corruption for x-netns (Xin Long) [1727240] - [net] xfrm interface: ifname may be wrong in logs (Xin Long) [1727240] - [net] xfrm interface: avoid corruption on changelink (Xin Long) [1727240] - [net] netlink: add validation function to policy (Ivan Vecera) [1753333] - [net] netlink: add attribute range validation to policy (Ivan Vecera) [1753333] - [net] sched: police: allow accessing police->params with rtnl (Ivan Vecera) [1731416] - [net] sched: remove block pointer from common offload structure (Ivan Vecera) [1731416] - [net] nfp: flower: add qos offload install and remove functionality. (Ivan Vecera) [1731416] - [net] nfp: flower: add qos offload framework (Ivan Vecera) [1731416] - [net] sched: add block pointer to tc_cls_common_offload structure (Ivan Vecera) [1731416] - [net] sched: allow stats updates from offloaded police actions (Ivan Vecera) [1731416] - [net] sched: extend matchall offload for hardware statistics (Ivan Vecera) [1731416] - [net] sched: add police action to the hardware intermediate representation (Ivan Vecera) [1731416] - [net] sched: move police action structures to header (Ivan Vecera) [1731416] - [net] sched: remove unused functions for matchall offload (Ivan Vecera) [1731416] - [net] dsa: use intermediate representation for matchall offload (Ivan Vecera) [1731416] - [netdrv] mlxsw: use intermediate representation for matchall offload (Ivan Vecera) [1731416] - [net] tipc: disallow enabling of loopback interface bearer (Jon Maloy) [1717305] - [net] tipc: add NULL pointer check before calling kfree_rcu (Jon Maloy) [1747392] - [net] xsk: Return the whole xdp_desc from xsk_umem_consume_tx (Ivan Vecera) [1748497] - [net] devlink: add warning for ndo_get_port_parent_id set when not needed (Petr Oros) [1737133] - [net] devlink: introduce devlink_compat_switch_id_get() helper (Petr Oros) [1737133] - [net] devlink: extend port attrs for switch ID (Petr Oros) [1737133] - [net] devlink: convert devlink_port_attrs bools to bits (Petr Oros) [1737133] - [net] devlink: add warning for ndo_get_phys_port_name set when not needed (Petr Oros) [1737133] - [netdrv] nfp: move devlink port type set after netdev registration (Petr Oros) [1737133] - [netdrv] dsa: move devlink_port_attrs_set() call before register (Petr Oros) [1737133] - [netdrv] mlxsw: Move devlink_port_attrs_set() call before register (Petr Oros) [1737133] - [netdrv] bnxt: set devlink port type after registration (Petr Oros) [1737133] - [netdrv] bnxt: call devlink_port_type_eth_set() before port register (Petr Oros) [1737133] - [netdrv] bnxt: set devlink port attrs properly (Petr Oros) [1737133] - [netdrv] dsa: add missing net/devlink.h include (Petr Oros) [1737133] - [netdrv] bnxt: add missing net/devlink.h include (Petr Oros) [1737133] - [netdrv] revert "devlink: Add a generic wake_on_lan port parameter" (Petr Oros) [1737133] - [netdrv] bnxt_en: Add bnxt_en initial port params table and register it (Petr Oros) [1737133] - [netdrv] mlxsw: spectrum: Assume CONFIG_NET_DEVLINK is always enabled (Petr Oros) [1737527] - [netdrv] netdevsim: assume CONFIG_NET_DEVLINK is always enabled (Petr Oros) [1737527] - [net] devlink: introduce devlink_compat_phys_port_name_get() (Petr Oros) [1737527] - [net] replace ndo_get_devlink with ndo_get_devlink_port (Petr Oros) [1737527] - [net] devlink: select NET_DEVLINK from drivers (Petr Oros) [1737527] - [net] devlink: add port type spinlock (Petr Oros) [1737527] - [net] devlink: warn on setting type on unregistered port (Petr Oros) [1737527] - [net] devlink: disallow port_attrs_set() to be called before register (Petr Oros) [1737527] - [net] devlink: don't pass return value of __devlink_port_type_set() (Petr Oros) [1737527] - [net] devlink: don't take devlink_mutex for devlink_compat_* (Petr Oros) [1737527] - [net] devlink: add couple of missing mutex_destroy() calls (Petr Oros) [1737527] - [net] devlink: fix kdoc (Petr Oros) [1737527] - [net] devlink: require non-NULL ops for devlink instances (Petr Oros) [1737527] - [net] devlink: hold a reference to the netdevice around ethtool compat (Petr Oros) [1737527] - [net] devlink: create a special NDO for getting the devlink instance (Petr Oros) [1737527] - [net] devlink: Add WARN_ON to catch errors of not cleaning devlink objects (Petr Oros) [1737527] - [netdrv] s390/qeth: fix xmit_more support (Ivan Vecera) [1734516] - [netdrv] revert "[netdrv] gve: account for lack of netdev_xmit_more() definition (RHEL-only)" (Ivan Vecera) [1734516] - [netdrv] net/mlx5e: Fix wrong xmit_more application (Ivan Vecera) [1734516] - [include] net: use correct this_cpu primitive in dev_recursion_level (Ivan Vecera) [1734516] - [netdrv] drivers: net: aurora: use netdev_xmit_more helper (Ivan Vecera) [1734516] - [netdrv] drivers: net: sfc: use netdev_xmit_more helper (Ivan Vecera) [1734516] - [netdrv] drivers: mellanox: use netdev_xmit_more() helper (Ivan Vecera) [1734516] - [netdrv] net: move skb->xmit_more hint to softnet data (Ivan Vecera) [1734516] - [net] place xmit recursion in softnet data (Ivan Vecera) [1734516]- [netdrv] net: ena: clean up indentation issue (John Linville) [1770979] - [netdrv] net: ena: Select DIMLIB for ENA_ETHERNET (John Linville) [1770979] - [netdrv] net: ena: fix incorrect update of intr_delay_resolution (John Linville) [1770979] - [netdrv] net: ena: fix retrieval of nonadaptive interrupt moderation intervals (John Linville) [1770979] - [netdrv] net: ena: fix update of interrupt moderation register (John Linville) [1770979] - [netdrv] net: ena: remove all old adaptive rx interrupt moderation code from ena_com (John Linville) [1770979] - [netdrv] net: ena: remove ena_restore_ethtool_params() and relevant fields (John Linville) [1770979] - [netdrv] net: ena: remove old adaptive interrupt moderation code from ena_netdev (John Linville) [1770979] - [netdrv] net: ena: remove code duplication in ena_com_update_nonadaptive_moderation_interval _*() (John Linville) [1770979] - [netdrv] net: ena: enable the interrupt_moderation in driver_supported_features (John Linville) [1770979] - [netdrv] net: ena: reimplement set/get_coalesce() (John Linville) [1770979] - [netdrv] net: ena: switch to dim algorithm for rx adaptive interrupt moderation (John Linville) [1770979] - [netdrv] net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it (John Linville) [1770979]- [fs] autofs: add ignore mount option (Ian Kent) [1743441] - [fs] autofs: improve ioctl sbi checks (Ian Kent) [1672133] - [crypto] crypto: ccp - Retry SEV INIT command in case of integrity check failure. (Gary Hook) [1767627] - [crypto] crypto: ccp - Verify access to device registers before initializing (Gary Hook) [1756867] - [crypto] crypto: ccp - Change a message to reflect status instead of failure (Gary Hook) [1756867] - [netdrv] ixgbevf: Bump version for RHEL 8.2.0 (Ken Cox) [1721701] - [netdrv] ixgbevf: Fix secpath usage for IPsec Tx offload (Ken Cox) [1721701] - [netdrv] ixgbevf: make array api static const, makes object smaller (Ken Cox) [1721701] - [netdrv] ixgbevf: Link lost in VM on ixgbevf when restoring from freeze or suspend (Ken Cox) [1721701] - [netdrv] ixgbevf: fix a compilation error of skb_frag_t (Ken Cox) [1721701] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721701] - [netdrv] ixgbevf: Use cached link state instead of re-reading the value for ethtool (Ken Cox) [1721701] - [netdrv] ixgbevf: fix possible divide by zero in ixgbevf_update_itr (Ken Cox) [1721701] - [netdrv] ixgbevf: fix a missing check of ixgbevf_write_msg_read_ack (Ken Cox) [1721701] - [infiniband] IB/hfi1: Use a common pad buffer for 9B and 16B packets (Honggang Li) [1719676] - [infiniband] IB/hfi1: Avoid excessive retry for TID RDMA READ request (Honggang Li) [1719676] - [infiniband] RDMA/hfi1: Prevent memory leak in sdma_init (Honggang Li) [1719676] - [infiniband] IB/hfi1: remove unlikely() from IS_ERR*() condition (Honggang Li) [1719676] - [infiniband] IB/hfi1: Define variables as unsigned long to fix KASAN warning (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Add a counter for credit waits (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add traces for TID RDMA READ (Honggang Li) [1719676] - [infiniband] infiniband: hfi1: fix memory leaks (Honggang Li) [1719676] - [infiniband] infiniband: hfi1: fix a memory leak bug (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop stale TID RDMA packets that cause TIDErr (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add additional checks when handling TID RDMA WRITE DATA packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add additional checks when handling TID RDMA READ RESP packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Unsafe PSN checking for TID RDMA READ Resp packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop stale TID RDMA packets (Honggang Li) [1719676] - [infiniband] IB/hfi1: Fix Spectre v1 vulnerability (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove unused define (Honggang Li) [1719676] - [infiniband] IB/hfi1: Do not update hcrc for a KDETH packet during fault injection (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop all TID RDMA READ RESP packets after r_next_psn (Honggang Li) [1719676] - [infiniband] IB/hfi1: Field not zero-ed when allocating TID flow memory (Honggang Li) [1719676] - [infiniband] IB/hfi1: Unreserve a flushed OPFN request (Honggang Li) [1719676] - [infiniband] IB/hfi1: Check for error on call to alloc_rsm_map_table (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix variable shadowing issue in rvt_create_cq (Honggang Li) [1719676] - [infiniband] RDMA/rvt: Do not use a kernel header in the ABI (Honggang Li) [1719676] - [infiniband] IB/hfi1: No need to use try_module_get for debugfs (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Add trace for map_mr_sg (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Enhance trace information for FRWR debug (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add missing INVALIDATE opcodes for trace (Honggang Li) [1719676] - [infiniband] IB/hfi1: Reduce excessive aspm inlines (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Add helpers to hide SWQE WR details (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Remove AH refcount for UD QPs (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Set QP allowed opcodes after QP allocation (Honggang Li) [1719676] - [infiniband] IB/{hfi1, qib, rdmavt}: Put qp in error state when cq is full (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fracture single lock used for posting and processing RWQEs (Honggang Li) [1719676] - [infiniband] IB/hfi1: Move receive work queue struct into uapi directory (Honggang Li) [1719676] - [infiniband] IB/hfi1: Move rvt_cq_wc struct into uapi directory (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Add new completion inline (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, qib, hfi1}: Convert to new completion API (Honggang Li) [1719676] - [infiniband] IB/hfi1: Spelling s/statisfied/satisfied/ (Honggang Li) [1719676] - [infiniband] IB/hfi1: Handle port down properly in pio (Honggang Li) [1719676] - [infiniband] IB/hfi1: Handle wakeup of orphaned QPs for pio (Honggang Li) [1719676] - [infiniband] IB/hfi1: Wakeup QPs orphaned on wait list after flush (Honggang Li) [1719676] - [infiniband] IB/hfi1: Use aborts to trigger RC throttling (Honggang Li) [1719676] - [infiniband] IB/hfi1: Create inline to get extended headers (Honggang Li) [1719676] - [infiniband] IB/hfi1: Silence txreq allocation warnings (Honggang Li) [1719676] - [infiniband] IB/hfi1: Avoid hardlockup with flushlist_lock (Honggang Li) [1719676] - [infiniband] IB/hfi1: Correct tid qp rcd to match verbs context (Honggang Li) [1719676] - [infiniband] IB/hfi1: Close PSM sdma_progress sleep window (Honggang Li) [1719676] - [infiniband] IB/hfi1: Validate fault injection opcode user input (Honggang Li) [1719676] - [infiniband] IB/hfi1: Use struct_size() helper (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Use struct_size() helper (Honggang Li) [1719676] - [infiniband] IB/hfi1: Validate page aligned for a given virtual address (Honggang Li) [1719676] - [infiniband] IB/{qib, hfi1, rdmavt}: Correct ibv_devinfo max_mr value (Honggang Li) [1719676] - [infiniband] IB/hfi1: Insure freeze_work work_struct is canceled on shutdown (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix alloc_qpn() WARN_ON() (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove set but not used variables 'offset' and 'fspsn' (Honggang Li) [1719676] - [infiniband] RDMA/rdmavt: Catch use-after-free access of AH structures (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove reference to RHF.VCRCErr (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add selected Rcv counters (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, qib, hfi1}: Use new routine to release reference counts (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Use more efficient allowed_ops (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix ab/ba include issues (Honggang Li) [1719676] - [infiniband] IB/hfi1: Make opfn.h self sufficient (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1): Miscellaneous comment fixes (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add debugfs to control expansion ROM write protect (Honggang Li) [1719676] - [infiniband] hfi1: Convert hfi1_unit_table to XArray (Honggang Li) [1719676] - [infiniband] hfi1: Convert vesw_idr to XArray (Honggang Li) [1719676] - [infiniband] RDMA/rdmavt: Use correct sizing on buffers holding page DMA addresses (Honggang Li) [1719676] - [infiniband] IB/hfi1: Fix two format strings (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add running average for adaptive pio (Honggang Li) [1719676] - [infiniband] mm: replace all open encodings for NUMA_NO_NODE (Honggang Li) [1719676] - [infiniband] drivers/IB,hfi1: do not se mmap_sem (Honggang Li) [1719676] - [infiniband] IB/hfi1: Suppress a compiler warning (Honggang Li) [1719676] - [scsi] qla2xxx: Update driver version (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: don't use zero for FC4_PRIORITY_NVME (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: initialize fc4_type_priority (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: fix NPIV tear down process (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Remove an include directive (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix device connect issues in P2P configuration (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Improve logging for scan thread (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Capture FW dump on MPI heartbeat stop event (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Check for MB timeout while capturing ISP27/28xx FW dump (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Set remove flag for all VP (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Add error handling for PLOGI ELS passthrough (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Dual FCP-NVMe target port support (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix a dma_pool_free() call (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix memory leak when sending I/O fails (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix driver unload hang (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix SRB leak on switch command timeout (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix double scsi_done for abort path (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Do command completion on abort timeout (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Reduce the number of forward declarations (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: fixup incorrect usage of host_byte (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix partial flash write of MBI (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Remove WARN_ON_ONCE in qla2x00_status_cont_entry() (Himanshu Madhani) [1763248] - [scsi] qla2xxx: Fix conflict_port check for NULL (Himanshu Madhani) [1763248] - [netdrv] Bump version for RHEL 8.2.0 (Ken Cox) [1721700] - [netdrv] ixgbe: Fix secpath usage for IPsec TX offload. (Ken Cox) [1721700] - [netdrv] ixgbe: fix double clean of Tx descriptors with xdp (Ken Cox) [1721700] - [netdrv] ixgbe: Prevent u8 wrapping of ITR value to something less than 10us (Ken Cox) [1721700] - [netdrv] ixgbe: use skb_get_queue_mapping in tx path (Ken Cox) [1721700] - [netdrv] ixgbe: fix memory leaks (Ken Cox) [1721700] - [netdrv] ixgbe: sync the first fragment unconditionally (Ken Cox) [1721700] - [netdrv] ixgbe: Use kzfree() rather than its implementation. (Ken Cox) [1721700] - [netdrv] ixgbe: simplify Rx buffer recycle (Ken Cox) [1721700] - [netdrv] ixgbe: no need to check return value of debugfs_create functions (Ken Cox) [1721700] - [netdrv] ixgbe: fix possible deadlock in ixgbe_service_task() (Ken Cox) [1721700] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721700] - [netdrv] ixgbe: fix potential u32 overflow on shift (Ken Cox) [1721700] - [netdrv] ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw (Ken Cox) [1721700] - [netdrv] ixgbe: Check DDM existence in transceiver before access (Ken Cox) [1721700] - [netdrv] ixgbe: implement support for SDP/PPS output on X550 hardware (Ken Cox) [1721700] - [netdrv] ixgbe: Use LLDP ethertype define ETH_P_LLDP (Ken Cox) [1721700] - [netdrv] ixgbe: add a kernel documentation comment for ixgbe_ptp_get_ts_config (Ken Cox) [1721700] - [netdrv] ixgbe: use 'cc' instead of 'hw_cc' for local variable (Ken Cox) [1721700] - [netdrv] ixgbe: fix PTP SDP pin setup on X540 hardware (Ken Cox) [1721700] - [netdrv] ixgbe: reduce PTP Tx timestamp timeout to 1 second (Ken Cox) [1721700] - [netdrv] ixgbe: fix AF_XDP tx packet count (Ken Cox) [1721700] - [netdrv] ixgbe: fix AF_XDP tx byte count (Ken Cox) [1721700] - [netdrv] ixgbe: remove umem from adapter (Ken Cox) [1721700] - [netdrv] ixgbe: add tracking of AF_XDP zero-copy state for each queue pair (Ken Cox) [1721700] - [netdrv] ixgbe: fix mdio bus registration (Ken Cox) [1721700] - [netdrv] nfp: bpf: implement jitting of JMP32 (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: support removing dead code (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: support optimizing dead branches (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: save original program length (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: split up the skip flag (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: don't use instruction number for jump target (Pablo Cascon) [1729067] - [scsi] scsi: target: iscsi: rename some variables to avoid confusion. (Maurizio Lombardi) [1769801] - [scsi] scsi: target: iscsi: tie the challenge length to the hash digest size (Maurizio Lombardi) [1769801] - [scsi] scsi: target: iscsi: CHAP: add support for SHA1, SHA256 and SHA3-256 (Maurizio Lombardi) [1769801] - [scsi] scsi: target: compare full CHAP_A Algorithm strings (Maurizio Lombardi) [1769801] - [arm64] arm64: topology: Use PPTT to determine if PE is a thread (Jeremy Linton) [1721297] - [acpi] ACPI/PPTT: Add support for ACPI 6.3 thread flag (Jeremy Linton) [1721297] - [acpi] ACPI / LPSS: Save/restore LPSS private registers also on Lynxpoint (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [documentation] docs: fix numaperf.rst and add it to the doc tree (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Rename arm_smmu_v3_set_proximity() 'node' local variable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [misc] h8300: pci: Remove local declaration of pcibios_penalize_isa_irq (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [mm] mmc: sdhci-acpi: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [ata] ata: pata_acpi: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [gpu] vga-switcheroo: make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: intel_ips: make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: intel_pmc: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: apple-gmux: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/intel/lpss: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/Kconfig: Select PCI_LOCKLESS_CONFIG if PCI is enabled (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [mfd] mfd: Fix unmet dependency warning for MFD_TPS68470 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] drivers/acpi/scan.c: document why we don't need the device_hotplug_lock (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Fix regression in acpi_device_set_power() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix off-by-one check in iort_dev_find_its_id() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: video: Add new hw_changes_brightness quirk, set it on PB Easynote MZ35 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: blacklist: fix clang warning for unused DMI table (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPICA: Update table load object initialization" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Make acpi_sleep_state_supported() non-static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove needless __ghes_check_estatus() calls (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Unexport acpi_device_get_power() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI / ACPI: Use cached ACPI device state to get PCI device power state (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190703 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update table load object initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for object initialization sequence (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: remove legacy module-level code due to deprecation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: simplify creation of the initial/default namespace (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: intel: Drop double removal of address space handler (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APD: remove redundant assignment to pointer clk (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Introduce "poweroff" callbacks for ACPI PM domain and LPSS (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Simplify and fix PM domain hibernation callbacks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PM: ACPI/PCI: Resume all devices during hibernation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI: PM/ACPI: Refresh all stale power state data in pci_pm_complete() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Add function to return ACPI 6.3 Identical tokens (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Modify node flag detection to find last IDENTICAL (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Introduce concept of a _PR0 dependent device (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Allow transitions to D0 to occur in special cases (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Avoid evaluating _PS3 on transitions from D3hot to D3cold (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: utils: Cleanup acpi_dev_match_cb (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Make AC and battery drivers available on !X86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] coresight: acpi: Support for AMBA components (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of GPEs on first direct enable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: configfs: Resolve objects on host-directed table loads (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: tables: Allow BGRT to be overridden (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / sleep: Switch to use acpi_dev_get_first_match_dev() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] gpio: merrifield: Fix build err without CONFIG_ACPI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: OSL: Make a W=1 kernel-doc warning go away (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: Don't limit named child node matching to data nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPIT: Correct LPIT end address for lpit_process() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/irq: Implement helper to create hierachical domains (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Add memory-side caching attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Add heterogenous memory access attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Link memory nodes to their compute nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [documentation] doc/mm: New documentation for memory performance (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Call pm_set_suspend_via_firmware() during hibernation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PCI: PM: Add missing wakeup.flags.valid checks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix build error when IOMMU_SUPPORT is disabled (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190509 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Linux: move ACPI_DEBUG_DEFAULT flag out of ifndef (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: bus: change _ADR representation to 64 bits (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: fix an uninitialized memory_target (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Update acpi_hmat_type enum with ACPI_HMAT_TYPE_PROXIMITY (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: fix memory leaks in hmat_init() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Check ATS capability in root complex nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / DPTF: Use dev_get_drvdata() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: event: replace strcpy() by strscpy() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for hibernate (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Reject platform device creation on NUMA node mapping failure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: button: reinitialize button state upon resume (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190405 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: add check to avoid null pointer dereference (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190329 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: utilities: fix spelling of PCC to platform_comm_channel (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg length macro/define for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg compare macro for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg copy macro for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Print debug messages when enabling GPEs for wakeup (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register memory side cache attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register performance attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register processor domain to its memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Parse and report heterogeneous memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: Add HMAT to generic parsing tables (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: Create subtable parsing infrastructure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [arm64] arm64: numa: rework ACPI NUMA initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Add support for PMCG (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: video: Use vendor backlight on Sony VPCEH3U1E (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / utils: Remove deprecated function since no user left (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: Clean up whitespace (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Add labels for PNP button devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Simplify acpi_bus_extract_wakeup_device_power_package() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Fix comment typos (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPICA: Clear status of GPEs before enabling them" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: remove address node from global list after method termination (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of GPEs before enabling them (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: use different default debug value than ACPICA (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / utils: Drop reference in test for device presence (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: sysfs: Prevent get_status() from returning acpi_status (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / device_sysfs: Avoid OF modalias creation for removed device (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / configfs: Mark local data structures static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / configfs: Mark local functions static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: tables: Simplify PPTT leaf node detection (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / bus: Respect PRP0001 when retrieving device match data (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190215 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add GTDT Revision 3 support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: HMAT updates (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: PPTT add additional fields in Processor Structure Flags (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add Error Disconnect Recover Notification value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: MADT: add support for statistical profiling in GICC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [clk] clk: x86: Move clk-lpss.h to platform_data/x86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APEI: Fix possible out-of-bounds access to BERT region (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / processor: Set P_LVL{2, 3sc] } idle state descriptions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / CPPC: Add a helper to get desired performance (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: SRAT: add Generic Affinity Structure subtable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: Add Trigger order to PCC Identifier structure in PDTT (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: Adding predefined methods _NBS, _NCH, _NIC, _NIH, and _NIG (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update/clarify messages for control method failures (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: Fix possible fault with the "test objects" command (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Interpreter: Emit warning for creation of a zero-length op region (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove legacy module-level code support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: Make PWM2 device always present at Lenovo Yoga Book (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / video: Extend chassis-type detection with a "Lunch Box" check (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / video: Refactor and fix dmi_is_desktop() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Add support for the SDEI GHES Notification type (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [firmware] firmware: arm_sdei: Add ACPI GHES registration helper (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Add acpi_pptt_warn_missing() to consolidate logs (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Use separate fixmap pages for arm64 NMI-like notifications (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Only use queued estatus entry during in_nmi_queue_one_entry() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Split ghes_read_estatus() to allow a peek at the CPER length (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make GHES estatus header validation more user friendly (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Pass ghes and estatus separately to avoid a later copy (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Let the notification helper specify the fixmap slot (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Move locking to the notification helper (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Switch NOTIFY_SEA to use the estatus queue (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Move NOTIFY_SEA between the estatus-queue and NOTIFY_NMI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't allow ghes_ack_error() to mask earlier errors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Generalise the estatus queue's notify code (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't update struct ghes' flags in read/clear estatus (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove spurious GHES_TO_CLEAR check (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't store CPER records physical address in struct ghes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make estatus pool allocation a static size (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make hest.c manage the estatus memory pool (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Switch estatus pool to use vmalloc memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove silent flag from ghes_read_estatus() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't wait to serialise with oops messages when panic()ing (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Set debug output flags independent of ACPICA (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Get rid of acpi_sleep_dispatch() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for BSG2150 ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPI / EC: Remove old CLEAR_ON_RESUME quirk" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Simplify boot EC checks in acpi_ec_add() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Eliminate acpi_config_boot_ec() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Make acpi_ec_dsdt_probe() more straightforward (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Make acpi_ec_ecdt_probe() more straightforward (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Declare boot_ec as static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / DPTF: remove header search path to the parent directory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Clean up probing for early EC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: debug: Clean up acpi_aml_init() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: no need to check return value of debugfs_create functions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Look for ECDT EC after calling acpi_load_tables() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190108 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: All acpica: Update copyrights to 2019 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpiexec: Add option to dump extra info for memory leaks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Convert more ACPI errors to firmware errors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APEI: EINJ: Use DEFINE_DEBUGFS_ATTRIBUTE for debugfs files (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Fix parsing HEST that includes Deferred Machine Check subtable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: table override from built-in initrd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] APEI / ERST: Switch to use new generic UUID API (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Add generic intel_soc_pmic_exec_mipi_pmic_seq_element handling (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Implement exec_mipi_pmic_seq_element for CHT Whiskey Cove PMIC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix build when CONFIG_IOMMU_API=n (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Fix TS-pin current-source handling (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: NUMA: Use correct type for printing addresses on i386-PAE (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: power: Skip duplicate power resource references in _PRx (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Fix build failure when CONFIG_NLS is set to 'n' (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: Add an ifdef around amlcode and dsdt_amlcode (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Make PCI slot detection driver depend on PCI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Stub out ACS functions when CONFIG_PCI is not set (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSI: Add OEM _OSI string to enable dGPU direct output (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Loop in full LPS0 mode only (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC / PM: Disable non-wakeup GPEs for suspend-to-idle (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Don't call iommu_ops->add_device directly (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Use device_iommu_mapped() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Use helper functions to access dev->iommu_fwspec (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] driver core: Introduce device_iommu_mapped() function (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu/sysfs: Rename iommu_release_device() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu: Consolitate ->add/remove_device() calls (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu: Introduce wrappers around dev->iommu_fwspec (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: add DSDT AmlCode new declaration name support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181213 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: change coding style to match ACPICA, no functional change (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debug output: Add option to display method/object evaluation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: disassembler: disassemble OEMx tables as AML (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Add "Windows 2018.2" string in the _OSI support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Expressions in package elements are not supported (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update buffer-to-string conversions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: add comments, no functional change (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove defines that use deprecated flag (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Add "Windows 2018" string in the _OSI support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [pci] PCI: Remove unused attr variable in pci_dma_configure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Refactor _CCA enforcement (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Ignore acpi_device_fix_up_power() return value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI, APEI, EINJ: Change to use DEFINE_SHOW_ATTRIBUTE macro (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for INT3515 ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix iort_get_platform_device_domain() uninitialized pointer value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: SPCR: Consider baud rate 0 as preconfigured state (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / glue: Add acpi_platform_notify() function (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] drivers core: Prepare support for multiple platform notifications (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / platform: Add SMB0001 HID to forbidden_id_list (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Fix handling of buffer-size in acpi_ex_write_data_to_field() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181031 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: iASL: Enhance error detection (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: iASL: adding definition and disassembly for TPM2 revision 3 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: refactor to fix unused variable warning (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: fix IOSF_MBI dependency (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Add depends on IOSF_MBI to Kconfig entry (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Block P-Unit I2C access during read-modify-write (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] PM / Domains: Document flags for genpd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for INT33FE ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: probe ECDT before loading AML tables regardless of module-level code flag (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove acpi_gbl_group_module_level_code and only use acpi_gbl_execute_tables_as_methods instead (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended opcodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: AML interpreter: add region addresses in global list during initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: TAD: Add low-level support for real time capability (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Export acpi_device_get_power() for use by modular build drivers (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: remove redundant 'default n' from Kconfig (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / SBS: Fix rare oops when removing modules (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / SBS: Fix GPE storm on recent MacBookPro's (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181003 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Never run _REG on system_memory and system_IO (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Split large interpreter file (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for field unit access (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename some of the Field Attribute defines (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for generic_serial_bus and attrib_raw_process_bytes protocol (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / processor: Fix the return value of acpi_processor_ids_walk() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Resume BYT/CHT I2C controllers from resume_noirq (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add a device link from the GPU to the BYT I2C5 controller (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add a device link from the GPU to the CHT I2C7 controller (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make acpi_lpss_find_device() also find PCI devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make hid_uid_match helper accept a NULL uid argument (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make hid_uid_match helper take an acpi_device as first argument (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi:ipmi: Convert ipmi_user_t to struct ipmi_user 0001-x86-smp-fix-non-SMP-broken-build-due-to-redefinition.patch brew_job bzlist bzlist-v2 run.sh testing_desc v4-notes v5-notes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Exclude I2C busses shared with PUNIT from pmc_atom_d3_mask (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Convert drivers to use SPDX identifier (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Sort headers alphabetically (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: Switch to bitmap_zalloc() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: custom_method: remove meaningless null check before debugfs_remove() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Force LPSS quirks on boot (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / bus: Only call dmi_check_system() on X86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: fix menuconfig presentation of ACPI submenu (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] xen/ACPI: don't upload Px/Cx data for disabled processors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/smp: fix non-SMP broken build due to redefinition of apic_id_is_primary_thread (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: CrystalCove: Extend PMOP support to support all possible fields (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of all events when entering sleep states (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20180810 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpiexec: fix a small memory leak regression (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Reference count: add additional debugging details (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpi_exec: fixing -fi option (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: Cleanup interface to the AML disassembler (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Utilities: split hex detection into smaller functions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update an error message for a duplicate table (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: Add ACPI i2c-multi-instantiate pseudo driver (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [kernel] PM / reboot: Eliminate race between reboot and suspend (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: utils: Remove status workaround from acpi_device_always_present() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for fwnodes with multiple i2c devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Initialize status to ACPI_STA_DEFAULT (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / EC: Add another entry for Thinkpad X1 Carbon 6th (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: bus: Fix a pointer coding style issue (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] arm64 / ACPI: clean the additional checks before calling ghes_notify_sea() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Add static attribute to indirect_io_hosts[] (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: Do not export energy_full[_design] on devices without full_charge_capacity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / EC: Use ec_no_wakeup on ThinkPad X1 Yoga 3rd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: get rid of negations in conditions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: use specialized print macros (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: reorder headers alphabetically (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: drop inclusion of init.h (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: battery: remove redundant old_present check on insertion (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Use data node name and reg property for graphs (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Allow direct graph endpoint references (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Make the ACPI graph API private (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Allow making references to non-device nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Convert ACPI reference args to generic fwnode reference args (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: save NVS memory for ASUS 1025C laptop (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / button: fix defined but not used warning (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20180629 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Revert "iASL compiler: allow compilation of externals with paths that refer to existing names" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Revert "iASL: change processing of external op namespace nodes for correctness" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: enable touchscreen on Dell Venue Pro 7139 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Default to s2idle in all machines supporting LP S0 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / button: increment wakeup count only when notified (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [powerpc] powerpc/papr_scm: Fix an off-by-one check in papr_scm_meta_{get, set} (Gustavo Duarte) [1731035] - [nvdimm] libnvdimm/altmap: Track namespace boundaries in altmap (Gustavo Duarte) [1731035] - [powerpc] powerpc/nvdimm: Pick nearby online node if the device node is not online (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Force a scm-unbind if initial scm-bind fails (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Update drc_pmem_unbind() to use H_SCM_UNBIND_ALL (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: Update SCM hcall op-codes in hvcall.h (Gustavo Duarte) [1731035] - [mm] mm/nvdimm: add is_ioremap_addr and use that to check ioremap address (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries/scm: Use a specific endian format for storing uuid from the device tree (Gustavo Duarte) [1731035] - [powerpc] powerpc/nvdimm: Add support for multibyte read/write for metadata (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries/scm: Mark the region volatile if cache flush not required (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/nvdimm: Add an informative message if we fail to allocate altmap block (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Consolidate numa_enable check and min_common_depth check (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Fix node look up with numa=off boot (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/drconf: Use NUMA_NO_NODE on failures instead of node 0 (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/radix: Use the right page size for vmemmap mapping (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/hash/4k: Don't use 64K page size for vmemmap with 4K pagesize (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use the correct bind address (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Fallback to RAM if the altmap is unusable (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use ibm, unit-guid as the iset cookie (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Fix DIMM device registration race (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Remove endian conversions (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Update DT properties (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Fix resource end address (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use depend instead of select (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: Add driver for PAPR SCM regions (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: PAPR persistent memory support (Gustavo Duarte) [1731035] - [mm] mm, vmstat: reduce zone->lock holding time by /proc/pagetypeinfo (Waiman Long) [1770314] - [mm] mm, vmstat: hide /proc/pagetypeinfo from normal users (Waiman Long) [1770314] - [crypto] crypto: chtls - remove cdev_list_lock (Neil Horman) [1737078] - [crypto] crypto/chelsio/chtls: listen fails with multiadapt (Neil Horman) [1737078] - [tools] cpupower : Handle set and info subcommands correctly (Steve Best) [1769973] - [s390] s390/qeth: use IQD Multi-Write (Philipp Rudo) [1731028] - [s390] s390/qdio: implement IQD Multi-Write (Philipp Rudo) [1731028] - [s390] s390/qeth: add xmit_more support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: add BQL support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: when in TX NAPI mode, use napi_consume_skb() (Philipp Rudo) [1731028] - [s390] s390/qeth: add TX NAPI support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: collect accurate TX statistics (Philipp Rudo) [1731028] - [s390] s390/qdio: let drivers opt-out from Output Queue scanning (Philipp Rudo) [1731028] - [s390] s390/qdio: enable drivers to poll for Output completions (Philipp Rudo) [1731028] - [usb] xhci-pci: allow host runtime PM as default for Intel Alpine and Titan Ridge (Myron Stowe) [1769877] - [x86] x86/atomic: Fix smp_mb__{before,after}_atomic() (Prarit Bhargava) [1769789] - [kernel] stacktrace: Don't skip first entry on noncurrent tasks (Waiman Long) [1766681] - [kernel] tracing: Fix user stack trace "??" output (Waiman Long) [1766681] - [kernel] tracing: Fix out-of-range read in trace_stack_print() (Waiman Long) [1766681] - [kernel] stacktrace: Constify 'entries' arguments (Waiman Long) [1766681] - [kernel] stacktrace: Force USER_DS for stack_trace_save_user() (Waiman Long) [1766681] - [x86] x86/stacktrace: Prevent infinite loop in arch_stack_walk_user() (Waiman Long) [1766681] - [kernel] stacktrace: Use PF_KTHREAD to check for kernel threads (Waiman Long) [1766681] - [kernel] stacktrace: Unbreak stack_trace_save_tsk_reliable() (Waiman Long) [1766681] - [x86] x86/stacktrace: Use common infrastructure (Waiman Long) [1766681] - [kernel] stacktrace: Keep stack_trace structure and remove snprint_stack_trace() (Waiman Long) [1766681] - [kernel] stacktrace: Provide common infrastructure (Waiman Long) [1766681] - [kernel] livepatch: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] tracing: Remove the last struct stack_trace usage (Waiman Long) [1766681] - [kernel] tracing: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] tracing: Make ftrace_trace_userstack() static and conditional (Waiman Long) [1766681] - [kernel] tracing: Use percpu stack trace buffer more intelligently (Waiman Long) [1766681] - [kernel] tracing: Simplify stacktrace retrieval in histograms (Waiman Long) [1766681] - [kernel] lockdep: Remove save argument from check_prev_add() (Waiman Long) [1766681] - [kernel] lockdep: Remove unused trace argument from print_circular_bug() (Waiman Long) [1766681] - [drm] drm: Simplify stacktrace handling (Waiman Long) [1766681] - [md] dm persistent data: Simplify stack trace handling (Waiman Long) [1766681] - [md] dm bufio: Simplify stack trace retrieval (Waiman Long) [1766681] - [fs] btrfs: ref-verify: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] dma/debug: Simplify stracktrace retrieval (Waiman Long) [1766681] - [lib] fault-inject: Simplify stacktrace retrieval (Waiman Long) [1766681] - [mm] mm/page_owner: Simplify stack trace handling (Waiman Long) [1766681] - [mm] mm/kmemleak: Simplify stacktrace handling (Waiman Long) [1766681] - [mm] mm/slub: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] latency_top: Simplify stack trace handling (Waiman Long) [1766681] - [fs] proc: Simplify task stack retrieval (Waiman Long) [1766681] - [kernel] backtrace-test: Simplify stack trace handling (Waiman Long) [1766681] - [lib] lib/stackdepot: Provide functions which operate on plain storage arrays (Waiman Long) [1766681] - [kernel] stacktrace: Provide helpers for common stack trace operations (Waiman Long) [1766681] - [kernel] tracing: Cleanup stack trace code (Waiman Long) [1766681] - [kernel] tracing: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [drm] drm: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] latency_top: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/kasan: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/page_owner: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/slub: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] lockdep: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] s390/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] parisc/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] arm64/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] riscv/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] unicore32/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] sh/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] arm/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] [x86] x86/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] um/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [mm] mm/page_owner: clamp read count to PAGE_SIZE (Waiman Long) [1766681] - [kernel] tracing: Export trace_dump_stack to modules (Waiman Long) [1766681] - [kernel] tracing: Have stack tracer trace full stack (Waiman Long) [1766681] - [kernel] trace: Use rcu_dereference_raw for hooks from trace-event subsystem (Waiman Long) [1766681] - [kernel] tracing: Have trace_stack nr_entries compare not be so subtle (Waiman Long) [1766681] - [cpuidle] cpuidle: governor: Add new governors to cpuidle_governors again (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: do not set an owner to allow modunload (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: set haltpoll as preferred governor (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: allow governor switch on cpuidle_register_driver() (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: Add cpuidle.governor= command line parameter (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: vcpu hotplug support (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: disable host side polling when kvm virtualized (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: add haltpoll governor (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: header file stubs must be "static inline" (Marcelo Tosatti) [1759282] - [cpuidle] governors: unify last_state_idx (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: add poll_limit_ns to cpuidle_device structure (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Fix default time limit (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Disregard disable idle states (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Revise loop termination condition (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: menu: Fix wakeup statistics updates for polling state (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: return -ENODEV on modinit failure (Marcelo Tosatti) [1759282] - [cpuidle] add cpuidle-haltpoll driver (Marcelo Tosatti) [1759282] - [mm] mem-hotplug: fix node spanned pages when we have a node with only ZONE_MOVABLE (Baoquan He) [1756210] - [x86] x86, efi: never relocate kernel below lowest acceptable address (Kairui Song) [1747367] - [fs] CIFS: Force reval dentry if LOOKUP_REVAL flag is set (Dave Wysochanski) [1767664] - [fs] CIFS: Force revalidate inode when dentry is stale (Dave Wysochanski) [1767664] - [fs] CIFS: Gracefully handle QueryInfo errors during open (Dave Wysochanski) [1767664] - [block] blk-mq: make sure that line break can be printed (Ming Lei) [1741462] - [block] blk-mq: avoid sysfs buffer overflow with too many CPU cores (Ming Lei) [1741462] - [netdrv] bnx2x: Fix VF's VLAN reconfiguration in reload. (Manish Chopra) [1720393] - [netdrv] bnx2x: Prevent ptp_task to be rescheduled indefinitely (Manish Chopra) [1720393] - [netdrv] bnx2x: Check if transceiver implements DDM before access (Manish Chopra) [1720393] - [fs] xfs: allocate xattr buffer on demand (Eric Sandeen) [1684599] - [fs] xfs: consolidate attribute value copying (Eric Sandeen) [1684599] - [fs] xfs: move remote attr retrieval into xfs_attr3_leaf_getvalue (Eric Sandeen) [1684599] - [fs] xfs: remove unnecessary indenting from xfs_attr3_leaf_getvalue (Eric Sandeen) [1684599] - [fs] xfs: make attr lookup returns consistent (Eric Sandeen) [1684599] - [i2c] i2c: i801: Add support for Intel Comet Lake (David Arcari) [1761547] - [powerpc] powerpc/xmon: Improve output of XIVE interrupts (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Fix output of XIVE IPI (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Add a dump of all XIVE interrupts (Diego Domingos) [1731130] - [powerpc] powerpc/xive: Fix dump of XIVE interrupt under pseries (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL (Diego Domingos) [1731130] - [fs] xfs: convert inode to extent format after extent merge due to shift (Brian Foster) [1745253] - [mmc] mmc: sdhci-pci: Add support for Intel CML (Alexander Beregalov) [1761593] - [powerpc] powerpc/mm/mce: Keep irqs disabled during lockless page table walk (Gustavo Duarte) [1524649] - [tools] seltests/powerpc: Add a selftest for memcpy_mcsafe (Gustavo Duarte) [1524649] - [powerpc] powerpc/memcpy: Fix stack corruption for smaller sizes (Gustavo Duarte) [1524649] - [powerpc] powerpc: add machine check safe copy_to_user (Gustavo Duarte) [1524649] - [powerpc] powerpc/memcpy: Add memcpy_mcsafe for pmem (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Handle UE event for memcpy_mcsafe (Gustavo Duarte) [1524649] - [kernel] extable: Add function to search only kernel exception table (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Make machine_check_ue_event() static (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Fix MCE handling for huge pages (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Schedule work from irq_work (Gustavo Duarte) [1524649] - [x86] x86/boot/64: Round memory hole size up to next PMD page (Frank Ramsay) [1755602] - [x86] x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area (Frank Ramsay) [1755602] - [idle] intel_idle: add support for Jacobsville (Steve Best) [1481744] - [powercap] powercap/intel_rapl: add support for ICX (Steve Best) [1724421] - [block] blk-mq: apply normal plugging for HDD (Ming Lei) [1759380] - [block] blk-mq: honor IO scheduler for multiqueue devices (Ming Lei) [1759380] - [block] blk-mq: simplify blk_mq_make_request() (Ming Lei) [1759380] - [block] blk-mq: remove blk_mq_put_ctx() (Ming Lei) [1759380] - [nvdimm] libnvdimm: Enable unit test infrastructure compile checks (Jeff Moyer) [1724965] - [nvdimm] libnvdimm: Use PAGE_SIZE instead of SZ_4K for align check (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/label: Remove the dpa align check (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pmem: Advance namespace seed for specific probe errors (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/region: Rewrite _probe_success() to _advance_seeds() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Consolidate 'security' operations (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Tighten scope of nvdimm->busy vs security operations (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Introduce a 'frozen' attribute (Jeff Moyer) [1724965] - [nvdimm] libnvdimm, region: Use struct_size() in kzalloc() (Jeff Moyer) [1724965] - [tools] tools/testing/nvdimm: Fix fallthrough warning (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/of_pmem: Provide a unique name for bus provider (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Fix wait_nvdimm_bus_probe_idle() ABBA deadlock (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Stop holding nvdimm_bus_list_mutex over __nd_ioctl() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Prepare the nd_ioctl() path to be re-entrant (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/region: Register badblocks before namespaces (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Prevent duplicate device_unregister() calls (Jeff Moyer) [1724965] - [drivers] drivers/base: Introduce kill_device() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm, namespace: Drop uuid_t implementation detail (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'resource' attribute (Jeff Moyer) [1724965] - [dax] device-dax: Drop register_filesystem() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead (Jeff Moyer) [1724965] - [nvdimm] libnvdimm: Fix compilation warnings with W=1 (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/namespace: Fix label tracking error (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'modalias' attribute to DAX 'bus' devices (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'target_node' attribute (Jeff Moyer) [1724965] - [dax] device-dax: Auto-bind device after successful new_id (Jeff Moyer) [1724965] - [dax] acpi/nfit, device-dax: Identify differentiated memory with a unique numa-node (Jeff Moyer) [1724965] - [dax] device-dax: Add /sys/class/dax backwards compatibility (Jeff Moyer) [1724965] - [dax] device-dax: Add support for a dax override driver (Jeff Moyer) [1724965] - [dax] device-dax: Move resource pinning+mapping into the common driver (Jeff Moyer) [1724965] - [dax] device-dax: Introduce bus + driver model (Jeff Moyer) [1724965] - [dax] device-dax: Start defining a dax bus model (Jeff Moyer) [1724965] - [dax] device-dax: Remove multi-resource infrastructure (Jeff Moyer) [1724965] - [dax] device-dax: Kill dax_region base (Jeff Moyer) [1724965] - [dax] device-dax: Kill dax_region ida (Jeff Moyer) [1724965] - [kernel] memremap: Convert to XArray (Jeff Moyer) [1724965] - [drivers] drivers/dax/device.c: convert variable to vm_fault_t type (Jeff Moyer) [1724965] - [drivers] driver core: Rewrite test_async_driver_probe to cover serialization and NUMA affinity (Jeff Moyer) [1724965] - [drivers] libnvdimm: Schedule device registration on node local to the device (Jeff Moyer) [1724965] - [drivers] PM core: Use new async_schedule_dev command (Jeff Moyer) [1724965] - [drivers] driver core: Attach devices on CPU local to device node (Jeff Moyer) [1724965] - [kernel] async: Add support for queueing on specific NUMA node (Jeff Moyer) [1724965] - [kernel] workqueue: Provide queue_work_node to queue work near a given NUMA node (Jeff Moyer) [1724965] - [drivers] driver core: Probe devices asynchronously instead of the driver (Jeff Moyer) [1724965] - [drivers] device core: Consolidate locking and unlocking of parent and device (Jeff Moyer) [1724965] - [drivers] driver core: Establish order of operations for device_add and device_del via bitflag (Jeff Moyer) [1724965] - [drivers] driver core: Add missing dev->bus->need_parent_lock checks (Jeff Moyer) [1724965] - [drivers] driver core: Move async_synchronize_full call (Jeff Moyer) [1724965]- [scsi] scsi: qedi: update driver version to 8.37.0.20 (Nilesh Javali) [1724588] - [scsi] scsi: qedi: Check targetname while finding boot target information (Nilesh Javali) [1724588] - [scsi] scsi: qedi: remove set but not used variables 'cdev' and 'udev' (Nilesh Javali) [1724588] - [scsi] scsi: qedi: remove memset/memcpy to nfunc and use func instead (Nilesh Javali) [1724588] - [scsi] qedi: Use hwfns and affin_hwfn_idx to get MSI-X vector index (Nilesh Javali) [1724588] - [scsi] scsi: qedf: Update the version to 8.42.3.0 (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Fix race betwen fipvlan request and response path (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Use discovery list to traverse rports (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Decrease the LL2 MTU size to 2500 (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Check for module unloading bit before processing link update AEN (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Initiator fails to re-login to switch after link down (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add debug information for unsolicited processing (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add support for 20 Gbps speed (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Interpret supported caps value correctly (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add shutdown callback handler (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Update module description string (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Fix crash during sg_reset (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Stop sending fipvlan request on unload (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Print message during bailout conditions (Nilesh Javali) [1724589] - [scsi] qedf: Use hwfns and affin_hwfn_idx to get MSI-X vector index to use (Nilesh Javali) [1724589] - [scsi] scsi: bnx2fc: Handle scope bits when array returns BUSY or TSF (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variables 'task', 'port', 'orig_task' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variables 'lport', 'host' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variable 'fh' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix bnx2fc_cmd refcount imbalance in send_srr (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix bnx2fc_cmd refcount imbalance in send_rec (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Update the driver version to 2.12.10 (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Limit the IO size according to the FW capability (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Do not allow both a cleanup completion and abort completion for the same request (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Separate out completion flags and variables for abort and cleanup (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Only put reference to io_req in bnx2fc_abts_cleanup if cleanup times out (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Redo setting source FCoE MAC (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix incorrect cast to u64 on shift operation (Nilesh Javali) [1724598] - [netdrv] qed: Fix build error without CONFIG_DEVLINK (Manish Chopra) [1720392] - [netdrv] RDMA/qedr: Fix the hca_type and hca_rev returned in device attributes (Manish Chopra) [1720392] - [netdrv] qede: qede_fp: simplify a bit 'qede_rx_build_skb()' (Manish Chopra) [1720392] - [netdrv] qede: Make two functions static (Manish Chopra) [1720392] - [netdrv] qede: Handle infinite driver spinning for Tx timestamp. (Manish Chopra) [1720392] - [netdrv] qed: fix spelling mistake "fullill" -> "fulfill" (Manish Chopra) [1720392] - [netdrv] qed: Fix Config attribute frame format. (Manish Chopra) [1720392] - [netdrv] qed*: Fix size of config attribute dump. (Manish Chopra) [1720392] - [netdrv] net: qed: Move static keyword to the front of declaration (Manish Chopra) [1720392] - [netdrv] qede: Add support for dumping the grc data. (Manish Chopra) [1720392] - [netdrv] qed: Add APIs for configuring grc dump config flags. (Manish Chopra) [1720392] - [netdrv] qede: Add support for reading the config id attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add APIs for reading config id attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add cleanup in qed_slowpath_start() (Manish Chopra) [1720392] - [netdrv] qed: Add driver API for flashing the config attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add API for configuring NVM attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add new ethtool supported port types based on media. (Manish Chopra) [1720392] - [netdrv] net/ethernet/qlogic/qed: force the string buffer NULL-terminated (Manish Chopra) [1720392] - [netdrv] qed: RDMA - Fix the hw_ver returned in device attributes (Manish Chopra) [1720392] - [netdrv] qed*: Change dpi_addr to be denoted with __iomem (Manish Chopra) [1720392] - [netdrv] qed: reduce maximum stack frame size (Manish Chopra) [1720392] - [netdrv] qed: Prefer pcie_capability_read_word() (Manish Chopra) [1720392] - [netdrv] qed: Add support for Timestamping the unicast PTP packets. (Manish Chopra) [1720392] - [netdrv] qed: Fix -Wmaybe-uninitialized false positive (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Fix default window size to be based on chip (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Fix tc for MPA ll2 connection (Manish Chopra) [1720392] - [netdrv] qed: iWARP - fix uninitialized callback (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Use READ_ONCE and smp_store_release to access ep->state (Manish Chopra) [1720392] - [netdrv] qed: remove redundant assignment to rc (Manish Chopra) [1720392] - [netdrv] qed: Fix static checker warning (Manish Chopra) [1720392] - [netdrv] qed: fix spelling mistake "inculde" -> "include" (Manish Chopra) [1720392] - [netdrv] qed: Reduce the severity of ptp debug message. (Manish Chopra) [1720392] - [netdrv] qed*: Add iWARP 100g support (Manish Chopra) [1720392] - [netdrv] qed: Add qed devlink parameters table (Manish Chopra) [1720392] - [netdrv] qed: Set the doorbell address correctly (Manish Chopra) [1720392] - [netdrv] qedr: Change the MSI-X vectors selection to be based on affined engine (Manish Chopra) [1720392] - [netdrv] qed: Modify offload protocols to use the affined engine (Manish Chopra) [1720392] - [netdrv] qed*: Change hwfn used for sb initialization (Manish Chopra) [1720392] - [netdrv] qed: Add llh ppfid interface and 100g support for offload protocols (Manish Chopra) [1720392] - [netdrv] qed: Modify api for performing a dmae to another PF (Manish Chopra) [1720392] - [virt] kvm: arm/arm64: vgic: Use the appropriate TRACE_INCLUDE_PATH (Auger Eric) [1749501] - [arm64] kvm: Kill hyp_alternate_select() (Auger Eric) [1749501] - [arm64] kvm: Replace hyp_alternate_select with has_vhe() (Auger Eric) [1749501] - [arm64] kvm: Drop hyp_alternate_select for checking for ARM64_WORKAROUND_834220 (Auger Eric) [1749501] - [documentation] kvm: arm/arm64: vgic: Allow more than 256 vcpus for KVM_IRQ_LINE (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Use a single IO device per redistributor (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Remove spurious semicolons (Auger Eric) [1749501] - [arm64] perf_event: Add missing header needed for smp_processor_id() (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Make function comments match function declarations (Auger Eric) [1749501] - [arm64] kvm: Remove VMID rollover I-cache maintenance (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-irqfd: Implement kvm_arch_set_irq_inatomic (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Check the LPI translation cache on MSI injection (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Cache successful MSI->LPI translation (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on vgic teardown (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on ITS disable (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on disabling LPIs (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on specific commands (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Add MSI-LPI translation cache invalidation (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Add __vgic_put_lpi_locked primitive (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Add LPI translation cache definition (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-v2: Handle SGI bits in GICD_I{S, C}PENDR0 as WI (Auger Eric) [1749501] - [arm64] kvm: Replace hardcoded '1' with SYS_PAR_EL1_F (Auger Eric) [1749501] - [arm64] sysreg: Add some field definitions for PAR_EL1 (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Fix potential deadlock when ap_list is long (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Properly initialise private IRQ affinity (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Reevaluate level sensitive interrupts on enable (Auger Eric) [1749501] - [arm64] kvm: arm64: Don't write junk to sysregs on reset (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Sync ICH_VMCR_EL2 back when about to block (Auger Eric) [1749501] - [arm64] kvm: hyp: debug-sr: Mark expected switch fall-through (Auger Eric) [1749501] - [arm64] kvm: arm64: Update kvm_arm_exception_class and esr_class_str for new EC (Auger Eric) [1749501] - [virt] kvm: arm: vgic-v3: Mark expected switch fall-through (Auger Eric) [1749501] - [arm64] kvm: regmap: Fix unexpected switch fall-through (Auger Eric) [1749501] - [arm64] sve: Fix a couple of magic numbers for the Z-reg count (Auger Eric) [1749501] - [arm64] sve: Factor out FPSIMD to SVE state conversion (Auger Eric) [1749501] - [arm64] kvm: arm/arm64: Initialise host's MPIDRs by reading the actual register (Auger Eric) [1749501] - [arm64] kvm: arm64: Migrate _elx sysreg accessors to msr_s/mrs_s (Auger Eric) [1749501] - [arm64] sysreg: Make mrs_s and msr_s macros work with Clang and LTO (Auger Eric) [1749501] - [documentation] kvm: doc: Add API documentation on the KVM_REG_ARM_WORKAROUNDS register (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Add save/restore support for firmware workaround state (Auger Eric) [1749501] - [arm64] kvm: Propagate full Spectre v2 workaround state to KVM guests (Auger Eric) [1749501] - [arm64] sve: Fix missing SVE/FPSIMD endianness conversions (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Fix kvm_device leak in vgic_its_destroy (Auger Eric) [1749501] - [arm64] kvm: arm64: Filter out invalid core register IDs in KVM_GET_REG_LIST (Auger Eric) [1749501] - [arm64] kvm: arm64: Skip more of the SError vaxorcism (Auger Eric) [1749501] - [arm64] kvm: arm64: Re-mask SError after the one instruction window (Auger Eric) [1749501] - [arm64] Update silicon-errata.txt for Neoverse-N1 #1349291 (Auger Eric) [1749501] - [arm64] kvm: arm64: Defer guest entry when an asynchronous exception is pending (Auger Eric) [1749501] - [arm64] kvm: arm64: Consume pending SError as early as possible (Auger Eric) [1749501] - [arm64] kvm: arm64: Make indirect vectors preamble behaviour symmetric (Auger Eric) [1749501] - [arm64] kvm: arm64: Abstract the size of the HYP vectors pre-amble (Auger Eric) [1749501] - [arm64] assembler: Switch ESB-instruction with a vanilla nop if !ARM64_HAS_RAS (Auger Eric) [1749501] - [arm64] kvm: arm64/sve: Fix vq_present() macro to yield a bool (Auger Eric) [1749501] - [arm64] kvm: arm64: Implement vq_present() as a macro (Auger Eric) [1749501] - [arm64] fpsimd: Don't disable softirq when touching FPSIMD/SVE state (Auger Eric) [1749501] - [arm64] fpsimd: Introduce fpsimd_save_and_flush_cpu_state() and use it (Auger Eric) [1749501] - [arm64] fpsimd: Remove the prototype for sve_flush_cpu_state() (Auger Eric) [1749501] - [scripts] genksyms: Teach parser about 128-bit built-in types (Auger Eric) [1749501] - [tools] kvm: selftests: introduce aarch64_vcpu_add_default (Auger Eric) [1749501] - [tools] kvm: selftests: introduce aarch64_vcpu_setup (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Move cc/it checks under hyp's Makefile to avoid instrumentation (Auger Eric) [1749501] - [arm64] kvm: arm64: Move pmu hyp code under hyp's Makefile to avoid instrumentation (Auger Eric) [1749501] - [documentation] arm64: docs: Document perf event attributes (Auger Eric) [1749501] - [arm64] kvm: Fix perf cycle counter support for VHE (Auger Eric) [1749501] - [arm64] kvm: Avoid isb's by using direct pmxevtyper sysreg (Auger Eric) [1749501] - [arm64] kvm: Enable VHE support for :G/:H perf event modifiers (Auger Eric) [1749501] - [arm64] kvm: Enable !VHE support for :G/:H perf event modifiers (Auger Eric) [1749501] - [arm64] arm_pmu: Add !VHE support for exclude_host/exclude_guest attributes (Auger Eric) [1749501] - [arm64] kvm: Add accessors to track guest/host only counters (Auger Eric) [1749501] - [arm64] arm_pmu: Remove unnecessary isb instruction (Auger Eric) [1749501] - [arm64] perf: Add support for chaining event counters (Auger Eric) [1749501] - [arm64] perf: Disable PMU while processing counter overflows (Auger Eric) [1749501] - [arm64] perf: Clean up armv8pmu_select_counter (Auger Eric) [1749501] - [arm64] kvm: arm: Remove pgtable page standard functions from stage-2 page tables (Auger Eric) [1749501] - [netdrv] e1000e: Add support for Tiger Lake (Ken Cox) [1767480] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (Corinna Vinschen) [1721705] - [netdrv] igb: Use dev_get_drvdata where possible (Corinna Vinschen) [1721705] - [netdrv] net: Use skb accessors in network drivers (Corinna Vinschen) [1721705] - [netdrv] igb: add RR2DCDELAY to ethtool registers dump (Corinna Vinschen) [1721705] - [netdrv] igb: minor ethool regdump amendment (Corinna Vinschen) [1721705] - [netdrv] igb: clear out skb->tstamp after reading the txtime (Corinna Vinschen) [1721705] - [netdrv] igb: mark expected switch fall-through (Corinna Vinschen) [1721705] - [netdrv] igb: mark expected switch fall-through (Corinna Vinschen) [1721705] - [netdrv] igb/igc: warn when fatal read failure happens (Corinna Vinschen) [1721705] - [netdrv] igb: fix various indentation issues (Corinna Vinschen) [1721705] - [netdrv] igb: Exclude device from suspend direct complete optimization (Corinna Vinschen) [1721705] - [netdrv] intel: correct return from set features callback (Corinna Vinschen) [1721705] - [netdrv] net: Use skb accessors in network drivers (Corinna Vinschen) [1721708] - [s390] s390/kaslr: reserve memory for kasan usage (Philipp Rudo) [1725888] - [s390] s390/mem_detect: provide single get_mem_detect_end (Philipp Rudo) [1725888] - [s390] s390/setup: adjust start_code of init_mm to _text (Philipp Rudo) [1725888] - [s390] s390/boot: add missing declarations and includes (Philipp Rudo) [1725888] - [s390] locking/lockdep: check for freed initmem in static_obj() (Philipp Rudo) [1725888] - [s390] s390/kernel: add support for kernel address space layout randomization (KASLR) (Philipp Rudo) [1725888] - [s390] s390/kernel: introduce .dma sections (Philipp Rudo) [1725888] - [s390] s390/sclp: do not use static sccbs (Philipp Rudo) [1725888] - [s390] s390/kprobes: use static buffer for insn_page (Philipp Rudo) [1725888] - [s390] s390/kernel: convert SYSCALL and PGM_CHECK handlers to .quad (Philipp Rudo) [1725888] - [s390] s390/kernel: build a relocatable kernel (Philipp Rudo) [1725888] - [s390] s390/extmem: remove code for 31 bit addressing mode (Philipp Rudo) [1725888] - [s390] s390/setup: remove obsolete #ifdef (Philipp Rudo) [1725888] - [net] net/core: work around section mismatch warning for ptp_classifier (Philipp Rudo) [1725888] - [sound] ALSA: bebob: fix to detect configured source of sampling clock for Focusrite Saffire Pro i/o series (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: link the order of establishing connections and Syt-match clock mode (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: expand delay of start for IR context just for version 3 firmware (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: expand sleep just after breaking connections for protocol version 1 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC/SOF - enable SND_SOC_SOF_HDA_COMMON_HDMI_CODEC (Jaroslav Kysela) [1710702] - [sound] ALSA: timer: Fix mutex deadlock at releasing card (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using pmc_plt_clk_0 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: eve: Enable mclk and ssp sclk early (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: dt-bindings: rt5682: add button delay device property (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: rt5682: improve the sensitivity of push button (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: bxt_rt298: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: add support for snd-hda-codec-hdmi (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: fix include guard name (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: use snd-hda-codec-hdmi (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: hdac_hda: add support for HDMI/DP as a HDA codec (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/hdmi - implement mst_no_extra_pcms flag (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF - remove the dead code (skylake/kabylake) (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel - fix the card names (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pci: Add prepare/complete PM callbacks (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: Add support for DSP D0i3 state when entering S0ix (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: return -ENOTSUPP if D0I3 is not supported (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: implement suspend/resume for S0ix<->S0 transition (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ignore suspend/resume for D0ix compatible streams (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: implement prepare/complete callbacks (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a flag suspend_ignored for sof stream (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a flag to indicate the system suspend target (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: CNL: add support for sending compact IPC (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: add helpers for setting D0 substate for ADSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: configure D0ix IPC flags in set_power_state (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: HDA: add cAVS specific compact IPC header file (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: Don't read mailbox for PM_GATE reply (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: introduce message for DSP power gating (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: rename sof_send_pm_ipc to sof_send_pm_ctx_ipc (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: HDA: use macro for register polling retry count (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: align the comments for D0I3C update (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: parse and store d0i3_compatible flag (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: token: add tokens for PCM compatible with D0i3 substate (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add flag to snd_sof_pcm_stream for D0i3 compatible stream (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: APL: add set_power_state() ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: CNL: add set_power_state() ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: Add helper for setting DSP D0ix substate (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add set_power_state() to dsp_ops for power state update (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: reset default d0_substate at probe() and resume() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a field to store the current D0 substate of DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: eve: implement set_bias_level function for rt5514 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: only support INFO_BATCH for legacy platforms (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: initial support to JasperLake. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for JSL (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: add dev_err() traces for snd_sof_dsp_read_poll_timeout() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: improve error handling (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: sof: include types.h at header.h (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Fix randbuild error (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: check errors when parsing LED tokens (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: remove always-true redundant test (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: bdw: fix operator precedence warnings (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: byt: fix operator precedence warnings (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: imx: Read ESAI parameters and send them to DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: acpi led support for switch controls (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: imx: Describe ESAI parameters to be sent to DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pci: add debug module param (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: acpi: add debug module param (Jaroslav Kysela) [1710702] - [sound] ALSA: Revert "ASoC: SOF: Force polling mode on CFL and CNL" (Jaroslav Kysela) [1710702] - [sound] ALSA: AsoC: SOF: refactor control load code (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: enable dual control for pga (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: enable sync_write in hdac_bus (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: simple_card_utils.h: Add missing include (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: Add context data to any IPC timeout. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: fix reset of host_period_bytes (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: introduce no_stream_position in sof_ipc_stream_params struct (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: core: check for mandatory fw_ready op during SOF probe (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: retain DSP context after FW exception. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: trace: move to opt-in with Kconfig and module parameter (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Fix 2 front mics of codec 0x623 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Add support for ALC623 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Fix mutex deadlock in HDMI codec driver (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Fix pending unsol events at shutdown (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: Correct a typo in the clock proc string (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: add support for MOTU UltraLite (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: code refactoring to handle model specific switch for protocol v2 (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: minor code refactoring for protocol version 2 (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: detect SPH source of sampling clock (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: print for unknown source of sampling clock (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: fix wrong spelling for macro (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: Fix prototype of helper function to return negative value (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: sound: usb: usb true/false for bool return type (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Allow non-Intel device probe gracefully (Jaroslav Kysela) [1710702] - [sound] ALSA: Revert "ALSA: hda: Flush interrupts on disabling" (Jaroslav Kysela) [1710702] - [sound] ALSA: PCI: Fix missing inline for pci_pr3_present() (Jaroslav Kysela) [1710702] - [sound] ALSA: PCI: Add a helper to check Power Resource Requirements _PR3 existence (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Fix copy&paste error in the validator (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Add DSD support for EVGA NU Audio (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: postpone to start IR context (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: handle several AMDTP streams in callback handler of IRQ target (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: cancel flushing isoc context in the laste step to process context callback (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: replace ack callback to flush isoc contexts in AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: replace pointer callback to flush isoc contexts in AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: add irq_target member into amdtp_domain struct (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: tune the minimum available size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: tune the maximum available size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: schedule hardware IRQ according to the size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: use variable size of queue for isoc packets instead of fixed size (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: use the same size of period for PCM substreams in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: add a member into AMDTP domain for events per period (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Enable headset mic on Asus MJ401TA (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Add support for ALC711 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Force runtime PM on Nvidia HDMI codecs (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Add laptop imic fixup for ASUS M9V laptop (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Add Tigerlake/Jasperlake PCI ID (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a driver (Jaroslav Kysela) [1710702] - [sound] ALSA: hdac: clear link output stream mapping (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: dapm: fix a memory leak bug (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: debug: fix possible memory leak in sof_dfsentry_write() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: sof-rt5682: add a check for devm_clk_get (Jaroslav Kysela) [1710702] - [sound] ALSA: Fix Kconfig indentation (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: control: return true when kcontrol values change (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: fix intel DSP config (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: add Intel DSP configuration / probe code (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: core: Fix pcm code debugfs error (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoc: rockchip: i2s: Fix RPM imbalance (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm_adsp: Don't generate kcontrols without READ flags (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: bytcr_rt5651: add null check to support_button_press (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: add remove function to disable jack (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: rt5682: add NULL handler to set_jack function (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: use separate route map for dmic (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: initialise and verify FW crash dump data. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: fix warnings during FW load (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pcm: harden PCM STOP sequence (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pcm: fix resource leak in hw_free (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: fix parse fail issue for byte/bool tuple types (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: loader: fix kernel oops on firmware boot failure (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm_adsp: Fix theoretical NULL pointer for alg_region (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: max98373: check for device node before parsing (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: soc-component: fix a couple missing error assignments (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm8994: Do not register inapplicable controls for WM1811 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: samsung: arndale: Add missing OF node dereferencing (Jaroslav Kysela) [1710702] - [infiniband] RDMA/bnxt_re: Fix spelling mistake "missin_resp" -> "missing_resp" (Kamal Heib) [1724772] - [infiniband] RDMA: Fix goto target to release the allocated memory (Kamal Heib) [1724772] - [infiniband] IB/bnxt_re: Do not notifify GID change event (Kamal Heib) [1724772] - [infiniband] RDMA/bnxt_re: Honor vlan_id in GID entry comparison (Kamal Heib) [1724772] - [infiniband] ib/bnxt: Remove mention of idr_alloc from comment (Kamal Heib) [1724772] - [infiniband] RDMA/bnxt_re: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1724772] - [infiniband] bnxt_re: Clean cq for kernel consumers only (Kamal Heib) [1724772] - [infiniband] bnxt_re: fix the regression due to changes in alloc_pbl (Kamal Heib) [1724772] - [scsi] scsi: lpfc: Make lpfc_debugfs_ras_log_data static (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix NULL check before mempool_destroy is not needed (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix spelling error in MAGIC_NUMER_xxx (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix build error of lpfc_debugfs.c for vfree/vmalloc (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: lpfc_nvmet: Fix Use plain integer as NULL pointer (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: lpfc_attr: Fix Use plain integer as NULL pointer (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.0 (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add additional discovery log messages (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add FC-AL support to lpe32000 models (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add FA-WWN Async Event reporting (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add log macros to allow print by serverity or verbosity setting (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Make FW logging dynamically configurable (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Revise interrupt coalescing for missing scenarios (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Remove lock contention target write path (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Slight fast-path performance optimizations (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix coverity error of dereference after null check (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix hardlockup in lpfc_abort_handler (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix bad ndlp ptr in xri aborted handling (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix SLI3 hba in loop mode not discovering devices (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix lockdep errors in sli_ringtx_put (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix reporting of read-only fw error errors (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix lpfc_nvmet_mrq to be bound by hdw queue count (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Make function lpfc_defer_pt2pt_acc static (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: add support for posting FC events on FPIN reception (Dick Kennedy) [1768102] - [infiniband] RDMA/siw: Mark Software iWARP Driver as tech-preview (Kamal Heib) [1767292] - [crypto] crypto: ccp - Replace dma_pool_alloc + memset with dma_pool_zalloc (Gary Hook) [1724859] - [crypto] crypto: ccp/gcm - use const time tag comparison. (Gary Hook) [1724859] - [crypto] crypto: ccp - Switch to SPDX license identifiers (Gary Hook) [1724859] - [crypto] crypto: ccp - Validate the the error value used to index error messages (Gary Hook) [1724859] - [crypto] crypto: ccp - Make ccp_register_rsa_alg static (Gary Hook) [1724859] - [crypto] crypto: ccp - Update copyright notices and dates (Gary Hook) [1724859] - [crypto] cross-tree: phase out dma_zalloc_coherent() (Gary Hook) [1724859] - [x86] x86/umwait: Fix error handling in umwait_init() (Steve Best) [1724525] - [documentation] Documentation/ABI: Document umwait control sysfs interfaces (Steve Best) [1724525] - [x86] x86/umwait: Add sysfs interface to control umwait maximum time (Steve Best) [1724525] - [x86] x86/umwait: Add sysfs interface to control umwait C0.2 state (Steve Best) [1724525] - [x86] x86/umwait: Initialize umwait control values (Steve Best) [1724525] - [x86] x86/cpufeatures: Enumerate user wait instructions (Steve Best) [1724525] - [fs] virtiofs: Remove set but not used variable 'fc' (Vivek Goyal) [1694161] - [fs] virtiofs: Retry request submission from worker context (Vivek Goyal) [1694161] - [fs] virtiofs: Count pending forgets as in_flight forgets (Vivek Goyal) [1694161] - [fs] virtiofs: Set FR_SENT flag only after request has been sent (Vivek Goyal) [1694161] - [fs] virtiofs: No need to check fpq->connected state (Vivek Goyal) [1694161] - [fs] virtiofs: Do not end request in submission context (Vivek Goyal) [1694161] - [fs] fuse: don't advise readdirplus for negative lookup (Vivek Goyal) [1694161] - [fs] fuse: don't dereference req->args on finished request (Vivek Goyal) [1694161] - [fs] virtio-fs: don't show mount options (Vivek Goyal) [1694161] - [fs] virtio-fs: Change module name to virtiofs.ko (Vivek Goyal) [1694161] - [include] bitops: protect variables in bit_clear_unless() macro (Vivek Goyal) [1694161] - [include] bitops: protect variables in set_mask_bits() macro (Vivek Goyal) [1694161] - [fs] fuse: Make fuse_args_to_req static (Vivek Goyal) [1694161] - [fs] fuse: fix memleak in cuse_channel_open (Vivek Goyal) [1694161] - [fs] fuse: fix beyond-end-of-page access in fuse_parse_cache() (Vivek Goyal) [1694161] - [fs] fuse: unexport fuse_put_request (Vivek Goyal) [1694161] - [fs] fuse: kmemcg account fs data (Vivek Goyal) [1694161] - [fs] fuse: on 64-bit store time in d_fsdata directly (Vivek Goyal) [1694161] - [fs] fuse: fix missing unlock_page in fuse_writepage() (Vivek Goyal) [1694161] - [fs] virtio-fs: add virtiofs filesystem (Vivek Goyal) [1694161] - [fs] fuse: allow skipping control interface and forced unmount (Vivek Goyal) [1694161] - [fs] fuse: dissociate DESTROY from fuseblk (Vivek Goyal) [1694161] - [fs] fuse: delete dentry if timeout is zero (Vivek Goyal) [1694161] - [fs] fuse: separate fuse device allocation and installation in fuse_conn (Vivek Goyal) [1694161] - [fs] fuse: add fuse_iqueue_ops callbacks (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_fill_super_common() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_dequeue_forget() function (Vivek Goyal) [1694161] - [fs] fuse: export fuse_get_unique() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_send_init_request() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_len_args() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_end_request() (Vivek Goyal) [1694161] - [fs] fuse: fix request limit (Vivek Goyal) [1694161] - [fs] fuse: stop copying pages to fuse_req (Vivek Goyal) [1694161] - [fs] fuse: stop copying args to fuse_req (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_req (Vivek Goyal) [1694161] - [fs] fuse: simplify request allocation (Vivek Goyal) [1694161] - [fs] fuse: unexport request ops (Vivek Goyal) [1694161] - [fs] fuse: convert retrieve to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert release to simple api (Vivek Goyal) [1694161] - [fs] cuse: convert init to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert init to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert writepages to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert readdir to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert readpages to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert direct_io to simple api (Vivek Goyal) [1694161] - [fs] fuse: add simple background helper (Vivek Goyal) [1694161] - [fs] fuse: convert sync write to simple api (Vivek Goyal) [1694161] - [fs] fuse: covert readpage to simple api (Vivek Goyal) [1694161] - [fs] fuse: fuse_short_read(): don't take fuse_req as argument (Vivek Goyal) [1694161] - [fs] fuse: convert ioctl to simple api (Vivek Goyal) [1694161] - [fs] fuse: move page alloc (Vivek Goyal) [1694161] - [fs] fuse: convert readlink to simple api (Vivek Goyal) [1694161] - [fs] fuse: add pages to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert destroy to simple api (Vivek Goyal) [1694161] - [fs] fuse: add nocreds to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert fuse_force_forget() to simple api (Vivek Goyal) [1694161] - [fs] fuse: add noreply to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert flush to simple api (Vivek Goyal) [1694161] - [fs] fuse: simplify 'nofail' request (Vivek Goyal) [1694161] - [fs] fuse: rearrange and resize fuse_args fields (Vivek Goyal) [1694161] - [fs] fuse: flatten 'struct fuse_args' (Vivek Goyal) [1694161] - [fs] fuse: fix deadlock with aio poll and fuse_iqueue::waitq.lock (Vivek Goyal) [1694161] - [fs] cuse: fix broken release (Vivek Goyal) [1694161] - [fs] fuse: cleanup fuse_wait_on_page_writeback (Vivek Goyal) [1694161] - [fs] fuse: require /dev/fuse reads to have enough buffer capacity (take 2) (Vivek Goyal) [1694161] - [fs] Revert "fuse: require /dev/fuse reads to have enough buffer capacity" (Vivek Goyal) [1694161] - [fs] fuse: extract helper for range writeback (Vivek Goyal) [1694161] - [fs] fuse: add FUSE_WRITE_KILL_PRIV (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_alloc_inode (Vivek Goyal) [1694161] - [fs] fuse: Add ioctl flag for x32 compat ioctl (Vivek Goyal) [1694161] - [fs] fuse: document fuse_fsync_in.fsync_flags (Vivek Goyal) [1694161] - [fs] fuse: require /dev/fuse reads to have enough buffer capacity (Vivek Goyal) [1694161] - [fs] fuse: retrieve: cap requested size to negotiated max_write (Vivek Goyal) [1694161] - [fs] fuse: allow filesystems to have precise control over data cache (Vivek Goyal) [1694161] - [fs] fuse: convert printk -> pr_* (Vivek Goyal) [1694161] - [fs] fuse: fix writepages on 32bit (Vivek Goyal) [1694161] - [fs] fuse: cache readdir calls if filesystem opts out of opendir (Vivek Goyal) [1694161] - [fs] fuse: support clients that don't implement 'opendir' (Vivek Goyal) [1694161] - [fs] fuse: lift bad inode checks into callers (Vivek Goyal) [1694161] - [fs] fuse: multiplex cached/direct_io file operations (Vivek Goyal) [1694161] - [fs] fuse add copy_file_range to direct io fops (Vivek Goyal) [1694161] - [fs] fuse: use iov_iter based generic splice helpers (Vivek Goyal) [1694161] - [fs] fuse: Switch to using async direct IO for FOPEN_DIRECT_IO (Vivek Goyal) [1694161] - [fs] fuse: use atomic64_t for khctr (Vivek Goyal) [1694161] - [fs] fuse: clean up aborted (Vivek Goyal) [1694161] - [fs] fuse: Protect ff->reserved_req via corresponding fi->lock (Vivek Goyal) [1694161] - [fs] fuse: Protect fi->nlookup with fi->lock (Vivek Goyal) [1694161] - [fs] fuse: Introduce fi->lock to protect write related fields (Vivek Goyal) [1694161] - [fs] fuse: Convert fc->attr_version into atomic64_t (Vivek Goyal) [1694161] - [fs] fuse: Add fuse_inode argument to fuse_prepare_release() (Vivek Goyal) [1694161] - [fs] fuse: Verify userspace asks to requeue interrupt that we really sent (Vivek Goyal) [1694161] - [fs] fuse: Do some refactoring in fuse_dev_do_write() (Vivek Goyal) [1694161] - [fs] fuse: Wake up req->waitq of only if not background (Vivek Goyal) [1694161] - [fs] fuse: Optimize request_end() by not taking fiq->waitq.lock (Vivek Goyal) [1694161] - [fs] fuse: Kill fasync only if interrupt is queued in queue_interrupt() (Vivek Goyal) [1694161] - [fs] fuse: Remove stale comment in end_requests() (Vivek Goyal) [1694161] - [fs] fuse: Replace page without copying in fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: fix leaked aux requests (Vivek Goyal) [1694161] - [fs] fuse: only reuse auxiliary request in fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_find_writeback() helper (Vivek Goyal) [1694161] - [fs] cuse: fix ioctl (Vivek Goyal) [1694161] - [fs] fuse: Fix memory leak in fuse_dev_free() (Vivek Goyal) [1694161] - [fs] fuse: fix revalidation of attributes for permission check (Vivek Goyal) [1694161] - [fs] fuse: fix fsync on directory (Vivek Goyal) [1694161] - [fs] fuse: Add bad inode check in fuse_destroy_inode() (Vivek Goyal) [1694161] - [fs] fuse: enable caching of symlinks (Vivek Goyal) [1694161] - [fs] fuse: only invalidate atime in direct read (Vivek Goyal) [1694161] - [fs] fuse: realloc page array (Vivek Goyal) [1694161] - [fs] fuse: add max_pages to init_out (Vivek Goyal) [1694161] - [fs] fuse: allocate page array more efficiently (Vivek Goyal) [1694161] - [fs] fuse: reduce size of struct fuse_inode (Vivek Goyal) [1694161] - [fs] fuse: use iversion for readdir cache verification (Vivek Goyal) [1694161] - [fs] fuse: use mtime for readdir cache verification (Vivek Goyal) [1694161] - [fs] fuse: add readdir cache version (Vivek Goyal) [1694161] - [fs] fuse: allow using readdir cache (Vivek Goyal) [1694161] - [fs] fuse: allow caching readdir (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_emit() helper (Vivek Goyal) [1694161] - [fs] fuse: add FOPEN_CACHE_DIR (Vivek Goyal) [1694161] - [fs] fuse: split out readdir.c (Vivek Goyal) [1694161] - [fs] fuse: Use hash table to link processing request (Vivek Goyal) [1694161] - [fs] fuse: kill req->intr_unique (Vivek Goyal) [1694161] - [fs] fuse: change interrupt requests allocation algorithm (Vivek Goyal) [1694161] - [fs] fuse: do not take fc->lock in fuse_request_send_background() (Vivek Goyal) [1694161] - [fs] fuse: introduce fc->bg_lock (Vivek Goyal) [1694161] - [fs] fuse: add locking to max_background and congestion_threshold changes (Vivek Goyal) [1694161] - [fs] fuse: use READ_ONCE on congestion_threshold and max_background (Vivek Goyal) [1694161] - [fs] fuse: use list_first_entry() in flush_bg_queue() (Vivek Goyal) [1694161] - [fs] fuse: reduce allocation size for splice_write (Vivek Goyal) [1694161] - [fs] fuse: use kvmalloc to allocate array of pipe_buffer structs. (Vivek Goyal) [1694161] - [fs] fuse: convert last timespec use to timespec64 (Vivek Goyal) [1694161] - [fs] fs: fuse: Adding new return type vm_fault_t (Vivek Goyal) [1694161] - [fs] fuse: simplify fuse_abort_conn() (Vivek Goyal) [1694161] - [infiniband] RDMA/siw: Fix IPv6 addr_list locking (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix 64/32bit pointer inconsistency (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix SGL mapping issues (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix potential NULL de-ref (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Change CQ flags from 64->32 bits (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix a memory leak in siw_init_cpulist() (Kamal Heib) [1725830 1720892] - [infiniband] Do not dereference 'siw_crypto_shash' before checking (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Remove set but not used variables 'rv' (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix error return code in siw_init_module() (Kamal Heib) [1725830 1720892] - [infiniband] RMDA/siw: Require a 64 bit arch (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Mark expected switch fall-throughs (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Remove set but not used variable 's' (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Add missing dependencies on LIBCRC32C and DMA_VIRT_OPS (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Add missing rtnl_lock around access to ifa (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Use proper enumerated type in map_cqe_status (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Remove unnecessary kthread create/destroy printouts (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix DEFINE_PER_CPU compilation when ARCH_NEEDS_WEAK_PER_CPU (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: addition to kernel build environment (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: completion queue methods (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: receive path (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: transmit path (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: queue pair methods (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: application buffer management (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: application interface (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: connection management (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: network and RDMA core interface (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: main include file (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: iWarp wire packet format (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/cma: fix null-ptr-deref Read in cma_cleanup (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Rewrite PID namespace check to be reliable (Kamal Heib) [1720892] - [infiniband] RDMA/counters: Properly implement PID checks (Kamal Heib) [1720892] - [infiniband] IB/core: Fix NULL pointer dereference when bind QP to counter (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Fix MR npages calculation for IB_ACCESS_HUGETLB (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix error code in stat_get_doit_qp() (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Prevent QP counter binding if counters unsupported (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix -Wunused-const-variable warnings (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Added configuration of RDMA dynamic interrupt moderation to netlink (Kamal Heib) [1720892] - [infiniband] RDMA/core: Provide RDMA DIM support for ULPs (Kamal Heib) [1720892] - [infiniband] linux/dim: Implement RDMA adaptive moderation (DIM) (Kamal Heib) [1720892] - [infiniband] IB/mad: Fix use-after-free in ib mad completion handling (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Track driver QP types in resource tracker (Kamal Heib) [1720892] - [infiniband] RDMA/devices: Remove the lock around remove_client_context (Kamal Heib) [1720892] - [infiniband] RDMA/devices: Do not deadlock during client removal (Kamal Heib) [1720892] - [infiniband] IB/core: Add mitigation for Spectre V1 (Kamal Heib) [1720892] - [infiniband] IB/counters: Always initialize the port counter object (Kamal Heib) [1720892] - [infiniband] IB/core: Fix querying total rdma stats (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix race when resolving IP address (Kamal Heib) [1720892] - [infiniband] xprtrdma: Modernize ops->connect (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove rpcrdma_req::rl_buffer (Kamal Heib) [1720892] - [infiniband] xprtrdma: Refactor chunk encoding (Kamal Heib) [1720892] - [infiniband] xprtrdma: Streamline rpcrdma_post_recvs (Kamal Heib) [1720892] - [infiniband] xprtrdma: Simplify rpcrdma_rep_create (Kamal Heib) [1720892] - [infiniband] xprtrdma: Wake RPCs directly in rpcrdma_wc_send path (Kamal Heib) [1720892] - [infiniband] xprtrdma: Reduce context switching due to Local Invalidation (Kamal Heib) [1720892] - [infiniband] xprtrdma: Add mechanism to place MRs back on the free list (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove fr_state (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove the RPCRDMA_REQ_F_PENDING flag (Kamal Heib) [1720892] - [infiniband] xprtrdma: Fix occasional transport deadlock (Kamal Heib) [1720892] - [infiniband] xprtrdma: Replace use of xdr_stream_pos in rpcrdma_marshal_req (Kamal Heib) [1720892] - [infiniband] xprtrdma: Fix use-after-free in rpcrdma_post_recvs (Kamal Heib) [1720892] - [infiniband] RDMA/core: Make rdma_counter.h compile stand alone (Kamal Heib) [1720892] - [infiniband] IB/core: Work on the caller socket net namespace in nldev_newlink() (Kamal Heib) [1663224 1720892] - [infiniband] RDMA/rxe: Fill in wc byte_len with IB_WC_RECV_RDMA_WITH_IMM (Kamal Heib) [1720892] - [infiniband] ibverbs/rxe: Remove variable self-initialization (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow get default counter statistics through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow get counter mode through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow counter manual mode configration through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Allow manual mode configuration support (Kamal Heib) [1720892] - [infiniband] RDMA/core: Get sum value of all counters when perform a sysfs stat read (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Implement counter dumpit calback (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow counter auto mode configration through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Add "auto" configuration mode support (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Add set/clear per-port auto mode support (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Make is_visible_in_pid_ns() as an API (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Add an API to attach a task to a resource (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Introduce statistic counter (Kamal Heib) [1720892] - [infiniband] IB/ipoib: Add child to parent list only if device initialized (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: remove redundant assignment to variable ret (Kamal Heib) [1720892] - [infiniband] IB/ipoib: Remove memset after vzalloc in ipoib_cm.c (Kamal Heib) [1720892] - [infiniband] IB: Remove unneeded memset (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Audit policy settings for netlink attributes (Kamal Heib) [1720892] - [infiniband] docs: infiniband: convert docs to ReST and rename to *.rst (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Use IB_WR_REG_MR_INTEGRITY for PI handover (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Introduce rdma_rw_inv_key helper (Kamal Heib) [1720892] - [infiniband] RDMA/core: Validate integrity handover device cap (Kamal Heib) [1720892] - [infiniband] RDMA/core: Rename signature qp create flag and signature device capability (Kamal Heib) [1720892] - [infiniband] RDMA/core: Add an integrity MR pool support (Kamal Heib) [1720892] - [infiniband] IB/iser: Unwind WR union at iser_tx_desc (Kamal Heib) [1720892] - [infiniband] IB/iser: Use IB_WR_REG_MR_INTEGRITY for PI handover (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Introduce and implement new IB_WR_REG_MR_INTEGRITY work request (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Update set_sig_data_segment attribute for new signature API (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Pass UMR segment flags instead of boolean (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Add attr for max number page list length for PI operation (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Implement mlx5_ib_map_mr_sg_pi and mlx5_ib_alloc_mr_integrity (Kamal Heib) [1720892] - [infiniband] RDMA/core: Add signature attrs element for ib_mr structure (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce ib_map_mr_sg_pi to map data/protection sgl's (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce IB_MR_TYPE_INTEGRITY and ib_alloc_mr_integrity API (Kamal Heib) [1720892] - [infiniband] RDMA/core: Save the MR type in the ib_mr structure (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce new header file for signature operations (Kamal Heib) [1720892] - [infiniband] RDMA/odp: Do not leak dma maps when working with huge pages (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: Use offsetofend instead of opencoding (Kamal Heib) [1720892] - [infiniband] [scsi] scsi: RDMA/srp: Fix a sleep-in-invalid-context bug (Kamal Heib) [1720892] - [infiniband] RDMA: Check umem pointer validity prior to release (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Remove asynchronic QP destroy (Kamal Heib) [1720892] - [infiniband] RDMA: Convert destroy_wq to be void (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Resort policy array (Kamal Heib) [1720892] - [infiniband] RDMA: Report available cdevs through RDMA_NLDEV_CMD_GET_CHARDEV (Kamal Heib) [1720892] - [infiniband] RDMA: Add NLDEV_GET_CHARDEV to allow char dev discovery and autoload (Kamal Heib) [1720892] - [infiniband] ipoib: correcly show a VF hardware address (Kamal Heib) [1720892] - [infiniband] RDMA: Move rdma_node_type to uapi/ (Kamal Heib) [1720892] - [infiniband] rdma: Remove nes (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: Remove check for ETH_SS_TEST (Kamal Heib) [1720892] - [infiniband] RDMA: Convert CQ allocations to be under core responsibility (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Return correct error code from hns_roce_v1_rsv_lp_qp() (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Don't expose DMA addresses (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb4: Don't expose DMA addresses (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Use sizeof() notation instead of plain sizeof (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA: Clear CQ objects during their allocation (Kamal Heib) [1720892] - [infiniband] RDMA: Clean destroy CQ in drivers do not return errors (Kamal Heib) [1720892] - [infiniband] RDMA/i40iw: Remove useless NULL checks (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Delete and properly mark unimplemented resize CQ function (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Avoid memory allocation during CQ destroy (Kamal Heib) [1720892] - [infiniband] RDMA: Move owner into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] RDMA: Move uverbs_abi_ver into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] RDMA: Move driver_id into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] rdma: Delete the ib_ucm module (Kamal Heib) [1720892] - [infiniband] ucma: Convert ctx_idr to XArray (Kamal Heib) [1720892] - [infiniband] ucma: Convert multicast_idr to XArray (Kamal Heib) [1720892] - [infiniband] RDMA/ucma: Use struct_size() helper (Kamal Heib) [1720892] - [infiniband] RDMA/srp: Accept again source addresses that do not have a port number (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: implement ethtool .get_link() callback (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: check for allocation failure in uapi_add_elm() (Kamal Heib) [1720892] - [infiniband] RDMA: Convert put_page() to put_user_page*() (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Remove second wait queue initialization call (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Remove useless NULL checks (Kamal Heib) [1720892] - [infiniband] RDMA/core: Make ib_destroy_cq() void (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: Remove check of destroy CQ (Kamal Heib) [1720892] - [infiniband] RDMA/core: Return void from ib_device_check_mandatory() (Kamal Heib) [1720892] - [infiniband] RDMA/umem: Move page_shift from ib_umem to ib_odp_umem (Kamal Heib) [1720892] - [infiniband] RDMA/qedr: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb4: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix doc typo (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Add info regarding SG count failure (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Print the correct number of sig MRs (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Fix doc typo (Kamal Heib) [1720892] - [infiniband] IB/isert: Remove unused sig_attrs argument (Kamal Heib) [1720892] - [infiniband] IB/iser: Remove unused sig_attrs argument (Kamal Heib) [1720892] - [infiniband] IB/iser: Refactor iscsi_iser_check_protection function (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Entropy in admin commands id (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Print address on AH creation failure (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Be consistent with success flow return value (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use API to get contiguous memory blocks aligned to device supported page size (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove unused includes (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use rdma block iterator in chunk list creation (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove unneeded admin commands abort flow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use kvzalloc instead of kzalloc with fallback (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove check that prevents destroy of resources in error flows (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Handle mmap insertions overflow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Fix success return value in case of error (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove MAYEXEC flag check from mmap flow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add driver to Kconfig/Makefile (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa module (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add EFA verbs implementation (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add common command handlers (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Implement functions that submit and complete admin commands (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the ABI definitions (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the com service API definitions (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa_com.h file (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa.h header file (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add EFA device definitions (Kamal Heib) [1720892] - [infiniband] RDMA: Add EFA related definitions (Kamal Heib) [1720892] - [fs] CIFS: Fix use after free of file info structures (Dave Wysochanski) [1757865] - [mm] mm, memory_hotplug: fix scan_movable_pages() for gigantic hugepages (Rafael Aquini) [1730172] - [char] ipmi: Don't allow device module unload when in use (Tony Camuso) [1759916] - [netdrv] net: phy: Also request modules for C45 IDs (Gary Hook) [1764274] - [s390] s390/dasd: Fix error handling during online processing (Philipp Rudo) [1764492] - [s390] s390/cpumsf: Check for CPU Measurement sampling (Philipp Rudo) [1764490] - [edac] EDAC/amd64: Support asymmetric dual-rank DIMMs (Gary Hook) [1753384] - [edac] EDAC/amd64: Cache secondary Chip Select registers (Gary Hook) [1753384] - [edac] EDAC/amd64: Decode syndrome before translating address (Gary Hook) [1753384] - [edac] EDAC/amd64: Find Chip Select memory size using Address Mask (Gary Hook) [1753384] - [edac] EDAC/amd64: Initialize DIMM info for systems with more than two channels (Gary Hook) [1753384] - [edac] EDAC/amd64: Recognize DRAM device type ECC capability (Gary Hook) [1753384] - [edac] EDAC/amd64: Support more than two controllers for chip selects handling (Gary Hook) [1753384] - [scsi] scsi: fnic: fix msix interrupt allocation (Govindarajulu Varadarajan) [1745083] - [scsi] scsi: fnic: print port speed only at driver init or speed change (Govindarajulu Varadarajan) [1745083] - [netdrv] qmi_wwan: apply SET_DTR quirk to Sierra WP7607 (Lubomir Rintel) [1729083]- [tools] libbpf: remove compile time warning from libbpf_util.h (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove dependency on barrier.h in xsk.h (Yauheni Kaliuta) [1747341] - [kernel] seccomp, bpf: disable preemption before calling into bpf prog (Yauheni Kaliuta) [1747341] - [lib] bpf: test_bpf: turn off preemption in function __run_once (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove unnecessary cast-to-void (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix sysctl.c warning (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix using uninitialized ioctl results (Yauheni Kaliuta) [1747341] - [tools] libbpf: proper XSKMAP cleanup (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix invalid munmap call (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix XDP socket ring buffer memory ordering (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove likely/unlikely in xsk.h (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: xdp_redirect, correctly get dummy program id (Yauheni Kaliuta) [1747341] - [net] bpf: fix access to skb_shared_info->gso_segs (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix out of bounds backwards jmps due to dead code removal (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix use after free in prog symbol exposure (Yauheni Kaliuta) [1747341] - [include] bpf: Fix preempt_enable_no_resched() abuse (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test cases for pkt/null checks in subprogs (Yauheni Kaliuta) [1747341] - [kernel] bpf: mark registers in all frames after pkt/null checks (Yauheni Kaliuta) [1747341] - [tools] libbpf: add binary to gitignore (Yauheni Kaliuta) [1747341] - [net] bpf: Check address length before reading address family (Yauheni Kaliuta) [1747341] - [net] flow_dissector: disable preemption around BPF calls (Yauheni Kaliuta) [1747341] - [net] flow_dissector: switch kernel context to struct bpf_flow_dissector (Yauheni Kaliuta) [1747341] - [net] flow_dissector: fix clamping of BPF flow_keys for non-zero nhoff (Yauheni Kaliuta) [1747341] - [net] flow_dissector: allow access only to a subset of __sk_buff fields (Yauheni Kaliuta) [1747341] - [net] net/flow_dissector: pass flow_keys->n_proto to BPF programs (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix vlan handling in flow dissector program (Yauheni Kaliuta) [1747341] - [tools] bpf, libbpf: fix quiet install_headers (Yauheni Kaliuta) [1747341] - [tools] libbpf: add libelf dependency to shared library build (Yauheni Kaliuta) [1747341] - [tools] libbpf: add xsk.h to install_headers target (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add btf_dedup test for VOID equivalence check (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix btf_dedup equivalence check handling of different kinds (Yauheni Kaliuta) [1747341] - [documentation] bpf, doc: fix BTF docs reflow of bullet list (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test case for invalid call stack in dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: remove incorrect 'verifier bug' warning (Yauheni Kaliuta) [1747341] - [kernel] bpf: Only print ref_obj_id for refcounted reg (Yauheni Kaliuta) [1747341] - [tools] tool: use bpf_program__get_prog_info_linear() in prog.c:do_dump() (Yauheni Kaliuta) [1747341] - [tools] tools lib bpf: Introduce bpf_program__get_prog_info_linear() (Yauheni Kaliuta) [1747341] - [tools] perf tools: Fix errors under optimization level '-Og' (Yauheni Kaliuta) [1747341] - [kernel] bpf: Try harder when allocating memory for large maps (Yauheni Kaliuta) [1747341] - [tools] tools: bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add fwd enum resolution test for btf_dedup (Yauheni Kaliuta) [1747341] - [tools] btf: resolve enum fwds in btf_dedup (Yauheni Kaliuta) [1747341] - [tools] bpf: Add an example for bpf_get_listener_sock (Yauheni Kaliuta) [1747341] - [tools] bpf: Test ref release issue in bpf_tcp_sock and bpf_sk_fullsock (Yauheni Kaliuta) [1747341] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747341] - [net] bpf: Add bpf_get_listener_sock(struct bpf_sock *sk) helper (Yauheni Kaliuta) [1747341] - [kernel] bpf: Fix bpf_tcp_sock and bpf_sk_fullsock issue related to bpf_sk_release (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix to reject unknown flags in xsk_socket__create() (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix segfault of test_progs when prog loading failed (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix replace_map_fd_with_map_ptr's ldimm64 second imm field (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: test_progs: initialize duration in singal_pending test (Yauheni Kaliuta) [1747341] - [tools] libbpf: force fixdep compilation at the start of the build (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: fix compilation with out-of-tree $(OUTPUT) (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test that GSO works in lwt_ip_encap (Yauheni Kaliuta) [1747341] - [bpf] bpf: hbm: fix spelling mistake "deault" -> "default" (Yauheni Kaliuta) [1747341] - [tools] bpf: add test cases for non-pointer sanitiation logic (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - misc (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - spinlock (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - tracepoint (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - stackmap (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - xdp (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - pkt access (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - preparations (Yauheni Kaliuta) [1747341] - [bpf] bpf: HBM test script (Yauheni Kaliuta) [1747341] - [bpf] bpf: User program for testing HBM (Yauheni Kaliuta) [1747341] - [bpf] bpf: Sample HBM BPF program to limit egress bw (Yauheni Kaliuta) [1747341] - [include] bpf: sync bpf.h to tools and update bpf_helpers.h (Yauheni Kaliuta) [1747341] - [net] bpf: add bpf helper bpf_skb_ecn_set_ce (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: silence compiler warning for xdpsock_user.c (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: set unlimited RLIMIT_MEMLOCK for test_sock_fields (Yauheni Kaliuta) [1747341] - [documentation] docs/bpf: minor casing/punctuation fixes (Yauheni Kaliuta) [1747341] - [documentation] docs/btf: reflow text to fill up to 78 characters (Yauheni Kaliuta) [1747341] - [documentation] docs/btf: fix typos, improve wording (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix u64_stats_init() usage in bpf_prog_alloc() (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add btf_dedup test of FWD/STRUCT resolution (Yauheni Kaliuta) [1747341] - [tools] btf: allow to customize dedup hash table size (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix formatting for btf_ext__get_raw_data (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix btf_dedup testing code (Yauheni Kaliuta) [1747341] - [tools] tools: libbpf: make sure readelf shows full names in build checks (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: use libbpf where easy (Yauheni Kaliuta) [1747341] - [tools] tools: libbpf: add a correctly named define for map iteration (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: remove load_sock_ops in favour of bpftool (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: force IPv4 in ping (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: use __bpf_constant_htons in test_prog.c for flow dissector (Yauheni Kaliuta) [1747341] - [tools] bpf: add missing entries to bpf_helpers.h (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: selftests: add map lookup to test_map_in_map bpf prog (Yauheni Kaliuta) [1747341] - [kernel] bpf: set inner_map_meta->spin_lock_off correctly (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: fix: broken sample regarding removed function (Yauheni Kaliuta) [1747341] - [tools] tools/bpftool: recognize bpf_prog_info run_time_ns and run_cnt (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync bpf.h into tools (Yauheni Kaliuta) [1747341] - [kernel] bpf: expose program stats via bpf_prog_info (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix build without bpf_syscall (Yauheni Kaliuta) [1747341] - [kernel] bpf: enable program stats (Yauheni Kaliuta) [1747341] - [kernel] bpf: check that BPF programs run with preemption disabled (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: convert xdpsock to use libbpf for AF_XDP access (Yauheni Kaliuta) [1747341] - [tools] libbpf: add support for using AF_XDP sockets (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: make sure signal interrupts BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Fix dummy program unloading for xdp_redirect samples (Yauheni Kaliuta) [1747341] - [s390] s390/net: convert pnetids to ascii (Yauheni Kaliuta) [1747341] - [net] bpf: add skb->queue_mapping write access from tc clsact (Yauheni Kaliuta) [1747341] - [tools] tools/libbpf: support bigger BTF data sizes (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: test_lwt_ip_encap: add negative tests. (Yauheni Kaliuta) [1747341] - [tools] libbpf: Introduce bpf_object__btf (Yauheni Kaliuta) [1747341] - [tools] libbpf: Introduce bpf_map__resize (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: replace bzero with memset (Yauheni Kaliuta) [1747341] - [net] net: fix GSO in bpf_lwt_push_ip_encap (Yauheni Kaliuta) [1747341] - [net] net: fix double-free in bpf_lwt_xmit_reroute (Yauheni Kaliuta) [1747341] - [net] bpf: fix memory leak in bpf_lwt_xmit_reroute (Yauheni Kaliuta) [1747341] - [net] bpf: make LWTUNNEL_BPF dependent on INET (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add test_lwt_ip_encap selftest (Yauheni Kaliuta) [1747341] - [include] bpf: sync /include/.../bpf.h with tools/include/.../bpf.h (Yauheni Kaliuta) [1747341] - [net] bpf: add handling of BPF_LWT_REROUTE to lwt_bpf.c (Yauheni Kaliuta) [1747341] - [net] ipv6_stub: add ipv6_route_input stub/proxy. (Yauheni Kaliuta) [1747341] - [net] bpf: handle GSO in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: implement BPF_LWT_ENCAP_IP mode in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: add plumbing for BPF_LWT_ENCAP_IP in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: offload: add priv field for drivers (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: doc, add text about feature-subcommand (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: relax sub-register mode compilation criteria (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: centre kernel bpf objects under new subdir "progs" (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: extend sub-register mode compilation to all bpf object files (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add "alu32" to .gitignore (Yauheni Kaliuta) [1747341] - [tools] bpf: Add test_sock_fields for skb->sk and bpf_tcp_sock (Yauheni Kaliuta) [1747341] - [tools] bpf: Add skb->sk, bpf_sk_fullsock and bpf_tcp_sock tests to test_verifer (Yauheni Kaliuta) [1747341] - [nclude] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747341] - [kernel] bpf: Add struct bpf_tcp_sock and BPF_FUNC_tcp_sock (Yauheni Kaliuta) [1747341] - [net] bpf: Refactor sock_ops_convert_ctx_access (Yauheni Kaliuta) [1747341] - [net] bpf: Add state, dst_ip4, dst_ip6 and dst_port to bpf_sock (Yauheni Kaliuta) [1747341] - [kernel] bpf: Add a bpf_sock pointer to __sk_buff and a bpf_sk_fullsock helper (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: remove btf__get_strings() superseded by raw data API (Yauheni Kaliuta) [1747341] - [tools] btf: expose API to work with raw btf_ext data (Yauheni Kaliuta) [1747341] - [tools] btf: expose API to work with raw btf data (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add log_level to bpf_load_program_attr (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add missing strings.h include (Yauheni Kaliuta) [1747341] - [s390] s390/net: move pnet constants (Yauheni Kaliuta) [1747341] - [tools] bpf: test_maps: fix possible out of bound access warning (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: doc, fix incorrect text (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test reading the offloaded program (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add test for mixing generic and offload XDP (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: print traceback when test fails (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix the expected messages (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add const qualifier to btf__get_map_kv_tids() map_name parameter (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add "any alignment" annotation for some tests (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: use localhost in tcp_{server, client}.py (Yauheni Kaliuta) [1747341] - [s390] s390: bpf: fix JMP32 code-gen (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: remove generated verifier/tests.h on 'make clean' (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Check the prog id before exiting (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Add a "force" flag to XDP samples (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Extend RLIMIT_MEMLOCK for xdp_{sample_pkts, router_ipv4} (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Convert XDP samples to libbpf usage (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: xdp_redirect_cpu have not need for read_trace_pipe (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test for BPF_F_LOCK (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync uapi/bpf.h (Yauheni Kaliuta) [1747341] - [kernel] bpf: introduce BPF_F_LOCK flag (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add bpf_spin_lock C test (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add simple BPF_PROG_TEST_RUN examples for flow dissector (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add bpf_spin_lock verifier tests (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync include/uapi/linux/bpf.h (Yauheni Kaliuta) [1747341] - [kernel] bpf: add support for bpf_spin_lock to cgroup local storage (Yauheni Kaliuta) [1747341] - [kernel] bpf: introduce bpf_spin_lock (Yauheni Kaliuta) [1747341] - [net] bpf: Correctly annotate implicit fall through in bpf_base_func_proto (Yauheni Kaliuta) [1747341] - [kernel] bpf, cgroups: clean up kerneldoc warnings (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix bitrotted kerneldoc (Yauheni Kaliuta) [1747341] - [include] bpf: BPF_PROG_TYPE_CGROUP_{SKB, SOCK, SOCK_ADDR} require cgroups enabled (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: mark verifier test that uses bpf_trace_printk as BPF_PROG_TYPE_TRACEPOINT (Yauheni Kaliuta) [1747341] - [net] bpf: add BPF_PROG_TEST_RUN support for flow dissector (Yauheni Kaliuta) [1747341] - [net] net/flow_dissector: move bpf case into __skb_flow_bpf_dissect (Yauheni Kaliuta) [1747341] - [net] Revert "[net] flow_dissector: disable preemption around BPF calls" (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: warn about risky prog array updates (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: remove duplicated include (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up the rest of test_verifier (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_verifier (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: prepare for break up of verifier tests (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: makefile support sub-register code-gen test mode (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: functional and min/max reasoning unit tests for JMP32 (Yauheni Kaliuta) [1747341] - [s390] s390: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [powerpc] ppc: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [arm64] arm64: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [x86] x86_64: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: JIT blinds support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: interpreter support for JMP32 (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: teach cfg code about JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: disassembler support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: refactor verifier min/max code for condition jump (Yauheni Kaliuta) [1747341] - [include] bpf: allocate 0x06 to new eBPF instruction class JMP32 (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: suppress readelf stderr when probing for BTF support (Yauheni Kaliuta) [1747341] - [net] bpf: allow BPF programs access skb_shared_info->gso_segs field (Yauheni Kaliuta) [1747341] - [tools] tool: feature probing, change default action (Yauheni Kaliuta) [1747341] - [kernel] bpf: notify offload JITs about optimizations (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: record original instruction index (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add tests for dead code removal (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: remove unconditional branches by 0 (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: remove dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: hard wire branches to dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: change parameters of call/branch offset adjustment (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: don't hardcode iptables/nc path in test_tcpnotify_user (Yauheni Kaliuta) [1747341] - [tools] libbpf: Show supported ELF section names when failing to guess prog/attach type (Yauheni Kaliuta) [1747341] - [documentation] bpf: btf: add btf documentation (Yauheni Kaliuta) [1747341] - [kernel] perf: Make perf_event_output() propagate the output() return (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix a (false) compiler warning (Yauheni Kaliuta) [1747341] - [tools] tool: add bash completion for peek/push/enqueue/pop/dequeue (Yauheni Kaliuta) [1747341] - [tools] tool: add pop and dequeue commands (Yauheni Kaliuta) [1747341] - [tools] tool: add push and enqueue commands (Yauheni Kaliuta) [1747341] - [tools] tool: add peek command (Yauheni Kaliuta) [1747341] - [tools] tool: don't print empty key/value for maps (Yauheni Kaliuta) [1747341] - [tools] tool: make key optional in lookup command (Yauheni Kaliuta) [1747341] - [tools] tool: make key and value optional in update command (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: support __int128 in bpftool map pretty dumper (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add bpffs pretty print test for int128 (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: refactor test_btf pretty printing for multiple map value formats (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add int128 raw test in test_btf (Yauheni Kaliuta) [1747341] - [kernel] bpf: btf: support 128 bit integer type (Yauheni Kaliuta) [1747341] - [tools] libbpf: don't define CC and AR (Yauheni Kaliuta) [1747341] - [include] bpf: remove leftovers after v5.0 update (Yauheni Kaliuta) [1715770] - [target] scsi: target: cxgbit: add support for IEEE_8021QAZ_APP_SEL_STREAM selector (Vishal Kulkarni) [1725820] - [netdrv] cxgb4i: add support for IEEE_8021QAZ_APP_SEL_STREAM selector (Vishal Kulkarni) [1725818] - [net] SUNRPC: Fix possible autodisconnect during connect due to old last_used (Dave Wysochanski) [1724692] - [fs] NFSv4: Add lease_time and lease_expired to 'nfs4:' line of mountstats (Dave Wysochanski) [1727369] - [scsi] scsi: zfcp: fix reaction on bit error threshold notification (Philipp Rudo) [1764494] - [iommu] iommu/arm-smmu: Error out only if not enough context interrupts (Mark Langsdorf) [1658736] - [netdrv] cxgb4:Fix out-of-bounds MSI-X info array access (Vishal Kulkarni) [1763194] - [fs] vfs: Fix EOVERFLOW testing in put_compat_statfs64 (Eric Sandeen) [1757902] - [security] selinux: fix context string corruption in convert_context() (Ondrej Mosnacek) [1758086] - [fs] cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic (Dave Wysochanski) [1757865] - [kernel] alarmtimer: Use EOPNOTSUPP instead of ENOTSUPP (Vladis Dronov) [1760638] - [netdrv] cxgb4: RHEL-only disable device dump (Jonathan Toppins) [1708456] - [fs] xfs: Fix deadlock between AGI and AGF with RENAME_WHITEOUT (Brian Foster) [1759564] - [x86] x86/stacktrace: Prevent access_ok() warnings in arch_stack_walk_user() (Jerome Marchand) [1757758] - [s390] s390/sclp: Fix bit checked for has_sipl (Philipp Rudo) [1748347] - [fs] dax: dax_layout_busy_page() should not unmap cow pages (Jeff Moyer) [1752109] - [fs] dax: Fix missed wakeup in put_unlocked_entry() (Jeff Moyer) [1752109] - [fs] dax: Fix missed wakeup with PMD faults (Jeff Moyer) [1752109] - [fs] dax: Fix xarray entry association for mixed mappings (Jeff Moyer) [1752109] - [mm] mm: page_mkclean vs MADV_DONTNEED race (Jeff Moyer) [1752109] - [fs] dax: Flush partial PMDs correctly (Jeff Moyer) [1752109 1724979] - [fs] dax: Use non-exclusive wait in wait_entry_unlocked() (Jeff Moyer) [1752109] - [x86] x86/mm: Fix decoy address handling vs 32-bit builds (Jeff Moyer) [1752109 1585079] - [fs] dax: Fix unlock mismatch with updated API (Jeff Moyer) [1752109 1724956] - [fs] dax: Don't access a freed inode (Jeff Moyer) [1752109 1724956] - [fs] dax: Check page->mapping isn't NULL (Jeff Moyer) [1752109 1585079 1724956] - [fs] dax: Avoid losing wakeup in dax_lock_mapping_entry (Jeff Moyer) [1752109] - [fs] dax: Fix huge page faults (Jeff Moyer) [1752109] - [fs] dax: Fix dax_unlock_mapping_entry for PMD pages (Jeff Moyer) [1752109] - [fs] dax: Reinstate RCU protection of inode (Jeff Moyer) [1752109] - [fs] dax: Make sure the unlocking entry isn't locked (Jeff Moyer) [1752109] - [fs] dax: Remove optimisation from dax_lock_mapping_entry (Jeff Moyer) [1752109] - [fs] dax: Convert page fault handlers to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_lock_mapping_entry to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax writeback to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert __dax_invalidate_entry to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_layout_busy_page to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_insert_pfn_mkwrite to XArray (Jeff Moyer) [1752109] - [fs] dax: Hash on XArray instead of mapping (Jeff Moyer) [1752109] - [fs] dax: Rename some functions (Jeff Moyer) [1752109] - [fs] dax: Fix deadlock in dax_lock_mapping_entry() (Jeff Moyer) [1752109 1585079 1641544] - [drivers] device-dax: Add missing address_space_operations (Jeff Moyer) [1752109 1585079] - [x86] x86/mm/pat: Prepare {reserve, free}_memtype() for "decoy" addresses (Jeff Moyer) [1752109 1585079] - [mm] mm, memory_failure: Teach memory_failure() about dev_pagemap pages (Jeff Moyer) [1703560 1752109 1585079] - [fs] filesystem-dax: Introduce dax_lock_mapping_entry() (Jeff Moyer) [1752109 1585079] - [mm] mm, memory_failure: Collect mapping size in collect_procs() (Jeff Moyer) [1752109 1585079] - [mm] mm, madvise_inject_error: Let memory_failure() optionally take a page reference (Jeff Moyer) [1752109 1585079] - [mm] mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages (Jeff Moyer) [1752109 1585079] - [fs] filesystem-dax: Set page->index (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Set page->index (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Enable page_mapping() (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Convert to vmf_insert_mixed and vm_fault_t (Jeff Moyer) [1752109 1585079] - [pci] PCI: Add quirk to disable MSI-X support for Amazon's Annapurna Labs Root Port (Myron Stowe) [1732357] - [pci] PCI/VPD: Prevent VPD access for Amazon's Annapurna Labs Root Port (Myron Stowe) [1732357] - [pci] PCI: Add ACS quirk for Amazon Annapurna Labs root ports (Myron Stowe) [1732357] - [pci] PCI: Add Amazon's Annapurna Labs vendor ID (Myron Stowe) [1732357] - [arm64] arm64: PCI: Preserve firmware configuration when desired (Myron Stowe) [1732372] - [arm64] arm64: PCI: Allow resource reallocation if necessary (Myron Stowe) [1732372] - [pci] PCI: Don't auto-realloc if we're preserving firmware config (Myron Stowe) [1732372] - [pci] PCI/ACPI: Evaluate PCI Boot Configuration _DSM (Myron Stowe) [1732372] - [irqchip] irqchip/gic-v2m: Add support for Amazon Graviton variant of GICv3+GICv2m (Myron Stowe) [1732382] - [pci] PCI: al: Add Amazon Annapurna Labs PCIe host controller driver (Myron Stowe) [1732357] - [netdrv] mlx4: fix spelling mistake "veify" -> "verify" (Alaa Hleihel) [1724340] - [netdrv] IB/mlx4: Fix memory leaks (Alaa Hleihel) [1724340] - [netdrv] net/mlx4_en: fix a memory leak bug (Alaa Hleihel) [1724340] - [netdrv] IB/mlx4: Delete unused func arg (Alaa Hleihel) [1724340] - [netdrv] net/mlx4_en: ethtool, Remove unsupported SFP EEPROM high pages query (Alaa Hleihel) [1724340 1724339] - [netdrv] net/mlx4_core: Change the error print to info print (Alaa Hleihel) [1724340 1724339] - [netdrv] mlx4: Convert pv_id_table to XArray (Alaa Hleihel) [1724340 1724339] - [netdrv] IB/mlx4: Fix race condition between catas error reset and aliasguid flows (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix qp mtt size calculation (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix locking in SRIOV mode when switching between events and polling (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix reset flow when in command polling mode (Alaa Hleihel) [1724340 1724338] - [netdrv] mellanox: Switch to bitmap_zalloc() (Alaa Hleihel) [1724340 1724338] - [netdrv] IB/mlx4: Increase the timeout for CM cache (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: A write memory barrier is sufficient in EQ ci update (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4: Mark expected switch fall-through (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4: remove unneeded semicolon (Alaa Hleihel) [1724340 1724338] - [parport] parport: parport_serial: Add support for Sunix Multi I/O boards (John Linville) [1663781] - [tty] serial: 8250_pci: Add support for Sunix serial boards (John Linville) [1663781] - [scsi] hpsa: update driver version (Joseph Szczypek) [1761968] - [scsi] scsi: hpsa: add missing hunks in reset-patch (Joseph Szczypek) [1761968] - [netdrv] igc: Clean up unused shadow_vfta pointer (David Arcari) [1721713] - [netdrv] igc: Add Rx checksum support (David Arcari) [1721713] - [netdrv] igc: Add set_rx_mode support (David Arcari) [1721713] - [netdrv] igc: Add SCTP CRC checksumming functionality (David Arcari) [1721713] - [netdrv] igc: Add tx_csum offload functionality (David Arcari) [1721713] - [netdrv] igc: Remove unneeded PCI bus defines (David Arcari) [1721713] - [netdrv] igc: Add NVM checksum validation (David Arcari) [1721713] - [netdrv] igc: Remove useless forward declaration (David Arcari) [1721713] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (David Arcari) [1721713] - [netdrv] igc: Add more SKUs for i225 device (David Arcari) [1721713] - [netdrv] igc: Update the MAC reset flow (David Arcari) [1721713] - [netdrv] igc: Remove the unused field from a device specification structure (David Arcari) [1721713] - [netdrv] igc: Remove the polarity field from a PHY information structure (David Arcari) [1721713] - [netdrv] net: Use skb accessors in network drivers (David Arcari) [1721713] - [netdrv] igc: Prefer pcie_capability_read_word() (David Arcari) [1721713] - [netdrv] igc: Cleanup the redundant code (David Arcari) [1721713] - [netdrv] igc: Add flow control support (David Arcari) [1721713] - [netdrv] igc: Remove the obsolete workaround (David Arcari) [1721713] - [netdrv] igc: Clean up unused pointers (David Arcari) [1721713] - [netdrv] igc: Fix double definitions (David Arcari) [1721713] - [netdrv] igb/igc: warn when fatal read failure happens (David Arcari) [1721713] - [scsi] scsi: qla2xxx: Fix different size DMA Alloc/Unmap (Himanshu Madhani) [1753031] - [scsi] qla2xxx: call dma_free_coherent with correct size in all cases in qla24xx_sp_unmap (Himanshu Madhani) [1753031] - [arm64] crypto: arm64/crc32 - remove PMULL based CRC32 driver (Mark Salter) [1742821] - [arm64] arm64/lib: improve CRC32 performance for deep pipelines (Mark Salter) [1742821] - [arm64] arm64/lib: add accelerated crc32 routines (Mark Salter) [1742821] - [arm64] arm64: cpufeature: add feature for CRC32 instructions (Mark Salter) [1742821] - [lib] lib/crc32: make core crc32() routines weak so they can be overridden (Mark Salter) [1742821] - [arm64] arm64: cpu: Move errata and feature enable callbacks closer to callers (Mark Salter) [1742821] - [arm64] arm64: kill config_sctlr_el1() (Mark Salter) [1742821] - [include] ethtool: Add SFF-8436 and SFF-8636 max EEPROM length definitions (Petr Oros) [1757522] - [net] bridge/mdb: remove wrong use of NLM_F_MULTI (Hangbin Liu) [1756799] - [net] bridge: mcast: don't delete permanent entries when fast leave is enabled (Hangbin Liu) [1756799] - [net] bridge: multicast: use rcu to access port list from br_multicast_start_querier (Hangbin Liu) [1756799] - [net] bridge: Fix ethernet header pointer before check skb forwardable (Hangbin Liu) [1756799] - [net] clear skb->tstamp in bridge forwarding path (Hangbin Liu) [1756799] - [net] bridge: br_arp_nd_proxy: set icmp6_router if neigh has NTF_ROUTER (Hangbin Liu) [1756799] - [net] vlan: Inherit MPLS features from parent device (Hangbin Liu) [1724306] - [netdrv] linux/dim: Fix overflow in dim calculation (Ivan Vecera) [1737807] - [lib] dim: Fix -Wunused-const-variable warnings (Ivan Vecera) [1737807] - [lib] linux/dim: Add completions count to dim_sample (Ivan Vecera) [1737807] - [netdrv] linux/dim: Move implementation to .c files (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename externally used net_dim members (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename net_dim_sample() to net_dim_update_sample() (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename externally exposed macros (Ivan Vecera) [1737807] - [include] linux/dim: Remove "net" prefix from internal DIM members (Ivan Vecera) [1737807] - [include] linux/dim: Move logic to dim.h (Ivan Vecera) [1737807] - [tools] selftests: add a test case for cls_lower handle overflow (Ivan Vecera) [1761512] - [net] idr: introduce idr_for_each_entry_continue_ul() (Ivan Vecera) [1761512] - [net] idr: fix overflow case for idr_for_each_entry_ul() (Ivan Vecera) [1761512] - [net] sctp: add chunks to sk_backlog when the newsk sk_socket is not set (Xin Long) [1734271] - [net] netns: enable to dump full nsid translation table (Petr Oros) [1757748] - [net] netns: enable to specify a nsid for a get request (Petr Oros) [1757748] - [net] netns: add support of NETNSA_TARGET_NSID (Petr Oros) [1757748] - [net] netns: introduce 'struct net_fill_args' (Petr Oros) [1757748] - [net] netns: remove net arg from rtnl_net_fill() (Petr Oros) [1757748] - [net] mpls: fix warning with multi-label encap (Hangbin Liu) [1756788] - [net] mpls: Return error for RTA_GATEWAY attribute (Hangbin Liu) [1756788] - [net] macsec: drop skb sk before calling gro_cells_receive (Xin Long) [1745819] - [net] team: add ethtool get_link_ksettings (Hangbin Liu) [1724896] - [net] sched: flower: don't call synchronize_rcu() on mask creation (Ivan Vecera) [1751856] - [net] sched: flower: refactor reoffload for concurrent access (Ivan Vecera) [1751856] - [net] sched: flower: fix filter net reference counting (Ivan Vecera) [1751856] - [net] sched: flower: use correct ht function to prevent duplicates (Ivan Vecera) [1751856] - [net] sched: flower: insert filter to ht before offloading it to hw (Ivan Vecera) [1751856] - [net] sched: ensure tc flower reoffload takes filter ref (Ivan Vecera) [1751856] - [net] sched: flower: set unlocked flag for flower proto ops (Ivan Vecera) [1751856] - [net] sched: flower: track rtnl lock state (Ivan Vecera) [1751856] - [net] sched: flower: protect flower classifier state with spinlock (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent tcf proto deletion (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent filter insertion in fl_change (Ivan Vecera) [1751856] - [net] sched: flower: protect masks list with spinlock (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent mask insertion (Ivan Vecera) [1751856] - [net] sched: flower: add reference counter to flower mask (Ivan Vecera) [1751856] - [net] sched: flower: track filter deletion with flag (Ivan Vecera) [1751856] - [net] sched: flower: introduce reference counting for filters (Ivan Vecera) [1751856] - [net] sched: flower: refactor fl_change (Ivan Vecera) [1751856] - [net] sched: flower: don't check for rtnl on head dereference (Ivan Vecera) [1751856] - [kernel] exit from RHEL 8.2 early ystream mode (Phillip Lougher)- [x86] kvm: svm: Remove unneeded WBINVD and DF_FLUSH when starting SEV guests (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Reduce WBINVD/DF_FLUSH invocations (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Guard against DEACTIVATE when performing WBINVD/DF_FLUSH (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Serialize access to the SEV ASID bitmap (Janakarajan Natarajan) [1762517] - [xen] remove pre-xen3 fallback handlers (Vitaly Kuznetsov) [1759997] - [net] SUNRPC: Count ops completing with tk_status < 0 (Dave Wysochanski) [1636572] - [net] SUNRPC: Use proper printk specifiers for unsigned long long (Dave Wysochanski) [1636572] - [net] SUNRPC: Move call to rpc_count_iostats before rpc_call_done (Dave Wysochanski) [1636572] - [net] SUNRPC: Add tracking of RPC level errors (Dave Wysochanski) [1636572] - [net] SUNRPC: Refactor rpc_restart_call/rpc_restart_call_prepare (Dave Wysochanski) [1636572] - [net] SUNRPC: Fix up task signalling (Dave Wysochanski) [1636572] - [net] SUNRPC: Track writers of the 'channel' file to improve cache_listeners_exist (Dave Wysochanski) [1741333] - [net] sunrpc/cache: handle missing listeners better. (Dave Wysochanski) [1741333] - [pci] PCI/ACPI: Advertise _HPX Type 3 support via _OSC (Myron Stowe) [1712756] - [pci] PCI/ACPI: Implement _HPX Type 3 Setting Record (Myron Stowe) [1712756] - [netdrv] e1000e: Add support for Comet Lake (David Arcari) [1764549] - [netdrv] e1000e: Add support for S0ix (Ken Cox) [1721709] - [netdrv] e1000e: Make speed detection on hotplugging cable more reliable (Ken Cox) [1721709] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (Ken Cox) [1721709] - [netdrv] e1000e: add workaround for possible stalled packet (Ken Cox) [1721709] - [netdrv] e1000e: Use dev_get_drvdata where possible (Ken Cox) [1721709] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721709] - [netdrv] e1000e: PCIm function state support (Ken Cox) [1721709] - [netdrv] e1000e: Make watchdog use delayed work (Ken Cox) [1721709] - [netdrv] e1000e: Reduce boot time by tightening sleep ranges (Ken Cox) [1721709] - [netdrv] e1000e: Increase pause and refresh time (Ken Cox) [1721709] - [scsi] scsi: megaraid_sas: Introduce module parameter for default queue depth (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix a compilation warning (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make a bunch of functions static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make some functions static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fix panic on loading firmware crashdump (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fix spelling mistake "megarid_sas" -> "megaraid_sas" (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.710.50.00 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add module parameter for FW Async event logging (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enable msix_load_balance for Invader and later controllers (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix calculation of target ID (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make some symbols static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.710.06.00-rc1 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Introduce various Aero performance modes (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Use high IOPS queues based on IO workload (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Set affinity for high IOPS reply queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enable coalescing for high IOPS queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for High IOPS queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for MPI toolbox commands (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Offload Aero RAID5/6 division calculations to driver (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: RAID1 PCI bandwidth limit algorithm is applicable for only Ventura (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: megaraid_sas: Add check for count returned by HOST_DEVICE_LIST DCMD (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Handle sequence JBOD map failure at driver level (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Don't send FPIO to RL Bypass queue (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: In probe context, retry IOC INIT once if firmware is in fault (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Release Mutex lock before OCR in case of DCMD timeout (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Call disable_irq from process IRQ poll (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove few debug counters from IO path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for Non-secure Aero PCI IDs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add 32 bit atomic descriptor support to AERO adapters (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Use struct_size() helper (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove unused including (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: use DEVICE_ATTR_{RO, RW} (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: use octal permissions instead of constants (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: make max_sectors visible in sys (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variables 'buff_addr' and 'ci_h' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variable 'sge_sz' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variables 'host' and 'wait_time' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variable 'cur_state' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.708.03.00 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Export RAID map through debugfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix MSI-X vector print (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add debug prints for device list (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add prints in suspend and resume path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print firmware interrupt status (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print FW fault information (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Export RAID map id through sysfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print BAR information from driver (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Dump system registers for debugging (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Dump system interface regs from sysfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add formatting option for megasas_dump (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enhance internal DCMD timeout prints (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enhance prints in OCR and TM path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Load balance completions across all MSI-X (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: IRQ poll to avoid CPU hard lockups (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Block PCI config space access from userspace during OCR (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Rework code around controller reset (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fw_reset_no_pci_access required for MFI adapters only (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove unused variable target_index (Tomas Henzl) [1726251] - [x86] perf/x86/msr: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/intel: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/cstate: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/intel: Update KBL Package C-state events to also include PC8/PC9/PC10 counters (Michael Petlan) [1763290] - [x86] x86/cpu: Add Comet Lake to the Intel CPU models header (Michael Petlan) [1763290] - [s390] s390/qeth: reject oversized SNMP requests (Philipp Rudo) [1726414] - [s390] s390/qeth: serialize cmd reply with concurrent timeout (Philipp Rudo) [1726414] - [s390] s390/qeth: move cast type selection into fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: extract helper for route validation (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate skb RX processing in L3 driver (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate pm code (Philipp Rudo) [1726414] - [s390] s390/qeth: streamline SNMP cmd code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove static cmd buffer infrastructure (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate MPC cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate vnicc cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate diag cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate various cmds with sub-types (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify parameter for simple assist cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate simple IPA cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: allocate a single cmd on read channel (Philipp Rudo) [1726414] - [s390] s390/qeth: command-chain the IDX sequence (Philipp Rudo) [1726414] - [s390] s390/qeth: convert RCD code to common IO infrastructure (Philipp Rudo) [1726414] - [s390] s390/qeth: add support for dynamically allocated cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: remove 'channel' parameter from callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: convert device-specific trace entries (Philipp Rudo) [1726414] - [s390] s390/qeth: remove OSN-specific IO code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove qeth_wait_for_buffer() (Philipp Rudo) [1726414] - [s390] s390/qeth: clean up setting of BLKT defaults (Philipp Rudo) [1726414] - [s390] s390/qeth: restart pending READ cmd from callback (Philipp Rudo) [1726414] - [s390] s390/qeth: simplify DOWN state handling (Philipp Rudo) [1726414] - [s390] s390/qeth: use mm helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: don't mask TX errors on IQD devices (Philipp Rudo) [1726414] - [s390] s390/qeth: handle error when updating TX queue count (Philipp Rudo) [1726414] - [s390] s390/qeth: fix VLAN attribute in bridge_hostnotify udev event (Philipp Rudo) [1726414] - [s390] s390/qeth: check dst entry before use (Philipp Rudo) [1726414] - [s390] s390/qeth: handle limited IPv4 broadcast in L3 TX path (Philipp Rudo) [1726414] - [s390] s390/qeth: trust non-IP cast type in qeth_l3_fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: extract helper to determine L2 cast type (Philipp Rudo) [1726414] - [s390] s390/qeth: cache max number of available buffer elements (Philipp Rudo) [1726414] - [s390] s390/qeth: don't clear Output buffers on every queue init (Philipp Rudo) [1726414] - [s390] s390/qeth: use IS_* helpers for checking device type (Philipp Rudo) [1726414] - [s390] s390/qeth: clean up stale buffer state documentation (Philipp Rudo) [1726414] - [s390] s390/qeth: remove RX seqno in skb->cb (Philipp Rudo) [1726414] - [s390] s390: qeth: address type mismatch warning (Philipp Rudo) [1726414] - [s390] s390/qeth: stop/wake TX queues based on their fill level (Philipp Rudo) [1726414] - [s390] s390/qeth: simplify QoS code (Philipp Rudo) [1726414] - [s390] s390/qeth: add TX multiqueue support for OSA devices (Philipp Rudo) [1726414] - [s390] s390/qeth: add TX multiqueue support for IQD devices (Philipp Rudo) [1726414] - [s390] s390/qeth: don't keep statistics for tx timeout (Philipp Rudo) [1726414] - [s390] s390/qeth: don't bother updating the last-tx time (Philipp Rudo) [1726414] - [s390] s390/qeth: handle error from qeth_update_from_chp_desc() (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify naming for some QDIO helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: send IDX cmds via qeth_send_control_data() (Philipp Rudo) [1726414] - [s390] s390/qeth: use callback to finalize cmd (Philipp Rudo) [1726414] - [s390] s390/qeth: let qeth_notify_reply() set the notify reason (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify default cmd callback (Philipp Rudo) [1726414] - [s390] s390/qeth: don't poll for cmd IO completion (Philipp Rudo) [1726414] - [s390] s390/qeth: convert IP table spinlock to mutex (Philipp Rudo) [1726414] - [s390] s390/qeth: defer IPv6 address notifier events (Philipp Rudo) [1726414] - [s390] s390/qeth: add wrapper for IP table access (Philipp Rudo) [1726414] - [s390] s390/qeth: remove locking for RX modeset cache (Philipp Rudo) [1726414] - [s390] s390/qeth: defer RX modesetting (Philipp Rudo) [1726414] - [s390] s390/qeth: fix race when initializing the IP address table (Philipp Rudo) [1726414] - [s390] s390/qeth: don't erase configuration while probing (Philipp Rudo) [1726414] - [s390] s390/qeth: drop redundant state checking (Philipp Rudo) [1726414] - [s390] s390/qeth: don't special-case HW trap during suspend (Philipp Rudo) [1726414] - [s390] s390/qeth: remove driver-wide workqueue (Philipp Rudo) [1726414] - [s390] s390/qeth: don't defer close_dev work during recovery (Philipp Rudo) [1726414] - [s390] s390/qeth: remove a redundant check for card->dev (Philipp Rudo) [1726414] - [s390] s390/qeth: call dev_close() during recovery (Philipp Rudo) [1726414] - [s390] s390/qeth: unconditionally clear MAC_REGISTERED flag (Philipp Rudo) [1726414] - [s390] s390/qeth: enable/disable the HW trap a little earlier (Philipp Rudo) [1726414] - [s390] s390/qeth: remove RECOVER state (Philipp Rudo) [1726414] - [s390] s390/qeth: split out OSN netdev ops (Philipp Rudo) [1726414] - [s390] s390/qeth: add support for ETHTOOL_GRINGPARAM (Philipp Rudo) [1726414] - [s390] s390/qeth: overhaul ethtool statistics (Philipp Rudo) [1726414] - [s390] s390/qeth: move ethtool code into its own file (Philipp Rudo) [1726414] - [s390] s390/qeth: reduce ethtool statistics (Philipp Rudo) [1726414] - [s390] s390/qeth: use a static Output Queue array (Philipp Rudo) [1726414] - [s390] s390/qeth: allow manual recovery when device is SOFTSETUP (Philipp Rudo) [1726414] - [s390] s390/qeth: convert remaining legacy cmd callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: convert bridgeport callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: allow cmd callbacks to return errnos (Philipp Rudo) [1726414] - [s390] s390/qeth: limit trace to valid data of command request (Philipp Rudo) [1726414] - [s390] s390/qeth: align csum offload with TSO control logic (Philipp Rudo) [1726414] - [s390] s390/qeth: enable only required csum offload features (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate filling of low-level cmd length fields (Philipp Rudo) [1726414] - [s390] s390/qeth: reduce data length for ARP cache query (Philipp Rudo) [1726414] - [s390] s390/qeth: remove VLAN tracking for L2 devices (Philipp Rudo) [1726414] - [s390] s390/qeth: detach netdevice while card is offline (Philipp Rudo) [1726414] - [s390] s390/qeth: delay netdevice registration (Philipp Rudo) [1726414] - [s390] s390/qeth: remove TX disable from online path (Philipp Rudo) [1726414] - [s390] s390/qeth: register MAC address earlier (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate open/stop netdev ops (Philipp Rudo) [1726414] - [s390] s390/qeth: remove bogus netif_wake_queue() (Philipp Rudo) [1726414] - [s390] s390/qeth: streamline TX buffer management (Philipp Rudo) [1726414] - [s390] s390/qeth: don't process hsuid in qeth_l3_setup_netdev() (Philipp Rudo) [1726414] - [s390] s390/qeth: remove unused fallback in Layer3's MAC code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove two IPA command helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: replace open-coded cmd setup (Philipp Rudo) [1726414] - [s390] s390/qeth: remove card list (Philipp Rudo) [1726414] - [s390] s390/qeth: unify transmit code (Philipp Rudo) [1726414] - [s390] s390/qeth: handle af_iucv skbs in qeth_l3_fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: sanitize ARP requests (Philipp Rudo) [1726414] - [s390] s390/qdio: restrict QAOB usage to IQD unicast queues (Philipp Rudo) [1726414] - [s390] s390/qdio: add sanity checks to the fast-requeue path (Philipp Rudo) [1726414] - [s390] s390/qdio: don't touch the dsci in tiqdio_add_input_queues() (Philipp Rudo) [1726414] - [s390] s390/qdio: (re-)initialize tiqdio list entries (Philipp Rudo) [1726414] - [s390] s390/qdio: optimize state inspection of HW-owned SBALs (Philipp Rudo) [1726414] - [s390] s390/qdio: use get_buf_state() in debug_get_buf_state() (Philipp Rudo) [1726414] - [s390] s390/qdio: allow to scan all Output SBALs in one go (Philipp Rudo) [1726414] - [s390] s390/qdio: consolidate index tracking for queue scan (Philipp Rudo) [1726414] - [s390] s390/qdio: limit direct access to first_to_check cursor (Philipp Rudo) [1726414] - [s390] s390/qdio: eliminate queue's last_move cursor (Philipp Rudo) [1726414] - [s390] s390/qdio: simplify SBAL range calculation (Philipp Rudo) [1726414] - [s390] s390/qdio: pass up count of ready-to-process SBALs (Philipp Rudo) [1726414] - [s390] s390/qdio: fix output of DSCI value in debug file (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up qdio_check_outbound_after_thinint() (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up pci_out_supported() (Philipp Rudo) [1726414] - [s390] s390/qdio: make SBAL address array type-safe (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up AOB handling (Philipp Rudo) [1726414] - [s390] s390/ccwgroup: add get_ccwgroupdev_by_busid() (Philipp Rudo) [1726414]- [net] xprtrdma: Remove stale comment (Kamal Heib) [1720891] - [net] xprtrdma: Update comments that reference ib_drain_qp (Kamal Heib) [1720891] - [net] xprtrdma: Remove pr_err() call sites from completion handlers (Kamal Heib) [1720891] - [net] xprtrdma: Eliminate struct rpcrdma_create_data_internal (Kamal Heib) [1720891] - [net] xprtrdma: Aggregate the inline settings in struct rpcrdma_ep (Kamal Heib) [1720891] - [net] xprtrdma: Remove rpcrdma_create_data_internal::rsize and wsize (Kamal Heib) [1720891] - [net] xprtrdma: Eliminate rpcrdma_ia::ri_device (Kamal Heib) [1720891] - [net] xprtrdma: More Send completion batching (Kamal Heib) [1720891] - [net] xprtrdma: Clean up sendctx functions (Kamal Heib) [1720891] - [net] xprtrdma: Trace marshaling failures (Kamal Heib) [1720891] - [net] xprtrdma: Increase maximum number of backchannel requests (Kamal Heib) [1720891] - [net] xprtrdma: Backchannel can use GFP_KERNEL allocations (Kamal Heib) [1720891] - [net] xprtrdma: Clean up regbuf helpers (Kamal Heib) [1720891] - [net] xprtrdma: De-duplicate "allocate new, free old regbuf" (Kamal Heib) [1720891] - [net] xprtrdma: Allocate req's regbufs at xprt create time (Kamal Heib) [1720891] - [net] xprtrdma: rpcrdma_regbuf alignment (Kamal Heib) [1720891] - [net] xprtrdma: Clean up rpcrdma_create_rep() and rpcrdma_destroy_rep() (Kamal Heib) [1720891] - [net] xprtrdma: Clean up rpcrdma_create_req() (Kamal Heib) [1720891] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 502 (Kamal Heib) [1720891] - [infiniband] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Kamal Heib) [1720891] - [net] xprtrdma: Use struct_size() in kzalloc() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Fix panic when port_data isn't initialized (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Pass udata on uverbs error unwind (Kamal Heib) [1720891] - [infiniband] RDMA/core: Clear out the udata before error unwind (Kamal Heib) [1720891] - [infiniband] RDMA/srp: Rename SRP sysfs name after IB device rename trigger (Kamal Heib) [1720891] - [infiniband] treewide: Add SPDX license identifier - Makefile/Kconfig (Kamal Heib) [1720891] - [infiniband] RDMA/core: Change system parameters callback from dumpit to doit (Kamal Heib) [1720891] - [infiniband] RDMA: Directly cast the sockaddr union to sockaddr (Kamal Heib) [1720891] - [infiniband] RDMA/ipoib: Allow user space differentiate between valid dev_port (Kamal Heib) [1720891] - [infiniband] RDMA/device: Don't fire uevent before device is fully initialized (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Remove hugetlb flag (Kamal Heib) [1720891] - [infiniband] RDMA/bnxt_re: Use core helpers to get aligned DMA address (Kamal Heib) [1720891] - [infiniband] RDMA/bnxt_re: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720891] - [infiniband] RDMA/i40iw: Use core helpers to get aligned DMA address within a supported page size (Kamal Heib) [1720891] - [infiniband] RDMA/i40iw: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720891] - [infiniband] RDMA/verbs: Add a DMA iterator to return aligned contiguous memory blocks (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Add API to find best driver supported page size in an MR (Kamal Heib) [1720891] - [infiniband] RDMA/core: Allow detaching gid attribute netdevice for RoCE (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Use rdma_read_gid_attr_ndev_rcu to access netdev (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Use rdma_read_gid_attr_ndev_rcu to access netdev (Kamal Heib) [1720891] - [infiniband] RDMA: Introduce and use GID attr helper to read RoCE L2 fields (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Add vlan enable bit for hip08 (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Update some fields of qp context (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Delete unused variable in hns_roce_v2_modify_qp function (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Add enable judgement for UD vlan (Kamal Heib) [1720891] - [infiniband] IB/mlx5: Consider vlan of lower netdev for macvlan GID entries (Kamal Heib) [1720891] - [infiniband] IB/cm: Reduce dependency on gid attribute ndev check (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Consider skb reserve space based on netdev of GID (Kamal Heib) [1720891] - [infiniband] RDMA: Get rid of iw_cm_verbs (Kamal Heib) [1720891] - [infiniband] RDMA/cxgb4: Use ib_device_set_netdev() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Do not invoke init_port on compat devices (Kamal Heib) [1720891] - [infiniband] IB/core: Set qp->real_qp before it may be accessed (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Initialize uverbs_attr_bundle ucontext in ib_uverbs_get_context (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Initialize udata struct on destroy flows (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Handle page combining avoidance correctly in ib_umem_add_sg_table() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce RDMA subsystem ibdev_* print functions (Kamal Heib) [1720891] - [infiniband] uverbs: Convert idr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Remove rdma_user_mmap_page (Kamal Heib) [1720891] - [infiniband] RDMA/mlx5: Use get_zeroed_page() for clock_info (Kamal Heib) [1720891] - [infiniband] RDMA/mlx5: Do not allow the user to write to the clock page (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Consider scope_id while binding to ipv6 ll address (Kamal Heib) [1720891] - [infiniband] IB/core: Allow vlan link local address based RoCE GIDs (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add a netlink command to change net namespace of rdma device (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce a helper function to change net namespace of rdma device (Kamal Heib) [1720891] - [infiniband] RDMA/core: Avoid freeing netdevs in disable_device() (Kamal Heib) [1720891] - [infiniband] RDMA/ocrdma: Remove use of idr use pci bdf instead (Kamal Heib) [1720891] - [infiniband] RDMA/drivers: Convert easy drivers to use ib_device_set_netdev() (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Use correct value for SG entries in sg_copy_to_buffer() (Kamal Heib) [1720891] - [infiniband] RDMA: Handle SRQ allocations by IB/core (Kamal Heib) [1720891] - [infiniband] qedr: Convert srqidr to XArray (Kamal Heib) [1720891] - [infiniband] qedr: Convert qpidr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Handle AH allocations by IB/core (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Fix bad endianess of port_pd variable (Kamal Heib) [1720891] - [infiniband] RDMA/mad: Reduce MAD scope to mlx5_ib only (Kamal Heib) [1720891] - [infiniband] RDMA/ocrdma: Remove a set-but-not-used variable (Kamal Heib) [1720891] - [infiniband] RDMA/core: Support object allocation in atomic context (Kamal Heib) [1720891] - [infiniband] IB: When attrs.udata/ufile is available use that instead of uobject (Kamal Heib) [1720891] - [infiniband] RDMA/nldev: Return device protocol (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Move debug counters to be under relevant IB device (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Combine contiguous PAGE_SIZE regions in SGEs (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Remove useless zeroing of static global variable (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Set proper port number as index (Kamal Heib) [1720891] - [infiniband] IB: Pass only ib_udata in function prototypes (Kamal Heib) [1720891] - [infiniband] IB: Remove 'uobject->context' dependency in object destroy APIs (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert mmidr to XArray (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert qpidr to XArray (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert cqidr to XArray (Kamal Heib) [1720891] - [infiniband] IB: Pass uverbs_attr_bundle down ib_x destroy path (Kamal Heib) [1720891] - [infiniband] IB: Pass uverbs_attr_bundle down uobject destroy path (Kamal Heib) [1720891] - [infiniband] IB: ucontext should be set properly for all cmd & ioctl paths (Kamal Heib) [1720891] - [infiniband] RDMA/core: Don't compare specific bit after boolean AND (Kamal Heib) [1720891] - [infiniband] RDMA/netlink: Remove unused data structure (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add command to set ib_core device net namspace sharing mode (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add interface to read device namespace sharing mode (Kamal Heib) [1720891] - [infiniband] RDMA/core: Extend ib_device_get_by_index for net namespace (Kamal Heib) [1720891] - [infiniband] RDMA: Check net namespace access for uverbs, umad, cma and nldev (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add module param to disable device sharing among net ns (Kamal Heib) [1720891] - [infiniband] RDMA/core: Support core port attributes in non init_net (Kamal Heib) [1720891] - [infiniband] RDMA/core: Implement compat device/sysfs tree in net namespace (Kamal Heib) [1720891] - [infiniband] RDMA/core: Restrict sysfs entries view to init_net (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce ib_core_device to hold device (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1720891] - [infiniband] RDMA/mthca: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Allow the compiler to verify declaration and definition consistency (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Annotate uverbs_request_next_ptr() return value as a __user pointer (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Add a __user annotation to a pointer (Kamal Heib) [1720891] - [infiniband] IB/rxe: Replace av->network_type with skb->protocol (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add SMP details to MAD tracing (Kamal Heib) [1720891] - [infiniband] IB/UMAD: Add umad trace points (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add agent trace points (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add recv path trace point (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add send path trace points (Kamal Heib) [1720891] - [infiniband] RDMA/vmw_pvrdma: Skip zeroing device attrs (Kamal Heib) [1720891] - [infiniband] IB/iser: remove uninitialized variable len (Kamal Heib) [1720891] - [infiniband] IB/core: Ensure an invalidate_range callback on ODP MR (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Fix slab-out-bounds access which lead to kernel crash later (Kamal Heib) [1720891] - [infiniband] drivers: infiniband: Fix whitespace in kconfig (Kamal Heib) [1720891] - [infiniband] RDMA/nes: remove redundant check on udata (Kamal Heib) [1720891] - [infiniband] cma: Convert portspace IDRs to XArray (Kamal Heib) [1720891] - [infiniband] ucm: Convert ctx_id_table to XArray (Kamal Heib) [1720891] - [infiniband] ib core: Convert query_idr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Convert local_id_table to XArray (Kamal Heib) [1720891] - [infiniband] IB/mad: Convert ib_mad_clients to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Use __packed annotation instead of __attribute__ ((packed)) (Kamal Heib) [1720891] - [char] tpm: Remove a deprecated comments about implicit sysfs locking (Jerry Snitselaar) [1725580 1742257] - [char] tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts (Jerry Snitselaar) [1725580 1742257] - [char] tpm_tis_core: Turn on the TPM before probing IRQ's (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Fix null pointer dereference on chip register error path (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Actually fail on TPM errors during "get random" (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 505 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 399 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Add SPDX license identifier - Makefile/Kconfig (Jerry Snitselaar) [1725580 1742257] - [tools] selftests/tpm2: Open tpm dev in unbuffered mode (Jerry Snitselaar) [1725580 1742257] - [tools] selftests/tpm2: Extend tests to cover partial reads (Jerry Snitselaar) [1725580 1742257] - [tools] selftests: add TPM 2.0 tests (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: fix -Wvarags warning (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: Move trusted.h to include/keys [ver #2] (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: Expose common functionality [ver #2] (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Wrap the buffer from the caller to tpm_buf in tpm_send() (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: correctly initialize digests and fix locking issue (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: allow module init if TPM is inactive or deactivated (Jerry Snitselaar) [1725580 1742257] - [net] net/smc: make sure EPOLLOUT is raised (Philipp Rudo) [1726415] - [net] net/smc: avoid fallback in case of non-blocking connect (Philipp Rudo) [1726415] - [net] net/smc: do not schedule tx_work in SMC_CLOSED state (Philipp Rudo) [1726415] - [net] net/smc: common release code for non-accepted sockets (Philipp Rudo) [1726415] - [net] net/smc: Fix error path in smc_init (Philipp Rudo) [1726415] - [net] net/smc: hold conns_lock before calling smc_lgr_register_conn() (Philipp Rudo) [1726415] - [dma] dmaengine: ioatdma: support latency tolerance report (LTR) for v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: add descriptor pre-fetch support for v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: disable DCA enabling on IOATDMA v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: Add Snow Ridge ioatdma device id (Jerry Snitselaar) [1661996] - [kernel] mutex: Fix up mutex_waiter usage (Waiman Long) [1736609] - [kernel] locking/mutex: Use mutex flags macro instead of hard code (Waiman Long) [1736609] - [kernel] locking/mutex: Make __mutex_owner static to mutex.c (Waiman Long) [1736609] - [kernel] locking/mutex: Test for initialized mutex (Waiman Long) [1736609] - [kernel] kernel/locking/mutex.c: remove caller signal_pending branch predictions (Waiman Long) [1736609] - [kernel] Revert "locking/pvqspinlock: Don't wait if vCPU is preempted" (Waiman Long) [1736609] - [kernel] locking/rwsem: Check for operations on an uninitialized rwsem (Waiman Long) [1736609] - [kernel] locking/rwsem: Make handoff writer optimistically spin on owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Add ACQUIRE comments (Waiman Long) [1736609] - [tty] tty/ldsem, locking/rwsem: Add missing ACQUIRE to read_failed sleep loop (Waiman Long) [1736609] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath sleep loop (Waiman Long) [1736609] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty (Waiman Long) [1736609] - [kernel] locking/rwsem: Don't call owner_on_cpu() on read-owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Guard against making count negative (Waiman Long) [1736609] - [kernel] locking/rwsem: Adaptive disabling of reader optimistic spinning (Waiman Long) [1736609] - [kernel] locking/rwsem: Enable time-based spinning on reader-owned rwsem (Waiman Long) [1736609] - [kernel] locking/rwsem: Make rwsem->owner an atomic_long_t (Waiman Long) [1736609] - [kernel] locking/rwsem: Enable readers spinning on writer (Waiman Long) [1736609] - [kernel] locking/rwsem: Clarify usage of owner's nonspinaable bit (Waiman Long) [1736609] - [kernel] locking/rwsem: Wake up almost all readers in wait queue (Waiman Long) [1736609] - [kernel] locking/rwsem: More optimal RT task handling of null owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Always release wait_lock before waking up tasks (Waiman Long) [1736609] - [kernel] locking/rwsem: Implement lock handoff to prevent lock starvation (Waiman Long) [1736609] - [kernel] locking/rwsem: Make rwsem_spin_on_owner() return owner state (Waiman Long) [1736609] - [kernel] locking/rwsem: Code cleanup after files merging (Waiman Long) [1736609] - [kernel] locking/rwsem: Add rwsem_init.c to keep __init_rwsem() kABI (Waiman Long) [1736609] - [kernel] locking/rwsem: Merge rwsem.h and rwsem-xadd.c into rwsem.c (Waiman Long) [1736609] - [kernel] locking/rwsem: Implement a new locking scheme (Waiman Long) [1736609] - [kernel] locking/rwsem: Remove rwsem_wake() wakeup optimization (Waiman Long) [1736609] - [kernel] locking/rwsem: Make owner available even if !CONFIG_RWSEM_SPIN_ON_OWNER (Waiman Long) [1736609] - [kernel] locking/lock_events: Use raw_cpu_{add, inc}() for stats (Waiman Long) [1736609] - [kernel] locking/lock_events: Use this_cpu_add() when necessary (Waiman Long) [1736609] - [kernel] locking/rwsem: Revert "[kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath ..." (Waiman Long) [1736609] - [block] block: don't release queue's sysfs lock during switching elevator (Ming Lei) [1760151] - [block] blk-mq: move lockdep_assert_held() into elevator_exit (Ming Lei) [1760151] - [block] block: fix race between switching elevator and removing queues (Ming Lei) [1760151] - [md] raid5: use bio_end_sector in r5_next_bio (Nigel Croxon) [1754949] - [md] raid5: remove STRIPE_OPS_REQ_PENDING (Nigel Croxon) [1754949] - [md] md: add feature flag MD_FEATURE_RAID0_LAYOUT (Nigel Croxon) [1754949] - [md] md/raid0: avoid RAID0 data corruption due to layout confusion. (Nigel Croxon) [1754949] - [md] raid5: don't set STRIPE_HANDLE to stripe which is in batch list (Nigel Croxon) [1754949] - [md] raid5: don't increment read_errors on EILSEQ return (Nigel Croxon) [1754949] - [md] md/raid5: use bio_end_sector to calculate last_sector (Nigel Croxon) [1730670] - [md] md/raid1: fail run raid1 array when active disk less than one (Nigel Croxon) [1730670] - [md] md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone (Nigel Croxon) [1730670] - [md] raid5 improve too many read errors msg by adding limits (Nigel Croxon) [1730670] - [md] md: don't report active array_state until after revalidate_disk() completes. (Nigel Croxon) [1730670] - [md] md: only call set_in_sync() when it is expected to succeed. (Nigel Croxon) [1730670] - [md] raid1: factor out a common routine to handle the completion of sync write (Nigel Croxon) [1730670] - [md] md: don't call spare_active in md_reap_sync_thread if all member devices can't work (Nigel Croxon) [1730670] - [md] md: don't set In_sync if array is frozen (Nigel Croxon) [1730670] - [md] md: allow last device to be forcibly removed from RAID1/RAID10. (Nigel Croxon) [1730670] - [md] md/raid10: end bio when the device faulty (Nigel Croxon) [1730670] - [md] md/raid1: end bio when the device faulty (Nigel Croxon) [1730670] - [md] md/raid6: Set R5_ReadError when there is read failure on parity disk (Nigel Croxon) [1730670] - [md] raid1: use an int as the return value of raise_barrier() (Nigel Croxon) [1730670] - [md] md/raid1: Fix a warning message in remove_wb() (Nigel Croxon) [1730670] - [crypto] crypto: ccp - Fix SEV_VERSION_GREATER_OR_EQUAL (Gary Hook) [1754634] - [crypto] crypto: ccp - Do not free psp_master when PLATFORM_INIT fails (Gary Hook) [1754634] - [crypto] crypto: ccp - Use kmemdup in ccp_copy_and_save_keypart() (Gary Hook) [1754634] - [crypto] crypto: ccp - introduce SEV_GET_ID2 command (Gary Hook) [1754634] - [netdrv] e1000e: start network tx queue only when link is up (Oleksandr Natalenko) [1747869] - [netdrv] Revert "e1000e: fix cyclic resets at link up with active tx" (Oleksandr Natalenko) [1747869] - [mm] mm/zsmalloc.c: fix build when CONFIG_COMPACTION=n (Rafael Aquini) [1735181] - [mm] mm/zsmalloc.c: fix race condition in zs_destroy_pool (Rafael Aquini) [1735181] - [mm] mm/zsmalloc.c: migration can leave pages in ZS_EMPTY indefinitely (Rafael Aquini) [1735181] - [mm] mm, page_owner: handle THP splits correctly (Rafael Aquini) [1735181] - [mm] hugetlbfs: fix hugetlb page migration/fault race causing SIGBUS (Rafael Aquini) [1735181] - [mm] mm/usercopy: use memory range to be accessed for wraparound check (Rafael Aquini) [1735181] - [mm] mm/memcontrol.c: fix use after free in mem_cgroup_iter() (Rafael Aquini) [1735181] - [mm] mm/hmm: fix bad subpage pointer in try_to_unmap_one (Rafael Aquini) [1735181] - [mm] mm: vmscan: check if mem cgroup is disabled or not before calling memcg slab shrinker (Rafael Aquini) [1735181] - [mm] mm: revert "kmemleak: allow to coexist with fault injection" (Rafael Aquini) [1735181] - [mm] mm/vmalloc: sync unmappings in __purge_vmap_area_lazy() (Rafael Aquini) [1735181] - [mm] mm/vmalloc.c: add priority threshold to __purge_vmap_area_lazy() (Rafael Aquini) [1735181] - [mm] mm/cma.c: fail if fixed declaration can't be honored (Rafael Aquini) [1735181] - [mm] mm/mmu_notifier: use hlist_add_head_rcu() (Rafael Aquini) [1735181] - [mm] mm/mincore.c: fix race between swapoff and mincore (Rafael Aquini) [1735181] - [mm] mm, swap: fix race between swapoff and some swap operations (Rafael Aquini) [1735181] - [mm] mm/failslab.c: by default, do not fail allocations with direct reclaim only (Rafael Aquini) [1735181] - [mm] mm: vmscan: scan anonymous pages on file refaults (Rafael Aquini) [1735181] - [mm] mm/vmscan.c: prevent useless kswapd loops (Rafael Aquini) [1735181] - [mm] mm/page_idle.c: fix oops because end_pfn is larger than max_pfn (Rafael Aquini) [1760459 1735181] - [mm] mm/mempolicy.c: fix an incorrect rebind node in mpol_rebind_nodemask (Rafael Aquini) [1735181] - [mm] mm/vmscan.c: fix trying to reclaim unevictable LRU page (Rafael Aquini) [1735181] - [mm] mm/mlock.c: change count_mm_mlocked_page_nr return type (Rafael Aquini) [1735181] - [mm] mm/mlock.c: mlockall error for flag MCL_ONFAULT (Rafael Aquini) [1735181] - [mm] mm/list_lru.c: fix memory leak in __memcg_init_list_lru_node (Rafael Aquini) [1735181] - [mm] memcg: make it work on sparse non-0-node systems (Rafael Aquini) [1735181] - [mm] prctl_set_mm: downgrade mmap_sem to read lock (Rafael Aquini) [1735181] - [mm] mm/debug.c: fix __dump_page when mapping->host is not set (Rafael Aquini) [1735181] - [mm] mm/debug.c: fix __dump_page() for poisoned pages (Rafael Aquini) [1735181] - [mm] mm: update references to page _refcount (Rafael Aquini) [1735181] - [mm] mm: lower the printk loglevel for __dump_page messages (Rafael Aquini) [1735181] - [mm] mm: print more information about mapping in __dump_page (Rafael Aquini) [1735181] - [mm] hugetlb: use same fault hash key for shared and private mappings (Rafael Aquini) [1735181] - [mm] mm/hugetlb.c: don't put_page in lock of hugetlb_lock (Rafael Aquini) [1735181] - [mm] mm: fix inactive list balancing between NUMA nodes and cgroups (Rafael Aquini) [1735181] - [mm] mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate (Rafael Aquini) [1735181] - [mm] mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified (Rafael Aquini) [1734286 1735181] - [mm] mm/hotplug: fix offline undo_isolate_page_range() (Rafael Aquini) [1735181] - [mm] mm/sparse: fix a bad comparison (Rafael Aquini) [1735181] - [mm] mm, swap: bounds check swap_info array accesses to avoid NULL derefs (Rafael Aquini) [1735181] - [mm] mm/vmalloc.c: don't dereference possible NULL pointer in __vunmap() (Rafael Aquini) [1735181] - [mm] mm: hwpoison: fix thp split handing in soft_offline_in_use_page() (Rafael Aquini) [1735181] - [mm] hugetlbfs: fix races and page leaks during migration (Rafael Aquini) [1735181] - [mm] tmpfs: fix uninitialized return value in shmem_link (Rafael Aquini) [1735181] - [mm] tmpfs: fix link accounting when a tmpfile is linked in (Rafael Aquini) [1735181] - [mm] mm: migrate: don't rely on __PageMovable() of newpage after unlocking it (Rafael Aquini) [1735181] - [mm] oom, oom_reaper: do not enqueue same task twice (Rafael Aquini) [1735181] - [mm] mm: page_mapped: don't assume compound page is huge or THP (Rafael Aquini) [1735181] - [mm] mm, memcg: fix reclaim deadlock with writeback (Rafael Aquini) [1735181] - [mm] mm, swap: fix swapoff with KSM pages (Rafael Aquini) [1735181] - [mm] mm/huge_memory: fix lockdep complaint on 32-bit i_size_read() (Rafael Aquini) [1735181] - [mm] mm/huge_memory: splitting set mapping+index before unfreeze (Rafael Aquini) [1735181] - [mm] mm/huge_memory: rename freeze_page() to unmap_page() (Rafael Aquini) [1735181] - [mm] mm/page_alloc.c: fix calculation of pgdat->nr_zones (Rafael Aquini) [1735181] - [mm] mm: use swp_offset as key in shmem_replace_page() (Rafael Aquini) [1735181] - [mm] mm: cleancache: fix corruption on missed inode invalidation (Rafael Aquini) [1735181] - [mm] mm/vmstat.c: fix NUMA statistics updates (Rafael Aquini) [1735181] - [mm] mm, swap: make CONFIG_THP_SWAP depend on CONFIG_SWAP (Rafael Aquini) [1735181] - [mm] ARM: 8820/1: mm: Stop printing the virtual memory layout (Rafael Aquini) [1655192] - [netdrv] net: dsa: bcm_sf2: Remove print of base address (Rafael Aquini) [1655192] - [netdrv] net: systemport: Remove print of base address (Rafael Aquini) [1655192] - [netdrv] net: phy: mdio-bcm-unimac: Remove print of base address (Rafael Aquini) [1655192] - [x86] x86/mm: Don't leak kernel addresses (Rafael Aquini) [1655192] - [x86] x86/realmode: Make set_real_mode_mem() static inline (Rafael Aquini) [1655192] - [x86] x86/realmode: Don't leak the trampoline kernel address (Rafael Aquini) [1655192] - [arm64] arm64/vdso: don't leak kernel addresses (Rafael Aquini) [1655192] - [powerpc] powerpc/traps: Fix the message printed when stack overflows (Rafael Aquini) [1655192] - [kernel] kdb: print real address of pointers instead of hashed addresses (Rafael Aquini) [1655192] - [kernel] kdb: use correct pointer when 'btc' calls 'btt' (Rafael Aquini) [1655192]- [fs] signal: Allow cifs and drbd to receive their terminating signals (Leif Sahlberg) [1757670] - [fs] smb3: fix unmount hang in open_shroot (Leif Sahlberg) [1757670] - [fs] cifs: update internal module number (Leif Sahlberg) [1757670] - [fs] cifs: replace various strncpy with strscpy and similar (Leif Sahlberg) [1757670] - [fs] cifs: Use kzfree() to zero out the password (Leif Sahlberg) [1757670] - [fs] cifs: set domainName when a domain-key is used in multiuser (Leif Sahlberg) [1757670] - [fs] SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL (Leif Sahlberg) [1757670] - [fs] smb3: send CAP_DFS capability during session setup (Leif Sahlberg) [1757670] - [fs] SMB3: Fix potential memory leak when processing compound chain (Leif Sahlberg) [1757670] - [fs] SMB3: Fix deadlock in validate negotiate hits reconnect (Leif Sahlberg) [1757670] - [fs] cifs: fix rmmod regression in cifs.ko caused by force_sig changes (Leif Sahlberg) [1757670] - [fs] cifs: update internal module number (Leif Sahlberg) [1757670] - [fs] cifs: flush before set-info if we have writeable handles (Leif Sahlberg) [1757670] - [fs] smb3: optimize open to not send query file internal info (Leif Sahlberg) [1757670] - [fs] CIFS: fix deadlock in cached root handling (Leif Sahlberg) [1757670] - [fs] cifs: fix crash in cifs_dfs_do_automount (Leif Sahlberg) [1757670] - [fs] cifs: fix parsing of symbolic link error response (Leif Sahlberg) [1757670] - [fs] cifs: refactor and clean up arguments in the reparse point parsing (Leif Sahlberg) [1757670] - [fs] SMB3: query inode number on open via create context (Leif Sahlberg) [1757670] - [fs] smb3: Send netname context during negotiate protocol (Leif Sahlberg) [1757670] - [fs] smb3: do not send compression info by default (Leif Sahlberg) [1757670] - [fs] smb3: add new mount option to retrieve mode from special ACE (Leif Sahlberg) [1757670] - [fs] smb3: Allow query of symlinks stored as reparse points (Leif Sahlberg) [1757670] - [fs] cifs: Fix a race condition with cifs_echo_request (Leif Sahlberg) [1757670] - [fs] cifs: always add credits back for unsolicited PDUs (Leif Sahlberg) [1757670] - [fs] fs: cifs: cifsssmb: Change return type of convert_ace_to_cifs_ace (Leif Sahlberg) [1757670] - [fs] add some missing definitions (Leif Sahlberg) [1757670] - [fs] cifs: fix typo in debug message with struct field ia_valid (Leif Sahlberg) [1757670] - [fs] smb3: minor cleanup of compound_send_recv (Leif Sahlberg) [1757670] - [fs] CIFS: Fix module dependency (Leif Sahlberg) [1757670] - [fs] cifs: simplify code by removing CONFIG_CIFS_ACL ifdef (Leif Sahlberg) [1757670] - [fs] cifs: Fix check for matching with existing mount (Leif Sahlberg) [1757670] - [fs] cifs: Properly handle auto disabling of serverino option (Leif Sahlberg) [1757670] - [fs] smb3: if max_credits is specified then display it in /proc/mounts (Leif Sahlberg) [1757670] - [fs] Fix match_server check to allow for auto dialect negotiate (Leif Sahlberg) [1757670] - [fs] cifs: add missing GCM module dependency (Leif Sahlberg) [1757670] - [fs] SMB3.1.1: Add GCM crypto to the encrypt and decrypt functions (Leif Sahlberg) [1757670] - [fs] SMB3: Add SMB3.1.1 GCM to negotiated crypto algorigthms (Leif Sahlberg) [1757670] - [fs] fs: cifs: Drop unlikely before IS_ERR(_OR_NULL) (Leif Sahlberg) [1757670] - [fs] cifs: Use kmemdup in SMB2_ioctl_init() (Leif Sahlberg) [1757670] - [fs] SMB3: retry on STATUS_INSUFFICIENT_RESOURCES instead of failing write (Leif Sahlberg) [1757670] - [fs] cifs: fix panic in smb2_reconnect (Leif Sahlberg) [1757670] - [fs] CIFS: cifs_read_allocate_pages: don't iterate through whole page array on ENOMEM (Leif Sahlberg) [1757670] - [fs] dfs_cache: fix a wrong use of kfree in flush_cache_ent() (Leif Sahlberg) [1757670] - [fs] fs/cifs/smb2pdu.c: fix buffer free in SMB2_ioctl_free (Leif Sahlberg) [1757670] - [fs] cifs: fix memory leak of pneg_inbuf on -EOPNOTSUPP ioctl case (Leif Sahlberg) [1757670] - [fs] cifs: add support for SEEK_DATA and SEEK_HOLE (Leif Sahlberg) [1757670] - [fs] cifs: Allocate memory for all iovs in smb2_ioctl (Leif Sahlberg) [1757670] - [fs] cifs: Don't match port on SMBDirect transport (Leif Sahlberg) [1757670] - [fs] cifs:smbd Use the correct DMA direction when sending data (Leif Sahlberg) [1757670] - [fs] cifs:smbd When reconnecting to server, call smbd_destroy() after all MIDs have been called (Leif Sahlberg) [1757670] - [fs] smb3: trivial cleanup to smb2ops.c (Leif Sahlberg) [1757670] - [fs] cifs: cleanup smb2ops.c and normalize strings (Leif Sahlberg) [1757670] - [fs] smb3: display session id in debug data (Leif Sahlberg) [1757670] - [fs] cifs: update module internal version number (Leif Sahlberg) [1757670] - [fs] cifs: fix crash querying symlinks stored as reparse-points (Leif Sahlberg) [1757670] - [fs] SMB3: Clean up query symlink when reparse point (Leif Sahlberg) [1757670] - [fs] cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() (Leif Sahlberg) [1757670] - [fs] Negotiate and save preferred compression algorithms (Leif Sahlberg) [1757670] - [fs] cifs: rename and clarify CIFS_ASYNC_OP and CIFS_NO_RESP (Leif Sahlberg) [1757670] - [fs] smb3: Add protocol structs for change notify support (Leif Sahlberg) [1757670] - [fs] cifs: fix smb3_zero_range for Azure (Leif Sahlberg) [1757670] - [fs] cifs: zero-range does not require the file is sparse (Leif Sahlberg) [1757670] - [fs] Add new flag on SMB3.1.1 read (Leif Sahlberg) [1757670] - [fs] cifs: add fiemap support (Leif Sahlberg) [1757670] - [fs] SMB3: Add defines for new negotiate contexts (Leif Sahlberg) [1757670] - [fs] cifs: fix bi-directional fsctl passthrough calls (Leif Sahlberg) [1757670] - [fs] cifs: smbd: take an array of reqeusts when sending upper layer data (Leif Sahlberg) [1757670] - [fs] SMB3: Add handling for different FSCTL access flags (Leif Sahlberg) [1757670] - [fs] cifs: Add support for FSCTL passthrough that write data to the server (Leif Sahlberg) [1757670] - [fs] cifs: remove superfluous inode_lock in cifs_{strict_}fsync (Leif Sahlberg) [1757670] - [fs] cifs: Call MID callback before destroying transport (Leif Sahlberg) [1757670] - [fs] smbd: Make upper layer decide when to destroy the transport (Leif Sahlberg) [1757670] - [fs] SMB3: update comment to clarify enumerating snapshots (Leif Sahlberg) [1757670] - [fs] CIFS: check CIFS_MOUNT_NO_DFS when trying to reuse existing sb (Leif Sahlberg) [1757670] - [fs] CIFS: Show locallease in /proc/mounts for cifs shares mounted with locallease feature. (Leif Sahlberg) [1757670] - [fs] cifs: Fix DFS cache refresher for DFS links (Leif Sahlberg) [1757670] - [fs] cifs: don't use __constant_cpu_to_le32() (Leif Sahlberg) [1757670] - [fs] SMB3: Track total time spent on roundtrips for each SMB3 command (Leif Sahlberg) [1757670] - [fs] cifs: use the right include for signal_pending() (Leif Sahlberg) [1757670] - [fs] CIFS: Mask off signals when sending SMB packets (Leif Sahlberg) [1757670] - [infiniband] RDMA/umem: Revert broken 'off by one' fix (Kamal Heib) [1720888] - [infiniband] RDMA/umem: minor bug fix in error handling path (Kamal Heib) [1720888] - [infiniband] RDMA/uverbs: Don't do double free of allocated PD (Kamal Heib) [1720888] - [infiniband] RDMA: Handle ucontext allocations by IB/core (Kamal Heib) [1720888] - [infiniband] cross-tree: phase out dma_zalloc_coherent() (Kamal Heib) [1720888] - [infiniband] RDMA/core: Fix a WARN() message (Kamal Heib) [1720888] - [infiniband] RDMA/uverbs: Store PR pointer before it is overwritten (Kamal Heib) [1720888] - [infiniband] RDMA/core: Cosmetic change - move member initialization to correct block (Kamal Heib) [1720888] - [infiniband] rdma_rxe: Use netlink messages to add/delete links (Kamal Heib) [1720888] - [infiniband] RDMA/core: Add RDMA_NLDEV_CMD_NEWLINK/DELLINK support (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Close a race after ib_register_device (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Add ib_device_get_by_name() and use it in rxe (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Use driver_unregister and new unregistration API (Kamal Heib) [1720888] - [infiniband] RDMA/device: Provide APIs from the core code to help unregistration (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Use ib_device_get_by_netdev() instead of open coding (Kamal Heib) [1720888] - [infiniband] RDMA/device: Add ib_device_get_by_netdev() (Kamal Heib) [1720888] - [infiniband] RDMA/device: Add ib_device_set_netdev() as an alternative to get_netdev (Kamal Heib) [1720888] - [infiniband] RDMA/cache: Move the cache per-port data into the main ib_port_data (Kamal Heib) [1720888] - [infiniband] RDMA/device: Consolidate ib_device per_port data into one place (Kamal Heib) [1720888] - [infiniband] RDMA: Add and use rdma_for_each_port (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Don't expose number of not-visible entries (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Connect QP number to .doit callback (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Provide parent IDs for PD, MR and QP objects (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Share with user-space object IDs (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Prepare restrack_root to addition of extra fields per-type (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Hide restrack DB from IB/core (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Reduce scope of synchronization lock while updating DB (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Add resource tracker doit callback (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Translate from ID to restrack object (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Convert internal DB from hash to XArray (Kamal Heib) [1720888] - [infiniband] RDMA/core: Move device addition deletion to device.c (Kamal Heib) [1720888] - [infiniband] RDMA/core: Introduce and use ib_setup_port_attrs() (Kamal Heib) [1720888] - [infiniband] RDMA/core: Use simpler device_del() instead of device_unregister() (Kamal Heib) [1720888] - [infiniband] RDMA/nes: Remove useless usecnt variable and redundant memset (Kamal Heib) [1720888] - [infiniband] IB/{hw, sw}: Remove 'uobject->context' dependency in object creation APIs (Kamal Heib) [1720888] - [infiniband] RDMA/qedr: remove set but not used variable 'ib_ctx' (Kamal Heib) [1720888] - [infiniband] RDMA/mthca: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Kamal Heib) [1720888] - [infiniband] RDMA/mthca: Clear QP objects during their allocation (Kamal Heib) [1720888] - [include] IB/verbs: Add helper function rdma_udata_to_drv_context (Kamal Heib) [1720888] - [infiniband] IB/uverbs: Add ib_ucontext to uverbs_attr_bundle sent from ioctl and cmd flows (Kamal Heib) [1720888] - [infiniband] IB/ipoib: Use __func__ instead of function's name (Kamal Heib) [1720888] - [infiniband] RDMA/iwpm: Remove set but not used variable 'msg_seq' (Kamal Heib) [1720888] - [infiniband] RDMA/nes: Use for_each_sg_dma_page iterator for umem SGL (Kamal Heib) [1720888] - [net] xprtrdma: Check inline size before providing a Write chunk (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA/vmw_pvrdma: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Re-organize device.c locking (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Use xarray to store the client_data (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Use xarray to store the clients (Kamal Heib) [1720888] - [infiniband] RDMA/device: Use an ida instead of a free page in alloc_name (Kamal Heib) [1720888] - [infiniband] RDMA/device: Get rid of reg_state (Kamal Heib) [1720888] - [infiniband] RDMA/device: Check that the rename is nop under the lock (Kamal Heib) [1720888] - [infiniband] RDMA: Handle PD allocations by IB/core (Kamal Heib) [1720888] - [infiniband] RDMA/hns: fix spelling mistake "reseved" -> "reserved" (Kamal Heib) [1720888] - [infiniband] RDMA/core: Share driver structure size with core (Kamal Heib) [1720888] - [infiniband] IB/cma: Define option to set ack timeout and pack tos_set (Kamal Heib) [1720888] - [infiniband] drivers/IB,core: reduce scope of mmap_sem (Kamal Heib) [1720888] - [infiniband] drivers/IB,usnic: reduce scope of mmap_sem (Kamal Heib) [1720888] - [net] svcrdma: Remove syslog warnings in work completion handlers (Kamal Heib) [1720888] - [net] svcrdma: Squelch compiler warning when SUNRPC_DEBUG is disabled (Kamal Heib) [1720888] - [net] svcrdma: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [infiniband] RDMA/iwpm: move kdoc comments to functions (Kamal Heib) [1720888] - [infiniband] RDMA/cma: Remove CM_ID statistics provided by rdma-cm module (Kamal Heib) [1720888] - [infiniband] scsi: RDMA/srpt: Rework I/O context allocation (Kamal Heib) [1720888] - [infiniband] scsi: RDMA/srpt: Fix handling of command / TMF submission failure (Kamal Heib) [1720888] - [infiniband] RDMA/IWPM: Support no port mapping requirements (Kamal Heib) [1720888] - [infiniband] RDMA/IWPM: refactor the IWPM message attribute names (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Improve loopback marking (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Move rxe_init_av() to rxe_av.c (Kamal Heib) [1720888] - [infiniband] IB/core: Remove ib_sg_dma_address() and ib_sg_dma_len() (Kamal Heib) [1720888] - [infiniband] IB/uverbs: Expose XRC ODP device capabilities (Kamal Heib) [1720888] - [include] IB/core: Allocate a bit for SRQ ODP support (Kamal Heib) [1720888] - [infiniband] RDMA/core: Use the ops infrastructure to keep all callbacks in one place (Kamal Heib) [1720888] - [infiniband] RDMA/cxgb4: Sort SRQ ops alphabetically (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Refactor user/kernel restrack additions (Kamal Heib) [1720888] - [infiniband] RDMA/core: Simplify restrack interface (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Prepare CAP_NET_ADMIN checks for .doit callbacks (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Factor out the PID namespace check (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Dynamically generate restrack dumpit callbacks (Kamal Heib) [1720888] - [infiniband] IB/usnic: Remove stub functions (Kamal Heib) [1720888] - [infiniband] RDMA: Add indication for in kernel API support to IB device (Kamal Heib) [1720888] - [infiniband] IB/mlx5: Introduce async DEVX obj query API (Kamal Heib) [1720888] - [infiniband] IB/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_CMD_FD (Kamal Heib) [1720888] - [infiniband] infiniband: prefix header search paths with $(srctree)/ (Kamal Heib) [1720888] - [infiniband] infiniband: remove unneeded header search paths (Kamal Heib) [1720888] - [infiniband] infiniband: ipoib: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] infiniband: usnic: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] infiniband: ocrdma: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Use PCI-ID as an identification in debugfs (Kamal Heib) [1720888] - [infiniband] IB/umad: Do not check status of nonseekable_open() (Kamal Heib) [1720888] - [infiniband] IB/umad: Avoid additional device reference during open()/close() (Kamal Heib) [1720888] - [infiniband] IB/rxe: Remove unnecessary rxe variable (Kamal Heib) [1720888] - [infiniband] IB/core: Simplify rdma cgroup registration (Kamal Heib) [1720888] - [infiniband] RDMA/device: Use __ib_device_get_by_name() in ib_device_rename() (Kamal Heib) [1720888] - [infiniband] RDMA: Rename port_callback to init_port (Kamal Heib) [1720888] - [infiniband] RDMA: Clear CTX objects during their allocation (Kamal Heib) [1720888] - [infiniband] RDMA: Clear PD objects during their allocation (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Fix out of bounds index check in query pkey (Kamal Heib) [1720888] - [infiniband] IB/{core, hw}: Have ib_umem_get extract the ib_ucontext from ib_udata (Kamal Heib) [1720888] - [infiniband] IB/{core, uverbs}: Move ib_umem_xxx functions from ib_core to ib_uverbs (Kamal Heib) [1720888] - [infiniband] RDMA/core: Don't depend device ODP capabilities on kconfig option (Kamal Heib) [1720888] - [infiniband] IB/srp: Use struct_size() in kzalloc() (Kamal Heib) [1720888] - [infiniband] IB/core: Use struct_size() in kzalloc() (Kamal Heib) [1720888] - [infiniband] IB/usnic: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [infiniband] IB/cm: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [mm] mm: introduce put_user_page*(), placeholder versions (Rafael Aquini) [1746371] - [mm] mm/gup: add FOLL_LONGTERM capability to GUP fast (Rafael Aquini) [1746371] - [mm] mm/gup: change GUP fast to use flags rather than a write 'bool' (Rafael Aquini) [1746371] - [mm] mm/gup: change write parameter to flags in fast walk (Rafael Aquini) [1746371] - [mm] mm/gup: replace get_user_pages_longterm() with FOLL_LONGTERM (Rafael Aquini) [1746371] - [s390] s390/mm: fix pxd_bad with folded page tables (Rafael Aquini) [1746371] - [s390] s390/mm: fix dump_pagetables top level page table walking (Rafael Aquini) [1746371] - [s390] s390/mm: convert to the generic get_user_pages_fast code (Rafael Aquini) [1746371] - [s390] s390/mm: make the pxd_offset functions more robust (Rafael Aquini) [1746371] - [mm] mm/gup: fix gup_pmd_range() for dax (Rafael Aquini) [1746371] - [mm] mm/gup: remove the 'write' parameter from gup_fast_permitted() (Rafael Aquini) [1746371] - [mm] mm/gup: fix follow_page_mask() kerneldoc comment (Rafael Aquini) [1746371] - [mm] mm/gup: fix __get_user_pages_fast() comment (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: prevent integer overflow in ioctl (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: add additional pinning methods (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: time put_page() (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: fix unsigned comparison to zero in __gup_benchmark_ioctl (Rafael Aquini) [1746371] - [mm] mm: remove caller signal_pending branch predictions (Rafael Aquini) [1746371] - [mm] mm: remove unnecessary local variable addr in __get_user_pages_fast() (Rafael Aquini) [1746371] - [mm] mm: change return type int to vm_fault_t for fault handlers (Rafael Aquini) [1746371] - [mm] mm: make mm->pinned_vm an atomic64 counter (Rafael Aquini) [1746371]- [kernel] sched/core: Schedule new worker even if PI-blocked (Waiman Long) [1758629] - [char] random: add a spinlock_t to struct batched_entropy (Waiman Long) [1758629] - [crypto] crypto: chacha20 - Fix chacha20_block() keystream alignment (again) (Waiman Long) [1758629] - [fs] locking/percpu-rwsem: Remove preempt_disable variants (Waiman Long) [1758629] - [x86] x86/tsc: Add option to disable tsc clocksource watchdog (Waiman Long) [1758629] - [x86] x86/irq: Handle spurious interrupt after shutdown gracefully (Waiman Long) [1758629] - [x86] x86/ioapic: Implement irq_get_irqchip_state() callback (Waiman Long) [1758629] - [kernel] genirq: Add optional hardware synchronization for shutdown (Waiman Long) [1758629] - [kernel] genirq: Fix misleading synchronize_irq() documentation (Waiman Long) [1758629] - [kernel] genirq: Delay deactivation in free_irq() (Waiman Long) [1758629] - [kernel] genirq: Remove redundant NULL pointer check in __free_irq() (Waiman Long) [1758629] - [kernel] genirq: Synchronize only with single thread on free_irq() (Waiman Long) [1758629] - [kernel] genirq: Update code comments wrt recycled thread_mask (Waiman Long) [1758629] - [usb] usb: core: remove flags variable in __usb_hcd_giveback_urb() (Waiman Long) [1758629] - [usb] usb: core: remove local_irq_save() around ->complete() handler (Waiman Long) [1758629] - [media] media: tm6000: use irqsave() in USB's complete callback (Waiman Long) [1758629] - [media] media: em28xx-audio: use irqsave() in USB's complete callback (Waiman Long) [1758629] - [x86] x86/mm/cpa: Optimize __cpa_flush_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Factor common code between cpa_flush_*() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move CLFLUSH test into cpa_flush_array() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move CLFLUSH test into cpa_flush_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Use flush_tlb_kernel_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Unconditionally avoid WBINDV when we can (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move flush_tlb_all() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Use flush_tlb_all() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Avoid the 4k pages check completely (Waiman Long) [1758629] - [x86] x86/mm/cpa: Do the range check early (Waiman Long) [1758629] - [x86] x86/mm/cpa: Optimize same protection check (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add sanity check for existing mappings (Waiman Long) [1758629] - [x86] x86/mm/cpa: Avoid static protection checks on unmap (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add large page preservation statistics (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add debug mechanism (Waiman Long) [1758629] - [x86] x86/mm/cpa: Allow range check for static protections (Waiman Long) [1758629] - [x86] x86/mm/cpa: Rework static_protections() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Split, rename and clean up try_preserve_large_page() (Waiman Long) [1758629] - [x86] x86/mm/init32: Mark text and rodata RO in one go (Waiman Long) [1758629] - [mm] mm/kasan/quarantine.c: make quarantine_lock a raw_spinlock_t (Waiman Long) [1758629] - [mm] mm/list_lru.c: fold __list_lru_count_one() into its caller (Waiman Long) [1758629] - [mm] mm: workingset: make shadow_lru_isolate() use locking suffix (Waiman Long) [1758629] - [mm] mm: workingset: remove local_irq_disable() from count_shadow_nodes() (Waiman Long) [1758629] - [iommu] iommu/amd: Remove redundant WARN_ON() (Waiman Long) [1758629] - [mm] mm/list_lru: introduce list_lru_shrink_walk_irq() (Waiman Long) [1758629] - [mm] mm/list_lru.c: pass struct list_lru_node* as an argument to __list_lru_walk_one() (Waiman Long) [1758629] - [mm] mm/list_lru.c: move locking from __list_lru_walk_one() to its caller (Waiman Long) [1758629] - [mm] mm/list_lru.c: use list_lru_walk_one() in list_lru_walk_node() (Waiman Long) [1758629] - [kernel] userns: use irqsave variant of refcount_dec_and_lock() (Waiman Long) [1758629] - [kernel] userns: use refcount_t for reference counting instead atomic_t (Waiman Long) [1758629] - [kernel] bdi: use irqsave variant of refcount_dec_and_lock() (Waiman Long) [1758629] - [mm] bdi: use refcount_t for reference counting instead atomic_t (Waiman Long) [1758629] - [char] random: remove preempt disabled region (Waiman Long) [1758629] - [misc] ocxl: Update for AFU descriptor template version 1.1 (Steve Best) [1751207] - [misc] ocxl: Make ocxl_remove() static (Steve Best) [1751207] - [misc] ocxl: do not use C++ style comments in uapi header (Steve Best) [1751207] - [misc] ocxl: Allow contexts to be attached with a NULL mm (Steve Best) [1751207] - [misc] ocxl: Fix return value check in afu_ioctl() (Steve Best) [1751207] - [misc] ocxl: Provide global MMIO accessors for external drivers (Steve Best) [1751207] - [misc] ocxl: move event_fd handling to frontend (Steve Best) [1751207] - [misc] ocxl: afu_irq only deals with IRQ IDs, not offsets (Steve Best) [1751207] - [misc] ocxl: Allow external drivers to use OpenCAPI contexts (Steve Best) [1751207] - [misc] ocxl: Create a clear delineation between ocxl backend & frontend (Steve Best) [1751207] - [misc] ocxl: Don't pass pci_dev around (Steve Best) [1751207] - [misc] ocxl: Split pci.c (Steve Best) [1751207] - [misc] ocxl: Remove some unused exported symbols (Steve Best) [1751207] - [misc] ocxl: Remove superfluous 'extern' from headers (Steve Best) [1751207] - [misc] ocxl: read_pasid never returns an error, so make it void (Steve Best) [1751207] - [misc] ocxl: Rename struct link to ocxl_link (Steve Best) [1751207] - [misc] ocxl: remove set but not used variables 'tid' and 'lpid' (Steve Best) [1751207] - [misc] ocxl: Fix endiannes bug in read_afu_name() (Steve Best) [1751207] - [misc] ocxl/afu_irq: Don't include (Steve Best) [1751207] - [misc] ocxl: Clarify error path in setup_xsl_irq() (Steve Best) [1751207] - [misc] ocxl: Fix endiannes bug in ocxl_link_update_pe() (Steve Best) [1751207] - [misc] ocxl: Fix access to the AFU Descriptor Data (Steve Best) [1751207] - [netdrv] gve: account for lack of netdev_xmit_more() definition (RHEL-only) (John Linville) [1728864] - [netdrv] gve: Copy and paste bug in gve_get_stats() (John Linville) [1728864] - [netdrv] gve: Fix case where desc_cnt and data_cnt can get out of sync (John Linville) [1728864] - [netdrv] gve: replace kfree with kvfree (John Linville) [1728864] - [netdrv] gve: Remove the exporting of gve_probe (John Linville) [1728864] - [netdrv] gve: fix unused variable/label warnings (John Linville) [1728864] - [netdrv] gve: Fix error return code in gve_alloc_qpls() (John Linville) [1728864] - [netdrv] gve: fix -ENOMEM null check on a page allocation (John Linville) [1728864] - [netdrv] gve: Fix u64_stats_sync to initialize start (John Linville) [1728864] - [netdrv] gve: Add ethtool support (John Linville) [1728864] - [netdrv] gve: Add workqueue and reset support (John Linville) [1728864] - [netdrv] gve: Add transmit and receive support (John Linville) [1728864] - [netdrv] gve: Add basic driver framework for Compute Engine Virtual NIC (John Linville) [1728864] - [mfd] mfd: intel-lpss: Add Intel Comet Lake PCI IDs (David Arcari) [1761586] - [scsi] scsi: core: save/restore command resid for error handling (Ewan Milne) [1760503] - [scsi] scsi: sd: Ignore a failure to sync cache due to lack of authorization (Ewan Milne) [1760503] - [scsi] scsi: core: Add sysfs attributes for VPD pages 0h and 89h (Ewan Milne) [1760503] - [scsi] scsi: core: Log SCSI command age with errors (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_rdac: zero cdb in send_mode_select() (Ewan Milne) [1760503] - [scsi] scsi: sd: Improve unaligned completion resid message (Ewan Milne) [1760503] - [scsi] scsi: core: Reduce memory required for SCSI logging (Ewan Milne) [1760503] - [scsi] scsi: core: Complain if scsi_target_block() fails (Ewan Milne) [1760503] - [scsi] scsi: core: Make scsi_internal_device_unblock_nowait() reject invalid new_state (Ewan Milne) [1760503] - [scsi] scsi: scsi_debugfs: Use for_each_set_bit to simplify code (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_alua: always use a 2 second delay before retrying RTPG (Ewan Milne) [1760503] - [scsi] scsi: sd_zbc: Fix compilation warning (Ewan Milne) [1760503] - [scsi] scsi: devinfo: BLIST_TRY_VPD_PAGES for SanDisk Cruzer Blade (Ewan Milne) [1760503] - [scsi] scsi: core: use scmd_printk() to print which command timed out (Ewan Milne) [1760503] - [scsi] scsi: Avoid that .queuecommand() gets called for a blocked SCSI device (Ewan Milne) [1760503] - [scsi] scsi: core: don't preallocate small SGL in case of NO_SG_CHAIN (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_alua: Fix possible null-ptr-deref (Ewan Milne) [1760503] - [scsi] scsi: st: add a SPDX tag to st.c (Ewan Milne) [1760503] - [scsi] scsi: sr: add a SPDX tag to sr.c (Ewan Milne) [1760503] - [scsi] scsi: sg: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: sd: switch remaining files to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: sd: add a SPDX tag to sd.c (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_srp: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_spi: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_sas: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_iscsi: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_fc: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: core: switch the remaining scsi midlayer files to use SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: core: add SPDX tags to scsi midlayer files missing licensing information (Ewan Milne) [1760503] - [scsi] Revert "scsi: sd: Keep disk read-only when re-reading partition" (Ewan Milne) [1760503] - [scsi] scsi: core: set result when the command cannot be dispatched (Ewan Milne) [1760503] - [scsi] scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT (Ewan Milne) [1760503] - [scsi] scsi: core: don't hold device refcount in IO path (Ewan Milne) [1760503] - [scsi] scsi: sd: Quiesce warning if device does not report optimal I/O size (Ewan Milne) [1760503] - [scsi] scsi: core: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Ewan Milne) [1760503] - [scsi] scsi: core: Avoid that a kernel warning appears during system resume (Ewan Milne) [1760503] - [scsi] scsi: core: Also call destroy_rcu_head() for passthrough requests (Ewan Milne) [1760503] - [scsi] scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c (Ewan Milne) [1760503] - [scsi] scsi: sd: Optimal I/O size should be a multiple of physical block size (Ewan Milne) [1760503] - [scsi] scsi: sd: Fix typo in sd_first_printk() (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: Implement support for write protect (Ewan Milne) [1760503] - [scsi] scsi: sd_zbc: Fix zone information messages (Ewan Milne) [1760503] - [scsi] scsi: sd: Improve sd_print_capacity() (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: fix write_same with virtual_gb problem (Ewan Milne) [1760503] - [scsi] scsi: sd: Protect against READ(6) or WRITE(6) with zero block transfer length (Ewan Milne) [1760503] - [scsi] scsi: core: Remove an atomic instruction from the hot path (Ewan Milne) [1760503] - [scsi] scsi: sd: Rename 'SCpnt' into 'cmd' (Ewan Milne) [1760503] - [scsi] scsi: sd: Clean up sd_setup_read_write_cmnd() (Ewan Milne) [1760503] - [scsi] scsi: sd: Create helper functions for read/write commands (Ewan Milne) [1760503] - [scsi] scsi: sd: Simplify misaligned I/O check (Ewan Milne) [1760503] - [scsi] scsi: sd: Be consistent about blocks vs. sectors (Ewan Milne) [1760503] - [scsi] scsi: sd: Remove a local variable (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: add cmd abort option to every_nth (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: skip long delays when ndelay small (Ewan Milne) [1760503] - [x86] efi/x86: Do not clean dummy variable in kexec path (Bhupesh Sharma) [1724436] - [scsi] scsi: csiostor: create per port irq affinity mask set (Jonathan Toppins) [1725816] - [pci] PCI: let pci_disable_link_state propagate errors (Myron Stowe) [1735834] - [scsi] scsi: scsi_transport_fc: Add FPIN fc event codes (Ewan Milne) [1755587] - [scsi] scsi: scsi_transport_fc: refactor event posting routines (Ewan Milne) [1755587] - [scsi] scsi: fc: add FPIN ELS definition (Ewan Milne) [1755587] - [scsi] scsi: lib/sg_pool.c: clear 'first_chunk' in case of no preallocation (Ewan Milne) [1747162] - [scsi] scsi: core: Run queue when state is set to running after being blocked (Ewan Milne) [1691599] - [scsi] scsi: sd: Fix a race between closing an sd device and sd I/O (Ewan Milne) [1689118] - [net] net/ibmvnic: Fix EOI when running in XIVE mode. (Steve Best) [1761378] - [powerpc] powerpc/mce: Fix SLB rebolting during MCE recovery path. (Desnes Augusto Nunes do Rosario) [1725842] - [powerpc] powerpc/pseries: hwpoison the pages upon hitting UE (Desnes Augusto Nunes do Rosario) [1725842] - [x86] perf/x86/amd: Change/fix NMI latency mitigation to use a timestamp (David Arcari) [1730134] - [arm64] arm64: entry: Remove unneeded need_resched() loop (Mark Langsdorf) [1737075] - [arm64] arm64: preempt: Fix big-endian when checking preempt count in assembly (Mark Langsdorf) [1737075] - [arm64] arm64: preempt: Provide our own implementation of asm/preempt.h (Mark Langsdorf) [1737075] - [include] preempt: Move PREEMPT_NEED_RESCHED definition into arch code (Mark Langsdorf) [1737075] - [x86] x86/intel_rdt: Ensure a CPU remains online for the region's pseudo-locking sequence (Alexander Beregalov) [1724902] - [kernel] perf/core: Add sanity check to deal with pinned event failure (Alexander Beregalov) [1724902] - [arm64] arm64/sve: Fix wrong free for task->thread.sve_state (Andrew Jones) [1756450] - [scsi] scsi: lpfc: Update lpfc version to 12.4.0.1 (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: cleanup: remove unused fcp_txcmlpq_cnt (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Complete removal of FCoE T10 PI support on SLI-4 adapters (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Update async event logging (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix list corruption detected in lpfc_put_sgl_per_hdwq (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix hdwq sgl locks and irq handling (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix spinlock_irq issues in lpfc_els_flush_cmd() (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix list corruption in lpfc_sli_get_iocbq (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix host hang at boot or slow boot (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix coverity errors on NULL pointer checks (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix NVMe ABTS in response to receiving an ABTS (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix discovery failures when target device connectivity bounces (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix GPF on scsi command completion (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix locking on mailbox command completion (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix device recovery errors after PLOGI failures (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix rpi release when deleting vport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix NVME io abort failures causing hangs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix miss of register read failure check (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix premature re-enabling of interrupts in lpfc_sli_host_down (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix pt2pt discovery on SLI3 HBAs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix reset recovery paths that are not recovering (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Convert existing pf users to ps (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: fix 12.4.0.0 GPF at boot (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove bg debugfs buffers (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Resolve checker warning for lpfc_new_io_buf() (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Update lpfc version to 12.4.0.0 (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Merge per-protocol WQ/CQ pairs into single per-cpu pair (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add NVMe sequence level error recovery support (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Support dynamic unbounded SGL lists on G7 hardware. (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add MDS driver loopback diagnostics support (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add first and second level hardware revisions to sysfs reporting (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Migrate to px and pf in kernel print calls (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add simple unlikely optimizations to reduce NVME latency (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix coverity warnings (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme first burst module parameter description (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix BlockGuard enablement on FCoE adapters (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix reported physical link speed on a disabled trunked link (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix Max Frame Size value shown in fdmishow output (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix upcall to bsg done in non-success cases (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix sli4 adapter initialization with MSI (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme sg_seg_cnt display if HBA does not support NVME (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme target mode ABTSing a received ABTS (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix hang when downloading fw on port enabled for nvme (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix too many sg segments spamming in kernel log (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix crash due to port reset racing vs adapter error handling (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix deadlock on host_lock during cable pulls (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix error in remote port address change (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix driver nvme rescan logging (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix sg_seg_cnt for HBAs that don't support NVME (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix propagation of devloss_tmo setting to nvme transport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix loss of remote port after devloss due to lack of RPIs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix devices that don't return after devloss followed by rediscovery (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix null ptr oops updating lpfc_devloss_tmo via sysfs attribute (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix FLOGI handling across multiple link up/down conditions (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix irq raising in lpfc_sli_hba_down (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix Oops in nvme_register with target logout/login (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix issuing init_vpi mbox on SLI-3 card (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix ADISC reception terminating login state if a NVME target (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix discovery when target has no GID_FT information (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix leak of ELS completions on adapter reset (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix failure to clear non-zero eq_delay after io rate reduction (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix crash on driver unload in wq free (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix ELS field alignments (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix PLOGI failure with high remoteport count (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: remove NULL check before some freeing functions (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: use spin_lock_irqsave in IRQ context (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: remove redundant code (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove unnecessary null check before kfree (Dick Kennedy) [1757574] - [scripts] scripts/spelling.txt: drop "sepc" from the misspelling list (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: reduce stack size with CONFIG_GCC_PLUGIN_STRUCTLEAK_VERBOSE (Dick Kennedy) [1757574] - [scsi] lpfc: add sysfs interface to post NVME RSCN (Dick Kennedy) [1757574] - [scsi] lpfc: add support for translating an RSCN rcv into a discovery rescan (Dick Kennedy) [1757574] - [scsi] lpfc: add support to generate RSCN events for nport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: use sg helper to iterate over scatterlist (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Avoid unused function warnings (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Make some symbols static (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove set but not used variables 'qp' (Dick Kennedy) [1757574] - [lib] lib/vsprintf: Reinstate printing of legacy clock IDs (Prarit Bhargava) [1751075] - [lib] vsprintf: fix data type of variable in string_nocheck() (Prarit Bhargava) [1751075] - [scripts] kconfig: tests: fix recursive inclusion unit test (Prarit Bhargava) [1751075] - [kernel] printk: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Prarit Bhargava) [1751075] - [kernel] printk: Add SPDX license identifier for missed files (Prarit Bhargava) [1751075] - [kernel] printk: Add SPDX license identifier for more missed files (Prarit Bhargava) [1751075] - [kernel] panic: add an option to replay all the printk message in buffer (Prarit Bhargava) [1751075] - [kernel] panic: avoid the extra noise dmesg (Prarit Bhargava) [1751075] - [lib] vsprintf: Do not break early boot with probing addresses (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Make function pointer_string static (Prarit Bhargava) [1751075] - [lib] vsprintf: Limit the length of inlined error messages (Prarit Bhargava) [1751075] - [lib] vsprintf: Avoid confusion between invalid address and value (Prarit Bhargava) [1751075] - [lib] vsprintf: Prevent crash when dereferencing invalid pointers (Prarit Bhargava) [1751075] - [lib] vsprintf: Consolidate handling of unknown pointer specifiers (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out pO handler as kobject_string() (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out pV handler as va_format() (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out p[iI] handler as ip_addr_string() (Prarit Bhargava) [1751075] - [lib] vsprintf: Do not check address of well-known strings (Prarit Bhargava) [1751075] - [lib] vsprintf: Consistent pK handling for kptr_restrict == 0 (Prarit Bhargava) [1751075] - [lib] vsprintf: Shuffle restricted_pointer() (Prarit Bhargava) [1751075] - [kernel] printk: Tie printk_once / printk_deferred_once into .data.once for reset (Prarit Bhargava) [1751075] - [lib] lib: Use new kselftest header (Prarit Bhargava) [1751075] - [lib] lib/test_printf: Add empty module_exit function (Prarit Bhargava) [1751075] - [scripts] checkpatch: add pt as a valid vsprintf extension (Prarit Bhargava) [1751075] - [lib] lib/test_printf: Switch to bitmap_zalloc() (Prarit Bhargava) [1751075] - [lib] lib/vsprintf.c: move sizeof(struct printf_spec) next to its definition (Prarit Bhargava) [1751075] - [kernel] printk/docs: Add extra integer types to printk-formats (Prarit Bhargava) [1751075] - [kernel] printk: Remove no longer used LOG_PREFIX. (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Remove pCr remnant in comment (Prarit Bhargava) [1751075] - [kernel] printk: Pass caller information to log_store(). (Prarit Bhargava) [1751075] - [kernel] kernel/sysctl: add panic_print into sysctl (Prarit Bhargava) [1751075] - [kernel] panic: add options to print system info when panic happens (Prarit Bhargava) [1751075] - [include] include/linux/printk.h: drop silly "static inline asmlinkage" from dump_stack() (Prarit Bhargava) [1751075] - [kernel] printk: Add caller information to printk() output. (Prarit Bhargava) [1751075] - [kernel] printk: Remove print_prefix() calls with NULL buffer. (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Print time and date in human readable format via pt (Prarit Bhargava) [1751075] - [kernel] printk: fix printk_time race. (Prarit Bhargava) [1751075] - [kernel] printk: Make printk_emit() local function. (Prarit Bhargava) [1751075] - [documentation] doc: printk-formats: Remove bogus kobject references for device nodes (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Hash printed address for netdev bits fallback (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Hash legacy clock addresses (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Prepare for more general use of ptr_to_id() (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Make ptr argument conts in ptr_to_id() (Prarit Bhargava) [1751075] - [kernel] printk: fix integer overflow in setup_log_buf() (Prarit Bhargava) [1751075] - [kernel] printk: do not preliminary split up cont buffer (Prarit Bhargava) [1751075] - [kernel] printk: lock/unlock console only for new logbuf entries (Prarit Bhargava) [1751075] - [kernel] printk: keep kernel cont support always enabled (Prarit Bhargava) [1751075] - [kernel] printk: Give error on attempt to set log buffer length to over 2G (Prarit Bhargava) [1751075] - [kernel] printk: Add KBUILD_MODNAME and remove a redundant print prefix (Prarit Bhargava) [1751075] - [kernel] printk: Correct wrong casting (Prarit Bhargava) [1751075] - [kernel] printk: CON_PRINTBUFFER console registration is a bit racy (Prarit Bhargava) [1751075] - [kernel] printk: Do not miss new messages when replaying the log (Prarit Bhargava) [1751075] - [kernel] Revert "printk: make sure to print log on console." (Prarit Bhargava) [1751075] - [lib] vsprintf: print OF node name using full_name (Prarit Bhargava) [1751075] - [kernel] printk/tracing: Do not trace printk_nmi_enter() (Prarit Bhargava) [1751075] - [misc] notifier: Remove notifier header file wherever not used (Prarit Bhargava) [1751075] - [init] init: allow initcall tables to be emitted using relative references (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Do not handle pO[^F] as px (Prarit Bhargava) [1751075] - [kernel] console: Replace #if 0 with atomic var 'ignore_console_lock_warning' (Prarit Bhargava) [1751075] - [lib] vsprintf: Use hw RNG for ptr_key (Prarit Bhargava) [1751075] - [kernel] printk: Fix warning about unused suppress_message_printing (Prarit Bhargava) [1751075] - [char] random: Return nbytes filled from hw RNG (Prarit Bhargava) [1751075] - [char] random: Fix whitespace pre random-bytes work (Prarit Bhargava) [1751075] - [kernel] printk/nmi: Prevent deadlock when accessing the main log buffer in NMI (Prarit Bhargava) [1751075] - [kernel] printk: Create helper function to queue deferred console handling (Prarit Bhargava) [1751075] - [kernel] printk: Split the code for storing a message into the log buffer (Prarit Bhargava) [1751075] - [kernel] printk: Clean up syslog_print_all() (Prarit Bhargava) [1751075] - [kernel] printk: Export is_console_locked (Prarit Bhargava) [1751075] - [kernel] printk: Remove unnecessary kmalloc() from syslog during clear (Prarit Bhargava) [1751075] - [kernel] printk: Make CONSOLE_LOGLEVEL_QUIET configurable (Prarit Bhargava) [1751075] - [kernel] printk: make sure to print log on console. (Prarit Bhargava) [1751075] - [lib] lib/test_printf.c: accept "ptrval" as valid result for plain 'p' tests (Prarit Bhargava) [1751075] - [kernel] softirq: Remove tasklet_hrtimer (Prarit Bhargava) [1737073] - [include] list: add function list_rotate_to_front() (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Rename the file for consistency (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Move Kconfig option (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Use tcb as sched_clock (Prarit Bhargava) [1737073] - [kernel] irq_work: Do not raise an IPI when queueing work on the local CPU (Prarit Bhargava) [1737073] - [tty] tty/sysrq: Convert show_lock to raw_spinlock_t (Prarit Bhargava) [1737073] - [net] xfrm: Replace hrtimer tasklet with softirq hrtimer (Prarit Bhargava) [1737073] - [netdrv] mac80211_hwsim: Replace hrtimer tasklet with softirq hrtimer (Prarit Bhargava) [1737073] - [kernel] kthread: Do not use TIMER_IRQSAFE (Prarit Bhargava) [1737073] - [kernel] kthread: Convert worker lock to raw spinlock (Prarit Bhargava) [1737073] - [netdrv] mac80211_hwsim: Timer should be initialized before device registered (Prarit Bhargava) [1737073] - [net] xfrm: use time64_t for in-kernel timestamps (Prarit Bhargava) [1737073] - [x86] x86/intel: Aggregate microserver naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core graphics naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core mobile naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core client naming (Prarit Bhargava) [1725644] - [tools] turbostat: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: update version number (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: rename has_hsw_msrs() (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix Haswell Core systems (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Add support for Hygon Fam 18h (Dhyana) RAPL (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix caller parameter of get_tdp_amd() (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix CPUC1 display value (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: do not enforce 1ms (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: read from pipes too (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Add Ice Lake NNPI support (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: add Jacobsville support (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: remove duplicate pc10 column (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix file descriptor leaks (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix leak of file descriptor on error return path (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix buffer overrun (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Make interval calculation per thread to reduce jitter (Prarit Bhargava) [1725644] - [tools] tools/power/x86: Enable compiler optimisations and Fortify by default (Prarit Bhargava) [1725644] - [x86] x86/cpu: Add Ice Lake NNPI to Intel family (Prarit Bhargava) [1725644]- [tools] perf tools: Fix segfault in cpu_cache_level__read() (Michael Petlan) [1761995] - [scsi] qla2xxx: Update driver version to 10.01.00.19.08.2-k (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix Nport ID display value (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix N2N link up fail (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix N2N link reset (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Optimize NPIV tear down process (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stale mem access on driver unload (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix unbound sleep in fcport delete path. (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Silence fwdump template message (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stale session (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stuck login session (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix driver reload for ISP82xx (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix flash read for Qlogic ISPs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix message indicating vectors used by driver (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: fix spelling mistake "initializatin" -> "initialization" (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a recently introduced kernel warning (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a NULL pointer dereference (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qla24xx_async_abort_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous if-tests (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce qla2x00_els_dcmd2_free() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Inline the qla2x00_fcport_event_handler() function (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Report invalid mailbox status codes (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove superfluous sts_entry_* casts (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Let the compiler check the type of the SCSI command context pointer (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if sp->done() is not called from the completion path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make sure that aborted commands are freed (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce qla2xxx_get_next_handle() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Modify NVMe include directives (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qlt_handle_abts_completion() more robust (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a race condition between aborting and completing a SCSI command (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the function qla2xxx_init_sp() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Enable type checking for the SRB free and done callback functions (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Rework key encoding in qlt_find_host_by_d_id() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Set the responder mode if appropriate for ELS pass-through IOCBs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make it explicit that ELS pass-through IOCBs use little endian (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check secondary image if reading the primary image fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change the return type of qla24xx_read_flash_data() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the be_id_t and le_id_t data types for FC src/dst IDs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a soft reset fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use memcpy() and strlcpy() instead of strcpy() and strncpy() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check the PCI info string output buffer size (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if waiting for pending commands times out (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare fourth qla2x00_set_model_info() argument const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Always check the qla2x00_wait_for_hba_online() return value (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Suppress multiple Coverity complaint about out-of-bounds accesses (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Suppress a Coveritiy complaint about integer overflow (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unreachable code from qla83xx_idc_lock() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix qla24xx_process_bidir_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify a debug statement (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove dead code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if parsing the version string fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a mailbox command times out (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use strlcpy() instead of strncpy() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Do not corrupt vha->plogi_ack_list (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Report the firmware status code if a mailbox command fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix session lookup in qlt_abort_work() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qla24xx_abort_sp_done() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous tests (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a superfluous pointer check (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qlt_lport_dump() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reduce the number of casts in GID list code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Verify locking assumptions at runtime (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change data_dsd into an array (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla_tgt_cmd.cdb const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reduce the scope of three local variables in qla2xxx_queuecommand() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change the return type of qla2x00_update_ms_fdmi_iocb() into void (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare the fourth ql_dump_buffer() argument const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a superfluous forward declaration (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove an include directive from qla_mr.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Include the header file from qla_dsd.h (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use tabs instead of spaces for indentation (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Improve Linux kernel coding style conformance (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Really fix qla2xxx_eh_abort() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_abort_srb() again decrease the sp reference count (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Allow NVMe IO to resume with short cable pull (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix hang in fcport delete path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use common update-firmware-options routine for ISP27xx+ (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix NVMe port discovery after a short device port loss (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Correct error handling during initialization failures (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Retry fabric Scan on IOCB queue full (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix premature timer expiration (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix Relogin to prevent modifying scan_state flag (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reject EH_{abort|device_reset|target_request} (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Skip FW dump on LOOP initialization error (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use Correct index for Q-Pair array (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix abort timeout race condition. (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix DMA unmap leak (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Replace vmalloc + memset with vzalloc (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unnecessary null check (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: remove double assignment in qla2x00_update_fcport (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Add cleanup for PCI EEH recovery (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in tcm_qla2xxx_close_session() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that qlt_send_resp_ctio() corrupts memory (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use __le64 instead of uint32_t[2] for sending DMA addresses to firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the dsd32 and dsd64 data structures (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check the size of firmware data structures at compile time (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Pass little-endian values to the firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla24xx_async_abort_cmd() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unnecessary locking from the target code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove qla_tgt_cmd.released (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a command is released that is owned by the firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: target: Fix offline port handling and host reset handling (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix error handling in qlt_alloc_qfull_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qlt_send_term_imm_notif() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix use-after-free issues in qla2xxx_qpair_sp_free_dma() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a qla24xx_enable_msix() error path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that qla2x00_mem_free() crashes if called twice (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_mem_free() easier to verify (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Increase the size of the mailbox arrays from 4 to 8 (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Log the status code if a firmware command fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that Coverity complains about dereferencing a NULL rport pointer (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Uninline qla2x00_init_timer() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_is_reserved_id() from qla_inline.h into qla_init.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_clear_loop_id() from qla_inline.h into qla_init.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a set-but-not-used variable (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla2x00_find_new_loop_id() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_set_reserved_loop_ids() definition (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a format specifier (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Update two source code comments (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Silence Successful ELS IOCB message (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix device staying in blocked state (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_set_fcport_state() from a .h into a .c file (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous casts (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove qla_tgt_cmd.data_work and qla_tgt_cmd.data_work_free (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move the include directive (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla24xx_build_scsi_crc_2_iocbs() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move the port_state_str[] definition from a .h to a .c file (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Insert spaces where required (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix formatting of pointer types (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Leave a blank line after declarations (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use tabs to indent code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix FC-AL connection target discovery (Himanshu Madhani) [1728845] - [scsi] scsi: tcm_qla2xxx: Minimize #include directives (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Unregister resources in the opposite order of the registration order (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Unregister chrdev if module initialization fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use get/put_unaligned where appropriate (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_process_response_queue() easier to read (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare local symbols static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use ARRAY_SIZE() in the definition of QLA_LAST_SPEED (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a comment that refers to the SCSI host lock (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove useless set memory to zero use memset() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Cleanup fcport memory to prevent leak (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Further limit FLASH region write access from SysFS (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Increase the max_sgl_segments to 1024 (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reset the FCF_ASYNC_{SENT|ACTIVE} flags (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Set the qpair in SRB to NULL when SRB is released (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a small typo in qla_bsg.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix comment alignment in qla_bsg.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: deadlock by configfs_depend_item (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: use lower_32_bits and upper_32_bits instead of reinventing them (Himanshu Madhani) [1728845] - [md] dm snapshot: rework COW throttling to fix deadlock (Mike Snitzer) [1758605] - [md] dm snapshot: introduce account_start_copy() and account_end_copy() (Mike Snitzer) [1758605] - [netdrv] ice: Bump version (Jonathan Toppins) [1721711] - [netdrv] ice: Enable DDP package download (Jonathan Toppins) [1721711] - [netdrv] ice: Initialize DDP package structures (Jonathan Toppins) [1721711] - [netdrv] ice: Implement Dynamic Device Personalization (DDP) download (Jonathan Toppins) [1721711] - [netdrv] ice: Fix FW version formatting in dmesg (Jonathan Toppins) [1721711] - [netdrv] ice: send driver version to firmware (Jonathan Toppins) [1721711] - [netdrv] ice: Rework around device/function capabilities (Jonathan Toppins) [1721711] - [netdrv] ice: change default number of receive descriptors (Jonathan Toppins) [1721711] - [netdrv] ice: Minor refactor in queue management (Jonathan Toppins) [1721711] - [netdrv] ice: Allow for delayed LLDP MIB change registration (Jonathan Toppins) [1721711] - [netdrv] ice: update Tx context struct (Jonathan Toppins) [1721711] - [netdrv] ice: Report VF link status with opcode to get resources (Jonathan Toppins) [1721711] - [netdrv] ice: Check for DCB capability before initializing DCB (Jonathan Toppins) [1721711] - [netdrv] ice: report link down for VF when PF's queues are not enabled (Jonathan Toppins) [1721711] - [netdrv] ice: Reliably reset VFs (Jonathan Toppins) [1721711] - [netdrv] ice: change work limit to a constant (Jonathan Toppins) [1721711] - [netdrv] ice: small efficiency fixes (Jonathan Toppins) [1721711] - [netdrv] ice: move code closer together (Jonathan Toppins) [1721711] - [netdrv] ice: clean up arguments (Jonathan Toppins) [1721711] - [netdrv] ice: Check root pointer for validity (Jonathan Toppins) [1721711] - [netdrv] ice: Add ice_get_main_vsi to get PF/main VSI (Jonathan Toppins) [1721711] - [netdrv] ice: Update fields in ice_vsi_set_num_qs when reconfiguring (Jonathan Toppins) [1721711] - [netdrv] ice: Only disable VLAN pruning for the VF when all VLANs are removed (Jonathan Toppins) [1721711] - [netdrv] ice: Remove enable DCB when SW LLDP is activated (Jonathan Toppins) [1721711] - [netdrv] ice: Report stats when VSI is down (Jonathan Toppins) [1721711] - [netdrv] ice: Always notify FW of VF reset (Jonathan Toppins) [1721711] - [netdrv] ice: Correctly handle return values for init DCB (Jonathan Toppins) [1721711] - [netdrv] ice: Limit Max TCs on devices with more than 4 ports (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup defines in ice_type.h (Jonathan Toppins) [1721711] - [netdrv] ice: print extra message if topology issue (Jonathan Toppins) [1721711] - [netdrv] ice: add print of autoneg state to link message (Jonathan Toppins) [1721711] - [netdrv] ice: update driver unloading field for Queue Shutdown AQ command (Jonathan Toppins) [1721711] - [netdrv] ice: add needed PFR during driver unload (Jonathan Toppins) [1721711] - [netdrv] ice: Deduce TSA value from the priority value in the CEE mode (Jonathan Toppins) [1721711] - [netdrv] ice: Report what the user set for coalesce [tx|rx]-usecs (Jonathan Toppins) [1721711] - [netdrv] ice: Fix resource leak in ice_remove_rule_internal() (Jonathan Toppins) [1721711] - [netdrv] ice: Fix EMP reset handling (Jonathan Toppins) [1721711] - [netdrv] ice: fix adminq calls during remove (Jonathan Toppins) [1721711] - [netdrv] ice: Rework ice_ena_msix_range (Jonathan Toppins) [1721711] - [netdrv] ice: Fix VF configuration issues due to reset (Jonathan Toppins) [1721711] - [netdrv] ice: Alloc queue management bitmaps and arrays dynamically (Jonathan Toppins) [1721711] - [netdrv] ice: add support for virtchnl_queue_select.[tx|rx]_queues bitmap (Jonathan Toppins) [1721711] - [netdrv] ice: add support for enabling/disabling single queues (Jonathan Toppins) [1721711] - [netdrv] ice: fix potential infinite loop (Jonathan Toppins) [1721711] - [netdrv] ice: fix ice_is_tc_ena (Jonathan Toppins) [1721711] - [netdrv] ice: add validation in OP_CONFIG_VSI_QUEUES VF message (Jonathan Toppins) [1721711] - [netdrv] ice: Don't clog kernel debug log with VF MDD events errors (Jonathan Toppins) [1721711] - [netdrv] ice: Introduce a local variable for a VSI in the rebuild path (Jonathan Toppins) [1721711] - [netdrv] ice: shorten local and add debug prints (Jonathan Toppins) [1721711] - [netdrv] ice: Sanitize ice_ena_vsi and ice_dis_vsi (Jonathan Toppins) [1721711] - [netdrv] ice: added sibling head to parse nodes (Jonathan Toppins) [1721711] - [netdrv] ice: Fix ethtool port and PFC stats for 4x25G cards (Jonathan Toppins) [1721711] - [netdrv] ice: Don't allow VSI to remove unassociated ucast filter (Jonathan Toppins) [1721711] - [netdrv] ice: Fix issues updating VSI MAC filters (Jonathan Toppins) [1721711] - [netdrv] ice: update ethtool stats on-demand (Jonathan Toppins) [1721711] - [netdrv] ice: Add input handlers for virtual channel handlers (Jonathan Toppins) [1721711] - [netdrv] ice: Don't clear auto_fec bit in ice_cfg_phy_fec() (Jonathan Toppins) [1721711] - [netdrv] ice: Fix flag used for module query (Jonathan Toppins) [1721711] - [netdrv] ice: silence some bogus error messages (Jonathan Toppins) [1721711] - [netdrv] ice: Rename ethtool private flag for lldp (Jonathan Toppins) [1721711] - [netdrv] ice: reject VF attempts to enable head writeback (Jonathan Toppins) [1721711] - [netdrv] ice: Copy dcbx configuration only if mode is correct (Jonathan Toppins) [1721711] - [netdrv] ice: Treat DCBx state NOT_STARTED as valid (Jonathan Toppins) [1721711] - [netdrv] ice: Don't call synchronize_irq() for VF's from the host (Jonathan Toppins) [1721711] - [netdrv] ice: Account for all states of FW DCBx and LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Allow egress control packets from PF_VSI (Jonathan Toppins) [1721711] - [netdrv] ice: improve print for VF's when adding/deleting MAC filters (Jonathan Toppins) [1721711] - [netdrv] ice: Change type for queue counts (Jonathan Toppins) [1721711] - [netdrv] ice: Move VF resources definition to SR-IOV specific file (Jonathan Toppins) [1721711] - [netdrv] ice: Increase size of Mailbox receive queue for many VFs (Jonathan Toppins) [1721711] - [netdrv] ice: Reduce wait times during VF bringup/reset (Jonathan Toppins) [1721711] - [netdrv] ice: update GLINT_DYN_CTL and GLINT_VECT2FUNC register access (Jonathan Toppins) [1721711] - [netdrv] ice: Do not always bring up PF VSI in ice_ena_vsi() (Jonathan Toppins) [1721711] - [netdrv] ice: allow empty Rx descriptors (Jonathan Toppins) [1721711] - [netdrv] ice: Fix kernel hang with DCB reset in CEE mode (Jonathan Toppins) [1721711] - [netdrv] ice: Set WB_ON_ITR when we don't re-enable interrupts (Jonathan Toppins) [1721711] - [netdrv] ice: fix set pause param autoneg check (Jonathan Toppins) [1721711] - [netdrv] ice: Restructure VFs initialization flows (Jonathan Toppins) [1721711] - [netdrv] ice: Assume that more than one Rx queue is rare in ice_napi_poll (Jonathan Toppins) [1721711] - [netdrv] ice: Use the software based tail when checking for hung Tx ring (Jonathan Toppins) [1721711] - [netdrv] ice: Bump version number (Jonathan Toppins) [1721711] - [netdrv] ice: Remove flag to track VF interrupt status (Jonathan Toppins) [1721711] - [netdrv] ice: Remove unnecessary flag ICE_FLAG_MSIX_ENA (Jonathan Toppins) [1721711] - [netdrv] ice: Don't return error for disabling LAN Tx queue that does exist (Jonathan Toppins) [1721711] - [netdrv] ice: Remove duplicate code in ice_alloc_rx_bufs (Jonathan Toppins) [1721711] - [netdrv] ice: Add stats for Rx drops at the port level (Jonathan Toppins) [1721711] - [netdrv] ice: Update number of VF queue before setting VSI resources (Jonathan Toppins) [1721711] - [netdrv] ice: Set up Tx scheduling tree based on alloc VSI Tx queues (Jonathan Toppins) [1721711] - [netdrv] ice: Only bump Rx tail and release buffers once per napi_poll (Jonathan Toppins) [1721711] - [netdrv] ice: Disable VFs until reset is completed (Jonathan Toppins) [1721711] - [netdrv] ice: Do not configure port with no media (Jonathan Toppins) [1721711] - [netdrv] ice: separate out control queue lock creation (Jonathan Toppins) [1721711] - [netdrv] ice: Always set prefena when configuring an Rx queue (Jonathan Toppins) [1721711] - [netdrv] ice: Move vector base setup to PF VSI (Jonathan Toppins) [1721711] - [netdrv] ice: track hardware stat registers past rollover (Jonathan Toppins) [1721711] - [netdrv] ice: add lp_advertising flow control support (Jonathan Toppins) [1721711] - [netdrv] ice: Use struct_size() helper (Jonathan Toppins) [1721711] - [netdrv] ice: Use LLDP ethertype define ETH_P_LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Trivial cosmetic changes (Jonathan Toppins) [1721711] - [netdrv] ice: Recognize higher speeds (Jonathan Toppins) [1721711] - [netdrv] ice: Use a different ICE_DBG bit for firmware log messages (Jonathan Toppins) [1721711] - [netdrv] ice: Update function header (Jonathan Toppins) [1721711] - [netdrv] ice: Move define for ICE_AQC_DRIVER_UNLOADING (Jonathan Toppins) [1721711] - [netdrv] ice: Align to updated AQ command formats (Jonathan Toppins) [1721711] - [netdrv] ice: Use continue instead of an else block (Jonathan Toppins) [1721711] - [netdrv] ice: Change minimum descriptor count value for Tx/Rx rings (Jonathan Toppins) [1721711] - [netdrv] ice: Add switch rules to handle LLDP packets (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup ice_update_link_info (Jonathan Toppins) [1721711] - [netdrv] ice: Use right type for ice_cfg_vsi_lan return (Jonathan Toppins) [1721711] - [netdrv] ice: Add support for Forward Error Correction (FEC) (Jonathan Toppins) [1721711] - [netdrv] ice: Add support for virtchnl_vector_map.[rxq|txq]_map (Jonathan Toppins) [1721711] - [netdrv] ice: Introduce ice_init_mac_fltr and move ice_napi_del (Jonathan Toppins) [1721711] - [netdrv] ice: Use GLINT_DYN_CTL to disable VF's interrupts (Jonathan Toppins) [1721711] - [netdrv] ice: Add a helper to trigger software interrupt (Jonathan Toppins) [1721711] - [netdrv] ice: Configure RSS LUT key only if RSS is enabled (Jonathan Toppins) [1721711] - [netdrv] ice: Add ice_get_fw_log_cfg to init FW logging (Jonathan Toppins) [1721711] - [netdrv] ice: Minor cleanup in ice_switch.h (Jonathan Toppins) [1721711] - [netdrv] ice: Remove redundant and premature event config (Jonathan Toppins) [1721711] - [netdrv] ice: Change message level (Jonathan Toppins) [1721711] - [netdrv] ice: Check all VFs for MDD activity, don't disable (Jonathan Toppins) [1721711] - [netdrv] ice: Refactor interrupt tracking (Jonathan Toppins) [1721711] - [netdrv] ice: Add handler for ethtool selftest (Jonathan Toppins) [1721711] - [netdrv] ice: Don't call ice_cfg_itr() for SR-IOV (Jonathan Toppins) [1721711] - [netdrv] ice: Set minimum default Rx descriptor count to 512 (Jonathan Toppins) [1721711] - [netdrv] ice: Resolve static analysis warning (Jonathan Toppins) [1721711] - [netdrv] ice: Implement toggling ethtool rx-vlan-filter (Jonathan Toppins) [1721711] - [netdrv] ice: Remove direct write for GLLAN_RCTL_0 (Jonathan Toppins) [1721711] - [netdrv] ice: Fix LINE_SPACING style issue (Jonathan Toppins) [1721711] - [netdrv] ice: Silence semantic parser warnings (Jonathan Toppins) [1721711] - [netdrv] ice: Fix couple of issues in ice_vsi_release (Jonathan Toppins) [1721711] - [netdrv] ice: Reorganize ice_vf struct (Jonathan Toppins) [1721711] - [netdrv] ice: Use bitfields when possible (Jonathan Toppins) [1721711] - [netdrv] ice: Reorganize tx_buf and ring structs (Jonathan Toppins) [1721711] - [netdrv] ice: Format ethtool reported stats (Jonathan Toppins) [1721711] - [netdrv] ice: Gracefully handle reset failure in ice_alloc_vfs() (Jonathan Toppins) [1721711] - [netdrv] ice: Refactor the LLDP MIB change event handling (Jonathan Toppins) [1721711] - [netdrv] ice: Advertise supported link modes if none requested (Jonathan Toppins) [1721711] - [netdrv] ice: Fix hang when ethtool disables FW LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Call out dev/func caps when printing (Jonathan Toppins) [1721711] - [netdrv] ice: Remove braces for single statement blocks (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup an unnecessary variable initialization (Jonathan Toppins) [1721711] - [netdrv] ice: Implement LLDP persistence (Jonathan Toppins) [1721711] - [netdrv] ice: Fix double spacing (Jonathan Toppins) [1721711] - [kernel] sched/debug: Fix potential deadlock when writing to sched_features (Vladis Dronov) [1760060] - [kernel] sched/debug: Use match_string() helper instead of open-coded logic (Vladis Dronov) [1760060] - [hid] HID: intel-ish-hid: ipc: add EHL device id (Tony Camuso) [1716756] - [hid] HID: remove NO_D3 flag when remove driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: fix wrong driver_data usage (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Fix a use after free in load_fw_from_host() (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add SPDX license identifier - Makefile/Kconfig (Tony Camuso) [1716756] - [platform] platform/chrome: Add ChromeOS EC ISHTP driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: prefix header search paths with $(srctree)/ (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add Comet Lake PCI device ID (Tony Camuso) [1716756] - [platform] platform/chrome: cros_ec: Add EC host command support using rpmsg (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: fix spelling mistake "multipe" -> "multiple" (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ISH firmware loader client driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add interface function for PCI device pointer (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Use the new interface functions in HID ish client (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move functions related to bus and device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add interface functions for struct ishtp_cl (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move the common functions from client.h (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Store ishtp_cl_device instance in device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move driver registry functions (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Simplify ishtp_cl_link() (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Hide members of struct ishtp_cl_device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add match callback to ishtp bus type (Tony Camuso) [1716756] - [hid] HID: intel-ish: enable raw interface to HID devices on ISH (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Use VID/PID from ISH (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Switch to use new generic UUID API (Tony Camuso) [1716756] - [hid] HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR busy_clear bit (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function to search client id (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper function for client search (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function to access client buffer (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper functions for client buffer operation (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function for private driver data set/get (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper function for driver data get/set (Tony Camuso) [1716756] - [platform] platform/chrome: Move cros-ec transport drivers to drivers/platform. (Tony Camuso) [1716756] - [tools] tools: PCI: Fix compiler warning in pcitest (Myron Stowe) [1753749] - [iommu] iommu: Fix integer truncation (Myron Stowe) [1753749] - [pci] PCI/P2PDMA: Ignore root complex whitelist when an IOMMU is present (Myron Stowe) [1753749] - [pci] PCI: Cleanup setup-bus.c comments and whitespace (Myron Stowe) [1753749] - [include] CPER: Remove unnecessary use of user-space types (Myron Stowe) [1753749] - [include] CPER: Add UEFI spec references (Myron Stowe) [1753749] - [pci] PCI: Fix comment typos (Myron Stowe) [1753749] - [pci] PCI: Cleanup register definition width and whitespace (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pointless MY_NAME definition (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pointless PCIE_MODULE_NAME definition (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove unused dbg/err/info/warn() wrappers (Myron Stowe) [1753749] - [pci] PCI: pciehp: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI: pciehp: Replace pciehp_debug module param with dyndbg (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pciehp_debug uses (Myron Stowe) [1753749] - [pci] PCI/AER: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI/DPC: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI/PME: Replace dev_printk(KERN_DEBUG) with dev_info() (Myron Stowe) [1753749] - [pci] PCI/AER: Replace dev_printk(KERN_DEBUG) with dev_info() (Myron Stowe) [1753749] - [pci] PCI: Replace dev_printk(KERN_DEBUG) with dev_info(), etc (Myron Stowe) [1753749] - [pci] PCI: Replace printk(KERN_INFO) with pr_info(), etc (Myron Stowe) [1753749] - [pci] PCI: Use dev_printk() when possible (Myron Stowe) [1753749] - [iommu] iommu/dma: Reserve IOVA for PCIe inaccessible DMA address (Myron Stowe) [1753749] - [pci] PCI: Add dma_ranges window list (Myron Stowe) [1753749] - [pci] PCI: endpoint: Fix a potential NULL pointer dereference (Myron Stowe) [1753749] - [tools] tools: PCI: Handle pcitest.sh independently from pcitest (Myron Stowe) [1753749] - [tools] tools: PCI: Add 'h' in optstring of getopt() (Myron Stowe) [1753749] - [tools] tools: PCI: Change pcitest compiling process (Myron Stowe) [1753749] - [tools] tools: PCI: Fix compilation warnings (Myron Stowe) [1753749] - [tools] tools: PCI: Exit with error code when test fails (Myron Stowe) [1753749] - [pci] PCI: Mark Atheros AR9462 to avoid bus reset (Myron Stowe) [1753749] - [pci] switchtec: Fix unintended mask of MRPC event (Myron Stowe) [1753749] - [pci] switchtec: Increase PFF limit from 48 to 255 (Myron Stowe) [1753749] - [pci] PCI/LINK: Disable bandwidth notification interrupt during suspend (Myron Stowe) [1753749] - [pci] PCI/P2PDMA: Allow P2P DMA between any devices under AMD ZEN Root Complex (Myron Stowe) [1753749] - [maintainers] MAINTAINERS: Add Karthikeyan Mitran and Hou Zhiqiang for Mobiveil PCI (Myron Stowe) [1753749] - [platform] platform/chrome: chromeos_laptop: use pci_dev_id() helper (Myron Stowe) [1753749] - [iommu] iommu/amd: Use pci_dev_id() helper (Myron Stowe) [1753749] - [drm] drm/amdkfd: Use pci_dev_id() helper (Myron Stowe) [1753749] - [powerpc] powerpc/powernv/npu: Use pci_dev_id() helper (Myron Stowe) [1753749] - [x86] x86/PCI: Fix PCI IRQ routing table memory leak (Myron Stowe) [1753749] - [pci] PCI: Remove unused pci_request_region_exclusive() (Myron Stowe) [1753749] - [pci] PCI: Mark expected switch fall-throughs (Myron Stowe) [1753749] - [pci] PCI/ACPI: Remove the need for 'struct hotplug_params' (Myron Stowe) [1753749] - [pci] PCI/ACPI: Do not export pci_get_hp_params() (Myron Stowe) [1753749] - [pci] PCI: rpaphp: Get/put device node reference during slot alloc/dealloc (Myron Stowe) [1753749] - [pci] PCI: rpadlpar: Fix leaked device_node references in add/remove paths (Myron Stowe) [1753749] - [pci] PCI: Assign bus numbers present in EA capability for bridges (Myron Stowe) [1753749] - [pci] PCI: OF: Support "external-facing" property (Myron Stowe) [1753749] - [documentation] dt-bindings: Add "external-facing" PCIe port property (Myron Stowe) [1753749] - [pci] PCI: Init PCIe feature bits for managed host bridge alloc (Myron Stowe) [1753749] - [pci] PCI/AER: Change pci_aer_init() stub to return void (Myron Stowe) [1753749] - [s390] s390/zcrypt: CEX7S exploitation support (Philipp Rudo) [1726416] - [s390] s390/pkey: Add sysfs attributes to emit AES CIPHER key blobs (Philipp Rudo) [1726416] - [s390] s390/crypto: Support for SHA3 via CPACF (MSA6) (Philipp Rudo) [1726416] - [s390] s390/crypto: xts-aes-s390 fix extra run-time crypto self tests finding (Philipp Rudo) [1726416] - [s390] s390: vfio-ap: fix warning reset not completed (Philipp Rudo) [1726416] - [s390] crypto: s390 - Rename functions to avoid conflict with crypto/sha256.h (Philipp Rudo) [1726416] - [s390] s390/zcrypt: fix wrong handling of cca cipher keygenflags (Philipp Rudo) [1726416] - [s390] crypto: s390/xts-aes - invoke fallback for ciphertext stealing (Philipp Rudo) [1726416] - [s390] s390/paes: Prepare paes functions for large key blobs (Philipp Rudo) [1726416] - [s390] s390/pkey: add CCA AES cipher key support (Philipp Rudo) [1726416] - [s390] s390/zcrypt: Add low level functions for CCA AES cipher keys (Philipp Rudo) [1726416] - [s390] s390/zcrypt: extend cca_findcard function and helper (Philipp Rudo) [1726416] - [s390] s390/pkey: pkey cleanup: narrow in-kernel API, fix some variable types (Philipp Rudo) [1726416] - [s390] s390/zcrypt: adjust switch fall through comments for -Wimplicit-fallthrough (Philipp Rudo) [1726416] - [s390] crypto: s390/aes - fix name clash after AES library refactor (Philipp Rudo) [1726416] - [s390] s390/zcrypt: new sysfs attributes serialnr and mkvps (Philipp Rudo) [1726416] - [s390] s390/zcrypt: add base code for cca crypto card info support (Philipp Rudo) [1726416] - [s390] s390/zcrypt: move cca misc functions to new code file (Philipp Rudo) [1726416] - [s390] s390: use __u{16, 32, 64} instead of uint{16, 32, 64}_t in uapi header (Philipp Rudo) [1726416] - [s390] s390/zcrypt: remove the exporting of ap_query_configuration (Philipp Rudo) [1726416] - [s390] s390/crypto: sha: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/crypto: prng: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/crypto: ghash: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/pkey: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/zcrypt: support special flagged EP11 cprbs (Philipp Rudo) [1726416] - [s390] s390/crypto: fix possible sleep during spinlock aquired (Philipp Rudo) [1726416] - [s390] s390/crypto: use TRNG for seeding/reseeding (Philipp Rudo) [1726416] - [s390] s390/crypto: rework generate_entropy function for pseudo random dd (Philipp Rudo) [1726416] - [s390] s390: zcrypt: initialize variables before_use (Philipp Rudo) [1726416] - [powerpc] powerpc/pseries: Track LMB nid instead of using device tree (Steve Best) [1758742] - [powerpc] powerpc/pseries/memory-hotplug: Only update DT once per memory DLPAR request (Steve Best) [1758742] - [net] hv_sock: Fix hang when a connection is closed (Cathy Avery) [1739477] - [net] hv_sock: Use consistent types for UUIDs (Cathy Avery) [1739477] - [net] hvsock: fix epollout hang from race condition (Cathy Avery) [1739477] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Cathy Avery) [1739477] - [net] hv_sock: perf: loop in send() to maximize bandwidth (Cathy Avery) [1739477] - [net] hv_sock: perf: Allow the socket buffer size options to influence the actual socket buffers (Cathy Avery) [1739477] - [net] hv_sock: Add support for delayed close (Cathy Avery) [1739477] - [powerpc] powerpc/rtas: allow rescheduling while changing cpu states (Steve Best) [1758651] - [powerpc] powerpc/pseries/mobility: use cond_resched when updating device tree (Steve Best) [1758651] - [tools] selftests/powerpc: Fix compile error on tlbie_test due to newer gcc (Desnes Augusto Nunes do Rosario) [1755707] - [tools] selftests/powerpc: Add test case for tlbie vs mtpidr ordering issue (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/book3s64/mm: Don't do tlbie fixup for some hardware revisions (Desnes Augusto Nunes do Rosario) [1755707] - [scsi] scsi: zfcp: make DIX experimental, disabled, and independent of DIF (Philipp Rudo) [1723829] - [s390] s390: add support for IBM z15 machines (Philipp Rudo) [1757015] - [s390] s390/pci: add mio_enabled attribute (Philipp Rudo) [1757118] - [s390] s390: fix setting of mio addressing control (Philipp Rudo) [1757118] - [s390] s390/pci: correctly handle MIO opt-out (Philipp Rudo) [1757118] - [s390] s390/pci: deal with devices that have no support for MIO instructions (Philipp Rudo) [1757118] - [s390] s390/pci: fix assignment of bus resources (Philipp Rudo) [1757118] - [s390] s390/pci: fix struct definition for set PCI function (Philipp Rudo) [1757118] - [s390] s390/pci: fix MSI message data (Philipp Rudo) [1757123] - [powerpc] powerpc/tm: Add tm-poison test (Steve Best) [1756721] - [powerpc] powerpc/powernv: Add new opal message type (Desnes Augusto Nunes do Rosario) [1706975] - [powerpc] powerpc/powernv: Enhance opal message read interface (Desnes Augusto Nunes do Rosario) [1706975] - [char] hwrng: core - don't wait on add_early_randomness() (Laurent Vivier) [1660802] - [firmware] efi: Export Runtime Configuration Interface table to sysfs (Al Stone) [1665518] - [nvme] nvme: Treat discovery subsystems as unique subsystems (Ewan Milne) [1757525] - [powerpc] powerpc/powernv/opal: Use standard interrupts property when available (Steve Best) [1757173] - [powerpc] powerpc: dump kernel log before carrying out fadump or kdump (Steve Best) [1756922] - [kernel] genirq/affinity: Create affinity mask for single vector (Ming Lei) [1733420] - [virt] kvm: arm/arm64: Only skip MMIO insn once (Andrew Jones) [1733928] - [vfio] type1: remove duplicate retrieval of reserved regions (Auger Eric) [1704597] - [vfio] type1: Add IOVA range capability support (Auger Eric) [1704597] - [vfio] type1: check dma map request is within a valid iova range (Auger Eric) [1704597] - [vfio] type1: Update iova list on detach (Auger Eric) [1704597] - [vfio] type1: Check reserved region conflict and update iova list (Auger Eric) [1704597] - [vfio] type1: Introduce iova list and add iommu aperture validity check (Auger Eric) [1704597] - [iommu] Revisit iommu_insert_resv_region() implementation (Auger Eric) [1704597] - [iommu] vt-d: Differentiate relaxable and non relaxable RMRRs (Auger Eric) [1704597] - [iommu] Introduce IOMMU_RESV_DIRECT_RELAXABLE reserved memory regions (Auger Eric) [1704597] - [iommu] vt-d: Handle PCI bridge RMRR device scopes in intel_iommu_get_resv_regions (Auger Eric) [1704597] - [iommu] vt-d: Handle RMRR with PCI bridge device scopes (Auger Eric) [1704597] - [iommu] vt-d: Introduce is_downstream_to_pci_bridge helper (Auger Eric) [1704597] - [iommu] vt-d: Duplicate iommu_resv_region objects per device list (Auger Eric) [1704597] - [iommu] Fix a leak in iommu_insert_resv_region (Auger Eric) [1704597] - [pci] hv: Avoid use of hv_pci_dev->pci_slot after freeing it (Mohammed Gamal) [1737569]- [x86] kvm: x86: omit "impossible" pmu MSRs from MSR list (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Fix consistency check on injected exception error code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: omit absent pmu MSRs from MSR list (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: Fix libkvm build error (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Limit guest PMCs to those supported on the host (Vitaly Kuznetsov) [1749495] - [virt] kvm: x86, powerpc: do not allow clearing largepages debugfs entry (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: x86: clarify what is reported on KVM_GET_MSRS failure (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Set VMENTER_L1D_FLUSH_NOT_REQUIRED if !X86_BUG_L1TF (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: add test for dirty logging inside nested guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix nested guest live migration with PML (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: assign two bits to track SPTE kinds (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Expose XSAVEERPTR to the guest (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Enumerate support for CLZERO instruction (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use AMD CPUID semantics for AMD vCPUs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Improve emulation of CPUID leaves 0BH and 1FH (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix userspace set invalid CR4 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix a spurious -E2BIG in __do_cpuid_func (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Loosen filter for adaptive tuning of lapic_timer_advance_ns (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: cleanup and fix host 64-bit mode checks (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix build warnings in hv_enable_direct_tlbflush() on i386 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't check kvm_rebooting in __kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Drop ____kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Add error handling to VMREAD helper (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Optimize VMX instruction error and fault handling (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Check kvm_rebooting in kvm_spurious_fault() (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: limit atomic switch MSRs (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Intercept RDPRU (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add "significant index" flag to a few CPUID leaves (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Skip invalid pages during zapping iff root_count is zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Explicitly track only a single invalid mmu generation (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "kvm: x86/mmu: Remove is_obsolete() call" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: reclaim the zapped-obsolete page first"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: collapse TLB flushes when zap all pages"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: zap pages in batch"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: add tracepoint for kvm_mmu_invalidate_all_pages"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: show mmu_valid_gen in shadow page related tracepoints"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Use fast invalidate mechanism to zap MMIO sptes (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Treat invalid shadow pages as obsolete (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Tune lapic_timer_advance_ns smoothly (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add comments to document various emulation types (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Handle single-step #DB for EMULTYPE_SKIP on EPT misconfig (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Remove emulation_result enums, EMULATE_{DONE, FAIL, USER_EXIT} (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Remove EMULATE_FAIL handling in handle_invalid_guest_state() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move triple fault request into RM int injection (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Handle emulation failure directly in kvm_task_switch() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Exit to userspace on emulation skip failure (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move #UD injection for failed emulation into emulation code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add explicit flag for forced emulation on #UD (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move #GP injection for VMware into x86_emulate_instruction() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't attempt VMWare emulation on #GP with non-zero error code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Refactor kvm_vcpu_do_singlestep() to remove out param (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Clean up handle_emulation_failure() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Relocate MMIO exit stats counting (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check Host Address Space Size on vmentry of nested guests (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: hyperv_cpuid: add check for NoNonArchitecturalCoreSharing bit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: hyper-v: set NoNonArchitecturalCoreSharing CPUID bit when SMT is impossible (Vitaly Kuznetsov) [1749495] - [kernel] cpu/smt: create and export cpu_smt_possible() (Vitaly Kuznetsov) [1749495] - [x86] kvm: hyperv: Fix Direct Synthetic timers assert an interrupt w/o lapic_in_kernel (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Manually flush collapsible SPTEs only when toggling flags (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove duplicate guest mode handling (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Introduce VM_MODE_PXXV48_4K (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Create VM earlier for dirty log test (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Move vm type into _vm_create() internally (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: announce KVM_CAP_HYPERV_ENLIGHTENED_VMCS support only when it is available (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: svm: remove unneeded nested_enable_evmcs() hook (Vitaly Kuznetsov) [1749495] - [x86] kvm/hyper-v/vmx: Add direct tlb flush support (Vitaly Kuznetsov) [1749495] - [documentation] kvm/hyper-v: Add new KVM capability KVM_CAP_HYPERV_DIRECT_TLBFLUSH (Vitaly Kuznetsov) [1749495] - [x86] hyper-v: Fix definition of struct hv_vp_assist_page (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add Intel PMU MSRs to msrs_to_save[] (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use IPI shorthands in kvm guest when support (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix INIT signal handling in various CPU states (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Introduce exit reason for receiving INIT signal on guest-mode (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Stop the preemption timer during vCPU reset (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Micro optimize IPI latency (Vitaly Kuznetsov) [1749495] - [x86] kvm: Nested KVM MMUs need PAE root too (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: set ctxt->have_exception in x86_decode_insn() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: always stop emulation on page fault (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: trace nested VM-Enter failures detected by H/W (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: add tracepoint for failed nested VM-Enter (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Fix a check in nested_svm_vmrun() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Return to userspace with internal error on unexpected exit reason (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add kvm_emulate_{rd, wr}msr() to consolidate VXM/SVM code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Refactor up kvm_{g, s}et_msr() to simplify callers (Vitaly Kuznetsov) [1749495] - [documentation] doc: kvm: Fix return description of KVM_SET_MSRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Tune PLE Window tracepoint (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Change ple_window type to unsigned int (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Remove tailing newline for tracepoints (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Trace vcpu_id for vmexit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Manually calculate reserved bits when loading PDPTRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Disable posted interrupts for non-standard IRQs delivery modes (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix and tweak the comments for VM-Enter (Vitaly Kuznetsov) [1749495] - [x86] kvm: Assert that struct kvm_vcpu is always as offset zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add pv tlb shootdown tracepoint (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Unconditionally call x86 ops that are always implemented (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Consolidate "is MMIO SPTE" code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Add explicit access mask for MMIO SPTEs (Vitaly Kuznetsov) [1749495] - [documentation] kvm: x86: Rename access permissions cache member in struct kvm_vcpu_arch (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: eliminate hardcoded RIP advancement from vmrun_interception() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: eliminate weird goto from vmrun_interception() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: remove hardcoded instruction length from intercepts (Vitaly Kuznetsov) [1749495] - [x86] kvm: add xsetbv to the emulator (Vitaly Kuznetsov) [1749495] - [x86] kvm: clear interrupt shadow on EMULTYPE_SKIP (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: propagate errors from skip_emulated_instruction() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: don't pretend to advance RIP in case wrmsr_interception() results in #GP (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix x86_decode_insn() return when fetching insn bytes fails (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use Intel speculation bugs and features as derived in generic x86 code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: always expose VIRT_SSBD to guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix reporting of AMD speculation bug CPUID leaf (Vitaly Kuznetsov) [1749495] - [virt] kvm: Call kvm_arch_vcpu_blocking early into the blocking sequence (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Reintroduce fast invalidate/zap for flushing memslot (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: work around leak of uninitialized stack contents (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: handle page fault in vmread (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't update RIP or do single-step on faulting emulation (Vitaly Kuznetsov) [1749495] - [tools] selftests/kvm: make platform_info_test pass on AMD (Vitaly Kuznetsov) [1749495] - [x86] revert "kvm: x86/mmu: Zap only the relevant pages when removing a memslot" (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: fix state save/load on processors without XSAVE (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: fix vmx_set_nested_state_test (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: provide common function to enable eVMCS (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: do not try running the VM in vmx_set_nested_state_test (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: svm: remove redundant assignment of var new_entry (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: Adding config fragments (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Update gitignore file for latest changes (Vitaly Kuznetsov) [1749495] - [virt] kvm: remove unnecessary PageReserved check (Vitaly Kuznetsov) [1749495] - [x86] kvm: remove useless calls to kvm_para_available (Vitaly Kuznetsov) [1749495] - [x86] kvm: no need to check return value of debugfs_create functions (Vitaly Kuznetsov) [1749495] - [s390] kvm: remove kvm_arch_has_vcpu_debugfs() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix leak vCPU's VMCS value into other pCPU (Vitaly Kuznetsov) [1749495] - [virt] kvm: Check preempted_in_kernel for involuntary preemption (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Don't need to wakeup vCPU twice afer timer fire (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Boost queue head vCPU to mitigate lock waiter preemption (Vitaly Kuznetsov) [1749495] - [documentation] documentation: move Documentation/virtual to Documentation/virt (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add fixed counters to PMU filter (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: dump VMCS on failed entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/vpmu: refine kvm_pmu err msg when event creation failed (Vitaly Kuznetsov) [1749495] - [virt] kvm: Boost vCPUs that are delivering interrupts (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove superfluous define from vmx.c (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Fix detection of AMD Errata 1096 (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Inject timer interrupt via posted interrupt (Vitaly Kuznetsov) [1749495] - [x86] kvm: Don't call kvm_spurious_fault() from .fixup (Vitaly Kuznetsov) [1749495] - [x86] kvm: Replace vmx_vmenter()'s call to kvm_spurious_fault() with UD2 (Vitaly Kuznetsov) [1749495] - [x86] kvm: Fix fastop function ELF metadata (Vitaly Kuznetsov) [1749495] - [x86] paravirt: Fix callee-saved function ELF sizes (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Make lapic timer unpinned (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/vpmu: reset pmc->counter to 0 for pmu fixed_counters (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Ignore segment base for VMX memory operand when segment not FS or GS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: ioapic and apic debug macros cleanup (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: some tsc debug cleanup (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix coccinelle warnings (Vitaly Kuznetsov) [1749495] - [x86] kvm: avoid constant-conversion warning (Vitaly Kuznetsov) [1749495] - [x86] kvm: avoid -Wsometimes-uninitized warning (Vitaly Kuznetsov) [1749495] - [documentation] documentation: virtual: Add toctree hooks (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: Convert cpuid.txt to .rst (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Unconditionally enable irqs in guest context (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: PMU Event Filter (Vitaly Kuznetsov) [1749495] - [kernel] kvm: x86: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1749495] - [virt] kvm: Properly check if "page" is valid in kvm_vcpu_unmap (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Retry tune per-vCPU timer_advance_ns if adaptive tuning goes insane (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: write down valid APIC registers (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: ARBPRI is a reserved register for x2APIC (Vitaly Kuznetsov) [1749495] - [x86] kvm nvmx: Check Host Segment Registers and Descriptor Tables on vmentry of nested guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Stash L1's CR3 in vmcs01.GUEST_CR3 on nested entry w/o EPT (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: add tracepoints around __direct_map and FNAME(fetch) (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: change kvm_mmu_page_get_gfn BUG_ON to WARN_ON (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: remove now unneeded hugepage gfn adjustment (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: make FNAME(fetch) and __direct_map more similar (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Do not release the page inside mmu_set_spte() (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: remove has_leaf_count from struct kvm_cpuid_param (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: rename do_cpuid_1_ent (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: set struct kvm_cpuid_entry2 flags in do_cpuid_1_ent (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: extract do_cpuid_7_mask and support multiple subleafs (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: do_cpuid_ent works on a whole CPUID function (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: remove the trailing newline used in the fmt parameter of TP_printk (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: add nrips module parameter (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: degrade WARN to pr_warn_ratelimited (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Pass through AMD_STIBP_ALWAYS_ON in GET_SUPPORTED_CPUID (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Remove unnecessary sync_roots from handle_invept (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: document CPUID bit for MSR_KVM_POLL_CONTROL (Vitaly Kuznetsov) [1749495] - [documentation] kvm: x86: Expose PV_SCHED_YIELD CPUID feature bit to guest (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Implement PV sched yield hypercall (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Yield to IPI target if necessary (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: list VMX MSRs in KVM_GET_MSR_INDEX_LIST (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: allow setting the VMFUNC controls MSR (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: include conditional controls in /dev/kvm KVM_GET_MSRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix apic dangling pointer in vcpu (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: check CPUID before allowing read/write of IA32_XSS (Vitaly Kuznetsov) [1749495] - [tools] tests: kvm: Check for a kernel warning (Vitaly Kuznetsov) [1749495] - [tools] kvm: tests: Sort tests in the Makefile alphabetically (Vitaly Kuznetsov) [1749495] - [documentation] kvm: fix typo in documentation (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: shadow pin based execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Leave preemption timer running when it's disabled (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Drop hv_timer_armed from 'struct loaded_vmcs' (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Preset *DT exiting in vmcs02 when emulating UMIP (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Preserve last USE_MSR_BITMAPS when preparing vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Explicitly initialize controls shadow at VMCS allocation (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't reset VMCS controls shadow on VMCS switch (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Shadow VMCS controls on a per-VMCS basis (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS secondary execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS primary execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS pin controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Add builder macros for shadowing controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Use adjusted pin controls for vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Copy PDPTRs to/from vmcs12 only when necessary (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't update GUEST_BNDCFGS if it's clean in HV eVMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for MSR_IA32_DEBUGCTLMSR when it's written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for SYSENTER MSRs when they're written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for MSR_IA32_CR_PAT when it's written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't speculatively write APIC-access page address (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't speculatively write virtual-APIC page address (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't dump VMCS if virtual APIC page can't be mapped (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't reread VMCS-agnostic state when switching VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't "put" vCPU or host state when switching VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: simplify vmx_prepare_switch_to_{guest, host} (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't rewrite GUEST_PML_INDEX during nested VM-Entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Write ENCLS-exiting bitmap once per vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Always sync GUEST_BNDCFGS when it comes from vmcs01 (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Always signal #GP on WRMSR to MSR_IA32_CR_PAT with bad value (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Rename prepare_vmcs02_*_full to prepare_vmcs02_*_rare (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Sync rarely accessed guest fields only when needed (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Add helpers to identify shadowed VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Use descriptive names for VMCS sync functions and flags (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Lift sync_vmcs12() out of prepare_vmcs12() (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Track vmcs12 offsets for shadowed VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Intercept VMWRITEs to GUEST_{CS, SS}_AR_BYTES (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Intercept VMWRITEs to read-only shadow VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Handle NMIs, #MCs and async #PFs in common irqs-disabled fn (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move kvm_{before, after}_interrupt() calls to vendor code (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Store the host kernel's IDT base in a global variable (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Read cached VM-Exit reason to detect external interrupt (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: small cleanup in handle_exception (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix handling of #MC that occurs during VM-Entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: move MSR_IA32_POWER_CTL handling to common code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: offset is ensure to be in range (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use same convention to name kvm_lapic_{set, clear}_vector() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: check kvm_apic_sw_enabled() is enough (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: add host poll control msrs (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: segment limit check: use access length (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix limit checking in get_vmx_mem_address() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add Intel CPUID.1F cpuid emulation support (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use DR_TRAP_BITS instead of hard-coded 15 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: clean up conditions for asynchronous page fault handling (Vitaly Kuznetsov) [1749495] - [documentation] docs: amd-memory-encryption.rst get rid of warnings (Vitaly Kuznetsov) [1749495] - [virt] kvm: Convert kvm_lock to a mutex (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: remove unneeded 'asm volatile ("")' from vmcs_write64 (Vitaly Kuznetsov) [1749495] - [virt] kvm: irqchip: Use struct_size() in kzalloc() (Vitaly Kuznetsov) [1749495] - [x86] kvm/vmx: drop bad asm() clobber from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: hide vcpu_setup in processor code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Emulate MSR_IA32_MISC_ENABLE MWAIT bit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Provide a capability to disable cstate msr read intercepts (Vitaly Kuznetsov) [1749495] - [documentation] kvm: documentation: Add disable pause exits to KVM_CAP_X86_DISABLE_EXITS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: refine kvm_get_arch_capabilities() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Directly return result from kvm_arch_check_processor_compat() (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Optimize timer latency further (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Delay trace_kvm_wait_lapic_expire tracepoint to after vmexit (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Extract adaptive tune timer advancement logic (Vitaly Kuznetsov) [1749495] - [x86] kvm/nsvm: properly map nested VMCB (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix reserved bits related calculation errors caused by MKTME (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move kvm_set_mmio_spte_mask() from x86.c to mmu.c (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compile on s390 part 2 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix return value for reserved EFER (Vitaly Kuznetsov) [1749495] - [tools] kvm_stat: fix fields filter for child events (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: aarch64: compile with warnings on (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/pmu: do not mask the value that is written to fixed PMUs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/pmu: mask the result of rdpmc according to the width of the counters (Vitaly Kuznetsov) [1749495] - [x86] kvm/pmu: Set AMD's virt PMU version to 1 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: do not spam dmesg with VMCS/VMCB dumps (Vitaly Kuznetsov) [1749495] - [virt] kvm: Check irqchip mode before assign irqfd (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove duplicated TEST_ASSERT in hyperv_cpuid.c (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Expose per-vCPU timer_advance_ns to userspace (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Fix lapic_timer_advance_ns parameter overflow (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Fix using __this_cpu_read() in preemptible context (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compilation on s390 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Include CPUID leaf 0x8000001e in kvm's supported CPUID (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Include multiple indices with CPUID leaf 0x8000001d (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Fix a condition in test_hv_cpuid() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix spinlock taken warning during host resume (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compilation on aarch64 (Vitaly Kuznetsov) [1749495] - [x86] revert "kvm: nvmx: Expose RDPMC-exiting only when guest supports PMU" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix L1TF mitigation for shadow MMU (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Disable intercept for FS/GS base MSRs in vmcs02 when possible (Vitaly Kuznetsov) [1749495] - [tools] tests: kvm: Add tests to .gitignore (Vitaly Kuznetsov) [1749495] - [documentation] kvm: Introduce KVM_CAP_MANUAL_DIRTY_LOG_PROTECT2 (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix kvm_clear_dirty_log_protect off-by-(minus-)one (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix the bitmap range to copy during clear dirty (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use direct accessors for RIP and RSP (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Use accessors for GPRs outside of dedicated caching logic (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Omit caching logic for always-available GPRs (Vitaly Kuznetsov) [1749495] - [x86] kvm, x86: Properly check whether a pfn is an MMIO or not (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use page_address_valid in a few more locations (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map for accessing the enlightened VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map for accessing the shadow VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm/nsvm: Use the new mapping API for mapping guest memory (Vitaly Kuznetsov) [1749495] - [x86] kvm/x86: Use kvm_vcpu_map in emulator_cmpxchg_emulated (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the posted interrupt descriptor table (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the virtual APIC page (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the L1 MSR bitmap (Vitaly Kuznetsov) [1749495] - [x86] nvmx: handle_vmptrld: Use kvm_vcpu_map when copying VMCS12 from guest memory (Vitaly Kuznetsov) [1749495] - [virt] kvm: Introduce a new guest mapping API (Vitaly Kuznetsov) [1749495] - [x86] kvm: Handle PFNs outside of kernel reach when touching GPTEs (Vitaly Kuznetsov) [1749495] - [x86] nvmx: Update the PML table without mapping and unmapping the page (Vitaly Kuznetsov) [1749495] - [x86] nvmx: handle_vmon: Read 4 bytes from guest memory (Vitaly Kuznetsov) [1749495] - [x86] kvm: Implement HWCR support (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Include architectural defs header in capabilities.h (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: clean up some debug output (Vitaly Kuznetsov) [1749495] - [virt] kvm_main: fix some comments (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Skip delta_tsc shift-and-divide if the dividend is zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Check for a pending timer intr prior to start_hv_timer() (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Refactor ->set_hv_timer to use an explicit expired param (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Explicitly cancel the hv timer if it's pre-expired (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Busy wait for timer to expire when using hv_timer (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Nop emulation of MSR_IA32_POWER_CTL (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add support of clear Trace_ToPA_PMI status (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Inject PMI for KVM guest (Vitaly Kuznetsov) [1749495] - [documentation] revert "kvm: doc: Document the life cycle of a VM and its resources" (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: fix dirty log ioctl arch lists (Vitaly Kuznetsov) [1749495] - [x86] kvm: Make steal_time visible (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Inject #GP if guest attempts to set unsupported EFER bits (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Skip EFER vs. guest CPUID checks for host-initiated writes (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Return -EINVAL when signaling failure in VM-Entry helpers (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Return -EINVAL when signaling failure in pre-VM-Entry helpers (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Rename and split top-level consistency checks to match SDM (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Move guest non-reg state checks to VM-Exit path (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check "load IA32_PAT" VM-entry control on vmentry (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check "load IA32_PAT" VM-exit control on vmentry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: optimize check for valid PAT value (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: clear VM_EXIT_SAVE_IA32_PAT (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: print more APICv fields in dump_vmcs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Raise #GP when guest vCPU do not support PMU (Vitaly Kuznetsov) [1749495] - [documentation] kvm: doc: Document the life cycle of a VM and its resources (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: skip populating logical dest map if apic is not sw enabled (Bandan Das) [1728503] - [powerpc] kvm: ppc: book3s: Fix incorrect guest-to-user-translation error handling (David Gibson) [1749504] - [powerpc] kvm: Fall through switch case explicitly (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Fix CR0 setting in TM emulation (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Invalidate ERAT when flushing guest TLB entries (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Only write DAWR[X] when handling h_set_dawr in real mode (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: xive: Fix spelling mistake "acessing" -> "accessing" (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Make sure to load LPID for radix VCPUs (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Flush TLB on secondary radix threads (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Move HPT guest TLB flushing to C code (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Handle virtual mode in XIVE VCPU push code (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: smb->smp comment fixup (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s: Allocate guest TCEs on demand too (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Avoid lockdep debugging in TCE realmode handlers (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Fix lockdep warning when entering the guest (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Implement real mode H_PAGE_INIT handler (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Implement virtual mode H_PAGE_INIT handler (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s: Protect memslots while validating user address (David Gibson) [1749504] - [pci] PCI: hv: Use bytes 4 and 5 from instance ID as the PCI domain numbers (Mohammed Gamal) [1671288] - [pci] PCI: hv: Detect and fix Hyper-V PCI domain number collision (Mohammed Gamal) [1671288] - [fs] Revert "lockd: Show pid of lockd for remote locks" (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix an Oops in nfs4_do_setattr (Benjamin Coddington) [1732409] - [fs] NFSv4: Check the return value of update_open_stateid() (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix delegation state recovery (Benjamin Coddington) [1732409] - [fs] pnfs/flexfiles: Fix PTR_ERR() dereferences in ff_layout_track_ds_error (Benjamin Coddington) [1732409] - [fs] Revert "NFS: readdirplus optimization by cache mechanism" (memleak) (Benjamin Coddington) [1732409] - [fs] svcrdma: Ignore source port when computing DRC hash (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Use the correct TCP timeout for flexfiles I/O (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix bug only first CB_NOTIFY_LOCK is handled (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Again fix a race where CB_NOTIFY_LOCK fails to wake a waiter (Benjamin Coddington) [1732409] - [fs] SUNRPC fix regression in umount of a secure mount (Benjamin Coddington) [1732409] - [fs] NFS4: Fix v4.0 client state corruption when mount (Benjamin Coddington) [1732409] - [fs] NFSv4: When recovering state fails with EAGAIN, retry the same recovery (Benjamin Coddington) [1732409] - [fs] pnfs: Fix a problem where we gratuitously start doing I/O through the MDS (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure the bvecs are reset when we re-encode the RPC request (Benjamin Coddington) [1732409] - [fs] sunrpc/cache: remove the exporting of cache_seq_next (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a use after free when a server rejects the RPCSEC_GSS credential (Benjamin Coddington) [1732409] - [fs] xprtrdma: Fix an frwr_map recovery nit (Benjamin Coddington) [1732409] - [fs] NFSv4.1 fix incorrect return value in copy_file_range (Benjamin Coddington) [1732409] - [fs] NFS: Fix handling of reply page vector (Benjamin Coddington) [1732409] - [fs] NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. (Benjamin Coddington) [1732409] - [fs] nfsd: Don't release the callback slot unless it was actually held (Benjamin Coddington) [1732409] - [fs] nfsd/nfsd3_proc_readdir: fix buffer count and page pointers (Benjamin Coddington) [1732409] - [fs] sunrpc: don't mark uninitialised items as VALID. (Benjamin Coddington) [1732409] - [fs] SUNRPC: fix uninitialized variable warning (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: Fix layoutstats handling during read failovers (Benjamin Coddington) [1732409] - [fs] NFS: Fix a typo in nfs_init_timeout_values() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't let RPC_SOFTCONN tasks time out if the transport is connected (Benjamin Coddington) [1732409] - [fs] NFS: fix mount/umount race in nlmclnt. (Benjamin Coddington) [1732409] - [fs] NFS: Fix nfs4_lock_state refcounting in nfs4_alloc_{lock, unlock}data() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove redundant check for the reply length in call_decode() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Handle the SYSTEM_ERR rpc error (Benjamin Coddington) [1732409] - [fs] SUNRPC: rpc_decode_header() must always return a non-zero value on error (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use the ENOTCONN error on socket disconnect (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix the minimal size for reply buffer allocation (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a client regression when handling oversized replies (Benjamin Coddington) [1732409] - [fs] pNFS: Fix a typo in pnfs_update_layout (Benjamin Coddington) [1732409] - [fs] SUNRPC: Take the transport send lock before binding+connecting (Benjamin Coddington) [1732409] - [fs] SUNRPC: Micro-optimise when the task is known not to be sleeping (Benjamin Coddington) [1732409] - [fs] SUNRPC: Check whether the task was transmitted before rebind/reconnect (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove redundant calls to RPC_IS_QUEUED() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up (Benjamin Coddington) [1732409] - [fs] nfsd: allow nfsv3 readdir request to be larger. (Benjamin Coddington) [1732409] - [fs] SUNRPC: Respect RPC call timeouts when retrying transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up RPC back channel transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Prevent thundering herd when the socket is not connected (Benjamin Coddington) [1732409] - [fs] nfsd: fix wrong check in write_v4_end_grace() (Benjamin Coddington) [1732409] - [fs] nfsd: fix memory corruption caused by readdir (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow dynamic allocation of back channel slots (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Bump the default callback session slot count to 16 (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert remaining GFP_NOIO, and GFP_NOWAIT sites in sunrpc (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Clean up mirror DS initialisation (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Remove dead code in ff_layout_mirror_valid() (Benjamin Coddington) [1732409] - [fs] NFS/flexfile: Simplify nfs4_ff_layout_select_ds_stateid() (Benjamin Coddington) [1732409] - [fs] NFS/flexfile: Simplify nfs4_ff_layout_ds_version() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify ff_layout_get_ds_cred() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify nfs4_ff_find_or_create_ds_client() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify nfs4_ff_layout_select_ds_fh() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Speed up read failover when DSes are down (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Don't invalidate DS deviceids for being unresponsive (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Remove bogus checks for invalid deviceids (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Avoid unnecessary layout invalidations (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: refactor calls to fs4_ff_layout_prepare_ds() (Benjamin Coddington) [1732409] - [fs] NFSv4: Handle early exit in layoutget by returning an error (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Send LAYOUTERROR when failing over mirrored reads (Benjamin Coddington) [1732409] - [fs] NFSv4.2: Add client support for the generic 'layouterror' RPC call (Benjamin Coddington) [1732409] - [fs] NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated (Benjamin Coddington) [1732409] - [fs] NFSv4/pnfs: Fix barriers in nfs4_mark_deviceid_unavailable() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Fix up sparse RCU annotations (Benjamin Coddington) [1732409] - [fs] NFSv4/flexfiles: Fix invalid deref in FF_LAYOUT_DEVID_NODE() (Benjamin Coddington) [1732409] - [fs] NFS: Add missing encode / decode sequence_maxsz to v4.2 operations (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Don't process the sequence op more than once. (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Reinitialise sequence results before retransmitting a request (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix an Oops in udp_poll() (Benjamin Coddington) [1732409] - [fs] NFS/pnfs: Bulk destroy of layouts needs to be safe w.r.t. umount (Benjamin Coddington) [1732409] - [fs] NFS: Fix a soft lockup in the delegation recovery code (Benjamin Coddington) [1732409] - [fs] nfsd: fix performance-limiting session calculation (Benjamin Coddington) [1732409] - [fs] svcrpc: fix UDP on servers with lots of threads (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove the redundant 'zerocopy' argument to xs_sendpages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Further cleanups of xs_sendpages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert socket page send code to use iov_iter() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert xs_send_kvec() to use iov_iter_kvec() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Initiate a connection close on an ESHUTDOWN error in stream receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't suppress socket errors when a message read completes (Benjamin Coddington) [1732409] - [fs] SUNRPC: Handle zero length fragments correctly (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't reset the stream record info when the receive worker is running (Benjamin Coddington) [1732409] - [fs] nfs: fix xfstest generic/099 failed on nfsv3 (Benjamin Coddington) [1732409] - [fs] NFS: Fix typo in comments of nfs_readdir_alloc_pages() (Benjamin Coddington) [1732409] - [fs] NFS: Remove redundant semicolon (Benjamin Coddington) [1732409] - [fs] NFS: readdirplus optimization by cache mechanism (Benjamin Coddington) [1732409] - [fs] fs/nfs: Fix nfs_parse_devname to not modify it's argument (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove pointless test in unx_match() (Benjamin Coddington) [1732409] - [fs] NFS: drop useless LIST_HEAD (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure rq_bytes_sent is reset before request transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use poll() to fix up the socket requeue races (Benjamin Coddington) [1732409] - [fs] SUNRPC: Set memalloc_nofs_save() on all rpciod/xprtiod jobs (Benjamin Coddington) [1732409] - [fs] NFS: Fix sparse annotations for nfs_set_open_stateid_locked() (Benjamin Coddington) [1732409] - [fs] NFS: Fix up documentation warnings (Benjamin Coddington) [1732409] - [fs] NFS: ENOMEM should also be a fatal error. (Benjamin Coddington) [1732409] - [fs] NFS: EINTR is also a fatal error. (Benjamin Coddington) [1732409] - [fs] NFS: Ensure NFS writeback allocations don't recurse back into NFS. (Benjamin Coddington) [1732409] - [fs] NFS: Pass error information to the pgio error cleanup routine (Benjamin Coddington) [1732409] - [fs] NFS: Clean up list moves of struct nfs_page (Benjamin Coddington) [1732409] - [fs] NFS: Don't recoalesce on error in nfs_pageio_complete_mirror() (Benjamin Coddington) [1732409] - [fs] NFS: Fix an I/O request leakage in nfs_do_recoalesce (Benjamin Coddington) [1732409] - [fs] NFS: Fix I/O request leakages (Benjamin Coddington) [1732409] - [fs] Revert "nfsd4: return default lease period" (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use au_rslack when computing reply buffer size (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add rpc_auth::au_ralign field (Benjamin Coddington) [1732409] - [fs] SUNRPC: Make AUTH_SYS and AUTH_NULL set au_verfsize (Benjamin Coddington) [1732409] - [fs] NFS: Account for XDR pad of buf->pages (Benjamin Coddington) [1732409] - [fs] SUNRPC: Introduce rpc_prepare_reply_pages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove xdr_buf_trim() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Introduce trace points in rpc_auth_gss.ko (Benjamin Coddington) [1732409] - [fs] xprtrdma: Squelch a sparse warning (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use struct xdr_stream when decoding RPC Reply header (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up rpc_verify_header() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use struct xdr_stream when constructing RPC Call header (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add build option to disable support for insecure enctypes (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove rpc_xprt::tsh_size (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove some dprintk() call sites from auth functions (Benjamin Coddington) [1732409] - [fs] NFS: Add trace events to report non-zero NFS status codes (Benjamin Coddington) [1732409] - [fs] NFS: Remove print_overflow_msg() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add trace event that reports reply page vector alignment (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add XDR overflow trace event (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add xdr_stream::rqst field (Benjamin Coddington) [1732409] - [fs] SUNRPC: Display symbolic flag names in RPC trace events (Benjamin Coddington) [1732409] - [fs] rpc: properly check debugfs dentry before using it (Benjamin Coddington) [1732409] - [fs] svcrpc: fix unlikely races preventing queueing of sockets (Benjamin Coddington) [1732409] - [fs] svcrpc: svc_xprt_has_something_to_do seems a little long (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't allow compiler optimisation of svc_xprt_release_slot() (Benjamin Coddington) [1732409] - [fs] nfsd: fix an IS_ERR() vs NULL check (Benjamin Coddington) [1732409] - [fs] nfsd: Fix error return values for nfsd4_clone_file_range() (Benjamin Coddington) [1732409] - [fs] nfs: Fix NULL pointer dereference of dev_name (Benjamin Coddington) [1732409] - [fs] SUNRPC: Address Kerberos performance/behavior regression (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure we respect the RPCSEC_GSS sequence number limit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure rq_bytes_sent is reset before request transmission (Benjamin Coddington) [1732409] - [fs] NFSv4.2 fix unnecessary retry in nfs4_copy_file_range (Benjamin Coddington) [1732409] - [fs] sunrpc: kernel BUG at kernel/cred.c:825! (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix TCP receive code on archs with flush_dcache_page() (Benjamin Coddington) [1732409] - [fs] sunrpc: convert to DEFINE_SHOW_ATTRIBUTE (Benjamin Coddington) [1732409] - [fs] sunrpc: Add xprt after nfs4_test_session_trunk() (Benjamin Coddington) [1732409] - [fs] sunrpc: convert unnecessary GFP_ATOMIC to GFP_NOFS (Benjamin Coddington) [1732409] - [fs] sunrpc: handle ENOMEM in rpcb_getport_async (Benjamin Coddington) [1732409] - [fs] NFS: remove unnecessary test for IS_ERR(cred) (Benjamin Coddington) [1732409] - [fs] NFSv4.2 fix async copy reboot recovery (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix some kernel doc complaints (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify defining common RPC trace events (Benjamin Coddington) [1732409] - [fs] NFS: Fix NFSv4 symbolic trace point output (Benjamin Coddington) [1732409] - [fs] nfs: fixed broken compilation in nfs_callback_up_net() (Benjamin Coddington) [1732409] - [fs] nfs: minor typo in nfs4_callback_up_net() (Benjamin Coddington) [1732409] - [fs] sunrpc: fix debug message in svc_create_xprt() (Benjamin Coddington) [1732409] - [fs] sunrpc: remove svc_rdma_bc_class (Benjamin Coddington) [1732409] - [fs] sunrpc: remove unused bc_up operation from rpc_xprt_ops (Benjamin Coddington) [1732409] - [fs] sunrpc: use SVC_NET() in svcauth_gss_* functions (Benjamin Coddington) [1732409] - [fs] nfsd: drop useless LIST_HEAD (Benjamin Coddington) [1732409] - [fs] SUNRPC discard cr_uid from struct rpc_cred. (Benjamin Coddington) [1732409] - [fs] SUNRPC: simplify auth_unix. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove crbind rpc_cred operation (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove generic cred code. (Benjamin Coddington) [1732409] - [fs] NFS/NFSD/SUNRPC: replace generic creds with 'struct cred'. (Benjamin Coddington) [1732409] - [fs] NFS: struct nfs_open_dir_context: convert rpc_cred pointer to cred. (Benjamin Coddington) [1732409] - [fs] NFS: change access cache to use 'struct cred'. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove RPCAUTH_AUTH_NO_CRKEY_TIMEOUT (Benjamin Coddington) [1732409] - [fs] NFS: move credential expiry tracking out of SUNRPC into NFS. (Benjamin Coddington) [1732409] - [fs] SUNRPC: add side channel to use non-generic cred for rpc call. (Benjamin Coddington) [1732409] - [fs] SUNRPC: introduce RPC_TASK_NULLCREDS to request auth_none (Benjamin Coddington) [1732409] - [fs] NFS/SUNRPC: don't lookup machine credential until rpcauth_bindcred(). (Benjamin Coddington) [1732409] - [fs] SUNRPC: discard RPC_DO_ROOTOVERRIDE() (Benjamin Coddington) [1732409] - [fs] NFSv4: don't require lock for get_renew_cred or get_machine_cred (Benjamin Coddington) [1732409] - [fs] NFSv4: add cl_root_cred for use when machine cred is not available. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove machine_cred field from struct auth_cred (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove uid and gid from struct auth_cred (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove groupinfo from struct auth_cred. (Benjamin Coddington) [1732409] - [fs] SUNRPC: add 'struct cred *' to auth_cred and rpc_cred (Benjamin Coddington) [1732409] - [fs] cred: allow get_cred() and put_cred() to be given NULL. (Benjamin Coddington) [1732409] - [fs] cred: export get_task_cred(). (Benjamin Coddington) [1732409] - [fs] cred: add get_cred_rcu() (Benjamin Coddington) [1732409] - [fs] cred: add cred_fscmp() for comparing creds. (Benjamin Coddington) [1732409] - [fs] SUNRPC: allow /proc entries without CONFIG_SUNRPC_DEBUG (Benjamin Coddington) [1732409] - [fs] nfs: fix comment to nfs_generic_pg_test which does the opposite (Benjamin Coddington) [1732409] - [fs] NFSv4: cleanup remove unused nfs4_xdev_fs_type (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove xprt_connect_status() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a race with XPRT_CONNECTING (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix disconnection races (Benjamin Coddington) [1732409] - [fs] Revert "[net] Revert "sunrpc: Ensure we always close the socket after a connection shuts down"" (Benjamin Coddington) [1732409] - [fs] lockd: Show pid of lockd for remote locks (Benjamin Coddington) [1732409] - [fs] NFSD remove OP_CACHEME from 4.2 op_flags (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't force a redundant disconnection in xs_read_stream() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up socket polling (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use the discard iterator rather than MSG_TRUNC (Benjamin Coddington) [1732409] - [fs] SUNRPC: Treat EFAULT as a truncated message in xs_read_stream_request() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up handling of the XDRBUF_SPARSE_PAGES flag (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix RPC receive hangs (Benjamin Coddington) [1732409] - [fs] nfsd: Return EPERM, not EACCES, in some SETATTR cases (Benjamin Coddington) [1732409] - [fs] sunrpc: fix cache_head leak due to queued request (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a potential race in xprt_connect() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a memory leak in call_encode() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix leak of krb5p encode pages (Benjamin Coddington) [1732409] - [fs] SUNRPC: call_connect_status() must handle tasks that got transmitted (Benjamin Coddington) [1732409] - [fs] nfs: don't dirty kernel pages read by direct-io (Benjamin Coddington) [1732409] - [fs] NFS: use locks_copy_lock() to copy locks. (Benjamin Coddington) [1732409] - [fs] nfsd: clean up indentation, increase indentation in switch statement (Benjamin Coddington) [1732409] - [fs] nfsd: fix a warning in __cld_pipe_upcall() (Benjamin Coddington) [1732409] - [fs] lockd: fix decoding of TEST results (Benjamin Coddington) [1732409] - [fs] nfsd4: fix crash on writing v4_end_grace before nfsd startup (Benjamin Coddington) [1732409] - [fs] nfsd4: skip unused assignment (Benjamin Coddington) [1732409] - [fs] nfsd4: forbid all renames during grace period (Benjamin Coddington) [1732409] - [fs] nfsd4: remove unused nfs4_check_olstateid parameter (Benjamin Coddington) [1732409] - [fs] nfsd4: zero-length WRITE should succeed (Benjamin Coddington) [1732409] - [fs] NFSv4.2 copy do not allocate memory under the lock (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a NFSv4 state manager deadlock (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix an Oops during delegation callbacks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a bogus get/put in generic_key_to_expire() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a Oops when destroying the RPCSEC_GSS credential cache (Benjamin Coddington) [1732409] - [fs] NFSv4: Ensure that the state manager exits the loop on SIGKILL (Benjamin Coddington) [1732409] - [fs] NFSv4: Don't exit the state manager without clearing NFS4CLNT_MANAGER_RUNNING (Benjamin Coddington) [1732409] - [fs] SUNRPC: drop pointless static qualifier in xdr_get_next_encode_buffer() (Benjamin Coddington) [1732409] - [fs] nfsd: COPY and CLONE operations require the saved filehandle to be set (Benjamin Coddington) [1732409] - [fs] sunrpc: correct the computation for page_ptr when truncating (Benjamin Coddington) [1732409] - [fs] NFS: fix spelling mistake, EACCESS -> EACCES (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use atomic(64)_t for seq_send(64) (Benjamin Coddington) [1732409] - [fs] nfsd: Fix an Oops in free_session() (Benjamin Coddington) [1732409] - [fs] nfsd: correctly decrement odstate refcount in error path (Benjamin Coddington) [1732409] - [fs] nfsd: fix fall-through annotations (Benjamin Coddington) [1732409] - [fs] knfsd: Improve lookup performance in the duplicate reply cache using an rbtree (Benjamin Coddington) [1732409] - [fs] knfsd: Further simplify the cache lookup (Benjamin Coddington) [1732409] - [fs] knfsd: Simplify NFS duplicate replay cache (Benjamin Coddington) [1732409] - [fs] knfsd: Remove dead code from nfsd_cache_lookup (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify TCP receive code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Replace the cache_detail->hash_lock with a regular spinlock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove non-RCU protected lookup (Benjamin Coddington) [1732409] - [fs] NFS: Fix up a typo in nfs_dns_ent_put (Benjamin Coddington) [1732409] - [fs] NFS: Lockless DNS lookups (Benjamin Coddington) [1732409] - [fs] knfsd: Lockless lookup of NFSv4 identities. (Benjamin Coddington) [1732409] - [fs] SUNRPC: Lockless server RPCSEC_GSS context lookup (Benjamin Coddington) [1732409] - [fs] knfsd: Allow lockless lookups of the exports (Benjamin Coddington) [1732409] - [fs] SUNRPC: Make server side AUTH_UNIX use lockless lookups (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow cache lookups to use RCU protection rather than the r/w spinlock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert the auth cred cache to use refcount_t (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert auth creds to use refcount_t (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify lookup code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up the AUTH cache code (Benjamin Coddington) [1732409] - [fs] NFS: change sign of nfs_fh length (Benjamin Coddington) [1732409] - [fs] sunrpc: safely reallow resvport min/max inversion (Benjamin Coddington) [1732409] - [fs] nfs: remove redundant call to nfs_context_set_write_error() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a compile warning for cmpxchg64() (Benjamin Coddington) [1732409] - [fs] SUNRPC: use cmpxchg64() in gss_seq_send64_fetch_and_inc() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor sunrpc_cache_lookup (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add lockless lookup of the server's auth domain (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove the server 'authtab_lock' and just use RCU (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix lookup revalidate of regular files (Benjamin Coddington) [1732409] - [fs] NFS: Refactor nfs_lookup_revalidate() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Replace krb5_seq_lock with a lockless scheme (Benjamin Coddington) [1732409] - [fs] SUNRPC: Lockless lookup of RPCSEC_GSS mechanisms (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove rpc_authflavor_lock in favour of RCU locking (Benjamin Coddington) [1732409] - [fs] NFS: Remove private spinlock in struct nfs_pgio_header (Benjamin Coddington) [1732409] - [fs] NFSv3: Improve NFSv3 performance when server returns no post-op attributes (Benjamin Coddington) [1732409] - [fs] NFSv4: Split out NFS v4.2 copy completion functions (Benjamin Coddington) [1732409] - [fs] NFS: Reduce indentation of nfs4_recovery_handle_error() (Benjamin Coddington) [1732409] - [fs] NFS: Reduce indentation of the switch statement in nfs4_reclaim_open_state() (Benjamin Coddington) [1732409] - [fs] NFS: Split out the body of nfs4_reclaim_open_state() (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix the r/wsize checking (Benjamin Coddington) [1732409] - [fs] NFSv4: Convert struct nfs4_state to use refcount_t (Benjamin Coddington) [1732409] - [fs] NFSv4: Convert open state lookup to use RCU (Benjamin Coddington) [1732409] - [fs] NFS: Convert lookups of the open context to RCU (Benjamin Coddington) [1732409] - [fs] NFS: Simplify internal check for whether file is open for write (Benjamin Coddington) [1732409] - [fs] NFS: Convert lookups of the lock context to RCU (Benjamin Coddington) [1732409] - [fs] pNFS: Don't allocate more pages than we need to fit a layoutget response (Benjamin Coddington) [1732409] - [fs] pNFS: Don't zero out the array in nfs4_alloc_pages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Unexport xdr_partial_copy_from_skb() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up xs_udp_data_receive() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow AF_LOCAL sockets to use the generic stream receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up - rename xs_tcp_data_receive() to xs_stream_data_receive() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify TCP receive code by switching to using iterators (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a bvec array to struct xdr_buf for use with iovec_iter() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a label for RPC calls that require allocation on receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert the xprt->sending queue back to an ordinary wait queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix priority queue fairness (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert xprt receive queue to use an rbtree (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't take transport->lock unnecessarily when taking XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Cleanup: remove the unused 'task' argument from the request_send() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up transport write space handling (Benjamin Coddington) [1732409] - [fs] SUNRPC: Turn off throttling of RPC slots for TCP sockets (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow soft RPC calls to time out when waiting for the XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow calls to xprt_transmit() to drain the entire transmit queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Enqueue swapper tagged RPCs at the head of the transmit queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Support for congestion control when queuing is enabled (Benjamin Coddington) [1732409] - [fs] SUNRPC: Improve latency for interactive tasks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Move RPC retransmission stat counter to xprt_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify xprt_prepare_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't reset the request 'bytes_sent' counter when releasing XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Treat the task and request as separate in the xprt_ops->send_request() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up the back channel transmit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor RPC call encoding (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a transmission queue for RPC requests (Benjamin Coddington) [1732409] - [fs] SUNRPC: Distinguish between the slot allocation list and receive queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Minor cleanup for call_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor xprt_transmit() to remove wait for reply code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor xprt_transmit() to remove the reply queue code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Rename xprt->recv_lock to xprt->queue_lock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't wake queued RPC calls multiple times in xprt_transmit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Test whether the task is queued before grabbing the queue spinlocks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a helper to wake up a sleeping rpc_task and set its status (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor the transport request pinning (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify dealing with aborted partially transmitted messages (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add socket transmit queue offset tracking (Benjamin Coddington) [1732409] - [fs] SUNRPC: Move reset of TCP state variables into the reconnect code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Rename TCP receive-specific state variables (Benjamin Coddington) [1732409] - [fs] SUNRPC: Avoid holding locks across the XDR encoding of the RPC message (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify identification of when the message send/receive is complete (Benjamin Coddington) [1732409] - [fs] SUNRPC: The transmitted message must lie in the RPCSEC window of validity (Benjamin Coddington) [1732409] - [fs] SUNRPC: If there is no reply expected, bail early from call_decode (Benjamin Coddington) [1732409] - [fs] nfsd: remove set but not used variable 'dirp' (Benjamin Coddington) [1732409] - [fs] NFSD introduce async copy feature (Benjamin Coddington) [1732409] - [fs] NFSD OFFLOAD_CANCEL xdr (Benjamin Coddington) [1732409] - [fs] NFSD OFFLOAD_STATUS xdr (Benjamin Coddington) [1732409] - [fs] NFSD CB_OFFLOAD xdr (Benjamin Coddington) [1732409] - [fs] NFS: Don't open code clearing of delegation state (Benjamin Coddington) [1732409] - [fs] NFSv4.1 fix infinite loop on I/O. (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a tracepoint Oops in initiate_file_draining() (Benjamin Coddington) [1732409] - [fs] pNFS: Ensure we return the error if someone kills a waiting layoutget (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a tracepoint Oops in initiate_file_draining() (Benjamin Coddington) [1732409] - [fs] sunrpc: Add comment defining gssd upcall API keywords (Benjamin Coddington) [1732409] - [fs] nfsd: Remove callback_cred (Benjamin Coddington) [1732409] - [fs] nfsd: Use correct credential for NFSv4.0 callback with GSS (Benjamin Coddington) [1732409] - [fs] sunrpc: Extract target name into svc_cred (Benjamin Coddington) [1732409] - [fs] sunrpc: Enable the kernel to specify the hostname part of service principals (Benjamin Coddington) [1732409] - [fs] pNFS: Remove unwanted optimisation of layoutget (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: ff_layout_pg_init_read should exit on error (Benjamin Coddington) [1732409] - [fs] pNFS: Treat RECALLCONFLICT like DELAY... (Benjamin Coddington) [1732409] - [fs] pNFS: When updating the stateid in layoutreturn, also update the recall range (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix locking in pnfs_generic_recover_commit_reqs (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a typo in nfs4_init_channel_attrs() (Benjamin Coddington) [1732409] - [fs] NFSv4: Don't busy wait if NFSv4 session draining is interrupted (Benjamin Coddington) [1732409] - [fs] NFS recover from destination server reboot for copies (Benjamin Coddington) [1732409] - [fs] nfsd: use true and false for boolean values (Benjamin Coddington) [1732409] - [fs] nfsd: constify write_op[] (Benjamin Coddington) [1732409] - [fs] fs/nfsd: Delete invalid assignment statements in nfsd4_decode_exchange_id (Benjamin Coddington) [1732409] - [fs] NFSD: Handle full-length symlinks (Benjamin Coddington) [1732409] - [fs] NFSD: Refactor the generic write vector fill helper (Benjamin Coddington) [1732409] - [fs] nfsd: Mark expected switch fall-through (Benjamin Coddington) [1732409] - [fs] nfsd: fix leaked file lock with nfs exported overlayfs (Benjamin Coddington) [1732409] - [fs] NFS add a simple sync nfs4_proc_commit after async COPY (Benjamin Coddington) [1732409] - [fs] NFS handle COPY ERR_OFFLOAD_NO_REQS (Benjamin Coddington) [1732409] - [fs] NFS send OFFLOAD_CANCEL when COPY killed (Benjamin Coddington) [1732409] - [fs] NFS export nfs4_async_handle_error (Benjamin Coddington) [1732409] - [fs] NFS handle COPY reply CB_OFFLOAD call race (Benjamin Coddington) [1732409] - [fs] NFS add support for asynchronous COPY (Benjamin Coddington) [1732409] - [fs] NFS COPY xdr handle async reply (Benjamin Coddington) [1732409] - [fs] NFS OFFLOAD_CANCEL xdr (Benjamin Coddington) [1732409] - [fs] NFS CB_OFFLOAD xdr (Benjamin Coddington) [1732409] - [fs] NFS: Use an appropriate work queue for direct-write completion (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix error handling in nfs4_sp4_select_mode() (Benjamin Coddington) [1732409] - [fs] pnfs: Use true and false for boolean values (Benjamin Coddington) [1732409] - [fs] pnfs: pnfs_find_lseg() should not check NFS_LSEG_LAYOUTRETURN (Benjamin Coddington) [1732409] - [fs] NFS: Mark expected switch fall-throughs (Benjamin Coddington) [1732409] - [fs] NFSv4: Mark the inode change attribute up to date in update_changeattr() (Benjamin Coddington) [1732409] - [fs] NFSv4: Detect nlink changes on cross-directory renames too (Benjamin Coddington) [1732409] - [fs] NFSv4: bump/drop the nlink count on the parent dir when we mkdir/rmdir (Benjamin Coddington) [1732409] - [fs] pnfs: Fix handling of NFS4ERR_OLD_STATEID replies to layoutreturn (Benjamin Coddington) [1732409] - [fs] sunrpc: whitespace fixes (Benjamin Coddington) [1732409] - [fs] NFSv4 client live hangs after live data migration recovery (Benjamin Coddington) [1732409] - [fs] NFSv4.0 fix client reference leak in callback (Benjamin Coddington) [1732409] - [fs] sunrpc: kstrtoul() can also return -ERANGE (Benjamin Coddington) [1732409] - [fs] NFS: silence a harmless uninitialized variable warning (Benjamin Coddington) [1732409] - [fs] net/sunrpc: Make rpc_auth_create_args a const (Benjamin Coddington) [1732409] - [fs] pnfs/blocklayout: off by one in bl_map_stripe() (Benjamin Coddington) [1732409] - [fs] nfs: Referrals not inheriting proto setting from parent (Benjamin Coddington) [1732409] - [fs] nfs: initiate returning delegation when reclaiming one that's been recalled (Benjamin Coddington) [1732409] - [fs] fs: nfs: Adding new return type vm_fault_t (Benjamin Coddington) [1732409] - [fs] nfs: add error check in nfs_idmap_prepare_message() (Benjamin Coddington) [1732409] - [fs] NFS: More excessive attribute revalidation in nfs_execute_ok() (Benjamin Coddington) [1732409] - [fs] NFS: Fix excessive attribute revalidation in nfs_execute_ok() (Benjamin Coddington) [1732409] - [fs] NFS: Ensure we immediately start writeback on rescheduled writes (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix a potential layoutget/layoutrecall deadlock (Benjamin Coddington) [1732409] - [fs] pNFS: Parse the results of layoutget on open even if permissions checks fail (Benjamin Coddington) [1732409] - [fs] NFS: Allow optimisation of lseek(fd, SEEK_CUR, 0) on directories (Benjamin Coddington) [1732409] - [fs] pNFS: Wait for stale layoutget calls to complete in pnfs_update_layout() (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: Ensure we always return a layout if it has layoutstats (Benjamin Coddington) [1732409] - [fs] pNFS: Ignore non-recalled layouts in pnfs_layout_need_return() (Benjamin Coddington) [1732409] - [fs] pNFS: Don't update the stateid when replying NFS4ERR_DELAY to a layout recall (Benjamin Coddington) [1732409] - [fs] pNFS: Don't discard layout segments that are marked for return (Benjamin Coddington) [1732409] - [fs] nfsd: don't advertise a SCSI layout for an unsupported request_queue (Benjamin Coddington) [1732409] - [fs] nfsd: fix corrupted reply to badly ordered compound (Benjamin Coddington) [1732409] - [fs] nfsd: clarify check_op_ordering (Benjamin Coddington) [1732409] - [fs] nfsd: update obselete comment referencing the BKL (Benjamin Coddington) [1732409] - [fs] nfsd4: cleanup sessionid in nfsd4_destroy_session (Benjamin Coddington) [1732409] - [fs] nfsd4: less confusing nfsd4_compound_in_session (Benjamin Coddington) [1732409] - [fs] nfsd4: support change_attr_type attribute (Benjamin Coddington) [1732409] - [fs] nfsd: fix NFSv4 time_delta attribute (Benjamin Coddington) [1732409] - [fs] nfsd4: return default lease period (Benjamin Coddington) [1732409] - [fs] nfsd4: extend reclaim period for reclaiming clients (Benjamin Coddington) [1732409] - [netdrv] i40e: Do not check VF state in i40e_ndo_get_vf_config (Stefan Assmann) [1752498] - [netdrv] i40e: Add support for X710 device (Stefan Assmann) [1752891] - [mm] mm/oom_kill.c: add task UID to info message on an oom kill (Joel Savitz) [1693039] - [pci] ACPICA: Increase total number of possible Owner IDs (Al Stone) [1713050] - [powerpc] powerpc/pseries: correctly track irq state in default idle (Steve Best) [1751971] - [powerpc] powerpc/imc: Dont create debugfs files for cpu-less nodes (Steve Best) [1726031] - [fs] userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx (Alex Gladkov) [1749763] - [infiniband] RDMA/bnxt_re: Fix stack-out-of-bounds in bnxt_qplib_rcfw_send_message (Selvin Xavier) [1643312] - [drm] drm/bochs: Fix connector leak during driver unload (Sam Bobroff) [1463490] - [tools] selftests: Remove forced unbuffering for test running (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Add test plan API to kselftest.h and adjust callers (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Remove KSFT_TAP_LEVEL (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Move test output to diagnostic lines (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Distinguish between missing and non-executable (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Add plan line and fix result line syntax (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Extract logic for multiple test runs (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Use runner.sh for emit targets (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Extract single-test shell logic from lib.mk (Desnes Augusto Nunes do Rosario) [1721461] - [tools] x86/selftests/pkeys: Fork() to check for state being preserved (Vladis Dronov) [1738880] - [x86] x86/pkeys: Properly copy pkey state at fork() (Vladis Dronov) [1738880] - [netdrv] cxgb4: fix a memory leak bug (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Prefer pcie_capability_read_word() (Jonathan Toppins) [1725776] - [netdrv] allocate_flower_entry: should check for null deref (Jonathan Toppins) [1725776] - [netdrv] cxgb4: reduce kernel stack usage in cudbg_collect_mem_region() (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS refcounting for alloc/free mac filters (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS TCAM refcounting for cxgb4 change mac (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS TCAM refcounting for raw mac filters (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Re-work the logic for mps refcounting (Jonathan Toppins) [1725776] - [netdrv] cxgb4/libcxgb/cxgb4i/cxgbit: enable eDRAM page pods for iSCSI (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Set initial IRQ affinity hints (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Make t4_get_tp_e2c_map static (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Revert "cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size" (Jonathan Toppins) [1725776] - [netdrv] cxgb4: offload VLAN flows regardless of VLAN ethtype (Jonathan Toppins) [1725776] - [netdrv] cxgb4: use firmware API for validating filter spec (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Enable hash filter with offload (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Fix error path in cxgb4_init_module (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Delete all hash and TCAM filters before resource cleanup (Jonathan Toppins) [1725776] - [netdrv] cxgb4/cxgb4vf_main: Mark expected switch fall-through (Jonathan Toppins) [1725776] - [netdrv] cxgb4/cxgb4vf: Display advertised FEC in ethtool (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Update 1.23.3.0 as the latest firmware supported. (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Update 1.22.9.0 as the latest firmware supported. (Jonathan Toppins) [1725776] - [netdrv] cxgb4/l2t: Use struct_size() in kvzalloc() (Jonathan Toppins) [1725776] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Jonathan Toppins) [1725776] - [netdrv] crypto/chelsio/chtls: macro correction in tx path (Jonathan Toppins) [1725776]- [kernel] rcu: Add sparse check to rcu_assign_pointer() (Waiman Long) [1737054] - [kernel] rcu: Fix obsolete DYNTICK_IRQ_NONIDLE comment (Waiman Long) [1737054] - [kernel] rcu: Repair rcu_nmi_exit() docbook header (Waiman Long) [1737054] - [kernel] rcu: Remove preemption disabling from expedited CPU selection (Waiman Long) [1737054] - [kernel] rcu: Rename rcu_process_callbacks() to rcu_core() for Tree RCU (Waiman Long) [1737054] - [kernel] rcu: Rename rcu_check_callbacks() to rcu_sched_clock_irq() (Waiman Long) [1737054] - [kernel] rcu: Docbook for rcu_head_init() and rcu_head_after_call_rcu() (Waiman Long) [1737054] - [documentation] doc: Fix outdated links (Waiman Long) [1737054] - [documentation] doc: CPU-hotplug notifiers cannot invoke synchronize_srcu() or srcu_barrier() (Waiman Long) [1737054] - [documentation] doc: Now jiffies_till_sched_qs solicits help from cond_resched() (Waiman Long) [1737054] - [kernel] rcuperf: Stop abusing IS_ENABLED() (Waiman Long) [1737054] - [kernel] rcutorture: Add grace period after CPU offline (Waiman Long) [1737054] - [kernel] torture: Explain and simplify odd "for" loop in mkinitrd.sh (Waiman Long) [1737054] - [kernel] rcutorture: Record grace periods in forward-progress histogram (Waiman Long) [1737054] - [kernel] rcu: Prevent needless ->gp_seq_needed update in __note_gp_changes() (Waiman Long) [1737054] - [kernel] rcu: Do RCU GP kthread self-wakeup from softirq and interrupt (Waiman Long) [1737054] - [kernel] rcu: Add sysrq rcu_node-dump capability (Waiman Long) [1737054] - [kernel] rcu: Protect rcu_check_gp_kthread_starvation() access to ->gp_flags (Waiman Long) [1737054] - [kernel] rcu: Improve diagnostics for failed RCU grace-period start (Waiman Long) [1737054] - [kernel] rcu: Update NOCB comments (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_cpu_kthread_cpu per-CPU variable (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_has_work to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_cpu_kthread_loops per-CPU variable (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_kthread_status to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_kthread_task to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Accommodate zero jiffies_till_first_fqs and kthread kicking (Waiman Long) [1737054] - [kernel] rcu: Remove wrapper definitions for obsolete RCU update functions (Waiman Long) [1737054] - [kernel] rcu: Discard separate per-CPU callback counts (Waiman Long) [1737054] - [kernel] rcu: Inline _synchronize_rcu_expedited() into synchronize_rcu_expedited() (Waiman Long) [1737054] - [kernel] rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu() (Waiman Long) [1737054] - [kernel] rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu_expedited() (Waiman Long) [1737054] - [kernel] rcu: Determine expedited-GP IPI handler at build time (Waiman Long) [1737054] - [kernel] rcu: Inline rcu_kthread_do_work() into its sole remaining caller (Waiman Long) [1737054] - [kernel] rcu: Eliminate RCU_BH_FLAVOR and RCU_SCHED_FLAVOR (Waiman Long) [1737054] - [kernel] rcu: Inline force_quiescent_state() into rcu_force_quiescent_state() (Waiman Long) [1737054] - [kernel] rcu: Make expedited IPI handler return after handling critical section (Waiman Long) [1737054] - [kernel] rcu: Rename and comment changes due to only one rcuo kthread per CPU (Waiman Long) [1737054] - [kernel] sched: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] sched: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [net] net/core: Replace call_rcu_bh() and synchronize_rcu_bh() (Waiman Long) [1737054] - [net] netpoll: allow cleanup to be synchronous (Waiman Long) [1737054] - [net] netfilter: Replace call_rcu_bh(), rcu_barrier_bh(), and synchronize_rcu_bh() (Waiman Long) [1737054] - [kernel] uprobes: Use synchronize_rcu() not synchronize_sched() (Waiman Long) [1737054] - [kernel] rcutorture: Don't do busted forward-progress testing (Waiman Long) [1737054] - [kernel] rcutorture: Use 100ms buckets for forward-progress callback histograms (Waiman Long) [1737054] - [kernel] rcutorture: Recover from OOM during forward-progress tests (Waiman Long) [1737054] - [kernel] rcutorture: Print forward-progress test age upon failure (Waiman Long) [1737054] - [kernel] rcutorture: Print time since GP end upon forward-progress failure (Waiman Long) [1737054] - [kernel] rcutorture: Print histogram of CB invocation at OOM time (Waiman Long) [1737054] - [kernel] rcutorture: Print GP age upon forward-progress failure (Waiman Long) [1737054] - [kernel] rcu: Print per-CPU callback counts for forward-progress failures (Waiman Long) [1737054] - [kernel] rcu: Account for nocb-CPU callback counts in RCU CPU stall warnings (Waiman Long) [1737054] - [kernel] rcutorture: Dump grace-period diagnostics upon forward-progress OOM (Waiman Long) [1737054] - [kernel] rcutorture: Prepare for asynchronous access to rcu_fwd_startat (Waiman Long) [1737054] - [kernel] torture: Remove unnecessary "ret" variables (Waiman Long) [1737054] - [kernel] rcutorture: Affinity forward-progress test to avoid housekeeping CPUs (Waiman Long) [1737054] - [kernel] rcutorture: Break up too-long rcu_torture_fwd_prog() function (Waiman Long) [1737054] - [kernel] rcutorture: Remove cbflood facility (Waiman Long) [1737054] - [kernel] torture: Bring any extra CPUs online during kernel startup (Waiman Long) [1737054] - [kernel] rcutorture: Add call_rcu() flooding forward-progress tests (Waiman Long) [1737054] - [tools] rcutorture/formal: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [tools] tools/kernel.h: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [net] net/decnet: Replace rcu_barrier_bh() with rcu_barrier() (Waiman Long) [1737054] - [net] net/core/skmsg: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] cgroups: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] types: Remove call_rcu_bh() and call_rcu_sched() (Waiman Long) [1737054] - [include] percpu-rwsem: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [net] net/bridge: Replace call_rcu_bh() and rcu_barrier_bh() (Waiman Long) [1737054] - [kernel] srcu: Use "ssp" instead of "sp" for srcu_struct pointer (Waiman Long) [1737054] - [kernel] srcu: Lock srcu_data structure in srcu_gp_start() (Waiman Long) [1737054] - [mm] mm: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] percpu-refcount: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] events: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] workqueue: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] modules: Replace synchronize_sched() and call_rcu_sched() (Waiman Long) [1737054] - [kernel] sched/membarrier: synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] lockdep: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] kprobes: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [init] main: Replace rcu_barrier_sched() with rcu_barrier() (Waiman Long) [1737054] - [kernel] tracing: Replace synchronize_sched() and call_rcu_sched() (Waiman Long) [1737054] - [kernel] tracepoints: Free early tracepoints after RCU is initialized (Waiman Long) [1737054] - [kernel] tracing: Fix synchronizing to event changes with tracepoint_synchronize_unregister() (Waiman Long) [1737054] - [kernel] tracepoint: Make rcuidle tracepoint callers use SRCU (Waiman Long) [1737054] - [fs] fs/file: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [cpufreq] cpufreq/cpufreq_governor: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [cpufreq] cpufreq/intel_pstate: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [vhost] drivers/vhost: Replace synchronize_rcu_bh() with synchronize_rcu() (Waiman Long) [1737054] - [netdrv] ethernet/sis: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [char] drivers/ipmi: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [crypto] crypto/pcrypt: Replace synchronize_rcu_bh() with synchronize_rcu() (Waiman Long) [1737054] - [mm] mm: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [kernel] locking/mutex: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [fs] userfaultfd: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [net] smsc: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [scripts] checkpatch.pl: Suggest lockdep instead of asserting !spin_is_locked() (Waiman Long) [1737054] - [scripts] checkpatch: Create table of obsolete APIs and apply to RCU (Waiman Long) [1737054] - [maintainers] MAINTAINERS: Add Joel Fernandes as RCU reviewer (Waiman Long) [1737054] - [kernel] rcu: Avoid signed integer overflow in rcu_preempt_deferred_qs() (Waiman Long) [1737054] - [kernel] rcu: Replace this_cpu_ptr() with __this_cpu_read() (Waiman Long) [1737054] - [kernel] rcu: Speed up expedited GPs when interrupting RCU reader (Waiman Long) [1737054] - [kernel] rcu: Trace end of grace period before end of grace period (Waiman Long) [1737054] - [kernel] rcu: Adjust the comment of function rcu_is_watching (Waiman Long) [1737054] - [kernel] rcu: Add jiffies-since-GP-activity to show_rcu_gp_kthreads() (Waiman Long) [1737054] - [kernel] rcu: Add state name to show_rcu_gp_kthreads() output (Waiman Long) [1737054] - [kernel] rcu: Parameterize rcu_check_gp_start_stall() (Waiman Long) [1737054] - [kernel] rcu: Avoid double multiply by HZ (Waiman Long) [1737054] - [documentation] doc: Fix "struction" typo in RCU memory-ordering documentation (Waiman Long) [1737054] - [documentation] doc: Correct parameter in stallwarn (Waiman Long) [1737054] - [documentation] doc: RCU scheduler spinlock rcu_read_unlock() restriction remains (Waiman Long) [1737054] - [documentation] doc: Make listing in RCU perf/scale requirements use rcu_assign_pointer() (Waiman Long) [1737054] - [documentation] doc: Remove obsolete (non-)requirement about disabling preemption (Waiman Long) [1737054] - [documentation] doc: Make reader aware of rcu_dereference_protected (Waiman Long) [1737054] - [documentation] doc: rcu: Encourage use of rcu_barrier in checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Remove obsolete checklist item about synchronize_rcu usage (Waiman Long) [1737054] - [documentation] doc: rcu: Remove obsolete suggestion from checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Add more rationale for using rcu_read_lock_sched in checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Update core and full API in whatisRCU (Waiman Long) [1737054] - [documentation] doc: Document rcutorture forward-progress test kernel parameters (Waiman Long) [1737054] - [documentation] doc: rcu: Update description of gp_seq fields in rcu_data (Waiman Long) [1737054] - [documentation] doc: rcu: Better clarify the rcu_segcblist ->len field (Waiman Long) [1737054] - [documentation] doc: rcu: Update Data-Structures for RCU flavor consolidation (Waiman Long) [1737054] - [documentation] doc: Remove rcu_dynticks from Data-Structures (Waiman Long) [1737054] - [documentation] doc: Update information about resched_cpu (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/update.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/tree_plugin.h (Waiman Long) [1737054] - [kernel] rcu: Stop expedited grace periods from relying on stop-machine (Waiman Long) [1737054] - [kernel] srcu: Prevent __call_srcu() counter wrap with read-side critical section (Waiman Long) [1737054] - [include] srcu: Fix kernel-doc missing notation (Waiman Long) [1737054] - [x86] x86/PCI: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [tools] rcutorture: Make use of nolibc when available (Waiman Long) [1737054] - [tools] rcutorture: Import a copy of nolibc (Waiman Long) [1737054] - [tools] rcutorture: Check initrd/init instead of initrd only (Waiman Long) [1737054] - [tools] rcutorture: Always strip using the cross-compiler (Waiman Long) [1737054] - [tools] rcutorture: Add cross-compile capability to initrd.sh (Waiman Long) [1737054] - [tools] rcutorture: Make initrd/init execute in userspace (Waiman Long) [1737054] - [tools] rcutorture: Add initrd support for systems lacking dracut (Waiman Long) [1737054] - [tools] rcutorture: Automatically create initrd directory (Waiman Long) [1737054] - [documentation] doc: Remove rcu_preempt_state reference in stallwarn (Waiman Long) [1737054] - [documentation] doc: Clarify RCU data-structure comment about rcu_tree fanout (Waiman Long) [1737054] - [documentation] doc: Set down forward-progress requirements (Waiman Long) [1737054] - [powerpc] powerpc: Convert hugepd_free() to use call_rcu() (Waiman Long) [1737054] - [s390] s390/mm: Convert tlb_table_flush() to use call_rcu() (Waiman Long) [1737054] - [kernel] sparc/oprofile: Convert timer_stop() to use synchronize_rcu() (Waiman Long) [1737054] - [kernel] sched/membarrier: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] rcu: Consolidate the RCU update functions invoked by sync.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate synchronize_rcu_mult() (Waiman Long) [1737054] - [kernel] rcu: Fix rcu_{node, data} comments about gp_seq_needed (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_state externs (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/tree.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for sync.c (Waiman Long) [1737054] - [include] srcu: Add notrace variant of srcu_dereference (Waiman Long) [1737054] - [documentation] PM/EM: Document the Energy Model framework (Phil Auld) [1718927] - [kernel] sched/doc: Document Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] sched/fair: Remove unneeded prototype of capacity_of() (Phil Auld) [1718927] - [kernel] sched/fair: Skip LLC NOHZ logic for asymmetric systems (Phil Auld) [1718927] - [kernel] sched/fair: Tune down misfit NOHZ kicks (Phil Auld) [1718927] - [kernel] sched/fair: Comment some nohz_balancer_kick() kick conditions (Phil Auld) [1718927] - [kernel] sched/fair: Prune, fix and simplify the nohz_balancer_kick() comment block (Phil Auld) [1718927] - [kernel] sched/fair: Explain LLC nohz kick condition (Phil Auld) [1718927] - [kernel] sched/fair: Simplify nohz_balancer_kick() (Phil Auld) [1718927] - [kernel] sched/topology: Fix percpu data types in struct sd_data & struct s_data (Phil Auld) [1718927] - [kernel] sched/fair: Simplify post_init_entity_util_avg() by calling it with a task_struct pointer argument (Phil Auld) [1718927] - [kernel] sched/fair: Fix util_avg of new tasks for asymmetric systems (Phil Auld) [1718927] - [kernel] sched/fair: Optimize update_blocked_averages() (Phil Auld) [1718927] - [kernel] sched/topology: Introduce a sysctl for Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] Revert "sched/core: Take the hotplug lock in sched_init_smp()" (Phil Auld) [1718927] - [kernel] cpu/hotplug: Mute hotplug lockdep during init (Phil Auld) [1718927] - [kernel] sched/fair: Select an energy-efficient CPU on task wake-up (Phil Auld) [1718927] - [kernel] sched/fair: Introduce an energy estimation helper function (Phil Auld) [1718927] - [kernel] sched/fair: Add over-utilization/tipping point indicator (Phil Auld) [1718927] - [kernel] sched/fair: Clean-up update_sg_lb_stats parameters (Phil Auld) [1718927] - [kernel] sched/toplogy: Introduce the 'sched_energy_present' static key (Phil Auld) [1718927] - [kernel] sched/topology: Make Energy Aware Scheduling depend on schedutil (Phil Auld) [1718927] - [kernel] sched/topology: Disable EAS on inappropriate platforms (Phil Auld) [1718927] - [kernel] sched/topology: Add lowest CPU asymmetry sched_domain level pointer (Phil Auld) [1718927] - [kernel] sched/topology: Reference the Energy Model of CPUs when available (Phil Auld) [1718927] - [kernel] PM: Introduce an Energy Model management framework (Phil Auld) [1718927] - [kernel] sched/cpufreq: Prepare schedutil for Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] sched/topology: Relocate arch_scale_cpu_capacity() to the internal header (Phil Auld) [1718927] - [kernel] sched/core: Take the hotplug lock in sched_init_smp() (Phil Auld) [1718927] - [kernel] sched/core: Disable SD_PREFER_SIBLING on asymmetric CPU capacity domains (Phil Auld) [1718927] - [kernel] sched/fair: Don't move tasks to lower capacity CPUs unless necessary (Phil Auld) [1718927] - [kernel] sched/fair: Set rq->rd->overload when misfit (Phil Auld) [1718927] - [kernel] sched/fair: Wrap rq->rd->overload accesses with READ/WRITE_ONCE() (Phil Auld) [1718927] - [kernel] sched/core: Change root_domain->overload type to int (Phil Auld) [1718927] - [kernel] sched/fair: Change 'prefer_sibling' type to bool (Phil Auld) [1718927] - [kernel] sched/fair: Kick nohz balance if rq->misfit_task_load (Phil Auld) [1718927] - [kernel] sched/fair: Consider misfit tasks when load-balancing (Phil Auld) [1718927] - [kernel] sched/fair: Add sched_group per-CPU max capacity (Phil Auld) [1718927] - [kernel] sched/fair: Add 'group_misfit_task' load-balance type (Phil Auld) [1718927] - [kernel] sched/topology: Add static_key for asymmetric CPU capacity optimizations (Phil Auld) [1718927] - [kernel] sched/core, workqueues: Distangle worker accounting from rq lock (Phil Auld) [1737067] - [kernel] workqueue: Use normal rcu (Phil Auld) [1737067] - [kernel] tick/broadcast: Fix warning about undefined tick_broadcast_oneshot_offline() (Phil Auld) [1737067] - [kernel] timer/trace: Improve timer tracing (Phil Auld) [1737067] - [include] timer/trace: Replace deprecated vsprintf pointer extension pf by ps (Phil Auld) [1737067] - [kernel] timer: Move trace point to get proper index (Phil Auld) [1737067] - [kernel] tick/sched: Update tick_sched struct documentation (Phil Auld) [1737067] - [kernel] tick: Remove outgoing CPU from broadcast masks (Phil Auld) [1737067] - [kernel] timekeeping: Consistently use unsigned int for seqcount snapshot (Phil Auld) [1737067] - [kernel] sched/fair: Robustify CFS-bandwidth timer locking (Phil Auld) [1737067] - [kernel] tick/sched : Remove redundant cpu_online() check (Phil Auld) [1737067] - [misc] sched/swait: Rename to exclusive (Phil Auld) [1737067] - [kernel] sched/swait: Switch to full exclusive mode (Phil Auld) [1737067] - [kernel] sched/swait: Remove __prepare_to_swait (Phil Auld) [1737067] - [netdrv] net: ena: don't wake up tx queue when down (John Linville) [1722628] - [netdrv] Revert "net: ena: ethtool: add extra properties retrieval via get_priv_flags" (John Linville) [1722628] - [netdrv] net: ena: Fix bug where ring allocation backoff stopped too late (John Linville) [1722628] - [netdrv] net: ena: update driver version from 2.0.3 to 2.1.0 (John Linville) [1722628] - [netdrv] net: ena: remove inline keyword from functions in *.c (John Linville) [1722628] - [netdrv] net: ena: add ethtool function for changing io queue sizes (John Linville) [1722628] - [netdrv] net: ena: allow queue allocation backoff when low on memory (John Linville) [1722628] - [netdrv] net: ena: make ethtool show correct current and max queue sizes (John Linville) [1722628] - [netdrv] net: ena: enable negotiating larger Rx ring size (John Linville) [1722628] - [netdrv] net: ena: add MAX_QUEUES_EXT get feature admin command (John Linville) [1722628] - [netdrv] net: ena: use dev_info_once instead of static variable (John Linville) [1722628] - [netdrv] net: ena: add good checksum counter (John Linville) [1722628] - [netdrv] net: ena: optimise calculations for CQ doorbell (John Linville) [1722628] - [netdrv] net: ena: add support for changing max_header_size in LLQ mode (John Linville) [1722628] - [netdrv] net: ena: allow automatic fallback to polling mode (John Linville) [1722628] - [netdrv] net: ena: add newline at the end of pr_err prints (John Linville) [1722628] - [netdrv] net: ena: arrange ena_probe() function variables in reverse christmas tree (John Linville) [1722628] - [netdrv] net: ena: replace free_tx/rx_ids union with single free_ids field in ena_ring (John Linville) [1722628] - [netdrv] net: ena: ethtool: add extra properties retrieval via get_priv_flags (John Linville) [1722628] - [netdrv] net: ena: add handling of llq max tx burst size (John Linville) [1722628] - [netdrv] net: ena: gcc 8: fix compilation warning (John Linville) [1722628] - [netdrv] net: ena: fix ena_com_fill_hash_function() implementation (John Linville) [1722628] - [netdrv] net: ena: improve latency by disabling adaptive interrupt moderation by default (John Linville) [1722628] - [netdrv] net: ena: fix return value of ena_com_config_llq_info() (John Linville) [1722628] - [netdrv] net: ena: fix incorrect test of supported hash function (John Linville) [1722628] - [netdrv] net: ena: fix: Free napi resources when ena_up() fails (John Linville) [1722628] - [netdrv] net: ena: fix: set freed objects to NULL to avoid failing future allocations (John Linville) [1722628] - [netdrv] net: ena: fix swapped parameters when calling ena_com_indirect_table_fill_entry (John Linville) [1722628] - [arm64] arm64: kexec: Add comment to explain use of __flush_icache_range() (Mark Salter) [1757450] - [arm64] arm64: kexec: machine_kexec should call __flush_icache_range (Mark Salter) [1757450] - [arm64] arm64: Do not issue IPIs for user executable ptes (Mark Salter) [1757450] - [arm64] arm64: hibernate: Avoid sending cross-calling with interrupts disabled (Mark Salter) [1757450] - [arm64] arm64: mm: Export __flush_icache_range() to modules (Mark Salter) [1757450] - [arm64] arm64: IPI each CPU after invalidating the I-cache for kernel mappings (Mark Salter) [1757450] - [s390] s390/dasd: Handle out-of-space constraint (Philipp Rudo) [1525398] - [s390] s390/dasd: Use ALIGN_DOWN macro (Philipp Rudo) [1525398] - [s390] s390/dasd: Make dasd_setup_queue() a discipline function (Philipp Rudo) [1525398] - [s390] s390/dasd: Add new ioctl to release space (Philipp Rudo) [1525398] - [s390] s390/dasd: Add dasd_sleep_on_queue_interruptible() (Philipp Rudo) [1525398] - [s390] s390/dasd: Add missing intensity definition (Philipp Rudo) [1525398] - [s390] s390/dasd: Fix whitespace (Philipp Rudo) [1525398] - [s390] s390/dasd: Add dynamic formatting support for ESE volumes (Philipp Rudo) [1525398] - [s390] s390/dasd: Recognise data for ESE volumes (Philipp Rudo) [1525398] - [s390] s390/dasd: Put sub-order definitions in a separate section (Philipp Rudo) [1525398] - [s390] s390/dasd: Make layout analysis ESE compatible (Philipp Rudo) [1525398] - [s390] s390/dasd: Remove old defines and function (Philipp Rudo) [1525398] - [s390] s390/dasd: Remove unused structs and function prototypes (Philipp Rudo) [1525398] - [tools] perf report: Dump s390 counter set data to file (Philipp Rudo) [1731036] - [tools] perf report: Display arch specific diagnostic counter sets, starting with s390 (Philipp Rudo) [1731036] - [tools] perf report: Add s390 diagnosic sampling descriptor size (Philipp Rudo) [1731036] - [s390] s390/cpum_cf_diag: Add support for CPU-MF SVN 6 (Philipp Rudo) [1731036] - [s390] s390/cpumf: Fix warning from check_processor_id (Philipp Rudo) [1731036] - [s390] s390/cpum_cf_diag: Add support for s390 counter facility diagnostic trace (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Handle EBUSY return code from CPU counter facility reservation (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: add ctr_stcctm() function (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: move common functions into a separate file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: introduce kernel_cpumcf_avail() function (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: replace stcctm5() with the stcctm() function (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: add store cpu counter multiple instruction support (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Add minimal in-kernel interface for counter measurements (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: introduce kernel_cpumcf_alert() to obtain measurement alerts (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: move struct cpu_cf_events and per-CPU variable to header file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: rename per-CPU counter facility structure and variables (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: prepare for in-kernel counter measurements (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: move counter set controls to a new header file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Reject request for sampling in event initialization (Philipp Rudo) [1731036] - [s390] s390/perf: Change CPUM_CF return code in event init function (Philipp Rudo) [1731036] - [acpi] ACPI / property: Add two new Thunderbolt property GUIDs to the list (Jarod Wilson) [1483494] - [acpi] ACPI: property: restore _DSD data subnodes GUID comment (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for Intel Ice Lake (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Expose active parts of NVM even if upgrade is not supported (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Hide switch attributes that are not set (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not fail adding switch if some port is not implemented (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Use 32-bit writes when writing ring producer/consumer (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Move NVM upgrade support flag to struct icm (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Correct path indices for PCIe tunnel (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Show key using *pE not *pEp (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Switch to use device_property_count_uXX() (Jarod Wilson) [1483494] - [include] device property: Add helpers to count items in an array (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Implement CIO reset correctly for Titan Ridge (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make sure device runtime resume completes before taking domain lock (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add SPDX license identifier for more missed files (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make priority unsigned in struct tb_path (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: shash - remove shash_desc::flags (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Start firmware on Titan Ridge Apple systems (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Reword output of tb_dump_hop() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make rest of the logging to happen at debug level (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make __TB_[SW|PORT]_PRINT take const parameters (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for XDomain connections (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make tb_switch_alloc() return ERR_PTR() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for DMA tunnels (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add XDomain UUID exchange support (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Run tb_xdp_handle_request() in system workqueue (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not tear down tunnels when driver is unloaded (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for Display Port tunnels (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Rework NFC credits handling (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Generalize port finding routines to support all port types (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Scan only valid NULL adapter ports in hotplug (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for full PCIe daisy chains (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Discover preboot PCIe paths the boot firmware established (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Deactivate all paths before restarting them (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Extend tunnel creation to more than 2 adjacent switches (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add helper function to iterate from one port to another (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Assign remote for both ports in case of dual link (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add functions for allocating and releasing HopIDs (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Generalize tunnel creation functionality (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Rename tunnel_pci to tunnel (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Cache adapter specific capability offset into struct port (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Properly disable path (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Set sleep bit when suspending switch (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Configure lanes when switch is initialized (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Move LC specific functionality into a separate file (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add dummy read after port capability list walk on Light Ridge (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Enable TMU access when accessing port space on legacy devices (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not allocate switch if depth is greater than 6 (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Take domain lock in switch sysfs attribute callbacks (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Block reads and writes if switch is unplugged (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Drop duplicated get_switch_at_route() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Remove unused work field in struct tb_switch (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check the return value of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: property: Fix a missing check of kzalloc (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: xdomain: Fix to check return value of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check return value of ida_simple_get (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check for kmemdup failure (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix a missing check of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: property: Fix a NULL pointer dereference (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Prevent root port runtime suspend during NVM upgrade (Jarod Wilson) [1483494] - [netdrv] net/ibmvnic: prevent more than one thread from running in reset (Steve Best) [1756943] - [netdrv] net/ibmvnic: unlock rtnl_lock in reset so linkwatch_event can run (Steve Best) [1756943] - [netdrv] sfc: don't score irq moderation points for GRO (Jarod Wilson) [1736303] - [netdrv] sfc: Use dev_get_drvdata where possible (Jarod Wilson) [1736303] - [netdrv] sfc: Remove 'PCIE error reporting unavailable' (Jarod Wilson) [1736303] - [netdrv] sfc: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jarod Wilson) [1736303] - [netdrv] sfc: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1736303] - [netdrv] bonding: no need to print a message if debugfs_create_dir() fails (Jarod Wilson) [1756517] - [netdrv] bonding: Add vlan tx offload to hw_enc_features (Jarod Wilson) [1756517] - [netdrv] bonding: fix value exported by Netlink for peer_notif_delay (Jarod Wilson) [1756517] - [netdrv] bonding: add an option to specify a delay between peer notifications (Jarod Wilson) [1756517] - [netdrv] bonding: validate ip header before check IPPROTO_IGMP (Jarod Wilson) [1756517] - [netdrv] bonding/main: fix NULL dereference in bond_select_active_slave() (Jarod Wilson) [1756517] - [netdrv] bonding: Always enable vlan tx offload (Jarod Wilson) [1756517] - [netdrv] bonding/options: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/alb: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/802.3ad: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/main: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding: add slave_foo printk macros (Jarod Wilson) [1756517] - [netdrv] bonding: fix error messages in bond_do_fail_over_mac (Jarod Wilson) [1756517] - [netdrv] bonding: improve event debug usability (Jarod Wilson) [1756517] - [netdrv] net: bonding: Inherit MPLS features from slave devices (Jarod Wilson) [1756517] - [netdrv] bonding: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jarod Wilson) [1756517] - [netdrv] bonding: Replace GPLv2 boilerplate/reference with SPDX - rule 90 (Jarod Wilson) [1756517] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 5 (Jarod Wilson) [1756517] - [netdrv] bonding: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1756517] - [powerpc] powerpc/fadump: support holes in kernel boot memory area (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: remove RMA_START and RMA_END macros (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: update documentation about option to release opalcore (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: consider f/w load area (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: provide an option to invalidate /sys/firmware/opal/core file (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: enable CONFIG_OPAL_CORE for FADUMP (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: export /sys/firmware/opal/core for analysing opal crashes (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: update documentation about CONFIG_PRESERVE_FA_DUMP (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add support to preserve crash data on FADUMP disabled kernel (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: improve how crashed kernel's memory is reserved (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: consider reserved ranges while releasing memory (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: make crash memory ranges array allocation generic (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: process architected register state data provided by firmware (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: make use of memblock's bottom up allocation mode (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Update documentation about OPAL platform support (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: handle invalidation of crashdump and re-registraion (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Warn before processing partial crashdump (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: process the crashdump by exporting it as /proc/vmcore (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: support copying multiple kernel boot memory regions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: define OPAL register/un-register callback functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: reset metadata address during clean up (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: register kernel metadata address with opal (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: improve fadump_reserve_mem() (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add fadump support on powernv (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opal: add MPIPL interface definitions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/powernv: Make possible for user to force a full ipl cec reboot (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: use FADump instead of fadump for how it is pronounced (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] pseries/fadump: move out platform specific support from generic code (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: release all the memory above boot memory size (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add source info while displaying region contents (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] pseries/fadump: define RTAS register/un-register callback functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: introduce callbacks for platform specific operations (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: move rtas specific definitions to platform code (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: define an empty fadump_cleanup() (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: use helper functions to reserve/release cpu notes buffer (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Improve fadump documentation (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: declare helper functions in internal header file (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add helper functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: move internal macros/definitions to a new header (Desnes Augusto Nunes do Rosario) [1524687] - [watchdog] watchdog: iTCO: Add support for Cannon Lake PCH iTCO (Alexander Beregalov) [1724532] - [i2c] i2c: i801: Use iTCO version 6 in Cannon Lake PCH and beyond (Alexander Beregalov) [1724532] - [i2c] i2c: i801: Allow ACPI AML access I/O ports not reserved for SMBus (Alexander Beregalov) [1724532] - [block] loop: set PF_MEMALLOC_NOIO for the worker thread (Ming Lei) [1741392] - [fs] bdev: Fixup error handling in blkdev_get() (Ming Lei) [1741392] - [block] loop: Fix mount(2) failure due to race with LOOP_SET_FD (Ming Lei) [1741392] - [block] block, bfq: handle NULL return value by bfq_init_rq() (Ming Lei) [1741392] - [block] block, bfq: move update of waker and woken list to queue freeing (Ming Lei) [1741392] - [block] block, bfq: reset last_completed_rq_bfqq if the pointed queue is freed (Ming Lei) [1741392] - [block] block: aoe: Fix kernel crash due to atomic sleep when exiting (Ming Lei) [1741392] - [block] rq-qos: use a mb for got_token (Ming Lei) [1741392] - [block] rq-qos: set ourself TASK_UNINTERRUPTIBLE after we schedule (Ming Lei) [1741392] - [block] rq-qos: don't reset has_sleepers on spurious wakeups (Ming Lei) [1741392] - [block] rq-qos: fix missed wake-ups in rq_qos_throttle (Ming Lei) [1741392] - [include] wait: add wq_has_single_sleeper helper (Ming Lei) [1741392] - [block] block, bfq: check also in-flight I/O in dispatch plugging (Ming Lei) [1741392] - [block] block: fix sysfs module parameters directory path in comment (Ming Lei) [1741392] - [block] block: Allow mapping of vmalloc-ed buffers (Ming Lei) [1741392] - [block] block/bio-integrity: fix a memory leak bug (Ming Lei) [1741392] - [block] block: Disable write plugging for zoned block devices (Ming Lei) [1741392] - [block] blk-throttle: fix zero wait time for iops throttled group (Ming Lei) [1741392] - [block] block: Fix potential overflow in blk_report_zones() (Ming Lei) [1741392] - [block] blk-cgroup: turn on psi memstall stuff (Ming Lei) [1741392] - [block] block: init flush rq ref count to 1 (Ming Lei) [1741392] - [lib] sbitmap: Replace cmpxchg with xchg (Ming Lei) [1741392] - [block] block: Remove unused code (Ming Lei) [1741392] - [block] block, bfq: Init saved_wr_start_at_switch_to_srt in unlikely case (Ming Lei) [1741392] - [block] block, bfq: re-schedule empty queues if they deserve I/O plugging (Ming Lei) [1741392] - [block] block, bfq: preempt lower-weight or lower-priority queues (Ming Lei) [1741392] - [block] block, bfq: detect wakers and unconditionally inject their I/O (Ming Lei) [1741392] - [block] block, bfq: bring forward seek&think time update (Ming Lei) [1741392] - [block] block, bfq: update base request service times when possible (Ming Lei) [1741392] - [block] block, bfq: fix rq_in_driver check in bfq_update_inject_limit (Ming Lei) [1741392] - [block] block, bfq: reset inject limit when think-time state changes (Ming Lei) [1741392] - [kernel] cgroup: export css_next_descendant_pre for bfq (Ming Lei) [1741392] - [block] block: update print_req_error() (Ming Lei) [1741392] - [block] block: use blk_op_str() in blk-mq-debugfs.c (Ming Lei) [1741392] - [block] block: add centralize REQ_OP_XXX to string helper (Ming Lei) [1741392] - [block] block: improve print_req_error (Ming Lei) [1741392] - [block] block: rename CONFIG_DEBUG_BLK_CGROUP to CONFIG_BFQ_CGROUP_DEBUG (Ming Lei) [1741392] - [block] bfq-iosched: move bfq_stat_recursive_sum into the only caller (Ming Lei) [1741392] - [block] blk-cgroup: move struct blkg_stat to bfq (Ming Lei) [1741392] - [block] blk-cgroup: introduce a new struct blkg_rwstat_sample (Ming Lei) [1741392] - [block] blk-cgroup: pass blkg_rwstat structures by reference (Ming Lei) [1741392] - [block] blk-cgroup: factor out a helper to read rwstat counter (Ming Lei) [1741392] - [block] block: drbd: no need to check return value of debugfs_create functions (Ming Lei) [1741392] - [block] blk-core: Remove blk_end_request*() declarations (Ming Lei) [1741392] - [block] block: code cleanup queue_poll_stat_show() (Ming Lei) [1741392] - [block] block: use right format specifier for op (Ming Lei) [1741392] - [block] block: get rid of redundant else (Ming Lei) [1741392] - [block] block: use req_op() to maintain consistency (Ming Lei) [1741392] - [fs] blkcg, writeback: dead memcgs shouldn't contribute to writeback ownership arbitration (Ming Lei) [1741392] - [block] blkcg: blkcg_activate_policy() should initialize ancestors first (Ming Lei) [1741392] - [block] blkcg: perpcu_ref init/exit should be done from blkg_alloc/free() (Ming Lei) [1741392] - [block] blkcg: update blkcg_print_stat() to handle larger outputs (Ming Lei) [1741392] - [block] block: bio: Use struct_size() in kmalloc() (Ming Lei) [1741392] - [block] block: genhd: Use struct_size() helper (Ming Lei) [1741392] - [block] block: null_blk: fix race condition for null_del_dev (Ming Lei) [1741392] - [block] blk-mq/debugfs: Fix improper print qualifier (Ming Lei) [1741392] - [block] loop: Don't change loop device under exclusive opener (Ming Lei) [1741392]- [documentation] timekeeping.txt: Correct maxCount of n-bit binary counter (Jaroslav Kysela) [1738610] - [sound] ALSA: clk: Add (devm_)clk_get_optional() functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: uapi: align comments with firmware files (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: rename SOUNDWIRE to ALH (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: add ALH parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: remove SPDX "WITH Linux-syscall-note" from kernel-space headers again (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: fe_compr can be bit field (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: fixup for_each_card_links() macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Define a set of DAPM pre/post-up events (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: use bit field for bus_control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple_card_utils.h: care NULL dai at asoc_simple_debug_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: remove an unused field from struct hda_codec (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Avoid polluting led_* namespace (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add Hiby device family to quirks for native DSD support (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Update DSD support quirks for Oppo and Rotel (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: DSD auto-detection for Playback Designs (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: remove some dead code (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix possible NULL dereference at create_yamaha_midi_quirk() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Clean up check_input_term() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Remove superfluous bLength checks (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Unify the release of usb_mixer_elem_info objects (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Simplify parse_audio_unit() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: More validations of descriptor units (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Check mixer unit bitmap yet more strictly (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix memory leak at line6_init_pcm() error path (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add implicit fb quirk for Behringer UFX1604 (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix a stack buffer overflow bug in check_input_term (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix an OOB bug in parse_audio_mixer_unit (Jaroslav Kysela) [1738610] - [sound] ALSA: hiface: fix multiple memory leak bugs (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add Pioneer DDJ-SX3 PCM quirck (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Skip bSynchAddress endpoint check if it is invalid (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix PCM device order (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Unify audioformat release code (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix gpf in snd_usb_pipe_sanity_check (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Scarlett Gen 2 mixer interface (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: sizeof (byte) is always 1, use that fact. (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix a typo (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix wrong altsetting for LINE6_PODHD500_1 (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix Line6 Helix audio format rates (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix parse of UAC2 Extension Units (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix write on zero-sized buffer (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix sign unintended sign extension on left shifts (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Sanity checks for each pipe and EP types (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Enable .product_name override for Emagic, Unitor 8. (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Use container_of() (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Drop superfluous timer helper function (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: variax: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: podhd: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: pod: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Assure canceling delayed work at disconnection (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 33 (Jaroslav Kysela) [1738610] - [sound] ALSA: sparc: Mark expected switch fall-throughs (Jaroslav Kysela) [1738610] - [sound] ALSA: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: txx9: txx9aclc-generic: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: osk5912: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap3pandora: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: n810: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Fix slot mask settings when using multiple AXRs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Set unused serializers as INACTIVE (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Fix SDMA users not providing channel names (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Support for auxclk-fs-ratio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: ams-delta: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: pass volume min/max linear value to FW (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ignore unrecoverable CTX_SAVE IPC errors at suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Add earpiece (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun4i-codec: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: spdifrx: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: dfsdm: add 16 bits audio record support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add cpu_dai_name for DAIs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add min/max step for volume_table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sof: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: clarify operator precedence (Jaroslav Kysela) [1738610] - [sound] ALSA: ASOC: SOF: ipc: prevent logging trace messages (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add new macro hstream_to_sof_hda_stream() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: make sure RUN bit setting to 0 during clear stream status (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: fix a deadlock with bus->reg_lock (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: modify stream interrupt handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: save handle to sdev in sof_intel_hda_stream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove misleading error trace from IRQ thread (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: dont wake dsp up in kcontrol IO (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: compress: Fix memory leak from snd_soc_new_compress (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sh: sh7760-ac97: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: ssiu: tidyup SSI_MODE1/2 settings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: fixup mod ID calculation in rsnd_ctu_probe_ (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: add missing pin sharing with SSI9 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sh: migor: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tobermory: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: speyside: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994pcm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8580: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_spdif: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smartq_wm8987: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_uda134x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec_tlv320aic23: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec_hermes: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: rx1950_uda1380: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: fix a double-free issue for cpu_dai (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: fix an use-after-free issue for codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: lowland: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: littlemill: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: jive_wm8750: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: h1940_uda1380: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: bells: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip-max98090: Remove MICBIAS as supply of input pin IN34 (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: rockchip: rockchip_max98090: Enable MICBIAS for headset keypress detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rk3399_gru_sound: Support 32, 44.1 and 88.2 kHz sample rates (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: pdm: select CONFIG_RATIONAL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: Fix oops with multiple DAI links (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: tosa: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: hx4700: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: kernel: fix typos and some coding style in comments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Add missing Slimbus0 audio route (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: zylonite: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: z2: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: ttc-dkb: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: spitz: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: pxa2xx-ac97.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: poodle: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: palm27x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: mioa701_wm9713: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: magician: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: imote2: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: em-x270: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e800_wm9712: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e750_wm9705: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e740_wm9705: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: corgi: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: brownstone: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-toddr: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-toddr: expose all 8 inputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: tdmout: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdmout: right_j is not supported (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: tdmin: expose all 16 inputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdmin: right_j is not supported (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm: fix sample clock inversion (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm: consistently use SND_SOC_DAIFMT defines (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: require regmap mmio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: free reset on device removal (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: add reset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-spdifout: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-spdifin: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-pdm: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-frddr: expose all 8 outputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-frddr: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-fifo: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5676: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5514: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt6797-mt6351: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701-wm8960: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701-cs42448: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Add missing newline at end of file (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: jz4740: qi_lb60: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 239 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Fix incorrect capture position reporting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Fix NULL ptr dereference when unloading clk dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Don't return failure on machine driver reload (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Do not disable FW notifications (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof_rt5682: use GFP_KERNEL instead of GFP_ATOMIC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: correct naming for dmic16k (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof_rt5682: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for Irbis NB41 netbook (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: add BE dailink for dmic16k (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add MCLK support for BYT platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_rt286: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_nau88l25_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_common: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5660: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: kbl_da7219_max98927: add dai_trigger function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: haswell: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_nocodec: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_da7213: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_cx2072x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: byt-rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: byt-max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt_rt298: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: broadwell: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bdw-rt5677: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix use-after-free in graph_for_each_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: add missing const at graph_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: phycore-ac97: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card-utils: care no Platform for DPCM (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix use-after-free in graph_dai_link_of_dpcm() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix an use-after-free in graph_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: wm1133-ev1: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: pcm030-audio-fabric: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: mx27vis-aic32x4: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-mc13783: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: mpc8610_hpcd/p1022_ds/p1022_rdk: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: eukrea-tlv320: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: efika-audio-fabric: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm_adsp: Allow bus error handler to be called directly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm_adsp: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: remove multiple defines. (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: add irqflag IRQF_ONESHOT flag (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: Fix misuse of GENMASK macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic31xx: suppress error message for EPROBE_DEFER (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tas571x: Fix -Wunused-const-variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix charge pump source assignment (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix of unmute outputs on probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: add ADC mute control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Improve VAG power and mute control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix definition of VAG Ramp Control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5682: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677-spi: Rename driver to differentiate from main codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5665: remove redundant assignment to variable idx (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5514-spi: don't use snd_soc_lookup_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: simplify the EFUSE read function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Remove executable attribute from source files (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: add silence detection and manual PDB control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Convert headers to SPDX (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: fix DC calibration offset not applying (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Relocate my e-mail to .com domain zone (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nau8825: fix fake interruption when booting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nau8822: support master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: soc: codecs: mt6358: change return type of mt6358_codec_init_reg (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: msm8916-wcd-digital: Add sidetone support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98383: fix i2c probe failure (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 496 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hdmi: report codec link up/down status to bus (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec: hdac_hdmi: fix pin connections at cvt enable (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 463 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: mark PM function as __maybe_unused (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: use mdelay for sdmode-delay (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: avoid speaker pop when playback startup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Fix MFREQ selection issue for async mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cros_ec_codec: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4118: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: spi: AD ASoC: declare missing of table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ab8500: add range to usleep_range (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: snappercl15: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: simone: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: ep93xx-i2s.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: edb93xx: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: bcm: cygnus-pcm: Unneeded variable: "ret". (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: psc-i2s.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: db1200: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: db1000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9g20_wm8731: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: mikroe-proto: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-wm8904: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-pdmic: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-pcm-dma.c: use devm_snd_dmaengine_pcm_register() (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-classd: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp-rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp-da7219-max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 200 (Jaroslav Kysela) [1738610] - [sound] ALSA: ps3: Remove Unneeded variable: "ret" (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 277 (Jaroslav Kysela) [1738610] - [sound] ALSA: rme9652: Unneeded variable: "result". (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 274 (Jaroslav Kysela) [1738610] - [sound] ALSA: hdspm: Fix single speed ADAT capture and playback with RME HDSPe AIO (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 264 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 404 (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es - Remove set but not used variables 'orun_mask, urun_mask' (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es: Remove unneeded variable err (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es - add support for LX6464ESe pci express variant (Jaroslav Kysela) [1738610] - [sound] ALSA: ice1712: Check correct return value to snd_i2c_sendbytes (EWS/DMX 6Fire) (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 29 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 46 (Jaroslav Kysela) [1738610] - [sound] ALSA: emu10k1: Remove unneeded variable "change" (Jaroslav Kysela) [1738610] - [sound] ALSA: echoaudio: Replace kmalloc + memcpy with kmemdup (Jaroslav Kysela) [1738610] - [sound] ALSA: pci: echoaudio: remove variable which is a constant (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 364 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 (Jaroslav Kysela) [1738610] - [sound] ALSA: cs4281: remove redundant assignment to variable val and remove a goto (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 116 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 456 (Jaroslav Kysela) [1738610] - [sound] ALSA: au88x0: Remove unneeded variable: "changed" (Jaroslav Kysela) [1738610] - [sound] ALSA: asihpi: Remove unneeded variable change (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 88 (Jaroslav Kysela) [1738610] - [sound] ALSA: ac97: remove unused variable 'snd_ac97_controls_master_mono' (Jaroslav Kysela) [1738610] - [sound] ALSA: dmasound_atari: Mark expected switch fall-through (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 176 (Jaroslav Kysela) [1738610] - [sound] ALSA: i2c: ak4xxx-adda: Fix a possible null pointer dereference in build_adc_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: isa/wavefront: remove redundant assignment to pointer bptr (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 370 (Jaroslav Kysela) [1738610] - [sound] ALSA: sb: remove redundant assignment to variable result (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: hda: Add codec on bus address table lately" (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Unexport a few more stuff (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Drop export of snd_hdac_bus_add/remove_device() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add codec on bus address table lately (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: readl/writel need linux/io.h (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: intel-nhlt: handle NHLT VENDOR_DEFINED DMIC geometry (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: move parts of NHLT code to new module (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix 1-minute detection delay when i915 module is not available (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix a headphone detection issue when using SOF (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: fix: lock reg_lock before calling snd_hdac_bus_update_rirb (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: add polling mode in snd_hdac_bus_get_response (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sdm845: remove unneeded semicolon (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dmaengine: Replace strncpy() with strscpy_pad() for pcm->name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: remove redundant use of ret variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: Add an op to set callback function for plug event (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_unbind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_unbind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_bind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_link_dais() next to soc_remove_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_probe_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add new soc_link_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_dai() next to soc_remove_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_remove_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_remove_link_components() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_probe_link_components() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1305: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: simple-card-utils: set 0Hz to sysclk when shutdown (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: ignore 0Hz sysclk (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: make two arrays static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Use regmap_multi_reg_write() when initializing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Reset used registers at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Group register initialization at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Fix memory corruption on BE 64b systems (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: support fixed and variable both clock rates (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix redundant codes of clock (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: add DT-bindings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dmaengine: Make the pcm->name equal to pcm->id if the name is not set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix COMPILE_TEST error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Include link-name in error messages (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Fix NULL pointer in of parser (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Mark links as nonatomic (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add comment to jack at soc_remove_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf-audio: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ep93xx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: add clock control of MCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph: indicate rebind issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: indicate rebind issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: fix an use-after-free in simple_for_each_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: fix an use-after-free in simple_dai_link_of_dpcm() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for cpu (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_link_components() position (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add snd_soc_dapm_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: dapm related setup at one place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_component() position (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_rtd_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix space issues (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove forward declaration of headset_init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move headset jack to card-specific storage (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move private structure (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF/Intel: fix selection of SND_INTEL_NHTL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: broadwell: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: haswell: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Haswell: Adjust machine device private context (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: Do not fail if the dai_set_sysclk returns -ENOTSUPP (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: edma-pcm: Fix for legacy dma_slave_map based channel lookup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-i2s: Add S32_LE as support format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-i2s: Move the XSYNCERR workaround to .prepare callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Baytrail: Fix implicit fallthrough warning (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_ssi: Fix clock control issue in master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: Fix primary interpolator max rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix tdm out data is valid on rising edge (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: tdm hw support tdm out and 8ch i2s out (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel_ssc_dai: implement left-justified data mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel_ssc_dai: rework DAI format configuration (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: enable SOC_SSC_PDC and SOC_SSC_DMA in Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Force suspend/resume during system suspend/resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix tdm out data align issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: add mutex protection to set_fmt/set_tdm_slot (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix inverted L/R of headphone mixer volume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix headphone mixer volume table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Release topology when we are done with it (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove memory available check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove MCPS available check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove static table index when parsing topology (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Print module type instead of id (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: NHLT: Fix debug print format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Expose snd_soc_dapm_new_control_unlocked properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: fix memory leaks on sm, se and sbe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: Consolidate and fix asoc_tplg_dapm_widget_*_create flow (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: Consolidate how dtexts and dvalues are freed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: fix modern dai link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use correct function to access iomem space (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix an is IS_ERR() vs NULL check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i: Revert A83t description (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix return value check in imx8_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove unused DAPM-related variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: Revert initial A83t support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmix: register the card on a proper dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Make some functions static (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: rename soc_post_component_init() to soc_rtd_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: initialize list at one place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: fix get control data return type and arguments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: initialize component list (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: use for_each_component_dais() at remove_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_cleanup_card_resources() become void (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add NOTE to snd_soc_rtdcom_lookup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use device_register() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: switch tdm pins gpio function when playback on or off (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701: Fix -Wunused-const-variable warnings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8988: fix typo in wm8988_right_line_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx: Add i.MX8 HW support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add OF DSP device support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: AMD: Fix Kconfig warning without GPIOLIB (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add support for DSP formats (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Replace call to params_width by local variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use the actual format width instead of an hardcoded one (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use the physical / slot width for the clocks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add support for TDM slots (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove unneeded dai_link check from snd_soc_remove_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: merge snd_soc_initialize_card_lists() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for imx8qm (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Fix simultaneous capture and playback in master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Wait for RX/TX RDY only if controller is running (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Fix unprepare of GCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Support more channels (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Pass the channels number as an argument (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Remove duplicated quirks structure (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the LRCK period on A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix MCLK Enable bit offset on A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix WSS and SR fields for the A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the LRCK polarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix LRCK and BCLK polarity offsets on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: RX and TX counter registers are swapped (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the MCLK and BCLK dividers on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use module clock as BCLK parent on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Move the format configuration to a callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Move the channel configuration to a callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Rework MCLK divider calculation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Replace call to params_channels by local variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Switch to devm for PCM register (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Register regmap and PCM before our component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8904: implement input mode select as a mux (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8904: fix typo in DAPM kcontrol name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add all Chromebooks that need pmc_plt_clk_0 quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: Fix double reset assersion when transitioning to suspend state (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: initial support for Intel ALH DAI type (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: Add dummy support for i.MX8 DAIs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmux: Add driver suspend and resume to support MEGA Fast (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for EHL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for Tiger Lake (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Add Cometlake machine driver support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Move pcm_mutex up to card level from snd_soc_pcm_runtime (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: 88pm860x: remove unused variables 'pcm_switch_controls' and 'aif1_mux' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42l56: remove unused variable 'adc_swap_enum' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8328: remove unused variable 'pga_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic31xx: remove unused variable 'cm_m_enum' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic23: remove unused variable 'tlv320aic23_rec_src' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: remove unused variable 'dac_vol_tlv' and 'adc_vol_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98371: remove unused variable 'max98371_noload_gain_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42l73: remove unused variables 'vsp_output_mux' and 'xsp_output_mux' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Print constant literals from format specifier (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt6358: add delay after dmic clock on (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: remove unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: remove unused variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt2701: remove unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: Fix -Wunused-const-variable warning (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8737: Fix copy-paste error in wm8737_snd_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs4349: Use PM ops 'cs4349_runtime_pm' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8328: Fix copy-paste error in es8328_right_line_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: hsw: remove i386 build warning w/ size_t argument (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Fix typos in ti/Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: Set period size to 240 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Allow reconfiguration of tdm_slots and slot_width (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Retain the independence of DAC and ADC side of the codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: make headset codec optional (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max9850: remove unused variable 'max9850_reg' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98926: remove two unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove legacy style of aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun4i-codec: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: speyside: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: support snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hdmi: Offload dapm update at jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: byt: Refactor fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: bdw: Use generic function for fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Remove call to snd_sof_dsp_mailbox_init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ml26124: remove unused variable 'ngth' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt6351: remove unused variable 'mt_lineout_control' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: skl_hda_dsp_common: create HDMI jack kctl (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tscs454: remove unused variable 'PLL_48K_RATE' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: fix module_put() warning in soc_cleanup_component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: dai_link check under soc_dpcm_debugfs_add() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: define soc_dpcm_debugfs_add() for non CONFIG_DEBUG_FS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for card->deferred_resume_work (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove unneeded list_empty() check for snd_soc_try_rebind_card() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: call snd_soc_dapm_debugfs_init() at soc_init_card_debugfs() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_add_card_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_dapm_add_routes() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_add_component_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hda: fix page fault issue by removing race (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Direct MMIO accesses (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for imx7ulp/imx8mq (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: mark regmap as fast_io (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: large_config_get overhaul (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Implement set_bclk_ratio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for SAI new version (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: derive TX FIFO watermark from FIFO depth (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: add of_match data (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Update Tx/Rx channel enable mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add registers definition for multiple datalines (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_dapm_new_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: reuse rtdcom at snd_soc_rtdcom_add() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use for_each_card_links_safe() at snd_soc_find_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: check return value of snd_soc_add_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add comment for for_each_xxx (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: set component->debugfs_root NULL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add a flag for the R0 calibration test (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add R0 temperature and TDM1 ADC2DAT Swap control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: don't call clk_get_rate() under atomic context (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98373: Remove executable bits (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pcm_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pcm_new() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_mmap() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_page() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_copy_user() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_ioctrl() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pointer() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_set_bias_level() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_stream_event() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_seq_notifier() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_of_xlate_dai_name() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_of_xlate_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_remove() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_is_suspended() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_suspend() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_hw_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_hw_params() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_prepare() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_close() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_open() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_get/put() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: add soc-component.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_fill_silence() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_rtdcom_copy_kernel() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_rtdcom_ack() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp3x: use dma address for acp3x dma driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp3x: use dma_ops of parent device for acp3x dma driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: zx-tdm: remove redundant assignment to ts_width on error return path (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: SoC: skylake: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: fill some of the runtime stream parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: remove ephemeral variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: create pcm for codec2codec links as well (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: use common NHLT module (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Merge skl_sst and skl into skl_dev struct (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Limit large_config_get to single frame (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix use of potentially uninitialized variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Update request-reply IPC model (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Common: Fix NULL dereference in tx_wait_done (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix race condition in IPC rx list (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 490 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Read HIPCT extension before clearing DONE bit (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: move NHLT header to common directory (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: psc-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: psc-ac97: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: aio-dma: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: evea: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: inno_rk3036: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: jz4740: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mmp-sspa: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: jz4725b: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: msm8916-wcd: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: sai: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun8i-codec: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun8i-codec-analog: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: xlnx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs4271: Fix a typo in the CS4171_NR_RATIOS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Mark expected switch fall-throughs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: xtfpga-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: spear: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs-saif: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: bcm2835-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_audmix: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmux: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt6797: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt8173: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ep93xx-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra20_das: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: override codec2codec params (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98373: add 88200 and 96000 sampling rate support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Incorrect SR and WSS computation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: fix missing return of error return code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Support for correct symmetric sample bits (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Correct slot_width posed constraint (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: Fix mono capture (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix some acpi vs apci typo in somme comments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Fix clk PDIR handling for i2s master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: deal with params when necessary (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: name link using stream direction (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: run callbacks in order (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: Add uda1334 codec driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Add RT1308 amplifier driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Makefile - fix the top-level kernel module names (add snd- prefix) (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Improve serializer handling in multi AXR setups (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for RIGHT_J format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Cleanup skl_module_cfg declaration (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Make MCPS and CPS params obsolete (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Combine snd_soc_skl_ipc and snd_soc_skl (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Reset pipeline before its deletion (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Strip T and L from TLV IPCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Properly cleanup on component removal (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Initialize lists before access so they are safe to use (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Add function to cleanup debugfs interface (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use recommended SDxFMT programming sequence (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Switch to modern UUID API (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-pcm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8955: Fix a typo in 'wm8995_pll_factors()' function name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Fail card instantiation if DAI format setup fails (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: move snd_soc_dai_stream_valid() to soc-dai.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use existing snd_soc_dai_digital_mute() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compress_new() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_remove() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_suspend() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_delay() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_bespoke_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_prepare() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_shutdown() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_startup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_hw_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: mv soc_dai_hw_params() to soc-dai (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: add soc-dai.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Return -ENOTSUPP from set_channel_map() if no operation provided (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: support dai_link with platforms_num != 1 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: defer card registration if codec component is missing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use soc_find_component() at snd_soc_find_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use soc_find_component() at snd_soc_find_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_find_component() uses snd_soc_dai_link_component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_find_component() uses snd_soc_is_matching_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_find_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: call snd_soc_unbind_card() under mutex_lock; (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: allow no Platform on dai_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove legacy style dai_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: add sound dai_link connection macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: Support hw_free() callback at DAI level (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5665: Fix a typo in the name of a function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Remove dev_err() usage after platform_get_irq() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: recover the channel swap after xrun (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Wrap some operations to be functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Add pm runtime function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ssp: BCLK delay parameter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add DMIC token for unmute gain ramp time (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix stream id setting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix link DMA config (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reset link DMA state in prepare (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reserve host DMA channel for hostless streams (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: assign link DMA channel at run-time (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: initial support for Elkhart Lake (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: initial support for Tiger Lake. (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Use generic function for fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: make sure DMA is start/stop by read the RUN bit (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix HDA direct MMIO access (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated clear WAKESTS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: clear stream status and wakests properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add function for hda stop chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: set position buffer in init chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: correct ROM state mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_window_offset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_mailbox_offset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add runtime idle callback (Jaroslav Kysela) [1738610] - [sound] ALSA: docs: timers: convert docs to ReST and rename to *.rst (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use SOF defined init chip in resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Enable jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce ifdef usage for hda (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: remove unused state variable in suspend function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: implement runtime idle for CNL/APL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the defined stop chip in suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the SOF defined ppcap functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: release link DMA for paused streams during suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: loader: Don't ignore SRAM block types (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: loader: Use the BAR provided by FW (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_bar_index ops (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: increase default IPC timeouts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: use timeout configured at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: add ALH support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: use common code to send PCM_FREE IPC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: reset DMA state in prepare (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: couple host and link DMA during FE hw_free (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pci: mark last_busy value at runtime PM init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fixup HDaudio topology name with DMIC number (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: Add missing include file hdac_hda.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: Initialize hdaudio bus properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix MSI handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Initialize HDA controller after i915 init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add a parameter to disable MSI (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated include from hda.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: disallow building without CONFIG_PCI again (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: intel: extend IPC dump information (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Allow all channels in case of parallel DIN/DOUT setup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Fix a typo in the name of a constant (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Add support for multi DIN/DOUT with TDM slots parameter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Rename min_frame_size to slot_width (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: add dmic dapm widget and route (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: add dependency to dmic driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Match Product Family instead of product (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Invalidate only paths reachable for a given stream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: use set_get_data in process load (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Add compatible string for imx6ull (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: keep analog power register at SND_SOC_BIAS_OFF (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Remove magic number register writes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Revert remove superfluous set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: remove superfluous set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: depop stereo dac (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: handle concurrent interrupts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: clear interrupts by polarity flip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: move jack-detect init to i2c probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: fall back to DT prop names on error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Add component driver name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: use more of the volume range from DACs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: remove w90x900/nuc900 platform drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nuc900: nuc900-audio: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add dmic dapm widget to support dmic PCM (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add for_each_xxx macro for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: remove useless check on codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: fix null pointer dereference in clean up (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sst: fix kmalloc call with wrong flags (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Fix deadlock in snd_soc_instantiate_card() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Remove erroneous soc_cleanup_card_resources() call (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use snd_soc_dai_link_component for CPU (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: move DAI pre-links initiation to snd_soc_instantiate_card (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: fix warning reported by kbuild test robot and minor issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Mark format integer literals as unsigned (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Tell codec that jack is being removed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Change SR and WSS computation (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: rt274: Fix internal jack assignment in set_jack callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 395 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 340 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add offset to RX channel select (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix sun8i tx channel offset mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98090: remove 24-bit format support if RJ is 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: da7219: Fix build error without CONFIG_I2C (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Fix COMPILE_TEST build error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Implement set_tdm_slot callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: Make some symbols static (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: remove set but not used variable 'is_right_j ' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add RT1011 amplifier driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: debug: add new debugfs entries for IPC flood test (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: Introduce SOF_IPC_GLB_TEST_MSG IPC command (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: uapi: mirror firmware changes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: send time stamp to FW for alignment (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: bump to ABI 3.6 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: soundwire: add initial soundwire support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add support for mux/demux component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix DSP oops definitions in FW ABI (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ipc: don't check for HIPCCTL register value (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: re-enable IPC IRQ at end of handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: read all IPC registers first (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: re-enable IPC IRQ at end of handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: move code around for clarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: read all IPC registers first (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Do not send cmd via SHIM register (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add mode parameter for snd_sof_debugfs_buf_item (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ASoC: core: use component driver name as component name" (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: sai: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: replace fw ready bitfield with explicit bit ordering (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Baytrail: add quirk for Aegex 10 (RU2) tablet (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: fix typos of SPDX-License-Identifier (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 162 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the defined ppcap functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add COMPILE_TEST for PCI options (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Add COMPILE_TEST for new machine drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: remove dependency on asm/platform_sst_audio.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoc: fix sound/soc/intel/skylake/slk-ssp-clk.c build error on IA64 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: use common helpers to detect CPUs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Add missing voice activation register definitions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: use component driver name as component name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Fix build error with CONFIG_GPIOLIB is not set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix undefined references with Baytrail-only support (Jaroslav Kysela) [1738610] - [sound] ALSA: wcd9335: fix a incorrect use of kstrndup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-codec: fix first delay on Speaker (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Add support for H6 SoC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Add TX fifo bit flush quirks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Move quirks to the top (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: fix spelling mistake "configued" -> "configured" (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: fix integer overflow on unsigned int multiply (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: force end-of-file for debugfs trace at suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: trace: remove code duplication in sof_wait_trace_avail() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Use struct_size() in kmemdup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: Show KConfig entry (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: Use struct_size() helper (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: remove redundant assignment to pulse_len (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix the hda init chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: fix a race, leading to IPC timeouts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: control: correct the copy size for bytes kcontrol put (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: remove warning - initialize workqueue on open (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: clear hw_params_upon_resume flag correctly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: fix error handling with the probe workqueue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: remove snd_soc_unregister_component in case of error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: remove DSP after unregistering machine driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: fixup references at soc_cleanup_card_resources() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Force polling mode on CFL and CNL (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 119 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 64 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: lock client_mutex while removing link components (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: Restore original configuration of DAI format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qdsp6: q6core: Use struct_size() in kmemdup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use struct_size() helper (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Use struct_size() in krealloc() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: remove unnecessary inclusion of skl.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move card registration to the end of probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove unused DAPM pins (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: enable dev runtime suspend and resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Add machine driver for CX2072X on BYT/CHT platforms (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Add support for Conexant CX2072X CODEC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: Unify the supported input and output rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: fixup try_module_get()/module_put() timing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add newline for clarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: fix compile error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: fix compile error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix AMP quirk support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix for codec button mapping (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 4 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 3 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: Fix configuration of DAI format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: WARN() is not related to component->driver->probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: move pcm_new from snd_soc_component_driver to snd_soc_dai_driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: Remap button control-function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: enable IIR filter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rename functions that pollute the simple_xxx namespace (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: soc-acpi: Fix machine selection order (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677-spi: Handle over reading when flipping bytes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dpm: fixup DAI active unbalance (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic3x: Add support for high power analog output (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Add reset gpio handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Add regcache mask dirty (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: replace the process_option table with function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: Fix the issue about unsupported rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: add g12a tohdmitx control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: add basic codec-to-codec link support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: allow muxes to force a disconnect (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: set link name based on link node name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: set data align (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: add memory interface data align (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4458: rstn_control - return a non-zero on error only (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: re-introduce mutex locking (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: add soc_pcm_components_open() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: add missing cpu_dai->rate = 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: do cpu_dai related operation at same place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use soc_find_component() at snd_soc_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_component_to_node() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup soc_bind_dai_link() comment balance (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use codec_dais on soc_bind_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use i on snd_soc_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: request GPIO when device get probed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ICL add Icelake chip info struct (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ICL: add Icelake SSP count (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: remove runtime PM calls during pcm open/close (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Add Cometlake PCI IDs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add Comet Lake PCI IDs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: Reporting accurate hw_ptr for acp3x dma (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: BE dai needs prepare when pause release after resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4458: add return value for ak4458_probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC : cs4265 : readable register too low (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix error in verbose ipc command parsing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix race in FW boot timeout handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: nocodec: fix undefined reference (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-acpi: fix implicit header use of module.h/export.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Move clock operation to PM runtime (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: i2s: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove ops dependency on the dai id (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove reference to the dai drivers in the private data (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove reference to the current substream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove function name debug traces (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Jaroslav Kysela) [1738610] - [sound] ALSA: xen-front: fix unintention integer overflow on left shifts (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - PCI quirk for Medion E4254 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Apply AMD controller workaround for Raven platform (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix alienware headset mic (Jaroslav Kysela) [1738610] - [sound] ALSA: Add Acer Aspire Ethos 8951G model quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi: remove redundant assignment to variable pcm_idx (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add quirk for HP Pavilion 15 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix overridden device-specific initialization (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix potential endless loop at applying quirks (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Allow runtime PM for controller if component notifier is used (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Blacklist PC beep for Lenovo ThinkCentre M73/93 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Check beep whitelist before assigning in all codecs (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132 - Add new SBZ quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fixes inverted Conexant GPIO mic mute led (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Define a fallback_pin_fixup_tbl for alc269 family (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Expand pin_match function to match upcoming new tbls (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Drop unsol event handler for Intel HDMI codecs (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a generic reboot_notify (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Let all conexant codec enter D3 when rebooting (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/sigmatel - remove unused variable 'stac9200_core_init' (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add quirk for HP Envy x360 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Set fifo_size for both playback and capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a quirk model for fixing Huawei Matebook X right speaker (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add model description for Chrome headset button quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix a typo in model documentation (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Inform too slow responses (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Apply workaround for another AMD chip 1022:1487 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Remove page allocation redirection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Workaround for crackled sound on AMD controller (1022:1457) (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Don't override global PCM hw info flag (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add support of Zhaoxin controller (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/intel: stop probe if DMICS are detected on Skylake+ platforms (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Show the fatal CORB/RIRB error more clearly (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a conexant codec entry to let mute led work (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix intermittent CORB/RIRB stall on Intel chips (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Make hdac_device device-managed (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Flush interrupts on disabling (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Allow audio component for AMD/ATI and Nvidia HDMI (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Don't report spurious jack state changes (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Optimize resume for codecs without jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Don't resume forcibly i915 HDMI/DP codec (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Fix i915 reverse port/pin mapping (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Remove duplicated define (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fixed Headphone Mic can't record on Dell platform (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Simplify snd_hdac_refresh_widgets() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix widget_mutex incomplete protection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132 - remove redundant assignment to variable 'changed' (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Change front mic location for Lenovo M710q (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek: Add quirks for several Clevo notebook barebones (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: hda/realtek - Improve the headset mic for Acer Aspire laptops" (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add Elkhart Lake PCI ID (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: fix a mask for unsolicited event tags (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hda: fix unbalanced codec dev refcount for HDA_DEV_ASOC (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Update headset mode for ALC256 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: move polling_mode flag to struct hdac_bus (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: assign polling_mode after azx_bus_init (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Improve the headset mic for Acer Aspire laptops (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Force polling mode on CNL for fixing codec communication (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Enable micmute LED for Huawei laptops (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Set default power save node to 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Check headset type by unplug and resume (Jaroslav Kysela) [1738610] - [sound] ALSA: hdac: Fix codec name after machine driver is unloaded and reloaded (Jaroslav Kysela) [1738610] - [sound] ALSA: hdac: fix memory release for SST and SOF drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 371 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier for missed files (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier for more missed files (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 130 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 295 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 273 (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix wrong packet parameter for Alesis iO26 (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: check intermediate state of clock status and retry (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: handle error code when getting current source of clock (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: remove WARN_ON() at destruction of AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: add note for FE-8 (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: add support for MOTU 4pre (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix isoc cycle count to which rx packet is scheduled (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix error path for initialization of stream structures (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix to handle correct stream for PCM playback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix NULL pointer dereference to unused stream structure (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: localize kernel APIs to start/stop each AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for bus reset handler (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for initialization/destruction of AMDTP streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to start AMDTP streams in AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to add AMDTP stream into AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to stop a couple of AMDTP streams in AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add AMDTP domain structure to handle several isoc contexts (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: more code refactoring for MOTU data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: process payload of isoc context according to packet descriptors (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for FF data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for MOTU data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for TASCAM data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for DOT data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for AM824 data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass packet descriptor to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to process context payloads (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to process PCM substream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use packet descriptor for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use packet descriptor for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add list of packet descriptor (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass no syt information to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add syt_override member for some protocols (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: operate data block counter in top level of processing for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: operate data block counter in top level of processing for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass data block counter to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass data block count as an argument to tracepoints event (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: obsolete ctx_data.tx.first_dbc with CIP_UNALIGHED_DBC flag (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for local variables (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for post operation to data block counter (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for error path of parser for CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix different data block counter between probed event and transferred isochronous packet (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix initial value of data block count for IR context without CIP_DBC_IS_END_EVENT (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib/fireface: fix initial value of data block counter for IR context with CIP_NO_HEADER (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix invalid length of rx packet payload for tracepoint events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib/fireworks: fix miss detection of received MIDI messages (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix to process MIDI conformant data channel for AM824 format (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: cache next data_block_counter after probing tracepoints event for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify common tracepoints for both direction (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events" (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: minor code refactoring to stop isochronous context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: rename helper functions to begin/finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for condition to stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: add helper function to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify midi callback function (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify the count of subscriber for packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: change the range of critical section for stream data in PCM.hw_free callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring for error path to start duplex stream (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: change the range of critical section for stream data in PCM.hw_free callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring for callback function to rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code rafactoring for callback functions to PCM interface (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix compiler warning due to returning uninitialized value (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: configure stream parameter in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: configure packet format in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: unify substreams counter (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: rename helper functions for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: expand stop procedure for packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: break packet streaming at bus-reset handler (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: start duplex streams if supported (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: set packet parameter according to current configuration (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: code refactoring for stop condition of packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: don't set XRUN in stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: configure stream parameters in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: configure sampling transfer frequency in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for pcm.hw_params/hw_free (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for rawmidi.open/close (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: unify substream counter (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring to initialize/destroy stream data (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: obsolete useless member of private structure (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: don't set XRUN in stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: configure sampling transfer frequency in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring to stop packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: simplify error path to begin streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: refactoring to move timing of registration for isochronous channel (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: allow PCM capture for Stanton SCS.1m (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: minor code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in latter protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in ff400 protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in ff800 protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: add protocol-specific operation to allocate isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: minor code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: update isochronous resources when starting packet streaming after bus reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for release of isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for reservation of isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for registration of isochronous channels (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: fix destruction of data for isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: Use ULL suffixes for 64-bit constants (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: refactoring to obsolete IR packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: refactoring to obsolete IT packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix data block counter for incoming packet without CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use 8 byte packet header for IT context to separate CIP header from CIP payload (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to queueing packets (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify packet handler for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split helper function to generate CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify packet handler for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use 16 bytes IR context header to separate CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split helper function to check incoming CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: compute pointer to payload buffer in context handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: calculate the length of packet payload in packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use clear name for variable of CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use IT context header to compute cycle count for scheduling packet (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: obsolete macro for header of IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add helper function to cancel context inner callback handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use union for directional parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify tracing events to 'amdtp_packet' event (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use dynamic array for CIP header of tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use the same unit for payload argument in tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add data_blocks/data_block_counter parameter to in_packet/out_packet tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use the same type of argument for CIP header for tracing event (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: add stream format parameters for PreSonus FireStudio (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 102 (Jaroslav Kysela) [1738610] - [sound] ALSA: aoa: onyx: always initialize register read value (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 250 (Jaroslav Kysela) [1738610] - [sound] ALSA: ac97: Fix double free of ac97_codec_device (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier - Makefile/Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: add support for 352.8KHz and 384KHz sample rate (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: Fix potential concurrent access to the deleted pool (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: fix lost wakeup event scenarios in snd_pcm_drain (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Be more restrictive about when a drain is allowed (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Don't allow paritial drain operations on capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Prevent bypasses of set_params (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Fix regression on compressed capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: Fix refcount_inc() on zero usage (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: Break too long mutex context in the write loop (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: fix incorrect order of dest_client/dest_ports arguments (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 372 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 (Jaroslav Kysela) [1738610] - [sound] ALSA: control: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 167 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 151 (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: oss: Use struct_size() helper (Jaroslav Kysela) [1738610]- [tools] selftests/powerpc: Retry on host facility unavailable (Desnes Augusto Nunes do Rosario) [1739770] - [tools] selftests/powerpc: Do not fail with reschedule (Desnes Augusto Nunes do Rosario) [1739770] - [tools] libperf: Warn when exceeding MAX_NR_CPUS in cpumap (Frank Ramsay) [1753332] - [tools] perf header: Replace MAX_NR_CPUS with cpu__max_cpu() (Frank Ramsay) [1753332] - [tools] perf machine: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf session: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf stat: Replace MAX_NR_CPUS with cpu__max_cpu() (Frank Ramsay) [1753332] - [tools] perf svghelper: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf timechart: Refactor svg_build_topology_map() (Frank Ramsay) [1753332] - [tools] perf tools: Increase MAX_NR_CPUS and MAX_CACHES (Frank Ramsay) [1753332] - [crypto] crypto: chelsio - count incomplete block in IV (Jonathan Toppins) [1725813] - [crypto] crypto: chelsio - Fix softlockup with heavy I/O (Jonathan Toppins) [1725813] - [crypto] crypto: chelsio - Fix NULL pointer dereference (Jonathan Toppins) [1725813] - [nvme] nvme-pci: Allow PCI bus-level PM to be used if ASPM is disabled (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI/ASPM: Add pcie_aspm_enabled() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Fix async probe remove race (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix controller removal race with scan work (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-rdma: fix possible use-after-free in connect error flow (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix a possible deadlock when passthru commands sent to a multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-core: Fix extra device_put() call on error path (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-file: fix nvmet_file_flush() always returning an error (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-loop: Flush nvme_delete_wq when removing the port (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: Fix use-after-free bug when a port is removed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: revalidate nvme_ns_head gendisk in nvme_validate_ns (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] Revert "nvme-pci: don't create a read hctx mapping without read queues" (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix multipath crash when ANA is deactivated (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix memory leak caused by incorrect subsystem free (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: ignore subnqn for ADATA SX6000LNP (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix NULL deref for fabrics options (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix regression upon hot device removal and insertion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fc: fix module unloads while lports still pending (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: set the STABLE_WRITES flag when data digests are enabled (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: print a hint while rejecting NSID 0 or 0xffffffff (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: don't use sendpage for SLAB pages (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: do not select namespaces which are about to be removed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: also check for a disabled path if there is a single sibling (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: factor out a nvme_path_is_disabled helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: export I/O characteristics attributes in Identify (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: set physical block size and optimal I/O size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: add delete completion and submission queue to admin cmds tracer (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: fix spelling mistake "spcecific" -> "specific" (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check for NULL return from pci_alloc_p2pmem() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: limit max_hw_sectors based on the DMA max mapping size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't fall back to a 32-bit DMA mask (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't create a read hctx mapping without read queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: make nvme_dev_pm_ops static (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: resolve warnings on RCU usage and sleep warnings (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: fix inconsistent lock state warnings (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI: PM: Skip devices in D0 for (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI: PM: Avoid possible suspend-to-idle issue (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add I/O characteristics fields (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: enable to inject errors into admin commands (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: prepare for fault injection into admin commands (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: introduce target-side trace (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: print result and status in hex format (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: support for fabrics commands in host-side (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: move opcode symbol print to nvme.h (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: do not export nvme_trace_disk_name (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: properly report state change failure in nvme_reset_work (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: clean up nvme_remove_dead_ctrl a bit (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: set the errno on ctrl state change error (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: adjust irq max_vector using num_possible_cpus() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use host managed power state for suspend (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove unnecessary zero for static var (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: introduce nvme_is_fabrics to check fabrics cmd (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fc: add message when creating new association (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove queue_count_ops for write_queues and poll_queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix possible io failures when removing multipathed ns (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: export get and set features (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: add transport discovery change op (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: add support for nvmet discovery_event op (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: remove blk_init_request_from_bio (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: initialize the write priority (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: Fix u32 overflow in the number of namespace list calculation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: add transport discovery change event callback support (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't limit DMA segement size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix data_len to 0 for bdev-backed write_zeroes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: fix queue mapping when queue count is limited (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use blk-mq mapping for unmanaged irqs (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: copy MTFA field from identify controller (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: release namespace SRCU protection before performing controller ioctls (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: merge nvme_ns_ioctl into nvme_ioctl (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: remove the ifdef around nvme_nvm_ioctl (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix srcu locking on error return in nvme_get_ns_from_disk (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: Fix known effects (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Sync queues on reset (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Unblock reset_work on IO failure (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Don't disable on timeout in reset state (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Fix controller freeze wait disabling (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: validate cntlid during controller initialisation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: change locking for the per-subsystem controller list (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: trace all async notice events (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fabrics: remove unused argument (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: add known admin effects to augument admin effects log page (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: init shadow doorbell after each reset (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: mark expected switch fall-through (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: mark nvme_core_init and nvme_core_exit static (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: protect discovery change log event list iteration (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: move command size checks to the core (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check more command sizes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fabrics: check more command sizes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove an unneeded variable initialization (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: unquiesce admin queue on shutdown (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: shutdown on timeout during deletion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: set 0 capacity if namespace block size exceeds PAGE_SIZE (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-rdma: fix a NULL deref when an admin connect times out (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-file: clamp-down file namespace lba_shift (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: include (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: rename nvme_completion instances from rsp to cqe (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-rdma: remove p2p_client initialization from fast-path (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: return a specified error it subsys_alloc fails (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix discover log page when offsets are used (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: never fail double namespace enablement (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: log the error status on Identify Namespace failure (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: tidy up nvme_map_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: add safety check for subsystem lock during nvmet_ns_changed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: only call nvme_unmap_data for requests transferring data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove q_dmadev from nvme_queue (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: merge nvme_free_iod into nvme_unmap_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: move the call to nvme_cleanup_cmd out of nvme_unmap_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove nvme_init_iod (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use a flag for polled queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add a rq_integrity_vec helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add dma_map_bvec helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add a rq_dma_dir helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: use zero-sized array and struct_size() in kzalloc() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove unused nvme_iod member (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: avoid double errno conversions (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: avoid double dereference to convert le to cpu (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix error flow during ns enable (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add proper write zeroes setup for the multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: disable Write Zeroes for qemu controllers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: bring Disconnect into compliance with FC-NVME spec (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add proper discard setup for the multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: remove nvme_ns_config_oncs (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: fix issues with targetport assoc_list list walking (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add get-feature to admin cmds tracer (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-loop: init nvmet_ctrl fatal_err_work when allocate (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: put ns_head ref if namespace fails allocation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: fix cdw10 buffer overrun (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: don't warn on block content change effects (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: update comment to make the code easier to read (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: convert to SPDX identifiers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-lightnvm: convert to SPDX identifiers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: return error from (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: avoid that deleting a controller triggers a circular locking complaint (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: introduce a helper function for controller deletion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: unexport nvme_delete_ctrl_sync() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check kstrtoint() return value in queue_count_set() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix indentation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [lightnvm] lightnvm: simplify geometry (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [powerpc] powerpc/tm: Fix FP/VMX unavailable exceptions inside a transaction (Gustavo Duarte) [1750653] - [powerpc] powerpc/tm: Fix restoring FP/VMX facility incorrectly on interrupts (Gustavo Duarte) [1750653] - [block] block: split .sysfs_lock into two locks (Ming Lei) [1697383] - [block] block: add helper for checking if queue is registered (Ming Lei) [1697383] - [block] blk-mq: don't hold q->sysfs_lock in blk_mq_map_swqueue (Ming Lei) [1697383] - [block] block: don't hold q->sysfs_lock in elevator_init_mq (Ming Lei) [1697383] - [block] block: Remove blk_mq_register_dev() (Ming Lei) [1697383] - [x86] KVM: X86: Fix fpu state crash in kvm guest (Prarit Bhargava) [1737070] - [x86] x86/fpu: Don't use current->mm to check for a kthread (Prarit Bhargava) [1737070] - [x86] x86/fpu: Update kernel's FPU state before using for the fsave header (Prarit Bhargava) [1737070] - [x86] x86/fpu: Use fault_in_pages_writeable() for pre-faulting (Prarit Bhargava) [1737070] - [mm] mm/gup: continue VM_FAULT_RETRY processing even for pre-faults (Prarit Bhargava) [1737070] - [x86] x86/fpu: Fault-in user stack if copy_fpstate_to_sigframe() fails (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Add PKRU value to init_fpstate (Prarit Bhargava) [1737070] - [x86] x86/fpu: Restore regs in copy_fpstate_to_sigframe() in order to use the fastpath (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add a fastpath to copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add a fastpath to __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Defer FPU state load until return to userspace (Prarit Bhargava) [1737070] - [x86] x86/fpu: Merge the two code paths in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Restore from kernel memory on the 64-bit path too (Prarit Bhargava) [1737070] - [x86] x86/fpu: Inline copy_user_to_fpregs_zeroing() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Update xstate's PKRU value on write_pkru() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Prepare copy_fpstate_to_sigframe() for TIF_NEED_FPU_LOAD (Prarit Bhargava) [1737070] - [x86] x86/fpu: Always store the registers in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/entry: Add TIF_NEED_FPU_LOAD (Prarit Bhargava) [1737070] - [x86] x86/fpu: Eager switch PKRU state (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Don't check if PKRU is zero before writing it (Prarit Bhargava) [1737070] - [x86] x86/fpu: Only write PKRU if it is different from current (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Provide *pkru() helpers (Prarit Bhargava) [1737070] - [x86] x86/fpu: Use a feature number instead of mask in two more helpers (Prarit Bhargava) [1737070] - [x86] x86/fpu: Make __raw_xsave_addr() use a feature number instead of mask (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add an __fpregs_load_activate() internal helper (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove user_fpu_begin() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized (Prarit Bhargava) [1737070] - [x86] x86/fpu: Don't save fxregs for ia32 frames in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized usage in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Always init the state in fpu__clear() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove preempt_disable() in fpu__clear() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu__restore() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized usage in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/entry: Remove unneeded need_resched() loop (Prarit Bhargava) [1737070] - [x86] x86/uaccess: Introduce user_access_{save, restore}() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Fix i486 + no387 boot crash by only saving FPU registers on context switch if there is an FPU (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove second definition of fpu in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [net] udp: correct reuseport selection with connected sockets (Paolo Abeni) [1665807] - [net] udp6: add missing rehash callback to udplite (Paolo Abeni) [1665807] - [net] udp: add missing rehash callback to udplite (Paolo Abeni) [1665807] - [net] udp6: prefer listeners bound to an address (Paolo Abeni) [1665807] - [net] udp: prefer listeners bound to an address (Paolo Abeni) [1665807] - [net] sched: fix race between deactivation and dequeue for NOLOCK qdisc (Davide Caratti) [1744397] - [net] check extack._msg before print (Ivan Vecera) [1751279] - [net] report invalid mtu value via netlink extack (Ivan Vecera) [1751279] - [net] report min and max mtu network device settings (Ivan Vecera) [1751279] - [net] failover: change mtu has RTNL (Ivan Vecera) [1751279] - [net] neigh: fix multiple neigh timer scheduling (Lorenzo Bianconi) [1730632] - [net] virtchnl: fix 'Unknown bps' in dmesg for 2.5Gb/5Gb speeds (Ivan Vecera) [1748437] - [net] Add a define for LLDP ethertype (Ivan Vecera) [1748428] - [net] devlink: Add support for direct reporter health state update (Petr Oros) [1746363] - [netdrv] Add IANA_VXLAN_UDP_PORT definition to vxlan header file (Ivan Vecera) [1731347] - [netdrv] Move the definition of the default Geneve udp port to public header file (Ivan Vecera) [1731347] - [net] openvswitch: Add a new action check_pkt_len (Numan Siddique) [1700733]- [pci] PCI: Add pci_dev_id() helper (Myron Stowe) [1735874] - [netdrv] ibmvnic: Warn unknown speed message only when carrier is present (Steve Best) [1749873] - [netdrv] net/ibmvnic: Fix missing { in __ibmvnic_reset (Steve Best) [1749873] - [netdrv] net/ibmvnic: free reset work of removed device from queue (Steve Best) [1749873] - [netdrv] ibmvnic: Do not process reset during or after device removal (Steve Best) [1749873] - [cpufreq] cpufreq: intel_pstate: Show different max frequency with turbo 3 and HWP (Alexander Beregalov) [1752053] - [char] hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable (Prarit Bhargava) [1660796] - [hwtracing] intel_th: pci: Add support for another Lewisburg PCH (Jiri Olsa) [1714486] - [x86] x86/entry/32: Fix ENDPROC of common_spurious (Prarit Bhargava) [1730447] - [x86] x86/irq: Seperate unused system vectors from spurious entry again (Prarit Bhargava) [1730447] - [vfio] vfio/type1: Handle different mdev isolation type (Tarun Gupta) [1498341] - [vfio] vfio/type1: Add domain at(de)taching group helpers (Tarun Gupta) [1498341] - [vfio] vfio/mdev: Add iommu related member in mdev_device (Tarun Gupta) [1498341] - [documentation] ipmb: place it at driver-api and convert to ReST (Tony Camuso) [1752071] - [char] ipmi_si_intf: Fix race in timer shutdown handling (Tony Camuso) [1752071] - [char] ipmi_ssif: avoid registering duplicate ssif interface (Tony Camuso) [1752071] - [char] ipmi: Free receive messages when in an oops (Tony Camuso) [1752071] - [char] ipmi_si: Only schedule continuously in the thread in maintenance mode (Tony Camuso) [1752071] - [char] ipmi_si: Remove ipmi_ from the device attr names (Tony Camuso) [1752071] - [char] ipmi_si: Convert device attr permissions to octal (Tony Camuso) [1752071] - [char] ipmi_si: Rework some include files (Tony Camuso) [1752071] - [char] ipmi_si: Convert timespec64 to timespec (Tony Camuso) [1752071] - [char] Fix uninitialized variable in ipmb_dev_int.c (Tony Camuso) [1752071] - [char] fix platform_no_drv_owner.cocci warnings (Tony Camuso) [1752071] - [char] ipmi: ipmb: don't allocate i2c_client on stack (Tony Camuso) [1752071] - [char] ipmi: ipmb: Fix build error while CONFIG_I2C is set to m (Tony Camuso) [1752071] - [char] Add support for IPMB driver (Tony Camuso) [1752071] - [char] drivers: ipmi: Drop device reference (Tony Camuso) [1752071] - [char] ipmi_ssif: fix unexpected driver unregister warning (Tony Camuso) [1752071] - [char] Add SPDX license identifier - Makefile/Kconfig (Tony Camuso) [1752071] - [char] ipmi_si: use bool type for initialized variable (Tony Camuso) [1752071] - [char] ipmi_si: fix unexpected driver unregister warning (Tony Camuso) [1752071] - [char] ipmi: Remove warning if no slave address is present (Tony Camuso) [1752071] - [char] ipmi:ssif: Only unregister the platform driver if it was registered (Tony Camuso) [1752071] - [char] ipmi: Add the i2c-addr property for SSIF interfaces (Tony Camuso) [1752071] - [char] ipmi: avoid atomic_inc in exit function (Tony Camuso) [1752071] - [char] ipmi: Remove file from ipmi_file_private (Tony Camuso) [1752071] - [char] ipmi_si: remove an unused variable in try_smi_init() (Tony Camuso) [1752071] - [char] ipmi: Make ipmi_interfaces_srcu variable static (Tony Camuso) [1752071] - [char] ipmi: Change to ktime_get_ts64() (Tony Camuso) [1752071] - [char] ipmi: Free the address list on module cleanup (Tony Camuso) [1752071] - [edac] EDAC, skx, i10nm: Fix source ID register offset (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Check ECC enabling status per channel (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Add Intel additional Ice-Lake support (Aristeu Rozanski) [1485543 1482412] - [x86] x86/CPU: Add more Icelake model numbers (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx, i10nm: Make skx_common.c a pure library (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_common: Add code to recognise new compound error code (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Fix randconfig builds (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Add a driver for Intel 10nm server processors (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_edac: Delete duplicated code (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_common: Separate common code out from skx_edac (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Let EDAC core show the decoded result for debugfs (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Move debugfs node under EDAC's hierarchy (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Prepend hex formatting with '0x' (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Fix function calling order in skx_exit() (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_edac: Fix logical channel intermediate decoding (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC: Correct DIMM capacity unit symbol (Aristeu Rozanski) [1485543 1482412] - [x86] x86/mce: Add notifier_block forward declaration (Aristeu Rozanski) [1485543 1482412] - [netdrv] net: thunderx: fix NULL pointer dereference in nicvf_open/nicvf_stop (Dean Nelson) [1657380] - [netdrv] net: thunder: fix a potential NULL pointer dereference (Dean Nelson) [1657380] - [netdrv] net: thunderx: remove link change polling code and info from nicpf (Dean Nelson) [1657380] - [netdrv] net: thunderx: move link state polling function to VF (Dean Nelson) [1657380] - [netdrv] net: thunderx: add mutex to protect mailbox from concurrent calls for same VF (Dean Nelson) [1657380] - [netdrv] net: thunderx: rework xcast message structure to make it fit into 64 bit (Dean Nelson) [1657380] - [netdrv] net: thunderx: add nicvf_send_msg_to_pf result check for set_rx_mode_task (Dean Nelson) [1657380] - [netdrv] net: thunderx: make CFG_DONE message to run through generic send-ack sequence (Dean Nelson) [1657380] - [netdrv] net: thunderx: replace global nicvf_rx_mode_wq work queue for all VFs to private for each of them. (Dean Nelson) [1657380] - [netdrv] net: thunderx: set tso_hdrs pointer to NULL in nicvf_free_snd_queue (Dean Nelson) [1657380] - [x86] perf/x86/intel/rapl: Cosmetic rename internal variables in response to multi-die/pkg support (David Arcari) [1616309] - [x86] perf/x86/intel/uncore: Cosmetic renames in response to multi-die/pkg support (David Arcari) [1616309] - [hwmon] hwmon/coretemp: Cosmetic: Rename internal variables to zones from packages (David Arcari) [1616309] - [thermal] thermal/x86_pkg_temp_thermal: Cosmetic: Rename internal variables to zones from packages (David Arcari) [1616309] - [x86] perf/x86/intel/cstate: Support multi-die/package (David Arcari) [1616309] - [x86] perf/x86/intel/rapl: Support multi-die/package (David Arcari) [1616309] - [x86] perf/x86/intel/uncore: Support multi-die/package (David Arcari) [1616309] - [topology] topology: Create core_cpus and die_cpus sysfs attributes (David Arcari) [1616309] - [topology] topology: Create package_cpus sysfs attribute (David Arcari) [1616309] - [hwmon] hwmon/coretemp: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Update RAPL domain name and debug messages (David Arcari) [1616309] - [thermal] thermal/x86_pkg_temp_thermal: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Simplify rapl_find_package() (David Arcari) [1616309] - [x86] x86/topology: Define topology_logical_die_id() (David Arcari) [1616309] - [x86] x86/topology: Define topology_die_id() (David Arcari) [1616309] - [topology] cpu/topology: Export die_id (David Arcari) [1616309] - [x86] x86/topology: Create topology_max_die_per_package() (David Arcari) [1616309] - [x86] x86/topology: Add CPUID.1F multi-die/package support (David Arcari) [1616309] - [x86] x86/smpboot: Rename match_die() to match_pkg() (David Arcari) [1616309] - [documentation] topology: Simplify cputopology.txt formatting and wording (David Arcari) [1616309] - [documentation] x86/topology: Fix documentation typo (David Arcari) [1616309] - [mm] mm: remove stale comment from page struct (Rafael Aquini) [1737065] - [mm] mm/slab.c: fix an infinite loop in leaks_show() (Rafael Aquini) [1737065] - [mm] mm/slub.c: update the comment about slab frozen (Rafael Aquini) [1737065] - [mm] mm/slab.c: remove unneed check in cpuup_canceled (Rafael Aquini) [1737065] - [mm] slub: remove useless kmem_cache_debug() before remove_full() (Rafael Aquini) [1737065] - [mm] slab: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slub: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slob: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slob: respect list_head abstraction layer (Rafael Aquini) [1737065] - [mm] slab: fix a crash by reading /proc/slab_allocators (Rafael Aquini) [1737065] - [mm] mm: add support for kmem caches in DMA32 zone (Rafael Aquini) [1737065] - [mm] mm, slub: make the comment of put_cpu_partial() complete (Rafael Aquini) [1737065] - [mm] mm/slub.c: remove an unused addr argument (Rafael Aquini) [1737065] - [mm] mm/slab.c: kmemleak no scan alien caches (Rafael Aquini) [1737065] - [mm] mm/slub.c: freelist is ensured to be NULL when new_slab() fails (Rafael Aquini) [1737065] - [mm] slab: alien caches must not be initialized if the allocation of the alien cache failed (Rafael Aquini) [1737065] - [mm] include/linux/slab.h: fix sparse warning in kmalloc_type() (Rafael Aquini) [1737065] - [mm] mm/slub.c: record final state of slub action in deactivate_slab() (Rafael Aquini) [1737065] - [mm] mm/slub.c: page is always non-NULL in node_match() (Rafael Aquini) [1737065] - [mm] mm/slub.c: remove validation on cpu_slab in __flush_cpu_slab() (Rafael Aquini) [1737065] - [mm] mm, slab: remove unnecessary unlikely() (Rafael Aquini) [1737065] - [mm] mm: move obj_to_index to include/linux/slab_def.h (Rafael Aquini) [1737065] - [mm] slab: make kmem_cache_create{_usercopy} description proper kernel-doc (Rafael Aquini) [1737065] - [mm] slub: extend slub debug to handle multiple slabs (Rafael Aquini) [1737065] - [mm] mm/slub.c: switch to bitmap_zalloc() (Rafael Aquini) [1737065] - [fs] io_uring: add need_resched() check in inner poll loop (Jeff Moyer) [1706143] - [fs] io_uring: don't enter poll loop if we have CQEs pending (Jeff Moyer) [1706143] - [fs] io_uring: fix potential hang with polled IO (Jeff Moyer) [1706143] - [fs] io_uring: fix an issue when IOSQE_IO_LINK is inserted into defer list (Jeff Moyer) [1706143] - [fs] io_uring: fix manual setup of iov_iter for fixed buffers (Jeff Moyer) [1706143] - [fs] io_uring: fix KASAN use after free in io_sq_wq_submit_work (Jeff Moyer) [1706143] - [fs] io_uring: ensure ->list is initialized for poll commands (Jeff Moyer) [1706143] - [fs] io_uring: track io length in async_list based on bytes (Jeff Moyer) [1706143] - [fs] io_uring: don't use iov_iter_advance() for fixed buffers (Jeff Moyer) [1706143] - [fs] io_uring: add a memory barrier before atomic_read (Jeff Moyer) [1706143] - [fs] io_uring: fix counter inc/dec mismatch in async_list (Jeff Moyer) [1706143] - [fs] io_uring: fix the sequence comparison in io_sequence_defer (Jeff Moyer) [1706143] - [fs] io_uring: fix io_sq_thread_stop running in front of io_sq_thread (Jeff Moyer) [1706143] - [include] io_uring: add support for recvmsg() (Jeff Moyer) [1706143] - [include] io_uring: add support for sendmsg() (Jeff Moyer) [1706143] - [fs] signal: remove the wrong signal_pending() check in restore_user_sigmask() (Jeff Moyer) [1706143] - [fs] io_uring: add support for sqe links (Jeff Moyer) [1706143] - [fs] io_uring: ensure req->file is cleared on allocation (Jeff Moyer) [1706143] - [fs] io_uring: fix memory leak of UNIX domain socket inode (Jeff Moyer) [1706143] - [fs] io_uring: punt short reads to async context (Jeff Moyer) [1706143] - [fs] uio: make import_iovec()/compat_import_iovec() return bytes on success (Jeff Moyer) [1706143] - [fs] io_uring: Fix __io_uring_register() false success (Jeff Moyer) [1706143] - [tools] tools/io_uring: sync with liburing (Jeff Moyer) [1706143] - [tools] tools/io_uring: fix Makefile for pthread library link (Jeff Moyer) [1706143] - [fs] io_uring: use wait_event_interruptible for cq_wait conditional wait (Jeff Moyer) [1706143] - [fs] io_uring: adjust smp_rmb inside io_cqring_events (Jeff Moyer) [1706143] - [fs] io_uring: fix infinite wait in khread_park() on io_finish_async() (Jeff Moyer) [1706143] - [fs] io_uring: remove 'ev_flags' argument (Jeff Moyer) [1706143] - [fs] io_uring: fix failure to verify SQ_AFF cpu (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition reading SQE data (Jeff Moyer) [1706143] - [fs] io_uring: use cpu_online() to check p->sq_thread_cpu instead of cpu_possible() (Jeff Moyer) [1706143] - [fs] io_uring: fix shadowed variable ret return code being not checked (Jeff Moyer) [1706143] - [fs] req->error only used for iopoll (Jeff Moyer) [1706143] - [fs] io_uring: add support for eventfd notifications (Jeff Moyer) [1706143] - [fs] io_uring: add support for IORING_OP_SYNC_FILE_RANGE (Jeff Moyer) [1706143] - [fs] fs: add sync_file_range() helper (Jeff Moyer) [1706143] - [fs] io_uring: add support for marking commands as draining (Jeff Moyer) [1706143] - [fs] io_uring: avoid page allocation warnings (Jeff Moyer) [1706143] - [include] iov_iter: fix iov_iter_type (Jeff Moyer) [1706143] - [fs] block: fix handling for BIO_NO_PAGE_REF (Jeff Moyer) [1706143] - [fs] io_uring: drop req submit reference always in async punt (Jeff Moyer) [1706143] - [fs] io_uring: free allocated io_memory once (Jeff Moyer) [1706143] - [fs] io_uring: fix SQPOLL cpu validation (Jeff Moyer) [1706143] - [fs] io_uring: have submission side sqe errors post a cqe (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after unsetting IORING_SQ_NEED_WAKEUP (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after incrementing dropped counter (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before reading SQ tail (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after updating SQ head (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before reading cq head (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before wq_has_sleeper (Jeff Moyer) [1706143] - [fs] io_uring: fix notes on barriers (Jeff Moyer) [1706143] - [fs] io_uring: fix handling SQEs requesting NOWAIT (Jeff Moyer) [1706143] - [fs] io_uring: remove 'state' argument from io_{read,write} path (Jeff Moyer) [1706143] - [fs] io_uring: fix poll full SQ detection (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition when sq threads goes sleeping (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition reading SQ entries (Jeff Moyer) [1706143] - [fs] io_uring: fail io_uring_register(2) on a dying io_uring instance (Jeff Moyer) [1706143] - [fs] io_uring: fix CQ overflow condition (Jeff Moyer) [1706143] - [fs] io_uring: fix possible deadlock between io_uring_{enter,register} (Jeff Moyer) [1706143] - [powerpc] arch: add pidfd and io_uring syscalls everywhere (Jeff Moyer) [1706143] - [fs] io_uring: drop io_file_put() 'file' argument (Jeff Moyer) [1706143] - [fs] io_uring: only test SQPOLL cpu after we've verified it (Jeff Moyer) [1706143] - [fs] io_uring: park SQPOLL thread if it's percpu (Jeff Moyer) [1706143] - [fs] io_uring: restrict IORING_SETUP_SQPOLL to root (Jeff Moyer) [1706143] - [tools] tools/io_uring: remove IOCQE_FLAG_CACHEHIT (Jeff Moyer) [1706143] - [fs] io_uring: fix double free in case of fileset regitration failure (Jeff Moyer) [1706143] - [fs] io_uring: offload write to async worker in case of -EAGAIN (Jeff Moyer) [1706143] - [fs] io_uring: fix big-endian compat signal mask handling (Jeff Moyer) [1706143] - [fs] block: add BIO_NO_PAGE_REF flag (Jeff Moyer) [1706143] - [fs] iov_iter: add ITER_BVEC_FLAG_NO_REF flag (Jeff Moyer) [1706143] - [maintainers] io_uring: mark me as the maintainer (Jeff Moyer) [1706143] - [fs] io_uring: retry bulk slab allocs as single allocs (Jeff Moyer) [1706143] - [fs] io_uring: fix poll races (Jeff Moyer) [1706143] - [fs] io_uring: fix fget/fput handling (Jeff Moyer) [1706143] - [fs] io_uring: add prepped flag (Jeff Moyer) [1706143] - [fs] io_uring: make io_read/write return an integer (Jeff Moyer) [1706143] - [fs] io_uring: use regular request ref counts (Jeff Moyer) [1706143] - [fs] mm: refactor readahead defines in mm.h (Jeff Moyer) [1706143] - [tools] io_uring: add a few test tools (Jeff Moyer) [1706143] - [fs] io_uring: allow workqueue item to handle multiple buffered requests (Jeff Moyer) [1706143] - [fs] io_uring: add support for IORING_OP_POLL (Jeff Moyer) [1706143] - [fs] io_uring: add io_kiocb ref count (Jeff Moyer) [1706143] - [fs] io_uring: add submission polling (Jeff Moyer) [1706143] - [fs] io_uring: add file set registration (Jeff Moyer) [1706143] - [net] net: split out functions related to registering inflight socket files (Jeff Moyer) [1706143] - [include] io_uring: add support for pre-mapped user IO buffers (Jeff Moyer) [1706143] - [block] block: implement bio helper to add iter bvec pages to bio (Jeff Moyer) [1706143] - [fs] io_uring: batch io_kiocb allocation (Jeff Moyer) [1706143] - [fs] io_uring: use fget/fput_many() for file references (Jeff Moyer) [1706143] - [fs] fs: add fget_many() and fput_many() (Jeff Moyer) [1706143] - [fs] io_uring: support for IO polling (Jeff Moyer) [1706143] - [fs] io_uring: add fsync support (Jeff Moyer) [1706143] - [include] Add io_uring IO interface (Jeff Moyer) [1706143] - [fs] iomap: wire up the iopoll method (Jeff Moyer) [1706143] - [fs] block: add bio_set_polled() helper (Jeff Moyer) [1706143] - [fs] block: wire up block device iopoll method (Jeff Moyer) [1706143] - [fs] signal: Add restore_user_sigmask() (Jeff Moyer) [1706143] - [fs] signal: Add set_user_sigmask() (Jeff Moyer) [1706143] - [net] iov_iter: Fix 9p virtio breakage (Benjamin Coddington) [1734762] - [lib] iov_iter: Add I/O discard iterator (Benjamin Coddington) [1734762] - [fs] iov_iter: Separate type from direction and use accessor functions (Benjamin Coddington) [1734762] - [fs] iov_iter: Use accessor function (Benjamin Coddington) [1734762]- [kernel] ftrace/x86: Anotate text_mutex split between ftrace_arch_code_modify_post_process() and ftrace_arch_code_modify_prepare() (Joe Lawrence) [1696461] - [kernel] ftrace/x86: Remove possible deadlock between register_kprobe() and ftrace_run_update_code() (Joe Lawrence) [1696461] - [kernel] Revert "livepatch: Remove reliable stacktrace check in klp_try_switch_task()" (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: push and pop dynamic debug config (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: add test skip handling (Joe Lawrence) [1696461] - [kernel] module: Fix livepatch/ftrace module text permissions race (Joe Lawrence) [1696461] - [kernel] kprobes: Mark ftrace mcount handler functions nokprobe (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: Add functions.sh to TEST_PROGS_EXTENDED (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: use TEST_PROGS for test scripts (Joe Lawrence) [1696461] - [kernel] livepatch/selftests: use "$@" to preserve argument list (Joe Lawrence) [1696461] - [kernel] livepatch: Module coming and going callbacks can proceed with all listed patches (Joe Lawrence) [1696461] - [kernel] livepatch: Proper error handling in the shadow variables selftest (Joe Lawrence) [1696461] - [kernel] livepatch: return -ENOMEM on ptr_id() allocation failure (Joe Lawrence) [1696461] - [kernel] livepatch: Introduce klp_for_each_patch macro (Joe Lawrence) [1696461] - [kernel] livepatch: core: Return EOPNOTSUPP instead of ENOSYS (Joe Lawrence) [1696461] - [kernel] livepatch: samples: non static warnings fix (Joe Lawrence) [1696461] - [kernel] livepatch: Remove signal sysfs attribute (Joe Lawrence) [1696461] - [kernel] livepatch: Send a fake signal periodically (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: introduce tests (Joe Lawrence) [1696461] - [kernel] livepatch: Remove ordering (stacking) of the livepatches (Joe Lawrence) [1696461] - [kernel] livepatch: Atomic replace and cumulative patches documentation (Joe Lawrence) [1696461] - [kernel] livepatch: Remove Nop structures when unused (Joe Lawrence) [1696461] - [kernel] livepatch: Add atomic replace (Joe Lawrence) [1696461] - [kernel] livepatch: Use lists to manage patches, objects and functions (Joe Lawrence) [1696461] - [kernel] livepatch: Simplify API by removing registration step (Joe Lawrence) [1696461] - [kernel] livepatch: Don't block the removal of patches loaded after a forced transition (Joe Lawrence) [1696461] - [kernel] livepatch: Consolidate klp_free functions (Joe Lawrence) [1696461] - [kernel] livepatch: Shuffle klp_enable_patch()/klp_disable_patch() code (Joe Lawrence) [1696461] - [kernel] livepatch: Change unsigned long old_addr -> void *old_func in struct klp_func (Joe Lawrence) [1696461] - [kernel] livepatch: check kzalloc return values (Joe Lawrence) [1696461] - [kernel] livepatch: Replace synchronize_sched() with synchronize_rcu() (Joe Lawrence) [1696461] - [kernel] livepatch: Validate module/old func name length (Joe Lawrence) [1696461] - [kernel] livepatch: Remove reliable stacktrace check in klp_try_switch_task() (Joe Lawrence) [1696461] - [pci] PCI/LINK: Add Kconfig option (default off) (Myron Stowe) [1748141] - [pci] PCI/portdrv: Use shared MSI/MSI-X vector for Bandwidth Management (Myron Stowe) [1748141] - [pci] PCI: Fix issue with "pci=disable_acs_redir" parameter being ignored (Myron Stowe) [1748141] - [pci] PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller (Myron Stowe) [1748141] - [pci] PCI/LINK: Deduplicate bandwidth reports for multi-function devices (Myron Stowe) [1748141] - [pci] PCI/LINK: Clear bandwidth notification interrupt before enabling it (Myron Stowe) [1748141] - [pci] PCI/LINK: Supply IRQ handler so level-triggered IRQs are acked (Myron Stowe) [1748141] - [pci] PCI/LINK: Report degraded links via link bandwidth notification (Myron Stowe) [1748141] - [pci] PCI/portdrv: Support PCIe services on subtractive decode bridges (Myron Stowe) [1748141] - [pci] PCI/portdrv: Use conventional Device ID table formatting (Myron Stowe) [1748141] - [pci] PCI: Update PCIEPORTBUS Kconfig help text (Myron Stowe) [1748141] - [pci] PCI: Clean up usage of __u32 type (Myron Stowe) [1748141] - [pci] PCI: Move Rohm Vendor ID to generic list (Myron Stowe) [1748141] - [pci] PCI: pciehp: Add HXT quirk for Command Completed errata (Myron Stowe) [1748141] - [pci] PCI: Add ACS quirk for HXT SD4800 (Myron Stowe) [1748141] - [pci] PCI: Add HXT vendor ID (Myron Stowe) [1748141] - [pci] PCI: Use of_node_name_eq() for node name comparisons (Myron Stowe) [1748141] - [pci] PCI: Mark expected switch fall-through (Myron Stowe) [1748141] - [pci] PCI: ibmphp: Turn semaphores into completions or mutexes (Myron Stowe) [1748141] - [pci] x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub (Myron Stowe) [1748141] - [pci] PCI: Rely on config space header type, not class code (Myron Stowe) [1748141] - [pci] PCI: Make pci_size() return real BAR size (Myron Stowe) [1748141] - [pci] PCI/DPC: Fix print AER status in DPC event handling (Myron Stowe) [1748141] - [pci] PCI/ASPM: Save LTR Capability for suspend/resume (Myron Stowe) [1748141] - [pci] PCI/ASPM: Use LTR if already enabled by platform (Myron Stowe) [1748141] - [pci] PCI: Enable SERR# forwarding for all bridges (Myron Stowe) [1748141] - [pci] PCI/AER: Use match_string() helper to simplify the code (Myron Stowe) [1748141] - [fs] gfs2: Use async glocks for rename (Robert S Peterson) [1737561] - [fs] gfs2: create function gfs2_glock_update_hold_time (Robert S Peterson) [1737561] - [fs] gfs2: separate holder for rgrps in gfs2_rename (Robert S Peterson) [1737561] - [netdrv] net: aquantia: reapply vlan filters on up (Igor Russkikh) [1740500] - [s390] s390/setup: Fix kernel lock down for s390 (Philipp Rudo) [1748343] - [powerpc] kvm: ppc: book3s hv: Fix XICS-on-XIVE H_IPI when priority = 0 (David Gibson) [1725800] - [s390] vfio-ap: fix irq registration (Thomas Huth) [1660910] - [s390] ap: kvm: Enable PQAP/AQIC facility for the guest (Thomas Huth) [1660910] - [s390] ap: implement PAPQ AQIC interception in kernel (Thomas Huth) [1660910] - [s390] vfio: ap: register IOMMU VFIO notifier (Thomas Huth) [1660910] - [s390] ap: kvm: add PQAP interception for AQIC (Thomas Huth) [1660910] - [s390] kvm: s390: Do not leak kernel stack data in the KVM_S390_INTERRUPT ioctl (Thomas Huth) [1749503] - [s390] kvm: s390: vsie: Return correct values for Invalid CRYCB format (Thomas Huth) [1749503] - [s390] kvm: s390: vsie: Do not shadow CRYCB when no AP and no keys (Thomas Huth) [1749503] - [s390] kvm: s390: change default halt poll time to 50us (Thomas Huth) [1749503] - [s390] kvm: s390: fix typo in parameter description (Thomas Huth) [1749503] - [s390] kvm: s390: provide kvm_arch_no_poll function (Thomas Huth) [1749503] - [kernel] kvm: polling: add architecture backend to disable polling (Thomas Huth) [1749503] - [s390] vtime: steal time exponential moving average (Thomas Huth) [1749503] - [tools] kvm: selftests: fix ucall on x86 (Thomas Huth) [1730412] - [tools] kvm: selftests: Test invalid bits in kvm_valid_regs and kvm_dirty_regs on s390x (Thomas Huth) [1730412] - [s390] kvm: s390: Disallow invalid bits in kvm_valid_regs and kvm_dirty_regs (Thomas Huth) [1730412] - [tools] kvm: selftests: Add a test for the KVM_S390_MEM_OP ioctl (Thomas Huth) [1730412] - [s390] kvm: s390: Test for bad access register and size at the start of S390_MEM_OP (Thomas Huth) [1730412] - [tools] kvm: selftests: Enable dirty_log_test on s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Implement ucall() for s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Split ucall.c into architecture specific files (Thomas Huth) [1730412] - [tools] kvm: selftests: ucall improvements (Thomas Huth) [1730412] - [tools] kvm: selftests: aarch64: dirty_log_test: fix unaligned memslot size (Thomas Huth) [1730412] - [tools] kvm: selftests: Compile code with warnings enabled (Thomas Huth) [1730412] - [tools] kvm: selftests: enable pgste option for the linker on s390 (Thomas Huth) [1730412] - [tools] kvm: selftests: Move kvm_create_max_vcpus test to generic code (Thomas Huth) [1730412] - [virt] kvm: s390: Do not report unusabled IDs via KVM_CAP_MAX_VCPU_ID (Thomas Huth) [1730412] - [documentation] kvm: move KVM_CAP_NR_MEMSLOTS to common code (Thomas Huth) [1730412] - [tools] kvm: selftests: Add the sync_regs test for s390x (Thomas Huth) [1730412] - [s390] kvm: s390: fix memory slot handling for KVM_SET_USER_MEMORY_REGION (Thomas Huth) [1730412] - [tools] kvm: selftests: Add processor code for s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Align memory region addresses to 1M on s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Introduce a VM_MODE_DEFAULT macro for the default bits (Thomas Huth) [1730412] - [tools] kvm: selftests: aarch64: fix default vm mode (Thomas Huth) [1730412] - [tools] kvm: selftests: Guard struct kvm_vcpu_events with __KVM_HAVE_VCPU_EVENTS (Thomas Huth) [1730412] - [tools] kvm: selftests: Wrap vcpu_nested_state_get/set functions with x86 guard (Thomas Huth) [1730412]- [fs] xfs: fix missing ILOCK unlock when xfs_setattr_nonsize fails due to EDQUOT (Bill O'Donnell) [1739607] - [fs] xfs: fix reflink source file racing with directio writes (Bill O'Donnell) [1739607] - [fs] xfs: implement cgroup aware writeback (Bill O'Donnell) [1274406] - [fs] xfs: simplify xfs_chain_bio (Bill O'Donnell) [1274406] - [fs] xfs: inode btree scrubber should calculate im_boffset correctly (Bill O'Donnell) [1739607] - [fs] xfs: fix broken log reservation debugging (Bill O'Donnell) [1739607] - [fs] xfs: don't reserve per-AG space for an internal log (Bill O'Donnell) [1739607] - [fs] xfs: change some error-less functions to void types (Bill O'Donnell) [1739607] - [fs] xfs: add online scrub for superblock counters (Bill O'Donnell) [1739607] - [fs] xfs: don't parse the mtpt mount option (Bill O'Donnell) [1739607] - [fs] xfs: scrub should check incore counters against ondisk headers (Bill O'Donnell) [1739607] - [fs] xfs: allow scrubbers to pause background reclaim (Bill O'Donnell) [1739607] - [fs] xfs: rename the speculative block allocation reclaim toggle functions (Bill O'Donnell) [1739607] - [fs] xfs: track delayed allocation reservations across the filesystem (Bill O'Donnell) [1739607] - [fs] xfs: fix broken bhold behavior in xrep_roll_ag_trans (Bill O'Donnell) [1739607] - [fs] xfs: unlock inode when xfs_ioctl_setattr_get_trans can't get transaction (Bill O'Donnell) [1739607] - [fs] xfs: kill the xfs_dqtrx_t typedef (Bill O'Donnell) [1739607] - [fs] xfs: widen inode delalloc block counter to 64-bits (Bill O'Donnell) [1739607] - [fs] xfs: widen quota block counters to 64-bit integers (Bill O'Donnell) [1739607] - [fs] xfs: assert that we don't enter agfl freeing with a non-permanent transaction (Bill O'Donnell) [1739607] - [fs] xfs: make tr_growdata a permanent transaction (Bill O'Donnell) [1739607] - [fs] xfs: merge adjacent io completions of the same type (Bill O'Donnell) [1739607] - [fs] xfs: remove unused m_data_workqueue (Bill O'Donnell) [1739607] - [fs] xfs: implement per-inode writeback completion queues (Bill O'Donnell) [1739607] - [fs] xfs: scrub should only cross-reference with healthy btrees (Bill O'Donnell) [1739607] - [fs] xfs: scrub/repair should update filesystem metadata health (Bill O'Donnell) [1739607] - [fs] xfs: hoist the already_fixed variable to the scrub context (Bill O'Donnell) [1739607] - [fs] xfs: collapse scrub bool state flags into a single unsigned int (Bill O'Donnell) [1739607] - [fs] xfs: refactor scrub context initialization (Bill O'Donnell) [1739607] - [fs] xfs: report inode health via bulkstat (Bill O'Donnell) [1739607] - [fs] xfs: report AG health via AG geometry ioctl (Bill O'Donnell) [1739607] - [fs] xfs: report fs and rt health via geometry structure (Bill O'Donnell) [1739607] - [fs] xfs: add a new ioctl to describe allocation group geometry (Bill O'Donnell) [1739607] - [fs] xfs: bump XFS_IOC_FSGEOMETRY to v5 structures (Bill O'Donnell) [1739607] - [fs] xfs: clear BAD_SUMMARY if unmounting an unhealthy filesystem (Bill O'Donnell) [1739607] - [fs] xfs: replace the BAD_SUMMARY mount flag with the equivalent health code (Bill O'Donnell) [1739607] - [fs] xfs: track metadata health status (Bill O'Donnell) [1739607] - [fs] xfs,fstrim: fix to return correct minlen (Bill O'Donnell) [1739607] - [fs] xfs: shutdown after buf release in iflush cluster abort path (Bill O'Donnell) [1739607] - [fs] xfs: wake commit waiters on CIL abort before log item abort (Bill O'Donnell) [1739607] - [fs] xfs: fix btree scrub checking with regards to root-in-inode (Bill O'Donnell) [1739607] - [fs] xfs: dabtree scrub needs to range-check level (Bill O'Donnell) [1739607] - [fs] xfs: clean up xfs_dir2_leaf_addname (Bill O'Donnell) [1739607] - [fs] xfs: zero initialize highstale and lowstale in xfs_dir2_leaf_addname (Bill O'Donnell) [1739607] - [fs] xfs: clean up xfs_dir2_leafn_add (Bill O'Donnell) [1739607] - [fs] xfs: Zero initialize highstale and lowstale in xfs_dir2_leafn_add (Bill O'Donnell) [1739607] - [fs] xfs: fix backwards endian conversion in scrub (Bill O'Donnell) [1739607] - [fs] xfs: fix uninitialized error variables (Bill O'Donnell) [1739607] - [fs] xfs: rework breaking of shared extents in xfs_file_iomap_begin (Bill O'Donnell) [1739607] - [fs] xfs: don't pass iomap flags to xfs_reflink_allocate_cow (Bill O'Donnell) [1739607] - [fs] xfs: fix uninitialized error variable (Bill O'Donnell) [1739607] - [fs] xfs: introduce an always_cow mode (Bill O'Donnell) [1739607] - [fs] xfs: report IOMAP_F_SHARED from xfs_file_iomap_begin_delay (Bill O'Donnell) [1739607] - [fs] xfs: make COW fork unwritten extent conversions more robust (Bill O'Donnell) [1739607] - [fs] xfs: merge COW handling into xfs_file_iomap_begin_delay (Bill O'Donnell) [1739607] - [fs] xfs: also truncate holes covered by COW blocks (Bill O'Donnell) [1739607] - [fs] xfs: don't use delalloc extents for COW on files with extsize hints (Bill O'Donnell) [1739607] - [fs] xfs: fix SEEK_DATA for speculative COW fork preallocation (Bill O'Donnell) [1739607] - [fs] xfs: make xfs_bmbt_to_iomap more useful (Bill O'Donnell) [1739607] - [fs] xfs: fix xfs_buf magic number endian checks (Bill O'Donnell) [1739607] - [fs] xfs: retry COW fork delalloc conversion when no extent was found (Bill O'Donnell) [1739607] - [fs] xfs: remove the truncate short cut in xfs_map_blocks (Bill O'Donnell) [1739607] - [fs] xfs: move xfs_iomap_write_allocate to xfs_aops.c (Bill O'Donnell) [1739607] - [fs] xfs: move stat accounting to xfs_bmapi_convert_delalloc (Bill O'Donnell) [1739607] - [fs] xfs: move transaction handling to xfs_bmapi_convert_delalloc (Bill O'Donnell) [1739607] - [fs] xfs: split XFS_BMAPI_DELALLOC handling from xfs_bmapi_write (Bill O'Donnell) [1739607] - [fs] xfs: factor out two helpers from xfs_bmapi_write (Bill O'Donnell) [1739607] - [fs] xfs: simplify the xfs_bmap_btree_to_extents calling conventions (Bill O'Donnell) [1739607] - [fs] xfs: remove the s_maxbytes checks in xfs_map_blocks (Bill O'Donnell) [1739607] - [fs] xfs: remove the io_type field from the writeback context and ioend (Bill O'Donnell) [1739607] - [fs] xfs: compile time offset checks for common v4/v5 metadata (Bill O'Donnell) [1739607] - [fs] xfs: use buf ops magic to detect btree block type (Bill O'Donnell) [1739607] - [fs] xfs: add magic numbers to dquot buffer ops (Bill O'Donnell) [1739607] - [fs] xfs: add inode magic to inode verifier (Bill O'Donnell) [1739607] - [fs] xfs: factor xfs_da3_blkinfo verification into common helper (Bill O'Donnell) [1739607] - [fs] xfs: miscellaneous verifier magic value fixups (Bill O'Donnell) [1739607] - [fs] xfs: use verifier magic field in dir2 leaf verifiers (Bill O'Donnell) [1739607] - [fs] xfs: distinguish between bnobt and cntbt magic values (Bill O'Donnell) [1739607] - [fs] xfs: split up allocation btree verifier (Bill O'Donnell) [1739607] - [fs] xfs: distinguish between inobt and finobt magic values (Bill O'Donnell) [1739607] - [fs] xfs: create a separate finobt verifier (Bill O'Donnell) [1739607] - [fs] xfs: always check magic values in on-disk byte order (Bill O'Donnell) [1739607] - [fs] xfs: clarify documentation for the function to reverify buffers (Bill O'Donnell) [1739607] - [fs] xfs: cache unlinked pointers in an rhashtable (Bill O'Donnell) [1739607] - [fs] xfs: add tracepoints for high level iunlink operations (Bill O'Donnell) [1739607] - [fs] xfs: refactor inode update in iunlink_remove (Bill O'Donnell) [1739607] - [fs] xfs: refactor unlinked list search and mapping to a separate function (Bill O'Donnell) [1739607] - [fs] xfs: refactor inode unlinked pointer update functions (Bill O'Donnell) [1739607] - [fs] xfs: strengthen AGI unlinked inode bucket pointer checks (Bill O'Donnell) [1739607] - [fs] xfs: refactor AGI unlinked bucket updates (Bill O'Donnell) [1739607] - [fs] xfs: add xfs_verify_agino_or_null helper (Bill O'Donnell) [1739607] - [fs] xfs: clean up iunlink functions (Bill O'Donnell) [1739607] - [fs] xfs: Introduce XFS_PTAG_VERIFIER_ERROR panic mask (Bill O'Donnell) [1739607] - [fs] xfs: remove duplicated xfs_defer.h (Bill O'Donnell) [1739607] - [fs] xfs: check attribute name validity (Bill O'Donnell) [1739607] - [fs] xfs: check directory name validity (Bill O'Donnell) [1739607] - [fs] xfs: fix off-by-one error in rtbitmap cross-reference (Bill O'Donnell) [1739607] - [fs] xfs: scrub should flag dir/attr offsets that aren't mappable with xfs_dablk_t (Bill O'Donnell) [1739607] - [fs] xfs: abort xattr scrub if fatal signals are pending (Bill O'Donnell) [1739607] - [fs] xfs: consolidate scrub dinode mapping code into a single function (Bill O'Donnell) [1739607] - [fs] xfs: scrub big block inode btrees correctly (Bill O'Donnell) [1739607] - [fs] xfs: clean up the inode cluster checking in the inobt scrub (Bill O'Donnell) [1739607] - [fs] xfs: hoist inode cluster checks out of loop (Bill O'Donnell) [1739607] - [fs] xfs: check inobt record alignment on big block filesystems (Bill O'Donnell) [1739607] - [fs] xfs: check the ir_startino alignment directly (Bill O'Donnell) [1739607] - [fs] xfs: never try to scrub more than 64 inodes per inobt record (Bill O'Donnell) [1739607] - [powerpc] powerpc: Allow flush_(inval_)dcache_range to work across ranges >4GB (Steve Best) [1744062] - [scsi] scsi: lpfc: Fix port relogin failure due to GID_FT interaction (Dick Kennedy) [1733217] - [rpmspec] redhat: Fix error messages during build of zfcpdump kernel (Philipp Rudo) [1745652] - [s390] s390/protvirt: avoid memory sharing for diag 308 set/store (Philipp Rudo) [1745614] - [infiniband] IB/hfi1: Remove extra brackets from an if (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Update I/O section to be clearer about CPU vs thread (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Fix style, spacing and grammar in I/O section (Petr Oros) [1737066] - [powerpc] arch: Remove dummy mmiowb() definitions from arch code (Petr Oros) [1737066] - [netdrv] net/ethernet/silan/sc92031: Remove stale comment about mmiowb() (Petr Oros) [1737066] - [infiniband] i40iw: Redefine i40iw_mmiowb() to do nothing (Petr Oros) [1737066] - [scsi] scsi/qla1280: Remove stale comment about mmiowb() (Petr Oros) [1737066] - [netdrv] drivers: Remove explicit invocations of mmiowb() (Petr Oros) [1737066] - [infiniband] drivers: Remove useless trailing comments from mmiowb() invocations (Petr Oros) [1737066] - [documentation] Documentation: Kill all references to mmiowb() (Petr Oros) [1737066] - [riscv] riscv/mmiowb: Hook up mmwiob() implementation to asm-generic code (Petr Oros) [1737066] - [powerpc] powerpc/mmiowb: Hook up mmwiob() implementation to asm-generic code (Petr Oros) [1737066] - [nds32] nds32/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [x86] x86/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [arm64] arm64/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [include] mmiowb: Hook up mmiowb helpers to spinlocks and generic I/O accessors (Petr Oros) [1737066] - [arm64] arch: Use asm-generic header for asm/mmiowb.h (Petr Oros) [1737066] - [kernel] asm-generic/mmiowb: Add generic implementation of mmiowb() tracking (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Rewrite "KERNEL I/O BARRIER EFFECTS" section (Petr Oros) [1737066] - [s390] s390/cpum_sf: save TOD clock base in SDBs for time conversion (Philipp Rudo) [1743504] - [net] netns: provide pure entropy for net_hash_mix() (Paolo Abeni) [1737439] {CVE-2019-10639} - [net] netns: get more entropy from net_hash_mix() (Paolo Abeni) [1737439] {CVE-2019-10639} - [netdrv] net: phy: improve pause handling (Petr Oros) [1735763] - [netdrv] net: phy: fix reading fixed phy status (Petr Oros) [1735763] - [netdrv] net: phy: allow a PHY driver to define neither features nor get_features (Petr Oros) [1735763] - [netdrv] net: phy: Add support for asking the PHY its abilities (Petr Oros) [1735763] - [netdrv] net: phy: use genphy_read_abilities in genphy driver (Petr Oros) [1735763] - [netdrv] net: phy: add genphy_read_abilities (Petr Oros) [1735763] - [netdrv] net: phy: let genphy_c45_read_abilities also check aneg capability (Petr Oros) [1735763] - [netdrv] net: phy: Add generic support for 2.5GBaseT and 5GBaseT (Petr Oros) [1735763] - [netdrv] net: phy: Extract genphy_c45_pma_read_abilities from marvell10g (Petr Oros) [1735763] - [netdrv] net: phy: Move of_set_phy_eee_broken to phy-core.c (Petr Oros) [1735763] - [netdrv] net: phy: Mask-out non-compatible modes when setting the max-speed (Petr Oros) [1735763] - [netdrv] net: phy: don't allow __set_phy_supported to add unsupported modes (Petr Oros) [1735763] - [netdrv] net: phy: remove unneeded masking of PHY register read results (Petr Oros) [1735763] - [netdrv] net: phy: probe the PHY before determining the supported features (Petr Oros) [1735763] - [rpmspec] fix package summary and description for some kernel subpackages ("Herton R. Krzesinski") [1656863] - [fs] mm/huge_memory: fix vmf_insert_pfn_{pmd, pud}() crash, handle unaligned addresses (Jeff Moyer) [1743159] - [mm] mm/huge_memory.c: fix modifying of page protection by insert_pfn_pmd() (Jeff Moyer) [1743159] - [arm64] arm64: disable improved unwind tables (Mark Langsdorf) [1684694] - [arm64] arm64/stacktrace: Export save_stack_trace_regs() (Mark Langsdorf) [1684694] - [fs] nfs4: flex_file: ignore synthetic uid/gid for tightly coupled DSes (Steve Dickson) [1655712] - [include] futex: Update comments and docs about return values of arch futex code (Waiman Long) [1737058] - [arm64] arm64: futex: Avoid copying out uninitialised stack in failed cmpxchg() (Waiman Long) [1737058] - [arm64] arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP (Waiman Long) [1737058] - [kernel] locking/futex: Allow low-level atomic operations to return -EAGAIN (Waiman Long) [1737058] - [arm64] arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value (Waiman Long) [1737058] - [kernel] futex: Ensure that futex address is aligned in handle_futex_death() (Waiman Long) [1737058] - [kernel] futex: Convert futex_pi_state.refcount to refcount_t (Waiman Long) [1737058] - [kernel] sched/wake_q: Reduce reference counting for special users (Waiman Long) [1737058] - [kernel] sched/wake_q: Add branch prediction hint to wake_q_add() cmpxchg (Waiman Long) [1737058] - [kernel] futex: No need to check return value of debugfs_create functions (Waiman Long) [1737058] - [kernel] futex: Handle early deadlock return correctly (Waiman Long) [1737058] - [kernel] futex: Fix barrier comment (Waiman Long) [1737058] - [kernel] futex: Cure exit race (Waiman Long) [1737058] - [kernel] futex: Replace spin_is_locked() with lockdep (Waiman Long) [1737058] - [kernel] futex: Mark expected switch fall-throughs (Waiman Long) [1737058] - [kernel] sched/deadline: Correctly handle active 0-lag timers (Phil Auld) [1735907] - [include] build_bug.h: add wrapper for _Static_assert (Ivan Vecera) [1735752] - [include] build_bug.h: remove most of dummy BUILD_BUG_ON stubs for Sparse (Ivan Vecera) [1735752] - [include] build_bug.h: remove negative-array fallback for BUILD_BUG_ON() (Ivan Vecera) [1735752] - [mm] percpu: remove spurious lock dependency between percpu and sched (Rafael Aquini) [1731180] - [mm] percpu: use chunk scan_hint to skip some scanning (Rafael Aquini) [1731180] - [mm] percpu: convert chunk hints to be based on pcpu_block_md (Rafael Aquini) [1731180] - [mm] percpu: make pcpu_block_md generic (Rafael Aquini) [1731180] - [mm] percpu: use block scan_hint to only scan forward (Rafael Aquini) [1731180] - [mm] percpu: remember largest area skipped during allocation (Rafael Aquini) [1731180] - [mm] percpu: add block level scan_hint (Rafael Aquini) [1731180] - [mm] percpu: set PCPU_BITMAP_BLOCK_SIZE to PAGE_SIZE (Rafael Aquini) [1731180] - [mm] percpu: relegate chunks unusable when failing small allocations (Rafael Aquini) [1731180] - [mm] percpu: manage chunks based on contig_bits instead of free_bytes (Rafael Aquini) [1731180] - [mm] percpu: introduce helper to determine if two regions overlap (Rafael Aquini) [1731180] - [mm] percpu: do not search past bitmap when allocating an area (Rafael Aquini) [1731180] - [mm] percpu: update free path with correct new free region (Rafael Aquini) [1731180] - [mm] mm/percpu: add checks for the return value of memblock_alloc*() (Rafael Aquini) [1731180] - [mm] percpu: km: no need to consider pcpu_group_offsets[0] (Rafael Aquini) [1731180] - [mm] percpu: use nr_groups as check condition (Rafael Aquini) [1731180] - [mm] percpu: convert spin_lock_irq to spin_lock_irqsave. (Rafael Aquini) [1731180] - [mm] mm: percpu: remove unnecessary unlikely() (Rafael Aquini) [1731180] - [fs] /proc/meminfo: add percpu populated pages count (Rafael Aquini) [1731180] - [netdrv] tg3: Use napi_alloc_frag() (Jonathan Toppins) [1724774] - [fs] fuse: fix copy_file_range() in the writeback case (Miklos Szeredi) [1650518] - [fs] fuse: add support for copy_file_range() (Miklos Szeredi) [1650518]- [x86] perf/x86/intel: Fix spurious NMI on fixed counter (Michael Petlan) [1755110] - [x86] perf/x86/intel: Fix race in intel_pmu_disable_event() (Michael Petlan) [1755110] - [netdrv] drivers: tap.c: fix wrong backport causing WARN_ON_ONCE(1) in skb_flow_dissect() (Davide Caratti) [1750711] - [virt] KVM: coalesced_mmio: add bounds checking (Bandan Das) [1746804] {CVE-2019-14821}- [fs] gfs2: clear buf_in_tr when ending a transaction in sweep_bh_for_rgrps (Robert S Peterson) [1750939] - [s390] kvm: s390: kvm_s390_vm_start_migration: check dirty_bitmap before using it as target for memset() (Thomas Huth) [1753260] - [fs] cifs: fix credits leak for SMB1 oplock breaks (Leif Sahlberg) [1752243]- Revert "[redhat] switch secureboot kernel image signing to release keys" (Phillip Lougher) - [iommu] iommu/amd: Add support for X2APIC IOMMU interrupts (Suravee Suthikulpanit) [1734842] - [vhost] vhost: make sure log_num < in_num (Eugenio Perez) [1750882] {CVE-2019-14835}- [kernel] open the RHEL 8.2 development (Phillip Lougher) - [md] Revert "[md] dm: eliminate 'split_discard_bios' flag from DM target interface" (Mike Snitzer) [1749929] - [md] Revert "[md] dm: make sure to obey max_io_len_target_boundary" (Mike Snitzer) [1749929] - [pci] PCI: Restore Resizable BAR size bits correctly for 1MB BARs (Myron Stowe) [1717760] - [net] netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled (Phil Sutter) [1743945] - [net] netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded (Phil Sutter) [1743945] - [drm] drm/qxl: get vga ioports (Gerd Hoffmann) [1728936] - [drm] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe() (Lyude Paul) [1724363]- [md] Revert "[md] dm: eliminate 'split_discard_bios' flag from DM target interface" (Mike Snitzer) [1749929] - [md] Revert "[md] dm: make sure to obey max_io_len_target_boundary" (Mike Snitzer) [1749929] - [pci] PCI: Restore Resizable BAR size bits correctly for 1MB BARs (Myron Stowe) [1717760] - [net] netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled (Phil Sutter) [1743945] - [net] netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded (Phil Sutter) [1743945] - [drm] drm/qxl: get vga ioports (Gerd Hoffmann) [1728936] - [drm] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe() (Lyude Paul) [1724363]- [net] netfilter: nft_set: fix allocation size overflow in privsize callback. (Florian Westphal) [1746338] - [net] net: route dump netlink NLM_F_MULTI flag missing (Stefano Brivio) [1745971] - [net] sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue (Davide Caratti) [1745390] - [net] sched: pfifo_fast: fix wrong dereference when qdisc is reset (Davide Caratti) [1745387] - [scsi] scsi: vmw_pscsi: Fix use-after-free in pvscsi_queue_lck() (David Milburn) [1746597]- [drm] drm/virtio: use virtio_max_dma_size (Gerd Hoffmann) [1739291] - [mm] hwpoison, memory_hotplug: allow hwpoisoned pages to be offlined (Rafael Aquini) [1706088] - [powerpc] kvm: ppc: book3s: Enable XIVE native capability only if OPAL has required functions [BZ1744884] (David Gibson) [1744884] - [scsi] scsi: lpfc: Fix oops when fewer hdwqs than cpus (Dick Kennedy) [1745731] - [scsi] scsi: lpfc: Limit xri count for kdump environment (Dick Kennedy) [1745731] - [scsi] scsi: lpfc: Mitigate high memory pre-allocation by SCSI-MQ (Dick Kennedy) [1745731] - [scsi] scsi: qla2xxx: Fix hardirq-unsafe locking (Himanshu Madhani) [1719941] - [x86] Revert "[x86] x86/kexec/64: Prevent kexec from 5-level paging to a 4-level only kernel" (Baoquan He) [1669088] - [x86] Revert "[x86] x86/boot: Add xloadflags bits to check for 5-level paging support" (Baoquan He) [1669088]- [wireless] mwifiex: fix 802.11n/WPA detection (Jarod Wilson) [1714476] {CVE-2019-3846}- [x86] x86/kdump: Reserve extra memory when SME or SEV is active (Kairui Song) [1728519] - [scsi] scsi: qla2xxx: Fix hardlockup in abort command during driver remove (Himanshu Madhani) [1690041] - [scsi] qla2xxx: Update driver version to 10.01.00.15.08.1-k1 (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix panic from use after free in qla2x00_async_tm_cmd (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: cleanup trace buffer initialization (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: qla2x00_alloc_fw_dump: set ha->eft (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Use mutex protection during qla2x00_sysfs_read_fw_dump() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: move IO flush to the front of NVME rport unregistration (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix NVME cmd and LS cmd timeout race condition (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Complain loudly about reference count underflow (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix race conditions in the code for aborting SCSI commands (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Use an on-stack completion in qla24xx_control_vp() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Change abort wait_loop from msleep to wait_event_timeout (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Set the SCSI command result before calling the command done (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: on session delete, return nvme cmd (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix kernel crash after disconnecting NVMe devices (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Remove the fcport test from qla_nvme_abort_work() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix driver unload when FC-NVMe LUNs are connected (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Set remote port devloss timeout to 0 (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix panic in qla_dfs_tgt_counters_show (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix fw dump corruption (Himanshu Madhani) [1690041] - [x86] kvm: disable nested virt on pre-haswell processors (Paolo Bonzini) [1739739] - [x86] kvm: taint kernel for tech-preview when using nested virtualization (Paolo Bonzini) [1739739] - [x86] kvm: x86: hyper-v: don't crash on KVM_GET_SUPPORTED_HV_CPUID when kvm_intel.nested is disabled (Vitaly Kuznetsov) [1746100]- [char] ipmi: move message error checking to avoid deadlock (Tony Camuso) [1731388 1718699] - [crypto] crypto: testmgr - mark crc32 checksum as FIPS allowed (Neil Horman) [1738887] - [include] dma-mapping: use dma_get_mask in dma_addressing_limited (Don Dutile) [1738631] - [kernel] dma-direct: correct the physical addr in dma_direct_sync_sg_for_cpu/device (Don Dutile) [1738631] - [kernel] dma-direct: only limit the mapping size if swiotlb could be used (Don Dutile) [1738631] - [include] dma-mapping: add a dma_addressing_limited helper (Don Dutile) [1738631] - [kernel] dma-direct: Force unencrypted DMA under SME for certain DMA masks (Don Dutile) [1738631] - [lib] lib/genalloc: introduce chunk owners (Don Dutile) [1738631] - [lib] lib/genalloc: add gen_pool_dma_zalloc() for zeroed DMA allocations (Don Dutile) [1738631] - [lib] lib/genalloc.c: fix allocation of aligned buffer from non-aligned chunk (Don Dutile) [1738631] - [include] dma-mapping: remove dma_max_pfn (Don Dutile) [1738631] - [mmc] mmc: core: let the dma map ops handle bouncing (Don Dutile) [1738631] - [mmc] mmc: core: align max segment size with logical block size (Don Dutile) [1738631] - [kernel] swiotlb: no need to check return value of debugfs_create functions (Don Dutile) [1738631] - [xen] swiotlb: fix phys_addr_t overflow warning (Don Dutile) [1738631] - [kernel] swiotlb: Return consistent SWIOTLB segments/nr_tbl (Don Dutile) [1738631] - [kernel] swiotlb: Group identical cleanup in swiotlb_cleanup() (Don Dutile) [1738631] - [kernel] swiotlb: save io_tlb_used to local variable before leaving critical section (Don Dutile) [1738631] - [kernel] swiotlb: dump used and total slots when swiotlb buffer is full (Don Dutile) [1738631] - [kernel] swiotlb: add checks for the return value of memblock_alloc*() (Don Dutile) [1738631] - [kernel] swiotlb: add debugfs to track swiotlb buffer usage (Don Dutile) [1738631] - [kernel] dma-direct: fix DMA_ATTR_NO_KERNEL_MAPPING (Don Dutile) [1738631] - [kernel] dma-direct: handle DMA_ATTR_NO_KERNEL_MAPPING in common code (Don Dutile) [1738631] - [kernel] dma-direct: fix DMA_ATTR_NO_KERNEL_MAPPING for remapped allocations (Don Dutile) [1738631] - [kernel] dma-mapping: remove a pointless memset in dma_atomic_pool_init (Don Dutile) [1738631] - [kernel] dma-mapping: fix lack of DMA address assignment in generic remap allocator (Don Dutile) [1738631] - [kernel] dma-remap: support DMA_ATTR_NO_KERNEL_MAPPING (Don Dutile) [1738631] - [kernel] dma-mapping: support highmem in the generic remap allocator (Don Dutile) [1738631] - [kernel] dma-direct: handle DMA_ATTR_NON_CONSISTENT in common code (Don Dutile) [1738631] - [kernel] dma-mapping: add a dma_alloc_need_uncached helper (Don Dutile) [1738631] - [kernel] dma-mapping: truncate dma masks to what dma_addr_t can hold (Don Dutile) [1738631] - [kernel] dma-remap: Avoid de-referencing NULL atomic_pool (Don Dutile) [1738631] - [include] dma-buf: add DMA_BUF_SET_NAME ioctls (Don Dutile) [1738631] - [include] dma-buf: give each buffer a full-fledged inode (Don Dutile) [1738631] - [fs] new wrapper: alloc_file_pseudo() (Don Dutile) [1738631] - [kernel] dma-direct: provide generic support for uncached kernel segments (Don Dutile) [1738631] - [include] dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, free}_contiguous() (Don Dutile) [1738631] - [kernel] dma-contiguous: use fallback alloc_pages for single pages (Don Dutile) [1738631] - [kernel] dma-contiguous: add dma_{alloc,free}_contiguous() helpers (Don Dutile) [1738631] - [iommu] iommu/dma: Fix condition check in iommu_dma_unmap_sg (Don Dutile) [1738631] - [iommu] iommu/dma: move the arm64 wrappers to common code (Don Dutile) [1738631] - [iommu] iommu/dma-iommu.c: convert to use vm_map_pages() (Don Dutile) [1738631] - [mm] mm: introduce new vm_map_pages() and vm_map_pages_zero() API (Don Dutile) [1738631] - [mm] arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable (Don Dutile) [1738631] - [arm64] arm64/mm: wire up CONFIG_ARCH_HAS_SET_DIRECT_MAP (Don Dutile) [1738631] - [kernel] mm/hibernation: Make hibernation handle unmapped pages (Don Dutile) [1738631] - [mm] page_poison: play nicely with KASAN (Don Dutile) [1738631] - [mm] mm/vmalloc: Avoid rare case of flushing TLB with weird arguments (Don Dutile) [1738631] - [mm] mm/vmalloc: Fix calculation of direct map addr range (Don Dutile) [1738631] - [mm] mm/vmalloc: Add flag for freeing of special permsissions (Don Dutile) [1738631] - [x86] x86/mm/cpa: Add set_direct_map_*() functions (Don Dutile) [1738631] - [arm64] dma-mapping: add a kconfig symbol for arch_setup_dma_ops availability (Don Dutile) [1738631] - [iommu] iommu/dma: Remove the flush_page callback (Don Dutile) [1738631] - [include] iommu/dma: Cleanup dma-iommu.h (Don Dutile) [1738631] - [dma] dmaengine: Add matching device node validation in __dma_request_channel() (Don Dutile) [1738631] - [dma] dmaengine: dma_request_chan_by_mask() to handle deferred probing (Don Dutile) [1738631] - [include] dma-buf: start caching of sg_table objects v2 (Don Dutile) [1738631] - [kernel] dma-mapping: add a Kconfig symbol to indicate arch_dma_prep_coherent presence (Don Dutile) [1738631] - [iommu] iommu/dma-iommu: Remove iommu_dma_map_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/ls-scfg-msi: Don't map the MSI page in ls_scfg_msi_compose_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-mbi: Don't map the MSI page in mbi_compose_m{b, s}i_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gicv2m: Don't map the MSI page in gicv2m_compose_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-its: Don't map the MSI page in its_irq_compose_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size (Don Dutile) [1738631] - [iommu] iommu/dma-iommu: Split iommu_dma_map_msi_msg() in two parts (Don Dutile) [1738631] - [iommu] iommu/dma: Remove unused variable (Don Dutile) [1738631] - [iommu] iommu/dma: Use NUMA aware memory allocations in __iommu_dma_alloc_pages() (Don Dutile) [1738631] - [kernel] genirq/msi: Add a new field in msi_desc to store an IOMMU cookie (Don Dutile) [1738631] - [pci] PCI/MSI: Remove unused mask_msi_irq() and unmask_msi_irq() (Don Dutile) [1738631] - [include] PCI/MSI: Remove unused __write_msi_msg() and write_msi_msg() (Don Dutile) [1738631] - [include] genirq/msi: Clean up usage of __u8/__u16 types (Don Dutile) [1738631] - [base] platform-msi: Free descriptors in platform_msi_domain_free() (Don Dutile) [1738631] - [base] genirq/msi: Allow creation of a tree-based irqdomain for platform-msi (Don Dutile) [1738631] - [kernel] dma-debug: only skip one stackframe entry (Don Dutile) [1738631] - [dma] dmaengine: idma64: Move driver name to the header (Don Dutile) [1738631] - [kernel] dma-mapping: remove an unnecessary NULL check (Don Dutile) [1738631] - [include] dma-buf: Update [un]map documentation to match the other functions (Don Dutile) [1738631] - [include] dma-buf: Remove leftover [un]map_atomic comments (Don Dutile) [1738631] - [x86] x86/dma: Remove the x86_dma_fallback_dev hack (Don Dutile) [1738631] - [kernel] dma-mapping: remove leftover NULL device support (Don Dutile) [1738631] - [kernel] dma: select GENERIC_ALLOCATOR for DMA_REMAP (Don Dutile) [1738631] - [crypto] crypto: ccp - Ignore unconfigured CCP device on suspend/resume (Gary Hook) [1743999] - [md] dm snapshot: fix oversights in optional discard support (Mike Snitzer) [1744291] - [md] dm snapshot: add optional discard support features (Mike Snitzer) [1744291] - [md] dm snapshot: Use fine-grained locking scheme (Mike Snitzer) [1744291] - [md] dm snapshot: Make exception tables scalable (Mike Snitzer) [1744291] - [md] dm snapshot: Replace mutex with rw semaphore (Mike Snitzer) [1744291] - [md] dm snapshot: Don't sleep holding the snapshot lock (Mike Snitzer) [1744291] - [include] list_bl: Add hlist_bl_add_before/behind helpers (Mike Snitzer) [1744291] - [powerpc] powerpc/rtas: use device model APIs and serialization during LPM (Steve Best) [1741643] - [firmware] firmware/efi: Add NULL pointer checks in efivars API functions (Jarod Wilson) [1741949] - [fs] ovl: fix wrong flags check in FS_IOC_FS[SG]ETXATTR ioctls (Miklos Szeredi) [1724518] - [include] mm: page_cache_add_speculative(): refactor out some code duplication (Michael Petlan) [1738331] - [netdrv] ibmvnic: Unmap DMA address of TX descriptor buffers after use (Steve Best) [1743155] - [fs] NFSv4.1 don't free interrupted slot on open (Steve Dickson) [1708345] - [fs] NFSv4.1: Avoid false retries when RPC calls are interrupted (Steve Dickson) [1708345] - [net] ipv6: Fix return value of ipv6_mc_may_pull() for malformed packets (Stefano Brivio) [1743203] - [net] inet: frags: re-introduce skb coalescing for local delivery (Guillaume Nault) [1719418]- [net] xfrm: fix sa selector validation (Sabrina Dubroca) [1738871] - [net] xfrm: Fix xfrm sel prefix length validation (Sabrina Dubroca) [1738871] - [kernel] locking/rwsem: Prevent decrement of reader count before increment (Waiman Long) [1740338] - [include] include/list: Backport list_cut_before() (Waiman Long) [1740338] - [vhost] vhost: vsock: add weight support (Jason Wang) [1738494] - [vhost] vhost_net: fix possible infinite loop (Jason Wang) [1738494] - [vhost] vhost: introduce vhost_exceeds_weight() (Jason Wang) [1738494] - [vhost] vhost: reject zero size iova range (Jason Wang) [1738494] - [vhost] vhost: silence an unused-variable warning (Jason Wang) [1738494] - [vhost] vhost: correctly check the return value of translate_desc() in log_used() (Jason Wang) [1738494] - [vhost] vhost: return EINVAL if iovecs size does not match the message size (Jason Wang) [1738494] - [vhost] Revert "net: vhost: lock the vqs one by one" (Jason Wang) [1738494] - [vhost] vhost_net: switch to use mutex_trylock() in vhost_net_busy_poll() (Jason Wang) [1738494] - [vhost] vhost: make sure used idx is seen before log in vhost_add_used_n() (Jason Wang) [1738494] - [vhost] vhost: fix IOTLB locking (Jason Wang) [1738494] - [netdrv] tun: wake up waitqueues after IFF_UP is set (Jason Wang) [1738494] - [netdrv] tuntap: synchronize through tfiles array instead of tun->numqueues (Jason Wang) [1738494] - [netdrv] tuntap: fix dividing by zero in ebpf queue selection (Jason Wang) [1738494] - [netdrv] tun: Remove unused first parameter of tun_get_iff() (Jason Wang) [1738494] - [netdrv] tun: Add ioctl() TUNGETDEVNETNS cmd to allow obtaining real net ns of tun device (Jason Wang) [1738494] - [netdrv] tun: add a missing rcu_read_unlock() in error path (Jason Wang) [1738494] - [netdrv] tun: properly test for IFF_UP (Jason Wang) [1738494] - [netdrv] tun: remove unnecessary memory barrier (Jason Wang) [1738494] - [netdrv] tun: fix blocking read (Jason Wang) [1738494] - [netdrv] tun: move the call to tun_set_real_num_queues (Jason Wang) [1738494] - [netdrv] tun: publish tfile after it's fully initialized (Jason Wang) [1738494] - [netdrv] tun: replace get_cpu_ptr with this_cpu_ptr when bh disabled (Jason Wang) [1738494] - [netdrv] tun: remove skb access after netif_receive_skb (Jason Wang) [1738494] - [netdrv] tun: remove unnecessary check in tun_flow_update (Jason Wang) [1738494] - [netdrv] tuntap: fix multiqueue rx (Jason Wang) [1738494] - [netdrv] tun: Adjust on-stack tun_page initialization. (Jason Wang) [1738494] - [netdrv] tuntap: free XDP dropped packets in a batch (Jason Wang) [1738494] - [vhost] vhost_net: mitigate page reference counting during page frag refill (Jason Wang) [1738494] - [vhost] net: vhost: remove bad code line (Jason Wang) [1738494] - [vhost] net: vhost: add rx busy polling in tx path (Jason Wang) [1738494] - [vhost] net: vhost: factor out busy polling logic to vhost_net_busy_poll() (Jason Wang) [1738494] - [vhost] net: vhost: replace magic number of lock annotation (Jason Wang) [1738494] - [vhost] net: vhost: lock the vqs one by one (Jason Wang) [1738494] - [vhost] vhost_net: add a missing error return (Jason Wang) [1738494] - [netdrv] net: tun: remove useless codes of tun_automq_select_queue (Jason Wang) [1738494] - [vhost] vhost_net: batch submitting XDP buffers to underlayer sockets (Jason Wang) [1738494] - [netdrv] tap: accept an array of XDP buffs through sendmsg() (Jason Wang) [1738494] - [netdrv] tuntap: accept an array of XDP buffs through sendmsg() (Jason Wang) [1738494] - [netdrv] tun: switch to new type of msg_control (Jason Wang) [1738494] - [netdrv] tuntap: move XDP flushing out of tun_do_xdp() (Jason Wang) [1738494] - [netdrv] tuntap: split out XDP logic (Jason Wang) [1738494] - [netdrv] tuntap: tweak on the path of skb XDP case in tun_build_skb() (Jason Wang) [1738494] - [netdrv] tuntap: simplify error handling in tun_build_skb() (Jason Wang) [1738494] - [netdrv] tuntap: enable bh early during processing XDP (Jason Wang) [1738494] - [netdrv] tuntap: switch to use XDP_PACKET_HEADROOM (Jason Wang) [1738494] - [netdrv] net: sock: introduce SOCK_XDP (Jason Wang) [1738494] - [vhost] vhost: correctly check the iova range when waking virtqueue (Jason Wang) [1738494] - [vhost] vhost: switch to use new message format (Jason Wang) [1738494] - [vhost] vhost_net: batch update used ring for datacopy TX (Jason Wang) [1738494] - [vhost] vhost_net: rename VHOST_RX_BATCH to VHOST_NET_BATCH (Jason Wang) [1738494] - [vhost] vhost_net: rename vhost_rx_signal_used() to vhost_net_signal_used() (Jason Wang) [1738494] - [vhost] vhost_net: split out datacopy logic (Jason Wang) [1738494] - [vhost] vhost_net: introduce tx_can_batch() (Jason Wang) [1738494] - [vhost] vhost_net: introduce get_tx_bufs() (Jason Wang) [1738494] - [vhost] vhost_net: introduce vhost_exceeds_weight() (Jason Wang) [1738494] - [vhost] vhost_net: introduce helper to initialize tx iov iter (Jason Wang) [1738494] - [vhost] vhost_net: drop unnecessary parameter (Jason Wang) [1738494] - [vhost] vhost_net: Avoid rx vring kicks during busyloop (Jason Wang) [1738494] - [vhost] vhost_net: Avoid rx queue wake-ups during busypoll (Jason Wang) [1738494] - [vhost] vhost_net: Avoid tx vring kicks during busyloop (Jason Wang) [1738494] - [vhost] vhost_net: Rename local variables in vhost_net_rx_peek_head_len (Jason Wang) [1738494] - [mm] x86/mm/fault: Allow stack access below rsp (Waiman Long) [1739341] - [mm] x86/mm: Clarify hardware vs. software "error_code" (Waiman Long) [1739341] - [net] libceph: handle an empty authorize reply (Ilya Dryomov) [1720582]- [drm] drm: Don't retry infinitely when receiving no data on i2c over AUX (Lyude Paul) [1672361] - [scsi] scsi: hpsa: update revision to RH3 (Joseph Szczypek) [1739615] - [scsi] scsi: hpsa: remove printing internal cdb on tag collision (Joseph Szczypek) [1739615] - [scsi] scsi: hpsa: correct scsi command status issue after reset (Joseph Szczypek) [1739615] - [scsi] hpsa: docs: fix broken doc references due to renames (Joseph Szczypek) [1739615] - [scsi] hpsa: docs: pci: fix broken links due to conversion from pci.txt to pci.rst (Joseph Szczypek) [1739615]- [drm] drm/nouveau: Only recalculate PBN/VCPI on mode/connector changes (Lyude Paul) [1734452 1734444] - [drm] drm/nouveau: Only release VCPI slots on mode changes (Lyude Paul) [1734452 1734444] - [infiniband] RDMA/srp: turn off 'use_imm_data' by default (Honggang Li) [1725158] - [gpu] vga_switcheroo: Fix missing gpu_bound call at audio client registration (Lyude Paul) [1739727] - [net] Bluetooth: Fix faulty expression for minimum encryption key size check (Gopal Tiwari) [1743076] {CVE-2019-9506} - [net] Bluetooth: Fix regression with minimum encryption key size alignment (Gopal Tiwari) [1743076] {CVE-2019-9506} - [net] Bluetooth: Align minimum encryption key size for LE and BR/EDR connections (Gopal Tiwari) [1743076] {CVE-2019-9506}- [rpmspec] perf: package tips.txt (Michael Petlan) [1663816] - [mm] mm/memblock.c: skip kmemleak for kasan_init() (Mark Langsdorf) [1722741] - [kernel] mm/resource: Return real error codes from walk failures (Kairui Song) [1740443] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 (Michael Petlan) [1733231] - [tools] selftests/powerpc: Fix Makefiles for headers_install change (Steve Best) [1740127] - [tools] selftests/powerpc: Add more version checks to alignment_handler test (Steve Best) [1740127] - [tools] selftests/powerpc: Skip earlier in alignment_handler test (Steve Best) [1740127] - [tools] selftests/powerpc: Consolidate copy/paste test logic (Steve Best) [1740127] - [s390] s390/bpf: use 32-bit index for tail calls (Yauheni Kaliuta) [1719377] - [s390] s390/bpf: fix lcgr instruction encoding (Yauheni Kaliuta) [1719377] - [tools] selftests/bpf: fix "alu with different scalars 1" on s390 (Yauheni Kaliuta) [1719377] - [net] bpf: fix use after free in bpf_evict_inode (Yauheni Kaliuta) [1719377] - [arm64] bpf, arm64: remove prefetch insn in xadd mapping (Yauheni Kaliuta) [1719377] - [scsi] scsi: lpfc: Fix crash when cpu count is 1 and null irq affinity mask (Dick Kennedy) [1720905] - [md] md: add bitmap_abort label in md_run (Nigel Croxon) [1721944] - [md] md-bitmap: create and destroy wb_info_pool with the change of bitmap (Nigel Croxon) [1721944] - [md] md-bitmap: create and destroy wb_info_pool with the change of backlog (Nigel Croxon) [1721944] - [md] md: introduce mddev_create/destroy_wb_pool for the change of member device (Nigel Croxon) [1721944] - [md] md/raid1: fix potential data inconsistency issue with write behind device (Nigel Croxon) [1721944] - [md] md: fix for divide error in status_resync (Nigel Croxon) [1721944] - [md] md/raid10: read balance chooses idlest disk for SSD (Nigel Croxon) [1721944] - [md] md: raid1-10: Unify r{1,10}bio_pool_free (Nigel Croxon) [1721944] - [md] md: raid10: Use struct_size() in kmalloc() (Nigel Croxon) [1721944] - [md] md/raid1: get rid of extra blank line and space (Nigel Croxon) [1721944] - [md] md: fix spelling typo and add necessary space (Nigel Croxon) [1721944] - [md] md: md.c: Return -ENODEV when mddev is NULL in rdev_attr_show (Nigel Croxon) [1721944] - [md] raid5-cache: Need to do start() part job after adding journal device (Nigel Croxon) [1721944] - [md] drivers: md: Unify common definitions of raid1 and raid10 (Nigel Croxon) [1721944] - [kernel] userfaultfd: use RCU to free the task struct when fork fails (Andrea Arcangeli) [1718498]- [efi] efi/arm: Revert "Defer persistent reservations until after paging_init()" (Mark Salter) [1699961] - [s390] s390/ipl: Fix detection of has_secure attribute (Philipp Rudo) [1740653] - [fs] xfs: don't crash on null attr fork xfs_bmapi_read (Bill O'Donnell) [1719094] - [powerpc] powerpc/mm: Don't report PUDs as memory leaks when using kmemleak (Desnes Augusto Nunes do Rosario) [1716952] - [x86] kvm: x86: introduce is_pae_paging (Vitaly Kuznetsov) [1720556] - [s390] s390/kasan: Fix recursion loop when triggering kdump (Philipp Rudo) [1740249] - [s390] s390/dasd: fix endless loop after read unit address configuration (Philipp Rudo) [1740251] - [tools] selftests/powerpc: Give some tests longer to run (Steve Best) [1740420] - [nvme] nvme-rdma: use dynamic dma mapping per command (David Milburn) [1738252] - [nvme] nvme-rdma: remove redundant reference between ib_device and tagset (David Milburn) [1738252] - [x86] kvm: svm/avic: Do not send AVIC doorbell to self (Janakarajan Natarajan) [1720981] - [net] tipc: initialise addr_trial_end when setting node addresses (Jon Maloy) [1740317] - [net] tipc: ensure head->lock is initialised (Jon Maloy) [1740317] - [net] netfilter: nf_tables: fix oops during rule dump (Stefano Brivio) [1739734] - [include] netfilter: nf_tables: correct NFT_LOGLEVEL_MAX value (Stefano Brivio) [1739734] - [net] netfilter: nft_compat: do not dump private area (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: fix register ordering (Stefano Brivio) [1739734] - [net] ipvs: defer hook registration to avoid leaks (Stefano Brivio) [1739734] - [net] ipvs: Fix use-after-free in ip_vs_in (Stefano Brivio) [1739734] - [net] netfilter: nf_conntrack_h323: restore boundary check correctness (Stefano Brivio) [1739734] - [net] netfilter: fix nf_l4proto_log_invalid to log invalid packets (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: prevent shift wrap in nft_chain_parse_hook() (Stefano Brivio) [1739734] - [net] netfilter: nft_set_rbtree: check for inactive element after flag mismatch (Stefano Brivio) [1739734] - [net] netfilter: nft_compat: use-after-free when deleting targets (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: fix leaking object reference count (Stefano Brivio) [1739734] - [net] ip6_gre: reload ipv6h in prepare_ip6gre_xmit_ipv6 (Stefano Brivio) [1739640] - [net] ipv6: Unlink sibling route in case of failure (Stefano Brivio) [1739640] - [net] ipv6: Default fib6_type to RTN_UNICAST when not set (Stefano Brivio) [1739640] - [net] inet: frags: call inet_frags_fini() after unregister_pernet_subsys() (Stefano Brivio) [1739640] - [net] ipv6: flowlabel: fl6_sock_lookup() must use atomic_inc_not_zero (Stefano Brivio) [1739640] - [net] netfilter: ipset: Fix rename concurrency with listing (Stefano Brivio) [1739578] - [net] netfilter: ipset: Fix error path in set_target_v3_checkentry() (Stefano Brivio) [1739578] - [net] netfilter: ipset: Fix the last missing check of nla_parse_deprecated() (Stefano Brivio) [1739578] - [net] netfilter: ipset: fix a missing check of nla_parse (Stefano Brivio) [1739578] - [netdrv] ipvlan, l3mdev: fix broken l3s mode wrt local routes (Guillaume Nault) [1738329] - [net] sched: use temporary variable for actions indexes (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] sched: cbs: Fix error path of cbs_module_init (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] netem: fix use after free and double free with packet corruption (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] netem: fix backlog accounting for corrupted GSO frames (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [netdrv] macsec: fix checksumming after decryption (Sabrina Dubroca) [1738237] - [netdrv] macsec: fix use-after-free of skb during RX (Sabrina Dubroca) [1738237] - [net] xfrm interface: fix memory leak on creation (Sabrina Dubroca) [1738267] - [net] tls: fix socket wmem accounting on fallback with netem (Sabrina Dubroca) [1739260] - [net] tls: fix poll ignoring partially copied records (Sabrina Dubroca) [1739260] - [net] tls: make sure offload also gets the keys wiped (Sabrina Dubroca) [1739260] - [net] tls: reject offload of TLS 1.3 (Sabrina Dubroca) [1739260] - [net] tls: fix page double free on TX cleanup (Sabrina Dubroca) [1739260] - [net] tls, correctly account for copied bytes with multiple sk_msgs (Sabrina Dubroca) [1739260] - [net] tcp: fix tcp_set_congestion_control() use from bpf hook (Guillaume Nault) [1738272] - [net] tcp: Reset bytes_acked and bytes_received when disconnecting (Guillaume Nault) [1738272] - [net] tcp: Ensure DCTCP reacts to losses (Guillaume Nault) [1738272] - [net] tcp: tcp_v4_err() should be more careful (Guillaume Nault) [1738272] - [net] tcp: avoid resetting ACK timer upon receiving packet with ECN CWR flag (Guillaume Nault) [1738272] - [net] tcp: always ACK immediately on hole repairs (Guillaume Nault) [1738272] - [net] tcp: avoid resetting ACK timer in DCTCP (Guillaume Nault) [1738272] - [net] tcp: mandate a one-time immediate ACK (Guillaume Nault) [1738272] - [net] tipc: fix unitilized skb list crash (Xin Long) [1734298] - [net] tipc: compat: allow tipc commands without arguments (Xin Long) [1738397] - [net] sctp: factor out sctp_connect_add_peer (Xin Long) [1738393] - [net] sctp: factor out sctp_connect_new_asoc (Xin Long) [1738393] - [net] sctp: clean up __sctp_connect (Xin Long) [1738393] - [net] sctp: check addr_size with sa_family_t size in __sctp_setsockopt_connectx (Xin Long) [1738393] - [net] sctp: only copy the available addr data in sctp_transport_init (Xin Long) [1738393] - [net] sctp: drop unneeded likely() call around IS_ERR() (Xin Long) [1738393] - [net] sctp: fix warning "NULL check before some freeing functions is not needed" (Xin Long) [1738393] - [net] sctp: remove rcu_read_lock from sctp_bind_addr_state (Xin Long) [1738393] - [net] sctp: rename sp strm_interleave to ep intl_enable (Xin Long) [1738393] - [net] sctp: rename asoc intl_enable to asoc peer.intl_capable (Xin Long) [1738393] - [net] sctp: remove prsctp_enable from asoc (Xin Long) [1738393] - [net] sctp: remove reconf_enable from asoc (Xin Long) [1738393] - [net] sctp: count data bundling sack chunk for outctrlchunks (Xin Long) [1738393] - [net] sctp: fix error handling on stream scheduler initialization (Xin Long) [1738393] - [net] sctp: not bind the socket in sctp_connect (Xin Long) [1738393] - [net] sctp: change to hold sk after auth shkey is created successfully (Xin Long) [1738393] - [net] sctp: Free cookie before we memdup a new one (Xin Long) [1738393] - [net] Fix memory leak in sctp_process_init (Xin Long) [1738393] - [net] sctp: deduplicate identical skb_checksum_ops (Xin Long) [1738393] - [net] sctp: Check address length before reading address family (Xin Long) [1738393] - [net] sctp: Pass sk_buff_head explicitly to sctp_ulpq_tail_event(). (Xin Long) [1738393] - [net] sctp: Make sctp_enqueue_event tak an skb list. (Xin Long) [1738393] - [net] sctp: Use helper for sctp_ulpq_tail_event() when hooked up to ->enqueue_event (Xin Long) [1738393] - [net] sctp: Always pass skbs on a list to sctp_ulpq_tail_event(). (Xin Long) [1738393] - [net] sctp: Remove superfluous test in sctp_ulpq_reasm_drain(). (Xin Long) [1738393] - [netdrv] ppp: Remove direct skb_queue_head list pointer access. (Xin Long) [1738393] - [net] ipv6: fix neighbour resolution with raw socket (Stefano Brivio) [1728320] - [net] ipv6: constify rt6_nexthop() (Stefano Brivio) [1728320] - [net] openvswitch: fix csum updates for MPLS actions (Marcelo Leitner) [1738654] - [net] udp_gso: Allow TX timestamp with UDP GSO (Paolo Abeni) [1738585] - [net] bpf: udp: ipv6: Avoid running reuseport's bpf_prog from __udp6_lib_err (Paolo Abeni) [1738585] - [net] fix ifindex collision during namespace removal (Paolo Abeni) [1738492] - [net] rtnl: return early from rtnl_unregister_all when protocol isn't registered (Paolo Abeni) [1738492] - [net] neigh: fix use-after-free read in pneigh_get_next (Paolo Abeni) [1738492] - [net] socket: set sock->sk to NULL after calling proto_ops::release() (Paolo Abeni) [1738492] - [net] socket: make bond ioctls go through compat_ifreq_ioctl() (Paolo Abeni) [1738492] - [net] socket: fix SIOCGIFNAME in compat (Paolo Abeni) [1738492] - [net] Revert "kill dev_ifsioc()" (Paolo Abeni) [1738492] - [net] revert "socket: fix struct ifreq size in compat ioctl" (Paolo Abeni) [1738492] - [net] ip6_tunnel: fix possible use-after-free on xmit (Guillaume Nault) [1737105] - [net] genetlink: Fix a memory leak on error path (Guillaume Nault) [1737821] - [net] netfilter: ipset: Copy the right MAC address in bitmap:ip, mac and hash:ip, mac sets (Stefano Brivio) [1723605] - [net] netfilter: ipset: Actually allow destination MAC address for hash:ip, mac sets too (Stefano Brivio) [1723605] - [net] igmp: fix memory leak in igmpv3_del_delrec() (Hangbin Liu) [1736816] - [net] don't clear sock->sk early to avoid trouble in strparser (Hangbin Liu) [1736816] - [net] ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST (Hangbin Liu) [1736816] - [net] ipv4/igmp: fix another memory leak in igmpv3_del_delrec() (Hangbin Liu) [1736816] - [net] route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race (Hangbin Liu) [1736816] - [net] netlabel: fix out-of-bounds memory accesses (Hangbin Liu) [1736816] - [net] ipv4: Fix memory leak in network namespace dismantle (Hangbin Liu) [1736816] - [net] bridge: delete local fdb on device init failure (Hangbin Liu) [1736824] - [net] bridge: stp: don't cache eth dest pointer before skb pull (Hangbin Liu) [1736824] - [net] bridge: don't cache ether dest pointer on input (Hangbin Liu) [1736824] - [net] bridge: mcast: fix stale ipv6 hdr pointer when handling v6 query (Hangbin Liu) [1736824] - [net] bridge: mcast: fix stale nsrcs pointer in igmp3/mld2 report handling (Hangbin Liu) [1736824] - [net] bridge: fix per-port af_packet sockets (Hangbin Liu) [1736824] - [include] ip: fix ip_mc_may_pull() return value (Hangbin Liu) [1736824] - [net] bridge: use struct_size() helper (Hangbin Liu) [1736824] - [net] bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() calls (Hangbin Liu) [1736824] - [net] net/bridge/br_multicast: remove redundant variable "err" (Hangbin Liu) [1736824] - [x86] x86/kdump/64: Restrict kdump kernel reservation to <64TB (Baoquan He) [1669090] - [x86] x86/kexec/64: Prevent kexec from 5-level paging to a 4-level only kernel (Baoquan He) [1669088] - [x86] x86/boot: Add xloadflags bits to check for 5-level paging support (Baoquan He) [1669088] - [tools] perf header: Fix wrong node write in NUMA_TOPOLOGY feature (Michael Petlan) [1722044] - [tools] perf c2c: Fix c2c report for empty numa node (Michael Petlan) [1722044] - [x86] kvm: svm/avic: fix off-by-one in checking host APIC ID (Janakarajan Natarajan) [1720983]- [fs] gfs2: gfs2_walk_metadata fix (Andreas Grunbacher) [1724361] - [netdrv] mlx4/en_netdev: allow offloading VXLAN over VLAN (Paolo Abeni) [1733532] - [fs] xfs: always rejoin held resources during defer roll (Bill O'Donnell) [1706588] - [bluetooth] Bluetooth: hci_uart: check for missing tty operations (Gopal Tiwari) [1734239] {CVE-2019-10207}- [documentation] Documentation: Add swapgs description to the Spectre v1 documentation (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [documentation] Documentation: Add section about CPU vulnerabilities for Spectre (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/entry/64: Use JMP instead of JMPQ (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation: Enable Spectre v1 swapgs mitigations (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/cpufeatures: Combine word 11 and 12 into a new scattered features word (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/cpufeatures: Carve out CQM features retrieval (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [netdrv] ibmveth: fix DMA unmap error in ibmveth_xmit_start error path (Steve Best) [1739431] - [rpmspec] rpmspec: use make macro to do headers_install with rpm CFLAGS/LDFLAGS ("Herton R. Krzesinski") [1738659] - [rpmspec] rpmspec: use tools_make for building tools ("Herton R. Krzesinski") [1738659] - [tools] tools gpio: Allow overriding CFLAGS ("Herton R. Krzesinski") [1738659] - [tools] tools thermal tmon: Allow overriding CFLAGS assignments ("Herton R. Krzesinski") [1738659] - [tools] tools iio: Override CFLAGS assignments ("Herton R. Krzesinski") [1738659] - [fs] NFS: Fix dentry revalidation on NFSv4 lookup (Steve Dickson) [1667774] - [fs] pNFS: Avoid read/modify/write when it is not necessary (Benjamin Coddington) [1680649] - [fs] pNFS: Fix potential corruption of page being written (Benjamin Coddington) [1680649] - [fs] gfs2: Inode dirtying fix (Andreas Grunbacher) [1724361] - [net] sunrpc: make visible processing error in bc_svc_process() ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: remove unused xpo_prep_reply_hdr callback ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: remove svc_tcp_bc_class ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: replace svc_serv->sv_bc_xprt by boolean flag ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: use-after-free in svc_process_common() ("J. Bruce Fields") [1660823] {CVE-2018-16884}- [scsi] scsi: implement .cleanup_rq callback (Ming Lei) [1696256] - [md] blk-mq: add callback of .cleanup_rq (Ming Lei) [1696256] - [block] blk-mq: insert rq with DONTPREP to hctx dispatch list when requeue (Ming Lei) [1696256] - [scsi] scsi: core: Fix race on creating sense cache (Ming Lei) [1696256] - [block] blk-mq: balance mapping between present CPUs and queues (Ming Lei) [1733040] - [block] blk-mq: Fix spelling in a source code comment (Ming Lei) [1733040] - [drm] drm/i915: Don't dereference request if it may have been retired when printing (Lyude Paul) [1715997] - [drm] drm/i915/icl: whitelist PS_(DEPTH|INVOCATION)_COUNT (Lyude Paul) [1715997] - [drm] drm/i915: whitelist PS_(DEPTH|INVOCATION)_COUNT (Lyude Paul) [1715997] - [drm] drm/i915: Support flags in whitlist WAs (Lyude Paul) [1715997] - [drm] drm/i915: Disable SAMPLER_STATE prefetching on all Gen11 steppings. (Lyude Paul) [1715997] - [drm] drm/i915/userptr: Acquire the page lock around set_page_dirty() (Lyude Paul) [1715997] - [drm] drm/i915/perf: fix ICL perf register offsets (Lyude Paul) [1715997] - [drm] drm/virtio: Add memory barriers for capset cache. (Lyude Paul) [1715997] - [drm] drm/amd/display: Always allocate initial connector state state (Lyude Paul) [1715997] - [drm] drm/vkms: Forward timer right after drm_crtc_handle_vblank (Lyude Paul) [1715997] - [drm] drm/crc-debugfs: Also sprinkle irqrestore over early exits (Lyude Paul) [1715997] - [drm] drm/crc-debugfs: User irqsafe spinlock in drm_crtc_add_crc_entry (Lyude Paul) [1715997] - [drm] drm/amd/display: Increase Backlight Gain Step Size (Lyude Paul) [1715997] - [drm] drm/amd/display: CS_TFM_1D only applied post EOTF (Lyude Paul) [1715997] - [drm] drm/edid: Fix a missing-check bug in drm_load_edid_firmware() (Lyude Paul) [1715997] - [drm] drm/amdkfd: Fix sdma queue map issue (Lyude Paul) [1715997] - [drm] drm/amdkfd: Fix a potential memory leak (Lyude Paul) [1715997] - [drm] drm/amd/display: Disable ABM before destroy ABM struct (Lyude Paul) [1715997] - [drm] drm/amdgpu/sriov: Need to initialize the HDP_NONSURFACE_BAStE (Lyude Paul) [1715997] - [drm] drm/amdgpu: Reserve shared fence for eviction fence (Lyude Paul) [1715997] - [drm] drm/amd/display: Disable cursor when offscreen in negative direction (Lyude Paul) [1715997] - [drm] drm/amd/display: Fill prescale_params->scale for RGB565 (Lyude Paul) [1715997] - [drm] drm/virtio: set seqno for dma-fence (Lyude Paul) [1715997] - [drivers] dma-buf: Discard old fence_excl on retrying get_fences_rcu for realloc (Lyude Paul) [1715997] - [drivers] dma-buf: balance refcount inbalance (Lyude Paul) [1715997] - [drm] drm/edid: parse CEA blocks embedded in DisplayID (Lyude Paul) [1715997] - [drm] drm/nouveau/i2c: Enable i2c pads & busses during preinit (Lyude Paul) [1715997] - [drm] drm: return -EFAULT if copy_to_user() fails (Lyude Paul) [1715997] - [drm] drm/vmwgfx: fix a warning due to missing dma_parms (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Honor the sg list segment size limitation (Lyude Paul) [1715997] - [drm] drm/virtio: move drm_connector_update_edid_property() call (Lyude Paul) [1715997] - [drm] drm/amdgpu/gfx9: use reset default for PA_SC_FIFO_SIZE (Lyude Paul) [1715997] - [drm] drm/amdgpu: Don't skip display settings in hwmgr_resume() (Lyude Paul) [1717138 1715997] - [drm] drm/amd/powerplay: use hardware fan control if no powerplay fan table (Lyude Paul) [1715997] - [drm] drm/i915/ringbuffer: EMIT_INVALIDATE *before* switch context (Lyude Paul) [1715997] - [drm] drm/i915: Skip modeset for cdclk changes if possible (Lyude Paul) [1715997] - [drm] drm/i915: Remove redundant store of logical CDCLK state (Lyude Paul) [1715997] - [drm] drm/i915: Save the old CDCLK atomic state (Lyude Paul) [1715997] - [drm] drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled (Lyude Paul) [1715997] - [drm] drm/i915: Don't clobber M/N values during fastset check (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Use the backdoor port if the HB port is not available (Lyude Paul) [1715997] - [drm] drm: add fallback override/firmware EDID modes workaround (Lyude Paul) [1715997] - [drm] drm/edid: abstract override/firmware EDID retrieval (Lyude Paul) [1715997] - [drm] drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define() (Lyude Paul) [1715997] - [drm] drm/vmwgfx: integer underflow in vmw_cmd_dx_set_shader() leading to an invalid read (Lyude Paul) [1715997] - [drm] drm/amdgpu: keep stolen memory on picasso (Lyude Paul) [1715997] - [drm] drm/i915/dmc: protect against reading random memory (Lyude Paul) [1715997] - [drm] drm/i915: Fix per-pixel alpha with CCS (Lyude Paul) [1715997] - [drm] drm/i915/dsi: Use a fuzzy check for burst mode clock check (Lyude Paul) [1715997] - [drm] drm/i915/sdvo: Implement proper HDMI audio support for SDVO (Lyude Paul) [1715997] - [drm] drm/amdgpu/{uvd,vcn}: fetch ring's read_ptr after alloc (Lyude Paul) [1715997] - [drm] drm/amd/display: Use plane->color_space for dpp if specified (Lyude Paul) [1715997] - [drm] drm/amd/display: disable link before changing link settings (Lyude Paul) [1715997] - [drm] Revert "drm: allow render capable master with DRM_AUTH ioctls" (Lyude Paul) [1715997] - [drm] drm/amd: fix fb references in async update (Lyude Paul) [1715997] - [drm] drm/i915/gvt: Initialize intel_gvt_gtt_entry in stack (Lyude Paul) [1715997] - [drm] drm: don't block fb changes for async plane updates (Lyude Paul) [1715997] - [drm] drm/i915/gvt: emit init breadcrumb for gvt request (Lyude Paul) [1715997] - [drm] drm/amdgpu: fix ring test failure issue during s3 in vce 3.0 (V2) (Lyude Paul) [1715997] - [drm] drm/amd/display: Add ASICREV_IS_PICASSO (Lyude Paul) [1715997] - [drm] drm/amdgpu/soc15: skip reset on init (Lyude Paul) [1715997] - [include] drm/i915: Fix I915_EXEC_RING_MASK (Lyude Paul) [1715997] - [drm] drm/amdgpu: remove ATPX_DGPU_REQ_POWER_FOR_DISPLAYS check when hotplug-in (Lyude Paul) [1715997] - [drm] drm/radeon: prefer lower reference dividers (Lyude Paul) [1715997] - [drm] drm/amdgpu/psp: move psp version specific function pointers to early_init (Lyude Paul) [1715997] - [drm] drm: add non-desktop quirks to Sensics and OSVR headsets. (Lyude Paul) [1715997] - [drm] drm: add non-desktop quirk for Valve HMDs (Lyude Paul) [1715997] - [drm] drm/cma-helper: Fix drm_gem_cma_free_object() (Lyude Paul) [1715997] - [drm] drm/lease: Make sure implicit planes are leased (Lyude Paul) [1715997] - [drm] drm: Expose "FB_DAMAGE_CLIPS" property to atomic aware user-space only (Lyude Paul) [1715997] - [drm] drm/atomic: Wire file_priv through for property changes (Lyude Paul) [1715997] - [drm] drm/fb-helper: generic: Call drm_client_add() after setup is done (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Don't send drm sysfs hotplug events on initial master set (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Fix compat mode shader operation (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Fix user space handle equal to zero (Lyude Paul) [1715997] - [drm] drm: Wake up next in drm_read() chain if we are forced to putback the event (Lyude Paul) [1715997] - [drm] drm/drv: Hold ref on parent device during drm_device lifetime (Lyude Paul) [1715997] - [drm] drm/amd/display: Reset planes that were disabled in init_pipes (Lyude Paul) [1715997] - [drm] drm/amd/display: Fix exception from AUX acquire failure (Lyude Paul) [1715997] - [drm] drm: writeback: Fix leak of writeback job (Lyude Paul) [1715997] - [drm] drm/amd/display: Set stream->mode_changed when connectors change (Lyude Paul) [1715997] - [drm] drm/amd/display: half bandwidth for YCbCr420 during validation (Lyude Paul) [1715997] - [drm] drm/amd/display: Re-add custom degamma support (Lyude Paul) [1715997] - [drm] drm/amd/display: Fix Divide by 0 in memory calculations (Lyude Paul) [1715997] - [drm] drm/amd/display: add pipe lock during stream update (Lyude Paul) [1715997] - [drm] drm/amd/display: Reset alpha state for planes to the correct values (Lyude Paul) [1715997] - [drm] drm/amd/display: Update ABM crtc state on non-modeset (Lyude Paul) [1715997] - [drm] drm/amd/display: Link train only when link is DP and backend is enabled (Lyude Paul) [1715997] - [drm] drm/amd/display: fix releasing planes when exiting odm (Lyude Paul) [1715997] - [drm] drm/amd/display: Prevent cursor hotspot overflow for RV overlay planes (Lyude Paul) [1715997] - [drm] drm/amd/display: use proper formula to calculate bandwidth from timing (Lyude Paul) [1715997] - [drm] drm/amdgpu: fix old fence check in amdgpu_fence_emit (Lyude Paul) [1715997] - [drm] drm/nouveau/bar/nv50: ensure BAR is mapped (Lyude Paul) [1715997] - [pci] PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken (Lyude Paul) [1715997] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty (Waiman Long) [1737089] - [tools] perf vendor events power9: Added missing event descriptions (Michael Petlan) [1581405] - [crypto] crypto: skcipher - fix crash flushing dcache in error path (David Gibson) [1724370] - [netdrv] bnx2x: Prevent load reordering in tx completion processing (Manish Chopra) [1729599] - [x86] x86/boot/KASLR: Always return a value from process_mem_region (Baoquan He) [1564822] - [x86] x86/kexec: Add the ACPI NVS region to the ident map (Baoquan He) [1564822] - [x86] x86/boot: Call get_rsdp_addr() after console_init() (Baoquan He) [1564822] - [x86] x86/boot: Use efi_setup_data for searching RSDP on kexec-ed kernels (Baoquan He) [1564822] - [x86] x86/kexec: Add the EFI system tables and ACPI tables to the ident map (Baoquan He) [1564822] - [x86] x86/boot: Fix incorrect ifdeffery scope (Baoquan He) [1564822] - [x86] x86/boot: Correct RSDP parsing with 32-bit EFI (Baoquan He) [1564822] - [x86] x86/boot: Fix randconfig build error due to MEMORY_HOTREMOVE (Baoquan He) [1564822] - [x86] x86/boot: Fix cmdline_find_option() prototype visibility (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Limit KASLR to extract the kernel in immovable memory only (Baoquan He) [1564822] - [x86] x86/boot: Parse SRAT table and count immovable memory regions (Baoquan He) [1564822] - [x86] x86/boot: Early parse RSDP and save it in boot_params (Baoquan He) [1564822] - [x86] x86/boot: Search for RSDP in memory (Baoquan He) [1564822] - [x86] x86/boot: Search for RSDP in the EFI tables (Baoquan He) [1564822] - [x86] x86/boot: Add "acpi_rsdp=" early parsing (Baoquan He) [1564822] - [x86] x86/boot: Copy kstrtoull() to boot/string.c (Baoquan He) [1564822] - [x86] x86/boot: Use CC_SET()/CC_OUT() instead of open coding it (Baoquan He) [1564822] - [x86] x86/boot: Build the command line parsing code unconditionally (Baoquan He) [1564822] - [x86] x86/boot: Clear RSDP address in boot_params for broken loaders (Baoquan He) [1564822] - [x86] x86/acpi, x86/boot: Take RSDP address from boot params if available (Baoquan He) [1564822] - [x86] x86/boot: Mostly revert commit ae7e1238e68f2a ("Add ACPI RSDP address to setup_header") (Baoquan He) [1564822] - [x86] x86/acpi, x86/boot: Take RSDP address for boot params if available (Baoquan He) [1564822] - [x86] x86/boot: Add ACPI RSDP address to setup_header (Baoquan He) [1564822] - [x86] x86/xen: Fix boot loader version reported for PVH guests (Baoquan He) [1564822] - [x86] x86/boot: Add missing va_end() to die() (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Remove return value from handle_mem_options() (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Make local variable mem_limit static (Baoquan He) [1564822] - [crypto] crypto: user - prevent operating on larval algorithms (Herbert Xu) [1728835]- [scsi] scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA (Tomas Henzl) [1734769] - [netdrv] bonding: Force slave speed check after link state recovery for 802.3ad (Jarod Wilson) [1732820] - [pci] PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary (Mohammed Gamal) [1733302] - [pci] PCI: hv: Add hv_pci_remove_slots() when we unload the driver (Mohammed Gamal) [1733302] - [pci] PCI: hv: Fix a use-after-free bug in hv_eject_device_work() (Mohammed Gamal) [1733302] - [pci] PCI: hv: Fix a memory leak in hv_eject_device_work() (Mohammed Gamal) [1733302] - [nvme] nvmet: fix setting ns queue's segment boundary (Ming Lei) [1734458]- [tools] perf script python: Remove explicit shebang from setup.py (Michael Petlan) [1664768 1663814] - [tools] perf script python: Remove explicit shebang from tests/attr.c (Michael Petlan) [1664768 1663814] - [tools] perf script python: Remove explicit shebang from Python scripts (Michael Petlan) [1664768 1663814] - [tools] perf script python: Use PyBytes for attr in trace-event-python (Michael Petlan) [1664768 1663814] - [tools] perf script python: Add trace_context extension module to sys.modules (Michael Petlan) [1663814 1664768] - [tools] perf scripts python: exported-sql-viewer.py: Fix python3 support (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to export-to-sqlite.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to export-to-postgresql.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to exported-sql-viewer.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to intel-pt-events.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to event_analyzing_sample.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: add Python3 support to check-perf-trace.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to futex-contention.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Remove mixed indentation (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to syscall-counts-by-pid.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to syscall-counts.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to stackcollapse.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to sctop.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to powerpc-hcalls.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to net_dropmonitor.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to mem-phys-addr.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to failed-syscalls-by-pid.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to netdev-times.py (Michael Petlan) [1663814 1664768] - [powerpc] mm_iommu: Allow pinning large regions (David Gibson) [1629531] - [powerpc] mm_iommu: Fix potential deadlock (David Gibson) [1629531] - [powerpc] mm/iommu: allow large IOMMU page size only for hugetlb backing (David Gibson) [1629531] - [powerpc] mm/iommu: allow migration of cma allocated pages during mm_iommu_do_alloc (David Gibson) [1629531] - [mm] update get_user_pages_longterm to migrate pages allocated from CMA region (David Gibson) [1629531] - [kernel] mm/cma: add PF flag to force non cma alloc (David Gibson) [1629531] - [net] tcp: be more careful in tcp_fragment() (Marcelo Leitner) [1732103] - [net] tipc: initialize 'validated' field of received packets (Jon Maloy) [1730574] - [documentation] networking: fix default_ttl typo in mpls-sysctl (Hangbin Liu) [1724882]- [powerpc] powerpc/mm: Limit rma_size to 1TB when running without HV mode (Suraj Jitindar Singh) [1723297] - [x86] kvm: nvmx: Set cached_vmcs12 and cached_shadow_vmcs12 NULL after free (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: do not use dangling shadow VMCS after guest reset (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Clear pending KVM_REQ_GET_VMCS12_PAGES when leaving nested (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Change KVM_STATE_NESTED_EVMCS to signal vmcs12 is copied from eVMCS (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Allow restore nested-state to enable eVMCS when vCPU in SMM (Paolo Bonzini) [1732096] - [tools] kvm: nvmx: reorganize initial steps of vmx_set_nested_state (Paolo Bonzini) [1732096] - [x86] kvm: x86: Modify struct kvm_nested_state to have explicit fields for data (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Clear nested_run_pending if setting nested state fails (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: really fix the size checks on KVM_SET_NESTED_STATE (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Set nested_run_pending in vmx_set_nested_state after checks complete (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: KVM_SET_NESTED_STATE - Tear down old EVMCS state before setting new state (Paolo Bonzini) [1732096] - [tools] kvm: selftests: avoid type punning (Paolo Bonzini) [1732096] - [tools] tests: kvm: Add tests for KVM_SET_NESTED_STATE (Paolo Bonzini) [1732096] - [x86] kvm: x86/mmu: Allocate PAE root array when using SVM's 32-bit NPT (Paolo Bonzini) [1732096] - [x86] kvm: lapic: Fix pending interrupt in IRR blocked by software disable LAPIC (Paolo Bonzini) [1732096] - [x86] kvm: x86: Dynamically allocate user_fpu (Paolo Bonzini) [1732096] - [x86] revert "kvm: x86: Use task structs fpu field for user" (Paolo Bonzini) [1732096] - [x86] hyperv: suppress "pci: fatal: No config space access function found" (Raghavendra Rao) [1734265] - [powerpc] [kvm] kvm: ppc: book3s hv: Save and restore guest visible PSSCR bits on pseries (Suraj Jitindar Singh) [1710726] - [powerpc] pmu: Set pmcregs_in_use in paca when running as LPAR (Suraj Jitindar Singh) [1710726] - [powerpc] [kvm] kvm: ppc: book3s hv: Always save guest pmu for guest capable of nesting (Suraj Jitindar Singh) [1710726] - [powerpc] kvm: ppc: book3s hv: xive: fix rollback when kvmppc_xive_create fails (David Gibson) [1731900] - [powerpc] powerpc/pseries: Fix xive=off command line (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: don't use string functions from lib/ (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc: remove CONFIG_CMDLINE #ifdef mess (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc: Move `path` variable inside DEBUG_PROM (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Generate "phandle" instead of "linux, phandle" (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Move a few remaining statics to appropriate sections (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Move prom_radix_disable to __prombss (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Remove support for OPAL v2 (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Replace __initdata with __prombss when applicable (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Make of_workarounds static (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle (David Gibson) [1730183] - [powerpc] powerpc/powernv/idle: Restore IAMR after idle (David Gibson) [1730183]- [kernel] fork: report pid exhaustion correctly (Don Dutile) [1726448] - [lib] idr: Fix idr_get_next race with idr_remove (Don Dutile) [1726448] - [kernel] Fix failure path in alloc_pid() (Don Dutile) [1726448] - [target] scsi: iscsi: set auth_protocol back to NULL if CHAP_A value is not supported (Maurizio Lombardi) [1733498]- [infiniband] IB/umem: Add missing down_read on umem_rwsem (Alaa Hleihel) [1733188] - [fs] gfs2: Fix rounding error in gfs2_iomap_page_prepare (Andreas Grunbacher) [1733621] - [s390] s390/qeth: cancel cmd on early error (Philipp Rudo) [1731430] - [s390] s390/qeth: simplify reply object handling (Philipp Rudo) [1731430] - [s390] s390/qeth: release cmd buffer in error paths (Philipp Rudo) [1731430] - [mm] mm: hugetlb: soft-offline: dissolve_free_huge_page() return zero on !PageHuge (Rafael Aquini) [1706088] - [mm] mm: soft-offline: return -EBUSY if set_hwpoison_free_buddy_page() fails (Rafael Aquini) [1706088] - [mm] mm: soft-offline: close the race against page allocation (Rafael Aquini) [1706088] - [mm] mm: fix race on soft-offlining free huge pages (Rafael Aquini) [1706088] - [pci] PCI: Probe bridge window attributes once at enumeration-time (Myron Stowe) [1730763] - [mm] swap_readpage(): avoid blk_wake_io_task() if !synchronous (Ming Lei) [1724016] - [mm] mm/page_io.c: fix polled swap page in (Ming Lei) [1724016] - [include] fs: fix kABI for struct pipe_buf_operations (Miklos Szeredi) [1705007] {CVE-2019-11487} - [fs] fs: prevent page refcount overflow in pipe_buf_get (Miklos Szeredi) [1705007] {CVE-2019-11487} - [mm] mm: prevent get_user_pages() from overflowing page refcount (Miklos Szeredi) [1705007] {CVE-2019-11487} - [include] mm: add 'try_get_page()' helper function (Miklos Szeredi) [1705007] {CVE-2019-11487} - [include] mm: make page ref count overflow check tighter and more explicit (Miklos Szeredi) [1705007] {CVE-2019-11487} - [fs] fuse: call pipe_buf_release() under pipe lock (Miklos Szeredi) [1705007] {CVE-2019-11487} - [kernel] trace: Fix preempt_enable_no_resched() abuse (Phil Auld) [1705550] - [kernel] sched/numa: Fix a possible divide-by-zero (Phil Auld) [1705550] - [kernel] sched/core: Fix buffer overflow in cgroup2 property cpu.max (Phil Auld) [1705550] - [kernel] sched/fair: Remove unused 'sd' parameter from select_idle_smt() (Phil Auld) [1705550] - [kernel] sched/topology: Remove the ::smt_gain field from 'struct sched_domain' cleanups (Phil Auld) [1705550] - [kernel] sched/numa: Remove unused code from update_numa_stats() (Phil Auld) [1705550]- [s390] virtio/s390: fix race on airq_areas[] (Cornelia Huck) [1733499] - [powerpc] powerpc: ignore __GFP_DMA/DMA32 if we left an empty ZONE_DMA/DMA32 enabled for kABI purposes (David Gibson) [1728314] - [netdrv] bnx2x: Disable multi-cos feature. (Manish Chopra) [1679024] - [char] tpm: tpm_ibm_vtpm: Fix unallocated banks (Jerry Snitselaar) [1726126] - [scsi] scsi: ibmvfc: fix WARN_ON during event pool release (Steve Best) [1731133] - [tools] perf vendor events power9: General metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Branch_prediction, instruction_stats, latency, lsu_rejects, memory, prefetch & translation metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Dl1_reloads, instruction_misses, l[23]_stats & pteg_reloads metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Cpi_breakdown & estimated_dcache_miss_cpi metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Translaton & general metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Branch_prediction, latency, bus_stats, instruction_mix & instruction_stats metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Dl1_reload, instruction_misses, l2_stats, lsu_rejects, memory & pteg_reloads metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Cpi_breakdown & estimated_dcache_miss_cpi metrics (Michael Petlan) [1694638] - [powerpc] powerpc/tm: Fix oops on sigreturn on systems without TM (Steve Best) [1732753] - [net] net/mlx5e: Add ndo_set_feature for uplink representor (Alaa Hleihel) [1727708] - [misc] VMCI: Fix integer overflow in VMCI handle arrays (Cathy Avery) [1729587] - [tools] perf version: Fix segfault due to missing OPT_END() (Michael Petlan) [1732065] - [sound] ALSA: hda/realtek - Headphone Mic can't record after S3 (Jaroslav Kysela) [1727676] - [char] random: fix CRNG initialization when random.trust_cpu=1 (Oleksandr Natalenko) [1728583] - [char] random: move rand_initialize() earlier (Oleksandr Natalenko) [1728583] - [char] random: make CPU trust a boot parameter (Oleksandr Natalenko) [1728583] - [char] random: add a config option to trust the CPU's hwrng (Oleksandr Natalenko) [1728583] - [fs] blockdev: Fix livelocks on loop device (Ming Lei) [1683593] - [block] nbd: Use set_blocksize() to set device blocksize (Ming Lei) [1683593] - [kernel] ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME (Aristeu Rozanski) [1730959] {CVE-2019-13272}- [include] linux/printk.h: use DYNAMIC_DEBUG_BRANCH in pr_debug_ratelimited (Mike Snitzer) [1729301] - [include] dm: use printk ratelimiting functions (Mike Snitzer) [1729301] - [md] dm crypt: move detailed message into debug level (Mike Snitzer) [1729301] - [powerpc] powerpc/xive: Fix loop exit-condition in xive_find_target_in_mask() (Steve Best) [1731838] - [s390] s390/qeth: be drop monitor friendly (Philipp Rudo) [1731200] - [s390] s390/cpumf: Add extended counter set definitions for model 8561 and 8562 (Philipp Rudo) [1731195] - [s390] s390/qdio: handle PENDING state for QEBSM devices (Philipp Rudo) [1731194] - [net] net/af_iucv: build proper skbs for HiperTransport (Philipp Rudo) [1731193] - [net] net/af_iucv: remove GFP_DMA restriction for HiperTransport (Philipp Rudo) [1731193] - [wireless] iwlwifi: mvm: disable TX-AMSDU on older NICs (Jarod Wilson) [1728992] - [wireless] carl9170: fix misuse of device driver API (Jarod Wilson) [1728992] - [wireless] p54: fix crash during initialization (Jarod Wilson) [1728992] - [wireless] p54usb: Fix race between disconnect and firmware loading (Jarod Wilson) [1728992] - [wireless] mwifiex: Don't abort on small, spec-compliant vendor IEs (Jarod Wilson) [1728992] - [wireless] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 507 (Jarod Wilson) [1728992] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 505 (Jarod Wilson) [1728992] - [wireless] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 501 (Jarod Wilson) [1728992] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jarod Wilson) [1728992] - [wireless] brcmfmac: sdio: Don't tune while the card is off (Jarod Wilson) [1728992] - [wireless] brcmfmac: sdio: Disable auto-tuning around commands expected to fail (Jarod Wilson) [1728992] - [mmc] mmc: core: Add sdio_retune_hold_now() and sdio_retune_release() (Jarod Wilson) [1728992] - [mmc] mmc: core: API to temporarily disable retuning for SDIO CRC errors (Jarod Wilson) [1728992] - [wireless] Revert "brcmfmac: disable command decode in sdio_aos" (Jarod Wilson) [1728992] - [net] cfg80211: report measurement start TSF correctly (Jarod Wilson) [1728992] - [net] cfg80211: fix memory leak of wiphy device name (Jarod Wilson) [1728992] - [net] cfg80211: util: fix bit count off by one (Jarod Wilson) [1728992] - [net] mac80211: do not start any work during reconfigure flow (Jarod Wilson) [1728992] - [net] cfg80211: use BIT_ULL in cfg80211_parse_mbssid_data() (Jarod Wilson) [1728992] - [net] mac80211: only warn once on chanctx_conf being NULL (Jarod Wilson) [1728992] - [net] mac80211: drop robust management frames from unknown TA (Jarod Wilson) [1728992] - [wireless] mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies() (Jarod Wilson) [1728992 1721749] {CVE-2019-10126} - [wireless] iwlwifi: mvm: change TLC config cmd sent by rs to be async (Jarod Wilson) [1728992] - [wireless] iwlwifi: Fix double-free problems in iwl_req_fw_callback() (Jarod Wilson) [1728992] - [wireless] iwlwifi: fix AX201 killer sku loading firmware issue (Jarod Wilson) [1728992] - [wireless] iwlwifi: print fseq info upon fw assert (Jarod Wilson) [1728992] - [wireless] iwlwifi: clear persistence bit according to device family (Jarod Wilson) [1728992] - [wireless] iwlwifi: fix load in rfkill flow for unified firmware (Jarod Wilson) [1728992] - [wireless] iwlwifi: mvm: remove d3_sram debugfs file (Jarod Wilson) [1728992] - [wireless] mwifiex: Abort at too short BSS descriptor element (Jarod Wilson) [1728992 1714476] {CVE-2019-3846} - [wireless] mwifiex: Fix possible buffer overflows at parsing bss descriptor (Jarod Wilson) [1728992 1714476] {CVE-2019-3846} - [net] mac80211: free peer keys before vif down in mesh (Jarod Wilson) [1728992] - [wireless] rtw88: Make some symbols static (Jarod Wilson) [1728992] - [wireless] rtw88: avoid circular locking between local->iflist_mtx and rtwdev->mutex (Jarod Wilson) [1728992] - [wireless] rtw88: fix unassigned rssi_level in rtw_sta_info (Jarod Wilson) [1728992] - [wireless] rtw88: fix subscript above array bounds compiler warning (Jarod Wilson) [1728992] - [net] mac80211: mesh: fix RCU warning (Jarod Wilson) [1728992] - [net] nl80211: fix station_info pertid memory leak (Jarod Wilson) [1728992] - [net] mac80211: Do not use stack memory with scatterlist for GMAC (Jarod Wilson) [1728992] - [net] {nl,mac}80211: allow 4addr AP operation on crypto controlled devices (Jarod Wilson) [1728992] - [wireless] mac80211_hwsim: mark expected switch fall-through (Jarod Wilson) [1728992] - [net] mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he() (Jarod Wilson) [1728992] - [net] mac80211: remove set but not used variable 'old' (Jarod Wilson) [1728992] - [net] mac80211: handle deauthentication/disassociation from TDLS peer (Jarod Wilson) [1728992] - [net] wireless: Skip directory when generating certificates (Jarod Wilson) [1728992] - [netdrv] i40e: Check and set the PF driver state first in i40e_ndo_set_vf_mac (Stefan Assmann) [1719538] - [fs] cifs: fix crash in smb2_compound_op()/smb2_set_next_command() (Leif Sahlberg) [1722704] - [firmware] efi/arm: Show SMBIOS bank/device location in CPER and GHES error logs (Robert Richter) [1721386]- [x86] x86/speculation: Allow guests to use SSBD even if host does not (Waiman Long) [1728341] - [block] block: kill BLK_MQ_F_SG_MERGE (Ming Lei) [1716595] - [block] block: kill QUEUE_FLAG_NO_SG_MERGE (Ming Lei) [1716595]- [x86] x86/insn-eval: Fix use-after-free access to LDT entry (Rafael Aquini) [1728561] {CVE-2019-13233} - [arm64] arm64/mm: Correct the cache line size warning with non coherent device (Mark Salter) [1715061] - [arm64] arm64: cacheinfo: Update cache_line_size detected from DT or PPTT (Mark Salter) [1715061] - [base] drivers: base: cacheinfo: Add variable to record max cache line size (Mark Salter) [1715061] - [arm64] arm64: cpufeature: Trap CTR_EL0 access only where it is necessary (Mark Salter) [1715061] - [arm64] arm64: cpufeature: Fix handling of CTR_EL0.IDC field (Mark Salter) [1715061] - [arm64] arm64: cpufeature: ctr: Fix cpu capability check for late CPUs (Mark Salter) [1715061] - [arm64] arm64: cpu_errata: Remove ARM64_MISMATCHED_CACHE_LINE_SIZE (Mark Salter) [1715061] - [fs] gfs2: Clean up freeing struct gfs2_sbd (Robert S Peterson) [1683698] - [target] scsi: target/iblock: Fix overrun in WRITE SAME emulation (Maurizio Lombardi) [1729503] - [x86] kvm/nvmx: fix VMCLEAR when Enlightened VMCS is in use (Vitaly Kuznetsov) [1717785] - [x86] kvm/nvmx: don't use clean fields data on enlightened VMLAUNCH (Vitaly Kuznetsov) [1717785] - [x86] kvm: nvmx: use correct clean fields when copying from eVMCS (Vitaly Kuznetsov) [1717785] - [fs] NFS4: Only set creation opendata if O_CREAT (Benjamin Coddington) [1708471] - [tools] perf test: Fix failure of 'evsel-tp-sched' test on s390 (Michael Petlan) [1729213] - [fs] PNFS fallback to MDS if no deviceid found (Benjamin Coddington) [1708386] - [mm] mm, memcg: add a memcg_slabinfo debugfs file (Waiman Long) [1699202] - [mm] mm: memcg/slab: reparent memcg kmem_caches on cgroup removal (Waiman Long) [1699202] - [mm] mm: memcg/slab: stop setting page->mem_cgroup pointer for slab pages (Waiman Long) [1699202] - [mm] mm: memcg/slab: rework non-root kmem_cache lifecycle management (Waiman Long) [1699202] - [mm] mm: memcg/slab: synchronize access to kmem_cache dying flag using a spinlock (Waiman Long) [1699202] - [mm] mm: memcg/slab: don't check the dying flag on kmem_cache creation (Waiman Long) [1699202] - [mm] mm: memcg/slab: unify SLAB and SLUB page accounting (Waiman Long) [1699202] - [mm] mm: memcg/slab: introduce __memcg_kmem_uncharge_memcg() (Waiman Long) [1699202] - [mm] mm: memcg/slab: generalize postponed non-root kmem_cache deactivation (Waiman Long) [1699202] - [mm] mm: memcg/slab: rename slab delayed deactivation functions and fields (Waiman Long) [1699202] - [mm] mm: memcg/slab: postpone kmem_cache memcg pointer initialization to memcg_link_cache() (Waiman Long) [1699202] - [mm] slub: add comments to endif pre-processor macros (Waiman Long) [1699202] - [mm] mm, slab: shorten kmalloc cache names for large sizes (Waiman Long) [1699202] - [base] mm, proc: add KReclaimable to /proc/meminfo (Waiman Long) [1699202] - [mm] mm: rename and change semantics of nr_indirectly_reclaimable_bytes (Waiman Long) [1699202] - [fs] dcache: allocate external names from reclaimable kmalloc caches (Waiman Long) [1699202] - [mm] mm, slab/slub: introduce kmalloc-reclaimable caches (Waiman Long) [1699202] - [mm] mm, slab: combine kmalloc_caches and kmalloc_dma_caches (Waiman Long) [1699202] - [mm] mm: don't warn about large allocations for slab (Waiman Long) [1699202] - [mm] slab: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1699202] - [acpi] ACPI / PM: LPIT: Register sysfs attributes based on FADT (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Quirk to ignore XTAL shutdown (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Add Package cstates residency info (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Add ICL platform support (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc: Sort headers alphabetically (Lenny Szubowicz) [1493461] - [net] Revert "[net] net: openvswitch: Add a new action check_pkt_len" ("Herton R. Krzesinski")- [nvme] nvme-rdma: use nr_phys_segments when map rq to sgl (David Milburn) [1729113] - [nvme] nvme-loop: kill timeout handler (Ming Lei) [1692744] - [netdrv] bnxt_en: Suppress error messages when querying DSCP DCB capabilities. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Cap the returned MSIX vectors to the RDMA driver. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix statistics context reservation logic for RDMA driver. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix ethtool selftest crash under error conditions. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Disable bus master during PCI shutdown and driver unload. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Reduce memory usage when running in kdump kernel. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix possible BUG() condition when calling pci_disable_msix(). (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix aggregation buffer leak under OOM condition. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Improve NQ reservations. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix uninitialized variable usage in bnxt_rx_pkt(). (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix statistics context reservation logic. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Pass correct extended TX port statistics size to firmware. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix possible crash in bnxt_hwrm_ring_free() under error conditions. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Free short FW command HWRM memory in error path in bnxt_init_one() (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Improve multicast address setup logic. (Selvin Xavier) [1727972] - [net] net: openvswitch: Add a new action check_pkt_len (Numan Siddique) [1700733]- [crypto] crypto: vmx - ghash: do nosimd fallback manually (Desnes Augusto Nunes do Rosario) [1729532] - [crypto] crypto: vmx - CTR: always increment IV as quadword (Desnes Augusto Nunes do Rosario) [1729532] - [net] vsock/virtio: fix flush of works during the .remove() (Stefano Garzarella) [1700312] - [net] vsock/virtio: stop workers during the .remove() (Stefano Garzarella) [1700312] - [net] vsock/virtio: use RCU to avoid use-after-free on the_virtio_vsock (Stefano Garzarella) [1700312] - [net] vsock/virtio: Initialize core virtio vsock before registering the driver (Stefano Garzarella) [1700312] - [nvme] nvme-fabrics: document the poll function argument (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: fix queue mapping when queue count is limited (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: rework queue maps handling (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: implement polling queue map (David Milburn) [1727784 1725132] - [nvme] nvme-fabrics: allow nvmf_connect_io_queue to poll (David Milburn) [1727784 1725132] - [hid] HID: multitouch: Add pointstick support for ALPS Touchpad (Benjamin Tissoires) [1672423]- [tools] perf header: Assign proper ff->ph in perf_event__synthesize_features() (Michael Petlan) [1667983] - [pci] PCI/IOV: Assume SR-IOV VFs support extended config space. (Myron Stowe) [1714978] - [pci] Revert "PCI/IOV: Use VF0 cached config space size for other VFs" (Myron Stowe) [1714978] - [x86] x86/crash: Add e820 reserved ranges to kdump kernel's e820 table (Lianbo Jiang) [1630108] - [mm] x86/mm: Rework ioremap resource mapping determination (Lianbo Jiang) [1630108] - [x86] x86/e820, ioport: Add a new I/O resource descriptor IORES_DESC_RESERVED (Lianbo Jiang) [1630108] - [kernel] resource: Fix find_next_iomem_res() iteration issue (Lianbo Jiang) [1630108] - [kernel] resource: Include resource end in walk_*() interfaces (Lianbo Jiang) [1630108] - [x86] x86/kexec: Correct KEXEC_BACKUP_SRC_END off-by-one error (Lianbo Jiang) [1630108] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.3 (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix kernel warnings related to smp_processor_id() (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix BFS crash with DIX enabled (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix FDMI fc4type for nvme support (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix fcp_rsp_len checking on lun reset (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix poor use of hardware queues if fewer irq vectors (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix oops when driver is loaded with 1 interrupt vector (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix incorrect logical link speed on trunks when links down (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix memory leak in abnormal exit path from lpfc_eq_create (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Rework misleading nvme not supported in firmware message (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix hardlockup in scsi_cmd_iocb_cmpl (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Cancel queued work for an IO when processing a received ABTS (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Prevent 'use after free' memory overwrite in nvmet LS handling (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix PT2PT PLOGI collison stopping discovery (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Revert message logging on unsupported topology (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix nvmet handling of received ABTS for unmapped frames (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Separate CQ processing for nvmet_fc upcalls (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Revise message when stuck due to unresponsive adapter (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Correct nvmet buffer free race condition (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix nvmet target abort cmd matching (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix alloc context on oas lun creations (Dick Kennedy) [1717027]- [virt] kvm: fix guest initialization code mismerge (Marcelo Tosatti) [1726487] - [powerpc] powerpc/watchpoint: Restore NV GPRs while returning from exception (Steve Best) [1728557] - [fs] fs/proc/vmcore: Enable dumping of encrypted memory when SEV was active (Lianbo Jiang) [1646810] - [x86] x86/kexec: Set the C-bit in the identity map page table when SEV is active (Lianbo Jiang) [1646810] - [x86] x86/kexec: Do not map kexec area as decrypted when SEV is active (Lianbo Jiang) [1646810] - [mm] x86/mm: Do not use set_{pud, pmd}_safe() when splitting a large page (Lianbo Jiang) [1646810]- [net] sched: protect against stack overflow in TC act_mirred (Ivan Vecera) [1726399] - [net] sched: refactor reinsert action (Ivan Vecera) [1726399] - [net] mpls: Fix 6PE forwarding (Hangbin Liu) [1726533] - [net] make skb_dst_force return true when dst is refcounted (Florian Westphal) [1704809] - [net] ipv4: Fix off-by-one in route dump counter without netlink strict checking (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6: fix suspicious RCU usage in rt6_dump_route() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4: fix suspicious RCU usage in fib_dump_info_fnhe() (Stefano Brivio) [1725383 1725381 1574290] - [net] ip6_fib: Don't discard nodes with valid routing information in fib6_locate_1() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6: Dump route exceptions if requested (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6/route: Change return code of rt6_dump_route() for partial node dumps (Stefano Brivio) [1725383 1725381 1574290] - [net] revert "net/ipv6: Bail early if user only wants cloned entries" (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4: Dump route exceptions if requested (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4/route: Allow NULL flowinfo in rt_fill_info() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4/fib_frontend: Allow RTM_F_CLONED flag to be used for filtering (Stefano Brivio) [1725383 1725381 1574290] - [net] fib_frontend, ip6_fib: Select routes or exceptions dump from RTM_F_CLONED (Stefano Brivio) [1725383 1725381 1574290] - [tools] selftests: bpf: disable test_lwt_seg6local (Jiri Benc) [1716346] - [netdrv] ipvlan: Fix ipvlan device tso disabled while NETIF_F_IP_CSUM is set (Matteo Croce) [1725125] - [netdrv] ipvlan: disallow userns cap_net_admin to change global mode/flags (Matteo Croce) [1725124] - [net] netfilter: nft_fib: Fix existence check support (Phil Sutter) [1680578] - [net] ipset: Fix memory accounting for hash types on resize (Stefano Brivio) [1714111] - [tools] selftests: pmtu: Make list_flush_ipv6_exception test more demanding (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce list_flush_ipv4_exception test case (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce list_flush_ipv6_exception test case (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Add support for routing via nexthop objects (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Move route installs to a new function (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Move running of test into a new function (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Fix encapsulating device in pmtu_vti6_link_change_mtu (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Simplify cleanup and namespace names (Stefano Brivio) [1725384] - [tools] selftests: pmtu.sh: Remove quotes around commands in setup_xfrm (Stefano Brivio) [1725384] - [tools] selftests: Add debugging options to pmtu.sh (Stefano Brivio) [1725384] - [tools] selftests: pmtu: add explicit tests for PMTU exceptions cleanup (Stefano Brivio) [1725384] - [tools] selftests: pmtu: disable DAD in all namespaces (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce FoU and GUE PMTU exceptions tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce tests for IPv4/IPv6 over GENEVE over IPv4/IPv6 (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce tests for IPv4/IPv6 over VXLAN over IPv4/IPv6 (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Add optional traffic captures for single tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Allow selection of single tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: add basic IPv4 and IPv6 PMTU tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: extend MTU parsing helper to locked MTU (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce check_pmtu_value() (Stefano Brivio) [1725384] - [tools] selftests: pmtu: properly redirect stderr to /dev/null (Stefano Brivio) [1725384] - [tools] selftests: pmtu: detect correct binary to ping ipv6 addresses (Stefano Brivio) [1725384] - [net] ipv6: icmp: Updating pmtu for link local route (Guillaume Nault) [1721961] - [net] bridge: Mark FDB entries that were added by user as such (Ivan Vecera) [1724400] - [net] tipc: change to use register_pernet_device (Xin Long) [1719136] - [net] sched: cls_flower: fix infinite loop in fl_walk() (Davide Caratti) [1712739]- [rpmspec] redhat: fix vmlinux debuginfo on ppc64le (Jan Stancek) [1727638] - [powerpc] powerpc/rtas: retry when cpu offline races with suspend/migration (Steve Best) [1727051] - [kernel] arm64/crashkernel: Reduce crashkernel size to 448M by default (Bhupesh Sharma) [1564422]- [scsi] scsi: libiscsi: Fix race between iscsi_xmit_task and iscsi_complete_task (Chris Leech) [1718875] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.2 (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: add check for loss of ndlp when sending RRQ (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: correct rcu unlock issue in lpfc_nvme_info_show (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: resolve lockdep warnings (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Make lpfc_sli4_oas_verify static (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix a recently introduced compiler warning (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix missing wakeups on abort threads (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Change smp_processor_id() into raw_smp_processor_id() (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Remove unused functions (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Remove set-but-not-used variables (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Move trunk_errmsg[] from a header file into a .c file (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Annotate switch/case fall-through (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix indentation and balance braces (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Declare local functions static (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: avoid uninitialized variable warning (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: change snprintf to scnprintf for possible overflow (Dick Kennedy) [1714795] - [net] Bluetooth: hidp: fix buffer overflow (Gopal Tiwari) [1723654] {CVE-2019-11884} - [s390] virtio/s390: make airq summary indicators DMA (Philipp Rudo) [1651752] - [s390] virtio/s390: use DMA memory for ccw I/O and classic notifiers (Philipp Rudo) [1651752] - [s390] virtio/s390: add indirection to indicators access (Philipp Rudo) [1651752] - [s390] virtio/s390: use cacheline aligned airq bit vectors (Philipp Rudo) [1651752] - [s390] s390/airq: use DMA memory for adapter interrupts (Philipp Rudo) [1651752] - [s390] s390/cio: add basic protected virtualization support (Philipp Rudo) [1651752] - [s390] s390/cio: introduce DMA pools to cio (Philipp Rudo) [1651752] - [s390] s390/mm: force swiotlb for protected virtualization (Philipp Rudo) [1651752] - [s390] virtio/s390: DMA support for virtio-ccw (Philipp Rudo) [1651752] - [s390] virtio/s390: use vring_create_virtqueue (Philipp Rudo) [1651752] - [block] virtio-blk: Consider virtio_max_dma_size() for maximum segment size (Philipp Rudo) [1651752] - [virtio] virtio: Introduce virtio_max_dma_size() (Philipp Rudo) [1651752] - [kernel] dma: Introduce dma_max_mapping_size() (Philipp Rudo) [1651752] - [kernel] swiotlb: Add is_swiotlb_active() function (Philipp Rudo) [1651752] - [kernel] swiotlb: Introduce swiotlb_max_mapping_size() (Philipp Rudo) [1651752] - [mm] x86/mm: Create a workarea in the kernel for SME early encryption (Lianbo Jiang) [1564427] - [x86] x86/mm: Identify the end of the kernel area to be reserved (Lianbo Jiang) [1564427] - [x86] x86/kdump: Export the SME mask to vmcoreinfo (Lianbo Jiang) [1564427] - [fs] proc/vmcore: Fix i386 build error of missing copy_oldmem_page_encrypted() (Lianbo Jiang) [1564427] - [fs] kdump, proc/vmcore: Enable kdumping encrypted memory with SME enabled (Lianbo Jiang) [1564427] - [iommu] iommu/amd: Remap the IOMMU device table with the memory encryption mask for kdump (Lianbo Jiang) [1564427] - [kernel] kexec: Allocate decrypted control pages for kdump if SME is enabled (Lianbo Jiang) [1564427] - [mm] x86/ioremap: Add an ioremap_encrypted() helper (Lianbo Jiang) [1564427] - [documentation] Documentation: Add ARM64 to kernel-parameters.rst (Jeremy Linton) [1640855] - [arm64] arm64/speculation: Support 'mitigations=' cmdline option (Jeremy Linton) [1640855] - [arm64] arm64: ssbs: Don't treat CPUs with SSBS as unaffected by SSB (Jeremy Linton) [1640855] - [arm64] arm64: enable generic CPU vulnerabilites support (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for speculative store bypass (Jeremy Linton) [1640855] - [arm64] arm64: Always enable ssb vulnerability detection (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for spectre-v2 (Jeremy Linton) [1640855] - [arm64] arm64: Always enable spectre-v2 vulnerability detection (Jeremy Linton) [1640855] - [arm64] arm64: Use firmware to detect CPUs that are not affected by Spectre-v2 (Jeremy Linton) [1640855] - [arm64] arm64: Advertise mitigation of Spectre-v2, or lack thereof (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for meltdown (Jeremy Linton) [1640855] - [arm64] arm64: Add sysfs vulnerability show for spectre-v1 (Jeremy Linton) [1640855] - [arm64] arm64: Provide a command line to disable spectre_v2 mitigation (Jeremy Linton) [1640855] - [documentation] powerpc/fsl: Add FSL_PPC_BOOK3E as supported arch for nospectre_v2 boot arg (Jeremy Linton) [1640855] - [documentation] Documentation: Document arm64 kpti control (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Whitelist HiSilicon Taishan v110 CPUs (Jeremy Linton) [1640855] - [arm64] arm64: Add MIDR encoding for HiSilicon Taishan CPUs (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Whitelist Cortex-A CPUs that don't implement the CSV3 field (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Update arm64_kernel_use_ng_mappings() when forced on (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Avoid rewriting early page tables when KASLR is enabled (Jeremy Linton) [1640855] - [arm64] arm64: capabilities: Merge duplicate Cavium erratum entries (Jeremy Linton) [1640855] - [arm64] arm64: capabilities: Merge entries for ARM64_WORKAROUND_CLEAN_CACHE (Jeremy Linton) [1640855] - [arm64] arm64: Use a raw spinlock in __install_bp_hardening_cb() (Jeremy Linton) [1640855] - [arm64] arm64: KVM: Guests can skip __install_bp_hardening_cb()s HYP work (Jeremy Linton) [1640855] - [arm64] arm64: fix SSBS sanitization (Jeremy Linton) [1640855] - [arm64] arm64: don't zero DIT on signal return (Jeremy Linton) [1640855] - [kvm] KVM: arm64: Set SCTLR_EL2.DSSBS if SSBD is forcefully disabled and !vhe (Jeremy Linton) [1640855] - [arm64] arm64: ssbd: Add support for PSTATE.SSBS rather than trapping to EL3 (Jeremy Linton) [1640855] - [arm64] arm64: ssbd: Drop #ifdefs for PR_SPEC_STORE_BYPASS (Jeremy Linton) [1640855] - [arm64] arm64: cpufeature: Detect SSBS and advertise to userspace (Jeremy Linton) [1640855] - [arm64] arm64: move SCTLR_EL{1,2} assertions to (Jeremy Linton) [1640855]- [powerpc] powerpc/mm/64s/hash: Reallocate context ids on fork (Steve Best) [1723808] - [powerpc] powerpc/perf: Use cpumask_last() to determine the designated cpu for nest/core units. (Steve Best) [1725746] - [fs] iomap: fix page_done callback for short writes (Andreas Grunbacher) [1724361] - [fs] fs: fold __generic_write_end back into generic_write_end (Andreas Grunbacher) [1724361] - [fs] iomap: don't mark the inode dirty in iomap_write_end (Andreas Grunbacher) [1724361] - [fs] gfs2: Fix iomap write page reclaim deadlock (Andreas Grunbacher) [1724361] - [fs] iomap: Add a page_prepare callback (Andreas Grunbacher) [1724361] - [fs] iomap: Fix use-after-free error in page_done callback (Andreas Grunbacher) [1724361] - [fs] fs: Turn __generic_write_end into a void function (Andreas Grunbacher) [1724361] - [fs] iomap: Clean up __generic_write_end calling (Andreas Grunbacher) [1724361] - [kvm] KVM: PPC: Book3S HV: Clear pending decrementer exceptions on nested guest entry (Suraj Jitindar Singh) [1718822] - [kvm] KVM: PPC: Book3S HV: Signed extend decrementer value if not using large decrementer (Suraj Jitindar Singh) [1718822]- [hid] HID: chicony: add another quirk for PixArt mouse (Oleksandr Natalenko) [1724967] - [scsi] scsi: smartpqi: properly set both the DMA mask and the coherent DMA mask (Don Brace) [1712272] - [tools] perf beauty waitid options: Fix up prefix showing logic (Michael Petlan) [1715507] - [include] redhat: perf kABI-check failure fix (Michael Petlan) [1715507] - [tools] perf script python: Add Python3 support to tests/attr.py (Michael Petlan) [1715507] - [tools] perf trace: Support multiple "vfs_getname" probes (Michael Petlan) [1715507] - [tools] perf symbols: Filter out hidden symbols from labels (Michael Petlan) [1715507] - [tools] perf symbols: Add fallback definitions for GELF_ST_VISIBILITY() (Michael Petlan) [1715507] - [tools] perf clang: Do not use 'return std::move(something)' (Michael Petlan) [1715507] - [tools] perf tests evsel-tp-sched: Fix bitwise operator (Michael Petlan) [1715507] - [tools] perf script: Fix crash when processing recorded stat data (Michael Petlan) [1715507] - [tools] perf top: Fix wrong hottest instruction highlighted (Michael Petlan) [1715507] - [tools] perf tools: Handle TOPOLOGY headers with no CPU (Michael Petlan) [1715507] - [tools] perf python: Remove -fstack-clash-protection when building with some clang versions (Michael Petlan) [1715507] - [tools] perf script: Fix crash with printing mixed trace point and other events (Michael Petlan) [1715507] - [tools] perf ordered_events: Fix crash in ordered_events__free (Michael Petlan) [1715507] - [tools] tools headers powerpc: Remove unistd.h (Michael Petlan) [1715507] - [tools] perf powerpc: Rework syscall table generation (Michael Petlan) [1715507] - [tools] perf symbols: Add 'arch_cpu_idle' to the list of kernel idle symbols (Michael Petlan) [1715507] - [tools] perf beauty: Switch from using uapi/linux/fs.h to uapi/linux/mount.h (Michael Petlan) [1715507] - [tools] tools include uapi: Grab a copy of linux/mount.h (Michael Petlan) [1715507] - [tools] perf top: Lift restriction on using callchains without "sym" in --sort (Michael Petlan) [1715507] - [tools] tools lib traceevent: Remove tep_data_event_from_type() API (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename tep_is_file_bigendian() to tep_file_bigendian() (Michael Petlan) [1715507] - [tools] tools lib traceevent: Changed return logic of tep_register_event_handler() API (Michael Petlan) [1715507] - [tools] tools lib traceevent: Changed return logic of trace_seq_printf() and trace_seq_vprintf() APIs (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename struct cmdline to struct tep_cmdline (Michael Petlan) [1715507] - [tools] tools lib traceevent: Initialize host_bigendian at tep_handle allocation (Michael Petlan) [1715507] - [tools] tools lib traceevent: Introduce new libtracevent API: tep_override_comm() (Michael Petlan) [1715507] - [tools] perf tests: Add a test for the ARM 32-bitpage (Michael Petlan) [1715507] - [tools] perf tools: Make find_vdso_map() more modular (Michael Petlan) [1715507] - [tools] perf trace: Fix alignment forlines (Michael Petlan) [1715507] - [tools] perf trace: Fix ')' placement in "interrupted" syscall lines (Michael Petlan) [1715507] - [tools] perf test shell: Use a fallback to get the pathname in vfs_getname (Michael Petlan) [1715507] - [tools] perf python: Make sure the python binding output directory is in place (Michael Petlan) [1715507] - [tools] perf strbuf: Remove redundant va_end() in strbuf_addv() (Michael Petlan) [1715507] - [tools] perf annotate: Pass filename to objdump via execl (Michael Petlan) [1715507] - [tools] perf report: Fix wrong iteration count in --branch-history (Michael Petlan) [1715507] - [tools] tools headers uapi: Sync copy of asm-generic/unistd.h with the kernel sources (Michael Petlan) [1715507] - [tools] tools beauty: Make the prctl option table generator catch all PR_ options (Michael Petlan) [1715507] - [tools] perf stat: Fix endless wait for child process (Michael Petlan) [1715507] - [tools] perf session: Add comment for perf_session__register_idle_thread() (Michael Petlan) [1715507] - [tools] perf thread-stack: Fix thread stack processing for the idle task (Michael Petlan) [1715507] - [tools] perf thread-stack: Allocate an array of thread stacks (Michael Petlan) [1715507] - [tools] perf thread-stack: Factor out thread_stack__init() (Michael Petlan) [1715507] - [tools] perf thread-stack: Allow for a thread stack array (Michael Petlan) [1715507] - [tools] perf thread-stack: Avoid direct reference to the thread's stack (Michael Petlan) [1715507] - [tools] perf thread-stack: Tidy thread_stack__bottom() usage (Michael Petlan) [1715507] - [tools] perf thread-stack: Simplify some code in thread_stack__process() (Michael Petlan) [1715507] - [tools] perf c2c: Increase the HITM ratio limit for displayed cachelines (Michael Petlan) [1715507] - [tools] perf c2c: Change the default coalesce setup (Michael Petlan) [1715507] - [tools] perf trace beauty ioctl: Beautify USBDEVFS_ commands (Michael Petlan) [1715507] - [tools] perf trace beauty: Export function to get the files for a thread (Michael Petlan) [1715507] - [tools] perf trace: Wire up ioctl's USBDEBFS_ cmd table generator (Michael Petlan) [1715507] - [tools] perf beauty ioctl: Add generator for USBDEVFS_ ioctl commands (Michael Petlan) [1715507] - [tools] tools headers uapi: Grab a copy of usbdevice_fs.h (Michael Petlan) [1715507] - [tools] perf trace: Store the major number for a file when storing its pathname (Michael Petlan) [1715507] - [tools] perf trace: Move the files table resizing to outside set_pathname() (Michael Petlan) [1715507] - [tools] perf trace: Rename thread_thread->paths to thread_trace->files (Michael Petlan) [1715507] - [tools] perf script: Fix LBR skid dump problems in brstackinsn (Michael Petlan) [1715507] - [tools] perf trace: Use correct SECCOMP prefix spelling, "SECOMP_*" -> "SECCOMP_*" (Michael Petlan) [1715507] - [tools] perf trace: Do not hardcode the size of the tracepoint common_ fields (Michael Petlan) [1715507] - [tools] perf build: Don't unconditionally link the libbfd feature test to -liberty and -lz (Michael Petlan) [1715507] - [tools] perf beauty mmap: PROT_WRITE should come before PROT_EXEC (Michael Petlan) [1715507] - [tools] perf trace: Check if the raw_syscalls:sys_{enter, exit} are setup before setting tp filter (Michael Petlan) [1715507] - [tools] perf symbols: Relax checks on perf-PID.map ownership (Michael Petlan) [1715507] - [tools] perf trace: Wire up the fadvise 'advice' table generator (Michael Petlan) [1715507] - [tools] perf beauty: Add generator for fadvise64's 'advice' arg constants (Michael Petlan) [1715507] - [tools] tools headers uapi: Grab a copy of fadvise.h (Michael Petlan) [1715507] - [tools] perf beauty mmap: Print mmap's 'offset' arg in hexadecimal (Michael Petlan) [1715507] - [tools] perf beauty mmap: Print PROT_READ before PROT_EXEC to match strace output (Michael Petlan) [1715507] - [tools] perf trace beauty: Beautify arch_prctl()'s arguments (Michael Petlan) [1715507] - [tools] perf trace: When showing string prefixes show prefix + ??? for unknown entries (Michael Petlan) [1715507] - [tools] perf trace: Move strarrays to beauty.h for further reuse (Michael Petlan) [1715507] - [tools] perf beauty: Wire up the x86_arch prctl code table generator (Michael Petlan) [1715507] - [tools] perf beauty: Add a string table generator for x86's 'arch_prctl' codes (Michael Petlan) [1715507] - [tools] tools include arch: Grab a copy of x86's prctl.h (Michael Petlan) [1715507] - [tools] perf trace: Show NULL when syscall pointer args are 0 (Michael Petlan) [1715507] - [tools] perf trace: Enclose the errno strings with () (Michael Petlan) [1715507] - [tools] perf augmented_raw_syscalls: Copy 'access' arg as well (Michael Petlan) [1715507] - [tools] perf trace: Add alignment spaces after the closing parens (Michael Petlan) [1715507] - [tools] perf trace beauty: Print O_RDONLY when (flags & O_ACCMODE) == 0 (Michael Petlan) [1715507] - [tools] perf trace: Allow asking for not suppressing common string prefixes (Michael Petlan) [1715507] - [tools] perf trace: Add a prefix member to the strarray class (Michael Petlan) [1715507] - [tools] perf trace: Enclose strings with double quotes (Michael Petlan) [1715507] - [tools] perf trace: Make the alignment of the syscall args be configurable (Michael Petlan) [1715507] - [tools] perf trace: Allow suppressing the syscall argument names (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if the syscall start timestamp should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring default for perf_event_attr.inherit (Michael Petlan) [1715507] - [tools] perf config: Show the configuration when no arguments are provided (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if the syscall duration should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if zeroed syscall args should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow specifying a set of events to add in perfconfig (Michael Petlan) [1715507] - [tools] perf augmented_raw_syscalls: Do not include stdio.h (Michael Petlan) [1715507] - [tools] perf cs-etm: Generate branch sample for exception packet (Michael Petlan) [1715507] - [tools] perf cs-etm: Treat EO_TRACE element as trace discontinuity (Michael Petlan) [1715507] - [tools] perf cs-etm: Treat NO_SYNC element as trace discontinuity (Michael Petlan) [1715507] - [tools] perf cs-etm: Rename CS_ETM_TRACE_ON to CS_ETM_DISCONTINUITY (Michael Petlan) [1715507] - [tools] perf cs-etm: Refactor enumeration cs_etm_sample_type (Michael Petlan) [1715507] - [tools] perf cs-etm: Remove unused 'trace_on' in cs_etm_decoder (Michael Petlan) [1715507] - [tools] perf cs-etm: Avoid stale branch samples when flush packet (Michael Petlan) [1715507] - [tools] perf cs-etm: Correct packets swapping in cs_etm__flush() (Michael Petlan) [1715507] - [tools] perf trace: Switch to using a struct for the aumented_raw_syscalls syscalls map values (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Switch to using a struct for the syscalls map values (Michael Petlan) [1715507] - [tools] perf bpf: Move perf_event_output() from stdio.h to bpf.h (Michael Petlan) [1715507] - [tools] perf trace: Implement syscall filtering in augmented_syscalls (Michael Petlan) [1715507] - [tools] perf trace: Avoid using raw_syscalls in duplicity with eBPF augmentation (Michael Petlan) [1715507] - [tools] perf trace: Rename set_ev_qualifier_filter to clarify its a tracepoint filter (Michael Petlan) [1715507] - [tools] perf tools: Cast off_t to s64 to avoid warning on bionic libc (Michael Petlan) [1715507] - [tools] perf tools: Add missing open_memstream() prototype for systems lacking it (Michael Petlan) [1715507] - [tools] perf header: Fix up argument to ctime() (Michael Petlan) [1715507] - [tools] perf tools: Add missing sigqueue() prototype for systems lacking it (Michael Petlan) [1715507] - [tools] tools lib subcmd: Don't add the kernel sources to the include path (Michael Petlan) [1715507] - [tools] perf trace beauty: renameat's newdirfd may also be AT_FDCWD (Michael Petlan) [1715507] - [tools] perf trace: Beautify renameat2's flags argument (Michael Petlan) [1715507] - [tools] perf beauty: Wire up the renameat flags table generator to the Makefile (Michael Petlan) [1715507] - [tools] perf beauty: Add a string table generator for renameat2's flags constants (Michael Petlan) [1715507] - [tools] perf trace beauty: Beautify renameat2's fd arg wrt AT_FDCWD (Michael Petlan) [1715507] - [tools] perf trace: Allow selecting use the use of the ordered_events code (Michael Petlan) [1715507] - [tools] perf trace: Rename delivery functions to ease making ordered_events selectable (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix processing of dereferenced args in bprintk events (Michael Petlan) [1715507] - [tools] perf stat: Avoid segfaults caused by negated options (Michael Petlan) [1715507] - [tools] perf auxtrace: Alter addr_filter__entire_dso() to work if there are no symbols (Michael Petlan) [1715507] - [tools] perf dso: Export data_file_size() method there are no symbols (Michael Petlan) [1715507] - [tools] perf trace: Add ordered processing (Michael Petlan) [1715507] - [tools] perf ordered_events: Add first_time() method (Michael Petlan) [1715507] - [tools] perf trace: Move event delivery to a new deliver_event() function (Michael Petlan) [1715507] - [tools] perf ordered_events: Add ordered_events__flush_time interface (Michael Petlan) [1715507] - [tools] perf annotate: Introduce basic support for ARC (Michael Petlan) [1715507] - [tools] perf config: Modify size factor of snprintf (Michael Petlan) [1715507] - [tools] perf record: Fix memory leak on AIO objects deallocation (Michael Petlan) [1715507] - [tools] perf vendor events intel: Fix Load_Miss_Real_Latency on SKL/SKX (Michael Petlan) [1715507] - [tools] perf parse-events: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf probe: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf ui helpline: Use strlcpy() as a shorter form of strncpy() + explicit set nul (Michael Petlan) [1715507] - [tools] perf svghelper: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf help: Remove needless use of strncpy() (Michael Petlan) [1715507] - [tools] perf header: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf header: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf dso: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf cs-etm: Add support for PTMv1.1 decoding (Michael Petlan) [1715507] - [tools] perf cs-etm: Add support for ETMv3 trace decoding (Michael Petlan) [1715507] - [tools] perf cs-etm: Add configuration for ETMv3 trace protocol (Michael Petlan) [1715507] - [tools] perf top: Move perf_top__reset_sample_counters() to after counts display (Michael Petlan) [1715507] - [tools] perf top: Display slow reader warning when droping samples (Michael Petlan) [1715507] - [tools] perf top: Save and display the drop count stats (Michael Petlan) [1715507] - [tools] perf top: Drop samples which are behind the refresh rate (Michael Petlan) [1715507] - [tools] perf top: Set the 'session_done' volatile variable when exiting (Michael Petlan) [1715507] - [tools] perf top: Use cond variable instead of a lock (Michael Petlan) [1715507] - [tools] perf top: Add processing thread (Michael Petlan) [1715507] - [tools] perf top: Move lost events warning to helpline (Michael Petlan) [1715507] - [tools] perf top: Save and display the lost count stats (Michael Petlan) [1715507] - [tools] perf ordered_events: Add private data member (Michael Petlan) [1715507] - [tools] perf ordered_events: Rework show_progress for __ordered_events__flush (Michael Petlan) [1715507] - [tools] perf tools: Support 'srccode' output (Michael Petlan) [1715507] - [tools] perf trace: We need to consider "nr" if "__syscall_nr" is not there (Michael Petlan) [1715507] - [tools] perf tools: Allow specifying proc-map-timeout in config file (Michael Petlan) [1715507] - [tools] tools lib subcmd: Fix a few source code comment typos (Michael Petlan) [1715507] - [tools] perf tools: Fix diverse comment typos (Michael Petlan) [1715507] - [tools] perf bpf-loader: Fix debugging message typo (Michael Petlan) [1715507] - [tools] perf tools Documentation: Fix diverse typos (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix diverse typos in comments (Michael Petlan) [1715507] - [tools] perf vendor events intel: Fix diverse typos (Michael Petlan) [1715507] - [tools] perf tests ARM: Disable breakpoint tests 32-bit (Michael Petlan) [1715507] - [tools] perf cs-etm: Support for ARM A32/T32 instruction sets in CoreSight trace (Michael Petlan) [1715507] - [tools] perf beauty mmap_flags: Fixed syntax error Fixed missing ']' error (Michael Petlan) [1715507] - [tools] tools lib traceevent: traceevent API cleanup (Michael Petlan) [1715507] - [tools] perf tools: traceevent API cleanup, remove __tep_data2host*() (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename tep_free_format() to tep_free_event() (Michael Petlan) [1715507] - [tools] tools lib traceevent, perf tools: Rename 'struct tep_event_format' to 'struct tep_event' (Michael Petlan) [1715507] - [tools] tools lib traceevent: Install trace-seq.h API header file (Michael Petlan) [1715507] - [tools] tools lib traceevent: Added support for pkg-config (Michael Petlan) [1715507] - [tools] tools lib traceevent: Implement new API tep_get_ref() (Michael Petlan) [1715507] - [tools] perf report: Documentation average IPC and IPC coverage (Michael Petlan) [1715507] - [tools] perf report: Display average IPC and IPC coverage per symbol (Michael Petlan) [1715507] - [tools] perf annotate: Create a annotate2 flag in struct symbol (Michael Petlan) [1715507] - [tools] perf annotate: Compute average IPC and IPC coverage per symbol (Michael Petlan) [1715507] - [tools] tools lib traceevent: Add sanity check to is_timestamp_in_us() (Michael Petlan) [1715507] - [tools] perf beauty mmap_flags: Check if the arch has a mmap.h file (Michael Petlan) [1715507] - [tools] perf record: Extend trace writing to multi AIO (Michael Petlan) [1715507] - [tools] perf record: Enable asynchronous trace writing (Michael Petlan) [1715507] - [tools] perf mmap: Map data buffer for preserving collected data (Michael Petlan) [1715507] - [tools] tools build feature: Check if libaio is available (Michael Petlan) [1715507] - [tools] perf intel-pt: Fix error with config term "pt=0" (Michael Petlan) [1715507] - [tools] perf top: Allow passing a kallsyms file (Michael Petlan) [1715507] - [tools] perf bpf: Use ERR_CAST instead of ERR_PTR(PTR_ERR()) (Michael Petlan) [1715507] - [tools] tools include: Adopt ERR_CAST() from the kernel err.h header (Michael Petlan) [1715507] - [tools] perf tests record: Allow for 'sleep' being 'coreutils' (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix compile warnings in tools/lib/traceevent/event-parse.c (Michael Petlan) [1715507] - [tools] perf script: Use fallbacks for branch stacks (Michael Petlan) [1715507] - [tools] perf tools: Use fallback for sample_addr_correlates_sym() cases (Michael Petlan) [1715507] - [tools] perf thread: Add fallback functions for cases where cpumode is insufficient (Michael Petlan) [1715507] - [tools] perf machine: Record if a arch has a single user/kernel address space (Michael Petlan) [1715507] - [tools] perf env: Also consider env->arch == NULL as local operation (Michael Petlan) [1715507] - [tools] perf map: Remove extra indirection from map__find() (Michael Petlan) [1715507] - [tools] perf stat: Fix CSV mode column output for non-cgroup events (Michael Petlan) [1715507] - [tools] perf stat: Fix shadow stats for clock events (Michael Petlan) [1715507] - [tools] perf build: Give better hint about devel package for libssl (Michael Petlan) [1715507] - [tools] perf pmu: Move *_cpuid_str() weak functions to header.c (Michael Petlan) [1715507] - [tools] perf symbols: Fix slowness due to -ffunction-section (Michael Petlan) [1715507] - [tools] perf jvmti: Separate jvmti cmlr check (Michael Petlan) [1715507] - [tools] perf vendor events: Add JSON metrics for Cascadelake server (Michael Petlan) [1715507] - [tools] perf vendor events: Add stepping in CPUID string for x86 (Michael Petlan) [1715507] - [tools] perf stat: Use perf_evsel__is_clocki() for clock events (Michael Petlan) [1715507] - [tools] perf pmu: Suppress potential format-truncation warning (Michael Petlan) [1715507] - [tools] perf tools: Add Hygon Dhyana support (Michael Petlan) [1715507] - [tools] perf bench: Add epoll_ctl(2) benchmark (Michael Petlan) [1715507] - [tools] perf bench: Add epoll parallel epoll_wait benchmark (Michael Petlan) [1715507] - [tools] tools build feature: Check if eventfd() is available (Michael Petlan) [1715507] - [tools] perf bench: Move HAVE_PTHREAD_ATTR_SETAFFINITY_NP into bench.h (Michael Petlan) [1715507] - [tools] perf script: Share code and output format for uregs and iregs output (Michael Petlan) [1715507] - [tools] perf bpf: Reduce the hardcoded .max_entries for pid_maps (Michael Petlan) [1715507] - [tools] perf script: Add newline after uregs output (Michael Petlan) [1715507] - [tools] Revert "perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter" (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Remove example hardcoded set of filtered pids (Michael Petlan) [1715507] - [tools] perf trace: Fill in BPF "filtered_pids" map when present (Michael Petlan) [1715507] - [tools] perf trace: See if there is a map named "filtered_pids" (Michael Petlan) [1715507] - [tools] perf trace: Add "_from_option" suffix to trace__set_filter() (Michael Petlan) [1715507] - [tools] perf evlist: Rename perf_evlist__set_filter* to perf_evlist__set_tp_filter* (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Use pid_filter (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter (Michael Petlan) [1715507] - [tools] perf bpf: Add simple pid_filter class accessible to BPF proggies (Michael Petlan) [1715507] - [tools] perf bpf: Add defines for map insertion/lookup (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Remove needless linux/socket.h include (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Filter on a hard coded pid (Michael Petlan) [1715507] - [tools] perf bpf: Add unistd.h to the headers accessible to bpf proggies (Michael Petlan) [1715507] - [kernel] perf/core: Fix impossible ring-buffer sizes warning (Michael Petlan) [1715507] - [x86] perf/x86: Add check_period PMU callback (Michael Petlan) [1715507] - [kernel] perf/core: Don't WARN() for impossible ring-buffer sizes (Michael Petlan) [1715507] - [x86] perf/x86/intel/uncore: Add Node ID mask (Michael Petlan) [1715507] - [kernel] perf core: Fix perf_proc_update_handler() bug (Michael Petlan) [1715507] - [tools] powerpc/perf: Update perf_regs structure to include MMCRA (Michael Petlan) [1715507] - [powerpc] powerpc/perf: Update perf_regs structure to include SIER (Michael Petlan) [1715507] - [include] perf/core: Declare the __percpu attribute on non-deref types (Michael Petlan) [1715507] - [kernel] perf: Fix typos in comments (Michael Petlan) [1715507] - [arm64] arm64: perf: Add support for Armv8.1 PMCEID register format (Michael Petlan) [1715507]- [fs] xfs: abort unaligned nowait directio early (Brian Foster) [1690458] - [fs] xfs: serialize unaligned dio writes against all other dio writes (Brian Foster) [1690458] - [sound] ALSA: hda/hdmi: consider eld_valid also in sync_eld_via_acomp() (Jaroslav Kysela) [1708555] - [fs] Fix error code in nfs_lookup_verify_inode() (Scott Mayhew) [1722315] - [md] dm table: don't copy from a NULL pointer in realloc_argv() (Jerome Marchand) [1571628] - [net] netfilter: ipset: replace a strncpy() with strscpy() (Jerome Marchand) [1571628] - [lib] lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn (Jerome Marchand) [1571628] - [include] netfilter: avoid erronous array bounds warning (Jerome Marchand) [1571628] - [x86] x86/mm/KASLR: Compute the size of the vmemmap section properly (Baoquan He) [1669076] - [security] selinux: fix empty write to keycreate file (Ondrej Mosnacek) [1719067] - [netdrv] net: aquantia: fix vlans not working over bridged network (Igor Russkikh) [1718716] - [s390] s390/jump_label: replace stop_machine with smp_call_function (Philipp Rudo) [1722161] - [s390] s390/dumpstack: print psw mask and address again (Philipp Rudo) [1722157] - [s390] s390/crypto: fix gcm-aes-s390 selftest failures (Philipp Rudo) [1722156] - [wireless] Backport mt76 drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709867 1709828] - [wireless] Add rtw88 driver from linux-5.2-rc5 (Stanislaw Gruszka) [1487086 1709828] - [wireless] Backport mt7601u driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport mwifiex driver from linux-5.2-rc2 (Stanislaw Gruszka) [1709828] - [wireless] Backport rtl8xxxu driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport rtlwifi drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport ath9k driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport ath10k driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport brcm80211 drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport iwlwifi drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1696052 1662020 1662015 1650016 1650015 1650014 1650013 1622445 1494008 1494001 1709828] - [net] Backport mac80211 from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [net] Backport core wireless code from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [include] netlink: add nl_set_extack_cookie_u64() (Stanislaw Gruszka) [1709828] - [netdrv] r8152: Fix an error on RTL8153-BD MAC Address Passthrough support (Torez Smith) [1683883 1683882] - [netdrv] r8152: Add support for MAC address pass through on RTL8153-BD (Torez Smith) [1683883 1683882] - [netdrv] nfp: abm: fix spelling mistake "offseting" -> "offsetting" (Pablo Cascon) [1713258] - [netdrv] nfp: flower: remove vlan CFI bit from push vlan action (Pablo Cascon) [1713258] - [netdrv] nfp: flower: replace CFI with vlan present (Pablo Cascon) [1713258] - [netdrv] nfp: flower: remove double new line (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: fix ALU32 high bits clearance bug (Pablo Cascon) [1713258] - [netdrv] bpf: do not pass netdev to translate() and prepare() offload callbacks (Pablo Cascon) [1713258] - [netdrv] bpf: pass prog instead of env to bpf_prog_offload_verifier_prep() (Pablo Cascon) [1713258] - [netdrv] bpf: pass destroy() as a callback and remove its ndo_bpf subcommand (Pablo Cascon) [1713258] - [netdrv] bpf: pass translate() as a callback and remove its ndo_bpf subcommand (Pablo Cascon) [1713258] - [netdrv] bpf: call verifier_prep from its callback in struct bpf_offload_dev (Pablo Cascon) [1713258] - [netdrv] bpf: pass a struct with offload callbacks to bpf_offload_dev_create() (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: move nfp_bpf_analyzer_ops from verifier.c to offload.c (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: relax prog rejection through max_pkt_offset (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: double check vNIC capabilities after object sharing (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: optimise save/restore for R6~R9 based on register usage (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: fix return address from register-saving subroutine to callee (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: update fixup function for BPF-to-BPF calls support (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: account for additional stack usage when checking stack limit (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: add main logics for BPF-to-BPF calls support in nfp driver (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: copy eBPF subprograms information from kernel verifier (Pablo Cascon) [1713258] - [netdrv] bpf: add verifier callback to get stack usage info for offloaded progs (Pablo Cascon) [1713258]- [rpmspec] Enable kernel signing for ppc64le (Gustavo Duarte) [1504169] - [nvme] nvme: fix memory leak for power latency tolerance (David Milburn) [1724793] - [rpmspec] redhat: fix missing files for mlxsw specific self-tests (Ivan Vecera) [1724735] - [rpmspec] redhat: Package the signing key for s390 (Philipp Rudo) [1714194] - [rpmspec] redhat: Enable kernel signing for s390 (Philipp Rudo) [1714194] - [rpmspec] redhat: Rename secure boot sources (Philipp Rudo) [1714194] - [powerpc] powerpc: fix max_zone_pfns initialization (Laurent Vivier) [1706560] - [crypto] crypto: dh - update test for public key verification (Herbert Xu) [1722692] - [hid] HID: i2c-hid: Don't reset device upon system resume (Perry Yuan) [1715385] - [rpmspec] correct the ghost initramfs attributes (Rafael Aquini) [1678881] - [s390] s390/mm: fix address space detection in exception handling (Philipp Rudo) [1722160] - [s390] s390/zcrypt: Fix wrong dispatching for control domain CPRBs (Philipp Rudo) [1722158] - [virt] kvm: arm/arm64: Fix emulated ptimer irq injection (Andrew Jones) [1716383] - [x86] kvm/nested: mark as TechPreview on first VM creation (Vitaly Kuznetsov) [1723447] - [powerpc] bpf: powerpc64: add JIT support for bpf line info (Yauheni Kaliuta) [1722423] - [fs] cifs: add spinlock for the openFileList to cifsInodeInfo (Leif Sahlberg) [1712197] - [fs] cifs: fix GlobalMid_Lock bug in cifs_reconnect (Leif Sahlberg) [1716743] - [mm] powerpc/numa: document topology_updates_enabled, disable by default (Desnes Augusto Nunes do Rosario) [1705465] - [mm] powerpc/numa: improve control of topology updates (Desnes Augusto Nunes do Rosario) [1705465] - [kernel] bpf: decouple the lifetime of cgroup_bpf from cgroup itself (Jiri Olsa) [1656432] - [netdrv] USB: hso: Fix OOB memory access in hso_probe/hso_get_config_data (Torez Smith) [1689308 1666662] {CVE-2018-19985} - [usb] USB: check usb_get_extra_descriptor for proper size (Torez Smith) [1689308 1666662] {CVE-2018-20169} - [kvm] KVM: PPC: Book3S HV: Restore SPRG3 in kvmhv_p9_guest_entry() (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Fix lockdep warning when entering guest on POWER9 (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Fix page offset when clearing ESB pages (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Take the srcu read lock when accessing memslots (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Do not clear IRQ data of passthrough interrupts (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Introduce a new mutex for the XIVE device (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Fix the enforced limit on the vCPU identifier (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Do not test the EQ flag validity when resetting (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Clear file mapping when device is released (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Don't take kvm->lock around kvm_for_each_vcpu (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S: Use new mutex to synchronize access to rtas token list (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Use new mutex to synchronize MMU setup (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Avoid touching arch.mmu_ready in XIVE release functions (David Gibson) [1719524] - [mm] mm, oom: don't kill global init via memory.oom.group (Waiman Long) [1711604] - [mm] mm, oom: remove 'prefer children over parent' heuristic (Waiman Long) [1711604] - [mm] mm, oom: fix use-after-free in oom_kill_process (Waiman Long) [1711604] - [kernel] fork, memcg: fix crash in free_thread_stack on memcg charge fail (Waiman Long) [1711604] - [mm] memcg: localize memcg_kmem_enabled() check (Waiman Long) [1711604] - [mm] memcg, oom: notify on oom killer invocation from the charge path (Waiman Long) [1711604] - [mm] mm: handle no memcg case in memcg_kmem_charge() properly (Waiman Long) [1711604] - [kernel] mm: rework memcg kernel stack accounting (Waiman Long) [1711604] - [mm] mm/memcontrol.c: convert mem_cgroup_id::ref to refcount_t type (Waiman Long) [1711604] - [mm] memcg: remove memcg_kmem_skip_account (Waiman Long) [1711604] - [mm] mm/memcontrol.c: fix memory.stat item ordering (Waiman Long) [1711604] - [mm] mm: drain memcg stocks on css offlining (Waiman Long) [1711604] - [mm] mm: memcontrol: print proper OOM header when no eligible victim left (Waiman Long) [1711604] - [mm] mm, oom: introduce memory.oom.group (Waiman Long) [1711604] - [mm] mm, oom: refactor oom_kill_process() (Waiman Long) [1711604] - [mm] memcg: reduce memcg tree traversals for stats collection (Waiman Long) [1711604] - [mm] mm/vmscan.c: clear shrinker bit if there are no objects related to memcg (Waiman Long) [1711604] - [mm] mm: add SHRINK_EMPTY shrinker methods return value (Waiman Long) [1711604] - [mm] mm/vmscan.c: generalize shrink_slab() calls in shrink_node() (Waiman Long) [1711604] - [mm] mm/vmscan.c: iterate only over charged shrinkers during memcg shrink_slab() (Waiman Long) [1711604] - [mm] mm/list_lru.c: set bit in memcg shrinker bitmap on first list_lru item appearance (Waiman Long) [1711604] - [mm] mm/memcontrol.c: export mem_cgroup_is_root() (Waiman Long) [1711604] - [mm] mm/list_lru.c: pass lru argument to memcg_drain_list_lru_node() (Waiman Long) [1711604] - [mm] mm/list_lru: pass dst_memcg argument to memcg_drain_list_lru_node() (Waiman Long) [1711604] - [mm] mm/list_lru.c: add memcg argument to list_lru_from_kmem() (Waiman Long) [1711604] - [mm] fs: propagate shrinker::id to list_lru (Waiman Long) [1711604] - [fs] fs: Don't need to put list_lru into its own cacheline (Waiman Long) [1711604] - [fs] fs/super.c: refactor alloc_super() (Waiman Long) [1711604] - [mm] mm/workingset.c: refactor workingset_init() (Waiman Long) [1711604] - [mm] mm, memcg: assign memcg-aware shrinkers bitmap to memcg (Waiman Long) [1711604] - [mm] mm/memcontrol.c: move up for_each_mem_cgroup{, _tree} defines (Waiman Long) [1711604] - [mm] mm: assign id to every memcg-aware shrinker (Waiman Long) [1711604] - [mm] mm: introduce CONFIG_MEMCG_KMEM as combination of CONFIG_MEMCG && !CONFIG_SLOB (Waiman Long) [1711604] - [mm] mm/list_lru.c: combine code under the same define (Waiman Long) [1711604] - [mm] memcg, oom: move out_of_memory back to the charge path (Waiman Long) [1711604] - [fs] fs, mm: account buffer_head to kmemcg (Waiman Long) [1711604] - [fs] fs: fsnotify: account fsnotify metadata to kmemcg (Waiman Long) [1711604] - [include] mm: introduce mem_cgroup_put() helper (Waiman Long) [1711604] - [net] tcp: refine memory limit test in tcp_fragment() (Florian Westphal) [1724584] - [net] tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() (Florian Westphal) [1719923] {CVE-2019-11479} - [net] tcp: add tcp_min_snd_mss sysctl (Florian Westphal) [1719923] {CVE-2019-11479} - [net] tipc: pass tunnel dev as NULL to udp_tunnel(6)_xmit_skb (Xin Long) [1722751] - [include] ip6_tunnel: allow not to count pkts on tstats by passing dev as NULL (Xin Long) [1722751] - [net] ip_tunnel: allow not to count pkts on tstats by setting skb's dev to NULL (Xin Long) [1722751] - [net] netfilter: ipv6: nf_defrag: accept duplicate fragments again (Guillaume Nault) [1717106] - [net] netfilter: ipv6: nf_defrag: fix leakage of unqueued fragments (Guillaume Nault) [1717106] - [net] ethtool: fix potential userspace buffer overflow (Paolo Abeni) [1718393] - [net] net-gro: fix use-after-free read in napi_gro_frags() (Paolo Abeni) [1718393] - [net] ethtool: Check for vlan etype or vlan tci when parsing flow_rule (Paolo Abeni) [1718393] - [include] test nouarg before dereferencing zerocopy pointers (Paolo Abeni) [1718393] - [net] avoid weird emergency message (Paolo Abeni) [1718393] - [net] net-gro: Fix GRO flush when receiving a GSO packet. (Paolo Abeni) [1718393] - [net] sock_diag: fix autoloading of the raw_diag module (Paolo Abeni) [1718393] - [net] make skb_partial_csum_set() more robust against overflows (Paolo Abeni) [1718393] - [net] packets: Always register packet sk in the same order (Paolo Abeni) [1718393] - [net] net-sysfs: call dev_hold if kobject_init_and_add success (Paolo Abeni) [1718393] - [net] gro_cells: make sure device is up in gro_cells_receive() (Paolo Abeni) [1718393] - [net] net-sysfs: Fix mem leak in netdev_register_kobject (Paolo Abeni) [1718393] - [include] avoid false positives in untrusted gso validation (Paolo Abeni) [1718393] - [include] net: validate untrusted gso packets without csum offload (Paolo Abeni) [1718393] - [net] Do not allocate page fragments that are not skb aligned (Paolo Abeni) [1718393] - [net] set default network namespace in init_dummy_netdev() (Paolo Abeni) [1718393] - [net] Fix usage of pskb_trim_rcsum (Paolo Abeni) [1718393] - [net] call sk_dst_reset when set SO_DONTROUTE (Paolo Abeni) [1718393] - [net] net, skbuff: do not prefer skb allocation fails early (Paolo Abeni) [1718393] - [net] ethtool: check the return value of get_regs_len (Paolo Abeni) [1718393] - [net] packet: copy user buffers before orphan or clone (Paolo Abeni) [1718393] - [net] don't keep lonely packets forever in the gro hash (Paolo Abeni) [1718393] - [net] net-gro: reset skb->pkt_type in napi_reuse_skb() (Paolo Abeni) [1718393] - [net] flow_dissector: do not dissect l4 ports for fragments (Paolo Abeni) [1718393] - [net] net-ethtool: ETHTOOL_GUFO did not and should not require CAP_NET_ADMIN (Paolo Abeni) [1718393] - [net] tipc: fix modprobe tipc failed after switch order of device registration (Jon Maloy) [1718064] - [net] tipc: switch order of device registration to fix a crash (Jon Maloy) [1718064] - [net] tipc: fix hanging clients using poll with EPOLLOUT flag (Jon Maloy) [1718064] - [net] tipc: fix missing Name entries due to half-failover (Jon Maloy) [1718064] - [net] tipc: remove rcu_read_unlock() left in tipc_udp_recv() (Jon Maloy) [1718064] - [net] tipc: tipc_udp_recv() cleanup vs rcu verbs (Jon Maloy) [1718064] - [net] tipc: introduce new socket option TIPC_SOCK_RECVQ_USED (Jon Maloy) [1718064] - [net] tipc: set sysctl_tipc_rmem and named_timeout right range (Jon Maloy) [1718064] - [net] tipc: fix link established but not in session (Jon Maloy) [1718064] - [net] tipc: use standard write_lock & unlock functions when creating node (Jon Maloy) [1718064] - [net] tipc: missing entries in name table of publications (Jon Maloy) [1718064] - [net] tipc: adapt link failover for new Gap-ACK algorithm (Jon Maloy) [1718064] - [net] tipc: reduce duplicate packets for unicast traffic (Jon Maloy) [1718064] - [net] tipc: improve TIPC throughput by Gap ACK blocks (Jon Maloy) [1718064] - [net] tipc: add NULL pointer check (Jon Maloy) [1718064] - [net] tipc: fix return value check in tipc_mcast_send_sync() (Jon Maloy) [1718064] - [net] tipc: fix a null pointer deref (Jon Maloy) [1718064] - [net] tipc: fix use-after-free in tipc_sk_filter_rcv (Jon Maloy) [1718064] - [net] tipc: smooth change between replicast and broadcast (Jon Maloy) [1718064] - [net] tipc: introduce new capability flag for cluster (Jon Maloy) [1718064] - [net] tipc: support broadcast/replicast configurable for bc-link (Jon Maloy) [1718064] - [net] sched: avoid double free on matchall reoffload (Ivan Vecera) [1688236 1687456] - [net] taprio: add null check on sched_nest to avoid potential null pointer dereference (Ivan Vecera) [1688236 1687456] - [net] nfp: flower: remove unused index from nfp_fl_pedit() (Ivan Vecera) [1688236 1687456] - [net] mlx5e: Fix calling wrong function to get inner vlan key and mask (Ivan Vecera) [1688236 1687456] - [net] flow_offload: support CVLAN match (Ivan Vecera) [1688236 1687456] - [net] nfp: flower: fix masks for tcp and ip flags fields (Ivan Vecera) [1688236 1687456] - [net] sched: use the hardware intermediate representation for matchall (Ivan Vecera) [1688236 1687456] - [net] sched: add sample action to the hardware intermediate representation (Ivan Vecera) [1688236 1687456] - [net] cls_cgroup: avoid panic when receiving a packet before filter set (Ivan Vecera) [1688236 1687456] - [net] cls_matchall: avoid panic when receiving a packet before filter set (Ivan Vecera) [1688236 1687456] - [net] add a generic tracepoint for TX queue timeout (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: use struct_size() helper (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support for cycle-time-extension (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support for setting the cycle-time manually (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support adding an admin schedule (Ivan Vecera) [1688236 1687456] - [net] taprio: Fix potencial use of invalid memory during dequeue() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Fix taprio_dequeue() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Fix taprio_peek() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Remove should_restart_cycle() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Refactor taprio_get_start_time() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Remove pointless variable assigment (Ivan Vecera) [1688236 1687456] - [net] tc_act: drop include of module.h from tc_ife.h (Ivan Vecera) [1688236 1687456] - [net] fib: drop include of module.h from fib_notifier.h (Ivan Vecera) [1688236 1687456] - [net] ife: drop include of module.h from net/ife.h (Ivan Vecera) [1688236 1687456] - [net] psample: drop include of module.h from psample.h (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: fix build without 64bit div (Ivan Vecera) [1688236 1687456] - [net] revert: "net: sched: put back q.qlen into a single location" (Ivan Vecera) [1688236 1687456] - [net] sched: when clearing NOLOCK, clear TCQ_F_CPUSTATS, too (Ivan Vecera) [1688236 1687456] - [net] sched: always do stats accounting according to TCQ_F_CPUSTATS (Ivan Vecera) [1688236 1687456] - [net] sched: prefer qdisc_is_empty() over direct qlen access (Ivan Vecera) [1688236 1687456] - [net] caif: avoid using qdisc_qlen() (Ivan Vecera) [1688236 1687456] - [net] sched: cbs: fix port_rate miscalculation (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: fix picos_per_byte miscalculation (Ivan Vecera) [1688236 1687456] - [net] selftests: add a tc matchall test case (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Make sure we can write the IP header before changing DSCP bits (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Use tc_skb_protocol() helper for getting packet protocol (Ivan Vecera) [1688236 1687456] - [net] sched: act_sample: fix divide by zero in the traffic path (Ivan Vecera) [1688236 1687456] - [net] sched: don't set tunnel for decap action (Ivan Vecera) [1688236 1687456] - [net] sched: introduce and use qdisc tree flush/purge helpers (Ivan Vecera) [1688236 1687456] - [net] sched: introduce and use qstats read helpers (Ivan Vecera) [1688236 1687456] - [net] sched: fix ->get helper of the matchall cls (Ivan Vecera) [1688236 1687456] - [net] sched: Kconfig: update reference link for PIE (Ivan Vecera) [1688236 1687456] - [net] dev: introduce support for sch BYPASS for lockless qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: add empty status flag for NOLOCK qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: fix cleanup NULL pointer exception in act_mirr (Ivan Vecera) [1688236 1687456] - [net] sched: let actions use RCU to access 'goto_chain' (Ivan Vecera) [1688236 1687456] - [net] sched: don't dereference a->goto_chain to read the chain index (Ivan Vecera) [1688236 1687456] - [net] sched: act_vlan: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbmod: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbedit: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_simple: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_sample: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_police: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_pedit: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_nat: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_connmark: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_mirred: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_ife: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_gact: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_csum: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_bpf: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: prepare TC actions to properly validate the control action (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Interpret fwmark parameter as a bitmask (Ivan Vecera) [1688236 1687456] - [net] net_sched: return correct value for *notify* functions (Ivan Vecera) [1688236 1687456] - [net] sched: fix potential use-after-free in __tcf_chain_put() (Ivan Vecera) [1688236 1687456] - [net] sched: flower: insert new filter to idr after setting its mask (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: Fix double free dst_cache (Ivan Vecera) [1688236 1687456] - [net] sched: avoid unused-label warning (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Simplify logic in cake_select_tin() (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Permit use of connmarks as tin classifiers (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Make the dual modes fairer (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Allow test cases to be skipped (Ivan Vecera) [1688236 1687456] - [net] sched: put back q.qlen into a single location (Ivan Vecera) [1688236 1687456] - [net] sched: pie: avoid slow division in drop probability decay (Ivan Vecera) [1688236 1687456] - [net] netem: fix skb length BUG_ON in __skb_to_sgvec (Ivan Vecera) [1688236 1687456] - [net] revert "net: sched: fw: don't set arg->stop in fw_walk() when empty" (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix 64-bit division (Ivan Vecera) [1688236 1687456] - [net] tc-testing: gitignore, ignore local tdc config file (Ivan Vecera) [1688236 1687456] - [net] sched: fix typo in walker_check_empty() (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix mistake in reference link (Ivan Vecera) [1688236 1687456] - [net] sched: act_csum: Fix csum calc for tagged packets (Ivan Vecera) [1688236 1687456] - [net] sched: pie: update references (Ivan Vecera) [1688236 1687456] - [net] sched: pie: add derandomization mechanism (Ivan Vecera) [1688236 1687456] - [net] sched: pie: add more cases to auto-tune alpha and beta (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change initial value of pie_vars->burst_time (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change default value of pie_params->tupdate (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change default value of pie_params->target (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change value of QUEUE_THRESHOLD (Ivan Vecera) [1688236 1687456] - [net] sched: don't release block->lock when dumping chains (Ivan Vecera) [1688236 1687456] - [net] sched: set dedicated tcf_walker flag when tp is empty (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix metadata handling (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix NULL pointer dereference during init (Ivan Vecera) [1688236 1687456] - [net] Use RCU_POINTER_INITIALIZER() to init static variable (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel replace/delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel add/delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify concurrent delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify concurrent replace (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules replace (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules deletion (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules insertion (Ivan Vecera) [1688236 1687456] - [net] selftests: tdc_batch.py: add options needed for concurrency tests (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbedit: fix refcount leak when replace fails (Ivan Vecera) [1688236 1687456] - [net] sched: act_ipt: fix refcount leak when replace fails (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: Add dst_cache support (Ivan Vecera) [1688236 1687456] - [net] net_sched: initialize net pointer inside tcf_exts_init() (Ivan Vecera) [1687456 1688236] - [net] sched: potential NULL dereference in tcf_block_find() (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a memory leak in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a race condition in tcindex_destroy() (Ivan Vecera) [1688236 1687456] - [net] sched: using kfree_rcu() to simplify the code (Ivan Vecera) [1688236 1687456] - [net] sched: route: don't set arg->stop in route4_walk() when empty (Ivan Vecera) [1688236 1687456] - [net] sched: fw: don't set arg->stop in fw_walk() when empty (Ivan Vecera) [1688236 1687456] - [net] sched: cgroup: verify that filter is not NULL during walk (Ivan Vecera) [1688236 1687456] - [net] sched: matchall: verify that filter is not NULL in mall_walk() (Ivan Vecera) [1688236 1687456] - [net] sched: remove duplicated include from cls_api.c (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix two more memory leaks in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a memory leak in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] sched: unlock rules update API (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tcf_block_find() into standalone functions (Ivan Vecera) [1688236 1687456] - [net] sched: add flags to Qdisc class ops struct (Ivan Vecera) [1688236 1687456] - [net] sched: extend proto ops to support unlocked classifiers (Ivan Vecera) [1688236 1687456] - [net] sched: extend proto ops with 'put' callback (Ivan Vecera) [1688236 1687456] - [net] sched: track rtnl lock status when validating extensions (Ivan Vecera) [1688236 1687456] - [net] sched: prevent insertion of new classifiers during chain flush (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tp insert/delete for concurrent execution (Ivan Vecera) [1688236 1687456] - [net] sched: traverse classifiers in chain with tcf_get_next_proto() (Ivan Vecera) [1688236 1687456] - [net] sched: introduce reference counting for tcf_proto (Ivan Vecera) [1688236 1687456] - [net] sched: protect filter_chain list with filter_chain_lock mutex (Ivan Vecera) [1688236 1687456] - [net] sched: protect chain template accesses with block lock (Ivan Vecera) [1688236 1687456] - [net] sched: traverse chains in block with tcf_get_next_chain() (Ivan Vecera) [1688236 1687456] - [net] sched: protect block->chain0 with block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tc_ctl_chain() to use block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: protect chain->explicitly_created with block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: protect block state with mutex (Ivan Vecera) [1688236 1687456] - [net] Change TCA_ACT_* to TCA_ID_* to match that of TCA_ID_POLICE (Ivan Vecera) [1688236 1687456] - [net] Move all TC actions identifiers to one place (Ivan Vecera) [1688236 1687456] - [net] sched: use struct_size() helper (Ivan Vecera) [1688236 1687456] - [net] documentation: bring operstate documentation up-to-date (Ivan Vecera) [1688236 1687456] - [net] cls_flower: Remove filter from mask before freeing it (Ivan Vecera) [1688236 1687456] - [net] cls_flower: don't expose TC actions to drivers anymore (Ivan Vecera) [1688236 1687456] - [net] drivers: net: use flow action infrastructure (Ivan Vecera) [1688236 1687456] - [net] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1688236 1687456] - [net] net_sched: add performance counters for basic filter (Ivan Vecera) [1688236 1687456] - [net] net_sched: add hit counter for matchall (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: allocate mask dynamically in fl_change() (Ivan Vecera) [1688236 1687456] - [net] selftests: tc-testing: fix parsing of ife type (Ivan Vecera) [1688236 1687456] - [net] net_sched: refetch skb protocol for each filter (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix memory leak in case of action replace (Ivan Vecera) [1688236 1687456] - [net] sch_api: Change signature of qdisc_tree_reduce_backlog() to use ints (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Correctly update parent qlen when splitting GSO packets (Ivan Vecera) [1688236 1687456] - [net] sched: Fix detection of empty queues in child qdiscs (Ivan Vecera) [1688236 1687456] - [net] sched: Avoid dereferencing skb pointer after child enqueue (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Remove old entries from rhashtable (Ivan Vecera) [1688236 1687456] - [net] sched: simplify the qdisc_leaf code (Ivan Vecera) [1688236 1687456] - [net] selftests: Fix test errors related to lib.mk khdr target (Ivan Vecera) [1688236 1687456] - [net] net_sched: fold tcf_block_cb_call() into tc_setup_cb_call() (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Reject duplicated rules also under skip_sw (Ivan Vecera) [1688236 1687456] - [net] tc-testing: gitignore, ignore generated test results (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Implement the TdcResults module in tdc (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Add new TdcResults module (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Add command timeout feature to tdc (Ivan Vecera) [1688236 1687456] - [net] netem: use a list in addition to rbtree (Ivan Vecera) [1688236 1687456] - [net] Prevent invalid access to skb->prev in __qdisc_drop_all (Ivan Vecera) [1688236 1687456] - [net] tc-testing: tdc.py: Guard against lack of returncode in executed command (Ivan Vecera) [1688236 1687456] - [net] tc-testing: tdc.py: ignore errors when decoding stdout/stderr (Ivan Vecera) [1688236 1687456] - [net] etf: Drop all expired packets (Ivan Vecera) [1688236 1687456] - [net] etf: Split timersortedlist_erase() (Ivan Vecera) [1688236 1687456] - [net] etf: Use cached rb_root (Ivan Vecera) [1688236 1687456] - [net] etf: Cancel timer if there are no pending skbs (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Classify packets using port ranges (Ivan Vecera) [1688236 1687456] - [net] act_mirred: clear skb->tstamp on redirect (Ivan Vecera) [1688236 1687456] - [net] core: use __vlan_hwaccel helpers (Ivan Vecera) [1688236 1687456] - [net] sched: Replace call_rcu_bh() and rcu_barrier_bh() (Ivan Vecera) [1688236 1687456] - [net] sched: Remove egdev mechanism (Ivan Vecera) [1688236 1687456] - [net] sched: avoid writing on noop_qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: simplify the hell out u32_delete() emptiness check (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: keep track of knodes count in tc_u_common (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tp_c (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: the tp_c argument of u32_set_parms() is always tp->data (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: pass tc_u_common to u32_set_parms() instead of tc_u_hnode (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: clean tc_u_common hashtable (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tc_u_common ->rcu (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tc_u_knode ->tp (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of unused argument of u32_destroy_key() (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: make sure that divisor is a power of 2 (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: disallow linking to root hnode (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: mark root hnode explicitly (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix coding style issues (Ivan Vecera) [1688236 1687456] - [net] treewide: Replace more open-coded allocation size multiplications (Ivan Vecera) [1688236 1687456] - [net] sched: remove unused helpers (Ivan Vecera) [1688236 1687456] - [net] tc-testing: use a plugin to build eBPF program (Ivan Vecera) [1688236 1687456] - [net] tc-testing: fix build of eBPF programs (Ivan Vecera) [1688236 1687456] - [net] tc: Add support for configuring the taprio scheduler (Ivan Vecera) [1688236 1687456] - [documentation] KVM: arm64: Clarify access behaviour for out-of-range SVE register slice IDs (Andrew Jones) [1550499] - [documentation] KVM: Clarify KVM_{SET,GET}_ONE_REG error code documentation (Andrew Jones) [1550499] - [documentation] KVM: Clarify capability requirements for KVM_ARM_VCPU_FINALIZE (Andrew Jones) [1550499] - [kvm] KVM: arm/arm64: Clean up vcpu finalization function parameter naming (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Explain validity checks in set_sve_vls() (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Simplify KVM_REG_ARM64_SVE_VLS array sizing (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: WARN when avoiding divide-by-zero in sve_reg_to_region() (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Make register ioctl access errors more consistent (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Miscellaneous tidyups in guest.c (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Clean up UAPI register ID definitions (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: sys_regs: Demote redundant vcpu_has_sve() checks to WARNs (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Demote kvm_arm_init_arch_resources() to just set up SVE (Andrew Jones) [1550499] - [arm64] arm64/sve: Clarify vq map semantics (Andrew Jones) [1550499] - [kvm] arm64: KVM: Fix system register enumeration (Andrew Jones) [1550499] - [documentation] KVM: arm64/sve: Document KVM API extensions for SVE (Andrew Jones) [1550499] - [documentation] KVM: Document errors for KVM_GET_ONE_REG and KVM_SET_ONE_REG (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add a capability to advertise SVE support (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Allow userspace to enable SVE for vcpus (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Add pseudo-register for the guest's vector lengths (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Add KVM_ARM_VCPU_FINALIZE ioctl (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Add hook for arch-specific KVM initialisation (Andrew Jones) [1550499] - [arm64] arm64/sve: In-kernel vector length availability query interface (Andrew Jones) [1550499] - [kvm] KVM: arm64: Enumerate SVE register indices for KVM_GET_REG_LIST (Andrew Jones) [1550499] - [arm64] KVM: arm64/sve: Add SVE support to register access ioctl interface (Andrew Jones) [1550499] - [kvm] KVM: arm64: Reject ioctl access to FPSIMD V-regs on SVE vcpus (Andrew Jones) [1550499] - [kvm] KVM: arm64: Factor out core register ID enumeration (Andrew Jones) [1550499] - [kvm] KVM: arm64: Add missing #include of in guest.c (Andrew Jones) [1550499] - [include] KVM: Allow 2048-bit register access via ioctl interface (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Context switch the SVE registers (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: System register context switch and access support (Andrew Jones) [1550499] - [kvm] KVM: arm64: Support runtime sysreg visibility filtering (Andrew Jones) [1550499] - [kvm] KVM: arm64: Propagate vcpu into read_id_reg() (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add a vcpu flag to control SVE visibility for the guest (Andrew Jones) [1550499] - [arm64] arm64/sve: Enable SVE state tracking for non-task contexts (Andrew Jones) [1550499] - [arm64] arm64/sve: Check SVE virtualisability (Andrew Jones) [1550499] - [arm64] arm64/sve: Clarify role of the VQ map maintenance functions (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add missing #includes to kvm_host.h (Andrew Jones) [1550499] - [kvm] KVM: arm64: Refactor kvm_arm_num_regs() for easier maintenance (Andrew Jones) [1550499] - [arm64] KVM: arm64: Delete orphaned declaration for __fpsimd_enabled() (Andrew Jones) [1550499] - [arm64] arm64: fpsimd: Always set TIF_FOREIGN_FPSTATE on task state flush (Andrew Jones) [1550499] - [documentation] KVM: Documentation: Document arm64 core registers in detail (Andrew Jones) [1550499] - [arm64] arm64/sve: Disentangle from (Andrew Jones) [1550499] - [arm64] arm64/sve: ptrace: Fix SVE_PT_REGS_OFFSET definition (Andrew Jones) [1550499]- [fs] xfs: fix reporting supported extra file attributes for statx() (Bill O'Donnell) [1721034] - [scsi] scsi: hpsa: correct ioaccel2 chaining (Joseph Szczypek) [1706121] - [powerpc] powerpc/pseries/mobility: rebuild cacheinfo hierarchy post-migration (Steve Best) [1720929] - [powerpc] powerpc/pseries/mobility: prevent cpu hotplug during DT update (Steve Best) [1720929] - [powerpc] powerpc/cacheinfo: add cacheinfo_teardown, cacheinfo_rebuild (Steve Best) [1720929] - [kernel] cpuset: restore sanity to cpuset_cpus_allowed_fallback() (Joel Savitz) [1677311]- [scripts] scripts: override locale from environment when running recordmcount.pl (Prarit Bhargava) [1721515] - [netdrv] net: aquantia: fix wol configuration not applied sometimes (Igor Russkikh) [1662198] - [x86] x86/resctrl: Prevent NULL pointer dereference when local MBM is disabled (Prarit Bhargava) [1721208] - [fs] inotify: Fix fsnotify_mark refcount leak in inotify_update_existing_watch() (Miklos Szeredi) [1451863] - [fs] inotify: Fix fd refcount leak in inotify_add_watch(). (Miklos Szeredi) [1451863] - [fs] fanotify: Use inode_is_open_for_write (Miklos Szeredi) [1451863] - [fs] fanotify: Make sure to check event_len when copying (Miklos Szeredi) [1451863] - [fs] fsnotify/fdinfo: include fdinfo.h for inotify_show_fdinfo() (Miklos Szeredi) [1451863] - [include] fanotify: introduce new event mask FAN_OPEN_EXEC_PERM (Miklos Szeredi) [1451863] - [include] fsnotify: refactor fsnotify_parent()/fsnotify() paired calls when event is on path (Miklos Szeredi) [1451863] - [include] fanotify: introduce new event mask FAN_OPEN_EXEC (Miklos Szeredi) [1451863] - [fs] fanotify: return only user requested event types in event mask (Miklos Szeredi) [1451863] - [fs] fanotify: support reporting thread id instead of process id (Miklos Szeredi) [1451863] - [fs] fanotify: add BUILD_BUG_ON() to count the bits of fanotify constants (Miklos Szeredi) [1451863] - [fs] fsnotify: convert runtime BUG_ON() to BUILD_BUG_ON() (Miklos Szeredi) [1451863] - [fs] fanotify: deprecate uapi FAN_ALL_* constants (Miklos Szeredi) [1451863] - [fs] fanotify: simplify handling of FAN_ONDIR (Miklos Szeredi) [1451863] - [include] fanotify: fix collision of internal and uapi mark flags (Miklos Szeredi) [1451863] - [fs] fanotify: store fanotify_init() flags in group's fanotify_data (Miklos Szeredi) [1451863] - [fs] fanotify: clean up handling of "mark type" (Miklos Szeredi) [1451863] - [fs] fsnotify: fix false positive warning on inode delete (Miklos Szeredi) [1451863] - [include] inotify: Add flag IN_MASK_CREATE for inotify_add_watch() (Miklos Szeredi) [1451863] - [fs] fanotify: factor out helpers to add/remove mark (Miklos Szeredi) [1451863] - [fs] fsnotify: add helper to get mask from connector (Miklos Szeredi) [1451863] - [fs] fsnotify: let connector point to an abstract object (Miklos Szeredi) [1451863] - [fs] fsnotify: pass connp and object type to fsnotify_add_mark() (Miklos Szeredi) [1451863] - [fs] fsnotify: use typedef fsnotify_connp_t for brevity (Miklos Szeredi) [1451863] - [powerpc] powerpc/pseries: Fix oops in hotplug memory notifier (Steve Best) [1720932] - [netdrv] net: aquantia: tcp checksum 0xffff being handled incorrectly (Igor Russkikh) [1719176] - [netdrv] net: aquantia: fix LRO with FCS error (Igor Russkikh) [1719176] - [netdrv] net: aquantia: check rx csum for all packets in LRO session (Igor Russkikh) [1719176] - [netdrv] net: aquantia: tx clean budget logic error (Igor Russkikh) [1719176] - [security] selinux: log raw contexts as untrusted strings (Ondrej Mosnacek) [1719666] - [kernel] audit: add saddr_fam filter field (Richard Guy Briggs) [1715679] - [kernel] audit: re-structure audit field valid checks (Richard Guy Briggs) [1715679] - [kernel] audit: rename FILTER_TYPE to FILTER_EXCLUDE (Richard Guy Briggs) [1715679] - [kernel] audit: allow other filter list types for AUDIT_EXE (Richard Guy Briggs) [1715679] - [documentation] ovl: doc: add non-standard corner cases (Miklos Szeredi) [1718370] - [fs] ovl: support the FS_IOC_FSETXATTR ioctls (Miklos Szeredi) [1718370] - [fs] ovl: relax WARN_ON() for overlapping layers use case (Miklos Szeredi) [1718370] - [fs] ovl: check the capability before cred overridden (Miklos Szeredi) [1718370] - [fs] ovl: do not generate duplicate fsnotify events for "fake" path (Miklos Szeredi) [1718370] - [fs] ovl: support stacked SEEK_HOLE/SEEK_DATA (Miklos Szeredi) [1718370] - [fs] ovl: fix missing upper fs freeze protection on copy up for ioctl (Miklos Szeredi) [1718370] - [fs] fuse: fallocate: fix return with locked inode (Miklos Szeredi) [1717457] - [fs] fuse: honor RLIMIT_FSIZE in fuse_file_fallocate (Miklos Szeredi) [1717457] - [fs] fuse: decrement NR_WRITEBACK_TEMP on the right page (Miklos Szeredi) [1717457] - [fs] fuse: handle zero sized retrieve correctly (Miklos Szeredi) [1717457] - [fs] fuse: continue to send FUSE_RELEASEDIR when FUSE_OPEN returns ENOSYS (Miklos Szeredi) [1717457]- [mm] mm/mincore.c: make mincore() more conservative (Rafael Aquini) [1664203] {CVE-2019-5489} - [x86] x86/umip: Make the UMIP activated message generic (David Arcari) [1720014] - [x86] x86/umip: Print UMIP line only once (David Arcari) [1720014] - [crypto] crypto: vmac - separate tfm and request context (Desnes Augusto Nunes do Rosario) [1702702] - [crypto] crypto: ccp - Update driver messages to remove some confusion (David Arcari) [1719026] - [block] blk-mq: fix hang caused by freeze/unfreeze sequence (Ming Lei) [1719835] - [block] blk-mq: remove WARN_ON(!q->elevator) from blk_mq_sched_free_requests (Ming Lei) [1719835] - [block] block: free sched's request pool in blk_cleanup_queue (Ming Lei) [1719835] - [block] block: don't protect generic_make_request_checks with blk_queue_enter (Ming Lei) [1719835] - [block] block: move blk_exit_queue into __blk_release_queue (Ming Lei) [1719835] - [block] block: print offending values when cloned rq limits are exceeded (Ming Lei) [1719816] - [block] block: fix page leak when merging to same page (Ming Lei) [1662864] - [x86] RHEL: fix build of spec_ctrl.h for older assemblers (Jeff Moyer) [1719406] - [drm] drm/amd/display: Initialize stream_update with memset (Jeff Moyer) [1719406] - [mm] mm/gup: finish consolidating error handling (Jeff Moyer) [1641506] - [mm] mm/gup: cache dev_pagemap while pinning pages (Jeff Moyer) [1641506] - [rpmspec] kernel packaging: Fix extra namespace collision (Prarit Bhargava) [1699868] - [rpmspec] redhat: kernel-selftests-internal: add dependencies (Jiri Benc) [1717943] - [kernel] kernel/module.c: Only return -EEXIST for modules that have finished loading (Prarit Bhargava) [1666939] - [input] Input: elantech - remove P52 and P72 from SMBus blacklist (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - handle physical middle button (Benjamin Tissoires) [1703157] - [input] Input: elantech/SMBus - export all capabilities from the PS/2 node (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - do not query the info if they are provided (Benjamin Tissoires) [1703157] - [input] Input: elantech - detect middle button based on firmware version (Benjamin Tissoires) [1703157] - [input] Input: elantech - add helper function elantech_is_buttonpad() (Benjamin Tissoires) [1703157] - [input] Input: elantech - query the min/max information beforehand too (Benjamin Tissoires) [1703157] - [input] Input: elantech - enable middle button support on 2 ThinkPads (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - increment wakeup count if wake source (Benjamin Tissoires) [1703157] - [kernel] timekeeping: Update multiplier when NTP frequency is set directly (Prarit Bhargava) [1714164] - [fs] xfs: fix use after free in buf log item unlock assert (Brian Foster) [1666150] - [fs] xfs: add missing error check in xfs_prepare_shift() (Brian Foster) [1699214] - [documentation] Documentation: Fix grammatical error in sysctl/fs.txt & clarify negative dentry (Waiman Long) [1673955] - [fs] fs/dcache: Track & report number of negative dentries (Waiman Long) [1673955] - [fs] fs/dcache: Fix incorrect nr_dentry_unused accounting in shrink_dcache_sb() (Waiman Long) [1673955] - [net] tcp: tcp_fragment() should apply sane memory limits (Florian Westphal) [1719858] {CVE-2019-11478} - [net] tcp: limit payload size of sacked skbs (Florian Westphal) [1719603] {CVE-2019-11477}- [tools] kvm: selftests: make hyperv_cpuid test pass on AMD (Vitaly Kuznetsov) [1718501] - [scsi] vmw_pvscsi: Fixed to work with SG_CHAIN (Ewan Milne) [1717278] - [x86] mark AMD Rome processors supported (David Arcari) [1520002] - [fs] ext4: zero out the unused memory region in the extent tree block (Lukas Czerner) [1715276] {CVE-2019-11833} - [s390] s390/smp: Fix calling smp_call_ipl_cpu() from ipl CPU (David Hildenbrand) [1715041] - [vfio] vfio/type1: Limit DMA mappings per container (Alex Williamson) [1695592] {CVE-2019-3882} - [tools] selftests/powerpc: Remove Power9 paste tests (Diego Domingos) [1662374] - [tools] selftests/powerpc: Remove Power9 copy_unaligned test (Diego Domingos) [1662374] - [tools] selftests/powerpc: Fix ptrace tm failure (Diego Domingos) [1662374] - [netdrv] mlxsw: core: Prevent reading unsupported slave address from SFP EEPROM (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Prevent QSFP module initialization for old hardware (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix autoneg status in ethtool (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Reincrease PCI reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Put MC TCs into DWRR mode (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Add a multicast pool for Spectrum-2 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test VRF MAC vetoing (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not check VRF MAC address (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw ordered workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for EMAD workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add MDB entries in prepare phase (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: mlxsw: core: avoid -Wint-in-bool-context warning (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Initialize base_mac (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Prevent duplication during QSFP module initialization (Ivan Vecera) [1680241] - [netdrv] mellanox: Switch to bitmap_zalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Extend initialization by querying resources data (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Extend input parameters list of command API (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Modify input parameter name in initialization API (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Fix comment misspelling (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Move resource query API to common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Add ethtool support (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Make structures and variables names shorter (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Move ethtool module callbacks to a common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Make mlxsw_sp_acl_tcam_vregion_rehash() return void (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remember where to continue rehash migration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Allow to interrupt/continue rehash work (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Do rollback as another call to mlxsw_sp_acl_tcam_vchunk_migrate_all() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Put vchunk migrate start/end code into separate functions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Put this_is_rollback to rehash context struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Rename variables in mlxsw_sp_acl_tcam_ventry_migrate() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: assign vchunk->chunk by the newly created chunk (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: assign vregion->region by the newly created region (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push code start/end from mlxsw_sp_acl_tcam_vregion_migrate() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push rehash start/end code into separate functions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce new rehash context struct and save hint_priv there (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't migrate already migrated entry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push rehash dw struct into rehash sub-struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Handle SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: remove set but not used variable 'autoneg_status' (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add massive delta rehash test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Check migrate end trace (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add vregion migration end tracepoint (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add IPv6 variant of simple delta rehash test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't take mutex in mlxsw_sp_acl_tcam_vregion_rehash_work() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove RTNL lock assertions from ERP code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't take rtnl lock during vregion_rehash_intrvl_set() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce a mutex to guard objagg instance manipulation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Enable vregion rehash per-profile (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce mutex to guard Bloom Filter updates (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce vregion mutex (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Refactor vregion association code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce a mutex to guard region list updates (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split TCAM group structure into two (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove unused ops field from group structure (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 ASIC support for new port types and speeds (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 ASIC port type-speed operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add new port type-speed fields for PTYS register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: 80 columns wrapping change (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Rename p_eth_proto_adm to full name p_eth_proto_admin (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add port type-speed operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Rename port type-speed functions to ASIC specific (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Query port connector type from firmware (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove unsupported eth_proto_lp_advertise field in PTYS (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove duplicate port link mode entry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Avoid -Wformat-truncation warnings (Ivan Vecera) [1680241] - [netdrv] net: Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Reject overlarge headroom size requests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Update port headroom configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Add Spectrum-2 shared buffer configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_mm in sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_cm in sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_prs in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_pms in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep pool descriptors in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allocate prs & pms dynamically (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add struct mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change IP2ME CPU policer rate and burst size values (Ivan Vecera) [1680241] - [netdrv] mlxsw: __mlxsw_sp_port_headroom_set(): Fix a use of local variable (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add some missing configuration symbols (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: fix spelling mistake "temprature" -> "temperature" (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend thermal module with per QSFP module thermal zones (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Allow thermal zone binding to an external cooling device (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Add QSFP module temperature label attribute to hwmon (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend hwmon interface with QSFP module temperature attributes (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend hwmon interface with fan fault attribute (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Rename cooling device (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Replace thermal temperature trips with defines (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Modify thermal zone definition (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Set different thermal polling time based on bus frequency capability (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Add API for QSFP module temperature thresholds reading (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Fan Out of Range Event Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Management Temperature Bulk Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Move QSFP EEPROM definitions to common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Remove unused variables (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: avoid double sourcing of lib.sh (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Fix VLAN modify action support (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Drop unnecessary WARN_ON_ONCE() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set LAG port collector only when active (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Remove getting PORT_BRIDGE_FLAGS (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add simple delta rehash test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add couple of vregion rehash tracepoints (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: add "acl_region_rehash_interval" devlink param (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement region migration according to hints (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add multi field to PAGT register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Pass hints priv all the way to ERP code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement basic ERP rehash hits creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split entry struct into entry and ventry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split chunk struct into chunk and vchunk (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split region struct into region and vregion (Ivan Vecera) [1680241] - [netdrv] lib: objagg: implement optimization hints assembly and use hints for object creation (Ivan Vecera) [1680241] - [netdrv] devlink: publish params only after driver init is done (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for blackhole routes (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Offload blackhole routes (Ivan Vecera) [1680241] - [netdrv] mlxsw: Implement ndo_get_port_parent_id() (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Trace EMAD errors (Ivan Vecera) [1680241] - [netdrv] drivers: net: use flow action infrastructure (Ivan Vecera) [1680241] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_flower: Fix test result handling (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Ignore ARP (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Enable forwarding (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Flush neighbors (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Fix roaming test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Wait for tardy mirrored packets (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_changes: Fix TTL test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Update ping limits (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Update ping limits (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Make ping timeout configurable (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Add delta two masks one key test (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Fix multiple_masks_test (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Extend and move trace helpers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add C-TCAM spill tracepoint (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Include delta bits into hashtable key (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Use OK instead of PASS in test output (Ivan Vecera) [1680241] - [tools] selftests: net: forwarding: change devlink resource support checking (Ivan Vecera) [1680241] - [documentation] Documentation: add devlink param file for mlxsw driver (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add more extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Fix rul/rule typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Move mr_ruleset and mr_rule structs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove unnecessary arg on action_replace call path (Ivan Vecera) [1680241] - [netdrv] mlxfw: Replace license text with SPDX identifiers and adjust copyrights (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Enable VXLAN on Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add support for VXLAN on Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Breakout common code to a common function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose functions to create and destroy underlay RIF (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for ARP suppression (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VXLAN symmetric routing (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for ARP decapsulation (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VXLAN asymmetric routing (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology with keys test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology with key test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology with keys test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology with key test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP tunneling lib (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add GRE tunnel support for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Update tunnel decap properties (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Support RIF without device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Change mlxsw_sp_ipip_lb_ul_vr_id() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add underlay RIF ID support (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Mark RIF index as taken before creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Adjust loopback RIF configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set RIF ops per ASIC type (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Split RIF ops array for Spectrum-2 support (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add underlay egress RIF field in RTDP register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add fields to RITR - Router Interface Table Register (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for externally learned FDB entries (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test FDB offload indication (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not treat static FDB entries as sticky (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Update dummy FID index (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Return error on PCI reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Increase PCI SW reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Ring CQ's doorbell before RDQ's (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test veto of unsupported VXLAN FDBs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add extack messages to VXLAN FDB rejection (Ivan Vecera) [1680241] - [netdrv] mlxsw: Add extack to mlxsw_sp_nve_ops.fdb_replay (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl_bloom_filter: use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VLAN deletion (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Set PVID correctly during VLAN deletion (Ivan Vecera) [1680241] - [net] net: bridge: Fix VLANs memory leak (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test case for VLAN addition error flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Replace error code with EINVAL (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Avoid returning errors in commit phase (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add VXLAN dependency for spectrum (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Disable lag port TX before removing it (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove ASSERT_RTNL()s in module removal flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add cleanup after C-TCAM update error condition (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: drop useless LIST_HEAD (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add router test with VID 1 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Adjust test regarding VID 1 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove limitation regarding VID 1 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Switch to VID 4095 as default VID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add an helper function to cleanup VLAN entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Store pointer to default port VLAN in port struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Allow controlling destruction of default port VLAN (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set PVID during port initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Replace hard-coded default VID with a define (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test case for L3 VNI (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not force specific configuration order (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add rtnetlink tests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Hold a reference on RIF's netdev (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Make RIF deletion more robust (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Propagate 'struct mlxsw_sp' further (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Properly cleanup LAG uppers when removing port from LAG (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove reference count from VLAN entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Handle VLAN device unlinking (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Remove unused function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not destroy RIFs based on FID's reference count (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Sanitize VLAN interface's uppers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Fix memory leak upon driver reload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add trap for decapsulated ARP packets (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Increase timeout during firmware flash process (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Update the supported firmware to version 13.1910.622 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom delta test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom filter complex test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom filter simple test (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Activate Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Set master RP index on transition to eRP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Update Bloom filter on eRP transitions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Set A-TCAM rules in Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Bloom filter update (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Bloom filter handling (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 Bloom filter resource (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy Engine Algorithmic Bloom Filter Entries Register (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test FID RIF MAC vetoing (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test RIF MAC vetoing (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Veto unsupported RIF MAC addresses (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add mlxsw_sp.mac_mask (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Generalize mlxsw_sp_netdevice_router_port_event() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: extack: Test VLAN add on a port device (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: extack: Test VLAN add on a VXLAN device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack on port VLAN events (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack on VXLAN VLAN events (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add multicast routing test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add Multicast routing support for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Limit priority value (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Support rule creation without action creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add replace rule action operation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add multicast router profile operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Spectrum-2 keys (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change stage of ACL initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy Engine Multicast Router Binding Table Register (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add PVID test case for VXLAN with VLAN-aware bridges (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: vxlan: Test FDB un/marking on VXLAN join/leave (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Un/offload FDB on nve_fid_disable/enable (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add mlxsw_sp_fid_ops.fdb_clear_offload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add mlxsw_sp_nve_ops.fdb_clear_offload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add mlxsw_sp_nve_ops.fdb_replay (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Publish mlxsw_sp_switchdev_notifier (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Track NVE type at FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Fix VLAN device deletion via ioctl (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Relax GRE decap matching check (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Avoid leaking FID's reference count (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Remove easily triggerable warnings (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a new test extack.sh (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add one-armed router test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Mirror loopbacked packets instead of trapping them (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Load firmware version based on devlink parameter (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Reset firmware after flash during driver initialization (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add VxLAN test with a VLAN-aware bridge (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN configuration with a VLAN-aware bridge (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Consider VLAN-aware bridges as valid (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable VxLAN enslavement to VLAN-aware bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Prepare function for VLAN-aware bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Unify VxLAN leave function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Add API to lookup 802.1Q FIDs without creating them (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Flip driver to use emulated 802.1Q FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Introduce emulated VLAN RIFs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Introduce emulated 802.1Q FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Make flood index calculation more robust (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not set field when it is reserved (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Consider VxLAN learning enabled as valid (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Allow VxLAN learning (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Allow deletion of learned FDB entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Process learned VxLAN FDB entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add API to resolve learned IP addresses (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Allow FID lookup by its index (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Store ifindex of NVE device in FID (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add definition of unicast tunnel record for SFN register (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend cooling device with cooling levels (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN flooding (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose discard counters via ethtool (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add simple delta test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Implement delta for ERP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Push code related to num_ctcam_erps inc/dec into separate helpers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Remove mlxsw_afk_encode() block range args and key/mask check (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Don't encode the key again in mlxsw_sp_acl_atcam_12kb_lkey_id_get() (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl: Change order of args of ops->encode_block() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Pass key pointer to master_mask_set/clear (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl_erp: Convert to use objagg for tracking ERPs (Ivan Vecera) [1680241] - [tools] selftests: Adjust spectrum-2 ctcam_two_atcam_masks_test (Ivan Vecera) [1680241] - [tools] selftests: Adjust spectrum-2 two_mask_test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix IP2ME CPU policer configuration (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Add a test for UC awareness (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Tweak for min shaper (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set minimum shaper on MC TCs (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: QEEC: Add minimum shaper fields (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Fix devlink unregister flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Don't ignore deletions of learned MACs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add support for VxLAN encapsulation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable VxLAN enslavement to bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Configure matching local routes for NVE decap (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Clear NVE configuration when destroying 802.1D FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Implement VxLAN operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Implement common NVE core (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Allow querying VR ID based on table ID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Enable local routes promotion to perform NVE decap (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Add APIs to lookup FID without creating it (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Allow setting and clearing NVE properties on FID (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Fix use-after-free when flashing firmware during init (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add NVE packet traps (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add NVE resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Monitoring Parsing State Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add definition of unicast tunnel record for SFD register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE QoS Default Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE QoS Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Decapsulation ECN Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Encapsulation ECN Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Underlay Multicast Table Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunnel Port Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE General Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Seed LAG hash function (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Extend FDB flush types for NVE (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add a new type of KVD linear record (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Move L3 protocol and address definitions to global header file (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not assume notifier information type (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Check notification relevance based on upper device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Prepare for VxLAN FDB notifications (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove misuses of private header file (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Make executable (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Have lldpad_app_wait_set() wait for unknown, too (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Fix a typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Delete RIF when VLAN device is removed (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Derive event type from event queue number (Ivan Vecera) [1680241] - [netdrv] mlxsw: Make MLXSW_SP1_FWREV_MINOR a hard requirement (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Bump required firmware version (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for UC behavior under MC flood (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add mtu_set(), mtu_restore() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add ethtool_stats_get() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Tweak SBMM configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Configure MC pool (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow configuration of static pools (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Pass SBPM min_size in cells (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow an infinite maximum for per-TC pool limit (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow pools of infinite size (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep shared buffer size in mlxsw_sp_sb (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Split TC_COUNT into ingress and egress (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Use devlink pool indices throughout (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Init shaper for TCs 8..15 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Set up a dedicated pool for BUM traffic (Ivan Vecera) [1680241] - [netdrv] mlxsw: remove unused arrays mlxsw_i2c_driver_name and mlxsw_pci_driver_name (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: remove unnecessary function mlxsw_core_driver_put (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose counter for all 16 TCs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Include RFC-2819 counters in stats length (Ivan Vecera) [1680241] - [netdrv] mlxsw: Replace license text with SPDX identifiers and adjust copyrights (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add TC flower test for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Reset FW after flash (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Update the supported firmware to version 13.1702.6 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Disallow usage of vlan_id key on egress (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: use PTR_ERR_OR_ZERO() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: gre_multipath: Update next-hop statistics match criteria (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Configure MC-aware mode on mlxsw ports (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix a typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Switch Traffic Class Table is Multicast-Aware Register (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add test for ip_forward_update_priority (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Move DSCP capture to lib.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Move lldpad waiting to lib.sh (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Handle sysctl_ip_fwd_update_priority (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Extract work-scheduling into a new function (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL team LACP (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL team (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Introduce $ARPING (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Support team devices (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add require_command() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_dscp_bridge: Fix (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add test for trust-DSCP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Support ieee_setapp, ieee_delapp (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Priority to DSCP Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS ReWrite Enable Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Priority Trust State Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Port DSCP to Priority Mapping Register (Ivan Vecera) [1680241] - [tools] selftests: add a selftest for directed broadcast forwarding (Ivan Vecera) [1680241] - [tools] selftests: forwarding: add tests for TC chain get and dump operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Start using A-TCAM (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM rule insertion and deletion (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Pass C-TCAM region and entry to insert function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM region initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Make global TCAM resources available to regions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Encapsulate C-TCAM region in A-TCAM region (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Allow encoding a partial key (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Extend Spectrum-2 region struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add support for C-TCAM eRPs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Enable C-TCAM only mode in eRP core (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement common eRP core (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 eRP resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 maximum large key ID resource (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine eRP Table Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine TCAM Entry Register Version 3 (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Prepare PERERP register for A-TCAM usage (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Propagate extack pointer (Ivan Vecera) [1680241] - [tools] selftests: forwarding: gre_multipath: Drop IPv6 tests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Implement chain template hinting (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Extend to support Spectrum-2 ASIC (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add initial Spectrum-2 ACL implementation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add region association callback (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add support for Spectrum-2 block encoding (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Prepare for Spectrum-2 block encoding (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine General Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region eRP Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region Association Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: acl: Introduce activity get operation for action block/set (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add support for activity information from PEFA register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Introduce flex key blocks for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 variant of flex actions ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_mr_tcam: Add Spectrum-2 stubs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add KVDL manager implementation for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Infrastructure Entry Delete Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose counters for various packet sizes (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Optimize processing of VRRP MACs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add VRRP traps (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Direct macvlans' MACs to router (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable macvlan upper devices (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_nh: Unset rp_filter on host VRF (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_span: Change LAG lower selection (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add couple of Spectrum-2 KVD resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Prepare for multiple FW versions for Spectrum and Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement priority setting for rules inserted to TCAM (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add priority field for PTCEV2 register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Move block items encoding into Spectrum op (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Convert mlxsw_afk_create args to ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add tcam init/fini ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split TCAM handling 3 ways (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_mr_tcam: Push Spectrum-specific operations into a separate file (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Pass entry_count to free function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Pass entry type to alloc/free (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Push out KVD linear management into ops (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Tighten up VLAN capture (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Fix helper to get the first KVD linear index (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Allow the first set to be dummy (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Put pointer to flex action ops to mlxsw_sp (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_keys: Change SRC_SYS_PORT flex key element size (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_keys: Split MAC and IP address flex key elements (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Ignore always-zeroed bits in tp->prio (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Introduce Flex2 key type for PTAR register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change name of mlxsw_sp_afk_blocks to mlxsw_sp1_afk_blocks (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: avoid uninitialized variable access (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add mlxsw-specific test for mirror to gretap (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Allow importing dependent libraries (Ivan Vecera) [1680241] - [tools] selftests: forwarding: test for bridge port isolation (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL 802.1q (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL 802.1d (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add scale test for resources (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for mirror-to-gretap test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add scale test for mirror-to-gretap (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for tc flower test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add tc flower scale test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for router test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add router test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add devlink KVD resource test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add devlink_lib_spectrum.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add devlink_lib.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Parameterize NUM_NETIFS in two functions (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add check_err_fail() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Allow lib.sh sourcing from other directories (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_changes: Fix waiting for neighbor (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Split out setup_wait_dev() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test multipath tunneling (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Unset rp_filter (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test routed bridge interface (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Ban PVID change if bridge has a RIF (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add mlxsw_sp_rif_fid() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Publish mlxsw_sp_rif_find_by_dev() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Allocate FID according to PVID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Propagate extack to .fid_get() (Ivan Vecera) [1680241] - [netdrv] net: phy: realtek: Dummy IRQ calls for RTL8366RB (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add generic Realtek PHY driver (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: use new PHYID matching macros (Corinna Vinschen) [1680528] - [include] net: phy: add macros for PHYID matching (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: load driver for all PHYs with a Realtek OUI (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: fix RTL8201F sysfs name (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: Support RTL8366RB variant (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add missing entry for RTL8211C to mdio_device_id table (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add support for RTL8211C (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add missing entry for RTL8211 to mdio_device_id table (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add support for RTL8211 (Corinna Vinschen) [1680528] - [netdrv] r8169: change irq handler to always trigger NAPI polling (Corinna Vinschen) [1680528] - [netdrv] r8169: create function pointer array for chip hw init functions (Corinna Vinschen) [1680528] - [netdrv] r8169: create function pointer array for PHY init functions (Corinna Vinschen) [1680528] - [netdrv] r8169: disable ASPM again (Corinna Vinschen) [1680528] - [netdrv] r8169: disable tx interrupt coalescing on RTL8168 (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: use netif_receive_skb_list batching" (Corinna Vinschen) [1680528] - [netdrv] r8169: use netif_receive_skb_list batching (Corinna Vinschen) [1680528] - [netdrv] r8169: disable default rx interrupt coalescing on RTL8168 (Corinna Vinschen) [1680528] - [netdrv] r8169: fix cable re-plugging issue (Corinna Vinschen) [1680528] - [netdrv] r8169: use netif_start_queue instead of netif_wake_qeueue in rtl8169_start_xmit (Corinna Vinschen) [1680528] - [netdrv] r8169: don't read interrupt mask register in interrupt handler (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded mmiowb barriers (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: make use of xmit_more and __netdev_sent_queue" (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: remove unneeded mmiowb barriers" (Corinna Vinschen) [1680528] - [netdrv] r8169: Avoid pointer aliasing (Corinna Vinschen) [1680528] - [netdrv] r8169: Load MAC address from device tree if present (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl_wol_pll_power_down (Corinna Vinschen) [1680528] - [netdrv] r8169: improve WoL handling (Corinna Vinschen) [1680528] - [netdrv] r8169: enable EEE per default on RTL8168f (Corinna Vinschen) [1680528] - [netdrv] r8169: add EEE support for RTL8168f (Corinna Vinschen) [1680528] - [netdrv] r8169: enable EEE per default on chip versions from RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: add general EEE support for chip versions from RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out PHY init sequence adjusting 10M and ALDPS (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out disabling ALDPS (Corinna Vinschen) [1680528] - [netdrv] r8169: improve firmware handling (Corinna Vinschen) [1680528] - [netdrv] r8169: remove PCI DAC support (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rx buffer allocation (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out getting ether_clk (Corinna Vinschen) [1680528] - [netdrv] r8169: replace mii_bus member with phy_device member in struct rtl8169_private (Corinna Vinschen) [1680528] - [netdrv] r8169: reset chip synchronously in __rtl8169_resume (Corinna Vinschen) [1680528] - [netdrv] r8169: add helpers for locking / unlocking the config registers (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rtl_pcie_state_l2l3_enable (Corinna Vinschen) [1680528] - [netdrv] r8169: initialize task workqueue only once (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded call in pcierr (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl_get_events (Corinna Vinschen) [1680528] - [netdrv] r8169: load Realtek PHY driver module before r8169 (Corinna Vinschen) [1680528] - [netdrv] r8169: don't try to read counters if chip is in a PCI power-save state (Corinna Vinschen) [1680528] - [netdrv] r8169: Add support for new Realtek Ethernet (Corinna Vinschen) [1680528] - [netdrv] r8169: fix WoL device wakeup enable (Corinna Vinschen) [1680528] - [netdrv] r8169: improve spurious interrupt detection (Corinna Vinschen) [1680528] - [netdrv] r8169: fix crash if CONFIG_DEBUG_SHIRQ is enabled (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded mmiowb barriers (Corinna Vinschen) [1680528] - [netdrv] ethernet/realtek: Replace synchronize_sched() with synchronize_rcu() (Corinna Vinschen) [1680528] - [netdrv] r8169: make use of xmit_more and __netdev_sent_queue (Corinna Vinschen) [1680528] - [netdrv] r8169: replace macro TX_FRAGS_READY_FOR with a function (Corinna Vinschen) [1680528] - [netdrv] r8169: use napi_consume_skb where possible (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify detecting chip versions with same XID (Corinna Vinschen) [1680528] - [netdrv] r8169: remove default chip versions (Corinna Vinschen) [1680528] - [netdrv] r8169: remove ancient GCC bug workaround in a second place (Corinna Vinschen) [1680528] - [netdrv] r8169: improve chip version identification (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify ocp functions (Corinna Vinschen) [1680528] - [netdrv] r8169: remove workaround for ancient gcc bug (Corinna Vinschen) [1680528] - [netdrv] r8169: remove manual padding in struct ring_info (Corinna Vinschen) [1680528] - [netdrv] r8169: remove "not PCI Express" message (Corinna Vinschen) [1680528] - [netdrv] r8169: remove print_mac_version (Corinna Vinschen) [1680528] - [netdrv] r8169: use PCI_VDEVICE macro (Corinna Vinschen) [1680528] - [netdrv] r8169: replace event_slow with irq_mask (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unused interrupt sources (Corinna Vinschen) [1680528] - [netdrv] r8169: use dev_get_drvdata where possible (Corinna Vinschen) [1680528] - [netdrv] r8169: merge rtl_irq_enable and rtl_irq_enable_all (Corinna Vinschen) [1680528] - [pci] PCI: add USR vendor id and use it in r8169 and w6692 driver (Corinna Vinschen) [1680528] - [netdrv] net: ethernet: Convert phydev advertize and supported from u32 to link mode (Corinna Vinschen) [1680528] - [netdrv] r8169: fix broken Wake-on-LAN from S5 (poweroff) (Corinna Vinschen) [1680528] - [netdrv] r8169: add support for Byte Queue Limits (Corinna Vinschen) [1680528] - [netdrv] r8169: handle all interrupt events in the hard irq handler (Corinna Vinschen) [1680528] - [netdrv] r8169: fix NAPI handling under high load (Corinna Vinschen) [1680528] - [netdrv] r8169: re-enable MSI-X on RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded call to netif_stop_queue in rtl8169_net_suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify rtl8169_set_magic_reg (Corinna Vinschen) [1680528] - [netdrv] r8169: Enable MSI-X on RTL8106e (Corinna Vinschen) [1680528] - [netdrv] r8169: set RX_MULTI_EN bit in RxConfig for 8168F-family chips (Corinna Vinschen) [1680528] - [netdrv] r8169: always autoneg on resume (Corinna Vinschen) [1680528] - [netdrv] r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO (Corinna Vinschen) [1680528] - [netdrv] r8169: Disable clk during suspend / resume (Corinna Vinschen) [1680528] - [netdrv] r8169: improve a check in rtl_init_one (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rtl8169_irq_mask_and_ack (Corinna Vinschen) [1680528] - [netdrv] r8169: use default watchdog timeout (Corinna Vinschen) [1680528] - [netdrv] r8169: fix autoneg issue on resume with RTL8168E (Corinna Vinschen) [1680528] - [netdrv] r8169: remove duplicated RTL8169s PHY initialization steps (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify RTL8169 PHY initialization (Corinna Vinschen) [1680528] - [netdrv] r8169: Get and enable optional ether_clk clock (Corinna Vinschen) [1680528] - [netdrv] r8169: enable ASPM on RTL8106E (Corinna Vinschen) [1680528] - [netdrv] r8169: Align ASPM/CLKREQ setting function with vendor driver (Corinna Vinschen) [1680528] - [netdrv] r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED (Corinna Vinschen) [1680528] - [netdrv] r8169: set TxConfig register after TX / RX is enabled, just like RxConfig (Corinna Vinschen) [1680528] - [netdrv] r8169: don't configure max jumbo frame size per chip version (Corinna Vinschen) [1680528] - [netdrv] r8169: don't configure csum function per chip version (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify interrupt handler (Corinna Vinschen) [1680528] - [netdrv] r8169: don't include asm headers directly (Corinna Vinschen) [1680528] - [netdrv] r8169: remove version info (Corinna Vinschen) [1680528] - [netdrv] r8169: restore previous behavior to accept BIOS WoL settings (Corinna Vinschen) [1680528] - [netdrv] r8169: power down chip in probe (Corinna Vinschen) [1680528] - [netdrv] r8169: don't read chip phy status register (Corinna Vinschen) [1680528] - [netdrv] r8169: remove mii_if_info member from struct rtl8169_private (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl8169_set_speed_xmii (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_speed_down / phy_speed_up (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_mii_ioctl (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_ethtool_nway_reset (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_ethtool_(g|s)et_link_ksettings (Corinna Vinschen) [1680528] - [netdrv] r8169: replace open-coded PHY soft reset with genphy_soft_reset (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_resume/phy_suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: add basic phylib support (Corinna Vinschen) [1680528] - [netdrv] r8169: fix runtime suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: remove old PHY reset hack (Corinna Vinschen) [1680528] - [netdrv] r8169: remove TBI 1000BaseX support (Corinna Vinschen) [1680528] - [netdrv] r8169: use standard debug output functions (Corinna Vinschen) [1680528] - [netdrv] r8169: reject unsupported WoL options (Corinna Vinschen) [1680528] - [netdrv] r8169: don't check WoL when powering down PHY and interface is down (Corinna Vinschen) [1680528] - [netdrv] r8169: improve saved_wolopts handling (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: restore previous behavior to accept BIOS WoL settings" (Corinna Vinschen) [1680528] - [netdrv] r8169: improve phy initialization when resuming (Corinna Vinschen) [1680528] - [netdrv] r8169: enable ASPM on RTL8168E-VL (Corinna Vinschen) [1680528] - [netdrv] r8169: align ASPM entry latency setting with vendor driver (Corinna Vinschen) [1680528] - [netdrv] r8169: Reinstate ASPM Support (Corinna Vinschen) [1680528] - [netdrv] r8169: Don't disable ASPM in the driver (Corinna Vinschen) [1680528] - [kernel] kernel/sched/psi.c: expose pressure metrics on root cgroup (Waiman Long) [1678388] - [kernel] psi: introduce psi monitor (Waiman Long) [1678388] - [spi] include/: refactor headers to allow kthread.h inclusion in psi_types.h (Waiman Long) [1678388] - [kernel] psi: track changed states (Waiman Long) [1678388] - [kernel] psi: split update_stats into parts (Waiman Long) [1678388] - [kernel] psi: rename psi fields in preparation for psi trigger addition (Waiman Long) [1678388] - [kernel] psi: make psi_enable static (Waiman Long) [1678388] - [kernel] psi: introduce state_mask to represent stalled psi states (Waiman Long) [1678388] - [kernel] kernel: cgroup: add poll file operation (Waiman Long) [1678388] - [fs] fs: kernfs: add poll file operation (Waiman Long) [1678388] - [documentation] psi: clarify the units used in pressure files (Waiman Long) [1678388] - [kernel] psi: avoid divide-by-zero crash inside virtual machines (Waiman Long) [1678388] - [init] psi: clarify the Kconfig text for the default-disable option (Waiman Long) [1678388] - [kernel] psi: fix aggregation idle shut-off (Waiman Long) [1678388] - [init] psi: fix reference to kernel commandline enable (Waiman Long) [1678388] - [kernel] psi: make disabling/enabling easier for vendor kernels (Waiman Long) [1678388] - [kernel] kernel/sched/psi.c: simplify cgroup_move_task() (Waiman Long) [1678388] - [kernel] psi: cgroup support (Waiman Long) [1678388] - [kernel] psi: pressure stall information for CPU, memory, and IO (Waiman Long) [1678388] - [kernel] sched: introduce this_rq_lock_irq() (Waiman Long) [1678388] - [kernel] sched: sched.h: make rq locking and clock functions available in stats.h (Waiman Long) [1678388] - [kernel] sched: loadavg: make calc_load_n() public (Waiman Long) [1678388] - [kernel] sched: loadavg: consolidate LOAD_INT, LOAD_FRAC, CALC_LOAD (Waiman Long) [1678388] - [kernel] delayacct: track delays from thrashing cache pages (Waiman Long) [1678388] - [mm] mm: workingset: tell cache transitions from workingset thrashing (Waiman Long) [1678388] - [mm] mm: workingset: don't drop refault information prematurely (Waiman Long) [1678388] - [scsi] scsi: ibmvfc: Add failed PRLI to cmd_status lookup array (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Byte swap status and error codes when logging (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Remove "failed" from logged errors (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Clean up transport events (Diego Domingos) [1665716] - [scsi] scsi: ibmvscsi: Don't use rc uninitialized in ibmvscsi_do_work (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: fix tripping of blk_mq_run_hw_queue WARN_ON (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: redo driver work thread to use enum action states (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: Wire up host_reset() in the driver's scsi_host_template (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: change strncpy+truncation to strlcpy (Gustavo Duarte) [1665715] - [fs] ext4: avoid panic during forced reboot due to aborted journal (Lukas Czerner) [1717831] - [fs] ext4: fix use-after-free in dx_release() (Lukas Czerner) [1717831] - [fs] ext4: fix data corruption caused by overlapping unaligned and aligned IO (Lukas Czerner) [1717831] - [fs] ext4: avoid drop reference to iloc.bh twice (Lukas Czerner) [1717831] - [nvme] nvme-tcp: mark NVMe/TCP as a technical preview (Chris Leech) [1696451] - [nvme] nvme-tcp: fix possible null deref on a timed out io queue connect (Chris Leech) [1696451] - [nvme] nvme-tcp: rename function to have nvme_tcp prefix (Chris Leech) [1696451] - [nvme] nvme-tcp: fix a NULL deref when an admin connect times out (Chris Leech) [1696451] - [nvme] nvmet-tcp: don't fail maxr2t greater than 1 (Chris Leech) [1696451] - [nvme] nvmet-tcp: implement C2HData SUCCESS optimization (Chris Leech) [1696451] - [nvme] nvme-tcp: fix an endianess miss-annotation (Chris Leech) [1696451] - [nvme] nvme-tcp: support C2HData with SUCCESS flag (Chris Leech) [1696451] - [nvme] nvme-tcp: use older iov_iter API to fix panic (Chris Leech) [1696451] - [nvme] nvmet: fix building bvec from sg list (Ming Lei) [1690287] - [nvme] nvmet: set loop queue's segment boundary mask as PAGE_SIZE - 1 (Ming Lei) [1690287] - [x86] x86/qspinlock: Fix compile error (Waiman Long) [1709451] - [kernel] locking/rwsem: Prevent unneeded warning during locking selftest (Waiman Long) [1709451] - [kernel] locking/rwsem: Enable lock event counting (Waiman Long) [1709451] - [kernel] locking/lock_events: Don't show pvqspinlock events on bare metal (Waiman Long) [1709451] - [kernel] locking/lock_events: Make lock_events available for all archs & other locks (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Introduce generic lockevent_*() counting APIs (Waiman Long) [1709451] - [kernel] locking/rwsem: Enhance DEBUG_RWSEMS_WARN_ON() macro (Waiman Long) [1709451] - [kernel] locking/rwsem: Add debug check for __down_read*() (Waiman Long) [1709451] - [kernel] locking/rwsem: Micro-optimize rwsem_try_read_lock_unqueued() (Waiman Long) [1709451] - [kernel] locking/rwsem: Move rwsem internal function declarations to rwsem-xadd.h (Waiman Long) [1709451] - [kernel] locking/rwsem: Move owner setting code from rwsem.c to rwsem.h (Waiman Long) [1709451] - [kernel] locking/rwsem: Relocate rwsem_down_read_failed() (Waiman Long) [1709451] - [kernel] locking/rwsem: Optimize down_read_trylock() (Waiman Long) [1709451] - [kernel] locking/rwsem: Remove rwsem-spinlock.c & use rwsem-xadd.c for all archs (Waiman Long) [1709451] - [x86] locking/rwsem: Remove arch specific rwsem files (Waiman Long) [1709451] - [kernel] locking/qspinlock: Remove unnecessary BUG_ON() call (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Track the no MCS node available case (Waiman Long) [1709451] - [kernel] locking/qspinlock: Handle > 4 slowpath nesting levels (Waiman Long) [1709451] - [kernel] locking/pvqspinlock: Extend node size when pvqspinlock is configured (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Count instances of nested lock slowpaths (Waiman Long) [1709451] - [kernel] locking/qspinlock, x86: Provide liveness guarantee (Waiman Long) [1709451] - [kernel] locking/qspinlock: Rework some comments (Waiman Long) [1709451] - [kernel] locking/qspinlock: Re-order code (Waiman Long) [1709451] - [x86] x86/headers: Fix -Wmissing-prototypes warning (Waiman Long) [1709451] - [x86] Revert "x86/refcount: Work around GCC inlining bug" (Waiman Long) [1709451] - [x86] x86/asm: 'Simplify' GEN_*_RMWcc() macros (Waiman Long) [1709451] - [x86] x86/refcount: Work around GCC inlining bug (Waiman Long) [1709451] - [lib] locking/refcounts: Include fewer headers in (Waiman Long) [1709451] - [media] media: stk1160: Set the vb2_queue lock before calling vb2_queue_init (Torez Smith) [1697664] - [usb] USB: typec: fsusb302: Drop empty set_current_limit implementation (Torez Smith) [1697664] - [usb] USB: mark expected switch fall-throughs (Torez Smith) [1697664] - [usb] USB: musb: mark expected switch fall-throughs (Torez Smith) [1697664] - [usb] usb: wusbcore: security: cast sizeof to int for comparison (Torez Smith) [1697664] - [usb] usb: typec: tcpm: Support for Alternate Modes (Torez Smith) [1697664] - [usb] usb: typec: pi3usb30532: Start using generic state values (Torez Smith) [1697664] - [usb] usb: typec: Add driver for DisplayPort alternate mode (Torez Smith) [1697664] - [usb] usb: typec: Bus type for alternate modes (Torez Smith) [1697664] - [usb] usb: typec: Register a device for every mode (Torez Smith) [1697664] - [usb] usb: typec: mux: Get the mux identifier from function parameter (Torez Smith) [1697664] - [usb] usb: update for tcpci drivers moving out of staging (Torez Smith) [1697664] - [netdrv] net: usb: Mark expected switch fall-throughs (Torez Smith) [1697664] - [media] media: tm6000: add error handling for dvb_register_adapter (Torez Smith) [1697664] - [usb] usb: typec: function for checking cable plug orientation (Torez Smith) [1697664] - [include] usb: pd: include kernel.h (Torez Smith) [1697664] - [staging] staging: typec: tcpci: move tcpci drivers out of staging (Torez Smith) [1697664] - [usb] typec: tcpm: add starting value for drp toggling (Torez Smith) [1697664] - [usb] usb: typec: tcpm: support get typec and pd config from device properties (Torez Smith) [1697664] - [usb] usb: typec: add API to get typec basic port power and data config (Torez Smith) [1697664] - [staging] usb: typec: add fwnode to tcpc (Torez Smith) [1697664] - [documentation] dt-bindings: usb: add documentation for typec port controller(TCPCI) (Torez Smith) [1697664] - [documentation] dt-bindings: connector: add properties for typec (Torez Smith) [1697664] - [usb] usb: typec: tps6598x: Remove VLA usage (Torez Smith) [1697664] - [usb] usb: cdc-wdm: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: cdc-wdm: don't enable interrupts in USB-giveback (Torez Smith) [1697664] - [usb] usb: legousbtower: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: ldusb: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: iowarrior: remove intr_idx_lock (Torez Smith) [1697664] - [usb] usb: adutux: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: wusbcore: remove excessive irqsave (Torez Smith) [1697664] - [usb] usb: usb-skeleton: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: usblp: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: usbfs: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: core: use irqsave() in sg_complete() complete callback (Torez Smith) [1697664] - [usb] usb: cdc-acm: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: host: ehci-npcm7xx: Fix some error codes in probe (Torez Smith) [1697664] - [media] media: cx231xx: fix RC_CORE dependency (Torez Smith) [1697664] - [usb] USB: serial: digi_acceleport: rename tty flag variable (Torez Smith) [1697664] - [usb] USB: serial: usb_wwan: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: ti_usb_3410_5052: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: symbolserial: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: sierra: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: sierra: fix potential deadlock at close (Torez Smith) [1697664] - [usb] USB: serial: quatech2: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: mos7840: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: mos7720: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: io_ti: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: io_edgeport: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: digi_acceleport: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: cyberjack: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: chipidea: tegra: Use aligned DMA on Tegra114/124 (Torez Smith) [1697664] - [documentation] dt-bindings: usb: new ehci-npcm7xx dt (Torez Smith) [1697664] - [usb] USB host: Add USB ehci support for nuvoton npcm7xx platform (Torez Smith) [1697664] - [usb] usb: cdc-acm: Decrement tty port's refcount if probe() fail (Torez Smith) [1697664] - [usb] USB: mon: use ktime_get_real_ts64 instead of getnstimeofday64 (Torez Smith) [1697664] - [usb] USB: xhci-hcd: Add get_resuming_ports method (Torez Smith) [1697664] - [usb] USB: ehci-hcd: Add get_resuming_ports method (Torez Smith) [1697664] - [usb] USB: Report wakeup events on root-hub ports (Torez Smith) [1697664] - [usb] USB: serial: cast sizeof() to int when comparing with error code (Torez Smith) [1697664] - [netdrv] net: drivers/net: Convert random_ether_addr to eth_random_addr (Torez Smith) [1697664] - [netdrv] net: usb: rtl8150: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: r8152: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: kaweth: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: hso: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: cdc-phonet: use irqsave() in USB's complete callback (Torez Smith) [1697664]- [net] selftests/tls: add test for sleeping even though there is data (Sabrina Dubroca) [1711821] - [net] tls: fix no wakeup on partial reads (Sabrina Dubroca) [1711821] - [net] selftests/tls: test for lowat overshoot with multiple records (Sabrina Dubroca) [1711821] - [net] tls: fix lowat calculation if some data came from previous record (Sabrina Dubroca) [1711821] - [net] tls: don't ignore netdev notifications if no TLS features (Sabrina Dubroca) [1711821] - [net] tls: fix state removal with feature flags off (Sabrina Dubroca) [1711821] - [net] tls: handle errors from padding_length() (Sabrina Dubroca) [1711821] - [net] tls: avoid NULL pointer deref on nskb->sk in fallback (Sabrina Dubroca) [1711821] - [net] tls: byte swap device req TCP seq no upon setting (Sabrina Dubroca) [1711821] - [net] tls: remove old exports of sk_destruct functions (Sabrina Dubroca) [1711821] - [net] tls: don't log errors every time offload can't proceed (Sabrina Dubroca) [1711821] - [net] tls: fix refcount adjustment in fallback (Sabrina Dubroca) [1711821] - [net] strparser: make it explicitly non-modular (Sabrina Dubroca) [1711821] - [net] strparser: partially revert "strparser: Call skb_unclone conditionally" (Sabrina Dubroca) [1711821] - [net] tls: fix the IV leaks (Sabrina Dubroca) [1711821] - [net] strparser: fix comment (Sabrina Dubroca) [1711821] - [net] tls: prevent false connection termination with offload (Sabrina Dubroca) [1711821] - [net] tls: Replace kfree_skb() with consume_skb() (Sabrina Dubroca) [1711821] - [net] strparser: fix a missing check for create_singlethread_workqueue (Sabrina Dubroca) [1711821] - [net] tls: Fix tls_device receive (Sabrina Dubroca) [1711821] - [net] tls: Fix mixing between async capable and async (Sabrina Dubroca) [1711821] - [net] tls: Return type of non-data records retrieved using MSG_PEEK in recvmsg (Sabrina Dubroca) [1711821] - [net] selftest/tls: Add test to verify received 'type' of non-data record (Sabrina Dubroca) [1711821] - [net] tls: Move protocol constants from cipher context to tls context (Sabrina Dubroca) [1711821] - [net] tls: Do not use async crypto for non-data records (Sabrina Dubroca) [1711821] - [net] tls: Disable async decrytion for tls1.3 (Sabrina Dubroca) [1711821] - [net] tls: Set async_capable for tls zerocopy only if we see EINPROGRESS (Sabrina Dubroca) [1711821] - [net] tls: Add tests for TLS 1.3 (Sabrina Dubroca) [1711821] - [net] tls: Add tls 1.3 support (Sabrina Dubroca) [1711821] - [net] tls: Refactor control message handling on recv (Sabrina Dubroca) [1711821] - [net] tls: Refactor tls aad space size calculation (Sabrina Dubroca) [1711821] - [net] tls: Support 256 bit keys (Sabrina Dubroca) [1711821] - [net] tls: free ctx in sock destruct (Sabrina Dubroca) [1711821] - [net] tls: build_protos moved to common routine (Sabrina Dubroca) [1711821] - [net] tls: Fix recvmsg() to be able to peek across multiple records (Sabrina Dubroca) [1711821] - [net] tls: Make function tls_sw_do_sendpage static (Sabrina Dubroca) [1711821] - [net] tls: remove unused function tls_sw_sendpage_locked (Sabrina Dubroca) [1711821] - [net] Optimize sk_msg_clone() by data merge to end dst sg entry (Sabrina Dubroca) [1711821] - [net] selftests/tls: Fix recv partial/large_buff test cases (Sabrina Dubroca) [1711821] - [net] tls: allocate tls context using GFP_ATOMIC (Sabrina Dubroca) [1711821] - [net] tls: Init routines in create_ctx (Sabrina Dubroca) [1711821] - [net] selftests/tls: Fix recv(MSG_PEEK) & splice() test cases (Sabrina Dubroca) [1711821] - [net] tls: fix currently broken MSG_PEEK behavior (Sabrina Dubroca) [1711821] - [net] selftests/tls: Add MSG_WAITALL in recv() syscall (Sabrina Dubroca) [1711821] - [net] tls: async support causes out-of-bounds access in crypto APIs (Sabrina Dubroca) [1711821] - [net] selftests/tls: Add test for recv(PEEK) spanning across multiple records (Sabrina Dubroca) [1711821] - [net] tls: Add support for async decryption of tls records (Sabrina Dubroca) [1711821] - [net] tls: Calculate nsg for zerocopy path without skb_cow_data (Sabrina Dubroca) [1711821] - [net] strparser: remove redundant variable 'rd_desc' (Sabrina Dubroca) [1711821] - [net] tls: Use kmemdup to simplify the code (Sabrina Dubroca) [1711821] - [net] tls: Use socket data_ready callback on record availability (Sabrina Dubroca) [1711821] - [net] selftests: tls: add selftests for TLS sockets (Sabrina Dubroca) [1711821] - [net] strparser: Call skb_unclone conditionally (Sabrina Dubroca) [1711821] - [net] tls: Remove VLA usage on nonce (Sabrina Dubroca) [1711821] - [net] tls: Removed unused variable (Sabrina Dubroca) [1711821] - [netdrv] veth: use generic helper to report timestamping info (Jiri Benc) [1718938] - [netdrv] veth: Fix -Wformat-truncation (Jiri Benc) [1718938] - [netdrv] veth: Mark expected switch fall-throughs (Jiri Benc) [1718938] - [net] Add extack argument to rtnl_create_link (Jiri Benc) [1718938] - [netdrv] veth: Add ethtool statistics support for XDP (Jiri Benc) [1718938] - [netdrv] veth: Account for XDP packet statistics on rx side (Jiri Benc) [1718938] - [netdrv] veth: Account for packet drops in ndo_xdp_xmit (Jiri Benc) [1718938] - [netdrv] veth: rename pcpu_vstats as pcpu_lstats (Jiri Benc) [1718938] - [netdrv] net: move definition of pcpu_lstats to header file (Jiri Benc) [1718938] - [netdrv] veth: add software timestamping (Jiri Benc) [1718938] - [net] tcp: tcp_grow_window() needs to respect tcp_space() (Marcelo Leitner) [1718344] - [net] tcp: fix a potential NULL pointer dereference in tcp_sk_exit (Marcelo Leitner) [1718344] - [net] tcp: do not use ipv6 header for ipv4 flow (Marcelo Leitner) [1718344] - [net] tcp: Don't access TCP_SKB_CB before initializing it (Marcelo Leitner) [1718344] - [net] tcp: do not report TCP_CM_INQ of 0 for closed connections (Marcelo Leitner) [1718344] - [net] tcp: clear icsk_backoff in tcp_write_queue_purge() (Marcelo Leitner) [1718344] - [net] tcp: allow MSG_ZEROCOPY transmission also in CLOSE_WAIT state (Marcelo Leitner) [1718344] - [net] tcp: change txhash on SYN-data timeout (Marcelo Leitner) [1718344] - [net] tcp: lack of available data can also cause TSO defer (Marcelo Leitner) [1718344] - [net] tcp: fix NULL ref in tail loss probe (Marcelo Leitner) [1718344] - [net] tcp: Do not underestimate rwnd_limited (Marcelo Leitner) [1718344] - [net] tcp: defer SACK compression after DupThresh (Marcelo Leitner) [1718344] - [net] tcp: do not release socket ownership in tcp_close() (Marcelo Leitner) [1718344] - [net] tcp: Fix SOF_TIMESTAMPING_RX_HARDWARE to use the latest timestamp during TCP coalescing (Marcelo Leitner) [1718344] - [net] inet: make sure to grab rcu_read_lock before using ireq->ireq_opt (Marcelo Leitner) [1718344] - [net] tcp/dccp: fix lockdep issue when SYN is backlogged (Marcelo Leitner) [1718344] - [net] xfrm4: Fix uninitialized memory read in _decode_session4 (Sabrina Dubroca) [1718812] - [net] esp4: add length check for UDP encapsulation (Sabrina Dubroca) [1718812] - [net] xfrm: clean up xfrm protocol checks (Sabrina Dubroca) [1718812] - [net] xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module (Sabrina Dubroca) [1718812] - [net] xfrm: Reset secpath in xfrm failure (Sabrina Dubroca) [1718812] - [net] xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink (Sabrina Dubroca) [1718812] - [net] xfrm: destroy xfrm_state synchronously on net exit path (Sabrina Dubroca) [1718812] - [net] esp: Skip TX bytes accounting when sending from a request socket (Sabrina Dubroca) [1718812] - [net] xfrm: refine validation of template and selector families (Sabrina Dubroca) [1718812] - [net] xfrm: policy: increment xfrm_hash_generation on hash rebuild (Sabrina Dubroca) [1718812] - [net] xfrm6_tunnel: Fix spi check in __xfrm6_tunnel_alloc_spi (Sabrina Dubroca) [1718812] - [net] xfrm_user: fix freeing of xfrm states on acquire (Sabrina Dubroca) [1718812] - [net] xfrm: Fix NULL pointer dereference in xfrm_input when skb_dst_force clears the dst_entry (Sabrina Dubroca) [1718812] - [net] xfrm: Fix error return code in xfrm_output_one() (Sabrina Dubroca) [1718812] - [net] vti4: eliminated some duplicate code (Guillaume Nault) [1718443] - [net] vti4: removed duplicate log message (Guillaume Nault) [1718443] - [net] vti4: ipip tunnel deregistration fixes (Guillaume Nault) [1718443] - [net] vti4: Fix a ipip packet processing bug in 'IPCOMP' virtual tunnel (Guillaume Nault) [1718443] - [net] fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv (Guillaume Nault) [1718443] - [netdrv] vxlan: test dev->flags & IFF_UP before calling gro_cells_receive() (Guillaume Nault) [1718443] - [netdrv] vxlan: test dev->flags & IFF_UP before calling netif_rx() (Guillaume Nault) [1718443] - [net] devlink: turn devlink into a built-in (Petr Oros) [1717458] - [net] ipv6: fix EFAULT on sendto with icmpv6 and hdrincl (Stefano Brivio) [1718503] - [net] ipv6: use READ_ONCE() for inet->hdrincl as in ipv4 (Stefano Brivio) [1718503] - [net] ipv6: Fix redirect with VRF (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a raw socket to an address (Stefano Brivio) [1718503] - [net] ipv6: prevent possible fib6 leaks (Stefano Brivio) [1718503] - [net] vrf: sit mtu should not be updated when vrf netdev is the link (Stefano Brivio) [1718503] - [net] ipv6: A few fixes on dereferencing rt->from (Stefano Brivio) [1718503] - [tools] selftests: fib_rule_tests: Fix icmp proto with ipv6 (Stefano Brivio) [1718503] - [net] ipv6: fix races in ip6_dst_destroy() (Stefano Brivio) [1718503] - [net] ipv6/flowlabel: wait rcu grace period before put_pid() (Stefano Brivio) [1718503] - [net] ipv6: invert flowlabel sharing check in process and user mode (Stefano Brivio) [1718503] - [net] route: Avoid crash from dereferencing NULL rt->from (Stefano Brivio) [1718503] - [net] udpv6: Check address length before reading address family (Stefano Brivio) [1718503] - [net] ip6_gre: fix possible use-after-free in ip6erspan_rcv (Stefano Brivio) [1718503] - [net] ip6_gre: remove gre_hdr_len from ip6erspan_rcv (Stefano Brivio) [1718503] - [net] ipv6: Fix dangling pointer when ipv6 fragment (Stefano Brivio) [1718503] - [net] ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type (Stefano Brivio) [1718503] - [net] inet: switch IP ID generator to siphash (Stefano Brivio) [1718503] - [net] sit: fix UBSAN Undefined behaviour in check_6rd (Stefano Brivio) [1718503] - [net] ip6mr: Do not call __IP6_INC_STATS() from preemptible context (Stefano Brivio) [1718503] - [net] sit: fix memory leak in sit_init_net() (Stefano Brivio) [1718503] - [net] ipv4: Add ICMPv6 support when parse route ipproto (Stefano Brivio) [1718503] - [net] ipv6: Return error for RTA_VIA attribute (Stefano Brivio) [1718503] - [net] Set rtm_table to RT_TABLE_COMPAT for ipv6 for tables > 255 (Stefano Brivio) [1718503] - [net] ip6_gre: do not report erspan_ver for ip6gre or ip6gretap (Stefano Brivio) [1718503] - [net] ipv6: route: enforce RCU protection in rt6_update_exception_stamp_rt() (Stefano Brivio) [1718503] - [net] ipv6: route: enforce RCU protection in ip6_route_check_nh_onlink() (Stefano Brivio) [1718503] - [net] ipv6: propagate genlmsg_reply return code (Stefano Brivio) [1718503] - [net] fix IPv6 prefix route residue (Stefano Brivio) [1718503] - [net] ip6mr: Fix notifiers call on mroute_clean_tables() (Stefano Brivio) [1718503] - [net] af_packet: fix raw sockets over 6in4 tunnel (Stefano Brivio) [1718503] - [net] ip6_gre: fix tunnel list corruption for x-netns (Stefano Brivio) [1718503] - [net] ipv6: fix kernel-infoleak in ipv6_local_error() (Stefano Brivio) [1718503] - [net] ip: on queued skb use skb_header_pointer instead of pskb_may_pull (Stefano Brivio) [1718503] - [net] ipv4: fix use-after-free in ip_cmsg_recv_dstaddr() (Stefano Brivio) [1718503] - [net] ipv6: Take rcu_read_lock in __inet6_bind for mapped addresses (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a socket to a v4 mapped address (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a socket to an address (Stefano Brivio) [1718503] - [net] ip: validate header length on virtual device xmit (Stefano Brivio) [1718503] - [net] ipv6: Fix a test against 'ipv6_find_idev()' return value (Stefano Brivio) [1718503] - [net] ipv6: tunnels: fix two use-after-free (Stefano Brivio) [1718503] - [net] ipv6: add missing tx timestamping on IPPROTO_RAW (Stefano Brivio) [1718503] - [net] clear skb->tstamp in forwarding paths (Stefano Brivio) [1718503] - [net] ipv6: sr: properly initialize flowi6 prior passing to ip6_route_output (Stefano Brivio) [1718503] - [net] always initialize pagedlen (Stefano Brivio) [1718503] - [net] ipv6: Fix PMTU updates for UDP/raw sockets in presence of VRF (Stefano Brivio) [1718503] - [net] ipv6: gro: do not use slow memcmp() in ipv6_gro_receive() (Stefano Brivio) [1718503] - [net] xfrm: fix out-of-bounds packet access (Stefano Brivio) [1718503] - [net] ipv6: take rcu lock in rawv6_send_hdrinc() (Stefano Brivio) [1718503] - [net] ip6_tunnel: be careful when accessing the inner header (Stefano Brivio) [1718503] - [net] revert "ipv6: fix double refcount of fib6_metrics" (Stefano Brivio) [1718503] - [net] ipv6: fix memory leak on dst->_metrics (Stefano Brivio) [1718503] - [net] ipv6: fix cleanup ordering for ip6_mr failure (Stefano Brivio) [1718503] - [net] ipv6: fix cleanup ordering for pingv6 registration (Stefano Brivio) [1718503] - [net] ip6_tunnel: collect_md xmit: Use ip_tunnel_key's provided src address (Stefano Brivio) [1718503] - [net] ipv6: fix addrconf_sysctl_addr_gen_mode (Stefano Brivio) [1718503] - [net] ipv6: don't reinitialize ndev->cnf.addr_gen_mode on new inet6_dev (Stefano Brivio) [1718503] - [net] ipv6: reserve room for IFLA_INET6_ADDR_GEN_MODE (Stefano Brivio) [1718503] - [net] ipv6: propagate net.ipv6.conf.all.addr_gen_mode to devices (Stefano Brivio) [1718503] - [net] openvswitch: check for null pointer return from nla_nest_start_noflag (Stefano Brivio) [1718408] - [net] openvswitch: add seqadj extension when NAT is used (Stefano Brivio) [1718408] - [net] netfilter: Replace spin_is_locked() with lockdep (Stefano Brivio) [1718392] - [net] netfilter: ipset: do not call ipset_nest_end after nla_nest_cancel (Stefano Brivio) [1718392] - [net] netfilter: ipset: Fix calling ip_set() macro at dumping (Stefano Brivio) [1718392] - [include] netfilter: ipset: Correct rcu_dereference() call in ip_set_put_comment() (Stefano Brivio) [1718392] - [net] netfilter: ipset: fix ip_set_list allocation failure (Stefano Brivio) [1718392] - [net] netfilter: ipset: Make invalid MAC address checks consistent (Stefano Brivio) [1649087] - [net] netfilter: ipset: Allow matching on destination MAC address for mac and ipmac sets (Stefano Brivio) [1649087] - [netdrv] rocker: Handle SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1717892] - [net] switchdev: Add SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1717892] - [netdrv] rocker: Add missing break for PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [net] bridge: Stop calling switchdev_port_attr_get() (Ivan Vecera) [1717892] - [netdrv] rocker: Check Handle PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [netdrv] mlxsw: spectrum: Handle PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [include] net: switchdev: Add PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [netdrv] rocker: Remove port_attr_bridge_flags_get assignment (Ivan Vecera) [1717892] - [netdrv] rocker: Remove getting PORT_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [net] pktgen: do not sleep with the thread lock held (Paolo Abeni) [1715575] - [include] ipv6: fix the check before getting the cookie in rt6_get_cookie (Xin Long) [1709166] - [net] ipv4: not do cache for local delivery if bc_forwarding is enabled (Xin Long) [1712657] - [net] sctp: avoid running the sctp state machine recursively (Xin Long) [1717316] - [netdrv] netdevsim: use skb_sec_path helper (Hangbin Liu) [1711810] - [netdrv] netdevsim: convert to DEFINE_SHOW_ATTRIBUTE (Hangbin Liu) [1711810] - [netdrv] netdevsim: make debug dirs' dentries static (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: use internal netns switch for ip commands (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: add testcases for vxlan flag sets (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: Add a test case for multipath route get (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink.sh: add testcase for neigh get (Hangbin Liu) [1711810] - [tools] selftests: net: rtnetlink.sh: add fdb get test (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink.sh explicitly requires bash (Hangbin Liu) [1711810] - [net] udp: with udp_segment release on error path (Paolo Abeni) [1718079] - [net] ipv6: explicitly initialize udp6_addr in udp_sock_create6() (Paolo Abeni) [1718079] - [netdrv] geneve: Don't assume linear buffers in vxlan_err_lookup() (Stefano Brivio) [1652222] - [netdrv] vxlan: Don't assume linear buffers in vxlan_err_lookup() (Stefano Brivio) [1652222] - [netdrv] geneve: Initialize addr6 with memset (Stefano Brivio) [1652222] - [net] ip_tunnel: don't force DF when MTU is locked (Stefano Brivio) [1652222] - [netdrv] geneve: ICMP error lookup handler (Stefano Brivio) [1652222] - [netdrv] vxlan: ICMP error lookup handler (Stefano Brivio) [1652222] - [net] udp: Handle ICMP errors for tunnels with same destination port on both endpoints (Stefano Brivio) [1652222] - [net] udp: gro behind static key (Stefano Brivio) [1652222] - [net] bpf: in __bpf_redirect_no_mac pull mac only if present (Jiri Benc) [1687471] - [net] lwt_bpf: remove unnecessary rcu_read_lock in run_lwt_bpf (Jiri Benc) [1687471] - [net] bpf: add End.DT6 action to bpf_lwt_seg6_action helper (Jiri Benc) [1687471] - [net] bpf: fix out-of-bounds read in __bpf_skc_lookup (Jiri Benc) [1687459] - [net] bpf: Check sk_fullsock() before returning from bpf_sk_lookup() (Jiri Benc) [1687459] - [net] flow_dissector: disable preemption around BPF calls (Jiri Benc) [1687459] - [net] bpf: sockmap, only stop/flush strp if it was enabled at some point (Jiri Benc) [1687459] - [net] bpf: Stop the psock parser before canceling its work (Jiri Benc) [1687459] - [net] bpf: only test gso type on gso packets (Jiri Benc) [1687459] - [tools] selftests: add dummy xdp test helper (Jiri Benc) [1687459] - [net] filter: mark expected switch fall-through (Jiri Benc) [1687459] - [documentation] Update references to netdev-FAQ (Jiri Benc) [1687459] - [net] bpfilter: remove trailing newline (Jiri Benc) [1687459] - [net] core: filter: mark expected switch fall-through (Jiri Benc) [1687459] - [net] revert "xsk: simplify AF_XDP socket teardown" (Jiri Benc) [1687459] - [net] bpf/test_run: fix unkillable BPF_PROG_TEST_RUN (Jiri Benc) [1687459] - [net] xsk: share the mmap_sem for page pinning (Jiri Benc) [1687459] - [net] xsk: add missing smp_rmb() in xsk_mmap (Jiri Benc) [1687459] - [net] bpf: only adjust gso_size on bytestream protocols (Jiri Benc) [1687459] - [net] sk_msg: Always cancel strp work before freeing the psock (Jiri Benc) [1687459] - [net] bpf: sock recvbuff must be limited by rmem_max in bpf_setsockopt() (Jiri Benc) [1687459] - [net] bpf: fix SO_MAX_PACING_RATE to support TCP internal pacing (Jiri Benc) [1687459] - [net] bpf: bpf_setsockopt: reset sock dst on SO_MARK changes (Jiri Benc) [1687459] - [net] bpf: correctly set initial window on active Fast Open sender (Jiri Benc) [1687459] - [net] xsk: simplify AF_XDP socket teardown (Jiri Benc) [1687459] - [net] bpf: fix doc of bpf_skb_adjust_room() in uapi (Jiri Benc) [1687459] - [net] bpf: do not blindly change rlimit in reuseport net selftest (Jiri Benc) [1687459] - [net] xsk: proper AF_XDP socket teardown ordering (Jiri Benc) [1687459] - [net] bpf: typo fix in Documentation/networking/af_xdp.rst (Jiri Benc) [1687459] - [net] xdp: split code for map vs non-map redirect (Jiri Benc) [1687459] - [net] xdp: explicit inline __xdp_map_lookup_elem (Jiri Benc) [1687459] - [net] xdp: unlikely instrumentation for xdp map redirect (Jiri Benc) [1687459] - [net] xdp: remove redundant variable 'headroom' (Jiri Benc) [1687459] - [net] xsk: include XDP meta data in AF_XDP frames (Jiri Benc) [1687459] - [net] bpf: Enable BPF_PROG_TYPE_SK_REUSEPORT bpf prog in reuseport selection (Jiri Benc) [1687459] - [net] revert "xdp: add NULL pointer check in __xdp_return()" (Jiri Benc) [1687459] - [lib] test_rhashtable: Make test_insert_dup() allocate its hash table dynamically (Jiri Benc) [1717066] - [lib] test_rhashtable: remove semaphore usage (Jiri Benc) [1717066] - [lib] rhashtable: detect when object movement between tables might have invalidated a lookup (Jiri Benc) [1717066] - [lib] rhashtable: remove duplicated include from rhashtable.c (Jiri Benc) [1717066] - [lib] rhashtable: clean up dereference of ->future_tbl (Jiri Benc) [1717066] - [lib] rhashtable: use cmpxchg() to protect ->future_tbl (Jiri Benc) [1717066] - [lib] rhashtable: simplify nested_table_alloc() and rht_bucket_nested_insert() (Jiri Benc) [1717066] - [lib] rhashtable: simplify INIT_RHT_NULLS_HEAD() (Jiri Benc) [1717066] - [lib] rhashtable: remove nulls_base and related code (Jiri Benc) [1717066] - [lib] rhashtable: split rhashtable.h (Jiri Benc) [1717066] - [lib] rhashtable: silence RCU warning in rhashtable_test (Jiri Benc) [1717066] - [net] devlink: publish params only after driver init is done (Ivan Vecera) [1715929] - [net] iptunnel: NULL pointer deref for ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_gre: Refactor collect metatdata mode tunnel xmit to ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Fix route fl4 init in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Add tnl_update_pmtu in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Add ip tunnel dst_cache in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] vlan: Mark expected switch fall-through (Hangbin Liu) [1664359] - [net] vlan: disable SIOCSHWTSTAMP in container (Hangbin Liu) [1664359] - [netdrv] macvlan: Mark expected switch fall-through (Hangbin Liu) [1664359] - [netdrv] macvlan: disable SIOCSHWTSTAMP in container (Hangbin Liu) [1664359] - [netdrv] macvlan: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to real device (Hangbin Liu) [1664359] - [net] ethtool: add compat for flash update (Petr Oros) [1708339] - [net] devlink: add flash update command (Petr Oros) [1708339] - [net] devlink: Fix list access without lock while reading region (Petr Oros) [1708339] - [net] devlink: Return right error code in case of errors for region read (Petr Oros) [1708339] - [net] devlink: use direct return of genlmsg_reply (Petr Oros) [1708339] - [net] devlink: Rename devlink health attributes (Petr Oros) [1709874] - [net] devlink: Modify reply of DEVLINK_CMD_HEALTH_REPORTER_GET (Petr Oros) [1709874] - [net] devlink: Update reporter state to error even if recover aborted (Petr Oros) [1709874] - [documentation] devlink: Add Documentation/networking/devlink-health.txt (Petr Oros) [1709874] - [net] devlink: Add health dump {get, clear} commands (Petr Oros) [1709874] - [net] devlink: Add health diagnose command (Petr Oros) [1709874] - [net] devlink: Add health recover command (Petr Oros) [1709874] - [net] devlink: Add health set command (Petr Oros) [1709874] - [net] devlink: Add health get command (Petr Oros) [1709874] - [net] devlink: Add health report functionality (Petr Oros) [1709874] - [net] devlink: Add health reporter create/destroy functionality (Petr Oros) [1709874] - [net] devlink: Add devlink formatted message (fmsg) API (Petr Oros) [1709874] - [net] devlink: add hardware errors tracing facility (Petr Oros) [1709874] - [net] cnb: devlink: report cell size of shared buffers (Petr Oros) [1708348] - [net] devlink: skip info_get op call if it is not defined in dumpit (Petr Oros) [1708342] - [include] devlink: add a generic board.manufacture version name (Petr Oros) [1708342] - [net] devlink: don't allocate attrs on the stack (Petr Oros) [1708342] - [net] devlink: fix condition for compat device info (Petr Oros) [1708342] - [net] ethtool: add compat for devlink info (Petr Oros) [1708342] - [include] devlink: add generic info version names (Petr Oros) [1708342] - [net] devlink: add version reporting to devlink info API (Petr Oros) [1708342] - [net] devlink: add device information API (Petr Oros) [1708342] - [net] devlink: Add devlink notifications support for port params (Petr Oros) [1710228] - [net] devlink: Add support for driverinit set value for devlink_port (Petr Oros) [1710228] - [net] devlink: Add support for driverinit get value for devlink_port (Petr Oros) [1710228] - [net] devlink: Add port param set command (Petr Oros) [1710228] - [net] devlink: Add port param get command (Petr Oros) [1710228] - [net] devlink: Add devlink_param for port register and unregister (Petr Oros) [1710228] - [net] ipv6: properly check return value in inet6_dump_all() (Petr Oros) [1714656] - [net] Don't return invalid table id error when dumping all families (Petr Oros) [1714656] - [net] ipmr_base: Do not reset index in mr_table_dump (Petr Oros) [1714656] - [net] ipv6: Fix dump of specific table with strict checking (Petr Oros) [1714656] - [net] ipv4: avoid compile error in fib_info_nh_uses_dev (Petr Oros) [1714656] - [net] ipv4: Bail early if user only wants prefix entries (Petr Oros) [1714656] - [net] ipv6: Bail early if user only wants cloned entries (Petr Oros) [1714656] - [net] mpls: Handle kernel side filtering of route dumps (Petr Oros) [1714656] - [net] Enable kernel side filtering of route dumps (Petr Oros) [1714656] - [net] Plumb support for filtering ipv4 and ipv6 multicast route dumps (Petr Oros) [1714656] - [net] ipmr: Refactor mr_rtm_dumproute (Petr Oros) [1714656] - [net] mpls: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] ipv6: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] netfilter: nft_fib: Convert nft_fib4_eval to new dev helper (Petr Oros) [1714656] - [net] netfilter: rpfilter: Convert rpfilter_lookup_reverse to new dev helper (Petr Oros) [1714656] - [net] ipv4: Move device validation to helper (Petr Oros) [1714656] - [net] ipv4: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] Add struct for fib dump filter (Petr Oros) [1714656] - [lib] iov_iter: Fix build error without CONFIG_CRYPTO (Ivan Vecera) [1714213] - [net] datagram: introduce skb_copy_and_hash_datagram_iter helper (Ivan Vecera) [1714213] - [lib] iov_iter: introduce hash_and_copy_to_iter helper (Ivan Vecera) [1714213] - [net] datagram: consolidate datagram copy to iter helpers (Ivan Vecera) [1714213] - [lib] iov_iter: pass void csum pointer to csum_and_copy_to_iter (Ivan Vecera) [1714213] - [net] datagram: open-code copy_page_to_iter (Ivan Vecera) [1714213] - [include] net: enable mpls_ptr in net_device (Hangbin Liu) [1350011] - [net] netfilter: ipset: actually allow allowable CIDR 0 in hash:net, port, net (Stefano Brivio) [1680512] - [net] netfilter: ipset: fix ip_set_byindex function (Stefano Brivio) [1680512] - [net] netfilter: ipset: Introduction of new commands and protocol version 7 (Stefano Brivio) [1680512] - [net] ipv6: don't return positive numbers when nothing was dumped (Petr Oros) [1700306] - [net] rtnetlink: restore handling of dumpit return value in rtnl_dump_all() (Petr Oros) [1700306] - [net] netlink: fixup regression in RTM_GETADDR (Petr Oros) [1700306] - [net] {ipv4, ipv6}: Do not put target net if input nsid is invalid (Petr Oros) [1700306] - [net] rtnl_dump_all needs to propagate error from dumpit function (Petr Oros) [1700306] - [net] rtnetlink: Move ifm in valid_fdb_dump_legacy to closer to use (Petr Oros) [1700306] - [net] neighbor: NTF_PROXY is a valid ndm_flag for a dump request (Petr Oros) [1700306] - [net] mpls: Implement handler for strict data checking on dumps (Petr Oros) [1700306] - [net] rtnetlink: Update comment in rtnl_stats_dump regarding strict data checking (Petr Oros) [1700306] - [net] ipv6: Put target net when address dump fails due to bad attributes (Petr Oros) [1700306] - [net] ipv4: Put target net when address dump fails due to bad attributes (Petr Oros) [1700306] - [tools] headers uapi: Update linux/netlink.h header copy (Petr Oros) [1700306] - [net] neigh: fix NULL deref in pneigh_dump_table() (Petr Oros) [1700306] - [net] ipv6: Add support for dumping addresses for a specific device (Petr Oros) [1700306] - [net] ipv4: Add support for dumping addresses for a specific device (Petr Oros) [1700306] - [net] ipv6: Remove ip_idx arg to in6_dump_addrs (Petr Oros) [1700306] - [net] ipv4: Move loop over addresses on a device into in_dev_dump_addr (Petr Oros) [1700306] - [net] netlink: Add answer_flags to netlink_callback (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_fdb_dump for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Move input checking for rtnl_fdb_dump to helper (Petr Oros) [1700306] - [net] bridge: Update br_mdb_dump for strict data checking (Petr Oros) [1700306] - [net] Update netconf dump handlers for strict data checking (Petr Oros) [1700306] - [net] ipv6: Update ip6addrlbl_dump for strict data checking (Petr Oros) [1700306] - [net] fib_rules: Update fib_nl_dumprule for strict data checking (Petr Oros) [1700306] - [net] namespace: Update rtnl_net_dumpid for strict data checking (Petr Oros) [1700306] - [net] neighbor: Update neightbl_dump_info for strict data checking (Petr Oros) [1700306] - [net] neighbor: Update neigh_dump_info for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update fib dumps for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update ipmr_rtm_dumplink for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update inet6_dump_ifinfo for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_stats_dump for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_bridge_getlink for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_dump_ifinfo for strict data checking (Petr Oros) [1700306] - [net] ipv6: Update inet6_dump_addr for strict data checking (Petr Oros) [1700306] - [net] ipv4: Update inet_dump_ifaddr for strict data checking (Petr Oros) [1700306] - [net] netlink: Add new socket option to enable strict checking on dumps (Petr Oros) [1700306] - [net] ipv6: Refactor address dump to push inet6_fill_args to in6_dump_addrs (Petr Oros) [1700306] - [lib] netlink: Add strict version of nlmsg_parse and nla_parse (Petr Oros) [1700306] - [net] Add extack to nlmsg_parse (Petr Oros) [1700306] - [include] netlink: Add extack message to nlmsg_parse for invalid header length (Petr Oros) [1700306] - [net] netlink: Pass extack to dump handlers (Petr Oros) [1700306] - [net] neigh: Extend dump filter to proxy neighbor dumps (Petr Oros) [1700306] - [lib] netlink: add nested array policy validation (Petr Oros) [1700306] - [lib] netlink: allow NLA_NESTED to specify nested policy to validate (Petr Oros) [1700306] - [lib] netlink: move extack setting into validate_nla() (Petr Oros) [1700306] - [lib] netlink: make validation_data const (Petr Oros) [1700306] - [lib] netlink: remove NLA_NESTED_COMPAT (Petr Oros) [1700306] - [lib] netlink: add ethernet address policy types (Petr Oros) [1700306] - [net] sched: cls_u32: add res to offload information (Ivan Vecera) [1711377] - [net] sched: gred: support reporting stats from offloads (Ivan Vecera) [1711377] - [net] sched: gred: add basic Qdisc offload (Ivan Vecera) [1711377] - [net] sched: gred: allow manipulating per-DP RED flags (Ivan Vecera) [1711377] - [net] sched: gred: store red flags per virtual queue (Ivan Vecera) [1711377] - [net] sched: gred: provide a better structured dump and expose stats (Ivan Vecera) [1711377] - [net] sched: gred: store bytesin as a 64 bit value (Ivan Vecera) [1711377] - [net] sched: gred: use extack to provide more details on configuration errors (Ivan Vecera) [1711377] - [net] sched: gred: pass extack to nla_parse_nested() (Ivan Vecera) [1711377] - [net] sched: gred: separate error and non-error path in gred_change() (Ivan Vecera) [1711377] - [net] netlink: add NLA_REJECT policy type (Ivan Vecera) [1711377] - [lib] netlink: Return extack message if attribute validation fails (Ivan Vecera) [1711377] - [net] sched: red: notify drivers about RED's limit parameter (Ivan Vecera) [1711039] - [net] sched: mq: offload a graft notification (Ivan Vecera) [1711039] - [net] sched: red: offload a graft notification (Ivan Vecera) [1711039] - [net] sched: provide notification for graft on root (Ivan Vecera) [1711039] - [net] sched: prio: delay destroying child qdiscs on change (Ivan Vecera) [1711039] - [net] sched: red: delay destroying child qdisc on replace (Ivan Vecera) [1711039] - [net] sched: refactor grafting Qdiscs with a parent (Ivan Vecera) [1711039] - [net] sched: add an offload graft helper (Ivan Vecera) [1711039] - [net] sched: set TCQ_F_OFFLOADED flag for MQ (Ivan Vecera) [1711039] - [net] sched: red: remove unnecessary red_dump_offload_stats parameter (Ivan Vecera) [1711039] - [net] sched: add an offload dump helper (Ivan Vecera) [1711039] - [netdrv] netdevsim: Implement ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [netdrv] rocker: Implement ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [net] Introduce ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [net] use indirect calls helpers at early demux stage (Paolo Abeni) [1700747] - [net] use indirect calls helpers for L3 handler hooks (Paolo Abeni) [1700747] - [net] use indirect calls helpers at the socket layer (Paolo Abeni) [1700747] - [net] use indirect calls helpers for ptype hook (Paolo Abeni) [1700747] - [net] add documentation to socket.c (Paolo Abeni) [1700747] - [net] udp: use indirect call wrappers for GRO socket lookup (Paolo Abeni) [1700747] - [net] use indirect call wrappers at GRO transport layer (Paolo Abeni) [1700747] - [net] use indirect call wrappers at GRO network layer (Paolo Abeni) [1700747] - [net] indirect call wrappers: helpers to speed-up indirect calls of builtin (Paolo Abeni) [1700747] - [powerpc] powerpc: bpf: Fix generation of load/store DW instructions (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: propagate liveness on all frames (Yauheni Kaliuta) [1700846] - [net] bpf: do not restore dst_reg when cur_state is freed (Yauheni Kaliuta) [1700846] - [tools] tools lib bpf: Fix the build by adding a missing stdarg.h include (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: fix version info and add it to shared object (Yauheni Kaliuta) [1700846] - [tools] btf: fix bug with resolving STRUCT/UNION into corresponding FWD (Yauheni Kaliuta) [1700846] - [tools] tools/libbpf: signedness bug in btf_dedup_ref_type() (Yauheni Kaliuta) [1700846] - [tools] libbpf: fix libbpf_print (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: simplify libbpf API function libbpf_set_print() (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: move set_max_rlimit() before __bpf_object__open_xattr() (Yauheni Kaliuta) [1700846] - [include] bpf: promote bpf_perf_event.h to mandatory UAPI header (Yauheni Kaliuta) [1700846] - [net] bpf: Avoid unnecessary instruction in convert_bpf_ld_abs() (Yauheni Kaliuta) [1700846] - [kernel] bpf: fix check of allowed specifiers in bpf_trace_printk (Yauheni Kaliuta) [1700846] - [documentation] bpf, doc: Document Jump X addressing mode (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: fix license for a compat header file (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Capitalise document heading (Yauheni Kaliuta) [1700846] - [documentation] docs: Add bpf/index to top level index (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Add toctree to index (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Rename README.rst to index.rst (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip verifier tests for unsupported map types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip verifier tests for unsupported program types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip sockmap in test_maps if kernel doesn't have support (Yauheni Kaliuta) [1700846] - [rpmspec] rpmspec: pack bpf-helpers, bpftool-net, bpftool-feature manpages (Yauheni Kaliuta) [1700846] - [net] bpf, tcp: correctly handle DONT_WAIT flags and timeo == 0 (Yauheni Kaliuta) [1700846] - [kernel] bpf: mark bpf_event_notify and bpf_event_init as static (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap fix msg->sg.size account on ingress skb (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap remove duplicate queue free (Yauheni Kaliuta) [1700846] - [net] net/tls: remove set but not used variables (Yauheni Kaliuta) [1700846] - [media] bpf: add map helper functions push, pop, peek in more BPF programs (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix infinite loop in map create (Yauheni Kaliuta) [1700846] - [net] net/tls: fix build without CONFIG_TLS_DEVICE (Yauheni Kaliuta) [1700846] - [net] net/tls: don't leak partially sent record in device mode (Yauheni Kaliuta) [1700846] - [net] xdp: fix cpumap redirect SKB creation bug (Yauheni Kaliuta) [1700846] - [net] net/core: Document reuseport_add_sock() bind_inany argument (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: clarify bump in libbpf version info (Yauheni Kaliuta) [1700846] - [net] net/tls: Inform user space about send buffer availability (Yauheni Kaliuta) [1700846] - [tools] libbpf: handle BTF parsing and loading properly (Yauheni Kaliuta) [1700846] - [net] bpf: fix warning about using plain integer as NULL (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: fixing leak when kernel does not support btf (Yauheni Kaliuta) [1700846] - [net] tls: Fix write space handling (Yauheni Kaliuta) [1700846] - [net] tls: Fix tls_device handling of partial records (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, fix documentation for attach types (Yauheni Kaliuta) [1700846] - [tools] btf: separate btf creation and loading (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix a selftest test_btf failure (Yauheni Kaliuta) [1700846] - [tools] selftests/btf: add initial BTF dedup tests (Yauheni Kaliuta) [1700846] - [tools] btf: add BTF types deduplication algorithm (Yauheni Kaliuta) [1700846] - [tools] btf: extract BTF type size calculation (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: silence a libbpf unnecessary warning (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: implement libbpf btf__get_map_kv_tids() API function (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: expose functions btf_ext__* as API functions (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add a support for getting xdp prog id on ifindex (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add a helper for retrieving a map fd for a given name (Yauheni Kaliuta) [1700846] - [tools] libbpf: introduce bpf_map_lookup_elem_flags() (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add bash completion for bpftool probes (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for a network device (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add C-style "#define" output for probes (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF helper functions (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF map types (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF program types (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for kernel configuration options (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for /proc/ eBPF parameters (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add basic probe capability, probe syscall availability (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: print out btf log at LIBBPF_WARN level (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: move libbpf pr_* debug print functions to headers (Yauheni Kaliuta) [1700846] - [net] net: tls: Fix deadlock in free_resources tx (Yauheni Kaliuta) [1700846] - [net] net: tls: Save iv in tls_rec for async crypto requests (Yauheni Kaliuta) [1700846] - [tools] bpf: pull in pkt_sched.h header for tooling to fix bpftool build (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: change section name of bpfilter UMH blob (Yauheni Kaliuta) [1700846] - [netdrv] tap: call skb_probe_transport_header after setting skb->dev (Yauheni Kaliuta) [1700846] - [net] Prevent overflow of sk_msg in sk_msg_clone() (Yauheni Kaliuta) [1700846] - [net] tls: Do not call sk_memcopy_from_iter with zero length (Yauheni Kaliuta) [1700846] - [net] net: ipv4: Set skb->dev for output route resolution (Yauheni Kaliuta) [1700846] - [net] bpf: refactor bpf_test_run() to separate own failures and test program result (Yauheni Kaliuta) [1700846] - [include] bpf: fix pointer offsets in context for 32 bit (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: copy a few net uapi headers to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: tcp_bpf_recvmsg should return EAGAIN when nonblocking and no data (Yauheni Kaliuta) [1700846] - [net] bpf: skmsg, fix psock create on existing kcm/tls port (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: remove socket lock assertion on ULP cleanup (Yauheni Kaliuta) [1700846] - [lib] bpf: test_bpf: add init_net to dev for flow_dissector (Yauheni Kaliuta) [1700846] - [net] flow_dissector: lookup netns by skb->sk if skb->dev is NULL (Yauheni Kaliuta) [1700846] - [net] tls: Fixed uninitialised vars warning (Yauheni Kaliuta) [1700846] - [include] cgroup: Simplify cgroup_ancestor (Yauheni Kaliuta) [1700846] - [netdrv] veth: Orphan skb before GRO (Yauheni Kaliuta) [1700846] - [net] net/core/filter: fix unused-variable warning (Yauheni Kaliuta) [1700846] - [net] bpf: fix build error with clang (Yauheni Kaliuta) [1700846] - [netdrv] veth: Free queues on link delete (Yauheni Kaliuta) [1700846] - [net] bpf: fix sanitation rewrite in case of non-pointers (Yauheni Kaliuta) [1700846] - [net] bpf: drop refcount if bpf_map_new_fd() fails in map_create() (Yauheni Kaliuta) [1700846] - [net] bpf: decrease usercnt if bpf_map_new_fd() fails in bpf_map_get_fd_by_id() (Yauheni Kaliuta) [1700846] - [net] bpf, lpm: fix lookup bug in map_delete_elem (Yauheni Kaliuta) [1700846] - [net] bpf: fix lockdep false positive in stackmap (Yauheni Kaliuta) [1700846] - [net] bpf: Fix narrow load on a bpf_sock returned from sk_lookup() (Yauheni Kaliuta) [1700846] - [net] bpf: Fix syscall's stackmap lookup potential deadlock (Yauheni Kaliuta) [1700846] - [kernel] bpf: fix potential deadlock in bpf_prog_register (Yauheni Kaliuta) [1700846] - [net] bpf: fix lockdep false positive in percpu_freelist (Yauheni Kaliuta) [1700846] - [net] bpf: run bpf programs with preemption disabled (Yauheni Kaliuta) [1700846] - [tools] bpf, selftests: fix handling of sparse CPU allocations (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix test_btf for typedef func_proto case (Yauheni Kaliuta) [1700846] - [net] bpf: btf: allow typedef func_proto (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix crash with un-owned prog arrays (Yauheni Kaliuta) [1700846] - [tools] bpftool: fix percpu maps updating (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: Cleanup license mess (Yauheni Kaliuta) [1700846] - [net] bpf: Annotate implicit fall through in cgroup_dev_func_proto (Yauheni Kaliuta) [1700846] - [net] bpf: Make function btf_name_offset_valid static (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: retry tests that expect build-id (Yauheni Kaliuta) [1700846] - [net] bpf: zero out build_id for BPF_STACK_BUILD_ID_IP (Yauheni Kaliuta) [1700846] - [net] bpf: don't assume build-id length is always 20 bytes (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: properly account for libbfd variations (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: retry loading program on EAGAIN (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: workaround clang asm goto compilation errors (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: install with_tunnels.sh for test_flow_dissector.sh (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: disallow to remove bpfilter module while being used (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: Fix type cast and pointer warnings (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: restart bpfilter_umh when error occurred (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: use cleanup callback to release umh_info (Yauheni Kaliuta) [1700846] - [kernel] umh: add exit routine for UMH process (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: Set user mode helper's command line (Yauheni Kaliuta) [1700846] - [kernel] umh: Add command line to user mode helpers (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: use get_pid_task instead of pid_task (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix bpftool map dump with bitfields (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: test btf bitfield with >=256 struct member offset (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpffs bitfield pretty print (Yauheni Kaliuta) [1700846] - [net] bpf: fix panic in stack_map_get_build_id() on i386 and arm32 (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: install files tcp_(server|client)*.py (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: user proper argument index (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [tools] bpf, doc: add note for libbpf's stand-alone build (Yauheni Kaliuta) [1700846] - [documentation] bpf, doc: update design qa to reflect kern_version requirement (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix incorrect users of create_and_get_cgroup (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases for alu op on mixed dst register types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test [::] -> [::1] rewrite in sys_sendmsg in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: Fix [::] -> [::1] rewrite in sys_sendmsg (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases to selftests (Yauheni Kaliuta) [1700846] - [net] bpf: fix check_map_access smin_value test when pointer contains offset (Yauheni Kaliuta) [1700846] - [net] bpf: restrict stack pointer arithmetic for unprivileged (Yauheni Kaliuta) [1700846] - [net] bpf: restrict map value pointer arithmetic for unprivileged (Yauheni Kaliuta) [1700846] - [net] bpf: enable access to ax register also from verifier rewrite (Yauheni Kaliuta) [1700846] - [net] bpf: move tmp variable into ax register in interpreter (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix error printing in test_devmap() (Yauheni Kaliuta) [1700846] - [tools] bpf: fix segfault in test_verifier selftest (Yauheni Kaliuta) [1700846] - [net] bpf: tls_sw, init TLS ULP removes BPF proto hooks (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, sock{map|hash} redirect through ULP (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, zap ingress queue on psock down (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, fix socket data_ready events (Yauheni Kaliuta) [1700846] - [net] bpf: skb_verdict, support SK_PASS on RX BPF path (Yauheni Kaliuta) [1700846] - [net] bpf: skmsg, replace comments with BUILD bug (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, improve offset chk in _is_valid_access (Yauheni Kaliuta) [1700846] - [tools] bpf: sk_msg, fix sk_msg_md access past end test (Yauheni Kaliuta) [1700846] - [net] bpf/cpumap: make sure frame_size for build_skb is aligned if headroom isn't (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: reorder stack size check with dead code sanitization (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: verifier: add tests for JSET interpretation (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: teach the verifier to reason about the BPF_JSET instruction (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add trivial JSET tests (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_LD_IMM64 to the line_info test (Yauheni Kaliuta) [1700846] - [net] bpf: Ensure line_info.insn_off cannot point to insn with zero code (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: do not force gcc as CC (Yauheni Kaliuta) [1700846] - [tools] bpf: fix up uapi helper description and sync bpf header with tools (Yauheni Kaliuta) [1700846] - [net] bpf: log struct/union attribute for forward type (Yauheni Kaliuta) [1700846] - [tools] bpf: sk_msg, add tests for size field (Yauheni Kaliuta) [1700846] - [tools] bpf: add tools lib/include support sk_msg_md size field (Yauheni Kaliuta) [1700846] - [include] bpf: sockmap, metadata support for reporting size of msg (Yauheni Kaliuta) [1700846] - [net] bpf: correct slot_type marking logic to allow more stack slot sharing (Yauheni Kaliuta) [1700846] - [kernel] bpf: support raw tracepoints in modules (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add an option to prevent auto-mount of bpffs, tracefs (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: attempt to mount tracefs if required for tracelog cmd (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: check precise {func, line, jited_line}_info_rec_size in test_btf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: fix memleak by freeing line_info (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: support pretty print with kind_flag set (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: refactor btf_dumper_int_bits() (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: test kernel bpffs map pretty print with struct kind_flag (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add test_btf unit tests for kind_flag (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync btf.h header from kernel to tools (Yauheni Kaliuta) [1700846] - [net] bpf: enable cgroup local storage map pretty print with kind_flag (Yauheni Kaliuta) [1700846] - [net] bpf: btf: fix struct/union/fwd types with kind_flag (Yauheni Kaliuta) [1700846] - [net] bpf: btf: refactor btf_int_bits_seq_show() (Yauheni Kaliuta) [1700846] - [net] bpf: remove useless version check for prog load (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix -Wmissing declaration warnings (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix warning on struct bpf_prog_linfo definition (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add a prog array map update example to documentation (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix examples in documentation for bpftool prog (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add doc for -m option to bpftool-prog.rst (Yauheni Kaliuta) [1700846] - [net] bpf: add self-check logic to liveness analysis (Yauheni Kaliuta) [1700846] - [net] bpf: improve stacksafe state comparison (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: check insn processed in test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: speed up stacksafe check (Yauheni Kaliuta) [1700846] - [net] bpf: verbose log bpf_line_info in verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Create a new btf_name_by_offset() for non type name use case (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix sk lookup usage in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: remove obsolete prog->aux sanitation in bpf_insn_prepare_dump (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: make sure callees don't prune with caller differences (Yauheni Kaliuta) [1700846] - [tools] bpf: sync tools/include/uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [net] bpf: include sub program tags in bpf_prog_info (Yauheni Kaliuta) [1700846] - [tools] bpf: Remove !func_info and !line_info check from test_btf and bpftool (Yauheni Kaliuta) [1700846] - [net] bpf: Remove bpf_dump_raw_ok() check for func_info and line_info (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: dual license all files (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: replace Netronome boilerplate with SPDX license headers (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix SPDX format in headers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add btf annotations for cgroup_local_storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for cgroup local storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: pass struct btf pointer to the map_check_btf() callback (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: use __bpf_constant_htons in test_prog.c (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpf_jit_limit knob for PAGE_SIZE >= 64K (Yauheni Kaliuta) [1700846] - [arm64] bpf: arm64: Enable arm64 jit to provide bpf_line_info (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: use proper type when passing prog_type (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: rename *_info_cnt to nr_*_info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync kernel uapi bpf.h to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: rename *_info_cnt to nr_*_info in bpf_prog_info (Yauheni Kaliuta) [1700846] - [net] bpf: clean up bpf_prog_get_info_by_fd() (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool: Fix newline and p_err issue (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing pointer dereference for map stacktrace fixup (Yauheni Kaliuta) [1700846] - [net] bpf: relax verifier restriction on BPF_MOV | BPF_ALU (Yauheni Kaliuta) [1700846] - [tools] media: bpf: add bpf function to report mouse movement (Yauheni Kaliuta) [1700846] - [include] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: bpftool: Print bpf_line_info during prog dump (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Add btf_line_info support to libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Refactor and bug fix on the bpf_func_info loading logic (Yauheni Kaliuta) [1700846] - [tools] bpf: Add unit tests for bpf_line_info (Yauheni Kaliuta) [1700846] - [tools] bpf: Refactor and bug fix in test_func_type in test_btf.c (Yauheni Kaliuta) [1700846] - [tools] bpf: tools: Sync uapi bpf.h (Yauheni Kaliuta) [1700846] - [include] bpf: Add bpf_line_info support (Yauheni Kaliuta) [1700846] - [net] net/flow_dissector: correctly cap nhoff and thoff in case of BPF (Yauheni Kaliuta) [1700846] - [net] selftests/bpf: use thoff instead of nhoff in BPF flow dissector (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: update testcases for BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [net] bpf: verifier remove the rejection on BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [net] bpf: interpreter support BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [s390] s390: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Yauheni Kaliuta) [1700846] - [powerpc] ppc: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Yauheni Kaliuta) [1700846] - [tools] bpf: Expect !info.func_info and insn_off name changes in test_btf/libbpf/bpftool (Yauheni Kaliuta) [1700846] - [tools] bpf: tools: Sync uapi bpf.h for the name changes in bpf_func_info (Yauheni Kaliuta) [1700846] - [net] bpf: Change insn_offset to insn_off in bpf_func_info (Yauheni Kaliuta) [1700846] - [net] bpf: Improve the info.func_info and info.func_info_rec_size behavior (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add a command to dump the trace pipe (Yauheni Kaliuta) [1700846] - [arm64] arm64/bpf: don't allocate BPF JIT programs in module memory (Yauheni Kaliuta) [1700846] - [net] bpf: add __weak hook for allocating executable memory (Yauheni Kaliuta) [1700846] - [net] bpf: add per-insn complexity limit (Yauheni Kaliuta) [1700846] - [net] bpf: improve verifier branch analysis (Yauheni Kaliuta) [1700846] - [net] bpf: check pending signals while verifying programs (Yauheni Kaliuta) [1700846] - [tools] selftests: add a test for bpf_prog_test_run_xattr (Yauheni Kaliuta) [1700846] - [tools] libbpf: add bpf_prog_test_run_xattr (Yauheni Kaliuta) [1700846] - [tools] tools: sync uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [net] bpf: respect size hint to BPF_PROG_TEST_RUN if present (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: fix: seg fault with NULL pointer arg (Yauheni Kaliuta) [1700846] - [powerpc] bpf: powerpc64: optimize JIT passes for bpf function calls (Yauheni Kaliuta) [1700846] - [tools] bpf: allow BPF read access to qdisc pkt_len (Yauheni Kaliuta) [1700846] - [tools] libbpf: Fix license in README.rst (Yauheni Kaliuta) [1700846] - [net] bpf: Fix memleak in aux->func_info and aux->btf (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: get ifindex from ifname (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: improve xdp1 example (Yauheni Kaliuta) [1700846] - [tools] bpf: Apply F_NEEDS_EFFICIENT_UNALIGNED_ACCESS to more ACCEPT test cases (Yauheni Kaliuta) [1700846] - [tools] bpf: Make more use of 'any' alignment in test_verifier.c (Yauheni Kaliuta) [1700846] - [tools] bpf: Adjust F_NEEDS_EFFICIENT_UNALIGNED_ACCESS handling in test_verifier.c (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_F_ANY_ALIGNMENT (Yauheni Kaliuta) [1700846] - [tools] bpf: Improve socket lookup reuseport documentation (Yauheni Kaliuta) [1700846] - [tools] bpf: Support sk lookup in netns with id 0 (Yauheni Kaliuta) [1700846] - [tools] bpf: Fix verifier log string check for bad alignment (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add owner_prog_type and owner_jited to bpftool output (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: mark offloaded programs more explicitly in plain output (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix bash completion for new map types (queue and stack) (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix bash completion for bpftool prog (attach|detach) (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: use "/proc/self/" i.o. crafting links with getpid() (Yauheni Kaliuta) [1700846] - [arm64] arm64/bpf: use movn/movk/movk sequence to generate kernel addresses (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: make libbpf _GNU_SOURCE friendly (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix a bitfield pretty print issue (Yauheni Kaliuta) [1700846] - [tools] bpf: Fix various lib and testsuite build failures on 32-bit (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add addition type tests to test_btf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix two test_btf unit test cases (Yauheni Kaliuta) [1700846] - [net] bpf: btf: check name validity for various types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add config fragment CONFIG_FTRACE_SYSCALLS (Yauheni Kaliuta) [1700846] - [tools] bpf: test_sockmap, add options for msg_pop_data() helper (Yauheni Kaliuta) [1700846] - [tools] bpf: add msg_pop_data helper to tools (Yauheni Kaliuta) [1700846] - [tools] libbpf: Document API and ABI conventions (Yauheni Kaliuta) [1700846] - [tools] libbpf: Verify versioned symbols (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add version script for DSO (Yauheni Kaliuta) [1700846] - [tools] libbpf: Name changing for btf_get_from_id (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: change selftest test_btf for both jit and non-jit (Yauheni Kaliuta) [1700846] - [net] bpf: btf: support proper non-jit func info (Yauheni Kaliuta) [1700846] - [arm64] bpf, arm64: fix getting subprog addr from aux for calls (Yauheni Kaliuta) [1700846] - [net] bpf, ppc64: generalize fetching subprog into bpf_jit_get_func_addr (Yauheni Kaliuta) [1700846] - [tools] bpf: align map type names formatting (Yauheni Kaliuta) [1700846] - [net] bpf: btf: fix spelling mistake "Memmber" -> "Member" (Yauheni Kaliuta) [1700846] - [net] bpf, tags: Fix DEFINE_PER_CPU expansion (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_MAP_TYPE_QUEUE and BPF_MAP_TYPE_STACK to bpftool-map (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: fix: error handling regarding kprobe_events (Yauheni Kaliuta) [1700846] - [tools] libbpf: make bpf_object__open default to UNSPEC (Yauheni Kaliuta) [1700846] - [tools] bpf: add skb->tstamp r/w access from tc clsact and cg skb progs (Yauheni Kaliuta) [1700846] - [net] bpf: fix integer overflow in queue_stack_map (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix spelling mistake "memeory" -> "memory" (Yauheni Kaliuta) [1700846] - [net] bpf, lpm: make longest_prefix_match() faster (Yauheni Kaliuta) [1700846] - [tools] bpf: adding tests for map_in_map helpber in libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: adding support for map in map in libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: don't specify prog name if kernel doesn't support it (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: remove map name retry from bpf_create_map_xattr (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: introduce bpf_object__probe_caps to test BPF capabilities (Yauheni Kaliuta) [1700846] - [tools] libbpf: make sure bpf headers are c++ include-able (Yauheni Kaliuta) [1700846] - [tools] bpf: fix a libbpf loader issue (Yauheni Kaliuta) [1700846] - [include] bpf: fix a compilation error when CONFIG_BPF_SYSCALL is not defined (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add support for func types (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: enhance test_btf file testing to test func info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: refactor to implement btf_get_from_id() in lib/bpf (Yauheni Kaliuta) [1700846] - [samples] tools/bpf: do not use pahole if clang/llvm can generate BTF sections (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add support to read .BTF.ext sections (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: extends test_btf to test load/retrieve func_type info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add new fields for program load in lib/bpf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync kernel uapi bpf.h header to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce bpf_func_info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: Add tests for BTF_KIND_FUNC_PROTO and BTF_KIND_FUNC (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: Sync kernel btf.h header (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Add BTF_KIND_FUNC and BTF_KIND_FUNC_PROTO (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Break up btf_type_is_void() (Yauheni Kaliuta) [1700846] - [tools] tools: add selftest for BPF_F_ZERO_SEED (Yauheni Kaliuta) [1700846] - [tools] tools: sync linux/bpf.h (Yauheni Kaliuta) [1700846] - [include] bpf: move BPF_F_QUERY_EFFECTIVE after map flags (Yauheni Kaliuta) [1700846] - [net] bpf: allow zero-initializing hash map seed (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: retry map creation without the name (Yauheni Kaliuta) [1700846] - [net] bpf: allocate local storage buffers using GFP_ATOMIC (Yauheni Kaliuta) [1700846] - [net] bpf: fix off-by-one error in adjust_subprog_starts (Yauheni Kaliuta) [1700846] - [net] bpf: fix null pointer dereference on pointer offload (Yauheni Kaliuta) [1700846] - [tools] bpftool: make libbfd optional (Yauheni Kaliuta) [1700846] - [net] net/bpf: split VLAN_PRESENT bit handling from VLAN_TCI (Yauheni Kaliuta) [1700846] - [powerpc] net/bpf_jit: PPC: split VLAN_PRESENT bit handling from VLAN_TCI (Yauheni Kaliuta) [1700846] - [net] net/skbuff: add macros for VLAN_PRESENT bit (Yauheni Kaliuta) [1700846] - [tools] selftest/bpf: Use bpf_sk_lookup_{tcp, udp} in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: Support socket lookup in CGROUP_SOCK_ADDR progs (Yauheni Kaliuta) [1700846] - [net] bpf: Fix IPv6 dport byte order in bpf_sk_lookup_udp (Yauheni Kaliuta) [1700846] - [net] bpf: Extend the sk_lookup() helper to XDP hookpoint (Yauheni Kaliuta) [1700846] - [net] bpf: helper to pop data from messages (Yauheni Kaliuta) [1700846] - [net] bpf: fix wrong helper enablement in cgroup local storage (Yauheni Kaliuta) [1700846] - [include] bpf: sk_msg program helper bpf_msg_push_data (Yauheni Kaliuta) [1700846] - [net] bpf: Fix IPv6 dport byte-order in bpf_sk_lookup (Yauheni Kaliuta) [1700846] - [net] bpf: Allow sk_lookup with IPv6 module (Yauheni Kaliuta) [1700846] - [net] net: core: Fix build with CONFIG_IPV6=m (Yauheni Kaliuta) [1700846] - [net] bpf: Fix dev pointer dereference from sk_skb (Yauheni Kaliuta) [1700846] - [net] bpf: fix building without CONFIG_INET (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Fix bpf_program__next() API (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix uninitialized duration warning (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test narrow loads with off > 0 for bpf_sock_addr (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test narrow loads with off > 0 in test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Allow narrow loads with offset > 0 (Yauheni Kaliuta) [1700846] - [tools] bpftool: support loading flow dissector (Yauheni Kaliuta) [1700846] - [tools] bpftool: add pinmaps argument to the load/loadall (Yauheni Kaliuta) [1700846] - [tools] bpftool: add loadall command (Yauheni Kaliuta) [1700846] - [tools] libbpf: add internal pin_name (Yauheni Kaliuta) [1700846] - [tools] libbpf: bpf_program__pin: add special case for instances.nr == 1 (Yauheni Kaliuta) [1700846] - [tools] libbpf: cleanup after partial failure in bpf_object__pin (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: rename flow dissector section to flow_dissector (Yauheni Kaliuta) [1700846] - [netdrv] bpf: do not pass netdev to translate() and prepare() offload callbacks (Yauheni Kaliuta) [1700846] - [net] bpf: pass prog instead of env to bpf_prog_offload_verifier_prep() (Yauheni Kaliuta) [1700846] - [netdrv] bpf: pass destroy() as a callback and remove its ndo_bpf subcommand (Yauheni Kaliuta) [1700846] - [include] bpf: pass translate() as a callback and remove its ndo_bpf subcommand (Yauheni Kaliuta) [1700846] - [netdrv] bpf: call verifier_prep from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [net] bpf: call finalize() from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [net] bpf: call verify_insn from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [netdrv] bpf: pass a struct with offload callbacks to bpf_offload_dev_create() (Yauheni Kaliuta) [1700846] - [tools] kselftests/bpf: use ping6 as the default ipv6 ping binary when it exists (Yauheni Kaliuta) [1700846] - [tools] bpftool: Improve handling of ENOENT on map dumps (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add a test case for sock_ops perf-event notification (Yauheni Kaliuta) [1700846] - [net] bpf: add perf event notificaton support for sock_ops (Yauheni Kaliuta) [1700846] - [net] bpf: let verifier to calculate and record max_pkt_offset (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: update references to other man pages in documentation (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: pass an argument to silence open_obj_pinned() (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix plain output and doc for --bpffs option (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: prevent infinite loop in get_fdinfo() (Yauheni Kaliuta) [1700846] - [samples] bpf_load: add map name to load_maps error message (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: adjust rlimit RLIMIT_MEMLOCK when loading programs, maps (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: enable (uncomment) all tests in test_libbpf.sh (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpf_prog_get_info_by_fd to return 0 func_lens for unpriv (Yauheni Kaliuta) [1700846] - [net] bpf: show main program address and length in bpf_prog_info (Yauheni Kaliuta) [1700846] - [net] bpf: show real jited address in bpf_prog_info->jited_ksyms (Yauheni Kaliuta) [1700846] - [net] bpf: show real jited prog address in /proc/kallsyms (Yauheni Kaliuta) [1700846] - [tools] bpf: test make sure to run unpriv test cases in test_verifier (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases to test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: don't set id on after map lookup with ptr_to_map_val return (Yauheni Kaliuta) [1700846] - [tools] libbpf: Fix compile error in libbpf_attach_type_by_name (Yauheni Kaliuta) [1700846] - [tools] kselftests/bpf: use ping6 as the default ipv6 ping binary if it exists (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add unlimited rlimit for flow_dissector_load (Yauheni Kaliuta) [1700846] - [net] bpf: add bpf_jit_limit knob to restrict unpriv allocations (Yauheni Kaliuta) [1700846] - [net] bpf: make direct packet write unclone more robust (Yauheni Kaliuta) [1700846] - [net] bpf: fix leaking uninitialized memory on pop/peek helpers (Yauheni Kaliuta) [1700846] - [net] bpf: fix direct packet write into pop/peek helpers (Yauheni Kaliuta) [1700846] - [net] bpf: fix cg_skb types to hint access type in may_access_direct_pkt_data (Yauheni Kaliuta) [1700846] - [net] bpf: fix direct packet access for flow dissector progs (Yauheni Kaliuta) [1700846] - [net] bpf: disallow direct packet access for unpriv in cg_skb (Yauheni Kaliuta) [1700846] - [tools] bpf: fix test suite to enable all unpriv program types (Yauheni Kaliuta) [1700846] - [net] bpf, btf: fix a missing check bug in btf_parse (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add config fragments BPF_STREAM_PARSER and XDP_SOCKETS (Yauheni Kaliuta) [1700846] - [net] bpf: devmap: fix wrong interface selection in notifier_call (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix completion for "bpftool map update" (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: print nb of cmds to stdout (not stderr) for batch mode (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: document restriction on '.' in names to pin in bpffs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix return value comparison for tests in test_libbpf.sh (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: simplify and cleanup perf ring buffer walk (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: avoid retpoline for map push/pop/peek operation (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: remove unneeded flow key in check_helper_mem_access (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: reject xadd on flow key memory (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: fix register type dump in xadd and st (Yauheni Kaliuta) [1700846] - [net] ulp: remove uid and user_visible members (Yauheni Kaliuta) [1700846] - [tools] bpf: test_sockmap add options to use msg_push_data (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf support for msg_push_data (Yauheni Kaliuta) [1700846] - [tools] Sync uapi/bpf.h to tools/include (Yauheni Kaliuta) [1700846] - [net] bpf: add tests for direct packet access from CGROUP_SKB (Yauheni Kaliuta) [1700846] - [net] bpf: add cg_skb_is_valid_access for BPF_PROG_TYPE_CGROUP_SKB (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: use correct barriers in perf ring buffer walk (Yauheni Kaliuta) [1700846] - [tools] tools, perf: add and use optimized ring_buffer_{read_head, write_tail} helpers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add test cases for queue and stack maps (Yauheni Kaliuta) [1700846] - [net] bpf: add MAP_LOOKUP_AND_DELETE_ELEM syscall (Yauheni Kaliuta) [1700846] - [net] bpf: add queue and stack maps (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: add ARG_PTR_TO_UNINIT_MAP_VALUE (Yauheni Kaliuta) [1700846] - [net] bpf/syscall: allow key to be null in map functions (Yauheni Kaliuta) [1700846] - [net] bpf: rename stack trace map operations (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: use 4 context mode for the NFP disasm (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix file resource leak in load_kallsyms (Yauheni Kaliuta) [1700846] - [tools] bpf: sockmap, add msg_peek tests to test_sockmap (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, support for msg_peek in sk_msg with redirect ingress (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, fix skmsg recvmsg handler to track size correctly (Yauheni Kaliuta) [1700846] - [include] bpf: skmsg, improve sk_msg_used_element to work in cork context (Yauheni Kaliuta) [1700846] - [tools] libbpf: Per-symbol visibility for DSO (Yauheni Kaliuta) [1700846] - [tools] bpf, tls: add tls header to tools infrastructure (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add map create command (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, add flag to allow non-compat map definitions (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, add support for attaching programs to maps (Yauheni Kaliuta) [1700846] - [maintainers] bpf, doc: add maintainers entry to related files (Yauheni Kaliuta) [1700846] - [tools] bpf: add tls support for testing in test_sockmap (Yauheni Kaliuta) [1700846] - [net] tls: add bpf support to sk_msg handling (Yauheni Kaliuta) [1700846] - [net] tls: replace poll implementation with read hook (Yauheni Kaliuta) [1700846] - [net] tls: convert to generic sk_msg interface (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: convert to generic sk_msg interface (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: remove ulp bits from sockmap (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: enforce sock_owned_by_me upon ulp init and cleanup (Yauheni Kaliuta) [1700846] - [net] net/tls: Make function get_rec() static (Yauheni Kaliuta) [1700846] - [net] net/tls: Mark the end in scatterlist table (Yauheni Kaliuta) [1700846] - [net] tls: Fixed a memory leak during socket close (Yauheni Kaliuta) [1700846] - [net] net/tls: Removed redundant checks for non-NULL (Yauheni Kaliuta) [1700846] - [net] tls: Add support for inplace records encryption (Yauheni Kaliuta) [1700846] - [net] tls: Remove redundant vars from tls record structure (Yauheni Kaliuta) [1700846] - [net] net/tls: Fixed race condition in async encryption (Yauheni Kaliuta) [1700846] - [net] tls: Fix socket mem accounting error under async encryption (Yauheni Kaliuta) [1700846] - [net] net/tls: Add support for async encryption of records for performance (Yauheni Kaliuta) [1700846] - [net] tls: Remove dead code in tls_sw_sendmsg (Yauheni Kaliuta) [1700846] - [net] net/tls: Fixed return value when tls_complete_pending_work() fails (Yauheni Kaliuta) [1700846] - [net] bpf: wait for running BPF programs when updating map-in-map (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: install script with_addr.sh (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add config fragment LWTUNNEL (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: use proper type and uapi perf_event.h header for libbpf (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add XDP selftests for modifying and popping VLAN headers (Yauheni Kaliuta) [1700846] - [tools] bpf: make TC vlan bpf_helpers avail to selftests (Yauheni Kaliuta) [1700846] - [net] net: fix generic XDP to handle if eth header was mangled (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test_verifier, check bpf_map_lookup_elem access in bpf prog (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test_verifier, change names of fixup maps (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, print strerror when map lookup error occurs (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, split the function do_dump() (Yauheni Kaliuta) [1700846] - [net] bpf: return EOPNOTSUPP when map lookup isn't supported (Yauheni Kaliuta) [1700846] - [net] bpf: error handling when map_lookup_elem isn't supported (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Fix a missing check bug (Yauheni Kaliuta) [1700846] - [net] bpf: allow offload of programs with BPF-to-BPF function calls (Yauheni Kaliuta) [1700846] - [net] bpf: add verifier callback to get stack usage info for offloaded progs (Yauheni Kaliuta) [1700846] - [tools] libbpf: relicense libbpf as LGPL-2.1 OR BSD-2-Clause (Yauheni Kaliuta) [1700846] - [samples] bpf, tracex3_user: erase "ARRAY_SIZE" redefined (Yauheni Kaliuta) [1700846] - [tools] libbpf: Use __u32 instead of u32 in bpf_program__load (Yauheni Kaliuta) [1700846] - [tools] libbpf: Make include guards consistent (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in str_error.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in nlattr.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in libbpf.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Move __dump_nlmsg_t from API to implementation (Yauheni Kaliuta) [1700846] - [documentation] Documentation: Describe bpf reference tracking (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add C tests for reference tracking (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support loading individual progs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add tests for reference tracking (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Generalize dummy program types (Yauheni Kaliuta) [1700846] - [tools] bpf: Add helper to retrieve socket in BPF (Yauheni Kaliuta) [1700846] - [include] bpf: Introduce bpf_skb_ancestor_cgroup_id helper (Yauheni Kaliuta) [1700846] - [tools] bpf: sync include/uapi/linux/bpf.h to tools/include/uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [tools] bpf: sync bpf.h uapi with tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h uapi to tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Add reference tracking to verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Macrofy stack state copy (Yauheni Kaliuta) [1700846] - [include] bpf: Add PTR_TO_SOCKET verifier type (Yauheni Kaliuta) [1700846] - [net] bpf: Generalize ptr_or_null regs check (Yauheni Kaliuta) [1700846] - [net] bpf: Reuse canonical string formatter for ctx errs (Yauheni Kaliuta) [1700846] - [net] bpf: Add iterator for spilled registers (Yauheni Kaliuta) [1700846] - [net] bpf: don't accept cgroup local storage with zero value size (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: cgroup local storage-based network counters (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: extend test_cgrp2_attach2 test to use per-cpu cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: extend the storage test to test per-cpu cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add verifier per-cpu cgroup storage tests (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for PERCPU_CGROUP_STORAGE maps (Yauheni Kaliuta) [1700846] - [net] bpf: don't allow create maps of per-cpu cgroup local storages (Yauheni Kaliuta) [1700846] - [net] bpf: introduce per-cpu cgroup local storage (Yauheni Kaliuta) [1700846] - [net] bpf: rework cgroup storage pointer passing (Yauheni Kaliuta) [1700846] - [net] bpf: extend cgroup bpf core to allow multiple cgroup storage types (Yauheni Kaliuta) [1700846] - [net] bpf/test_run: support cgroup local storage (Yauheni Kaliuta) [1700846] - [net] bpf: harden flags check in cgroup_storage_update_elem() (Yauheni Kaliuta) [1700846] - [net] bpf: permit CGROUP_DEVICE programs accessing helper bpf_get_current_cgroup_id() (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test libbpf_{prog,attach}_type_by_name (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Use libbpf_attach_type_by_name in test_socket_cookie (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support sk_skb/stream_{parser, verdict} section names (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support cgroup_skb/{e,in}gress section names (Yauheni Kaliuta) [1700846] - [tools] libbpf: Introduce libbpf_attach_type_by_name (Yauheni Kaliuta) [1700846] - [tools] bpftool: Fix bpftool net output (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for BPF_MAP_TYPE_REUSEPORT_SOCKARRAY maps (Yauheni Kaliuta) [1700846] - [tools] bpf: test_maps, only support ESTABLISHED socks (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, fix transition through disconnect without close (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap only allow ESTABLISHED sock state (Yauheni Kaliuta) [1700846] - [net] bpf: remove redundant null pointer check before consume_skb (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: fix compilation failure (Yauheni Kaliuta) [1700846] - [net] flow_dissector: fix build failure without CONFIG_NET (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: fix a compilation failure (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: remove duplicated includes (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: improve output format for bpftool net (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix bpf_flow.c build (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test bpf flow dissection (Yauheni Kaliuta) [1700846] - [tools] flow_dissector: implements eBPF parser (Yauheni Kaliuta) [1700846] - [tools] bpf: support flow dissector in libbpf and bpftool (Yauheni Kaliuta) [1700846] - [include] flow_dissector: implements flow dissector BPF hook (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Fix end boundary calculation for type section (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix a netlink recv issue (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: support prog array map and map of maps (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for program array map (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add net support (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add more netlink functionalities in lib/bpf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: move bpf/lib netlink related functions into a new file (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf/test_progs: do not check errno == 0 (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: fix verifier instability (Yauheni Kaliuta) [1700846] - [net] bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, add xskmap in map types (Yauheni Kaliuta) [1700846] - [tools] bpf: add selftest for bpf's (set|get)_sockopt for SAVE_SYN (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: xdpsock, minor fixes (Yauheni Kaliuta) [1700846] - [samples] bpf: add TCP_SAVE_SYN/TCP_SAVED_SYN sample program (Yauheni Kaliuta) [1700846] - [net] bpf: add TCP_SAVE_SYN/TCP_SAVED_SYN options for bpf_(set|get)sockopt (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add btf percpu map formated dump (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add bpffs percpu map pretty print tests in test_btf (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for percpu arraymap/hash/lru_hash (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: display non-spill stack slot types in print_verifier_state (Yauheni Kaliuta) [1700846] - [tools] bpf: use --cgroup in test_suite if supplied (Yauheni Kaliuta) [1700846] - [tools] bpf: sockmap test remove shutdown() calls (Yauheni Kaliuta) [1700846] - [net] bpf: remove duplicated include from syscall.c (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, decrement copied count correctly in redirect error case (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix potential use after free in bpf_tcp_close (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: return from do_event_pipe() on bad arguments (Yauheni Kaliuta) [1700846] - [net] bpf: use per htab salt for bucket hash (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap: write_space events need to be passed to TCP handler (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock hash count in alloc_sock_hash_elem (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock_hash_alloc and reject zero-sized keys (Yauheni Kaliuta) [1700846] - [net] bpf: fix redirect to map under tail calls (Yauheni Kaliuta) [1700846] - [netdrv] veth: Support per queue XDP ring (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add XDP TX and REDIRECT (Yauheni Kaliuta) [1700846] - [net] xdp: Helpers for disabling napi_direct of xdp_return_frame (Yauheni Kaliuta) [1700846] - [net] bpf: Make redirect_info accessible from modules (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add ndo_xdp_xmit (Yauheni Kaliuta) [1700846] - [netdrv] veth: Handle xdp_frames in xdp napi ring (Yauheni Kaliuta) [1700846] - [netdrv] veth: Avoid drops by oversized packets when XDP is enabled (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add driver XDP (Yauheni Kaliuta) [1700846] - [net] net: Export skb_headers_offset_update (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix bpf selftest test_cgroup_storage failure (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix map elem deletion race with smap_stop_sock (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix leakage of smap_psock_map_entry (Yauheni Kaliuta) [1700846] - [net] bpf: fix a rcu usage warning in bpf_prog_array_copy_core() (Yauheni Kaliuta) [1700846] - [tools] bpf: test: fix spelling mistake "REUSEEPORT" -> "REUSEPORT" (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Selftest for bpf_skb_ancestor_cgroup_id (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add cgroup id helpers to bpf_helpers.h (Yauheni Kaliuta) [1700846] - [net] bpf: decouple btf from seq bpf fs dump and enable more maps (Yauheni Kaliuta) [1700846] - [tools] bpf: Test BPF_PROG_TYPE_SK_REUSEPORT (Yauheni Kaliuta) [1700846] - [tools] bpf: test BPF_MAP_TYPE_REUSEPORT_SOCKARRAY (Yauheni Kaliuta) [1700846] - [tools] bpf: Refactor ARRAY_SIZE macro to bpf_util.h (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce BPF_PROG_TYPE_SK_REUSEPORT (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce BPF_MAP_TYPE_REUSEPORT_SOCKARRAY (Yauheni Kaliuta) [1700846] - [net] net: Add ID (if needed) to sock_reuseport and expose reuseport_lock (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add bpffs pretty print btf test for hash/lru_hash maps (Yauheni Kaliuta) [1700846] - [net] bpf: btf: add pretty print for hash/lru_hash maps (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpffs non-array map seq_show issue (Yauheni Kaliuta) [1700846] - [powerpc] powerpc/Makefiles: Convert ifeq to ifdef where possible (Yauheni Kaliuta) [1700846] - [net] bpf: introduce update_effective_progs() (Yauheni Kaliuta) [1700846] - [s390] s390: fix br_r1_trampoline for machines without exrl (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix a typo in map in map test (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: fix BTF code added twice to different trees (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: extend test_cgrp2_attach2 test to use cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add a cgroup storage test (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add verifier cgroup storage tests (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for CGROUP_STORAGE maps (Yauheni Kaliuta) [1700846] - [net] bpf: introduce the bpf_get_local_storage() helper function (Yauheni Kaliuta) [1700846] - [net] bpf: don't allow create maps of cgroup local storages (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: introduce BPF_PTR_TO_MAP_VALUE (Yauheni Kaliuta) [1700846] - [net] bpf: extend bpf_prog_array to store pointers to the cgroup storage (Yauheni Kaliuta) [1700846] - [net] bpf: allocate cgroup storage entries on attaching bpf programs (Yauheni Kaliuta) [1700846] - [net] bpf: pass a pointer to a cgroup storage using pcpu variable (Yauheni Kaliuta) [1700846] - [net] bpf: introduce cgroup storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: add ability to charge bpf maps memory dynamically (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: MOV64 don't mark dst reg unbounded (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test for get_socket_cookie (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add bpf_get_socket_cookie to bpf_helpers.h (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Support bpf_get_socket_cookie in more prog types (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: convert xdpsock_user.c to libbpf (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: convert xdp_fwd_user.c to libbpf (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: add bpf_object__find_program_by_title() (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: handle NULL program gracefully in bpf_program__nth_fd() (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: Add BTF build flags to Makefile (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: ignore build products (Yauheni Kaliuta) [1700846] - [tools] bpf: Add Python 3 support to selftests scripts for bpf (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: fix inconsistent IS_ERR and PTR_ERR (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap: remove redundant pointer sg (Yauheni Kaliuta) [1700846] - [net] bpf: bpf_prog_array_alloc() should return a generic non-rcu pointer (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: don't pass FEATURES_DUMP to libbpf (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: remove libelf-getphdrnum feature detection (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: test_cgrp2_sock2: fix an off by one (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: ensure that we don't load over MAX_PROGS programs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test case for BPF_SOCK_OPS_TCP_LISTEN_CB (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Better verification in test_tcpbpf (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Switch test_tcpbpf_user to cgroup_helpers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix const'ness in cgroup_helpers (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Add BPF_SOCK_OPS_TCP_LISTEN_CB (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: print map dump and lookup with btf info (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: add btf print functionality (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: export btf types and name by offset from lib (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: build and install man page for eBPF helpers from bpftool/ (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1700846] - [include] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1700846] - [tools] bpftool: add bash completion for cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] bpftool: document cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] bpftool: introduce cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test sys_connect BPF hooks with TFO (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: Add xdp_sample_pkts example (Yauheni Kaliuta) [1700846] - [tools] trace_helpers.c: Add helpers to poll multiple perf FDs for events (Yauheni Kaliuta) [1700846] - [net] bpf: deal with kABI breakage in cgroups (Yauheni Kaliuta) [1700846] - [netdrv] nfp: bpf: fix static check error through tightening shift amount adjustment (Pablo Cascon) [1663986] - [netdrv] nfp: disable netpoll on representors (Pablo Cascon) [1663986] - [netdrv] nfp: validate the return code from dev_queue_xmit() (Pablo Cascon) [1663986] - [netdrv] nfp: fix simple vNIC mailbox length (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: set higher timeout for flash bundle (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: allow the use of DMA buffer (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: move default buffer handling into its own function (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: use fractional size of the buffer (Pablo Cascon) [1663986] - [netdrv] nfp: report RJ45 connector in ethtool (Pablo Cascon) [1663986] - [netdrv] nfp: remove ethtool flashing fallback (Pablo Cascon) [1663986] - [netdrv] nfp: Remove switchdev.h inclusion (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: fix code-gen bug on BPF_ALU | BPF_XOR | BPF_K (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: allow flashing the device via devlink (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: include vendor/product info in serial number (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: use the generic manufacture identifier instead of vendor (Pablo Cascon) [1663986] - [netdrv] nfp: flower: cmsg: use struct_size() helper (Pablo Cascon) [1663986] - [netdrv] nfp: Implement ndo_get_port_parent_id() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: complete ALU32 logic shift supports (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: correct the behavior for shifts by zero (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report the running and flashed versions (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: add support for versions command (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report fixed versions (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report driver name and serial number (Pablo Cascon) [1663986] - [netdrv] nfp: use struct_size() in kzalloc() (Pablo Cascon) [1663986] - [netdrv] nfp: flower: enable MAC address sharing for offloadable devs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure MAC cleanup on address change (Pablo Cascon) [1663986] - [netdrv] nfp: flower: add infastructure for non-repr priv data (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure deletion of old offloaded MACs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove list infastructure from MAC offload (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ignore offload of VF and PF repr MAC addresses (Pablo Cascon) [1663986] - [netdrv] nfp: flower: tidy tunnel related private data (Pablo Cascon) [1663986] - [netdrv] nfp: flower: support multiple memory units for filter offloads (Pablo Cascon) [1663986] - [netdrv] nfp: flower: increase cmesg reply timeout (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: optimize codegen for JSET with a constant (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: remove the trivial JSET optimization (Pablo Cascon) [1663986] - [netdrv] nfp: flower: fix cb_ident duplicate in indirect block register (Pablo Cascon) [1663986] - [netdrv] nfp: abm: allow to opt-out of RED offload (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure TCP flags can be placed in IPv6 frame (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Pablo Cascon) [1663986] - [netdrv] nfp: convert to DEFINE_SHOW_ATTRIBUTE (Pablo Cascon) [1663986] - [netdrv] nfp: report more info when reconfiguration fails (Pablo Cascon) [1663986] - [netdrv] nfp: add offset to all TLV parsing errors (Pablo Cascon) [1663986] - [netdrv] nfp: add offloads on representors (Pablo Cascon) [1663986] - [netdrv] nfp: add locking around representor changes (Pablo Cascon) [1663986] - [netdrv] nfp: run don't require Qdiscs on representor netdevs (Pablo Cascon) [1663986] - [netdrv] nfp: run representor TX locklessly (Pablo Cascon) [1663986] - [netdrv] nfp: avoid oversized TSO headers with metadata prepend (Pablo Cascon) [1663986] - [netdrv] nfp: correct descriptor offsets in presence of metadata (Pablo Cascon) [1663986] - [netdrv] nfp: move queue variable init (Pablo Cascon) [1663986] - [netdrv] nfp: move temporary variables in nfp_net_tx_complete() (Pablo Cascon) [1663986] - [netdrv] nfp: copy only the relevant part of the TX descriptor for frags (Pablo Cascon) [1663986] - [netdrv] nfp: flower: prevent offload if rhashtable insert fails (Pablo Cascon) [1663986] - [netdrv] nfp: flower: release metadata on offload failure (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add support for more threshold actions (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add cls_u32 offload for simple band classification (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add functions to update DSCP -> virtual queue map (Pablo Cascon) [1663986] - [netdrv] nfp: abm: calculate PRIO map len and check mailbox size (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add GRED offload (Pablo Cascon) [1663986] - [netdrv] nfp: abm: wrap RED parameters in bands (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add up bands for sto/non-sto stats (Pablo Cascon) [1663986] - [netdrv] nfp: abm: switch to extended stats for reading packet/byte counts (Pablo Cascon) [1663986] - [netdrv] nfp: abm: size threshold table to account for bands (Pablo Cascon) [1663986] - [netdrv] nfp: abm: pass band parameter to functions (Pablo Cascon) [1663986] - [netdrv] nfp: abm: map per-band symbols (Pablo Cascon) [1663986] - [netdrv] nfp: abm: restructure Qdisc handling (Pablo Cascon) [1663986] - [netdrv] nfp: abm: save RED's parameters (Pablo Cascon) [1663986] - [netdrv] nfp: abm: reset RED's child based on limit (Pablo Cascon) [1663986] - [netdrv] nfp: abm: build full Qdisc hierarchy based on graft notifications (Pablo Cascon) [1663986] - [netdrv] nfp: abm: allocate Qdisc child table (Pablo Cascon) [1663986] - [netdrv] nfp: abm: remember which Qdisc is root (Pablo Cascon) [1663986] - [netdrv] nfp: abm: track all offload-enabled qdiscs (Pablo Cascon) [1663986] - [netdrv] nfp: abm: keep track of all RED thresholds (Pablo Cascon) [1663986] - [netdrv] nfp: abm: rename qdiscs -> red_qdiscs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove unnecessary code in flow lookup (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove TC egdev offloads (Pablo Cascon) [1663986] - [netdrv] nfp: flower: offload tunnel decap rules via indirect TC blocks (Pablo Cascon) [1663986] - [netdrv] nfp: flower: increase scope of netdev checking functions (Pablo Cascon) [1663986] - [netdrv] nfp: flower: allow non repr netdev offload (Pablo Cascon) [1663986] - [netdrv] nfp: use the new __netdev_tx_sent_queue() BQL optimisation (Pablo Cascon) [1663986] - [netdrv] nfp: abm: refuse RED offload with harddrop set (Pablo Cascon) [1663986] - [netdrv] nfp: abm: don't set negative threshold (Pablo Cascon) [1663986] - [netdrv] nfp: abm: provide more precise info about offload parameter validation (Pablo Cascon) [1663986] - [netdrv] nfp: parse vNIC TLV capabilities at alloc time (Pablo Cascon) [1663986] - [netdrv] nfp: pass ctrl_bar pointer to nfp_net_alloc (Pablo Cascon) [1663986] - [netdrv] nfp: abm: split qdisc offload code into a separate file (Pablo Cascon) [1663986] - [netdrv] nfp: flower: include geneve as supported offload tunnel type (Pablo Cascon) [1663986] - [netdrv] nfp: flower: use geneve and vxlan helpers (Pablo Cascon) [1663986] - [netdrv] nfp: flower: use the common netdev notifier (Pablo Cascon) [1663986] - [netdrv] nfp: register a notifier handler in a central location for the device (Pablo Cascon) [1663986] - [netdrv] nfp: flower: make nfp_fl_lag_changels_event() void (Pablo Cascon) [1663986] - [netdrv] nfp: flower: don't try to nack device unregister events (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove unnecessary iteration over devices (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: protect against mis-initializing atomic counters (Pablo Cascon) [1663986] - [netdrv] nfp: devlink port split support for 1x100G CXP NIC (Pablo Cascon) [1663986] - [netdrv] nfp: replace long license headers with SPDX (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support pointers to other stack frames for BPF-to-BPF calls (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: account for BPF-to-BPF calls when preparing nfp JIT (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: ignore helper-related checks for BPF calls in nfp verifier (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: rename nfp_prog->stack_depth as nfp_prog->stack_frame_depth (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow control message sizing for map ops (Pablo Cascon) [1663986] - [netdrv] nfp: allow apps to request larger MTU on control vNIC (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: parse global BPF ABI version capability (Pablo Cascon) [1663986] - [netdrv] nfp: warn on experimental TLV types (Pablo Cascon) [1663986] - [netdrv] nfp: remove ndo_poll_controller (Pablo Cascon) [1663986] - [netdrv] nfp: replace spin_lock_bh with spin_lock in tasklet callback (Pablo Cascon) [1663986] - [netdrv] nfp: separate VXLAN and GRE feature handling (Pablo Cascon) [1663986] - [netdrv] nfp: validate rtsym accesses fall within the symbol (Pablo Cascon) [1663986] - [netdrv] nfp: prefix rtsym error messages with symbol name (Pablo Cascon) [1663986] - [netdrv] nfp: fix readq on absolute RTsyms (Pablo Cascon) [1663986] - [netdrv] nfp: make RTsym users handle absolute symbols correctly (Pablo Cascon) [1663986] - [netdrv] nfp: support access to absolute RTsyms (Pablo Cascon) [1663986] - [netdrv] nfp: convert all RTsym users to use new read/write helpers (Pablo Cascon) [1663986] - [netdrv] nfp: convert existing RTsym helpers to full target decoding (Pablo Cascon) [1663986] - [netdrv] nfp: pass cpp_id to nfp_cpp_map_area() (Pablo Cascon) [1663986] - [netdrv] nfp: add RTsym access helpers (Pablo Cascon) [1663986] - [netdrv] nfp: add basic errors messages to target logic (Pablo Cascon) [1663986] - [netdrv] nfp: save the MU locality field offset (Pablo Cascon) [1663986] - [netdrv] nfp: refactor the per-chip PCIe config (Pablo Cascon) [1663986] - [netdrv] nfp: add support for NFP5000 (Pablo Cascon) [1663986] - [netdrv] nfp: abm: look up MAC addresses via management FW (Pablo Cascon) [1663986] - [netdrv] nfp: add support for indirect HWinfo lookup (Pablo Cascon) [1663986] - [netdrv] nfp: interpret extended FW load result codes (Pablo Cascon) [1663986] - [netdrv] nfp: attempt FW load from flash (Pablo Cascon) [1663986] - [netdrv] nfp: encapsulate NSP command arguments into structs (Pablo Cascon) [1663986] - [netdrv] nfp: clean up return types in kdoc comments (Pablo Cascon) [1663986] - [netdrv] nfp: flower: allow matching on ipv4 UDP tunnel tos and ttl (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: xdp_adjust_tail support (Pablo Cascon) [1663986] - [netdrv] nfp: fix variable dereferenced before check in nfp_app_ctrl_rx_raw() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: improve map offload info messages (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: remember maps by ID (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow receiving perf events on data queues (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: pass raw data buffer to nfp_bpf_event_output() (Pablo Cascon) [1663986] - [netdrv] nfp: allow control message reception on data queues (Pablo Cascon) [1663986] - [netdrv] nfp: move repr handling on RX path (Pablo Cascon) [1663986] - [netdrv] nfp: protect from theoretical size overflows on HW descriptor ring (Pablo Cascon) [1663986] - [netdrv] nfp: restore correct ordering of fields in rx ring structure (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow program sharing within ASIC (Pablo Cascon) [1663986] - [netdrv] nfp: add .ndo_init() and .ndo_uninit() callbacks (Pablo Cascon) [1663986] - [netdrv] nfp: add support for simultaneous driver and hw XDP (Pablo Cascon) [1663986] - [netdrv] nfp: avoid using getnstimeofday64() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: migrate to advanced reciprocal divide in reciprocal_div.h (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support u32 divide using reciprocal_div.h (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support u16 and u32 multiplications (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: copy range info for all operands of all ALU operations (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: rename umin/umax to umin_src/umax_src (Pablo Cascon) [1663986] - [netdrv] nfp: make use of napi_consume_skb() (Pablo Cascon) [1663986] - [netdrv] nfp: implement netpoll ndo (thus enabling netconsole) (Pablo Cascon) [1663986] - [netdrv] nfp: fail probe if serial or interface id is missing (Pablo Cascon) [1663986] - [netdrv] nfp: expose ring stats of inactive rings via ethtool (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow source ptr type be map ptr in memcpy optimization (Pablo Cascon) [1663986] - [netdrv] bpf: offload: keep the offload state per-ASIC (Pablo Cascon) [1663986] - [netdrv] bpf: offload: aggregate offloads per-device (Pablo Cascon) [1663986] - [tools] selftests/bpf: add test for sharing objects between netdevs (Ivan Vecera) [1708399] - [netdrv] netdevsim: allow program sharing between devices (Ivan Vecera) [1708399] - [net] bpf: offload: allow program and map sharing per-ASIC (Ivan Vecera) [1708399] - [netdrv] bpf: offload: keep the offload state per-ASIC (Ivan Vecera) [1708399] - [netdrv] bpf: offload: aggregate offloads per-device (Ivan Vecera) [1708399] - [net] bpf: offload: rename bpf_offload_dev_match() to bpf_offload_prog_map_match() (Ivan Vecera) [1708399] - [netdrv] netdevsim: associate bound programs with shared dev (Ivan Vecera) [1708399] - [netdrv] netdevsim: add shared netdevsim devices (Ivan Vecera) [1708399] - [netdrv] netdevsim: add switch_id attribute (Ivan Vecera) [1708399]- [infiniband] IB/mlx5: Remove set but not used variable (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: WQE dump jumps over first 16 bytes (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix false compilation warning (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Remove redundant assignment (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix compilation warning in en_tc.c (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix compilation warning in eq.c (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix the max MTU check in case of XDP (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix use-after-free after xdp_return_frame (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix scatter to CQE in DCT QP creation (Alaa Hleihel) [1691238] - [netdrv] Revert "net/mlx5e: Enable reporting checksum unnecessary also for L3 packets" (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Rx, Check ip headers sanity (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: FPGA, tls, idr remove on flow delete (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: FPGA, tls, hold rcu read lock a bit longer (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Consider tunnel type for encap contexts (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Correctly use the namespace type when allocating pedit action (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: ethtool, Allow legacy link-modes configuration via non-extended ptys (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: ethtool, Fix type analysis of advertised link-mode (Alaa Hleihel) [1691238] - [netdrv] net: mlx5: Add a missing check on idr_find, free buf (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Allow IPv4 ttl & IPv6 hop_limit rewrite for all L4 protocols (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Use mlx5 core to create/destroy a DEVX DCT (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix DCT creation bad flow (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix bad flow upon DEVX mkey creation (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Add support for ODP for DEVX indirection mkey (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Manage indirection mkey upon DEVX flow for ODP (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: DEVX handling for indirection MKEY (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix access to non-existing receive queue (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Properly get the PF number phys port name ndo (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Consolidate update FTE for all removal changes (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Add a locked flag to node removal functions (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Add modify FTE helper function (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix multiple updates of steering rules in parallel (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Validate correct PD before prefetch MR (Alaa Hleihel) [1691238] - [infiniband] RDMA/mlx5: Introduce and reuse helper to identify ODP MR (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Protect against prefetch of invalid MR (Alaa Hleihel) [1691238] - [infiniband] net/mlx5: Make mlx5_cmd_exec_cb() a safe API (Alaa Hleihel) [1691238] - [infiniband] RDMA: Clean structures from CONFIG_INFINIBAND_ON_DEMAND_PAGING (Alaa Hleihel) [1691238] - [infiniband] RDMA/mlx5: Embed into the code flow the ODP config option (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Add missing static function annotation (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Do not use hw_access_flags for be and CPU data (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix code style issue in mlx driver (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix the locking of SRQ objects in ODP events (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Make mlx5_ib_stage_odp_cleanup() static (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Declare local functions 'static' (Alaa Hleihel) [1691238] - [netdrv] RDMA/mlx5: Delete declaration of already removed function (Alaa Hleihel) [1691238] - [netdrv] mlx5-core: Mark ConnectX-6 Dx as unsupported device (Alaa Hleihel) [1691236 1687434] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1691236 1687434] - [infiniband] IB/mlx5: Fix mapping of link-mode to IB width and speed (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: ethtool, Add ethtool support for 50Gbps per lane link modes (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Add support for 50Gbps per lane link modes (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5: Add support to ext_* fields introduced in Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [include] net/mlx5: Add new fields to Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5: Refactor queries to speed fields in Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5e: Set peer flow needed also for multipath (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Update check for merged eswitch device (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Use hint to resolve route when in HW multipath mode (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Always query offloaded tc peer rule counter (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Re-attempt to offload flows on multipath port affinity events (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Emit port affinity event for multipath offloads (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Allow one failure when offloading tc encap rules under multipath (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Don't inherit flow flags on peer flow creation (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Activate HW multipath and handle port affinity based on FIB events (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Add multipath mode (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Use own workqueue for lag netdev events processing (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Expose lag operations in header file (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Use unsigned int bit instead of bool as a struct member (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Don't make internal use of errno to denote missing neigh (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Cleanup attach encap function (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Remove 'parse_attr' argument in mlx5e_tc_add_fdb_flow() (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Introduce mlx5e_flow_esw_attr_init() helper (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Return the allocated flow directly from __mlx5e_add_fdb_flow (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix GRE key by controlling port tunnel entropy calculation (Alaa Hleihel) [1691236 1663240] - [include] net/mlx5: Introduce tunnel entropy control in PCMR register (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Use read-modify-write when changing PCMR register values (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Remove wrong and superfluous tc pedit header type check (Alaa Hleihel) [1691236] - [netdrv] drivers: net: use flow action infrastructure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: support for two independent packet edit actions (Alaa Hleihel) [1691236] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, fix redirect resources availability check (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix a compilation warning in events.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: No command allowed when command interface is not ready (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix NULL pointer derefernce in set channels error flow (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Don't overwrite pedit action when multiple pedit used (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Update hw flows when encap source mac changed (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use the inner headers to determine tc/pedit offload limitation on decap flows (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Properly set steering match levels for offloaded TC decap rules (Alaa Hleihel) [1691236 1663207] - [netdrv] net/mlx5e: Unblock setting vid 0 for VFs through the uplink rep (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move to use common phys port names for vport representors (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Allow MAC invalidation while spoofchk is ON (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Take lock with IRQs disabled to avoid deadlock (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong private flag usage causing checksum disable (Alaa Hleihel) [1691236] - [netdrv] Revert "net/mlx5e: E-Switch, Initialize eswitch only if eswitch manager" (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Fix flow creation on representors (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix how advise_mr() launches async work (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Fix check for supported user flags when creating a QP (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix cb_ident duplicate in indirect block register (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong (zero) TX drop counter indication for representor (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong error code return on FEC query failure (Alaa Hleihel) [1691236] - [infiniband] Revert "IB/mlx5: Fix long EEH recover time with NVMe offloads" (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow XRC INI usage via verbs in DEVX context (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: drop useless LIST_HEAD (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: fix semicolon.cocci warnings (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Signedness bug in UVERBS_HANDLER() (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allocate the per-port Q counter shared when DEVX is supported (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Add user control for XDP TX MPWQE feature (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Support Enhanced Multi-Packet TX WQE (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Add array for WQE info descriptors (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Maintain a FIFO structure for xdp_info instances (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Replace boolean doorbell indication with segment pointer (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Warn upon polling an error CQE (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Change the XDP SQ redirect indication (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Precede XDP-related operations in RQ poll by a loaded program check (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: TX, Print opcode in error CQE warning (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix wrong error unwind (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix long EEH recover time with NVMe offloads (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Simplify netdev unbinding (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use the correct commands for UMEM and UCTX allocation (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use uid as part of alloc/dealloc transport domain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix LAG requirement when CONFIG_MLX5_ESWITCH is off (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix query_nic_sys_image_guid() error during init (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Support tunnel encap over tagged Ethernet (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Support VLAN encap ETH header generation (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Re-order route and encap header memory allocation (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Tunnel encap ETH header helper function (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Fail attempt to offload e-switch TC encap flows with vlan on underlay (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Tunnel routing output devs helper function (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Fail attempt to offload e-switch TC flows with egress upper devices (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Allow vlans on e-switch uplink reps (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Increase VF representors' SQ size to 128 (Alaa Hleihel) [1691236] - [netdrv] mlx5: extend PTP gettime function to read system clock (Alaa Hleihel) [1691236] - [netdrv] mlx5: update timecounter at least twice per counter overflow (Alaa Hleihel) [1691236] - [include] IB/mlx5: Introduce uid as part of alloc/dealloc transport domain (Alaa Hleihel) [1691236] - [netdrv] drivers: net: ethernet: mellanox: use skb_sec_path helper (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix compile issue when ODP disabled (Alaa Hleihel) [1691236] - [include] net/mlx5: Add shared Q counter bits (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add advise_mr() support (Alaa Hleihel) [1691236 1663248] - [infiniband] IB/uverbs: Add helper to get array size from ptr attribute (Alaa Hleihel) [1691236 1663248] - [infiniband] RDMA/mlx5: Fix function name typo 'fileds' -> 'fields' (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Delete unreachable handle_atomic code by simplifying SW completion (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Continue driver initialization despite debugfs failure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Add some ethtool port control entries to the uplink rep netdev (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Expose ethtool pause and link functions to mlx5e callers (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Add sriov and udp tunnel ndo support for the uplink rep (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Handle port mtu/link, dcb and lag for uplink reps (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Uninstantiate esw manager vport netdev on switchdev mode (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Remove leftover code from the PF netdev being uplink rep (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Use dedicated uplink vport netdev representor (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Use single argument for the esw representor build params helper (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5: E-Switch, Remove redundant reloading of the IB interface (Alaa Hleihel) [1691236 1663256 1663207] - [netdrv] net/mlx5: Handle LAG FW commands failure gracefully (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Make RoCE and SR-IOV LAG modes explicit (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Rename mlx5_lag_is_bonded() to __mlx5_lag_is_active() (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Allow co-enablement of uplink LAG and SRIOV (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Allow/disallow LAG according to pre-req only (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Adjustments for the activate LAG logic to run under sriov (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Duplicate offloaded TC eswitch rules under uplink LAG (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Offload TC e-switch rules with egress LAG device (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: In case of LAG, one switch parent id is used for all representors (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Enhance flow counter scheme for offloaded TC eswitch rules (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Infrastructure for duplicated offloading of TC flows (Alaa Hleihel) [1691236 1663230 1663207] - [netdrv] net/mlx5e: E-Switch, Add peer miss rules (Alaa Hleihel) [1691236 1663230 1663207] - [netdrv] net/mlx5: Introduce inter-device communication mechanism (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Fold the modify lag code into function (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Add lag affinity info to log (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Split the activate lag function into two routines (Alaa Hleihel) [1691236 1663230] - [include] net/mlx5: E-Switch, Introduce flow counter affinity (Alaa Hleihel) [1691236 1663230] - [infiniband] IB/mlx5: Unify e-switch representors load approach between uplink and VFs (Alaa Hleihel) [1691236] - [include] net/mlx5: Use lowercase 'X' for hex values (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove set but not used variable 'upriv' (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove duplicated include from eswitch.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use monitor counters for update stats (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Monitor counters commands support (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Avoid query PPCNT register if not supported by the device (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use CQE padding for Ethernet CQs (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Support multiple encapsulations for a TC flow (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Allow association of a flow to multiple encaps (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Change parse attr struct to accommodate multiple tunnel infos (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Support header rewrite actions with remote port mirroring (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Replace the split logic with extended destination (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Annul encap action ordering requirement (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Move flow attr reformat action bit to per dest flags (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Refactor eswitch flow attr for destination specific properties (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5: E-Switch, Rename esw attr mirror count field (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5: Consider encapsulation properties when comparing destinations (Alaa Hleihel) [1691236 1663239] - [infiniband] RDMA/mlx5: Fail early if user tries to create flows on IB representors (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Remove duplicated include from mlx5_ib.h (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add 2X width support to query_port (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Add HDR speed support to query port (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Report CapabilityMask2 in ib_query_port (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5e: Add GRE protocol offloading (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Move TC tunnel offloading code to separate source file (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Branch according to classified tunnel type (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Refactor VXLAN tunnel decap offloading code (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Refactor VXLAN tunnel encap offloading code (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Replace egdev with indirect block notifications (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Propagate the filter's net device to mlx5e structures (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Provide the TC filter netdev as parameter to flower callbacks (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Support TC indirect block notifications for eswitch uplink reprs (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Store eswitch uplink representor state on a dedicated struct (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Remove the get protocol device interface entry (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Support extended destination format in flow steering command (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5: E-Switch, Change vhca id valid bool field to bit flag (Alaa Hleihel) [1691236 1663239 1663207] - [include] net/mlx5: Introduce extended destination fields (Alaa Hleihel) [1691236 1663239] - [infiniband] net/mlx5: Revise gre and nvgre key formats (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Add monitor commands layout and event data (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Add support for plugged-disabled cable status in PME (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Add support for PCIe power slot exceeded error in PME (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Rework handling of port module events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Move flow counters data structures from flow steering header (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use helper to get CQE opcode (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Use helper to get CQE opcode (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: When fetching CQEs return CQE instead of void pointer (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Report packet based credit mode device capability (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add packet based credit mode support (Alaa Hleihel) [1691236] - [include] net/mlx5: Expose packet based credit mode (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enable TX on a DEVX flow table (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Improve ethtool private-flags code structure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: ethtool, Support user configuration for RX hash fields (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move RSS params to a dedicated struct (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Refactor TIR configuration function (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move modify tirs hash functionality (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Cleanup unused defines (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove trailing space of tx_pause ethtool counter name (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow XRC usage via verbs in DEVX context (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Update the supported DEVX commands (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enforce DEVX privilege by firmware (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enable modify and query verbs objects via DEVX (Alaa Hleihel) [1691236] - [include] net/mlx5: Update mlx5_ifc with DEVX UCTX capabilities bits (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Unfold modify RMP function (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Unfold create RMP function (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Initialize SRQ tables on mlx5_ib (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Update SRQ functions signatures to mlx5_ib format (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Use stages for callback to setup and release DEVX (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Remove SRQ signature global flag (Alaa Hleihel) [1691236] - [infiniband] net/mlx5: Move SRQ functions to RDMA part (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove references to local mlx5_core functions (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove not-used lib/eq.h header file (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove dead transobj code (Alaa Hleihel) [1691236] - [infiniband] net/mlx5: Align SRQ licenses and copyright information (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Debug print for forwarded async events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward SRQ resource events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward QP/WorkQueues resource events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove all deprecated software versions of FW events (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Handle raw delay drop general event (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Allow forwarding event type general event as is (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Handle raw port change event rather than the software version (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove unused events callback and logic (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use the new mlx5 core notifier API (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward all mlx5 events to mlx5 notifiers chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use the new mlx5 core notifier API (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Allow port change event to be forwarded to driver notifiers chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Driver events notifier API (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use fragmented QP's buffer for in-kernel users (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use fragmented SRQ's buffer for in-kernel users (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Attach a DEVX counter via raw flow creation (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Improve core device events handling (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Device events, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: CQ ERR, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Resource tables, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: CmdIF, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FWPage, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: E-Switch, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Clock, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FPGA, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FWTrace, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Introduce atomic notifier chain subscription API (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Use the uapi disablement APIs instead of code (Alaa Hleihel) [1691236] - [infiniband] RDMA/uverbs: Use a linear list to describe the compiled-in uapi (Alaa Hleihel) [1691236] - [netdrv] mlx5: use skb_vlan_tag_get_prio() (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow modify AV in DCI QP to RTR (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Make EQE access methods inline (Alaa Hleihel) [1691236] - [netdrv] {net, IB}/mlx5: Move Page fault EQ and ODP logic to RDMA (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Generic EQ (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Different EQ types (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Privatize eq_table and friends (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, irq_info and rmap belong to eq_table (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Create all EQs in one place (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Move all EQ logic to eq.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Remove redundant completion EQ list lock (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, No need to store eq index as a field (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Remove unused fields and structures (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Use the right place to store/read IRQ affinity hint (Alaa Hleihel) [1691236] - [include] net/mlx5: Fix offsets of ifc reserved fields (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove the false indication of software timestamping support (Alaa Hleihel) [1691234 1647734] - [netdrv] net/mlx5: Typo fix in del_sw_hw_rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: RX, Fix wrong early return in receive queue poll (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Cancel DIM work on close SQ (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Remove unused UDP GSO remaining counter (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid encap flows deletion attempt the 1st time a neigh is resolved (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Properly initialize flow attributes for slow path eswitch rule deletion (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid overriding the user provided priority for offloaded tc rules (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Err if asked to mirror a goto chain tc eswitch rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix default amount of channels for VF representors (Alaa Hleihel) [1691234] - [include] net/mlx5: E-Switch, Fix fdb cap bits swap (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Block DEVX umem from the non applicable cases (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Fix XRC QP support after introducing extended atomic (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix failing ethtool query on FEC query error (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix wrong field name in FEC related functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix a bug in turning off FEC policy in unsupported speeds (Alaa Hleihel) [1691234] - [include] net/mlx5: Fix XRC SRQ umem valid bits (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Allocate enough space for the FDB sub-namespaces (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Added 'raw_errors_laneX' fields to ethtool statistics (Alaa Hleihel) [1691234] - [include] net/mlx5: Added "per_lane_error_counters" cap bit to PCAM (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Ethtool driver callback for query/set FEC policy (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add port FEC get/set functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add FEC fields to Port Phy Link Mode (PPLM) reg (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Remove counter from idr after removing it from list (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Take fs_counters dellist before addlist (Alaa Hleihel) [1691234] - [infiniband] net/mlx5: Refactor fragmented buffer struct fields and init flow (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Support offloading tc priorities and chains for eswitch flows (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Use a slow path rule instead if vxlan neighbour isn't available (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Enable setting goto slow path chain action (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid duplicated code for tc offloads add/del fdb rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: For TC offloads, always add new flow instead of appending the actions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add a no-append flow insertion mode (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Add chains and priorities (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Have explicit API to delete fwd rules (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Split FDB fast path prio to multiple namespaces (Alaa Hleihel) [1691234] - [include] net/mlx5: Add cap bits for multi fdb encap (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Split TC add rule path for nic vs e-switch (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Change return type of tc add flow functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Use flow counter IDs and not the wrapping cache object (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Get counters for offloaded flows from callers (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Add support for extended atomic operations (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Allow scatter to CQE without global signaled WRs (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Verify that driver supports user flags (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Support scatter to CQE for DC transport type (Alaa Hleihel) [1691234] - [include] net/mlx5: Expose DC scatter to CQE capability bit (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Add support for flow tag to raw create flow (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Verify DEVX object type (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add new counter for aRFS rule insertion failures (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add extack messages for TC offload failures (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: E-Switch, Add extack messages to devlink callbacks (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Allow reporting of checksum unnecessary (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable reporting checksum unnecessary also for L3 packets (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add ethtool control of ring params to VF representors (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable multi-queue and RSS for VF representors (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Expose ethtool rss key size / indirection table functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Expose function for building RSS params (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Provide explicit directive if to create inner indirect tirs (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Provide flow dest when creating vport rx rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Extract creation of rep's default flow rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable stateless offloads for VF representor netdevs (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Change VF representors' RQ type (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Ethtool steering, Support masks for l3/l4 filters (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Enable DEVX on IB (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Enable DEVX white list commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Manage device uid for DEVX white list commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Expose RAW QP device handles to user space (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set valid umem bit on DEVX (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TD commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of XRCD commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of CQ creation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid upon PD allocation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of RQT commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TIS commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TIR commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of MCG commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of DCT commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of SRQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of SQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of RQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of QP creation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Use uid as part of PD commands (Alaa Hleihel) [1691234] - [include] net/mlx5: Update mlx5_ifc with DEVX UID bits (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of DCT commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of SRQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of SQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of RQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of QP commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of CQ commands (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Enable vport loopback when user context or QP mandate (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Allow creating RAW ethernet QP with loopback support (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Refactor transport domain bookkeeping logic (Alaa Hleihel) [1691234] - [infiniband] net/mlx5: Rename incorrect naming in IFC file (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Use rdma_user_mmap_io (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Allow creating a matcher for a NIC TX flow table (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add NIC TX namespace when getting a flow table (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add flow actions support to raw create flow (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Refactor raw flow creation (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Don't overwrite action if already set (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Refactor flow action parsing to be more generic (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching packet reformat action to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable reformat on NIC RX if supported (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching DECAP action to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable decap and packet reformat on flow tables (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching modify header to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add NIC TX steering support (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5e: Replace PTP clock lock from RW lock to seq lock (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Move Q counters allocation and drop RQ to init_rx (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add flow counters idr (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Store flow counters in a list (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add new list to store deleted flow counters (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Change flow counters addlist type to single linked list (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Extend packet reformat verbs (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add new flow action verb - packet reformat (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/uverbs: Add generic function to fill in flow action object (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add a new flow action verb - modify header (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Export packet reformat alloc/dealloc functions (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Pass a namespace for packet reformat ID allocation (Alaa Hleihel) [1691234 1663215] - [include] net/mlx5: Expose new packet reformat capabilities (Alaa Hleihel) [1691234 1663215] - [netdrv] {net, RDMA}/mlx5: Rename encap to reformat packet (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Move header encap type to IFC header file (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Break encap/decap into two separated flow table creation flags (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Add support for more namespaces when allocating modify header (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Export modify header alloc/dealloc functions (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Add proper NIC TX steering flow tables support (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Cleanup flow namespace getter switch logic (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Change TX affinity assignment in RoCE LAG mode (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add memic command opcode to command checker (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Destroy the DEVX object upon error flow (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, Read capabilities only when it is safe (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, fix udp source port value (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Improve argument name for add flow API (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, l4 proto support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, ip6 support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering flow parsing refactoring (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering flow validation refactoring (Alaa Hleihel) [1691231] - [infiniband] IB/uverbs: Use uverbs_alloc for allocations (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Unexport functions that need not be exported (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Remove unused mlx5_query_vport_admin_state (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: E-Switch, Remove unused argument when creating legacy FDB (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Rename modify/query_vport state related enums (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Mark expected switch fall-throughs (Alaa Hleihel) [1691231] - [netdrv] mellanox: fix the dport endianness in call of __inet6_lookup_established() (Alaa Hleihel) [1691231] - [netdrv] mlx5: handle DMA mapping error case for XDP redirect (Alaa Hleihel) [1691231] - [infiniband] IB/uverbs: Add UVERBS_ATTR_FLAGS_IN to the specs language (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Issue direct lookup on vxlan ports by vport representors (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TX, Use function to access sq_dma object in fifo (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TX, Move DB fields in TXQ-SQ struct (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Add support for XDP_REDIRECT in device-out side (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Re-order fields of struct mlx5e_xdpsq (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Refactor XDP counters (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Make XDP xmit functions more generic (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Add counter for XDP redirect in RX (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Enable driver uapi commands for flow steering (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Add support for a flow table destination for driver flow steering (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Support adding flow steering rule by raw description (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Introduce driver create and destroy flow methods (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Introduce flow steering matcher uapi object (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add support for flow table destination number (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add forward compatible support for the FTE match data (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Support offloading double vlan push/pop tc actions (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5e: Refactor tc vlan push/pop actions offloading (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5e: Support offloading tc double vlan headers match (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5: FW tracer, Add debug prints (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, Enable tracing (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, parse traces and kernel tracing support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, events handling (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, register log buffer memory key (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, create trace buffer and copy strings database (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, implement tracer logic (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Remove set but not used variables (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add XRQ commands definitions (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add core support for double vlan push/pop steering action (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5: Expose MPEGC (Management PCIe General Configuration) structures (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, add hardware structures (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: fix an unused-function warning (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: IPsec, fix byte count in CQE (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Accel, add common metadata functions (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, build TLS netdev from capabilities (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add software statistics (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add Innova TLS rx data path (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add innova rx support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Accel, add TLS rx offload routines (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, refactor variable names (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Check that supplied blue flame index doesn't overflow (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Melt consecutive calls to alloc_bfreg() in one call (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Use 2-factor allocator calls (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Remove unused port number parameter (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Expose dump and fill memory key (Alaa Hleihel) [1691231] - [include] net/mlx5: Add hardware definitions for dump_fill_mkey (Alaa Hleihel) [1691231] - [infiniband] net/mlx5: Limit scope of dump_fill_mkey function (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Add support for drain SQ & RQ (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Support RoCE ICRC encapsulated error counter (Alaa Hleihel) [1691231 1663195] - [include] net/mlx5: Add RoCE RX ICRC encapsulated counter (Alaa Hleihel) [1691231 1663195] - [infiniband] RDMA/mlx5: Refactor transport domain checks (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Expose DEVX tree (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX query EQN support (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX support for memory registration (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add support for DEVX query UAR (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX support for modify and query commands (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add obj create and destroy functionality (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add support for DEVX general command (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Introduce DEVX (Alaa Hleihel) [1691231 1663190] - [netdrv] net/mlx5: Expose DEVX specification (Alaa Hleihel) [1691231]- [virt] kvm: arm/arm64: Don't emulate virtual timers on userspace ioctls (Andrew Jones) [1716066] - [virt] kvm: arm/arm64: Remove unused timer variable (Andrew Jones) [1716066] - [virt] kvm: arm/arm64: Rework the timer code to use a timer_map (Andrew Jones) [1716066] - [powerpc] powernv: Fix compile without CONFIG_TRACEPOINTS (David Gibson) [1524674] - [virt] kvm: ppc: book3s: Remove useless checks in 'release' method of KVM device (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Clear escalation interrupt pointers on device close (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Prevent races when releasing device (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Replace the 'destroy' method by a 'release' method (David Gibson) [1524674] - [virt] kvm: Introduce a 'release' method for KVM devices (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Activate XIVE exploitation mode (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add passthrough support (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a mapping for the source ESB pages (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a TIMA mapping (David Gibson) [1524674] - [virt] kvm: Introduce a 'mmap' method for KVM devices (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add get/set accessors for the VP XIVE state (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to dirty the XIVE EQ pages (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to sync the sources (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a global reset control (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add controls for the EQ configuration (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to configure a source (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: add a control to initialize a source (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Introduce a new capability KVM_CAP_PPC_IRQ_XIVE (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: Add a new KVM device for the XIVE native exploitation mode (David Gibson) [1524674] - [powerpc] xive: add OPAL extensions for the XIVE native exploitation support (David Gibson) [1524674] - [powerpc] powernv: move OPAL call wrapper tracing and interrupt handling to C (David Gibson) [1524674] - [thermal] thermal/intel_powerclamp: fix truncated kthread name (Lihong Yang) [1716810] - [kernel] kernel/signal.c: trace_signal_deliver when signal_group_exit (Waiman Long) [1548279] - [kernel] signal: unconditionally leave the frozen state in ptrace_stop() (Waiman Long) [1548279] - [kernel] cgroup: never call do_group_exit() with task->frozen bit set (Waiman Long) [1548279] - [kernel] kernel: cgroup: fix misuse of x (Waiman Long) [1548279] - [kernel] cgroup: get rid of cgroup_freezer_frozen_exit() (Waiman Long) [1548279] - [kernel] cgroup: prevent spurious transition into non-frozen state (Waiman Long) [1548279] - [kernel] cgroup: Remove unused cgrp variable (Waiman Long) [1548279] - [documentation] cgroup: document cgroup v2 freezer interface (Waiman Long) [1548279] - [kernel] cgroup: add tracing points for cgroup v2 freezer (Waiman Long) [1548279] - [kernel] cgroup: make TRACE_CGROUP_PATH irq-safe (Waiman Long) [1548279] - [tools] kselftests: cgroup: don't fail on cg_kill_all() error in cg_destroy() (Waiman Long) [1548279] - [kernel] cgroup: cgroup v2 freezer (Waiman Long) [1548279] - [kernel] cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock (Waiman Long) [1548279] - [kernel] cgroup: implement __cgroup_task_count() helper (Waiman Long) [1548279] - [kernel] cgroup: rename freezer.c into legacy_freezer.c (Waiman Long) [1548279] - [kernel] cgroup: remove extra cgroup_migrate_finish() call (Waiman Long) [1548279] - [kernel] cgroup/cpuset: Update stale generate_sched_domains() comments (Waiman Long) [1548279] - [kernel] cgroup: saner refcounting for cgroup_root (Waiman Long) [1548279] - [fs] fix cgroup_do_mount() handling of failure exits (Waiman Long) [1548279] - [kernel] cgroup: Add named hierarchy disabling to cgroup_no_v1 boot param (Waiman Long) [1548279] - [kernel] cgroup: fix parsing empty mount option string (Waiman Long) [1548279] - [kernel] cgroup: fix CSS_TASK_ITER_PROCS (Waiman Long) [1548279] - [kernel] cgroup: Fix dom_cgrp propagation when enabling threaded mode (Waiman Long) [1548279] - [lib] lib: objagg: fix handling of object with 0 users when assembling hints (Ivan Vecera) [1704850] - [lib] test_objagg: Uninitialized variable in error handling (Ivan Vecera) [1704850] - [lib] test_objagg: Test the correct variable (Ivan Vecera) [1704850] - [lib] lib: objagg: Fix an error code in objagg_hints_get() (Ivan Vecera) [1704850] - [lib] lib: objagg: add root count to stats (Ivan Vecera) [1704850] - [lib] lib: objagg: implement optimization hints assembly and use hints for object creation (Ivan Vecera) [1704850] - [lib] lib: objagg: fix typo in objagg_stats_put() docstring (Ivan Vecera) [1704850] - [lib] lib: introduce initial implementation of object aggregation manager (Ivan Vecera) [1704850] - [netdrv] ibmvnic: Fix unchecked return codes of memory allocations (Steve Best) [1718919] - [netdrv] ibmvnic: Refresh device multicast list after reset (Steve Best) [1718919] - [netdrv] ibmvnic: Do not close unopened driver during reset (Steve Best) [1718919] - [target] scsi: target: tcmu: Switch to bitmap_zalloc() (Maurizio Lombardi) [1712917] - [target] scsi: target: tcmu: wait for nl reply only if there are listeners or during an add (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Simplify iscsit_handle_text_cmd() (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Simplify iscsit_dump_data_payload() (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Rename a function and a function pointer (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Fix spelling of "unsolicited" (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Convert comments about locking into runtime checks (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Remove an incorrect comment (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Add target_send_busy() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Inline transport_lun_remove_cmd() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify the LUN RESET implementation (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove several state tests from the TMF code (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove the write_pending_status() callback function (Maurizio Lombardi) [1712917] - [target] scsi: target: make the pi_prot_format ConfigFS path readable (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: fix use after free (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: avoid cmd/qfull timers updated whenever a new cmd comes (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: fix error msg typo when create lio_qr_cache failed (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use kmem_cache_free() instead of kfree() (Maurizio Lombardi) [1712917] - [target] scsi: target: perform t10_wwn ID initialisation in target_alloc_device() (Maurizio Lombardi) [1712917] - [target] scsi: target: remove hardcoded T10 Vendor ID in INQUIRY response (Maurizio Lombardi) [1712917] - [target] scsi: target: add device vendor_id configfs attribute (Maurizio Lombardi) [1712917] - [target] scsi: target: consistently null-terminate t10_wwn strings (Maurizio Lombardi) [1712917] - [target] scsi: target: use consistent left-aligned ASCII INQUIRY data (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Reduce the amount of code executed with a spinlock held (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make ABORT and LUN RESET handling synchronous (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Fix TAS handling for aborted commands (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify the code for aborting SCSI commands (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make it possible to wait from more than one context for command completion (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use system workqueues for TMF (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make sure that target_wait_for_sess_cmds() waits long enough (Maurizio Lombardi) [1712917] - [target] scsi: target: Fix target_wait_for_sess_cmds breakage with active signals (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify transport_clear_lun_ref() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use kvcalloc() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: target/tcmu: Fix queue_cmd_ring() declaration (Maurizio Lombardi) [1712917] - [target] scsi: target: replace fabric_ops.name with fabric_alias (Maurizio Lombardi) [1712917] - [target] scsi: target: drop unnecessary get_fabric_name() accessor from fabric_ops (Maurizio Lombardi) [1712917] - [target] scsi: target: drop unused pi_prot_format attribute storage (Maurizio Lombardi) [1712917] - [target] scsi: target: add emulate_pr backstore attr to toggle PR support (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Avoid that a kernel oops is triggered when COMPARE AND WRITE fails (Maurizio Lombardi) [1712917] - [target] scsi: target: Don't request modules that aren't even built (Maurizio Lombardi) [1712917] - [target] scsi: target: Set response length for REPORT TARGET PORT GROUPS (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Always call transport_complete_callback() upon failure (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use sg_alloc_table() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use the SECTOR_SHIFT constant (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove the SCF_COMPARE_AND_WRITE_POST flag (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove an unused data member from struct xcopy_pt_cmd (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Fix spelling in two source code comments (Maurizio Lombardi) [1712917] - [target] scsi: target: stash sess_err_stats on Data-Out timeout (Maurizio Lombardi) [1712917] - [target] scsi: target: split out helper for cxn timeout error stashing (Maurizio Lombardi) [1712917] - [target] scsi: target: log NOP ping timeouts as errors (Maurizio Lombardi) [1712917] - [target] scsi: target: log Data-Out timeouts as errors (Maurizio Lombardi) [1712917] - [include] scsi: target: use ISCSI_IQN_LEN in iscsi_target_stat (Maurizio Lombardi) [1712917] - [target] scsi: target: iblock: split T10 PI SGL across command bios (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: fix spelling mistake "entires" -> "entries" (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: Fix conn_ops double free (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: Set conn->sess to NULL when iscsi_login_set_conn_values fails (Maurizio Lombardi) [1712917] - [target] scsi: target: loop, usb, vhost, xen: use target_remove_session (Maurizio Lombardi) [1712917] - [target] scsi: tcm_fc: use target_remove_session (Maurizio Lombardi) [1712917] - [target] scsi: target: make transport_init_session_tags static (Maurizio Lombardi) [1712917] - [target] scsi: iscsi target: have iscsit_start_nopin_timer call __iscsit_start_nopin_timer (Maurizio Lombardi) [1712917] - [target] scsi: target: fix __transport_register_session locking (Maurizio Lombardi) [1712917] - [target] Revert "scsi: target/iscsi: Reduce number of __iscsit_free_cmd() callers" (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use u64 for dev_size (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use match_int for dev params (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: do not set max_blocks if data_bitmap has been setup (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: unmap if dev is configured (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: check if dev is configured before block/reset (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use lio core se_device configuration helper (Maurizio Lombardi) [1712917] - [target] scsi: target: add helper to check if dev is configured (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: initialize list head (Maurizio Lombardi) [1712917] - [target] scsi: target_core_user: fix double unlock (Maurizio Lombardi) [1712917] - [target] scsi: target: Remove se_dev_entry.ua_count (Maurizio Lombardi) [1712917] - [target] scsi: target: Fix handling of removed LUNs (Maurizio Lombardi) [1712917] - [target] scsi: target: Send unit attention condition even if the sense buffer is too small (Maurizio Lombardi) [1712917] - [target] scsi: target: Do not duplicate the code that marks that a command has sense data (Maurizio Lombardi) [1712917] - [target] scsi: target/tcm_loop: Avoid that static checkers warn about dead code (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Reduce number of __iscsit_free_cmd() callers (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify the code for waiting for command completion (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify transport_generic_free_cmd() (2/2) (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify transport_generic_free_cmd() (1/2) (Maurizio Lombardi) [1712917] - [target] scsi: target: Fold core_tmr_handle_tas_abort() into transport_cmd_finish_abort() (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify core_tmr_handle_tas_abort() (Maurizio Lombardi) [1712917] - [target] scsi: target: Document when CMD_T_STOP and CMD_T_COMPLETE are set (Maurizio Lombardi) [1712917] - [target] scsi: target: Make the session shutdown code also wait for commands that are being aborted (Maurizio Lombardi) [1712917] - [target] scsi: target: Introduce transport_init_session() (Maurizio Lombardi) [1712917] - [target] scsi: target: Rename transport_init_session() into transport_alloc_session() (Maurizio Lombardi) [1712917] - [target] scsi: target: Move a list_del_init() statement (Maurizio Lombardi) [1712917] - [target] scsi: target: Avoid that EXTENDED COPY commands trigger lock inversion (Maurizio Lombardi) [1712917] - [target] scsi: target: Use config_item_name() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: Don't pass KERN_ERR to pr_err (Maurizio Lombardi) [1712917] - [target] scsi: target: remove target_find_device (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: add module wide block/reset_netlink support (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: misc nl code cleanup (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: simplify nl interface (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: track nl commands (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: delete unused __wait (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: remove useless code and clean up the code style (Maurizio Lombardi) [1712917]- [ipc] ipc: do cyclic id allocation for the ipc object. (Waiman Long) [1710480] - [ipc] ipc: conserve sequence numbers in ipcmni_extend mode (Waiman Long) [1710480] - [ipc] ipc: allow boot time extension of IPCMNI from 32k to 16M (Waiman Long) [1710480] - [ipc] ipc/mqueue: optimize msg_get() (Waiman Long) [1710480] - [ipc] ipc/mqueue: remove redundant wq task assignment (Waiman Long) [1710480] - [ipc] ipc: prevent lockup on alloc_msg and free_msg (Waiman Long) [1710480] - [ipc] ipc: IPCMNI limit check for semmni (Waiman Long) [1710480] - [ipc] ipc: IPCMNI limit check for msgmni and shmmni (Waiman Long) [1710480] - [ipc] ipc/shm.c: use ERR_CAST() for shm_lock() error return (Waiman Long) [1710480] - [ipc] ipc/shm: properly return EIDRM in shm_lock() (Waiman Long) [1710480] - [ipc] ipc/util.c: update return value of ipc_getref from int to bool (Waiman Long) [1710480] - [ipc] ipc/util.c: further variable name cleanups (Waiman Long) [1710480] - [ipc] ipc: simplify ipc initialization (Waiman Long) [1710480] - [ipc] ipc: get rid of ids->tables_initialized hack (Waiman Long) [1710480] - [lib] lib/rhashtable: guarantee initial hashtable allocation (Waiman Long) [1710480] - [lib] lib/rhashtable: simplify bucket_table_alloc() (Waiman Long) [1710480] - [ipc] ipc: drop ipc_lock() (Waiman Long) [1710480] - [ipc] ipc/util.c: correct comment in ipc_obtain_object_check (Waiman Long) [1710480] - [ipc] ipc: rename ipcctl_pre_down_nolock() (Waiman Long) [1710480] - [ipc] ipc/util.c: use ipc_rcu_putref() for failues in ipc_addid() (Waiman Long) [1710480] - [ipc] ipc: reorganize initialization of kern_ipc_perm.seq (Waiman Long) [1710480] - [ipc] ipc: compute kern_ipc_perm.id under the ipc lock (Waiman Long) [1710480] - [x86] x86/speculation/mds: Improve CPU buffer clear documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Revert CPU buffer clear on double fault exit (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add 'mitigations=' support for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [s390] s390/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [powerpc] powerpc/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [mm] x86/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kernel] cpu/speculation: Add 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Fix documentation typo (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] Documentation: Correct the possible MDS sysfs values (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/mds: Add MDSUM variant to the MDS documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Fix comment (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add SMT warning message (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Move arch_smt_update() call to after mitigation decisions (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Add mds=full,nosmt cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] Documentation: Add MDS vulnerability documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] documentation: Move L1TF to separate directory (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add mitigation mode VMWERV (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [base] x86/speculation/mds: Add sysfs reporting for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add mitigation control for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Conditionally clear CPU buffers on idle entry (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kvm] x86/kvm/vmx: Add MDS protection when L1D Flush is not active (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Clear CPU buffers on exit to user (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Add mds_clear_cpu_buffers() (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kvm] x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add BUG_MSBDS_ONLY (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add basic bug infrastructure for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Consolidate CPU whitelists (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [tools] x86/msr-index: Cleanup bit defines (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/l1tf: Drop the swap storage limit restriction when l1tf=off (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Cast ~SPEC_CTRL_STIBP atomic value to int (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [tools] tools power x86_energy_perf_policy: Override CFLAGS assignments and add LDFLAGS to build command (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [scsi] scsi: qla2xxx: Fix read offset in qla24xx_load_risc_flash() (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Simplify conditional check again (Himanshu Madhani) [1665555] - [scsi] qla2xxx: Update driver version to 10.01.00.15.08.1-k (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Secure flash update support for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add 28xx flash primary/secondary status/image mechanism (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Simplification of register address used in qla_tmpl.c (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Correction and improvement to fwdt processing (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Update flash read/write routine (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add support for multiple fwdump templates/segments (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Cleanups for NVRAM/Flash read/write path (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Correctly report max/min supported speeds (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add Serdes support for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add Device ID for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Fix routine qla27xx_dump_{mpi|ram}() (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Remove FW default template (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add fw_attr and port_no SysFS node (Himanshu Madhani) [1665555] - [netdrv] e1000e: Disable runtime PM on CNP+ (David Arcari) [1659179] - [netdrv] intel: correct return from set features callback (David Arcari) [1659179] - [netdrv] e1000e: Fix -Wformat-truncation warnings (David Arcari) [1659179] - [netdrv] e1000e: fix cyclic resets at link up with active tx (David Arcari) [1659179] - [netdrv] e1000e: fix a missing check for return value (David Arcari) [1659179] - [netdrv] e1000e: Exclude device from suspend direct complete optimization (David Arcari) [1659179] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (David Arcari) [1659179] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (David Arcari) [1659179] - [netdrv] e1000e: extend PTP gettime function to read system clock (David Arcari) [1659179] - [netdrv] e1000e: allow non-monotonic SYSTIM readings (David Arcari) [1659179] - [netdrv] intel-ethernet: use correct module license (David Arcari) [1659179] - [kernel] sched/cpufreq: Fix kobject memleak (Phil Auld) [1714719] - [kernel] sched/core: Check quota and period overflow at usec to nsec conversion (Phil Auld) [1714719] - [kernel] sched/core: Handle overflow in cpu_shares_write_u64 (Phil Auld) [1714719] - [kernel] sched/rt: Check integer overflow at usec to nsec conversion (Phil Auld) [1714719] - [base] arch_topology: Make cpu_capacity sysfs node as read-only (Phil Auld) [1714719] - [x86] sched/x86: Save [ER]FLAGS on context switch (Phil Auld) [1714719] - [kernel] sched/fair: Remove setting task's se->runnable_weight during PELT update (Phil Auld) [1714719] - [kernel] sched/fair: Disable LB_BIAS by default (Phil Auld) [1714719] - [arm64] sched/topology, arch/arm64: Rebuild the sched_domain hierarchy when the CPU capacity changes (Phil Auld) [1714719] - [base] sched/topology, drivers/base/arch_topology: Rebuild the sched_domain hierarchy when capacities change (Phil Auld) [1714719] - [kernel] sched/topology: Add SD_ASYM_CPUCAPACITY flag detection (Phil Auld) [1714719] - [kernel] sched/fair: Fix load_balance redo for !imbalance (Phil Auld) [1714719] - [tools] cpupower : frequency-set -r option misses the last cpu in related cpu list (Steve Best) [1717841] - [kernel] Uprobes: Fix kernel oops with delayed_uprobe_remove() (Gustavo Duarte) [1608798] - [kernel] trace_uprobe/sdt: Prevent multiple reference counter for same uprobe (Gustavo Duarte) [1608798] - [kernel] uprobes/sdt: Prevent multiple reference counter for same uprobe (Gustavo Duarte) [1608798] - [kernel] uprobes: Support SDT markers having reference count (semaphore) (Gustavo Duarte) [1608798] - [kernel] Uprobe: Additional argument arch_uprobe to uprobe_write_opcode() (Gustavo Duarte) [1608798] - [kernel] Uprobes: Simplify uprobe_register() body (Gustavo Duarte) [1608798] - [pci] PCI: Rework pcie_retrain_link() wait loop (Myron Stowe) [1707902] - [pci] PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum (Myron Stowe) [1707902] - [pci] PCI: Factor out pcie_retrain_link() function (Myron Stowe) [1707902] - [tools] selftests/powerpc: Fix strncpy usage (Diego Domingos) [1662372] - [tools] selftests: Fix test errors related to lib.mk khdr target (Diego Domingos) [1662372] - [nvme] nvme-fc: use separate work queue to avoid warning (Ewan Milne) [1715135] - [scsi] scsi: scsi_transport_fc: nvme: display FC-NVMe port roles (Ewan Milne) [1715135] - [nvme] nvme-fc: correct csn initialization and increments on error (Ewan Milne) [1715135] - [nvme] nvme-multipath: avoid crash on invalid subsystem cntlid enumeration (Ewan Milne) [1715135] - [nvme] nvme-multipath: don't print ANA group state by default (Ewan Milne) [1715135] - [nvme] nvme-multipath: split bios with the ns_head bio_set before submitting (Ewan Milne) [1715135] - [nvme] nvme-multipath: relax ANA state check (Ewan Milne) [1715135] - [drm] drm/i915: Bump gen7+ fb size limits to 16kx16k (Lyude Paul) [1664969] - [drm] drm/i915: Bump fb stride limit to 128KiB for gen4+ and 256KiB for gen7+ (Lyude Paul) [1664969] - [drm] drm/i915: Align dumb buffer stride to 4k to allow for gtt remapping (Lyude Paul) [1664969] - [drm] drm/i915: Overcome display engine stride limits via GTT remapping (Lyude Paul) [1664969] - [drm] drm/i915: Shuffle stride checking code around (Lyude Paul) [1664969] - [drm] drm/i915/selftests: Add live vma selftest (Lyude Paul) [1664969] - [drm] drm/i915/selftests: Add mock selftest for remapped vmas (Lyude Paul) [1664969] - [drm] drm/i915: Add a new "remapped" gtt_view (Lyude Paul) [1664969] - [md] dax: Arrange for dax_supported check to span multiple devices (Jeff Moyer) [1665364] - [mm] mm/memory_hotplug.c: drop memory device reference after find_memory_block() (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Retain security state after overwrite (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/pmem: fix a possible OOB access when read and write pmem (Jeff Moyer) [1665367 1665364 1665362] - [acpi] libnvdimm/security, acpi/nfit: unify zero-key for all security commands (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/security: provide fix for secure-erase to use zero-key (Jeff Moyer) [1665367 1665364 1665362 1584976] - [mm] mm/memory.c: fix modifying of page protection by insert_pfn() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Fix a kmemdup failure check (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/namespace: Fix a potential NULL pointer dereference (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Always dump _DSM output payload (Jeff Moyer) [1665367 1665364 1665362] - [fs] fs/dax: Deposit pagetable even when installing zero page (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/namespace: Clean up holder_class_store() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/of_pmem: Fix platform_no_drv_owner.cocci warnings (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Update NFIT flags error message (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Fix LBA masking during 'free list' population (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Remove unnecessary code in btt_freelist_init (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pfn: Remove dax_label_reserve (Jeff Moyer) [1665367 1665364 1665362] - [drivers] dax: Check the end of the block-device capacity with dax_direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Avoid stale ARS results (Jeff Moyer) [1697175 1665367 1665364 1665362] - [acpi] nfit/ars: Allow root to busy-poll the ARS state machine (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Introduce scrub_flags (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Remove ars_start_flags (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Attempt short-ARS even in the no_init_ars case (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot (Jeff Moyer) [1697194 1665367 1665364 1665362] - [fs] fs/dax: NIT fix comment regarding start/end vs range (Jeff Moyer) [1665367 1665364 1665362] - [fs] fs/dax: Convert to use vmf_error() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Require opt-in for read-only label configurations (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pmem: Honor force_raw for legacy pmem regions (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pfn: Account for PAGE_SIZE > info-block-size in nd_pfn_init() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: Fix altmap reservation size calculation (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pfn: Fix over-trim in trim_pfn_device() (Jeff Moyer) [1665367 1665364 1665362 1662227] - [nvdimm] libnvdimm/dimm: Add a no-BLK quirk based on NVDIMM family (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: Add Hyper-V NVDIMM DSM command set to white list (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: acpi_nfit_ctl(): Check out_obj->type in the right place (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: Fix nfit_intel_shutdown_status() command submission (Jeff Moyer) [1665367 1665364 1665362 1662217] - [nvdimm] libnvdimm/security: Require nvdimm_security_setup_events() to succeed (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] nfit_test: fix security state pull for nvdimm security nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/security: Fix nvdimm_security_state() state request selection (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/label: Clear 'updating' flag after label-set update (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Remove duplicate set nd_set in acpi_nfit_init_interleave_set() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Fix race accessing memdev in nfit_get_smbios_id() (Jeff Moyer) [1665367 1665364 1665362] - [include] libnvdimm/dimm: Fix security capability detection for non-Intel NVDIMMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] nfit: Mark some functions as __maybe_unused (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] ACPI/nfit: delete the function to_acpi_nfit_desc (Jeff Moyer) [1665367 1665364 1665362] - [acpi] ACPI/nfit: delete the redundant header file (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: add MEMORY_DEVICE_PRIVATE support (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] mm, devm_memremap_pages: fix shutdown handling (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: kill mapping "System RAM" support (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: mark devm_memremap_pages() EXPORT_SYMBOL_GPL (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/security: Quiet security operations (Jeff Moyer) [1665367 1665364 1665362 1584976] - [documentation] libnvdimm/security: Add documentation for nvdimm security support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: add Intel DSM 1.8 support for nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: Add overwrite support for nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: Add test support for Intel nvdimm security DSMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm/security: add Intel DSM 1.8 master passphrase support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm/security: Add security DSM overwrite support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add support for issue secure erase DSM to Intel nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add enable/update passphrase support for Intel nvdimms (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add disable passphrase support to Intel nvdimm. (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add unlock of nvdimm support for Intel DIMMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add freeze security support to Intel nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] acpi/nfit, libnvdimm: Introduce nvdimm_security_ops (Jeff Moyer) [1665367 1665364 1665362 1584976] - [security] keys-encrypted: add nvdimm key format type to encrypted keys (Jeff Moyer) [1665367 1665364 1665362 1584976] - [security] keys: Export lookup_user_key to external users (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] acpi/nfit, libnvdimm: Store dimm id as a member to struct nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm, namespace: Replace kmemdup() with kstrndup() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, label: Switch to bitmap_zalloc() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] ACPI/nfit: Adjust annotation for why return 0 if fail to find NFIT at start (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, bus: Check id immediately following ida_simple_get (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Fix user-initiated ARS to be "ARS-long" rather than "ARS-short" (Jeff Moyer) [1665367 1665364 1665362 1662224 1641487] - [nvdimm] libnvdimm, pfn: Pad pfn namespaces relative to other regions (Jeff Moyer) [1665367 1665364 1665362 1662227] - [tools] tools/testing/nvdimm: Align test resources to 128M (Jeff Moyer) [1665367 1665364 1665362 1662227] - [acpi] acpi/nfit: Add support for Intel DSM 1.8 commands (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] Revert "acpi, nfit: Further restrict userspace ARS start requests" (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Fix ARS overflow continuation (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Fix the array size for dimm devices. (Jeff Moyer) [1665367 1665364 1665362 1658918] - [mm] mm: Fix warning in insert_pfn() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Further restrict userspace ARS start requests (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Fix Address Range Scrub completion tracking (Jeff Moyer) [1665367 1665364 1665362 1662224 1641487] - [tools] tools/testing/nvdimm: Populate dirty shutdown data (Jeff Moyer) [1665367 1665364 1665362 1662217] - [acpi] acpi, nfit: Collect shutdown status (Jeff Moyer) [1665367 1665364 1665362 1662217] - [acpi] acpi, nfit: Introduce nfit_mem flags (Jeff Moyer) [1665367 1665364 1665362 1662217] - [nvdimm] libnvdimm, label: Fix sparse warning (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, namespace: Drop the repeat assignment for variable dev->parent (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, region: Fail badblocks listing for inactive regions (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pfn: during init, clear errors in the metadata area (Jeff Moyer) [1665367 1665364 1665362 1641565] - [nvdimm] libnvdimm: Set device node in nd_device_register (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: Hold reference on parent while scheduling async init (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: remove duplicate include (Jeff Moyer) [1665367 1665364 1665362] - [fs] filesystem-dax: Fix use of zero page (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pmem: Restore page attributes when clearing errors (Jeff Moyer) [1665367 1665364 1665362] - [drivers] device-dax: avoid hang on error before devm_memremap_pages() (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: improve emulation of smart injection (Jeff Moyer) [1685043 1665367 1665364 1665362] - [fs] filesystem-dax: Do not request kaddr and pfn when not required (Jeff Moyer) [1665367 1665364 1665362] - [drivers] dax/super: Do not request a pointer kaddr when not required (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pmem: kaddr and pfn can be NULL to ->direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: queue issuing of ars when an uc error notification comes in (Jeff Moyer) [1665367 1665364 1665362 1641487] - [kernel] mm, dev_pagemap: Do not clear ->mapping on final put (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Fix support for emulating controller temperature (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Make DSM failure code injection an override (Jeff Moyer) [1665367 1665364 1665362 1658918] - [acpi] acpi, nfit: Prefer _DSM over _LSR for namespace label reads (Jeff Moyer) [1665367 1665364 1665362 1658918] - [nvdimm] libnvdimm: Introduce locked DIMM capacity support (Jeff Moyer) [1665367 1665364 1665362 1658918] - [drm] drm/nouveau: fix duplication of nv50_head_atom struct (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/disp/dp: respect sink limits when selecting failsafe link configuration (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/core: initial support for boards with TU117 chipset (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/core: allow detected chipset to be overridden (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/gf119-gp10x: push HeadSetControlOutputResource() mthd when encoders change (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/nv50-: fix bug preventing non-vsync'd page flips (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/gv100-: fix spurious window immediate interlocks (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/nouveau: forward error generated while resuming objects tree (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/i2c: Disable i2c bus access after ->fini() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add WaDisableBankHangMode (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/fbc: disable framebuffer compression on GeminiLake (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix setting 10 bit deep color mode (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add missing combo PHY lane power setup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Factor out combo PHY lane power setup helper (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Corrupt DSI picture fix for GeminiLake (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix clockgating issue when using scalers (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Suppress spurious combo PHY B warning (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Disable read only ppgtt support for gen11 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use Engine1 instance for gen11 pm interrupts (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Disable video turbo mode for rp control (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable media sampler powergate (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: introduce REG_BIT() and REG_GENMASK() to define register contents (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1664615 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Apply a recommended rc6 threshold (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use dedicated rc6 enabling sequence for gen11 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Don't warn on spurious interrupts (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Handle rps interrupts without irq lock (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sure we have enough memory bandwidth on ICL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sandybridge_pcode_read() deal with the second data register (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix ONLY icl+ max plane width (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix MG_DP_MODE() register programming (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Really calculate the cursor ddb based on the highest enabled wm level (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Inline skl_update_pipe_wm() into its only caller (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Don't pass pipe_wm around so much (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Move some variables to tighter scope (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Keep plane watermarks enabled more aggressively (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sure cursor has enough ddb for the selected wm level (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Allocate enough DDB for the cursor (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract skl_compute_wm_params() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Don't pass plane state to skl_compute_plane_wm() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Accept alloc_size == blocks (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/cml: Introduce Comet Lake PCH (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/cml: Add CML PCI IDS (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix PSR2 selective update corruption after PSR1 setup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off the CUS when turning off a HDR plane (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix legacy gamma mode for ICL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Refactor icl_is_hdr_plane (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] drm/i915: Add new ICL PCI ID (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix CRC mismatch error for DP link layer compliance (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Prevent incorrect DBuf enabling (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Read out memory type (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract DIMM info on cnl+ (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Clean up intel_get_dram_info() a bit (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i914: s/l_info/dimm_l/ etc. (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Generalize intel_is_dram_symmetric() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use dram_dimm_info more (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract DIMM info on GLK too (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix DRAM size reporting for BXT (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract BXT DIMM helpers (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Polish skl_is_16gb_dimm() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract functions to derive SKL+ DIMM info (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Store DIMM rank information as a number (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Default to Thread Group preemption for compute workloads (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix the state checker for ICL Y planes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: move MG pll hw_state readout (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Finalize Wa_1408961008:icl (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Call MG_DP_MODE() macro with the right parameters order (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Drop redundant gamma mode mask (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Implement new w/a for underruns with wm1+ disabled (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Include "ignore lines" in skl+ wm state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] Revert "drm/i915: W/A for underruns with WM1+ disabled on icl" (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make MG PHY macros semantically consistent (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make combo PHY DDI macro definitions consistent for ICL and CNL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add degamma and gamma lut size to gen11 caps (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable pipe output csc (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable ICL Pipe CSC block (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add icl pipe degamma and gamma support (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/glk: Fix degamma lut programming (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Dump skl+ watermark changes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Update DSPCNTR gamma/csc bits during crtc_enable() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Disable pipe gamma when C8 pixel format is used (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off pipe CSC when it's not needed (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off pipe gamma when it's not needed (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Track pipe csc enable in crtc state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Track pipe gamma enable/disable in crtc state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Populate gamma_mode for all platforms (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: Main backport to rebase from 4.18 to 5.1 (Lyude Paul) [1713573 1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] {CVE-2019-11085} - [include] list: Backport list_is_first() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] lib/scatterlist: Provide a DMA page iterator (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [acpi] ACPI / PMIC: Add support for executing PMIC MIPI sequence elements (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] vfio: add edid api for display (vgpu) devices. (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [mm] mm: don't miss the last page because of round-off error (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [base] PM-runtime: Add new interface to get accounted time (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: move i915_kick_out_vgacon to vgaarb (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [scripts] tracing: Avoid calling cc-option -mrecord-mcount for every Makefile (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/fb_helper: Allow leaking fbdev smem_start (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/fb: Stop leaking physical address (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [video] fbdev: Add FBINFO_HIDE_SMEM_START flag (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] vt: Remove vc_panic_force_write (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] fbdev: Drop FBINFO_CAN_FORCE_OUTPUT flag (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [video] fbdev: fix kerneldoc (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] fbdev: add remove_conflicting_pci_framebuffers() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [media] media: cec-notifier: Get notifier by device and connector name (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [base] driver core: Add device_link_remove function (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] include: Move ascii85 functions from i915 to linux/ascii85.h (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [mm] mm, drm/i915: mark pinned shmemfs pages as unevictable (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] list: introduce list_bulk_move_tail helper (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [fs] sysfs: constify sysfs create/remove files harder (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/selftests: Remove unused dmabuf->kmap routines, fix the build (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] dma-buf: remove kmap_atomic interface (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] include/linux/bitops.h: introduce BITS_PER_TYPE (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] dma_buf: remove device parameter from attach callback v2 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [pci] PCI: Export pcie_get_speed_cap and pcie_get_width_cap (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: Add support for pps and compression mode command packet (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking/mutex: Fix mutex debug call and ww_mutex documentation (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking: Implement an algorithm choice for Wound-Wait mutexes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking: WW mutex cleanup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286]- [netdrv] igb: Fix WARN_ONCE on runtime suspend (Corinna Vinschen) [1659168] - [netdrv] igb: use struct_size() helper (Corinna Vinschen) [1659168] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Corinna Vinschen) [1659168] - [netdrv] igb: Bump version number (Corinna Vinschen) [1659168] - [netdrv] Revert "igb: reduce CPU0 latency when updating statistics" (Corinna Vinschen) [1659168] - [netdrv] igb: Fix an issue that PME is not enabled during runtime suspend (Corinna Vinschen) [1659168] - [netdrv] igb: Change RXPBSIZE size when setting Qav mode (Corinna Vinschen) [1659168] - [netdrv] igb: reduce CPU0 latency when updating statistics (Corinna Vinschen) [1659168] - [netdrv] igb: fix uninitialized variables (Corinna Vinschen) [1659168] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Corinna Vinschen) [1659168] - [netdrv] igb: Fix format with line continuation whitespace (Corinna Vinschen) [1659168] - [netdrv] igb: extend PTP gettime function to read system clock (Corinna Vinschen) [1659168] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Corinna Vinschen) [1659168] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Corinna Vinschen) [1659168] - [netdrv] igb: remove ndo_poll_controller (Corinna Vinschen) [1659168] - [netdrv] intel-ethernet: use correct module license (Corinna Vinschen) [1659168] - [netdrv] igb: Replace mdelay() with msleep() in igb_integrated_phy_loopback() (Corinna Vinschen) [1659168] - [netdrv] igb: Replace GFP_ATOMIC with GFP_KERNEL in igb_sw_init() (Corinna Vinschen) [1659168] - [netdrv] igb: Use an advanced ctx descriptor for launchtime (Corinna Vinschen) [1659168] - [netdrv] igb: e1000_phy: Mark expected switch fall-through (Corinna Vinschen) [1659168] - [netdrv] igb: e1000_82575: Mark expected switch fall-through (Corinna Vinschen) [1659168] - [netdrv] igb_main: Mark expected switch fall-throughs (Corinna Vinschen) [1659168] - [netdrv] igb: Use dma_wmb() instead of wmb() before doorbell writes (Corinna Vinschen) [1659168] - [netdrv] igb: Add support for ETF offload (Corinna Vinschen) [1659168] - [netdrv] igb: Only call skb_tx_timestamp after descriptors are ready (Corinna Vinschen) [1659168] - [netdrv] igb: Refactor igb_offload_cbs() (Corinna Vinschen) [1659168] - [netdrv] igb: Only change Tx arbitration when CBS is on (Corinna Vinschen) [1659168] - [netdrv] igb: Refactor igb_configure_cbs() (Corinna Vinschen) [1659168] - [fs] Revert "[fs] ext4: protect journal inode's blocks using block_validity" (Lukas Czerner) [1716549] - [fs] xfs: don't trip over uninitialized buffer on extent read of corrupted inode (Bill O'Donnell) [1715942] - [fs] xfs: always init bma in xfs_bmapi_write (Bill O'Donnell) [1715942] - [lib] rhashtable: Still do rehash when we get EEXIST (Vladis Dronov) [1712457] - [fs] vmcore: Add a kernel parameter novmcoredd (Kairui Song) [1705864] - [powerpc] powerpc/eeh: Correct retries in eeh_pe_reset_full() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Improve recovery of passed-through devices (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Add include_passed to eeh_clear_pe_frozen_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Add include_passed to eeh_pe_state_clear() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: remove sw_state from eeh_unfreeze_pe() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_pe_clear_frozen_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup control flow in eeh_handle_normal_event() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_ops.wait_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_pe_state_mark() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup unnecessary eeh_pe_state_mark_with_cfg() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_enabled() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup logic in eeh_rmv_from_parent_pe() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup field names in eeh_rmv_data (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup list_head field names (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_add_virt_device() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup unused field in eeh_dev (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup EEH_POSTPONED_PROBE (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Avoid misleading message "EEH: no capable adapters found" (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix use of EEH_PE_KEEP on wrong field (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix null deref for devices removed during EEH (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix possible null deref in eeh_dump_dev_log() (Sam Bobroff) [1352405] - [edac] x86/MCE/AMD, EDAC/mce_amd: Add new error descriptions for some SMCA bank types (Janakarajan Natarajan) [1688469] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new McaTypes for CS, PSP, and SMU units (Janakarajan Natarajan) [1688469] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new MP5, NBIO, and PCIE SMCA bank types (Janakarajan Natarajan) [1688469] - [scsi] megaraid_sas: remove tech preview from Aero series (Tomas Henzl) [1668409] - [scsi] megaraid_sas: sync with mainline (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: fix spelling mistake "oustanding" -> "outstanding" (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Make megasas_host_device_list_query() static (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: reduce module load time (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove a bunch of set but not used variables (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: return error when create DMA pool failed (Tomas Henzl) [1668409] {CVE-2019-11810} - [scsi] scsi: megaraid_sas: driver version update (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Update structures for HOST_DEVICE_LIST DCMD (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add support for DEVICE_LIST DCMD in driver (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rework device add code in AEN path (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rework code to get PD and LD list (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: correct an info message (Tomas Henzl) [1668409] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Tomas Henzl) [1668409] - [scsi] scsi: megaraid: fix out-of-bound array accesses (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: changes to function prototypes (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: NULL check before some freeing functions is not needed (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas_fusion: Mark expected switch fall-through (Tomas Henzl) [1668409] - [scsi] scsi: megaraid: megaraid_sas_base: Mark expected switch fall-through (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: modify max supported lds related print (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: remove unused macro (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: increase timeout for IOC INIT to 180seconds (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove double endian conversion (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Re-use max_mfi_cmds to calculate queue sizes (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rename scratch_pad registers (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove spin lock for dpc operation (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: optimize raid context access in IO path (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fail init if heartbeat timer fails (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: For SRIOV, do not set STOP_ADP bit (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix combined reply queue mode detection (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix module parameter description (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix goto labels in error handling (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Update copyright information (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add check for reset adapter bit (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix msleep granularity (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add support for FW snap dump (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add watchdog thread to detect Firmware fault (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: switch to generic DMA API (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: fix a missing-check bug (Tomas Henzl) [1668409] - [kernel] get_maintainer.pl: Add default .get_maintainer.conf file for RHEL (Prarit Bhargava) [1714630] - [scripts] get_maintainer: allow option --mpath to read all files in (Prarit Bhargava) [1714630] - [scripts] get_maintainer.pl: add -mpath= for MAINTAINERS file location (Prarit Bhargava) [1714630] - [scripts] get_maintainer: allow usage outside of kernel tree (Prarit Bhargava) [1714630] - [scripts] Revert "[scripts] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override" (Prarit Bhargava) [1714630] - [include] signal: Make siginmask safe when passed a signal of 0 (Waiman Long) [1714351] - [fs] signal: Don't send signals to tasks that don't exist (Waiman Long) [1714351] - [kernel] signal: Restore the stop PTRACE_EVENT_EXIT (Waiman Long) [1714351] - [kernel] signal: Better detection of synchronous signals (Waiman Long) [1714351] - [kernel] signal: Always notice exiting tasks (Waiman Long) [1714351] - [kernel] signal: Always attempt to allocate siginfo for SIGSTOP (Waiman Long) [1714351] - [kernel] signal: Guard against negative signal numbers in copy_siginfo_from_user32 (Waiman Long) [1714351] - [kernel] signal: Guard against negative signal numbers in copy_siginfo_from_user (Waiman Long) [1714351] - [kernel] signal: In sigqueueinfo prefer sig not si_signo (Waiman Long) [1714351] - [include] signal: Use a smaller struct siginfo in the kernel (Waiman Long) [1714351] - [include] signal: Distinguish between kernel_siginfo and siginfo (Waiman Long) [1714351] - [kernel] signal: Introduce copy_siginfo_from_user and use it's return value (Waiman Long) [1714351] - [arm64] signal: Remove the need for __ARCH_SI_PREABLE_SIZE and SI_PAD_SIZE (Waiman Long) [1714351] - [kernel] signal: Fail sigqueueinfo if si_signo != sig (Waiman Long) [1714351] - [kernel] signal/sparc: Move EMT_TAGOVF into the generic siginfo.h (Waiman Long) [1714351] - [mm] signal/arm: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Use send_sig_fault where appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_ptrace_errno_trap (Waiman Long) [1714351] - [arm64] signal/arm64: In ptrace_hbptriggered name the signal description string (Waiman Long) [1714351] - [arm64] signal/arm64: Remove arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_mceerr as appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_fault where appropriate (Waiman Long) [1714351] - [mm] signal/arm64: Only call set_thread_esr once in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Only perform one esr_to_fault_info call in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Expand __do_user_fault and remove it (Waiman Long) [1714351] - [mm] signal/arm64: For clarity separate the 3 signal sending cases in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Consolidate the two hwpoison cases in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Factor set_thread_esr out of __do_user_fault (Waiman Long) [1714351] - [arm64] signal/arm64: Factor out arm64_show_signal from arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Remove unneeded tsk parameter from arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Push siginfo generation into arm64_notify_die (Waiman Long) [1714351] - [powerpc] signal/powerpc: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [powerpc] signal/powerpc: Simplify _exception_pkey by using force_sig_pkuerr (Waiman Long) [1714351] - [powerpc] signal/powerpc: Specialize _exception_pkey for handling pkey exceptions (Waiman Long) [1714351] - [powerpc] signal/powerpc: Call force_sig_fault from _exception (Waiman Long) [1714351] - [powerpc] signal/powerpc: Factor the common exception code into exception_common (Waiman Long) [1714351] - [powerpc] powerpc/traps: Print unhandled signals in a separate function (Waiman Long) [1714351] - [mm] signal/powerpc: Remove pkey parameter from __bad_area_nosemaphore (Waiman Long) [1714351] - [mm] signal/powerpc: Call _exception_pkey directly from bad_key_fault_exception (Waiman Long) [1714351] - [mm] signal/powerpc: Remove pkey parameter from __bad_area (Waiman Long) [1714351] - [mm] signal/powerpc: Use force_sig_mceerr as appropriate (Waiman Long) [1714351] - [x86] signal/x86: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [mm] signal/x86: Pass pkey by value (Waiman Long) [1714351] - [mm] signal/x86: Replace force_sig_info_fault with force_sig_fault (Waiman Long) [1714351] - [mm] signal/x86: Call force_sig_pkuerr from __bad_area_nosemaphore (Waiman Long) [1714351] - [mm] signal/x86: Pass pkey not vma into __bad_area (Waiman Long) [1714351] - [mm] signal/x86: Don't compute pkey in __do_page_fault (Waiman Long) [1714351] - [mm] signal/x86: Remove pkey parameter from mm_fault_error (Waiman Long) [1714351] - [mm] signal/x86: Remove the pkey parameter from do_sigbus (Waiman Long) [1714351] - [mm] signal/x86: Remove pkey parameter from bad_area_nosemaphore (Waiman Long) [1714351] - [x86] signal/x86/traps: Simplify trap generation (Waiman Long) [1714351] - [x86] signal/x86/traps: Use force_sig instead of open coding it. (Waiman Long) [1714351] - [x86] signal/x86/traps: Use force_sig_bnderr (Waiman Long) [1714351] - [x86] signal/x86/traps: Move more code into do_trap_no_signal so it can be reused (Waiman Long) [1714351] - [x86] signal/x86/traps: Factor out show_signal (Waiman Long) [1714351] - [x86] signal/x86: Move mpx siginfo generation into do_bounds (Waiman Long) [1714351] - [x86] signal/x86: In trace_mpx_bounds_register_exception add __user annotations (Waiman Long) [1714351] - [mm] signal/x86: Move MCE error reporting out of force_sig_info_fault (Waiman Long) [1714351] - [x86] signal/x86: Inline fill_sigtrap_info in it's only caller send_sigtrap (Waiman Long) [1714351] - [powerpc] signal: Simplify tracehook_report_syscall_exit (Waiman Long) [1714351] - [kernel] signal: Pair exports with their functions (Waiman Long) [1714351] - [kernel] signal: Remove specific_send_sig_info (Waiman Long) [1714351] - [kernel] signal: Use group_send_sig_info to kill all processes in a pid namespace (Waiman Long) [1714351] - [tty] tty_io: Use group_send_sig_info in __do_SACK to note it is a session being killed (Waiman Long) [1714351] - [misc] signal/GenWQE: Fix sending of SIGKILL (Waiman Long) [1714351] - [include] signal: Remove SEND_SIG_FORCED (Waiman Long) [1714351] - [kernel] signal: Use SEND_SIG_PRIV not SEND_SIG_FORCED with SIGKILL and SIGSTOP (Waiman Long) [1714351] - [kernel] signal: Never allocate siginfo for SIGKILL or SIGSTOP (Waiman Long) [1714351] - [usb] signal: Don't send siginfo to kthreads. (Waiman Long) [1714351] - [usb] signal: Remove the siginfo paramater from kernel_dqueue_signal (Waiman Long) [1714351] - [tty] signal: send_sig_all no longer needs SEND_SIG_FORCED (Waiman Long) [1714351] - [kernel] signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid namespace init (Waiman Long) [1714351] - [x86] signal: Properly deliver SIGSEGV from x86 uprobes (Waiman Long) [1714351] - [kernel] signal: Properly deliver SIGILL from uprobes (Waiman Long) [1714351] - [kernel] signal: Always ignore SIGKILL and SIGSTOP sent to the global init (Waiman Long) [1714351] - [iommu] mm: convert return type of handle_mm_fault() caller to vm_fault_t (Waiman Long) [1714351] - [kernel] signal: make get_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make sigkill_pending() return bool (Waiman Long) [1714351] - [kernel] signal: make legacy_queue() return bool (Waiman Long) [1714351] - [kernel] signal: make wants_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make flush_sigqueue_mask() void (Waiman Long) [1714351] - [kernel] signal: make unhandled_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make recalc_sigpending_tsk() return bool (Waiman Long) [1714351] - [kernel] signal: make has_pending_signals() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_task_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_handler_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make kill_ok_by_cred() return bool (Waiman Long) [1714351] - [kernel] signal: simplify rt_sigaction() (Waiman Long) [1714351] - [kernel] signal: make do_sigpending() void (Waiman Long) [1714351] - [kernel] signal: make may_ptrace_stop() return bool (Waiman Long) [1714351] - [kernel] signal: make kill_as_cred_perm() return bool (Waiman Long) [1714351] - [kernel] signal: make force_sigsegv() void (Waiman Long) [1714351] - [kernel] signal: Don't restart fork when signals come in. (Waiman Long) [1714351] - [kernel] fork: Have new threads join on-going signal group stops (Waiman Long) [1714351] - [include] fork: Skip setting TIF_SIGPENDING in ptrace_init_task (Waiman Long) [1714351] - [kernel] signal: Add calculate_sigpending() (Waiman Long) [1714351] - [kernel] fork: Unconditionally exit if a fatal signal is pending (Waiman Long) [1714351] - [kernel] fork: Move and describe why the code examines PIDNS_ADDING (Waiman Long) [1714351] - [kernel] signal: Push pid type down into complete_signal. (Waiman Long) [1714351] - [kernel] signal: Push pid type down into __send_signal (Waiman Long) [1714351] - [kernel] signal: Push pid type down into send_signal (Waiman Long) [1714351] - [tty] signal: Pass pid type into do_send_sig_info (Waiman Long) [1714351] - [fs] signal: Pass pid type into send_sigio_to_task & send_sigurg_to_task (Waiman Long) [1714351] - [kernel] signal: Pass pid type into group_send_sig_info (Waiman Long) [1714351] - [kernel] signal: Pass pid and pid type into send_sigqueue (Waiman Long) [1714351] - [kernel] posix-timers: Noralize good_sigevent (Waiman Long) [1714351] - [fs] signal: Use PIDTYPE_TGID to clearly store where file signals will be sent (Waiman Long) [1714351] - [kernel] pid: Implement PIDTYPE_TGID (Waiman Long) [1714351] - [include] pids: Move the pgrp and session pid pointers from task_struct to signal_struct (Waiman Long) [1714351] - [fs] pids: Compute task_tgid using signal->leader_pid (Waiman Long) [1714351] - [kernel] pids: Move task_pid_type into sched/signal.h (Waiman Long) [1714351] - [init] pids: Initialize leader_pid in init_task (Waiman Long) [1714351]- [s390] s390: enable processes for mio instructions (Philipp Rudo) [1651734] - [s390] s390/pci: add parameter to disable usage of MIO instructions (Philipp Rudo) [1651734] - [s390] s390/pci: provide support for MIO instructions (Philipp Rudo) [1651734] - [s390] s390/pci: improve bar check (Philipp Rudo) [1651734] - [s390] s390/ism: move oddities of device IO to wrapper function (Philipp Rudo) [1651734] - [s390] s390/pci: move io address mapping code to pci_insn.c (Philipp Rudo) [1651734] - [s390] s390/pci: add parameter to force floating irqs (Philipp Rudo) [1651735] - [s390] s390/pci: gather statistics for floating vs directed irqs (Philipp Rudo) [1651735] - [s390] s390: show statistics for MSI IRQs (Philipp Rudo) [1651735] - [s390] s390/pci: provide support for CPU directed interrupts (Philipp Rudo) [1651735] - [s390] s390/airq: provide cacheline aligned ivs (Philipp Rudo) [1651735] - [s390] s390/pci: clarify interrupt vector usage (Philipp Rudo) [1651735] - [s390] s390/airq: recognize directed interrupts (Philipp Rudo) [1651735] - [s390] s390/sclp: detect DIRQ facility (Philipp Rudo) [1651735] - [s390] s390/pci: move everything irq related to pci_irq.c (Philipp Rudo) [1651735] - [s390] s390/pci: remove stale rc (Philipp Rudo) [1651735] - [s390] s390/pci: remove unused define (Philipp Rudo) [1651735] - [s390] s390/pci: mark command line parser data __initdata (Philipp Rudo) [1651735] - [cpufreq] cpufreq: intel_pstate: Ignore turbo active ratio in HWP (David Arcari) [1711970] - [scsi] mpt3sas: remove tech preview from Aero series (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix indentation issue (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Update mpt3sas driver version to 28.100.00.00 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Improve the threshold value and introduce module param (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Load balance to improve performance and avoid soft lockups (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Irq poll to avoid CPU hard lockups (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: simplify interrupt handler (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix typo in request_desript_type (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add missing breaks in switch statements (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Update driver version to 27.102.00.00 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add support for ATLAS PCIe switch (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add support for NVMe Switch Adapter (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Rename mpi endpoint device ID macro. (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: mpt3sas_scsih: Mark expected switch fall-through (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix memory ordering on 64bit writes (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix spelling mistake "manufaucturing" -> "manufacturing" (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix driver modifying persistent data in Manufacturing page11 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Don't modify EEDPTagMode field setting on SAS3.5 HBA devices (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix Sync cache command failure during driver unload (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Call sas_remove_host before removing the target devices (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Refactor mpt3sas_wait_for_ioc function (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Separate out mpt3sas_wait_for_ioc (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Added new #define variable IOC_OPERATIONAL_WAIT_COUNT (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: switch to generic DMA API (Tomas Henzl) [1684444] - [tools] perf tools beauty ioctl: Support new ISO7816 commands (Michael Petlan) [1709243] - [tools] perf tools: Restore proper cwd on return from mnt namespace (Michael Petlan) [1709243] - [tools] perf tools: Fix crash on synthesizing the unit (Michael Petlan) [1709243] - [tools] perf tools: Do not zero sample_id_all for group members (Michael Petlan) [1709243] - [tools] perf beauty: Use SRCARCH, ARCH=x86_64 must map to "x86" to find the headers (Michael Petlan) [1709243] - [tools] perf intel-pt: Add MTC and CYC timestamps to debug log (Michael Petlan) [1709243] - [tools] perf intel-pt: Add more event information to debug log (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Fix table find when table re-ordered (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add help window (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add Selected branches report (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Fall back to /usr/local/lib/libxed.so (Michael Petlan) [1709243] - [tools] perf top: Display the LBR stats in callchain entry (Michael Petlan) [1709243] - [tools] perf stat: Handle different PMU names with common prefix (Michael Petlan) [1709243] - [tools] perf record: Support weak groups (Michael Petlan) [1709243] - [tools] perf evlist: Move perf_evsel__reset_weak_group into evlist (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Start collecting pathnames in the BPF program (Michael Petlan) [1709243] - [tools] perf trace: Fix setting of augmented payload when using eBPF + raw_syscalls (Michael Petlan) [1709243] - [tools] perf trace: When augmenting raw_syscalls plug raw_syscalls:sys_exit too (Michael Petlan) [1709243] - [tools] perf examples bpf: Start augmenting raw_syscalls:sys_{start,exit} (Michael Petlan) [1709243] - [tools] perf intel-pt/bts: Calculate cpumode for synthesized samples (Michael Petlan) [1709243] - [tools] perf intel-pt: Insert callchain context into synthesized callchains (Michael Petlan) [1709243] - [tools] perf top: Start display thread earlier (Michael Petlan) [1709243] - [tools] perf trace beauty: Use the mmap flags table generated from headers (Michael Petlan) [1709243] - [tools] perf beauty: Wire up the mmap flags table generator to the Makefile (Michael Petlan) [1709243] - [tools] perf beauty: Add a generator for MAP_ mmap's flag constants (Michael Petlan) [1709243] - [tools] perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc} (Michael Petlan) [1709243] - [tools] perf cs-etm: Correct CPU mode for samples (Michael Petlan) [1709243] - [tools] perf unwind: Take pgoff into account when reporting elf to libdwfl (Michael Petlan) [1709243] - [tools] perf top: Do not use overwrite mode by default (Michael Petlan) [1709243] - [tools] perf trace: Beautify mount's first pathname arg (Michael Petlan) [1709243] - [tools] perf trace: Beautify the umount's 'name' argument (Michael Petlan) [1709243] - [tools] perf trace: Consider syscall aliases too (Michael Petlan) [1709243] - [tools] perf trace beauty: Beautify mount/umount's 'flags' argument (Michael Petlan) [1709243] - [tools] perf trace beauty: Allow syscalls to mask an argument before considering it (Michael Petlan) [1709243] - [tools] perf beauty: Introduce strarray__scnprintf_flags() (Michael Petlan) [1709243] - [tools] perf beauty: Switch from GPL v2.0 to LGPL v2.1 (Michael Petlan) [1709243] - [tools] perf beauty: Add a generator for MS_ mount/umount's flag constants (Michael Petlan) [1709243] - [tools] tools include uapi: Grab a copy of linux/fs.h (Michael Petlan) [1709243] - [tools] perf script: Support total cycles count (Michael Petlan) [1709243] - [tools] perf script: Make itrace script default to all calls (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add All branches report (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to display all the database tables (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to shrink / enlarge font (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to find symbols in the call-graph (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add support for multiple sub-windows (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Rename to exported-sql-viewer.py (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Refactor TreeItem class (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Add data helper functions (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Factor out CallGraphModel from TreeModel (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Remove use of setObjectName() (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Add a class for global data (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Separate the database details into a class (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Make a "Main" function (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Change icon (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Set a minimum window size (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Provide better default column sizes (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Use SPDX license identifier (Michael Petlan) [1709243] - [tools] perf trace: Introduce per-event maximum number of events property (Michael Petlan) [1709243] - [tools] perf script: Flush output stream after events in verbose mode (Michael Petlan) [1709243] - [tools] perf script: Allow extended console debug output (Michael Petlan) [1709243] - [tools] perf stat: Poll for monitored tasks being alive (Michael Petlan) [1709243] - [tools] perf trace: Drop thread refcount in trace__event_handler() (Michael Petlan) [1709243] - [tools] perf trace: Drop addr_location refcounts (Michael Petlan) [1709243] - [tools] perf evsel: Mark a evsel as disabled when asking the kernel do disable it (Michael Petlan) [1709243] - [tools] perf evsel: Introduce per event max_events property (Michael Petlan) [1709243] - [tools] tools lib subcmd: Introduce OPTION_ULONG (Michael Petlan) [1709243] - [tools] perf arm64: Fix generate system call table failed with /tmp mounted with noexec (Michael Petlan) [1709243] - [tools] perf symbols: Set PLT entry/header sizes properly on Sparc (Michael Petlan) [1709243] - [tools] perf jitdump: Add Sparc support. (Michael Petlan) [1709243] - [tools] perf annotate: Add Sparc support (Michael Petlan) [1709243] - [tools] perf record: Encode -k clockid frequency into Perf trace (Michael Petlan) [1709243] - [tools] perf probe: Support SDT markers having reference counter (semaphore) (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Move struct tep_handler definition in a local header file (Michael Petlan) [1709243] - [tools] tools lib traceevent: Separate out tep_strerror() for strerror_r() issues (Michael Petlan) [1709243] - [tools] perf python: More portable way to make CFLAGS work with clang (Michael Petlan) [1709243] - [tools] perf python: Make clang_has_option() work on Python 3 (Michael Petlan) [1709243] - [tools] perf tools: Free temporary 'sys' string in read_event_files() (Michael Petlan) [1709243] - [tools] perf tools: Avoid double free in read_event_file() (Michael Petlan) [1709243] - [tools] perf tools: Free 'printk' string in parse_ftrace_printk() (Michael Petlan) [1709243] - [tools] perf tools: Cleanup trace-event-info 'tdata' leak (Michael Petlan) [1709243] - [tools] perf strbuf: Match va_{add,copy} with va_end (Michael Petlan) [1709243] - [tools] perf test: S390 does not support watchpoints in test 22 (Michael Petlan) [1709243] - [tools] perf auxtrace: Include missing asm/bitsperlong.h to get BITS_PER_LONG (Michael Petlan) [1709243] - [tools] tools include: Adopt linux/bits.h (Michael Petlan) [1709243] - [tools] perf intel-pt: Implement decoder flags for trace begin / end (Michael Petlan) [1709243] - [tools] perf intel-pt: Add decoder flags for trace begin / end (Michael Petlan) [1709243] - [tools] perf tools: Improve thread_stack__process() for trace begin / end (Michael Petlan) [1709243] - [tools] perf tools: Improve thread_stack__event() for trace begin / end (Michael Petlan) [1709243] - [tools] perf db-export: Add trace begin / end branch type variants (Michael Petlan) [1709243] - [tools] perf script: Enhance sample flags for trace begin / end (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enum filter_trivial_type (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename data2host*() APIs (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename struct plugin_list to struct tep_plugin_list (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to structs filter_type and event_filter (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to various structs filter_arg_*. (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to struct filter_{arg,value_type} (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enums filter_{exp,arg}_type (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enums filter_{boolean,op,cmp}_type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename enum print_arg_type to enum tep_print_arg_type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Add prefix tep_ to all print_* structures (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix TEP_ to all EVENT_FL_* flags (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename enum event_{sort_}type to enum tep_event_{sort_}type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename enum format_flags to enum tep_format_flags (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename struct format{_field} to struct tep_format{_field} (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename struct event_format to struct tep_event_format (Michael Petlan) [1709243] - [tools] perf script: Print DSO for callindent (Michael Petlan) [1709243] - [tools] perf script: Allow sym and dso without ip, addr (Michael Petlan) [1709243] - [tools] tools lib subcmd: Support overwriting the pager (Michael Petlan) [1709243] - [tools] perf tools: Report itrace options in help (Michael Petlan) [1709243] - [tools] perf help: Add missing subcommand `version` (Michael Petlan) [1709243] - [tools] perf tools: Initialize perf_data_file fd field (Michael Petlan) [1709243] - [tools] perf util: Make copyfile_offset() global (Michael Petlan) [1709243] - [tools] perf tools: Add 'struct perf_mmap' arg to record__write() (Michael Petlan) [1709243] - [tools] perf auxtrace: Pass struct perf_mmap into mmap__read* functions (Michael Petlan) [1709243] - [tools] perf tools: Remove perf_tool from event_op3 (Michael Petlan) [1709243] - [tools] perf tools: Remove perf_tool from event_op2 (Michael Petlan) [1709243] - [tools] perf bpf-loader: use PTR_ERR_OR_ZERO inetead of return code (Michael Petlan) [1709243] - [tools] tools include: Adopt PTR_ERR_OR_ZERO from the kernel err.h header (Michael Petlan) [1709243] - [tools] perf ordered_events: Prevent crossing max_alloc_size (Michael Petlan) [1709243] - [tools] perf ordered_events: Add 'struct ordered_events_buffer' layer (Michael Petlan) [1709243] - [tools] perf test: Add watchpoint test (Michael Petlan) [1709243] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo (Michael Petlan) [1709243] - [tools] perf map: Turn some pr_warning() to pr_debug() (Michael Petlan) [1709243] - [tools] perf trace: Use the raw_syscalls:sys_enter for the augmented syscalls (Michael Petlan) [1709243] - [tools] perf trace: Setup augmented_args in the raw_syscalls:sys_enter handler (Michael Petlan) [1709243] - [tools] perf trace: Introduce syscall__augmented_args() method (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Avoid optimization to pass older BPF validators (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Check probe_read_str() return separately (Michael Petlan) [1709243] - [tools] perf annotate: Handle arm64 move instructions (Michael Petlan) [1709243] - [tools] perf trace beauty: Alias 'umount' to 'umount2' (Michael Petlan) [1709243] - [tools] perf stat: Move the display functions to stat-display.c (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_events' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'walltime_*' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Propagate 'struct target' arg to sort_aggr_thread() (Michael Petlan) [1709243] - [tools] perf stat: Move 'no_merge' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'big_num' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Do not use the global 'evsel_list' in print functions (Michael Petlan) [1709243] - [tools] perf stat: Move *_aggr_* data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move ru_* data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'print_mixed_hw_group_error' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'print_free_counters_hint' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'null_run' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Add 'walltime_nsecs_stats' pointer to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Pass 'evlist' to aggr_update_shadow() (Michael Petlan) [1709243] - [tools] perf stat: Pass 'struct perf_stat_config' to first_shadow_cpu() (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_only_len' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'run_count' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use 'evsel->evlist' instead of 'evsel_list' in collect_all_aliases() (Michael Petlan) [1709243] - [tools] perf stat: Pass 'evlist' argument to print functions (Michael Petlan) [1709243] - [tools] perf stat: Add 'target' argument to perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move 'unit_width' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_only' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'interval_clear' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move csv_* to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Pass a 'struct perf_stat_config' argument to global print functions (Michael Petlan) [1709243] - [tools] perf stat: Pass 'struct perf_stat_config' argument to local print functions (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_stat_config' argument to perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move STAT_RECORD out of perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Introduce perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move perf_stat_synthesize_config() to stat.c (Michael Petlan) [1709243] - [tools] perf stat: Add 'perf_event__handler_t' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_evlist' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_tool' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_stat_config' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Rename 'is_pipe' argument to 'attrs' in perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Move create_perf_stat_counter() to stat.c (Michael Petlan) [1709243] - [tools] perf evsel: Introduce perf_evsel__store_ids() (Michael Petlan) [1709243] - [tools] perf tools: Switch 'session' argument to 'evlist' in perf_event__synthesize_attrs() (Michael Petlan) [1709243] - [tools] perf stat: Add 'identifier' flag to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use local config arg for scale in create_perf_stat_counter() (Michael Petlan) [1709243] - [tools] perf stat: Move 'no_inherit' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'initial_delay' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use evsel->threads in create_perf_stat_counter() (Michael Petlan) [1709243] - [tools] perf trace: Show comm and tid for tracepoint events (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Hook into syscalls:sys_exit_SYSCALL too (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Rename augmented_*_syscall__enter to just *_syscall (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Update the header comments (Michael Petlan) [1709243] - [tools] perf bpf: Add syscall_exit() helper (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Split trace-seq related APIs in a separate header file (Michael Petlan) [1709243] - [tools] perf report: Create auxiliary trace data files for s390 (Michael Petlan) [1709243] - [tools] perf trace beauty: Reorganize 'struct sockaddr *' beautifier (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment sendto's 'addr' arg (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment bind's 'myaddr' sockaddr arg (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Add augmented_sockaddr_syscall_enter() (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment connect's 'sockaddr' arg (Michael Petlan) [1709243] - [tools] perf bpf: Add linux/socket.h to the headers accessible to bpf proggies (Michael Petlan) [1709243] - [tools] perf bpf: Give precedence to bpf header dir (Michael Petlan) [1709243] - [tools] perf trace: Add a etcsnoop.c augmented syscalls eBPF utility (Michael Petlan) [1709243] - [tools] perf trace: Augment 'newstat' (aka 'stat') filename ptr (Michael Petlan) [1709243] - [tools] perf trace: Introduce augmented_filename_syscall_enter() declarator (Michael Petlan) [1709243] - [tools] perf trace: Augment inotify_add_watch pathname syscall arg (Michael Petlan) [1709243] - [tools] perf trace: Augment the 'open' syscall 'filename' arg (Michael Petlan) [1709243] - [tools] perf trace: Use the augmented filename, expanding syscall enter pointers (Michael Petlan) [1709243] - [tools] perf trace: Show comm/tid for augmented_syscalls (Michael Petlan) [1709243] - [tools] perf trace: Extract the comm/tid printing for syscall enter (Michael Petlan) [1709243] - [tools] perf trace: Print the syscall name for augmented_syscalls (Michael Petlan) [1709243] - [tools] perf trace: Make the augmented_syscalls filter out the tracepoint event (Michael Petlan) [1709243] - [tools] perf trace: Pass augmented args to the arg formatters when available (Michael Petlan) [1709243] - [x86] perf/x86/intel: Disallow precise_ip on BTS events (Michael Petlan) [1709243] - [x86] perf/x86/intel: Add generic branch tracing check to intel_pmu_has_bts() (Michael Petlan) [1709243] - [x86] perf/x86/intel: Move branch tracing setup to the Intel-specific source file (Michael Petlan) [1709243] - [x86] perf/x86/intel: Fix regression by default disabling perfmon v4 interrupt handling (Michael Petlan) [1709243] - [x86] perf/x86/intel/uncore: Support CoffeeLake 8th CBOX (Michael Petlan) [1709243] - [x86] perf/x86/intel/uncore: Add more IMC PCI IDs for KabyLake and CoffeeLake CPUs (Michael Petlan) [1709243] - [tools] perf tools: Don't clone maps from parent when synthesizing forks (Michael Petlan) [1709243] - [tools] perf top: Allow disabling the overwrite mode (Michael Petlan) [1709243] - [kernel] perf/core: Clean up inconsisent indentation (Michael Petlan) [1709243] - [tools] perf script: Implement --graph-function (Michael Petlan) [1709243] - [tools] tools script: Add --call-trace and --call-ret-trace (Michael Petlan) [1709243] - [tools] perf script: Add --insn-trace for instruction decoding (Michael Petlan) [1709243] - [tools] perf trace: Introduce --max-events (Michael Petlan) [1709243] - [x86] perf/x86/intel: Add quirk for Goldmont Plus (Michael Petlan) [1709243] - [kernel] perf: Suppress AUX/OVERWRITE records (Michael Petlan) [1709243] - [x86] perf/x86/intel/pt: Annotate 'pt_cap_group' with __ro_after_init (Michael Petlan) [1709243] - [x86] perf/x86: Add __ro_after_init annotations (Michael Petlan) [1709243] - [x86] x86/mm/mem_encrypt: Disable all instrumentation for early SME setup (Janakarajan Natarajan) [1679265] - [fs] cifs: fix copy_file_range to allow write on the same file (Leif Sahlberg) [1689100] - [infiniband] Revert "[infiniband] IB/usnic: Remove stub functions" (Jonathan Toppins) [1713753] - [x86] Update stepping values for Whiskey Lake U/Y (David Arcari) [1704801] - [powerpc] powerpc/perf: Trace imc PMU functions (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Trace imc events detection and cpuhotplug (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Declare static identifier a such (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Add privileged access check for thread_imc (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Rearrange setting of ldbar for thread-imc (Jiri Olsa) [1608796] - [powerpc] powerpc/include: Add data structures and macros for IMC trace mode (Jiri Olsa) [1608796] - [scsi] hpsa: correct-static-checker-issue-in-reset-handler (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: update driver version (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct device resets (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: do-not-complete-cmds-for-deleted-devices (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: wait longer for ptraid commands (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: check for tag collision (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: use local workqueues instead of system workqueues (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct simple mode (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: bump driver version (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct device id issues (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: check for lv removal (Joseph Szczypek) [1713772] - [mm] mm, slub: restore the original intention of prefetch_freepointer() (Rafael Aquini) [1714671] - [fs] Revert "add KABI padding to dentry structure" (Waiman Long) [1714253] - [crypto] crypto: drbg - add FIPS 140-2 CTRNG for noise source (Herbert Xu) [1687905] - [infiniband] RDMA/qedr: Fix incorrect device rate. (Manish Chopra) [1713580] - [scsi] scsi: bnx2fc: remove unneeded variable (Nilesh Javali) [1665308] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Nilesh Javali) [1665308] - [char] ipmi:ssif: compare block number correctly for multi-part return messages (Tony Camuso) [1712159] - [kernel] kernel/sysctl.c: define minmax conv functions in terms of non-minmax versions (Alex Gladkov) [1683922] - [kernel] kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv (Alex Gladkov) [1683922] - [tools] tools/testing/selftests/sysctl/sysctl.sh: add tests for >32-bit values written to 32-bit integers (Alex Gladkov) [1683922] - [kernel] sched/nohz: Run NOHZ idle load balancer on HK_FLAG_MISC CPUs (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] nohz_full: Allow the boot CPU to be nohz_full (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/isolation: Require a present CPU in housekeeping mask (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] kernel/cpu: Allow non-zero CPU to be primary for suspend / kexec freeze (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] power/suspend: Add function to disable secondaries for suspend (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/core: Allow the remote scheduler tick to be started on CPU0 (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/fair: Use non-atomic cpumask_{set,clear}_cpu() (Desnes Augusto Nunes do Rosario) [1666614] - [lib] lib: reciprocal_div: implement the improved algorithm on the paper mentioned (Petr Oros) [1706982] - [kernel] kernel/sysctl.c: fix proc_do_large_bitmap for large input buffers (Eric Sandeen) [1667092] - [kernel] tools/testing/selftests/sysctl/sysctl.sh: add proc_do_large_bitmap() test case (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: allow graceful use on older kernels (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: ignore diff output on verify_diff_w() (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: load module before testing for it (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: remove superfluous test_reqs() (Eric Sandeen) [1667092] - [kernel] kernel/sysctl.c: fix out-of-bounds access when setting file-max (Eric Sandeen) [1694160] - [kernel] sysctl: handle overflow for file-max (Eric Sandeen) [1694160] - [kernel] sysctl: handle overflow in proc_get_long (Eric Sandeen) [1694160] - [s390] kvm: s390: Fix potential spectre warnings (Thomas Huth) [1702344] - [powerpc] mm: move warning from resize_hpt_for_hotplug() (Laurent Vivier) [1660737] - [powerpc] pseries: Use pr_xxx() in lpar.c (Laurent Vivier) [1660737] - [infiniband] RDMA/iw_cxgb4: Always disconnect when QP is transitioning to TERMINATE state (Arjun Vynipadath) [1664673] - [infiniband] cxgb4: kfree mhp after the debug print (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxbg: Use correct sizing on buffers holding page DMA addresses (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Make function read_tcb() static (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Remove kref accounting for sync operation (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: cq/qp mask depends on bar2 pages in a host page (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: fix srqidx leak during connection abort (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: complete the cached SRQ buffers (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Remove a set-but-not-used variable (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use tos when finding ipv6 routes (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use tos when importing the endpoint (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use listening ep tos when accepting new connections (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb*: kzalloc the iwcm verbs struct (Arjun Vynipadath) [1664673] - [infiniband] RDMA/iw_cxgb4: Drop __GFP_NOFAIL (Arjun Vynipadath) [1664673] - [infiniband] infiniband: cxgb4: no need to check return value of debugfs_create functions (Arjun Vynipadath) [1664673] - [infiniband] RDMA/iw_cxgb4: Fix the unchecked ep dereference (Arjun Vynipadath) [1664673] - [infiniband] RDMA: Introduce and use rdma_device_to_ibdev() (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Check for send WR also while posting write with completion WR (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: only reconnect with MPAv1 if the peer aborts (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Use proper enumerated type in c4iw_bar2_addrs (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: remove redundant null pointer check before kfree_skb (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Remove pci_unmap_addr() wrappers for DMA API (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Declare ib_post_send() and ib_post_recv() arguments const (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Simplify a structure initialization (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Fix SRQ endianness annotations (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Add support for kernel mode SRQ's (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Add support for srq functions & structs (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Restore the dropped uninitialized_var (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Make c4iw_poll_cq_one() easier to analyze (Arjun Vynipadath) [1664673] - [fs] gfs2: clean_journal improperly set sd_log_flush_head (Robert S Peterson) [1693660]- [netdrv] bonding/802.3ad: fix slave link initialization transition states (Jarod Wilson) [1714387] - [iommu] iommu/vt-d: Disable ATS support on untrusted devices (Jerry Snitselaar) [1649210 1692246] - [documentation] thunderbolt: Export IOMMU based DMA protection support to userspace (Jerry Snitselaar) [1649210 1692246] - [iommu] iommu/vt-d: Do not enable ATS for untrusted devices (Jerry Snitselaar) [1649210 1692246] - [iommu] iommu/vt-d: Force IOMMU on for platform opt in hint (Jerry Snitselaar) [1649210 1692246] - [arm64] arm64: makefile fix build of .i file in external module case (Jerome Marchand) [1713052] - [s390] s390/protvirt: block kernel command line alteration (Philipp Rudo) [1651711] - [s390] s390/protvirt: add memory sharing for diag 308 set/store (Philipp Rudo) [1651711] - [s390] s390/uv: introduce guest side ultravisor code (Philipp Rudo) [1651711] - [netdrv] net: aquantia: fix undefined devm_hwmon_device_register_with_info reference (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Make aq_ndev_driver_name static (Igor Russkikh) [1706905] - [netdrv] net: aquantia: remove outdated device ids (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixups on 64bit dma counters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: get total counters from DMA block (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fetch up to date statistics on ethtool request (Igor Russkikh) [1706905] - [netdrv] net: aquantia: extract timer cb into work job (Igor Russkikh) [1706905] - [netdrv] net: aquantia: introduce fwreq mutex (Igor Russkikh) [1706905] - [netdrv] net: aquantia: user correct MSI irq type (Igor Russkikh) [1706905] - [netdrv] net: aquantia: use macros for better visibility (Igor Russkikh) [1706905] - [netdrv] net: aquantia: improve ifup link detection (Igor Russkikh) [1706905] - [netdrv] net: aquantia: link status irq handling (Igor Russkikh) [1706905] - [netdrv] net: aquantia: create global service workqueue (Igor Russkikh) [1706905] - [netdrv] net: aquantia: link interrupt handling function (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add link interrupt fields (Igor Russkikh) [1706905] - [netdrv] net: aquantia: implement hwmon api for chip temperature (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add infrastructure to readout chip temperature (Igor Russkikh) [1706905] - [netdrv] net: aquantia: enable driver build for arm64 or compile_test (Igor Russkikh) [1706905] - [netdrv] net: aquantia: improve LRO configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Increase rx ring default size from 1K to 2K (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Make RX default frame size 2K (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Introduce rx refill threshold value (Igor Russkikh) [1706905] - [netdrv] net: aquantia: optimize rx performance by page reuse strategy (Igor Russkikh) [1706905] - [netdrv] net: aquantia: optimize rx path using larger preallocated skb len (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix rx checksum offload for UDP/TCP over IPv6 (Igor Russkikh) [1706905] - [netdrv] net: aquantia: use better wrappers for state registers (Igor Russkikh) [1706905] - [netdrv] net: aquantia: replace AQ_HW_WAIT_FOR with readx_poll_timeout_atomic (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed instack structure overflow (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed buffer overflow (Igor Russkikh) [1706905] - [netdrv] net: aquantia: added newline at end of file (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed memcpy size (Igor Russkikh) [1706905] - [netdrv] net: aquantia: regression on cpus with high cores: set mode with 8 queues (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of RSS configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix initialization of RSS table (Igor Russkikh) [1706905] - [netdrv] net: aquantia: increase max number of hw queues (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix RSS table and key sizes (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix rx checksum offload bits (Igor Russkikh) [1706905] - [netdrv] net: aquantia: return 'err' if set MPI_DEINIT state fails (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix spelling mistake "specfield" -> "specified" (Igor Russkikh) [1706905] - [netdrv] net: aquantia: cleanup err handing in hw_atl_utils_fw_rpc_wait (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of rx-vlan-filter offload (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add ethertype and PCP to rx flow filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add vlan id to rx flow filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of L3/L4 ntuple filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add infrastructure for ntuple rules (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add rx-flow filter definitions (Igor Russkikh) [1706905] - [netdrv] net: aquantia: allow rx checksum offload configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: invalid checksumm offload implementation (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed enable unicast on 32 macvlan (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix potential IOMMU fault after driver unbind (Igor Russkikh) [1706905] - [netdrv] net: aquantia: synchronized flow control between mac/phy (Igor Russkikh) [1706905] - [netdrv] net: aquantia: make function aq_fw2x_update_stats static (Igor Russkikh) [1706905] - [netdrv] net: aquantia: remove some redundant variable initializations (Igor Russkikh) [1706905] - [netdrv] bnxt_en: Add device IDs 0x1806 and 0x1752 for 57500 devices. (Selvin Xavier) [1672208] - [scsi] scsi: fnic: Remove set but not used variable 'vdev' (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: no need to check return value of debugfs_create functions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Update fnic driver version to 1.6.0.47 (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Enable fnic devcmd2 interface (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Adding devcmd2 init and posting interfaces (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Add devcmd2 initialization helpers (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic devcmd2 controller definitions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic devcmd2 interface definitions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Impose upper limit on max. # of CQs processed per intr (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: RQ enable and then post descriptors (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: delaying vnic dev enable till after req intr (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Warn when calling done for IO not issued to fw (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic stats for max CQs processed and ISR time (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Add port speed stat to fnic debug stats (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: use fnic_lock to guard fnic->state_flags (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: vnic_rq_clean change BUG_ON to WARN_ON (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: change fnic queue depth to 256 (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: support to display 20G port speed (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Use vzalloc (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: switch to generic DMA API (Govindarajulu Varadarajan) [1656236] - [pci] PCI/PME: Fix possible use-after-free on remove (Myron Stowe) [1701834] - [pci] PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() (Myron Stowe) [1701834] - [pci] PCI: Blacklist power management of Gigabyte X299 DESIGNARE EX PCIe ports (Myron Stowe) [1701834] - [tools] perf arm64: Fix mksyscalltbl when system kernel headers are ahead of the kernel (Michael Petlan) [1709242] - [rpmspec] perf: remove bpf examples (Michael Petlan) [1709242] - [tools] perf tools: Stop fallbacking to kallsyms for vdso symbols lookup (Michael Petlan) [1709242] - [tools] perf report: Don't crash on invalid inline debug information (Michael Petlan) [1709242] - [tools] perf cpu_map: Align cpu map synthesized events properly. (Michael Petlan) [1709242] - [tools] perf tools: Fix tracing_path_mount proper path (Michael Petlan) [1709242] - [tools] perf evsel: Store ids for events with their own cpus perf_event__synthesize_event_update_cpus (Michael Petlan) [1709242] - [tools] perf vendor events intel: Fix wrong filter_band* values for uncore events (Michael Petlan) [1709242] - [tools] Revert "perf tools: Fix PMU term format max value calculation" (Michael Petlan) [1709242] - [tools] tools headers uapi: Sync kvm.h copy (Michael Petlan) [1709242] - [tools] perf record: Use unmapped IP for inline callchain cursors (Michael Petlan) [1709242] - [tools] perf python: Use -Wno-redundant-decls to build with PYTHON=python3 (Michael Petlan) [1709242] - [tools] perf report: Don't try to map ip to invalid map (Michael Petlan) [1709242] - [tools] perf script python: Fix export-to-sqlite.py sample columns (Michael Petlan) [1709242] - [tools] perf script python: Fix export-to-postgresql.py occasional failure (Michael Petlan) [1709242] - [tools] perf Documentation: Fix out-of-tree asciidoctor man page generation (Michael Petlan) [1709242] - [tools] perf tools: Fix maps__find_symbol_by_name() (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/if_link.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/vhost.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copies of kvm headers (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of drm/drm.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of asm-generic/unistd.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1709242] - [tools] perf annotate: Fix parsing aarch64 branch instructions after objdump update (Michael Petlan) [1709242] - [tools] perf probe powerpc: Ignore SyS symbols irrespective of endianness (Michael Petlan) [1709242] - [tools] perf event-parse: Use fixed size string for comms (Michael Petlan) [1709242] - [tools] perf util: Fix bad memory access in trace info. (Michael Petlan) [1709242] - [tools] perf tools: Streamline bpf examples and headers installation (Michael Petlan) [1709242] - [tools] perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx() (Michael Petlan) [1709242] - [tools] perf arm64: Fix include path for asm-generic/unistd.h (Michael Petlan) [1709242] - [tools] perf tests: Add breakpoint modify tests (Michael Petlan) [1709242] - [tools] perf annotate: Properly interpret indirect call (Michael Petlan) [1709242] - [tools] tools/lib/lockdep: Add dummy task_struct state member (Michael Petlan) [1709242] - [tools] tools/lib/lockdep: Add empty nmi.h (Michael Petlan) [1709242] - [tools] tools lib traceevent: Change to SPDX License format (Michael Petlan) [1709242] - [tools] perf llvm: Allow passing options to llc in addition to clang (Michael Petlan) [1709242] - [tools] perf parser: Improve error message for PMU address filters (Michael Petlan) [1709242] - [tools] perf tools: Disable parallelism for 'make clean' (Michael Petlan) [1709242] - [tools] perf auxtrace: Fix queue resize (Michael Petlan) [1709242] - [tools] perf python: Remove -mcet and -fcf-protection when building with clang (Michael Petlan) [1709242] - [tools] perf arm spe: Fix uninitialized record error variable (Michael Petlan) [1709242] - [tools] perf tools: Move syscall_64.tbl check into check-headers.sh (Michael Petlan) [1709242] - [tools] perf tools: Make check-headers.sh check based on kernel dir (Michael Petlan) [1709242] - [tools] perf tools: Fix check-headers.sh AND list path of execution (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename static variables and functions in event-parse.c (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename various pevent APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename internal parser related APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename various pevent get/set/is APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_find_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent field APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_data_ APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_register / unregister APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_filter* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename traceevent_plugin_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_function* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, tools lib lockdep: Rename 'enum pevent_errno' to 'enum tep_errno' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename 'enum pevent_flag' to 'enum tep_flag' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename traceevent_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_set_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_register_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_read_number_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent print APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent parse APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent find APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent alloc / free APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent plugin related APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename 'struct pevent_record' to 'struct tep_record' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename struct pevent to struct tep_handle (Michael Petlan) [1709242] - [tools] perf probe powerpc: Fix trace event post-processing (Michael Petlan) [1709242] - [tools] perf map: Optimize maps__fixup_overlappings() (Michael Petlan) [1709242] - [tools] perf map: Synthesize maps only for thread group leader (Michael Petlan) [1709242] - [tools] perf trace: Wire up the augmented syscalls with the syscalls:sys_enter_FOO beautifier (Michael Petlan) [1709242] - [tools] perf trace: Setup the augmented syscalls bpf-output event fields (Michael Petlan) [1709242] - [tools] perf bpf: Make bpf__setup_output_event() return the bpf-output event (Michael Petlan) [1709242] - [tools] perf trace: Handle "bpf-output" events associated with "__augmented_syscalls__" BPF map (Michael Petlan) [1709242] - [tools] perf bpf: Add wrappers to BPF_FUNC_probe_read(_str) functions (Michael Petlan) [1709242] - [tools] perf bpf: Add bpf__setup_output_event() strerror() counterpart (Michael Petlan) [1709242] - [tools] perf bpf: Generalize bpf__setup_stdout() (Michael Petlan) [1709242] - [tools] perf bpf: Make bpf__for_each_stdout_map() generic (Michael Petlan) [1709242] - [tools] perf bpf: Add bpf/stdio.h wrapper to bpf_perf_event_output function (Michael Petlan) [1709242] - [tools] perf bpf: Add struct bpf_map struct (Michael Petlan) [1709242] - [tools] perf report: Add --percent-type option (Michael Petlan) [1709242] - [tools] perf annotate: Add --percent-type option (Michael Petlan) [1709242] - [tools] perf annotate: Display percent type in stdio output (Michael Petlan) [1709242] - [tools] perf annotate: Make local period the default percent type (Michael Petlan) [1709242] - [tools] perf annotate: Add support to toggle percent type (Michael Petlan) [1709242] - [tools] perf annotate: Pass browser percent_type in annotate_browser__calc_percent() (Michael Petlan) [1709242] - [tools] perf annotate: Pass 'struct annotation_options' to map_symbol__annotation_dump() (Michael Petlan) [1709242] - [tools] perf annotate: Pass struct annotation_options to symbol__calc_lines() (Michael Petlan) [1709242] - [tools] perf annotate: Add percent_type to struct annotation_options (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_PERIOD_GLOBAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_PERIOD_LOCAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_HITS_GLOBAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Switch struct annotation_data::percent to array (Michael Petlan) [1709242] - [tools] perf annotate: Loop group events directly in annotation__calc_percent() (Michael Petlan) [1709242] - [tools] perf annotate: Rename hist to sym_hist in annotation__calc_percent (Michael Petlan) [1709242] - [tools] perf annotate: Rename local sample variables to data (Michael Petlan) [1709242] - [tools] perf annotate: Rename struct annotation_line::samples* to data* (Michael Petlan) [1709242] - [tools] perf annotate: Get rid of annotation__scnprintf_samples_period() (Michael Petlan) [1709242] - [tools] perf annotate: Make annotation_line__max_percent static (Michael Petlan) [1709242] - [tools] perf annotate: Make symbol__annotate_fprintf2() local (Michael Petlan) [1709242] - [tools] perf bpf: Add 'syscall_enter' probe helper for syscall enter tracepoints (Michael Petlan) [1709242] - [tools] perf tools: Drop unneeded bitmap_zero() calls (Michael Petlan) [1709242] - [tools] perf vendor events arm64: Enable JSON events for eMAG (Michael Petlan) [1709242] - [tools] perf report: Add GUI report support for s390 auxiliary trace (Michael Petlan) [1709242] - [tools] perf report: Add raw report support for s390 auxiliary trace (Michael Petlan) [1709242] - [tools] perf auxtrace: Support for perf report -D for s390 (Michael Petlan) [1709242] - [tools] perf trace: Use perf_evsel__sc_tp_{uint,ptr} for "id"/"args" handling syscalls:* events (Michael Petlan) [1709242] - [tools] perf trace: Setup struct syscall_tp for syscalls:sys_{enter,exit}_NAME events (Michael Petlan) [1709242] - [tools] perf trace: Allow setting up a syscall_tp struct without a format_field (Michael Petlan) [1709242] - [tools] perf trace: Rename some syscall_tp methods to raw_syscall (Michael Petlan) [1709242] - [tools] perf trace: Use beautifiers on syscalls:sys_enter_ handlers (Michael Petlan) [1709242] - [tools] perf trace: Associate vfs_getname()'ed pathname with fd returned from 'openat' (Michael Petlan) [1709242] - [tools] perf trace: Do not require --no-syscalls to suppress strace like output (Michael Petlan) [1709242] - [tools] perf bpf: Include uapi/linux/bpf.h from the 'perf trace' script's bpf.h (Michael Petlan) [1709242] - [tools] perf tools: Allow overriding MAX_NR_CPUS at compile time (Michael Petlan) [1709242] - [tools] perf bpf: Show better message when failing to load an object (Michael Petlan) [1709242] - [tools] perf list: Unify metric group description format with PMU event description (Michael Petlan) [1709242] - [tools] perf cs-etm: Generate branch sample for CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Generate branch sample when receiving a CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Support dummy address value for CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Fix start tracing packet handling (Michael Petlan) [1709242] - [tools] perf build: Fix installation directory for eBPF (Michael Petlan) [1709242] - [tools] perf c2c report: Fix crash for empty browser (Michael Petlan) [1709242] - [tools] perf tests: Fix indexing when invoking subtests (Michael Petlan) [1709242] - [tools] perf trace: Beautify the AF_INET & AF_INET6 'socket' syscall 'protocol' args (Michael Petlan) [1709242] - [tools] perf trace beauty: Add beautifiers for 'socket''s 'protocol' arg (Michael Petlan) [1709242] - [tools] perf trace beauty: Do not print NULL strarray entries (Michael Petlan) [1709242] - [tools] perf beauty: Add a generator for IPPROTO_ socket's protocol constants (Michael Petlan) [1709242] - [tools] tools include uapi: Grab a copy of linux/in.h (Michael Petlan) [1709242] - [tools] perf tests: Fix complex event name parsing (Michael Petlan) [1709242] - [tools] perf evlist: Fix error out while applying initial delay and LBR (Michael Petlan) [1709242] - [tools] perf trace beauty: Default header_dir to cwd to work without parms (Michael Petlan) [1709242] - [tools] perf test: Fix subtest number when showing results (Michael Petlan) [1709242] - [tools] perf stat: Get rid of extra clock display function (Michael Petlan) [1709242] - [tools] perf tools: Use perf_evsel__match instead of open coded equivalent (Michael Petlan) [1709242] - [tools] perf tools: Fix struct comm_str removal crash (Michael Petlan) [1709242] - [tools] perf machine: Use last_match threads cache only in single thread mode (Michael Petlan) [1709242] - [tools] perf machine: Add threads__set_last_match function (Michael Petlan) [1709242] - [tools] perf machine: Add threads__get_last_match function (Michael Petlan) [1709242] - [tools] perf tools: Synthesize GROUP_DESC feature in pipe mode (Michael Petlan) [1709242] - [tools] perf script: Show correct offsets for DWARF-based unwinding (Michael Petlan) [1709242] - [tools] perf trace arm64: Use generated syscall table (Michael Petlan) [1709242] - [tools] perf arm64: Generate system call table from asm/unistd.h (Michael Petlan) [1709242] - [tools] tools include: Grab copies of arm64 dependent unistd.h files (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh when event exists (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh to ensure cleanups (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 (Michael Petlan) [1709242] - [tools] perf powerpc: Fix callchain ip filtering when return address is in a register (Michael Petlan) [1709242] - [tools] perf powerpc: Fix callchain ip filtering (Michael Petlan) [1709242] - [tools] perf list: Add missing documentation for --desc and --debug options (Michael Petlan) [1709242] - [tools] perf stat: Add transaction flag (-T) support for s390 (Michael Petlan) [1709242] - [tools] perf json: Add s390 transaction counter definition (Michael Petlan) [1709242] - [tools] perf list: Add s390 support for detailed PMU event description (Michael Petlan) [1709242] - [tools] Revert "perf list: Add s390 support for detailed/verbose PMU event description" (Michael Petlan) [1709242] - [tools] perf cs-etm: Bail out immediately for instruction sample failure (Michael Petlan) [1709242] - [tools] perf cs-etm: Introduce invalid address macro (Michael Petlan) [1709242] - [tools] perf hists: Clarify callchain disabling when available (Michael Petlan) [1709242] - [tools] perf tests: Check that complex event name is parsed correctly (Michael Petlan) [1709242] - [arm64] arm64: perf: Reject stand-alone CHAIN events for PMUv3 (Michael Petlan) [1709242] - [x86] perf/x86/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf events (Michael Petlan) [1709242] - [x86] perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX (Michael Petlan) [1709242] - [kernel] perf/ring_buffer: Prevent concurent ring buffer access (Michael Petlan) [1709242] - [x86] perf/x86/intel/uncore: Use boot_cpu_data.phys_proc_id instead of hardcorded physical package ID 0 (Michael Petlan) [1709242] - [kernel] perf/core: Fix perf_pmu_unregister() locking (Michael Petlan) [1709242] - [kernel] perf/core: Add sanity check to deal with pinned event failure (Michael Petlan) [1709242] - [kernel] perf/core: Force USER_DS when recording user stack data (Michael Petlan) [1709242] - [include] perf/UAPI: Clearly mark __PERF_SAMPLE_CALLCHAIN_EARLY as internal use (Michael Petlan) [1709242] - [x86] perf/x86/intel: Add support/quirk for the MISPREDICT bit on Knights Landing CPUs (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Simplify breakpoint enable in perf_event_modify_breakpoint (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Enable breakpoint in modify_user_hw_breakpoint (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Remove superfluous bp->attr.disabled = 0 (Michael Petlan) [1709242] - [kernel] arm64: perf: Add cap_user_time aarch64 (Michael Petlan) [1709242] - [include] arm_pmu: Add support for 64bit event counters (Michael Petlan) [1709242] - [x86] perf/x86/intel: Support Extended PEBS for Goldmont Plus (Michael Petlan) [1709242] - [x86] perf/x86/intel/ds: Handle PEBS overflow for fixed counters (Michael Petlan) [1709242] - [x86] perf/x86/intel: Support PEBS on fixed counters (Michael Petlan) [1709242] - [kernel] perf, tools: Use correct articles in comments (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Clean up and consolidate modify_user_hw_breakpoint_check() (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Pass new breakpoint type to modify_breakpoint_slot() (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Remove default hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [arm64] perf/arch/arm64: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [powerpc] perf/arch/powerpc: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [x86] perf/arch/x86: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [arm64] perf/hw_breakpoint: Pass arch breakpoint struct to arch_check_bp_in_kernelspace() (Michael Petlan) [1709242] - [kernel] perf/core: Change perf_mmap_fault() return type to 'vm_fault_t' (Michael Petlan) [1709242] - [x86] perf/x86/intel/lbr: Optimize context switches for the LBR call stack (Michael Petlan) [1709242] - [netdrv] cnic: Refactor code and mark expected switch fall-through (Nilesh Javali) [1665302] - [netdrv] cnic: remove use of VLAN_TAG_PRESENT (Nilesh Javali) [1665302] - [netdrv] cnic: use kvzalloc to allocate memory for csk_tbl (Nilesh Javali) [1665302] - [netdrv] cnic: remove redundant pointer req and variable func (Nilesh Javali) [1665302] - [scsi] drivers: Remove useless trailing comments from mmiowb() invocations (Nilesh Javali) [1665307] - [scsi] scsi: qedf: remove set but not used variables (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Update the driver version to 8.37.25.20 (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add return value to log message if scsi_add_host fails (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Print fcport information on wait for upload timeout (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check the return value of start_xmit (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Log message if scsi_add_host fails (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for fcoe_libfc_config failure (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add comment to display logging levels (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add port_id for fcport into initiate_cleanup debug message (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add LBA to underrun debug messages (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Print scsi_cmd backpointer in good completion path if the command is still being used (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add driver state to 'driver_stats' debugfs node (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Change MSI-X load error message (Nilesh Javali) [1665301] - [scsi] scsi: qedf: remove memset/memcpy to nfunc and use func instead (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Remove set but not used variable 'fr_len' (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Update the driver version to 8.37.25.19 (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Fix lport may be used uninitialized warning (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correctly handle refcounting of rdata (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Cleanup rrq_work after QEDF_CMD_OUTSTANDING is cleared (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for tm_flags instead of cmd_type during cleanup (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add a flag to help debugging io_req which could not be cleaned (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Don't send ABTS for under run scenario (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Don't queue anything if upload is in progress (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check both the FCF and fabric ID before servicing clear virtual link (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fc_rport_priv reference counting fixes (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing return in qedf_scsi_done() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Wait for upload and link down processing during soft ctx reset (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add additional checks for io_req->sc_cmd validity (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fixup bit operations (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fixup locking in qedf_restart_rport() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: missing kref_put in qedf_xmit() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for link state before processing LL2 packets and send fipvlan retries (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing fc_disc_init call after allocating lport (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correct the memory barriers in qedf_ring_doorbell (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Use a separate completion for cleanup commands (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Modify abort and tmf handler to handle edge condition and flush (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Modify flush routine to handle all I/Os and TMF (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Simplify s/g list mapping (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload check (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correct xid range overlap between offloaded requests and libfc requests (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Do not retry ELS request if qedf_alloc_cmd fails (Nilesh Javali) [1665301] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Nilesh Javali) [1665301] - [scsi] scsi: stop setting up request->special (Nilesh Javali) [1665301] - [scsi] scsi: qedf: no need to check return value of debugfs_create functions (Nilesh Javali) [1665301] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: NULL check before some freeing functions is not needed (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fully convert to the generic DMA API (Nilesh Javali) [1665301] - [scsi] scsi: qedi: Adjust termination and offload ramrod timers (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Abort ep termination if offload not scheduled (Nilesh Javali) [1665300] - [scsi] scsi: qedi: fix spelling mistake "oflload" -> "offload" (Nilesh Javali) [1665300] - [scsi] scsi: qedi: remove declaration of nvm_image from stack (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Remove set but not used variable 'cls_sess' (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Add ep_state for login completion on un-reachable targets (Nilesh Javali) [1665300] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Update driver version to 8.33.0.21 (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Move LL2 producer index processing in BH. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: add module param to set ping packet size (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Add packet filter in light L2 Rx path. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Check for session online before getting iSCSI TLV data. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Replace PAGE_SIZE with QEDI_PAGE_SIZE (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Fix spelling mistake "OUSTANDING" -> "OUTSTANDING" (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Cleanup redundant QEDI_PAGE_SIZE macro definition (Nilesh Javali) [1665300] - [scsi] scsi: qedi: fully convert to the generic DMA API (Nilesh Javali) [1665300] - [x86] x86/kdump: Fall back to reserve high crashkernel memory (Pingfan Liu) [1682984] - [x86] x86/kdump: Have crashkernel=X reserve under 4G by default (Pingfan Liu) [1682984] - [x86] Revert "[x86] x86/kdump: make the behavior of crashkernel=X consistent with kaslr" (Pingfan Liu) [1682984] - [scsi] scsi: core: avoid pre-allocating big SGL for data (Ewan Milne) [1698297] - [scsi] scsi: core: avoid pre-allocating big SGL for protection information (Ewan Milne) [1698297] - [nvme] scsi: lib/sg_pool.c: improve APIs for allocating sg pool (Ewan Milne) [1698297] - [kvm] KVM: PPC: Book3S HV: Save/restore vrsave register in kvmhv_p9_guest_entry() (Suraj Jitindar Singh) [1700272] - [fs] ext4: avoid kernel warning when writing the superblock to a dead device (Lukas Czerner) [1695021] - [fs] ext4: cond_resched in work-heavy group loops (Lukas Czerner) [1698815] - [fs] ext4: ignore e_value_offs for xattrs with value-in-ea-inode (Lukas Czerner) [1698815] - [fs] ext4: protect journal inode's blocks using block_validity (Lukas Czerner) [1698815] - [fs] ext4: use BUG() instead of BUG_ON(1) (Lukas Czerner) [1698815] - [fs] jbd2: check superblock mapped prior to committing (Lukas Czerner) [1698815] - [fs] ext4: remove incorrect comment for NEXT_ORPHAN() (Lukas Czerner) [1698815] - [fs] ext4: make sanity check in mballoc more strict (Lukas Czerner) [1698815] - [fs] ext4: fix use-after-free race with debug_want_extra_isize (Lukas Czerner) [1698815] - [fs] ext4: fix ext4_show_options for file systems w/o journal (Lukas Czerner) [1698815] - [fs] ext4: actually request zeroing of inode table after grow (Lukas Czerner) [1698815] - [fs] Revert "ext4: use ext4_write_inode() when fsyncing w/o a journal" (Lukas Czerner) [1698815] - [fs] ext4: fix some error pointer dereferences (Lukas Czerner) [1698815] - [fs] ext4: fix special inode number checks in __ext4_iget() (Lukas Czerner) [1698815] - [fs] ext4: prohibit fstrim in norecovery mode (Lukas Czerner) [1698815] - [fs] ext4: cleanup bh release code in ext4_ind_remove_space() (Lukas Czerner) [1698815] - [fs] ext4: brelse all indirect buffer in ext4_ind_remove_space() (Lukas Czerner) [1698815] - [fs] ext4: report real fs size after failed resize (Lukas Czerner) [1698815] - [fs] ext4: add missing brelse() in add_new_gdb_meta_bg() (Lukas Czerner) [1698815] - [fs] ext4: remove useless ext4_pin_inode() (Lukas Czerner) [1698815] - [fs] ext4: avoid panic during forced reboot (Lukas Czerner) [1698815] - [fs] ext4: fix data corruption caused by unaligned direct AIO (Lukas Czerner) [1698815] - [fs] ext4: fix NULL pointer dereference while journal is aborted (Lukas Czerner) [1698815] - [fs] jbd2: jbd2_get_transaction does not need to return a value (Lukas Czerner) [1698815] - [fs] jbd2: fix invalid descriptor block checksum (Lukas Czerner) [1698815] - [fs] ext4: fix bigalloc cluster freeing when hole punching under load (Lukas Czerner) [1698815] - [fs] ext4: add sysfs attr /sys/fs/ext4//journal_task (Lukas Czerner) [1698815] - [fs] ext4: Change debugging support help prefix from EXT4 to Ext4 (Lukas Czerner) [1698815] - [fs] ext4: fix compile error when using BUFFER_TRACE (Lukas Czerner) [1698815] - [fs] jbd2: fix compile warning when using JBUFFER_TRACE (Lukas Czerner) [1698815] - [fs] ext4: annotate more implicit fall throughs (Lukas Czerner) [1698815] - [fs] ext4: annotate implicit fall throughs (Lukas Czerner) [1698815] - [fs] ext4: don't update s_rev_level if not required (Lukas Czerner) [1698815] - [fs] jbd2: fold jbd2_superblock_csum_{verify,set} into their callers (Lukas Czerner) [1698815] - [fs] jbd2: fix race when writing superblock (Lukas Czerner) [1698815] - [fs] ext4: fix crash during online resizing (Lukas Czerner) [1698815] - [fs] ext4: disallow files with EXT4_JOURNAL_DATA_FL from EXT4_IOC_SWAP_BOOT (Lukas Czerner) [1698815] - [fs] ext4: add mask of ext4 flags to swap (Lukas Czerner) [1698815] - [fs] ext4: update quota information while swapping boot loader inode (Lukas Czerner) [1698815] - [fs] ext4: cleanup pagecache before swap i_data (Lukas Czerner) [1698815] - [fs] ext4: fix check of inode in swap_inode_boot_loader (Lukas Czerner) [1698815] - [fs] ext4: unlock unused_pages timely when doing writeback (Lukas Czerner) [1698815] - [fs] ext4: cleanup clean_bdev_aliases() calls (Lukas Czerner) [1698815] - [fs] jbd2: discard dirty data when forgetting an un-journalled buffer (Lukas Czerner) [1698815] - [fs] jbd2: clear dirty flag when revoking a buffer from an older transaction (Lukas Czerner) [1698815] - [fs] ext4: replace opencoded i_writecount usage with inode_is_open_for_write() (Lukas Czerner) [1698815] - [fs] jbd2: fix deadlock while checkpoint thread waits commit thread to finish (Lukas Czerner) [1698815] - [fs] ext4: use IS_ENCRYPTED() to check encryption status (Lukas Czerner) [1698815] - [fs] ext4: track writeback errors using the generic tracking infrastructure (Lukas Czerner) [1698815] - [fs] ext4: use ext4_write_inode() when fsyncing w/o a journal (Lukas Czerner) [1698815] - [fs] ext4: fix a potential fiemap/page fault deadlock w/ inline_data (Lukas Czerner) [1698815] - [fs] ext4: make sure enough credits are reserved for dioread_nolock writes (Lukas Czerner) [1698815] - [fs] ext4: check for shutdown and r/o file system in ext4_write_inode() (Lukas Czerner) [1698815] - [fs] ext4: force inode writes when nfsd calls commit_metadata() (Lukas Czerner) [1698815] - [fs] ext4: avoid declaring fs inconsistent due to invalid file handles (Lukas Czerner) [1698815] - [fs] ext4: include terminating u32 in size of xattr entries when expanding inodes (Lukas Czerner) [1698815] - [fs] ext4: compare old and new mode before setting update_mode flag (Lukas Czerner) [1698815] - [fs] ext4: fix EXT4_IOC_GROUP_ADD ioctl (Lukas Czerner) [1698815] - [fs] ext4: hard fail dax mount on unsupported devices (Lukas Czerner) [1698815] - [fs] ext4: remove redundant condition check (Lukas Czerner) [1698815] - [fs] jbd2: clean up indentation issue, replace spaces with tab (Lukas Czerner) [1698815] - [fs] ext4: clean up indentation issues, remove extraneous tabs (Lukas Czerner) [1698815] - [fs] ext4: missing unlock/put_page() in ext4_try_to_write_inline_data() (Lukas Czerner) [1698815] - [fs] ext4: fix possible use after free in ext4_quota_enable (Lukas Czerner) [1698815] - [fs] jbd2: avoid long hold times of j_state_lock while committing a transaction (Lukas Czerner) [1698815] - [fs] ext4: add ext4_sb_bread() to disambiguate ENOMEM cases (Lukas Czerner) [1698815] - [fs] ext4: remove unneeded brelse call in ext4_xattr_inode_update_ref() (Lukas Czerner) [1698815] - [fs] ext4: fix use-after-free race in ext4_remount()'s error path (Lukas Czerner) [1698815] - [fs] ext4: don't open-code ERR_CAST (Lukas Czerner) [1698815] - [fs] ext4: cache NULL when both default_acl and acl are NULL (Lukas Czerner) [1698815] - [fs] ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR (Lukas Czerner) [1698815] - [fs] ext4: fix setattr project check in fssetxattr ioctl (Lukas Czerner) [1698815] - [fs] ext4: convert fault handler to use vm_fault_t type (Lukas Czerner) [1698815] - [fs] ext4: fix EXT4_IOC_SWAP_BOOT (Lukas Czerner) [1698815] - [fs] ext4: fix argument checking in EXT4_IOC_MOVE_EXT (Lukas Czerner) [1698815] - [fs] ext4: fix reserved cluster accounting at page invalidation time (Lukas Czerner) [1698815] - [fs] ext4: adjust reserved cluster count when removing extents (Lukas Czerner) [1698815] - [fs] ext4: reduce reserved cluster count by number of allocated clusters (Lukas Czerner) [1698815] - [fs] ext4: fix reserved cluster accounting at delayed write time (Lukas Czerner) [1698815] - [fs] ext4: add new pending reservation mechanism (Lukas Czerner) [1698815] - [fs] ext4: generalize extents status tree search functions (Lukas Czerner) [1698815] - [fs] ext4: readpages() should submit IO as read-ahead (Lukas Czerner) [1698815] - [fs] ext4: improve code readability in ext4_iget() (Lukas Czerner) [1698815] - [fs] ext4: use swap macro in mext_page_double_lock (Lukas Czerner) [1698815] - [fs] ext4: fix warning message in ext4_enable_quotas() (Lukas Czerner) [1698815] - [fs] ext4: super: extend timestamps to 40 bits (Lukas Czerner) [1698815] - [fs] jbd2: replace current_kernel_time64 with ktime equivalent (Lukas Czerner) [1698815] - [fs] ext4: use timespec64 for all inode times (Lukas Czerner) [1698815] - [fs] ext4: use ktime_get_real_seconds for i_dtime (Lukas Czerner) [1698815] - [fs] ext4: use 64-bit timestamps for mmp_time (Lukas Czerner) [1698815] - [scsi] scsi: smartpqi: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Don Brace) [1665565] - [scsi] scsi: smartpqi: bump driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add spdx (Don Brace) [1665565] - [scsi] scsi: smartpqi: update copyright (Don Brace) [1665565] - [scsi] scsi: smartpqi: add H3C controller IDs (Don Brace) [1665565] - [scsi] scsi: smartpqi: increase LUN reset timeout (Don Brace) [1665565] - [scsi] scsi: smartpqi: Reporting 'logical unit failure' (Don Brace) [1665565] - [scsi] scsi: smartpqi_init: fix boolean expression in pqi_device_remove_start (Don Brace) [1665565] - [scsi] scsi: smartpqi: call pqi_free_interrupts() in pqi_shutdown() (Don Brace) [1665565] - [scsi] scsi: smartpqi: fix build warnings (Don Brace) [1665565] - [scsi] scsi: smartpqi: update driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add ofa support (Don Brace) [1665565] - [scsi] scsi: smartpqi: increase fw status register read timeout (Don Brace) [1665565] - [scsi] scsi: smartpqi: bump driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add smp_utils support (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct lun reset issues (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct volume status (Don Brace) [1665565] - [scsi] scsi: smartpqi: do not offline disks for transient did no connect conditions (Don Brace) [1665565] - [scsi] scsi: smartpqi: allow for larger raid maps (Don Brace) [1665565] - [scsi] scsi: smartpqi: check for null device pointers (Don Brace) [1665565] - [scsi] scsi: smartpqi: enhance numa node detection (Don Brace) [1665565] - [scsi] scsi: smartpqi: wake up drives after os resumes from suspend (Don Brace) [1665565] - [scsi] scsi: smartpqi: fix disk name mount point (Don Brace) [1665565] - [scsi] scsi: smartpqi: add h3c ssid (Don Brace) [1665565] - [scsi] scsi: smartpqi: add sysfs attributes (Don Brace) [1665565] - [scsi] scsi: smartpqi: refactor sending controller raid requests (Don Brace) [1665565] - [scsi] scsi: smartpqi: turn off lun data caching for ptraid (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct host serial num for ssa (Don Brace) [1665565] - [scsi] scsi: smartpqi: add no_write_same for logical volumes (Don Brace) [1665565] - [scsi] scsi: smartpqi: Add retries for device reset (Don Brace) [1665565] - [scsi] scsi: smartpqi: add support for PQI Config Table handshake (Don Brace) [1665565] - [scsi] scsi: smartpqi: fully convert to the generic DMA API (Don Brace) [1665565] - [net] rtnetlink: always put IFLA_LINK for links with a link-netnsid (Sabrina Dubroca) [1711933] - [net] ipv6: add inet6_fill_args (Ivan Vecera) [1711956] - [net] ipv4: add inet_fill_args (Ivan Vecera) [1711956] - [net] rtnetlink: s/IFLA_IF_NETNSID/IFLA_TARGET_NETNSID/g (Ivan Vecera) [1711956] - [include] if_link: add IFLA_TARGET_NETNSID alias (Ivan Vecera) [1711956] - [net] rtnetlink: move type calculation out of loop (Ivan Vecera) [1711956] - [net] ipv6: enable IFA_TARGET_NETNSID for RTM_GETADDR (Ivan Vecera) [1711956] - [net] ipv4: enable IFA_TARGET_NETNSID for RTM_GETADDR (Ivan Vecera) [1711956] - [include] if_addr: add IFA_TARGET_NETNSID (Ivan Vecera) [1711956] - [net] rtnetlink: add rtnl_get_net_ns_capable() (Ivan Vecera) [1711956] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Fix untagged test (Hangbin Liu) [1710283] - [tools] selftests: forwarding: Tweak tc filters for mirror-to-gretap tests (Hangbin Liu) [1710283] - [tools] selftests: forwarding: lib: Avoid trapping soft devices (Hangbin Liu) [1710283] - [tools] selftests: pmtu: maximum MTU for vti4 is 2^16-1-20 (Hangbin Liu) [1704659] - [net] sched: red: inform offloads about harddrop setting (Ivan Vecera) [1710999] - [net] tls: fix copy to fragments in reencrypt (Ivan Vecera) [1710366] - [net] tls: don't copy negative amounts of data in reencrypt (Ivan Vecera) [1710366] - [net] tls: don't leak IV and record seq when offload fails (Ivan Vecera) [1710366] - [net] tls: avoid potential deadlock in tls_set_device_offload_rx() (Ivan Vecera) [1710366] - [net] tls: prevent bad memory access in tls_is_sk_tx_device_offloaded() (Ivan Vecera) [1710366] - [net] tls: Combined memory allocation for decryption request (Ivan Vecera) [1710366] - [net] tls: Skip zerocopy path for ITER_KVEC (Ivan Vecera) [1710366] - [net] tls: Fix copy-paste error in tls_device_reencrypt (Ivan Vecera) [1710366] - [net] tls: Add rx inline crypto offload (Ivan Vecera) [1710366] - [net] tls: Fill software context without allocation (Ivan Vecera) [1710366] - [net] tls: Split tls_sw_release_resources_rx (Ivan Vecera) [1710366] - [net] tls: Split decrypt_skb to two functions (Ivan Vecera) [1710366] - [net] tcp: Don't coalesce decrypted and encrypted SKBs (Ivan Vecera) [1710366] - [include] Add TLS rx resync NDO (Ivan Vecera) [1710366] - [net] Add TLS RX offload feature (Ivan Vecera) [1710366] - [net] Add decrypted field to skb (Ivan Vecera) [1710366] - [net] tls: Use aead_request_alloc/free for request alloc/free (Ivan Vecera) [1710366] - [net] tls: Refactor tls_offload variable names (Ivan Vecera) [1703389]- [netdrv] qede: use ethtool_rx_flow_rule() to remove duplicated parser code (Manish Chopra) [1663274] - [netdrv] qede: place ethtool_rx_flow_spec after code after TC flower codebase (Manish Chopra) [1663274] - [netdrv] drivers: net: use flow action infrastructure (Manish Chopra) [1663274] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Manish Chopra) [1663274] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Manish Chopra) [1663274] - [netdrv] qede: Populate mbi version in ethtool driver query data. (Manish Chopra) [1663274] - [netdrv] qed: Define new MF bit for no_vlan config (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "faspath" -> "fastpath" (Manish Chopra) [1663274] - [netdrv] qed: Fix the DORQ's attentions handling (Manish Chopra) [1663274] - [netdrv] qed: Fix missing DORQ attentions (Manish Chopra) [1663274] - [netdrv] qed: Fix the doorbell address sanity check (Manish Chopra) [1663274] - [netdrv] qed: Delete redundant doorbell recovery types (Manish Chopra) [1663274] - [netdrv] qede: fix write to free'd pointer error and double free of ptp (Manish Chopra) [1663274] - [netdrv] qede: Fix internal loopback failure with jumbo mtu configuration (Manish Chopra) [1663274] - [netdrv] qed: Read device port count from the shmem (Manish Chopra) [1663274] - [netdrv] qed: Fix iWARP syn packet mac address validation. (Manish Chopra) [1663274] - [netdrv] qed: Fix iWARP buffer size provided for syn packet processing. (Manish Chopra) [1663274] - [netdrv] qed: fix indentation issue with statements in an if-block (Manish Chopra) [1663274] - [netdrv] qede: Add ethtool interface for SmartAN query. (Manish Chopra) [1663274] - [netdrv] qed: Add API for SmartAN query. (Manish Chopra) [1663274] - [netdrv] qed*: Advance drivers version to 8.37.0.20 (Manish Chopra) [1663274] - [netdrv] qed: Change verbosity for coalescing message. (Manish Chopra) [1663274] - [netdrv] qede: Fix system crash on configuring channels. (Manish Chopra) [1663274] - [netdrv] qed: Consider TX tcs while deriving the max num_queues for PF. (Manish Chopra) [1663274] - [netdrv] qed: Assign UFP TC value to vlan priority in UFP mode. (Manish Chopra) [1663274] - [netdrv] qed: Fix EQ full firmware assert. (Manish Chopra) [1663274] - [netdrv] qed: Fix stack out of bounds bug (Manish Chopra) [1663274] - [netdrv] qed: Fix system crash in ll2 xmit (Manish Chopra) [1663274] - [netdrv] qed: Fix VF probe failure while FLR (Manish Chopra) [1663274] - [netdrv] qed: Fix LACP pdu drops for VFs (Manish Chopra) [1663274] - [netdrv] qed: Fix bug in tx promiscuous mode settings (Manish Chopra) [1663274] - [netdrv] qede: Error recovery process (Manish Chopra) [1663274] - [netdrv] qed: Add infrastructure for error detection and recovery (Manish Chopra) [1663274] - [netdrv] qed: Revise load sequence to avoid PCI errors (Manish Chopra) [1663274] - [netdrv] qed: Mark expected switch fall-through (Manish Chopra) [1663274] - [include] qed: remove duplicated include from qed_if.h (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: Fix out of bounds index check in query pkey (Manish Chopra) [1663274] - [netdrv] qed: Fix qed_ll2_post_rx_buffer_notify_fw() by adding a write memory barrier (Manish Chopra) [1663274] - [include] qed: Fix qed_chain_set_prod() for PBL chains with non power of 2 page count (Manish Chopra) [1663274] - [infiniband] infiniband/qedr: Potential null ptr dereference of qp (Manish Chopra) [1663274] - [netdrv] qed: Fix an error code qed_ll2_start_xmit() (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "Dispalying" -> "Displaying" (Manish Chopra) [1663274] - [netdrv] qede: Register l2 queues with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Expose the doorbell overflow recovery mechanism to the protocol drivers (Manish Chopra) [1663274] - [netdrv] qed: Register light L2 queues with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Register slowpath queue doorbell with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Use the doorbell overflow recovery mechanism in case of doorbell overflow (Manish Chopra) [1663274] - [netdrv] qed: Add doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qede - Add a statistic for a case where driver drops tx packet due to memory allocation failure. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "attnetion" -> "attention" (Manish Chopra) [1663274] - [netdrv] qed: Add support for MBI upgrade over MFW. (Manish Chopra) [1663274] - [netdrv] qede: Update link status only when interface is ready. (Manish Chopra) [1663274] - [netdrv] qede: Simplify the usage of qede-flags. (Manish Chopra) [1663274] - [netdrv] qed: Display port_id in the UFP debug messages. (Manish Chopra) [1663274] - [netdrv] qed: Fix QM getters to always return a valid pq (Manish Chopra) [1663274] - [netdrv] qed: Fix bitmap_weight() check (Manish Chopra) [1663274] - [netdrv] drivers/net/ethernet/qlogic/qed/qed_rdma.h: fix typo (Manish Chopra) [1663274] - [netdrv] qed: Fix reading wrong value in loop condition (Manish Chopra) [1663274] - [netdrv] qed: Fix rdma_info structure allocation (Manish Chopra) [1663274] - [netdrv] qed: Fix overriding offload_tc by protocols without APP TLV (Manish Chopra) [1663274] - [netdrv] qed: Fix PTT leak in qed_drain() (Manish Chopra) [1663274] - [netdrv] qed: Fix potential memory corruption (Manish Chopra) [1663274] - [netdrv] qed: Fix SPQ entries not returned to pool in error flows (Manish Chopra) [1663274] - [netdrv] qed: Fix blocking/unlimited SPQ entries leak (Manish Chopra) [1663274] - [netdrv] qed: Fix memory/entry leak in qed_init_sp_request() (Manish Chopra) [1663274] - [netdrv] qed: fix link config error handling (Manish Chopra) [1663274] - [netdrv] qed: Fix static checker warning (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "transcevier" -> "transceiver" (Manish Chopra) [1663274] - [netdrv] qed: Prevent link getting down in case of autoneg-off. (Manish Chopra) [1663274] - [netdrv] qede: Check available link modes before link set from ethtool. (Manish Chopra) [1663274] - [netdrv] qed: Add supported link and advertise link to display in ethtool. (Manish Chopra) [1663274] - [netdrv] qed: Added supported transceiver modes, speed capability and board config to HSI. (Manish Chopra) [1663274] - [netdrv] qed: Align local and global PTT to propagate through the APIs. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "Ireelevant" -> "Irrelevant" (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_ooo_submit_tx_buffers (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: Remove enumerated type qed_roce_ll2_tx_dest (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "b_cb_registred" -> "b_cb_registered" (Manish Chopra) [1663274] - [netdrv] qed: Remove set but not used variable 'p_archipelago' (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt (Manish Chopra) [1663274] - [netdrv] qed: Avoid constant logical operation warning in qed_vf_pf_acquire (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor (Manish Chopra) [1663274] - [netdrv] qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_set_tunn_cls_info (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "toogle" -> "toggle" (Manish Chopra) [1663274] - [netdrv] net: qed: list usage cleanup (Manish Chopra) [1663274] - [netdrv] net: qede: Use FIELD_SIZEOF directly instead of reimplementing its function (Manish Chopra) [1663274] - [netdrv] qed: remove duplicated include from qed_cxt.c (Manish Chopra) [1663274] - [netdrv] qed*: Utilize FW 8.37.7.0 (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: remove set but not used variable 'ctx' (Manish Chopra) [1663274] - [netdrv] qed: Lower the severity of a dcbx log message. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "comparsion" -> "comparison" (Manish Chopra) [1663274] - [netdrv] net_sched: remove list_head from tc_action (Manish Chopra) [1663274] - [infiniband] qedr: Add user space support for SRQ (Manish Chopra) [1663274] - [infiniband] qedr: Add support for kernel mode SRQ's (Manish Chopra) [1663274] - [infiniband] qedr: Add wrapping generic structure for qpidr and adjust idr routines. (Manish Chopra) [1663274] - [netdrv] qed/qede: qede_setup_tc() can be static (Manish Chopra) [1663274] - [netdrv] qede: Ingress tc flower offload (drop action) support. (Manish Chopra) [1663274] - [netdrv] qede: Add destination ip based flow profile. (Manish Chopra) [1663274] - [netdrv] qed/qede: Multi CoS support. (Manish Chopra) [1663274] - [netdrv] qede: qede_fp: Mark expected switch fall-through (Manish Chopra) [1663274] - [netdrv] qed: qed_dev: Mark expected switch fall-throughs (Manish Chopra) [1663274] - [netdrv] qed: Add Multi-TC RoCE support (Manish Chopra) [1663274] - [netdrv] qed: Add DCBX API - qed_dcbx_get_priority_tc() (Manish Chopra) [1663274] - [netdrv] qed: Make some functions static (Manish Chopra) [1663274] - [netdrv] qed: remove redundant functions qed_get_cm_pq_idx_rl (Manish Chopra) [1663274] - [netdrv] qed: remove redundant functions qed_set_gft_event_id_cm_hdr (Manish Chopra) [1663274] - [netdrv] qede: Add driver callbacks for eeprom module query. (Manish Chopra) [1663274] - [netdrv] qed: Add qed APIs for PHY module query. (Manish Chopra) [1663274] - [netdrv] qed: remove redundant pointer 'name' (Manish Chopra) [1663274] - [iommu] iommu: Don't print warning when IOMMU driver only supports unmanaged domains (Jerry Snitselaar) [1707616 1694210 1689183] - [iommu] iommu/vt-d: Check capability before disabling protected memory (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: fix sg->dma_address for sg->offset bigger than PAGE_SIZE (Jerry Snitselaar) [1694210 1694029] - [iommu] iommu/amd: Fix NULL dereference bug in match_hid_uid (Jerry Snitselaar) [1677737 1694210] - [iommu] iommu/vt-d: Fix NULL pointer reference in intel_svm_bind_mm() (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Remove unnecessary WARN_ON() (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Check identity map for hot-added devices (Jerry Snitselaar) [1694210] - [iommu] iommu/dmar: Fix buffer overflow during PCI bus notification (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Fix memory leak in intel_iommu_put_resv_regions() (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: Fix amd_iommu=force_isolation (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Handle domain agaw being less than iommu agaw (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Use memunmap to free memremap (Jerry Snitselaar) [1694210] - [iommu] amd/iommu: Fix Guest Virtual APIC Log Tail Address Register (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Fix NULL pointer dereference in prq_event_thread() (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: Return devid as alias for ACPI HID devices (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Free irqs in shutdown handler (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Move irq request past pm_runtime_enable (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Handle errors returned from PM framework (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: make sure TLB to be flushed before IOVA freed (Jerry Snitselaar) [1694210] - [idle] intel_idle: Get rid of custom ICPU() macro (Alexander Beregalov) [1710976] - [security] selinux: do not report error on connect(AF_UNSPEC) (Ondrej Mosnacek) [1707828] - [security] selinux: Check address length before reading address family (Ondrej Mosnacek) [1707828] - [scsi] scsi: core: add new RDAC LENOVO/DE_Series device (Maurizio Lombardi) [1700912] - [infiniband] i40iw: Avoid panic when handling the inetdev event (Stefan Assmann) [1659180] - [infiniband] cross-tree: phase out dma_zalloc_coherent() (Stefan Assmann) [1659180] - [infiniband] infiniband: prefix header search paths with $(srctree)/ (Stefan Assmann) [1659180] - [infiniband] i40iw: remove use of VLAN_TAG_PRESENT (Stefan Assmann) [1659180] - [infiniband] RDMA/i40iw: Fix incorrect iterator type (Stefan Assmann) [1659180] - [infiniband] infiniband: i40iw, nes: don't use wall time for TCP sequence numbers (Stefan Assmann) [1659180] - [infiniband] i40iw: Reorganize acquire/release of locks in i40iw_manage_apbvt (Stefan Assmann) [1659180] - [netdrv] i40e: Changed maximum supported FW API version to 1.8 (Stefan Assmann) [1659174] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Stefan Assmann) [1659174] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Stefan Assmann) [1659174] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Stefan Assmann) [1659174] - [netdrv] drivers: net: remove inclusion when not needed (Stefan Assmann) [1659174] - [netdrv] i40e: Memory leak in i40e_config_iwarp_qvlist (Stefan Assmann) [1659162] - [netdrv] i40e: Fix of memory leak and integer truncation in i40e_virtchnl.c (Stefan Assmann) [1659162] - [netdrv] i40e: Use struct_size() in kzalloc() (Stefan Assmann) [1659162] - [netdrv] i40e: Revert ShadowRAM checksum calculation change (Stefan Assmann) [1659162] - [netdrv] i40e: missing input validation on VF message handling by the PF (Stefan Assmann) [1659162] - [netdrv] i40e: Add support for X710 B/P & SFP+ cards (Stefan Assmann) [1659162] - [netdrv] i40e: Wrong truncation from u16 to u8 (Stefan Assmann) [1659162] - [netdrv] i40e: add num_vectors checker in iwarp handler (Stefan Assmann) [1659162] - [netdrv] i40e: Fix the typo in adding 40GE KR4 mode (Stefan Assmann) [1659162] - [netdrv] i40e: Setting VF to VLAN 0 requires restart (Stefan Assmann) [1659162] - [netdrv] i40e: add new pci id for X710/XXV710 N3000 cards (Stefan Assmann) [1659162] - [netdrv] i40e: VF's promiscuous attribute is not kept (Stefan Assmann) [1659162] - [netdrv] i40e: Introduce recovery mode support (Stefan Assmann) [1659162] - [netdrv] i40e: print PCI vendor and device ID during probe (Stefan Assmann) [1659162] - [netdrv] i40e: fix misleading message about promisc setting on un-trusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: update version number (Stefan Assmann) [1659162] - [netdrv] i40e: remove out-of-range comparisons in i40e_validate_cloud_filter (Stefan Assmann) [1659162] - [netdrv] i40e: Further implementation of LLDP (Stefan Assmann) [1659162] - [netdrv] i40e: Report advertised link modes on 40GBase_LR4, CR4 and fibre (Stefan Assmann) [1659162] - [netdrv] i40e: ShadowRAM checksum calculation change (Stefan Assmann) [1659162] - [netdrv] i40e: remove error msg when vf with port vlan tries to remove vlan 0 (Stefan Assmann) [1659162] - [netdrv] i40e: change behavior on PF in response to MDD event (Stefan Assmann) [1659162] - [netdrv] i40e: Fix for allowing too many MDD events on VF (Stefan Assmann) [1659162] - [netdrv] i40e: Fix misleading error message (Stefan Assmann) [1659162] - [netdrv] i40e: Able to add up to 16 MAC filters on an untrusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: Report advertised link modes on 40GBASE_SR4 (Stefan Assmann) [1659162] - [netdrv] i40e: The driver now prints the API version in error message (Stefan Assmann) [1659162] - [netdrv] i40e: Changed maximum supported FW API version to 1.8 (Stefan Assmann) [1659162] - [netdrv] i40e: Remove misleading messages for untrusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: Update i40e_init_dcb to return correct error (Stefan Assmann) [1659162] - [netdrv] i40e: Fix for 10G ports LED not blinking (Stefan Assmann) [1659162] - [netdrv] i40e: save PTP time before a device reset (Stefan Assmann) [1659162] - [netdrv] i40e: don't allow changes to HW VLAN stripping on active port VLANs (Stefan Assmann) [1659162] - [netdrv] i40e: Implement DDP support in i40e driver (Stefan Assmann) [1659162] - [netdrv] i40e: Queues are reserved despite "Invalid argument" error (Stefan Assmann) [1659162] - [netdrv] i40e: add tracking of AF_XDP ZC state for each queue pair (Stefan Assmann) [1659162] - [netdrv] i40e: move i40e_xsk_umem function (Stefan Assmann) [1659162] - [netdrv] i40e: fix WoL support check (Stefan Assmann) [1659162] - [netdrv] i40e: fix i40e_ptp_adjtime when given a negative delta (Stefan Assmann) [1659162] - [netdrv] i40e: fix XDP_REDIRECT/XDP xmit ring cleanup race (Stefan Assmann) [1659162] - [netdrv] i40e: fix potential RX buffer starvation for AF_XDP (Stefan Assmann) [1659162] - [netdrv] net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Stefan Assmann) [1659162] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Stefan Assmann) [1659162] - [netdrv] i40e: clean up several indentation issues (Stefan Assmann) [1659162] - [netdrv] i40e: increase indentation (Stefan Assmann) [1659162] - [netdrv] i40e: update version number (Stefan Assmann) [1659162] - [netdrv] i40e: remove debugfs tx_timeout support (Stefan Assmann) [1659162] - [netdrv] i40e: check queue pairs num in config queues handler (Stefan Assmann) [1659162] - [netdrv] i40e: Change unmatched function types (Stefan Assmann) [1659162] - [netdrv] i40e: Add support FEC configuration for Fortville 25G (Stefan Assmann) [1659162] - [netdrv] i40e: Limiting RSS queues to CPUs (Stefan Assmann) [1659162] - [netdrv] i40e: Remove umem from VSI (Stefan Assmann) [1659162] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Stefan Assmann) [1659162] - [netdrv] i40e: extend PTP gettime function to read system clock (Stefan Assmann) [1659162] - [netdrv] i40e: DRY rx_ptype handling code (Stefan Assmann) [1659162] - [netdrv] i40e: fix kerneldoc for xsk methods (Stefan Assmann) [1659162] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Stefan Assmann) [1659162] - [netdrv] i40e: suppress bogus error message (Stefan Assmann) [1659162] - [netdrv] i40e: Allow disabling FW LLDP on X722 devices (Stefan Assmann) [1659162] - [netdrv] i40e: update driver version (Stefan Assmann) [1659162] - [netdrv] i40e: Protect access to VF control methods (Stefan Assmann) [1659162] - [netdrv] i40e: Replace strncpy with strlcpy to ensure null termination (Stefan Assmann) [1659162] - [netdrv] i40e: Add capability flag for stopping FW LLDP (Stefan Assmann) [1659162] - [netdrv] i40e: Use a local variable for readability (Stefan Assmann) [1659162] - [netdrv] i40e: Replace spin_is_locked() with lockdep (Stefan Assmann) [1659162] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Stefan Assmann) [1659162] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Stefan Assmann) [1659162] - [netdrv] drivers: net: remove inclusion when not needed (Stefan Assmann) [1659162] - [netdrv] i40e: Remove unnecessary print statement (Stefan Assmann) [1659162] - [netdrv] i40e: Use proper enum in i40e_ndo_set_vf_link_state (Stefan Assmann) [1659162] - [nvme] nvmet: ignore EOPNOTSUPP for discard (Ewan Milne) [1696369] - [tools] tools: bpftool: fix potential NULL pointer dereference in do_load (Ivan Vecera) [1708560] - [tools] tools lib bpf: Provide wrapper for strerror_r to build in !_GNU_SOURCE systems (Ivan Vecera) [1708560] - [tools] libbpf: Remove the duplicate checking of function storage (Ivan Vecera) [1708560] - [tools] bpf: fix build error in libbpf with EXTRA_CFLAGS="-Wp, -D_FORTIFY_SOURCE=2 -O2" (Ivan Vecera) [1708560] - [tools] tools: include reallocarray feature test in FEATURE_TESTS_BASIC (Ivan Vecera) [1708560] - [tools] tools: bpftool: allow reuse of maps with bpftool prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: allow map reuse (Ivan Vecera) [1708560] - [tools] tools: bpf: make use of reallocarray (Ivan Vecera) [1708560] - [tools] tools: libbpf: move library error code into a separate file (Ivan Vecera) [1708560] - [tools] tools: bpftool: reimplement bpf_prog_load() for prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: add extended attributes version of bpf_object__open() (Ivan Vecera) [1708560] - [tools] tools: libbpf: recognize offload neutral maps (Ivan Vecera) [1708560] - [tools] tools: bpftool: allow users to specify program type for prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: expose the prog type guessing from section name logic (Ivan Vecera) [1708560] - [tools] tools: bpftool: add support for loading programs for offload (Ivan Vecera) [1708560] - [tools] tools: bpftool: refactor argument parsing for prog load (Ivan Vecera) [1708560] - [tools] selftests/bpf: add Error: prefix in check_extack helper (Ivan Vecera) [1708560] - [tools] selftests/bpf: remove duplicated word from test offloads (Ivan Vecera) [1708560] - [tools] tools: bpftool: deal with options upfront (Ivan Vecera) [1708560] - [tools] tools: bpftool: add missing --bpffs to completions (Ivan Vecera) [1708560] - [tools] tools: bpftool: drop unnecessary Author comments (Ivan Vecera) [1708560] - [tools] tools: libbpf: don't return '.text' as a program for multi-function programs (Ivan Vecera) [1708560] - [tools] tools: libbpf: restore the ability to load programs from .text section (Ivan Vecera) [1708560] - [tools] tools: libbpf: allow setting ifindex for programs and maps (Ivan Vecera) [1708560] - [tools] tools: libbpf: add section names for missing program types (Ivan Vecera) [1708560] - [tools] tools: bpftool: use correct make variable type to improve compilation time (Ivan Vecera) [1708560] - [scsi] scsi: lpfc: nvme: avoid hang / use-after-free when destroying localport (Dick Kennedy) [1588024]- [xen] ALSA: xen: Introduce shared buffer helpers for page directory... (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Initialize completion for defer messages (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Remove duplicate assignment (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Fix uninitialized adev deref (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Add pre/post bank switch ops (Jaroslav Kysela) [1683051] - [include] ALSA: soundwire: keep track of Masters in a stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Add support for multi link bank switch (Jaroslav Kysela) [1683051] - [include] ALSA: soundwire: Handle multiple master instances in a stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Add support to lock across bus instances (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix acquiring bus lock twice during master release (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix incorrect exit after configuring stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix duplicate stream state assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix race between creating and refreshing sysfs entries (Jaroslav Kysela) [1683051] - [include] ALSA: ASoC: uapi: fix sound/skl-tplg-interface.h userspace compilation errors (Jaroslav Kysela) [1683051] - [include] ALSA: uapi: #include in asound.h (Jaroslav Kysela) [1683051] - [include] ALSA: timer: fix wrong comment to refer to 'SNDRV_TIMER_PSFLG_*' (Jaroslav Kysela) [1683051] - [sound] ALSA: x86/cpu: Sanitize FAM6_ATOM naming (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: don't select DPCM via simple-audio-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: don't select DPCM via audio-graph-card (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Corrected fixup for System76 Gazelle (gaze14) (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Avoid superfluous COEF EAPD setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixup headphone noise via runtime suspend (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Fix unused variable warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: toneport: Fix broken usage of timer for delayed execution (Jaroslav Kysela) [1683051] - [sound] ALSA: aica: Fix a long-time build breakage (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support low power consumption for ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: update pcm hardware constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codec: hdac_hdmi: no checking monitor in hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: save PGA for mixer control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: save output volume for mixer controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: initialize setting when ramping volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: core: fix undefined nocodec reference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: xtensa: fix undefined references (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Propagate sof_get_ctrl_copy_params() error properly (Jaroslav Kysela) [1683051] - [sound] ALSA: hdea/realtek - Headset fixup for System76 Gazelle (gaze14) (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: add CometLake PCI IDs (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support low power consumption for ALC295 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: Fix an uninitialized variable compile warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Fix a compile warning with CONFIG_PCI=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Fix a compile warning at CONFIG_COMMON_CLK=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sound/soc/sof/: fix kconfig dependency warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: change trace level on iec control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: update pcm hardware constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98090: Fix restore of DAPM Muxes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: RT5677-SPI: Disable 16Bit SPI Transfers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Consider eld_valid when reporting jack event (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Read the pin sense from register when repolling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add reserved DMA memory support (Jaroslav Kysela) [1683051] - [sound] ALSA: synth: emux: soundfont.c: divide by zero in calc_gus_envelope_time() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: Map BTN_0 to KEY_PLAYPAUSE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: add sof-rt5682 machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic:refine code style (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic: add DMIC support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: CNL: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: APL: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: IPC: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: intel: hda: add hw_params_upon_resume flag for hda stream (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: handle real stream interrupts only (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: store stream capabilities (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: simplify handling of IPC IRQ (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: ipc: use snd_sof_pcm_period_elapsed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: use snd_sof_pcm_period_elapsed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: PCM: add period_elapsed work to fix race condition in interrupt context (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-pcm: remove useless dependency on hdac_ext (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: set bus->idx as 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: set I2S slave before enabling DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: add SSP info to the chip info struct (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: add the SSP Host Device memory space (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: cnl: add pointer ops to use DPIB position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: topology: add support for stricter ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASOC: SOF: ipc: add support for stricter ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: add Kconfig option for strict ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: avoid Oops if DMA setup fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: stream is already locked in hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: remove redundant null checks of dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: skip hw_free on codec dai for which the stream is invalid (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix valid stream condition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: unlock the device on startup errors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Update the support rate list (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Use clk_round_rate to handle enabled bclk/wclk case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Fix missing break in switch statement (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct region base typo in wm_halo_setup_algs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: fix spelling mistake "incompatble" -> "incompatible" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Use DSP ops pointers to stop watchdog in error handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix to use list_for_each_entry_safe() when delete items (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix return value check in sprd_mcdt_probe() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7213: fix DAI_CLK_EN register bit overwrite (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix kcontrols for effect widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: cache pdev->dev pointer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix potential uninitialized variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: add I2S2 control path from UL2 and UL3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: change supported formats of DL2 and UL1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: remove "model" attribute (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmix: fix object reference leaks in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs43130: fix a NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: fix a NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add Geminilake Realtek+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Make boards more available for compile test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_dma: Fix invalid license ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_i2s: Fix invalid license ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: tse850: Make some functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx: fix fiq dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: acp3x: Make acp3x_dai_i2s_ops static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Remove set but not used variable 'mclk_rate' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_micfil: Remove set but not used variable 'osr' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: Enable TDM support for DSP_A/B modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Configure wclk and bclk of master codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix build err while CONFIG_I2C set to module (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix spelling mistake "plalform" -> "platform" (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply the fixup for ASUS Q325UAR (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Register irq handler after the chip initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: usx2y: fix a double free bug (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: overwrite hdev type to HDA_DEV_ASOC (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix unregister device twice on ASoC driver (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: use dynamic buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix a memory leak bug (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: fix misuse of x (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - EAPD turn on later (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed Dell AIO speaker noise (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: select relevant machine drivers for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Make sure BDW based machine drivers build for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Build support for SOF core and Intel drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Kconfig: expose common option between SST and SOF drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add platform differentiation for APL and CNL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: add SKL+ platform DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add support for HDAudio codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA trace operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA stream operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add hda-bus support and initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA PCM operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA firmware loader (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PCI device support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add ACPI device support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA IPC mechanisms. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA DSP HW operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add HDA controller for Intel DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add APL/CNL HW DSP support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add legacy IPC support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add BDW HW DSP support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add BYT, CHT and BSW DSP HW support. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add utils (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add xtensa support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Nocodec machine driver support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PM support (Jaroslav Kysela) [1683051] - [include] ALSA: ASoC: SOF: Add userspace ABI support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add firmware loader support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add DSP HW abstraction operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add DSP firmware logger support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add support for loading topologies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PCM operations support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add support for IPC IO between DSP and Host (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add driver debug support. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Sound Open Firmware KControl support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Sound Open Firmware driver core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: simplify dai driver initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Read pin switches conf from devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Add missing return 0 in remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: add asoc_simple_parse_pin_switches() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd fix irq mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: align quirk override handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: align quirk override handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: fix compilation warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Add support for runtime pm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Update is_slave_mode with correct value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum multi-channel data transfer support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: rt5682: initialize mutex before using (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: return the get_irq error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup 6ch settings to 8ch (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Handle the error from snd_usb_mixer_apply_create_quirk() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add new Dell platform for headset mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codec: hdac_hdmi add device_link to card device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: Remove set but not used variable 'stage_type' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: save fixed-up hw_params of BE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: tobermory: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: tm2_wm5110: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: speyside: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: spdif: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: snow: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_wm8994*: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_wm8580: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_spdif: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smartq_wm8987: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx_uda134x: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec*: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c2412-i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: rx1950_uda1380: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c-i2s-v2: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: pcm: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: lowland: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: littlemill: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: jive_wm8750: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: idma: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: h1940_uda1380: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: dmaengine: Convert to SPDX License Indentifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: bells: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: arndale: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ps3: Remove set but not used variables 'start_vaddr' and 'pcm_index' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - add two more pin configuration sets to quirk table (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Don't refer to snd_cards array directly (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Drop superfluous id-uniquification behavior (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Fix card races between register and disconnect (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Fix racy addition/deletion of nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Correct unlock sequence at snd_seq_client_ioctl_unlock() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add quirk for Focusrite Scarlett Solo (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Initialize ext-bus-specific fields in snd_hdac_bus_init(), too (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Initialize power_state field properly (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Protect racy pool manipulation from OSS sequencer (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Simplify snd_seq_kernel_client_enqueue() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Cover unsubscribe_port() in list_mutex (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ALSA: seq: Protect in-kernel ioctl calls with mutex" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix missing regmap requirement (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix racy display power access (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: fix error handling when try_module_get() fails. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix master clock management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl: fix wrong number of channels (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Coding style fixes (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Simplify error path in snd_timer_open() (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix race of get-subscription call vs port-delete ioctls (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Protect in-kernel ioctl calls with mutex (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Remove superfluous irqsave flags (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Align temporary re-locking with irqsave version (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Use kvmalloc() for cell pools (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Revert active callback sync check at close (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add two more machines to the power_save_blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix spacing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: remove headset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: update module refcount if module_get_upon_open is set (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: conditionally increase module refcount on component open (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for the Teclast X98+ II (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for inverted jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm1133-ev1: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: phycore-ac97: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm030-audio-fabric: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: p1022_rdk: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: p1022_ds: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mx27vis-aic32x4: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc8610_hpcd: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_i2s: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_ac97: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_dma: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-ssi: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-spdif: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-pcm-fiq: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-mc13783: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-es8328: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmux: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-dma: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eukrea-tlv320: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-pcm: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: fix sai driver name initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Use the correct dobj to free enum control values and texts (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix OOB-reads from strlcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: change mic bias DAPM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Support synchronous mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix big-endian check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix endianness issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdmout: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: rework quirks settings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-frddr: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-toddr: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-fifo: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: remove link components before cleaning up card resources (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: add remove() callback for component driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l35: Disable regulators on driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add adc volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add support of master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add reset management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add regulator management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Avoid calling snd_compr_stop_error from WDT expiry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98357a: add missing supported rates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Add Playback PowerTune Controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Add Switch for Setting Common Mode Voltage (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Do not use stream buffer size before it is set (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: Mark RXFIFO_DATA as volatile and precious (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix spelling mistake "faied" -> "failed" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: Correct PDM_CTRL0 reg value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: adjust waterlevel in frame unit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: add compatible for rk1808 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: fixup pdm fractional div (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: optimize clear logic (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: add default regs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: using left justified store mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: change dma burst to 8 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: fix regmap_ops hang issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Update copyright and use SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix the smatch warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Change author's name (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add quirk for Tuxedo XC 1509 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Move to ACT_INIT state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix modular build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: Enable codec clock once and keep it enabled (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix build error in mt8183_da7219_max98357_dev_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: TS3A227: fix build error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Make use of local variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Remove redundant NULL check in wm_adsp_buffer_free (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: aic31xx_set_jack() can be static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Check for buffer in trigger stop (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate B114-21 with ALC233 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Align tplg pointer increment across all kcontrols (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: support driver alias names for FE topology overrides (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum audio compress offload support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix SND_SOC_LOCHNAGAR_SC kconfig warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: set power_check callback for widgets that shouldnt be always on (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add button press detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add headphone/headset detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: skip missing substream while applying symmetry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_da7213: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [acpi] ALSA: ACPI / utils: Introduce acpi_dev_get_first_match_dev() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: remove set but not used variable 'dai_name' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add support for inverted jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Fix typo in comment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: fix spelling mistake: "missign" -> "missing" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Add machine driver with DA7219 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Add machine driver with TS3A227 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677-spi: Add ACPI ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add multi endpoint support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix Common Pins (Jaroslav Kysela) [1683051] - [sound] ALSA: us122l: Use alloc_pages_exact() (Jaroslav Kysela) [1683051] - [sound] ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers, take#2 (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Make snd_timer_close() really kill pending actions (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Check ack_list emptiness instead of bit flag (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Make sure to clear pending ack list (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Unify timer callback process code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: Fix kbuild failure (Jaroslav Kysela) [1683051] - [sound] ALSA: emux: Add support of loading GUS-patch (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Add Audio Mixer machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Add Audio Mixer CPU DAI driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: enable S24_LE format support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Only enable with common clock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Allow 192000 Sample Rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Remove mclk references (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Restructure set_dai_sysclk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Dynamically Determine Clocking (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Move aosr and dosr setting to separate functions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Control clock gating with CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model BDIV divider in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model DAC/ADC dividers in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model CODEC_CLKIN in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model PLL in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Initialize private_value in snd_soc_dapm_new_dai (Jaroslav Kysela) [1683051] - [sound] ALSA: aloop: Support S24 sample formats (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Don't suspend stream in unrecoverable PCM state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix NULL pointer dereference in snd_soc_dapm_free_kcontrol (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sirf-audio: Remove redundant of_match_node call (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix incorrect extern (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the issue of 64 bits division (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Fix crash at suspend/resume after failed codec registration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Simplify alt firmware loading code (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix possible OOB access in PCM oss plugins (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: test memory allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: lochnagar: Add driver to support Lochnagar 2 sound card (Jaroslav Kysela) [1683051] - [mfd] ALSA: mfd: lochnagar: Add support for the Cirrus Logic Lochnagar (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Properly Set Processing Blocks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mchp-i2s-mcc: add driver for I2SC Multi-Channel Controller (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: rename asoc_simple_card_xxx() to asoc_simple_() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: separate asoc_simple_card_parse_dai() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_card_init_priv() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_be_hw_params_fixup() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_dai_init() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_hw_param() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_shutdown() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_startup() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: share common priv for simple-card/audio-graph (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: add asoc_simple_debug_info() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Update DA7219 DAI clock name to align with codec updates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Expose BCLK and WCLK control through CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: fix channel swap issue when stream starts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_asrc: add constraint for the asrc of older version (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4270: Set auto-increment bit for register writes (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286 (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: oss: Fix Spectre v1 vulnerability (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: add mmap support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: fix debugfs warnings on entry creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: manage multiple prepare (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct some minor issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Don't use register read to determine slave/master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Break out clock setting into separate function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: jz4740: Depend on MIPS instead of MACH_JZ4740 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add WDT expiry IRQ handling support for Halo core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add HALO MPU fault logging (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add support for new Halo core DSPs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Reduce repititive code on mtk_regmap_update_bits. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Fix UBSAN warning. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out DSP specific operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out parsing of firmware ID header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Refactor firmware status reading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Move wm_adsp2_set_dspclk to CODEC drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Don't export wm_adsp2_lock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Shutdown any compressed streams on DSP watchdog timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add locking to wm_adsp2_bus_error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct handling of compressed streams that restart (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free link string in error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free stream_name of dai_drv (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Don't trigger jackpoll_work in azx_resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph: add graph_parse_mclk_fs() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph: rename graph_get_conversion() to graph_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add simple_parse_mclk_fs() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: rename simple_get_conversion() to simple_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: recording has no sound after booting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: fix jack type detection issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Check JD status when system resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: skip for i2s5 in mck_disable (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: use 8 byte header for IR context to get isochronous cycle (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add support MOTU 8pre FireWire (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and declaration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_JD_NOT_INV quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add support for active-high jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: Make gpio property optional (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: dt-bindings: add regulator property to simple amplifier (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: simple-amplifier: remame dio2125 documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: use 'version' field of unit directory to identify model (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: add a check for request_region (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: add a check for ioremap_nocache (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: create tlv before soc_tplg_init_kcontrol (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: merge alc_fixup_headset_jack to alc295_fixup_chromebook (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: hdmi - add Icelake support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: automatic selecting BCLK in I2S master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the typo of function name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Fix clock configuration for 44100 sample rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the issue of widget with prefixed name (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - add more quirks for HP Z2 G4 and HP Z240 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed Headset Mic JD not stable (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with ALC255 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: avoid build error without CONFIG_PM (Jaroslav Kysela) [1683051] - [sound] ALSA: usx2y: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Avoid NULL pointer dereference at snd_hdac_stream_start() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: axi-i2s: let both capture and playback be optional (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: src: Avoid a potential deadlock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix registers declaration in regmap (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: fix the issue of the widget with prefix name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: prevent snd_soc_dpcm use after free (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:intel:skl:fix a simultaneous playback & capture issue on hda platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:hdac_hda:use correct format to setup hda codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:soc-pcm:fix a codec fixup issue in TDM case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: fix davinci_mcasp_probe dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ams-delta: remove duplicate 'const' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: remove compat dma probing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: use default dai name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: improve channel capabilities handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: change trigger traces (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: add i2c dependency for SND_SOC_SDM845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: src: fix compiler warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix DAPM routes for capture stream (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: Fix probe deferral following prelink failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: avoid limiting params->msbits in hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix set_sync service (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix oversampling mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix race condition in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix exposed capabilities in spdif mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix iec958 controls indexation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ab8500: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix S/PDIF DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add quirk for MOTU MicroBook II (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd add loopback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic3x: fix reset gpio reference counting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: skip useless write in slave mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix race condition in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: remove useless callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix dma configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix stream count management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix 16 bit format support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix IRQ clearing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: fix dependency for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add Maxim98373 support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: gen: fix SSI9 4/5/6/7 busif related register address (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: fix construction of PCM frame for capture direction (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against Liquid Saffire 56 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Extend i915 component bind timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Improve logging messages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add support for multiple compressed buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Refactor compress stream initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Reorder some functions for improved clarity (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out stripping padding from ADSP data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Fix an IS_ERR() vs NULL checking bug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: sound card name from device tree (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Prevent uninitialized variable use (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix of-node refcount unbalance in apq8016_sbc_parse_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Fix of_node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix of-node refcount unbalance in DAI-link parser (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Fix of-node refcount unbalance in fsl_ssi_probe_from_dt() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Allow compressed buffers in any memory region (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Update cached error state on trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: pcm186x: Fix energysense SLEEP bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: pcm186x: fix wrong usage of DECLARE_TLV_DB_SCALE() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix multiple "IIS multi" devices initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix secondary platform device unregistration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk: Add DAI links for Multi-Playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Add Geminilake Dialog Maxim machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Headset button support in broxton machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Rename hpvcc regulator supply to cpvdd (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau1977: Add support for setting MICBIAS via DT (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Potential small memory leak in dapm_cnew_widget() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Add missing DAPM routes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Make function 'wm8741_mute' static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: fix register setting issue in RIGHT_J mode (Jaroslav Kysela) [1683051] - [sound] ALSA: SoC: imx-sgtl5000: add missing put_device() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix missing of_node_put() at simple_dai_link_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix refcount underflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Ensure proper sample rate on pri/sec PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: remove set but not used variables 'mask, cr1' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free created components in tplg load error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Make some symbols static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: select dmic for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: fix sysclk_df type (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: fix TXCLK_DF mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Add support to disable on-chip PLL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Add runtime support for DSP_A and I2S modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Fix frame polarity for DSP_A format (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Set constraint to always have 32 sample bits (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Remove capture support for codecs without ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: fix spelling mistake "doens't" -> "doesn't" (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Expose sample resolution through proc interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Prevent potential NULL platform data dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Remove unused SND_DMAENGINE_PCM_FLAG_CUSTOM_CHANNEL_NAME flag (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Update TDM usage to be more flexible (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add support for master mode BCLK rate adjustment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to SPDX License Indentifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Comments clean up (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Change indentation in SAMSUNG_I2S_FMTS definition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Simplify pri_dai, sec_dai pointers usage (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add missing put_device() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: Specify DMA channel names through custom DMA config (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Add support for secondary CPU DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Get rid of a static spinlock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move quirks data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move IP variant data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Drop spinlock pointer from i2s_dai data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move SFR pointer to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: es1688: Remove set but not used variable 'hw' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Disable PC beep in passthrough on alc285 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Headset microphone and internal speaker support for System76 oryp5 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cros_ec_codec: Make symbol 'cros_ec_dai' static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: make some functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Remove unused including (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move registers cache to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move opclk data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move core clk to the driver common data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Add widgets and routes for DPCM support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move clk supplier data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Restore support for the secondary PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Comment why read blocks when PCM is not running (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: remove new_mach_data field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: cnl-match.c: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: icl-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: hsw-bdw-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: glk-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: cht-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: byt-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: bxt-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: icl-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hsw-bdw-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hda-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cnl-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: byt-match.c: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to single component with multiple DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: dmaengine: Allow to specify custom DMA device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Extend use of chan_names provided in custom DMA config (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Improve of_node test in dmaengine_pcm_request_chan_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix prescaler setting for the secondary DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Use __printf markup to silence compiler (Jaroslav Kysela) [1683051] - [sound] ALSA: tlv320aic32x4: delay i2c access by 1 ms after hardware reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd fix rx stream assign (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Set OSR mode in hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Add digital mute callback (Jaroslav Kysela) [1683051] - [sound] ALSA: PCM: check if ops are defined before suspending PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: use devm_kzalloc for all structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: use pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add clock select (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add soft reset on probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: set .ignore_module_refcount field in component (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: don't increase component module refcount unconditionally (Jaroslav Kysela) [1683051] - [sound] ALSA: gpiolib: acpi: Introduce ACPI_GPIO_QUIRK_ONLY_GPIOIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: convert license header to SPDX (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-analog: add missing license information (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: regulator notifier registration should be managed (Jaroslav Kysela) [1683051] - [sound] ALSA: i915/snd_hdac: I915 subcomponent for the snd_hdac (Jaroslav Kysela) [1683051] - [base] ALSA: components: multiple components for a device (Jaroslav Kysela) [1683051] - [documentation] ALSA: component: Add documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Revert capture stream behavior change in blocking mode (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix function name in kernel-doc comment (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Define snd_pcm_lib_preallocate_*() as returning void (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: fix up for snd_pcm_lib_preallocate_pages_for_all() API change (Jaroslav Kysela) [1683051] - [sound] ALSA: SoC: stm32: i2s: manage clock power (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: Remove unnecessary const qualifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Add support for Cirrus CS35L36 Amplifier (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix implicit fb endpoint setup by quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add quirk for HP EliteBook 840 G5 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: Use C++ style comments in header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: Kconfig: Show knob, and depend on MIPS || COMPILE_TEST (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4740: Add support for devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4740: Use SPDX license notifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: Prevent clk_get_rate() calls in atomic context (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Line Playback Volume, Line Boost Volume, Line Right, Line Left, Line Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add FM Playback Volume, FM Left, FM Right, FM Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic1 Playback Switch, Mic2 Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Merge sun4i_codec_left_mixer_controls and sun4i_codec_right_mixer_controls into sun4i_codec_mixer_controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic1 Boost Volume, Mic2 Boost Volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add sun7i_codec_controls, sun7i_codec_codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic Playback Volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add MIC2 Pre-Amplifier, Mic2 input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: fix spelling mistake "Deemphatize" -> "Deemphasize" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: fix semicolon.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: correct shift bit for ssiu9 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: Add jz4725b-codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup rsnd_ssi_master_clk_start() user count check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: harden use of lookup tables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xtensa: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: txx9: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dwc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix out-of-bounds accesses to DAPM lookup tables (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Clean up proc file creations (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Move card id proc creation into info.c (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Minor optimization (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Drop unused snd_info_entry.card field (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: pcmcia: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Add standard helpers for card proc file entries (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: emux: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: opl4: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssm2602: switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: Add helper functions for component trigger/set_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: Clarify the intent of current compressed ops handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: remove some unnecessary NULL checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssm2602: Fix ADC powerup sequencing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Check for NULL widget in dapm_update_dai_unlocked (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: spi: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: sh: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: parisc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: atmel: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix build error without CONFIG_PCI (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Fix stop handling on compressed capture streams (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for new T+A USB DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Always register entries recursively (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Don't allow NULL device for memory allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4118: fix missing header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd: fix spelling mistake "offest" -> "offset" (Jaroslav Kysela) [1683051] - [sound] ALSA: arm: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: unload physical dai link in remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: add SND_SOC_DOBJ_GRAPH type for dapm routes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: clear platform pointers on error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add warnings for widget overwrite when adding route (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Only power up active channels from a DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix oops/use-after-free case with dai driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix use-after-free issue with dailink sname (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: add btcvsd driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: Add channel numbers to AIFs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup TDM Split mode check for CTU (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: synchronize connection check for simple-card/audio-graph (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup MIX kctrl registration (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: pass struct device to DMA API functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hal2: pass struct device to DMA API functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Serialize codec registrations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use a common helper for hp pin reference (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix lose hp_pins for disable auto mute (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Headset microphone support for System76 darp5 (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: remove a superfluous function declaration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum audio DMA platfrom driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: modify dapm route loading routine and add dapm route unloading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix memory leak in soc_tplg_dapm_widget_create (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Fix memory leak from soc_tplg_denum_create_texts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Remove widgets from dobj list (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Reduce number of dereferences when accessing dobj (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Use standard device registration for beep (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply ALC294 hp init also for S4 resume (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Record the current power state before suspend/resume calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: remove useless test (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed hp_pin no value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cros_ec_codec: Add codec driver for Cros EC (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: Documentation: Add google, cros-ec-codec (Jaroslav Kysela) [1683051] - [maintainers] ALSA: MAINTAINERS: add maintainers for ChromeOS EC sub-drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix missing slimbus dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Cleanup DSD whitelist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: add slim support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add audio routings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add capture dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add playback dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add basic controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add support to wcd9335 codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt_rt298: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_da7213: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bdw-rt5677: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: broadwell: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: haswell: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add helper to change platform name for all dailinks (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: add support for Solid State Logic Duende Classic/Mini (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Variable "ret" in function rt5651_i2c_probe() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: add static inline fallbacks when CONFIG_ACPI=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Fix clocking calculations when not using the PLL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Implement the set_bclk_ratio interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use for_each_link_codecs() for dai_link codecs V2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Fixup build error for mt6358 (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix tight loop of OSS capture stream (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add Opus #3 to quirks for native DSD support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: add codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: add platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Allow soc_find_component lookups to match parent of_node (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use the common error path in __snd_pcm_lib_xfer() (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: Off by one in latter_handle_midi_msg() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: make const arrays static, reduces object code size (Jaroslav Kysela) [1683051] - [sound] ALSA: proc: Avoid possible leaks of snd_info_entry objects (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Simplify proc file destruction (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Drop unused snd_pcm_substream.file field (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: comment cleanup about destination address of async transactions for MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Cleanup snd_pcm_stream_lock() & co (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Remove down_write() hack for snd_pcm_link_rwsem (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: More fine-grained PCM link locking (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Fix multi-CODEC setups (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: support rx MIDI functionality for Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-specific operation to fill transaction buffer with MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add model-dependent parameter for address to receive async transaction for MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: support tx MIDI functionality of Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add model-dependent parameter for address range to receive async transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: change prototype of handler for async transaction with MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Correct the setting while select ASRC clk for AD/DA filter (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: add driver flag for runtime PM (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: implement runtime suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: remove redundant clock enable API (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: add runtime PM callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: get clock handles early in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: runtime power management support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: rename to asoc_simple_card_canonicalize_platform() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use for_each_link_codecs() for dai_link codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add soc_cleanup_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: reduce if/else nest on soc_probe_link_dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: merge card resources cleanup method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add new snd_soc_flush_all_delayed_work() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add .num_platform for dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Avoid confusing loop in snd_pcm_unlink() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Make PCM linked list consistent while re-grouping (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Unify snd_pcm_group initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Call snd_card_unref() inside in_pcm_file() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add mute LED support for HP ProBook 470 G5 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to parse of clock configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring for dump of sync status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to get clock status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to switch mode to fetch PCM frame (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to dump status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: obsolete proc node to leave one node (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: unify protocol layer for FF400/FF800 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: rename protocol layer for former models (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc.h: add explanation of legacy/modern style of dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Remove expensive print in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove error due to probe deferral (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-spdif: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: lower log level for potential probe deferral cases (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: put of nodes if finding codec fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix oops on re-probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add default pdata for i2s mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Set DAI format for dmic codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: select max98927 for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmux: change snprintf to scnprintf for possible overflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514-spi: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: change snprintf to scnprintf for possible overflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix PLL source register definitions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Don't defer probe on optional, NULL components (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Make snd_pcm_suspend() local static (Jaroslav Kysela) [1683051] - [sound] ALSA: pcmcia: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: arm: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: Move PCM suspend/resume code into trigger callback (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Suspend streams globally via device type PM ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Make snd_soc_find_component() more robust (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: fix init platform memory handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: parse AES audio parameters (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: Select REGMAP_MMIO to fix build error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: remove few unused variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4341: fix waring unused-function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: program stripe control for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: program stripe bits for controller (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add verbs for stripe control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add register offset for stripe control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add api to program stripe control bits (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skl: Fix display power regression (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix typo for ALC225 model (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: Hold client_mutex around soc_init_dai_link() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: use correct drvdata in snd_byt_cht_es8316_mc_remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: move the codec PLL configuration to _init (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: SND_SOC_DAPM_MICBIAS is deprecated (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add recalc_rate function to return DAI clock rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: MCLK should be enabled before DAI clocks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: defer card probe until all component is added to list (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Remove set but not used variable 'first_ch_bits' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix a mask wrong issue in snd_hdac_stream_start() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix mismatches for register mask and value in hdac controller (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Disable headset Mic VREF for headset mode of ALC225 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add unplug function into unplug state of Headset Mode for ALC225 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: fix CM6206 register definitions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: Variable "buf" in function rt274_jack_detect() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ADAU7002: Add optional delay before start of capture (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Potential NULL dereference in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirk for PoV TAB-P1006W-232 (v1.0) tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add support for jack-detect using an external GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirks module parameter (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Revert "Fix DMIC map headsetmic mapping" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add support for jack detect using an external GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add ACPI ID 10EC5640 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add quirk for PoV P1006W tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: update BSDSR/BSDISR handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sgtl5000: Allow SCLK pad drive strength to be changed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable SPDIF driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: add SPDIF audio driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Add MICFIL SoC Digital Audio Interface driver. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eliminate left-over from Raumfeld machine driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt298: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rl6437a: use __be32 for a __be32 buf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: store eq kcontrol byte in __be (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: use logical AND (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: fix endianness issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mt6351: remove unneeded variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tscs42xx.c: fix boolean test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: fix boolean assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98927: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5640: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rt286: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4271: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98383: fix boolean assignments to true/false (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5670: remove unused mux/mixer define (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: remove unused mux define (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: fix kernel doc descriptions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: remove unused constant variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98090: remove unused constant variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: declare trigger function as static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4458: Add support for AK4497 (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: fix a missing check of snd_ctl_add (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: fix check on snd_card_register (Jaroslav Kysela) [1683051] - [sound] ALSA: ice1712: fix a missing check of snd_i2c_sendbytes (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: add a check of the status of snd_ctl_add (Jaroslav Kysela) [1683051] - [sound] ALSA: oxygen: initialize spdif_playback_enable to 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: virtuoso: add de-emphasis control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support Dell headset mode for New AIO platform (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix an out-of-bound read in create_composite_quirks (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Always check descriptor sizes in parser code (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Check mixer unit descriptors more strictly (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Avoid access before bLength check in build_audio_procunit() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for GPIO mode of the pins (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: Move context save/restore to runtime_pm callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: No need for IS_MODULE/BUILTIN check for pcm driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirks for ASUS MeMO Pad 7 (ME176C) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: sst: Fallback to BYT-CR if IRQ 5 is missing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: sst: Simplify is_byt_cr() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Add ACPI match table entry for ES8316 codec on BYTCR platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Set card long_name based on quirks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add input-map support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add external speaker mux support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add jack-detect support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add support for SSP0 (BYTCR) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Minor refactoring (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Sort includes alphabetically (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator: fixed: Let core handle GPIO descriptor (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator/gpio: Allow nonexclusive GPIO access (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator: fixed: Default enable high on DT regulators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add DAC mono mix switch mixer control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add jack-detect support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Variable "val" in function rt274_i2c_probe() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: fix error handling in xlnx_formatter_pcm_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add workaround for silence of rk3288 ACODEC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: support ACODEC for rk3328 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: reduce naming prefix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: cleanup DAI link loop method - step2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: cleanup DAI link loop method - step1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add link_info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add 1 CPU : 1 Codec support again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add asoc_simple_card_get_conversion() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: reduce naming prefix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: cleanup DAI link loop method - step2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: cleanup DAI link loop method - step1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add link_info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add 1 CPU : 1 Codec support again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable audio formatter driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: add pcm formatter platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: remove simple-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove audio-graph-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add asoc_graph_card_get_conversion() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: check "reg" property on asoc_simple_card_get_dai_id() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: boards: use snd_mask_set_format in all machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: simplify boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Baytrail: simplify boolean test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Baytrail: remove unneeded variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: assign booleans to true/false (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: remove unneeded semicolon (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: simplify boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: remove useless cast (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: enable MCLK in STANDBY (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: save model id directly in of_device_id.data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: make the driver visible in Kconfig (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4341: Add driver for CS4341 DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix recording no sound issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: atom: Make PCI dependency explicit (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: prevent potential divide by zero bugs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Fix a small memory leak (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Fix a NULL vs IS_ERR() bug (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Off by one in of_q6asm_parse_dai_data() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Fix a double unlock in pcm512x_digital_mute() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: change license header format style (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell/Broadwell: fix setting for .dynamic field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: Grammar s/the the/the/ (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dma-sh7760: cleanup a debug printk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: set jack only for a specific backend (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Revert DSP detection on legacy HD-audio driver (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: clear pending irq handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable the headset mic auto detection for ASUS laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: HD-Audio: SKL+: force HDaudio legacy or SKL+ driver selection (Jaroslav Kysela) [1683051] - [sound] ALSA: HD-Audio: SKL+: abort probe if DSP is present and Skylake driver selected (Jaroslav Kysela) [1683051] - [sound] ALSA: HDA: export process_unsol_events() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX391UA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: fix model-id of unit for Apogee Ensemble (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Use Xen common shared buffer implementation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: Kconfig: Remove the deprecated options (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: Merge davinci and omap directories (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add mute LED support for HP EliteBook 840 G4 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to handle model-specific registers (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for packet streaming on Fireface 800 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: allocate isochronous resources in mode-specific implementation (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to handle multiplier mode (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share helper function to switch fetching mode (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix for state to fetch PCM frames (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: use the same print format for 'without_header' tracepoints (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix wrong assignment for 'out_packet_without_header' tracepoint (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix wrong handling payload_length as payload_quadlet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add display_port_rx port routing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add support to Display port RX dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: qdafe: add support for display_port_rx (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Add support to compress offload (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: add support to MP3 format (Jaroslav Kysela) [1683051] - [sound] ALSA: soc-compress: add support to snd_compr_set_runtime_buffer() (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: make use of runtime buffer for copy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add more platform granularity (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup prefix for snd_soc_codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup convert_rate/channel method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup mclk-fs method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: merge simple-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup prefix for snd_soc_codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup convert_rate/channel method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup mclk-fs method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: merge audio-graph-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fixup asoc_simple_card_get_dai_id() ID method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Invoke pcm_new() for all DAI-link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Implement the digital_mute interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: fix do_div warning in spdifin (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: add error logs on probe, remove dependency on NHLT (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: remove useless tests on HDaudio capabilities (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: stop probe if HDaudio capabilities don't exist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Harden DSP detection with PCI class/subclass info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add CFL-S support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add powersaving widgets for DAC and ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable i2s driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: Add i2s driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_rt5660: Add a new machine driver for kbl with rt5660 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg spdif input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-toddr: add support for spdifin backend (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Dereference pointer for memcpy sizeof in asoc_simple_card_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Fix SND_SOC_EUKREA_TLV320 build error on i.MX8M (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add support for Huawei WMI micmute LED (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix front speakers on Huawei MBXP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove RSND_REG_ from rsnd_reg (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for Fireface 800 with MIDI functionality only (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: localize a handler for MIDI messages on tx transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add driver data for register for MIDI high address (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share register for async transaction of MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for second optical interface for ADAT stream (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share helper function to get current sampling rate and clock source (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share status and configuration dump (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share some registers for status of clock synchronization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: care multi DPCM codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup "convert-rate/channels" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: care link / dai count (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: add dai-link support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - make pci_iounmap() call conditional (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi: Always set display_power_control for Intel HSW+ codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: Add missing display power-off at driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Make snd_hdac_display_power() void function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Properly free the display power at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Drop superfluous AZX_DCAPS_I915_POWERWELL checks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Refactor display power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup asoc_simple_card_parse_daifmt() timing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: use cpu/codec pointer on simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fix build warning without CONFIG_OF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: add rt5663 codec select (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: fix the audio jack button remapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Point of View Mobii TAB-P1005W-232 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Prowise PT301 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX433FN/UX333FA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX533FD with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: ALC294 mic and headset-mode fixups for ASUS X542UN (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Refactoring PM code (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix reference to wrong register for clock configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix the mute LED regresion on Lenovo X1 Carbon (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Add copyright and module author (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add configuration for headset codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add TDM configuration for speaker (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix signal paths (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Calculate LRCLK divider (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Remove useless assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Enable headset button support for new codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add jack button support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add jack pointer and unsolicited event bits to callback (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed headphone issue for ALC700 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5660: Add a new ACPI match ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ak4104: move to GPIO consumer API (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: cs4270: move to GPIO consumer API (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: use dma_ops of parent device for acp_audio_dma (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: use DMA addr rather than CPU pa for acp_audio_dma (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Gnawty (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Remove direct OF name and type accesses (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Fix mic issue on Acer AIO Veriton Z4860G/Z6860G (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Fix mic issue on Acer AIO Veriton Z4660G (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support for Acer Aspire C24-860 headset mic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: ALC286 mic and headset-mode fixups for Acer Aspire U27-880 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added max98373_reset for stable amp reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: care multi DPCM codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: care link / dai count (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fixup asoc_simple_card_get_dai_id() counting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add missing TDM Split mode support for simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup mod ID for CTU regmap read/write (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: indicates Channel and Mode for debug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Add Tegra186 and Tegra194 support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra - Probe up to 8 codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Clapper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove raumfeld machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix UAF decrement if card has no live interfaces in card.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for ICL (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix speaker output regression on Thinkpad T570 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: au8540: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add support for AMD Stoney Ridge (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add SMSL D1 to quirks for native DSD support (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix starvation on down_write_nonblock() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Call snd_pcm_unlink() conditionally at closing (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: compatible string as shortname (Jaroslav Kysela) [1683051] - [platform] ALSA: platform/x86: thinkpad_acpi: Add audio mute LED classdev support (Jaroslav Kysela) [1683051] - [platform] ALSA: platform/x86: dell-laptop: Add micmute LED trigger support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Support led audio trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: Don't disable pcm3168a when CONFIG_PM defined (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: introduce module_param wakeup_delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: introduce mode switch delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: sdm845: Create and setup jack in init callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: sdm845: Add board specific dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Implement configurable dismod handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Update PDIR (pin direction) register handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Clear TXSTAT register before activating serializers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add FW reply for MCLK/SCLK IPC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Make DSP replies more human readable (Jaroslav Kysela) [1683051] - [drivers] ALSA: leds: trigger: Introduce audio mute LED trigger (Jaroslav Kysela) [1683051] - [drivers] ALSA: leds: core: Introduce LED pattern trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup registering method for rsnd_kctrl_new() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support ALC300 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add auto-mute quirk for HP Spectre x360 laptop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix whitespace (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc.h: makes snd_soc_of_parse_audio_prefix() inline (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fix a NULL vs IS_ERR() check in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - fix the pop noise on headphone for lenovo laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: fix spelling mistake "Frequence" -> "Frequency" (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers" (Jaroslav Kysela) [1683051] - [sound] ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: control: Consolidate helpers for adding and replacing ctl elements (Jaroslav Kysela) [1683051] - [sound] ALSA: control: Fix race between adding and removing a user element (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Fix invalid snd_free_pages() at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: wss: Fix invalid snd_free_pages() at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - fix headset mic detection for MSI MS-B171 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add ASRock N68C-S UCC the power_save blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: Fix incorrect bit shift at AC97-SPSA control write (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: notify events of change of state for userspace applications (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: apply small refactoring to handle several type of event for hwdep interface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: queue events for change of control surface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: add new hwdep ioctl command to get state image (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: pick up data of state from tx isochronous pakcets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-dmic: Add pm_qos handling to avoid overruns with CPU_IDLE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcpdm: Add pm_qos handling to avoid under/overruns with CPU_IDLE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Fix latency value calculation for pm_qos (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup define position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup typo SND_AUDIO_GRAPH_CARD (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup asoc_simple_card_parse_daifmt() timing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup "convert-rate/channels" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup "prefix" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup "prefix" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add snd_soc_of_parse_node_prefix() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: add VCC regulator widget (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Add support for cpvdd regulator supply (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: remove "option" from asoc_simple_card_of_parse_routing() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: tidyup asoc_simple_card_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: accept NULL parameter on asoc_simple_card_xxx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: remove asoc_simple_card_clk_register() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: makes rsnd_ssi_is_dma_mode() static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup rsnd_parse_connect_ssiu_compatible() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add support for Secondary MI2S interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Update slot_width for Quaternary TDM port (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use platform_data for machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: fix interface for Chromebook machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: acpi: define common interface for machine driver configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: acpi: fix: continue searching when machine is ignored (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optional (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic3x: Add support for CBM_CFS and CBS_CFM clocking modes (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Use device_type helpers to access the node type (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - fix AE-5 pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add new ZxR quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: clean up indentation, replace spaces with tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Fix error handling of regulator_set_load (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: fix spelling mistake "Inavlid" -> "Invalid" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: fix indentation issue with return statement (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320dac33: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: asihpi: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Convert a few more users to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Add regulator support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4118: Add support for AK4118 S/PDIF transceiver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Fix device reset-registers trigger value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: remove set but not used variable 'dma_buffer' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fixed build errors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Recalculate audio map forcely when card instantiated (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-abe-twl6040: Fix missing audio card caused by deferred probing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: fix memory leak of i2s_data on error return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add DT property for single-ended output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Rename output widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Set dai_link id to each dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: add missing route for ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: enable acp3x drivers build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x system resume pm op (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x runtime pm ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x tdm mode support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x i2s ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x pcm driver dma ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Interrupt handler changes for ACP3x DMA driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add ACP3x PCM platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: create ACP3x PCM platform device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: add ACP3.0 PCI driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: add ACP 3.x IP register header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Power down links before turning off display audio power (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hdac_hdmi: add Icelake support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out common init code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Fix dma-unsafe read of scratch registers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add missing slave_config setting for I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: No need to initialize max_xx_thres when it is not used (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Remove redundant check for mcbsp->pdata (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Re-arrange files for core McBSP and Sidetone function split (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Move out the FIFO check from set_threshold and get_delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Simplify the mcbsp_start/_stop function parameters (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Clean up the interrupt handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Skip dma_data.maxburst initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Clean up dma_data addr initialization code (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: add support for APOGEE duet FireWire (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Call pci_iounmap() instead of iounmap() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add quirk entry for HP Pavilion 15 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Optimize for non-PCI configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use ring buffer for rsnd_mod_name() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: fix crash on module removal (Jaroslav Kysela) [1683051] - [sound] ALSA: oss: Use kvzalloc() for local buffer allocations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_ssi: Change to use DEFINE_SHOW_ATTRIBUTE macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add TDM Split mode support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add SSIU BUSIF support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: handle DPCM converted rate/chan under core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: move HDMI information from ssi.c to core.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use defined io_playback/io_capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: rename rsnd_runtime_is_ssi_xxx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove error check which never happen (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add quirk for APL RVP boards (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add SOF information for APL RVP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: remove GFP_ATOMIC, use GFP_KERNEL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: boards: fix Skylake typo (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use standard interface for Atom machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use standard interface for Hdaudio machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: change ac97 dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap: Remove unused machine driver for AM3517-evm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: remove read-only status register from snd_kcontrol_new (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak5558: Remove redundant snd_soc_component_read32 calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Fix the dai widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Only add routing once. (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Define registers for CM6206 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix incorrect clearance of thinkpad_acpi hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: Fix wrong MI2S SD line mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add quirk for boards using pmc_plt_clk_0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: rsnd_mod_name() handles both name and ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add .get_id/.get_id_sub (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: move .get_status under rsnd_mod_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: cleanup hw_constraint for LEFT_J/I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: On OMAP1 and OMAP2420 only 16bit format is supported (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: constify regulator_desc structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8825: remove unnecessary unlikely() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: mrfld: fix uninitialized variable access (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm97xx: fix uninitialized regmap pointer problem (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: constify snd_soc_ops structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix less than zero comparison on unsigned int (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: rename SND_SUNXI_ADDA_PR_REGMAP to SND_SUN8I_ADDA_PR_REGMAP (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Rip out the lpe audio runtime suspend/resume hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Fix runtime PM for hdmi-lpe-audio (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup clock start checker (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix oops w/ for_each_rtd_codec_dai_rollback() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix insufficient PCM rule for period/buffer size (Jaroslav Kysela) [1683051] - [sound] ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: fix to wait for releases of all ALSA character devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix noderef.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix master clock naming (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: add clock dependency for sai (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Actually fix microphone issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-i2s: move code from startup/shutdown hooks into pm_runtime hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm2000: Remove wm2000_read helper function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: fix mclk support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Log addresses as 8 digits in wm_adsp_buffer_populate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Rename memory fields in wm_adsp_buffer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add mclk support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: set sai as mclk clock provider (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: fix trivial checkpatch issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add support for hw_free on CODEC to CODEC links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: minor white space clean up (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c/cs8427: Fix int to char conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup SSICR::SWSP for TDM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: enable TDM settings for SSI parent (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add hw constraint for capture channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sta32x: Add support for XTI clock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: new codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra_sgtl5000: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: allow the sun8i-codec driver to be built on ARM64 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: Add new driver for Allwinner A64 codec's analog path controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec-analog: split regmap code into separate driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: Don't hardcode BCLK / LRCK ratio (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-i2s: Add compatibility with A64 codec I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: don't pass GFP_DMA32 to dma_alloc_coherent (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add 2 more models to the power_save blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add Kabylake Dialog+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add KBL Dialog Maxim I2S machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add SND_JACK_LINEOUT jack type (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: don't pass GFP_DMA32 to dma_alloc_coherent (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add I2S/Left_J TDM support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add hw constraint for channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add HW constraint for non RIGHT_J (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sta32x: set ->component pointer in private struct (Jaroslav Kysela) [1683051] - [sound] ALSA: au88xx: Add fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: opti92xx-ad1848: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: oss: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: caiaq: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add missing entries to Kconfig (Jaroslav Kysela) [1683051] - [sound] ALSA: isight: fix leak of reference to firewire unit in error path of .probe callback (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort DHT Rot Pnt Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort max98373_bde_gain_tlv in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort BDE Limiter Thresh Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort Digital Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: enable mclk-fs on codec node (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use 32bit TDM width as default (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98988: add I2C dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: simplify cleanup process when failing to register sound card (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob/fireworks: simplify handling of local device entry table (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: release reference count of firewire unit in .remove callback of bus driver (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: block .remove callback of bus driver till all of ALSA character devices are released (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo M715 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix headphone pin config for ASUS G751 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix input effect controls for desktop cards (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add error checking in ca0132_build_controls() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up patch_ca0132() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix microphone inconsistency issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98988: make it selectable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98088: Add master clock handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8782: add support for regulators (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add ASUS G751 quirk model entry (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add quirk for ASUS G751 laptop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Use the standard fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: Add fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau1761: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add custom mixer status quirks for RME CC devices (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: update quirk for B&W PX to remove microphone (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/sigmatel - Disable automute for Elo VuPoint (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: A lightweight function to discard pending bytes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add fault detect recovery property to DT bindings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: enable and disable extclk if given (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: checking NULL vs IS_ERR() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: Add missing break in skl_tplg_get_token() (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: use managed-resource to maintain cache of stream formats (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: use managed-resource to maintain model-specific data (Jaroslav Kysela) [1683051] - [sound] ALSA: fireworks: use managed-resource to maintain response buffer (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use managed-resource to maintain data specific to M-Audio FW-1814/ProjectMix I/O (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: use managed-resource of fw unit device for private data (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Cannot adjust speaker's volume on Dell XPS 27 7760 (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: add PCM rules to obsolete PCM constraints based on LCM of SYT_INTERVAL (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR exit commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR 600 ohm gain control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Remove input select enum for ZxR (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR input/output select commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR DSP post-download commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR init commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DBpro hda_codec_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR quirks + new quirk check function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix surround sound with output effects (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix AE-5 control type (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix mismatch for register mask and value in ext controller. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: qdsp6: remove duplicated include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9712: fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: add SND_SOC_I2C_AND_SPI dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: avoid AC97_BUS build warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils: Rename dummy_dma_ops to snd_dummy_dma_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98088: add OF support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add a MIC pre. route (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_component_dais() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_component() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup SSI clock during suspend/resume modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: qdsp6: remove duplicated include from q6adm.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tidyup for_each_card_prelinks() dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Remove the boost volume in the beginning of playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_dpcm_be() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_dpcm_fe() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_comp_order() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_components() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_rtds() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_links() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_prelinks() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rename for_each_rtd_codec_dai_reverse to rollback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: convert for_each_rtd_codec_dai() for missing part (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 exit function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 specific controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add input selection commands for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add output set commands for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up ca0132_alt_out_select (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DSP setup functions for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Merge post-dsp functions + cleanup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change firmware name and usage (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 regular init setup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 pre-init and ca0113 functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change ca0132_mmio_init for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Set AE-5 bools and select mixer (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add pincfg for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add quirk for Sound BlasterX AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Define new verbs and control params (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Refine indentations and constify snd_pcm_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix the audio-component completion timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677-spi: Drop unused GPIO include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Minor code modification (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix capture unstable in beginning for some runs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix the boost volume at the begining of playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Update calibration function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Remove HP volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Improve HP performance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: remove redundant include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514-spi: Get the period_bytes in the copy work to make sure the value correctly (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add snd_soc_is_matching_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: manage platform name under snd_soc_init_platform() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: remove duplicated include from q6asm-dai.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hisilicon: fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8328: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: fireworks: fix memory leak of response buffer at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak of discovered stream formats at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak for model-dependent data at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: fix memory leak for M-Audio FW1814 and ProjectMix I/O at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Enable runtime PM only for discrete GPU (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-digi00x: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0m: Register irq handler after register initializations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix implicit definition of pci_iomap() on SH (Jaroslav Kysela) [1683051] - [sound] ALSA: don't call skl_init_chip() to reset intel skl soc (Jaroslav Kysela) [1683051] - [sound] ALSA: enable interrupt after dma buffer initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ASoC: Intel: Skylake: Acquire irq after RIRB allocation" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove dai->driver NULL check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to card rebind (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: remove unneeded static set .owner field in platform_driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add missing INTERLEAVED PCM attribute (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove unused num_dai_links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: avoid nested code on soc_remove_dai() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5668: remove empty rt5668_i2c_remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Fix UBSAN warning at snd_soc_get/put_volsw_sx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: switch to new ac97 bus support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix simultaneous playback and capture on different channel (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: fix possible info leak to userspace on SNDRV_EMU10K1_IOCTL_INFO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add missing return value check for snd_soc_dapm_new_dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: skl-topology: Use kmemdup to replace kzalloc + memcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: q6core: Use kmemdup to replace kzalloc + memcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: txx9: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nuc900: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tscs454: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5668: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: bcm: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel_ssc_dai: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Ensure reset bit is cleared before configuring (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: clean up a return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix a couple uninitialized ret variables (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix memory leak in ff400_switch_fetching_mode() (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use address returned by kmalloc() instead of kernel stack for streaming DMA mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Update hardware pointer before start capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: usleep_range() needs include/delay.h (Jaroslav Kysela) [1683051] - [sound] ALSA: regmap: split up regmap_config.use_single_rw (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hdac_hdmi: Limit sampling rates at dai creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Avoid uninitialised variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sgtl5000: avoid division by zero if lo_vag is zero (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: don't use p for dev_dbg() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: don't fallback to PIO mode when -EPROBE_DEFER (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: adg: care clock-frequency size (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: gen: use tab instead of white-space (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: remove redundant check for !port condition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move CODEC to CODEC params from the widget to the runtime (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add support for multi-CODEC CODEC to CODEC links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move connection of CODEC to CODEC DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Cosmetic tidy up of snd_soc_dapm_new_control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move error handling to snd_soc_dapm_new_control_unlocked (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_link_codecs() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add overflow detection support (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: Cleanup indirect PCM helper usages (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: rme32: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix several mismatch for register mask and value (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Convert to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Don't schedule DAPM work if already in target state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Add driver for PROTO Audio CODEC (with a WM8731) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: merge .nolock_start and .prepare (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: Support to init different BUSIF instance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: Support BUSIF other than BUSIF0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rsnd: dma: Calculate PDMACHCRE with consider of BUSIF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rsnd: dma: Calculate dma address with consider of BUSIF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssi: Check runtime channel number rather than hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssi: Fix issue in dma data address assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove is_play parameter from hw_rule function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for 8 bit S8 format (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for the DSP_A/DSP_B formats (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for 16/24 bit slot widths (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add warning message to rsnd_kctrl_accept_runtime() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup not to call clk_get/set under non-atomic (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Initialize allocated buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add short circuit detection support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix soc-core.c kernel-doc warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: q6routing: initialize data correctly (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Add channel fault reporting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Save last fault register even when clear (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Print full register name in error message (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: remove dai_link compatible code for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use snd_soc_dai_link_component for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: remove dai_link compatible code for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: use simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: use simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add a S/PDIF enable switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add native 32bit I2S transport (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: SOC_SINGLE register value error fix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: tas5720: add TAS5722 TDM slot width setting support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: tas5720: add TAS5722 specific volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Add support for FIFO usage caused delay reporting (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix cancel_work_sync() stall from jackpoll work (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Clean up jackpoll_ms option handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg pdm input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: add DT module alias (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: add Kconfig prompt for the generic dmic codec. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau17x1: Unused exported functions changed to internal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Improve legibility of if-statements (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Improve stylistics of file comments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: tse850: switch to SPDX license identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Change MCLK to 48Mhz (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Set constraints for DMIC and MAX98357a codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht-bsw-rt5672: Add key-mappings for the headset buttons (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add quirk for Thinkpad 8 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5670: Add quirk for Thinkpad 8 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau17x1: Implemented safeload support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sigmadsp: safeload should not have lower byte limit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: add asoc extension for legacy HDA codec drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: use hda_bus instead of hdac_bus (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: add HDA BE DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: use HDAudio if ACPI enumeration fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Machine driver for SKL+ w/ HDAudio codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add table for HDA-based platforms (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: move hda_codec.h to include/sound (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8804: Add ACPI support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Update calibration function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Change DAC/ADC volume scale (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added 10ms sleep after amp software reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdm: restrict formats depending on slot width (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-fifo: report interrupt request failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: imply clock and reset controllers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: Properly initialise hw->rate_max (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Don't fail creating new DAPM control on NULL pinctrl (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Remove clock framework ifdefs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Convert to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: intel_hdmi: Use the new non-cached allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Use the new non-cached allocation for 440MX workaround (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Remove substream allocation/free ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Use new non-cached allocation for non-snoop mode (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Check the non-cached stream buffers more explicitly (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Add non-cached buffer type (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Simplify snd_malloc_dev_pages() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Don't align the size to power-of-two (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Do error checks at creating system ports (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: add error check in snd_seq_system_client_init() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: signedness bug in snd_pcm_plug_alloc() (Jaroslav Kysela) [1683051] - [sound] ALSA: hdspm: fix spelling mistake "Initializeing" -> "Initializing" (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Return 0 when size < start_threshold in capture (Jaroslav Kysela) [1683051] - [kvm] ALSA: treewide: correct "differenciate" and "instanciate" typos (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix HP Headset Mic can't record (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix unbalanced pm_runtime_enable (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix check of pm_runtime_get_sync failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix device initialization in the compat layer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514: Fix the issue of the delay volume applied again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added speaker FS gain cotnrol register to volatile. (Jaroslav Kysela) [1683051] - [sound] ALSA: update dell-wmi mic-mute registration to new world order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix NULL pointer deference on CODEC to CODEC DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Fix discarding the unsubscribed output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Acquire irq after RIRB allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9712: fix replace codec to component (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirks for 2 more devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adav80x: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add delays to capture path to remove DC offset noise (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add exit commands for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change mixer controls for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D input and output select commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DSP setup defaults for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D startup functions and setup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add bool variable to enable/disable pci region2 mmio (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add quirk ID and enum for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add alt_functions unsolicited response (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up ca0132_init function. (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Create mmio gpio function to make code clearer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Make DSP name configurable by codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Declare firmware controls from codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added software reset register to readable registers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct DSP pointer for preloader control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677: Fix initialization of rt5677_of_match.data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: make BE and FE order inline with dpcm (Jaroslav Kysela) [1683051] - [sound] ALSA: intel_hdmi: remove redundant variable cfg_val (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Set delay value for the capture case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Modified DMA pointer for capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Make ACP->SYSMEM DMA non circular (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8994: Fix missing break in switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add SLIM tx AIF_IN dapm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: remove unused header files from common.h (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: remove unused header files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: remove unused header files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: make common.c as proper module (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8903: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da9055: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm5100-tables: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7213: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: twl6040: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8996: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4270: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8990: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tda7419: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5631: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9850: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360 (Jaroslav Kysela) [1683051] - [sound] ALSA: seq_oss: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-dmic: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcpdm: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-i2s: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: fix memory leak (Jaroslav Kysela) [1683051] - [sound] ALSA: synth: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: fix spelling mistake "acumulator" -> "accumulator" (Jaroslav Kysela) [1683051] - [sound] ALSA: es18xx: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: opti9xx: mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: opti92x: mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: galaxy: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt: Use refcap device for mono recording (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: remove support for card rebind using component framework (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: remove auto rebinding (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: remove auto rebinding (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix unmet dependency warning for SND_SOC_SDM845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8994: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9081: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8995: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8962: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8996: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8960: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8955: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5640: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8961: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix a typo (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix invalid use of sizeof in parse_uac_endpoint_attributes() (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Drop unused 64bit division macros (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Use no intrruptible mutex_lock (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix leftovers at probe error path (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Remove dead codes (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Minor cleanup of MIDI event parser helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm: Use delay set in component pointer function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix build due to CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: remove redundant pointer 'urb' (Jaroslav Kysela) [1683051] - [sound] ALSA: sonicvibes: remove redundant pointer 'dir' (Jaroslav Kysela) [1683051] - [sound] ALSA: ens137x: remove redundant array pcm_devs (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: remove redundant variable attn (Jaroslav Kysela) [1683051] - [sound] ALSA: cs5535audio: remove redundant pointer 'dma' (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: remove redundant variable max_streams (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: remove redundant pointers 'priv' and 'rtd' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8540: remove redundant variable osrate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: add sdm845 sound card support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Add support to parse common audio device nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add support to wcd9335 codec (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Operate UAC3 Power Domains in PCM callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add UAC3 Power Domains to suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: AudioStreaming Power Domain parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Initial Power Domain support (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Use READ_ONCE/WRITE_ONCE() macros (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Offload the output event processing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: change functions to static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: add support for multichannel output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sirf: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra_alc5632: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Kconfig: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4613: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7210: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4554: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4642: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8988: fix typo in rate constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: i2s: Fix typo/broken macro (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi: Use single mutex unlock in error paths (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Turn CX8200 into D3 as well upon reboot (Jaroslav Kysela) [1683051] - [sound] ALSA: ctxfi: cthw20k2: Replace mdelay() with msleep() and usleep_range() (Jaroslav Kysela) [1683051] - [sound] ALSA: ALSA:: ctxfi: cthw20k1: Replace mdelay() with msleep() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: quirks: Replace mdelay() with msleep() and usleep_range() (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp_modem: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: bt87x: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: maestro3: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0m: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: lola: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: riptide: Properly endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Proper endian notations for BDL pointers (Jaroslav Kysela) [1683051] - [sound] ALSA: trident: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: ymfpci: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: xen: Use standard pcm_format_to_bits() for ALSA format bits (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix PCM format bit calculation (Jaroslav Kysela) [1683051] - [sound] ALSA: wss: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: Fix PCM format notations (Jaroslav Kysela) [1683051] - [sound] ALSA: au88x0: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: ad1816a: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: riptide: Fix PCM format type conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix implicit PCM format type conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: virmidi: Fix too long output trigger loop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Use standard pcm_format_to_bits() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Declare PCM format with snd_pcm_format_t (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Use snd_mask_set_format() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix interval evaluation with openmin/max (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Add snd_mask_set_format() helper for standard usages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Fix snd_pcm_format_t handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Use int for format bit position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Fix missing __user prefix in copy_user callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: zte: Fix incorrect PCM format bit usages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: align axg card driver with DT bindings documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: use IRQ_RETVAL in the fifo irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix build warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add a fix voltage regulator for DA7219 and ADAU7002 (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Fix missing PAGE_SIZE definition (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: declare snd_sgbuf_aligned_pages() unconditionally (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Fix missing __force annotation for user/kernel pointer cast (Jaroslav Kysela) [1683051] - [sound] ALSA: korg1212: Add __force annotation to cast in user-copy callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use standard lower_32_bits() and upper_32_bits() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Declare the common variable in header file (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: Declare common variables properly (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix a sparse warning about snd_ctl_elem_iface_t (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Use NULL instead of 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Use NULL instead of 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Fix the default sample sizes (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Add missing __iomem annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for Encore mDSD USB DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: cs5535audio: Fix invalid endian conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: vxpocket: Fix invalid endian conversions (Jaroslav Kysela) [1683051] - [sound] ALSA: vx222: Fix invalid endian conversions (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix poll() error return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: fix widget handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: fix inversion between __iowrite32 and __ioread32 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: simplify iomem address and casts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: make sst_dma functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: BDL definitions should be __le32 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: fix endianness handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5631: add Volume to the name of volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_utils: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_asrc: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-asoc-card: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to snd_soc_dai_get_channel_map() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514: Fix the issue of the delay volume applied (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-spdifout: select SND_PCM_IEC958 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/i915: Allow delayed i915 audio component binding (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Generic DSD detection for Thesycon-based implementations (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Don't exceed over the requested size (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: catch invalid timer object creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove clock divider and pll setup from zylonite and magician (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg sound card support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: export snd_soc_of_get_slot_mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm input driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm output driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm interface driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm formatter base driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: improve goto error label (Jaroslav Kysela) [1683051] - [usb] ALSA: powerpc/ps3: Set driver coherent_dma_mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the "Connect Tablet 9" tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirk table entries for various devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add mono speaker quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add IN2 input mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Set OVCD limit for VIOS LTH17 to 2000uA (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix using the wrong GPIO for the ext-amp on some boards (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add IN3 Boost volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Parse HOST_BUFFER controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Allow up to 8 channels for voice control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Take prefix into account in control name length (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct algorithm list allocation size (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Ensure DSP boot work complete before preloader_put return (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Allow changing from a bad sample rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg spdif output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg toddr driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg frddr driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg fifo base driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: Add documentation for power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: remove component fw related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to card re-bind using component framework (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Add __force to cast in snd_pcm_lib_read/write() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Nuke snd_pcm_lib_mmap_vmalloc() (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Use kvmalloc() for buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Minor code refactoring (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Simplify error paths (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Tidy up coding styles (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Make audio component support more generic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/i915: Associate audio component with devres (Jaroslav Kysela) [1683051] - [sound] ALSA: drm/i915: Split audio component to a generic type (Jaroslav Kysela) [1683051] - [sound] ALSA: emu8000: Use swap macro in snd_emu8000_sample_new (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1_patch: Use swap macro in snd_emu10k1_sample_new (Jaroslav Kysela) [1683051] - [gpu] ALSA: vga_switcheroo: set audio client id according to bound GPU id (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: use PCI_BASE_CLASS_DISPLAY to replace PCI_CLASS_DISPLAY_VGA (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Tidy up logic for Processing Unit min/max values (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Unify virtual type units type to UAC3 values (Jaroslav Kysela) [1683051] - [include] ALSA: usb-audio: Add support for Processing Units in UAC3 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Processing Unit controls parsing in UAC2 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for Selector Units in UAC3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: For capture have interrupts on I2S->ACP channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Send correct channel for configuring DMA descriptors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add GLK Realtek Maxim I2S machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix routing (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: remove redundant pointer 'ins' (Jaroslav Kysela) [1683051] - [sound] ALSA: ali5451: remove redundant pointer 'codec' (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: remove redundant pointer runtime (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: remove redundant pointer private_data (Jaroslav Kysela) [1683051] - [sound] ALSA: es1688: remove redundant pointer chip (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: remove redundant pointer opl3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: off by one in routing_hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: fix a range check in of_q6afe_parse_dai_data() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: allow soc-core to pick up name prefixes from component nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: add rate merge to the BE stream merge (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: rework runtime stream merge (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix snd_interval_refine first/last with open min/max (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Reporting button presses (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Disable jack-detect over suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add button press support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Allow disabling jack-detect by calling set_jack(NULL) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Fix workqueue cancel vs irq free race on remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add support for externar amplifier enable GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Move getting of codec_dev into probe() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove is_valleyview helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix2 8 tablet (Jaroslav Kysela) [1683051] - [dma] ALSA: dmaengine: add support for reporting pause and resume separately (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau171x1: Connect playback DAI to the DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: make SND_PXA_SOC_SSP depend on PLAT_PXA (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: replace "p" with "pK" (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Allow drivers to set R/W wait time. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: add support for an external clock in devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: cmd: Add missing newline to debug message (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: Use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Do not overwrite slim dai num_channels (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add slim rx routings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add support to slim tx dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: Add missing slimbus capture ports (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sti: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8825: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: do not close port if its not opened (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: do not close port if its not opened (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use snd_pcm_stop_xrun() for xrun injection (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: trace XRUN event at injection, too (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Allow topology to override machine driver FE DAI link config. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel-i2s: Remove unnecessary audio PLL clock (aclk) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: add support for the es7154 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: correct required power supplies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Simplify trigger handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Reset bytescount when starting transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Do not generate interrups for every captured sample (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix Capture DMA channel names (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Always subtract bytescount (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Always stop ch2 first (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7241: add es7241 codec support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add button detection mode control (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-midi: use irqsave() in USB's complete callback (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: caiaq: audio: use irqsave() in USB's complete callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: Add VDD and AVDD power supplies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: check if mclk rate is valid (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: remove 64kHz rate from the supported rates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: remove .set_pll() and .set_clkdiv() callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: select SND_PXA2XX_LIB for drivers that depend on it (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ac97: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-compress: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-topology: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dapm: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-devres.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-jack.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dpcm.h: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-ops.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dai.h: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-io.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: snd-aoa: add of_node_put() in error path (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mt6797: sub dai use list_head (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: sub dai use list_head (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: make SND_PXA2XX_SOC_I2S selectable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove bindings from pxa2xx-pcm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: provide PCM ops for ssp, i2s and ac97 components (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa2xx-pcm-lib: fix indenting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: move some functions to pxa2xx-lib (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: clean up function names in pxa2xx-lib (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fold pxa2xx-pcm into its only user, pxa2xx-ac97 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove the dmaengine compat need (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Don't fall back to generic when i915 binding fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: don't merge format from invalid codec dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: extend channel merging to the backend cpu dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: qdafe: fix some off by one bugs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: improve runtime update predictability (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add AZX_DCAPS_PM_RUNTIME for AMD Raven Ridge (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: add extended ops in the hdac_bus (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: remove memory allocation from snd_hdac_ext_bus_device_init (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: split snd_hda_codec_new function (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: ext: add wait for codec to respond after link reset (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_driver, use hdac_driver instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_bus and use hdac_bus instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_device and use hdac_device instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Move in_pm accessors to HDA core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas517x: add tas5707 support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifer: add simple-amplifier compatible (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: rename dio2125 to simple-amplifer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Sort DMI table entries alphabetically (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_HP_LR_SWAPPED quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Simplify card long-name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix DMIC map headsetmic mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix IN1 map headsetmic mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove IN2 input mappings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix IN1_IN2_MAP quirk not being logged (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Change default input map from in2 to in1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_DEFAULT_QUIRKS define (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Kill snd_hda_codec_update_cache() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC882 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC262 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC268 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC259 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC662 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: Fix references to Documentation/.*/MultiSound (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: remove unused struct q6asm member (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add proper error check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: remove redundant owner assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6adm: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils: Fix unregistration order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cx20442: Don't ignore regulator_get() errors. (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply PRE_PROBE fixup after ALC269 codec variant setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Use standard verb containers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Simplify control management (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Rewrite with error goto (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/cirrus - Simplify creation of new controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/conexant - Clean up beep code (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common helper for creating beep controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common helper for creating ALC268 beep controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common GPIO mask for ALC660VD ASUS fixup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify Dell XPS13 GPIO handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Convert some manual GPIO setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify mute LED GPIO handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify alc885_fixup_macpro_gpio() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Consolidate gpio_data and gpio_led (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add GPIO data update helper (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Manage GPIO bits commonly (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Allow skipping spec->init_amp detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: add codecs devicetree binding (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm: DPCM cares BE channel constraint (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Configure channel 1 or channel 0 for capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Change codec to channel link as per hardware redesign (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: remove redundant check of PLL ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt1305: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: fix missing rename from 'reef' to 'sof' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify alc269_fixup_hp_line1_mic1_led() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Sanity check of unexpected cap_sync_hook override (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/sigmatel - Use common helper for mic mute LED (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Allow multiple ADCs for mic mute LED controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/conexant - Use the mic-mute LED helper (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use the mic-mute LED helper for HP and others (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Use the common helper for thinkpad_acpi mic mute LED handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Move mic mute LED helper to the generic parser (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: rename 'reef' to 'sof' in ACPI matching table (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: Set compressed IRQ to a wake source (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Simplify handling of alg offset and length (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add support for Motu Traveler (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: cancel chunk alignment for protocol version 2 (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add a flag for AES/EBU on XLR interface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add a flag for chunks for main 1/2 out (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: suppless consumption for unused element of array in stack (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: Tidy up open/hw_params handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: fix copy/paste issue with SOF/broadwell topology file (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add entries for SOF-based machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add firmware/topology information for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add Geminilake Dialog+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: move SKL+ codec ACPI tables to common directory (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: cleanup before moving ACPI tables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: broxton: reduce machine name for bxt_da7219_max98357a (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: add fe_ops for kbl Audio Capture Port (Jaroslav Kysela) [1683051] - [sound] ALSA: ARM: pxa: change SSP DMA channels allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: stop using get_seconds() (Jaroslav Kysela) [1683051] - [sound] ALSA: ctxfi: use enum type CT_SUM_CTL where appropriate (Jaroslav Kysela) [1683051] - [sound] ALSA: ice1724: remove unused array (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Fix Acer Iconia 8 over-current detect threshold (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Nuvison/TMax TM800W560 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: add devicetree support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: PCM1789: unconditionally flush work (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add rt5682 codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Add headphone auto switching (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Remove Playback/Capture in names (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Add mic bias boost control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4458: make structure soc_codec_dev_ak4458 static const (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak5558: make two structures static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: twl6040: make pointer dmic_codec_dev static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: set card as device drvdata (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add rsnd_daidrv_get() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add hp and mic detect gpios same as simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: move hp and mic detection to soc_card probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: move hp and mic detect gpios from simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Vi10 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt1305: Use ULL suffixes for 64-bit constants (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add config for rockchip dmaengine pcm register (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: put device_node on remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add iec958 controls support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add NULL pointer check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: SSI parent cares SWSP bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: has .symmetric_rates if SSIs are sharing WS pin (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh7760-ac97: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dma-sh7760: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: migor: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: siu: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hac: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Add callback for DAPM route load/unload (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Give more data to clients via callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix potential DAI widget pointer deref when linking DAIs (Jaroslav Kysela) [1683051] - [fs] gfs2: Fix loop in gfs2_rbm_find (v2) (Andreas Grunbacher) [1690483] - [fs] gfs2: Rename bitmap.bi_{len => bytes} (Andreas Grunbacher) [1690483]- [vfio] vfio/pci: Mask buggy SR-IOV VF INTx support (Myron Stowe) [1678076] - [netdrv] net/ibmvnic: Update carrier state after link state change (Steve Best) [1711282] - [netdrv] net/ibmvnic: Update MAC address settings after adapter reset (Steve Best) [1711282] - [scsi] scsi: storvsc: Reduce default ring buffer size to 128 Kbytes (Cathy Avery) [1691370] - [scsi] scsi: storvsc: Fix calculation of sub-channel count (Cathy Avery) [1691370] - [powercap] powercap: RAPL: Get rid of custom RAPL_CPU() macro (Alexander Beregalov) [1706827] - [tools] tools/power turbostat: Increase default buffer size (Prarit Bhargava) [1711260] - [char] virtio_console: initialize vtermno value for ports (Pankaj Gupta) [1460636] - [rpmspec] redhat: exclude kvm_stat from pathfix.py's tenure (Vitaly Kuznetsov) [1692804] - [virt] kvm: arm: Skip stage2 huge mappings for unaligned ipa backed by THP (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Ensure vcpu target is unset on reset failure (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-v3: Retire pending interrupts on disabling LPIs (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Fix CNTP_TVAL calculation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move RSB stuffing to before the first RET after VM-Exit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Fix size checks in vmx_set_nested_state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Check for in-kernel LAPIC before deferencing apic pointer (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix KVM_CLEAR_DIRTY_LOG for memory slots of unaligned size (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: reset MMU context when 32-bit guest switches PAE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Whitelist port 0x7e for pre-incrementing rip (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Convert guest TSC to host time domain if necessary (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Allow user to disable adaptive tuning of timer advancement (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Track lapic timer advance per vCPU (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Disable timer advancement if adaptive tuning goes haywire (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyper-v: deal with buggy TLB flush requests from WS2012 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Consider LAPIC TSC-Deadline timer expired if deadline too short (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix spectrev1 gadgets (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix warning Using plain integer as NULL pointer (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: add a selftest for SMM (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: fix for compilers that do not support -no-pie (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm/evmcs_test: complete I/O before migrating guest state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Always use 32-bit SMRAM save state for 32-bit kernels (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: clear SMM flags before loading state while leaving SMM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Open code kvm_set_hflags (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Load SMRAM in a single shot when leaving SMM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Expose RDPMC-exiting only when guest supports PMU (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm: move kvm_load/put_guest_xcr0 into atomic context (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: svm: make sure NMI is injected after nmi_singlestep (Vitaly Kuznetsov) [1692804] - [kvm] svm/avic: Fix invalidate logical APIC id entry (Vitaly Kuznetsov) [1692804] - [kvm] Revert "svm: Fix AVIC incomplete IPI emulation" (Vitaly Kuznetsov) [1692804] - [kvm] kvm: mmu: Fix overflow on kvm mmu page limit calculation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: always use early vmcs check when EPT is disabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: allow tests to use bad virtual-APIC page address (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Fix an inverted list_empty() check when zapping sptes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: fix x2APIC VTPR read intercept (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: close leak of L0's x2APIC MSRs (CVE-2019-3887) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: SVM: prevent DBG_DECRYPT and DBG_ENCRYPT overflow (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: fix potential get_num_contig_pages overflow (Vitaly Kuznetsov) [1692804] - [documentation] Documentation: kvm: clarify KVM_SET_USER_MEMORY_REGION (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: complete IO before migrating guest state (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: disable stack protector for all KVM tests (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: explicitly disable PIE for tests (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: assert on exit reason in CR4/cpuid sync test (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: update rip after emulating IO (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: avoid spurious pending stimer on vCPU init (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86: Move MSR_IA32_ARCH_CAPABILITIES to array emulated_msrs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts (Vitaly Kuznetsov) [1692804] - [virt] kvm: don't redefine flags as something else (Vitaly Kuznetsov) [1692804] - [kvm] kvm: mmu: Used range based flushing in slot_handle_level_range (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Fix definition of HV_MAX_FLUSH_REP_COUNT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: remove check on nr_mmu_pages in kvm_arch_commit_memory_region() (Vitaly Kuznetsov) [1692804] - [kvm] kvm: nVMX: Add a vmentry check for HOST_SYSENTER_ESP and HOST_SYSENTER_EIP fields (Vitaly Kuznetsov) [1692804] - [kvm] KVM: SVM: Workaround errata#1096 (insn_len maybe zero on SMAP violation) (Vitaly Kuznetsov) [1692804] - [virt] KVM: Reject device ioctls from processes other than the VM's creator (Vitaly Kuznetsov) [1692804] - [documentation] KVM: doc: Fix incorrect word ordering regarding supported use of APIs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix handling of role.cr4_pae and rename it to 'gpte_size' (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Do not inherit quadrant and invalid for the root shadow EPT (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Comments cleanup in mmu.c (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Make attribute accessors static (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Fix handling of stage2 huge mappings (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Enforce PTE mappings at stage2 when needed (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Take the srcu lock when parsing the memslots (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Take the srcu lock when writing to guest memory (Vitaly Kuznetsov) [1692804] - [virt] arm64: KVM: Always set ICH_HCR_EL2.EN if GICv4 is enabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Reset the PMU in preemptible context (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: fix formatting of a comment (Vitaly Kuznetsov) [1692804] - [documentation] KVM: doc: Document the life cycle of a VM and its resources (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()" (Vitaly Kuznetsov) [1692804] - [documentation] virtio-ccw: diag 500 may return a negative cookie (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Add count cache flush parameters to kvmppc_get_cpu_char() (Vitaly Kuznetsov) [1692804] - [virt] kvm: properly check debugfs dentry before using it (Vitaly Kuznetsov) [1692804] - [powerpc] KVM: PPC: Fix compilation when KVM is not enabled (Vitaly Kuznetsov) [1692804] - [powerpc] powerpc: Avoid circular header inclusion in mmu-hash.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: MMU: record maximum physical address width in kvm_mmu_extended_role (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Return LA57 feature based on hardware capability (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: fix switch between root and guest MMUs (Vitaly Kuznetsov) [1692804] - [virt] KVM: Minor cleanups for kvm_main.c (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2 (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/kvm: Save and restore host AMR/IAMR/UAMOR (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Improve KVM reference counting (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Fix build failure without IOMMU support (Vitaly Kuznetsov) [1692804] - [powerpc] powerpc/64s: Better printing of machine check info for guest MCEs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Simplify machine check handling (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Context switch AMR on Power9 (Vitaly Kuznetsov) [1692804] - [virt] Revert "KVM: Eliminate extra function calls in kvm_get_dirty_log_protect()" (Vitaly Kuznetsov) [1692804] - [x86] x86: kvmguest: use TSC clocksource if invariant TSC is exposed (Vitaly Kuznetsov) [1692804] - [virt] KVM: Never start grow vCPU halt_poll_ns from value below halt_poll_ns_grow_start (Vitaly Kuznetsov) [1692804] - [virt] KVM: Expose the initial start value in grow_halt_poll_ns() as a module parameter (Vitaly Kuznetsov) [1692804] - [virt] KVM: grow_halt_poll_ns() should never shrink vCPU halt_poll_ns (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Consolidate kvm_mmu_zap_all() and kvm_mmu_zap_mmio_sptes() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: WARN if zapping a MMIO spte results in zapping children (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Differentiate between nr zapped and list unstable (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: fast invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Voluntarily reschedule as needed when zapping all sptes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: skip over invalid root pages when zapping all sptes (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: x86: use the fast way to invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: show mmu_valid_gen in shadow page related tracepoints" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: add tracepoint for kvm_mmu_invalidate_all_pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: zap pages in batch" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: collapse TLB flushes when zap all pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: reclaim the zapped-obsolete page first" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Remove is_obsolete() call (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Voluntarily reschedule as needed when zapping MMIO sptes (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: drop kvm_mmu_zap_mmio_sptes" (Vitaly Kuznetsov) [1692804] - [x86] Revert "KVM: MMU: document fast invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Zap only the relevant pages when removing a memslot (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Split remote_flush+zap case out of kvm_mmu_flush_or_zap() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Move slot_level_*() helper functions up a few lines (Vitaly Kuznetsov) [1692804] - [virt] KVM: Move the memslot update in-progress flag to bit 63 (Vitaly Kuznetsov) [1692804] - [virt] KVM: Remove the hack to trigger memslot generation wraparound (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Refactor the MMIO SPTE generation handling (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Use a u64 when passing the MMIO gen around (Vitaly Kuznetsov) [1692804] - [virt] KVM: Explicitly define the "memslot update in-progress" bit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Do not cache MMIO accesses while memslots are in flux (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Detect MMIO generation wrap in any address space (Vitaly Kuznetsov) [1692804] - [virt] KVM: Call kvm_arch_memslots_updated() before updating memslots (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [virt] kvm: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not start the preemption timer hrtimer unnecessarily (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Fix typos in vmentry/vmexit control setting (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: cleanup freeing of nested state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Sync the pending Posted-Interrupts (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: expose MOVDIR64B CPU feature into VM. (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: expose MOVDIRI CPU feature into VM. (Vitaly Kuznetsov) [1692804] - [kvm] kvm, x86, mmu: Use kernel generic dynamic physical address mask (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: remove useless is_protmode check (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Ignore limit checks on VMX instructions using flat segments (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Apply addr size mask to effective address for VMX instructions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Sign extend displacements of VMX instr's mem operands (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix improper check when deactivate AVIC (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: cull apicv code when userspace irqchip is requested (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix AVIC DFR and LDR handling (Vitaly Kuznetsov) [1692804] - [virt] kvm: Use struct_size() in kmalloc() (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: set offset for kvm unstable clock (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Reorder clearing of registers in the vCPU-run assembly flow (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Call vCPU-run asm sub-routine from C and remove clobbering (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Preserve callee-save registers in vCPU-run asm sub-routine (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Return VM-Fail from vCPU-run assembly via standard ABI reg (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass @launched to the vCPU-run asm via standard ABI regs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use RAX as the scratch register during vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Rename ____vmx_vcpu_run() to __vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Fold __vmx_vcpu_run() back into vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move vCPU-run code to a proper assembly routine (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Create a stack frame in vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use #defines in place of immediates in VM-Enter inline asm (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: Explicitly #define the VCPU_REGS_* indices (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Remove unused gpa_end variable (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Fix comment for KVM_PHYS_SHIFT (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: fix spelling mistake: "auxilary" -> "auxiliary" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Prefix header search paths with $(srctree)/ (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Fix TRACE_INCLUDE_PATH (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Mark physical interrupt active when a virtual interrupt is pending (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Describe data or unified caches as having 1 set and 1 way (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Expose sanitised cache type register to guest (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Move kvm_is_write_fault to header file (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Assign the phys timer on VHE systems (Vitaly Kuznetsov) [1692804] - [include] clocksource/arm_arch_timer: Store physical timer IRQ number for KVM on VHE (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: timer: Rework data structures for multiple timers (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: consolidate arch timer trap handlers (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Reuse sys_reg() macro when searching the trap table (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Fix ICH_ELRSR_EL2 sysreg naming (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Simplify bg_timer programming (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm/arm64: Factor out VMID into struct kvm_vmid (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Statically configure the host's view of MPIDR (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Drop VHE-specific HYP call stub (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Allow for direct call of HYP functions when using VHE (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Introduce kvm_call_hyp_ret() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Release all hardware TCE tables attached to a group (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Optimise mmio emulation for devices on FAST_MMIO_BUS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Allow XICS emulation to work in nested hosts using XIVE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Replace kmalloc_node+memset with kzalloc_node (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Add emulation for slbfee. instruction (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Fix entry number check for add_atomic_switch_msr() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Recompute PID.ON when clearing PID.SN (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Restore a preemption timer consistency check (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: read from MSR_IA32_VMX_PROCBASED_CTLS2 only when it is available (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use vcpu->arch.regs directly when saving/loading guest state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Don't save guest registers after VM-Fail (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Invert the ordering of saving guest/host scratch reg at VM-Enter (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass "launched" directly to the vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Update VMCS.HOST_RSP via helper C function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Load/save guest CR2 via C code in __vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Cache host_rsp on a per-VMCS basis (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Let the compiler select the reg for holding HOST_RSP (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Reference vmx->loaded_vmcs->launched directly (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Capture VM-Fail via CC_{SET, OUT} in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Capture VM-Fail to a local var in nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Explicitly reference the scratch reg in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Drop STACK_FRAME_NON_STANDARD from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Remove a rogue "rax" clobber from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Let the compiler save/load RDX during vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Manually load RDX in vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Save RSI to an unused output in the vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Modify only RSP when creating a placeholder for guest's RCX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Zero out *all* general purpose registers after VM-Exit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Check a single byte for VMCS "launched" in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: add selftest for releasing VM file descriptor while in L2 (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm/arm64: Add kvm_ras.h to collect kvm specific RAS plumbing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: work around leak of uninitialized stack contents (CVE-2019-7222) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Forbid kprobing of the VHE world-switch code (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Relax the restriction on using stage2 PUD huge mapping (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Always initialize the group of private IRQs (Vitaly Kuznetsov) [1692804] - [kvm] arm/arm64: KVM: Don't panic on failure to properly reset system registers (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Allow a VCPU to fully reset itself (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Reset the VCPU without preemption and vcpu state loaded (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: fix possible null pointer dereference in pending_irqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: start using the GIB (Vitaly Kuznetsov) [1692804] - [s390] KVM: s390: add gib_alert_irq_handler() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: kvm_s390_gisa_clear() now clears the IPM only (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add functions to (un)register GISC with GISA (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add kvm reference to struct sie_page2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add the GIB and its related life-cyle functions (Vitaly Kuznetsov) [1692804] - [s390] s390/cio: add function chsc_sgib() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: introduce struct kvm_s390_gisa_interrupt (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: remove kvm_s390_ from gisa static inline functions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: use pending_irqs_no_gisa() where appropriate (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: coding style kvm_s390_gisa_init/clear() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: move bitmap idle_mask into arch struct top level (Vitaly Kuznetsov) [1692804] - [virt] virt/kvm: Replace spin_is_locked() with lockdep (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Mark expected switch fall-throughs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix TRACE_INCLUDE_PATH and remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: check returned evmcs version range (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: nested_enable_evmcs() sets vmcs_version incorrectly (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move vmx_vcpu_run()'s VM-Enter asm blob to a helper function (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: Fix region overlap check in kvm_util (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: fix some -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nSVM: clear events pending from svm_complete_interrupts() when exiting to L1 (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix AVIC incomplete IPI emulation (Vitaly Kuznetsov) [1692804] - [kvm] svm: Add warning message for AVIC IPI invalid target (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: WARN_ONCE if sending a PV IPI returns a fatal error (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix PV IPIs for 32-bit KVM host (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: recommend using eVMCS only when it is enabled (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: don't recommend doing reset via synthetic MSR (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86/vmx: Use kzalloc for cached_vmcs12 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use the correct field var when clearing VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix single-step debugging (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: don't announce GUEST IDLE MSR support (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Don't generate UNDEF when LORegion feature is present (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_cpu->ap_list_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_dist->lpi_list_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_irq->irq_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [kvm] KVM: powerpc: remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [documentation] Documentation/virtual/kvm: Update URL for AMD SEV API specification (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Avoid return error when flush tlb successfully in the hv_remote_flush_tlb_with_range() (Vitaly Kuznetsov) [1692804] - [kvm] kvm: sev: Fail KVM_SEV_INIT if already initialized (Vitaly Kuznetsov) [1692804] - [virt] KVM: validate userspace input in kvm_clear_dirty_log_protect() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix bit shifting in update_intel_pt_cfg (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: radix: Fix uninitialized var build error (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: ucall: fix exit mmio address guessing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VM-Enter + VM-Exit handling to non-inline sub-routines (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Explicitly reference RCX as the vmx_vcpu pointer in asm blobs (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use SVM assembly instruction mnemonics instead of .byte streams (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range() (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Flush tlb directly in kvm_set_pte_rmapp() (Vitaly Kuznetsov) [1692804] - [virt] KVM/MMU: Move tlb flush in kvm_set_pte_rmapp() to kvm_mmu_notifier_change_pte() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: Make kvm_set_spte_hva() return int (Vitaly Kuznetsov) [1692804] - [kvm] KVM: Replace old tlb flush function with new one to flush a specified range. (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Add tlb flush with range helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Add hv tlb range flush support (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Add HvFlushGuestAddressList hypercall support (Vitaly Kuznetsov) [1692804] - [x86] KVM: Add tlb_remote_flush_with_range callback in kvm_x86_ops (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Disable Intel PT when VMXON in L1 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Set intercept for Intel PT MSRs read/write (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Implement Intel PT MSRs read/write emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Introduce a function to initialize the PT configuration (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel PT context switch for each vcpu (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel Processor Trace cpuid emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel PT virtualization work mode (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: add new capability for Intel PT (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Add new bit definitions for PT MSRs (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Introduce intel_pt_validate_cap() (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Export pt_cap_get() (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Move Intel PT MSRs bit defines to global header (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: aarch64: dirty_log_test: support greater than 40-bit IPAs (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add pa-48/va-48 VM modes (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: improve mode param management (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: reset guest test phys offset (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: always use -t (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: don't identity map the test mem (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: x86_64: dirty_log_test: fix -t (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix some typos (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: convert to SPDX identifiers (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Remove KF() macro placeholder (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Allow guest read access to IA32_TSC (Vitaly Kuznetsov) [1692804] - [kvm] kvm: nVMX: NMI-window and interrupt-window exiting should wake L2 from HLT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nSVM: Fix nested guest support for PAUSE filtering. (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Remove duplicated include from vmx.c (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: report failed stage when exit reason is unexpected (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix size of x86_fpu_cache objects (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/fsl: Flush branch predictor when entering KVM (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/fsl: Emulate SPRN_BUCSR register (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nSVM: fix switch to guest mmu (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Add trapped system register access tracepoint (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Make vcpu const in vcpu_read_sys_reg (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Simplify kvm_timer_vcpu_terminate (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Remove arch timer workqueue (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix unregistering coalesced mmio zone from wrong bus (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Add support for creating PUD hugepages at stage 2 (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Update age handlers to support PUD hugepages (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Support handling access faults for PUD hugepages (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Support PUD hugepage in stage2_is_exec() (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Support dirty page tracking for PUD hugepages (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Introduce helpers to manipulate page table entries (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Re-factor setting the Stage 2 entry to exec on fault (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Share common code in user_mem_abort() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Log PSTATE for unhandled sysregs (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Consistently advance singlestep when emulating instructions (Vitaly Kuznetsov) [1692804] - [virt] arm64: KVM: Skip MMIO insn after emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L3 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Introduce new hcall H_COPY_TOFROM_GUEST to access quadrants 1 & 2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L2 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Update kvmppc_st and kvmppc_ld to use quadrants (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Add load_from_eaddr and store_to_eaddr to the kvmppc_ops struct (Vitaly Kuznetsov) [1692804] - [powerpc] KVM: PPC: Book3S HV: Implement functions to access quadrants 1 & 2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Add function kvmhv_vcpu_is_radix() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Only report KVM_CAP_SPAPR_TCE_VFIO on powernv machines (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: ucall: improve ucall placement in memory, fix unsigned comparison (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Dynamically allocate guest_fpu (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Use task structs fpu field for user (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for Guest Non-Register States to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for Host Control Registers and MSRs to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Entry Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Exit Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Remove param indirection from nested_vmx_check_msr_switch() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Execution Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Prepend "nested_vmx_" to check_vmentry_{pre, post}reqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Check ept_pointer before flushing ept tlb (Vitaly Kuznetsov) [1692804] - [kvm] KVM nVMX: MSRs should not be stored if VM-entry fails during or after loading guest state (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Don't modify MSR_PLATFORM_INFO on vCPU reset (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: add cpu into VMX preemption timer bug list (Vitaly Kuznetsov) [1692804] - [kvm] x86/hyper-v: Stop caring about EOI for direct stimers (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: avoid open-coding stimer_mark_pending() in kvm_hv_notify_acked_sint() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: direct mode for synthetic timers (Vitaly Kuznetsov) [1692804] - [x86] x86/kvm/hyper-v: use stimer config definition from hyperv-tlfs.h (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: Add hyperv_cpuid test (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: implement an unchecked version of vcpu_ioctl() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: Introduce KVM_GET_SUPPORTED_HV_CPUID (Vitaly Kuznetsov) [1692804] - [kvm] x86/hyper-v: Do some housekeeping in hyperv-tlfs.h (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Mark TLFS structures packed (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: Introduce nested_get_evmcs_version() helper (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyperv: don't retry message delivery for periodic timers (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyperv: simplify SynIC message delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: remove unnecessary recalculate_apic_map (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: remove unused struct definition (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Skip all SYSCALL MSRs in setup_msrs() when !EFER.SCE (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Don't set hardware IA32_CSTAR MSR on VM-entry (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Document the need for MSR_STAR in i386 builds (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Set IA32_TSC_AUX for legacy mode guests (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move nested code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose nested_vmx_allowed() to nested VMX as a non-inline (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose various getters and setters to nested VMX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose misc variables needed for nested VMX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move "vmcs12 to shadow/evmcs sync" to helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Call nested_vmx_setup_ctls_msrs() iff @nested is true (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Set callbacks for nested functions during hardware setup (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move the hardware {un}setup functions to the bottom (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: Allow nested_enable_evmcs to be NULL (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move nested hardware/vcpu {un}setup to helper functions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMX instruction wrappers to a dedicated header file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move eVMCS code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Add vmx.h to hold VMX definitions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move vmcs12 code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMCS definitions to dedicated file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose various module param vars via capabilities.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move capabilities structs and helpers to dedicated file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass vmx_capability struct to setup_vmcs_config() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Properly handle dynamic VM Entry/Exit controls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move caching of MSR_IA32_XSS to hardware_setup() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Drop the "vmx" prefix from vmx_evmcs.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: rename vmx_shadow_fields.h to vmcs_shadow_fields.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMX specific files to a "vmx" subdirectory (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add requisite includes to hyperv.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add requisite includes to kvm_cache_regs.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Alphabetize the includes in vmx.c (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Allocate and configure VM{READ, WRITE} bitmaps iff enable_shadow_vmcs (Vitaly Kuznetsov) [1692804] - [tools] kvm: introduce manual dirty log reprotect (Vitaly Kuznetsov) [1692804] - [virt] kvm: rename last argument to kvm_get_dirty_log_protect (Vitaly Kuznetsov) [1692804] - [virt] kvm: make KVM_CAP_ENABLE_CAP_VM architecture agnostic (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Set hflag to indicate that POWER9 supports 1T segments (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Change to use DEFINE_SHOW_ATTRIBUTE macro (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Don't trap host pointer auth use to EL2 (Vitaly Kuznetsov) [1692804] - [kvm] arm64/kvm: hide ptrauth from guests (Vitaly Kuznetsov) [1692804] - [arm64] arm64: add pointer authentication register bits (Vitaly Kuznetsov) [1692804] - [arm64] arm64: add comments about EC exception levels (Vitaly Kuznetsov) [1692804] - [arm64] arm64/kvm: consistently handle host HCR_EL2 flags (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Add configuration/documentation for Cortex-A76 erratum 1165522 (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Handle ARM erratum 1165522 in TLB invalidation (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Add synchronization on translation regime change for erratum 1165522 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Force VHE for systems affected by erratum 1165522 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Add TCR_EPD{0,1} definitions (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Rework detection of SVE, !VHE systems (Vitaly Kuznetsov) [1692804] - [kvm] nVMX x86: Check VMX-preemption timer controls on vmentry of L2 guests (Vitaly Kuznetsov) [1692804] - [kvm] KVM/nVMX: Remove unneeded forward jump in nested_vmx_check_vmentry_hw asm (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Unrestricted guest mode requires EPT (Vitaly Kuznetsov) [1692804] - [tools] tools/kvm_stat: switch to python3 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Trace changes to active TSC offset regardless if vCPU in guest-mode (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: vmcs12 revision_id is always VMCS12_REVISION even when copied from eVMCS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Verify eVMCS revision id match supported eVMCS version on eVMCS VMPTRLD (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/vmx: fix old-style function declaration (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix empty-body warnings (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Fix kernel info-leak when enabling KVM_CAP_HYPERV_ENLIGHTENED_VMCS more than once (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Replace spin_is_locked() with lockdep (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Move and undef TRACE_INCLUDE_PATH/FILE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Use exported tb_to_ns() function in decrementer emulation (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: Fix -Wformat warnings (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: fix spelling mistake "Insufficent" -> "Insufficient" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "kvm: x86: optimize dr6 restore" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Optimize clearing TCEs for sparse tables (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: tweak shadow fields (Vitaly Kuznetsov) [1692804] - [tools] selftests/kvm: add missing executables to .gitignore (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Don't use streamlined entry path on early POWER9 chips (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Enable 32 bits kvm vcpu events support (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Rename function kvm_arch_dev_ioctl_check_extension() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: enable nested virtualization by default (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use 32bit xor to clear registers in svm.c (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Introduce KVM_CAP_EXCEPTION_PAYLOAD (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Defer setting of DR6 until #DB delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Defer setting of CR2 until #PF delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add payload operands to kvm_multiple_exception (Vitaly Kuznetsov) [1692804] - [x86] kvm: x86: Add exception payload fields to kvm_vcpu_events (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add has_payload and payload to kvm_queued_exception (Vitaly Kuznetsov) [1692804] - [documentation] KVM: Documentation: Fix omission in struct kvm_vcpu_events (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: add Enlightened VMCS test (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: nested state migration for Enlightened VMCS (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: state_test: test bare VMXON migration (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyperv: don't clear VP assist pages on init (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: optimize prepare_vmcs02{, _full} for Enlightened VMCS case (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: implement enlightened VMPTRLD and VMCLEAR (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add enlightened VMCS state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add KVM_CAP_HYPERV_ENLIGHTENED_VMCS capability (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: refactor evmcs_sanitize_exec_ctrls() (Vitaly Kuznetsov) [1692804] - [virt] KVM: refine the comment of function gfn_to_hva_memslot_prot() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: reintroduce pte_list_remove, but including mmu_spte_clear_track_bits (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: rename pte_list_remove to __pte_list_remove (Vitaly Kuznetsov) [1692804] - [virt] kvm/x86 : add coalesced pio support (Vitaly Kuznetsov) [1692804] - [documentation] kvm/x86 : add document for coalesced mmio (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86 : fix some typo (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Change hv flush logic when ept tables are mismatched. (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use 32bit xor to clear register (Vitaly Kuznetsov) [1692804] - [x86] KVM/x86: Use assembly instruction mnemonics instead of .byte streams (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Fix invvpid and invept register operand size in 64-bit mode (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: check if MMU reconfiguration is needed in init_kvm_nested_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: check if tdp/shadow MMU reconfiguration is needed (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: introduce source data cache for kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: make space for source data caching in struct kvm_mmu (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: get rid of redundant kvm_mmu_setup() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: introduce guest_mmu (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu.c: add kvm_mmu parameter to kvm_mmu_free_roots() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu.c: set get_pdptr hook in kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: make vcpu->mmu a pointer to the current MMU (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: optimize dr6 restore (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: optimize sparse VP set processing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: fix 'tlb_lush' typo (Vitaly Kuznetsov) [1692804] - [virt] vgic: Add support for 52bit guest physical address (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: WARN if nested run hits VMFail with early consistency checks enabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add option to perform early consistency checks via H/W (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: write HOST_IA32_EFER in vmx_set_constant_host_state() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: call kvm_skip_emulated_instruction in nested_vmx_{fail, succeed} (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not call nested_vmx_succeed() for consistency check VMExit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not skip VMEnter instruction that succeeds (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do early preparation of vmcs02 before check_vmentry_postreqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: initialize vmcs02 constant exactly once (per VMCS) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: split pieces of prepare_vmcs02() to prepare_vmcs02_early() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: remove ASSERT() on vmx->pml_pg validity (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vVMX: rename label for post-enter_guest_mode consistency check (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: assimilate nested_vmx_entry_failure() into nested_vmx_enter_non_root_mode() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: rename enter_vmx_non_root_mode to nested_vmx_enter_non_root_mode (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: try to set EFER bits correctly when initializing controls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: do not unconditionally clear EFER switching (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: reset cache/shadows when switching loaded VMCS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: use vm_exit_controls_init() to write exit controls for vmcs02 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: move vmcs12 EPTP consistency check to check_vmentry_prereqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: move host EFER consistency checks to VMFail path (Vitaly Kuznetsov) [1692804] - [virt] KVM: leverage change to adjust slots->used_slots in update_memslots() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: implement PV IPI send hypercalls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: optimize kvm_hv_flush_tlb() for vp_index == vcpu_idx case (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: valid_bank_mask should be 'u64' (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: keep track of mismatched VP indexes (Vitaly Kuznetsov) [1692804] - [virt] KVM: x86: hyperv: optimize 'all cpus' case in kvm_hv_flush_tlb() (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86: return meaningful value from KVM_SIGNAL_MSI (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: move definition PT_MAX_HUGEPAGE_LEVEL and KVM_NR_PAGE_SIZES together (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Remve unused function is_external_interrupt(). (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: return 0 in case kvm_mmu_memory_cache has min number of objects (Vitaly Kuznetsov) [1692804] - [kvm] nVMX x86: Make nested_vmx_check_pml_controls() concise (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: adjust kvm_mmu_page member to save 8 bytes (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: support high GPAs in dirty_log_test (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: stop lying to aarch64 tests about PA-bits (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: also test 64K pages on aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: port dirty_log_test to aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: introduce new VM mode for 64K pages (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add vcpu support for aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add virt mem support for aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add vm_phy_pages_alloc (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: tidy up kvm_util (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add cscope make target (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: move arch-specific files to arch-specific locations (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: introduce ucall (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: vcpu_setup: set cr4.osfxsr (Vitaly Kuznetsov) [1692804] - [kvm] KVM: LAPIC: Tune lapic_timer_advance_ns automatically (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Do not flush TLB on L1<->L2 transitions if L1 uses VPID and EPT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Flush linear and combined mappings on VPID02 related flushes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Use correct VPID02 when emulating L1 INVVPID (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Flush TLB entries tagged by dest EPTP on L1<->L2 transitions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: rename KVM_GUEST_CR0_MASK tp KVM_VM_CR0_ALWAYS_OFF (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Remove redundand permission bits removal (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Propagate errors to the guest when failed instead of ignoring (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Provide mode where all vCPUs on a core must be the same VM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Exiting split hack mode needs to fixup both PC and LR (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Remove some extra semicolon in kvm_target_cpu (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Validate all tces before updating tables (Vitaly Kuznetsov) [1692804] - [documentation] arm64: Add silicon-errata.txt entry for ARM erratum 1188873 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: arch_timer: Add workaround for ARM erratum 1188873 (Vitaly Kuznetsov) [1692804] - [virt] signal/arm/kvm: Use send_sig_mceerr (Vitaly Kuznetsov) [1692804] - [arm64] arm64/cpufeatures: Introduce ESR_ELx_SYS64_ISS_RT() (Vitaly Kuznetsov) [1692804] - [kvm] signal/x86: Use send_sig_mceerr as apropriate (Vitaly Kuznetsov) [1692804] - [x86] x86/kvm: Use __bss_decrypted attribute in shared variables (Vitaly Kuznetsov) [1692804] - [x86] x86/mm: Add .bss..decrypted section to hold shared variables (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: Inject #UD for SGX ENCLS instruction in guest (Vitaly Kuznetsov) [1692804] - [x86] KVM: vmx: Add defines for SGX ENCLS exiting (Vitaly Kuznetsov) [1692804] - [documentation] KVM: Documentation: rename the capability of KVM_CAP_ARM_SET_SERROR_ESR (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Mark kvm_get_preset_lpj() as __init (Vitaly Kuznetsov) [1692804] - [virt] kvm: Don't open code task_pid in kvm_vcpu_ioctl (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Share the parts of get/set events useful to 32bit (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: export the capability to set guest SError syndrome (Vitaly Kuznetsov) [1692804] - [kvm] arm/arm64: KVM: Add KVM_GET/SET_VCPU_EVENTS (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Switch kvmclock data to a PER_CPU variable (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Move kvmclock vsyscall param and init to kvmclock (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Mark variables __initdata and __ro_after_init (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Cleanup the code (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Decrapify kvm_register_clock() (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Remove page size requirement from wall_clock (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Remove memblock dependency (Vitaly Kuznetsov) [1692804] - [kvm] kvm/arm: use PSR_AA32 definitions (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Handle Set/Way CMOs as NOPs if FWB is present (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Add support for Stage-2 control of memory types and cacheability (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Handle mismatched cache type (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Fix mismatched cache line size detection (Vitaly Kuznetsov) [1692804]- [lib] rhel-kabi: Add RH_KABI_FORCE_CHANGE() to radix-tree and idr functions (Don Dutile) [1692079] - [lib] XArray: Fix xa_reserve for 2-byte aligned entries (Don Dutile) [1692079] - [lib] XArray: Fix xa_erase of 2-byte aligned entries (Don Dutile) [1692079] - [lib] XArray: Use xa_cmpxchg to implement xa_reserve (Don Dutile) [1692079] - [lib] XArray: Fix xa_release in allocating arrays (Don Dutile) [1692079] - [lib] XArray: Mark xa_insert and xa_reserve as must_check (Don Dutile) [1692079] - [lib] XArray: Add cyclic allocation (Don Dutile) [1692079] - [lib] XArray: Redesign xa_alloc API (Don Dutile) [1692079] - [lib] XArray: Add support for 1s-based allocation (Don Dutile) [1692079] - [lib] XArray: Change xa_insert to return -EBUSY (Don Dutile) [1692079] - [lib] XArray: Update xa_erase family descriptions (Don Dutile) [1692079] - [lib] XArray tests: RCU lock prohibits GFP_KERNEL (Don Dutile) [1692079] - [include] XArray: Fix an arithmetic error in xa_is_err (Don Dutile) [1692079] - [lib] XArray tests: Check mark 2 gets squashed (Don Dutile) [1692079] - [include] XArray: Fix typo in comment (Don Dutile) [1692079] - [lib] XArray: Honour reserved entries in xa_insert (Don Dutile) [1692079] - [lib] XArray: Permit storing 2-byte-aligned pointers (Don Dutile) [1692079] - [lib] XArray: Change xa_for_each iterator (Don Dutile) [1692079] - [lib] XArray: Turn xa_init_flags into a static inline (Don Dutile) [1692079] - [lib] XArray tests: Add RCU locking (Don Dutile) [1692079] - [lib] XArray: Fix xa_alloc when id exceeds max (Don Dutile) [1692079] - [lib] XArray tests: Check iterating over multiorder entries (Don Dutile) [1692079] - [lib] XArray tests: Handle larger indices more elegantly (Don Dutile) [1692079] - [include] XArray: Add xa_cmpxchg_irq and xa_cmpxchg_bh (Don Dutile) [1692079] - [tools] radix tree: Don't return retry entries from lookup (Don Dutile) [1692079] - [lib] XArray tests: Add missing locking (Don Dutile) [1692079] - [lib] XArray tests: Correct some 64-bit assumptions (Don Dutile) [1692079] - [lib] XArray: Correct xa_store_range (Don Dutile) [1692079] - [lib] XArray: Fix Documentation (Don Dutile) [1692079] - [lib] XArray: Handle NULL pointers differently for allocation (Don Dutile) [1692079] - [lib] XArray: Unify xa_store and __xa_store (Don Dutile) [1692079] - [include] XArray: Add xa_store_bh() and xa_store_irq() (Don Dutile) [1692079] - [lib] XArray: Turn xa_erase into an exported function (Don Dutile) [1692079] - [lib] XArray: Unify xa_cmpxchg and __xa_cmpxchg (Don Dutile) [1692079] - [lib] XArray: Regularise xa_reserve (Don Dutile) [1692079] - [lib] XArray: Export __xa_foo to non-GPL modules (Don Dutile) [1692079] - [lib] XArray: Fix xa_for_each with a single element at 0 (Don Dutile) [1692079] - [lib] xarray: Add range store functionality (Don Dutile) [1692079] - [lib] xarray: Move multiorder_check to in-kernel tests (Don Dutile) [1692079] - [lib] xarray: Move multiorder_shrink to kernel tests (Don Dutile) [1692079] - [lib] xarray: Move multiorder account test in-kernel (Don Dutile) [1692079] - [tools] radix tree test suite: Convert iteration test to XArray (Don Dutile) [1692079] - [tools] radix tree test suite: Convert tag_tagged_items to XArray (Don Dutile) [1692079] - [tools] radix tree test suite: Convert regression1 to XArray (Don Dutile) [1692079] - [lib] ida: Convert to XArray (Don Dutile) [1692079] - [lib] xarray: Track free entries in an XArray (Don Dutile) [1692079] - [lib] xarray: Add xa_reserve and xa_release (Don Dutile) [1692079] - [lib] xarray: Add xas_create_range (Don Dutile) [1692079] - [lib] xarray: Add xas_for_each_conflict (Don Dutile) [1692079] - [lib] xarray: Step through an XArray (Don Dutile) [1692079] - [lib] xarray: Destroy an XArray (Don Dutile) [1692079] - [lib] xarray: Extract entries from an XArray (Don Dutile) [1692079] - [lib] xarray: Add XArray iterators (Don Dutile) [1692079] - [lib] xarray: Add XArray conditional store operations (Don Dutile) [1692079] - [tools] xarray: Add XArray unconditional store operations (Don Dutile) [1692079] - [tools] xarray: Add XArray marks (Don Dutile) [1692079] - [tools] xarray: Add XArray load operation (Don Dutile) [1692079] - [documentation] xarray: Add documentation (Don Dutile) [1692079] - [include] xarray: Define struct xa_node (Don Dutile) [1692079] - [tools] xarray: Add definition of struct xarray (Don Dutile) [1692079] - [lib] test_ida: Fix lockdep warning (Don Dutile) [1692079] - [lib] xarray: Change definition of sibling entries (Don Dutile) [1692079] - [mm] xarray: Replace exceptional entries (Don Dutile) [1692079] - [lib] idr: Permit any valid kernel pointer to be stored (Don Dutile) [1692079] - [pci] Update email address (Don Dutile) [1692079] - [lib] ida: Change ida_get_new_above to return the id (Don Dutile) [1692079] - [lib] ida: Remove old API (Don Dutile) [1692079] - [target] target/iscsi: Allocate session IDs from an IDA (Don Dutile) [1692079] - [target] iscsi target: fix session creation failure handling (Don Dutile) [1692079] - [drm] drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's (Don Dutile) [1692079] - [drm] drm/vmwgfx: Convert to new IDA API (Don Dutile) [1692079] - [dma] dmaengine: Convert to new IDA API (Don Dutile) [1692079] - [powerpc] ppc: Convert vas ID allocation to new IDA API (Don Dutile) [1692079] - [media] media: Convert entity ID allocation to new IDA API (Don Dutile) [1692079] - [mm] ppc: Convert mmu context allocation to new IDA API (Don Dutile) [1692079] - [net] Convert net_namespace to new IDA API (Don Dutile) [1692079] - [misc] cb710: Convert to new IDA API (Don Dutile) [1692079] - [block] rsxx: Convert to new IDA API (Don Dutile) [1692079] - [scsi] osd: Convert to new IDA API (Don Dutile) [1692079] - [scsi] sd: Convert to new IDA API (Don Dutile) [1692079] - [fs] devpts: Convert to new IDA API (Don Dutile) [1692079] - [fs] fs: Convert namespace IDAs to new API (Don Dutile) [1692079] - [fs] fs: Convert unnamed_dev_ida to new API (Don Dutile) [1692079] - [lib] test_ida: check_ida_destroy and check_ida_alloc (Don Dutile) [1692079] - [lib] test_ida: Convert check_ida_conv to new API (Don Dutile) [1692079] - [lib] test_ida: Move ida_check_max (Don Dutile) [1692079] - [lib] test_ida: Move ida_check_leaf (Don Dutile) [1692079] - [tools] idr-test: Convert ida_check_nomem to new API (Don Dutile) [1692079] - [tools] ida: Start new test_ida module (Don Dutile) [1692079] - [lib] ida: Lock the IDA in ida_destroy (Don Dutile) [1692079] - [lib] radix-tree: Fix UBSAN warning (Don Dutile) [1692079] - [include] rh_kabi: Indirect EXTEND macros so nesting of other macros will resolve. (Don Dutile) [1692079] - [s390] s390/pkey: add one more argument space for debug feature entry (Philipp Rudo) [1710033] - [s390] s390/zcrypt: fix possible deadlock situation on ap queue remove (Philipp Rudo) [1710033] - [s390] zcrypt: handle AP Info notification from CHSC SEI command (Philipp Rudo) [1710033] - [s390] s390/zcrypt: revisit ap device remove procedure (Philipp Rudo) [1710033] - [s390] pkey: Indicate old mkvp only if old and current mkvp are different (Philipp Rudo) [1710033] - [s390] s390/zcrypt: use new state UNBOUND during queue driver rebind (Philipp Rudo) [1710033] - [s390] s390/zcrypt: fix specification exception on z196 during ap probe (Philipp Rudo) [1710033] - [s390] s390/zcrypt: rework ap scan bus code (Philipp Rudo) [1710033] - [s390] s390/zcrypt: make sysfs reset attribute trigger queue reset (Philipp Rudo) [1710033] - [s390] s390/zcrypt: improve special ap message cmd handling (Philipp Rudo) [1710033] - [s390] s390: vfio-ap: include for test_facility() (Philipp Rudo) [1710033] - [fs] flexfiles: enforce per-mirror stateid only for v4 DSes (Scott Mayhew) [1709556] - [fs] flexfiles: use per-mirror specified stateid for IO (Scott Mayhew) [1709556] - [powerpc] powerpc/pseries: Fix build break due to pnv_npu2_init() (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/sriov: Register IOMMU groups for VFs (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/npu: Allocate enough memory in pnv_try_setup_npu_table_group() (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/npu: Fix oops in pnv_try_setup_npu_table_group() (Sam Bobroff) [1704567] - [mm] mm: defer ZONE_DEVICE page initialization to the point where we init pgmap (Waiman Long) [1666538 1634343] - [mm] mm: create non-atomic version of SetPageReserved for init use (Waiman Long) [1666538 1634343] - [mm] mm: provide kernel parameter to allow disabling page init poisoning (Waiman Long) [1666538 1634343] - [x86] x86/resctrl: Initialize a new resource group with default MBA values (David Arcari) [1688127] - [x86] x86/resctrl: Move per RDT domain initialization to a separate function (David Arcari) [1688127] - [x86] x86/resctrl: Do not repeat rdtgroup mode initialization (David Arcari) [1688127] - [x86] x86/resctrl: Fix rdt_find_domain() return value and checks (David Arcari) [1688127] - [x86] x86/resctrl: Use rdt_last_cmd_puts() where possible (David Arcari) [1688127]- [s390] s390/pci: map IOV resources (Philipp Rudo) [1659411] - [powerpc] powerpc/book3s/64: check for NULL pointer in pgd_alloc() (Steve Best) [1710310] - [md] dm thin metadata: do not write metadata if no changes occurred (Mike Snitzer) [1710030] - [md] dm thin metadata: add wrappers for managing write locking of metadata (Mike Snitzer) [1710030] - [md] dm thin metadata: check __commit_transaction()'s return (Mike Snitzer) [1710030] - [md] dm space map common: zero entire ll_disk (Mike Snitzer) [1710030] - [powerpc] powerpc/tm: Fix stack pointer corruption (Desnes Augusto Nunes do Rosario) [1707635] - [pci] PCI/MSI: Remove obsolete sanity checks for multiple interrupt sets (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Remove the leftovers of the original set support (Prarit Bhargava) [1686678] - [nvme] nvme-pci: Simplify interrupt allocation (Prarit Bhargava) [1686678] - [include] genirq/affinity: Add new callback for (re)calculating interrupt sets (Prarit Bhargava) [1686678] - [nvme] genirq/affinity: Store interrupt sets size in struct irq_affinity (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Code consolidation (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Move allocation of 'node_to_cpumask' to irq_build_affinity_masks() (Prarit Bhargava) [1686678] - [kernel] genirq/irqdesc: Fix double increment in alloc_descs() (Prarit Bhargava) [1686678] - [include] genirq: Fix the kerneldoc comment for struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Add is_managed to struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/core: Introduce struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Remove excess indentation (Prarit Bhargava) [1686678]- [md] dm: make sure to obey max_io_len_target_boundary (Mike Snitzer) [1712607]- [mm] x86/dump_pagetables: Fix LDT remap address marker (Baoquan He) [1639560] - [x86] x86/mm: Fix guard hole handling (Baoquan He) [1639560] - [x86] x86/mm: Move LDT remap out of KASLR region on 5-level paging (Baoquan He) [1639560] - [x86] x86/ldt: Define LDT_END_ADDR (Baoquan He) [1639560] - [mm] x86/ldt: Reserve address-space range on 32 bit for the LDT (Baoquan He) [1639560] - [documentation] x86/mm/doc: Enhance the x86-64 virtual memory layout descriptions (Baoquan He) [1639560] - [documentation] x86/mm/doc: Clean up the x86-64 virtual memory layout descriptions (Baoquan He) [1639560] - [fs] cifs: fix page reference leak with readv/writev (Leif Sahlberg) [1708033] - [fs] cifs: do not attempt cifs operation on smb2+ rename error (Leif Sahlberg) [1708033] - [fs] cifs: fix memory leak in SMB2_read (Leif Sahlberg) [1708033] - [fs] CIFS: keep FileInfo handle live during oplock break (Leif Sahlberg) [1708033] - [fs] cifs: fix handle leak in smb2_query_symlink() (Leif Sahlberg) [1708033] - [fs] cifs: Fix lease buffer length error (Leif Sahlberg) [1708033] - [fs] cifs: Fix use-after-free in SMB2_read (Leif Sahlberg) [1708033] - [fs] cifs: Fix use-after-free in SMB2_write (Leif Sahlberg) [1708033] - [fs] cifs: a smb2_validate_and_copy_iov failure does not mean the handle is invalid. (Leif Sahlberg) [1708033] - [fs] SMB3: Allow persistent handle timeout to be configurable on mount (Leif Sahlberg) [1708033] - [fs] smb3: Fix enumerating snapshots to Azure (Leif Sahlberg) [1708033] - [fs] cifs: fix kref underflow in close_shroot() (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] SMB3: Fix SMB3.1.1 guest mounts to Samba (Leif Sahlberg) [1708033] - [fs] cifs: Fix slab-out-of-bounds when tracing SMB tcon (Leif Sahlberg) [1708033] - [fs] cifs: allow guest mounts to work for smb3.11 (Leif Sahlberg) [1708033] - [fs] fix incorrect error code mapping for OBJECTID_NOT_FOUND (Leif Sahlberg) [1708033] - [fs] cifs: fix that return -EINVAL when do dedupe operation (Leif Sahlberg) [1708033] - [fs] CIFS: Fix an issue with re-sending rdata when transport returning -EAGAIN (Leif Sahlberg) [1708033] - [fs] CIFS: Fix an issue with re-sending wdata when transport returning -EAGAIN (Leif Sahlberg) [1708033] - [fs] CIFS: fix POSIX lock leak and invalid ptr deref (Leif Sahlberg) [1708033] - [fs] SMB3: Allow SMB3 FSCTL queries to be sent to server from tools (Leif Sahlberg) [1708033] - [fs] cifs: fix incorrect handling of smb2_set_sparse() return in smb3_simple_falloc (Leif Sahlberg) [1708033] - [fs] smb2: fix typo in definition of a few error flags (Leif Sahlberg) [1708033] - [fs] CIFS: make mknod() an smb_version_op (Leif Sahlberg) [1708033] - [documentation] cifs: minor documentation updates (Leif Sahlberg) [1708033] - [documentation] cifs: minor updates to documentation (Leif Sahlberg) [1708033] - [fs] cifs: remove unused value pointed out by Coverity (Leif Sahlberg) [1708033] - [fs] SMB3: passthru query info doesn't check for SMB3 FSCTL passthru (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic tracepoints for simple fallocate and zero range (Leif Sahlberg) [1708033] - [fs] cifs: fix smb3_zero_range so it can expand the file-size when required (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_ioctl_init/free helpers to be used with compounding (Leif Sahlberg) [1708033] - [fs] smb3: Add dynamic trace points for various compounded smb3 ops (Leif Sahlberg) [1708033] - [fs] cifs: cache FILE_ALL_INFO for the shared root handle (Leif Sahlberg) [1708033] - [fs] smb3: display volume serial number for shares in /proc/fs/cifs/DebugData (Leif Sahlberg) [1708033] - [fs] cifs: simplify how we handle credits in compound_send_recv() (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic tracepoint for timeout waiting for credits (Leif Sahlberg) [1708033] - [fs] smb3: display security information in /proc/fs/cifs/DebugData more accurately (Leif Sahlberg) [1708033] - [fs] cifs: add a timeout argument to wait_for_free_credits (Leif Sahlberg) [1708033] - [fs] cifs: prevent starvation in wait_for_free_credits for multi-credit requests (Leif Sahlberg) [1708033] - [fs] cifs: wait_for_free_credits() make it possible to wait for >=1 credits (Leif Sahlberg) [1708033] - [fs] cifs: pass flags down into wait_for_free_credits() (Leif Sahlberg) [1708033] - [fs] cifs: change wait_for_free_request() to take flags as argument (Leif Sahlberg) [1708033] - [fs] fs: cifs: Kconfig: pedantic formatting (Leif Sahlberg) [1708033] - [fs] smb3: request more credits on normal (non-large read/write) ops (Leif Sahlberg) [1708033] - [fs] CIFS: Return -EAGAIN instead of -ENOTSOCK (Leif Sahlberg) [1708033] - [fs] CIFS: Only send SMB2_NEGOTIATE command on new TCP connections (Leif Sahlberg) [1708033] - [fs] CIFS: Fix read after write for files with read caching (Leif Sahlberg) [1708033] - [fs] smb3: for kerberos mounts display the credential uid used (Leif Sahlberg) [1708033] - [fs] cifs: use correct format characters (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic trace point for query_info_enter/done (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic trace point for smb3_cmd_enter (Leif Sahlberg) [1708033] - [fs] smb3: improve dynamic tracing of open and posix mkdir (Leif Sahlberg) [1708033] - [fs] smb3: add missing read completion trace point (Leif Sahlberg) [1708033] - [fs] smb3: Add tracepoints for read, write and query_dir enter (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoints for query dir (Leif Sahlberg) [1708033] - [fs] smb3: Update POSIX negotiate context with POSIX ctxt GUID (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: Try to acquire credits at once for compound requests (Leif Sahlberg) [1708033] - [fs] CIFS: Return error code when getting file handle for writeback (Leif Sahlberg) [1708033] - [fs] CIFS: Move open file handling to writepages (Leif Sahlberg) [1708033] - [fs] CIFS: Move unlocking pages from wdata_send_pages() (Leif Sahlberg) [1708033] - [fs] CIFS: Find and reopen a file before get MTU credits in writepages (Leif Sahlberg) [1708033] - [fs] CIFS: Reopen file before get SMB2 MTU credits for async IO (Leif Sahlberg) [1708033] - [fs] CIFS: Remove custom credit adjustments for SMB2 async IO (Leif Sahlberg) [1708033] - [fs] CIFS: Adjust MTU credits before reopening a file (Leif Sahlberg) [1708033] - [fs] CIFS: Check for reconnects before sending compound requests (Leif Sahlberg) [1708033] - [fs] CIFS: Check for reconnects before sending async requests (Leif Sahlberg) [1708033] - [fs] CIFS: Respect reconnect in non-MTU credits calculations (Leif Sahlberg) [1708033] - [fs] CIFS: Respect reconnect in MTU credits calculations (Leif Sahlberg) [1708033] - [fs] CIFS: Set reconnect instance to one initially (Leif Sahlberg) [1708033] - [fs] CIFS: Respect SMB2 hdr preamble size in read responses (Leif Sahlberg) [1708033] - [fs] CIFS: Count SMB3 credits for malformed pending responses (Leif Sahlberg) [1708033] - [fs] CIFS: Do not log credits when unmounting a share (Leif Sahlberg) [1708033] - [fs] CIFS: Always reset read error to -EIO if no response (Leif Sahlberg) [1708033] - [fs] cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED (Leif Sahlberg) [1708033] - [fs] CIFS: Do not skip SMB2 message IDs on send failures (Leif Sahlberg) [1708033] - [fs] smb3: request more credits on tree connect (Leif Sahlberg) [1708033] - [fs] smb3: make default i/o size for smb3 mounts larger (Leif Sahlberg) [1708033] - [fs] CIFS: Do not reset lease state to NONE on lease break (Leif Sahlberg) [1708033] - [fs] smb3: fix bytes_read statistics (Leif Sahlberg) [1708033] - [fs] cifs: return -ENODATA when deleting an xattr that does not exist (Leif Sahlberg) [1708033] - [fs] cifs: add credits from unmatched responses/messages (Leif Sahlberg) [1708033] - [fs] cifs: replace snprintf with scnprintf (Leif Sahlberg) [1708033] - [fs] cifs: Fix NULL pointer dereference of devname (Leif Sahlberg) [1708033] - [fs] CIFS: Fix leaking locked VFS cache pages in writeback retry (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: fix use-after-free of the lease keys (Leif Sahlberg) [1708033] - [fs] CIFS: Do not consider -ENODATA as stat failure for reads (Leif Sahlberg) [1708033] - [fs] CIFS: Do not count -ENODATA as failure for query directory (Leif Sahlberg) [1708033] - [fs] CIFS: Fix trace command logging for SMB2 reads and writes (Leif Sahlberg) [1708033] - [fs] CIFS: Fix possible oops and memory leaks in async IO (Leif Sahlberg) [1708033] - [fs] cifs: limit amount of data we request for xattrs to CIFSMaxBufSize (Leif Sahlberg) [1708033] - [fs] cifs: fix computation for MAX_SMB2_HDR_SIZE (Leif Sahlberg) [1708033] - [fs] cifs: print CIFSMaxBufSize as part of /proc/fs/cifs/DebugData (Leif Sahlberg) [1708033] - [fs] smb3: add credits we receive from oplock/break PDUs (Leif Sahlberg) [1708033] - [fs] CIFS: Fix mounts if the client is low on credits (Leif Sahlberg) [1708033] - [fs] CIFS: Do not assume one credit for async responses (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit calculations in compound mid callback (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit calculation for encrypted reads with errors (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credits calculations for reads with errors (Leif Sahlberg) [1708033] - [fs] CIFS: Do not reconnect TCP session in add_credits() (Leif Sahlberg) [1708033] - [fs] smb3: Cleanup license mess (Leif Sahlberg) [1708033] - [fs] CIFS: Fix possible hang during async MTU reads and writes (Leif Sahlberg) [1708033] - [fs] cifs: fix memory leak of an allocated cifs_ntsd structure (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: Fix error paths in writeback code (Leif Sahlberg) [1708033] - [fs] CIFS: Move credit processing to mid callbacks for SMB3 (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credits calculation for cancelled requests (Leif Sahlberg) [1708033] - [fs] cifs: Fix potential OOB access of lock element array (Leif Sahlberg) [1708033] - [fs] cifs: Limit memory used by lock request calls to a page (Leif Sahlberg) [1708033] - [fs] cifs: move large array from stack to heap (Leif Sahlberg) [1708033] - [fs] CIFS: Do not hide EINTR after sending network packets (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit computation for compounded requests (Leif Sahlberg) [1708033] - [fs] CIFS: Do not set credits to 1 if the server didn't grant anything (Leif Sahlberg) [1708033] - [fs] CIFS: Fix adjustment of credits for MTU requests (Leif Sahlberg) [1708033] - [fs] cifs: Fix a tiny potential memory leak (Leif Sahlberg) [1708033] - [fs] cifs: Fix a debug message (Leif Sahlberg) [1708033] - [fs] smb3: add smb3.1.1 to default dialect list (Leif Sahlberg) [1708033] - [fs] cifs: fix confusing warning message on reconnect (Leif Sahlberg) [1708033] - [fs] smb3: fix large reads on encrypted connections (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] cifs: we can not use small padding iovs together with encryption (Leif Sahlberg) [1708033] - [fs] cifs: Minor Kconfig clarification (Leif Sahlberg) [1708033] - [fs] cifs: Always resolve hostname before reconnecting (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_reconnect_tcon() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in smb2_reconnect() (Leif Sahlberg) [1708033] - [fs] cifs: Only free DFS target list if we actually got one (Leif Sahlberg) [1708033] - [fs] cifs: start DFS cache refresher in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: Use GFP_ATOMIC when a lock is held in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_reconnect() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'sep' (Leif Sahlberg) [1708033] - [fs] cifs: Make use of DFS cache to get new DFS referrals (Leif Sahlberg) [1708033] - [fs] cifs: check kzalloc return (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'server' (Leif Sahlberg) [1708033] - [fs] cifs: Use kzfree() to free password (Leif Sahlberg) [1708033] - [fs] cifs: Fix to use kmem_cache_free() instead of kfree() (Leif Sahlberg) [1708033] - [fs] cifs: update for current_kernel_time64() removal (Leif Sahlberg) [1708033] - [fs] cifs: Add DFS cache routines (Leif Sahlberg) [1708033] - [fs] cifs: Save TTL value when parsing DFS referrals (Leif Sahlberg) [1708033] - [fs] cifs: auto disable 'serverino' in dfs mounts (Leif Sahlberg) [1708033] - [fs] cifs: Make devname param optional in cifs_compose_mount_options() (Leif Sahlberg) [1708033] - [fs] cifs: Skip any trailing backslashes from UNC (Leif Sahlberg) [1708033] - [fs] cifs: Refactor out cifs_mount() (Leif Sahlberg) [1708033] - [fs] CIFS: Fix error mapping for SMB2_LOCK command which caused OFD lock problem (Leif Sahlberg) [1708033] - [fs] CIFS: return correct errors when pinning memory failed for direct I/O (Leif Sahlberg) [1708033] - [fs] CIFS: use the correct length when pinning memory for direct I/O for write (Leif Sahlberg) [1708033] - [fs] cifs: check ntwrk_buf_start for NULL before dereferencing it (Leif Sahlberg) [1708033] - [fs] cifs: remove coverity warning in calc_lanman_hash (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'smb_buf' (Leif Sahlberg) [1708033] - [fs] cifs: suppress some implicit-fallthrough warnings (Leif Sahlberg) [1708033] - [fs] cifs: change smb2_query_eas to use the compound query-info helper (Leif Sahlberg) [1708033] - [fs] Add vers=3.0.2 as a valid option for SMBv3.0.2 (Leif Sahlberg) [1708033] - [fs] cifs: create a helper function for compound query_info (Leif Sahlberg) [1708033] - [fs] cifs: address trivial coverity warning (Leif Sahlberg) [1708033] - [fs] cifs: smb2 commands can not be negative, remove confusing check (Leif Sahlberg) [1708033] - [fs] cifs: use a compound for setting an xattr (Leif Sahlberg) [1708033] - [fs] cifs: clean up indentation, replace spaces with tab (Leif Sahlberg) [1708033] - [fs] smb3: Fix rmdir compounding regression to strict servers (Leif Sahlberg) [1708033] - [fs] CIFS: Avoid returning EBUSY to upper layer VFS (Leif Sahlberg) [1708033] - [fs] cifs: Fix separator when building path from dentry (Leif Sahlberg) [1708033] - [fs] cifs: In Kconfig CONFIG_CIFS_POSIX needs depends on legacy (insecure cifs) (Leif Sahlberg) [1708033] - [fs] cifs: fix signed/unsigned mismatch on aio_read patch (Leif Sahlberg) [1708033] - [fs] cifs: don't dereference smb_file_target before null check (Leif Sahlberg) [1708033] - [fs] CIFS: Add direct I/O functions to file_operations (Leif Sahlberg) [1708033] - [fs] CIFS: Add support for direct I/O write (Leif Sahlberg) [1708033] - [fs] CIFS: Add support for direct I/O read (Leif Sahlberg) [1708033] - [fs] smb3: missing defines and structs for reparse point handling (Leif Sahlberg) [1708033] - [fs] smb3: allow more detailed protocol info on open files for debugging (Leif Sahlberg) [1708033] - [fs] smb3: on kerberos mount if server doesn't specify auth type use krb5 (Leif Sahlberg) [1708033] - [fs] smb3: add trace point for tree connection (Leif Sahlberg) [1708033] - [fs] cifs: fix spelling mistake, EACCESS -> EACCES (Leif Sahlberg) [1708033] - [fs] cifs: fix return value for cifs_listxattr (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number for cifs.ko to 2.14 (Leif Sahlberg) [1708033] - [fs] smb3: add debug for unexpected mid cancellation (Leif Sahlberg) [1708033] - [fs] cifs: allow calling SMB2_xxx_free(NULL) (Leif Sahlberg) [1708033] - [fs] smb3 - clean up debug output displaying network interfaces (Leif Sahlberg) [1708033] - [fs] smb3: show number of current open files in /proc/fs/cifs/Stats (Leif Sahlberg) [1708033] - [fs] cifs: add support for ioctl on directories (Leif Sahlberg) [1708033] - [fs] cifs: fallback to older infolevels on findfirst queryinfo retry (Leif Sahlberg) [1708033] - [fs] smb3: do not attempt cifs operation in smb3 query info error path (Leif Sahlberg) [1708033] - [fs] smb3: send backup intent on compounded query info (Leif Sahlberg) [1708033] - [fs] cifs: track writepages in vfs operation counters (Leif Sahlberg) [1708033] - [fs] smb2: fix uninitialized variable bug in smb2_ioctl_query_info (Leif Sahlberg) [1708033] - [fs] cifs: add IOCTL for QUERY_INFO passthrough to userspace (Leif Sahlberg) [1708033] - [fs] cifs: minor clarification in comments (Leif Sahlberg) [1708033] - [fs] CIFS: Print message when attempting a mount (Leif Sahlberg) [1708033] - [fs] CIFS: Adds information-level logging function (Leif Sahlberg) [1708033] - [fs] cifs: OFD locks do not conflict with eachothers (Leif Sahlberg) [1708033] - [fs] CIFS: SMBD: Do not call ib_dereg_mr on invalidated memory registration (Leif Sahlberg) [1708033] - [fs] CIFS: pass page offsets on SMB1 read/write (Leif Sahlberg) [1708033] - [fs] fs/cifs: fix uninitialised variable warnings (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for sending lease break responses to server (Leif Sahlberg) [1708033] - [fs] cifs: do not return atime less than mtime (Leif Sahlberg) [1708033] - [fs] smb3: update default requested iosize to 4MB from 1MB for recent dialects (Leif Sahlberg) [1708033] - [fs] smb3: Add debug message later in smb2/smb3 reconnect path (Leif Sahlberg) [1708033] - [fs] CIFS: make 'nodfs' mount opt a superblock flag (Leif Sahlberg) [1708033] - [fs] smb3: track the instance of each session for debugging (Leif Sahlberg) [1708033] - [fs] smb3: minor missing defines relating to reparse points (Leif Sahlberg) [1708033] - [fs] smb3: add way to control slow response threshold for logging and stats (Leif Sahlberg) [1708033] - [fs] cifs: minor updates to module description for cifs.ko (Leif Sahlberg) [1708033] - [fs] cifs: protect against server returning invalid file system block size (Leif Sahlberg) [1708033] - [fs] smb3: allow stats which track session and share reconnects to be reset (Leif Sahlberg) [1708033] - [fs] SMB3: Backup intent flag missing from compounded ops (Leif Sahlberg) [1708033] - [fs] cifs: create a define for the max number of iov we need for a SMB2 set_info (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_RENAME and SMB2_OP_HARDLINK to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: remove the is_falloc argument to SMB2_set_eof (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_SET_INFO to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_SET_EOF to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: make rmdir() use compounding (Leif Sahlberg) [1708033] - [fs] cifs: create helpers for SMB2_set_info_init/free() (Leif Sahlberg) [1708033] - [fs] cifs: change unlink to use a compound (Leif Sahlberg) [1708033] - [fs] cifs: change mkdir to use a compound (Leif Sahlberg) [1708033] - [fs] cifs: add a smb2_compound_op and change QUERY_INFO to use it (Leif Sahlberg) [1708033] - [fs] cifs: fix a credits leak for compund commands (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint to catch cases where credit refund of failed op overlaps reconnect (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'cifs_sb' (Leif Sahlberg) [1708033] - [fs] cifs: Use kmemdup rather than duplicating its implementation in smb311_posix_mkdir() (Leif Sahlberg) [1708033] - [fs] smb3: do not display confusing message on mount to Azure servers (Leif Sahlberg) [1708033] - [fs] smb3: fix lease break problem introduced by compounding (Leif Sahlberg) [1708033] - [fs] cifs: only wake the thread for the very last PDU in a compound (Leif Sahlberg) [1708033] - [fs] cifs: add a warning if we try to to dequeue a deleted mid (Leif Sahlberg) [1708033] - [fs] smb2: fix missing files in root share directory listing (Leif Sahlberg) [1708033] - [fs] cifs: read overflow in is_valid_oplock_break() (Leif Sahlberg) [1708033] - [fs] cifs: integer overflow in in SMB2_ioctl() (Leif Sahlberg) [1708033] - [fs] CIFS: fix wrapping bugs in num_entries() (Leif Sahlberg) [1708033] - [fs] cifs: prevent integer overflow in nxt_dir_entry() (Leif Sahlberg) [1708033] - [fs] fs/cifs: suppress a string overflow warning (Leif Sahlberg) [1708033] - [fs] cifs: connect to servername instead of IP for IPC$ share (Leif Sahlberg) [1708033] - [fs] smb3: check for and properly advertise directory lease support (Leif Sahlberg) [1708033] - [fs] smb3: minor debugging clarifications in rfc1001 len processing (Leif Sahlberg) [1708033] - [fs] SMB3: Backup intent flag missing for directory opens with backupuid mounts (Leif Sahlberg) [1708033] - [fs] fs/cifs: don't translate SFM_SLASH (U+F026) to backslash (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number for cifs.ko to 2.12 (Leif Sahlberg) [1708033] - [fs] cifs: check kmalloc before use (Leif Sahlberg) [1708033] - [fs] cifs: check if SMB2 PDU size has been padded and suppress the warning (Leif Sahlberg) [1708033] - [fs] cifs: create a define for how many iovs we need for an SMB2_open() (Leif Sahlberg) [1708033] - [fs] smb3: create smb3 equivalent alias for cifs pseudo-xattrs (Leif Sahlberg) [1708033] - [fs] smb3: allow previous versions to be mounted with snapshot= mount parm (Leif Sahlberg) [1708033] - [fs] cifs: don't show domain= in mount output when domain is empty (Leif Sahlberg) [1708033] - [fs] cifs: add missing support for ACLs in SMB 3.11 (Leif Sahlberg) [1708033] - [fs] smb3: enumerating snapshots was leaving part of the data off end (Leif Sahlberg) [1708033] - [fs] cifs: update smb2_queryfs() to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: update receive_encrypted_standard to handle compounded responses (Leif Sahlberg) [1708033] - [fs] cifs: create SMB2_open_init()/SMB2_open_free() helpers. (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_query_info_[init|free]() (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_close_init()/SMB2_close_free() (Leif Sahlberg) [1708033] - [fs] smb3: display stats counters for number of slow commands (Leif Sahlberg) [1708033] - [fs] CIFS: fix uninitialized ptr deref in smb2 signing (Leif Sahlberg) [1708033] - [fs] smb3: Do not send SMB3 SET_INFO if nothing changed (Leif Sahlberg) [1708033] - [fs] smb3: fix minor debug output for CONFIG_CIFS_STATS (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for slow responses (Leif Sahlberg) [1708033] - [fs] cifs: add compound_send_recv() (Leif Sahlberg) [1708033] - [fs] cifs: make smb_send_rqst take an array of requests (Leif Sahlberg) [1708033] - [fs] cifs: update init_sg, crypt_message to take an array of rqst (Leif Sahlberg) [1708033] - [fs] smb3: fix reset of bytes read and written stats (Leif Sahlberg) [1708033] - [fs] smb3: display bytes_read and bytes_written in smb3 stats (Leif Sahlberg) [1708033] - [fs] cifs: simple stats should always be enabled (Leif Sahlberg) [1708033] - [fs] cifs: use a refcount to protect open/closing the cached file handle (Leif Sahlberg) [1708033] - [fs] smb3: add reconnect tracepoints (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for session expired or deleted (Leif Sahlberg) [1708033] - [fs] cifs: remove unused stats (Leif Sahlberg) [1708033] - [fs] smb3: don't request leases in symlink creation and query (Leif Sahlberg) [1708033] - [fs] smb3: remove per-session operations from per-tree connection stats (Leif Sahlberg) [1708033] - [fs] SMB3: Number of requests sent should be displayed for SMB3 not just CIFS (Leif Sahlberg) [1708033] - [fs] smb3: snapshot mounts are read-only and make sure info is displayable about the mount (Leif Sahlberg) [1708033] - [fs] smb3: remove noisy warning message on mount (Leif Sahlberg) [1708033] - [fs] cifs: add missing debug entries for kconfig options (Leif Sahlberg) [1708033] - [fs] smb3: fill in statfs fsid and correct namelen (Leif Sahlberg) [1708033] - [fs] cifs: Make sure all data pages are signed correctly (Leif Sahlberg) [1708033] - [fs] CIFS: fix memory leak and remove dead code (Leif Sahlberg) [1708033] - [fs] cifs: use 64-bit timestamps for fscache (Leif Sahlberg) [1708033] - [fs] cifs: use timespec64 internally (Leif Sahlberg) [1708033] - [fs] cifs: Silence uninitialized variable warning (Leif Sahlberg) [1708033] - [fs] fs/cifs: Simplify ib_post_(send|recv|srq_recv)() calls (Leif Sahlberg) [1708033]- [edac] EDAC/amd64: Set maximum channel layer size depending on family (Gary Hook) [1690984] - [edac] EDAC/amd64: Adjust printed chip select sizes when interleaved (Gary Hook) [1690984] - [edac] EDAC/amd64: Recognize x16 symbol size (Gary Hook) [1690984] - [edac] EDAC/amd64: Support more than two Unified Memory Controllers (Gary Hook) [1690984] - [edac] EDAC/amd64: Use a macro for iterating over Unified Memory Controllers (Gary Hook) [1690984] - [edac] EDAC, amd64: Add Family 17h, models 10h-2fh support (Gary Hook) [1670609 1690984] - [md] dm mpath: fix missing call of path selector type->end_io (Mike Snitzer) [1686227] - [rpmspec] redhat: do not generate debuginfo for self-tests and samples (Ivan Vecera) [1708375] - [netdrv] broadcom: Mark expected switch fall-throughs (Kamal Heib) [1684380] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Kamal Heib) [1684380] - [netdrv] broadcom: tg3: fix use of SPEED_UNKNOWN ethtool constant (Kamal Heib) [1684380] - [netdrv] tg3: allow ethtool -p to work for NICs in down state (Kamal Heib) [1684380] - [netdrv] tg3: optionally use eth_platform_get_mac_address() to get mac address (Kamal Heib) [1684380] - [netdrv] tg3: extend PTP gettime function to read system clock (Kamal Heib) [1684380] - [netdrv] tg3: Fix fall-through annotations (Kamal Heib) [1684380] - [netdrv] tg3: Mark expected switch fall-throughs (Kamal Heib) [1684380] - [mm] x86/mm/KASLR: Fix the size of the direct mapping section (Baoquan He) [1669075] - [netdrv] net/mlx4_en: fix spelling mistake: "quiting" -> "quitting" (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix error handling when initializing CQ bufs in the driver (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Add masking for a few queries on HCA caps (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Fix using wrong function to destroy sqp AHs under SRIOV (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4: replace pci_{,un}map_sg with dma_{,un}map_sg (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4: Get rid of page operation after dma_alloc_coherent (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: drop useless LIST_HEAD (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Remove set but not used variable 'pd' (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Utilize macro to calculate SQ spare size (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_en: remove fallback after kzalloc_node() (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Remove unneeded NULL check (Alaa Hleihel) [1691235 1691228] - [infiniband] mlx4: Use snprintf instead of complicated strcpy (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix several coding style errors (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix return codes of unsupported operations (Alaa Hleihel) [1691235 1691228] - [netdrv] {net, IB}/mlx4: Initialize CQ buffers in the driver when possible (Alaa Hleihel) [1691235 1691228] - [netdrv] mlx4: use __vlan_hwaccel helpers (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_en: Fix build break when CONFIG_INET is off (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_en: use __netdev_tx_sent_queue() (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_en: add a missing include (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Add port and TID to MAD debug print (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Enable debug print of SMPs (Alaa Hleihel) [1691233 1691228] - [infiniband] RDMA: Fix dependencies for rdma_user_mmap_io (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Remove unnecessary parentheses (Alaa Hleihel) [1691233 1691228] - [infiniband] RDMA/mlx4: Use rdma_user_mmap_io (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_core: Fix warnings during boot on driverinit param set failures (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Use devlink region_snapshot parameter (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Add Crdump FW snapshot support (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Add health buffer address capability (Alaa Hleihel) [1691228] - [netdrv] mlx4: Add support for devlink reload and load driverinit values (Alaa Hleihel) [1691228 1663198] - [netdrv] mlx4: Add mlx4 initial parameters table and register it (Alaa Hleihel) [1691228 1663198] - [infiniband] IB/mlx4: Create slave AH's directly (Alaa Hleihel) [1691228] - [infiniband] IB/mlx4: Add support for drain SQ & RQ (Alaa Hleihel) [1691228] - [net] openvswitch: return an error instead of doing BUG_ON() (Eelco Chaudron) [1700468] - [include] net: add netif_is_geneve() (Petr Oros) [1707002] - [netdrv] team: fix possible recursive locking when add slaves (Hangbin Liu) [1700679] - [netdrv] phy: Fix ioctl handler when modifing MII_ADVERTISE (Petr Oros) [1691676] - [netdrv] mii: Add mii_lpa_mod_linkmode_lpa_t (Petr Oros) [1691676] - [netdrv] phy: marvell: Rename mii_lpa_to_linkmode_lpa_t (Petr Oros) [1691676] - [netdrv] mii: Rename mii_stat1000_to_linkmode_lpa_t (Petr Oros) [1691676] - [include] mii: Fix autoneg in mii_lpa_to_linkmode_lpa_t() (Petr Oros) [1691676] - [netdrv] phy: remove unused code in phy_probe (Petr Oros) [1691676] - [netdrv] phy: check if advertising is zero using linkmode_empty (Petr Oros) [1691676] - [netdrv] phy: marvell: remove set but not used variable 'pause' (Petr Oros) [1691676] - [netdrv] phy: Add support for resolving 5G and 2.5G autoneg (Petr Oros) [1691676] - [netdrv] phy: Add more link modes to the settings table (Petr Oros) [1691676] - [netdrv] phy: Fixup kerneldoc markup. (Petr Oros) [1691676] - [netdrv] phy: Convert u32 phydev->lp_advertising to linkmode (Petr Oros) [1691676] - [netdrv] ethernet: Convert phydev advertize and supported from u32 to link mode (Petr Oros) [1691676] - [netdrv] bonding: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [netdrv] bonding: Give bond_set_dev_addr() a return value (Ivan Vecera) [1705509] - [netdrv] ipvlan: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] bridge: Handle NETDEV_PRE_CHANGEADDR from ports (Ivan Vecera) [1705509] - [net] bridge: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Add NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Add extack argument to dev_set_mac_address() (Ivan Vecera) [1705509] - [netdrv] phy: phy driver features are mandatory (Petr Oros) [1691720] - [netdrv] phy: add missing phy driver features (Petr Oros) [1691720] - [netdrv] phy: Add missing features to PHY drivers (Petr Oros) [1691720] - [netdrv] phy: genphy_10g_driver: Avoid NULL pointer dereference (Petr Oros) [1691720] - [netdrv] phy: phy_support_sym_pause: Clear Asym Pause (Petr Oros) [1691720] - [netdrv] phy: Replace phy driver features u32 with link_mode bitmap (Petr Oros) [1691720] - [netdrv] ethernet: xgbe: expand PHY_GBIT_FEAUTRES (Petr Oros) [1691720] - [net] net: phy: Add limkmode equivalents to some of the MII ethtool helpers (Petr Oros) [1691720] - [netdrv] phy: Add helper for advertise to lcl value (Petr Oros) [1691720] - [net] phy: Add helper to convert MII ADV register to a linkmode (Petr Oros) [1691720] - [netdrv] phy: Add phydev_info() (Petr Oros) [1691720] - [netdrv] phy: Add phydev_warn() (Petr Oros) [1691720] - [netdrv] phy: Move linkmode helpers to somewhere public (Petr Oros) [1691720] - [netdrv] ethernet: dpaa: remove unused variables (Petr Oros) [1691720] - [netdrv] ravb: Disable Pause Advertisement (Petr Oros) [1691720] - [netdrv] ethernet: Add helper to determine if pause configuration is supported (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for set_pauseparam for Pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for set_pauseparam for Asym Pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for MACs which support pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for MACs which support asym pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper to remove a supported link mode (Petr Oros) [1691720] - [netdrv] ethernet: Fix up drivers masking pause support (Petr Oros) [1691720] - [netdrv] bcmgenet: Fix speed selection for reverse MII (Petr Oros) [1691720] - [netdrv] ethernet: Use phy_set_max_speed() to limit advertised speed (Petr Oros) [1691720] - [netdrv] phy: bcm63xx: Allow to be built with COMPILE_TEST (Petr Oros) [1691720] - [netdrv] phy: et1011c: Remove incorrect missing 1000 Half (Petr Oros) [1691720] - [netdrv] phy: ste10Xp: Remove wrong SUPPORTED_Pause (Petr Oros) [1691720] - [tools] selftests: net: ip_defrag: cover new IPv6 defrag behavior (Guillaume Nault) [1660282] - [tools] selftests: net: fix/improve ip_defrag selftest (Guillaume Nault) [1660282] - [tools] selftests: use posix-style redirection in ip_defrag.sh (Guillaume Nault) [1660282] - [tools] selftests: net: Clean up an unused variable (Guillaume Nault) [1660282] - [tools] selftests/net: add ipv6 tests to ip_defrag selftest (Guillaume Nault) [1660282] - [tools] selftests/net: add ip_defrag selftest (Guillaume Nault) [1660282] - [net] ip6: fix skb leak in ip6frag_expire_frag_queue() (Guillaume Nault) [1660282] - [net] IP6 defrag: use rbtrees in nf_conntrack_reasm.c (Guillaume Nault) [1660282] - [net] IP6 defrag: use rbtrees for IPv6 defrag (Guillaume Nault) [1660282] - [net] IP defrag: encapsulate rbtree defrag code into callable functions (Guillaume Nault) [1660282] - [net] ipv4: do not handle duplicate fragments as overlapping (Guillaume Nault) [1660282] - [net] ipv4: ipv6: netfilter: Adjust the frag mem limit when truesize changes (Guillaume Nault) [1660282] - [net] ipv6: remove dependency of nf_defrag_ipv6 on ipv6 module (Guillaume Nault) [1660282] - [net] ipv6: fix typo in net/ipv6/reassembly.c (Guillaume Nault) [1660282] - [net] core: dev: Attach extack to NETDEV_PRE_UP (Ivan Vecera) [1705501] - [net] core: dev: Add call_netdevice_notifiers_extack() (Ivan Vecera) [1705501] - [net] core: dev: Add extack argument to __dev_change_flags() (Ivan Vecera) [1705501] - [net] core: dev: Add extack argument to dev_change_flags() (Ivan Vecera) [1705501] - [netdrv] ipvlan: ipvlan_set_port_mode(): Add an extack argument (Ivan Vecera) [1705501] - [netdrv] vrf: cycle_netdev(): Add an extack argument (Ivan Vecera) [1705501] - [net] net: core: dev: Add extack argument to dev_open() (Ivan Vecera) [1705501] - [net] vlan: conditional inclusion of FCoE hooks to match netdevice.h and bnx2x (Chris Leech) [1685894] - [net] Do not route unicast IP packets twice (Ivan Vecera) [1704923] - [net] skbuff: Rename 'offload_mr_fwd_mark' to 'offload_l3_fwd_mark' (Ivan Vecera) [1704923] - [net] devlink: Add 'fw_load_policy' generic parameter (Ivan Vecera) [1704902] - [net] bridge: Extend br_vlan_get_pvid() for bridge ports (Ivan Vecera) [1704863] - [net] ipv4: Notify about changes to ip_forward_update_priority (Ivan Vecera) [1704697] - [net] ipv4: Control SKB reprioritization after forwarding (Ivan Vecera) [1704697] - [net] dcb: Add priority-to-DSCP map getters (Ivan Vecera) [1704639] - [net] xsk: export xdp_get_umem_from_qid (Ivan Vecera) [1704606] - [net] net: Add lag.h, net_lag_port_dev_txable() (Ivan Vecera) [1704297] - [netdrv] team: Publish team_port_get_rcu() (Ivan Vecera) [1704297] - [net] sched: sch_api: set an error msg when qdisc_alloc_handle() fails (Ivan Vecera) [1677094] - [net] ethtool: Remove unnecessary null check in ethtool_rx_flow_rule_create (Ivan Vecera) [1691738] - [net] flow_offload: fix block stats (Ivan Vecera) [1691738] - [net] sched: flower: only return error from hw offload if skip_sw (Ivan Vecera) [1691738] - [net] flow_offload: Fix flow action infrastructure (Ivan Vecera) [1691738] - [net] ethtool: add ethtool_rx_flow_spec to flow_rule structure translator (Ivan Vecera) [1691738] - [net] flow_offload: add wake-up-on-lan and queue to flow_action (Ivan Vecera) [1691738] - [net] flow_offload: add statistics retrieval infrastructure and use it (Ivan Vecera) [1691738] - [net] cls_api: add translator to flow_action representation (Ivan Vecera) [1691738] - [net] flow_offload: add flow action infrastructure (Ivan Vecera) [1691738] - [net] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1691738] - [net] netfilter: ipv6: Don't preserve original oif for loopback address (Florian Westphal) [1702813] - [net] netfilter: ipv6: Preserve link scope traffic original oif (Florian Westphal) [1702813] - [net] sctp: implement memory accounting on rx path (Xin Long) [1665243] {CVE-2019-3874} - [net] sctp: implement memory accounting on tx path (Xin Long) [1665243] {CVE-2019-3874} - [net] openvswitch: fix flow actions reallocation (Eelco Chaudron) [1700468] - [net] openvswitch: fix missing checks for nla_nest_start (Eelco Chaudron) [1700468] - [net] openvswitch: fix a NULL pointer dereference (Eelco Chaudron) [1700468] - [net] openvswitch: meter: Use struct_size() in kzalloc() (Eelco Chaudron) [1700468] - [net] openvswitch: Fix IPv6 later frags parsing (Eelco Chaudron) [1700468] - [net] openvswitch: fix spelling mistake "execeeds" -> "exceeds" (Eelco Chaudron) [1700468] - [net] openvswitch: remove BUG_ON from get_dpdev (Eelco Chaudron) [1700468] - [net] openvswitch: fix linking without CONFIG_NF_CONNTRACK_LABELS (Eelco Chaudron) [1700468] - [net] revert "openvswitch: Fix template leak in error cases." (Eelco Chaudron) [1700468] - [net] openvswitch: Use correct reply values in datapath and vport ops (Eelco Chaudron) [1700468] - [net] ovs: fix return type of ndo_start_xmit function (Eelco Chaudron) [1700468] - [net] openvswitch: Derive IP protocol number for IPv6 later frags (Eelco Chaudron) [1700468] - [net] openvswitch: kernel datapath clone action (Eelco Chaudron) [1700468] - [net] openvswitch: Avoid OOB read when parsing flow nlattrs (Eelco Chaudron) [1700468] - [net] net/vlan: remove unused #define HAVE_VLAN_GET_TAG (Ivan Vecera) [1700369] - [net] vlan: include the shift in skb_vlan_tag_get_prio() (Ivan Vecera) [1700369] - [net] vlan: introduce __vlan_hwaccel_copy_tag() helper (Ivan Vecera) [1700369] - [net] vlan: introduce __vlan_hwaccel_clear_tag() helper (Ivan Vecera) [1700369] - [net] sctp: initialize _pad of sockaddr_in before copying to user memory (Xin Long) [1699076] - [net] sctp: use memdup_user instead of vmemdup_user (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_STREAM_SCHEDULER sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_EVENT sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_ENABLE_STREAM_RESET sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_PRINFO sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_DEACTIVATE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_DELETE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_ACTIVE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_MAX_BURST sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_CONTEXT sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SNDINFO sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DELAYED_SACK sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SEND_PARAM sockopt (Xin Long) [1699076] - [net] sctp: not copy sctp_sock pd_lobby in sctp_copy_descendant (Xin Long) [1699076] - [net] sctp: get sctphdr by offset in sctp_compute_cksum (Xin Long) [1699076] - [net] sctp: call sctp_auth_init_hmacs() in sctp_sock_migrate() (Xin Long) [1699076] - [net] sctp: move up sctp_auth_init_hmacs() in sctp_endpoint_init() (Xin Long) [1699076] - [net] sctp: sctp_sock_migrate() returns error if sctp_bind_addr_dup() fails (Xin Long) [1699076] - [net] sctp: remove sched init from sctp_stream_init (Xin Long) [1699076] - [net] sctp: call iov_iter_revert() after sending ABORT (Xin Long) [1699076] - [net] ipvs: get sctphdr by sctphoff in sctp_csum_check (Xin Long) [1699076] - [net] sctp: chunk.c: correct format string for size_t in printk (Xin Long) [1699076] - [net] sctp: don't compare hb_timer expire date before starting it (Xin Long) [1699076] - [net] doc: sctp: Merge and clean up rst files (Xin Long) [1699076] - [net] sctp: set stream ext to NULL after freeing it in sctp_stream_outq_migrate (Xin Long) [1699076] - [net] sctp: add SCTP_FUTURE_ASOC and SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_EVENT sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_ENABLE_STREAM_RESET sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_PRINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DEACTIVATE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DELETE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_ACTIVE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_MAX_BURST sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_CONTEXT sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SNDINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SEND_PARAM sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DELAYED_SACK sockopt (Xin Long) [1699076] - [net] sctp: add SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER_VALUE sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_INTERLEAVING_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_RECONFIG_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_PR_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: add SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_THLDS sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_LOCAL_AUTH_CHUNKS sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_MAXSEG sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_ASSOCINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_RTOINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_PARAMS sockopt (Xin Long) [1699076] - [net] sctp: introduce SCTP_FUTURE/CURRENT/ALL_ASSOC (Xin Long) [1699076] - [net] sctp: set flow sport from saddr only when it's 0 (Xin Long) [1699076] - [net] sctp: set chunk transport correctly when it's a new asoc (Xin Long) [1699076] - [net] sctp: improve the events for sctp stream adding (Xin Long) [1699076] - [net] sctp: improve the events for sctp stream reset (Xin Long) [1699076] - [net] sctp: allocate sctp_sockaddr_entry with kzalloc (Xin Long) [1699076] - [net] sctp: initialize sin6_flowinfo for ipv6 addrs in sctp_inet6addr_event (Xin Long) [1699076] - [net] sctp: frag_point sanity check (Xin Long) [1699076] - [net] sctp: kfree_rcu asoc (Xin Long) [1699076] - [net] sctp: update frag_point when stream_interleave is set (Xin Long) [1699076] - [net] sctp: add sockopt SCTP_EVENT (Xin Long) [1699076] - [net] sctp: rename enum sctp_event to sctp_event_type (Xin Long) [1699076] - [net] sctp: add subscribe per asoc (Xin Long) [1699076] - [net] sctp: define subscribe in sctp_sock as __u16 (Xin Long) [1699076] - [net] sctp: process sk_reuseport in sctp_get_port_local (Xin Long) [1699076] - [net] sctp: add sock_reuseport for the sock in __sctp_hash_endpoint (Xin Long) [1699076] - [net] sctp: do reuseport_select_sock in __sctp_rcv_lookup_endpoint (Xin Long) [1699076] - [net] sctp: Fix SKB list traversal in sctp_intl_store_ordered(). (Xin Long) [1699076] - [net] sctp: Fix SKB list traversal in sctp_intl_store_reasm(). (Xin Long) [1699076] - [net] sctp: define SCTP_SS_DEFAULT for Stream schedulers (Xin Long) [1699076] - [net] sctp: clear the transport of some out_chunk_list chunks in sctp_assoc_rm_peer (Xin Long) [1699076] - [net] sctp: use sk_wmem_queued to check for writable space (Xin Long) [1699076] - [net] sctp: count both sk and asoc sndbuf with skb truesize and sctp_chunk size (Xin Long) [1699076] - [net] sctp: use the pmtu from the icmp packet to update transport pathmtu (Xin Long) [1699076] - [net] sctp: fix fall-through annotation (Xin Long) [1699076] - [net] sctp: Use skb_queue_is_first(). (Xin Long) [1699076] - [net] sctp: not traverse asoc trans list if non-ipv6 trans exists for ipv6_flowlabel (Xin Long) [1699076] - [net] sctp: fix invalid reference to the index variable of the iterator (Xin Long) [1699076] - [net] sctp: remove useless start_fail from sctp_ht_iter in proc (Xin Long) [1699076] - [net] sctp: Make wrappers for accessing in/out streams (Xin Long) [1699076] - [net] sctp: whitespace fixes (Xin Long) [1699076] - [net] sctp: check for ipv6_pinfo legal sndflow with flowlabel in sctp_v6_get_dst (Xin Long) [1699076] - [net] sctp: add support for setting flowlabel when adding a transport (Xin Long) [1699076] - [net] sctp: add spp_ipv6_flowlabel and spp_dscp for sctp_paddrparams (Xin Long) [1699076] - [net] sctp: add support for dscp and flowlabel per transport (Xin Long) [1699076] - [net] ipv4: add __ip_queue_xmit() that supports tos param (Xin Long) [1699076] - [net] sctp: add support for SCTP_REUSE_PORT sockopt (Xin Long) [1699076] - [netdrv] pptp: dst_release sk_dst_cache in pptp_sock_destruct (Xin Long) [1671606] - [net] datagram: fix unbounded loop in __skb_try_recv_datagram() (Paolo Abeni) [1692379] - [net] ipv6: route: purge exception on removal (Paolo Abeni) [1669049] - [net] vsock: cope with memory allocation failure at socket creation time (Paolo Abeni) [1671619] - [net] ptp: fix Spectre v1 vulnerability (Hangbin Liu) [1664624]- [infiniband] RDMA/bnxt_re: fix or'ing of data into an uninitialized struct member (Selvin Xavier) [1664798] - [netdrv] RDMA/bnxt_en: Enable RDMA driver support for 57500 chip (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Update kernel user abi to pass chip context (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add extended psn structure for 57500 adapters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Enable GSI QP support for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Skip backing store allocation for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add 64bit doorbells for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add chip context to identify 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: fix a size calculation (Selvin Xavier) [1664798] - [infiniband] infiniband: bnxt_re: qplib: Check the return value of send_message (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Increase depth of control path command queue (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Query HWRM Interface version from FW (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Make use of destroy AH sleepable flag (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Make use of create AH sleepable flag (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid accessing the device structure after it is freed (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix system hang when registration with L2 driver fails (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid resource leak in case the NQ registration fails (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Wait for delayed work to finish before device removal (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Limit max_pkey to 16 bit value (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix qp async event reporting (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Report out of sequence hw counters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Expose rx discards and drop counters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Prevent driver crash due to NULL pointer in error message print (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Drop L2 async events silently (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid accessing nq->bar_reg_iomem in failure case (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid NULL check after accessing the pointer (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Remove the unnecessary version macro definition (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix recursive lock warning in debug kernel (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add missing spin lock initialization (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: QPLIB: Add and use #define dev_fmt(fmt) "QPLIB: " fmt (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Modify a fall-through annotation (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix a bunch of off by one bugs in qplib_fp.c (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix a couple off by one bugs (Selvin Xavier) [1664798] - [powerpc] powerpc/fadump: Do not allow hot-remove memory from fadump reserved area. (Gustavo Duarte) [1524686] - [powerpc] powerpc/fadump: Throw proper error message on fadump registration failure (Gustavo Duarte) [1524686] - [powerpc] powerpc/fadump: Reservationless firmware assisted dump (Gustavo Duarte) [1524686] - [infiniband] IB/hfi1: Fix WQ_MEM_RECLAIM warning (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Implement CCA for TID RDMA protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove WARN_ON when freeing expected receive groups (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Unify the software PSN check for TID RDMA READ/WRITE (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to read next expected psn from hardware flow (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Delay the release of destination mr for TID RDMA WRITE DATA (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Do not flush send queue in the TID RDMA second leg (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix the allocation of RSM table (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Eliminate opcode tests on mr deref (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Clear the IOWAIT pending bits when QP is put into error state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Failed to drain send queue when QP is put into error state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add missing break in switch statement (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix a build warning for TID RDMA READ (Alex Estrin) [1660618] - [infiniband] RDMA/rdmavt: Adapt to handle non-uniform sizes on umem SGEs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prioritize the sending of ACK packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for TID RDMA WRITE protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Enable TID RDMA WRITE protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add interlock between TID RDMA WRITE and other requests (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA WRITE functionality into RDMA verbs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the dual leg code (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the TID second leg ACK packet builder (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the TID second leg send packet builder (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Resend the TID RDMA WRITE DATA packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA RESYNC packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA RESYNC packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA retry timer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA ACK packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA ACK packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA WRITE DATA packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA WRITE DATA packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA WRITE response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID resource timer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA WRITE response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA WRITE request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add an s_acked_ack_queue pointer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Allow for extra entries in QP's s_ack_queue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Build TID RDMA WRITE request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for TID RDMA READ protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Enable TID RDMA READ protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add interlock between a TID RDMA request and other requests (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Integrate TID RDMA READ protocol into RC protocol (Alex Estrin) [1660618] - [include] IB/hfi1: Increment the retry timeout value for TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions for restarting TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA handlers (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA READ response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA READ response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Set PbcInsertHcrc for TID RDMA packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to build TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for flow and TID management functions (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the counter n_tidwait (Alex Estrin) [1660618] - [infiniband] IB/hfi1: TID RDMA RcvArray programming and TID allocation (Alex Estrin) [1660618] - [infiniband] IB/hfi1: TID RDMA flow allocation (Alex Estrin) [1660618] - [infiniband] IB/hfi: Move RC functions into a header file (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for OPFN (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Integrate OPFN into RC transactions (Alex Estrin) [1660618] - [infiniband] IB/hfi1, IB/rdmavt: Allow for extending of QP's s_ack_queue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: OPFN interface (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add OPFN helper functions for TID RDMA feature (Alex Estrin) [1660618] - [infiniband] IB/hfi1: OPFN support discovery (Alex Estrin) [1660618] - [infiniband] IB/{hfi1, qib, rvt} Cleanup open coded sge usage (Alex Estrin) [1660618] - [infiniband] IB/{hfi1,qib}: Cleanup open coded sge sizing (Alex Estrin) [1660618] - [infiniband] RDMA/qib: Use GUP longterm for PSM page pining (Alex Estrin) [1660618] - [infiniband] infiniband: qib: no need to check return value of debugfs_create functions (Alex Estrin) [1660618] - [infiniband] infiniband: hfi1: no need to check return value of debugfs_create functions (Alex Estrin) [1660618] - [infiniband] infiniband: hfi1: drop crazy DEBUGFS_SEQ_FILE_CREATE() macro (Alex Estrin) [1660618] - [infiniband] IB/{hfi1, qib}: Fix WC.byte_len calculation for UD_SEND_WITH_IMM (Alex Estrin) [1660618] - [infiniband] IB/qib: Fix an error code in qib_sdma_verbs_send() (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Reduce lock contention on iowait_lock for sdma and pio (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Close VNIC sdma_progress sleep window (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Allow the driver to initialize QP priv struct (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add OPFN and TID RDMA capability bits (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Unreserve a reserved request when it is completed (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Consider LMC in 16B/bypass ingress packet check (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Limit VNIC use of SDMA engines to the available count (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Correctly process FECN and BECN in packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Ignore LNI errors before DC8051 transitions to Polling state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Dump pio info for non-user send contexts (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix a latency issue for small messages (Alex Estrin) [1660618] - [infiniband] RDMA/qib: Remove all occurrences of BUG_ON() (Alex Estrin) [1660618] - [infiniband] IB/qib: fix spelling mistake "colescing" -> "coalescing" (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Use VL15 for SM packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add mtu check for operational data VLs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for iowait (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prepare resource waits for dual leg (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Error path MAD response size is incorrect (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move UnsupportedVL bits definitions to the correct header (Alex Estrin) [1660618] - [infiniband] IB/hfi1: set_intr_bits uses incorrect source for register modification (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Missing return value in error path for user sdma (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Right size user_sdma sequence numbers and related variables (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move URGENT IRQ enable to hfi1_rcvctrl() (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rework the IRQ API to be more flexible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: PCIe bus width retry (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Make the MSIx resource allocation a bit more flexible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prepare for new HFI1 MSIx API (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Get the hfi1_devdata structure as early as possible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: tune_pcie_caps is arbitrarily placed, poorly (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove duplicated defines (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rework file list in Makefile (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove incorrect call to do_interrupt callback (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Set in_use_ctxts bits for user ctxts only (Alex Estrin) [1660618] - [include] include/rdma/opa_addr.h: Fix an endianness issue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove INTx support and simplify MSIx usage (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Reorg ctxtdata and rightsize fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove caches of chip CSRs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove unused/writeonly devdata fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rightsize ctxt_eager_bufs fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvctrl from ctxtdata (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvhdrq_size (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvhdrsize (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move rhf_offset from devdata to ctxtdata (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move normal functions from hfi1_devdata to const array (Alex Estrin) [1660618] - [infiniband] scsi: RDMA/srpt: Fix handling of TMF submission failure (Jonathan Toppins) [1685313] - [infiniband] scsi: RDMA/srpt: Fix a credit leak for aborted commands (Jonathan Toppins) [1685313] - [net] xprtrdma: Reduce the doorbell rate (Receive) (Jonathan Toppins) [1685313] - [net] xprtrdma: Fix sparse warnings (Jonathan Toppins) [1685313] - [net] xprtrdma: Fix helper that drains the transport (Jonathan Toppins) [1685313] - [netdrv] enic: fix build warning without CONFIG_CPUMASK_OFFSTACK (Jonathan Toppins) [1685313] - [infiniband] IB/usnic: Fix out of bounds index check in query pkey (Jonathan Toppins) [1685313] - [infiniband] IB/usnic: Remove stub functions (Jonathan Toppins) [1685313] - [infiniband] rdma: fix build errors on s390 and MIPS due to bad ZERO_PAGE use (Jonathan Toppins) [1685313] - [infiniband] RDMA/ucontext: Fix regression with disassociate (Jonathan Toppins) [1685313] - [infiniband] IB/iser: Fix dma_nents type definition (Jonathan Toppins) [1685313] - [infiniband] IB/iser: Pass the correct number of entries for dma mapped SGL (Jonathan Toppins) [1685313] - [infiniband] RDMA/rxe: Use for_each_sg_page iterator on umem SGL (Jonathan Toppins) [1685313] - [infiniband] RDMA/vmw_pvrdma: Fix memory leak on pvrdma_pci_remove (Jonathan Toppins) [1685313] - [infiniband] RDMA/vmw_pvrdma: Support upto 64-bit PFNs (Jonathan Toppins) [1683475] - [include] IB/mlx5: Remove dead code (Jonathan Toppins) [1685313] - [infiniband] IB/mlx5: Ranges in implicit ODP MR inherit its write access (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix frwr memory registration (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Add wc_flags and wc_immdata to cq entry trace (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix concurrency panics in QP post_send and modify to error (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix loopback send with invalidate ordering (Jonathan Toppins) [1685313] - [infiniband] IB/hfi1: Add limit test for RC/UC send via loopback (Jonathan Toppins) [1685313] - [infiniband] RDMA/iwcm: Fix string truncation error (Jonathan Toppins) [1685313] - [infiniband] RDMA/iwcm: add tos_set bool to iw_cm struct (Jonathan Toppins) [1685313] - [infiniband] RDMA/cma: listening device cm_ids should inherit tos (Jonathan Toppins) [1685313] - [infiniband] RDMA/cma: Rollback source IP address if failing to acquire device (Jonathan Toppins) [1685313] - [infiniband] RDMA/device: Call ib_cache_release_one() only from ib_device_release() (Jonathan Toppins) [1685313] - [infiniband] RDMA/device: Ensure that security memory is always freed (Jonathan Toppins) [1685313] - [infiniband] RDMA/uverbs: Fix an error flow in ib_uverbs_poll_cq (Jonathan Toppins) [1685313] - [infiniband] IB/ipoib: Make ipoib_intercept_dev_id_attr() static (Jonathan Toppins) [1685313] - [infiniband] RDMA: Provide safe ib_alloc_device() function (Jonathan Toppins) [1685313] - [infiniband] IB/core, ipoib: Do not overreact to SM LID change event (Jonathan Toppins) [1685313] - [infiniband] IB/core: Abort page fault handler silently during owning process exit (Jonathan Toppins) [1685313] - [infiniband] RDMA/core: Verify that memory window type is legal (Jonathan Toppins) [1685313] - [infiniband] IB/core: Don't register each MAD agent for LSM notifier (Jonathan Toppins) [1711086 1685313] - [include] IB/core: Eliminate a hole in MAD agent struct (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Fix potential memory leak while creating MAD agents (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Unregister notifier before freeing MAD security (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Destroy QP if XRC QP fails (Jonathan Toppins) [1685313] - [infiniband] IB/core: Declare local functions 'static' (Jonathan Toppins) [1685313] - [infiniband] RDMA/i40iw: Make sure to initialize ib_device_ops (Jonathan Toppins) [1685313] - [rpmspec] Update the kernel rpm package description to mention backports/bug fixes ("Herton R. Krzesinski") [1701064] - [netdrv] bonding: fix arp_validate toggling in active-backup mode (Jarod Wilson) [1654214] - [scsi] scsi: bnx2i: fix indentation issue, remove a tab (Maurizio Lombardi) [1665626] - [scsi] scsi: bnx2i: remove set but not used variable 'cid_num' (Maurizio Lombardi) [1665626] - [scsi] scsi: bnx2i: add error handling for ioremap_nocache (Maurizio Lombardi) [1665626] - [wireless] iwlwifi: mvm: Send LQ command as async when necessary (Stanislaw Gruszka) [1687265] - [scsi] scsi: bnx2fc: Fix error handling in probe() (Maurizio Lombardi) [1665625] - [scsi] scsi: bnx2fc: Fix NULL dereference in error handling (Maurizio Lombardi) [1665625] - [scsi] scsi: bnx2fc: Remove set but not used variable 'oxid' (Maurizio Lombardi) [1665625] - [scsi] bnx2fc_fcoe: Use skb_queue_walk_safe(). (Maurizio Lombardi) [1665625] - [netdrv] hv_netvsc: Fix rndis_per_packet_info internal field initialization (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Add handler for LRO setting change (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Add support for LRO/RSC in the vSwitch (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix unwanted wakeup after tx_disable (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix IP header checksum for coalesced packets (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: fix typos in code comments (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix hash key value reset after other ops (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Refactor assignments of struct netvsc_device_info (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix ethtool change hash key error (Mohammed Gamal) [1691375] - [netdrv] ice: Disable sniffing VF traffic on PF (Kamal Heib) [1659176] - [netdrv] ice: Use more efficient structures (Kamal Heib) [1659176] - [netdrv] ice: Use bitfields where possible (Kamal Heib) [1659176] - [netdrv] ice: Add function to program ethertype based filter rule on VSIs (Kamal Heib) [1659176] - [netdrv] ice: Separate if conditions for ice_set_features() (Kamal Heib) [1659176] - [netdrv] ice: Remove __always_unused attribute (Kamal Heib) [1659176] - [netdrv] ice: Suppress false-positive style issues reported by static analyzer (Kamal Heib) [1659176] - [netdrv] ice: Refactor getting/setting coalesce (Kamal Heib) [1659176] - [netdrv] ice: Always free/allocate q_vectors (Kamal Heib) [1659176] - [netdrv] ice: Do not unnecessarily initialize local variable (Kamal Heib) [1659176] - [netdrv] ice: Add more validation in ice_vc_cfg_irq_map_msg (Kamal Heib) [1659176] - [netdrv] ice: Don't remove VLAN filters that were never programmed (Kamal Heib) [1659176] - [netdrv] ice: Preserve VLAN Rx stripping settings (Kamal Heib) [1659176] - [netdrv] ice: Fix for allowing too many MDD events on VF (Kamal Heib) [1659176] - [netdrv] ice: Use pf instead of vsi-back (Kamal Heib) [1659176] - [netdrv] ice: Use dev_err when ice_cfg_vsi_lan fails (Kamal Heib) [1659176] - [netdrv] ice: Refactor link event flow (Kamal Heib) [1659176] - [netdrv] ice: Add missing PHY type to link settings (Kamal Heib) [1659176] - [netdrv] ice: Add reg_idx variable in ice_q_vector structure (Kamal Heib) [1659176] - [netdrv] ice: Remove runtime change of PFINT_OICR_ENA register (Kamal Heib) [1659176] - [netdrv] ice: Fix issue when adding more than allowed VLANs (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary wait when disabling/enabling Rx queues (Kamal Heib) [1659176] - [netdrv] ice: Add ability to update rx-usecs-high (Kamal Heib) [1659176] - [netdrv] ice: Add 52 byte RSS hash key support (Kamal Heib) [1659176] - [netdrv] ice: Use ice_for_each_q_vector macro where possible (Kamal Heib) [1659176] - [netdrv] ice: Validate ring existence and its q_vector per VSI (Kamal Heib) [1659176] - [netdrv] ice: Reduce scope of variable in ice_vsi_cfg_rxqs (Kamal Heib) [1659176] - [netdrv] ice: Resolve static analysis reported issue (Kamal Heib) [1659176] - [netdrv] ice: Return configuration error without queue to disable (Kamal Heib) [1659176] - [netdrv] ice: Create framework for VSI queue context (Kamal Heib) [1659176] - [netdrv] ice: Calculate ITR increment based on direct calculation (Kamal Heib) [1700995 1659176] - [netdrv] ice: Bump driver version (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to control FW LLDP and DCBX (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB rebuild (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to get DCB related statistics (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add priority information into VLAN header (Kamal Heib) [1700995 1659176] - [netdrv] ice: Update rings based on TC information (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to process LLDP MIB change events (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 4/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 3/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 2/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 1/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Bump version (Kamal Heib) [1700995 1659176] - [netdrv] ice: Fix incorrect use of abbreviations (Kamal Heib) [1700995 1659176] - [netdrv] ice: Fix typos in code comments (Kamal Heib) [1700995 1659176] - [netdrv] ice: Remove "2 BITS" comment (Kamal Heib) [1659176] - [netdrv] ice: Update comment regarding the ITR_GRAN_S (Kamal Heib) [1659176] - [netdrv] ice: Update function header for __ice_vsi_get_qs (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary braces (Kamal Heib) [1659176] - [netdrv] ice: Remove unused function prototype (Kamal Heib) [1659176] - [netdrv] ice: Add missing case in print_link_msg for printing flow control (Kamal Heib) [1659176] - [netdrv] ice: Audit hotpath structures with pahole (Kamal Heib) [1659176] - [netdrv] ice: Do not bail out when filter already exists (Kamal Heib) [1659176] - [netdrv] ice: Fix issue with VF attempt to delete default MAC address (Kamal Heib) [1659176] - [netdrv] ice: enable VF admin queue interrupts (Kamal Heib) [1659176] - [netdrv] ice: Fix for adaptive interrupt moderation (Kamal Heib) [1659176] - [netdrv] ice: Implement pci_error_handler ops (Kamal Heib) [1659176] - [netdrv] ice: Put __ICE_PREPARED_FOR_RESET check in ice_prepare_for_reset (Kamal Heib) [1659176] - [netdrv] ice: use virt channel status codes (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary newlines from log messages (Kamal Heib) [1659176] - [netdrv] ice: Create a generic name for the ice_rx_flg64_bits structure (Kamal Heib) [1659176] - [netdrv] ice: add and use new ice_for_each_traffic_class() macro (Kamal Heib) [1659176] - [netdrv] ice: change VF VSI tc info along with num_queues (Kamal Heib) [1659176] - [netdrv] ice: Prevent unintended multiple chain resets (Kamal Heib) [1659176] - [netdrv] ice: map Rx buffer pages with DMA attributes (Kamal Heib) [1659176] - [netdrv] ice: Limit the ice_add_rx_frag to frag addition (Kamal Heib) [1659176] - [netdrv] ice: Gather the rx buf clean-up logic for better reuse (Kamal Heib) [1659176] - [netdrv] ice: Introduce bulk update for page count (Kamal Heib) [1659176] - [netdrv] ice: Get rid of ice_pull_tail (Kamal Heib) [1659176] - [netdrv] ice: Pull out page reuse checks onto separate function (Kamal Heib) [1659176] - [netdrv] ice: Retrieve rx_buf in separate function (Kamal Heib) [1659176] - [netdrv] ice: Enable link events over the ARQ (Kamal Heib) [1659176] - [netdrv] ice: use irq_num var in ice_vsi_req_irq_msix (Kamal Heib) [1659176] - [netdrv] ice: Restore VLAN switch rule if port VLAN existed before (Kamal Heib) [1659176] - [netdrv] ice: update VSI config dynamically (Kamal Heib) [1659176] - [netdrv] ice: Get VF VSI instances directly via PF (Kamal Heib) [1659176] - [netdrv] ice: Don't let VF know that it is untrusted (Kamal Heib) [1659176] - [netdrv] ice: Set LAN_EN for all directional rules (Kamal Heib) [1659176] - [netdrv] ice: Do not set LB_EN for prune switch rules (Kamal Heib) [1659176] - [netdrv] ice: Enable LAN_EN for the right recipes (Kamal Heib) [1659176] - [netdrv] ice: Add support for PF/VF promiscuous mode (Kamal Heib) [1659176] - [netdrv] ice: code cleanup in ice_sched.c (Kamal Heib) [1659176] - [netdrv] ice: Remove unused vsi_id field (Kamal Heib) [1659176] - [netdrv] ice: fix some function prototype and signature style issues (Kamal Heib) [1659176] - [netdrv] ice: fix the divide by zero issue (Kamal Heib) [1659176] - [netdrv] ice: Fix issue reconfiguring VF queues (Kamal Heib) [1659176] - [netdrv] ice: Remove unused function prototype (Kamal Heib) [1659176] - [netdrv] ice: fix static analysis warnings (Kamal Heib) [1659176] - [netdrv] ice: Fix issue reclaiming resources back to the pool after reset (Kamal Heib) [1659176] - [netdrv] ice: Enable MAC anti-spoof by default (Kamal Heib) [1659176] - [netdrv] ice: Determine descriptor count and ring size based on PAGE_SIZE (Kamal Heib) [1659176] - [netdrv] ice: Reset all VFs with VFLR during SR-IOV init flow (Kamal Heib) [1659176] - [netdrv] ice: Get resources per function (Kamal Heib) [1659176] - [netdrv] ice: Implement flow to reset VFs with PFR and other resets (Kamal Heib) [1659176] - [netdrv] ice: configure GLINT_ITR to always have an ITR gran of 2 (Kamal Heib) [1659176] - [netdrv] ice: use ice_for_each_vsi macro when possible (Kamal Heib) [1659176] - [netdrv] ice : Ensure only valid bits are set in ice_aq_set_phy_cfg (Kamal Heib) [1659176] - [netdrv] ice: remove redundant variable and if condition (Kamal Heib) [1659176] - [netdrv] ice: avoid multiple unnecessary de-references in probe (Kamal Heib) [1659176] - [netdrv] ice: Fix issue with VF reset and multiple VFs support on PFs (Kamal Heib) [1659176] - [netdrv] ice: Fix broadcast traffic in port VLAN mode (Kamal Heib) [1659176] - [netdrv] ice: fix overlong string, update stats output (Kamal Heib) [1659176] - [netdrv] ice: Fix for FC get rx/tx pause params (Kamal Heib) [1659176] - [netdrv] ice: use absolute vector ID for VFs (Kamal Heib) [1659176] - [netdrv] ice: check for a leaf node presence (Kamal Heib) [1659176] - [netdrv] ice: flush Tx pipe on disable queue timeout (Kamal Heib) [1659176] - [netdrv] ice: clear VF ARQLEN register on reset (Kamal Heib) [1659176] - [netdrv] ice: don't spam VFs with link messages (Kamal Heib) [1659176] - [netdrv] ice: only use the VF for ICE_VSI_VF in ice_vsi_release (Kamal Heib) [1659176] - [netdrv] ice: fix numeric overflow warning (Kamal Heib) [1659176] - [netdrv] ice: fix issue where host reboots on unload when iommu=on (Kamal Heib) [1659176] - [netdrv] ice: fix ice_remove_rule_internal vsi_list handling (Kamal Heib) [1659176] - [netdrv] ice: fix stack hogs from struct ice_vsi_ctx structures (Kamal Heib) [1659176] - [netdrv] ice: sizeof() should be avoided (Kamal Heib) [1659176] - [netdrv] ice: Fix added in VSI supported nodes calc (Kamal Heib) [1659176] - [netdrv] ice: Fix the calculation of ICE_MAX_MTU (Kamal Heib) [1659176] - [netdrv] ice: Mark extack argument as __always_unused (Kamal Heib) [1659176] - [netdrv] ice: add const qualifier to mac_addr parameter (Kamal Heib) [1659176] - [netdrv] ice: Add support for new PHY types (Kamal Heib) [1659176] - [netdrv] ice: Offload SCTP checksum (Kamal Heib) [1659176] - [netdrv] ice: Allow for software timestamping (Kamal Heib) [1659176] - [netdrv] ice: Implement getting and setting ethtool coalesce (Kamal Heib) [1659176] - [netdrv] ice: Add support for adaptive interrupt moderation (Kamal Heib) [1659176] - [netdrv] ice: Move aggregator list into ice_hw instance (Kamal Heib) [1659176] - [netdrv] ice: Rework queue management code for reuse (Kamal Heib) [1659176] - [netdrv] ice: Add ethtool private flag to make forcing link down optional (Kamal Heib) [1659176] - [netdrv] ice: Set physical link up/down when an interface is set up/down (Kamal Heib) [1659176] - [netdrv] ice: Implement support for normal get_eeprom[_len] ethtool ops (Kamal Heib) [1659176] - [netdrv] ice: Add ethtool set_phys_id handler (Kamal Heib) [1659176] - [netdrv] ice: Configure RSS LUT and HASH KEY in rebuild path (Kamal Heib) [1659176] - [netdrv] ice: Refactor a few Tx scheduler functions (Kamal Heib) [1659176] - [netdrv] ice: Fix unused variable build warning (Kamal Heib) [1659176] - [netdrv] ice: Do not enable NAPI on q_vectors that have no rings (Kamal Heib) [1659176] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Kamal Heib) [1659176] - [netdrv] ice: Fix possible NULL pointer de-reference (Kamal Heib) [1659176] - [netdrv] ice: Use Tx|Rx in comments (Kamal Heib) [1659176] - [netdrv] ice: Cosmetic formatting changes (Kamal Heib) [1659176] - [netdrv] ice: Cleanup short function signatures (Kamal Heib) [1659176] - [netdrv] ice: Cleanup ice_tx_timeout() (Kamal Heib) [1659176] - [netdrv] ice: Fix return value from NAPI poll (Kamal Heib) [1659176] - [netdrv] ice: Constify global structures that can/should be (Kamal Heib) [1659176] - [netdrv] ice: Do not set LAN_EN for MAC-VLAN filters (Kamal Heib) [1659176] - [netdrv] ice: Pass the return value of ice_init_def_sw_recp() (Kamal Heib) [1659176] - [netdrv] ice: Cleanup duplicate control queue code (Kamal Heib) [1659176] - [netdrv] ice: Remove ICE_MAX_TXQ_PER_TXQG check when configuring Tx queue (Kamal Heib) [1659176] - [netdrv] ice: Destroy scheduler tree in reset path (Kamal Heib) [1659176] - [netdrv] ice: Fix to make VLAN priority tagged traffic to appear on all TCs (Kamal Heib) [1659176] - [netdrv] ice: Call pci_disable_sriov before stopping queues for VF (Kamal Heib) [1659176] - [netdrv] ice: Increase Rx queue disable timeout (Kamal Heib) [1659176] - [netdrv] ice: Fix NVM mask defines (Kamal Heib) [1659176] - [netdrv] ice: Avoid nested RTNL locking in ice_dis_vsi (Kamal Heib) [1659176] - [netdrv] ice: Calculate guaranteed VSIs per function and use it (Kamal Heib) [1659176] - [netdrv] ice: Remove node before releasing VSI (Kamal Heib) [1659176] - [netdrv] ice: Check for q_vector when stopping rings (Kamal Heib) [1659176] - [netdrv] ice: Fix debug print in ice_tx_timeout (Kamal Heib) [1659176] - [netdrv] intel-ethernet: use correct module license (Kamal Heib) [1659176] - [netdrv] bnx2x: Add support for detection of P2P event packets. (Manish Chopra) [1638306 1663271] - [netdrv] bnx2x: Replace magic numbers with macro definitions. (Manish Chopra) [1638306 1663271] - [netdrv] bnx2x: fix spelling mistake "dicline" -> "decline" (Manish Chopra) [1663271] - [netdrv] bnx2x: Utilize FW 7.13.11.0. (Manish Chopra) [1663271] - [netdrv] bnx2x: Remove set but not used variable 'mfw_vn' (Manish Chopra) [1663271] - [netdrv] bnx2x: Use struct_size() in kzalloc() (Manish Chopra) [1663271] - [netdrv] broadcom: Mark expected switch fall-throughs (Manish Chopra) [1663271] - [netdrv] bnx2x: Bump up driver version to 1.713.36 (Manish Chopra) [1663271] - [netdrv] bnx2x: fix various indentation issues (Manish Chopra) [1663271] - [netdrv] cross-tree: phase out dma_zalloc_coherent() on headers (Manish Chopra) [1663271] - [netdrv] bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw (Manish Chopra) [1663271] - [netdrv] bnx2x: Send update-svid ramrod with retry/poll flags enabled (Manish Chopra) [1663271] - [netdrv] bnx2x: Enable PTP only on the PF that initializes the port (Manish Chopra) [1663271] - [netdrv] bnx2x: Remove configured vlans as part of unload sequence. (Manish Chopra) [1663271] - [netdrv] bnx2x: Clear fip MAC when fcoe offload support is disabled (Manish Chopra) [1663271] - [netdrv] bnx2x: Add storm FW version to ethtool driver query output. (Manish Chopra) [1663271] - [netdrv] bnx2x: Add MBI version to ethtool driver query output. (Manish Chopra) [1663271] - [netdrv] drivers: net: remove inclusion when not needed (Manish Chopra) [1663271] - [netdrv] bnx2x: remove ndo_poll_controller (Manish Chopra) [1663271] - [netdrv] bnx2x: Provide VF link status in ndo_get_vf_config (Manish Chopra) [1663271] - [netdrv] bnx2x: Ignore bandwidth attention in single function mode (Manish Chopra) [1663271] - [block] block: remove CONFIG_LBDAF (Ming Lei) [1708452] - [kernel] sched/pelt: Fix warning and clean up IRQ PELT config (Phil Auld) [1637824] - [kernel] sched/pelt: Fix update_blocked_averages() for RT and DL classes (Phil Auld) [1637824] - [mm] mm, sched/numa: Remove remaining traces of NUMA rate-limiting (Phil Auld) [1637824] - [kernel] sched/fair: Fix cpu_util_wake() for 'execl' type workloads (Phil Auld) [1637824] - [kernel] sched/fair: Consider SD_NUMA when selecting the most idle group to schedule on (Phil Auld) [1637824] - [kernel] sched/numa: Migrate pages to local nodes quicker early in the lifetime of a task (Phil Auld) [1637824] - [mm] mm, sched/numa: Remove rate-limiting of automatic NUMA balancing migration (Phil Auld) [1637824] - [kernel] sched/numa: Avoid task migration for small NUMA improvement (Phil Auld) [1637824] - [mm] mm/migrate: Use spin_trylock() while resetting rate limit (Phil Auld) [1637824] - [kernel] sched/numa: Limit the conditions where scan period is reset (Phil Auld) [1637824] - [kernel] sched/numa: Reset scan rate whenever task moves across nodes (Phil Auld) [1637824] - [kernel] sched/numa: Pass destination CPU as a parameter to migrate_task_rq (Phil Auld) [1637824] - [kernel] sched/numa: Stop multiple tasks from moving to the CPU at the same time (Phil Auld) [1637824] - [kernel] sched/fair: Fix scale_rt_capacity() for SMT (Phil Auld) [1637824] - [kernel] sched/numa: Move task_numa_placement() closer to numa_migrate_preferred() (Phil Auld) [1637824] - [kernel] sched/numa: Use group_weights to identify if migration degrades locality (Phil Auld) [1637824] - [kernel] sched/numa: Update the scan period without holding the numa_group lock (Phil Auld) [1637824] - [kernel] sched/numa: Remove numa_has_capacity() (Phil Auld) [1637824] - [kernel] sched/numa: Modify migrate_swap() to accept additional parameters (Phil Auld) [1637824] - [kernel] sched/numa: Remove unused task_capacity from 'struct numa_stats' (Phil Auld) [1637824] - [kernel] sched/numa: Skip nodes that are at 'hoplimit' (Phil Auld) [1637824] - [kernel] sched/debug: Reverse the order of printing faults (Phil Auld) [1637824] - [kernel] sched/numa: Use task faults only if numa_group is not yet set up (Phil Auld) [1637824] - [kernel] sched/numa: Set preferred_node based on best_cpu (Phil Auld) [1637824] - [kernel] sched/numa: Simplify load_too_imbalanced() (Phil Auld) [1637824] - [kernel] sched/numa: Evaluate move once per node (Phil Auld) [1637824] - [kernel] sched/fair: Remove #ifdefs from scale_rt_capacity() (Phil Auld) [1637824] - [kernel] sched/cpufreq: Clarify sugov_get_util() (Phil Auld) [1637824] - [kernel] sched/sysctl: Remove unused sched_time_avg_ms sysctl (Phil Auld) [1637824] - [kernel] sched/core: Remove the rt_avg code (Phil Auld) [1637824] - [kernel] sched/core: Use PELT for scale_rt_capacity() (Phil Auld) [1637824] - [kernel] sched/cpufreq: Remove sugov_aggregate_util() (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Take time spent in interrupts into account (Phil Auld) [1637824] - [kernel] sched/irq: Add IRQ utilization tracking (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Use DL utilization tracking (Phil Auld) [1637824] - [kernel] sched/dl: Add dl_rq utilization tracking (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Use RT utilization tracking (Phil Auld) [1637824] - [kernel] sched/rt: Add rt_rq utilization tracking (Phil Auld) [1637824] - [kernel] sched/pelt: Move PELT related code in a dedicated file (Phil Auld) [1637824] - [char] ipmi_si: Potential array underflow in hotmod_handler() (Tony Camuso) [1665131] - [char] ipmi_si: Remove hacks for adding a dummy platform devices (Tony Camuso) [1665131] - [char] ipmi_si: Consolidate scanning the platform bus (Tony Camuso) [1665131] - [char] ipmi_si: Remove hotmod devices on removal and exit (Tony Camuso) [1665131] - [char] ipmi_si: Remove hardcode IPMI devices by scanning the platform bus (Tony Camuso) [1665131] - [char] ipmi_si: Switch hotmod to use a platform device (Tony Camuso) [1665131] - [char] ipmi: Fix failure on SMBIOS specified devices (Tony Camuso) [1665131] - [char] ipmi: Consolidate the adding of platform devices (Tony Camuso) [1665131] - [char] ipmi_si: Rename addr_type to addr_space to match what it does (Tony Camuso) [1665131] - [char] ipmi_si: Convert some types into unsigned (Tony Camuso) [1665131] - [char] ipmi: ipmi_si_hardcode.c: init si_type array to fix a crash (Tony Camuso) [1665131] - [char] ipmi_si: Fix crash when using hard-coded device (Tony Camuso) [1665131] - [char] ipmi: Use dedicated API for copying a UUID (Tony Camuso) [1665131] - [char] ipmi: Use defined constant for UUID representation (Tony Camuso) [1665131] - [char] ipmi:ssif: Change some pr_xxx to dev_xxx calls (Tony Camuso) [1665131] - [char] ipmi: kcs_bmc: handle devm_kasprintf() failure case (Tony Camuso) [1665131] - [char] ipmi: Fix return value when a message is truncated (Tony Camuso) [1665131] - [char] ipmi: clean an indentation issue, remove extraneous space (Tony Camuso) [1665131] - [char] ipmi: Make the smi watcher be disabled immediately when not needed (Tony Camuso) [1665131] - [char] ipmi: Fix how the lower layers are told to watch for messages (Tony Camuso) [1665131] - [char] ipmi: Fix SSIF flag requests (Tony Camuso) [1665131] - [char] ipmi_si: fix use-after-free of resource->name (Tony Camuso) [1665131] - [char] ipmi: Don't initialize anything in the core until something uses it (Tony Camuso) [1665131] - [char] ipmi:ssif: Fix handling of multi-part return messages (Tony Camuso) [1665131] - [char] ipmi:dmi: Use pr_fmt in the IPMI DMI code (Tony Camuso) [1665131] - [char] ipmi: Remove platform driver overrides and use the id_table (Tony Camuso) [1665131] - [char] ipmi: msghandler: Add and use pr_fmt and dev_fmt, remove PFX (Tony Camuso) [1665131] - [char] ipmi: Use more common logging styles (Tony Camuso) [1665131] - [acpi] ACPI / glue: Split dev_is_platform() out of module for wide use (Tony Camuso) [1665131]- [scsi] scsi: hpsa: bump driver version (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: remove timeout from TURs (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: clean up two indentation issues (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: mark expected switch fall-throughs (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: switch to generic DMA API (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: Use vmemdup_user to replace the open code (Joseph Szczypek) [1672669] - [netdrv] ibmvnic: Add device identification to requested IRQs (Steve Best) [1665717] - [crypto] crypto: authenc - fix parsing key with misaligned rta_len (Herbert Xu) [1707546] - [block] block: don't drain in-progress dispatch in blk_cleanup_queue() (Ming Lei) [1694879] - [block] blk-mq: move cancel of hctx->run_work into blk_mq_hw_sysfs_release (Ming Lei) [1694879] - [include] blk-mq: always free hctx after request queue is freed (Ming Lei) [1694879] - [block] blk-mq: split blk_mq_alloc_and_init_hctx into two parts (Ming Lei) [1694879] - [block] blk-mq: free hw queue's resource in hctx's release handler (Ming Lei) [1694879] - [block] blk-mq: move cancel of requeue_work into blk_mq_release (Ming Lei) [1694879] - [block] blk-mq: grab .q_usage_counter when queuing request from plug code path (Ming Lei) [1694879] - [block] block: fix use-after-free on gendisk (Ming Lei) [1694879] - [netdrv] bonding: fix event handling for stacked bonds (Jarod Wilson) [1708390] - [netdrv] bonding: show full hw address in sysfs for slave entries (Jarod Wilson) [1708390] - [netdrv] bonding: fix PACKET_ORIGDEV regression (Jarod Wilson) [1708390] - [netdrv] bonding: check slave set command firstly (Jarod Wilson) [1708390] - [netdrv] bonding: count master 3ad stats separately (Jarod Wilson) [1708390] - [netdrv] bonding: add support for xstats and export 3ad stats (Jarod Wilson) [1708390] - [netdrv] bonding: add 3ad stats (Jarod Wilson) [1708390] - [netdrv] bonding: 3ad: remove bond_3ad_rx_indication's length argument (Jarod Wilson) [1708390] - [netdrv] bonding: adjust style of bond_3ad_rx_indication (Jarod Wilson) [1708390] - [netdrv] bonding: update nest level on unlink (Jarod Wilson) [1708390] - [netdrv] bonding: fix indentation issues, remove extra spaces (Jarod Wilson) [1708390] - [netdrv] bonding: convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1708390] - [netdrv] bonding: fix 802.3ad state sent to partner when unbinding slave (Jarod Wilson) [1708390] - [netdrv] bonding: use netpoll_poll_dev() helper (Jarod Wilson) [1708390] - [net] netpoll: do not test NAPI_STATE_SCHED in poll_one_napi() (Jarod Wilson) [1708390] - [net] netpoll: make ndo_poll_controller() optional (Jarod Wilson) [1708390] - [netdrv] bonding: don't cast const buf in sysfs store (Jarod Wilson) [1708390] - [netdrv] netdevsim: fix sa_idx out of bounds check (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: add ipsec offload API test (Ivan Vecera) [1708373] - [netdrv] netdevsim: add ipsec offload testing (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: use dummydev as a test device (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: clear the return code at start of ipsec test (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: use a local IP address for IPsec tests (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: hide complaint from terminated monitor (Ivan Vecera) [1708373] - [powerpc] powerpc/watchdog: Use hrtimers for per-CPU heartbeat (Steve Best) [1708327] - [netdrv] ixgbevf: Update driver version for RHEL-8.1.0 (Ken Cox) [1659166] - [netdrv] drivers: net: intel: use secpath helpers in more places (Ken Cox) [1659166] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Ken Cox) [1659166] - [netdrv] ixgbevf: add support for software timestamps (Ken Cox) [1659166] - [netdrv] ixgbe/ixgbevf: fix XFRM_ALGO dependency (Ken Cox) [1659166] - [netdrv] ixgbevf: off by one in ixgbevf_ipsec_tx() (Ken Cox) [1659166] - [netdrv] ixgbevf: fix msglen for ipsec mbx messages (Ken Cox) [1659166] - [netdrv] ixgbevf: remove ndo_poll_controller (Ken Cox) [1659166] - [netdrv] intel-ethernet: use correct module license (Ken Cox) [1659166] - [netdrv] ixgbevf: enable VF IPsec offload operations (Ken Cox) [1659166] - [netdrv] ixgbevf: add VF IPsec offload code (Ken Cox) [1659166] - [netdrv] ixgbevf: add defines for IPsec offload request (Ken Cox) [1659166] - [netdrv] ixgbevf: VF2VF TCP RSS (Ken Cox) [1659166] - [netdrv] ixgbe: Update driver version for RHEL-8.1.0 (Ken Cox) [1659164] - [netdrv] intel: correct return from set features callback (Ken Cox) [1659164] - [netdrv] ixgbe: don't do any AF_XDP zero-copy transmit if netif is not OK (Ken Cox) [1659164] - [netdrv] ixgbe: fix potential RX buffer starvation for AF_XDP (Ken Cox) [1659164] - [netdrv] ixgbe: fix older devices that do not support IXGBE_MRQC_L3L4TXSWEN (Ken Cox) [1659164] - [netdrv] net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Ken Cox) [1659164] - [netdrv] ixgbe: Use struct_size() helper (Ken Cox) [1659164] - [netdrv] ixgbe: remove magic constant in ixgbe_reset_hw_82599() (Ken Cox) [1659164] - [netdrv] ixgbe: use mii_bus to handle MII related ioctls (Ken Cox) [1659164] - [netdrv] ixgbe: register a mdiobus (Ken Cox) [1659164] - [netdrv] drivers: net: intel: use secpath helpers in more places (Ken Cox) [1659164] - [netdrv] ixgbe: Fix race when the VF driver does a reset (Ken Cox) [1659164] - [netdrv] ixgbe: recognize 1000BaseLX SFP modules as 1Gbps (Ken Cox) [1659164] - [netdrv] ixgbe: Replace synchronize_sched() with synchronize_rcu() (Ken Cox) [1659164] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Ken Cox) [1659164] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Ken Cox) [1659164] - [netdrv] ixgbe: allow IPsec Tx offload in VEPA mode (Ken Cox) [1659164] - [netdrv] ixgbe: don't clear_bit on xdp_ring->state if xdp_ring is null (Ken Cox) [1659164] - [netdrv] ixgbe: fix MAC anti-spoofing filter after VFLR (Ken Cox) [1659164] - [netdrv] ixgbe/ixgbevf: fix XFRM_ALGO dependency (Ken Cox) [1659164] - [netdrv] drivers: net: remove inclusion when not needed (Ken Cox) [1659164] - [netdrv] ixgbe: check return value of napi_complete_done() (Ken Cox) [1659164] - [netdrv] ixgbe: add AF_XDP zero-copy Tx support (Ken Cox) [1659164] - [netdrv] ixgbe: move common Tx functions to ixgbe_txrx_common.h (Ken Cox) [1659164] - [netdrv] ixgbe: add AF_XDP zero-copy Rx support (Ken Cox) [1659164] - [netdrv] ixgbe: move common Rx functions to ixgbe_txrx_common.h (Ken Cox) [1659164] - [netdrv] ixgbe: added Rx/Tx ring disable/enable functions (Ken Cox) [1659164] - [netdrv] ixgbe: Fix crash with VFs and flow director on interface flap (Ken Cox) [1659164] - [netdrv] ixgbe: remove redundant function ixgbe_fw_recovery_mode() (Ken Cox) [1659164] - [netdrv] ixgbe: Fix ixgbe TX hangs with XDP_TX beyond queue limit (Ken Cox) [1659164] - [netdrv] ixgbe: remove ndo_poll_controller (Ken Cox) [1659164] - [netdrv] intel-ethernet: use correct module license (Ken Cox) [1659164] - [netdrv] ixgbe: fix the return value for unsupported VF offload (Ken Cox) [1659164] - [netdrv] ixgbe: disallow IPsec Tx offload when in SR-IOV mode (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec offload request message handling (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec offload enable flag (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec management (Ken Cox) [1659164] - [netdrv] ixgbe: prep IPsec constants for later use (Ken Cox) [1659164] - [netdrv] ixgbe: reload IPsec IP table after sa tables (Ken Cox) [1659164] - [netdrv] ixgbe: don't clear IPsec sa counters on HW clearing (Ken Cox) [1659164] - [netdrv] ixgbe: firmware recovery mode (Ken Cox) [1659164] - [netdrv] ixgbe: fix driver behaviour after issuing VFLR (Ken Cox) [1659164] - [netdrv] ixgbe: Prevent unsupported configurations with XDP (Ken Cox) [1659164] - [netdrv] ixgbe: Refactor queue disable logic to take completion time into account (Ken Cox) [1659164] - [netdrv] ixgbe: Reorder Tx/Rx shutdown to reduce time needed to stop device (Ken Cox) [1659164] - [netdrv] ixgbe: add ipsec security registers into ethtool register dump (Ken Cox) [1659164] - [netdrv] ixgbe: Do not allow LRO or MTU change with XDP (Ken Cox) [1659164] - [wireless] brcmfmac: add subtype check for event handling in data path (Stanislaw Gruszka) [1705386] {CVE-2019-9500} - [wireless] brcmfmac: assure SSID length from firmware is limited (Stanislaw Gruszka) [1705386] {CVE-2019-9500} - [base] driver core: Postpone DMA tear-down until after devres release (Maurizio Lombardi) [1698053]- [of] of: Add missing exports of node name compare functions (Neil Horman) [1665660] - [of] of: add node name compare helper functions (Neil Horman) [1665660] - [include] gpio: Add API to explicitly name a consumer (Neil Horman) [1665660] - [drivers] spi: spi-gpio: fix SPI_CS_HIGH capability (Neil Horman) [1665660] - [drivers] spi: use gpio[d]_set_value_cansleep for setting chipselect GPIO (Neil Horman) [1665660] - [drivers] spi: gpio: Advertise support for SPI_CS_HIGH (Neil Horman) [1665660] - [include] spi: support inter-word delay requirement for devices (Neil Horman) [1665660] - [drivers] spi: dw: Fix default polarity of native chipselect (Neil Horman) [1665660] - [drivers] spi: Support high CS when using descriptors (Neil Horman) [1665660] - [include] spi: Go back to immediate teardown (Neil Horman) [1665660] - [drivers] spi: dw: change snprintf to scnprintf for possible overflow (Neil Horman) [1665660] - [drivers] spi: dw: fix warning unused variable 'ret' (Neil Horman) [1665660] - [include] spi: core: avoid waking pump thread from spi_sync instead run teardown delayed (Neil Horman) [1665660] - [drivers] spi: dw: Convert to use CS GPIO descriptors (Neil Horman) [1665660] - [include] spi: Optionally use GPIO descriptors for CS GPIOs (Neil Horman) [1665660] - [drivers] spi: dw: fix potential variable assignment error (Neil Horman) [1665660] - [drivers] spi: Use of_node_name_eq for node name comparisons (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add ACPI support (Neil Horman) [1665660] - [include] spi: add support for octal mode I/O data transfer (Neil Horman) [1665660] - [drivers] spi: Fix formatting of header block (Neil Horman) [1665660] - [drivers] spi: Fix core transfer waits after slave support (Neil Horman) [1665660] - [drivers] spi: Deal with slaves that return from transfer_one() unfinished (Neil Horman) [1665660] - [include] spi: gpio: Support 3WIRE high-impedance turn-around (Neil Horman) [1665660] - [drivers] spi: Make GPIO CSs honour the SPI_NO_CS flag (Neil Horman) [1665660] - [drivers] dw: spi: add support for Amazon's Alpine spi controller (Neil Horman) [1665660] - [include] spi: Add driver_override SPI device attribute (Neil Horman) [1665660] - [include] spi: make OF helper available for others (Neil Horman) [1665660] - [include] spi: switch to SPDX license identifier (Neil Horman) [1665660] - [drivers] spi: always use software fallback for SPI_CS_WORD when using cs_gio (Neil Horman) [1665660] - [drivers] spi: add software implementation for SPI_CS_WORD (Neil Horman) [1665660] - [include] spi: add new SPI_CS_WORD flag (Neil Horman) [1665660] - [drivers] spi: gpio: No MISO does not imply no RX (Neil Horman) [1665660] - [drivers] spi: dw: support 4-16 bits per word (Neil Horman) [1665660] - [drivers] spi: spi-gpio: Remove set but not used variable 'pdata' (Neil Horman) [1665660] - [drivers] spi: Do not print a message if spi_controller_{suspend,resume}() fails (Neil Horman) [1665660] - [drivers] spi: gpio: Fix copy-and-paste error (Neil Horman) [1665660] - [drivers] spi: dw-mmio: avoid hardcoded field mask (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add MSCC Jaguar2 support (Neil Horman) [1665660] - [include] spi: Introduce one new field to set word delay (Neil Horman) [1665660] - [drivers] spi: Fix double IDR allocation with DT aliases (Neil Horman) [1665660] - [drivers] spi: fix IDR collision on systems with both fixed and dynamic SPI bus numbers (Neil Horman) [1665660] - [drivers] spi: spi-gpio: add SPI_3WIRE support (Neil Horman) [1665660] - [drivers] spi: add flags parameter to txrx_word function pointers (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add MSCC Ocelot support (Neil Horman) [1665660] - [drivers] spi: dw: export dw_spi_set_cs (Neil Horman) [1665660] - [drivers] spi: dw: allow providing own set_cs callback (Neil Horman) [1665660] - [drivers] spi: dw: fix possible race condition (Neil Horman) [1665660] - [acpi] ACPI / APD: Add clock frequency for Hisilicon Hip08 SPI controller (Neil Horman) [1665660] - [md] md/raid: raid5 preserve the writeback action after the parity check (Nigel Croxon) [1702309] - [md] Revert "Don't jump to compute_result state from check_result state" (Nigel Croxon) [1702309] - [md] md: return -ENODEV if rdev has no mddev assigned (Nigel Croxon) [1702309] - [md] md: add __acquires/__releases annotations to handle_active_stripes (Nigel Croxon) [1702309] - [md] md: add __acquires/__releases annotations to (un)lock_two_stripes (Nigel Croxon) [1702309] - [md] md: mark md_cluster_mod static (Nigel Croxon) [1702309] - [md] md: use correct type in super_1_sync (Nigel Croxon) [1702309] - [md] md: use correct type in super_1_load (Nigel Croxon) [1702309] - [md] md: use correct types in md_bitmap_print_sb (Nigel Croxon) [1702309] - [md] md: add a missing endianness conversion in check_sb_changes (Nigel Croxon) [1702309] - [md] md: add mddev->pers to avoid potential NULL pointer dereference (Nigel Croxon) [1702309] - [md] md: batch flush requests. (Nigel Croxon) [1702309] - [md] Revert "MD: fix lock contention for flush bios" (Nigel Croxon) [1702309] - [md] Don't jump to compute_result state from check_result state (Nigel Croxon) [1702309] - [netdrv] bnxt_en: Reset device on RX buffer errors. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Improve RX consumer index validity check. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Drop oversize TX packets to prevent errors. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Wait longer for the firmware message response to complete. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix typo in firmware message timeout logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Return relevant error code when offload fails (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for mdio read/write to external PHY (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Propagate trusted VF attribute to firmware. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for BCM957504 (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.47. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable interrupts when allocating CP rings or NQs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix context memory allocation. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix ring checking logic on 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust default RX coalescing ticks to 10 us. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Support for 64-bit flow handle. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Increase context memory allocations on 57500 chips for RDMA. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add Level 2 context memory paging support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Enhance bnxt_alloc_ring()/bnxt_free_ring(). (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for 2nd firmware message channel. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Introduce bnxt_get_hwrm_resp_addr & bnxt_get_hwrm_seq_id routines. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Avoid arithmetic on void * pointer. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use macros for firmware message doorbell offsets. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Set hwrm_intr_seq_id value to its inverted value. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.33. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix ethtool self-test loopback. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: query force speeds before disabling autoneg mode. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not free port statistics buffer when device is down. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Save ring statistics before reset. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Return linux standard errors in bnxt_ethtool.c (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Don't set ETS on unused TCs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add ethtool -S priority counters. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add SR-IOV support for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable MSIX before re-reserving NQs/CMPL rings. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Reserve 1 stat_ctx for RDMA driver. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not modify max_stat_ctxs after RDMA driver requests/frees stat_ctxs (Selvin Xavier) [1664477] - [netdrv] bnxt_en: get rid of num_stat_ctxs variable (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add bnxt_get_avail_cp_rings_for_en() helper function. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Store the maximum NQs available on the PF. (Selvin Xavier) [1664477] - [netdrv] bnxt: remove printing of hwrm message (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix _bnxt_get_max_rings() for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix NQ/CP rings accounting on the new 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Keep track of reserved IRQs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix CNP CoS queue regression. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix filling time in bnxt_fill_coredump_record() (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add software "missed_irqs" counter. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Workaround occasional TX timeout on 57500 A0. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable RDMA support on the 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix RSS context allocation. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Copy and paste bug in extended tx_stats (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add PCI ID for BCM57508 device. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new NAPI poll function for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Refactor bnxt_poll_work(). (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add coalescing setup for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use bnxt_cp_ring_info struct pointer as parameter for RX path. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add RSS support for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Increase RSS context array count and skip ring groups on 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Allocate/Free CP rings for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Modify bnxt_ring_alloc_send_msg() to support 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add helper functions to get firmware CP ring ID. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Allocate completion ring structures for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Modify the ring reservation functions for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust MSIX and ring groups for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Re-structure doorbells. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add 57500 new chip ID and basic structures. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Configure context memory on new devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Check context memory requirements from firmware. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new flags to setup new page table PTE bits on newer devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Refactor bnxt_ring_struct. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update interrupt coalescing logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add maximum extended request length fw message support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add additional extended port statistics. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.3. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Remove unnecessary unsigned integer comparison and initialize variable (Selvin Xavier) [1664477] - [netdrv] bnxt_en: get the reduced max_irqs by the ones used by RDMA (Selvin Xavier) [1664477] - [netdrv] bnxt_en: free hwrm resources, if driver probe fails. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix enables field in HWRM_QUEUE_COS2BW_CFG request (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix VNIC reservations on the PF. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add a driver specific gre_ver_check devlink parameter. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use msix_vec_per_pf_max and msix_vec_per_pf_min devlink params. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: return proper error when FW returns HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use ignore_ari devlink parameter (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix TX timeout during netpoll. (Selvin Xavier) [1664477] - [netdrv] bnxt: remove ndo_poll_controller (Selvin Xavier) [1664477] - [netdrv] bnxt_en: don't try to offload VLAN 'modify' action (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove set but not used variable 'addr_type' (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove set but not used variable 'rx_stats' (Selvin Xavier) [1664477] - [netdrv] net: bnxt: Fix a uninitialized variable warning. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: take coredump_record structure off stack (Selvin Xavier) [1664477] - [netdrv] bnxt_en: avoid string overflow for record->system_name (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix strcpy() warnings in bnxt_ethtool.c (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not use the CNP CoS queue for networking traffic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add DCBNL DSCP application protocol support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add hwmon sysfs support to read temperature (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Notify firmware about IF state changes. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Move firmware related flags to a new fw_cap field in struct bnxt. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add BNXT_NEW_RM() macro. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for ethtool get dump. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update RSS setup and GRO-HW logic according to the latest spec. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new VF resource allocation strategy mode. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add PHY retry logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add external loopback test to ethtool selftest. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust timer based on ethtool stats-block-usecs settings. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface version to 1.9.2.25. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: combine 'else if' and 'else' into single branch (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove redundant debug register dma mem allocation (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add bnxt_en initial params table and register it. (Selvin Xavier) [1664477] - [netdrv] sfc: mcdi_port: Mark expected switch fall-through (Jarod Wilson) [1685478] - [netdrv] sfc: ensure recovery after allocation failures (Jarod Wilson) [1685478] - [netdrv] sfc: Replace dev_kfree_skb_any by dev_consume_skb_any (Jarod Wilson) [1685478] - [netdrv] sfc: add bundle partition definitions to mtd (Jarod Wilson) [1685478] - [netdrv] sfc: Replace spin_is_locked() with lockdep (Jarod Wilson) [1685478] - [netdrv] sfc: remove ndo_poll_controller (Jarod Wilson) [1685478] - [iommu] iommu/amd: Set exclusion range correctly (Jerry Snitselaar) [1702766] - [iommu] iommu/amd: Reserve exclusion range in iova-domain (Jerry Snitselaar) [1694835] - [scsi] scsi: mpt3sas: Fix kernel panic during expander reset (Tomas Henzl) [1677693] - [mm] mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y CONFIG_SMP=n (Waiman Long) [1705607] - [mm] x86/mm: Drop usage of __flush_tlb_all() in kernel_physical_mapping_init() (Waiman Long) [1705607] - [include] x86/mm: Validate kernel_physical_mapping_init() PTE population (Waiman Long) [1705607] - [include] generic/pgtable: Introduce set_pte_safe() (Waiman Long) [1705607] - [include] generic/pgtable: Introduce {p4d,pgd}_same() (Waiman Long) [1705607] - [include] generic/pgtable: Make {pmd, pud}_same() unconditionally available (Waiman Long) [1705607] - [mm] percpu: stop printing kernel addresses (Waiman Long) [1705607] - [x86] x86/speculation: Prevent deadlock on ssb_state::lock (Waiman Long) [1705607] - [fs] debugfs: fix use-after-free on symlink traversal (Waiman Long) [1705607] - [lib] debugobjects: avoid recursive calls with kmemleak (Waiman Long) [1705607] - [mm] mm/swapfile.c: use kvzalloc for swap_info_struct allocation (Waiman Long) [1705607] - [mm] hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444! (Waiman Long) [1705607] - [include] watchdog/core: Add missing prototypes for weak functions (Waiman Long) [1705607] - [mm] memory_hotplug: cond_resched in __remove_pages (Waiman Long) [1705607] - [kernel] genirq: Fix race on spurious interrupt detection (Waiman Long) [1705607] - [kernel] printk: Fix panic caused by passing log_buf_len to command line (Waiman Long) [1705607] - [mm] mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback (Waiman Long) [1705607] - [mm] mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly (Waiman Long) [1705607] - [mm] hugetlbfs: dirty pages as they are added to pagecache (Waiman Long) [1705607] - [fs] mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range() (Waiman Long) [1705607] - [kernel] sched/fair: Fix the min_vruntime update logic in dequeue_entity() (Waiman Long) [1705607] - [mm] x86/mm/pat: Disable preemption around __flush_tlb_all() (Waiman Long) [1705607] - [x86] x86/corruption-check: Fix panic in memory_corruption_check() when boot option without value is provided (Waiman Long) [1705607] - [x86] x86/time: Correct the attribute on jiffies' definition (Waiman Long) [1705607] - [x86] x86/percpu: Fix this_cpu_read() (Waiman Long) [1705607] - [x86] x86/tsc: Force inlining of cyc2ns bits (Waiman Long) [1705607] - [mm] mm/migrate.c: split only transparent huge pages when allocation fails (Waiman Long) [1705607] - [mm] mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2 (Waiman Long) [1705607] - [mm] mm/mmap.c: don't clobber partially overlapping VMA with MAP_FIXED_NOREPLACE (Waiman Long) [1705607] - [mm] percpu: stop leaking bitmap metadata blocks (Waiman Long) [1705607] - [lib] vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced pointers (Waiman Long) [1705607] - [mm] mm/vmstat.c: fix outdated vmstat_text (Waiman Long) [1705607] - [base] PM / core: Clear the direct_complete flag on errors (Waiman Long) [1705607] - [tools] x86/vdso: Fix vDSO syscall fallback asm constraint regression (Waiman Long) [1705607] - [x86] x86/vdso: Only enable vDSO retpolines when enabled and supported (Waiman Long) [1705607] - [tools] selftests/x86: Add clock_gettime() tests to test_vdso (Waiman Long) [1705607] - [x86] x86/vdso: Fix asm constraints on vDSO syscall fallbacks (Waiman Long) [1705607] - [drivers] clocksource/drivers/timer-atmel-pit: Properly handle error cases (Waiman Long) [1705607] - [mm] mm/vmstat.c: skip NR_TLB_REMOTE_FLUSH* properly (Waiman Long) [1705607] - [mm] mm, thp: fix mlocking THP page with migration enabled (Waiman Long) [1705607] - [mm] mm: migration: fix migration of huge PMD shared pages (Waiman Long) [1705607] - [net] net/smc: improve smc_conn_create reason codes (Philipp Rudo) [1703471] - [net] net/smc: improve smc_listen_work reason codes (Philipp Rudo) [1703471] - [net] net/smc: code cleanup smc_listen_work (Philipp Rudo) [1703471] - [net] net/smc: cleanup of get vlan id (Philipp Rudo) [1703471] - [net] net/smc: consolidate function parameters (Philipp Rudo) [1703471] - [net] net/smc: check for ip prefix and subnet (Philipp Rudo) [1703471] - [net] net/smc: fallback to TCP after connect problems (Philipp Rudo) [1703471] - [net] net/smc: nonblocking connect rework (Philipp Rudo) [1703471] - [net] net/smc: move unhash before release of clcsock (Philipp Rudo) [1703471] - [net] net/smc: fix return code from FLUSH command (Philipp Rudo) [1703471] - [net] net/smc: propagate file from SMC to TCP socket (Philipp Rudo) [1703471] - [net] net/smc: fix a NULL pointer dereference (Philipp Rudo) [1703471] - [net] net/smc: wait for pending work before clcsock release_sock (Philipp Rudo) [1703471] - [net] net/smc: allow pnetid-less configuration (Philipp Rudo) [1700797] - [net] net/smc: allow PCI IDs as ib device names in the pnet table (Philipp Rudo) [1700797] - [net] net/smc: add pnet table namespace support (Philipp Rudo) [1700797] - [net] net/smc: add smcd support to the pnet table (Philipp Rudo) [1700797] - [net] net/smc: rework pnet table (Philipp Rudo) [1700797] - [net] net/smc: cleanup for smcr_tx_sndbuf_nonempty (Philipp Rudo) [1700797]- [tools] tools power turbostat: Override CFLAGS assignments and add LDFLAGS to build command (Steve Best) [1705959] - [tools] tools/power turbostat: update version number (Steve Best) [1705959] - [tools] tools/power turbostat: Add checks for failure of fgets() and fscanf() (Steve Best) [1705959] - [tools] tools/power turbostat: Warn on bad ACPI LPIT data (Steve Best) [1705959] - [tools] tools/power turbostat: Also read package power on AMD F17h (Zen) (Steve Best) [1705959] - [tools] tools/power turbostat: Add support for AMD Fam 17h (Zen) RAPL (Steve Best) [1705959] - [tools] tools/power turbostat: Do not display an error on systems without a cpufreq driver (Steve Best) [1705959] - [tools] tools/power turbostat: Add Die column (Steve Best) [1705959] - [tools] tools/power turbostat: Cleanup CNL-specific code (Steve Best) [1705959] - [tools] tools/power turbostat: Cleanup CC3-skip code (Steve Best) [1705959] - [tools] tools/power turbostat: Restore ability to execute in topology-order (Steve Best) [1705959] - [tools] tools/power turbostat: fix goldmont C-state limit decoding (Steve Best) [1705959] - [tools] tools/power turbostat: reduce debug output (Steve Best) [1705959] - [tools] tools/power turbosat: fix AMD APIC-id output (Steve Best) [1705959] - [mmc] mmc: sdhci-iproc: Add ACPI support (Mark Langsdorf) [1576966] - [mmc] mmc: sdhci-pltfm: Convert DT properties to generic device properties (Mark Langsdorf) [1576966] - [tty] serial: 8250_dw: Add ACPI support for uart on Broadcom SoC (Mark Langsdorf) [1576966] - [watchdog] watchdog: sp805: Add clock-frequency property (Mark Langsdorf) [1576966] - [watchdog] watchdog: sp805: set WDOG_HW_RUNNING when appropriate (Mark Langsdorf) [1576966] - [thermal] thermal: broadcom: Add Stingray thermal driver (Mark Langsdorf) [1576966] - [hv] hv: vmbus: Change server monitor_pages index to 0 (Mohammed Gamal) [1691383] - [kernel] hv: vmbus: Expose counters for interrupts and full conditions (Mohammed Gamal) [1691383] - [kernel] vmbus: Switch to use new generic UUID API (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Check for ring when getting debug info (Mohammed Gamal) [1691383] - [x86] hyper-v: move synic/stimer control structures definitions to hyperv-tlfs.h (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Return -EINVAL for the sys files for unopened channels (Mohammed Gamal) [1691383] - [hv] x86, hyperv: remove PCI dependency (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Offload the handling of channels to two workqueues (Mohammed Gamal) [1691383] - [hv] hv: vmbus: check the creation_status in vmbus_establish_gpadl() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove the useless API vmbus_get_outgoing_channel() (Mohammed Gamal) [1691383] - [hv] hv: kvp: Use u to print U32 (Mohammed Gamal) [1691383] - [hv] hv_utils: update name in struct hv_driver util_drv (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Get rid of unnecessary state in hv_context (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix the recent regression caused by incorrect clean-up (Mohammed Gamal) [1691383] - [hv] hv_balloon: Replace spin_is_locked() with lockdep (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Use cpumask_var_t for on-stack cpu mask (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix two "this statement may fall through" warnings (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix the indentation of some "break" statements (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the descriptions of some function parameters (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Use get/put_cpu() in vmbus_connect() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix synic per-cpu context initialization (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Cleanup synic memory free path (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove use of slow_virt_to_phys() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: add numa_node to sysfs (Mohammed Gamal) [1691383] - [x86] hv: vmbus: Get rid of MSR access from vmbus_drv.c (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the issue with freeing up hv_ctl_table_hdr (Mohammed Gamal) [1691383] - [hv] hv: vmus: Fix the check for return value from kmsg get dump buffer (Mohammed Gamal) [1691383] - [hv] hv: Send one page worth of kmsg dump over Hyper-V during panic (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove x86 MSR refs in arch independent code (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the offer_in_progress in vmbus_process_offer() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Add comments on ring buffer signaling (Mohammed Gamal) [1691383] - [video] use the new async probing feature for the hyperv drivers (Mohammed Gamal) [1691383] - [rpmspec] kernel-packaging: Remove kernel files from kernel-modules-extra package (Prarit Bhargava) [1705216] - [fs] xfs: don't ever put nlink > 0 inodes on the unlinked list (Brian Foster) [1693063] - [fs] xfs: reserve blocks for ifree transaction during log recovery (Brian Foster) [1693063] - [fs] xfs: rename m_inotbt_nores to m_finobt_nores (Brian Foster) [1693063] - [net] xfrm: Honor original L3 slave device in xfrmi policy lookup (Herbert Xu) [1702198] - [net] xfrm: Fix inbound traffic via XFRM interfaces across network namespaces (Herbert Xu) [1702198] - [net] xfrm: Make set-mark default behavior backward compatible (Herbert Xu) [1702198] - [net] xfrm: remove unnecessary check in xfrmi_get_stats64 (Herbert Xu) [1702198] - [net] xfrm: fix gro_cells leak when remove virtual xfrm interfaces (Herbert Xu) [1702198] - [net] xfrm: Make function xfrmi_get_link_net() static (Herbert Xu) [1702198] - [net] xfrm: fix ptr_ret.cocci warnings (Herbert Xu) [1702198] - [net] xfrm: Return detailed errors from xfrmi_newlink (Herbert Xu) [1702198] - [net] xfrm: Allow xfrmi if_id to be updated by UPDSA (Herbert Xu) [1702198] - [net] xfrm: Remove xfrmi interface ID from flowi (Herbert Xu) [1702198] - [net] xfrm: Allow Set Mark to be Updated Using UPDSA (Herbert Xu) [1702198] - [net] xfrm: Add virtual xfrm interfaces (Herbert Xu) [1702198] - [net] xfrm: Add a new lookup key to match xfrm interfaces. (Herbert Xu) [1702198] - [net] flow: Extend flow informations with xfrm interface id. (Herbert Xu) [1702198] - [net] xfrm: Extend the output_mark to support input direction and masking. (Herbert Xu) [1702198] - [fs] xfs: don't account extra agfl blocks as available (Brian Foster) [1656687] - [scsi] scsi: hisi_sas: Some misc tidy-up (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Don't hard reset disk during controller reset (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Support all RAS events with MSI interrupts (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: allocate different SAS address for directly attached situation (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Adjust the printk format of functions hisi_sas_init_device() (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Remedy inconsistent PHY down state in software (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: add host reset interface for test (Xiaojun Tan) [1702614] - [hid] HID: Increase maximum report size allowed by hid_field_extract() (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: remove data[128] usage on stack when sending HBM request (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: move doorbell writing before flush (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Optimize writing ipc message from queue (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: avoid binding wrong ishtp_cl_device (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Enable Ice Lake mobile (Tony Camuso) [1688112] - [hid] HID: increase maximum global item tag report size to 256 (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Enable Sunrise Point-H ish driver (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: remove redundant variable num_frags (Tony Camuso) [1688112]- [s390] Disable kexec_load via kernel_lockdown for s390 (Philipp Rudo) [1659399] - [s390] s390/ipl: Provide has_secure sysfs attribute (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Create ipl report and pass to next kernel (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Signature verification prototype (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Load new kernel to absolute 0 (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Unify loader code (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Simplify parmarea access (Philipp Rudo) [1659399] - [s390] s390/purgatory: Omit use of bin2c (Philipp Rudo) [1659399] - [s390] s390/purgatory: Reduce purgatory size (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Fix detection of text segment in ELF loader (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Fix potential segment overlap in ELF loader (Philipp Rudo) [1659399] - [s390] s390/zcore: Rename ipl_block to mitigate name collision (Philipp Rudo) [1659399] - [s390] s390/boot: pad bzImage to 4K (Philipp Rudo) [1659399] - [s390] s390/ipl: add helper functions to create an IPL report (Philipp Rudo) [1659399] - [s390] s390/ipl: read IPL report at early boot (Philipp Rudo) [1659399] - [s390] s390/ipl: add definitions for the IPL report block (Philipp Rudo) [1659399] - [s390] s390/ipl: provide uapi header for list directed IPL (Philipp Rudo) [1659399] - [s390] s390/ipl: make ipl_info less confusing (Philipp Rudo) [1659399] - [s390] s390: introduce .boot.preserved.data section compile time validation (Philipp Rudo) [1659399] - [s390] s390: move ipl block to .boot.preserved.data section (Philipp Rudo) [1659399] - [s390] s390: introduce .boot.preserved.data section (Philipp Rudo) [1659399] - [mm] s390: clean up redundant facilities list setup (Philipp Rudo) [1659399] - [s390] s390/als: remove duplicated in-place implementation of stfle (Philipp Rudo) [1659399] - [netdrv] fm10k: Fix a potential NULL pointer dereference (Neil Horman) [1659172] - [netdrv] fm10k: use struct_size() in kzalloc() (Neil Horman) [1659172] - [netdrv] fm10k: TRIVIAL cleanup of extra spacing in function comment (Neil Horman) [1659172] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Neil Horman) [1659172] - [netdrv] fm10k: bump driver version to match out-of-tree release (Neil Horman) [1659172] - [netdrv] fm10k: add missing device IDs to the upstream driver (Neil Horman) [1659172] - [netdrv] fm10k: ensure completer aborts are marked as non-fatal after a resume (Neil Horman) [1659172] - [netdrv] fm10k: fix SM mailbox full condition (Neil Horman) [1659172] - [netdrv] fm10k: remove ndo_poll_controller (Neil Horman) [1659172] - [netdrv] intel-ethernet: use correct module license (Neil Horman) [1659172] - [scsi] Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO" (Nilesh Javali) [1701545] - [tools] tools: introduce test_and_clear_bit (Peter Xu) [1694926] - [net] bridge: fix netlink export of vlan_stats_per_port option (Ivan Vecera) [1703551] - [net] bridge: fix vlan stats use-after-free on destruction (Ivan Vecera) [1703551] - [tools] headers uapi: Update linux/if_link.h header copy (Ivan Vecera) [1703551] - [net] bridge: fix a possible memory leak in __vlan_add (Ivan Vecera) [1703551] - [net] bridge: add support for per-port vlan stats (Ivan Vecera) [1703551] - [net] bridge: mcast: Default back to multicast enabled state (Ivan Vecera) [1703551] - [net] bridge: pack net_bridge better (Ivan Vecera) [1703551] - [net] bridge: convert mtu_set_by_user to a bit (Ivan Vecera) [1703551] - [net] bridge: convert neigh_suppress_enabled option to a bit (Ivan Vecera) [1703551] - [net] bridge: convert mcast options to bits (Ivan Vecera) [1703551] - [net] bridge: convert and rename mcast disabled (Ivan Vecera) [1703551] - [net] bridge: convert group_addr_set option to a bit (Ivan Vecera) [1703551] - [net] bridge: convert nf call options to bits (Ivan Vecera) [1703551] - [net] bridge: add bitfield for options and convert vlan opts (Ivan Vecera) [1703551] - [net] bridge: make struct opening bracket consistent (Ivan Vecera) [1703551] - [net] Add netif_is_gretap()/netif_is_ip6gretap() (Ivan Vecera) [1701208] - [net] sched: register callbacks for indirect tc block binds (Ivan Vecera) [1701214] - [tools] selftests: tc-testing: fix tunnel_key failure if dst_port is unspecified (Ivan Vecera) [1701210] - [tools] selftests: tc-testing: drop test on missing tunnel key id (Ivan Vecera) [1701210] - [net] sched: act_tunnel_key: Don't dump dst port if it wasn't set (Ivan Vecera) [1701210] - [net] sched: act_tunnel_key: Allow key-less tunnels (Ivan Vecera) [1701210] - [net] ethtool: Added support for 50Gbps per lane link modes (Ivan Vecera) [1701215] - [net] ip_gre: fix parsing gre header in ipgre_err (Hangbin Liu) [1702212] - [net] vxlan: Free a leaked vetoed multicast rdst (Ivan Vecera) [1691695] - [net] switchdev: Add extack argument to call_switchdev_notifiers() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add extack to switchdev operations (Ivan Vecera) [1691695] - [net] net: Add extack argument to ndo_fdb_add() (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Delete remote after update (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Postpone vxlan_config_apply() (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Inline vxlan_dev_configure() (Ivan Vecera) [1691695] - [netdrv] vxlan: Allow vetoing of FDB notifications (Ivan Vecera) [1691695] - [netdrv] vxlan: Have vxlan_fdb_replace() save original rdst value (Ivan Vecera) [1691695] - [netdrv] vxlan: Split vxlan_fdb_update() in two (Ivan Vecera) [1691695] - [netdrv] vxlan: Move up vxlan_fdb_free(), vxlan_fdb_destroy() (Ivan Vecera) [1691695] - [net] bridge: Add br_fdb_clear_offload() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add vxlan_fdb_clear_offload() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add vxlan_fdb_replay() (Ivan Vecera) [1691695] - [net] route: add support for directed broadcast forwarding (Xin Long) [1562384] - [net] erspan: build the header with the right proto according to erspan_ver (Xin Long) [1663862] - [net] ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL (Xin Long) [1688617] - [net] tipc: handle the err returned from cmd header function (Jon Maloy) [1693452] - [net] tipc: check link name with right length in tipc_nl_compat_link_set (Jon Maloy) [1693452] - [net] tipc: check bearer name with right length in tipc_nl_compat_bearer_enable (Jon Maloy) [1693452] - [net] tipc: change to check tipc_own_id to return in tipc_net_stop (Jon Maloy) [1693452] - [net] tipc: tipc clang warning (Jon Maloy) [1693452] - [net] tipc: fix cancellation of topology subscriptions (Jon Maloy) [1693452] - [net] tipc: allow service ranges to be connect()'ed on RDM/DGRAM (Jon Maloy) [1693452] - [net] net: tipc: fix a missing check for nla_nest_start (Jon Maloy) [1693452] - [net] net: tipc: fix a missing check of nla_nest_start (Jon Maloy) [1693452] - [net] tipc: fix RDM/DGRAM connect() regression (Jon Maloy) [1693452] - [net] tipc: fix race condition causing hung sendto (Jon Maloy) [1693452] - [net] tipc: improve function tipc_wait_for_rcvmsg() (Jon Maloy) [1693452] - [net] tipc: improve function tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: fix link session and re-establish issues (Jon Maloy) [1693452] - [net] tipc: fix skb may be leaky in tipc_link_input (Jon Maloy) [1693452] - [net] tipc: remove dead code in struct tipc_topsrv (Jon Maloy) [1693452] - [net] tipc: mark expected switch fall-throughs (Jon Maloy) [1693452] - [net] tipc: remove unneeded semicolon in trace.c (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_doit (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_name_table_dump (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_link_set (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_bearer_enable (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_link_reset_stats (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in in tipc_conn_rcv_sub (Jon Maloy) [1693452] - [net] tipc: fix memory leak in tipc_nl_compat_publ_dump (Jon Maloy) [1693452] - [net] tipc: fix a missing check of genlmsg_put (Jon Maloy) [1693452] - [net] tipc: fix a double free in tipc_enable_bearer() (Jon Maloy) [1693452] - [net] net/netlink_compat: Fix a missing check of nla_parse_nested (Jon Maloy) [1693452] - [net] tipc: fix uninitialized value for broadcast retransmission (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc bearer (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc node (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc socket (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc link (Jon Maloy) [1693452] - [net] tipc: enable tracepoints in tipc (Jon Maloy) [1693452] - [net] tipc: handle broadcast NAME_DISTRIBUTOR packet when receiving it (Jon Maloy) [1693452] - [net] tipc: check group dests after tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: check tsk->group in tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: compare remote and local protocols in tipc_udp_enable() (Jon Maloy) [1693452] - [net] tipc: use lock_sock() in tipc_sk_reinit() (Jon Maloy) [1693452] - [net] tipc: fix node keep alive interval calculation (Jon Maloy) [1693452] - [net] tipc: fix lockdep warning during node delete (Jon Maloy) [1693452] - [net] tipc: don't assume linear buffer when reading ancillary data (Jon Maloy) [1693452] - [net] tipc: fix lockdep warning when reinitilaizing sockets (Jon Maloy) [1693452] - [net] tipc: fix link re-establish failure (Jon Maloy) [1693452] - [net] tipc: improve broadcast retransmission algorithm (Jon Maloy) [1693452] - [net] tipc: use destination length for copy string (Jon Maloy) [1693452] - [net] tipc: support binding to specific ip address when activating UDP bearer (Jon Maloy) [1677371 1693452] - [net] tipc: remainder of commit ignore STATE_MSG on wrong link session (Jon Maloy) [1693452] - [net] tipc: buffer overflow handling in listener socket (Jon Maloy) [1693452] - [net] tipc: add SYN bit to connection setup messages (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_sk_filter_connect() (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_sk_timeout() (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_msg_reverse() (Jon Maloy) [1693452] - [net] tipc: Add and use skb_mark_not_on_list(). (Jon Maloy) [1693452] - [net] tipc: correct spelling errors for tipc_topsrv_queue_evt() comments (Jon Maloy) [1693452] - [net] tipc: correct spelling errors for struct tipc_bc_base's comment (Jon Maloy) [1693452] - [net] tipc: correct structure parameter comments for topsrv (Jon Maloy) [1693452] - [net] net/tipc: remove redundant variables 'tn' and 'oport' (Jon Maloy) [1693452] - [net] net: tipc: bcast: Replace GFP_ATOMIC with GFP_KERNEL in tipc_bcast_init() (Jon Maloy) [1693452] - [net] net: tipc: name_table: Replace GFP_ATOMIC with GFP_KERNEL in tipc_nametbl_init() (Jon Maloy) [1693452] - [net] tipc: make some functions static (Jon Maloy) [1693452] - [net] tipc: make link capability update thread safe (Jon Maloy) [1693452] - [net] tipc: remove unused tipc_group_size (Jon Maloy) [1693452] - [net] tipc: remove unused tipc_link_is_active (Jon Maloy) [1693452] - [net] tipc: check session number before accepting link protocol messages (Jon Maloy) [1693452] - [net] tipc: add sequence number check for link STATE messages (Jon Maloy) [1693452] - [net] tipc: mark expected switch fall-throughs (Jon Maloy) [1693452] - [net] tipc: extend sock diag for group communication (Jon Maloy) [1693452] - [net] tipc: Auto removal of peer down node instance (Jon Maloy) [1693452] - [net] tipc: optimize function tipc_node_timeout() (Jon Maloy) [1693452] - [net] tipc: eliminate buffer cloning in function tipc_msg_extract() (Jon Maloy) [1693452] - [net] netfilter: nf_conncount: fix argument order to find_next_bit (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: speculative garbage collection on empty lists (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: move all list iterations under spinlock (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: merge lookup and add functions (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: restart search when nodes have been erased (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: split gc in two phases (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: don't skip eviction when age is negative (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: replace CONNCOUNT_LOCK_SLOTS with CONNCOUNT_SLOTS (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: use rb_link_node_rcu() instead of rb_link_node() (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: remove wrong condition check routine (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: fix unexpected permanent node of list. (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: fix list_del corruption in conn_free (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: use spin_lock_bh instead of spin_lock (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Add list lock and gc worker, and RCU for init tree search (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Split insert and traversal (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Move locking into count_tree() (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Early exit in nf_conncount_lookup() and cleanup (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Switch to plain list (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Early exit for garbage collection (Florian Westphal) [1531074] - [net] ptp: uapi: change _IOW to IOWR in PTP_SYS_OFFSET_EXTENDED definition (Hangbin Liu) [1677215] - [net] ptp: check that rsv field is zero in struct ptp_sys_offset_extended (Hangbin Liu) [1677215] - [net] ptp: deprecate gettime64() in favor of gettimex64() (Hangbin Liu) [1677215] - [net] ptp: add PTP_SYS_OFFSET_EXTENDED ioctl (Hangbin Liu) [1677215] - [net] ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl (Hangbin Liu) [1677215] - [net] ptp: reorder declarations in ptp_ioctl() (Hangbin Liu) [1677215] - [net] tuntap: fix multiqueue rx (Guillaume Nault) [1686563]- [edac] EDAC/amd64: Add Family 17h Model 30h PCI IDs (Aristeu Rozanski) [1696603] - [x86] Update stepping values for coffee lake desktop (David Arcari) [1704800] - [security] KEYS: trusted: allow trusted.ko to initialize w/o a TPM (Jerry Snitselaar) [1694208] - [security] tpm: pass an array of tpm_extend_digest structures to tpm_pcr_extend() (Jerry Snitselaar) [1665130 1665129] - [security] KEYS: trusted: explicitly use tpm_chip structure from tpm_default_chip() (Jerry Snitselaar) [1665130 1665129] - [char] tpm/ppi: Enable submission of optional command parameter for PPI 1.3 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: Possibly show command parameter if TPM PPI 1.3 is used (Jerry Snitselaar) [1665130] - [char] tpm/ppi: Display up to 101 operations as define for version 1.3 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: rename TPM_PPI_REVISION_ID to TPM_PPI_REVISION_ID_1 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: pass function revision ID to tpm_eval_dsm() (Jerry Snitselaar) [1665130] - [char] tpm: Fix the type of the return value in calc_tpm2_event_size() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: fix an invalid condition in tpm_common_poll (Jerry Snitselaar) [1694208] - [char] tpm: turn on TPM on suspend for TPM 1.x (Jerry Snitselaar) [1694208 1665130] - [char] tpm: move tpm_chip definition to include/linux/tpm.h (Jerry Snitselaar) [1665129] - [char] tpm: retrieve digest size of unknown algorithms with PCR read (Jerry Snitselaar) [1665130 1665129] - [char] tpm: rename and export tpm2_digest and tpm2_algorithms (Jerry Snitselaar) [1665130 1665129] - [char] tpm: dynamically allocate the allocated_banks array (Jerry Snitselaar) [1665130 1665129] - [char] tpm: remove @flags from tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: take TPM chip power gating out of tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: introduce tpm_chip_start() and tpm_chip_stop() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: remove TPM_TRANSMIT_UNLOCKED flag (Jerry Snitselaar) [1665130 1665129] - [char] tpm: use tpm_try_get_ops() in tpm-sysfs.c. (Jerry Snitselaar) [1665130] - [char] tpm: remove @space from tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: move TPM space code out of tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: move tpm_validate_commmand() to tpm2-space.c (Jerry Snitselaar) [1665130 1665129] - [char] tpm: clean up tpm_try_transmit() error handling flow (Jerry Snitselaar) [1665130 1665129] - [char] tpm: encapsulate tpm_dev_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: access command header through struct in tpm_try_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: declare struct tpm_header (Jerry Snitselaar) [1665130 1665129] - [char] tpm: print tpm2_commit_space() error inside tpm2_commit_space() (Jerry Snitselaar) [1665129] - [char] tpm: return 0 from pcrs_show() when tpm1_pcr_read() fails (Jerry Snitselaar) [1665130] - [char] tpm: fix invalid return value in pubek_show() (Jerry Snitselaar) [1694208 1665130] - [char] tpm: use tpm_buf in tpm_transmit_cmd() as the IO parameter (Jerry Snitselaar) [1665130 1665129] - [char] tpm: don't return bool from update_timeouts (Jerry Snitselaar) [1665130] - [char] tpm: don't print error message in tpm_transmit_cmd when tpm still testing (Jerry Snitselaar) [1665129] - [char] tpm: add _head suffix to tcg_efi_specid_event and tcg_pcr_event2 (Jerry Snitselaar) [1665129] - [char] tpm: Fix off-by-one when reading binary_bios_measurements (Jerry Snitselaar) [1694208 1665130] - [char] tpm: Simplify the measurements loop (Jerry Snitselaar) [1665130] - [char] tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete (Jerry Snitselaar) [1694208] - [char] tpm: Unify the send callback behaviour (Jerry Snitselaar) [1665129] - [char] tpm: Fix some name collisions with drivers/char/tpm.h (Jerry Snitselaar) [1694208] - [char] tpm/tpm_crb: Avoid unaligned reads in crb_recv() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: add support for partial reads (Jerry Snitselaar) [1665129] - [char] tpm: tpm_ibmvtpm: fix kdoc warnings (Jerry Snitselaar) [1665129] - [char] tpm: fix kdoc for tpm2_flush_context_cmd() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: tpm_try_transmit() refactor error flow. (Jerry Snitselaar) [1694208 1665129] - [char] tpm: use u32 instead of int for PCR index (Jerry Snitselaar) [1665130 1665129] - [security] ima: Get rid of ima_used_chip and use ima_tpm_chip != NULL instead (Jerry Snitselaar) [1665130 1665129] - [security] ima: Use tpm_default_chip() and call TPM functions with a tpm_chip (Jerry Snitselaar) [1665129] - [char] tpm1: reimplement tpm1_continue_selftest() using tpm_buf (Jerry Snitselaar) [1665130] - [char] tpm1: reimplement SAVESTATE using tpm_buf (Jerry Snitselaar) [1665130] - [char] tpm1: rename tpm1_pcr_read_dev to tpm1_pcr_read() (Jerry Snitselaar) [1665130] - [char] tpm1: implement tpm1_pcr_read_dev() using tpm_buf structure (Jerry Snitselaar) [1665130] - [char] tpm: tpm1: rewrite tpm1_get_random() using tpm_buf structure (Jerry Snitselaar) [1665130] - [char] tpm: tpm-space.c remove unneeded semicolon (Jerry Snitselaar) [1665129] - [char] tpm: tpm-interface.c drop unused macros (Jerry Snitselaar) [1694208 1665130] - [char] tpm: add tpm_auto_startup() into tpm-interface.c (Jerry Snitselaar) [1665129] - [char] tpm: factor out tpm_startup function (Jerry Snitselaar) [1665130 1665129] - [char] tpm: factor out tpm 1.x pm suspend flow into tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm 1.x selftest code from tpm-interface.c tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: factor out tpm1_get_random into tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm_getcap to tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm1_pcr_extend to tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: factor out tpm_get_timeouts() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: add tpm_calc_ordinal_duration() wrapper (Jerry Snitselaar) [1665130 1665129] - [char] tpm: factor out tpm 1.x duration calculation to tpm1-cmd.c (Jerry Snitselaar) [1665130 1665129] - [char] tpm: sort objects in the Makefile (Jerry Snitselaar) [1665129] - [char] tpm2: add new tpm2 commands according to TCG 1.36 (Jerry Snitselaar) [1665129] - [char] tpm: tpm_i2c_nuvoton: use correct command duration for TPM 2.x (Jerry Snitselaar) [1665129] - [char] tpm: add support for nonblocking operation (Jerry Snitselaar) [1665129] - [char] tpm: add ptr to the tpm_space struct to file_priv (Jerry Snitselaar) [1665129] - [char] tpm: Make SECURITYFS a weak dependency (Jerry Snitselaar) [1665129] - [char] tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/deactivated (Jerry Snitselaar) [1665130] - [char] tpm: fix response size validation in tpm_get_random() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: replace TPM_TRANSMIT_RAW with TPM_TRANSMIT_NESTED (Jerry Snitselaar) [1665129] - [char] tpm: Convert tpm_find_get_ops() to use tpm_default_chip() (Jerry Snitselaar) [1665129] - [char] tpm: Implement tpm_default_chip() to find a TPM chip (Jerry Snitselaar) [1665129] - [char] tpm: rename tpm_chip_find_get() to tpm_find_get_ops() (Jerry Snitselaar) [1665129] - [char] tpm: Allow tpm_tis drivers to set hwrng quality. (Jerry Snitselaar) [1665129] - [char] tpm: Return the actual size when receiving an unsupported command (Jerry Snitselaar) [1694208 1665129] - [char] tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (Jerry Snitselaar) [1665129] - [char] tpm_tis_spi: Pass the SPI IRQ down to the driver (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_get_random() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_get_tpm_pt() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_probe() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_shutdown() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [pci] PCI: Fix __initdata issue with "pci=disable_acs_redir" parameter (Myron Stowe) [1704979] - [s390] s390/pci: skip VF scanning (Myron Stowe) [1704979] - [pci] PCI/IOV: Add flag so platforms can skip VF scanning (Myron Stowe) [1704979] - [pci] PCI/IOV: Factor out sriov_add_vfs() (Myron Stowe) [1704979] - [pci] switchtec: Add MRPC DMA mode support (Myron Stowe) [1704979] - [pci] switchtec: Improve MRPC efficiency by enabling write combining (Myron Stowe) [1704979] - [pci] switchtec: Fix SWITCHTEC_IOCTL_EVENT_IDX_ALL flags overwrite (Myron Stowe) [1704979] - [pci] switchtec: Set DMA coherent mask (Myron Stowe) [1704979] - [pci] switchtec: Remove immediate status check after submitting MRPC command (Myron Stowe) [1704979] - [pci] PCI / PM: Allow runtime PM without callback functions (Myron Stowe) [1704979] - [pci] PCI/P2PDMA: Clean up documentation and kernel-doc (Myron Stowe) [1704979] - [pci] PCI: Remove unnecessary space before function pointer arguments (Myron Stowe) [1704979] - [maintainers] MAINTAINERS: Add x86 early-quirks.c file pattern to PCI subsystem (Myron Stowe) [1704979] - [pci] PCI: Expand the "PF" acronym in Kconfig help text (Myron Stowe) [1704979] - [x86] x86/PCI: Fix Broadcom CNB20LE unintended sign extension (redux) (Myron Stowe) [1704979] - [pci] PCI/ASPM: Remove unused lists from struct pcie_link_state (Myron Stowe) [1704979] - [pci] PCI / ACPI: Identify untrusted PCI devices (Myron Stowe) [1704979]- [documentation] x86/resctrl: Update Documentation/x86/resctrl_ui.txt (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Remove unnecessary check for cbm_validate() (Prarit Bhargava) [1504489] - [maintainers] MAINTAINERS: Update resctrl filename patterns (Prarit Bhargava) [1504489] - [documentation] Documentation: Rename and update intel_rdt_ui.txt to resctrl_ui.txt (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Introduce AMD QOS feature (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Fixup the user-visible strings (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Add AMD's X86_FEATURE_MBA to the scattered CPUID features (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename the config option INTEL_RDT to RESCTRL (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Add vendor check for the MBA software controller (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Bring cbm_validate() into the resource structure (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Initialize the vendor-specific resource functions (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Move all the macros to resctrl/internal.h (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Re-arrange the RDT init code (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename the RDT functions and definitions (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename and move rdt files to a separate directory (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Prevent pseudo-locking from using stale pointers (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix initial allocation to consider CDP (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: CBM overlap should also check for overlap with CDP peer (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce utility to obtain CDP peer (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix out-of-bounds memory access in CBM tests (Prarit Bhargava) [1504489] - [x86] perf/x86: Add helper to obtain performance counter index (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Switch to bitmap_zalloc() (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Re-enable pseudo-lock measurements (Prarit Bhargava) [1504489] - [x86] x86/cpu: Sanitize FAM6_ATOM naming (David Arcari) [1504489] - [x86] x86/intel_rdt: Use perf infrastructure for measurements (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create required perf event attributes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Remove local register variables (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix incorrect loop end condition (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix exclusive mode handling of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix incorrect loop end condition (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Do not allow pseudo-locking of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix unchecked MSR access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix invalid mode warning when multiple resources are managed (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Global closid helper to support future fixes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix size reporting of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix data type in parsing callbacks (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Disable PMU access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix possible circular lock dependency (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Make CPU information accessible for pseudo-locked regions (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support restoration of subset of permissions (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix cleanup of plr structure on error (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Move pseudo_lock_region_clear() (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Limit C-states dynamically when pseudo-locking active (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support L3 cache performance event of Broadwell (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: More precise L2 hit/miss measurements (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create character device exposing pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create debugfs files for pseudo-locking testing (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create resctrl debug area (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Ensure RDT cleanup on exit (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Resctrl files reflect pseudo-locked information (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support creation/removal of pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Pseudo-lock region creation/removal core (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Discover supported platforms via prefetch disable bits (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utilities to test pseudo-locked region possibility (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Split resource group removal in two (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Enable entering of pseudo-locksetup mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support enter/exit of locksetup mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add check to determine if monitoring in progress (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Utilities to restrict/restore access to specific files (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Protect against resource group changes during locking (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utility to restrict/restore access to resctrl files (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utility to test if tasks assigned to resource group (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Respect read and write access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce the Cache Pseudo-Locking modes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Display resource groups' allocations' size in bytes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce "bit_usage" to display cache allocations details (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Ensure requested schemata respects mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support flexible data to parsing callbacks (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Making CBM name and type more explicit (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Enable setting of exclusive mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce new "exclusive" mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Initialize new resource group with sane defaults (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Make useful functions available internally (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce test to determine if closid is in use (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce resource group's mode resctrl file (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Associate mode with each RDT resource group (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce RDT resource group mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Provide pseudo-locking hooks within rdt_mount (Prarit Bhargava) [1504489] - [x86] perf/x86: Make perf callchains work without CONFIG_FRAME_POINTER (Jiri Olsa) [1699780]- [kernel] sched/fair: Do not re-read ->h_load_next during hierarchical load calculation (Phil Auld) [1701762] - [s390] kvm: s390: enable MSA9 keywrapping functions depending on cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: add deflate conversion facilty to cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: add enhanced sort facilty to cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: provide query function for instructions returning 32 byte (Thomas Huth) [1660913] - [s390] kvm: s390: add MSA9 to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add vector BCD enhancements facility to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add vector enhancements facility 2 to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add debug logging for cpu model subfunctions (Thomas Huth) [1660913] - [s390] kvm: s390: implement subfunction processor calls (Thomas Huth) [1660913] - [powercap] powercap: intel_rapl: add support for Jacobsville (Steve Best) [1482401] - [x86] x86/cpu: Add Atom Tremont (Jacobsville) (Steve Best) [1482401]- [crypto] crypto: qat - Remove unused goto label (Neil Horman) [1660313] - [crypto] crypto: prefix header search paths with $(srctree)/ (Neil Horman) [1660313] - [crypto] crypto: qat - no need to check return value of debugfs_create functions (Neil Horman) [1660313] - [crypto] cross-tree: phase out dma_zalloc_coherent() (Neil Horman) [1660313] - [crypto] crypto: qat - move temp buffers off the stack (Neil Horman) [1660313] - [crypto] crypto: qat - Remove VLA usage (Neil Horman) [1660313] - [include] block: kill all_q_node in request_queue (Ming Lei) [1702865] - [block] bfq: update internal depth state when queue depth changes (Ming Lei) [1702865] - [fs] block: fix the return errno for direct IO (Ming Lei) [1702865] - [block] block: do not leak memory in bio_copy_user_iov() (Ming Lei) [1702865] - [nvme] nvme: cancel request synchronously (Ming Lei) [1702865] - [block] blk-mq: introduce blk_mq_complete_request_sync() (Ming Lei) [1702865] - [scsi] scsi: virtio_scsi: limit number of hw queues by nr_cpu_ids (Ming Lei) [1702865] - [block] virtio-blk: limit number of hw queues by nr_cpu_ids (Ming Lei) [1702865] - [block] block, bfq: fix use after free in bfq_bfqq_expire (Ming Lei) [1702865] - [block] paride/pcd: Fix potential NULL pointer dereference and mem leak (Ming Lei) [1702865] - [block] blk-mq: do not reset plug->rq_count before the list is sorted (Ming Lei) [1702865] - [block] paride/pf: Fix potential NULL pointer dereference (Ming Lei) [1702865] - [block] blk-mq: add trace block plug and unplug for multiple queues (Ming Lei) [1702865] - [block] block: use blk_free_flush_queue() to free hctx->fq in blk_mq_init_hctx (Ming Lei) [1702865] - [block] paride/pcd: cleanup queues when detection fails (Ming Lei) [1702865] - [block] paride/pf: cleanup queues when detection fails (Ming Lei) [1702865] - [crypto] crypto: chelsio - Fixed Traffic Stall (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Fix passing zero to 'PTR_ERR' warning in chcr_aead_op (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Inline single pdu only (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - avoid using sa_entry imm (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - remove set but not used variables 'adap' (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - check set_msg_len overflow in generate_b0 (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Fix wrong error counter increments (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Reset counters on cxgb4 Detach (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Handle PCI shutdown event (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - cleanup:send addr as value in function argument (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Use same value for both channel in single WR (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Swap location of AAD and IV sent in WR (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - remove set but not used variable 'kctx_len' (Arjun Vynipadath) [1664679] - [crypto] drivers: chelsio: use skb_sec_path helper (Arjun Vynipadath) [1664679] - [crypto] crypto: chcr - ESN for Inline IPSec Tx (Arjun Vynipadath) [1664679] - [crypto] crypto: chcr - small packet Tx stalls the queue (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - clean up various indentation issues (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Update ntx queue received from cxgb4 (Arjun Vynipadath) [1664679]- [platform] platform/x86: intel_pmc_core: Convert to INTEL_CPU_FAM6 macro (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Avoid a u32 overflow (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Include Reserved IP for LTR (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix file permissions for ltr_show (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix PCH IP name (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix PCH IP sts reading (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Handle CFL regmap properly (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: convert to DEFINE_SHOW_ATTRIBUTE (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Decode Snoop / Non Snoop LTR (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix LTR IGNORE Max offset (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Show Latency Tolerance info (David Arcari) [1658080] - [platform] platform/x86: intel_pmc: Convert to use SPDX identifier (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Add CNP SLPS0 debug registers (David Arcari) [1658080] - [x86] x86/cpu: Introduce INTEL_CPU_FAM*() helper macros (David Arcari) [1658080] - [include] locking/atomics, asm-generic: Move some macros from to a new file (David Arcari) [1658080] - [s390] s390/kasan: fix strncpy_from_user kasan checks (Philipp Rudo) [1665182] - [s390] s390: correct some inline assembly constraints (Philipp Rudo) [1665182] - [s390] s390/kasan: improve string/memory functions checks (Philipp Rudo) [1665182] - [include] compiler: remove __no_sanitize_address_or_inline again (Philipp Rudo) [1665182] - [s390] s390/kasan: increase instrumented stack size to 64k (Philipp Rudo) [1665182] - [mm] s390/kasan: support preemptible kernel build (Philipp Rudo) [1665182] - [mm] s390/kasan: add support for mem= kernel parameter (Philipp Rudo) [1665182] - [mm] s390/kasan: optimize kasan vmemmap allocation (Philipp Rudo) [1665182] - [mm] s390/kasan: avoid kasan crash with standby memory defined (Philipp Rudo) [1665182] - [s390] s390/head: avoid doubling early boot stack size under KASAN (Philipp Rudo) [1665182] - [mm] s390/mm: improve debugfs ptdump markers walking (Philipp Rudo) [1665182] - [mm] s390/mm: optimize debugfs ptdump kasan zero page walking (Philipp Rudo) [1665182] - [s390] s390/kasan: add option for 4-level paging support (Philipp Rudo) [1665182] - [mm] s390/kasan: free early identity mapping structures (Philipp Rudo) [1665182] - [s390] s390/kasan: enable stack and global variables access checks (Philipp Rudo) [1665182] - [s390] s390/dumpstack: disable __dump_trace kasan instrumentation (Philipp Rudo) [1665182] - [s390] s390/kasan: reipl and kexec support (Philipp Rudo) [1665182] - [s390] s390/smp: kasan stack instrumentation support (Philipp Rudo) [1665182] - [include] compiler: introduce __no_sanitize_address_or_inline (Philipp Rudo) [1665182] - [s390] s390/kasan: use noexec and large pages (Philipp Rudo) [1665182] - [mm] s390/kasan: dynamic shadow mem allocation for modules (Philipp Rudo) [1665182] - [mm] s390/mm: add kasan shadow to the debugfs pgtable dump (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid user access code instrumentation (Philipp Rudo) [1665182] - [s390] s390/kasan: double the stack size (Philipp Rudo) [1665182] - [s390] s390/kasan: add initialization code and enable it (Philipp Rudo) [1665182] - [s390] s390: add pgd_page primitive (Philipp Rudo) [1665182] - [s390] s390: introduce MAX_PTRS_PER_P4D (Philipp Rudo) [1665182] - [s390] s390/kasan: replace some memory functions (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid instrumentation of early C code (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid vdso instrumentation (Philipp Rudo) [1665182] - [s390] s390/mm: add missing pfn_to_kaddr helper (Philipp Rudo) [1665182] - [s390] s390/cpum_cf: Add support for CPU-MF SVN 6 (Philipp Rudo) [1683278] - [s390] s390: report new CPU capabilities (Philipp Rudo) [1685086] - [net] net/smc: fix smc_poll in SMC_INIT state (Philipp Rudo) [1700812] - [net] net/smc: fix byte_order for rx_curs_confirmed (Philipp Rudo) [1700812] - [net] net/smc: check port_idx of ib event (Philipp Rudo) [1700799] - [net] net/smc: check connections in smc_lgr_free_work (Philipp Rudo) [1700799] - [net] net/smc: reduce amount of status updates to peer (Philipp Rudo) [1700799] - [net] net/smc: no delay for free tx buffer wait (Philipp Rudo) [1700799] - [net] net/smc: move wake up of close waiter (Philipp Rudo) [1700799] - [net] net/smc: reset cursor update required flag (Philipp Rudo) [1700799] - [net] net/smc: correct state change for peer closing (Philipp Rudo) [1700799] - [net] net/smc: delete rkey first before switching to unused (Philipp Rudo) [1700799] - [net] net/smc: fix sender_free computation (Philipp Rudo) [1700799] - [net] net/smc: preallocated memory for rdma work requests (Philipp Rudo) [1700799] - [net] net/smc: fix use of variable in cleared area (Philipp Rudo) [1700799] - [net] net/smc: use device link provided in qp_context (Philipp Rudo) [1700799] - [net] net/smc: call smc_cdc_msg_send() under send_lock (Philipp Rudo) [1700799] - [net] net/smc: do not wait under send_lock (Philipp Rudo) [1700799] - [net] net/smc: recvmsg and splice_read should return 0 after shutdown (Philipp Rudo) [1700799] - [net] net/smc: don't wait for send buffer space when data was already sent (Philipp Rudo) [1700799] - [net] net/smc: prevent races between smc_lgr_terminate() and smc_conn_free() (Philipp Rudo) [1700799] - [net] net/smc: allow 16 byte pnetids in netlink policy (Philipp Rudo) [1700799] - [net] net/smc: fix another sizeof to int comparison (Philipp Rudo) [1700799] - [net] net/smc: move code to clear the conn->lgr field (Philipp Rudo) [1700799] - [net] net/smc: use client and server LGR pending locks for SMC-R (Philipp Rudo) [1700799] - [net] net/smc: unlock LGR pending lock earlier for SMC-D (Philipp Rudo) [1700799] - [net] net/smc: use smc_curs_copy() for SMC-D (Philipp Rudo) [1700799] - [net] net/smc: postpone release of clcsock (Philipp Rudo) [1700799] - [net] smc: move unhash as early as possible in smc_release() (Philipp Rudo) [1700799] - [net] net/smc: fix TCP fallback socket release (Philipp Rudo) [1700799] - [s390] s390/ism: ignore some errors during deregistration (Philipp Rudo) [1700799] - [infiniband] mlx4: trigger IB events needed by SMC (Philipp Rudo) [1700799] - [s390] s390/smp: fix CPU hotplug deadlock with CPU rescan (Philipp Rudo) [1700836] - [block] s390/dasd: fix panic for failed online processing (Philipp Rudo) [1700811] - [netdrv] s390/qeth: fix use-after-free in error path (Philipp Rudo) [1700803] - [netdrv] s390/qeth: cancel close_dev work before removing a card (Philipp Rudo) [1700802] - [netdrv] s390/qeth: conclude all event processing before offlining a card (Philipp Rudo) [1700800] - [scsi] scsi: zfcp: fix posting too many status read buffers leading to adapter shutdown (Philipp Rudo) [1700775] - [fs] xfs: prohibit fstrim in norecovery mode (Bill O'Donnell) [1697749] - [x86] perf/x86: Fixup typo in stub functions (Waiman Long) [1688789] - [x86] perf/x86/intel: Fix memory corruption (Waiman Long) [1688789] - [x86] perf/x86/intel: Implement support for TSX Force Abort (Waiman Long) [1688789] - [x86] x86: Add TSX Force Abort CPUID/MSR (Waiman Long) [1688789] - [x86] perf/x86/intel: Generalize dynamic constraint creation (Waiman Long) [1688789] - [x86] perf/x86/intel: Make cpuc allocations consistent (Waiman Long) [1688789] - [x86] perf/x86/intel: Delay memory deallocation until x86_pmu_dead_cpu() (Waiman Long) [1688789] - [x86] perf/x86/intel: Export mem events only if there's PEBS support (Waiman Long) [1688789] - [x86] perf/x86/intel: Add a separate Arch Perfmon v4 PMI handler (Waiman Long) [1688789] - [x86] perf/x86/intel: Factor out common code of PMI handler (Waiman Long) [1688789] - [x86] perf/x86/intel: Introduce PMU flag for Extended PEBS (Waiman Long) [1688789] - [x86] x86/speculation: Add PR_SPEC_DISABLE_NOEXEC (Waiman Long) [1671512]- [kernel] exit from RHEL 8.1 early ystream mode ("Herton R. Krzesinski") - [net] Bluetooth: Verify that l2cap_get_conf_opt provides large enough buffer (Gopal Tiwari) [1700507] {CVE-2019-3459} - [target] scsi: target: iscsi: cxgbit: fix csk leak (Arjun Vynipadath) [1664683] - [target] scsi: target: iscsi: cxgbit: add missing spin_lock_init() (Arjun Vynipadath) [1664683] - [scsi] scsi: cxgb4i: fix incorrect spelling "reveive" -> "receive" (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: update route finding logic (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: find cxgbi device by MAC address (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgbi: remove redundant __kfree_skb call on skb and free cst->atid (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: remove uninitialized variable len (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: validate tcp sequence number only if chip version <= T5 (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: get pf number from lldi->pf (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: add wait_for_completion() (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: fix thermal configuration dependencies (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: add DCB support for iSCSI connections (Arjun Vynipadath) [1664685] - [netdrv] cxgb4: Don't return EAGAIN when TCAM is full. (Arjun Vynipadath) [1664670] - [netdrv] chelsio: use BUG() instead of BUG_ON(1) (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/chtls: Prefix adapter flags with CXGB4 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Call netif_carrier_off properly in pci_probe (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: Revert force link up behaviour (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: Add VF Link state support (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Prefix adapter flags with CXGB4VF (Arjun Vynipadath) [1664682] - [netdrv] cxgb4vf: Enter debugging mode if FW is inaccessible (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: Enable outer UDP checksum offload for T6 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Fix up netdev->hw_features (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: Mask out interrupts that are not enabled. (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Export sge_host_page_size to ulds (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add capability to get/set SGE Doorbell Queue Timer Tick (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Add support for SGE doorbell queue timer (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: Few more link management changes. (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: add tcb flags and tcb rpl struct (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T6 PCI device ids 0x608b (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Program hash region for {t4/t4vf}_change_mac() (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: smt: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: sched: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: cxgb4_tc_u32: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Update port information in cxgb4vf_open() (Arjun Vynipadath) [1664682] - [netdrv] cxgb4/cxgb4vf: Link management changes (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: TLS record offload enable (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: clip_tbl: Use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] net: cxgb4: fix various indentation issues (Arjun Vynipadath) [1664670] - [netdrv] net: chelsio: Add a missing check on cudg_get_buffer (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove DEFINE_SIMPLE_DEBUGFS_FILE() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: number of VFs supported is not always 16 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove set but not used variables 'multitrc, speed' (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: use new fw interface to get the VIN and smt index (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Fix mac_hlist initialization and free (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: fix memleak in mac_hlist initialization (Arjun Vynipadath) [1664682] - [netdrv] cxgb4vf: free mac_hlist properly (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: free mac_hlist properly (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix thermal zone build error (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix thermal configuration dependencies (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add thermal zone support (Arjun Vynipadath) [1664670] - [infiniband] cxgb4: use __vlan_hwaccel helpers (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T6 PCI device ids 0x608a (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix the error path of cxgb4_uld_register() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: use FW_PORT_ACTION_L1_CFG32 for 32 bit capability (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove the unneeded locks (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Use proper enum in IEEE_FAUX_SYNC (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Use proper enum in cxgb4_dcb_handle_fw_update (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove duplicated include from cxgb4_main.c (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: add per rx-queue counter for packet errors (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Fix endianness issue in t4_fwcache() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix abort_req_rss6 struct (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove redundant assignment to vlan_cmd.dropnovlan_fm (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect hardware queue descriptors (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T5 PCI device ids 0x50af and 0x50b0 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove set but not used variable 'spd' (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: add support to display DCB info (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/t4_hw: mark expected switch fall-throughs (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/l2t: Mark expected switch fall-through (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix endian to test F_FW_PORT_CMD_DCBXDIS32 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: print ULD queue information managed by LLD (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: move Tx/Rx free pages collection to common code (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add support to read actual provisioned resources (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T5 PCI device id 0x50ae (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect number of free PSTRUCT page pointers (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: display number of rx and tx pages free (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect ASIC LA dumps from ULP TX (Arjun Vynipadath) [1664670] - [netdrv] libcxgb: replace vmalloc and memset with vzalloc (Arjun Vynipadath) [1664670] - [netdrv] enic: fix checksum validation for IPv6 (Jonathan Toppins) [1685309] - [infiniband] RDMA/vmw_pvrdma: Return the correct opcode when creating WR (Jonathan Toppins) [1688010 1685309] - [infiniband] RDMA/vmw_pvrdma: Use atomic memory allocation in create AH (Jonathan Toppins) [1685309] - [infiniband] IB/usnic: fix spelling mistake "miniumum" -> "minimum" (Jonathan Toppins) [1685309] - [infiniband] RDMA/drivers: Fix spelling mistake "initalize" -> "initialize" (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Reuse code which sets port state (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Make counters thread safe (Jonathan Toppins) [1685309] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Jonathan Toppins) [1685309] - [infiniband] IB/{mlx5, ocrdma, qedr, rxe}: Omit port validation from IB verbs (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Fix incorrect cache cleanup in error flow (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Utilize generic function to validate port number (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Make function rxe_pool_cleanup return void (Jonathan Toppins) [1685309] - [infiniband] rxe: IB_WR_REG_MR does not capture MR's iova field (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: make rxe_unregister_device void (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: move the variable into the function that uses it (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Add link_down, rdma_sends, rdma_recvs stats counters (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Distinguish between down links and disabled links (Jonathan Toppins) [1685309] - [infiniband] rxe: fix error completion wr_id and qp_num (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: clean skb queue directly (Jonathan Toppins) [1685309] - [net] xprtrdma: Make sure Send CQ is allocated on an existing compvec (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Rework SCSI device reset handling (Jonathan Toppins) [1685309] - [infiniband] IB/ipoib: Fix for use-after-free in ipoib_cm_tx_start (Jonathan Toppins) [1685309] - [net] xprtrdma: Double free in rpcrdma_sendctxs_create() (Jonathan Toppins) [1685309] - [net] xprtrdma: Fix error code in rpcrdma_buffer_create() (Jonathan Toppins) [1685309] - [infiniband] IB/ipoib: drop useless LIST_HEAD (Jonathan Toppins) [1685309] - [net] xprtrdma: Prevent leak of rpcrdma_rep objects (Jonathan Toppins) [1685309] - [net] xprtrdma: Don't leak freed MRs (Jonathan Toppins) [1685309] - [net] xprtrdma: Add documenting comment for rpcrdma_buffer_destroy (Jonathan Toppins) [1685309] - [net] xprtrdma: Replace outdated comment for rpcrdma_ep_post (Jonathan Toppins) [1685309] - [net] xprtrdma: Update comments in frwr_op_send (Jonathan Toppins) [1685309] - [net] xprtrdma: Trace mapping, alloc, and dereg failures (Jonathan Toppins) [1685309] - [net] xprtrdma: Add trace points for calls to transport switch methods (Jonathan Toppins) [1685309] - [net] xprtrdma: Relocate the xprtrdma_mr_map trace points (Jonathan Toppins) [1685309] - [net] xprtrdma: Clean up of xprtrdma chunk trace points (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove unused fields from rpcrdma_ia (Jonathan Toppins) [1685309] - [net] xprtrdma: Cull dprintk() call sites (Jonathan Toppins) [1685309] - [net] xprtrdma: Simplify locking that protects the rl_allreqs list (Jonathan Toppins) [1685309] - [net] xprtrdma: Expose transport header errors (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove request_module from backchannel (Jonathan Toppins) [1685309] - [net] xprtrdma: Plant XID in on-the-wire RDMA offset (FRWR) (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove rpcrdma_memreg_ops (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove support for FMR memory registration (Jonathan Toppins) [1685309] - [net] xprtrdma: Reduce max_frwr_depth (Jonathan Toppins) [1685309] - [net] xprtrdma: Fix ri_max_segs and the result of ro_maxpages (Jonathan Toppins) [1685309] - [net] xprtrdma: Don't wake pending tasks until disconnect is done (Jonathan Toppins) [1685309] - [net] xprtrdma: No qp_event disconnect (Jonathan Toppins) [1685309] - [net] xprtrdma: Replace rpcrdma_receive_wq with a per-xprt workqueue (Jonathan Toppins) [1685309] - [net] xprtrdma: Refactor Receive accounting (Jonathan Toppins) [1685309] - [net] xprtrdma: Ensure MRs are DMA-unmapped when posting LOCAL_INV fails (Jonathan Toppins) [1685309] - [net] xprtrdma: Yet another double DMA-unmap (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Use kmem_cache_free() instead of kfree() (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Rework the srpt_alloc_srq() error path (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Remove driver version and release date (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Make kernel-doc headers complete (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Join split strings (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Improve coding style conformance (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Fix a use-after-free in the channel release code (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Rework handling of the maximum information unit length (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Move srp_rdma_ch.max_ti_iu_len declaration (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Propagate ib_post_send() failures to the SCSI mid-layer (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Handle large SCSI CDBs correctly (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Document srp_parse_in() arguments (Jonathan Toppins) [1685309] - [infiniband] include/scsi/srp.h: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] include/scsi/srp.h: Move response flag definitions into this file (Jonathan Toppins) [1685309] - [net] svcrdma: Optimize the logic that selects the R_key to invalidate (Jonathan Toppins) [1685309] - [infiniband] IB/srpt: Drop pointless static qualifier in srpt_make_tpg() (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix OOPs in uverbs_user_mmap_disassociate (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix ioctl query port to consider device disassociation (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix OOPs upon device disassociation (Jonathan Toppins) [1685309] - [infiniband] RDMA/umem: Add missing initialization of owning_mm (Jonathan Toppins) [1685309] - [infiniband] RDMA/device: Expose ib_device_try_get(() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Mark ioctl responses with UVERBS_ATTR_F_VALID_OUTPUT (Jonathan Toppins) [1685309] - [infiniband] RDMA/cma: Add cm_id restrack resource based on kernel or user cm_id type (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Don't expose unsafe global rkey to regular user (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Fix post send success return value in case of error (Jonathan Toppins) [1685309] - [infiniband] IB/core: Add advise_mr to the list of known ops (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Signedness bug in UVERBS_HANDLER() (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Start using dev_groups of class (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Use class_groups and let core create class file (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Refactor code to use cdev_device_add() (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Avoid destroying device while it is accessed (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Simplify and avoid dynamic allocation of class (Jonathan Toppins) [1685309] - [infiniband] RDMA/iwcm: Don't copy past the end of dev_name() string (Jonathan Toppins) [1685309] - [infiniband] IB/core: Move query port to ioctl (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Expose port_cap_flags2 (Jonathan Toppins) [1685309] - [infiniband] IB/core: uverbs copy to struct or zero helper (Jonathan Toppins) [1685309] - [infiniband] RDMA: Mark if destroy address handle is in a sleepable context (Jonathan Toppins) [1685309] - [infiniband] RDMA: Mark if create address handle is in a sleepable context (Jonathan Toppins) [1685309] - [infiniband] RDMA/restrack: Resource-tracker should not use uobject pointers (Jonathan Toppins) [1685309] - [include] IB/uverbs: Add support to advise_mr (Jonathan Toppins) [1685309] - [include] IB/uverbs: Add helper to get array size from ptr attribute (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add an ioctl method to destroy an object (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add a method to introspect handles in a context (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Delete RoCE GID in hw when corresponding IP is deleted (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Implement an ioctl that can call write and write_ex handlers (Jonathan Toppins) [1685309] - [infiniband] RDMA: Start use ib_device_ops (Jonathan Toppins) [1685309] - [infiniband] RDMA/rdmavt: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/vmw_pvrdma: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/usnic: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/qib: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/qedr: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/ocrdma: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/nes: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mthca: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mlx5: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mlx4: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/i40iw: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/hns: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/hfi1: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/cxgb4: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/cxgb3: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/bnxt_re: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Introduce ib_device_ops (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Optimize clearing of extra bytes in response (Jonathan Toppins) [1685309] - [infiniband] IB/core: Add new IB rates (Jonathan Toppins) [1685309] - [include] IB/core: Add 2X port width (Jonathan Toppins) [1685309] - [include] IB/core: Add CapabilityMask2 to port attributes (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Validate port number in query_pkey verb (Jonathan Toppins) [1685309] - [include] RDMA/uverbs: Fix typo in string concatenation macro (Jonathan Toppins) [1685309] - [infiniband] IB/core: Enable getting an object type from a given uobject (Jonathan Toppins) [1685309] - [infiniband] IB/core: Introduce UVERBS_IDR_ANY_OBJECT (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Export to user space number of contexts (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Annotate alloc/deallloc paths with context tracking (Jonathan Toppins) [1685309] - [include] RDMA/restrack: Track ucontext (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use only attrs for the write() handler signature (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Do not check the input length on create_cq/qp paths (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use the iterator for ib_uverbs_unmarshall_recv() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add a simple iterator interface for reading the command (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Simplify ib_uverbs_ex_query_device (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Fill in the response for IB_USER_VERBS_EX_CMD_MODIFY_QP (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_request() and core for write_ex handlers (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_request() for request copying (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_response() for remaining response copying (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Get rid of the 'callback' scheme in the compat path (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass ucore for write/write_ex (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Remove out_len checks that are now done by the core (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: fix ptr_ret.cocci warnings (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for ioctl() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for write (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for write_ex (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Prohibit write() calls with too small buffers (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add structure size info to write commands (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Do not pass ib_uverbs_file to ioctl methods (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Make write() handlers return 0 on success (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Replace ib_uverbs_file with uverbs_attr_bundle for write (Jonathan Toppins) [1685309] - [include] RDMA/uverbs: Add missing driver_data (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Sync unregistration with netlink commands (Jonathan Toppins) [1685309] - [infiniband] RDMA/cma: Move cma module specific functions to cma_priv.h (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Check for NULL driver methods for every write call (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Make all the method functions in uverbs_cmd static (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Convert the write interface to use uverbs_api (Jonathan Toppins) [1685309] - [infiniband] RDMA/verbs: Store the write/write_ex uapi entry points in the uverbs_api (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Require all objects to have a driver destroy function (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add helpers to mark uapi functions as unsupported (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Factor out the add/get pattern into a helper (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use a linear list to describe the compiled-in uapi (Jonathan Toppins) [1685309] - [infiniband] IB/core: Make function ib_fmr_pool_unmap return void (Jonathan Toppins) [1685309] - [include] RDMA/core: Remove unused header files mm.h, socket.h, scatterlist.h (Jonathan Toppins) [1685309] - [include] IB/uverbs: fix a typo (Jonathan Toppins) [1685309] - [fs] coredump: fix race condition between mmget_not_zero()/get_task_mm() and core dumping (Andrea Arcangeli) [1696081] {CVE-2019-3892} - [scsi] scsi: csiostor: fix missing data copy in csio_scsi_err_handler() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: drop serial_number usage (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix calls to dma_set_mask_and_coherent() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: Remove set but not used variable 'pln' (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: no need to check return value of debugfs_create functions (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix NULL pointer dereference in csio_vport_set_state() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix incorrect dma device in case of vport (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: switch to generic DMA API (Arjun Vynipadath) [1664680] - [netdrv] thunderx: eliminate extra calls to put_page() for pages held for recycling (Dean Nelson) [1644011] - [netdrv] thunderx: enable page recycling for non-XDP case (Dean Nelson) [1644011] - [cpufreq] cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency (Prarit Bhargava) [1696131] - [acpi] ACPI / CPPC: Fix guaranteed performance handling (Prarit Bhargava) [1696131] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Corinna Vinschen) [1659169] - [netdrv] igbvf: Replace spin_is_locked() with lockdep (Corinna Vinschen) [1659169] - [netdrv] intel-ethernet: use correct module license (Corinna Vinschen) [1659169] - [netdrv] igbvf: netdev: Mark expected switch fall-through (Corinna Vinschen) [1659169] - [x86] x86/MCE: Initialize mce.bank in the case of a fatal error in mce_no_way_out() (David Arcari) [1698959] - [x86] x86/mce: Restore MCE injector's module name (David Arcari) [1698959] - [x86] x86/mce: Streamline MCE subsystem's naming (David Arcari) [1698959] - [x86] x86: Fix various typos in comments (David Arcari) [1698959] - [x86] x86/MCE/AMD: Fix the thresholding machinery initialization order (David Arcari) [1698959] - [x86] x86/mce: Fix -Wmissing-prototypes warnings (David Arcari) [1698959] - [x86] acpi/nfit, x86/mce: Validate a MCE's address before using it (David Arcari) [1698959] - [x86] acpi/nfit, x86/mce: Handle only uncorrectable machine checks (David Arcari) [1698959] - [x86] x86: Clean up 'sizeof x' => 'sizeof(x)' (David Arcari) [1698959] - [x86] x86/mcelog: Remove one mce_helper definition (David Arcari) [1698959] - [x86] x86/mce-inject: Reset injection struct after injection (David Arcari) [1698959] - [mm] x86/mce: Fix set_mce_nospec() to avoid #GP fault (David Arcari) [1698959] - [x86] x86/memory_failure: Introduce {set, clear}_mce_nospec() (David Arcari) [1698959] - [x86] x86/mce: Cleanup __mc_scan_banks() (David Arcari) [1698959] - [x86] x86/mce: Carve out bank scanning code (David Arcari) [1698959] - [x86] x86/mce: Carve out the crashing_cpu check (David Arcari) [1698959] - [x86] x86/mce: Always use 64-bit timestamps (David Arcari) [1698959] - [x86] x86/mce: Remove !banks check (David Arcari) [1698959] - [md] dm cache metadata: Fix loading discard bitset (Mike Snitzer) [1701618] - [block] null_blk: prevent crash from bad home_node value (Ming Lei) [1696951] - [powerpc] powerpc/security: Fix spectre_v2 reporting (Gustavo Duarte) [1694456] - [powerpc] powerpc/powernv: Query firmware for count cache flush settings (Gustavo Duarte) [1694456] - [powerpc] powerpc/pseries: Query hypervisor for count cache flush settings (Gustavo Duarte) [1694456] - [powerpc] powerpc/64s: Add support for software count cache flush (Gustavo Duarte) [1694456] - [powerpc] powerpc/64s: Add new security feature flags for count cache flush (Gustavo Duarte) [1694456] - [powerpc] powerpc/asm: Add a patch_site macro & helpers for patching instructions (Gustavo Duarte) [1694456] - [powerpc] powerpc/64: Call setup_barrier_nospec() from setup_arch() (Gustavo Duarte) [1694456] - [powerpc] powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC (Gustavo Duarte) [1694456] - [powerpc] powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 (Gustavo Duarte) [1694456]- [kernel] sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup (Joel Savitz) [1695651] - [crypto] crypto: ux500 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: talitos - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: sun4i-ss - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: stm32 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: rockchip - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: qce - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: picoxcell - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: omap - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: n2 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: marvell - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ixp4xx - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: hifn_795x - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ccree - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ccp - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: cavium - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: caam - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: bcm - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: atmel - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: sparc - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [s390] crypto: s390 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: des_generic - Forbid 2-key in 3DES and add helpers (Herbert Xu) [1687908] - [crypto] crypto: mxc-scc - Remove broken driver (Herbert Xu) [1687908] - [kernel] ntp: Audit NTP parameters adjustment (Ondrej Mosnacek) [1680034] - [kernel] timekeeping: Audit clock adjustments (Ondrej Mosnacek) [1680034] - [kernel] ntp: Remove duplicated include (Ondrej Mosnacek) [1680034] - [kernel] timekeeping/ntp: Constify some function arguments (Ondrej Mosnacek) [1680034] - [kernel] ntp: Use kstrtos64 for s64 variable (Ondrej Mosnacek) [1680034] - [kernel] ntp: Remove redundant arguments (Ondrej Mosnacek) [1680034] - [kernel] timekeeping: Use ktime_get_real_ts64() instead of getnstimeofday64() (Ondrej Mosnacek) [1680034] - [netdrv] hinic: Add pci device ids (Xiaojun Tan) [1662040] - [netdrv] net-next/hinic:add shutdown callback (Xiaojun Tan) [1662040] - [netdrv] hinic: optmize rx refill buffer mechanism (Xiaojun Tan) [1662040] - [netdrv] net: hinic: remove redundant pointer pfhwdev (Xiaojun Tan) [1662040] - [netdrv] net: hns: fix unsigned comparison to less than zero (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix sparse: some warnings in HNS drivers (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix WARNING when remove HNS driver with SMMU enabled (Xiaojun Tan) [1661885] - [netdrv] net: hns: fix ICMP6 neighbor solicitation messages discard problem (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix probabilistic memory overwrite when HNS driver initialized (Xiaojun Tan) [1661885] - [netdrv] net: hns: Use NAPI_POLL_WEIGHT for hns driver (Xiaojun Tan) [1661885] - [netdrv] net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw() (Xiaojun Tan) [1661885] - [netdrv] net: hns: use struct_size() in devm_kzalloc() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fixes the missing put_device in positive leg for roce reset (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix object reference leaks in hns_dsaf_roce_reset() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Restart autoneg need return failed when autoneg off (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix for missing of_node_put() after of_parse_phandle() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Use struct_size() in devm_kzalloc() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix use after free identified by SLUB debug (Xiaojun Tan) [1661885] - [netdrv] net: hns: make function hns_gmac_wait_fifo_clean() static (Xiaojun Tan) [1661885] - [netdrv] net: hns: use eth_get_headlen interface instead of hns_nic_get_headlen (Xiaojun Tan) [1661885] - [netdrv] net: hns: Mark expected switch fall-through (Xiaojun Tan) [1661885] - [netdrv] net: hns: remove redundant variables 'max_frm' and 'tmp_mac_key' (Xiaojun Tan) [1661885] - [netdrv] net: hisilicon: hns: Replace mdelay() with msleep() (Xiaojun Tan) [1661885] - [netdrv] net: hns: make hns_dsaf_roce_reset non static (Xiaojun Tan) [1661885] - [netdrv] net: hns: Make many functions static (Xiaojun Tan) [1661885] - [bluetooth] Bluetooth: btusb: Add support for Intel bluetooth device 8087:0029 (Gopal Tiwari) [1678084] - [bluetooth] Bluetooth: btusb: Use bt_dev_err for Intel firmware loading errors (Gopal Tiwari) [1678084]- [vfio] vfio/pci: Restore device state on PM transition (Alex Williamson) [1700254] - [vfio] vfio/pci: Parallelize device open and release (Alex Williamson) [1700254] - [pci] Revert "PCI/ASPM: Do not initialize link state when aspm_disabled is set" (Myron Stowe) [1694143] - [pci] PCI: Fix incorrect value returned from pcie_get_speed_cap() (Myron Stowe) [1694143] - [x86] x86/PCI: Apply VMD's AERSID fixup generically (Myron Stowe) [1694143] - [pci] PCI/IOV: Remove unnecessary include of (Myron Stowe) [1694143] - [pci] PCI: pcie: Remove redundant 'default n' from Kconfig (Myron Stowe) [1694143] - [documentation] NTB: switchtec_ntb: Update switchtec documentation with prerequisites for NTB (Myron Stowe) [1694143] - [pci] PCI: Fix Switchtec DMA aliasing quirk dmesg noise (Myron Stowe) [1694143] - [pci] PCI: Add macro for Switchtec quirk declarations (Myron Stowe) [1694143] - [pci] PCI: Add Device IDs for Intel GPU "spurious interrupt" quirk (Myron Stowe) [1694143] - [pci] PCI / ACPI: Mark expected switch fall-through (Myron Stowe) [1694143] - [pci] PCI: Remove set but unused variable (Myron Stowe) [1694143] - [pci] PCI: Fix pci.c kernel-doc parameter warning (Myron Stowe) [1694143] - [pci] PCI: Allocate dma_alias_mask with bitmap_zalloc() (Myron Stowe) [1694143] - [include] PCI: Remove unused NFP32xx IDs (Myron Stowe) [1694143] - [maintainers] maintainers: Add Hyper-V IOMMU driver into Hyper-V CORE AND DRIVERS scope (Vitaly Kuznetsov) [1663292 1669989] - [iommu] hyper-v: Add Hyper-V stub IOMMU driver (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyper-v: Set x2apic destination mode to physical when x2apic is available (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyper-v: Enable PIT shutdown quirk (Vitaly Kuznetsov) [1663292 1669989] - [clocksource] clockevents/drivers/i8253: Add support for PIT shutdown quirk (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Enable PV qspinlock for Hyper-V (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Add GUEST_IDLE_MSR support (Vitaly Kuznetsov) [1663292 1669989] - [x86] hv: vmbus: Make TLFS #define names architecture neutral (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Add interrupt handler annotations (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Refactor hv_irq_unmask() to use cpumask_to_vpset() (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Replace hv_vp_set with hv_vpset (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Add __aligned(8) to struct retarget_msi_interrupt (Vitaly Kuznetsov) [1663292 1669989] - [vfio] vfio-pci/nvlink2: Fix ancient gcc warnings (Sam Bobroff) [1524679] - [vfio] vfio/pci: Cleanup license mess (Sam Bobroff) [1524679] - [vfio] vfio/pci: set TRACE_INCLUDE_PATH to fix the build error (Sam Bobroff) [1524679] - [vfio] vfio_pci: Add NVIDIA GV100GL [Tesla V100 SXM2] subdriver (Sam Bobroff) [1524679] - [vfio] vfio_pci: Allow regions to add own capabilities (Sam Bobroff) [1524679] - [vfio] vfio_pci: Allow mapping extra regions (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Fault user page into the hypervisor's pagetable (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Check mmio_atsd array bounds when populating (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Add release_ownership hook (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Add compound IOMMU groups (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Convert NPU IOMMU helpers to iommu_table_group_ops (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Move single TVE handling to NPU PE (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv: Reference iommu_table while it is linked to a group (Sam Bobroff) [1524679] - [powerpc] powerpc/iommu_api: Move IOMMU groups setup to a single place (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/pseries: Rework device adding to IOMMU groups (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries: Remove IOMMU API support for non-LPAR systems (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries/npu: Enable platform support (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries/iommu: Use memory@ nodes in max RAM address calculation (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Move OPAL calls away from context manipulation (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv: Move npu struct from pnv_phb to pci_controller (Sam Bobroff) [1524679] - [powerpc] powerpc/vfio/iommu/kvm: Do not pin device memory (Sam Bobroff) [1524679] - [vfio] powerpc/mm/iommu/vfio_spapr_tce: Change mm_iommu_get to reference a region (Sam Bobroff) [1524679] - [powerpc] powerpc/ioda/npu: Call skiboot's hot reset hook when disabling NPU2 (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/ioda: Allocate indirect TCE levels of cached userspace addresses on demand (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/ioda1: Remove dead code for a single device PE (Sam Bobroff) [1524679] - [rpmspec] redhat: add TC selftests to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: add net selftests to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: add pktgen samples to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: rename bpf_samples to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: remove bpf_samples dependency on glibc-static and build it by default (Ivan Vecera) [1691376] - [tools] selftests: bpf: modify urandom_read and link it non-statically (Ivan Vecera) [1691376]- [netdrv] ibmvnic: Fix netdev feature clobbering during a reset (Steve Best) [1699018] - [netdrv] ibmvnic: Enable GRO (Steve Best) [1699018] - [x86] x86/perf/amd: Remove need to check "running" bit in NMI handler (David Arcari) [1640238] - [x86] x86/perf/amd: Resolve NMI latency issues for active PMCs (David Arcari) [1640238] - [x86] x86/perf/amd: Resolve race condition when disabling PMC (David Arcari) [1640238] - [netdrv] qed: Fix qed_mcp_halt|resume() (Manish Chopra) [1697310]- [x86] x86/kexec: Fix a kexec_file_load() failure (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: include linux/vmalloc.h (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: handle empty command-line (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: return successfully even if kaslr-seed doesn't exist (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: Refactor setup_dtb() to consolidate error checking (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: add kaslr support (Bhupesh Sharma) [1666078] - [char] random: Make crng state queryable (Bhupesh Sharma) [1666078] - [include] include: pe.h: remove message[] from mz header definition (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: invoke the kernel without purgatory (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: allow for loading Image-format kernel (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: load initrd and device-tree (Bhupesh Sharma) [1666078] - [arm64] arm64: enable KEXEC_FILE config (Bhupesh Sharma) [1666078] - [arm64] arm64: cpufeature: add MMFR0 helper functions (Bhupesh Sharma) [1666078] - [arm64] arm64: add image head flag definitions (Bhupesh Sharma) [1666078] - [kernel] kexec_file: kexec_walk_memblock() only walks a dedicated region at kdump (Bhupesh Sharma) [1666078] - [kernel] powerpc, kexec_file: factor out memblock-based arch_kexec_walk_mem() (Bhupesh Sharma) [1666078] - [kernel] s390, kexec_file: drop arch_kexec_mem_walk() (Bhupesh Sharma) [1666078] - [kernel] kexec_file: make kexec_image_post_load_cleanup_default() global (Bhupesh Sharma) [1666078] - [include] asm-generic: add kexec_file_load system call to unistd.h (Bhupesh Sharma) [1666078] - [include] asm-generic: unistd.h: Wire up sys_rseq (Bhupesh Sharma) [1666078] - [fs] xfs: don't overflow xattr listent buffer (Bill O'Donnell) [1683531] - [drm] drm/i915/gvt: Add in context mmio 0x20D8 to gen9 mmio list (Paul Lai) [1651589] - [fs] copy_mount_string: Limit string length to PATH_MAX (Miklos Szeredi) [1655272] - [include] redhat: Reuse other arch's cpuhp_state to protect kABI (Robert Richter) [1658476] - [drivers] drivers/perf: Add Cavium ThunderX2 SoC UNCORE PMU driver (Robert Richter) [1658476] - [documentation] Documentation: perf: Add documentation for ThunderX2 PMU uncore driver (Robert Richter) [1658476]- [arm64] arm64: apply workaround on A64FX v1r0 (Mark Langsdorf) [1692306] - [fs] kernfs: fix xattr name handling in LSM helpers (Ondrej Mosnacek) [1558179] - [include] LSM: lsm_hooks.h - fix missing colon in docstring (Ondrej Mosnacek) [1558179] - [security] selinux: Make selinux_kernfs_init_security static (Ondrej Mosnacek) [1558179] - [fs] kernfs: initialize security of newly created nodes (Ondrej Mosnacek) [1558179] - [security] selinux: implement the kernfs_init_security hook (Ondrej Mosnacek) [1558179] - [include] LSM: add new hook for kernfs node initialization (Ondrej Mosnacek) [1558179] - [fs] kernfs: use simple_xattrs for security attributes (Ondrej Mosnacek) [1558179] - [security] selinux: try security xattr after genfs for kernfs filesystems (Ondrej Mosnacek) [1558179] - [fs] kernfs: do not alloc iattrs in kernfs_xattr_get (Ondrej Mosnacek) [1558179] - [fs] kernfs: clean up struct kernfs_iattrs (Ondrej Mosnacek) [1558179] - [fs] kernfs: allow creating kernfs objects with arbitrary uid/gid (Ondrej Mosnacek) [1558179] - [tools] tools/power turbostat: Add Icelake support (Steve Best) [1698546] - [tools] tools/power turbostat: consolidate duplicate model numbers (Steve Best) [1698546] - [mm] s390/mm: silence compiler warning when compiling without CONFIG_PGSTE (Thomas Huth) [1698848] - [scripts] unifdef: use memcpy instead of strncpy (Thomas Huth) [1698848] - [s390] s390: align struct lowcore to double page size (Thomas Huth) [1698848] - [powerpc] KVM: PPC: Book3S HV: Perserve PSSCR FAKE_SUSPEND bit on guest exit (Suraj Jitindar Singh) [1689768]- [virtio] virtio: Honour 'may_reduce_num' in vring_create_virtqueue (Cornelia Huck) [1697505] - [s390] setup: set control program code via diag 318 (Thomas Huth) [1592336] - [s390] kvm: s390: set host program identifier (Thomas Huth) [1592336] - [edac] EDAC, skx: Fix randconfig builds in a better way (Aristeu Rozanski) [1501612 1649988 1571534] - [edac] EDAC, skx: Fix randconfig builds (Aristeu Rozanski) [1501612 1649988 1571534] - [edac] EDAC, skx_edac: Add address translation for non-volatile DIMMs (Aristeu Rozanski) [1501612 1649988 1571534] - [acpi] ACPI/ADXL: Add address translation interface using an ACPI DSM (Aristeu Rozanski) [1501612 1649988 1571534] - [x86] x86/mce: Add macros for the corrected error count bit field (Aristeu Rozanski) [1501612 1649988 1571534] - [x86] x86/mce: Use BIT_ULL(x) for bit mask definitions (Aristeu Rozanski) [1501612 1649988 1571534] - [crypto] crypto: ecc - regularize scalar for scalar multiplication (Neil Horman) [1687888] - [crypto] crypto: ecc - check for invalid values in the key verification test (Neil Horman) [1687888] - [crypto] crypto: dh - make crypto_dh_encode_key() make robust (Neil Horman) [1687888] - [crypto] crypto: dh - fix calculating encoded key size (Neil Horman) [1687888] - [crypto] crypto: ecdh - fix typo of P-192 b value (Neil Horman) [1687888] - [crypto] crypto: ecdh - add public key verification test (Neil Horman) [1687888] - [crypto] crypto: dh - fix memory leak (Neil Horman) [1687888] - [crypto] crypto: dh - add public key verification test (Neil Horman) [1687888] - [scsi] scsi: hisi_sas: Add softreset in hisi_sas_I_T_nexus_reset() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of HiLink (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP target port (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Set PHY linkrate when disconnected (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Change return variable type in phy_up_v3_hw() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: fix calls to dma_set_mask_and_coherent() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Do some more tidy-up (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Issue internal abort on all relevant queues (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: change queue depth from 512 to 4096 (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add manual trigger for debugfs dump (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for DIX feature for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add missing seq_printf() call in hisi_sas_show_row_32() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix to only call scsi_get_prot_op() for non-NULL scsi_cmnd (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Some misc tidy-up (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Correct memory allocation size for DQ debugfs (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix losing directly attached disk when hot-plug (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Remove unused parameter of function hisi_sas_alloc() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: remove the check of sas_dev status in hisi_sas_I_T_nexus_reset() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: shutdown axi bus to avoid exception CQ returned (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: send primitive NOTIFY to SSP situation only (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs ITCT file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix type casting and missing static qualifier in debugfs code (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: No need to check return value of debugfs_create functions (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Set protection parameters prior to adding SCSI host (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs IOST file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs DQ file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs CQ file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs for port registers (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Debugfs global register create file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Take debugfs snapshot for all regs (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Alloc debugfs snapshot buffer memory for all registers (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Create root and device debugfs directories (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for DIF feature for v2 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Make sg_tablesize consistent value (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Relocate some code to reduce complexity (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix warnings detected by sparse (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: change the time of SAS SSP connection (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Relocate some codes to avoid an unused check (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for interrupt coalescing for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for interrupt converge for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Create separate host attributes per HBA (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: use dma_set_mask_and_coherent (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Remove set but not used variable 'dq_list' (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix NULL pointer dereference (Xiaojun Tan) [1662038] - [nvme] nvme-pci: add missing unlock for reset error (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix rapid add remove sequence (Gopal Tiwari) [1665354] - [nvme] nvme: remove the .stop_ctrl callout (Gopal Tiwari) [1665354] - [nvme] nvme: add support for the Write Zeroes command (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: fix null dereference under heavy load (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: fix timeout handler (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix timeout handler (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: fix uninitialized variable access (Gopal Tiwari) [1665354] - [nvme] nvme: don't initlialize ctrl->cntlid twice (Gopal Tiwari) [1665354] - [nvme] nvme: introduce NVME_QUIRK_IGNORE_DEV_SUBNQN (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: remove dead code (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: don't ask if controller is fabrics (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: unset write/poll queues for discovery controllers (Gopal Tiwari) [1665354] - [nvme] nvme: pad fake subsys NQN vid and ssvid with zeros (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix out of bounds access in nvme_cqe_pending (Gopal Tiwari) [1665354] - [nvme] nvme-pci: use the same attributes when freeing host_mem_desc_bufs. (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix the wrong setting of nr_maps (Gopal Tiwari) [1665354] - [nvme] nvme-pci: rerun irq setup on IO queue init errors (Gopal Tiwari) [1665354] - [nvme] nvme-pci: trace SQ status on completions (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user to pass in nr_poll_queues (Gopal Tiwari) [1665354] - [nvme] nvme-core: optionally poll sync commands (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix spelling mistake "attepmpt" -> "attempt" (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix endianess annotations (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: fix endianess annotations (Gopal Tiwari) [1665354] - [nvme] nvme-pci: refactor nvme_poll_irqdisable to make sparse happy (Gopal Tiwari) [1665354] - [nvme] nvme-pci: only set nr_maps to 2 if poll queues are supported (Gopal Tiwari) [1665354] - [nvme] nvmet: use a macro for default error location (Gopal Tiwari) [1665354] - [nvme] nvmet: fix comparison of a u16 with -1 (Gopal Tiwari) [1665354] - [nvme] nvme: fix kernel paging oops (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: support separate queue maps for read and write (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: support separate queue maps for read and write (Gopal Tiwari) [1665354] - [include] block: make request_to_qc_t public (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user to set nr_write_queues for separate queue maps (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: add missing nvmf_ctrl_options documentation (Gopal Tiwari) [1665354] - [nvme] blk-mq-rdma: pass in queue map to blk_mq_rdma_map_queues (Gopal Tiwari) [1665354] - [nvme] nvmet: update smart log with num err log entries (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for file backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log page cmd handler (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for bdev backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for admin-cmd (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for fabrics-cmd (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for rdma backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support in the core (Gopal Tiwari) [1665354] - [nvme] nvmet: add interface to update error-log page (Gopal Tiwari) [1665354] - [include] nvme: add error log page slot definition (Gopal Tiwari) [1665354] - [nvme] nvmet: add error-log definitions (Gopal Tiwari) [1665354] - [nvme] nvme: remove nvme_common command cdw10 array (Gopal Tiwari) [1665354] - [nvme] nvme: provide fallback for discard alloc failure (Gopal Tiwari) [1665354] - [nvme] nvmet: remove unused variable (Gopal Tiwari) [1665354] - [nvme] nvme: add __exit annotation (Gopal Tiwari) [1665354] - [nvme] nvmet: allow configfs tcp trtype configuration (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: add NVMe over TCP host driver (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: add NVMe over TCP target driver (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user passing data digest (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user passing header digest (Gopal Tiwari) [1665354] - [nvme] nvmet: Add install_queue callout (Gopal Tiwari) [1665354] - [nvme] nvmet: use unlikely for req status check (Gopal Tiwari) [1665354] - [include] nvme-tcp: Add protocol header (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: Add unlikely for response allocated check (Gopal Tiwari) [1665354] - [nvme] nvmet: fix the structure member indentation (Gopal Tiwari) [1665354] - [nvme] nvme: implement Enhanced Command Retry (Gopal Tiwari) [1665354] - [nvme] nvme: remove unused function nvme_ctrl_ready (Gopal Tiwari) [1665354] - [nvme] nvmet: support fabrics sq flow control (Gopal Tiwari) [1665354] - [nvme] nvmet: enable Discovery Controller AENs (Gopal Tiwari) [1665354] - [nvme] nvmet: expose support for fabrics SQ flow control disable in treq (Gopal Tiwari) [1665354] - [nvme] nvme: disable fabrics SQ flow control when asked by the user (Gopal Tiwari) [1665354] - [nvme] nvmet-fc: remove the IN_ISR deferred scheduling options (Gopal Tiwari) [1665354] - [nvme] nvme: Remove unused forward declaration (Gopal Tiwari) [1665354] - [nvme] nvmet: allow host connect even if no allowed subsystems are exported (Gopal Tiwari) [1665354] - [nvme] nvmet: don't override treq upon modification. (Gopal Tiwari) [1665354] - [nvme] nvmet: mark nvmet_genctr static (Gopal Tiwari) [1665354] - [nvme] nvmet: add defines for discovery change async events (Gopal Tiwari) [1665354] - [nvme] nvmet: support for traffic based keep-alive (Gopal Tiwari) [1665354] - [nvme] nvmet: make kato and AEN processing for use by other controllers (Gopal Tiwari) [1665354] - [nvme] nvmet: change aen mask functions to use bit numbers (Gopal Tiwari) [1665354] - [nvme] nvmet: provide aen bit functions for multiple controller types (Gopal Tiwari) [1665354] - [nvme] nvmet: add support to Discovery controllers for commands (Gopal Tiwari) [1665354] - [nvme] nvmet: use IOCB_NOWAIT for file-ns buffered I/O (Gopal Tiwari) [1665354] - [nvme] nvmet: allow Keep Alive for Discovery controller (Gopal Tiwari) [1665354] - [nvme] nvme: support traffic based keep-alive (Gopal Tiwari) [1665354] - [nvme] nvme: cache controller attributes (Gopal Tiwari) [1665354] - [nvme] nvme: introduce ctrl attributes enumeration (Gopal Tiwari) [1665354] - [nvme] nvme: consolidate memset calls in the nvme_setup_cmd path (Gopal Tiwari) [1665354] - [nvme] nvme: warn when finding multi-port subsystems without multipathing enabled (Gopal Tiwari) [1665354] - [nvme] Revert "nvmet-rdma: use a private workqueue for delete" (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: move controller options matching to fabrics (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: always have a valid trsvcid (Gopal Tiwari) [1665354] - [nvme] nvme-pci: remove duplicate check (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix hot removal during error handling (Gopal Tiwari) [1665354] - [nvme] nvmet-fcloop: suppress a compiler warning (Gopal Tiwari) [1665354] - [nvme] nvme-core: make implicit seed truncation explicit (Gopal Tiwari) [1665354] - [nvme] nvmet-fc: fix kernel-doc headers (Gopal Tiwari) [1665354] - [nvme] nvmet: avoid integer overflow in the discard code (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: declare local symbols static (Gopal Tiwari) [1665354] - [nvme] nvmet: use strlcpy() instead of strcpy() (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix nvme_suspend_queue() kernel-doc header (Gopal Tiwari) [1665354] - [nvme] nvme-core: declare local symbols static (Gopal Tiwari) [1665354] - [nvme] nvme-core: rework a NQN copying operation (Gopal Tiwari) [1665354] - [nvme] nvmet: use strcmp() instead of strncmp() for subsystem lookup (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: check for timeout in nvme_rdma_wait_for_cm() (Gopal Tiwari) [1665354] - [nvme] nvmet: remove unreachable code (Gopal Tiwari) [1665354] - [nvme] nvme: update node paths after adding new path (Gopal Tiwari) [1665354] - [nvme] nvme: remove ns sibling before clearing path (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: use a private workqueue for delete (Gopal Tiwari) [1665354] - [nvme] nvmet: don't split large I/Os unconditionally (Gopal Tiwari) [1665354] - [nvme] nvme-core: add async event trace helper (Gopal Tiwari) [1665354] - [nvme] nvmet_fc: support target port removal with nvmet layer (Gopal Tiwari) [1665354] - [nvme] nvmet: remove redundant module prefix (Gopal Tiwari) [1665354] - [nvme] nvme: fix typo in nvme_identify_ns_descs (Gopal Tiwari) [1665354] - [nvme] nvme: register ns_id attributes as default sysfs groups (Gopal Tiwari) [1665354] - [block] block: genhd: add 'groups' argument to device_add_disk (Gopal Tiwari) [1665354] - [nvme] nvme: count all ANA groups for ANA Log page (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: fix possible bogus dereference under heavy load (Gopal Tiwari) [1665354] - [nvme] nvmet: free workqueue object if module init fails (Gopal Tiwari) [1665354] - [nvme] nvme-fcloop: Fix dropped LS's to removed target port (Gopal Tiwari) [1665354] - [nvme] nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event (Gopal Tiwari) [1665354] - [nvme] nvmet: add ns write protect support (Gopal Tiwari) [1665354] - [nvme] nvme: set gendisk read only based on nsattr (Gopal Tiwari) [1665354] - [include] nvme.h: add support for ns write protect definitions (Gopal Tiwari) [1665354] - [nvme] nvmet: use Retain Async Event bit to clear AEN (Gopal Tiwari) [1665354] - [nvme] nvmet: support configuring ANA groups (Gopal Tiwari) [1665354] - [nvme] nvmet: add minimal ANA support (Gopal Tiwari) [1665354] - [nvme] nvmet: track and limit the number of namespaces per subsystem (Gopal Tiwari) [1665354] - [nvme] nvmet: keep a port pointer in nvmet_ctrl (Gopal Tiwari) [1665354] - [nvme] nvmet: check fileio lba range access boundaries (Gopal Tiwari) [1665354] - [nvme] nvmet: don't use uuid_le type (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: centralize admin/io queue teardown sequence (Gopal Tiwari) [1665354] - [nvme] nvmet: fix file discard return status (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: centralize controller setup sequence (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: unquiesce queues when deleting the controller (Gopal Tiwari) [1665354] - [nvme] nvme: add disk name to trace events (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: mark expected switch fall-through (Gopal Tiwari) [1665354] - [nvme] nvme: add controller name to trace events (Gopal Tiwari) [1665354] - [nvme] nvme: use hw qid in trace events (Gopal Tiwari) [1665354] - [nvme] nvmet: add buffered I/O support for file backed ns (Gopal Tiwari) [1665354] - [nvme] nvme: move init of keep_alive work item to controller initialization (Gopal Tiwari) [1665354] - [nvme] nvmet: add commands supported and effects log page (Gopal Tiwari) [1665354] - [nvme] lightnvm: limit get chunk meta request size (Gopal Tiwari) [1665354] - [nvme] lightnvm: Remove redundant rq->__data_len initialization (Gopal Tiwari) [1665354] - [block] nbd: restrict use to AF_UNIX sockets (Mike Christie) [1673307] - [block] nbd: don't allow invalid blocksize settings (Mike Christie) [1673307] - [documentation] doc, block, bfq: add information on bfq execution time (Ming Lei) [1686682] - [block] block, bfq: save & resume weight on a queue merge/split (Ming Lei) [1686682] - [block] block, bfq: print SHARED instead of pid for shared queues in logs (Ming Lei) [1686682] - [block] block, bfq: always protect newly-created queues from existing active queues (Ming Lei) [1686682] - [block] block, bfq: do not tag totally seeky queues as soft rt (Ming Lei) [1686682] - [block] block, bfq: do not merge queues on flash storage with queueing (Ming Lei) [1686682] - [block] block, bfq: tune service injection basing on request service times (Ming Lei) [1686682] - [block] block, bfq: do not idle for lowest-weight queues (Ming Lei) [1686682] - [block] block, bfq: increase idling for weight-raised queues (Ming Lei) [1686682] - [block] block/bfq: fix ifdef for CONFIG_BFQ_GROUP_IOSCHED=y (Ming Lei) [1686682] - [block] block, bfq: fix in-service-queue check for queue merging (Ming Lei) [1686682] - [block] block, bfq: do not overcharge writes in asymmetric scenarios (Ming Lei) [1686682] - [block] block, bfq: port commit "cfq-iosched: improve hw_tag detection" (Ming Lei) [1686682] - [block] block, bfq: reduce threshold for detecting command queueing (Ming Lei) [1686682] - [block] block, bfq: fix queue removal from weights tree (Ming Lei) [1686682] - [block] block, bfq: fix sequential rq detection in rate estimation (Ming Lei) [1686682] - [block] block, bfq: unconditionally plug I/O in asymmetric scenarios (Ming Lei) [1686682] - [block] block, bfq: do not plug I/O of in-service queue when harmful (Ming Lei) [1686682] - [block] block, bfq: split function bfq_better_to_idle (Ming Lei) [1686682] - [block] block, bfq: consider also ioprio classes in symmetry detection (Ming Lei) [1686682] - [block] block, bfq: remove case of redirected bic from insert_request (Ming Lei) [1686682] - [block] block, bfq: make sure queue budgets are not below service received (Ming Lei) [1686682] - [block] block, bfq: avoid selecting a queue w/o budget (Ming Lei) [1686682] - [block] block, bfq: do not consider interactive queues in srt filtering (Ming Lei) [1686682] - [net] net: switchdev: Add extack to switchdev_handle_port_obj_add() callback (Ivan Vecera) [1690125] - [net] switchdev: Add extack to struct switchdev_notifier_info (Ivan Vecera) [1690125] - [net] vxlan: Add a function to init switchdev_notifier_vxlan_fdb_info (Ivan Vecera) [1690125] - [net] switchdev: Add extack argument to switchdev_port_obj_add() (Ivan Vecera) [1690125] - [net] bridge: Propagate extack to switchdev (Ivan Vecera) [1690125] - [net] ndo_bridge_setlink: Add extack (Ivan Vecera) [1690125] - [net] rocker, dsa, ethsw: Don't filter VLAN events on bridge itself (Ivan Vecera) [1690125] - [net] switchdev: Replace port obj add/del SDO with a notification (Ivan Vecera) [1690125] - [net] ocelot: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] mlxsw: spectrum_switchdev: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add helpers to aid traversal through lower devices (Ivan Vecera) [1690125] - [net] staging: fsl-dpaa2: ethsw: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] staging: fsl-dpaa2: ethsw: Introduce ethsw_port_dev_check() (Ivan Vecera) [1690125] - [net] dsa: slave: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] rocker: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add SWITCHDEV_PORT_OBJ_ADD, SWITCHDEV_PORT_OBJ_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add a blocking notifier chain (Ivan Vecera) [1690125] - [net] switchdev: SWITCHDEV_OBJ_PORT_{VLAN, MDB}(): Sanitize (Ivan Vecera) [1690125] - [net] selftests: forwarding: Fix test for different devices (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add learning test (Ivan Vecera) [1693316] - [net] bridge: Allow querying bridge port flags (Ivan Vecera) [1693316] - [netdrv] vxlan: Allow changing ageing time (Ivan Vecera) [1693316] - [netdrv] vxlan: Add hardware FDB learning (Ivan Vecera) [1693316] - [netdrv] vxlan: Don't override user-added entries with ext-learned ones (Ivan Vecera) [1693316] - [netdrv] vxlan: Mark user-added FDB entries (Ivan Vecera) [1693316] - [netdrv] vxlan: vxlan_fdb_notify(): Make switchdev notification configurable (Ivan Vecera) [1693316] - [netdrv] vxlan: __vxlan_fdb_delete(): Drop unused argument vid (Ivan Vecera) [1693316] - [netdrv] vxlan: support NTF_USE refresh of fdb entries (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d_port_8472: New test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add an ECN decap test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add an ECN encap test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add a TOS test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add a TTL test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Reconfigure & rerun tests (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add unicast test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add flood test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add ping test (Ivan Vecera) [1693316] - [net] selftests: forwarding: Add a skeleton of vxlan_bridge_1d (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Add link_stats_rx_errors_get() (Ivan Vecera) [1693316] - [net] selftests: forwarding: ping{6, }_do(): Allow passing ping arguments (Ivan Vecera) [1693316] - [net] selftests: forwarding: ping{6, }_test(): Add description argument (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Add in_ns() (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Support NUM_NETIFS of 0 (Ivan Vecera) [1693316] - [net] skb_scrub_packet(): Scrub offload_fwd_mark (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: extract ping and ping6 so they can be reused (Ivan Vecera) [1693316] - [net] selftests: forwarding: README: Require diagrams (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Extract interface-init functions (Ivan Vecera) [1693316] - [net] selftests: forwarding: tc_rule_stats_get: Parameterize direction (Ivan Vecera) [1693316] - [net] selftests: forwarding: multipath_eval(): Improve style (Ivan Vecera) [1693316] - [net] selftests: forwarding: Move multipath_eval() to lib.sh (Ivan Vecera) [1693316] - [net] selftests: Add test_vxlan_fdb_changelink.sh (Ivan Vecera) [1690309] - [netdrv] vxlan: changelink: Fix handling of default remotes (Ivan Vecera) [1690309] - [netdrv] vxlan: Fix error path in __vxlan_dev_create() (Ivan Vecera) [1690309] - [netdrv] vxlan: Unmark offloaded bit on replaced FDB entries (Ivan Vecera) [1690309] - [net] bridge: switchdev: Allow clearing FDB entry offload indication (Ivan Vecera) [1690309] - [netdrv] vxlan: Notify for each remote of a removed FDB entry (Ivan Vecera) [1690309] - [netdrv] vxlan: Support marking RDSTs as offloaded (Ivan Vecera) [1690309] - [netdrv] vxlan: Add vxlan_fdb_find_uc() for FDB querying (Ivan Vecera) [1690309] - [netdrv] vxlan: Add switchdev notifications (Ivan Vecera) [1690309] - [netdrv] net: Add netif_is_vxlan() (Ivan Vecera) [1690309] - [net] inet: Refactor INET_ECN_decapsulate() (Ivan Vecera) [1690309] - [netdrv] vxlan: Export address checking functions (Ivan Vecera) [1690309] - [net] vxlan: Remove duplicated include from vxlan.h (Ivan Vecera) [1690309] - [netdrv] geneve: correctly handle ipv6.disable module parameter (Jiri Benc) [1692390] - [net] ipv6: sit: reset ip header pointer in ipip6_rcv (Lorenzo Bianconi) [1691626] - [net] vxlan: Don't call gro_cells_destroy() before device is unregistered (Andrea Claudi) [1692499] - [net] xsk: do not remove umem from netdevice on fall-back to copy-mode (Petr Oros) [1690568] - [net] xsk: Check if a queue exists during umem setup (Petr Oros) [1690568] - [net] xsk: simplify xdp_clear_umem_at_qid implementation (Petr Oros) [1690568] - [net] ethtool: don't allow disabling queues with umem installed (Petr Oros) [1690568] - [net] ethtool: rename local variable max -> curr (Petr Oros) [1690568] - [net] xsk: fix bug when trying to use both copy and zero-copy on one queue id (Petr Oros) [1690568] - [net] add umem reference in netdev{_rx}_queue (Petr Oros) [1690568] - [net] xsk: remove unnecessary assignment (Petr Oros) [1690568] - [net] xsk: fix return value of xdp_umem_assign_dev() (Petr Oros) [1690568] - [net] xsk: don't allow umem replace at stack level (Petr Oros) [1690568] - [net] xsk: refactor xdp_umem_assign_dev() (Petr Oros) [1690568] - [net] update real_num_rx_queues even when !CONFIG_SYSFS (Petr Oros) [1690568] - [net] core: add __netdev_sent_queue as variant of __netdev_tx_sent_queue (Petr Oros) [1690127] - [net] net: do not abort bulk send on BQL status (Petr Oros) [1690129] - [net] net: bql: add __netdev_tx_sent_queue() (Petr Oros) [1690129] - [net] net: ip6_gre: fix possible NULL pointer dereference in ip6erspan_set_version (Lorenzo Bianconi) [1666315] - [net] net: ip6_gre: initialize erspan_ver just for erspan tunnels (Lorenzo Bianconi) [1666315] - [net] net: ip6_gre: always reports o_key to userspace (Lorenzo Bianconi) [1666315] - [net] net: ip_gre: always reports o_key to userspace (Lorenzo Bianconi) [1666315] - [net] tcp: handle inet_csk_reqsk_queue_add() failures (Guillaume Nault) [1690157] - [net] ip_gre: use erspan key field for tunnel lookup (Lorenzo Bianconi) [1664570] - [net] ip6_gre: simplify gre header parsing in ip6gre_err (Lorenzo Bianconi) [1664570] - [net] ipv4: use a dedicated counter for icmp_v4 redirect packets (Lorenzo Bianconi) [1664209] - [net] virtchnl: Fix off by one error (Ivan Vecera) [1690114] - [net] virtchnl: white space and reorder (Ivan Vecera) [1690114] - [net] i40e: Update status codes (Ivan Vecera) [1690114] - [net] ethtool: Add WAKE_FILTER and RX_CLS_FLOW_WAKE (Ivan Vecera) [1690091] - [net] geneve: allow to clear ttl inherit (Hangbin Liu) [1671251] - [net] geneve: add ttl inherit support (Hangbin Liu) [1671251] - [net] tipc: fix a double kfree_skb() (Jon Maloy) [1684290] - [net] vxlan: Fix GRO cells race condition between receive and link delete (Andrea Claudi) [1687046] - [net] sock: consistent handling of extreme SO_SNDBUF/SO_RCVBUF values (Guillaume Nault) [1686564] - [net] tun: implement carrier change (Guillaume Nault) [1686566] - [net] ip6_tunnel: respect ttl inherit for ip6tnl (Hangbin Liu) [1664944] - [net] ip6_gre: update version related info when changing link (Hangbin Liu) [1664900] - [net] ipv4/route: fail early when inet dev is missing (Paolo Abeni) [1685424] - [net] bonding/802.3ad: fix link_failure_count tracking (Matteo Croce) [1657905] - [net] bonding: avoid possible dead-lock (Matteo Croce) [1657905] - [net] bonding: fix length of actor system (Matteo Croce) [1657905] - [net] bonding: fix warning message (Matteo Croce) [1657905] - [net] bonding: pass link-local packets to bonding master also. (Matteo Croce) [1657905]- [infiniband] IB/usnic: fix spelling mistake "unvalid" -> "invalid" (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Get rid of ucontext->tgid (Jonathan Toppins) [1685307] - [infiniband] RDMA/usnic: Do not use ucontext->tgid (Jonathan Toppins) [1685307] - [infiniband] infiniband: remove redundant condition check before debugfs_remove (Jonathan Toppins) [1685307] - [infiniband] RDMA/rdmavt: Fix rvt_create_ah function signature (Jonathan Toppins) [1685307] - [infiniband] RDMA/drivers: Use core provided API for registering device attributes (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Remove unnecessary enum values (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move ruc_loopback to rdmavt (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move send completion logic to rdmavt (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move copy SGE logic into rdmavt (Jonathan Toppins) [1685307] - [infiniband] RDMA/rxe: Remove unused addr_same() (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: avoid srq memory leak (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: replace kvfree with vfree (Jonathan Toppins) [1685307] - [infiniband] RDMA/drivers: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/drivers: Use dev_err/dbg/etc instead of pr_* + ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] IB/rxe: fixes for rdma read retry (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: avoid back-to-back retries (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Refactor lookup memory function (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Avoid NULL check when search is successful (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Change pool state enums to capital letters (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Replace spinlock with rwlock (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Simplify rxe_find_route() to avoid GID query for netdev (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: remove redudant qpn check (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: vary the source udp port for receive scaling (Jonathan Toppins) [1685307] - [infiniband] iser: set sector for ambiguous mr status errors (Jonathan Toppins) [1685307] - [net] svcrdma: Remove try_module_get from backchannel (Jonathan Toppins) [1685307] - [net] svcrdma: Remove ->release_rqst call in bc reply handler (Jonathan Toppins) [1685307] - [net] xprtrdma: Clean up xprt_rdma_disconnect_inject (Jonathan Toppins) [1685307] - [net] xprtrdma: Add documenting comments (Jonathan Toppins) [1685307] - [net] xprtrdma: Report when there were zero posted Receives (Jonathan Toppins) [1685307] - [net] xprtrdma: Move rb_flags initialization (Jonathan Toppins) [1685307] - [net] xprtrdma: Don't disable BH's in backchannel server (Jonathan Toppins) [1685307] - [net] xprtrdma: Remove memory address of "ep" from an error message (Jonathan Toppins) [1685307] - [net] xprtrdma: Rename rpcrdma_qp_async_error_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Simplify RPC wake-ups on connect (Jonathan Toppins) [1685307] - [net] xprtrdma: Re-organize the switch() in rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Eliminate "connstate" variable from rpcrdma_conn_upcall() (Jonathan Toppins) [1685307] - [net] xprtrdma: Conventional variable names in rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Rename rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] sunrpc: Report connect_time in seconds (Jonathan Toppins) [1685307] - [net] sunrpc: Fix connect metrics (Jonathan Toppins) [1685307] - [net] xprtrdma: Name MR trace events consistently (Jonathan Toppins) [1685307] - [net] xprtrdma: Explicitly resetting MRs is no longer necessary (Jonathan Toppins) [1685307] - [net] xprtrdma: Create more MRs at a time (Jonathan Toppins) [1685307] - [net] xprtrdma: xprt_release_rqst_cong is called outside of transport_lock (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Log sysfs 'dev_id' accesses from userspace (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Use dev_port to expose network interface port numbers (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Ensure that MTU isn't less than minimum permitted (Jonathan Toppins) [1685307] - [infiniband] IB/srp: Remove unnecessary unlikely() (Jonathan Toppins) [1685307] - [infiniband] IB/core: Fix oops in netdev_next_upper_dev_rcu() (Jonathan Toppins) [1685307] - [infiniband] IB/umem: Set correct address to the invalidation function (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Add GIDs while changing MAC addr only for registered ndev (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Fix comment for hw stats init for port == 0 (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Refactor ib_register_device() function (Jonathan Toppins) [1685307] - [infiniband] IB/mlx4: Refer to the device kobject instead of ports_parent (Jonathan Toppins) [1685307] - [include] RDMA/core: Allow existing drivers to set one sysfs group per device (Jonathan Toppins) [1685307] - [infiniband] RDMA/umad: Use kernel API to allocate umad indexes (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use kernel API to allocate uverbs indexes (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Increase total number of RDMA ports across all devices (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rename ports_parent to ports_kobj (Jonathan Toppins) [1685307] - [infiniband] RDMA/nldev: Allow IB device rename through RDMA netlink (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Implement IB device rename function (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Annotate timeout as unsigned long (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Align multiple functions to kernel coding style (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Remove unused timeout_ms parameter from cma_resolve_iw_route() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cm: Respect returned status of cm_init_av_by_path (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Protect from reentry to resource return path (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Release task struct which was hold by CM_ID object (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Consolidate task name updates in one place (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Un-inline set task implementation (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Check error status of rdma_find_ndev_for_src_ip_rcu (Jonathan Toppins) [1685307] - [include] IB/mlx4: Avoid implicit enumerated type conversion (Jonathan Toppins) [1685307] - [infiniband] RDMA/netlink: Simplify netlink listener existence check (Jonathan Toppins) [1685307] - [infiniband] RDMA: Remove unused parameter from ib_modify_qp_is_ok() (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Fix RCU annotation for radix slot deference (Jonathan Toppins) [1685307] - [infiniband] RDMA: Fix building with CONFIG_MMU=n (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Introduce and use cma_ib_acquire_dev() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Introduce and use cma_acquire_dev_by_src_ip() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Allow accepting requests for multi port rdma device (Jonathan Toppins) [1685307] - [infiniband] IB/rdmavt: Rename check_send_wqe as setup_wqe (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Acquire and release mmap_sem on page range (Jonathan Toppins) [1685307] - [infiniband] IB/sa: simplify return code logic for ib_nl_send_msg() (Jonathan Toppins) [1685307] - [infiniband] RDMA/ulp: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Use dev_err/dbg/etc instead of pr_* + ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA: Fully setup the device name in ib_register_device (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/umem: Fix potential addition overflow (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Minor optimizations (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Avoid synchronize_srcu in the ODP MR destruction path (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Handle a half-complete start/end sequence (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Get rid of per_mm->notifier_count (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Use umem->owning_mm inside ODP (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Move all the ODP related stuff out of ucontext and into per_mm (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Get rid of struct ib_umem.odp_data (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Make ib_umem_odp into a sub structure of ib_umem (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Use ib_umem_odp in all function signatures connected to ODP (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Do not use current->tgid to track the mm_struct (Jonathan Toppins) [1685307] - [infiniband] RDMA/ucontext: Get rid of the old disassociate flow (Jonathan Toppins) [1685307] - [infiniband] RDMA/ucontext: Add a core API for mmaping driver IO memory (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Fix error unwind in ib_uverbs_add_one (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Properly return the error code of rdma_set_src_addr_rcu (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Remove is_closed from ib_uverbs_file (Jonathan Toppins) [1685307] - [include] IB/rxe: Revise the ib_wr_opcode enum (Jonathan Toppins) [1685307] - [include] RDMA: Remove duplicated include from ib_addr.h (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Consider net ns of gid attribute for RoCE (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Introduce rdma_read_gid_attr_ndev_rcu() to check GID attribute (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Simplify roce_resolve_route_from_path() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Protect against changing dst->dev during destination resolve (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Refer to network type instead of device type (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use common code flow for IPv4/6 for addr resolve (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rename rdma_copy_addr to rdma_copy_src_l2_addr (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Introduce and use rdma_set_src_addr() between IPv4 and IPv6 (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Let protocol specific function typecast sockaddr structure (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Avoid unnecessary sa_family overwrite (Jonathan Toppins) [1685307] - [infiniband] RDMA/core Introduce and use rdma_find_ndev_for_src_ip_rcu (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Schedule multi RC/UC packets instead of posting (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Move flow resources initialization (Jonathan Toppins) [1685307] - [infiniband] IB/uverbs: Add IDRs array attribute type to ioctl() interface (Jonathan Toppins) [1685307] - [include] RDMA/core: Document QP @event_handler function (Jonathan Toppins) [1685307] - [include] RDMA/core: Document CM @event_handler function (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Assign device ifindex before publishing the device (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Follow correct unregister order between sysfs and cgroup (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Restore lockdep check while downgrading lock (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Define client_data_lock as rwlock instead of spinlock (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use simpler spin lock irq API from blocking context (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Remove context entries from list while unregistering device (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use simplified list_for_each (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: No need to protect kfree with spin lock and semaphore (Jonathan Toppins) [1685307] - [infiniband] RDMA/{cma, core}: Avoid callback on rdma_addr_cancel() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rate limit MAD error messages (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Fail early if unsupported QP is provided (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use device.groups to initialize device attributes (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use cdev_device_add() instead of cdev_add() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Depend on device_add() to add device attributes (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Replace open-coded variant of get_device (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Declare closing variable as boolean (Jonathan Toppins) [1685307] - [infiniband] IB/core: Add an unbound WQ type to the new CQ API (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Add generic function to fill in flow action object (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Add UVERBS_ATTR_CONST_IN to the specs language (Jonathan Toppins) [1685307] - [netdrv] ibmvnic: Fix completion structure initialization (Steve Best) [1697103] - [rpmspec] redhat: limit headers_install_all to arches we care about (Denys Vlasenko) [1692404] - [lib] ida: Add new API (Jonathan Toppins) [1697588] - [edac] EDAC: Drop per-memory controller buses (Frank Ramsay) [1686477] - [edac] EDAC: Don't add devices under /sys/bus/edac (Frank Ramsay) [1686477] - [x86] x86/platform/UV: Use efi_runtime_lock to serialise BIOS calls (Frank Ramsay) [1677695]- [pci] PCI: pciehp: Fix re-enabling the slot marked for safe removal (Myron Stowe) [1695922] - [rpmspec] redhat: Enable gdb_index (Juri Lelli) [1696747] - [fs] ovl: Do not lose security.capability xattr over metadata file copy-up (Vivek Goyal) [1694757] - [fs] ovl: During copy up, first copy up data and then xattrs (Vivek Goyal) [1694757]- [netdrv] mark the intel igc driver as tech preview (David Arcari) [1495358] - [netdrv] igc: Remove unneeded hw_dbg prints (David Arcari) [1495358] - [netdrv] igc: Fix the typo in igc_base.h header definition (David Arcari) [1495358] - [netdrv] igc: Add support for the ntuple feature (David Arcari) [1495358] - [netdrv] igc: Add support for statistics (David Arcari) [1495358] - [netdrv] igc: Extend the ethtool supporting (David Arcari) [1495358] - [netdrv] igc: Add multiple receive queues control supporting (David Arcari) [1495358] - [netdrv] igc: Use struct_size() helper (David Arcari) [1495358] - [netdrv] igc: Add ethtool support (David Arcari) [1495358] - [netdrv] igc: Remove the 'igc_get_phy_id_base' method (David Arcari) [1495358] - [netdrv] igc: Remove the 'igc_read_mac_addr_base' method (David Arcari) [1495358] - [netdrv] igc: Remove unneeded code (David Arcari) [1495358] - [netdrv] igc: Remove unused code (David Arcari) [1495358] - [netdrv] igc: Fix code redundancy (David Arcari) [1495358] - [netdrv] igc: Remove unreachable code from igc_phy.c file (David Arcari) [1495358] - [netdrv] igc: Remove obsolete IGC_ERR define (David Arcari) [1495358] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (David Arcari) [1495358] - [netdrv] igc: Clean up code (David Arcari) [1495358] - [netdrv] igc: Tidy up some white space (David Arcari) [1495358] - [netdrv] igc: fix error return handling from call to netif_set_real_num_tx_queues (David Arcari) [1495358] - [netdrv] igc: Remove set but not used variable 'pci_using_dac' (David Arcari) [1495358] - [netdrv] igc: Remove set but not used variables 'ctrl_ext, link_mode' (David Arcari) [1495358] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (David Arcari) [1495358] - [netdrv] igc: Add watchdog (David Arcari) [1495358] - [netdrv] igc: Add setup link functionality (David Arcari) [1495358] - [netdrv] igc: Add code for PHY support (David Arcari) [1495358] - [netdrv] igc: Add NVM support (David Arcari) [1495358] - [netdrv] igc: Add HW initialization code (David Arcari) [1495358] - [netdrv] igc: Add transmit and receive fastpath and interrupt handlers (David Arcari) [1495358] - [netdrv] igc: Add support for Tx/Rx rings (David Arcari) [1495358] - [netdrv] igc: Add interrupt support (David Arcari) [1495358] - [netdrv] igc: Add netdev (David Arcari) [1495358] - [netdrv] igc: Add support for PF (David Arcari) [1495358] - [netdrv] igc: Add skeletal frame for Intel(R) 2.5G Ethernet Controller support (David Arcari) [1495358] - [s390] virtio-ccw: wire up ->bus_name callback (Cornelia Huck) [1695630] - [s390] s390/virtio: handle find on invalid queue gracefully (Cornelia Huck) [1695630] - [s390] virtio/s390: fix race in ccw_io_helper() (Cornelia Huck) [1695630] - [s390] virtio/s390: avoid race on vcdev->config (Cornelia Huck) [1695630] - [kvm] KVM: s390: make bitmap declaration consistent (Thomas Huth) [1695090] - [kvm] KVM: s390: drop obsolete else path (Thomas Huth) [1695090] - [kvm] KVM: s390: clarify kvm related kernel message (Thomas Huth) [1695090] - [kvm] s390: vsie: Use effective CRYCBD.31 to check CRYCBD validity (Thomas Huth) [1695090] - [kvm] KVM: s390: fix kmsg component kvm-s390 (Thomas Huth) [1695090] - [kvm] KVM: s390: unregister debug feature on failing arch init (Thomas Huth) [1695090] - [kvm] KVM: s390/vsie: avoid sparse warning (Thomas Huth) [1695090]- [powerpc] powerpc: use mm zones more sensibly (David Gibson) [1654978] - [s390] s390/mem_detect: add missing include (Philipp Rudo) [1695615] - [s390] s390: avoid vmlinux segments overlap (Philipp Rudo) [1695615] - [s390] s390/decompressor: add missing FORCE to build targets (Philipp Rudo) [1695615] - [s390] s390: move ipl block and cmd line handling to early boot phase (Philipp Rudo) [1695615] - [s390] s390/sclp: introduce sclp_early_get_hsa_size (Philipp Rudo) [1695615] - [s390] s390/mem_detect: add info source debug print (Philipp Rudo) [1695615] - [s390] s390/mem_detect: replace tprot loop with binary search (Philipp Rudo) [1695615] - [s390] s390/mem_detect: use SCLP info for continuous memory detection (Philipp Rudo) [1695615] - [s390] s390/mem_detect: introduce z/VM specific diag260 call (Philipp Rudo) [1695615] - [s390] s390/mem_detect: introduce SCLP storage info (Philipp Rudo) [1695615] - [s390] s390: introduce .boot.data section compile time validation (Philipp Rudo) [1695615] - [s390] s390/mem_detect: move tprot loop to early boot phase (Philipp Rudo) [1695615] - [s390] s390/sclp: move sclp_early_read_info to sclp_early_core.c (Philipp Rudo) [1695615] - [s390] s390: introduce .boot.data section (Philipp Rudo) [1695615] - [s390] s390/decompressor: clean up and rename compressed/misc.c (Philipp Rudo) [1695615] - [s390] s390: rescue initrd as early as possible (Philipp Rudo) [1695615] - [s390] s390/sclp: simplify early hsa_size detection (Philipp Rudo) [1695615] - [s390] s390/decompressor: get rid of .bss usage (Philipp Rudo) [1695615] - [s390] s390/decompressor: rework uncompressed image info collection (Philipp Rudo) [1695615] - [s390] s390: remove decompressor's head.S (Philipp Rudo) [1695615] - [s390] s390: clean up stacks setup (Philipp Rudo) [1695615] - [s390] s390: add initial 64-bit restart PSW (Philipp Rudo) [1695615] - [s390] s390/hibernate: fix error handling when suspend cpu != resume cpu (Philipp Rudo) [1695615] - [s390] s390/decompressor: support extra debug flags (Philipp Rudo) [1695615] - [s390] s390/build: add *.o.chkbss files to targets list (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid packing *.o.chkbss files into startup.a (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid constant startup.a rebuilds (Philipp Rudo) [1695615] - [s390] s390/boot: block uncompressed vmlinux booting attempts (Philipp Rudo) [1695615] - [s390] s390/decompressor: correct EXCLUDE_FILE construct (Philipp Rudo) [1695615] - [s390] s390: move _text to an actual .text start (Philipp Rudo) [1695615] - [s390] s390: correct _stext offset (Philipp Rudo) [1695615] - [s390] s390: get rid of the first mb of uncompressed image (Philipp Rudo) [1695615] - [s390] s390: remove unused _ehead symbol (Philipp Rudo) [1695615] - [s390] s390: put expoline execute-trampolines into .text section (Philipp Rudo) [1695615] - [s390] s390/decompressor: discard ___kcrctab section (Philipp Rudo) [1695615] - [s390] s390/setup: do not reserve the decompressor code (Philipp Rudo) [1695615] - [s390] s390/decompressor: support uncompressed kernel (Philipp Rudo) [1695615] - [init] init/Kconfig: add an option for uncompressed kernel (Philipp Rudo) [1695615] - [s390] s390/decompressor: allow to pack uncompressed vmlinux.bin into piggy.o (Philipp Rudo) [1695615] - [s390] s390/decompressor: allow preprocessor in piggy.o linker script (Philipp Rudo) [1695615] - [s390] s390/decompressor: extend .bss check for early code (Philipp Rudo) [1695615] - [s390] s390: add custom target and make path extension optional for .bss check (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid repeating objects list in Makefile (Philipp Rudo) [1695615] - [s390] s390/decompressor: reuse lib/mem.S for mem functions (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid reusing uncompressed image objects (Philipp Rudo) [1695615] - [s390] s390/als: avoid .init.* sections usage (Philipp Rudo) [1695615] - [s390] s390/decompressor: rename entry point to startup_decompressor (Philipp Rudo) [1695615] - [s390] s390/boot: make head.S and als.c be part of the decompressor only (Philipp Rudo) [1695615] - [s390] s390/decompressor: trim the kernel image up to 1M (Philipp Rudo) [1695615] - [s390] s390: remove uncompressed kernel image build (Philipp Rudo) [1695615] - [s390] s390/decompressor: correct build flags (Philipp Rudo) [1695615] - [s390] s390/build: remove obsolete -mkernel-backchain flag (Philipp Rudo) [1695615] - [tools] tools/power turbostat: return the exit status of a command (David Arcari) [1642739] - [misc] misc: hpilo: Do not claim unsupported hardware (Joseph Szczypek) [1665635] - [misc] misc: hpilo: Exclude unsupported device via blacklist (Joseph Szczypek) [1665635]- [fs] xfs: set buffer ops when repair probes for btree type (Bill O'Donnell) [1689281] - [fs] xfs: end sync buffer I/O properly on shutdown error (Bill O'Donnell) [1689281] - [fs] xfs: xfs_fsops: drop useless LIST_HEAD (Bill O'Donnell) [1689281] - [fs] xfs: xfs_buf: drop useless LIST_HEAD (Bill O'Donnell) [1689281] - [fs] iomap: fix a use after free in iomap_dio_rw (Bill O'Donnell) [1689281] - [fs] xfs: reallocate realtime summary cache on growfs (Bill O'Donnell) [1689281] - [fs] xfs: stringify scrub types in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: stringify btree cursor types in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: move XFS_INODE_FORMAT_STR mappings to libxfs (Bill O'Donnell) [1689281] - [fs] xfs: move XFS_AG_BTREE_CMP_FORMAT_STR mappings to libxfs (Bill O'Donnell) [1689281] - [fs] xfs: fix symbolic enum printing in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: fix function pointer type in ftrace format (Bill O'Donnell) [1689281] - [fs] xfs: Fix x32 ioctls when cmd numbers differ from ia32. (Bill O'Donnell) [1689281] - [fs] xfs: Fix bulkstat compat ioctls on x32 userspace. (Bill O'Donnell) [1689281] - [fs] xfs: Align compat attrlist_by_handle with native implementation. (Bill O'Donnell) [1689281] - [fs] xfs: require both realtime inodes to mount (Bill O'Donnell) [1689281] - [fs] xfs: cache minimum realtime summary level (Bill O'Donnell) [1689281] - [fs] xfs: count inode blocks correctly in inobt scrub (Bill O'Donnell) [1689281] - [fs] xfs: precalculate cluster alignment in inodes and blocks (Bill O'Donnell) [1689281] - [fs] xfs: precalculate inodes and blocks per inode cluster (Bill O'Donnell) [1689281] - [fs] xfs: add a block to inode count converter (Bill O'Donnell) [1689281] - [fs] xfs: remove xfs_rmap_ag_owner and friends (Bill O'Donnell) [1689281] - [fs] xfs: const-ify xfs_owner_info arguments (Bill O'Donnell) [1689281] - [fs] xfs: streamline defer op type handling (Bill O'Donnell) [1689281] - [fs] xfs: idiotproof defer op type configuration (Bill O'Donnell) [1689281] - [fs] xfs: clean up indentation issues, remove an unwanted space (Bill O'Donnell) [1689281] - [fs] xfs: libxfs: move xfs_perag_put late (Bill O'Donnell) [1689281] - [fs] xfs: split up the xfs_reflink_end_cow work into smaller transactions (Bill O'Donnell) [1689281] - [crypto] crypto: testmgr - add AES-CFB tests (Neil Horman) [1687897] - [scsi] scsi: iscsi: flush running unbind operations when removing a session (Maurizio Lombardi) [1695007] - [crypto] crypto: vmx - fix copy-paste error in CTR mode (Herbert Xu) [1693350] - [rpmspec] Fix cross builds (Jiri Olsa) [1694956] - [lib] sbitmap: order READ/WRITE freed instance and setting clear bit (Ming Lei) [1694521] - [block] blk-mq: fix sbitmap ws_active for shared tags (Ming Lei) [1694521] - [block] blk-mq: update comment for blk_mq_hctx_has_pending() (Ming Lei) [1694521] - [block] blk-mq: use blk_mq_put_driver_tag() to put tag (Ming Lei) [1694521] - [include] sbitmap: trivial - update comment for sbitmap_deferred_clear_bit (Ming Lei) [1694521] - [block] blkcg: Fix kernel-doc warnings (Ming Lei) [1694521] - [block] block: Unexport blk_mq_add_to_requeue_list() (Ming Lei) [1694521] - [block] block: add BLK_MQ_POLL_CLASSIC for hybrid poll and return EINVAL for unexpected value (Ming Lei) [1694521] - [include] blk-mq: remove unused 'nr_expired' from blk_mq_hw_ctx (Ming Lei) [1694521] - [block] loop: access lo_backing_file only when the loop device is Lo_bound (Ming Lei) [1694521] - [block] blk-mq: use blk_mq_sched_mark_restart_hctx to set RESTART (Ming Lei) [1694521] - [kernel] blkcg: annotate implicit fall through (Ming Lei) [1694521] - [block] block: Replace function name in string with __func__ (Ming Lei) [1694521] - [block] block: fix NULL pointer dereference in register_disk (Ming Lei) [1694521] - [fs] fs: fix guard_bio_eod to check for real EOD errors (Ming Lei) [1694521] - [block] blk-mq: use HCTX_TYPE_DEFAULT but not 0 to index blk_mq_tag_set->map (Ming Lei) [1694521] - [include] block: remove bvec_iter_rewind() (Ming Lei) [1694521] - [block] block: don't use bio->bi_vcnt to figure out segment number (Ming Lei) [1694521] - [fs] btrfs: look at bi_size for repair decisions (Ming Lei) [1694521] - [block] block: avoid setting none scheduler if it's already none (Ming Lei) [1694521] - [block] block: avoid setting wbt_lat_usec to current value (Ming Lei) [1694521] - [block] blk-sysfs: Rework documention of __blk_release_queue (Ming Lei) [1694521] - [block] blk-cgroup: Fix doc related to blkcg_exit_queue (Ming Lei) [1694521] - [block] block: kill QUEUE_FLAG_FLUSH_NQ (Ming Lei) [1694521] - [block] block: avoid setting nr_requests to current value (Ming Lei) [1694521] - [block] blk-mq: save default hctx into ctx->hctxs for not-supported type (Ming Lei) [1694521] - [block] blk-mq: save queue mapping result into ctx directly (Ming Lei) [1694521] - [block] block: mq-deadline: Fix write completion handling (Ming Lei) [1694521] - [crypto] crypto: user - fix leaking uninitialized memory to userspace (Herbert Xu) [1657880] {CVE-2018-19854} - [char] ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier (Xiaojun Tan) [1689480] - [infiniband] usnic_verbs: fix deadlock (Govindarajulu Varadarajan) [1688505] - [infiniband] IB/usnic: Fix locking when unregistering (Govindarajulu Varadarajan) [1688505] - [infiniband] IB/usnic: Fix potential deadlock (Govindarajulu Varadarajan) [1688505] - [netdrv] net: hns3: fix improper error handling in the hclge_init_ae_dev() (Xiaojun Tan) [1687060] - [netdrv] net: hns3: fix netif_napi_del() not do problem when unloading (Xiaojun Tan) [1687060] - [netdrv] net: hns3: Fix NULL deref when unloading driver (Xiaojun Tan) [1687060] - [netdrv] net: hns3: Modify the order of initializing command queue register (Xiaojun Tan) [1687060] - [netdrv] net: hns3: remove the Redundant put_vector in hns3_client_uninit (Xiaojun Tan) [1687060] - [netdrv] net: hns3: reuse reinitialization interface in the hns3_set_channels (Xiaojun Tan) [1687060]- [powercap] powercap/intel_rapl: add Ice Lake mobile (Steve Best) [1483427] - [x86] x86/CPU: Add Icelake model number (Steve Best) [1483427] - [watchdog] watchdog/hpwdt: Update Kconfig documentation (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Update driver version. (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Do not claim unsupported hardware (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Exclude via blacklist (Joseph Szczypek) [1664861] - [fs] autofs: add strictexpire mount option (Ian Kent) [1672134] - [fs] autofs: change catatonic setting to a bit flag (Ian Kent) [1672134] - [fs] autofs: simplify parse_options() function call (Ian Kent) [1672134] - [fs] autofs: add AUTOFS_EXP_FORCED flag (Ian Kent) [1672134] - [fs] autofs: make expire flags usage consistent with v5 params (Ian Kent) [1672134] - [fs] autofs: make autofs_expire_indirect() static (Ian Kent) [1672134] - [fs] autofs: make autofs_expire_direct() static (Ian Kent) [1672134] - [fs] autofs: fix clearing AUTOFS_EXP_LEAVES in autofs_expire_indirect() (Ian Kent) [1672134] - [fs] autofs: fix inconsistent use of now variable (Ian Kent) [1672134] - [md] md: Fix failed allocation of md_register_thread (Nigel Croxon) [1665346] - [md] It's wrong to add len to sector_nr in raid10 reshape twice (Nigel Croxon) [1665346] - [md] raid5: set write hint for PPL (Nigel Croxon) [1665346] - [netdrv] amd-xgbe: Fix mdio access for non-zero ports and clause 45 PHYs (Gary Hook) [1669565]- [x86] x86/retpolines: Disable switch jump tables when retpolines are enabled (Waiman Long) [1688258] - [x86] x86, retpolines: Raise limit for generating indirect calls from switch-case (Waiman Long) [1688258] - [net] vsock/virtio: fix kernel panic from virtio_transport_reset_no_sock (Stefano Garzarella) [1676595] - [net] vsock/virtio: reset connected sockets on device removal (Stefano Garzarella) [1676595] - [net] vsock/virtio: fix kernel panic after device hot-unplug (Stefano Garzarella) [1676595] - [powerpc] powerpc/livepatch: return -ERRNO values in save_stack_trace_tsk_reliable() (Joe Lawrence) [1659856] - [powerpc] powerpc/livepatch: small cleanups in save_stack_trace_tsk_reliable() (Joe Lawrence) [1659856] - [powerpc] powerpc/livepatch: relax reliable stack tracer checks for first-frame (Joe Lawrence) [1659856] - [powerpc] powerpc/64s: Make reliable stacktrace dependency clearer (Joe Lawrence) [1659856] - [powerpc] powerpc/64s: Clear on-stack exception marker upon exception return (Joe Lawrence) [1659856] - [infiniband] iw_cxgb4: Support FW write completion WR (Arjun Vynipadath) [1671320] - [infiniband] iw_cxgb4: RDMA write with immediate support (Arjun Vynipadath) [1671320] - [infiniband] rdma/cxgb4: fix some info leaks (Arjun Vynipadath) [1671320] - [infiniband] rdma/cxgb4: Add support for 64Byte cqes (Arjun Vynipadath) [1671320] - [pci] pci: remove unused functionality (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] aacraid: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] be2iscsi: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] mpt3sas: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] qla2xxx: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] qla4xxx: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] megaraid_sas: add removed id table" (Tomas Henzl) [1622638] - [scsi] lfpc: remove Lancer FCoE (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] lpfc: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] lfpc: add Lancer FCoE to the removed devices" (Tomas Henzl) [1622638]- [kernel] printk: Export console_printk (Prarit Bhargava) [1642870] - [video] fbcon: Silence fbcon logo on 'quiet' boots (Prarit Bhargava) [1642870] - [scsi] scsi: ibmvscsi: Fix empty event pool access during host removal (Steve Best) [1692463] - [scsi] scsi: ibmvscsi: Protect ibmvscsi_head from concurrent modificaiton (Steve Best) [1692463] - [scsi] scsi: ibmvscsi: Improve strings handling (Steve Best) [1692463] - [x86] x86/mce: Handle varying MCA bank counts (David Arcari) [1668779] - [block] virtio_blk: add discard and write zeroes support (Stefano Garzarella) [1692939] - [arm64] arm64: kaslr: ensure randomized quantities are clean also when kaslr is off (Mark Salter) [1673068] - [arm64] arm64: kaslr: ensure randomized quantities are clean to the PoC (Mark Salter) [1673068] - [tools] perf annotate: Fix getting source line failure (Michael Petlan) [1614435] - [infiniband] IB/hfi1: Remove overly conservative VM_EXEC flag check (Alex Estrin) [1680018]- [scsi] scsi: qla2xxx: Fix NULL pointer crash due to stale CPUID (Himanshu Madhani) [1685013] - [scsi] scsi: core: Avoid that system resume triggers a kernel warning (Ewan Milne) [1691903] - [scsi] scsi: core: reset host byte in DID_NEXUS_FAILURE case (Ewan Milne) [1691903] - [scsi] scsi: core: Synchronize request queue PM status only on successful resume (Ewan Milne) [1691903] - [scsi] scsi: sd: Fix cache_type_store() (Ewan Milne) [1691903] - [scsi] scsi: sd: use mempool for discard special page (Ewan Milne) [1691903] - [scsi] scsi: core: Remove scsi_block_when_processing_errors: message (Ewan Milne) [1691903] - [scsi] scsi: core: Allow state transitions from OFFLINE to BLOCKED (Ewan Milne) [1691903] - [scsi] scsi: core: remove unnecessary unlikely() (Ewan Milne) [1691903] - [scsi] scsi: st: remove redundant pointer STbuffer (Ewan Milne) [1691903] - [scsi] scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock (Ewan Milne) [1691903] - [fs] scsi: sysfs: Introduce sysfs_{un,}break_active_protection() (Ewan Milne) [1691903] - [scsi] scsi sg: remove incorrect scsi command checking logic (Ewan Milne) [1691903] - [scsi] scsi: read host_busy via scsi_host_busy() (Ewan Milne) [1691903] - [scsi] scsi: sd: Remove a superfluous assignment (Ewan Milne) [1691903] - [scsi] scsi: don't add scsi command result bytes (Ewan Milne) [1691903] - [scsi] scsi: core: check for equality of result byte values (Ewan Milne) [1691903] - [scsi] scsi: scsi_transport_fc: use 64-bit timestamps consistently (Ewan Milne) [1691903] - [scsi] scsi: sg: clean up gfp_mask in sg_build_indirect (Ewan Milne) [1691903] - [scsi] scsi: core: remove Scsi_Cmnd typedef (Ewan Milne) [1691903] - [netdrv] ibmvnic: Report actual backing device speed and duplex values (Steve Best) [1691862] - [kernel] sched/fair: Fix O(nr_cgroups) in the load balancing path (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Fix insertion in rq->leaf_cfs_rq_list (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Add tmp_alone_branch assertion (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f6544b9c (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] tracing: Do a WARN_ON() if start_thread() in hwlat is called when thread exists (Jerome Marchand) [1693050] - [kernel] ftrace: Add missing check for existing hwlat thread (Jerome Marchand) [1693050] - [kernel] tracing: Do not call start/stop() functions when tracing_on does not change (Jerome Marchand) [1693050]- [scsi] scsi: lpfc: Fixup eq_clr_intr references (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix build error (Dick Kennedy) [1692882] - [scsi] scsi: be2iscsi: lpfc: fix typo (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.1 (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Update Copyright in driver version (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Enhance 6072 log string (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix duplicate log message numbers (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Specify node affinity for queue memory allocation (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Reduce memory footprint for lpfc_queue (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Add loopback testing to trunking mode (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix link speed reporting for 4-link trunk (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix handling of trunk links state reporting (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix protocol support on G6 and G7 adapters (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct boot bios information to FDMI registration (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix HDMI2 registration string for symbolic name (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix fc4type information for FDMI (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix FDMI manufacturer attribute value (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix io lost on host resets (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix mailbox hang on adapter init (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix driver crash in target reset handler (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct localport timeout duration error (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: nvmet: avoid hang / use-after-free when destroying targetport (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Convert bootstrap mbx polling from msleep to udelay (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Coordinate adapter error handling with offline handling (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Stop adapter if pci errors detected (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix deadlock due to nested hbalock call (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix nvmet handling of first burst cmd (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix lpfc_nvmet_mrq attribute handling when 0 (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix nvmet async receive buffer replenishment (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix location of SCSI ktime counters (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix use-after-free mailbox cmd completion (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Resolve irq-unsafe lockdep heirarchy warning in lpfc_io_free (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Resolve inconsistent check of hdwq in lpfc_scsi_cmd_iocb_cmpl (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix error codes in lpfc_sli4_pci_mem_setup() (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix 32-bit format string warning (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix unused variable warning (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: resolve static checker warning in lpfc_sli4_hba_unset (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct __lpfc_sli_issue_iocb_s4 lockdep check (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix calls to dma_set_mask_and_coherent() (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: use dma_set_mask_and_coherent (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Remove set but not used variable 'phys_id' (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix a handful of indentation issues (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix error code if kcalloc() fails (Dick Kennedy) [1692882] - [security] security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock (Ondrej Mosnacek) [1683296] - [security] selinux: add the missing walk_size + len check in selinux_sctp_bind_connect (Ondrej Mosnacek) [1683296] - [security] selinux: fix avc audit messages (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: replace BUG_ONs with WARN_ONs in avc.c (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: log invalid contexts in AVCs (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: replace some BUG_ON()s with a WARN_ON() (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: inline some AVC functions used only once (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: do not override context on context mounts (Ondrej Mosnacek) [1683296] - [security] selinux: never allow relabeling on context mounts (Ondrej Mosnacek) [1683296] - [security] selinux: stop passing MAY_NOT_BLOCK to the AVC upon follow_link (Ondrej Mosnacek) [1683296] - [security] selinux: avoid silent denials in permissive mode under RCU walk (Ondrej Mosnacek) [1683296] - [security] selinux: fix GPF on invalid policy (Ondrej Mosnacek) [1683296] - [security] selinux: overhaul sidtab to fix bug and improve performance (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: use separate table for initial SID lookup (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: make "selinux_policycap_names[]" const char * (Ondrej Mosnacek) [1683296] - [security] selinux: always allow mounting submounts (Ondrej Mosnacek) [1647723 1683296] - [security] selinux: refactor sidtab conversion (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: fix non-MLS handling in mls_context_to_sid() (Ondrej Mosnacek) [1683296] - [security] selinux: check length properly in SCTP bind hook (Ondrej Mosnacek) [1683296] - [security] selinux: policydb - fix byte order and alignment issues (Ondrej Mosnacek) [1668222 1683296] - [security] selinux: Add __GFP_NOWARN to allocation at str_read() (Ondrej Mosnacek) [1683296] - [security] selinux: refactor mls_context_to_sid() and make it stricter (Ondrej Mosnacek) [1683296] - [security] selinux: fix mounting of cgroup2 under older policies (Ondrej Mosnacek) [1683296] - [security] selinux: cleanup dentry and inodes on error in selinuxfs (Ondrej Mosnacek) [1683296] - [security] selinux: constify write_op[] (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netnode (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in avc (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netif (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netport (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in sidtab (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netlink (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in selinuxfs (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in services (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in avtab (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in hooks (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in policydb (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in ebitmap (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in conditional (Ondrej Mosnacek) [1683296] - [fs] fs/proc/kcore.c: fix invalid memory access in multi-page read optimization (Bhupesh Sharma) [1627539] - [fs] proc/kcore: add vmcoreinfo note to /proc/kcore (Bhupesh Sharma) [1627539] - [kernel] crash_core: use VMCOREINFO_SYMBOL_ARRAY() for swapper_pg_dir (Bhupesh Sharma) [1627539] - [fs] proc/kcore: optimize multiple page reads (Bhupesh Sharma) [1627539] - [fs] proc/kcore: clean up ELF header generation (Bhupesh Sharma) [1627539] - [fs] proc/kcore: hold lock during read (Bhupesh Sharma) [1627539] - [fs] proc/kcore: fix memory hotplug vs multiple opens race (Bhupesh Sharma) [1627539] - [fs] proc/kcore: replace kclist_lock rwlock with rwsem (Bhupesh Sharma) [1627539] - [fs] proc/kcore: don't grab lock for memory hotplug notifier (Bhupesh Sharma) [1627539] - [fs] proc/kcore: don't grab lock for kclist_add() (Bhupesh Sharma) [1627539]- [net] Merge branch 'linus/master' into rdma.git for-next (Jonathan Toppins) [1685304] - [netdrv] net: cisco: enic: Replace GFP_ATOMIC with GFP_KERNEL (Jonathan Toppins) [1685304] - [infiniband] RDMA/providers: Remove pointless functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/usnic: Suppress a compiler warning (Jonathan Toppins) [1685304] - [infiniband] IB/usnic: usnic should not select INFINIBAND_USER_ACCESS (Jonathan Toppins) [1685304] - [infiniband] RDMA/vmw_pvrdma: Delete unused function (Jonathan Toppins) [1685304] - [infiniband] IB/usnic: Update with bug fixes from core code (Jonathan Toppins) [1685304] - [infiniband] RDMA/providers: Fix return value from create_srq callbacks (Jonathan Toppins) [1685304] - [infiniband] RDMA/rxe: Simplify the error handling code in rxe_create_ah() (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: avoid unnecessary NULL check (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: increase max MR limit (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: Do not hide uABI stuff in memcpy (Jonathan Toppins) [1685304] - [net] rpc: remove unneeded variable 'ret' in rdma_listen_handler (Jonathan Toppins) [1685304] - [net] svcrdma: Clean up Read chunk path (Jonathan Toppins) [1685304] - [net] svcrdma: Avoid releasing a page in svc_xprt_release() (Jonathan Toppins) [1685304] - [net] sunrpc: remove redundant variables 'checksumlen', 'blocksize' and 'data' (Jonathan Toppins) [1685304] - [scsi] scsi: target: srp, vscsi, sbp, qla: use target_remove_session (Jonathan Toppins) [1685304] - [target] scsi: target: add session removal function (Jonathan Toppins) [1685304] - [target] scsi: target: rename target_alloc_session (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Fix check for return code from ib_create_srq (Jonathan Toppins) [1685304] - [infiniband] IB/ipoib: Fix error return code in ipoib_dev_init() (Jonathan Toppins) [1685304] - [infiniband] IPoIB: use kvzalloc to allocate an array of bucket pointers (Jonathan Toppins) [1685304] - [infiniband] ib_srpt: use kvmalloc to allocate ring pointers (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Fix return code from ipoib_cm_dev_init (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Remove set-but-not-used variables (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Prefer unsigned int to bare use of unsigned (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Use min_t() macro instead of min() (Jonathan Toppins) [1685304] - [infiniband] IB/srp: Remove driver version and release data information (Jonathan Toppins) [1685304] - [target] scsi: target: Remove second argument from fabric_make_tpg() (Jonathan Toppins) [1685304] - [infiniband] IB/iser: set can_queue earlier to allow setting higher queue depth (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Set right entry state before releasing reference (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Free uapi on destroy (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Fix error cleanup path of ib_uverbs_add_one() (Jonathan Toppins) [1685304] - [infiniband] IB/core: Release object lock if destroy failed (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: fix UCM link error (Jonathan Toppins) [1685304] - [infiniband] IB/core: Change filter function return type from int to bool (Jonathan Toppins) [1685304] - [infiniband] IB/core: Update GID entries for netdevice whose mac address changes (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add default GIDs of the bond master netdev (Jonathan Toppins) [1685304] - [infiniband] IB/core: Consider adding default GIDs of bond device (Jonathan Toppins) [1685304] - [infiniband] IB/core: Delete lower netdevice default GID entries in bonding scenario (Jonathan Toppins) [1685304] - [infiniband] IB/core: Avoid confusing del_netdev_default_ips (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add comment for change upper netevent handling (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: Fix compiling ucm.c (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not check for device disassociation during ioctl (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove struct uverbs_root_spec and all supporting code (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_api to unmarshal ioctl commands (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_alloc for allocations (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a simple allocator to uverbs_attr_bundle (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove the ib_uverbs_attr pointer from each attr (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Provide implementation private memory for the uverbs_attr_bundle (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_api to manage the object type inside the uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Build the specs into a radix tree at runtime (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Have the core code create the uverbs_root_spec (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Fix reading of 32 bit flags (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: Initialize sgid request GID attribute pointer (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow all DESTROY commands to succeed after disassociate (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not block disassociate during write() (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not pass struct ib_device to the ioctl methods (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not pass struct ib_device to the write based methods (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Lower the test for ongoing disassociation (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow uobject allocation to work concurrently with disassociate (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow RDMA_REMOVE_DESTROY to work concurrently with disassociate (Jonathan Toppins) [1685304] - [include] IB/uverbs: Convert 'bool exclusive' into an enum (Jonathan Toppins) [1685304] - [include] IB/uverbs: Consolidate uobject destruction (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Make the write path destroy methods use the same flow as ioctl (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove rdma_explicit_destroy() from the ioctl methods (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Prefix _ib to IB/RoCE specific functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Simplify gid type check in cma_acquire_dev() (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Return bool instead of int (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Get rid of 1 bit boolean (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Constify path record, ib_cm_event, listen_id pointers (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Constify dst_addr argument (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Simplify rdma_resolve_addr() error flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Initialize resource type in __rdma_create_id() (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Check for verbs callbacks before using them (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove {create,destroy}_ah from mandatory verbs (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add UVERBS_ATTR_FLAGS_IN to the specs language (Jonathan Toppins) [1685304] - [infiniband] RDMA, core and ULPs: Declare ib_post_send() and ib_post_recv() arguments const (Jonathan Toppins) [1685304] - [infiniband] IB/mlx5, ib_post_send(), IB_WR_REG_SIG_MR: Do not modify the 'wr' argument (Jonathan Toppins) [1685304] - [net] net/xprtrdma: Restore needed argument to ib_post_send (Jonathan Toppins) [1685304] - [net] net/xprtrdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [nvme] nvmet-rdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [nvme] nvme-rdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/srpt: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/srp: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/isert: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/IPoIB: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] RDMA: Constify the argument of the work request conversion functions (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Inline two work request conversion functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Consider netdevice for RoCE ports (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce and use sgid_attr in CM requests (Jonathan Toppins) [1685304] - [infiniband] IB/core: Remove extra parentheses (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Fix locking around struct ib_uverbs_file ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Move the FD uobj type struct file allocation to alloc_commit (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Always propagate errors from rdma_alloc_commit_uobject() (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Rework the locking for cleaning up the ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Revise and clarify the rwsem and uobjects_lock (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Clarify and revise uverbs_close_fd (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Revise the placement of get/puts on uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Clarify the kref'ing ordering for alloc_commit (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Handle IDR and FD types without truncation (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Get rid of null_obj_type (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [include] IB/core: Allow ULPs to specify NULL as the third ib_post_(send|recv|srq_recv)() argument (Jonathan Toppins) [1685304] - [include] IB/mlx5: Introduce driver create and destroy flow methods (Jonathan Toppins) [1685304] - [infiniband] IB: Support ib_flow creation in drivers (Jonathan Toppins) [1685304] - [infiniband] IB/mlx5: Introduce flow steering matcher uapi object (Jonathan Toppins) [1685304] - [include] IB/uverbs: Move ib_access_flags and ib_read_counters_flags to uapi (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove cma_multicast->igmp_joined (Jonathan Toppins) [1685304] - [infiniband] RDMA/umem: Refactor exit paths in ib_umem_get (Jonathan Toppins) [1685304] - [infiniband] IB: Enable uverbs_destroy_def_handler to be used by drivers (Jonathan Toppins) [1685304] - [include] IB/uverbs: Pass IB_UVERBS_QPF_GRH_REQUIRED to user space (Jonathan Toppins) [1685304] - [infiniband] RDMA: Validate grh_required when handling AVs (Jonathan Toppins) [1685304] - [infiniband] RDMA/hfi1: Move grh_required into update_sm_ah (Jonathan Toppins) [1685304] - [infiniband] IB/core: Simplify check for RoCE route resolve (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not use uverbs_cmd_mask in the ioctl path (Jonathan Toppins) [1685304] - [infiniband] RDMA/rw: Fix rdma_rw_ctx_signature_init() kernel-doc header (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove set-but-not-used variables (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove ib_find_cached_gid() and ib_find_cached_gid_by_port() (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove unused and erroneous msg sequence encoding (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace ib_ucq_object uverbs_file with the one in ib_uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove ib_uobject_file (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Tidy up remaining references to ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace file->ucontext with file in uverbs_cmd.c (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace ib_ucontext with ib_uverbs_file in core function calls (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Move non driver related elements from ib_ucontext to ib_ufile (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a uobj_perform_destroy helper (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Combine MIN_SZ_OR_ZERO with UVERBS_ATTR_STRUCT (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Use UVERBS_ATTR_MIN_SIZE correctly and uniformly (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Remove UA_FLAGS (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Get rid of the & in method specifications (Jonathan Toppins) [1685304] - [infiniband] IB: Improve uverbs_cleanup_ucontext algorithm (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify UVERBS_OBJECT and _TREE family of macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify method definition macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify UVERBS_ATTR family of macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Split UVERBS_ATTR_FLOW_ACTION_ESP_HANDLE (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Store the specs_root in the struct ib_uverbs_device (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove now useless rcu_lock in dst_fetch_ha (Jonathan Toppins) [1685304] - [infiniband] IB/core: Check for rdma_protocol_ib only after validating port_num (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Remove redundant check (Jonathan Toppins) [1685304] - [infiniband] RDMA/umem: Don't check for a negative return value of dma_map_sg_attrs() (Jonathan Toppins) [1685304] - [infiniband] RDMA/verbs: Drop kernel variant of destroy_flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/verbs: Drop kernel variant of create_flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Check existence of create_flow callback (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove unused ib cache functions (Jonathan Toppins) [1685304] - [infiniband] Revert "[infiniband] RDMA/hns: Only assgin the fields of the av if IB_QP_AV bit is set" (Jonathan Toppins) [1685304] - [infiniband] RDMA: Convert drivers to use the AH's sgid_attr in post_wr paths (Jonathan Toppins) [1685304] - [infiniband] IB/mlx4: Use GID attribute from ah attribute (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: Use rdma GID API (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Use sgid_attr from the AV (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Replace members of sa_path_rec with 'struct sgid_attr *' (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Pass the sgid_attr through various events (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Keep track of the sgid_attr that created the cm id (Jonathan Toppins) [1685304] - [infiniband] IB: Make init_ah_attr_grh_fields set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Make ib_init_ah_from_mcmember set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Make ib_init_ah_attr_from_wc set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB/core: Free GID table entry during GID deletion (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Consider net namespace while leaving multicast group (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Delete type and id from uverbs_obj_attr (Jonathan Toppins) [1685304] - [infiniband] IB/rdmavt, IB/hfi1: Create device dependent s_flags (Jonathan Toppins) [1685304] - [infiniband] IB/core: Expose ib_ucontext from a given ib_uverbs_file (Jonathan Toppins) [1685304] - [include] IB/core: Introduce DECLARE_UVERBS_GLOBAL_METHODS (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow an empty namespace in ioctl() framework (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a macro to define a type with no kernel known size (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add PTR_IN attributes that are allocated/copied automatically (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Refactor uverbs_finalize_objects (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Export uverbs idr and fd types (Jonathan Toppins) [1685304] - [infiniband] IB/mad: Use IDR for agent IDs (Jonathan Toppins) [1685304] - [infiniband] RDMA: Hold the sgid_attr inside the struct ib_ah/qp (Jonathan Toppins) [1685304] - [infiniband] RDMA: Convert drivers to use sgid_attr instead of sgid_index (Jonathan Toppins) [1685304] - [infiniband] IB{cm, core}: Introduce and use ah_attr copy, move, replace APIs (Jonathan Toppins) [1685304] - [infiniband] IB/core: Tidy ib_resolve_eth_dmac (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add a sgid_attr pointer to struct rdma_ah_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Ensure that all rdma_ah_attr's are zero initialized (Jonathan Toppins) [1685304] - [infiniband] IB/mad: Agent registration is process context only (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Refactor flow_resources_alloc() function (Jonathan Toppins) [1685304] - [infiniband] RDMA/nldev: Return port capability flag for IB only (Jonathan Toppins) [1685304] - [net] RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr (Jonathan Toppins) [1685304] - [include] IB/cache: Restore compatibility for ib_query_gid (Jonathan Toppins) [1685304] - [infiniband] IB: Replace ib_query_gid/ib_get_cached_gid with rdma_query_gid (Jonathan Toppins) [1685304] - [infiniband] IB/core: Make rdma_find_gid_by_filter support all protocols (Jonathan Toppins) [1685304] - [infiniband] IB/core: Provide rdma_ versions of the gid cache API (Jonathan Toppins) [1685304] - [infiniband] IB/core: Replace ib_query_gid with rdma_get_gid_attr (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce GID attribute get, put and hold APIs (Jonathan Toppins) [1685304] - [infiniband] RDMA: Use GID from the ib_gid_attr during the add_gid() callback (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce GID entry reference counts (Jonathan Toppins) [1685304] - [infiniband] IB/core: Store default GID property per-table instead of per-entry (Jonathan Toppins) [1685304] - [infiniband] IB/core: Do not set the gid type when reserving default entries (Jonathan Toppins) [1685304] - [include] IDR: Expose the XArray lock (Jonathan Toppins) [1688319] - [x86] x86/cpufeatures: Enumerate MOVDIR64B instruction (Steve Best) [1482754] - [x86] x86/cpufeatures: Enumerate MOVDIRI instruction (Steve Best) [1482754] - [nvme] nvme: allow ANA support to be independent of native multipathing (Ewan Milne) [1690940] - [nvme] nvme: multipath: Change default of kernel NVMe multipath to be disabled (Ewan Milne) [1690940] - [nvme] nvme: convert to SPDX identifiers (Ewan Milne) [1690940] - [nvme] nvme-multipath: round-robin I/O policy (Ewan Milne) [1690940] - [nvme] nvme-multipath: drop optimization for static ANA group IDs (Ewan Milne) [1690940] - [nvme] nvme-multipath: zero out ANA log buffer (Ewan Milne) [1690940] - [nvme] nvme-fc: fix numa_node when dev is null (Ewan Milne) [1690940] - [nvme] nvme: add a numa_node field to struct nvme_ctrl (Ewan Milne) [1690940] - [nvme] nvme: update node paths after adding new path (Ewan Milne) [1690940] - [nvme] nvme: take node locality into account when selecting a path (Ewan Milne) [1690940] - [s390] s390/mm: Fix ERROR: "__node_distance" undefined! (Ewan Milne) [1690940] - [nvme] nvme: call nvme_complete_rq when nvmf_check_ready fails for mpath I/O (Ewan Milne) [1690940] - [nvme] nvme: properly propagate errors in nvme_mpath_init (Ewan Milne) [1690940] - [nvme] nvme: fixup crash on failed discovery (Ewan Milne) [1690940] - [nvme] nvme: add ANA support (Ewan Milne) [1690940] - [include] nvme.h: fixup ANA group descriptor format (Ewan Milne) [1690940] - [include] nvme.h: add ANA definitions (Ewan Milne) [1690940] - [nvme] nvme: remove nvme_req_needs_failover (Ewan Milne) [1690940] - [nvme] nvme: simplify the API for getting log pages (Ewan Milne) [1690940] - [include] nvme.h: add support for the log specific field (Ewan Milne) [1690940]- [md] dm writecache: set "Tech Preview" taint using mark_tech_preview() (Mike Snitzer) [1690587] - [md] dm integrity: limit the rate of error messages (Mike Snitzer) [1690105] - [md] dm snapshot: don't define direct_access if we don't support it (Mike Snitzer) [1690105] - [md] dm cache: add support for discard passdown to the origin device (Mike Snitzer) [1690105] - [md] dm writecache: fix typo in name for writeback_wq (Mike Snitzer) [1690105] - [md] dm thin: add sanity checks to thin-pool and external snapshot creation (Mike Snitzer) [1690105] - [md] dm block manager: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm verity fec: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm integrity: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm switch: use struct_size() in kzalloc() (Mike Snitzer) [1690105] - [md] dm: remove unused _rq_tio_cache and _rq_cache (Mike Snitzer) [1690105] - [md] dm crypt: don't overallocate the integrity tag space (Mike Snitzer) [1690105] - [md] dm: eliminate 'split_discard_bios' flag from DM target interface (Mike Snitzer) [1690105] - [md] dm: always call blk_queue_split() in dm_process_bio() (Mike Snitzer) [1690105] - [md] dm: update dm_process_bio() to split bio if in ->make_request_fn() (Mike Snitzer) [1690105] - [md] dm rq: remove unused arguments from rq_completed() (Mike Snitzer) [1690105] - [md] dm integrity: replace open-coded allocation size multiplication (Mike Snitzer) [1690105] - [md] dm: Remove VLA usage from hashes (Mike Snitzer) [1690105] - [crypto] crypto: hash - Remove VLA usage (Mike Snitzer) [1690105] - [md] dm: Avoid namespace collision with bitmap API (Mike Snitzer) [1690105] - [md] md/dm-writecache: Don't request pointer dummy_addr when not required (Mike Snitzer) [1690105] - [scsi] scsi: qla2xxx: avoid printf format warning (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix issue reported by static checker for qla2x00_els_dcmd2_sp_done() (Himanshu Madhani) [1664534] - [scsi] qla2xxx: Update driver version to 10.00.00.14.08.1-k (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Avoid PCI IRQ affinity mapping when multiqueue is not supported (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add new FW dump template entry types (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix code indentation for qla27xx_fwdt_entry (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move marker request behind QPair (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent SysFS access when chip is down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add support for setting port speed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent multiple ADISC commands per session (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Check for FW started flag before aborting (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix unload when NVMe devices are configured (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add First Burst support for FC-NVMe devices (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: remove redundant null check on pointer sess (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move debug messages before sending srb preventing panic (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Use complete switch scan for RSCN events (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix fw options handle eh_bus_reset() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Restore FAWWPN of Physical Port only for loop down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent memory leak for CT req/rsp allocation (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix SRB allocation flag to avoid sleeping in IRQ context (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: allow session delete to finish before create. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fix fcport null pointer access. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: flush IO on chip reset or sess delete (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix session cleanup hang (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Change default ZIO threshold. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add pci function reset support. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix N2N target discovery with Local loop (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: no need to check return value of debugfs_create functions (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix DMA error when the DIF sg buffer crosses 4GB boundary (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add protection mask module parameters (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix for FC-NVMe discovery for NPIV port (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix NPIV handling for FC-NVMe (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Enable FC-NVME on NPIV ports (Himanshu Madhani) [1664534] - [scsi] Revert "scsi: qla2xxx: Fix NVMe Target discovery" (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: NULL check before some freeing functions is not needed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Split the __qla2x00_abort_all_cmds() function (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Introduce a switch/case statement in qlt_xmit_tm_rsp() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix a typo in MODULE_PARM_DESC (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove two arguments from qlafx00_error_entry() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Make sure that qlafx00_ioctl_iosb_entry() initializes 'res' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove a set-but-not-used variable (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Make qla2x00_sysfs_write_nvram() easier to analyze (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Declare local functions 'static' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Improve several kernel-doc headers (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Modify fall-through annotations (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fully convert to the generic DMA API (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Simplify conditional check (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove unnecessary self assignment (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Return switch command on a timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move log messages before issuing command to firmware (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix for double free of SRB structure (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix recursive mailbox timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix NVMe Target discovery (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: don't allow negative thresholds (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix comment in MODULE_PARM_DESC in qla2xxx (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove set but not used variable 'ptr_dma' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fix typo "CT-PASSTRHU" -> "CT-PASSTHRU" (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix an endian bug in fcpcmd_is_corrupted() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix double increment of switch scan retry count (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix duplicate switch's Nport ID entries (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix premature command free (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Reject bsg request if chip is down. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: shutdown chip if reset fail (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix stuck session in PLOGI state (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix early srb free on abort (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add mode control for each physical port (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix race condition for resource cleanup (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix dropped srb resource. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix port speed display on chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Check for Register disconnect (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Increase abort timeout value (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Allow FC-NVMe underrun to be handled by transport (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move ABTS code behind qpair (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove stale ADISC_DONE event (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix Remote port registration (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove ASYNC GIDPN switch command (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Reduce holding sess_lock to prevent CPU lock-up (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move {get|rel}_sp to base_qpair struct (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add support for ZIO6 interrupt threshold (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix out of order Termination and ABTS response (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add logic to detect ABTS hang and response completion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add appropriate debug info for invalid RX_ID (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix deadlock between ATIO and HW lock (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Serialize mailbox request (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Terminate Plogi/PRLI if WWN is 0 (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Defer chip reset until target mode is enabled (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove all rports if fabric scan retry fails (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Force fw cleanup on ADISC error (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Turn off IOCB timeout timer on IOCB completion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Decrement login retry count for only plogi (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move rport registration out of internal work_list (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove redundant check for fcport deletion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Update rscn_rcvd field to more meaningful scan_needed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Use correct qpair for ABTS/CMD (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix process response queue for ISP26XX and above (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Migrate NVME N2N handling into state machine (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Save frame payload size from ICB (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix race between switch cmd completion and timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix Management Server NPort handle reservation logic (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Flush mailbox commands on chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix session state stuck in Get Port DB (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix redundant fc_rport registration (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Silent erroneous message (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent sysfs access when chip is down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add longer window for chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix login retry count (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix N2N link re-connect (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Cleanup for N2N code (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: remove irq save in qla2x00_poll() (Himanshu Madhani) [1664534] - [netdrv] ice: Do autoneg based on VSI state (Jonathan Toppins) [1687903] - [fs] xfs: use the latest extent at writeback delalloc conversion time (Brian Foster) [1661968] - [fs] xfs: create delalloc bmapi wrapper for full extent allocation (Brian Foster) [1661968] - [fs] xfs: remove superfluous writeback mapping eof trimming (Brian Foster) [1661968] - [fs] xfs: validate writeback mapping using data fork seq counter (Brian Foster) [1661968] - [fs] xfs: update fork seq counter on data fork changes (Brian Foster) [1661968] - [fs] xfs: eof trim writeback mapping as soon as it is cached (Brian Foster) [1661968] - [perf] drivers/perf: hisi: update the sccl_id/ccl_id when MT is supported (Xiaojun Tan) [1677815]- [x86] x86/hyperv: Fix kernel panic when kexec on HyperV (Kairui Song) [1684451] - [rpmspec] apply linux-kernel-test.patch when building ("Herton R. Krzesinski") [1690534] - [netdrv] net: ena: update driver version from 2.0.2 to 2.0.3 (John Linville) [1690106] - [netdrv] net: ena: fix race between link up and device initalization (John Linville) [1690106] - [netdrv] net: phy: add phy_speed_down and phy_speed_up (Petr Oros) [1690131] - [netdrv] net: phy: add helper phy_config_aneg (Petr Oros) [1690131] - [nvme] nvme-fabrics: convert to SPDX identifiers (Ewan Milne) [1690909] - [nvme] nvme-fabrics: fix ctrl_loss_tmo < 0 to reconnect forever (Ewan Milne) [1690909] - [nvme] nvme-fc: reject reconnect if io queue count is reduced to zero (Ewan Milne) [1690601] - [nvme] nvme-fc: use nr_phys_segments to determine existence of sgl (Ewan Milne) [1690601] - [include] nvme-fc: convert to SPDX identifiers (Ewan Milne) [1690601] - [nvme] nvme-fc: initialize nvme_req(rq)->ctrl after calling __nvme_fc_init_request() (Ewan Milne) [1690601] - [nvme] nvme-fc: fix request private initialization (Ewan Milne) [1690601] - [nvme] nvme-fc: rework the request initialization code (Ewan Milne) [1690601] - [nvme] nvme-fc: introduce struct nvme_fcp_op_w_sgl (Ewan Milne) [1690601] - [nvme] nvme: cache struct nvme_ctrl reference to struct nvme_request (Ewan Milne) [1690601] - [nvme] nvme-fc: fix kernel-doc headers (Ewan Milne) [1690601] - [nvme] nvme_fc: add 'nvme_discovery' sysfs attribute to fc transport device (Ewan Milne) [1690601] - [nvme] nvme-fc: fix for a minor typos (Ewan Milne) [1690601] - [crypto] crypto: arm64/aes-ccm - fix logical bug in AAD MAC handling (Neil Horman) [1689185] - [mm] mm: enforce min addr even if capable() in expand_downwards() (Rafael Aquini) [1687667] {CVE-2019-9213} - [pci] PCI/VMD: Configure MPS settings before adding devices (Prarit Bhargava) [1659270] - [pci] PCI: vmd: Detach resources after stopping root bus (Prarit Bhargava) [1659270] - [char] tpm: separate cmd_ready/go_idle from runtime_pm (Jerry Snitselaar) [1677735] - [block] loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part() (Ming Lei) [1683593] - [block] loop: do not print warn message if partition scan is successful (Ming Lei) [1683593] - [block] loop: drop caches if offset or block_size are changed (Ming Lei) [1683593] - [block] block: loop: remove redundant code (Ming Lei) [1683593] - [block] block: loop: check error using IS_ERR instead of IS_ERR_OR_NULL in loop_add() (Ming Lei) [1683593] - [block] loop: Fix double mutex_unlock(&loop_ctl_mutex) in loop_control_ioctl() (Ming Lei) [1683593] - [block] loop: Get rid of 'nested' acquisition of loop_ctl_mutex (Ming Lei) [1683593] - [block] loop: Avoid circular locking dependency between loop_ctl_mutex and bd_mutex (Ming Lei) [1683593] - [block] loop: Fix deadlock when calling blkdev_reread_part() (Ming Lei) [1683593] - [block] loop: Move loop_reread_partitions() out of loop_ctl_mutex (Ming Lei) [1683593] - [block] loop: Move special partition reread handling in loop_clr_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_change_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_set_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_set_status() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_get_status() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down into loop_clr_fd() (Ming Lei) [1683593] - [block] loop: Split setting of lo_state from loop_clr_fd (Ming Lei) [1683593] - [block] loop: Push lo_ctl_mutex down into individual ioctls (Ming Lei) [1683593] - [block] loop: Get rid of loop_index_mutex (Ming Lei) [1683593] - [block] loop: Fold __loop_release into loop_release (Ming Lei) [1683593] - [block] block/loop: Use global lock for ioctl() operation. (Ming Lei) [1683593] - [block] block/loop: Don't grab "struct file" for vfs_getattr() operation. (Ming Lei) [1683593] - [crypto] crypto: cfb - fix decryption (Herbert Xu) [1653188]- [misc] VMCI: Support upto 64-bit PPNs (Cathy Avery) [1683479] - [mm] mm, page_alloc: fix has_unmovable_pages for HugePages (David Gibson) [1688114] - [pci] PCI: pciehp: Disable Data Link Layer State Changed event on suspend (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Assign ctrl->slot_ctrl before writing it to hardware (Myron Stowe) [1688393 1537397] - [pci] PCI/AER: Queue one GHES event, not several uninitialized ones (Myron Stowe) [1688393 1537397] - [pci] PCI/AER: Refactor error injection fallbacks (Myron Stowe) [1688393] - [pci] PCI/AER: Reuse existing pcie_port_find_device() interface (Myron Stowe) [1688393] - [pci] PCI/AER: Use managed resource allocations (Myron Stowe) [1688393] - [pci] PCI/AER: Use threaded IRQ for bottom half (Myron Stowe) [1688393] - [pci] PCI/AER: Use kfifo_in_spinlocked() to insert locked elements (Myron Stowe) [1688393] - [pci] PCI/AER: Use kfifo for tracking events instead of reimplementing it (Myron Stowe) [1688393] - [pci] PCI/AER: Remove error source from AER struct aer_rpc (Myron Stowe) [1688393] - [pci] PCI/AER: Remove unused aer_error_resume() (Myron Stowe) [1688393] - [pci] PCI: pnv_php: Use kmemdup() (Myron Stowe) [1688393] - [pci] PCI: cpqphp: Remove set but not used variable 'physical_slot' (Myron Stowe) [1688393] - [pci] PCI/ERR: Remove duplicated include from err.c (Myron Stowe) [1688393] - [pci] PCI: Equalize hotplug memory and io for occupied and empty slots (Myron Stowe) [1688393] - [pci] PCI / ACPI: Whitelist D3 for more PCIe hotplug ports (Myron Stowe) [1688393 1537397] - [acpi] ACPI / property: Allow multiple property compatible _DSD entries (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Implement runtime PM callbacks (Myron Stowe) [1688393 1537397] - [pci] PCI/portdrv: Resume upon exit from system suspend if left runtime suspended (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Do not handle events if interrupts are masked (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Disable hotplug interrupt during suspend (Myron Stowe) [1688393 1537397] - [pci] PCI / ACPI: Enable wake automatically for power managed bridges (Myron Stowe) [1688393 1537397] - [pci] PCI: Do not skip power-managed bridges in pci_enable_wake() (Myron Stowe) [1688393 1537397] - [pci] PCI: Unify device inaccessible (Myron Stowe) [1688393] - [pci] PCI/ERR: Always report current recovery status for udev (Myron Stowe) [1688393] - [pci] PCI/ERR: Simplify broadcast callouts (Myron Stowe) [1688393] - [pci] PCI/ERR: Run error recovery callbacks for all affected devices (Myron Stowe) [1688393] - [pci] PCI/ERR: Handle fatal error recovery (Myron Stowe) [1688393] - [pci] PCI/ERR: Use slot reset if available (Myron Stowe) [1688393] - [pci] PCI/AER: Don't read upstream ports below fatal errors (Myron Stowe) [1688393] - [pci] PCI/AER: Take reference on error devices (Myron Stowe) [1688393] - [pci] PCI/DPC: Save and restore config state (Myron Stowe) [1688393] - [pci] PCI: portdrv: Restore PCI config state on slot reset (Myron Stowe) [1688393] - [pci] PCI: portdrv: Initialize service drivers directly (Myron Stowe) [1688393] - [x86] x86/intel_rdt: Show missing resctrl mount options (David Arcari) [1689043] - [xen] xen/balloon: Fix mapping PG_offline pages to user space (David Hildenbrand) [1652790] - [kernel] PM/Hibernate: exclude all PageOffline() pages (David Hildenbrand) [1652790] - [kernel] PM/Hibernate: use pfn_to_online_page() (David Hildenbrand) [1652790] - [hv] hv_balloon: mark inflated pages PG_offline (David Hildenbrand) [1652790] - [xen] xen/balloon: mark inflated pages PG_offline (David Hildenbrand) [1652790] - [kernel] kexec: export PG_offline to VMCOREINFO (David Hildenbrand) [1652790] - [include] mm: convert PG_balloon to PG_offline (David Hildenbrand) [1652790] - [include] mm: balloon: update comment about isolation/migration/compaction (David Hildenbrand) [1652790] - [mm] mm/page_alloc.c: memory hotplug: free pages as higher order (David Hildenbrand) [1652790] - [mm] mm/memory.c: do_fault: avoid usage of stale vm_area_struct ("Herton R. Krzesinski") [1684734] - [kernel] cpuset: remove unused task_has_mempolicy() (Waiman Long) [1548268] - [kernel] cpuset: Remove set but not used variable 'cs' (Waiman Long) [1548268] - [kernel] cgroup: Add .__DEBUG__. prefix to debug file names (Waiman Long) [1548268] - [kernel] cpuset: Minor cgroup2 interface updates (Waiman Long) [1548268] - [kernel] cpuset: Expose cpuset.cpus.subpartitions with cgroup_debug (Waiman Long) [1548268] - [documentation] cpuset: Add documentation about the new "cpuset.sched.partition" flag (Waiman Long) [1548268] - [kernel] cpuset: Use descriptive text when reading/writing cpuset.sched.partition (Waiman Long) [1548268] - [kernel] cpuset: Expose cpus.effective and mems.effective on cgroup v2 root (Waiman Long) [1548268] - [kernel] cpuset: Make generate_sched_domains() work with partition (Waiman Long) [1548268] - [kernel] cpuset: Make CPU hotplug work with partition (Waiman Long) [1548268] - [kernel] cpuset: Track cpusets that use parent's effective_cpus (Waiman Long) [1548268] - [kernel] cpuset: Add an error state to cpuset.sched.partition (Waiman Long) [1548268] - [kernel] cpuset: Add new v2 cpuset.sched.partition flag (Waiman Long) [1548268] - [kernel] cpuset: Simply allocation and freeing of cpumasks (Waiman Long) [1548268] - [kernel] cpuset: Define data structures to support scheduling partition (Waiman Long) [1548268] - [kernel] cpuset: Enable cpuset controller in default hierarchy (Waiman Long) [1548268] - [kernel] cgroup/tracing: Move taking of spin lock out of trace event handlers (Waiman Long) [1548268] - [powerpc] powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables (David Gibson) [1674410] - [pci] PCI: dwc: Fix MSI-X EP framework address calculation bug (Myron Stowe) [1687935] - [pci] PCI: cadence: Correct probe behaviour when failing to get PHY (Myron Stowe) [1687935] - [pci] PCI: mvebu: Fix PCI I/O mapping creation sequence (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Remove obsolete drivers/pci pattern from ACPI section (Myron Stowe) [1687935] - [pci] PCI: dwc: Fix scheduling while atomic issues (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Move mobiveil PCI driver entry where it belongs (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Update PPC contacts for PCI core error handling (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Add Gustavo Pimentel as DesignWare PCI maintainer (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Add entries for PPC64 RPA PCI hotplug drivers (Myron Stowe) [1687935] - [pci] PCI: mvebu: Drop bogus comment above mvebu_pcie_map_registers() (Myron Stowe) [1687935] - [pci] PCI: mvebu: Convert to use pci_host_bridge directly (Myron Stowe) [1687935] - [pci] PCI: mvebu: Use resource_size() to remap I/O space (Myron Stowe) [1687935] - [pci] PCI: mvebu: Only remap I/O space if configured (Myron Stowe) [1687935] - [pci] PCI: mvebu: Fix I/O space end address calculation (Myron Stowe) [1687935] - [pci] PCI: mvebu: Remove redundant platform_set_drvdata() call (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Add Kconfig/Makefile entries (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Add missing ../pci.h include (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type (Myron Stowe) [1687935] - [pci] PCI: endpoint: Add MSI set maximum restriction (Myron Stowe) [1687935] - [tools] tools: PCI: Add MSI-X support (Myron Stowe) [1687935] - [documentation] pci_endpoint_test: Add 2 ioctl commands (Myron Stowe) [1687935] - [documentation] pci-epf-test/pci_endpoint_test: Add MSI-X support (Myron Stowe) [1687935] - [misc] pci-epf-test/pci_endpoint_test: Use irq_type module parameter (Myron Stowe) [1687935] - [misc] pci-epf-test/pci_endpoint_test: Cleanup PCI_ENDPOINT_TEST memspace (Myron Stowe) [1687935] - [pci] PCI: dwc: Add legacy interrupt callback handler (Myron Stowe) [1687935] - [pci] PCI: dwc: Rework MSI callbacks handler (Myron Stowe) [1687935] - [pci] PCI: dwc: Add MSI-X callbacks handler (Myron Stowe) [1687935] - [pci] PCI: Update xxx_pcie_ep_raise_irq() and pci_epc_raise_irq() signatures (Myron Stowe) [1687935] - [pci] PCI: endpoint: Add MSI-X interfaces (Myron Stowe) [1687935] - [pci] PCI: dwc: Fix EP link notification implementation (Myron Stowe) [1687935] - [pci] PCI: spear13xx: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: qcom: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: histb: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: designware-plat: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: artpec6: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: armada8k: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: keystone: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: imx6: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: exynos: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: kirin: Add MSI support (Myron Stowe) [1687935] - [pci] PCI: pcie-cadence-ep: Remove redundant variable mmc (Myron Stowe) [1687935] - [pci] PCI: cadence: Add shutdown callback to host driver (Myron Stowe) [1687935] - [pci] PCI: cadence: Add Power Management ops for host and EP (Myron Stowe) [1687935] - [documentation] dt-bindings: PCI: cadence: Add DT bindings for optional PHYs (Myron Stowe) [1687935] - [pci] PCI: cadence: Add generic PHY support to host and EP drivers (Myron Stowe) [1687935] - [pci] PCI: cadence: Update cdns_pcie_writel() function signature (Myron Stowe) [1687935] - [pci] PCI: aardvark: Convert to use pci_host_probe() (Myron Stowe) [1687935] - [pci] PCI: aardvark: Size bridges before resources allocation (Myron Stowe) [1687935] - [pci] PCI: aardvark: Remove PCIe outbound window configuration (Myron Stowe) [1687935] - [pci] PCI: aardvark: Introduce an advk_pcie_valid_device() helper (Myron Stowe) [1687935] - [pci] PCI/xilinx: Depend on OF instead of the ARCH (Myron Stowe) [1687935] - [md] md: convert to kvmalloc (Nigel Croxon) [1661200] - [md] raid1: simplify raid1_error function (Nigel Croxon) [1661200] - [md] md-linear: use struct_size() in kzalloc() (Nigel Croxon) [1661200] - [md] md/raid5: fix 'out of memory' during raid cache recovery (Nigel Croxon) [1661200] - [md] md: Make bio_alloc_mddev use bio_alloc_bioset (Nigel Croxon) [1661200] - [md] raid10: refactor common wait code from regular read/write request (Nigel Croxon) [1661200] - [md] md: remvoe redundant condition check (Nigel Croxon) [1661200] - [lib] lib/raid6: add option to skip algo benchmarking (Nigel Croxon) [1661200] - [include] lib/raid6: avoid __attribute_const__ redefinition (Nigel Croxon) [1661200] - [include] lib/raid6: add missing include for raid6test (Nigel Croxon) [1661200] - [md] md: remove set but not used variable 'bi_rdev' (Nigel Croxon) [1661200] - [md] MD: Memory leak when flush bio size is zero (Nigel Croxon) [1661200] - [md] md: fix memleak for mempool (Nigel Croxon) [1661200] - [md] md-cluster: remove suspend_info (Nigel Croxon) [1661200] - [md] md-cluster: send BITMAP_NEEDS_SYNC message if reshaping is interrupted (Nigel Croxon) [1661200] - [md] md-cluster/bitmap: don't call md_bitmap_sync_with_cluster during reshaping stage (Nigel Croxon) [1661200] - [md] md-cluster/raid10: don't call remove_and_add_spares during reshaping stage (Nigel Croxon) [1661200] - [md] md-cluster/raid10: call update_size in md_reap_sync_thread (Nigel Croxon) [1661200] - [md] md-cluster: introduce resync_info_get interface for sanity check (Nigel Croxon) [1661200] - [md] md-cluster/raid10: support add disk under grow mode (Nigel Croxon) [1661200] - [md] md-cluster/raid10: resize all the bitmaps before start reshape (Nigel Croxon) [1661200] - [md] MD: fix invalid stored role for a disk - try2 (Nigel Croxon) [1661200] - [md] md/bitmap: use mddev_suspend/resume instead of ->quiesce() (Nigel Croxon) [1661200] - [md] md: remove redundant code that is no longer reachable (Nigel Croxon) [1661200] - [md] md: allow metadata updates while suspending an array - fix (Nigel Croxon) [1661200] - [md] MD: fix invalid stored role for a disk (Nigel Croxon) [1661200] - [md] md/raid10: Fix raid10 replace hang when new added disk faulty (Nigel Croxon) [1661200] - [md] raid5: block failing device if raid will be failed (Nigel Croxon) [1661200] - [md] md-cluster: release RESYNC lock after the last resync message (Nigel Croxon) [1661200] - [md] RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0 (Nigel Croxon) [1661200] - [md] md/raid5-cache: disable reshape completely (Nigel Croxon) [1661200] - [md] md/raid5: fix data corruption of replacements after originals dropped (Nigel Croxon) [1661200] - [md] drivers/md/raid5: Do not disable irq on release_inactive_stripe_list() call (Nigel Croxon) [1661200] - [md] drivers/md/raid5: Use irqsave variant of atomic_dec_and_lock() (Nigel Croxon) [1661200] - [md] md/r5cache: remove redundant pointer bio (Nigel Croxon) [1661200] - [md] md-cluster: don't send msg if array is closing (Nigel Croxon) [1661200] - [md] md-cluster: show array's status more accurate (Nigel Croxon) [1661200] - [md] md-cluster: clear another node's suspend_area after the copy is finished (Nigel Croxon) [1661200] - [powerpc] KVM: PPC: Book3S HV: Add KVM stat largepages_[2M/1G] (Suraj Jitindar Singh) [1581563] - [tools] perf mem/c2c: Fix perf_mem_events to support powerpc (Steve Best) [1685084] - [powerpc] powerpc/perf: Add mem access events to sysfs (Steve Best) [1685084] - [netdrv] net-next/hinic: replace disable_irq_nosync/enable_irq (Xiaojun Tan) [1668958] - [powerpc] Fix access_ok() fallout for sparc32 and powerpc (Joe Lawrence) [1673980] - [x86] Remove 'type' argument from access_ok() function (Joe Lawrence) [1673980] - [arm64] arm64: move untagged_addr macro from uaccess.h to memory.h (Joe Lawrence) [1673980] - [powerpc] powerpc/uaccess: fix warning/error with access_ok() (Joe Lawrence) [1673980] - [netdrv] igb: shorten maximum PHC timecounter update interval (Corinna Vinschen) [1637098] - [netdrv] igb: shorten maximum PHC timecounter update interval (Corinna Vinschen) [1637098]- [rpmspec] redhat: speed up binary rpm compression (Denys Vlasenko) [1686921] - [netdrv] net/mlx5e: RX, Verify MPWQE stride size is in range (Alaa Hleihel) [1683589] - [fs] debugfs: Fix EPERM regression from kernel lockdown check (Lenny Szubowicz) [1686755] - [infiniband] IB/hfi1: Close race condition on user context disable and close (Alex Estrin) [1682927] - [rpmspec] redhat: parallelize modules compression (Denys Vlasenko) [1686404] - [arm64] arm64: Add workaround for Fujitsu A64FX erratum 010001 (Mark Langsdorf) [1666951] - [s390] vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem (Cornelia Huck) [1686044] - [drm] drm/cirrus: fix connector leak at unload (Rob Clark) [1685773] - [powerpc] powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area callback (Steve Best) [1685181] - [netdrv] net/mlx4_en: Force CHECKSUM_NONE for short ethernet frames (Alaa Hleihel) [1663914 1651509] - [netdrv] net/mlx5e: Force CHECKSUM_UNNECESSARY for short ethernet frames (Alaa Hleihel) [1651509] - [include] Fix RH_KABI_SET_SIZE to use dereference operator (Tony Camuso) [1670118]- [x86] x86/tsc: Make calibration refinement more robust (David Arcari) [1686254] - [powerpc] powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR configuration (Steve Best) [1686756] - [rpmspec] parallelize "make mrproper" (Denys Vlasenko) [1686865] - [rpmspec] use "make -jN" (via _smp_mflags) for modules_install (Denys Vlasenko) [1686308] - [fs] xfs: zero length symlinks are not valid (Carlos Maiolino) [1589618] - [drm] drm/bufs: Fix Spectre v1 vulnerability (Rob Clark) [1663467] - [drm] drm/ioctl: Fix Spectre v1 vulnerabilities (Rob Clark) [1663467] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.0 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Update 12.2.0.0 file copyrights to 2019 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix nvmet issues when link bounce under IO load (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct upcalling nvmet_fc transport during io done downcall (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix default driver parameter collision for allowing NPIV support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Rework locking on SCSI io completion (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Enable SCSI and NVME fc4s by default (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Resize cpu maps structures based on possible cpus (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Utilize new IRQ API when allocating MSI-X vectors (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Rework EQ/CQ processing to address interrupt coalescing (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: convert eq_delay to usdelay (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Support non-uniform allocation of MSIX vectors to hardware queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix setting affinity hints to correlate with hardware queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Allow override of hardware queue selection policies (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adapt partitioned XRI lists to efficient sharing (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Synchronize hardware queues with SCSI MQ interface (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Convert ring number to hardware queue for nvme wqe posting. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Move SCSI and NVME Stats to hardware queue structures (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adapt cpucheck debugfs logic to Hardware Queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: Remove unused FCP_XRI_ABORT_EVENT slowpath event (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Partition XRI buffer list across Hardware Queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Replace io_channels for nvme and fcp with general hdw_queues per cpu (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove extra vector and SLI4 queue for Expresslane (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Implement common IO buffers between NVME and SCSI (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: Remove excess check on NVME io submit code path (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: remove nrport from nvme command structure (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: no need to check return value of debugfs_create functions (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Update lpfc version to 12.0.0.10 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adding ability to reset chip via pci bus reset (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Add log messages to aid in debugging fc4type discovery issues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix discovery failure when PLOGI is defered (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update fault value on successful trunk events. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct MDS loopback diagnostics support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix link state reporting for trunking when adapter is offline (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: do not set queue->page_count to 0 if pc_sli4_params.wqpcnt is invalid (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.9 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix dif and first burst use in write commands (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix driver release of fw-logging buffers (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct topology type reporting on G7 adapters (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct code setting non existent bits in sli4 ABORT WQE (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Defer LS_ACC to FLOGI on point to point logins (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: ls_rjt erroneus FLOGIs (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Cap NPIV vports to 256 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix kernel Oops due to null pring pointers (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix a duplicate 0711 log message number. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix panic when FW-log buffsize is not initialized (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix block guard enablement on SLI3 adapters (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Use dma_zalloc_coherent (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.8 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: add Trunking support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Implement GID_PT on Nameserver query to support faster failover (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix odd recovery in duplicate FLOGIs in point-to-point (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct LCB RJT handling (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fcoe: Fix link down issue after 1000+ link bounces (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct errors accessing fw log (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Reset link or adapter instead of doing infinite nameserver PLOGI retry (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix LOGO/PLOGI handling when triggerd by ABTS Timeout event (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix lpfc_sli4_read_config return value check (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct speeds on SFP swap (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix remoteport access (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variables 'tgtp' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variable 'psli' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variables 'fc_hdr' and 'hw_page_size' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix spelling mistake "Resrouce" -> "Resource" (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: remove a bogus pci_dma_sync_single_for_device call (Dick Kennedy) [1665288] - [netdrv] PCI/AER: Remove pci_cleanup_aer_uncorrect_error_status() calls (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Synchronize access to remoteport via rport (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variable 'sgl_size' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.7 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: add support to retrieve firmware logs (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: reduce locking when updating statistics (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix errors in log messages. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct invalid EQ doorbell write on if_type=6 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct irq handling via locks when taking adapter offline (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct soft lockup when running mds diagnostics (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct race with abort on completion path (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Raise nvme defaults to support a larger io and more connectivity (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: raise sg count for nvme to use available sg resources (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix GFT_ID and PRLI logic for RSCN (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: remove an unnecessary NULL check (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Default fdmi_on to on (Dick Kennedy) [1665288] - [powerpc] powerpc/mm/hash: Increase vmalloc space with hash translation mode (Steve Best) [1676974] - [net] sunrpc: fix 4 more call sites that were using stack memory with a scatterlist (Scott Mayhew) [1679183] - [net] sunrpc: Don't use stack buffer with scatterlist (Scott Mayhew) [1679183] - [powerpc] powerpc/pseries: Perform full re-add of CPU for topology update post-migration (Steve Best) [1678209] - [fs] proc/stat: Make the interrupt statistics more efficient (Waiman Long) [1675168] - [kernel] genirq: Avoid summation loops for /proc/stat (Waiman Long) [1675168] - [powerpc] powerpc/pseries: fix EEH recovery of some IOV devices (Steve Best) [1676889] - [block] nvme: lock NS list changes while handling command effects (David Milburn) [1672759] - [powerpc] powerpc/radix: Fix kernel crash with mremap() (Steve Best) [1674186] - [crypto] crypto: ccp - fix the SEV probe in kexec boot path (Gary Hook) [1658806] - [netdrv] HDLC Frame Relay: mark driver unsupported in RHEL8 (John Linville) [1660627] - [netdrv] DLCI: mark driver unsupported in RHEL8 (John Linville) [1660627] - [netdrv] ethoc: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] dnet: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] dl2k: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] mark qla3xxx driver as unsupported (John Linville) [1658840] - [netdrv] sfc: initialise found bitmap in efx_ef10_mtd_probe (Jarod Wilson) [1668656] - [netdrv] sfc: suppress duplicate nvmem partition types in efx_ef10_mtd_probe (Jarod Wilson) [1668656] - [netdrv] sfc: extend MTD support for newer hardware (Jarod Wilson) [1668656] - [netdrv] sfc: add missing NVRAM partition types for EF10 (Jarod Wilson) [1668656] - [netdrv] ibmvnic: Fix non-atomic memory allocation in IRQ context (Steve Best) [1671474] - [netdrv] ibmvnic: Convert reset work item mutex to spin lock (Steve Best) [1671474] - [powerpc] powerpc/pseries: Export raw per-CPU VPA data via debugfs (Steve Best) [1608797] - [powerpc] powerpc/pseries: Export maximum memory value (Steve Best) [1608797] - [netdrv] ibmveth: Do not process frames after calling napi_reschedule (Desnes Augusto Nunes do Rosario) [1635577] - [cpufreq] cpufreq: powernv: Remove global pstate ramp-down timer in POWER9 (Steve Best) [1670030] - [of] of: __of_detach_node() - remove node from phandle cache (Steve Best) [1669198] - [of] of: of_node_get()/of_node_put() nodes held in phandle cache (Steve Best) [1669198] - [edac] EDAC, sb_edac: Fix signedness bugs in *_get_ha() functions (Aristeu Rozanski) [1641574] - [edac] EDAC, sb_edac: Fix reporting for patrol scrubber errors (Aristeu Rozanski) [1641574] - [documentation] proc.txt: Adding 'HardwareCorrupted' field and description. (Prashant Dhamdhere) [1658233] - [netdrv] qed: Fix command number mismatch between driver and the mfw (Chad Dupuis) [1663500] - Revert "[redhat] switch secureboot kernel image signing to release keys" ("Herton R. Krzesinski")- [arm64] revert "arm64: tlb: Avoid synchronous TLBIs when freeing page tables" (Christoph von Recklinghausen) [1685697]- [firmware] drivers/firmware: psci_checker: stash and use topology_core_cpumask for hotplug tests (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: re-introduce numa mask check for scheduler MC selection (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: rename llc_siblings to align with other struct members (Josh Poimboeuf) [1687101] - [arm64] arm64: smp: remove cpu and numa topology information when hotplugging out CPU (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: restrict updating siblings_masks to online cpus only (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: add support to remove cpu topology sibling masks (Josh Poimboeuf) [1687101] - [arm64] arm64: numa: separate out updates to percpu nodeid and NUMA node cpumap (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: refactor reset_cpu_topology to add support for removing topology (Josh Poimboeuf) [1687101]- [fs] gfs2: Fix missed wakeups in find_insert_glock (Andreas Grunbacher) [1678907]- [firmware] efi: Reduce the amount of memblock reservations for persistent allocations (Bhupesh Sharma) [1682988] - [firmware] efi: Permit multiple entries in persistent memreserve data structure (Bhupesh Sharma) [1682988] - [kernel] cpu/hotplug: Create SMT sysfs interface for all arches (Josh Poimboeuf) [1686068] - [net] netfilter: nft_set_hash: bogus element self comparison from deactivation path (Florian Westphal) [1678574] - [net] netfilter: nft_set_hash: fix lookups with fixed size hash on big endian (Florian Westphal) [1678574]- [security] revert "Add a SysRq option to lift kernel lockdown" (Lenny Szubowicz) [1684348] - [s390] s390/setup: fix boot crash for machine without EDAT-1 (Philipp Rudo) [1677357] - [s390] s390/setup: fix early warning messages (Philipp Rudo) [1677357]- [netdrv] net: hns3: add 8 BD limit for tx flow (Xiaojun Tan) [1676771] - [netdrv] net: hns3: fix a SSU buffer checking bug (Xiaojun Tan) [1676771] - [netdrv] net: hns3: aligning buffer size in SSU to 256 bytes (Xiaojun Tan) [1676771] - [netdrv] net: hns3: getting tx and dv buffer size through firmware (Xiaojun Tan) [1676771] - [net] netfilter: nf_nat_snmp_basic: add missing length checks in ASN.1 cbs (Florian Westphal) [1676602] - [char] ipmi: fix use-after-free of user->release_barrier.rda (Xiaojun Tan) [1677550] - [char] ipmi: Prevent use-after-free in deliver_response (Xiaojun Tan) [1677550]- [x86] revert "cpu/hotplug: Add SMT policy options" (Josh Poimboeuf) [1683690] - [crypto] net: crypto set sk to NULL when af_alg_release (Neil Horman) [1679450] {CVE-2019-8912} - [drm] drm/i915/gvt: update force-to-nonpriv register whitelist (Paul Lai) [1643972] - [kernel] MODSIGN: Also check platform keyring in mod_verify_sig() (Lenny Szubowicz) [1568532] - [kernel] Fix for module sig verification (Lenny Szubowicz) [1568532] - [security] efi: Lock down the kernel if booted in secure boot mode (Lenny Szubowicz) [1568532] - [firmware] efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode (Lenny Szubowicz) [1568532] - [x86] Copy secure_boot flag in boot params across kexec reboot (Lenny Szubowicz) [1568532] - [fs] debugfs: Restrict debugfs when the kernel is locked down (Lenny Szubowicz) [1568532] - [mm] x86/mmiotrace: Lock down the testmmiotrace module (Lenny Szubowicz) [1568532] - [kernel] Lock down module params that specify hardware parameters (eg. ioport) (Lenny Szubowicz) [1568532] - [tty] Lock down TIOCSSERIAL (Lenny Szubowicz) [1568532] - [pcmcia] Prohibit PCMCIA CIS storage when the kernel is locked down (Lenny Szubowicz) [1568532] - [acpi] acpi: Disable ACPI table override if the kernel is locked down (Lenny Szubowicz) [1568532] - [acpi] acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down (Lenny Szubowicz) [1568532] - [acpi] ACPI: Limit access to custom_method when the kernel is locked down (Lenny Szubowicz) [1568532] - [x86] x86/msr: Restrict MSR access when the kernel is locked down (Lenny Szubowicz) [1568532] - [x86] x86: Lock down IO port access when the kernel is locked down (Lenny Szubowicz) [1568532] - [pci] PCI: Lock down BAR access when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] uswsusp: Disable when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] hibernate: Disable when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] kexec_load: Disable at runtime if the kernel is locked down (Lenny Szubowicz) [1568532] - [char] Restrict /dev/{mem, kmem, port} when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] MODSIGN: Enforce module signatures if the kernel is locked down (Lenny Szubowicz) [1568532] - [security] Add a SysRq option to lift kernel lockdown (Lenny Szubowicz) [1568532] - [security] Add the ability to lock down access to the running kernel image (Lenny Szubowicz) [1568532]- [net] tun: forbid iface creation with rtnl ops (Sabrina Dubroca) [1680969] - [net] revert "bridge: do not add port to router list when receives query with source 0.0.0.0" (Hangbin Liu) [1679896] - [net] sctp: walk the list of asoc safely (Marcelo Leitner) [1679920] {CVE-2019-8956} - [net] netfilter: nf_nat: skip nat clash resolution for same-origin entries (Florian Westphal) [1677647] - [net] netfilter: nf_conntrack: resolve clash for matching conntracks (Florian Westphal) [1677647] - [net] netfilter: nf_tables: fix flush after rule deletion in the same batch (Phil Sutter) [1677672] - [net] gro_cell: add napi_disable in gro_cells_destroy (Stefano Brivio) [1674408] - [net] sctp: call gso_reset_checksum when computing checksum in sctp_gso_segment (Xin Long) [1669386] - [net] ipvs: fix dependency on nf_defrag_ipv6 (Andrea Claudi) [1660808] - [net] sctp: check and update stream->out_curr when allocating stream_out (Xin Long) [1651877]- [x86] cpu/hotplug: Add SMT policy options (Josh Poimboeuf) [1677405]- [kernel] open the RHEL 8.1 development ("Herton R. Krzesinski") - [pci] pci/quirks: Add quirk to reset nvgpu at boot for the Lenovo ThinkPad P50 (Lyude Paul) [1677022] - [arm64] arm64, vmcoreinfo : Append 'MAX_USER_VA_BITS' to vmcoreinfo (Bhupesh Sharma) [1672962] - [md] dm thin: fix bug where bio that overwrites thin block ignores FUA (Mike Snitzer) [1679211] - [pci] PCI: Fix "try" semantics of bus and slot reset (Myron Stowe) [1662901] - [acpi] acpi/nfit: Fix bus command validation (Jeff Moyer) [1673958] - [pci] PCI/MSI: Return -ENOSPC from pci_alloc_irq_vectors_affinity() (Myron Stowe) [1667773] - [fs] NFS: Don't use page_file_mapping after removing the page (Benjamin Coddington) [1664190] - [fs] NFS: Fix up return value on fatal errors in nfs_page_async_flush() (Benjamin Coddington) [1664190] - [md] md: fix raid10 hang issue caused by barrier (Xiao Ni) [1630921] - [md] md/raid1: don't clear bitmap bits on interrupted recovery. (Xiao Ni) [1677360] - [virt] kvm: fix kvm_ioctl_create_device() reference counting (CVE-2019-6974) (Paolo Bonzini) [1673843] {CVE-2019-6974} - [block] blk-mq: fix a hung issue when fsync (Ming Lei) [1674399] - [block] Revert "block: cover another queue enter recursion via BIO_QUEUE_ENTERED" (Ming Lei) [1673966] - [tools] perf tools: Check for null when copying nsinfo. (Jiri Olsa) [1676451] - [iommu] iommu/amd: Fix IOMMU page flush when detach device from a domain (Suravee Suthikulpanit) [1672476]- [kernel] namespace: Add padding fix to user_table[] (Prarit Bhargava) [1677103] - [x86] KVM: nVMX: unconditionally cancel preemption timer in free_nested (CVE-2019-7221) (Paolo Bonzini) [1673841] {CVE-2019-7221} - [scsi] scsi: sd: fix entropy gathering for most rotational disks (Ewan Milne) [1676735] - [scsi] scsi: sd: Contribute to randomness when running rotational device (Ewan Milne) [1676735] - [rpmspec] Revert "Drop -doc subpackage" (Prarit Bhargava) [1657609] - [net] svcrdma: Remove max_sge check at connect time (Don Dutile) [1638869] - [net] svcrdma: Reduce max_send_sges (Don Dutile) [1638869] - [arm64] arm64: mm: Introduce MAX_USER_VA_BITS definition (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Rewrite stale comment in asm/tlbflush.h (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Avoid synchronous TLBIs when freeing page tables (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Remove redundant !CONFIG_HAVE_RCU_TABLE_FREE code (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlbflush: Allow stride to be specified for __flush_tlb_range() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Justify non-leaf invalidation in flush_tlb_range() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Add DSB ISHST prior to TLBI in __flush_tlb_[kernel_]pgtable() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Use last-level invalidation in flush_tlb_kernel_range() (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: EXPORT vabits_user to modules (Christoph von Recklinghausen) [1672997] - [arm64] arm64: fix ARM64_USER_VA_BITS_52 builds (Christoph von Recklinghausen) [1672997] - [arm64] arm64: Kconfig: Re-jig CONFIG options for 52-bit VA (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Allow forcing all userspace addresses to 52-bit (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: introduce 52-bit userspace support (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Prevent mismatched 52-bit VA support (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Offset TTBR1 to allow 52-bit PTRS_PER_PGD (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Define arch_get_mmap_end, arch_get_mmap_base (Christoph von Recklinghausen) [1672997] - [firmware] arm64: mm: Introduce DEFAULT_MAP_WINDOW (Christoph von Recklinghausen) [1672997] - [mm] mm: mmap: Allow for "high" userspace addresses (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: apply r/o permissions of VM areas to its linear alias as well (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: purge lazily unmapped vm regions before changing permissions (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Don't wait for completion of TLB invalidation when page aging (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: Use __pa_symbol() for set_swapper_pgd() (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: Drop the unused cpu parameter (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: move runtime pgds to rodata (Christoph von Recklinghausen) [1672997] - [mm] arm64/mm: use fixmap to modify swapper_pg_dir (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: Separate boot-time page tables from swapper_pg_dir (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: Pass ttbr1 as a parameter to __enable_mmu() (Christoph von Recklinghausen) [1672997] - [mm] arm64: fix erroneous warnings in page freeing functions (Christoph von Recklinghausen) [1672997] - [mm] arm64: Implement page table free interfaces (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlbflush: Introduce __flush_tlb_kernel_pgtable (Christoph von Recklinghausen) [1672997] - [lib] ioremap: Update pgtable free interfaces with addr (Christoph von Recklinghausen) [1672997] - [mm] x86/mm: Disable ioremap free page handling on x86-PAE (Christoph von Recklinghausen) [1672997] - [arm64] arm64: KVM: Enable Common Not Private translations (Christoph von Recklinghausen) [1504991] - [arm64] arm64: mm: Support Common Not Private translations (Christoph von Recklinghausen) [1504991] - [kernel] cpu/hotplug: Fix "SMT disabled by BIOS" detection for KVM (Igor Mammedov) [1668147] - [tools] perf tools: Compile perf with -g instead of -ggdb3 to workaround gdb crash (Jiri Olsa) [1667109]- [fs] Revert "gfs2: Fix loop in gfs2_rbm_find" (Andreas Grunbacher) [1658528] - [net] bpf: fix sanitation of alu op with pointer / scalar type from different paths (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: prevent out of bounds speculation on pointer arithmetic (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: move {prev_,}insn_idx into verifier env (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf/verifier: per-register parent pointers (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: restrict unknown scalars of mixed signed bounds for unprivileged (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: Simplify ptr_min_max_vals adjustment (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: fix inner map masking to prevent oob under speculation (Jiri Olsa) [1673631] {CVE-2019-7308} - [include] KABI: struct class padding (Prarit Bhargava) [1670035] - [include] KABI: struct timer_list padding (Prarit Bhargava) [1670035] - [include] KABI: struct irq_domain padding (Prarit Bhargava) [1670035] - [nvdimm] libnvdimm, pmem: Fix badblocks population for 'raw' namespaces (Jeff Moyer) [1672315] - [netdrv] net/mlx5e: FPGA, fix Innova IPsec TX offload data path performance (Alaa Hleihel) [1648230] - [kernel] exec: increase BINPRM_BUF_SIZE to 256 (Oleg Nesterov) [1447445]- [include] KABI: struct kset padding (Prarit Bhargava) [1669796] - [include] KABI: struct kobject and kobj_type padding (Prarit Bhargava) [1669796] - [include] KABI: struct delayed_work padding (Prarit Bhargava) [1669796] - [include] KABI: struct work_struct padding (Prarit Bhargava) [1669796] - [include] KABI: struct hrtimer padding (Prarit Bhargava) [1669796] - [include] KABI: struct user_namespace padding (Prarit Bhargava) [1669796] - [include] KABI: struct resource padding (Prarit Bhargava) [1669796] - [include] KABI: Protect device_driver struct (Prarit Bhargava) [1666316] - [include] KABI: Protect radix functions (Prarit Bhargava) [1669079] - [char] ipmi: msghandler: Fix potential Spectre v1 vulnerabilities (Tony Camuso) [1672582] - [vhost] vhost: fix OOB in get_rx_bufs() (Jason Wang) [1668665] {CVE-2018-16880}- [md] dm: don't use bio_trim() afterall (Mike Snitzer) [1673657] - [md] dm: add memory barrier before waitqueue_active (Mike Snitzer) [1673110] - [x86] x86: uaccess: Inhibit speculation past access_ok() in user_access_begin() (Joe Lawrence) [1670113] {CVE-2018-20669} - [kernel] make 'user_access_begin()' do 'access_ok()' (Joe Lawrence) [1670113] {CVE-2018-20669} - [drm] i915: fix missing user_access_end() in page fault exception case (Joe Lawrence) [1670113] {CVE-2018-20669} - [drm] drm/i915: Force the slow path after a user-write error (Joe Lawrence) [1670113] {CVE-2018-20669} - [x86] x86/microcode/amd: Don't falsely trick the late loading mechanism (David Arcari) [1654904] - [fs] iomap: get/put the page in iomap_page_create/release() (Artem Savkov) [1664298] - [scsi] scsi: qla2xxx: Add new FC-NVMe enable BIT to enable FC-NVMe feature (Himanshu Madhani) [1671569] - [message] mptsas: pci-id table changes (Tomas Henzl) [1666730] - [message] mptsas: Taint kernel if mptsas is loaded (Tomas Henzl) [1666730] - [kernel] genirq/matrix: Improve target CPU selection for managed interrupts. (Gary Hook) [1669557] - [kernel] irq/matrix: Spread managed interrupts on allocation (Gary Hook) [1669557] - [kernel] irq/matrix: Split out the CPU selection code into a helper (Gary Hook) [1669557] - [net] sit: check if IPv6 enabled before calling ip6_err_gen_icmpv6_unreach() (Stefano Brivio) [1671680] - [net] geneve: should not call rt6_lookup() when ipv6 was disabled (Stefano Brivio) [1671680] - [net] netfilter: physdev: relax br_netfilter dependency (Phil Sutter) [1650382] - [net] netfilter: nf_tables: add NFTA_RULE_POSITION_ID to nla_policy (Phil Sutter) [1670563] - [net] netfilter: nf_tables: Support RULE_ID reference in new rule (Phil Sutter) [1670563] - [net] rtnetlink: fix incorrect handling of device stats passed to userspace (Ivan Vecera) [1668298] - [net] netfilter: nf_tables: handle nft_object lookups via rhltable (Phil Sutter) [1659725] - [net] netfilter: nf_tables: prepare nft_object for lookups via hashtable (Phil Sutter) [1659725] - [net] netfilter: nf_tables: selective rule dump needs table to be specified (Phil Sutter) [1659725] - [net] netfilter: nf_tables: Fix for endless loop when dumping ruleset (Phil Sutter) [1659725] - [net] netfilter: nf_tables: Speed up selective rule dumps (Phil Sutter) [1659725] - [net] exclude sock_reuseport from kABI protection (Paolo Abeni) [1665984] - [include] KABI: struct device padding (Don Dutile) [1664445] - [include] KABI: struct dma_map_ops padding (Don Dutile) [1664482] - [kernel] swiotlb: clear io_tlb_start and io_tlb_end in swiotlb_exit (Don Dutile) [1664484] - [kernel] dma-mapping: remove a few unused exports (Don Dutile) [1664484] - [include] dma-mapping: properly stub out the DMA API for !CONFIG_HAS_DMA (Don Dutile) [1664484] - [kernel] dma-mapping: remove dmam_{declare,release}_coherent_memory (Don Dutile) [1664484] - [kernel] dma-mapping: implement dmam_alloc_coherent using dmam_alloc_attrs (Don Dutile) [1664484] - [include] dma-mapping: implement dma_map_single_attrs using dma_map_page_attrs (Don Dutile) [1664484] - [include] dma-mapping: fix flags in dma_alloc_wc (Don Dutile) [1664484] - [include] dma-mapping: deprecate dma_zalloc_coherent (Don Dutile) [1664484] - [arm64] arm64: default to the direct mapping in get_arch_dma_ops (Don Dutile) [1664484] - [kernel] dma-mapping: fix inverted logic in dma_supported (Don Dutile) [1664484] - [include] dma-mapping: bypass indirect calls for dma-direct (Don Dutile) [1664484] - [kernel] dma-direct: merge swiotlb_dma_ops into the dma_direct code (Don Dutile) [1664484] - [kernel] dma-direct: do not include SME mask in the DMA supported check (Don Dutile) [1664484] - [kernel] dma-direct: use dma_direct_map_page to implement dma_direct_map_sg (Don Dutile) [1664484] - [kernel] dma-direct: improve addressability error reporting (Don Dutile) [1664484] - [kernel] dma-direct: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [xen] swiotlb: remove dma_mark_clean (Don Dutile) [1664484] - [xen] swiotlb: remove SWIOTLB_MAP_ERROR (Don Dutile) [1664484] - [xen] xen-swiotlb: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [kernel] swiotlb: Skip cache maintenance on map error (Don Dutile) [1664484] - [kernel] swiotlb: add support for non-coherent DMA (Don Dutile) [1664484] - [kernel] swiotlb: mark is_swiotlb_buffer static (Don Dutile) [1664484] - [kernel] swiotlb: remove a pointless comment (Don Dutile) [1664484] - [kernel] swiotlb: clean up reporting (Don Dutile) [1664484] - [kernel] dma-direct: reject highmem pages from dma_alloc_from_contiguous (Don Dutile) [1664484] - [kernel] dma-direct: provide page based alloc/free helpers (Don Dutile) [1664484] - [include] dma-direct: Make DIRECT_MAPPING_ERROR viable for SWIOTLB (Don Dutile) [1664484] - [kernel] dma-direct: respect DMA_ATTR_NO_WARN (Don Dutile) [1664484] - [kernel] dma-direct: document the zone selection logic (Don Dutile) [1664484] - [kernel] dma-direct: fix return value of dma_direct_supported (Don Dutile) [1664484] - [kernel] dma-direct: always allow dma mask <= physiscal memory size (Don Dutile) [1664484] - [kernel] dma-direct: implement complete bus_dma_mask handling (Don Dutile) [1664484] - [kernel] dma-direct: refine dma_direct_alloc zone selection (Don Dutile) [1664484] - [kernel] dma-direct: add an explicit dma_direct_get_required_mask (Don Dutile) [1664484] - [kernel] kernel/dma/direct: take DMA offset into account in dma_direct_supported (Don Dutile) [1664484] - [kernel] dma-mapping: factor out dummy DMA ops (Don Dutile) [1664484] - [mm] arm64: dma-mapping: Fix FORCE_CONTIGUOUS buffer clearing (Don Dutile) [1664484] - [iommu] iommu/dma-iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/vt-d: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/intel: small map_page cleanup (Don Dutile) [1664484] - [iommu] intel-iommu: mark intel_dma_ops static (Don Dutile) [1664484] - [iommu] ia64: remove iommu_dma_supported (Don Dutile) [1664484] - [iommu] iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/dma: Use fast DMA domain lookup (Don Dutile) [1664484] - [x86] x86/amd_gart: fix unmapping of non-GART mappings (Don Dutile) [1664484] - [x86] x86/amd_gart: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [mm] arm64: remove the dummy_dma_ops mapping_error method (Don Dutile) [1664484] - [powerpc] powerpc: Do not redefine NEED_DMA_MAP_STATE (Don Dutile) [1664484] - [powerpc] powerpc/iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [s390] s390: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [kernel] dma-mapping: always build the direct mapping code (Don Dutile) [1664484] - [kernel] dma-mapping: move dma_cache_sync out of line (Don Dutile) [1664484] - [kernel] dma-mapping: move various slow path functions out of line (Don Dutile) [1664484] - [base] dma-mapping: move dma_get_required_mask to kernel/dma (Don Dutile) [1664484] - [base] dma-mapping: move dma_default_get_required_mask under ifdef (Don Dutile) [1664484] - [include] dma-mapping: merge dma_unmap_page_attrs and dma_unmap_single_attrs (Don Dutile) [1664484] - [include] dma-mapping: simplify the dma_sync_single_range_for_{cpu,device} implementation (Don Dutile) [1664484] - [include] dma-mapping: return an error code from dma_mapping_error (Don Dutile) [1664484] - [pci] dma-mapping: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [include] dma-mapping: provide a generic DMA_MAPPING_ERROR (Don Dutile) [1664484] - [kernel] dma-mapping: move the arm64 noncoherent alloc/free support to common code (Don Dutile) [1664484] - [mm] arm64: fix warnings without CONFIG_IOMMU_DMA (Don Dutile) [1664484] - [arm64] arm64: use the generic swiotlb_dma_ops (Don Dutile) [1664484] - [kernel] swiotlb: don't dip into swiotlb pool for coherent allocations (Don Dutile) [1664484] - [kernel] swiotlb: refactor swiotlb_map_page (Don Dutile) [1664484] - [kernel] swiotlb: use swiotlb_map_page in swiotlb_map_sg_attrs (Don Dutile) [1664484] - [kernel] swiotlb: merge swiotlb_unmap_page and unmap_single (Don Dutile) [1664484] - [kernel] swiotlb: remove the overflow buffer (Don Dutile) [1664484] - [kernel] swiotlb: do not panic on mapping failures (Don Dutile) [1664484] - [mm] arm64/dma-mapping: Mildly optimise non-coherent IOMMU ops (Don Dutile) [1664484] - [iommu] iommu: Add fast hook for getting DMA domains (Don Dutile) [1664484] - [iommu] iommu: Remove the ->map_sg indirection (Don Dutile) [1664484] - [iommu] kernel/dma: remove unsupported gfp_mask parameter from dma_alloc_from_contiguous() (Don Dutile) [1664484] - [mm] mm/cma: remove unsupported gfp_mask parameter from cma_alloc() (Don Dutile) [1664484] - [kernel] dma-mapping: move the remap helpers to a separate file (Don Dutile) [1664484] - [include] dma-mapping: fix return type of dma_set_max_seg_size() (Don Dutile) [1664484] - [include] dma-mapping: translate __GFP_NOFAIL to DMA_ATTR_NO_WARN (Don Dutile) [1664484] - [include] dma-debug: Check for drivers mapping invalid addresses in dma_map_single() (Don Dutile) [1664484] - [base] dma-mapping: make the get_required_mask method available unconditionally (Don Dutile) [1664484] - [xen] dma-mapping: support non-coherent devices in dma_common_get_sgtable (Don Dutile) [1664484] - [kernel] dma-mapping: consolidate the dma mmap implementations (Don Dutile) [1664484] - [kernel] dma-mapping: merge direct and noncoherent ops (Don Dutile) [1664484] - [include] dma-mapping: move the dma_coherent flag to struct device (Don Dutile) [1664484] - [include] dma-mapping: remove dma_deconfigure (Don Dutile) [1664484] - [base] dma-mapping: remove dma_configure (Don Dutile) [1664484] - [include] dma-mapping: relax warning for per-device areas (Don Dutile) [1664484] - [kernel] dma-mapping: add the missing ARCH_HAS_SYNC_DMA_FOR_CPU_ALL declaration (Don Dutile) [1664484] - [kernel] dma-noncoherent: add a arch_sync_dma_for_cpu_all hook (Don Dutile) [1664484] - [block] deprecate elevator= kernel parameter (Jeff Moyer) [1665295] - [rpmspec] kernel.spec: disable kabi checks until RC (=?UTF-8?q?=C4=8Cestm=C3=ADr=20Kalina?=) [1671007] - [iommu] iommu/amd: Unmap all mapped pages in error path of map_sg (Jerry Snitselaar) [1668448] - [iommu] iommu/amd: Call free_iova_fast with pfn in map_sg (Jerry Snitselaar) [1668448]- [arm64] arm64, vmcoreinfo : Append 'MAX_PHYSMEM_BITS' to vmcoreinfo (Bhupesh Sharma) [1666679] - [kernel] sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK (Joe Lawrence) [1667840] - [init] Small change to the message about certified hardware (Steve Best) [1671765] - [x86] x86/kdump: make the behavior of crashkernel=X consistent with kaslr (Pingfan Liu) [1640799] - [x86] Add back support for Intel processors (Steve Best) [1670529] - [net] SUNRPC: Clean up initialisation of the struct rpc_rqst (Benjamin Coddington) [1650494] - [x86] KABI, x86/paravirt: Protect paravirt ops structures (Waiman Long) [1669957] - [include] KABI: struct module padding (Prarit Bhargava) [1669480] - [include] KABI: struct stack_trace_struct padding (Prarit Bhargava) [1669480] - [documentation] iommu: Fix passthrough option documentation (Gary Hook) [1658391] - [iommu] iommu: Add config option to set passthrough as default (Gary Hook) [1658391] - [kernel] redhat: kernel: clean up taint flags (Jiri Benc) [1654313]- [scsi] scsi: qedi: Add the CRC size within iSCSI NVM image (Charles Rose) [1670186] - [fs] iomap: don't search past page end in iomap_is_partially_uptodate (Eric Sandeen) [1657588] - [netdrv] cxgb4: update supported DCB version (Arjun Vynipadath) [1668571] - [x86] kexec, KEYS: Make use of platform keyring for signature verify (Kairui Song) [1640486] - [security] integrity, KEYS: add a reference to platform keyring (Kairui Song) [1640486] - [security] efi: Allow the "db" UEFI variable to be suppressed (Kairui Song) [1640486] - [security] efi: Import certificates from UEFI Secure Boot (Kairui Song) [1640486] - [security] efi: Add an EFI signature blob parser (Kairui Song) [1640486] - [include] efi: Add EFI signature data types (Kairui Song) [1640486] - [security] integrity: Load certs to the platform keyring (Kairui Song) [1640486] - [security] integrity: Define a trusted platform keyring (Kairui Song) [1640486] - [security] security/integrity: remove unnecessary 'init_keyring' variable (Kairui Song) [1640486] - [x86] Fix kexec forbidding kernels signed with keys in the secondary keyring to boot (Kairui Song) [1640486] - [crypto] Replace magic for trusting the secondary keyring with #define (Kairui Song) [1640486] - [acpi] acpi/nfit: Fix command-supported detection (Jeff Moyer) [1665812] - [acpi] acpi/nfit: Block function zero DSMs (Jeff Moyer) [1665812] - [md] dm: add missing trace_block_split() to __split_and_process_bio() (Mike Snitzer) [1645283] - [md] dm: fix dm_wq_work() to only use __split_and_process_bio() if appropriate (Mike Snitzer) [1645283] - [md] dm: fix redundant IO accounting for bios that need splitting (Mike Snitzer) [1645283] - [md] dm: fix clone_bio() to trigger blk_recount_segments() (Mike Snitzer) [1645283] - [block] block: cover another queue enter recursion via BIO_QUEUE_ENTERED (Mike Snitzer) [1645283] - [md] dm thin: fix passdown_double_checking_shared_status() (Mike Snitzer) [1668039] - [tools] bpftool: Fix prog dump by tag (Jiri Olsa) [1667305] - [arm64] arm64: ftrace: Fix to enable syscall events on arm64 (Don Dutile) [1668035] - [arm64] arm64: implement syscall wrappers (Don Dutile) [1668035] - [arm64] arm64: convert compat wrappers to C (Don Dutile) [1668035] - [arm64] arm64: use SYSCALL_DEFINE6() for mmap (Don Dutile) [1668035] - [arm64] arm64: use {COMPAT,}SYSCALL_DEFINE0 for sigreturn (Don Dutile) [1668035] - [arm64] arm64: remove in-kernel call to sys_personality() (Don Dutile) [1668035] - [include] kernel: add ksys_personality() (Don Dutile) [1668035] - [arm64] arm64: drop alignment from syscall tables (Don Dutile) [1668035] - [arm64] arm64: entry: remove unused register aliases (Don Dutile) [1668035] - [arm64] arm64: convert native/compat syscall entry to C (Don Dutile) [1668035] - [arm64] arm64: svc: Ensure hardirq tracing is updated before return (Don Dutile) [1668035] - [arm64] arm64: convert syscall trace logic to C (Don Dutile) [1668035] - [arm64] arm64: move sve_user_{enable,disable} to (Don Dutile) [1668035] - [arm64] arm64: kill change_cpacr() (Don Dutile) [1668035] - [arm64] arm64: convert raw syscall invocation to C (Don Dutile) [1668035] - [arm64] arm64: introduce syscall_fn_t (Don Dutile) [1668035] - [arm64] arm64: remove sigreturn wrappers (Don Dutile) [1668035] - [arm64] arm64: rseq: Implement backend rseq calls and select HAVE_RSEQ (Don Dutile) [1668035] - [sound] ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock (Jaroslav Kysela) [1664249] - [infiniband] IB/hfi1: Fix an out-of-bounds access in get_hw_stats (Alex Estrin) [1667104] - [infiniband] IB/hfi1: Incorrect sizing of sge for PIO will OOPs (Alex Estrin) [1667095] - [drm] drm/nouveau: register backlight on pascal and newer (Ben Skeggs) [1664899] - [drm] drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for LVDS/eDP panels (Ben Skeggs) [1664899] - [drm] drm/nouveau/disp: move eDP panel power handling (Ben Skeggs) [1664899] - [drm] drm/nouveau/devinit: don't fail when PMU/PRE_OS is missing from VBIOS (Ben Skeggs) [1664899] - [kernel] locking/rwsem: Fix (possible) missed wakeup (Waiman Long) [1668014] - [kernel] futex: Fix (possible) missed wakeup (Waiman Long) [1668014] - [kernel] sched/wake_q: Fix wakeup ordering for wake_q (Waiman Long) [1668014] - [kernel] sched/wake_q: Document wake_q_add() (Waiman Long) [1668014] - [kernel] sched/wait: Fix rcuwait_wake_up() ordering (Waiman Long) [1668014] - [kernel] sched/Documentation: Update wake_up() & co. memory-barrier guarantees (Waiman Long) [1668014] - [kvm] KVM: PPC: Book3S HV: Flush guest mappings when turning dirty tracking on/off (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Book3S HV: Cleanups - constify memslots, fix comments (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Book3S HV: Map single pages when doing dirty page logging (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Pass change type down to memslot commit function (Laurent Vivier) [1650386] - [vhost] vhost: log dirty page correctly (Jason Wang) [1657578] - [netdrv] netxen: taint as unsupported in RHEL8 (Tony Camuso) [1654825] - [hid] HID: hiddev: fix potential Spectre v1 (Benjamin Tissoires) [1664611] - [net] resort to custom code for sk_buff padding (Paolo Abeni) [1665984] - [net] add padding to cipher_context (Paolo Abeni) [1665984] - [net] add padding to tls_crypto_context (Paolo Abeni) [1665984] - [net] add padding to ipv4_devconf (Paolo Abeni) [1665984] - [net] ip6mr: Fix potential Spectre v1 vulnerability (Stefano Brivio) [1663472] - [net] ipv4: Fix potential Spectre v1 vulnerability (Stefano Brivio) [1663472] - [include] add KABI padding to file_system_type (Eric Sandeen) [1665320 1650565] - [include] add KABI padding to multiple fs ops vectors (Eric Sandeen) [1665320] - [fs] add KABI padding to dentry structure (Eric Sandeen) [1665320] - [fs] add KABI padding to inode structure (Eric Sandeen) [1665320] - [include] add KABI padding to file_lock structure (Eric Sandeen) [1665320] - [include] KABI: add an iopoll method to struct file_operations (Eric Sandeen) [1665320] - [sound] ALSA: emux: Fix potential Spectre v1 vulnerabilities (Jaroslav Kysela) [1663477] - [sound] ALSA: pcm: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1663477] - [sound] ALSA: rme9652: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1663477] - [sound] ALSA: emu10k1: Fix potential Spectre v1 vulnerabilities (Jaroslav Kysela) [1663477] - [powerpc] powerpc/tm: Unset MSR[TS] if not recheckpointing (Gustavo Duarte) [1663853] - [netdrv] r8152: Add support for MAC address pass through on RTL8153-BND (Perry Yuan) [1658433] - [hid] HID: debug: fix the ring buffer implementation (Tony Camuso) [1669469] {CVE-2019-3819}- [netdrv] net: hns: Fix WARNING when hns modules installed (Xiaojun Tan) [1662120] - [netdrv] net: hns: Fix ping failed when use net bridge and send multicast (Xiaojun Tan) [1662120] - [netdrv] net: hns: Add mac pcs config when enable|disable mac (Xiaojun Tan) [1662120] - [netdrv] net: hns: Fix ntuple-filters status error. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Free irq when exit from abnormal branch (Xiaojun Tan) [1662120] - [netdrv] net: hns: Clean rx fbd when ae stopped. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Some registers use wrong address according to the datasheet. (Xiaojun Tan) [1662120] - [netdrv] net: hns: All ports can not work when insmod hns ko after rmmod. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Incorrect offset address used for some registers. (Xiaojun Tan) [1662120] - [include] ipmi: RH_KABI macros to pad kabi exposed structs (Tony Camuso) [1658175] - [scsi] reserve space in structures for KABI (Ewan Milne) [1664397]- [include] PCI: Add reserved fields to 'struct hotplug_slot' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct hotplug_slot_ops' (Myron Stowe) [1663534] - [pci] PCI: Add reserved fields to 'struct pci_sriov' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct pci_driver' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct pci_bus' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields, and extension, to 'struct pci_dev' (Myron Stowe) [1663534] - [pci] PCI: Add missing include to drivers/pci.h (Myron Stowe) [1663534] - [pci] PCI/IOV: Use VF0 cached config space size for other VFs (Myron Stowe) [1663534] - [include] PCI: always include 'p2pdma' in 'struct pci_dev' (Myron Stowe) [1663534] - [ata] PCI: Remove pci_set_dma_max_seg_size() (Myron Stowe) [1663534] - [pci] PCI: Remove pci_set_dma_seg_boundary() (Myron Stowe) [1663534] - [include] PCI: Remove pci_unmap_addr() wrappers for DMA API (Myron Stowe) [1663534] - [pci] PCI/AER: Abstract AER interrupt handling (Myron Stowe) [1663534] - [pci] PCI: Uninline PCI bus accessors for better ftracing (Myron Stowe) [1663534] - [pci] PCI/portdrv: Add runtime PM hooks for port service drivers (Myron Stowe) [1663534] - [pci] PCI: Make link active reporting detection generic (Myron Stowe) [1663534] - [block] block: don't lose track of REQ_INTEGRITY flag (Ming Lei) [1665684] - [nvme] nvme-pci: fix nvme_setup_irqs() (Ming Lei) [1661439] - [lib] sbitmap: Protect swap_lock from hardirq (Ming Lei) [1666192] - [lib] sbitmap: Protect swap_lock from softirqs (Ming Lei) [1666192] - [scsi] scsi: isci: initialize shost fully before calling scsi_add_host() (Ming Lei) [1664918] - [nvme] nvmet-fc: Mark NVMe/FC target mode driver as unsupported (Ewan Milne) [1664838] - [netdrv] bnx2x: Assign unique DMAE channel number for FW DMAE transactions. (Jonathan Toppins) [1638306] - [fs] block: don't use un-ordered __set_current_state(TASK_UNINTERRUPTIBLE) (Ming Lei) [1664580] - [netdrv] qed: Wait for ready indication before rereading the shmem (Chad Dupuis) [1652417] - [netdrv] qed: Avoid sending mailbox commands when MFW is not responsive (Chad Dupuis) [1652417] - [netdrv] qed: Wait for MCP halt and resume commands to take place (Chad Dupuis) [1652417] - [netdrv] qed: Prevent a possible deadlock during driver load and unload (Chad Dupuis) [1652417] - [fs] gfs2: Fix loop in gfs2_rbm_find (Andreas Grunbacher) [1658528] - [fs] gfs2: Get rid of potential double-freeing in gfs2_create_inode (Andreas Grunbacher) [1658539]- [vhost] vhost/vsock: fix vhost vsock cid hashing inconsistent (Stefan Hajnoczi) [1619848] {CVE-2018-14625} - [vhost] vhost/vsock: fix use-after-free in network stack callers (Stefan Hajnoczi) [1619848] {CVE-2018-14625} - [netdrv] bnx2x: Add VF spoof-checking configuration (Jonathan Toppins) [1646842] - [netdrv] net-next: hinic: fix a problem in free_tx_poll() (Xiaojun Tan) [1642016] - [netdrv] net: hns: fix for unmapping problem when SMMU is on (Xiaojun Tan) [1640526] - [netdrv] net: hns: add netif_carrier_off before change speed and duplex (Xiaojun Tan) [1640526] - [netdrv] net: hns: add the code for cleaning pkt in chip (Xiaojun Tan) [1640526] - [netdrv] net: hns: modify variable type in hns_nic_reuse_page (Xiaojun Tan) [1640526]- [irqchip] Mark GICv2 deprecated (Wei Huang) [1609391] - [scsi] qla2xxx: Use correct number of vectors for online CPUs (Himanshu Madhani) [1644058] - [scsi] megaraid_sas: mark Aero controllers as tech preview (Tomas Henzl) [1659972] - [scsi] megaraid_sas: add retry logic in megasas_readl (Tomas Henzl) [1659972] - [scsi] scsi: megaraid_sas: Introduce new Aero adapter type (Tomas Henzl) [1659972] - [scsi] scsi: megaraid_sas: Fix Ventura series based checks (Tomas Henzl) [1659972] - [scsi] scsi: libfc: retry PRLI if we cannot analyse the payload (Chris Leech) [1631843] - [scsi] scsi: libfc: check fc_frame_payload_get() return value for null (Chris Leech) [1631843] - [scsi] scsi: libfc: hold disc_mutex in fc_disc_stop_rports() (Chris Leech) [1631843] - [scsi] scsi: libfc: fixup lockdep annotations (Chris Leech) [1631843] - [scsi] scsi: libfc: fixup 'sleeping function called from invalid context' (Chris Leech) [1631843] - [scsi] scsi: libfc: Add lockdep annotations (Chris Leech) [1631843] - [md] dm crypt: fix parsing of extended IV arguments (Mike Snitzer) [1665290] - [kernel] redhat: kabi: reserved padding for kernel sched data structures (Rafael Aquini) [1664858] - [kernel] redhat: kabi: reserved padding for MM related data structures (Rafael Aquini) [1664858] - [vfio] vfio/type1: Fix unmap overflow off-by-one (Alex Williamson) [1662291] - [message] mptspi: pci-id table changes (Tomas Henzl) [1651803] - [message] mptspi: Taint kernel if mptspi is loaded (Tomas Henzl) [1651803] - [block] kabi: reserve space for public data structure (Ming Lei) [1551939] - [block] kabi: reserve space for blk-mq related structure (Ming Lei) [1551939] - [block] kabi: reserve space for bsg related structure (Ming Lei) [1551939] - [block] kabi: reserve space for integrity related structure (Ming Lei) [1551939] - [block] kabi: reserve space for CONFIG_BLK_DEV_ZONED (Ming Lei) [1551939] - [ata] ata: Disable AHCI ALPM feature for Ampere Computing eMAG SATA (David Milburn) [1663347] - [kvm] KVM: x86: Add CPUID support for new instruction WBNOINVD (Andrew Jones) [1659491] - [x86] KVM: x86: Use jmp to invoke kvm_spurious_fault() from .fixup (Andrew Jones) [1659491] - [virt] kvm: Change offset in kvm_write_guest_offset_cached to unsigned (Andrew Jones) [1659491] - [virt] kvm: Disallow wraparound in kvm_gfn_to_hva_cache_init (Andrew Jones) [1659491] - [kvm] KVM: x86: svm: report MSR_IA32_MCG_EXT_CTL as unsupported (Andrew Jones) [1659491] - [virt] arm/arm64: KVM: Add ARM_EXCEPTION_IS_TRAP macro (Andrew Jones) [1659491] - [arm64] arm64: KVM: Avoid setting the upper 32 bits of VTCR_EL2 to 1 (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Fix unintended stage 2 PMD mappings (Andrew Jones) [1659491] - [virt] arm/arm64: KVM: vgic: Force VM halt when changing the active state of GICv3 PPIs/SGIs (Andrew Jones) [1659491] - [arm64] KVM: arm/arm64: Fixup the kvm_exit tracepoint (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Consider priority and active state for pending irq (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Fix off-by-one bug in vgic_get_irq() (Andrew Jones) [1659491] - [kvm] KVM: X86: Fix NULL deref in vcpu_scan_ioapic (Andrew Jones) [1659491] - [kvm] KVM: Fix UAF in nested posted interrupt processing (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Cap SPIs to the VM-defined maximum (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Do not cond_resched_lock() with IRQs disabled (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic-v2: Set active_source to 0 when restoring state (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Fix VMID alloc race by reverting to lock-less (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Free the VMREAD/VMWRITE bitmaps if alloc_kvm_area() fails (Andrew Jones) [1659491] - [kvm] arm64: KVM: Install stage-2 translation before enabling traps (Andrew Jones) [1659491] - [kvm] arm64: KVM: Make VHE Stage-2 TLB invalidation operations non-interruptible (Andrew Jones) [1659491] - [arm64] arm64: entry: Remove confusing comment (Andrew Jones) [1659491] - [kvm] arm64: entry: Place an SB sequence following an ERET instruction (Andrew Jones) [1659491] - [arm64] arm64: Add support for SB barrier and patch in over DSB; ISB sequences (Andrew Jones) [1659491] - [kvm] kvm: nVMX: Set VM instruction error for VMPTRLD of unbacked page (Andrew Jones) [1659491] - [kvm] kvm: svm: Ensure an IBPB on all affected CPUs when freeing a vmcb (Andrew Jones) [1659491] - [kvm] kvm: mmu: Fix race in emulated page table writes (Andrew Jones) [1659491] - [kvm] KVM: nVMX/nSVM: Fix bug which sets vcpu->arch.tsc_offset to L1 tsc_offset (Andrew Jones) [1659491] - [kvm] KVM: VMX: Update shared MSRs to be saved/restored on MSR_EFER.LMA changes (Andrew Jones) [1659491] - [kvm] KVM: x86: Fix kernel info-leak in KVM_HC_CLOCK_PAIRING hypercall (Andrew Jones) [1659491] - [kvm] svm: Add mutex_lock to protect apic_access_page_done on AMD systems (Andrew Jones) [1659491] - [kvm] KVM/nVMX: Do not validate that posted_intr_desc_addr is page aligned (Andrew Jones) [1659491] - [kvm] KVM: arm64: Safety check PSTATE when entering guest and handle IL (Andrew Jones) [1659491] - [virt] KVM: arm64: Fix caching of host MDCR_EL2 value (Andrew Jones) [1659491] - [kvm] x86/kvm/nVMX: allow bare VMXON state migration (Andrew Jones) [1659491] - [kvm] x86/kvm/lapic: preserve gfn_to_hva_cache len on cache reinit (Andrew Jones) [1659491] - [kvm] KVM: hyperv: define VP assist page helpers (Andrew Jones) [1659491] - [kvm] KVM: nVMX: move check_vmentry_postreqs() call to nested_vmx_enter_non_root_mode() (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Always reflect #NM VM-exits to L1 (Andrew Jones) [1659491] - [kvm] KVM: x86: hyperv: consistently use 'hv_vcpu' for 'struct kvm_vcpu_hv' variables (Andrew Jones) [1659491] - [kvm] KVM: x86: hyperv: enforce vp_index < KVM_MAX_VCPUS (Andrew Jones) [1659491] - [kvm] KVM: nVMX: restore host state in nested_vmx_vmexit for VMFail (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Clear reserved bits of #DB exit qualification (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Ensure only THP is candidate for adjustment (Andrew Jones) [1659491] - [kvm] x86: kvm: avoid unused variable warning (Andrew Jones) [1659491] - [kvm] powerpc64/ftrace: Include ftrace.h needed for enable/disable calls (Andrew Jones) [1659491] - [kvm] x86/kvm/vmx: Remove duplicate l1d flush definitions (Andrew Jones) [1659491] - [tools] perf kvm: Fix subcommands on s390 (Andrew Jones) [1659491] - [arm64] arm64: add PSR_AA32_* definitions (Andrew Jones) [1659491] - [pci] PCI: hotplug: Document TODOs (Myron Stowe) [1664454] - [pci] PCI: hotplug: Embed hotplug_slot (Myron Stowe) [1664454] - [pci] PCI: hotplug: Drop hotplug_slot_info (Myron Stowe) [1664454] - [pci] PCI: hotplug: Constify hotplug_slot_ops (Myron Stowe) [1664454] - [pci] PCI: pciehp: Reshuffle controller struct for clarity (Myron Stowe) [1664454] - [pci] PCI: pciehp: Rename controller struct members for clarity (Myron Stowe) [1664454] - [pci] PCI: pciehp: Unify controller and slot structs (Myron Stowe) [1664454] - [pci] PCI: pciehp: Tolerate Presence Detect hardwired to zero (Myron Stowe) [1664454] - [pci] PCI: pciehp: Drop hotplug_slot_ops wrappers (Myron Stowe) [1664454] - [pci] PCI: pciehp: Drop unnecessary includes (Myron Stowe) [1664454] - [pci] PCI: pciehp: Differentiate between surprise and safe removal (Myron Stowe) [1664454] - [pci] PCI: Simplify disconnected marking (Myron Stowe) [1664454] - [tools] perf vendor events arm64: Revise core JSON events for eMAG (Jiri Olsa) [1663353] - [tools] perf vendor events arm64: Enable JSON events for eMAG (Jiri Olsa) [1663353] - [perf] drivers/perf: xgene: Add CPU hotplug support (Jiri Olsa) [1663349] - [scsi] mpt3sas: mark Aero controllers as tech preview (Tomas Henzl) [1663281] - [powerpc] KVM: PPC: Book3S HV: Keep rc bits in shadow pgtable in sync with host (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Introduce kvmhv_update_nest_rmap_rc_list() (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Apply combination of host and l1 pte rc for nested guest (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Align gfn to L1 page size when inserting nest-rmap entry (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Hold kvm->mmu_lock across updating nested pte rc bits (Suraj Jitindar Singh) [1662029] - [tools] perf python: Do not force closing original perf descriptor in evlist.get_pollfd (Jiri Olsa) [1659445] - [mm] mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings (Andrea Arcangeli) [1613993] - [rpmspec] spec: Add libperf-jvmti.so into perf debuginfo rpm (Jiri Olsa) [1653570] - [scsi] scsi: hisi_sas: Fix spin lock management in slot_index_alloc_quirk_v2_hw() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Update v3 hw AIP_LIMIT and CFG_AGING_TIME register values (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Use block layer tag instead for IPTT (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: unmask interrupts ent72 and ent74 (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Free slot later in slot_complete_vx_hw() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Fix the race between IO completion and timeout for SMP/internal IO (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Move evaluation of hisi_hba in hisi_sas_task_prep() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Feed back linkrate(max/min) when re-attached (Xiaojun Tan) [1642819] - [hwtracing] intel_th: pci: Add Ice Lake PCH support (Jiri Olsa) [1485529]- [kernel] userns: also map extents in the reverse map to kernel IDs (Chris von Recklinghausen) [1652679] {CVE-2018-18955} - [net] ipv6: route: Fix return value of ip6_neigh_lookup() on neigh_create() error (Stefano Brivio) [1662789] - [net] ipv6: frags: Fix bogus skb->sk in reassembled packets (Herbert Xu) [1645839] - [net] redhat: blacklist auto-loadable net modules in modules-extra (Marcelo Leitner) [1642795] - [net] redhat: move sctp modules to kernel-modules-extra (Marcelo Leitner) [1642795] - [net] add reserved fields to neighbour (Paolo Abeni) [1655084] - [net] add reserved fields to rtnl_link_stats* (Paolo Abeni) [1655084] - [net] reserve bits in netdev_features_t for future features (Paolo Abeni) [1655084] - [net] add reserved fields to sk_buff (Paolo Abeni) [1655084] - [net] add reserved fields to ipv6_devconf (Paolo Abeni) [1655084] - [net] add reserved fields to fib_rule (Paolo Abeni) [1655084] - [net] add reserved fields to sock (Paolo Abeni) [1655084] - [net] add reserved fields to genl_family (Paolo Abeni) [1655084] - [net] add reserved fields to proto_ops (Paolo Abeni) [1655084] - [net] add reserved fields to proto (Paolo Abeni) [1655084] - [net] add reserved fields to genl_ops (Paolo Abeni) [1655084] - [net] add reserved fields to dst_ops (Paolo Abeni) [1655084] - [net] add reserved fields to dst_entry (Paolo Abeni) [1655084] - [net] add reserved fields to lwtunnel_state (Paolo Abeni) [1655084] - [net] add reserved fields to packet_type (Paolo Abeni) [1655084] - [net] add reserved fields to napi_struct (Paolo Abeni) [1655084] - [net] add reserved fields to net_device (Paolo Abeni) [1655084] - [net] exclude wireless_dev from KABI protection (Paolo Abeni) [1655084] - [net] add reserved fields to dcbnl_rtnl_ops (Paolo Abeni) [1655084] - [net] add reserved fields to xfrm_* (Paolo Abeni) [1655084] - [net] add reserved fields to switchdev_obj (Paolo Abeni) [1655084] - [net] add reserved fields to switchdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to l3mdev_ops (Paolo Abeni) [1655084] - [net] exclude ndisc_ops from kABI protection (Paolo Abeni) [1655084] - [net] add reserved fields to xfrmdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to tlsdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to netdev_rx_queue (Paolo Abeni) [1655084] - [net] add reserved fields to netdev_queue (Paolo Abeni) [1655084] - [net] add reserved fields to rtnl_link_ops (Paolo Abeni) [1655084] - [net] add reserved fields to ethtool_ops (Paolo Abeni) [1655084] - [net] add reserved fields to header_ops (Paolo Abeni) [1655084] - [net] add reserved fields to net_device_ops (Paolo Abeni) [1655084] - [net] add reserved fields to flowi* structs (Paolo Abeni) [1655084] - [arm64] KVM: arm64: Clarify explanation of STAGE2_PGTABLE_LEVELS (Christoph von Recklinghausen) [1643586 1643522] - [arm64] KVM: arm/arm64: Rename kvm_arm_config_vm to kvm_arm_setup_stage2 (Christoph von Recklinghausen) [1643586 1643522] - [virt] KVM: arm64: Drop __cpu_init_stage2 on the VHE path (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Allow tuning the physical address size for VM (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Limit the minimum number of page table levels (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm64: Set a limit on the IPA size (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Add 52bit support for PAR to HPFAR conversoin (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Switch to per VM IPA limit (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Configure VTCR_EL2.SL0 per VM (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Dynamic configuration of VTTBR mask (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Make stage2 page table layout dynamic (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Prepare for dynamic stage2 page table layout (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm/arm64: Prepare for VM specific stage2 translations (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Configure VTCR_EL2 per VM (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Allow arch specific configurations for VM (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Clean up VTCR_EL2 initialisation (Christoph von Recklinghausen) [1643586 1643522] - [arm64] arm64: Add a helper for PARange to physical shift conversion (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Add helper for loading the stage2 setting for a VM (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Remove spurious WARN_ON (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Fix stage2_flush_memslot for 4 level page table (Christoph von Recklinghausen) [1643586 1643522] - [hv] hv_balloon: avoid touching uninitialized struct page during tail onlining (Vitaly Kuznetsov) [1662277] - [x86] Mark AMD EPYC guests as supported (David Arcari) [1663356] - [netdrv] be2net: Disable queue dump in be_tx_timeout handler (Petr Oros) [1646838] - [vhost] vhost: Fix Spectre V1 vulnerability (Jason Wang) [1663469] - [mm] mm/hugetlb.c: teach follow_hugetlb_page() to handle FOLL_NOWAIT (Andrea Arcangeli) [1575028] - [tools] cpupower: Fix AMD Family 0x17 msr_pstate size (Prarit Bhargava) [1659883] - [tools] cpupower: Fix coredump on VMWare (Prarit Bhargava) [1659883] - [scsi] scsi: csiostor: remove flush_scheduled_work() (Arjun Vynipadath) [1663973] - [powerpc] KVM: PPC: Book3S HV: Fix race between kvm_unmap_hva_range and MMU mode switch (David Gibson) [1663225] - [fs] userfaultfd: check VM_MAYWRITE was set after verifying the uffd is registered (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: UFFDIO_COPY: set the page dirty if VM_WRITE is not set (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: add i_size checks (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem/hugetlbfs: only allow to register VM_MAYWRITE vmas (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: allocate anonymous memory for MAP_PRIVATE shmem (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: use ENOENT instead of EFAULT if the atomic copy user fails (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: allow get_mempolicy(MPOL_F_NODE|MPOL_F_ADDR) to trigger userfaults (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] userfaultfd: clear flag if remap event not enabled (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] userfaultfd: disable irqs when taking the waitqueue lock (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] fs/userfaultfd.c: remove redundant pointer uwq (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] NFS: nfs_compare_mount_options always compare auth flavors. (Steve Dickson) [1661619] - [infiniband] RDMA/hns: Bugfix for RoCE loopback test (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Update posting & querying mailbox (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Fix the bug while use multi-hop of pbl (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Init qp context when modify qp from reset to init (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Bugfix pbl configuration for rereg mr (Xiaojun Tan) [1663359] - [security] selinux: add support for RTM_NEWCHAIN, RTM_DELCHAIN, and RTM_GETCHAIN (Ondrej Mosnacek) [1660564] - [scsi] scsi: megaraid_sas: driver version update (Tomas Henzl) [1656261] - [scsi] scsi: megaraid_sas: Use 63-bit DMA addressing (Tomas Henzl) [1656261] - [x86] x86/kvm: mark as TechPreview when running as a nested hypervisor (Vitaly Kuznetsov) [1519039] - [rpmspec] kernel.spec: Fix kernel-tools files section logic (Prarit Bhargava) [1661247] - [crypto] crypto: ccp - Make function sev_get_firmware() static (Gary Hook) [1632894] - [crypto] crypto: ccp - Allow SEV firmware to be chosen based on Family and Model (Gary Hook) [1632894] - [crypto] crypto: ccp - Fix static checker warning (Gary Hook) [1632894] - [crypto] crypto: ccp - add timeout support in the SEV command (Gary Hook) [1632894] - [nvdimm] nvdimm: Use namespace index data to reduce number of label reads needed (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Split label init out from the logic for getting config data (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Remove empty if statement (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Clarify comment in sizeof_namespace_index (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Sanity check labeloff (Jeff Moyer) [1634345] - [nvdimm] libnvdimm, dimm: Maximize label transfer size (Jeff Moyer) [1634345] - [mm] mm/page-writeback.c: fix range_cyclic writeback vs writepages deadlock (Brian Foster) [1659528] - [input] Input: elantech - disable elan-i2c for P52 and P72 (Benjamin Tissoires) [1658602] - [fs] cachefiles: avoid deprecated get_seconds() (David Howells) [1655613] - [fs] fscache, cachefiles: remove redundant variable 'cache' (David Howells) [1655613] - [fs] cachefiles: Explicitly cast enumerated type in put_object (David Howells) [1655613] - [fs] fscache: fix race between enablement and dropping of object (David Howells) [1655613] - [fs] cachefiles: Fix page leak in cachefiles_read_backing_file while vmscan is active (David Howells) [1655613] - [fs] fscache: Fix race in fscache_op_complete() due to split atomic_sub & read (David Howells) [1655613] - [fs] cachefiles: Fix an assertion failure when trying to update a failed object (David Howells) [1655613] - [fs] fscache: Fix out of bound read in long cookie keys (David Howells) [1655613] - [fs] fscache: Fix incomplete initialisation of inline key space (David Howells) [1655613] - [fs] cachefiles: fix the race between cachefiles_bury_object() and rmdir(2) (David Howells) [1655613] - [kernel] ebpf: record usage of eBPF (Jiri Benc) [1654279] - [kernel] add rh_features to /proc (Jiri Benc) [1654279] - [kernel] add support for rh_features (Jiri Benc) [1654279] - [fs] fs/lock: show locks taken by processes from another pidns (Miklos Szeredi) [1616125] - [iommu] iommu/arm-smmu: Support non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm-v7s: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu: Add "iommu.strict" command line option (Xiaojun Tan) [1643114] - [iommu] iommu/dma: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu: Ensure that page-table updates are visible before TLBI (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Implement flush_iotlb_all hook (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Avoid back-to-back CMD_SYNC operations (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Fix unexpected CMD_SYNC timeout (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm: Fix race handling in split_blk_unmap() (Xiaojun Tan) [1643114] - [infiniband] RDMA/hns: Update some attributes of the RoCE device (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Limit the size of extend sge of sq (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Bugfix for CM test (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Submit bad wr when post send wr exception (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Bugfix for reserved qp number (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Refactor the codes for setting transport opode (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Move all prints out of irq handle (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix an error code in hns_roce_v2_init_eq_table() (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix usage of bitmap allocation functions return values (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Support flush cqe for hip08 in kernel space (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Program the tclass and flow label into the hardware (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Use macro instead of magic number (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Modify qp will return errno when qp type is illegal (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Assign the value for vlan field of qp context (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Only assgin the fields of the av if IB_QP_AV bit is set (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Enable modify_cq for uverbs. (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the data type of immediate data (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Use delay instead of usleep (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add illegal hop_num judgement (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add 50GE type of hnae3 device match (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Do not overwrite the error code during error unwind in hns_roce_init (Xiaojun Tan) [1639578] - [infiniband] hns: Remove a set-but-not-used variable (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the implementation of set_mac (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the implementation of set_gid (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add TPQ link table support (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add TSQ link table support (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix endian conversions and annotations (Xiaojun Tan) [1639578] - [scsi] scsi: hisi_sas: Add SATA FIS check for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: add memory barrier in task delivery function (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Tidy hisi_sas_task_prep() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Implement handlers of PCIe FLR for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: relocate some common code for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: tidy host controller reset function a bit (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Fix the failure of recovering PHY from STP link timeout (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: tidy channel interrupt handler for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Drop hisi_sas_slot_abort() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Update a couple of register settings for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Add missing PHY spinlock init (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Pre-allocate slot DMA buffers (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Release all remaining resources in clear nexus ha (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Add a flag to filter PHY events during reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Adjust task reject period during host reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Fix the conflict between dev gone and host reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Use dmam_alloc_coherent() (Zhou Wang) [1639541] - [netdrv] xen/netfront: fix waiting for xenbus state change (Petr Oros) [1638456]- [x86] expand cpu feature/bug bits (David Arcari) [1662434] - [x86] add kabi support for cpuinfo_x86 (David Arcari) [1662434] - [init] Display a message about certified hardware (Steve Best) [1660523] - [scsi] scsi: t10-pi: Return correct ref tag when queue has no integrity profile (Ming Lei) [1660719] - [scsi] scsi: storvsc: Fix a race in sub-channel creation that can cause panic (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: set callbacks on open (Mohammed Gamal) [1650149] - [hv] vmbus: fix subchannel removal (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: defer opening vmbus until first use (Mohammed Gamal) [1650149] - [hv] vmbus: split ring buffer allocation from open (Mohammed Gamal) [1650149] - [hv] vmbus: pass channel to hv_process_channel_removal (Mohammed Gamal) [1650149] - [hv] Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind() (Mohammed Gamal) [1650149] - [uio] hv_uio_generic: map ringbuffer phys addr (Mohammed Gamal) [1650149] - [uio] uio: introduce UIO_MEM_IOVA (Mohammed Gamal) [1650149] - [hv] vmbus: add driver_override support (Mohammed Gamal) [1650149] - [hv] vmbus: keep pointer to ring buffer page (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: increase size of receive and send buffers (Mohammed Gamal) [1650149] - [uio] uio: add SPDX license tags (Mohammed Gamal) [1650149] - [fs] gfs2: take jdata unstuff into account in do_grow (Robert S Peterson) [1660519] - [drm] drm/dp_mst: Check if primary mstb is null (Lyude Paul) [1658711] - [tools] perf tests: Use shebangs in the shell scripts (Michael Petlan) [1613523]- [mm] mm: put_and_wait_on_page_locked() while page is migrated (Baoquan He) [1649214] - [netdrv] i40e: define proper net_device::neigh_priv_len (Stefan Assmann) [1658743] - [netdrv] i40e: fix VLAN.TCI == 0 RX HW offload (Stefan Assmann) [1658743] - [netdrv] i40e: fix mac filter delete when setting mac address (Stefan Assmann) [1658743] - [netdrv] i40e: prevent overlapping tx_timeout recover (Stefan Assmann) [1658743] - [netdrv] i40e: Use correct shift for VLAN priority (Stefan Assmann) [1658743] - [netdrv] i40e: always set ks->base.speed in i40e_get_settings_link_up (Stefan Assmann) [1658743] - [netdrv] i40e: don't restart nway if autoneg not supported (Stefan Assmann) [1658743] - [netdrv] i40e: enable NETIF_F_NTUPLE and NETIF_F_HW_TC at driver load (Stefan Assmann) [1658743] - [netdrv] i40e: restore NETIF_F_GSO_IPXIP[46] to netdev features (Stefan Assmann) [1658743] - [acpi] ACPI/APEI: Clear GHES block_status before panic() (David Arcari) [1662442] - [misc] VMCI: Resource wildcard match fixed (Vitaly Kuznetsov) [1652868] - [mm] mm/page_alloc.c: don't call kasan_free_pages() at deferred mem init (Waiman Long) [1655964] - [block] block/bio: Do not zero user pages (Ming Lei) [1662502] - [vhost] disable zerocopy by default (Jason Wang) [1582756] - [block] kyber: use sbitmap add_wait_queue/list_del wait helpers (Ming Lei) [1661426] - [lib] sbitmap: add helpers for add/del wait queue handling (Ming Lei) [1661426] - [net] Revert "sunrpc: Ensure we always close the socket after a connection shuts down" (Dave Wysochanski) [1657449] - [vhost] vhost/vsock: fix reset orphans race with close timeout (Stefan Hajnoczi) [1660445] - [misc] genwqe: Fix size check (Steve Best) [1660126] - [fs] aio: fix spectre gadget in lookup_ioctx (Jeff Moyer) [1660963] - [block] block: save irq state in blkg_lookup_create() (Ming Lei) [1660299] - [md] dm: don't reuse bio for flushes (Ming Lei) [1660401] - [wireless] mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom (Stanislaw Gruszka) [1637113] - [wireless] nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT (Stanislaw Gruszka) [1637113] - [wireless] nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds (Stanislaw Gruszka) [1637113] - [block] blk-mq: enable IO poll if .nr_queues of type poll > 0 (Ming Lei) [1660826] - [powerpc] powerpc/rtas: Fix a potential race between CPU-Offline & Migration (Desnes Augusto Nunes do Rosario) [1639266] - [x86] kvm: x86: Add AMD's EX_CFG to the list of ignored MSRs (Eduardo Habkost) [1625111] - [scsi] scsi_sysfs: make unpriv_sgio queue attribute accessible for non-block devices (Paolo Bonzini) [1584504] - [block] scsi_ioctl: introduce unpriv_sgio queue flag (Paolo Bonzini) [1584504] - [block] scsi_ioctl: pass request_queue to blk_verify_command (Paolo Bonzini) [1584504] - [fs] ext4: missing !bh check in ext4_xattr_inode_write() (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in __ext4_read_dirblock() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_xattr_move_to_block() on error path (Lukas Czerner) [1659481] - [fs] ext4: release bs.bh before re-using in ext4_xattr_block_find() (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_xattr_get_block() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix possible leak of s_journal_flag_rwsem in error path (Lukas Czerner) [1659481] - [fs] ext4: fix possible leak of sbi->s_group_desc_leak in error path (Lukas Czerner) [1659481] - [fs] ext4: avoid possible double brelse() in add_new_gdb() on error path (Lukas Czerner) [1659481] - [fs] ext4: avoid buffer leak in ext4_orphan_add() after prior errors (Lukas Czerner) [1659481] - [fs] ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty() (Lukas Czerner) [1659481] - [fs] ext4: fix possible inode leak in the retry loop of ext4_resize_fs() (Lukas Czerner) [1659481] - [fs] ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while resizing (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() update_backups()'s error path (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() add_new_gdb_meta_bg()'s error path (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path (Lukas Czerner) [1659481] - [fs] ext4: avoid potential extra brelse in setup_new_flex_group_blocks() (Lukas Czerner) [1659481] - [scsi] scsi: lpfc: Enable Management features for IF_TYPE=6 (Dick Kennedy) [1658755] - [scsi] scsi: mpt3sas: Update driver version to 27.101.00.00 (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Replace readl with ioc->base_readl (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Add separate function for aero doorbell reads (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Introduce flag for aero based controllers (Tomas Henzl) [1659035] - [md] dm: do not allow readahead to limit IO size (Mike Snitzer) [1658757] - [md] dm raid: fix false -EBUSY when handling check/repair message (Mike Snitzer) [1658757] - [block] blk-mq: change blk_mq_queue_busy() to blk_mq_queue_inflight() (Mike Snitzer) [1658757] - [md] dm rq: cleanup leftover code from recently removed q->mq_ops branching (Mike Snitzer) [1658757] - [md] dm verity: log the hash algorithm implementation (Mike Snitzer) [1658757] - [md] dm crypt: log the encryption algorithm implementation (Mike Snitzer) [1658757] - [md] dm integrity: fix spelling mistake in workqueue name (Mike Snitzer) [1658757] - [md] dm flakey: Properly corrupt multi-page bios. (Mike Snitzer) [1658757] - [md] dm: Check for device sector overflow if CONFIG_LBDAF is not set (Mike Snitzer) [1658757] - [md] dm crypt: use u64 instead of sector_t to store iv_offset (Mike Snitzer) [1658757] - [md] dm kcopyd: Fix bug causing workqueue stalls (Mike Snitzer) [1658757] - [md] dm snapshot: Fix excessive memory usage and workqueue stalls (Mike Snitzer) [1658757] - [md] dm bufio: update comment in dm-bufio.c (Mike Snitzer) [1658757] - [md] dm writecache: fix typo in error msg for creating writecache_flush_thread (Mike Snitzer) [1658757] - [md] dm: remove indirect calls from __send_changing_extent_only() (Mike Snitzer) [1658757] - [md] dm mpath: only flush workqueue when needed (Mike Snitzer) [1658757] - [md] dm: avoid indirect call in __dm_make_request (Mike Snitzer) [1658757] - [md] dm thin: bump target version (Mike Snitzer) [1658757] - [md] dm thin: send event about thin-pool state change _after_ making it (Mike Snitzer) [1658757] - [md] dm cache metadata: verify cache has blocks in blocks_are_clean_separate_dirty() (Mike Snitzer) [1658757] - [md] dm writecache: remove disabled code in memory_entry() (Mike Snitzer) [1658757] - [md] dm raid: avoid bitmap with raid4/5/6 journal device (Mike Snitzer) [1658757] - [md] dm crypt: make workqueue names device-specific (Mike Snitzer) [1658757] - [md] dm: add dm_table_device_name() (Mike Snitzer) [1658757] - [md] dm ioctl: harden copy_params()'s copy_from_user() from malicious users (Mike Snitzer) [1658757] - [md] dm: remove unnecessary unlikely() around WARN_ON_ONCE() (Mike Snitzer) [1658757] - [md] dm thin: use refcount_t for thin_c reference counting (Mike Snitzer) [1658757] - [netdrv] nfp: provide a better warning when ring allocation fails (Pablo Cascon) [1645456] - [netdrv] nfp: use kvcalloc() to allocate SW buffer descriptor arrays (Pablo Cascon) [1645456] - [scsi] scsi: lpfc: rport port swap discovery issue. (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: Fix discovery failures during port failovers with lots of vports (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: refactor mailbox structure context fields (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: Correct loss of fc4 type on remote port address change (Dick Kennedy) [1656635] - [hid] HID: multitouch: Add pointstick support for Cirque Touchpad (Perry Yuan) [1656673] - [powerpc] KVM: PPC: Book3S HV: Fix handling for interrupted H_ENTER_NESTED (Suraj Jitindar Singh) [1649980] - [powerpc] powerpc: Select CONFIG_SWIOTLB (Gustavo Duarte) [1648466] - [fs] nfs: Fix a missed page unlock after pg_doio() (Benjamin Coddington) [1651287] - [arm64] arm64: fix possible spectre-v1 write in ptrace_hbp_set_event() (Mark Salter) [1637585] - [fs] fsnotify: Fix busy inodes during unmount (Lukas Czerner) [1650462] - [tools] perf vendor events arm64: Update ThunderX2 implementation defined pmu core events (Robert Richter) [1501638] - [tools] perf tools: Fix undefined symbol scnprintf in libperf-jvmti.so (Jiri Olsa) [1579484]- [block] blk-mq: export hctx->type in debugfs instead of sysfs (Ming Lei) [1660040] - [block] blk-mq: fix dispatch from sw queue (Ming Lei) [1660040] - [block] blk-mq: skip zero-queue maps in blk_mq_map_swqueue (Ming Lei) [1660040] - [nvme] nvme-pci: don't share queue maps (Ming Lei) [1660040] - [block] blk-mq: only dispatch to non-defauly queue maps if they have queues (Ming Lei) [1660040] - [x86] KVM: LAPIC: Fix pv ipis use-before-initialization (Paul Lai) [1657702] - [fs] autofs: fix directory and symlink access (Ian Kent) [1611967] - [infiniband] IB/iser: Fix possible NULL deref at iser_inv_desc() (Don Dutile) [1657574] - [infiniband] RDMA/core: Fix unwinding flow in case of error to register device (Don Dutile) [1657574] - [infiniband] IB/rxe: fix for duplicate request processing and ack psns (Don Dutile) [1657574] - [infiniband] IB/ipoib: Clear IPCB before icmp_send (Don Dutile) [1657574] - [infiniband] RDMA/core: Do not expose unsupported counters (Don Dutile) [1657574] - [infiniband] IB/ucm: Fix Spectre v1 vulnerability (Don Dutile) [1657574] - [infiniband] RDMA/ucma: Fix Spectre v1 vulnerability (Don Dutile) [1657574] - [infiniband] RDMA/uverbs: Don't overwrite NULL pointer with ZERO_SIZE_PTR (Don Dutile) [1657574] - [infiniband] RDMA/cma: Do not ignore net namespace for unbound cm_id (Don Dutile) [1657574] - [net] xprtrdma: Reset credit grant properly after a disconnect (Don Dutile) [1657574] - [input] Input: hyper-v - fix wakeup from suspend-to-idle (Vitaly Kuznetsov) [1588888] - [kernel] kernel: hung_task.c: disable on suspend (Vitaly Kuznetsov) [1588888] - [kernel] redhat: add a comment with warning about RH_KABI_EXCLUDE usage (Jiri Benc) [1656933] - [rpmspec] Sign the aarch64 kernel (Jeremy Linton) [1659158]- [netdrv] nfp: flower: add geneve option match offload (Pablo Cascon) [1655604] - [netdrv] nfp: flower: add geneve option push action offload (Pablo Cascon) [1655604] - [netdrv] nfp: flower: offload tos and tunnel flags for ipv4 udp tunnels (Pablo Cascon) [1655604] - [netdrv] nfp: flower: set ip tunnel ttl from encap action (Pablo Cascon) [1655604] - [netdrv] nfp: flower: extract ipv4 udp tunnel ttl from route (Pablo Cascon) [1655604] - [net] sctp: hold transport before accessing its asoc in sctp_transport_get_next (Marcelo Leitner) [1656271] - [net] sctp: fix the data size calculation in sctp_data_size (Marcelo Leitner) [1656271] - [net] sctp: fix race on sctp_id2asoc (Marcelo Leitner) [1656271] - [net] rtnetlink: ndo_dflt_fdb_dump() only work for ARPHRD_ETHER devices (Hangbin Liu) [1657120] - [netdrv] mlx5e: fix csum adjustments caused by RXFCS (Hangbin Liu) [1657120] - [net] drop skb on failure in ip_check_defrag() (Hangbin Liu) [1657120] - [net] rtnl_configure_link: fix dev flags changes arg to __dev_notify_flags (Hangbin Liu) [1657120] - [net] socket: fix a missing-check bug (Hangbin Liu) [1657120] - [net] rtnetlink: Disallow FDB configuration for non-Ethernet device (Hangbin Liu) [1657120] - [net] rtnetlink: Fail dump if target netnsid is invalid (Hangbin Liu) [1657120] - [net] rtnetlink: fix rtnl_fdb_dump() for ndmsg header (Hangbin Liu) [1657120] - [net] rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096 (Hangbin Liu) [1657120] - [net] socket: fix struct ifreq size in compat ioctl (Hangbin Liu) [1657120] - [net] fix pskb_trim_rcsum_slow() with odd trim offset (Hangbin Liu) [1657120] - [net] gso_segment: Reset skb->mac_len after modifying network header (Hangbin Liu) [1657120] - [net] Use __kernel_clockid_t in uapi net_stamp.h (Davide Caratti) [1638022] - [net] tun: Consistently configure generic netdev params via rtnetlink (Matteo Croce) [1657910] - [net] tun: napi flags belong to tfile (Matteo Croce) [1657910] - [net] tun: initialize napi_mutex unconditionally (Matteo Croce) [1657910] - [net] tun: remove unused parameters (Matteo Croce) [1657910] - [net] team: Forbid enslaving team device to itself (Matteo Croce) [1658725] - [net] sched: Remove TCA_OPTIONS from policy (Davide Caratti) [1658516] - [net] sched: cls_api: add missing validation of netlink attributes (Davide Caratti) [1658516] - [net] sched: gred: pass the right attribute to gred_change_table_def() (Davide Caratti) [1658516] - [net] sched: cls_u32: fix hnode refcounting (Davide Caratti) [1658516] - [net] sched: Add policy validation for tc attributes (Davide Caratti) [1658516] - [net] bpf: use __GFP_COMP while allocating page (Andrea Claudi) [1658231] - [net] xsk: do not call synchronize_net() under RCU read lock (Andrea Claudi) [1658231] - [net] bpf: fix partial copy of map_ptr when dst is scalar (Andrea Claudi) [1658231] - [net] bpf: Fix bpf_msg_pull_data() (Andrea Claudi) [1658231] - [net] bpf: fix shift upon scatterlist ring wrap-around in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix sg shift repair start offset in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix several offset tests in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] vlan: add support for tunnel offload (Andrea Claudi) [1656804] - [net] 8021q: move vlan offload registrations into vlan_core (Hangbin Liu) [1657658] - [net] ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are called (Stefano Brivio) [1658010] - [net] ipv6: Allow onlink routes to have a device mismatch if it is the default route (Stefano Brivio) [1658010] - [net] ipv6: Fix index counter for unicast addresses in in6_dump_addrs (Stefano Brivio) [1658010] - [net] ipv6: mcast: fix a use-after-free in inet6_mc_check (Stefano Brivio) [1658010] - [net] ipv6: rate-limit probes for neighbourless routes (Stefano Brivio) [1658010] - [net] ipv6: stop leaking percpu memory in fib6 info (Stefano Brivio) [1658010] - [net] ipv6: Remove extra call to ip6_convert_metrics for multipath case (Stefano Brivio) [1658010] - [net] ipv6: Display all addresses in output of /proc/net/if_inet6 (Stefano Brivio) [1658010] - [net] ipv6: do not copy dst flags on rt init (Stefano Brivio) [1658010] - [net] ipv6: Only update MTU metric if it set (Stefano Brivio) [1658010] - [net] ipv6: don't get lwtstate twice in ip6_rt_copy_init() (Stefano Brivio) [1658010] - [net] ipv6: Put lwtstate when destroying fib6_info (Stefano Brivio) [1658010] - [net] ip6_tunnel: Fix encapsulation layout (Stefano Brivio) [1658008] - [net] vxlan: fill ttl inherit info (Stefano Brivio) [1658008] - [net] ip_tunnel: be careful when accessing the inner header (Stefano Brivio) [1658008] - [net] vti6: remove !skb->ignore_df check from vti6_xmit() (Stefano Brivio) [1658008] - [net] ip6_vti: fix a null pointer deference when destroy vti6 tunnel (Stefano Brivio) [1658008] - [net] ip6_vti: fix creating fallback tunnel device for vti6 (Stefano Brivio) [1658008] - [net] ip_vti: fix a null pointer deferrence when create vti fallback tunnel (Stefano Brivio) [1658008] - [net] l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache (Stefano Brivio) [1658008] - [net] macsec: let the administrator set UP state even if lowerdev is down (Sabrina Dubroca) [1645540] - [net] macsec: update operstate when lower device changes (Sabrina Dubroca) [1645540] - [net] tcp: do not restart timewait timer on rst reception (Paolo Abeni) [1657988] - [net] tcp: really ignore MSG_ZEROCOPY if no SO_ZEROCOPY (Paolo Abeni) [1657988] - [net] tcp, ulp: add alias for all ulp modules (Paolo Abeni) [1657988] - [net] tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach (Paolo Abeni) [1657988] - [net] ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT state (Paolo Abeni) [1657988] - [net] neighbour: Avoid writing before skb->head in neigh_hh_output() (Stefano Brivio) [1643336] - [net] ipv6: Check available headroom in ip6_xmit() even without options (Stefano Brivio) [1643336] - [net] ipv6: fix possible use-after-free in ip6_xmit() (Stefano Brivio) [1643336] - [net] openvswitch: Fix push/pop ethernet validation (Hangbin Liu) [1657226] - [net] cgroup, netclassid: add a preemption point to write_classid (Hangbin Liu) [1657226] - [net] ethtool: fix a privilege escalation bug (Hangbin Liu) [1657226] - [net] llc: set SOCK_RCU_FREE in llc_sap_add_socket() (Hangbin Liu) [1657226] - [net] dcb: For wild-card lookups, use priority -1, not 0 (Hangbin Liu) [1657226] - [net] packet: fix packet drop as of virtio gso (Hangbin Liu) [1657226] - [net] netlabel: check for IPV4MASK in addrinfo_get (Hangbin Liu) [1657226] - [net] netfilter: seqadj: re-load tcp header pointer after possible head reallocation (Florian Westphal) [1654259] - [net] netfilter: nf_tables: avoid BUG_ON usage (Florian Westphal) [1654259] - [net] netfilter: nf_tables: deactivate expressions in rule replecement routine (Florian Westphal) [1654259] - [net] netfilter: nat: fix double register in masquerade modules (Florian Westphal) [1654259] - [net] netfilter: add missing error handling code for register functions (Florian Westphal) [1654259] - [net] netfilter: nf_tables: fix use-after-free when deleting compat expressions (Florian Westphal) [1654259] - [net] netfilter: xt_RATEEST: remove netns exit routine (Florian Westphal) [1654259] - [net] netfilter: nf_tables: don't use position attribute on rule replacement (Florian Westphal) [1654259] - [net] revert "netfilter: nft_numgen: add map lookups for numgen random operations" (Florian Westphal) [1654259] - [net] netfilter: xt_IDLETIMER: add sysfs filename checking routine (Florian Westphal) [1654259] - [net] netfilter: conntrack: fix calculation of next bucket number in early_drop (Florian Westphal) [1654259] - [net] netfilter: conntrack: get rid of double sizeof (Florian Westphal) [1654259] - [net] netfilter: nft_set_rbtree: add missing rb_erase() in GC routine (Florian Westphal) [1654259] - [net] netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for NF_REPEAT (Florian Westphal) [1654259] - [net] netfilter: nf_tables: release chain in flushing set (Florian Westphal) [1654259] - [net] netfilter: xt_checksum: ignore gso skbs (Florian Westphal) [1654259] - [net] netfilter: xt_cluster: add dependency on conntrack module (Florian Westphal) [1654259] - [net] netfilter: fix memory leaks on netlink_dump_start error (Florian Westphal) [1654259] - [net] netfilter: x_tables: do not fail xt_alloc_table_info too easilly (Florian Westphal) [1654259] - [net] ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest() (Florian Westphal) [1654259] - [net] netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses (Florian Westphal) [1654259] - [net] xfrm: policy: use hlist rcu variants on insert (Sabrina Dubroca) [1657272] - [net] xfrm: validate template mode (Sabrina Dubroca) [1657272] - [net] xfrm: Fix NULL pointer dereference when skb_dst_force clears the dst_entry. (Sabrina Dubroca) [1657272] - [net] xfrm: reset transport header back to network header after all input transforms ahave been applied (Sabrina Dubroca) [1657272] - [net] xfrm: reset crypto_done when iterating over multiple input xfrms (Sabrina Dubroca) [1657272] - [net] xfrm: Validate address prefix lengths in the xfrm selector. (Sabrina Dubroca) [1657272] - [net] tls: fix currently broken MSG_PEEK behavior (Sabrina Dubroca) [1657225] - [net] tls: zero the crypto information from tls_context before freeing (Sabrina Dubroca) [1657225] - [net] tls: clear key material from kernel memory when do_tls_setsockopt_conf fails (Sabrina Dubroca) [1657225] - [net] tls: don't copy the key out of tls12_crypto_info_aes_gcm_128 (Sabrina Dubroca) [1657225] - [net] tls: Set count of SG entries if sk_alloc_sg returns -ENOSPC (Sabrina Dubroca) [1657225] - [net] tls: possible hang when do_tcp_sendpages hits sndbuf is full case (Sabrina Dubroca) [1657225] - [net] tls: Fix improper revert in zerocopy_from_iter (Sabrina Dubroca) [1657225] - [net] tls: Fix zerocopy_from_iter iov handling (Sabrina Dubroca) [1657225] - [net] netfilter: conntrack: reset tcp maxwin on re-register (Florian Westphal) [1647310] - [net] configs: Enable CONFIG_IP_SET_HASH_IPMAC as a module (Stefano Brivio) [1655301] - [net] udp: fix handling of CHECKSUM_COMPLETE packets (Paolo Abeni) [1655656] - [net] udp: Unbreak modules that rely on external __skb_recv_udp() availability (Paolo Abeni) [1655656] - [net] udp6: fix encap return code for resubmitting (Paolo Abeni) [1655656] - [net] team: no need to do team_notify_peers or team_mcast_rejoin when disabling port (Hangbin Liu) [1653197] - [net] sctp: not increase stream's incnt before sending addstrm_in request (Xin Long) [1651428] - [net] sctp: not allow to set asoc prsctp_enable by sockopt (Xin Long) [1647272] - [net] revert "sctp: remove sctp_transport_pmtu_check" (Xin Long) [1643330] - [net] fix XPS static_key accounting (Ivan Vecera) [1651781] - [net] restore call to netdev_queue_numa_node_write when resetting XPS (Ivan Vecera) [1651781] - [net] allow fallback function to pass netdev (Ivan Vecera) [1651781] - [net] allow ndo_select_queue to pass netdev (Ivan Vecera) [1651781] - [net] Add generic ndo_select_queue functions (Ivan Vecera) [1651781] - [net] Add support for subordinate traffic classes to netdev_pick_tx (Ivan Vecera) [1651781] - [net] ixgbe: Add code to populate and use macvlan TC to Tx queue map (Ivan Vecera) [1651781] - [net] Add support for subordinate device traffic classes (Ivan Vecera) [1651781] - [net] net-sysfs: Drop support for XPS and traffic_class on single queue device (Ivan Vecera) [1651781] - [net] Provide stub for __netif_set_xps_queue if there is no CONFIG_XPS (Ivan Vecera) [1651781] - [net] allow to call netif_reset_xps_queues() under cpus_read_lock (Ivan Vecera) [1651781] - [net] documentation: Add explanation for XPS using Rx-queue(s) map (Ivan Vecera) [1651781] - [net] net-sysfs: Add interface for Rx queue(s) map per Tx queue (Ivan Vecera) [1651781] - [net] Enable Tx queue selection based on Rx queues (Ivan Vecera) [1651781] - [net] Record receive queue number for a connection (Ivan Vecera) [1651781] - [net] sock: Change tx_queue_mapping in sock_common to unsigned short (Ivan Vecera) [1651781] - [net] Use static_key for XPS maps (Ivan Vecera) [1651781] - [net] Refactor XPS for CPUs and Rx queues (Ivan Vecera) [1651781] - [net] devlink: Add helper function for safely copy string param (Ivan Vecera) [1647914] - [net] devlink: Fix param cmode driverinit for string type (Ivan Vecera) [1647914] - [net] devlink: Fix param set handling for string type (Ivan Vecera) [1647914] - [net] devlink: Add Documentation/networking/devlink-params-bnxt.txt (Ivan Vecera) [1647914] - [net] devlink: Add Documentation/networking/devlink-params.txt (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter msix_vec_per_pf_min (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter msix_vec_per_pf_max (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter ignore_ari (Ivan Vecera) [1647914] - [net] devlink: double free in devlink_resource_fill() (Ivan Vecera) [1647914] - [net] devlink: Add extack for eswitch operations (Ivan Vecera) [1647914] - [net] devlink: Add generic parameters region_snapshot (Ivan Vecera) [1647914] - [net] devlink: Add support for region snapshot read command (Ivan Vecera) [1647914] - [net] devlink: Add support for region snapshot delete command (Ivan Vecera) [1647914] - [net] devlink: Extend the support querying for region snapshot IDs (Ivan Vecera) [1647914] - [net] devlink: Add support for region get command (Ivan Vecera) [1647914] - [net] devlink: Add support for creating region snapshots (Ivan Vecera) [1647914] - [net] devlink: Add callback to query for snapshot id before snapshot create (Ivan Vecera) [1647914] - [net] devlink: Add support for creating and destroying regions (Ivan Vecera) [1647914] - [net] devlink: fix incorrect return statement (Ivan Vecera) [1647914] - [net] devlink: Add enable_sriov boolean generic parameter (Ivan Vecera) [1647914] - [net] devlink: Add generic parameters internal_err_reset and max_macs (Ivan Vecera) [1647914] - [net] devlink: Add devlink notifications support for params (Ivan Vecera) [1647914] - [net] devlink: Add support for get/set driverinit value (Ivan Vecera) [1647914] - [net] devlink: Add param set command (Ivan Vecera) [1647914] - [net] devlink: Add param get command (Ivan Vecera) [1647914] - [net] devlink: Add devlink_param register and unregister (Ivan Vecera) [1647914] - [net] ipvs: call ip_vs_dst_notifier earlier than ipv6_dev_notf (Xin Long) [1645064] - [net] ipv6: fix a dst leak when removing its exception (Xin Long) [1645064] - [net] netfilter: ipset: list:set: Decrease refcount synchronously on deletion and replace (Stefano Brivio) [1649089] - [net] bridge: remove ipv6 zero address check in mcast queries (Hangbin Liu) [1639666] - [net] bridge: do not add port to router list when receives query with source 0.0.0.0 (Hangbin Liu) [1639666] - [net] netfilter: ipv6: fix oops when defragmenting locally generated fragments (Florian Westphal) [1642341] - [net] xfrm6: call kfree_skb when skb is toobig (Sabrina Dubroca) [1628851] - [net] sched: act_police: fix memory leak in case of invalid control action (Ivan Vecera) [1638022] - [net] sched: act_police: add missing spinlock initialization (Ivan Vecera) [1638022] - [net] netfilter: xt_socket: check sk before checking for netns. (Ivan Vecera) [1638022] - [net] sched: act_police: fix race condition on state variables (Ivan Vecera) [1638022] - [net] sched: cls_flower: validate nested enc_opts_policy to avoid warning (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix memory leak when IDR allocation fails (Ivan Vecera) [1638022] - [net] configs: disable CAKE, ETF & SKBPRIO qdisc in config (Ivan Vecera) [1638022] - [net] tc-tests: test denial of 'goto chain' for exceed traffic in police.json (Ivan Vecera) [1638022] - [net] tc-tests: test denial of 'goto chain' on 'random' traffic in gact.json (Ivan Vecera) [1638022] - [net] sched: act_police: disallow 'goto chain' on fallback control action (Ivan Vecera) [1638022] - [net] sched: act_gact: disallow 'goto chain' on fallback control action (Ivan Vecera) [1638022] - [net] net_sched: fix a crash in tc_new_tfilter() (Ivan Vecera) [1638022] - [net] core: make function ___gnet_stats_copy_basic() static (Ivan Vecera) [1638022] - [net] net_sched: convert idrinfo->lock from spinlock to a mutex (Ivan Vecera) [1638022] - [net] loopback: clear skb->tstamp before netif_rx() (Ivan Vecera) [1638022] - [net] skbuff: preserve sock reference when scrubbing the skb. (Ivan Vecera) [1638022] - [net] netfilter: check if the socket netns is correct. (Ivan Vecera) [1638022] - [net] sched: make function qdisc_free_cb() static (Ivan Vecera) [1638022] - [net] sched: use reference counting for tcf blocks on rules update (Ivan Vecera) [1638022] - [net] sched: implement tcf_block_refcnt_{get|put}() (Ivan Vecera) [1638022] - [net] sched: protect block idr with spinlock (Ivan Vecera) [1638022] - [net] sched: implement functions to put and flush all chains (Ivan Vecera) [1638022] - [net] sched: change tcf block reference counter type to refcount_t (Ivan Vecera) [1638022] - [net] sched: use Qdisc rcu API instead of relying on rtnl lock (Ivan Vecera) [1638022] - [net] sched: add helper function to take reference to Qdisc (Ivan Vecera) [1638022] - [net] sched: extend Qdisc with rcu (Ivan Vecera) [1638022] - [net] sched: rename qdisc_destroy() to qdisc_put() (Ivan Vecera) [1638022] - [net] core: netlink: add helper refcount dec and lock function (Ivan Vecera) [1638022] - [net] sched: act_ipt: check for underflow in __tcf_ipt_init() (Ivan Vecera) [1638022] - [net] sched: Add hardware specific counters to TC actions (Ivan Vecera) [1638022] - [net] core: Add new basic hardware counter (Ivan Vecera) [1638022] - [net] net_sched: change tcf_del_walker() to take idrinfo->lock (Ivan Vecera) [1638022] - [net] sched: Use FIELD_SIZEOF directly instead of reimplementing its function (Ivan Vecera) [1638022] - [net] sched: act_sample: fix NULL dereference in the data path (Ivan Vecera) [1638022] - [net] sched: act_police: don't use spinlock in the data path (Ivan Vecera) [1638022] - [net] sched: act_police: use per-cpu counters (Ivan Vecera) [1638022] - [net] net_sched: notify filter deletion when deleting a chain (Ivan Vecera) [1638022] - [net] htb: use anonymous union for simplicity (Ivan Vecera) [1638022] - [net] net_sched: remove redundant qdisc lock classes (Ivan Vecera) [1638022] - [net] sched: cls_flower: dump offload count value (Ivan Vecera) [1638022] - [net] net_sched: properly cancel netlink dump on failure (Ivan Vecera) [1638022] - [net] sched: fix memory leak in act_tunnel_key_init() (Ivan Vecera) [1638022] - [net] sched: action_ife: take reference to meta module (Ivan Vecera) [1638022] - [net] act_ife: fix a potential use-after-free (Ivan Vecera) [1638022] - [net] sched: act_nat: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_skbedit: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: null actions array pointer before releasing action (Ivan Vecera) [1638022] - [net] sched: fix type of htb statistics (Ivan Vecera) [1638022] - [net] net_sched: add missing tcf_lock for act_connmark (Ivan Vecera) [1638022] - [net] revert "net: sched: act: add extack for lookup callback" (Ivan Vecera) [1638022] - [net] tc-testing: add test-cases for numeric and invalid control action (Ivan Vecera) [1638022] - [net] net_sched: reject unknown tcfa_action values (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix dump of extended layered op (Ivan Vecera) [1638022] - [net] sched: return -ENOENT when trying to remove filter from non-existent chain (Ivan Vecera) [1638022] - [net] sched: fix extack error message when chain is failed to be created (Ivan Vecera) [1638022] - [net] sched: Fix memory exposure from short TCA_U32_SEL (Ivan Vecera) [1638022] - [net] net_sched: fix unused variable warning in stmmac (Ivan Vecera) [1638022] - [net] sch_cake: Fix TC filter flow override and expand it to hosts as well (Ivan Vecera) [1638022] - [net] sch_cake: Remove unused including (Ivan Vecera) [1638022] - [net] act_ife: fix a potential deadlock (Ivan Vecera) [1638022] - [net] act_ife: move tcfa_lock down to where necessary (Ivan Vecera) [1638022] - [net] revert "net: sched: act_ife: disable bh when taking ife_mod_lock" (Ivan Vecera) [1638022] - [net] net_sched: remove unused tcfa_capab (Ivan Vecera) [1638022] - [net] net_sched: remove list_head from tc_action (Ivan Vecera) [1638022] - [net] net_sched: remove unused tcf_idr_check() (Ivan Vecera) [1638022] - [net] net_sched: remove unused parameter for tcf_action_delete() (Ivan Vecera) [1638022] - [net] net_sched: remove unnecessary ops->delete() (Ivan Vecera) [1638022] - [net] net_sched: improve and refactor tcf_action_put_many() (Ivan Vecera) [1638022] - [net] sched: always disable bh when taking tcf_lock (Ivan Vecera) [1638022] - [net] sched: act_ife: always release ife action on init error (Ivan Vecera) [1638022] - [net] cls_matchall: fix tcf_unbind_filter missing (Ivan Vecera) [1638022] - [net] sched: act_ife: disable bh when taking ife_mod_lock (Ivan Vecera) [1638022] - [net] sched: act_mirred method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_vlan method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_skbmod method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_skbedit method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_simple method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_police method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_pedit method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_nat method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_ipt method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_gact method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_sum method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_bpf method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_connmark method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_police: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] core: protect rate estimator statistics pointer with lock (Ivan Vecera) [1638022] - [net] sched: act_mirred: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: extend action ops with put_dev callback (Ivan Vecera) [1638022] - [net] sched: act_vlan: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_tunnel_key: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_skbmod: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_simple: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_sample: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_pedit: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_ipt: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_ife: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_gact: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_csum: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_bpf: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] tc: Update README and add config (Ivan Vecera) [1638022] - [net] sched: fix block->refcnt decrement (Ivan Vecera) [1638022] - [net] tc-tests: initial version of nat action unit tests (Ivan Vecera) [1638022] - [net] sched: allow flower to match tunnel options (Ivan Vecera) [1638022] - [net] flow_dissector: allow dissection of tunnel options from metadata (Ivan Vecera) [1638022] - [net] tc-testing: remove duplicate spaces in skbedit match patterns (Ivan Vecera) [1638022] - [net] tc-testing: remove duplicate spaces in connmark match patterns (Ivan Vecera) [1638022] - [net] tc-testing: flush gact actions on test teardown (Ivan Vecera) [1638022] - [net] tc-testing: fix ip address in u32 test (Ivan Vecera) [1638022] - [net] sched: cls_flower: Fix an error code in fl_tmplt_create() (Ivan Vecera) [1638022] - [net] sched: fix flush on non-existing chain (Ivan Vecera) [1638022] - [net] sched: make tcf_chain_{get, put}() static (Ivan Vecera) [1638022] - [net] sched: fix notifications for action-held chains (Ivan Vecera) [1638022] - [net] sched: change name of zombie chain to "held_by_acts_only" (Ivan Vecera) [1638022] - [net] act_mirred: use TC_ACT_REINSERT when possible (Ivan Vecera) [1638022] - [net] tc: introduce TC_ACT_REINSERT. (Ivan Vecera) [1638022] - [net] tc/act: remove unneeded RCU lock in action callback (Ivan Vecera) [1638022] - [net] sched: user-space can't set unknown tcfa_action values (Ivan Vecera) [1638022] - [net] Add and use skb_mark_not_on_list(). (Ivan Vecera) [1638022] - [net] sch_netem: Move private queue handler to generic location. (Ivan Vecera) [1638022] - [net] sch_htb: Remove local SKB queue handling code. (Ivan Vecera) [1638022] - [net] act_bpf: Use kmemdup instead of duplicating it in tcf_bpf_init_from_ops (Ivan Vecera) [1638022] - [net] cls_bpf: Use kmemdup instead of duplicating it in cls_bpf_prog_from_ops (Ivan Vecera) [1638022] - [net] act_pedit: remove unnecessary semicolon (Ivan Vecera) [1638022] - [net] sched: don't dump chains only held by actions (Ivan Vecera) [1638022] - [net] sch_cake: Make gso-splitting configurable from userspace (Ivan Vecera) [1638022] - [net] sched: unmark chain as explicitly created on delete (Ivan Vecera) [1638022] - [net] sched: cls_api: fix dead code in switch (Ivan Vecera) [1638022] - [net] sched: cls_flower: Use correct inline function for assignment of vlan tpid (Ivan Vecera) [1638022] - [net] sched: fix trailing whitespace (Ivan Vecera) [1638022] - [net] cbs: Add support for the graft function (Ivan Vecera) [1638022] - [net] sched: add skbprio scheduler (Ivan Vecera) [1638022] - [net] selftests: forwarding: add tests for TC chain templates (Ivan Vecera) [1638022] - [net] selftests: forwarding: add tests for TC chains creation adn destruction (Ivan Vecera) [1638022] - [net] selftests: forwarding: move shblock tc support check to a separate helper (Ivan Vecera) [1638022] - [net] sched: cls_flower: propagate chain teplate creation and destruction to drivers (Ivan Vecera) [1638022] - [net] sched: cls_flower: implement chain templates (Ivan Vecera) [1638022] - [net] sched: cls_flower: change fl_init_dissector to accept mask and dissector (Ivan Vecera) [1638022] - [net] sched: cls_flower: move key/mask dumping into a separate function (Ivan Vecera) [1638022] - [net] sched: introduce chain templates (Ivan Vecera) [1638022] - [net] sched: introduce chain object to uapi (Ivan Vecera) [1638022] - [net] sched: Avoid implicit chain 0 creation (Ivan Vecera) [1638022] - [net] sched: push ops lookup bits into tcf_proto_lookup_ops() (Ivan Vecera) [1638022] - [net] nfp: bring back support for offloading shared blocks (Ivan Vecera) [1638022] - [net] sched: use PTR_ERR_OR_ZERO macro in tcf_block_cb_register (Ivan Vecera) [1638022] - [net] tc-tests: initial version of fw filter unit tests (Ivan Vecera) [1638022] - [net] sch_cake: Fix tin order when set through skb->priority (Ivan Vecera) [1638022] - [net] sched: act_skbedit: don't use spinlock in the data path (Ivan Vecera) [1638022] - [net] sched: skbedit: use per-cpu counters (Ivan Vecera) [1638022] - [net] tc-testing: add geneve options in tunnel_key unit tests (Ivan Vecera) [1638022] - [net] sched: fix unprotected access to rcu cookie pointer (Ivan Vecera) [1638022] - [net] sched: act_ife: fix memory leak in ife init (Ivan Vecera) [1638022] - [net] sched: refactor flower walk to iterate over idr (Ivan Vecera) [1638022] - [net] sched: flower: Fix null pointer dereference when run tc vlan command (Ivan Vecera) [1638022] - [net] sched: Fix warnings from xchg() on RCU'd cookie pointer. (Ivan Vecera) [1638022] - [net] cls_flower: fix error values for commands not supported by drivers (Ivan Vecera) [1638022] - [net] nfp: handle cls_flower command default case (Ivan Vecera) [1638022] - [net] bnxt: simplify cls_flower command switch and handle default case (Ivan Vecera) [1638022] - [net] sch_cake: Conditionally split GSO segments (Ivan Vecera) [1638022] - [net] sch_cake: Add overhead compensation support to the rate shaper (Ivan Vecera) [1638022] - [net] sch_cake: Add DiffServ handling (Ivan Vecera) [1638022] - [net] sch_cake: Add NAT awareness to packet classifier (Ivan Vecera) [1638022] - [net] netfilter: Add nf_ct_get_tuple_skb global lookup function (Ivan Vecera) [1638022] - [net] sch_cake: Add optional ACK filter (Ivan Vecera) [1638022] - [net] sch_cake: Add ingress mode (Ivan Vecera) [1638022] - [net] sched: Add Common Applications Kept Enhanced (cake) qdisc (Ivan Vecera) [1638022] - [net] Use __u32 in uapi net_stamp.h (Ivan Vecera) [1638022] - [net] sched: flower: Add supprt for matching on QinQ vlan headers (Ivan Vecera) [1638022] - [net] sched: flower: Dump the ethertype encapsulated in vlan (Ivan Vecera) [1638022] - [net] flow_dissector: Add support for QinQ dissection (Ivan Vecera) [1638022] - [net] sched: flower: Add support for matching on vlan ethertype (Ivan Vecera) [1638022] - [net] flow_dissector: Save vlan ethertype from headers (Ivan Vecera) [1638022] - [net] sched: change action API to use array of pointers to actions (Ivan Vecera) [1638022] - [net] sched: atomically check-allocate action (Ivan Vecera) [1638022] - [net] sched: use reference counting action init (Ivan Vecera) [1638022] - [net] sched: don't release reference on action overwrite (Ivan Vecera) [1638022] - [net] sched: implement reference counted action release (Ivan Vecera) [1638022] - [net] sched: add 'delete' function to action ops (Ivan Vecera) [1638022] - [net] sched: implement action API that deletes action by index (Ivan Vecera) [1638022] - [net] sched: always take reference to action (Ivan Vecera) [1638022] - [net] sched: implement unlocked action init API (Ivan Vecera) [1638022] - [net] sched: change type of reference and bind counters (Ivan Vecera) [1638022] - [net] sched: use rcu for action cookie update (Ivan Vecera) [1638022] - [net] sched: Make etf report drops on error_queue (Ivan Vecera) [1638022] - [net] sched: Add HW offloading capability to ETF (Ivan Vecera) [1638022] - [net] sched: Introduce the ETF Qdisc (Ivan Vecera) [1638022] - [net] sched: Allow creating a Qdisc watchdog with other clocks (Ivan Vecera) [1638022] - [net] packet: Hook into time based transmission. (Ivan Vecera) [1638022] - [net] ipv6: Hook into time based transmission (Ivan Vecera) [1638022] - [net] ipv4: Hook into time based transmission (Ivan Vecera) [1638022] - [net] Add a new socket option for a future transmit time. (Ivan Vecera) [1638022] - [net] Clear skb->tstamp only on the forwarding path (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix possible memory leak in tcf_pedit_init() (Ivan Vecera) [1638022] - [net] net sched actions: add extack messages in pedit action (Ivan Vecera) [1638022] - [net] net:sched: add action inheritdsfield to skbedit (Ivan Vecera) [1638022] - [net] tc-testing: initial version of tunnel_key unit tests (Ivan Vecera) [1638022] - [net] net sched actions: avoid bitwise operation on signed value in pedit (Ivan Vecera) [1638022] - [net] net sched actions: fix misleading text strings in pedit action (Ivan Vecera) [1638022] - [net] net sched actions: use sizeof operator for buffer length (Ivan Vecera) [1638022] - [net] net sched actions: fix sparse warning (Ivan Vecera) [1638022] - [net] net sched actions: fix coding style in pedit headers (Ivan Vecera) [1638022] - [net] net sched actions: fix coding style in pedit action (Ivan Vecera) [1638022] - [net] netem: slotting with non-uniform distribution (Ivan Vecera) [1638022] - [net] check tunnel option type in tunnel flags (Ivan Vecera) [1638022] - [net] sched: act_tunnel_key: add extended ack support (Ivan Vecera) [1638022] - [net] tc-tests: add an extreme-case csum action test (Ivan Vecera) [1638022] - [net] net_sched: remove unused htb drop_list (Ivan Vecera) [1638022]- [rpmspec] always run make with HOSTCFLAGS/HOSTLDFLAGS set (Jiri Olsa) [1624124] - [rpmspec] Pass global build flags to tools build (Jiri Olsa) [1624124] - [rpmspec] Pass global build flags to bpftool build (Jiri Olsa) [1624124] - [kernel] kbuild: Use HOST*FLAGS options from the command line (Jiri Olsa) [1624124] - [scripts] kbuild: Rename HOST_LOADLIBES to KBUILD_HOSTLDLIBS (Jiri Olsa) [1624124] - [tools] kbuild: Rename HOSTLDFLAGS to KBUILD_HOSTLDFLAGS (Jiri Olsa) [1624124] - [scripts] kbuild: Rename HOSTCXXFLAGS to KBUILD_HOSTCXXFLAGS (Jiri Olsa) [1624124] - [tools] kbuild: Rename HOSTCFLAGS to KBUILD_HOSTCFLAGS (Jiri Olsa) [1624124] - [tools] tools cpupower: Override CFLAGS assignments (Jiri Olsa) [1624124] - [tools] tools cpupower debug: Allow to use outside build flags (Jiri Olsa) [1624124] - [tools] perf tools: Pass build flags to traceevent build (Jiri Olsa) [1624124] - [tools] tools lib traceevent: Use LDFLAGS in the build commands (Jiri Olsa) [1624124] - [tools] perf tools: Link libperf-jvmti.so with LDFLAGS variable (Jiri Olsa) [1624124] - [tools] bpftool: Allow add linker flags via EXTRA_LDFLAGS variable (Jiri Olsa) [1624124] - [tools] bpftool: Allow to add compiler flags via EXTRA_CFLAGS variable (Jiri Olsa) [1624124] - [block] blkcg: handle dying request_queue when associating a blkg (Ming Lei) [1655485] - [block] block: deactivate blk_stat timer in wbt_disable_default() (Ming Lei) [1655485] - [lib] sbitmap: flush deferred clears for resize and shallow gets (Ming Lei) [1655485] - [md] dm: fix request-based dm's use of dm_wait_for_completion (Ming Lei) [1655485] - [nvme] nvme: fix irq vs io_queue calculations (Ming Lei) [1655485] - [md] dm: fix inflight IO check (Ming Lei) [1655485] - [md] dm: remove the pending IO accounting (Ming Lei) [1655485] - [block] block: return just one value from part_in_flight (Ming Lei) [1655485] - [block] block: switch to per-cpu in-flight counters (Ming Lei) [1655485] - [block] block: delete part_round_stats and switch to less precise counting (Ming Lei) [1655485] - [block] block: stop passing 'cpu' to all percpu stats methods (Ming Lei) [1655485] - [md] dm rq: leverage blk_mq_queue_busy() to check for outstanding IO (Ming Lei) [1655485] - [md] dm: dont rewrite dm_disk(md)->part0.in_flight (Ming Lei) [1655485] - [lib] sbitmap: silence bogus lockdep IRQ warning (Ming Lei) [1655485] - [scsi] scsi: Fix a harmless double shift bug (Ming Lei) [1655485] - [block] blk-mq: re-build queue map in case of kdump kernel (Ming Lei) [1655485] - [block] blkcg: put back rcu lock in blkcg_bio_issue_check() (Ming Lei) [1655485] - [block] block: convert io-latency to use rq_qos_wait (Ming Lei) [1655485] - [block] block: convert wbt_wait() to use rq_qos_wait() (Ming Lei) [1655485] - [block] block: add rq_qos_wait to rq_qos (Ming Lei) [1655485] - [block] blkcg: rename blkg_try_get() to blkg_tryget() (Ming Lei) [1655485] - [block] blkcg: change blkg reference counting to use percpu_ref (Ming Lei) [1655485] - [block] blkcg: remove bio_disassociate_task() (Ming Lei) [1655485] - [block] blkcg: remove additional reference to the css (Ming Lei) [1655485] - [block] blkcg: remove bio->bi_css and instead use bio->bi_blkg (Ming Lei) [1655485] - [block] blkcg: associate writeback bios with a blkg (Ming Lei) [1655485] - [block] blkcg: associate a blkg for pages being evicted by swap (Ming Lei) [1655485] - [block] blkcg: consolidate bio_issue_init() to be a part of core (Ming Lei) [1655485] - [block] blkcg: associate blkg when associating a device (Ming Lei) [1655485] - [block] dm: set the static flush bio device on demand (Ming Lei) [1655485] - [block] blkcg: introduce common blkg association logic (Ming Lei) [1655485] - [block] blkcg: convert blkg_lookup_create() to find closest blkg (Ming Lei) [1655485] - [block] blkcg: update blkg_lookup_create() to do locking (Ming Lei) [1655485] - [block] blkcg: fix ref count issue with bio_blkcg() using task_css (Ming Lei) [1655485] - [block] blk-mq: remove QUEUE_FLAG_POLL from default MQ flags (Ming Lei) [1655485] - [block] block: enable polling by default if a poll map is initalized (Ming Lei) [1655485] - [block] block: only allow polling if a poll queue_map exists (Ming Lei) [1655485] - [block] block: remove ->poll_fn (Ming Lei) [1655485] - [nvme] nvme-mpath: remove I/O polling support (Ming Lei) [1655485] - [nvme] nvme-rdma: remove I/O polling support (Ming Lei) [1655485] - [nvme] nvme-pci: remove the CQ lock for interrupt driven queues (Ming Lei) [1655485] - [nvme] nvme-pci: don't poll from irq context when deleting queues (Ming Lei) [1655485] - [nvme] nvme-pci: refactor nvme_disable_io_queues (Ming Lei) [1655485] - [nvme] nvme-pci: consolidate code for polling non-dedicated queues (Ming Lei) [1655485] - [nvme] nvme-pci: only allow polling with separate poll queues (Ming Lei) [1655485] - [nvme] nvme-pci: cleanup SQ allocation a bit (Ming Lei) [1655485] - [nvme] nvme-pci: use atomic bitops to mark a queue enabled (Ming Lei) [1655485] - [block] block: move queues types to the block layer (Ming Lei) [1655485] - [fs] aio: clear IOCB_HIPRI (Ming Lei) [1655485] - [lib] sbitmap: fix sbitmap_for_each_set() (Ming Lei) [1655485] - [block] blk-mq: don't call ktime_get_ns() if we don't need it (Ming Lei) [1655485] - [block] block: add cmd_flags to print_req_error (Ming Lei) [1655485] - [lib] sbitmap: optimize wakeup check (Ming Lei) [1655485] - [lib] sbitmap: ammortize cost of clearing bits (Ming Lei) [1655485] - [block] block: avoid extra bio reference for async O_DIRECT (Ming Lei) [1655485] - [lib] sbitmap: don't loop for find_next_zero_bit() for !round_robin (Ming Lei) [1655485] - [block] blk-mq: use plug for devices that implement ->commits_rqs() (Ming Lei) [1655485] - [block] blk-mq: use bd->last == true for list inserts (Ming Lei) [1655485] - [block] ataflop: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [block] virtio_blk: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [nvme] nvme: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [block] blk-mq: add mq_ops->commit_rqs() (Ming Lei) [1655485] - [block] block: improve logic around when to sort a plug list (Ming Lei) [1655485] - [block] blk-mq: Add a NULL check in blk_mq_free_map_and_requests() (Ming Lei) [1655485] - [block] ataflop: fix error handling in atari_floppy_init() (Ming Lei) [1655485] - [block] block: add io timeout to sysfs (Ming Lei) [1655485] - [block] block: use rcu_work instead of call_rcu to avoid sleep in softirq (Ming Lei) [1655485] - [block] blk-mq: fix failure to decrement plug count on single rq removal (Ming Lei) [1655485] - [block] sunvdc: Do not spin in an infinite loop when vio_ldc_send() returns EAGAIN (Ming Lei) [1655485] - [block] block: sum requests in the plug structure (Ming Lei) [1655485] - [block] blk-mq: Simplify request completion state (Ming Lei) [1655485] - [scsi] scsi: Do not rely on blk-mq for double completions (Ming Lei) [1655485] - [block] blk-mq: Return true if request was completed (Ming Lei) [1655485] - [block] blk-mq: never redirect polled IO completions (Ming Lei) [1655485] - [block] blk-mq: ensure mq_ops ->poll() is entered at least once (Ming Lei) [1655485] - [block] block: make blk_poll() take a parameter on whether to spin or not (Ming Lei) [1655485] - [nvme] nvme: remove opportunistic polling from bdev target (Ming Lei) [1655485] - [block] blk-mq: remove 'tag' parameter from mq_ops->poll() (Ming Lei) [1655485] - [block] blk-mq: when polling for IO, look for any completion (Ming Lei) [1655485] - [block] block: fix attempt to assign NULL io_context (Ming Lei) [1655485] - [block] block: Initialize BIO I/O priority early (Ming Lei) [1655485] - [block] block: prevent merging of requests with different priorities (Ming Lei) [1655485] - [fs] aio: Fix fallback I/O priority value (Ming Lei) [1655485] - [block] block: Introduce get_current_ioprio() (Ming Lei) [1655485] - [block] block: Remove bio->bi_ioc (Ming Lei) [1655485] - [fs] aio: Comment use of IOCB_FLAG_IOPRIO aio flag (Ming Lei) [1655485] - [nvme] nvme-fc: remove ->poll implementation (Ming Lei) [1655485] - [block] block: have ->poll_fn() return number of entries polled (Ming Lei) [1655485] - [block] block: avoid ordered task state change for polled IO (Ming Lei) [1655485] - [nvme] nvme: default to 0 poll queues (Ming Lei) [1655485] - [block] floppy: remove now unused 'flags' variable (Ming Lei) [1655485] - [mmc] mmc: stop abusing the request queue_lock pointer (Ming Lei) [1655485] - [block] ide: don't acquire queue_lock in ide_complete_pm_rq (Ming Lei) [1655485] - [block] ide: don't acquire queue lock in ide_pm_execute_rq (Ming Lei) [1655485] - [block] pktcdvd: remove queue_lock around blk_queue_max_hw_sectors (Ming Lei) [1655485] - [block] floppy: remove queue_lock around floppy_end_request (Ming Lei) [1655485] - [block] block: remove the rq_alloc_data request_queue field (Ming Lei) [1655485] - [block] block: don't plug for aio/O_DIRECT HIPRI IO (Ming Lei) [1655485] - [block] block: for async O_DIRECT, mark us as polling if asked to (Ming Lei) [1655485] - [block] block: add polled wakeup task helper (Ming Lei) [1655485] - [block] blk-rq-qos: inline check for q->rq_qos functions (Ming Lei) [1655485] - [block] block: add queue_is_mq() helper (Ming Lei) [1655485] - [nvme] nvme: provide optimized poll function for separate poll queues (Ming Lei) [1655485] - [block] ide: clear ide_req()->special for non-passthrough requests (Ming Lei) [1655485] - [nvme] nvme: fix handling of EINVAL on pci_alloc_irq_vectors_affinity() (Ming Lei) [1655485] - [block] block: add wbt_disable_default export for BFQ (Ming Lei) [1655485] - [block] block: remove the queue_lock indirection (Ming Lei) [1655485] - [block] block: remove the lock argument to blk_alloc_queue_node (Ming Lei) [1655485] - [mmc] mmc: stop abusing the request queue_lock pointer (Ming Lei) [1655485] - [mmc] mmc: simplify queue initialization (Ming Lei) [1655485] - [block] umem: don't override the queue_lock (Ming Lei) [1655485] - [block] drbd: don't override the queue_lock (Ming Lei) [1655485] - [block] blk-cgroup: move locking into blkg_destroy_all (Ming Lei) [1655485] - [block] blk-cgroup: consolidate error handling in blkcg_init_queue (Ming Lei) [1655485] - [block] block: remove a few unused exports (Ming Lei) [1655485] - [block] block: update a few comments for the legacy request removal (Ming Lei) [1655485] - [block] block: remove the unused lock argument to rq_qos_throttle (Ming Lei) [1655485] - [block] block: remove queue_lockdep_assert_held (Ming Lei) [1655485] - [block] block: use atomic bitops for ->queue_flags (Ming Lei) [1655485] - [block] block: don't hold the queue_lock over blk_abort_request (Ming Lei) [1655485] - [block] block: remove deadline __deadline manipulation helpers (Ming Lei) [1655485] - [block] block: remove QUEUE_FLAG_BYPASS and ->bypass (Ming Lei) [1655485] - [nvme] nvmet-rdma: fix response use after free (Ming Lei) [1655485] - [nvme] nvme: validate controller state before rescheduling keep alive (Ming Lei) [1655485] - [block] block, bfq: fix decrement of num_active_groups (Ming Lei) [1655485] - [ata] libata: whitelist all SAMSUNG MZ7KM* solid-state disks (Ming Lei) [1655485] - [nvme] nvme-rdma: fix double freeing of async event data (Ming Lei) [1655485] - [nvme] nvme-pci: fix surprise removal (Ming Lei) [1655485] - [nvme] nvme: Free ctrl device name on init failure (Ming Lei) [1655485] - [nvme] nvme-fc: resolve io failures during connect (Ming Lei) [1655485] - [nvme] nvme: make sure ns head inherits underlying device limits (Ming Lei) [1655485] - [nvme] nvmet: don't try to add ns to p2p map unless it actually uses it (Ming Lei) [1655485] - [nvme] nvme-pci: fix conflicting p2p resource adds (Ming Lei) [1655485] - [nvme] nvmet: Optionally use PCI P2P memory (Ming Lei) [1655485] - [nvme] nvmet: Introduce helper functions to allocate and free request SGLs (Ming Lei) [1655485] - [nvme] nvme-pci: Add support for P2P memory in requests (Ming Lei) [1655485] - [nvme] nvme-pci: Use PCI p2pmem subsystem to manage the CMB (Ming Lei) [1655485] - [infiniband] IB/core: Ensure we map P2P memory correctly in rdma_rw_ctx_[init|destroy]() (Ming Lei) [1655485] - [block] block: Add PCI P2P flag for request queue (Ming Lei) [1655485] - [documentation] PCI/P2PDMA: Add P2P DMA driver writer's documentation (Ming Lei) [1655485] - [documentation] docs-rst: Add a new directory for PCI documentation (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Introduce configfs/sysfs enable attribute helpers (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Add PCI p2pmem DMA mappings to adjust the bus offset (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Add sysfs group to display p2pmem stats (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Support peer-to-peer memory (Ming Lei) [1655485] - [nvme] nvmet-rdma: support max(16KB, PAGE_SIZE) inline data (Ming Lei) [1655485] - [nvme] nvme-rdma: support up to 4 segments of inline data (Ming Lei) [1655485] - [fs] aio: fix failure to put the file pointer (Ming Lei) [1655485] - [lib] scsi: Remove percpu_ida (Ming Lei) [1655485] - [scsi] scsi: target: Convert target drivers to use sbitmap (Ming Lei) [1655485] - [scsi] scsi: target: Abstract tag freeing (Ming Lei) [1655485] - [block] mmc: block: Fix unsupported parallel dispatch of requests (Ming Lei) [1655485] - [scsi] scsi: target: sbitmap: add seq_file forward declaration (Ming Lei) [1655485] - [mm] mm, memory_hotplug: do not clear numa_node association after hot_remove (Waiman Long) [1657422] - [fs] iomap: partially revert 4721a601099 (simulated directio short read on EFAULT) (Brian Foster) [1654713] - [fs] splice: don't read more than available pipe space (Brian Foster) [1654713] - [fs] vfs: allow some remap flags to be passed to vfs_clone_file_range (Brian Foster) [1654713] - [fs] xfs: fix inverted return from xfs_btree_sblock_verify_crc (Brian Foster) [1654713] - [fs] xfs: fix PAGE_MASK usage in xfs_free_file_space (Brian Foster) [1654713] - [fs] fs/xfs: fix f_ffree value for statfs when project quota is set (Brian Foster) [1654713] - [fs] iomap: readpages doesn't zero page tail beyond EOF (Brian Foster) [1654713] - [fs] vfs: vfs_dedupe_file_range() doesn't return EOPNOTSUPP (Brian Foster) [1654713] - [fs] iomap: dio data corruption and spurious errors when pipes fill (Brian Foster) [1654713] - [fs] iomap: sub-block dio needs to zeroout beyond EOF (Brian Foster) [1654713] - [fs] iomap: FUA is wrong for DIO O_DSYNC writes into unwritten extents (Brian Foster) [1654713] - [fs] xfs: delalloc -> unwritten COW fork allocation can go wrong (Brian Foster) [1654713] - [fs] xfs: flush removing page cache in xfs_reflink_remap_prep (Brian Foster) [1654713] - [fs] xfs: extent shifting doesn't fully invalidate page cache (Brian Foster) [1654713] - [fs] xfs: finobt AG reserves don't consider last AG can be a runt (Brian Foster) [1654713] - [fs] xfs: fix transient reference count error in xfs_buf_resubmit_failed_buffers (Brian Foster) [1654713] - [fs] xfs: uncached buffer tracing needs to print bno (Brian Foster) [1654713] - [fs] xfs: make xfs_file_remap_range() static (Brian Foster) [1654713] - [fs] xfs: fix shared extent data corruption due to missing cow reservation (Brian Foster) [1654713] - [fs] xfs: fix overflow in xfs_attr3_leaf_verify (Brian Foster) [1654713] - [fs] xfs: print buffer offsets when dumping corrupt buffers (Brian Foster) [1654713] - [fs] xfs: Fix error code in 'xfs_ioc_getbmap()' (Brian Foster) [1654713] - [fs] xfs: cancel COW blocks before swapext (Brian Foster) [1654713] - [fs] xfs: clear ail delwri queued bufs on unmount of shutdown fs (Brian Foster) [1654713] - [fs] xfs: use offsetof() in place of offset macros for __xfsstats (Brian Foster) [1654713] - [fs] xfs: Fix xqmstats offsets in /proc/fs/xfs/xqmstat (Brian Foster) [1654713] - [fs] xfs: fix use-after-free race in xfs_buf_rele (Brian Foster) [1654713] - [fs] xfs: Add attibute remove and helper functions (Brian Foster) [1654713] - [fs] xfs: Add attibute set and helper functions (Brian Foster) [1654713] - [fs] xfs: Add helper function xfs_attr_try_sf_addname (Brian Foster) [1654713] - [fs] xfs: Move fs/xfs/xfs_attr.h to fs/xfs/libxfs/xfs_attr.h (Brian Foster) [1654713] - [fs] xfs: issue log message on user force shutdown (Brian Foster) [1654713] - [fs] xfs: fix buffer state management in xrep_findroot_block (Brian Foster) [1654713] - [fs] xfs: always assign buffer verifiers when one is provided (Brian Foster) [1654713] - [fs] xfs: xrep_findroot_block should reject root blocks with siblings (Brian Foster) [1654713] - [fs] xfs: add a define for statfs magic to uapi (Brian Foster) [1654713] - [fs] xfs: print dangling delalloc extents (Brian Foster) [1654713] - [fs] xfs: fix fork selection in xfs_find_trim_cow_extent (Brian Foster) [1654713] - [fs] xfs: remove the unused trimmed argument from xfs_reflink_trim_around_shared (Brian Foster) [1654713] - [fs] xfs: remove the unused shared argument to xfs_reflink_reserve_cow (Brian Foster) [1654713] - [fs] xfs: handle zeroing in xfs_file_iomap_begin_delay (Brian Foster) [1654713] - [fs] xfs: remove suport for filesystems without unwritten extent flag (Brian Foster) [1654713] - [fs] xfs: remove XFS_IO_INVALID (Brian Foster) [1654713] - [fs] xfs: remove [cm]time update from reflink calls (Brian Foster) [1654713] - [fs] xfs: remove xfs_reflink_remap_range (Brian Foster) [1654713] - [fs] xfs: remove redundant remap partial EOF block checks (Brian Foster) [1654713] - [fs] xfs: support returning partial reflink results (Brian Foster) [1654713] - [fs] xfs: clean up xfs_reflink_remap_blocks call site (Brian Foster) [1654713] - [fs] xfs: fix pagecache truncation prior to reflink (Brian Foster) [1654713] - [fs] vfs: clean up generic_remap_file_range_prep return value (Brian Foster) [1654713] - [fs] vfs: hide file range comparison function (Brian Foster) [1654713] - [fs] vfs: enable remap callers that can handle short operations (Brian Foster) [1654713] - [fs] vfs: plumb remap flags through the vfs dedupe functions (Brian Foster) [1654713] - [fs] vfs: plumb remap flags through the vfs clone functions (Brian Foster) [1654713] - [fs] vfs: make remap_file_range functions take and return bytes completed (Brian Foster) [1654713] - [fs] vfs: remap helper should update destination inode metadata (Brian Foster) [1654713] - [fs] vfs: pass remap flags to generic_remap_checks (Brian Foster) [1654713] - [fs] vfs: pass remap flags to generic_remap_file_range_prep (Brian Foster) [1654713] - [fs] vfs: combine the clone and dedupe into a single remap_file_range (Brian Foster) [1654713] - [fs] vfs: rename clone_verify_area to remap_verify_area (Brian Foster) [1654713] - [fs] vfs: rename vfs_clone_file_prep to be more descriptive (Brian Foster) [1654713] - [fs] vfs: skip zero-length dedupe requests (Brian Foster) [1654713] - [fs] vfs: avoid problematic remapping requests into partial EOF block (Brian Foster) [1654713] - [fs] vfs: strengthen checking of file range inputs to generic_remap_checks (Brian Foster) [1654713] - [fs] vfs: exit early from zero length remap operations (Brian Foster) [1654713] - [fs] vfs: check file ranges before cloning files (Brian Foster) [1654713] - [fs] vfs: vfs_clone_file_prep_inodes should return EINVAL for a clone from beyond EOF (Brian Foster) [1654713] - [block] blk-mq: not embed .mq_kobj and ctx->kobj into queue instance (Ming Lei) [1653124] - [fs] fs: fix lost error code in dio_complete (Ming Lei) [1655364] - [iommu] iommu/iova: Optimise attempts to allocate iova from 32bit address range (Robert Richter) [1639202]- [drm] drm/nouveau/drm/nouveau: Check rc from drm_dp_mst_topology_mgr_resume() (Lyude Paul) [1658810] - [x86] Mark Intel Apollo Lake supported (David Arcari) [1653799] - [infiniband] IB/mlx5: Fix implicit ODP interrupted page fault (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Improve ODP debugging messages (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Use multi threaded workqueue for page fault handling (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Return success for PAGE_FAULT_RESUME in internal error state (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Lock QP during page fault handling (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Enumerate page fault types (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Add interface to hold and release core resources (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Release resource on error flow (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Correctly set PFC param if global pause is turned off. (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_en: Change min MTU size to ETH_MIN_MTU (Alaa Hleihel) [1658085] - [netdrv] mlx5: fix get_ip_proto() (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Fix page fault handling for MW (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Initialize return variable in case pagefault was skipped (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Skip non-ODP MR when handling a page fault (Alaa Hleihel) [1658085] - [net] net/dim: Update DIM start sample after each DIM iteration (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Avoid load failure due to unknown link width (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Fix fence type for IB_WR_LOCAL_INV WR (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Removed unnecessary warnings in FEC caps query (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Fix selftest for small MTUs (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: RX, verify received packet size in Linear Striding RQ (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Apply the correct check for supporting TC esw rules split (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Adjust to max number of channles when re-attaching (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Always use the match level enum when parsing TC rule match (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Claim TC hw offloads support only under a proper build config (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Don't match on vlan non-existence if ethertype is wildcarded (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: IPoIB, Reset QP after channels are closed (Alaa Hleihel) [1658085] - [netdrv] net/mlx4: Fix UBSAN warning of signed integer overflow (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Fix uninitialized variable compilation warning (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Zero out lkey field in SW2HW_MPT fw command (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Fix MR cache initialization (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Remove extraneous error check (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Fix memory leak when setting fpga ipsec caps (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Unmap DMA addr from HCA before IOMMU (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Remove superfluous version print (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Allow transition of DCI QP to reset (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Don't hold spin lock while checking device state (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Move mlx5e_priv_flags into en_ethtool.c (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Fix atomic_mode enum values (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Delete unneeded function argument (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: RX, Prefetch the xdp_frame data area (Alaa Hleihel) [1658085] - [drm] drm/i915: Synchronize hpd work in i915_hpd_storm_ctl_show() (Lyude Paul) [1658376] - [drm] drm/i915: Add short HPD IRQ storm detection for non-MST systems (Lyude Paul) [1658376] - [drm] drm/i915: Clarify flow for disabling IRQs on storms (Lyude Paul) [1658376] - [drm] drm/i915: Fix threshold check in intel_hpd_irq_storm_detect() (Lyude Paul) [1658376] - [drm] drm/i915: Fix NULL deref when re-enabling HPD IRQs on systems with MST (Lyude Paul) [1658376] - [drm] drm/i915: Fix possible race in intel_dp_add_mst_connector() (Lyude Paul) [1658376] - [x86] kvm: x86: bump KVM_(SOFT_)MAX_VCPUS to 384 (Radim Krcmar) [1635205] - [block] blk-mq: punt failed direct issue to dispatch list (Ming Lei) [1656653] - [block] blk-mq: fix corruption with direct issue (Ming Lei) [1656653] - [pci] PCI: Add support for Immediate Readiness (Myron Stowe) [1483409] - [x86] x86/PCI: Remove node-local allocation when initialising host controller (Myron Stowe) [1483409] - [arm64] arm64: PCI: Remove node-local allocations when initialising host controller (Myron Stowe) [1483409] - [cpufreq] cpufreq: intel_pstate: Add base_frequency attribute (Prarit Bhargava) [1648207] - [acpi] ACPI / CPPC: Add support for guaranteed performance (Prarit Bhargava) [1648207] - [block] block: fix single range discard merge (Ming Lei) [1654096] - [scsi] SCSI: fix queue cleanup race before queue initialization is done (Ming Lei) [1642404] - [netdrv] net: hinic: fix null pointer dereference on pointer hwdev (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic: fix a bug in rx data flow (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:fix a bug in set mac address (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:add rx checksum offload for HiNIC (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:replace multiply and division operators (Xiaojun Tan) [1654207] - [netdrv] hinic: Fix l4_type parameter in hinic_task_set_tunnel_l4 (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic: add checksum offload and TSO support (Xiaojun Tan) [1654207] - [netdrv] cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size (Arjun Vynipadath) [1651082]- [x86] kvm: x86: Report STIBP on GET_SUPPORTED_CPUID (Eduardo Habkost) [1644870] - [kernel] power: remove possible deadlock when unregistering power_supply (Benjamin Tissoires) [1657623] - [md] dm: call blk_queue_split() to impose device limits on bios (Mike Snitzer) [1657340] - [pinctrl] Revert "pinctrl: intel: Do pin translation when lock IRQ" (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variant (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Do pin translation in other GPIO operations as well (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix gpio base for GPP-E (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Don't shadow error code of gpiochip_lock_as_irq() (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix community ordering for H variant (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Do pin translation when lock IRQ (Benjamin Tissoires) [1658075] - [firmware] efi: Prevent GICv3 WARN() by mapping the memreserve table before first use (Bhupesh Sharma) [1638640] - [firmware] efi: Permit calling efi_mem_reserve_persistent() from atomic context (Bhupesh Sharma) [1638640] - [firmware] efi/arm: Defer persistent reservations until after paging_init() (Bhupesh Sharma) [1638640] - [firmware] efi/arm: Revert deferred unmap of early memmap mapping (Bhupesh Sharma) [1638640] - [arm64] arm64: memblock: don't permit memblock resizing until linear mapping is up (Bhupesh Sharma) [1638640] - [arm64] arm64: Fix /proc/iomem for reserved but not memory regions (Bhupesh Sharma) [1638640] - [tty] tty: wipe buffer. (Christoph von Recklinghausen) [1655051] - [tty] tty: wipe buffer if not echoing data (Christoph von Recklinghausen) [1655051]- [powerpc] powerpc/perf: Remove sched_task function defined for thread-imc (Steve Best) [1657153] - [s390] Add reserved fields to mm_context_t (Philipp Rudo) [1656874] - [s390] Add reserved fields to thread_struct (Philipp Rudo) [1656874] - [documentation] kdump: correct crashkernel=auto threshold (Raghavendra Rao) [1656698] - [fs] NFSv4.x: fix lock recovery during delegation recall (Steve Dickson) [1656410] - [x86] x86/spec_ctrl: Synchronize RHEL8 percpu SPEC_CTRL MSR states with new STIBP logic (Waiman Long) [1655662] - [x86] x86/speculation: Provide IBPB always command line options (Waiman Long) [1655662] - [x86] x86/speculation: Add seccomp Spectre v2 user space protection mode (Waiman Long) [1655662] - [x86] x86/speculation: Enable prctl mode for spectre_v2_user (Waiman Long) [1655662] - [x86] x86/speculation: Add prctl() control for indirect branch speculation (Waiman Long) [1655662] - [x86] x86/speculation: Prepare arch_smt_update() for PRCTL mode (Waiman Long) [1655662] - [x86] x86/speculation: Prevent stale SPEC_CTRL msr content (Waiman Long) [1655662] - [x86] x86/speculation: Split out TIF update (Waiman Long) [1655662] - [x86] ptrace: Remove unused ptrace_may_access_sched() and MODE_IBRS (Waiman Long) [1655662] - [x86] x86/speculation: Prepare for conditional IBPB in switch_mm() (Waiman Long) [1655662] - [x86] x86/speculation: Avoid __switch_to_xtra() calls (Waiman Long) [1655662] - [x86] x86/process: Consolidate and simplify switch_to_xtra() code (Waiman Long) [1655662] - [x86] x86/speculation: Prepare for per task indirect branch speculation control (Waiman Long) [1655662] - [x86] x86/speculation: Add command line control for indirect branch speculation (Waiman Long) [1655662] - [x86] x86/speculation: Unify conditional spectre v2 print functions (Waiman Long) [1655662] - [x86] x86/speculataion: Mark command line parser data __initdata (Waiman Long) [1655662] - [x86] x86/speculation: Mark string arrays const correctly (Waiman Long) [1655662] - [x86] x86/speculation: Reorder the spec_v2 code (Waiman Long) [1655662] - [x86] x86/l1tf: Show actual SMT state (Waiman Long) [1655662] - [x86] x86/speculation: Rework SMT state change (Waiman Long) [1655662] - [x86] sched/smt: Expose sched_smt_present static key (Waiman Long) [1655662] - [x86] x86/Kconfig: Select SCHED_SMT if SMP enabled (Waiman Long) [1655662] - [x86] sched/smt: Make sched_smt_present track topology (Waiman Long) [1655662] - [x86] x86/speculation: Reorganize speculation control MSRs update (Waiman Long) [1655662] - [x86] x86/speculation: Rename SSBD update functions (Waiman Long) [1655662] - [x86] x86/speculation: Disable STIBP when enhanced IBRS is in use (Waiman Long) [1655662] - [x86] x86/speculation: Move STIPB/IBPB string conditionals out of cpu_show_common() (Waiman Long) [1655662] - [x86] x86/speculation: Remove unnecessary ret variable in cpu_show_common() (Waiman Long) [1655662] - [x86] x86/speculation: Clean up spectre_v2_parse_cmdline() (Waiman Long) [1655662] - [x86] x86/speculation: Update the TIF_SSBD comment (Waiman Long) [1655662] - [x86] x86/retpoline: Remove minimal retpoline support (Waiman Long) [1655662] - [x86] x86/retpoline: Make CONFIG_RETPOLINE depend on compiler support (Waiman Long) [1655662] - [x86] x86/spec_ctrl: Temporarily remove the IBRS code from process.c & bugs.c (Waiman Long) [1655662] - [nvme] nvme: flush namespace scanning work just before removing namespaces (Ewan Milne) [1656028] - [netdrv] i40e: Fix deletion of MAC filters (Stefan Assmann) [1646847] - [scsi] mpt3sas: Display message on Configurable secure HBA (Tomas Henzl) [1649314] - [scsi] scsi: mpt3sas: Add support for Aero controllers (Tomas Henzl) [1649314] - [scsi] scsi: mpt3sas: Update MPI headers to support Aero controllers (Tomas Henzl) [1649314] - [scsi] megaraid_sas: Add support for MegaRAID Aero controllers (Tomas Henzl) [1649384] - [netdrv] nfp: flower: enabled offloading of Team LAG (Pablo Cascon) [1649876] - [netdrv] net/mlx5: IPSec, Fix the SA context hash key (Alaa Hleihel) [1645857] - [hwmon] hwmon/k10temp: Add support for AMD family 17h, model 30h CPUs (Gary Hook) [1640681] - [x86] x86/amd_nb: Add PCI device IDs for family 17h, model 30h (Gary Hook) [1640681] - [x86] x86/amd_nb: Add support for newer PCI topologies (Gary Hook) [1640681] - [hwmon] hwmon/k10temp, x86/amd_nb: Consolidate shared device IDs (Gary Hook) [1640681] - [net] tipc: fix info leak from kernel tipc_event (Jon Maloy) [1643279] - [net] tipc: eliminate message disordering during binding table update (Jon Maloy) [1643279] - [net] tipc: fix unsafe rcu locking when accessing publication list (Jon Maloy) [1643279] - [net] tipc: queue socket protocol error messages into socket receive buffer (Jon Maloy) [1643279] - [net] tipc: ignore STATE_MSG on wrong link session (Jon Maloy) [1643279] - [net] tipc: fix failover problem (Jon Maloy) [1643279] - [net] tipc: eliminate possible recursive locking detected by LOCKDEP (Jon Maloy) [1643279] - [net] tipc: lock wakeup & inputq at tipc_link_reset() (Jon Maloy) [1643279] - [net] tipc: reset bearer if device carrier not ok (Jon Maloy) [1643279] - [net] tipc: fix flow control accounting for implicit connect (Jon Maloy) [1643279] - [net] tipc: check return value of __tipc_dump_start() (Jon Maloy) [1643279] - [net] tipc: call start and done ops directly in __tipc_nl_compat_dumpit() (Jon Maloy) [1643279] - [net] tipc: orphan sock in tipc_release() (Jon Maloy) [1643279] - [net] tipc: switch to rhashtable iterator (Jon Maloy) [1643279] - [net] tipc: fix a missing rhashtable_walk_exit() (Jon Maloy) [1643279] - [net] tipc: add missing dev_put() on error in tipc_enable_l2_media (Jon Maloy) [1643279] - [net] tipc: initialize broadcast link stale counter correctly (Jon Maloy) [1643279] - [net] tipc: set link tolerance correctly in broadcast link (Jon Maloy) [1643279] - [net] tipc: extend link reset criteria for stale packet retransmission (Jon Maloy) [1643279] - [crypto] crypto: ccp - Add support for new CCP/PSP device ID (Gary Hook) [1634201] - [crypto] crypto: ccp - Support register differences between PSP devices (Gary Hook) [1634201] - [crypto] crypto: ccp - Remove unused #defines (Gary Hook) [1634201] - [crypto] crypto: ccp - Add psp enabled message when initialization succeeds (Gary Hook) [1634201] - [crypto] crypto: ccp - Fix command completion detection race (Gary Hook) [1634201] - [crypto] crypto: ccp - Check for NULL PSP pointer at module unload (Gary Hook) [1634201] - [net] sctp: increase sk_wmem_alloc when head->truesize is increased (Xin Long) [1645419] - [net] sctp: count sk_wmem_alloc by skb truesize in sctp_packet_transmit (Xin Long) [1645419] - [net] ipv6: re-do dad when interface has IFF_NOARP flag change (Hangbin Liu) [1644594] - [net] netfilter: nf_tables: don't skip inactive chains during update (Florian Westphal) [1643746] - [net] inet: frags: better deal with smp races (Sabrina Dubroca) [1645397] - [net] geneve, vxlan: Don't set exceptions if skb->len < mtu (Xin Long) [1642842] - [net] geneve, vxlan: Don't check skb_dst() twice (Xin Long) [1642842] - [net] sctp: fix strchange_flags name for Stream Change Event (Xin Long) [1641852] - [net] sctp: update dst pmtu with the correct daddr (Xin Long) [1644478] - [net] sctp: not free the new asoc when sctp_wait_for_connect returns err (Xin Long) [1644155] - [net] l2tp: fix a sock refcnt leak in l2tp_tunnel_register (Xin Long) [1642749] - [net] sctp: check policy more carefully when getting pr status (Xin Long) [1637786] - [net] sctp: get pr_assoc and pr_stream all status with SCTP_PR_SCTP_ALL instead (Xin Long) [1637786] - [net] ipv4/igmp: fix v1/v2 switchback timeout based on rfc3376, 8.12 (Hangbin Liu) [1638598] - [net] netfilter: nft_compat: ebtables 'nat' table is normal chain type (Florian Westphal) [1645377] - [net] sched: exclude TC from kABI guarantee (Ivan Vecera) [1628454] - [net] netfilter: nft_set_rbtree: allow loose matching of closing element in interval (Phil Sutter) [1641993] - [net] netfilter: xt_nat: fix DNAT target for shifted portmap ranges (Paolo Abeni) [1634258] - [net] sched: Fix for duplicate class dump (Phil Sutter) [1631179] - [x86] KVM: X86: Fix scan ioapic use-before-initialization (Bandan Das) [1653835] {CVE-2018-19407}- [scsi] scsi: vmw_pscsi: Rearrange code to avoid multiple calls to free_irq during unload (Cathy Avery) [1590875] - [netdrv] net/ibmvnic: Fix RTNL deadlock during device reset (Steve Best) [1656076] - [s390] s390/qeth: fix length check in SNMP processing (Philipp Rudo) [1655612] - [s390] s390/ism: clear dmbe_mask bit before SMC IRQ handling (Philipp Rudo) [1655611] - [net] net/smc: use after free fix in smc_wr_tx_put_slot() (Philipp Rudo) [1655611] - [net] net/smc: atomic SMCD cursor handling (Philipp Rudo) [1655611] - [net] net/smc: add SMC-D shutdown signal (Philipp Rudo) [1655611] - [net] net/smc: use queue pair number when matching link group (Philipp Rudo) [1655611] - [net] net/smc: abort CLC connection in smc_release (Philipp Rudo) [1655611] - [net] net/smc: unregister rkeys of unused buffer (Philipp Rudo) [1655611] - [net] net/smc: add infrastructure to send delete rkey messages (Philipp Rudo) [1655611] - [net] net/smc: avoid a delay by waiting for nothing (Philipp Rudo) [1655611] - [net] net/smc: cleanup listen worker mutex unlocking (Philipp Rudo) [1655611] - [net] net/smc: short wait for late smc_clc_wait_msg (Philipp Rudo) [1655611] - [net] net/smc: no link delete for a never active link (Philipp Rudo) [1655611] - [net] net/smc: allow fallback after clc timeouts (Philipp Rudo) [1655611] - [net] net/smc: remove sock_error detour in clc-functions (Philipp Rudo) [1655611] - [net] net/smc: make smc_lgr_free() static (Philipp Rudo) [1655611] - [net] net/smc: cleanup tcp_listen_worker initialization (Philipp Rudo) [1655611] - [net] net/smc: fix smc_buf_unuse to use the lgr pointer (Philipp Rudo) [1655611] - [net] Revert "net: simplify sock_poll_wait" (Philipp Rudo) [1655611] - [powerpc] powerpc/pseries: Fix unitialized timer reset on migration (Steve Best) [1655053] - [powerpc] powerpc/pseries/mobility: Extend start/stop topology update scope (Steve Best) [1655053] - [x86] Mark Intel Cascade Lake supported (Steve Best) [1641425]- [x86] KVM: VMX: re-add ple_gap module parameter (Gary Hook) [1652953] - [netdrv] tg3: Add PHY reset for 5717/5719/5720 in change ring and flow control paths (Steve Best) [1655515] - [pci] PCI/ASPM: Do not initialize link state when aspm_disabled is set (Myron Stowe) [1655246] - [pci] PCI/ACPI: Allow _OSC presence to be optional for PCI (Myron Stowe) [1655246] - [pci] PCI/ACPI: Correct error message for ASPM disabling (Myron Stowe) [1655246] - [pci] PCI/ASPM: Fix link_state teardown on device removal (Myron Stowe) [1655246] - [netdrv] ice: Change req_speeds to be u16 (Jonathan Toppins) [1644403] - [netdrv] ice: Fix the bytecount sent to netdev_tx_sent_queue (Jonathan Toppins) [1644403] - [netdrv] ice: Fix tx_timeout in PF driver (Jonathan Toppins) [1644403] - [netdrv] ice: Fix napi delete calls for remove (Jonathan Toppins) [1644403] - [netdrv] ice: Fix typo in error message (Jonathan Toppins) [1644403] - [netdrv] ice: Fix flags for port VLAN (Jonathan Toppins) [1644403] - [netdrv] ice: Remove duplicate addition of VLANs in replay path (Jonathan Toppins) [1644403] - [netdrv] ice: Free VSI contexts during for unload (Jonathan Toppins) [1644403] - [netdrv] ice: Fix dead device link issue with flow control (Jonathan Toppins) [1644403] - [netdrv] ice: Check for reset in progress during remove (Jonathan Toppins) [1644403] - [netdrv] ice: Set carrier state and start/stop queues in rebuild (Jonathan Toppins) [1644403] - [netdrv] virtchnl: Added support to exchange additional speed values (Jonathan Toppins) [1644403] - [netdrv] ice: Poll for link status change (Jonathan Toppins) [1644403] - [netdrv] ice: Allocate VF interrupts and set queue map (Jonathan Toppins) [1644403] - [netdrv] ice: Introduce ice_dev_onetime_setup (Jonathan Toppins) [1644403] - [netdrv] ice: Use capability count returned by the firmware (Jonathan Toppins) [1644403] - [netdrv] ice: Update expected FW version (Jonathan Toppins) [1644403] - [netdrv] ice: Change device ID define names to align with branding string (Jonathan Toppins) [1644403] - [netdrv] ice: Make ice_msix_clean_rings static (Jonathan Toppins) [1644403] - [netdrv] ice: Update version string (Jonathan Toppins) [1644403] - [netdrv] ice: Use the right function to enable/disable VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Add more flexibility on how we assign an ITR index (Jonathan Toppins) [1644403] - [netdrv] ice: Fix potential null pointer issues (Jonathan Toppins) [1644403] - [netdrv] ice: Add code to go from ICE_FWD_TO_VSI_LIST to ICE_FWD_TO_VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Fix forward to queue group logic (Jonathan Toppins) [1644403] - [netdrv] ice: Extend malicious operations detection logic (Jonathan Toppins) [1644403] - [netdrv] ice: Notify VF of link status change (Jonathan Toppins) [1644403] - [netdrv] ice: Implement virtchnl commands for AVF support (Jonathan Toppins) [1644403] - [netdrv] ice: Add handlers for VF netdevice operations (Jonathan Toppins) [1644403] - [netdrv] ice: Add support for VF reset events (Jonathan Toppins) [1644403] - [netdrv] ice: Update VSI and queue management code to handle VF VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Add handler to configure SR-IOV (Jonathan Toppins) [1644403] - [netdrv] ice: Add support to detect SR-IOV capability and mailbox queues (Jonathan Toppins) [1644403] - [netdrv] ice: Fix error on driver remove (Jonathan Toppins) [1644403] - [netdrv] ice: Add support for dynamic interrupt moderation (Jonathan Toppins) [1644403] - [netdrv] ice: Align ice_reset_req enum values to hardware reset values (Jonathan Toppins) [1644403] - [netdrv] ice: Implement ethtool hook for RSS switch (Jonathan Toppins) [1644403] - [netdrv] ice: Split irq_tracker into sw_irq_tracker and hw_irq_tracker (Jonathan Toppins) [1644403] - [netdrv] ice: Check for actual link state of port after reset (Jonathan Toppins) [1644403] - [netdrv] ice: Implement VSI replay framework (Jonathan Toppins) [1644403] - [netdrv] ice: Expand use of VSI handles part 2/2 (Jonathan Toppins) [1644403] - [netdrv] ice: Expand use of VSI handles part 1/2 (Jonathan Toppins) [1644403] - [netdrv] ice: Change pf state behavior to protect reset path (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 7/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 6/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 5/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 4/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 3/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 2/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 1/7 (Jonathan Toppins) [1644403] - [netdrv] ice: fix changing of ring descriptor size (ethtool -G) (Jonathan Toppins) [1644403] - [netdrv] ice: Update to capabilities admin queue command (Jonathan Toppins) [1644403] - [netdrv] ice: Query the Tx scheduler node before adding it (Jonathan Toppins) [1644403] - [netdrv] ice: Update comment for ice_fltr_mgmt_list_entry (Jonathan Toppins) [1644403] - [netdrv] ice: update fw version check logic (Jonathan Toppins) [1644403] - [netdrv] ice: update branding strings and supported device ids (Jonathan Toppins) [1644403] - [netdrv] ice: replace unnecessary memcpy with direct assignment (Jonathan Toppins) [1644403] - [netdrv] ice: use [sr]q.count when checking if queue is initialized (Jonathan Toppins) [1644403] - [netdrv] ice: remove ndo_poll_controller (Jonathan Toppins) [1644403] - [fs] fanotify: fix handling of events on child sub-directory (Miklos Szeredi) [1652432] - [fs] fsnotify: generalize handling of extra event flags (Miklos Szeredi) [1652432] - [netdrv] net: hns3: add common validation in hclge_dcb (Xiaojun Tan) [1640945] - [netdrv] net: hns3: fix for multiple unmapping DMA problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: rename hns_nic_dma_unmap (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add handling for big TX fragment (Xiaojun Tan) [1640945] - [netdrv] net: hns3: move DMA map into hns3_fill_desc (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove hns3_fill_desc_tso (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Resume promisc mode and vlan filter status after loopback test (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Resume promisc mode and vlan filter status after reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Enable promisc mode when mac vlan table is full (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for rx vlan id handle to support Rev 0x21 hardware (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add egress/ingress vlan filter for revision 0x21 (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Optimize for unicast mac vlan table (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix loss of coal configuration while doing reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Modify hns3_get_max_available_channels (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Change return type of hclge_tm_schd_info_update() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for netdev not up problem when setting mtu (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for packet buffer setting bug (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set extra mac address of pause param for HW (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix speed/duplex information loss problem when executing ethtool ethx cmd of VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add get_media_type ops support for VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove print messages for error packet (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add nic state check before calling netif_tx_wake_queue (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add handle for default case (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Unify the prefix of vf functions (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix tqp array traversal condition for vf (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix ets validate issue (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix parameter type for q_id in hclge_tm_q_to_qs_map_cfg() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix client initialize state issue when roce client initialize failed (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Clear client pointer when initialize client failed or unintialize finished (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix cmdq registers initialization issue for vf (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for setting speed for phy failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Check hdev state when getting link status (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set STATE_DOWN bit of hdev state when stopping net (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove packet statistics of public (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove tx budget to clean more TX descriptors in a napi (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Refine hns3_get_link_ksettings() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove redundant codes of query advertised flow control abilitiy (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Change the dst mac addr of loopback packet (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Only update mac configuation when necessary (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Preserve vlan 0 in hardware table (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix ping exited problem when doing lp selftest (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for loopback selftest failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix error of checking used vlan id (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for multicast failure (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for vf vlan delete failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: modify variable type in hns3_nic_reuse_page (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add vlan filter setting by ethtool command -K (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set tx ring' tc info when netdev is up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix desc num set to default when setting channel (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for information of phydev lost problem when down/up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add support for serdes loopback selftest (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Refine the MSIX allocation for PF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix MSIX allocation issue for VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: fix return value error while hclge_cmd_csq_clean failed (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Modify inconsistent bit mask macros (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for using wrong mask and shift in hclge_get_ring_chain_from_mbx (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Correct reset event status register (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Prevent to request reset frequently (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Prevent sending command during global or core reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add configure for mac minimal frame size (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for l4 checksum offload bug (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for waterline not setting correctly (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix tc setup when netdev is first up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: modify hnae_ to hnae3_ (Xiaojun Tan) [1640945] - [netdrv] net: hns3: simplify hclge_cmd_csq_clean (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove some redundant assignments (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove back in struct hclge_hw (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add unlikely for error check (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add l4_type check for both ipv4 and ipv6 (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add vector status check before free vector (Xiaojun Tan) [1640945] - [netdrv] net: hns3: rename the interface for init_client_instance and uninit_client_instance (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove hclge_get_vector_index from hclge_bind_ring_with_vector (Xiaojun Tan) [1640945] - [kernel] redhat: Enable -Werror for architectures (Laura Abbott) [1582754] - [drm] drm/atomic_helper: Remove dangling variable (Laura Abbott) [1582754] - [s390] s390/tools: fix gcc 8 stringop-truncation warnings (Laura Abbott) [1582754] - [tty] kgdboc: Fix restrict error (Laura Abbott) [1582754] - [misc] misc: kgdbts: Fix restrict error (Laura Abbott) [1582754] - [scsi] scsi: ibmvscsis: Fix a stringop-overflow warning (Laura Abbott) [1582754] - [s390] s390/extmem: fix gcc 8 stringop-overflow warning (Laura Abbott) [1582754] - [s390] s390/perf: fix gcc 8 array-bounds warning (Laura Abbott) [1582754] - [kernel] kdb: Use strscpy with destination buffer size (Laura Abbott) [1582754] - [fs] configfs: replace strncpy with memcpy (Laura Abbott) [1582754] - [fs] kernfs: Replace strncpy with memcpy (Laura Abbott) [1582754] - [kernel] disable stringop truncation warnings for now (Laura Abbott) [1582754] - [sound] ALSA: intel_hdmi: Use strlcpy() instead of strncpy() (Laura Abbott) [1582754] - [sound] ALSA: trident: Suppress gcc string warning (Laura Abbott) [1582754] - [lib] kobject: Replace strncpy with memcpy (Laura Abbott) [1582754] - [tty] TTY: isdn: Replace strncpy with memcpy (Laura Abbott) [1582754] - [target] scsi: target/iscsi: Make iscsit_ta_authentication() respect the output buffer size (Laura Abbott) [1582754] - [fs] fuse: don't need GETATTR after every READ (Miklos Szeredi) [1650538] - [fs] fuse: allow fine grained attr cache invaldation (Miklos Szeredi) [1650538]- [mm] mm: mremap: properly flush TLB before releasing the page (Rafael Aquini) [1645122] {CVE-2018-18281} - [x86] x86/spec_ctrl: Change default Skylake Spectre v2 mitigation to retpoline (Waiman Long) [1651806] - [fs] gfs2: write revokes should traverse sd_ail1_list in reverse (Andreas Grunbacher) [1652763] - [fs] gfs2: Fix marking bitmaps non-full (Andreas Grunbacher) [1652762] - [fs] GFS2: Flush the GFS2 delete workqueue before stopping the kernel threads (Andreas Grunbacher) [1652761] - [fs] gfs2: Don't leave s_fs_info pointing to freed memory in init_sbd (Andreas Grunbacher) [1652759] - [fs] gfs2: Use fs_* functions instead of pr_* function where we can (Andreas Grunbacher) [1652757] - [fs] gfs2: slow the deluge of io error messages (Andreas Grunbacher) [1652757] - [fs] gfs2_meta: ->mount() can get NULL dev_name (Andreas Grunbacher) [1652754] - [powerpc] powerpc/vdso: Correct call frame information (Steve Best) [1651281] - [i2c] i2c: i801: Add support for Intel Ice Lake (David Arcari) [1637435] - [usb] xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc (Robert Richter) [1649829] - [x86] x86: numa_emulation: fix uniform-split numa emulation (Rafael Aquini) [1620341] - [x86] x86: numa_emulation: introduce uniform split capability (Rafael Aquini) [1620341] - [kernel] perf/hw_breakpoint: Modify breakpoint even if the new attr has disabled set (Mark Salter) [1643174] - [x86] KVM: vmx: hyper-v: don't pass EPT configuration info to vmx_hv_remote_flush_tlb() (Paolo Bonzini) [1636610] - [x86] KVM: x86: support CONFIG_KVM_AMD=y with CONFIG_CRYPTO_DEV_CCP_DD=m (Paolo Bonzini) [1636610] - [x86] kvm: nVMX: fix entry with pending interrupt if APICv is enabled (Paolo Bonzini) [1636610] - [x86] KVM: VMX: hide flexpriority from guest when disabled at the module level (Paolo Bonzini) [1636610] - [x86] KVM: VMX: check for existence of secondary exec controls before accessing (Paolo Bonzini) [1636610] - [x86] KVM: x86: fix L1TF's MMIO GFN calculation (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: cut down decimal places in update interval dialog (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix emulation of VM_ENTRY_LOAD_BNDCFGS (Paolo Bonzini) [1636610] - [x86] KVM: x86: Do not use kvm_x86_ops->mpx_supported() directly (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Do not expose MPX VMX controls when guest MPX disabled (Paolo Bonzini) [1636610] - [x86] KVM: x86: never trap MSR_KERNEL_GS_BASE (Paolo Bonzini) [1636610] - [x86] KVM: LAPIC: Fix pv ipis out-of-bounds access (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix loss of pending IRQ/NMI before entering L2 (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: re-animate display of dead guests (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: indicate dead guests as such (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: handle guest removals more gracefully (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: don't reset stats when setting PID filter for debugfs (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix updates for dead guests (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix handling of invalid paths in debugfs provider (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix python3 issues (Paolo Bonzini) [1636610] - [x86] KVM: x86: Unexport x86_emulate_instruction() (Paolo Bonzini) [1636610] - [x86] KVM: x86: Rename emulate_instruction() to kvm_emulate_instruction() (Paolo Bonzini) [1636610] - [x86] KVM: x86: Do not re-{try, execute} after failed emulation in L2 (Paolo Bonzini) [1636610] - [x86] KVM: x86: Default to not allowing emulation retry in kvm_mmu_page_fault (Paolo Bonzini) [1636610] - [x86] KVM: x86: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE (Paolo Bonzini) [1636610] - [x86] KVM: x86: Invert emulation re-execute behavior to make it opt-in (Paolo Bonzini) [1636610] - [x86] KVM: x86: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation (Paolo Bonzini) [1636610] - [x86] KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr (Paolo Bonzini) [1636610] - [x86] KVM: SVM: remove unused variable dst_vaddr_end (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: avoid redundant double assignment of nested_run_pending (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix bad cleanup on error of get/set nested state IOCTLs (Paolo Bonzini) [1636610] - [tools] kvm: selftests: Add platform_info_test (Paolo Bonzini) [1636610] - [x86] KVM: x86: Control guest reads of MSR_PLATFORM_INFO (Paolo Bonzini) [1636610] - [x86] KVM: x86: Turbo bits in MSR_PLATFORM_INFO (Paolo Bonzini) [1636610] - [x86] nVMX x86: Check VPID value on vmentry of L2 guests (Paolo Bonzini) [1636610] - [x86] nVMX x86: check posted-interrupt descriptor addresss on vmentry of L2 (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Wake blocked vCPU in guest-mode if pending interrupt in virtual APICv (Paolo Bonzini) [1636610] - [x86] KVM: VMX: check nested state and CR4.VMXE against SMM (Paolo Bonzini) [1636610] - [x86] kvm: x86: make kvm_{load|put}_guest_fpu() static (Paolo Bonzini) [1636610] - [x86] x86/hyper-v: rename ipi_arg_{ex, non_ex} structures (Paolo Bonzini) [1636610] - [x86] KVM: VMX: use preemption timer to force immediate VMExit (Paolo Bonzini) [1636610] - [x86] KVM: VMX: modify preemption timer bit only when arming timer (Paolo Bonzini) [1636610] - [x86] KVM: VMX: immediately mark preemption timer expired only for zero value (Paolo Bonzini) [1636610] - [x86] KVM: SVM: Switch to bitmap_zalloc() (Paolo Bonzini) [1636610] - [lib] bitmap: Add bitmap_alloc(), bitmap_zalloc() and bitmap_free() (Paolo Bonzini) [1636610] - [x86] KVM/MMU: Fix comment in walk_shadow_page_lockless_end() (Paolo Bonzini) [1636610] - [tools] kvm: selftests: use -pthread instead of -lpthread (Paolo Bonzini) [1636610] - [tools] kvm: selftest: add dirty logging test (Paolo Bonzini) [1636610] - [tools] kvm: selftest: pass in extra memory when create vm (Paolo Bonzini) [1636610] - [tools] kvm: selftest: include the tools headers (Paolo Bonzini) [1636610] - [tools] kvm: selftest: unify the guest port macros (Paolo Bonzini) [1636610] - [x86] KVM: x86: don't reset root in kvm_mmu_setup() (Paolo Bonzini) [1636610] - [x86] kvm: mmu: Don't read PDPTEs when paging is not enabled (Paolo Bonzini) [1636610] - [x86] x86/kvm/lapic: always disable MMIO interface in x2APIC mode (Paolo Bonzini) [1636610] - [s390] KVM: s390: Make huge pages unavailable in ucontrol VMs (Paolo Bonzini) [1636610] - [s390] s390/mm: Check for valid vma before zapping in gmap_discard (Paolo Bonzini) [1636610] - [tools] selftests: add headers_install to lib.mk (Paolo Bonzini) [1636610] - [tools] selftests: kselftest: Remove outdated comment (Paolo Bonzini) [1636610] - [tools] selftests: android: move config up a level (Paolo Bonzini) [1636610] - [md] md: Avoid namespace collision with bitmap API (Paolo Bonzini) [1636610]- [cpufreq] cpufreq / CPPC: Add cpuinfo_cur_freq support for CPPC (Prarit Bhargava) [1654361] - [netdrv] nfp: flower: add ipv6 set flow label and hop limit offload (Pablo Cascon) [1651639] - [netdrv] nfp: flower: add ipv4 set ttl and tos offload (Pablo Cascon) [1651639] - [netdrv] ibmvnic: Update driver queues after change in ring size support (Steve Best) [1651947] - [netdrv] ibmvnic: Fix RX queue buffer cleanup (Steve Best) [1651947] - [netdrv] net/ibmnvic: Fix deadlock problem in reset (Steve Best) [1651947] - [netdrv] ibmvnic: fix accelerated VLAN handling (Steve Best) [1651947] - [netdrv] ibmvnic: Add ethtool private flag for driver-defined queue limits (Steve Best) [1651947] - [netdrv] ibmvnic: Introduce driver limits for ring sizes (Steve Best) [1651947] - [netdrv] ibmvnic: Increase maximum queue size limit (Steve Best) [1651947] - [netdrv] ibmvnic: remove ndo_poll_controller (Steve Best) [1651947] - [powerpc] powerpc/powernv/npu: Remove atsd_threshold debugfs setting (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Use size-based ATSD invalidates (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Reduce eieio usage when issuing ATSD invalidates (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Add a debugfs setting to change ATSD threshold (Steve Best) [1653661] - [net] libceph: fall back to sendmsg for slab pages (Ilya Dryomov) [1653395] - [s390] s390/qeth: utilize virtual MAC for Layer2 OSD devices (Philipp Rudo) [1653246] - [fs] vfs: fix FIGETBSZ ioctl on an overlayfs file (Miklos Szeredi) [1651362] - [fs] ovl: fix decode of dir file handle with multi lower layers (Miklos Szeredi) [1651362] - [fs] ovl: fix missing override creds in link of a metacopy upper (Miklos Szeredi) [1651362] - [fs] ovl: automatically enable redirect_dir on metacopy=on (Miklos Szeredi) [1651362] - [fs] ovl: check whiteout in ovl_create_over_whiteout() (Miklos Szeredi) [1651362] - [fs] ovl: fix recursive oi->lock in ovl_link() (Miklos Szeredi) [1651362] - [fs] ovl: fix error handling in ovl_verify_set_fh() (Miklos Szeredi) [1651362] - [mm] mm, memory_hotplug: check zone_movable in has_unmovable_pages (Baoquan He) [1643839] - [netdrv] hv_netvsc: fix vf serial matching with pci slot info (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: remove ndo_poll_controller (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: pair VF based on serial number (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: fix schedule in RCU context (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: Fix return value check in hv_pci_assign_slots() (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: support reporting serial number as slot information (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: Replace GFP_ATOMIC with GFP_KERNEL in new_pcichild_device() (Vitaly Kuznetsov) [1637519] - [char] ipmi: Fix timer race with module unload (Robert Richter) [1649812] - [arm64] arm64: hugetlb: Avoid unnecessary clearing in huge_ptep_set_access_flags (Christoph von Recklinghausen) [1635192] - [arm64] arm64: hugetlb: Fix handling of young ptes (Christoph von Recklinghausen) [1635192] - [mm] mm: Preserve _PAGE_DEVMAP across mprotect() calls (Jeff Moyer) [1647647]- [crypto] crypto: vmx - Fix sleep-in-atomic bugs (Steve Best) [1653662] - [netdrv] net: ena: update driver version from 2.0.1 to 2.0.2 (John Linville) [1634044] - [netdrv] net: ena: fix crash during ena_remove() (John Linville) [1634044] - [netdrv] net: ena: fix crash during failed resume from hibernation (John Linville) [1634044] - [netdrv] net: ena: enable CONFIG_ENA_ETHERNET for aarch64 (John Linville) [1634044] - [netdrv] net: ena: enable Low Latency Queues (John Linville) [1634044] - [netdrv] net: ena: Fix Kconfig dependency on X86 (John Linville) [1634044] - [netdrv] net: ena: fix indentations in ena_defs for better readability (John Linville) [1634044] - [netdrv] net: ena: update driver version to 2.0.1 (John Linville) [1634044] - [netdrv] net: ena: remove redundant parameter in ena_com_admin_init() (John Linville) [1634044] - [netdrv] net: ena: change rx copybreak default to reduce kernel memory pressure (John Linville) [1634044] - [netdrv] net: ena: limit refill Rx threshold to 256 to avoid latency issues (John Linville) [1634044] - [netdrv] net: ena: explicit casting and initialization, and clearer error handling (John Linville) [1634044] - [netdrv] net: ena: use CSUM_CHECKED device indication to report skb's checksum status (John Linville) [1634044] - [netdrv] net: ena: add functions for handling Low Latency Queues in ena_netdev (John Linville) [1634044] - [netdrv] net: ena: add functions for handling Low Latency Queues in ena_com (John Linville) [1634044] - [netdrv] net: ena: introduce Low Latency Queues data structures according to ENA spec (John Linville) [1634044] - [netdrv] net: ena: complete host info to match latest ENA spec (John Linville) [1634044] - [netdrv] net: ena: minor performance improvement (John Linville) [1634044] - [netdrv] net: ena: fix auto casting to boolean (John Linville) [1634044] - [netdrv] net: ena: fix NULL dereference due to untimely napi initialization (John Linville) [1634044] - [netdrv] net: ena: fix rare bug when failed restart/resume is followed by driver removal (John Linville) [1634044] - [netdrv] net: ena: fix warning in rmmod caused by double iounmap (John Linville) [1634044] - [netdrv] net: ena: remove ndo_poll_controller (John Linville) [1634044] - [netdrv] net: ena: fix incorrect usage of memory barriers (John Linville) [1634044] - [netdrv] net: ena: fix missing calls to READ_ONCE (John Linville) [1634044] - [netdrv] net: ena: fix missing lock during device destruction (John Linville) [1634044] - [netdrv] net: ena: fix potential double ena_destroy_device() (John Linville) [1634044] - [netdrv] net: ena: fix device destruction to gracefully free resources (John Linville) [1634044] - [netdrv] net: ena: fix driver when PAGE_SIZE == 64kB (John Linville) [1634044] - [netdrv] net: ena: fix surprise unplug NULL dereference kernel crash (John Linville) [1634044] - [s390] s390/zcrypt: reinit ap queue state machine during device probe (Philipp Rudo) [1653668] - [s390] s390/kdump: Make elfcorehdr size calculation ABI compliant (Philipp Rudo) [1653245] - [s390] s390/kdump: Fix elfcorehdr size calculation (Philipp Rudo) [1653245] - [block] block: fix 32 bit overflow in __blkdev_issue_discard() (Ming Lei) [1638826] - [ata] libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD (Ming Lei) [1638826] - [block] block: copy ioprio in __bio_clone_fast() and bounce (Ming Lei) [1638826] - [trace] kyber: fix wrong strlcpy() size in trace_kyber_latency() (Ming Lei) [1638826] - [block] floppy: fix race condition in __floppy_read_block_0() (Ming Lei) [1638826] - [block] block: make blk_try_req_merge() static (Ming Lei) [1638826] - [block] block: remove dead queue members (Ming Lei) [1638826] - [block] block: clean up dead code that is now redundant (Ming Lei) [1638826] - [nvme] nvme: fix boot hang with only being able to get one IRQ vector (Ming Lei) [1638826] - [block] ide: don't clear special on ide_queue_rq() entry (Ming Lei) [1638826] - [block] null_blk: remove unused nullb device (Ming Lei) [1638826] - [block] ide: don't use req->special (Ming Lei) [1638826] - [block] pd: replace ->special use with private data in the request (Ming Lei) [1638826] - [block] aoe: replace ->special use with private data in the request (Ming Lei) [1638826] - [block] skd_main: don't use req->special (Ming Lei) [1638826] - [block] nullb: remove leftover legacy request code (Ming Lei) [1638826] - [scsi] fnic: fix fnic_scsi_host_{start,end}_tag (Ming Lei) [1638826] - [block] block: remove set but not used variable 'et' (Ming Lei) [1638826] - [block] block: remove the BLKPREP_* values. (Ming Lei) [1638826] - [scsi] scsi: return blk_status_t from device handler ->prep_fn (Ming Lei) [1638826] - [scsi] scsi: return blk_status_t from scsi_init_io and ->init_command (Ming Lei) [1638826] - [scsi] scsi: clean up error handling in scsi_init_io (Ming Lei) [1638826] - [scsi] scsi: push blk_status_t up into scsi_setup_{fs,scsi}_cmnd (Ming Lei) [1638826] - [scsi] scsi: simplify scsi_prep_state_check (Ming Lei) [1638826] - [block] ide: cleanup ->prep_rq calling convention (Ming Lei) [1638826] - [block] block: remove req->timeout_list (Ming Lei) [1638826] - [block] blk-mq: provide a helper to check if a queue is busy (Ming Lei) [1638826] - [block] blk-mq-tag: change busy_iter_fn to return whether to continue or not (Ming Lei) [1638826] - [block] ms_block: remove unused pointer 'set' (Ming Lei) [1638826] - [block] sunvdc: fix compiler warning (Ming Lei) [1638826] - [nvme] nvme: add separate poll queue map (Ming Lei) [1638826] - [block] block: add REQ_HIPRI and inherit it from IOCB_HIPRI (Ming Lei) [1638826] - [nvme] nvme: utilize two queue maps, one for reads and one for writes (Ming Lei) [1638826] - [block] blk-mq: initial support for multiple queue maps (Ming Lei) [1638826] - [block] blk-mq: improve plug list sorting (Ming Lei) [1638826] - [block] blk-mq: cleanup and improve list insertion (Ming Lei) [1638826] - [block] blk-mq: cache request hardware queue mapping (Ming Lei) [1638826] - [block] blk-mq: separate number of hardware queues from nr_cpu_ids (Ming Lei) [1638826] - [block] blk-mq: support multiple hctx maps (Ming Lei) [1638826] - [block] blk-mq: add 'type' attribute to the sysfs hctx directory (Ming Lei) [1638826] - [block] blk-mq: allow software queue to map to multiple hardware queues (Ming Lei) [1638826] - [block] blk-mq: pass in request/bio flags to queue mapping (Ming Lei) [1638826] - [block] blk-mq: provide dummy blk_mq_map_queue_type() helper (Ming Lei) [1638826] - [block] blk-mq: abstract out queue map (Ming Lei) [1638826] - [block] blk-mq: kill q->mq_map (Ming Lei) [1638826] - [kernel] genirq/affinity: Add support for allocating interrupt sets (Ming Lei) [1638826] - [kernel] genirq/affinity: Pass first vector to __irq_build_affinity_masks() (Ming Lei) [1638826] - [kernel] genirq/affinity: Move two stage affinity spreading into a helper function (Ming Lei) [1638826] - [kernel] genirq/affinity: Spread IRQs to all available NUMA nodes (Ming Lei) [1638826] - [block] block: kill request ->cpu member (Ming Lei) [1638826] - [block] block: get rid of q->softirq_done_fn() (Ming Lei) [1638826] - [block] block: get rid of blk_queued_rq() (Ming Lei) [1638826] - [block] blk-merge: kill dead queue lock held check (Ming Lei) [1638826] - [block] block: remove req_no_special_merge() from merging code (Ming Lei) [1638826] - [block] block: kill request slab cache (Ming Lei) [1638826] - [block] block: remove request_list code (Ming Lei) [1638826] - [block] bsg: move bsg-lib parts outside of request queue (Ming Lei) [1638826] - [block] block: kill legacy parts of timeout handling (Ming Lei) [1638826] - [block] block: remove __blk_put_request() (Ming Lei) [1638826] - [block] block: get rid of MQ scheduler ops union (Ming Lei) [1638826] - [block] block: remove dead elevator code (Ming Lei) [1638826] - [block] block: remove legacy IO schedulers (Ming Lei) [1638826] - [block] block: cleanup kick/queued handling (Ming Lei) [1638826] - [block] block: remove non mq parts from the flush code (Ming Lei) [1638826] - [block] block: remove legacy rq tagging (Ming Lei) [1638826] - [block] blk-cgroup: remove legacy queue bypassing (Ming Lei) [1638826] - [block] blk-wbt: kill check for legacy queue type (Ming Lei) [1638826] - [block] block: remove blk_complete_request() (Ming Lei) [1638826] - [block] bsg: convert to use blk-mq (Ming Lei) [1638826] - [block] bsg: provide bsg_remove_queue() helper (Ming Lei) [1638826] - [block] bsg: pass in desired timeout handler (Ming Lei) [1638826] - [s390] dasd: remove dead code (Ming Lei) [1638826] - [block] block: remove q->lld_busy_fn() (Ming Lei) [1638826] - [scsi] scsi: kill off the legacy IO path (Ming Lei) [1638826] - [scsi] scsi: provide mq_ops->busy() hook (Ming Lei) [1638826] - [block] blk-mq: provide mq_ops->busy() hook (Ming Lei) [1638826] - [block] blk-mq: remove legacy check in queue blk_freeze_queue() (Ming Lei) [1638826] - [block] blk-mq: remove the request_list usage (Ming Lei) [1638826] - [block] ide: convert to blk-mq (Ming Lei) [1638826] - [block] mspro_block: convert to blk-mq (Ming Lei) [1638826] - [block] ms_block: convert to blk-mq (Ming Lei) [1638826] - [block] sunvdc: convert to blk-mq (Ming Lei) [1638826] - [block] null_blk: Add conventional zone configuration for zoned support (Ming Lei) [1638826] - [ata] libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9 (Ming Lei) [1638826] - [block] block, bfq: fix asymmetric scenarios detection (Ming Lei) [1638826] - [cdrom] gdrom: fix mistake in assignment of error (Ming Lei) [1638826] - [block] blk-mq: place trace_block_getrq() in correct place (Ming Lei) [1638826] - [block] block: Introduce blk_revalidate_disk_zones() (Ming Lei) [1638826] - [block] block: add a report_zones method (Ming Lei) [1638826] - [block] block: Expose queue nr_zones in sysfs (Ming Lei) [1638826] - [block] block: Improve zone reset execution (Ming Lei) [1638826] - [block] block: Introduce BLKGETNRZONES ioctl (Ming Lei) [1638826] - [block] block: Introduce BLKGETZONESZ ioctl (Ming Lei) [1638826] - [block] block: Limit allocation of zone descriptors for report zones (Ming Lei) [1638826] - [block] block: Introduce blkdev_nr_zones() helper (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Fix sd_zbc_check_zones() error checks (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Reduce boot device scan and revalidate time (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Rearrange code (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Remove an assignment from sd_zbc_setup_report_cmnd() (Ming Lei) [1638826] - [scsi] scsi: sd: don't crash the host on invalid commands (Ming Lei) [1638826] - [pci] PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice (Ming Lei) [1638826] - [fs] f2fs: remove request_list check in is_idle() (Ming Lei) [1638826] - [scsi] scsi: osd: initiator should use mq variant of request ending (Ming Lei) [1638826] - [scsi] scsi: fnic: replace gross legacy tag hack with blk-mq hack (Ming Lei) [1638826] - [infiniband] ib_srp: Remove WARN_ON in srp_terminate_io() (Ming Lei) [1638826] - [scsi] scsi: ufs: Disable blk-mq for now (Ming Lei) [1638826] - [block] sx8: convert to blk-mq (Ming Lei) [1638826] - [block] z2ram: convert to blk-mq (Ming Lei) [1638826] - [cdrom] gdrom: convert to blk-mq (Ming Lei) [1638826] - [block] floppy: convert to blk-mq (Ming Lei) [1638826] - [block] ataflop: convert to blk-mq (Ming Lei) [1638826] - [block] ataflop: fix error handling during setup (Ming Lei) [1638826] - [block] ataflop: fold headers into C file (Ming Lei) [1638826] - [block] amiflop: convert to blk-mq (Ming Lei) [1638826] - [block] amiflop: clean up on errors during setup (Ming Lei) [1638826] - [block] amiflop: fold headers into C file (Ming Lei) [1638826] - [block] swim3: convert to blk-mq (Ming Lei) [1638826] - [block] swim3: add real error handling in setup (Ming Lei) [1638826] - [block] swim: convert to blk-mq (Ming Lei) [1638826] - [block] swim: fix cleanup on setup error (Ming Lei) [1638826] - [mtd] mtd_blkdevs: convert to blk-mq (Ming Lei) [1638826] - [block] xsysace: convert to blk-mq (Ming Lei) [1638826] - [block] paride: convert pf to blk-mq (Ming Lei) [1638826] - [block] paride: convert pd to blk-mq (Ming Lei) [1638826] - [block] paride: convert pcd to blk-mq (Ming Lei) [1638826] - [block] ps3disk: convert to blk-mq (Ming Lei) [1638826] - [block] blk-mq: provide helper for setting up an SQ queue and tag set (Ming Lei) [1638826] - [block] null_blk: remove set but not used variable 'q' (Ming Lei) [1638826] - [cdrom] cdrom: don't attempt to fiddle with cdo->capability (Ming Lei) [1638826] - [block] block: remove bogus check for queue_lock assignment (Ming Lei) [1638826] - [block] null_blk: remove legacy IO path (Ming Lei) [1638826] - [block] um: Convert ubd driver to blk-mq (Ming Lei) [1638826] - [block] skd: fixup usage of legacy IO API (Ming Lei) [1638826] - [block] aoe: convert aoeblk to blk-mq (Ming Lei) [1638826] - [block] ide: remove redundant variables queue_run_ms and left (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion convert BUGs to WARNs (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion hints on fastpath (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_reprep helper (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_action helper (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_nz_result function (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion: rename variables (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion: comment on end_request return (Ming Lei) [1638826] - [scsi] scsi: core: use blk_mq_run_hw_queues in scsi_kick_queue (Ming Lei) [1638826] - [scsi] scsi: sg: remove bad blk_end_request_all() call (Ming Lei) [1638826] - [block] blk-mq: complete req in softirq context in case of single queue (Ming Lei) [1638826] - [block] block, bfq: improve asymmetric scenarios detection (Ming Lei) [1638826] - [block] block: remove redundant 'default n' from Kconfig-s (Ming Lei) [1638826] - [block] blk-mq-debugfs: Also show requests that have not yet been started (Ming Lei) [1638826] - [block] block: Finish renaming REQ_DISCARD into REQ_OP_DISCARD (Ming Lei) [1638826] - [block] kyber: fix integer overflow of latency targets on 32-bit (Ming Lei) [1638826] - [block] kyber: add tracepoints (Ming Lei) [1638826] - [block] kyber: implement improved heuristics (Ming Lei) [1638826] - [block] kyber: don't make domain token sbitmap larger than necessary (Ming Lei) [1638826] - [block] block: export blk_stat_enable_accounting() (Ming Lei) [1638826] - [block] block: move call of scheduler's ->completed_request() hook (Ming Lei) [1638826] - [block] blk-mq: Enable support for runtime power management (Ming Lei) [1638826] - [block] block: Make blk_get_request() block for non-PM requests while suspended (Ming Lei) [1638826] - [block] block: Allow unfreezing of a queue while requests are in progress (Ming Lei) [1638826] - [lib] percpu-refcount: Introduce percpu_ref_resurrect() (Ming Lei) [1638826] - [block] block: Schedule runtime resume earlier (Ming Lei) [1638826] - [block] block: Split blk_pm_add_request() and blk_pm_put_request() (Ming Lei) [1638826] - [block] block, scsi: Change the preempt-only flag into a counter (Ming Lei) [1638826] - [block] block: Move power management code into a new source file (Ming Lei) [1638826] - [block] Blk-throttle: update to use rbtree with leftmost node cached (Ming Lei) [1638826] - [block] block: use bio_add_page in bio_iov_iter_get_pages (Ming Lei) [1638826] - [block] blok, bfq: do not plug I/O if all queues are weight-raised (Ming Lei) [1638826] - [block] block, bfq: inject other-queue I/O into seeky idle queues on NCQ flash (Ming Lei) [1638826] - [block] block, bfq: correctly charge and reset entity service in all cases (Ming Lei) [1638826]- [rpmspec] redhat: fix bpf_samples build (Jiri Benc) [1611579] - [fs] mnt: fix __detach_mounts infinite loop (Benjamin Coddington) [1628736] - [pci] pcie: Enable Broadom iProc PCIE and mark it is as tech preview (Mark Langsdorf) [1576958] - [pci] PCI/ACPI: Add iProc PCIe MCFG quirk (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Add ACPI/ECAM support (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Remove PAXC slot check to allow VF support (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Reduce inbound/outbound mapping print level (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Reject unconfigured physical functions from PAXC (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Disable MSI parsing in certain PAXC blocks (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Fix up corrupted PAXC root complex config registers (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Activate PAXC bridge quirk for more devices (Mark Langsdorf) [1576958]- [s390] s390/mm: fix mis-accounting of pgtable_bytes (Joe Lawrence) [1644481] - [mm] mm: add mm_pxd_folded checks to pgtable_bytes accounting functions (Joe Lawrence) [1644481] - [mm] mm: introduce mm_[p4d|pud|pmd]_folded (Joe Lawrence) [1644481] - [mm] mm: make the __PAGETABLE_PxD_FOLDED defines non-empty (Joe Lawrence) [1644481] - [x86] x86/cpu/vmware: Do not trace vmware_sched_clock() (Vitaly Kuznetsov) [1650273] - [fs] fuse: fix possibly missed wake-up after abort (Lukas Czerner) [1649244] - [fs] fuse: fix leaked notify reply (Lukas Czerner) [1649244] - [fs] fuse: fix blocked_waitq wakeup (Lukas Czerner) [1649244] - [fs] fuse: set FR_SENT while locked (Lukas Czerner) [1649244] - [fs] fuse: Fix use-after-free in fuse_dev_do_write() (Lukas Czerner) [1649244] - [fs] fuse: Fix use-after-free in fuse_dev_do_read() (Lukas Czerner) [1649244] - [fs] fuse: Add missed unlock_page() to fuse_readpages_fill() (Lukas Czerner) [1649244] - [fs] fuse: Don't access pipe->buffers without pipe_lock() (Lukas Czerner) [1649244] - [fs] fuse: fix initial parallel dirops (Lukas Czerner) [1649244] - [fs] fuse: Fix oops at process_init_reply() (Lukas Czerner) [1649244] - [fs] fuse: umount should wait for all requests (Lukas Czerner) [1649244] - [fs] fuse: fix unlocked access to processing queue (Lukas Czerner) [1649244] - [fs] fuse: fix double request_end() (Lukas Czerner) [1649244] - [fs] fuse: fix use-after-free in fuse_direct_IO() (Lukas Czerner) [1599195]- [firmware] efi: Fix debugobjects warning on 'efi_rts_work' (Waiman Long) [1652190] - [rpmspec] kernel.spec: Do not zip modules on noarch builds (Prarit Bhargava) [1646471] - [iommu] iommu/amd: Clear memory encryption mask from physical address (Gary Hook) [1640384]- [powerpc] powerpc/mm/radix: Only need the Nest MMU workaround for R -> RW transition (Steve Best) [1651276] - [powerpc] powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid (Steve Best) [1651276] - [powerpc] powerpc/tm: Fix HFSCR bit for no suspend case (Steve Best) [1651275]- [powerpc] powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage (Steve Best) [1651267] - [tools] perf tools: Remove ext from struct kmod_path (Jiri Olsa) [1581390] - [tools] perf tools: Add gzip_is_compressed function (Jiri Olsa) [1581390] - [tools] perf tools: Add lzma_is_compressed function (Jiri Olsa) [1581390] - [tools] perf tools: Add is_compressed callback to compressions array (Jiri Olsa) [1581390] - [tools] perf tools: Move the temp file processing into decompress_kmodule (Jiri Olsa) [1581390] - [tools] perf tools: Use compression id in decompress_kmodule() (Jiri Olsa) [1581390] - [tools] perf tools: Store compression id into struct dso (Jiri Olsa) [1581390] - [tools] perf tools: Add compression id into 'struct kmod_path' (Jiri Olsa) [1581390] - [tools] perf tools: Make is_supported_compression() static (Jiri Olsa) [1581390] - [tools] perf tools: Make decompress_to_file() function static (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in __open_dso() (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in symbol__disassemble() (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in read_object_code() (Jiri Olsa) [1581390] - [rpmspec] redhat: Enable kernel-tools (for kvm_stat) on s390x, too (Thomas Huth) [1631222]- [drm] drm/atomic_helper: Stop modesets on unregistered connectors harder (Lyude Paul) [1631575] - [drm] drm/nouveau: Fix nv50_mstc->best_encoder() (Lyude Paul) [1631575] - [drm] drm/atomic_helper: Allow DPMS On<->Off changes for unregistered connectors (Lyude Paul) [1631575] - [drm] drm/i915: Fix intel_dp_mst_best_encoder() (Lyude Paul) [1631575] - [drm] drm/i915: Skip vcpi allocation for MSTB ports that are gone (Lyude Paul) [1631575] - [drm] drm/i915: Don't unset intel_connector->mst_port (Lyude Paul) [1631575] - [drm] drm/atomic_helper: Disallow new modesets on unregistered connectors (Lyude Paul) [1631575] - [s390] s390/qeth: fix HiperSockets sniffer (Philipp Rudo) [1649773] - [s390] s390/qeth: report 25Gbit link speed (Philipp Rudo) [1649772] - [s390] s390/qeth: sanitize strings in debug messages (Philipp Rudo) [1649770] - [s390] s390/qeth: fix initial operstate (Philipp Rudo) [1649769] - [s390] s390/qeth: unregister netdevice only when registered (Philipp Rudo) [1649769] - [powerpc] powerpc/64s: consolidate MCE counter increment (Steve Best) [1633550] - [powerpc] powerpc/64s: move machine check SLB flushing to mm/slb.c (Steve Best) [1633550] - [powerpc] powernv/pseries: consolidate code for mce early handling (Steve Best) [1633550] - [powerpc] powerpc/pseries: Dump the SLB contents on SLB MCE errors (Steve Best) [1633550] - [powerpc] powerpc/pseries: Display machine check error details (Steve Best) [1633550] - [powerpc] powerpc/pseries: Flush SLB contents on SLB MCE errors (Steve Best) [1633550] - [powerpc] powerpc/pseries: Define MCE error event section (Steve Best) [1633550] - [powerpc] powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX (Steve Best) [1633550] - [powerpc] powerpc/pseries: Defer the logging of rtas error to irq work queue (Steve Best) [1633550] - [powerpc] powerpc/pseries: Fix endianness while restoring of r3 in MCE handler (Steve Best) [1633550] - [cdrom] cdrom: fix improper type cast, which can leat to information leak (Maurizio Lombardi) [1650476]- [drm] drm/amdgpu/pm: Fix potential Spectre v1 (Rob Clark) [1637115] - [drm] drm/i915/kvmgt: Fix potential Spectre v1 (Rob Clark) [1637115] - [fs] gfs2: Fix metadata read-ahead during truncate (2) (Andreas Grunbacher) [1647982] - [block] block: make sure writesame bio is aligned with logical block size (Ming Lei) [1648750] - [block] block: cleanup __blkdev_issue_discard() (Ming Lei) [1648750] - [block] block: make sure discard bio is aligned with logical block size (Ming Lei) [1648750] - [block] block: Clear kernel memory before copying to user (Ming Lei) [1648752] - [block] block: respect virtual boundary mask in bvecs (Ming Lei) [1648756] - [block] xen: don't include from and (Ming Lei) [1648756] - [block] block: remove ARCH_BIOVEC_PHYS_MERGEABLE (Ming Lei) [1648756] - [block] xen: provide a prototype for xen_biovec_phys_mergeable in xen.h (Ming Lei) [1648756] - [block] xen: remove the xen_biovec_phys_mergeable export (Ming Lei) [1648756] - [block] arm: remove the unused BIOVEC_MERGEABLE define (Ming Lei) [1648756] - [block] block: don't include bug.h from bio.h (Ming Lei) [1648756] - [block] block: don't include io.h from bio.h (Ming Lei) [1648756] - [block] block: remove bvec_to_phys (Ming Lei) [1648756] - [block] block: merge BIOVEC_SEG_BOUNDARY into biovec_phys_mergeable (Ming Lei) [1648756] - [block] block: add a missing BIOVEC_SEG_BOUNDARY check in bio_add_pc_page (Ming Lei) [1648756] - [block] block: simplify BIOVEC_PHYS_MERGEABLE (Ming Lei) [1648756] - [block] block: move req_gap_back_merge to blk.h (Ming Lei) [1648756] - [block] block: move req_gap_{back,front}_merge to blk-merge.c (Ming Lei) [1648756] - [block] block: move integrity_req_gap_{back,front}_merge to blk.h (Ming Lei) [1648756] - [fs] gfs2: Fix iomap buffer head reference counting bug (Andreas Grunbacher) [1647073] - [scsi] qla2xxx: Update driver version to 10.00.00.07.08.0-k1 (Himanshu Madhani) [1615896] - [scsi] scsi: qla2xxx: Initialize port speed to avoid setting lower speed (Himanshu Madhani) [1615896] - [scsi] scsi: qla2xxx: Fix incorrect port speed being set for FC adapters (Himanshu Madhani) [1615896] - [block] block: brd: associate with queue until adding disk (Ming Lei) [1644602] - [block] block: call rq_qos_exit() after queue is frozen (Ming Lei) [1641558] - [block] block: fix the DISCARD request merge (Ming Lei) [1646776] - [block] blk-mq: fallback to previous nr_hw_queues when updating fails (Ming Lei) [1642218] - [block] blk-mq: realloc hctx when hw queue is mapped to another node (Ming Lei) [1642218] - [block] blk-mq: change gfp flags to GFP_NOIO in blk_mq_realloc_hw_ctxs (Ming Lei) [1642218] - [block] blk-mq: adjust debugfs and sysfs register when updating nr_hw_queues (Ming Lei) [1642218] - [block] block: remove bio_rewind_iter() (Ming Lei) [1642208]- [fs] jbd2: fix use after free in jbd2_log_do_checkpoint() (Lukas Czerner) [1644694] - [fs] ext4: initialize retries variable in ext4_da_write_inline_data_begin() (Lukas Czerner) [1644694] - [fs] ext4: fix build error when DX_DEBUG is defined (Lukas Czerner) [1644694]- [pinctrl] pinctrl: intel: Add Ice Lake PCH pin controller support (David Arcari) [1483413] - [netdrv] nfp: flower: fix vlan match by checking both vlan id and vlan pcp (Pablo Cascon) [1645220] - [netdrv] nfp: flower: reject tunnel encap with ipv6 outer headers for offloading (Pablo Cascon) [1646644] - [netdrv] nfp: populate bus-info on representors (Pablo Cascon) [1643998] - [powerpc] KVM: PPC: Validate TCEs against preregistered memory page sizes (David Gibson) [1625821] - [powerpc] KVM: PPC: Inform the userspace about TCE update failures (David Gibson) [1625821] - [powerpc] KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages (David Gibson) [1625821]- [kernel] locking/lockdep: Fix debug_locks off performance problem (Waiman Long) [1647560] - [kernel] locking/lockdep: Remove duplicated 'lock_class_ops' percpu array (Waiman Long) [1647560] - [kernel] locking/lockdep: Make class->ops a percpu counter and move it under CONFIG_DEBUG_LOCKDEP=y (Waiman Long) [1647560] - [kernel] locking/lockdep: Add a faster path in __lock_release() (Waiman Long) [1647560] - [kernel] locking/lockdep: Eliminate redundant IRQs check in __lock_acquire() (Waiman Long) [1647560] - [kernel] locking/lockdep: Remove add_chain_cache_classes() (Waiman Long) [1647560] - [fs] gfs2: Put bitmap buffers in put_super (Andreas Grunbacher) [1647073] - [scsi] scsi: hpsa: limit transfer length to 1MB, not 512kB (Joseph Szczypek) [1643956] - [netdrv] nfp: report FW vNIC stats in interface stats (Pablo Cascon) [1645032] - [rpmspec] spec: Add bpftool debuginfo package (Jiri Olsa) [1633018] - [crypto] crypto: chelsio: Fix memory corruption in DMA Mapped buffers (Arjun Vynipadath) [1631750] - [cdrom] cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status (Maurizio Lombardi) [1627732] {CVE-2018-16658}- [kernel] srcu: Make early-boot call_srcu() reuse workqueue lists (Waiman Long) [1644375] - [tools] rcutorture: Test early boot call_srcu() (Waiman Long) [1644375] - [kernel] srcu: Make call_srcu() available during very early boot (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_state.ofl_lock to raw_spinlock_t (Waiman Long) [1644375] - [kernel] rcu: Remove obsolete ->dynticks_fqs and ->cond_resched_completed (Waiman Long) [1644375] - [kernel] rcu: Switch ->dynticks to rcu_data structure, remove rcu_dynticks (Waiman Long) [1644375] - [kernel] rcu: Switch dyntick nesting counters to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch urgent quiescent-state requests to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch lazy counts to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch last accelerate/advance to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch ->tick_nohz_enabled_snap to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Merge rcu_dynticks structure into rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Remove unused rcu_dynticks_snap() from Tiny RCU (Waiman Long) [1644375] - [kernel] rcu: Convert "1UL << x" to "BIT(x)" (Waiman Long) [1644375] - [kernel] rcu: Avoid resched_cpu() when rescheduling the current CPU (Waiman Long) [1644375] - [kernel] rcu: More aggressively enlist scheduler aid for nohz_full CPUs (Waiman Long) [1644375] - [kernel] rcu: Compute jiffies_till_sched_qs from other kernel parameters (Waiman Long) [1644375] - [kernel] rcu: Provide functions for determining if call_rcu() has been invoked (Waiman Long) [1644375] - [kernel] rcu: Eliminate ->rcu_qs_ctr from the rcu_dynticks structure (Waiman Long) [1644375] - [kernel] rcu: Motivate Tiny RCU forward progress (Waiman Long) [1644375] - [kernel] rcutorture: Dump reader protection sequence if failures or close calls (Waiman Long) [1644375] - [kernel] rcu: Provide improved interrupt-from-idle check in rcu_check_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Make need_resched() respond to urgent RCU-QS needs (Waiman Long) [1644375] - [kernel] rcu: Inline _rcu_barrier() into its sole remaining caller (Waiman Long) [1644375] - [kernel] rcu: Define rcu_all_qs() only in !PREEMPT builds (Waiman Long) [1644375] - [kernel] rcu: Remove !PREEMPT code from rcu_note_voluntary_context_switch() (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in update.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree_plugin.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree_exp.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tiny.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in srcutree.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcutorture.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcu.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in Kconfig (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcupdate_wait.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rculist.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcupdate.h (Waiman Long) [1644375] - [kernel] rcu: Remove now-unused rcutorture APIs (Waiman Long) [1644375] - [kernel] rcuperf: Remove the "rcu_bh" and "sched" torture types (Waiman Long) [1644375] - [kernel] rcutorture: Remove the "rcu_bh" and "sched" torture types (Waiman Long) [1644375] - [kernel] rcu: Stop testing RCU-bh and RCU-sched (Waiman Long) [1644375] - [kernel] rcutorture: Add RCU-bh and RCU-sched support for extended readers (Waiman Long) [1644375] - [kernel] rcu: Consolidate RCU-sched update-side function definitions (Waiman Long) [1644375] - [kernel] rcu: Consolidate RCU-bh update-side function definitions (Waiman Long) [1644375] - [kernel] rcu: Pull rcu_gp_kthread() FQS loop into separate function (Waiman Long) [1644375] - [kernel] rcu: Inline increment_cpu_stall_ticks() into its sole caller (Waiman Long) [1644375] - [kernel] rcu: Fix typo in force_qs_rnp()'s parameter's parameter (Waiman Long) [1644375] - [kernel] rcu: Eliminate initialization-time use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate RCU-barrier use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate quiescent-state and grace-period-nonstart use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate callback-invocation/invocation use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate grace-period management code use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate stall-warning use of rsp (Waiman Long) [1644375] - [kernel] rcu: Restructure rcu_check_gp_kthread_starvation() (Waiman Long) [1644375] - [kernel] rcu: Simplify rcutorture_get_gp_data() (Waiman Long) [1644375] - [kernel] rcu: Remove for_each_rcu_flavor() flavor-traversal macro (Waiman Long) [1644375] - [kernel] rcu: Remove last non-flavor-traversal rsp local variable from tree_plugin.h (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_data structure's ->rsp field (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_node tree accessor macros (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from expedited grace-period functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from no-CBs CPU functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_cpu_stall_info() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_spawn_one_boost_kthread() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from dump_blkd_tasks() and friend (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_print_detail_task_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_init_one() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_boot_init_percpu_data() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from _rcu_barrier() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __rcu_pending() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __call_rcu() and friend (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __rcu_process_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_gp_start_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from force-quiescent-state functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_do_batch() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from CPU hotplug functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_quiescent_state() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_kthread() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_slow() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from note_gp_changes() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __note_gp_changes() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_advance_cbs() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_accelerate_cbs_unlocked() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_accelerate_cbs() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_kthread_wake() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_future_gp_cleanup() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from check_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_other_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_stall_kick_kthreads() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_dump_cpu_stacks() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_gp_kthread_starvation() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from record_gp_stall_check_time() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_get_root() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_in_progress() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rdp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_unblock_qs_rnp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rsp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rnp() (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_data_p pointer to default rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_state_p pointer to default rcu_state structure (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_state structure's ->rda field (Waiman Long) [1644375] - [kernel] rcu: Eliminate rcu_state structure's ->call field (Waiman Long) [1644375] - [kernel] rcu: Remove RCU_STATE_INITIALIZER() (Waiman Long) [1644375] - [kernel] rcu: Express Tiny RCU updates in terms of RCU rather than RCU-sched (Waiman Long) [1644375] - [kernel] rcu: Define RCU-sched API in terms of RCU for Tree RCU PREEMPT builds (Waiman Long) [1644375] - [kernel] rcu: Fix typo in rcu_get_gp_kthreads_prio() header comment (Waiman Long) [1644375] - [kernel] rcu: Drop "wake" parameter from rcu_report_exp_rdp() (Waiman Long) [1644375] - [kernel] rcu: Update comments and help text for no more RCU-bh updaters (Waiman Long) [1644375] - [kernel] rcu: Define RCU-bh update API in terms of RCU (Waiman Long) [1644375] - [kernel] rcu: Report expedited grace periods at context-switch time (Waiman Long) [1644375] - [kernel] rcu: Apply RCU-bh QSes to RCU-sched and RCU-preempt when safe (Waiman Long) [1644375] - [kernel] rcu: Add warning to detect half-interrupts (Waiman Long) [1644375] - [kernel] rcu: Remove now-unused ->b.exp_need_qs field from the rcu_special union (Waiman Long) [1644375] - [kernel] rcu: Allow processing deferred QSes for exiting RCU-preempt readers (Waiman Long) [1644375] - [kernel] rcutorture: Test extended "rcu" read-side critical sections (Waiman Long) [1644375] - [kernel] rcu: Defer reporting RCU-preempt quiescent states when disabled (Waiman Long) [1644375] - [kernel] rcu: Refactor rcu_{nmi,irq}_{enter,exit}() (Waiman Long) [1644375] - [documentation] doc: Fix broken HTML directive (Waiman Long) [1644375] - [documentation] doc: Update removal of RCU-bh/sched update machinery (Waiman Long) [1644375] - [kernel] rcutorture: Maintain self-propagating CB only during forward-progress test (Waiman Long) [1644375] - [kernel] rcutorture: Check GP completion at stutter end (Waiman Long) [1644375] - [kernel] rcutorture: Print forward-progress test interval on error (Waiman Long) [1644375] - [kernel] rcutorture: Adjust number of reader kthreads per CPU-hotplug operations (Waiman Long) [1644375] - [kernel] rcutorture: Reduce priority of forward-progress testing (Waiman Long) [1644375] - [kernel] rcutorture: Limit reader duration if irq or bh disabled (Waiman Long) [1644375] - [kernel] rcutorture: Increase rcu_read_delay() longdelay_ms (Waiman Long) [1644375] - [kernel] rcutorture: Add self-propagating callback to forward-progress testing (Waiman Long) [1644375] - [kernel] rcutorture: Vary forward-progress test interval (Waiman Long) [1644375] - [kernel] rcutorture: Avoid no-test complaint if too few forward-progress tries (Waiman Long) [1644375] - [kernel] rcutorture: Also use GP sequence to judge forward progress (Waiman Long) [1644375] - [kernel] rcutorture: Add forward-progress tests for RCU grace periods (Waiman Long) [1644375] - [tools] rcutorture: Remove TREE06 and TREE08 from the default test list (Waiman Long) [1644375] - [kernel] rcuperf: Warn on bad perf type for built-in tests (Waiman Long) [1644375] - [kernel] rcutorture: Warn on bad torture type for built-in tests (Waiman Long) [1644375] - [kernel] rcutorture: Force occasional reader waits (Waiman Long) [1644375] - [tools] torture: Stop overwriting Make.out file with obsolete version (Waiman Long) [1644375] - [documentation] doc: Improve rcu_dynticks::dynticks documentation (Waiman Long) [1644375] - [documentation] doc: Fix broken RCU-requirements link to LKML archive (Waiman Long) [1644375] - [documentation] doc: Add design documentation on interruption of NMI handlers (Waiman Long) [1644375] - [kernel] rcutorture: Fix rcu_barrier successes counter (Waiman Long) [1644375] - [kernel] rcutorture: Add support to detect if boost kthread prio is too low (Waiman Long) [1644375] - [kernel] rcutorture: Use monotonic timestamp for stall detection (Waiman Long) [1644375] - [kernel] rcutorture: Make boost test more robust (Waiman Long) [1644375] - [kernel] rcutorture: Disable RT throttling for boost tests (Waiman Long) [1644375] - [kernel] rcutorture: Emphasize testing of single reader protection type (Waiman Long) [1644375] - [kernel] rcutorture: Handle extended read-side critical sections (Waiman Long) [1644375] - [kernel] rcutorture: Make rcu_torture_timer() use rcu_torture_one_read() (Waiman Long) [1644375] - [kernel] rcutorture: Use per-CPU random state for rcu_torture_timer() (Waiman Long) [1644375] - [kernel] rcutorture: Use atomic increment for n_rcu_torture_timers (Waiman Long) [1644375] - [kernel] rcutorture: Extract common code from rcu_torture_reader() (Waiman Long) [1644375] - [kernel] rcuperf: Remove unused torturing_tasks() function (Waiman Long) [1644375] - [kernel] rcu: Remove rcutorture test version and sequence number (Waiman Long) [1644375] - [kernel] rcutorture: Change units of onoff_interval to jiffies (Waiman Long) [1644375] - [kernel] rcu: Assign higher prio to RCU threads if rcutorture is built-in (Waiman Long) [1644375] - [documentation] rculist: Improve documentation for list_for_each_entry_from_rcu() (Waiman Long) [1644375] - [kernel] srcu: Add grace-period number to rcutorture statistics printout (Waiman Long) [1644375] - [kernel] rcu: Print stall-warning NMI dyntick state in hexadecimal (Waiman Long) [1644375] - [maintainers] MAINTAINERS: Update RCU, SRCU, and TORTURE-TEST entries (Waiman Long) [1644375] - [kernel] rcu: Make rcu_seq_diff() more exact (Waiman Long) [1644375] - [documentation] doc: Update synchronize_rcu() definition in whatisRCU.txt (Waiman Long) [1644375] - [kernel] rcu: Check the range of jiffies_till_{first, next}_fqs when setting them (Waiman Long) [1644375] - [kernel] rcu: Add diagnostics for rcutorture writer stall warning (Waiman Long) [1644375] - [kernel] rcu: Add comment to the last sleep in the rcu tasks loop (Waiman Long) [1644375] - [kernel] rcu: Speed up calling of RCU tasks callbacks (Waiman Long) [1644375] - [kernel] rcu: Add comment documenting how rcu_seq_snap works (Waiman Long) [1644375] - [kernel] rcu: Use RCU CPU stall timeout for rcu_check_gp_start_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove __maybe_unused from rcu_cpu_has_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from rcu_perf_print_module_parms() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from rcu_torture_print_module_parms() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from panic_on_rcu_stall() and rcu_blocking_is_gp() (Waiman Long) [1644375] - [kernel] rcu: Remove unused local variable "cpu" (Waiman Long) [1644375] - [kernel] rcu: Remove unused rcu_kick_nohz_cpu() function (Waiman Long) [1644375] - [kernel] rcu: Clarify and correct the rcu_preempt_qs() header comment (Waiman Long) [1644375] - [kernel] rcu: Inline rcu_dynticks_momentary_idle() into its sole caller (Waiman Long) [1644375] - [kernel] rcu: Mark task as .need_qs less aggressively (Waiman Long) [1644375] - [kernel] rcu: Improve RCU-tasks naming and comments (Waiman Long) [1644375] - [kernel] rcu: Use pr_fmt to prefix "rcu: " to logging output (Waiman Long) [1644375] - [kernel] rcu: rcupdate.h: Get rid of Sphinx warnings at rcu_pointer_handoff() (Waiman Long) [1644375] - [kernel] rcu: Improve rcu_note_voluntary_context_switch() reporting (Waiman Long) [1644375] - [kernel] rcu: Make rcu_read_unlock_special() static (Waiman Long) [1644375] - [kernel] rcu: Add diagnostics for offline CPUs failing to report QS (Waiman Long) [1644375] - [kernel] rcu: Record ->gp_state for both phases of grace-period initialization (Waiman Long) [1644375] - [kernel] rcu: Add CPU online/offline state to dump_blkd_tasks() (Waiman Long) [1644375] - [kernel] rcu: Add up-tree information to dump_blkd_tasks() diagnostics (Waiman Long) [1644375] - [kernel] rcu: Remove CPU-hotplug failsafe from force-quiescent-state code path (Waiman Long) [1644375] - [kernel] rcu: Remove failsafe check for lost quiescent state (Waiman Long) [1644375] - [kernel] rcu: Move grace-period pre-init delay after pre-init (Waiman Long) [1644375] - [kernel] rcu: Add RCU-preempt check for waiting on newly onlined CPU (Waiman Long) [1644375] - [kernel] rcu: Fix grace-period hangs due to race with CPU offline (Waiman Long) [1644375] - [kernel] rcu: Fix grace-period hangs from mid-init task resume (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive splats from mid-init task resume (Waiman Long) [1644375] - [kernel] rcu: Suppress more involved false-positive preempted-task splats (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive preempted-task splats (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive offline-CPU lockdep-RCU splat (Waiman Long) [1644375] - [kernel] rcu: Prevent useless FQS scan after all CPUs have checked in (Waiman Long) [1644375] - [kernel] rcu: Replace smp_wmb() with smp_store_release() for stall check (Waiman Long) [1644375] - [kernel] rcu: Fix typo and add additional debug (Waiman Long) [1644375] - [kernel] rcu: Make rcu_report_unblock_qs_rnp() warn on violated preconditions (Waiman Long) [1644375] - [kernel] rcu: Make rcu_init_new_rnp() stop upon already-set bit (Waiman Long) [1644375] - [kernel] rcu: Fix an obsolete ->qsmaskinit comment (Waiman Long) [1644375] - [kernel] rcu: Clean up handling of tasks blocked across full-rcu_node offline (Waiman Long) [1644375] - [kernel] rcu: Identify grace period is in progress as we advance up the tree (Waiman Long) [1644375] - [kernel] rcu: Use better variable names in funnel locking loop (Waiman Long) [1644375] - [kernel] rcu: Rename the grace-period-request variables and parameters (Waiman Long) [1644375] - [kernel] rcu: Regularize resetting of rcu_data wrap indicator (Waiman Long) [1644375] - [kernel] rcutorture: Correctly handle grace-period sequence wrap (Waiman Long) [1644375] - [kernel] rcu: Make rcu_start_this_gp() check for grace period already started (Waiman Long) [1644375] - [kernel] rcu: Fix cpustart tracepoint gp_seq number (Waiman Long) [1644375] - [kernel] rcu: Produce last "CleanupMore" trace only if late-breaking request (Waiman Long) [1644375] - [kernel] rcu: Don't funnel-lock above leaf node if GP in progress (Waiman Long) [1644375] - [documentation] doc: Update RCU CPU stall-warning documentation (Waiman Long) [1644375] - [documentation] doc: Update memory-ordering documentation for ->gp-seq (Waiman Long) [1644375] - [documentation] doc: Update data-structure documentation for ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make simple callback acceleration refer to rdp->gp_seq_needed (Waiman Long) [1644375] - [kernel] rcu: Remove ->gpnum and ->completed (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_fqs tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_quiescent_state_report tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_unlock_preempted_task tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_preempt_task tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_grace_period_init tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_future_grace_period tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_grace_period tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make rcu_nocb_wait_gp() check if GP already requested (Waiman Long) [1644375] - [kernel] rcu: Move from ->need_future_gp[] to ->gp_seq_needed (Waiman Long) [1644375] - [kernel] rcutorture: Convert rcutorture_get_gp_data() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make RCU CPU stall warnings use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert grace-period requests to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert ->completedqs to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert ->rcu_iw_gpnum to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_gp_in_progress() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_nocb_gp_get() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_try_advance_all_cbs() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_implicit_dynticks_qs() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_gpnum_ovf() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move RCU's grace-period-change code to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert conditional grace-period primitives to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make quiescent-state reporting use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_check_gp_kthread_starvation() to GP sequence number (Waiman Long) [1644375] - [kernel] rcu: Make rcutorture's batches-completed API use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_gp_slow() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Introduce grace-period sequence numbers (Waiman Long) [1644375] - [kernel] rcu: Make rcu_gp_cleanup() write only once to ->gp_flags (Waiman Long) [1644375] - [kernel] rcu: Diagnostics for grace-period startup hangs (Waiman Long) [1644375] - [kernel] rcu: Exclude near-simultaneous RCU CPU stall warnings (Waiman Long) [1644375] - [kernel] rcu: Use the proper lockdep annotation in dump_blkd_tasks() (Waiman Long) [1644375] - [kernel] rcu: Add debugging info to assertion (Waiman Long) [1644375] - [kernel] torture: Keep old-school dmesg format (Waiman Long) [1644375] - [kernel] torture: Make online/offline messages appear only for verbose=2 (Waiman Long) [1644375] - [tools] rcutorture: Make kvm-find-errors.sh find close calls (Waiman Long) [1644375] - [tools] rcutorture: Remove obsolete TREE08-T.boot file (Waiman Long) [1644375] - [tools] torture: Use a single build directory for torture scenarios (Waiman Long) [1644375] - [kernel] srcu: Introduce srcu_read_{un,}lock_notrace() (Waiman Long) [1644375] - [kernel] srcu: Add address of first callback to rcutorture output (Waiman Long) [1644375] - [kernel] srcu: Document that srcu_funnel_gp_start() implies srcu_funnel_exp_start() (Waiman Long) [1644375] - [kernel] srcu: Fix typos in __call_srcu() header comment (Waiman Long) [1644375] - [kernel] rcu: Make expedited grace period use direct call on last leaf (Waiman Long) [1644375]- [netdrv] nfp: flower: use offsets provided by pedit instead of index for ipv6 (Pablo Cascon) [1645132] - [netdrv] nfp: flower: fix multiple keys per pedit action (Pablo Cascon) [1645132] - [netdrv] nfp: flower: fix pedit set actions for multiple partial masks (Pablo Cascon) [1645132] - [netdrv] nfp: flower: ignore checksum actions when performing pedit actions (Pablo Cascon) [1644400] - [kernel] sched/fair: Fix throttle_list starvation with low CFS quota (Phil Auld) [1638526] - [net] tipc: fix the big/little endian issue in tipc_dest (Jon Maloy) [1640712] - [rpmspec] kernel.spec: Include kernel-signing-ca.cer public key (Prarit Bhargava) [1638465] - [block] block: don't deal with discard limit in blkdev_issue_discard() (Ming Lei) [1631255] - [powerpc] powerpc/mm: Check memblock_add against MAX_PHYSMEM_BITS range (Gustavo Duarte) [1561402] - [powerpc] powerpc/mm: Increase MAX_PHYSMEM_BITS to 128TB with SPARSEMEM_VMEMMAP config (Gustavo Duarte) [1561402]- [s390] s390/crypto: Enhance paes cipher to accept variable length key material (Philipp Rudo) [1644387] - [s390] s390/pkey: move pckmo subfunction available checks away from module init (Philipp Rudo) [1644387] - [s390] s390/pkey: Load pkey kernel module automatically (Philipp Rudo) [1644387] - [s390] s390/zcrypt: fix broken zcrypt_send_cprb in-kernel api function (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for transforming key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for random protected key verification (Philipp Rudo) [1644387] - [s390] s390/pkey: Add sysfs attributes to emit secure key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Add sysfs attributes to emit protected key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Define protected key blob format (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for random protected key generation (Philipp Rudo) [1644387] - [s390] s390/zcrypt: add ap_adapter_mask sysfs attribute (Philipp Rudo) [1644387] - [s390] s390/zcrypt: provide apfs failure code on type 86 error reply (Philipp Rudo) [1644387] - [s390] s390/zcrypt: zcrypt device driver cleanup (Philipp Rudo) [1644387] - [s390] s390/zcrypt: multiple zcrypt device nodes support (Philipp Rudo) [1644387] - [s390] s390/zcrypt: enable AP bus scan without a valid default domain (Philipp Rudo) [1644387] - [s390] s390/zcrypt: Use kmemdup to replace kmalloc + memcpy (Philipp Rudo) [1644387] - [s390] s390/qeth: add TSO support for L2 devices (Philipp Rudo) [1644381] - [s390] s390/qeth: add support for IPv6 TSO (Philipp Rudo) [1644381] - [s390] s390/qeth: enhance TSO control sequence (Philipp Rudo) [1644381] - [s390] s390/qeth: make TSO controls protocol-agnostic (Philipp Rudo) [1644381] - [s390] s390: qeth: Fix potential array overrun in cmd/rc lookup (Philipp Rudo) [1644381] - [s390] s390: qeth_core_mpc: Use ARRAY_SIZE instead of reimplementing its function (Philipp Rudo) [1644381] - [scsi] scsi: mpt3sas: Remove unnecessary parentheses and simplify null checks (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Use dma_pool_zalloc (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove unused macro MPT3SAS_FMT (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert logging uses with MPT3SAS_FMT without logging levels (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove KERN_WARNING from panic uses (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert logging uses with MPT3SAS_FMT and reply_q_name to s: (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert mlsleading uses of pr_ with MPT3SAS_FMT (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert uses of pr_ with MPT3SAS_FMT to ioc_ (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Add ioc_ logging macros (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix calltrace observed while running IO & reset (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Improve kernel-doc headers (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Split _base_reset_handler(), mpt3sas_scsih_reset_handler() and mpt3sas_ctl_reset_handler() (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix a race condition in mpt3sas_base_hard_reset_handler() (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix _transport_smp_handler() error path (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Introduce struct mpt3sas_nvme_cmd (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Annotate switch/case fall-through (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove set-but-not-used variables (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix indentation (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Update driver version "26.100.00.00" (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: As per MPI-spec, use combined reply queue for SAS3.5 controllers when HBA supports more than 16 MSI-x vectors (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix, False timeout prints for ioctl and other internal commands during controller reset (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Don't access the structure after decrementing it's instance reference count (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Incorrect command status was set/marked as not used (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Don't abort I/Os issued to NVMe drives while processing Async Broadcast primitive event (Tomas Henzl) [1638649] - [netdrv] net/mlx5e: Do not ignore netdevice TX/RX queues number (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Use non-delayed work for update stats (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Initialize all netdev common structures in one place (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Always initialize update stats delayed work (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Gather common netdev init/cleanup functionality in one place (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Fix netlink support in IPoIB (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Hoist alloc_netdev_mqs out of the driver (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Consolidate checking of the proposed child interface (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Maintain the child_intfs list from ndo_init/uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Do not remove child devices from within the ndo_uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Get rid of the sysfs_mutex (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Use priv_destructor for netdev cleanup (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Move init code to ndo_init (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Move all uninit code into ndo_uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Use cancel_delayed_work_sync for neigh-clean task (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Get rid of IPOIB_FLAG_GOING_DOWN (Alaa Hleihel) [1643103] - [infiniband] RDMA/ipoib: Fix use of sizeof() (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Do not recycle RX pages in interface down flow (Alaa Hleihel) [1643103 1643047] - [netdrv] net/mlx5e: Replace call to MPWQE free with dealloc in interface down flow (Alaa Hleihel) [1643103 1643047] - [net] net/xdp: Fix suspicious RCU usage warning (Alaa Hleihel) [1643103 1643047] - [netdrv] net/mlx5: WQ, fixes for fragmented WQ buffers API (Alaa Hleihel) [1643103 1636183] - [netdrv] net/mlx4_en: Use minimal rx and tx ring sizes on kdump kernel (Alaa Hleihel) [1643103 1615267] - [x86] mark coffeelake-s/h 8+2 as supported (David Arcari) [1575461 1575460] - [x86] x86/spec_ctrl: Synchronize STIBP changes with RHEL IBRS code (Waiman Long) [1643233] - [x86] x86/speculation: Propagate information about RSB filling mitigation to sysfs (Waiman Long) [1643233] - [x86] x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation (Waiman Long) [1643233] - [x86] x86/speculation: Apply IBPB more strictly to avoid cross-process data leak (Waiman Long) [1643233] - [x86] x86/speculation: Add RETPOLINE_AMD support to the inline asm CALL_NOSPEC variant (Waiman Long) [1643233] - [x86] x86/CPU: Fix unused variable warning when !CONFIG_IA32_EMULATION (Waiman Long) [1643233] - [x86] x86/pti/64: Remove the SYSCALL64 entry trampoline (Waiman Long) [1643233] - [x86] x86/entry/64: Use the TSS sp2 slot for SYSCALL/SYSRET scratch space (Waiman Long) [1643233] - [x86] x86/entry/64: Document idtentry (Waiman Long) [1643233] - [x86] x86/asm-offsets: Move TSS_sp0 and TSS_sp1 to asm-offsets.c (Waiman Long) [1643233] - [x86] x86: Add entry trampolines to kcore (Waiman Long) [1643233] - [kernel] kallsyms, x86: Export addresses of PTI entry trampolines (Waiman Long) [1643233] - [kernel] kallsyms: Simplify update_iter_mod() (Waiman Long) [1643233] - [scsi] scsi: csiostor: fix incorrect port capabilities (Arjun Vynipadath) [1628866] - [scsi] scsi: csiostor: add a check for NULL pointer after kmalloc() (Arjun Vynipadath) [1628866] - [scsi] scsi: csiostor: update ingress pack and pad boundary value (Arjun Vynipadath) [1628866]- [netdrv] nfp: flower: use host context count provided by firmware (Pablo Cascon) [1639609] - [netdrv] nfp: flower: use stats array instead of storing stats per flow (Pablo Cascon) [1639609] - [netdrv] nfp: flower: use rhashtable for flow caching (Pablo Cascon) [1639609] - [netdrv] nfp: avoid soft lockups under control message storm (Pablo Cascon) [1639609] - [kernel] sched: disable autogroups by default (Phil Auld) [1568166] - [s390] s390/keyboard: sanitize array index in do_kdsk_ioctl (Steve Best) [1637591] - [char] ipmi:ssif: Add support for multi-part transmit messages > 2 parts (Tony Camuso) [1622053] - [scsi] scsi: libsas: fix a race condition when smp task timeout (Zhou Wang) [1640426] - [scsi] scsi: libsas: check the ata device status by ata_dev_enabled() (Zhou Wang) [1640426] - [scsi] scsi: libsas: always unregister the old device if going to discover new (Zhou Wang) [1640426] - [scsi] scsi: libsas: dynamically allocate and free ata host (Zhou Wang) [1640426] - [scsi] scsi: libsas: remove irq save in sas_ata_qc_issue() (Zhou Wang) [1640426]- [video] fbdev: make FB_BACKLIGHT a tristate (Rob Clark) [1643333 1589158] - [netdrv] Taint kernel if e1000 is loaded (Neil Horman) [1643617] - [netdrv] iavf: fix a typo (Stefan Assmann) [1627882] - [netdrv] i40evf: remove ndo_poll_controller (Stefan Assmann) [1627882] - [netdrv] intel-ethernet: use correct module license (Stefan Assmann) [1627882] - [netdrv] iavf: finish renaming files to iavf (Stefan Assmann) [1627882] - [netdrv] iavf: rename most of i40e strings (Stefan Assmann) [1627882] - [netdrv] iavf: tracing infrastructure rename (Stefan Assmann) [1627882] - [netdrv] iavf: replace i40e_debug with iavf version (Stefan Assmann) [1627882] - [netdrv] iavf: rename i40e_hw to iavf_hw (Stefan Assmann) [1627882] - [netdrv] iavf: rename I40E_ADMINQ_DESC (Stefan Assmann) [1627882] - [netdrv] iavf: rename device ID defines (Stefan Assmann) [1627882] - [netdrv] iavf: remove references to old names (Stefan Assmann) [1627882] - [netdrv] iavf: move i40evf files to new name (Stefan Assmann) [1627882] - [netdrv] iavf: rename i40e_status to iavf_status (Stefan Assmann) [1627882] - [netdrv] iavf: rename functions and structs to new name (Stefan Assmann) [1627882] - [netdrv] iavf: diet and reformat (Stefan Assmann) [1627882] - [netdrv] configs: enable CONFIG_IAVF=m (Stefan Assmann) [1627882] - [netdrv] intel-ethernet: rename i40evf to iavf (Stefan Assmann) [1627882] - [netdrv] i40e(vf): remove i40e_ethtool_stats.h header file (Stefan Assmann) [1627882] - [netdrv] i40evf: cancel workqueue sync for adminq when a VF is removed (Stefan Assmann) [1627882] - [netdrv] i40evf: Don't enable vlan stripping when rx offload is turned on (Stefan Assmann) [1627882] - [netdrv] i40evf: set IFF_UNICAST_FLT flag for the VF (Stefan Assmann) [1627882] - [netdrv] i40evf: Validate the number of queues a PF sends (Stefan Assmann) [1627882] - [netdrv] i40evf: Change a VF mac without reloading the VF driver (Stefan Assmann) [1627882] - [netdrv] i40evf: update ethtool stats code and use helper functions (Stefan Assmann) [1627882] - [netdrv] i40e: Add AQ command for rearrange NVM structure (Stefan Assmann) [1627882] - [netdrv] i40e: Add additional return code to i40e_asq_send_command (Stefan Assmann) [1627882] - [netdrv] i40e/i40evf: remove redundant functions i40evf_aq_(set/get)_phy_register (Stefan Assmann) [1627882] - [netdrv] cls_flower: fix error values for commands not supported by drivers (Stefan Assmann) [1627882] - [init] init/main.c: Enable watchdog_thresh control from kernel line (Prarit Bhargava) [1643161] - [s390] s390/purgatory: Remove duplicate variable definitions (Philipp Rudo) [1642447] - [s390] s390/purgatory: Add missing FORCE to Makefile targets (Philipp Rudo) [1642447] - [s390] s390/purgatory: Fix crash with expoline enabled (Philipp Rudo) [1642447] - [s390] s390: disable asm code expolines if cc does not support it (Philipp Rudo) [1642447] - [netdrv] Revert be2net: remove desc field from be_eq_obj (Ivan Vecera) [1639867]- [rpmspec] redhat: add optional bpf_samples package (Jiri Benc) [1611579] - [powerpc] powerpc/time: Fix clockevent_decrementer initalisation for PR KVM (Steve Best) [1641615] - [net] ip: frags: fix crash in ip_do_fragment() (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipfrag: let ip(6)frag_high_thresh in ns be higher than in init_net (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv6: discard IP frag queue on more errors (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: fail fast on IP defrag errors (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: process in-order fragments efficiently (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: add helpers to process in-order fragments faster (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv6: defrag: drop non-last frags smaller than min mtu (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv4: frags: precedence bug in ip_expire() (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: use rb trees for IP frag queue (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] modify skb_rbtree_purge to return the truesize of all purged skbs (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: discard IPv4 datagrams with overlapping segments (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [fs] ovl: fix format of setxattr debug (Miklos Szeredi) [1636875] - [fs] ovl: fix access beyond unterminated strings (Miklos Szeredi) [1636875] - [fs] ovl: make symbol 'ovl_aops' static (Miklos Szeredi) [1636875] - [fs] vfs: swap names of (do,vfs)_clone_file_range() (Miklos Szeredi) [1636875] - [fs] ovl: fix freeze protection bypass in ovl_clone_file_range() (Miklos Szeredi) [1636875] - [fs] ovl: fix freeze protection bypass in ovl_write_iter() (Miklos Szeredi) [1636875] - [fs] ovl: fix memory leak on unlink of indexed file (Miklos Szeredi) [1636875] - [fs] ovl: fix oopses in ovl_fill_super() failure paths (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fadvise() (Miklos Szeredi) [1636875] - [fs] vfs: implement readahead(2) using POSIX_FADV_WILLNEED (Miklos Szeredi) [1636875] - [fs] vfs: add the fadvise() file operation (Miklos Szeredi) [1636875] - [fs] Documentation/filesystems: update documentation of file_operations (Miklos Szeredi) [1636875] - [fs] ovl: fix GPF in swapfile_activate of file from overlayfs over xfs (Miklos Szeredi) [1636875] - [fs] ovl: respect FIEMAP_FLAG_SYNC flag (Miklos Szeredi) [1636875] - [fs] ovl: Enable metadata only feature (Miklos Szeredi) [1636875] - [fs] ovl: Do not do metacopy only for ioctl modifying file attr (Miklos Szeredi) [1636875] - [fs] ovl: Do not do metadata only copy-up for truncate operation (Miklos Szeredi) [1636875] - [fs] ovl: add helper to force data copy-up (Miklos Szeredi) [1636875] - [fs] ovl: Check redirect on index as well (Miklos Szeredi) [1636875] - [fs] ovl: Set redirect on upper inode when it is linked (Miklos Szeredi) [1636875] - [fs] ovl: Set redirect on metacopy files upon rename (Miklos Szeredi) [1636875] - [fs] ovl: Do not set dentry type ORIGIN for broken hardlinks (Miklos Szeredi) [1636875] - [fs] ovl: Add an inode flag OVL_CONST_INO (Miklos Szeredi) [1636875] - [fs] ovl: Treat metacopy dentries as type OVL_PATH_MERGE (Miklos Szeredi) [1636875] - [fs] ovl: Check redirects for metacopy files (Miklos Szeredi) [1636875] - [fs] ovl: Move some dir related ovl_lookup_single() code in else block (Miklos Szeredi) [1636875] - [fs] ovl: Do not expose metacopy only dentry from d_real() (Miklos Szeredi) [1636875] - [fs] ovl: Open file with data except for the case of fsync (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_inode_realdata() (Miklos Szeredi) [1636875] - [fs] ovl: Store lower data inode in ovl_inode (Miklos Szeredi) [1636875] - [fs] ovl: Fix ovl_getattr() to get number of blocks from lower (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_dentry_lowerdata() to get lower data dentry (Miklos Szeredi) [1636875] - [fs] ovl: Copy up meta inode data from lowest data inode (Miklos Szeredi) [1636875] - [fs] ovl: Modify ovl_lookup() and friends to lookup metacopy dentry (Miklos Szeredi) [1636875] - [fs] ovl: Use out_err instead of out_nomem (Miklos Szeredi) [1636875] - [fs] ovl: A new xattr OVL_XATTR_METACOPY for file on upper (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_already_copied_up() (Miklos Szeredi) [1636875] - [fs] ovl: Copy up only metadata during copy up where it makes sense (Miklos Szeredi) [1636875] - [fs] ovl: During copy up, first copy up metadata and then data (Miklos Szeredi) [1636875] - [fs] ovl: Provide a mount option metacopy=on/off for metadata copyup (Miklos Szeredi) [1636875] - [fs] ovl: Move the copy up helpers to copy_up.c (Miklos Szeredi) [1636875] - [fs] ovl: Initialize ovl_inode->redirect in ovl_get_inode() (Miklos Szeredi) [1636875] - [fs] ovl: fix documentation of non-standard behavior (Miklos Szeredi) [1636875] - [fs] ovl: obsolete "check_copy_up" module option (Miklos Szeredi) [1636875] - [fs] vfs: remove open_flags from d_real() (Miklos Szeredi) [1636875] - [fs] Revert "fsnotify: support overlayfs" (Miklos Szeredi) [1636875] - [fs] Partially revert "locks: fix file locking on overlayfs" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: do get_write_access() on upper layer of overlayfs" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: add flags to d_real()" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: update ovl inode before relatime check" (Miklos Szeredi) [1636875] - [fs] Revert "ovl: fix relatime for directories" (Miklos Szeredi) [1636875] - [fs] vfs: fix freeze protection in mnt_want_write_file() for overlayfs (Miklos Szeredi) [1636875] - [fs] Revert "ovl: don't allow writing ioctl on lower layer" (Miklos Szeredi) [1636875] - [fs] Revert "ovl: fix may_write_real() for overlayfs directories" (Miklos Szeredi) [1636875] - [fs] vfs: don't open real (Miklos Szeredi) [1636875] - [fs] ovl: add reflink/copyfile/dedup support (Miklos Szeredi) [1636875] - [fs] ovl: add O_DIRECT support (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fiemap() (Miklos Szeredi) [1636875] - [fs] ovl: add lsattr/chattr support (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fallocate() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_mmap() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fsync() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_write_iter() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_read_iter() (Miklos Szeredi) [1636875] - [fs] ovl: add helper to return real file (Miklos Szeredi) [1636875] - [fs] ovl: stack file ops (Miklos Szeredi) [1636875] - [fs] ovl: deal with overlay files in ovl_d_real() (Miklos Szeredi) [1636875] - [fs] ovl: copy up file size as well (Miklos Szeredi) [1636875] - [fs] Revert "Revert "ovl: get_write_access() in truncate"" (Miklos Szeredi) [1636875] - [fs] ovl: copy up inode flags (Miklos Szeredi) [1636875] - [fs] ovl: copy up times (Miklos Szeredi) [1636875] - [fs] vfs: export vfs_dedupe_file_range_one() to modules (Miklos Szeredi) [1636875] - [fs] vfs: export vfs_ioctl() to modules (Miklos Szeredi) [1636875] - [fs] vfs: make open_with_fake_path() not contribute to nr_files (Miklos Szeredi) [1636875] - [fs] ovl: fix wrong use of impure dir cache in ovl_iterate() (Miklos Szeredi) [1636875] - [fs] new helper: open_with_fake_path() (Miklos Szeredi) [1636875] - [fs] now we can fold open_check_o_direct() into do_dentry_open() (Miklos Szeredi) [1636875] - [fs] lift fput() on late failures into path_openat() (Miklos Szeredi) [1636875] - [fs] fold put_filp() into fput() (Miklos Szeredi) [1636875] - [fs] introduce FMODE_OPENED (Miklos Szeredi) [1636875] - [fs] ->file_open(): lose cred argument (Miklos Szeredi) [1636875] - [fs] security_file_open(): lose cred argument (Miklos Szeredi) [1636875] - [fs] get rid of cred argument of vfs_open() and do_dentry_open() (Miklos Szeredi) [1636875] - [fs] pass ->f_flags value to alloc_empty_file() (Miklos Szeredi) [1636875] - [fs] pass creds to get_empty_filp(), make sure dentry_open() passes the right creds (Miklos Szeredi) [1636875] - [fs] alloc_file(): switch to passing O_... flags instead of FMODE_... mode (Miklos Szeredi) [1636875] - [fs] make sure do_dentry_open() won't return positive as an error (Miklos Szeredi) [1636875] - [fs] create_pipe_files(): use fput() if allocation of the second file fails (Miklos Szeredi) [1636875] - [fs] turn filp_clone_open() into inline wrapper for dentry_open() (Miklos Szeredi) [1636875] - [fs] fold security_file_free() into file_free() (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: extract helper for a single dedup (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: rationalize args (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: return int (Miklos Szeredi) [1636875] - [fs] vfs: limit size of dedupe (Miklos Szeredi) [1636875] - [fs] ovl: set I_CREATING on inode being created (Miklos Szeredi) [1636875]- [rpmspec] redhat spec: Add new perf tools file (Jiri Olsa) [1579484] - [tools] perf tools: Fix use of alternatives to find JDIR (Jiri Olsa) [1579484] - [net] net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd() (Paolo Abeni) [1637576] - [thunderbolt] thunderbolt: Add Intel as copyright holder (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Convert rest of the driver files to use SPDX identifier (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Print connected devices (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Make the driver less verbose (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Remove a meaningless NULL pointer check before dma_pool_destroy (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Initialize after IOMMUs (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Do not handle ICM events after domain is stopped (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Add support for runtime PM (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Remove redundant variable 'approved' (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Use correct ICM commands in system suspend (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: No need to take tb->lock in domain suspend/complete (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Do not unnecessarily call ICM get route (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Use 64-bit DMA mask if supported by the platform (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Fix small typo in variable name (Jarod Wilson) [1588929] - [mm] Revert x86/e820: put !E820_TYPE_RAM regions into memblock.reserved (Baoquan He) [1639450] - [mm] mm: return zero_resv_unavail optimization (Baoquan He) [1639450] - [mm] mm: zero remaining unavailable struct pages (Baoquan He) [1639450] - [mm] mm: skip invalid pages block at a time in zero_resv_unresv() (Baoquan He) [1639450] - [mm] docs/mm: memblock: update kernel-doc comments (Baoquan He) [1639450] - [mm] mm/memblock: add a name for memblock flags enumeration (Baoquan He) [1639450] - [block] blk-wbt: wake up all when we scale up, not down (Ming Lei) [1640035]- [video] fbdev: make FB_BACKLIGHT a tristate (Rob Clark) [1589158] - [kernel] EDAC: Raise the maximum number of memory controllers (Aristeu Rozanski) [1634077] - [netdrv] i40e: disallow changing the number of descriptors when AF_XDP is on (Stefan Assmann) [1630760] - [netdrv] i40e: clean zero-copy XDP Rx ring on shutdown/reset (Stefan Assmann) [1630760] - [netdrv] i40e: clean zero-copy XDP Tx ring on shutdown/reset (Stefan Assmann) [1630760] - [netdrv] i40e: Remove unused msglen parameter from virtchnl functions (Stefan Assmann) [1630760] - [netdrv] i40e: fix double 'NIC Link is Down' messages (Stefan Assmann) [1630760] - [netdrv] i40e: add a helper function to validate a VF based on the vf id (Stefan Assmann) [1630760] - [netdrv] i40e: use declared variables for pf and hw (Stefan Assmann) [1630760] - [netdrv] i40e: Unset promiscuous settings on VF reset (Stefan Assmann) [1630760] - [netdrv] i40e: Fix VF's link state notification (Stefan Assmann) [1630760] - [netdrv] intel-ethernet: use correct module license (Stefan Assmann) [1630760] - [netdrv] i40e(vf): remove i40e_ethtool_stats.h header file (Stefan Assmann) [1630760] - [netdrv] i40e: fix possible compiler warning in xsk TX path (Stefan Assmann) [1630760] - [netdrv] i40e: add AF_XDP zero-copy Tx support (Stefan Assmann) [1630760] - [netdrv] i40e: move common Tx functions to i40e_txrx_common.h (Stefan Assmann) [1630760] - [netdrv] xsk: i40e: get rid of useless struct xdp_umem_props (Stefan Assmann) [1630760] - [netdrv] i40e: add AF_XDP zero-copy Rx support (Stefan Assmann) [1630760] - [netdrv] i40e: move common Rx functions to i40e_txrx_common.h (Stefan Assmann) [1630760] - [netdrv] i40e: refactor Rx path for re-use (Stefan Assmann) [1630760] - [netdrv] i40e: added queue pair disable/enable functions (Stefan Assmann) [1630760] - [netdrv] i40e: Prevent deleting MAC address from VF when set by PF (Stefan Assmann) [1630760] - [netdrv] i40e: hold the rtnl lock on clearing interrupt scheme (Stefan Assmann) [1630760] - [netdrv] i40e: Check and correct speed values for link on open (Stefan Assmann) [1630760] - [netdrv] i40e: report correct statistics when XDP is enabled (Stefan Assmann) [1630760] - [netdrv] i40e: static analysis report from community (Stefan Assmann) [1630760] - [netdrv] i40e: use correct length for strncpy (Stefan Assmann) [1630760] - [netdrv] i40evf: Change a VF mac without reloading the VF driver (Stefan Assmann) [1630760] - [netdrv] i40e: move ethtool stats boiler plate code to i40e_ethtool_stats.h (Stefan Assmann) [1630760] - [netdrv] i40e: convert queue stats to i40e_stats array (Stefan Assmann) [1630760] - [netdrv] i40e: fix condition of WARN_ONCE for stat strings (Stefan Assmann) [1630760] - [netdrv] i40e_txrx: mark expected switch fall-through (Stefan Assmann) [1630760] - [netdrv] i40e_main: mark expected switch fall-through (Stefan Assmann) [1630760] - [netdrv] i40e: fix i40e_add_queue_stats data pointer update (Stefan Assmann) [1630760] - [netdrv] i40e: Add AQ command for rearrange NVM structure (Stefan Assmann) [1630760] - [netdrv] i40e: Add additional return code to i40e_asq_send_command (Stefan Assmann) [1630760] - [netdrv] i40e: fix warning about shadowed ring parameter (Stefan Assmann) [1630760] - [netdrv] i40e: remove unnecessary i variable causing -Wshadow warning (Stefan Assmann) [1630760] - [netdrv] i40e: convert priority flow control stats to use helpers (Stefan Assmann) [1630760] - [netdrv] i40e: convert VEB TC stats to use an i40e_stats array (Stefan Assmann) [1630760] - [netdrv] i40e: Set fec_config when forcing link state (Stefan Assmann) [1630760] - [netdrv] i40e: add helper to copy statistic values into ethtool buffer (Stefan Assmann) [1630760] - [netdrv] i40e: add helper function for copying strings from stat arrays (Stefan Assmann) [1630760] - [netdrv] i40e: Remove duplicated prepare call in i40e_shutdown (Stefan Assmann) [1630760] - [netdrv] cls_flower: fix error values for commands not supported by drivers (Stefan Assmann) [1630760] - [netdrv] net: drivers/net: Convert random_ether_addr to eth_random_addr (Stefan Assmann) [1630760] - [net] ipv4: don't let PMTU updates increase route MTU (Sabrina Dubroca) [1638845] - [net] ipv4: update fnhe_pmtu when first hop's MTU changes (Sabrina Dubroca) [1638845] - [net] xsk: add a simple buffer reuse queue (Ivan Vecera) [1634774] - [net] samples/bpf: add -c/--copy -z/--zero-copy flags to xdpsock (Ivan Vecera) [1634774] - [net] add napi_if_scheduled_mark_missed (Ivan Vecera) [1634774] - [net] xsk: expose xdp_umem_get_(data, dma) to drivers (Ivan Vecera) [1634774] - [net] xdp: export xdp_rxq_info_unreg_mem_model (Ivan Vecera) [1634774] - [net] xdp: implement convert_to_xdp_frame for MEM_TYPE_ZERO_COPY (Ivan Vecera) [1634774] - [net] xdp: Helper function to clear kernel pointers in xdp_frame (Ivan Vecera) [1634774] - [net] xsk: i40e: get rid of useless struct xdp_umem_props (Ivan Vecera) [1631809] - [net] xdp: fix uninitialized 'err' variable (Ivan Vecera) [1631805] - [tools] headers uapi: Update tools's copy of linux/if_link.h (Ivan Vecera) [1631805] - [tools] selftests/bpf: add test for multiple programs (Ivan Vecera) [1631805] - [net] netdevsim: add support for simultaneous driver and hw XDP (Ivan Vecera) [1631805] - [net] xdp: support simultaneous driver and hw XDP attachment (Ivan Vecera) [1631805] - [net] xdp: factor out common program/flags handling from drivers (Ivan Vecera) [1631805] - [net] xdp: don't make drivers report attachment mode (Ivan Vecera) [1631805] - [net] xdp: add per mode attributes for attached programs (Ivan Vecera) [1631805] - [net] sched: cls_flower: set correct offload data in fl_reoffload (Ivan Vecera) [1631522] - [net] sched: call reoffload op on block callback reg (Ivan Vecera) [1631522] - [net] sched: cls_bpf: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_u32: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_matchall: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_flower: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: add tcf_proto_op to offload a rule (Ivan Vecera) [1631522] - [net] sched: pass extack pointer to block binds and cb registration (Ivan Vecera) [1631522]- [rpmspec] kernel.spec: s390/zfcpdump: add -zfcpdump kernel variant (Philipp Rudo) [1567291] - [kernel] rh_taint: correct loaddable module support dependencies (Philipp Rudo) [1567291] - [powerpc] KVM: PPC: Book3S HV: Avoid crash from THP collapse during radix page fault (David Gibson) [1639555] - [irqchip] irqchip/gic-v3-its: Allow use of LPI tables in reserved memory (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Register LPI tables with EFI config table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Check that all RDs have the same property table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Use pre-programmed redistributor tables with kdump kernels (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Allow use of pre-programmed LPI tables (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Keep track of property table's PA and VA (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Move pending table allocation to init time (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Split property table clearing from allocation (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Simplify LPI_PENDBASE_SZ usage (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Change initialization ordering for LPIs (Jeremy Linton) [1625746] - [firmware] efi: add API to reserve memory persistently across kexec reboot (Jeremy Linton) [1625746] - [firmware] efi/arm: libstub: add a root memreserve config table (Jeremy Linton) [1625746] - [firmware] efi: honour memory reservations passed via a linux specific config table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Cap lpi_id_bits to reduce memory footprint (Jeremy Linton) [1625746] - [infiniband] RDMA/bnxt_re: Fix system crash during RDMA resource initialization (Selvin Xavier) [1637122] - [infiniband] RDMA/bnxt_re: Fix couple of memory leaks that could lead to IOMMU call traces (Selvin Xavier) [1637120] - [arm64] arm64: KVM: Sanitize PSTATE.M when being set from userspace (Wei Huang) [1635721] {CVE-2018-18021} - [arm64] arm64: KVM: Tighten guest core register access from userspace (Wei Huang) [1635721] {CVE-2018-18021} - [fs] fs/cifs: require sha512 (Leif Sahlberg) [1610619] - [fs] smb3: simplify code by removing CONFIG_CIFS_SMB311 (Leif Sahlberg) [1610619] - [fs] smb3: add support for statfs for smb3.1.1 posix extensions (Leif Sahlberg) [1610619] - [fs] cifs: allow disabling insecure dialects in the config (Leif Sahlberg) [1610619] - [fs] smb3: if server does not support posix do not allow posix mount option (Leif Sahlberg) [1610619]- [security] cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias() (Joe Lawrence) [1638647] - [powerpc] powerpc/cacheinfo: Report the correct shared_cpu_map on big-cores (Steve Best) [1639265] - [powerpc] powerpc: Use cpu_smallcore_sibling_mask at SMT level on bigcores (Steve Best) [1639265] - [powerpc] powerpc: Detect the presence of big-cores via ibm, thread-groups (Steve Best) [1639265] - [x86] mark amd rome as unsupported (David Arcari) [1638506] - [netdrv] qed: Add support for virtual link (Chad Dupuis) [1638013] - [netdrv] qede: Add driver support for 20G link speed (Chad Dupuis) [1638013] - [netdrv] qed: Add driver support for 20G link speed (Chad Dupuis) [1638013] - [netdrv] qed: Fix shmem structure inconsistency between driver and the mfw (Chad Dupuis) [1638013] - [netdrv] qed: Add missing device config for RoCE EDPM in UFP mode (Chad Dupuis) [1638013] - [netdrv] qed: Add a flag which indicates if offload TC is set (Chad Dupuis) [1638013] - [netdrv] qed: Do not add VLAN 0 tag to untagged frames in multi-function mode (Chad Dupuis) [1638013] - [netdrv] qed: Fix populating the invalid stag value in multi function mode (Chad Dupuis) [1638013] - [tools] perf python: Fix pyrf_evlist__read_on_cpu() interface (Jiri Olsa) [1628229] - [tools] perf mmap: Store real cpu number in 'struct perf_mmap' (Jiri Olsa) [1628229]- [fs] gfs2: Fix iomap buffered write support for journaled files (2) (Andreas Grunbacher) [1637944] - [xen] xen/manage: don't complain about an empty value in control/sysrq node (Vitaly Kuznetsov) [1623344] - [drm] drm/amdgpu: Silence harmless WARN_ON() during MST disable (Lyude Paul) [1638137] - [netdrv] net: macb: Fix regression breaking non-MDIO fixed-link PHYs (Petr Oros) [1638259] - [netdrv] net: macb: do not disable MDIO bus at open/close time (Petr Oros) [1638259] - [fs] proc: restrict kernel stack dumps to root (Waiman Long) [1638044] - [base] firmware: Always initialize the fw_priv list object (Waiman Long) [1638044] - [base] firmware: Fix security issue with request_firmware_into_buf() (Waiman Long) [1638044] - [fs] sysfs: Do not return POSIX ACL xattrs via listxattr (Waiman Long) [1638044] - [fs] vfs: don't evict uninitialized inode (Waiman Long) [1638044] - [fs] new primitive: discard_new_inode() (Waiman Long) [1638044] - [arm64] arm64: jump_label.h: use asm_volatile_goto macro instead of "asm goto" (Waiman Long) [1638044] - [kernel] sched/topology: Set correct NUMA topology type (Waiman Long) [1638044] - [kernel] bpf: 32-bit RSH verification must truncate input before the ALU op (Waiman Long) [1638044] - [mm] mm: madvise(MADV_DODUMP): allow hugetlbfs pages (Waiman Long) [1638044] - [x86] x86/pti: Fix section mismatch warning/error (Waiman Long) [1638044] - [kernel] uaccess: Fix is_source param for check_copy_size() in copy_to_iter_mcsafe() (Waiman Long) [1638044] - [x86] x86/mm: Expand static page table for fixmap space (Waiman Long) [1638044] - [fs] fs/lock: skip lock owner pid translation in case we are in init_pid_ns (Waiman Long) [1638044] - [x86] perf/x86/intel/lbr: Fix incomplete LBR call stack (Waiman Long) [1638044] - [kernel] perf/hw_breakpoint: Split attribute parse and commit (Waiman Long) [1638044] - [kernel] bitfield: fix *_encode_bits() (Waiman Long) [1638044] - [kernel] posix-timers: Sanitize overrun handling (Waiman Long) [1638044] - [kernel] posix-timers: Make forward callback return s64 (Waiman Long) [1638044] - [kernel] alarmtimer: Prevent overflow for relative nanosleep (Waiman Long) [1638044] - [x86] x86/entry/64: Add two more instruction suffixes (Waiman Long) [1638044] - [powerpc] powerpc/kdump: Handle crashkernel memory reservation failure (Waiman Long) [1638044] - [s390] s390/mm: correct allocate_pgste proc_handler callback (Waiman Long) [1638044] - [x86] x86/numa_emulation: Fix emulated-to-physical node mapping (Waiman Long) [1638044] - [x86] x86/paravirt: Fix some warning messages (Waiman Long) [1638044] - [kernel] sched/fair: Fix vruntime_normalized() for remote non-migration wakeup (Waiman Long) [1638044] - [kernel] bpf/verifier: disallow pointer subtraction (Waiman Long) [1638044] - [mm] mm: shmem.c: Correctly annotate new inodes for lockdep (Waiman Long) [1638044] - [kernel] sched/core: Use smp_mb() in wake_woken_function() (Waiman Long) [1638044] - [kernel] bpf: fix rcu annotations in compute_effective_progs() (Waiman Long) [1638044] - [x86] x86/mm/pti: Add an overflow check to pti_clone_pmds() (Waiman Long) [1638044] - [x86] x86/pti: Check the return value of pti_user_pagetable_walk_pmd() (Waiman Long) [1638044] - [x86] x86/pti: Check the return value of pti_user_pagetable_walk_p4d() (Waiman Long) [1638044] - [powerpc] powerpc/pseries/mm: call H_BLOCK_REMOVE (Steve Best) [1637116] - [powerpc] powerpc/pseries/mm: factorize PTE slot computation (Steve Best) [1637116] - [powerpc] powerpc/pseries/mm: Introducing FW_FEATURE_BLOCK_REMOVE (Steve Best) [1637116] - [watchdog] watchdog/hpwdt: Disable PreTimeout when Timeout is smaller (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Update Driver Documentation (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Update version number (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Module parameter alias (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Display module parameters (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Claim NMI from iLO (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Initialize pretimeout from module parameter (Joseph Szczypek) [1632945]- [mm] mm/sparse: delete old sparse_init and enable new one (Baoquan He) [1625105] - [mm] mm/sparse: add new sparse_init_nid() and sparse_init() (Baoquan He) [1625105] - [mm] mm/sparse: move buffer init/fini to the common place (Baoquan He) [1625105] - [mm] mm/sparse: use the new sparse buffer functions in non-vmemmap (Baoquan He) [1625105] - [mm] mm/sparse: abstract sparse buffer allocations (Baoquan He) [1625105] - [mm] mm/sparse: optimize memmap allocation during sparse_init() (Baoquan He) [1625105] - [mm] mm/sparse.c: add a new parameter 'data_unit_size' for alloc_usemap_and_memmap (Baoquan He) [1625105] - [mm] mm/sparsemem.c: defer the ms->section_mem_map clearing (Baoquan He) [1625105] - [mm] mm/sparse.c: add a static variable nr_present_sections (Baoquan He) [1625105] - [mm] mm/sparse.c: make sparse_init_one_section void and remove check (Baoquan He) [1625105] - [target] scsi: target: iscsi: cxgbit: fix csk leak (Arjun Vynipadath) [1628864] - [target] scsi: target: iscsi: cxgbit: use pr_debug() instead of pr_info() (Arjun Vynipadath) [1628864] - [infiniband] iw_cxgb4: only allow 1 flush on user qps (Arjun Vynipadath) [1628865] - [infiniband] iw_cxgb4: pass window scale in flowc work request (Arjun Vynipadath) [1628865] - [infiniband] iw_cxgb4: remove duplicate memcpy() in c4iw_create_listen() (Arjun Vynipadath) [1628865] - [netdrv] mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge (Petr Oros) [1638268] - [tty] tty: vt_ioctl: fix potential Spectre v1 (Prarit Bhargava) [1637123] - [powerpc] powerpc/time: Add set_state_oneshot_stopped decrementer callback (Steve Best) [1638287] - [powerpc] powerpc/time: Use clockevents_register_device(), fixing an issue with large decrementer (Steve Best) [1638287] - [hwmon] hwmon: (nct6775) Fix potential Spectre v1 (Dean Nelson) [1637464] - [vfio] vfio-pci: Disable binding to PFs with SR-IOV enabled (Alex Williamson) [1637871] - [netdrv] net: hns3: fix page_offset overflow when CONFIG_ARM64_64K_PAGES (Petr Oros) [1638385] - [netdrv] net: hns: fix skb->truesize underestimation (Petr Oros) [1638385] - [netdrv] net: hns: fix length and page_offset overflow when CONFIG_ARM64_64K_PAGES (Petr Oros) [1638385] - [netdrv] net: hns3: Fix get_vector ops in hclgevf_main module (Petr Oros) [1638385] - [netdrv] net: hns3: Fix warning bug when doing lp selftest (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for mac pause not disable in pfc mode (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for mailbox message truncated problem (Petr Oros) [1638385] - [netdrv] net: hns3: Fix return value error in hns3_reset_notify_down_enet (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for reset_level default assignment probelm (Petr Oros) [1638385] - [netdrv] net: hns3: Reset net device with rtnl_lock (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for phy link issue when using marvell phy driver (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for command format parsing error in hclge_is_all_function_id_zero (Petr Oros) [1638385] - [net] xprtrdma: Fix disconnect regression (Don Dutile) [1635418] - [infiniband] RDMA/uverbs: Fix validity check for modify QP (Don Dutile) [1635418] - [infiniband] IB/srp: Avoid that sg_reset -d $srp_device triggers an infinite loop (Don Dutile) [1635418] - [infiniband] ucma: fix a use-after-free in ucma_resolve_ip() (Don Dutile) [1635418] - [infiniband] RDMA/uverbs: Atomically flush and mark closed the comp event queue (Don Dutile) [1635418] - [infiniband] RDMA/mlx4: Ensure that maximal send/receive SGE less than supported by HW (Don Dutile) [1635418 1623100] - [infiniband] RDMA/cma: Protect cma dev list with lock (Don Dutile) [1635418] - [infiniband] IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler (Don Dutile) [1635418] - [infiniband] RDMA/ucma: check fd type in ucma_migrate_id() (Don Dutile) [1635418] - [infiniband] RDMA/rxe: Set wqe->status correctly if an unexpected response is received (Don Dutile) [1635418] - [infiniband] IB/IPoIB: Set ah valid flag in multicast send flow (Don Dutile) [1635418] - [infiniband] RDMA/core: Avoid holding lock while initializing fields on stack (Don Dutile) [1635418] - [infiniband] IB/rxe: Drop QP0 silently (Don Dutile) [1635418] - [infiniband] RDMA/umem: Don't hold mmap_sem for too long (Don Dutile) [1635418] - [infiniband] IB/srpt: Fix srpt_cm_req_recv() error path (2/2) (Don Dutile) [1635418] - [infiniband] IB/srpt: Fix srpt_cm_req_recv() error path (1/2) (Don Dutile) [1635418] - [infiniband] RDMA: Fix storage of PortInfo CapabilityMask in the kernel (Don Dutile) [1635418] - [infiniband] IB/core: type promotion bug in rdma_rw_init_one_mr() (Don Dutile) [1635418] - [infiniband] RDMA/i40w: Hold read semaphore while looking after VMA (Don Dutile) [1635418] - [infiniband] vmw_pvrdma: Release netdev when vmxnet3 module is removed (Don Dutile) [1635418] - [infiniband] ib_srpt: Fix a use-after-free in __srpt_close_all_ch() (Don Dutile) [1635418] - [infiniband] ib_srpt: Fix a use-after-free in srpt_close_ch() (Don Dutile) [1635418] - [infiniband] IB/srpt: Support HCAs with more than two ports (Don Dutile) [1635418] - [infiniband] IB/rxe: don't clear the tx queue on every transfer (Don Dutile) [1635418] - [infiniband] IB/core: add max_send_sge and max_recv_sge attributes (Don Dutile) [1635418 1623100] - [infiniband] IB/rxe: support for 802.1q VLAN on the listener (Don Dutile) [1635418] - [netdrv] cxgb4: impose mandatory VLAN usage when non-zero TAG ID (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: when max_tx_rate is 0 disable tx rate limiting (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: do not return DUPLEX_UNKNOWN when link is down (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: expose stats fetched from firmware via debugfs (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: remove stats fetched from firmware (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: specify IQTYPE in fw_iq_cmd (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Fix the condition to check if the card is T5 (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Support ethtool private flags (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Add support for FW_ETH_TX_PKT_VM_WR (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Add flag tc_flower_initialized (Arjun Vynipadath) [1628863] - [s390] s390/zcrypt: remove VLA usage from the AP bus (Philipp Rudo) [1637865] - [s390] s390/ap_bus: replace PTR_RET with PTR_ERR_OR_ZERO (Philipp Rudo) [1637865] - [s390] s390/crypto: fix gcc 8 stringop-truncation warning (Philipp Rudo) [1637865] - [s390] s390/zcrypt: code beautify (Philipp Rudo) [1637865] - [s390] s390/zcrypt: add copy_from_user length plausibility checks (Philipp Rudo) [1637865] - [s390] s390/zcrypt: Show load of cards and queues in sysfs (Philipp Rudo) [1637865] - [s390] s390/kvm: fix deadlock when killed by oom (Philipp Rudo) [1638264] - [fs] xfs: fix data corruption w/ unaligned reflink ranges (Brian Foster) [1633476] - [fs] xfs: fix data corruption w/ unaligned dedupe ranges (Brian Foster) [1633476] - [fs] xfs: update ctime and remove suid before cloning files (Brian Foster) [1633476] - [fs] xfs: zero posteof blocks when cloning above eof (Brian Foster) [1633476] - [fs] xfs: refactor clonerange preparation into a separate helper (Brian Foster) [1633476] - [netdrv] nfp: avoid buffer leak when FW communication fails (Petr Oros) [1638233] - [netdrv] nfp: don't fail probe on pci_sriov_set_totalvfs() errors (Petr Oros) [1638233] - [netdrv] nfp: wait for posted reconfigs when disabling the device (Petr Oros) [1638233] - [netdrv] liquidio: fix hang when re-binding VF host drv after running DPDK VF driver (Petr Oros) [1638224] - [netdrv] r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices (Petr Oros) [1638210] - [netdrv] r8169: add support for NCube 8168 network card (Petr Oros) [1638210] - [netdrv] r8169: don't use MSI-X on RTL8106e (Petr Oros) [1638210] - [netdrv] r8169: don't use MSI-X on RTL8168g (Petr Oros) [1638210] - [powerpc] KVM: PPC: Book3S HV: Fix guest r11 corruption with POWER9 TM workarounds (David Gibson) [1637766] - [drm] drm/amdgpu: Suppress keypresses from ACPI_VIDEO events (Lyude Paul) [1631918] - [infiniband] IB/hfi1: Remove race conditions in user_sdma send path (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Eliminate races in the SDMA send error path (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix destroy_qp hang after a link down (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix context recovery when PBC has an UnsupportedVL (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Invalid user input can result in crash (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix SL array bounds check (Alex Estrin) [1637068] - [powerpc] powerpc/fadump: re-register firmware-assisted dump if already registered (Steve Best) [1637383] - [powerpc] powerpc/fadump: cleanup crash memory ranges support (Steve Best) [1637383] - [powerpc] powerpc/fadump: merge adjacent memory ranges to reduce PT_LOAD segements (Steve Best) [1637383] - [powerpc] powerpc/fadump: handle crash memory ranges array index overflow (Steve Best) [1637383] - [scsi] scsi: qedi: Initialize the stats mutex lock (Chad Dupuis) [1637245] - [fs] gfs2: Fix iomap buffered write support for journaled files (Andreas Grunbacher) [1637944] - [fs] gfs2: eliminate update_rgrp_lvb_unlinked (Andreas Grunbacher) [1637944] - [fs] gfs2: Fix gfs2_testbit to use clone bitmaps (Andreas Grunbacher) [1637944] - [fs] gfs2: Get rid of gfs2_ea_strlen (Andreas Grunbacher) [1637944] - [fs] GFS2: rgrp free blocks used incorrectly (Andreas Grunbacher) [1637944] - [fs] gfs2: remove redundant variable 'moved' (Andreas Grunbacher) [1637944] - [fs] gfs2: use iomap_readpage for blocksize == PAGE_SIZE (Andreas Grunbacher) [1637944] - [fs] gfs2: Use iomap for stuffed direct I/O reads (Andreas Grunbacher) [1637944] - [fs] gfs2: fallocate_chunk: Always initialize struct iomap (Andreas Grunbacher) [1637944] - [fs] gfs2: Remove gfs2_write_(begin,end) (Andreas Grunbacher) [1637944] - [fs] gfs2: iomap direct I/O support (Andreas Grunbacher) [1637944] - [fs] gfs2: gfs2_extent_length cleanup (Andreas Grunbacher) [1637944] - [fs] gfs2: iomap buffered write support (Andreas Grunbacher) [1637944] - [fs] gfs2: Further iomap cleanups (Andreas Grunbacher) [1637944] - [fs] fs: gfs2: Adding new return type vm_fault_t (Andreas Grunbacher) [1637944] - [fs] gfs2: using posix_acl_xattr_size instead of posix_acl_to_xattr (Andreas Grunbacher) [1637944] - [fs] gfs2: Don't reject a supposedly full bitmap if we have blocks reserved (Andreas Grunbacher) [1637944] - [fs] gfs2: Eliminate redundant ip->i_rgd (Andreas Grunbacher) [1637944] - [fs] gfs2: Stop messing with ip->i_rgd in the rlist code (Andreas Grunbacher) [1637944] - [fs] gfs2: call ktime_get_coarse_real_ts64() directly (Andreas Grunbacher) [1637944] - [fs] gfs2: Minor clarification to __gfs2_punch_hole (Andreas Grunbacher) [1637944] - [fs] gfs2: Don't withdraw under a spin lock (Andreas Grunbacher) [1637944] - [fs] gfs2: eliminate rs_inum and reduce the size of gfs2 inodes (Andreas Grunbacher) [1637944] - [drm] drm/nouveau/drm/nouveau: Grab runtime PM ref in nv50_mstc_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/disp: fix DP disable race (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Don't forget to cancel hpd_work on suspend/unload (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Prevent handling ACPI HPD events too early (Lyude Paul) [1628749] - [drm] drm/nouveau: Reset MST branching unit before enabling (Lyude Paul) [1628749] - [drm] drm/nouveau: Only write DP_MSTM_CTRL when needed (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_enable() call in drm_load() (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_disable() call in switcheroo_set_state() (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_enable() call in switcheroo_set_state() (Lyude Paul) [1628749] - [drm] drm/nouveau: Fix deadlocks in nouveau_connector_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Use pm_runtime_get_noresume() in connector_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Fix deadlock with fb_helper with async RPM requests (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement (Lyude Paul) [1628749] - [md] dm table: require that request-based DM be layered on blk-mq devices (Mike Snitzer) [1637682] - [md] dm: rename DM_TYPE_MQ_REQUEST_BASED to DM_TYPE_REQUEST_BASED (Mike Snitzer) [1637682] - [md] dm: remove legacy request-based IO path (Mike Snitzer) [1637682] - [md] dm linear: fix linear_end_io conditional definition (Mike Snitzer) [1637682] - [md] dm linear: eliminate linear_end_io call if CONFIG_DM_ZONED disabled (Mike Snitzer) [1637682] - [md] dm: fix report zone remapping to account for partition offset (Mike Snitzer) [1637682] - [md] dm cache: destroy migration_cache if cache target registration failed (Mike Snitzer) [1637682] - [md] dm cache: fix resize crash if user doesn't reload cache table (Mike Snitzer) [1637682] - [md] dm cache metadata: ignore hints array being too small during resize (Mike Snitzer) [1637682] - [md] dm raid: remove bogus const from decipher_sync_action() return type (Mike Snitzer) [1637682] - [md] dm mpath: fix attached_handler_name leak and dangling hw_handler_name pointer (Mike Snitzer) [1637682] - [md] dm thin metadata: fix __udivdi3 undefined on 32-bit (Mike Snitzer) [1637682] - [md] dm thin metadata: try to avoid ever aborting transactions (Mike Snitzer) [1637682] - [md] dm raid: bump target version, update comments and documentation (Mike Snitzer) [1637682] - [md] dm raid: fix RAID leg rebuild errors (Mike Snitzer) [1637682] - [md] dm raid: fix rebuild of specific devices by updating superblock (Mike Snitzer) [1637682] - [md] dm raid: fix stripe adding reshape deadlock (Mike Snitzer) [1637682] - [md] dm raid: fix reshape race on small devices (Mike Snitzer) [1637682] - [md] dm: disable CRYPTO_TFM_REQ_MAY_SLEEP to fix a GFP_KERNEL recursion deadlock (Mike Snitzer) [1637682] - [md] dm verity: fix crash on bufio buffer that was allocated with vmalloc (Mike Snitzer) [1637682] - [md] dm writecache: fix a crash due to reading past end of dirty_bitmap (Mike Snitzer) [1637682] - [md] dm crypt: don't decrease device limits (Mike Snitzer) [1637682] - [md] dm cache metadata: set dirty on all cache blocks after a crash (Mike Snitzer) [1637682] - [md] dm snapshot: remove stale FIXME in snapshot_map() (Mike Snitzer) [1637682] - [md] dm snapshot: improve performance by switching out_of_order_list to rbtree (Mike Snitzer) [1637682] - [md] dm kcopyd: avoid softlockup in run_complete_job (Mike Snitzer) [1637682] - [md] dm cache metadata: save in-core policy_hint_size to on-disk superblock (Mike Snitzer) [1637682] - [md] dm thin: stop no_space_timeout worker when switching to write-mode (Mike Snitzer) [1637682] - [md] dm kcopyd: return void from dm_kcopyd_copy() (Mike Snitzer) [1637682] - [md] dm thin: include metadata_low_watermark threshold in pool status (Mike Snitzer) [1637682] - [md] dm writecache: report start_sector in status line (Mike Snitzer) [1637682] - [md] dm crypt: convert essiv from ahash to shash (Mike Snitzer) [1637682] - [md] dm crypt: use wake_up_process() instead of a wait queue (Mike Snitzer) [1637682] - [md] dm integrity: recalculate checksums on creation (Mike Snitzer) [1637682] - [md] dm integrity: flush journal on suspend when using separate metadata device (Mike Snitzer) [1637682] - [md] dm integrity: use version 2 for separate metadata (Mike Snitzer) [1637682] - [md] dm integrity: allow separate metadata device (Mike Snitzer) [1637682] - [md] dm integrity: add ic->start in get_data_sector() (Mike Snitzer) [1637682] - [md] dm integrity: report provided data sectors in the status (Mike Snitzer) [1637682] - [md] dm integrity: implement fair range locks (Mike Snitzer) [1637682] - [md] dm integrity: decouple common code in dm_integrity_map_continue() (Mike Snitzer) [1637682] - [md] dm integrity: change 'suspending' variable from bool to int (Mike Snitzer) [1637682] - [md] dm delay: add flush as a third class of IO (Mike Snitzer) [1637682] - [md] dm delay: refactor repetitive code (Mike Snitzer) [1637682] - [md] dm cache: only allow a single io_mode cache feature to be requested (Mike Snitzer) [1637682] - [md] dm thin: update stale "Status" Documentation (Mike Snitzer) [1637682] - [pci] PCI: Reprogram bridge prefetch registers on resume (Myron Stowe) [1637155] - [input] Input: xen-kbdfront - fix multi-touch XenStore node's locations (Benjamin Tissoires) [1637027] - [input] Input: elantech - enable middle button of touchpad on ThinkPad P72 (Benjamin Tissoires) [1637027] - [hid] HID: i2c-hid: Use devm to allocate i2c_hid struct (Benjamin Tissoires) [1637027] - [hid] HID: input: fix leaking custom input node name (Benjamin Tissoires) [1637027] - [hid] HID: core: fix grouping by application (Benjamin Tissoires) [1637027] - [hid] HID: multitouch: fix Elan panels with 2 input modes declaration (Benjamin Tissoires) [1637027] - [input] Input: do not use WARN() in input_alloc_absinfo() (Benjamin Tissoires) [1637027] - [s390] s390: vfio-ap: setup APCB mask using KVM dedicated function (Cornelia Huck) [1508118] - [s390] KVM: s390: Tracing APCB changes (Cornelia Huck) [1508118] - [s390] KVM: s390: fix locking for crypto setting error path (Cornelia Huck) [1508118] - [s390] s390: doc: detailed specifications for AP virtualization (Cornelia Huck) [1508118] - [s390] KVM: s390: CPU model support for AP virtualization (Cornelia Huck) [1508118] - [s390] KVM: s390: device attrs to enable/disable AP interpretation (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-1 CRYCB on host FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow CRYCB FORMAT-0 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow CRYCB FORMAT-1 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Allow CRYCB FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Make use of CRYCB FORMAT2 clear (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Do the CRYCB validation first (Cornelia Huck) [1508118] - [s390] KVM: s390: Clear Crypto Control Block when using vSIE (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: zeroize the AP queues (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement mediated device open callback (Cornelia Huck) [1508118] - [s390] KVM: s390: interface to clear CRYCB masks (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interface to view matrix mdev matrix (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure control domains (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure domains (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure adapters (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: register matrix device with VFIO mdev framework (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: base implementation of VFIO AP device driver (Cornelia Huck) [1508118] - [s390] KVM: s390: refactor crypto initialization (Cornelia Huck) [1508118] - [s390] KVM: s390: introduce and use KVM_REQ_VSIE_RESTART (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: simulate VCPU SIE entry/exit (Cornelia Huck) [1508118] - [s390] s390/zcrypt: hex string mask improvements for apmask and aqmask (Cornelia Huck) [1508118] - [s390] s390/zcrypt: AP bus support for alternate driver(s) (Cornelia Huck) [1508118] - [s390] s390/zcrypt: switch return type to bool for ap_instructions_available() (Cornelia Huck) [1508118] - [s390] s390/zcrypt: fix ap_instructions_available() returncodes (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Integrate ap_asm.h into include/asm/ap.h (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Review inline assembler constraints (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Add ZAPQ inline function (Cornelia Huck) [1508118] - [net] ipv6: use rt6_info members when dst is set in rt6_fill_node (Xin Long) [1625864 1625803 1625117]- [netdrv] amd-xgbe: use dma_mapping_error to check map errors (David Arcari) [1637666] - [crypto] crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe() (Waiman Long) [1629547] - [powerpc] powerpc: fix csum_ipv6_magic() on little endian platforms (Diego Domingos) [1625579] - [net] smc: generic netlink family should be __ro_after_init (Philipp Rudo) [1632435] - [net] net/smc: fix sizeof to int comparison (Philipp Rudo) [1632435] - [net] net/smc: no urgent data check for listen sockets (Philipp Rudo) [1632435] - [net] net/smc: enable fallback for connection abort in state INIT (Philipp Rudo) [1632435] - [net] net/smc: remove duplicate mutex_unlock (Philipp Rudo) [1632435] - [net] net/smc: fix non-blocking connect problem (Philipp Rudo) [1632435] - [net] net/smc: send response to test link signal (Philipp Rudo) [1632435] - [net] net: simplify sock_poll_wait (Philipp Rudo) [1632435] - [net] net/smc: Simplify ib_post_(send|recv|srq_recv)() calls (Philipp Rudo) [1632435] - [net] net/smc: Remove a WARN_ON() statement (Philipp Rudo) [1632435] - [powerpc] KVM: PPC: Book3S HV: Add NO_HASH flag to GET_SMMU_INFO ioctl result (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add a VM capability to enable nested virtualization (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add nested shadow page tables to debugfs (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Allow HV module to load without hypervisor mode (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle differing endianness for H_ENTER_NESTED (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Sanitise hv_regs on nested guest entry (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add one-reg interface to virtual PTCR register (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Don't access HFSCR, LPIDR or LPCR when running nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Invalidate TLB when nested vcpu moves physical cpu (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use hypercalls for TLB invalidation when nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Implement H_TLB_INVALIDATE hcall (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Introduce rmap to track nested guest mappings (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle page fault for a nested guest (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle hypercalls correctly when nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use XICS hypercalls when running as a nested hypervisor (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Nested guest entry via hypercall (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Framework and hcall stubs for nested virtualization (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use kvmppc_unmap_pte() in kvm_unmap_radix() (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Refactor radix page fault handler (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Make kvmppc_mmu_radix_xlate process/partition table agnostic (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Clear partition table entry on vm teardown (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Use ccr field in pt_regs struct embedded in vcpu struct (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add a debugfs file to dump radix mappings (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle hypervisor instruction faults better (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Streamlined guest entry/exit path on P9 for radix guests (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Call kvmppc_handle_exit_hv() with vcore unlocked (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S: Rework TM save/restore code and make it C-callable (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Simplify real-mode interrupt handling (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Extract PMU save/restore operations as C-callable functions (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Move interrupt delivery on guest entry to C code (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Remove left-over code in XICS-on-XIVE emulation (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S: Simplify external interrupt handling (Suraj Jitindar Singh) [1505999] - [powerpc] powerpc: Turn off CPU_FTR_P9_TM_HV_ASSIST in non-hypervisor mode (Suraj Jitindar Singh) [1505999] - [powerpc] powerpc/64s: Remove POWER9 DD1 support (Suraj Jitindar Singh) [1505999] - [netdrv] net/mlx5: Add Fast teardown support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Set vlan masks for all offloaded TC rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: E-Switch, Fix out of bound access when setting vport rate (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Avoid unbounded peer devices when unpairing TC hairpin rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Cache the system image guid (Alaa Hleihel) [1636554] - [netdrv] mlx5: remove ndo_poll_controller (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Check for SQ and not RQ state when modifying hairpin SQ (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix read from coherent memory (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: don't set CHECKSUM_COMPLETE on SCTP packets (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Set ECN for received packets using CQE indication (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix possible deadlock from lockdep when adding fte to fg (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Check for error in mlx5_attach_interface (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Consider PCI domain in search for next dev (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix not releasing read lock when adding flow rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: E-Switch, Fix memory leak when creating switchdev mode FDB tables (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use u16 for Work Queue buffer strides offset (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use u16 for Work Queue buffer fragment size (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix debugfs cleanup in the device init/remove flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix use-after-free in self-healing flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Make function mlx5i_grp_sw_update_stats() static (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Use priv stats in completion rx flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Add ndo stats support for IPoIB child devices (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Add ndo stats support for IPoIB netdevices (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Initialize max_opened_tc in mlx5i_init flow (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: Fix leaking stack memory to userspace (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Reorganize the makefile (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: clock.c depends on CONFIG_PTP_1588_CLOCK (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: vxlan.c depends on CONFIG_VXLAN (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Move flow steering declarations into en/fs.h (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add CONFIG_MLX5_EN_ARFS for accelerated flow steering support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add CONFIG_MLX5_EN_RXNFC for ethtool rx nfc (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Ethtool steering, move ethtool callbacks (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Reduce command polling interval (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use max_num_eqs for calculation of required MSIX vectors (Alaa Hleihel) [1636554] - [netdrv] RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq (Alaa Hleihel) [1636554] - [netdrv] overflow.h: Add arithmetic shift helper (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Fix uninitialized variable (Alaa Hleihel) [1636554] - [netdrv] RDMA: Fix return code check in rdma_set_cq_moderation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, move vxlan logic to core driver (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, add sync lock for add/del vxlan port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, return values for add/del port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, rename from mlx5e to mlx5 (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, rename struct mlx5e_vxlan to mlx5_vxlan_port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, move netdev only logic to en_main.c (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, add direct delete function (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, cleanup an unused member in vxlan work (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, replace ports radix-tree with hash table (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, check maximum number of UDP ports (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, reflect 4789 UDP port default addition to software database (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Move XDP related code into new XDP files (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Restrict the combination of large MTU and XDP (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Gather all XDP pre-requisite checks in a single function (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: avoid excessive warning msgs when creating VFs on 2nd port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Use PARTIAL_GSO for UDP segmentation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Remove redundant WARN when we cannot find neigh entry (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix tristate and description for MLX5 module (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Better return types for CQE API (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use ERR_CAST() instead of coding it (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Add missing SET_DRIVER_VERSION command translation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: fix uaccess beyond "count" in debugfs read/write handlers (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: Honor cnt_set_id_valid flag instead of set_id (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: Fix GRE flow specification (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: Remove set-but-not-used variables (Alaa Hleihel) [1636554] - [infiniband] RDMA/mlx5: Don't leak UARs in case of free fails (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Update NIC HW stats on demand only (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add counter for total num of NOP operations (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add counter for MPWQE filler strides (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add channel events counter (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add a counter for congested UMRs (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add NAPI statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add XDP_TX completions statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add TX completions statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: RX, Use existing WQ local variable (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Convert large order kzalloc allocations to kvzalloc (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add UDP GSO remaining counter (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add UDP GSO support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Rate limit errors in command interface (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Prevent warns in dmesg upon firmware commands (Alaa Hleihel) [1636554] - [netdrv] mlx4: remove ndo_poll_controller (Alaa Hleihel) [1636553] - [netdrv] net/mlx4: Use cpumask_available for eq->affinity_mask (Alaa Hleihel) [1636553] - [netdrv] net/mlx4/en_rx: Mark expected switch fall-throughs (Alaa Hleihel) [1636553] - [netdrv] net/mlx4/mcg: Mark expected switch fall-throughs (Alaa Hleihel) [1636553] - [infiniband] IB/mlx4: Use 4K pages for kernel QP's WQE buffer (Alaa Hleihel) [1636553] - [netdrv] net/mlx4_core: Allow MTTs starting at any index (Alaa Hleihel) [1636553] - [infiniband] IB/mlx4: Test port number before querying type (Alaa Hleihel) [1636553] - [powerpc] powerpc/numa: Skip onlining a offline node in kdump path (Steve Best) [1637118] - [netdrv] net: aquantia: Make function aq_fw1x_set_power() static (David Arcari) [1636533] - [netdrv] net: aquantia: memory corruption on jumbo frames (David Arcari) [1636533 1630377] - [netdrv] net: aquantia: bump driver version (David Arcari) [1636533] - [netdrv] net: aquantia: renaming for better visibility (David Arcari) [1636533] - [netdrv] net: aquantia: whitespace changes (David Arcari) [1636533] - [netdrv] net: aquantia: implement EEE support (David Arcari) [1636533] - [netdrv] net: aquantia: implement WOL support (David Arcari) [1636533] - [netdrv] net: aquantia: definitions for WOL (David Arcari) [1636533] - [netdrv] net: aquantia: fix hw_atl_utils_fw_upload_dwords (David Arcari) [1636533] - [netdrv] net: aquantia: Make some functions static (David Arcari) [1636533] - [netdrv] net: aquantia: bump driver version (David Arcari) [1636533] - [netdrv] net: aquantia: Add renegotiate ethtool operation support (David Arcari) [1636533] - [netdrv] net: aquantia: Implement rx/tx flow control ethtools callback (David Arcari) [1636533] - [netdrv] net: aquantia: Improve adapter init/deinit logic (David Arcari) [1636533] - [netdrv] net: aquantia: Ethtool based ring size configuration (David Arcari) [1636533] - [wireless] ath10k: fix memory leak of tpc_stats (Petr Oros) [1637528] - [wireless] ath10k: snoc: use correct bus-specific pointer in RX retry (Petr Oros) [1637528] - [wireless] ath10k: fix incorrect size of dma_free_coherent in ath10k_ce_alloc_src_ring_64 (Petr Oros) [1637528] - [wireless] brcmsmac: fix wrap around in conversion from constant to s16 (Petr Oros) [1637528] - [wireless] mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status() (Petr Oros) [1637528] - [wireless] ath10k: transmit queued frames after processing rx packets (Petr Oros) [1637528] - [wireless] ath10k: protect ath10k_htt_rx_ring_free with rx_ring.lock (Petr Oros) [1637528] - [wireless] ath10k: use locked skb_dequeue for rx completions (Petr Oros) [1637528] - [wireless] ath10k: sdio: set skb len for all rx packets (Petr Oros) [1637528] - [wireless] ath10k: sdio: use same endpoint id for all packets in a bundle (Petr Oros) [1637528] - [wireless] iwlwifi: cancel the injective function between hw pointers to tfd entry index (Petr Oros) [1637528] - [wireless] ath10k: disable bundle mgmt tx completion event support (Petr Oros) [1637528] - [wireless] ath10k: prevent active scans on potential unusable channels (Petr Oros) [1637528] - [wireless] ath9k_hw: fix channel maximum power level test (Petr Oros) [1637528] - [wireless] ath9k: report tx status on EOSP (Petr Oros) [1637528] - [wireless] iwlwifi: pcie: don't access periphery registers when not available (Petr Oros) [1637528] - [wireless] brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference (Petr Oros) [1637528] - [netdrv] be2net: don't flip hw_features when VXLANs are added/deleted (Petr Oros) [1637133] - [netdrv] be2net: Fix memory leak in be_cmd_get_profile_config() (Petr Oros) [1637133] - [netdrv] be2net: Mark expected switch fall-through (Petr Oros) [1637133] - [netdrv] be2net: fix spelling mistake "seqence" -> "sequence" (Petr Oros) [1637133] - [netdrv] be2net: Update the driver version to 12.0.0.0 (Petr Oros) [1637133] - [netdrv] be2net: gather debug info and reset adapter (only for Lancer) on a tx-timeout (Petr Oros) [1637133] - [netdrv] be2net: move rss_flags field in rss_info to ensure proper alignment (Petr Oros) [1637133] - [netdrv] be2net: re-order fields in be_error_recovert to avoid hole (Petr Oros) [1637133] - [netdrv] be2net: remove unused tx_jiffies field from be_tx_stats (Petr Oros) [1637133] - [netdrv] be2net: move txcp field in be_tx_obj to eliminate holes in the struct (Petr Oros) [1637133] - [netdrv] be2net: reorder fields in be_eq_obj structure (Petr Oros) [1637133] - [netdrv] be2net: remove desc field from be_eq_obj (Petr Oros) [1637133] - [netdrv] be2net: remove unused old custom busy-poll fields (Petr Oros) [1637133] - [netdrv] be2net: remove unused old AIC info (Petr Oros) [1637133] - [x86] x86/spec_ctrl/compat: Call IBRS_ENTRY only after valid kernel stack (Waiman Long) [1636843] - [acpi] ACPI/PPTT: Handle architecturally unknown cache types (Jeremy Linton) [1636567] - [base] drivers: base: cacheinfo: Do not populate sysfs for unknown cache types (Jeremy Linton) [1636567] - [fs] getxattr: use correct xattr length (Lukas Czerner) [1637049] - [x86] Mark Intel Cascade Lake supported (Steve Best) [1636651] - [x86] x86/boot: Fix kexec booting failure in the SEV bit detection code (Kairui Song) [1632514] - [scsi] scsi: megaraid_sas: driver version upgrade (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Support FW provided TM timeout values (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Return immediately from wait_for_adapter_operational after kill adapter (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Update controller info during resume (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Do not do Kill adapter if GET_CTRL_INFO times out (Tomas Henzl) [1635565] - [scsi] qla2xxx: Update driver version to 10.00.00.07.08.0-k (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Check for Register disconnect (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix re-using LoopID when handle is in use (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix duplicate switch database entries (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix NVMe session hang on unload (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix iIDMA error (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix stalled relogin (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix unintended Logout (Himanshu Madhani) [1633373] - [powerpc] powerpc/pseries: Disable CPU hotplug across migrations (Steve Best) [1633587] - [block] blk-mq: I/O and timer unplugs are inverted in blktrace (Ming Lei) [1634330] - [block] block: fix deadline elevator drain for zoned block devices (Ming Lei) [1634333] - [block] blk-mq: Allow blocking queue tag iter callbacks (Ming Lei) [1634328] - [block] block: use nanosecond resolution for iostat (Ming Lei) [1634329] - [block] null_blk: fix zoned support for non-rq based operation (Ming Lei) [1634324] - [block] blk-cgroup: increase number of supported policies (Ming Lei) [1634335] - [block] block: bfq: swap puts in bfqg_and_blkg_put (Ming Lei) [1634334] - [block] block: don't warn when doing fsync on read-only devices (Ming Lei) [1634331] - [block] blkcg: use tryget logic when associating a blkg with a bio (Ming Lei) [1634332] - [block] blkcg: delay blkg destruction until after writeback has (Ming Lei) [1634332] - [block] Revert "blk-throttle: fix race between (Ming Lei) [1634332] - [block] blk-wbt: remove dead code (Ming Lei) [1634326] - [block] blk-wbt: improve waking of tasks (Ming Lei) [1634326] - [block] blk-wbt: abstract out end IO completion handler (Ming Lei) [1634326]- [dma] driver/dma/ioat: Call del_timer_sync() without holding prep_lock (Waiman Long) [1607654] - [netdrv] bnxt_en: Fix VF mac address regression (Jonathan Toppins) [1635846] - [netdrv] bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA (Jonathan Toppins) [1635846] - [netdrv] bnxt_en: Clean up unused functions (Jonathan Toppins) [1635846] - [fs] fsnotify: fix ignore mask logic in fsnotify() (Lukas Czerner) [1635537] - [net] net/af_iucv: locate IUCV header via skb_network_header() (Philipp Rudo) [1635332] - [net] net/af_iucv: drop inbound packets with invalid flags (Philipp Rudo) [1635332] - [net] net/af_iucv: fix skb handling on HiperTransport xmit error (Philipp Rudo) [1635332] - [hid] HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen (David Arcari) [1635746] - [i2c] i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return value (David Arcari) [1635746] - [i2c] i2c: designware: Re-init controllers with pm_disabled set on resume (David Arcari) [1635746] - [i2c] i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes (David Arcari) [1635746] - [fs] fs/quota: Fix spectre gadget in do_quotactl (Lukas Czerner) [1635521] - [fs] xfs: fix error handling in xfs_bmap_extents_to_btree (Brian Foster) [1633171] - [fs] xfs: remove invalid log recovery first/last cycle check (Brian Foster) [1633171] - [fs] xfs: validate inode di_forkoff (Brian Foster) [1633171] - [fs] xfs: skip delalloc COW blocks in xfs_reflink_end_cow (Brian Foster) [1633171] - [fs] xfs: don't treat unknown di_flags2 as corruption in scrub (Brian Foster) [1633171] - [fs] xfs: remove duplicated include from alloc.c (Brian Foster) [1633171] - [fs] xfs: don't bring in extents in xfs_bmap_punch_delalloc_range (Brian Foster) [1633171] - [fs] xfs: fix transaction leak in xfs_reflink_allocate_cow() (Brian Foster) [1633171] - [fs] xfs: avoid lockdep false positives in xfs_trans_alloc (Brian Foster) [1633171] - [fs] xfs: refactor xfs_buf_log_item reference count handling (Brian Foster) [1633171] - [fs] xfs: clean up xfs_trans_brelse() (Brian Foster) [1633171] - [fs] xfs: don't unlock invalidated buf on aborted tx commit (Brian Foster) [1633171] - [fs] xfs: remove last of unnecessary xfs_defer_cancel() callers (Brian Foster) [1633171] - [fs] xfs: don't crash the vfs on a garbage inline symlink (Brian Foster) [1633171] - [fs] iomap: set page dirty after partial delalloc on mkwrite (Brian Foster) [1633171] - [fs] xfs: sanity check ag header values in xrep_calc_ag_resblks (Brian Foster) [1633171] - [fs] xfs: recalculate summary counters at mount time if icount is bad (Brian Foster) [1633171] - [fs] xfs: fix a null pointer dereference in xfs_bmap_extents_to_btree (Brian Foster) [1633171] - [fs] xfs: remove b_last_holder & associated macros (Brian Foster) [1633171] - [fs] xfs: repair the AGI (Brian Foster) [1633171] - [fs] xfs: repair the AGFL (Brian Foster) [1633171] - [fs] xfs: repair the AGF (Brian Foster) [1633171] - [fs] xfs: remove dead error handling code in xfs_dquot_disk_alloc() (Brian Foster) [1633171] - [fs] xfs: use WRITE_ONCE to update if_seq (Brian Foster) [1633171] - [fs] xfs: fix a comment in xfs_log_reserve (Brian Foster) [1633171] - [fs] xfs: only validate summary counts on primary superblock (Brian Foster) [1633171] - [fs] xfs: substitute spaces with tabs (Brian Foster) [1633171] - [fs] xfs: fold dfops into the transaction (Brian Foster) [1633171] - [fs] xfs: always defer agfl block frees (Brian Foster) [1633171] - [fs] xfs: pass transaction to xfs_defer_add() (Brian Foster) [1633171] - [fs] xfs: replace xfs_defer_ops ->dop_pending with on-stack list (Brian Foster) [1633171] - [fs] xfs: cancel dfops on xfs_defer_finish() error (Brian Foster) [1633171] - [fs] xfs: clean out superfluous dfops dop params/vars (Brian Foster) [1633171] - [fs] xfs: drop dop param from xfs_defer_op_type ->finish_item() callback (Brian Foster) [1633171] - [fs] xfs: automatic dfops inode relogging (Brian Foster) [1633171] - [fs] xfs: automatic dfops buffer relogging (Brian Foster) [1633171] - [fs] xfs: add missing defer ijoins for held inodes (Brian Foster) [1633171] - [fs] xfs: replace dop_low with transaction flag (Brian Foster) [1633171] - [fs] xfs: pass transaction to dfops reset/move helpers (Brian Foster) [1633171] - [fs] xfs: remove unused __xfs_defer_cancel() internal helper (Brian Foster) [1633171] - [fs] xfs: use transaction for intent recovery instead of raw dfops (Brian Foster) [1633171] - [fs] xfs: refactor internal dfops initialization (Brian Foster) [1633171] - [fs] xfs: check da node magic in _node_lookup_int (Brian Foster) [1633171] - [fs] xfs: use a local variable for magic number in xfs_da3_node_lookup_int (Brian Foster) [1633171] - [fs] xfs: refactor log recovery check (Brian Foster) [1633171] - [fs] xfs: move extent busy tree initialization to xfs_initialize_perag (Brian Foster) [1633171] - [fs] xfs: avoid COW fork extent lookups in writeback if the fork didn't change (Brian Foster) [1633171] - [fs] xfs: maintain a sequence count for inode fork manipulations (Brian Foster) [1633171] - [fs] xfs: check for unknown v5 feature bits in superblock write verifier (Brian Foster) [1633171] - [fs] xfs: verify icount in superblock write (Brian Foster) [1633171] - [fs] libxfs: add more bounds checking to sb sanity checks (Brian Foster) [1633171] - [fs] xfs: refactor superblock verifiers (Brian Foster) [1633171] - [fs] xfs: refactor the xrep_extent_list into xfs_bitmap (Brian Foster) [1633171] - [fs] xfs: introduce a new xfs_inode_has_cow_data helper (Brian Foster) [1633171] - [fs] xfs: remove the xfs_ifork_t typedef (Brian Foster) [1633171] - [fs] xfs: simplify xfs_idata_realloc (Brian Foster) [1633171] - [fs] xfs: remove if_real_bytes (Brian Foster) [1633171] - [fs] xfs: move the repair extent list into its own file (Brian Foster) [1633171] - [fs] xfs: pass transaction lock while setting up agresv on cyclic metadata (Brian Foster) [1633171] - [fs] xfs: remove deprecated barrier/nobarrier mount (Brian Foster) [1633171] - [fs] xfs: clean up IRELE/iput callsites (Brian Foster) [1633171] - [fs] xfs: kill IHOLD (Brian Foster) [1633171] - [fs] xfs: bypass final dfops roll in trans commit path (Brian Foster) [1633171] - [fs] xfs: drop unnecessary xfs_defer_finish() dfops parameter (Brian Foster) [1633171] - [fs] xfs: remove unnecessary dfops init calls in xattr code (Brian Foster) [1633171] - [fs] xfs: remove all boilerplate defer init/finish code (Brian Foster) [1633171] - [fs] xfs: use internal dfops during (b|c)ui recovery (Brian Foster) [1633171] - [fs] xfs: use internal dfops in attr code (Brian Foster) [1633171] - [fs] xfs: use internal dfops in cow blocks cancel (Brian Foster) [1633171] - [fs] xfs: support embedded dfops in transaction (Brian Foster) [1633171] - [fs] xfs: pack holes in xfs_defer_ops and xfs_trans (Brian Foster) [1633171] - [fs] xfs: reset dfops to initial state after finish (Brian Foster) [1633171] - [fs] xfs: remove unused deferred ops committed field (Brian Foster) [1633171] - [fs] xfs: make deferred processing safe for embedded dfops (Brian Foster) [1633171] - [fs] xfs: fix transaction leak on remote attr set/remove failure (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in log recovery intent processing (Brian Foster) [1633171] - [fs] xfs: pull up dfops from xfs_itruncate_extents() (Brian Foster) [1633171] - [fs] xfs: force summary counter recalc at next mount (Brian Foster) [1633171] - [fs] xfs: refactor unmount record write (Brian Foster) [1633171] - [fs] xfs: detect and fix bad summary counts at mount (Brian Foster) [1633171] - [fs] xfs: fix indentation and other whitespace problems in scrub/repair (Brian Foster) [1633171] - [fs] xfs: shorten struct xfs_scrub_context to struct xfs_scrub (Brian Foster) [1633171] - [fs] xfs: shorten xfs_repair_ prefix to xrep_ (Brian Foster) [1633171] - [fs] xfs: shorten xfs_scrub_ prefix (Brian Foster) [1633171] - [fs] xfs: clean up xfs_btree_del_cursor callers (Brian Foster) [1633171] - [fs] xfs: trivial xfs_btree_del_cursor cleanups (Brian Foster) [1633171] - [fs] xfs: return from _defer_finish with a clean transaction (Brian Foster) [1633171] - [fs] xfs: check leaf attribute block freemap in verifier (Brian Foster) [1633171] - [fs] libxfs: Fix a couple of sparse complaintis (Brian Foster) [1633171] - [fs] xfs: use swap macro in xfs_dir2_leafn_rebalance (Brian Foster) [1633171] - [fs] xfs_bmap_util: use swap macro (Brian Foster) [1633171] - [fs] xfs_attr_leaf: use swap macro in xfs_attr3_leaf_rebalance (Brian Foster) [1633171] - [fs] xfs: don't assume a left rmap when allocating a new rmap (Brian Foster) [1633171] - [fs] xfs: kill __xfs_buf_submit_common() (Brian Foster) [1633171] - [fs] xfs: combine (a)sync buffer submission apis (Brian Foster) [1633171] - [fs] xfs: use sync buffer I/O for sync delwri queue submission (Brian Foster) [1633171] - [fs] xfs: refactor buffer submission into a common helper (Brian Foster) [1633171] - [fs] xfs: remove xfs_defer_init() firstblock param (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in inode inactivate (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in extent swap (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in reflink cow block cancel (Brian Foster) [1633171] - [fs] xfs: replace no-op firstblock init with ->t_firstblock (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in dq alloc (Brian Foster) [1633171] - [fs] xfs: remove xfs_alloc_arg firstblock field (Brian Foster) [1633171] - [fs] xfs: remove xfs_btree_cur private firstblock field (Brian Foster) [1633171] - [fs] xfs: remove bmap format helpers firstblock params (Brian Foster) [1633171] - [fs] xfs: remove bmap extent add helper firstblock params (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmalloca firstblock field (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in bmap extent split (Brian Foster) [1633171] - [fs] xfs: remove bmap insert/collapse firstblock param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bunmapi() firstblock param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_write() firstblock param (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in insert/collapse range (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in xfs_bmapi_remap() (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock for all xfs_bunmapi() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock for all xfs_bmapi_write() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in xattr ops (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in attrfork add (Brian Foster) [1633171] - [fs] xfs: remove firstblock param from xfs dir ops (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in dir ops (Brian Foster) [1633171] - [fs] xfs: add firstblock field to xfs_trans (Brian Foster) [1633171] - [fs] xfs: allow null firstblock in xfs_bmapi_write() when tp is null (Brian Foster) [1633171] - [fs] xfs: refactor dfops init to attach to transaction (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in reflink cow recover path (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in cancel cow blocks operation (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for rmap extent swap operations (Brian Foster) [1633171] - [fs] xfs: remove unused btree cursor bc_private.a.dfops field (Brian Foster) [1633171] - [fs] xfs: remove xfs_btree_cur bmbt dfops field (Brian Foster) [1633171] - [fs] xfs: remove dfops param from internal bmap extent helpers (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for collapse/insert range operations (Brian Foster) [1633171] - [fs] xfs: remove struct xfs_bmalloca dfops field (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_remap() dfops param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bunmapi() dfops param (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for all xfs_bunmapi() callers (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_write() dfops param (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for all xfs_bmapi_write() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in dqalloc transaction (Brian Foster) [1633171] - [fs] xfs: replace xfs_da_args->dfops accesses with ->t_dfops and remove (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in extent split tx and remove param (Brian Foster) [1633171] - [fs] xfs: remove dfops param in attr fork add path (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for attr set/remove operations (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for recovery of (b|c)ui log items (Brian Foster) [1633171] - [fs] xfs: remove dfops param from high level dirname calls (Brian Foster) [1633171] - [fs] xfs: remove dfops parameter from ifree call stack (Brian Foster) [1633171] - [fs] xfs: rename xfs_trans ->t_agfl_dfops to ->t_dfops (Brian Foster) [1633171] - [fs] xfs: cow unwritten conversion uses uninitialized dfops (Brian Foster) [1633171] - [fs] xfs: update my copyrights for the writeback and iomap code (Brian Foster) [1633171] - [fs] xfs: add support for sub-pagesize writeback without buffer_heads (Brian Foster) [1633171] - [fs] xfs: allow writeback on pages without buffer heads (Brian Foster) [1633171] - [fs] xfs: refactor the tail of xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: remove xfs_start_page_writeback (Brian Foster) [1633171] - [fs] xfs: move all writeback buffer_head manipulation into xfs_map_at_offset (Brian Foster) [1633171] - [fs] xfs: don't look at buffer heads in xfs_add_to_ioend (Brian Foster) [1633171] - [fs] xfs: remove the imap_valid flag (Brian Foster) [1633171] - [fs] xfs: simplify xfs_map_blocks by using xfs_iext_lookup_extent directly (Brian Foster) [1633171] - [fs] xfs: remove xfs_reflink_find_cow_mapping (Brian Foster) [1633171] - [fs] xfs: remove the now unused XFS_BMAPI_IGSTATE flag (Brian Foster) [1633171] - [fs] xfs: make xfs_writepage_map extent map centric (Brian Foster) [1633171] - [fs] xfs: rename the offset variable in xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: remove xfs_map_cow (Brian Foster) [1633171] - [fs] xfs: remove xfs_reflink_trim_irec_to_next_cow (Brian Foster) [1633171] - [fs] xfs: don't use XFS_BMAPI_IGSTATE in xfs_map_blocks (Brian Foster) [1633171] - [fs] xfs: don't clear imap_valid for a non-uptodate buffers (Brian Foster) [1633171] - [fs] xfs: do not set the page uptodate in xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: move locking into xfs_bmap_punch_delalloc_range (Brian Foster) [1633171] - [fs] xfs: simplify xfs_aops_discard_page (Brian Foster) [1633171] - [fs] xfs: use iomap for blocksize == PAGE_SIZE readpage and readpages (Brian Foster) [1633171] - [fs] iomap: fix WARN_ON_ONCE on uninitialized variable (Brian Foster) [1633171] - [fs] iomap: Switch to offset_in_page for clarity (Brian Foster) [1633171] - [fs] iomap: add support for sub-pagesize buffered I/O without buffer heads (Brian Foster) [1633171] - [fs] iomap: add inline data support to iomap_readpage_actor (Brian Foster) [1633171] - [fs] iomap: support direct I/O to inline data (Brian Foster) [1633171] - [fs] iomap: refactor iomap_dio_actor (Brian Foster) [1633171] - [fs] iomap: add initial support for writes without buffer heads (Brian Foster) [1633171] - [fs] iomap: add an iomap-based readpage and readpages implementation (Brian Foster) [1633171] - [fs] iomap: add private pointer to struct iomap (Brian Foster) [1633171] - [fs] iomap: add a page_done callback (Brian Foster) [1633171] - [fs] iomap: generic inline data handling (Brian Foster) [1633171] - [fs] iomap: complete partial direct I/O writes synchronously (Brian Foster) [1633171] - [fs] iomap: mark newly allocated buffer heads as new (Brian Foster) [1633171] - [fs] fs: factor out a __generic_write_end helper (Brian Foster) [1633171] - [netdrv] amd-xgbe: mark driver as tech preview (David Arcari) [1633209] - [fs] ext4, dax: set ext4_dax_aops for dax files (Lukas Czerner) [1633239] - [fs] ext4, dax: add ext4_bmap to ext4_dax_aops (Lukas Czerner) [1633239] - [fs] ext4: don't mark mmp buffer head dirty (Lukas Czerner) [1633239] - [fs] ext4: show test_dummy_encryption mount option in /proc/mounts (Lukas Czerner) [1633239] - [fs] ext4: fix online resizing for bigalloc file systems with a 1k block size (Lukas Czerner) [1633239] - [fs] ext4: fix online resize's handling of a too-small final block group (Lukas Czerner) [1633239] - [fs] ext4: recalucate superblock checksum after updating free blocks/inodes (Lukas Czerner) [1633239] - [fs] ext4: avoid arithemetic overflow that can trigger a BUG (Lukas Czerner) [1633239] - [fs] ext4: avoid divide by zero fault when deleting corrupted inline directories (Lukas Czerner) [1633239] - [fs] ext4: check to make sure the rename(2)'s destination is not freed (Lukas Czerner) [1633239] - [fs] ext4: remove unneeded variable "err" in ext4_mb_release_inode_pa() (Lukas Czerner) [1633239] - [fs] ext4: fix spectre gadget in ext4_mb_regular_allocator() (Lukas Czerner) [1633239] - [fs] ext4: check for NUL characters in extended attribute's name (Lukas Czerner) [1633239] - [fs] ext4: use ext4_warning() for sb_getblk failure (Lukas Czerner) [1633239] - [fs] ext4: fix race when setting the bitmap corrupted flag (Lukas Czerner) [1633239] - [fs] ext4: reset error code in ext4_find_entry in fallback (Lukas Czerner) [1633239] - [fs] ext4: check allocation failure when duplicating "data" in ext4_remount() (Lukas Czerner) [1633239] - [fs] ext4: sysfs: print ext4_super_block fields as little-endian (Lukas Czerner) [1633239] - [firmware] efi/x86: Handle page faults occurring while running EFI runtime services (Bhupesh Sharma) [1627557] - [firmware] efi: Make efi_rts_work accessible to efi page fault handler (Bhupesh Sharma) [1627557] - [firmware] efi: Remove the declaration of efi_late_init() as the function is unused (Bhupesh Sharma) [1627557] - [firmware] efi: Use a work queue to invoke EFI Runtime Services (Bhupesh Sharma) [1627557] - [firmware] efi/x86: Use non-blocking SetVariable() for efi_delete_dummy_variable() (Bhupesh Sharma) [1627557] - [fs] gfs2: Special-case rindex for gfs2_grow (Robert S Peterson) [1628360] - [fs] GFS2: Fix recovery issues for spectators (Robert S Peterson) [1628298]- [powerpc] powerpc/pkeys: Fix reading of ibm, processor-storage-keys property (Steve Best) [1633551] - [powerpc] powerpc/pseries: Remove unneeded uses of dlpar work queue (Steve Best) [1633544] - [powerpc] powerpc/pseries: Remove prrn_work workqueue (Steve Best) [1633544] - [pci] ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot is not bridge (Myron Stowe) [1634816] - [pci] PCI: Fix enabling of PASID on RC integrated endpoints (Myron Stowe) [1634816] - [pci] IB/hfi1,PCI: Allow bus reset while probing (Myron Stowe) [1634816] - [pci] PCI: Fix faulty logic in pci_reset_bus() (Myron Stowe) [1634816] - [pci] PCI: pciehp: Fix hot-add vs powerfault detection order (Myron Stowe) [1634816] - [pci] Revert "PCI: Add ACS quirk for Intel 300 series" (Myron Stowe) [1634816] - [powerpc] powerpc/numa: Use associativity if VPHN hcall is successful (Steve Best) [1633569] - [pci] PCI: vmd: White list for fast interrupt handlers (Myron Stowe) [1632816] - [pci] PCI: Add function 1 DMA alias quirk for Marvell 88SS9183 (Myron Stowe) [1632816] - [pci] PCI: Rename pci_try_reset_bus() to pci_reset_bus() (Myron Stowe) [1632816] - [pci] PCI: Deprecate pci_reset_bus() and pci_reset_slot() functions (Myron Stowe) [1632816] - [pci] PCI: Unify try slot and bus reset API (Myron Stowe) [1632816] - [pci] PCI: Hide pci_reset_bridge_secondary_bus() from drivers (Myron Stowe) [1632816] - [pci] IB/hfi1: Use pci_try_reset_bus() for initiating PCI Secondary Bus Reset (Myron Stowe) [1632816] - [pci] PCI: Handle error return from pci_reset_bridge_secondary_bus() (Myron Stowe) [1632816] - [pci] PCI/IOV: Tidy pci_sriov_set_totalvfs() (Myron Stowe) [1632816] - [pci] PCI: Enable PASID only if entire path supports End-End TLP prefixes (Myron Stowe) [1632816] - [pci] PCI: Expand documentation for pci_add_dma_alias() (Myron Stowe) [1632816] - [pci] PCI: Add DMA alias quirk for Microsemi Switchtec NTB (Myron Stowe) [1632816] - [pci] switchtec: Use generic PCI Vendor ID and Class Code (Myron Stowe) [1632816] - [pci] PCI: Make pci_get_rom_size() static (Myron Stowe) [1632816] - [pci] PCI: Add check code for last image indicator not set (Myron Stowe) [1632816] - [pci] PCI: Avoid accessing memory outside the ROM BAR (Myron Stowe) [1632816] - [pci] PCI: Make early dump functionality generic (Myron Stowe) [1632816] - [pci] PCI: Cleanup PCI_REBAR_CTRL_BAR_SHIFT handling (Myron Stowe) [1632816] - [pci] PCI: Restore resized BAR state on resume (Myron Stowe) [1632816] - [pci] PCI: Clean up resource allocation in devm_of_pci_get_host_bridge_resources() (Myron Stowe) [1632816] - [pci] PCI: Add ACS Redirect disable quirk for Intel Sunrise Point (Myron Stowe) [1632816] - [pci] PCI: Add device-specific ACS Redirect disable infrastructure (Myron Stowe) [1632816] - [pci] PCI: Convert device-specific ACS quirks from NULL termination to ARRAY_SIZE (Myron Stowe) [1632816] - [pci] PCI: Add "pci=disable_acs_redir=" parameter for peer-to-peer support (Myron Stowe) [1632816] - [pci] PCI: Allow specifying devices using a base bus and path of devfns (Myron Stowe) [1632816] - [pci] PCI: Make specifying PCI devices in kernel parameters reusable (Myron Stowe) [1632816] - [pci] PCI: Hide ACS quirk declarations inside PCI core (Myron Stowe) [1632816] - [pci] PCI: Document ACPI description of PCI host bridges (Myron Stowe) [1632816] - [pci] PCI/MSI: Set IRQCHIP_ONESHOT_SAFE for PCI-MSI irqchips (Myron Stowe) [1632816] - [pci] PCI: Limit config space size for Netronome NFP5000 (Myron Stowe) [1632816] - [pci] PCI: Add PCI_DEVICE_DATA() macro to fully describe device ID entry (Myron Stowe) [1632816] - [pci] PCI: Unify PCI and normal DMA direction definitions (Myron Stowe) [1632816] - [pci] PCI: Use IRQF_ONESHOT if pci_request_irq() called with no handler (Myron Stowe) [1632816] - [pci] PCI: Call dma_debug_add_bus() for pci_bus_type from PCI core (Myron Stowe) [1632816] - [pci] PCI: Mark fall-through switch cases before enabling -Wimplicit-fallthrough (Myron Stowe) [1632816]- [s390] s390/sclp: Allow to request adapter reset (Philipp Rudo) [1635273] - [char] ipmi: Fix NULL pointer dereference in ssif_probe (Tony Camuso) [1635366] - [char] ipmi: Fix I2C client removal in the SSIF driver (Tony Camuso) [1635366] - [char] ipmi: kcs_bmc: don't change device name (Tony Camuso) [1635366] - [kernel] timers: Clear timer_base::must_forward_clk with timer_base::lock held (Waiman Long) [1632820] - [pci] switchtec: Fix Spectre v1 vulnerability (Waiman Long) [1632820] - [kernel] cpu/hotplug: Prevent state corruption on error rollback (Waiman Long) [1632820] - [kernel] cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun() (Waiman Long) [1632820] - [base] memory_hotplug: fix kernel_panic on offline page processing (Waiman Long) [1632820] - [mm] mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported (Waiman Long) [1632820] - [lib] debugobjects: Make stack check warning more informative (Waiman Long) [1632820] - [fs] fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot() (Waiman Long) [1632820] - [x86] x86/process: Don't mix user/kernel regs in 64bit __show_regs() (Waiman Long) [1632820] - [x86] x86/dumpstack: Don't dump kernel memory based on usermode RIP (Waiman Long) [1632820] - [x86] x86: Avoid pr_cont() in show_opcodes() (Waiman Long) [1632820] - [x86] x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit() (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+ (Waiman Long) [1632820] - [x86] x86/spectre: Add missing family 6 check to microcode check (Waiman Long) [1632820] - [x86] x86/nmi: Fix NMI uaccess race against CR3 switching (Waiman Long) [1632820] - [x86] x86/vdso: Fix lsl operand order (Waiman Long) [1632820] - [x86] x86/vdso: Fix vDSO build if a retpoline is emitted (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Suggest what to do on systems with too much RAM (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Fix off-by-one error when warning that system has too much RAM (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Exempt zeroed PTEs from inversion (Waiman Long) [1632820] - [x86] x86/mm/pti: Clear Global bit more aggressively (Waiman Long) [1632820] - [x86] x86/paravirt: Fix spectre-v2 mitigations for paravirt guests (Waiman Long) [1632820] - [target] scsi: target: iscsi: Use bin2hex instead of a re-implementation (Maurizio Lombardi) [1632184] {CVE-2018-14633} - [target] scsi: target: iscsi: Use hex2bin instead of a re-implementation (Maurizio Lombardi) [1632184] {CVE-2018-14633}- [netdrv] ibmvnic: Include missing return code checks in reset function (Steve Best) [1633553] - [netdrv] ibmvnic: Update firmware error reporting with cause string (Steve Best) [1633553] - [netdrv] ibmvnic: Remove code to request error information (Steve Best) [1633553] - [s390] s390/qeth: remove duplicated carrier state tracking (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up drop conditions for received cmds (Hendrik Brueckner) [1633841] - [s390] s390/qeth: re-indent qeth_check_ipa_data() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: consume local address events (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove various redundant code (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove CARD_FROM_CDEV helper (Hendrik Brueckner) [1633841] - [s390] s390/qeth: pass card pointer in iob callback (Hendrik Brueckner) [1633841] - [s390] s390/qeth: re-use qeth_notify_skbs() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove additional skb refcount (Hendrik Brueckner) [1633841] - [s390] s390/qeth: replace open-coded skb_queue_walk() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: on gdev release, reset drvdata (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix discipline unload after setup error (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use DEFINE_MUTEX for qeth_mod_mutex (Hendrik Brueckner) [1633841] - [s390] s390/qeth: convert layer attribute to enum (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reduce 0-initializing when building IPA cmds (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fine-tune spinlocks (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix typo in return value (Hendrik Brueckner) [1633841] - [s390] s390/qeth: invoke softirqs after napi_schedule() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: uninstall IRQ handler on device removal (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove qeth_hdr_chk_and_bounce() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed up TSO transmission (Hendrik Brueckner) [1633841] - [s390] s390/qeth: prepare for copy-free TSO transmission (Hendrik Brueckner) [1633841] - [s390] s390/qeth: check size of required HW header cache object (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix up protocol headers early (Hendrik Brueckner) [1633841] - [s390] s390/qeth: limit csum offload erratum to L3 devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove qeth_get_elements_no() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove unused L3 xmit code (Hendrik Brueckner) [1633841] - [s390] s390/qeth: run non-offload L3 traffic over common xmit path (Hendrik Brueckner) [1633841] - [s390] s390/qeth: move L2 xmit code to core module (Hendrik Brueckner) [1633841] - [s390] s390/qdio: reset old sbal_state flags (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't dump past end of unknown HW header (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use vzalloc for QUERY OAT buffer (Hendrik Brueckner) [1633841] - [s390] s390/qeth: switch on SG by default for IQD devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: indicate error when netdev allocation fails (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use true and false for boolean values (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't restrict qeth_card to DMA memory (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up card initialization (Hendrik Brueckner) [1633841] - [s390] s390/qeth: do basic setup for data channel (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use qeth_setup_ccw() to set up all CCWs (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reduce hard-coded access to ccw channels (Hendrik Brueckner) [1633841] - [s390] s390/qeth: extract helper for MPC protocol type (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed up L2 IQD xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add support for constrained HW headers (Hendrik Brueckner) [1633841] - [s390] s390/qeth: merge linearize-check into HW header construction (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add statistics for consumed buffer elements (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use core MTU range checking (Hendrik Brueckner) [1633841] - [s390] s390/qeth: simplify max MTU handling (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't cache HW port number (Hendrik Brueckner) [1633841] - [s390] s390/qeth: allocate netdevice early (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove redundant netif_carrier_ok() checks (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reset layer2 attribute on layer switch (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix race in used-buffer accounting (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed-up IPv4 OSA xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed-up L3 IQD xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add a L3 xmit wrapper (Hendrik Brueckner) [1633841] - [s390] s390/qeth: increase GSO max size for eligible L3 devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up exported symbols (Hendrik Brueckner) [1633841] - [s390] s390/qeth: consolidate ccwgroup driver definition (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up Output Queue selection (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fine-tune RX modesetting (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove unused buffer->aob pointer (Hendrik Brueckner) [1633841] - [s390] s390/qeth: various buffer management cleanups (Hendrik Brueckner) [1633841] - [powerpc] powerpc: Avoid code patching freed init sections (Steve Best) [1633545] - [powerpc] powerpc/tm: Fix userspace r13 corruption (Steve Best) [1633543] - [powerpc] powerpc/tm: Avoid possible userspace r1 corruption on reclaim (Steve Best) [1633543] - [drm] drm/i915/cfl: Add a new CFL PCI ID (Rob Clark) [1626883] - [drm] drm/i915/aml: Introducing Amber Lake platform (Rob Clark) [1626883] - [drm] drm/i915/whl: Introducing Whiskey Lake platform (Rob Clark) [1626883] - [char] ipmi: Move BT capabilities detection to the detect call (Frank Ramsay) [1618774] - [char] ipmi: Rework SMI registration failure (Frank Ramsay) [1618774]- [s390] s390: detect etoken facility (Thomas Huth) [1634069] - [s390] s390/lib: use expoline for all bcr instructions (Thomas Huth) [1634069] - [documentation] vm.txt: Adding 'nr_hugepages_mempolicy' parameter description (Prashant Dhamdhere) [1626547]- [scsi] scsi: ipr: System hung while dlpar adding primary ipr adapter back (Steve Best) [1633217] - [target] scsi: iscsi: target: Don't use stack buffer for scatterlist (Maurizio Lombardi) [1631342] - [rpmspec] Forward port weak-modules support from RHEL 7 to RHEL 8 ("Herton R. Krzesinski") [1596884] - [fs] xfs: Close race between direct IO and xfs_break_layouts() (Eric Sandeen) [1622191] - [fs] xfs: remove unused iolock arg from xfs_break_dax_layouts (Eric Sandeen) [1622191] - [fs] ext4: Close race between direct IO and ext4_break_layouts() (Eric Sandeen) [1616303] - [fs] ext4: handle layout changes to pinned DAX mappings (Eric Sandeen) [1614154] - [fs] dax: dax_layout_busy_page() warn on !exceptional (Eric Sandeen) [1614154] - [fs] dax: mark tech preview (Eric Sandeen) [1627455] - [mm] usercopy: Allow boot cmdline disabling of hardening (Christoph von Recklinghausen) [1589928]- [s390] s390/crypto: Fix return code checking in cbc_paes_crypt() (Philipp Rudo) [1633266] - [drm] amd/display/dc/basics/logger.c: fix build error with CONFIG_FORTIFY_SOURCE=y ("Herton R. Krzesinski") [1548068] - [acpi] ACPICA: AML Parser: skip opcodes that open a scope upon parse failure (Jeremy Linton) [1609885] - [acpi] ACPICA: ACPICA: add status check for acpi_hw_read before assigning return value (Jeremy Linton) [1609885] - [acpi] ACPICA: AML Parser: ignore all exceptions resulting from incorrect AML during table load (Jeremy Linton) [1609885] - [rpmspec] spec: Add missing BuildRequires for bpftool (Jiri Olsa) [1632756] - [powerpc] KVM: PPC: Avoid marking DMA-mapped pages dirty in real mode (David Gibson) [1628412] - [powerpc] powerpc/powernv/ioda: Allocate indirect TCE levels on demand (David Gibson) [1628412] - [powerpc] powerpc/powernv: Rework TCE level allocation (David Gibson) [1628412] - [powerpc] powerpc/powernv: Add indirect levels to it_userspace (David Gibson) [1628412] - [powerpc] KVM: PPC: Make iommu_table::it_userspace big endian (David Gibson) [1628412] - [powerpc] powerpc/powernv: Move TCE manupulation code to its own file (David Gibson) [1628412] - [net] net_sched: fix NULL pointer dereference when delete tcindex filter (Andrea Claudi) [1627648] - [net] net_sched: Fix missing res info when create new tc_index filter (Andrea Claudi) [1627648] - [samples] samples/bpf: xdpsock: order memory on AArch64 (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_redirect_cpu load balance like Suricata (Jesper Brouer) [1615959] - [samples] samples/bpf: add Paul Hsieh's (LGPL 2.1) hash function SuperFastHash (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_redirect_cpu handle parsing of double VLAN tagged packets (Jesper Brouer) [1615959] - [samples] samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_rxq_info action XDP_TX must adjust MAC-addrs (Jesper Brouer) [1615959] - [samples] samples/bpf: extend xdp_rxq_info to read packet payload (Jesper Brouer) [1615959] - [powerpc] KVM: PPC: Book3S HV: Use correct pagesize in kvm_unmap_radix() (David Gibson) [1625498] - [net] igmp: fix incorrect unsolicit report count after link down and up (Hangbin Liu) [1625538] - [net] igmp: fix incorrect unsolicit report count when join group (Hangbin Liu) [1625538] - [netdrv] cxgb4: update 1.20.8.0 as the latest firmware supported (Arjun Vynipadath) [1622555] - [virt] svm: nested virt support off by default (Bandan Das) [1571993]- [powerpc] KVM: PPC: Book3S HV: Don't use compound_order to determine host mapping size (David Gibson) [1625860] - [virt] arm64: KVM: Remove pgd_lock (Wei Huang) [1627474] - [virt] KVM: Remove obsolete kvm_unmap_hva notifier backend (Wei Huang) [1627474] - [virt] arm64: KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Clean dcache to PoC when changing PTE due to CoW (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Skip updating PTE entry if no change (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Skip updating PMD entry if no change (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Move DEBUG_SPINLOCK_BUG_ON to vgic.h (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Do not use spin_lock_irqsave/restore with irq disabled (Wei Huang) [1627474] - [virt] KVM: arm: vgic-v3: Add support for ICC_SGI0R and ICC_ASGI1R accesses (Wei Huang) [1627474] - [virt] KVM: arm64: vgic-v3: Add support for ICC_SGI0R_EL1 and ICC_ASGI1R_EL1 accesses (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic-v3: Add core support for Group0 SGIs (Wei Huang) [1627474] - [virt] KVM: arm64: Remove non-existent AArch32 ICC_SGI1R encoding (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix potential loss of ptimer interrupts (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Fix possible spectre-v1 write in vgic_mmio_write_apr() (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Update documentation of the GIC devices wrt IIDR (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Let userspace opt-in to writable v2 IGROUPR (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Allow configuration of interrupt groups (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Return error on incompatible uaccess GICD_IIDR writes (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Permit uaccess writes to return errors (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Signal IRQs using their configured group (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Add group field to struct irq (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: GICv2 IGROUPR should read as zero (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Keep track of implementation revision (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Define GICD_IIDR fields for GICv2 and GIv3 (Wei Huang) [1627474] - [virt] arm64: KVM: Cleanup tpidr_el2 init on non-VHE (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic-debug: Show LPI status (Wei Huang) [1627474] - [virt] KVM: arm64: vgic-its: Remove VLA usage (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix vgic init race (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Enable adaptative WFE trapping (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Remove unnecessary CMOs when creating HYP page tables (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Stop using the kernel's (pmd, pud, pgd)_populate helpers (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Consolidate page-table accessors (Wei Huang) [1627474] - [virt] arm64: KVM: Avoid marking pages as XN in Stage-2 if CTR_EL0.DIC is set (Wei Huang) [1627474] - [tools] radix tree test suite: Enable ubsan (Waiman Long) [1630244] - [tools] radix tree test suite: Fix compilation (Waiman Long) [1630244] - [block] blk-wbt: don't maintain inflight counts if disabled (Ming Lei) [1622790] - [block] blk-wbt: fix has-sleeper queueing check (Ming Lei) [1622790] - [block] blk-wbt: use wq_has_sleeper() for wq active check (Ming Lei) [1622790] - [block] blk-wbt: move disable check into get_limit() (Ming Lei) [1622790] - [block] block/DAC960.c: make some arrays static const, shrinks object (Ming Lei) [1622790] - [block] blk-mq: sync the update nr_hw_queues with (Ming Lei) [1617959] - [block] blk-mq: init hctx sched after update ctx and hctx mapping (Ming Lei) [1617959] - [block] block: remove duplicate initialization (Ming Lei) [1622790] - [block] tracing/blktrace: Fix to allow setting same value (Ming Lei) [1622790] - [block] pktcdvd: fix setting of 'ret' error return for a few cases (Ming Lei) [1622790] - [block] block: change return type to bool (Ming Lei) [1622790] - [block] block, bfq: return nbytes and not zero from struct cftype (Ming Lei) [1622790] - [block] block, bfq: improve code of bfq_bfqq_charge_time (Ming Lei) [1622790] - [block] block, bfq: reduce write overcharge (Ming Lei) [1622790] - [block] block, bfq: always update the budget of an entity when needed (Ming Lei) [1622790] - [block] block, bfq: readd missing reset of parent-entity service (Ming Lei) [1622790] - [block] block: don't warn for flush on read-only device (Ming Lei) [1622809]- [kernel] locking/rwsem: Make owner store task pointer of last owning reader (Waiman Long) [1631842] - [kernel] locking/rwsem: Exit read lock slowpath if queue empty & no writer (Waiman Long) [1631842] - [x86] x86/microcode: Update the new microcode revision unconditionally (Prarit Bhargava) [1630931] - [x86] x86/microcode: Make sure boot_cpu_data.microcode is up-to-date (Prarit Bhargava) [1630931] - [arm64] arm64: tlb: Provide forward declaration of tlb_flush() before including tlb.h (Waiman Long) [1630521] - [x86] x86/mm: Only use tlb_remove_table() for paravirt (Waiman Long) [1630521] - [mm] mm: mmu_notifier fix for tlb_end_vma (Waiman Long) [1630521] - [mm] mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE (Waiman Long) [1630521] - [mm] mm/tlb: Remove tlb_remove_table() non-concurrent condition (Waiman Long) [1630521] - [mm] mm: move tlb_table_flush to tlb_flush_mmu_free (Waiman Long) [1630521] - [kernel] clocksource: Revert Remove kthread (Waiman Long) [1628402] - [cpuidle] cpuidle: menu: Retain tick when shallow state is selected (Waiman Long) [1628402] - [cpufreq] cpufreq: governor: Avoid accessing invalid governor_data (Waiman Long) [1628402] - [cpuidle] cpuidle: menu: Handle stopped tick more aggressively (Waiman Long) [1628402] - [kernel] sched: idle: Avoid retaining the tick when it has been stopped (Waiman Long) [1628402] - [net] netfilter: xt_hashlimit: do not crash when reading proc file (Florian Westphal) [1630131] - [x86] x86/boot/KASLR: Skip specified number of 1GB huge pages when doing physical randomization (KASLR) (Baoquan He) [1564824] - [x86] x86/boot/KASLR: Add two new functions for 1GB huge pages handling (Baoquan He) [1564824] - [mfd] mfd: intel-lpss: Add Ice Lake PCI IDs (Gopal Tiwari) [1483477] - [mmc] mmc: sdhci-pci: Add support for Intel ICP (Gopal Tiwari) [1483496]- [mm] mm: get rid of vmacache_flush_all() entirely (Waiman Long) [1631297] {CVE-2018-17182} - [mm] mm, vmacache: hash addresses based on pmd (Waiman Long) [1631297] {CVE-2018-17182} - [mm] mm: Allocate the mm_cpumask (mm->cpu_bitmap) dynamically based on nr_cpu_ids (Waiman Long) [1631297] {CVE-2018-17182} - [infiniband] IB/hfi1: Invalid NUMA node information can cause a divide by zero (Alex Estrin) [1622222] - [nvdimm] libnvdimm: Export max available extent (Jeff Moyer) [1627874] - [nvdimm] libnvdimm: Use max contiguous area for namespace size (Jeff Moyer) [1627874] - [netdrv] ice: Fix and update driver version string (Jonathan Toppins) [1611786] - [netdrv] ice: Introduce SERVICE_DIS flag and service routine functions (Jonathan Toppins) [1611786] - [netdrv] ice: Enable VSI Rx/Tx pruning only when VLAN 0 is active (Jonathan Toppins) [1611786] - [netdrv] ice: Enable firmware logging during device initialization (Jonathan Toppins) [1611786] - [netdrv] ice: Implement ice_bridge_getlink and ice_bridge_setlink (Jonathan Toppins) [1611786] - [netdrv] ice: Add support for Tx hang, Tx timeout and malicious driver detection (Jonathan Toppins) [1611786] - [netdrv] ice: Clean up register file (Jonathan Toppins) [1611786] - [netdrv] ice: Implement handlers for ethtool PHY/link operations (Jonathan Toppins) [1611786] - [netdrv] ice: Refactor VSI allocation, deletion and rebuild flow (Jonathan Toppins) [1611786] - [netdrv] ice: Refactor switch rule management structures and functions (Jonathan Toppins) [1611786] - [netdrv] ice: Code optimization for ice_fill_sw_rule() (Jonathan Toppins) [1611786] - [netdrv] ice: Prevent control queue operations during reset (Jonathan Toppins) [1611786] - [netdrv] ice: Update request resource command to latest specification (Jonathan Toppins) [1611786] - [netdrv] ice: Updates to Tx scheduler code (Jonathan Toppins) [1611786] - [netdrv] ice: Rework flex descriptor programming (Jonathan Toppins) [1611786] - [netdrv] net/mlx5: Fix SQ offset in QPs with small RQ (Alaa Hleihel) [1623367] - [x86] x86/spec_ctrl: Make IBRS code work with SSBD mitigation (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Auto-enable IBRS on Skylake (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Extend spectre_v2 boot option to support IBRS (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Boot time IBRS initialization (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Add IBRS code to the 64-bit assembly entry code (Waiman Long) [1565180] - [x86] x86/cpufeatures: Increase NCAPINTS for future extension (Waiman Long) [1565180] - [netdrv] ice: Trivial formatting fixes (Jonathan Toppins) [1611783] - [netdrv] ice: Change struct members from bool to u8 (Jonathan Toppins) [1611783] - [netdrv] ice: Fix potential return of uninitialized value (Jonathan Toppins) [1611783] - [netdrv] ice: Fix a few null pointer dereference issues (Jonathan Toppins) [1611783] - [netdrv] ice: Update to interrupts enabled in OICR (Jonathan Toppins) [1611783] - [netdrv] ice: Set VLAN flags correctly (Jonathan Toppins) [1611783] - [netdrv] ice: Use order_base_2 to calculate higher power of 2 (Jonathan Toppins) [1611783] - [netdrv] ice: Fix bugs in control queue processing (Jonathan Toppins) [1611783] - [netdrv] ice: Clean control queues only when they are initialized (Jonathan Toppins) [1611783] - [netdrv] ice: Report stats for allocated queues via ethtool stats (Jonathan Toppins) [1611783] - [netdrv] ice: Cleanup magic number (Jonathan Toppins) [1611783] - [netdrv] ice: Remove unnecessary node owner check (Jonathan Toppins) [1611783] - [netdrv] ice: Fix multiple static analyser warnings (Jonathan Toppins) [1611783] - [virt] KVM: VMX: fixes for vmentry_l1d_flush module parameter (Waiman Long) [1616248] {CVE-2018-15572} - [virt] KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled (Waiman Long) [1616248] {CVE-2018-15572} - [virt] x86/kvm/vmx: Fix coding style in vmx_setup_l1d_flush() (Waiman Long) [1616248] {CVE-2018-15572} - [x86] x86/speculation: Support Enhanced IBRS on future CPUs (Waiman Long) [1614144] - [x86] x86/speculation: Protect against userspace-userspace spectreRSB (Waiman Long) [1616248] {CVE-2018-15572} - [x86] x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation (Waiman Long) [1616248] {CVE-2018-15572} - [cpufreq] cpufreq: Fix a circular lock dependency problem (Waiman Long) [1599154] - [kernel] cpu/hotplug: Add a cpus_read_trylock() function (Waiman Long) [1599154] - [virt] xen/spinlock: Don't use pvqspinlock if only 1 vCPU (Waiman Long) [1618486]- [mailbox] mailbox: PCC: handle parse error (David Arcari) [1630382] - [hv] vmbus: don't return values for uninitalized channels (Vitaly Kuznetsov) [1617954] - [mm] kernel/memremap, kasan: make ZONE_DEVICE with work with KASAN (Bill O'Donnell) [1629578] - [mm] mm: fix BUG_ON() in vmf_insert_pfn_pud() from VM_MIXEDMAP removal (Jeff Moyer) [1622171] - [mm] dax: remove VM_MIXEDMAP for fsdax and device dax (Jeff Moyer) [1622171]- [i2c] i2c: i801: fix DNV's SMBCTRL register offset (David Arcari) [1628861] - [fs] ceph: avoid a use-after-free in ceph_destroy_options() (Ilya Dryomov) [1629884] - [fs] ceph: fix incorrect use of strncpy (Ilya Dryomov) [1629884] - [block] rbd: support cloning across namespaces (Ilya Dryomov) [1629884] - [block] rbd: factor out get_parent_info() (Ilya Dryomov) [1629884] - [block] rbd: support for images within namespaces (Ilya Dryomov) [1629884] - [block] rbd: pass rbd_spec into parse_rbd_opts_token() (Ilya Dryomov) [1629884] - [net] libceph: weaken sizeof check in ceph_x_verify_authorizer_reply() (Ilya Dryomov) [1629884] - [net] libceph: check authorizer reply/challenge length before reading (Ilya Dryomov) [1629884] - [net] libceph: implement CEPHX_V2 calculation mode (Ilya Dryomov) [1629884] - [net] libceph: add authorizer challenge (Ilya Dryomov) [1629884] - [net] libceph: factor out encrypt_authorizer() (Ilya Dryomov) [1629884] - [net] libceph: factor out __ceph_x_decrypt() (Ilya Dryomov) [1629884] - [net] libceph: factor out __prepare_write_connect() (Ilya Dryomov) [1629884] - [net] libceph: store ceph_auth_handshake pointer in ceph_connection (Ilya Dryomov) [1629884] - [pci] PCI: pciehp: Deduplicate presence check on probe & resume (Myron Stowe) [1583983] - [pci] PCI: pciehp: Avoid implicit fallthroughs in switch statements (Myron Stowe) [1583983] - [pci] PCI: Whitelist Thunderbolt ports for runtime D3 (Myron Stowe) [1583983] - [pci] PCI: Whitelist native hotplug ports for runtime D3 (Myron Stowe) [1583983] - [pci] PCI: sysfs: Resume to D0 on function reset (Myron Stowe) [1583983] - [pci] PCI: pciehp: Resume parent to D0 on config space access (Myron Stowe) [1583983] - [pci] PCI: pciehp: Resume to D0 on enable/disable (Myron Stowe) [1583983] - [pci] PCI: pciehp: Support interrupts sent from D3hot (Myron Stowe) [1583983] - [pci] PCI: pciehp: Obey compulsory command delay after resume (Myron Stowe) [1583983] - [pci] PCI: pciehp: Clear spurious events earlier on resume (Myron Stowe) [1583983] - [pci] PCI: portdrv: Deduplicate PM callback iterator (Myron Stowe) [1583983] - [pci] PCI: pciehp: Avoid slot access during reset (Myron Stowe) [1583983] - [pci] PCI: pciehp: Always enable occupied slot on probe (Myron Stowe) [1583983] - [pci] PCI: pciehp: Become resilient to missed events (Myron Stowe) [1583983] - [pci] PCI: pciehp: Tolerate initially unstable link (Myron Stowe) [1583983] - [pci] PCI: pciehp: Declare pciehp_enable/disable_slot() static (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop enable/disable lock (Myron Stowe) [1583983] - [pci] PCI: pciehp: Enable/disable exclusively from IRQ thread (Myron Stowe) [1583983] - [pci] PCI: pciehp: Track enable/disable status (Myron Stowe) [1583983] - [pci] PCI: pciehp: Publish to user space last on probe (Myron Stowe) [1583983] - [pci] PCI: hotplug: Demidlayer registration with the core (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop slot workqueue (Myron Stowe) [1583983] - [pci] PCI: pciehp: Handle events synchronously (Myron Stowe) [1583983] - [pci] PCI: pciehp: Stop blinking on slot enable failure (Myron Stowe) [1583983] - [pci] PCI: pciehp: Convert to threaded polling (Myron Stowe) [1583983] - [pci] PCI: pciehp: Convert to threaded IRQ (Myron Stowe) [1583983] - [pci] PCI: pciehp: Document struct slot and struct controller (Myron Stowe) [1583983] - [pci] PCI: pciehp: Declare pciehp_unconfigure_device() void (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop unnecessary NULL pointer check (Myron Stowe) [1583983] - [pci] PCI: pciehp: Fix unprotected list iteration in IRQ handler (Myron Stowe) [1583983] - [pci] PCI: pciehp: Fix use-after-free on unplug (Myron Stowe) [1583983] - [pci] PCI: hotplug: Don't leak pci_slot on registration failure (Myron Stowe) [1583983] - [pci] PCI: hotplug: Delete skeleton driver (Myron Stowe) [1583983] - [netdrv] be2net: Use Kconfig flag to support for enabling/disabling adapters (Petr Oros) [1611768] - [acpi] ACPICA: Reference Counts: increase max to 0x4000 for large servers (Frank Ramsay) [1618760]- [net] udp6: add missing checks on edumux packet processing (Paolo Abeni) [1625954] - [net] udp4: fix IP_CMSG_CHECKSUM for connected sockets (Paolo Abeni) [1625954] - [s390] s390/pci: fix out of bounds access during irq setup (Hendrik Brueckner) [1627462] - [nvdimm] libnvdimm: fix ars_status output length calculation (Jeff Moyer) [1616307]- [scsi] scsi: lpfc: Correct MDS diag and nvmet configuration (Dick Kennedy) [1628323] - [iommu] iommu/arm-smmu: workaround DMA mode issues (Mark Salter) [1624077] - [x86] x86/microcode: Allow late microcode loading with SMT disabled (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] tools headers: Synchronise x86 cpufeatures.h for L1TF additions (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/mm/kmmio: Make the tracer robust against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/mm/pat: Make set_memory_np() L1TF safe (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Invert all not present mappings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Fix SMT supported evaluation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation: Simplify sysfs report of VMX L1TF vulnerability (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation/l1tf: Remove Yonah processors from not vulnerable list (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86: Don't include linux/irq.h from asm/hardirq.h (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond' (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: detect SMT disabled by BIOS (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation/l1tf: Fix typos (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Initialize the vmx_l1d_flush_pages' content (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation: Add section about CPU vulnerabilities (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/bugs, kvm: Introduce boot-time control of L1TF mitigations (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Expose SMT control init function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Allow runtime control of L1D flush (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Serialize L1D flush parameter setter (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Add static key for flush always (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Move l1tf setup function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/l1tf: Handle EPT disabled state proper (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Drop L1TF MSR list approach (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/litf: Introduce vmx status variable (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Online siblings when SMT control is turned on (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add find_msr() helper function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest numbers (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D flush logic (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D MSR based flush (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D flush algorithm (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add module argument for L1TF mitigation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Boot HT siblings at least once (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Revert "x86/apic: Ignore secondary threads if nosmt=force" (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Fix up pte->pfn conversion for PAE (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect PAE swap entries against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpufeatures: Add detection of L1D cache flush support (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Extend 64bit swap file size limit (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/apic: Ignore secondary threads if nosmt=force (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/AMD: Evaluate smp_num_siblings early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/CPU/AMD: Do not check CPUID max ext level before parsing SMP info (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/intel: Evaluate smp_num_siblings early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/topology: Provide detect_extended_topology_early() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/common: Provide detect_ht_early() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/AMD: Remove the pointless detect_ht() call (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu: Remove the pointless CPU printout (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Provide knobs to control SMT (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Split do_cpu_down() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Make bringup/teardown of smp threads symmetric (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/topology: Provide topology_smt_supported() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/smp: Provide topology_is_primary_thread() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] sched/smt: Update sched_smt_present at runtime (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/bugs: Move the l1tf function and define pr_fmt properly (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Limit swap file size to MAX_PA/2 (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Add sysfs reporting for l1tf (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Make sure the first page is always reserved (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect swap entries against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Change order of offset/type in swap entry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646}- [pci] PCI/DPC: Remove indirection waiting for inactive link (Myron Stowe) [1485556] - [pci] PCI/DPC: Use threaded IRQ for bottom half handling (Myron Stowe) [1485556] - [pci] PCI/DPC: Print AER status in DPC event handling (Myron Stowe) [1485556] - [pci] PCI/DPC: Remove rp_pio_status from dpc struct (Myron Stowe) [1485556] - [pci] PCI/DPC: Defer event handling to work queue (Myron Stowe) [1485556] - [pci] PCI/DPC: Leave interrupts enabled while handling event (Myron Stowe) [1485556] - [net] net/mlx5e: Offload TC matching on tos/ttl for ip tunnels (Erez Alfasi) [1615121] - [net] net/mlx5e: Support setup of tos and ttl for tunnel key TC action offload (Erez Alfasi) [1615121] - [net] net/mlx5e: Use ttl from route lookup on tc encap offload only if needed (Erez Alfasi) [1615121] - [net] net/sched: cls_flower: Support matching on ip tos and ttl for tunnels (Erez Alfasi) [1615121] - [net] flow_dissector: Dissect tos and ttl from the tunnel info (Erez Alfasi) [1615121] - [net] net/sched: tunnel_key: Allow to set tos and ttl for tc based ip tunnels (Erez Alfasi) [1615121] - [net] net/sched: act_tunnel_key: disambiguate metadata dst error cases (Erez Alfasi) [1615121] - [net] net/sched: add tunnel option support to act_tunnel_key (Erez Alfasi) [1615121] - [iommu] iommu/amd: Add support for IOMMU XT mode (Suravee Suthikulpanit) [1504485] - [iommu] iommu/amd: Add support for higher 64-bit IOMMU Control Register (Suravee Suthikulpanit) [1504485] - [x86] x86: irq_remapping: Move irq remapping mode enum (Suravee Suthikulpanit) [1504485] - [firmware] dcdbas: Add support for WSMT ACPI table (Charles Rose) [1502286]- [documentation] scsi: documentation: add scsi_mod.use_blk_mq to scsi-parameters (Ewan Milne) [1600014] - [scsi] scsi: core: Update SCSI_MQ_DEFAULT help text to match default (Ewan Milne) [1600014] - [scsi] scsi: core: switch to scsi-mq by default (Ewan Milne) [1600014] - [pci] PCI: Match Root Port's MPS to endpoint's MPSS as necessary (Myron Stowe) [1502324] - [pci] PCI: Skip MPS logic for Virtual Functions (VFs) (Myron Stowe) [1502324] - [pci] PCI: Check for PCIe Link downtraining (Myron Stowe) [1502324] - [pci] PCI: Workaround IDT switch ACS Source Validation erratum (Myron Stowe) [1502324] - [of] OF: Don't set default coherent DMA mask (Mark Salter) [1581822] - [acpi] ACPI/IORT: Don't set default coherent DMA mask (Mark Salter) [1581822] - [iommu] iommu/dma: Respect bus DMA limit for IOVAs (Mark Salter) [1581822] - [of] of/device: Set bus DMA mask as appropriate (Mark Salter) [1581822] - [acpi] ACPI/IORT: Set bus DMA mask as appropriate (Mark Salter) [1581822] - [kernel] dma-mapping: Generalise dma_32bit_limit flag (Mark Salter) [1581822] - [acpi] ACPI/IORT: Support address size limit for root complexes (Mark Salter) [1581822] - [of] of/platform: Initialise default DMA masks (Mark Salter) [1581822] - [net] Bluetooth: hidp: buffer overflow in hidp_process_report (Gopal Tiwari) [1623073] {CVE-2018-9363} - [irqchip] irqchip/gic-v3-its: Reduce minimum LPI allocation to 1 for PCI devices (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Honor hypervisor enforced LPI range (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3: Expose GICD_TYPER in the rdist structure (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Drop chunk allocation compatibility (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Move minimum LPI requirements to individual busses (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Use full range of LPIs (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Refactor LPI allocator (Mark Salter) [1550500]- [netdrv] hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe() (Vitaly Kuznetsov) [1625609] - [netdrv] hv_netvsc: ignore devices that are not PCI (Vitaly Kuznetsov) [1625609] - [netdrv] hv/netvsc: Fix NULL dereference at single queue mode fallback (Vitaly Kuznetsov) [1625609] - [netdrv] hv_netvsc: Add per-cpu ethtool stats for netvsc (Vitaly Kuznetsov) [1625609] - [pci] PCI: shpchp: Separate existence of SHPC and permission to use it (Steve Best) [1622953] - [powerpc] KVM: PPC: Book3S HV: Don't truncate HPTE index in xlate function (David Gibson) [1625513] - [kernel] rh_kabi: Add macros to size and extend structs (Prarit Bhargava) [1564570] - [pci] PCI: Remove unnecessary include of (Myron Stowe) [1622672] - [wireless] iwlwifi: Remove unnecessary include of (Myron Stowe) [1622672] - [wireless] ath9k: Remove unnecessary include of (Myron Stowe) [1622672] - [netdrv] igb: Remove unnecessary include of (Myron Stowe) [1622672] - [pci] PCI/ASPM: Convert to use sysfs_match_string() helper (Myron Stowe) [1622672] - [virt] KVM: s390: Properly lock mm context allow_gmap_hpage_1m setting (Thomas Huth) [1623513] - [virt] KVM: s390: vsie: copy wrapping keys to right place (Thomas Huth) [1623513] - [virt] KVM: s390: Fix pfmf and conditional skey emulation (Thomas Huth) [1623513] - [virt] KVM: s390: Fix storage attributes migration with memory slots (Thomas Huth) [1623513] - [virt] KVM: s390: a utility function for migration (Thomas Huth) [1623513]- [lib] vsprintf: Add command line option debug_boot_weak_hash (Prarit Bhargava) [1625687] - [netdrv] i40e: Fix for Tx timeouts when interface is brought up if DCB is enabled (Stefan Assmann) [1616147] - [misc] ocxl: Fix page fault handler in case of fault on dying process (Steve Best) [1624644] - [edac] EDAC, sb_edac: Add support for systems with segmented PCI buses (Aristeu Rozanski) [1621849] - [netdrv] xen-netfront: fix warn message as irq device name has '/' (Vitaly Kuznetsov) [1576160] - [arm64] arm64, kaslr: export offset in VMCOREINFO ELF notes (Bhupesh Sharma) [1624246] - [rpmspec] redhat: Move gfs2 and dlm out of kernel-modules-extra (Andrew Price) [1623511] - [powerpc] powerpc/topology: Get topology for shared processors at boot (Steve Best) [1620039] - [fs] gfs2: Don't set GFS2_RDF_UPTODATE when the lvb is updated (Robert S Peterson) [1622057] - [fs] gfs2: improve debug information when lvb mismatches are found (Robert S Peterson) [1622057] - [fs] gfs2: cleanup: call gfs2_rgrp_ondisk2lvb from gfs2_rgrp_out (Robert S Peterson) [1622057] - [x86] Fix x86 32-bit invalid cpu boot failure message (Prarit Bhargava) [1571456] - [net] net/ipv6: init ip6 anycast rt->dst.input as ip6_input (Hangbin Liu) [1615671] - [pci] PCI/AER: Don't clear AER bits if error handling is Firmware-First (Myron Stowe) [1621933] - [pci] PCI/AER: Remove duplicate PCI_EXP_AER_FLAGS definition (Myron Stowe) [1621933] - [pci] PCI/portdrv: Remove pcie_portdrv_err_handler.slot_reset (Myron Stowe) [1621933] - [pci] PCI/AER: Clear device status bits during ERR_COR handling (Myron Stowe) [1621933] - [pci] PCI/AER: Clear device status bits during ERR_FATAL and ERR_NONFATAL (Myron Stowe) [1621933] - [pci] PCI/AER: Remove ERR_FATAL code from ERR_NONFATAL path (Myron Stowe) [1621933] - [pci] PCI/AER: Factor out ERR_NONFATAL status bit clearing (Myron Stowe) [1621933] - [pci] PCI/AER: Clear only ERR_NONFATAL bits during non-fatal recovery (Myron Stowe) [1621933] - [pci] PCI/AER: Clear only ERR_FATAL status bits during fatal recovery (Myron Stowe) [1621933] - [pci] PCI/AER: Honor "pcie_ports=native" even if HEST sets FIRMWARE_FIRST (Myron Stowe) [1621933] - [pci] PCI/AER: Add sysfs attributes for rootport cumulative stats (Myron Stowe) [1621933] - [pci] PCI/AER: Add sysfs attributes to provide AER stats and breakdown (Myron Stowe) [1621933] - [pci] PCI/AER: Define aer_stats structure for AER capable devices (Myron Stowe) [1621933] - [pci] PCI/AER: Move internal declarations to drivers/pci/pci.h (Myron Stowe) [1621933] - [pci] PCI/AER: Adopt lspci names for AER error decoding (Myron Stowe) [1621933] - [pci] PCI/AER: Expose internal API for obtaining AER information (Myron Stowe) [1621933] - [kernel] rcu: Make expedited GPs handle CPU 0 being offline (Gustavo Duarte) [1610262] - [rpmspec] Generate BootLoaderSpec config fragments ("Herton R. Krzesinski") [1619766]- [net] erspan: set erspan_ver to 1 by default when adding an erspan dev (Xin Long) [1619118] - [hv] x86/hyper-v: Fix wrong merge conflict resolution (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others() (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Check cpumask_to_vpset() return value in hyperv_flush_tlb_others_ex() (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Trace PV IPI send (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use cheaper HVCALL_SEND_IPI hypercall when possible (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use 'fast' hypercall for HVCALL_SEND_IPI (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Implement hv_do_fast_hypercall16 (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use cheaper HVCALL_FLUSH_VIRTUAL_ADDRESS_(LIST, SPACE) hypercalls when possible (Vitaly Kuznetsov) [1597652] - [netdrv] xen-netfront: fix queue name setting (Vitaly Kuznetsov) [1576160] - [scsi] lfpc: add Lancer FCoE to the removed devices (Tomas Henzl) [1602033] - [scsi] megaraid_sas: add removed id table (Tomas Henzl) [1602033] - [scsi] aacraid: add removed id table (Tomas Henzl) [1602033] - [scsi] qla4xxx: add removed id table (Tomas Henzl) [1602033] - [scsi] lpfc: add removed id table (Tomas Henzl) [1602033] - [scsi] qla2xxx: add removed id table (Tomas Henzl) [1602033] - [scsi] mpt3sas: add removed id table (Tomas Henzl) [1602033] - [scsi] be2iscsi: add removed id table (Tomas Henzl) [1602033] - [scsi] rh_taint, pci : add information about removed hardware (Tomas Henzl) [1602033] - [kernel] kernel: add SUPPORT_REMOVED kernel taint (Tomas Henzl) [1602033] - [net] sunrpc: Change rpc_print_iostats to rpc_clnt_show_stats and handle rpc_clnt clones (Dave Wysochanski) [1610373] - [net] sunrpc: Add _add_rpc_iostats() to add rpc_iostats metrics (Dave Wysochanski) [1610373] - [net] sunrpc: add _print_rpc_iostats() to output metrics for one RPC op (Dave Wysochanski) [1610373]- [net] xdp: exclude XDP from kABI guarantee (Jiri Benc) [1568551] - [kernel] rh_kabi: introduce RH_KABI_EXCLUDE (Jiri Benc) [1568551] - [powerpc] powerpc/powernv/pci: Work around races in PCI bridge enabling (Steve Best) [1620035] - [block] blk-wbt: fix IO hang in wbt_wait() (Ming Lei) [1614198] - [block] blkcg: Make blkg_root_lookup() work for queues in bypass mode (Ming Lei) [1614198] - [block] null_blk: add lock drop/acquire annotation (Ming Lei) [1614198] - [block] Blk-throttle: reduce tail io latency when iops limit is (Ming Lei) [1614198] - [block] block: paride: pd: mark expected switch fall-throughs (Ming Lei) [1614198] - [block] block: Ensure that a request queue is dissociated from the (Ming Lei) [1614198] - [block] block: Introduce blk_exit_queue() (Ming Lei) [1614198] - [block] blkcg: Introduce blkg_root_lookup() (Ming Lei) [1614198] - [block] block: Remove two superfluous #include directives (Ming Lei) [1614198] - [block] blk-mq: count the hctx as active before allocating tag (Ming Lei) [1614198] - [block] block: bvec_nr_vecs() returns value for wrong slab (Ming Lei) [1614198] - [block] drivers/block/drbd: remove the null check for (Ming Lei) [1614198] - [block] drivers/block/aoe/aoedev: NULL check is not needed for (Ming Lei) [1614198] - [block] drivers/block/mtip32xx: remove the null check for (Ming Lei) [1614198] - [block] cfq: Suppress compiler warnings about comparisons (Ming Lei) [1614198] - [block] cfq: Annotate fall-through in a switch statement (Ming Lei) [1614198] - [block] blk-wbt: Avoid lock contention and thundering herd issue in (Ming Lei) [1590363] - [block] target/loop: depend on SCSI (Ming Lei) [1614198] - [block] xen-blkfront: use true and false for boolean values (Ming Lei) [1614198] - [block] lightnvm: remove minor version check for 2.0 (Ming Lei) [1614198] - [block] scsi: Check sense buffer size at build time (Ming Lei) [1614198] - [block] libata-scsi: Move sense buffers onto stack (Ming Lei) [1614198] - [block] cdrom: Use struct scsi_sense_hdr internally (Ming Lei) [1614198] - [block] ide-cd: Remove redundant sense buffer (Ming Lei) [1614198] - [block] block: Switch struct packet_command to use struct (Ming Lei) [1614198] - [block] target: don't depend on SCSI (Ming Lei) [1614198] - [block] scsi: build scsi_common.o for all scsi passthrough request (Ming Lei) [1614198] - [block] scsi: cxlflash: Drop unused sense buffers (Ming Lei) [1614198] - [block] ide-cd: Drop unused sense buffers (Ming Lei) [1614198] - [block] blk-mq: fix updating tags depth (Ming Lei) [1611900] - [block] block: really disable runtime-pm for blk-mq (Ming Lei) [1611902] - [block] aoe: mark expected switch fall-through (Ming Lei) [1614198] - [block] block: make iolatency avg_lat exponentially decay (Ming Lei) [1614198] - [block] blk-cgroup: clear the throttle queue on fork (Ming Lei) [1614198] - [block] blk-cgroup: hold the queue ref during throttling (Ming Lei) [1614198] - [block] blk-iolatency: fix blkg leak in timer_fn (Ming Lei) [1614198] - [block] block/bsg-lib: use PTR_ERR_OR_ZERO to simplify the flow path (Ming Lei) [1614198] - [block] t10-pi: provide empty t10_pi_complete() for (Ming Lei) [1614198] - [block] block: blk_init_allocated_queue() set q->fq as NULL in the (Ming Lei) [1614198] - [block] nvme: use blk API to remap ref tags for IOs with metadata (Ming Lei) [1614198] - [block] block: move dif_prepare/dif_complete functions to block layer (Ming Lei) [1614198] - [block] block: move ref_tag calculation func to the block layer (Ming Lei) [1614198] - [block] block: don't account for split bio's size in cgroup stats (Ming Lei) [1614198] - [block] pktcdvd: Fix possible Spectre-v1 for pkt_devs (Ming Lei) [1614198] - [block] partitions/aix: append null character to print data from disk (Ming Lei) [1614198] - [block] partitions/aix: fix usage of uninitialized lv_info and lvname (Ming Lei) [1614198] - [block] readahead: stricter check for bdi io_pages (Ming Lei) [1614198] - [block] scsi: virtio_scsi: fix pi_bytes(out, in) on 4 KiB block size (Ming Lei) [1614198] - [block] block: move bio_integrity_(intervals, bytes) into blkdev.h (Ming Lei) [1614198] - [block] xen/blkfront: remove unused macros (Ming Lei) [1614198] - [block] block: allow max_discard_segments to be stacked (Ming Lei) [1614198] - [block] block: unexport bio_clone_bioset (Ming Lei) [1614198] - [block] md: remove a bogus comment (Ming Lei) [1614198] - [block] block: remove bio_clone_kmalloc (Ming Lei) [1614198] - [block] exofs: use bio_clone_fast in _write_mirror (Ming Lei) [1614198] - [block] bcache: don't clone bio in bch_data_verify (Ming Lei) [1614198] - [block] block: bio_set_pages_dirty can't see NULL bv_page in a valid (Ming Lei) [1614198] - [block] block: simplify bio_check_pages_dirty (Ming Lei) [1614198] - [block] block: Rename the null_blk_mod kernel module back into (Ming Lei) [1614198] - [block] blk-mq: fail the request in case issue failure (Ming Lei) [1614305] - [block] blk-rq-qos: make depth comparisons unsigned (Ming Lei) [1614198] - [block] blkcg: Track DISCARD statistics and output them in cgroup (Ming Lei) [1614198] - [block] block: Track DISCARD statistics and output them in stat and (Ming Lei) [1614198] - [block] block: Add and use op_stat_group() for indexing disk_stat (Ming Lei) [1614198] - [block] block: Define and use STAT_READ and STAT_WRITE (Ming Lei) [1614198] - [block] block: Add part_stat_read_accum to read across field entries (Ming Lei) [1614198] - [block] block: make bdev_ops->rw_page() take a REQ_OP instead of bool (Ming Lei) [1614198] - [block] pktcdvd: remove assignment in if condition (Ming Lei) [1614198] - [block] blk-mq: issue directly if hw queue isn't busy in case of (Ming Lei) [1614305] - [block] blk-iolatency: truncate our current time (Ming Lei) [1614198] - [block] blk-iolatency: don't change the latency window (Ming Lei) [1614198] - [block] block: remove blkdev_entry_to_request() macro (Ming Lei) [1614198] - [block] block: skd: Use pad printk format for dma_addr_t values (Ming Lei) [1614198] - [block] bsg: remove read/write support (Ming Lei) [1614198] - [block] blk-iolatency: fix max_depth comparisons (Ming Lei) [1614198] - [block] block: iolatency: avoid 64-bit division (Ming Lei) [1614198] - [block] block/DAC960.c: fix defined but not used build warnings (Ming Lei) [1614198] - [block] null_blk: add zone support (Ming Lei) [1614198] - [block] null_blk: move shared definitions to header file (Ming Lei) [1614198] - [block] block: Add default switch case to blk_pm_allow_request() to (Ming Lei) [1614198] - [block] block: fix infinite loop if the device loses discard (Ming Lei) [1614198] - [block] block, mm: remove unnecessary __GFP_HIGH flag (Ming Lei) [1614198] - [block] null_blk: remove NULLB_DEV_FL_CONFIGURED on turning off nullb (Ming Lei) [1614198] - [block] mm: skip readahead if the cgroup is congested (Ming Lei) [1614198] - [block] Documentation: add a doc for blk-iolatency (Ming Lei) [1614198] - [block] block: introduce blk-iolatency io controller (Ming Lei) [1614198] - [block] rq-qos: introduce dio_bio callback (Ming Lei) [1614198] - [block] block: remove external dependency on wbt_flags (Ming Lei) [1614198] - [block] blk-rq-qos: refactor out common elements of blk-wbt (Ming Lei) [1614198] - [block] blk-stat: export helpers for modifying blk_rq_stat (Ming Lei) [1614198] - [block] memcontrol: schedule throttling if we are congested (Ming Lei) [1614198] - [block] blkcg: add generic throttling mechanism (Ming Lei) [1614198] - [block] swap, blkcg: issue swap io with the appropriate context (Ming Lei) [1614198] - [block] blk: introduce REQ_SWAP (Ming Lei) [1614198] - [block] blk-cgroup: allow controllers to output their own stats (Ming Lei) [1614198] - [block] block: introduce bio_issue_as_root_blkg (Ming Lei) [1614198] - [block] block: add bi_blkg to the bio for cgroups (Ming Lei) [1614198] - [block] blk-mq: dequeue request one by one from sw queue if hctx is (Ming Lei) [1614305] - [block] block/loop: mark expected switch fall-through (Ming Lei) [1614198] - [block] drbd: mark expected switch fall-throughs (Ming Lei) [1614198] - [block] blk-mq: only attempt to merge bio if there is rq in sw queue (Ming Lei) [1614305] - [block] blk-mq: use list_splice_tail_init() to insert requests (Ming Lei) [1614305] - [block] blk-mq: fix typo in a function comment (Ming Lei) [1614198] - [block] blk-mq: code clean-up by adding an API to clear set->mq_map (Ming Lei) [1614198] - [block] paride: remove redundant variable n (Ming Lei) [1614198] - [block] partitions/ldm: remove redundant pointer dgrp (Ming Lei) [1614198] - [block] loop: remove redundant pointer inode (Ming Lei) [1614198] - [block] block/floppy: remove redundant variable dflags (Ming Lei) [1614198] - [block] Block: blk-throttle: set low_valid immediately once one (Ming Lei) [1614198] - [block] Blktrace: bail out early if block debugfs is not configured (Ming Lei) [1614198] - [block] block: Document how blk_update_request() handles (Ming Lei) [1614198] - [block] drbd: Do not redefine __must_hold() (Ming Lei) [1614198] - [block] blk-mq: avoid to synchronize rcu inside blk_cleanup_queue() (Ming Lei) [1597067] - [block] blk-mq: remove synchronize_rcu() from (Ming Lei) [1597067] - [block] blk-mq: introduce new lock for protecting hctx->dispatch_wait (Ming Lei) [1597067] - [block] blk-mq: don't pass **hctx to blk_mq_mark_tag_wait() (Ming Lei) [1597067] - [block] blk-mq: cleanup blk_mq_get_driver_tag() (Ming Lei) [1597067] - [block] block, bfq: give a better name to bfq_bfqq_may_idle (Ming Lei) [1614198] - [block] block, bfq: fix service being wrongly set to zero in case of (Ming Lei) [1614198] - [block] block, bfq: do not expire a queue that will deserve dispatch (Ming Lei) [1614198] - [block] block, bfq: add/remove entity weights correctly (Ming Lei) [1614198] - [block] block: Make struct request_queue smaller for (Ming Lei) [1614198] - [block] block: Inline blk_queue_nr_zones() (Ming Lei) [1614198] - [block] block: Remove bdev_nr_zones() (Ming Lei) [1614198] - [block] include/uapi/linux/blkzoned.h: Remove a superfluous __packed (Ming Lei) [1614198] - [block] block: Remove a superfluous cast from blkdev_report_zones() (Ming Lei) [1614198]- [net] tls: mark as Tech Preview (Sabrina Dubroca) [1570255] - [pci] PCI/VPD: Check for VPD access completion before checking for timeout (Myron Stowe) [1618820] - [rpmspec] redhat: remove bootwrapper subpackage (Gustavo Duarte) [1578399] - [virt] kvm: x86: Set highest physical address bits in non-present/reserved SPTEs (Paolo Bonzini) [1614808] - [virt] KVM/x86: Use CC_SET()/CC_OUT in arch/x86/kvm/vmx.c (Paolo Bonzini) [1614808] - [virt] KVM: X86: Implement PV IPIs in linux guest (Paolo Bonzini) [1614808] - [virt] KVM: X86: Add kvm hypervisor init time platform setup callback (Paolo Bonzini) [1614808] - [virt] KVM: X86: Implement "send IPI" hypercall (Paolo Bonzini) [1614808] - [virt] KVM/x86: Move X86_CR4_OSXSAVE check into kvm_valid_sregs() (Paolo Bonzini) [1614808] - [virt] KVM: x86: Skip pae_root shadow allocation if tdp enabled (Paolo Bonzini) [1614808] - [virt] KVM/MMU: Combine flushing remote tlb in mmu_set_spte() (Paolo Bonzini) [1614808] - [virt] KVM: vmx: skip VMWRITE of HOST_(FS, GS)_BASE when possible (Paolo Bonzini) [1614808] - [virt] KVM: vmx: skip VMWRITE of HOST_(FS, GS)_SEL when possible (Paolo Bonzini) [1614808] - [virt] KVM: vmx: always initialize HOST_(FS, GS)_BASE to zero during setup (Paolo Bonzini) [1614808] - [virt] KVM: vmx: move struct host_state usage to struct loaded_vmcs (Paolo Bonzini) [1614808] - [virt] KVM: vmx: compute need to reload FS/GS/LDT on demand (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: remove a misleading comment regarding vmcs02 fields (Paolo Bonzini) [1614808] - [virt] KVM: vmx: rename __vmx_load_host_state() and vmx_save_host_state() (Paolo Bonzini) [1614808] - [virt] KVM: vmx: add dedicated utility to access guest's kernel_gs_base (Paolo Bonzini) [1614808] - [virt] KVM: vmx: track host_state.loaded using a loaded_vmcs pointer (Paolo Bonzini) [1614808] - [virt] KVM: vmx: refactor segmentation code in vmx_save_host_state() (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Fix fault priority for VMX operations (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Fix fault vector for VMX operation at CPL > 0 (Paolo Bonzini) [1614808] - [virt] KVM: try __get_user_pages_fast even if not in atomic context (Paolo Bonzini) [1614808] - [virt] KVM: vmx: Add tlb_remote_flush callback support (Paolo Bonzini) [1614808] - [virt] KVM: x86: Add tlb remote flush callback in kvm_x86_ops (Paolo Bonzini) [1614808] - [virt] X86/Hyper-V: Add hyperv_nested_flush_guest_mapping ftrace support (Paolo Bonzini) [1614808] - [virt] X86/Hyper-V: Add flush HvFlushGuestPhysicalAddressSpace hypercall support (Paolo Bonzini) [1614808] - [virt] x86/kvm: Don't use pvqspinlock code if only 1 vCPU (Paolo Bonzini) [1614808] - [virt] KVM/MMU: Simplify __kvm_sync_page() function (Paolo Bonzini) [1614808] - [virt] kvm: x86: Remove CR3_PCID_INVD flag (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add multi-entry LRU cache for previous CR3s (Paolo Bonzini) [1614808] - [virt] kvm: x86: Flush only affected TLB entries in kvm_mmu_invlpg* (Paolo Bonzini) [1614808] - [virt] kvm: x86: Skip shadow page resync on CR3 switch when indicated by guest (Paolo Bonzini) [1614808] - [virt] kvm: x86: Support selectively freeing either current or previous MMU root (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add a root_hpa parameter to kvm_mmu->invlpg() (Paolo Bonzini) [1614808] - [virt] kvm: x86: Skip TLB flush on fast CR3 switch when indicated by guest (Paolo Bonzini) [1614808] - [virt] kvm: vmx: Support INVPCID in shadow paging mode (Paolo Bonzini) [1614808] - [virt] kvm: x86: Propagate guest PCIDs to host PCIDs (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add ability to skip TLB flush when switching CR3 (Paolo Bonzini) [1614808] - [virt] kvm: x86: Use fast CR3 switch for nested VMX (Paolo Bonzini) [1614808] - [virt] kvm: x86: Support resetting the MMU context without resetting roots (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add support for fast CR3 switch across different MMU modes (Paolo Bonzini) [1614808] - [virt] kvm: x86: Introduce KVM_REQ_LOAD_CR3 (Paolo Bonzini) [1614808] - [virt] kvm: x86: Introduce kvm_mmu_calc_root_page_role() (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add fast CR3 switch code path (Paolo Bonzini) [1614808] - [virt] kvm: x86: Avoid taking MMU lock in kvm_mmu_sync_roots if no sync is needed (Paolo Bonzini) [1614808] - [virt] kvm: x86: Make sync_page() flush remote TLBs once only (Paolo Bonzini) [1614808] - [virt] KVM: MMU: drop vcpu param in gpte_access (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Separate logic allocating shadow vmcs to a function (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Mark vmcs header as shadow in case alloc_vmcs_cpu() allocate shadow vmcs (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Expose VMCS shadowing to L1 guest (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Do not forward VMREAD/VMWRITE VMExits to L1 if required so by vmcs12 vmread/vmwrite bitmaps (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: vmread/vmwrite: Use shadow vmcs12 if running L2 (Paolo Bonzini) [1614808] - [virt] KVM: selftests: add tests for shadow VMCS save/restore (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: include shadow vmcs12 in nested state (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Cache shadow vmcs12 on VMEntry and flush to memory on VMExit (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Verify VMCS shadowing VMCS link pointer (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Verify VMCS shadowing controls (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Introduce nested_cpu_has_shadow_vmcs() (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Fail VMLAUNCH and VMRESUME on shadow VMCS (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Allow VMPTRLD for shadow VMCS if vCPU supports VMCS shadowing (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Change vmcs12(read, write)_any() to receive vmcs12 as parameter (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Create struct for VMCS header (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add test for nested state save/restore (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Introduce KVM_CAP_NESTED_STATE (Paolo Bonzini) [1614808] - [virt] KVM: x86: do not load vmcs12 pages while still in SMM (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add basic test for state save and restore (Paolo Bonzini) [1614808] - [virt] kvm: selftests: ensure vcpu file is released (Paolo Bonzini) [1614808] - [virt] kvm: selftests: actually use all of lib/vmx.c (Paolo Bonzini) [1614808] - [virt] kvm: selftests: create a GDT and TSS (Paolo Bonzini) [1614808] - [virt] KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd (Paolo Bonzini) [1614808] - [virt] KVM: vmx: remove save/restore of host BNDCGFS MSR (Paolo Bonzini) [1614808] - [virt] KVM: Switch 'requests' to be 64-bit (explicitly) (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add cr4_cpuid_sync_test (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Read kvm->arch.emul_smt_mode under kvm->lock (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Allow creating max number of VCPUs on POWER9 (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Pack VCORE IDs to access full VCPU ID space (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Fix constant size warning (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Add of_node_put() in success path (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S: Fix matching of hardware and emulated TCE tables (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Remove mmio_vsx_tx_sx_enabled in KVM MMIO emulation (Paolo Bonzini) [1614808]- [net] tcp: Add tcp_clamp_rto_to_user_timeout() helper to improve accuracy (Michael Cambria) [1605024] - [net] tcp: Add tcp_retransmit_stamp() helper routine (Michael Cambria) [1605024] - [net] tcp: convert icsk_user_timeout from jiffies to msecs (Michael Cambria) [1605024] - [kernel] Revert sched/fair: Consider SD_NUMA when selecting the most idle group to schedule on (Lauro Ramos Venancio) [1585746] - [kernel] redhat: makefile: adjust KBUILD_CFLAGS to reflect kernel.spec for powerpc builds (Gustavo Duarte) [1582568] - [rpmspec] redhat: spec: build ppc64le kernel with -O3 (Gustavo Duarte) [1582568] - [scsi] scsi: csiostor: update csio_get_flash_params() (Arjun Vynipadath) [1503574] - [scsi] csiostor: Add a soft dep on cxgb4 driver (Arjun Vynipadath) [1503574] - [firmware] dell_rbu: make firmware payload memory uncachable (Charles Rose) [1584401]- [scsi] scsi: lpfc: update driver version to 12.0.0.6 (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Remove lpfc_enable_pbde as module parameter (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Correct LCB ACCept payload (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Limit tracking of tgt queue depth in fast path (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix driver crash when re-registering NVME rports (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix list corruption on the completion queue (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix sysfs Speed value on CNA ports (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix ELS abort on SLI-3 adapters (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: remove null check on nvmebuf (Dick Kennedy) [1613913] - [arm64] arm64: fix ACPI dependencies (Bhupesh Sharma) [1556832] - [arm64] arm64: acpi: fix alignment fault in accessing ACPI (Bhupesh Sharma) [1556832] - [firmware] efi/arm: map UEFI memory map even w/o runtime services enabled (Bhupesh Sharma) [1556832] - [firmware] efi/arm: preserve early mapping of UEFI memory map longer for BGRT (Bhupesh Sharma) [1556832] - [acpi] drivers: acpi: add dependency of EFI for arm64 (Bhupesh Sharma) [1556832] - [arm64] arm64: export memblock_reserve()d regions via /proc/iomem (Bhupesh Sharma) [1556832] - [arm64] arm64: kconfig: Ensure spinlock fastpaths are inlined if !PREEMPT (Waiman Long) [1607924] - [arm64] arm64: locking: Replace ticket lock implementation with qspinlock (Waiman Long) [1607924] - [arm64] arm64: barrier: Implement smp_cond_load_relaxed (Waiman Long) [1607924] - [scsi] scsi: lpfc: Revise copyright for new company language (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: update driver version to 12.0.0.5 (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: devloss timeout race condition caused null pointer reference (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix NVME Target crash in defer rcv logic (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Support duration field in Link Cable Beacon V1 command (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Make PBDE optimizations configurable (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix abort error path for NVMET (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix panic if driver unloaded when port is offline (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix driver not setting dpp bits correctly in doorbell word (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Add Buffer overflow check, when nvme_info larger than PAGE_SIZE (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: use monotonic timestamps for statistics (Dick Kennedy) [1600946] - [x86] mark intel knights landing and knights mill unsupported (David Arcari) [1610493] - [netdrv] igb: Remove superfluous reset to PHY and page 0 selection (Corinna Vinschen) [1612824] - [tools] selftests/powerpc: Fix ptrace-pkey for default execute permission change (Steve Best) [1498799] - [tools] selftests/powerpc: Fix core-pkey for default execute permission change (Steve Best) [1498799] - [powerpc] powerpc/pkeys: make protection key 0 less special (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Preallocate execute-only key (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Fix calculation of total pkeys (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Save the pkey registers before fork (Steve Best) [1498799] - [powerpc] powerpc/pkeys: key allocation/deallocation must not change pkey registers (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Deny read/write/execute by default (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Give all threads control of their key permissions (Steve Best) [1498799] - [s390] KVM: s390: Add huge page enablement control (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge page gmap linking support (David Hildenbrand) [1508102] - [s390] s390/mm: hugetlb pages within a gmap can not be freed (David Hildenbrand) [1508102] - [s390] KVM: s390: Beautify skey enable check (David Hildenbrand) [1508102] - [s390] KVM: s390: Add skey emulation fault handling (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge pmd storage key handling (David Hildenbrand) [1508102] - [s390] s390/mm: Clear skeys for newly mapped huge guest pmds (David Hildenbrand) [1508102] - [s390] s390/mm: Clear huge page storage keys on enable_skey (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge page dirty sync support (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd invalidation and clearing (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd notification bit setting (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd linking (David Hildenbrand) [1508102] - [s390] s390/mm: Abstract gmap notify bit setting (David Hildenbrand) [1508102] - [s390] s390/mm: Make gmap_protect_range more modular (David Hildenbrand) [1508102] - [s390] KVM: s390: Replace clear_user with kvm_clear_guest (David Hildenbrand) [1508102] - [hwmon] hwmon: (ibmpowernv) Add attributes to enable/disable sensor groups (Steve Best) [1524684] - [powerpc] powerpc/powernv: Add support to enable sensor groups (Steve Best) [1524684] - [net] net/smc: improve delete link processing (Hendrik Brueckner) [1548452] - [net] net/smc: provide fallback reason code (Hendrik Brueckner) [1548452] - [net] net/smc: use correct vlan gid of RoCE device (Hendrik Brueckner) [1548452] - [net] net/smc: fewer parameters for smc_llc_send_confirm_link() (Hendrik Brueckner) [1548452] - [net] net/smc: remove local variable page in smc_rx_splice() (Hendrik Brueckner) [1548452] - [net] net/smc: use DECLARE_BITMAP for rtokens_used_mask (Hendrik Brueckner) [1548452] - [net] net/smc: add function to get link group from link (Hendrik Brueckner) [1548452] - [net] net/smc: eliminate cursor read and write calls (Hendrik Brueckner) [1548452] - [net] net/smc: provide smc mode in smc_diag.c (Hendrik Brueckner) [1548452] - [s390] s390/ism: add device driver for internal shared memory (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D diag support (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in af_smc (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in data transfer (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in CLC messages (Hendrik Brueckner) [1548452] - [net] net/smc: add pnetid support for SMC-D and ISM (Hendrik Brueckner) [1548452] - [net] net/smc: add base infrastructure for SMC-D and ISM (Hendrik Brueckner) [1548452] - [net] net/smc: add pnetid support (Hendrik Brueckner) [1548452] - [net] net/smc: determine port attributes independent from pnet table (Hendrik Brueckner) [1548452] - [x86] mark whiskey-lake processor supported (David Arcari) [1609604] - [s390] KVM: s390: add etoken support for guests (Thomas Huth) [1612110] - [char] ipmi: do not configure ipmi for HPE m400 (Tony Camuso) [1583537] - [scsi] scsi: ipr: Format HCAM overlay ID 0x41 (Steve Best) [1498222] - [x86] x86/stacktrace: Enable HAVE_RELIABLE_STACKTRACE for the ORC unwinder (Joe Lawrence) [1587952] - [x86] x86/unwind/orc: Detect the end of the stack (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Do not fail for ORC with regs on stack (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Clarify the reliable success paths (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Remove STACKTRACE_DUMP_ONCE (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Do not unwind after user regs (Joe Lawrence) [1587952] - [infiniband] IB/rxe: Mark Soft-RoCE Transport driver as tech-preview (Don Dutile) [1605216] - [scsi] scsi: smartpqi: bump driver version to 1.1.4-130 (Don Brace) [1503736] - [scsi] scsi: smartpqi: fix critical ARM issue reading PQI index registers (Don Brace) [1503736] - [scsi] scsi: smartpqi: add inspur advantech ids (Don Brace) [1503736] - [scsi] scsi: smartpqi: improve error checking for sync requests (Don Brace) [1503736] - [scsi] scsi: smartpqi: improve handling for sync requests (Don Brace) [1503736] - [netdrv] ice: mark driver as tech-preview (Jonathan Toppins) [1495347] - [init] init/Kconfig: remove EXPERT from CHECKPOINT_RESTORE (Adrian Reber) [1568995 1557617 1525389] - [scsi] be2iscsi: remove BE3 family support (Maurizio Lombardi) [1598366] - [x86] update rh_check_supported processor list (David Arcari) [1595918] - [kernel] kABI: Add generic kABI macros to use for kABI workarounds (Myron Stowe) [1546831] - [pci] add pci_hw_vendor_status() (Maurizio Lombardi) [1590829] - [ata] ahci: thunderx2: Fix for errata that affects stop engine (Robert Richter) [1563590] - [pci] Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon (Robert Richter) [1563590] - [kernel] bpf: set default values for bpf_jit_harden and bpf_jit_kallsyms (Eugene Syromiatnikov) [1569061] - [kernel] bpf: Add tech preview taint for syscall (Eugene Syromiatnikov) [1559877] - [kernel] bpf: set unprivileged_bpf_disabled to 1 by default, add a boot parameter (Eugene Syromiatnikov) [1561171] - [kernel] add Red Hat-specific taint flags (Eugene Syromiatnikov) [1559877] - [tools] perf tests: Add Python 3 support to attr.py ("Herton R. Krzesinski") [1561505] - [tools] perf scripts python: Add Python 3 support to stat-cpi.py ("Herton R. Krzesinski") [1561505] - [kernel] kdump: fix a grammar issue in a kernel message (Dave Young) [1507353] - [scripts] tags.sh: Ignore redhat/rpm (Prarit Bhargava) [1582586] - [kernel] put RHEL info into generated headers (Prarit Bhargava) [1544999] - [kernel] kdump: add support for crashkernel=auto (Dave Young) [1507353] - [kernel] kdump: round up the total memory size to 128M for crashkernel reservation (Dave Young) [1507353] - [arm64] acpi: prefer booting with ACPI over DTS (Mark Salter) [1576869] - [acpi] aarch64: acpi scan: Fix regression related to X-Gene UARTs (Mark Salter) [1519554] - [acpi] ACPI / irq: Workaround firmware issue on X-Gene based m400 (Mark Salter) [1519554] - [x86] add rh_check_supported (David Arcari) [1565717] - [scsi] qla2xxx: Remove PCI IDs of deprecated adapter (Himanshu Madhani) [1572233] - [scsi] be2iscsi: remove unsupported device IDs (Chris Leech) [1574502] - [scsi] Removing Obsolete hba pci-ids from rhel8 (Dick Kennedy) [1572321] - [scsi] hpsa: modify hpsa driver version (Joseph Szczypek) [1471185] - [scsi] hpsa: remove old cciss-based smartarray pci ids (Joseph Szczypek) [1471185] - [kernel] rh_taint: add support for marking driver as unsupported (Jonathan Toppins) [1565704] - [kernel] rh_taint: add support (David Arcari) [1565704] - [scsi] qla4xxx: Remove deprecated PCI IDs from RHEL 8 (Chad Dupuis) [1518874] - [scsi] aacraid: Remove depreciated device and vendor PCI id's (Raghava Aditya Renukunta) [1495307] - [scsi] megaraid_sas: remove deprecated pci-ids (Tomas Henzl) [1509329] - [scsi] mpt*: remove certain deprecated pci-ids (Tomas Henzl) [1511953] - [kernel] modules: add rhelversion MODULE_INFO tag (Prarit Bhargava) [1544999] - [acpi] ACPI: APEI: arm64: Ignore broken HPE moonshot APEI support (Al Stone) [1518076] - [rpmspec] compute content hash for kernel-headers (Rafael Aquini) [1613003] - [rpmspec] compress modules on all architectures ("Herton R. Krzesinski") [1614556] - [rpmspec] add gcov rpm packaging support (Jan Stancek) [1601733] - [rpmspec] don't ship spdxcheck.py (Jakub Racek) - [rpmspec] clean stray bpf files (Jakub Racek) [1593309] - [rpmspec] Copy symvers.gz to /lib/modules (Eugene Syromiatnikov) [1609695] - [rpmspec] Add kabi-dup related code into specfile (Petr Oros) [1585672] - [rpmspec] kernel spec: Add and enable kabi check (Petr Oros) [1585672] - [rpmspec] Enable warning checks for configs in rpm build (Prarit Bhargava) [1589858] - [rpmspec] remove workaround for rst2man-3 from python3-docutils ("Herton R. Krzesinski") [1602148] - [rpmspec] fix dist tag used for hardlink in kernel-devel post ("Herton R. Krzesinski") [1596397] - [scripts] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override (Prarit Bhargava) [1595727] - [rpmspec] drop kernel package dependency on python2 ("Herton R. Krzesinski") [1561505] - [kernel] Makefile: Move RHEL definitions down (Jakub Racek) [1576568] - [rpmspec] eBPF: Add bpftool package to spec file (Jerome Marchand) [1559607] - [rpmspec] fix conflicts with COPYING file while installing newer 4.17 kernel ("Herton R. Krzesinski") [1579563] - [rpmspec] do not build kernel meta-package on noarch ("Herton R. Krzesinski") [1579512] - [rpmspec] kernel spec: remove copy of arch/x86/purgatory/sha256.* ("Herton R. Krzesinski") - [rpmspec] spec: Add new arch/powerpc/kernel/module.lds file to kernel-devel rpm (Steve Best) [1572553] - [rpmspec] kernel spec: fix recent build errors from brp-mangle-shebangs ("Herton R. Krzesinski") [1575966] - [rpmspec] Add i386 to ExclusiveArch to fix noarch package build ("Herton R. Krzesinski") [1575152] - [rpmspec] Build kernel-abi-whitelists package (Petr Oros) [1571189] - [rpmspec] kernel spec: build bzImage for s390 (Hendrik Brueckner) [1570041] - [rpmspec] kernel spec: arm64: package module.lds in kernel-devel (Mark Salter) [1569014] - [rpmspec] Re-enable debuginfo packages and fix build with current dist tag ("Herton R. Krzesinski") [1568901] - [rpmspec] kernel spec: build kernel-debug on all architectures ("Herton R. Krzesinski") [1567367] - [rpmspec] don't build kernel meta-package if we are only building kernel headers ("Herton R. Krzesinski") - [rpmspec] remove use_vdso macro ("Herton R. Krzesinski") - [rpmspec] build perf and tools man pages instead of relying on a separate tarball ("Herton R. Krzesinski") - [rpmspec] disable debug build if arch is in nobuildarches list ("Herton R. Krzesinski") - [rpmspec] remove fedora changelog from spec file ("Herton R. Krzesinski") - [rpmspec] only support ppc64le builds ("Herton R. Krzesinski") - [rpmspec] remove x86 32-bit package support ("Herton R. Krzesinski") - [rpmspec] remove arm 32-bit package support ("Herton R. Krzesinski") - [rpmspec] remove configuration generation support from kernel spec file ("Herton R. Krzesinski") - [rpmspec] remove broken out patches from kernel spec file ("Herton R. Krzesinski") - [rpmspec] import kernel spec from rhel8 bootstrap dist-git ("Herton R. Krzesinski")/bin/sh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  !!!!!!!!!! ! ! ! ! !!!!!!!!!!!!!!!!!!! !!!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""" " " " " """"""""""""""""""" "!"""#"$"%"&"'"(")"*"+","-"."/"0"1"2"3"4"5"6"7"8"9":";"<"=">"?"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""########## # # # # ################### #!#"###$#%#&#'#(#)#*#+#,#-#.#/#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~#################################################################################################################################$$$$$$$$$$ $ $ $ $ $$$$$$$$$$$$$$$$$$$ $!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%% % % % % %%%%%%%%%%%%%%%%%%% %!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%{%|%}%~%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&& & & & & &&&&&&&&&&&&&&&&&&& &!&"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?&@&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z&[&\&]&^&_&`&a&b&c&d&e&f&g&h&i&j&k&l&m&n&o&p&q&r&s&t&u&v&w&x&y&z&{&|&}&~&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''' ' ' ' ' ''''''''''''''''''' '!'"'#'$'%'&'''(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9':';'<'='>'?'@'A'B'C'D'E'F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'w'x'y'z'{'|'}'~'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''(((((((((( ( ( ( ( ((((((((((((((((((( (!("(#($(%(&('((()(*(+(,(-(.(/(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z({(|(}(~((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))) ) ) ) ) ))))))))))))))))))) )!)")#)$)%)&)')()))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z){)|)})~)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))********** * * * * ******************* *!*"*#*$*%*&*'*(*)***+*,*-*.*/*0*1*2*3*4*5*6*7*8*9*:*;*<*=*>*?*@*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*[*\*]*^*_*`*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*{*|*}*~*********************************************************************************************************************************++++++++++ + + + + +++++++++++++++++++ +!+"+#+$+%+&+'+(+)+*+++,+-+.+/+0+1+2+3+4+5+6+7+8+9+:+;+<+=+>+?+@+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+[+\+]+^+_+`+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+{+|+}+~+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++,,,,,,,,,, , , , , ,,,,,,,,,,,,,,,,,,, ,!,",#,$,%,&,',(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,{,|,},~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---------- - - - - ------------------- -!-"-#-$-%-&-'-(-)-*-+-,---.-/-0-1-2-3-4-5-6-7-8-9-:-;-<-=->-?-@-A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z-[-\-]-^-_-`-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z-{-|-}-~---------------------------------------------------------------------------------------------------------------------------------.......... . . . . ................... .!.".#.$.%.&.'.(.).*.+.,.-.../.0.1.2.3.4.5.6.7.8.9.:.;.<.=.>.?.@.A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.[.\.].^._.`.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.{.|.}.~.................................................................................................................................////////// / / / / /////////////////// /!/"/#/$/%/&/'/(/)/*/+/,/-/.///0/1/2/3/4/5/6/7/8/9/:/;/</=/>/?/@/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/[/\/]/^/_/`/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/{/|/}/~/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////0000000000 0 0 0 0 0000000000000000000 0!0"0#0$0%0&0'0(0)0*0+0,0-0.0/000102030405060708090:0;0<0=0>0?0@0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)1*1+1,1-1.1/101112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111112222222222 2 2 2 2 2222222222222222222 2!2"2#2$2%2&2'2(2)2*2+2,2-2.2/202122232425262728292:2;2<2=2>2?2@2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{2|2}2~2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222223333333333 3 3 3 3 3333333333333333333 3!3"3#3$3%3&3'3(3)3*3+3,3-3.3/303132333435363738393:3;3<3=3>3?3@3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3[3\3]3^3_3`3a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3{3|3}3~3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333334444444444 4 4 4 4 4444444444444444444 4!4"4#4$4%4&4'4(4)4*4+4,4-4.4/404142434445464748494:4;4<4=4>4?4@4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z4[4\4]4^4_4`4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4{4|4}4~4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444445555555555 5 5 5 5 5555555555555555555 5!5"5#5$5%5&5'5(5)5*5+5,5-5.5/505152535455565758595:5;5<5=5>5?5@5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z5[5\5]5^5_5`5a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5{5|5}5~5555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555556666666666 6 6 6 6 6666666666666666666 6!6"6#6$6%6&6'6(6)6*6+6,6-6.6/606162636465666768696:6;6<6=6>6?6@6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6[6\6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6{6|6}6~6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666667777777777 7 7 7 7 7777777777777777777 7!7"7#7$7%7&7'7(7)7*7+7,7-7.7/707172737475767778797:7;7<7=7>7?7@7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z7[7\7]7^7_7`7a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7{7|7}7~7777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777778888888888 8 8 8 8 8888888888888888888 8!8"8#8$8%8&8'8(8)8*8+8,8-8.8/808182838485868788898:8;8<8=8>8?8@8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z8[8\8]8^8_8`8a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}8~8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888889999999999 9 9 9 9 9999999999999999999 9!9"9#9$9%9&9'9(9)9*9+9,9-9.9/909192939495969798999:9;9<9=9>9?9@9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z9[9\9]9^9_9`9a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9t9u9v9w9x9y9z9{9|9}9~999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999:::::::::: : : : : ::::::::::::::::::: :!:":#:$:%:&:':(:):*:+:,:-:.:/:0:1:2:3:4:5:6:7:8:9:::;:<:=:>:?:@:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:[:\:]:^:_:`:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:}:~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;;;; ; ; ; ; ;;;;;;;;;;;;;;;;;;; ;!;";#;$;%;&;';(;);*;+;,;-;.;/;0;1;2;3;4;5;6;7;8;9;:;;;<;=;>;?;@;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;[;\;];^;_;`;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z;{;|;};~;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<<< < < < < <<<<<<<<<<<<<<<<<<< =?=@=A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=[=\=]=^=_=`=a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z={=|=}=~=================================================================================================================================>>>>>>>>>> > > > > >>>>>>>>>>>>>>>>>>> >!>">#>$>%>&>'>(>)>*>+>,>->.>/>0>1>2>3>4>5>6>7>8>9>:>;><>=>>>?>@>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R>S>T>U>V>W>X>Y>Z>[>\>]>^>_>`>a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v>w>x>y>z>{>|>}>~>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>?????????? ? ? ? ? ??????????????????? ?!?"?#?$?%?&?'?(?)?*?+?,?-?.?/?0?1?2?3?4?5?6?7?8?9?:?;?<?=?>???@?A?B?C?D?E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?[?\?]?^?_?`?a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?s?t?u?v?w?x?y?z?{?|?}?~?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????@@@@@@@@@@ @ @ @ @ @@@@@@@@@@@@@@@@@@@ @!@"@#@$@%@&@'@(@)@*@+@,@-@.@/@0@1@2@3@4@5@6@7@8@9@:@;@<@=@>@?@@@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@[@\@]@^@_@`@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@{@|@}@~@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AAAAAAAAAA A A A A AAAAAAAAAAAAAAAAAAA A!A"A#A$A%A&A'A(A)A*A+A,A-A.A/A0A1A2A3A4A5A6A7A8A9A:A;A<A=A>A?A@AAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZA[A\A]A^A_A`AaAbAcAdAeAfAgAhAiAjAkAlAmAnAoApAqArAsAtAuAvAwAxAyAzA{A|A}A~AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBB B B B B BBBBBBBBBBBBBBBBBBB B!B"B#B$B%B&B'B(B)B*B+B,B-B.B/B0B1B2B3B4B5B6B7B8B9B:B;B<B=B>B?B@BABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBUBVBWBXBYBZB[B\B]B^B_B`BaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzB{B|B}B~BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCC C C C C CCCCCCCCCCCCCCCCCCC C!C"C#C$C%C&C'C(C)C*C+C,C-C.C/C0C1C2C3C4C5C6C7C8C9C:C;C<C=C>C?C@CACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC[C\C]C^C_C`CaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzC{C|C}C~CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD[D\D]D^D_D`DaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzD{D|D}D~DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEE E E E E EEEEEEEEEEEEEEEEEEE E!E"E#E$E%E&E'E(E)E*E+E,E-E.E/E0E1E2E3E4E5E6E7E8E9E:E;E<E=E>E?E@EAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE[E\E]E^E_E`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzE{E|E}E~EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFF F F F F FFFFFFFFFFFFFFFFFFF F!F"F#F$F%F&F'F(F)F*F+F,F-F.F/F0F1F2F3F4F5F6F7F8F9F:F;F<F=F>F?F@FAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF[F\F]F^F_F`FaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF{F|F}F~FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGG G G G G GGGGGGGGGGGGGGGGGGG G!G"G#G$G%G&G'G(G)G*G+G,G-G.G/G0G1G2G3G4G5G6G7G8G9G:G;G<G=G>G?G@GAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG[G\G]G^G_G`GaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG{G|G}G~GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHH H H H H HHHHHHHHHHHHHHHHHHH H!H"H#H$H%H&H'H(H)H*H+H,H-H.H/H0H1H2H3H4H5H6H7H8H9H:H;H<H=H>H?H@HAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH[H\H]H^H_H`HaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzH{H|H}H~HHHHH4.18.0-552.el84.18.0-552.el84.18.0-552.el84.18.0-552.el8.ppc64le          !!""#$%%%&&''(())**+++,,---..//0001122233445566667788999:::;;;<<<==>>>??@@AABBCCDDEEFFGGHHHIIJJKKLLLMMNNOOPPQQRRRSSTTUUVVWWWXXYYZZZ[[\\]]^^___``aabbccddeeffggghhhiiijjkkllmnopqqrssttuuvvwvxyz{|}}}}}~~}}}}}}}}}          !!!"!#$$$%&'''(')'*+++,,-+.+/+01234555657589::;<<<=<>??@@AABACDEEFGHHIJJJKJLJMJNOPPPQPRPSPTPUVWWXWYWZ[[[[\\][^^_[`[abbbbccdbebfbgbhhiiijkiliminooooppqorosotouovwwwwwxwywz{{{{{{{{{{{{{{|}}}}|~~~~~~~~~~~~~~~~~~||{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{{zzwwwwwwwwwwww      !!"#$$%$&$'((()(*+,--.-/-00102030405-6-7889:;;<=>?@@A@B@C@D@E@@FFG@HI@J@K@L@M@N@OPQRSSTUVVVWVXYZZ[[[[\\]\^\_\`[a[b[c[d[efegehiiiijjkklllmmlnnooopppqorrrsrttruurvvrwwrxxryyozzo{{o||o}}o~~oooooooooooooooooooo o  o  o  o  oooooo !! "" ## $$$%$&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?&@&A&B&C&D&E$FG$HIHJHKHLHM NNONPPQPRNSSTSUSVWWXXYYZZ[[\\\]]\^^\__\``\aabbccddeeffgghhhiihjjkllmmmmmmnooppqqrrssttuuvvwxxxyyxzz{{||}}~~oooooooooooooooo            ooooooo   !! "" ## $$ %%&&'''(('))**+++,+--+..+//+0+11+2233344555665775885995::5;;5<<5==5>>5??5@@AA5BB5CC5DD5EE5FF5GG5HH5II5JJ5KK5LL5MM5NN5OO5PP5QQ5RR5SSTTTUUTVVTWWTXTYTZZT[T\\T]]T^T_T`TaTbTccTdTefegThhTijTkTlTmTnToTppTqrqssqtquqvTwTxTyTzzT{{T|T}}~~~~~ooooooooo           !"""#"$"%"&"'''(')"*++,,,--..//0001122333445566777887997::;;<<<=>>>?>@@A@BCCDDDEEFFGGGHGIIJJJKJLJMJNJOJPJQJRJSJTJUJVWWWXYYZZZ[[Z\]]]^]_]``a]b]c]d]e]f]gZhhZiiZjjkkllmmmnooppqqqrsstttuvvvwwxwywzz{w|}}~~       o  !!""##$$o%%%&&&''&((&))&**&++%,,o-o..o///00/11o22o3334o55o66o77o888999::8;;;<<8==8>>8??o@@oAAABoCCCDDCEECFFCGGCHHCIICJJCKKCLLCMMCNNCOOCPPCQQCRRCSSoTTTUUTVVTWWTXXTYYTZZT[[T\\T]]T^^T__T``TaaTbbTcTddTeeTffTggThhTiiTjjTkkTllommmnnmoomppmqqmrmssstttuusvswwwxxwyywzzw{{w||o}}}~~}}ooooooooooooooooooooooooooo                      !! "" ## $$ %% && ''(())**++,,--.//001122334455667788899:::;<<==>>>?>@AABBCCDDEEEFFEGGEHHIIJJJKKJLLMMNNOOPPQQRRSSoTTTUUUVVTWWTXXTYYoZo[[[\\o]]]^^]___``]aa]bb]cc]dd]eeoffoggghhgigjjgkllkkkmkngooppoqqqrrqsqttquuqvvqwwqxxqyyqzq{{{|{}}{~~~~qqqqqqqqqqqqqqqoooooooooooooo         !!""##$$%%&''(())**+,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-------,,,+................./////////////////////...........................................................................................................0.....+111111+22222324425262272892:222;22<2=2>?@>ABC>DEDFFDGH>IJKILMINIOIPQIRISTIUIIVIWIXIYZII[\]I^_II`IaIbIcIddIefIgIh>ijk>l>m>nop>q>rstt>uvvwwvxxyy>>z{>||>}~}}}}>>>>>222222222222222222222222222222222222222222222222222222222222222222222 222                               2 22 2   2                  22   2   2 ! ! " # " $ ! ! % & '2 (2 ) ) ) ) ) ) * * ) ) ) ) )22 +2 ,2 -2 . / . 0 . . . . 12 2 3 3 32 422 5 6 7 5 5 8 5 5 9 5 5 : ; 52 <22 =2 >2 ? @ @2 A22 B22 C D22222 E F E G E H2 I22 J K K J J2 L M L2 N22 O P Q R22 S2 T T U V W U X Y X X X X X X X U T T Z [ [ T T \ T222 ]2 ^ ^2 _ _ ` _222 a222 b c22 d d d d d d d d d d e d d d d d d d f d d g d d d d d d d d d d d d d d d d d h h h i h h j j k k h h l d d m m m m d d d d d d d n d d d d d o d d d d d d d d p p d d d d d d d q d d d d d d d d d d d r d d d d d d d d d d d d d d d s d d t t u u u u d d d d d222 v w x v v v222 y22 z z z z2 {22 |2 } ~22 2 22 2 2 2 2 222 222 22 2 2 22222 2 2 2 2 2 222 2 2222 2 2 2 22 22 22 2 2 22 2 2 2 22 2222 2 222 2 22 2 2 2 22 22  2      22                           2 22 2 2  22   2 22   2   2 2 2       222      !22 "222 # $ #2 % & %2 '22 ( ( ) ( (22 *2 + + , , -2 .22 /2 0 0 0 0 1 0 2 0 0 3 3 0 0 0 4 4 4 4 5 0 6 0 7 0 8 0 9 0 : ; 0 < = 0 > 0 ? 0222 @ A B2 C C D E2 F F F F22 G G G G22 H I H2 J2 K22 L2 M M N2 O P2 Q2 R R R S2 T U2 V W W X W W Y Z Z [ W \ W ] W W ^ V _ ` V a V b b V c c d e V f V g h V i V j k V l m l V n V o p V q r V s V V t V u V v w V x x V V y z V V { { | { { { } ~ V  V V V V V V V V V V V V V V V V V V 22 22 22 22 2 2 2 2 2 2 22 2 22 2 22 2 222 22 22 22 22 2 22 222222 2 2 22 2222 2222 22 22 2 22 2 2 2    2 22                       22        2  2 2  2       22 2            !  " # " " " " " " $ $ $ $ " " " " % % % % % % %  & &  ' ' '    ( ) ) ) ( * * * * * * * * * * * * ( + (   , , , , , , , , , - . , , , , / , 0 0 1 0 0 0 0 , , , , 2 3 , 4 , ,2 5 6 6 6 6 7 7 7 7 7 7 7 7 7 6 6 6 6 8 8 8 82 92 : ; : : < < : = : : : : :2 >22 ? ? ? ? @ A ? B ? C ? D ? E ? F ? G ? ? H ? ?222 I J J I I I K K I L I M N I I O I P I Q I R I I S I I T I I U I I2 V W V X V V Y V V22 Z [2 \ ] \ \ ^ \22 _ _ _ ` ` ` a ` _ _ b c c c c b b _ _ _ _ _ d _ e222 f22 g g g22 h222 i i j k22 l l m2 n2 o p o q o22 r r222 s s2 t22 u22 v w v v x v2 y22 z {2222 | } | | ~ |22      22 2 2 2 222222 22 22 222 22 22 2 2 2 2 22 2 22 22 22 2 2 2 2 22 2222 2 2 2 2 22 22 2 2 2 222 2 2 2 222 2 2 2 2 2 2 222 2 22 2 2 22 22 222      2        22 22                             2222  2 22   2   22  2  2 22 ! ! " # $ $ $ % & ' ( ' )22 * + ,22 - -22 .2 / / / /2 0 1 2 0 3 0 4 5 6 7 0 8 922 : ; ; ; ; ; ; ; ; ; ; ; ; ; ; < ; : : = = = = = = = = = = = = = : : : > : : : ? ? ? ? ? ? ? : : : @ : : A : : B B : : : : C : D E : F : : : G : : H : I : : J K : L L L L L L L L L L L L M L L L L L L L N L L L L L L L L L L L : : O : : P Q : : R S S S S S : T : U U U U U U U U U U U U U U U U U U U U U U U :22 V2 W X Y2222 Z Z Z [ [ Z Z Z \ ] \ \ Z Z ^ ^ ^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ^ ^ ^ ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` Z22 a22 b b c b2 d2 e2 f f g g g g g g g g g h g g g g g g g g g g f i i j j i k k k k f l l f m m m f n n o o o f p p p p f f q q q q q q q q q q r q f f s s f t t f f u u u u u u u f v v22 w x y x2 z { z z z z z | } z z ~ z z     22 2 2222 2 2 2 2 2 2 22 22 2 2 2222 22 2 2 2 22 222 2 2 22 22 2 2 222 2 2 222 2 22 22 222 2 2 2 22 2 2 2 22 22 22 2 2 2 2 22 22  222        22222    22  2  2 2 222      2 2             222  22  22        2  22 !22 " " " " " "2222 #2 $22 % & %222 ' '2 (2 ) ) *2 + ,222 - .2 /2 0 1 0 0 0 02 2 3 4 2 5 2 6 2 72 8 8 8 8 8 82 9 92 : :2 ; ; < <22 =222 >2 ? @22 A A2 B2 C D E F2 G2 H H I J I2 K L K K K M K K K K K K K K2 N22 O P222 Q R Q2 S T S S2 U U V V V V V V V V V V V V V W V V V V V V V X V V V V V V V V V V V V V V V V U U Y U Z [ U \ \ \ U U ] ^ U _ U2 ` a2 b c d22 e e f e e g h e222 i j2 k k k k k l m k k22 n22 o o p o q o r o o s o o o t t t u t o o o v o o o w o o o o x x o y o o o o o o o z { o o | } o o ~ o   o o o o o o2 2 22 2 22 22 2 2 22 22 2 2 2 2 22 222 2 2 222 22 22 2 22 2 2 2 2 22 2 2 22 2 22 22 22222222222222 22     22 2222 22222222222222 !!!!22"2#$#%#2&'&(&)22***++,,,++-*2....2/0000000000000000/21222223222244422567859:;5<=<>552?2@2AA22B2CD22E22FFFGG22H22IJI2K2LLLMM2NNO22PQP22RR2SST2UU22V2W222XYZ22[\[[][[[[[2^222___`_a_22bb2c2d2e222fffgffhiffjkffflfffffmfnnopnnqrnsfffftfffuuuuuuuuuuuuuuvuuuuuuuuuuuuuuuuuuuuuuuuuuuwufffxffyffffffffffz{ffffff|}||~~~~~||||||||||||||||fffffffffffffffffffffffffffffffffffff2222222222222222222222222222222222222222222222222222222222222222222++++               +!!!!!!"#!+$$$$$$$$$$$$$+%%%%%+&&&&&&+'''''''''''''''''''''((((((((((('''''''''''''''''''''''''''''''''''''''''')''''''''''''''*********''''''''''''''''''''''''''''''''''''''''''''''''+++'''',,,-,,....,,''''''''///////////////////////''''''''''0000000000''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''111''''''''''''''''''22222222'''''''''''''''''''''''''''''''''''''''333333333'''''''''''''''4'''''''''''''''''''''''''''''''''''''''''''5''''''''''''''''''''67768869''''''''':::::'''''''''''''''''';<<<<<<;;;;'''''''''''''''''''''''''====''''''''''''''''''''''''''''>>'''''''''''''''''''''''''''''''''''''''''''''''''?@?AA?????BBBBB???CCCCC???DD?E???F???G????HH?????''''''''''''''''IIIIIIIIIIIIIIIIIIIIII''''''''''''''''''''''''''''''''''''''''''''JJJJJJJJJJJJJJJJJ''''''''''''KKK'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''LLLLLLL''''''''''''''''M'''''''''''''''''''''''''''''''NNNNNNOOOOOONNNNPPPNNNNNNNNNNNNNNNQQQNRRRNSSNTTTNUUNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNVVNWWNNNXXXXXXNNNNNNNNNNYYYYYYYYYYYNNNNNNNNNNNNNZZZZZZZNNNNNNNNNNNNNNNNNNNNNNNNNNN[[[[[[[[[[N\\\\\\\\NNNN]]]]N''''''''''''''^^^^^^^'_________________''''''''````````````''''''''''''''''''''''''aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa''bb''''''''''cdd''''effffffffffeeeeeeeeeeeeeeeeeeeeeee'g''hh''''i''j'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''k''''''''l''''''''mmmmmmnm'''''''oooooooo'''''pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppqqqqqqqqqqqqqpppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppprrrrrp'''''''''''''''''''''''''ssssssssssssssss''''''''''''''''''''''''''''''''''''''''''''tttttttttttttttttttt''''''uuuu'''''''''''''''''''''''''''''''vvvvvvvvvvvvvvvvvvvvvvvvvvvvvv'''ww'''''x''''''''''''''''''''''''yy'''zzzzz''''''''''''''''''{{{{{{{{{{{{{{{{{{{{{{{{{{{{{'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''|}|~|||||||''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''+++++++++++++++++        !! "" ## $$   % && '' (( )))**)++),,)-- . // 00011 22 33 44 5 66 7778 999:: ;; << = > ?? @AA@@ BB CCCDCEE FFFGFHH II JJ K LL MM NN OO PP QQ RR SS TT UUUVVUWW XX YY Z [[[\\[]] ^^ __ `` aa bb cc dd ee f gg hh ii jj kk lllmln oo pp qq rr ss tt uu vv ww xxyyyzy{{y|y}y~yyyyyyyyyyyyyyyyyyyy         !! " # $ % & '(())**++,,--..//00112223342556627728292:2;<<==>>>?>@>A>B>CDDEEFFGGGHIIJJKKKLMMMNNMOOMPPMQQQRQSMTTUUVVWWXXYYZZ[[\\]]^^__``aabbcccdefeeegeheiejjekelmmnnooppqprstpuuvwvuxuypzzzzz{z|}p~pppppppppppppppppp        !"#$%&p'(p))*+,*-.)//0/1p2232425p6p78899::9;;4.18.0-552.el8.ppc64le.configKconfigKconfig.redhatMakefileMakefile.rhelverModule.symversSystem.maparchKconfigalphaKconfigKconfig.debugMakefilebootMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilearcKconfigKconfig.debugMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplat-axs10xKconfigMakefileplat-eznpsKconfigMakefileplat-hsdkKconfigMakefileplat-simMakefileplat-tb10xKconfigMakefilearmKconfigKconfig-nommuKconfig.debugMakefilebootMakefilebootpMakefilecompressedMakefiledtsMakefilecommonKconfigMakefilecryptoKconfigMakefilefirmwareKconfigMakefilekernelMakefilelibMakefilemach-actionsKconfigMakefilemach-alpineKconfigMakefilemach-artpecKconfigMakefilemach-asm9260Kconfigmach-aspeedKconfigmach-at91KconfigMakefileMakefile.bootmach-axxiaKconfigMakefilemach-bcmKconfigMakefilemach-berlinKconfigMakefilemach-clps711xKconfigMakefilemach-cns3xxxKconfigMakefilemach-davinciKconfigMakefileMakefile.bootmach-digicolorKconfigMakefilemach-doveKconfigMakefileMakefile.bootmach-ebsa110MakefileMakefile.bootmach-efm32MakefileMakefile.bootmach-ep93xxKconfigMakefileMakefile.bootmach-exynosKconfigMakefilemach-footbridgeKconfigMakefileMakefile.bootmach-geminiKconfigMakefilemach-highbankKconfigMakefilemach-hisiKconfigMakefilemach-imxKconfigMakefileMakefile.bootdevicesKconfigMakefilemach-integratorKconfigMakefilemach-iop13xxKconfigMakefileMakefile.bootmach-iop32xKconfigMakefileMakefile.bootmach-iop33xKconfigMakefileMakefile.bootmach-ixp4xxKconfigMakefileMakefile.bootmach-keystoneKconfigMakefilemach-ks8695KconfigMakefileMakefile.bootmach-lpc18xxMakefileMakefile.bootmach-lpc32xxMakefileMakefile.bootmach-mediatekKconfigMakefilemach-mesonKconfigMakefilemach-mmpKconfigMakefilemach-moxartKconfigMakefilemach-mv78xx0KconfigMakefilemach-mvebuKconfigMakefilemach-mxsKconfigMakefilemach-netxKconfigMakefileMakefile.bootmach-nomadikKconfigMakefilemach-npcmKconfigMakefilemach-nspireKconfigMakefilemach-omap1KconfigMakefileMakefile.bootmach-omap2KconfigMakefilemach-orion5xKconfigMakefilemach-oxnasKconfigMakefilemach-picoxcellKconfigMakefilemach-prima2KconfigMakefilemach-pxaKconfigMakefileMakefile.bootmach-qcomKconfigMakefilemach-realviewKconfigMakefilemach-rockchipKconfigMakefilemach-rpcMakefileMakefile.bootmach-s3c24xxKconfigMakefileMakefile.bootmach-s3c64xxKconfigMakefilemach-s5pv210KconfigMakefilemach-sa1100KconfigMakefileMakefile.bootmach-shmobileKconfigMakefilemach-socfpgaKconfigMakefilemach-spearKconfigMakefilemach-stiKconfigMakefilemach-stm32KconfigMakefileMakefile.bootmach-sunxiKconfigMakefilemach-tangoKconfigMakefilemach-tegraKconfigMakefilemach-u300KconfigMakefilemach-uniphierKconfigMakefilemach-ux500KconfigMakefilemach-versatileKconfigMakefilemach-vexpressKconfigMakefileMakefile.bootmach-vt8500KconfigMakefileMakefile.bootmach-w90x900KconfigMakefileMakefile.bootmach-zxKconfigMakefilemach-zynqKconfigMakefilemmKconfigMakefilenetMakefilenwfpeMakefileoprofileMakefileplat-iopMakefileplat-omapKconfigMakefileplat-orionMakefileplat-pxaKconfigMakefileplat-samsungKconfigMakefileplat-versatileKconfigMakefileprobesMakefilekprobesMakefileuprobesMakefiletoolsMakefilevdsoMakefilevfpMakefilexenMakefilearm64KconfigKconfig.debugKconfig.platformsMakefilebootMakefiledtsMakefileactionsMakefilealMakefileallwinnerMakefilealteraMakefileamdMakefileamlogicMakefileapmMakefilearmMakefilebroadcomMakefilenorthstar2MakefilestingrayMakefilecaviumMakefileexynosMakefilefreescaleMakefilehisiliconMakefilelgMakefilemarvellMakefilemediatekMakefilenvidiaMakefileqcomMakefilerealtekMakefilerenesasMakefilerockchipMakefilesocionextMakefilesprdMakefilesynapticsMakefilexilinxMakefilezteMakefilecryptoKconfigMakefilehypervMakefilekernelMakefileprobesMakefilevdsoMakefilevdso32MakefilekvmKconfigMakefilehypMakefilenvheMakefilevheMakefilelibMakefilemmMakefilenetMakefiletoolsMakefilexenMakefilec6xKconfigMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileplatformsKconfigMakefileh8300KconfigKconfig.cpuMakefilebootMakefilecompressedMakefiledtsMakefilekernelMakefilelibMakefilemmMakefilehexagonKconfigMakefilekernelMakefilelibMakefilemmMakefileia64KconfigKconfig.debugMakefiledigMakefilehpcommonMakefilesimKconfigMakefilebootMakefilezx1MakefilekernelMakefileMakefile.gatelibMakefilemmMakefileoprofileMakefilepciMakefilesnMakefilekernelMakefilesn2MakefilepciMakefilepcibrMakefileuvMakefilekernelMakefilem68k68000MakefileKconfigKconfig.busKconfig.cpuKconfig.debugKconfig.devicesKconfig.machineMakefileamigaMakefileapolloMakefileatariMakefilebvme6000MakefilecoldfireMakefileemuMakefilefpsp040Makefilehp300Makefileifpsp060MakefilekernelMakefilelibMakefilemacMakefilemath-emuMakefilemmMakefilemvme147Makefilemvme16xMakefileq40Makefilesun3MakefilepromMakefilesun3xMakefiletoolsamigaMakefilemicroblazeKconfigKconfig.debugKconfig.platformMakefilebootMakefiledtsMakefilekernelMakefilecpuMakefilelibMakefilemmMakefileoprofileMakefilepciMakefilemipsKconfigKconfig.debugMakefileMakefile.postlinkalchemyKconfigMakefilecommonMakefiledevboardsMakefilear7Makefileath25KconfigMakefileath79KconfigMakefilebcm47xxKconfigMakefilebcm63xxKconfigMakefileboardsKconfigMakefilebmipsKconfigMakefilebootMakefilecompressedMakefiledtsMakefilebrcmMakefilecavium-octeonMakefileimgMakefileingenicMakefilelantiqMakefilemsccMakefilemtiMakefilenetlogicMakefileniMakefilepic32MakefileqcaMakefileralinkMakefilexilfpgaMakefiletoolsMakefilecavium-octeonKconfigMakefilecryptoMakefileexecutiveMakefilecobaltMakefilecryptoMakefiledecMakefilepromMakefileemmaMakefilecommonMakefilemarkeinsMakefilefwarcMakefilecfeMakefilelibMakefilesniMakefilegenericKconfigMakefilejazzKconfigMakefilejz4740KconfigMakefilekernelMakefilekvmKconfigMakefilelantiqKconfigMakefilefalconMakefilexwayMakefilelasatKconfigMakefileimageMakefilelibMakefileloongson32KconfigMakefilecommonMakefilels1bMakefilels1cMakefileloongson64KconfigMakefilecommonMakefilecs5536Makefilefuloong-2eMakefilelemote-2fMakefileloongson-3Makefilemath-emuMakefilemmMakefilemti-maltaMakefilenetMakefilenetlogicKconfigMakefilecommonMakefilexlpMakefilexlrMakefileoprofileMakefileparavirtKconfigMakefilepciMakefilepic32KconfigMakefilecommonMakefilepic32mzdaMakefilepistachioKconfigMakefilepmcs-msp71xxKconfigMakefilepnx833xMakefilecommonMakefilestb22xMakefilepowerMakefileralinkKconfigMakefilerb532Makefilesgi-ip22Makefilesgi-ip27KconfigMakefilesgi-ip32MakefilesibyteKconfigMakefilebcm1480MakefilecommonMakefilesb1250MakefileswarmMakefilesniMakefiletxx9KconfigMakefilegenericMakefilejmr3927Makefilerbtx4927Makefilerbtx4938Makefilerbtx4939MakefilevdsoMakefilevr41xxKconfigcasio-e55MakefilecommonMakefileibm-workpadMakefilends32KconfigKconfig.cpuMakefilebootMakefiledtsMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefilenios2KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmMakefileplatformKconfig.platformMakefileopenriscKconfigMakefilebootdtsMakefilekernelMakefilelibMakefilemmMakefilepariscKconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilepowerpcKconfigKconfig.debugMakefileMakefile.postlinkbootMakefilecryptoMakefileincludeasm8xx_immap.hKbuildaccounting.hagp.harchrandom.hasm-compat.hasm-offsets.hasm-prototypes.hasync_tx.hatomic.hbacklight.hbarrier.hbitops.hbook3s32hash.hmmu-hash.hpgalloc.hpgtable.h64hash-4k.hhash-64k.hhash.hhugetlb.hkup-radix.hmmu-hash.hmmu.hpgalloc.hpgtable-4k.hpgtable-64k.hpgtable.hradix-4k.hradix-64k.hradix.hslice.htlbflush-hash.htlbflush-radix.htlbflush.hpgalloc.hpgtable.hbootx.hbpf_perf_event.hbtext.hbug.hbugs.hcache.hcacheflush.hcell-pmu.hcell-regs.hchecksum.hcmpxchg.hcode-patching-asm.hcode-patching.hcompat.hcontext_tracking.hcopro.hcpm.hcpm1.hcpm2.hcpu_has_feature.hcpu_setup_power.hcpufeature.hcpuidle.hcputable.hcputhreads.hcputime.hcrashdump-ppc64.hcurrent.hdbdma.hdbell.hdcr-generic.hdcr-mmio.hdcr-native.hdcr-regs.hdcr.hdebug.hdebugfs.hdelay.hdevice.hdisassemble.hdma-direct.hdma-mapping.hdma.hdrmem.hdt_cpu_ftrs.hdtl.hedac.heeh.heeh_event.hehv_pic.helf.helfnote.hemergency-restart.hemulated_ops.hepapr_hcalls.hexception-64e.hexception-64s.hexec.hextable.hfadump-internal.hfadump.hfb.hfeature-fixups.hfirmware.hfixmap.hfloppy.hfs_pd.hfsl_85xx_cache_sram.hfsl_gtm.hfsl_hcalls.hfsl_lbc.hfsl_pamu_stash.hfsl_pm.hftrace.hfutex.hgrackle.hhardirq.hhead-64.hheathrow.hhighmem.hhmi.hhugetlb.hhvcall.hhvconsole.hhvcserver.hhvsi.hhw_breakpoint.hhw_irq.hhydra.hi8259.hibmebus.hicswx.hide.hidle.hima.himc-pmu.himmap_cpm2.hinst.hio-defs.hio-workarounds.hio.hio_event_irq.hiommu.hipic.hirq.hirq_work.hirqflags.hisa-bridge.hjump_label.hkdebug.hkdump.hkexec.hkexec_ranges.hkeylargo.hkgdb.hkprobes.hkup.hkvm_asm.hkvm_book3s.hkvm_book3s_32.hkvm_book3s_64.hkvm_book3s_asm.hkvm_book3s_uvmem.hkvm_booke.hkvm_booke_hv_asm.hkvm_fpu.hkvm_guest.hkvm_host.hkvm_para.hkvm_ppc.hlibata-portmap.hlinkage.hlivepatch.hlocal.hlppaca.hlv1call.hmachdep.hmacio.hmc146818rtc.hmce.hmediabay.hmem_encrypt.hmembarrier.hmm-arch-hooks.hmman.hmmiowb.hmmu-40x.hmmu-44x.hmmu-8xx.hmmu-book3e.hmmu.hmmu_context.hmmzone.hmodule.hmpc5121.hmpc52xx.hmpc52xx_psc.hmpc5xxx.hmpc6xx.hmpc8260.hmpc85xx.hmpic.hmpic_msgr.hmpic_timer.hmsi_bitmap.hnmi.hnohash32pgalloc.hpgtable.hpte-40x.hpte-44x.hpte-8xx.hpte-fsl-booke.hslice.h64pgalloc.hpgtable-4k.hpgtable.hslice.hpgalloc.hpgtable.hpte-book3e.hnvram.hohare.hopal-api.hopal.hoprofile_impl.hpaca.hpage.hpage_32.hpage_64.hparavirt.hparport.hpasemi_dma.hpci-bridge.hpci.hpercpu.hperf_event.hperf_event_fsl_emb.hperf_event_server.hpgalloc.hpgtable-be-types.hpgtable-types.hpgtable.hpkeys.hplpar_wrappers.hpmac_feature.hpmac_low_i2c.hpmac_pfunc.hpmc.hpmi.hpnv-ocxl.hpnv-pci.hpowernv.hppc-opcode.hppc-pci.hppc4xx.hppc4xx_ocm.hppc_asm.hprobes.hprocessor.hprom.hps3.hps3av.hps3gpu.hps3stor.hpte-common.hpte-walk.hptrace.hqspinlock.hqspinlock_paravirt.hreg.hreg_8xx.hreg_a2.hreg_booke.hreg_fsl_emb.hrheap.hrio.hrtas.hrunlatch.hscom.hseccomp.hsections.hsecure_boot.hsecurity_features.hsecvar.hserial.hsetjmp.hsetup.hsfp-machine.hshmparam.hsignal.hsimple_spinlock.hsimple_spinlock_types.hslice.hsmp.hsmu.hsparsemem.hspinlock.hspinlock_types.hspu.hspu_csa.hspu_info.hspu_priv1.hsstep.hstackprotector.hstacktrace.hstring.hsvm.hswab.hswiotlb.hswitch_to.hsynch.hsyscall.hsyscalls.hsystbl.htask_size_32.htask_size_64.htce.htermios.hthread_info.htime.htimex.htlb.htlbflush.htm.htopology.htrace.htrace_clock.htsi108.htsi108_irq.htsi108_pci.htypes.huaccess.hudbg.huic.hultravisor-api.hultravisor.hunaligned.huninorth.hunistd.huprobes.huser.hvas.hvdso.hvdso_datapage.hvga.hvio.hword-at-a-time.hxics.hxilinx_intc.hxilinx_pci.hxive-regs.hxive.hxmon.hxor.hxor_altivec.hgeneratedasmdiv64.hexport.hirq_regs.hirq_work.hkmap_size.hkvm_types.hlocal64.hmcs_spinlock.hmsi.hpreempt.hqrwlock.hvtime.huapiasmbpf_perf_event.hparam.hpoll.hresource.hsiginfo.hsockios.hstatfs.huapiasmKbuildauxvec.hbitsperlong.hbootx.hbyteorder.hcputable.heeh.helf.hepapr_hcalls.herrno.hfcntl.hioctl.hioctls.hipcbuf.hkvm.hkvm_para.hmman.hmsgbuf.hnvram.hopal-prd.hpapr_pdsm.hperf_event.hperf_regs.hposix_types.hps3fb.hptrace.hsembuf.hsetup.hshmbuf.hsigcontext.hsignal.hsocket.hspu_info.hstat.hswab.htermbits.htermios.htm.htypes.hucontext.hunistd.hvas-api.hkernelMakefilemodule.ldsptraceMakefiletraceMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilecrtsavres.Smath-emuMakefilemmMakefilebook3s32Makefilebook3s64MakefilenetMakefileoprofileMakefileperfMakefileplatforms40xKconfigMakefile44xKconfigMakefile4xxMakefile512xKconfigMakefile52xxKconfigMakefile82xxKconfigMakefile83xxKconfigMakefile85xxKconfigMakefile86xxKconfigMakefile8xxKconfigMakefileKconfigKconfig.cputypeMakefileamigaoneKconfigMakefilebook3sKconfigMakefilecellKconfigMakefilespufsMakefilechrpKconfigMakefileembedded6xxKconfigMakefilemapleKconfigMakefilepasemiKconfigMakefilepowermacKconfigMakefilepowernvKconfigMakefileps3KconfigMakefilepseriesKconfigMakefilepurgatoryMakefilesysdevKconfigMakefilegeMakefilexicsKconfigMakefilexiveKconfigMakefilexmonMakefileriscvKconfigMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefiles390KconfigKconfig.debugMakefileappldataMakefilebootMakefilecompressedMakefilecryptoMakefilehypfsMakefilekernelMakefilesyscallsMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemmMakefilenetMakefilenumaMakefileoprofileMakefilepciMakefilepurgatoryMakefilescriptsMakefile.chkbsstoolsMakefileshKconfigKconfig.cpuKconfig.debugMakefileboardsKconfigMakefilemach-ap325rxaMakefilemach-caymanMakefilemach-dreamcastMakefilemach-ecovec24Makefilemach-highlanderKconfigMakefilemach-hp6xxMakefilemach-kfr2r09Makefilemach-landiskMakefilemach-lboxre2Makefilemach-microdevMakefilemach-migorKconfigMakefilemach-r2dKconfigMakefilemach-rskKconfigMakefilemach-sdk7780KconfigMakefilemach-sdk7786Makefilemach-se7206Makefile7343Makefile770xMakefile7721Makefile7722Makefile7724Makefile7751Makefile7780MakefileMakefilemach-sh03Makefilemach-sh7763rdpMakefilemach-x3protoMakefilebootMakefilecompressedMakefiledtsMakefileromimageMakefilecchipsKconfighd6446xMakefiledriversKconfigMakefiledmaKconfigMakefilepciMakefilesuperhywayMakefilekernelMakefilecpuMakefileirqMakefilesh2Makefilesh2aMakefilesh3Makefilesh4Makefilesh4aMakefilesh5MakefileshmobileMakefilevsyscallMakefilelibMakefilelib64Makefilemath-emuMakefilemmKconfigMakefileoprofileMakefiletoolsMakefilesparcKconfigKconfig.debugMakefilebootMakefilecryptoMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefilenetMakefileoprofileMakefilepowerMakefilepromMakefilevdsoMakefileumKconfig.charKconfig.commonKconfig.debugKconfig.netKconfig.restKconfig.umMakefileMakefile-os-LinuxMakefile-skasdriversMakefilekernelMakefileskasMakefileos-LinuxMakefiledriversMakefileskasMakefilescriptsMakefile.rulesunicore32KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmKconfigMakefilex86KconfigKconfig.cpuKconfig.debugMakefileMakefile.umMakefile_32.cpubootMakefilecompressedMakefilecocoMakefiletdxMakefilecryptoMakefileentryMakefilesyscallsMakefilevdsoMakefilevsyscallMakefileeventsKconfigMakefileamdMakefileintelMakefilehypervMakefileia32MakefilekernelMakefileacpiMakefileapicMakefilecpuMakefilemceMakefilemicrocodeMakefilemtrrMakefileresctrlMakefilesgxMakefilefpuMakefilekprobesMakefilekvmKconfigMakefilelibMakefilemath-emuMakefilemmMakefilepatMakefilenetMakefileoprofileMakefilepciMakefileplatformMakefileatomMakefilece4100MakefileefiMakefilegeodeMakefilegoldfishMakefileintelintel-midMakefiledevice_libsMakefileintel-quarkMakefileMakefileirisMakefileolpcMakefilescx200MakefilesfiMakefilets5500MakefileuvMakefilepowerMakefilepurgatoryMakefilerasKconfigrealmodeMakefilermMakefiletoolsMakefileumKconfigMakefileos-LinuxMakefilevdsoMakefilevideoMakefilexenKconfigMakefilextensaKconfigKconfig.debugMakefilebootMakefileboot-elfMakefileboot-redbootMakefiledtsMakefilelibMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplatformsissMakefilext2000MakefilextfpgaMakefileblockKconfigKconfig.ioschedMakefilepartitionsKconfigMakefilecertsKconfigMakefilecryptoKconfigMakefileasymmetric_keysKconfigMakefileasync_txKconfigMakefiledriversKconfigMakefileaccessibilityKconfigMakefilebrailleMakefileacpiKconfigMakefileacpicaMakefileapeiKconfigMakefilearm64KconfigMakefiledptfKconfigMakefilenfitKconfigMakefilenumaKconfigMakefilepmicKconfigMakefileambaKconfigMakefileandroidKconfigMakefileataKconfigMakefileatmKconfigMakefileauxdisplayKconfigMakefilebaseKconfigMakefilefirmware_loaderKconfigMakefilepowerMakefileregmapKconfigMakefiletestKconfigMakefilebcmaKconfigMakefileblockKconfigMakefileaoeMakefiledrbdKconfigMakefilemtip32xxKconfigMakefileparideKconfigMakefilersxxMakefilexen-blkbackMakefilezramKconfigMakefilebluetoothKconfigMakefilebusKconfigMakefilefsl-mcKconfigMakefilemhiKconfigMakefileepKconfigMakefilehostKconfigMakefilecdromMakefilecharKconfigMakefileagpKconfigMakefilehw_randomKconfigMakefileipmiKconfigMakefilemwaveMakefilepcmciaKconfigMakefiletpmKconfigMakefilest33zp24KconfigMakefilexilinx_hwicapMakefilexillybusKconfigMakefileclkKconfigMakefileactionsKconfigMakefileat91MakefileaxisMakefileaxs10xMakefilebcmKconfigMakefileberlinMakefiledavinciMakefileh8300MakefilehisiliconKconfigMakefileimgtecKconfigMakefileimxMakefileingenicMakefilekeystoneKconfigMakefileloongson1MakefilemediatekKconfigMakefilemesonKconfigMakefilemicrochipMakefilemmpMakefilemvebuKconfigMakefilemxsMakefilenxpMakefilepistachioMakefilepxaMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipMakefilesamsungKconfigMakefilesirfMakefilesocfpgaMakefilespearMakefilesprdKconfigMakefilestMakefilesunxisunxi-ngKconfigMakefileMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefileux500MakefileversatileKconfigMakefilex86MakefilezteMakefilezynqMakefileclocksourceKconfigMakefileconnectorKconfigMakefilecounterKconfigMakefilecpufreqKconfigKconfig.armKconfig.powerpcKconfig.x86MakefilecpuidleKconfigKconfig.armKconfig.mipsKconfig.powerpcMakefilegovernorsMakefilecryptoKconfigMakefileamccMakefileaxisMakefilebcmMakefilecaamKconfigMakefilecaviumMakefilecptKconfigMakefilenitroxKconfigMakefilezipMakefileccpKconfigMakefileccreeMakefilechelsioKconfigMakefilechtlsMakefileinside-secureMakefilemarvellMakefilemediatekMakefilenxKconfigMakefileqatKconfigMakefileqat_4xxxMakefileqat_c3xxxMakefileqat_c3xxxvfMakefileqat_c62xMakefileqat_c62xvfMakefileqat_commonMakefileqat_dh895xccMakefileqat_dh895xccvfMakefileqceMakefilerockchipMakefilestm32KconfigMakefilesunxi-ssMakefileux500KconfigMakefilecrypMakefilehashMakefilevirtioKconfigMakefilevmxKconfigMakefiledaxKconfigMakefilehmemMakefilepmemMakefiledcaKconfigMakefiledevfreqKconfigMakefileeventKconfigMakefiledioMakefiledmadma-bufKconfigMakefileheapsKconfigMakefileKconfigMakefilebestcommKconfigMakefiledwdw-axi-dmacMakefileKconfigMakefilehsuKconfigMakefileidxdMakefileioatMakefileipuMakefilemediatekKconfigMakefileppc4xxMakefileptdmaKconfigMakefileqcomKconfigMakefileshKconfigMakefiletiKconfigMakefilexilinxMakefileedacKconfigMakefileeisaKconfigMakefileextconKconfigMakefilefirewireKconfigMakefilefirmwareKconfigMakefilearm_scmiMakefilebroadcomKconfigMakefilecirrusKconfigMakefileefiKconfigMakefilelibstubMakefiletestMakefilegoogleKconfigMakefilemesonKconfigMakefilepsciKconfigMakefilesmcccKconfigMakefiletegraKconfigMakefilefmcKconfigMakefilefpgaKconfigMakefilefsiKconfigMakefilegpioKconfigMakefilegpuMakefiledrmKconfigMakefileamdacpKconfigMakefileamdgpuKconfigMakefileamdkfdKconfigMakefiledisplayKconfigMakefileamdgpu_dmMakefiledcMakefilebasicsMakefilebiosMakefileclk_mgrMakefiledceMakefiledce100Makefiledce110Makefiledce112Makefiledce120Makefiledce60Makefiledce80Makefiledcn10Makefiledcn20Makefiledcn201Makefiledcn21Makefiledcn30Makefiledcn301Makefiledcn302Makefiledcn303Makefiledcn31Makefiledcn314Makefiledcn315Makefiledcn316Makefiledcn32Makefiledcn321MakefiledmlMakefiledscMakefilegpioMakefilehdcpMakefileirqMakefilelinkMakefilevirtualMakefiledmubsrcMakefilemodulescolorMakefilefreesyncMakefilehdcpMakefileinfo_packetMakefilepowerMakefilepmMakefilelegacy-dpmMakefilepowerplayMakefilehwmgrMakefilesmumgrMakefileswsmuMakefilesmu11Makefilesmu12Makefilesmu13MakefilearmKconfigMakefilearmadaKconfigMakefileaspeedKconfigMakefileastKconfigMakefileatmel-hlcdcKconfigMakefilebridgeKconfigMakefileadv7511KconfigMakefileanalogixKconfigMakefilecadenceKconfigMakefileimxKconfigMakefilesynopsysKconfigMakefiledisplayKconfigMakefileetnavivKconfigMakefileexynosKconfigMakefilefsl-dcuKconfigMakefilegma500KconfigMakefilegudKconfigMakefilehisiliconKconfigMakefilehibmcKconfigMakefilekirinKconfigMakefilehypervMakefilei2cKconfigMakefilei915KconfigKconfig.debugKconfig.profileKconfig.unstableMakefilegvtMakefileimxKconfigMakefilekmbKconfigMakefilelogicvcKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemgag200KconfigMakefilemsmKconfigMakefilemxsfbKconfigMakefilenouveauKconfigomapdrmKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilepanelKconfigMakefilepl111KconfigMakefileqxlKconfigMakefileradeonKconfigMakefilercar-duKconfigMakefilerockchipKconfigMakefileschedulerMakefileshmobileKconfigMakefilesolomonKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesun4iKconfigMakefiletegraKconfigMakefiletestsMakefiletilcdcKconfigMakefiletinyKconfigMakefilettmMakefiletve200KconfigMakefileudlKconfigMakefilev3dKconfigMakefilevboxvideoKconfigMakefilevc4KconfigMakefilevgemMakefilevirtioKconfigMakefilevkmsMakefilevmwgfxKconfigMakefilexenKconfigMakefilehost1xKconfigMakefileipu-v3KconfigMakefilevgaKconfigMakefilehidKconfigMakefileamd-sfh-hidKconfigMakefilei2c-hidKconfigMakefileintel-ish-hidKconfigMakefilesurface-hidKconfigMakefileusbhidKconfigMakefilehsiKconfigMakefileclientsKconfigMakefilecontrollersKconfigMakefilehvKconfigMakefilehwmonKconfigMakefilepmbusKconfigMakefilehwspinlockKconfigMakefilehwtracingKconfigcoresightKconfigMakefileintel_thKconfigMakefilestmKconfigMakefilei2cKconfigMakefilealgosKconfigMakefilebussesKconfigMakefilemuxesKconfigMakefileideKconfigMakefileidleKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileafeKconfigMakefileamplifiersKconfigMakefilebufferKconfigMakefilechemicalKconfigMakefilecommonKconfigMakefilecros_ec_sensorsKconfigMakefilehid-sensorsKconfigMakefilems_sensorsKconfigMakefilessp_sensorsKconfigMakefilest_sensorsKconfigMakefilecounterKconfigMakefiledacKconfigMakefiledummyKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefilehealthKconfigMakefilehumidityKconfigMakefileimuKconfigMakefilebmi160KconfigMakefileinv_mpu6050KconfigMakefilest_lsm6dsxKconfigMakefilelightKconfigMakefilemagnetometerKconfigMakefilemultiplexerKconfigMakefileorientationKconfigMakefilepotentiometerKconfigMakefilepotentiostatKconfigMakefilepressureKconfigMakefileproximityKconfigMakefileresolverKconfigMakefiletemperatureKconfigMakefiletestKconfigMakefiletriggerKconfigMakefileinfinibandKconfigMakefilecoreMakefilehwMakefilebnxt_reKconfigMakefilecxgb4KconfigMakefileefaKconfigMakefilehfi1KconfigMakefilehnsKconfigMakefileirdmaKconfigMakefilemanaKconfigMakefilemlx4KconfigMakefilemlx5KconfigMakefilemthcaKconfigMakefileocrdmaKconfigMakefileqedrKconfigMakefileqibKconfigMakefileusnicKconfigMakefilevmw_pvrdmaKconfigMakefileswMakefilerdmavtKconfigMakefilerxeKconfigMakefilesiwKconfigMakefileulpMakefileipoibKconfigMakefileiserKconfigMakefileisertKconfigMakefileopa_vnicKconfigMakefilesrpKconfigsrptKconfigMakefileinputKconfigMakefilegameportKconfigMakefilejoystickKconfigMakefileiforceKconfigMakefilekeyboardKconfigMakefilemiscKconfigMakefilemouseKconfigMakefilermi4KconfigMakefileserioKconfigMakefiletabletKconfigMakefiletouchscreenKconfigMakefileiommuKconfigMakefileamdKconfigMakefilearmMakefilearm-smmuarm-smmu-v3MakefileMakefileintelKconfigMakefileipackKconfigMakefilecarriersKconfigMakefiledevicesKconfigMakefileirqchipKconfigMakefileisdnKconfigMakefilecapiKconfigMakefiledivertMakefilegigasetKconfigMakefilehardwareKconfigMakefileavmKconfigMakefileeiconKconfigMakefilemISDNKconfigMakefilehisaxKconfigMakefilehysdnKconfigMakefilei4lKconfigMakefileisdnloopMakefilemISDNKconfigMakefileledsKconfigMakefiletriggerKconfigMakefilelightnvmKconfigMakefilemacintoshKconfigMakefileamsMakefilemailboxKconfigMakefilemcbKconfigMakefilemdKconfigMakefilebcacheKconfigMakefilepersistent-dataKconfigMakefilemediaKconfigMakefilececKconfigMakefilecommonKconfigMakefileb2c2KconfigMakefilesaa7146KconfigMakefilesianoKconfigMakefilev4l2-tpgKconfigMakefilevideobuf2KconfigMakefiledvb-coreKconfigMakefiledvb-frontendsKconfigMakefilecxd2880KconfigMakefiledrx39xyjKconfigMakefilefirewireKconfigMakefilei2cKconfigMakefileadv748xMakefilecx25840KconfigMakefileet8ek8KconfigMakefilem5molsKconfigMakefiles5c73m3MakefilesmiappKconfigMakefilesoc_cameraKconfigMakefilemmcKconfigMakefilesianoKconfigMakefilepciKconfigMakefileb2c2KconfigMakefilebt8xxKconfigMakefilecobaltKconfigMakefilecx18KconfigMakefilecx23885KconfigMakefilecx25821KconfigMakefilecx88KconfigMakefileddbridgeKconfigMakefiledm1105KconfigMakefiledt3155KconfigMakefileintelMakefileipu3KconfigMakefileivtvKconfigMakefilemantisKconfigMakefilemeyeKconfigMakefilenetup_unidvbKconfigMakefilengeneKconfigMakefilepluto2KconfigMakefilept1KconfigMakefilept3KconfigMakefilesaa7134KconfigMakefilesaa7146KconfigMakefilesaa7164KconfigMakefilesmipcieKconfigMakefilesolo6x10KconfigMakefilesta2x11KconfigMakefilettpciKconfigMakefiletw5864KconfigMakefiletw68KconfigMakefiletw686xKconfigMakefileplatformKconfigMakefileam437xKconfigMakefileatmelKconfigMakefilecadenceKconfigMakefilecec-gpioMakefilecodaMakefiledavinciKconfigMakefileexynos-gscMakefileexynos4-isKconfigMakefilemarvell-ccicKconfigMakefilemesonMakefilemtk-jpegMakefilemtk-mdpMakefilemtk-vcodecMakefilemtk-vpuMakefileomapKconfigMakefileomap3ispMakefileqcomcamss-8x16MakefilevenusMakefilercar-vinKconfigMakefilerockchiprgaMakefiles3c-camifMakefiles5p-cecMakefiles5p-g2dMakefiles5p-jpegMakefiles5p-mfcMakefilesoc_cameraKconfigMakefilestibdispMakefilec8sectpfeKconfigMakefilececMakefiledeltaMakefilehvaMakefilestm32Makefiletegra-cecMakefileti-vpeMakefilevimcKconfigMakefilevividKconfigMakefilevsp1MakefilexilinxKconfigMakefileradioKconfigMakefilesi470xKconfigMakefilesi4713KconfigMakefilewl128xKconfigMakefilercKconfigMakefileimg-irKconfigMakefilekeymapsKconfigMakefilespiKconfigMakefiletunersKconfigMakefileusbKconfigMakefileairspyKconfigMakefileas102KconfigMakefileau0828KconfigMakefileb2c2KconfigMakefilecpia2KconfigMakefilecx231xxKconfigMakefiledvb-usbdvb-usb-v2KconfigMakefileKconfigMakefileem28xxKconfigMakefilego7007KconfigMakefilegspcaKconfigMakefilegl860KconfigMakefilem5602KconfigMakefilestv06xxKconfigMakefilehackrfKconfigMakefilehdpvrKconfigMakefilemsi2500KconfigMakefilepulse8-cecKconfigMakefilepvrusb2KconfigMakefilepwcKconfigMakefilerainshadow-cecKconfigMakefiles2255KconfigMakefilesianoKconfigMakefilestk1160KconfigMakefilestkwebcamKconfigMakefiletm6000KconfigMakefilettusb-budgetKconfigMakefilettusb-decKconfigMakefileusbtvKconfigMakefileusbvisionKconfigMakefileuvcKconfigMakefilezr364xxKconfigMakefilev4l2-coreKconfigMakefilememoryKconfigMakefileMakefile.asm-offsetssamsungKconfigMakefiletegraKconfigMakefilememstickKconfigMakefilecoreKconfigMakefilehostKconfigMakefilemessageMakefilefusionKconfigMakefilemfdKconfigMakefilemiscKconfigMakefilealtera-staplKconfigMakefilec2portKconfigMakefilecardreaderKconfigMakefilecb710KconfigMakefilecxlKconfigMakefileechoKconfigMakefileeepromKconfigMakefilegenwqeKconfigMakefileibmasmMakefilelis3lv02dKconfigMakefilelkdtmMakefilemeiKconfigMakefilehdcpKconfigMakefilepxpKconfigMakefilemicKconfigMakefilebusMakefilecardMakefilecosmMakefilecosm_clientMakefilehostMakefilescifMakefilevopMakefileocxlKconfigMakefilesgi-gruMakefilesgi-xpMakefileti-stKconfigMakefilevmw_vmciKconfigMakefilemmcKconfigMakefilecoreKconfigMakefilehostKconfigMakefilemtdKconfigMakefilechipsKconfigMakefiledevicesKconfigMakefilelpddrKconfigMakefilemapsKconfigMakefilenandKconfigMakefileonenandKconfigMakefilerawKconfigMakefileatmelMakefilebcm47xxnflashMakefilebrcmnandMakefilegpmi-nandMakefileparsersKconfigMakefilespi-norKconfigMakefiletestsMakefileubiKconfigMakefilemuxKconfigMakefilenetKconfigMakefileappletalkKconfigMakefilearcnetKconfigMakefilebondingMakefilecaifKconfigMakefilecanKconfigMakefilec_canKconfigMakefilecc770KconfigMakefileifi_canfdKconfigMakefilem_canKconfigMakefilemscanKconfigMakefilepeak_canfdKconfigMakefilercarKconfigMakefilesja1000KconfigMakefilesoftingKconfigMakefilespiKconfigMakefileusbKconfigMakefilekvaser_usbMakefilepeak_usbMakefiledsaKconfigMakefileb53KconfigMakefilemicrochipKconfigMakefilemv88e6xxxKconfigMakefileethernet3comKconfigMakefile8390KconfigMakefileKconfigMakefileadaptecKconfigMakefileaeroflexKconfigMakefileagereKconfigMakefilealacritechKconfigMakefileallwinnerKconfigMakefilealteonKconfigMakefilealteraKconfigMakefileamazonKconfigMakefileenaMakefileamdKconfigMakefilexgbeMakefileapmKconfigMakefilexgenexgene-v2KconfigMakefileKconfigMakefileappleKconfigMakefileaquantiaKconfigMakefileatlanticMakefilehw_atlMakefilearcKconfigMakefileatherosKconfigMakefilealxMakefileatl1cMakefileatl1eMakefileatlxMakefileauroraKconfigMakefilebroadcomKconfigMakefilebnx2xMakefilebnxtMakefilegenetMakefilebrocadeKconfigMakefilebnaKconfigMakefilecadenceKconfigMakefilecalxedaKconfigMakefilecaviumKconfigMakefilecommonMakefileliquidioMakefileocteonMakefilethunderMakefilechelsioKconfigMakefilecxgbMakefilecxgb3Makefilecxgb4Makefilecxgb4vfMakefileinline_cryptoKconfigMakefilech_ipsecMakefilech_ktlsMakefilelibcxgbMakefilecirrusKconfigMakefileciscoKconfigMakefileenicKconfigMakefilecortinaKconfigMakefiledavicomKconfigMakefiledecKconfigMakefiletulipKconfigMakefiledlinkKconfigMakefileemulexKconfigMakefilebenetKconfigMakefileezchipKconfigMakefilefaradayKconfigMakefilefreescaleKconfigMakefiledpaaKconfigMakefilefmanKconfigMakefilefs_enetKconfigMakefilefujitsuKconfigMakefilegoogleKconfigMakefilegveMakefilehisiliconKconfigMakefilehnsMakefilehns3Makefilehns3pfMakefilehns3vfMakefilehpKconfigMakefilehuaweiKconfigMakefilehinicKconfigMakefilei825xxKconfigMakefileibmKconfigMakefileeheaMakefileemacKconfigMakefileintelKconfigMakefilee1000Makefilee1000eMakefilefm10kMakefilei40eMakefileiavfMakefileiceMakefileigbMakefileigbvfMakefileigcMakefileixgbMakefileixgbeMakefileixgbevfMakefilemarvellKconfigMakefilemvpp2MakefilemediatekKconfigMakefilemellanoxKconfigMakefilemlx4KconfigMakefilemlx5coreKconfigMakefileaccelMakefilediagMakefileenMakefilexskMakefileen_accelMakefileeswMakefilefpgaMakefileipoibMakefilelibMakefilesteeringMakefilemlxbf_gigeKconfigMakefilemlxfwKconfigMakefilemlxswKconfigMakefilemicrelKconfigMakefilemicrochipKconfigMakefilemicrosoftKconfigMakefilemanaMakefilemoxaKconfigMakefilemsccKconfigMakefilemyricomKconfigMakefilemyri10geMakefilenatsemiKconfigMakefileneterionKconfigMakefilevxgeMakefilenetronomeKconfigMakefilenfpMakefilebpfMakefileflowerMakefilenfpcoreMakefilenfp6000MakefilenicMakefileniKconfigMakefilenuvotonKconfigMakefilenvidiaKconfigMakefilenxpKconfigMakefileoki-semiKconfigMakefilepch_gbeKconfigMakefilepacketenginesKconfigMakefilepasemiKconfigMakefilepensandoKconfigMakefileionicMakefileqlogicKconfigMakefilenetxenMakefileqedMakefileqedeMakefileqlcnicMakefileqlgeMakefilequalcommKconfigMakefileemacMakefilermnetKconfigMakefilerdcKconfigMakefilerealtekKconfigMakefilerenesasKconfigMakefilerockerKconfigMakefilesamsungKconfigMakefilesxgbeMakefileseeqKconfigMakefilesfcKconfigMakefilefalconKconfigMakefilesienaKconfigMakefilesgiKconfigMakefilesilanKconfigMakefilesisKconfigMakefilesmscKconfigMakefilesocionextKconfigMakefilestmicroKconfigMakefilestmmacKconfigMakefilesunKconfigMakefilesynopsysKconfigMakefiletehutiKconfigMakefiletiKconfigMakefiletoshibaKconfigMakefiletundraKconfigMakefileviaKconfigMakefilewiznetKconfigMakefilexilinxKconfigMakefilexircomKconfigMakefilexscaleKconfigMakefilefddiKconfigMakefileskfpMakefilefjesMakefilehamradioKconfigMakefilehippiKconfigMakefilehypervKconfigMakefileieee802154KconfigMakefileipvlanMakefilenetdevsimMakefilepcsKconfigMakefilephyKconfigMakefileplipKconfigMakefilepppKconfigMakefileslipKconfigMakefileteamKconfigMakefilethunderboltKconfigMakefileusbKconfigMakefilevmxnet3MakefilewanKconfigMakefilelmcMakefilewimaxKconfigMakefilei2400mKconfigMakefilewirelessKconfigMakefileadmtekKconfigMakefileathKconfigMakefilear5523KconfigMakefileath10kKconfigMakefileath11kKconfigMakefileath12kKconfigMakefileath5kKconfigMakefileath6klKconfigMakefileath9kKconfigMakefilecarl9170KconfigMakefilewcn36xxKconfigMakefilewil6210KconfigMakefileatmelKconfigMakefilebroadcomKconfigMakefileb43KconfigMakefileb43legacyKconfigMakefilebrcm80211KconfigMakefilebrcmfmacKconfigMakefilebcaMakefilecywMakefilewccMakefilebrcmsmacMakefilebrcmutilMakefileciscoKconfigMakefileintelKconfigMakefileipw2x00KconfigMakefileiwlegacyKconfigMakefileiwlwifiKconfigMakefiledvmMakefilemeiMakefilemvmMakefileintersilKconfigMakefilehostapKconfigMakefileorinocoKconfigMakefilep54KconfigMakefileprism54MakefilelegacyKconfigMakefilemarvellKconfigMakefilelibertasKconfigMakefilelibertas_tfKconfigMakefilemwifiexKconfigMakefilemediatekKconfigMakefilemt76KconfigMakefilemt7603KconfigMakefilemt7615KconfigMakefilemt76x0KconfigMakefilemt76x2KconfigMakefilemt7915KconfigMakefilemt7921KconfigMakefilemt7996KconfigMakefilemt7601uKconfigMakefilequantennaKconfigMakefileqtnfmacKconfigMakefileralinkKconfigMakefilert2x00KconfigMakefilerealtekKconfigMakefilertl818xKconfigMakefilertl8180Makefilertl8187Makefilertl8xxxuKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8188eeMakefilertl8192cMakefilertl8192ceMakefilertl8192cuMakefilertl8192deMakefilertl8192eeMakefilertl8192seMakefilertl8723aeMakefilertl8723beMakefilertl8723comMakefilertl8821aeMakefilertw88KconfigMakefilertw89KconfigMakefilersiKconfigMakefilestKconfigMakefilecw1200KconfigMakefiletiKconfigMakefilewl1251KconfigMakefilewl12xxKconfigMakefilewl18xxKconfigMakefilewlcoreKconfigMakefilevirtualKconfigMakefilezydasKconfigMakefilezd1211rwKconfigMakefilexen-netbackMakefilenfcKconfigMakefilefdpKconfigMakefilemicroreadKconfigMakefilenfcmrvlKconfigMakefilenxp-nciKconfigMakefilepn533KconfigMakefilepn544KconfigMakefiles3fwrn5KconfigMakefilest-nciKconfigMakefilest21nfcaKconfigMakefilest95hfKconfigMakefilentbKconfigMakefilehwKconfigMakefileamdKconfigMakefileepfKconfigMakefileidtKconfigMakefileintelKconfigMakefilemsccKconfigMakefiletestKconfigMakefilenubusMakefilenvdimmKconfigMakefilenvmeKconfigMakefilehostKconfigMakefiletargetKconfigMakefilenvmemKconfigMakefileofKconfigMakefileunittest-dataMakefileoppKconfigMakefilepariscKconfigMakefileparportKconfigMakefilepciKconfigMakefilecontrollerKconfigMakefiledwcKconfigMakefileendpointKconfigMakefilefunctionsKconfigMakefilehotplugKconfigMakefilepcieKconfigMakefileswitchKconfigMakefilepcmciaKconfigMakefileperfKconfigMakefilehisiliconMakefilephyKconfigMakefileallwinnerKconfigMakefileamlogicKconfigMakefilebroadcomKconfigMakefilehisiliconKconfigMakefilelantiqKconfigMakefilemarvellKconfigMakefilemediatekKconfigMakefilemotorolaKconfigMakefilequalcommKconfigMakefileralinkKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefiletiKconfigMakefilepinctrlKconfigMakefileactionsKconfigMakefileaspeedKconfigMakefilebcmKconfigMakefileberlinKconfigMakefilefreescaleKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemvebuKconfigMakefilenomadikKconfigMakefilepxaKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilesh-pfcKconfigMakefilesirfMakefilespearKconfigMakefilesprdKconfigMakefilestm32KconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefilevt8500KconfigMakefilezteKconfigMakefileplatformKconfigMakefilechromeKconfigMakefilegoldfishKconfigMakefilemellanoxKconfigMakefilemipsKconfigMakefileolpcMakefilex86KconfigMakefileamdKconfigMakefilepmfKconfigMakefiledell-wmi-sysmanMakefileintelKconfigMakefileifsKconfigMakefilepmcKconfigMakefilepmtKconfigMakefilespeed_select_ifKconfigMakefileuncore-frequencyKconfigMakefilepnpKconfigMakefileisapnpKconfigMakefilepnpacpiKconfigMakefilepnpbiosKconfigMakefilepowerKconfigMakefileavsKconfigMakefileresetKconfigMakefilesupplyKconfigMakefilepowercapKconfigMakefileppsKconfigMakefileclientsKconfigMakefilegeneratorsKconfigMakefileps3MakefileptpKconfigMakefilepwmKconfigMakefilerapidioKconfigMakefiledevicesKconfigMakefileswitchesKconfigMakefilerasKconfigMakefileregulatorKconfigMakefileremoteprocKconfigMakefileresetKconfigMakefilehisiliconKconfigMakefilestiKconfigMakefiletegraKconfigMakefilerpmsgKconfigMakefilertcKconfigMakefiles390MakefileblockKconfigMakefilecharKconfigMakefilecioMakefilecryptoMakefilenetKconfigMakefilescsiMakefilevirtioMakefilesbusMakefilecharKconfigMakefilescsiKconfigMakefileaacraidMakefileaic7xxxKconfig.aic79xxKconfig.aic7xxxMakefileaicasmMakefileaic94xxKconfigMakefilearcmsrMakefilearmKconfigMakefilebe2iscsiKconfigMakefilebfaMakefilebnx2fcKconfigMakefilebnx2iKconfigMakefilecsiostorKconfigMakefilecxgbiKconfigMakefilecxgb3iKconfigcxgb4iKconfigcxlflashKconfigMakefiledevice_handlerKconfigMakefileesas2rKconfigMakefilefcoeMakefilefnicMakefilehisi_sasKconfigMakefileibmvscsiMakefileibmvscsi_tgtMakefileisciMakefilelibfcMakefilelibsasKconfigMakefilelpfcMakefilemegaraidKconfig.megaraidMakefilempi3mrKconfigMakefilempt3sasKconfigMakefilemvsasKconfigMakefilepcmciaKconfigMakefilepm8001MakefileqedfKconfigMakefileqediKconfigMakefileqla2xxxKconfigMakefileqla4xxxKconfigMakefilesmartpqiKconfigMakefilesnicMakefilesym53c8xx_2MakefileufsKconfigMakefilesfiKconfigMakefileshKconfigMakefileclkMakefileintcKconfigMakefilemapleMakefilesuperhywayMakefilesioxKconfigMakefileslimbusKconfigMakefilesnKconfigMakefilesocKconfigMakefileactionsKconfigMakefileamlogicKconfigMakefileatmelKconfigMakefilebcmKconfigMakefilebrcmstbKconfigMakefilepmMakefiledoveMakefilefslKconfigMakefileqbmanKconfigMakefileqeKconfigMakefilefujitsuKconfigMakefilegeminiMakefileimxKconfigMakefilelantiqMakefilemediatekKconfigMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefilefuseMakefiletiKconfigMakefileux500KconfigMakefileversatileKconfigMakefilexilinxKconfigMakefilezteKconfigMakefilesoundwireKconfigMakefilespiKconfigMakefilespmiKconfigMakefilessbKconfigMakefilestagingKconfigMakefileandroidKconfigMakefileionKconfigMakefileboardKconfigMakefileclocking-wizardKconfigMakefilecomediKconfigMakefiledriversMakefilekcomedilibMakefiledgncKconfigMakefileemxx_udcKconfigMakefilefbtftKconfigMakefilefsl-dpaa2KconfigMakefileethernetMakefileethswMakefilertcMakefilefsl-mcKconfigMakefilebusKconfigMakefiledpioMakefilefwserialKconfigMakefilegdm724xKconfigMakefilegoldfishKconfigMakefilegreybusKconfigMakefiletoolsMakefilegs_fpgabootKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileaddacKconfigMakefilecdcKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefileimpedance-analyzerKconfigMakefilemeterKconfigMakefileresolverKconfigMakefileks7010KconfigMakefilemediaKconfigMakefilebcm2048KconfigMakefiledavinci_vpfeKconfigMakefileimxKconfigMakefileimx074KconfigMakefilemt9t031KconfigMakefileomap4issKconfigMakefiletegra-vdeKconfigMakefilezoranKconfigMakefilemostKconfigMakefilecdevKconfigMakefiledim2KconfigMakefilei2cKconfigMakefilenetKconfigMakefilesoundKconfigMakefileusbKconfigMakefilevideoKconfigMakefilemt29f_spinandKconfigMakefilemt7621-dmaKconfigMakefilemt7621-dtsKconfigMakefilemt7621-ethKconfigMakefilemt7621-gpioKconfigMakefilemt7621-mmcKconfigMakefilemt7621-pciMakefilemt7621-pinctrlKconfigMakefilemt7621-spiKconfigMakefilenetlogicKconfigMakefilenvecKconfigMakefileocteonocteon-usbKconfigMakefileKconfigMakefileolpc_dconKconfigMakefilepi433KconfigMakefilertl8188euKconfigMakefilertl8192eKconfigMakefilertl8192eKconfigMakefilertl8192uKconfigMakefileieee80211Makefilertl8712KconfigMakefilertl8723bsKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8822beMakefilerts5208KconfigMakefileskeinKconfigMakefilesm750fbKconfigMakefilespeakupKconfigMakefileunisysKconfigMakefilevisorhbaKconfigMakefilevisorinputKconfigMakefilevisornicKconfigMakefilevboxvideoKconfigMakefilevc04_servicesKconfigMakefilebcm2835-audioKconfigMakefilebcm2835-cameraKconfigMakefilevmeMakefiledevicesKconfigMakefilevt6655KconfigMakefilevt6656KconfigMakefilewilc1000KconfigMakefilewlan-ngKconfigMakefilexgifbKconfigMakefiletargetKconfigMakefileiscsiKconfigMakefilecxgbitKconfigMakefileloopbackKconfigMakefilesbpKconfigMakefiletcm_fcKconfigMakefiletcMakefileteeKconfigMakefileopteeKconfigMakefilethermalKconfigMakefilebroadcomKconfigMakefileintelKconfigMakefileint340x_thermalKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefileti-soc-thermalKconfigMakefilethunderboltKconfigMakefilettyKconfigMakefilehvcKconfigMakefileipwirelessMakefileserdevKconfigMakefileserial8250KconfigMakefileKconfigMakefilecpm_uartMakefilejsmMakefilevtMakefileuioKconfigMakefileusbKconfigMakefileatmKconfigMakefilec67x00MakefilechipideaKconfigMakefileclassKconfigMakefilecommonKconfigMakefilecoreKconfigMakefiledwc2KconfigMakefiledwc3KconfigMakefileearlyMakefilegadgetKconfigMakefilefunctionMakefilelegacyKconfigMakefileudcKconfigMakefileaspeed-vhubKconfigMakefilebdcKconfigMakefilehostKconfigMakefilewhciMakefileimageKconfigMakefileisp1760KconfigMakefilemiscKconfigMakefilesisusbvgaKconfigMakefilemonKconfigMakefilemtu3KconfigMakefilemusbKconfigMakefilephyKconfigMakefilerenesas_usbhsKconfigMakefilerolesKconfigMakefileserialKconfigMakefileMakefile-keyspan_pda_fwstorageKconfigMakefiletypecKconfigMakefilealtmodesKconfigMakefilemuxKconfigMakefiletcpmKconfigMakefiletipdKconfigMakefileucsiKconfigMakefileusbipKconfigMakefilewusbcoreKconfigMakefileuwbKconfigMakefilei1480MakefiledfuMakefilevdpaKconfigMakefilealibabaMakefileifcvfMakefilemlx5Makefilevdpa_simMakefilevirtio_pciMakefilevfioKconfigMakefilemdevKconfigMakefilepciKconfigMakefileplatformKconfigMakefileresetKconfigMakefilevhostKconfigKconfig.vringhMakefilevideoKconfigMakefilebacklightKconfigMakefileconsoleKconfigMakefilefbdevKconfigMakefileatyMakefilecoreMakefilegeodeKconfigMakefilei810MakefileintelfbMakefilekyroMakefilematroxMakefilemb862xxMakefilembxMakefilemmpKconfigMakefilefbKconfigMakefilehwKconfigMakefilepanelKconfigMakefilenvidiaMakefileomapKconfigMakefileomap2KconfigMakefileomapfbKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilerivaMakefilesavageMakefilesisMakefilevermilionMakefileviaMakefilelogoKconfigMakefilevirtKconfigMakefilecocosev-guestKconfigMakefiletdx-guestKconfigMakefilenitro_enclavesKconfigMakefilevboxguestKconfigMakefilevirtioKconfigMakefilevisorbusKconfigMakefilevlynqKconfigMakefilevmeKconfigMakefileboardsKconfigMakefilebridgesKconfigMakefilew1KconfigMakefilemastersKconfigMakefileslavesKconfigMakefilewatchdogKconfigMakefilexenKconfigMakefileeventsMakefilexen-pcibackMakefilexenbusMakefilexenfsMakefilezorroKconfigMakefilefirmwareMakefilefs9pKconfigMakefileKconfigKconfig.binfmtMakefileadfsKconfigMakefileaffsKconfigMakefileafsKconfigMakefileautofsKconfigMakefilebefsKconfigMakefilebfsKconfigMakefilebtrfsKconfigMakefilecachefilesKconfigMakefilecephKconfigMakefilecifsKconfigMakefilecodaKconfigMakefileconfigfsKconfigMakefilecramfsKconfigMakefilecryptoKconfigMakefiledebugfsMakefiledevptsMakefiledlmKconfigMakefileecryptfsKconfigMakefileefivarfsKconfigMakefileefsKconfigMakefileexportfsMakefileext2KconfigMakefileext4KconfigMakefilef2fsKconfigMakefilefatKconfigMakefilefreevxfsKconfigMakefilefscacheKconfigMakefilefuseKconfigMakefilegfs2KconfigMakefilehfsKconfigMakefilehfsplusKconfigMakefilehostfsMakefilehpfsKconfigMakefilehugetlbfsMakefileiomapMakefileisofsKconfigMakefilejbd2KconfigMakefilejffs2KconfigMakefilejfsKconfigMakefilekernfsKconfigMakefilelockdMakefileminixKconfigMakefilenfsKconfigMakefileblocklayoutMakefilefilelayoutMakefileflexfilelayoutMakefilenfs_commonMakefilenfsdKconfigMakefilenilfs2KconfigMakefilenlsKconfigMakefilenotifyKconfigMakefilednotifyKconfigMakefilefanotifyKconfigMakefileinotifyKconfigMakefilentfsKconfigMakefileocfs2KconfigMakefileclusterMakefiledlmMakefiledlmfsMakefileomfsKconfigMakefileopenpromfsMakefileorangefsKconfigMakefileoverlayfsKconfigMakefileprocKconfigMakefilepstoreKconfigMakefileqnx4KconfigMakefileqnx6KconfigMakefilequotaKconfigMakefileramfsMakefilereiserfsKconfigMakefileromfsKconfigMakefilesquashfsKconfigMakefilesysfsKconfigMakefilesysvKconfigMakefiletracefsMakefileubifsKconfigMakefileudfKconfigMakefileufsKconfigMakefilexfsKconfigMakefileincludeacpiacbuffer.hacconfig.hacexcep.hacnames.hacoutput.hacpi.hacpi_bus.hacpi_drivers.hacpi_io.hacpi_lpat.hacpi_numa.hacpiosxf.hacpixf.hacrestyp.hactbl.hactbl1.hactbl2.hactbl3.hactypes.hacuuid.hapei.hbattery.hbutton.hcppc_acpi.hghes.hhed.hnfit.hpcc.hpdc_intel.hplatformacenv.hacenvex.hacgcc.hacgccex.hacintel.haclinux.haclinuxex.hprocessor.hreboot.hvideo.hasm-generic4level-fixup.h5level-fixup.hasm-offsets.hasm-prototypes.hatomic-instrumented.hatomic-long.hatomic.hatomic64.haudit_change_attr.haudit_dir_write.haudit_read.haudit_signal.haudit_write.hbarrier.hbitopsbitops-instrumented.hbitops.h__ffs.h__fls.harch_hweight.hatomic.hbuiltin-__ffs.hbuiltin-__fls.hbuiltin-ffs.hbuiltin-fls.hconst_hweight.hext2-atomic-setbit.hext2-atomic.hffs.hffz.hfind.hfls.hfls64.hhweight.hle.hlock.hnon-atomic.hsched.hbitsperlong.hbug.hbugs.hcache.hcacheflush.hchecksum.hcmpxchg-local.hcmpxchg.hcompat.hcurrent.hdelay.hdevice.hdiv64.hdma-contiguous.hdma-mapping.hdma.hearly_ioremap.hemergency-restart.herror-injection.hexec.hexport.hextable.hfb.hfixmap.hftrace.hfutex.hgetorder.hgpio.hhardirq.hhugetlb.hhw_irq.hhyperv-tlfs.hide_iops.hint-ll64.hio.hioctl.hiomap.hirq.hirq_regs.hirq_work.hirqflags.hkdebug.hkmap_size.hkprobes.hkvm_para.hkvm_types.hlinkage.hlocal.hlocal64.hmcs_spinlock.hmemory_model.hmm-arch-hooks.hmm_hooks.hmmiowb.hmmiowb_types.hmmu.hmmu_context.hmodule.hmshyperv.hmsi.hnuma.hpage.hparam.hparport.hpci.hpci_iomap.hpercpu.hpgalloc.hpgtable-nop4d-hack.hpgtable-nop4d.hpgtable-nopmd.hpgtable-nopud.hpgtable.hpgtable_uffd.hpreempt.hptrace.hqrwlock.hqrwlock_types.hqspinlock.hqspinlock_types.hresource.hseccomp.hsections.hsegment.hserial.hset_memory.hsignal.hsimd.hsizes.hspinlock.hstatfs.hstring.hswitch_to.hsyscall.hsyscalls.htermios-base.htermios.htimex.htlb.htlbflush.htopology.htrace_clock.huaccess.hunaligned.hunistd.huser.hvdsovsyscall.hvga.hvmlinux.lds.hvtime.hword-at-a-time.hxor.hclocksourcearm_arch_timer.hhyperv_timer.hpxa.hsamsung_pwm.htimer-sp804.htimer-ti-dm.hconfig64bit.h6lowpan.h8139cp.h8139too8139too.h8129.h842compress.hdecompress.hac97bus.hadvisesyscalls.haio.halim7101wdt.hallowdevcoredump.halterastapl.haltivec.halx.hamdphy.hapds9802als.haperturehelpers.haquantiaphy.harchcpuproberelease.hdmaaddrt64bit.henablehugepagemigration.hmemoryhotplug.hhotremove.hsplitpmdptlock.hhasdevmemisallowed.hdmamapdirect.helfrandomize.hfastmultiplier.hforcedmaunencrypted.hfortifysource.hgcovprofileall.hgiganticpage.hhugepd.hkexecpurgatory.hmemencrypt.hmembarriercallbacks.hmemremapcompatalign.hmmiowb.hnonoverlappingaddressspace.hphystodma.hpkeys.hpmemapi.hptespecial.hsgchain.htickbroadcast.huaccessflushcache.hmcsafe.hubsansanitizeall.hwalkmemory.hzonedevice.hhavenmisafecmpxchg.hhibernationpossible.hkeepmemblock.hmayhavepcfdc.hmemoryprobe.hmighthavepcparport.hserio.hmmaprndbitsbits.hmax.hmin.hcompatbitsbits.hmax.hmin.hrandom.hselectmemorymodel.hsparsememdefault.henable.hsupportsatomicrmw.hdebugpagealloc.hmemoryfailure.hnumabalancing.huprobes.hsuspendnonzerocpu.hpossible.husebuiltinbswap.hcmpxchglockref.huseshighvmaflags.hwantcompatipcparseversion.hipcparseversion.hirqsoffactivatemm.holdcompatipc.hweakreleaseacquire.harmgicmaxnr.hasn1.hassociativearray.hasymmetrickeytype.hpublickeysubtype.hasynccore.hmemcpy.hpq.hraid6recov.htest.htxdma.hxor.hataata.hbmdma.hgeneric.hpiix.hsff.hverboseerror.hatl1.hatl1c.hatl1e.hatl2.hatmatm.hbr2684.hclip.hlane.hatomic64selftest.hauditaudit.harch.hauditsyscall.hauto.confauto.conf.cmdautofsfs.hautofs4fs.hauxiliarybus.hbacklightclassdevice.hlcdsupport.hlp855x.hpwm.hballooncompaction.hbareudp.hbasefull.hsmall.hbcmnetphylib.hbcm7xxxphy.hbcm87xxphy.hbcmabcma.hdrivergmaccmn.hgpio.hpci.hhostpcipci.hpossible.hpossible.hbe2iscsi.hbe2netbe2net.hhwmon.hlancer.hskyhawk.hbfqgroupiosched.hbigkeys.hbinaryprintf.hbinfmtelf.hmisc.hscript.hbitfieldkunittest.hbitreverse.hbitskunittest.hblkcgroupcgroup.hfcappid.hiolatency.hrwstat.hdebugfs.hdevdev.hbsg.hbsglib.hdmdm.hbuiltin.hinitrd.hintegrityintegrity.ht10.hiotrace.hlooploop.hmincount.hmd.hnbd.hnullblk.hnvme.hpmem.hramram.hcount.hsize.hrbd.hrsxx.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.hblockblock.hcompat.hbnx2.hbnx2xbnx2x.hsriov.hbnxtbnxt.hdcb.hfloweroffload.hhwmon.hsriov.hbonding.hbootparamhardlockuppanicvalue.hhungtaskpanicvalue.hsoftlockuppanicvalue.hbootxtext.hbounce.hbpfbpf.hevents.hjitjit.halwayson.hdefaulton.hlsm.hstreamparser.hsyscall.hunprivdefaultoff.hbql.hbranchprofilenone.hbridgebridge.hebt8023.hamong.harp.harpreply.hbroute.hdnat.hip.hip6.hlimit.hlog.hmarkmark.ht.hnflog.hpkttype.hredirect.hsnat.hstp.htfilter.hnat.hvlan.higmpsnooping.hnetfilter.hnfebtables.hvlanfiltering.hbroadcomphy.hbsddisklabel.hprocessacctacct.hv3.hbtbt.hath3k.hbcm.hbnepbnep.hmcfilter.hprotofilter.hbredr.hcmtp.hdebugfs.hhcibcm203x.hhcibfusb.hhcibpa10x.hhcibtsdio.hhcibtusbhcibtusb.hautosuspend.hbcm.hmtk.hrtl.hhciuarthciuart.hath3k.hbcsp.hh4.hhcivhci.hhidp.hhs.hintel.hle.hmrvlmrvl.hsdio.hmtk.hrfcommrfcomm.htty.hrtl.hbtree.hbtt.hbugbug.hondatacorruption.hbuildbin2c.hbuildtimeextablesort.hcachefiles.hcancan.h8devusb.hbcm.hccancan.hpci.hplatform.hcalcbittiming.hcc770cc770.hplatform.hdev.hemspci.husb.hesdusb2.hgw.hkvaserpci.husb.hleds.hpeakpci.hpciec.husb.hplxpci.hraw.hsja1000sja1000.hplatform.hslcan.hsofting.hucan.hvcan.hcapiavm.hcardbus.hcaviumptp.hcb710core.hdebugassumptions.hcccanlink.hhaskasangeneric.hsancovtracepc.hstackprotectornone.hworkingnosanitizeaddress.hisgcc.hoptimizeforperformance.hcdromcdrom.hpktcdvdpktcdvd.hbuffers.hceccore.hplatformdrivers.hcephfsfs.hposixacl.hsecuritylabel.hliblib.husednsresolver.hcfsbandwidth.hcgroupbpf.hcpuacct.hdevice.hfreezer.hhugetlb.hnetclassid.hprio.hperf.hpids.hrdma.hsched.hwriteback.hcgroups.hchargersmb347.hchecksignature.hcheckpointrestore.hchelsioinlinecrypto.hipsecinline.hlib.ht4.ht4vf.htlsdevice.hchrdevsch.hsg.hst.hcicadaphy.hcifscifs.hallowinsecurelegacy.hdebug.hdfsupcall.hposix.hsmbdirect.hupcall.hweakpwhash.hxattr.hclangversion.hcleancache.hclkbldi8253.hclonebackwards.hclsu32mark.hperf.hclztab.hcmacma.hareas.hcmdlinecmdline.hkunittest.hcmm.hcnic.hcompaction.hcompatcompat.h32bittime.hbinfmtelf.holdsigaction.hconfigfsfs.hconnector.hconsolelogleveldefault.hquiet.hpoll.htranslations.hcontextswitchtracer.htracking.hcontigalloc.hcordic.hcoredumpdefaultelfheaders.hcoredump.hcortinaphy.hcpufreqfreq.hdefaultgovperformance.hgovattrset.hcommon.hconservative.hondemand.hperformance.hpowersave.hschedutil.huserspace.hstat.hidleidle.hgovhaltpoll.hmenu.hisolation.hlittleendian.hrmap.hcpusets.hcramfscramfs.hblockdev.hcrashcore.hdump.hcrcccitt.hitut.ht10dif.hcrc16.hcrc32crc32.hsliceby8.hcrc7.hcrc8.hcrossmemoryattach.hcryptocrypto.h842.hacomp2.haead.haead2.haes.hakcipher.hakcipher2.halgapi.halgapi2.hansicprng.hanubis.harc4.hauthenc.hblkcipher.hblkcipher2.hblowfishblowfish.hcommon.hcamellia.hcastcommon.hcast5.hcast6.hcbc.hccm.hcfb.hchacha20.hchacha20poly1305.hcmac.hcrc32.hcrc32c.hcrct10dif.hcryptd.hctr.hcts.hdeflate.hdes.hdevchelsio.hnitroxnitrox.hcnn55xx.hnxnx.hcompresscompress.hpowernv.hpseries.hvmxvmx.hencrypt.hdrbgdrbg.hctr.hhash.hhmac.hmenu.hecb.hecdh.hechainiv.hessiv.hfcrypt.hfipsfips.hname.hgcm.hgf128mul.hghash.hhashhash.hinfo.hhash2.hhmac.hhw.hjitterentropy.hkhazad.hkpp.hkpp2.hlibarc4.hsha256.hlrw.hlzo.hmanager.hmanager2.hmd4.hmd5.hmichaelmic.hnull.hnull2.hpcbc.hpcrypt.hpoly1305.hrmd128.hrmd160.hrmd256.hrmd320.hrngrng.hdefault.hrng2.hrsa.hsalsa20.hseed.hseqiv.hserpent.hsha1.hsha256.hsha3.hsha512.htea.htest.htgr192.htwofishtwofish.hcommon.huseruser.hapiapi.haead.hhash.hrng.hskcipher.hvmac.hworkqueue.hwp512.hxcbc.hxts.hcuse.hcxlcxl.hafudriverops.hbase.hbimodal.hlib.hcxlflash.hcyclades.hcypressfirmware.hdamondamon.hdbgfs.hpaddr.hreclaim.hvaddr.hdavicomphy.hdaxdax.hdriver.hdcachewordaccess.hdcb.hdeaoc.hdebugbugverbose.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hlist.hmemoryinit.hsectionmismatch.hshirq.hstackoverflow.hdebugger.hdecompressbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hdefaultcubic.hfqcodel.hhostname.hhungtasktimeout.hmmapminaddr.hnetsch.hsecurityselinux.htcpcong.hdetecthungtask.hdevcoredump.hdaxdax.hpmempmem.hcompat.hdeviceprivate.hdevmem.hdevtmpfsdevtmpfs.hmount.hdimlib.hdlcidlci.hmax.hdlmdlm.hdebug.hdmbioprison.hbufio.hcachecache.hsmq.hcrypt.hdebug.hdelay.hera.hflakey.hintegrity.hloguserspace.hwrites.hmirror.hmultipathmultipath.hhst.hioa.hql.hst.hpersistentdata.hraid.hsnapshot.hswitch.hthinprovisioning.huevent.hverity.hwritecache.hzero.hdmaengineengine.hraid.hof.hopsops.hbypass.hsharedbuffer.hdmadevices.hdmatest.hdnet.hdnotify.hdnsresolver.hdp83640phy.hdp83822phy.hdp83848phy.hdp83867phy.hdp83tc811phy.hdql.hdrmdrm.hamdacp.hdc.hamdgpuamdgpu.huserptr.hast.hbochs.hbridge.hbuddy.hcirrusqemu.hdisplaydphelper.hhdcphelper.hhdmihelper.hhelper.hdpauxchardev.hexportfortests.hfbdevemulation.hoveralloc.hgemshmemhelper.hi2cch7006.hsil164.hkmshelper.hkunittesttest.hhelpers.hlibrandom.hloadedidfirmware.hmgag200.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvirtiogpu.hvkms.hvramhelper.hdstcache.hdtc.hdtl.hdummydummy.hconsoleconsole.hcolumns.hrows.hdvba8293.haf9013.haf9033.hatbm8830.hau8522au8522.hdtv.hv4l.hav7110av7110.hir.hosd.hb2c2flexcopflexcop.hpci.husb.hbcm3510.hbt8xx.hbudgetbudget.hav.hci.hcore.hpatch.hcore.hcx22700.hcx22702.hcx24110.hcx24116.hcx24117.hcx24120.hcx24123.hcxd2099.hcxd2820r.hcxd2841er.hddbridge.hdib3000mb.hdib3000mc.hdib7000m.hdib7000p.hdib8000.hdm1105.hdrx39xyj.hdrxd.hdrxk.hds3000.hdummyfe.hdynamicminors.hec100.hfiredtvfiredtv.hinput.hgp8pskfe.hhopper.hisl6405.hisl6421.hisl6423.hix2505v.hl64781.hlg2160.hlgdt3305.hlgdt3306a.hlgdt330x.hlgs8gxx.hlnbh25.hlnbp21.hlnbp22.hm88ds3103.hm88rs2000.hmantis.hmaxadapters.hmb86a16.hmb86a20s.hmn88472.hmn88473.hmt312.hmt352.hmxl5xx.hnet.hngene.hnxt200x.hnxt6000.hor51132.hor51211.hpll.hpluto2.hpt1.hrtl2830.hrtl2832.hs5h1409.hs5h1411.hs5h1420.hs921.hsi2165.hsi2168.hsi21xx.hsp8870.hsp887x.hstb0899.hstb6000.hstb6100.hstv0288.hstv0297.hstv0299.hstv0367.hstv0900.hstv090x.hstv0910.hstv6110.hstv6110x.hstv6111.htc90522.htda10021.htda10023.htda10048.htda1004x.htda10071.htda10086.htda18271c2dd.htda665x.htda8083.htda8261.htda826x.hts2020.httusbbudget.hdec.htua6100.htunercx24113.hdib0070.hdib0090.hitd1000.husbusb.ha800.haf9005af9005.hremote.haf9015.haf9035.hanysee.hau6610.haz6007.haz6027.hce6230.hcinergyt2.hcxusb.hdib0700.hdib3000mc.hdibusbmb.hmc.hdigitv.hdtt200u.hdtv5100.hdw2102.hec168.hgl861.hgp8psk.hlme2510.hm920x.hmxl111sf.hnovatusb2.hopera1.hpctv452e.hrtl28xxu.htechnisatusb2.httusb2.humt010.hv2.hvp702x.hvp7045.hves1820.hves1x93.hzl10036.hzl10039.hzl10353.hdwdmacdmac.hcore.hdynamicdebug.hftraceftrace.hwithregs.he1000e.hearlyprintk.hedacedac.hatomicscrub.hcpc925.hlegacysysfs.hsupport.heeh.heeprom93cx6.hat24.hlegacy.hmax6875.hefipartition.helfcore.helfcore.henablemustcheck.henclosureservices.hencryptedkeys.henergymodel.henic.hepaprboot.hparavirt.hepoll.hethernet.hethoc.hethtoolnetlink.heventtracing.heventfd.hevmevm.hattrfsuuid.hexclusivesystemram.hexportfsexportfs.hblockops.hext4fsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextrafirmware.htargets.hfadump.hfailover.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.hfbfb.hbacklight.hcfbcopyarea.hfillrect.himageblit.hcmdline.hdeferredio.hibmgxt4500.hmacmodes.hmatroxmatrox.hg.hmodehelpers.hnotify.hnvidianvidia.hbacklight.hof.hradeonradeon.hbacklight.hssd1307.hsyscopyarea.hfillrect.hfops.himageblit.htileblitting.hvga16.hfcappid.hfhandle.hfibrules.hfilelocking.hfipssignatureselftest.hfirewirefirewire.hnet.hohci.hsbp2.hfixedphy.hfm10k.hfont8x16.h8x8.hsupport.hforcemaxzoneorder.hsmp.hfortifysource.hframewarn.hframebufferconsoleconsole.hdeferredtakeover.hdetectprimary.hrotation.hfreezer.hfrontswap.hfsdaxdax.hpmd.hiomap.hmbcache.hposixacl.hfscachefscache.hstats.hfsnotify.hftraceftrace.hmcountrecord.hsyscalls.hfunctiongraphtracer.htracer.hfusefs.hfusionfusion.hlogging.hmaxsge.hsas.hspi.hfutexfutex.hpi.hfwloaderloader.hsysfs.huserhelper.hgactprob.hgarp.hgccversion.hgenericallocator.hbug.hclockeventsclockevents.hbroadcast.hcmosupdate.hcpucpu.hautoprobe.hvulnerabilities.hhweight.hiomap.hirqinjection.hmigration.hshowshow.hlevel.hisadma.hmsiirq.hnetutils.hpciiomap.hsmpidlethread.hstrncpyfromuser.hstrnlenuser.htimevsyscall.htracer.hgeneve.hgenwqegenwqe.hplatformerrorrecovery.hgfs2fsfs.hlockingdlm.hgigasetbase.hcapi.hm101.hm105.hglob.hgpiopca953x.hpcf857x.hsysfs.hviperboard.hgpiolibgpiolib.hfastpathlimit.hirqchip.hgraceperiod.hgrocells.hgve.hhangchecktimer.hhardenedusercopyusercopy.hfallback.hhardirqsswresend.hhardlockupdetector.hhasdma.hiomem.hioportmap.hhashkunittest.hhavearchauditsyscall.hjumplabel.hkgdb.hmmaprndbits.hcompatbits.hseccompfilter.hsoftdirty.htracehook.htransparenthugepage.hbootmeminfonode.hcontexttracking.hdebugkmemleak.hstackoverflow.hdynamicftraceftrace.hwithregs.hebpfjit.hefficientunalignedaccess.hfastgup.hftracemcountrecord.hfunctiongraphtracer.htracer.hgccplugins.hhardenedusercopyallocator.hhardlockupdetectorarch.hhwbreakpoint.hide.himakexec.hioremapprot.hirqtimeaccounting.hkernelgzip.hxz.hkprobeskprobes.honftrace.hkretprobes.hkvmeventfd.hirqbypass.hirqchip.hirqfd.hvcpuasyncioctl.hlddeadcodedataelimination.hlivepatch.hmemorypresent.hmemorylessnodes.hmodarchspecific.hnetdsa.hnminmi.hwatchdog.hoprofile.hoptprobes.hpcspkrplatform.hperfeventsevents.hnmi.hregs.huserstackdump.hregsandstackaccessapi.hreliablestacktrace.hrseq.hsetuppercpuarea.hstackprotector.hsyscalltracepoints.hvirtcpuaccountingaccounting.hgen.hhdlchdlc.hcisco.hfr.hppp.hraw.hhdmi.hheaderscheck.hhidhid.ha4tech.hacrux.happle.happleir.haureal.hbatterystrength.hbelkin.hcherry.hchicony.hcypress.hdragonrise.helan.helecom.hezkey.hgeneric.hgreenasia.hgyration.hholtek.hicade.hite.hjabra.hkensington.hkeytouch.hkye.hlcpower.hled.hlogitechlogitech.hdj.hhidpp.hmagicmouse.hmicrosoft.hmonterey.hmultitouch.hnti.hntrig.hortek.hpantherlord.hpetalynx.hpicolcdpicolcd.hbacklight.hcir.hfb.hlcd.hleds.hpid.hprimax.hprodikeys.hrmi.hroccat.hsaitek.hsamsung.hsmartjoyplus.hsony.hspeedlink.hsteelseries.hsunplus.hthingm.hthrustmaster.htivo.htopseed.htwinhan.huclogic.hwacom.hwaltop.hwiimote.hzeroplus.hzydacron.hhidraw.hhighrestimers.hhisax163.h1tr6.havma1pcmcia.hbkma4t.hdiehldiva.helsa.heuro.hfritzpcipnp.hgazel.hhfcsx.hhfc4s8s.hmaxcards.hni1.hniccy.hnokeypad.hllc.hsendcomplete.hs0box.hsctquadro.hsedlbauer.hst5481.hw6692.hhisttriggers.hhmmmirror.hhotplugcpu.hpcipci.hpowernv.hrparpa.hdlpar.hshpc.hhsaamdamd.hsvm.hhugetlbpagepage.hsizevariable.hhugetlbfs.hhvperfctrs.hhvcconsole.hdriver.hirq.hopal.hrtas.hhvcs.hhwconsole.hrandomrandom.hpowernv.hpseries.htimeriomem.htpm.hvirtio.hhwlattracer.hhwmonhwmon.hvid.hhwpoisoninject.hhwspinlock.hhysdnhysdn.hcapi.hhzhz.h100.hi2ci2c.halgobit.halgopca.hboardinfo.hchardev.hcompat.hdesignwarecore.hplatform.hdiolanu2c.hhelperauto.hhid.hmpc.hmuxmux.hmlxcpld.hnforce2.hopal.hparportparport.hlight.hpcaplatform.hsimtec.hsmbus.hstub.htinyusb.hviperboard.hi40ei40e.hdcb.hi40evf.hi6300esbwdt.hi8253lock.hiavf.hibmbsr.hibmveth.hibmvio.hibmvmc.hibmvnic.hiceice.hswitchdev.hicplusphy.hidlepagetracking.hieee802154ieee802154.h6lowpan.hdrivers.hfakelb.hsocket.hifb.hifcvf.higbigb.hhwmon.higbvf.higc.hikheaders.hillegalpointervalue.himaima.happraiseappraise.hbootparam.hmodsig.harchpolicy.hdefaulthashhash.hsha256.htemplate.hkexec.hlsmrules.hmeasurepcridx.hreadpolicy.hsecureandortrustedboot.hsigtemplate.htrustedkeyring.hwritepolicy.hinetinet.hah.hdiagdiag.hdestroy.hespesp.hoffload.hespintcp.hipcomp.hmptcpdiag.hrawdiag.hsctpdiag.htcpdiag.htunnel.hudpdiag.hxfrmtunnel.hinet6ah.hespesp.hoffload.hespintcp.hipcomp.htunnel.hxfrmtunnel.hinfinibandinfiniband.haddrtranstrans.hconfigfs.hbnxtre.hcxgb4.hipoibipoib.hcm.hdebug.hirdma.hiser.hisert.hondemandpaging.hqedr.hsrp.hsrpt.huseraccess.hmad.hmem.hvirtdma.hinitenvarglimit.hinitramfssource.hinlinereadunlockunlock.hirq.hspinunlockirq.hwriteunlockunlock.hirq.hinotifyuser.hinputinput.hatiremote2.hcm109.hevdev.hffmemless.hgpiorotaryencoder.hkeyboard.hkeyspanremote.hleds.hmisc.hmouse.hmousedevmousedev.hscreenx.hy.hpolldev.hpowermate.hpwmbeeper.hsparsekmap.htablet.htouchscreen.huinput.hyealink.hintegrityintegrity.hasymmetrickeys.haudit.hplatformkeyring.hsignature.htrustedkeyring.hintelxwayphy.hintervaltree.hioeventirq.hiommuapi.hdefaultdmastrict.hhelper.hiova.hsupport.hionic.hioschedbfq.hipadvancedrouter.hfibtriestats.hmroutemroute.hcommon.hmultipletables.hmulticast.hmultipletables.hnfarpmangle.harpfilter.harptables.hfilter.hiptables.hmangle.hmatchah.hecn.hrpfilter.httl.hnat.hraw.hsecurity.htargetecn.hmasquerade.hnetmap.hredirect.hreject.hsynproxy.httl.hpimsmv1.hv2.hrouteclassid.hmultipath.hverbose.hsctp.hsetset.hbitmapip.hipmac.hport.hhaship.hipmac.hipmark.hipport.hipportip.hipportnet.hmac.hnet.hnetiface.hnetnet.hnetport.hnetportnet.hlistset.hmax.hvsvs.hdh.hfo.hftp.hipv6.hlblc.hlblcr.hlc.hmhmh.htabindex.hnfct.hnq.hovf.hpesip.hprotoahah.hesp.hesp.hsctp.htcp.hudp.hrr.hsed.hshsh.htabbits.htabbits.hwlc.hwrr.hip6nffilter.hiptables.hmangle.hmatchah.heui64.hfrag.hhl.hipv6header.hmh.hopts.hrpfilter.hrt.hnat.hraw.hsecurity.htargetmasquerade.hnpt.hreject.hsynproxy.hipcns.hipmideviceinterface.hhandler.hpanicevent.hstring.hplatdata.hpowernv.hpoweroff.hsi.hssif.hwatchdog.hipppfilter.hipv6ipv6.hgre.hmip6.hmroutemroute.hmultipletables.hmultipletables.hndiscnodetype.hoptimisticdad.hpimsmv2.hrouteinfo.hrouterpref.hsitsit.h6rd.htunnel.hvti.hipvlan.hipvtap.hirgpiocir.htx.higuana.himonimon.hdecoder.hraw.hjvcdecoder.hmcekbddecoder.hmceusb.hnecdecoder.hpwmtx.hrc5decoder.hrc6decoder.hredrat3.hsanyodecoder.hserialserial.htransmitter.hsir.hsonydecoder.hstreamzap.httusbir.hirqallcpus.hbypassmanager.hdomain.hforcedthreading.hpoll.hwork.hirqchip.hisadmaapi.hiscsibootsysfs.htargettarget.hcxgb4.htcp.hisdnisdn.haudio.hcapicapi.hcapi20.hcapidrvcapidrv.hverbose.hmiddleware.hdiversion.hdrvavmb1b1pci.hb1pciv4.hc4.ht1pci.hgigaset.hhisax.hhdlc.hi4l.hmpp.hpppppp.hvj.httyfax.hisl29003.hisl29020.hiso9660fs.hixgbeixgbe.hdcb.hhwmon.hipsec.hixgbevfixgbevf.hipsec.hjbd2.hjoliet.hjumplabellabel.hfeaturechecks.hkallsymskallsyms.hall.hbaserelative.hkarmapartition.hkdbcontinuecatastrophic.hdefaultenable.hkeyboard.hkernelkernel.releasegzip.hstart.hkernfs.hkexeckexec.hcore.hfile.hkeyboardatkbd.hkeyskeys.hcompat.hkgdbkgdb.hhonourblocklist.hkdb.hserialconsole.htests.hkprobeevents.hkprobeskprobes.honftrace.hkretprobes.hksm.hkunitkunit.halltests.hdebugfs.hexampletest.htest.hkvmkvm.hbook3s6464.hhandler.hhv.hhandler.hhvpossible.hcompat.hguest.hvfio.hxics.hxive.hl2tpl2tp.hdebugfs.heth.hip.hv3.hlcdclassdevice.hplatform.hledtriggerphy.hledsblinkm.hbrightnesshwchanged.hclass.hlm3530.hlp3944.hlp5521.hlp5523.hlp5562.hlp55xxcommon.hlt3593.hmlxreg.hpowernv.htriggerbacklight.hcamera.hdefaulton.hdisk.hgpio.hheartbeat.honeshot.htimer.htransient.htriggers.hlibcrc32c.hlibfc.hlibfcoe.hlibfdt.hlibnvdimm.hlinearrangesranges.hkunittest.hliquidioliquidio.hvf.hlirc.hlistkunittest.hlivepatch.hllc.hloadppckeys.hlocalversion.hlockdebuggingsupport.hdownkernel.hspinonowner.htorturetest.hlockdlockd.hv4.hlockdepsupport.hlockupdetector.hlogbufshift.hcpumaxbufshift.hlogitechff.hlogologo.hlinuxclut224.hloopbacktarget.hlparcfg.hlsiet1011cphy.hlsmlsm.hmmapminaddr.hlwtunnellwtunnel.hbpf.hlxtphy.hlz4decompress.hlzocompress.hdecompress.hmacemumousebtn.hpartition.hmac802154.hmacintoshdrivers.hmacsec.hmacvlan.hmacvtap.hmagicsysrqsysrq.hdefaultenable.hserial.hmantiscore.hmarvell10gphy.hphy.hmaxrawdevs.hmaxlineargphy.hmdmd.hautodetect.hcluster.hfaulty.hlinear.hraid0.hraid1.hraid10.hraid456.hmdiomdio.hbcmunimac.hbitbang.hbus.hcavium.hdevice.hgpio.hhisifemac.hmsccmiim.hocteon.hthunder.hmediaalteraci.hanalogtvsupport.hattach.hcamerasupport.hcecsupport.hcommonoptions.hdigitaltvsupport.hpcisupport.hradiosupport.hsubdrvautoselect.hsupport.htunertuner.he4000.hfc0011.hfc0012.hfc0013.hfc2580.hit913x.hm88rs6000t.hmax2165.hmc44s803.hmt2060.hmt2063.hmt20xx.hmt2131.hmt2266.hmxl5005s.hmxl5007t.hqm1d1b0004.hqm1d1c0042.hqt1010.hr820t.hsi2157.hsimple.htda18212.htda18218.htda18250.htda18271.htda827x.htda8290.htda9887.htea5761.htea5767.htua9001.hxc2028.hxc4000.hxc5000.husbsupport.hmegaraidsas.hmemsoftdirty.hmembarrier.hmemcgmemcg.hkmem.hswap.hmemcpykunittest.hmemfdcreate.hmemoryballoon.hfailure.hhotplug.hhotremove.hisolation.hmemregion.hmemstickmemstick.hjmicron38x.hr592.hrealtekpci.htifmms.hmessagelogleveldefault.hmfdcore.hsm501sm501.hgpio.hviperboard.hvx855.hmhibusbus.hpcigeneric.hmicrelphy.hmicrochipphy.ht1phy.hmicrosemiphy.hmigration.hmii.hminixsubpartition.hmiscfilesystems.hrtsxrtsx.hpci.husb.hmisdnmisdn.havmfritz.hdsp.hhfcmulti.hhfcpci.hhfcusb.hinfineon.hipac.hisar.hl1oip.hnetjet.hspeedfax.hw6692.hmlx4core.hdebug.henen.hdcb.hinfiniband.hmlx5bridge.hclsact.hcorecore.henen.hdcb.hipoib.henarfs.hipsec.hrxnfc.htls.heswitch.hfpga.hinfiniband.hmpfs.hsfsf.hmanager.hswsteering.htcct.hsample.hvdpavdpa.hnet.hmlxfw.hmlxswcorecore.hhwmon.hthermal.hi2c.hminimal.hpci.hspectrumspectrum.hdcb.hswitchib.hswitchx2.hmmcmmc.hblockblock.hminors.hcb710.hcqhci.hrealtekpci.husb.hricohmmc.hsdhcisdhci.hpci.hpltfm.htifmsd.hushc.hviasdmmc.hvub300.hmmiowb.hmmummu.hgathermergevmas.hpagesize.hrcutablefree.htablefree.hnotifier.hmoduleforceload.hrelcrcs.hsigsig.hall.hformat.hhash.hkey.hsha256.hsrcversionall.hunload.hmodulesmodules.htreelookup.huseelfrela.hmodversions.hmouseappletouch.hbcm5974.hcyapa.helani2ci2c.hi2c.hsmbus.hps2ps2.halps.hbyd.hcypress.helantechelantech.hsmbus.hfocaltech.hlogips2pp.hsentelic.hsmbus.hsynapticssynaptics.hsmbus.htrackpoint.hserial.hsynapticsi2c.husb.hvsxxxaa.hmpic.hmpilib.hmplsmpls.hiptunnel.hrouting.hmprofilekernel.hmptcpmptcp.hipv6.hkunittest.hmqioscheddeadline.hkyber.hmrp.hmsdosfs.hpartition.hmsibitmapselftest.hmsproblock.hmtdmtd.hcfii1.hi2.hmapbankwidth1.h2.h4.hofparts.hpowernvflash.hubiubi.hbeblimit.hwlthreshold.hmultiuser.hmutexspinonowner.hmyri10ge.hngsm.hhdlc.hnamespaces.hnationalphy.hndblk.hbtt.hclaim.hpfn.hneeddmamapstate.hmultiplenodes.hpercpuembedfirstchunk.hsgdmalength.hnetnet.hactbpf.hcsum.hct.hgact.hmirred.hmpls.hnat.hpedit.hpolice.hsample.hsimp.hskbedit.hskbmod.htunnelkey.hvlan.hclscls.hact.hbasic.hbpf.hcgroup.hflow.hflower.hfw.hmatchall.hroute4.hrsvp.hrsvp6.htcindex.hu32.hcore.hdevlink.hdropmonitor.hegress.hematchematch.hcmp.hipset.hmeta.hnbyte.hstack.htext.hu32.hfailover.hfc.hflowlimit.hingress.hiptunnel.hipgreipgre.hbroadcast.hdemux.hipip.hipvti.hkeykey.hmigrate.hl3masterdev.hmplsgso.hns.hnsh.hpacketengine.hpktgen.hpollcontroller.hptpclassify.hredirect.hrxbusypoll.hschatm.hcbq.hcbs.hchoke.hcodel.hdefault.hdrr.hdsmark.hets.hfifo.hfqfq.hcodel.hgred.hhfsc.hhhf.hhtb.hingress.hmqpriomqprio.hlib.hmultiq.hnetem.hpie.hplug.hprio.hqfq.hred.hsfb.hsfq.htbf.hteql.hsched.hsockmsg.hswitchdev.htcskbext.hteamteam.hmodeactivebackup.hbroadcast.hloadbalance.hrandom.hroundrobin.hudptunnel.hvendoramazon.haquantia.hatheros.hbroadcom.hbrocade.hcavium.hchelsio.hcisco.hdec.hemulex.hgoogle.hibm.hintel.hmellanox.hmicrosoft.hmyri.hnetronome.hoki.hpensando.hqlogic.hrealtek.hrocker.hsolarflare.hvrf.hnetconsolenetconsole.hdynamic.hnetdevaddrlisttest.hnetdevices.hnetdevsim.hnetfilternetfilter.hadvanced.hconncount.hfamilyarp.hbridge.hingress.hnetlinknetlink.hgluect.hlog.hqueue.hsynproxy.hxtconnmark.hmark.hmatchaddrtype.hbpf.hcgroup.hcluster.hcomment.hconnbytes.hconnlabel.hconnlimit.hconnmark.hconntrack.hcpu.hdccp.hdevgroup.hdscp.hecn.hesp.hhashlimit.hhelper.hhl.hiprange.hipvs.hlength.hlimit.hmac.hmark.hmultiport.hosf.howner.hphysdev.hpkttype.hpolicy.hquota.hrateest.hrealm.hrecent.hsctp.hsocket.hstate.hstatistic.hstring.htcpmss.hu32.hnat.hset.htargetaudit.hchecksum.hclassify.hconnmark.hconnsecmark.hct.hdscp.hhl.hhmark.hidletimer.hlog.hmark.hnetmap.hnflog.hnfqueue.hnotrack.hrateest.hredirect.hsecmark.htcpmss.htcpoptstrip.htee.htproxy.htrace.hxtables.hnetlabel.hnetlinkdiag.hnetpoll.hnetworkfilesystems.hphytimestamping.hsecmark.hnetxennic.hnewleds.hnfconntrackconntrack.hamanda.hbroadcast.hevents.hftp.hh323.hirc.hlabels.hmark.hnetbiosns.hpptp.hprocfs.hsane.hsecmark.hsip.hsnmp.htftp.htimeout.htimestamp.hzones.hctnetlinknetlink.hhelper.htimeout.hprotodccp.hgre.hsctp.hudplite.hdefragipv4.hipv6.hdupipv4.hipv6.hnetdev.hflowtabletable.hinet.hipv4.hipv6.hlogarp.hipv4.hipv6.hsyslog.hnatnat.hamanda.hftp.hh323.hirc.hmasquerade.hneeded.hpptp.hredirect.hsip.hsnmpbasic.htftp.hosf.hrejectipv4.hipv6.hsocketipv4.hipv6.htablestables.harp.hbridge.hinet.hipv4.hipv6.hnetdev.hset.htproxyipv4.hipv6.hnfpnfp.happabmnic.hflower.hnfsaclsupport.hcommon.hdebug.hfs.hfscache.husekerneldns.hv3v3.hacl.hv4v4.h11.himplementationiddomain.h2.hsecuritylabel.hnfsdnfsd.hpnfs.hscsilayout.hv2acl.hv3v3.hacl.hv4v4.hsecuritylabel.hnftbridgereject.hcompat.hconnlimit.hcounter.hct.hdupipv4.hipv6.hnetdev.hfibfib.hinet.hipv4.hipv6.hnetdev.hflowoffload.hfwdnetdev.hhash.hlimit.hlog.hmasq.hnat.hnumgen.hobjref.hqueue.hquota.hredir.hrejectreject.hinet.hipv4.hipv6.hsocket.htproxy.hxfrm.hnlattr.hnlmon.hnlsnls.hascii.hcodepage1250.h1251.h437.h737.h775.h850.h852.h855.h857.h860.h861.h862.h863.h864.h865.h866.h869.h874.h932.h936.h949.h950.hdefault.hiso88591.h13.h14.h15.h2.h3.h4.h5.h6.h7.h8.h9.hkoi8r.hu.hmacceltic.hcenteuro.hcroatian.hcyrillic.hgaelic.hgreek.hiceland.hinuit.hroman.hromanian.hturkish.hutf8.hnmiipi.hnohzhz.hcommon.hfull.hnodesshift.hnonstatickernel.hnoptracer.hnouveaudebugdebug.hdefault.hnozomi.hnrcpus.hirqs.hnumanuma.hbalancingbalancing.hdefaultenabled.hkeepmeminfo.hnvdimmdax.hkeys.hpfn.hnvmecore.hfabrics.hfc.hmultipath.hrdma.htargettarget.hfc.hfcloop.hloop.hrdma.htcp.htcp.hverboseerrors.hnvmem.hobjagg.hocxlocxl.hbase.hofof.haddress.hdynamic.hearlyflattree.hflattree.hgpio.hiommu.hirq.hkobj.hmdio.hnet.hpmem.hreservedmem.hoidregistry.holdsigsuspend.hopalcore.hprd.hopenvswitchopenvswitch.hgeneve.hgre.hvxlan.hoprofile.hoptprobes.hosfpartition.hosnoisetracer.hoverlayfs.hpacketpacket.hdiag.hpadata.hpagecounter.hextension.hoffset.howner.hpoisoning.hpool.hreporting.hpaniconoopsoops.hvalue.htimeout.hpaprscm.hparman.hparportparport.h1284.hnotpc.hpc.hserial.hpartitionadvanced.hpataofplatform.hplatform.hpccard.hpcipci.hats.hdomains.hiov.hmsimsi.harchfallbacks.hpasid.hpri.hquirks.hstub.hsyscall.hpciedpc.hecrc.hpme.hpcieaerpcieaer.hinject.hpcieaspmpcieaspm.hdefault.hpcieportbus.hpcipcwatchdog.hpcspkrplatform.hperfevents.hpersistentkeyrings.hpgtablelevels.hphylib.hphysaddrt64bit.hphysicalstart.hpidns.hpkcs7messageparser.hpldmfw.hpluginhostcc.hpmpm.hdebug.hgenericdomainsdomains.hof.hsleep.hsleepsleep.hdebug.hsmpsmp.hnonzerocpu.hpmbus.hpmusysfs.hpnfsblock.hfilelayout.hflexfilelayout.hposixmqueuemqueue.hsysctl.htimers.hpowerresetreset.hgpio.hsupply.hpowernvcpufreq.hcpuidle.hoppanel.hppcppc.h64kpages.hbarriernospec.hbook3sbook3s.h64.hcoprobase.hdawr.hdenormalisation.hdisablewerror.hdoorbell.hdtcpuftrs.hemulatedstats.hfpu.hhavepmusupport.hi8259.hicphv.hnative.hicsrtas.hindirectpio.hmemkeys.hmmslices.hmsibitmap.hnative.hofboottrampoline.hp7nap.hperfctrs.hpowernv.hpseries.hradixmmummu.hdefault.hrtasrtas.hdaemon.hfilter.hscom.hsecureboot.hsecvarsysfs.hsmlpar.hsmpmuxedipi.hsplpar.hstdmmu.hsubpageprot.hsvm.htransactionalmem.hudbg16550.huv.hvas.hwatchdog.hxics.hxivexive.hnative.hspapr.hppc64ppc64.hbootwrapper.hsupportsmemoryfailure.hppdev.hpppppp.hasync.hbsdcomp.hdeflate.hfilter.hmppe.hmultilink.hsynctty.hpppoatm.hpppoe.hpppol2tp.hppspps.hclientgpio.hldisc.hparport.hpptp.hpreemptnotifiers.hvoluntary.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hstackdepth.hprinter.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hvmcorevmcore.hdevicedump.hprofiling.hpsample.hpseriescpuidle.henergy.hpsipsi.hdefaultdisabled.hpstorepstore.hcompresscompress.hdefault.hdeflatecompresscompress.hdefault.hram.hptp1588clock.hpwmpwm.hsysfs.hqedqed.hfcoe.hiscsi.hll2.hooo.hrdma.hsriov.hqede.hqedf.hqedi.hqfmtv2.hqsemiphy.hquotaquota.hnetlinkinterface.htree.hquotactl.hr8169.hradioadapters.htea575x.hraidattrs.hraid6pqpq.hbenchmark.hrandomtrustcpu.hras.hrationalrational.hkunittest.hrawdriver.hrcatiremote.hcore.hdecoders.hdevices.hmap.hrcucpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.hrdbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hrdmarxe.hsiw.hrealtekautopm.hphy.hreedsolomonsolomon.hdec8.henc8.hregmapregmap.hi2c.hrelay.hrelocatable.hrenesasphy.hresourcekunittest.hrfkillrfkill.hinput.hleds.hrfsaccel.hrhkabisizealignchecks.hrheldifferences.hringbufferbuffer.hallowswap.hbenchmark.hrmi42dsensor.hcore.hf03f03.hserio.hf11.hf12.hf30.hf34.hf3a.hf55.hi2c.hsmb.hrockchipphy.hrocker.hrpcsecgsskrb5.hrps.hrseq.hrtgroupsched.hmutexes.hrtaserrorlogging.hflash.hproc.hrtcclass.hdrvbq32k.hbq4802.hcmos.hds1286.hds1307.hds1374.hds1511.hds1553.hds1672.hds1742.hds2404.hds3232ds3232.hhwmon.hem3027.hfm3130.hgeneric.hisl12022.hisl1208.hm41t80m41t80.hwdt.hm48t35.hm48t59.hmax6900.hmsm6242.hopal.hpcf8523.hpcf8563.hpcf8583.hrp5c01.hrs5c372.hrv3029c2.hrx8025.hrx8581.hstk17ta8.hv3020.hx1205.hhctosyshctosys.hdevice.hi2candspi.hintfdev.hproc.hsysfs.hliblib.hkunittest.hmc146818lib.hnvmem.hruntimetestingmenu.hrwsemspinonowner.hsamples.hsataahciahci.hplatform.hhost.hmobilelpmpolicy.hpmp.hsbitmap.hscanlog.hscftorturetest.hschedautogroup.hdebug.hhrtick.hinfo.homitframepointer.hsmt.htracer.hschedstats.hscomdebugfs.hscsiscsi.haacraid.hbnx2iscsi.hbnx2xfcoe.hchelsiofcoe.hconstants.hcxgb4iscsi.hdebug.hdhdh.halua.hemc.hhpsw.hrdac.hdma.henclosure.hfcattrs.hhpsa.hibmvfcibmvfc.htrace.hibmvscsi.hibmvscsis.hipripr.hdump.htrace.hiscsiattrs.hlogging.hlowlevel.hlpfc.hmod.hmpi3mr.hmpt2sasmpt2sas.hmaxsge.hmpt3sasmpt3sas.hmaxsge.hnetlink.hprocfs.hqlafc.hiscsi.hsasata.hattrs.hhostsmp.hlibsas.hscanasync.hsmartpqi.hspiattrs.hsrpattrs.hvirtio.hsctpcookiehmacmd5.hsha1.hdefaultcookiehmacsha1.hsdiouart.hseccompseccomp.hfilter.hsectionmismatchwarnonly.hsecuritysecurity.hinfiniband.hnetworknetwork.hxfrm.hpath.hselinuxselinux.havcstats.hbootparam.hcheckreqprotvalue.hdevelop.hdisable.hsid2strcachesize.hsidtabhashbits.hwritablehooks.hyama.hsecurityfs.hselectmemorymodel.hsensorsad7414.had7418.hadm1021.hadm1025.hadm1026.hadm1029.hadm1031.hadm1275.hadm9240.hads1015.hads7828.hadt7410.hadt7411.hadt7462.hadt7470.hadt7475.hadt7x10.hamc6821.hapds990x.hasc7621.hatxp1.hbh1770.hds1621.hds620.hemc1403.hemc6w201.hf75375s.hg760a.hgl518sm.hgl520sm.hibmaem.hibmpex.hibmpowernv.hina209.hina2xx.hjc42.hlineage.hlis3i2c.hlis3lv02d.hlm25066.hlm63.hlm73.hlm75.hlm77.hlm78.hlm80.hlm83.hlm85.hlm87.hlm90.hlm92.hlm93.hlm95234.hlm95241.hlm95245.hltc2978.hltc4151.hltc4215.hltc4245.hltc4261.hmax16064.hmax16065.hmax1619.hmax1668.hmax197.hmax34440.hmax6639.hmax6642.hmax6650.hmax6697.hmax8688.hmcp3021.hntcthermistor.hpcf8591.hpmbus.hsht15.hsht21.hsis5595.hsmsc47m192.hthmc50.htmp102.htmp401.htmp421.htsl2550.hucd9000.hucd9200.hvia686a.hvt8231.hw83781d.hw83791d.hw83792d.hw83793.hw83795.hw83l785ts.hw83l786ng.hzl6100.hserial82508250.hconsole.hdma.hexar.hextended.hfsl.hmanyports.hnruarts.hpci.hrsa.hruntimeuarts.hshareirq.harcarc.hnrports.hcorecore.hconsole.hearlycon.hicom.hjsm.hnonstandard.hofplatform.huartliteuartlite.hnruarts.hserioserio.halteraps2.harcps2.hi8042.hlibps2.hraw.hserport.hsfcsfc.hmcdilogging.hmon.hmtd.hsienasiena.hmcdilogging.hmon.hmtd.hsriov.hsriov.hsgpool.hsgetmasksyscall.hsgipartition.hsglalloc.hshmem.hshufflepageallocator.hsignalfd.hsignature.hsimplegpio.hskbextensions.hslabfreelisthardened.hrandom.hslhc.hslipslip.hcompressed.hsmart.hslubslub.hcpupartial.hdebug.hkunittest.hsmp.hsmssdiodrv.hsianomdtv.hrc.husbdrv.hsmscphy.hsndsnd.hac97codec.hpowersavesave.hdefault.had1889.hali5451.haloop.hatiixpatiixp.hmodem.hau8810.hau8820.hau8830.hbcd2000.hbebob.hbt87x.hca0106.hcmipci.hcs46xxcs46xx.hnewdsp.hctlfastlookup.hctxfi.hdarla20.hdarla24.hdice.hdrivers.hdummy.hdynamicminors.hecho3g.hemu10k1emu10k1.hseq.hemu10k1x.hens1370.hens1371.hes1968es1968.hinput.hradio.hfireface.hfirewirefirewire.hdigi00x.hlib.hmotu.htascam.hfireworks.hgina20.hgina24.hhdapreallocsize.hhdsp.hhdspm.hhrtimer.hhwdep.hice1712.hice1724.hindigo.hindigodj.hindigodjx.hindigoio.hindigoiox.hintel8x0.hintel8x0m.hisight.hjackjack.hinputdev.hkorg1212.hlayla20.hlayla24.hlola.hlx6464es.hmaestro3maestro3.hinput.hmaxcards.hmia.hmixart.hmona.hmpu401mpu401.huart.hmtpav.hopl3liblib.hseq.hossemul.hoxfw.hoxygenoxygen.hlib.hpci.hpcmpcm.htimer.hpcxhr.hppc.hprocfs.hrawmidi.hrme32.hrme96.hrme9652.hseqdevice.hdummy.hhrtimerdefault.hmidimidi.hemul.hevent.hvirmidi.hsequencersequencer.hoss.hsynthemux.htimer.htrident.husbusb.h6fire.haudio.hcaiaqcaiaq.hinput.hhiface.hline6.hpod.hpodhd.htoneport.hua101.husx2y.hvariax.hverboseprocfs.hvia82xxvia82xx.hmodem.hvirmidi.hvirtio.hvirtuoso.hvmaster.hvxlib.hvx222.hsockcgroupdata.hvalidatexmit.hsoftwatchdog.hsoftlockupdetector.hsolarisx86partition.hsoundsound.hosscorecore.hpreclaim.hspaprtceiommu.hsparseirq.hsparsememsparsemem.hextreme.hmanual.hvmemmapvmemmap.henable.hsplitptlockcpus.hsquashfssquashfs.hdecompmultipercpu.hfiledirect.hfragmentcachesize.hlzo.hxattr.hxz.hzlib.hsrcu.hssbpossible.hstacktracer.hstackdepot.hstackinitkunittest.hstackprotectorstackprotector.hstrong.hstacktracestacktrace.hsupport.hstandalone.hste10xp.hstp.hstreamparser.hstrictdevmem.hstripasmsyms.hsunpartition.hsunrpcsunrpc.hbackchannel.hdebug.hgss.hxprtrdma.hsuspendsuspend.hfreezer.hswap.hswiotlb.hswphy.hsymbolicerrname.hsyncookies.hsyncfile.hsynclinksynclink.hgt.hsynclinkmp.hsyssupportshugetlbfs.hsysctlsysctl.hexceptiontrace.hkunittest.hsysfssysfs.hsyscall.hsystemblacklisthashlist.hkeyring.hdataverification.hextracertificatecertificate.hsize.htrustedkeyring.hkeys.hsysvipcsysvipc.hcompat.hsysctl.htabletserialwacom4.husbacecad.haiptek.hgtco.hkbtab.htap.htargetcore.htaskdelayacct.hioaccounting.hxacct.htasksrcugeneric.hrudercu.htracercu.htaskstats.htcgibmvtpm.htistis.hcore.hi2catmel.hinfineon.hnuvoton.hst33zp24st33zp24.hi2c.htpm.htcmfileio.hiblock.hpscsi.huser2.htcpcongadvanced.hbbr.hbic.hcubic.hdctcp.hhstcp.hhtcp.hhybla.hillinois.hlp.hnv.hscalable.hvegas.hveno.hwestwood.hyeah.hmd5sig.hteraneticsphy.htestbpf.hhmm.hkstrtox.hlistsort.hlivepatch.hvmalloc.htextsearchtextsearch.hbm.hfsm.hkmp.hthermalthermal.hdefaultgovstepwise.hemergencypoweroffdelayms.hgovfairshare.hstepwise.hhwmon.hof.hthreadshift.htickoneshot.htifm7xx1.hcore.htigon3tigon3.hhwmon.htimekunittest.htimerfd.htimerlattracer.htipctipc.hcrypto.hdiag.hmediaib.hudp.htlstls.hdevice.htmpfstmpfs.hposixacl.hxattr.htorturetest.htouchscreenelo.hproperties.hwacomi2c.hw8001.htraceclock.hirqflagssupport.htracepoints.htracermaxtrace.hsnapshot.htracingtracing.hmap.hsupport.htransparenthugepagehugepage.hmadvise.htreercu.hsrcu.htristate.conftrustedkeys.httpcieeprom.htty.htuntun.hvnetcrossle.htypectypec.hdpaltmode.hfusb302.hmuxpi3usb30532.hrt1711h.htcpci.htcpm.htps6598x.hucsi.hudffs.huhid.huiouio.haec.hcif.hpcigeneric.hpdrvgenirq.hsercos3.hunixunix.hdiag.hscm.hunix98ptys.hunixwaredisklabel.huprobeevents.huprobes.husbusb.hacm.hadutux.halim5632.han2720.hannouncenewdevices.happledisplay.harchhashcd.harmlinux.hatm.hautosuspenddelay.hbelkin.hcatc.hcommon.hcxacru.hdefaultpersist.hehcihcdhcd.hppcof.hpci.hroothubtt.httnewsched.hemi26.hemi62.hepson2888.hezusbfx2.hgl860.hgspcagspca.hbenq.hconex.hcpia1.hetoms.hfinepix.hjeilinj.hjl2005bcd.hkonica.hmars.hmr97310a.hnw80x.hov519.hov534ov534.h9.hpac207.hpac7302.hpac7311.hse401.hsn9c2028.hsn9c20x.hsonixb.hsonixj.hspca1528.hspca500.hspca501.hspca505.hspca506.hspca508.hspca561.hsq905.hsq905c.hsq930x.hstk014.hstv0680.hsunplus.ht613.htopro.htv8532.hvc032x.hvicam.hxirlinkcit.hzc3xx.hhid.hhiddev.hhsicusb3503.hhso.hhwahcd.hidmouse.hiowarrior.hipheth.hisightfw.hkaweth.hkc2190.hlan78xx.hlcd.hld.hledstriggerusbport.hlegotower.hm5602.hmdc800.hmicrotek.hmon.hnetax88179178a.hax8817x.hcdceem.hmbim.hncm.hsubsetsubset.henable.hcdcether.hch9200.hcx82310eth.hdm9601.hdrivers.hgl620a.hint51x1.hkalmia.hmcs7830.hnet1080.hplusb.hqmiwwan.hrndishost.hsmsc75xx.hsmsc95xx.hzaurus.hohcibigendiandesc.hmmio.hhcdhcd.hpci.hppcofof.hbe.hle.hlittleendian.hpci.hpegasus.hprinter.hpulse8cec.hpwcpwc.hinputevdev.hrainshadowcec.hroleswitch.hrtl8150.hrtl8152.hs2255.hserialserial.haircable.hark3116.hbelkin.hch341.hconsole.hcp210x.hcyberjack.hcypressm8.hdebug.hdigiacceleport.hedgeportedgeport.hti.hempeg.hf8153x.hftdisio.hgarmin.hgeneric.hipaq.hipw.hir.hiuu.hkeyspankeyspan.hpda.hklsi.hkobilsct.hmctu232.hmos7715parport.hmos7720.hmos7840.hmxuport.hnavman.homninet.hopticon.hoption.hoti6858.hpl2303.hqcaux.hqt2.hqualcomm.hsafesafe.hpadded.hsierrawireless.hspcp8x5.hssu100.hsymbol.hti.hupd78f0730.hvisor.hwhiteheat.hwwan.hxircom.hxsensmt.hsevseg.hsierranet.hsisusbvga.hspeedtouch.hstkwebcam.hstoragestorage.halauda.hcypressatacb.hdatafab.heneub6250.hfreecom.hjumpshot.hkarma.honetouch.hrealtek.hsddr09.hsddr55.husbat.hstv06xx.hsupport.htmc.huas.hueagleatm.huhcihcd.husbnet.huss720.hvideoclassclass.hinputevdev.hvl600.hwdm.hwusbwusb.hcbaf.hxhcihcd.hpci.hxusbatm.hzr364xx.husb4usb4.hnet.husbpcwatchdog.husepercpunumanodeid.huserns.huserfaultfd.hutsns.huvccommon.huwbuwb.hhwa.hi1480u.hwhci.hvdpavdpa.hsimsim.hblock.hnet.hveth.hvfatfs.hvfiovfio.hiommuspaprtce.hpcipci.hintx.hmmap.hnvlink2.hspapreeh.hvirqfd.hvgaarbarb.hmaxgpus.hconsole.hvgastate.hvhostvhost.hcrossendianlegacy.hiotlb.hmenu.hnet.hring.hvdpa.hvsock.hvideoau0828au0828.hv4l2.hbt848.hcs3308.hcs5345.hcs53l32a.hcx18cx18.halsa.hcx231xxcx231xx.halsa.hdvb.hrc.hcx2341x.hcx23885.hcx25840.hcx88cx88.halsa.hblackbird.hdvb.hmpeg.hdev.hem28xxem28xx.halsa.hdvb.hrc.hfbivtv.hhdpvr.hiri2c.hivtv.hm52790.hmsp3400.hnomodeset.hpvrusb2pvrusb2.hdvb.hsysfs.hsaa6588.hsaa6752hs.hsaa711x.hsaa7127.hsaa7134saa7134.halsa.hdvb.hrc.hsaa7146saa7146.hvv.hsaa7164.hsaa717x.htda7432.htm6000tm6000.halsa.hdvb.htuner.htvaudio.htveeprom.hupd64031a.hupd64083.husbvision.hv4l2.hvp27smpx.hwm8739.hwm8775.hvideobufdmasg.hgen.hvmalloc.hvideobuf2core.hdmasg.hdvb.hmemops.hv4l2.hvmalloc.hvirtcpuaccountingaccounting.hgen.hdrivers.hvirtiovirtio.hballoon.hblk.hconsole.hfs.hinput.hmenu.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvpvdpa.hvsocketsvsockets.hdiag.hloopback.hvsockmon.hvsx.hvtvt.hconsoleconsole.hsleep.hhwconsolebinding.hvxlan.hwan.hwantdevcoredump.hwatchdogwatchdog.hcore.hhandlebootenabled.hopentimeout.hrtas.hsysfs.hwdtpci.hx509certificateparser.hxarraymulti.hxdpsocketssockets.hdiag.hxfrmxfrm.halgo.hespintcp.hinterface.hipcomp.hmigrate.hoffload.hstatistics.hsubpolicy.huser.hxfsfs.hposixacl.hquota.hxilinxgmii2rgmii.hxmonxmon.hdefaultromode.hdisassembly.hxorblocks.hxps.hxzdecdec.harm.harmthumb.hbcj.hia64.hpowerpc.hsparc.hx86.hyentayenta.henetune.ho2.hricoh.hti.htoshiba.hzbud.hzisofs.hzlibdeflate.hinflate.hzonedevice.hdma.hdma32.hzpool.hzramzram.hwriteback.hzsmalloczsmalloc.hstat.hzswap.hcryptoacompress.haead.haes.hakcipher.halgapi.harc4.hauthenc.hb128ops.hblowfish.hcast5.hcast6.hcast_common.hcbc.hchacha20.hcryptd.hcrypto_wq.hctr.hdes.hdh.hdrbg.hecdh.hengine.hgcm.hgf128mul.hghash.hhash.hhash_info.hhmac.hif_alg.hinternalacompress.haead.hakcipher.hgeniv.hhash.hkpp.hrng.hrsa.hscompress.hsimd.hskcipher.hkpp.hmd5.hmorus1280_glue.hmorus640_glue.hmorus_common.hnull.hpadlock.hpcrypt.hpkcs7.hpoly1305.hpublic_key.hrng.hscatterwalk.hserpent.hsha.hsha1_base.hsha256_base.hsha3.hsha512_base.hskcipher.hsm3.hsm3_base.hsm4.hspeck.htwofish.hxts.hdrmdrm-backportREADME.txtlinuxmmu_notifier.hamd_asic_type.hbridgeanalogix_dp.hdw_hdmi.hdw_mipi_dsi.hmhl.hdisplaydrm_dp.hdrm_dp_aux_bus.hdrm_dp_dual_mode_helper.hdrm_dp_helper.hdrm_dp_mst_helper.hdrm_dsc.hdrm_dsc_helper.hdrm_hdcp.hdrm_hdcp_helper.hdrm_hdmi_helper.hdrm_scdc.hdrm_scdc_helper.hdrm_accel.hdrm_aperture.hdrm_atomic.hdrm_atomic_helper.hdrm_atomic_state_helper.hdrm_atomic_uapi.hdrm_audio_component.hdrm_auth.hdrm_blend.hdrm_bridge.hdrm_bridge_connector.hdrm_buddy.hdrm_cache.hdrm_client.hdrm_color_mgmt.hdrm_connector.hdrm_crtc.hdrm_crtc_helper.hdrm_damage_helper.hdrm_debugfs.hdrm_debugfs_crc.hdrm_device.hdrm_displayid.hdrm_drv.hdrm_edid.hdrm_encoder.hdrm_encoder_slave.hdrm_fb_dma_helper.hdrm_fb_helper.hdrm_fbdev_generic.hdrm_file.hdrm_fixed.hdrm_flip_work.hdrm_format_helper.hdrm_fourcc.hdrm_framebuffer.hdrm_gem.hdrm_gem_atomic_helper.hdrm_gem_dma_helper.hdrm_gem_framebuffer_helper.hdrm_gem_shmem_helper.hdrm_gem_ttm_helper.hdrm_gem_vram_helper.hdrm_ioctl.hdrm_kunit_helpers.hdrm_lease.hdrm_legacy.hdrm_managed.hdrm_mipi_dbi.hdrm_mipi_dsi.hdrm_mm.hdrm_mode_config.hdrm_mode_object.hdrm_modes.hdrm_modeset_helper.hdrm_modeset_helper_vtables.hdrm_modeset_lock.hdrm_module.hdrm_of.hdrm_panel.hdrm_pciids.hdrm_plane.hdrm_plane_helper.hdrm_prime.hdrm_print.hdrm_privacy_screen_consumer.hdrm_privacy_screen_driver.hdrm_privacy_screen_machine.hdrm_probe_helper.hdrm_property.hdrm_rect.hdrm_self_refresh_helper.hdrm_simple_kms_helper.hdrm_syncobj.hdrm_sysfs.hdrm_util.hdrm_utils.hdrm_vblank.hdrm_vblank_work.hdrm_vma_manager.hdrm_writeback.hgma_drm.hgpu_scheduler.hgud.hi2cch7006.hsil164.htda998x.hi915_component.hi915_drm.hi915_mei_hdcp_interface.hi915_pciids.hi915_pxp_tee_interface.hintel-gtt.hintel_lpe_audio.hspsc_queue.htask_barrier.httmttm_bo.httm_caching.httm_device.httm_execbuf_util.httm_kmap_iter.httm_placement.httm_pool.httm_range_manager.httm_resource.httm_tt.hdt-bindingsarmux500_pm_domains.hbusti-sysc.hclkti-dra7-atl.hclockactions,s900-cmu.halphascale,asm9260.ham3.ham4.haspeed-clock.hat91.hath79-clk.haxg-aoclkc.haxg-clkc.haxis,artpec6-clkctrl.hbcm-cygnus.hbcm-ns2.hbcm-nsp.hbcm-sr.hbcm21664.hbcm281xx.hbcm2835-aux.hbcm2835.hberlin2.hberlin2q.hboston-clock.hclps711x-clock.hcortina,gemini-clock.hdm814.hdm816.hdra7.hefm32-cmu.hexynos-audss-clk.hexynos3250.hexynos4.hexynos5250.hexynos5260-clk.hexynos5410.hexynos5420.hexynos5433.hexynos5440.hexynos7-clk.hgxbb-aoclkc.hgxbb-clkc.hhi3516cv300-clock.hhi3519-clock.hhi3620-clock.hhi3660-clock.hhi6220-clock.hhip04-clock.hhistb-clock.hhix5hd2-clock.himx1-clock.himx21-clock.himx27-clock.himx5-clock.himx6qdl-clock.himx6sl-clock.himx6sll-clock.himx6sx-clock.himx6ul-clock.himx7d-clock.hjz4740-cgu.hjz4770-cgu.hjz4780-cgu.hlpc18xx-ccu.hlpc18xx-cgu.hlpc32xx-clock.hlsi,axm5516-clks.hmarvell,mmp2.hmarvell,pxa168.hmarvell,pxa1928.hmarvell,pxa910.hmaxim,max77620.hmaxim,max77686.hmaxim,max77802.hmeson8b-clkc.hmicrochip,pic32-clock.hmpc512x-clock.hmt2701-clk.hmt2712-clk.hmt6797-clk.hmt7622-clk.hmt8135-clk.hmt8173-clk.hnuvoton,npcm7xx-clock.homap4.homap5.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-clk.hpxa-clock.hqcom,gcc-apq8084.hqcom,gcc-ipq4019.hqcom,gcc-ipq806x.hqcom,gcc-ipq8074.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,gcc-msm8994.hqcom,gcc-msm8996.hqcom,gcc-msm8998.hqcom,gcc-sdm845.hqcom,lcc-ipq806x.hqcom,lcc-mdm9615.hqcom,lcc-msm8960.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hqcom,mmcc-msm8996.hqcom,rpmcc.hqcom,rpmh.hqcom,videocc-sdm845.hr7s72100-clock.hr8a73a4-clock.hr8a7740-clock.hr8a7743-cpg-mssr.hr8a7745-cpg-mssr.hr8a77470-cpg-mssr.hr8a7778-clock.hr8a7779-clock.hr8a7790-clock.hr8a7790-cpg-mssr.hr8a7791-clock.hr8a7791-cpg-mssr.hr8a7792-clock.hr8a7792-cpg-mssr.hr8a7793-clock.hr8a7793-cpg-mssr.hr8a7794-clock.hr8a7794-cpg-mssr.hr8a7795-cpg-mssr.hr8a7796-cpg-mssr.hr8a77965-cpg-mssr.hr8a77970-cpg-mssr.hr8a77980-cpg-mssr.hr8a77990-cpg-mssr.hr8a77995-cpg-mssr.hrenesas-cpg-mssr.hrk3036-cru.hrk3066a-cru.hrk3128-cru.hrk3188-cru-common.hrk3188-cru.hrk3228-cru.hrk3288-cru.hrk3328-cru.hrk3368-cru.hrk3399-cru.hrockchip,rk808.hrv1108-cru.hs3c2410.hs3c2412.hs3c2443.hs5pv210-audss.hs5pv210.hsamsung,s2mps11.hsamsung,s3c64xx-clock.hsh73a0-clock.hsprd,sc9860-clk.hste-ab8500.hstih407-clks.hstih410-clks.hstih416-clks.hstih418-clks.hstm32fx-clock.hstm32h7-clks.hstm32mp1-clks.hstratix10-clock.hsun4i-a10-ccu.hsun4i-a10-pll2.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun7i-a20-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra114-car.htegra124-car-common.htegra124-car.htegra186-clock.htegra194-clock.htegra20-car.htegra210-car.htegra30-car.hvf610-clock.hzx296702-clock.hzx296718-clock.hdisplaytda998x.hdmaat91.haxi-dmac.hjz4780-dma.hnbpfaxi.hsun4i-a10.hgpioaspeed-gpio.hgpio.hmeson-axg-gpio.hmeson-gxbb-gpio.hmeson-gxl-gpio.hmeson8-gpio.hmeson8b-gpio.htegra-gpio.htegra186-gpio.htegra194-gpio.huniphier-gpio.hi2ci2c.hiioadcfsl-imx25-gcq.hadi,ad5592r.hqcom,spmi-vadc.hinputgpio-keys.hinput.hlinux-event-codes.hti-drv260x.hinterrupt-controllerarm-gic.hirq-st.hirq.hmips-gic.hmvebu-icu.hledscommon.hleds-netxbig.hleds-ns2.hleds-pca9532.hleds-pca955x.hmailboxtegra186-hsp.hmediac8sectpfe.homap3-isp.htda1997x.htvp5150.hxilinx-vip.hmemorymt2701-larb-port.hmt8173-larb-port.htegra114-mc.htegra124-mc.htegra186-mc.htegra20-mc.htegra210-mc.htegra30-mc.hmfdarizona.has3722.hatmel-flexcom.hdbx500-prcmu.hmax77620.hpalmas.hqcom-rpm.hst-lpc.hstm32f4-rcc.hstm32f7-rcc.hstm32h7-rcc.hmipslantiq_rcu_gphy.hmuxmux.hnetmicrochip-lan78xx.hmscc-phy-vsc8531.hqca-ar803x.hti-dp83867.hti-dp83869.hphyphy-pistachio-usb.hphy-qcom-qusb2.hphy.hpinctrlam33xx.ham43xx.hat91.hbcm2835.hbrcm,pinctrl-stingray.hdm814x.hdra.hhisi.hkeystone.hmt6397-pinfunc.hmt65xx.hmt7623-pinfunc.hnomadik.homap.hpinctrl-tegra-xusb.hpinctrl-tegra.hqcom,pmic-gpio.hqcom,pmic-mpp.hr7s72100-pinctrl.hrockchip.hsamsung.hstm32-pinfunc.hsun4i-a10.hpowerimx7-power.hmt2701-power.hmt2712-power.hmt6797-power.hmt7622-power.hmt7623a-power.hmt8173-power.howl-s500-powergate.howl-s700-powergate.hpx30-power.hr8a7743-sysc.hr8a7745-sysc.hr8a77470-sysc.hr8a7779-sysc.hr8a7790-sysc.hr8a7791-sysc.hr8a7792-sysc.hr8a7793-sysc.hr8a7794-sysc.hr8a7795-sysc.hr8a7796-sysc.hr8a77965-sysc.hr8a77970-sysc.hr8a77980-sysc.hr8a77990-sysc.hr8a77995-sysc.hraspberrypi-power.hrk3036-power.hrk3128-power.hrk3228-power.hrk3288-power.hrk3328-power.hrk3366-power.hrk3368-power.hrk3399-power.htegra186-powergate.htegra194-powergate.hpwmpwm.hregulatormaxim,max77802.hresetaltr,rst-mgr-a10.haltr,rst-mgr-a10sr.haltr,rst-mgr-s10.haltr,rst-mgr.hamlogic,meson-axg-reset.hamlogic,meson-gxbb-reset.hamlogic,meson8b-clkc-reset.hamlogic,meson8b-reset.haxg-aoclkc.hcortina,gemini-reset.hgxbb-aoclkc.hhisi,hi6220-resets.himx7-reset.hmt2701-resets.hmt7622-reset.hmt8135-resets.hmt8173-resets.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-resets.hqcom,gcc-apq8084.hqcom,gcc-ipq806x.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hsnps,hsdk-reset.hstih407-resets.hstih415-resets.hstih416-resets.hstm32mp1-resets.hsun4i-a10-ccu.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra124-car.htegra186-reset.htegra194-reset.htegra210-car.hti-syscon.hsocqcom,apr.hqcom,gsbi.hrockchip,boot-mode.hzte,pm_domains.hsoundadi,adau1977.hapq8016-lpass.haudio-jack-events.hcs35l32.hcs42l42.hfsl-imx-audmux.hqcom,q6afe.hqcom,q6asm.hrt5640.hrt5651.hsamsung-i2s.htas2552.htlv320aic31xx.hspmispmi.hthermallm90.htegra124-soctherm.htegra186-bpmp-thermal.hthermal.hthermal_exynos.husbpd.hgeneratedasm-offsets.hautoconf.hbounds.hcompile.htimeconst.huapilinuxversion.hutsrelease.hkeysasymmetric-parser.hasymmetric-subtype.hasymmetric-type.hbig_key-type.hceph-type.hdns_resolver-type.hencrypted-type.hkeyring-type.hrxrpc-type.hsystem_keyring.htrusted-type.htrusted_tpm.huser-type.hkunitassert.hresource.htest-bug.htest.htry-catch.hkvmarm_arch_timer.harm_hypercalls.harm_pmu.harm_psci.harm_vgic.hiodev.hlinux8250_pci.ha.out.hacct.hacpi.hacpi_apmt.hacpi_dma.hacpi_iort.hacpi_pmtmr.hadb.hadfs_fs.hadxl.haer.hagp_backend.hagpgart.hahci-remap.hahci_platform.haio.halarmtimer.haltera_jtaguart.haltera_uart.hambabus.hclcd-regs.hclcd.hkmi.hmmci.hpl022.hpl080.hpl08x.hpl093.hserial.hsp810.hamd-iommu.hamd-pstate.hanon_inodes.haperture.hapm-emulation.hapm_bios.happle-gmux.happle_bl.harch_topology.harm-cci.harm-smccc.harm_sdei.hascii85.hasn1.hasn1_ber_bytecode.hasn1_decoder.hassoc_array.hassoc_array_priv.hasync.hasync_tx.hata.hata_platform.hatalk.hath9k_platform.hatm.hatm_suni.hatm_tcp.hatmdev.hatmel-mci.hatmel-ssc.hatmel_pdc.hatmel_tc.hatomic.hattribute_container.haudit.haudit_arch.hauto_dev-ioctl.hauto_fs.hauxiliary_bus.hauxvec.haverage.havfvirtchnl.hb1pcmcia.hbacking-dev-defs.hbacking-dev.hbacklight.hbadblocks.hballoon_compaction.hbcd.hbch.hbcm47xx_nvram.hbcm47xx_sprom.hbcm47xx_wdt.hbcm963xx_nvram.hbcm963xx_tag.hbcmabcma.hbcma_driver_arm_c9.hbcma_driver_chipcommon.hbcma_driver_gmac_cmn.hbcma_driver_mips.hbcma_driver_pci.hbcma_driver_pcie2.hbcma_regs.hbcma_soc.hbinfmts.hbio.hbit_spinlock.hbitfield.hbitmap.hbitops.hbitrev.hbits.hblk-cgroup.hblk-mq-pci.hblk-mq-rdma.hblk-mq-virtio.hblk-mq.hblk-pm.hblk_types.hblkdev.hblkpg.hblktrace_api.hblockgroup_lock.hbma150.hbottom_half.hbpf-cgroup.hbpf-netns.hbpf.hbpf_lirc.hbpf_local_storage.hbpf_lsm.hbpf_trace.hbpf_types.hbpf_verifier.hbpfilter.hbpfptr.hbrcmphy.hbsearch.hbsg-lib.hbsg.hbtf.hbtf_ids.hbtree-128.hbtree-type.hbtree.hbtrfs.hbuffer_head.hbug.hbuild_bug.hbuildid.hbvec.hbyteorderbig_endian.hgeneric.hlittle_endian.hc2port.hcache.hcacheinfo.hcancore.hdevdev.hpeak_canfd.hled.hplatformcc770.hmcp251x.hrcar_can.hsja1000.hrx-offload.hskb.hcapability.hcb710.hcc_platform.hcciss_ioctl.hccp.hcdev.hcdrom.hcephauth.hbuffer.hceph_debug.hceph_features.hceph_frag.hceph_fs.hceph_hash.hcls_lock_client.hdebugfs.hdecode.hlibceph.hmdsmap.hmessenger.hmon_client.hmsgpool.hmsgr.hosd_client.hosdmap.hpagelist.hrados.hstring_table.hstriper.htypes.hcfag12864b.hcgroup-defs.hcgroup.hcgroup_rdma.hcgroup_subsys.hcirc_buf.hcleancache.hclkclk-provider.hclk.hat91_pmc.hclk-conf.hdavinci.hmmp.hmxs.hrenesas.hsunxi-ng.htegra.hti.hzynq.hclkdev.hclock_cooling.hclockchips.hclocksource.hcm4000_cs.hcma.hcmdline-parser.hcn_proc.hcnt32_to_63.hcoda.hcoda_psdev.hcompaction.hcompat.hcompat_time.hcompiler-clang.hcompiler-gcc.hcompiler-intel.hcompiler.hcompiler_attributes.hcompiler_types.hcompletion.hcomponent.hconcap.hconfigfs.hconnector.hconsole.hconsole_struct.hconsolemap.hconst.hcontainer.hcontainer_of.hcontext_tracking.hcontext_tracking_state.hcookie.hcordic.hcoredump.hcoresight-pmu.hcoresight-stm.hcoresight.hcount_zeros.hcounter.hcounter_enum.hcper.hcpu.hcpu_cooling.hcpu_pm.hcpu_rmap.hcpufeature.hcpufreq.hcpuhotplug.hcpuidle.hcpuidle_haltpoll.hcpumask.hcpuset.hcrash_core.hcrash_dump.hcrc-ccitt.hcrc-itu-t.hcrc-t10dif.hcrc16.hcrc32.hcrc32c.hcrc32poly.hcrc4.hcrc7.hcrc8.hcred.hcrushcrush.hhash.hmapper.hcrypto.hcryptohash.hcs5535.hctype.hcuda.hcxl_err.hcyclades.hdamon.hdavinci_emac.hdax.hdca.hdcache.hdccp.hdcookies.hdebug_locks.hdebugfs.hdebugobjects.hdecompressbunzip2.hgeneric.hinflate.hmm.hunlz4.hunlzma.hunlzo.hunxz.hdelay.hdelayacct.hdelayed_call.hdell-led.hdev_printk.hdevcoredump.hdevfreq-event.hdevfreq.hdevfreq_cooling.hdevice-mapper.hdevice.hdevice_cgroup.hdevm-helpers.hdevpts_fs.hdigsig.hdim.hdio.hdirent.hdlm.hdlm_plock.hdm-bufio.hdm-dirty-log.hdm-io.hdm-kcopyd.hdm-region-hash.hdm9000.hdmadma-buf.hdma-contiguous.hdma-direct.hdma-direction.hdma-fence-array.hdma-fence-chain.hdma-fence-unwrap.hdma-fence.hdma-iommu.hdma-map-ops.hdma-mapping.hdma-resv.hdw.hhsu.hidma64.hipu-dma.hmmp-pdma.hpxa-dma.hqcom_bam_dma.hsprd-dma.hxilinx_dma.hdmaengine.hdmapool.hdmar.hdmi.hdnotify.hdns_resolver.hdqblk_qtree.hdqblk_v1.hdqblk_v2.hdrbd.hdrbd_genl.hdrbd_genl_api.hdrbd_limits.hds2782_battery.hdsalan9303.hdtlk.hdw_apb_timer.hdynamic_debug.hdynamic_queue_limits.hearlycpio.hecryptfs.hedac.hedd.hedma.heeprom_93cx6.heeprom_93xx46.hefi-bgrt.hefi.hefs_vh.heisa.helevator.helf-fdpic.helf-randomize.helf.helfcore-compat.helfcore.helfnote.henclosure.henergy_model.herr.herrname.herrno.herror-injection.herrqueue.herrseq.hetherdevice.hethtool.hethtool_netlink.heventfd.heventpoll.hevm.hexport.hexportfs.hext2_fs.hextable.hextconextcon-provider.hextcon.hextcon-adc-jack.hf2fs_fs.hf75375s.hfalloc.hfanotify.hfault-inject.hfb.hfbcon.hfcdevice.hfcntl.hfd.hfddidevice.hfdtable.hfec.hfile.hfilter.hfips.hfirewire.hfirmwarefirmware-map.hfirmware.hcirruscs_dsp.hwmfw.hintelstratix10-smc.hstratix10-svc-client.hmesonmeson_sm.hfixp-arith.hflat.hflex_array.hflex_proportions.hfmc-sdb.hfmc.hfont.hfortify-string.hfpgaadi-axi-common.haltera-pr-ip-core.hfpga-bridge.hfpga-mgr.hfpga-region.hfreezer.hfrontswap.hfs.hfs_context.hfs_enet_pd.hfs_parser.hfs_pin.hfs_stack.hfs_struct.hfs_uart_pd.hfscache-cache.hfscache.hfscrypt.hfscrypt_notsupp.hfscrypt_supp.hfsi.hfslfsl-diu-fb.hbestcommata.hbestcomm.hbestcomm_priv.hfec.hgen_bd.hsram.hedac.hguts.hmc.hptp_qoriq.hfsl_devices.hfsl_hypervisor.hfsl_ifc.hfsldma.hfsnotify.hfsnotify_backend.hftrace.hftrace_irq.hfutex.hfwnode.hgameport.hgcd.hgenalloc.hgeneric-radix-tree.hgenetlink.hgenhd.hgenl_magic_func.hgenl_magic_struct.hgetcpu.hgfp.hglob.hgoldfish.hgpiogpio-pxa.hgpio.hconsumer.hdriver.hgpio-reg.hmachine.hgpio_keys.hhardirq.hhash.hhashtable.hhdlc.hhdlcdrv.hhdmi.hhid-debug.hhid-roccat.hhid-sensor-hub.hhid-sensor-ids.hhid.hhidden.hhiddev.hhidraw.hhighmem-internal.hhighmem.hhighuid.hhil.hhil_mlc.hhippidevice.hhmm.hhost1x.hhp_sdc.hhpet.hhrtimer.hhrtimer_defs.hhsihsi.hssi_protocol.hhtcpld.hhuge_mm.hhugetlb.hhugetlb_cgroup.hhugetlb_inline.hhw_breakpoint.hhw_random.hhwmon-sysfs.hhwmon-vid.hhwmon.hhwspinlock.hhyperv.hhypervisor.hi2c-algo-bit.hi2c-algo-pca.hi2c-algo-pcf.hi2c-dev.hi2c-mux.hi2c-pxa.hi2c-smbus.hi2c.hi8042.hi8253.hicmp.hicmpv6.hide.hidr.hieee80211.hieee802154.hif_arp.hif_bridge.hif_eql.hif_ether.hif_fddi.hif_frad.hif_link.hif_ltalk.hif_macvlan.hif_phonet.hif_pppol2tp.hif_pppox.hif_tap.hif_team.hif_tun.hif_tunnel.hif_vlan.higmp.hihex.hiioaccelkxcjk_1013.hadcad_sigma_delta.hstm32-dfsdm-adc.hbuffer-dma.hbuffer-dmaengine.hbuffer.hbuffer_impl.hcommoncros_ec_sensors_core.hssp_sensors.hst_sensors.hst_sensors_i2c.hst_sensors_spi.hconfigfs.hconsumer.hdacad5421.had5504.had5791.hmax517.hmcp4725.hdriver.hevents.hfrequencyad9523.hadf4350.hgyroitg3200.hhw-consumer.hiio.himuadis.hkfifo_buf.hmachine.hmagnetometerak8975.hsw_device.hsw_trigger.hsysfs.htimerstm32-lptim-trigger.hstm32-timer-trigger.htrigger.htrigger_consumer.htriggered_buffer.htriggered_event.htypes.hima.himx-media.hin.hin6.hindirect_call_wrapper.hinet.hinet_diag.hinetdevice.hinit.hinit_ohci1394_dma.hinit_task.hinitrd.hinotify.hinputinput-polldev.hinput.had714x.hadp5589.hadxl34x.has5011.hauo-pixcir-ts.hbu21013.hcma3000.hcy8ctmg110_pdata.hcyttsp.helan-i2c-ids.hgp2ap002a00f.hili210x.hkxtj9.hlm8333.hmatrix_keypad.hmt.hnavpoint.hsamsung-keypad.hsh_keysc.hsparse-keymap.htouchscreen.htps6507x-ts.hinstrumented.hintegrity.hintel-iommu.hintel-ish-client-if.hintel-pti.hintel_rapl.hintel_th.hinterrupt.hinterval_tree.hinterval_tree_generic.hio-64-nonatomic-hi-lo.hio-64-nonatomic-lo-hi.hio-mapping.hio-pgtable.hio.hioasid.hioc3.hioc4.hiocontext.hiomap.hiommu-helper.hiommu.hiopoll.hioport.hioprio.hiosys-map.hiova.hip.hipack.hipc.hipc_namespace.hipmi-fru.hipmi.hipmi_smi.hipv6.hipv6_route.hirq.hirq_cpustat.hirq_poll.hirq_sim.hirq_work.hirqbypass.hirqchipirqchip.harm-gic-common.harm-gic-v3.harm-gic-v4.harm-gic.harm-vgic-info.harm-vic.hchained_irq.hingenic.hirq-bcm2836.hirq-omap-intc.hirq-partition-percpu.hirq-sa11x0.hmmp.hmxs.hversatile-fpga.hxtensa-mx.hxtensa-pic.hirqdesc.hirqdomain.hirqflags.hirqhandler.hirqnr.hirqreturn.hisa.hisapnp.hiscsi_boot_sysfs.hiscsi_ibft.hisdnisdn.hcapilli.hcapiutil.hhdlc.hisdn_divertif.hisdn_ppp.hisdnif.hisicom.hism.hiversion.hjbd2.hjhash.hjiffies.hjournal-head.hjoystick.hjump_label.hjump_label_ratelimit.hjz4740-adc.hjz4780-nemc.hkallsyms.hkasan-checks.hkasan.hkbd_diacr.hkbd_kern.hkbuild.hkconfig.hkcore.hkcov.hkcsan-checks.hkcsan.hkdb.hkdebug.hkdev_t.hkern_levels.hkernel-page-flags.hkernel.hkernel_stat.hkernelcapi.hkernfs.hkexec.hkey-type.hkey.hkeyboard.hkfifo.hkgdb.hkhugepaged.hklist.hkmemleak.hkmod.hkmsg_dump.hkobj_map.hkobject.hkobject_ns.hkprobes.hkref.hks0108.hks8842.hks8851_mll.hksm.hkstrtox.hkthread.hktime.hkvm_dirty_ring.hkvm_host.hkvm_irqfd.hkvm_para.hkvm_types.hl2tp.hlapb.hlatencytop.hlcd.hlcm.hled-class-flash.hled-lm3530.hleds-bd2802.hleds-lp3944.hleds-lp3952.hleds-pca9532.hleds-regulator.hleds-tca6507.hleds.hleds_pwm.hlibata.hlibfdt.hlibfdt_env.hlibgcc.hlibnvdimm.hlibps2.hlicense.hlightnvm.hlimits.hlinear_range.hlinkage.hlinkmode.hlinux_logo.hlis3lv02d.hlist.hlist_bl.hlist_lru.hlist_nulls.hlist_sort.hlivepatch.hllc.hllist.hlocal_lock.hlocal_lock_internal.hlockdbind.hdebug.hlockd.hnlm.hshare.hxdr.hxdr4.hlockdep.hlockdep_types.hlockref.hlog2.hlogic_pio.hlp.hlru_cache.hlsm_audit.hlsm_hook_defs.hlsm_hooks.hlz4.hlzo.hmISDNdsp.hmISDNhw.hmISDNif.hmailboxbrcm-message.hmailbox_client.hmailbox_controller.hmaple.hmarvell_phy.hmath.hmath64.hmax17040_battery.hmbcache.hmbus.hmc146818rtc.hmc6821.hmcb.hmdev.hmdio-bitbang.hmdio-gpio.hmdio-mux.hmdio.hmei_aux.hmei_cl_bus.hmem_encrypt.hmemblock.hmemcontrol.hmemfd.hmemory.hmemory_hotplug.hmempolicy.hmempool.hmemregion.hmemremap.hmemstick.hmfd88pm80x.h88pm860x.haat2870.hab3100.habx500abx500.hab8500-bm.hab8500-codec.hab8500-gpadc.hab8500-sysctrl.hab8500.hux500_chargalg.hac100.hadp5520.haltera-a10sr.harizonacore.hpdata.hregisters.has3711.has3722.hasic3.hatmel-hlcdc.haxp20x.hbcm590xx.hbd9571mwv.hcore.hcros_ec.hcros_ec_commands.hcros_ec_lpc_mec.hcros_ec_lpc_reg.hda8xx-cfgchip.hda903x.hda9052da9052.hpdata.hreg.hda9055core.hpdata.hreg.hda9062core.hregisters.hda9063core.hpdata.hregisters.hda9150core.hregisters.hdavinci_voicecodec.hdb8500-prcmu.hdbx500-prcmu.hdln2.hdm355evm_msp.hds1wm.hezx-pcap.hhi6421-pmic.hhi655x-pmic.hhtc-pasic3.himx25-tsadc.hintel_msic.hintel_soc_pmic.hintel_soc_pmic_bxtwc.hipaq-micro.hjanz.hkempld.hlm3533.hlochnagar.hlochnagar1_regs.hlochnagar2_regs.hlp3943.hlp873x.hlp87565.hlp8788-isink.hlp8788.hlpc_ich.hmax14577-private.hmax14577.hmax77620.hmax77686-private.hmax77686.hmax77693-common.hmax77693-private.hmax77693.hmax77843-private.hmax8907.hmax8925.hmax8997-private.hmax8997.hmax8998-private.hmax8998.hmc13783.hmc13892.hmc13xxx.hmcp.hmenelaus.hmotorola-cpcap.hmt6323core.hregisters.hmt6397core.hregisters.hmxs-lradc.hpalmas.hpcf50633adc.hbacklight.hcore.hgpio.hmbc.hpmic.hqcom_rpm.hrave-sp.hrc5t583.hrdc321x.hretu.hrk808.hrn5t618.hrt5033-private.hrt5033.hsamsungcore.hirq.hrtc.hs2mpa01.hs2mps11.hs2mps13.hs2mps14.hs2mps15.hs2mpu02.hs5m8763.hs5m8767.hsi476x-core.hsi476x-platform.hsi476x-reports.hsky81452.hsmsc.hsta2x11-mfd.hstm32-lptimer.hstm32-timers.hstmpe.hstw481x.hsun4i-gpadc.hsysconsyscon.hatmel-matrix.hatmel-mc.hatmel-smc.hatmel-st.hclps711x.himx6q-iomuxc-gpr.himx7-iomuxc-gpr.ht7l66xb.htc3589x.htc6387xb.htc6393xb.hti-lmu-register.hti-lmu.hti_am335x_tscadc.htmio.htps6105x.htps65010.htps6507x.htps65086.htps65090.htps65217.htps65218.htps6586x.htps65910.htps65912.htps68470.htps80031.htwl.htwl4030-audio.htwl6040.hucb1x00.hviperboard.hwl1273-core.hwm831xauxadc.hcore.hgpio.hirq.hotp.hpdata.hpmu.hregulator.hstatus.hwatchdog.hwm8350audio.hcomparator.hcore.hgpio.hpmic.hrtc.hsupply.hwdt.hwm8400-audio.hwm8400-private.hwm8400.hwm8994core.hgpio.hpdata.hregisters.hwm97xx.hmhi.hmhi_ep.hmic_bus.hmicrel_phy.hmicrochipphy.hmigrate.hmigrate_mode.hmii.hmii_timestamper.hmin_heap.hminmax.hmisc_cgroup.hmiscdevice.hmlx4cmd.hcq.hdevice.hdoorbell.hdriver.hqp.hsrq.hmlx5cq.hdevice.hdoorbell.hdriver.heq.heswitch.hfs.hfs_helpers.hmlx5_ifc.hmlx5_ifc_fpga.hmlx5_ifc_vdpa.hmpfs.hport.hqp.hrsc_dump.htransobj.hvport.hmm-arch-hooks.hmm.hmm_inline.hmm_types.hmm_types_task.hmman.hmmap_lock.hmmccard.hcore.hhost.hmmc.hpm.hsd.hsdhci-pci-data.hsdio.hsdio_func.hsdio_ids.hsh_mmcif.hslot-gpio.hmmdebug.hmmiotrace.hmmu_context.hmmu_notifier.hmmzone.hmnt_namespace.hmod_devicetable.hmodule.hmodule_signature.hmoduleloader.hmoduleparam.hmount.hmpage.hmpi.hmpls.hmpls_iptunnel.hmroute.hmroute6.hmroute_base.hmsdos_fs.hmsdos_partition.hmsg.hmsi.hmtdbbm.hblktrans.hcfi.hcfi_endian.hconcat.hdoc2000.hflashchip.hftl.hgen_probe.hinftl.hlatch-addr-flash.hlpc32xx_mlc.hlpc32xx_slc.hmap.hmtd.hmtdram.hnand-gpio.hnand.hnand_bch.hnand_ecc.hndfc.hnftl.honenand.honenand_regs.hpartitions.hpfow.hphysmap.hpismo.hplat-ram.hqinfo.hrawnand.hsh_flctl.hsharpsl.hspear_smi.hspi-nor.hsuper.hubi.hxip.hmutex.hmuxconsumer.hdriver.hmv643xx.hmv643xx_eth.hmv643xx_i2c.hmvebu-pmsu.hmxm-wmi.hn_r3964.hnamei.hnd.hnetnet.hinteli40e_client.hiidc.hnetdev_features.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_comment.hip_set_counter.hip_set_getport.hip_set_hash.hip_set_list.hip_set_skbinfo.hip_set_timeout.hpfxlen.hnf_conntrack_amanda.hnf_conntrack_common.hnf_conntrack_dccp.hnf_conntrack_ftp.hnf_conntrack_h323.hnf_conntrack_h323_asn1.hnf_conntrack_h323_types.hnf_conntrack_irc.hnf_conntrack_pptp.hnf_conntrack_proto_gre.hnf_conntrack_sane.hnf_conntrack_sctp.hnf_conntrack_sip.hnf_conntrack_snmp.hnf_conntrack_tcp.hnf_conntrack_tftp.hnf_conntrack_zones_common.hnf_osf.hnfnetlink.hnfnetlink_acct.hx_tables.hxt_hashlimit.hxt_physdev.hnetfilter_arparp_tables.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebtables.hnetfilter_defs.hnetfilter_ingress.hnetfilter_ipv4netfilter_ipv4.hip_tables.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hnetlink.hnetpoll.hnfs.hnfs3.hnfs4.hnfs_fs.hnfs_fs_i.hnfs_fs_sb.hnfs_iostat.hnfs_page.hnfs_xdr.hnfsacl.hnitro_enclaves.hnl802154.hnls.hnmi.hnode.hnodemask.hnospec.hnotifier.hns_common.hnsc_gpio.hnsproxy.hntb.hntb_transport.hnubus.hnuma.hnvme-fc-driver.hnvme-fc.hnvme-rdma.hnvme-tcp.hnvme.hnvmem-consumer.hnvmem-provider.hnvram.hobjagg.hobjtool.hof.hof_address.hof_clk.hof_device.hof_dma.hof_fdt.hof_gpio.hof_graph.hof_iommu.hof_irq.hof_mdio.hof_net.hof_pci.hof_pdt.hof_platform.hof_reserved_mem.hoid_registry.holpc-ec.homap-dma.homap-dmaengine.homap-gpmc.homap-iommu.homap-mailbox.homapfb.honce.hoom.hopenvswitch.hoprofile.hosq_lock.hoverflow.hpadata.hpage-flags-layout.hpage-flags.hpage-isolation.hpage_counter.hpage_ext.hpage_idle.hpage_owner.hpage_ref.hpage_reporting.hpageblock-flags.hpagemap.hpagevec.hpagewalk.hparman.hparport.hparport_pc.hparser.hpata_arasan_cf_data.hpatchkey.hpath.hpch_dma.hpci-acpi.hpci-ats.hpci-dma-compat.hpci-ecam.hpci-ep-cfs.hpci-epc.hpci-epf.hpci-p2pdma.hpci.hpci_hotplug.hpci_ids.hpcspcs-xpcs.hpda_power.hpe.hpercpu-defs.hpercpu-refcount.hpercpu-rwsem.hpercpu.hpercpu_counter.hperfarm_pmu.hperf_event.hperf_regs.hpersonality.hpfn.hpfn_t.hphonet.hphyphy.homap_control_phy.homap_usb.hphy-qcom-ufs.hphy-sun4i-usb.hphy.htegraxusb.hulpi_phy.hphy_fixed.hphy_led_triggers.hphylink.hpid.hpid_namespace.hpim.hpinctrlconsumer.hdevinfo.hmachine.hpinconf-generic.hpinconf.hpinctrl-state.hpinctrl.hpinmux.hpipe_fs_i.hpkeys.hpktcdvd.hpl320-ipc.hplatform_dataad5449.had5755.had5761.had7266.had7291.had7298.had7303.had7791.had7793.had7879.had7887.hadau17x1.hadp5588.hadp8860.hadp8870.hads1015.hads7828.hapds990x.harm-ux500-pm.hasoc-imx-ssi.hasoc-kirkwood.hasoc-mx27vis.hasoc-palm27x.hasoc-s3c.hasoc-s3c24xx_simtec.hasoc-ti-mcbsp.hasoc-ux500-msp.hat24.hat91_adc.hata-pxa.hata-samsung_cf.hatmel.hb53.hbcmgenet.hbd6107.hbh1770glc.hbrcmfmac.hbrcmnand.hbt-nokia-h4p.hclk-da8xx-cfgchip.hclk-davinci-pll.hclk-fch.hclk-integrator.hclk-u300.hcpuidle-exynos.hcrypto-atmel.hcrypto-ux500.hcyttsp4.hdavinci_asp.hdb8500_thermal.hdma-atmel.hdma-coh901318.hdma-dw.hdma-ep93xx.hdma-hsu.hdma-imx-sdma.hdma-imx.hdma-mmp_tdma.hdma-mv_xor.hdma-s3c24xx.hdma-ste-dma40.hdmtimer-omap.hds620.hdwc3-omap.hedma.hefm32-spi.hefm32-uart.hehci-sh.helm.hemif_plat.heth-netx.hfsa9480.hg762.hgpio-ath79.hgpio-davinci.hgpio-dwapb.hgpio-htc-egpio.hgpio-omap.hgpio-ts5500.hgpio_backlight.hgpmc-omap.hhsmmc-omap.hhwmon-s3c.hi2c-cbus-gpio.hi2c-davinci.hi2c-gpio.hi2c-imx.hi2c-mux-gpio.hi2c-mux-reg.hi2c-ocores.hi2c-omap.hi2c-pca-platform.hi2c-pxa.hi2c-s3c2410.hi2c-xiic.hina2xx.hintel-mid_wdt.hintel-spi.hinvensense_mpu6050.hiommu-omap.hirda-pxaficp.hirda-sa11x0.hisl9305.hitco_wdt.hkeyboard-pxa930_rotary.hkeyboard-spear.hkeypad-ep93xx.hkeypad-nomadik-ske.hkeypad-omap.hkeypad-pxa27x.hkeypad-w90p910.hkeyscan-davinci.hlcd-mipid.hleds-kirkwood-netxbig.hleds-kirkwood-ns2.hleds-lm355x.hleds-lm3642.hleds-lp55xx.hleds-omap.hleds-pca963x.hleds-s3c24xx.hlm3630a_bl.hlm3639_bl.hlm8323.hlp855x.hlp8727.hlp8755.hltc4245.hlv5207lp.hmacb.hmax197.hmax3421-hcd.hmax6639.hmax6697.hmax732x.hmcs.hmdio-bcm-unimac.hmdio-gpio.hmediacamera-mx2.hcamera-mx3.hcamera-pxa.hcoda.hmmp-camera.homap1_camera.homap4iss.hs5p_hdmi.hsi4713.hsii9234.hsoc_camera_platform.htimb_radio.htimb_video.hmfd-mcp-sa11x0.hmicrochip-ksz.hmlxcpld.hmlxreg.hmmc-davinci.hmmc-esdhc-imx.hmmc-mxcmmc.hmmc-omap.hmmc-pxamci.hmmc-s3cmci.hmmc-sdhci-s3c.hmmp_audio.hmmp_dma.hmouse-pxa930_trkball.hmtd-davinci-aemif.hmtd-davinci.hmtd-mxc_nand.hmtd-nand-omap2.hmtd-nand-pxa3xx.hmtd-nand-s3c2410.hmtd-orion_nand.hmv88e6xxx.hmv_usb.hnet-cw1200.hnfcmrvl.hntc_thermistor.hnxp-nci.homap-twl4030.homap-wd-timer.homap1_bl.homapdss.hpca953x.hpca954x.hpcf857x.hpcmcia-pxa2xx_viper.hphy-da8xx-usb.hpinctrl-single.hpixcir_i2c_ts.hpm33xx.hpwm_omap_dmtimer.hpxa2xx_udc.hpxa_sdhci.hregulator-haptic.hremoteproc-omap.hrtc-ds2404.hrtc-v3020.hs3c-hsotg.hs3c-hsudc.hsa11x0-serial.hsc18is602.hsdhci-pic32.hserial-imx.hserial-omap.hserial-sccnxp.hshmob_drm.hsht3x.hshtc1.hsi5351.hsimplefb.hsky81452-backlight.hspi-clps711x.hspi-davinci.hspi-ep93xx.hspi-imx.hspi-mt65xx.hspi-nuc900.hspi-omap2-mcspi.hspi-s3c64xx.hssm2518.hst33zp24.hst_sensors_pdata.hsyscon.htc35876x.htda9950.hti-aemif.hti-sysc.htouchscreen-s3c2410.htsc2007.htsl2563.htsl2772.huio_dmem_genirq.huio_pruss.husb-davinci.husb-ehci-mxc.husb-ehci-orion.husb-musb-ux500.husb-mx2.husb-ohci-pxa27x.husb-ohci-s3c2410.husb-omap.husb-omap1.husb-pxa3xx-ulpi.husb-s3c2410_udc.husb3503.hux500_wdt.hvideo-clcd-versatile.hvideo-ep93xx.hvideo-imxfb.hvideo-mx3fb.hvideo-nuc900fb.hvideo-pxafb.hvideo_s3c.hvoltage-omap.hwiznet.hwkup_m3.hx86apple.hclk-lpss.hclk-pmc-atom.hpmc_atom.hsoc.hzforce_ts.hplatform_device.hplatform_profile.hpldmfw.hplist.hpm-trace.hpm.hpm2301_charger.hpm_clock.hpm_domain.hpm_opp.hpm_qos.hpm_runtime.hpm_wakeirq.hpm_wakeup.hpmbus.hpmu.hpnfs_osd_xdr.hpnp.hpoison.hpoll.hposix-clock.hposix-timers.hposix_acl.hposix_acl_xattr.hpowerab8500.hbq2415x_charger.hbq24190_charger.hbq24735-charger.hbq27xxx_battery.hcharger-manager.hgeneric-adc-battery.hgpio-charger.hisp1704_charger.hjz4740-battery.hmax17042_battery.hmax8903_charger.hsbs-battery.hsmartreflex.hsmb347-charger.htwl4030_madc_battery.hpower_supply.hpowercap.hppp-comp.hppp_channel.hppp_defs.hpps-gpio.hpps_kernel.hpr.hprandom.hpreempt.hprefetch.hprime_numbers.hprintk.hprmt.hproc_fs.hproc_ns.hprocessor.hprofile.hprojid.hproperty.hpsci.hpseudo_fs.hpsi.hpsi_types.hpsp-platform-access.hpsp-sev.hpsp-tee.hpsp.hpstore.hpstore_ram.hpti.hptp_classify.hptp_clock_kernel.hptr_ring.hptrace.hpurgatory.hpvclock_gtod.hpwm.hpwm_backlight.hpxa168_eth.hpxa2xx_ssp.hqcom-geni-se.hqcom_scm.hqedcommon_hsi.heth_common.hfcoe_common.hiscsi_common.hiwarp_common.hnvmetcp_common.hqed_chain.hqed_eth_if.hqed_fcoe_if.hqed_if.hqed_iov_if.hqed_iscsi_if.hqed_ll2_if.hqed_nvmetcp_if.hqed_rdma_if.hqede_rdma.hrdma_common.hroce_common.hstorage_common.htcp_common.hqnx6_fs.hquicklist.hquota.hquotaops.hradix-tree.hraiddetect.hmd_u.hpq.hxor.hraid_class.hramfs.hrandom.hrange.hras.hratelimit.hratelimit_types.hrational.hrbtree.hrbtree_augmented.hrbtree_latch.hrbtree_types.hrcu_node_tree.hrcu_segcblist.hrcu_sync.hrculist.hrculist_bl.hrculist_nulls.hrcupdate.hrcupdate_trace.hrcupdate_wait.hrcutiny.hrcutree.hrcuwait.hreboot-mode.hreboot.hreciprocal_div.hrefcount.hregmap.hregset.hregulatorab8500.hact8865.harizona-ldo1.harizona-micsupp.hconsumer.hda9211.hdb8500-prcmu.hdriver.hfan53555.hfixed.hgpio-regulator.hlp3971.hlp3972.hlp872x.hmachine.hmax1586.hmax8649.hmax8660.hmax8952.hmax8973-regulator.hmt6311.hmt6323-regulator.hmt6380-regulator.hmt6397-regulator.hof_regulator.hpfuze100.htps51632-regulator.htps62360.htps6507x.huserspace-consumer.hrelay.hremoteprocremoteproc.hqcom_rproc.hst_slim_rproc.hresctrl.hreservation.hresetreset-controller.hreset.hbcm63xx_pmb.hresource.hresource_ext.hrestart_block.hrfkill.hrh_flags.hrh_kabi.hrh_kabi_attributes.hrh_kabi_aux.hrh_kabi_memcg.hrh_tasklist_lock.hrhashtable-types.hrhashtable.hring_buffer.hrio.hrio_drv.hrio_ids.hrio_regs.hrmap.hrmi.hrndis.hrodata_test.hroot_dev.hrpmsgrpmsg.hqcom_glink.hqcom_smd.hrslib.hrtcrtc.hds1286.hds1307.hds1685.hm48t59.hsirfsoc_rtciobrg.hrtmutex.hrtnetlink.hrtsx_common.hrtsx_pci.hrtsx_usb.hrwbase_rt.hrwlock.hrwlock_api_smp.hrwlock_rt.hrwlock_types.hrwsem.hs3c_adc_battery.hsa11x0-dma.hsbitmap.hscatterlist.hscc.hschedsched.hautogroup.hclock.hcoredump.hcpufreq.hcputime.hdeadline.hdebug.hhotplug.hidle.hinit.hisolation.hjobctl.hloadavg.hmm.hnohz.hnuma_balancing.hprio.hrt.hsignal.hsmt.hstat.hsysctl.htask.htask_stack.htopology.htypes.huser.hwake_q.hxacct.hsched_clock.hscif.hscmi_protocol.hscpi_protocol.hscreen_info.hscs.hsctp.hscx200.hscx200_gpio.hsdb.hsdla.hseccomp.hsecurebits.hsecurity.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselection.hsem.hsemaphore.hseq_buf.hseq_file.hseq_file_net.hseqlock.hseqno-fence.hserdev.hserial.hserial_8250.hserial_bcm63xx.hserial_core.hserial_max3100.hserial_pnx8xxx.hserial_s3c.hserial_sci.hserio.hset_memory.hsfi.hsfi_acpi.hsfp.hsh_clk.hsh_dma.hsh_eth.hsh_intc.hsh_timer.hshdma-base.hshm.hshmem_fs.hshrinker.hsignal.hsignal_types.hsignalfd.hsiox.hsiphash.hsirfsoc_dma.hsizes.hskb_array.hskbuff.hskmsg.hslab.hslab_def.hslimbus.hslub_def.hsm501-regs.hsm501.hsmc911x.hsmc91x.hsmp.hsmp_types.hsmpboot.hsmsc911x.hsmscphy.hsocactionsowl-sps.hbrcmstbbrcmstb.hdovepmu.hmediatekinfracfg.hmtk_wed.hqcomapr.hmdt_loader.hqmi.hsmd-rpm.hsmem.hsmem_state.hwcnss_ctrl.hrenesasrcar-rst.hrcar-sysc.hsamsungexynos-pmu.hexynos-regs-pmu.hsunxisunxi_sram.htiknav_dma.hknav_qmss.hti-msgmgr.hti_sci_protocol.hsock_diag.hsocket.hsockptr.hsonet.hsony-laptop.hsonypi.hsort.hsound.hsoundcard.hsoundwiresdw.hsdw_amd.hsdw_intel.hsdw_registers.hsdw_type.hspiad7877.hadi_spi3.hads7846.hat73c213.hat86rf230.hcc2520.hcorgi_lcd.hds1305.heeprom.hflash.hifx_modem.hl4f00242t03.hlibertas_spi.hlms283gf05.hmax7301.hmc33880.hmcp23s08.hmmc_spi.hmxs-spi.hpxa2xx_spi.hrspi.hs3c24xx.hsh_hspi.hsh_msiof.hspi-fsl-dspi.hspi-mem.hspi.hspi_bitbang.hspi_gpio.hspi_oc_tiny.htdo24m.htle62x0.hxilinx_spi.hspinlock.hspinlock_api_smp.hspinlock_api_up.hspinlock_rt.hspinlock_types.hspinlock_types_raw.hspinlock_types_up.hspinlock_up.hsplice.hspmi.hsram.hsrcu.hsrcutiny.hsrcutree.hssbssb.hssb_driver_chipcommon.hssb_driver_extif.hssb_driver_gige.hssb_driver_mips.hssb_driver_pci.hssb_embedded.hssb_regs.hssbi.hstackdepot.hstackprotector.hstacktrace.hstart_kernel.hstat.hstatfs.hstatic_call.hstatic_call_types.hstatic_key.hstddef.hstm.hstmmac.hstmp3xxx_rtc_wdt.hstmp_device.hstop_machine.hstring.hstring_helpers.hstringhash.hstringify.hsudmac.hsungem_phy.hsunrpcaddr.hauth.hauth_gss.hbc_xprt.hcache.hclnt.hdebug.hgss_api.hgss_asn1.hgss_err.hgss_krb5.hgss_krb5_enctypes.hmetrics.hmsg_prot.hrpc_pipe_fs.hrpc_rdma.hrpc_rdma_cid.hsched.hstats.hsvc.hsvc_rdma.hsvc_rdma_pcl.hsvc_xprt.hsvcauth.hsvcauth_gss.hsvcsock.htimer.htypes.hxdr.hxprt.hxprtmultipath.hxprtrdma.hxprtsock.hsunserialcore.hsunxi-rsb.hsuperhyway.hsuspend.hsvga.hsw842.hswab.hswait.hswap.hswap_cgroup.hswap_slots.hswapfile.hswapops.hswiotlb.hswitchtec.hsxgbe_platform.hsync_core.hsync_file.hsynclink.hsys.hsys_soc.hsyscalls.hsyscore_ops.hsysctl.hsysfs.hsyslog.hsysrq.hsysv_fs.ht10-pi.htask_io_accounting.htask_io_accounting_ops.htask_work.htaskstats_kern.htboot.htc.htca6416_keypad.htcp.htee_drv.htextsearch.htextsearch_fsm.htfrc.hthermal.hthinkpad_acpi.hthread_info.hthreads.hthunderbolt.hti-emif-sram.hti_wilink_st.htick.htifm.htimb_dma.htimb_gpio.htime.htime32.htime64.htime_namespace.htimecounter.htimekeeper_internal.htimekeeping.htimekeeping32.htimer.htimerfd.htimeriomem-rng.htimerqueue.htimex.htnum.htopology.htorture.htoshiba.htpm.htpm_command.htpm_eventlog.htrace.htrace_clock.htrace_events.htrace_seq.htracefs.htracehook.htracepoint-defs.htracepoint.htransport_class.hts-nbus.htsacct_kern.htty.htty_driver.htty_flip.htty_ldisc.htypecheck.htypes.hu64_stats_sync.huaccess.hucb1400.hucs2_string.hudp.huidgid.huio.huio_driver.hulpidriver.hinterface.hregs.humh.hunalignedaccess_ok.hbe_byteshift.hbe_memmove.hbe_struct.hgeneric.hle_byteshift.hle_memmove.hle_struct.hmemmove.hpacked_struct.hunits.huprobes.husbusb.hassociation.haudio-v2.haudio-v3.haudio.hc67x00.hccid.hcdc-wdm.hcdc.hcdc_ncm.hch9.hchipidea.hcomposite.hehci-dbgp.hehci_def.hehci_pdriver.hezusb.hfunctionfs.hg_hid.hgadget.hgadget_configfs.hgpio_vbus.hhcd.hinput.hiowarrior.hirda.hisp116x.hisp1301.hisp1362.hm66592.hmusb-ux500.hmusb.hnet2280.hof.hohci_pdriver.hotg-fsm.hotg.hpd.hpd_ado.hpd_bdo.hpd_ext_sdb.hpd_vdo.hphy.hphy_companion.hquirks.hr8152.hr8a66597.hrenesas_usbhs.hrndis_host.hrole.hserial.hsl811.hstorage.htcpci.htcpm.htegra_usb_phy.htypec.htypec_altmode.htypec_dp.htypec_mux.htypec_retimer.htypec_tbt.huas.hulpi.husb338x.husb_phy_generic.husbnet.huvc.hwusb-wa.hwusb.hxhci-dbgp.husb_usual.husbdevice_fs.huser-return-notifier.huser.huser_namespace.huserfaultfd_k.husermode_driver.hutil_macros.huts.hutsname.huuid.huwbuwb.hdebug-cmd.hspec.humc.hwhci.hvbox_utils.hvdpa.hverification.hvermagic.hvexpress.hvfio.hvfs.hvga_switcheroo.hvgaarb.hvhost_iotlb.hvia-core.hvia-gpio.hvia.hvia_i2c.hvideodev2.hvirtio.hvirtio_byteorder.hvirtio_caif.hvirtio_config.hvirtio_console.hvirtio_dma_buf.hvirtio_net.hvirtio_pci_modern.hvirtio_ring.hvirtio_vsock.hvisorbus.hvlynq.hvm_event_item.hvmacache.hvmalloc.hvme.hvmpressure.hvmstat.hvmw_vmci_api.hvmw_vmci_defs.hvringh.hvt.hvt_buffer.hvt_kern.hvtime.hw1-gpio.hw1.hwait.hwait_bit.hwanrouter.hwatchdog.hwimaxdebug.hwin_minmax.hwireless.hwkup_m3_ipc.hwl12xx.hwm97xx.hwmi.hworkqueue.hwriteback.hww_mutex.hxarray.hxattr.hxxhash.hxz.hyam.hz2_battery.hzbud.hzconf.hzlib.hzorro.hzpool.hzsmalloc.hzstd.hzutil.hmath-emudouble.hop-1.hop-2.hop-4.hop-8.hop-common.hquad.hsingle.hsoft-fp.hmediacec-notifier.hcec-pin.hcec.hdavinciccdc_types.hdm355_ccdc.hdm644x_ccdc.hisif.hvpbe.hvpbe_display.hvpbe_osd.hvpbe_types.hvpbe_venc.hvpfe_capture.hvpfe_types.hvpif_types.hvpss.hdemux.hdmxdev.hdrv-intfcx2341x.hcx25840.hexynos-fimc.hmsp3400.hrenesas-ceu.hs3c_camif.hsaa7146.hsaa7146_vv.hsh_mobile_ceu.hsh_vou.hsi476x.hsoc_mediabus.htea575x.hdvb-usb-ids.hdvb_ca_en50221.hdvb_demux.hdvb_frontend.hdvb_math.hdvb_net.hdvb_ringbuffer.hdvb_vb2.hdvbdev.hframe_vector.hi2cad9389b.hadp1653.hadv7183.hadv7343.hadv7393.hadv7511.hadv7604.hadv7842.hak881x.hbt819.hcs5345.hcs53l32a.hir-kbd-i2c.hlm3560.hlm3646.hm52790.hm5mols.hmt9m032.hmt9p031.hmt9t001.hmt9t112.hmt9v011.hmt9v022.hmt9v032.hnoon010pc30.hov2659.hov7670.hov772x.hov9650.hrj54n1cb0c.hs5c73m3.hs5k4ecgx.hs5k6aa.hsaa6588.hsaa7115.hsaa7127.hsmiapp.hsr030pc30.htc358743.htda1997x.hths7303.htvaudio.htvp514x.htvp7002.htw9910.huda1342.hupd64031a.hupd64083.hwm8775.himx.hmedia-device.hmedia-devnode.hmedia-entity.hrc-core.hrc-map.hrcar-fcp.hsoc_camera.htpgv4l2-tpg.htuner-types.htuner.htveeprom.hv4l2-async.hv4l2-clk.hv4l2-common.hv4l2-ctrls.hv4l2-dev.hv4l2-device.hv4l2-dv-timings.hv4l2-event.hv4l2-fh.hv4l2-flash-led-class.hv4l2-fwnode.hv4l2-image-sizes.hv4l2-ioctl.hv4l2-mc.hv4l2-mediabus.hv4l2-mem2mem.hv4l2-rect.hv4l2-subdev.hvideobuf-core.hvideobuf-dma-contig.hvideobuf-dma-sg.hvideobuf-vmalloc.hvideobuf2-core.hvideobuf2-dma-contig.hvideobuf2-dma-sg.hvideobuf2-dvb.hvideobuf2-memops.hvideobuf2-v4l2.hvideobuf2-vmalloc.hvsp1.hmemoryjedec_ddr.hmiscaltera.hcharlcd.hcxl-base.hcxl.hcxllib.hocxl-config.hocxl.hnet6lowpan.h9p9p.hclient.htransport.hSpace.hact_api.haddrconf.haf_ieee802154.haf_rxrpc.haf_unix.haf_vsock.hah.harp.hatmclip.hax25.hax88796.hbareudp.hbluetoothbluetooth.hhci.hhci_core.hhci_mon.hhci_sock.hhci_sync.hl2cap.hmgmt.hrfcomm.hsco.hbond_3ad.hbond_alb.hbond_options.hbonding.hbpf_sk_storage.hbusy_poll.hcaifcaif_dev.hcaif_device.hcaif_hsi.hcaif_layer.hcaif_spi.hcfcnfg.hcfctrl.hcffrml.hcfmuxl.hcfpkt.hcfserl.hcfsrvl.hcalipso.hcfg80211-wext.hcfg80211.hcfg802154.hchecksum.hcipso_ipv4.hcls_cgroup.hcodel.hcodel_impl.hcodel_qdisc.hcompat.hdatalink.hdcbevent.hdcbnl.hdevlink.hdn.hdn_dev.hdn_fib.hdn_neigh.hdn_nsp.hdn_route.hdrop_monitor.hdropreason-core.hdsa.hdsfield.hdst.hdst_cache.hdst_metadata.hdst_ops.herspan.hesp.hespintcp.hethoc.hfailover.hfib_notifier.hfib_rules.hfirewire.hflow.hflow_dissector.hflow_offload.hfou.hfq.hfq_impl.hgarp.hgen_stats.hgenetlink.hgeneve.hgre.hgro_cells.hgtp.hgue.hhwbm.hicmp.hieee80211_radiotap.hieee802154_netdev.hif_inet6.hife.hila.hinet6_connection_sock.hinet6_hashtables.hinet_common.hinet_connection_sock.hinet_ecn.hinet_frag.hinet_hashtables.hinet_sock.hinet_timewait_sock.hinetpeer.hip.hip6_checksum.hip6_fib.hip6_route.hip6_tunnel.hip_fib.hip_tunnels.hip_vs.hipcomp.hipconfig.hipv6.hipv6_frag.hipv6_stubs.hipx.hiucvaf_iucv.hiucv.hiw_handler.hkcm.hl3mdev.hlag.hlapb.hlib80211.hllc.hllc_c_ac.hllc_c_ev.hllc_c_st.hllc_conn.hllc_if.hllc_pdu.hllc_s_ac.hllc_s_ev.hllc_s_st.hllc_sap.hlwtunnel.hmac80211.hmac802154.hmanagdma.hhw_channel.hmana.hmana_auxiliary.hshm_channel.hmip6.hmld.hmpls.hmpls_iptunnel.hmptcp.hmrp.hncsi.hndisc.hneighbour.hnet_failover.hnet_namespace.hnet_ratelimit.hnetevent.hnetfilterbr_netfilter.hipv4nf_conntrack_ipv4.hnf_defrag_ipv4.hnf_dup_ipv4.hnf_nat_masquerade.hnf_reject.hipv6nf_conntrack_icmpv6.hnf_conntrack_ipv6.hnf_defrag_ipv6.hnf_dup_ipv6.hnf_nat_masquerade.hnf_reject.hnf_conntrack.hnf_conntrack_acct.hnf_conntrack_core.hnf_conntrack_count.hnf_conntrack_ecache.hnf_conntrack_expect.hnf_conntrack_extend.hnf_conntrack_helper.hnf_conntrack_l4proto.hnf_conntrack_labels.hnf_conntrack_seqadj.hnf_conntrack_synproxy.hnf_conntrack_timeout.hnf_conntrack_timestamp.hnf_conntrack_tuple.hnf_conntrack_zones.hnf_dup_netdev.hnf_flow_table.hnf_log.hnf_nat.hnf_nat_helper.hnf_nat_redirect.hnf_queue.hnf_reject.hnf_socket.hnf_tables.hnf_tables_core.hnf_tables_ipv4.hnf_tables_ipv6.hnf_tables_offload.hnf_tproxy.hnfnetlink_log.hnft_fib.hnft_reject.hxt_rateest.hnetlabel.hnetlink.hnetnsbpf.hcan.hconntrack.hcore.hdccp.hgeneric.hhash.hieee802154_6lowpan.hipv4.hipv6.hmib.hmpls.hnetfilter.hnftables.hpacket.hsctp.hsmc.hunix.hx_tables.hxdp.hxfrm.hnetprio_cgroup.hnetrom.hnexthop.hnfcdigital.hhci.hllc.hnci.hnci_core.hnfc.hnl802154.hnsh.hp8022.hpage_pool.hphonetgprs.hpep.hphonet.hpn_dev.hpie.hping.hpkt_cls.hpkt_sched.hpptp.hprotocol.hpsample.hpsnap.hraw.hrawv6.hred.hregulatory.hrequest_sock.hrose.hroute.hrsi_91x.hrtnetlink.hsch_generic.hscm.hsctpauth.hchecksum.hcommand.hconstants.hsctp.hsm.hstream_interleave.hstream_sched.hstructs.htsnmap.hulpevent.hulpqueue.hsecure_seq.hseg6.hseg6_hmac.hseg6_local.hslhc_vj.hsmc.hsnmp.hsock.hsock_reuseport.hstp.hstrparser.hswitchdev.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_police.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_wrapper.htcp.htcp_states.htimewait_sock.htipc.htls.htls_toe.htransp_v6.htso.htun_proto.hudp.hudp_tunnel.hudplite.hvsock_addr.hvxlan.hwext.hwimax.hx25.hx25device.hxdp.hxdp_priv.hxdp_sock.hxdp_sock_drv.hxfrm.hxsk_buff_pool.hpcmciaciscode.hcisreg.hcistpl.hdevice_id.hds.hss.hrasras_event.hrdmaib.hib_addr.hib_cache.hib_cm.hib_hdrs.hib_mad.hib_marshall.hib_pack.hib_pma.hib_sa.hib_smi.hib_sysfs.hib_umem.hib_umem_odp.hib_verbs.hiba.hibta_vol1_c12.hiw_cm.hiw_portmap.hlag.hmr_pool.hopa_addr.hopa_port_info.hopa_smi.hopa_vnic.hrdma_cm.hrdma_cm_ib.hrdma_counter.hrdma_netlink.hrdma_vt.hrdmavt_cq.hrdmavt_mr.hrdmavt_qp.hrestrack.hrw.hsignature.htid_rdma_defs.huverbs_ioctl.huverbs_named_ioctl.huverbs_std_types.huverbs_types.hscsifcfc_encaps.hfc_fc2.hfc_fcoe.hfc_fcp.hfc_fip.hfc_ms.hfc_frame.hfcoe_sysfs.hiscsi_if.hiscsi_proto.hiser.hlibfc.hlibfcoe.hlibiscsi.hlibiscsi_tcp.hlibsas.hosd_attributes.hosd_protocol.hosd_sec.hosd_sense.hosd_types.hsas.hsas_ata.hscsi.hscsi_bsg_iscsi.hscsi_cmnd.hscsi_common.hscsi_dbg.hscsi_device.hscsi_devinfo.hscsi_dh.hscsi_driver.hscsi_eh.hscsi_host.hscsi_ioctl.hscsi_proto.hscsi_request.hscsi_tcq.hscsi_transport.hscsi_transport_fc.hscsi_transport_iscsi.hscsi_transport_sas.hscsi_transport_spi.hscsi_transport_srp.hscsicam.hsg.hsrp.hviosrp.hsocarcaux.hmcip.htimers.hat91at91sam9_ddrsdr.hat91sam9_sdramc.hatmel-secumod.hatmel-sfr.hbcm2835raspberrypi-firmware.hbrcmstbcommon.hfslbman.hqeimmap_qe.hqe.hqe_ic.hqe_tdm.hucc.hucc_fast.hucc_slow.hqman.himxcpuidle.hrevision.htimer.hmediateksmi.hnpscommon.hmtm.hqcomcmd-db.hrockchiprockchip_sip.hsa1100pwer.htegraahb.hbpmp-abi.hbpmp.hcommon.hcpuidle.hemc.hflowctrl.hfuse.hivc.hmc.hpm.hpmc.hsoundac97codec.hcompat.hcontroller.hregs.hac97_codec.haci.hacp63_chip_offset_byte.had1816a.had1843.hadau1373.haess.hak4113.hak4114.hak4117.hak4531_codec.hak4641.hak4xxx-adda.halc5623.hasequencer.hasound.hasoundef.hcompress_driver.hcontrol.hcore.hcs35l33.hcs35l34.hcs35l35.hcs35l36.hcs35l41.hcs4231-regs.hcs4271.hcs42l42.hcs42l52.hcs42l56.hcs42l73.hcs8403.hcs8427.hda7213.hda7218.hda7219-aad.hda7219.hda9055.hdesignware_i2s.hdmaengine_pcm.hemu10k1.hemu10k1_synth.hemu8000.hemu8000_reg.hemux_legacy.hemux_synth.hes1688.hgraph_card.hgus.hhda-mlink.hhda_chmap.hhda_codec.hhda_component.hhda_hwdep.hhda_i915.hhda_register.hhda_regmap.hhda_verbs.hhdaudio.hhdaudio_ext.hhdmi-codec.hhwdep.hi2c.hinfo.hinitval.hintel-dsp-config.hintel-nhlt.hjack.hl3.hmax9768.hmax98088.hmax98090.hmax98095.hmemalloc.hminors.hmixer_oss.hmpu401.homap-hdmi-audio.hopl3.hopl4.hpcm-indirect.hpcm.hpcm_drm_eld.hpcm_iec958.hpcm_oss.hpcm_params.hpt2258.hpxa2xx-lib.hrawmidi.hrt1015.hrt286.hrt298.hrt5514.hrt5659.hrt5660.hrt5663.hrt5665.hrt5668.hrt5682.hrt5682s.hs3c24xx_uda134x.hsb.hsb16_csp.hsdw.hseq_device.hseq_kernel.hseq_midi_emul.hseq_midi_event.hseq_oss.hseq_oss_legacy.hseq_virmidi.hsh_dac_audio.hsh_fsi.hsimple_card.hsimple_card_utils.hsnd_wavefront.hsoc-acpi-intel-match.hsoc-acpi.hsoc-card.hsoc-component.hsoc-dai.hsoc-dapm.hsoc-dpcm.hsoc-jack.hsoc-link.hsoc-topology.hsoc.hsofsof.hchannel_map.hcontrol.hdai-amd.hdai-imx.hdai-intel.hdai-mediatek.hdai.hdebug.hext_manifest.hext_manifest4.hheader.hinfo.hipc4header.hpm.hstream.htopology.htrace.hxtensa.hsoundfont.hspear_dma.hspear_spdif.hsta32x.hsta350.htas2552-plat.htas5086.htea6330t.htimer.htlv.htlv320aic32x4.htlv320dac33-plat.htpa6130a2-plat.huda134x.huda1380.hutil_mem.hvx_core.hwavefront.hwm0010.hwm1250-ev1.hwm2000.hwm2200.hwm5100.hwm8903.hwm8904.hwm8955.hwm8960.hwm8962.hwm8993.hwm8996.hwm9081.hwm9090.hwss.htargetiscsiiscsi_target_core.hiscsi_target_stat.hiscsi_transport.htarget_core_backend.htarget_core_base.htarget_core_fabric.htracebpf_probe.hdefine_trace.hevents9p.hafs.halarmtimer.hasoc.havc.hbcache.hblock.hbpf_test_run.hbridge.hbtrfs.hcachefiles.hcgroup.hclk.hcma.hcompaction.hcontext_tracking.hcpuhp.hdamon.hdevlink.hdma_fence.hext4.hf2fs.hfib.hfib6.hfilelock.hfilemap.hfs.hfs_dax.hfscache.hfsi.hfsi_master_gpio.hgpio.hhost1x.hhuge_memory.hi2c.hib_mad.hib_umad.hinitcall.hintel-sst.hintel_ifs.hintel_iommu.hintel_ish.hio_uring.hiocost.hiommu.hipi.hirq.hirq_matrix.hiscsi.hjbd2.hkmem.hkvm.hkyber.hlibata.hlock.hmce.hmdio.hmigrate.hmlxsw.hmmc.hmmflags.hmodule.hmptcp.hnapi.hneigh.hnet.hnet_probe_common.hnetlink.hnfs.hnilfs2.hnmi.hobjagg.hoom.hosnoise.hpage_isolation.hpage_pool.hpage_ref.hpagemap.hpercpu.hpower.hpower_cpu_migrate.hpreemptirq.hprintk.hpwc.hqdisc.hqla.hqrtr.hrandom.hrcu.hrdma.hrdma_core.hregulator.hrpcgss.hrpcrdma.hrpm.hrseq.hrtc.hrxrpc.hsched.hscsi.hsctp.hsignal.hsiox.hskb.hsmbus.hsock.hsof.hsof_intel.hspi.hspmi.hsunrpc.hsunrpc_base.hsunvnet.hswiotlb.hsyscalls.htarget.htask.htcp.hthermal.hthermal_power_allocator.hthp.htimer.htlb.hudp.hufs.hv4l2.hvb2.hvmscan.hvsock_virtio_transport_common.hwbt.hworkqueue.hwriteback.hxdp.hxen.hperf.hsyscall.htrace_events.huapiasm-genericKbuild.asmauxvec.hbitsperlong.hbpf_perf_event.herrno-base.herrno.hfcntl.hhugetlb_encode.hint-l64.hint-ll64.hioctl.hioctls.hipcbuf.hkvm_para.hmman-common.hmman.hmsgbuf.hparam.hpoll.hposix_types.hresource.hsembuf.hsetup.hshmbuf.hshmparam.hsiginfo.hsignal-defs.hsignal.hsocket.hsockios.hstat.hstatfs.hswab.htermbits.htermios.htypes.hucontext.hunistd.hdrmamdgpu_drm.harmada_drm.hdrm.hdrm_fourcc.hdrm_mode.hdrm_sarea.hetnaviv_drm.hexynos_drm.hhabanalabs_accel.hi915_drm.hivpu_accel.hlima_drm.hmsm_drm.hnouveau_drm.homap_drm.hpanfrost_drm.hqxl_drm.hradeon_drm.htegra_drm.hv3d_drm.hvc4_drm.hvgem_drm.hvirtgpu_drm.hvmwgfx_drm.hlinuxKbuilda.out.hacct.hadb.hadfs_fs.haffs_hardblocks.hagpgart.haio_abi.ham437x-vpfe.handroidbinder.hapm_bios.harcfb.harm_sdei.haspeed-lpc-ctrl.hatalk.hatm.hatm_eni.hatm_he.hatm_idt77105.hatm_nicstar.hatm_tcp.hatm_zatm.hatmapi.hatmarp.hatmbr2684.hatmclip.hatmdev.hatmioc.hatmlec.hatmmpc.hatmppp.hatmsap.hatmsvc.haudit.hauto_dev-ioctl.hauto_fs.hauto_fs4.hauxvec.hax25.hb1lli.hbatadv_packet.hbatman_adv.hbaycom.hbcache.hbcm933xx_hcs.hbfs_fs.hbinfmts.hblkpg.hblktrace_api.hblkzoned.hbpf.hbpf_common.hbpf_perf_event.hbpfilter.hbpqether.hbsg.hbt-bmc.hbtf.hbtrfs.hbtrfs_tree.hbyteorderbig_endian.hlittle_endian.hcaifcaif_socket.hif_caif.hcancan.hbcm.herror.hgw.hnetlink.hraw.hvxcan.hcapability.hcapi.hcciss_defs.hcciss_ioctl.hcdrom.hcec-funcs.hcec.hcfm_bridge.hcgroupstats.hchio.hcifscifs_mount.hcifs_netlink.hclose_range.hcm4000_cs.hcn_proc.hcoda.hcoda_psdev.hcoff.hconnector.hconst.hcoresight-stm.hcramfs_fs.hcryptouser.hcuda.hcyclades.hcycx_cfm.hdcbnl.hdccp.hdevlink.hdlm.hdlm_device.hdlm_netlink.hdlm_plock.hdlmconstants.hdm-ioctl.hdm-log-userspace.hdma-buf.hdn.hdqblk_xfs.hdvbaudio.hca.hdmx.hfrontend.hnet.hosd.hversion.hvideo.hedd.hefs_fs_sb.helf-em.helf-fdpic.helf.helfcore.herrno.herrqueue.herspan.hethtool.hethtool_netlink.heventpoll.hfadvise.hfalloc.hfanotify.hfb.hfcntl.hfd.hfdreg.hfib_rules.hfiemap.hfilter.hfirewire-cdev.hfirewire-constants.hflat.hfou.hfpga-dfl.hfs.hfsl_hypervisor.hfsmap.hfuse.hfutex.hgameport.hgen_stats.hgenetlink.hgenwqegenwqe_card.hgfs2_ondisk.hgigaset_dev.hgpio.hgsmmux.hgtp.hhash_info.hhdlchdlc.hioctl.hhdlcdrv.hhdreg.hhid.hhiddev.hhidraw.hhpet.hhsics-protocol.hhsi_char.hhsr_netlink.hhw_breakpoint.hhyperv.hhysdn_if.hi2c-dev.hi2c.hi2o-dev.hi8k.hicmp.hicmpv6.hidxd.hif.hif_addr.hif_addrlabel.hif_alg.hif_arcnet.hif_arp.hif_bonding.hif_bridge.hif_cablemodem.hif_eql.hif_ether.hif_fc.hif_fddi.hif_frad.hif_hippi.hif_infiniband.hif_link.hif_ltalk.hif_macsec.hif_packet.hif_phonet.hif_plip.hif_ppp.hif_pppol2tp.hif_pppox.hif_slip.hif_team.hif_tun.hif_tunnel.hif_vlan.hif_x25.hif_xdp.hife.higmp.hiioevents.htypes.hila.hin.hin6.hin_route.hinet_diag.hinotify.hinput-event-codes.hinput.hio_uring.hioctl.hiommu.hip.hip6_tunnel.hip_vs.hipc.hipmi.hipmi_bmc.hipmi_msgdefs.hipmi_ssif_bmc.hipsec.hipv6.hipv6_route.hipx.hirqnr.hisdnisdn.hcapicmd.hisdn_divertif.hisdn_ppp.hisdnif.hiso_fs.hisst_if.hivtv.hivtvfb.hjffs2.hjoystick.hkcm.hkcmp.hkcov.hkd.hkdev_t.hkernel-page-flags.hkernel.hkernelcapi.hkexec.hkeyboard.hkeyctl.hkfd_ioctl.hkfd_sysfs.hkvm.hkvm_para.hl2tp.hlibc-compat.hlightnvm.hlimits.hlirc.hllc.hloop.hlp.hlwtunnel.hmagic.hmajor.hmap_to_7segment.hmatroxfb.hmax2175.hmdio.hmedia-bus-format.hmedia.hmei.hmembarrier.hmemfd.hmempolicy.hmeye.hmic_common.hmic_ioctl.hmii.hminix_fs.hmman.hmmcioctl.hmmtimer.hmodule.hmount.hmpls.hmpls_iptunnel.hmptcp.hmqueue.hmroute.hmroute6.hmrp_bridge.hmsdos_fs.hmsg.hmtio.hn_r3964.hnbd-netlink.hnbd.hncsi.hndctl.hneighbour.hnet.hnet_dropmon.hnet_namespace.hnet_tstamp.hnetconf.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_hash.hip_set_list.hnf_conntrack_common.hnf_conntrack_ftp.hnf_conntrack_sctp.hnf_conntrack_tcp.hnf_conntrack_tuple_common.hnf_log.hnf_nat.hnf_osf.hnf_tables.hnf_tables_compat.hnfnetlink.hnfnetlink_acct.hnfnetlink_compat.hnfnetlink_conntrack.hnfnetlink_cthelper.hnfnetlink_cttimeout.hnfnetlink_log.hnfnetlink_queue.hx_tables.hxt_AUDIT.hxt_CHECKSUM.hxt_CLASSIFY.hxt_CONNMARK.hxt_CONNSECMARK.hxt_CT.hxt_DSCP.hxt_HMARK.hxt_IDLETIMER.hxt_LED.hxt_LOG.hxt_MARK.hxt_NFLOG.hxt_NFQUEUE.hxt_RATEEST.hxt_SECMARK.hxt_SYNPROXY.hxt_TCPMSS.hxt_TCPOPTSTRIP.hxt_TEE.hxt_TPROXY.hxt_addrtype.hxt_bpf.hxt_cgroup.hxt_cluster.hxt_comment.hxt_connbytes.hxt_connlabel.hxt_connlimit.hxt_connmark.hxt_conntrack.hxt_cpu.hxt_dccp.hxt_devgroup.hxt_dscp.hxt_ecn.hxt_esp.hxt_hashlimit.hxt_helper.hxt_ipcomp.hxt_iprange.hxt_ipvs.hxt_l2tp.hxt_length.hxt_limit.hxt_mac.hxt_mark.hxt_multiport.hxt_nfacct.hxt_osf.hxt_owner.hxt_physdev.hxt_pkttype.hxt_policy.hxt_quota.hxt_rateest.hxt_realm.hxt_recent.hxt_rpfilter.hxt_sctp.hxt_set.hxt_socket.hxt_state.hxt_statistic.hxt_string.hxt_tcpmss.hxt_tcpudp.hxt_time.hxt_u32.hnetfilter_arpnetfilter_arp.harp_tables.harpt_mangle.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebt_among.hebt_arp.hebt_arpreply.hebt_ip.hebt_ip6.hebt_limit.hebt_log.hebt_mark_m.hebt_mark_t.hebt_nat.hebt_nflog.hebt_pkttype.hebt_redirect.hebt_stp.hebt_vlan.hebtables.hnetfilter_decnet.hnetfilter_ipv4netfilter_ipv4.hip_tables.hipt_CLUSTERIP.hipt_ECN.hipt_LOG.hipt_REJECT.hipt_TTL.hipt_ah.hipt_ecn.hipt_ttl.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hip6t_HL.hip6t_LOG.hip6t_NPT.hip6t_REJECT.hip6t_ah.hip6t_frag.hip6t_hl.hip6t_ipv6header.hip6t_mh.hip6t_opts.hip6t_rt.hip6t_srh.hnetlink.hnetlink_diag.hnetrom.hnexthop.hnfc.hnfs.hnfs2.hnfs3.hnfs4.hnfs4_mount.hnfs_fs.hnfs_idmap.hnfs_mount.hnfsacl.hnfsdcld.hdebug.hexport.hstats.hnilfs2_api.hnilfs2_ondisk.hnitro_enclaves.hnl80211.hnsfs.hnubus.hnvme_ioctl.hnvram.homap3isp.homapfb.hoom.hopenat2.hopenvswitch.hpacket_diag.hparam.hparport.hpatchkey.hpci.hpci_regs.hpcitest.hperf_event.hpersonality.hpfkeyv2.hpfrut.hpg.hphantom.hphonet.hpkt_cls.hpkt_sched.hpktcdvd.hpmu.hpoll.hposix_acl.hposix_acl_xattr.hposix_types.hppdev.hppp-comp.hppp-ioctl.hppp_defs.hpps.hpr.hprctl.hpsample.hpsci.hpsp-sev.hptp_clock.hptrace.hqemu_fw_cfg.hqnx4_fs.hqnxtypes.hqrtr.hquota.hradeonfb.hraidmd_p.hmd_u.hrandom.hraw.hrds.hreboot.hreiserfs_fs.hreiserfs_xattr.hresource.hrfkill.hrio_cm_cdev.hrio_mport_cdev.hromfs_fs.hrose.hroute.hrpmsg.hrseq.hrtc.hrtnetlink.hrxrpc.hscc.hschedsched.htypes.hscif_ioctl.hscreen_info.hsctp.hsdla.hseccomp.hsecurebits.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselinux_netlink.hsem.hserial.hserial_core.hserial_reg.hserio.hsev-guest.hshm.hsignal.hsignalfd.hsmc.hsmc_diag.hsmiapp.hsnmp.hsock_diag.hsocket.hsockios.hsonet.hsonypi.hsound.hsoundcard.hspispidev.hstat.hstddef.hstm.hstring.hsunrpcdebug.hsuspend_ioctls.hswab.hswitchtec_ioctl.hsync_file.hsynclink.hsysctl.hsysinfo.htarget_core_user.htaskstats.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_ematchtc_em_cmp.htc_em_ipt.htc_em_meta.htc_em_nbyte.htc_em_text.htcp.htcp_metrics.htdx-guest.htee.htermios.hthermal.htime.htime_types.htimerfd.htimes.htimex.htiocl.htipc.htipc_config.htipc_netlink.htipc_sockets_diag.htls.htoshiba.htty.htty_flags.htypes.hudf_fs_i.hudp.huhid.huinput.huio.huleds.hultrasound.hun.hunistd.hunix_diag.husbaudio.hcdc-wdm.hcdc.hch11.hch9.hcharger.hfunctionfs.hg_printer.hg_uvc.hgadgetfs.hmidi.htmc.hvideo.husbdevice_fs.husbip.huserfaultfd.huserio.hutime.hutsname.huuid.huvcvideo.hv4l2-common.hv4l2-controls.hv4l2-dv-timings.hv4l2-mediabus.hv4l2-subdev.hvbox_err.hvbox_vmmdev_types.hvboxguest.hvdpa.hveth.hvfio.hvfio_ccw.hvfio_zdev.hvhost.hvhost_types.hvideodev2.hvirtio_9p.hvirtio_balloon.hvirtio_blk.hvirtio_bt.hvirtio_config.hvirtio_console.hvirtio_crypto.hvirtio_fs.hvirtio_gpu.hvirtio_ids.hvirtio_input.hvirtio_iommu.hvirtio_mem.hvirtio_mmio.hvirtio_net.hvirtio_pci.hvirtio_ring.hvirtio_rng.hvirtio_scsi.hvirtio_snd.hvirtio_types.hvirtio_vsock.hvm_sockets.hvm_sockets_diag.hvmcore.hvsockmon.hvt.hvtpm_proxy.hwait.hwanrouter.hwatchdog.hwimaxwimax.hi2400m.hwireless.hwmi.hx25.hxattr.hxdp_diag.hxfrm.hxilinx-v4l2-controls.hzorro.hzorro_ids.hmisccxl.hocxl.hpvpanic.hmtdinftl-user.hmtd-abi.hmtd-user.hnftl-user.hubi-user.hrdmabnxt_re-abi.hcxgb4-abi.hefa-abi.hhfihfi1_ioctl.hhfi1_user.hhns-abi.hib_user_ioctl_cmds.hib_user_ioctl_verbs.hib_user_mad.hib_user_sa.hib_user_verbs.hirdma-abi.hmana-abi.hmlx4-abi.hmlx5-abi.hmlx5_user_ioctl_cmds.hmlx5_user_ioctl_verbs.hmthca-abi.hocrdma-abi.hqedr-abi.hrdma_netlink.hrdma_user_cm.hrdma_user_ioctl.hrdma_user_ioctl_cmds.hrdma_user_rxe.hrvt-abi.hsiw-abi.hvmw_pvrdma-abi.hscsicxlflash_ioctl.hfcfc_els.hfc_fs.hfc_gs.hfc_ns.hscsi_bsg_fc.hscsi_bsg_mpi3mr.hscsi_netlink.hscsi_netlink_fc.hsoundasequencer.hasoc.hasound.hasound_fm.hcompress_offload.hcompress_params.hemu10k1.hfirewire.hhdsp.hhdspm.hintelavstokens.hsb16_csp.hsfnt_info.hskl-tplg-interface.hsnd_sst_tokens.hsofabi.hfw.hheader.htokens.htlv.husb_stream.hvideoedid.hsisfb.huvesafb.hxenevtchn.hgntalloc.hgntdev.hprivcmd.hvdsobits.hclocksource.hconst.hdatapage.hhelpers.hjiffies.hktime.hlimits.hmath64.hprocessor.htime.htime32.htime64.hvsyscall.hvideoatmel_lcdc.haty128.hbroadsheetfb.hcirrus.hcvisionppc.hda8xx-fb.hdisplay_timing.hedid.hgbe.hhecubafb.hili9320.himx-ipu-image-convert.himx-ipu-v3.hkyro.hmach64.hmaxinefb.hmbxfb.hmetronomefb.hmipi_display.hmmp_disp.hneomagic.hnewport.hnomodeset.hof_display_timing.hof_videomode.homap-panel-data.homapfb_dss.homapvrfb.hpermedia2.hplatform_lcd.hpm3fb.hpmag-ba-fb.hpmagb-b-fb.hpxa168fb.hradeon.hs1d13xxxfb.hsa1100fb.hsamsung_fimd.hsh_mobile_lcdc.hsisfb.hsstfb.htdfx.htgafb.htrident.hudlfb.huvesafb.hvga.hvideomode.hw100fb.hxenacpi.harmhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hballoon.hevents.hfeatures.hgrant_table.hhvc-console.hhvm.hinterfacecallback.helfnote.hevent_channel.hfeatures.hgrant_table.hhvmdm_op.hhvm_op.hhvm_vcpu.hparams.hstart_info.hio9pfs.hblkif.hconsole.hdisplif.hfbif.hkbdif.hnetif.hpciif.hprotocols.hpvcalls.hring.hsndif.htpmif.hvscsiif.hxenbus.hxs_wire.hmemory.hnmi.hphysdev.hplatform.hsched.hvcpu.hversion.hxen-mca.hxen.hxenpmu.hpage.hplatform_pci.hswiotlb-xen.htmem.hxen-front-pgdir-shbuf.hxen-ops.hxen.hxenbus.hxenbus_dev.hinitKconfigMakefileipcMakefilekernelKconfig.freezerKconfig.hzKconfig.locksKconfig.preemptMakefilebpfKconfigMakefilepreloadKconfigMakefileiteratorsMakefilecgroupMakefiledebugMakefilekdbMakefiledmaKconfigMakefileeventsMakefilegcovKconfigMakefileirqKconfigMakefilekcsanMakefilelivepatchKconfigMakefilelockingMakefilepowerKconfigMakefileprintkMakefilercuKconfigKconfig.debugMakefileschedMakefiletimeKconfigMakefiletraceKconfigMakefilelib842MakefileKconfigKconfig.debugKconfig.kasanKconfig.kcsanKconfig.kgdbKconfig.ubsanMakefilecryptoMakefiledimMakefilefontsKconfigMakefilekunitKconfigMakefilelivepatchMakefilelz4MakefilelzoMakefilemathKconfigMakefilempiMakefilepldmfwMakefileraid6MakefiletestMakefilereed_solomonMakefilevdsoKconfigMakefilexzKconfigMakefilezlib_deflateMakefilezlib_dfltccMakefilezlib_inflateMakefilezstdMakefilemmKconfigKconfig.debugMakefiledamonKconfigMakefilekasanMakefilenet6lowpanKconfigMakefile802KconfigMakefile8021qKconfigMakefile9pKconfigMakefileKconfigMakefileappletalkMakefileatmKconfigMakefileax25KconfigMakefilebatman-advKconfigMakefilebluetoothKconfigMakefilebnepKconfigMakefilecmtpKconfigMakefilehidpKconfigMakefilerfcommKconfigMakefilebpfMakefilebpfilterKconfigMakefilebridgeKconfigMakefilenetfilterKconfigMakefilecaifKconfigMakefilecanKconfigMakefilecephKconfigMakefilecoreMakefiledcbKconfigMakefiledccpKconfigMakefileccidsKconfigdecnetKconfigMakefilenetfilterKconfigMakefiledns_resolverKconfigMakefiledsaKconfigMakefileethernetMakefileethtoolMakefilehsrKconfigMakefileieee8021546lowpanKconfigMakefileKconfigMakefileifeKconfigMakefileipv4KconfigMakefilebpfilterMakefilenetfilterKconfigMakefileipv6KconfigMakefileilaMakefilenetfilterKconfigMakefileiucvKconfigMakefilekcmKconfigMakefilekeyMakefilel2tpKconfigMakefilel3mdevKconfigMakefilelapbKconfigMakefilellcKconfigMakefilemac80211KconfigMakefilemac802154KconfigMakefilemplsKconfigMakefilemptcpKconfigMakefilencsiKconfigMakefilenetfilterKconfigMakefileipsetKconfigMakefileipvsKconfigMakefilenetlabelKconfigMakefilenetlinkKconfigMakefilenetromMakefilenfcKconfigMakefilehciKconfigMakefilenciKconfigMakefilenshKconfigMakefileopenvswitchKconfigMakefilepacketKconfigMakefilephonetKconfigMakefilepsampleKconfigMakefileqrtrKconfigMakefilerdsKconfigMakefilerfkillKconfigMakefileroseMakefilerxrpcKconfigMakefileschedKconfigMakefilesctpKconfigMakefilesmcKconfigMakefilestrparserKconfigMakefilesunrpcKconfigMakefileauth_gssMakefilexprtrdmaMakefileswitchdevKconfigMakefiletipcKconfigMakefiletlsKconfigMakefileunixKconfigMakefilevmw_vsockKconfigMakefilewimaxKconfigMakefilewirelessKconfigMakefilex25KconfigMakefilexdpKconfigMakefilexfrmKconfigMakefilesamplesKconfigMakefileauxdisplayMakefilebpfMakefileMakefile.targetconfigfsMakefileconnectorMakefilehidrawMakefilehw_breakpointMakefilekdbMakefilekfifoMakefilekobjectMakefilekprobesMakefilelivepatchMakefilemeiMakefilemicmpssdMakefilenitro_enclavesMakefileqmiMakefilerpmsgMakefileseccompMakefiletimersMakefiletrace_eventsMakefiletrace_printkMakefileuhidMakefilev4lMakefilevfio-mdevMakefilevfsMakefilewatchdogMakefilescriptsKbuild.includeKconfig.includeLindentMakefileMakefile.asm-genericMakefile.buildMakefile.cleanMakefile.dtbinstMakefile.extrawarnMakefile.gcc-pluginsMakefile.headersinstMakefile.hostMakefile.kasanMakefile.kcovMakefile.kcsanMakefile.libMakefile.modbuiltinMakefile.modinstMakefile.modpostMakefile.modsignMakefile.ubsanadjust_autoksyms.shasn1_compilerasn1_compiler.cbasicMakefilefixdepfixdep.cmodules.orderbin2cbin2c.cbloat-o-meterbootgraph.plbpf_doc.pycc-can-link.shcheck_00index.shcheck_extable.shcheckincludes.plcheckkconfigsymbols.pycheckpatch.plcheckstack.plchecksyscalls.shcheckversion.plclang-toolsgen_compile_commands.pyrun-clang-tools.pyclang-version.shcleanfilecleanpatchcoccicheckcoccinelleapiallocalloc_cast.coccipool_zalloc-simple.coccizalloc-simple.coccicheck_bq27xxx_data.coccid_find_alias.coccidebugfsdebugfs_simple_attr.coccidrm-get-put.coccierr_cast.coccikstrdup.coccimemdup.coccimemdup_user.cocciplatform_no_drv_owner.coccipm_runtime.cocciptr_ret.cocciresource_size.coccisimple_open.coccivma_pages.coccifreeclk_put.coccidevm_free.cocciifnullfree.cocciiounmap.coccikfree.coccikfreeaddr.coccipci_free_consistent.cocciiteratorsdevice_node_continue.coccifen.cocciitnull.coccilist_entry_update.cocciuse_after_iter.coccilockscall_kern.coccidouble_lock.cocciflags.coccimini_lock.coccimiscarray_size.coccibadty.cocciboolconv.cocciboolinit.cocciboolreturn.coccibugon.coccicond_no_effect.coccicstptr.coccidoubleinit.cocciifaddr.cocciifcol.cocciirqf_oneshot.coccinewline_in_nl_msg.coccinoderef.cocciof_table.cocciorplus.coccireturnvar.coccisemicolon.cocciwarn.coccinullbadzero.coccideref_null.coccieno.coccikmerr.coccitestsdoublebitand.coccidoubletest.cocciodd_ptr_err.cocciunsigned_lesser_than_zero.cocciconfigconmakehashconmakehash.cconst_structs.checkpatchdecode_stacktrace.shdecodecodedepmod.shdiffconfigdocumentation-file-ref-checkdtcMakefileMakefile.dtcchecks.cdata.cdt_to_configdtcdtc-lexer.ldtc-lexer.lex.cdtc-parser.tab.cdtc-parser.tab.hdtc-parser.ydtc.cdtc.hdtx_difffdtdump.cfdtget.cfdtput.cflattree.cfstree.cinclude-prefixesarcarmarm64c6xdt-bindingsh8300microblazemipsnios2openriscpowerpcshxtensalibfdtMakefile.libfdtfdt.cfdt.hfdt_addresses.cfdt_empty_tree.cfdt_overlay.cfdt_ro.cfdt_rw.cfdt_strerror.cfdt_sw.cfdt_wip.clibfdt.hlibfdt_env.hlibfdt_internal.hlivetree.cmodules.ordersrcpos.csrcpos.htreesource.cupdate-dtc-source.shutil.cutil.hversion_gen.hyamltree.cexport_report.plextract-certextract-cert.cextract-ikconfigextract-module-sig.plextract-sys-certs.plextract-vmlinuxextract_xc3028.plfaddr2linefile-size.shfind-unused-docs.shgcc-goto.shgcc-ldgcc-plugin.shgcc-pluginsMakefilecyc_complexity_plugin.cgcc-common.hgcc-generate-gimple-pass.hgcc-generate-ipa-pass.hgcc-generate-rtl-pass.hgcc-generate-simple_ipa-pass.hgen-random-seed.shlatent_entropy_plugin.crandomize_layout_plugin.csancov_plugin.cstructleak_plugin.cgcc-version.shgcc-x86_32-has-stack-protector.shgcc-x86_64-has-stack-protector.shgdbMakefilelinuxMakefile__init__.pyconstants.py.incpus.pydmesg.pylists.pymodules.pyproc.pysymbols.pytasks.pyutils.pyvmlinux-gdb.pygen_initramfs_list.shgenksymsMakefilegenksymsgenksyms.cgenksyms.hkeywords.clex.llex.lex.cmodules.orderparse.tab.cparse.tab.hparse.yget_dvb_firmwareget_maintainer.plgfp-translateheaderdep.plheaders.shheaders_check.plheaders_install.shinsert-sys-certinsert-sys-cert.ckallsymskallsyms.ckconfigMakefileconfconf.cconfdata.cexpr.cexpr.hgconf-cfg.shgconf.cgconf.gladeimages.ckconf_id.clist.hlkc.hlkc_proto.hlxdialogBIG.FAT.WARNINGchecklist.cdialog.hinputbox.cmenubox.ctextbox.cutil.cyesno.cmconf-cfg.shmconf.cmenu.cmerge_config.shnconf-cfg.shnconf.cnconf.gui.cnconf.hpreprocess.cqconf-cfg.shqconf.ccqconf.hstreamline_config.plsymbol.ctestsauto_submenuKconfig__init__.pyexpected_stdoutchoiceKconfig__init__.pyalldef_expected_configallmod_expected_configallno_expected_configallyes_expected_configoldask0_expected_stdoutoldask1_configoldask1_expected_stdoutchoice_value_with_m_depKconfig__init__.pyconfigexpected_configexpected_stdoutconftest.pyerr_recursive_depKconfig__init__.pyexpected_stderrerr_recursive_incKconfigKconfig.inc1Kconfig.inc2Kconfig.inc3__init__.pyexpected_stderrinter_choiceKconfig__init__.pydefconfigexpected_confignew_choice_with_depKconfig__init__.pyconfigexpected_stdoutno_write_if_dep_unmetKconfig__init__.pyconfigexpected_configpreprocessbuiltin_funcKconfig__init__.pyexpected_stderrexpected_stdoutcircular_expansionKconfig__init__.pyexpected_stderrescapeKconfig__init__.pyexpected_stderrvariableKconfig__init__.pyexpected_stderrpytest.inirand_nested_choiceKconfig__init__.pyexpected_stdout0expected_stdout1expected_stdout2util.czconf.lzconf.lex.czconf.tab.czconf.ykernel-docksymoopsREADMEld-version.shleaking_addresses.pllink-vmlinux.shmakelstmarkup_oops.plmkcompile_hmkmakefilemksysmapmkuboot.shmodMakefiledevicetable-offsets.cdevicetable-offsets.c.000i.ipa-clonesdevicetable-offsets.hdevicetable-offsets.selfconfig.hempty.cempty.c.000i.ipa-clonesfile2alias.cmk_elfconfigmk_elfconfig.cmodpostmodpost.cmodpost.hmodules.ordersumversion.cmodule-common.ldsmodules.ordernamespace.plobjdiffpackageMakefilebuilddebbuildtarmkdebianmkspecsnapcraft.templateparse-maintainers.plpatch-kernelpnmtologopnmtologo.cprofile2linkerlist.plprune-kernelrecordmcount.crecordmcount.hrecordmcount.plselinuxMakefileREADMEgenheadersMakefilegenheadersgenheaders.cmodules.orderinstall_policy.shmdpMakefiledbus_contextsmdpmdp.cmodules.ordermodules.ordersetlocalversionshow_deltasign-filesign-file.csortextablesortextable.csortextable.hspelling.txtsphinx-pre-installsplit-man.plstackdeltastackusagesubarch.includetags.shtest_fortify.shunifdefunifdef.cver_linuxxen-hypercalls.shxz_wrap.shsecurityKconfigKconfig.hardeningMakefileapparmorKconfigMakefilebpfMakefileintegrityKconfigMakefileevmKconfigMakefileimaKconfigMakefilekeysKconfigMakefileencrypted-keysMakefiletrusted-keysMakefileloadpinKconfigMakefileselinuxKconfigMakefileincludeclassmap.hinitial_sid_to_string.hsmackKconfigMakefiletomoyoKconfigMakefileyamaKconfigMakefilesoundKconfigMakefileac97KconfigMakefileaoaKconfigMakefilecodecsKconfigMakefilecoreMakefilefabricsKconfigMakefilesoundbusKconfigMakefilei2sbusMakefilearmKconfigMakefileatmelKconfigMakefilecoreKconfigMakefileossMakefileseqKconfigMakefileossMakefiledriversKconfigMakefilempu401Makefileopl3Makefileopl4MakefilepcspMakefilevxMakefilefirewireKconfigMakefilebebobMakefilediceMakefiledigi00xMakefilefirefaceMakefilefireworksMakefilemotuMakefileoxfwMakefiletascamMakefilehdaKconfigMakefileextMakefilei2cMakefileotherMakefileisaKconfigMakefilead1816aMakefilead1848Makefilecs423xMakefilees1688MakefilegalaxyMakefilegusMakefilemsndMakefileopti9xxMakefilesbMakefilewavefrontMakefilewssMakefilemipsKconfigMakefileossdmasoundKconfigMakefilepariscKconfigMakefilepciKconfigMakefileac97Makefileali5451MakefileasihpiMakefileau88x0Makefileaw2Makefileca0106Makefilecs46xxMakefilecs5535audioMakefilectxfiMakefileechoaudioMakefileemu10k1MakefilehdaKconfigMakefileice1712Makefilekorg1212MakefilelolaMakefilelx6464esMakefilemixartMakefilenm256MakefileoxygenMakefilepcxhrMakefileriptideMakefilerme9652MakefiletridentMakefilevx222MakefileymfpciMakefilepcmciaKconfigMakefilepdaudiocfMakefilevxMakefileppcKconfigMakefileshKconfigMakefilesocKconfigMakefileadiKconfigMakefileamdKconfigMakefileacpKconfigMakefilepsMakefileravenMakefilerenoirMakefilerplMakefilevangoghMakefileycMakefileatmelKconfigMakefileau1xKconfigMakefilebcmKconfigMakefilecirrusKconfigMakefilecodecsKconfigMakefiledwcKconfigMakefilefslKconfigMakefilegenericKconfigMakefilehisiliconKconfigMakefileimgKconfigMakefileintelKconfigMakefileatomMakefilesstMakefileavsMakefileboardsKconfigMakefileboardsKconfigMakefilecatptMakefilecommonMakefilekeembayMakefileskylakeMakefilejz4740KconfigMakefilekirkwoodKconfigMakefilemediatekKconfigMakefilecommonMakefilemt2701Makefilemt6797Makefilemt8173Makefilemt8183MakefilemesonKconfigMakefilemxsKconfigMakefilepxaKconfigMakefileqcomKconfigMakefileqdsp6MakefilerockchipKconfigMakefilesamsungKconfigMakefileshKconfigMakefilercarMakefilesofKconfigMakefileamdKconfigMakefileimxKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemt8186Makefilemt8195MakefilextensaKconfigMakefilespearKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefiletxx9KconfigMakefileuniphierKconfigMakefileux500KconfigMakefilexilinxKconfigMakefilextensaKconfigMakefilesparcKconfigMakefilespiKconfigMakefilesynthKconfigMakefileemuxMakefileusb6fireMakefileKconfigMakefilebcd2000MakefilecaiaqMakefilehifaceMakefileline6KconfigMakefilemiscMakefileusx2yMakefilevirtioKconfigMakefilex86KconfigMakefilexenKconfigMakefiletoolsMakefileaccountingMakefilearchx86intel_sdsiMakefilebpfMakefilebpftoolDocumentationMakefileMakefileresolve_btfidsMakefilerunqslowerMakefilebuildMakefileMakefile.buildMakefile.featureMakefile.includefeatureMakefiletestsexMakefilecgroupMakefilefirewireMakefilegpioMakefilehvMakefileiioMakefileincludetoolsbe_byteshift.hle_byteshift.hio_uringMakefilekvmkvm_statMakefilelaptopdslmMakefilefreefallMakefileledsMakefilelibapiMakefilebpfMakefilelockdepMakefileperfDocumentationMakefileMakefilesubcmdMakefiletraceeventDocumentationMakefileMakefilepluginsMakefileobjtoolMakefilepciMakefilepcmciaMakefileperfDocumentationMakefileMakefileMakefile.configMakefile.perfarcharmMakefilearm64MakefilecskyMakefilemipsMakefilepowerpcMakefiles390MakefileshMakefilesparcMakefilex86MakefilextensaMakefilescriptsperlPerf-Trace-UtilMakefile.PLpoweracpiMakefileMakefile.configMakefile.rulestoolsacpidbgMakefileacpidumpMakefileecMakefilecpupowerMakefilebenchMakefiledebugi386MakefilekernelMakefilex86_64Makefilepm-graphMakefilex86intel-speed-selectMakefileturbostatMakefilex86_energy_perf_policyMakefilescriptsMakefile.archMakefile.includespiMakefiletestingnvdimmMakefileradix-treeMakefilescatterlistMakefileselftestsMakefileandroidMakefileionMakefilebpfMakefileMakefile.docsbpf_testmodMakefilebreakpointsMakefilecapabilitiesMakefilecgroupMakefilecoreMakefilecpu-hotplugMakefilecpufreqMakefiledamonMakefiledriversnetbondingMakefileteamMakefileefivarfsMakefileexecMakefilefilesystemsMakefilefirmwareMakefilefpuMakefileftraceMakefilefutexMakefilefunctionalMakefilegpioMakefileia64Makefileintel_pstateMakefileipcMakefilekcmpMakefilekexecMakefilekmodMakefilekvmMakefilelibMakefilelivepatchMakefilelockingMakefilemedia_testsMakefilemembarrierMakefilememfdMakefilememory-hotplugMakefilemmMakefilemountMakefilemqueueMakefilenetMakefileforwardingMakefilemptcpMakefilenetfilterMakefilensfsMakefilepowerpcMakefilealignmentMakefilebenchmarksMakefilecache_shapeMakefilecopyloopsMakefiledscrMakefileeehMakefilemathMakefilemceMakefilemmMakefilepapr_attributesMakefilepmuMakefileebbMakefilesampling_testsMakefileprimitivesMakefileptraceMakefilesignalMakefilestringloopsMakefileswitch_endianMakefilesyscallsMakefiletmMakefilevphnMakefileprctlMakefileprocMakefilepstoreMakefileptpMakefileptraceMakefilercutortureMakefileformalsrcu-cbmcMakefiletestsstore_bufferingMakefilerseqMakefilertcMakefileseccompMakefilesgxMakefilesigaltstackMakefilesizeMakefilesparc64MakefiledriversMakefilespliceMakefilestatic_keysMakefilesyncMakefilesysctlMakefiletc-testingMakefiletdxMakefiletimensMakefiletimersMakefiletpm2MakefileueventMakefileuserMakefilevDSOMakefilewatchdogMakefilex86MakefilezramMakefilevsockMakefilethermaltmonMakefileusbMakefileffs-aio-examplemultibuffhost_appMakefilesimplehost_appMakefileusbipMakefile.amlibsrcMakefile.amsrcMakefile.amvirtioMakefileringtestMakefilevhost_testMakefilevirtio-traceMakefilevmMakefilewmiMakefileusrKconfigMakefilevirtMakefilekvmKconfigMakefile.kvmlibKconfigMakefilevmlinux.hvmlinux.id/usr/src/kernels//usr/src/kernels/4.18.0-552.el8.ppc64le//usr/src/kernels/4.18.0-552.el8.ppc64le/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/alpha//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/alpha/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/alpha/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/alpha/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/alpha/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/alpha/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/alpha/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/plat-eznps//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/plat-sim//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/boot/bootp//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/firmware//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-actions//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-alpine//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-artpec//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-at91//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-axxia//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-bcm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-berlin//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-davinci//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-dove//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-efm32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-exynos//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-gemini//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-highbank//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-hisi//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-imx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-integrator//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-keystone//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-meson//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-mmp//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-moxart//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-mxs//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-netx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-npcm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-nspire//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-omap1//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-omap2//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-prima2//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-pxa//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-realview//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-rpc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-spear//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-sti//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-stm32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-tango//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-u300//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-ux500//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-versatile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-zx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mach-zynq//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/net//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/nwfpe//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/plat-iop//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/plat-omap//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/plat-orion//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/plat-pxa//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/plat-samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/plat-versatile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/probes//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/vfp//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm/xen//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/hyperv//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/net//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/arm64/xen//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/c6x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/c6x/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/c6x/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/c6x/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/c6x/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/c6x/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/c6x/platforms//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/h8300//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/h8300/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/h8300/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/h8300/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/h8300/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/h8300/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/hexagon//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/hexagon/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/hexagon/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/hexagon/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/dig//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/hp//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/hp/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/hp/sim//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/sn//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/sn/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/uv//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/68000//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/amiga//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/apollo//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/atari//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/bvme6000//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/coldfire//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/fpsp040//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/hp300//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/mac//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/mvme147//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/mvme16x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/q40//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/sun3//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/sun3x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/microblaze/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/alchemy//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/alchemy/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/ar7//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/ath25//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/ath79//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/bcm47xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/bcm63xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/bmips//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/boot/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/cobalt//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/dec//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/dec/prom//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/emma//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/emma/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/emma/markeins//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/fw//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/fw/arc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/fw/cfe//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/fw/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/fw/sni//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/generic//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/jazz//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/jz4740//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/lantiq//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/lasat//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/lasat/image//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson32/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson64/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/mti-malta//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/net//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/netlogic//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/netlogic/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/paravirt//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pic32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pic32/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pistachio//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pnx833x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/power//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/ralink//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/rb532//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sibyte//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sibyte/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/sni//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/txx9//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/txx9/generic//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/vr41xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nds32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nds32/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nds32/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nds32/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nds32/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nds32/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nios2//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nios2/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nios2/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nios2/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nios2/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/nios2/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/openrisc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/openrisc/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/openrisc/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/openrisc/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/openrisc/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/parisc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/parisc/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/parisc/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/parisc/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/parisc/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/parisc/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/parisc/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/asm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/asm/book3s//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/asm/book3s/32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/asm/book3s/64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/asm/nohash//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/asm/nohash/32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/asm/nohash/64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/generated//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/generated/asm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/generated/uapi//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/generated/uapi/asm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/uapi//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/include/uapi/asm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/net//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/purgatory//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/sysdev//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/powerpc/xmon//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/riscv//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/riscv/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/riscv/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/riscv/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/appldata//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/hypfs//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/net//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/numa//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/purgatory//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/scripts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/s390/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/boot/romimage//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/cchips//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/drivers//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/drivers/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/drivers/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/lib64//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sh/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/net//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/power//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/prom//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/sparc/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/um//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/um/drivers//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/um/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/um/kernel/skas//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/um/os-Linux//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/um/scripts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/unicore32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/unicore32/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/unicore32/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/unicore32/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/unicore32/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/boot/compressed//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/coco//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/coco/tdx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/entry//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/entry/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/events//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/events/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/events/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/hyperv//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/ia32//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/apic//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/mm/pat//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/net//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/atom//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/efi//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/geode//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/iris//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/olpc//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/scx200//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/sfi//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/platform/uv//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/power//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/purgatory//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/ras//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/realmode//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/realmode/rm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/um//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/um/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/video//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/x86/xen//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/oprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/platforms//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-552.el8.ppc64le/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-552.el8.ppc64le/block//usr/src/kernels/4.18.0-552.el8.ppc64le/block/partitions//usr/src/kernels/4.18.0-552.el8.ppc64le/certs//usr/src/kernels/4.18.0-552.el8.ppc64le/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/crypto/asymmetric_keys//usr/src/kernels/4.18.0-552.el8.ppc64le/crypto/async_tx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/accessibility//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/accessibility/braille//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/acpi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/acpi/acpica//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/acpi/apei//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/acpi/arm64//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/acpi/dptf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/acpi/nfit//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/acpi/numa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/acpi/pmic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/amba//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/android//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ata//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/atm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/auxdisplay//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/base//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/base/firmware_loader//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/base/power//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/base/regmap//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/base/test//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/bcma//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/block//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/block/aoe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/block/drbd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/block/mtip32xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/block/paride//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/block/rsxx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/block/xen-blkback//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/block/zram//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/bluetooth//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/bus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/bus/mhi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/bus/mhi/host//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/cdrom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/agp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/hw_random//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/ipmi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/mwave//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/pcmcia//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/tpm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/char/xillybus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/actions//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/at91//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/axis//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/axs10x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/bcm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/berlin//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/davinci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/h8300//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/hisilicon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/imgtec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/imx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/ingenic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/keystone//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/loongson1//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/meson//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/microchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/mmp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/mvebu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/mxs//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/nxp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/pistachio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/pxa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/renesas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/sirf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/socfpga//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/spear//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/sprd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/st//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/sunxi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/uniphier//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/ux500//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/versatile//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/zte//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clk/zynq//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/clocksource//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/connector//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/counter//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/cpufreq//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/cpuidle//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/cpuidle/governors//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/amcc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/axis//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/bcm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/caam//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/cavium//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/ccp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/ccree//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/chelsio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/marvell//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/nx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/qce//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/stm32//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/ux500//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/virtio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/crypto/vmx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dax//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dax/hmem//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dax/pmem//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dca//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/devfreq//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/devfreq/event//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma-buf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/bestcomm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/dw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/hsu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/idxd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/ioat//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/ipu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/ptdma//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/sh//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/dma/xilinx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/edac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/eisa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/extcon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firewire//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/broadcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/cirrus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/efi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/efi/test//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/google//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/meson//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/psci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/smccc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/firmware/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/fmc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/fpga//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/fsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/display//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/host1x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/gpu/vga//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hid/surface-hid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hid/usbhid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hsi/clients//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hsi/controllers//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hv//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hwmon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hwspinlock//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hwtracing//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/hwtracing/stm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/i2c/algos//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/i2c/busses//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/i2c/muxes//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ide//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/idle//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/accel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/adc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/afe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/amplifiers//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/buffer//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/chemical//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/common//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/counter//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/dac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/dummy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/frequency//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/gyro//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/health//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/humidity//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/imu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/light//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/magnetometer//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/multiplexer//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/orientation//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/potentiometer//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/potentiostat//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/pressure//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/proximity//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/resolver//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/temperature//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/test//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iio/trigger//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/core//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/sw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/ulp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/gameport//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/joystick//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/keyboard//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/misc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/mouse//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/rmi4//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/serio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/tablet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/input/touchscreen//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iommu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iommu/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iommu/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/iommu/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ipack//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ipack/carriers//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ipack/devices//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/irqchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/capi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/divert//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/gigaset//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/hardware//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/hisax//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/hysdn//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/i4l//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/isdn/mISDN//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/leds//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/leds/trigger//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/lightnvm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/macintosh//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/macintosh/ams//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mailbox//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mcb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/md//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/md/bcache//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/md/persistent-data//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/cec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/common//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/common/b2c2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/common/saa7146//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/common/siano//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/dvb-core//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/firewire//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/mmc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/mmc/siano//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/cx18//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/cx88//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/mantis//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/meye//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/ngene//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/pt1//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/pt3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/tw68//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/am437x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/atmel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/cadence//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/coda//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/davinci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/meson//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/omap//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/sti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/stm32//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/vimc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/vivid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/radio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/radio/si470x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/radio/si4713//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/rc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/spi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/tuners//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/airspy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/as102//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/au0828//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/go7007//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/gspca//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/pwc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/s2255//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/siano//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/uvc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/media/v4l2-core//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/memory/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/memory/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/memstick//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/memstick/core//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/memstick/host//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/message//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/message/fusion//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mfd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/c2port//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/cardreader//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/cb710//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/cxl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/echo//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/eeprom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/genwqe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/ibmasm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/lkdtm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mei//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mic/bus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mic/card//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mic/host//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mic/scif//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/mic/vop//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/ocxl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/ti-st//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mmc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mmc/core//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mmc/host//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/chips//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/devices//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/lpddr//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/maps//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/nand//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/parsers//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/tests//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mtd/ubi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/mux//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/appletalk//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/arcnet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/bonding//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/caif//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/c_can//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/cc770//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/m_can//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/mscan//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/rcar//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/sja1000//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/softing//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/spi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/dsa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/dsa/b53//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/google//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/via//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/fddi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/fjes//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/hamradio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/hippi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/hyperv//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ieee802154//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ipvlan//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/netdevsim//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/pcs//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/phy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/plip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/ppp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/slip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/team//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/thunderbolt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/vmxnet3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wan//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wan/lmc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wimax//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/st//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/net/xen-netback//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/fdp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/microread//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/pn533//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/pn544//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/st-nci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nfc/st95hf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ntb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ntb/hw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ntb/test//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nubus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nvdimm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nvme//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nvme/host//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nvme/target//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/nvmem//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/of//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/of/unittest-data//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/opp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/parisc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/parport//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pci/controller//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pci/endpoint//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pci/hotplug//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pci/pcie//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pci/switch//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pcmcia//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/perf/hisilicon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/allwinner//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/amlogic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/broadcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/hisilicon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/lantiq//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/marvell//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/motorola//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/qualcomm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/ralink//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/renesas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/st//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/phy/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/actions//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/meson//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/spear//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pinctrl/zte//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/chrome//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/goldfish//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/mellanox//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/mips//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/olpc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/amd/pmf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pnp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pnp/isapnp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/power//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/power/avs//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/power/reset//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/power/supply//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/powercap//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pps//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pps/clients//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pps/generators//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ps3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ptp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/pwm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/rapidio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/rapidio/devices//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/rapidio/switches//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ras//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/regulator//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/remoteproc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/reset//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/reset/hisilicon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/reset/sti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/reset/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/rpmsg//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/rtc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/s390//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/s390/block//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/s390/char//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/s390/cio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/s390/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/s390/net//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/s390/scsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/s390/virtio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sbus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sbus/char//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/aacraid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/bfa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/csiostor//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/device_handler//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/esas2r//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/fcoe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/fnic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/isci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/libfc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/libsas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/lpfc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/megaraid//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/mvsas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/pm8001//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/qedf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/qedi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/snic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/scsi/ufs//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sfi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sh//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sh/clk//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sh/intc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sh/maple//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sh/superhyway//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/siox//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/slimbus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/sn//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/actions//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/amlogic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/atmel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/bcm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/dove//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/fsl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/fujitsu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/gemini//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/imx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/lantiq//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/renesas//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/sunxi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/ux500//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/versatile//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/xilinx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soc/zte//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/soundwire//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/spi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/spmi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/ssb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/android//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/android/ion//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/board//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/comedi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/dgnc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fbtft//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/fwserial//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/gdm724x//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/goldfish//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/greybus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/accel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/adc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/addac//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/meter//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/ks7010//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media/imx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media/imx074//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/media/zoran//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/most//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/most/cdev//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/most/dim2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/most/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/most/net//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/most/sound//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/most/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/most/video//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/netlogic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/nvec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/octeon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/pi433//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtl8712//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/rts5208//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/skein//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/sm750fb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/speakup//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/unisys//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/vc04_services//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/vme//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/vme/devices//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/vt6655//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/vt6656//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/wilc1000//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/staging/xgifb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/target//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/target/iscsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/target/loopback//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/target/sbp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/target/tcm_fc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tee//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tee/optee//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal/broadcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal/st//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/thunderbolt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty/hvc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty/ipwireless//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty/serdev//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty/serial//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty/serial/8250//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/tty/vt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/uio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/atm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/c67x00//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/chipidea//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/class//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/common//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/core//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/dwc2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/dwc3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/early//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/gadget//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/gadget/function//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/host//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/host/whci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/image//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/isp1760//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/misc//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/mon//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/mtu3//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/musb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/phy//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/roles//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/serial//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/storage//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/typec//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/typec/mux//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/usbip//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/usb/wusbcore//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/uwb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/uwb/i1480//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vdpa//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vfio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vfio/mdev//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vfio/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vfio/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vhost//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/backlight//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/console//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/core//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/fbdev/via//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/video/logo//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/virt//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/virt/coco//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/virt/vboxguest//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/virtio//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/visorbus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vlynq//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vme//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vme/boards//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/vme/bridges//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/w1//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/w1/masters//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/w1/slaves//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/watchdog//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/xen//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/xen/events//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/xen/xenbus//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/xen/xenfs//usr/src/kernels/4.18.0-552.el8.ppc64le/drivers/zorro//usr/src/kernels/4.18.0-552.el8.ppc64le/firmware//usr/src/kernels/4.18.0-552.el8.ppc64le/fs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/9p//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/adfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/affs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/afs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/autofs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/befs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/bfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/btrfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/cachefiles//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ceph//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/cifs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/coda//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/configfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/cramfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/debugfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/devpts//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/dlm//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ecryptfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/efivarfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/efs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/exportfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ext2//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ext4//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/f2fs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/fat//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/freevxfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/fscache//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/fuse//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/gfs2//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/hfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/hfsplus//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/hostfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/hpfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/hugetlbfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/iomap//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/isofs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/jbd2//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/jffs2//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/jfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/kernfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/lockd//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/minix//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/nfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/nfs/blocklayout//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/nfs/filelayout//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/nfs_common//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/nfsd//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/nilfs2//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/nls//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/notify//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/notify/dnotify//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/notify/fanotify//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/notify/inotify//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ntfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ocfs2//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ocfs2/cluster//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ocfs2/dlm//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/omfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/openpromfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/orangefs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/overlayfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/proc//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/pstore//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/qnx4//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/qnx6//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/quota//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ramfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/reiserfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/romfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/squashfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/sysfs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/sysv//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/tracefs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ubifs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/udf//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/ufs//usr/src/kernels/4.18.0-552.el8.ppc64le/fs/xfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include//usr/src/kernels/4.18.0-552.el8.ppc64le/include/acpi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/acpi/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/include/asm-generic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/asm-generic/bitops//usr/src/kernels/4.18.0-552.el8.ppc64le/include/asm-generic/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/include/clocksource//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/8139too//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/842//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ac97//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/advise//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/alim7101//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/allow//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/allow/dev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/altera//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/aperture//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/aquantia//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/cpu/probe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/dma/addr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/enable//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/enable/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/enable/split//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/devmem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/dma/map//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/elf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/fast//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/force//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/fortify//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/gcov//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/kexec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/mem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/memremap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/memremap/compat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/non//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/phys//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/phys/to//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/pmem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/pte//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/sg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/tick//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/walk//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/has/zone//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/have//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/have/nmi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/hibernation//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/keep//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/may//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/may/have//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/might//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/might/have//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/mmap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/select//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/select/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/sparsemem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/supports//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/supports/debug//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/supports/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/supports/numa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/suspend//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/suspend/nonzero//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/use//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/use/builtin//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/uses//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/uses/high//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/compat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/ipc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/ipc/parse//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/irqs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/irqs/off//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/irqs/off/activate//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/old//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/weak//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arch/weak/release//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arm/gic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/arm/gic/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/associative//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/asymmetric//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/asymmetric/key//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/asymmetric/public//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/async//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/async/raid6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/async/tx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ata//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ata/verbose//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/atm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/atomic64//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/audit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/autofs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/autofs4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/auxiliary//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/backlight//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/backlight/class//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/backlight/lcd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/balloon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/base//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcm/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcm7xxx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcm87xx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcma/driver//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcma/host//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bcma/host/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/be2net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bfq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bfq/group//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/big//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/binary//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/binfmt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bitfield//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bitfield/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bits//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bits/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/cgroup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/debug//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/dev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/dev/dm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/dev/io//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/dev/loop//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/dev/null//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/dev/ram//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/mq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/scsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/blk/wbt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/block//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bnx2x//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bnxt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bnxt/flower//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootparam//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootparam/hung//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bootx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bpf/jit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bpf/jit/always//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bpf/jit/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bpf/stream//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bpf/unpriv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/branch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/branch/profile//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bridge//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bridge/ebt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bridge/igmp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bridge/nf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bridge/vlan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/broadcom//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bsd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bsd/process//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bsd/process/acct//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bt/bnep//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bt/hciuart//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bt/mrvl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bt/rfcomm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bug//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bug/on//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/bug/on/data//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/build//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/buildtime//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/buildtime/extable//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/8dev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/c/can//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/calc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/cc770//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/ems//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/esd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/kvaser//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/peak//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/plx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/can/sja1000//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/capi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cavium//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cb710//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cb710/debug//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/can//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/has//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/has/kasan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/has/sancov//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/has/working//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/is//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/optimize//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cc/optimize/for//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cdrom//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cec/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ceph//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ceph/fs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ceph/fs/security//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ceph/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ceph/lib/use//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cgroup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cgroup/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/charger//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/check//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/checkpoint//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/chelsio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/chelsio/inline//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/chelsio/tls//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/chr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/chr/dev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cicada//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cifs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cifs/allow//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cifs/dfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cifs/smb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cifs/weak//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/clang//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/clkbld//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/clone//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cls//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cls/u32//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/clz//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cmdline//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cmdline/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/compat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/compat/32bit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/compat/binfmt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/compat/old//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/configfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/console//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/console/loglevel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/context//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/context/switch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/contig//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/core//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/core/dump//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/core/dump/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cortina//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu/freq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu/freq/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu/idle//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cpu/little//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cramfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crash//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crc/itu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crc32//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cross//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cross/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/ansi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/blowfish//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/cast//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/dev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/dev/nx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/dev/nx/compress//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/dev/vmx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/drbg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/fips//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/hash//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/michael//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/rng//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/twofish//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/user//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/crypto/user/api//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cxl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cxl/afu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cxl/afu/driver//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/cypress//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/damon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/davicom//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dax//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dcache//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dcache/word//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/de//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/debug//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/debug/info//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/debug/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/debug/section//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/decompress//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default/fq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default/hung//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default/hung/task//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default/mmap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default/mmap/min//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default/security//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/default/tcp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/detect//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/detect/hung//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dev/dax//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dev/dax/pmem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/device//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/devtmpfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dlci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dlm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dm/bio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dm/cache//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dm/log//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dm/multipath//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dm/persistent//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dm/thin//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dma/engine//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dma/ops//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dma/shared//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dns//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dp83640//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dp83822//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dp83848//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dp83867//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dp83tc811//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/amdgpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/cirrus//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/display//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/display/dp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/dp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/dp/aux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/export//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/export/for//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/fbdev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/gem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/kms//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/kunit/test//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/load//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/load/edid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/nouveau//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/panel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/radeon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/ttm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/virtio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/drm/vram//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dst//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dummy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dummy/console//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/au8522//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/av7110//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/b2c2//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/budget//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/dummy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/dynamic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/firedtv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/ttusb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/tuner//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dw/dmac//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dynamic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/early//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/edac//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/edac/atomic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/edac/legacy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/eeprom//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/efi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/elf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/enable//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/enable/must//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/enclosure//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/encrypted//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/energy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/epapr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ethtool//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/event//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/evm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/evm/attr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/exclusive//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/exclusive/system//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/exportfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/exportfs/block//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ext4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ext4/fs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ext4/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ext4/use//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ext4/use/for//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/extra//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fair//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fair/group//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fanotify//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fanotify/access//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fat/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fat/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb/cfb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb/deferred//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb/ibm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb/matrox//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb/mode//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb/nvidia//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb/radeon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fb/sys//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/file//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fips//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fips/signature//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/firewire//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fixed//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/font//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/force//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/force/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fortify//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/frame//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/framebuffer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/framebuffer/console//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fs/dax//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fs/posix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fscache//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ftrace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ftrace/mcount//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/function//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/function/graph//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fuse//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fusion//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fusion/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/futex//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fw/loader//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/fw/loader/user//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gact//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gcc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/clockevents//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/cmos//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/irq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/irq/show//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/isa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/msi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/smp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/smp/idle//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/strncpy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/strnlen//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/generic/time//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/genwqe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/genwqe/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/genwqe/platform/error//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gfs2//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gfs2/fs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gigaset//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gpiolib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/grace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/gro//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hangcheck//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hardened//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hardened/usercopy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hardirqs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hardirqs/sw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hardlockup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/has//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/has/ioport//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hash//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hash/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/arch/jump//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/arch/mmap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/arch/soft//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/arch/transparent//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/bootmem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/bootmem/info//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/context//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/debug//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/dynamic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ebpf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/efficient//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/fast//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ftrace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/function//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/function/graph//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/gcc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/hardened//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/hardlockup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/hw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ima//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ioremap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/irq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/irq/time//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/kprobes//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/kprobes/on//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/kvm/irq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/kvm/vcpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/kvm/vcpu/async//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ld//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ld/dead//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ld/dead/code//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/ld/dead/code/data//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/memoryless//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/mod//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/mod/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/nmi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/pcspkr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/perf/events//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/perf/user//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/regs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/regs/and//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/reliable//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/setup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/setup/per//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/syscall//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/virt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/virt/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hdlc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/headers//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hid/battery//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hid/logitech//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hid/picolcd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/high//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/high/res//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/16//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/avm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/bkm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/fritz//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/hfc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/no//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hisax/sct//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hist//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hmm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hotplug//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hotplug/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hotplug/pci/rpa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hsa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hsa/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hugetlb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hugetlb/page//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hugetlb/page/size//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hv/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hvc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hw/random//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hwlat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hwmon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hwpoison//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hysdn//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/hz//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i2c/designware//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i2c/diolan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i2c/helper//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i2c/mux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i2c/parport//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i2c/pca//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i2c/tiny//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i40e//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i6300esb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/i8253//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ibm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ice//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/icplus//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/idle//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/idle/page//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ieee802154//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/igb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/illegal//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/illegal/pointer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/appraise//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/default/hash//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/lsm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/measure//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/read//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/secure//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/secure/and//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/sig//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/trusted//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ima/write//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet/diag//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet/esp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet/mptcp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet/raw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet/sctp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet/tcp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet/udp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet/xfrm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet6/esp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inet6/xfrm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband/addr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband/on//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband/user//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/infiniband/virt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/init//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/init/env//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/init/env/arg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/initramfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inline//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inline/read//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inline/read/unlock//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inline/spin//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inline/spin/unlock//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inline/write//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inline/write/unlock//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/inotify//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input/ati//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input/ff//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input/keyspan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input/mousedev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/input/pwm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/integrity//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/integrity/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/integrity/trusted//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/intel/xway//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/interval//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/io//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/io/event//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/iommu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/iommu/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/iommu/default/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/iosched//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/advanced//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/fib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/fib/trie//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/mroute//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/multiple//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/nf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/nf/arp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/nf/match//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/nf/target//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/pimsm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/route//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/set//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/set/hash//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/set/list//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs/mh//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs/pe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs/proto//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs/sh//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip/vs/tab//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip6/nf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip6/nf/match//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ip6/nf/target//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipmi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipmi/device//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipmi/panic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipmi/plat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ippp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/mroute//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/multiple//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/route//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/router//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ipv6/sit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/imon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/jvc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/mce//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/nec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/pwm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/rc5//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/rc6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/sanyo//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/serial//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ir/sony//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/irq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/irq/all//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/irq/bypass//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/irq/forced//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isa/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/iscsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/iscsi/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/iscsi/target//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isdn//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isdn/capi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isdn/drv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isdn/ppp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/isdn/tty//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/iso9660//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ixgbe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ixgbevf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/jump//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/jump/label//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/jump/label/feature//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kallsyms//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kallsyms/base//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/karma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kdb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kdb/continue//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kdb/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kexec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/keyboard//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/keys//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kgdb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kgdb/honour//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kgdb/serial//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kprobe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kprobes//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kprobes/on//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kunit/all//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kunit/example//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kvm/book3s//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kvm/book3s/64//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/kvm/book3s/hv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/l2tp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lcd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lcd/class//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/led//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/led/trigger//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/leds//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/leds/brightness//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/leds/lp55xx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/leds/trigger//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/leds/trigger/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/linear//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/linear/ranges//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/liquidio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/list//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/list/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/load//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/load/ppc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lock//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lock/debugging//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lock/down//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lock/spin//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lock/spin/on//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lock/torture//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lockd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lockdep//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lockup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/log//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/log/buf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/log/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/log/cpu/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/logitech//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/logo//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/logo/linux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/loopback//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lsi/et1011c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lsm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lsm/mmap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lwtunnel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lxt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lz4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/lzo//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mac//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/macintosh//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/magic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/magic/sysrq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mantis//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/marvell//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/marvell/10g//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/max/raw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/maxlinear//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/md//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mdio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mdio/bcm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mdio/hisi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mdio/mscc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/altera//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/analog//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/analog/tv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/camera//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/cec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/common//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/digital//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/digital/tv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/radio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/subdrv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/tuner//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/media/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/megaraid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mem/soft//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memcg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memcpy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memcpy/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memfd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memstick//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memstick/jmicron//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memstick/realtek//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/memstick/tifm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/message//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/message/loglevel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mfd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mfd/sm501//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mhi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mhi/bus//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/micrel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/microchip//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/microchip/t1//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/microsemi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/minix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/misc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/misc/rtsx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/misdn//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx4/en//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5/cls//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5/core//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5/core/en//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5/en//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5/sf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5/sw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5/tc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlxsw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlxsw/core//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmc/block//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmc/realtek//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmc/ricoh//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmc/sdhci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmc/tifm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmc/via//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmu/gather//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmu/gather/page//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mmu/gather/table//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/module//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/module/force//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/module/rel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/module/sig//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/module/srcversion//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/modules//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/modules/tree//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/modules/use//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/modules/use/elf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mouse//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mouse/elan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mouse/ps2//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mouse/synaptics//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mpls//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mprofile//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mptcp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mptcp/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mq/iosched//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/msdos//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/msi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/msi/bitmap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mspro//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/cfi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/map//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/map/bank//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/of//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/powernv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/ubi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mutex//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mutex/spin//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/mutex/spin/on//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/n//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/national//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/dma/map//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/multiple//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/per//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/per/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/sg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/need/sg/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/act//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/act/tunnel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/cls//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/drop//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/ematch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/flow//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/ip//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/ipgre//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/key//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/l3//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/l3/master//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/mpls//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/packet//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/poll//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/ptp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/rx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/rx/busy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/sch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/sch/fq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/sock//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/tc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/tc/skb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/team//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/team/mode//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/udp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/net/vendor//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netconsole//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netdev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netdev/addr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netdev/addr/list//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netfilter/family//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netfilter/netlink//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netfilter/xt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netlink//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/network//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/network/phy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/netxen//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/new//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/conntrack//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/ct//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/ct/proto//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/defrag//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/dup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/flow//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/flow/table//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/log//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/nat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/reject//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/socket//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/tables//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nf/tproxy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfp/app//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfp/app/abm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/acl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/use//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/v3//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/v4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/v4/1//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfs/v4/security//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfsd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfsd/v2//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfsd/v3//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfsd/v4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nft//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nft/bridge//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nft/dup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nft/fib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nft/flow//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nft/fwd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nft/reject//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nls//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nls/codepage//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nls/iso8859//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nls/koi8//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nls/mac//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nmi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/no//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/no/hz//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nodes//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nonstatic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nop//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nouveau//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nouveau/debug//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/numa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/numa/balancing//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/numa/balancing/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/numa/keep//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nvdimm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nvme//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nvme/target//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/nvme/verbose//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ocxl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/of//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/of/early//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/of/reserved//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/oid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/old//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/opal//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/openvswitch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/osf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/osnoise//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/overlay//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/packet//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/page//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/panic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/panic/on//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/panic/on/oops//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/papr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/parport//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/parport/not//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/partition//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pata//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pata/of//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pci/msi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pci/msi/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pcie//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pcieaer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pcieaspm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pcspkr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/persistent//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pgtable//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/phys//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/phys/addr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/phys/addr/t//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/physical//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pkcs7//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pkcs7/message//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/plugin//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pm/generic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pm/generic/domains//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pm/sleep//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pm/sleep/smp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pm/sleep/smp/nonzero//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pmu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pnfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pnfs/file//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/posix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/posix/mqueue//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/power//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/power/reset//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/powernv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/powernv/op//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/64k//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/barrier//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/book3s//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/copro//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/disable//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/dt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/dt/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/emulated//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/have//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/have/pmu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/icp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/ics//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/indirect//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/mem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/msi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/of//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/of/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/p7//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/radix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/radix/mmu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/rtas//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/secure//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/secvar//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/smp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/smp/muxed//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/std//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/subpage//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/transactional//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/udbg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc/xive//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc64//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc64/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc64/supports//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppc64/supports/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ppp/sync//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pps//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pps/client//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/preempt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/prevent//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/prevent/firmware//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/prime//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/print//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/print/quota//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/print/stack//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/printk//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/printk/safe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/printk/safe/log//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/probe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/proc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/proc/page//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/proc/pid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/proc/vmcore//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pseries//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/psi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/psi/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pstore//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pstore/compress//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pstore/deflate//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ptp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ptp/1588//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/pwm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/qed//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/qfmt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/qsemi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/quota//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/quota/netlink//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/radio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/raid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/raid6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/raid6/pq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/random//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/random/trust//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rational//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rational/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/raw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rc/ati//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rcu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rcu/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rcu/need//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rcu/nocb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rcu/stall//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rdma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/realtek//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/reed//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/reed/solomon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/regmap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/renesas//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/resource//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/resource/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rfkill//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rh//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rh/kabi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rh/kabi/size//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rh/kabi/size/align//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rhel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ring//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ring/buffer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ring/buffer/allow//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rmi4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rmi4/2d//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rmi4/f03//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rpcsec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rpcsec/gss//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rt/group//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtas//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtas/error//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/drv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/hctosys//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/intf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rtc/mc146818//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/runtime//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/runtime/testing//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rwsem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rwsem/spin//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sata//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sata/ahci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sata/mobile//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scf/torture//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sched//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sched/omit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sched/omit/frame//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scom//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/bnx2//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/chelsio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/dh//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/fc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/ibmvfc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/ipr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/iscsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/proc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/qla//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/sas//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/sas/host//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/scan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/spi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/scsi/srp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sctp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sctp/cookie//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sctp/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sdio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/seccomp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/section//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/section/mismatch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/network//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/selinux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/selinux/avc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/security/writable//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/select//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/select/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sensors//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sensors/lis3//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sensors/ntc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/8250//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/8250/many//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/8250/nr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/8250/share//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/arc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/arc/nr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/core//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/of//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/uartlite//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serial/uartlite/nr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serio/altera//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/serio/arc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sfc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sfc/mcdi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sfc/siena//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sgetmask//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sgi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sgl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/shuffle//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/shuffle/page//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/simple//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/skb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/slab//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/slab/freelist//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/slip//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/slub//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/slub/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/slub/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sms//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sms/sdio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sms/siano//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sms/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/smsc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/ac97//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/ac97/power//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/atiixp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/cs46xx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/ctl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/dynamic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/emu10k1//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/es1968//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/firewire//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/hda//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/jack//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/jack/input//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/maestro3//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/mpu401//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/opl3//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/oxygen//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/pcm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/proc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/seq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/seq/midi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/sequencer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/synth//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/verbose//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/via82xx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/snd/vx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sock//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sock/cgroup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sock/validate//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/soft//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/softlockup//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/solaris//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/solaris/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sound//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sound/oss//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sound/oss/core//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/spapr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/spapr/tce//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sparse//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sparsemem//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/split//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/split/ptlock//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/squashfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/squashfs/decomp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/squashfs/file//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/squashfs/fragment//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ssb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/stack//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/stackinit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/stackinit/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/stackprotector//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/stacktrace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/stream//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/strict//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/strip//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/strip/asm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sun//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sunrpc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/suspend//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/symbolic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/syn//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sync//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/synclink//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sys//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sys/supports//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sysctl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sysctl/exception//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sysctl/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sysfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/system//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/system/blacklist//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/system/data//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/system/extra//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/system/extra/certificate//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/system/trusted//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/sysvipc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tablet//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tablet/serial//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tablet/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/target//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/task//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/task/delay//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/task/io//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tasks//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tasks/rcu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tasks/rude//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tasks/trace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tcg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tcg/tis//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tcm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tcp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tcp/cong//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/teranetics//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/test//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/test/list//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/textsearch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/default/gov//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/emergency//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/gov//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thermal/gov/step//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/thread//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tick//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tifm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tigon3//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/time//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/time/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/timerlat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tipc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tipc/media//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tls//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tmpfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tmpfs/posix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/torture//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/touchscreen//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/trace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/trace/irqflags//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tracer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tracer/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tracing//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/transparent//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/transparent/hugepage//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tree//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/trusted//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/ttpci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tun//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tun/vnet//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/tun/vnet/cross//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/typec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/typec/dp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/typec/mux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/udf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/uio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/uio/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/uio/pdrv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/unix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/unix98//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/unixware//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/uprobe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ali//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/announce//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/announce/new//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/arch/has//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/autosuspend//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ehci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ehci/hcd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ehci/hcd/ppc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ehci/root//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ezusb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/gspca//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/hsic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/hwa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/leds//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/net/cdc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/net/qmi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/net/rndis//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ohci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ohci/big//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ohci/big/endian//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ohci/hcd/ppc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ohci/hcd/ppc/of//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/ohci/little//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/pulse8//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/pwc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/pwc/input//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/rainshadow//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/role//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/digi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/mct//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/safe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/sierra//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/storage//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/storage/ene//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/uhci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/video//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/video/class//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/video/class/input//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/wusb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb/xhci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/usb4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/use//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/use/percpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/use/percpu/numa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/user//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/uts//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/uvc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/uwb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vdpa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vdpa/sim//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vfat//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vfio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vfio/iommu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vfio/iommu/spapr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vfio/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vfio/spapr//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vga//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vga/arb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vga/arb/max//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vhost//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vhost/cross//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vhost/cross/endian//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/au0828//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/cx18//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/cx231xx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/cx88//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/em28xx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/fb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/ir//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/pvrusb2//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/saa7134//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/saa7146//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/video/tm6000//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/videobuf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/videobuf/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/videobuf2//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/videobuf2/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/virt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/virt/cpu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/virtio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/virtio/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/virtio/vsockets//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vitesse//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vlan//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vlan/8021q//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vm/event//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vsockets//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vt//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vt/console//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vt/hw//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/vt/hw/console//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/want//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/want/dev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/watchdog//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/watchdog/handle//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/watchdog/open//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/x509//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/x509/certificate//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xarray//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xdp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xdp/sockets//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xfrm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xfrm/sub//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xfs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xfs/posix//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xilinx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xmon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xmon/default//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xmon/default/ro//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xor//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xz//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/xz/dec//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/yenta//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/yenta/ene//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/zlib//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/zone//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/zram//usr/src/kernels/4.18.0-552.el8.ppc64le/include/config/zsmalloc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/include/crypto/internal//usr/src/kernels/4.18.0-552.el8.ppc64le/include/drm-backport//usr/src/kernels/4.18.0-552.el8.ppc64le/include/drm-backport/linux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/drm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/drm/bridge//usr/src/kernels/4.18.0-552.el8.ppc64le/include/drm/display//usr/src/kernels/4.18.0-552.el8.ppc64le/include/drm/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/drm/ttm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/bus//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/clk//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/clock//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/display//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/iio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/input//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/leds//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/media//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/mfd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/mips//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/mux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/phy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/power//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/pwm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/regulator//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/reset//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/soc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/sound//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/spmi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/thermal//usr/src/kernels/4.18.0-552.el8.ppc64le/include/dt-bindings/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/generated//usr/src/kernels/4.18.0-552.el8.ppc64le/include/generated/uapi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/generated/uapi/linux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/keys//usr/src/kernels/4.18.0-552.el8.ppc64le/include/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/include/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/amba//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/avf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/bcma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/byteorder//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/can//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/can/dev//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/can/platform//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/ceph//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/clk//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/crush//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/decompress//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/dsa//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/extcon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/firmware//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/firmware/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/firmware/meson//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/fpga//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/fsl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/hsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/accel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/adc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/common//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/dac//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/frequency//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/gyro//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/imu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/iio/timer//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/input//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/irqchip//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/isdn//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/lockd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mailbox//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/abx500//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/arizona//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/da9052//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/da9055//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/da9062//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/da9063//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/da9150//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/syscon//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mlx4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mlx5//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mmc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mtd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/mux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/net/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/netfilter_arp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/pcs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/phy//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/phy/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/pinctrl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/platform_data//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/platform_data/media//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/platform_data/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/power//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/qed//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/raid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/regulator//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/remoteproc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/reset//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/rpmsg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/rtc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/sched//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/actions//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/dove//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/renesas//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/sunxi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soc/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/soundwire//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/spi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/ssb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/sunrpc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/ulpi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/unaligned//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/uwb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/linux/wimax//usr/src/kernels/4.18.0-552.el8.ppc64le/include/math-emu//usr/src/kernels/4.18.0-552.el8.ppc64le/include/media//usr/src/kernels/4.18.0-552.el8.ppc64le/include/media/davinci//usr/src/kernels/4.18.0-552.el8.ppc64le/include/media/drv-intf//usr/src/kernels/4.18.0-552.el8.ppc64le/include/media/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/include/media/tpg//usr/src/kernels/4.18.0-552.el8.ppc64le/include/memory//usr/src/kernels/4.18.0-552.el8.ppc64le/include/misc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/9p//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/bluetooth//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/caif//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/iucv//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/mana//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/netns//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/nfc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/phonet//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/sctp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/net/tc_act//usr/src/kernels/4.18.0-552.el8.ppc64le/include/pcmcia//usr/src/kernels/4.18.0-552.el8.ppc64le/include/ras//usr/src/kernels/4.18.0-552.el8.ppc64le/include/rdma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/scsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/scsi/fc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/arc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/at91//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/bcm2835//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/brcmstb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/fsl//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/fsl/qe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/imx//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/nps//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/sa1100//usr/src/kernels/4.18.0-552.el8.ppc64le/include/soc/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/include/sound//usr/src/kernels/4.18.0-552.el8.ppc64le/include/sound/ac97//usr/src/kernels/4.18.0-552.el8.ppc64le/include/sound/sof//usr/src/kernels/4.18.0-552.el8.ppc64le/include/sound/sof/ipc4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/target//usr/src/kernels/4.18.0-552.el8.ppc64le/include/target/iscsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/trace//usr/src/kernels/4.18.0-552.el8.ppc64le/include/trace/events//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/asm-generic//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/drm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/android//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/caif//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/can//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/cifs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/dvb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/hsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/iio//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/isdn//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/mmc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/raid//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/sched//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/spi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/linux/wimax//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/misc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/mtd//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/rdma//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/scsi//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/scsi/fc//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/sound//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/sound/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/sound/sof//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/video//usr/src/kernels/4.18.0-552.el8.ppc64le/include/uapi/xen//usr/src/kernels/4.18.0-552.el8.ppc64le/include/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/include/video//usr/src/kernels/4.18.0-552.el8.ppc64le/include/xen//usr/src/kernels/4.18.0-552.el8.ppc64le/include/xen/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/xen/interface//usr/src/kernels/4.18.0-552.el8.ppc64le/include/xen/interface/hvm//usr/src/kernels/4.18.0-552.el8.ppc64le/include/xen/interface/io//usr/src/kernels/4.18.0-552.el8.ppc64le/init//usr/src/kernels/4.18.0-552.el8.ppc64le/ipc//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/bpf/preload//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/cgroup//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/debug//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/debug/kdb//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/dma//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/events//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/gcov//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/irq//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/kcsan//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/livepatch//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/locking//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/power//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/printk//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/rcu//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/sched//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/time//usr/src/kernels/4.18.0-552.el8.ppc64le/kernel/trace//usr/src/kernels/4.18.0-552.el8.ppc64le/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/842//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/crypto//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/dim//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/fonts//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/kunit//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/livepatch//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/lz4//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/lzo//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/math//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/mpi//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/pldmfw//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/raid6//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/raid6/test//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/reed_solomon//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/vdso//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/xz//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/zlib_deflate//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/zlib_dfltcc//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/zlib_inflate//usr/src/kernels/4.18.0-552.el8.ppc64le/lib/zstd//usr/src/kernels/4.18.0-552.el8.ppc64le/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/mm/damon//usr/src/kernels/4.18.0-552.el8.ppc64le/mm/kasan//usr/src/kernels/4.18.0-552.el8.ppc64le/net//usr/src/kernels/4.18.0-552.el8.ppc64le/net/6lowpan//usr/src/kernels/4.18.0-552.el8.ppc64le/net/802//usr/src/kernels/4.18.0-552.el8.ppc64le/net/8021q//usr/src/kernels/4.18.0-552.el8.ppc64le/net/9p//usr/src/kernels/4.18.0-552.el8.ppc64le/net/appletalk//usr/src/kernels/4.18.0-552.el8.ppc64le/net/atm//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ax25//usr/src/kernels/4.18.0-552.el8.ppc64le/net/batman-adv//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bluetooth//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bluetooth/bnep//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bluetooth/cmtp//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bluetooth/hidp//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bpfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bridge//usr/src/kernels/4.18.0-552.el8.ppc64le/net/bridge/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/net/caif//usr/src/kernels/4.18.0-552.el8.ppc64le/net/can//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ceph//usr/src/kernels/4.18.0-552.el8.ppc64le/net/core//usr/src/kernels/4.18.0-552.el8.ppc64le/net/dcb//usr/src/kernels/4.18.0-552.el8.ppc64le/net/dccp//usr/src/kernels/4.18.0-552.el8.ppc64le/net/dccp/ccids//usr/src/kernels/4.18.0-552.el8.ppc64le/net/decnet//usr/src/kernels/4.18.0-552.el8.ppc64le/net/decnet/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/net/dns_resolver//usr/src/kernels/4.18.0-552.el8.ppc64le/net/dsa//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ethernet//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ethtool//usr/src/kernels/4.18.0-552.el8.ppc64le/net/hsr//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ieee802154//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ife//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ipv4//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ipv4/bpfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ipv4/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ipv6//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ipv6/ila//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ipv6/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/net/iucv//usr/src/kernels/4.18.0-552.el8.ppc64le/net/kcm//usr/src/kernels/4.18.0-552.el8.ppc64le/net/key//usr/src/kernels/4.18.0-552.el8.ppc64le/net/l2tp//usr/src/kernels/4.18.0-552.el8.ppc64le/net/l3mdev//usr/src/kernels/4.18.0-552.el8.ppc64le/net/lapb//usr/src/kernels/4.18.0-552.el8.ppc64le/net/llc//usr/src/kernels/4.18.0-552.el8.ppc64le/net/mac80211//usr/src/kernels/4.18.0-552.el8.ppc64le/net/mac802154//usr/src/kernels/4.18.0-552.el8.ppc64le/net/mpls//usr/src/kernels/4.18.0-552.el8.ppc64le/net/mptcp//usr/src/kernels/4.18.0-552.el8.ppc64le/net/ncsi//usr/src/kernels/4.18.0-552.el8.ppc64le/net/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/net/netfilter/ipset//usr/src/kernels/4.18.0-552.el8.ppc64le/net/netfilter/ipvs//usr/src/kernels/4.18.0-552.el8.ppc64le/net/netlabel//usr/src/kernels/4.18.0-552.el8.ppc64le/net/netlink//usr/src/kernels/4.18.0-552.el8.ppc64le/net/netrom//usr/src/kernels/4.18.0-552.el8.ppc64le/net/nfc//usr/src/kernels/4.18.0-552.el8.ppc64le/net/nfc/hci//usr/src/kernels/4.18.0-552.el8.ppc64le/net/nfc/nci//usr/src/kernels/4.18.0-552.el8.ppc64le/net/nsh//usr/src/kernels/4.18.0-552.el8.ppc64le/net/openvswitch//usr/src/kernels/4.18.0-552.el8.ppc64le/net/packet//usr/src/kernels/4.18.0-552.el8.ppc64le/net/phonet//usr/src/kernels/4.18.0-552.el8.ppc64le/net/psample//usr/src/kernels/4.18.0-552.el8.ppc64le/net/qrtr//usr/src/kernels/4.18.0-552.el8.ppc64le/net/rds//usr/src/kernels/4.18.0-552.el8.ppc64le/net/rfkill//usr/src/kernels/4.18.0-552.el8.ppc64le/net/rose//usr/src/kernels/4.18.0-552.el8.ppc64le/net/rxrpc//usr/src/kernels/4.18.0-552.el8.ppc64le/net/sched//usr/src/kernels/4.18.0-552.el8.ppc64le/net/sctp//usr/src/kernels/4.18.0-552.el8.ppc64le/net/smc//usr/src/kernels/4.18.0-552.el8.ppc64le/net/strparser//usr/src/kernels/4.18.0-552.el8.ppc64le/net/sunrpc//usr/src/kernels/4.18.0-552.el8.ppc64le/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-552.el8.ppc64le/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-552.el8.ppc64le/net/switchdev//usr/src/kernels/4.18.0-552.el8.ppc64le/net/tipc//usr/src/kernels/4.18.0-552.el8.ppc64le/net/tls//usr/src/kernels/4.18.0-552.el8.ppc64le/net/unix//usr/src/kernels/4.18.0-552.el8.ppc64le/net/vmw_vsock//usr/src/kernels/4.18.0-552.el8.ppc64le/net/wimax//usr/src/kernels/4.18.0-552.el8.ppc64le/net/wireless//usr/src/kernels/4.18.0-552.el8.ppc64le/net/x25//usr/src/kernels/4.18.0-552.el8.ppc64le/net/xdp//usr/src/kernels/4.18.0-552.el8.ppc64le/net/xfrm//usr/src/kernels/4.18.0-552.el8.ppc64le/samples//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/auxdisplay//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/configfs//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/connector//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/hidraw//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/hw_breakpoint//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/kdb//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/kfifo//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/kobject//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/kprobes//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/livepatch//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/mei//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/mic//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/mic/mpssd//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/nitro_enclaves//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/qmi//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/rpmsg//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/seccomp//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/timers//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/trace_events//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/trace_printk//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/uhid//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/v4l//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/vfio-mdev//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/vfs//usr/src/kernels/4.18.0-552.el8.ppc64le/samples/watchdog//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/basic//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/clang-tools//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/api//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/free//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/locks//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/misc//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/null//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/coccinelle/tests//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/dtc//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/dtc/libfdt//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/gcc-plugins//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/gdb//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/gdb/linux//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/genksyms//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/ksymoops//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/mod//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/package//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/selinux//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/selinux/genheaders//usr/src/kernels/4.18.0-552.el8.ppc64le/scripts/selinux/mdp//usr/src/kernels/4.18.0-552.el8.ppc64le/security//usr/src/kernels/4.18.0-552.el8.ppc64le/security/apparmor//usr/src/kernels/4.18.0-552.el8.ppc64le/security/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/security/integrity//usr/src/kernels/4.18.0-552.el8.ppc64le/security/integrity/evm//usr/src/kernels/4.18.0-552.el8.ppc64le/security/integrity/ima//usr/src/kernels/4.18.0-552.el8.ppc64le/security/keys//usr/src/kernels/4.18.0-552.el8.ppc64le/security/keys/encrypted-keys//usr/src/kernels/4.18.0-552.el8.ppc64le/security/keys/trusted-keys//usr/src/kernels/4.18.0-552.el8.ppc64le/security/loadpin//usr/src/kernels/4.18.0-552.el8.ppc64le/security/selinux//usr/src/kernels/4.18.0-552.el8.ppc64le/security/selinux/include//usr/src/kernels/4.18.0-552.el8.ppc64le/security/smack//usr/src/kernels/4.18.0-552.el8.ppc64le/security/tomoyo//usr/src/kernels/4.18.0-552.el8.ppc64le/security/yama//usr/src/kernels/4.18.0-552.el8.ppc64le/sound//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/ac97//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/aoa//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/aoa/codecs//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/aoa/core//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/aoa/fabrics//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/aoa/soundbus//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/atmel//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/core//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/core/oss//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/core/seq//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/core/seq/oss//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/drivers//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/drivers/mpu401//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/drivers/opl3//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/drivers/opl4//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/drivers/pcsp//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/drivers/vx//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire/bebob//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire/dice//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire/digi00x//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire/fireface//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire/fireworks//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire/motu//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire/oxfw//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/firewire/tascam//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/hda//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/hda/ext//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/i2c//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/i2c/other//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/ad1816a//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/ad1848//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/cs423x//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/es1688//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/galaxy//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/gus//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/msnd//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/opti9xx//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/sb//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/wavefront//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/isa/wss//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/mips//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/oss//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/oss/dmasound//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/parisc//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/ac97//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/ali5451//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/asihpi//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/au88x0//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/aw2//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/ca0106//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/cs46xx//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/cs5535audio//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/ctxfi//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/echoaudio//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/emu10k1//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/hda//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/ice1712//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/korg1212//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/lola//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/lx6464es//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/mixart//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/nm256//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/oxygen//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/pcxhr//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/riptide//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/rme9652//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/trident//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/vx222//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pci/ymfpci//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pcmcia//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/pcmcia/vx//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/ppc//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/sh//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/adi//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/amd/acp//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/amd/ps//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/amd/raven//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/amd/renoir//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/amd/rpl//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/amd/yc//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/atmel//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/au1x//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/bcm//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/cirrus//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/codecs//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/dwc//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/fsl//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/generic//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/hisilicon//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/img//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/atom//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/avs//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/boards//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/catpt//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/common//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/keembay//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/intel/skylake//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/jz4740//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/kirkwood//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/mediatek/common//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/meson//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/mxs//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/pxa//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/qcom//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/rockchip//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/samsung//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sh//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sh/rcar//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sof//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sof/amd//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sof/imx//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sof/intel//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/spear//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sprd//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sti//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/stm//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/sunxi//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/tegra//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/ti//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/txx9//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/uniphier//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/ux500//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/xilinx//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/soc/xtensa//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/sparc//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/spi//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/synth//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/synth/emux//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/usb/6fire//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/usb/bcd2000//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/usb/caiaq//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/usb/hiface//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/usb/line6//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/usb/misc//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/usb/usx2y//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/virtio//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/sound/xen//usr/src/kernels/4.18.0-552.el8.ppc64le/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/accounting//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/arch/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/bpf/bpftool//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/bpf/runqslower//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/build//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/build/feature//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/build/tests//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/build/tests/ex//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/cgroup//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/firewire//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/hv//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/iio//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/include//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/include/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/io_uring//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/laptop//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/laptop/dslm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/laptop/freefall//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/leds//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/api//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/lockdep//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/subcmd//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/traceevent//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/objtool//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/pci//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/pcmcia//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/Documentation//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/arm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/arm64//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/csky//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/mips//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/s390//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/sh//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/sparc//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/scripts//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/scripts/perl//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/acpi//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/acpi/tools//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/cpupower//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/cpupower/bench//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/cpupower/debug//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/pm-graph//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/x86/turbostat//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/scripts//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/spi//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/nvdimm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/radix-tree//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/scatterlist//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/android//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/core//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/damon//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/exec//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/futex//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/lib//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/locking//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/mount//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/net//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/proc//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/size//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/splice//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/sync//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/timens//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/timers//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/user//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/x86//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/selftests/zram//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/testing/vsock//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/thermal//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/thermal/tmon//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb/usbip//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/usb/usbip/src//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/virtio//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/virtio/ringtest//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/virtio/vhost_test//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/vm//usr/src/kernels/4.18.0-552.el8.ppc64le/tools/wmi//usr/src/kernels/4.18.0-552.el8.ppc64le/usr//usr/src/kernels/4.18.0-552.el8.ppc64le/virt//usr/src/kernels/4.18.0-552.el8.ppc64le/virt/kvm//usr/src/kernels/4.18.0-552.el8.ppc64le/virt/lib/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -funwind-tables -fstack-clash-protectioncpioxz3Tppc64le-redhat-linux-gnu                                   !  "# $ %&  ' ()directoryLinux make config build file, ASCII textASCII textmakefile script, ASCII textemptyOS/2 REXX batch file, ASCII textAlgol 68 source, ASCII textC source, ASCII textC source, UTF-8 Unicode textUTF-8 Unicode textOS/2 REXX batch file, UTF-8 Unicode textISO-8859 textPOSIX shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=bf1c2855a7a246804a77e908bf4bfa80fcad940c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=0f28bab5539811b166f3a8bdb6bdf97539fff8dc, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=c2613f5b3d2fa64229bf6e614da2cd528d30dcf8, strippedPython script, ASCII text executablePerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=3d372dc32d94c377fd6bed4047984323ae8a9773, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=4e929e374149b550e947d5d620eb670760972163, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=2941da5571d6ee9f41b87de46b544c20617d5f20, strippedC++ source, ASCII textexported SGML document, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=62feb2397d29b576d37b790cfb91875bcec0a0d2, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=e56e5966e3ded731b10f7ab95c3d0d49b22884f3, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=d536e5c472e7d93000e03ad2e4048cc69920ed1c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=8954cd90dd49fb6d70585f104c733a2fe00e92e2, strippedXML 1.0 document, ASCII textawk script, ASCII text executableassembler source, ASCII textELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=939acde5b53e7b05957b872066ac94c32daa98bc, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=f05b567c5c154dec5d631bc94ef7a347142c206c, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=a9bc64f638fb559f828b78af877c85928c1a5e54, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=f42a6a2962e020db4d2758c77ccdeca61d0db8ac, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=ae91ea38d42df8855cafcc24b253353b569a2f2a, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=1f0745208cb20b80ef6a31c238742d0b1b91f0c8, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=5501dda67194c4c7145d731840e5edfb071ca234, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=75549d3cea5e882c20548855a0f08319258b1d0f, strippedASCII text, with very long linesautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-8a10381497502e888e07da2222c052b4130cba669625c1542640dfd0110a83b17? 7zXZ !G] b2u jӫ`(y0 rA9ce&ԃ H".-`-߳O|rqt>Κu$q6Y3J_ڲ3fSM% u2e7Owoײ'aaQUruL/ph%)QvyH=6/6RT^mWHQ9s-М bq#Q ϧ::䉦!g  ~1AoϽ:g] "ǣkf,?&JLcB7nq*(UT[Y]w&?@1l-bDRrɻ'LQmۂcv\!Qm-Yi ӻ 賔< uu( vqJKcˡt<.2dՑ}c*3R?uœ`r Y\ q)@ۦ-I ȠFI]̛vˇ')ڠydm3ysE2)4u=^FPh:c hE.$/O3SHf·gr"yg}Җ6jJQC?V>v.(Z!2TC`eZMny^saO;12:E{cn`ŬaC*hs~OyMUcHj S_,(PiEv?x#kn}eGan: lxYP/"f3QxKZge*#[HIaFɺG,Jj̋͋_t}g8U=vs( D^cLaHr홙.'=:z&!lIS*(Qi1AMDGþ#9rih7̽Nl1-&j~u )|HNE>6(EWsp"Mlօjvm%uB(tc+W xke 2Ot֦PhOē5P,(Ӓ'_`~,ÁKf(jdN턴`>'-J9VC\I͇>OGhۡ)&Z+wb]>H_n'@K|jrޠeM-.N;&WH.yVuπhÍae:[j_m+Ցha\H 5f_ZWV<;$2tOm}n 2 J`x)_XF ,09)Dσ-muPVKbv^z7C߄' 2y ɒd-Yqm7KfV}A y!bom:N;;ln4W,5)'%G`P%Im US^Jq:`1  S#/ כ*䐱Y}̑B#B .7 kn t#RY'8!Ǭ^:1 |44+'̐uLţK9)`=\b2k2א;;En|,[.m; !, ٮ@e]z5INӟ_YF1vx!;a5 Wrk}U*D=@@ iثze0G(xowYUW/qܠYH*ж*zR⚾R.MbR'aCLŶ^7JE"UFĭ bwk& egM /jVC0t)Z\Xvhn2.EJjA kߨ:@>Y w hIN5f$u CdHog&^t^[楯M Vʣ[d|s(s`& I̝vox#.$jB oZЬL2.D]vq#'aEΚ%9>{,$&:V $TZ |w2k%>% P6*xF^q=湼Ί, PFVM1tRƁ&u[ 1eLnp>ONtktzA\G?Q8 U7Xvw݄}-wH5=c42]Qq?s9[_J\\C|k{(¬(:U ew򇁎ɗCy nQ9nL8ϔBX-0_ YQdh dNAF{]!|ޤP;HJF[Q G*dGퟙsYaWxy_]d/짏oZcirB#AfZX/%HhS޿{=ڒĐ< shՂgGAe+$ ~7+ =.aEHw]b |` TݞH?Mp ,:N'`î/vB7W':Q%gᑓm:m+t.G0HcneE߫Y*i眛A<J1v iZ'r1fbRQ,g/dw!sVTX-{"&RPHRd:)<::}4Lߑv[/=p7?rݸԄK=V7a`1+gfaWj!W-^+mk UWݞyJZ r~'0y|̬=.b za 㳥,d߸q.gDષVjd9> >/5ۑ~Mo,8v3 L(ԭŚM#ax#,~* ˨xC_q0ŵf@5 %ÕEw[v;9[+HWx 3ڬ3ץU+E(ރD=pc!s>?[6b6 cm \TQ>jݰeT':bIp#+'jD?Ÿ,c5v0UNgH"o9}_b&=JOzme\p#Tɹ4jKs^$>e]\eB;R-F8'C[ocZLJSVP/ dVhQ7sprcΕ\ߠgĬ_gjOMmED{ިM8aV,#[au&,!_}NmQW3 %DZ;z d\& ':MkpHkn36 !+=̞ JƸ~a'Û*G(tWն@5,cd✔z7&r[u76pKDڧU^^uBarCp< }DՁ46TJ'ͅ!(^tJA-˯ 9*znc$37aۙ0^ƣvҳ뉚ҷgCmK8t*MEzmJ5ڟatd dA}U k?[Jw88ΦO\>oýBg#`woOur;xӘ~ >5l1& pvr6|'Ng*o.7{6+Ǡ nPi%Ԇy7A$v u B?^CRi$Iy̕P,|;qjՊ! b7Αw!tS׆KXmA7$\*0onU׼\4dGHrldZ 3Nkh̯g` Vbz5d95&+=ۏ]ZdYN͖D6JΡ"3M%.;u'~AR*2Ln\$!xA}FzBE=ڜpȺd*v"6mޝ )/ѿ;CeNnID`rr#QHn{m]\f'*|t%Q12q)YEYYdmk!xd-;^7mJ0,/pͮ% ZR>}Bm!DȪ텄Ӈ^5zj@Cb99v\7 k`iO/hNe!gKŒˣ8twÚ؆,{QeCu89<ݱ #Q$y/Jcs5z?4 8E_U}}MH 0. :`v${xAecG%s78GrsIAͪN1F /19 KѝPɗ1oAa<[&7,#p8EHmTA !u_ҫ96DM{: !ʟhPZU*w^)Aƨ@ sE"bA~M:;-Bu#YsIy^Qǩ`Ua2a#k/ Q_T)V/\)ccG};6$̀dTolJ]GSk,ڌ6uRc wOʞѽ>^즑tm_4_-)c4N&A0 kNx9Bl:Mvӳ3mF5CpL+Qp8n=*073 C@Q2am o&'B֖hGU-l䲈 0ҙSr,w˃|EmA\*Os/&v=Su%t9;Wq.;?HN$VTtKY\M8KD͑2CD.~MIuޠ_jG_wcYWʱ Ύ%?6o_ޟ<B],4܏0*l y_4WIJ=[1_8{;z$x9z+>Q9IKj#R>fcy,{zY7}@}I{ ],[ojXz^JӒETI9{MډV "ЧLDP>FWo +sTE˕0%†E -Sxb8W-Z>a.ՈmG/> 2m]RWCxk=$j<^Ys{ў>YԶDQ!‰I#e,c{TO)J̵ G O)$Ƥ}Ӓ<& ۏ/Ԇb-9zQ9 o#{ې %Y 1xp2 +UH^c!QW3WjŮ{KzƧ=MJMČ휿jI*o7_ ]`3n>Q F]ҥttDIH9|O/3` ^wV2v+4^5:`sG0jఫq%W)ZrYN+-s$s2򞇐wS~~{.yYOh^єs؎uL쎈fj(^s.. ؕPɂUcΡ1Ml$?'KoI 5mfD8gT3y0 SRM0( tvœd.8xYk >׆bbJ)KXI|AK-cT_C%[ތWGcRةYwԿI9"Wշɳَ&$?|J]|3;ư6" nrUө&hޔ#K3ג d4#bd&+T+#QN,4̺j)Y ;DZD-ReBRpqG %n3fk|ķO]؛ 3_ja#یCUzT?Uuf~iGN2K ?nY6>H?e]+踖PFCvF ь|1[6Y*4R2}t/#E/O1<D#h0cVU_\ʈ,A,+$tq5={D(*`b1 YF: z"))M{2K%66GLa;W̽+^?9C4tcwzts㥵K<܋ XkL yfb ՆVŤk]zGU5Df&ؕAfRDbL8fC" #vy~Yڡ:~+ *b[)]'ËJܘ hz6ok[Eψ!g0 Dzui%_Z+L[Dxbk Sz~>p-޽t曹|[j3"cpI1Щ[,Dl_nS!qHBtFJ?k2QL\:Yt|K:naM^Xʬ O%0r%!B(UЍaP_Z憘Uuv0`*Ě2k18PҪ-KK`ޛ[u}HZ#dXAPU#+}Ǖ.zdrg]$z(軡@f4+Xч+No'Y? I߬vSNU..Onh/vKldI[ьU!go??*gQ:SfiݞQx  =bU\ M/_%}DC˲h5aKd[?v kN9VCUm)V֚yE0+UCLĩ2s ֵ4LJ0+f׼'uEϳ"Hl.뮽 vdb eSNE_RN pXi>,VR%MM"1r6&u ?^?ÞΤ5ͮ@:/Ѱ0|6u!5,\uxP0Ns!؃36wINrNMumyx^4lb9IZ!9`F[ %6QQ'chM<8 kTv25K9.нрСSK^rge ^po s˶u;^"0~AUم<8\@C'{w*|i:u`-ߥ\8^, ™Uʱ n 0+w|uF<6ȂAʐuZ2F/ ks[ Rg!-/{X3Pvh~acUhO_I|[*u)MpfcTeG ! ο򊈯|zo QpfkςS&qj]GNo]袢Aq,ܛGtS?ʰҨ^ғiR޵֟mYfJY'IXl[a.MU7\Z^{ u_2o -l(-5\o! AJ(/xU8 diDjR>ga%͏۔C(.R^gaq[e+3U2m!%Ѹz~=u诜^Ǯ` %MT"TfӠ *I_訡hvm3dv*X?n`R F#kٜE {2@4 |pz 2 Мa:6/seHʈt B#ocH"A){ PgGQ p Ĭimİ_ZPJq}l툸޴v8 =5b +/3)}c δEHܓɤx y'2wX$3p)xx|x1Em1|vTo [2"85ˆR1ѷY#,;547,rבrrGHQ$ys) gǥj%ΙlUm=[Y4/#dTKe;?b ׃yb):NL ɑ=KzDuv'skUE]ޝk9 rvuqH?uM),.eKӕgBtH7"m1Ѵ&(V<dz)eAy]ož}ʈCR*3f1Rְ/zqo AS'DD=Od n9(o\ }ezPo/ɔ$nl  U7T5|~*sT½ȁY כEKaD3k? >tv/8Ec"ْ#$waP*# ޷+Xۺ9 H8 {˒s&vYg]c&nilzX?A%D T1uO푥2Lzy;nn=5[%0v)@!H Q{EnAŲ! Ewmmh/ 8U>W`^ˀ0g;JQj;#We>C#Ƅ?-XuK^1cn8cj̰%K-di@ߩ~}Ws.߿j5ph Ziݓjظ,E& +W#:8w7_s ESU&"$t=\X]hnLmn~yՎsZQi{{2ז &OUZZ2r/uRpPmܔM"_InCkːD0qO-| }n?n2/4L0BڜpU /<&>#rW7T=BEhFke =tqZq#Q #ƛ]E9zH UNŨ![P@JMD#GmZS"O9r MtC8lp؆ ] >U?(c;p^q*<κd/dړ)7rΜGuPc4V!L\d ye%M@:hOgi>6") xMȀ^ jJ IϩA$-_fV{HFyILuzDHy:Ո+["|lq.,>Yw]A;%I"au bZ"%|"5!ۉGb,4H`!LZ75(uox( E>,B/VL'ɯ.EXRZRR4QnO]1Q2.`:ACfivμZR^!:'<_Roz ٧;_JPi%$<$$n M֙v _l,ͣ-[ݝںB:PYxG쮶V('CqnwMYd`Nưԧy9q֗Oy|=(>Sjks7;u~8Yf5zfXi6x!qt>ЃR ͝ VXyQ7<^T |&Ni)3j(N0&WP2iK+4[ Fv sHT㨨]:0KBch)P:L)BOLBHg;rFKou-_9i[ꓮd6h2?h댻 E"Rj# ա+%P4Ӄ4`{X(l:E.q kioGδX!bS[_pJ!0eGx@Opubf_(w]뢊8!Ј{mGƼ$5J d6َ{ qtQ8T:Lj[9CbGFxcQQXvmH}jkAflI}MAs̅31O ͳwp#v+n?~"xOH׻R$~BcCRziGRtL:沽uD jȂ &}=^x=ˈ X m UEgXiBu?BқߊW qy#_yҋd2a*={Z[Ȑ}2iLB~F4 YyGfa%d`TfVVw'$b>b"v['@M2Ͼ[&ץo7ک{G|71[((@?څm(?=H(Ҫfp{=MS4a'Mq1-W2|N"Ĵ1pb. dK7ѲmfTR`Ȼmm`\& mN& 1&sMT[ob9S"a 1IBBه'5x2И3.Y*XkK+Lb,eD*';~>QO0= 8 KJwK-:hW,bZji">V^Z,īr10$duR3˙9MNx'U eHJ]Ph|5 cTŏ}÷ UāFI,.ZMzTʆ#axʒ" e8Apk#I( B -45؞#9v1ǒ"8e/QI#OYv1E!QB)ȅlMA0;ç[Qu 1mY֧Dݾ*m/t~ h:#Fia/iss:̤$w>ĬltQׅG V"i?ZxJKB*UEgyszR0ё}RKx9@p"˗{Vib{͡1ޞ|B+(Ve;ٔqfnE}b]}[ő@â_% e[/JzpO8LGRF3O&h5z6O1Ԩsqr{1qf$=/\Xd/ۄljC4E݅mBK7 Ӂ;B_Jv%$ΎɯO,Xe[3FcAw/wO1i8;ˠx)MylVQ*9jYVʢǙp03!1xع\_-ԉ }ٗ\~O!||I]5 }҆!"GX=4` 5uF4M0!35-Wҵ\E"e/?a~s.u5*ZC[ n'R`[vՊoPaB 6꪿PMׂ0/& :""%tB Kl RKsۜxOj*…6 2K䍲ӚB\T PGqui ÐmYMʌQq)B[Tq~gx1ձqGGv<^&9|>if"Ji] %Ɂ" 6>iyɀQjxQ#șj)3(Ɣ?E~&1MdȶHٞZI +U+)/G⬩|lQkY S6@ȳ$C3tU"gSxg_-켶՞B]OBO2 NHdy {Ai1:a:4 27Q2w[: R~֬Cv^\M9hqdS,?Kf-ocҦ6GXV*3w r@S^,qn FL1I0D` bQ6Q%5T5E][B(a8A7͔ Hb$ 8 OcՅ߱&<q3!mN]4S y)gDsM@6j<(;⍀|[ߔ eآUauzӧWi4/:n>j+Y{.00_f=7,,NiCvLp|/Pu*7)=E$Ӿ vlh'nٹ:SNv2H`FQrXle\K1O[ԋ8~IjG}::tWJc:iVӼ`3A`RC} zp~ն0IQ(w{+:4ⰐSxWWu^;=ŎRP>fz |fr*M\pCvTٸu yczjܗ=ɿ({:ڂĄo߬ĽMou0ULh>&%) D01_x4-{S)\xlѵLfY릏r|0::\xHSw2s%v޾G[.B$E5H3$c}gaSa$ȕSjg׃UJeK8&qghj0IGWȺE`1va[*iL 7g =_3ʴE}Es]:xlstkY;"/WAŮzjlC|E;wrbg,bR]*ΈygAXz4ȩ (l%!ſ :EeKTfIB]Grsn#jǦXrsH#f0a1R_/F,G @`ږO\3Lӊ"NMot[m =[6k۲2$Rs+L-2ga{ z٣X9$ qP0aZ9ϲx jd dn:|_윛N%`\6;Bm>0#=>h%+`AHy]/žjU-*|wbvi3߹ U/OȣfjqC^ vHk^d\i/.sp빤*@&)K;q% GLBlvφVx4:N8!Q 4T"ԘDz6ba Lca&µ-j- yAʼ.ӫ388Cβ\ZE"r R>MI@'j~@2響cF9$OU3pp;dDtx\ď* ԭY)gGgg xgA7#'6?D (5C|DFh f;cy`+ލex{֙k+XEVc\~;+⢈wpϵhSk)V>8}NF4‘Y2ؚ=>Ӗo?E- @ a.#O&eM{?,cĩ Oʙӄ裶7W-\ ·`cƓ+D QOuAA`zcJ<W-phѻvV#>JEI SjTuXUpӲlx b*Nxkax Y;GF9H5c[oXuCgׂWD$qJ?}R@K7Z/?RDٞˋ#%#X̉VDY'VR2|-PAgDUmK)+L oiTF3ʧ:!aADm t:O=,9na^u.8bM迀# Ɇ?T; q6!i 4Ѹ.N>w&ት2ID>$o>w Sj1"kCc?pOxwj' TBF<pyVliєQJJnem ]&c} 4-{R{At$OD॒F@/}}CpڃP K\d! =Aőn=u$0܃L`b&@=xQ02BpMc!|XjYtIʠ/L s{c`;"՞ p@:TK̆5*|ut邧 p l+~#-Kѹ rw1vڎ̶N_8Ncyz7|hx;F_Q=[6x&7F@'4;A[dSsj#0oN/[o}(?*L/𥉉ރ#-e7C1w22Ac̓Ѻc 0kd_s|s ݶiS%K}tM=/u;ٖP>Bd,k0dAYK3B}7}7ކ]>{ :!APd^ti_^A@%zwchiGIf 87qO0=mbų2?@RƜ^ .2`{fD>eaD"[fKԋO:DX+qíπ~А(-d#0!P3M3M3/|x:ZzwkKOǏe˛opuݳ|ם9 @iJoAk{^j 3Z |&WDLO1ǘ|J@MrowTw8AKIExo\aؚXj[WLJ݋fK_,,i4+ZjoJ5/kJ'TUNtcJZ.G}MТz@)Oɶl!TE]^[⡴K܉!'!mtZ, V9(RqeFrPtc&j hLxk l&BuƸ.#&YsnC[79-[}!^=H>b^v K;Z Ĩ`ѢSyLv aMfc+%ρ Kr>E|r$BDv55m-Xqx'7bFee'3u`_Za~9rJݓOD^IDzy.̻= aib3.l۬ Hٕ$&O*9lB8+LH3%\` J.-[bZ+3 PAn7ﲡ/*E tW-S6i%"Cft7T:?î @}H|$,IY9 wvOe*A RgYnLh?\ acْO˂fECx7nH_Eu 7ٴ o@8[ZHC.Sw^aEݧnh 0!*pWjY*Dbi}iAuڢbuNYs *eyViu/bfPx#&t@L[qFlVW cOT˕ Wh=fnN J9,?eQ& +b?5U_wTc}LF~[PrkUBĉ,>Cgn2"8'Z 53T/PN@Ed̍L`ROc^aTT| 5[ۢYCK `S5ߋro"|Xߜpkn+9 AN_`F_cPQ<./5)C3 &A-7n2{!~[Z^rm& We3dmA[),Q*!#9bIUFUvdnT~2@]I>=MZ= sDq*R$l{ENfTWn_8x%^WLP ir$2ܩؕ3i]:m|{VB93r>ayX10/oGκ>-93EZ{i#}VY*Erځ'(y`!5t˦Aȩv@LOƽ؄ $,s7v]LRΊNVD,*x$Vϙ'أ`"Zy0?' : 7|RRM^W+_O6: dKw$Zq,F=|BS^at | (1J(Ptc׆:y+]z>JhJ|܋![f4$dy,##}rH@"a妅p:704LNrs#>sRkJhDȋkUz&$A#+V7;RVm.Q˜h,E:.Aϫ95?g : !J1|?kJN6^IDfE^\TĖ@Bkt x+4KmLN'ft@fşs'G#A/ZkAxIUwF2|'SI`!޳b(#{Y:!?Ftpeڶ~RD}{'Hj OzdϠzV+1-u A7`֐p~U hAv FHӁ/A!hak(:8DtT+PIۖ%FlkEbI`b aXEG}Ib 1ʗP׮ (Nv1~[y7LJ!e[ K/_7jk) {"4_Y:bRUR㝳ŢCJOaӗŪY랇f́om꼖[t|L)b9l-Wz?1bS_6_U"f' V*[ѡ M+ˡuÃyh|Hȏh bsׄ \I-Vv%o+C:>{q{ObS)!v eDؗ6,@c.QM2!ԖDz!ұTq08iTk^ܹ\`z Xe0=zyN*fvtօzy]ܖ wKj3e_e?!kI{bG7LgKk!)wH淟iIZwHng/!j͐Mcwިɹ}7I=pNt`{#owpdpԬP<@6a}k^ KLz+U w'FXB*{Vwqp6w& e 6/挧`e&[&v!B[,'} /pJ;&$бeE4f񲭚$" s. RkXlEV u U E`3M#?2WjɅ$[y:q+gխ*\[ͳmLԯMUӽB'dۺirTb9z:$z-L慸Gq⪅(a~\.(;%}IOE9,ZBȒ'`[UH-Jss,*ܙ0UHb`j?}#m vӗ[k UZH!eDpLR $Mkń՜6fkd89KFE6D1RQ?6H6[ l@Y^G})T]BQ.cwHܳnc!u/^ְE w!C_\=P);O΄"%?61>FsPLOLƈQlj wrrkpkFﭱ^:Fc0v5xMճt5ú6CfhwNrBMT@mtRikms9[{WנQM#甬UuL&Ջd}3MZk@Q9\n8ĵmnѐkmQNmPX ^z.Mp> l|&6Fb\?EV{bxg$Ǧ@F6Ӹ37lA.Y{6#]7wɻv `gA?MP4ХA7葡&|Bb߂M:,&X|In1ZƩd`DM0 {,F(E[ʴW,( yo#$KXՂ<-,Xb ;["G'4?=GoV5G4B@U#n t7ԁ&ik-WmN smdlUVWnMog\Cv$FkSGY4zg rPuR3>~ Ģ +ioW{y*X+G Rfi% DM5h |`!0 A_RkΦjLwNIeX/ +o*!i*?]`E9[mWN{`Ú b#=~ Se-QfdF|PgfI+KL٩S"+x80a]xX== PT~,(/%j'?\aBd,}թ k.qڄyy!AWW=-m'X f0T8&|zHg͠2 YU<<+`,^FjTd jzd)&H`zxɆ?=@EF4_)jŷ(p9'J= a:a_yzŰfp2X# OYmQq…#l;|`gR}(V̕@i1/kr LǚB?7ě}V{RKD֯}~ q(l6Z=8(~vlHVJvުثS, _AKdܛ^ac;2_h1F^%("@IJ &DL!ux*ٸdі|׸c !ZPzǍB߼fh\ sDV?Ú(|GvDԏˆvL䧎s`$^RgF:$Jd6Upvh[OM.\i a+ {#S?/5ggFMBu݊Cޞ3R#D+X`[&")E )g_1q 5V,ǫ? |Nxp?!|eg5e8N\L:;'8Tmnoߔ=^ q^4I} 7bƢJb8tCeg%KM ]N@Y]b_ԅXdF0sҲ:b@:0weXwr6qKCcroS̶zX+;GM0\+z~KJI&G JC5 Vw%Sgei1 __NvK Kg;?q Q܊7=+Q5VNC]pR$I+bgA+VJ6 P-tD׬v Bב(> 8v=Ԩt;Y8N231l:rKki_l5BvaFŻW^1ʷk[!ŖH8Zp`Ng&ΏuAvVPd;,V; Ӓ8iZk<nAk̉:Rov$0XYw2Rvc0*VD >:4FfM8!<ԗjq/ ryAzbq=x_X>6'R5ijK7K@̠?{[{|5zxv@l+Z[ê-/d>mSUt.$"bb|Z!Q(Ca<8p_:fU  wt#GR:\bol[gd$=@8rE=ů'ڼTw4DRRJ_ d[0eeɗ8 n ь nQ }B.zp o,'nE̙VLs; A~̷$hx(XESK. }vnesXF\Fe8; H]Z BUoG,ע0^H2V}OG;z3-t(7CnjH6FiU NPQU`c߹^dp*JhDdž/W;=RzxO<+樅;' KAa4|/3*ݽ1luck0janh$XsoKV֣Z4^6\ָBjFh;vJe=[(7,u7MJd%lN״́S-'䓊KRnGW2s짩g󧉂ޯ ýAٱ'.˰"9)gMeoXA|Kfn>ځYwԗzF>}xqcFI$R ٧D!+ '];Jʕ8+޶C֧Z+>r}rmY8-k2el0yFWPf 3DE+3Eenr4*d+e^ap 2M򧒇T;`3t1ΡnP6>'v05.Z.u^!#xz|R #sVڏ%Ò9,9#}EqVo4jqe= e5~I:b!4kSFіRR׼O~]WA06{Ū?пY~@Q $:Ա9ń=%|lBGЍf}@u\@qμA'gw|H@ nB;t| !SHogK[$Lcz<Ŵ.М2=Y*F|STc``~|ÊS6+IS?7ƄP륟}gnwޚ;"Ş86xeU :SBe79o,cG;;ߐle,_۸p(Ϊ#x !]if>i [~B?nO D6\Nm0 v(~UgoWz&a Q>g -UZkwך>1ط4tfSF>=KrU6Q%8#.U/SbđCK~*\OU {7ڳX3mد)5y&­%V3()E% 9Tu'L(YER/0 +uFWkfr>3oR<6Y۰>IG@)E~Ul4ަ<7|Z^fᩗΣ젿?9TѨ1*ݐ &tDK*'xQ:G \jSaX,-H=T{Ƥ(V#p3\/5lǝlF1[IsR Vh00ޤGQ!77-4- !Ͼ%龇۽ >Vϯ[!ӊvq;М퇕ԃ5crf4kFl=j!߸@]6IEP.ijKDĆ\L \ jD"l&% ݸB%Rjhy?f%gH nMZFZ˰` KBjdhOpz"(](YEe{R6\WԻwBFȘ]vmW ha#ť4&!gw.91 Y=:ĀqdW[Sx-cC:C:wb!_ U8:AfҠ^YhZhh-ѺIt'>D[XJz-wY9EzV {bwqSDEܹq)ӴP¡>*VQ D,D7eR-wջw:D6Ojй ]ɗF:5TC7NybOByQm KR L]9]jVE\t$N$V{ :tiI߂dI"_-pw9]M+ z淔˾0h,^kV:[=kI ؓ4&: yjRo5ìXT#ߏd%k9N}E/ӉRCT/,z T'٪‹ͪT&){}H7OZL'F78Tn =GINk"ǎ i4ND* bGw(~Ԍ񦻯F $~eqgᠭRN |;8R9hke-Z"=%V$&vzL3J%뵢%#8/a+~$NOT*%Νy֔o>vEv&9GH YדQfI^+lorxY8Xa76G|vs1DJi!Ϡ=Ϭ@za0% M70^lE4ݙI+-LDW[X@d뤉tgٗ8`$Ct 9 fќofLCEطd «Y:A̓ CdWs@VT1Q$A["=[1!8o"(v `'Rx3g^\?dBvp693w$H=IigN+%ҚWiq?=ӛ2~VТJD`C^?!] M9D]#k5T@)1.螐ܺ/`Ur_^ jS.&xaM\>UNjdn|+8c⥶^|[B>TfH~*mXa8ȅ!!hqjɊY ) BکD+mJ.iZRm/UM'?8ȋf`ⷽWzo!Yl߁kp}@~^#u8)'mrx0[ y~i&ĔhAbX"Ռ37-BZnBe{U]W_;훓r6%w.++S2a~  Ɵb0Y7DWG2lG^oǒĪXHZkȭzmzRE7ΤLNꎿ@m4 Ež`'^Rqˮ]VM-P^H>ۖ%%bb5,В{e͔$ލ d&scE EC6XXSO:'@A<şRIwB9=zk<=/m`#r$RGHZ ?+NqTsd/-BKalq8i=>R 1?!_-aR>ymeom9sjpn\-9W'T@%Hak̏h"P(fe` :ZLtn3OUi6"ې:t>p`'+LGg8sd2OV~SG%B!ZO+NA9~L̢Twɿ ~egWeg34z\ƄqLͅWEjYV8aTMb4ljZ [í]?> C*utA^ }!UYp4U<;I9˯FpYi,wP2v0Wh>E>zSFn;,.:j\E}b c_(Xn܋VHXb|u+H}OfйPIiv;c;!K#g'_p+llF}8CT=j)u2_ \;`G+t7 /NbɗfՃFCǜT4zZT4CiF6/j1+VcRHx:7fWtWk߱g1. [^QZqJQo c_U,\\`$TmWn Al0CsغԶ^; 00\r~:PR+Rj:wjzy8h凶II:/(݅T$>~&n@^-CK/!mXl)Gz` V`f<^Ow=+%~ܣ#sgj4P-Ҩ )[})Q9q=k&)g$S\`C-J^ ! NJGHm0C{"9ͨ@[[lW- Gde`y@ \T֔xlc{/4ta|}]G.Lt; f Jpd)U7_vt#9ܺʀ ;^=y߇s3SDh{y†psHzPW݈}da\[X9C)2DTW\RNXGUvDyi>FkCg>1O;?=aUhPӧDS\nPaQJExN%P#yb`& 0?Qy\nQ\dXNkKhn$۵jyC -6_[N ,<B袛!t($OXj*LP\uՄCDMCRe/vUq/$`ͺ @(}5 'CjLy|zGf̤gvk~pR[>ia'2VZ,=+=0sM-wb2:εfӇ' Ma1"S#OW1c])RhwrJq@UL3h`MdMNNB#Q`pg"+ФP/'Y0j(loF23|ywLȅoCBW^UC(B.o =oT۹>aymYׅ}ZlEÃ؉11RGh8(hqޝ͗ցT FOy:d8?&Aowhfz>o+xAgC%=#̻CޡDCUe3(w <@ThȷƌƟ n!#NFNfڟ>oU= 9&Ox ,b5%MgZxr%@}:a4")YztFaCє]Q,J&M.U0--([o- OK$2eVi`&T,D‚@F&Z o/VF,eq|XvL[t¤ch/e(ͣAX1-ݢRIPsΖoYpҳE7ݐ4WG:"~l\e %#u-{7\hJPMO3}dQ Z0}8άlP $g-eW¢>òMnFОЇ6MSx7Ăz6?4'1lFGqkl qY!qS ilC>Nj( {d/@{@adwoyte6:: #Iwjn0,`hOKS1(h ³^McjwpDL0wz|9-^UGp{t'0 7 a`ruݳڋ:MMUQ}`nS1FV.Hہԉt*GS+m:n+M1a /!(dA'p7w%eCq-iu.[x$qx ZLԤ/"?6bpDίEaEV.O̓F]cXT&$="88, =/|;LjT&3'H{] ;y7 𻝇$PꠀWE"EGȖ 6ȌMDnh~a٧%YRO~)~jGVͩz( AyklL>R,IyS+tdܭ,E -~R#6&D(\S!muX$]yx[B6Xt~|JdU:10ܒEX~[SF竎7D*@8F M5w7QeKfnԹ)p-\nP( D^ iWN\=&fZ~*l(ܭ'm=32 c`Iȱ#K2N\ Ғ-D2΍Ops*3l==NOsELlod)x^!G( 6$Gfy+StvGB( (ڇyr&"A͍0 ܼ!.93/-c-o2%\(q ƸEvV.avwS wp 4PmLsBfW;xZ-YS4kj`Epe{5G5j*+<*ߚqX|F8bAE&8Cc /2tKNmNjHT罁R|'qd UcJKw_8CM_p+߉/Fp}D!0*i7kW!+]:QL; 9ۋE#:zF۶=PE3Xs|:C/y y ˖6mIZi8NpεxuQ~R9UzN]=wHDx8cݢ"XH%,cӬ16KNt`3K mbQ))Ҁuyc.#16+azqqn^ 3Jd#@'I@կ6LI PB2 + rWZc`OS68bf,`R|nR^@TѧEXJl}EC9dkd&(oSiN%@ z.E,*Y18E_csCwM8ir!X9RWd\‚æsF/A]ޞojlfAk<%v{e6OS3k91oy jHjeDccߕx>nAlϰ 1lKc|} &LXŋ]+^&V1S9\݌`hRVOo6ÚE҇ ],'$E;E!GY:zĕ(GǷ1n2H؉JnΡ0 Eײ^FIPOqzT4.^/l2*/歙?QƇKؼ!@=%͕U `_pB07C"lN=P>hA~%,N`0 O؈^(;إQ٦ >'L`Ʊ󛴷$׈ۓm& FvT3桍[*QH!gYfhV+ےm=/lC '&s?mp^5GJa.*u?bbܵt |q+}T>=PXt8%:H` Y r3GAjJ,l/F)mgyɫtU,m++.ȧa?.1:*ӛ) @(<-uRK2CniT94K9;5dh; B PNa 0ɤumR<;Cxf*y . eLH%q- &Y"vJ3.?W5AO0y0yAFĔ ǻZ,L@U bޘyrJqV;Iy;7XN6@`Q_$Yf3~Y+Bq[} /2^[snf3DP&U";p-NXDmc@$>mOo1aVXoJ4d 1"|*ʗ3Qn[NC s'o4dF'#7 0.Ɍ-x=|}': _ۑul(,' T\%8Cvic ٮ*u+^~Z>oV?r㟮e<~1FIe6MWk/NV΃9.6aΪ|&l[.Q60h ,|W ="gꓦ,&@q~_UL` yd'պaY1T%+ ˃y'w1.ݱ4[J1 mzyI-H1ЍŔV52 i !Q ;n4GU{bTб jIʥٲK\z.= T jNqJ7 f= YnFKœa3uMi|~|wNK]Uʋ11Jv0>xB{dANu1L~V|@yhߔ֭Rk`zA-1q:ޯ+)"Y/Ko%f(s#/o<}raZ#!ٜ0^#+Mf^$4?Ö&3HFǐiEawk}Z ĔbA@ eKZ6=$vpEgh;{WP10f .c!,[t7˚iVu kL3>"t@כ*)jQQCwLz 8-^\6#*-h d@] U-\I"ibVUS 񿐄ŵɴ9X >,,##+*c(=ɩ:lqIxr9?nc̥KdQ3a͜h`/@o &2*InzK5?ZN|dM֠o Aq)AW|r?`z_.IoެmuD|4ْS06AeW~m =l -֒5:<(3l@g)Kgw(\JyBv|<9rO;bN6ܛ[dm |v0 ~F"xhSYhE ;6!ĹӁ\PSqIEИ$$;W D0,vdncK0I.FSFc^ӒͻFXw[ 9Q֥}ohGo|uN2C|~3{\vl/i첺蓡x a;Gg}jG#)T~'6\ =/hվVs_I,4S=Q44V*°pKW@9.^k^%X,J^p)Z5~ g__sghӅsk2L3;wBMJ̿xp'' }=;׮Vؒ~5lI0?ˀMUtomZL tXɷ]EEOjŷGgN2Fi-`[n:Là8&5h) :I>T?FENcg tXtR~ϿJ.Н դg>fƺ&~ u,|pd .ދ{{#"o;f{WÃ\DĠRF#Gb=+b"ӥnL7K"Z-ժ.qU{Jz ءMf X>>򋝄`BWfWe-pS5Dvh+-l)I.{`v¸fK̚de3Z$O#3mw ?hr6%ݯJ%,:)7Fbdou aҟD`l ht ũ-QDG9*)W_Sz;luQJV[)F4Ug/$_;w& F`dgc2Aqcɝ`ҷJU#X _Gy}N|#Þ|-jy dUz8+?;xc r}ٟ%|_8X9ɕQ Ę`m*AI4|cCEx}nR~`kSL \(h*K͵UHaǤn 0zË$f7uI0I%{۔X9'ݟP(dhomWB1=z?s 5N)Xq,؂2T'u1$tTug7KUCᎯ6L`'*zA$6wVR>*7s³=m=iIQ˚ 'R/aU K@J@:2Eڜr/C& n HϹ,\<lm0h2ܰFĻ7:)0Y-(E+ɕo Q>7UZz\iq+öSZ-rS2/u!]/Ԇ՞$77wI(\LyyhO KH-hB ҜX4wMMuf#E(veqwķ =3^"ًjGg%A>~rɛf9=]'%LP;bE"uk6CGE@4x9uXP z> ͩf \$t:!u#>?<?T/p $38g* w,3.$S_]ph>#G!R[ 6,B;kja4A4~BHc.H2v1HN7[CoެCd_Ys}/;iX^Pae? ( iaV`Z@ JT~[^lͰ&CUp%8bGmg+ȅE%cg1*\Vv4sADi:*xG .R1H r=?bgd*Zʺ;;d4O]ۅM|3AN;2rFa/Hr|25I/Lfqm 3;C*M=^\˕BC2:dJ5[!&Db$0Ŧ67"6t[ףbډ"x- VJ8LU(eAӺu-(N #in 9D '0缿(oK#PYy`"ft}i!sZA \RI[%a'#=hƭr4o`YRdK NA J4;`$;'vqIOST gGȫ 'Bފ!yDϕe4(F4,s6;``;tQU-N Ӓ"{/K&64Aؘn}PV[12v\i,1fi7S' QW4OyMqf$[eq6"h6qA+>?})A.=~}1"UYڜ5>)DPv@+7,a7Hw W'?,HBӏ T࿞޼HyK_#Ԃ 7-Y]1ew 9U|IoIKcH(Z:D CqN ]L/ZSҶVṃջ:{6-%MdcM߻ID!R0 FWBoސNK cÊ-7xgl7 1ܢ'[kqR+Ϲ; g~`b)h׵\  ?.G|:dLd˛ب㍄"@kA'LZ*V"rդ< "s]5GƧ/e \X{9e :Z"eEi@j1?!T_<`ZK*LPEy;91.Ru@SH(w9kݪ '+ʕ}$U9D%NC`n\YOLE.c6b0hw"|lZgۧVX#Lt, Ɛo %}\GT^玪1 D#,Ibu쏸r tH _7QXmq :頫ƷL~"#]c5_sP ,703fi[K8Z=ޏ$l;`N? FfoTk(DT/ LL b,C߫1Q%љ!^)g Cpja_"ɇ ;Jӥ0AƭxAS)k>]sc Q'Ӡ,x,|l"+ɬIUKVx@bWz?1kvDł֏A\ir"tC\[Lw#YڽB4V|pq=SGy.'>W=tW 5r<=J>-y5W`bBcSӉ9Cc5ƹ݁sE:a\Cޝ{NJjh&YuX?*Q@ꐈvPdژ5brR[CM&Bs(Ņ. W9h$*'Oȷy]B6 Ay3ѴImֿ׸5$=~:eYgMlLQЩ GVUqHD#|A/u=iDEf$JmXO~ 3_2< ڢ-G,#7KDzSG_p>ߛ‰9jbúP:Ĥu7HxiU_4yJ ) ̥ <7Υq,.P%''j99浺9Y|MZՅ'5Lkȩ SFr%cܻ\Ϫzni5s3v%uэJۿVlp|M, IfH`eaewZ5޽I>UO0V.7*yͧi=H,T ÿgV#Ӧ}a HS"pY` FUgx߿v4wP4cabsqіM0R :aʑȺ[|&{ja=^v3+0@L*l-oE"bE@g7g-  YUjY'sF[I,,\djlܘ qt4NNҎU$sq+WɨUL2/⤜ r_"=e|yˡAVo]@yxfeMWH.K=O/s?E&Z;ΐ :P( W?g,% [k{ P.>ݑZ 1$YtVgT|uv!1A񼑊))5~oR8t;u5WKWU}Vq'8i[OjH<6"N'N7]Y\h¼c`7nҘ^ǛV!xCYi8\ >d"dCUe xBٶ ΍A,rcNo:} Gc 1u!C& H~$2Qvh/l Dۉuf6AͪZAT)U9' 7/>-2ٲ%KLjV{nj^l>r2t}[q:…nE(+ޮ" V%{qcl  cE|gA0rRg--V]=3.)$ 5mЁ)TRS&A(!m/\CyJwc+^TDZ+BEJ<':u]Ï |5?B&K>D߶(.Y(rDNG/sӹyJ'DgUp*%BMBɵIa'g|?{ Cx%H+k!OxfӴOS :}ZPc7t $Bx=ֺ mmbA,/ ;$=GLY,D.x 7λՄs@SHKz=Cяr-(qG)j:-nR|*iw©qӍi5_PK;%B Yv N"[#+5az_0If-9?+ucOlO_udv, PF Cq@Ba/y069޽ Q.o]T3n'N[;`p@׭$vk%0p̠Mϳ;Q$hA̸$M%EA{]PER:bm=uC9bkgq; v'7jYMe(-D042{ڴv H {P@+y}|_c=2gf؎Mn A zYgP˾N~e#IU1ޔî--e1)j#Zlyben*y5) ZyOgX_rĢ,`T!r.=e 4}cg7|ԑ^ߚ\&cXtdMaY-GpKNGܿȱsmnǦr!=GwY2[p3ʦA^ch4_}޷uAZ}5]ۄD8 LgbwsKq5W/Wc&];cMxzT+-sYX'>2`ߏjPly,6,G|O;!)~& o0_X+%CyH٫^)%VZL^Xم Hې+c0HCO2*L}^ sў a{vQPg%|uI 뷵cʑ\ڴp皼_*P7陟)eШ{4d02@^] f#ڠ1P},t '2e% *oVٰ'ab0+p9S؏)0 ht'#r.XWӮYw32;-\]/kpG]AfQW+(=єI@˅C9O\#-xz`X~ Mn哪_n], > /cf;!u"Q>[oXm9%jo{z ČY'om /\j{ kh#4?Ygr ~s`m 3u"G+V^ʚo=v Yͭ ](I`hn/T;Ii7) C?K"[Պ[p)k4Jt 6)z5 e529o_iwRpU17șp$=\J4V#`% ܗBݶ9fw]`1P+4&i%w<:99+p~°o\{\$v҂' VWU> X(Ho\,"w]Ч.\x~0&"L&3Aa ⇐tkCqjoo'O|}w9R& oև$EBo&M0"1E,[Xr.߇K3m4FX:SigCM1/3 IsoG zzl|5sABiU 'oOI#o?to*ԦG0;M%ߞiK/{h[il)+Ea%Vo`ŀO *8Eiu?9nX]{M0K]?:拂ձ$Z*-FZS"/Bg]"M7v?GxtX?Ѕzٽ4J,ٜhv}40d›ݻ Bb(u<Ԣ ZC[KkAu􍇠%ރ')UެM jj{so9d!O-jߡ?+1=W玭\mB=4C;0dں()0o7z53a3hqFD\(Po}rtfvV++q$.ä]tK2T0gچZ0s45v8z$͏,6~sˌRմ;9ɕdazĈg W-H+EQ`)5я:sC ag=yMiV:l7SZTB- B}w[ |V-z}_Eã *{bF{C1ZF$UG5)7'w)onq &a׼:᜸ Z_cڂ9y;\t"g -7J!,@q+PDدQCF+J_J}1 q;`&!ĺ0%s4VRvRe"d>.>)^ )0F2"_ CM|X!D9IVP&Nurnd / S$,w2ӄx]`\-d(O5)yIk;=HM0FUh)Rd^@l?I: c7{ *Щ-`'KÞ.?E-OP5Qr;Aі"s8UlefH8Cݕ- XW`@ ){烩-'EX>/Dylml,8%s]V/dgv;ͤ>x k0I R lC7=;|r9:9]m^"m͟w4S&Lm6%uV;$VkjgF9\Xmb|Xe *ƠZGNS _(JjkC*~2ƔE@b &(* xCwܓZe`JEXѰuh\<:o/J)8 q)0׿48UY#O̳ɝDܹĴ6e,Xgy#&,3LeIO`fY(𶅱ݨJyl˚Hm،ol[B:tsȲ砘@?s/l)D!F~;K аkCK HT:wnoDzEv^c-ZX<H{YU{}ڽ6}+x9Q;.~NjLri=fmX6#I Ay++xj뗙Ku҉D?P}U7mTp"XrgyE1:J_p &`akFmڠ?q.V#"b7#nH8:$g{C@yͥ=Ï6"d#M)D1 n/31%cG˔*8zWp2RmCiĜu.u=(e-)Vv*'0p7 ^)oFW(˂iLJj(0mn-hh>,Ia  q/nlV ]s}\AdS>Q_ݍW{[oSVY??T75qHY@]WצG?!6ѸY]C_ `4˒!VO=\ V7?~[N5",H y8ؕPs fR'{9Ip=m<$yiELk~pc/Ybx֏(PM_+vlru߾QE/1Q^8GǙH)6XQѶyb ;dEFu',pݙoRp~p%~-HЄREEn pL DVf\E-^a~,3_}u nֹ.2[ .o~{61ZZ'g}vO?Pw,aɸ s]U%=W&\}>81P`Uc].$ID)ɌU]Z/wTfq([YА,5F4{Gw'tdN*O, !?9 @4+up#^6- сB;.b-E^쎯wH5+EKH76u"92LI74WT7{R/R15V:\s_~|=ېu×>b#%753*G[DI=m-\R@P|rrݟOP FzfeߌƥŊmLQ[ncpwtw ~]ZMQ3KnfNQELHA)a 9K>rv>mMMRk;dufƢ}$N5Nqb0Lw}}&]څpcPh7<ͳH@`f(hMeP:M,d$KJst0"-N 3^ 0Iy<)&8*xBKk?Lq{%8#wA0/"@9*B4dWZH5ГTr=uOͱ67W?JO|L+*&@W³hJAXo7MVi(q&\}ygz "; _7y9 1zG}2 |VDWJVoGg+SiSvWHb),&{j:r u(7E[qrO}UWe:e!KͥL lb% I.{x L }UhJ|B{u_ [{OȀwW?`+C%ĩiis;ƉBw": Pwz{d¶;*DjPm > ǡ;DN lzux;&7g,-w qxI+Tuwc17{//ߔ[TL5/vNRڷ/IyFޠ[LDʿ%]aД ~b풅rDpٌWZ흀4C3 3oEȦ!w&D6O I# ]71PZѷ,Om"fZG ^6RMo3A^/kͭP%i5;@hLQQwH?q-1 En~HoFt}/Z'(F,xCH'wk3CV2u.vS.TMNZZ D7> a#2gE·U:F|t,! <, .-J|ӄ #Q[Q`t*ź1>p$9‘l{OXfQ vVsv:ooh5 _=7!*0sg!,]%-l68T:6m4Gr^+,V"-vP6 ɔ :6`+Nt] ..TILW9 AM=DֲI'y6`M2iv kV^N1 ,V*iv ^Tl^IDCMWMzzՆT[ү?hQw`RZsowWk8ƣ"(0([Pc6p N4 E55MqWD} D| 0"a=!{ϟӭP *^iah}MvT|_zF|EP}vlanq62CtkYskqNJB! f*ugMt[i94dw96z\]fj/%L0`j,+=Is)HbQu[+Br*t{l C4`jn D7C edLyW` B.Mm?E^!'4@|1]FMe܆pk_zH\҄rD9Ed{=QN#NR *SAv/m!3ruؓVfgh1"q|;{{* , |8MB>E`' r;א{ضۧCjrS=i?XG&vZ ibqFNVTEQ{n $~F;@)Fz.9fM~'Tʡ.ڪ5}ڊ!7I>9"qOC&:=Sѐ5v{X᧘ml0rݥ*WII) e/.[@%eV#_e9),Iq-N'^s@Z l+iy+?;*٩]S4s>=.C5ڷ)4XVrmEDp|0 B6:+ @zX|+Cs&^6A O:FɻY4g'mi,(kLn!>P,88 a`\7kꑄ36hHmu6tyJntx'47+a)H uOIb=/=-V3@?c`7z Ge9E3,pȗ{cigq Hߍ6e`-dŵIz.zƊH5> MgK/` e~4%PnKh q%U1dܩW\tsF?F )^w;3@I_<&e=Inf٥A>SPP}z2Mx5J!"_ŢRO!l~|-x> IN[KMiFE_Wgb6QK.1FdWZ<\?E|#)OIFҨ@#sRđ{ tD{T(IlˈEOM:jQVibg5=t`8̈́D)t`6%32FlV AU[m [P~9#fMƽŪ;Ϙ/0,yHEƨ,%F%Gm>?>hp*6-w`;ŷhL4fa$}{@9Y h89q'1_1vau0Sfľ eLӽٛ>#7$XJ&̸|o=~aCqhɾ1 ]hW5aV67tTM gߢ扄d%Fҡ;}]omrhĉgAp199{$Ҳ7ts~3ZX)?s(hn\ƗjNzbxnLr? !d' %V*FYag/m^~ajmH2OXF}}I;})wPH?$ 5gҌR,c.+ϦM N OL0@W͊Xysx]tjwlBdS~?ԀLv)T\_ b^-CD !휠Y}DA|@} SEl+oq]~F~V^NNŔ^Ynj6_|T킦ڲ yEF8$V"dv36%eCyfo6 ʠmlT'J@!g ߰3mǁ$ u|rcTJ@G,uIf0myP·k*J]̿,XߜK^0b\ L-sb&irqTkV/Xe#Bf119dYkȽ}^ \t"5q~g(3eRgn 6:5'C:𫗫(U D;?A3N]%|qAz3~&z"b ;(0gW`u8+uHM[5"B#r|WY Bm#twEz+M b'C-v`IDS!o]~*]hz~AR}|2)O@W#zUɬL4:vUya>6'Yj&" ղW7gI~eڐYm"Q 's-pBkE#y[{bs:{ϟnd`¼311%P.10T> DV"r3"^ xeܧ.@c-L~Z*6p/ k"̤p,0@+5Ԗˮ"<5%Ժ+28Pw)8 n- JĐs6F"fM;v#h8[|*4n,4d)!Ld8G/:€'OTwko`{(W*h!ۉ,Ƀ@9L]y+ge+qDE%s/mj=ښDꌁHDg}.f Fpѱ#=y3ۖbSTن|J!*y vܿI|]\|~Hs|w& EX[ &O[NߞtʹYfW+b˟ăT[J)-(SQDQM d4!~s2ŅUȽ}b^D#:3B:sLƩ߿͍0:Yʴ+MZCE+ݏ۹et5ߐZ)l@0aPX5l O ? ^ܢ)LύdAL4w'li^p\FYwޛ,= ,Cg=sx6-ys CGC?U < {*/Ө) "Ա;?\^1RP"WV%yLFmJW꘰>yHñ|hQښUz՘d \aELuYߩ~ 0 ?0|aÝ ðQG]ZmX! 7םЩz'LaO&EYoh7-w, $5t|9O')ieM҅2nSµ&ß'redN ھѡW%N6>I)xwS_qb! S>cozܞH&͌pn @,^|;bZ_Y [2~͎Ǭ('<"Wh9F 5Mpf +;< b.ܾl>q(*U.|4ԗyul{W%2j4uYWco:gadCDJj17no>E YcTK!É|_X޾:ϛSْΥ@8jNR1Eߤ3 _lZMV2T'fwFчwYp5Aj,KܟdAHx\H#PU~x B}mxLUXBSKamwr=<i7?DMv}L /| wϫrsJ"y))LFo&صmjc ϭ j2mkJlE8Z횐ntq.@9i>mƭ!܅O^3QHZ2H'>XUyOT~ûk# :MgG>"Tl7O0& W}OB$pbN*r(jLn,/E{?fzζh6{M ɟ{OZWgFlPc\Nῥ&hKT!t]1k|ʰ9c1"&kVN.@Ô3|o?Q@< >Z+Ok;gP!X1)u1ީasJ6dSj ydw (k̤ɣ&=1K ٤1״ z/[;6ivyjp[Ƶ gCa;$01 ?R'#2!5E?"U# 1~\jޮL4tۮ`v"ւݟ O(iJz(J X?z4fV:Ʋp xxhֽUL4WFgbR'dJCvX82$d[-pWׇ,MgީJbKHs;:;$JvJxXU;}ݑGX1U!LZi\j;f]`}^Yvmmq ؗGٞ$a7~XBs3z= ¢ܝ9ӖH >y`M`H"{Dl[ohy{p_=ѭc4NaNI '1ӏx済]'vEUrnF@ae7’XI Q'U*"X^reN.`gVٌq㯑.m<c%ҏr\)& CPTž6x~̒`6&tA@հ9NR < Ε:A86sHaM#D MBz)I=ΓW ~W݊f ^pWDͷ.KsݰVxJWce}ra=S8'^oD?AT>$L-|)#j,Uz vJW.g@POp@g6HWiAg.n_㢔@FKOE4M=w3C',Q&I=byش2kO|,^ =y UP&. ?Լ#(9]ڂn]\K"::a 43_[Qe,5!TaJ/jiYBKg k.Z4; "" cK>h4TZ|:T( "o_5F8Z {P6؞E ZX D~a!,)v^ꞽ l" Ox^~\+]hQ&YW)=?" nUsc uИ`\*H5Ƹz^6 .9P`q!^VK`&Rl+2d$.zXF6+M|نj)AЃelfLsml+7fF# ksC榗N  Y ,Mf&UmA*b`hE{yz_ !:l-CIXoX)R%.gv1Jv1o?Ф˚)6)RMsJG}nFꛌ3"ðzU4Cx q5Nh|/VžFn.AR3 "-{uLR[m"4-5tܦ! ? |8Mlgy??X]+}3^4IH<\CML %3Y@Eyjg. 㢮8UdzlW7LcϮ @|Z4>' ؒ6k0^9=aڏY:7zPuG{rXiƦ1e{oyXnu~ 6׈sLy$(@E8y҄!!i2H#ΔjJl7m)!/E몆_Z6W/y0@SK^(bJ@oH,pC,jB=2lU3fH;: OUTE46DH7u~;5iOJ@#yܗ\~؜B֦utW33n$NqX_:*NV',*Ŧf = ,J &ocTKGkTĝ?.ݮX?}(Q@qap⠱ Hw݃/g2~ ʮAGm-!W`'F T]T`H0r䋠lfܚoQiddih*"Tԛsm mna@{r'?#YņߟAQ]Ė-=KvOL \ >:1vXF9I Ze>ᠹ95[vxV%@/$H':,zpIްmaM+J֯cgP. w dùӵg]͆|A&Kd ]KЅGb=/hw<^-$e^y_Igvk,:NP2~E2B3ITkjC:q6je辷UxX~t]o>Ɍ움 mt\jf׼#1tVy h?oAAl~f7G2r^;K^߭Ί}v\J` o9=᫇,8,;x `N@:C.+r>q>Ffq Th=,2o ޠDLTȤ:5ĿՑc_gAq"OϚ]]KǓv%=8}xORU5xB>,GFpUf5Z5#{s摞m%Fˀ^*KU$ |MoLUwkpEjwcVh#0obJ6cvq'#COQ=R2FLg)DYdž5 Kڑp' 5y=Z2->=f7>daYnbҮ574Tn_xBm&Ĵwa()F["j#1E^S6E8`cc{oGsʙ=|D=_)/qm,ؘx!zεEVԸBZ[`+~ vrr-U[c=^d1_6;cEC^hPm.o,H.K[»b33W {p7';fټF4wϬwĠGiGAd'S;GX u=2hHx{#wtpju=6wech*cנt@b BVS,;͘l>UZiW()ٛް:@WXmDS~}"M83s4H@/y&q-u:4cH#B`_YZܛӮRĈyꔄfWE`k%dĴ1h U{B[! LYNj|Eܮ>m솝]B6)(/t$%!J* jxYB[ `:'rhG׮ )'+Uq$~F:ge nۺ%X9l1e$B"ZtG۸aJ4Ǭ QB<\;/P'062:D:63Bo;(mm zIFA}|p\ PB2 *6`i49Fu0u1a۰B di!E,w jAU}- %x*nUhyC3ihC<Qg)G]YrFsr~7\OLuޢtZYFyӼc?q| MMQ:V, H=Ek C R2(%lou2i $nn&O2$7 Yt`"j/~8 Q$ЧVÃQbs uQ6 #B>8rs]Fga}ի,QF3J1DI~a4P~ϳK\8ZnE\ڠ&LUL9ɤb=m'*(.!uA%h@*P/~N\}HHv֍O%.0|}$[\b<1;}%LVrW2ZJKY?!*9Ib ,3p,ArƓ <U_Gk?![w60]Jlh r[ +Jg/Uv^"n&RgSؖ5r9M`Y{*RLs=P*Ig63w-AyDjg2臑&:/Ldϰ=/ւO =Yx z j #߽Asy5ZTIq8t>i;F_"OƸR~a~371gV²˵^_!~Y<.x)>7hO ue\%D#NԽAOn8k|<$.}cSj?=i°;15ĩ۝Gm13YjЗ9|+Q/g@M{R"; \IAZY@y|>0ST '6aBZ n.2) ĀCJʴfH3GzpcW _xmh '^FW+1;+3WiJ XzSu~ Ǐ lf{Q|bYmuYhh"*CBak#ȵ}&XNł|,`W`Tھd\!q<=a$j$BJ,ɃTSJZTIaݒ)K/s 4\x{m&3;;O5X*CQJUgJ .&䴨ch;'xs&`M, lapL1CpGgnɣ5qK}¨excj_G\7Ճ4kkj@m[qdtqmx vVCZx^"Pq7^?=(+tz@ʣ,nj1v-WyU"Dl2V`3̕wIjU8uńtSkVۥY{-ąfR߽o̍v/7Rq݅@{Dy£ ϡD4DdSGF 4mQǮ~mI# Y&au0u><(Q́ dxG8{ T@q:6sjỦ9{V$::Bvm5=AM2A\~@/HNr|.37v7lF`17\ixT*l)ֿFfte3qNNĔ l?gҦuWD7:|_KXrY|9ĉ$+6e$EG[K6-'yY:kL(rۃ[5Ӕ?&+<~P9z.$M X8 T{B[;ݙ& Q˙ly$&vU)lv7n8w-@z@ ;>/fĿe䙲\%7% )}em48/N @˺B#]C }ba'`rXs+[Io\R /;@(w "_zaYJ]l5 9U%Ph:W&L*MYC)2O}&0evBsDăʅv2АPE D["|0ul#}1 shw۠Dy6/!S\^PןtBgVkםmDL0Y,l}laS&}9xd2>ƴ79&ǰYK*L}t Rvΰe6IɬD~VHE0\o ?tNg&ҲM aL50Xopc R 2q:۬D1]ؒkcJ' vdU-L@_I4 =Ӵn*apXR *spԧj:(5vH7yЫ¨FsGW?6ѳ @/Lp98LbX|*RniJ'U~'fz,cW s Mձ>n"zi)oFzZo- } V0+O$i6A{Ga?uOY듦wu/kwfuob_|Ӻlk0JUOk-$A? aH:4F'תJ|p.<"n`. 1J9٧3_m ^9EV.U}fh_΀cpt M'B|Ty-.n HQĖZ-Nffk˖vz]h[@*_pdžWB(c%1OEf'*7_{!7sT*齙tQWfꝍco]r%!Lh@5K54/qT*KfNQLY'|yDkcG}Kߞ[Iq9{xXI\i>%~,yS7qkܣcO\)8&kt/L0ohrgf]Qh&MU>.֋qyf57%q b7)u+ -Zd/}Vc}8b\Ssہ9Ո_uL?%uΫ1?_V.d4>h1H>gTwIWk1޼>K@23$.WjU\^oHva#a)۹^7gm`cy usLDI 7ʮ;VP)BSX@ !/@7~@lQyViV< ]r7U/:dYV!nNJ7@M?'7%J/g[{Fyq`72zc9;Ho%$͘{t0yCM 6^LjvdV4Nf[~Xy(s^ua?f #_5oG42ھ-\< `qA+` /Kv,Zm;?%/yn6$esa¹%`--X-lb[R}ǜ s(0nlCG,f 'M# |"]py-NDl'*r' "~?}]<H ~W۲54)7 D Í[:l\HzRYbdm2xkaiIo,_$e &ui /gzI_7z /@u[QBmFðk(6kY7ݱIҹ2#Jl,{|U1"!dO9_ȂĽӧ'gw_Ju~#0}iC_L,~y;#(GA TBk{RiI *hڎ q5WP6/_; Q/1|AJJ wZY ] 跢e;ƢU=)٘!/^I%笞̻;b|%n5b]рd)Q={ZDÜmPC'x'ʙɩ&҈!Ѿ[r}GuWsw#rݫ[`O‚JqÈStKHuJh2$ F5u8!; 14x^ RmȱuAe8SruzEO*QO 4J3]Um%Fm6=*2\j§\?-p~ 롺a@wT0qΝ =/[}MRVŊk0))lk 'S56)~aƧY5B>4Asm\GǷѶoutpV=QjS#*㶬2k5RlW6?~u`oO_`@%{j 12,)W\,\<@}+>Cg_[p9vg2FKPP0T7D&Kp0qsGмDu;ħl\GmqLoLUs2mj)no wܵI^әF0cބϩ`yu%˂,\rEnroPr-sG_5'Ӎ_b]Trx1g؋.z]! ṶTSAr0*eJ%^-JDv劏Cxx$|j+va;,f}R>Fsΰ)u ݕI n3zէ&S2#AA85R 8b)|,ƶ1E}+a ,,qZ^`k3D c%ji;Q5H]>Fao@DCޅسrށoG$ZgmĿgeZ$HUX^̎Q,ɌQurªE(vRlÏPSNm 9$ ֩c07nmO*+5~PV;_+^-f 9fg3Geٸ UBVTD͟owVɪ+-y2j{5%^c*O?kys ]Dz3Пmk4_IasHD;8{g_ Q> S GQ!!(* ׃>)# r ipu{ڴ'QɅ:н=o}tX{dke1?5˒1ki썆;GtPd H[z}ՑƊfo|UQjjMtc/~J9|=0,eYJz1q:9`R~Rl.FmѠa6pmw OpHY֔TXz4s@4|~< C.R8AUQ"wK 1MPNt.~=$@ Ħ`,i07"Մ[ebѠ ]2q Hdhm'y'DYɫkjPvv9ym;RS^7bRk2آ֧.ޮNyo Ѱ8~e +6w|rQ=I lnUF?hyw2?iN&ӸEj~(^qKY*w~ 4k3%J|Y^@Y MнW0~O'XG#5Kݮmx.HP|F,hKXid=FX~Rr@2|-e\&1UW̠wtpD}jp^T/ O#cɖ(QȟS%,Q摣[_;Yp9Iflg)u͈6Ni9$yyS_ChaIk=90^ρl6[mAi7: RZ֩n2?'3tۋC1xR iVXo2b_X -T<#Wޓg.13㕸n>{fΉc'ztSF'SM 'r`\9]Iav$Yw0I$g LZޖ:7[*p=#{+?+=:\%̦;gA1}~➩J>VC{w`ۂ[,Pw 7$T's%/q3 wz#ݜAQl%oO10 js#ށBIޘ!X d V)&bVV̤3 uh:Y;&}}Vii!h nV5[~]g rb*</I!m|!O8Kbeqn&s-PVI+T HW浸k0TfSI1[XʳrNdk$om+Fp+Vr5&0E?vd e$tZw%czkvӱfb sIdqLW첊OX z*@HUA`⣬&k  !&*5%ΓД&[-xMP_g1vEu~WbiYAs :hD7GL-|ֲe[@+^TDpzpfa9gn÷?¢=|nMl1^.err1]ƞADcKs2wif ESZ1ʭ YHޡ"8~Oa< iB-2C >A9o⪪E| .Ex9c Y`\Qݗ?M}Z95pݒCLM\OEZ~]F2,mhBvنq6R>H ADZ jF[~`J,#3~Mܞ>&Zr W,'/^;} \itLJMN#)s`wHONm>ZnDq Yu0dkL{)1E*X>ǩ1`CߣWwlթôgN W TbSkGj={u^&Ten2.]+۞*Y4\PM?e Ba[V#*7BK}C,|C'XeC6@@1鿒")YlְzlΓZ8Ei$V+tRS"ZZ{ᕛ1V3!=r2Q,)+uhJ5b@9jB+8CtխOy"s!H@h9^3#EduZvl F3O:e{ugQ7p`!P!#wR0e /sB5?ffp0d]~jv3̕s|Լ!%HSpYsɌc0=/wMGP̹3[2 Ovuv`$LΓM ._4CX/¤5`bS 3pmƉUN,^*+K")\T]gʽmd>5C5&fv*G$k(7GDJ~$n |=$z>96';bDbr7-ڄmu!aX5_{,NV1 KKp\_),U]*b &ㅷ{~W'A1;uA'͍Ijƨ`~hLDl9&:My!3/]lg3aY-@b4@.ec,Ī˾LPdOЗVNutb!;S}xdaw@?X@`s9HHavkS,K<uBs7d +r)`dpSM_i&'EnjFmw> ]7֫RSyV:`)p RX݅p^tk,U-)eg1!l]K7zl N[@ E߬7PMWv.rxc9ф>V҇4ňc킯L`Ѥa@>(wJNl'ۓ( (¼v4͘؇cc"D23+h:F*kXtSƖ)X9I6m?ypT*TSvnd,/T?_O'h7pDK]֧YSvǺu;!  ;pm ",GMDo!R6= !Y'gW"_{l8]MݕiqLFq!g?0e>M=@Qj[AԓU M"=bg/?wGxaz*8qYMqpL ѽpʺI?W*DReN>3h9EyYn$nb̾M;:x90:o 1UY.yn0iݍqPtl)`0Btgve6 AӗG;<*} 2\ ۆJU뺶Fe]T ll!Ȯ*kC~AڌY'Б6= s.'(Εb>ϽT6]dSTwMcZަwE] ]Ge.p,ȑ f+b> han,[DF2 D<6rj-: T}:K^T s5Km}(!/NZPtH%~8k$]/ŊJ9 u%/ rH+ e|v cTM$duV;^ $t4tD c]`O[`o7N]}`Lȗu(LEmV͓kSx A7Npk|?P7% ܦ>MY5CXC:}ͻK .W3A 7=ZT~CmǑ^!WFwc.,A lkoilSڽ?=F0ցY|ya%OJ w ԜwKm&\ܖԫUH5GzV(%Š0, 7/R[:2C)V/b6hIΌ9Aಆkf:H/$q۽dj0$"#p*w,/_K|`tT-- ӡG?>(Վ{C6Q =Z(-Px c W1 >,^RxxߕgH*OW+QT)K o^s)*RN$N;!l=z'&ś!!wފLjqڙ |6[k:9;M6jQIf'O٥}$c%?(M/FVadߚk)V:YN'`5;=|>xWG#dek$vQI4{tTU!m2W.Fy;u:ˆ9A.Drrhwyzs*;-޾32g7v.i!7)m}b 7$?KGgjh ; |HUpu9 yeqflj7$k\_ 1T %{5nXȧTn TI[~BM0YBZ:KO#뮵Xd9] %+C ט_j [}S؉~:b#0R#AHۙ_B0>Mn)0dEa]Qab3uN :JFY1˙RJNL^`|W'4ߤd㌷?:qyD\K!v[:xid֗22Cg8s0/9]zTe3t=T8) @W4ڴ!Iӓ;l\g<,_\Oq:,> 9ࡍQ4ۭQ ({1a{|tVhe-o3TT=ռsDcݽ꒸bq>v{>u#&/ 4zm;6C'^둕=>Lh'|)fCM[Q Fh(Ђۙ]G."a9uK\5J{PFnQ3Č飥QVF-e8nߤ?5,R1pm~wեը0ͬ|*V$d&l/q:=}+J#?DžBjqͅU[&ɬm!SU1]T7+؏wF0j%wQӵHl~-r\h@I"1#6XGHת4sUq3U)?,ƢU0d^(u, syr&և,8|B|ɵ >ӭ( `~IHr Tʣbnk䔛(r`ָ uPvK|oeZiԁ_[nRD6zLV xy( a?tcX{O;Ty=6[$:mpqhӽO {%pT.ݦ {Ԡ)}e|`;uJusO겏R4Ph%qg1Kg !!Q's5ŀ{D6jVXl o5\2k-eIn 6)CmFWK5<>`r1SG\(89sp3lk g܅ӝ,ߠ;4BS nE NZeߒpZ#ls{s@HPC@97rYPAjl>" @vOzH`c->U| 5^>Cܛ>zVWWAkeP"幍M.ĕwZf\ONh:om$mԒ[{ oP5v%!n1WdeRy\N glHܫsqosF<8#BW_l*H*uٴ\a 0eIUņf|sc&yvqvʊew6u{Y=bjdbV qzzoJJ r4^ {.*[QGYzptp(oJ`izP0%`1iQxwSzF?*)OT䑴tAӦwdj= ޑ,ğ6 գ@g٧A~B\/. X^.X^}i܇)3 :t槑mW'jKkT= >mT72bnX3jS˴™FFU_PF n$3ψ~m`ڋ)H9u$ʠ b,qwH%]k,>Uq;mί9|N=|Ea'O z+n|u,` thR4jU|&Tx5jVi<8Zğk>hH48=4MK_D:¥Տ[ a'-]6e1Eʕa"rC/|쒝a[U+Y}w`ZoʁcFw?Q@@4 O]tE9nZt=aoAlDd1KM5WT Un*5oͰj@ Tw0^՞Cm<-s>W!A%9[q rCF0Nv-%&|2EIwdZ`yAb(p0B@ pJU \|6EWYϼU鬚NYGΌWiD2"I6XGieZ60C(w  r.c㭕u"Uk 9OIg"ցD f=G"L ;!ia!I1>3U5%yω4EY"Gp#,bo]B֋W/dvB%gO0 I7 "R&12\]}%J o׮5<uMK;z?sᠢ`VP?LF2C`OcA6=3;8q* ʆ !,4akb\JoZ?IrŠ{r ODq+c W+{~"Y~9a؏q%?2'kRoR= ' g}Ab= ۱=mpXΉ%( Z"uaq8/ʥO's)Kt =?vn):R @ƔcqvHJ;=@lByb ۾([9L:z78Oi67f>YrQJk\̈́td G,K+==t qCகpµl#aOc\M`v?LNZ:*#&X9 07}R [3O-%/ N$,kd/LFmrvII \T^ZұQJ6/L} cFo0x-:4%|I;)7{z Y^:fvͬMQMg׻;YA\+C6kY"w-Uz%9'vAM#Xb{"er@.vkjݜZ#*-X:t.´hɴ}JRNj.D7Z(C(n}nm:!i>g9X/O%Qޖ;s}IS{YF_EB 䭤Ơ R85Zs쩲O3F!kcȟ#1kn056=osd7pRgܐԳB8RnLѡLh)z8?^@@~=|֘{d±†|Oq#<߼])]F:@zGz\/ՏvLdtl~9X,Ox&+J!BsD 4\FBDLߡqqN1nsX [V -zgҥD'Qhz+sIF q`= ^сPl( 4r*jl"HwWbD#SiAOm?v*B)hOϷe0-Ig&-}ƝӘ LefRа OU@2uz\ L5+Z5%N[$JǍ1\eE5D%ybuXL.U,I"@kg|JW[V,6k2I./wi.<:KK(h& +Aqğai:Ff#7Rq_c7zV|AI, vGm^I".nPwJhDhNRg^ZY䪭_mJ!=:o$™䐝X(jC(z ɈXsP|8,h*H:BOKfxP_N= +@_sPV Z{&h\tgPP ]?  k -v2kFyhoN \Im#rئ0 (І\L>xp]xTF`x/F?P|l.`AzysIlƆxCrdCxy嬬cH$[Ggw:;ĺy:FM܄I} xdUDbZme4Al:' fgK# 6p+@{UV._d}injk +-S-?l;)y]+G(wǒHDORKxS O/_Z5MU>jN/,t=UrJ1A,|Lp{ Z{+m:((S@ϕ&Oa[-EE:~ W|Y&34l r]7S <[ɗ w|ڙd[JB@8&u5OB^@WFr/g_ߗ11K7Re{TҨ4o֠׏>xs@95<+Ja!giLW? H܁ͻŐ9:PThj|D/ҹNI\LQVO +F b~l!+6xH?$3m]ف?Nr?yä_w\xJK,$5׸2@<*NqRz8 p<`畱19;\.h|ޱ$ڝ]k=D@ղq?0~ _lR>{g~|ф=`J,$kE+4"K|pqfe$8=J?#dv^*LDזsy:ͫ[Ot꟎jSZ(y804Ů3AS$N%ݡfw@fP=c v~R4;&+˼Ewq+j8 f(gMwQdҜWIBTeV?[O^ a\%╫e2ad6EH3'wRx:r5W!BY G:~{ݴqNQU .n?B%my%%1VqT\ޜY` x=Jߤ 56)E0P>"Ѻ% ^ 7 h(y2uƻobsԩ@LTMuÔ}ǠHs 4g7{F^J3^rZ[pπ0"g *W-KnA(tyS_?HIb\EN5rw|2zx\=-/ae1Vd:  W0Sq*ʬtfpQhY ebN5}]Fw U2E1XUE_#CʔⵕI4sj>1y]+Ҁu2GY~ ij_hAGrM:0Yrs<6\]f+Tհ6udE.o%7&:S Q^SE68 W7_PEhbƶ"wJYK7] y9e^ ͩZt:$ .; /X}9PMfڐs.NjR5ϓ(WcHaDh{|HA%j!+2M=emhKTCĻ)E{:P:=džøVq禌"M>F]{H\S&դ>V8&y2]EPlYڪ6^\oQbue 5"Br*_]>Vl1@~=v& |9YpECjm:p<  )xWDd``6:`bdS:hJI 9i"a݁](e1AǚĺᜀtU I~JTr,0g(Cia^A9m~H&c(l2P~dȰb@U?FxY'RY#"myG ̙+#1ޗ;F kc{ U#mg*- l\ƠT1g`,Lw%ٛk˩m<4iVxC@yEic&q– |ܲ"opZwG^R8ig cfrBy& _VR=۩*DyZrS7N`-XV}s`,֣_;U7<0At; Z~Vm$v}߇6jz)P=xb ">wi;3'tԄEJ Ĭ^t ^-ys%MG1P-}w;Xo<ĥ=Xwsi:=v&ʷn(wKEG/Nw3Afn\+(cw Us K>)մ'=Y43G$.n+{C(J|w)'L%\ ̪Qbș+u6M4XBx<\ϱ -4^|aA"\?1 ؑ&VMk?24$!CC.́gHPA<-Tb/ g>(8_֝Eį"n;ZN~&#n'sE*ҫ0Mē/Xh=gjܕѩOrfoB8p۟K7ژ×Ua>GlOL;G s[_bФLHtU*^cϱU )2wOG6<Z*û&k)|BXҠ#:21@[=j5],ݖ q#il6A./I+J{kDhL9 ג(&)qq`VGeh+TXj|SZB2vO@C]07j;<&r@jVR]Ia_V8C_`NɱMZJۊmO52Ѩn Iۖ\q|c=d(z|үn|tu,UKkon*spFs 3:˟Zh+O*|Q4/ r/\͵bf"E1{bþ6eG6H Pđ"y~.w^ZrSf噗Z)AvN[h;xSs׭$(9-UpUk';"`yjN4hk;ois42yb[5;f<ɟ\G۬s:!Z!%pP:|ǯ'$@55,-2{^v\{;P"׌װwY>Y/2NtNAi/m;*Q9w:,`{3H9D7-LՔa ךZŠdS?7o/Z#[_F94ٵץ3+>w8'&HkC]ְ"e}]^yh- W0DE_?j.]d?c0Ga#4~fdZF/ZGr O:ŌR7^g!D5bE>dI4NS4'q=lS9¸sqGAnIeIxR]kE5t2+rXg: , ('6HӺ'Ju ,US/>/yX+iu,]^!eQqh el^?6`]}r;nkg VzҒ{+"}6pEƁO. C.b|bu˭[Krg&-gRԱmZ{$]RF,Z6&K>IC,m00jo߬$QYrj*pnK0uEsu"og*ص7'؞LJxbC߂D߸xueozWdsv~}0VYuYEue5 6Qs|i==Z<\%0)`AtKM 7@r3i3?)(b*8CB\焰 Ol@ʘ{Њ*\Ѯ8ؘn(TJ#gz|ہz;'ULEi+~}WՌKɟ:юl<$XټU>ܟӲiQ2UtZ덖խMҚYҭhKR+lY_ЦJl'{PD{༞=ܰ5ULz:5+..9BEQn@ d4a.?Tſה,p#26ꡗ-1Bƿ=)qe?Ǔ=S9߭P*|<  GRgdJj!h@= #1Uxܠ}a PC&&Wet_ZS>:^uB*M9ig Ӑ@>'$EcZ"*qb:R̹جi<)dEy`3SggP ^>lՐ$QHyBT}FB5'߂ +c I0ĎR[Nledl;|[][hԑ#Fh|ENϧ']be$`LWsS :3al3kݿm)5fR9,e",{YB[,6&>8h(!js1/5a|U(0 :sRQ)jEMWb5L林:c8rh /Ct"LKV7T8p[:1¹n  .0lz@91:s)K4԰ځjlF$*]S0ݎSCRy3~ 1uAPVMg6WD2"ᦟp0+\IljӐ\7u4&mvA]X]2$aԣfKLàM "t,><:,g.vAޡ_bԅc{<>`](z8.҄oA.uuzC<ԵvK{-۫p1uٴw9f0Yh5} =~v^muoHYE/ /ֵ*o[͝|yЖ>NG i/giu1؟6,IF8PH8V If9D'ɋSrEUJD35SǷ@_U:w˘58dP)0});uPIyk:yG?C.@^K6)Chflj-5>#wϭI3y{zL}+g$W$V]>r76W [CS1|шm_M:55TKmˏ"?KY tIݼ/m !5_C ⬏Vv|9amUo/ tPK^IlꬋD*WC&#DI1sHS].eɳں{t5(b*޸NH F (c{߁d^6zVR^obNQ4AP(\\0Gy:f)@I!2#iEQ;ΜA<PwA똕= ~Au\]ޱuX?85wMj6d89.INj-T"$ wPif^y h)ک#I#S36I;FHALGV"pVdgY¾X!{&bxtY<̞CXpji gR}kTPiNzܟSN]&s\9Pg[¿EQdJ݊(i1Ba6ԡN];6J gы\>(ssah;6fk@DG ) ,Gp|Vߣ)#n!$M"Yܽ>Թt>p@I9hX94\ N +`/.2ʷ,Orv{|[F]Ñ a+o >@`;9kCqf+vJ</ITpCz|pRV҆lnwC/$+mo3,o_zRZbz6c"e=X:$l>5>x^fM :͙7>Rkx) BgRw]825zlQf䈺uK=&, 2'^=zZIT'|,gw›#\'nV q6r>%Y.֘1sS'| =3"Qhl΃0wl }\O|)(uFUG JH{bd92v=~ڨ!(ao_H4B@/#1䛗}';VX&x#R@HYT|~~#RlkBz\d-Hhe%= lJiV}pxh: K7לrg{(I&-*';zաhZa jѰJ)n!)}t[zl.ؽUӳP#0J^Y+)|g} 7ud$2m/e$.͖hd-[H%*έHgz"'^IgH*<Cg̈S|"0=j?2TYM댐 ္=swYk{|3/Ջu/ z:ğ\0G&8'wi77,V5#BrNp4)$>1q>'hh&&wDշ>L;c&vW@edeT Lw[½ (A)ʓUM9_! kCH |FEEtdąlEua(atqDZi(ig3fo(JI S̠ʐ )3`;"e$⑔)Xmw'[8tQ76"Pk f$;-=!zO]7':QXgH_Ery | GKR h }+Y0jPP} MaMv6~p7+g%M~'b/M>as%*4-jy;*s"йkp(džԅw}]!9P#kR~zy_Arx\e)J#!#_ǀ=Ԛ!]0D6FpGV&##V`iwA|<%9XlZ IK$[8zuCKSgU$ΐHr]Ӓ\B[ ޷2uC{n۶Evla(huGwOK7O$ z2:-Hc.J0KLOOUuo!E'.vTmW:_K;ם64W+qSM cb5ˇ=/$zQ?ub=mM2d,1>ieE%ͩ' rZ67~X]%|T*s eNN\./#N50$?6q-YW#$?#@" PIt{rk!e00GBꗚHM]s2-u7=m|&Oɠ6}=Ïtq=V fIksל &##Ap9+HߩC2끀?vDqnp3F2ܖd\H5Y)€oS~9xH tq^yM2->Z82hc0δD8'.n+㥰Xcqd6^@[2O6e)elC2Z{o ^>'}KF\lxcԎ'\ a'쪏d8#pQ_}:^5=@0"OZgv`y3hE)ܵW+ZN)Hxd_uD=w] S˟4 Zfr{̐(Q)",lr[i4vsTbb} <1ڳc ܘ)>܄w~ϭIJ$uj0 $(Kέ^˗6,/ރ_S ̶&(L-m8d' 3ꕺ@c~Uб 0 9{ ?p^\vtxǴbE^ukiD!QY`+bPΈ l;swQU1pc>; 8ASb\ L՗Ɏhl[>!ܖ <V@A£IVDzߊlcur8% :ĽRY,}&{_IjW:tR3I?,)É;x_}Exh)#_Q]?;YVoha5>|0|gjՑTh{JD+j԰%+YUJyv9xIDvR4@`Pj/p:#8a}yס!6t[h̨«S(o%A,8\~ԾM1(oNV̽S5-[u.JO7wt;KnUO',`mRH{ڒ m Uoﰻhxć}~Q'"F9f:pgZlȝqߟ bbm(o~!'hraޟ9 mMY<˚k/h1yfxM׃L!X?Ӽ6ŔF0pYj%)(֞g4H5 zaS}}xΌ{Idgb5K;Җf*Y+AΝGDĺ̦5R-hpn ={yTwMZdrOǙwUԓ5We9CLOE \j3ɎYt. v Vz#(t ;75W 7Ʃs!{TCK5 jJuGB ZP52cވ}zұi&/4}qȹ g+[L c`kS,Teчy6ē0NbX]\YbS*eh aKb@O:m+$>oU8$˼EDdyB#bXu:p?=q[Pźh-Z@r4$'?ۻ1QF 6mhS6j^`a_:/U٘~%Nx-V G f[xp j;7i.[ꭚgH&u%-]j0e̎(q5ی$KZ>-Z.F"Uo.WNa8ސXk:I8@mR7֜\јQoE3[\xo5NY]' ]Jzr@t b >^8:qii1`2AGe,.E ސL=*fRsA zHT4~5g2.>s[2^0y0|{*x:(סѓ[wSOòX7r+>g@CJݩ,X)NA?DćA%E7'T{P,j|ޏQXC?H_As6np_Yz.1qَiU0S>>w7|2a ~@*x*Z)p'S=Y(gcq1@ʋB31Xf>ſ*gIByδs+Q\3я17 >hoy> #m,^qaܩU!<9ֆP&Zoa*svh6ױ2j?qfǤWl' Hr_DC ,o+Wi&!>rPNy{.U!ؐ3֜y@l1%lV".SjҝjVo%aBX w`N `k7E~y?w0Nes%<7}G!"K*ӷ|T cWB}VIM8kgp97=UI[>]P.d+Sch>Uc]Q|(AD?y~-ҙs\B!pߘ`- Gz?w^kupsŌS+>m@9tvf1&Ѽ !Dyf5/[) rΣةX.ҫ.s7AS_/*P, 7h/:vyfmd67Xyߨećs2]u5@ 7Bv)U)^;K56 j*l8i/낓1>\l1ۉ1,Wٖ&P\}-=B*0J?I5d'.›!ѓ~\IRǶՒ'm:= >zwP#hqG1j v$>,ֿded$ALX(,'NEf h(%w~  uK1Gi[w'mx<iv+q?·ЧzBvhRm`υH|`Edw7,u1!T><-+FJ^؎u@ފ7>e!~N'!Ljי:iO^ JvYNo6)))0l U`!&"fL{RPtxly zxeSsI)_|Xh k:_qXL k':0F^\ @ϙ=w0? 9~%܍ oEׂ>~|*( bjiٶŜ^]Zt+iO[qp̏= l#? YS Ŕ/g B@Xyj}bא 1Mi'H)@9I#nt{M^B͕"2?.~$C*N MH\S;XD@H~>~7uL*՗0}j,MJN3yXڒE-x4w=-Հ,Uj$j̰ EQ'n 7zo?- N 4c & v&q+Y+Kfhl! 3CjK*(:d[-Jϼ,~_߀qgV{Ek1pyUIR[yyoIboe *jՄa!'jfCJI4@(1[U[`5Cy<x/8t)E?JتivcRE!, HV$L}HY0t=dQcۗVEM0Tx<ϠqH+Hh>+#SVb;1Zα(OR$aN$+4vM6s&&m\vޅ4M=? [#}pUߚɗ3| Q}O-EO˱ʕl>SUg{\wP`0g'÷*=@ըޔw<$r/ GGɟ礹z=rj^x[Fگ WH5gA{xTj}a >jțD״vPK[y/ X}`ٰ{M !uReXG'ͭݷ/FVk6,׾>4!}vaP$J¶鷳#d3b,]#5fG|}W!|:'s ucY^|^q#NĿ?ˇ (R@exP)ɟGcVѽvܙFcE}i4mV@`O>?ݺhc*5J&^:N V.&l.mٚ(e i`S¢! *>/ga.4{_LDqA(䱾n罆s`js9!V)S^boRbZW=G4܌W\[(5 7NLk+"TbFc_#N1|reqi0Em4 ty8^X+C1k%sJs A.[PM %N >%|UQA;DVӮlr+jN^yB >9cq?3qny*f8c^c nlv:Ka LkBl a>u`(ᔐJ`aמMxPfh oH"eGO;+9%&ň~un*gBA] Qbj%)Nr،/w%/,߮jNC{!k/JAuSv H4yknFw}kY@OHSԕCtj%Zz#{މ (آ6|&QuS/" EBWoi4F(9yFۋpV /N{5:$bvcmUZ*  5t_(YXob虁{H;PEpAh&yqoD"O@mBQje)^LSƎFt9y#)Y,Đ*. voW Ф*}aVq4-d@U p_: _sMJb@2K`KNv*_P,QW]>1`&`HZ&2%O4`Y?Aح.A]/3㨞ġ1ӌeRҿeTˤQnyTz$$}T'vE Aү;fN-nrI!@M ̳Aۮ )j8cpdYX;vx_b˺$,ȱXk 8(e .[z#41iG}jG,L *6~t"gocn0v)vؑ Ãp.@%(k+@nCW'=ԔerzWPcFHynF+}wn{k/蘌ӴтD i\;^=jhs!QOql?\8KMZ} `H Gj:AD'5xZ[J,VO> ?sҋfT{L*ogv3J :}DL#U%Fd~ zųT:1T;״DK'~p$!ҕPkH)\(&XV˗G(I GtyU[tA܁ W /Dw5MV$F양#,mkRՊl12<oP{ګw@9R;cjho5]wuBÖf./GS*5in ޴<59ߢHq-rp C'ܤ9an\X:1@ 5 c@0M8mGʏT54&xI"u6 ;HiTuP+Tkx#uZŽjv2SUټQݼD1(Q3}9*dHNQM<9t2o$h& ʂXt6Q2$[~}:^TH\NWW7 &#b"@hۦ0VIi>2^Mh_X}4%MUygEkvIqUbJ6GL("#˂(2:B*(Cu|Qt$ٛ@ȱN?^*D9RAAՏH%AZh.jC K_VU = VC)C<]uu@X_-/w -X*6˜ V#p^+?EKh5Aܪ !tO?\55Ղ k(KTY`:"ո2ƽ6%7. *qLQԅ7ݎPꫴ-Z?B=C9+!ti*O/dlZ;=#ch̓7o*9:ʱ_jTď$q98JxWI_s0cɑ6k#Iz FT6$lsu&EcfbA!L~St3NODoŒy<ȉ"l)2> W!NWQ/( 0D݄0Fek:"s!`v@[ԖOџJQ /Ù/;D7:{@*rT. *AqCglY&Cmx# [F\P0)`a=*GBy袈t7 >qaQ8jh00,;bB>Ǜ =4Ҧõ!۷%bNixe"^"y5O<_W_V_ 4 I zNrx(gw^62Q#~LnKEYTҗ"=d?v:X0b[G[Z;Qjex5@;.2=ٳd~0ٙjҬ{R|xWm+oFRO Zg*H_+SŮ.ek|{zg$W=x-,!4%d6'HJV+Dav|rIdJߣY鬏hnkgV@%UK_6٪RR)YR}*f;uGLv@-Ax ^1=k0(F zgG_-_9!_hgs>^/ }/{ yȁcn$E\Tf0wQAhϫ-&'h @Հ ,90uArW+kva]qMRJeۑAG0vWZĬx2fO <6AP|rcӠNG瓜/7R [IE[2->]~1F9형|P!0UF-XgcU/Ti_#+FGNxbgt K]Urod++.s8[ #esL-QM&i~L%{6 y;*;ϒ/IΖتm$lX|Ld&IPG /3μP`B5 \@g~b7fhtYI_=þÓ],T=c.N$$[\-XB]|#ݦU=Dž v捅Ջ`O|Gy:gSnJ5R@ZwrQnF=Pǔh7#5, ++Q(iNz?YodB?':ʄVħs51`ddLF`}b9DtI s&IH2\>^y_":oeln,!-Kw3Ȱ=H7 ;C!pU᧌$Î-ߣ7Ȟ[cg[c'':5Ї}އ};Zoi   `@JyZFP{|htdúMgk{<"QHhd!]@X t oCYs ~` ډ_%WLc=mZd vrv³}x޿q{p\YB߅ҳ<:vG.S>Eb|Q`H% 矒πq.:w .e[,rj0P&~^H"7_~RJ :A3L3#kչGb_Ja5sْQrwn>Nde9wOeU:܉P6, {tܤduG*mw zp @*nENs;J(8Ch p1xrr<㛜Q 2 Ű`ӆ[4;:7s8n(~+p=;|^+Y0,R.Â>}b8")Pd+3 ;4A-z6m.q8xm#.oP/\TkϷ-{`+Ni`iDA!#OB񈇶$8}X=iӇ%əWBKK]lښ @#%7Y 9˓j -ocjz~Xgƻm&qi6Hn+)&){$0,GJMrXD+ j_h5 ecY7zrfۊH/~e \{LmjGmZN~Tftј?`E YNmlVłU>DdlGOEǡmv. *'8g ,Zʒ )nZ-4Owb)j_;ZaogE0 g+Ii u`2u$8kVxKivadWO#q1*Aw1y_P'xѦ olRciLn l|O},-{4Ĕ6\+Bq^nJq075Gb('JP;[JsMCqp.VtRɮKh>o7<~2i&ޱƱX21*slZMGG*߿.ٮ=vXH.W0dށ d邓-O\@HB(1y]bz%&r`]st2Jg m?jc] Ebj/WxjHrzR@S >z^̳.zוTܕ8E%t|,-i\]O8Xϸz^ʃ Zl-6&I PT ^/m7_JN-] hm0Gq\EhO}9K+Hkfy$G\ٗq4ش#`a sH|izzODLlD[%X ~e޹0(bA:YP9 ;B!7'S>| ?q%j_棽cZvbOE@>JpL8O_]S% $+Kj&NNP]ۚ4v_s)#N ]2 y {2OpL|i;BaRsc>3>[ w5[tSkc3!ф/==O%H;xDÅ'l"iN0\s۱v~RW5XQi Ph7:jF65%bmyb0#7? id+w5>^/izeȾ;PM+KM?@VZ5?i,ݵ~da`w دe&Q `=tI}5a/# #;دkG-p-P`H/Q1;2,ܵ pd^h S(?2>ߑX9.s[5<"fM~G[~.ΞdߢtҢ>GHSL:VazP#,] _Lӄ's%zFͩ_1s@'+=,Ҿo, l^OT&;="W YnWigvW7\zٟ -unS=&5xTf ЬW]sguJ^bf7.XiodyryJ|\4#W TYAɊG'*E sײ,+dXU(b`WxVDz3*Ud9}Ц1&Ŏ`w:MpZVS':~7=p嘌J8z1{niR&7BI]cs3:85@xFzh&v`;7m{ WXz']7صOXS n6l̿(mFX/d\ݵ{zZGsJ.!tfZA.=v?Jw7ψF4}4NaՋGy+%6Dr5 ԫbK4CR!.XҨ_rŀm=_;]b6}6n,!:/]d·7R!4qkX$ ֆ! ˢ.WǍ=bJ\93v4haT')?X5DF{x@]%t XsɄ. QF^d oxTGQ,jesб jb_`llmv [aռXaaMz f'9bP]x;:++_RG#2<ʺNM}6܀,T}+;]+Ή]9fWc7ůy?wEZqhڭ\vrǎaBBEjtn2y5nTJ3(C1tDIODX|i¾"=OD; P!_Di7 b8^@ckTK{aoDNД5vNT;6kxx5>q_B}bg=I6 dZn),okW3)8]KJqV_gT_g@uRrdmf6G©5)PÑ8leػ;i1&D9ڧpusp]fUĜnV"_57S6c`F-V61@nN0byƐNp]3:kE4]Ҽ4OՇweGPS,ɎJ= 5{Z[xHݕRHZOzdC"`lyXSi6atr):(YbBlz_|,r0ER&pPiT02Fgm=97SlPS3Z#7Tcs+,)y_;ro R w!%\~hwQ3t7_9Rq25?AAU~nq.181eIY!j+744MhOiIXZxsp sף"v!VamV`̛*-*Xb$ΕXKsB|1Nv:՞Uܸ{Nk4Pt-"SCE*jnŊ>ރOy]@P4;r@Zi 8%:MSƊ XeA;6FWn.Kqد #,>Z7$O Q5k~zH&@wzޅ ^"nRRls;?DZEtW[%> O&3TzEd | ?m 7c§Wbg$ɊpB?,EiVzm6r/$>^l ِk#PG)- jLX^DbpC%atF Pc1%Q Q.?Q} &;P_h"ke[jGZu 3;I7qkޘ|u{Nr4kjX}wm+.km&b:-^S/^#L.q*xaKM.kx=U]'Yv2jub8eݷJBKÈeAON;[?c+"Z~iW5DG?7PVȕv*{g1KOsQtD+ t@o8V3!`mhv"yWCAfܮq8ˁ}W tDJa v0UІX AdqFu6鼀XPXSYRwԱNcŤ9|6]1 e,T#1 $J: 1fþ$ g#3PY0DJj/Q8lČpO}p7wW"3;[XV_# akxs @/68(m?e |* G iѓps:MOo*ńi1p67hi^ԫzX?.A5SBՎ)2Gg 'qifhaRLh7bFMv_1@fDB*L+ !n5Jd+]Cv3sy[ͤ{"5X8pNl[vcY8ųE9$81!ʝ5C8".mЈI0Qł~ɒdH)k^O[_ߍ. ʤ;s=fq9`[e.#8.81LDv+h!'s(c1]Qd\4y-n0IA{oW_M}s ЉD7Bmtg,(`:ѨU 5G{k5vycj58OKF[ 9́L5]K, x*a %,on0.}) LE8tZb˛quPH(|E:eC)RAf #Re]ɱ @4"5Kg6gf)ܠ ƨ`xp#.T 4i _XY"m՚RR( guO8!Pgш0 wh~57ސ-9t_yoK 3 9|gWQ#?Jdú5_N8 jM+0EI #یE ߭sљL۞żu!5H(t2ktC L 0rbu`i~d\((m5L~Z^KV?)錤TO. x|X ػ%K0cܻdmnG N|khXm5l o4Q5'5GP( K|{7r͘UmcRq6|!D@tXazt֘(؊ƩؽLvCvz4tbi $#)+.zW z'fG޺==FUd3.Z 53ڳTmR,tR&ŽKx XԷyWT]9mM/J7honCP"~63<յ,K܎{z7~ $HRG(rd*bL7rÈ{_i+py B~ օf嗟GX5#y3sJq'Kfˡ|w|+rܣ^0Tb?c2hTH+0|mRŚϞ^V^=i1wv%󁸑e%h`Zt=>mrc3y#h P2u9EW"D"As+6 Tb3c?jZ]BkLiԽ7jt'<.ay3KUDs?^SJZx,>_v毻. 1;lH+e=FJ݉Q.RfoQ7.dNk0{JʗwPRs 7k_'%x8.%L(Ug fYOo[\$8k oIGp=\l3z#ǡ^GWcDh[SЈt/!>yzZa7[4&͋$~ʪ־Q* r y> - 2 X2:~g)/4{A2\ma'4 ql ukfHX ;fJ( E_ֺxj_aS8ɉXS>2{#qUVr/8ltC6Ң t%07 gڅr"a 5Y@C-y zU~8e6|k'_]>Q&,coP&rÁEFQ6|lO{RUM& .LѲ~u=7zwJiˣUC3ͻ%QĬU&l5+9Bm^9q3 AP1lU*q/kwO6'GvcONH߭ -$w=:S{/Z 7 oWc!Wb;kyvM)ONS)ؙvԈIR=Cy}a-0ka˴ 0 ؘIǬv6G_lySZp .b7ٝGEn mC})]lo d1]M[짐pF9}xUxuu]זHPrv!Qf 'zz{҇=@($_ FnRi ݖꚟe`'2V(;f9gH}~[#!=!(̷Oˆ_M6!uk pLd wY}x UHQ+,:Y9ź]`'_4FKZhvF2GyΒZݖsͩ`lG G͎}k hA<Зrt؆@ӢI]<7! EbAweC(X?;潯EaXR豖.Gh!8<_̍z ^E.![UF)mwwDx1(JTu1/dULm(S -DS+=;;Զ]尭 0z]]Ÿ87֖22U CI@YaО0b_9d nKSPh)e] ]7`/A?ɠ!j#+ թjᎍ} } kb !3a1z-8}ʷvZ)rЧs8 ;~LP,դj96`.eʼݣriҹ\6>zF"^ff )v{EFQd]QX54;+Eީ< [ŚPM̐\gu ϝֲfcɩGs>HrY 漥` ƌH<"1Eև xgD1>kVGi~Gr>F k8b-¥SrTx`t1"$yӭ@MKv/Xo'acb Z*+B4Hn*^q.`!B;5g9[mLɔ8)̯wV :Tb>6j @q_E.23 o_Mb%z /lw~0rKǷSF;yJJV Oɮ8&8 "s^U1S*օӂ\C/u= =S)(#QTcwwH<ķnLzjQ/|x`[^xeRTD2o F~WPf!+lGf6F/P;(_ 7T.7ͭw/sA.[Ue< 牍ϐѠR5mx|_YkeoT'g|0XZ"aX9Y4 R},#JZ{鼢zwR{'e=F+6ms~E5EXW qQmu35.,em,?| .h;mn <eż^ )̭@!x-Y#pѵ}}⡤($UGRT}=  i3tug̯t~.4=v|0-jx+26cN{DtIG;Ч,մU9G@ս֌ h3X1YEIc$ ':`6O60叛4* nr}bb*5VS:WFX05t-):~kgChĭ3B+@?܊w4n Eg,fNs>^SXU骨 E^:ZL{tL\}7håj*/vq}a㕑HFRД?{,ʶ Ϲ#>BȌ?W6 fԾDʱhMU0*[, oI 8җ!xHԳ$fy$ NbE|r[e$>C3Z쩦n1M)c,iI@cA]ZGZ nc'n WYW6cԿXY^@ȏ=zrEÊdv=В/_R}*5 'M~ yɐ@`жf^@$tXGJX#{:ZAC/#BW+ ۚ[UxlO1w=wrk_!{[/?a<bO1O!@3j_D$+ny&Fz;zS,j(ﺋP»fjWgver̛ oIb *Ǧ[0@_QIWbLۯLח$hOtU4mTsqL[&Q)*i{'fyQ 2Z]ۚ̋1IGLIc/FY G[ѠgCQߑ?,Ri:NE94/936Zk(j[saX'ܔqSa&7q]w;qy-]'-uݨUP]Pwh: 4BeOwmYx mIsþuh7Y`HDbb xI;3Zջ.6( Z۞J`osoj}W\{EkJ(n>!a :Otj~L,62v sr{Տ6"c #,s+_[;R& kFb|B D9t*pdˉsTNb<S-ٱwS`gtғ1:W"+v햴qOh@@zsQ ꪽk>ML-bCo,w:2)zLv \ |]$};0Od3I֢7RRR I8h.OD9]ꅠ3lI1AZO3R OǦgZWey3){4Nʳ\I,()ҡ0(bRi~-%% Q'لP*/s+eD?́t,mnCc}aЉ^.﹒Mba4SPYк[{edP~N}'k4*Yݬ6̆f\`H>"P/m>%_&yT- l ;} eI 8 %FNrTDnY~V=ˀ#}L/'yh9x+ū`%;s-gk> >N*Y eE 1h8dΫwN6D9>r=h}4{ό7{lz"u->,hjJE~Uq `{.ی#f#aPoWBYAMWm#wʜU%]у;UZB|7eJ`VY9xȅ_2u&L)RTqjs^|WR#%Ηg*?vS?S8UL9aH(4ffJB5Wm}4E.f@BZ~.*I. ˧bAY:ߘљqCq=Ook{^5,Wus6@W,;_sV 1a<^u u ,o'O޹TEw4 q*;&J cI1D7 1)Jȋd׭@}kt=3V^b >o[㳊n co|ŕ~eKNR}kD",bO~_{.R/fލ_daZҜ|'?䭢?^Ռg8&!ΑC{&6`6mR-7v;|YDdʍQ ̶,GuQvB${vŁj?3 ]Ex8q9oЅo¹HM>t|OX>b/4da4$wD6,[eZ*n矜bmM^ۥ+!,0#jF 6=}؎3D逕H-$#p}DۅgFSx:5t=F9k I_7K ]d3 ~_ql'_g09$ȔF[m1@|6rd|BPqQU *,:_)OOFJ7e$gH[ֽ"i"6\-^[cI 6mkNXmB;/5|c cW7{v[盜uPC.bB*tnK tlZԦk:g4vndn?K -C r{\ZWNKz/øq)]DFoEe "eQp Ƀd\XBKaHf|%~2JT$Klug<7i!̃D3KYjd8 c+eR3ګ}S _'=I Dj7jPV"SJC(*'̹DHO̓\yBB/@>8Jc̝/A/wQshJ &8U0m]ȥqÏ#3@Z@MUuyTpۧם4ϔk}E|۷ØTe#C&5l;ׯL¹CUV;9=sg7L"h%%BF !*EX< ⃬;EimxA[7̾šgrn3|K'^:^0ᧃ;"tP?`8b$Ӷa<|֛Y$FU:i]D$?`6N1vOvUQBsBh$.ʙKzI ֋^m%lc^;FOoOW;G*5"L Ix*tZ6"uJJ5ij4eSar+V'+ǢͶ-bX5;{zEܟmgMR2nGx(GLП#Ɏm8@T(j*_?hY& $[$P^h;_OULsɏjCۭAE~d.Z r`( ÿ^n+sV1aGHE@c9|Umt1u-.>]Q*S"U5,1f|x'C?sŸ [YFM: i$訸!GO'},Ano}@:drAf3 (_ ᶜNHP t"?DϟfXn MG:h L#8"fPv-F}^Bm2)T5mal:+&Ә%-S? -F:&Yo) Y%MK!bO/'hg<+|peĄr-@01 V+X$NbhԕwkYi=-E㏸3d"%+A0zpE=c_IMTѭ<:`ph{+Id)`A'|AQRZRgUIDY[&rX#M[`+"ǨcٸP9ٜVO11v_]O)h' BüБfڜ`j=Mٶܕ_#cLDWCYo WVpttP:/änh]F1vCBG➫``fOJX z?Y o"!v'"g෹l<]g^6z}0|ySq<M,D$!BlD+w]&oFeIsH 6 !ZHqK\b0 dV .)Q85RJj'- Z?1}'l21φ{foAcCQC8V!q_IKW[7SD@+{ysTBqe:^aZeHki;giփğхBdvyeNHEEFz('3_wPAZTF}٨N|bџ)&ߘdO)}.XQ3Ԓ6-}ni_*9#HP8nz ?[gCqAaS?W׬;:Jɫ񣭤dj˒r:@&oR^wHǠԨ$PSe  RJ^ԌWcR{%nm1АETH }mAAG[uɅ <%%TaCSh3zʗki5aH@}D!Inz޿ u%Ƽ^\ad4%.6c,Tߨdf`-QzVhr.*1obj ,-}sX~A`ÖPh@KuXg"EQcx,>SiՆqۂM2Ό;#tW =k׫]6̩RB7R37O0e![I[$hR<\tx]_MdGb}a/{_۳gVOX 6U̗ϸ /MjLx+^ӆ-fl֠_uD_ٽJ4cGts|YGO;e/ai͡s4Yu*}}]lC1[gM{R]M9`BZQsFX^s%9]0yl178nlKg C~$qlT0RrpMvɆ*nl =H^SpZ=ZV1$PBqo\g@-P B6t6F몬U`8vA:@t+37]O4HP1p\N}K "fm{p^eHgTkHj*%K9< @IA_)@>=3‰ Q% lޫ4g!#{ @\ڷG(mG ޿gcMuLLQ {~. R Rcc|`mY2_uӂ *5ӖRq>bE,s3'8ئӷE6uG?j#P90qSJśws[t~I-dC&,MYLwNmcjStuOdCn<,?P.xYb"3hY k磐Pay$Hhl 8EIzn++ EiBrm&:ajhpP8%ql7?WOMHtpɽ 77nJ&urq6Ʊoi^ { $4Yѐn.]SGxR֣[ư-c99 pZ'nm؁^Ue|e|Nkrt{8jqd'ǩ[a~@*M_+Xފ34dT N'; ;ϫY܊b,5ȗW#d29QdM]{b me68f3{&1Q !% 1!{DoLmy! *㠳|a뻏D*ة5'>Qro,W1蛂e=jj8֠]y]RomX"?vQw-n+8x<L,@X^芋324`h/~ʵӨ?7sS}q~2 I:ܐVln">'I 4X:]Z5۷rWHٽ)-Y 9'ٳYhwaD>S ? /(԰'^J@KkD@͋& {Y5)k'AsJVwKA&[klBDtj9Jq1qy=J_-#7ӉGW{ˎՄ!ZpnvJD-ָJ0HiuD i=;)>h0N"yk)+p%Kw=jfp=Erӫ!\e>%CU45XR6Q57Qs$uKÎg=!u(A{fMLUs$Ds($(͕P4Cj&'TevJR$޹'LnJ^h.}HބFrˈ),` hle,SKvt:]k_)_fVCW4B@$?*wKT; vWĵ灳 Xx} bO I1OҏpBwESفF /гP׷Y QkHG{#|ձc@=ufa"ic>GR+a DPE^iw)S+ZI@:W*)xDև9?ܣN@_߃=~)ڹ&ߒ_-*.`I.7e*Iކ-qrk7TUi>=xF!©6Jͦs)6$J +a|kgLWǨ&4CxKvR^aIPf3ճH%+my?W靈f!K[&h r3ᤇ'-VYHf2} FZuSP!DlD5)GO\=}~y)lT5[GrJϾxdͩyEeIےo e}6<HǓc?N7Wze 噇I γj:8sm*#iưk$s,q4JWoB?S457ǹ #hd6tB͉ iF!&[ ?*_r^n%6&S oQoiuY|1#҂y=%TgTtVڴ52vKFW9K\ XZxf{LsxfQ;ү/C.0Ku\ϛ_IfpUm:~̋bG$I'@io'lsm[ |KFJ{DPt6L j`>+\t|y$!ءc=R<lf`j. I$wh1ٸf4\i- rY J2/qEvӏ(@+hL4mS:[}ɈGQoFʷMZΊ &Iɬ4yᕖ®ܾG:~ph qOzuΗ#x3"?c/L2YQ;A2ȵtn! ̙TSm{ۗXݞR?'DY3|a=ȡ A=PP@;<|8L]+ܶܺƔ/O! 6qTQ҆:3e˗|T6Se" a$qB(B dxB@+xq_> ݎ'ڈzP5_<(6,qEK* U:X]j)vW~8@fo01 @;* XA &9|" /FYelB\oiyѦZ>%vfw@K^L*6L8I~rY2 yݩf|  Fe'\tE-`-4[\罎"gt>m !_"_-qsm濤qbm?*WX <"EԻ_͆ޓ%EŤ: 3¿>KŖD`]f ׮O%@`0I*nr`M(@^zt4XEfTqD #==|Va^muVٟ1BۡWCPlB.dc 4lV5$ 6S3hKb87bAۿ ׬69m{Y}-Kl|3x,9G4 f2V( y bpT&bs nv4l 6&Ek)Iks+u[A%ڊNbT&n fu.B>y=o|#p |)3BNG  X uq3"YdjӮW4c.ED_4-eEAN=kMp&`-eXXnquss q;lr=SIŧ0QHwPG$m)74&J} ܨ޶|{ax(kXK]&^l` Ɛ|zu mIY=/'kc[ j#+3.DT&FDtk~.Fp կ<Le=PAH[0E#EI,0לF讁=5̅C q ; LTֆFv)Xh:-?vPÉ3ӜjZ5y!h +u{+C-OtXߍ߷gSk6m#sI(gk} ` 5L;Q }1nx? Oe' oOj} q뢸UKѿC0vʹkL/ DB Q7B5yaŅ\ B3-xW[ D9l)J?u ("iD7s͙ ](8eH)3cxw) \wn8|EXOko@Rs!p7"E>IݙLMSUC Ρ25[`x6i fv̢R` f_\%pk[Q2bU͍U7NazE(Q*zLkC>h \UX^Qb<=,`$Ea0̷ky2 6;d L3^ηG=z-2ݎJ1P?yaxe]x@F5 1V{,,xĆf{!1 W|ۚPsrL4KSҢ)^ 4?,40סSIA ,.Qop?鱟Z$eƕ/B-~([P;/άĈSM9|mIT'WS b,y޾ pE#Oih?(GbJz ߛuu5zcϒ;%(הl 7nF#)=>sj]&:Ax9# { y10.u]?\q{#MIUp&&7`|@^s̺]%aNxUeނ%@W-e! !5T;8aw统I# ]X{ P:E5;TI?d3b0F\eFN`y3fHA{ w؝₁CVHq;|rqi;{7W΅˵Se ,;5. `6:&x#xTNƾ'g 6!^X)C^(؅y0(G8bqZय0 . !Y s(yba%b8sNPuL[cyDl_jtlO(_љ:W)qHSAC\^Tk.c'/I(V>^A*@nOxۉq8 a} ?!$#{??(Kh7igvP[%Eg#'$(WvQ2~jEr=|71fI2ܫ?|cbY +qwcWRҿ/lSF=2~hPT>661,Q|K0"b67YD(`S;T6F"$ uNmy]{F2-<9.\ Ȫ)CRn;8GY(vs a>au"6&4ȀQ3.CZ|Db>pߤ)Q |oʄ=mP ޘcEtVtOz->@LzEJ֯`דKrAc?*T>mh՚S󾿓öN~>1/N*lS mޚnYN6V7FHfFD}QM'qs#3fNjDiOd 튾A n։?_lbRhC%&ir#~8bN%UO ?$>n;{$󽻯=GZ`@.)$9u/C*vfN{PbΣsES i\XimdF^UZ/pPd&kQd:ʬtj2x*X`} ]Vx<^OsC& w{nw Ô9ɋ[vyע+:nH׶$uW:J5w䆖& 3}az=3yFQXa4vZ;>N3.{kDxr5F?ԩxbS5 ȸ"єM,]M h35.<_r إ<:;cN\ÑedI)<%s$f(֔I? cWon*)SL ,K_.A]3+)0:KHqֲo%1v:@&o@0qı\E=M'?>u +u{OsȂh*mL)yM @ߦ!8lA|b^sI~zӼZD +[(@#]i+9)2[SϪiL?bA;7 0cvM!p x7;Lᆵ%S/e)}OkS0qJDL7ߊ,**a 18$O)p~T>V1&E<90y%[nȳR`@$Jc]zI ̉J!y&hR'K .k7%{A+ipԺb5ygH_}W (֭x8t-$2~Pԍk0ޣaax9tAfmЃXqW 񗲁O+.*.𢩏ܜJڇSשkhf:8>ϢU n@ f4VkHKrqv K [ӵ4I)Ĩ~173@F|-EH3l6eo>oWm/nLj>uW8b)ڂ(Ś;;SE˧U?p:|<y[[@Ɔx/g񭭽 #43lG0 aBga݌#g/nPH%uId%jL7r.2S) ^O~aa2-Y50߹E8qTUtY6%_A6ۜ|hCO},wЈF3+e}Ĩ=TE'^CȪ$S s>-G<*:M3G@M;Fyn}TobX69IP3wlOk%x&'5Bs-}%t˗V`@}vIm Y-kBD:!ּwx2} rCgkx{)~>x/J"U1zE+ V0=H!zV\7'ZM[`nsKQ])Xo.mx@  ɑΝ.7,Z=&?ry _ quO?e/r;Ҽ'-l[Y Pri@ӡl/aI ;p1.>]p=ݦIǶ~-MIP:RzXwYa0 A`۽u0_w hֳhݏW/!+ɸV|+؃J\ Bn~uHS-LBA9!8'ݾzXBhmf[q/ RyBI)TN_g;F`(GLOXGy&S^mjG3Lq*.+Q|T5,v.Vȶ51(Y-e4A܀aBI쨝&op2σeQjқB~&!9NĶvg 1 F굏@! Z!"ENԠ S;b3U(xvI7Q/@4^;ɕһ[چ^p{2m^w~{^|¾:-Pqo=%O5%> m98Ø`3V ZQǯ7.1 w|aV{ܦC8Rب!.oV0!M R:UJY]THʈ$7h$ziU6Q4Eb0)i}`Sy0Iݣ^>$J˾v jW@a8TwH`KAo& RӁqt[$/Q^GJ^bF22#}GXSojN>#ASB:X;0<-g^cs`/%2` FL߻ɽ[NXU#%ه`=~r$qP̒[H92dâ,xA?.lRpLdRTr66p; h3gk7zsl2ưVO oHۈ GJDsgma_50Z ZDA{ ׏f;N]mnK b͘5>;&a5.F99)zgFda&Q@a!j![0/'֥qcZmDhjteV/!$vrvYV*KlGtd -*`pR8퇈v;;1kTZw[c,(Pd&w\&*6SjUc5QL9oTe7Ȑꠇ1"}XlSXWjY4,cwװv{k?؈h*#سc)dH$VMW9?iER 6 |^ zMnqiҬ!<,lT5q*@acy!R,x*p]s/Bxf&P ^~@7"+([2tn@YNH Cf/*|nOhyYUvGИu%Gw6>`2Z, 5WhLPLW^]I,D[)i=͘YF U&qę昗Xx]7ue<{bCcIq$-ϡllڵ'{K Z6oPwKtoʉ}pd1"{A퉅.5Dn\mpsKxePD.e5'=; L.4qS]"z8 S]LXYLj*ӭ7 ,P ۆ t u3LPx!{ I<6=YWbx1 !23OCEѻ9o;{ ڄxlEs]G(rD\P[{o-_E*r`+?@R—Oj] x(Q%UjC{"ծ|=^/W#7L-ܫqLy۽t%knw:m.?_Fi-32ċUU}h/L*ቅrpȡ5S\iF5it9J^ȡ& Mp4VrJu9kN v\*S:ic^\d|V,#2j,akp'KnGm;·F|wX2|wYl<İOM9.WڪS}4#OGDL9BIF+ kP# K/ExV{یom<3o2rm s&7$^kH'r4XNg)hc:.oTcvLڜ'.7ѥq.7P̾ ߣQ7QG~x}BTb Xg[eWG,j TPAԶoZ;Ac%R`s|S+NY*^h㆑z5|2 $MmS)U&l4N><6}T= W HDH.?(+^toW23@"r}+YOSr$]HO~ 8pB:ǭUGk'Lw-Ykgt\wQ@]gB1DinTcI)|QRQ2n ~\A=l12u(_ LjĴG"֕'gQXr"]mHA5xUqoY*+Ho9o]O]Sz~ye ;5ۃNaG>p:?Y2tGd~(T|\C=U\%\==3ɝ!"J&)K! le韜Jd< ʞ Cx8s$@\g\fW$#'a"9 GOt*Z$FB9,IÔ |sn\wUp$[փ^=S/@^1M]SoIdIq%nӕ"*{dzTcS"P!K)jYml_ƃQ硁籹¥Z4DVB7',bh$xs_kTV6$bqPBT)k4TE#6 iذ)$ ȵ}5p%:C;|W 9 aj}D& 3Yٱ,Ot'+N*gW=4g{d^ \pHI?]MQjA4REkf^ހ7|inm8VJ$9=Ey3HI\:I\y5%GggS؜uu43ezDZ\5 &D 3Y6K )C < 65`1gdk~kwobϬ%?wI0֎Ȉ?9[dŦQJn{DBLLVU._MA2en.ʄx$;d[8 . xV˝v9_,bQQRÒY)DH_Y ũDRsUq HHn2Xw}G:(q:A{l!V p?{=rMV iYusɋ YbwBІ BЫV^!(E}ErBgH Yx<|<)}'$0'Cj0Np rۣSpWza74  l lK̥8d@Oہ ~ cʸ9|&Jzq q"+׮-V)P㆙fPs)T;V-X3(.|P"K1TJS?U<'԰2xm ! j2e GMm35)|P3ts)B)gZXtV6^ˬ݉^TRRM'M0g=4;Ee.zE;fdLw.?{DIVJ]-P73dg1"j0g=F x_jUs\9M:|q K GX'&ɔb?˾En7h7;h`Q5PuⰥ?Z>N@ȽV.c+oJctoda{P"SʔEg/ c鬘7 Qu0&O7 Dj/fԲe4?^P>4Q(ͷo{ M=]S7{'{_ :BS]CK"Y }Yrvs]v/tư n5⿼ Ac_CפzataajHjhDJd~(tT,Hn~p0߄D2NTϩ5E N[2ϼF(R'}-^:]KD+4c{Ie{H t!᎟M, vI=zMx;[.7QGo:+ܠUcun$lԣI6!gQY 4:b;m'TZىbx638ƽV 'S& X}i#4ar] J̏ŝt,xUC|Q\9}h_Ot ÍJ4٭#!Ad^XO!nDgpRTsۧk@=vUr.VQҗ3I+s(tP9JjQkנ~lT+tHCӓWc|Tu7'Ͻ,2C&d_l3aL塸R]X >!RRq]5IfSlzU2)η2"= hu"Ayk׫Kَ |KsLcAL2nIݤ]p7A^ 3 g A;.|k@iq+ O]TϿ- q((ύxks_4^nɨzmZEn*ldq''>Rṣ/!B2T(, fR_s':{Ij2(r=_ˊXKlMF0L0t3sey>:N\@q_(5(iS.(XFRtsD@eiB&D Gn&gsuHX9grXoY"?6igPE4:a!&ִ oRG!B]j_}x,"tH%'64R k.6F6P 4Mا JFx9ca|HWF*o Q{ع` ʂ̏ of*wTÙ<ҕ\pʤ!j6GZ<̦|ŏG[n'x b8KZ(x#~M &JWZ'M332Nsı@,\xb4~<[hO!o Z%HDe1սW7%[a' UH#^duM(9# IiRy{1`SD X~4uz\07:V1ԣ EPt;o3mǓxot[ZwLBe/cOͣcs' #ֻDױ!n I7c| KQ*u?߄higs's)e*sG'zOrgcGxDĬN j8s@qȢjn*ה&g PMcZ pURvB^Y!jJjԕ!ގ<y 䕔gkN+ţOȴ>`w/в鰄m~ηdTjGѣ,RPKmTuKzZ@k2Taª7ƙ@t3,;HGwQR|W?5qʅΫ(KubF2̡EYաJ?q˲K%d~|(?e2ǮC1T0թ8!.wT+*[C̨=,6hh\ HObCa2%̮'t~t.ܞ ҦbΊ3&8Rbv]9 Ļt@78}հ.ji_kMkIV[JG6-Nt;?%r7w$EQJ #-cie 졠Ӛ˟*F:C+"4ZYz[aqєVP@Zc+9âR`B~#$^4"ggXuB8L΍Ѵ!%N ][m39%c=P}h# zx_ծB;" v if={QO-"_J1 qՏ{ Ã~lZr-$кZ~@ĩEk?#IH""^BLރ:8}K??󚑻3~SIwu!04<-Ut΁fn͞6Az'=_=KM7gΎECK-!T k= 9P5kJNU:ByR4ohS,,d'b%Kq BBNzи&R#3!pM$)! q `S\>ww o7EgMR>A;HƱpw)aʵ E`{{1Ng"c[9iD?b 7VwC(YVK_!Yl~z@h/??;*_{o tsӑjF(A.q척_?崐UqDl`jj_73fcg4zI*EMotIX=Z:ݱYAYZ5˒ X ۬ks#ԨEc2xpX<{3tQbNJJE@Kp+즠~lWϳJEI#E]W{z*2bXiR3kd jÝ>B#ϧLuiN|jw!`y$Hc,qA´&fYWg צ@ٽrl+a"loG %!K9|a31£xP9nhE.Q:k(c" S [#6ZDn`1;&6z po0=m:VEQ|ćL0k{1G<'5_Ƈ̐aʏyl~z5mozʁ/D+x(-YiNj֬DtD&#({؈O{$ߔ@5o(kl\U)H*)=Ցrrjɀd2FK#Reu{Bcw$/Bjhz J RoM7; mzPüL"lB*GHeHvB{yx\eg^b`lW%Ji}ye?g<43q> |QVr+3l8TN(Q?ͬ-pȍum&/>Ѻ PUp .Ji65<Y+]`,L78uȤ͚4?j!'m1HVG\C+ vL-7Klhu<&d~[fuN$4mL۟uh̬{Uh)iڐ NUS+^  1կ\;`^ů0-8&"@ahkHmzXgP\[G1 =;>aNߒXrdizE)8.RcJ̈́2uA ?6D]v 4b8Zv v (k4upWD2fwkmQUv2>>3Aݨcdɷ]0Zl-D6ݗ^mzEqwpds}tb2Qo4o^O "u%Oc7Igf cir;+_ 6EsuZ@N]F0\O~vߟ2wp2O[GtBl0@b&%G`K4 Y@p->ǟtQA04j ¤gCX<Çt-q|M >^C}')30}jDQ? &{UXьRcr uð6 Q?!]EsWT2L7= \t܈”-Eu #CSls-R*sc{DC { z~f4l:HjʼYŏ8ʺHB~'fbˈ{7ޔ'H·XDQƄ]g0=+v }!b¦R%v>f}jj>SEQg"GjUJp {SAšJ#(b`,>nZiB)V|4coV;x_) 8F/1c;?MD*P3Y%6Inpe<$Zzin+rȒ83n-@a!-JzDzR=MG`nRsJZDvA4z@5Ѿ *3X8ĮKVm`m^1jSR{ᶓ_eHx~Yz ߷".yhSq?[^⻉ bg ԰0:$=Iycbn095P)]E8^ߩ>RxX{tlC0mX[B;:"I6d,+o`'f"47ћoן_jl=@UlcohL)Pŭ?7iDUj fo/ }ֳCVBqr(Zݶ1|XN4acf)I7՗e.& +׎œ=\T!t5;@\vCxX-߼HEt"u1kϡH)뜲_Ə4:PE9U'\ p醝]`!rxlt?kj Qd?;.kVч θwkHN9]@bfaLţ0Iz5$ST@m3]=sb"]l;+jсl@O KW\zo1Ӷ~)J]#B"k"c^(Tس=%LaR~\ё+[.,Jׇ!ЩV}M`H;of 0TE2@Ú13Wr\0,v6+<zD bSɶ ^'Gde~Pъ4 Bߗ*̞۔S`~H]XmsU;DߌUYEZYFJѥ x/J9Lהz0MHd(=O=l37&̬$ܻ$LV_NNNh}L9bS?&1re2'!0NyW.lm?crJ?Z?ۛK^9T/$Dtj`$#5?-&W=HJ \@*Z;ƺI'z@YruwHu,Y,jp咦!QSaʥmaNJ:YIr%~ ڹ8ҷ;6g&o!/-P{"5#{NѯqDL!G7$S$9"YRx/}k\I/کb61zq;B3}x,ޅzN``dR\UWUѹS}"f2X~]m&#j=+_GLZ[P" hcZ;3D24YL~) z/№杞.^6rjqk| av3Ҳh%0qGu o2T ԡdo x-( ` ~RÍ0nK+'9[ƊKYMV<C)*lްep)-.KzYυF@XӈVpRs ;X*w;P I[, ı9FϡG-ENfOYØMk$6o. 9ÕAezCJB"OOu)3qq;2Tܰ< \AL?3L=_?~=Ѥoqu'+1EBӎ0Kp1 aSb>HWguO4k}mQY>Bݺ8bfjtNp(pIK[j_U=OScɵv.wN'B^,"@4 渳bcy鹑f\uy{^h{2D'S&7m:(*Ue{Nr <5\VmVm[h"g?mWxlK C%4ȝso&BE[T+^Ls͚uW-&+ S|n֯tJ,b?,xQ{ѬZw) (/)&,.+PQ;K"s֮C[ȱ(n9#$둊U"-I4,7WQV஽f`5HLe7 S+!)afL #;6$@#QV8 NEA`,87skEE`SYe|cV+0Ƚ[Y/h{!X2MiaKs _4!7kk܃ ?}hDR88OjL@|A? gwkyQXZ&OpNV+ȓ<]SNjå(b268q /2zAp) LOmg rȯ$6nX+C+@K$ B->?=#( ЃGsD̏Qeu$a [b>qvk'$~m:`$:o+ *goQ(بkl73tKG"SuQw)чD|VG#,Sr+Xګ\!YzNCj\-E1nbG^1ֱv*ߘCW>O KNr=ݡKjxvA ]ѮpSV4R*vE@kcD`(ޖbn<< 9`ɓ[)%w̡ )N۶>]2$͉]].;sn(/2 Y 졙LsmBIE g(ÆnP  :]Vh̳`S]3v^T=m=|9۲]Pa)-k⌐*X'#L=IiC4Dl۲kkwIV~P?CG`jdJ.v~8͛@Y/Sb. +;諲|fx6 fAD@7O;#\hvԶ"uy +!|wl{`p+w [jz}k)3q4kTp&yX>_3~#YQXQnțO5t=sNh'~.h݅}1cՎ=^ F9,t{zݚi}." Pn?e}SSסSho_.s`-k-Ud/ccqJyy}{ks Vzj\np:uqj9R QQBZwEMYIO'oA~ )xma(_r89 C,0"J wDڰ' Kuk衒 h#$?q͗j|ptz?މ(e +O~7/Hx T4~ OS@Դj)Q)@&7VU 79[u@Wx`fAt[{&DztV>S.5XtD'u&L04D}0Sƹh(P?QJg) _WyMJ a5j` O83[?CX.mv0tњ*҈gFy޽}I0XHJ +%g| y QC׈23Dz-o ' tn霂W~2ׁciߔ֖!> >D!gAdk[I"5ג@Yc~0<0DMyӔLE@._ov7.j83]a&G<Ϝ2RpmøXe^;*n9 ֐ߌyFem1KuBW}qHgDh{urB'k}XKbO91E6qWuEdwy %XJrHO@(3)^{(` CBD^DBIMozz`B\m|S(깺]F5q9z{cD;NYǕØt(A.uo)nj!?|pp&Sh k{+r 4n$2/?Sjo*p~ 0+دps5|Wusg]jVN~oqqP=su3\19;#DΆJBц!IÑ#6F@):2 'pl3urT'L-9d)áoF2b4+tO7+fDex#Zi R`kP$oqhtH 26kL2camc՘;h~*f^/PBͮ9QpTdw,E %`cD#s r <ȵqq썛#80"N361z5QE2=|oCx?MseTh>\Bn>x_[}}eݛU4wjX(qlKxxV' wӀIJ9o1kuJ.;aRV u4܍ \}բ*8B͎B=/%bq%i(+x. hYMNVO-jU`Ger~pSS FUƘ=*pS1tO%}uzM%v#ʘo@jdT30xZBu d:5)ĎŪ)rె PKLE36 Rļ5fY}s>8sxwDKݡi:l KFqJh@BN)̩X5iV"Y|T!XP: ExY"+O=`0scLƻCl'o5!퐒oy 뿣I +AfIGY^1'H4$Hlpgt>Bz(;*2Od$9UN blys`+")iGai6BpE5o`}5{Qal>`"ex!Cg6v{Y9ϢY"%Fp Ȯ#e%_>!?썫輸Q('K$';Bs#d7 )\jqՑPLoycBy VT' |>L@MHRxeĈb UvnWJXOE欺{Ep |L7,WUTmiCx"y4 qQ wU EsQhU#[(]`nìHg? ~w,W*\Ѯ 2{dM)b :<8gyF$3Iq;݌WbJ?`уDʒo.i[-LӐF=4! *L5<{s}:ϰ,2o"ݫHɡ/zmV6Hvh{V)miGՓZl+(ɟ B#ٮ5A6[RAG'Boy|:?ؽgv )L7B2 8^ e.( tt](yլ0C'm?RݴVPTgok^JX ?yvfh$>dBr!>8tiSJv^5xP(hAh0a}%TBlF92y!E;w<VxHi[Cf=H?kj98'gȴQGP9Y GHl<Ԭ!e[r{ 2NNUr^Jp8ĥ!Fe W<v➶PTt>p4$5-dTɞ~tOeT\G9#F1 ٠e"nʢo?Ȗ¯AGWw73-DrK \AF#R6`K7QR}d7GBt=YFz Pfo'5С,~{0Gal+m:kW.$H`DD/Y"Od>ۘ$25F p0ػ }.CW ~#{|]H܋858^Z-{Ζi)z Tzupm:du,P˭'/0H؜}zb8~a=([`(e>FF뵵^Fd$E[hs7 ed60<1D8$5ȳKm wL(9dlh~ 轫8zMzsGwmսmh<.5>3ajaIflź!m(О:۫F Ĭ3[Cp׃RB|uJmv 5:&Tl R'WbN0[mWC")ʽR{QM|o<Sz (l8MR>{FBc&RTeu&,@#08{R}Z tӭ࠘h%%ܙ5ZZ*4VP1XnU"mǾ{Bf:nۘÎ _jYڻ8Tzb6wD n9 fϒfbɾtWk_6@H(DMULrw-M|&SO9: 4YX@[yĔ[uJ&BrzcK ɼif+(r.mS+2Py5&֨hrcLJ1uJIv_ œ(6HjAt Ѝf: Y K4\ˬ4&{u\-[1urZ`ڙ5(Hf4(;q?7/w.msD7٭(X ȼ֥omg1<5HȨ)EQ<mq0,-[u>q?tp u<jWvSX3u#npj}XT>dBbO.21A\ӹS>$^.,Z"+1O ̓6mwm- +r/#w er[!]PTRd5AY\zV]Y`һѻdQ{' E{sHgc$^qDUb8 w)0}YL&;UzƁ *eY&=q N<9.66>]Ye< ^9Mc5ˊs 6KF4ܡ@j}P0Y+ڇʦ><+jgO9Iȶ%PLn>×;]{ʦ6;wt:+16)){$zrM* G +:Rʚٜ]S TM~$G1xL]D;޽&S%̰\#u)1.dXhͨ8F5k3DFP-uC.(CF׏/(@dd7ʴa;6jpB_.5#MyfB9lqjĜOJڼ bF]`d~Oi4{$_]4)ʮ;@hQRD ΰ{:(}Tt'vo%3L0v9Z&G<4{@zhI+{]4OfLz?ѐmÑ26WX/<;Db|M:Q[0:iBR Fc)|LjX4BZ̟hCg?h;g9J8-Y;k\.+ɋV1NZp.<~r'tN- ݰ@; W#(D7ԧdRknȡKvҞ-hi C|`8뎃KtG*'1S 1ԀNő6بr1mEzTr^KZeWY;N'MS`Thyl K($(JA N853Xm$z""pn%z2ҍGU8i`L\N"#f,$ R= ܖa4Q8A(]il{l ](nM=[ޡAg g\E`r">R>wP~e? H |֘7'j /M# |# /p TM3O$*(^g'|N'ŀmx1ܡQ=<E4s~2İ=g]Qw%0X1~]F/pVF_+悄D\3܅%ta{lɲNx{m dǻ 8lG;hS/]K8d`<_HpFޤkM pu+ IM9 Vp?P%x^6WK۫ac'y(ќMCk&<"?pDߚf 01o(ށFS m^-ϣY ۤ4>]rUvuDO^I/m-L;Lxh"~lҬ}쭮 rdsQ6[L5˦;=@C϶b/v+5:R+b`{|Zs/3I[Ƽ~` >'npUX[.7WzYAlzٛO*tI5:i1G/ǠSpD,{ FK6>f ` BˑO4ݥZhalʶǶ 2)׃3g#bI4ql1at4|改NDrћjȻ}k vx` [!H$-x*q*c2${L>կ5vNə jLo\M$S4Gd׋lA_d#Ss;YZu(,Ihvv PX`Ikron"/&*쩕ʀ\Ky $%z80n* nQĶwrwV(r0Ԏ!R0xir*)N%XP SS~.V j,liµsKRt.{v_gf5 A[Ď)` <"pC @\ɍSZT+gȍ5'}Բtq9e"w MV0Kׂ P%qB*t)N ,"s2" @r(ҷ*Ð [ֳG#J$}_'Nm~ʥ#t*c p PpmӗwO~L 3grVח.75yhMs$djMMV_]4_ה -(DY"R (^єDFUϏG깎PK"N+R!%v; $2. +:Eʁ9/We0Le w4{vY TR8޲9x|hUD=$jH'.ɋFkUY ݌PsL* {т!6x̘-?GRI NFMm6xUZ΀g ~䗷?qŅ;4s8|$2\ဓ109{eA\Z%ڸ_Lyv2Ey ySsRh5T.4Mi%>4l?=)x~v!tsx!k$s:Ub $j\9 |udzQY"Kwt?-#-L^,%l>!Z7fSy>n[IP5}*l)`^}oj67ХD^^iօi$ %f0YZ1Ay&C>δxi]*V4R2L]@~K.1S7|JB92nx)meiVbsfO~59t ű@ah_;/@I}eO;pu5jY\sUkrF _Ӈ KZ粡՝)9^5M~Iް3!!Şr 4L_- #UJPƐm`mĢbm`J en|7:@03z1ŃU2\΁'.v '/`}aTi{IwRwK9/__N_A.۪~XOyYm/%Ef>NKv{,ِ9Yu#sL\BPE`^:UB3ch@+gWV0W>Y2b d.ȫ8)o;\oTBADPfmV=G6BTQR˯ҞGdFQ0z'B "]2{%|kN ~~$]J!pљf94 Inx5E:)N4U<6yҶJDJ M*8O ћw-,?a97~1u彉:t^ V !Լ{3,G61`磒l@?HmWl/ osJ8%U4Ɨ䌌{[3-!Wc gk:垻Wc |SIr)c{!zLmO[۲:]U{twk;\Y!0ـh~Af!KKS 0I+; r\eɁz#}LNU_!xf@7D_4y8P8m3)B?$&˛t^3j<o'ROC9`xa+c o2eY\9lxX_6uJ̥Qol<)¡GvS]8iY"%µbBhq2*j7\NOv'ZBxZ+΅)by4C] 4ZyRHrN-u6g0sƛ/ZJY?U.Oh\*m5U-p0$x"x>Is}f[JW6KA W4 '*)%IM0sۓ&[at7 }[㳾3aX/ۜcgCEh3]D!NKunH@mMI;qj +-~q/oGQd fsq29࣌cb! Cl q/<߉/1VuqߓςTc荈.L+.\XI'02[+h"ӷI`9r~ *$yӆ$8-cT^i sbOm|[+GEotݐ*«ZC3q@'a!Ͳz \@+z,)KacMذ**oTE(:rq~dJoqUM=r5 ,)8VY٢o70VF N/v. %t m,# ʎ r-{\x]KV= smg`\խ.L2ܷFیAG ٞiZY%J$xy%nu\TĊ{CUcNkudՊQwn?!'(l< ?O:΅u-)H345)ϯ0@+"cn]5<*9QVf$ːsPeZ3Oމ!conD/č-g}bkfM>yhKd_2K1H$Oj}qy*5Y87,ټPZÍJeH-MeҰ oR$RDs:jeC[7$۱ԕ0%B/U4G~Um|TLļKPdzQMMR8r !Lh1l{GiQR.!^V3N9;IrKUy9Χ_}MߚU֪@s^#cB L!p-L&-pxM} xzrrP(zwJqsQ(4=~U @tS&CnHeHaӹ(/C ր2c~8 pxQ~ GF\mT!z~^I'guF\Zzy;-! 샭xXyQ KF`"{X^!q5#h~2ߗ&IAK3VwiG%&EYz۲Ϛ;TQwMS~qW8O:U 'gV m=&PIPd'NthjQ۞ \3tjAf_j8t3U)wWf)`K[Z#¢oMAm/̵YF4.Ƭk`L aoRm`.s+@X1NGrAbF(#C| 5wmӳ йOi;P@ (G-K@R&WE<'o14RY.Jd6IQ<&Vq$MrJo1Ȝq:bvJҥ&TI):c)I?gA!|mppŃ/%;x4ձy Tlr*C&[|@xXa,GjކvG2*Nzr?P{?v<`&y6~lJJ ̧B 9^ѣw;]|e|7H}|_6enrcYj2^L߸ 7\_0@F5hߪ./kuLys;iP"[>* Mcx k Nut;9,v;T||*K'H' =-lIؗ;;иf^3=%x"rQBÉrCi!ĵt@GN' ϶aY]2n ^n+5{vAc:j2_O0%bnɅv>2肦%Xf{^Nh[Hz *#=s{.Ɓ?<8lQCyHAGSO[ b?ݙ>ӳgOJl<؃܇vuDo!_A2Gm2{vމ i z%{W /4FV,wH3o!Jxȸ܍ĆxetV_AƁXE>c:!S7݌{=lK9 "QVQP/qFF_czsc|HVh_=}@&ȃtVNQѿ\'YiӃDuKN#i@ ^ V%˦c5оɑӃGp ]Ѯ1W} y?qahk:@ 8.d:U &N6 vIvހ͋(/Ҙ3IN[O(nꏳv[A {>5 %6#14χϠ6$E,ُ(8M44G=5_`l qi&{h a%pvdziޓ^_߄WBpt#:&q'Kt*}AISDZ'``[h領7P4X%(h1ŪCj[,\t䄃*aZv/YY1˩{C̍q5QB3ARYo5$N@tP5Z973jJWJ v в팏zGSj/b$y(`B 7ṶXe_g uq#x5nVoٳr;*ʜ8ތa#I( d3yP?Ey!9x+ѫ;5 ]$he}oE5x'Y (a?^I9=$UXY|$=cZaY{.7䥦j͂I6Tr)Y*@\o RJ7Q(\Woq?Y?Ey3[U OKvӸ|Ps25)` fW}E`E燽hsX$䛵Y߄Z 1yQg2-me1L^f2ƉXԗl483!2 uhR{`)dGד -2:, E?2߬lϯ/RcՆ\Nx)Q/3ԡ8ӟL/<$?]7k"7[9XPQM⩏vrY;I%S[yRŝ,o{B:B͇F0) .+r8tѕzjdy#7U'V}W70z3Ā{U4-f'}#> 5!^ƈKPd(Jv|`YʓW&Hk`xvWZrAP\6n/^OlYFLO2~Vxv抣=Ќb(N3֛O;HY \f)k $ wۘ 7YI'];*7۸SM{bmz5G~ j`(8iV٬s]&Q@]MaBj*ՙoC>dt꠪۔`eY}JݙXb5,Z=<1~JUx1l/MA`c Hd$@LcTnH8 U 80'[lMZ(9!2n::쌼*LZ&jD-3VM:h_,W0m+|@k|D%B.J]vNn43 2v#LRnM!zʶ4]G2'y0P"U7ʘBUewAS5o zS/|l}T~ozP7A}zz5ǾLVDM/r"7 AR`Ñn>xŸmjMYl@>XM2Ƕ֦jlw~^Џ 7Frlx%MEkVY2[͈1G )Z},g,8KSQբeo"Of/~'_k|uLL7-@B0xQrn}cF#J*1ʴ$ml2}SԔQ=A l}[*aXj}!^a+fb X3a-TFfGj4n"G@^Eϓe Z}P/PmB/Xߟs'TLuN--:KRt3B/؅;c`ʹ†Q\@dB%$R>r:H߭(;M6h2 m5oBF ]zceM q9Plvr o%Ձ\Hl4iqCo@S6$]2&x↉=;hwAm8eKEU3Z[i}DM`nf7* :h?L!0>gqs EΙbCNʤT'N>j&[a&fvrdh`tr) ^8eˤ-ٲIt (g*ga$ Tw;RBsX2W+ 9yw+\Pdfz[`Fn4<Ҍ!6e ҕrj1NB}`$dN8X%|lB1ܕ>@od~(MJ2~mkVU!nG ckr#"39'idYʻI^Go%m~.qf^H:~ݭLipCFv9˱D93ԇj; ;mQMf%WUYmףH*TP,U`^P^co@ޞ(d@ wvbЖeQW/ťBO3h~1ž +VV]2X.= 06ײiI6 $$xGw}8V+>&3xU#MO3jGg%h6bFׁAq op^4Ӡh۴( $|D'NV3JH1Dtn n )"U WD+a_c}?f>ۆRՉ~K k#?K11*0_%϶1}} A1_@5) NnTOwÇ][P_.q l\֥g|Ea=gQAƒTBц*_DTcqخ@^}<Soҋqz}ݓgzu^ _\e݄ G8GLw['.N$">,CFZ-;5łbnNUl#>208yNB&0^}CO'cO >Tz4FYe& T#/';zEkg =mv 375*1Mo䵂V"2REjY/w,I EA;_H*W x"a1rUr~3 T3M^=e{}sU%l`>mT#(bӌ-(uAR_NMtsBCƉ [>h&o*EHTAAQy;&K<+~nw  2DEH7ښ2v1LUD!:ސ.\eƁh^R:ޯB؉Ǯ55oէR3SaE>9OQ;\Y!nT|'\ pK^"/ r8`NȆ?ɯ0Vv]b v5mMyx‰|4=[wdtT4E#&]<=c̠81"90ؐɏWu/ ɁFde]ZCQ4{Wu¿OF/SfCQ]RL"Lyȩucm=O]gkGn*@2o!i~! ϚgEᎱb-ux/1uPt:ogsl4mcy ڳbWb٫=mI;8C?> ;u q7x@p>z:D2u{;?,8!,@rВd;ŗ3Bnп)+YSFq%K-8"^mDIiAw[ʅ+fX0jEjKS0#~O) pXGrnČrMh-͍3fh>7amNCr7,)<}j/w[5+hHas-=\cZstgQ$\Ciճ 6D@")H:R23G}`jU𜧾)K[ɇɟ++i]8VaByXuT@ã 3*G)/; G7po w4_4%U?98޴/-9jxLeVC2F!Tu\H3( .̫63\C.0I>tYa!*9] s5MsnǠkjҐgglΣ&#WϔW?: Gq<{O{x3]r;ʿ w 3gҾQn}^9A'jk~)3 `ݣt0ݤnWC\] S swH?V,K}&ҵDy4+fKip,#41*9JpEtVm(Zq@~9.&&VpkA~М[ -|¤\/# [Xדǐæ7ëUm[x(,ѷ;oI8L‡Δq k Iυ}Dl&zhn,{PcEaKLPM=Sp7Y&lb3|s;Vy3|ε0)& W]h@P%^5:c`/2 Zej=caܡsiځR0 D1Ufqz[VBD,ZX $91fMw/}yqPհc!2Esf66L;XHb@.¢^zm=wF:zB^2͜z!_4x9$/"%`cq9kx{++xkKf؉G~|#,~GеfҘZdBodP>z4UthNCBJPH:f@Caui\|&D[}EV$"pq*] 0Hu\Bk VdFy3lޙN7s=w""tS#h Yl9MJ5v8iD.mY@ %\3w6Y𨿿a^4Y5$נid| 2{$FL$IEʗaGegl Tro)wo^- 1bRo]0߳'fwbd Y-nXz{ , ǥM6uCw"NA#L sB? 7oJ늤!S Ҕ* C;*=V>Ĩ=19X: pZVI1y^ïe80y{Nn+N?u,jz%l&9 ^lH$Lب)5#^=gxVSTf h.k&hXH,Oy|W2*Ҋ/ < ۙ)tRk[n0Qp{ }lEY#Wa5qىLPX^VxAʉrYF{O27ڎ/uv{t\p,W%LM^Pi9]z['vNzd(-^:3uESFwf.[' ,o6@ FKOA{eu0ѩrq#X_ّL:|(T^]n,9oq(uY}7y-'?@mq`X?f0@g\B9Ӡ9vT9NaԴexP/fUENG?cnU_dZŹvًiB{< h@ӷkErY6QxQ{ʜ)GK7h ?Y}-=B+{Qřۇy$'D'3\#;y衊},p57ܒBcm*1bzySqc1q֘<΁ 1~32I^]?/"a0 ׂ_5A_9O!ۛiHpfpyt Ӈ:OuY.LR9.]5LcC7U$@L"cH5 DGXnᥢ'X;򚎅ݻi30qb*L$=_ƟC(IL?#Z^GyndG\ sĀ M´>&7 >,B{ݒcDMdz.[e&#LM&8J]yx fG?F20cDxCtHB(ߗޯJM|GlKms7Qw PgS YxBNYd,tivw.̺_L_A%6=aI$Mk:ސ XEOT9dor3/!2rf8TinRQ(jweگg0*=!9Bh9[ PTm`0tW)B{A3)J\lc[~1ОN q\pP:u7 &@ B~X=nȀ;%ѭlHNUr7JNFNxiJ.j鸻&AqN%$8z xE4^:^{Aމ0Z,gfr.[`#pD5Dݡ)*afyң?/+$`'vS)(̵[[bitL\U5IsKŸT/1C޲PgdxdT~T#)dQ£ˠ|>0K'&³|:T3L㑣ҕqvװ' Hu4Pۈ~ mwqsSI/UY3Q9ȞsɘxY&9#߳7ܿO~h=}H>dxT& R$0"b^HBJnvk)9]F#|VuJ'9 Tԛ$q5J#H9wr1i!]ϛ!^p,tQi|ڵKAL{dRT܌l4`=8O0QSb,rw1s|DV]\<3ZGvoMf 'SIR\u$@4X8a{~(bti*%(yU$hiSp#1*C7z)jyMgݝԫ9 BŲW/O8rëhx&4z }WujA^<)}ANQ";8%S`?ޜ-renŻӄ"Ԓ Fxu7DK o?)mqkݵbQ"zȪ;[ʆLÄAz`Dmgf̆‰34ee[V*$%KY 8cJj9u|:0I{GS\K1n 'y=N% =\ cl??S R_m &J%)JISپz'o+CV;C lFr`\-&G&MИ!i O91え3 : c(nh؁$(T5Jd߈[4E֮zps=$`I{&$.uc~5oC$K xXH ynj4I^X7+޿ufne'͛0nnj'؉d Jƍ 䬺-^]̩7}aZNvD#Es/Q#x&I8 tC WS'w躧dˆI8-QӂE U/$Q=hu =6$I]Qt<'G*G 8%Or1 7'nt Ů\c^R}j!=tv!5T,PD+HaO5 {&c Fl-Vx-ӱٞiDҦdj\RLG41IjNnZ)F,f+&έyh␋Ć.Am3AgGqQX?f>@CEw]J. xsPTAw(u9ԭs˯f;뉸qS6OZNJLɳ=PX|N:Neй$ KYP6ޓo ଛM9( V3(KOr<7W,ƔՍm0+0%Ί(7X37FÌ`bոطѸuJAO)g Xw-RĽ`s%^!41zN3`|L!IGeU :1B9Q :#BRJcV֫I^0"C{0#p/pHƢ; 1խ=|@aȃ7#/G\ټ\yX~7hȔbp-KL֮b4 S.0 l#WZ:-lm.xg|{꜉,ݱ+JNx+ d5af@ejg"[%I:fʍgs!u '񐎯9;F(hX/N)FqܤO7ŇV'nbd,ƟIj`,4hOyg"_̣qq_L=g+lt4:0y&Z-Vɬ@Ru/ȿ+WĬB..G=,sנ )p) ŷ 4":EF[|p(}a3fZ .bLXǖTAإ3-5 _ȢH͚phFԿw@]# 0B-9> 2wtfG~p.@+ՖT*yZ}p컂rS0xRrsGض_4ZP0iAxjG0؉qZ,HWhLd+t: _H>{'oT7F+RBZ٩|md>散8&~{52U[^];Y?.*}q !Wݟsl3} *W p6 j[2Є Y&pPn򋫍nρuP)= S9FoPyt@Vk|ћ kd0Fby{OQXKYBיYT՜IIhwJ!Na̦.v{-+$^þJ.\Ld3p QƗ4~&s[@"Lql?X~ ?^k:&23|2IAWX{:#{+ vQ"4oviSgCR#S NBsaŊMnkO5 5a$Fy{;79>ƳlŔzvC4Y%Aϸ٠je'X4zWn?j#M6m2if#H|fNuSYla<&^p[{X¶@_yI\.7o![QEoU0 i$ 7#}+GmGe!56@As'˜ֱڳDۣn1lvTcD༯yM{BHTs~=4Ujs3Y#'=_J̶M3H ϰ%c za3=?3Dx&J"⑄<#E]KU4XȨ=l aE\2]ݦ௺~dήf&lM f.k! Z c!eҲdUGP$`:Q4%B1v>soHТNF1 6Zᡟ)\絛iָ7@D%SlotIHWʌٟV[3hFң` a,_ޡ#]t#/6=¢)n}b^T:Zm޳wbٰEy ~ "KTald9lwҊb RTV(ns*Iv*2`(`a2aG:apRo+z kĶa!Ȫ9/}KUaPi7l}] }h/4@/Nݛ׶`429I^ٴ)έM90VLcOBCl8FT2 eZQ2)A 'm0#џPfzDE[.QRe`O?lB(CS#tc#7>fIovid9mTI{˵+l0#^!V_zYy7^SzVPr`==A @.0gvjVlcf{.3 E&*$P#bD \2ՔLew,叹1 < %+orv@߃ԚW~YݢqAk#<<f;: J860* ӹ< Lc׀DB?瘢BSwyHwdI0qLIyV{8!r5.G`L"MoŰn"fٌ&Bkԗմh~bTWu3Tu)}+vBypi/,wt8FTd ٫C011NY+*YEZo  ~Z&\'ؗĥGգ}.rL.!3F!;{:2tHꠗ<:aEC*{ #1+YG>&[:'5sM g9Ou4 xaVaĪk2wKm,)Eww0 cs)%ClPK>7SgPT@J2ha8yB@ld r<(}uzTk/]d3+ݺ#=Ag֓/ɎOЌ+4I|OoIv x|m4H<ML9H `4U䶘ټze(n*Yqy{@c1Sl<;inĢXXIJS W6gV]_\Rgކ[VRYDo9;߁ h"ᗋQR8Ůkh=#X`*=7'Ao\jzf ۖf Pn<5K^"߿ud$+Uqﺷ. zT㑚;ar>E$,xtq~j ˤӒbyݦ-;> 8/j iW!|'YuS~apUMbI伲zKrl&PR_l-S,ѝqP K e?J8QjUt;`h&VSFP:ÿGCZdt%;`Iqޟg,8(c6!-A^AX7 +rohٺ*$Jqyt{C1젛8{3;ܑT ْ/+L+E7lt'[O36#݇qʱv躱aJ r}neM5+5WjM9PZ7^ VCxQ.UmM~58h{czzMUss\Ni, UKҳ~H5 =*;VE +$Whgˑ`v>>_F1$J2AW.(aT:?p^'ѭ 6~yՈծ*S I0%f7[sd!ϒhv{q^W*O"#N)e.ߺL.OeN7ӔEғ` 3m?p$A6"qlRM&tpD䥁Pk$$p $2 uL8 ѫsP:~z@mX@Qvv6BZmvr-_P| -V4%ʓ̎|% vj',D[mSoHQ@,e2DN^S LWo0ܨ*dFyHoqV1gIi8P /i aؗsp-ff8a0H6;6R7׀5!ɸ6g]H HZc+/7Q0UQ`>Vqi`E >֣UP#*  -jn&|?[{\º:$yt,SEF򫈈>X2}[4JVR0=u7 Q+O`Rw[^y8 abe>1+N# +ʋ&%Gt^lń!j~v309yȅְq#0=&`B DaO^/Ӣ U*<-G\VepO_@8 5Y]dZO=ps[$I)YM)J.& CIȴO.kC<Ȃ Gc>x,'Kp'&!Fdj[\xi֡ T<YE Pu33F'Bo<ʡqwWN93! +#c:'<+a:ơ6!*Pյ$BĦWw ۰Ѷ3 bF]|0fIMד#efQlvAOl|޻znŢB.+3߅OX>ˈpLiwJ@=fM".WRceK.rn%%WلD\ULtKK$L#cV^օc5Y ؔo(p+~]=/d$ 1e/X k _,z! B\nj6Ftz?}=?+6{?7g35(}:kGk΄2'$U|~Qtj8?3 @(8/k|uo𦦯 \LJ, ֕H mSvhr/O뛫nw/TP'9oV^'6=A!WP^kfT\T)?CQOFx$ޭMіN[^zkU6 EIjK5Qʨ}2xD#UGT{h9C !Z=_ %bPP6rk~!\ c6 لJ'U>  fHrd:9KAE tMz#? \8}ą_%Xlg` a[f{-b}ՔcϽXfB \\~J&S4Z6_)rQѥ6w; I:~\ R] DoeYI*/tt`nPǶtCuI?O{o &ݓ:4$opm|KlO8o-Mdb(6ZP ;3|"pkNԆUJ (8OQHs4:lj#yȸ=yC0l- ayy(xt{?n >Yw<$[nAt7.^YH'cdX?~/l 1.d_,{D[s!vXjI':sE]bX[%,QnHm;y |P GQ \q10cz:bU?ow٦[(l~XOJs=(]O>>˃KG@`v)_gk*.id̸^}~v|\ DzP9^7@7\b,p!Kb@: JI;qPKxUHc-9c=MRonifto@1ͼ*EN$Qĸ:ҞjWs `j\A KYBy-,w۞)~ŪUFZϾ;`*6Gv{B,G BV_?e:%F2ӦۡljQ!:V*w.Ѕ,=n #y+ѕb̊!O?b> vCn1]]P Ks,mo#x6 "2c"CA v7WG(V0=q*T uOX8̦#PK>=uG2J>Հ7h*Aw X_{hcv2.=\\[,D0hěI'ٍA2}ϒqRUei3;勏(u׏OHʖ5 G\/-^ _C% zxǵgd\?1Usc89F$jSJ&H G8rcj(N1`k>^Q4zXqUv/d -z4.$CK'$hׯ́43en_EyV.`0G O!e#3M\k-M4H85RW-)ޙ`zjC /(GGM8~MMQQSNUګa U; w{&v\u/K_d1;?˽iï3!*_{r; S#偃K4T4aoNEy6MCUJj/w$áORIP JlKN( UV Y֡ܔ[f/jsFXw |69ܠOxܛ*@Pd9|/ҵV) A)ob%Y_CAzDœ;q쀺alO0`ӂ쿠W_>:M;d47t`TEˢ8B_1=ǀQ#<2Y5r#gb _xK6dxJ- G|>|3an.i\?l<:* \˖_ {qp[pgFgYǒ3責HܿuA2(/Ra+C8Y9j=v8SA7wR"cJ͎jɄh fSp_S 5h>*E?WTak@6Jt}kGqCEĮmf#6_S Wh){qvW0aQS¢I(}~e2.WܯCoKl@{ptO)uG2Ya7ӷ,_l|~$*0q?ң(>83P rCK[nNXFz*%?;W-}lFv׶lQL $]xwUBA^5s,sݢ]"AپDm3xU]N>PWƺ"s T"aǾVHPE$+xS"k}b ul=Yv.0%;>{Q;#{[эM֫eB 3YjIy1/"f|i'U/O0wȥL[@\/+$ʃ`s2eR&riI~gZd$&'<͑xק7դKo)\0:4_ߗ\$2pK^o'~[M>Dj )% yp)JL %a$tQ_IuR׆w^/+8$MJ>tg4ڮtu%/- &z,=iI ՚&|_'//4\/ ܮI.N@Wl2mԊDhe݊ɪa6 H>λ/Q=hK%OB&'(k;(f4Qb<8?st[MSӴt!4x>"a[ ny u "R8G/@i'QcUw{IR]%^9ԱRl2j>>/qA`..&mh4ga*;lx:.AXBS7էo唾3# ptC("~#@x+l`j^Cy :dn.d[~3ꃸ, ZܧtT븇lpy=SHtLB3$ >E3EU9wOL0Kixt[ov6R"209U ܩZ XD d;qZprgz/)%=D HJX&~gl?k:A5LKP}mZ]% U k ,Z5_9G5fĉL&7nD?xI}jjr.OnO/ʽJqh *r턅J?eq2cg~UawtB%4drhw :[* k`VQ&>6Vq.-Ai>!tbidtZ'4=r]ze>_hq;sːt7 :1GJ/jD6`JlBpJ;K?ݘBzPn~2\yƺMp _.)בܷۯT.J/wq@ۿ:CLv<VIAoØrH:( cs+fͭxKMA G+T2^OJU`E:w"WO|~Cn=yvq?v{GBaPW | *kht;]z⽣e꯾ -]m:Z+K=.PN% zvgLҍpֳ$[نI~oî/#H0F>2 @1K m%[cgIhKuU_ݘ*H =?' ɵYW4@ӷRE3O%fӫmen?R-S{JT,{t*NO-]@tiu W}Hsj/ȁYc @% 6/-ɻJqYZTg▜qWsKY.HiÑb_Ɉ25rUaT*5#EKm;.>!׽} B2 '_y?#%/̕g}ؓjnE['$@ 8ٌe|a!N4&z:g̜H ákX"a\Y~$7L@Tr0nӓUBvbOs  t2+ NW9,4x= \s( aTKY"#kTrKwX٪y,p-F5Şcʮ^gbE@[IH\${E %DII@EZM302E`U%Xe_cAm[YhuScs81h Melۭ[,F{u O 6gKlםlr`AbIΗjk %'[;`GinBsSO>J q|CZ BN|pD1c?fXMu 3VFX +=o II=k$s t^15"U`3%+WMSLְ* uy\+loD|(DkCIA]qclg#nzqNeIa>G~ xRt S8 CZ.uXwz1i9]ε$DJ.;1+SvgWwsu3<1wkv"oW< ' 732>|{ ]Y}yd%,,0Ihԃ|S 8\Ȇ27ILx'{v:'~;h i Z2TlJ^tMP+~e!`=$^ޔK0Ƨs;s&Y^HvƆ+p~=hL?w@$_e@4PmcDZ8t[I-Ԝm3?diF[7X!YFL\E>) ?|N^ m ^\ǚLZڝ)Tjs5 OVH%wTAL!'I[[Ճ*w㹖-n W nw*vKHzFGJ$slGcWh`d07SO}g%;J/w"eXlynSmD[sl4i(TOE+Ioǿև FŶI 4 eR+Wa,=u86)"O55#iv$|f^};Oߊe_qo 2$]uqeLrw*`{lSpB¾l<apf]Z|64Da,@0 `1rTO#c*xM:W°yl\&#a[.8p`-=[H+5#ҢRV0;EaćwL2OtJ y*KO\4\5oHW#3YP` 82w.}^:./q#I؂ƫUC6~\sG?ԷY}qrm)ukCL_s;((iWMmc`^;$E,3)U( 24B9AP_ba 6䵘%Hnɍ'劣py^44҃l /ߦ̗+Rje7S `8 SIs uC E\{Ь$sL{ϯ+hxZL\Q%/Ȟ)qaOI6ZLKyQDO_֚bmD‰';_Am@9Ȫ-a1+7"q!kVXB;LiD.s4wm.ƒqL˃Wz?^AdTÆD@gjlt*`L`h܄xА'0{^J<#8~C#95N)$kӦnk3#>vޜevpN6f u?dtgҹYWfs| 6\ B)q1 9uV~)'2@^n|"04܈jj1$Qz~=߱R VDVD-c`*$Ft#f5_y{;D͚󱈠OBܻ:Ýe$ G:T),^{dQrC$hqĒVNrF'_֢>q?GZn?/hqX*\޻0Wt \=De*Ġl|!ʨ"P8UU]jmqX_tTcC䴸y=EQI#ZIƔRrcKTmhr-^'Z_2GOxc1yf\%$s̚Y9Pe@܌$/ iF]ԫ8#Gז<5 J~~&ܽVrAK ^OPI$(SAh\(1q+>Pb+3+ʹSzxGq\ >ੁH>:QtJt׎W^P1yסܑN[+<843^Ң]hI`ts6r‹Y]ڷ.OӢwX3i `&J;M5Nyen!~g=:d\t\'eDP)JSWk.]sg `_`_8YFV:*6'98Sz@A[T $ $1,|&ZdOnEF!v9 tCHR^2#\pU{%=2Y*޽M#e @99y3(YvU1F\舤m TG|:});%p礞@9 tE¶I[W!yAx4 dXlj+RNSzm"EMBua twރ]ԟhĹ?=@3D aWβrGrE'%9C{Z'R=*!***N=K/Ͱ׾ k}mO&\+e{k}g/Ʈ-],CIw'YVǗۢ 8V;&4#r]!|FGmW&?B9<(:AZ¨<ğ)ޘ|$aziբEL/XQWqJ@?0|yd|I 腣k"jS;4h P7pN' rd-r`mA%ڠ#ZpC9cNH|roGvq܁cjN(JO9-4 wuTz+?î;ʢ~i*%z\w}l5"9tI BNwitU,f2Ɩ~}k"fjkqD-`8BuWYF{-P%>&NF/Ue*I(Ifkfki=fF/LcQ" `뷻-p.77m0حR$,=Gо2%Fq5/9'7 ē9c6[CYhĈ M/Qݳ^=,Ji Qd5h-"Sgm*.?mx$il. 8/fy!_ s0^<ҡTo%0OH)2D_{MEqU`xNy4WmdIl+pRͯt}+s4$:@rKP/^Sy(X-CY^F ~Krظ2BHPiJ5$c :c!9b ;c1)KTcEq爢Z}"`;6 ɷQ¢uK'zFA1fȂY~󏸅^ePV^k].\AZ\b=g˫SZ%}w4nsJ:-*k8Ƒ=Çx*K>$nJNXnCz#HVXYﴦzi$Ins?2CrLL'OEMtL"5PHLS,X03`z >IZ<:Y <9KS*Hklzʽ^]>@^ۺE.O1lX :~bP$-H!%D0\`yE5Gmnn>f?ɆՕdd$&mĜX ?S*Q^LOMC oT?VDR<~4MzBu,ع0|"e~uc7}\(<$Cީ$K]\$R?*&B/#wOA&DR2r},5cB-oJ?ൡ|BXX00ּtNcN=knWa I⍳dSьDH); ]pR)S>ggUepD67Pr>IQFn#T zH4eN6J"jx1ѴnඕN{C셯ZI Lwa X\#~34LNMLّlgo!J0Aw3}}N"<C}ߒ{hSFҎ@]6ʒI72͸ dg>Il}}+Kk)% Y˜;\w8ؒPXa N7Vtq_q91bxq`iE/e"ź'bÌ\OE uQԼzږ窩 L2RܻOݿzRJ=.w3"BmUn[肢\-xknhQ{KRIOR=<l;'2#VjѾaևϺc[h=MMY ݝ %`5¥v.o%ڵ'$ciǔ%d8Ąm1C+Zk01,eYBe4QLp!.ʫJ0FFUBkscC/"u 1b|xGd DC.y!NᄄT@} J;g"SU)']!MTN>|'iM +` PM}+5jr{fɦےjю䥗W*vr5Ն37i|C3!/ṫH"¥"q굺Z_n;XkAvKemVq B^Y7悔 [v]_zjUol4޸+'HDz/G2P . _*[&Rԓb8 G#rlI09s^y[Hl$ [Ylty>2$ٌƤBpi x붰~eB~9+uAGEAw^ϳR*3/[QL\KnGO%ohv:!4-2L {{,eTjXCB`5/!Ar)v[. =ExnjTJ0 "ҩˡ ŦK4A 4C|qJƜJ` = zge!RQHAx}x4LfJ_Oy_;vg ~i-<*G|VJm)UHL8bo.9f|7sMJ^T\C~m KM'ILCi QKvPK>-݉ %Fp#Iynpy Qe#@j֫Tƕ1IHd%|ɶTEwi;;aYԣ|ZJ,I0og9wN^`[HV nrN[e2io0r97cerk绲 Ӱ^p_S ʟςǭ #WBAsۣGo4Prdž]D Ab_-a^fQ3@P%N/tA( e5+\L~BWxw)Ix?RWI *;N1(z39ly1=Sj bv mklaOQɰzSiDbZ1蒤SB EKGn$5;i?*т ^AڈUމ i.?A'$3)`(qȳ.&2XF~ JJ cckvmA28ko|s9+ia~s>i2,!w;>aDۺdThK-`NAޝq.CGPhwt\MQk5N򓗯k^-, gpCVV%m\\M\B,>u@i@ hMX5G"thpYk4uȆqJ xT =M#Y_p[Hn A&('| Т&9h'HSƌj>J}y'[_-V0Zz.)D5WD".$ZBjFX;%yLOՒVF>VP0o pC*70=>O~b:Ki㠇әQ=Ȕp{JyvpEjsh{d=#@_Inc;Xb,]S Н+4" B"p Jtթ1Cs6‘d+{߼L4 Jlj.Rq+&J~.R.I89,yY' fjcXmn6aG̿]K < N1JoV {>B4t &`Ѳ.Kls-pzxn)9L$7"?zsܼ7LkMgg = x緒܂s7[e_3 …<0R$L{;/s{Nѩl~cC0:ZT^0 KJZ H<d!nA3.sfr"5F$ >|gTjyLjn>K(JHCxf!{3G:y=\kHvYLV qN;:5n7Vg*E%)Np逄$ɽWK&v@N蕁4֤9 a&!;8EDvXܟe!œfn&|>t#U/;saraZvZȻ0 0'*י>^Ȋ=dEZ%-[Z62$ g_8UOփмr0GWE@zXoquEs> ¾13ْp6Kp?I0N-j~{yx1<⁛躞mX3z,Zio5yO}݁w [yE[&w݁!w⣍\Y+dS/v!ZR4؃Z~Qa'_q%F2őVa8b c bKcPCAxڀ=79=|6eѻnCpA礡&xgN꤉ZO" QRZ0!G$!;H(L֭jxg$L){[4w}0i;.JVɨQ0b)4|K϶n|R3W1OE~d#5K b@yqK  ^Ѻ޸xd(s#ϞpPP|+vV)J l:n[h AS/! ~D̉WnkD⇼c4j[=~SlV9ַ%{sc4-P[Jkl>ɹO ICegg 7.TK gʤ]//Ss ; 8fQzkM]C _)P>yڽ*7KNn g8GcBR4Vksn o3#ZxmirB51YU}~N krY:\xn+ YU|0jñqX i/ R-L`5 J CN5Z(t"?qbۯN V.m?֘X\PR%:MGH7cwXj^9 %PnOнqAaM~$X#;$61 \xd(ԎM٧-Omo^f GJQfLX?'Y#&X>>dq5)Fu_#o[Ts|)'#IHn㮁efrZu[DT ÓP*oc #qH WdIAG3"sW6CA{t7Ā1^PDNUF~:8YA?^˛[?BgQ smzT5^*ا3E%'U"qoBxxtQvEe]9}ìJHfDdP3wZNv/ѣ6Y5 J2l%Ssd d P>Pt1xã]B.Q },$`E:!ȣh,S3qYc ׮cV0v`~y$4,vC Ql?ΜGv=$ :@iaӴ>Zq}"{Muhr$Ѯ+.>:8|6'NfNv0[D'lk)zRjď˲PwSj1F>2* ;5$ĘVVQ߄h$ Cz$e)0TL>ȫtִ2yF[79j!V ܔYޝ[YZS30E+3?|1i$jpNޠ . e<82TI+v.r>w !qcL -+5 UίpȾޡYP%vyu tЉmjR@jS͂LY;[ JeQm F\I(3FoP%V)hliE~ ( *Пo#UJW wH}fҁxcg 2gս}U%ɫ׃bn'(9WV˕3Ĝ:Q#PT|ײdl L&) W\ aŽ1䧉ޛdmР|<,tzK&S1 #p}]m>eQ~]V-:o'8׌3->}s]Nyt/9#N?|hŭ \hCW=3%i~OD(y@<c<5"W^Ю(gvM#bshJTS`/"&:yzx <(r h`t%:_yAOs<ð~ 'gnW9 iɈ\Gn?{liO^Ҍ*<]b4 >~#|:!3f=ujHf1*7:\hGls`; MU.2j]<vtW3D݄p_6e-:|PUTudA!=mAX3Yխ#J{VI+5DҊIQ嬦 [\I̺*FJgc6vO8gA*.Rr=FI82S4 a7:..poAIwSg!֥9*ɥ>NH (, T=/Vޜh'CLHl#Ջ8v .|rZj1/ohwc\˕]}}zs[\C&b*UIT@ljK_k)7dR)k܇Aޤ\/%eK($2\g}@Q5KoH 4R$RHAx{E+x(mrȈB!b;x>pT|[ae\Z1Z},Ap Ⱥ*z 8(Ot C.O'=O=,K>O!aNExC-{ƭGmk=_v?2Csj7ihS&Ӊ#|/xͨ`udAoMU2YۋujV.2/sSRqJ;EIaRkM r.إceCl1U ^?VNYc}"ܠY+t[/zz'ӊR Lb%a;{Ҷ͒!} m^y2bj삄Tr}@#z z D.v.,QT}RA̞W-L`ϒ2q4JR0V 4aM)̀ v"O14OaA5g%eJuڦqr)#yk1@pzuzYɺ/d\Zzr3Ɣ Ve!f@6:X}_߈,b#Ԛ#b2(pVk0+8!.VMn~u qF!sOmPR蒔W14zė[KjڿLځ"y[ۭ?uz*|~p;KJB"!XIu(5ʚYM֣4. $ԽL5ǒ|y.2KID #OŹ\7)O&=c kc6%V'I6@4$ oF*B#h]0j5NW n= EFi?q/~\y^y7xop)(Zgf8 /Ik}d6}u},| &rؼ*;ZG/; EQ} hG@nmM,aաnI0aV>kP QZ$t6dΘV}ʝV@z#"DU9ҞV! h qt\?U2aW%-GHS'MTfΎ%I O#(]h=|F̤" Wry^2"lS_v{gPM|cT4fO +K-tZx{Qp8jxQ*niv5Fzbu/3OA"4$֏c;ĚzFҮYqtFY jQx㞕btq{av%|lNkIg|O9r7l4< riɆYaLRʄT.lA =Z%!*v̂(ǑkB|3<]/sgFmēG{bsrQP4z 99bsև^=j403^M"{ FN6>ƕwj:Q\5ˆq-8Yh̩.e %QVaEuʳꅻMԗ5j}bRʊ`BVN~z$wˮr[0ɡF(36άZԌ6hDjf6Ѧ:K&="mGYIE/Q 9Y{:Ht/K[H^m3 w|DƩÁIdrs8{SH=F8 2iXHSu#ѽԢF:f, ]CoVј<"Em>nz,h7_OAc^^: =:ë{\)lCn_{,ƕ"xwSoT"&Z3 sĔmCYs _6:c fqYr*?5,rX gԓCX3Q|#Z;\~d~ xu=S-YKS0ԇ -ǂ SjfŁ2㲑wq'Ӈ>ilX+Nj\֫K ܊?|`YE&aE;~`jK=+Up\MP :X`{\4bH; yyN EqB:6z+L/R ߏ p%v,)L=x,R0Eǣ胊vEuتM4m#SϑP^,3H \ĽdQ**e@z';)Gr*/O:_$3Xx  pq])HУ źcjN҄RӾub' ]Uh{غI=gR4$QpЛI%sJbvz*^8 ;| 8*=HA,:\PPԫ"y#UXT7N2꽔3Pes@Dܻu ǯ \(E:]u!0 S扉쑹kwՇDXRhi\nsI EjA|XH?u6m=¸ t},&( G(Ae(2 УX/Z?הcf&L8gMXʙ;="񦁮W MRGU]Kl4de߀wrۘ̔x<*ęlv-7Dk9Cxu"aMR~i#ʁz(j G#8wMV3߬to"t!r~ @Ym h)C%.j./FQf7UB,pT;7\㰚o[>CںGn>`M1yɈhU?mj1S=?YMCMeBrN܃fqf$nA9m\(b/Z0#)%+t3Rg@ouZ+ze$rI.#zڕ =fiDjIF93a=$Ċ1i7ƒ*dqD](mzR@= . Jp3n(p \n O1|YUBE8&jixLgF+ي x !ȉ 豌8 b"zdh$ߕE:d%P}VAF |G"HAWCKF8):HjsC3EN4^% Dh' wߗuCetϖgj'JI4`;wdZ̫* ڜ#rgG~1DŽո_UEڊ%"*V-'f˺Vʠ`IXHjHe;f*HyixcpQ0(T.`0B jDIC.PI}Z w!~ *#1N?eT6 5i)0u.{WB5TtbB>gn$`Ē݃?5o(fb%?h2;qѐ4/ e; N׾OǼ8/-T 8XwLa * 2!gVoOgrEWc (M{y`pmVP`ycA]L~&᪼d i [ݣ>^͛_I~4NJ3*/nIA@~'qln@7Wm\Bo/"-'Y«ާN@9 /5$Թq/bkN\5 m;H-ۡHN66xlEk|vObх hm:߭11 |޾IgȄS@R=nrFs/[38aY6bfPS\fUhpRt>Yu4E&>N]ЖvJ pέ [ܹyg|H Xwis]zPf^q$`rg䔿9 ;81p5=w>j%ኸbzb,z3S!tT/#W4 ʒ7{ȩ]pǮ,OX]גn!sΙQ^(L0i:oPPx{.IE [K!ꅯ>XcNg1.h#tBmWVkrUN*O q~g /W40)щKkڍ ^o0_[;7Tq_hs ZN]W?LeF25F KO`[Xa3APi9.Dab T^KW D>h?3.M;kiT& ~c${ A7 j(#v\_9) -~E[+-NLV6;9-T! ƒ4τJd|E)pxo+39-Tqb[ s(yo g7{=_4;0&q-"NAD! r7Rԃ/LwvLBe±&)؉%ϕ!oLlj]M൙Fνʴw{I|rK%䗶v>6 [ e3ft\3u0*ěa}g-@LLSkKjEYLNv 3,'s1r>D%'rq=G:yHHALle%u9cN)uSQ8I)S+Ɖ~9?u#P3=:/:dž@kE98|_Z>\cNKXt=/=s+Gf65LjT/oB!٩jChH틦@WBq'X~v«| 'l#J@[2lFi8$m#iIxiQpy=Z˳r+,J㸎tܰhiqs:A) sĒ|KfQW |r(.͐tr؏uvX\]DK> Ƌj2} NJ3ΙI飈[8HRCFs+PoU| ^ )_z`P|1*$ک uFHRqLv\|nɇ},:7ACh_l3-SVZC)T5HЊFZDjh(>eh>0h4,Z ى딫ѹ%ڹH H޺]&$N_`|CB<0Kw'ײh]3q_ȖxT>T~#pBI2D 6* D>*j̕n\ԧo[~)#eDbw'Ϊ++y=;&9 4wzƭ8uwx;i3o{Ir|KiD1ͶՇ)NiW% kqX?JѾ|CT\|y l␹M>e6vK q1Zӌ{tBƮōN~$^M*s?w*kR(S4Uk|(F#[h)kl-9"SV5SY :hm+MA`3nYXQ&᳎%O6S"vY`1;Y<-/.ul-g$@8) X )nFOJ&=夐bSi=J/=VUmmll?f0sq綊_~<'.ǨœMb4o- f1q$Yu,D)-2>ɆmfYikb.s8 T/A?V_ Aeuq|%wa;渣UH^[dߥj.a8yAObG24aNQَQWXq }oqy6\BI:ȡՍ.>-:V8,$ml.zh9y+񑨱-֒{@gV֪X//3wMs{C7*{L]$ul"lxQ0#NRmc5eyOЀ.Jd^3TgadeʴdrFBwERBB"vv.bw껵9`RpSkz8>l}x6-;s&h B֠ ; ?p }<ݫHѓ4pW2ir4+_F]L Pmhj^YYqc*ٵ Bã\Ʌ,e1:L4ll)྾.~V1Fj=H2=|:;FC q;?;Ouysai LE((o"瀆='7Uit맇d>Ƣo'UnDtsHy "Cګ_t*ڠ0^F;|m.vP澜z($bENj3\ZsM^5ǮN!Йv) ۸,@:Fc*t_|(@)koA*+fW$:&k>]ZKzCv$v ]Զ갪d5x#% ӫF핫y9䈊*ix)#V@ Ŵ0^tj 3 R;C^S!;=ܳ-4YާdᦼsPE'X]nKgYh(R%x Sq񨥓M'dnLHI$ kj%>dqM#g&9u^,%%E#JӞwG6Q7Jdæ$ʧB؋}%H֯#0z?;!NL)?9|[#{LfY.7A5KBk[o5ٸR0:̰ U u>Qm3bupRZ-cd Y #!2;2pUTJ6Ve o][GLd.M{l@Ս'oJF=}mT* v)D&_V-m [{ENeVgb6WǢS**r~ؕ{ZPH"n.3ro^ l~*\!M۪o4U*>,8o<ۘ6."/<>On3?.r?{o|k5yPߝu& ̥v<'W^:hKy6vFksJgZ:wJR0)l^obIX4G$0빎)_-Hd//3nxw-nhGi[Cfj@*ZN;gPY=[C)O3 Y7v<Ӏc[N<}?S>Wv'Y XgPf8E=oi Rx_Jz, ;T +n}G;LQ["#s.䁖/i :rܤ=&]WN^GS̰wsVi1?ӭgk%qФuq#֝aFQ>¹JD܂ DzU,vrӣ)Έ[+Qխs96]OO_.@ݦO]͎v*JaN([Ẹ0d8T&;L[@(1Y,䶨KY$"ѩ $&uxS]P#UmlwfjOmЭ;qp7KF!lSIR=FﲷHմP-z^Cz)e}R`R.no֏X6SG:c;aGԇuΝhtv 1 տM* < nDɦ8%e(3GwВ-cok[RugU鷍A ic0` (Mu]-a7[}Cx zW2BIw2=mh64amVz[1cz9zö4Q>VrurF2 OlF]ږ S~KC 3vcfxTsDyb"$3Ғ!^E~0 =C|msJn]TgV#5cc>[3a!K?%žB1I,UD$@Az:t2ЭJI I0{Hd\4]%x /$ʡt*X d4L9nރK?x57>á<+Dƿîr{:A:6SaӰ%K> -_7,$T2RB j 1Ϙs,kڈ'AVRBs9s`ODoL܃%`%ͤZuYyP!^C>-HL\1)nj'ʐ}mbZ m)U Fd909+";Skp'eRoh7OU 9D Msd}Vj^2E}ΪR 7\g̦yg#6ӺHM)3qAhgUM mY{7. g -'9}%΋hЈhM79tDSQ fJ# ϑQoiS) PBލ 0 ˮ߂@Zלm,l8[ؘ q5??v7uƞ吏o MzmWn |HUs,Hܗ:A^j~޽9 [÷7p$Ou dc̨Jϭk9s:#hط[ZpsVɲO*! 0h*x/t##A!ƂhØSe? ~8X>t3<"_3RGc|>4ĻvV^TIFxjc"|4[3Imپ%NpwI4Kp fMu0H3Qzaý|k=廮SW >]1/ѡl r`ebvzGhЬ rn[0vEɚ= 4dT6._Hz3~0+5'M Jms w9c\YD|r 0p^ʒ0-T!*w\Aa`hs 9&MpdMF_H6 4 =** u?tTs y"u"GKÖ~(7<3BބF)K״[!<uR˖Bpbԕd:f QGK$0CH^4ǾXRgv2iAS5Rlv1UMe:%])YWIp\\+KLdh դ89^̡ӛ״>`XWM.D׶onX|i'D;4ڊlT ;m$А!0n^HsQqbsHʕU1i5fT{+%#^V>Z0?%Z˒gC'^0ckP{.*; IYl%\O̓ fF 3ָ C8WA'-Wx侣NR;!#szejdE#5 /.h: Ng E4#Z;Q8Pķ awɂ0X$7`׎(Ftݱs#.~Xk8r8qklrAr޶Ğtq$ic'RFs% _ ;`Pk~&S K~1egivlՎ5^/ 3@]zfD4]uk OAnfC(sWeq`kvEph]v+ B hes9J0?ٱTng]$ f+@p+b64n֏]60QixszZ\E<:m1s|037Pjp̵~:E~gDv=r7lFCϚȾ#=D4W_ 1gj$-pCj?dnfM-sܷ"_h\gY~@\$!_0C2u hdyV|T ?r GPp!C Em5Bꢇ1ll~l|עSTfXH٘߱ܡ ]l-0{v(ÝizvIiL{4:2c%OԪMrVm\,94nifz피הTEؗH)gF!֤0*(V(N_ĄHBGvzr_}mGX%O$#­ |~)](B5 w;ۄ &6lf&5Af X <r}%Wť;fy+9(A耬wW>2~dWq{bcA%w||J԰G0NߠR ENJ8ݙ3s/6ꖫ.GfnaSVQ~x,`c\{(# S`dT^&3uƲ@a!aކБS`QżPc )hW$Li)mxހ'G=*ij"d]쐖ޟQQCz~ ¹EJ#Ptr&[$8?48*((žD\JaB߆.Õ:Zހ'J S܄D;}_z|a%>Ԫi H5A.DKۣ 3FΡ !wb.buSf(.`ʏ3y~nf:_Pl?䋼4^ HY hT= U6˥P۩:udBɳpʤ%FxF=-nKS3I+Y!VkrVVfڲ?N]t'db:О7,OvEȄ@7|@4W _|(X%옩Kɡ Fb|T]N*t}wk):ɳ7BJx)$'I'lr.-l ,!YphC ^k3_-YơkTAh]{حj-r_MQא:is^>!U08f&z^F\xnj' "*shY[`V|rg( SAqƭah Trx;WppzgĔ2K{gIqsRM/YyR( a ,lfbiBqR qkKzPrN`eӚ RfA"r)]S7J$#Dģ4'[(;;9K}:^桦'`ͷK-EZ>m`pP?N2(.3[+F,RqJ6AcTA?ܩ[SF[d'r)S9Nﵫ&9o+JrdRAɂl#+30C0Mr7l0TM.J/g^{b'mX/Kj>>"ROPwғFEtOѵ5*ȫBE :qHgޖ<"Nim^=wZ:׶ eM[9 f2(Z<*C[_A.`b7Ei9tG09 ^=Wl(ZR̨YvOksl+rn __6/s^| ' V% 9J 鵠t Nf2R@.$4VX'.k$`=0J(q卷牲_7g Hۚ\V~2N  ~rmɏx`e|ӵ%l߷=cUk)Sa[3NB FzXСOʻ[v^nʴ㩜-{g11@:zyWճyBZ<ɸcBRD#UE.3lTf94bL"X,~t,cX7uvց3HM QЏӡ=aЪbvnb]&[sI77A="Vy{#ۨYSQ澀v {8b@p?U|F\0RiOsTve l3.k%`'"]{(|@٪ Ȫ?Z 87}1t VI]Mf]ENvX%/˗d*pH?rK|dbo?T.( Eui5mk*T2vnC 3:Y¨-h ܓAgmCAo]tb>2ہ :g_H~6A Z1a $TpX}34VԠbe'8ZXP.W?#v6 Yӏ?V'0ru8'3#R ,waa;Zcqt?Ng"ȑå &( :sx-no*{$#> RoR&F[w <$w:ґSkz=Oiq~VН_ŀ΋l*ZSꭃ]:M3I\|p1p|QL`ZiKp|:L8W;Kd)*}wf{4*koE,ʧ 6gm,'nˀ|Ï76mѼ*@P_C> wF.BGZ@<}_=DH*v;_bYqq'#5~qdCnW|>JwC~2;KGӀl5"5L3آ~_m_=d7F5E P+6>/9}%Sy:Z0! ,&5SƁ,"JA6~p:1RSxdvq=|'R_% SMзs'D `/ag9Ds:NК]8Sɵ~n"Z#"7eӋ_AӐn5kN$HDM)~ph3#38] 4{{%=r0W|Y-UG(G !=T;Ak`muͫ:f"UmLm0d M`r3wp r|kЎ+[g.<]MCvB** bƚdю;_%,˜1 6'v ]Xl:lUe09}q VY ~7D8@)R8?+)zr:r.Dm23#EsK0+ˀb2gI&Yy9PNH2[hy"^K7n\* "IOtj/[iZ9?n <t,N8{/'Ja!kxnT;xR"[mE>w+UZ goQ.H^21IzpgZ뤷bu'asgƴYgv / 'l&,rĦ.IzH^:%7wKB|h b`nL+ؘ?I,lekf9l-ؗ,CC^r7d!== .m+u,joo ܲx9+<đeժVߠYbFpȼE \L'q$"YP&E!U?XiU=@ՕK[7\io@Q6CO,|;qzmT%NwIEy%{j~i|սR-nt*RRl]I>&#Mߊs"vb"'H9u ^yuO++dok/rmrmFkҋ-: Nӟgěr2ae郪 v0mj IWxl7N8T;H5fA*}cU?zVj7X"لV-ʹyGĽe͒HK$gh:ZއZJ|\лK1v?Os׃3rS&nP P6'"d4![D2 d>k6K0/K7 Y!TQu-ޮf]@YZ(cKj?EX-6ƽ+X8f-PN@F9Hg};}`Bo<h& Ndtg O&pƪ#{Rwz\72^<Gc~0i)SNIJ;6(+I ? HU."U!B$LPj1e24gSHA?fsDLu(/pN^{TrzCN-|oyqDVLW62?&A  t A(6lrC xd]3?K p18Ub7ήP i7?z]AȎ7s~IR2x-UVwCW7kIl;K|^:I~āy@UԹdɓURO5cڻCfmpTP6{w 6/Az_eEsVwþЕH@ ءE+>䞸5 ‰Io@tvI# u fH⃅n:%i%#.sC* =%b]֘ڣhMq΁jĵ7d qu+!Kjx?WPC6~z cʊR㲱]M ߂}` v;!{=&&ۈvOGvYi(tb/&Yqܩit ٱDꈕY& 8Ѱ@d~DT_(g`EV:J/~@T1xO YʾĻiOR\f1:HL/*[U qYj\z1b0{ 5=(m)@R4) q3{ ʾ{zx%L}unCLn}7Y3!orG#' yCgZP6=tAU5c.lLvs_u,9w;Jߚ7.iN8Q!/=z̽UvI'SIJrt֏i NG`TiU 1O `ϪLw%J{MK1q $#-$e׶c{&DzڠIZԁԵhɁ@ߊY:ɨ9W1JvՎ.Jlojfsz5R7.AI B`k30s ,Ѡ Ve81),iR3Q! 4>Vp+}, >!D΅"<[#C^SgA2H|7ˠ)9Rnծօ-}6e3DLP 4,L)1\l<8Na $"ږo~8C Pҍ;Ώ̕* T^wL3u37M Eno" l{woǝ)8m0 #ZَOhX e}d& SG>:*R‰O~F![Z+[ծ{> D^;@ǹ{^Xt_9F$^rmE;[;m;Al@ւZ4 wP0\ccجOz(`*h=\Jˢ!M/)זV>ϼ17=AZT9O|P)Dπ _ȥC{NCYkۼTu؎?FNLr9G 7׬?EP.]u PTi"D.y[6I7 e/˹\%v/+.*ǞiR|G y˪Zzy!@#LpF|4_@BzqF֦ .IG {p qɝMyaqմgn_^h\Yz?vvc2kD9)8Nlz`텍oC@ BD-k|< neoUoC ~|x0+dDOd93 `9NIH!y; hODvnZ=4v%)zʲ+ -k=k6Ru"G9do;#fN0x'A= z;F ?? 0yוKKle딑VDFYNz՞=#)'JhL.qK\/u;qvzyN ldHT{`vv?X//P~dW;ϟH|\ ~R@G& i%Q)eWHl8ddD5P-d1M;10l sbL@m_iw0&T_/3I6G$9[1 '$pri"}szғ-NZ܉L$<6sur᧖_&U-g ^7B?J< X*Zbw+bѓt'mTT +tͥf (k W lP{8wPPlqiueeA2xPmQBHuӲ +;4VA64>Ud[<׉]=/a'٫`1ݣ<6:wsYQf9dM?ɇlC))H (piOc}ha$)LZq+wk:3!typVNh{sgYLHLj^We_ShouʮݫݚX\. !8/!ØсLǩ58?f*X^v`Xar V$3~`C~b`cÖ t]M;gߊDFF"LfôtмZd6$)0*;m+a|c/{sATI{^k!P?q"zQ͟ t`gzSH $rL^EAPV܂pe<) ktQva]BSv㏢z&oo=_f ҈&ZօC|lYU {z"8q@buF26I@4]{#V(@NYǂ9}͔Fk({gJCl\ԄEި{bI5M@ɷ2 YB@=^3VU2<ĝ㴌-,vv"1xݱm%(#+Ղd9FxA4-Q{eh,! 8\ړ(wd>%k>xwf)#: 90z1Ksddg.j̻xrB1ܻB`q#ϓ̙:.}Bձ6~IUoa[.2 ?]&+ Ņ",@ Q4=He[ UśR~fE [œ"J#&1oq*|! ]/sT|{1 d-ɬ]UpE~♞[=^?̨9sʰx 驲_yMK-GnO${cp11CO//dw}wĊg=,|ؕ~5bnY$Bw; W:`x4=6SHQuo<`xv\nbMMy;}ƬUh!RR)IϒD0JcAVvC涁|9zAgI^}CGmEËxm ]Art0#;`yF_//h #7и֤C=qw31J볎[γr%guqB5KRM f0*ooIq@IEd9G$<&U2n[2{ Y!͆I/Ѓk$y{JX^Xs`J~8~ ȸ^zp pۢkfc:\X(H[eTDAvs)˯L#B3T 6Rvx,;@L2ܘJuw` ʅQ9ՊkLn^TA6jlB<eb#~3$Mʉ\p"JW*60ؑn &0A]r4 8F᧱m8qs+_Ow-%V_\)+U{r1dΉ"E!a눤? ;*]~>P50&(+sv)cw1vO]" yD|7ep [I \+һ~Mߵ*^V+2Pq3 #W9qWW]!$e$P,I;ENmOw(q(?|b9]emB`Ol '1:O(ip*M SbX"V-6U ?J{pl姆 0Pб`I oFI@IRE)Uk9w4֑$Fi#%VJLA76==ޛ)4c,r;ƛE/L{G@_d圸Xov )1u2c>`~Mcu8mS㑫~~|4Cvt-#7d&{ˎ{GTp۾KjJ03 uSM?=Շ1.dS-So`=QP~F z%F?HHf>}gi\p4^$HF(s$b6GbknwMQclID9äf43A-5XOu5bg$~ Ԡ)k ]&Uy:$LmdO|1y|qc"[#?Ķ͖죩56ڒi~۩vLWSDFUgHXX>20oׅ Dh 6>ی@{b}JLU1+5yN@HsY(I feئtY,] :b-2 L'Q'؁U)l>Zg;￉eAz]}w+ξ3<ߢ~(5Hx~#k*f5GWTVGƌ>sdBGT] 7[̷q ^gƏ#.9-AEpOIO)DZW6)+w'td\ad4 `'ˬ 1lc'Xi!&(weKHg\* Ub{)\=:~f@$۹bān*,y&(8Dt6MYSDzyF=HJ1nҒi&~"Ԅı1&6XDWVd8CO&T9kT/HGPK#eЃV/yy_Z(oc]TT3]QSUK9`+>]pw34jA|1{еw%$P/EƖĂ`g vP]]G\W<2jIɉ.4l>\їltA/faS{Ls-*H|]+HY!y_ZGR uJ3LWs7# ]*yY $fpY*dsyMjOHT$Qzvs̓'aeY 3 Ǟ H!ڈW6VG] -5 T+QZ+#<)S{+ʶH F<\ A*iPLxߴPvJ]s`/n''z$'hHK1//7-σZ۵;.gzw\el'sJt^򥝕.˩zIPA:ASs@a,LNkz)hw\ cv`rO [$udЉ@8.6 egD L%2ΘM^@?,;04PRA1\E\ 6CԦGrٲav{Rﻶ3Ws ɇqEB [leN-2O5߂O07dt6rщ' J[gNX+ײi_Vz~IYNjJobh+LA<(By#}xSwV6 Nރ}s: 2~K tٲ-d([g5/ "Ds = 5PWJdp) .V|ًzkp_nbMMO ՀdS3^lP;SvOAt%~h1F5ц_Yksch.㍰5 +p=No.Z0$yT5v,OOr;bEk]bpo>-K}w9S WʽiRzF;/eMyoڱ@Oz,IG<Ҝr~A>MqONIUҧ3PK<+mo*LӌXV<}'G5 ț2̭ڸ{:6[w89ԔGPc߉Sׯz wڷ~w ΃նwS]+ \S$F2rSC>/-T lRU _O0$fVf ݛ4RƢ3@l-Tq" bӎ)\OKOc{1G~wL. ~흿} dy6v:vBj%:*rΧWGduB$&Aڲ?ZvvG ibloKUh?+B^؇>jgGXrC_x{wb r8m~О1uE#' Yq#t: hXfNf'?3\5NU8=W.[Gә=6b)BV~r}uhy^AP[@cN~&2<,..`2bbӻ Z`ƧxTՀhTʇ~Ma=ޯӅLK!0>3845/>[Q"9_E#-kږ< }8G>t\4rq)zҕ#Z^miӳP)UC<8&(x!-m!뙤DF>b #ޅK1_5ţ D<걼e0^la0O%-/׈ _%N$-쉝B=j&|T 䡜&hy[=zclQb>^>ƘjBAPyz_z{ bLTj6^y1# h426PB$e@n3K 2|6ё<}h[t*IE%7HkZ8|yEu@Gs>Ϟ|&I4fbCPMe*]RH[PuHTCr¾Ee‚EH-c7900T({JRq^^{ g*ȊS%JoP*#L,6\seݓ ,N%{i 6?+b{-h<+R}vga`Q?::ZTQ8AU^Ԙ_16Q :XH4̩eVҊX_n#I7cBƇ'Oɾ]5NPHME4 !T6# XF0R>eܨ.-Eq14zNd ^!v6itf3QHԐ`~ܑzR9d-?| q'Y4hMO J_>/7 73pNRJ7R)Rj|i69`CEi 14σD >mrQGYq i ge6/ LcXq ,5j 6M33Zvʽײ`>\>{2MV .h9#s $zڟ$7'5/kt⾈;0nd8'D`x<ַ'QE>Jr )aLx@з nv]fiD`<4p_yQFEeG~=J`XUU̕x`s Hg@M| cyY`4BĊoʡ8͛yZ'Ȭ:^ [W.|Vn-sQ@SO&a0{[l Qmj/ |Xr%c7NfH z_o=8VᒽB i/4u6 ضlL5Εxƍ\񖟸'T@ds2ޛ< (4ݒNj'gߊfi|X[4cBQ-ѽV@#p BMw,xmTDg#Gո 8h=xN',rYmeϫEk?̉+ę j4PRon5o R9aUQjWѣ܄wٗSwFm ]kt ;I0oPNJɅ4sl:"0%z'(kjbisEE;?mnԞ?&F.HQ]7vGm|j X8$jʘ !K͐).0UÎRm*JxW~EZź>lثdnyXi6%]U)3&"݀}u邃}`t;/IQ 8A:*Д/{*qhlj@QL3!Vv¬LK`Ӽ?n姤hߓTO)'ɕ_ƝRȾF5r3[b[x>_#\h(g+H&cCrI49kHC8%^i0r@%Z_,@Fd4=aSp9+d X"0?Tn =q-:RY\~ | yLpkˤpx>]#ux{AirA, ot?͓^ߔ1WRdD(d]fG\zTbrYFk8L-_)z6 lZ7rUdCXu>h=qLmfC8i VDÞ|"5B?\>^uLszr+ߝ-u搠 MՉ,gUV_Cƹa$֞o).NR1 T%H#^g|1E[Hq^fUVCgk`+~S?Qq9R30an1&493Kk"%T|`=Դ4>2VT Hc,}(piE.[-1^Wnmש-8!GT("BN'863k4/7s",ԩXf͢ ">N/ɎtJa8dL|vO# ,& 2'Ng !5W אU1&j6k'mOJep s{s-rI50'N(zz ۮĚ,OwP47cAYQ$ (0/ڻsm,5uAw#{?G`ʴ&sImI"J>nTtR8z?( 27  +_8YA}x=]/hU HI-皖rtQ9̒O\['e#ʄ7c;(Zx c}vU7 !`Mv4sO?d׳4u!zD/pBN[盋D}kj͇(\! acxEl6NP܊Piy`G;ӷpi%Ѕoӏ.*܌510@dM:U!{ɋmð{i 7)K*)Oc0*k5B3&d]7+F9/8eFkw*zF}ZMz}F L;R4qd )i8:V?Wůޒ Q)ȴ+ATJ [z6?y Dp,uE9{!OTI6xd30soߕLg@LަᵼC3N+ 7,Ƚ7sP%HXYߵҗlJ0yx_*w rD] e1|ò}KY3iqU]B_d6&*hDPQFOJH{ʹ11s k<@la~SHJMN`E?ZXĒB5dg]JROd֗6@1"q ZqSQ@`q'd207o]8tn^_z佮~ j~=Hkk*1Y= kW ]M1D#t˰eap4=tkWRNa)^Jr__~ϑu]J0Mbaņ>'fl" !>%Y!Y (CZ!fHI()7@$@Wa1y 굎N|\,rQrH4/s- 6RcnP EL*M vOR BfRs5*eJPNh`]CCQ۹C XG2f %"c[gw% ABU!e}Jt >mNc)i}i7]`ܣ&(u,Zt^EJL6\MZAhb`q5H뛸So."UR x!Q1u f_ir {_5T;]StُhkS Ҹ '.'y mW| I'%t lhlxK2]'H*4x/e?sOf?{@يPivw+m`W>ZY 2wa@Wo@5iC)Q|yU;H;?3sDf[][@QW6CWj751n놚-Ps^6sOblNԕjy<Ψ73#?T@w։eJ=vթ&n^uoՕVycsPJ-ݗƂJ*෤)A.c%nKZBgoY[\$_Eh*b/@gjhx,cV\0PE7%?i3f5r],ƒ_xKIOϭ!/C6yLo >X66 /׳Km KM#r'*XT?L]Zp0/5= ?te!"Jn-Ȳ`X޵>!N%:/c2u{/{K-k(zU/~MQUaްm٪bv @ u{ VG@X NɡY]$ n^`bZxH~? {˙@lpuXkuVY|驉/]6FYs۶3C- |nqs!p2f5"7Hر C?llչ^ N| 2%w򨾡MT{k :SbS\e (tIOe[9{V$*T'Q_]}U-3̋kɓAh6XOU ;W|u D5p;6-&y :7!PjޢWݑ_a坾W}RP LBRN]D?.H*#U cZs*EjΛ3wHxV0  >y]H7ɬ.;F0Ay%~Nji0l >8XcK&a<~J˞iv(YG֎AUhL˹k1ekVGgM1A0L.96Cx>J'er2]_?E]91g82pGcї|!,mيL?^zJ 'LqnS3 ݣ8(I*pR'.W~c* |&Y߭!chgsF-)0T̮:ֵgPE ]mC]1Fh \vHF;'.ꂠk>9UgH}GswuY|pЕ FeV9Ffl 陱28d^yjYl| G9$/]0]FjނClH 3E#nO*~eNѵ5$t&sې_x\}Ѳ@WUY't>v5ʁKrE2"f֚# lDs1SIJ & ~ 2HEu&f͟~$Cc0H D=4B6.m`,o%8C1kU:F%#(@ o;bbBBkDOV&1}EhQ-.HC7gq+y@D38u'dW)Y-U)1 GvcLvqeȕ,|m6QrufctBYStJRӖBL:0,Nh}'Эa,QB(fB gC=oX ;/鱽sܿ$Ҵ} NJq<Dod"!!a1#i*7[+o7=*2]x^\Nx͍"C5A<Py{hLxeDוյ2qcQI9}'>Vg̮Q'ƑONݻyWo1Dˀ~|uq0 0OK>?AyJC`+bx|@li=\Q9#LG$q(V,C i[q."<Zާ">ZP(=VZ"ꌼ/ר( ;i.XTM):#Oe%/[yFe$Ϟ$x~z:eg̃CíWJogs~JFX\,j18=`e@ʉ!^Y!e[+v*^4#Ȯ(y}ϵM7{`$9#I%LYWKbrخ\c.>;Àlum-YO1*=r#{moMcUTR}G!r&WGУ`|g>mP?4[ҟf1aLWbɲ a󀯚d{u/L(olX O%341!ŮF_V{7KoeZnZ2ߎhCIƂ ۖqL O14N &{o Z{}zG5uGHo"і|T$&̡$Ե"BufC7̑J| j"tAD9ٶHxl4nr#NTT&:.B.{PJK|-SrZgie2pbx^k\ 33WO{ܨao?.g\ _ rl kF V\fjuBIymF!*\X&$fHEP،rݗhR4b©v14, O &׻9BqmZyNC:yiHXF>f>`o\6{5UK4vDBRV,)?欞w Uԟ>:EPt43N?'IW6q?f 0u]o5KAwU`SQYŁ㓪-(hㆪ1*O<w+/z/^b,Bd i p'aUحi5/H BCr}F%HWx؆w*heL6qB#C!Y1U[ydIʮە?ћ~Eݠ(2ew]yHw:U8.;vq'#7M+]2v145(CFd乊>.H6Տ[V0<=8Yn"@:P^jƈjLK~" !&hq 8Y1  K1vq 2sT%O<;=nFnF3h G|EpOc+Bjv-3=:}ZL}E >@Ž7+-rƧ3AMƗ `YA5C1xi2f4͘G]&yg+8@0VH9bṅ#6/33Z_xCl_F7zZZ+R4U b$3i>Ayڻ\*o*c­&%VKsac{(isA\-_caJ|AwT?l^õĺguۗh -cdX: pG𝡍֑xRr%kNv`,j i9E\YaVK#PzFe/@[މ'Z1{Nͨ_*ګ6C6^"N2pϒ#Zc:ⰌYh=͚V !xتB:(D;͎x2 I$~v~8?`/ʼu,&6WL(6nwh sP_C@g|h'S1cE/ XiF%JW[%,3=؄soOӿMTjY׵vo P' Ɋ㈩aXmLk7e)Kܾ׎ArDtԊ0PD( xpsպ JpqG5^q H;Fݹ\J;8&|S""DM0^lXԣG~أ Z Uxh%fTy W E$Lʜ`Bτ@+WNy] 54F)bK,3%jEO@ ?މ\M?ޘY'Pͨh |]Fu\ѯdqðAA ?p+=R^-g^η\ˎȔ`s5aQo.QؠgdĺxCQvDaOsmǫ" ۗP~o+pmK䭐bk]+8cv.BF]~\8}p̷+ =gށyT\-y"gs^zuO_iҊaL[Lާ ru zI1_& XxHu58g6#V)qn 47Bg6U+Ln,{kc$8)fX ET7D@ ZxiP]?[MDs^#Oz`'w:֌B1z^x}67 }ḕ9:ς8En[TS抑 kw6$TjR5%_|-{& qʒh!OΉ͂yS h'&4l}:PFk\LF1 7_Hx6[ A'8ӁFN IxHY&7cGhcϕ Rjw0fqq7Da=2Iq>fBH6O$ :ɂf9cNdZsvױ,$N%N3E@$hI)_Bۮ\s'AG kUn FVp`؆q_ %PtȪFy+X1$?چMaT/ܗp?s$) S$F)/R5WyI۪"Zy6"GXíbnq@\m2dtWT't{ I6虊/Yٽ1j,1#Eߧ%f}d Jg}}!}o%-ŒeяHrcЕL$s) &C\2f΂ <+÷|aK+93෾`N8P8 `< ;$#w\1G5A!9i,g~}` ;mDwrsҎ@'X. B_;AA]tÕ8UQg^ybN0RMP&㧞}ڄI/ qfIѤf{6fCҿQ*O#2ppրp&3+9EQ.p6ޛ τb^b"hDsTt~)rHvMSr|UcvoH)Dtt_[^ah {qR|MDIPk_ƍZcc*F^>ҿ\)|YBm$΢ &.S7Fwt2-$ ZCSTkH n_8(~< "Wy2.uZP]jЙz63NN>Zi۝8) /p4J!(PkclO1LfbVJ1)*W,SȒr,VOM@3w@nߖ<5Y]8U P3+ۙz$O1-9ۆ`^UlS.BF.2d2I{7>= |ܐ6M#F5T)W˅e֫>vl/a58LIJz? -2\C(/,VÍ4sÄ \Y{N } 9mfVgViTQB5VGYh^isU|QۖKx&I];MYeO9MnDY #HnLI`I/t˒pVEYm &󜘷`1XF0UW߅1GBZ: ,k]aGpŋOC;dC/V?snhPhܺ?Ԥf?ΰKp4ʜ/Vq4Aa02p|j6Hg:Lh2I j4d]P+~^Ϩ4׊^!(^{T=oB~tݽ?!r-nΰʑ;sKnjfs͐2ގׯ`?7#fdȷ&XUpCjPVe}QoѩC-M(/?5;pHzRHq2؎;3ƅZ4ei`s +gBoǃVtW<[v]RPxބ 4/u .X^Ovz1 T>0c,JrM3TQohA&$nJ2;*]rLH/ o'8!s>M!3V'~_hGn@I&2I?m(R}H_W$S{|ֹ4ckÉ#^L_•$ϝo;ŮC bOI] ]O!՞̲K2@|Z(:\ڵDc)D89Bux[Xu)m^fԒ!?Mx"WK%3FALm a1;nRbۭ4)yhyتFó-XK-EKEt׆>q5<ƯvS%\EipRзU uzwF53LI&8&QRM-\(d m BUdS3ǀ41 hRǽ[<+ey!G8۫>׮9 L ~53h~X*x,gvt ZW>m"lsHv=Wk{zcWN;S&l X RѬsЄ<3!G R&~sLt˩A&_̼]i5ju |/A1 }ġքw8ne>1pOE|jTv҄6C%ړ/nqDNOx?q)LhoHfpt=ﻟXPc_:[Ll1AU:P֜-#~/E?b{ ."2Y3!%f&ȃ2Hz¤V &hڷmu(K=DlǠYYng}9'jBN/.LVE2c]h-Vys2s"Li@4[h̙Z%Y%,\ֆGK D!ɉwg{~6u-Vy`r,'Zv_T0U7NV~~fmr#zU1O%aI3urqUXBnpNꦓ_J<0$ FaI>e,78 Ϛ?,2Qoo΀WzSc|o#zPm&B/j:v"F$(TNYit?Z~C,ԃi<-asQ G0 ",돽3Isgџ3//%-{"d˼:ycTU:N4bTQ()FYmy f}{Ha=IK'Ð'65#qqr:k&[Uыkl}X(MMF]t@?kR,{ihc=v!(ƃ?vgbe5便â= ~uW;sGǜ^:o ~p0^dSRpT]S S.WrZ6+!`w9n;r[E@6P>i) H^ ).CgDA˲:$w:FD{+-᷑`ӣl Zx4|}wĝ8w68c[aXx~s*h< J`gW&:y}Y$J*)2VOB12P<[bf:OoԴ-iuTK3F&>?N7c̈́w&v2Y܊ 6Wm^J̗f0?޹5]1p,pt蘽8wG뷇1 =;LmI|J-5FKpsT% *ߞ0^9*k)kt(/.t{+YH=U@O/fl["/I5}ׅ,&ls~Pw(2D iqDj a@RWmH 3.ȡn)?+2RhM6vE7P6)bkn u 0KƩ뉈>d 2ŵa<֔|?ex;aU%@1 %jIlWN=ٝ?fy;;yڭ(Ӥ< V*n9WW@pmH!+ 8>s] bC y<,>~ϕSiƶEw6{Rb~L0pVk'>@.a=uܭfO:ꔶa dx=+ > v @gt,I_9n>w볤3)6"pK%kكZ,.ҷ_O ?\fiв-6 EB@If|a} 歖hęLW7lvZg</a3* $ 2X%`!- 'qaxCy΁=@}eXLh7,Z%3utݕj0"҂exP@bo5( _x}+/ș-1ݥKFTO?cf?{5r1iJ#2褅"sRCl mP #hoQ h'T.,/5϶3롡!$&QI7ąW.Ux(Z $\~޶ ɱB0s1B8$MOTsy6p~˘ќRKW 4@V}zk`ܞXcQ+.0({JɆI$'&AK$o 0MȤub5}I#PWusC&F*C/k0ߗ{`b5I%vS~lS\m>6p 8%ƏtaTҖQ6Q(~ c$*[ڶ5.jb7,ez/ȪvlžgJ!fԌl7bq\D!e #?̺ ,1AmrhXwf.X&ۍ gjAS 74$JMk;9C?0)@{Zo?诶m%'4P+SZ˯06\%,ME^im,+$U^~@+76DF҄>dK;eFpEeu\{|*Cw ^[F!TYq^n&(eE=_:Z  h%F7DKnhL4uQt VD"<1= 1A$9 cҟh07^D'1*ѝs/$kw ^!*7ׄXjmM&K0vC `(uq T:0&}t=VqD(Q# UT f}8ᆵ!< uVYjqmN 47\n:/ /2|*6P -\EDHT^$W끫㨒"ZOlbl)cW7l5jpl#k n+Yƙ'?Uˮ:+u 8݌E5(ז-H &L[v+EaS:qζD -FO+wDa.tBy)Pzǔ">+Ү&d.KY{&ȱv3H_`#=ޱ{ϴA^.zOWf@{om[Ms}JsUOL]͒ hGu!^a3oX-]g OU^cn/: >~K J}ȷW =U#Y!=KK nYγ,{yfTTljujmr^#G]L,ctUu͈y^TuB^uEDj֏;^XSNxArsB߭!aXtW[v ?P^l~uSR8MtC%.0\ .|;U&F|fd׋Sdd ߲ cGC4Ux- yݗ%c`]PѨ9ry^p8_1T;jA"R|HHn}42+ձW+eSVʃk}-tx^#>|~Ϙ>&`2= ul䮻{=Dm7XA=rXE~$*;ۜv4H Wc} t{HY!E6a1gD qks!foC fw1!zoFSQMjRAY38rbkϔtr8謑G'Udt@g40D?Ρ|̛]#)^cWf!=h"{j7HncS{Z,b\4'k" G&<-/PJ^f EgS<4@C^Rvv~/Nj[Z)sׅlY|yi{PrK)DG~LN$~ yOŦG%^ё @ ;-OمI]y-Qܯ\4'>=Wh(q ɉ07ر)%1,{ [J%/>)y5 @ؖB}a| 7-giI5,hO,[腡<%ltjtǫS: 51 7=h؆פ7:꽍~?i(3 晣c׿UGZK% o`څߌX5"__Z’d̢ z,k4#[ѷ>a7=C; ;BK~ V酤 t&A9!/hY]u%'CC@_fǬƖ‡~]qv+̳~j`.+40îoNfrG4#XӢ12b'H?-o|fNS]谝DB'VH_xGǻ eD[3i=$a$}wIF'yik}3>[\ty#T"I{zC؈IJ-:dhIpLJ3V4ٟ'\iIwZ97yu+\XU,ܜ=CГ+]%R<,>#ԄWgx&&V36":%=Ñi܍T.$<_oS}b3ƶ8@BmRvjkC ˦d4_azpn_0 55粵 sDS U kgبl2œ؊mĴWUý߼)p9(VJBg5S@|bDva_CBdM8-xu\ w{ф9Mu}mY"{RE4V@KAӄϟf͂2صﱙ]"n꟢EGQHc=3#jSm]IK"2'U}C@bt:o"-d&l)#RݓĦ(Maɺf`A"@ӿ8=F>ME軾xJl @ݞm ^=} ' ߏ L{~<7u$uυ;DŽH q}/| H}j4˰$Vc 4lj4Sm&~~,vd6@uC}(8vB5By[gHQ 1rٵ:/kޚ\w!ɬ^ oaڃyf2RfffA7ٞlWsIn늰r^ԧ)@yڸvbJω tn(l\q \1d&\Fs7L{EæGs _Y@c =3~Zebۚ^jĘ.MXV9~ⱫQA)D3okid9\gL '5@fJ8ZNFɗI{lԲnjW+ɢ?Dy>V@Θg Cn!ܖc7YDH~ +i8tB^ #JkXʼz#;PܳgK`MSlO.OF>;>C?/1xgkt@d kJVKEn 9Y㉙1HvAm mp|aȚ?ZK fvUGw9b0Dk,Q\&d}* \*]Qf*t ?StFJ=0Qk;J@/3eS;1\Db8FB*/ܙ-*R`pjC J˫Ŵ[u(JMJ{K'.n2&_AoW ءV 'ܻ첱 RM{삲񡕔 ZKaTI3zեF3ԅ4Φ~S6Je^|t]A4iD0U2i5|`1 {\>6MZ0>XxG|5O q/<˖жar((d;OMbx;xf>)+}dy;`;8m4DIxlx>gzh-Tٷ.5!%"s ,U(ȰdH?ӭ&lF(brW*I9߃PZ,ٻe5\lgs*VXHihV&5cÙOT^5΀(?|Ò, ruG浠e;.'"9g:Uh@mdC6+ ;B!* T141%P>s@d1U(8Sfy_i^zDT>l+pÎyej~@"mf.}Ty~K 0Fj!1-}|+gJHOo2dP*ߢtU:Eb:a=$r) RpK3S :<IÁsU&qyk|=|뚬I>zVP Afohl|o)f6YᷜFUBCkkjTc-o4Cdk$5b^/ȴUKer:v7C=Y1>c z=|h:,PjP wMװ.MOHLi6e i m>U+2s`gv{j*)v}{Lnd+hű=B$} A*1_saQFa<%XϪa#Cƪ"~ qE``68!W$(ID@m)dk\epjSe5H>iN+2ٵ@kp9;׶ܖ.Km IU-7&Ort H߲i(6Vjϡ]2,ߛ!FQlƱk7(8R9G Ш|TpľU1jL66qԤcI\R/#|*ʔڂ2Ī/ UG(w%h-〦_7~*/ҿV \zo^y=o!J]YZH\@_@+I Z5z,)H%PzIx :ȓ'+./6\|z_57vS>\@kehӢbGExH nWوMАQҚWqihe½v 20~bUē>yi@t<9K#a(*=|(3-q3"1'ţ*p AbUh tJ [BS %lsq #R+((DX2꒑U)fy SNT Mq~uFe\ӕk9R_/]@PZGDbYx]߯ $ўvх@c3\vDMy7*cF zFbf?u@ !"}e}žM+33fL m YV'Pγ?2Y 9i4ه%rka=/JG [ܫCl$IinB՘ߟU+k"Һgt$zg5l+6>qTDxx`(n&SDmvua0ٟT(a&_AΙ JB#~BpCa|d5;އ!gODFm%#>:| Y15xT'hTQ񱦍-,Է?ԍ=C O׀A# H ,(jpN_m4Nb7 +}-#E_ )&_uHW&ÌMk:Q63|fviDTxX Ak]O;I EOZ\jT2وYJzclIc^=R (E@+8,Ү?RLzEr~"9َ1MŸ Ÿ|`')&G ޤբ?3*>_ IJ]MӾhEExiA}?t)@.lެ4=%wt߼m)wSyJDgTV[$dt@>&M՜̫<.,ڹڶF ^o/h?IcqYu_% NSHpg5cs0ų%#V5+QLgTi ڣox<=4"_BϿ0T# 6X uht#B8% mnuM&f4-D>"`7xDtA#EvuǶ*7N99277UZۭ+qߦ7$&҄J_`C'5+GLk7,"d2r&p:cB:7pKwlfW /aU=31`/hu}~xx O%6*HGggrC;Й%߶Ig|˥9XIwSo F;+ {p[hGZ Sc-40oGVJWRwk 6) ,$یʁB6 un744oK8 u ]5V1V1)(Pa7\J͎͋OfnZ&H$ %!\)[Uh W ƋL夼ly@ǥ7);Y=vwVE":cw@z@jdߠ BDDg {eSOK^JE R|wS$Z1t]P7zQ '-C4#.\'} a9,:%8,3N ~ԉ5`CH!JR`^3w0y<>j]\k#FY<;lM5yhPmpG1P1jZqŠKdS3KN_:& 55v]ȘRȈ%;%t])Ép[Ufg_KvdTvAJbU&Њ0£?8?jv/'j*2֓i?"x)s ny]ۃnAQ4Cvҏv]q&Dr\䍕yfgG>~ܺMOk)bǯ$*~MP-O.4؈G=oPkՏ/lގK:X~I K*Epgh*Z? }wRw%a -2*,\>=dDYG5Х iPi&LFS_[޹T5M'Y\9VdDuk6#0g,V>9Ea]<7&;uY54R(9C{0ՠ$=xWSOLrV:Dž|Nȏr|W*Kr.r>^$VkW<ƑHGwRAR !kT~*հ~ *7 >n{?セt9I3xMGpzHWP ݾ~(q"WK ]%Pɪ` ]=Á5&4RHсA˿f(j#VkD&]-؄W[7&K_ƎY8&EN)00-@*{?z&tont '?p{0޿wmv3!zki؆yO՛Jr(JMJGdWpt*D*Q>ſ&Z 8bJ= *ۦOXZ؈IHu?EsP͆޾KY\"ω9iӓhEu`xc]'V*?jCIE4!asgV@`îbi&Q?#yJ"{%Do1 S @ 7XUڬ^ JbMAGH/wJ}g&cyV !8^G8BaOH•TL՟u ^w$Odq)VL3MO2QšW} hHUXN—Y٥΢Bs-Xrzv_ ۘ!7Lѥb*#\Ad]y|Y8iF*vӨUy#EJTqThz"A nAwkiK ΃ fi*wqoh*TBrg/<z|c$j<jm*@Lc?RMHe T?EJ]]cjWćl͘Zɶ}vgsH"[ 6O/,9V mE{1' Br8wG&@8?t=ß5˸sWX"ˁqVѵ[utR˰DKMm p^s϶0r 8S`{;3*C^X:l XiYTxYJ_rݡ+Vfˁ '`_p"YbBÞr=?H$Le#q-oA/9bszRv},$B_ii@/ tW k+]q{>YɎP.rDY öMx:U:?,gO" dnV2Cx\IܱFwtf[$G:ߚ]ؚ%r^O\à:hH3`s_7ufl-J5k BqDq54`\X_ [;J0_]Y шLhPGM6ّ($= A 3 gi!MilI;t ɕjSY'ΓU6ư-KTtЍdcbuJ]=X)Lm-5+=u9c\O!z 6[a7_rT+H3aԨG5ME`_-nq<)E(/[7?q {2Z) &tsl@=] #8G>.FUត;:sX9<<- q|/AA 9;) sUu9m;w2!WF`<~mE=I#daMIPWKeEaD xVp1A]h2:Kr'#pLjbWx"g60%HHJeŸ =QN,(KsuxkE^tۡgM[A 9BOV|1&~Lr Q[LxlGZf>k(,'2 bl.PT wkhvu+!A rts晦40|z~aYҎB'*qwu }6./-OB{$g^OYz{e}kZZRO],5b<\'R_iQ;%&aBV)Γ awz~渐3*oF@rDeMpDf$d҆{mG9ܾ͎(^[,ڙS4aA\tRRc`hYfWKN7d '4hr>r}BIgEk;HI#?œ,סDTBGxBMe%0w&~ꎅv۠<6E%E +0~BAMhd 7N9%SL/뉌nn+Qrsʀ'*XunȇPsfVoE&[d">]B+#xxCrRZas*0\;80:!vp/G75mENqIi RQ9Y0>{-U"ki#k-:|X{ʌf8El̃S("ڵ8 ¹'H?,Rs)=M0/+-O9隦BA.iCPs'aTS9bz5M=<90XW>C_(K(| ߾1bT~KSq.]f f [8!:",7jwn2yƫ3)wVA +rt c.{I#I#d[lͭtZs>e,P FvИ$|ާr 4ߵl+ "[ftayȩdUuqK7<ŗ}E ľõ CȏK+"X*@g-~>y+T\}>!M6GSE&#AxzuXḑpamȈ+\U"|Ɏ K?lTB5 &Yecҡ<⍻-0E?DuV6s 1%ofn $"SN{1`*)`;49<9CH2擨L1`ӧ`2#CR'b!1{KEC˄O1YTy >HG4L)$W#qg/ no7t8]$|`Q%C!FMJAvq %cIb/:g,XPP֘}'{$ge+:y YQ-DJc5ʯ.uIt UN'/|YN{V1~C%9$Q,yݷ1e6| vB Ou"w@ +}D>$/F% 盡 l ? ql>D-s9(h~-T WĶ,5!bHqҕ!m2 }RPDž MhN:"9|KBXȆ_]x|p.O:֍&}W/4$TBꖶ2I4{ͻ?1[K2P BԹH e)hHJI+V[  EZp rtELziOPػ!.i%M⾹VK0trr`MF3p;1FmChz/}R!C}p C 1K>l- N BdgW*c|U@D26*A$4@nh؍zD; zF8v!O ̈́O%)u7b\ՔFRW u,,_ Q8ˢۮNgap& /&{`Xįp.dï⅒&㏨%ԱxبV |_K֙i[Y #og7Vǧ`v0hTR5V5QL /y`g|%1|6S0J|*W#n*BrqgV&(A5Djܲ0ը|]"i2i1dt#T>o6H….;S@\G;*Gg۲]VV kExXŠC0Nsq0g\g)s=(>NAy|9GKB,Z"POH ZFӁͲdWBqn%%S) cAɜ3&l4h¯xPγiS:ִs/qY@ ҡvkV9 %d݂CIV-V(zݢ-h]:+}DlTN5ȥQ;BK~cWY{\`# a܌[i4f$nWS ?!kCOZ |ڹ0ZE 9B+~SKWa$Kv+"#F}a&y6Z4Qi\C#wmX/FS^IPJ!3t&H~̗kԓߥԥ+uH) R w%BthFl*B?d!YN %nx-wxu ghѻ#Ԟ" /HeǴo45NVerAԖ+@CQQCǿRLP%~[oAtU\[]K# 6W7Ȉ: yN#N*?k87mX»EoN/BE8>bb\ +眈^k_SQy{Sɓ :%C tY+>7doy `SR;µZVH:;ROn"SyvQo%75KzGw>reu8VU%b#˿- %@d$$p7Mzw{ ZW% Q6O(B)2)٠ES/Lߝ#kʁ ޻zcNeC+1^OِueՉ4 ~u|z探ҽDY̍fCi)}Oz ͎ i1kskb7il|e:97nJsڰq%MWĉ<)a6 2 C-cKc%G%k2gO^ nm3=+.'hf^NX\S ,tªd'A暲fe"S>%%Gcoʳ /XH$;RZXQx珫4}طe0G_CJ>/zhyz&-ta.a@op2+~E(o7ӭjGoY&-Ot:D&ש<=h܄"yFLI[4SGm~q8KB++DYɾ17P$_[j˃9|1 Iü:vdpNۊ{Ur5$f Ѣ'[g-',|Q6UPX,:zO\?0B&ad <4vmK ӗW ToP deM2f͈= f4Ty8D:'u9q&%=ӡ&M[y!9Z8~"ԁq Es}07v*rpĬ["MG<2_pN,U;i_:)YpLՎ33:pB*^.)WNՃ1.@H,V+6(zP) ʼekE Kee([ 6Xi);ɌQgV:Û!Z5oT`-ĚG v˕/% )4š u3R0'%p;У'AT#2v2t}Up(AnHp":$^Xc#|1(?T)HPoqf| 좶r HM ])1Wʯal2뾂⥼z^( ˘@}Dܤ5R.¸W^k2kQls,*CxTΚ-=^qX-RsW+N,ߛL*7GT1Y%?,a]8/)qOߠT2"W;UX^|$bw=Q4Dω^4vǻ6+F. S=OK10 PG14LA2GSPDՊ"[TEAY~H,EZ9,"QUS, <P$a7Xyw ƻvhک6?k ڥ+BOnBqa=9iC׻(twž0PɠmFU̝٤b JQTtw/ƪ6mDƂeA,27}ȍ/R@7=SG4d]^,ࠨ$_;l=fz\fRf-5dѼ9!XY?4V<d7j4V*BL֗Ócl9ȴ+o}fe|w7A#=`ƹW'[\ sv2╴rDjzs :d5@ "ȐTc^lE72Gk+ㅃMMʈ6qb:Kf*y+$#G^buŘKتՠY\eodJV#n64 n'7Ȕ)NĖ]@;sϢ),BD !ݦ޵٪ڪ-k˵,hЎp:4dO9fDkf/ Wrq"@̧~#Mk| `sך :>p)~gnKEa4qk@`lqֿ.䏃>[iFW`@yHHHxTLz[^ow] vz҈2Z徍^g;KFolJs1u!V#շK4d"O)wp@`^"p۵;i'tިF hѽڜd?Q5Yԭt!o39{qjZ=Q31ϣLS&$IR[٥6JIM57t4fg.1[p[NǴT /c,]R0e3jo8 8LtX GTx55C qKzƂcҷE-:=as&V'`w~Au6cKE(*8OQ ]^l\j}VgQڷoa޾)Qx[<)ݫo✼ *&vYYHHGq)x_t_fy\4Aw.X8+,#%j+z:,tit1~%S^//2U nOM6r he?*.u*x@\J(zX-h hSu9Ll3 р>بx =+5che%֢ kƫ}Y:N%")}λ)IKh3M;Wsjc4f5|CFXb%? 9R^"Y)P,$vj[M8=nS-X $%@\4ߝNjªSKՊ~fGe-:R_N8M'Kg!Ʊ+?= `%REgtOԘ0ɒOsO^[ŐlLE1ǣm֖*%Xv MX=0%AHTlawb'r0XN?k:P_*'ёneNxlqaMJ׌Zp!xK@´/`ȥ&wד8u.i픏⦗϶]{q:!V$œul@q7|`ޢjAF(wz31G%GMxEQ4r.fq*YhgΆOYlp>5a}htJΑ YLO\Yd03q S!Ǐ|uy.CI O⪵<{dXE)?+[ "i"ʓ@7@K c".Hr>~+JAm \9 *=dUË&*:6"P%CBgz<3NT|  )Ҷ>lm/weMM9H.rcY*ǧ]3N)a&&?G'9rFvTA3H,Åd$?Fi_-w9*ȉPZFT̈00\^)/׽r3e|.V042lSh| BQŻݕ5v' X&B&G;{ ؞mTi -..y"hۃ՚u2?4EN?׆yFqnEPTN0eA>&Ph%`Ǟ m WlK3 ԝ3X}c$'!oYlr1^?gOAssF y~2X9 K#J`YAÌ +wvV>ǔ}$X|}h`sP*Խ#Es5W |+ɄB?'Qu34pM n+3ROZZTtjOM|R,UXY[ZdHYL R8ÝIAesYIIϛ30ƶUpӧ3I?QmvW=zz?W GdyEg:={W`WD<0 M {K!!s`'n?~=&h$)o*4I̷(]P1 Hl^$Y! tϺ<XGycVR" }*|1/rRKkX[<+ubuc&;NvrH Qx('O%EU>3%,Z7]M WKǔj 527 ǾT頯eH :㬭a[ϛeNv2[x^;td_}`_e7zf4.1H5$N+l׼\:Ax”ӮB8wgfexddoxAZnИOZWՕ£8k2P\Lyҿx҇e"Dōzkb$}' ߰ڈI{y5 /<,H4RVɛDYs%+ =iditWG0SZ*c\qpIܱWg?sl6mޛE%of꼪_FaP0U)"Z4<<,Ɏn}E޳ai/Ze \rtY@,V,I0Q"Fz< 8g,jg󀧽dD۳I&>*R%>b'5i7aaq Ks"'|a=3ww^v;\"}9 %LRh0Ѕɘ%u ʬ.,iQc$T_K#@a!dՀXgPAؼ -1,kNbe[#to MŘ5`qbEE>@ Qbi$5M8c!)̉*YAt:cΔ'ݨdVnI1\7BǶ6捝ʝtd/4W:GiF]_@1 vgC*1zfũIwEL{[گSF͞9J{LY-5[ioMᙥ󒠧hW!B7 qGHi8Y Q ,``)qx?p,Qa'V.@Wϱlsnc*v *OjRz(w=.)Ntfq!KNUɰxj[.|U"E\i @Z-8o7. /k^As(I5-IGsWt#HNquĤ&N^jFolLOFETpXAreWm (WN19hFyߣy;:t4ch# am敼d_љc3хyZV5 e8Q&)yRlgS5́Ppfe,(=]ue:k׻{uTJ笁W@i5SZn٫Aw䞦aRo'8`/;dpt\`luDgsm0[ 1jsC']ŗڮ}'O UXZ3[b5#b%,' [ߥ1Bg;`1'2B㐕$g15]y1C-ԛ ZX* (Ap鸟ȏO$̙sU Imp RY-%=͟~od=Q/*ȑ eN)y[)k /8%8vtJ]Mq^҅At?Rpj =z2IQ3(#^ۀ<2䉪1] ^ɡ ho^dr03"TjԴr4uCڒKBWk ~iי_᱙ F=䲂icIG2h6-ۃWImcLOk.؉}ﲇI;}%7bH,Te5gq]Xjk*̀=wH|=, br_+jg'i 0R{F]75D^q/ hh i] B6 ]حTUё{u@U;tkMەҀmQp9ٜtB#_mҿҁoI"|")jwE jc/rhw2tmiǐ3#C|81MA%B/XG"qig4pGgEFy %m Nxxn-bv}1uc}lwJmo qX7"b]GOم]ܚ{3|쥣ڏLCyg$v}KQ[jiOz| (w/-EU7baOUr1s ;Q(E@2Bbfl(pw6/}d/&<ya)G$1Z+GtpɽyL$V# pJW)[+8g JfE6V033>Ӛ}j+0O0 1{MtA:^lX?vH_ῄwݼݨWR9rFke=,#;?i5Uhc+:ȷ0DXI%rf5}Tj~Q:NAxd3[bFYE1CV2^=1@J'ϯqKՂtdíJoj-4~{i29['2 'EVrڐq?eOGuq =/[ebm,FiRz[!H\E\qcOR-'+@ΙW%Z"I]ys#[(\;%A7wr3^K`zqԮJV2Ov]bz.>O:G߶FŢP.7BXr.gr˸xw-6%%mP;@شүכDAI&6<<^D0$Fިs$M(&S^DW LB,5`v8kGJϊC½_WAuR˒q̩ *%q,V +Mx~5EzYMP@sdcu,EYCN]̺H0h&؝g՗Tma`ޮ-SI14!mc{3-8o^So,8L15|X@N,ԼϤ)k6W 2qFRabu@j<+& [rbdzQy|r0ϱ54n`7)0N#negtp AsM)OZE 8]3h$wkG0IO$b!eyl=fD;#k)/Ga8Te22o$)0M]5+քF|őX{}?|iD̞;f!kR:@cFbe>d8O\7R 1An#//&=<@{Mo5MDKkI&l7IAapyvp ?֑N$63k=4x֗O2$GP s|0-&ӎ(~tYGW!gpV2".x@T`AA{UFr"uX%pKc_7nYXq5Uch刀V\BC?a͞$WᚙH[ n+[F[IBY5zI37$<͆ԞH)ͳO6$YD_}0UWjUNʠFPR֎7aIqTZNAVysYk0TK\MdX[wm4]w{(w`/xJ^zEjd^.p`lĨQ(ݷ]v)$v&/&",* g?F BuۍE#Bk0jG 畾2< Mvל&N71fsz)ih~R"o $2D tENH߻L%J"i!/6RYuclBfk̮XJXuA*\^A&0-OuqVM,6]J-']-FvkB)ۣs3ep ?2aW:-lG ?+@p4bżܟ+ 5<4w\[AAf p52u:Ky v\3RqN *.Vvu"4Q,qs[n/A'~nF -1day$~NՎ6 B I|3޳̳CckكVrKz5^} #/'8LPk%."kxŁ°Hf簖f! xgCJ_} \;z3%*֫/_om|w[af5S77w?0b7xp#j$p"] sZ: d+8>?Z5n.[?au {]dhߤ{9HjJΠY/}a/ mDٟ;}&Ӵ;hcXiXD}뽎Gέvй@mJ6h.a_h5A%[D tZba5?SHsպ KyQuSvԚ| ~>E ӷJ1 M?N (_3z _gg*$jn`sη )9 D]*YZ.YK#s!ћ*%ѫg7P\t}< 'n ˡ-G*rp.N[aAI9oB#1̭~%Z^wz|l_`Rzko1sߤUFw2¢Rl,2'7_N덗~6~\A^^ڄrKmSBd-渍z[csfUw=?{E(K/DY2[抛 qo)o}I=HW~FFwvn3;-@H/Ji_tPr1iu@${$JK4"RgXd.p9VzL.9)q3hd<}h`ᗫfCEDn{7MnUyRdT(Yy"W9trI|fõޢ(Eƾ|͛EZe5P, {\ޚIma}5-루俫?J5F7M^sH !<8':vį>s=p8(>V'6 t>`\[O.ʼnwR84'MZbzФ_ _3W]oaQ]>>+0xA"!pab硟)/*oHF婓lU~= Fc0̣>,kK 2ݐ+̶ǹSvzƬ&TQX@'L$Nم f#S'I,/Aw}ëEje{[$t62%q]:X0zګn 0C@?P2},Zw>c^'JLAȜ!1tSNZSJ~c:bs{t| KAGJOKtw2d(RpQ&ؔa2I_Ef]/h3w$o!%b:|ɯ^F eTl>| ،P*0>y0<_7=jZTqiꖌ7ĺ,gTvdE\@Z$\P>\԰:Š^uN>ߚ{(;?neü5;WT"SEaXtUa~"9-0y#6J"^AS'0#nYxtK+\VgoEo4ƯyK☋NՌ Og5(e=Њ}ӇS4 Lˊ׶٤zZJdK8R~,kfk=\C%qX7JX8\ ` S/F#Ij7:eM&}i>`F}Tw;h~' p0 Ǔ\M}o'hY="opޒ14c| BrJHK:[⊥u@[[66h+Wam`xE$ۻ\Aw1 \mMgyhH xεQ'Ff>ǯ aK6 /X蕂Nz ED9n9kWV>- "ʺ&I@,G:T$$H2#wx$TUP]qrSdůQ gxk#v@qR+# UuEI]IҀ+&peT2:8+ ٴ x!FL%V)"tvϧ]1B\J>_5O[uESؚ @5qt0F${ϰ/!A|06kO7[P n}B Pt)1r%Ji,dV+Y_BRDMUi`~_D>4f2[+lմLXzzriǴ2LV |eL1xXњtmٴ9J%nUA4rHJö|hiB!60͚@Ns G Mf~a^r29 ʠ[7DmXqk~AJܧYe!tHB%_@Ml4|+( dbce^NfMs1߅OrlEz[l:E)X`Lz(j"mXzIF'c;3q)Ihۅ |]}!L1v0@׍5@P_h];|O\s4=IFpw}@&@!)U!t9P+ >J02:ȑ9d!9M7f5MFIHy~nhnjnH <7H\OR3>3 9)q% eQP8ϲ.bDg%Hzsnv*WJ`3vH%SW'z'fSz1*:9g"8ϕhAmOrNT-`-I'bo4];|Hɢ{d_["mwh7i:"cc[2WA_9MLB"{C0#Jm?ێmtaH" 8OWXk%9~7ύbiTS\Hp {'y'8Ssk$ <:'p3FPoďI/ȵŅPbXHYK,Fү<ɾأitAЮ_=?&IxNԲ_a98VRPyJEadN%L FT("T}u( $)ᇓD BG h=|Y"=/(hg^ÿϮ˷9HR4&^_*gx˅c\2rX0mNf0Jb?z@P&#Ba9pJ9: ~G66pS]I\}<-b_Bwr2x^4-] B Z2jTD-$;&j"8)fC&ZʻU 1 =E^0Hv`[/4RfSn8x]\:̨6q]}m,Zb҆KצUd,*0H3:~z" YWF*mFKJdƚ)W p?h J{[M8B'qyd9CQ/I+St8W,(ȋ)Vg7Ѷ?8qƨ&YJ~ٙm Le{IBL,*{w[ȼ X yiw^.tD'{Q7ICWE%l$,\^"װI@-tvQ?i MtmrW? vxcߪN22bo< {ac7䄹 LC@(IK;!U \pa_[!&S2 ^RpzXB0p*cy{bҿ`3Y/tizM&əxDqi4a)Gkz3ZJb`2F⼊h[*o{//̯̌DAa<>~뿛2|r?J FhpVHAWcwfAbUDLw}{g.Y6Td!]Nvg\ͷ) kmRQ#f3Q4w8fkqt!P*Z*6*˗B+r{g:gXg t2Uj(oz$-Y(IPo &'0w36m zEZԇ*Bά,鐅(@Dz|uTE<\'E΋My05߲fze C:,({f)& dcdW5kUlEф)] %jd;Br1l< oRt']a LqZtK 6=,]g}q9_gMRc;h CT,몡!om9[fHvÄXAfb1_ p2zIs f;t04cHTuPV9H{;<UNVfUXe.>,tfwe<D$+BMO8.p>Tߒ_vj j570-GМ8ry&y%B{/WjѳƐ:ۘ#'U[ԛsHko6qJAAWT ۇFR9Pa0)0_ }?)<k\ {* "l֔y^Xt%,~o;n&{l0Э3̫a_ΜE^y\=Jߞ<Y`ZbRi0 2,$G[\1lĭziZGs2.hk9C]-S:~ -k9Yrme!InWML)m,wulJfOV4pF7XF؁-ŜN]hx]V Ϡ.Ë?̮/'n ֫M~uCO840TOr$*]|_ޣ+? [z.B@/#Q\[ 6UZڰ] /)~2_L{ [K& E:XI3j _zq4%~2W`%- U_(P<];'ܹdP`؍=DZۄB}ZF&g:VP=@ET sH[LaELtB78ӳSAaL wA#rt̐:_L&%ٝ.ee7PKBo*zd|[չh:!pN'aD|퍯0dz, ᯡT/z\8i^bt<ʹN:hR @$jLe*Y^rP -`nK!%2a {11եd!OS5KC[у rnzDtTU<,U'lNX^2(|lmCd:-m3Qz]nQN`3X*`L`m7ZEo]Κ=E6.:e?N/Fe >~RA/;?s* C'tA$_r\Pl{ߎkqT "?:(o5c~}6{t'yhW/K )nfDP WߠoLQ=p@2&@|A9,ƪ!Uʃ&xn[({)+|Lixp,]V\å. azv#ܗ#X UuJ(B* _tTɕ}a+Ծk-¼pKST1pgN"SW 5ǀ(rHbUmfb!PnFxѷ)T*LzO-(~A_99_FA9|m,$L ~BBFk}Ǽ4zP;ɀptD6i$Q7D!{|ԩZ]e7A6!+Nָ`ν ئ~&!`1Nh>$rě8\ e;FjehB[H˓}X,g*k B,IoI^amt k8\aDZ "1J3pcr'Q#*;T.J[v+Q=K2jSR( t<^#F-VyHJ(LL֬mzjZ} MY^3+j6Ry=X!M}IoP<̓Z/ʅ-{#eqD5%3QK[B%˷[ϩx1/ O$3A3F ?yc^a~4j H:H&GsZK0Tkc50+NnNLNX d)M0eZ3k˪3Y ?F/Y9jя Уa/҈£hVqj9@Y$6͈¤\ O w%ƋCJp(g-k0iE9)TzÉIxOIN!yCPcPXaevƒqw;Kbя rrꁣlJGD@=%}:|  ~?Ի#hY #oĪuw5!ujڈ7YRLm'}.+wZSpY+q=T>%A- ZPO ︀LqW>ܼH+[51wHE_?ؘY]>x.b< NyqF䴲J{8Q)+QGO|5'Ҧu1Ig%gtN.#AlFYyG}3ޢVh2AA|o8V ^ C!VcDLv1ƌLpwONXrw6d2@}}b&mQ?-kZ-G?tn\ڠ`1n89SgA|SP=:f\]+gԝ=bmNYyz3ԇEA(*K܌ާO:U[ 4vQzǣ?wu*X |k ?$* cQ)A^ 򰴕D@db B hk"hyJ y#e ;Hzܒ"SV2f|W c&<+!1۴O7wVi-B^-O՝шA|!iaؓcoD(@w;btZ}qʁ=vJW 1*mp H(@hؤ8HR~&$ށXFM%e^C=SaTa f g.7I.Pe$}%/m=qhp!;""nhdZ"C|.rbP-kr')FY'I`y45+/ N+0|A?:8̚ byrݰx5;+wpln Tڹ!vrJ_=Rg!%Rp/i\jH?XjGSʧ`}d/)ǦodJr΂ylakǎ&P ϕЏ('L^^ {.a?Кbݓ<.hýsh1GHR]]rWX2[BV Ƀy0Wdf|*Q:9{lb6:P.+em$ga$mێrGY/Ǘq"5 "l. 25U-Sh9шQj El޴-S5I `؅Z}Ne[GT>lCŰ*񰏴RU kXrr\ VBFOtp.Jd8ee_,Oٍ!1, gp3&_g`[5=q D*J? iAi0HLE\/){$ FtRأ#Cj+ hS,ivvq҆ǕajL!1aucg%,J=m;Lqú VLD# C{ 9ĬJH.Ek8)>TCcuD`a-/L KFAPl#lɲ|%˙ߊb ǃ{dMkÞkD~.ʤLi*Ag?V7U+[_-eB֙c[xU;|OĘ4*&HSx}wH+.ڢ>' H~,D;.')Md*KmLI4kX:vw"Mҹq/dF} 1cf&_#2xbBv8@0(F@7J1sJc!v.өe"$KZ(s՘ VlëtZ4<꠸'<2.(ټȯ{A!.@?  I\ rٜPF5T]WtBoRVh%-pUJa$Ba:AApz6hP+IN*L;W3aw+, CRN̾-Iވ >bH nQ[Nogz;O 2'hozh*DI[* -F]qwmmJf`.^T{7n>ul[@p1i `~ңUO!B"66Ih2bcݔe4*Wtư;EދOap X,@z>d9[@S`7l7{>S?_N9]QAr9}S_cw9ȃMĢYUzWp%gwb3J21hND@ \cφY&δv[!uqas=yG/"PWFG/03݄+j֪ی6xR)a=M]+1ʺdyNI#`A96u}2x-g,V!sތ`zj/W t洃Ae$CJ Lng،Ga*IVR5b- +Юꑘn^ &TJt-~-M`)o\;i~v 1ho}fgf{wQ:8 Uxn8,0UlM^'{9i})B}I$ ,*g\D<߃,L=LdjwU6}Ǫ5at]";lLo9|m%5v$%j-)//鑗xOֲwUU{{hWLCVr};\+e--KfW7حݹ7Tӧ WM.YhR <-Q:>Jnݤ,k9e׾90XxzL]6-NI;o|!OJUa%_V,nQ{s_9Lڊ+\/Q3jE\v-uq/켋0ɾbNJbny+nDCDM_fUcpňjt.bW v5qgt>qKg+Pе^kK ^ j}$ z-az~yu Xoh fUg\v]#{Nxܞ]|PAc;Q3mfvAЛߗ)0"=D`&,ъli4Y)]Z|+uМSyi"OkC y SNAځq 0Dj_p^mp^kIᎡQf0W`Al_\m' 坺k1C8h_VnN7܀" dKthV8.ܩ4''S1Ŗޮ{xvG Q)"sf?t7z[AEG PLRhW$>"r(i1:QX I&NU U~JPhw-Y4*|}Rk2 mڻoP#z(O_b/,VZh׆vi?vvvܺuKsY s)u`vfB$7i;Gg$[NHK/8~U I;R7ݖ㳎}"ll>tDYfF?ˤIX}LPA7wWҀ@Cv0f;N {]jr6"ǔ}7[UL$ RG[gm$<fF\c "4&T8Fo⁤:a핫Jk$5 $-*v&;35rOEwlC?u#ْtW%yTM{(ve}D~ښ`d*D*gQ,:JAe suO10R0U%h 6Afޠ'sң!VՇp[@4m/̟όLEf{&2w3uk[L\Z^`CE}AlFJJ/uv"|;c:}YEw=ZGW A=I T8=u+EKDBg>Ӟ2 pKLQ=@O0bZh #0>FEx/m?dߖLS$0B Zc9b+Q+L^D8!vVA>;)<9[AG5 wQ0 X]Ƥ/IYg߀Ut6L5ci.jl(0!ͰfuH(P}k俛-+|º6uQN*i1!0E BmkIjCKۥ b!ߑ!a> ,U2m*,kH rgܝ+{ux/VSyޘv`×ע=d1X75UC_+Άַ='.- t*еO A0tvI-TaSg?0隓G0ML|W]/1l?LYƉ3"y5^h臉UH[Q¾ B|-Zp%I8ɜP{?kg,;b6dѮvE ~`|2GT`kٯʡ ; 2|ǁ=WY.2wP"zxc-sw0;x4aQsMx, r"^=#'2TvmJw#$NϨZA`cpd֨n!@k.BPd<1O~|˻im+ҙ>A""c-?YGYK g6alyиъq9]> ~ ջpbE;u =d5|lqQ!`$Ra!JQ߷;א5͗Z9}²^{еus㷶0ըdi~]`er6Fu'܄lRiY/}f* Fw"\Z54A3ylC :$eؕusBvw i ZgxVیbJ`&zRzϛ<6iu߄dԐK[&//^8/KAi$vj6:)O̰-fӅԭd'8LEgUX\%M2NK]YP+5I>pB t4n%H%t>Bs #yϹKEfk#^'%iW= A/$"tu84'rLq؁`/ s-@s#yUdZduF8Tm[n2ZDP3K}fG5,k#[Nq)# 0W'1urz$P#JRUS Vo[)Z;1Y :}sBtϹzbi2'@=PKrbV:6_8m8R#L`%𬂛;BM@z-4cJe (Y$Ekw?bCizkܜ* ),.AVw%jcLw=W5Pͫ)As41u5Tr;1}ƬQ Yׇ7;T1,,8}A &`\<=83ʋ }dZjCِ^Ct'un"Z-!q^G&[W ~NF2qw0w RCt >[Vb!GO9{6?mdWJ@5ϒcHMbKE x(C(%\Wq-Bh2x\zإvpYYYƆl Z rE=y Y 1$Mٓ`\ZIGܬ;|I9"@Π*˗X\|> 9eʳq Q76 \%=!+ecn1ݷ~E_\ 45~FTbxYjO?!4ءEјrѰ{It3&RC[G$;mt[cfL&NjR;p/.A!x7AH^`2[(6rQZlh4hl]36+ 'x㷡ْ` N'hDOS.gqL>ݺL>Rӧ7D,6"MIКI5""2/~I?;or7>- !WT:ڒh@}/g&jQ hVW\ʈȹ# {L.+"QeeP[F%9+ R$+z,Q#SwqV0g4KR6:\OcjfKxuz qgGF,S=!Q=Ie4M- ܔw:/b!PXɨGЍeJ1TA8 tMNR}ZgEnpg8ST|#!*`ESb;`|ج"S, ի;/kGTd5B3]u_;H5ďl69UzMj F[xE&۲$>}!rBۊPGZڕ8Tp?yNBBs,H[SWdzd`1t~I.x$΅3fWFWsb0nz yMU:݃Td6YqsBn -ᩗ=bM!lW!^+}0nג|%i1X/&.u\D*>/Bg@(1T͇{!h-sM Ox%u\eWW}^|qxe|At:\G˦|cFsl >xIr4հ*+|h oS+ 1]Gppr=OFst–.*Ϳ@jZٲ^y3_HfX$ma D>@{ztMg:Ō@aFxYEMZp}_ LW7w.Q^5g}(eVz7s(exqpl}H+3L0:w{NqTBVgƉ_15Ij;#PDȖpQ.V ]6O܂{F\"ZE٬.xߌ|6ZΫ0z V;g:ʻB2bm˂W+p kBFee쵅jp d\M,+ 9sM\z yZ]("7/ֆp[;fHvQDX*2J0+P'\!ۄt:f+FI41 FS4j!`j0Pz;a'F024`4ם5,x$3qWܞk'.J- vy&?ZAE&2m͈K>e[.̷,W+VK13}[vxYhdaJ>@I2[=E? %KG/#t'3r,%\, WX91١zU+v Wrhg5ý 4A13wA[͑CSϗUu3?l-7]ɞOw a$O͟Q_rW&aZUe?/=R'HGAtNMX 3 TR_gR:%Ys;s5߉w2 B!bёBou\|K4;\ͺ1LwPK8I-r/,ꐓ9RMEW¦DfEsA48reeFԽ:.s(!yNX/buN[Ѐ#y[2jm':t*H`xE[ L4}b$C 9n`Q*njsc7qWPF˶ 4t^%ܦ'}rUUJ IŌKDO GO2tg`&0#!Ao7WL"tۘI/zt q*A^ղ}1,8l 濆hFe=F 4Ly ro3V} #wܘ|1|4ygF0#`qT2mxW ۉ "+Yn-dŁ8];aR%4oT(vrg > wjVime38uv-r8pObbkc6T ; M`FCei.w`}c TB}2cqAC_փ(%:t#` &X̨c P:VU&t ,vAH9\{z2&\}dPP-oRBN!1E:ȰSt)(<~ T=LwI6a 2.36b]B"\K*nƦh"\oc~)@I_\VՌ@7%rZ[`Bc!y+ IdO2Evь.pD1o,Ǒ=7+Sm!+<#|e|;F$5ӂjd"^HT>ā2?}]/'d!Qw,!/QKO1[\>qzӥƒeGs&4ORBzgte_ˠ1 SCQ1ٟOpꌏH9ed+nk)< @Ǚsm:~b2/J 5a\5?[d;c=s-2n71klVU'h_=;8JQ8x3]=ȖV|3ǡKז):?8% )>(1&Ή<یF0 Fe< :P7-/y 3I񇮒o1&A̖(t=&aT])C>Ԧ`7L1JA8V%V^<3YgT=8&e|a5Uh󋆿u2,Hb(64> PG FbA!kW,W @xxD$Ļ׳ d׏"F ;'&+4O{(@v`6Wb5`7 tV!@= |fvy$^XQ#'Sl"CaμLB+R33gtRn/|Frc_N,I~jLH_9,ե\MQ6F+Ld>׾7pۚ=A_6ҍ1ս4[A {xPt,0胄$nne:S QZHN xP%>'1Y 8A$cRL E[ |{)g2d7w+,<}v-9yc zXI )Ag%߽+杣κ"fg6ǩ3%7UVNg.X^LRm%Ve_k#5nȔAPX?JUh6B :բU SXه/ij.yLY7[*4o}9z%Q@yB$}bacjchϣ-YEsm~2*Pw{Dgyߎ{0]e"`h1Bk^}Eqy-|D 1eid~vQ:ZqHJF rXc,WCY0{hNa8y Cw5{~ՋҢkvfӏW 2c Y;2cho *>g`vf8i)#9s_֙\t5B$lC\a~^#NbIqRLn5_o|jL׊_ zf}Js0&ZTXt}17{}!.!yVAL#Y. "?W/Gw^o=aM$NǙ*/:K* g 07S'&P7\Do| OlЩdk2s^M:B܂p!V)'ݥ{C9u Vqʾ™N}$, !f=ɣ+"ell)'n;[  9{ײ!֫6I e#yƚ^6jiܦ7''w_ph3EMpQfTۈJJ",~vU6 aǔGIm<+([Eߠ,zzaӀ|͠St6?-hgN~Fec:Q FtF>'E8╜1ۆQ圊eј8]裳E +ᝥwCkPM0dtZ#u\&(׸/d2GC3w:7?uu1`ţsm^.i^٧Δi҄`Vb:忑 zT2_|#3կbtRFͷٍŪUJdt( ëemC+Zyzdo} N;b KXgMYz5f\Ĕx%Xi4swٶNeq* h+f>iZ1'XAoCz*Ic"Ѫr§ME[hȶoexbdI^ΜEI5jL?1-+< ropV$5$y!t*A Wkɮy/_b^#{mᙘyųFSR#\wn+tJT"[nt߱ XG*^[d_dN (|\dڧ7n1K5`FZ7p3ˡZp=? /DzkK0G_+~$Fa< &9Adf1( .}Hi\6^R,儂I~?m@އ*8(VvhϰS|i=(ؿeݰjPM*>2}WOvP߅70 ʐs 9ZަO+DnˇbZ0,&cQrӥ=I2^9$xO͢#;NZIØFa"/j;A?sז'e'dY9J4 V{p- uͤt{r⿏%+vU&WAd-J- (Ȩ(i HK/r !A$ tt t 3fN, f[ ijPv~"B%_[J3EhߢVo=NDyAF;t3&(mPһP#Z==t@1ZHDi_sʇV+Gscm:]"_%錌Yc}-USufpē/m.Xl~kՒF`RWbtUm$N%+|S{2GV#Mt+*fJgC˗% (?gFe,~3 ,gxS\zAo4-܇ Hlv߿; 3!Ahcq@RPQ0.-O>hw%IF~AmDOu{{# P֮Cy}_p^'y)Sze,l wMzKvQ^_}8K\PQk4cc[]hݭ60fI+h@ S0-Ag v6SuWL%VE!rKqI8 o:Rr5*fg֨&Y?`1bg6&BVߐi67:v 0IP=Rx+i ;ߞ %rb w8∭h-Tt*x{i :{p|n_&^"4=g=mh 7GRK!PZ#|p(J*4;J7xt:S:9??D]ud\nCwhJډQ:g\6S-3/"j3MEK/gG Jie~y)KC6Lr7q 61aZѠD Z~?oe#YA ,+#հoNY#)vr.CtɆ-o( ܩJ@"S &]7S+]D?w(6՟;FѪ1NFVԄ?Z[(>xL2Od,0;>2%!{ԥb2=CIΚGS@n*=}ˆoz?lDyÍT2gU95m g%k߃!U  lU[>uH0(הvjRy|Blit= koPgt@a姛cE;, 'f7 je Hvp +P/`TٻzҖ^ θO>beRfY M LU$o-5w}vlRWZN 򗰂D^NomƤvsNiZsL<W٨kMI&'MiP̼ZE~0f J uHnEM.بT/&-L/.yk'JiX2&G{]&GCíiv< INx؀y JA̵CUw$ի#i:HOGV$V4k0tv]pQ91?]\`l9XG4 o}&ʰ vYQa;Dk%.a#o "/kM̚#TޕG2S1xmD<Aofm#Kvc$3a#`~m6u֬ROxqgC&q2}ssbX|w"|KUK\KV@ u)LR*yZ5O];Nujpx'E]8#fA\p+X,ց&*c|E i+3$޿> ?y `ȟn7ẓvχ2`٠28Gr<9YHL< 9YGzFއZ'N\ 9A$r4ׄ.R&ŽQ|Xٙ(cNޖ`n(кgQ98^عۤ  HU*CLV2:m-GU529:&d,N(\ vo͔BW:㌣Ng[bVX_B @1_,̽SYQV8=գmWljpjgT۔}t&C)lUGT, 0>gTRE~AxvkZ_TS.,gVP{6U`sC?NM] 9Dnxyq(P 'g L:]m[."W,C>K+$Qe梋|s 8+٧Tq EQ||խJ@|mcG9R[ 1܅::pRo`7RҒg%:og9(Z'&g1o̖` aՍ{8\w'āVI˨H`N EWtYоmK ڇouSy ګI/jzK6 2v»oJыp#{'P5#:1)s(V"T%L ]kWKɴ̸'n1a78K79P"U݆=cBfP\A =^GXu(z.Tv!hX9pW}xR 7 tBI/M@br3Sd, N[ASOYL} uQud͜[D'g u ~!:ϏWEn4Gr0}߃T- 3TG'%j6/)ѝJލG|bOr 1R+x~V] m<q-o VޝM.'4So='Ij,x#Јƫ{k\$ |ZX7xt8?Uz)}:9 -_$M턣Kf!#s.Qd]A^B$rKinӾ2&jkKȞ+'a "6145&]۔-ȻB2gΙzbLj]r"VA~}UWv#B~ָuRb ե躩eY:.T1"4ެB;Y{WW:?֞sO$?̆Fc1R0$3uUʥv O"Mv0{^ufw!wr嚰8#ݤ.z}Fd䍢o-գ a#Y֤KֺE$cs Ӻä`L?ldw@D$&h .>Ud>`jC(0 쀕@ҒAxFg(Tײo/̢/#W[6OMxB_x9wF3^;?oDŽ.:UvOAE4U*к wWr᱆.T!%m|,AآId'ЛY75 έpr_$d;݂t4Z{©)c]&seC ĘCZ*1,'#|[&#w7eq8^"l>+d3pB|q{i4i]o|LȺ;~Z( C#X/M Š5gjtpA ceJCBH(\C CzH.;-<6K]mllb SGjL'=έo(\G9bӞQ3s֠4+T4֘Fӆ-=.u/hmf1ꃣo9l&l5  2LF. Yvc16>(!fOf8+͊tUseVuoͶ<=ߤ?MuC[XEa. XPl\#%8}\m_M(أḴeɊxa_cCיȣCN~Ȱ7BW7ƳJHu?G >/xBg!v}W` !}x\]YjZ&KNt>]B:].]Y=弄-&A+k8OBù6Ghgomy cߪ]AKabw3|‘&8oJMkP@G*\1f9 G೛^/f4|@><Зaȭi~*pO'zG<.v(^j D$D^4cE8yNpGM}u-Z\+SJtSsf%G/VA6 Wqw7/Ij4HdU_ޟ-˦bOAVbJ`s!ԉQ':LK)$߷W@}dO@.lKw3fٛ&C(dzO>HKxФ|x.iA`xǢUdj ( Eеr|zI$ɶ HvB%S8HlRMޚ*Nxl:Pv dcqʙWLDgC g90sn)~=^U^: 7<lv Ǘ(ebg/ \k$53ɾ!nNg~+x@Zkm=8Vu:5D3ᷜ_<2: RэƝ+64&AgJ|)^`Rº Mklg~H~xS*Io1k~g Ylh(|w읋tycu,Q؝9]sî93^$糯 U ض!MFiU<=q6'm~v֊FO TH,u"ßZű,#jyA= ďk'5 U l8:w<ŒXZ^ mB˒wKȑH(uV|Cۢpn4P%H~Z!+ V:i̺Hu+pp6!t*,+thgҳM] Y^ x{JעARΧ`p'W5Hz@XK(`@/N2u;56v{֣kADiN`OzF(7usE@,w/jؿ [ */pEC"p<f'3&OO lKčtW['$pjdr4zWv c;{/sT s/CPdwUډ.xKtlmcB2l?tl MH::<⟿vAy8{+iӑa=9X7jmёE$XvO݅ZU0R h}/Բ8zS!Q=jϞ3lY DRa2wql}y#^'8Q*O,I8lnw%SjC#4~t`vKrZ9j<6hԵF.XNI 5I^>wWolsr٤b"m:{MBtIp <`rnֵJi\}7A3 Lj}Bi6)\"eɀ^l@ras*(1/]٣1J8R)i%"S`%#RAX*=4yx#.Lk+}/yyNF\XEBԸaRU;l,^*vYopDq`v8W\I-/[Gs\KvsDg"0z1z *tE(;vk)x !sw-ޠGq>xVLkiUd`?%\<8CKPE`t;}>- _%͜*?׵\SꁼU}=#iHHspʊVg GE%ٻ""h5u3hȉ<3QY-3q%lsRKnśk;/$/\;̇>d|аcļxZWc9Lck) OTiuLj.ÚMΫ}^5J)!yiʔ?.UrFg Ce8]_R _s!,9q uV*47A*?&dW[qji޼mix–ijuEW#/!,Y9&ĘݞôQ=z}[&4gAN)OnB$Jr avq:Ұ0'6:QH Nd Z|"\eQF!e -~r|VUmIIGMb!%|BΰB$klE? k-#y4ի:8N߸[PG5a\}I&ee 1t> ے,248z}xFBZ-Џ/"Ƽ% ~^kL怦9OdCZq0 ^n:r(Ϝ!8?+q)2Ptkeg'KA_7IPϖ8bUm1  f"+/ ['JHB"W,}LWO 1)7RWqF%_my1,J="UGM(6R'/`f8 2~t쑒6z nh2(=2IJ Hh݋w40n.ݥgOzZ&TFI dI7u (TYYIrz,HDy=&pqE)/+}5F?"+x UЇS4 POcy\Z:^XF;E)+})>?iћ)qtavo~1mT\)fA`}K錈$}f4~|k+<`p4 (Kj#BᘖIhѕztDr\Yr* ؁%WGcXU}K&ah7Ӥ%-p= HGNK|ɃeߵTkmɑ.(E fVč~mΪwhb4A"eiQ"[||CY`, @<B(*J` 鏞}Yy6 (queϑ7+Q@Cz"`tqqmw꧶v7R^ݐFL24 x%s]kG"Ļ@gfǼ  QI׻a~kCsڟ ,9%2>6y_YңE-o+y\~G@s6+q7:+ Wۦs <-u %!փflÆnXr_5ݭ(|ⲏo.޿.s$C7 3^X4t_ "7{AmK|$YQ'B4 Z* ?y;Ӵ]tQD3x, ̈ujA0.#}A~Ӧn:\mUIyF(xJ!NRE'8O1OZYwhD&|[=@~Ҡ*WxߗB0oDdl.y?Ciss6 $%^^Tp E>hdcw:#E1 i~4v[ɽk:0̑HOP8R@\u bC̄{z퉕9j]5-/{K.NRw8N5].vte/nPFQ@X@v䰀 "?ѸFzcdyZN`TdC|1KM* ʭuRDeaV Iaz ͪ ڳ}*d} ɉ" dzsdޡgر;$- |ȮJ2:6] vsD263pKDY[RV_If \ lh$rӟ÷F̹xcG|7[RNw5ofg;%IRw Iغ Ct8`mYsa'*O╹kXZF /H̺V=}z[lefS_-tUU[bs۰TK7Mj اMBpJU2IbPX1 I@+> Iԃdb4y|ɿ~T`ڈgn|S R?y`FF^+u@\PO%[638KyG/3Fg/! Č*F n ^5kP)'CKNZP<@ܜ;jxTwDfD# (-B#&hr-{:'.{c3Lj?bEλ47o~r4#y4dovGW[m-v4aW #¹6FġH9AnXWN%ޯ!¡+aj.(+){7hzMT ۓ-1U Ľ7x> JQ-{? <gם V-c]n£tJq-#twiWbUk,OEa{U=li3Hl?F?%V3mv\`0 9.b&~tACq~/8ƻl-:.V]0D=2>@$ʽnX$s bSTKREʻz,3nR-P@w\lmu֎O&CU6|:Qh;c}vZI}(j—_SԞ$*n>uю+]A --~xDXuM%sl4,?rW` u{8,f S)~nz=W? 00+!>? j9B 6iXf̾pLz NجHHl*()9dx=K)q nm\#p372=&8yvd_I[,c՞SfaF;d㨃o> V= q2kĤ!%nY82 忬 P̢|jUgxŒ qZX Agq @`H>jb{]0:`JU샰|*NΌ'eĨ I.z7*&mG1K'{.ʏj[wV=\`_LKdM.Yӈf8#/6V[w0 eڨJ/ЩRr)~tK6_;|shͽl>dE#tA6E ӈjeSŰvxR;L^/& zT='wS?z:OeWb/arcrkF<;)M1Pkpfjso# Nw"M,\ oc$'yER#l># N5v`jR q/چ;H#11܎3=>K%͖S;? U\JmI3M`eΪ~AI_N2[ӭcXPTGɬ&jCgݎ?ᗈAiƝb U;) ƕ^ ⚝iq-*15',0_lvůӈeEc"eR5`R9|,(wΜKTbԎlkt!x1 }?0qb1߬6®=RY nYGh={UNCӶ9Ě+JQP |! Վ GSMFmltѐNO3d\}Й i#$DP#~Η@i1TLzSZ[J]ݸd+bXI38a&:7n 80ŕv_u oz~;aBOe;CzekR*"&u6Kx_sߒU VW\ڙkcԭKIHږ1L]υȢ5ϖXƁ;q&d%6;.=Z_ ăXw;UJvl,&Gg-3D^O>5#xS؄P%yN&wz/-`^^ ЬF4sArڧ,P_ԈHg,Do/1PnlB`^9>WJG޾t~ I;HG(mY-q>@a.Jl;uIϖO$= 2MFHN _#E9@AYH >.9zҗO<F܄!*ԱJL83*.BTRf7N*5TYv-*+,#ߋ^[~0wm֣kt92ur?1xAt,R-Z\AgM*'FG(?`K\1]?ӊo/s|Q [NCoƈ"rqFVY,Ny_ѻ &tc]´FנGRCŞ~/pD&FpTSuܶ*l.Yi$/ |qOYr^.`3]'@Y*0C_jP/ 7}O=K~sUZ~ Jܭqh0p49.癪))tYÐdU}HQgo,^Mi\rǣLDT#R֠EkZBV5}Vu[Iq[)/Z4* 2l񑁮ϙiZ4-K[X0Ƿ5M+v%29t5Yq#YL[d(ue]'.L̔'%Q BNl{ZD"BVh=:Css&uˁ{S.Gg_(i[I2?B;.l~Okݺz†Eh0IVRFܖ'Ts ժ]b~meWZ@IoQ?N~ŵBJ%̓0mF} Lbww?g찠q? mT|x9=ƕňmprRpf|6|sRԶiV ng$)tw;lH+z!")9 u]0*8(:.3f@Rަ dsUn&vvZO]v(P2uvN$y&%[96D6cЩxH,f`Uax9;G#=2\ }.pik wd`B%AFZM5/b&):*p3zkk%G G4TYB}a>Pɶ [y7{#+XVb+|R^PRBK@-@Kn!:Li4:FrZ.[Cvf_+Q }Rƀb8&OB}mB Q 򈜊+Mc?ڇ}T\2lAyPZnVd>XcX@5R5tF?=CW'm]$8~gӾ :|XTwrLr&I~# *6&K/GjMLޱ-t*F^ #V ȉwSsai eݍNʖoټy n 0ge ϋi,:k#KJڒ킳#jqg*Qc(XHu?R} 3Hb*_ڑdr 0b[YZ!jW;M$2ғ@;scVk.@e.f2ݾwK(럕jSDؔ,EJQ-lvPK^~44 ,ա5K-tҷ`H^Ƿ>k>ލ`be֟b4Y 9RR6`xOȡ$(OV,wReж\]$f}:[ݹÊm RsqHr;E(4 Vxe.9m,P(:jE[MOD?Ƥl\>l?2?#7h΅ \k oRThAHXn*`s#'ɷWMD[CeG ޢ|fl!Jr}8K8kE9qQl?s%h?!31u!H4<{e_7,T5=2 ΄YF8/p{?b䕸Z!,D)BGx[T}kZD/Xn;EaH1|MF!ӆP78 %}T(7չ0a-+pd_$-f[=x( QfSyNѐ s)VƟ4\39.idqI>U$`%Newj 9_6Ϻj4vki/a"OckzLtjКڮ}kaGHr&h^cm>1Tk?XArf#+dO1 YB3cB[<+cHM2L#tx1ɼy#z0:Ox/+ȇ[I.R}cAoRPWHnjP6r/?;j 29 "RtTe7NX%y"ZZdّ`uVkxPL s6BŒ|K*çWi@V|5fc# @,=oȅ}7}4YL̂V>n˘S aArеb.]2hr3F6*ITiy\>>ġra QjAǹ[֞5SDb_!@_~h(wRnذ{˂X5uPlWCŌ)»|=U+;Ǫ4M N۔ Ueq3YyvNv(Bn"*pz8ߗy\]Y< .~~㉮Sv,TVD/ O.H:sinpN?Yr (iѫse^CBgF,6R1` wKBP)I$(kxuA`N5gY8WGG ;} xGCR'2P@D^ȝ=#gwM71i3K!/€ i<^[`wL7ֿkTڨIY!GLjᯠ?E4Ӓ9>}?^%"~+] xl+gխ=0ʻW)WXf5r% tSHHQh۫iːc!{ԭ 1M㦪؝] udj~dBjP[w#n?|e 3FP=qr?VĜP>WbCVf%~ʋd9" P1 -8c ,-u5Rb/G4[%d q<"LCn?zbf |3;'v$P?[Xtd(9vPDtlm _\xLԤ}*nKȻAa _dq S EÕe";66rmFVi6g^ܒt!.EArG5:"\pdY#V:I1V". ЙyY]ο,Y&{-`nUںD[?KۺM;o!aDPf1("^w1QǏe(4{N,PDy7H#Xlq /!84k@UL(8l-K%ͼV֐lO*DG8Jaa>e:~̯|/∾߆K4(wr4mRm6_+v_kJhdͽmv#:޾,WY>2ik0]zftJD>_6/{T]l|bLe͹nN{/8'0NG}s6x uXJ\Kn "g6f]8 2"0lUz7d ,Ӻ1e^(Ays=$ìHapT .9t1:jQݮ0)U'2)$"qBFntb#4UTVrxiw0#)a`+fV`uru")yÞH}@% [_%Ғe-Qs{eŗkxK]鈻)td /.r AܐǼ2Jdk΁3A@3T! lZMBhCOAe(7y硭BS YL TgsyP!JAqN PفyK󹌕c'j85I<*cU\**e۬*  ʕfn|'uʃKf*i,_.A(6N wo])}㊫R6y^tf|A77HWp~e6O}),G& &*az8ۚƄ'~Pm{߁r_X/|B\;Lù b_T)"4Ac@7xUiF!ͦNl2avjCޣu4..fkb*uXwE 6ӼdD2ݪbfWU*иZ=03.7Ջ; "a,(#.{iKt>k .<y]Grs%Ӊݣ*]m|dӏ2$%UQ%lN9pr3F>{MMJϪq˹$ B^:\uTKo;pFa%2[T:JI6_5-df6PCf=4VǑ-F(tuÎfu7& fn6CGpnd :VkFmfIJ~Z`y8qD<8$5e􅔪o v5mN zn#|$D a0gqiƠENԲ8k447nM؃QʎhhuMzpquȮ753lk[TU 7G4*Ň_Vuqjcv,':r:}K(kTZVgJ>ƷY`e?\/EE癵GPE\0n$j8$z27:1lw=pP6XАp'MtR+#  o`ڦ7( v>_vk.YFL)_ .,K) :s_nc`{㰔ۦx.՗.n2wpD.]7e}{DYg u~l@E[Ovss %,StS{ъiova$ͩ1+d57rclPEd' faQIf$'HY*4[=A>DB8~n_w 2&a#MBD|83`L0Cn7!q< >{f1oxޱGTvqGTG C )LKǙaw,Rو%GRڙ?~uF1lqU| ȭ99o$^bxrwҹoͫ(̿ψ|rjh"5^Trf=bm͎@2:Sl\䔶鴹YH;ܢ_=B(^Cx'ZO';xwf[YsDHR=vo:Ud-4"6Y!%xS#j)SݵpU"صNp\S'TgNNSwk4K`@2Mҩa]QQ%3[넏DrEAqV1x{<%f,z FHSDv}YT$|^sE56jjYЂsUbj}0TJ{CV #k/>B3}4ب >ECQl$_$͉dSU| w H6S#ޮ*JbPlk?̠(+~%u[$a8YƶBJZ)l`|l3@;g{~)vnx_nTQ d$MnveGNCy#pbou]r1U*eX{X|-QvAY/Kxj~eL ֺ ylOJphC>xnMNHȝ ޢzstuyr9t:Jď_k|Ş2 ,äTo& Q<W҈ eQj# בO*.ryh ZZhXkt#$Gi#3 4Ze#WuͷmP^ =50+͕c,'UҪ(׹]ء4R@$Aj*0a!fW{ٌHf]=dX0L6 NtS]'[M8_;xUg^@+OO:0/4:/t kr6 DqXuB?u%*cotSB ՠrk+Lv_N ,zMI!TEv b+M?сNtwjR+>ތNҀLL-!,Zt%eHVt KUmeJQOIœet,vVѧ%,U>y~ĥl hQeye!D~ F&$fUp>[੐^-QD'dxN]+q5'!JmJMdBabxIco6&&U\tHɟW:;3'0g f..Ŧ''#}Ugj@ǃ@6 :& GQPc\ tm04?5'raLmV4UqCR_El~?!.٨Wig#+nxZ *3A4|o\ ]+Pz4f[;ʎQH"c%\ey:NS4ڳ-M z_VǹǞzp"y$,l('Ta~}\@ܷ+'a%w7l|'QҘ?/bim~$',R?݊e)kt 31T8>SZ$֖?FtP_ߌh)-z;3T#,p}( rYa3s!x3r`uDmGPKù4WJ4:%(4'rHpi۴1{"Z2^*AW1@p/n0{NjSwE9[k'd]a>STQ;UUP,>}MzA@[@2 "4Kд\y"ȿE1-}(~. X% y)ۯtK {exTNqßtKfJ\HN4FKXCMϫ-[ KugoSV;nHSil洉񗥆+d@jP%< 9aw!yxEc2-##^5v2ÎD`aXlBVaɗ<>&:ex7CTVXM!rD8{)m挼A#%| ,=l$.Ut aEC Vex _}f%zbm'&*'jW+hc'NȰ) P.֞' ?s~!]g@5|]RpY)wSFRD*H6p%TF}d8$=K h&׬")A< 2rW"q&i^)TRs曱fG-Z%iS UwFQSL Yb=ts.P.ONœ41'Zh}<9 Hja<]T+|3"\'F1}qiBj˯qpDM{TB8~Ǐ5!A`1Iu˪LE*<ҌHvWz`5.UMB_1aJQtSoEI?0^RjNQA)4(`#$]h+E 5k52<5"  +g'kWK3Uv *fL &۔D!cc0jHt5K`f*cn mLJxhO֞D- m,qS\BDG 2fWMZv sxVM0>jqD~Тδtd,or4t;GwOfN?!f1(RT ~R:c6k-hdScݎ [r}ew8Z,05~ m5#R7F'Q. )RlOC0#؏Y7D֐vb ԛQJpJNn mwb)1:E$`kMr.P p^I? ) mm24N'5Fs.~"?a\5nF`\=)9'(%h,zru^tsF$u6aף}6b6b>;O]p>qYU{nYfVgb@3?9x c;~& ]KԳvtԚW_Qnd"ήrRrCoio /x@ -dwM&zTfqs]-{g<% 863P5)+=Ϲ[#.P7Wtk7Aˢ%V'SBRtTiBU]j m)з&ArˀC>Y5sς" /C_藴+{'c/cf(Fl` [ ^:#8pO (NOxz gq`c_E%u.VN 3 8VS2840AU_hB$ 5V<`D2mM~dC8Ԡd|#=gK.2c_̋Ђ~gPlţˌ \aCU Cj8Tvȯ摒8U6.&UyzwX}Rd}JW|_{']UGْ,I S OGKy/rJA}S;N=%8J%גu6.jZ B4[HEPxQY#$43 C8TPpΈ1\dQJ2LX- <+'S5̱v^QͱnmߑqJkRljG*#Q6o`#g۹+zݥl6ǙuRĞ_m$jS;+eEz=r=_S]̱.?o慭 ;~pA #>XH $Ǫʪ @ 5h8^2+2M^qr9,X ?@2]eD.v5^p. ۵(P~ 6 Aafd KpU'tB] Rw;Sj;MO0ŠA܏KNppJo EѲ5Ωʥ"Z|-m\~c y}b5W r' &F΃JHtq{}ŗf{ZI 5 & Iu;gB](Eb]gנc3~\Gbw\SD" 9+q.籩Szn2IS̫ T_5Qa+ԪӔnIk$7޾K!.vy< ̡.IΒ025VjUK_3Hh'Jrఎ(gTd) HnK:cl2{#i]'}4Ҋ@!mpu5 N , {\תf.bRaUS"IQ?Yޞ ?`畃z@젖 / `hdV.9<ryYͰi6 @۩@|$T"Q4WjЙs!P=:0yV6X-3ӈuw.М駞=wd/ah"~>[F[udz_EW*86K21D4P6`zayànl#zkme8UOYw(#jQ9:,XxݽگΗnGXjp_5M*~kk\ v>g* vly`"{)v@):`Nj6S%!qmxAz?IF>*t4P=Q/%<<֎lߍJȦSZ=mN:*]ɍ,[&vICC]"v}b[Hъ P3$S9]VJ T&g-:eh1u=?`eUU,]X)HofZ4k'I@cD&K6<+AmJ?YGDMai@ yymadzZ:KxO ԯb`W:ȑGtQ h+kzAD=[Un[уt$u&5mU5\A6z< c`yG&jV~aI*i?Y9IځVθL҇m{+M0fU<.lEq TT;>i ̛j@r.(a-" 1A7xtـRTp [7}ڪZwŜE~蚿ty0]v1G孃~~@ 8WUa* E!!1W}@*p+:nOڭ<ם, C)|'ƀhs!`#]jRkeJU}1o1 DPbj`"}qBC@"3[n$fkpX6J+M]OpCb_$vIjO|L 7]GÐv qWqUih תͮ@0zgfڳnpv.nlSȻ2rH, *9)x*4MċTIիj͟؉DnN#N/`IuN!mP2l8i` kY#.j3H¦RSޚMn)`كpK/m2x 8N_nx ;y=|Gmg3X!{щ_.=^=EA4+?pF%){5uГ4fWrT$Djyd٪AZ2G%K9G6 y!d<@Odi54iGi]d\* ZE!!.k)%.۳tPlgM``[%4(}ԃY[%0.l9uig__Bg cSt09:,8`w1fZm ڂfĘ{U#>.C@X9 e̎VJ PW6Cw,Q T(%mj3;FR?pb` l@AduU8}Ycse9RA1?_K4̑Wn;/po'& txa۩D2 v|i#U5AKׄ@MK%'ʎJG-q+8ir)Vw3"zSNJ[FMN$8'p+`cB繋*C06`C?v~9)F{0!=PWVS,oq&gzY#gӀckc0P#dc_ SHI*Re{1HW=*VeL0f::w5v۹+G$W.EJe1h0Z1\qgtm. wL0O3NIc~m>$w7xߐ*I9#BdMʎ_9[0z9$`mD{qAL>引Yc@|5hNt:CMJXUWfxI^ߥ=F>5NMЅt7&P-Y6cf(=x Jե3d.GLpg[ 9+͉? eLA[ KPl՚:Iye`JsS|% 6{><(,s(M=v$!m|,6!20UAMVmG\[m>Q܂RC/ȁmZHHx._ڵUux%@2 mBDdp'm0hj3~ǠphXTe1xBt=<;DA}IQ?سhm:L'0tedn¯ѽ!ӕD|lh ؼv'"AUw@?`HqSK`J+Ʈ=9q/_D$Bv"5%scXqqM ɤ*x<V3Zs@aiI&*cMm,RkE];o<b/M Pb+Wh6&M1{Nl+9!TߕEU$S)9.ԆAB(^W,&5[V`Ma;Wx^-^-gkcӃt关'"Os6יFv%䁩I*xZMWڿU_)h8y& 99857o2/[498ĔKP'(~ϧ藾0՟mIĽR|35jxCo,Tj?Y jB*_,^a;I1@u\9ߛ:P9amkm*AWskҼ{eJC<^WLK & v%ɿFD ח$>ףezЇ4֗`;{H K8+n6:YKuA M/hzƗ3$' +Rwavlx{L1ϕ0g7UBƊ=U wψOJn= Nލ'nqJ}5*eI&ϟ 8^6wx3oBȞ-dZof g`ղ6_݁]*2:=dJj#y!(dF׉ބϷ`:{xְw\Аaxmxo4+gËH,O#a p^Ybgn1U%WlKO6V8k}iL(ˎJG \'ag탱]qZFm9CQ-FB٩tI74ܷBS$KYqlP{hc{`s~oPXVQ+DjP['z 0p: D8?0heFߠ ҇t<&]lU)ΉMN-LveA<Wv%y<;/ 74*94$/JI )Q.(@ιk)b׷:3 ֑wHI(vpqtcijR2V%2ձ#+wy}t`'< z!'D]`M1aJB~%Q7O+~.,&Sp_bRt>r6_1?)MGen  f>Ar>x.$n;P Y1q;+1l[JMAbqf,6t3$g1t~)b{uCw1)7yqmr(bH˫ KQpE/O.!ʁg3mf|bd5?[ɦJ?ZS0۽*S!GMyRQnd RY8~ .+3̘{I%Ȟ>G'9e:: |3LȢQNHo!vX$adžb7S°uù:K, ã,"Z ԭ>:[r%ֽأ%Pޔt)&=F[76M${9ri:#sHsc(]i@[0>H0 p>wwʓRgRz)ti)J}v7X!` IH1Qb/SJ.ц!X{ۣh)+q7]s`!9zQ=92M~$#ޤ/aQx?\ H|WYYdL "& Z\}n?//Ooq>7ZQ"OL ˅fHp2+* Ь+織k_!dj4 ANAg#.YH+gW!߯`93$*:2n%xF%@_]!ZjY.<} >y2Ā 8mZ$#rF*^KOvRuBD!wF)9πΩC[썟Ŝ!Scr:7BHLҎZXr6O2QlяpnIk̫zfE&F3Y_OCAR,Y2PSL;*Xɉ^Buzm.x,b&\vOpC c[eU'LSS E`|<>D Ǔwծl>}yKEF9a)Kު6p+{-^ĭKHhS($>=2ty j?Js uЁNOZ15<ÿaLo?yE6rBlٲ }@ya&- Yc/I+btI=AcW9 U \ oaWxH:B省r{Qj Vr;yD+2dk!hzfh|&S#4#Z,QK~eXX|=J5. ox. g^,'|6ƶW^ɩOt`4TNX{$¨.zr%g.?#R~KYOMp qv{ދG҂ɈZh$_F.^ Zʍˆ˰A:^ol]lRN77cO ڮP)ESH? {2sW  H 9Ur_Gð;v'Πvm٧MZ^rAsGwK1 `V~m̆QmIiW]aY&_F__jRC,+)ˢPN=ޔrl`j'<9,լdzF: qĮmv4OA0-ny"iblͰ|fF y T'oLb%goe]aShqpsiPv_#7GG0f-`U`f'7%Quq+I=jK|3DSb\S/Ec5Z3GX-0i1-yj6*ȺF%\GYn~&;݅G팡HZ!rp; <EsuUڜ`Ҍb4 (1'?'`*=5O9ku~^0yM T~=QjԞdo[`;=ܹck~E/фY DW2f3%Wɏ-u?KYDvW`VTG[r` " gTc/ #L^p$tρL&+5\]# Hczs:C9.zy40zP1;GP:vG{MGrOʯ*nP2[u=$쏼nh'NMYT Ȓw @ߎ {F[C(zR<2xk]L]lЛ5O5u W=3Qg #JyG;8do 99g\6yhM{5+ݱx"]QdbDgY{jk7{ pcw0?:]cdJ <#b=}\M C3kWz,@q׾Ga#["95bhMFMeZy!8{P_TE 0)]  _͝Yr.Ne4|̿۾TֲXWudLyN]>姇8}[E>@GT4:@Q`tgiyq'/>.< X MTcx#kmu rבT/|EIzDE8B߃s9|`Y-$͂pN)VZp ehojrmG޴M̶zd2җ'>4k8 !gxbNBDyI-/-U2Քc@u?_~aD/ ظSobswYHעOmdq f@kj{sXW*w3rb=z^ܾL i6aɭ<ݑʟf]d/N't gBaz7upq{qx1w^%Q/tqȓ-M,Y :Ϊ9;7sh" OzMk-YՐ&Dvdo[c:qOWGÝĝKpN~ 9H%!r aX){|Wjz{ 1d֪fکrq8:G l 5?aIվw]n5t45p 4TcқuP#+j dDsُ{rTBÄu gD09]٪z'wW"{#)*)|Uì# ح.ܠj1Pj w69M{UƺatPT}y ~wՍ|kTgWo\Og֐wey+o3x&C`?Iׅ?%d@n|\axA" a;_qܱ&UƝm33dwHkc^smZpC9(`7qշj4C ٧ JCm~}E˿l,sYsJvhtvEХ4g{nJzN_y| }vWئ=_"`w{:Ԧ 48RV`73'4x0ޞbv1QLmOr/kA?!pO{i̅Xdsi9Yi >9zhNbn)r <`41{?A/ƀ1 Ԁ;)wK+|Xp]x9U?7d$ poăܯ稃hueTPJ A:.Dhk &!TBNqm<<a gGT(hjE lv+4 JUtmQ%~ 5E鼟qGG5S|j2iUZ#fSp3"Q]o2Ʊ'tv'F#ml免!!B,BInr,`\`+Yq~[,`- Fla:s?Tiu~-E#J/9k:Yu_$B)}x=s= sHJp;0sFu*Z0ñp H蒤}G@]򫫘r ^4kC$AޖV*+Տ^~ۊηM9uF<^h:l!,NOASdR?(fW*`z\ao[Ai瞸~H^m\1ZqjڅŗaSo !E!ൢZ4.{F_gy,0ݟuuo'O#.'^vvTHQ#<^=Fi/30`VwED- X-2G'cjÒ FfXXG|P2}ȓ-G -ƥ.FؿHx1`Jm3bT_EhD%+q*x-/ɎQdxvM<Xo o?l@!_眪u#NiMfȯhR A׬]dvf7OXP5' S~#Uܵ moR΁g͌?FAgf?>w m9HIwx{w~+6\TX;fkWp6L)Z(MȾVŢ rO,ȳ_X5Jk͔ҽDD*ji9VӘQ`OJHE9KEIh{m+8RB ԮL˲uj5۾RFV9eB(zy*`s# ZJ7.N5nӳ+cv<= >fYy"5ɰfr ly&Qdby9*bc# *(g5>g*M~ݪA߫>"9+ R9B5C# &yS4GH%tkσv.mͦ=pA!TûwnN0HC bSq9<39',8j8|dJ<*H(]f4֤1<ݶ}%|&M%T괾t(G۾hL ۗ OϘJ8cެxK}0ˡ}3Nl:7 -$]:aT*Zۑ`JcZo2,ٕ`l R.T<Ԏɯ3#3[{K'g̾kU e[(/0#kv0Mдѭ ^84q)plh )YndHt H`4 ; Joqb.^u(|kOGbo6%ABs;+wM1wUO$!cZOcc ?< zD}@;z;MԀ5Y3Fgsމpzؖ83L vHW%{gp4_|.JpvE2[UvQ܆Y9 H3[.Vg|VTTJyuϥ19ku8\E<ʔb g 7~ӭP'H@ >Ue&U|5EWIIA/x6V*FcA }яFņV]ɭiG5h==/v_)lEBJ4,av,mD_to3V3dsO qy^M(xϹ [G#{k^,^ӎE% Cjs^jS= 'WЕ8\ 8vG".R嗵~q/(ѣA2`%|DZْ@jי.|xG qY3ZDW ͣe{DmR8Jm%ڵ"^ʠ?fUAh5nh&<6O& u!N-}t'XW$߃U!Ţ~~1ٖd 4,%})T<8SL.]o`I{*jfk>->\fCd+ W7VU*@ɰs>8m\g_a2 Etoztll|Dd(F`[pL;&zAS1tͿWttBQ&Ϫ/ڏ%Ҳk"m 1[?\Arz_%=t*3m0 }(Y,ϊ񘸚˷'(l~ buRm[CZᕘ H~lg@ 0NБ!` K)?kfR6(sZ8KB՜d㋴yi8 2_M) /ynOYPDv& ;ں1$ANf@GD/OG-xр r*Tn_ޫ.k ,KX PXaquY%zXm.FDAgSY?ӘF{M[G Li3p0'+o?C@}X~,7ʋ:1 x7%㏫![#}]x^ "-.K'PzamF P#@3RBha:7'V~NcKڻϑ<.Y-E_T<J~6僨C}RhYM9LO%\0ZKʇ@g`Th=a気dW:r9gs0he͡\klZO0AJ2US8g@^dnx<[ZKD'DOM*?GI XעQk9DEEP1FTR G..edӏOn{wwwd|wMH&*Ӿd*וlYY iΐ5.xQ\Ƈ'tկH5Kg6 p@yd]JΣَIo.3Š'/jqo-_f{ef,4v![ y@)<,]BGZBQgKvw!&8&U|@v]U,}8Gt!Ε76(0O`r|C uLTP#m4U@Nns̭~r`<ͣ@ E58G{v?&E@oqO$[RzMl WD>c>A!덿PZ{_e Nڢp K dlZbۼ k10p['҇SDwow w,w=5\93lٗcXUW6ٔq (9fN7YW."oJDe?'c1L_Ʉܔ{sppz1nW4q衻YbЬ_b%K[ܲp+ԓ|-˼> ֆ)odCu´f\ 6 ?4*mr k>c.ke}rԫ $'VGHU=,YrT\K.%=;="P8|3@ NV6`LB&EsYn]Zwb}ĈתhY<g뼥Ӯ$m. IckDW)j,,iϼ{ip!-wL'oUF/̮i{j<;Ļ,ɴ b9jA^YcGGxbYCثOҙ.L۴yd3Ξ^ tHc1׷d>"Jc$3o[Bx5Rx~XfWLdi?Jϓdø?q2M qHF ~ܦ]bTudU/1&,4" i%n!OqMCw\n2M|B<=UV^w B((d#HZe R⼀ES>G M"w+{5}:*`u`T~H3}! ݕ v /o ͳ(T n:'q vzPq~°d q7sYn/5t#'3r(]>W+/@wb2@"+Wb9DA#fy5wKQN7rePd3E~u̔WjctKfU+ `3wNLItvg9!t`V0>+J;+Vx(B(ǫTPk4.S"zzkݚ?x̢T[44ud&dM{o/H`lcE_6'i\DsP΢3ZS2A%q?*WX*U g&nԼ= Jd lHAJ1#Gι;tTEm-;5aS^&{И}37Y6!tYA )G6d"RGbQ.O~ QX,Uf_}}}=dTЫ *JІhf>09Nӱۛǂ|dv.iƑgn4_#S1v/p(i ?6 jmJD)Q29+P"b?~\{r|$SWDBFe/Ebpt[vzk1gbP^4&xrP`(S!`ک@PHKf$o}Qi4_$32-*?H]k?1mX11 ( Φ0j ljQmc rF}C*6@;jAj,ħeRWvrjD&k>n|-%m ފZ1}[4N$<|\ʨWQDژ1q_bS5>O+aH ۝l)؆D, oPjD0KIO'Ar7}TmvA :a/cSJ ¦B _%R-žp'itX70ZU$.?4D/i)[q+x}ꀇ{ڊyRD GqW?mvDMp=Wb ~$_V2,o962~ކ|'A /HUd"/$.!ӂvWdOic OyBKB:a'"JW"/&&&`~xU;7[ ɺ\Ҋ/6'چ9n?kY* bR>OaU.VV(Z֩'w뜴˰D4Mbs*XijW1~B5%ߟv J'(u"<*a/i8f<ʆ/'Y?֞Tϫbmw c]POx_9xrwa;FV53"ʾyT(QOVIڒiy?p1AɳATՑ;}p:0rn5k ]MVR-9Nw*oW`0lVy@0s% #e+[Cώ?Z)7;tLPxLA{*]!E!4 fGbѩhq"%c-+{/ ?VIf=:=7%;nO=`z̽_$+Fع")ӯMb~A>uoXچD?},05H;/Y&rhg0<)AGlTXc3m1R:k5du[4pHlƬ5f(aXe= FmvRRf0\'42_jWK 0G>7L}ǽKS \؍,ƻ^7~ن <+# ORlN`5 $I"uE0ͻ3yNj0x^z)rcb>a[NCX\ O^(w"JsX"CI †eL)^2ͫ3W-C4ny!4އȧ9c-]Jy3ֻry7흪N_ pm%"Mds܅0h43LJߵ^Ya8*4>SN,uj'e<[-R%Ā H&I,V$'j 3?¸$1뼀?ˬs% ?A pmK^|:>hScGɿ:Rj Hm QGcf y#tOy%Mܘ}E}!>RN~4sze7ۖ;}S0U*/U3d-:|QQTjǓFPxy:jIWd5,%. 'kkSElmjcV?Jv8ȬA7D_&2+׀I>Z}yj3F;:"2Z l}9÷Q˸dC2Ln8 n5~p$#ARK@v$̛Xx XJCYy( :*e)V$0Q;94#GX$grh$^kөA#d`ʉ`7Pr죤pfWj6|ȼ{4𛣹ټݜF9"ԆԮգ|ᛅm}bz!Pvo hRJiܫ[x?I3#x5\F]dO0W\&ۆEQD[|镫e09}t !(%Z$z,2&UG~w緱;怍RfJH#M_I 3'r7SԀٶ-W6:{ 2^^RlG`-h$H.5"w$ !junPV.xq՘fw(M#lqĉvVaא{ H xV|7kh{Cµ-%!g4fE*|D*<[em̛ǵ6{%$l  =.EY"fXW|ԥГ*y %sh\NX"K>yɛk5TeQlݽX-XEm@hl_n>BX6ۣӏTIժP ?%m*y@ǖpLU¥-y\}4^ۿBS' LvHJ|]u7UI; >TjGoٙ.)&`E䮑%,$,R$ɨ5h^6YdMrbVej?PT'y H2ȝIٻ&w-咢!*C]L2CIpHWظQKy#Ԋ _(ǥ j.$hrA"s0>:GX$Fڄ o`ޣslמ)K#$,ϾC+!Xw?~t_Kt!dկ8pWrOUX'rgOi!N)r%0:e6!PO8?*Ǡw $IpcW`ct~WH:B# '/̐DصMVbZ]9n Qw:yE E'b4/w = xQө,L˭2,އ̕}?Sl 0}MLsg˭;mR-zI;foju~Pb/,HIhgdR1H94y{:7Ck0G:)8y Gnޅrok$3- [e1W.@Vfyӑ}{H 4SU =_ WQ+Z<ք7.3xܞDY܎ul*R 1CBwDfɢihoE]!7[K02E `X\Y^TÚ*rCF);Mm53y<&\ƢAK5hT Q)190qR ܽ*8%h!*q_Zj|(79بr<1zR]S2cd_ `XۈT=&{5heos|4ma7EuvSއ6hgyCD# =r ooRG4aLGl*6<ĿJPCӾGl0 Ad)"(r?s.[ʡt/'p*yUs&c5OޕH.,3js m;xpuMK[:EyծFXQpa//ķx72KٜVY?Ujwc wEp _(xTvm6_NQߕjZU&E>MhT Ô_%Vu hR܆(|YІK 42W֪DH%Wr l?z,mؙ;U.|QњAŚQM @4ߙVtMݣ^='b)uE"Q l7T;eXƚOKCeވ,e0/\:oE .KG&mIom|*7*L"T4[h3Q5e᧖w@ !Puzwv+dZ֦VRЧk2;4a T[Rؖԑze+M 87#UזTOMMUweT/^3Atz U#ȷ1Lu}hD`| r1_ K*sm9ƥ-? Tc&BI3ghڞ{w$TC;S 'Lȯ^?&, X;nד`#ffh^P6KmLhnhgX!,7h7 {[ [0C'pj/ \PpϪ41F,h_ bC'~(u{79aNT:aV69D0- }5D"F-$C gNӺ\; YH@Lr!jzއ Cd۞Vy&AP^כ \ҫ6˄PN~'ʄA\C=4ZAhC=MRf3VS7 %+mYJ;RͲi!w.І[7%ԯ[vM}x^Us؄AR#E3(PP[`zARO.ڼt_Z+^b%nk]K95ґ"ǍޮY1IFf{qfA;c=5$ @Է%KVB W.7C8vM-*IQuC~e)-CѳcQH=IiԂq~2M4ea#qAoI)­3᩺,%okK-?OKHEgz-I M7V3違*M!PRYWc?C;%ʌxuT'~EE<~{ @ rEy'ч^S;r)awS%}yT:4]߁.Ft(ˠa 53xr/jV7c51Iy=gHlVME4|saqm*"`&Tp|\# oXz'`4kds-gN;kfH]:^GKQc,yPXyzX)aBsB4G;_/чuxzhk.qsңd t𵧆V$k%MfHYy}_BT"C|(C(su/O9>|(ĴFAi0/_>5Rv1{k`u~!z:;B%Ta  CdPM2q6?ޫKyɃNM*8ݹU\":u66_ELD$,5ID"0,,AP,1!f*u{E͈#NڬMi=bԤ?>CM#eü^|2\G]lS8ёލ$3+CSFU=LSH"CX0}Zx7F\^4PniGYxrɓ w`G6$Z7jIJ&^jAiFUC𻛞pZ5 4IRQnLmEVPF :K\d`59.ғRܭpZ[k#Y4!8S,|ˮ#ܖ t&ͨͶ%7+΃nZ1YVGLo= o`WG$Ёǟ^d:z qR(> E<x=G,s 5hc"b)k N|"+E)6K2` Ϟ<3ٍ<Ɖ(r9\ Өe{ "EO5z|ؖ=7E(Wd] kΝbP2NA-U'۠8>;7U^V9휃)]o5EPahŗHT{+#A\`+> . ߹] ?eVp2qG2bF1Ӳt:6 66Y7D Ⱦyf{Czv"ibHG>@+4#B1+7DY>P1+T< Iva*rݑb^&{F%=LV."t4|ckAx2oWҨ^@ EӈU<C#(6!v =WCYHDaH׼mI^ujj]h6k@T ?tkq [^0? V9,c%dњ 8 ;ߴ2;bF4VM>zT7>\xWx]ض }ؽF?oڤ60'bkʀ'o'Qޑ.#PH/mR( K~n2 y~XZvE_{ T?Izx3ZQM 5g Tڦ 3@Q2q_(%g\`*j=yKӝ*m2"X1.IyܒOIidj^MN`/8>e4% R$8XϔX08AH2DUޯ٘$ Bб;e @.,sWnBrxՂRjߥ/t1$.!|:WM"avO]"5JŮH~(>\o4zN)\|c+KGfBP?G(ɰȀAv>e{<Yk'ӺukbaF 8[.zXS(dt:KNEDHVQ5ќy iufd)ű|^+2|Φ%=wqqx(S;ZqMԬYnnœ.έJTJL4aQv/p d&akUP@/^>f;d}?97B'ݷ(TtKcQȽI`dsX|d!5kΤwM(\ SnaVq2MGr-Cj;Õ%FŻW$`M|GЋ8WD^*ϒx@ޟ$29Xw޾mi']m /QK'MGٓo 5Y^4/^::~3nօ$ahyK>*DirFfa;VЂ`G+ry)E. iה_b 1d/u\beKAXA &9 #DQ:+x94ֹ̟ ZK98uuXQm=iG! a['qwėr $tIΌ˵nT fݸp%oymؔ`HI=V\ʷ,Y f =%1&s(Lp:W"[>[w I }4!ᡓT5>K-۽*hI %ˉ;]nzgqo>zgZWB_ % YB›lGIK."}"0C^IrDc$.Q);5+Byoy /ZS 'W +$vV~TywĶ?T5g, >/~Es (oaStPSĠ$TKrG[SĝqJxk3c gVlz=WgHᨸq VԚ}^`2Eфَ7At/G\Fq^_7UrG̩R mjm  <@PҠm9ߙq@$fӱȭ\e_NǒA&PIs)R/ RLX</0 >F:ӥ@c`l^6-J_(C%3Ҕ@a2Yp<[]C 퉶{+ ,gCaO@vqEeLpl+2Tź l !H.5fKceF6bO>?zc2{B{.,M1=EWA&HIt_EKAޅ/}威ҝDbN濒bĐd/0yg&Qȉk9v#{w f7eZLo'^(T8ֆ5fʏrƫzyٳw8$>-cŸqX<XPbh}0SmgWRyBIf}mT{G8̪x񊦅! ЭR bcj :N09+a ?"x5Yz*om_LH}-U&1M|o$[9ǣDHVWmn!Wluw}xT)C8!vzE~P+b5JV$*Iɋ;=F2X20-im+ go;?l}߼cQ59n(BZxnLa}4UHJ͝P ]op}Iū6G<$!;Ж(Q 1oMWGm^nG׍%9QP/j ۬A4U<}D7 ?vu5{]Gn ۬j ւ Z #\Xǒ帞AYN3HW{-|)+Dt/x`5c?z9y]G/1gZA?λfbyI4"lʓ7*@y]i:Zqt,\?'1.7XKQکy?~*:yUOIc#06aQ5 pVغ xx⦏ex:+geXղ`>;l2h$Kwװ1ү[Rq~q$#ƒ\, ʏ0k/*n\GJ})8/^r@U|WKQqlWW6gDbIPeKS (EgW MnňL5 }NOmj?#0taM D7K~s ۥ_]bB!H'`d309{웈H4)y7 ג' Rv7/|q3g Oab b˫-ole[6 c@D=_P c Aa3Q] u9ϕl)\EjrԚ3G&8z^R W&J꼾W jlsYQ$o4\PY[{t@2f(S py4ئZ8?gLTܪ(B|$O,Xo.U^FIORFƪE{6(7_k`-PƠʗWG(:F0DkƚAN3^ϕIXŒ|X)oyʐ㫛 IGdĊDcxAc5SyÅf0uym{4M&.ER)"Isط} rȘ-'.:&z`^fhzҟ 'T&:=<9h[th&qVDz:n| ᘅ~.A:ޭ3:աKr#b ` e(J@lacnx*hzBzTe~- wcV\kJvGCNF_7=x;JUH Xܠӣp|~9Qs%Ҭĕh9-E8N^"',1=? :%Y`Η7 lgSq9NY1e'?흉-D:-+ܸC9nƴq(E5MW.qLEcx0ZcNGlx͇{T4U fE}R9!5F죉[WUYF?NE<"kW ^ޓ$Z<=Il^ݎB`x#b7|7HΨ`Ãne/x)ǒL.{)uj+!@^9 wsHG6թ]`^R)H٢ >DBylZ,hQH Bu/!sl͐l\SH`|XK`5Eq8Hh J*K kWׯoRoGi1=)$1輞JB}߆G39)dSqkP*LFHր#5bZRWY[ ƓBT,-z^LoIY{L}¦47ϑWqoG  Iheȭ?yXդ+j}m^s?h"@YԀ3Y&mx>rH V2Qi ?"H<]x1}eO$Q6[GLDmzwvчna6Oc](P{sOk*j pgXpMAc)XoT)Vd^$%6mb 1bsw@|jG$37bȶ.K\L[ A/%W10C])dvJV(wMzlI睺&C#IuG3nC/ tM]*̹_S")L3flZ0m|SOF_0X̍^Efu.Ej+a4ő/%П:ћż׬Xr}Ы#].<ѫ@8 :HxDN@T[C/XXv˥"N*7§|/NvŰ`wEFN)=Thoqp3I|skw®@?SDRWë.Y9_A~{>EID7ܐ]R᭥b3>5)&؏ZKXQXj/. |Ԥ4Ae|T~JG~~4'PDԀm<˳tzX[w^h'=ueimhyM!S-yҤn1~Zg(1?l8j=?bQЀWL7f-s{fD%\Jy7(6ԋC=yWd;\z_^-“+ީѼ7=,gl(\CGa%n9T梼~T3KdDfI"8?>lX.p5xeܾ;sZ[_Ӷ_7d t$齏#p9G ^"bno !1YO@gSwoo6"%γDÌf҆L+8DA  vtX) J(#GL <~eݛK25,y{ ͨm$S`kr= O5oi/ab7%< 4Ǫ:ݧȧlQE>R>)G_'crfLt"åˏ!>լpmno2UY TWGRfNZa35HWLOCijЅ}t>@q~#e_h6*(2 z & N-iC.)M_2H/`W`*.{*u4tMᡤVXfǙӍz'ptdw&\j4Bs'V:74/R8F ;(;wRn3`T,^b]rSq&2H&ʸTryHS qȹ/ųsvh5]Or085\qllsdK p-fts+`4u}`oB RRSnhq.?ajoE"^>T|ͧ28Ӽ8pqʩNe y'ZjޫwV9 Tm#G<i2Ts_/' M2*羖)dwĤt}tc`k!k*3su\*kkD(E*2h}%{|5Z74aȌ.UE;\r?n:2aEo*9FL< URN`Wh༗冢ʳjn֏N6 j2``N.k5?GS.[*YDk֩R{wJc3n k ڹB槔L<"/4>cSۻM|O>,*.)lbG zer/ǘXr_y``R+Q#WY:hc,#%kH OMf7/vWpi9TJOcp^#_#] Ҵ؈_2X ].a(T8^Qu I mpo\+zPZF;w!yn 襑1?dD]+ cvAAPאHZAO("?-j iܻ:NyP}nI'M kB80i 3×f73_|OL&o86#,Tnn4TwԻX,p.V1*K7}T`!X#1 à\R'c../yhƳt#thk;¦tBsPV{DX@\LOL(oTVT-NU3UDPu]i\y(R$5oq!ȃV.YO5 K]N@qysu֧~f./<T`.m/xQtoJ6Qzۃ{}8՗Qw 1֟W\avJ3*p\p'⠿UbSFO"',Ĥ`;͓^Z׎;ThE@EUW ^E\R&~'H/lj BZ!5{owu=r-cA`R0 dM?*Wh \,VR̄ngm :32whRM UFެ/8/p 嫺1x` kiqHQ|CjUFqסT6KB7HZ0/\jߑz{.fg=ĨK䥫IIٝ>N~5`LbjdcMeFX)w a<U(CscuRFE`A?aV3$YҠEsX/+{j4QAX @`Zz o{=tF,r\T'M0 tƵD%lB(Թ(!KrlyDЌ_:cOIC F{ ǝLCf#b Q߬ 7 ¾v3#W J.ɤ'\Hz[lN_㙎SQ<܋ ,-Qq,C [~s_K a[&Yi-@l3vdY\dj/٘J p;qƐp`H=Sʑ#Lv?,܆E2I-K1sH ޛ!H()CIa`skߖCk3.~@]y7aY2 Da\\w6 [%zR\T-F$my/VO7ysLɛӕTɊa z_qt6utپLB;G&DeN%ǓnJT;+ +U#2:ɰCʺ?{o+Ц `T~4l`v[V]HW,sch'] ɮeKq{·OWm҅a깰 cCXJLbR=%JptSGzX"5 yG?7Y Rn£>bqfsXsL*hВ _y:L,*a'I [q\ R6.Y’Oqs 2V;B%%:#/i&ᯢU3 ڇ_6ņ\ UT5h/6u"j?,aqJڤ[ O٭Jj;N`_3͵II-/ pHgp b%/V so>I/6^1FxW`$$+3W%vnu Fh%&ޮbEdAPي Scg@A9p\Cr.U$7')j ص/\Ioz6M~CMíRdC8\C%~2J{cd] RGv}Ym.nJIhj :l >>XMSKNT?{-eÁQ4I`g u@Mt±_ؚv999&&Ʊx;v^㩆pa8++_Y[^`C^~@mFaWR)C^RԻïyOf&4.TE .ày6*,1_Yj^dk]Wx6-p-\nkU*'<- k뿡]h~/6acRڄҡV(46[5mF89*cLxO9c2tfpk=y$UuFUQ˸gh!fuGfatA#$  kF)TBxB&|bktVA2ΏFBɃQ[dA`Txr{0kBb}?f[IlEe{k'ZӪg-JafZ{4l^c"|k7bT㻕?:m*>k15AֻSPDt4>٩u& 7 Tak ͉͡!{׿+EU: 5 ,:El*zJEfn\MHHK"{ ܖO%>'lZ밁!F+㰧Q6Tjs~Sj:ij4e*VDȲrlZRr;_&&~SK_5^A\|ρr5Ҙ8:wQAq~46\(eU6M2 PQe;!hrdZe8OK@_ǩ63}_,|j[)=|c^qgE 5!+54B9f V>YmG4$Q0 >s&[Ps@.E~tџA'fHds3gn{Ñ C󶁀yt# 1]؟\ބ|F[H\;yCćy"kfF;'*7r/vE1VPkFy4Kw%?=AEB t@.I Vj\:ܭ*`]z!dhSp [&f.inxu|QCOQ+f]%PQ#xTD"QL fI+;Nu`-ήugC uY;)[n 0/~q|,{XuUYߒw9Op zD^b?M&ϳXO[/??9w\nI UBkw :so[W^byD |I~e+Z#Xv5 >:ÇV&Z k2DKIb3bm%'H'\+FKkc<|5Ya<ȹ|Q"x! (?hl<X^h4(S9w!Xo9l hS7/Lj?6jm ;#`h8KSPh&Z[.˜@Q4)V~=LxG& 2+ۏ ,~ZjkOjik2}pQ5f+rQhw[դU, IZܗĊ݇`ނ"c$~?0X'U:%齊LAZ8<큇o/K|Z,ɂewE8PUVq㻎IJ4<Ҡ2d qjdwꌿ;HdyP0U,s]3h/7]9 &hry:E)Q<&mjX#t\a=)99 #ZUN ,JMl-(w }Uv)"j߱>eRsk*l_J? {\#~%c*D |ej Uh-JtM@\Atpr#d͞ԇ6 ͬW>ƪ5Ԇ C1;30EsIP  <57k'kLeg or=赮 OЪiC_r=,#\p.AL,]z,TD*-=᠂/6bov1VǕBf$uU"Mߌ;BXY <'CYabO|%ő!?flN] !ɹ]Uw"2N~UuT6+4tlwD,ÓF>sIn(FR;^y=ޝqA~l1X2.@x|+$N>I&i!`7 47[DkX6zt)L 4U 1v|s'OFItA5ۨ9Ix+0he /KUMFWݍ>/=fϔCaKo0s簇irQyʯVʷCuH$Jf-~qC<5ɁІ9,h`=^]V>?5xq֗3 \=QN@?V{ !-HAΤy( Q&j40+#tTI*>%p>k4&:㚭k&A, [Xѹׂ̌w)0 -ZJ] r{ Ьe)WvINrx;pS\j3A Ŷ7n@5pZ33\F5 7 h$0r -.[xz.Lngg phr%f"y[KmF/ ,! EGBa f2:o)(wVs{se =Fx$8F(wSJoN>nЮ_fJP&@[F:Do0YS-0osP@a:ljbBucfWu z q,!pAGf,-5IY2G hx;<N }/-W1?7$X$ua+B3! ;sC^/S,bWbt78 ɍcm-$ .aV,eK̗ 0vtzYKbjW0<ЍLRRۨkm>S[X'ZI)7{,/XvlʾE&LMTR!@ۡ8v|yd@dA6b2aIk*hr{!z ֏\BYWue=aJID3|䲲u XD@$|P(K<k0.-ף" i1ձ  =wΜ T= bSj悺HmMAiǰ>im3C?Fi8P rPl}p_[ #%B(SSuB"wcFiNG/ ZyW#N blEAM>'lS nÈ3Oc:CU":bgמNbݥC%:VmT]㕎uNamGV5tijEjwy+A|@b`#S zi>?.JdNQgξA}R )m=J ;[stuV8@_WbwN^V"yfjo΁!nʣ~&zIoۡm[ušf Q JAFՙ/+4'4:c?Kj% l[̬sO&b2oqFjۛWye#Mh; [B+:2e=IB fG]Ӹ𶦰6'ۭ͐p&|mҰ\fztO,^kXa1/ /QI"9*y4!vo'6bj>OtD=Hh1`h5!+>eK jfU\?ޭ1-|T^1kX J2_YoO^^TRZ|h%8#*-SO3 D/1@d!S =]%fpXz3=BT(z G}oZuewESD>PHIX`d֮#Է1dܟ=hw@kHFd֏*Ps^bfVQ+)]3Ǿ,)KwJ ݩ> !Q̆i(>Q}x-r[Dlaά(gĔeC`F&C"y _ĖNRsF.?qt|dATnǿ4 'N50~Ԏ{ .%{2Y*|J}FIY?aQ[* ĊP2{oO v7l~| GS}]?Q#BX_AP,Y!/P6>AQޜ ϯ.PHXF=27=QA_.ljòFU z&Ex)mX9m1Q6wxLڴ1r6Nhإ2@Zg;(DNUDҏ(@J9s=#Jf!C/o_\DU^آ_d {j7E1EoPoj65|YDŽ`Fzjcx GZ"ھnS&OXD)0EPzԾH yo'+B:.v1YfP_ mMW6r}ټZ=7sbf/>;I\ ;V`vPEi+K0_2,eW=06XyX >#[jaӑP1Yb,[k@--!roj 6 a{IָM$Z҆C4֠_'#q2˟%ZQz'}/ ޺7Glu 2;9ˀг`3c*RcEZ N79J_/)TNGA]_Fo_]ŜfBߖO_. Zk30Z:s|g##3t,II/VO> ׷hZ0stSKgp\dڒ-DGz071P=F>Kѧ#1״)܇%` Sȯ×+v*%GOCWzǥй 0_Pg=fYz{dz(Ƞ[&N;Q IT>rȾf(96g- M)g'-8ܔk8KQ+L,qeꎃ,o`dȑ0 K%f;$ސQQ$d-r_n4FX='u$3#`O VRWfAwA{nsL֜ &1Z$>u+}ܛ\ߙbaC ?k +(0JqHh1-6*\B,'AYb"V.0~nOYT3e6XC7niWry/sd1Owr8<i]@I1io9/P5| L鄿1[tilf/|DÃ,8eE `q|5 kH,hqaؘ j<KI(e8eH;. 3QSwh&hq}<590 .u*AA>+ TZ-F+JLk~{rs{Ȯ,Qǖ;{0`P2ic6.%O’ϛΑ-,Xƭ]/zY8U0c۲ډQ4 -[A>jppC+m*6ιJ-o1>mpwG2zʟ) %)tޜBb cc:ڰ Kh[Sgc[OEޕ=] C|Q\Ng*kk'} .N*7υ^}mCLK==*wIpdp ..);A@R>a횅k̿ zM{r. yWehN@KE eK>nnr[Z:;e.0Tvpp=% t,}56{dM18x+`*`=X)sA1QxR!w nEuJ&NxxVҢA]y6]ҠT&V gUFu̬.\T͹7oJ,knK@LX; %ַTOv^E@ZNTNqt4$ ET9L= `ْ(nƽzy=r&yBkw=#l%.xe8Fst ;$bRT76[h1t0=wnCxw|N ft 8.CyX#@ҭ l|Y}~r|l$Qꬍ|op ElΌWyyڣ:{6?>co8.p] WoQǙ+5I~%XPǺ:~)M´$?zQ:, '&ڗ(P#ͨOQB/ˮjB0$S􂰜P !0/ J".m晾h3 upS$Q\UkPPrl=L&=W dS63Y̗w]H_"U2E}*sHVSdҙ%+T'C| 45?lv~r. Ihl,~ɦ;Zmcy=+xEr535q4P\|畴~mH2L@W>D4U?ټ;`uS\OYeXafWN$>fe9m#.J Q̐NTp qi)YBԟY.pGaܪrf@Y&X(k >a7}Q rA!ԏ"{S =jl,* u?:h'h/! F2 30Lݛ~u5χ>o#Z.yZ'B%pвhiJ\ݥܹ#hIW_ F>/ ~_C(#w`PdBMo0MNY v{X N@[Xپq7ƔR6{oCm>M+ռh }I C.NTbf:}So>Vk8-6,T)2zhHށILaH6P:FUwhrΨ 0"v{<xHo ;: WH8Jg} YM13h/9] P>޼QG𵄲<9+RU[YISkC23fj,aGdgpE1oȾWoH lٴdo72Ulmp78%qnl~A*P$'yĄ"tv謹d`!m+E(\dMeXD gD ^e0ei s봵XF nneRCQS_?FaQ=b$a՜pM:*wߔvj`bb`RIpDC nBl+9hN\Rmł ce|ݵj̉Hp\U9MM=Llzwd+@U )8aUE6{oX{t=Gq?{o.N4wFzˏԑJJt# #(ľI/4 oH%}K\%e$8i)uf}cM!B^G$m:)ٻpVF> ^ŭQk= FGRXWdOv*Լ iY;LbURI լؼƀE_y8'QUJu21Kef ݫ++C,G: Rr-F7_d fo#XOw d R܀,}Y5^S ;|r&tف0nz }o6Iбb{E&J1ur*p&g&W @=K͗UfKhz>vԒo!D%b(VP\[b < :DWPoݶae(NLc2n{z.j#7S/F۽CCTkŞ ynm9bO-&(âţX٩MNڈ晩n:_~z $ F2$H~RXcJbz3p;N:a~a }Pg28Mxo1ӑq $32TN`ܚMZUUVu? "T`dž@ǣ\UEE$l ?%ڜOm:]tL MinjϓW&t4i vة`枵&X"b41~X4< u"!ԖgLNemE8غ2ƕYHp@&Ѵ]h{޷+B/Ƅba ieqĘBWduvSo!9ƃ[]j "UmS$\9<52% uIYh>K]O9cs?*Y1;L,+PO c.{ ӿa6u~(r?4ao`0KpW3MӄE ĩ אڟ~nd0F\~Ea2R ,afƴd`F jϑ^Uwćs1ܶ2bz;o@Ն ;O[lDhDɏ{kp!>1idzZ_[e7CnfG܌*':7 ͮ1 xnzV0-k^Apo]IxbUY$8vL1*-=p)* L^etz=k@('G" ;]S2<[T>yɤ)YmGyٌ'--$m n @d_ yL7/!s}~sʣ,E(r)p̱<9=$LJWAvk65fy;Z@4ҟ;iߪJyb@-#>&Lfyuɽ2A R O\0^ڻ6](ڛ3wAJ Uuxqj5}W=8&nP"jôZpQWqa-Jp⸺=a(4CR3gO (+*0Rv;\ig*S2k'[HZˆw}z s- =mLS,uXo;X`ψhi_[6Vbpc?܇YsGyEV(g K3+7OZ=gFj{BQ;? ;Z'Hy3PKgAypM 7+h¨ ~,Te *IJ_ǯd(4%.LhPRݐ߿~@XS\̍L҂`ɦ}vٓGPp!2qFԃ5֡r }qިH4+&7C5'#U&vxu{P0;& ԕPZB)=Kiک.p'I(|NIV@ CrOAK8{b(NS :&"ݎҀfޭ%n:kX׫^F ^$ i(xۨ!B#h\.ۓ:?%:Ghآ7SRW{\gbe1W[`Y]ӑ)Sh meqj>l[YWiLey]B嘆Rf#\. IwU 9ucnWi*'&ƃ1)3G8؝8:qU6D_=)ì,';XvS-V'قW%5?O"V|~q ɺr7d8x62h {Ȕ'QmCb!R,?IHj~$'AhL9K[e>>8-(\t=q%JH6-UaםWg,e-ZF:d ?+Uz C\"|¸1S9tzfb_Up=w)6c5M&jgN9jlSrpT3dΩ]A6H[M}[%C@3]kb;q;pe'7;a.50ibZi,:_ naL-$z3R,^IPUSx \yw| 0Ǐpc&RSG1 S=AQ"bvLգMd ̒}wkBH0ak`sn}ߐS0x6U':4">*Eg: mmyv @+v$e3EMako)D~۰hzӲy* k{02n8u{xTM v0\AT%ٞD؈D<1`XMAFz!<DBUw=^V}y0ʼ$Z~(hW$,Ajy>)s<yp ><,I.g%ŧ|2.~KM:GP=3NY8 xU [uJI )|o7_w:+fYk.OI Y?霑Ge04T($܄-^c iN،b1Kζq*R&8;ʇfܕ &~ǜ'f0Xk$4ȅ5*Ɛ=lAѵFTK*M`I0gX/,wde3 D%)`?CP-524W+];R#xSЖV#C0dQKt_8 #)36gL}e)!L Wǚ/34==~lϗn 8wd5ǵ2RAti,; !ژ*fԬp,X]mtʄI|| uX:Rk<0Wg"oPn+UoX+pS+f>?i1@AMnU1hy:?pCܿ~lOV~HUu9~CԿr|BIG5i7)?HfɛrfߝP)H#,1H-DuvyY_$^yE+y72N$y9R~G^cq9g|F Ǣ6mK-"r\H&kzo9M[pA MDS w%pen56Ce1ta˥`+ʏ9]jԾEsflo.aeۤg{c1q ѢhOu&y[.$ȉ46[>@)36n+%#71?NM6 Se^L-͔dq `Yp0rQ l{ 1&;4,ߍ ijSI4#sdzhU_?u_듿zpߔ4_CZl9EE)M-Pbhщa֫gהn7+G@c"z:F u8O_/=4 @qtW}Zh _n:6@05ɾsǂNrHmTFtMGrT-N8^z^(`?"}+d*+own=t;T 3yIJUE҃s$7>WMmTf.Oe7衞Iw?ѧ6WON]B6 ۂwuU4US{үlt@|I*C#zo"D R~'XtV/AZo\oK ۋy(/E& -3c }QƎ|B4@ /SQXe%nNj g;ڠGܟ1'ӱ`ߴjm: (;A &Vw.D5?ȯkNu7Z_cwVgNQزQ@{v5scl뇷Y/J%&9 {N&$()%(b\<bw DӰ{9IH p}\&@5I+jh"JS~hku(mU AwdU&W+r@8d>"c<9`~)'en nj$5B^4O Kḷ@2gO(ﲁ\?p=EMC }>C`"- d,pTA&smTBў3ZI˹CzҝBO‹Hd.CpJB/:)/Q%"gC6Λxاu!q<x!PeM/M(p[[ I oJv> MzKŏHkLk茡{{ *XՈA_1-_هH[x>ك䪂k4 s-Y|㣗f idh:* ڡ]- k }sv79n1q0"'B }.Qjuzu^%S|\.m|t[i#C 3AÞ['U:4V#P2A6t2ۋ/>j}/'VR3 "{sAc.^L0hj:O<@;="@WNFw(l ̳op"\  ݨjKy4}&Џ҇tfS}2?_4Fm<<AwԖ?b2YpEÚhG$U 1KZvq6adDqpvdv$܌XCuqjӱ;&ǣ$ 1u&?Ԑf?^ }(]@j G[YR@2Wħt:OYw#>=]cO,5LTp,'VʟCp;rwI<#;h5c'Ql_p#8ȉc9yg3l=lR&G<۳*t2; ^4V* BQ5 O࿏0~(p?m$E(PJP@* @Je%A!rkѷ4Ii,EA(P!^?TB.Y%aPThR}\5 ^=(J<-=ςa츴  L5h4턋M-d`Oy^@&d ]=2=b䛍{aյ^8pŁ)~ M%8(K4*:"X"L+U_jXd1}$YDzeƇP!ouO z1C.;zXMp]r0)o&xQm(Rׯ0dZ b n䑰s`-{d8Š͇`uԎ4U7۪֭s+fe1˞(lُ1R*kE4{2|JYDlAw8!Pd5MbQcw)]&X"=5'$5Q 1 UpC̩zl4.)j(wvt?YJDl# QI0khNcF㬨$-2惒@9fe - ]$.q"zu.\$z#6)1UgGq/J C?SJJrp4030:o½*j[OAU1 Wh=m<*-{4iFgn`|xkRI]32575J59?Cjkc$u's f}]y>r@h$_}p4u ژ%1&8WOD9^Hloy1Fd܏F#oq a9yOk+ -U ]ȷFHQ=JmW@Bʪ$#fv6gw]P[{;/}ۡTW1C^0ͅMm 2 NGQӏ7 Y49 iyѡFW[x } mne˰9"JecUS"ʚ1Q|Pan֮K_=Fn@>2}]P8EF GK.AJ;"^ O6 9C݋y-\os:6yX%Mnl}BDhAigM@1I\\}͎?p ىddC ?N"F~Z*Lc #/.V*Y=Eܳx4kZhTJ OgFN0S|,UWЊҨm`Vx}%^Mn&̽Xd"˖chY6-GSqfb]?T(bjr`# Ez]N,vѷ -4 gYZ?ᰲYk荦_:K~a1!F9:.3ho PE32=r~ ^W/. fϴ(6Xވ+1w2N14ta(\>'bF×N_#taik"PQ%~3@ ,0B9_P#ŕ46.ҐctLn^# ǷfqG 3Fgp*;sJvPR!it)R뺉!ne[+證imœAFCkzyٹ R*FdZY6$#g<)iV wBԶT2h6Z_b$-ԴSٽX!nm<0CҴ%Rh:0\ND}[;=;4POa#*4UM%yvg8RY;4jhTypW{;f [R* R~N-&q:t4`#K>4O2Z+`]ͬ^MC*ട ɾlXUh\O@DZᐃTgAW%"zVYm"+SfN*XAJd,6u*z7 !W'5Gv9>^IY}9u&E3E#_q$}*Ɵy H +J4Xgʼn'e_dq,m꽹z/usøra)E$PP84%|}4:?%ϧVPD1,q|EL绉f*` ÅXS}Ulo&dn+KpK Մu\AWKÌ 4Te`1ǑXG%p #mix}o62~!ՌCGV</fZ@mp>ܿi-M띧lA<5vf<LXCJ=wyγ["m8S}uhMlGuk"|e@ZŜ'7*v r/=lyhFv!tiCɢ[ӇrQ0S9H{)eا ,m&@GǎD\ BE>**^䉃һ~IB=2?C_Hm)8V1 _l{_Υ~ЪѾw\et7f9pgEPMپF!1yjnebƜS&u^]Vc؊| (rAGHYr<}]3ox?5*cNR2p5vɕyF,Zg8Ѐ}S*(\u {OZ?NV_s1I_ mpO!Z+Z== TT'dIs,ySӞ9gn"4.7`/+$s Ƒ_X@:4z]4{x쑪gOg[6p_:{]흶 CObE\|Ɠ#6/p}ic3Z~=x`4ňJild/k( q] 1DށZBn5IY_*T+-S} 1 կ&_evu2<_gSV?F2ꛤ#sAP Y4aiqLӳSݷNVXeso@$_d& _[#۝ma=LL>rS-aT0t]Zlp54ؒ2:pY*SŠvriw< Ҁo1V:~U5 d-Ttv}ˤUJ+ܺdopF˾ 4Oܱ(=aAX{m6_{#v!aB۱d{F<;h-0ˌbZZk)a{Y\ `̱R)䀪~ŶWE~HRdǃ»N#DλRBr~awvGa+8zKus+(v KR]#'q;}w+w՟938h9=C- MK$L8 `Y!y0Q3wO4,iLfidAGL nM/nCZ4 W*_jYf'#{%jlUVOE@ hWIWGI|H6#yS2UYXU Rֹ:jT>4Ts % R{ DU0"sfvL%?$)x Y@U耉*xAp4dwQ^1ZaSNbMH>IJkq0#a259,3_ym@!/'|+=.rBڛ55U78MV:-XqPg/Ar HpEUrQLu?4k‚E@7[22tH?:_A HXr+ī\`<ʁ?jHˮwkU֤MR djmtG'pJd q-7P;Q;~,V~OLp˕|ϥ#ʑEf#{Ũ֢A$ ^ {W &=I64Zy!|j~\n5X2i<,n-&w W9ȵn!6':zc$pjx LDzԊN}$+`#0Mj@|@/](#^UZE:V7ܨ i&rvdeZ]T;EgNn%2vH=VG'ے|0;DaK/'D:vP˄ UyS`j&}_bϲQGig8F(x(FIחH?R:U߶X*Wa`괼lu5B_Ǻ3zz,5,+)&utJ'_-2bHÐSo%{r5 ;JЄsg1ܦX@ tKHA̵Zz鴏RZtP/mà&C,!i9 V5G߉%2F+ H6fdDt'2QlwuzP ȵb,8o{5vhB?g^zKqLľNlqdoǯ6"3R$tf* Cc+|!pb?r n7=GؒXIp3$o~ -`aeZoE& Х%jgeɦwF@n}" nNbARkd2Iy @Ћ*ٞhU!eZAǝ|i G\v1VYCmY 羢ɼ Tށ c ڽGr'Q_XmoW5g<H";Y*S\wveaG45g\x| !rx8\4Ewf٤GwyT0- u iYN}+hvhB۽JFwTna29PiP[uaDXPYdU 3|1i`D A3;vbJb땍t;EqA{nI+ D~LuQC.if#crt(9SZ?l/z{>.I%칏'MTO l0AO_.kMeܾvά0]/.D''r3A%2/1Do3GłYyiS4^Uඨc`BE ݼG#ܝJbzs:rd$ANzLѱq$`=!;KkuMpNT+. ?@Y,$2 ?ڏ9~2[k"Iqf'ٔlQ3'ym4b_2yNwF:)#~S﨟=988pvS .ϝu|` Q= dJ)Jbu&V}޷\O-LȊuXK]vM7݉;{羗!X|4r|.&sfBPD. _`ݶ/~P[\,FHƞ4Uf$c(pWD9FK㡐'ye [)AEB}NuO&$_ 3l}l tE镪b[U%AP|ה4:KB-j7MWxoPgt!wk]c ]'7:w8疘Y\I4~$:;UfGB7yc%ю局6u%Cu`-"[fQ.6@>ԋO9ةqȾ*Dhu7,BGDf29w񥱴 (fcDԑ`meVYs8̉D4\\"ɮE޸pTx,9;KIvu.i" }`x\G{FrtSLq}5WVVX[ Z憿"'::a&ƭIő(l3SsAOCܟ#g`E( !R^ z5Vc>Ts^(zұ3'4 ^%-7?РW wtFI${?fF똎T`#ͧ9 ٜX/['70u סG554)D{j)w&RTyp u}a;(͔B9ӥHӶs$GBS72`0k{Cx}-y挰_VM Q{5o:]Oؓ2ŚC.xt70U8qh;xsZ%K d/I]VJ}Bί9,áHg۵k~b~We<䟟mm*tвHb. )3!LRk62]F.i.X=5$kZ@q^a $oVMI839%aNw+RR%5jL09~P(2{KrӡЎg~ž2 /*]`EE}Ԃ~^)E]Z k04 ׀iQDScWW"|Qʪۂ-`ϘSOX[~v;t,"`Gzr'6>6r!#c歼°T @v O_d: A*z{hn)-) < !GEr)B>ˌ(1y4RZ1jE  ȋDm Ę]ҏi˟aLMy1a;@]>͐d&~aocG)Q~bubɟҺixu&yC(M`}GtG`pL݊Hr7+qɘfrh [BB=/ qX ]#5.9Ӹ(=q0AZ*CG`Qn#Gk i)%ֵ*m_=Hy͇p`vKCpI{$/Q,PLl}N;`800Ζ0QLXq<)& a.\z{ԽqE)YTU_` l*l UEƆ~n!/~Гeܥ iWJcp&059"-rWڿj*Lg\'6_'q3p jO9=xiР*F(6H$)tǔW"3Ln{Tbecv }ees6ƶ%T$´KhMᾉI=b;ITƥ늸-m@*%%swDiw _"|e9•{q0FrE' +FZPt&8|3ZS} ʰJ1,z vzWTM NL1?(i;W>hrZY6]q㸁{Ҍҿ2,Nқ5( U!nU eH4;Eʳ9ʄډAG:XۼdZz;״fT]josr7C21(U0'#ᎫUpR50ɀRiB{5fiq\+{c:u{ec?j10yI#veof 1 >Ģ82e"$N0P*eVld?0(p}*LT\9L(ba- IIQf,C(Ps߰:Gr4KZ.4) q3c}9<9)C+ri߳]Wٗ 0%&Wм -l[a"2ҭj6BȐJ ܋RMܑ<ت->E-`f`tcwv*-TEBoΎ_`RkdNx؉"؟GP9m"m$n` ([2{,)0s?5ٗ%L5Zc.BmC _*fA;3ڊ? =4`fhb@GU+SHk״ te?#p1YB޾K)mS!t j{pMSӀ[kD۬~~,I=3X_d<ugrM8ݛ~F5),_+quO*pY𵜻^S;[zNoy^Oy ;ꑋ#9WJ )J8bpߤ3enxZٰ1Bϻ+Vm)t z P$m\˫+vf6wDYdeʐ_wCr\LOG%t?:Ed E1A)㈽@H1ӲIP5zn6>KpW*\@10-21evcoKXyP6ŝw8|3;?Rp)g.gR%l]0~t0n"? +Ϗq̥3Vkؑ]!~W<'kF0TX@3 9 GbD+ywc&)֪o əg|{꾲,j$T #0CvUKSaK[ E ?2FJ$sa rwBH .ڏG׍ f-wix# Z2")T>˞U$EfmhU*PN6pCs6Muкg< ֪ Xh7I&]3nݏ Ph)l`muu =6'}()g^jƲ]tA澘%UW"w3E=4Y">sO,F HvF<Ob:28r7: @W*x45XϋS+x$r&'1%z۠:Wl >)5]&(D;a4bEÆ^%tqjdGKk/34)m.c%0+s.V?M*3Dg5Aps?y6!C>dt2c7~+&qaDa{c h:I^NYDspvˠ'7GxLjw%$, e %ȀpܕXr-0Wό!\$:GɳUS;I0\E{5_oc5p6IY6Aru@.Wo}MaVi)OiFLycB_fxY! ;y˓,T{:-A@QR0)VOⳆH?]ٶ@83 2#$6=0K7(7Я!(W J\V,H>E=H[㳵OX|";MǬJ7"`:IY900<W;yrK#yxt,X|מ08އm& ϭz 0Ի+P(5iZ"obDQ᫺4 IeM:SJ8#:]k!H(HsXys/ZԂ,1mb2ohKɦs2ؿ8}:j ԃ#(3ٳL3=UJNHrf]sVTZWĒ Q$S$yYT>Z7GW!Kצ#;߿ZsШ(`|W0OO~XI]Ati+26)*98bKS[l )'1ˁAJW.jT˸jP{Eu鏇\%! ;1.!x p…\Sxʢ3S)״ǂ#E=~K_: ߟᛒ'es_Pq 8hvmf`gr2Ž$v'ۘ%W}j$ uH pIo;?P ! azwіhY OFP+`ܺ+4~ s\MreI@ ٦#/Re9ں|FW}WVkGT@"_Y?K(V:.6̟T'SK\Q%Q۴Zu~~4%.`"ˇf= _DJFH]AfO1iϭh9ћ9^C^#-qSpq DfY9\= ٵij]\z ۪KQ ص)ldƥ0\<3w:dAO5e J0$ZZϧ $v]ʩz}=UnPl'YH\ Io,,-~lN$m%|An#-ˊ|t`LЬx9MWxt"_Hvv4d9A?Ĺ^(sFt6~6ͬ)[Ac?]Q_9f?~b y?MiǍ:R;"OAG-bJ\92[9Bݓ F_ّ (x'n|WD0`Ϝ3&"e5l,r6(roDQZ|c0EI0 )xnV`B=f2&>ЩT#vBQ!K eAE@#ȡA~M#3,n<N/[9|q;^qBD%w1?>/b*EH-bPt1pnu]@Rw0m|VsYVQ΄H\^ Դ9p܈.|c^zV+# ǷpsO!θ~C>$ `7@;U5 E\>9ӴNXr[c>Ȯ jpx7\qJ' +ˣ]]/RPFʔܶ2(auulL QTq%V ^\p^Ro77!br .hbа՟ūrǧ/ NPcw&n14ud%ߵ#Qf*5H3΂iWi*MStɠ!H74@Jk6E :$)N:!գ \W st?ZN2&䄯}AALIP.Qץ2w<<4)Cug2˹ __G'|W Y|OX\֨MvE,˹/to@g/ cg#4։҃ ^fu3+T߈[(hk3Yop^>:ECRXB1G7+~qcf8,ʯ1PE%>.)xD _ARRz:HYd=OT3F~mrGkKEӍHA'nC-{&^!ss2!bd0 = _U`w󘫑BҸh^`Juo ^ti[$Va4)` T 7PsWH jC foA>YU#Y͊gA$̛e>Rx"/0v/4b$.8)Z#",oZ.$>^ ,i&=za5$ aؒD\+X:r9~-A*"δ1^35-04Mʔ9՜R9̗IUXk^Ѻ󖮊dGRbٳV b2l1QAgo^*'dlqғsk"B ijd0s.5jѣ[ · G}pd&ETR+>9iOq3 vS(O(pg媙vs:ފBGfWUI,,=978bp(ˣòbE§寷a>eBVſXF8D0j3!" ۥSC944ŵS%mɷdƌ]U\l`>So@e}w9wmz:w :rsn7lOt?]Jn*UnOރ6CQc' Sv5b9d z)`\ ͺwHm>\TG$dw M3Azf7bۑa߷VpϸB T:\'s@ 5K]\lG<coZKu#: v6nlgY#PpOvH tЬ̨&;HLNDӃvK܈%4^iP.ifNTwe=-^ Bx(ywZbv ry2*cu`ZO;#:Df_y!:p]lt'9QT4/oo|?| +n#@G8gHVUs]>c |A(ak!$T??YyUe*<#2-Fr1!/;Uz/94!+)ks( YA_-wBg+CIe\H[#} |yב˺hJ|sOxcwӾ`dj5t^53rٻP|BтZrj(m<79=1/G?8"MmP^fcIh}0U=\EG6 dCt ]l1% S]^U+Il=8P8őKi.S2u'(*p$њ.imN6;̪-N lU3׉J>¦~Bw{bQ@ӥ{F{G7?M2cЇ gs*iXG+D 2_ĵ#E.%r.0V͍8?,nžI^Ur]8+b_Ks)Jtp>sB"m|m_.Ctp*ZQL5YAb' \i?gb&,.(:V *7iP/ [6txJlldWI(#MɅc\Jv \e1 N+җʾoX c5DݐcG*m`-h7>ZkBs ƲJ20a(×p;?^ '!E5*i܈c̯yjbب^2@rUIܴNc30Vllr`dQg+#Y5qxYVKd=ܛ9{g)v(T.$zac對tYئRYp_b3ۥ}*͗/ /uѕm-K#ϘL Fp 9.XmYs {2&JhEA ƇY'_Z{' Jɀ|`&39}pse\GZj\p'Q) s6z㈽!Cdaԗ1^lk]d8im4V\]ShAi$(U&8 c,lP|L(MXM{I9Bz,y4v漌Ygp~ ȉ-,bx,!( nE){̥)}8=-~(ע^j{k_$! 6<*#3'Ű"{ "ߘhPNşh3)sPe)S*wf\yٓbif tؾ"Y_5~vq?O]qu: ?h Vb6C۷mn!"ukWe3XAbspQuGh:K҃>ա|ߍߨfeXPsH" _NMvG x~O? _U mԑi}lKī֛pܳ@9yG+_&2ΟQ Iuz˴#IB4|72y \cش".$$XM]k)\2rrxYf6-&<\~dp1hxИHɊj[3Y#+~9_yۺ)nŠ1irX_S`},"j"ho=&O:ȱ=:j⣔gH`̯`uxy2lĜsZbS1N OAws(7*!WuWlu$rz~_FLYXaNǙg0`!\vJo0o?oB035 -<\Ӆh}r? 3xl*XMIP|;cٌ~⋱Xqb@H 25V8{~Ė lGQ%W >Nzsn\vwi#AɟҾ%BHFt!Q'k؁U$"pʕJ\mhj,p~Y#j6 YX3Be>GXÿ9pV,=!9Pĸs$Ѩc]EMf*LMmݩ,J~ȑ@[5L2}V.Q~ #a .r s++`iEtBd+kV J{~lJ^Wǝ 0,m$FK+N* L`X󍟷SdB +ǦvCS{ Q1MT%fâr>؏fBOvb|FG_oF;&zI4d7)Gvܓ>o~v1~) Ɋ~aMҊ|e zFRLv־VB/~lA]2!pj&L[@haa&T٪߫-$4l>j K_B:ĝ DEl@^ Kfo.'%,ȕҰ~Dp 6ߡ 6X} #llM\e},ok SivGװ=݌;b5I }/΋pjcH $tIVw=e^K9B2e=;y{ׂ],kyk+qPi)3IVj=ƼG)('!Bq6[vy`g#ȥNZ{qCxc6%I\{qg~S/HaTȃ0tV0tiŽMH"&8 +>(gۓu;u2Dj=0K b'R܅(@#4#讫Bϔ"qZ_Sh} ~H<M:`m )]h( "[ Q  q1ͲoA(TԺsFޮšڞd=:&I9 u= BtšZtvF<& k!SƒQǍ 7b씍 e;3wk".(UDlo{wp'&Z;rվ(i: fcTK'<'N"t q8hG]^f4=A;S0Fi,<\Nաj3v/y׃xScQ]yIn2~~Q:MV) 5wɘάGv5*r|g`$+wۣ[YY@cXs$Yn)!x=y~jgF߇$G#˝$'|_LR&Qb).Մ@kkBZMvRI%"Z4U ή5G(F #Bϼ:lk_Y}8ʘ[R4M{,\/ iBnrP4qQX'Ghp@ &'~1j8z+/^I갖bG^qzUʇ. 4ɿM Iى Q O Nt[NSp&/P|2,z<qfUy`]bM@3U1PY(:_;)a%JߩèPokFN2|-*lެD pR.~18jw}_q$Ie){|W$' ]/5C#+̡~ֿRG"lTrE&?)BW؝\ H %1sUj|kA~EųdAun`SR[?Ja$wڣ|~!ia-ONNȊ)&Iͅv/cnG,DPG傒}G9ڶ~Z#9`WOVyI:̬޺UB +kV78`nC܆73Vi#1+z"\2Uz5o br&%=j}ï1<uٸ+zmJQ%OUMx-qQ5rì)@dǶA2 M9仩f.Re׉FP:} !֘>6,xN ?Y$K{Uā=6A&y@3G`]: }BSO*0?{NgPF 򭒈r8p`,tsbP^g^!MSw uH]DNz~G/\z}oD3޻egNŬT4qkkX Q3R[X Ix2&rm7RQ8e K|{0aq㍨|B|ED7Z b#b'gd1nsV˜^ 6-h@jMv!VRG8>o(>Ud),KФ8g陭,ωe iAΝ)K;[?E)'La CkB^ډY2ܼ$GS㸈OWIF%4 ;*7OL7 ǨD2-ӷ8/s.zmxwFG'P_=ozU1mBA>&?x~690#Ęnj"ƷA)}/ -QYLV4tM4Bͫ3Eor~?C YfZ_:0N/0Z4>tlLeGzsBM{qg!khŤ VwCsEܾqo`|2om#Jżٞ?t ګ"Ԣ[KI ݓgZ$?{59σƑklQi}=n4b[tB9ofb~ǖhKjvu.aciXSL~f'B(kو@S/)4{F8y~7Dr$fQo -Ҡ=pUzu 0j51:vU5J*lS-C>=ReU[EPcGk  V \:ٻEl$-<&|k}-M<ի/X<2Y C3S˽Jܱ?̔MG1X1-{K 2iz\Φ?炢 rbu(,3%^2 s-p F }W;zkR <'36|fvԜb/khZ(.K2na'obwy2V}eZl_#^2uvfw+gIR**y6}A9IՐUeItݧ3|> c_QF`V„;33o ]bnHG gT#)=- ;%T{}({N{r{Ț;;YK2`H>}??; ǭDΐutz$&dY4?rg.P[yh%HYJJW!JlwY"ڈZEedqF~$Md^zUF C-8ɶҵU>ؓ6]P S?@|ll97`z>vjqK {MR1_x`Uł&O V2D,g椦kRh khW?ٗv ^-)6!c+P[%txA:C36Ҕho0BqKFJI<= N}Í@;4g_ W8|Al#e"^%)Fa>adG ^Ìq!x@kK{)woj`z.[hŻL%.Z-O[,(2]t(b`E0#JZ rbڴ -XJBFr]H@^KzU?H߼4*l0E}F,k=/):% p'VےlOk=?wBҲozs>#\?g\ ɏ7 ^nYG&U.퍙BڕR\^OatJ@=*{^CfєpU\6<'ĕ bXNy񒮐 2_qUOn^W䎎~?w5'q!cP| jQ`0j?sR'aL}؝2t `-^0u^[, b| +s|M 4,D!A7M#G5&°P7q9qKۃQ>.֮Bo-V^sZ.u%%(nϔ) ̕?ʒԄ˂biZ6Ha۬cP*əx4zC۫I: ab8WV'>ke+mQS M b9x&hRr{E|Ϥ s'雑 yA?DJxcOaU0MB "yGǽ8'+aa%(nQߩ fEw>\ Cod20VO-ʝK%݄S7'+1"Sqϴ>^+@A% ACv^s o < ]]ǀek n<8 >{; W^(nTu)o;܂rnVnoų.ߢ)Pq}n.(s<EE=z$푒?V69zUU̕ᆃ1q]ma 3J#|8nQ˥.^a=D*xwN3.!e=ř2(7 x^f 3m=sTk}pgD7j *h@k'D!iӌHiKE W+k_vfϾGr";њ ;|&]5=?k.*ֵ<̛p76V4: u'kk?;:é>ݡ"̧D+=~r3u 4R3ulT=T]V4@JZhoG6GX43P4GTgRYTSDk ٹK%^.4Y5+ŸӃNX1ʸK1H}@bU˻̂XgҳkSO; p>W^ 1Hbɻ+gkÓzzl[y2"7Sa r'6jhDH:QHM.\ݝIh]Iif >+@1KҸ#{(dJ] D٘33!@!#'ҽHmjm(+ح=3lYXR/,Feb/- MZgm6;9;Ve(=>6/j-FTߩl~YҝEHnHa;iiV xίJ%Hh le2m@jIdH tީ A+/=' k EsdMS߽ف ֘TnWaϐ3XVk B !@5' 9?=bG }!]JZ7FOu(h.@AoթL4] 2jLmZ/Ļտ8h F GT =/)ZE&DPp.l!g7Νp!j4hn{Af6]aϒ6$?ۻ΋> :zngY'hOfdnBM fC#FmmxټIIÞYoʐBQ?,Da_[.lu&[MDJy;teyL+c#=}:y}-<{9oK%$ٱy0(_2Cabw ֳhth.:gfkzF5ZnδwCKPЙ#?aJJ'lM/1u38"fZ#B]k237m+<>zӒ+c7{IfAFJA<st "<v_g4m kT\hG3'\%Fm_cy{ԫO n<1}05:2畚86ey/ZWHlc5 .{"7=? ̯g6VM/(Ċ2bE})TGK˲` $'9 c=QLvNE!hߛNyz]*Gܴ˾PKf5 3l+O?e3ro+4R!NvAz m fR4|[C('Әmb%Lu.*4-8*jyO+9A_Jz0Gw蹧mWՖ~>s޶Vj_״ tAn=U?&7<[<ڍ<ڍhZPŽÆ-dk-G[EAIBܸ;?z6Sf{\IS %VE+<=sw'(͗T' ̊ij4,DSe2aFԮfP"μ)SZԐ_&ob0q{XfP}YX7<{+>tz(}r 8fĂcxť^IhuM5aS*.'4Hj"q)o =YB4e2۔Vݒt:h2L~"d Ff: ~A$aN @;vaz.~ Ox+U҄H0 `NU=~Q VN0w.v͚!6Z$bkw5/S{uc|=}7N,>żΧ!hODoС=(:!&򛦰޿FI;-X<+k[Fj2h0}3_zSq]_˪=nn8Td m֨R8F0y8_6N ;bLZ)v?R.cEd{Љ:Ԏz4B.]d5?SZMIAĦj/ K2Ha܁%~Kye g4hY埶=X)n%Ya>mǔSG KK1UUosj҆T Cq .wͮM;uu;2w(p"RxJpah|wHV f`g8ew=. mWxc_-lS|)l!u@_<<ӡ')F,e*_^eKU {E #3bџVr fw4NYd}m7VhV)Zf}l0 `At}М(ty`=xA8m|Z=t5]=bC "՗7BÏiH-iozGHNf=ZԡX}O3ΐsQ2.؆MQ0fh= (cuNO 55d+ OTc5 핺.$(z=U0Gm1%#I@L#$aI% sȧҽ:a;50Q١Gt.ZP/ U&D A%ir7NAAd^v ˒' VA[={ij%KO~ koZ63#iżb(Ne~<$#=ѮK7T#ę3$ugNSp[,鹓 M~K]3*FHA;4EU7i-u1M19e\fkJ mMw{O<R4̓,;X.ݳ14zokX)˺~`7,w' p JyG.Jf @|Г0?`&EHSe}fB2|lljυҙ5Qό . sK,JuDp.ϮSP/³*iЉ}߲`/RD ;!ꬸ;h/_ǮT1CG:%Юjf_(}}.<#),IDm=tic&tTl8ΦQXb u!'ylg0}45laUٟd2u4`X?Qy֭ػSc/v #g5n*ש(PXR, YDsHjl>A9Ymѓކǟx=t¢#ѣ-S=&x1 ^-}.~1ѯe{y~xh?wr;-Yhߴ:́k>(^6r A㗄5pVhQx1N2.E?qeI::JtE8T$ Vpvk(39BV}J,f !Z+՛,"Wf*nAd`kq =l]f۔A7apktbʕ1i2e]$G3E s\{җ?z?gВ5~- ۴(pK$v:jx> n:VW% P Gvaf|?⫬Z! *I%fvnusBx*IDꖕ HU66>}bLRzSYd|t}'E&ϑBuUy>i h'+@n%+렜n=BƱ-Q_/(v% J`gOJݥ zD'3=1l_YvlBB8it՘&6A5VnC%7(R9pI}Z`T_wQZWӶ'sk} K]'AoVAb8bU@co*z "Hx@jb+euwc޸R9[CK{7F+'2kлTHPZ ݮA5xYyuF8ҝ8J15*IKg,i ' t6K{H:Qӑ1 GꋧI@LIع%&ƎRԌZ4LdԠph;|kٝi ,Cn(wNA[VGoa5i { 1~^i QU5 lzvQ#{K| qCUopz]P:1$Q_uei9 DY[U/YK(ZǮXXp`Ὣ$J Kw!A^N^тTl=nD+/؁!z6NbX/R`&dLn+ ` p[i *i;m9έ n$Jg0uf7vr7X }Ϭ2f}>R!XjQI 5: 9q$LzB$-nQZ6&˺-D5oa,^2$,a or&x[I;.燹V2) 5^m~Wt Y&]4nzI%_tdE{xR{ꓫJ^Oo2d2j d&1z>@uk' /ic(c0;PV،EDr"'PKBwfEFvewA[,(2}VyA VBa/:9>}p2,i1cbkkC\zI$0Y3>[M& :%4nǞ6'D[Ij%%GhtΩoڸP^J}L-ҩ&`56:]/V/ S`ƦDZѹ+pDXV}U}˖Ցd }'O[|&ž.jnMa/zS Aάcfh?.zm$l ~N ][ ud"g&:[Gc Nc-9*:`U8XVD Hd(|b=6`Ҍf&P=΍P7Wg_oNRR1C13bڵ.&SҀ}gd~>Q?A>[QoUc ~A&kѴ 0IP'+nϱ2LL ^%{r2OT>'#Aqe-V,eљ'@|Y(I\z[{HArl!(pGY'),āVM+خ.dNUY͋Wǥ7+<"^p `\GU^L3ޟ ڱvqp&HeW.J"$,\e0ZLj.[슅noШOW[ʵpH&28Ua7u$|f2l@U;qcJ<|rbeP񑷬}zͳn50c5'Z/`Z+k{:<-Y_o¹nJ$1()?y j5,MsX^mB9W{sMP _^1üX8jbBhh𡁀ɟC8C;Z7¼E2?v92ib qb;X?TeX>LT_-4tB37od7.,?K|;=Clk$XcA 5o QDx(0{2OxS>Ԅ3z4cnI7+Mx[N4} (r.GU"Zĥ* pFt(f`-f CDޜu3| QmMoj3ygZ7I&M,1+gX5 6ێjjءlN3QN=ᎏZ˽t8ɢD۩ӿkrwmyE\\T/:4Lo:J̛j. LqE=!=HK˥N[w1UżҀz^*٫A^&Bl?%~$L!M$iΡl2zk̮ͧЩ ">uSr Ti&$Zɣ X%&~IHtĠFI:.:aG%nE*Nt-w">s3+ゾHN W "[hL|F!km=f_OOJ{r&rt\>1`;laTES #7(Hw}̈qP]V`ZoROJy5I( 4"8EΈWOk2($~IXh_3 ;4/4:5TR{B㡞5jA܆:5`Z55dh>]]TâR'!_I~ΖD.oj+WT_'m8O%dD3ak,ds ͷVbU|98\B`,rD\V{&+{vEJ,LkR,~*|pWh1U~#CoCFElscRJ>Sro bc#Nw0UC`^w{+i0CV/ Ĉ?nC;U{jow"~D6BI:IN=3|B!zf|6^l~Pn BbUQwoxJZ=Q9[;l@(K1mkP>0 OtA$Ke.iMgǼKlѠf@ T咲@.#d Fv]&t5vF^`#mmQ lMPIk$99oU,hлPg:i{>gF>jq3j 6KHap)=ؘWDM#cQ/ϋ:>"|&P=Ɯ,#[B%HI+yb@|ϑjm$ji8 R ۅFS.2_ƇzO?]oj~dl ->g\12q>T%teH+鯆Bm&|ee~^_f &XDa%h/ZSRo~6t F%Ӷ# 16Jd_ CҤj3=HiZ8,4Nj0F M[ZeُZQ0N[T-SeCM<PLEt7Z^A⪳-I<DwNe9S֐ciGNlk:%(ҵ<0Fs*Uŝ穢01 Fc{ R\:4 ,N}hKJ}7ïgz}aSZyf p] Tf@ tt[;`JUY/٣&&zֺ>Q-41W|[qTf"V w`sx?w̛q֍[!@g^NF4躯7Ez7y7ECX1L>P} 8/R6RLB5KfM*%MX">Z\`uo*a_BU\ɦQu2s&Wl#?',id!˺$_Eaq֪eam=Mgvt]0BӱN`~a~ZܤJL?,aDS:1Ӈc@hTkw,S>1Q:MJqj kgt/z} om4 X;pfW^֫u;KTGVP勵 %̆yQ|;x ¥\%k3KYMZ"t aۓiZyJ!=,dZ7ݿ*PO@)n{ϲLVG?2Y֩ooY=m^UPI߇8)Q_6䖊&dxU}ǝYZ4aW@[cs`d C(Q58iUEym #+ϒy rf.C/ K0KT| p1#΅FuKxA%Sx+E aS@'3J Gl=}!l8oć2P)h @trؗAv9~ g 4*_F P5ricן:%ŰZzmW9L$k}ft}d^ S77h)j$%SFTAFk<4`'72Fh??-nVadPY%i,|΁ }bbd2QrfX Jc6p*ґڊrmI6-e{1^Cʿ~ԻIiڔ1ƶE{HU#6iz V7nANOB t݆a#Bt3/XW#t$*? o @Vx5`,`P~ilBf|Ns+P{Wաfa/4-u+Yٙj U %dZ"GO$]Cà7 R{);s~fi@nV!U"`+ïiąCזR#JM<\ )p/#$JU#YM`1X@є6PAMjF5d^;23(6S+̂9hidBGgYy[4[3a9/E`E mV5v^wXTE IdkBrF&o{b9B,-w D]6J!F*{Ң ~YӧfYe\gof@>8w$h;"_1.12vN *, Zc۫_!a35Vv9:a}٪_58!EmǖMieS,vt۴4ϣ-8M_0VՄU:ݡȚz+ XΧuڙ A`!T K1&Tة4u=w!yCOtdbdB?zK g<GQ?C9f [3ZW}CMWp\^lj饋]+F?X ñXCɉ_@%WmZ]G)`]P  D`Luh tۥN`G[u l Me"$$~V靵ZM gqCk }ؓ }8g=ғD3FGPhX=7bEGtpGqlj3wü̔8&LMwR;sP]ok iNE9;ZJ"oZ6frO6KG>5N &y'dY/˜77|IwE*#z|@ x^~ӽI,y7^BU ]}T.wUztx粊Wk+>H|Op׊U=kޅ&=Cؘp^`,%ª|aCM SYxΖF@"Ix=&_QW,K]Y"WƯ+t!_C Ӧ(׹@h7˘H!^~ WE%M tpY{T];&<2j4aŐQ#E[F:) AS_v g9uҮ'Mla0 Xn{ǰZELdcG|,; X{Go4.yqH 첦B#g;_ מf7+`+t#U{j0:{%y]tzRݝAM@R/f 8DIu/M0uTowI߹:ky7nV,>xOSTXDɋр L )&ȀG 0➁>/ ^j9KVoj\JE9MtT~i V%ERN+@5@ot$e ;U%L{hSdXdM]|!5eQL1aQ wwc 8~ᢋ)z"KS@-y'Ҽ#ye`eن^3.^@: S`K-G`onyp>#]D.CFY0lPDo:*4"Nzͧ$EN}%h&VlƃNBZux\T%jK~%+EawHńicz vָJHN7~e+,q^tUHZwy[/ktf^Pv`Urut^fCI@QjD(q: ;|B XJ6F` *zK){[|WxFZ{R^kmRƮFZk:{ zr9Qk[M!_1;'apo#KxB}(Dyܤ4IhIulbP*SA#]B 79{ڊz3-QJCn>EB6w44襓6]kֆ}KɁ,#!Ջo)POh%`1sQy)$1Ĕoi_WQpo ;p{p-Un"oΏ8 q'*|mM_po[HLGSMp2CbMW  i/k/ qܧ!wxFQ14QU ]0i*$*9lzgI]MD&O_ l«O7Oq^S#(Y)(E9Mx X-ϟ+SL;靰Nf%ed#XnQAtcj3&}(ٴOHiw2<ٷ; 3c Ioy?W%3M( Yxçnuh"W>lK<%q' 6!叩E bp?>>5cj* K}ΧRĝ9ZDXX8␯e)q67I>LG! #k9xy{.v>a2 |0g@D4 e X}hFs>[;;B8,I[Iـ׈i+l]uJ$\J;oN(R%ݡA<#>|P Dv0zF`EY褨P5/x[~15Y4w5b0y<$r^^oR@$c)w0<QDM+h;9mxcLHS2֔ps]~VՍh,eh63ou}gLY 09l[0iJiK qRTEl/-u'ИzxhΒu8L nM~q5d[wv@ d5{IHL|9E|:jUk(PTE(OW^UhC>Z}Zi9 :L:h6}`vbny^gIp 1 M &拍6@*cSL3?98Pmjk. c|jzVwv;F&PYZS7nfR.ySl ]&7MzQӏ3u\d#0 Ŧt{L>??X}\bgv |Fk*!BɶMoH|8sCۮYrXkw>OL* ])J+#?)A Z~7aHt%_xVSUÊaU=U?y}mHNHtmTj31ʦiZf x h(N!1&< \ %rE'c9?trf4^ J eTKgi--1xQp,:7݄Ɂk~f e)BˬnZg~"z& S:x5)wE?% /ˡdžscuǏ6k>Rp:@!E =c/u r3w*7s٠! l龐 wvkFg"JH͹L!woExdȋ(Ȧ=(My%˺̛DzG[H0:v̝+ f-6^a!H q5HM$ڏi{k1s5xr13(g`"աX.4I1m7.gf/Bto;g[WA e YmqՆ[EA][h{od[Ž/]^p}w2bЧV_O\~j\S/,l*3Pu#]F] X)Qؠ L‐)m$2gI :GPS+ڋo%)bhKw 6 o.*iRRJӧ}*Qەg{ shYw1 UywˤkJ(t3O }W18!w@BGWlR]|@Og\Oĝ؍|Ú#> wi6X w]`:E81G5;pWa66Pꅓ=pqc}ݷV%.:49spVγ;0)5c'UpA4p$K<ʨnA=~v4Pcb'z/9Xܴ_UHj]Qȉ9~v=T O7 U] uWdN{EļP P,z?n yQu~ ӌ-K-@٫VHH%q'B&9_.L$ye0Fs6"OჅ\uwZvC|SeT7l8(iD=Cszc˘jl~ sCp!ڕ FKf>x @gB+ը<ј@a;٨bfhJp!X]_j&JCw(@GDžeLȐ B{>J l`j/zxխ~X,)PQ'T&yj^$}䙅GӖ}87Ci>'aG%>|i-=m(h+`vK`Qʝ޼wcBW~ĩ#42!|j [aDB3uL!Yyr7h}]#a84oA}UnVV#'Pg-k 8Gfvp ^ٙ2ď|1}WƊwu^:d>7̭0[s1,_D+@$7gZW |@JsYd rY),Ʊ o ŜF.OjS/ w<4cdz3KL}(q+;UlId/m:_Z|w9߇3eb=M@b/HFIqhYLYg3, C2WA'rR  tʀx1[i2QIF$ t͋6~Py:{Ɣ7qۘx]/wut9M#wb.W 1(pvry20**ohC IpaBO/7@3oѴAtm+ n@Z,+uE(/^,e\%b}iy|bb4hvgM#?A5?[A,̎h /L][pR /~%|!%v{p^SzmCOȶ YLQ8qYDٲAh8=c87l4b:̥c`OãLf|U/6>84&mfh΂6(#c}ǿmM2^ `BZw:/<Yrv? CX3ڈ hq R * dF''@UqbӴ=yMM߷H*('i:BT(rnYaMm)ȁx/6߇ 5eq4A@EZm đ75aΝ[ + X7+;jaSH (T->]I\t_e)ͼ\Y*~yzQf?*9;ȥu*ѷ W-)=^u: _ݞST=|Cry؜RċpZΰǀrw=㢀'O3\Jxg/ UZx&Jn Z 9ўѸn#_|}{8*"0s:-.@5Ln+Mj9ՇTYUlˉrƩjvf]ğ d;)6  bb`&Z+*|etIW0ìY!AWc)k QL.u55-=Qɴ[ (R o-1@4 Hb=]*:ue2ez\U#H^4Z;KQڝ rpz XR>npf*~2y#]glH. ϋ+vgrߺSJ1ķ[54FPWtTm# k|?Z̕4}$x+n@ Y@U1 PE~o+tp]l)3SK};X'd%߅\zQQ82Sfx$H%':?-}ރHiYI|B{0o?( 3ĤTpPVϋdvY%Ksd 3)FtnY):O|52q@>-r6as}=[+|'\*}u`u%F5\slXN6D4zgb=˻pcTŞ tS@=/R2 æk#GJsP$4%ī778Su&4\$Z0l~l)BZnŬWQl]S9%oF>`qW$JB99ț%nn 1'ANui?g7}YUaΐ˶G( sQ3k=(on[f꺋 DD hVz&rs\ܯ)*LZuU̻ewey:5X܃f&R_!<=",ϟ:.\J(8aS'َwN#%rﴜ1u#!̴MF H' zCH~JP,ϧ"fȒ4 y9ߔ%Rw=0dw^l2X9^"8{s>[OC6`bN|+pWɬ5MBU 5Hotx|bW:R<-~hB2B L P@WX:"gLwYKϹIyLD(2d]spH띰EPw Rm8lm{W=g,>iQUQ)_j;rl2|3^O yHbUT?oQ^!1@z}u&uMՌOs*޿*Ѣu3j&f'$[IPz 囕<2'ZygpIQPwћqBвNuГL]ޱ#: kHBdK)v|jwE$=!/5-&!7uph($:C'zDn={XgHcz- Kv2"qC~ٷ=`3$+ɲjNL0E/tM)>"XW׃ó, T6QV9-û#AĔ}Z֝[2'bi1l#]"=/ w9f~M4޺.Hw\|/uL3z"s^P[46#c!qs'/ ~*i7Ұ/  Swt1"06.P) y@9{R m5i@a.Hμ8[-I{ rCrڿ0d$=}1) //hd,Gnܜ]X"\,fJ-ᩡVxn ɯOkͮ$~-jv1JfQ?= [}B|<_t<\] 6j^ $:s_{43Ne }@%t@ύx3=fd K;H;]lk E#GyK~ ґ>Z7,sp;FͰUV!gV3xH :E?Z :k‘M'_-d\=f",0{姟ԨjSGwZwYĉ &' H.fgEPokɓ&aFY- 0B훦 |bX_@&ͷ^"bؑP`&jPI`vg$/O[ v )eDqqcųԻՎџ1}/t~/tU-,bT'Xv,X3n\kna1 KG4EͷO(KwO??k:M"6\U'-bFeʀ_ D%3e E#xVC}G/##,dP~;z]Tq ؽqtjXHb x|`/'}6tH>s@o*|+K V:/`4.N@7h^knXi)*zξ*>/߃I2EnC:vs+6*B[,Z@>gI.Zn|9R Fpu@̻GwPrv~Wb;%mC=R>L!q3$ *T y bG4м*-;||8Jշl Si2䏀^N MA7Oof:4v瑼X4JС_cP3VǝσsD59 uaXxg[tC끬Å/8m1r()x_qO_ :4.w@즠Id~g[U,bWYZPΑ-+t[H5>̃Fx&:gC :~Ma#$R5EQ|0'=P}#p<:[QyJjų.B}o%x{f׾>L9G9]LBZ -PzR ^I Gt2nfaO|Z$ n˽Ae$Җ>6&({ʡջEK45Y|7K;3њ͍/(=9xan\O>}C! k^>q?E=JyOtwPx fpЫϡ&! #QJTxwFI fDYz\w6냞wI bN 8UbqcӤʴ{,ΌmA.Y.cI$pkܤmZ衱^+2jK!HiA:BG?r+?yfජG爔|04:n#`UUkB-p{\2g 06mBҤCtu=0 YџJG,h@c[8wHɈ橣v`Tӂm`b~l@]noq]eLQAؒoukb9$};WS.ذ ڭB|ٻD kOqol])!07ɿV[ ;Yr!a0Ό*{ "Ac;jN (Rx?vI@Bk+?m'o%&FGNd yh\SЗavT#byi=W dQ>}smR,2 02{1geUHw"裋H&[^~Pm9o[)Y pb>BG"6ʆe.P@ HܿT#4l Ӑ$Sb[=UQD 3U:!D,V 033 ۟[t?J&$Mʝ!0㤔1Nt\|ŵj6gv\&#ζFy36TN+H缜#fT+dn/cykFj>M1dHeYJ-@Gšh]6>͡X {"f"\d&)[NL8Ǽnnй\Ն\"9z l׾b%n8.(1#s}] c ?*=r!" ߡ'f!y). 4{AJQD+\*6&nxRuq.Q&7@{`a9틭m:bC:CE$QR,Ysk=5)C/_5Hw-$j+d+h8zɲ_xI5:pg Kl\UG]4ֈOy8uM$54aHtL>dckP.u㯢F5_ھLjI4)ZﲔjDiRoY99h:ѱ`¢+1h5^Hb+1g("B3q<F/)]J,34g8ߚ3~j/qa5dtcC2N?DQu_qe։,e.Lݴ5 v -ۦE-vYM6C"$Vuk&J6P Fvu--Y#@̖Kv%O{\ 82^t0+|sbeb:9-,LvO f˺pGE|BuHK2R?ڔV`D.axk"/ߖI)Q?c Hj]q Peiy= >7PktO^sn - 9,(22X?:҆[8M&o3"0R2ulخALCL= kҲ%G_FlL:ΗQVCTB­ xM BwP~k>z/ Y  |[ > vgm-*<ϵ Ū}NY0iʻ>] .TRshAZLyϤΞɬOqY]oÛ6N:A;=!).lTJ7١Ï-* a?E?e_RO[ 5uBlu\Cz9tiaeKꨪU<?֛'pyԀYd,m6j7I~Z+'˄V/ƝD[GcI8nOT8Dbۛ-Kcoe UN{^gp|N:+`M晻#a1B"Q2elyvY +&8ʹh#zs.pu#g),1uQT {N+e>V SUVW"}~1ˬjcEՑD)^Ȱ4ڼgc&TCކ~MLSQ-l|Ͳu'8vqڱ *E*Y6s3pOŧX2˅0 *څ Sd_N `,Pe_3-B!n3K 9lPfD1єHeLUkjX* n*l^곣\A!Q.IIgJba^`$ހ I$L}HӬ0<g{ޑwX;:1t:kҤPO_V3Oǣi-A?ǖ]sLdn$,9A]8FɄ#C`qi̯Y髽9`|{9B]læo)˂.pf  5P80Tga9+ǀuۺfP̲:P2JлigVBzLB8^`l=`n;iq frANDA3Il|)JCP+|(Њ+v/ť Y)Pi<^LwP2j}{=ϡf1=W3\qœѢMMo UE Y2.X`s'Vܻ'T]?}[P~4)G&==0`ʼaaBCd'Gm/TDr20~e"$/C|I-|3 RJt,twNq10tNayͳzKejZ2^~!)gZ=|$?,v? %ZM4/U"9/OmsⵤH;9u!xt~|t]ٶJ6KsէBF%)EnI*h\ E-5 yG:2=oY`1,aW캗wH(Q̶pY7 ( mΏQfSཟ>'IW<Pϫ?= Qg\ AeC -Jj@mNq @6AWѽ ηEk[?][j9ަ`GlFKtRG5}/Ҫ^nۛp`O?ͺS[/>%eTqIC.H;üZM\XC#K(T2Zt-/j]qiEK361^ l%n]nT3qQ蛉j< *N\ A$.BV:  G;$e E$<M{*yQ8YRN[ w6S\hQY=c.ng$cpHaҊHZݧLU-e:O3r9J>LRjI[`[)eC7XSf݋_A 7.=ҭJYw Onfuv᱔>KT6vDVLGHɳxh,'!sM%th5P4oNI88B &~̻` e)ɢ*Gd7 0mi=8ISPwCx&zZ28m U;7/M_3qh]g& ؋KNBُ{O)Һ31.PǦqD"a&]*FLB%%f~6ЏȪ_fjy#_"՚ Ml Ϭ%!6˧nQz4U6߇%iAGTL/CF:Q$%JtKpG 3^oాjo{Z"TqIY'5 6 16\ JcMw]]<Go,ȒCqa#R= jTiM H61o+4>^?+ ޖaKG6E{\Rz{ !mDR$,!.M( n)`3ҙEa)nc>^7yhnТ <{+1vի{&Kmhgf:^hTtt XY_㽁>#X)䤯pՈO_>WMxL/sh(a se/jco<'B11y(P+J8 z4eyNdχ X_= )ܓ"/k_4M4Pn7;)PykkT%۴rdž6iYvd| whBY` Z6=sx;ܪqQqNN 1wdFZU F䗔;mE#,*f`x:OB6Uw= q,XL|q vI__|.J؊Ĩ_ D_8ERRURw&w2uƏ2sacR@>}^R3?_ 9ToIL`WM;N^uiJ^ -EX9DRsnv,P̫RaU'F\{utž]JsHЊv)"PӾxbdtȺ@B)BFJNӲ苌Ӛ}J_Wx"Y tg,{,~N' 3?b}%nFXd=d</P/rߤ gZeD$*6jȑs,`KBnHd!tidIfHB# \~W& KNg <hVQL-ںZyYI]4ca.)k~:<3K+#n#b-JӤ5"H;6Eʄ\Az +}_܆&PvF"$nqBګ#Fx%myFO|ů 9ٝǮ{-wHR0M(Bĸm_Vy!.3Wicl ߽_cRZAlF&G1%+VHgjE3L \r Vu>f:,t7X;#lb "6()F|imJU&n T$BN `EHS^[vBqbMp{`) taMO6o|P}3-}X"ُW#M@::]Z`?1:ӼTS .VT2 1q ^`-L 2׎{,X]q_i.a7m)sk .W0|gN8gDn_䭇j f,)ǧm,MW>:R0'TV;V XM%!! &'ͼh ,Aj*2s;M Xi)|YJ;`>8$`F$QZYi5Y.";D!E Ũ IIQvg:^}� YɃCƞ誩Q%"|W#A5|FP]yݕQpϏ H0♅0w˩*pKA@indMk?ٸe጗MPF_/Gi`Afy00CobR*$S;s-e g-%B_hq`._LRc,*^@` tj alvA6# G Ebn]՜ vAd(aÜ=n+r|$!җMaڰ4 ,<(g9 3=pWαC*Kr8%=^.^G`>"QNEKvJD YJ yYb]fd֊h) ou->V''>1]iF_spfsCApܤG-!)sA۠JjP|%gk ʒD8 -"MИv>(e[wC؍jc#i'Ĕk*fٸ~dwo]/:3jP4?;'.ri?7qaPr7iirDi-$uzVsk8LB_mNee?9s몋9KL1@~4)ܡP+0+߽+EpkP@7%!J 2ww'"|_R8x2Z2*~rӀ~\x60{n3(ؠ.=yvuXoKSK DLs)am)Jeڢ1 at%"FZ?n}ofcMU[B>b`$h Zj;= 7gM;Gx|a;2T9LlktKvX3]f:_G^}nvjURw ;;.WHwn 9I(M|`p^G "NzS1es^z =PZ஬į9A[bhK9lr81l|^w$U-ǂ7#3^ol70`"Fd^WsLҐڵwKSFO3 jϟfNFb4O ;F-Rv/:kOTڂ)":%3my ѯqۖXpNzh~i|Wq7枇 r)ۋW ՆeqɈ-4nFTeY)=0 Ys]{:xvl/Ep_f};𲐱Y <)+Eyn|=ZM& lx{sY0Zy&y;tӱ,o=wd fXcxUOHvb3(D-=?zX1sCbh:oxx7_K1߮}R\FHTaTC_AٶVB?!:!2=B%Gƽr1T ĒH `Q&wuf@҇\j Z|O|6mql;|M=`̏ eJ0 @=*wS%ԊY.[D;<&+o=V*-: GꙕK4Bbr.d&7PJϙH'?3 "I'UhFM./ѝbtJaJh?kSba96qf 7yCLB? $϶7}L/:$ U9!}ǡ*ρJs p=S~0[a §HSpMd UcbrqÚbt( *Їg1bo=ѕԥZPh8(1,uS/0):YƦtVk҉O2 ?zVI!&넊h2|sk( )[-:PRY,9f|jok[5Dqv<}f7Ԉh1`)ɐ&B{-ZzDcDBK1,+ q(c/mĔ&R!PkevU\麰qP@;-'%:PY=+A^Hf?L1Jk+. ʹqކ?"3i(lg3XConT>i^Ë?roFT] X˄ tvK09ljNB8$>EE4u;DBPA ꉦk*N)X lK}$ "V6_.%p GpqWHzz s`Oώb-l>Qg%I![EMPjaZHOKL3l`m*Qe!5\ׁF`e6bKVm긋wwhzV) (? c#~r(Lu<#lO*}^8sbrYiq:t>1AXN,݊sBU)tBYtۂT>uT!fQ•s-ƪ[ g^p } PSh{K$RU\奔G-p#_x<]!Qjxb /]}hi"]d Il' -@+uFKWD@3ȼRBgjOL9> ǁ"0Q{?Z#C':&Yk Tq=z,#!0k}sI7jBDli: EFivs{0CAU|`"oJ6 ߢ/Ɗ\2@;.a8QĘ׋ޅ8@4E$*%AjAЅq L:w`fꄼ}M`N Fs qE}\qKSYF͚_s|:q@yQ|Ο_id9 [z|>p ńnl}])%GJFR"%wa &1 (R 8ڕNSU|]˼x,g\, \;|JVVMLXV4jTYl9F K轄b۴ĢԵX'TpoTғ\Eȥ۷ -IC;V.@wr([u@>(șKf c0+9] )Xil/&)8( (d6Ň.#kֿÖ{X@a tc{f׍q DF:n*8AvW GV0×7uٕܯH y yC_e4g.D HlA*ݝSRv[Gr$M }E1+V3SJ_.>B^#Wx!/(l.0{͡?u;TﰛQ2u <M_r!^n~S&VU]^?c:Xc|:'hhh|lcE~+_ΞGzTߛ?h%z緔I:?:WtNV.G߶q\CH2%,d[ok8-dLAW3 ۰~6EiK5囬M뾙;~ XPVA-k9v谫В̐\"ΰe:=  WYŬd'}wܸb_Dy%Jpk zb@x!#!ooLMRֽeQ5eeO"rO͠Tq n.mA )tJE@XeH# "hN(ڟlCs&ɝAi]{p)xm!?G!DzA_:EP֨a2tK :^צmxJv3; ]3۠lPJ x3yA6=˼V{w.ȝ#VG㞿A߭|/{7@v`̫kay1S(qb߄onF!1Zʑbmv(=;W%9u"Xcҧ F1ᝂ8kcr1Ȼ V_ͺMM\q/n^d I 6H-[ 8pG3/֔qMfEP<;յE\3+/&KxoRW&Xp=Pcz^ g+6 gD!Yw\q~ l>h83U79kLRD%a;هor ^[ClBKJ & 8GzcR_ /`:\CRQB&ulxJaP{fܫ;Ri6+3oJ@b:8XHEy/Q I:9~@mkĎ;㶻 ͹0.c|%xh}(*N3+ /Ecq+><|tl@(9iIm&@s8d:TmBÚ;heLe1e0`cQChkk5Xi%(z 8u]Jq!4{Yh/ed5(.lէqZ$F H6m||vxHY:C6iiܬ)y}}d7m;s}%lƴ;꿌~p֓!eʁ 2m0ܢOfcpRy 8.4#dO>aj ,5Qr myj~FR'1Wp4[x0K RG` T|o}I!b(|`ԍ|vK`lA5 @-R8ZD-oFCC(p9Õ=խXqAѤf~z߬oͧuؑ\bQKI<3W.w;b3!ݬz! n]>h/nR<7u4Y b< 2dEayi/˫&/Kgߍ,WId`#}]MXf~oLtP8h`ZYX y:W%(ChJ֚Ԧ{/77Lֽ"o#pu҉ V Ծ34R})JǏm0C>[8M]+R ElDbt.[;nQ``GUgYpHԋeٔ *,gd?ߺbkvR_!ٯ<҅]c@8ٚGT픳hle@*T:>0_!qK/>#xFf CV H}V.r6Ñk*JQ)[i&<L.RJ01ef'd {2: _N~GBpzY];[éc{fUVg `}(?|ӅyҼ0^,@re𭉼]g[}Jr{KApk*;ސ%GIqcFBgZizj]ȵf 8D1#b#2J}44lLh^ SxZQ,R͉/`"讚y6g*I== w_ _.&'Sg8C)%QIx\{^cKK(MD2LQcZY5*3^znJHcm/|VHڋIe}|@Yk2 '/dUD~rE9r,J(8Z_!LJfנOH|z+B[1|~ZZD^2F"TrE^xlMLRFͅC xS^g^Q"QR>s<P>'oݵ6=Oj"<;I\!` fT2._ivw!e&mwRkֹI|aCFsP [y!}ЎB&}Yt 2g䀧6_fZE8S)Q3@WrHޤބ\ <>7dJgkXt8І|߯ B q- 3c4G+)GLݛ7jj xoou6O[v&RX$ *0dO17. tDpfteB:34DcC Fsn=U9m7,೻Ook&e/`b8KFű"p8$\dD(HGIS h-,0Lo- G$^YIykM(/GrG?`9  8[q&Hb _{Al\X/tE7^L,op[h7}geVߊvɜ٭_Vr·ϰGJ/{@eՠopca^2Ozا2yDgN}znFn!flO+:>&5,߅O,U;P m-{}PL4X}64H]w'$D:yw7P`Ȱ@K\~1%For-Y\Lf]3,u*!NѢ )(譓xŅ!F @->&iђ,JW1 7N&pZ?װAm3Á 2 ^Ahg1j~,O*;[ N$&W浵>mX$M91gC'Uꂗ8U4#DÂ9e\O"5%%.@#rj]@-q$j7`a(ۢ9RA(8hw^{4MƴFǗ7~&ִDŽ+MV]_ׄB@, 3ԋ M`+d ee.dAMϓ8FD15C֯6ݷoh$ 5vnP k%ժWF/ 6xkqg` |NO z (zU5EN5TKS:voXtW(+A*>Jrٱ\^jY50"D0"r]3۴:0ϖ]1}ŋ]P9:0r޲ eG Й1;&j.(o,*KzCGT vJ;3҄~Fx?afq$ J. N%+q~_ e/!H(甅Gx/dC? eKs(_|P?,R<z^"6¼S DJy9aCҲ7!7+}ġ|フv&]%JG;zhZ13R]hrL㑶M 䆦Jb&"*Ja7jNpl-Epw<uM)E}eW.b,U mO_S&k *O ޷>?B;k[Yyq$v+:Eƴ}z3N'Qw#\ Zѵ jq+{d$J'$1I/TOa6'?c<؄B_HP*pn5Z3Ïkmk5,ɯ#a`wɮguW[ IW'˄-Z88[R cś &7l*-/+T|C˾'D_Uɍa` }O(Nsp$珜zL dnח(<),עR úKȭ׭[J T2.@ ͶJ6yNG[\*w HdP5Ғo;9߬p<`1n(HO"y>~U( ۗQ{.una,*r^( Lly|2OPToJo`ٕqV0Oևٶ:s;KABjaE8V\ =#x2cDTcUR[9E|.NfPs#H2" ZຖKd%"\/"FT)^UL%{kETFڎUa|ψ@NBHcѴWsfl_pǚW^wq\Nne5xE T6㺋%DviwΞ=ЊGN>wnXica-zvwV-+8qZ* ,.fGOc v܅>4ŵ0fSnmX 9ȊO7BdW)6ߝyѪb40m= !޵V$*F f`PdjҰٛ99m&,iQGW\XƇv;h$: 9ߠ~'.6UZ)tIC^d1`̈́7=uYBofn'r^i~IUv_k "42yO*6D QޅsAOW._>o`~G,cIF6<ؔTW:pBz_*]*¥.<Ω@ػi\Xh _C({!$>D67oÃė{"^, k͹SJ~6Bz9ų_5ì:<7-^YV#>WYA/A('DzMC\dᅪgI[}ٱtefizSbVq-~A>WՎ}/۟"vٮI~̳^6vA*h1[$fݧhD5Ia( 7jKDf  wc,B;O:i;{hwb֋aF>@Zei2=(,Ti@ڮ3ۉO.5zB*|[嵣V]lj/_ip8KA=z ȣQhf}E ]#%V=M9 P,dHhVє" %^nv8&r0hk51TxH J*[Ŗ@e)ISrB,P/u-S$"0$u>vƮunnJH#j2bM+k+F%7w2I BkW4gbkOIS2ǔ!G+0FV#(|,hpnD_t*E3>-]%z\Gɀ4yC<[4 H˙eMFs3?!(aK4Iܤ=f6st?D73ET/}F%b&'J(xn2#{ߧ7ꓗflhɠZo<%Пfc&&<1Lj.Ebh#Wkn2#mGVMp (㝖@]ĨqV~80h+'-AjtIYdrAD?DaqC ˯ad)-O2BWJ*S{GClCc{%b4cś D 9xVG)q-E&$ԅWlq@L|G+Eu+S!()e0]eQV1On0Km 7xZD٤Wi& d߰;24nɞק+x1JS&YÝ? Ʋmo!o\ktpz1M,J>jam:ldx#SwE/(eU4#veO箧imuh_a6ܰٶg{YƵ>Ĥc@0%i-ijIWC#?[Ƕ$+ƎO^P-*"Q^T LqNyl"]wHAD0ed7Sc.zxڢ9 V0Ƃi HP>U,khE!jRGYKTV+FE4;jλFI=ypc@-pUM6w,!Rﳥ/2z׆1^xOY4mӊOVTL&Mnf[g(T%&S:ECQkpT%`2W Rm|"ﱃd텬,>TH5:ŌB녣<lC^/xg{nd=)+~0sB{LK=Cde(nJD̶wӑpK.CKsBI[,-p(Eq5K1qKؤpӿ\0I|{Pف"U6hRSA/rbN :"\jL# ෿5$EU$ YMfA'¦,T8 'DQr`ҞST.hJqB{nM`B҆4hϗ `6']Ԋa&I;= 'I)ѦRA|u'euTqP;.1p5賂OϞ=hi*t ʮp)AW!X,9;jͶ )x9{D2P Aa*0.v ȷ/U^'}K.LiӒZs:5)>@6ǜβ2%P rkO8!k4<[ƽJDf(@qC{ء ]DToSv˄h/z/&$$[UeA)y:-%]h7^#[֊+fr!r@5ĕ ]cߠտN:G0L !Q+糹xƩ&hJCy&˓U!rU~mZ[AXV4GJm"p+MT#.E+l&Dg T)JwG x.Y,C CNI'ѯJi 1Os'C@Q33KG񽭠Wt~UmsK~ey2s-? M^ j+Ҟk'/0n= [byb Nrp_9oRIG BF .QﮎCgZI'߆eIUVLBQ]'HѦ|߇VV7/Ϫïi2~XMzިf Eːui~ Pf%..`w csm#?ZIl0 VtÝy; phw4n^8J$jhwE|b:i ݇揬};-$ig:ZӉwv K;2*71%.d|vQT\nʵA8|֊C˽ )5de`E T@Hh|L$sձ8I@lW:%\`Al/q>42=xGc|D=fWx˽.@/I֬ SQV@~ܰ)-VЫlP ꝮQ޷UmV{պ\x MR~Cd/7^f~} ZN:"o=ӏ.H?/4KLD 3$X"=n(9 ,qWECncjuvYs?n@k*x%|g:8\=$B_^g6mC˘U +ԟa@4G͸fV2jC5 ֓R|]ZindsuvB \-L 9)14A'H_>r)МJuTLҬ I aPQ.ސH7H $߳SGGq(iSv-C^:] F8}{IX[IX5&F%BpՉAd8a,;bU؍¬ͤ^G~ p ʂ/S$LhjXF9X!ZdO[ze.cB[OVXWe.,?R4}|XmǙ,oF_noހr(,J@YR~p^8-fiȽ&Blçj\N4I4׬5P6ꕕs(k*؄N<H'm~) }-DZVRK@P 'U.W7YWk FZ#>Ie{aE!Myf۔:G}!bkr\ǍٰxEproDs/Y> ǩz Hy٢n,%Fz[7~bZw:e6le?҆XgAǍLKcYjcboggzI#nY$zͲB!)܉ؓȣO69Ŗ_DSJۘV1!>6qV-_Y>0hw_φሾtQr,7sT?{O#ɥֶϕ\Ev$Z;&ǼYblZj BH"2>a*_B7J`"03`mK+oڮ$^!1\5%7s@86fȠN{t䭧LTB )`@voK:\0SCk"=Jce XCfc|gcDsS*7pŐ?mK&cq<!wq],/3nNeޘB[]%EGg|Vc=*^DEj@jЀdydSoBNM\}uҾ m@ušÛ:P11S1jS1@[w(@[: ҈ET(F?q&\]֘cA ֌M?Ӹ%CB~j?uYjQ21A#]0ϞԿ-<,Q3Ԙf8 :V Ov%N~C]gXH4FgJ:i`%&u3.SJ\KÞbpp^mޯq?eu7jVoN=B;,5|&vD&`KE̞k<~"#b7Ϻ ڿYfV7Q0EK ;p=K,x{/r]?Kx Y*Ne{q 1P]z0ܣgJ- |^I-ziJaHRx)}SQ"Hׂ].)}wmq|4Ф,m0ේVZoPV=46"׋=1 VbW?»(vpb3EyB0;P!-ǭ_8zLFEo'=i7BxTF DJXiw#IRqf@@v+"}Ƃ C`E!Y#tA3풩\GmvրLXnѸ_t\JɴHqtᛮ fe(giG2ͅe+SGKP8DӂδKҤnZb6sɺ&>>'79#T@4S\=çnJ:!񥲏((`&ݨd ֌8)IrLGNK07"b}pC3d! Mx 0sUAnW#0PƂ&? 9lr9ŧ. .S񝚌ǓEKF[T_zt.-6y!*p #'gKm*^ $Sp#7!%A/_:aK{MSYk6".I燋J0aLJ򦠖N#rDPzLuhB4|Y H{RPa9۞HskN,&(>KoSp#2KUTO¸|JaUkڪ\4ƶerxe z)8+qKf:2]D.1scҿ*ӯ()!Y!5>/D{ $+h 9mByC-#?rՎnkݹ`Ul;o3#[Nki`s$6y3 Gջp`j0#ץ= *{>Fl`0?1$2qm_fyw UGP_\[]SnkVrwʴ-}Pbɐ)E_,@|ta]p01)>Rۃdg eD.jCOIA!Wx={<;.C1:_`-92{ b)ƚѺ"?A>JzFFTrw;/=:wD6yҏO.(0 B(fJS7B~x+jYLrd|*@w^F6"Hlk̨G_S_>OjO$՜Vؤ5Kvcl&fi2 gk^~;`H٤tzР-)ZeTO~20zxP{>"dyReTC_(Ԥ\i'GYYtyCxP͏W&^[ݩA5kBgt\&X%ZEfX6 @$th<ߋK7?W Nc7~os$U$iMv*35B%{l؂%4j S=TZǝef7l t P|*e23h.;)@0$ɛ-lRE}eDd.װ`tDe@} }5^+g6|/!q`%T!zGNE^^bƭ{45|El N{}Vvup)Dͦ-{L4ږ (Z#wc_Y`qeEf&'pzȡf4-Λ.L B3z6t@N6!WxnFL'5,ZvmWN9]]$O`uS:kBc]PY4ЯyC8N! F.SdC0'*N)q>2yMb.>kuo/+ :.֋>_?S`9u\n#d> 4@C/ӛ=ɸ cg NfY*a'#1`A=rY'| h_`z9h8lSaxIv_2k&+Us}Dcg<؊ &m=uX9F=PlMO>|dNq,j}ӊ&"99mk9)!,CEVtes$~5dJm^JJ{`& 8#N}u^ːLj.U:&3j8-w<5ԵX;vBe\e_Woq)u\Y*#b1ß!Yo=&@;5IvQQ#;؜D4gnCcٲ-8^/9v-DDKێ0Õ e'@ե#sRg:򉴸O!gRa%S֏#oXQ'g%[BHXIH~ ŘP'Ϣb`&[Y"IpyHVڙ|8M7R Qv`=u¤Zu)vd+~L,-o`’*o}+И  ư{B!-AȰJ[,ҫa.ؠnߤX+ Ha{be(drY CՍKLcֽ7OC@8M]z|U}~y֢w%[8DDudɅЬh}'M G-ٝX^gڤP.B-Zp:;gPF_LT@C &v#94 >7Zqn1{;Ўvgʘ$ ;=OK][!R)ϛ{ovޡA1 V>2xp~ j] Oy0rz{+%ag%?c-+}W9U35*d$EhpCĴv#;mCɫv,b|ETet0I^XVP#[ c Qvs5RGSěu !]bIހey3ׇϛJ +FЁG"Uߴb7\4zn9'Fl2L͍1A,fuuzC5V)P7oKߙ˜~5;rkOYG@0u= <(<\)`ׂz5i*d(!S⤾S3ә~D'hEOSlmn hnHĢT?NLM`1'hSwpu'm m7I**II{0稌CWڬ$A7cb0|Iga-KrǏN IS_$"A7d _d"舯~Z\A.꜋ U; 귓L ܥtPc$Whmmkp(j`+PTW"u_Ul`*rE3]G~XΡcTʟz*Őh?nKgjأ{̎GS6Ij5hD Ӵv.۾4ddK?35йBD'/Jc0Q}HtFMM ~y)VWĸm w%fH'8%CiO9?U_p(d3MY)ī鮂 x!':tBz/tjZ]`d劈 $eB6=6qÂuln6<[إG"=*r&:]'e76TF1:SfbLR)KdZx8$F̟FnMGnjPٱSڧ;j#geKiR&҄w&8;%2S$wşONRTk}!!_uf1pvƩAA .=fG8O#$L*;`z@1!iP!b-=7#>ΌQ󣦲࠙ aSٵtvd!s nV2icM_-i%ΑbmQyBFDY>m#:]nXokbKD 9%mMϬ0 @W8|!Άs:3d@4gK4<~@^Xin/чSˈ/mNeg>_H/UGJ/{)m0feC@iCSaɧ)۱\^o>3Ew%1\Ӄ-gbL|8&~%T=P;j+snLC{a6u3≫R3Elop ́) IJvc*93?yNe.- G 2ɨfk'|懟-λ*sAx6ϴTn c] "qՓKxX+;ocTYf*ɷ9q-nd"by$@]x/c:œ 3Q%RGã&R2Pb$+ 0wyJk2_)XQƯMMxv\qi,ؽ;#, EkPBO͓ *e`N=Ǯ^.@3[pxM^>Uas;Ns1 ȸO'&IS}]_ C' 1~)E.z gHk/)%HW1A&]Jb8D'0|e+ͥ*8Kkd 9`6sSrDEҝAƧ]!͢h{uϠuŏl.s(y( z.I_8_etbtlIK8 td;~Z1ψ*֬Xy>fk#NGVk?TaSکZ1gPh湊3KGmt x{9Vh 2uR(|mMqYE8!^0d_N1ҥIs n3?1zdl] AdtJHBT/@Y?iIS@S*Zj0dՠE|3Z[ʿ-%9[OQܮH0>wޏC?~g!py1Ȩfy?#tgV=^8 X @M .mΦ{nWQ>QkD0"n-hn/-mDhFfYfJlXW`W:A<;:M#Sf-бFv< U!W@Gc*k k{X[ ;?{F6QYOCifhm Y#\oljPdkb;b9+ G;Tf(&yrޚQ(hx&f/;x!KtT@T λ ,d |-a+~Hj14lQ &Np:P,j=qjVr%'\0rxr9 8)i )_P=~4~Hj# .SPI>֎fga*4yɹv^mٮ'P=c(oa5ѕw9UjFNi0`7=Kw*}ʣ ^N]b - Wnlا8#콈B}yn7\n0$$a.Q&u"E1O7 b| l0J>R.ީ_jɿa5!h5z̞pK` I Iwg }ʇpJ5*C'$oHMc8k{q%`m M h錟5A||t~`u`a< S9hN͜J矀 4,#'>.NKx>>3_k4 _WE@evt#=Lu-Ļ5URm]1u] hym(oSXnּQ8d SᱻqŃIxj!)93qnsQ" h=Kwi^,Qm,츩/L,nQ=;1B؃6 o busKO$Tύ_?(Gk!rK74"=CNII)ΔM.iWWU{ۈ&pq`8cz4D("&M#X.#˝* /u c Y~4o쨪-Jze(^YXՀOV9/í6u/L|\HF"[KjA`<~\ 2 ?z=䭧ɇMh*xcԒ>lec_#jI#"rs5bqCֻmB&|G]o@ 8V݅ F Vxϕ`Xaޫ\ M#Ek97EDdžMDg(M~blv^7>ehȻl%֖!eDy3M.å%G#6_?@Jg(յ:N! 6"Al c}M`!ƭʎ[G=ܧ]g_\yW_J?!Vx MZqvp%o{Dqv ݵ-5,z,Mӏt #=YG[ 3JoJhX0}RaiqaEGdÇZe9ݗ`Po(o⏽x5h1(1"+ ]$w<5De92L>R\c[6'Fw4+bfğO hn:!" Hǁ~j D9KrOVO%g fIo5R z/ TcVGQID4Ag9ix:klLޓeq Pk-!Y#I/(^@ 1+gck=j Hۣύ+Eۭ3dZ=uoƤ:J 6F+6ZU+E SΖrUDoVu -J:īU~,݊WGeF$P1ֶ2x+Lw7\B,!R,"ԑ1.R+x;aZ$2 H,?1U]+tBw Hu 췾_ÛYW-n6(*¥E2="q`V뜉-}n{b`Ij5-?_6e 7W=hWNNkahjdl{jf$6FD5&MRI{1@v~]H~}p%m\g,olS-wgO+HKa-.`+]ro4wٲ@e6]^ QZZĪW} hʘkOിob1::eoz('-W&3Im/}PrF$~*ִUD׬[<&{N_RhVJT fy6?]Rmyy曳Al50۶!,dp>B%m $ȣq-! wu7 "RQ){4w`_rԸ".D~eGq͘&ޗ^Bz/Yg#J*2cሐiRNp)dhNE-PY5ص@^٧-"5 CO#FSFRh$,0 A}@)~33LAS1u'gDMQ^E{5# p"#_W!+j3 !ne}JjEcթf[@E`\YIt' <.=L)9O/=۫i7J>BI S "RDB:td#@5` _ ?DǭFG,îTUx<'yb)v!/QG^07ޔ=B^_Ǩ|-vBa뛶XUVM/!mn!n7&l絵bߠO%v "QA:[_t11Vo WD 0֍MxCDxa^V n2eh %=tGWi$w(QJFV/ᦍV 5JiRI_-|*g! rVeB#r: sVb~WnB5&RUwz_@^TYnk)\\XeҳZeO|[`K< A,[mn\ ʌ|ϑ%*^uqUlfnHt4=Oz$5 ߰jkG.ߏq\cey+oDu6歼^{aiQ>.zF[[`8V/2)LTE% 'u'RꅗZ B?$ĵC*@GڽG1+'Iwha=W2~HU|4c0狗d=(> n[@kRd1%ȡ-~(zGdE-; Ӳםe-x&M W}!kIisP0b#'-',T'mc#Y,"!{a4uq#1n2).Ŵ1 YsXK A.3mdI녭tksX~vb٫L4{*s2t.)/B֭%ǓSk05i#^=(brluSuyTŠ4B)էB?!Y2ys}qaE"GFUc qޕ1fQ֙V;|PGgxGam$B$>Ŧ^fq`ŋvxhvC =)}##XŗjU^XAbɭ"0ջH!׍O'A릃ƆF[jF kޜ9{N_j'؅­mOBto)ؽ@JWP/{cv8# 3Dx f}ծA#<1Pn}A +)]`I77z{PdjS/zʘ0rqIS?Q~C/9b4B/sj]hчH{zfa1vʡEDs@ޔ%A#YG l^r1-3?o=8fx3kM0SՔ=ms*7|;!3V-h+bn`D?@{w߶`} 1|E|f2'Ίui2P_>ξCǟMn@.ߘTB ýAH(K@[,%%oٸމJ͟;-,,f~"2~[iLMߝ knC#eyTO@XC=a#"]q${Iי햮q| 2R]oIS x!|;q(n8ƞpOǭ5-EpAl5\]`/p6)ШKWBФ?Mi1Ҩ|74RфVݙGZMJA +~]`k/@73wGeP 2u@O LA*GLlInNa{,{{-9$:ꧭMj>7Yf[LDӦ/3JIk1H =j":qV$Uh؉̓̈́Qј3A>b&x;QW뎞=2DA w>4]/95dOcns0R+-JQҲsX߿I*GA<0Jc}5y#%K j;]U cV3ܛnm6T ?Ȓqߌo`'#7ϧW٦dJ#oĠ3""n&sJƳ~+Ml<8ہ3T?\r+ p12#CHfMrw\ĸ eA_4LMn^:&cCeM׏:qP@żei#QboL/%ED c}i(T[L].}c-)l>C}_+۽>`1* HP,,=h"\/֯fR)O>Jв 1O %*E˳Lp}-ݾ֯&P;6aj}ptphdMyZwi fp %qCWbSHz^Oq:ATVY*P~,ٯC&֧`;~eX%!\Dq2CIGŝ%um3ǼrML{х:,|Q+ &=^J f0vbvI[_MB*֬787ǐ$HԞ~*u_\ %| 6bH~#x +cUtUpxQ˿{S5 rV.i[FJf 9,c!o J4$3%K5״Dh4Y^au=誈E'[\E 2>rMȐWE&S$^A9W^ED> QA P|45P,J$Ԭ0cbǔ) 3ܭHhuF+!J_ceX$!y.`C(4qxaů(. g &kܟjfEO%ŋL6?T yc,L>eO$.C]C6Hil8-!s[rV$0{LUK1NG #ZxvľWiH3'N,Ow>|Jf`9n;J8<^E=IfZ*H0=Dlw&#z[/f4" rb$&`H:2gڳlDylCAK`eʞS腨EZ$+<3=˿_:*(dF$E$\u'x2t$[SOV6u1F}aa=ŔvI&z/W[:E`21Rݻvu!xPxY0cC,H{ ۨ^ 97NKOqv;?) 8І,[p0JgWj/+3$C , Dl.P3[ ;Ӯ=h[@QJGsV{YǍa:)8qՉ͖Cj/քQS; is1TWx`.|%ډKqn,.O.d,DœEYe6[4X);i~Zq=N|`"E-4Ӧ/U:Q\t :,pzRcho}˜cYp{INƈZiC^ _ːAW+5~~<|+ Ζm/d\CPp5 O4W~{: Nm^9ZpB+ZF+uBGЏ1yC( o=|$8OF "BFCyFJD$mZ?#o)1 u\Mt?]~A:ޤ hZG4tTO>U91O_?O[tB֚{oL|9{Q]Pba;5| w KiȻTl8(#c'>a!R5_d5r,_ iLj|\Qy -($C-Rcg۔Re2gi} frq!>}Cngtbx^ɩ\Ŋ, ZXeI^Q`샍d ~ŷ(r0G?tUy)o^;uPפv(Z{TxRնi!<"6g;0`˃51!yQ?fI9myF=jvtj}Z3Y_Q @#A&2Kݳqs/[`Z3CRׄiU1c 8lKd (貲 m UD*2tk]!hkouy;c=ӷ+!IQS3FyǓw`d˞:RY:A^.t}bbI~.~eǠ&03N<\ikPpz{ϕ4yfCe?9%8smˁ ODډEǎ?㏴SueE4C&M QUEs!𸽯̴&}Q4B6oXc:{*)kVV6o| ²C@62&ǫTLsUbdEJ)_!50<{{@Ah~S6΂5f|LS»#>lxeOpQh3 (XE |VBtMc[o_ֻG_'LAEviY̍=}?Ȯ Y4i_äDXg"\Uy(jz+eл!k; nh~>*>:hRŜ2#@6;G/Dkѧ{Oݯ1ZA_JV/pv"XonDO|S l]ZJxUjfrvws*=7w p|Lۆ*B{s]ҿIeͫV <-![ <F/nVq մc"aܨWx:F#CsX;rZLU^a[+wFi`N1<8X<%:t^ s%Ycpp Z֠N|/h+byVr!i>m>1 % |k" X[mjH"aÌrWF*!g0Z}8}}}@`WT#'V5lndr-]g;MBv̖#ۯE=qhҘ9݉#Ϗ3m$u #4k|lGLy=-<&cjStHd1rũ5c_Mpbx[1N=lܠg/]tY ۆO'#i4HU#XyJ 1 q"rLqUKo#SяR6`4dqq'-+j70q(# <~A-AFOeEA`8H) U:3`pyqpZ+mpe‰2t=K]bľa(۞ y%K-B $ a 9kG ?;Zq逗fƔ7c$A@pn?5]N'9X["z7Ӟܗ(LM-w$i $ %>]U+`@?ˢ_ﯨ ?B"jX\FdlBy"Q{ݥ1;t$T@{6u~\WME lksK|=f2cW֡0KsR.bo K.VHTUC&{]j^c,fvW-w2&&lIL !DgŵmsHGP'}0v]s}J5"c 0; b-;q3HXZV>#en+F"p5Bzj'MȆDyP+?rƫgVEX>I"сco4?Dp-yQ_f`˒^+/deh0aIb&O^G7KE eq8{jg#Yk ù;5y=w3gTd]'~?Jd. 3%c^{!g`SMxF9lmH7ɪ)\6$ bQt=p~ EAMl!TZQ7Жa眨aK 6 -NfBR |gd }a?2v4X5b+{F[w;.T)[ĺW䗨ͭUU\0G@I>G:*'Iujŕ5,S`eB9IZՌE 7[}BP bP2Ȱ]Ff`; =0fhƍa6T|Di{lRm>~0ROBBB‡[nMy#DdcoѸ3X=+`ļ|7(_vͤƾyV^J4Ҽ<:b[X%X*4j4w¥3ecl=>8ԌkH?~T˼qyTU'?LK!0q 47XicVnvk (qM+Qrr?037_ וR%|ks9t 8 %L|]cC7@Qmkv6ƶa&$#:{]yBU,)$H\T9fa:"|,:%4ڱ9c{W_Y(N2uKVpA2P38Y7}\:# e`tװ9;%*5wKGzcR{!ה򗈖tjHA!u@/5hiL|{ 3+Jѹgڂsmi>hyR V3\y aa;?{ߊb0اTX?ɄucjNEVuQR+yObH@pXj22 miFwSC ~lxvD5BӪ}Q6#$sֻO.B (~,eAس˟͔)H rGQIO 6HQ RG^a44ҥ2kniS Mkx4IԐ\" >L22Ib;zpA5W)('NP9}Gt#ir34T6YXyۅ)KPk)Yh⾪Q>>w9[*am.w7խb%?|[>UE V3suգKPEhS1sܪc`q4D%)FD-.į΀>)4g: YH<7  9\S;sF' $)Àm{X~tcl:Mҗ&OkO暣 e UC |tw~2!{*t|# @"0q=ԷAb׽5b)m6[+2W{C6y%u^!X}߮6*_-ZXbm'h"3̛'t Eseg2GV^3V0/3!^?N&Az_)%OP5sDm;'>&=C:_4&RqP"A[{DqƌH\# 2ǨAI2VD h &˶,~4[1Ԋ_YK`]9O >Ay#^f,8K+ t_ K.V@R/ci7G1 ZLe<=EEDf4=+jZB῝3J2U|>S5B* (Z)Q 6ҬpWǗT-;ah^(Bn*Ü=={-wwHPT1M؃v J*^:" sμ _xս׫1=*Бfz.qȌlf3wxMo%<1%ޠ!z3 \VO8 L ;BHwRLB@q"m_tךɇ"OLRg1֨g VB2"he&oCEԷLl7/4Sn-@&\Iq1xο(k6ZƂ&KKf#Q]=6<2.ܩwE1^UJky!EBfBеSБ~y#nԚnqjl[oD( @:i;ӦYg,ti&ENZe+g0рn8cL`]Xx;I }v41YB>fs=CM`l~iyBkƪ,%+:Nc)rh{ l~ n-ju -3\=M?-b + UUˏC0찤 >._zrYxqJ&2dA -h/#G4 e1WS1iD'WdA !%zf.~Iܻ1+rA1~1 u2T#!Az6MF?On1I (u(3@i`SBd ..LsB^ 0q0K]|̢ j sye뿹AR yn/M8b2'N xCTAs>F-C+8BYxZk Hziy=aӾ_T |*V!F~FpT fC(E%0YW^w"f%f:TOw 3?%B3OQMi#p"_bݟ(@U5n">6(5"](f-k\+ BIi5k{ |샜⣔cu2QnѦ3Bchw]8 hglҭ̘MQv|rM]o%km֢ poa wzkZUe21lBFLldm)pu{>/r-jS'-Z7\, pVU%)Z{Ovr-KdoB.UcGLg6C 45X`"Z/Ft0#=rYt.|i'W vr_,sbwcݦw3}jWCk ,Cנ6:>`z!wm>naV< // q 1eZmYߤㄿb'jA].!~lu!7p}' N%%7K1+<܈_[36`~ GO~%ꫜ +9!YZUn"[si_vR[ ;q H4Bל:nnX ԞE_ϸ?i/**@ן;ZN짴{"jl:h7 oV Vn+8^j"9nky>F] wr2rGY9t9=A5v*H(MXLfCܲ@ug.ܠy* &.aDٲAqԶ)%uHe,$Љ2՞܀`ZĄEҩf;,c?(p"!ORAq]zÁɰQj |W n-$Gԙx1$TPQ }'{)3z/Zit}m^{f6DSm=nbO'\E'= 6_.HT+چ-)_,V2{c>ߒ6|S< 3Oc?_jV?dm?٤H"Ƚqm<=sԛ.6-1$σ^D譔yf1r.~w{ՂeMAք*(Ng}E˂+½ lQp$&VH,sA)t%ȺC) :FǞEq|>/94/ GQ*֕*8Kv#Q'qOVJ K@u0X,fe:[ U "&՚h=Z+HAP'[}4_ D0*Qf=KgL3nbxtv6BTR} ˞mԠr[Sz!s Cz0+S;8d3Y{[Yt% SBp DJ&[~< oN~:ָKS?G-3Š%}]? xlrea9GiGngL3#AGE5Y<"~'=\GˀN}e¹Sn [#X2˝!4F L! I)Tyo#+]x4=:R[hcaL\41gQi]"v'{QXHg c]Ȇ Bc<|u/ Y(NpOe0^a8y :YA ưjmK7/|J{$}R#I'g׭>nFJhwo+IW6J(!Nq #F$ ԡF8oEJ"Ӈ |A!$\4)XQ-m[(gȩ,Z^ ~IK@{e<=t Pv:In`ᢎ"bsH< E\VW1QK5ۭXٌ`(u\q/ڐ6r"gki(=ZTٱXlfeY!ֱ'@>nqZHxkR"n:m9TܸXjp۴ y)k)j΀$T{Z;!.E=\oGaw“3.rʯ՟Vbnwi7h-@ 6̪V9fm P6/_?:[!qY.JkdХsPZFG>c`mǴP|kM礒)⿠f2H甮KK˘X¤LȲ% XLUB ƨ 'uXV=˥K! b-ZFl(F<=/}-%lse|on~?跃^/A*X(c ,qY!{s/]Ic]2}nBsT!c:&L౰oO^GYl:URV47e;;y.S|c_8|%{_8ϭ~N)0d7l_dwliGY/~/zTز4^L2b+X(;_O--_(#H3?HLl)uf81K'I{J)y:*ҽ4E_ׄ>4KKFZRD7d8?*~A30koI[qajIܧh8X7YaΞ_$c$W.(}K[L3 ,S,֢[GdaCLTE|T nA*^ﴗClX긕x Hd=:Ӳ>Lw~ܖeq˰fP:_XkQveY@Btp$zg4dm9,(V`; CƕQ%`F: H4Oї%4fK ^Ykcu`]e }) x#8Xɲirt/>g)'m-&։"n)M:R1 IW ճ.\&ꚬ}o\"TC}4~3UͶ놄n_ (htp8!&c=޳XHP+# =ާ#`7 `u4JBf&i+0<8o/ F?p8h(ؚS!Z4\}"CvgQ@|ఎi9@(7Ħ, xgj$6Np t$KZl e_RrqK;qE ޯԃJF̂okruuy,f 9,ڧ܏P>'Oh/-D0y?ž&ⳅD5 `퓾ė&= * j[DŽٜ^L|Ƚ:|̄ocMpi&N ԴіB>͟|HI[|NԱcGJf% bz]@Ǧ- m? z{3V)4Ga]6Л8d5t@&L ^D5ԀlO5L3jvq華cAm!*sn|z[ oN(H2 |f-Lڹ rY'2|'ke B}[IW7NT(@8h+,sR摡(O=n/WaD響 |L^SrqbUKׄ<9WPeBwK"I?*"ٞ(AtBGwhI#%Nxp|{-=!nUi_Lo}QwC(4kd%o8@-sru{+spHR6촩e#mqK(D%p6AP+bzM|'^B>I s|tF҂X2U.0Y5Ie~lldZ^ ƔE޷T"Fk?gx6ޕ5qwr/s}2]»4nlek1f @X~ idW2 &6=FC\p$B8T@z{:&kv#=*#c"xAcCR;jI A !׈#½c^_&rw`94H7dP;7>)x{̸Da VnyJ$R_2ѲBz!@-wԸfg[>%ڞ. R_2eY,@ˌ_-+:"TOȠ49K>\ӓ\M'Zh aY|q.K#ޫ!ei{`ђա &k+aƄ)RnԸInC3 Q~%=~iL\Tٲ>Yz pdF6Nja7P۲ny9 YmQbWsܗUO9ҹǞβٸ8Pt2b Z l!rK&ʧF"1^mR** HmCojқ@?K_,FRx% "Eҕa|(!ƃٻor{`'$Gv2 6u?҄t>y{ WNwhgĐ/.}.~O78%<9`,;+LTW?3y~*f:v+y~cJ2}%'fmMtE5!*Fﭐ; ȺFh|[7ӕumږq8BC/]. ^R [:^O9J p\ )]^[UM C>碅8Mv[fK:1~x * vхwmd*yR#>SĀny*Al vQ\u9 ]1{W#pLg%:( KSW7 ZB<68f\2Qc]`NjOK,9t؂'vax{u=* =Co i=FQC?Hkcy UY%+j2s u_NWYy++c\v"m9oPK7&bLpʱ\CaU5uy|˰ -5 b2qv[hIY('X,z8DlePԇP&Fnd庁#ܚyMmdѡ]yyvQb°#ֱR[u&5D A^v MD alXD)oIjVf1'ba!,ߡ՘9ohS=8cs+xN0Y lmPtS;rM7*k^1ap4}D1ATجm _mv%{q U vl=@_s/"^2mšqRJj > ;O7 aPgcA=I]q~c!eaA#-ֻF2˪ 5;#~.ʰV~0F+Q\R}~l}c KVȿ[4lkd5уr !̋$X ,o@q^>Q8{Z>Գsf2>,Lx!i"x-tE8%1^iolGȩ۽#Od+ T`XҟC D%1,<u A}jʀ.bPpqpE|Y}6{w39isrh |FZ=2Xk!)<>)%e8A?ߜؙ-ؼ}K\:Ad>ZlJÂ5=& Ipbߥ+=ةux 4d DɿOSx)/` 7CAX*Ňv^2~ޞA8HACU$أCƢu4W_URU:o[:rƩ whv~!zUh:Weuŋ5't([ )q6I"PPBgeమ.MUC@ǷMTa"lw.l`UU p&N ήNѢoY{ѮA]1]$P^@;c:Xs!r=@{;rZW- ݮ;t$2+ŠsQTf~qϕt'N5#s[ΎTaO1P?(#A$}?loD?[ }>k*\/gCJD.W4v_dQi,k%@dܳWqqj46ÒFiy6qoP H+Np13kmZk9:u&σDdl+f>E% \~XJW p P^ QK3mr\5|Υ|Nt EC0w^6K%PͰCE|;yl!hM4CxSq_%qzB򢎻ϵ%6Y 1Fp ni1{>iРV-J|ԿVqWt?EƽPZ"a̀ѣhY׵~o *K4'\\|P%ySWShgߵ v7]cwD-AVd*>.)k1~}{ lm^BEEBRǞ@rnF\莒mK::&\ dA{%Z-1]&xBz^N7WHq0\ȡ?[H=&%tZ wNnS#P&bA}Bή8ěި% UKIGϋA :p9ArW1qd 5&-:#v *w]<=i{~=g47f۰aY̥#{qAI6 37t`/t*{?_'zo #VprIt+He3ݭxN*烎э_a>]@yr%y~K /pHn<@6!GjwOE@0͍zVFdld[M 3z#P*O5}V @0x % "dв>$4dCBoڨ't[r jQıaV0MP] efQ7T0)"s-? (RJs ['?S#!> r{)GT0ٝݜv81%D@5CIQq#Ȍs9Jo^~}_߮ t[Z6v5rUjaOUJLw罋+jbo o_0vHgMZOHSahY=Q'Iz<~ J<6moܞ뿲'-!srU*t9NΓ38zUFp.w$л3T2K8(bb`:?>2:ʚ{~NR Q9a*t3~b5lg} j񖟣5w&Zr?oB(YwR+1 *+Z/oU#eu=& !i &1L8 >MX^͐do&}Z,8<`'˷i^(V 4&DN6`|ʼ!%kZdJ7Y  .[C Ȧx Ӄ0) (s͝qĚ%SaAѲ"(7Ir!XEOX IZL)#O̶#aLT_݌LZכHLoX)"搦,VL$=줓. o<{2J̮ntJ[Pb94h`#g$ƨ3(Wf>Kx TIeĿךwi>:ftL]c!%3_L@A $^i8O IpNl5* :@̂m T \8VW@(@pH@X׫u*?.#\qdmR-byuRciũz$z0C1v*(L!ELvcѷVD-ZG2Hy+k%"#IL#ԹnmbcI E)z 3ԶA3Zsȡ-)UH1V <v\Ӳm;mEIH.F1C+kVv!uJBrd;)X'd%^ff~zEU,*w¡[ju{bp g$`EC71{I1D8q~#=ު:kѭn%,]1-@@Ɔ00զ+iNq2J|0 4B؝ w vpӖ:mYZm '61$1ɟ:%̫36ZTFΥ Z ( 67Q0-6c՜]Qe|U < &SK^yCIX+NP]AR<Ko|%Xа(bnT;)x\rߛAX*+{c̿p߯KF-ӡqtV#K 'wƚj(ʿGHam}z1%$Rr2Tp(z$g:[/㺼n֙^H ^O }.n,Ϊ҃a~i(ឿ ;bkԈ;ي`m!v*[.KrF:wXE8Nb򃇍4lTyQTGz̗쥀Jv9 > xcP[ʊC)^,MCmv m%mLK\brςR6DLusi*/`#/eĔe@9E%k8OxZ%;eovu *<ͮ dƝz Po5$岬3_taObJ \lZ7nզw*E 2IJ`;(咐u(NHآg᛼Tw. #6e)^GFz2NZ+.gZCE}57!`^eIE(UD խm@836CE╤mdgbm Ci$[՞b*BG!FQ=1anvYgG(9]?!jtE*7*3>d#x0]BOէOyͲS gRjxG]V VN"&K\#Uu0f,H9 Zq4\5(Q ܏AP 5::Y wT|ab;%”>$+ghs= rWm4 Y)E- FZar]f~(Gfc2nd|OIsͫJ{Ac.=Qi_@%bju2X|W/U*&a<3RJ6{y؍gA5xD؊ϪK& Fx4/6R+^׼]}j?`#yuu!C֫>yn8&;(=(I__Dqsʁǫl9>~p:d ݍ$m-` .i*o_$)ƪ tJ&VHml'L3RI7WLs&Ss~q9xu_MtثEj@F#QSKAʿfi? |R#[u۪ݘX,245 iq$RVZjƵy|>t!lƴz螲p{~)̠O 5רOd] լtq43_H=*ٴ|B;i~ qT<[i N!%sO|$ru$"n\!@_nՓ}F!~b~߀ܜBscyA]a?#d~:[@m/%'S<#N翾qGQKސsoY& 4s@x&'J4 PZf9=cx;v1QٲeQKp Ԋ{g'N6`ӣ/w ߥ5+^P!=;N \ʉB:43+)Ilo|Up>wpжrReZAiKa4kz0ϛ?*cbsVyLY+7lcІ N*6; bvg`h)Vxpaӽ݀9mHn),Jr+ %\V*;6]ЊWOm)sP~v#ysz$a.mo̷Nwo6ywyCA^D1( :ā&m|񢡚12a$eß)4N^w<[>b}-ԘBH3IL:ţ)vdHN= ЃE: `|X5\`D>~߲J˻ ε^y狲Ş?R"ģilAA\]ɛd>/Oǟ`Tk _EтI{їg+fCLuՒH~>Sb~Bu91ޟux$}pfqbp_n(9ȶġW~vsL8LR WHDZ10E d?SODP@1 +GAB;XHG_9?Ukվ?q͊&Q'Vef,-b? "+b}p'it=-is7GdJ9xq Qv~D|YJ7oܜhf)w{w30}@-V\JwKtqVEl*Jۮ*O,JXlb nxu@KʮA|5tJߎaYRP2N)`30JuA=GoWo,CmX/YgO~i9hҶRjNmMH9s"A {Y\_tPxr]EtCbF㓠ee"䔲%?狆R &DGM,؏{絻j 6 sP*sI.cvV=mo.*_q(nTwg΀%|YhBrt}J=7-m4{\ӶY:nU 3t$=ȶ~$N#}U5cI:I ,kk)3 ?3/jzDu @ ߧ]ĈRi3v(0ЦQA-u} ^7}%H}44G|z"hTZޏS{CmM|M SF'n9xOpMj{C@}SBV/̶Ys)$4IPQ_*Ua"-R6yuy.a~;b _J$;jjx @F^HJ1zB^ cƗM3f#c#A4tI] 1X8)n$I,WA rW|<ᑈgzܾr>Kj?'Q ):u2X)Gz|ÒP(ȝr'y(K>pT+|wF8s8z 79j?E>oe%kyiDmk|5iqzQUqT rQ, їQo4*sE0pޱTEL#Ў؁bw8wa\bd2q;4b@vh:жajӘSmW;|ZI#Ւ! 1y2)2ø+Nvg,-bk`KGtSAmn }~^^5L'UiX(FpͱLYCtѰޚJ?xEg"<|ub+E<;Y,XQ8%`).X&BV+,5Nt/qwF7gc/fj'c n~aRA拲P>NT p晎L% %eƻqnŻ GXtܺ3kHL'Ѫy~|'=ϛt(EUTiIO&XKsPdqm ǣY6 ]g)+{]-~3rЦmXXi,NK;'KfU\)DȾ0?mn'ZaSd.Tw۾դ3g7w5ނJI' xl__\nZ%+ϱH&>*fHR;3T Gڗ+&!P: tUwbQ k?P Mg:ܕ2Ãaϩi@L눤tZ]2RC5l 3,qlu8c)5"] w5֙+7[Wz0F J\G.Sqv1uo p>KMgӄ48Rd3L)Ե4+O\9!D(K\k)\c}Q<x0c)vv.̰;Il곔Š KÍ-3>64ޏ&nADU54Gi"u`εCfDKjddvGMrF^ S|22y9~}\wn0fB3A WOY1n/9 xjFo!v ))dBZ:^f:YSaecmi'zI0˗1O fB݀ >9-eb\Nn%Pư9iW(݅ Tf?ʠ2$lI 0&Bᶺ5 o뭲 #k$5.Lȼ8~L2kɍ bP4b?hO l(3YҴp}4YHF,$] Ƥ5 z.dE/)"K@iL҆]mn ZaUe,r' HC'ѼK7m)&zME5vo=+,˫mhrJ(i*Էg{~ĵJC߭1 Ә='YbB2h@mK1yf)t $8KXS}h_.O7J\Dū,:^ذG+3`\Lكf\51_<BiIMi90?ړbqu%>5ivD^5X+ 0H#=9m4}VؾC6А&Ң3~Zy_^kpUavui tue)7U.q]=Abт;"UoZ'S\GI17CUh&2 c-d eϞkpE4}EO5bxG1 Zٙ/?t7픫 SR cS7]}2PZzR`ԺO8 ib<=JWqnx 1'j3rTVeB,pVٱE^Nh4_bz` ΢?dB¹T`xx:9<,ǸT{KD-やLnkẌ&4+~> %$,E:Fo6ʩ(ߣ}u[}k'FT$51U>>b!gAxv3ykI$~ O!Y̖y^P  @xؚnU'YoUInقW=vtRgƼ0rn345,ڥt~X+|y= 5Yɢ8+'9SE>YrΣ 'Ꙉ F2 Qrgͺ/G[{Ln"4gP41E2c Y4yz<ؓ xFhDk]pav8_9_oUɠΠ aٓBQ3r{:8IUA)}ͳ|E9pl%C!cBB L Z=66 2:B+3(l"EJtqOCp'Ǣ55ūHBvpfbK&]”za=Y8 i-rWfRz R,q1`}ȣrs fvre. m L}sym>!O.5 4Sh=Hl+FBb.F!ˊ=C},Tx(`KQ%צa:*+M ++R&SI=dJXGrˊJD&Wodl#idȨ!a1P3hU\?:{Vt큺A2|F-s1qMv`sc"77 hl5/CŰs V䳂|9sapvilA8׌ߚ6⼟EJ ཮/юui_eeߎuƯR J{O;ROu)准P*l'jZM8. j%$%jmDEI7Sw/-\WS!/fUiI ffRgj~Tސ@p<7W^U $FՀ-;fsyG߆+wI*߂@5X*cj U&냿/R?_zӖW/i)U]SriSwts3t)ͿWbg M$|]އK?& _hJTP6엙 f@h l! Wc>ѩ=|+Vk ^! I =+ ",&ڰŁ˟ 7.Oxx&i֜vF;!~$^"Cde$ۻnE[I$ [pcɥxѺS@8Ns]/˚Z!"r%[V!MU4b cC0g4rFX6GSn fqaخ0;+_|DO"#`iF* P?%cBq:Y4HݹHYs'XS;{\`v}`ɄgPt׽W]^M'Jn[Ufoshut8XC]Gw+]t wLm CdƗkQe_ճi54]3׋Ig0nOt&\bM9BesBjBhKb(FR(l]Б fEa@jG'ɑ/) _>،ʑb fو:C7MNmTd_3bI;N(kRsVRcRDvZ7p$3nZl?wK1.Sm;{Kjۛ~QLbDש+h|aE bY\Kdr5~[dJV{·.&w5|D6[ h^WڮĔY t|8<4]l~TH5 . t,|qys~F*1qk8&eԎ{fʩ/KgPα]3cwc1xYl*,e8~] |_ T;Tzj%_Dۺ3a/8Ȩ6Fed6txKi!j>Zv7w4Dk8&ޗcTn8ýٺV2{V\#F2@ՅZew33ǼB 4P s + jK( EM|E>vV8?.((.Z6%&kl;{5 yG` \L.`NHN\YWY22íAn[!љ&KC 3{ ;bXGp=42~quCHb큿M\"{6<%=~`k\\dVF܄ÊDR9xhJpU=:pgQE)]Q.UC[k>/F`os}!uYUs!"d >g.,?gE 8$Gtղ19Z&?~xj[b_VRJ?a=0qjH֚Zk?~rS)}Cc$*ާe]=%m2kH=Yo@.a0$:&†d1fW.+2}1gMl뉭Mڛ{m8sfx[qөַ߭ tT[ui=ha`wϲGZT"X!_2M8+%< FYS }&nfI u3NmNN\+E45!w]Po:紖 -[gDj[4~(&|Evixds.}vI Nk+͉PG@}4#.#H8l%`Ju[P 2+RS]=Gjv#ՉȾVw%9Rzh.R`Oӡ!q x|B0br_uB~wPWʗ a=SpjB7EF <',EjlR& @S]S β2*Mˬ^itS (Kp0Y[oAסX\nWjnꙛ ۺp(5kc_(Kn ?ޔ$|~Eos_=i jye"ޛ3; hQq{Zp胘-t"M{Ī/E̮&憧w4Ƥp2 LVBVFh !YVc O]qx7fDqձvDwwIoa$;Q]9Ϧ #Cqm7@^l2Ì"mk"O~FGD@Sjn8R!~{\%ص|ӛdgLvFO& ɜ0YT'~x͖nͼ7%gxgM|_=_X&3 $F61*I'QS#~N7r0XIZcn|v@2!=\&9)ݾ'y{H\b ]-ˌa,_܀{UD2tŨZtI`O@(˕xu'4aٸ܏w q=>2kÿ4+T+Q_\ZH;j!F_-m|Үs2{"Ss\$22`tÃC*!;O9$\J"Gߡsw=@Mw\t Vvǂ]ooQy^.j ͵DT|;hi.*B5ܭdV~/:4R!bQYh_݇ů+)׹kX0'% aE6{UԪuܟ5Q3-~rcm:jn oS#oPn6͘NS(٧Hv " 8ؚfK•T^;A%aY%B="c %Qڃ?U5ECC`L>)SHmՌA豗 u,$2za7Aɦi&!Ӭ`5}=|JTbjƁ}*x]Yam^4yo3pJ⾡:,,IfO?MSPG#t!_(x?h h=سC;O6!)L|WVg 8p+c@\Ʒ_l|Ҥr]"SJa54dD+b_;d=.'7"x, OYbK!ɤ (;uiQYK,=T%эpzמ,=Ah? (Z['|*;B藙~F22e4EH9pSCװzS68jyz6~2%6.ݣi'BXdD\b~t뤄,~=YK Ϫǥ,oBgL* g=9goQWlI Yڟ`|wurZJJ 4ܑE< N5*l_[ ױ/L\20<0 g<ӧJ6tHq b K(bE9 beNNbBi¬L'y= oX6a{y f,ArMLV>UqX?#ydÃE8A  rD9N ĝ%(j|7]Vr(j?`;hR]#!<gu+6J0Cͥ$`S~e/g$GςJO¢waKkSs-M#\) 扐oq!ydvCޠ*0IIaY] J FB*_|P^.(/@ oT ÄMs!Z\T(aS*=ie5!T1 >z~L17X#1I`<.e0z~wXG{B${K\f*f 3Ѩ H u28gV%u"*4zvZџ[N|b xMu2w.4 V[ +'={ɾuY=V.h.y$abzeP;V]`vN!gE_V "л"SÈjjSc;,hU#(jz,7;hgW`67%n*]}f z : O%C{'C"J;kͪ\Po$i@DTf fjbIn/[c 'Is%y^/Ku*| 5=KI`D=;FS_a܅#c њ Aڑ/vL;uO\ hǒC1tH:cWNC3Ոj_I\ebOucl! 9?XZi\wg!~!3,A1XE*c[OqM("pEU'*]" ץUE-|ٔ0؜v%{yA(h9`<W% ?t2('C[s($1B.hL?"xhdC"wBa7hm4a<0 Z[Kzc/ԩRR@X0.[Mk_BV:voXރ(@mtg1[E! #`Fl0?fwtcoy ӚkC+ )ES9|%$M9j J:S⬬T N)걋׮j#XfT9i b vljE#~ W%=ϲ g46~rl*E}jm l㊈,@!A OjAMkLpJBwBRC#6Oz)}V,P37y'V7-'Jn ng r>|$5+kLdx?]w4-ܺP"8ùf?|ܡN#C\q6T#;9wROmqC=}?q.OEoe}sj\]~neHFo8px ():W\̗HiSS+h1Eko‹km@A նpG;5b0IAŗ)nN'ϐ$ qb =9N"\z.o$^m1UX-B6vq3l>m0A,7KgߊЧCO±7F6qY͒% 1PÖ́5w,dB;u΍ѲsH*-<qbaDb͔{ZP7%kTeNs{z)DH3sl& t-`j ޮӡV1t(!QcG-i)y`%l*JJO6iZaOۍk #VMSŖpf@p,ݢLNBǰÍ<2]2,\&7%~QD3!YFk4v:x T=. ppK`qcU& nҕ2b _ \[Ϸ7E j#gt{/WԤ~s9WOS*GR5㮪# IcE b0[P̷ g]SXļ&ju`%Q\ӗS:!P氓"Yڑ`* o3lau\џAsPAn&88g6]dz7jZ>#y.!E]Фf(dYPZ‚>ެvWNx!(6|$jY'7 Sk[x>u<R=MZt={ͧn { Q&J'ECj[ H1m5Fw GJ7" 7U=8ʛB@FsVYߡiCXï`E_n ge 7#08Fa_'a>H9Rw:(D3?I߾ @Ф}=34v@3LJNӔooېJ>W/7z\P?̡0sFs"pE(2Am73S/¥8׷]`G+R'$~0/1{iL߈CKbQ]o""f̦dfIAF^lnUI~gE;LhIR -\o#70Di_\!?MI2~nt0rʼ!SoŐ-|3;#y :rn3ڣ\O&LNM?c/A KEV@ě]J !cs:m:it4rw(NT^nE|v>Ḽb+%P8QJ1W-/z9M,U.b?eJEE%ml)XL( n>ӜW+y_4%ց*"FGKyj禐)݆֞17t2:9[E"(#s y`bn܁5M#GLHzl>͝ɥ,iUʬ4Z&}XPYiC^j?lOZd _rNa[ݜ:s .-'Tx݉Nwb*)ϫ>Z]A*H:ak-^UJb>TPa"6.]>ˋ CeB\@DgmKdʡxt7(hOc3 kA!#[;ٷ 0Cգ2 |d*y(t!:eu41ƶۓv[ǝ#&} MiľELzmt񓬊8TVk<S^t]SP#G%fܝ5XRVf26$GM80'\đwnc`}k\6%}N= bJg:nBBy /BNLS.4ŧ>y+."Or"?ԠO@iD X-::>=eH5T-W|Kn=ZA_z G9d|Xqv.#^:Ϲ/b 4@%b}~21)3PP`QTg6RN @PЈKH{ z5I!D`8m~_ő=liEeovNh?bIƋT&8q0l_B6n{ڢ95*57AB!3k\=`sRW˽-菎DHC'NrW*`Wό'JH{\Ըb#QcNg Jr#/{}d-ö"$>pxo7f%TF [qHk;F+n~fn#213Y $dGUo~X-I,eQrt(@>܄ݪ챳^~EjzFhG`Ti=y!_KOʙFF9_rC+5bp]{GŬya?=3lҩZ[pJIwV֧4VTnwy =lz~t'Oƃ0rS1ʏh,ۯ5(SkȪٺiENPyb$ EppaY鸙(!Sh/eviɲ(^փ0f ׅ-PgxO fްs"ښ\z/d IT!8=dC37ő"(p1L^BzyxSQ%b0?NyUgv)h$i J=mHcdb@|r>8c_-! dž@K%I Ű~u14#3q=(<7e3|#S5QL^O м}FZx~np?@Wu`{%hW{+U,`%dԚZ8-ӿ*Q=(}C/bV#o;rCBVV!EuYXZB쥀YjҶMEP!ow%BdN>l&k?3C r]-V9n4_K*4ق177jMl0.R1Vk6<"Z| 't(_vmx%޷3qZEzB/q1yY܊1}t92.&ԼF(+}Nֻ,TqE/@2 Hr#UہLVH&u?@\j8@cז…ÅN;Yz euaO CiJgf |Xœgv,4T#`}-2w^Tfa7Y|z )w1r}PES ~55,++|ٷܡ)IZ=Q`adY! R&yLhjTrڋ5o"?~S㵖|p(ߗDi5U"SbYXh) 7/nx aH=m,8V=QN;D0l}ټ//!ʉs$n֤FuYsZmHW!`~|K kD1[I5ȵľqsa f!IP?A@.nC~Р`?YH$7 &FT^+r#.׿5lpeUT9g>AR 94fBQH/zfiQYddȹř898xrA@b>)~avu*?O t|noڎ284).$!6MZH咍¬Zl`1BX?xԈ|5cɯv;C|k18]4إOK(75T$DH~ mjQ*FE/D«{}+6U)Wɦ6WSoVg ?l=XX*8 L?1PJMd=Ros. S&.J\wh< TO:ˎG!tٮOSARDE'C噧z΍AQ4#b^K0 uwo8` Q1%p _7pIa =گ}!xaUolu N` E沼]!7mK3vI86ס;/ϣݮU*"; Ƀ1[ >*/ kjz\ٜ0~x-gHsN.^u ^,yH8@OJ"eOCvNxFaE^\nG' 8%$WÿWV`&Z>7k2BZ"隝fX֭^!ɴŧ¾i-XQ)) ݜI$P V%5ZO{Q`N{~32!rmB 9dt}$ayԲ{FsJU \DadWW,.|ZPKuPM\$Tut_'! Ihoƒϱ9߁O'A^/m)?Eg ǯv7Ԋ^ܣXe ꝱ0YtwT7 椩9Ʒzv䠻QGv%N;5iHA՜)l մ˶ Ӑ^hA4Hx(ƜkU.ʟΞNRqrNhgK=X 'DSoǒl< sVD-Y^? ݃P3=t/8~hն \+:`%qَa9Վ8G8 WezN4su*إ9ܞ_> )Fxr3]"Uq}ƨ`>no-f5% ş s=5( YfP#pѿQ(T: ydH&g\W¬ϵx(_37< DԅȚݔэpHv/l?NޮijkAGϣdWΠH/ }A~IU qJ5\3'1XȌ؍7l}dU0qΒj;bυc1o}C$Hd`OJjR'oUtRTmۃ$Ba Vcׇ~N}Α\PFTD$KPf]Xů_OvNwm za `!5 +|Gm/Dfb#*pBu3 2-]<5K %e7 CUs+=Wqܧ1+W% M 2P/``oYDC-Fl{>D1g'b u[nCWaZe(*&Ml*;QILǴRm2.g`J-,<Xi1\'[ & T࢘xxw@,@(c;$_\~ϪoEsZ=K<i,|Y}+]WLA_<8/&c.IY@ 9L,wirϕ:u85L05 gFVaW( p跖. LԭB8 BL8Ưmvr)`l`nU_Fr~)BVNLH]zv4}?V.wV45͢9 b#\> _.%;$䠺m5Mcˠ3iUCpHt..m+qu{mAӷ)_iM>#F>*˷r9>ꨘ8_Js:jz!>4]a:ν'!ԑlF@gFX/ I(EͿ(? Rڎ2GdyxrD4 lCXK\+nRN$M BI4pCJ&D%fN0OW)~ 9:D,TggUUjŷdǰB8 {^ @ FCҿ'kKQ&͹ *Yvǔ8Wk{aqPY$i`5!!y nf3r6+7eeUVKKzNJ/>&^/tӁG UWO%0oI4 s7(bJ`)UnY5qb|]EgVœ@QXgCC'|D63j-޼ᣇJ#| E>ĪBoSO?i# MbM|1 ~1XRpbt"05VP\=[YhjSz5v̈́%+|,d,Hε’y-jg,v38Se4Py ]pf!2pR>wTn|bغY(]˶fmjb$=4! ۷S둾ͺZn5*]Tm$$Z 0^Yn&TD:U8"񉎃` U WՃ,ETJQUrajvP7IQ X#ǁ0p$<`5U 㷷A~/Ri%b YI_ClT hr&餺HJZg $*/e[HU\}I gLv +=37GfRDM=FҼ؁Vm2W1ֻ2u<$5=wCmO@#\)u4_oO{B8r@:jBEg*? m4if ujd fRYJue uͦ(rk롐Q`i}nmܩ:7 'pe&v98&MPKg8G{U>72ll|ZojMdOYZtHg=!cR!=o.H}q3j" K^ 85zɠ>5"e`\ox6𭑽Z K KW\KZZ'$r))?sR,X-P!, bVZIsMx:raݏOm5UGJxw7yVYd^`9 o^:JȸB%>]6ńӀ'ÈC\#0q'hj,u(tyV. Aj1# ^f |R6N J/9@c\G)u%D#uT2ڃ-X&OO~D{hŝ@GO9ŽF9}4^]KXLd`|r LCߨ^CCc>^[pWרr`am-6D%\V%j=(G\KG>A9%'ia0wpZ+6YC36kkd#T,:y`&_[*'<sÎ*>BZq;x%ѝ%n.8pcӡ:x@ m̹9AWYm֜ TƲYfz9N) 3;ImBF 6".l&{Hee$8kĐKn3<̈]ntg cFQ v9k}iNH,n.RV%îiN$JY:Rf>^Ɠ6¬#i%e1;i2ҽVpS>k:\9#Sr0!>x=@&d xhhǺA;-j·AP:lzd TWF1X^v9|jQCn`J_.`oJbQ9gtl˯~+١v=GFDc\Bf@KV~WT3]n466@A='CF\s QHZq<P\fdi߻55cӾ}ڮ҆2MZVžgOA(Gb*R5+)_jjt ^H@r0L#mIYQc-E!er4Gza {9g*պ6/;>r#tG#]Bi S}^Y?Ee 4QM;Uuk\ƹUz`-&/VA?`1+VzV40ud黶wpA(UxnbY-~LJw*: ЖXyFj.kP?,JHjZN)*fcHw9X K R.cի}:j>a| s̔d['Zo,18iwhqz[Q%JE}olf@G(#ߩFW6o Mn9Z N 8$~NQpzٴJ?y=L z7s8lYwE}7Q Y0o5Vb;>e{IXLM45|W7!4->ٻ\dJ2 kެ,ߞ%k( Zc&eA,uYܬ > ^ձ8bSIq^umM|Jb$pglXo#YUя6 >0}83tclC0s׏M[!vVȠn=AJZyg9~ANIL(mU2>̽V9%v!*\~gtr;Z3tf-%pg`֗$ H.w8D+G @ͣ\nߏ _''ky[rJ$g12}.|cАaE~Ǚj=ƖcAjzxς!b |4}sıhޚ!XǤQ-H]$$ƫ޼ŗ g\PA-a״5WGqkValϑPR.jCB ʭUOJP}3ʖt.ո6?P٧Vu6I+h7qxIl{ÒhQoe3-7(M6ô;Co@~*'5'0~9a4wt.ztg^t;6@`NqkaO(ZgI5[vi7gt%F%xٌI~4]$C)e_6_$\db:%ZKPcLxR7 #.@48J6!l(EYݔJA3g/6Z pz {wD~, ҿЂ$g*LS~(<&O8.l<%c-A^Us5_6 n#ݏh-rq3-{ӣY|u/=Br[9~\ 3|_$Yӧvc*@ ^ :>Q4 <Y19kDRȵ%S, D~3fմF Q6V{8Xm(o jΏRk+>tꉹ+qh.g#@ PdCY}.|b`PQP , {yםL[?϶n}T=`fAiPL׳Hy-ֺ V7aJG..$@*s>ɕ˻2{>e3㠷iQ0aj5DmK"w/sqjV+d3w|vDlDFZqe%݄Jg" %$K(~bS7hOO㴰$L84" >]1 H1 ɖ &Rsnй$M "aSa~+#e>V"m3a=.6U`d_)6M9x%XpڤjZMDK=w֒:8at׬D47I,ͬQq%,2HBR Fץ :.[;Z77k⊮XiJÙIj_FZMB'݃L$ex4?XNsʔOSpEaddql+JAzT__>z|~L ε7 OƯX8H *U2(> -j"X$7|eK#8+|nz@^DaM8B5 uu Oץ㠌fB})^bBPX\=A%0.2 8݋ſ <휍%p{!_A3ڵ9wc;31;Zۼw򝃬ouׁ GJv_a}/Oo0nZ6KL# M*VKWQ+ʨTwt8ϖ[L2§R6=' u$yd'9ǹEdo~.LuE6.[oq ʌy7+v^A<-%䭎^7"H"yP,'~Zء}]W-:W%)ow{Zxk5F\fD nη[5ӻ[h5TQ\@Qa9n/O?k9_eP-%(xQzEFT _G(qN+EH9oCN^pjdQ =]J}mXj`N2( B)7$G c^ID棒5Ύ5NM۱iRM2LeOAa3U<HL93Bӄ`0hs&bRBEX`#[k+l)}!zckr(TcGdɑ_DW*XF ޠ&jYBh\ S\m(=Č4^57xsb!)/avhs=e  r}]X0bEHXF w˱}V43l"k3ƾd%ةcFDNiaG%>6O> 5W$ OjrQrYw㏽"Չ"ymȮix~P@V۬5\v/  Ïb(ᦜ r dk/"=/>2r&j.Žo_uc@mJm ;V).Ț8b$ȞQ?-Ϩyؑ m,]Gr!sB[*'9ABe-SoBԟLXVH GX2*FWq'v,lz(آGZhFRO9F붞' 㜬'SN!#ة2>ҡL)e.%{s[\/7v ޡd?=vn驲B8MN5v̒݊$cJW/2u*G׈ zI`%TqdFp%8Amm/ΉaC| $6?pMn_E  O"67uP^9ppX887ju}쾎/ TTUdz,ȬU/ V.) UxLQd=5jwj<>')R0Jo{+@9af`řNA$5ɒs<̦"Ju ( K){U '=uc̟Κ$VcUt8-4.~waDH#DUܲk%8 %B1d+o ux؂\Aů+FPo!k#.6g3$?txb* + 9Kxe:@bU֦,앳xKDsM RJ6G_1@m+wӻ^W/FfDO]ŵ2fьv.!%,8S.4U&OK^_nc#VfBa8LۣOFaq ?'c[M PR HV̍+ހ\RKN>4H'ѕZ8gd7:1VI9dşP'xOL|Z>uum7,qmԻO/}a^4 GOjtc2OlψyXJĻ*Fح`Zu{j aťҺtCIPO^pJm\ME% bd7޴w&,f+hG┌4Qc$"WF1{C(P{ATIhd~B}Uwe9oČlu}";>ng5cf%[J-S|4T{΁0~+vX=9!IDyv)&pͰ2,iCj@5Hcvm5{έV(cjjV6܇-f^oİ䌾fǹjb^T7)65#ߗ 9wp[w81_ ޴IGqAw=/ԆHsz zKl]Z$z# I( `f13}!+W@nnb1)^sv948 &WSWg`D5j@3ϛ BnF-4OUP_x򀵿2Vh%&E{Ar1n߁p[~aM~ȴE]N\R} +3NdydW6 ў OdȞ2=y2ڻ6M֛(7| 0ݿWsc3feq"_,#*="GriŮ'/".<Y5gցC*0XkfYLRlICUui'";lrѠ/5K ѭ7)e؄\?rf]4ثKX-Mڔ][BGS#1?'-4fRHPпy{}װ\ 4BN; p٣OmSd/suƙatc>G, ;Kf -D9@O3[o N PXͱgЈt\;U<+754Qd>uo#/e3Ǚg=yHGH4>. .;5%fٶjrK:C ZyyQvtbHZ>-S>;ʹ䷊g7Z:V6qI]1*PNps+Pa{'ket|Ս($o1$_}I`h8n&+ WY'kܫ 1[ra5S#/ ȦTk$Pin}mɘ:L)l-JL(B+iv X3nwSt \RG^ :6LaFБt`KŠUmPN_^'qDr*'sζ&Bab)_gum<ʀF Yh+g W7\÷r&KkD4g6/qlWfog0 VE! H愮ќ,pR~¼\e9%WYW%Y͏ݯba$r_'TK:#\g%eQ/vBK(+I Tu!rEryk)Q'#i'iv3;O}2ڡ7rdѩ[r4#AW+K ^f}p3 eAw2!Ť/Iٓ>M]hB%w- #0,,9_=2 |th_ J)ګSWwNE7T!E 6RqVHx(37)mXR10m{P;c&lv#Mfcڡ+\0CL?-~ 3a (LK 336< Nم2By_~<:͏9ÙӀ1e1#A"+63Yugyݛ hpu;F q䕄xݛҫ{0p!s2@qs ή0MqKI |dVop,/^+Eq2{5Fgr&XgY`. #2C]`[4Hx۵r8(rV&Az Fk)Hoi/ ԅ|(K;ے> /l4P%:PHU Es|՜oHF7MWc)%%ourBh[ZF3-n:?fyet\+#T+{vCNvmຽ!EB6(7w7l6CP}Fyo6~wq$ѯq- gv,^(ŀ h6Y!jiy+*S-d13wHXцӦsw=MzGC äxT13I'jM$EUj!fW4|d>Y8:QHyn1p}? kU7CHTȋ; OUұsnIkkPeND5{Ma)~RR4 +ͧwgÀn[ Fŀ@e|SC9 (ÂT:S<ܶja렛h0`BWTr:d9 }zX,=AɟEOf2%̜* H "_l'GX3V`xY֢Ѱ0LC/%DyoJ"<sB JnS?9kC$쓆sQp:fR_l)QǑ_S-xOIVX%9`_u:F OqW79pAbSk1-ke$]Huh cٗYʔ2~O8UqUxR%[?SщalΓ$rHʍV jx6۹z_85vK>"\Mw vƼ'=̱l+?Sq` KM EoAXn}y"_u%-[w.aJw@OJ` 7,6f~RL2]^:u-πCI"e%#7ҤA6iWG  :}ޘGvίax3JQkYgQǖk(μͨf߽eoL=mODi倰 SVsu<3]A3鿆'G߲[RQ̩ Ս3JY߰뺮 h3y s6Ci,pf4BRo%ƌi؍2ݽ5+kǰ`=P]6mó@ZE "4t:iyuz[Il[yv\M|{]J|Ty:z,rMI5p6ŕs.ќ_Ar3w$_$8Z6˪?,Z̓l2 5M}_hu&:ޓ3b[YZh24G?+$YȪYmY1wrvk9r!h ޮxSSa!耯ҭ8Q-o15PD]pߣ@B31p?Zsmx0@ת,:NݜK5l3,Eôa$fs҂txHA;}ixK/n!ns=du n+[R&Sl6-kLt/1#[8H|./hnA7OaOJ>\U5*!߆YᚫHko:wNu$&d$9C~%kK[܅p t]Ac~gt{}#Y TXh9Yy2xe/ ]N4߉zRJݶ^+,@հ H%«Ol-D\maKJer㕱4G:5Q 6.A R"#јTE5ޤ-n~Z[P C;:˃:$!0_lUT ot~Vx #=o=ݻDpedl|;9%~?1X|-G~3ՠjB@XOeaKĩYT ޡ` )2Jq;[uAtCׯ.hoq1#Ѝ3'?ԺI ڸb[tel?HnRO'x /vΙ[4#1)Di8ʹ޾dR|ؗʦ9*%Z#'skimʩNXuhx-H:9X+;jJ}3!.ۄI4j^G*072 /P[0=*㹄@۾f;B >+k>Zݷk6-lG؉)^C*#UWޙ^G4X[]T>4׵d*3{`D ҒCA)]zHC]Dj'i%%Ւ?\cOq}O{pӣ9im.4Ux51!t$)$ .`:@ ySUĨ=N}W.aR(*lSb{3d[gsYsWn{e>1h/:asBK³k9 \v,%x;TE[I!mu?Ū39Ot+6|S Kh$.B0e(C9,[sVhW );ܴfG$M8vR-5bSEKZ?%uZۘ`bwgujc>v)2+%Wextpv:/3?/$#WHjRNѿb`?ef!N, 5zli )4~'(σ9٨^>x-͚{#L=j2wRp?8W%us]>;诧f8R}N ܳؕT QohCe;Cׯҝ*}ItS"pߑ#-ۏjd4&N^@MfsbCDA :bTHrձ6vܨ&ʚ&O۸|J떞V3~92,'L|$\nbV[I Pr+c`211}Ȅ0/ڃ_g{f@(j~`*@6bgWFXY3 Yc e1fN[ Bw70g|_X"8 .fT:dRSOB>0نL:c: ^=>hwtzA;[ #'jdˆK+㔠4+1 )ځp.Z>z #nG_g7;X)b3Hp6g-ܴ{BjC7m ӎ)e2BJ̄{}`Q.ǁU~߇} %7rĈqIcj,X'f͚8Ҹ[>* O[U}o,rYx.* _P'vYDN|*ɛ3NݫfXuP2lØvn5\a -ڇoum%|+_:"U3  W ˅`#MKMX+*y8[٠]"A[x蚏ʥfCs͘#hvH&BU(j1c~ù3FR iʭEcG:dH|@1=o Pݽ/آwQ8M~G#A@ezY4ەXM3 >܉8-yӫҲ7ё$z>2Oœwzi' \m:X/曕֖8֝Df-N.ua[zxj;ULH.N%)'!ţ-8E[\.bѷ;OoeOTu&*NPF fpT"^CWVyX45efϿ8[5m/E-:Iݺ)8h^e2!D7Q NXL&.~VEܷ\tJKXwCudiTCּwMqvXd.[巃0N/qZ>b],\_pT{w<?Ps:˹aB ;6" NCTEJ` #!ofm0 ?Y3l ' :5uzwmV싯jvc@9PE䀥hh@p@6!XM }%$%aLϚcnHL*n$n/YIzVª#d[=ZT|cǗ>)86 8tj2mCVm¼|b<2L}fY3vS{#-گA3S8ßw+CMۡ_Ǽxĉ^n$ҵ;]k+w(& (twH>T<*Yćhj`H$R9ߚ2ahnq5 BwHKFEl7ّן&a9>3D.kɁ&.S @L jp":;3:#v\Z_"2BY\ FJB Oǥ(M)j4*dncLѯ\ACD2-"m(D]' ُ$!K:LjD*3vJqV?4DcG{aҡ:V=ed\]Ӌ4WsЃ+d3J NBMAزVDH`鋏O:14m[\E!?\ehl˙ n0(2e*%fߍ99]}fݿq(3 q Y1*ъ~ 0y3i^鴶<>۩M>mT|O[Eij"ג섪#W&x7Qջ281[s LH'bn䄘e֨ PQחB9l\:HonIUu>6)Bc#m`A`z1&l>{ fj72;v!@T? X\-Lm$`5H~KVV _G;WyJE59^߷'=:@+ogucQXcOMvl\b@(n Θ)HN2rKǡv.,aX/*;WO 74F_x& O/Xk$xr6'śL"fi d(M0mݴ`o}ʚ/:A^ Ag ^b+JħB7k᬴.I1j2]!CRㅁwCڝQ҉^$, \~ʬ8gJ۱6Β}>ޑdؑ.V[2#Z!K v) C4PgnֱJ{9UpKVZ.n-E4_zUdq\]Q>z|`6]~XQ~LƎk[q{4 cL|,2E Eæg{IbᒻNԟړHJrL0P5`1b\3mտg ':SBRV]vL~jd5UFWJ#%I=JY Sr&g: l/t++! uh]pDϾ:̹?8C{oy̤͍G/=Zz=КgJRT !O}Z >9#T%&<>6jOWr~AURGsk,қT7Gԡl7}U>; >R2pgLL/ бM:ҟV @TN#mK\"Sƕ/S%7;J/p޹^FM ΄ܾ2 } EwdJS^:Z0QhzޙF"sȬM-nCGJNa|jqwƩM94sٵj ʇ7~>[%`u6@"maUbaZ4//lnϝ!`M߶,r&@&Q[=̀b6xfڎw=dzlxA%e*&g_=,H=dXS<1>?MXC6^sSᴾo0 s,=$C+l=¬K.v ܡ^['_17 ;ha5q;"_A/M'Dy yq8|ND`1GTW%vƂAKn)V+BB` ΐ=*Rr . ZT3U}=m 2ݜe>؁\#& /s_bժlFcriE.)E-#ymӔhۨAyd1M- )MXzg8Ui'dCuQ(oE o/p'mc$v^f|IuV[4 )(Vjې)@&QaG?z#՞zJfg[^r{3b CֺjrN7{ X>kdQWTRAPLb@KvOX#2i͈=(%C_zQ%xO4$-̔ t96-ꯥy׭HM8MO<<&Dj^dz%O-. d27ݠTN,{`U3mHڎ!Qw@uޤ$֑Ҕӻ{GX6"@!WHa5{.p]}ɞe>o nxGrw(j1v_I 3jU?sRdžnsKFl=Kw'-H J4/,KOÞ)=wUЃyFõTc>&5U*I HYqA1M?~ /5ycU]R@f?r7CI_v1 .N[x棸͙v޽^H +H‚UB <΢f$q9(.PrAfJ[]oC!/ ^VJ$2w~fa3v`Ŵm߉ -n}]]n =B.1В6@H~+-} "uИU+oEo"Y/[W`)hՖ7tn\|Dksv/Qt$L!G=UL!59YևH{…$M5Tb}M=R&tV[v&Jъ ˽Fu/)<މziN裘oXFDLFD=n?*).:p="%ROm"-аa2qopZ@5_wuByԢ7yP0WԈ<[hwgG:sJ>Uw-q f!%엻w :J4{#RG/8Y RƛrٲjDA@qMϚ`{zeN=*Cqawy^on*:][geH &gZg{ٕ,Hc0 I+6(aS]YVw}MBcGc/١x|k})hź̾ǥ΃NQ0jL ;8F]:41AN\K3l7/RTljYm L:R{@½!l?F\e2]XqZKȻ- .ԈQD!@ :i]v8PwQ?8]eؤIOOitt %jZ÷TiR{︯vLJR􊬨}`@@@ ?&1ߔa XR1 Z*ylA oS[\r )QѾMhc'7P7hr=PBS}bϢq{@ d{>ih l[߇ӷA7x\ ?9XR_b;E#O&gdKuGf.rfBvi#jVhnDcF>;]^S%K/'^ #/\\<5=Eh=  bl׫ W7OY6rtB3o<f\hf* 웇 |qhfʂi#0W48+??~~MPU-0V܋Ԧ pX0`vU#]??"`l S"T r[-UFQ g,47~_"mT/ef0o?jm:ñ$}-\jVl/35g7B4tYCnXĸahx JO`RHZ׊Yyդn4,_3iRP,݆O6Ulc^LTّ'8#ge&n{OX%cuuS3Оst P('Ȣ?*]l{Pՙ5Eu$.5q}>ܺd ZK@*.F-.gydP`na@Vlz/w S^;=XkᾯAWVFP*kei!o=c%^Z1[ R,:?dж,?bxd;ĦPA$ *,OZF_UI&wWY|=ogӱq>ibm7*WG0( 1MGoq%PQ>(*s hZTō `fVsi ׼]΅|H amd'&"Ɩ87U<{)jC֢[5S53MEg^(-GF].! ulͿV}ŷn Z|Y%tq6'k4tIÑӊGnUl]O6%[*I4*fi=W%g:@:NvV{cOֱԒ* >(ͽ]{g ܪ_ln=UW0+qͥxӂl1}7TE>gHJ_iɝHƝbO ]d5Bmm3(:1z0 &a;thpO^6z,uB.oՅ0 X_l5>M=;5 bfUWɥaٜeR _&n~-hp_pYY蟳;a- R[ jgŇ=:x$!)s}*ib0\5 Η:y$kC>u>*KYg>FvK)uQ@5*-YHN7}ՉiOj?}b3BAtܠp*pE=(q3z`a,sLn/k礚7OVnlKWeˎ6_&APvv1!FP+vIS:Yo]2qî~^m [:n ̈́}-t Ưۧͣ~]"EJSY]KJd4ZF|۰)j-oZHY}L- N >ܫ:m|&RvSv4efZC 1N+uyгEё oz AbQlAP*EPd di9}VNN$<ϺwD*@S=Yh*Fl}2(IA&Hd~7+"Ж~vu*ډwwb%[VDYEb6š8ͰsO DBWP,h>s5$e,lzxyWހis1f Dc~+ R](jKX/6f cO\ zNJk{Vz5(q;yN eǍtZ"Qɵ wWJY. |kQSzSq9W$k.|X#8FAXJTD:-lVA<%RaU@ ʚ1< 3R2AIOn?nY'R-n=)^E kO±Uch{g[/ tTw!R2-0,nԍx(膣iYsni字ƈ?:`k@:[BLFܺ1Lmo;5S&_UT'FW褌eHsS06$&;c'9(%>sӂpI˩. ua$=d\hu̫-@ mww*@YdU Itx4Gf.t|]uZCs*a!cI2" E'߼{Ĺ u Oë?+Ľ,Á}x$qVA 7[;dR,אGf'T#"wkUzI5 @fub5Ip ()+}t<1N0* Ky^ :($EY3/*B@#7~\nJ9;pU;;ᙡf䐀\ J3QgAJi`&*?Vy*mTn"s#5|ݻRe:ĥUo&0g\.+q.%#]>QFq`2RV~wmj\[._Ttt<`۽.O@gJv3Ϋ b!$.ONQwU6M8!l黮wEك=]:DR+Mn b6#c|K (\ A-,xj JmYkC n3srޯ!?j2?H:s`hg''H@dW!dNnEV\rg ;D; dJ:7YޕB2g2qZ5-mkD?OZ6V"5aZku [R.&7q2cEƐ$dl4~u@v}77^:/ ͆;+FAW9&I\PYhp7;iӇ P1K킦MM9K/j^R jitB w-=0D 7"ڥqU]@C'C\=b~aӀM<0 0Xr~Ԙ'b,0.ĉ&Phh49?{ ”;ߤ?5[JOc AFr1⧒9x[42fRJSPW{S%mohwM!B`ѕ%n{\ٲ%ǐ5a (g{(X.D nhWtb*֩vyi>1ek';dMY5X/0DcU&ìs(1T8,=24qkᑽ/( 3a pV7vލ,AP?!,{K`fĩu kzcyRCKʈQӌ"keZx%a؍ zG`,[TC3(fX%^ TmUM×Idk{5U&T\ epeJfH>''cyu} Jir'з"Ѭ1(HVPUЈhpV/nl' P@P62mrNh0-#V1YJ%sս%[nb%✈f^mX'aZ$TF}C$uN5zHbQ}[ǖ+׹AF{9 K됀u6ꟽ N.,cEݟA (PGìa}_LRE'! _MUlg =ӣ̥s0i9<C,p&ptՅ[ŠBV\}Y҄G/y+kxrW Caa,ȼOb7ݐUҨ+ l>nbBҊgL5B t%۪Ą⛗ט6~@i{5pi7>4Z(b7TU !&S5^,| )迕50_α,?9~4^%D/hm59q#Ai9wT($Y0Ř M|mflSjc MAܜ|e5 $ĩX|5xY02i{MR_U5`%<#6F${naF,n.ZIY^r#*Sg@!:zdY>\A\MqټArom4#x^A?g^ˮݽ27g&e͉_( \oǗ882MMѵm3eb l҆ͺ*>#xI=<ٻ## #­ĕ H 1##evsq},D)M.pI'EjQu/`fDǭaSCGztieF}6VtoAo/_H >kLiҙt`nԆ0y f"U$/Ri8rug;{ϔ`a K劶ΆFLIȒT" }F-;Vԑ">kw] 7ZӦlf=#׹̔NϢ~B'O@{ɸ9 L,ĠQ/?ڱ{MnG"3F2υiQFC) "Gf^)z&`{P&puGX=jZ~ &=6saCÂh2x.-3kS 씒?p`/3~ֈ?"GI,U;]d#N[xb;:hmT#F#9nJi0GD@fA#䆵A%̝[-RaCDTN8Ssr4 ܠkx2?W>=}iɊTĞ_>kmܸʊtJO'ȭW3!_1p {o DiƦDx&È9B$k{;A794>ΩMR.i'geA  #~=q[\PFée}L Kfqk>05L:LYی}%yP#eY |z-T87sʅwY:9H5#`JcS{̋fe c.M+ r14\ *eZd8vmdt#sPPPm$D1<*w%6q( YD oft17wj)lvɩ,R&(H"3p ]2}z ̏ëku)Skv}b)[S%ikp\OUEPZ3ʜrPi%_&]1]~.[v_Op7u3z&>[%ҀS!9E#x\)Iyןbkd-N-J`meͶF$qy5_ʹe0)Q X=ޖigk }m} !)A۸2y#.015%hP 5\Ey%g|>#%*&-07Sxt}aɵIy]e`EkÁG$mS ANf]Վ Lp8\"F)PEɒQ")6FA{ &=uZ,=;yE|RĬM*ӱNM*$bǗ! rSXg}%^^g; й&tQ xǂk ?ʳ9 YR] ek[U[g3͕ǿFۙBWI.&mHG}\3:LfѳxHw_ cq{?,?\$UB+9C9(d{=_DEuU4"ɨve|7VJȣ@+?%X<i5;t!@ͽXSU`ޠ ^~bV5>U(dm&f\tכ= 1}0 Z7KZx}%|xe5d6@5Rc.wd&`h.:ZL Ro_cfpm ^6Oe(TtV%-bG</g r]z0w"xd;5iljqs`r_|nϿVe?.h!f@!QPd q#WuL D [f t_Olڟ{n>yXu%s5p>&9Dg:f 5E>/]O2[Q?5)\cat4^g`&Ut0߱ս6| E"`c=}CwpS׍{ҿ;\^(F6ˀ6gץF\)r#t=)Uw7$1-2)KR|#tiLpShyWDgƞВ/ [C*EkucNx(][jdSI֔ZV\ pp^*ם(~dd=?"i$ >BXrI[O ~aGu-]E ktS~TߡlFėȳN;yVgU]#)%~8%j|#Ż[)RtHdp,љ M4nOpr_3`[؁tOrbMYj+oڑx Cp9Ha0u<誈ط{R_?ma$ņHF:˿x:!Iv)gz6!#LN6 I*XWcΔdPfo9/F}j eW٣q@W%UD;ޫ1o9'Lnޭ'+;{RsMlB$$;W(٨׹zڜ%m9$"l䪞B(;cn7r&M7}E }3C(@OCGuY0蕮KiCv'7{!5um s!5<2yU]߅'xNHcW_|ڰv+@η*n>s,]M5FuW9;I08gH:ǑϜh ~8K!Li3=b~e6V2`׵2[a%`PJ^=FDl>44tG jd\YD!ys X;,MH1)X Vbhwa?퀑 !y&D~z:l)E%^ m-hGޚ9hob^ar|Njj# DՓuuic+Eo [Ͱ KخF8}rvkSUÎ< tEAw8f9#_5Otm!v& ,E;Rr֌;22GN˞:co8ka $!Vv vADp )ؙ{E{"Qbj+NMv,g;q +V9vcX-*A@=%;ѐQ$qZJ"Y2t-#Ć3<"8z1H4/ Nzs-nWI$Q8up'60s__)j2ԍT,嬎#iy"PHe6RW/9͝5&*F۔ *l-[6?f:1q6a]IX-Pmmdɸ!Bz"WS9Ul|7A qdJ4%{9X z6RmArqnzSgU uMUZm*laٮ7V՜ko8:pR f;GVZ e v8m\f*b%{`lR W ~蒵4tqAQUvF:jTnJ#pftu u>GqڮEC94 WPPdʎnm.)ؖ~ZE=g|{y$lU\Tf5i|DD-N|S# (gl@ew(p"#'yP:z:H^ݲv4Ѱ ֨V2cDPVk[\glϺŶhe6 H[Gl:. Uh^5xP-&@@*⁼nj ,x~5::bUſI><E_BLn#}SlT_F<3 chz 8 TwF_n2jʋ<,׳"|NEǚyWMM4v@nHC[E9|T$]QϿIN)mZpkcOޒ{BèN:qb#gdTh*5߳O'e/T.n}J/Ѓ7[%e,Rl Q ww?l VAI?GxGx7_ʻt÷>&Fҙv6ۡB›(KrD0n$/#k~HPWQ pRkox+3Hb;6՞ +`q}.w)WhbƘ Џ ~l£kE5U)J;D]ںPJ+37`Ӯ%˅ 4#v8Owp}Q&5QDzfN<-֋i!AmzCm%Y(߂Q'Agkӽ2)FdWE]:6bM55 Ńs<%P"U %dT<{G6☑bY_|MJgK}WbbIGX~ㅷ*mlɤnàO FҺGT ?>lISyط! xsɌꏊ$@R=U&ćN2IWkrz3}d6˱R;LNIr_2l79[Z!&/ H4mNt׌Ĩ}ӂp E--5oQn5}d 7T&5LIg4l?nq d2%wz`ԻNґw @ S]%a3UTCЊSjY$]܃=sW.>B+bQ \9#v솽^/D]88@bZ8A'Sa.~OMXJB='՟zPp}ȗsw}$*t|R7X'۽vݥ 95 I.f 8}U<&3{y\"tq wZDs)[]Uj!׌E6g +Tm z<(qtk &dwK LQQJ̹?O:E Zo"szD])%K|,oB" 9+>Pj,Βư٦4BBt{u~8_\ FDy&J`zO0f,|ZSOᗔA! |nPV;gјDt, #ŌSnqkzt!%sqSP7QG-^2?3䅨lrչl۲n['cw :zk `yucP$W:m&CAL]4X,~,@%~(uԉqC s"?l9xuec-CPv4\4nK1e5}xXTfT&Vc7h ܪ}]Lّ%fނkp˞A8tpF9~ݖ0Vl˜WYTA|2Љ2pB7y/P[GӼ恆 "yqAk你MvХuޗ/mvh/_u;0צG:u3˻^B ŏQ&A_u ɳp( IV?RەP`4˞-Z$s&Xrkȏ, 'oٱڈ$ ^+(A}GhVNbkcc764_QP9g}t#B $,vcXz7$ExfeSp Rɔ .ͦ *jmgzY=eqmMT˳Ie%vmiU8S`{s$-1lg0Dw#4Eg#raE QV3g.`ZNf@9bA۽T3掿J]@j\gVN7nu|,a09nzU[4>pxsbl Y+?E"&i)ɨ$@%^!{tl#YTXrPhȔ-gtHƠ»s0^r.3!8ylԞ#QcKUz.raE3t vemEk>4Rrs72Bxq MYQ뀌lWۭr~!@Z+3E:KqtZE$^t~'?63^~\bHEyXTm6^wA 9Q.nq]Brx砷bHՕp- h[KoՇ_ֻw\[Z'mй" ղCƚ]Xxe?Pln#" ˶sew8ZžA-uN_ hZ+~‹?%#*ź+֔'{sK6%!pF/lUN&&ms* XK8\-eaS,:oY6 %ِғr] ɗaQֵ.m_GABbibgaAZhؼ|ڒ$*xlA/FڿO/-z>Xnc߉zˊa md*NR1BΪYݼ03?@$zwPsetWqEVQ<)UqanDzEU-r?3[Y 6+pr\2%{igz΂PQw놝C3B6$h`0 iER͒A}I_C1j풊Sp840ŔGTsX'Yo姲N{T킖@ `zJ=7]{#pqSk08]hpaDm7M?v:љ|8D6A0RC}p %LOil-9А1' E,Rύ)HzRh3X.Y *9ۜPaM8lBΜ[gl'?FdDNzKþ5ZTBOPD]ZEm:$WBCі1{ndŜI?E!P#.^ a:z#C2Y&{dJ)CPW,`m;?/S1*nk^a@VJT:ex `c`*fd%S* [DXa1bNJgj̖.~(|Ŝ`Eƻi`Ú4p (Akwms)'vlFVMfb1G:L{@w_M{_G5`ډa|Ip ЊmGwށA%׊oI{d)$ 3'{7Uz"r-A\FW鐑߂Oo5W^x,e+chqVj ~-L2? "pBm: 鞬\Nޘ{Ʈ6(~ڒsC2opi5"(0ȃ2A|z=qZ,mSbRfV5MΤG=Iyn]]Q䌁ۜQ>:Qp_=Pul GrŠngۆ ?9Åy*O1c 5]")@z?9d"L m?"9YH ;NgQ-Ɖ[k#J96dHJeB耱o Aߞ/qa|Y0Y6؍µD|H.9nwE+U_U]b*3 tI?2;Ϸ c" LwgIktġ!\}8)]bP;uy+"N/<=tb%:q'☏x;zA$q̺1R- %~6/?xbȤJϻ{ƞzˏ@,&CxFQ 1+٪c炁d9c kvJy %wl\dmmB+x~fA`/\qZRce7t?H XJb4)\^Ly'` 1T3+؉Υ <>q*Z0/rq!KR;Ƭ;(  ZfLG qWZzmյVJy*KvjXL2.3tެϐ7{ \/o%]!  yD Op\ZDe K)cLt圑Ia?MaueܥExiМVeżA:^^G.h(fŬWoffxc KҺg>0#I<7*^~$ TpU';iÁUq%*Ϯ~~7t ڧ޽n݉mVOE9 ԸT_/`5Oiv"47{ܾOpkK"gʥHO3vi7gU2$ ޶tW.`'E,t 5VkKЈS'G[AZ&D](#S >r3ra%-DsrT b1Ez"r pkoLx=Qx&Lf.l䀋U'Z費o{#Prxy:M{1 zpȩ.x~:ELTy7b*S h2xcw_;B@ۮ=<.*Vj~2Qٴa|c"C6⟁H9Z*zQ0w%'(sj6Q*\eQH0ohA/UC)8ylx*x">@øPBlbx,r `8{dH㱟c9_Ꚙ= I>K6\'{߆Ĥy.wI{^7Z?6h"q )oKI=O:IWj_9ݥ˼r [ɻ$a#InJ1}u\˅@8}'l]> /ˣr1KVCa+4P۠VV[oz])9]$2cKq6J˔KfEwO{)ϗ&t$B Xl_llQDpB bTv՚u;rO A<߂|%E Pbw9}xn|VM^!2իZٲyC|Uc-#оV%f_retK\O,eHA~.N1 zO:Gg͏G zEU^̀嬾ӽ}-V:m?QH/TgC~N)6Atجx$R.痸J9'4; ԭG-ruZ\b2_1 ]Fc'"lmhN@EUL ]}J^**Ӧ W9!Hzc>ۦh%ke] %FJMjyn)qkbpǏ#bT' OnL5WEgp&t(ϼ5=,99vsn;!+_6$ 2v(4N ql}dnEnG`B\Eo*0 $pTglsBk6BsLp:7-5.IQb`H/]GhI=V}SB@+ď:y~ *࿃Tma :_hn);ynC&8ح c>,I<p:=Rb+W.Ƙ{@w*DåHZBʆ'T8#O*)`2i@ǖ-OHN_+}dDF~)R\?F@!Yju3)hwŕEhjplD,kj60r1_݃Q:CNJEpBػo?C7~0 یä]˺6=RDRZc2a |fۑp4{8Zv pxi* C|NULJE9 -rA NC}ܭTY2]FhֵM ѷci9ēkGo| 52A셣cO#m瞫yN;5FJ^ ck8]z3Y4Qi𶪝!deF P'<[c萒 bx~!;Z}+pݩY2{Ԋjh"{z:Ɏ+e@^\Jf`%6ߘ yY,S-1nڰ-G32TlGviݫb|s[| ;ՇЅ-TeRo~$Swl+)T[mA×#|>dEcf-,xy^̧.1$XĽ%lSt>LJ}/AvZZ#U;-"n9=%pĜCCV|-og4)W֛:w7Q7K>T[ڄ0o-p(C6Sb]bUQ^UV]dŶ9 l;F͇eQMÙHEΌC 9Lڀ{&/@!)k>[?Tz8-Rki(&+5hJ~es)-w]8#ӛ VFr}.3=<"/.(Ph,{P |.-}f'7j2FO3Nϡ-؆ 鑐 蹊eif (6ff!2ƙ Ap?]KQcsdѩU:`;QSGCVmB}nifyF@ݔQ!B˙"iPE^ FK[ Iv`cЌJagA߳_*@7 6;$;u=)1MN!%pZufppI{u#<ϐ908)nq̣MA bLЬAa7+%Bx'Ca^!hR&Hfsc\99뗝@)98`6(.p b`.w7gQ~Zm3uݷo 'RmVA SZAqm`3RR@g~IPQ2dKu!vڽ:+\B˭(/VGSz' U]5f5[tJnH@iOI@SE၄PDfUyJ (,JaX|%fo+YsN,e<ϊ$0=ꄫ%udÀ}!1 @v9 dHoo]9[b9 &+qBؘfMp|Dnv\F7?r`Md5eB.rtkY׬XV@"<@׫z_m*pزja ~wPV@JBgM,%Q؉jD^~ٰ49NX*: X^O^!?_Q.ݝVڞO\#"]&C>I'-X/\Z NEԘ.^5Az/Aͬ-=e,,gk8jI O HTs빫CDJ[H| ɉ bD+=dJ~L/RP$rxnnETȞ/ L =j Vuq* g W_ȶ\</QQ9r\󊌠b ^gEG`Ny+7UE4S'y/?kdpg=oB;cc6Fz2֣] Ew+X!J%fbwX}>X| 1F38Ŕ~bջ]"T&efy4&PߢlI{**%(׫57dom0qK=FzUq4uYܪE7inI( =FsnEԌ m6kPUR}۟M&WI%}YR'a ѕ&uWV /lQ+ b=kR9Pãd w,(PRB?9*ԗ62@=WGo:&f8j^,)+TĬDh:m1}vtZ|Bt%%@""q\̜߰YDXhyzAe D7+ZQAʅL[QX*s@Mn:v.h3+em 9>x`JGl_.?+"LPJ9xhF4R<=@PN7 VHX1ۭlEL__4h2%fOl8vGھGVXDxGp9DgV.iN-k`}IXL)ofJp5&tĭ,j>'w*}bH7P' q[z鑝rxd; [RaYCЇG{Sެ,%eIT2py YmB#!4%\Ky.oq=6IHWgvA=c0>x;r W:]iMɸ5_X4;l_';g 29T1GI_hmGPYv։ڵ@I7k G)̸/mգBUܟ *BZѨG|ƺ4\KHu^0V, ,>4 `dW 1hD`Vϖ1qt!)Kz*JYtZ5b\F7@p#!vCFr+ BV tlIXJ S82irM%Qa rE_wq^#Qsd͚*7nlv꿽w$KZ8"X/ifB;*g¥Iw(zIT26 qnzݴN3l\Զo4|.2`0|"6daDRۼx Z%1Fy͌>ӵZ{zAإږb "ENɨ?U"L=۩}tmH,O> 5ُX Eb MTnb]R ]%p3&XrEeZ6J_.-v,gƖ[%PG.D\1#va5Q,i ? 1-QBF@&$UؠVZxCg_W (bQ _<"@ZO0]l_3&_D|k#"u1ΚX }_8>)LTs!ݶ j=fCq- sՂ&iMctHv0FtLa(͌tV$a L3֣Z끪-.hOO"H_(RuG#tPg튰wOԚ h9gu-v.n,c#|Dڨ`.m+O**=a%a~ǫt ^+!|{rA MbYE]]8Z?y=JOcyG/ɪK)fxJ]r#6MDRod+d1ǂn:ħ/Is! =e4=EbajEd o MHRm q=`ڰEPS[]sK>-[Yj7ί_ I'rXpiߣaT` ꀕpa3c $ry0/fq@koݛ@Z2s_mrWO_O.ծK􉛣a''^3+`t-&#kY@|22n Ȧs!eg GM#:~3r\LG+O^8lUXВ6$aVEz(n` 0WŇDFX>~m'X-bM<ކ`C1A,C=ʝ<=TtMe{Jsye !Qgd|)]>&j7x9A'Q+?k%v  *QÿtX':'PstL˴y@3l4`B903j} \d;bYè:6:2{Z\,(^f҂qvNmqS@5X|}‚m``wЀ0V.z_ 㟹t J %:pHH[ΟJ Γ /RlY'o5D?YVDX7JJ+GQލ:nڐqs풀N!M|i&o]*irR!gːٽJ"o+9-11ki!n3oױ{L6|BT[!-d( -J.wleݒԂYR̗:GNϳՆӈ+ &yپ *VG\vD=[pYJLFt$bVq\7 EhRGp7&LD+ݖm. UzԷ"/I:H#5PZ/aaR.RNv@ʑ!X1cVp)Chd]ńOhA#\l4E[*/n~,`RK}YD6TJ2(o3s& wm=E.ZgI0zD5*FH{ڊ5)nB ̙ Xu{m`$]9 |X-L 0_=`tVк&zw fGxs(ZuObx\Bq 1=fH+Edczs;MjcFӸa]U&eH=sL@v]Y8֞5BbD_WnH>nwj/!WQ&HG NIMp?o CºzaģDs"v~iq_: }TAؗKlT^`oj˂/PqAoԎV:Z7ݚJMp1C{a^1#n 3 c1'۝av+D( =8GGIO黦Ce"O 6+RuWԖAj;X=DKo)@ݚw'(+!:ئqK&}kR^iQJ;lLK_=&ۢ-]9QqLur|fO|֡a^Mr % zԲ՚  j^N;6Qq)9ZVDyC?17ˋH8J"ew ͭm6^SܽD4Jy{ASiҥVL}M8^K)!RrV$^~'IX1NF2DW;qgvURu=вNG1kK`aS9 Nŀ v*sV/$`DI^΀hPX qi ^dXOUyck*Xƭ/5, T}g '1 p"cXgcUGlG\g;@s7P2~}?S BS脓]o2֖A\\j# `?mo W&dv]n nU^i]0HdlmSb񅉍\^"c4|?ȒڇJ(ޯPǴ&IVI&B| "HMv4B, ^xoE Ŭ0\o+ϧ<:7}]CGR{O7\0F„-=P^ۓC-7Yl'LI1쟬k6goQa 20PoiN%}zwͷj|J P/,]0,ֿ%m==ǂo y{* j3'8(̚ 5iӴ%Ĥ:rGg1QϾ@F9d[6_ ䷝zM`8fqqǽ$zs:NTJ]"0q]WGc"!U†mDEw j;+*Auܔ3޹/_,%mx a"YP9t @e`-ktc?8Gĉ{}9 X^dANix`N|er:b "k/AÂ}[x}x8R{{,l80sɇ$뗫lCϔŖ{+kO  _\*J'91CtzŪEAf&eȑC5==S7O! ޾w f2)8ch=C+_`3@c5=<lsI[Cے"{{.\yvGB]P]Ep,(lOqMM)ϛ4R?ŻC4 . gH sȹ&&XXovU&w6MkJH~˕į<hBÓ()1,4 ઁ#zf7S!߹/*SE!=ZFighqs^Nd!RD/v}bsˬEE6 ؿ>4!pFh*']HR۬~UKwÆe2zDۧF;H7KUSO2Zu ҧlwC'Q$% ?J./1}͠+wf-&v{X!z Åd{4bZMqj OlkS 2'䊙Yů4΀Ǵ> J^46(P`P/;I`ǥks>tXC{hZwg &A dZ&,9t[dtVbRbxr7l4J'nB*a<1 Bi̵e7N{@ T#7& J h PŎXx  Fo2c#ޓ 4ϰSDS 4B}UAM'Aݩ[f7h!|"\HgMVA&RaWZVCZh!R4[dcj$KFL\ Ib_L?gۜ\1iuwƃȉ垵DKfB>0K5>ӓhu^ ]ߛgs+x@J6?w-G@M^7yUjCdD Cfz> Eŗ )iIaz@eΐr(-Q9 ,[PsW{_ ~ (/יR 1k.`ɼw |=*(ѭM=1ɥ 1z,MAasJy VԜEbᑦ?k Uշ_!0j]"L92gڔ=EDj"GqQsr>D 흦aGaUpLw{ B)I޿;gKdE=+x Ej=bW}Smj;8cڽArƬ_1RRIG_ [9s3[yev94{ CJŠ-q"AЄ.:MϽ>fJf44H4C2.O[GL CK4ߛG$ %Dz&u榲|b^~/X  ]~SS= Ֆ!^J;#BIYD]e5 crJ/#;)0ITa,i?jrgpLaO@>/oSJi ~ʦ^:X\DYaLV74/hȢxvaQ\qI, C:**j %>\`ZX vq`Ӆ$_\dAZcbZe[ S؃ek }yܷBQ[{PCG[֐aٍ&^7eWD^E;@KĪ۠k5BmU(DW?bo Ia9dl_oػ,$=Q `ʵ^{ägP 4f([viF-;_ITp& w+{!rH{@fLBM8Y<0Hҷ}=63b=' T1~9l)T`>al5+I64-~C {6v N2}6 bryRɺ>Iq[g8[H;+~WeWR[ &,4ǸObl 7~ߢx 7AꝏY85.:3 tR 892F84#>H0"v/`(d෩(ffo Q: Co6\H"qJZ3%? pNBq`rwdM~ stnކsuEƪrܟJ}[f^ g{? i{׮U[ӵY3nCɇmy2D#A(VGr@}Y{lc) xU7 o?x믪XFj(3:$c=hYZIxY46v3YoCh3x֝MAٵ),u0`su91<CRLSlG4K0`|Tn B`XZF/6CؙqTТHR h!ܼ|(8M^KѠE(4Z{!P2/:x POe|Qi{Ej(1=6&`%%IWHl{'Cc HdNAU%qC+;'.uu^z4ɡP9HTQd7A?3~pu ɂ02Q4y0@Gaq[C/գs:SU|jT0G*bC`q ؼC#<2!jUJ"4Yh1:< nt>]7-sʑzϳWWws z6@6+ Or6€yݴ I4'`k:ͬ S/?rثefخNx436Ҫ_lgmw]I3Dg~|オEeF++*U9;ƛanXHW\5ȩqpSxONrPG`:LS)N+aWtYӈ!qXGe5sA% )~p ΍ Q?VSkzQK5Xg[\ zyjVV_jj}iJk>' cvU~**E2lo2:W. wAl!R>{!yRRL`uYb@ԑVfs 6Vz:o@ >@ScJ(@75^O 9pnV*W(wf-1̔<3!u0/8z5T0OnzDQ[;tXL~X zl|2z)V4Gl>(oW2ˡo.LY%pŷ., WBl1Td҆sWG'OTsO!n@WD"vT:@wɷY_/D3ЅZv@Ou!.ad7b49i:v4= i׻r]>7ѽgbJex}Ką>w4* DJAqbF_3iD=@ @ɪhrA 0Uee7TtobB %.++Uݯ킳 Ql!N Y3U* j'6rCAD4 iU\Iq暟Sǘ-(K?A8s- SBf#N09 '{MO3&d9ԫ9D½&)F Gm˶ƌed=kirt?PX<oGŢܬsFd{ +Feٓ.ň ܄o#ʤt'jy[bad>gXyqZ4>-?H BwVw*u:C_09[F=Ɏh<,frY*~}ͅWa0u (*gx9KL࠘KL Qr6V*4F|URzf1{Kl&`z $~ҏ;|qJV.LX퓳{Z,<(y.F×a"yi' }1EkRPTbҎcT˯)50;Jqy_(\S!w:Sca5?4iS)uV!dԵlf^;&``k@Z=;ZV^ounSY"T@8\~@Β_6%F2` 6X6 k ]Iv< ΞU 7C-8Ìx7~JI&7,NX}D gG6iϭ˔<^ETAGTǩ\i Ͻ8!241y7؎('\yu-3+/Ts4QHְ>OB&_ AI_B煻[P;XDXR@)ǪÇME:ҨiH$ر;K2>^pcXAept/ xLuՉ{P\³z,6hV\=L-8 BUQ]n.4]ḳ4Y>u'$\%0/wN?ոK9삭l^h,p᷺vAj_eQ.>.);P{'},1 B [΄ HWK|4Pҝjy> ɑXҔe{{a{ɚZ}]%{WDð;'㒑&J $a܉[#$F,y̟Pe,SAT8ni3Zi)Qw)hOԦhGPxP!aiHuln~YӴrYDDƺ_ߠt+iu%Q|:f gv6lLq]x?@Heh lGgwԝ"!Z_@ lI;Y/QMq i UߛүB #8rƊH[d̵GU`cqYTbHH8ׂi爘Sp[n@AmNKY{aH0NKEdZ݋+(!`fhk'#zx'].K~ ZШCID﨟%".ih`Gc";UDz{Ҧdܱv Lނp5-k2Qc.І/%qV0F'l*WlNGy^4w h'fˑI8la@w3y,!=yP ci|L!_?0G?!*v͋҈*;K{hى$?i^wPAwpmN\>z~8jJgʹ|bCgΔE!ՉXKgO䣰d,(dž8;跫K#眚>eDŽf-5YA\UԆyqbG0ݓK#[8MI{1g_O[b wS}s ڒ@2{c05]}8w`߻܄Z 铷>wLȿ'ԧ@i .ED$"yGdv'fX}mDc _͖s0\r;n޵x ]Í" L@'Ou%nO(KTiȠq[QXm۞Ch Dv}yDyzJ?ⅦS"ɠϗ>rVv3Zs%&UW2E=O-'h$ GJYcvcEyGVohŮ qiԆxD&zTSOx5I(ф#6МK+f_x_95!ʲ+슴nA#RyD+(\N0X(" #/QzzgkSU=8YUj|<h1H~|pQl-9\'kI`gL,%Z PdD*983']@=IZoq1{Qs=Ozk9` ?L]ZW#.^Z$_'fUI)bk}L8jRj~3<ȷ?>/au9wN~6P7Ul P,oty1/̆=-j WZw\WTSv u8|M4੔I^)*W_}L=&\>'M['500D:fYD{Do6TE ΰDHK[j"n;PY.FRWnF4 [6B`7@YY%8n+\HqYYEQJ I' 4$9N]], R;8H t "rɀs$ z=ző=?ء7mm}ecqٕj-d؂ypb`̕\"'3t1y,(W>步.k _}-Y2sP8 b[v)~ZcyqJh'AjR;Pnn*r-^8{PjۂBz=@%巀%QNŖdQ8 "DG@;-f^uVltגQ zf$rHy̎b5|?=4;{+ dfNj9g_VcF kXE?, AH%xÇ*fǰ1ifj ě2iY7S4~=)׬Py3Kj7tmwh5V,z$i Д6 A ]5n,!PHH޷RҖk9eB{=YiwԨl_Ĩ'|q {@ʌs~? *E),⺐tC3#-\rz[nv7䚩tQqC< ?y:8'gKȒ?Pqs {>XDGzu0U*"`k .{jRmKIg1בGQ9'6'DERI3ifMRm2M N%?pMyB19`fl%O("SH EBu&{ Քalu0{,mj1y%}#*`‘C eJp_Sen"8 /)I!@ PCj,EX; z8M2OILbCQp ,d uڭ#מL卣կy"TZ Uˠ.XF/3Sqcu̹Xwؠ䧭2@z"+]xU[IЁr~n,4%m|𒫥^ݲSQvamV@)ϧ8Kxm԰ʪ[ vZe^P5e͘:m%LIJ!B=é)[Rh$y7 )yY xѶw>24OO6m0%밆 2Έ0`Q^1 I&cHSP)>6\sm%~Lɘ]uF"+.Up`W`80R52 4FATeV]F1j pKhg)WߑkM@̸k{ZkC{J&->+RﻔrPP-{]`.q ռv-kӠ`}(Q;uDF2ymE86O8TTSs#賵/AJ?Ce@mIif~v?E4FeAQ$|Oitʝ/Ckb^:EPuN %4 ,O^ ǗfYtm/F(2TXW5hĄLo7}U"cF|gHM9_ Py L%~6b?lrE|RŸ42ઋxAcj2y,iᇡ'XHfg̠˄܃(ٻ|Thf./\,&< m 62$*d Q HYeyd1wq3{X1{}9 _m`pC6qшP8-&V TJV@ZpLG{2\ v;`^q$.YM`~09<cG‘Ws }cXΑߒ|/{F [k%|_--㠂3c. mbU S{F[MzdD/Ov̙"6ubZ 'LG6k$&t!a} ~.L2m{JkGLȔ*l&]ѭo|ٟ{uQZZ<[ aP}!(Չ? xhEx]E>scoNYH5Zl&; xCܽ(a3 ~O/q×d3ž 4w;RVb :dN;K*qΗo9gV ܄FpbuO9SRB'(\-,DJv)l籙'oR\uαPZ7oxPydUk)}TمQIjWX0¤SfC˖i#Q Я:U 7=aQ|Jʶ$pf(:=$g ɷ>EfDݺ/r[/d@HSaWWp"):,"[s [1[3+Tv1܉!m `kHQ,"pS p508 5UPNd0)ꕐ%_J&c:&D{@=C٢n9eurysVKKOˣ5wbO43Ali3v~ϻ{xчF49U*RoB1>דE~|^չo+4>.ßlŁQJө=cI^4N,.WtDՁGJ 2 m?7\q&ZaSkOtT%)]ekptln9[sR2DRDI #xêYh>) Anj] gU!FVjC^lsE9J'R)X$i5׍s{y(Z_lͺ7w,|XxZllmeCsȹ ?P OSq_2́sԞܟ|$9Ә @9Q4YZ9#Q !dշ3 yx-ӤP=ƥ&ozC%lTi2& .?DO YI[--KB]⬈ߍمo'ɐ>A bTk@",ap-;CJ>NMtvq<Fɼo K>;4 fQAiUO= JZ#l̑ XQAT@1_P·uqqyst(\`,X ;Lj(5*sNa)^:ٔa[(_:Y'ut"!=[=6HDO#P% *HE^E$SIvMA`)h}OKdq'6: L P4vqMv7*V|!&*Ө 8-҈Y$p<,tÖ&荸s?)ݰ\}._D-{ j 6TEsZH> d^+PJ Vd~r/HjU&LORSf~nh?R+d@RpGy 'M!l>mYZa"amA ,iw-'} [^ԓF 4]aPFWC/?/-jl%7XȋD M?WuHN\daN MaX:.Hf9@0%,H}hx3nuX eL]Uhe\Yg*9*shqmHj0FLzO*<^qd![&L! M:!6mk*}<`,`Q&ϋݵttjt+ZYLn8WB=d!\&x9qډV\N(=Ar} %=y8~WoM'nýځT- un̴ĽmxL"t *d08ruUhK93g@PE AdBC◞voϜֻ{9-Jb9taye-ăC ю}]T7pk49mc؎P\o8 KP?.+9!lY֐;7qFa4$}#FX"9MƦ-ǨZ,,ޟ-uߦ%z< IN/3ΊGAm-0~}'7ȯMq+]Q`QZ%Ⳛؕp ;/g U0dGFˆW?= x jl̢ 8[]GD^ Ye dp݄/&>Vu>pW[f'3 P"DlDpi3l mlviԔ~nykZ!UFbչOG#oc5Dz6tijyw X4]9\36]0їȃ‡-q7)W}{5&<;}^66C}qSu`RFO@xùdmn؅]`ȘyA [}fΔ;^1Z`]rڲӃk?WZNm%6_śi[!3RK.I.Xmrqށ~ @{;D0/>Q)hxQF*G0W=r U0c g"DbfC[gs5i62XoJ/]SzywSӃ/#FϮŤQkqsb%{8S ]TbdfjNϽM+rw/ѳd pCIqڬi(v!gy'|+bNZ\䤥uK$Fܧi y Fc%@, U x+z\Jup]a*WD>O؜ٰ^@1,ԬM#zDٺsm-zP2NS.+f=u %-]=N,,t7z88TmLEԏIf\Rf~V^0*ϱ#L%@W Rxd@ZUq+:$t|/ ZWzs3m)xWJXHuna[&S"S\ zz<ę.%0(0 I5aE8ix1@.%{.Ȩ t4w>H6[C^άZ6kc:{WZT]aݤWucY!of DY@T=VE`x{E뚩F⎕<ϖbcRtBnwV)*w}xP[Ks?n&K8яAV16xD͓Se,ȯԢ(2+Bfn(xPGx&X`,d^l;$="L!W7J68dioiPTt5`#dgrd x;sYi g{3yZ¼#hj!̂.^w@>f1:EkސY~Jɛ~y&MM邈Npȇi&c:o R?G2J&kpĸ"|QNNo- B/@NA_ "Aڋ@! ɬap}&SK+)`JۼhLt(, I`i'r%M fu7$Bar͉S39mݺ}.7_vjle#&]u^XuKhJʜ/c۝0<:<ŷ#lEnvmG g9; ]jpc@7 (t*YGl;mkގJ򀈐*s%EтpGnh1 } OMDW{w`/?C@rHC XI}NM\V̯=Ǫ?u{Xm2 i,bn/]lकb7*/L 9}*xJa47p'}Xp7C,~˕t\G˜ &1'E6VYхڝm{\~WYUUcQX*{+"ܑAx qc#wSvd 07Bī̍ "B;c)t2 x{{}K)4ߧѾ':x/cߜKu)w%8\HoVx_.s VR[<{^tuZ S1jpҥ'Dz(QΩmoVqCåT]1V ]񧩼0^\h;$ o6C屸#:LJHyUb0 h^碄 Lᑛ'΀Z ڼUӧǒʱlͣ5̽z,3~ķz>5C˱v6}!zmpݼ|p?>!g!UTZm<6Z@(pṵI6&|]; O-"dm zҳR)a!JPSqP:E `n|G5Ex[^4! 9t2x1DdfWUKyÌ J )xv\>3M ؟*Ԗe7 N8A"^My|ooӒvԡ`,I2M Qu¡Q` S ݔR`P4-;O8naI.@PךXTGXې%ϮArns\6DOiG,,X5.ri0hp}h۳̾;v5fgs< yOu|fgX # ֽUvWW"vڷ\kn#2n mWXZe%6g_g[:cƘmʥYD{ef.zylj %ᯏ5Li|KHu–'s:;l8 粭ԶmznF$<1޻"YUoҰډi"Qmڤ>A\ j4naI011LIEm) P֎.|i\~aVjcB,Y[u_."H9EYm S3t*?G`` FZ#ӶXћscbced:ʻyjYKЋ䯧l,Ncb4Rw|ҟM=pWh7$vĖ([qBvZml6I*#{}7BIF%,2Tm@%<DcD5dJa}ȿДed3J\ [%#ᐊ6-fFQi`V%  U3'jt q WK(RLzAӝ?!%*~u(@)7۹r"gL0x\y̳^Pc~YGe=ǡtB$9s}bQ}xzj]iT낛 Tt6}\ORPa\5eGUވX02t<8܎|JsO(A|alf:n^nb< tԺ`Ͳ(ff W)IĽ3yŵsߺ+rWCv`1'E:{ͻt.')L_Y3$ w[}`my1lksϻ 2ɫU-Žx2Ohv^_dL`c?!bI'Kȥh2o,7xRɀ q"<z̸S~% y<Եa/UŌ@ vu2~j<.lp(󆳪7cG,sD=HEe<ږ$ >:U02 yszHźq>Ϲ(^_ xGv?}Mw!Q~4 ƨ i>WJH!07{]oNQItSLײQfe/W6o/!X^,VVI>ҷ ՀNoT&6$3eޟL9JV0%x/֒#vh'c& hl"a 2EKb:|b,mu7fGo{OΡ}7/,r, }lMgBVt,IE1{(AsRΣ-tbE! .^a~Sq#'KCvkэ;(r==X4b ]a#l`σ HR%R#wwFjWo|&?GIBp8,̍M˨,32_0^WHg+ t^{ҶZ㣻E˭ * ebrb |{RkF{Y 0\<ϐzx %bC0侊ATfgDԓ4ALٝ'utvbǐrl~Nqp*fq#^@n&Om뗺 L&uPs_[ѫ6S-0lt']HfH.oAY*'߭g\.I*@-) kش.zϬ#ie'^ ?1lԍjyrRNH%Ml%@vǓ+:ҝ!x.j3cF߶kt&:_ !QeHAË\!}\åYa˺Sd?pAF[~:sw>f5r˞s~ \?R^ z8@"Se>h\A]3H_ ? q3s*& 4=7$/"zqN2]G`{Lculx{@NzRƴWmJ%y# gG̹ ^ .Eo._-kuavɽXMbPL Ysvj=j"VkjTD)SuLNdMN5~;1+ wnV631$TG]F O߰//˚aU2]R=3⮏)"<ze 3$EȊY5RKS S}wLsΦ\MU"%x W:!o? :wHeRKA=c35RLD jZY5ښdS&1jR`<d/Oml'1_hӢs4пԶFA7ӄhwDEyn`8l.!Y)XhZ<7,] g޻>m.z(+і4!:ǰ?b5 b;zΟp"ȿJ)j:X*D}y:N, p'ɀJ-;&jۋw"O|xykvH"߳TȋzNlQшЭ J[JB8ǧ\{ZR!ՓŞcM~)LiHKyzNۘHF|i1 R@-6^DCMs o;>Y+MpZxT!s김Z8Ѡ0\di|7}&cɠx[T{^fG皡尬96<[șJkF^X&MzfxPT$oT*e\:^Rsܴ u (/Է|[)0bY ":,I}ƕ.ҹp Z8xjhT# XK8t JR)L͚rYAij"T+$ͼ1CdMHn9"ԮFp7$ИWGh(*vH@C!5{vy*&e(c&_MtDLG\Ojo~L 2A") aދ)B $ C$ѿb4d8$ӛ[_>S;VMrh q1 #_UKy@;oHˬ !>ֆeՊ tSRzg 7>mо_ԩ6ns-v D-6 2qh'֖;}afcF: ')QC(eieG3e&J&"Y ^qnXπoκ ]+-&q.e[#Su*dc8>F,o zu{<"/ט<;M hҢ\\nB,H'Ԍ yzNUlae*7<^]kԓRڮ*e@=I2:fq2s0*Nך;.i2P)ҽ , *Axr:;\fK%Gf R!d(ZF&Z׹r]=kc*l_p6#e2>4qr=rlO JJ EW62C֖@Q9؏7lGeܴY}DZ /l{n'͠-(Ep(D Y4(r?uunڼx?YрYfv!e\;}P9/6lkݜ#QwS{ =F!G 4 Am׬3./늤a a**Ҝ'gre|q~G]؅'Oc_Fv5!.ej* "f8.$㺿ݭаxeR^L.2\DVv@ǂ] f20- .E7d{ !zm4mUt}!%0eYAP!W2dlKyybCEtv|f>K/Y1-e8 :?shfZTg.\s?vѢaLT<#|#SM&uEc;REGq9X|'tD;,&!ҹ>jߦC(]!'+7<h U^4e0Z^ʭuv^ȣ,D'ȻCH}n;|bG5໕Mל?ΌSѼ$R N׀_b1y\DXlz8ql˅lK(Ju BceBp#a!燤70i)rdF]é aPk?51nZ}ɢep$\HVYmGǁAYTpfd)mwU7|5 RkGt-64GvJWq6o2FhmH*Źl/dV$[O#AF56I|`Zí=i:_ TOyU'VfHvwCqR8u 2\U4ba]513x귴2 Ɨ45g/gBZ'|3O,; V{QCY2eo75$ 7!}ae*s^\{uMRIb yC'#{EЀڂwV!Hxu,Go]'[G1R\Di{`e7rXTc/Ǵob4_ 3E'ila%a ҃!^G)F~ $kH fbNLv%cw(/ێFIΘQNo{h& ^ sGD[$Im4dieIzAGҕP^Zٵ ]%%ȅ9zSl-+Mv_\wF8,M'ӡ”s\h- J:e}W48$%Fv4ߤR8Vj]z sm'ti# G[q-d0N-?NЮl% wi(ygT 7it.B1x_ 25fotE{w# qf7Oq])Dv4otgkl%o4Ҧהx,+ P1./Kf)\vj"!+'Ali9(s.㜮Ɯ kMPXx`Uk &6@?j8x $Nk1id\D}WÆ㒡-qf@6郞 &dJiVH-?ҳjA0 8$PBrC2y Fqtޯ~7aLV4GZ32Y_󻱏B[Uy";?4Sxl#K' w֖^A=By\˜%3B@^:P?:qpS:Ivӯ,DMe܏meQS!v%jcM8BIPDxѪj=<"Y++JGQJd#2긕*|ZIY%翷QKK;[ kĚx&g.JuoNj kU"3ydG1ZI !¼ p7ѐ r?gb!+mBU.Mܽ @fd0vَȁ9Jpj}JXZJ JI('jm){4t Ͼ Y a ?l퍪椨jtoz$m[J9dGk3}cTyQAO}ـc<XIuG鲀&}Â"( Z4T*2&j(`j:~^6s![)y}3DۂA&,vؽӼ|3 5@'944 9 UI9 ͅc%sG}"<"DU7t1V @v>448] .[G?0Jλh:A- /%%k:y3X3ś3GFޣIx-zAPwto5>jTj)iUiK[߉(*{lA\J$4X$؋P8u:d+1x](f%syuheͤsf$0{ QȍFş q9Rf\SQ}B[wZEv e, pf qiUM3iiGq2|! Jb,zN@^dWNja4C%nZXtEը3B=aaGkYTgl[ǿQf(VA U."  OI|9l{)o={Iu'i5DDFT8[y%c16xs28 ]j˛%g  U鏳u"֭DL6Xg׬.Au8|ǜm̪~ζ56 s}9X*_nJg0oIld %oӹ=x X.Tjv*UA!$سfZI=6 *s`yyMEQKYʴL4I׻E>5O]F{Г U8|q18>NُbfoeiIϤ sմ%<0ĵ",F;D b  E3H2O ئm2+TcyxkӐTUOFėe);vgTHʫC" gRiA2u~YFu9(cQv`G!Ҟ'Dz)ڸ9(IP~ۅ ۓqz˫h6/*EuO[/,{nGa2fedy Y+0F8ɶ`1B ݁x+JpHQicr ?mR;FNHƳa/G2֠FU˥{C-})ATrX.VL4@Q f%y@c::=B.@U蘻'kչD|NNbұj V@fHUVyJ2/a1D(q}zT8{ITڼgTaDk2jIZ'ԃ2ǽ&seU MNj;"7[kL ~i.U4CS*15Y8umgB1L%\ƭE Ob[&IV^.(3\1 ~9ńU1 &NiZlifTavtX} m q-FΏX+YŚݒ`m%@PlWeiYR\ͻFHIp+4{_:љ;|@[q~V1R`~A݌X&eu )~?sZh }F`c73̋.!w9nNfz8"gOfζ˦=eԺ5( #_{v$vJU kn/8B,xP1k> Zxkqϲq5 XzD;K#clu|Mr opܓ,FNlsI-g K{r{ +ɕ:pWS*9=d?$F9~簛S3juCY!ބ<ŖγtXiYxb\r!""gwT7ˉ]z q!׬LNsL"Sm͛5~+)1G ֿ?i7OP:HB۸li#gb$z ÃLc-FI&a6V&n/뢹9 rPȡEK\E<\|ÝҫLyO/vKp];ABPe Q\Nkgg-a>&^)V <ǿXX!IMi~2 oQH Y 8Л#_Vr3|bh#_wטE:L峐* i0c[J~ #Nr~I[]]'SR $vd\"xH^xjF@z:e']J`Oxg%FV4b*ԌBugyPo=8suH-T?m&<ՒGՌXLIa+H\,5pl<ܚsh7o`)l-G)k7.П(R89r5Ѯ1WD5:AuaXJT,7#=2̔ǭӻȩ!P|{X2ɢU@JCgGйS=?vy/wvB/dUɯ`Zt>.D;x,C?r;tWR 5BQܟ#g44P>mコzc~E22&p X eBM0͔u :6o/.hN׷¸7foƮׄn,'7Wz,؇u]3^%ݺj}O0M$P^W)e5H)}py}#N5 l^Mec:J {>V},{U`\DJMگ_~W</bɳg/r74KJ9CbfgyȈ/xUF}]K1T:;vTBlJz^q/[A?FLM}FxfN` IAwbdF ©Ҧ |MPhm-ՁuF!V&zv; 3>?3h*42:![]uF<;{E?/ߞ#;]B$!ᯰݿP{hJa[4pTzq-&?L]cQ |CRgyV%Ɠm#n(gW :KoU Y3Yu 'y4a롲My3:yՋkt?%g;S0y{.d623gJ#M<2"KVц`d)S0S#>֥iSiJP(;w&69 ԙ\֞d%zzşC{hNp#QXXm>4V_->5.6繅n[qf+,?qv,9F_Oum,}`w\#s31Cs6<})Z &P4ʀa /@B!%=~y@4Uk'ާ\/ŘmZR9pd ;! J h:>42Ja3G=˃lɜ(G5MX_r&-':h&kJVObg0-mq3$@NSu ) Gs;58$>pSݟEmqbPKZ&X]}^ ʏK{<n1Ϻ9ܲf76et&r=zXSbTFJPo 6I/=Y'yWDMNuZg,c펻nCaϚ`B̖R-翳nFi?c%kWNg+m|> i36` VsbC<&s3Z.D}{~෥Ytk 2Ӧ e+Y]ߠ^B`\Nfɓ:ۗ=][`;&v1tAtܞsu)鍸4+ 0֏YIv-IN] -rŴVMUm]k Mp{SF J42{R@oIo6PA_Py;odS y`:]>E N CHTWT^7i3.٤6|_1#f;4/l[+89V hJ~t>mbIӒl5"i59_읳OPy<\dڟDEDZyJ &s3"DV} Fq(u^3L)5 Wy#"^+tH|r8=\U: : = 8L~M!I4pJ>jzU}(/9} u9!4ƑzўOx鄃ԶHNSnIm'g_חXÂX<,W3<\50ߔIV O|Rs2=1_KϪĚCv):?\#KF8KƜkj$v4 ϴK==$T3mŠnK[}L7gv˯5,PS&R/4)oꞮ>Gۡd C,3? p 2aZj#Jd L{,g)"m&8m& Ũcw~q⬯fj a}zG lB!f0`z;tpҋ̘dj;yYЖ4sYпMA:?4OơeG+K7ZD  iH/BsyM97H^ ƭp̛/]"/Qr{{jD&5摓ͧ$xP?,*AKOn>DWTSIVHF`>^~9:zݔ-/< ?\Mv/&li R+l1q(w Rbzɴ]3׍|idB+{\h&`x D5WB[xLg#4҂%-o)|,<t/ ,ELCm|w|?OLojr|ˡV5gU3zi^gGAcƼe,4me`AtΨHM)B߄嘚e v8y}.p.Y;1|vйxɗ[8k$A}UFvu~1v_"ZOjeꁟ;BFk.mClpqR'm&# ln{0Hjq:k@,oBbyA! [hl綃rV*&7`=k(HNl{<(^ɕDhF6~0pUl)G}UgոE:i%'rC// LjRr `{JrK/Vt 3::UDCTc2·[7@Mbek rHe( ؔJ4S@O5yr6!8'uP”_8 eRBF(p|N5U)22h׋>EG$ JPhN A6YLI<Ôv2oEpwlm-E ”/A$lEKceEmxQLd=%A!F1mI9#Tp.)ףC%S%3cO0poij<[t"ּeMSpn׊Vv Y%[ V$$/VL@>Yр# 1u3lǚ2kθrsѬ"  v-K] {(Ynmt 4~s1X)` :MRZY:»uo1R䂢b'X`8byfv.9hH$I܌E+V' >.8l X2EXOF@a/󳇞ϛO<ڻ MVF4YU΃AzwK)_f iҍ6_|F=ԀƂ'/3򠄆GQ:K K?]6󖹭ypAX*5ep+XIWO;MԗNgGl]ιG dG[v MLo~[* 俌Ҁ`#Ap“;s#D֐* -G+0D 2wvZX 6~J#yA1s/ ?^ːʹ19eih\&mWS!ǵ9+ :?,TKT#T))m==>"DߩHK&\tUԯoħV tCpTp>-'~|GbXYWH3|ىi=e>)S?R+HjtH*cgSƱ*PCfEuzL࣪QV&{D0'X+/<(ZMv 35$T_*o6HH ^Oi;_8Zք9:4$ AT#sFP5P cZVи[CzŠ]~0ZZ vFu)$kvH"<+ЩBT2[!➙Zv.I Kfᬜ՛5B`q_Z_>Gήbko]}n%n˂rj*EZjRr5PN3Q xgx=E)T&6 q>D8{U/+2Ӏ.l,<кzt9U-KAjwy<ۚX!l~! ).%B 2F!:Vߗθ И:I/,BV)]Bo3*<"Rj)~"₝1Z9s}!b,Vg߰EV |5YTuf.F."|HZT((OrSװ r|Mŗ>9e.)A2z9:MC;ZԻ0 A92'5zB|_uimۊipg3"uR!N\3p۬ڮ**fp] `괈XT\I 6J+@U&~Ra8mnT~T[ś h)^e2񖑭{ M*&-u8-Z0*n/9g ܢHGМ!zu8N ܖaq`R pfFe_baSѩJk犱Dƹzi=<m u1Ԁņ.خuU7Yc[ACn 3I~EM V In7MVp`,42;qZz?O>& +^;f >Q *_X-U q+0RiUS)2|lA~OI4F?%ԔLxKS$?fIn7r/ipXeA%ëO萌BefM9=E1 8Ϭj$qIV%H&=D9Y[~ ULH=[ۛz2:1X׭ T~*ѰuE}D/{eܞi7^ {e3s_&+5! C3*H %@ <`x 1R\D 9*/ODWr|"mPL ǝ^sWV`+:-6EJ|㔲9g`0B;cmcH% +,}Pi+VɉZ ?tЈ'#)9h~U]A4n' t.mvzkM hMG6>|'BBȇn-݊ _V\S2Xf wO#qϢrF׺<&N@ǙctT(dwf\}28gT18r{ݎ rYR%3~X2#ufA%`wT6ÍTB8Oy+Z3k$ɌsYHg/($Fh2&rǝO~J]\a߭p:Mb}|.f4y=LUpg]~/Q~B'Dr/zM?y4Na0ø@ >Ї6L&č:7ȩhiWӹ'-VBwLWBTi{T*lQ :ݳuYoJj e=(r=&Ԇ} 뜉C(1 }6hGhM96PU#mtFp8d#b&f ż ( ^Ta ]kխ6ިlxƿ4M!:ѻ\a"M*g{U%0m=Nq|B}o□lRr6m\Q,uQoE&a,JkPwZ6Aewk򝔧uen*35BLիixsOP8ڞ!qeGU(ZMO&^D XE=v(eQ5p.mat\zq )2B= hFfiZ#NP T/dAW8@YS4P)0UocFcG>ΦLOj^j J>X Idp=4r:2„3ѼPz꧍/DB8 Z!i('^iMԺxeJ[rq.1o ~r `3A^<YdeQStzU:.^sURq?%)"q,urRSCInnUA?<5<Tta8)g|a,I3Qˡ- $Nhڀh0^Z~_ISK"e{̌ɎHim-,Avq@/v>ZXX$}e|}J {3"KXe8架T w_:;+H=&o˚-Q6 3|zBw1ĎuE_O(Wl O&n,Θ$/8.nHZ x^Zas-d!XԧY<;Fe SifC9<ްzF`$2?n39ptp;RĬ A*',V'w. J?xr {[dA\+ExX̲a'CSl֦&WXm6f:\VX^RY X2 RՋrHJ>]3&/blJXp >}x[e&GX˶G49KkUz^{jikJiA#B`_\p[z+k H"Cg Kt?\~B1Y<{+Z(hil:\=IsB0׿:̾q{*[,zm[]sLsAM!_U~2 RgM] i5DakȐw1^Ol45 y6!rJ]g cҥ6;C$1@(_m9iٯ$~vn[7 O+R >=>7~yQl].oxWw-|8_u;y%k8tKA9C$A +Ěs^ ֨+"&|&fO9N޷93mɞjY.(b'*ZB "r_)9~G g9ŊR:ov2_]Q; f@;Iu6i~D c Uo뜞SC:BʾBف?W7HゥЩ>HL\+2tk[q (fpadn.`k`zB|?exX)SU G:a+2oy" uy96 +7JGh#swS9Sc.م !̧!M/{aoڻnT~h~Pn U/-l ot7tNLI#м=ʏҵGOc#yoSPZdh@:NvyAm/E@_kyUo[93iNCnۛ[ Sm'wcC}h3sBnF6 x]z( n01pŌK6 z,0!uLМP4D\a}K9 ۊ{ |EK  l(cCO$P|_8TZ^tim0g]6AWڮUqpĝjKp$|vEi-mw:b+%sY/TʡEhh@F\|ԮO|@x̰z*d;od?M_F栗BpDyOŝ4: .=-7 ۰H5=DmpOEr@l]7Gh;~5)x(C췰ۢc3t7mAEF Eh 5[<MoG& Bl읎+y;DSn#pm~f{z SEWwށr’X:].P/GTp$I.+z0A{0C_5b٩- (m$5b,g/;H9XJX~\u,b$q( z/ G<639 3}`bnF'Ch}-%ƧWRs^hܘ#דP+9a B]>cH.Zd nLJ7:hOkwg..|%R\?drzkr?p8cB%|!OaJ* .x]&L_-ܼhx;d=pV䂟J\ <4Pv]6ʒ]_o;v7?;#(ʹ_:dGh (<R^:FdP^}v To==[4*wtb풧C[ JK 3PZ t1nnLSAc] ,fW015f1THpb-}J2`'&a9]?eKĪXBy7[ktsbȡi 03<cE ,0(Jj kV@J!`{Em*D..mk\>Z8Q:2`Ѐ_CQbu/ͱ})(J3&k&`d:\\Zxy}a,/D069 ̳y@9Ob8W ֿ+)VMxݦD_,(xxəF-~ x\pHKK2B}=bf$P[77 83 8tF@Sc&@kgLynY2R,<,0^cvpX"8fJ9ުF;'LEM21w (7^Z,|#5F>iX$QGq0})]:2u hg.*> ֹ{uk])o?nOaonsZٱ i EY;m8^2˥Zc#8V|,iF},kpɊfԑ.V:]voERrjٞfJ_)݆11A=SMK(JKD[h[HtlN$4C/!BzfJ~QӇ CPů!g5 z8RqE.gl.|DWl>HUDPuJwd$Ǎ|UPRnIG2vzK|6o,8G}Awr3DB]T;bY:4;Cje!輀s8v :kS<ج;vseYJ"$V EaPaEВĕB8RE%^MIjV?IhwΧS?'3*U{OHݑk8jj>G94ϡ9x'ڍyĢE:sN߬OjaAG=xܦ?1Jon`M1@ĵmui"E{'p?e}yŸ$C~ĥT0yh ''QF?W' Ylhf8>{"nn*!?hmJ`*)rvl;5FKP{d8Gcn#'8đ̹#/&_=z Oƌ/U.pNtVi[tpQMPKU'U"A"rȍ{̪K8Eqn){[P=NJiଚأc7D}bMg$q x"$>BXNi])_kӯz^>kqnxay1P.U>O䢺;f^Lg&RA)F>Ԋe MNbD.eNgZ3idߕڝ`2D@n[W1 TNK :&4^%h/|.6ͽIàIð 7%iz_4S $1^1֏Mhڂ[V r`h@%8TXv$k8dAZH  "\2rk`j*4GX.Q*(L۶n,k6r1}ՂӳY)xfgS)Rlr3M}~o+bk/<2 ;p7KX 65e>1Kϼ0 l4b`ݦ&}@`:EԓK ޕ zP B]cY()r /} ֦rDD;Le܇t3Q z"2F@a4U4ؼ1qB&J?*VFFKE9 . "͔#m.Fsҍv=w<]IdrQ@2Rt-r' utRnt]Ua嗖ⲀZf)rzN$oȦPQޒ$8(7$3dè4&hDHN9uuv _[m 埛Pd\}vA 60rnF0wﺭEkC ?CA('΍!ѲR-!)?1vٯߵvx9BEg5)Lyµ"4I*Lȋ}e&KGhc箸.T}澠[H߮jBJ:.ݛ8>?XVڗt| v(?-Vx-3EWv1g$ f}v࢑'9 lސdn@̳Ó^\ty0JE۬:)JۋQNކSHЧ :Ui&EShZb[Q3(z~>b8͠-C@N]Ÿ`1vu-,?PvئGcCHt/Fԫ-W$Ź Z6$ͨ`j #L\4C?8IHx?b@h.51)-[IH=4#~i{|`gA ar+ ;^>9Km(%Dm_Jj*Wyp V\Ąw@*T-~٧]Ii&O`ZNQ=nKZ?nn^PP)\v^W'U7jJ+D;|Bfd%׎Dk|ą_i $f"+?ЦEgh6:= }^*O烄R!3 ˂viBvR\C_z-oQpfS ?+IΣY)HFpea[ ~ .d:u;Eu`gN*3%,P79Hrf.Hi(Feٹ=t]od=Wks4\iBr܈ .6w#a01>߫~ᘽVpi}\ ^$p2efkk,1} S'Usy+z/m T`ۨvV/%̸}RA|sHR)-92=Ăf)BvC.$¾$550e/͒;W!x&k@R)3<᷊,vY.6!^;m+{"If z_jɹA=Ιs%EO?:S3}@%0s5*xlq̓{JB)Oli%LE얨Dk-ҵX/֟,cLV@!Oޠ- hYs܊OQ =JD[]4V<-hj]Zxbfˈ+Z *,[ Ľ sm#Dà\CF۔. ~(U"N[ಓ˖Lj̾-,ix$d*"כYf\]BeL ʄ b:[uR7AcR.G)8)k$|X^iɗ o#f4ǚKMg}_""Vfc9G.BeWqZ'>??$g󯙍ڂ廳w6ܬi3gӘ`zh D$r ]&RV_ *ܬYn{U?-L%H;2oFabcM425 +-%=+w5DtR}m 6Wf4B) ]1dj 'bCH^0#Q::TCA. PFΈmAA`_^y<&/$Wl5Ċ 2 hVnU w8f3@1~_&yL$fL8_Dkn[p~^Z}{ /"-[`MZgj%'Oj$tOsSܻEde׽GUa/2`7 BH #gg ᤁܳ.v3Ƞd6E3'rz,V:C:GdX`yȵXcMmx=mRkEdQr퀞؟k{HG`ѿ*I)q=qjs0]RDC'x8hVx/,V0J_!2CWW$0gC> ҡ)}z4/ B(D@x3k8 gNJpC-vO۞Bk;,;;sBnSʁ[wO%@S|lc "Ia}[3ܖkSӦL;X w;x~WKXJ#ǀtKJPzye^'T0Gh%vS]jpy42> zSǰ28q< yĿlx<0R\A\6J':Oan8+6ܷ#͉5,8tT|@cW~!s%:D^wNzx*;N}{ "bJ.|א(tԲbIHXCX :UݵH&j`:YmvW(WIÂ_7ie;ehEV7TyR4>)ybyՂx5a:bi+ MiEMGyeI;_uwX)sG!/?1Waג1ԿePclҶ7K \WmNģծІN 5zMkBkWU~^E_^#<.cE\x%L2TVlbCxpol*_#.qdXXÉ LȧP/_-opRCBg;R{#or̩L;a쥑ZA2O0[>ᙬBDN 21~'1b{; (3L! /(L7ٲ8hRRi/ ĩN) 81MĘKDdūdywJz /#;%=f, 쇩mK>WLYՆ 5,jIuG Rߤ~u9 |PByHC(!x8B( MSC$Ί  ~cɑ3|?M]p"eY]j5JzUZA( */DTe˨_L b0>ѭQhAmW/pR]-I=uw{j `^85-&TIwm?T澹qi٨\uW0u%1:*?#L w}-?Ra76'F'٪ދ ]콱f'WحqEQz$0I|ҿ#WEjc~@֭x(~w\98ʭvި<ɥlbu *#j^hY@}Ɍ  <0㎂Z1z܉&vgyJ*5 2beH $8׊#dk+`Rl¹YRg*a@ͰhBw=Ov}C;ΙJf3ǥ3LE~r#JNHI7VC#:qTq dP$Bz#q>bG̏4Q2XA# ZV:H_ϧ%.>G2[Ht ,ڥ298a0ݺB 5l x\?l|Iυ;;rHsy.E#R*qSxK%BZw+nAIDZU1@/lEK2K>rMzQ4:P̵!/C7_uGvl\Y/i7+/oU*_Gz%="Ld6Yߟq%9:~: >b/i}Tmnԭ`?*x􋐪1&ޫa%<4B˲[6(&)E;%p ~ 8 NNuv.W4*aiΩa+hmN]^"y{rڭV ,C\]"#C|" `EGZ2펠DIM* jakwzIԪzZ3Dq z\`M%L801˫¡GjZ_BtV4V8IwUB;jpn5;q{ˌ#xaY^T֢-jˌ:,SMbh.Kem&ӎsml|OCL\?v&j46P!&t_kڥⴻ>r:*Tky2Ӂf:1g!em@)TkiH{۟я98? h!YSlZT.ҍ|ŷ=;~føO~]+^m֪P0WN=!ˮ"`1la nI^!mm ЧfqO >-0/b?啦 a$BʽdA:̝2ahrV8waʾFy2 ksq rchw,j| mO}bG5N8cemMdz‡.}+tV{iK&Ut[n[nHuLw]aIA0 O2&&m]p44V(}( 1ܗID7fv#V&78m{U ?{T]CŧFԵb&@TW|'!dq;V,R&JĉU* @E 0^-#S?)T%WBy}N#+! ޾ERacp*@y Ŷ!Iil 6&|xZNN{S>)O0 wMZ fL%d jo x^595TpѼ[k6jZ*1C0{QOf}$7iWg*K ;(L yRQHX\n~%`=qq\;* =q [o,d=më@JYƆQdC&U\\l*7r4Aubl(Ӥ1VĦXߙI9O]{R!e_EWkd18FE#v0 $>C\aN8eQBInjk*SeM3F{g 9O UE&$73JbI.ӼՓd:2? J m{c)L1ܘQܤVA8dڨAs(,kaKT\YKp{ %,'| S9?6~As2+q+s5q85]cq9 b4Wǵ+zψY`fyM FہKugQ>r?uN''6N<ʪ];Oݬ4$L[vh<+}^E^IP3-Fr4:L6O'K˿.#K#s)T~z+ʚ3vK@tr3YbZ= FMtTjym+@JBIΘ~AEۿ/1Rnɝl'W;-sc1.*f[fIΐdH sd,xucuKF [U/枛v uClj鰈r"u-y,NӞ[ *%8=zH|,*Z͙I&z|%y& 1Ha!ou9-=323?um}rk?4s(fpOZ>c 'zpU@ț˄_rR@MC*(d$-Os{Nѧ8,ΰ&Ye+AC  f8Lx"FSbNǿ2L2T|isjAXQ~o NMw-e[^-d7NMsugu=+?G4̥ |ajWhjґ>`)W e1sp0v#yd;& +g#&>i1ojzR*6‡,,wXwa,=3cf-7=zP鍄S|7=g1]a,J}<i#Sf~ 0oFTcP/Gb9x!ާ 0nx6v@OnP rޯ8U&Z&I6 J҇[q5XJzI\ ~ =tXc 8kS8&h5-^iea}_&I Yʜn^ 쵽t9u- +3N,q.i}ShyLrvBPC.:O\9Yt5^=gl++DTdB>a>9uaX:±Bek?Qժ:3ebWR5; LYc|Qw.3Oy5s&LE+e Z Qեu"4i9tϬ/A;KaF0 Ҫ\vdA>-7BBaKH ?-D$d5Jb߶8S@< N"{P">psUxEȦ̇낤Dj}޸`cdsXKʧb(N>=fJe>{ wq732b輂rOGMݛIT*1-=4LihR1.Kt]s rO|ܧHbFCJn˺4y∧c¸3}Εm57u: uτP Z/zՓ)[VZ`__V}R=U xOtw? pB8wD|YR—IU}jtA/l[d$`RqRXG\?\\ 3=bY!̪bf,&a3Y2l;8̔DuZ/i 2=uȸ0૜߬m2J_j")3kw^Ma 1 ( I(=E0UZ( XEow;`||sR"NQ,`ӣ #E]7XG8 S1JAf?BxȠ0X+`Ls^xYRߘS;1_Hl*]`O4G&;j :#HvBZD-*w+n_Q XQNaW] ,xS,xM'dR}_vEv1L8~Z;0a=9n%A=OBx/a 8 C@YIotZ @c|(Q+6H.Hԭ/̻1"H~10`NlEt At ;.w˘I0e2ZA2T\7'l~>i%MF,؂K0V^Ewe>}:F8Qb" PsNs ?^wi#Ȼ4JC܈e{Rm q>.؅:].,=&p,Ķu؆Ծ nzh2*HL#H#YA{㻁;ދS\Di&Ў\u:k`oM9 e\3}{m4UB\ {oઔC=V&vLi7'9 BZա7k!0d3^I'W`F㿅HEP2~A@/|`;;z;y=F s f¦&O$og,MeՓ,HJ}6>R.K^ T4$:B>Y;H/sN0 Cm֠BVH n-Ñ2+m+wĹ`iKS|<-< z K\VS C]D v+{4" (1i<L=f/CPT/-7"X>O*B.JA\UJ]:Vnz$E ǟ8a7zbP(՟0`S v?&|l̛@_Vt7U(6|V(ӒDnorxNNjֱ';mj 2dp[ yrlj?8Ž*w{8B+'ʔ쁛G'֋VWRP#STUHL,`ZKׁ^PqƼH#= #Nom";"4x IV ).(=a/{'Nl cl4ՉBߞ11\mFȢ?B֜M[btoR1 nhK7t"A chZI#vYJ]IN Iփ%-](E.(pBWwwo0YPȎme#G ;g;WL?sB,ޡ[ lrWN0[qopT188 {Bxrn7Us8(%SǵRh}(D 6h .*ONFGXn)NSGQYqT<!Rmv)_c"1𔊭D•YqhJ%7;cD@[!VwXERq.—t̞VӅ8(CQV+]1..#7|5OS(baU0 !{Asi$&E&TFcpʹThݡ(Н٤MT{%̳o Ѷ ol1K(䕼r)Ѯcyce-¹twu8ll?h^iGHUt:;9;tuQuQ(ط:#)b=ū~<G@e n0j/!VM02ʁ†&ڇL@ys4_ YFrց9 ZThof꘮t[-,տC#xoYIg?_]MZ9z+*Q6D6m^,E^.y]?ytw#z;⺞ ƶ$Cb&RL#b:ZaBc_b<] 8lDt*U¢.%` #knEKWB@XC\눚'&zП3-Xgtsf,ȵkģ-)0v;D%MXY1#H2xAbCڹE(`1,ڊt^;L F6{=QWFKؚd}AayFu1U͢ )ғj5*&l\ņx{*`+O*t֤QK#iIAϭco_Qc4P$7C]t2h5p2mn&atnP!/ZD uaqZEd񁩋[|0 aq͑I^KNr\W\Z7pL<65t\{'(V&wZq1ͩp >b 7\@ Ug,_`瀽Ys JYYrK?Ӥ |gZo oN9>UH`ʑ0/M~wkPw!j`U`'ʒ5;HY!e6p,(I}'kB|TkD&O<D%ǔM9#'?uVz >26j%6Fzn_<` hKmW'tF4FPr`%lגhU3<+]EZqmʇq(:#@)E0%G D_WgG yHmC~I:_EJ˯r9_6i{*6[#Mh˶ EƮ9PI!e,EO<{1\~H ]g33. _!R}oR DalU2\~uБ/;n+bK dM!FVtq/ڼI 8pkcgUle qE&,F/Ƞ$BiI?Y?io hBeĄ31TtޥFHt2sH2'{As(qNV%zK>҇ b$6 Rی$pibbC|T5t~0OvLgo'6;SkQbc]*T%nw[3{%cG_7ӧ0(O8?2֙e a?LxZ6RLmw4 \ՑWZS'v=̶m:aAgl>Զ_8EhTŕS8-tjwio1#ghɈ`jG- s&`o:ž ~P~Z?AJEiJωok~ 2d߅"P0bep5ιhHDiQڐT ʵ q܍ջ‭8 Mm{H7{@;Q |" 8on3}7"{ 溙M0\r oF4_=C,8ceISu8P(D!]4w]A,1_>I"?lgRGκ1%–KY}/Ԑ In\D*A ydTrD@BCҊ =8c|S/of§WaFXWa/(2cC7JL Y-.!\U}5[꠺ykO[ӷ ?8Bd&P%:Jņ +lc!T7*bYe:9Li;>і-в\ S!l@?x]TvNI!tj*O%ᦐOܖ]RT[>q;0. kb1><)HÌ~+='`ޔFzTדPcyj@38g ^%2# hԯYX)t]0L0iS1w""rd>[P*tQ# hwI<qH̪CE |:T$N3xw+ծI.ֆP'u|NLz c-#@YNX2"}ݱ"=1h(źuˡq=~,%->#H9#00lv`φ/DW~R{10T^[>lQ4hc">wzNCi/o,|x^Yl kg~a4@Fwb}!۽D/%82XrctB#Ӛpgm`MDcZXQ4!Iz&TVVub0>l XWfY74xs]ѹ3FW%f}QiLB6)/<%] \ƃ,;?]lb8F`T1Ӎ_L'_SDҽ+Qc!F QVnʒuیj}һٜ`b.!(FZr ? ;y97'Bղ.mD pc!! <-mxlx9>ҿWօ뵰Ѿccp9= n+ W™W*'-\ LK[yLNVx(d~apW |]E9؂ /O#qG\"껱=×nwI"/5.H!Q7Ec-HO4[#VP3JI\<-8D4ڼ2kl׫mD>pIa0*Dĭ6u]iִ;ߏQ2ZMel^ M;NdNEen' Z|}[L|,emw۲)-p٤ )ޒرFr$:ZPܭ>s ȎzFQkRmo tI!s5o 3m52Ãe&hBN M:4}"- e,DZrD"a6Q84e*Tįf h⎖(" ~䫊y| tE> b OrJ:YƛTê@"V "0,'h®h=ܚˆW{;!XGH#2Q DS*vK~\J&%iRNHH2Ѝy%O ƒAGQ A0qxyQfsmvz`LĽ0U ݀Й\ӌy|0B!FR'k9\C0ʈWOX}˘ Rԙkʶ뽰S^&g[~0Vȉ7e$ T gq ry͙ddzP2^^cx%&*w*2#MSɺ8X7YbSG xU? eW:Eԓ2dmjB+fVSrKt"prҕIPcJ *MIN84^)f{+>èwwe 17\\DX(1C3%{4ETLSHrK(lsL j+?G~~^J45鷗VVnԾ)\?eyطCA]zB|o`/VM>NuBnt& /}sU`%ki /&31/rYjqR=21} hpR`f`Bd-zKlՎb7 W\% k%<^C9\V8r?}qwf*8buV, o,Fk/3 |gK+~H6~_OQA17 ьBY/Ztͷ{pU e`0$W2:V#Kb#W ~3[V٩qU9`3GQ́|&cdJj&ىbr7lU"]+2#ʕ)OQTat}@h4@gFxʄ0/ng+>CG%g60SZ!˿ڶ.џ%3Fލ%;:lf(q(2F#Xz6)'Bxg;;syD^~Wppym -t,!uFU8b</&$KV!*?Uz J*aDq 6%*LIz"37bEۈ͉# bzao\14 6. _Tt5~=ߤx@h/>k#N@_nM TA‘UAKKD:a >_R'F7]Tӵ =wGcdϝe1UKυ`X/?0Dv)ohd6f88U"uO?s Xfh{Bg<ԉ?:Jƿ!=\?0 gи]˪Aek-S.;z,ȡp4:G k]POH*;M^w.›Ah@.I&iGeԸY>ҫ8-OM nGF9ふY!(b1wM%ႣlDFkc̊'Y@ӟJz?tfI5 UZr}V~NkZ \7Ѥx`W`\@q9␱h!Z(\Rǒ6(779Q#䌍_ЃoT*pŹY;lYɎYQc/r~0y4yHZ,46%;N{h^ Cqs'YȘyN͉ͭI[XUW +WuXX5nYN90F%9ٗP?6;Yވ7>h(?p[)%%1+&/hY|ۙN4iWQ(+h:\RU IUM:I 82F[W̤d42#Q{;[MJJUy =oRMk#!&Ka9?=XIjk ,gCT;F2Y\tOoo_u u[fhpjeh>s{ھvepg4\M3H1Ǎ'ԦMt%R$ YfF쪲-X6`T ~5_~{$֨Q Eͤ-y@Fa84R[U̓WΊ,չbmT"a#xOkdtK\Բ>Jg60+}cЅy-d2Nܦ̹- njr`?>NWcD{x?ɕ+2gU=`EY%ddpߎ&oyNpziaF$W]xTPһݳBI)XXz{;ht^,9;n줇HvOUPiWʫafʿ 3ACS8LJ#95*_垹1bz>zۺ#[ U ٮ$~?3.2sug0/rJv86Y$ ktKޒu*ߎw[ :HY{]#}%] `f?lR%Ѭ} u {lvB4ڲ 'Z&Xrl@1~6}e@;rїh@rdM!5@;rpaVfqQf*z+Xu{4[P(CIޒZ'5jm]%iHOtѻ~O!K#XQ4 j|1~,DV$3B NA0SwYPU!]nZO'Z+Q S^6╖2 ^hk 7KԞr.o(Gz;lSK2SxAaTæ 4*9f"<<,3+TqYx.8ʻNۘB}E͟kx`OT,QIM)ӑg'0tFUwҐaS[&ta]/G,-Mr, J7Y v#$eYMb4 F ?,`|iAvC&Ҋk[cH[˾;wU Ithbq%i p~G$ȽfԱL% u]eX8KrW D+?K9W̟[0 ;dSKZvaf fWJ-S1xXVl^r=tKiXLtKA׭ZvhҬ3U ¥Slƌ!YVemB#GP,I=G,pkC Gpp`5A L_6ݾ{QJ!}@c;uf+ i8^YJPgLec"-41|fPZ S:[cчew^CǓB5 IVn|qo^(-S5ji% !E,KZ`|,:Yy!܄u-6]7O#NwXUQ@3g v"oJo'G kxf.]2V} Lpy1Z׺2H'!C _<;? /3<,vt\=T5Kxw*\LW{Y/͇\{/x(DZՙjM@y5SÏLÏqПKo&b#0djFZ.r6p*x5| hŕRސ%[9Νוʻi{5'ʊcttUrZ=<lBAoG7q1''hjfT!d%E^Tb_Ū~HuKwKi^NU_5"^&1. rQM2UøQ0zlJqM`ڂϗvJxygjv}u&M8 YJ_eunh}֚r6T?<%vBýbm9 @ T\żс1$_YF{O#HDNڒl8 KT`g tC_˭#Aa;:ss[+OOt ʞsNM= Sxi1L~O|Zŗ)G,wK_'XHLoh]Tqx)ׄ%N+=CwZKz ]D4ƚؘMix>5x+Jn0q5ԮQCNbVޘuco ϰU/?O_#%SV'_T1ON`{Ku4 ͇PZ* -NΊc1vOer18K{ǁ_IkG7cK6;"6'bqf#.5[~Y-?GM mЃ*d*˿`{'D`?7^G;e&jj8+:5"P_L3 OӮNTUQN(ý ʳnyM 0I9a؄G2ۼq-ud" 0.`n{G X=RdO-0 O4oI*D3PG: DN^~lkoglwx4fLJiRO/^4Ox~E϶Ts|P|)-d%n< 5ME`P|[[`v TC{96\BIۡ3f{0WN. ނ/==Vw'@va8MF9LH]H?SmcG!^sEI.kmS-XRGNOh`yc4<<?OnR=Ř!S.sjEDiEtC/ mNIQ=KcJw2W#JbIR#>8sl9&] 3Y&8 )]_ǂJLQOA<5>د8PUQ}qGg>8J" | 8H>7pO{iT^]?YyB%X#dz!Y6h̐ EɗGaʥwNׇugꎻuj5zh/.ɃtY\G6rR':d~*k"- JƪqL(By  jm.M IN[L؏멳Ηլ*ꈿp͇{y+7lIhRab IzhLLݡngnYJP=R)ܪ!_,aZدF<+/[ūʙ ?MScMo S9i}_wHTH'(90#0zc\hR#t t5~r#2ctl5KQ}ZܣŊw~FZu>/EF`dSih/N_eJLF}sԢmlgMn8H\r棅LQH{Zq2SBb,@qDeʚ- dIPȡ@଀i v33 j9BPTdv!}5nm0&_ %Ư h6܄+e Wx(0z-H_/% e F;I\'}Xo:930"qkv`ur/W.03`{;3g+IH*pmJFtSjS?V#Tcm䌎 d&#8k W3)&=|N0шGvR5q|jvD|gWY|M,ZP>갮$dq(+6u) Gǥ'HM:AP^: %=S(UXYFLۜ?!4TZ8R*n1Zʡgї>S, xq40jIi .d7=Hf vh<0 ,s8.RzJ 1.9Ɍe>?,קy (v8b1$VpsWZȮЕ=q$mD+,Ϩkn Ʋ5mK^Uh &p0bqzAg!/)ޙM vx?!`U^TȌnB#@T 0~rci=?M)$SBUR+gq4&}pA//5;5 Ut$~o;fRArզ vκ\2'-ո!.Qr<!ծ-:jmJԘSfG% ^t2@ t BhD89g복?p؄l&Uv{S0JNb"A?k|8O6wRj±eO!u239V܇h]|c3KOrL7ӄ|5i),֭T.ln`'$9U-o)sԀ. Xه@Y^@j;ƹUu]3chX]QɅfO!R?&,-2W[F?~oy*no a+8"`w蓻,(=9:UXnTr1؅ )voE!JI#$lNt<&(FfFF䏠1)q5#`*31|w73쨉챸%`O8A2jLzUC2 Jq7k*6ezG",Mt8lF<*_)"lc慳o!|1A)CDB`G؛} GK/iB5[qzzUDMj@M!HcI=ePj>^Y":e xHtPoNn# XVhD|x3hzRG Blb?b[ppw<4Bp( wY@z6Alx,7]\rC{TB [M-`µؚdM2U dblN.+o!9 uSk/% e<|\Rfjy)Gu=b3Ecʹgɹg Leh3/ ,Tfr%,z=&#vaz 0,:,Mgen<; ^OG9+ӭ )(#xDס]=] .o/ݛIDtxXs?1lފcE\M <.$ɀQ )LGJXRHo:3 chM!jtN|tnu'94=2I'>AӂeJʐ&G FpNhx0gd7|#q“G/y練`yP:f"1Ay(`"<a#X$ɆQ>/`WÙ8R| ކG:b7eك&ثEҰCCrd -\Kz=-Rb r85ce-|I1 1  <{ `5ȣ-?(.p/@Yk=o&BͰhfgGfAdLa;̫ҳ|H'{$F=oݡn{L涮e~.ʿ]! U_z;J <|+%`F>rKm 'wVrg2e AcWߊ-qi؅iN8U)fq"zXOgVk D}H@1W`W"MJқԫiJ*j y㧻5\/ku뤺jB5 !yoWj}!58kktrGz.r dRZ'K6Ahκqŷ Р&&#nev _JwBki67!¹XZbBkk%g"tQnG=]}7?DL:Nm *UG$" _tt_]eI߮f(1"$? F<(FY!FoC8 SVWB m8K8i-_O0{?4'^J5QIXq1W,@6Vq/e\Vo{_D JBbw@<;s;{N--v4I)$"ڙTV&RaIiұͣ>HI+WlD=OIayʢx0>BZQڼ2C6pԍ'UfAF(/}zY@4C }[\FWVJAo.9ٝ j ڼr3PB4c5'QgBJ['yx:XFI'鴡ÆΜ9jݵ(E? HV!~n*aYwPڪZy)X [[φVR^1`4VQP2/4Ca֕ i!HkH*4j{dmBG1kFQS,B =ժgebؓC*4M̮PԎ)װ"B\ISYd%m'4zh ʞ.?/$;wXQFqH )S c/t "5!v/e4gGKA]NO;0K\Nh&^4UJ<`۾/ Ok>Ŝ&qe4P=Є5Uݪ*P |%W([/J1s>zdW!>`IwFjй2 ԊN@,dI,?u v&J6ib<$/.&k}!1l8}Ox2fnnܴx~Z8Y!5"Rpy9 wG>ǥ/m AT@M_Oo=,"Z(/qb(%OY )hJ1daƆ%t U 8]T,4%b^]MJrN^;(+Lg(2nUO85.!pJ'fnzSFPÂg ZG3zwy΃kʓӲEӔUH #`ݺ}UZzFSUCVm U֩/fLa}^h˗LG @_|m(;]4]yn6 l 8)W"*"(Pfz2돈մ'0m3|j[ˢ NH;HXoHNlPMjUFZ\1Hc3֦3L`h(0:q"ۏރBT퉯Ɣ\ҴSvNk)lD]s15$; \uX̿m1=e$k4@d&}>݇KI͹۟${'ƈ$ӎJ7 ԰jNf " 3>EMn'vùc#+J2ђ8u_¨X-ǥ@&OL$=7y0 7 #K#>JkT4 +DK_ЫIw*o/m3v(]x׼X~~*Ek.FD8_o]>ƾ .Ħ+*οP>uz,[8ڊ2{xJ<*Q݇ϓ\l\Ӕ.X.rq e!ccQ!+r-%~Ani8W`M(ϝiiZ^Wv&wFLP$/Ay%a͹PHA-}wy)]if.XK?Zp,&/cyKF4]w\H]qWģ?ߘ4{Vox#!DvmvHXQ4fD>P|C)unŻ1alqϯ.([y[頒ƣ8}"DR4KV 6lϤ*{ul`vGzmb)! Y-M=tt2R$i]0J@ ieG\9D;K s^+9ęsҨ_6_5x\C=6hҠ0zc&Sʎމ(\QT{]^,0'e9?"Q<AC-``(8$qA=Q;ScI+tQk& Awj]\ 㔸rJ3j:O#Qo}VJ=a2P-’aЊ^@\ɁT|kʵiM?!|d{Qȝj%κ84g4 $`ѥDE5#̢:.0L`r,V;)# h ϸrj.8<[RzM}QLClC=W.iq7NX_;YW{#68 %!8ZWkK c,>2)듇U 2k g:丘K7^r>URe#>;:$UfqڶTx4Xt&.]?V,U]d# h {gi!KսJZCJӝ1/PX{RJՊ NN0oEmͧ:7$=KV޳[jxvs*C>!ظѺXk)y7_]R $UwpBv>^=KL +>c76Y1{PXx/vj9p&w)T9EiTcS2u[Ꝕ["e wZ(8Wh9'\d)e!CTc+ vaTŲBri3߷x)V?CzBAjquѦZ٬Syb;2FW;$Pb (mΏngx2u6@Cvڱ(;q[}3+N>J rlǧr.camV e{P!Iv#+ba=1xbu-$\5"V93)-fa-=K0`·L# Jw R}.>Z \ɿeP'hz+}MKh;Usz 6Ip=ٵ%\{[m)g % [==%x(\7NOuȮ֌tTwuM43w8I/ ~C-X n2/d.UE XW5- J#G/(~}\LIs2 @mǙNoםs{qɫװ^v {#iB*~l{.դln$EDTۣn9gLU*D#e\z~w?Gz*ZA.Fei~KXAwXȲ2- oklȮ0VD _Ù/Y@[B/*nI_n"~ddOekEAk[o(0w}v;5Yi;D-aN"%l, 5 'ZbYuݟh$1I!^c7 -&6OKmf'WH*S,E2r s bM"6sjbۚXLS} !qjh2oE]f'CuYZHp&[gJ,H3U{JҚ}0U"5uY},'OICpkgΒ:h./o20| Lq4=٣Q#vzTWr^a%o43Ư;<_]%2&\ݷ&qY횼=vA 7;}<(uVp8[Aԓ7Ԓ0akʳɋQ6LM42z2.y\pX8 eӈ2}~3 b0<n&Dr~Yt5| ;P'c?<~D?OZON A=aW5cs {r5TH;b o kŧei>¡!#BԚߤOz:w0KoS<*"sօu˲UfڮzR*nc(dy2R5 uJŸLjGHtY5\d(ٰ`,$\jC,Kh`# "U庡J>I|o ЁǢ(Y T^h<@Lmh"Ąq|t/p!^/\/5VZ_!@\37KRn\sJGp}Jcalf8L0L*MDܙ?TȶNZ:;1-ϒP `+zqnW7{eii玧G[a\5damƶj) ~}?e  >„n7 `q' hzOiq/-Mφ+>b_i%KY ~uzKZY6cl\&/HUL?r>QX_ wZگI@9㑥X efJzI{K]an_48..8i:Ҏݗ C;aIS ‡&*["Ah1TNʁNt83{4gEe{;/pdDTyZfkj\ket(&|.CEVWoF`Uj1;9H+F@SZ tV\JKAsV (w|F )a!-,]}' &O , .y@8 MW3  R#U/hP7y@ u<ήlrTڪ-d@Ҷr@c-.iIμ 0$Yt=KqΏt]9.2U8`1U.Q;iI'xW?n2M~ᅪyOpm dM,oJѩun_zKǒFz :'":z܋I#`AA'3ގm>x%:IsW^F!{XenA-:"V%*ncQeMG>8̃|#q>[ECNX1?a0] ew SyUc=rΚۯU[07py :I{M.dWo.{Dn$;xt^'lu)6=@&(vEoƍRR\mj{"L@=i:Xy+obMvsi!';10o"jORQBEFn8 +`zVWHN tͫdYJtP8.#ptt:FSMآV:vr nvn7GXV5h9@θj{;; :J:(-Jt:htW7kh&c_0EXm{,䉇ai\30Fxb㆙./'N:a#6n/L-pqʣYwaà&b| n3z,[VŒ!U "US"c\>hk8'zddO`&c^ KxNIIԟ(dwHVٹ*DY>3ٌadvQH8*C&˾Ҁ ݋+پ%">_j|=eXD$vtUyGᱨ?g5󹛏M5_=Rr,\'v:~KQއ%mSUeeu hƥɓk TSHI;7AfĎX‡w9 j+FЊ6&xon!>Ʒv1+}ȭm@pS> G[0,JuzI} )*K(=m9FDi?Kx/>w"7~^61t!,EZX\#C Xi^$4t^qe]@xmqꅯ`< J7&@L*Ȯ!ˍ btz}&~Ž.MsERv`Ԅ}`5v"N vہ WZh*pV>#5WD&V(a`%k(I{QY$2nHB}е7 1 ]IKcyè;Q_/ 4D劕Sxֱ"N=G7! p4.AE? KfS\)Q 5*z7AG76֑+jПxm; qmEE%{Ɖǿpon휕X7\CƄ],Q8 ' `{ݯwA:~ˉqNү1{C]5nsVʳXOi-%(2OB/(0=A)Msecޚ]"hVJ0q8E[n1L$I@ F8pdӾ2)eHkEv+l8E3ޤT $+{)^;h&;]=f13NM-/JҨs-k{A@8J NV:_x)b!3Vو/3 !4xa=.`qpJA;н`axWf1<־ cW͝I7B ~fL8L+`UDR5b< YNjuBwN!w.HZ>f/G+wM\I:Jr.^.DĀhτO+ &9Z4'X8T&ozg $ RWSݣL'^l/ IT;1vWaPugr]I 9`tOʛ%:"0l]yy'ŝN{o6$H [#GU"+ڟ,9;%xQWXKYg#j1!% YL+svN ᑭ),8g}ZJȴ\ P"M94<QnIv3ӟU n|93J}›:S>Mr;كfJ;{ [B4`ouKe>=~"/%j?%S^4ޯc;slM 9!d1s|Jۜrya7baeCI aJ,iv<إ\t{)bS7S7*? ߹6{NMAH(.3]>suođa_GTSe?z WBxX?{L1xl ԮV Q,t~h\*hZ^$L'_љTJ3UH?NߕtaRiZ(".$c5p]a9 ³4/}r; !M@~I2PxU"MFcAg@O58m ὿/J僨bE)4Fsτ~3nNq xr'X䶵xWa}=3'B~edYeϊ ;h~oHAD:~gYurB 0C "_'jw *a48 2?^=]Kvq#aka'~6& &7MN֓e=?jE$x Mn8"FG}(@yvݭ?xoj-&9<:_w=q˘9ki b\Fo +7ƒwtX* ݴO*lWM&ấN8"5;ۂ&ݜR2}5F<,C\VO[dʽE.Fpuj#hdoc//80PCJ[rdI=dT517dG)!k"x//[ⲙ:fG\a6:$*b+̉0AS8VA " ?crA1c|anԩ2u$JPE^q[XP"؊wV܉ҽ@ފD0uCZp)/ B?N"]T_[10~ȮkZO+BK3W)I҄ؤ~ȞfBz] #kug5Y Ձ $0ũo%ww3 OhbDI3^B| p+h Aq57{ XnO:_mkv~P Cy([H5ѹ\!r/p + 2Hti gRm=}?Bݔ~+ϋe/cC%I"@\);S?@r*Bv2%Bs ^$M1aؙAz_E~͆hJJ1!jϞ3QC83{P>T"kA1,Lʠ謫7;g>*#NҚ/NFܷ^ջ[a=,yĸ̤QR&ĩyYe{īM_He,]jZcI{"mL}<=>{t-3tꗮ[fn+{rea 2capp c<.Me}&YxqW,^eYO`4Յȏv{eS6Sɟ-C\Ǻڧ>8s\s4Ds#PPyWM =OpkjxW7f`T$a+e^xĞ/D>i6B<{r8 25kHDtx; Q;z5-"kcS]]bTw49grha$e>8Z|.+mo`;BE^A!<-Zi^yU,fhl,CszSHHu X|^Z}˷(+6TSn=Mώ."?FWb< GHs]]La`m0nnӺ `;knZ+f',jI;*@~n- 9N"Y'rPoIeVtBI ?x-U@9};Er"Ǭ5 ( k(X'R&XQ/{ DE)KB=e_BI]7I+/ 1wԶrF\}Ą"dqJj@[)$p,KB݋FA"sz Sawe!N >UT9UwWVjͽk%'lD n-hɌK8}3`B<ŢGhSpxN`V{vW+ʣKl=EsbѾF5RS֚$9ijs° 4$d@;,]Ql$ %g]7 c%uŶV#o(Pd@O$H|z$DqY @}FNB^ }էp8br.wYpϜ6w䚶0GiN*`(њx@UH,Pa3x.M,J01#Og.aP9{w>kpX[LJfJ78n6R"Gtjecd{Fh82{l)QT'>;@Vgs[Jx啌NWkʊl(*"))*;G-oxn56U)%12i]d9'ťCi>f%֤{3[ 7Cc|-%f ? UG% l;&>SN5f+=CXs~yMofcضPE*(܋ #,U\*"B&DJ۞mT@/0vp4BMV/wQE4NsFɜfY 7<;%Tc0i@d$M0jPw: |ĩaES6Nw6ɯN\Pܗ.?N?rиQ6]iٷL%кo{UŇoYLpj 9ls^{rz,T찷P ,CrtYlyƒ̺8먝s[AB7Qs?-=,n Ły#8ɚ*ĝO'!Q9qP%3Eox)u.A+=!{`-۝A7NW 䄻$ N<@`BB1Bq9=SƩ6*R!}^P/^Č*tCnTdGcAc~8 Lp:HA" NF?+N8nts7MR&le"%?/UI|SL"L!ASY\\hЗe2-h²$إ` +^~C 01^̊Gz"qaAr)G2BQ g IS.3=$|mda =?<7{WůQ'`y``oShd@Cф;lدy $Xmi&S)QnW'PeZGJjNx"qUXtgjMm#+g󶎰Չ'zmu$FXO,l$/MaI0Mz=ƦNd+OGB/7a/N6b(HJYoK*kվO4?,+}T@KVҧ|8oÚE^f;tda 4$jZ=2K؛-ǘI*KHR) * 93ό>V.Y-PUnr2ʛbZ 1SBD@3˦W!Sf'Y:v!M#a> 0^{Gq\X٥i33Z!Ӊ7Fx[/BIso1ҕɭt+tJ+o DW8~u_d9G8&#fM@ŚP3+Phljo(?&x GV"9{3#&xBڝ=9m0uȨ'TS9NĭTW>qnS FR ©7FlW}`lWƄBb:ʂKWs舥rkDAo(, qAĥG,^4!p8c͔+9u+25<"\2Yd'I}6η5AlU1A Zo9y  Kf:_ޘ=stKBs?7ugIZUsm|"OWvrK$5]Qη{ٓ4{BڭHXrjĹI po$"ٱz@Mgf>(Z2hЪtxD0qr$uƽDmmw|M t;4w(߾#~? Cc”E_5Yqj$+*I@N#LN.@Ex0. Y˃WlrU@+;cG3!4byz4T#eq'K#8um.޶.lxQ+EVvM`1 }u0Ōy@5_7F#-rszek nLJǶhJ%[|+ '>uPn#>ϜDR4;1(/,i2X$Ar \tvt)XE.7qS>YA{[go]9cfxL,}5jA" qBM9gjzv$II'Ft<0xyi=j/bURbk濬/EU71%1JРe@Ƅ% 5`$֬ 6{p]rG1\#S +d(dF,Kiu{U{CӜ;!9JtyCƧ=2~ ]lNtD'\ް?5"`-sc%xW+^n,̡h w1,-Suan2 4IX.D:3T&pzvq- &N2fQ28GMݿ!ck bPO!’5v~ ij.UAͷ ,:HW8(+!oIB`&f&3 #F2'˟8ٱx z"]I, EcM?&fa}]3srR^P;=%==ޮb=\vy&Iqod-CxYbr:zFzXhV(Q}+ ;I 8 UU賞"KH)9C7*;9\IUt,*]AΎDڤMf+R ّuVðFc#?齃Ot<~aVMi8[o"Hu ?'#sb/Na1s()h^2G~TCoP<3l0#+MG?]xTW9y+),#?in>;47+I3M4@͈QJ:n;4B֭GG.M{Зs-"0cu<- ٍoxKuPrֿ'zi9!dN^mnJ ‚ْsm o\\_p)u3ôފnzU/%nr?%Ͽ}lDj.}U[8x|P9Ql  |IzL"81ߡ@ӿ3z鼄 2_X3Yu/r?1l^PfA "kWkj$Wx:@j5s܆-TOאMόF)]{c`;ӝPfKQ:fBu'>I vXXD1-ΣVSNdBU䉍ރZps?r'ux}tr  fQ-KU‘~#,ӭS]:3-(S_؇~<#1P%b//'пP:s 6C tK ˯OYy!꿌DxbGT~wˏuF')9oA^F nLļKd"DS8͚ 1B. cCHU [uN#ךi HNLHʛw~ۄO@m]*p$~MzuoBq4#SF$1~ eͷ^\#oktU~0I wUD%Jk#%i,Zݩ '(ۦ#yn : X =̟| "t,G{Y&K2ö F-tP9ӱ/ uȥN;Oq}r}s)GT|OFt"9tR?UQ߂x=  1fʁQV1罽NكU {6x#*ƛ&2SPEyv APb79T 9Y윇oK$Rg2p,0eh{ADk`3jT H854Wf W┷+(wdhJx!Fuz%espR*U[h㘀^ö_"XHaZ8I9j,w|y0h6ov;:B;df.*d0ϲ;+{;*L|^Ir%Bċ!+9%dL-ŬstD Jk2N͢_i65_r`E 䕅*#I5[O_bN6D!%!ݐ瑽 `T׸wLN藸#H4b?'|5l~Nk9$$D #{QdG>e]lbyV%*'c5K1X[K{7Y!ԼmE |9%2hsA+j KmKV3P)"}I 62`I \@-~R)L{vgPbFΒ\N-ak=XGיEj]f4-yEpuAbdZu *UtRu[840*`czs5|y+n9Fal\tan b{wL .< IFq.̕rf!7y;IJ6 oq]tty3CPݎ?iF}QlW#a,mQYqJ>pV P'ECڂ+yоLD/s&VAO\~w;0D4cTG4 YiŪ6SۂMOpBQ薒ddsx𶦷W E8 ٌ"Vo-GnSI\g3B[%Q O'Ս%$WDHKn1o񺩔b&h6QrDE&̄=EYKy:fmGMU@ȽfgWAn~$fntmof쓃Rvt(^rkSz| ++`3Cps M]:jTT:X=wp/Ũ.\`8t"Iޠ}&յ1R[C_ k gx>׈>u;سz0Ј_elEe3st(Ǯ5K (8A;VNu9 0ܠgv;Y" 网7!绚E=?JUi~tJ#P.H>m.<  OGm}rS] !_ +NW8@mh(_EL* x(C( |)n CnGQG'ldEh^BWDOϋ.z Bաyk{K){nҧԣx=B i5L*#a*fV )jh |Fj`=}>Z `jDB'XHv5j9Fo|pR^s -m:..ujV^&67{UbPWD &ONQS>.Dˆo[ A~X=_8oOEzv`E|﻾кv. bU>,5nAϞ_\H Ym"2&D HDed7l2?S}rZ"5 _}Q $ 6Hs x]\=ˣ6C9rG]D`fႊjaAG?<  9~=@p%H@;lcȏp2ܹГFY oxN̓Ӿ5 4,2J *,"4űQ#(c1(\pi0Đk8J>nVWl$/ֱ!xqBH w rbeƭ<ɴcف8~R:γ_K^ic7.71PVJ|JB*KdG&pO{mȜ2š5C1?9f24A0}'W ũYH !Fu#b0qyqY)@57yƞ(']z>)hŠd3 79Kk5F!A'3Qulw +[YǨ+M5e t}l^*lsZ 0c+a6B`|w i0n&)KEAwwNlzhFwKb<2񠫸) ٱ@q;t@'D[L+c %l8=Akg`y^gTVs,߻=):Tx!糉cD\n5`TDG>F>y,-ntȔ"9AB ( + K4=Q4[^ '~8Rv=Jڿ zJ?kO5:& Ԧ B&}K%18$ցI=$iٹ$疽n2[7Ү201[we$U-=M(K Z:`WA+ݍBcB7hZ.[4Ȝ8 鹹-2IQzɋ }|k^i[vtgcR5si> 'mAevI0s||e)BHT:EPLH;EjGK8F&8\9Qi2)e4OXeeU E+h0aE7`4ɱPn(RE# O|?)kfh8]JCԈR^Ic&}ͣĬBL>\>x NoF˭`)~N1:sCKyj<D ]OG fmϪd_:xѓbmH7:!tc? w8bA&_`GNOeFYhcmsQ+[^DRt*\櫳g9 }y?WǾCsRh*8t8|+tQ}!-3;38| 3YRέ21Oxy|&.t9?-6`!QdaN3 f!sa0Z+l.y_2jr*0ep> F,srN}sFZNc%AAQ'ݎ#]iy! .`V?P1^ȹ31}=q+s٘3x8͂d;sN0閹jtC ߗTG@AиGDŅ&`EA/ ±GO:%OQU膎$)[H/;wX܏q6 RHjHgg,B#*@OA#mMfuzm75;*

~[@ ^rQR^(*,*,}N Z@k%L𩸏LuQlszf=Gk6l\= ڢ#o4V߱y"Z%\$߄??g#=X`sȁ)ε48MC>l Z@C+#в7 *=-azs8@ߡ&L] S<&Nj…գQHKDS` D%E;a!A{DIiB]$scdF(WGG F/bl.?lHF#~w!_ypҧxcDA(ELG 5"9imVDi; b@ћsaYvdPd$A-Ϋi.1Q7m\_>nq'ӨqST$YVxm Wsl #`_D7#4 }iSܼ5dTFo5`ц>u%ƚϹEI?mt%xrPa)P[hi%؂YY'ɔ ZA@gՀ||u*u-t@5HZ(ߚ| 7VFD[b% 6}CS+.VK_NO }6whzɀbvviK7L#<{Cf|BOI~w!1yqYw_Sma'i%ۇ SA&xM߷+>cZlVM_uPJilg9f bFJUL9:Ŀ?>?8}>^lyn\DSs؝ziZ⾢-n[8k_Mmm)"٤8L+35 C\a!/0cUK<+M5iS v ϙ]0&q#NX'<:' Ѩ>;n"%n1q8(rѵ<^$fS6CGn"w2HZf ,OܨbG\&n@6sjV !?㟥)Χ 6G,xf[ij\ *}T?-2jΈ)gW51iHP@U39FAN(D@bϟ=Ft}G̏ܒΕxy)aCu8\ .N:99c B*atLjrה{[pPcQJL䧹?=I^(#) UH[D_{X1:s x!bh*AXRcJ/F0z,6tv鄅Qcc(kb)!R7pBhØo* ko?d d4fT곳wі)j [c\Z%,**̯|XӰ}PpeLPFVY+[v6>9 c6񃲟Jj3B#7X]#%GéL?8|PVoHGN鉺1!&+E=K&߷ =7n*J gxK1+gOpA/]j3vd\e@S\OfLuI&FW!mS;Vwo+-NS 2TI^Bv!pDQg+(Ǽ߹)YoxUǘfɖYJ%j֖ٛMmYĝ-AiՌӍѿE"ءzsktnsso =abή,fӘI*Xu~: 11:(y:z $D"~6%.]Z#_$bDL:‹I/*[- 6~USvӻL(3l6mG$7_ngL_&Dju`Oe&1~664,?^VQؑ&?_]oe wV6fl:ÇikK EXYZ3}d&}F_t6MdAXlC=[; -& ^npsu+ `FljD`uRa6m[.hyox #ӂmHHpYy/IA)XԟA?]_Ur="Bh鰌П;[Y4LfA # ..'T쓝?=֣]+T2q.x{N)ME_ }'>70Km)G*B 8'HVc,9QY` 6!7iKpvhޭ!C`7VGf͓jVvpIp 7W5Diu\x+œR e>3/-9l( s?ߓ '"JF<… ul6@{@ ,7GZ\X:]8=Fƚ_KcܛO@+B^? ?f:Y=і%O9@(pb{ԃr^c, "ϲAԂ*!wHdi7P5ZL ˗ n[R)Wļ%/fD,| 8>c,VnOOSsZჇ2 rgm/]X;dn(`3 d:ofŠaؒ@owP<67l5;?:,Xy@ &Z*fuM( nt/dP\ iIa<|9{Wl(8d@ !7J{Pw:_k,`X8]wR Sތ*RGD.앃>J+NL B9^{9cר ]Ta9>0}Tf&(8H@G]Eo^RL|%@m6DC^;5|> ;6wb;G[ )RDt L Jnxgc" (1יoc6M` ht::^ԭDZw E{Gs 1gI 7WC 7h\K\ε"FlևzzEJr&OR2ye&TnMQ%l7E 闝l'+ >FJL$b Au ZTkY- Ƭ9EhHuKnn=]cL-vrks޴N.Z8eJHyCXh9%: { T2zl\wÅɻ-HU]TKrz'PfqbMCL|?NN7e |>$ Ii^NVƟ'Ղƕӫ`}*#!%kDj`WͲCM`y֋}cьD_d[^AbNˠ^9V3[#Pzom KȀQVQ8m<N[r\V*Ý!`B;zpd$GTatw1Ik^\+ȀB`D{lc+5d<726 Əql,jBGe:z+Qr=S ډE ZyqБkUX܎d(;Bct TѤoZ>c艊 !gL\(m'H۔〩>șXYMFx+;BR7tZwJOGQԢvTjtp+pVHW8iM%E箪zH 4Ռ_czfhR*gUiKN KAN^p}tiө O\hO! ^fCjRi0+ x}n$mo_4u%Q<̩ЄpK` c(4u#-[?ɤo-㼤n(b~F!^^+\jԹ)lrY9[, SfEugeHF7={+.x (,q&gn?xyCcgvm1HMugn(HWG|xKq.  "Ќ;jA}(DP@  oJbML{<rUܱn?RZB y~>y*ڢU@>֪]y,n"b2)LI7\.CG#K5+@<0mL2n A(Ȳ#e# OUnU5^)n31`IqϜ @ĸ0(=]C m_z&Q%Y~D1QrI:`\PjKRkKape;ejdWg"JCL袽-7!}?5j]F㒰WtΦ=Tt9,?})n=AVGb9M/nOĘI̥YȮTgzYQe䁗IHXzS#.4b\ |f/o齞gf~^?Yi:V)Vc#T|7 !TrayOxF 'kbp=fAHʱ 9c?^)fl>ت]S`v%k(femɝa R!'w)ONC[ x2uNCi;ٕ+vU߻ɓ(B{oI;|ĮȺcuʊ*؉$8mp$4JE҉:ؚdcrԐM8օ2LcXT5% $}Ns37}iv󰿪wjv0=ux5*ϸ/vDnN<>$H! {`]|{z1׹fQ֞e1RLH0I-ؗbus5&2z ׶ e2A>֋밚kQt7*Nc\yV,2l`)ȶ}kp EH>'E Jz׈^.ǂ)ܘـGrI3zu؀\yViol>+mGD4նZ &];q)ňՠJߣba*1戫NAGA|TSrȰYZ2bxW_'@h|7BmT.TAOktiP/ݦXvɎ3T_8j53 =;P!h*O+a$$A@'sry{PrEڞ6|C93QMQٽIi%ë"|O{3C0^듫+  3GM`d" +mۦZs#$n7>etn*$|l{ؚZ#*" Az-!4M~@(c_哶ouhmb8YD#ao&eb Rz:nlҥ|UONSqi@B&C%Lzۻv~uڻŒȳ[ 0;LG1Dɸ0rᘕ;]怆p^Bw % wL\&P♏!X#hFКA"xAH˴;P m=On/[~vv7ճZ;JۙL)*6c-kLeRopz]Bj --3].j8qc%niܠMtw)' 4R a> Ӟc0lU6S4:? Pn`o}$&7 aG7?f :#ًO`: (@peOxe}l``'(A9ۥD©IrF#OM l붝/-F&Ox07b"sBTnɕJzX %k_ Ñcñم0vjљ|~Xdà zCTb ڙ2MN5%f%)/b IL66O 7_REa{f@Ό.֪KX: (&AJ9ayKTDrsI5#i'y^-K_YŰꗇ$f!9grM¾`ϓN'QINiOQXy>ƺ;G ;( IT۳e0 sYy`1(Y7fyMFƠ/&9Sr \l^h >b 7Ą2uXQ)G R*l zw티8tqxc `"^y*_m?E,jS$fmr$X?ו}ɱE{,Td,OG(Eh]Kw+ ̥;/oаy9{ ~ [G uTrCDV dưDAlB>^0;G8~x禮f>#P~e`Ԁ=hCs+TZnA0TUqf[ q tWgE&//4[k6)ۋߢTC<TjW8XL)ܠYم.1zĔcފJ޵[oD\cw޼. + v;%l 9"$ 9=G֪STC_՟ _Enb@b/﹯JhNիm{Qn|]:(L֧LZ+UhT9 qN}նoX"GF~n"0Q"KGHeӟ6 ZulSnQ3[r&b{ewui"ah*[4a*?tsʗ  m|G:('xn @#&Ku#tk2\HL1Éq Jog[xRpE{dꄚKΰޅxY{}?0=vN~،tܩlu/3C1@- -jVΨ@^/Ǭ51QP@}Xg6~_Y8аgjRgЊge NJ/d;jz0/K1C&p,ŕs u[CɃ.}!Yl)Xo3Lsn_V\'A@02Rѭf`*,1v >3R!*1ŞrO_Z QO0#XRc޶'$y(7 TCP! |)</(E: eܮp^~L6̫I;$w4οI52mb*Qv&]HPy6_ՅN. f!7̠>he$Cb (`>Ulj-6p$4;i.hyM lחsm_@t=TBy.,MseNY5ne;a*Q!X OlbfbD{x  5>;X0!*~ ا$fWw}ol:θpy*HH/A ќ\h!‚G9KA$_;jUw[a#wⵂeit-3ZM>&ǖlt;r|sKȴV<Z>5 wm~&,=΃lYDgC1Z(0^%0fUd$@U XsK &WpWrcH"Z(%b=+׌h &;Y2ͽy ~tX.`-p@CiO%wE[XV c} D6WLÈ{ iwE$?! 5hSE.P!࢔m i;oAم+]&r, W#[չ? 3Mچ`4+Ktxx% I΁AW\yB9thpӒR]Ű(O*ӫ6fMu`= UI˽D2 D- ˧61HpѪ3aF ;O€Yoΰ$G0CA R5u)3VszE\GCe|h J;03~g*P.X|I\iHӌmܩc't.ʼnE[K9 Rj~*BϪ=گɞsYYm@WɌ, 4,Q<][Y8K-eD{ܹ6hNFQ_E9"ZV1=_guP0.WKǙ GO|_Y~Ku~Owf10 5Ŧsցs$׵s֋V^T#垣eL=#3}v%ŵulA4!) hmm]NSTȴE']NdD &9YK=&twKiEnAG) yD:[+#Pܪjl;C!5:]W}H>:d7IPJX0._;:]g$A E(zO 5q1TE "B-+1q39ɨ~ K;O',]:X(Pl̻!~ۚ#.C:2ZqAƩzUIW}+q 70׫ $qHkAjR\%E0~cAn 5BKa/H M9'po.1訅(?ͬD5u/:áOMh!(GgKWбx{1QD\hp#sJjVY؞ f弒U*[$ fx;v\Ԕ1s Hܿ. l i M׹ Rm HelL2S싖CV3&n2G䘦Ts: -4;bL+;R|*'&T{$Qv/!d4~A/pʛ`6xvVNg=٧ҿowx>) sijO%XlшR{SdxWw8sLhYrwbU5#?GLI]T-FqeEdV&(6@ ;]u]^?]^o+#Uto%hBY嵞[bA:/Gjf#y+=у?۬OEC|2j8%ZM0#@5ÍHϫܦwyn1[6[{- p_,# zILUq_[֖C˔~mY P%}ROZcY=zwH;w-QJpEcr[BH }*D>GL`_`H^@Y=dVDž=DvDŽ,4kE=!sXƈ.&!L a;}K|A>NX̛:UomgDK;ƽ̓j4BQH]{>U5V;*px ГiSI"Ac*Ke.Evv:) !|}I̲L ̹5=ah儶n'{89d‡ << J5A8{zW9@3@ @Nv9JY.%S^)Nv ,z2TVvY=^Mx%ӵvqڭԃ{S?1_ˉ3}xKp\t[t&?3mܷ=]߮prnĤ w9r򅍇gQGj'p@]*_Á <~_20r<&|[q$bSj~f|Dl4S<]說BqҊ|ǠTj,kC &`A,xǻy냷+=#uH@D`y~Qڇ)Y2O(5gG T,4k\?i.LY:l52DnêÙZ"@fŽIԜ"+ht'@=a ]~h:$ꒇשSo5=2PT.NbG 4Қ6eJeݒUj? в2g9GmȢ@`Ðbq< 3zϣ6]fЭ>SoQwȶ//|@ W4?6ytL}-߂= ԕ$wwd Wꔊ? @טljlO}&gud4My6{00%!.haH4Urb},nfĢfrq{.*nrYV|l234C iT{a9u{ٵZf/|˘*68R{@WQ, x_I2v@'o? T,S(Z-F ~ yU DRi 1g,+ D"xakbѿ IC$~]YO'οwXEx\}Ys_fWDpf1oT-| J9,%w8%462HĴ݉fWL{f CX 4kacxoujmoVYqmĴ{9R8TBݻ8˪>z_P7_GbJHSVF1`*"y¬RdʹkL<"ut.ڴk q}Qo9ŭ21'`}`"L~Rph]VL{Coϕs2=+R,vq*n0 O(IVoCdaNÈX5mLxRHI^ _SxpqNc ܛi"aMS A}T[ x>Q̧&DTdSepEܹL> .4~joyqJ :_.k%.,).VS<˹ 0> z8\`4PSi|Ka!? zxǨrml8=m\oQ0>GSg>s"%)ԪMk6FoV+3fP>jDfkrEXkSs1TnJl kvtG=WP4*OۤyI }˰U4Z=#∗q`8#AU0ؾ!#Kޓ|3Cujb^15en>hy{"<fhCJm]W]?M!c.$!m(C$ hXdㆩh8ftqanR&Qb:p2=zy`}?]2;Y_3.wqu|oc7ݯ{艶0Mo=D]JXGv[lsq|C@dLCÉ_UzaOZaDZ}K#ݰK:  cK LuAb*־𞖟7-ϼq9'0XZx'%[B "J,1&o$(1ҡwbnrQŤ5/ܟk MHm:  Z `JRs۴:2"TArg"NaYjk)ꉾH\W7&v3=`:oA%5V}n&zi\u/"\o c$`$3ey}6\Y;`|6~EG'mnqMJĊܠ)HU{s">UX™xFJ6‘1V~~~`(?+5b-#Ud<cgpb޿Wק2#AdRab vH qQ5 gZS9}'^LONf`FOl H4 WX'S(!YRHYo~>iB`|x8槼^(} }Iml$=k<7ē ˠ)'EWh`aZx9 ;vՎD=?]n%FVH Jw&4Ÿ4[KmU숚GwMlI>Dg~mmO؁Ŀ2ߛ2soBB/f)"샍rcÓ_NNڊT1G͛X܌Y9CzEmI.ɓҢCk(bژ!eCq8at/sO.9u%[ĽBJ@KQN+ήelĴ4V@0sc=íRo vAnmv g_`nVx9 #iᠪj|lx 'u1d^WQoC) R9 _#47a31D#30vФWᫌ-_, ĝ^C%IkuA]7YiË>H>t"C=#9uۆE$Ɗ8M9P fdG31,`,nJf@)Ų.%X۩}<_xMاOtv)&ApoyC)N~'4: ͟/i+;8AQm 3nTy^)QjxB'.  | sړ/;xG,ä*j:":c'ilp 8s0EǍ6|z_>߿ٛ5=:c-:۝; 4ӢjsI= s\ D)T8$ [￐D)#=(i8Xvă' !vZ{ WuGw֨ڭWY36jf96? 0S}@y| e[,wXFسv>V5; ^ AnDWeWl@G|><* aNKٙE| bl=~pdYH+Q{' njUP[$XZ䥓ҥ"9/lM &up:#R;F*> p9#CPՒ.=@2/anaنd~D'Lժy//=ļD>`T bO۟h6*1qcH@CJj uyEBֵkMRpj<1 CqtL&^%r Kнi @R3ޠ%@v=#5nS{cX r F& ~d'=/0M-,+ !+RXSlv1dc)\Ik.RvpC=p 'V%…_)U:yݣ`1hǤs3PZheƑ8q+孡}.{%57۟ q0 ["YU_#H`=̥`?wTz {-Owp,ר9dKlPخ\ N1dWm^&gW,ߍ0ܣhT }Y"scH#E)JkO77lV0>|r8~; N(\N}Eg$Kw 2hb>J]*[@6O4O\&G(78&RY##Psv6nNgd`3~OWYQnVHgP|%h[Tp){L*o<5}^xBɦ-7S+2c/)!٭@P:j/@ծˊP#x5zO3٦yccb[#%'6=YXE͏ܻkl))l0 |`]T$i;R1R=OFז3 A6(jUlY5$<`vTwZ8ءKZ(b&.HߵE"'dU6d0|{}"2Bq';>0+@ŽN&B?KAj8<!;pB$C ugO5=jBlXd5̇o]nUT>>802}Wyױ+)z2|Bε׍-xwp$!y鯈m&jݤGGi_l]@M?5;v y•sm KHgyNi]YS/LpX%߄RtmԐۤ3KB-W\ܫ!;s{JB}=S/)N:?K[0#  \a^={%6ٴ*QZ<[;ɂn4,*@ň vzC $Po3J5>DH:T?ai_Me k69ٔP` 99! I۲V<@ ]}ktUFځ!* 7'Lӭ-q$ָE#:9Nu68;$$5_}UQBYmڿNS_G#J5Q=bI@?{#-Tsª[\֚)Xy`q.X4s彼Acz^WxO$ٯs0aY݋ _E/: A[Ґh]փx+EfNR8'T q]*Ew,C8@R6Z}/zd3VK``EV5t29䪟҄4.s:A zYc/AK $抲J[>L-]::K[ 6]4%`#O vgp2{fZ^'jAT[h skLvw2sKx܃*6lW* 2=o($:]J%ed18Jh>yr\weOgoǿYPNyb*h NTW^~Ǔn ^tٓ!T3T!x_(X$(׀QD.f36:]Fe0MZ 擬sEM͟ 2 1oŬ+V<}BEg+/px Rm^0xVabis#G6້⪃&T1KL?7߸,;ƝudGu#WG貎Rw !z@oZiQ:r]gwR)dAj=)̚%s|D[}Zd#ȶkKUխ(4\D5x^ O^9m,g&eQifdAzr>h"4Kv(y1(dt (֑7ld&hnրAar(~ѯ>uĐe]I"(nՖ֣N_`xu":anJ"\tU?pY0rCnnpN[t5r҈#f3Vu5w @;y*Cˁ\j*OC/{E8# 2B;FN}ǶWwv2UQon(6/Rlyeu)^ +%O;Qtx&OwaIer%~is^H0%q٭HL>2ǂ:+j(æ_|\w-9u6 `[% g!c lT! 2 X;lCh՘膂h[udd[&a uPIf'>5dga}rhayEFS1夃Ɂ]+˅c߼sJI[_k":|ؿeg51蕉& UR#\=S^PNe/*A(ȿ3G >ǂj맰P Dr+N '65aXz46,DRoov3|qP1*1 Zu_Rh56{=s# @,bE^ -$`5PSQz!A.`ըIo0F3xv5|d:_N ,&H 羿A g [/z[F [PG U֙ JgԪL\/Bpza3< ,21̻b &\8"CKpL9K:qa,܏3ljf5S}@~Y4{ }|v;W fN vپ3;z/j1LmU^g=UI&~2K49",ǺK4Whgu۝M+=^]w1 D'Ah :\4-Byve*m=p@;(4jNtT?Gv-.(N]3Mb- <].y Zg54Xl"| !txy u%6f5ݷ1#h $^ÿ8zs@2C?ȤFm)"8`Bp>Z;[0ȡ;u"o,4\Oa@Nr)P /(;7e"a,i(H~ wY5$C<~&qM'X?618;c! >I&TDfM l#q^pL3eXzqgc_%h1XTt@Ao'x7 w`%/tq_GGԵn'?]P79NI˃Bέ//vY=YlIug|&OL~ZUAsm bX 0p=ΦOyq>I}sEh jEfOQ޳#qQ;f\8S+Q6`\uGArZRkiCh+̪;mh, 8mN&GD54]+ofNR+<|BŻDQ+;sgE=lmg&&MKSl 6Rǔ-+ vm%r@$ h;3]/zr1x::5۾E2 bCvz7 7*jٝ44_$6{!ss /En& x 8Uw"":^ewΔ?yBg<E29jrAj j7C~G&]avʤM!ȔQP@ėn|]ݩo:-q 7N@$:e$Ӥ K4|{3ol(橘GiY܇0lOvfYM80! ͼ2*iͭTX-Å[#?jv;'ޤy+O #%YrkE;6!‡Um]V?˛wT҆X߬Yt ]7s9-NN'? \MC!( jj; ['wQ߆LEbWʤ :9cl >g :<ϔPOpS0gŗ4dOEAՖ_xxT>Goy}=i#w\F Uއߙ!fM:M-̓k>raU4]f-!͈KHَa= |qCyѲX.$`_¿C*#\G뇗Kքt=AJQ(4579tQ\C^KZ?UYD/HOw6&yԜd#hu}cd-u1jPm8u[Fh pNQg=\Shy)ra\DZA[V {( j7BAy5xB h=y_ هbח^_ov%nYfS'1|WUs6PUPB+B\NZCie5ǮUZ}:ŕ7ދm~qso!/VKTޢbs7Q8{]IyF0^詁X0oNj^՚q2vQMCR .7>nhȜw"sՂJeI<* d6csc8=7J>\zlY0^I<_i"|=Hy0㈟nrqS# UO#8`ήB=FU!qNTBι B&o@ X{LY>S^ir1& <޵m дUWd\oc,YEY*2J򉦾uGQ;Ip鎬oHToóQĎ).XwHߞK?kq08 ȑu5Dc-jjN1{1D꿖|%ʓn1%Gҙ; Mv :,~!{gы˹&ˀdƂd4Ϊ|U6rr/>v8:''UjwB\{IEm8%WtX[|e_T$gF#ۏWAăPQT텏_j~Y<ȆbRbn7-̈́4WiO&$ ;F&D nWtnIK a ߴ}owkd zE`C]ӠB͋X-gD3#QO8{cߓWh%ANn-fR|_a$c0gXGwuUrRF#kڒ3P y>`Fw!_3ȿJoh,v e&YIl 9WpRwbo.ʲ:+^H+8&AΉ7Pn 8P8Fm E9*|c@4bD(.4™EA#x跭QNI8 ۞ƍnw ABC|9æ~G aؙsmYgw\7* n5j*1%ДL~-؄ y1r ZhǵuU6gps}@2:_GC&yNכCli?(wj1jDiW(f?"EQME3뎯/t$H)vV;*/(r;)]oT%n9@2崳rJkcήxF\ ū 0]X $G6p .ve)T3XmE-vuZsxk$?@ (]np)wZ;\rmD ~1UWhgs2.畤Sd87ͬʞU,Wej0F0%QeP,UOьhW ES DŽ++XF 2'ϷF4uE2uYc˽Nmigk矸({}w!ʴ&,τZZsn56NPJ+U|p*$p4삵fw̼wE5k` cGgh[ JnDΪu?O~~G 堤EjPheO3iaA)uIDI\< Jt=@Cy#k"&ZL]{>A Ld&{ja&8GiQ\dGb5㑰/Uc.hgM*I8 j'kgPVP iى_z;j6|U?CC0 p5V^#@KYz4!QwK= :\7ًd'@7 +wuHveܰ'yڥg:q #q* Y^˧ ٕw9lAlܙ9|skifJZu* iH҄nZ?$aQ KXMgcB+ph -lB>R ' s~P:B/qGKVs>k~qA[]Q,^q [0%'>UF|.Ħ/H6-۶7-o+֛M  #PL 8W[0P.Bv'-Ķ!#hcn5ӰT/I0dЂS/c4}UO|8l^A o47YߤQQbk@ .dǼ>Ӈs}iqVf\qzo@4+ G`c1!DԲ?5m66M<K&EtGVTF[1 !sfJ9".v"ӳ.,M7@>ang:<=jYMז+l[8zҜϨ.ӶQD,zP2xYs^HPBOY 7}$<B=ﹿ˽H'h뭥qN/7[5*D^[',QXj`^yq![^bnD7HkEKku,"%+Yb5sɌg=TwxNQ9}ͧǐ]Ґ_Sʐ6Zy^.\ֆ%@#|{ɷ{|W<ъ։sh9ש0dz4c~?@Z1Y cӜ( 2?'0U0|Mipzf2)ehGl3aꃇu!ՑfWDaݞn }bD1WNv(XEGj6%+̰c0`Dv nV7m Ѿ׫. a\)% p"u/E/1|X awPwňwZũ cjEPfѫI072;Ts@S/<ݟ};<,TX[95 +'t5))f֚,Y`ۑB4Û0/{WbE$H#6(Ily _Vyg.\9IRmXS#"-P:C$*W!{ӳkYKlOy-$ӖdÌA=gM2.u"Fq [H^ݼۇƞl= g0ٺ _|Np@Z"{B'VM邎*1H }Cͼnb{DJ&ȀEvκ."[q"_JZR*"tuNDXKH#` CbZ8Y!iXK7^S9l/F+6ZTWP9L!D|Kx|s}R*~BR7T]W'X=5JI7#гlLJDQX%#'K}u */]%xŘi^B~fp9km$!B!Ak8K  vQmYSE qqF}5e3j9Q}BHF2&y @Dw88s ;O0Ҟ]%o7[N JzJS}/ ?QDWm@ FZ! ! (T`>߽ 4[*) >+@[Gߙ9jGJm Y+6(q2^ #1a@_09Lf.҆&Z&T9_N}ҨR5;әCte 7 S9z'&.kȢ\:IFznۓ7(C=ԭCc=F8ãAdEFKJvo~f5ږ493U* ls%?c545vJ+BNZט(4aQ!T~t2upO^*pUBi=e#EK҇"B!YQ[!Y !cO`]bݙ t;!xh+ߺݟ Ϛ2mMHˈ7@.T+!ăoJ3e`5o֯(tsxcGyS~Dh5BB0q3ww|\\ r{o8]1;`3i%Gʽ) 9ʜ9ke:R2x&כ7XŢ>Z ϐ#p4܄zzlI}CGxUlNa\ձD+@dA]#LR mbpiL_DӁs?̜CmGU*25̈́:pu,%iyym /~V8S3 p'/HJԛe^,rgU#p\Rϔ-]se79e@voql̶qDK$aδT8sFؓn8@ٸfmGss`8/QY2;dqFٝZ+Vs@ix}*?ns5 pS:z|W\8[FqV$Cv=w#uMbӈo דm->;40ǿ`ߖ[TUdGT,%`]|o;)"RJxM,}I}=}t%e{jscΉ"ÐEb!ٗ&GӥCnY+:-gs/L_%{!Nߘo\ )B5ap\ܴ; i] i"ԤPcgM9.$STmN8q4&26Ϡ"% $G( Ws@r#'h*6NyC jQN8 %&d:`ð8sc=XMǕ+b.J/cN5s<2}C>045wi<'vk1W ɧ,U.8 X`.v{{v6n潽4.@wۼ3B'qxtZU8 k#=%3nùpbNnhӽCӗlX-ŇȲ+\0O7Iq9Z.&g bNJ1$WԄcԕ(Ӆo1@3 2}8-M+:~QVCZZ뜩Ӎ \뙂e%qP)7^=>/'Vmm3JlwqziTүܧf9-D<{+!Y`%fp^ ûCN tn[ۓ"uh {N գV[ָ wF\d XA!ZSRh4oäCq}Bh^^u)vA~z2ڼ͌}k )lsAw@@w"J/U`杠Nre,CxTj277J\׋酨+ҕt&}2{n_^6I4U%s^RBUE C|1bJwXğs=@P5| 8@AoAn@5B#qi荴(h/Qxdظh5<(I<6g.4 #BdbIO=[ކ2'W@& =ntZTvޡPZ &u݀>fC=LFgHhB:=It=CtLʶ8$@DlؖqOPE#g/\%奭yGyA Hj}-w0.bm3 !pwU fp<"!7_,\c' ۤhiEe K*gRBSß9)}y[i6 p?k8po+}wq%Ml 1޲L[0Od'}85Y2\Xh vg!񟲃bD7\@&.ԀkA $צ)(ׅiب8wA=>MndcKǫ_aVKtL8a":M1kc8~|WZ& GcW-o KONg(/B..<>^*!?r[U'le1x9t#p~Nw$:dHd0;h[H512wx#: Q#U8 AC΂]*wJPj@̟ ScB6`53F당F &s~|XU+~;BUu_M3Ʃ“/NOl~ .O7AeHV(zՖWKu*/*BPBc!)/G-HTCmAX_q2+$6lg|-=i~{5b#'OBjS{ I*й@ G9fNKj|XZW\&,"fԳtDJ hfWuΓ `A`-Aͬ$.P.S.Ҿ集7h Z =TLq'GVnh'PHV@[9uֳ ~^_6T @(̥<;] ?@ c1^7=:K/2>A` )xz}>_@.Z!e#X08B \#Rlnəd9蹎QH8&`HL: BH'7xwA}ܞ`]2JK/cx"%hI]nY..~z9P7xs 11g`TeSrQP˻n³bbQtt>pb\yǾO&.cYylyk~XmĪ8Ua4X5]}\_O[ WҙJFŊ2$`CH~?IdEbp]MͽOcriDX zĥwS\Mt" ;v^;))'桼C%v57P[Bh ̶9^-M1˺X&P-$(SRbP,pFiSeRlpH±xقnҊ_i#q%bDgܾ vHqCύ)[вޫٓi*M^YgPD@mN+c*b// Dޱvhpf9=l+XI vC sь!Q.~q=u5CSXaռ7EQ?67}8!eҶwEB6Ar]PMH&w?g@lsJ36FP=JҀ ;j"$dS1QBN8{{N)E$gc6?eg 1:!z)RWJTd *VraʳcΡA/~p_qsr_[66(hLE*]A~o#V܅10@oɇU[5zɲM?vL*ׁ a>a(ZXGse!W뚂VrʽtcwKa6BOj@ @; #t %-AP_=[ 7]V813y%Zz:ԵfmeՂ̒l勞.JOE$WW39Ԍ+iZ0 3W"^)Iwe4kuKӿ=aaS\?7Jm{d,]UsNT>hömSCDs,YkX UZD| J)^)Eg758bJ[{6/ߋ>-qX͇.!+ttk,>_*{߸ 4qˇg1^$e؎<"W?6fCtBN1([%{ chGiDɺ ?NKW8۞Uq(H":궏~ҚK+E Ag'SH ̑jwMB>z¸k76_&U+ck^$ n?$'لI6DzU4 #swјm?Ja"~!tZucSDsaě[ mX(!Zڿ&lh0` u5fW<^|K#؅ꨪǰhw&HASÍfTg8ri"JC4Ap iCGanMَp#ZycpdM+u,fW[Uֱz /{io3dw"dS,^. Iy3Azl, J`?7 /cM{U@zPSն~h_ Fd}]&)q]lFplqKbr1C]TxMa y2;3|tt"R^0u?Vf*윕S`*! wygc,wݕ\߮%v2ݺ|g J#AZ5ѻ\˞E ސ[zsvE\'<҈YX}]\&)H1_1 4; /ڵԨӏ˼w_kyC*6[(TCӎITW{Vny?^Lh7@˺ը?ݔ1cbmѹkHIЀ E^Ml-^^軑:$Rlnn) iϫT#]|;O`l'={u7f@~q6ID`,ۂ3d3 RvY.b$r̹?KZ2Is_ v5c8P!>O0Td(!z.qXi͗MžzWf2nSOa{{9;8N9%մ1&0glܣ:ߥpߥj#kdIVMe"Sv[K3me?=iqxRvF*&4k3|}@2v0*  m]=t˵i+f+E\#8n6I,Jjh-P6|%FJ\NGo=B&XW?g~$ZX:s(9Oib#Q߃惵4!MR!yQ ?)+$  ?=ih:(NvCBP" Ӝ5jrU!#PBխ ij{3Bc I|#B8]F-; Fr+5@u!7+g$ Ԡ\r̈́~.ũߏG"ERSn12XSHksDc{joxKjиzfK[(B"S0.75@]i %͡7vNfkh_$L_I}7` 5NAnµW3 N_@@;> Cy*2ʊ)Tz ,%M6"9DǰS0vC%Z"D&{V hŚ閂HGt(oe[ݲ$ }Pq0 +I F;iēCPG-3FNhDU{ S.kn[ɩO[j[nd.GwhrG:ebs,:;:.A=Hl /i(MJwޱIթR`p1UZn@^fF5f.g 'L)D&E)%)> {M<]i9xxrY\wD=tTINLjD'ٝ=ns@Ց&?yOV4n6m [$J(G)b\ }1u*tAX{L{{ѐ[Z+!,\9 =]q's7;Qh="KDƴ?,n(o Zފ)3(lߠRf-*ދ뭡}W!@2Ri:v/ ! ⻑Lr?y>& َnɥk橳=klje^@VrϾC**" ?MzXCً]q/C BUlW@R:nima[:ý6Ŀ49'v): ˻:. S_|U5hz3 }Ŭ$Tzr~v_vy.̖'X1FXʟk`GSH%p#96+AC9y1Om}i"6XX1*z6)8jsLkؑk)hO{zy䍏CPJiWte ;ٯm<DPE׆+ue^*Tuk_9"۩eEb"mbh4@;5n[)0>1A\fxϟZ.81U *$:U%K.ݒ"]B F)DV :MS.W?F#ou]y?꧴U|g6'd)'+7[3|'}EqնqxsPa)db$p}r9Yg*AYn5e߆h!|e ܠ^;b6~+߆ 0n_A}dSM.qˈ`fpb`w/o}ÍVYc]m-oFD*QΈ S<3=##>8d8NOEϿnA|(&дG h̑-u~ҺJT؃R0D2B! Ƃx@corh@$Loɀpwylj5Zn/CY'ks-T +օ(T|ֳa Sh/=W )+⌓Ԁ.=1_Rr~؆ټS޳F(i;'r];YD Ǵ@3prr 8cf6 扺%X MJsfߐ-v 4x\.R``@*-*s-U~/v., tq/!cT ™hU餝4;(TPt,%s؏.$4.+lӐJ/;5}P͒KwSo4 }-E硴Ԁڿ.]x5pU| >Fbao˺z .HӜ>W8@0?o_kH!Z-oTB\/KgBR6sǎ T75}o;ڍC)0Ghdq-r"osM|-$?{ WC눃*o )}Ad]'+xc]i,_n`<+:LnZso#;l9w#/H~{Zv=5TR^ T{C~5{YT%EF'=&.h\q9?_^R,S3;?L2z 4%z0V4kd 9F>sݥ_-<2M,; Zof jOl"P}gz)Kc؇d.֡DVzt87D^Rn\zRI3F'D7^*$j#]|4Wg0YMwOGOM3<0 Ŀ.Gp@p5?k&=wya yj'ΰkBJjTSx=(QpSWg!p_d.1١?,L\N}5E9-e+Yʫ{irG?@C';yqϙ2>ʣG,Iv2VFO-NՃ/ D_9L's;Չ/Sv#K&C'!KS[즀0Ֆp>͈2J5}/=$0{01ĠCK`qvk@O jspq5FbA5ё>!xQMr᧍DԸ]7(>ƟB(R^AT"H ~Co| osc9 Ԩ Iw2lwҜ}N`_rφWLmX;3>-}ޱ:\ iYqF N9AfӨywkSÑv0歚IV+L R9NF%PB>(P2y"]0i x4$$[ `'dR,mnכU!955x}OQM1TLɧqJTA w)CeY圕eϋzU^ nqegCEx聑H. m_jkTְg?wrpf?E?ߙ]nUz\u& !d!#&Y~8ypUpfFNiɾ4? < rN}W~Iٍ\ Z=Y,;\iN&ZEG{=w`@>*/^֋0(>U>sZs?qOQ8*oMw9jCG^IEh@fޯ쾅(Şw_i9n@bhWݙ|j1s(Ze3u?/L/&赇F:~4lqteD (s9iIi-Ǽ 9&?or,rvhr5ŸSjӗޟ hmFx0V0f.-U ӤuHPg4F)jY4>h.@1HÐ1f2Q\> \1ͻ( Q5g$p&ND8N#?dw/Opжu99FBN=~gLSDcN6V>@dY|gKhҔcجgD 3_\KK4;d;BOnb 읿96|57P6璧R>TA~el@9uǕ/%7^i[R/ZElr䐼6G&B &̚Y4-Lg3ZiXs_Kuһք5nk'bO.GXZ,}-RM4y_5 )miqbb0p$HEg2DliWvPl(';?qaq){+l0lgE,j{Ȇ̗炠WuҋhTTgC}uGd<8r9ɞZQy~X6|Ab|?X ]l`*+PbUq~ECס9q^O*LlOkX:D ImנWsnd[q;@V&vU:=ڬ\"mr6)FA{%sy G8H]LgGdלP^wq a9uN h59)j=`Eu={dw7:r܎J@On~b oK=cx91|_ i%soV"#ng%08gk}9G˔+ՏF^0.BW^7&%K$Lo?t6V4V-cکXFXBh>W{[cw?$ 7GAƔK\X1-McqZKg +WF6>]^׹poQlf\މ>{>v;ZKvŪG!Znn\Ԑ5NM_Piumw4wv[{,Wͨլ,A4!z:IN9xsIϷ,`}6ۨp裛raye-G,lyՇmk%eQ8a6M총^;2EMP2%y AaiYRLT8yRGf |ЪDt˫z핥w"!񂷋7chtp5]c@g^g7oIP NcourΉ6 ËVʨ`?&M}&B}$-YOp?Cr񉯄e';*I".WN y/HaKPi0q` (2(LqTq'm>nOT膎޽R}#; xbГH.>,~g^%>n 턗6Bg~ ZelOjY&%Qu.5H\eyL# G4G:R@uM7l s"֪He)o nm (|w'So XsH>282|GGnh#[iXW.NmoS2P胘Ru4=- mƒBi_|͸FS׎63qSX0!iwcv45!O腲X$ Kپ[Ijυ!ڔr#c ay2ҲRa,*4 exFz$;gz*ޭ|ʿΙEf%pP|zĸӵW倻,]6f< uU LG _+'̬h U8= pAl+NȡLJKs>['g{b6xC{dR26jO=qdũ cV"^)|1֍tp UNd)yz2A` N:^UK~i=,aYTp]Pr ( o0groxgD9\x(m]>$IC+M0:<wh.|'Ě.ð5mq+[?#-d(.9~jNɑpT0!F6J f&vVBc^@E"yj&8\uk"s.k(c^a$ 0‚QVZi? 2:Smf;=cB|̢.B˒a<:;6N|!I|@4DvG ^QLMaB_Hۼtv0n`ʢY31$}QOE _v>ᦓE[tUcYk^bi,>@J ˸9,ػƪC!Y=vUq)u];;7 M,Pvׄ#G+ґ#zN& 2^ #㞘C$>UzT ,D %~nEB_C ׋{03{f_g2W_=p } :snS"M_F *TX/𭈳 ։2%w{X !%ZM>2 `W1ҙh)DLȝ I<<bVfU ƆFoQɝ:,ȩQ&B2dR^^vzv-dKVȿrl\IgZ/p[a5X=vh! vRP M{O!n)CeA=ry_Y!Q \:}%Y|ֱ#MQkZY@OX{Fw.26* )tVx/aK,z%&n 7|5ZZ 0+6>L"D?T/ZXjko[<kCRf)H{fDhL`ݮ' ÜC:"~P0, o[QfNyzPgD>D(y󷟒cbW7uPZo|%(B̀Aĝ-Bϩm+ZiYg_FT⓾u ;-Ά騈C粡@xr1= Tc ote586VJ!2NQes+̈wђe\jܩ>7E ,Dm]0t¢SI>cy4& $%èfG}Y q ! oSנԠuG7Ϫl1&O$#Cu~d,H٭<W&ƭHHN4 F~BYѹmu:Pw׳|>l; &auQJ%X%ښEacJ NKJ9Zi8Ԙx>a֛u8r>Ə b:Q+kQȇ1hfY D3p缱n=?N.\2Z!O#p5t84ҴIl}*׺Njֹ2x%it*?E^xx^^G0ane=7eY W@)󆰻yo16khK "H$FaDz̎Njh̪;ֵ?TEk#I*2^^ 5yѿUKwX93eX3v%pRl &Q<g#Aig>Ho )r fpf g2WVTOWWB,QY4%d`0IZW@/nvx 7A;OKYcJ6= "ʁЛKE 5dW7bG͆ew#MD*m6`|9|P8'#{ dgYJ݋ \-mFw嘟FMԺt#4,DNЧ}C_h%p$Oj<߃ȜZ%|K,رHh,|8'o؏~y.KvNT$ t- NYh6"@0l*tF-϶|pcfscK|8*TiZSc)1Wh]KUف|lŎLJ\fffeU|z ͛By (}ߣ\n5_n;J^=gIRT=3J||y]8ur`Blj+k`jhap9Z4doP-=9x#9tMl?yԱsLH)?u*jrC {=s3U)VY mNJ KJ?( ^͝NB/ZN({Pl܅Z< ƭuc\Sm_'A-؀ݚr`FaDxGM>6Oxz:"%ۅ;Seq3:hoNvP{&H˥>\xEHD^d3\ve2#=OޝJvF+BѺDmM5sYUb2zʕ6jar\Pm %2`8X{RRwRz1e"Z$G||P`䦙B9ɣ`^nJ.l8ӭuBS8 4m/M&&R&kԺ+n^R7ҫ)^j,Z0U3*3S|VK0Z),,t5DE7tcGDu j<,y<|lԪË yDP=<ٜ]Kr|9uߛˆ2PqS G]OYvl- Z2}KB ++hqBod d<%ʚ4%jD]l!k>ր2E]b5 z5,LCF4f3DAH6}gDW_sxI lިz"XT!&ύ-{ n Pֻsj@,gq4M?AKga^eY.tŽ#&} I}90qM#7nt)6[` \=eLGjڕ`8)NtsTc{ 1%6&G:2-Ub6mjVw-#=r!u'2 =go0IXn#x3(oy'lלdp0ĩv< x2&6+6$9R&$V2l[0Aulq頍eUK׉dV+)ns]wT;*oUt[B8kkєpECc+wlV5JYR1=@-N@8[V d;o՞)UmG] )dw3K)pO}*9%%{>Pʄ6?e6TRT#~V0h1IZBBpo1J_㱮$PYQ`v^>4Jũ 'jMf[>PQc u,6d8垫Dnݒz@}g2;?R/s'Vqre:jEr* !-Mwwn*"LrADvfk݃t˿q ® Bf԰daB~/ f>~_,Ty"QjF/,2kE(tΧo쵽;#=kYY-N1-x#@+qO!^Kl^eP{= Oy#ޢ}"*ΙU5gqHք+-@|`>MYU5=s:33j]!iphkd؟~|Mo7AՆcRIɶjwUC?0}ɉ-ER#%l߂<-%Prz3u+BK!<-/Ιw]LeINY]X.;VؽSf`~z${S Qӵ*]Jd" ˊYʁ4TS߈6I%>7^E< `TH˨˒/Y+${Z5fr!.~6Cd3a܇@xW{2_CXU_O3[EVDU~+#K@(ؽk6OXΈ1ίt O< `Ky dl2QpZMZ/$I t`{@15p8{E9c@8>p>T h#f.96W^҆14 ÅPA_lާZwA:- .y;vCF%ǩva u8͙;D+- *Ԫ +ve-g^m0CB&q\a^'g$5U+ |LZ>[͗%jARo_͹<RBv4F'M 73dHAiHWsl!D.k_TbyPui֕E)kX6W[s}zJP2![-?Y1hĹտC :yZ >uiLO!aFuq1C!PQ̠sS0T'4FBF*5ZmJq[zڑC\(xM@g?x͉*4ZA. kId_A|{Q~4WB݂.n̒FTAFAVp$|Ln|IE篸<#} -J3d~(U@Jo^Uʲ5]PЦ b9cpۅ;:Vqw-pϓӸKzsPhЇ& Ғ~Ō,D%">+Qڣt}EnȖɐ[((AH=sͰw/,@&4HЙɫ՘?wqs ;XMٸޏY'ݨT]@H,=p[iʲHU*!.Q:4r-t1TZÙBX;9v۩).D7ψX]cMS}Jv+D! Յ7?^h[ ,6gKx+ȿv7)tc | ަV5?x00WzVCE?&"::t< Y62,KE}Xe{i:ڹ(#p?hg2 yIE8H: @wԍ2_tRc`56*.V>x|͗Ipv3wJbiLWFD{y~ 4CS80;h=OfˋA}sW_~۸utI%N8%r 6tC275[xouz\MJ &]V%V=r ֣\\)$yqH𧈤͓PN-ضSCf?| $A.`UTTXH8scϥ$w=?8ҘVG4 B) {q>Q`Ffgu\A'2,o ъv4„U1p*Y"54lʱǏ%(Re5ltcVb&ImRw=7ȺhaQ 32#A;SomTCD̩< @!{N6**{:s\XLx\*)lⁱřCgmid}<ۧBsmjF&*۪ӂ>s(JN AUN'f#=j]0M œgtdL߇hLU©1:MS0f'O&Cb0T,)@KA7Po@F 3Sz%yӋl9C_/y;'b$_/+D .&w<~_w2тi)~F7L x<`Q |]S-J65,1/@R+o,T>k Ѡ㷪!ɱO8ٿ7 {u *P/g,sr>->/dRjZ ŠHN >%^q1nh­rSJ<[:jI`aޑǮH 0=64U}}x6yܬDca Uc&%jXX)ث5(36M=}*sl)) 'YkBy.*dȲ;SqCW.Iq_>˟y?= fB5y:d=D *&7ƺCuDN8kAs*J&| R$SXA/929;+拓,ܗ>usZyd\pVc:t5 ;kXo9N)7`GY p,ˮ$o@py㿰O=)5Dr.Sg1>o#U_&P.r%M b~1/ryҾT;Kf W+(e^."].Y_haU +5Wؑo[ptǸ>rŠAsX`KQydwdss'^=+s}hBسh(^GA]4cG3 q7gQz]dTB):SHR'f{@${Y9Cu!7yakFU"q2ۆ_NC ukF͏"HOtDeԐAkL"\$MPg 'W'*E!ߘvpVУ L'41 V=tp5U-Yr+~]|$Ov;u˚w) b;*ͿjwQ!ixٯ J8#=ŨJs~zSȀH:9g|>a+Uq L(U$)>`C~X"Ce]EAG캛p}r@0g<)zwlS.ÁBD/8>ݍLVWHl|ńqg@+!{BN La9PWX ؉ۜ F h8N(u0FX#UjVE)נ#]PNgC)lj`Qpx-U ,%JWFv'%LFeA; Lw}n;7x Qaqh&nw p] gsZhpd]B+>ZT+)]V3f7,`4rX%CLB *򟫱s> v#~܊a(,% Bku|)q/HH8*+eO_1H9%ǜPGoQg;Av>+(Tr~{8Mha;G0?90'3;`7h4:OYy¢4~g7lJ4whv&PazOh|*%\o0q  6Kc]_b|d y2FN+A&wǣȜ Ǎ~ {kFz h(Y*Ѐg@CCA}pZ B  aSD߈{ܩ 螰?n1nB6A傩o*Rīkr=ePdq }¼U^mZ"X.e5-"x7!;c=UNG]t3(; Fӷ%#m/:%u밒ų̈#l2Ä,O! K:_u[%¾,}E![5=l6h¨"QSro =)C;j,<KSRHJ ݱY *?T>?-{XuQ,>)t=ꟷ-7-zy֍i0qcxmgnM͒I4?zu ֺ`60 mtr- ]'k_a%Z+F|~Q%jM[baeؠ0QfƷmrм_b=RU S$~ %bv~q1UqI[i?m aKf)_[y:_B@ī%7$1<窒˿:( |JkTİ;'YEBxc}5)꒼^zW+M7(}d 1db,g0"GWlӕra `: W:L;I](y7=^pnɶ <8dޘwG¿qTahn|{vF?1*pw 'pc2"C:EQc7)=h\K׍7lZr&==Q2bxÏdHAI%9mG%L1qYZ9`Ymyp!|-=E =)i[bb(A&BܞjKaWr_c-s9t0ug8NX:d\E}_3Y j*@̠ɲĥƲhW&gB ij{/q 6秉n3&]_G׾0V={m&s>Uq8 DK z@,ۓ;؏Z_A1pZ5YP$1fLL' !Ky\a.D$ctƈso 겂h0 o:n߾j}ةE9G!z "]6 @fLYO|xRHNmIw:nAq?~DК/N&iv +r؀@OY %};tIJT[rmqȖ'4`8ܶX qνڿ_1+,UG`y` s!8Ci}~\7T( +Q[7%%JzAl'`b)2n(뎓T/}oܑF;a/\Ok/s~y)RgvQv/~.A70z:ѻ{j et+z /7b?ibF@F G4YNHչ!>y q܉䑗N؈WK 3?.aS퀢tɕjro8 6=ŽU0Ts_ƌ 9s\ M>Wf3?eN ]=O@X$n E3,A9Ge_dPMP7M5$IGm/m1EC+Aw%/W0P6z%^q~X#s0- +Et4γ5aլnDcf+E٬cg!i5PEY8KYvjb^D:)rX=$?Ɏ"+ElH`A׾.S,g'٫3+W 8yr_X%1v<˹HA SNf[zr=UT[7GZzbعqDUp(JH1,`!z{/eU.)txy~t`HB&+C/|l6f =stUƲ깠/VyebF? "gƖKb9#u)9G"IPȐ:< ۾d=. JZ5BB[ڭ(3[ E>a`ư2HD< *@SL')l)Újy~&AeA)׹ӭg"B&Ys:̱8^x]*_D5X\Rޤ@FN$c&gc[c:dMq] {ǟk#'SurYL-jٛ"ILg3KК+хa 1pF:#9Xrzj6Ava1/Z BèGTIĸoBó5K _}2\䙌DXFѷE~#{&#6-S;aBA9D1m@)kgWF#4f ohQgNޭ{hNM~bs:ÓΣqq9IEI5ykoU.2H'?ш\_# |IJvdf˂Ӌͭөl&%pݟuLm|VobZN4 'K̝ꖈTck 䕯z)wwpӍ_uը }G\)e6/{2RE>p@90eP*g}O.z$N۰tL g@5&og诏 ]b8ﮍU @[>S uc MsHFLEB*0 A+ik|Hvw&d5*&¡ ^"t+m|BcbQ[)w^Y,vc[ 6b1(SԗMή)(ԇ5Km=`[H&^XO ~axXic,FTh: l]L:"7X Єpug:ܺ?i|pA#/e(nx./[J\b|#w+EҀdvJ*XQn /c>S'=O4}d]aqҎ| )(K5̻Dٮbm b.FG ;:7?Y畫pQAx!1o%kXoҜƯ >X yr;>j辢"B4c969@hڻayvcKVǀ0w~ sj)W@y3H~c~G͗]wts?A%Qu5sJ#C*W ]z_-cT&9"NcƝr,PjXvIT*`Xf\aQHtK'^ɠuoch3UvϊP?o>h4y7jڂ]2BMG$زnXKe`r _5H M^?G09H9IG;\ =+#W!h⤓gkr{;koC&}7#7*Y)7RCﻸNzzXKμ־$[gds:U(uipsx'_4G3߫$?S,Y&RGS'Dz!gM3i;m(HKQ8㉆yVLv{E|iLUzWQ8o-'9^YK4I%|s{%$c-xF6QgݡPP6>nE 81^-Q6=Ve;{׸T^m] gؐxͽJAf^m g@ju1 x ;JzO?'upB΁Paķ亨Ya +^=:L$"Ā1)қkҘVh \X3I ~$5n>$6_ a7~ypyJqR?jwI-bU2 [oHSWVwy] Ŀ81ltwh9Rߔ?ż%EwIn'M ʻ2uu;gJ=tȸ(7A;tq!Cbz40i&ʧcK~q _-Rו$" ܜ?\#51k9=D, fb+egN3|+}_>`{'jƕ^*A5P, LZA :yCt ?Ҿw忮#L4>@8AM[8Nrňfx~iE5zAF{ڛG\S@Q7iw榱S;b,tGz!]ǰǂwHe3#ZB䘻/Gr*3<:xv|> ?yIynsfϧˊ.K+<W[7f~*#$ݿu4LkAU7>f~>zYa~{!J~۹-pSI5Ԑ(C=ڑxdΟ0Eb_ "S[A,q2 MQ4;>iGPVP?g1G.}Ԩ ,NV?/iH)|P٭ᄨ|LL#"z1>L[L7.4He:RNTxm(,5 ǐ 6^xׄY.h_ԟh3/Hwo̲MpX5G31,0!y{ծDWѤ DXV ՊU]ܪ?&YLPcIr͝rccݣTUD%VW|ukӮ9F)n 0@L˅OPy6W$TΦm,)u% K,6ɉczSu^a֘F~o[yI]O@ǡV"tPXz?LXi OF5NsWj%ZǘMaFpK$b HFW1pDbsl*s n٤5L =!U\="+ݚd* CPJ3_UXf^,ڵ^M%TXw)jZrRh[4IJiÓwmmQpDs*dtDVZe#PRyo T._^Ș-vvrQԥQCOJGgJa'Ɣ1!muj~W~*TU0z h x`A,C^0ELyŸtJv}P% ^N4!҇ iJ.tAm\?cP4r\-M,osc(:93,SPLFR7V.lI?h0ixwԡnc 0 Dy`_y>oe*{m#߯g6;%Jg$y`G:@{HɦjP#e O1ӺX;aNpgЇײ e 1d /kuY,PdaH8 72#\0^⤞.Εq_gт;_Fyʉ lWфI8>dV FV9x0+W_]UP{Z'^$OiW a}FlbޘԽi~vaGTnۃc r+FoB|MxXDX3e$1h$t-~A-S }'nSûcpM~k6[N֧5 wFpێ&djGe;lcKš'PQA lתz s6N.z7k4Z*[@MeBi |P3ى(36vG߸porNXKne;X'ڗ2,_5V2/SHdNs5=k^yt5soyWKC[M+j8,g=[Oi  & &>%KӦ .ZbZ&j"rm;nDU:UW}aQv]z[ ێHήC FQ3x H TG\tv M`Y>sB1dSSz*VHӇFZe`Bo ?_nkɆ;ҡA;i368%*hٽ$[B\ٞuVBV?©`Ng|ım=O^²7ce܄sp2?57* ih-?Rp0.ؼy!6!+̸\-:_ pu׵+Lyn;jDs>sM5,wVP9 /u"ר,l՗F)Dž uiWSi*x1/tC~r7ֹMvtS s[i!r\MO1/iSXztEv2oy$+墻(2n7^Zak ]2x{l |;=MLFh9hOHݜb1s ٶiitQ ,=!ʸ: h>a)i ^b_5b |L؁U\u,`yō.}` Wn;ɖ3/'|+۶QlHEl_Ov~VECakr!'`lF0N_"-a:!2;;b$(\6^r38o] W#C$ =Vw2p fc]khot)'`"bb)3 Odee5!UFĝfmL- Hzoبu e59u_>$:D,S݅W0X <_دn~:l U4tUMvWIo1^{Q mU,n^zc0DFU#" *wȡrs`KߡȶtB'ٓċoٽn!l)*9&6Q/7!&$3}k?!0KWû͛0Ę~灹r i 3'w.`N{7u Ym?.TD&,v#kAl'& 3L XN]0$x gbyBVek3y:y\nqv|xxa+GNpWBE\pܓdd-ʎUs2j3 ٓöurt&Ff\}7< [>>QylO}} 5F^>#S\09E:-_LvNz ]bB2fkaMDg(NgjШl3 F8`IXVSx2<>V k)?=1!-'>۾%VuHdsq`gGFT{$7J| '|9;"(g.Q%nq!鲹 -Zp?x;qY*w uGF>r>;SjTz:/A#ĹW#cJEO|_+hEkf# *u0{fA+L-E_]ms5ry ƒK.ށ*zq<¯OuEC̕*R8s8sWSHudJ$2@Z[=w*肧/ӘGPd+8XF\6K )\xW|L#xtwsc0K€<§E>㐘b}2 F߾4W2qRD Mc70$^!}ĆΝϽ!l.vO;vTTZ*N㯜@^DxOΐEW[0^tD pL`!a TF,:6&#eůYO]HԮ@8[vO5x8F>beWmEh"HOGzu=Ϝu[\jW0ъeQjq ;sq/$j!H; DtH=s/]!?k#2T#ęY(j\O1l.V;e5MA")nhH`طػ1%bC b1"٣ffZ}_RW_GOi4eyG4s>uLbMp&TrQ^]"z Ie'7 e{^S֣I4PUt)*`H?qHHu#'"!l%Nzi Bln9/P<™e(qFX($ ܖ{|A!Qd@ E!7 +A^,3 gA:8t«aG>P4w.2Zϵ1/OVO\y@suE oq]q  "J7Ms, y2Di[#QГ!ll{@u07%"m>I㗵H|)[A) yl3[ֶH$v4L5㞴f\cАW]| r>18𕼙2Y 9[[gøK޵ճ<{wX_F1j ܫ E赔}L<aɚb*6Dbd<3zy凜GȯMj?H%4%#b_g#i TL@UE7,wn.ҶQ]F>EF u2Zavpg+hI";Gz5m[t;wlK[dx/aؠ\iXn"^5@+QgU7ɧ|3>fKtF p/|wJWd&bk9jr}ޅћ*qG; >;07b+XY2ڣQcnJdcao_4)DŽ؂ b'r(z4zK#*&`5 5l `;,< vH3א_9GL(()]NH>23?G$R!Ma=mo@P#X퟽o=챬V 7C&n26}{N(2F!TdT=#qTz?<`F5YY&q0ox7by50*)>ܿRrJ!FBI XXpgcԎ#++ ѹh+Sy~ni|Jp݆/@M8XR"|Kl:JYPpd|ǟI%`ЙY0etȚe.Wwf꺼t.bMD3GDŽM?$3;׾ s3&j(zw"ޅm6ާ\ZGjcb-~+ͼh{yC%_b=lzG~Y]-e1&xK Ye,jz*{(m&UCɤE P4/cE`r$Kb %K}Є1KZ<ڮK-zOOj>b,R;T'I KW&f f͓u a96j@NIus;tSTO$jgzze<ï?K5Rvq󟳳gȣS &kk숊Z-d< | z v:fOC(W_&X ޶*}4Y耸EJ2׷ZVNyIuÇ2fg%)5ؙuPϲPiz"`?qA#+>R)*) wL"1J(6$C"J~H >5ۀ^R$mĚ0|eBϾS}IjUi?yxV!"yh9d]?pt1h%HNR!{zº1y9 um#wP>R.{ݹԵw.mX s6IYsMd:0E)C hOUgeҷ ĉ{IQ+sׂhɽ8mA$T|}7-74sL ,W\5[0>|au#|D XhM*&~6y mkotbtפ&#GC~+b" R'E}oM)lѷ1gCNR& `v 1q2z:w ) Y6iR+.5,9J~"EF \'w)/q9 N5^@ l;fBw-`Ws_LT V%sO72,ݺKV6\v k1)C?qDxUjLU6M,^d؀bh^ΩF=;o?=.6}R!|j.Ab20Nz BN`-M&Sxū#dA}"_[0_f3-NKH1mKkyW8 UpkB,qW?s]^#ibӹ6b$c7kxE:VTW'G ߶2geKlfq(Kx`ɳ1,y*Sӻ߈$yH?WǺ*!cE=Y=(‡y:z8ʪ,RTϒut}kƄ ¯Iu';(Fs')Ŗ8bz价^ 7_-PIPF*̢֘OC5JlkqRyABrFdiD A.kB폔, >5;C8"R#O>>w [u*נxU%3e߮aO(¬4A? 4N`E!*_<13pqkѻt|Pܐ~ÔTE0w P)Țs%_Nsep!{ ԯ~Qm&T0R|exfL8jTQ0"=u0\B9]>BPAS-#٬šGܸ <[>tv]Z,y)> $T#>hjJyKg} /pefō)g:#D49:wjeG79-FW b +%#:_fF.aX8#Π_ĭWE|-G>2&KIe$ѧcUX@_mDĿ䎍5櫷{ muxO),yA`F45/`ex{o{0MFh Nor~?86E;!P:u[J6UX̔c{1^8*2ծdDt{+~ܵdrn:E{S8K4 HaĠ|,̼'ͪ5-S8NBթXK*yaN-u39[r_,y>*}_mڄ^cClj7g<5)?./SUAfLm x oiϵ'OnXP Rhл R|fȱH˻0Ty&톂%c C8MQ5`!_UyOi#xv\;'9&r -pb[k]pUܣ&YLEg)HR)ߠIb=eQvsiDA\Ur,@=80o͟L_]dp@ ͂bjVLaldǔ4UYB>έˍ8,u̫Xd4]f-1!>`]W܄Z &R,+9ĭvw =g.=FM+$:"X}晛:m:Quxb\i:_1W=/<8BjvCWġ܄HjQ2G pJ>PgZgXm)}2B.e-zM*iV@t?"spe  ~M0gvDj,*.zm[\ aKȏQRBcxR2<>2DRJiF-:,ՁǓ_t czg@H}LJ'WeUyH-|V䥗{IO_v*JB 7 VOK-Zuu(wy3Gmy $6/xZ@iA?4 )6,,Hf10Up9JhF0 y ZTZ*#,1ۼlMxp7Lo|~8ZQ9*mŚo&狥) W{U#lǵF=FmUqă;{" =ӳ E.R҂mYЂ\`Ƈԩ_Y]/(/2Ϸ#)3{lgPBk̊b45&Ou;ŏ09>1i#ͤ*i76l}EDˢd#{ե k3{%yj]TY\ ħ ?; ԲY"kMk"(P!)u3쓖Ȇ''r\xai  .z :خ{7NQj~B-;Ѷ9:ޞ_ G+ݽ\DA?H`¨!V.ApW,Nv؃И6m9':Zp`5f[hgA/k80Gb[`ƞ}MW`ߝ D.R1㊥$lv/t]<'uhoT _ >h_ۀ'V1 vez"IioUHL ;~\y-vtJ _9& sAQqKs5 $8,$dw].+rߔ%Wh*뽩Kvk-:~:y]}J!89I_f~:Ua'ΫǎZ!6vQQh'^&7o N~! *Lo qےzzQr[>Yse|򰴿B5SrgER~-2\_a GzF0WR.ZڎHպ^.nI# FB^P2O9p-*[!%+ %2¶Rf9pS+t'1dHQk.1-eYut$` %୷ JkyI1{Uƀ-pY@ Q[#v 𽙎_jĿ\7&ӓz~؁?H$GƔ\rbHk2tKlm+SuWSز]|?3N0@\Vz=vriׇ$^Cd.?rׯ*J:cJ0>t-?U҄;K c E(~OgT%3yrtJvquMrzHyx. O&,q(⽗Pn_*QH;1_(yo9_}/ Y Dʖ{l~e_::c:߂hr*% 3+vl$iOQ.옣1܄N¨p W:e6B\=c97{R p# #Q}Vn񺘁9znC^ ƿEJPAJYY"Wjma'MKE_ST9W㈸4*Dh V@ykd;w&]2Z` F:4mG@B畼6AqYmoϮDBf -iE`KA~v#zqGj nT.S͛=A0pS6#Yk[ƷvVԩ[q9tl4 0v9A`*#w-иjFXP([w|qk㹠<# :bEPO2Slb#`^ XEX̰72暀>G64)|Rk\Vom;%Eq_TK;0{jr٪vg7?Pd(*7P^0jHHSw -#uGCѼHْbk*|5tԨI~0yPrzg}%wV}Ix0r(T`̇ʔ1>u ښ|T lt*$p:+-Kr:l-wcɟ8 0ѱXy116wޮQIfO .!zx^oL]H~mε|!fo݇web4ӪB_)AH_Eb10ܛz*N_Y$s__=ym2̓oUtcRXʀioA<2 Vb)8y,Rf9S@/f<`ǘ>gڧDn.DF:Lj }BQ\?ܒu|?s3v03q\h1a)vȝX:R1fNCb |Hr^z*+R傇ϜRI=Si j+PcY5F2>A>hcu\~lK?]Z GbN0П%`lwVaݡ֐k=T%[S'}+iSAuڐD^<* m(IFX4K$G~j'6Lt ;vY!x M4 ѩ0Wń-L/d@쓤GwaA ͘5w w#{p[gp#)|݅ktpkvL䲷ͧ#6feE 6ҷؤ *%ڤ.0pVKWPe!Ρgi|_S%Ԓ~AE, E4_X|h~g$_NCLoPr+C4mwrMKF=a>?E,9OH󳮕$[,|r2~7h=jݦoom^g`Y\N6rӔ2ɀ '۟)Yv6%C?͓|bȴnupÅ_Xv_SVyquOr~GQorL~L1]@c>^I"l&+KYWWiExfsnm99~j=!VIEMZ6b7B|4* dخ)jLx$+.0y ;&rRA$w& Cq@1 hț*jBܩIh {_A)@G#u8城+2v;ݴ૲2Ֆ^]p5= }[ҥM 0Zcc3FW]?uq.!.Xi_L\:@>Ds͑?<*ဘ;\xܩf1"݌o#vAũJNDL3ȍ(9o$\o"Z%"mq5n6(K`g5w'_;|e8Gd w'-~JUg9"Ӳ~CFi;Н<&ޅG :HFjƚș)snj۵ȕO z>cԼ$Md-kj55B'}yOs"B mk ,g.ަ2 6Vo>&QIʎAx>)>xol < 42;TeR߹:ڤ.S+Sfڙ^F6_6#aA峿|}f7ae:b\my.  ӓU8pƃ`A +NHeL#*WB(*S#1[Т8-@I7l:"4*#i&wiLAAݤ{gsN)zv.o') e.⩬Bٟ2?=u]1qhKGCNمCҐ^0`Zڴ\0{Iq>k˕th#.V\6pr))Z)d66 OKq| (?Cϩywհxxy嘧03*{P%*x#ukXi %wdoFBԹsYRCʭ|c4*pU[|W17[7^rBHOLď3ڒ.sRL'YZDU/#gZt6~t#з-4'DatN#o5΃;vlֿ;.pa3LC?VH.!T0iY;*xӚ<κFWZnY5HǢGnJi)y5lim6fLŅ}? j[A(xr{~ ݪ*~tY6mS\JD$^#K8V#Ğ&_1</]r->ڤ멦_)DH W$G |* Rx:Ik#u5hZU猆: xf.}VYd6ˣ `z#o FF'"?_*O>[VX [8Ic dpv'snQQ'rI$; eV)u?]0_N# +NRJi≥Vg֊6$9swZK舚gzA*cPįY-|_I6'olU9G,4R[!ghZOQk5 %gAeE vylI7hFVɒ>W颼fNvl%n Aᄌ}0lEPbJK]QtS8^T+hT2KEi,:9 #1U"(GX裦e_Wcw:z'Cb9#2a@[x"/ˬ5*$S9eEY;ZHUX;yb=荝S"u*嘝M1Mn͌='X y׹r:y$iCoݮm:c"_GJW!f` _Q3[D^q cǔ#͇3hI+8Ҍ"ieU+ Η8 C퇤]*ͭHEQbz!)3D5s0I(t[hoHž 3>*gTha6r- Z8GJ[+ey{,.0eg$ɼMfǁ%zفs$,5wW:}xXzSn'YWC~~pďQ:l\e5Gb^Wco:ACtG|3Pkw6\b0ߊ0k [+u>t߰=p(wA~ݛ@9n=3Zۙ0TZ|X fܽE{Y|_6EpGh:1㥛"R}D'?N)d-P~5jdLY'uZlx3Q_# āF 4}("a]V`&ޥm]`VI ƨQ͸mdEh P X$0u^#-!=+*]<YMKYWdpg;8P6ݼZ7e%mHShć!v`5]GwG8!   0C@fL (W3ؘY>oTv1;$ԉF퐂զ30؆TK6)hoH>ucE}=N7,3wJQ?U\#ˤCj7Y>!Amkʇr* p%>p@BzZtʢ`Ws\.la0E/FԨcPl?uzuAg85 ݠVsT]C}̧xfP6IqG^\ˈ{2m)?ir)1cp+so~hxz;Fu[;%Y~ !?Mc]:6ֹ:}Y0fMp\{o;u Ycd_k_A0 8Xj&4EТ,, `bzHǰ?\aX6Zf%z*"d"NRcʊ5(GNu >1EާcLHE P^x }"O2? f.g >(țJ\D M+>J>z-SXv*,Iw%tk<8%fK\;yTהZz|}O­rpM3 Nɹ[O44 q @_::Dilm5ZOEDnhv@m`D)spa c_+{&tŽv 7X,`;B& <`Dg ,P܈RaCSUNk9]:ޭGzO23sѨzguwəLNٝ 5Ǝ6mV6 =ҳ4@fo2F ޑ;Px,CT\Z^ T](irVF1%xŸr>\1ta)ƨxlp7XJõJ]&9xD?L\pҡ=JƇ VM6}4"pTLen%3c[ΔN`mY^ma/&RBSr8^b;( :d6*l0N.{ӷM E/{]+xz** %L|pۈ=dX]qRy$4eZ\N#QYKJ/D!(baL ^1:N{ikuoxdd|9_e,lj!1:5ݗtn֟efz0Mފs&?/ 2O5JZ!sh jD 6SUms4Dp>0.C(JN Caja$a'} |]@jIRHČp7G3;\aʅ~> jc@)D xwq܅P˭~utpxj~&%@zm$^fS4퐛nuxiQ8c*{ "A)r{:w fZ@%u3]y9,QOZ4\ QyCX)٨#BĤ)p=A\΋ͤGn(0쑾Mz jY`=d,g `KbX:&?\Z M Kqa|FsuwOD@yVI.F՗5b--}nW-=!All̜`Mkʃ c\ӭt<KW &1:.`!0 -嗾R̦a&yPrL:!;y^鰆OPm#{ 8G&j Ԭ4i`g Y^y@qiT+*pݕQJUMKϞ}^l}>Tf)hg=&ʸr؃"W1\M6j Rk0m6Ǧ~"85n$܂׃>oJq?f˚u'J"ygw&8Uk\rmIr<ڹnyBor kn, !bp 84f; opzZ*DKtWk@vYnP5|>v 4OzEִV|fp(˲Xw?#Rs<h2-cw@yGXHY^m&ie ;Z~e`q&bb$.N}qT$ڬ&1^rt^_Ǹ߂0.'G8YYI!ceGc(_A3|JM9:!pxkC0'V\p})JKƹѰ+zXɳ6RX]pv HqCwR${Q'&&: ?"w|3󦼜/'8~ EX0ɫ/B+F;Q&=Isp8\dmW^6%LCM5z~c b))dsWLA%gwј"층(SV5fә+5|wI@d&^t`P"e[V8 'O7UNm`&>)E)K:P$,|yޢJ>C> u+MguԥZj٧KgZhP׽%xs- oD  C/ -m?]N h4_~gDwU|2B4@&1>(fKY`sؗUd cll6-rޏ7bE0@ӘO!~ZY^D+Jn1tc,6C ׎M\63HüK]%Ƶ'58%*~%X7KkovtŐ0z =7txM-d ,vO~>X;1AԜ0UcVJIOzNluXx, 7pjW ~$>:)^1ѺrUXu/'+"eS`YCtX003x!*>fi=wEþ`qP b6Jt? m.B2CċB%x>pwsAE"u@INz}SRҽÉm8wziqmY>AS?fP͗{vYQ`T;3{X>LTIr~s{B b(b>iV1Rpi?ѼtACG-_@B?_I"JNL_/,+LEn=>7KJ8.uL7j.ڳ/RbmwɡO,><1pR!T#ul]GNZq${v)l>}BA{ #0  fzc/). Z2ܶN=THcKs4< x2p]i\a4f&r=͋kSF,΃ kI& ǍW|K.=gTon}WB^z¢H%E{pC%nvWAQE^'ӧ]Հ&gڝ]x~3F0ICe}1 N2rqGC^#\U6|2„ra8$jW¤Eg>{KgYrYToAK5]hj2VA k[tgPl7PiyA_8ak\RʭFwibin00uP*{ /T'tB4t$LdtvMlCd]gƩEw^~}6u3{EУx NĚ93AEvZeO)<[AG.ovzȝ?d$ mRgwP~PIXG+.vx9sF?+S V^*Ec p-$c=:24*jl(FKq>!*`C ^Mt1Bcnt_sI+Q4F`C-gpeͳ?lNҧp4OE ۅ EaNY@ TՍ ڋ\3Ld2p[d*>W 2- rw?ӈ2}&3d">lCx6DtBEƴ YP4Mga\;T@Ὲyٲͮ(?%'Ob6<*8'9sݯ y/UHǃ9h@ӨmM?p!ID+Pz H38f{ߗː).~lGO , !SA-I:kMvk[O5xuS2H4IrBkp?sڎt}`֑4d^#p a7PRR/V&0`my8H2苭iPUOr"AUw4 Z J?JY:N3PF 9CcX2&?K}(y훅XJ,7*;# F+m<7%'̊E?o-tyu~0t,UȆvUf֮'80$]=/4!4xU>\ +gx 0N2˰ql-Z vFcRe؝?HzޗO\&El lsSAy.p-X8͝KA\=6紽)pYT2P,u)yG33U~e$l|P&H@bwێȿ[XpZa]䏇WDD(q9VRRY6K.'aoz^SҺqB^zQ' a\\՜w)_4O m R2Q-z€ frA%:D_@b8>OS} gy]lԙ无OʱW D4ȧ0#j*4":4ظ>Y$/%%Yy >{fs"l3ꅉWpT}0Y5u΁lm.kC/[Fm V)eJK xOCQ^0d;t 3%ezR 屻Lٺډ#ŏIכzHi럎rҎxG67X&}g5V&W`fGRv$%Dgqnӎ| X/aoTW*H6 Y5hF!<. Cyc3!TH\& }*Y/_(y_ :ǯu$xe: %Թull؀fiYZIgnS\HX\CPk̘U9ⴜQr`WgtZm\/϶+MY?/_Ib:ԐJFk=EoXԖ&ObH8UrpӉWH8£>Yˎ`oF38@򀦸'1xͶY 5Ar%y ,O Ty%ЊJ-8dm~Y)H<=KA +I./nU]7y.]j>П=!zF`A8kyӔU{> %@"Tk|ag'gzAd.|BUsZPﰕ6 \2&8ӕ0dϦk.A <{L5s\oB뜺yC EJg*OHkaZr|ջ5+w-dL RW$,-WEmGAU?Wj]x);/N/w"卺:YE|aΨ{6c|JYr/I!u{f[_xtv^ aNqM g >Ͻ̀> 2\ A`j _I/Z/қNgBT[2 Xt.ͩ<MIG13j]3.HPiwԊf%HI/$e VF%/J6" :wli9VS,df+'g~ܨ÷13<<~70RĝVhyzu8Q<vG`WQˆ"ƒQ> ~ e@8EEBghi"hEz3n -~1_nD)ȱVd+tP3l8k7gsVUGGˈ9GWeQhF@TGa9ǮIrH)8U@,L+fr!\ޑV{TdEK$K$<6sN'7Z~O/0¶)Z0171&k(~MZh~e7/lfn̂VD"Y" GPl_m1%ԨlܛOw!jkޘ:Q N]|3''գ͆a *8G[QZ|9 7!sH#!f#Sݸ:#if3bKN⺰V%ϗaDSJL% ($VUW0;fFZ.f:nG&qJ6WlW(ƝFYڱq;,H*CwFVoBA4S:]0ú*shωAc(Nbm Mn Pq-ρ1׵H&|s#AR¼1Z_4"[ Mb˜. nHi+ftbJ|XT4V!iN/ɱʹevPkr a+:3چ}CK7LDw$\$uKI\x78 ^A7GwCrN! P [֓MJ6xRYk r08 ⑧mOht)l%3x4lVE4u mnd~̦B*--„׮#LSo80;_r*#ZMi̕"3ֺ%PTC* *@y?ҩǞ&^qagQ~;wa"xNq}7VG;" NEް$iaNLY&gFI؁uꛟ 3C([ ~Un\PQ@ծ{&D̬OI'¼^ւj Qů_ E꧈9F0/Ӯyu0H_}.Rv|p^~o04͐".Odi_C;6l4+@y/r )'m*(xb2n ^D[HS5KI-y:]Jq2z0vD=svFxEXt 8<3 DgpJ{NxQpwmJg4Z1-o9Ŋh(Ğ p7`:{Q3laIjpn/=O8%q ڨrz$rWcL: S{zg}a݁o*u֑p؄H18TyHppfDs7,>whP udL Zuy9CP4HWny $t(f2` UgʾSo6;: z`㐁cY>_DUg)|~Now@GdƸ[,>L{3!H5xt0(!X޿ 0bV Q/jCxJ#?,<5ROOfG|nCׁP&>OwpEQ&Q:} *m寐+K:e&ʹF˓^V0s5Yڋo F68ĘLN^~uL~I~8|ݏ9( Z|g&n@Tr|?DL8UԜf; `-ZyQu&;>3sk%Q@\hVw߫ 'Yκ "i`¡z~V%r>WT>-Rl䃤Zo$e9{6.=A#qmlnQ*~i+/߮er:HcN/ShIh@^,zĺ .{Sy ~`6vFtMi\4V؂l+sX&C!thڎ@Ao1p2bGc2_VH< qD29tSra{ JS( 4|sujF+gO0U7w># er8bQ_K Bޕ#x[NDh3/51)\w_u4*E fD =76/j'ցZ]L "tJtԠ5w %(U7|:|}jes:T_ÁDpmi[ƛ=[I}A$.H٥pB:I p[rO Tqm=Sx$50?}T#)6X$ Eؒϣ qACP62yۃWAOğp4?$S"Q|o|W}@<#C98oLsX (sKhtY;V. qvewt 5M)MQEmC) E} b6CqI t]6qI IoҚ.pDaKkXU%!=XJ;Ѧ}"Ӻŀ^aۮ.Hy!Yź֐u'͇EJ(,CrQ6t:f-4 BbXĞn'~ ,[ [JO/x7nۑˣ._A,mLTW|,VXƼ],|!tќH!;?.Tz N-! rSUHd9"|AO^0m(xq/.WEׂhNKv^P1AoGnEٶ)n>Ku);),cFx+B޸'E )86A8>zAv,ڱ&>`\yńNnTp1u?:"I@dyi ۅw:#m̱kB縠k5uҧޯN# 4_ơ9~f{|Ml_D?"MĎ-ǐ= !HӔ+ĭyNP>K*O7n#~eнxvrIT5Ҿ 1-I+ZCx4ZY((?'r+juhK:$|O~GTĮ7L=d1p(oN9~ y; wW4Lw7HP#4,T 0oGPj ?~ Q1N{ܮbyr۵v Mv(nwwTK2իc(x3-!VOnf+7Mî+~'Ӆ MPK'y}1ko)\) F@-|P"@ڠFw6[coјƛVI/٠#q^kNbJZ ,jf^ ɋݓ>׈ \np(ğ:Mn@-$Þ2S8B_Fz> A~rɼm!+[}퓬ٲtep(qrreu `v$wǏ OHfR \0~Puʍ{ "ia"qrl~(%ٙ}A YtQM{|V?J:?lm:?+R@.dK%XefAōK)ss:)Yj3u6rY>"LW)\ guxl!lO[\%-Cam˚Q~ N "8:ʪ\6\mc }*7Jў9hDet aŰZx$b O/6ȇ1hBAvu'b,Ioxv$9H='q!>́MR|JVZIԀ$ ( qV]*%g.#+U##w{7DAI}RpP1ѹs"*f8tl1{WLPkЍN!i7a3pZU|`kL/*E;2[=1pA<6Hg?x̀i>n52qpKl8#Kwdpo,I' Uy?c.D҉Vo$]6Yr]z,`vk}h(hiöatA tOlH?脥~n;wL ϛJs}j&λҚH욯 M}?p0>o[Q Wa9VABnju*|52rrDz4̂&sMX.£>qg-mi <@8QuyLT. ^Jfhw!%*B#r_r@\R|if\jٚQ|7H1J"bPrH pk K}vöK5^,1o~/]'69q,܆=q1)*jN}}B{D{zDLʼn)K7f+c wi޾֍ޠw0Upp ZQR8!p܆߸& .EZP&N)> "ȕuo,lppE-Px|1H^aL \^E M6am^CkG(tӑՇ]EMwDK+Wv r-D2&?ڶx:hՆC}O{NƧ9?|5 ghx5  NAoH"P,%",2iFNf7 #4f}ARٰsiOh6456ՍOnsPܮK.2DZ? *dULaA ![h qJTѭ<B4e_2#sxWy7>-/5qX4J(,dh!`ƒCK26מ\,ib2 Q>: LᗓWzNT5Jb`ANJmB>bje8yeR(a`|LKe̘i3qъ),7X !.QcrوfM: NjTSnߧbYɕ-G>곜t!y5,?biIa.ln"W\SӁdH$BY spF1׳M.囒/0P9t%#XdT:P *@ˊ^(`| J) Vy%z=IЁ`ȑ5MQ1c=A:洉X芑r+#z 5>sТsew#5Kh\2\yW$5Olj2(o|f)zq9Ə$ruH^6Xl\e}, 4gj}2^LJz æ Wy"Qj*sĭdyY$C^&>K C X?m3 #&bArL} ,՝T=pW)u(%&?GսiF}?@5t`']%]s梢w{WRoX{ن&91$ϺIY"EM<`'{@L#Nup]cBҰPCv%n$pM᣻֨FjJH4e4%nCK Hhe>6l'HX4s X.W aQb?jO  ?ɎаY߰ 9QL/`.'`KF\hdՏػKR~^@@N57|Nupצl˚3x-ɝ#hAɟCM|عCW2jKHtY;뢁i-:H7o)1F_KCc~:8ʲPn!b Pq|C7il(+>~)`“9zWZa,v$*>2K^*`2 _@nŌhTȡV|]#[,{tS8 v#_fgi4“uNL)_nDVOatL@g@Ub!v K< g6b%@ p$+.&]DrU @LbR$`ngqO Ygc~$z/MPɴ7a tiASA j9tMSN?D '&LT%|TJj;ӿMHNY5؍ )G1k0.bq6~9t I=+oR^I ݗX`1/8j7Ůk f,Ke7\٤~wb.g>Ħ鯣4riKpZaE+9*b ²N jվ2 W:eVIb YdqO5-#LmS+o,S%DҫCr- nRqR:` ~vF퉊__A;Ȧrg~acu]|KogpC-z#}M-" VDuߜ5yHxxz7aHD`Mpf 0tKhc0Ac99Q\̸\Wy'iyP̃IƧ`~^-vDv-K?S#LpryƯl>y|}atj1O8>lwXzmz!kd})A bF0]p0G  A BQZS,mpㅳ|ʉemZP> 'hs4ʘ[KYDÏ`w1OhH{<-})a"RԴ\ Fϑ@327!?h}[mNQsa箙=/>tw:ɄA8JCD)bT!囨T(U5Rk;!8:5(P'y.4kesRE2ͺKsq? 5r$ﶡk<Mއ'qYMt@^B(*2GYIo3΃Mgb*с%l#7r[,i:rFQ{O TlU5rlY"T&Ο*&9X ''{T#Gg?x J^ǩmrÆrk(O17 شsIjoUˈ=׼uO躰]8P6!Jw&(bGA'(p!LMS_(n-1e|M2-h?cͺK"X<ʳj1p^ .Uڋ':I_K7c֖a1#J <;{ܜq[G+/ᓴ<J C%zFL56UPG34'uM|.ߝ?EəhH~!\ ^ AU:n(@[]5}-ض>VA4]3eʣF$d/I>p W]ުۉ}Vy6WBS4Ѻ'&X#0T#_܉vTu(f;~_ڇXK2=R+ZGB mGujJ8Vdb L١k ZIk **vEQh@",AFVc_ ΪHhfHg'cnX4FG</`eژ~.쯚Uv 呺%n_`d-,@ U0NXZޖibE,xKC^ Xzb23Sa;)>{|;,ǧg3Rߟίˈ&cWՂ|ZXfl_:0I,zڇˠ!MY+0``DOVQzs^%y&hJ"5\Fq|I0_JG=xWAz-QZѴ'NۓA)=_cܽk07#%-` ): 6M N5֘NKx"ڧ,Zq;A Cw,LΕ % H 2p_1S9mզ_9Pn8| ~4@]G\KVTW[T,QX# aQk3µ̙[SbkTl>-xz(d]jU`Q0C }G8Mu/I*Q*m7\30+Q(^;r6 Bl\?fT4 QS﷕\(+@ka⍅]@9vY`6|D0ċ2LBO#x&K\bt8#+ĜX@})`6g)/"pL_s}89A!#0`F-cEA!W_)]JCKZ硈o{}ab3[qL4I .>W_@ygd*inFrm~-x+x_P*NHc"t*!( mP #[ЀTA1bxg,+nl) ]q:V ,^k0ȪQfl=9UΜ68!W{o3wCVT-8(Z Yb('~HW62(Pg[ <&I$o92Q{zm9 1308k j24§=˳޽bQ>4eigp26DJ-k h;+ǧ9DԑٗFcUˎƠ"Zo6~«%1N1Memhh%#XB˴5<9! Y toHZ1vГ3+l=i[q2a :$Jۜb9陂J, b 0AY:%W]?Z$ΉM! U.?;_0]Ɨ3:֓0?7ZZ "U!G B{{Xz Y"ЃG|xN6Qgw)VBՑB#uh=%U`d۸hRaS NPcTvgAf QLD>U :ѭ sO*Y ]|F(.bwlxRz4#f[x̻ȼژLSVs*rc~[5J객N,~e{RˁXn)ݒS W]|X&2zׂ^H>HU  2༓A ;fsM5n,.; K)+ʿl m27?es 8l߭"qU1}d+XjINSdq΁iKJÙ˔,qqW$V_C$j6Vs"ZSn^~(9E3zpq3zo̤'Qh0\@+qlde\({},HuNyWZR2H)zF[e!(~٘|)w3 ~'gs6#^tzztW>Gt X %v&=p(bPr q/TEi@Qs]2RU@P+9s% JEj!5Čn5֟9'ڣq$yRt"y[p6SO|~YxX,fpX ~ii϶xeFBi%VuB;0!RL{ 灙T==k^9o?)D&& ,[im(o.DpNP7pn }Y/iY} ZOqypLAc7rs7mv4_h hha_8o=02~AWڏŭ ܧd/_Àt&ߏѬO.UᙵE\roד[>#bSh-t 'XE$CW}ÁK?ZF;$c)cjlP&'@Ώ">jf [e3='aMMm?&=2xvq(DO7E7s"g b*^bow:V#_ 6  `X5nnTd7/$~%q:h5sc|F؄y]^ h qfحu̍z$lYE0욅<|6Xjd9az~Ŷ;;f7r~`YN6XLCM[J޼;J17&|' bI^6ڰ;= |9.otDl !ˣ):nKb㪀EV.6_n `ӯoK(긘O}:q :HY=$^j(u~[Sv)`@[M?MYUxZvX`*K ׊Q 8/ei>6< k1e:è$}+kVFSnA<6Gj)2j\(IVK?9uK}ٴu[-")=HxKMSSM?bz ?HŕsVK(*3ƮwE$V|Xs&pC<'J~/Ĝt сtf)(ôfB2^;!zwOE"9[AwD\ Or"ż3tea;NEYO&f*T_.s 2WThzΨx2c:[pՖM,iVŹ3TvDaѲlvYFǷ>g7GِH!#:A5 (#9{Vg7$_3J aWk[=KMwSN{4.J8gh⌯QvdcK-ؽ8{Ib''[Ĭლ$CoQZ5cxF3?hd֋Il>naAYxf!kBB<װ;$x&xQ>Ʊ[ZnkE{3 +0)Z3>SAz5@6(&6#cQ8*sG|f?X!9ZkýJl*Я#{CEI;Tg:?41ZHP0 4@*z$0RѼ)Q2$Gz͟U9}jɕCO'pq3: }@V_XPVF+ p{םmfDԳ2M~rrb!pL@^:/niT';{'x7GoؤYM.̯`N!6ۺ2=$g: ʂ1K!bt0ML}ΏЃpKBR!K)./}oy#B-5xytB!;KH )Ћ wI%j.GAy2.\)3*!)*0W0S?|$c]@F,]dŦ\y_EBJꤱT:ɀ]M?#s>Q<'ݥL.aR *I-B|ԗ{cBHt CNg@[3.g*By fQR0bN>°#?Nh_c2 436~Dq*-4 #IKy"l 5IxF>imv+5i^J͚Q ]F %AwvMTt,zv|ӿ1kliNyɨ|&]v\v~M F$qU&-@J}U/daR}$ (c@ڃtV@Q:< Uۍ\Ʊ\4P|8fuE⨕vΫ45Wk1mdʈTv_Y!aV@:?w0 px)PZ(U%ut NU>\ۜo4Pr2$bauT)FZ_a"<&miۇ*S!t* EC9|:.K\Ӟmt#޷F]#C+W_.0xua֐xGn(u-ѲIϒ1cR /qLxT0iH9eEtƋr F\;*oBtx 5FFEؐL%F8XF 1 vnZ,04 Tpp'C_4&9spe/ /`B - K8Cvǰm6XB~*2ֻA0Pc 9(qSdoR SE/Ѯ)P!?2RUGp|tPAW}6`zө.-c՘H*'@ mz^]JMx[n*p_YDZL =Y66&0+XpAar|ZQ :C b}۸wt^gV{wfQE:%Oe5U({m:tl<@w 볬E{U3#N߅CYEJjP{̐»xVV b.ȗEMʫoy8ӀBs7#Z,Y@B}SS U˃vIBZ'{aFA._8 L7*rHZтL8LC"xNQDQk/aXa@e`f)qKb0J4,KK@0kL`^so:No 5ڲQRzgLZ_ f= 'jeQ"+BUWwA:ycTtPFKevAxIAd:gԂbC㏩'=ZSC$+=f&F!cYѡ3;A< 7z"83j@+OJ2Z%3N(hY(mJbits*d*dt O}Yp0\9|7ĵkH#\Iw _Knh|Ydf>'÷!gWɬj"WEQ2OOףQ[êjn[@a=xTIdF';L 3/^p'{BEX 5[;A=,ծG Ħzۧ鳢IWJ|{ąᨣN3z StY-I@<8}%*>uJNBxY(( Wف#`;l@>d&.yR`pᚒ;:~O]0Uhu9~.~JqOz U m2IKDcN0l86tƳ>/1 ,te#N*妭ҳ2rЛ=(@ M*)mpo.9 2~&i,$1ʁ* i*'qFP{OZ5SO8 ܩ5=k񆫁[@,朩KgA|! ^gum|ybBƒkm`R&ȣJ_3=n2^w⣊.D`( S!x<ۯa !/:#@'~a,@! " 1 S٣ɛxol%뇡|~Tۅ|t44B̆ɓ=6`߬=j}S uOU=20>"k.l< Џc#*5$܈%΀HmEDݶ|l'kR}Q &YvBAdbdNlw2ʰa I `~zݥ2)`Kʇ+٪QFp/*⩽&KzpX<2E,&[b[ZkiSgR(_;VgErӡzf6/7]{u0$nȹ1#CTY 'uq:-Zܻ0mv hM4_DANzu%{D1Ad km?jmW~zզ@u.*.'2n|6QtI/ԅ=SRҮ\W g  SE5/$DY_DWTѩC'Z kmmmk_?t(9u&-PaKШ}ztmy_F]V8O! $PLd2P[n#m'wy% \ a}j7hI/vksϛIF?-&=R 9KBJ4+)]ǠpU sJ2ܡ?C;Gc 0ŃUfWHKnjtgF^f ;h>ʣ-V +鐼vF 1>TQE_kZb3 `<$S&j+?yTJlO2v!G= &Q C_Ԛc`8$<!Ԕ1QSrquN\ F8qFeWUm&0M6+-$QAނ?2Uӧ$lm @V!t!_R@/œhi'b%"Zl@kSKBQcE H܆&+Z -/;~p *CnNU69ۊW Oh4}MhLE/=k, 7A0@q&!]u.NſGMjM9|2ҎSoː L[ vx;X\A x K^UxӨUa=yBSbn <2XժTpS+7O+HE-* iԠ'Z]x4TXY|[DՕ7wgaDpJMN9dT%Fd7YiQ Y?孈~DtȔ*W:^bNk:(Yha;j]L͔ A??TJT=aiZ$/}pTmvq kZJw7F|lM|3@̲[-qLmžY+>M6"Wl`Px #ůgtNieab#P 1Eylʛ.¸B!妒lJ62Kĺ"$Jne$ςrɏ:CpTR zL,*,VRW6& WӍ@Q،_ũ,iFi:OT={efՀ~EL\B|E_D)NκB u-^Cҡ} ey3w< h VoC7k<[.A+_R_rLo b7V_a"bPB5'zǴ4$%)r4 xB4ԸC)Z{I~ DQby'-(xVsv n:\8- o`jS{r\}Hn2cx*:1#Yۀ2Cev"BR*'őZ=[~GQX=jUNt :qwS%^^Yx?ֆlgB1Z/?sUr|H0M2IyDa(92X+*w\Q#uj%d.ZǖX'#V>?b'}}%-7J՞c>ٽ^ZoO!vJNT4ep.*^&nr}Ӱ@Wꢃ,%8A ꢋ;g SZ*rمiG6% T֌HT`䈮Eʿv@c:ԧUpW 1ƘwG=R0uV%QO(uJ-o]wsrv$٘D=mtPtdRu1|l{?&5mnIgPјT1]wW7 io5S co\AAL&Na`NvaK#.Gd.q?aNMH8Je XMe~.ʼnYx*َgp^rrG;fm=6'D4!^~=FYfSdhm.YŨ{YlRY[lUyk "q{IeeQ q{h {eg=P KE^Ie?Y!?:^NjL삎z/+ro>{:(ܛ } >OqJ$Qzީٍ($ؤPJgnh{,PVLMܢRhsG dOlBBGoON\C1@!h[8jqo ޴F)qY3(3L}-f 8%m@ 1I[*cޠJ@goSuy{[.i@dpt=EvжO{_0*7Kn6A?8D[;qy*L,Q \`SMYiyomѩ$͐=1ц\?l Pһ`sðp;t_)r48)`1b5Kp _S~_ zSNٟ'GviJm =SZ/ 2d:"\ <%4j*!?G0ؘ$ۼm`L8ܫ!ERx?meҁg`4Ly+Z7|=C=5ևgFk>RBȷ]M_RIpZp؜=$dYbE(ēqWRl^oH ` (,KEx8# x~$vca"g:+s[j'u A@g^EI 7[Rn>ó,rЮShO6!H5qa$ff2{QE]vhX<h 0@ӛQƆ6v\m٪M1}D}z,_((PI)?HΊ7՘4[r~!q vaߣ[Ss=șx3 w~R#~Vy]rpb?T{6\FK8Oj[wˆF,- 6%uУ _vEFj 'hֳMקg*D>ǁqɣ)g˅ݦء#2؝>t[!O1h=䙻|d57G%Fb@}(xFlڊ:(0:\jgX"~-Q9 WxbL)ZG}H uxe?`Mв8ڶga鷠!4:F Z574bOhaZz;# M1hXmmiw! jyPͮpLMX?q\) ul]mil1 F>d9B1m`!/@U-eNPּCE+r/N(nC[*$|NH ۲ AI-AIʳ/J(ŴH"++vIk.ϭ)0>H8I8ϮLӠD&%ҕFd SݭŢa~ ˣhq>\&Y9yeVq+S)?{g@FHTTAd|{;aLB_.vpcPq80~k(D0(/E RDʱ]L[#Ei.}'U~yfu°Qz `2ƺJ>pjd=մP"94\Ơ6˟u]_$Ri" Ɍ.2 8f[-fY.u{iq"IIo^gIdi[HN:бgY`dͨ7t'\FЮ۱]lI2Hte͆z~m]c)>Nݙzm-l+1~$YR)8s9ӧA| Uu'wYe(`n,(|9!#6Zq;| )u]OzEZlf`:[&Ljx^35*a&%k{CDoI. w3$ˈTS Kpeirَ+)5Zaf2>`z]`Gn'JڐP vKݾhK$DQ!jGlJ^ )Vg_2j`K&f^vV%wK=$nU5ɗXh+8̥p2{>6tF:,$*ǖlgFk3k_o AF2*+5|!Gxx1%pI#!M/mLiCs~*YRuLum}գC17+enz+*m"[sKLh|9Uqxδh,|zIW9JŮPx㙠H488:Biɾ[fnܡ}IYLoYGˠ`hEAy׭sy ^E;y +(=ٵ.qb) Zv58'Ysy&SѢf?}iYN2NC5UO~ȗ$`ƻ,d.Rꌇwx.ӽ9N$!')CA sMSmE[k%~ڃ9?*)z(EH #_ |?"bYֹH/l˝Xi&2nE`H,ۑxmmiq rܛ%(vMXMhuN.5U+:nS+9? rl(gإ.H8B1M 2Wa0F7 9lbޝO5ɊRRC1:h%FߝMVe ZlP0>`}Ȳ#NT38A$tCe.8q]b"NmY}8`u>5bz=[{̋"EWbuUO3Һ~B(ם:P gfR(w7R%ZbMu45h ^ + C/>HD^Ϥ˵DiV,1`l LY RygchLQ`0EIi/&~O.ܟ$U޷0{'Ʃ$T:°~`zoJYHS?{27/{9(ep47EW j6ÍඹGyR彌H-=+zGфr{gXB,3%eSUf1}4"y+4Ca{{-`8-:^ t0їjWXN~ \ tw8{]xsZW1pvגinNoo~SG+mIV~8pJk'˯:='拉كgGRߒ)! Qax \-Ę|uX'HˋT{4Cȭ{0 V>ʈý2fwH 'FH\Ob#Ԭx{]' z5\LYWKJɎhe̻%r[=D φ ۺh\>;HRnAd4}'4nəy߄EeXlHLOj(f9k -KԳp5g40:]+Xœ s6TbAST1uh,e2B9ݞO˹i\VKPtgFXP0w"Pl*X\yȟc(@Z{#3kbxx%r?N4}͸o{A&Yul9s#n5[Jȁlʹe$cdapE̅B-ZpnДXz GX~:<6/KfFxfv=+WL>ۡyܙETOC|3P;iR>iN姒MPCaB36+wH=5I%5߷΋:{]G)4ȁ>9P&m*ԈgRZlvRe;%л4A?t@"+VhLb-.ܾM*YOo9K8Ѡ݋j &OlCNn_1\p7W{NeмfYވ~5`tE_VF}El20THq ͻֲ ۂ$>GN`bIic:ڃ*^%_˝A_ 6XEp4>0UQsz)~۲y/|4`>{ors$:K[Mʪb5h'G8zz2`朴VP(z?1ifqZǪRg QbtIUnDbot~ܗ3RluX.ϡpwF6\c՞xrAԜ~̹5bȟ UnEVŸ@Lc+imW*VB!:I# #nx+Ҩ哾MVVnH+A:>R7{ŽNWILX7ٮ^ʹHdq\rp`˜,;z֤;H &EUɢXP$xBkS:1fxm I/~rˏ,-y(-4JqHJYM7qM0e -*ۓUPi/mj /vҲڸ a<-[E?Y^wM 0^ڧ¿Z\)}G)3 k}=ЉXB^R軹s}]M}Y::#"$7LPnz*TX%Pk=Њʰ"_ 'Jj\yAh_%Bbhf?Ⱥ 28xл ]c_1n}R7=Iζ,t"D6fP?BKITTyyH3ZMm/IjfWPz('NHбZZ6r1ztࡦ_%Ҝ# ]a3G tebOKec4kr)(s9i sd qԨԉ$}uHڋcGPLBvH*ez8w"VgӺp>P4Y{Z|JRg~{(_m%CAá#& 랃7 8Kb0Z7+DQ5h) ;ϩD/Y ^6!z>+;9RFhQޫc-{H4K*ď|au~M#xefkGmy38gbr STWJNiqԷU 0Xҳ^}Εd%!b'yYNFTB"NNy@mXWޑp=6*o!;"_N-5p3H %802 jv-ܻJ`\Q)Ǫ4dΖ- nøJ{růW~ B&CF 9G 4r̍E/;fj/S'dzy?-zgxur=jSak蜝y}$M(N'.Onй=C"vV,U"/9ֿȵl*rۑCXeݯl2}}:[Ɗ6Gcu geգ| n`z/eZitL ߮\_!dzS/11T\>Q$*,i-b\!:%>Ao{wt6v j^>3N~.PDu%~AKntEQEF5B_=Z_mMLz)qG}W]0_VR*E;8d.l7?Fu/Wak [~qWr,V3HaOC~dR*gwPTopdpegû2x$}tϏ)C"$܀Rݽ(O> 0jqU-kv#ڐAz ^ګ1jJm8j` 0#Д3 $m$<8oL<@SҘ&+yҲuZc9s~=@(K^`6 0fRO˺(_pa,kG[2v:v]͞ym'_GxȾ\,o~<.oU"fx\0'^pjao1Yo N]o@#%;j rxIhlyيfi'(F@| 9FPl 17KSQKh=ZzK@U*úY3*=.:9|pikS/Ċ]wY9hi^Kx:EWJ5}zRjEO s?F(}B_ngFp8~jK^}0 0}\ƆxVjQm+Lb@VrTo}ż`ЯO$vy&x<1'nuMRjr;lDVkliH_,%aޖ18 A7.<ϪxlY򂴜~} ֩[67pUjE$=oi5Yf[Z|u^E0E#LtJ'{ #̬pL@mNRL7Tmx#V^LJ^TĊ,m?qv78Ӷbԣ3" V]X)X/ymXR*8U2N' #pV#ص`o _yd*W1~ @2I@[Wa~V[HgA: (T *H,=>28l9{ɽJϲ:eOډsd"sMu-մ(~\TAyY6M5@PEYbP.iofM˜n^k8d#˿1t:zrHRIV[ьCc$LNK!牯hw'bU*?w-s9#0etժW i8  g ?|NV˗@2bd[""=Gj|,ʞKMf>:]" 6c? 3k6Ϧ^{2Hc >$&t bs.Vsڒ=ɬ(z"C96a++3S{-m lv!=5أ4 ^Ӽ=3[Bs=)QX/Є}&:x2c 6.3=U1 Aݔ4Kr@WL!v 69o`wWf1)]G#@%"~)nս]zlYӴнk9s C oIEPYUG$4 ȠVU^[eщ?@"kU%Q?u ޏ3c*!wcGLx#,Vk>'pe$Tɐ& sgAK=Ōee#%63)1+c`غTh!.|^kXʟ)UHu9a,?OL~grXj%U]TifX7i_el9ƗsՃMJ%]l"[uGbSՐu m\~$KЂL̐#2 +mlN0o~ZUu%2hM#e5[ CV9|jPOjFuTя9mKVMNJ|isZkyHDsȓ{L_ζNomr)th %NzN]~C;ܓX騏w%hfE[!x":+ۅߕɋ6vEA]˾0q[ wVvE]$@UR;$?rWx򇨬U=E 8R1]fO ŷ!5UU0]˦83b/컻'l*h)ƕoۍ6#m>>,7է6]kDG؜<>Z0f2>vGy,kI0&q#.<zh{]>.HlJO0{ V:{s3>HGV*b9?[К}[9T;Wùyp>ɊM4?#I419# /ΏXgJ>wΪ4ʶ}`Ǚ<-ڪ/{}#8J]ΆT)p0h/\o^k16`3gu( '{ @F8Ģ^1d"/Πq5BUs̅0 _)"5q;`ZnupO(lLXNc} #Tt\.qhOtk9BϣD*Q%)[(5N_E&sXDU!qPўꞾ3[)F3ɛӸV?FMyn%c96׌5?OgKbm47. 3zM 3}k!KU^`Il}Dh!) k<K MéK C>ILf 8xl%(pz&:T[_}hP^mx=H;: h<1Ce=Vַ۪1izS-uՏ$K|--1RZjRp T} I)j[mvTJ\ם9c||DHF#JXږ"Y;1.<;guI26s'LvZ4 ݩ!l-Wْ/a!kxgWe?yW r(գSI,fTmgDP˻ix~BFꚫ[JPuhlbxIh2929*<~' TgJO&|~6E ϧ%B!Yd8=K9 -+v*yo"op2;pm/AP~d͠nix_dY/swloP|?q4u};m@He[gOw& :tmaEp}OHly!yS-=''cvJ0*+g Z 0Én;q8yBNuo&3M@n+w5))a^7WB.J)7_0xNO@XE?}\15i)K]3NfDjDXZP4u7X_'ѶZGw\}m6EG~QS}P YS#A j"OfVTr ޾5MˋD<bt/Lٛci-Wg˙wpX/]%H#DuS58WQ7 +R l 7遼T$Ow[ wƔqJoH(;EX-G%!w[Y~5,·~6Vuv}& j͹Oۥ/u1ƒW$A}t^8W95Πg=L=H~e].a[RH8~I_+@芯ZRdܣZs BC&#ș4+߂L%3 $/_iXN0KDs%J6X-!dz0!߼+}jS"N$<s{~o qhӣ~sKuzSHζR$4u䗾/8S#ּv&(nxcr.*6.MsLM<Ԅj_k1F&rU]ku\Nª K-3H 7>&hZj0*f'F6PkP"rı5Nw0&ZL|?&Ko/rx͎k)˂Bq.{zw&B.nŰ^:??ˌjdsnYJbjq$DB~qOz1TꗍU޸ͲG[lT+)N >|•ņh=*{A\V5pAOCh#%?u7p0&k;˪RX:O0U:vV&ԫvb1z@*(aJt"~ccOcULWY/gx j(#J~Wp3O1q-4q`L)xE-Q,.虵s^K¤OU.# ;4H`[H*?Z'VNJ|z=|IQzQgo+tICX@zp6jŠv/gC뺚*&7Fmۗq4X|L|H1BZHR:us'M(Ii[Լ,S{yIQਕ]?s cC_ZH&4H,4ʼn\ ) H!C>-K 2Î?=bw再/t n8olIh;|{bVt/eFՙ&A8V>NQWt>WPf`%g]XeGC?gFJ߂ W4C7cunj$ b,6_&*q H3cɷ"6շB$"շS ρ.l N>U {P=Ja)VJޑ&m)#5& x_-5ႱʪK/d/\xtu#FJ. A̟xAGC魲_xjiBF8Ʀ ,Ȳ9@/h&fhuuޒ$-!Lv,#M 0HFw Gu-  QJ'rŖCWܭ-:ocFc|@Ȗ#=ejg»oJg57>5Q o(v'%iD 79_K#Mo1K)g?:/S"NrBNf|){-2@& W[<$ x B*+)G秕nrJ)2kӧpKydz ї'j8r +@s_2hq+-7K[4iMoљC1XSl[2H"ƭ4\4 i~P1 H;r\RC&-  Ġ 5(x4mkD"QN@<ލkZ`L?2$3EZ4)鞨U)]g<?yfFN_䬫<݆VFscNA/ܶCB3 u[&lWwDHTv]gO`x)/;/@JwdeʞO~vJuĈmچ^Oq\ÖӁtwi5\4N;l?.nwv]W_} ؽ6{C5h[zo[S@J4('98ܗjcYk$kمدuŷe!!##{#ӦE=.*} A~tfdr\)I%Ծ6և^>-Kjl{1(dŷ$cފRײ~yCBu$t&)MPO9vCgesQj^U[ b(;)@*9cG@ǢҎgQyʣthJm?wߨW[l4)Nl{=뾳64) dr&ebn9"a%թT!2E10jAp7V7mE[ِn'B%3 /a^)T1DVy |uzMȤ?g.K\@&BaH Dj8)yQm9T}C4|1 [.  ;}iVV`=Q0lrrSaS{v`C}EZ0Nbm;R{α1j[ fb/oH;WbnL@)Nejʛqf2&(s[:=h8cy\gfK~kQ&}l.Q3IrhKޟ {j&/$#Z>9kGӏe2ͱ[Q-j:87Y5w|B♥'hϛ>xGBKw#rdٽ`xW !RwQY@QglC: RB!{L)_.ʰ=( FXQ5D'L(vmGO&;>._;o@{eD5 AR9nBu/"%gEg&AC ǧAe{UbFs ;B,2]DI@s>[ |/-aFs1T'ݳ1;\@nE-*@V' c]ݣpB.tgIFD|Ll M@ EDI&o43n!܈'}3LW m?@5CWB+m3 HMp(n_+ >1󵩲on`⛹rDkBn809{1>`_{0F9nC<ڇ$O#PGN2? !Po.Dcw9?hz*s22t&dz( WMmV-6(ܻ6Ԛ]~J{TҐ2̦O.{c5^qȾbBv qR8jFVG0EбB&VUk?LůY+,L7SmYP=,F9"+Rj/8sA 1̈4ɸ'[FR?ACԞw1+>-G}b]wzB25'0gs?'O]\H/=}AD=ߵǟoScIˇ/~20 k*6}<ʍ(% 5b$_9 REM|t:{WwAO01sfMOX˳l`Z2bL8t|&E ' Ԑ><ĥmmÄ)r5N`Mڽٓ'Zq6uszDz̧ +))#\{poENo|2.a!-aF9% =Ted r_PvBy:Yъ'lt G)5.>un2i,J?r믺fŒ+FXw'ҁbuUx\*s: B:3 Yn2"۾Mځ{ n@Ԏ;c(SWz)=u9ŏ qu"6T60(Wbm2/Z}x P QuJ c%/M+Wݥo'D,N ղgET?A%KZUF״Tθ;z|^mi 1 :|բA1_DIpnL߆.BTj!6*927|_ӽZ9"4*SR%a>rcX~rYDrYCFaȻjDLcjt^IZ#D>vuu. \hc6Lϋ1 R@Vc=j;'Bľ}>yb UaNYǂV>s1/(!|z%g oT-} AYo7MjVɗF@"-]G+zs/Y-Z6fUy"ZÁqP{F(ˍ|}6b$AEOn6Ku4D`R1ѕ̬W{t-g&?iFOF{29~E.֮9pwaͰe,u* ؚa5b$EߜLל`4p5Ӗ.4oI\'iVN - UZ!+l?NŞ='qޱTUnn]n45;X%W_[85;rH:`aX$ ( !t K38⺴~pbLAx1@֑Isϑ }Xc+&1֡'AA BG(yl_MQ+W(+= `?DEMiz\1s;kP1*/ゟأC1! (sx#VPsjcDWjj˩GI9Ν0 #8ޒdSP-n`@nJfwօ@"K--"s{X,j~_M3D߯s CkFX@ǦkKP;')ub;es ~i^T/dVwj,"Nkn腾)vc .jlƹP*ӊM^w13W:ѡ[z5#񴒼JGc A&ޏE|#zc0*K}>^?[nbËq+;NƢCr/rﰞ'mS,y0{8{ఃx;ʺ ~ @9 51wA{="fc h _ ]һ'A (=7/Kp07QAE790:h(M^1? d&WA)aч%8Oh$tYMdT~昛qKӾF35&-: ?W㐪}m2/ r& %F$_-tu)A,5k$0R^dRtef[x.lRF>U\KN<pKF)eMGfphCbM삟f/8FffL,3P[$V[i 21uoV f"K?#1"jrnW Sa3Pugh{LyuLm!:WZF1u\h|YӪc_%LSh֪7:9bՔ<}^Qt*Dfl#D5ӿônQCVfsяr35+g`2@7͜X mw)B1>8f&Qv/eh"ݪbׁqd&:㐋k;Oc%c/fZ>bqB6RIJ?(i:`7Ϗ*w^abjE C̡ZWȌֲ8:„pXOx.y4J=jnhL:v̦vٴ✦D4x!ΝFdÜis +Dz~D twpm !^aS6%|LV[v'RyH>D(ahPye~M; {{MOj֑|_#+wfGrhz\;ǎl hUOjEI?eֳ &V4ű!gRԄa$w{^#82Ҹ=½6F/1(0- v3!۹s@X"<OY .5i͈',^pv mM,ߟ[m(`[.8Kӥ8F/ORUC<0̼LϹe7{\u%X"hQc`'8~ ΟYWੂ9]NK֐CMgXfQqȁ&n) &C&U]Z=H؜i9z+hu ؼ(NVX~kߟ7)6qlTvn|ש@t^˚ i443r H^s0J o5@b8+xZCЀSW$"PLY VWS# Y3( [/79oBO_uWZ\prm屮$oʽ}o>+9x'>!-O+@1Wcv.ʂ1c6+u=*%xE?VG6 ?5=Lް*/|yv E[ F q$-%S΀dx UeC'W3֊Aq8~A1$X#N{~Na=b& 6y3 Q=/?ܵiQA> #{LPqVn ;͏D@P^K։M\A'N_-{ro.]yųu W D2ᘹZƩ}ǻL; o?nfY&fsQS8Y088PdӁz9WXPzlf qG2=-A8 mDqMfPlXc8_<x?Ze^ %i 0t!c>,I^ j N0!i{1m:Mg{C՞:}%@#9{{6ݨkfZ!"TZqKHf*A7 =gN!I-& bKN9U/hmaX-/*֢6G}IѶL[<:Db4D-k4bN鷅Jˆ֗&~RqWB튶"WN}+JͶU Ӭ4vޝ7|c_ J^vUԴ Qa wqڌ:ݗ$iZE=ߧAWqv Ysѓ-Y/A]M3j;'C)Gϭ(Rbz|Q[64 =6Z!WWA8gAq^ir q 8 ZlDq1FtD,> NYLWkyԸ sh!/3x=|J_d}V'tזwE6gle*,D@ @3#٥:μfGwMk#_pĥn-˄n@ذK*3r1IIL mhLjP>шT+6! )3[lJ[n~3ٴ(Օk:%NYUK:أ]pj‘0-1GI AXZ|dSzK13ImG0K*6.czt$!`yhg2WzC] ɡbٹ'?کb=4/^^AjAszPĿ'}_9g(gUZ( #5t%'UC, QOQ+*}L0&&5rDF䇿NEq_sE{q8A:wFj,HG"J(%.teumj]vRv:H}qL:=e+]܅ *M4t&uBMrn$џf;0sKYɢ ~ r?i}Nm ]9Cw^¤ OaZ!=g'ả%!UCArINR9nkMO)x 2 y])ĚhFI~s^9f )Y_UfsjFqv->[:1k1~&qw#&i Pe#;\2rGͿJ@E߄"s/y|(qûmKs`/!*`3,q |\WyY t LT@NQ'r-ZRqu3YC5JKr<>6p.~r=aR;Vg"zFgYÖDSW`)j!gf› Rl"$( =FZZڽ1!"HVY#f LCEAP-er% pX^3읐uu79q0.N(NӜsT\hghzEX Q#>סmgfRsGP(\l~e<>ֻ)nSwWn!ԼrPZJf3'g9|2b8B~w;ij m0@WH|Њ9A~[ҟډjٝJ6/ %e'¢r$Fx5'Č'ʖtM'} $ymK~6ll6el$"+ԓC9b<>,dvK^ܡ612һD\Y ؓGguE@m9)Ffյq'4|6}>zSw+)h-* f.ư璯MQ:iVFa'nqm 0Ԕ@J."u uLՍ`B_H [Pa!Z'xs;O^ Cn4)Ԑu-b i@/?x=X}Yy LҼAJ&c+Ņ W\]D#st.}YF VN;}E} n[躙z`?}0/16nV_CNvn;aץצnHpdu 6%~6ڐy*vI`x/]b er۪3!U Yh+he3KjpnSGܕ&xBeXVI\Q24=7ӀNQ5g c<(l!nˠE2z7sK .=\Vuws[zRM)@Nƍd4\&<밺|f^SZTDCL4%u Ig=&1h|h6k^u."z̩[qA;@4{>*$2\i&;A 2_ZYv-Vs$8!ei̴i}۔ K,tvF1X()>)v"&q_;>4\[Y'9X0HC~tN#lkj !iʉ|U2bm1x~x\dL̷HṡɊ"1ÁeZe<z \ѿ#w\[;pr/Ho$v+:)G*L?- yҥYnPAt?싛t?!?Z0ʒ pq!]ܝ%H!O,0K=o#[YQXɉV"m0C7I/*v cGwGP!c;⎪fiw5ND o _.O]0HÝ$7u/2݁, tahRu m x%q3KSY{!cI WHk>d9͘~oxJE1rƂi+ܠf+JЄސޥYAT뤷r̪鉫,Q:_q]qPR@3 C3"ZQa?V̉{'-]H [q%|_G{:'uk^Pu#ZmV~#3"r,aAo "-fH=ht:C*U<~Ki 3Rڢq~WKJlM@CV 7#QLh65ږ8F@gwaxx^5ie׶"^DV:冋 Б!<t1ٸ)W,69JK4.xDZݪ<$CL,t=5 ,A6bi!#SP;K!~VIH]DmғDQ/5qhuNԮs:z,LKFkr$dzU2Ra8y s!G{Β,M Ǐ9*}J"SO gO$VG2ZPI:eg(\>brE~{vQe2\f,wfZ\]NPCwwv9:ur*4*9ڄ/߷cB Q_ JN|#?eIwoni[$&1/n``4ɶc M ,/4;ǩ[tRC_-Oŋ&չS)G&n`$8EX+ :Y|yrs].^(\|w1q(_ѤXm}. 2kl5w&˸g'5D[%#8A2Y*xʓ˒ s5_ަ| 9 $ `W?@$=z,leIV.E@^[5+!;8&k¯w߉׋lMBlȔgR [+aw^p5ZV%IR^KfIeiAE$GzApSDuC\3YH3}o_]Y탘 $Y={q5hbSDc%V ?P`9jېa@y#c9y;kyqRcDB.`75oT=)C 'honC #95![_-lRz\ڇɷڃgLLԶ{mG%!usC ܜ~#,f9Xi2$k :c+ZK7g}͛Qƹ(H!ߊGq8-V *z^$t~]OM ^ˁ\gBwV@@#p: Ņ!nq\|+80ٻtkoUMh8]3;=9q|8tö LTYVoʁ1jK<&A$!ܗcA罂S=_q]M7dNcNN28t2@(Ky~Q")\NKB@ehş`ie8?ifytp\6RY02 KfpK'`sB?;U}Eg+@ȕ$IS>{P> [ Ek$ i)&Lnr-<$GxEX݄cCA3/="D^'r azߗa$_"H +b&K}ߚpI-ՁZvx+j*%ҐRoq/Oؼ, tbg's;~s|R#b͆lm9*Z1TetV0v`f{F2.;)xIC$H,^8GKy%J|3$&z^蛏*qJ毛w^=v/?-gژ  T#NqutI9/}*s+NXScz7cP|nsCP| *R:4ojcy͓R=/kG=Xxk9tcyNp)7A\.OKX1٩xQψC\ú^b&Tf;[ЯOr lh;gWMLu8U{$GE8]ErJHmrXlt O1ii?fOFWb:sF8*4r>a{{Giڿ/~g/[̧:BsbY l[O_Cip&ߖ/ Bzo΃UDonXG{?%v%=ڗnnA (6ʥxd{+^ŖyiۙVܩZ.;v_AhҜsrTULYWlg}@0iz=*ub jns_VC{ഌf;hjh0?[ ;!3aTLTТ߶.&xexT56 mu _i2jC~5G/KnuTq* DBr]& .K_Bls{qdi>zKVlĢW [D} 06~ޚ4Nxϖ;-Zma NAJ g&\#;ɧ@A㇥PG>h`h1"Ӿ l'aJk v}!Ђi!Ƞ`7Qm&H69@ޥ g>qJ:}/ >߫Pʡv. 67xUp-Ãr*@S@Ey%i:s}=L" Q,meW871aPr^a9zo IdDZ(7~&EIHviĉM{cxK)lfj`Igb'!7p,QaFkߨJUTWuwLvn .O%PQ-)_ȣR2D(ۻH7 SjMu{$:Z,.GJ'{eI;&7:v}8G\9!~6`S-6W Y=!'Q4R855UIj*"pNƀj0‹R_ N2Q|5EuCvCydL{/8t4C:q߃Z99owS^M7@EpP;$coo`vQ'[*u9x AS{XeԨ.1@QM%SHc ;"h z0aފᬼ[Vk=ś*yZ -ϛmBf Ns^皾o /l2|f _.gMPf!JeKL}*+e7-Kz T :,?F`/tcB'.,A-yj$o">!bF #hgaOO/h&mR*^x9D"3}R);vGyJrpWXgM O' :L1|3U.I=?H2:񋯭ܺ q>6S<6=6H:|{ߖBFՃ[-L *͐K?_8;'){r.jmu *Fs)^xw;1:da\ռTYep+ek9bYcTv(q e$ybWdVھILunY;2t Ԁ_V;/ϳhmMfY;G w14~Coz_lRTK0PYlEuJΝz6nHxTK==~pGE }͉F||,9-qZ ?$9 Shr$A1ٙ7:IG")1s){Od7mU=Hfwi?ꖒZ͇i$@ X⒲.yMعYQO ze@br4'3%9>BV :}+4cAN.F@ FKOh ;՜.3>p_g;&t9lt{RK"L䇕TT {c]ٟM"l gq wa.ƒg߭7W2>9d|FDufP&Vy 7VR,re#[;Q@\f~Nv_VkS0iP}\R#:?u6j%V&"7խơ,;HF5af7:ER'n^ٯPWj՘eS&PŴ(Adռ?j:[Kbmbb5 Dsgmx*}eB&*FyN#cuc [*B@(nI 8Ζ+OLq EP)i \W^upVPry>d(Uë֠4#tIW3@^onS0CXn+*`t^r L޳..~jE}88 G o gmƉ_+AU3gwցVk+&-صAA5ճ8 z/ b1x7,d~j&t :iZkN/x0%mCwVhV)l<-F?G,RKɐYv$MlCa Np Hurc*9cGPJ<(E] '"kq6i$PCd.ܯ:JbM9ZTON0+񻲖nL##ۯhlz0 ƻэpPq}Az^9Bhm,th+qt *4,$Jg8ϱDi?@cqOs9JlN5^=E5pYs2h+*c :%vQIjŒ`|M|RH[ ]i۸OF7!c\c9io)NGdBBe5m6)34@USCX,u A({q5@> |Y檻Г5VXMc Eȱ+/s'ZsuԛJ@ܥ`5GhSkެ:u4:EӲ(~I3MpGoQ2jҿp>=o o/)G7*%+htяil3A%$ c(H&yXMW/pVW~_nx"K [~ F¹>-^\3@[hX^ :֤џ90u-ZwyfTȮT4)0 GS`ĵN+3|DxR W#2UmvR1J";xBᔌ!8{>U]Y;[dY8$yCz`8Sq>u-ypebQEX#l)TF0ٖa'^t iݘArSÐ):{+Gݸ`-b0}JY5@*TjtpjV"ՍWOk{P wA0|U'"/(*. ʍ?3:vI|9mhӯ -rw <}S x>@ lˢE?+iw^pO /1e쏷 /pL}^"moHk06(]Έ>\m}wnt2U@y)wON\FAg69|=hz^R2[jOm(=:M PNkPjUk y!aڍ meL S}Nմ26hzw/n7î:BN6L%otɨZ;J{$Am.˸RH.em(˓7XN._?UDK-S`a8[,#ሳ|%$}G{Opy1YLV.C|k4gVM" }S_tN7vJrW&nIώaʐ{9c8S!NX4'NY#-kcMrJ.޹uتurՐ(6&LV4+Gё?Ύ5 y-2 QZ"lưY(n-l(PSz6vWC^I;Q눾9 :Ip/MgZTзG =Y9f%7NK;R9(>Mt32|C;ooViozMoX ^VRZBCiE*uY(HI~dT*K8RLy^>:W}Ȅی5_Y̺ L,7m]թ6з!xpFʤE(p_!n0_w`L# [}P`[rXxS>baG ;"R0XAH(ouŜnr,>W!ě =oM2>W飼$ͿW ˬcvJarWL*JypCdFGw.tN%`+0)0OE70P}F'BE<&<).;%T:8~]++s߳$Q˅򭓢/DJJ;`wh4,g0kPr@Di9f%`Mg]w=-m:,&bo~H[S@4lN o1SeK =f&Rk[O+9㚯ΣJ8]N`,qΪ逻Nڴg+Δ1i!P$d*ODlX}Cy+lKݷ2b}< *9e2_?&煖[E *ĒjO(g<4m = ߜ,YCdi}4νyeʸ|Hl]ɻ{&{g뱊 ۖbRQ߿A*Udښ߅3GXDhzHKwP*@ŏ\MR(=b_o O`SU/ϕHC 3;CCHȸ\h-˸|pC7!­k*K p?" -ܪ3(yu^3H]x/j}/%, Wȷx\n-+$;͝ VȚVRbA8w:g%ꁐb-5`#v}ˮ&`lrTݘȻ q#p竃inr@!Z'85|LY 3d5wwGh*+^Ď֐m/@ϙp[V?B4I1ˇQ(pq;`a:ʱ ~dO q~YXjmNN"{< SkiDcLܠhbV3fI+}Oѕ _mIge =eS`#3h#ק6hyG0IO ڏǕzd*a<~V#ҵ0G\4er:]8dq>Xx^IMU?_f p.fx[ipM^7U4}A _eg 6'zZi6 3JqD9hT/8U= G3JѯK놐67Xup/A&)xv$R9 #p4E" -_4Sf&OpI/ך!O is9SroՆ=gRyb}G5|w\E|)pNItob$F@åJ,yrB25Mʎ?2GzOc P" ^8Dx Rkq!$i~}qNK%V`8@5*K=k.x¥Ң9P >,<*p:.aʵ-ؒfReo"b[ӤRNk]afJ=g'p!VqC9btV" ?eL ~=j(YٚRo=%7ֳ@?,$\{o/_,C(j s.~IEFǮciV[l~e ڝyuFȻe4=:#S\lY Wf){jS2O7)p5v>03ґi^]\b6F5UuC育ק$hCQH^g.@管>+aɐ[hwk'gP@IPVZژOI{v3q]~kĮ +nC0Or<5 12h"PPہHN[p|-N*mF1Q@KY:KKd 0˅; #mCU7ήV{dQ W&\p^u%؈crDPn$,j* O/&.#`bq:m&#ؑ89\s\RX~r@D"lߟnRZ .c'{a0.~(7_7^t{hjC:J8Eg XmͺqPt@x2!a L mpZU RE+eZ:P;f@o6)7kkrUβ^HBT hw-^b 1LF{_CvQ#D(UY^DͣBl!1pu$p@+cڒJܝOr<4p[tuNs!ΐ>ӷR#:5jg^ưBܧHn6AIUO&)hb&߇qn'u'I wXcl =eLbNl{'NUlb"&a Ύ/'ܖC,\qfW5QZ@C1yx۲셿^||{9*:pibRgY8 2(WאfF ^ A,w aSFU@У@=qF|sGv2x3Z fd Sg"8Ԕ8{U8yB}^BRh[GyQYlt(r:ڃ؞zM}#8YtM<>IXy*u8py8*dNTWq1^ j7z _=1L]::! vx.dhQׇA\Fr'&@d*|z|xu:pо.絗ÒuUa1{d`2/~d:mwݿ g7g=UX$7` TL1!#vn'l HJ zq!1嵐qnhY[Z8V[lMP 0qo?J. v|b* qc~H/-z/ ^@%{IꥐucJuC.sjbGX%0_v};I0|߈&u+lftF 9[NQ5bRwtdD^~1⾾sdN<= ZJd9bBxٷN$b/kxCFo!MFfﶥc15]B% #KP{(ZaPI@hdrj .0.>$6!U<%"i޸X$Cѓ+nJx‹0uL6vHN[ jˉ4xl pmM }lac2ijl<i{͸PHfd䉜2<[Lh%5 5oJ z9A*69O\Xe9i(*qrw&SȘ\vdLxvV!NG<3WwV.{+<22aѬXPֽ/-tx~=5<)bIhޖFl:+m!34,8$[6AU(~zѣXPgM=n 4'eڪJpΏφ/mРdQл;>s{C.|C C6dO7)cjȣ)󣣦i2HV;vOU|/f;8qE}Y֦ѧ\s'/MbEV hVlO wڹFy_g5m˂ A*A=4YKԚY8|O%qmѧ">bF::=A;2_w+ϿwW%hIE{ǯ+,f|LͺQ|X$gy[ Fy}\ב-]ZwA`DX'`S4dU! Jm,7x31s}v"):e^6Uu'uD%-UÉA#etPY0Qn)keō=X<' !lN؁Ԕl1 ϑԬw03@_ɸ\ ad5cWuIRVq^\!tb[ØOD B'~G &2&䫚u51ʹhe4ظ'yg (7+Zzt'lXqE9?賚ij.*p>X$ssZ1vtPieY=}"텾G['+)Z~R309F]y%d8-$.MݽSѩcrlAeCf띦&3VAw޽|/H 7ۇC%*N;ocq8R: H`ϷjJuԞ J'2!ԿI bONʠNQZ|HD3)w:1zu#[[lדJcB&ו,5v! 4% OWE^jc:w\ b牘D_{{I 48>a~QV rjfHx@V]ɎAC({ l2kܩpaUrS-cĭu_ GMd־yx&uYu{9#P4^;KD,%eՖ@@j`P45Ip/\r]X)QR!+ƹIdt-{~l& -4}?xTP$7UdC¨vChҊVGv& #A ˆmjmH}RĀ7hՎ42DS윜lSI rr;l#0X"2 xOߖWI*#[$׍Juq+Z.Y, {%OS%'i]^jD1Lnakra>GT§C6`鹐B:ڊcS:(c U8e1 :OcjHsB5L}3_›i&dSZ3ua>7canjTk0.a L KO1S9HVFd#:?+E"Sxn[>p0M*V&ILJ73 Oh'itxF5'w[݋&yU(1DHK.kW;B0bY xr/SI|Lfb %R}'s;$T_Pcb3ɯWue%,/nt֫.찖ƶ/0Z]HFxPjdn%lNDV  $h[;58p YY_] EZpZ7~b8A;çٱswd`lBz Y0Ey60q&":ˑ+ QcG` MO!7*DKJ?8nn9ꕍ$ $Rs#r]+׫RJ:vM瀲bjPňg )ϙaGc H"v'2QC)d]?AteCo%\&{r' ~B<]ߥMM _?t< u ll@uoIT0URB[V}m==_{6eWUU$ W.%VHirV+'zy^= GrsdA6! Cs+&KbTC1},<[IEd&m+$I1{r'ʭcF'v$KtuNdQ۳O; )`~( wP&r6AՒ}v sW0C(k "a, "vǸ5%YR~ *$jd|7C@@ʧ2VL5Q_ Z\bDRrVv5埁+> E{>K/. ,IXUnVyЏO"5|?ї<ֻ$U"z)e)!:A^z=Ds(ȀVp_2pc5yL™puwv1E0٢ӿQaZ~hӍTDmW:Zuʜ^iI EJĸ/t2;$X}UO{+18WIB\S.LFǗp>z{ʈ}޶*GR"0F7 JIn#2=/YlQې[pN/`6ȯ٠Gt[*Rd"gjqptR8>%ҡ DX=|G'k1M 1ת\5Kjk񴵟N_]^r w<&{Nqnjڳmv|h.ކA]=-٦3<ܡZsڈ]?v*Rs&!Ƅnj}79ϼzȿK%wXQ+9TYũxMSd|՚qLGv[%6% ȵQyAJ4+^}{,O`wx]r0nQS5}ۗo;'@۾Q),MH6Adk'F߇3 m=6L;XnP nXHD'[GȤMF}VdQ#~Y7F03T2[ۯrtEhwγF)@$<5a58'Ĉmzf,HC_˨MI^[v %#T{Bj#5(xL"@̑c샴ðj,1(aϳd625e6%tZ/Z[ GJK&a~ '*.N/.Ss*0PWRFҫ ;Ħtu%>i?7[r^6mXt`G}#;GgA6]d\5c_/ܶTqS>~+ ڲeN +ArčڣUvת@=~蠩Cﴺ$hUTK(oL0ȃlwv^7bީbS}ɌCh,Bt w\<stVQ& R|?3iZ ^RB-, 'H"y&FT3ͶEZIy^tz)T'U$㜀g5q;S")mXk]RV#I܏" nGrV`#]9d=z!۲nvB d`՛r\7x92~H. [ ׬(FPu@4M߀8_ vti _6>\@-X1#ㅷN$pɼ UV\bN6Ԃ;ͽ ƛ4ύzJHؓiiZcHߡsB`aV|#' g3c h] ]Xn ̢KH*qvZ#*AE"o"W;H=b*qRsMC8r a䬬SdOwГ% ׅSͣ8DDvkryֆvc4.Fm|',#^7y|QoyCM~'k5=կuXed^}A_M40J=vQG NlIn+ ?K/20Zh"TXXyZZsTr_xFD$VVݢJI*0RP#cMz{,.WxjPȑj8Xf ^B7ZiV(Ƌ,`i4aɠS;9vty[tfs}G!V9>S#gtmhУ ɉ-j*(,\p˲^>ٹw^V<|iҊ!azޓ~=oOpx_*/7L2K&|dklk9|{6xVPp;NKԧ0Qd2;f:1piI"vTX0Dİ%324^e 2 *ߗr ҔjCk}+m~ ]L+M۪R57S\Xzjn)6%Å5Q wEb(z؀D-< #&\*\nXإr(QZsGD5Rj W14f3n@Wc@ݧ Z6x*zV!qPrO3Zß.Xmoʹd7P]|LwIzY>V2XFvcäasB-anv2yp e}fPP ko帖kp` ʐ`bx׽jjCL%YQ!`n$;24"Nh[ 2 ^$zЖ!xp ct) a}D6hB4Ԇ` ajBY޼61bScnW8ʼnvYX3[V1RԱaL%HFxUJ98dEǴ1|wV*uMދԤc_"*/+=!9MF, 6׊b t| =cin5A~6^p'z?# y^c,'t}e=8wfHnyGU/VF&shvNMKY ~vSԈ/}|Yd>ad{Xk.G,1L'8@] 5z_I\u2vR j{i8/X U 05' ؘG63qIk䡎$W0RVfYHʬo X{Ce#G pP"J]=ũ2i ݛ.̅8 SJFG%?ߵ÷sf%~HTqU? )&Q6GLxI8+PҳL&K7|KYisK3e +MӸu+M9<?ҽ# 7=ҍ싳2hԬjWMS0mFm?HهE63G bNxeb66ѾjYBJqJQpL5H-ڍ/H(Zҥ*lE%z݊)q詘"y$7b ћH R,aVBQX;F+!`o !QZs' zE;2PeRCt̐^lxO.;AjzPF͆-pc'[ 36z\k^`Uߏ&~t2RA:t=mri6?v]+NJ*$ەyowt1|0?LFCg.ō:A5_4<*@uJN^Dnu=Qc7%\ ׵h TI3G8ǗT zdxݏM6FL'6O-rj]f{KX0{;VKr?.FS `6GYb# ht.qq JCu=>i)$ϻ$cE4>C[I%/hgK1 tcJY&$JO>U~0P2’T>Zy{w&5x4\0'@x,ڈ\dL/[JB(Xn('ZfV^[d8a tkf{Ceu. :;<3N})+˧BxĞ!a,\S}0s33IkgxiPAnn\+GčݕÂ/I檲sPɄPPu_YAV)T7^nR'! )T{Ha;s6&Y % +GDlG_}˨Ӑ̈́KnR 9lQ~E 1n?SQySGz5`X9|M=&sNq5t_6T\I$ݐ'N}0}ޅhƻەϬNm'_CD# VI;FrۅHյjAh%'TҰ3R.&}&{};$ Z=*9Fmo}# OJŽjc='$|甉Equ A<j_iƚ֐?>Č(rS-ek˙MqeH~,uFqG'h^b TaQN'Pe(zonhxC@hMmqC]#ȶ}3q ] cF*^:|c7ugWCR7(MǥQ\a#ఁQU7% j1'$'zNH}"lJ3)kʹW?& n1CyB|:=x ׳d Q~Ix?BL'޾PaR_s)-/܅Oʫ֐#2Y7CW{8~{%W М>̿GrB]XnSw,,n*?r;|$ #M ^GLUqqZEq%fAb?l3pNd'(;.eͥ!&(-hm\9)B|G ;O+|Z>`gD/$đL/UWkZ2(4man +(]'x1VfU݉%ߣ2*u9GIdp>_G5zfNc3GK~ůg?g%iF"zơ2cu1{p5Qqij9'XӐa(˪ZlCMW[l*@  ^:1VYRi!buӄ+k9 |+g wܣ56 }Π:&ƸтC^ i]}#ٿ$)PIJ>l.dkj>Vn^pU/#Jt)8{an?rB#ljTu)9s}$3?o}7\<'%ruO Og| F5z:7`S:"+CUEfS/nxna{#4loB>;qߋ݄A0 *+U t<7w{ء&'T?|=zqm颧c!Wy#Dk^儅s"oh!f]N-[ VW e]@, !tŅ:O9]-?Ԑ4 v4jUY0RAȁ2ϩbʾ !;˵'o^=u\){5M; _'BnSf2 _e?F +`H$GdD_u3-S1K$O@idF3$͗R[anZ5qַyFw"M|໊ib^'k#w]M*0o(f oPVWhybjЯce4= {=a;6,{ WTkXg{iE,r(:!Q]VjʺЉpkpJi_^ϔA͟atC6u Š[T/d"_Y*S7&&K3@Fq,~obwKo+UaEx*R7>2q[~ژ}ygŮ~2n^sCĠ΢3d=9WwZ򂪝bZ1kG2En&RO1s-W1H"ќ# 0ںQrj1)x,NJ.ɐr-z1&n VY pzRUIv{.>Sgdņ$C}fhj@մX3ƍL";' ;32tѯ5މ=M6@'-\n1.J5d>v*=M33_BȦGCpK" V~9hgBy-ܰHZ Ȅs)o HyWXޯμh&oy5>>lGd)k^̍SW?5ts>تBt.[2sߡgygѠZJH:hN}Au#ԑ{n[ҿʁ/|mokecR$]X 1xƒp-#b4&6r揿 y~bd=>1I/ %k_b1_2hf DŽwW5ZP393CL,fg FNPMǻƤڐ+$g||6XɃ F т$'o"ǩS(Ŷr(ufQ coBN7q}|ם7^5ޢѰY*yCE B$1LnTC(L|Mʗ22|T=Y8Mt}B l^?c}v"$ Žpm1be6Î+u^A85ZA%Oa}^_4Q6 iz6?Lk=;塽. y#СI80Ar]0d)E=| j1>H3`pi0^n9wrR mb JRDz1ͣ7\"WN.@ `[`Dv)tوO-aңL@h&mO^M%T -ιtB|cf{+FMe@ة ̣U>{HEkd_{Ƥ$]%m偨UтW9r̘5} 2- 6 }a{@sr[0ll,-L6&4^SA_nPylpNb: UW f(oe%ec?/ ៀ䜉 ۣ V!ЋR*$r*W;P:4Rʲ\w_& 忸;\ D%K+~tp9DiUWeg5 D̸{52UZx6apQ o=^O|9E&Ӎ&qCw-}=Z:0(agQl#/%ϷH o*u1C1 V8 /t8Y]ϼP4 q_7x~M'zϿE`1YLC_╇b<]iC2jjc"vNfG P?Dx5^Dz&!=elp3+"|ETֲD8*[ ;b>Y ,HajoVX [lr԰ PzYg-(v=mARmN6[8πn ]~mr,YU"?  %VsX2h?2.jD)ߐnge-{ZƲeN&C. ȣ<2ܨ)-'TcKg3!LI i_=Vv]2*y'/V;>LD:[&je_|5'F ѫ>Iy1KL:9k1-I٫*):p8LA͉XuVKL?CN)ν7[%1|T`{—ėV,QV^h&Ҹnxiu$G]+;AF! 1x[}vr3HQ ᬉ6*KWFn춶5խY18^ MC"u?A_8]*~/f<J/*hq颅@ƙv2_@rk"kyNG *YN>_cPk6CZ{NGЁNͦYsgއj~}&+ 9"IܰVq N5Yio2YLJx.v `бs Z|U;z].4lnzYfZ,>]LV*Kf}*F7zv W9|En,8&0JǗ|䌤HVyR\nib&37oMTELv\*EQ iGu>I X;q#[{}-] A,VsbC|-]B_}3e4[$퇮aH9_@ȏƠxg$\jii.H4T0L;X][3hmѭuiuLqZֵut5qgؒxAQ X"ނG}п4O8bys}{ drD<5`yrNY[3)V|__r(]h/ }͆K mô%> i /qH1xyCڌg5P2+uX^5y/K0j%(Mnnn7hvfV@7/&oD[2_iEA3ɿL_5 `+w]Qk^TߣFl08q9L"J{.16mpŠjw phYUs|pP|TE^nUK]zSI8 "Wwi&

υ@JNbr]hŝu@9}p X,7 ucX7ysd{{ep᧫'DGpՏ |Lk?_v)خp}`W ^ yPV ;ljtfz Eߖߎr e O Sx6_tۂKq C^S͢5y e2rbV5x ߒ$gBG%K]hD< '^8yRƕWnKoLnjq)a5 Z`}Y7oY(֬e09DD୸j_t_$?RNvrhh(=ہnm3 ~Ѫv<)0pg%NinAezٞd Ҏ(Ua"7/3M/ѓf A()l }nBcmmr[N7lC)l@ r)\皽#nysσmꯅ6lAm)FP6!Th7sK"վO(d8[:ڣDuV mBOcMX^샕yF .nmUiV#b`|WI'dTʃ&ۗDt.TkYuk|o?5!يϐ}<ݰ, wq6@w-/+Oh3R#~vqaZ"5W~ٳmٶ*+qbF:&S IkţS?Tl#-/NGKQ\,/!yQ?1B9'gaw-VG>, h-)Jx ? ۨp~ 6HF`{0c12=PmU!DX oiPH<9 =rwr[b-fd%q>*c2*1 TSGRJl7l~0y[9߃ HSXUmFApannY'jHdžs0xI +UI"P}a[hȼs#Ӵ.e9cBpjkx0/V3I>:yG'5OVJocF3^}q`%u{[?B|]6گ_A>S!Bkwb3 =y&ICD2e˭$sb7tULL9A|n7Q3켵gWJ-bY=?)͑iȭɨ6$8Ld[A$7~~ũ?)vܕ}T?%t^,5#f#9\]>JW}o4SZaN0 Ýj]o'HRa~3S{%{Oc腗X"gD=G Jf'n҇m("Xb#I_;N·guڕ}y:URT ^%Uu ̾y;# @ꢓT Q\=йg1,wB:͜vkϖX GVmF)g!?/ޙYLs4kXT-j*pv1(qǪ8 fnVRm'M.y}1NMQcyjPUuSnho0J3fpL36U}Q@!0܅;iUjrkgpu5N>C{Kj~B4}G7/^C 9%wm'm0˜):Ptqϭ|!!G$uc&L-db 7u0ucX`̉PM[wtJF6۔AW|i勖{YːIZ /)D5Gʏ cvc=n0 !]՝ө37Nʵ+Chad)EP]a-Y6>/Tx GTusC[t0氉` p}ժ؞Dt`mܮcfHɤeֶ+łoY`v HȹÈSфdxتRW)E yL (Nq~n!&$(oh/al:-=XCO5/ =zhBS9;^n|d{M"R2Ue ilLdj&5eG$Ka}.}|C67p0onI>&@O} b5c@zQvݝYJ5"*y N j[ߏZ OQIƺGaLN5G5x$.Gr68X;ro6S|KԮ5C2}jA3|A_zH9ҬuXoԗS~'$ ~5۰7U?jYAZ4]53!q* sJ=1[hZb.ϊgݎu5xW58x`PɄ]pϨ,cM4B=!yR*DF02Bx aO=_6\'8v,.BXK;>ķE}Fڒ3j~`.RDpXôdr'HG*e}kӲwlfNjg*~k,6AGc yG}pǴ2Ux1 Ā|Cl `rtO$xAw'މ+K0a Q濟ZgEw*bc3oO2ʗ*4l ?jІlN΃Qŀ|oӸLoWmZƼMZ<5<`][Z5'o?M gvPR-C,rQLFE8iЇsG1sҡ+/u_lHp!ݵ@VJ:X6Y\# YqNJGUTvBPeӷH/DW:UlᾸ5ziKž}ϩĵl6{ ^xnh칆Z.TQ9RϕC9~0A< "-y Hg.2P~d9L{/Aև)Ty6dӍE&,LUU6Ͼ1&X7&'1Twy%#4E;ؐ7)dxO[_qfT- Q!ZۏA i,l`>TɇchXm$mޡ̈́pKd̗%q0 ) ֹDH/?'kلUtT ǻ`Z_Iv"`~e=Ž#M˦JD&qDPeů=הNS[ KfiCdž$usQn䎙%Gw)3E0@|OӶZ2/@V95ϊPj4%GB4 t' A[Y-~c=Q8bog=@r~)Cpa8J;+Lim(!%)ڂge Hqzɡ巳j=5 .impWu=#(`àV7v9u+iZ +!H# wNՁOv~[HN,<ĝKi1I`Y#9!fOb. >ZO>Вիp|%<[}Xa"79Ì9Q"n4*4Hz-Y ,ME@ylbLr8QwBI>9&l 4~m*I(J]AGiշtЧGBh"El٘cnKh<"XNu< :޸gbn;EM08Gp9jg*mjĥ&&W"9j3yБFf{FϹF 꽣iS6h/`o\1tI"!1JbVR,܃l"';\ * ;5'Ք+1acJud%'0lܮױAw`=2pSCI<]õyBzQx79"L>p+Pl !XXd݇߂BbE K,Zv`OFZ@/Fj ˑ30e˅ՉV>6L> }lOY]M0kˌw4M|;|-3XJNTO)Ăq7R6=-W4zf2f6Ϸ<\" OR )1Ox%[o\6'=CTecݸ֑29jecF2e9ejy7fmPa;3#^׺anbN:_};孂W5|U {ZڣA#ȪyG,bLlہ +# uU 5L~zFGz̊n{o>ʝ2 ~%PJh:/ܕp 쓺E Jx*wQ[J-6$uڅ5Pp ىP`)9=)G,PyԞ׍2;<@/HWiބ?Ͳ:,ºdlntq'-V ` d0Z\^q )L AN314Qܚ o1'~#+#lzeY{A:Z3@nB(83Ejc*Rhks<)nS|Fg7,n8^XXR{Tn堥|adCC>S^g~!6Z 0 :Ж3xyJG)InZ(5AhPω.w%RWBt{ ͓t"y!ʸ"דqPyRcb0C“D\A:$Ե&eϲ4T1 pa~1¡q'E &ީ|GeBbR> WrB ߵT}XDOmR: 4|ÆG[C!+6?%17$]ޙ:"-p5^BElOk -7ꬅ甴fhE(qgsAo~a`)7 ._ޅ@8ʮq\E$VE W_@K4.VꋭE[,&3\p5O.ʺ#~z  Ml40,XW ǸK&;F){rSINygYëozFrTVJA-{JdQyj P@~i>&C1&A"5.vʬN%זwāE'[o۴z"yQ8(CedϲGaZ-ȪC/̃l\a;'Oo.{sUFi'v}ܮDYLu .GuDez|o/1| 4KI0N Te K]|.6\%βD>{2>H)MwRfxYr)%FlJtml;YbVuc 鱴}E=ABKuDzWnpCJPPFN0mOC ;w\Q4Y4vaI2qu?gGQuXloxYTY)g.?VZXa i>Ѫk=g_χXD0??1K\8A"бj+wTr %Y ՗I#,7e#qz[hqv}E.Z2 }Y$)1iw@Y>:_,2ft*Q"*߈Ҡ KW9`[(f_a2I/`?36f[:/]c#?jĝ&aM 擸VČ 5 B$գ7VNU9n" Qu.M[uQ}dI `LΑ>" ¯6Y˟-DP{nYi~u2GTU ӎdcWLLד=5)A,^V!׳^0Y w{Ÿk!}SAś,82&d.~b-kק&zWU"NQ_IFSͫ"HIiK6T9SLU|$ĔxrfqY[2aBƜ=BDe͠6HRw Yy7hYՠBSDJɗ–(:qda~|ʑ;}X i߃~vaK5! %-It-f&eъu.^+:imVD{> >SyG cv7+bP\aFKǾ huYi*'?<҆\:EVO!J^SU du97ys{10U+)/\SĹs K`k_"HAM^NQTԯoNPw:94;Gm;dj.UQ[k8dX-%P;X_3n3n# 7|h~ Sn|a$E˩zfY2}HeMm0v&vr3,ZU|TV+A5+C`;Rx oX*cV|we(U [=0E@bu4K"P?aFt<{qR6 p)fu}ۥstXjwߵrf8WP5"t/~g/1fԌp2[jxnu'ːѭ OIΚJϏ~V\< SP=}Jz&[]$WJ\'#e,B~R@؟!t'`pӻU-V j[X uN^]7`_~ko_pDR!w12@wvwITHzvt|FwacyO23Khz ɴe-gTuzu۲^DJwv׾ٽ"+&R,i3hHAR v5,L,⑜`*R JV%X ꁊ>Yql6mx7 ~Nm#4g~JiWf0 30vʞ$A`.8R-:5m+g<)x Zdq .MPj/L𻖚3c{z9@U *K?޴xWm Ϡ"ќ0Ml8N7D㛑i g񵸟C jKw(OawFܰ"zP_=:#ű2 ]6YgA?ނ E ROD;¡WTfbǘAVx1R{nR+ raa>ZJhLUڹcCtKFXDHz :hB,* {;{tyjY|mn֘61cmt+9 {ΨzNr^dXF~ص;ds-'_͉=ߴb]ĘGɺKm3<2%Hl\kq"EG8k!a#lfV8D! Qh8nS`Gj :C,|^Y0L)>wVdL8zrb|݆]*nWoFx]p]|,:ML:WK9GI ֟a(3tVYӎU%%hsO{t?ҏXS6Mcd+=O=.Zm-?6S~C8ƒg $_Fv;NW'|ۿ5u E`0hw&N"t7li[6 EF6ӷ:Φ#jtpz#SNZvΨIAA[]h t YGA# 0!(ڤ[tb;وxMAwMw;Ξ,ܢѰU!/IhM sbfŇ)OmDHز )JU' ;!J". +M@-fqyu\ovWjX"ݶQ- %hAO4xFX?(nx;$'5k)m֝[ǐ ^kjͣ|6u2 Յ |R EEj aBrUˉ ~# wkw8{>aD)t$*Q بY;z{'vׯѵq _e#e1)v{4 n+Ĺ:sh&.kv} 6@e;5-&ȥ#0+7-+&sx9oo[Hk i@se3]F?t>HkTVq_s ɡˉqH x A=?+Mղ]?MS5 &1j_kNICzmxcm}F^ߒ?녟*eu G3vy01tGn `Dqg ^zi}($fKa6U8&P[ 'oS.p~~'q@wP{̑m$mF %0k !ہrb$q{n]6WXp\5!b.j\^(Q΋E`"]mmcCD~,ΞR%IT:iBWWۋ`mv~LnF7~=] Gw]#Wu٠i)dq ]÷ 똆bJ1Hy"Li EFq[ƙl7ϵt?"6#uL k2OJuf]fb&c`jr-EE|:A~VqFt & cJaצ.~@]}.g  ZfYenk/i܄b fOZ݃t5uTC*8%H'I`jB^UP :zNKk"B5Y\j5_=|O<0Er,3YRT5W"('m@>Ь\f\-A-)J>qՊ>v0f!,4R$}e=ŀ1b)٫uV)Q$g٤tJz/lxq2#!Ǘl4ap_+3T<.̅mL(.D`xgB[U2~M +X˕.eb:2! f+ԺZĉrQQ$^dF=oⱳ~g+fF|®lD;EOSc!\lB7N^_|O^ΊQJ-g2o%:IC3߲ca5ʝ3o |Vr*=Hz*0LmP" 4iKA_"bF ˩%4c="~Pv bP Ekw&lv؎!ɀKLpCvM5R+CؗETn2OכB;/*ٟ4wOA4/I@?=&ŜY&WԁbʋD((݂jnKt+Ep`Fjm+Uk瀾N7<^yljv=<=hQ|t3ݓGf;[)-J$k6׶yy͍FBbv[`߻j,> jWcn%p/'@ JD.Wo]jf|(LpƛQm gr;\US5'TēW\CUkSkj%e P3w0U.Dcn2З{x<4}I=\>B?fCv蔇@>{'4J /SG]392ːhٿq@Ӄ/1Vܝ5AƼopijD}D:Bo;$UwF^I*1!ܫIJߔPȋ(5rQἯHh?Eq@ߚO?6ՓO!8 8sum|)C_ }אNsT߼#,+,;)]t7,;vqn;q. '+e4|cegzRBl3$ k l~u bzrԑ! 8 un !L+b~TH,?IC;I:‰\k.}8;i{m8@nH  ']S_W)iI %[ED4޵mҹð֬kK0ȹme"u\V;f)@KܢMOG..TW,j`P9+Hj{_X.uBJ^@,x@\yac$^夺6z_8T%6F\~Ca5 4 NA LB YO^;s?L$ï2iY4ifÍtS[, YH @]C6"vx2qdu ڎ55ΜCx|rm27 4]ck]~ )6,֠9?8C@'']Vն 4!68HYy;thoõV_#ViAv?Ѯ PZN"P94ڗ3wa3wppuʺV¨,EBcA};Ҳ8k%aٝ' upq i3ZhD$G<׎7%u˦%n)_z< DY+Aۋ$u4[ {~ bHL?pT,n  \A _k^Ȝv9s5q^Mi *ot[q #\j#R 2u]K諻eZMH-ʻ"aKM-t.,4 Xko-x)9J(E'5)LHZ8/L ,}ND}fxz®#d v{ ^cg;4u&.˝ӌ r릶'K:uU>銇hgpSY1]JOYT2̈́1“@Ck- ݛx*-u=iI VrJa5b%" Z_)Gsf|X eEπ(ٌK-~XÏթޘm͍䶃hcyTPo+)*>t2fD8x\`܆Wȶx.E3j~2{Wk"YVFsvJJx\~T4 ^?זœ;*I{Hz-ytgtA p)k'" K!H{dh]$<ܛ؄r;~X qUn'^ȒgKkTRkbP+ +LSIͮ'I]yv?_Z1wj`/˃!AKh-1)X:4\.-GG=|]pBO%{at_t|.L`(_GKHrqw+8-JF2>vl.է O-s.o85̦II5M*Y&L1 qEv9#Z'=Ƌ\(@Ps6QR#`jQ% "4zD{v]̂o4ۼmupuuB%:G)oM3Dd˦ |Ғ,ET|>PI.eu6t_mI?"T[F"qfO;[ҙLz@8SӵnO,[ߢq+ mzLD8 '<]5,04l߄'܂s$F=+s!ےRM?ϮBTf$"{nܔ=@Ƶ ҫaQ#ݕZ> ҄JV m?HۀrpSO/wk QőⲵSA?:֧+p5Z>8tdNO--2;#X+^XiPȍ$Odڮy>]ْl 9 >Nu 1-U'V:#(cNf gUr0LN`nmv.p&ԭ Ut0.F!6Rit5&??E GAD`C{ ۹10o 5.Þ!aF-s:!42lmZa9hܶrn|Ғht?fShG_Mǔ֤A?#@<@$-=ȕixC50PKP)2( Uxr)zkW|j¥l 1ڭ%zgP39Zgw(gVサ bxi$*d5|PbKkj~ŸgmE sYD>;K7^hvѣٍ : {p%Ё̤5_$LϘsi}>f8l.A~ ~p ֗pzFhS.K@ T7#PQ|y!51Up7KafnK̑/- gi]CƈܾD4No~ ;E*D0/&UI1D&/'\SD;b3+ #' (4at4*,pAXb$F4gDFq<04[< \Krx67!e8wԚ8"Y/0mdӮZ'%/ޑ<MةAS0xAU5ȗ*Gg[j8"m&փ]|ca$f(-Ts/u6s>h%015Lhja@R< Mx!&BռeL8⣸O]Ztڟkv^^EhX|+tpG EycQg0T5k.P͠ir5k$fA`>Hd4՞~/){n\"x(J p}:r=Q8G>Y* ` |J"v. ~J̟Id.>rA6WE YC@+47B3?1d4Lu$5kADq4!cF|'CQ*!#]o8 *AYP5#:%){QbGT ji5ˆǬg8b}"OTroѺ92Bk"W5Z}I2ߟd040r,YZ炬s/E3DO$@$0BΟxGC&tBcDp_o4b%>tgDiRE}O3`yEc78Y_Z ,z`ӁdG"Nm^-*n`-g/*d^&pZQ5[TDž:zӛu| (a0FQNlC GDK"9SŸ/pM <>9_3YMŔ|.Xd;HS_ΗĞh|dW`toqo_!CX 4js$[e# },9ۥKMNUb15ԅV5t!w%j3B(2\*Tjzimjז+d\r8Ơ,N8)aZ;k?;o5J5kaq=ϻ4jR^bZi#]T<;4~= ^Yϵ KNVE%2u%Wtm\ZrR3Bk)8HL3^_)9Xµ#9v_ Yy2DZwSهݬdl1vaTQNq'wyƝW@OyqWG-0hYgGIG/\{,$x5H"$EbeE/D-FREFhxv q1rg+Ql4*>,Bk%BY>Թ/ % G5QZy`Qvxxg@_k*U/UCDv;'ix250ru; 5>3 -kiś?>+q Qff)_/9۰n)ZO3|. ځlBzmlr@rh~=ʐC9 40sbUU*f2`NG2ՄIUڼZ%Vl$v;%$9[Tp s70jEk4r_U`INW4elTO n Oe@~R Y,).ZOd甏A6Q_bOx">յwG-#Hy٣%}TA* L%ձC~Kps#wzW=ytrYj2c$k^5lw!q7*`$"0k0l~k%؎q ثjPJWaX}WLE] @S^umFL|5bx rY-dEOGRE)UPVE`:cs8Xk%Yvߟ:RS~~U4G@d?=0`V853Bݎh$!VA_ Qc6]ħ5?.D->Ãu{ VǏmH/@Qy"@~fo V};mtrpy9W0>ˏX12FF)r:GinwAͤ?.eAi2gJ޾k' Jƍ؉0syD\X !fU僽?nkK *fّ"n"@ʰHD#QdoއZGQ FX뢫jw!2 Q=jiH#pPԆfUT$I$/F6.32esRqE)AA}"bX6ۤBݹmv#,-WO?z%/+KRӭgU>,6\;!`Kг[c]^a $%Z)K tei;<|A/橙g˼NvS"+igDVckcWm ^ՒvKlNh Y,l72;#<}v{/[FL+*u:C-Gu٪>U],4'QR9=C'2x' ^a$rV0/ wlRSs W;}z|C$7uÇ]7%'ȎW->_ZV) 3[cnB3?>Nw1%eFlT P;LQ7djuGO}@Ƶ?>y0 2KǮ]m)q9j P_?)ckDüf>2޿@a袭z+A}lxR ]4T[x~aS60pTNkSX-|*Br3 iP/ѕ/]OձT[lYJ.x$6+gH_/ӬU_-C~JIo}]5:VTM=74<`U\'"!+'ʛG\QTgn?hK3-Khkssϗ4$Nc+ů5vl03w1-+OVqh9޿3)Vnru!`ZME%g?L1JlY+\5GFR_L5:8)cVμN/JO;ط/DNx`J+liaԯ#$6νHӪ~W%P@[,3=a' qf)k(K ?Yj_bBjjPo)vW&Rz7;o╰o(y/qp]$)^ _uqa# ? t,A?QF|z"j91x]Nܓp>tQ29 XR3An6H^mx=x_@tC3;ؤ-1LM;gשqv" !E(pGƹk1p_ؓnԧ#kRp}^fÏPqYO^&)CMvGjS5e#p*w2%^7umٶFv-_}V)nmR {FBXZJ0->g0"6%f É&43[Bc0MXCۃ"=f>>*HPr.;[ -"_4W^.߿ >nb_!ߐXihs8MiZ>Q62""s"d#AE51:Ka/gS^.n>C/rG{Z G|PZyP㦸ݠ7PjcSUgjR!CI_y FNof NkZ0+pa (tp}{-7ΪpN?hFs2\e{L5"W|o"%",˜;LKlRy XQ\$>^%L5l`^W¯zb(%eӬdy 9PK sMRB)1ٵ*GƟ,a7[c #I.XCq:?L=QhZē@(Ez`}QxED~zl39XFMRl(344 qgXyn*TBn0 oxK$k'$o@Vz9DtݹWB!a-&$wv>v\qC/O}3i+sI~ NDhO5MaCѠu-itE *yÙQa(9 *Wz֕lQML">弸ɜVd-7=ÉXZ? ^w2[%/-}D֫8!d6Z88J'q4a9yYzwG8} @ù=ȧ/VQA_ <$ȗ{ Q{3 UUy]K2DYXcG cRBvxN&)9u#D>2\2e IM⶚8s/[,EʼnI:u.]tVNJo בQ2 GO9n nngz%qmѻSKwקsȈr1Incvކ !z׏cׁ_)qKڼ0va)>T2n9Smᴆ(<U&2Dۤ($bhM/IHq&$9WQvkL!q54Dãm51Mh)<%ld| &L.j:nlwۆr2VIQO>~M wXs0j:@7,5 C4xcd;3 f8BI, s^m&sdA-R23iZ:u\`M& p=;hzHm1i$ 6r.jש=[jܮ[;3\ҚgM{NsМ(VEH'yli8:W9ylC,v|V  (AH9 jb trh]+};-'ɓmzNμIqV\By;uS.n ! X׺>0Ŕs PlPw۳RGn?4ӁP^G7u-V-߉<hCl">yr=o!1mjHYEJ<~vbp5rr&TztǴxuiKm,fy9֖6؃5&u;df,OUɄq glR6j!Umo;F6y<  $bWȁ($m]k$5f&|73`rqsa--:Q6)a"˧lm: Ҳ11MZ֚}=r:SySߣ3J(O #tBHcVЀy]OvA29.l%~^.- &`X--܃&TI^t 2$chs}l vRpq܆.ŧCݽChդ^ƩRNJZE]v//%^d:UK~O }W饽6βVx ʴ*,OQIno5"ӒIU!@@֍ipCOf f}>L}}hTun_q&61W=ރru=/7#Emkn“{4PL fzB%H3 R84`?I9#Br/ɳ&wUi čxeWʿک\߽'4(t/4/kj>W^pCY(Ǯ olW,|&F̦WԵ{qn=]SzT7p_^y;‹h}Ky嫱+v~H8sPlhy@G YtܝaD ,{}ӏrܬS4T;mjhl){~RͶF`\g#~0R\@X'\ߟhsorsB d#km-[)5Oryx k({Eoo}/uϹ.H<%MUҜgۗ"ޘ-:17Ѧm95U8 p̀,bLxuJm/NnZ>'y0*M_f+4e-P'21!O`B_ũG Fv 5]& 5-#aƇx۝yέ$4:h(f+4D}-?{kpojdE(;T儊q}9fЋQ#ֹwpNr5ǶFijl:֐nܥ8]@2r2jhH[_\N,7w:/(D} M6S}Z}psRY?_71RD=vh "U-Îyh2o#,$/$':zObKᏎyg}Vq%!(Sw)Qb3=M45\<ϨM5#<]V* tBmQZk&gvrTEm$:%Gv5[[Җfk{ p {B<_7Oxjk[P>!Y!o>RdD{wm$m'Z_i8߷cE$8ݜ.IY*AjUauAw ĤZg\o][QZ!eDʍ 8v)C)WٰKT Sj)tGҀ^6gz(U..0֢lt5m8:, 1O5NN6l1AJ%ꔁ )Q8Ud<4:b۲*27pd":6 2VF&0 aW TFЉ& 6I) zwĺ6v<#<+L bqPz2Zaz 0po a7deT^N6?M0%šb Yʱz!poGlxɮH\jڅ03=kιg_vadleEFJdڞP f.FXvVt$ز]UG (te%`st#QI҂[ca{L3J#{PT!]YSPY-ǡ#{EEtH S8lfet 0p/0HqT&\EIS;εjl]S:/vQpG'(z9pդTc!^}Ϧb y7^]JǰV(]H]?!bi$n"6d=5F(1p| (5>Vg!@^sQ菓i +0A͚j;[5OQv]#1Nrɇy~X.xU 4Y2?2 InFm.`t +S+Y=dmq ^\, |9?F'NûRUi qwܶi#Y .a@|LO-sz̭Ŋf6bBA;d5pI̒dBT ύd`;1 % f_ˤSd9)'nH0!C?[G }+>O7Œ[ђ!)|5\{'11!դ#0d=Zx}3t>DSA 'T9zɷ[sm$F 5Z>.(˹;S>~OܒЎ7uRƏ$+& t P-+>v ZrL)&b:XjsFfIjGO]n\X'+t6\$k.}n3R  /{ǽ`R!3W/1FH$]vzhZ$f1ԧ!ʀo'SRjF^ yJR6j{F8+P2l2`/!RY~Ozw--EgHHZ/˃ȧ~nvKr9gZU6^S) tTFN!q HӼ %HYף}F'eM{#E VHi:rxB޺7b@^Gpc|dE /{Ed#j; I\)$ mj`̈KʩDbܖ"q.7iyRc y14 o3d#洪 9Lx/[d nTdm"0sX: E ")wQYf|Q$7;ğ--$JEAb1 ҅J(gv@hnE5aVWyW1$פL8QAJȢ 7Cq/Xv^0gpZR?J R؃]5 Jqm'W>dH`KS%7etbbo>TqXiIDR@ )m9Ww(`u8d؇ 8)'|?UR~|xD ?8{,Ӓk[G&X@(F۱핺V5Sic粨g`ۋ؄yj-[^W#I\! 3E9hQ ĝfpn}#qHɨN"Bpi#zXxEό'>B;w (WB5Ҥv:JER2+:-[ȫ`'UFY\T(,e:;j:B9Y}US5 ؒ]SKk(UmRs1iz.L7]~p:Vs95뫾,+(5g4ϔͪ_\uM*R^v /ۊ8BC8Ij3$'hlڔ㢟ߐ[E{CX^84M|ZPMaP1Bґ!h&1rVZU*Lϳ(%R@>[;դۇ~v[Wkȧsh\?/2BU D'NLzdг?وJ-3 c'Y3P:Tq2Ju:EU35"b)?m&0*~azʰV!3uq(yޥ_Ηvotf:(Y#FM[>ABQFc+ 0@SL732y}7AJ>MKZWd:&8ҖvV cm%y|:+zdW&{M9UlJM<NeN#9pf`?"9GCǒtq@?N-3!\;R`zfs2Ƌw`f_Ug]W١p2O#n`h(҅E-R4L/a@Ws\XLpz,aZYbNOC)i?,(˱"^P˫ͽp# io9[4FɍCԔű+1kɈ"^ykN2o)6l^sx=v%_޼ON/~Σpb f?sU/ a\O˂`п\ɂ|qfHp6Sl$=s:W1T#QZSQ*k~E˒ *euXKR[T'u꒣}MEma5pG2G~fjp!5l_embP^MIJ83xhE ]CQ9;gY.qH ]x3jGϯe]gô*caLݚ=-#]\p4L߸Դa/;׎>EݕV"BH'!.Bã?apGGQ]q/u/G {dž$/AZ-M 5c &3Ӑ*J#Mt0 Iq`tHR hB&=0?mj`ENJl+ɖ1=m.i ,;`>4S$ZתGvh`Ppt lݣʵ:EceY' LU\Aw$L̰Ĺ HK͘àâ/Jhs5у2eA.7u>)ĽzR2 EVSXBW~%m7v,O4=nJpu&'yP&M6o%hYi>4)*yp lx(;-8%Ѯ~]"ٴd'#ni/:S g m~\$-Y^YoI25a~c#7w'}]̐G`eE"aXo9Wdz>8˜9/cM['<ӻ6K/DdDxFZd\d6*n05/:mV:=H>2ՁIU[7)EiE|dF,JKkʘouWTGWq vS!G&XIƘZW\OE FUnNz 3fx092oeBau3W`8t.m/b"FH Ѱ\__]M8eԛƜ?kz> 9sH0zǷ+}T<7N9] &PY1f{Ma:)+X 5E}&]wYMgu@nۿ@zoLDy$ JOy[}q}Z4vl9Vi}5M@u$mO[qF) h%Տ5>4qy9)VoKx$ajjd`م)Ea2^Hu=2eT 6\(do/jaIy35vn6*F%&d2茰]c3$?brzD ݼokQ,8 ;>sgc\ y[|!"T,Hc',0SpRφ"l]XsOmn) j:1r=Mx9øtG_|]ň. H#/jµ<!;ۻQBE%0e 7ȏК0`f>e{b.^ J;S-(* J\5X#hOΒMSFƫxxͥ3 ;RO5jsu{׌dRl~sI%ct# x+nTA=i$ӡJ>8^FͨA+gF0b&z> CRk ozaOf~) ʟ}Y.TLzQcrFРHeX\3車qo9T7Ol|E&Ms5 $`}23B)s}nD4=߲^SQd,Q$CQ!AɯހkmtR:* HaDD-J 3\l*g- IT9q0ْ*.Wgv̹6yj'h ?:UV9&HSS".y P[ =,ç)#kB"m*ԁQS\)кVb[,q':wEqz #2]}Ϙ58C:#̗e |uk1^vA}w׏"9RehMŹRR}ʺ{{jRx&?KۢC${FZSyT)rvilIg2ZKw+&[Ѕ)]~@Qb:LsPR<4DԑRGCS/#qT2׆"xe r-9ō"~ ,P;ו=PR$$BM: +{%oAmpϪ.5?<_@TǝfF7ЫŚE$͆1Uoعv.VbP/%})Wbh:a{)36B{q8K.wyllS[ \}; |1C/􏴾Չ0}P ]ԅ`b5V[Z٥Te؉b##ms| #밢]ޛvt5 [RnDe1wz>N|x3M/ţ +uT2 I,3j) YCHFKGo2ugO4&A>7E]/%E?Z(+%aM@y8O$/[7/㼱mD)ӝ_"oBnƜgP!Z+8 ؾztL֯ծTO"UFb LZiYx,!oU_P7@M8VRsC69!̾./0Y{pC^KTZz$ SHDB*.eyXu"!gW-}6+H_?^x6?)fcWƘ*mm.ⷄ&/L=8 bE5`q7ޙ5)njwS0(@&{Ǻp<JˀKުqzTv5n+,+}USŽ_%8tvwU@ ;w |i8.s_K5B# )h}@'vbQTtSˍeo?K-^1KD'k ݴO)@_ 4Cu˹Fà} Yk$y^kq _ Fo1`[*㕢DL ~9 ,SU[`- N2u{4ՎۺZ0C9roյI`8rY%߲F bT@l0 |D:^{m uΊ(/*׳ጳNG|շ]Lٞ-zzi&$ &d .!Rp=sk,w6-:E9Ҙ֟X@K:I|*bL6]j瀶fU#_ lsH=^_SRSLkY[-|n/^3 z{̗\֑Am:Q[MX7pqVy@["1Fl;F6+ 3Vl9M_fAQh{4FYҦo"kم '!8Ykߖ ,)H}2k#99_d @G_oRTO؁/~)4urfV [h:zBtzॺCr'9G $lBݴf _!w<"_m uiQB8)Lr(NӴj;~f e e&4F<}kGMlEeLtcQ9:?HaثFL+YVf9YD e(Oqi=PϘPh rGcM@_ExN憧Ln>kp& -־/ctB4k%~Y lW3?uc!"> :~&F-TPk9[np v̬lJ#1<5[\ , 90] )ATL]f?\~4p%1UZUtb"%w>4+JƄ%֠oK,ޤw%5{|^-K2q>4M˴4LO ɧRV^5]W^ެ#sӽCM&tn_O¹HJT9RNl+XrӜB א#{4S.)&Wf 7 $ Ns JTHg7B#bp$GS(ļ*9~h{ \ݛT<-]z/MUƊ-ygRFvlJ; n,Kc d= snLT/ bhH<{.A-a2{7h?Xѧ =AK G,^*YLVV[coϜk}kN7<>txsfxǃ_Wf|P=O:L:UGo;kV8}+;MY1G:cvYhBs2ׯѷ&#Oƅ }HT|$ {!PG~}:[?$4b=bbDiUJl/PħrV'1l:˷KYXtp)}<o˕/[/@ksS/]n6hhdk!B ?͵XX4v-j}^vʟ ^znsjW7Be ˒[T^p"$bGsƩpmj$}F4tE ~ &Z@nFyl т^Tx/#Ium7֤ Ove@p{|ݔ߄,'r_- 8|$eCUG ri;MiVN吼}e8DT4N^V59o]x*#ϠtJ'v؏/FO`e4~ߜ)̩G^?=ǣ-2ذWz`""޶9pь"}ƆT٢RS&Uqئͱ@B֜ Tvu4zѿ 5<!7Tm'5Rpj#*$2lFzxoZSA"Hr);F+eYcB/9k#wߌO^Ny$z>C~nݢ.Mz.ϩ@Nk'(K'K#&_Yym[x9OY k $R+{Xuѥ$450815]4EXi^"?t|i7#OȁۻPmK'}h/+.ş47j~E?x?^׈n B)/mJv82SO]|Ƽ!<2Z % F[ixb mOϰ#A&$?e$AO;I ڂ/ںI)iN oqA*x&3J}`{ݾ)D@ߓOh u[f 4K "*Ĥ~ˀ`ߏ&U!,mH1}C*ǥؾg "L%DbI5ZP醎400z&rJf۪L$uU\rliͣmQإD KwYVܸcwzU3y ?0m+9VS V;$.UJ9-z0f*xsNA&=-Ure) T9b&NDt{!,ԓw\柫ψ؞l`;L[[W-yh|{ݹc OVpJV!m8p~3i/ea)j-kySIoA7҄ teGŵYn0e%2Ӛ`]g8~Ѿ, 9=I4]}دow8V*V6JsjO31X&xfv1< :*DfVR~Kn; uʩ< ʲߘ"Z1wНcɅeSy*$zوH%Kw*] h`(Lx×AGl^>L\8=5YKaH\q"$V t\EM $pd$NűrbܰJ,-G;;FKJ֦:4ފlh"`RDpCK2IJ caZT/{9͔-#yN?}]{78#?sv)a-$}O-&Ԇvf*]g\!b5~@u=V&a*;A>l6_Οf>e++lg'WBjlH/#Ai6;Di/4xZ5SV6[ՕCw-#R>>Í#HEI 6r)7_}TR/ _%<)y#:3nnb>: ]#Tn Z;"d6 (j m'"1F ,ExhV p?f/c(2YaWs.Y}~xFh_OE:Z%C<4N[dmFX#z}\2BӚ~q=鼡<~ EV])paUZNm!2+DQwa06h*'s[fNpᤸ£(Laj-= Yඅ L}J5X~F(Y$E0Z2ݝ"RCɢ:bŚ"8zs 0Mm9j-~Wn?qF -n_(oy:Cm]iˑ Oo  05t%gxΐ}I&~]e$îKBr_Wnb Wknb yО5hygӇ6,Hjk.&C(9&IԪ};CҕGcj7_"쌘e$'k-zFs9%g%WB "&bƌ#|\2xd2p[cPb8lŴj1PVE/8^}?F6/Xd8a :EPٌBhȑZJ ǿZN-Ω9{4شu14IRX!M3E>QOl֕\89k]"hό0'AXv1$D-ˏ_<Ł @r}Jȯ ~cGJQf PƄ%ZCG("Pqm9VAZ*YqZGq|K%yisV.10{ !QeA^=-QLdI y~&F\e$|׫zX n kq.)Ld(aB67+}Ty:yֺ"5OӺ!,rXol%q1?Pd[|8v8@zoYou4@Vj Cppz,U`U7O 7Td=\"(y1TJ;p/o`MC7pok %u-.۷]kZbv^f˨x=ćBt~,x1Zj Kƒ"~252(E->NcMcY=N൶А rѿ24Q*|GLzXNO}I:*JΨHZ9yǔ(FUe>2"/14ۗ[z(ǟW:MJټgV?4ξ-{ vj[. B(z7dI")1~"B*4*}T{;s lXOg^ z^69 䙄sdDǾO DF`w*ӊپd[k* sSʜ^Mu݌jz N-Ue6;EPoBw l>svC5Y6QP9fKhp詂Kaa./;b ͬ4*Z%g<'8hB8B`@q䷜qDMMVW`؀]G'!6wKP.͕;ОP B|Bga!D83B! PeBJEn'1HU2s_wLх\8<`^ JXKj19Ί1(YXZrDbe"(㓤GIpA-a㘖E"IYd~>8R%_v[@"͚vE⮏rMƳ!OBup<ʳnDZҦqX֞٪"球Ёwf++k lKSLc@K&LiTQz7$, 0Qq=@f wPSokIy˳5epm1o0\jOF*> GAM;&pPr1;{v>{7ȋb>k>gt7(hL°*w﯉?]n{L[-$x(Lu2 ǯr^JbK#& 0@A&i0&C"wrmn},s >+ Lik;SH`ةQ -ϨzH9p_hߗ3F,;wN FGy"M 7F1!>נG~=:ht<{V< {j٢f;}o@w^j$eNQpZZ'U;MI*I7 NQ>s0P2_JolPT`s%W%F`-C?_}!,XHMrp0 Љ zF7W͵CEȸ{{;R`Tʏ,3G"iCo|Mla2f+;7m`!,ؘg#r3mmKXB4J{*?L ; 57qxSb:v7l:fHSs=]yVh[3{E-fR4|4PeNKAa@pq5Dz\J`V'|-ԟK~ Aޑb?ŏEv#nư.6{Or*ol;s}r1:/rV2ZF/bXvVk=+EA0gd}WsKk@zw!ԸcܻS'KJ^h>3[ak%ê=Kt(mФ^ 惣xA+LU4T5=vL]1gp;96~ yҕ+qўVpY!F#N'f-kaEd<>vWD'AȺƓ0ݱs{ Ƹ9/"F?Jk>$5Pj[m8һ9v\mP 1u FQoaBMjvfr"E PŪoη2vDið @lf5QȮ+i|{"7 hG=.֣N0nu.̣Z*0̜>N)C,C2͙ũ1yEO\AF:odUY8IƇ3^B+"yŻd^ng/.(l + ӏ?%+0tRdr 愍4} LO5hUI>C:|tON~a*4ۤvPu AnW}p>\F[!k2i bbz߱.]ҨMX-45ܚmiY\K6R4~--8l}rteK:A}6GAnUgʘkL/f 3&&z͖$YS:Lc DxˬOH}JNqAI0߆2̵ǘ|)F1:-)E#@8lXeǍdN2=ضl-sbږiJ""!>6lwarR_ HStK􂚓m;Mx'd PI|W9!3GVX6灔ZޣR>x'#f-}@|/U~<8Ѥ.ykv)I%,)By1S'+5bfG14\k t`SE5SOn{|@ `Ll'RXU 6Pر Tqp7XUMfQG;KTshy1m t%9uF.ZrRqBrF^1jnDh &3Y⾮F'&1V;b.~dthi؂$JxFcDPƧ/CX{oCOy:է@gqxԓ1a*=4хk!Uewk6Y̗h)nJ5[O"bZƀtUY?qO/P25!K G)`WtHfOrNo9b`HҠ5iY|8qȁFJȁPF$v/ꭺĬv#aX;$=i~}e|Y?:; LNA ѣF;Vm9Xy7}A[V0{vW9,-7Lw 0bYr%Oʛ/1s^jwI1'WwڍTkp۱6mP)r/*8dY*`aoX[w%U|GSO;g ,b7{ܰU arHgIle-sx\9%OИb X\FN:=x g $5'׋r*SH `t=wЫF>jW8Vko86'΅p7Ͳ~Ge V+8%X#Ş_-O0a_Lt0;[ &NNWYdT8h@4K.C8QJг+AUoֳ> G8mD~ʋZ0Hh뭢:xM{2ԩn‚-j¯ph,--|o)h x// ۠xٴO*X-yRa@#ls!%a>mL6ҽ*$6 ϺȹODiex*?EVXβsnmONzG@Qb 5kS$UA 9oL.!(S8oZ^Bkl=9ši ̙ Hd-C/= N'5Br2=i~3.ZYv;0Bc&LGlZ = ;Vwe||m&M`Kϛx<=،7x s:5=kk0 ! n޳ޛ6g@Uq5Sa\=P.tw-;[ VhDT̙Q5ڣ*$hV/P_39DKLQa6zJύV% WqhN-Ȼ"Ŗ3#1 +Ӛ %1b[@Yx.K'x3<oqFF,hh"h G?( =Y$˳lVoBs>B6z'3-KցfՋwrD ]XHHBcjGZكgةgir6(4%My_V 0"BcWEAN~}&Q+hKN5tЃG)@CMsix㴓MPS : 0}C"ܓ|bBނp%ɑ\+`%'e6n24 ")1؋A1d0$?fLڋt\x/5a rc}YM_Wzn7yB-(mw."̭nq*_L? {̀wX[ӠjqȧeZՉVyuPİ7QMKbs#JGN`L <{w6:htVU%[ORtZ-w9Cdep@Evݖk ^mw3ټIOw~ s,I^ޤg`}6(&q/R}Ve%fFU.ߡEC$jo?/+sNw¶=!_&_{ :z5B1%,}SӕQKR,R8e|ʺSSa-l>_U@ya:Xj%-znd<?h$oP|+Ca|ӇSHeiHvYΪ&C[+b1H'K/D]qVwR 5<\7/J%9ZyR츮D2?NR ,shH[25W2jxv mrTJ P'L}2ݸwm6uʚ:&G6|fZL#w}-'ZG ,5L^fKSޱ>}\G0v[mwƔɰDSak E wwga +ʨe'fb["н;ZW);KQ' xܥFb^ ;b{j'3'; <:0Z"ʦe;s!F$x=f.hV_xeEOZpJ{x9`:Hp [תUtQ C*n[alfs/w4`{_.S$o<ä-}j,U,k=x7GBg#b(dΉK}( ]9|?/_dWJHI]RzvJ8W 9b^s4hwh)̆PXm"舱*+ _ӥP3XV&Ǜ~>v6uLsr,\=lц@&'g䙟PuA_1WRDe=LZc$ [u+ +]Ђ!.DZ z1S Q3s6tE㓔4ߥ& Ccб*/WfY0[0ѯ-1?;qvA%BX"eYIQ^*J$H|gg>X*?r JLU\G%).CFT9y ΅Flδ>Qkiԏ `t? G*uVX H:L۲A_{q17O5_u~%9fN̵Ud<)s0l`33a~K1Jel {b8Q3L}DXXTr,M*z!q (0\*\PlT*-o>oߴ1y$2G#_Ԕ&'`4J"x^ 1J;MY=lijgj*`Wz7ό }a{a4I])A'!dل?vn(')U^a~'k#NDΖ# >XRZ*̘8̙[EKH.>5Ky?i) E%xp `gN|+$p bSń1GGn̚%п(z5;.TB /]4z.B-kfBf+ .G2($/Hz†ګe Bc%8"qAxC OO2z skYH2݂W@? ,B2M0+.)QQJyrT.b8úr)8T`JM^TѩVQJe{’g^I aM<)K/TIW" -%+QH&'m UN3!SB2nbhk )﫰`f"ɚ6w@?ww>瞤Ŝ %<9 $ux(mmaDeC#] ǚ ;xju>S m]ٗAXrNfƇW^%yD~Y0Y_Ce2.g0NQfjk%y&%,_f0K C 4{2W nWxH.{L2siK<JC5e[^NrgUԊq=jKզVf"ebT&WEWy$St,ml'Z5+dՙ42o2y)cL`EѠYIb&j_RCd]ގܑ,w*Sp'IZh8q#c g`HeӌG`<^ҋNP<КLͰ mτ  1T5pCe.eZYzHߣJzdQ!^$jWY>U[=bee:/U*e8z)C2֣r9GG$۹j v* ^󇷥b+ )kK<6߂=bX/Q|h*}QH Ogݷ}o|Hk Fd2͞.B^ ,d[J)NIb96 J̥̐cmI^͎dG: +8 Te6raN/vzP%a;TpJbWY.wYc_'@͔%1P/jl (חMG[_T P] c)*@s ValE)+v/|a_ ǵ}ӂ?p9&rިF=_14ףkZU-VO [XP* H9 *AG+dd e!u6rv'<<0I6o 6Ed84$/]¾[prZmM7OO#W+|C5ki r8֣c-[uk..ɂ\Gtm.ΖE]شjb4,$Y4qN-e"y /j9HڑuH [A[5'^PdiDufAA/) M+&8.X`I|㘈9ΖԌa(WTa+!*,2@-^Fߺb,L 䂈c>7n=vlG$[Ik\nX^:P&+:> 5ŢE3>EX.]9sAsT?gꏟ7^h8ODk | K!=xfYـ*+=A0Hr 嘉erF3ʝ3"<0Q|% Bd?yxnf)ן:-"ЊầI|!q_KRM`:سjC9%r ߽\ yme(IXT5EjCRD_Nsh~BۓOf;?E T3 a&;:)o\o]MRQW7$,|PL2ѩĺ}ifOc' 5t\NQyEMM}eϨe9p yK;܁)¶>k+3}O%Cդ&V0{ ߤzcۡ;ºv`g[ʚ>>`z>ɹߐb.5$'ݭSF?^nRV(P%F~\z@}{Zkz! *^珤S,GH1nIZ![q]lJt+xx(7~8+?.9GL S-A⑶.jR][@]tt-q9 2C0-W$4Vc6ÇǴ#yF[(;G ty@iƔ+W;s ,LcꙗWc /y$hA$,_2 ؉6Jٍ, dD(Hz&aTՒS3J/l|&`j`aɟ#%N$~ 隙:"@Ʌ{C7OR >I)BVt߸ΪKJ"zDS͡_mZJ*fL`l[:xOgzsKJ،V| Յhd(s+ O?ݳ󆚃Ez\ gUk'^`Su"S"O x'Sbߓ%IaBTg ᾋK +gdxEw9f٨ 'kT;BGncc2Qi{F"%QA#wO1IAK=Ѓ}LX7#e"9"HQlS !Cٶ &`MּH5uwjAάJyq2ü}K0~+9pV`l)7CG=pwtW@RC7LuNmP1` .^ h~xC}e|jeaڛ8aB48Iv{/.b3ж*/ρ)7O8eu$iX22W}s ȱ[OiNmՖ'SsY"NoSmDZRp * 4& Ý=Le `<I?DC9B8PJTks>L@\y"c6 pg%]M A̮p 株=_M%tT_MX+3@wd\( v#PxYyXNڦ0bC@RBr%Td+#'~UO׸vXaf"gʾ9[q{"$zRhWhgVΌ rBEY\jn&G&`V6m>,Z^ϝ-hC*>FrX vS,#蝮}ltH [ ֻ3A9t#v6~YzE#T! 6w մ`fQy0Q=U-{1b|2Q$*'9 wa3SPZl~ Xy"3ԭb,Dair})ױ%t@veO9C޼ǥ0dG6r(@*ٹ>,T77qq.bUc5}iHXs;J,v.Ah\Uw7ߣunbtFKH$-AJ`SbmIk[צ%A&:ӟ䏨4lyX֛dJ"ܐ;Wm2Eͻ=&a~qN hё%+v"b$Lt[}x7*WeDLO"R-|V䍡d5)4N|>C w{%k=#B-j ҝ˱ș?rR.gTcVtF{VAgd0MLdfF:)L<3~ يJ_ \*Q>n%$@(I?hX Nt0Ю}9S)XF",yW^.CX͈YV5 Ye`|?|Jq>צe*Jm(޻~n?ohWKtfRX2=&ۙ=*LF? ym4/ |{HQ3oA7[yf)BXp }? mQr=p tmE+ӫLT->jk lՔἵ!esO @^.P1s"@twsjfܱ;fUcOֲ*܀ Wp5Y$#[[Ԓlv0%B'u8Tk!}wnN2uA˘B$=}&a{^>xֱw.2Z %u^8S0w硯imRI̕*)^/ÉG3ㄐtj#uX@D#p@ ˀhW9rUpoί(l-H^z~L?g2ZzvZUMcE(h%U'qc4ftzAFc;2Uټh-K-PAp"EMD)5QO%`H36l;Lm:g+UP\2IGp-pO>ϱg?X&Ta77ݣGJg(7qx ximj[U+ G X& ú,.mg";T斥ٓ*F "%⭢S>x­zs}qpz `'4uV$ɋxR5H\f ߙvcf?yT{y_Ej?y;֌)jYH3۹A؟a/KčC]O;@mRYBMU8""o^<$AEq麕\~Q9uׄzSOv$XKeߕC[d}%Ym\3~~#QQℷz]Y MD-1w^$}Ia$B~;2=cPڲh Z?ەRu)iS`BYDNY;μ#'ICH Y}bK֛PyD:C)&wuC!>I '`f<""aVRcn~jӓsQf9cT_{Iù@a櫂^ڜ2>j5ͳDhg~S m)Fҷ| 3HC O?{sg0PFPCmڊfm5Uጆ:Q|pɌwe O;զKAwD4#B#022yh3'+g ]Zt'ZY%|ٚ,\'Js)\VpKfW!0_O`f~MŜR?pVQ<ȧhlH}Fif)ߣlk^+_B}9 򌩜g_5$>cvS r8! V(W zGT&8gdA/13к&3G&L*Ite`̄x4TKHݔdyYFSWhp 3 9TFʘDZX4hdSv޾4IZ>9GQ lY5C<7oR$6A\߄7> #ƐMk=_$ S`l~N8_F5€ WqX^yޏH[+ .? _K_34hJ/22 .R~r#HFmj$Q <StZF0MAiB-P1R_[WbUp!i'bּIMkj5<,8ku_,E"[],_ɡ1*sqs@݁`EjLfBY'h (_yߢDF\%(amy_|pAx9^u?Acyb ٞM#AKQ=61}%WvWwƱ$QE<1N("_92hVv-Hup grΟqFUs8M}$l͙\%CyI&İ&ײSAM)jj!HAR֮f0R%w)%ܹ 9n_\tq@k5Lx=n7.a ::}2oB#cV)W[J01pE},MBPvvoOե3)R_cbR,b́AܓƄ[H0+SpY" "?b*wY ey_#>Bx""f>jY/f qXpyjJ5bPkHVmXIl2C31?f v&wf1 E/LkH@Hdj}-}⦝ \XvsWmв.H'Tr~ܔ;e{3u5rʶ goXYOGaUr[v~ɫgd}60VDFiu[y [,`dNqM/@dZ*Om3c e~89 @J~tq/T}4T ](A *u+JUohuhD|R*.cf4,1jiE[8Jkvrd61p yî.% =RjoFgzZ^ +uOϵo;lCV/qK 2^a-s Ws\I_[u9-GʫV-i;= nEaVl/ąh5qͻ*Tm74?$ZVN;cBݒpPIM>Kb?o P%÷AB?obxBN7h;nu оJܺ޸VWlj~Zhp/#-5LeIh>:1* {PE &/`TYƭ$yS9/]n)!.vncoZ` g,&'?=|Qs**Rlc>X;gxTǴ..~n:sMn2ƙc%#§[ u3TeBUqV70E[FI\~{= eLe٥`0 ]`|:U{f\[*MU?9L HÓ;x&2)7Bi"ŵ`U_/qG#űjY, #.:-~``-qWKI%(ZUeFhpcaPЬ Q+i("o-Ӡt^E2?(= >{FSVij,߽T6:dSLuڄGM^IuW*d4$^tWWX/Acu5^` 7Jsu3\!n-ܛz;X m%݉<Ş!'}DF: G~{;^W[x/\?ry||ϹjI7]^"Z6gVЂj2ndd1C-Fm'MM~^_IH +1L5\ ·fe~ }/9C/ҍ>48^aET8P;N&Aոy+B=RbwQNvZ8[~ƸΡ=7V T-Lrxё%5Zd0dAx:%ĩÌ }8G=z`9a;uͥUD9:&157$J5 fA47&®lGҶ!Eơ߇ = "x8Ao^}o{C>+968M~7jc4(DM}pHkMj>$O\M2 wbMXMR1140}cxAu=|} uPKBc0vzDP<1zpy:2/I$G?ci Ǜ-g@Q0;H='D&֫MC풆 Lo"&M5̘0cRŁ&;-AY>u_c D|υ?}RQ+K~b0ʿJkM<2ܝ !/ܑWfioaRYk2 ub`hE({DV}5B׻a7ív5 <1;3C"8op&8õϽ{qVȶrcRO;!nG0xh:kx qD'M,:rLcksGfFHXSrJKBj$zaBDd[ڗيHMeq&qzK4|+bW{fGˠt#47hu|߆X8mr4c/Ov0~ H<5Z=g/E4X6GylJOUsB”4,m$`@ԕEŭ:*+e[8p1%jiD%_ĵSvKh ;pptU2£ώn'͉Oj^]_\{K׮A ,Mxx,=Ph3@Ny !2@ewg9,Y'9m\a6G2;IԟV!-"̾WSQyک$04އ[!iQL1cd2b\)\ ;4U(}2 ĴƅP\xXt1  4#7w`c2 ƪ.AT s$;Ui\_~o)_8P>)ARFSk9̢%>.GA=CW.톘E;a]Hg :2Kb8*a#IΘbQ){t@%̲ttDoN ڹ^$_e'[7^o`טBIbT!"#6l6hF~l֕ӺӴBpi5_^e(LPn3Z+Ō{XU S벧ʌS0H_O}bҳ5TE- N=/o.`{>456DdtmԭОeZj{QSR`c"8ؤT!성af& eßw"$^Fokۗ%}y IJd_6q{鶶#DY[=ft),J$IZr7RksP kv ڊBZ.,چ<=i=jkIk IP/F04> j7PԤU\cmʖ R&U٠[ =K)rσeM={d#NIbvؘN~qPSޏ8ߗriSjW/︅Z]{")^ 5٧WK0Y(UXsmc9d\|6,vaBET9 xoj97s-l6 ))*xmgVc) .8EEtoIX^•R8*Y"nTZP4'zo9zt uq Df$9NOilفpi`m񣵱bփ歪f7fVyp*e`c'Ou__UȕS)?2x.[* 34I3L'@yAx@6-LvN&b);fwdĵ3҃ce8{'%)U O{U&gք`q+iSz6{ɛ@Q援1yTG^ʱk 2u}Z1shziѹu//[,\]Y2SώZn|!ougԷnƫIƖ= mG:5 /C{n5'׽onHKpZڿDj0G_,|~oc4:: dPN iR?[oɢGuZ5_U{ÜlR'`ts@s~G Le Ȫq?^M#VD`w[# x o|Y$xAMs.1vcoYڵܔ'9[5M~SitNiݷ] sՈM{NɯD*gyVݚ<`E%vT>CB_S_VmEv7f,f^DHf>& \;6V.d, Å9 GK4?2ADVf/^~a ǔ?(}!\/ֵ &;9F"250yVˁ(=SJbl!I0zG{2_ 4).2=Cd{"1*$I 95("1\c%n<,EQ骪ym6˷ml(!Bxp?l_˞ʵ}nM옷;v~[,.jjBs #Ems/-L:{OqO \[MBS:k|5!IF0!^Ҹ88ƭG_)nhz?wG_n\ij)[KGeH! 8JdZu~-UN^S5G^jV֭߅xC cwG1ӄ8 NJ99TvB~ 6 -y_==sq#8V7 ":a.] &[40rq CW0ɘn> 'X/\ǵ m!RAu^ije -c2!1. ƊbrhubEʬU&KTlTC%GRmn֔ %LG[_R^h0"KNm#莪4pV]n -5VwSkL8^ߖM? -TZMnʳQSyf|աqu>ܪA.J[TYXӵ-R?/J9oxqASщl^E[ixmo\*]]Ä 맒fD}>Ջ!/$ Uc! |NZ.oi7[\ͼ * 5X@ȕC:JιuwmVbu+NUJkK8ҍxZ t΃7'^z%is0^}A_E٫D_M"`bS~?s.yꟻx}ʾ4ՕT-ѴJޯC0\mI 7{c*MEy,}N0H_>~+ϊcBap"N1 j%eu*]e={`Gw܇#0=ߛbH\g9]݈>/Xv\Eq4L<4d/"^<_t5ŷt*h5 +%$x^ȑ<3t&p}>ǮHqA&d{f5)8,œNP KQ N7456 0cGDTy[нRǸ-g"%ov#״aA{QA'[H6;S@ҝ|'̬F25T(Gf\@XM6cÁg:+TREunwwңݘk笶!n6 '-Jgm1]qiiBɺAA.%[/}6FNj}h7|((AAЂfnFq2؁l8g2 SixT̶_A58d-Ll&R.Bf2/-&yڨ#p9f?@댬Ea1&xG,]iײK@1;Fda^Rm_km4Wl};.LYcp$1},ϺOn^K7ė0|`jepa9:ӿ8٘E&US *C߇kL}*ܢSpW) ޠlrM'0ړ 2R[Lȍ-j)2t n#@Zu6s* >`):6Iq^f:o&>VK吭$PPKRn|sV]DEDdD 9i36Jtu{/+L _RrHHiNoDA)84"5#O1ӽ;x._`׹,p\*+ߟo?DL0h;t,QyvT3@*{zXhk^n حBLZgГwOt䭡urSXK⒅(?F)>st]/uﻥqI!ߘsq쐗t _k9poJZ7az~ Lʣ~(=v܊W]5h{vrJz:d,$E7mpozy5 R$ּli|oRM/^t  fY>āL>,i#NfbެKTJ {Zad^7*`FrYa Zt6x^㑉tT8nM"MXͱ^6(}"drs]VRm6l$-Ewl֓BgREԣiHA!ZŬLҋr~u%{ ,^3*մM.gg?8{xj\q\aڹfr֙S}C';."*#Mc̈́5XD~i1+itL3 Fry:Y(.qhĂ%sZm"ODp1kpqhrW ,$)ACQTVa[+͠wY&.fn\/?Ԇs% PUl2V*qkVfdQrB8iZQcd2 wIhdE 9Xk7tkF?GR׫8fô–~Qr#niq=4Ԩ^: Pӆ+fRe \vdҩBŒ\5+XIŋ769 bȝo5@X٬<0H3@0G1>=2>`Չ`ߩ[+݀v=H|m '}i}$ V˗J;<֜%`,Uf.3[ >O nMۍ~sE2M xLVIljz,!(R4jt&nž p>V SSQ7³t?Tbw:`޸ c[D5(RW_#`"q @E;W&]TV/ |K[å-$M0pkalЕn\E DžKsL8N~i[(G,P93;966,%&Auz$ؔlϳX-,GO)|쟝m5!L3Lʻ?3 `،b=ubO]bylY J?#[[OրI ŁN:v8MCgp#* iڛe}ݾ'8~mS:9}ǔsDBN*gYXa VDždᒹ܄L_X=C\z0xgw͓ݧ>.Ke1׽ e4Ͽ~0^C;1Km;IY }S*jWd}5 Dem6i|BXYG U /eS$uV%Ki1?ܩ99/EXs 6Gҿi mnS}\ʺ^T[pT3cR*G 7oV; #2«^81Wܯ/K>w |U~T /g 0kO_R*jr"20L=8S܃ u!kKmP~ʞԴ*F#D]%[8MibBShږ,F7I Wpߛu od}~ A[tPL|z0.3^'/Q.n>!:cZ?TBOL 3w4 /XPMƦPUo-^V ];Ee%¤c+:)N蓾{)jDZ39JBaZ_}XB㟎Z q0$VG)]%';8vsävo@E h]!V)wQȘ#tN@vEC>jgdž<vXaҫ2dH1u:%$V&t܉pmj[m/NkIV`#Dwi~R 9cD/Ӈn^zl+, RR ~2o'tIXk~l; utራ1Ax;DXf''&^p[!`2E?rh%s2 V_}ĤQ6&ܿ$hߨbBl $U h :Q7#'s\|'Sb\umc0WRnXB$xU_@B/f(crS@˻U=tRѷ&6U){=D;T S'C\ќ\]%f,iFL,_b1b*-D*χwHS= ƕ kzc-jp,jJl+-{>O!z(M״kՓsUj&MΖZx nLG"NoWsR<~ hr2zJ2QQ:D}ă_>fodʱ'v@KwDN| ;gOBYyY'4FW9y|Yy((?hҡ>oEL pع|0NB ݬ5<at~K F99߶+Huh`.SbxCTvC-4wNH֚o^ܵb`aG +Ydn8L8,w?M,ViK,eʫJIި8=M.? *]$)y.Fy:et]' B7'UnSK:e!6޸&q'g0E&v.u${ñ&8@IA89gAF/p?%zo7soPC<= D@Lltw!m-j/}!8hFHw,V-~'v@B 5SbF5UFOJ 92]@jt퀡p(Ɂ+9Q˝lT1 +xuFJy}d)`A|SX~gj )v'|P>Q1m!n;E`x/}tpa7ۏ}Gd"NԠBC[tXAo `[M!z2PafZ 6=U'&QBYYCR$ǒ aoKOR9SQ7,n1M-EhԴJyc,>=s[gW! Zuፅ-slYN144}VKXl6S{5lMƔZl!h=9ǂ@h !y !!>{bgungǢ魁2R4#_lM/uXw tu6ä} e*X@%*STaB8EDרұ5뼜D}v9KpA#(lIK)C`.:W|&Hf9N?VO $Id-A9- k7Zt<|!L|;<$|o_E8->MIDAԍL 5$%w*5rgQ\{W>EOp| 50cTO! ۲IIΡH?󚸜~2:0D7~D&s"@1F]%H(kBx8s`todD@pq&ֲMG?\lz)7'C/Ρk^u& ]g.[zeo Za:I`a8а%weӨ,]nKJ1dO[laxgp?"E|"A~"_AS`m;q}[oakH8~S?Z e61V[Uuu ؠ lec{˨-n^ruPe0d V&| 4N'U:kXwjqmȻ ]RXe釉HU֬g"^Ck 8NҔ4-: eᆧ:jTS܃" %@\} j5e ٲX:srtӴjrT|QX_Kag^`^Fu`=5;]C*$Fl81MC@Kqj Si%#Ey򁣵W<̗c?Gi8?RF΅驞97k#ek#mP7K&O:Ws=O[^jJ>D%u q9nTΉ7!%/2ӥP14yɎPa?8V'a yWj8gjA4jѯ# A :M! (s.ҫ q|nts^1 $jK۩7ovoTq}~T\9 rZkgesOTBٽTdؐJ)cX.OiL,`Y; P3)Y#Aܠk'(FLNk& hQc["%x-2\k2ASy[G*Sm䆆Z4klֈr7Q;/R!A-,9vs xԽ`P_i-Z+I9;\?M bxQ?{xݍFNabe2(sJE"(V=({ߛ[ex~F,iƂR^։Ukj-/}<ȭ6q  K/0:BCJޏ)k SϝЂ,u8^ؓ5+s')>Zs}+Di֣"lg-Ԍp}c7‚|ΈGM֬F0^co=΂:DbQ\=Bջț[E,OK/LSyuvS[-LniD,98y#Plm2ݢ_H-Hx}Ju*1"]S|:ׂ.ZՊUaqQZu&k*z NvD&iSIkS*ժZt4WN&."bL`ENb.]NP 8dz|-ǥsCUP#{kPdr-D Alm- 7 2kepYIQi-14pYz dkp5kb0!M{K{2ސn$unWi}-dD6r,ip۶3ɣsU`(-Ÿ! |vccԻh، w۽]1,TԔX(hAoup^9=}/2Ʋ.V;AzZx.jY i*-2px8pDy+|L]vws@ICzޙ70]R`4ŒAQY1n/ks֛҂?&BǍť~GeZƲ%glk &ڰyG@;R{9DFdXQx8^9^F=ҦlvP1||)V7hVW tI/&-.w kؑ˟>@:~^`mG~vG%kaҳr䶐<bb uXVdE7Gzg-kCUwD(> ZM2+D-DoA|$nObC3:e;b4IL^beMّoV K/ Oی^qgEYvo9d[kkƨQ>C"̓]f1z%;GZK %㥐ai|q#¶-UN~D©/l{:׎Y!5i:ImwA'-* 4}1ǮX75yɲQnd D\q#7P>~ϔ-A -GT]sGȻ5?c8`=1WQͷXq 4܋+0VQ3>Z8Bmfe pOV@$Ï#p͇RT05E{'*Hi$^g*pK\%%c5_DH?os)O{5AOL [%.2v9KL))hqChjhPd-ՆM@,A2+(m}=ȓSsaH;Y;]GiBZQvՕ*heWo%GXD;uPX3\Wn+aِ}8j澶ok~;G` ^hhSѻ+ִU^Q!nJ*H.Ѐ25q%;=+8LO~Ƒ_)ya zvE; GR[9fWЁؠŽzWj+JQ;| mfn\r'Abz0tt5Xr酞I褲|1%71si3T bn}pL۠%K%L:w:yl~mb33'Q3gn\R:)K|sXtOmRڲpBYֹWm(z4A'>tONkW'9%IA9NDՌH ^Wo UՇܓrų/NVzԉk?7LZnoմÄۮ`e ̼F%#ZEgZD0gy[ 5Y!Y{"<wrk|f:[ J/iiݧpk!Lf*M9_zhteƛoP6E<>'My|j$ ZOٌ.[VԮC.:){-S^pzLzC?ot-v|1FàWA7 /{Z*+8xO8cùO3Si-eL_P; 8.DŽyủ+VHTuV :R0FC\08l"?z[he3 3yD'hL!;gD_8`[Q,ջyS1Sq\6IAGSޓd1JPM2`"C "wmŻd~NW#C$J4x`םYi&*~eGO[.h]Aa:H O[lM9"EJ -8OUِ"Q0AW#Cg_EbӲrO+ړL$註Z&+4ȁHRA!l873Apn +UYw(Yr,m2|XʮX|9ip9!U<(-"?^0]kҗ4&6 vY6Ʊ-f% ܡw*=\KR1fx%$˺'J'4.n_6nʵ6@nғn|;nNDK?}uVDc+BCD5MUL~9<1=Dk޸؜LI@|i's[ͅv'a9ޘsxZLJIF} V 76kl o$iD}u8%([j=C:#/!%R}t&KR%uR5"-Wf`6<>ѥtqB;DHT%5G*1$fb xb*v8/ Ғ+G=JK3MsEy|O?j}K=z F On#QAELw/rي=)PdžvZaRU1V\~z#ߢZ[hW2djpМ}+65dk\,)[^-тo0HjҌ 4Дzo?jJrF)q Y wkztItzOs($PM*}D}Zu&e`IbA{|82{˛'wQ +OabA7•gD&\}` !3?i$A)Jm/O2"7_)rf Y`_BDȣJ cwqA뫽M|ZOsVnwؙ8:ѱI {EPvq(s&KJvH*pWz$;џ1;g,>7aO Ew3Tz@~OCEC5ə>o7 eٹZՇO1"x=@[bZ<}DjmhPKLjVc^E>OUcy(cPRcŬ emK?=ĦԓR1nrDW'B2D>c]$699GԿٛG ۙGXOaڍԄȜ+2K;m-2H Gڡ^\Jsd1~$  Yjإ47zI=jGx{#g =U|:iƜU,VΟ{&K/e2'&5.HZ=  u:0!\G=`{ sx)nXd~VDs&: "5pK^G r m`%7P:qY "u s`C}q%!m UD oHWSǐ"j_:)oK>C-ZάOR2yY$><.lQ(%`vGEbK RK#v ZG+dZH J iP-CPy'2"jsgLMw {}v:+:L>VE&q`mQgK[d^w C 9;bFBwեe6pUhM[ _23MA@lXWJ1^h%*MRNN.G~Hy .X. ^k)dI@c_ϧ!>_Y|UPט`w%%&^x&Ul آu\!YtևFnTNH*|H>(: ׈4TEN&kGTo#uY9y>lU!?~65%* Lݳl;mZJF`Ju HL+i|q"j7-4 qtݛ syJ9xˌ~fE؅'e5[q(Xx,rPH#7mi(\ŵ/ĽX)B^y FrݺTS=[߷$qw *x ^:Jxm\<`y'3 bQ;=S(u(ZT*7PS0+i3'xqNƆ-gFQT~#w!o-4(L!%Axqw _ErD+5 QX4=}Sw6aaͥu'5ׂ7Wti3;%žレ)=MH .۫L0\P N#Vf}SYTFؽ#L+3&JPnxqТ2Na-1c|ǞIg+,d '7_!u :niS 6G^tO"5ɫ TY6JNba_֨j6[u (Py%&[1iD%UB<#% om/]ӽU]&ȤD*509 PA\H}r7Ƞ GDcdq̳O)vs& cf\=0YK(fEV  TʚRcR݊O#(=˞vdL [r'>; pBq1B!%稨5y^ijƪcw%3Uc?bdDbqn'ե6fmͤ=T^x8}S ' ~3J]0#՛[C#_ F4QVru!¢5jXsKVRm_ذǜx1e[|Hcv/NȎ=p|7&CvS4v^n31(ޜILH&D>HOlxηR_nrs؋#RL3OV]EؘZu;3Მ-,&VW,%FaoR@wn%NfjcN~LvXs|fg>ɶbd!p c=^)P5= M (q kdUMA*сҳAyw~ˈ !3d19">5֫ ӌ~My x`ݺd!эDGs0}˜qS>⢣zэqKvY+erMa<Bw.}柺Ub /yΙM.#^z-5Ax p#W@hS*Jn`678e޹Sű鹱`@382%`-\gÏ.ƮlXcEOruse%3VE7H5Ѷן[#U_,uֽtQ2]u%Q/ɩ5Z [-7z2}w2߼+ \ACʁTA% 1Ӯg< ICG%n6۵3ft%F|,\ydX#] /59Z ܶQABu `8/]M)|l[eAMxPH"H rL.hflDgŐhݶF+B5{ *:Y߫c$*DX gZ׊>$srfEU :^mG~gݬMɘKrHyIᝢ|FYdWU@bxc@\ؔkGJJ&X3)XV M )gYn@6qHi+¼1 RoȤ-kOOf8xO8r6~GQ_#!D[/-ǦGckaAS$>n;QYrU+סB)qeAfT/,MpqXݬ8+o]prثLqk Oboz*&',iCуw&ٜɨU~Uq#LMrONg@mV> 65n^ Fj]U9zMm:V۽2VSn~ 6 2@7,nCbRH|Qˠ]6cB,N@ )4sM:<ִ3m x.3fBt kӬf i}څ?TyGi4@$xu#sHJʯ{݉8'jN$H 5u8}{yu`쐩*0y-*/˲uHm uº"Fa8w#F po\YP6r%iv?C ЃCQvMI&`߃}( >Ľb/AiMhܳYlFy sVt㲪H&M|$֨d)?0F0+RurX, `8n*Q+ dO67[%@qMI9AY ?>s/%Ս#jڢva? ΔN!& Rp䲋1hYD@4MO29 EmRaxK0Mwd0:ZpN^\{8qbabv^gY:"&6 +tl@$r޴; )_PͣȯcT~’r&͒Ԥk} nnB3CN6LPJZ$\GPeDl %IV&Q-^PC \ hp<':~F[Ѹޕ/>n a~ =P,K5cѲERy@Wdv-QpMҼc>wiSZ(;[De: ԅHɮlX{peօ7u#Ve9S-MFng .>Y 7)_hK+{yGah>i55p]$l2/=PM @d F$ο_7̇L#aS3?kL zU+=rbI㫢e* 7|IEy_tc5oP)3Y5xscY .wϏ|\udRtIQPS$Q2؋9hL,<0X]>1I^]Iz y7C{W?_AJE?C8][GRmF$o޲ R(.s|Ѐ?^9DCL_X@ bK\VHC2\l<7*H^B@  uK)9Yy5 5[%OOz&Z~ĬSsؗB@ \ESHMUr.ʍ/p9G~m 5t:93 q z,zҦ4)ٟ8=ݦ(K-7w9no T{ ^?6IĒ&bLY:/"1nd18'mesB=NwT=omVֆ`0\7a2z bj=-#MJ 8{eWNZ=TS= (dY`K޳S6qv;X;4=R녓&"$zXƝ5 CiYM 7_hIbM @Oݴ^I$>|1rV#B)勓fBw,R, e8̂z;,s:ʜcK՜u( 4ߕ^7~0j'񸚉r>}xn5Y "HǃemƗ1{߅}e/lGU^u"DF_G58I[0!Bt,Ŷ |Ķg4\)/lvv}5ubL½ ~H:$*s3:M=,cQkt&"^ّZӷ!@ZYt|Snš lU`-h܌LYEf7KP[Oÿ.e.H\Ģ 6O<(㿆H3\U=X:3z)!)F=-!ĢL=? ,-mUSB :ӏמ!oT,QJ:ٌ4F@ Qte@C?5;O=5D`s3ρpҡ?[vcY A7eo7sƳbv6W*-fb T)Oc%*-ڱED-HVs]-^|c[*+.-1hm4۲w[oMdSzcE gl笓-kbw/ǐEPbҧ;$I7/qVt)iT -cֵW W<^`NT&}j󆃏AjZ^DVs؂Ta3DY%/\nJ/w3'qP^瞘ӍÈa}5c99Dm%3gTdQ=/fN!Tr"J5b[*Ìk57+/V":A=XH`: dYk W>Kv~֮'@p11\(9~U[~.׾uu|P! \=P~8LfKr7g,S 5H7FXlj]>δpt.2K &U_SRfM﹏: ~yPL렏 9Ԍ=OnR ]Jcf -֡K%O~&P5#Cv ߝnO{srkKXeD+5RCdٱOo ,ɼ ]g:(J-'_ӓKբ`j/~гec":#isc'~D?X4w &p[%tO  =- ?;GZ8A=^ nXE|Ce>bNH`rlKszha-DWEaU>q%k~M3I8o`?%< հ4@9fްs "ϵO"!F5B HXTKpWc\B/RLH)p:zVL7S6FC(L8x=L>!/@o٥i#r;k7Oàڙ5Db'CĞw rcfK.t^\"|HS d^t7bp0cPӦP1ϛ)h1xf" Z+˘@~LѵAP@/.|$g a;uB*ܶ!@V=Ak`S *i(AH2q؉ }ľL`Nf}8=A˂)h ,?Ϊ'tw5 $[`ɶ<(KJ>]qL DAK}Qp߈m kW^`0s'&! Ie ֲR|WgN/ Qm0f2(BƗ*tJ{ u?̡sC0$.Bp/|B(kewIdE/[<&:>񦦤%6wF#Wٰ:}E\31G\irO `/6qUDD\.O!5 G^ =饪YOOd8E0pCPZԥ5'-s4C.霟+]25װKEJ&4$щ|?O[lnQa<cʎTPXi~jysf6"2{(JiLI>{HJ)r jD  к+7*SzC2p*ћ^%:"aEw"vv"v.50XYi]aXQu[(9s#(>bBi碙 mF}e13sKwcQ񘆦Phj1n횗k}j26ZD .!L}~sau$KP0/ǭk)$ MiL2ŕ\@θ3:Mq)ԟA VL(/\m%9}kއ1>ha.l$ j 4EbOF8oϚ(C"4<#ogh.od@Ȓ_ Q 4JhĊcϿPox;GJ뒇U[pNH(AIGq9dzri~bIZ0$jM"&۽9o93Ca!2(hk5K]F%&Y|EXcnpÑ =Ls7e^EdՍ|F9J9&SU*Vi5bg5PC[RZgt\Vk%4PR{l VK)rrѫcp2mV,DŅ8=: K|}΍Ǻ_M+,AKBY5/&P$g>R0ND@DO:b;i}又'1ELؐ Ӽe/-Yߜ!Cն$ЊDž,Iޛ6CmjRub%Уuje)Gv459m:ĊI56-,ެ2<#YHa.@(E_9D/\[=NM/Jg3 f'bߝz`fF"TLOOПS|aV< (󁁰a45 N nkR$ ̦ɵ,\{1Nꗸ奔 1S[&bPXy%JVV(:I\q|ak\~hP\g[ '؂yzn[N6<[sԜD|F ]dl bWE?JKW["ܗb2\)x<$c7=/!;#KO7Og/DIHc'Og#tlEv {X3"%jR:ݻN902:*}alJvLݤ 5|׽#b?&' B%BnLr 5 L *$it _ʓ`,,gV=Ś0:{.^o ˜4#jjS>}e@g-ao JmDUTyLө~}D&;-)*}@Eu-hbQIvtA_H࢖+ ՠ3ab T* $MBScMS %+r,^\ v&!. `+ڊob2d5`g N/yL"l3*^KO'!|}1cQP@ƧJlm"Wd?axQ`D Q\fJpy@9v/򥣕*_h]2~D_Q4{L7#MCx ˏ4-o >/=剛tă8!HKQa{^ F˵")mw?()Ko\nƘtńi砫~#W,p~|nJ Ey_ykj5 n FnRTе+uw!&uB:+A&I[48f-Hg5`,O+7) d54*c {>{"_ta4A=xWu7H'('(c[Mپ#T@(\ [;DM??6(a/lh_dȕf GLCEb-2[)=eξMү~U\sCSrGcpO Z;=ziXwZd1!N[g m"z;'Gr'zr8o9 <nK?n,59?뛣){8־8I46Nv^u6ϑRE`;r ˸RT#&(mʙRZ᷅)iGa;ׅ5w$[rs69zK&cysmJ2 DJtb>@ @F-XODQ.>~y6ƯNbΪo3>axB<(c<2K>8Kj IFCJeḢ% ^T3Ƌ;8Zei[,Dx^òdM7#Zk 8콴ؘiأUW- y!34V~HN+S{ 4z~ylH%۴(IFoBΤ mڪn_? ʒe؛G4bsVQ0]Ӧ.lL!#T<ҙI{V)Woiqd&6fܨNJ]`2 $h\rcˑbn`1U,TXR*o%hiSЙݽcl<#Ndcct&K| ǥ?Qsҍ<*w4p,ِg{7[ؗnIa~mk,>1fkMwĒrPh} {@ R\0_j%&&RL8Y#Ô(tq4_Y!)%KuI 8)lč,0'#3B\C>cc@sv}Ђ% OET™>IՏČ540+)0= =ٝ!݊#Y.vu);)N:w mz׸yZdM oLNyy(eo YAxeRi+JiJgg6fA`]9F᠒oMWZ~t~SR?jW1◛Xv_:䕭*BASY|(NqPqb*k SL<@:Wݾ"FfG8qc5g3c]MhM}EK˄qj`Q4Sp1D1 ۋl/[ZHhM!.۽. (QuF.b^[b؇v3a&: =ISd}7>ɔztf7M85n`-J9EڏO$cKŶ< ~gPK$Hw&گrScm*;R+ش  ;51Oh/i*7Q6z&pz9~gPs~EoиN&WG@0:%H-G^@jtȷDdhDc:;_-RZL[:((wHkvY+%8;XѸn5] eY~P1J%MKΓ,?N`3[FnYGJRstc۴ʹz`e9cN$>B I-rg'T^۩7X}c)'HWV~#Њ6䷗ӧ-ZY^4\m0SpI@湘r WΞWA"~R-6NB5TM {Ñ H9RLv"G:?uf,!kq0Fp8KP™#iur=`/"(8Lx@'Bu^ܚpaxqZ)[{ȷ&@K3hZh֏mj>,*!FjX^f)\C2֖RftD=pLsIqѵOWS>8t)PEsC@.zH* ЪVW笽/9o?Nn) ^oaR?ͩeUϓ׌'D/W:~1NVnN6eʡvB{C'myz&F9ŇyLXcFoHtbX {$眿\ 1~]]Ѱ3oݓ*ìc@cIp^&@󩅞};Vp=+Ǔɭrr>%h|-YKq4h'gM ÷aOnD0jc;#iQE {]=ڡ&TY~D%GrO_y]P JS4gdţ_81/TCzj,ع1OVUT7ݓBW[T1V 8FQ .X· NjF{bjŹk W%jiK ~l SJFʿhic5P-vC;d4X,F!xٍdz.&<߾>O]kjxʹEu+7^hwA~$m8~_6]uCFՄQM8|*"ҕ /)1􎙬t'_m 1;BnS?ѹl7򓘘W.1sȠ2޷Wx~ckeo?"D(jgރs#L1הRJĻ@3w{IG" ȡkZpۺrDfx4;DQ}dؐ#pc A;6,+{pxTK uߠCrBFD7bH$h4M`9W| i!;pLAf,GX$K}O0p(*1>TQ @0Y" P$@_Ͻ Ta$bu.; esĈz:Cx.GDfsXr#B KeXR{ =V Ɠa:~zCY.Fn¶8bXDl[@iԼi]COvfd=0]d agx>M ξgzl<@20j A8;NU^RomgsggO$cXuWi62e$^v&&Р_Au ljdEﻂ35rNfD0s\/ME^H_T\b(O߷ش6_DlzF/"PuU[N.ަlN :ܾ̒8$m^#y'qML7W3R+:2'_](ĉbxqDDMzfK} Q׿'ާz=$Aʾ-,+w [P:cQ@Ljer}ˍĥްp,xRY ÅFxs]~jͿьpvR?\/! Vrrg{Mj!M7O<#mtVcGoϨ0nsŨ Z,sɒ3C~8[.z8ԸYUu-'%o%!Mk*bF"̖7z _醾5olctlW1lyѴ_(4ڣQO=ḧ́GAv?B+z;imWIB*'Ɓ+Hex[ȽF'U=RۙiGܐ|W?lç,"dʹjE-!;a5ZK7x.dTPjtL5Hk*RzG8x|幵eђK(֪&^*KˣCȊi=InL9S(_"ƕm=$4C)c+~o$X)UO]'n_Eypw!vn˖.ڲmJTc[6Ww)(YŲD5s'~L0mjCfOϓIf!)Ϫn̾ѪE7&z*zb~Uؖ·]4iʴ׫@?~\rL6ҁ2Ȍ&ZG`et:&Ϯ[r^e:ueto* ߲TT-2KG]V3_.#~įg It@6c&S8*' =_M qhB'$ 2^9u n\{&LBO#rN&jr(+zrwcؚ@M"lT삭& 0α@lJM6.E|ϥh-.n2.B{|.hJ! l(caT9&ΤR_࠶]1~* l"|])`|ƂMX;A4Q}sg$4@,9@[m_A33ᅢ+c=k^E&3rG@iD[R`+ WMj+ꙋP"j-B4QCH։(xQ ;l%Hʏ\blYC  B PeA;\d=K1}^iQ)weTw/qrWpw Sߎ䰽Nd DT+'P@8&IGklxZƺH;6QD`Ӎ [𦍙ĖsΎC_Ɏ;2HhH1qbJ~łXR"{^ R:ZyI?;XKC0xDΡacp'&m&D „Ȍ& #{ŭC4OG:<6(\VO);sIMr, d\NM{cG!1 +TqֺwG+쪓_l ul~_Hp.LULJ:$:r\v*fFN^Ϋz;4MhL[)}^n,r(JG87(7];ᮃfskeq$I[T}΢.{UG{O4Z۱̓O奴BoSRs''7˿1Kz 15 [-׊uMhwU@>J>NOCgT:@Qw@d*'t(^6Ỹ{ܵ=) ;RpOYihj ~:P H:ڄo%Ld/)$ S ?aNvXbћu`%ViɊʖ_&T/tQYGdV%udLVr@GMW":!yX~UGǀ]-@zW&hc?h&NB6AwW5X&^̺rsxЦrdvTo^EcAD/;=8.?lmPh)~G{%6aɻô\(/CZyC:@..[YGT 2VްOx1?)Y 4H+>Ff >16Whh@.qd#E%6|~Nw2\9r5ϙczZmKuuYNC2`cS=4UVz寖 \─1#|s_d0eW;RY:˯/87GA@Z(k^d9@in̮ab%R dc4lZI=iGx#m%Q HQm=N"Խ(s$l-!M@n.6T m4!tRvӏ`S,3Kv=Tlmv[Eeg/I~MKNqMk%YzvKUrLlz^9fzw>+8t*AafnbĆ x/InkߥIVvqW?i_ƺV}>fQ-:eA-J9 6Ox{|Rky[wkLG_3!? P<BkIyKPt't^%[OӗJ=]=FX-tNbӳ%R$66D[q5c 鐒Nk/iÏ_Oޓ` Qp`iPg|K\H 9κHfD3УCBJvجqnrNL7mhb4]q(_o549 ]c0VׁeĎ/HK~7$\ i隄$8iOg.CǦk1J p 8AW?`(ZLXHM(y}3oXՔ~>|z8#y:zʳ-S@8F/=<8}@$@P5Ϛ7QKT OHNLBKAPe~SvEj^ bC<~pAKS_U8)c[ *}&~ D꽙WK/Q Z&YR } `8mEpyjLJ*U^ѷ}LTtG߄<Ht+:܋;^]!'C`816zJĪvF|-F46:q?cZ,ívUZoTPМlR+`]F{ʑ!MOMm5nGf-̥/t?6-U~P.Z݀ H@A;'We Ps}{m=U~PMlAI NՔ,c0 KݕWZ-5 $=֛Qi{ -UþzN Ws佃(Ji !"mSGTm6%y`@rDJ;J;[>!=@cM6 rقjXrFZ;J, eR0Ma$3YKdW넋X*OOM=y'W32pczR}!Pyd;/,.l;=FmےNܶI {ůqVm>: y 2>Ŗ*ʢed\wem g xZՠqh. wj$%= }4!=Qv8(/|QE0l=Ω{ibz}+LBmL袆zVꀸoecyN FCxU"ޥò+<ف;ͺ/FYnF\<̊cUu\["[XH<2b`JMf#yъ͔Jg[N !L_eۆzZm`,E21e yܥvOGh;HT gn)v <+2FdM\[^ u7/5~-fbE BbSAɵ7Wp9p'Gv@0I#YWox-B8d4I>zRv?GܩF |GTrrF@z`(};~sJ4gNLۖdKqWL}5>exkTCZ"(IgX54T7V# &RYIsgf#+gosL5n)vmޒ5ot'pp2zA?GxgSXJy M?&,;]__kHD>kH'lCIZ:z-ͿSJWWK=2 |]N G ͘ {N)pFMIbbWL3y@YspTЙMJ(1!n%RiL O:}%r ٍ67Apϕnۧ h -igS" <ڣ{~w':/Roϻ?`y|/ v'P"H[#eI p4Rxv՘5\2P8vj3)iKq0[;:TEzтJ5'&\,+oe2o'W{H)ȁ^MKwD!a6^@}0IWDhKNE@4AɥF X f1ѽETM?rM(%'r$U+{"56}eh7JpaY 8V@I!|hY {@>ێn rE$We*b׹?4TSD$T<9>4GFn]qA3,m@rυgLLF듇(#l ,U=;@Lw*xcA0D߾K4Ƚ /Jt< ݉H,i|sV*tdQh`a{ /K F98 rii}Dg̾i!kFjLtiQ勉"Cvw\] 㤚Ï*\:x+/ Zk4'-kݲ*1L=̵LMwO%U=rvwsZo86~od|??[JQR98&4: RRԹ?97\۱f;uݓs< lO[U??x4SR߉ 97\]XDa` C9ZJ sjx5:(vQA<ӵ 9Y90b\*\tτizLi@iu2..L&T=6FݠY}wlÎ2?\Wl/XќdU}6 )]%aӬ re`c#~ dMlFN!^ ڲR2~oε:gℒTT ^mXbpZ0H"į(V` vD~EDH?F%>ZPo85tyWSPvu)=7f{붾P{:2ɿVlaw" Q^" Yb½x9jb%csC#bvZ7r7U/Ѭ^fs5CȎU~D!_Spc(v(EH i] FSݴnY -*__eV׃dilr6AGӶa&0k$Ȕ^eV Ǡ[5r*t%Ӝk\%1+K@8/Mz847z|TpI̪k4ڪW}4C /sWζB5)=|%\פb^+`_X\y̫NH q?|$F^j Ϻ5 o}&H*?)= rwgȼP1oɞm'4r ^ 8]"1}X:1{_,&Z#`eܤ%5q'n=IۛE,eoG- ә%OoM߫A'/I4^x G! a ضu }{*Y,unn,$Wj=8[g x"oxݞjF ܢvǝءp* '`l=N/Oli0S=Ķ(3>#&oRCq9 27SZOz4 D0LW!Ԯ쎔i5e{)p) ^(#=y:Dt.XąSm #A.IVe7̆'JC\!gkvCTlˏ~JV9x^$ Kf usVܿ)jvb[zr,g׵9"WOݾ΃Qr! {a(f nRTr1BBM.>G_I^>А1::tbe_.cxCD*Ox,55S,AccLI6퇏׎P.Q  4o{`gn{yhӟ͋0*;qު)0Cl X Q Xt/)/d2>)kN)YDO.h4nPH[VISUXQ,i_i Q)+1c‹Z?:ԏIm|8**g7釃ku{I}XĺcL#{kg#< he?lRvSu{ԬoQ~BvT$,/s=S3aaKZ^ieiEPU}rbHs . W058xJBQly}.bn:F8In:'2A9\` D*%9b=Ky"& {n-Է0]gP!.H\8jXDS?Ɨ2+t#S )}[GIVdsNp^iؼ-2@I>l"$^i]`â:d>JXC(1'e#J75`\;*Sv>!d5…p4L'9~fi* {ܽ@S 4J<6HXdgђɆ;>! ^zGnrqY(EUY06."M@MOhf;׻#YkqFf=}gxQ`(1ӣ~j.C {PK %pN3"M5sDdW]tȰ#?)ËtRD4.o/vA޼ mM~AP|bO}~5+6I/eͶM!U8#O񵁜̠>F\  cCkZٕXx"$DobPF筟ґCSX0 {ktd0.MViP]{B Mf7O!#"uzG XS &d]d0O͈F6X*J#Td!v=;@,nCu5obUT n{ 3̓#hA[2'Fm"E%:ށ!w$F,og٨#<ӼǰrF4^ؓМ) f`&+qE|i."&>ׄv4ӀLbDRv:Zvm7 bͺr̨;L;8kgʹ;{2cƱOjӬ\ko X[=|!ظgG8nh=+GI|hQx͊2/פO~!t `g@:JPX̄ G2ȥ%(Һ&rIM-8MW6i!J|8NlS1p;[`Q*p(NN/U\R.}kΟ]Qjci3m׫H3p.w o%)3Sǻ 9^. Ѯ3=Ômo0U ?@2!cobYc=S-`d!j*9\mZư'yx&{` vqno~͜xf?'*Rc,m-_lD,iȍimf|jv)dps!d}ߣXQV͌Rx>'tޅv+9KB=`[#ctE~[ѭD"okԆn%lW SjAH +Aa:}As3rU=OȾDEi1E 196Z$hW FsLhM<ұ/(VA@0򐋿!~Ђ.;YwK]@:OL3- XǕ LU'_}߾GܳS<#c >&V Lʆ bq'<vB)DKaB,g*o@8nQR#I9ǓI S*N·K< t7=knȎaPj0L΋F~ci9ݯJ̻ؿu(N#' R% ԺKKX2{Xk4h'W%)o-Q"jy2y)BiGD5 g;:)DJQf0k( N's{3u #GP4:nb߰I .#z+0̦f;2S>ωkWhxvFj򭐈kdefb/,?SPJz͞yОtp4cL,AVɈiNZZ\_Js[DtZ.>LPRpUgf+Z#&-׺E_w".!ʴ'z_?SZfI(aaKxmVR\~=u]ĤyciӚ SLlufJVHiOiǟ&Q X ހRA `['\HE$(Q@xGt9 l]aN6{xO2QN/N,B`ӵQ;tUʽ&۲QC4SOǨ|j\(þW,i0ZqOFGC^{l!+)!q,:r}?}m> $ő,fffPw/ٵ9[>.,21X/3G!e=ss= ]diQ }tz=34[JQD.[gs4DQU8y+Cwb"wOwyD/u/E}.rP`6%H!ͷj1ugajˬiF^"v 渟"P;A!./v TyGs |j|~Mk`ۖxė]ooPĐNߋ=Ź|ga؅$e_V(p 1b{-Ey]aANTP|lSCGd{})\-^?7?{hAJu[3aNδMf2Rw&Z#; l)ceYQKi+;Adn?:VX[~OJbZ2jQԈQhS(uq lz;n^p z~E\ъ u''➹`ؚZ? +g3̷E8_k`AO!9/o\[uG8oӘ[Dg<û5$p57:3:X /S;Džkڤ0w]!EQ82Xػp<}-k`iB~L1fgO(JGA,b%Z.or@AW#ʢFChqo~bb] 1xzG7T>ؽK uHrġAɶgmGӳeķ̞, 0Lyn~"- 5Y~ZW+"oHrxO-T{ٶ1.\Fn24wjf$k:E5c;'Oh̡g`FTpmGufV^I@6n-f抦K.yKG\앂;S>їKq8P6MN*dVڶ5 ݬ:s&0}|:cӲl"w9E C ``p}ٮ:ɖR:]gԁ+!P)Sxe(GE@ 9miyℱ)Js=$l8vۺA8 E8Roj)H“ŝ[핷! o. Halo_wG:upի=LTp95W9;0w =XG?lۄV.9z:޵_-c<=t)|UP 3}m :γ~Zl *ԃe' Xft>AYAl93VkJ:ww1o6Fطk#"Z_@[~鎪*D,`;Cy奮>pP7O0'#"Z>6Y ҟ4% :%Sܤ+~ZH|'[꫆{ t. 1,򽿲ߏ ּķaI5D:rv#R#:jVۧzYgE$M\9 ]ds$֦=\)o8ᇚ{}x=>~x0[oZAU'zSW{ nsPP=Cc]ޱa E|:؂%*}"&((Pz~?=!|^&B[fnIuGUAt;Q*{`w#e)]( 㒽a $I{>|[.C;<X tE3`^!\x+d}o -&a\֮U"jY?A!s"-}.b0^'z$1CP/&OuhY/"|0][Z .敇Ѣq3,g!aLwt1faZ,vlJ5G|s?a:aRMJMyurkc41B}#<~Ɔ k.1`t!=?us+#o bD^*L'~ o;~VSHu=^mɂ"<[r L-7dE|rTV*(vP w+d79OJ$.O*mE70n洴29q]Cڦ+_ٍ SحV,9Y ]ҷޓcdɪC*£ *³B&5 $orH-2(^z^cʱ|xS/4OwX9NRڟp߀퍿!XsssFr p)ʋq35ucpnȊr!!1TétM,Emcn Nȿ?//QR yUu̺fbZ҃OXпc8CS-9Ї(v.b҆BLG0a ؞^ɧBy4oxmNPM}ǟ>C.(FMn2\UZz |y-:J^v>)<U$r|ވ\p1Wԕ;(P؈@:r;U㬝_|ٽztZùux2y %QyܴQzwZi l[E7MMkE& ؃܃k -' wsQԕOXFkڥEٝ 4e+m@gC)cTIB ~T~iI4.E\ ׮-92 1~E >9(7jC4w r&Ȑ%82+(룬p3Ga OoMqP\LM 7T\si?Mhj Rku-[(~GÍN\Fgsg d=s'xTiڙawp >?` 8_ө"N1Ǡ߈2w0:D!Z hnA4wK&QdS[ZXIGWǥNe]e:K1DKsS8}4O.J_ӉMRUO_ $BeV:&4 *WAlwbjpkX-2IeV@ӧ?{d36lQ)iSW8*Tc7ػwMJoщ3/LT)$9v_mW4X`DV? [Zf J!_4<ʠN\3$P_6@/Þa2|J-Zߣ`l*FY7xWZ 4 ,P݀Ƨe;ˉzXӃ{5ڵ@Ѷa#K \G$s4빖9a^!fg#AӬLbF˂^&UG.7.3V'Ƃ喪=?Bu]B}%t4O*[F`n!"t& nmGc:bX3b6+$*V! IUʭjdͲۼo)3IgId@!h-Ŝ;ԫ՟#Z_dgkHxvʃKfoWXƱ} K#bp:gHxRueJAo MtuXT[DA<%q~2M`0wk1؜]RT|{Թf8}`EZRif .Cwm^:Ma& uRKT9[(,Ez={` bNGISkSz^q.0{ y 9R3YUX2ze9ӂIyR; I0+Jß^!i*vcQG#EƭS'''KY7a~ jn{Gw˃0ٶU9hiCXWie { *|>=^a>xݰ_.w3w.VxXò%ƛ"^#}YIXK''z=۫0pmgfdZT( ;XYy$fPOi*hM g]zrJ8/Ĥ.rcV``wءM҃FO! ֹ͞nn2v.#1M,+#+$ бD^A"fKY1wdc_4ݠ ʅFJhjXPrKmj% zx2[CW}FnP{q+Fbi)LI~-./X+v/֣3h#'t8t!cϑE. qYR(:spՐʑ_ҧATuaAuHNw'dyΤ9`WoUSRX]9\6{g^Am Yz.jR穀/Zc D2H$ĵ'}V\2l='_3 lo k_"\GF"R_VFFޗq x0'泗:];Ӱ~!G]?8h4E #󙉪 < xGnhr'8+9喒'?j i1t9'wVMVW@"bVuW- jxPO|crZ lhQc^aMȀ\碧Gpށ0@ҬMxD}Zldw8"2~KGΌQܩez 7xQG<ӆ)S2~~|o󔒂\?V?A*Ajb͗AP.XREo~a\pD]7|CnCꏥ200KVkZ:]y<ր::ߚ ,)Q?5{*ʯ4s>Emc冒 U7a?i|{96fkQOTQ=~~H) }VF:0wHȦ \+KlOCmܲ {SP3 pX<'}Gt 3{5,|DQY_':5)nIبĚ|ΧU:: Y7suHԓ"|=aV<A:ht]OyO8Qƌn}vyKw)!W~ ؂DԾ}JsC'W]ES1gw7dć%$XkM{Vv;*L6S ^ļ"R@@=)5atw ,M9)8rZuiq x3F"LeE*;̘)y(&0lĺ'B`"uĊݻ;=^qeTk8 U?.xîGA {ct1s"C >f}C?J~IxF;f$ɭ-9/DHPF9>(ѥS`8AG@o4:GqP,NlEJy\Ïޛj%z&64 ǣgO &UBXԚ]b1~|ـ[ &0C֤ǠRIzlBʰTHߨ+a9ivt݇(d|$g1X8:5W_ VހHnkT?OB8OL ' ,}bD ߁wy㕚lSlO'/̺rd;MѰ';=?qڮ܂'d_ 8E44/ݣ2Mp2 =J\U}KƧ}*=Tƶ.AޯWF6b?ָ!:F0\lSpn9bq3+z.w@%;UN )꠲{{BCPa#`AO=`F+!X\Npn7 Ny]%S+L N[u'Sp`9p< \>sC/x^5xd// !Fuk=Uf5YZeq.{`^(ArS-;()X 5ƒ1@<9AR_Ds/"7x=VP"d|AF/Rxi~Y7*KMpE3`0jD>t*q7U6#Ec&tBYXy>mJ*[?`Id㚳o>LђAw0%T~Ko[I$n`Cr[ ^r(z՝[p䍾Ѵz'xyL6qhyZæC"y}]ȦK7ij+䌸U@7ZVmKAySXڈV6`^[ .Gs֢+aA0D2{0l6 mI1>#h92pu))YV-}XQcթSv6?q+8=7gKB<ŸLJ\+zKx`j紺 ˒&+q_YQ g x3^n;(L'܋prxc2I^ SqL;/i\Uضc6SIS('뻲{C ʍ ˠ|gؔ۩p CңM> XиjVVR4q$e^]I7ĐFLhJ^jƑyٴHArW{𑱳j{}@B1ڈ4@[-55'Jx SBvx"&B)#\dUN-w| :oQJ" ]?f[.QZLȑvX)#KbM-/d'uqUR"F9W i )Ot#lM9qWVxMuP)]cƁNa#Hl>Wx},~] G/Zmf2">d6L1'AyBW+8Q,v: 9G#s o-51N&b9~?@k G7aQd[ g>b80R4Y >n,Ɲs1<(ϼKl}?v0(|qMDŽYU7z$. P b۾ ([g5`K{V\nt CyEaGĻ{vTL7Q<8|5 Tk )oAïNJ Rԍ(z[F)(zO"^*+3%@Pgz87+zLMVJ4jh]bv?i*+tt{h cNCn*A޼#ZB[^2f0թ9Α u֙D c pEtkr4qqSK(3% ;9B[<= j2W)1 S%[KưYP$䶧+!ۄlIF%|Vּn_z99GD{(!`ƂME,~P_| ~BFw{`y'G!7>E=1=NzQч2o6kӺO rv!RAӁBHw>_ۥ/2 P2Ӽq+~xK} c):Tr{LVIRo?r޸OY rW[d -o1h*@ˡ=kuƣSp ̊1j(8KGyp,Va61[s5|ÝT AXo"呝D:o5x8_bZ7 8UyH 2L+I<݁-jԥ@K(*]ՌH6BczE2lCG `dTI_bYd2ON:.wO sUh $Avx X%R#i{K=s9p;P,ohOi(B&I{^@,m[7gOhcC d ro՟à͹6Yw1u$`:MQZ#o#Kp ]O7zR`2k&.Ao@*fkPRVYvt{>a^KLm$ ɭ 4K9|fwޟMyLX؝ 56ЋUM@m^,,`3ʣf( pgϦP;\"ÉvVޯƩ5ƭ} _ S;٘A[pDX^ZT3/epVͱ^Ut&~QAY(2)`[Cq2`ϻ =aI]MIsbx9A4 T KtGKHvʕ4pPy^c17>'h$!4FXUH&xSS H%}>M>k_%Ƒ7լ۵CϔL^*/LE]L-&Mm1 \4^"ft0VVXBK]Wn1d c+㽩Cm^١BΤc=35Rdyozg(e@e8O,0h3ǐrM<}\BIUyB%f}yOӴȐ1TdU״^BqW Ol$VST˪B)Fğnڟ9D uyVw98xzR'zس99qvf&:@"Unppe[p۰.6JmVvLpsj8k9@_M9Z0=FSY7HMn2h3Gх\^ܵpBm1 Lz"~0 KTTp[zo WJW(@@.n/U62+)UZ:i?nR=lu(CH.;6dZ2_`]? 8#~C^Z66:zRRxxO}932H^\r.{vn*< J':?䞠n[Ď Ԗe|g} 0H<%ze{ @D?t':Tpᛵ ^*0 g:EKn>f:[1X؈`fN9d3|L eVM{ai?+9^h`/ jz?!4u]Pwn(FOY1r{rrÓfQ),,lNfRwWz6p_.4u,xybhO(COi [=8"`Šibc&U )c5<܅J`;"a~4#Ό p̳!N7-SHjэ3|XY0dm*VCthNeFFplUH1d7Yk}Cmfuٮ_JN"Ϫ 9lm0)JG(Bs;bd$/ٯ@bgtau$KJn̏O&!It;8LBOf~ñGzF}UyAzuH,$i A{`t9v0g_b}:0y#U S Y9O0i+Ny /ίHK6+-c'G(MćGxm $5[H A૥\D'){̆A@(&H1mEmΏ.ܯ"$;6ӔAqdz^o,=J eh2R@jGZ n Q[.O,fjKR . .%wHf][P>4q ]yHˤS;p/n|)#ԌV?@i2+i܀lZQ5V;KlnhqA(4juA#G! [^EPxM(t?P27XE)e:UmvoQ[1/(/վi+"展=97tY/g 2N|*NK,Tծ4|ʧ.&7oޛk fbaJ«MNE$d3cl} GTvX+*;NsŐ_|0<岄^q >d7]Q8K-074'/w/`@ ?;դ"JrAQiZyu"kSQ9y향ImZ0r(0ߥm.A\k0gP}gQŵ O5\!輭D?fQT ɿz""f DGvyx E*+o $ 2yٚ,G:-S\G=_Yf& n I%~qNƒXl,Jzuo'G*3;f}WȹjFɢK)B6Y Nը JrL9p]a_GG9[[~T'3e+it";j!"._{ky9${+rxyf6FXA*S/OmT2K;WH3X {|{ORAh7Av[E~.֨7~6X~IVZe|$fp|lq#4e3-:R8,n ['Z7ZL @FscFFcIJk; OmukG)g[/҆d&9b%BczR o5I1\ ř*E;7`b ba:ek_8-l8Rʛ}`:7Lg|1RQY,I82 KSmos[kщ5*<(1 )?Zֿ)yT<бHʶI Jɓr 8We3#Чw1kBm b,g|tQw!˽* N)9_AmPC#idf&AS1\$*)0f@YMRiB(hn*h|u#NP|ek_a̅{tųTU~Cz,lYЏͫٺ#Q{|OqE7xqF>#:XOf\ l)li8 tK #^U4HǤ,ÒpyԌ҄WC$uIX_.OhT.ۑKw>sz3+ ASal5@w`lZB O]E-!,SU1Se xYq'/zH?$xwNGu_CئӁs[^} BTe{̻Mf8!|k( q98׆N [T~+ଽz䷙.G ݓFLƓ%xw7aÔ6oMSz Y@͝ ROHte*J%kX+|s/m+ea4=x%9@,᧝u˺x,FJw_Rx ewJN]&o YP=hɄP K`6k?J@(!Cb 4ْjnj;NK}IHi#} ?.؃Jzeb ~1X_i3i5މȢ6TvNn2VPᓧ{3!LY(V0T}pIV 5++#;vI@Idk!mdqgC@`ƔdPY"(ɉ?K퉣!Ʌ4ť$spf6F} _{2w;QGZɓmB|enk TKT~ix&fڹG:os8 <xXV '<>mkA(CqSW%v?2ؤ\cw'-lJ-2ٶf;XɼFgm1Oc>P+sŒara(Jv`W&dӭj[n!k~"'Yڏ\ .I-:=ȶPpDx3[І5?Xvd^tg]< eޛ>Uf5RL'dR9pg'=)2 @)ӱCrmHpr T V?j R;34T}0g~mGeO ~ZN=T.SC1: 1>;X6~4Jg &&.. ]vJ L@C}81VXcd>{ ښs8!FEݤt&9_y薑QsO<$U@X< R/@Ɣ,pNE6=өr).bD cK09 a(IVB-p51/pόY?=4&h˔)<+f.Xxhd\3XB)>4nz~nDn2+烿=mIՑj>1ډ6͗;H$f -&ޝ@a֑1{I*eXOH*jrTEdGY.ƾE:~4Tv^*N^5yNGj~{vTQoB2i#M݌9L[gHwTi\LnHKz>Z2p-G\W͜Vn(RWXI1ss`;Y0kx~Gf4AD;kHͅy LKn0&Fp%$8,WvKaĊi$~[HLc_ЋaŽX8ɂ%JQA䇣0>G÷W5!v\j5۟jI`ic/q [tr̡=Wg +E9:/wz~jդSin84c [ߠH-u{HH 4T PF0(rY%W:Xt┺LCbْA+^[O Wp>t$qVUHPWحPU>;%|60'6eRx׺$DK[ <\y fF~.F]dW5aoAS.fY, \RwhJ:X9G6_H@ǧX#ቒ/29U{G]E#% `x[H?{:&A[A gpI5I.$hZټ&ҽietIzm> _ nywwn]NH)F >(VTV ۖXgOS38@"f`GȬn.HEu6Bat 2TXfsz !:`,$xӐ‹ UV+<76w~O\%/[ni.g/qJCbC koSWM@{WFv*ST;:6)nÒyn; kXT|ϻDTյ,&r W ̃)De/(2>Ѧ5O${ܒ"/7 GJ'L- 3Bj:"IJxdK#9U\m F%G8~Zgs(yx>Kp+z9 ie ]xm ۺN1PH/A\DxKf-f11eϿײ.T'=?_̙A-w Hn¥[iV+iDdUb(ĨeQݏºFXDF \nGD7Jbx1qT䵫tǧY¼k*Yk okl@ʑd4Nr8lzq=}s@.JLdؚgwo[U5o-Pt?=9 UwFؾ_h; 7 SpDWm͋`)cP뇳 t Q:d0qC1Pk.veK!ed[.yixϖc<~po\3<.60X %cKd^7!C&hŀd4jbq}B }#-?ciNqGVUsDo-G9 ;OٓDzXW[Jټ@.SLJ-d ނN 7ZzY,&uD+3 33ATHBI?5Ii`^`Sj2R4VhƮҀ\Rϲ?cs>wCʦCݍv+a렾_@"KsA: ID.-<G١׀n{|ˬkJIQ05J9]cܛ;a#;H}MH&"jxuQ > G$]`I.qjzdu(~8`zs RXƺhmC\wLyhPIe1ʳ6˓3Z3q8|?0D!ehubΟ WhsvM#0 W }K5<8sexD><\W:etў %ZXwk`8#mmQm,I2!C}]$3R/:-hzYPFxq+}CsԄ^kZ0cױ跫-*I^ﮦ/΢/"H<ʺ2ݼ0gx"țFM.N̘Ʉ^P]pJco08}$Ca8wb"Iwɑ< 1ڑRk]T, jPŭJ̪+WS6;סmU2uV>K垟՞j}\ˏW&jH)'`b-Ƞ[#m˄>O1v=l KBP4Sp.5|iVTC@bRm01Os$nmHR ʒ30/`mE ԃcI&71pKt[r\ߔd x/[Fyf١+"d A7ʑAT;ɞ%3$4>\?{4osŀ΋sh7g,DP詬'U2 26ـ@G,fFH׬+0'Eݯ&<՟XXJ,\ dʾϥ}aƷw-.P_.@\)Qay oUPL.'#Ef3 MV|>!Zr D?˶DVcMa& 8:f5=*V H"yxX2YD>yGoFҐ,a?T|^FS|f9}(jAg;nMq9aIЍj\?JHW4t#l۝PA  oGYrj#[)IȮzTƀ.""?5p1ńIǍ0A;n+W ƻA UN#x>3XhI/ӕQsjJFjO`Z֠h av0P{7inlq*!7yCOMax{rĬŨ$Pd Ɯ%bV.s}喒C3.V}4bjڈi[2:=0E'W%?yW}zJ6H)2{O✍( trnm"F*qOٚ;I*5imEuK~d"`K\{ HKTͣis ?|X:r5M8Z`frh}wDlbjN讯tr#@HXu KB¤܀ - !#CjmX9?WS'\\d\89oU?W!HcۅqVng](E, ױ j$| g(edDIRA!9FRmQ$Ty |hê qpx~>dzH Dw⠥6ljgܖDleJ-_zv|Z] b!.&R3Nd hsi}Lg+f/]$e#I#[ i=d8fLm(q2_RV2Y4OY\*v_NFit$NޥEv'e۱mz;%P^*3;/@{}SrPop]Er4&ԕRr>ދr 6Y> AABƧǂ!ƮkAda/t8x?rRe'Q‚,YtT\ uʁyάpk1)h`Y,j:*|1H$oBmҧ-PܬBU 5b X;}v h6VLW۸3^D?,{N,@) {n[0YNif|[&Y_EcH a#F  VyNjhgv>Bi?l[ dHػlE#AArkJ5bC*"ZVlbh[84sxwzm/wn}ZN77 =ihtvphP 3M[lfXBf=/"tAE.AQ|1{e#?*]ۚ@WƌxMP"X_t&Jtt$aG]WC:22.ܜcUe2=rȗ ^NUQg=.)/~\ցھ5z{MLvfW$t$2֢XoMI"E})\Z FB ^O;$j?楯JYsMܷ{5wrܤC028(pq yJ~RnCLb}TDwO[#v҈~gȷb(DbGu-M΅x||/u-T5D`aCH<3%e]ڥ]+fwY\M7hLf@XVIz7IѓŸgAts92;S aySz16Uȑx7;8j{a٣n~9IAa۪8c6y%uYL4H66Q+~@_gM;d;#q0M߫МDD$U.F3{OrJK_::W0COo`UZ 2#! GñoR]&@d VeS!]Ov&gP;zhfMMQ.^+ms'ۈm]ܷ++j53߫kF !8^v<T$tǭeagV6wD'6%K29ZqY#%f~$*iNT }C,V刕z2SfǻlY@ɕ>ONynGi _O0>it_y;h( ,P1n@Hdb޳նh9 ʀso)B#]^;;$xF(fgÊR#˽{S$NNͳA[zgf57>,o₢%@#gH/˜_tdF(i/o"EJ@̧D- S}3*؜w`٩i L Bԁyeg]eO |'t`ۜ~*tkiGX΋JveAD0'>)T,U@Ϋ9BPՈ  z^CA3_QƣH--KHHPc&a .M O+C+rzX nPX[J|(1uqHcCe.l췘ey4|"Y٣1=2ab8 ʡhb12q -Kz SӠրZJ`e6lt/Q5(XjSp1-ۼ.CEf%d5m}zP4G-1i.~iepqJE *oiQ{'窈:]P7U-5ˑ=Q&}1>f [Ep|.vgS urZ_"0ƍͣe~ݛwQt ^^:VfqݟOB8]E=IYm570",%f|in&8g0pV5! tNLZ(d̟v}㲡;u)lVa%Б-TI?ٟ]iz JDҥfj43,c Oq:~lKkLԟ,9 "CPt,;u1;59655Ztl?4TΟer!~,nGxyI)ki )tzGRVql>m7 DsT%08F53J5r2Bu_.k 7[)v1}?>o5.2`:+{td5[<6uHxk*;bk> ,igA1Zu؃,,|KD rڬDx{>k()eOq٭Pg'^q,Q3$k*_(p,rauDҕ x`]1VŒGN7T7*ڻ:@ZBRCUd (biޔ@??\.DRSmvE:PN/|Y}oSt8jLlff#:>Iwn  _7#F ?|{֨!yӃZVk>-7U.~6^0 rEw/l%uOf=ZM -l1 1'-Yf*b .z-J6Da!DJW@r$Ldyb% &s2.)\a)Qh;yP 6ɳgg[]z^^<7\ _ yfSy63598Ņj׆9=>A;n0B)\CƠyZ\E sPcݺW2wRoUj+4c%ci]#X(7O}IƔn9nJN)̔DG3ӋCMW@ȄV=vM~!>c)b=vST4e-6dUP/c?ǖu,Xz!?P?BI4(?4^CC%cκWUؿ2X5 nb5F\pr[5 +$+])DFl䝾T=],t=k)M JP9@$ilVsu``kw!꟨~~Z[V=8M@ #߱ 5)kVoo23t>O+ԈvDbmej_BrE ȥ~PGz8SKeR#c)pr_M8I`L `w lA%I1Vr ?s)(/`ܑ[?a׸Fęc,{:b~q/T,ͼ4ўc!=qU|6L: BUUqZ&z| )DlI7{]Q8臾 :W2E_Ob\Y*ɚn%7* }`øI%AP SJ8[< O@]? c˔tZxa Ig9lf[ 2P Z1ZL"m6TcTLJAP%EЇv 9H qE|ha<$'΃G²CKېvSQ^UNA5d{ Z곢߫cCdKUdݣifX˦G~zzᏍ9nMA%L'%L;,k}. '>nx='?;Wx#>Wcj; H>C7ݜޅW}@HXs} WV (poyw0CB݅Q bW8z,L<6lPRKrU IJgZXOM&6:! Z.ړUYk^JwJD-fE&q(^NvϘosRQP^Ti|,0Mlҭz5ާv5EF<\wt.θpu$PCcHuJb&etv\e`>ADjl <֑]5Ndѵ2uޟTՔ@k{@"}9A98#P8"εa5ly+aY&gG 3;4ACHT['ߴ!ꦐ$'Q^k JWXɹ3)smCV~x_kENo2.RϩjG1Thdk&24pӝc#Q?# yG@К&mdWBjHYIn~oe #=a[^v WaELL6(ar^vΩriahTNuTj954 >Ei;TVu2sRX₯0?<',!G3_> 1&/yI"*l;ےyj.fV ~.+|\w5_1;P(!;e~?{\Z>l~{tf\/I N^03W<59  AN4y&zMݧz{Ϝ,XSxf& iP!J :OLƏ(?g;@22엲٦7$q#Ri~(M\BI58ܤ]\@`8v_}4~&i+jjFL5#wG؎CV3Z000ɶ:w.%*M ٙ${ QUv\v 3DM؆Kw;3O Q6/CAM׽O^ck4ZA;6{vȬѺYyeI)p#Xւޠ:A m !CEd PGv%a"ъE)L6Mf*܀ ;T@P 4z>W\<4m\ZyLUd AxX-L{C 2aՎ`&Pqd4L5P82lVbpͦqx3= 6j'?wJbj n#&$ۄ2Yvjp\tD /Ʋw%78 wqQ.G! '2;˸TE(hju͚q?Ye )}_<-*QKm0:>76?QR ` ;byFa DWY4ykn~N 1{0+\r[O\$[iᨈ\q4%5{Jh8$o xv*{$ٚ~="u@NP.=Lpoc'qlu6Z[OVޙdl{"v$G6-OE! |B_ZsM̗ߖ$\Dx;)ؠLxX'uiϮ#Cbvΐgm ]do06ߍE-Vf L=ȺG,Jbh串°!̱P1 EaYS | )>Q>21$YUV#-+ 6kaw^pr4f0 lеYj0=I2T?]:~LbJ&ڝ֖!jd}0&Nlh17r LU+r"$oTȰ- 팂 ƷU]8rf&:fjX#mhYWq&%Zf큛ʍ% ]ig *ؖh=/7|_) S 5ATXHΦb^FOO|2VgD-^XYUAFw,QZmwpww"(V5[~&P+hol% ='9C 73)QaAB_p]67'%AʈiWS8i )KHNZ&= ȘXQ7bmOJ&[N*RCqt e(W}uy&CF°yt,v7},7\V](jPKR&0[[].I,, 6MZP>&!ǣjUEi[ %ڋe [wg8jfFoqu`xjbN'Ӽ !0esnN_7L0kb#As!B_mݥTkHO\u΃Q6ʫì$v}IIH!r*vS2X ?F)q*%!18Y]GoyI.*~k]q|Q6"2D:,Oȷt efC/9^D2 pF)eo-Έ˃]+t#Rv(g)@4)x7j}g\pHow88RZ^8 q͍tȓr8v.A[[>5ŔƕY>  >JHgnOF=֠@ W*HPHl;B &Ӽ$l[QI^yH<r UAu,.3hڃ쇐!?@gI2znDא]tgv`+WdzJ,~C%1J(F~)&oF; ƧTuWb/{ ŻPEhAf)꿗 谙yl*{gE9Al@ vXq4#_@ bsL d&0K)r_**+H}Cw=%0,W u(d렎tth1[*d_З zW;g  dC%)lךk{K'@_X\~~퓧 ]uHxyRW!sKBzX CY=Zș4ήh@gr52]ҥ))_>B0jE" r;Ż&_UUJϹX}ɫ3~0ohnP\̠zdDԙykqx9JϚCLk؁p+maY?Y1 i/rDѽm#t` uHlB 89<n6&v1N܅}AKAղ"&TV~(Ը;R 3ĐIoC"Dt)zkPU~omCI (sU?C18">C `o~}o&A;]^ލ2<[pZ)렝B1f&g#}b 'Hq1hH^jUT"PG*5>!N"fM3~@(9(AԳhː&o,״l$#U/o7! WM25B A:-\~ ="g Myeٍ*?>/,t(-cjjVu0>e.C72<]O|-77? s,/s=hͬ,ɥ, &(! pFB>t gFfXrPWIn 5jv҇kA9Tr@[ 9/B Kp}Rꍆ"ca_)?=nd?TĘ{$N ݧa|Ckِw~H1o9A,lPA);>NMmgS#rͦfĞw^α,dߪ Ka@Ȅ tLQMf;P mgPǢcX#kZ٥+/˾Z|'(jCAmpRX1GZeʣ4E,uqJCRbTwLr@AI 0[0"$yQջ̚)PTp)'F{;AE5D  5[BXӋ5߮aP;f@iRbG.VQrƻv,gx^Z rL3 gG.}#zpjy0$w[2I%E:'.FFK8/R񗵸t^%zPToJcGb  Ur"c&Eɓ g*?u ]c۰TinՐ?ڕçKԝ=^@3ҕZbmcU=zCߌDqh Y~ \Ti0pٌh/L II^56L\at+D-?=&7Y]k )QQ|@=`ֱjc9՜ {M=J-y=ϿL\v4?fxʋ 0w:9/ (eZ$xapuǍ]Ku*OM|THVc2 쮸pBedCJ"#w߱{|bɝ {Ɂ\?H.\(~V/@> Jt-BGsi,4:!!s9! r@3<@c.lCxcż+ 1n6 Ee&&"_=hT(C'ֹNhE 9luhأ6rv1Õb\<.j%D5?4E G噤xKkdzĜ4E51B=_TFzoMAOBE@uKD 4♅QC'$5ym_0LM jalD<7j([("L6L=5=7\+259;>`bal qoI! we-}@g!~}y$9j si3 ĭT:[W-߹ӈh$eTC˴y_i$ r B#AY-8Z" Dxb1Sp9_X4z.Z 6ĪhE`ok٦G$znՁT7~e} J^Dܢx!h>D%+VpL2 mhf;j_ IzxF-l CQb-?fT;HyNqPY])^&wXC1MX ݷ.vMif:4.Mڼ{Y}#fqŇ2˯^e\NXBwoMY_;}[9Lsy:Di6H.nh(l!b'x zX˼hspM] $!p/5yޥ#s4M] vAH Kr,?GAL6odzUdļc:'|ПX:hl&+l+N eg&XhRB7VJs[{q_n}e Ղ8Wx<*PonsjūBjzһئ vMK$BJ>"DT?POX; .O< `.& S^ȡ٪f&矜s 颀kysMs}\O2 }noYwX4s YZtDehOyvkD˿E\d癔w7A=4b!*+kvv+5CPn11 :gѥ~]Б TXAi9qG1a_94Hdnz,++&͌wINeq5d^ݠ <0,FT}xa@F-v2-tg/0N/;f{hSkpYߙ6})[_@W!yttv> >^] aH{D~qt7Y{c֭yyAs[0#}8sigv|}W_鹑$\1N&r54ΖPbͮ m(dʱڙ%HkT^zН/ZVgs'?UqTUnG+$HEf>"X8Q|6}fKMhO'I?( w 7U{ݢ ] .2S|F<ua2v 9t^P@Wk-5ŝMO|R]&9V^Bzq*ފZD`R&*kR+K؆Cq2Kɫy 1{1 Hi?Wdž 9}eJd=FD:lL¾_@K~Ɛ[F·GԳ&w} A'"/Tj/}p<.E^˼U1Oͺ=d _ɓ^Zo-rPQM~!Tl1mdSam:of~5S|y5_EDUQ} ucb3ZɒUMPF?Y,o{4=%F ߘEE1O#Deۃx%׷DqDwa ;Ԉ˽o<}׀ҒDGh?v "]%L$;u8ZaH {$vhcĮ/.[hдֽX@ZrEɏ9ijWGv$OΩd{h2gi0vrzBd!b%]ns}\Hk8x7@l2g[]&A쳓uJAː^ sj ș5qd'tB՝E]v*"i[+"1ʨqynϺ[C84(72y$*ѧIRyHV·5"oiF$0pKiW=.5J;HGƅrʂnl$ZZxk߸\ wok;K٠e[C3iefya~*)a*6A tS{pf 8>32\#۞hl@CM?lk5a{n NEa1QZlyt z̼4DqAH38/a}6Ll,QoRbt%7M7+`!J7~ ޜ6CTy-9&ilsYM&ovtpxZؖ'ΰ[%_A>)4N\F {&s0x0h4b#&bu d'*a<@>BfB*`;,^ۼhЊ]qFMP8d#ڟcM*-?8t%Af0Zw[.Dip5.Ғ"㥦YTѝ ]>`Wd4@F}3L)2ұW62e$_3{@C/gf񅛌bXh{+%Sf8m8a%.[fz/n/$]}|꽝=A"j"ehҡ9QR9sB(vld/θbo%+#*.Cc:jJ4p.roC#橊-oQ@tbє)&~`j/M!*N>#ؒt5Cn)~>;5'!.Hm7# /u5f.OGqчUAV硂(+aeち|„){@%GJ垔N 'AX_= 2ϰZ a"HhgAuPIQ}B!GrV1Pz*bU*ڱ G!tu5yN{.lWo&PJ萞wGuZ>ޛ,1i;C>B2qK㱱fO`3Вs`5Rk2S~$>c EcjV"Z\ӧ`=i:{؟{)?RG5H(ɺgõ+Wp]b8U-3 Et'Nlj:د47D"R4h|SEd\g`dSzIInG֒Xo!N lՉ ߌ7̡WM8A?G~ԛ) |zqMեVP#3 3[fX0h˱nnA)O-̇"셳w(|4hqx71fYz@ J ٫ 4lR2"+05VYr6k},eӥ' G?KIal9$\WE?!M`m;˸:;!).֗'yZm2\Yx$Aۂ;: ]˺&'t짟X_gb5`7Qyo5TDg ë`~+bʟ< DC|q"MRt V+cjrUƨqXg`)یfF'h2Bs9] h[ \:0pv*׷1ey2d6%ׅfNds>h #O7c!>K*w|GMuͪdPBD:@e(-%̎eTqyǣ:2 '?kU4L3]۱λs.?@6C!MVMaCW {r->-D.떖Ha:coY<f(*/^`Ρoc7w%` 뼈6la>-)\@ݮ&u²Ӡk>mRIn "Ne+F%U$eU%j?}Ɗ=ga׍.qjA5)$ҮDX7GΥ V9ۡa;i]斐n:xT k61Qy 1!VhcGW6{# +"@4( KIVG)$vPUY3g6q9A4[}3dPb@%M~-7?AH+5uŁſd;LˆVa1Յep aui2nOj3`!S;tkB^ej4U[8JO ߧJHfTo21uZ(Dnret0 0P a߼A^LOV/w֎W&# R؟ƨ}A8H=:+40ʧ{#%($]YF|ҩ{ӾZ\7NaD4@hЏFkH.o!Z=.v6#D@LH!Yu*WyyD {<;M3N;}e10V&9L&]g0O@7:D{,blH>~Kܤ Y9Om|-aU}kW%q?C*E7=AʜWoDe ooFbrif&}~<^*NS7ԐKhI}7ᖗW!Ues(Bd\Զ'7]OmXTCk8DJ^ ͮ{y't25&UYWL{s9X*9)ҹApt 1=_n~!0rت*3Q<lweHYYqy#ӷxٿ4t~_+p퉨z!CѢv6ݼJtS2,gq#.4<>t jGA8krK5ڣzQyC&G^OqňdP0M2[Rcy>)u˱҅γ)Jm(3 Mֲ ՚Dm|% 4N]ƔBuxXըnMsR!$ߐM]:?(A #caD!{`QE42K'*#ƾ#*FQ$jG!lD@'2~8ԐO {3UD, mi:IJP\FI{LdC\fCHCelA>sP]^}2 IaⶬY4J ׼T4<>zn2ѭ66И&4%Èe ^>oBW)v.P>Y7y $ _@ ^ ̆?Ec5#Ux|3gᢣ7Euod6xb!.OKvJ,|3<ޔF؅w^6ݿr3%Ҫ5'yoZ.`'=r#^(' 9nXa9 Q{=='<=3ؕkݲn+ձ5EGNPSc5q5P꟟TQ<08;Ծpas4"c[H68~l[b Z.8kM$ߒefmVw_"}};l$`R.9X'=W>D*}HDOB ш #I *Pi6|-Wea> Kb }X}(t$)a_v^ő[-"rl}]5Bc;Vކ-:snH3SV[>+K[aLs6 $_b 59/gw\b,663͖`04bl {"du Qz͡(}ngA]> ѵ99˺}# xBU<Z UlKqS!z SBkKa ,h^$^ڈLnxDSM8] 6M/OF\o(dCS@w>[X |]ݜ&?̧eYPQQLܫWFC`qMqSC<;2S~N.'[ݩ3D!ё n;)zvKA7yu>wY0>w^¥xyV"A.B3N[6w0lVt 'HA#ځli5P Uo! 9kj{ZGVCy߽s+s;9efw)&؁dCoh\ΩdS$Xn$>@WcL5C^iE/<v#qؾ#goIKpS33D] *?1(ݯrҬ(/=O쵅%Hc*@džu FK3 C,: pmWMjȿ݅[d-|2W!K'1t7"\A6J1[3Twcc%;8մQ[|w[F;b=e\2\d ܠE6 jshl&)]Wݜ2/bZ1/٪IȨe(\re%՜(͜MXm&ւi-8I̩G2ĤII6۽9sO }v 6 ]5Ggxz+.|dx&O(+/x;KE}Y~wb:_ZMoh*GD sƧtp;oȟp5P`N A^`w&R2n h2)5j DžA#?l(.ƙwҳ \0OئD^]M/[Tnl>3 뼐x#V|6 9) 8R__FJ: AQjm|*F"\y ID0 eXt>>3x~I/Lw>PHu>5 3S/myhy(}oԞgd%ӎ ZH/5qD:xۼb lڹ^;Juo.}gb䆓tKX1 +_o0u#lPa.$wh\Z;5:Pbd_LÕ4{zlvA-[ zL ĻZ}8neά~F jNOZ&ǻ$oI)2c2bhuʃlrdTJGscHtP-IA%Nn$8-K-MZY. g~0R5rm\d&R>(3tG'A4j]CE4ؗ .΋MAxOKrG2IĜ R` wWͭN0xZTG PDVMte! y:cTƏ .VU߹GHz H9 @fI3+Hq-֫ދAhMs{rjaZ0F4`DņntD9+aMdti4GM)Ir4~{!VP8h5|NKn~#+w=o6zC(Ω [O2A0#*Y?uFע 7 7u=ĸ/`[TVT#%PZ4nkMĵzŠ{aASF` 6 Jn"zf]3!PFzDԣg*liU.gO9KZoOLO!"bW'E` 9}pL !cŒ،Nv=6<\hr Y80|Q~TUAb rө>Vr0cWa1A9%?sDsqU"w46tv"p]1i ގjXUoPE Rh-xvL9ҎEW2MI&{/oT I[9Op,u%\peewz|wQߝ;w\'ĶcH/ ~?bOY5-^Udu-($) nlma ${P$p31DA0c\(St` 9d~)–.iQNuԔ=BBC -OM_5VT $i}X4Ne TÂS$JnB@ui\Q q n)7aA̽nZ x2uezE[yohؾt\P"^]oϚD_|Ś>z+&zg5 [~am6 p'w^m_ᄴg ܪ,w`Xf~\Ia4>I2Uk`?^I2m|,#g6<+%5֡ЗCdT=U,*k'8[]I@"&ݚqjlO%%R٠3y,su2mtJwñOOux࿈NMmߐѱg{g:W&dcIHZ]pԏf:;aopfk+$g/L nO2K]h\7fm[~ä LCq(ܘѥ\<.ESQ51Qi't]{Pv?﬇&M?,`¢[ٸ;j܆Q=pf_AK:dHB)WxN4{řN Z_#%\Sp}'y2ԺL 2͔7L9'ieN '>[;8SJ "o9MxL Pb(. 6vQ\-["]txGgT Cєث')Deb>/1m9Pڸ""\}`nk{ X&$>*`F (ݺزFi G[3y:w_R{3/@bA<<ߘd@-ҵ` 9Dx1Ed/eS'Kd8J(n {`b$n!Ҷ`X+we $P~m >EC(t=(E\J 3WNahAz+(0V^ PT9Qݷfڡ)c"/61> k!SŒȸUα*t'1E 8rIv4\\ɴLod0BPp5i:p"%6C|[x/mE^cܗUjr6}NqP R)cNm<==@*1%~lڸR֠ߚ"ϓ=+A'4KyT4@a1w)?$)~i$?Aw Ka1ywjKZ)ȉqsGʞ^}&Gͳ2Ra"l*zcƪjw8\k@O␥ܗk4Jn8ď8!(Bgg?n:Gʧiʌy|/ Dۆ=c8)*35WT$bu70C' qȽkZZD'pcU{-9oqHFh́h`K#%E=rwXV͓ :asrTOH3k=13ON'|Isy2mAoo#??e囁,ųrH XfE/ΦnBg^kM73X[l"RޅtyUa>'ڝX1AY -?pg;(Bܺ+,5(pE&kIk4ŊG'*=0[| b]"V) Ei2<^#+Va+#zQп`՘D|ԴoJVD\@*oA^mF:O4]ǂ jm5{fkq[îGx~R-gA)SC GrGr٩sNeZYeY0Z t`# m(CHٰS|BPr!Š[+CJw~6P Cey?~g=C'2v{L[.zg+1 ~^=/bB݈8 Ba5v͔n)wt2njXl'miv#|Ɇ)h&^ծDh8ߟ;au,϶QD T?pmxwk܎Ӳ` M,Hh,[pO1#mpdP>PZP%%P--!H#ڠkKP8A}e-A2la.4gd[f&drKZ߾ l LLBU"=?*vɢZ+U5VBpWD7&d pp=H},N('ǘ81fG$Nc3Oi",ﷅA\Ilmv=m}kig_\̏h41H 460-/V~x!?_,N?:YeDHTv?P"B-6; {h9=Y['`8k^O hv@am$l)Nny[j̭>F!VfJz-TM\aG.z1/#9@<3q>5P(#T6?[oK匂PI+5`1hyZmbB]WSPr8|.k_[S>˙8J֕sqH;ufys;:_ZJXYRx= /7V'tH MAgz[=gsCt;=^^JK)ȉ2ma+Ǜ /Ǎ~ .#13Ub֥Y: t3%0[ZM%G9/y)i\]89 ZH'h q= |A0Aarn2^e8[nF`C"г2Edъ)G{Y*9*shFeyKDzeVɝ`jpp t)5i&d1x,_P$4xL O{(jJrh1ʌQKCwL]FQP츿 eɴ֐SzǤ*[(5ppwy?RI/¡;dHa)z%6%w1 {ؘۢ*vӮezo#M51d *xUmvcQ ٹЯry{m~&v{椓7RX@iZst㪅'lVlg7E)@>LҩbJBt>>#R9 ŏw 䕁c93S v' 8Jy(QZ{V Ms gᨈ %5EElU 3.<7+۽!C<zP]Ҳn-B1er@P5ٻzZ^9Vwjц D3SJN9ۅ3v~x0Õï5P/;5c(/C `zC_?Ȉ^m3mH=N2%VD9 q\B*9~Y_Fϥ|Z ^rsSS$]1i'WD0texaYEG%[wRk%.^\B83=lNTS]w\CՇ n ~ӽTf+~<=(7Bm=;J&ɑHBj2VxP qu#+.hEcDvY[G4h48 ~R΅3'R#RM:xeCsd1!ߵxVY'WJq)c;krt'?]=!R%yXp#_Ry E"e~M&d6'Ed،p}g|TMyxeaZ68ۭth8fHԻHt\E@UYev:uOWs$jandI94e~hdTkLA1,c'Ssj548v=K}㛾.N}"w8/dY"KIlcژ0<\F ] ΃eL:-%rzS݌?N)Ÿ;Wu届7&Q85- p^6Q!|n 8Ng_ {:f`[Q}^QAU?#Y`"̡ UtU> 0E6!s4QpֱN"relS  (G>k*@R5I4_/ӬoP%TZ@24Vcb/9gyǁ,-=4D#~@Wh}=v͌oc8^! #t Ǜ:])BJGOPjlB^7tt  >#V{ۦK`_/B5[VEowj`]ݡD9-íɓnɊo%zlZ,  DwTqI?d%'^Eȅ ޺@1/U:ʬNM*OF?#:3,cH*{=gf(1؆zu$z6X5 5,nD?qe: 2yUP }3HNCEZ2y-RE,4/檮!K{vR^.bdE'H?UD3-h+&B݁NwNR$.pyHi%O rwaUo&:;t>qF^'/(?ψ]n]bw gMFףt̢7k92^:,^lgҘ"q 3X3M>n=5Ip74S@I5x3:d\ԃEbr黆I>to*&mHĵe 8$E2$f2țۤV|w˭ űG$*0o&F>XPqcU F&q^$t$cF+$ ʷ @pH& '2"?nҋ>XèHBOMl:za*&<0ߕo.CBiF^HI*ot|b1tZ9Ewsf5|/EadZĺ0yv$ck w |[6蛶5`w(p󄲋mS-mkWx,{ڗEtAțz(tHx Iފd{)m} ;; ;Pl1Ɋ 8yWuFw../?)=ñmt.$~z?S4<$8r첤IAn*`[p:' xߡ:`y\÷7F]u0#/T%f/255_wZo?8Z\~ >wnYОӲ\}>JC,AGC[P}|l:'l6RTCNѱ5ͿO5ڨ^&D,>ZDʊ`.8E,*!\4o9=p# ފc2iI`cj!ND#.JVnVsR.pEN UYt!<UG [n^c3̰dy܈J<G}5eoX{&Jլ0h"Po6p7Y&x0Po؆61%,,ݠ>׻hOktñT]wr{H4<[$ѸEbF>)k6%Ei s{zJa;R}9kKA;wT*J5sXl7nfk]oA>P >7~CXO_`g2඄@T*<[;(+5 {;Y>~&Xo$d5jԇ=.oo2H%i߀(@aSli6D$Od ,j<{-d@JcC#-y= e-@hrrߵ(v ^y6CekFW폕/gi`ȗYhJB_A9Qz1kvM/!឵OQ^;&jhJb~NU%hr"x֍}@FI {ЕD}C(fyW Q8-ץxeL:$o*d y e'&cދn⩖5]X~Fo5_1al:K<>t54nɤ/>ǢƲF@L/Y,MR뀶M%SC2Qk]eɭC/v4 _.e)tS Q2f : {j)oj%`nLgHpL:㱃.s:b%xvz/rw8nYS7v-=ͨtי҂<]M5qP1pjtBQOiPV[Cʞ(-}uEՆ;.ŮLi8a({yp#E /\oqy*u@s~HD-s=.ۋ<bۼ6FKns0Q;'ew]RPM+=o%]]r 6Vat Z1s ?/]l dD$֯كh| g/ƿtJ.HٮtmiB2:o !Ȏz q֏6ַLlO(ɥ2d̃I' Tbxv҇J<T\$VQX Ӿz\!jD)b+ l3,' ڍsՁp9胉di,9$%Kk>7Қ^$VX J1 ngHq?vn ThkJ*~&\su嗐r3hBA|Lka{ᒞKR +ͣ7O li$`ň Z\9hWiYЂ;%Ќ5Jٳڱby7{4J]ۙX߃,F}TػIPr!ׯ QlF~: *[ݩN zEq{!03 ^\r uQ_kF+i U[u-ϐ?;zfMCdVopr/L!öi;u۲&!.ʂsxLe'ߣ>)E?ZTI`u1$:HjI*CO(A&-p*TmCvC4|_cIE(FY)ϸFY.DPTa#1\U/e= AOAF4V:ޡ z[zF)SHI4kS>Q%ib;d.O_1833TE**C<1:6nӨIFQ'&=)p]aMI#$+e@ʷh6Z0KLFM=Og49DZE8Ȅ;W%(;٠Lڳж3\٠2Y4w߿o+4U"7RfpߛPg,oG3ϨZDy\zu@cCBiQñ<2=?փAq:$Ehw*]Gk.Q@uYEeiuMW'$!wR :@N1JkqL 1֘ (vW{HǮ|#M^TC&FGq^ t(4;rlEU _8*|pΚj 0ۥIj|W"=[;3 P{DbxFFCɃю p!sq` (#G:އac?'2C/%e̛8O 2pzdz GkϥtŽ^e#7Rݥnݎu֖03l?'&#Ƥ_c 8Hf|?R'DWa$/I.jP[sKǎ>ׁkȺG/z|h$-Z.pevMa(8Jx1^j߭un`枝![{# O*8 6`^}mUk g zi}Fg(Xtx<gۈCnzO"y.ۮhvcL%3G 讑C0]@xO[GQ?4]wF1,Q^oWB*ƄVs9Vp+x_)JuSЄ7߸Wΰ_\4+km:}_>LCY*'}g¬ @u38Z}A P³zd;YƉZHtXh??0M6h\pfN<,/d4xvktoGL<֯N>H`4 U۠291JO;5|/|BʠVQ[ȳ3©.b}AIJ%2dzwө>.!)zꥮw9BlN\2?B;=~~v$96 olf`򟫎zW/ԉLT𢏅 /U9eZ{c o^pm%}X R`?"@ҥVٍ04nɌG,ABK^6%ty4t^6^m e x=;ڪ$˴dov6?{\PQ<,@~:Q'M]2Mchd׼^Um 9э;qMibtEo|ܴ Eq,@(_˖?RCWp<,kok[w4~Govdb5f6KDf9Ck|aЦ7[ޟ 'ulb1pFaO"UM1"V@ w1mͽ$j>e,8(u#*U紩\"F(CO+ C$A4yOǫn@w;e :dr;+b 4Q~M#5 8]% NC Lc>$"a3o$I-\)t(C>" }dW?1A|k Ɓܬ~+H#SaRa=^OarM.YO27|1Z֕s>V&\sV-xEtDhdO(|dB7q}vPDimhsO*H)ݽĭϮW  3~se} #kOЉ F8 i4Sfx)X[ЦX}Ê;@ fBu'|oJqN'K=`rr@p?4G?6[m7-s*j-X7A< o[695%>1sV My!!շfg" iНWTay>н(wGdG%q-Mz oE\7s&4Tc14ϫ\俕}Qo@^+ѼoeX9tۃ<4!F,i#t|)s(g#Z#}V EB 㑾E ^QL@+ڡEͱ[ƦiN~(^CXg0(1[*^;PhS h>O5ooJ<~9IrS^UY'"q~L1A7gTzOւdP|RX0…wH&h}CM6;jdr@^ ao?ˋ؄ ?Mf*.ozД&[h=&5FB i hĜy6^ks"A0ҌlXsx[ w1ZKE4"i,x]_L*;hG̈2ĴfHkz!+):Ju~[UuF㘒h)M-;@e.R.:OWL?|&Z>J2K ^ nY8|3>ssw`}pbj*_e@t?i&* t#_+WUuNL4!|!W?* 2k-El{a` 4}(_H/3TR4YOWi8 U.<|'mQVg$֋Cԃ֤!bĠ֭Py,&R@+2?1Ȓ!_~c祕%_=ۺzmCLvmG#7v _0L~`8E(j|YH Y== yG/Cϟm!~W<T z*!qE:&YI|$1-b \7lCooE*NNnkxU|w DכWWՑ"k0%?iuGM-u_K.C%ޡ: =D[qd*3| 6g@Ҵ bԳ32-: T3ej%GH| $y*m\K |&@r!5 Ćߘ۟ir2~*OE&{8Y3kx(UoZ[+:Awǂr7@] )Z=mt%*%|gGfv^8ip=oc(ij5w鱈z%x%r%YyOh8˿הp_nZsBmapf+8n{΅yiސs9t\eeָ*6fFf8Zm-hŠK2n-o;8? .mRS* $$J)~._*;%@wLpkcID@GA5z΋7sw.0r(bJZ (cO5( m"8;mQ=ߤIޣ,MB%,P!-I~ǯq8 $Xv5Wʣ<5!gqe@US7٤Re ˔#$ۅLKNQD?~GUՕ%a"i |〼T へ爌(;6 KD'LwTbD 9`J/KTq,C8*| o[wH4"^{[ˣt)Oɯ`1W֮iOL4ut/V}2'i0]-\@3zri۟LôT*gKeqsؼDf60316^3Y2 QTOQ'1 ^G7:ve9"R& ~BtY:o՚FY<*>V;gx5)˙|&` Px7d+d Cж6VW8caZ;+@gC_BǞ꺁wM8bi5{]|GCB7=7θ_&x5{tNwEduBγ*&%&7!H3ju/~fmN֫ËcAc{*RkJOlrHq_HgO PP#Hѯѡ)_)o>tML)huEPQhd0Nd,TcIDo[ru&Ycgf>NKڽwHo h`ڼ8C?(B\H顰 ŕsY 2rvY(Ƿ|`g`4u\ aPnvξ>2 @nKAGc¡7,)gWAXE.zWǎZ쉋 4ؚ 5r<~O1tmb;Kp4nlvSH?V7"y(4[,8ݰ.cB?MYt[CwBiaW4&K>[ U#pk 2B[ǀ Ͳ4KDga|︒Ք½ZK7jY3r{b#W&$`h@g n7Nt.W+Mc8RxU#~ҋ gI׺-)bGM 7 $ZFK# DOLy׮.g@R?yZz< W=4RoaR8&l9$>XX|d&H68 ؙ' ^0G#;ɯCӡxAZ6fxxN&Nҕk\Y 4P^S4N@69hK.1# ;^ɯۘAv%S)?ENO_tc5D,#Oo .ݟ~!)NjEߑb+M c̓m. GVT[0փfŇTkuSX&_n6"dzQ.h|t2;Sxst(wJhPչim&cn -U?i72Z帐p䩢MlTvUԮHganw %LHoӵ䇬^1F_myC~P@)0PLGaYcŶUJʑ`I%*U~ 9rp盱2`uҹS/Kt #dCHg;ƹF<KAW\my,ȉ+ fKhRZ;pTJrwdG&ލc~l< \#;-7 y`Fi߭ڙ:Gm7i( l}Յэ4ZJd8M͍:n >(g[ !^^WxAp`@`3K)#p3 uc3ٓF7DP,\جO; @5R}xBu~wHF`᫨]۽W{i>z6ġS]R KdUN ^,Iz<ԫ^$tN5QġsHM0_7,=k qkjz r9Ǣº72D`Pl rFThWCɱnB4 a;8CA82_X V aM N;߆_{@X.RzC;;G Rx#cp{=@9xt -Ő Gtc?OXYIi?:P]W{Zb2-t)o^p! ȥYNKaPR`-au۪.#F݅GWqXPXAu"W L=P^Tz~);O;}D u5d]4rѿԣj=bt- lkY[c B8ڸ֊Zu!r!*Hq6[4X:35-7km)~ԊZy'h4Ahry\=MhQ)W6˜IS&wpr)c2Q(=]t (V>f:TdiOAL"Yр0StݱgxT*.Q;%/ƣ3W4)* _^<`*]ZI.B}w%v3`WeԂ뛖sh KuD.v}VK L{>̎sr%|!eAަ^br8ohҊJA|L"/pElf ކ|{:E2#TQ)Pߙ:ѿй;tҧxR6,z÷%A9^͜='ZP!VB@1s6SfT烙 R Clo SWbr/V>f:i>4?XdV:5jHU|NU5EU${I~\yÍcWlVjn C RrYZacWUJ7ZF!`CAf=E#!_r)^7Ԝ!G>ܫQ!"9Q&dh4?lDjrY%2@gG\ޫ6*TyY _4CwJ{S}׷s_#َ hA *ēf k F#J I{A/6P 0#WQ:}{dиyQJ cT!@@Q_;Q]~h2hݿ6HpWO!FY$3ỤGDfa0ۦ93,L+6̎J%xJnP2].vœﺳD6/tT\GYu8Wr7/`$ 6lZDD\c]Ґ+Rwٽt @V,Q,q=֠ fP٥Ȧv|Nbq$pF*M6v>K.+PËKtQ殤l5zW#/hĤiu ค,ו#h"E]%?iDzbTH+٫moU;.>ȵ>sWy^ vS ޽RDJp_6m1e1l oB7͔B܆ ތ_҄؆<, >YbI+bE"=l$v=LpHSWQj93xLc cɺb6{Du_+8D8W M3TBewV* _ бdos z™Ck`J*䩜q+8UN;FK-֭7,|%sY@'4N( :iڠEWmvMǖߛxʢEOz:*(RuV:xtH]Mrt+X3Vtrs y&ڪ-k)hCVCW1ltohdžkZ ZZ)JAyq/:=׈0נZeEޏ1"_rj.͔Ru-X♩ ]dM 3V;sXZLج P !.vi LqIDѝ|u|L O&9FǀAKv2`pNU ·N_Sv>`zR){o TFAߋr إ/Ωo֦q]%˄'' ?Ak(- Z3 H'sJ9ɞStYds슽 <&qZvѲQStQ8h]srrwEk)gYPp>ʣ ƶ KPo}ޅx%@@{17t%f佃[4Mx KzЛ T/r LV~72_h#ܲӼr#=/Z]Șk>n6=i(}~Z!S'(0-}l?n5pc!KW;sh=WY>iEaf>L.uNB[BX^Y%b_оj0o@b! KTTa0Q2F`%sB Y7hs)KisujxɁ߈n3C4Mv\wEnPYD**r^XNfZ[5a1X۰3m_CSz3L\c|`OM i 7DaAEGۯu]R;vM+alMW6 ~nX°_[t0* QⳚI O aв_T Ε pu]"B?`X EU]1}n/y˧}S,@*x}㕣o%Cf̮ n^aAVM q.̊;oNi G-XrG=uYQ-0++v= D[R5+z֖0R2 'S tuv[2a3,NV:gI~ k\KWp)hN-;่6G'wIxPLJ ,4afĭ*X7W:55#^Iȋ Evg#}Lc |3T^r!DVЎE뒪 8mPW pۍT 6\^ؠK"0NB#|/Im MI*3GRmuND[EQރ.}Q h9$00΢gp:l1ek͸e5A[^#t𝆌 cwhSb~[9/;# Ɛ *|&!D&cS癰 TnD3F ? o^ YwSɖESYQNzb9M~\4G7.XC6 bAxFMdPp{ P4^g@-S;)S3y%3jTHs%φj[5k}>pd.2sS\C KӬ5"XR|`Ïs| I_nFLvKxJ~ ʽ IKӕ{ؗgPpHf@ʘ>ArGavAع%/>1)," mbTV@ c!%W*R"=ӗ$Wؽ|uK%clg6xB FӚ^xGWwG,:m$9)8׼JAɧ[vZ_tt1hcnqTQnG25%GcCބ2qW#YkbJi+#sӕ9aX4[R2a)۝;=gxR ׹ law"fG8}/Ȫ%g]߅DN14`|mtNvS%\i2TMkj, 9bE,j跭]&jqiQai}![/q^E/gڻ2#56eZceߊktYebm׷l/^ |Ϋ)_1lޒ3?Z0Q_'4N_dDzn$لpE `YS(^ۓgK~#N-@8o35v&V.0w+=֧]q"bD{'{ ?*϶3kO'^  >+|g..};+n ZQ/(hW?iMˡ̾ 1~ ",:&9E*p%DCg{Q]yz_,Kn<t/\8|5)SI2z %ς+Y(K;QzC4ȒwE@~OgjkT ma%c4쵄DlyYlPoX: jL3B[`b$K G}./y0,wM.ړs™y+sōnO ԗ ܼ+y |V jռa$*s˗s !c7ܥ:xFԎ (_$aXLo["osԭhcZ=S"SO;5^#c/`f噏+:Q܏f^:@!2blr\_am"2gf&l[cٹS̱ə.-QBM VU#3$@(MpO ޒ[y R*BhY'D61rdxZ&\GvOǫ1SҷG6Y?}kGa>ztj^*~O"p' RbWh6GErEW_" EpŖ%ґr mpXZgV‘5?*Vvr[S^}BCt2 ^X|͒V@=jcIF_ٰ¸bRs<$B̧C~ہ7"H8{+D*0k<#?Vfإ)Z Wow( $B/{aŊ@bb%|;Hb1sXF؄!Z]03. 0W釀(Gֻfs i%ogoLDTGGI*ސT7fŲ>=qffTK0[P \kbuFT\WXY|)lıIg!\CHdI݉j2mȮ(mJ\ѳ<}7&ȳ8Z2iB{[Xaӱ+7.:ze.ޥ );5_FƲ+ř#&i<@+qMpSk̐4fԦ > b𿪖Al %} D75E`V2? !L .hqc}TA'hԻ}@54 ÀJD1D*FmXڰi;"SauaOJ[ {t6C:k a6"4(O^k[pTX&26MvzxxLO}L 4K!1-9aeU.Ne@geԚ&xF4/Iֈ|bϵ]W+R'0|x$}rvLzg>k1M3X]S| xKN`иz8㷤xrl1; ^dCُP##-ZuP}rG~&܎~;H>pd!yg%ărx};|ɹ>6qaZK}eNYx'`1|`"#RȻh (~~l?mu`႕M<Bp]e\h2tf $r rhzjс rҙH3a#k 42аع%ܞU9q^DQ1tL_ߑI@."{sAWL>ʢcpL=`^xccUrǸqEgE9(!QfCoٕZQLlf>s 뫫 xE֧X5X ūu͹SVS@)ٹh"]$I16f[i"W)b'p/<26ɞpE\,~x'm;v3nm㬮p;mj1ERBG >̵tyhSG&D\g;#+ž?SQ:%ڸuKZ T2eU_߻]\̊aƃ#Tgڂh%K %:$]aʙ ޘZzY OTJ·gEfGCI' 2 |{mH7 FfQBC7¬Ho6fL vsXwMTe>M Y$B!&,TӨ(̧Uoqk>hiW=G5|hɵE:/Ș֜K՜an.Ɓ7/ Fenu6 \nVƒ2ϝTltOL*J/X_N3W(`pv5 Ҧa_OU'AY4؍ 2pJ 5qӊQK WDX94&|~K|3CuR%^᩿pվ셜aO64ʯE˭{ tuסW3#-di^۸:~r9 ;5!";$i Px7@ CZ)O\X[n+*!z;y`$|A?4>VxtONggBHFv/{i"kG5'Wυa*?(pB *>Ts(/E^8Pi_&oKx^muqv j-6,r'HGFZ}xBqaN~tD.j+2m=80"Շ$i!:ri?IVy_(Yj`q*Ԩ }=g>(WNZ,1곭~Ş[2_LLP9 lo(~#: H:>|$Mt>+cuu*t6%ih ~C\:;姿ܖͳۘi ^ =wQ`{vE-K7en!Awh0w#~|'EӨoY̵vdFF˜-aJT#]TTkM\ӛ^4l)1.]݀_Krf |uN5&.%%^IFաuVO/Iw~&]f{ y?,p`~ e~-cQZC2jmL='|':iXƅ4! /u/Adi`<Ͳ;E  K͒Uʪgx(Sn* xww"-'6GU [>YCWhbnBA^?MqSBf1y͢3Ҙef;Ts6-D$`dv|eZm\<6zwefٚu^+TP"kj&Pׄ(ؔAՂ(}#|: pZޞe\!Qy3ߕ` \e,&NuCfKb%P{v\as^,=f5Ϥ@VBa(J8 oN)ixE]\Dѓ]#؎P]hx OEf7ME:[$8Q*HCp[h%|%=xGo\+O+D]BB9P GUTS [@U%4f( [8X* 0עŝo`hb iB-H,5,5P 2¨<cۑ2_!&buAP~rLV"JfT-7=ȗCf7BXY>L a< 5k(CSLr`Wy~8Jܸ" @M \(/hQׄe#λ+d)I &z }SD>lRsGݣbS:.V N*;~86Y, 喊0Cd& W=! !VѨe탢HkಆrKBLkkX"Xkv{gj:]h>/$FFv4U4lOȄ>I8fvϤPț1Pzluw-VY|$;Y*_ϴNmE\Vkfhvq$X]aᷳ!F8/ -av)Ϳp, 0F$%{}&lz;ITP:%%"Ο Z^6V:z LSrZAn$Ӛh \\Bzu5G%!=*9)g^2b>#G5EVC͟KCE6hqɓ`hrB /} 8Fk.fp\f[sZ ᒽj>-ev8JZ\b!"wM3LvujJnϟ 6 V>\#ЭaeAVR zÙ9:ϵ%lY v@z3N |x?ʹ,=3<3.RfZ7s=kW&jfJD S֧Y;^`FvdknZWOp-#ɿڰ0>㹌k>L_a.CkW(5IGZOS0:d9P{}rIx~ jh8E C5"]FM|(6yO-22G C1Hgӳ1ՃK큧yt2}Q: B'T)Ss> ZƑV*x[z(WJF3_@)[@%pсD9nc;}(\mL0YD/^!md2lw05UNWo"j I^5gCHn拡QBl`'*P j=gܑZD VO4ԭ7#t\>:DmW6gPuOU`ďt-"8l:b#9TZ B4 fWbƘڡ"׉KW[Ҁ{mM&;v-chG$e6zȴfoϮSjr$6o@6FFSFǎinb4:UdRWvOޗh ں&^G5|?bZ0gfr3Zz+gڒ{dʞ`bn= vxf2fd lm[ GgfZɾ nNYnvфh^:WMSm;4#uhC`q$I9eP3m-WCc(XE[Pځ>ܳaY بfڴӪS,z[e{Ƥg9?=}* e@d%`8~>ȇLL(1 >oYOc~eʿXj|1%Wl+kym htTm~!вoچ)+@u'Om4RQ!2:j*AOO > <.Zr'3[{[w9}'_Hi iz P[P-[?gSbF {L8 4Rjpre[h `CbPS؅20!f_a%ES<;_T7_y.:5=)r-'_E}Q?Gx \l<ӫaVp'6u|VɤH,i%\ԐJzI VVE5%df.JZE rR#/JzUh839qL|,[>T/8wjK;o:O|mă-ǃ5WڦB^;ZSǼxُ \P9^gtCW A=D>Cz^KqY߿6L c7jHpc9h(տFkرaW%^Q̨)G03`lFl+?Ga#i-Y6YȃBx]4d$ch 1cUrw.k[;Jm]Y0`w|iFo|`vsGb~g@2]X;dIQhCHj_eiwV#K-W7ʧt2,W yk{TƥV8.?Ety!#ͽj8 c'?4fjȿ I;͙N [{tq࣐%uCKt+HT*x%Y`M_uyNW*D(?v;͍CEĆۄ5k&R@7$I@2~# fcP#eLGe( +K+Wa Li2ͽzVS/p@-I1_ 3̀ަm@5 mu4~@1鹝mC#mR2~]l̗bI9 ҋ)`CmPR)t@n9K/o p5 ,s8*oڵ|lfݿmu&ӬEĩ4ХP :b]Yq|O䨯%:eOJU10\N6xS ƄJ{G>b#lQ7&Thh׃-v <-6 $`t/Ud@g Ŵ;+_<Υ1^^4rz׍[0ַeSFwko9s6f-OCT+J},]Հc6v#l>Noԑ_]{)=2)l !'Pz$3.ji(7ߡXa.[I+W^&BR>0#3ߌtKH4 G`yܷj @^.0H=)H& %[ŷY/}e!b92Uɑ )6k$s#9 &u`& 3OQ޻w,ѼsCE䝥{`~ h7|OSl>nyYYIv]Lh;wWEqs`J@%~ [Cr Gְ|1V0)]!)me@Rh@-7sMG D*{aݚg!?RJK1i,_..Vt2|t?f8[Gbk?iߦE)uNa+w.#.'mgWqLZZwYR̃: (*gmIE޵TErMc _(Z;h%?"H(#Qg.O=Ov!d.E$WK\f%n+&s}FLkἼc풨\oߥ|}b%.)Y=*3aSz"+ƛ1ƏX>H!LB|(@{XYАh7SbX;)yL 9~̎Vv76uP?Dz:zZ΢{lLRm=U;cꀷY.hېtFoM5Z(A [BtDg,hmr~1NӸ֕|kmEY1^ކVz8 ] #dL1X*}\Zrb}*&u3X,H-A vI,?,e PӢȨ,cm6iqcwN f7g#{-i|5r e]C)m4 Lɫ{Q!*zTAu/0[ T9-7z4jn36FA 9Vb; @(*lu;JJ6xݝڤ YXktBx| )@.JkR"gl-H$V28xĢgMUxr .N2rR6ě=ŏ>F&m#šhN/Pк먥)AͿF>;ZIGE]nPW _?O&5(ล|~_&QZʼnQr3⯬z XL/BK$b3YzQ'|`1\c({uoYށw;&5_48:F׻"d" "Sۖ^wFN4+(I*6ꛥAHh)9D/c[gv#RQѢLy.ctW2'FPQ_I-13S s?n[%`Ta%q󛞦U5?សws|e7/*ƯG "*_(16W$E\j҃?+=B2[[ SتI_{6%z̺gVVGM1iF3[1F[2_JJWV7 C\HFjitQM_ r,sZN!+^?2OFHnyV{i()BK'+2`)Sl8:S3=?E1ky owu۲o{(z@6V Z& HEbXw{c3T_;,?b2t\ }w VA1Tf * rF^Eǂ=ϸ'E]~8Ә:wq# A?˵4J#>Z}Htms$ǁ ٚЏ'P#^ @&]cX9Gjo0#M^:K^ By(IZ;}zmk`xBm֢ܰgDPL%+1Z&%$ ţ<4|nK>ږnFDiոCPDEUxvb 0T 3HX֕<>ӠcSto%MYߖqs#ZGe;_jH3L:[P3d؉ V2 2{]9)+y)ЀLuX ͟=oVϨXNpth1\.ofݝwߏ[Us(;),PWЄGr-B9ur0AF-((\<Hc/!6H ]&{ROK(w:t-Z6S=g%$](3PU:E+/ I\[[ wI|G4f53!pV\DPO,ULP "YPEV~&V "55/m`xe*VȬз4 &gv GUB!j?& ݩ<0Ict3;VR[:{&D>#t݈Ь>h"v.+w5a9Gh}CFNA颂lF +dn1vu1ȱټsHϿxYSE(u(a 1Rvo^Oè14;gE\vΥNR9.Om M%BH;/;1+DkvD |A*.`Ysl*h7meܡjn\IK7*9!<*;K.g'y/ Ȋ3t/HSS=Ck$ mp\UAk\WhŦ3{X3^ȊE=s2ǮH32F>; !`2oX1Byig6nu(mߙl[WaJh#(Tf 7aXyw"])S5ͻ$&^ ; 9t{!-!)Tf,K)Aoϧѱy Z&V>,:IH VdE \Q o{b0Z9Y)KeMs$J pZ;~A;sđTXN8u@6p~ MD> j7TlMJy}˭j̮*lﭠi,7mZ@-qE3:•$=n\Qtсģ5.7 kˠKyX9ަ蘒朠 : 'yE}.0UcXhҙ `)dV#͏fk?#!o{W#C_ffm xύhJeJ-9~OP}a j&hbg%2_%wjy^xdD75knE:zS?>i9.b\^Lv)W@5HdqE%Gy奚MnFnvdYF!$\tx( Cq[0D}}V2wzd)tgmW,T)JiD@j`!-\;4riVT3`:.tn@BhA/+(N:?؊`/: m~dK?9u߼8R|Цʄ}FW!ž-7|07ANnKBV~dju.P8+NzV+A4M8m #GQ#913+Izzo A4 "d\D:91RHc0=Y4Zqsn1S)ρ%#VnDמ4L7h}!"re,8h>2\N9kB ;bS,SsٰJ"ZB +H?l`!QAЪΕ>hpΞ},.(Oj-'uR=^Nv^3XBtEsD'^zgAC ZR0ial. Np؛F֩3kؑ:i$㦦gn{*4uu5kl{mpY&qrSS~PcKު8y)>b5TaEsH#1d cl[)\Q/*3 0Xn+2Z i3aFc22ȲFXEouy6֓˸=hl,n+ѨtE1BT"еϦJ %="5q9<`P~qtk⪆Ԅ?χ!7VZBf\RN&0 aY722q}!w`>̏d Q2Nϴ^ aC  Β똀&!JN FU!;x$ jA {+=>λW%zJ8 FH_MOW?h+ Gn8wx)=wt8R]pe C>G}HnJh 5 R ̀%C)[Lf!Q؂=L%;J%LpA --#ȓ Ʈ#v>#dIIoN}(} %t7-`ڠZ{ tܗF*9R+A>ف)0 D[8^FzC ^?7F W,UҞiPBB1]0~Bo4҃mOsVb~-x-lܚA}5s;/;C=nF$pXw g.[l2F O9 ?G)ŎlZK@ˑw z*]n""xD  *%}2oΥQg 1T7QWX~p3  W)T0PcޚX~icA`Ջ3$-}ޘc&f:*)4e9$J/Nr.![}p}<58uR 0ݹ'k aK] uJz9?#+k&*P /O%$'ʮ%9"m',4ʠ]v%?nJ=\{Cη}}d.a94xl_ri űZgv(5%%GVH,<#^E/Z Ob7['_#.,*PA%:oeɃNOC)q IXku<{7 nS'tmf Pg*Oq[J]ɝFc+?x^)PI `iIGH0~{8~:n2-T %m ntm0xD "=C00o #:KyI?"_WٔaJmA2B50g[RKb0S/ld2(>DJLwYk?~ro^wRshR_5Am%띀μ JNf"pFbM^@y>s~?xyxewQ݆H3-$1U %õE]2tb+sS̍ _>_ zi 3]1 NFx]sHĴ z&Ҿ+W*y},M+I-GafkbXR/o^ACgw>i%6&\#IdEmXR@e{͆, i䔩u5eK8߼`9]g$uuʟz⠕n2^o;- ^k.r(čwQ04ΘZNSLR-qeA8;V`E;~4t /fHŨs7\VA_w4B>Bt) ԏ$?l]nyA?8UGɵS Fޖzmc v"_T(0B`zT򤧗aa`"#>ܭR> c[b +1/Fn׏ ʧRȤ,6K@LڌK$DsnV𛉃φVV5j[t~30A_45ʃ`L:M@ڇ VbQZ#h $(;`45i@ +QO#0qmTar k%X̻8{F:OR|(Zg++R]F) O-e500V=iw}Q}2Q}'2)$%.w{UYݬEAz(Ybn:ъ.J2"%$~ܾھ-ӵXѪ" bx8b {b16֖)G Zik+.#. 5~QCRp۷6Wv\M[r$}OUMB#'ɡ&+![hە t] {U0#_p*RxDT[e$Bhe<@cJ? y:}: :RP V A"I;{D[( ޚՀ-]UU)Iٯrxifl%Moꎱg:Kȑ+& 7nV 5Z[^ȖsڄQ\J;Q 4Hй\E%CQ([]>,IX&) cNPYqq|9S1hۮ# ;I|c*( n3vJa\5ѧ%O*i Wuݰg)&`Rǜދ^ _BtUa![$xB cVTGͰyP=Qှb潱!d-mXU,ɏKhVDGyy4:*EקF3߭\U K8" CrT!M Fl g:L(-Nا ^ ɂqv4MU^I!]@APqwm;e^^ \#jDt;:x v;ts7# +' k 7H}(6s̘ĞkȜk,,LX=!iUF$е5K"!b500]X Nj)nx<|Q6)IO~[U@sSgaʞ~d耾JzSa6S޻Aā1Aw׊E:g&ȄxktJr@ZeDy[X^n[ux1GǙ͕*7C~ёh#rު]1e+!9w2|syD˟dx%O===o'> X_.pu6!p`qYSH&vqDm#oJOcBɘAk'`TMo>*4|NX x*qBP KCer“?dЫHx׍g<Xc~=(fOBoVŖ *y];;SeF{h+2m^K#D)vo?g?IgkX$Nzh~Im>9`q0z?*A_G~LL3GԊ¸,\G췫pR4LO_cΈXY-k ME_a(v5緵hs,Zz۽Ш4ȿP˜_h_4iCG_P>@nJ7P}BIW0"6)(\X0jT mS5(6p<)Fm[" $枼d2 }$LCWZK6z>-MÒB 4x-qC\y`O#`*#=-Bphlghx%ťQ|uh(ީG n>, מzL!*W uV MͫòF$XкWs84. }7tu{/ ˉ!+I{Vpl&8T@<cntVoȹuұY3[&U7f%LݼAL]tye$MyZ J^^d|l\3@Ȱz Ѡ0MC$i^p'aQ+R oc$Jno 7ѧZB}ԈN& x2kfba{3 ^Kf ,L1KžBaQ͗Ns;7Yv*X&E]}p :M?(.Uc83DKd M np6vqnДwƕ-wQ#BhF^$΋sEy>Cqp ϲ#|Vk)]D']R9}Eglh"rGc@+}INЧwl_1nz1 u]8/}90݉paJw1F57L ]H&I8HllZe7?:_^8%0cXcAJyYƒ|dfm&!Li4[T%Cu:PAN&B| zhi֧m9ɢxyZBe'719 IUh>(.zAUU hE7HIn[[7v%,,cnd':x-1:+~_+:Mr'3iH\O9{H,U2X)7!Qs41>>9j9RnsO=4k>%wNYu(!Vv~oF|!P1?x&* ?3#DP.WسTc\0 ht8R_0]osAh-ڟ|8iAr/&:g%mĕzP9[0'*%f9ǰt_v0CVa`u43P~ '@襏%N OՐ.?&arPCbHZfY1Upf7 +'0g\{@9$\+FXnj07f̭r%]4<\wj"6]sFw57w57(t~++SBι˪`Jr 8 3υ!yB.]޹ M }3{#Qų"ֆVJݖ*]BS ;f+_ ']4p> V!5ŧO:|W9UZDK[Z( {G>&u.zo,LW.L8˥,b4/һ_[A' D j1v9[ YZĪY pgKVOvETG)0-Ƥ|T}E丅}*خKE5;6%8YpFRZ4~նL6"l;ކpCanUQԪ 'bd(@7}jku l9l.un3>獤wפIl: jpmnA%q 0@08 Ome( ݿL[n`{jRa~H2YAA @"vh"*_za`]#|R ػM KG d.EzS2Ɗ8^nY4>fiN]-ie‰96$PL|P*Jyu#?GTN6s4mrjvBl:Uy صB2G{Rbbizk~pLWJ׊nrot9×8;޻1\K)YnA.(.;jgjZԸ !=|DOp< ܲhTqU&# 3X^Udw?gZ kkp?~ś+0 #(<, go;5_z  w|i*$ӰDs#+ !x7$)qWgE}3n,R{Bw@8xE,5 Jwސny-m 0=B|JNA—P0Yl986Zw #сj.!4nw4E+sN l'z5r#gD%ijn3*%>+HH 4\ҌM!WOЫ>yl"JgE$@|<[@NrqK m uUS9&뭰y7\bY1&}Y}..m#Ŧ0yHgڨ/M9el)nx/;D^NůțvW\Bj[߂T hU=ͻ  }krtRuDgaIKIUk," 48pͥŃ7ח׵7`눣=>)*;Y~]CCq;WDȐޡD'hN3J˴bH"ۨ&_K@j:ӊp0u["Xh҃4)T:#ݙ~I;MFgҼ~ |vwT K&)tm9QQ` Sm ` )J3b!"ܡKv1{Ǟ7{Y}.rUUxgeWdUI[rpjr#[)X * "( *W}١mχ>6uxw'%N=U\롙*0[yQY0g\:G+V"%P!ۨT99.S2_,G\Z׶l㙜99u?*_X9^"&XB`wo;Nx"9fM=9ٛ˖[NV6\0=f#؅rUz1Zޮ +ZNJ!|JD%I'aɺA ~zE|qZ< s6`*+B77 Z,*L2#1O^ $;CW5཮YЩ+,A<?抭Vt5S^|.w5C 7cJ-vm}<¾<9C kMt@yRvBS%NuCVn9lٽ*WAK}Vf6]p&K][ [^bc}$ØkPQ$b mC: ^#V|i aeeN.b۲Bc8x Ngsr޽D|S(]VF!O˾n<:(JKް8r JH_ #ߜ}?VJD\b>,$#,`/QW!C֡GjZL;m,Y!}妴 (J?$ԙq)#4 lC-јjO%KI0+VsZKm&G# r([z>W7cQzh<9,},B&n0<Q$Ոi??lȲH $gO0O">f3-'CwLpUEzi$t {ؓTjy3b YXP>քov-]BrP Uw5k*bHy h";fԘP(V-͠t6Um5YAH}Ǜ˻$-q~w&KF7x.?{q?h9NӇ54PR:9W+eiV NǨ&g[rec=]QABM>,eff^k^c yg apOB:voФՉqlKi/KlS q!ݶ{*2:fPh63%q?Tۊ,xHܶɴkuI[ 5M}]:X1NyL5qjSƬTy@)ױcHmWw.P2Q,4ܽuvC/b7"*xo3w*-*|r<49~ybdes?ԐG'Î_TFEeJOD֧8 u߲Huwe:b:A+:y]Q)9a N#>C@iCM1 tU#k&6(79i`q/5rN^{`Lq1<5[RFdP.AB51-9EZW߹ R|7(]V+bs}Ob%!s9'D~?u!;ҭ*aw}hPmYdLRXYƥ@ebZ.Nu!FIꍓ[)GEwt+NU x dK4f6 H{&@G-LJ}O)=yۓL_b`:I j @]fAĔ׷9)Z}g Lb0<?F+m4nmJ7uqq"HuxwsnQT`֧Prf-L@WtW?GQHDt81(O cayr_%fQQ̵^eytkU1LH;|?W&bP$i-d7mbnR#H"%oK%OJ '1@1/?Tph[Ƃ8qvaC'b kԡOUs/Jqڹc]LH*-97& lBeMcR,Y3* +Y_ N#J%Tf 4(w j܉+Q3C"zof>mc0hPu‡Su#*(R)$"U3uO)1Ke:Jc?bl9]fٲ];}@sp׬Ạ- ֈ,\,?`38zMW W|ղIfsJo[űXYO-, >PJX\=*?dM8;Cu!+Zy`T|zȀ4>}DO-;8z|*|p綐@}P Qմ{ͰD8U:NFQ}ES￝/ȣH*{W|y)«G"2Dq9;h]Ĉ]B#me:vW)-k{e@k zVjb kzbih+YټNណg[%BV+ޟ@Ry]L&J^lTYY334`]!lNk&ڕzOlEH;bMHq/pB:&"t@UtlUi_=#pk{AbSZgnAg{N|*Y!(rKdymYW@fdqb7 5êftn>m*`"ndGDL&,h=!G0|GR?Ncu,4tH >nzԵ'Z.DO0QAʔSVdƦ6ѝ^k})۫_'A-m:vhs[@ txyywP=H`6ȡ/g. ЊIAf?,qb= GHvz)ZJ%^}a$/WvcwPp#GԾGΠ[m@SjϘe bgzGpx1R1S۬OkK1?/ d sڀ;e2"+ ts?F'-l}UvE">F7c=f&kX`Mby}[sӊV|u|"\eu q)HhG!~+nx5 Yl@eY \#05gw5_oH5 k(o&~r$wch0w \pVQL?Udggr;-S@&Sѥ`'iu MIY;~.q*Zq-"OmG2hxś.Berw2GOSJLHwB`po,xkq%.{ zt$$z jy]$G!\43 zB0234wN*]3stg $5uv݅.Q͜˽/ f2uB.klP9X?~v7Ar/|MuQ/ɻjYVZ%|;tnmkU߰zݛ" JUSdS Tp\;v>M@EooEKjIՌohr|-30W>yp(*``q:C$N)i,*.]gT.l}ZN~dœUJ-*F:u(o媿(V WSj |%՛T;|QV{.* #i'4S}qPඁ-^ >+ND0UÃ}ydw^Qc\9OѢ3k'ɪ~D6<82EeY@&(E2H.CnLwYϘ {6Qo2$ 驃c3zH:-z Xi!c-9k A'^Y#Qrۅ=ߵws\8Edr/tR^ׯ>EzZ^?9ϟoE+4&仆X-ʝ0 B.R3!)5SjX8ʮ8c=d919YtdCV% aI%F@":J Y_ǂۭa-MaQ5DƩXbǘYHa^-pu@yMC7O{LǢϲoUfUfKbN'S)03b՟.uq&8BwL AQiHA1W,%ѲmSE y|m1R~A<" r-\WVd; S)~ű|-(t}N/HS %w'Pet1%@$]SLC ΄z-̓މ,{a;D#T>ź*N/zl齕/#4H]u ]$!S2zncϢf(򃗒u 4*bDD CjR~+gy.(l]sH/Rn;"DOXTR8 L3 P Ph?oH*cA"2EwV𕹭Pcr9BŬ}Lmk{ ȴ{`wE5+46w~#d$CƣJ1Fë O栘IhW)Bq%B0`fcp#؟o e 2mohOWe[9^ wDl"KJɵE}LAQzoSIsRTSUHC;k)7@LD&Ng<'WoB~tK\ܛWuگE:M繝FXf櫼&6Nhz?:Ɛސ:ĎԙG,Sogiv\ྜྷqtνrM  ߻]oUQM[2W?Bױzm!Cްޕ{ClW7x-fIвY ']#Z;혺Fcߩ"I?$P3GfD 2ZoYפL2 s.; ~ -AtD6+`Qь %L\g㥰m|sj%+U1րM)A.3I#SRpLLҴGt+GV N{N3a^L4`"-^Q֧YI[sKd,/ϖ~rpWH GC\z^ZZ 1ҘBӱ駐̼Cf>ᑛN"[1ne"Xs;Jtg&0 4W\;}>"Äנ{"?AuLZl9&qT~9K2Hᖊ2G|(=qo =Q5|~9žS-s'gW՘+l (8 /$Xpk4^Z馧IsqM&2bxzԽs~, v{WbxɒMt,~$olsViHӥH%r4!+2c~^q+ؾh*W*T)ǜ(>;Jf5l|)~O_2^@!=R>gۗ;SZI+O~aT}'2)u6#;P2\7#˴)rEU.d8Wp뷒aƶ};Ώ!}o+^a2]%K)ų'7(]h惛,s%J|~u-@ xzR[B*6w'2h yԾ$rڢUK@AcFw;^2.r" 29 mRI^OZ2"'S\mU|.%LeQxNh5I0{P Ăk]%5̛k|ẸQEOgP>]םNlMg¸_tj,2WyUʥj^ qɥrW]"8BƸaiqf ֊fKp Bv/u' j]|ay۔=gܜ4'\ETUcB@,ޗ1[YABgs+kfoDd޴ԚoCPF&>u?Н_ N[xAuhf{*%!+2z6Ҕ=VO"c79DBq Yr` _~ZǢʝ_ g:Iݹn'b14вcR,?vIjY#]4O@S:OC{1:LStV@sՔŅy#=-zfvHn_ʃ5ٌ&5!\,K4Ιe5i i/>:42 )s/LQτBfp$ @vDt\Q/F/O"2~H,NMGa.Ww|u1hp иy*pL,8R,Sކ؍bohчlckѠ~dj [5o%#sozhvr+@7l$W/}߷‹ۣ`{>iMGy,9'v -CڝBٟ BF>K6lzp uR t3]Rp%pR*B] fNBbQ`P~)uZu\}A ,G/)zL럑Ck!vS /E"?cC>d# $wЩe N: Ƿn*39Y6̌_:ԇL;h Tz"&ˤUItmyYV&7p#.1VW{P0L\l.$ NfɑJAz s'\l Tbl> ?ݽd}߉m}I*4k.$u+‚9I,W[;ǥֲܿ5 ƣmψO32esE㉖U A[IbXSe̘l }S3 9jg2fCXk #er'a_i!HTHU*@qϷT~dŮ[H%c`Ϝ ЛXp[ւ ,l W%øw#+F cz^H }%j&6Jd*"W_46dG[3skzxl`-0QC3tT@sVcI$5^Şh㍿}ۄsJK w4I5>눏y9*̳E.@e7/9b>kJwatC[zy.R:4GXby// K q0ExS_p!eHzE"P!,ek|=9𜷡A +ưMD5pGl vޔ,n 묾`:4 ir%ɾ uzޛL"->)"։rノ$n(<^úPxk.NgR'X"mgխyó?<|{D2곅@2ZԲ_ks:}SЂkJ4[ k?@ Ks^f; l/zv?!NS·S|7:*) mu t|ps!*?$sߚ0O5NN3Y!3fɍbF۳W=(>KU쳼(1yvg" J5Jq=Tڧ>R(HH\$dmMz|;6U jՑx_m+}>\\`f -,U)!r LrnqVoN`ƑRN\/ ]>QjLSJb"ͭH0Tӛ.΃F#]#0lk;n|7edzEA'mlI_<%EA[ .#TY"7^>rIB9D7e]l8-j(陁7˔x`O2TCCl 09kLWhjTw Nl`ƣzM=ơvc2G~~UYX>7m)?u_n}Hd.Fk|[^]MOF(i2eS3t 9u>?-Bzjq-'d '|(MK6iģ*hq́2!~9OڞW(w \:'X6KXg6IB$]̝'džfưPlnG_:dXs4J6ꬿF 5BGg+Euf";fXO%;92rp#A'Tt9X]}49<؇Y]8lBq35<8(̓}TG]("d^DxC8>0oeQݝۤd7&l_Uj &CꌕA69 h˻9/ niv S#thCE"^NSo}Mł\>`N"6 q?eS0X=Ӕ$j$%]EB$wy}k"mHjo&*ծwa}"Bۭ?˳TSl?_yZ|6o`4vk/0ٖno~ˮE,=gjVi#82 ]e4:ݐH'.ܰ!`tڻw?{X-bW 3.k/Ox,^G'ZM'"k`gJ⷗%I'7FĂx9*,%]O :) !&}78iEŠG9'e:qUҲ.w %u\75"oo>vW"( ğf"jA*uk.kg[ }5E*ERmpY"6Rjjz-:ֈ{HDk#hqHI[hVɕ|) ˖q4GòK)&CI%MyG )YN08uN c5eĢg.>(<,jL7,K_=-V>r[^)fTQD#G- Gb@\$ =h"s>ɐ4v݇ ~J\U ilz=,1pAn[-͸zUnU  ̂D?<㈱pӢ-^n5;#fvU@gHo6!rvC /bxC$ƽ&G GXqLdI[Peh҆rVicY!58Jy| Vlq(ϖY/C`a(N6<6(!W$#=HQZD eg̃XtߐcSqa֭i0iZ}D3`!Ԯ!*SkJuyU||ajDE-mvMws9WP'++Ky o` ^ɒlSjs$vdN@ɒ+HrPi}Ba FԛZg0I?,6q) b5*&Zubc[,Znpw]4rIg}c kDץ#DM|wmW=_'U8cҸ LC_W3p9e~^kqOrh Zpc ֓%ږ=>ZtLcV= Xq?߆nBp3^Vt\cˇzÅX2hDԋFLXGp PEe/ &A7W#֠0f4fo9n)W^qoox D{/j!*9?=<&K˙]|/`#orrQ k0];S(;Asn +,]3E- F#W?;azqL}Q!u`Xk `PaSFu -~7dY=m(@4ōj)1~Nwt[5A Rxш6Dz|3q<. yy"vo* …F'+ꡭV&{ *(Ne꒎Mn˙ZNc_Z]M;}"yQ4.#T9O[=m&J| i'1ҚKS'z 'l=~5/6|&G9$T2iR(AU/ ZOxje+#T_NnlJB';bϻ*CSo(U$\2iLM3"Cyϱ.d"I0M>ՠ?'ҵ HlI>a''X`;ӷNΚ!t%n y7P\iъ@ٝB{iP!pq#a .Q($Mcl <΃{S CQYj2ΉSr%x8B8 P랣q0'(N"xz#fe?WHDM`FQķ=eB#dAN]Ob+=_1 Gw+7IH.ѴεC`fKrϠ45X!487X1a.KpTQweI"SY `cK@WA'?Ӈ 4/r;ӓ^tj\k`Ę% d9zE^IY-5#gb FhWL>~+;\)106?Թ,b4wqװ"ө|ZETcf u^~$ g1*Uicr}> ?+gEh, ze~ѩ>M;KH*Lo}3FpZo_"EǢh|}ԻȉLlq}īdZoM^Nȟ_ƢPHڱ9'GZ˂]g陦05tFޝ F$e!^hbaNU ZEicfK C4C ]AOBo$T@ƈY5ѥPM2YZN+_&ݸ2UUlWSGH @rizԂeIr_CUCϱ=w @n B8 l+d%t'Qp.OC&Ϣ62?ցc(7*L8^_Y*9)r ?+ nP,^m[#iAع(0:Lw<Tٖ&G''y 8~ȁ*THz}V'ApaJκI>II\_oԸf|benmwv"t>G:ߕf([Nmy[9b3 b~hz qÏ& t/r6KgtϽ" gVZf7>)6^*xS Sp}1Coͤ^=:ԷKhoK cI͌Q(?T!L$JD)N3kk4T}EkpYoAmx7BΏ#FTq+}u;)q"mkO;m ih~Xġ)ԛb GWP )l]+(ȸe_9Ki eMW\dz) c];L}tT83g#su8(0Br񷶭I;wIk5!/_8!$+3ZЌX+S܅>/r;d)4\FuJ{Kֆ /lr +lk]e]i|{ˈ.r~tX3UrTIf͎fIU!ڢa'w@fVM?E]\MdD8BYNX{bmSbL$,$4@Ȱ4+[?3]ޤY{.l!zh[J>e)P^4}svHwJ];H/Ao_ٔvpKmfSf^U%(vmLZk*dc xHM8i9 7'Jͷ'׀+{~v8!JkFJj$x䩻&e۹RKLdPtbPX߲`8nfO [Dsai[%[]uCs&zcBVoiL/ X2V?َrWMdMۖ_>~^l H2IR޽>! ?vɕbSU `x\^ÎD@ΩPI&g9lGdĶ۪fvR54@7x託x.HA*L'$r xA@L q<澉]@w\n}ps#vK `ZDn$YGeZðvTX:C_muJnciM`өy hI'ⴱhdb7w0J6@O(x\K.軒\{3M$q0N(6 q >]3J\'.=P!6,gmx"cfr⢦6,4\Vy@ӰfKPI)mj# pP+a &=KZti/ V.Aosfv VtϿ)жnp;C^5]]D.΃ :~bz(&d&E+eKԅyJظjN0-UIZwHW7> > A=qmZlIqXM=7Q'ZsfdW?oX{nwHRsw'_ 1;>VCT@nLT7lEؗ J|irzsSF;Z0Facs\T$(x1gM})#PGmzQOn6 ;厈KRogW0ehsZ2 2A[ꆙ2w7P<02ʩ#*0{a:1{iEӦ9EH;+S|g-;T2/HbT) Q d F\hDhqaxC޹{Bc]I! 6/k= F]SmI빕vh_JC!3Y)~N׻~,1oj.yA}8mPse=@( 3M8 05rA~fVa$˿fv)}"afs 70-SgS'&%[= Ҧ?z玑oNڔw`}a #"}:dY:KZCO |R#_k5W?/B;Z3ͤRu9 [pZ4@WZ}<ʣlN^O| xϒ/yf2)<;/AJY.G1Oim5 Q:nM4etV &@2a,r`})] v77UQNʽMAZ-I XGCt SOfUH~ & C/{Ye$cDSJNt՞?:WB2di# 4;Gr]Vy?Kg X4|b\3.mwSV_P2ͷ,4R8, "r`hFW.q C{J߈XõG-裬giXu.vƣݴ,&9A*0x,taH]ъ1nm-55@['&R|+M]G^ V[nAPw2u8 B;AHF*ZaBCL7FAj-ǔ/>-5W$-r*!"ZJ'wÉ4 .m+e!P"  f*l R4&Aiqg~@1؉P: J7׉b  =u@m>hxaNw \RaX"2oBjf> >rs}צv*J )="-sk{z\vGYKCDg./Jtpq U2! F-I[R.Mƽ 0Hr{fꦜc(,J=['euuYBK LiR"ѯܢ8.{G6^dNRoTqꓪ|#QL2h-e.H@$m3_=@ ;=7("`ήfqp2`3Yjn=f'dپwjy{1ۊPZD} sh !GYK^|r{ pmKOAMF6Pl.hG7r"TVWeusKL,7=JYC` >/3ҖݑXD)R84)3+c (U4URlQΞe)?e!&m[*L d4 &=Ǔݏ+/5csl%t4jk%x¹rTa$JV#j @hw#?6ٸ ԷGh0=Qnk{BS(1* _>J}oD+pq }V ފgդN t2`t'Ϯ1\)w?Qь>Xz`;Շ^)t;rvv7BU]BtVb{nMR%,Wf~7ҩq/ŝTw޿އrM-q+(;!˵Zf>waҰڴ!(HkOcJ[}x6T /XC лHx V5@M<㍖Fb H+Jt֊, U=$OFq*-y%M7bڄ`( !oB.lK.̒]Ij3 Vh>U$Jh>Ȱ}w> gI w~k& HB#*{Hٚ DSw{0>kxcn@?Q˜ȫ2$RMzey, ]݀,ڑ;`DYJIvFZ7$3$-'dPb~]=~X$'*9xDf4_ŦE D;7~7o'3[L|5SQg>즴WzuuwTz+?mGZm?9}-m[RLjWq+u h™s乳^'Aa7dYyQ.GbO֏!y:Le^P~{|x8л4ER 5[u*?d/Fs$2bʞ44B鈏IYCk>p_<,s jK\-@>+kgI]G TX8ce;S/9@w2 AGG(=n̐\'dI[?KA9fBg;OgsнKNWCɯ%O'GJO_&EO7ӍY}29rRE~vfZ8bՎg8Jdژ.,$]Yq[qc߂BZM!F*j]-x EIX`U0!D0W>rRFG$C(ILv@m x9lh^C!YEPɄzNYA`SQ17IӍu:,Jڿ4x yg9&Eed .9͇A8L}LYyJ=! '[m}W?aw:i׹JԝnvmZF[NQ9y-MߍAxCnAO2x&/ˈQIEA/[u-x}(sL2C炞1[,0h8{ù>N×vmބsXZ,XL$=0'>gKOV =r>"jsnsWHS~ '$s>L "ǜj=PƒfP}!:Ow!R'DqBPP;%TX\<)~sJlrhuX:g$(yM8p"Inb!bu꣡qjf<ɕՅOı(ɹ^~8&HϋF8UIPcʠ^,ߊ02!ZkX1-omB1LZyM(i'`l r|@pbԨ.34'j![Rx㺒O\el:̡^{["l)Wg:m':jEE)MH?%LPVZGSF+!SmRN~eдܪMu5 E@z`7fɌ )l12d.b ; 4LC-{5(w4Oj~܎̓P6X;.V-Gv̤*|ēw6o5=Rw,f O맱".E.⹴K0s.Z{ם!#(L3(?y6\"GO7pf>:}NnByfG{T1qWVJY~(^c2=zyRb˙U$elŪGJK DmG@rߝ,6Ws,U~'/5YP¸x>'#>bM]md1:sSuY=YHP(^Oe?&EK VNU~0 VNu+TCl%6 d#r׫tTM&rqt\]'094C -ՀSf_@|M(%DU`!7oEKp-S7al[65{f>s$K N F:Ћ&Q,uXsŅ(P-,@EO$H'wfǁ"Z |GAc"h/=O8-@j㿡 Ͷ6"KGGR&1Q /ZizC2r] 6BGW @JPRBt)hŘ 8~WZ.r,ύ31左,d^̂ Cq &'2$i/&@ҿ10!wE$q+3㶿 ߩJU"e{@GKC=E]¡25l 8tf_e$) !g pIMFqC?6$jKSv< 3۶ nIONviXxškIU_ϓ<;K?#;Hi 2"؟ t?7K_EjH_輪mjW Qm`am 4=d$³Xt} r0V}IeēUd"li'3>zgi&ÞC5"x'ZD}c࢟X;ʅ F<g `"&/[^@4w QǶ*cx33y8}wQЬOjR%wgT\p&7{!kE'h^$f oM\/Hzm45p C( egJ{Xd0r3t.?RnNM Paϖ"L1xE !r7șEXrC ruqhcF(4{[Leqq'; *:X/\F7F8?uՋKoD]1ޚ鄂zaipcO\H+쁲KȱttV6xK_ 3k26,Nzeu^'K;nw/8j`#V 808|vilt($g&TE}ewv^ `sZM ''so֔mdGbR=Ke:+%x)0{<2;c= ?:%+QIyW-Yk5tQ0:[ǴEP,K6-9vPi +#mf7ށt6"~`bm į-9 0FT ׬T:ז$T8/QHLE3:fv/HyTޛEd.{*tDұF*87.б F(jHkNT}G HoYtˬSnN 1aY#J̷-$\f|>e5>;ۯ5n[ڄafmX„g& {FG6?cX7b:~gqϺn|߳7Ed6M)sҴ*oHQIsRJRP:b:Ծ fjyI D߮{ۀ-AKvqm;sa;JOhgQb]q|K&/J$j+Л :&l!+z%$wS57su;&埣5yMGSg8 )%du GZ(uzg0(42%#v[()XrdKt?I4!;L݇זo~t4ԢW0,$ƧNk}D>̎bA3>*G_Pr5;} `)CDyE ՌBx`C^w>B4"YliM r'F"@puỠdb }>q] g|H>WZ\0<<) 6 F~WHv3b&$߅~lÔT'eR璢s6ˣS`YX_NJH/Hj=c'$֪ O&~OWdaV~au:&''*6+-.SYc 匀Zp>*!74yNϢzP,@:FVwu$NGji)ɦX]p,4#Y8?p4=ji*'.f'Ģ+b]gfY#ůcn`EX60[F=axZR7P=K6.0:W]U*zf*0 H894PYHKX<T7<18ix*Sx(xյmf"E(Ȩp\L 1ĪDrqǦI0Pd)" jۖ?堀q8:망~6*]BnXES\nb{}QnmJT5e` M){( w7V it\K.@ppX~pk:5^sotD0.0: {QHF䴪xwVOie/IҺl%*"dЇe]qOکSSN~R< 'P*ᵠN@6^/ns u '"M 6AXPfi#6Aduq*k^*qfTߣ()Sʅ't越Wi =d.z;GjQ1!B@E+;'D$7XG${o9mm"pڱp\!(g@;f K$!K%dOta22薢(BBe7SD֩2`{_m^F`˥虈RK,7UhLr>. KxV"=؇Ȣ.\l F4r~m:DRӣ1݈䳤Nٓ -P'Ҫh`& ~^]V쇈2{_>8V+"fRw-u4ݼSY¸5Ry-aчHd$M[,S:-?J+YY]D#HTQ!TWUTy8=ө2YP՘ _0"vvC(}㶩 WR)r&dtGS,0Oۋ@("qK,~HFgQog9-9޸FaN+aiJWBAikh({չ]Bkp}PԗC]6JՁh!-[\%!H'l& si-Yy- ۅe&z4N֩'oz{5vH/^k)\ u S2IcO{k䗱0Z!`َX²<䤐rtoGNlVɰ~+~ gNe`T{PABf{(q!tƅ לm*˓{69=y~.cJ VN4I,ֽџPBT< G0$aFdWpW-R΋> 4Uh֝K  FdyN@E&(LcFI jLwq\}5J | 1MdLZa`Qs j/Mt7^*\ jX4O؊y)/Ԕѱ*~ـyyǒltY?MFUM>Z4Ν!쎎RoЫ}{"%ʛ'y诐$5a9)-{vOB:tk99V*PطoMyJNR#g}lQ {8Z\Z8۾SrֻExOϹ]+9D3ϵ+9B D(RqXoJ jE0CK*-# `ZW(ZɺW@ g}Z]Fړ~Х!o]v!ORpnW"T {/O E ` ޅO߷$.7G?Hٜ'9ܷ+ho>ϼzBQ3FweSi'q@6aFLu4\Q;Ks/jFoKQ\qHգAnŇky@S õɊuD*>*.smN (Ř|Py^C7RSb=0X @ƘFl|HdLGdSϩǤa;2[0Ӻ1E^r54kcA+ljxF۾IRI\6Bhۓ^;qr5y)ͦvbIz=7+=mD- w-408z6֚ %0b1XS`Vⴸнʁ1<|KƟi2Q >\3T<٠!DI߂KdTo<@XξSO9 gʔgdG|Gש ޸-n6拰:җMX\v D,>y:nFk'}/OLL3M1Q|T'xQGy\x&{4P B"x|b%dT8/'aPԌGi a7-D^(\eR< _u&nQ8B UC8pd`P^z=So xˏI<+F#6 5G9U,Xc\ֆ2as&~tO"!?MI%yoB)V"`dTc=LTXHJW܌faY<,c>K 6d%V7ĀIbŗQ4K`+EgTA`Q.\1c(B2D|k۷هcQx I%{+dEww-L׉g8,LdY qd`rή^h͡zX\ʉY%6E]LxB #pÁT9jj?U)Mk9$44ͦj14:"J8b"\Fw &Qu" 6wYC=:ts{x { oxЊ ERVx/ sq]`]ƚC:V&&3ctEifSV)SJ爫O5 3-"6w4':?6!Q;C:H!AbO]hMz9"@I#'whl !`У )t)5>$a39x/!07cKij_;XĩاYHFv cϹ&-QZ5='+lYo&8ad\ лg,cX )F9)Y+r ~1$֑y['^(@}a;F$m;A|$f*'af\˒~"mZ-' aŀJN }f@=v=KLہ0g$qFUv oKeQ+{l͝oM:2< sR$5˜ŽJEr - u@;/͋S4uBz]?ggZOEak V6.p-`Yo~wOz FI)]X !]ʳ)e7X$[,j Ugdo`3}C3e& 33GH,J*Ǔa( ^l;1x=mA"k4Oz.͜vb2!RkRg0*UK5?;I(?H m2 "ˎrD5"R/?l1]kyHmN,uZ`N !xL&o.0N1:Ѓ[^ Rv{YPrl h=,; h>hh]F\ȍ|QW_你kK~4̥U{4 ֗/$l '9]e>E*/wKoaI2B=vՀƷf:rX:}nK⾽MS C?'Nʦy_bF"CWR@LE39{=H.3蠣 ($Nb]a} 8Ժ@{<%F噉9Td[{;JL*U#8ԟNcF"m*X.j5F~g>Vw5nÑ[#6DMu9Nϰ| `$Ii|@po+DÇe 3MkT7~atFO81T_h*ŧ3cGQV-i7 ?זVkSx-N<*eHE0 Fr|K ۻQyt9 :DH;g? exX\Tw%o:2]:K\1dy.4 хyv]7'ڸ-*Wyu0Utv+dGiK  2]+YW74 I76F;NY`q0YT{tgc<2Y_>'oaa:7dyi@ZsQcVTw.0+PI? a\fP@GB Dy'ިj;4L_^ Y4'/_:$dmn s H\6 ru2.wE9..B:/ާ'[sJcI)׫Mk}A֒ƣR![-+[H%LpNNǕ G_mt+9-|OֻqG]R̂^Mx%q帐[ rhUyw8V:Ɠ6'|1itnܕL(k"| ڞ|J \Hhڽis:(^Ip͞NW>=&|2&<߳zuXv9E WŁ(]ǵ_jdIoC{J 9!La 7fEltԚ'C&-3 G ""8>yWFwe:b[ͦ.;n%x=~>(arz mOC-(D'j)\XM't3>D{wheQ'堆Ca>a?464n;#-}(6OTq% 7k|ZQoqcj]Męav9he";2ƍC]~MG e@L_l@0s_|K"7o!-2|W]3+֣6V$!NN^K v.IrTt9?NUTȦ-,õy=ѠG#w#XbNimnG)N,d?;[eZU#=۸QhSCw ,OZs)Y EM}Bu~2j)?"5q%":|sF`֐vT,fD'IWrss٠=Gf[a6#\l=]d=~RSJj7K RRC&Ͱ9!)_0ek7ܱ/#* Nޖ+nlzlKPn8-p&,X oZLUz-f?K$r4.tӿkuLϖ99Ou9NRd1#Ԕ\ 5pri{M';P]9^@<~~ +JjuS %S[oF` [~(;bdTLN!C&ڹH=v;8CD|<Ձ#H 8ew 戗 _P!}w>HT}_;!p]Ѫys'Sfspcﺅ\ (2CTtdr[f5 n|H5F3^%=8X1r/wt(1O1\7n~ѥ1:с):܈Xh}0Z+ːrB%:HVU J>Y#86Y4;r#$-[ȕ-Hhd.qt_+=cMy`:_/ԇSnH]n XRZ'f|=U +Ÿ6n 0\?;<{{-KHji &)HƒkJ!sjABu2gV[ajoJ0!&HjΣG<"Q4;X ɿ T_ž3nBx.T_@bpt?iW̑ΟcOG^PRU؟0F[цXd)}2*jM{AP~:ib$W[oe0N^o! G|jHKB7ꇭm!v*_$c\ c*~"Z![7xvl=:F!z-Q˰C6i鐼vz @Pj=4h? SX|W~J* 0lzYB BmnHE?1+[d~.-qt/^ܿ1)V VZ$֣+6%0-"ÀI$A5+qؔtk\q| D {:U21ŘC`ՎRۿޔ FEXA`Zi?Xq&m@\>}^U?Vf9&\%\E;e5+ M gh7qG^nfy՛:%ls ǝB\8ԩGGZ z=wY +7+"ܡ7$/JHFxOD\mRzm~!\9a+[攐I~_5aMюveqd7Leg/pDTϱӗ*?77l4| iۉ`cLڠz!ƕFE8 -зGA">4Imx}\C M>,d]䂕 4_WVLLj=tvqS+pqfjUQ<;yN:Tzy< Hcw1ID஫1P[N@OOڻkYDdMRjEC=F@p9d @LOV[{D@-P&Pz5Pj8U`VVMp9f_f[? sr|9>c`g7I:Ɵr<4Ёӟhjz1ۅf^vzz(*jkPБFj>rpNWq0~ϓLy7DN>|ua3#X'#e^%&bh^prOAE8yH3F'0w`ծ'27T)t]E@\-tߩ3`-0`* JA&r:}B ^ր]+ʀAyV}f.^veŦKX$Sttp&wI]fpX0i5>iC;6>-l'+ݩ3g e0#Msm(UAZ/'{hg#tz,2n)X&ɦ%V$"ߧ*9+L &ͻ%8P7"znJyu:mI^1iEw {^8/"!CXPӠZ`f*)2HwSI?eeRY.+k^VT!*fUζVk2#/ʎ / ctX"_N:]6I}[Snmê{2A_zE6rSl._Cz^.I^S;vF*) }>!{+7D_qSA<>睝xoES&:Qģf%{f"H ޝ%}ph?2]a?q駾&F%͛ *8eVgW "RpvUo%Gq!IEr5@I\UEt70֊M\%>*r_%#mh*hsCEŭiW׈ v CϪ,*s `JӋrB~]m}|iUNժ/ԛ|zxY, ]K}t+&{Bc7_0mYPOc;]&imR6Ycɕ\u{ Iq%X0iWZ~jN.)?av2-woH /i;/B;JZ GCK/zvnX%-G겼`bӄ7PU469ں{<ձuLD G$$ -DPy8brPI!?`` UϪOt #&5Y8rcYC!_9 ScB5X ,(a`ܮB{ 膤$0a@Sb]Rg5zE RzڽYζT` =mG9Kl4r]9{mb0ʪή.r%ֹ=.ahˌ†'W!aȰ"-e-]?Kd }.*mn'e5y $=#7Ӥ\*~w.ฺēªT)Aj"K ;=ץ^%=)Rn/UfWܧԟ*{:z|q\MncGs72˱8,TcyIW+0m7ƕ 3J BVj_肿-Ԅ:k,Ž2Q̛" nhkYX5TL~ vx . ^4Ƀ XTuƕ#/AqYwS]vL/B1)b/w߹Kkȫ}Et='+V\Qv S>FzAADNB\7+9z,)0g7g8FPotaf(h︗kWךz}0"Kvcbh&({Ȱ|E g_ ?J, 2ȑBƯ#P/Z-$}d&;Ll AE[ = #;0l2+w6C롫%]]F>ĀK?Hn!M#hq'cS LË_MY^c ?R`oM•A*&|G~;wdTlrM{@4ӨV]}!RDbi sdL:BQCsxK$ i6zE1_Yj=Z٭rpmt8a yl SρLK_cJA<!̑yC7~QC#l sFYS t /]QwX F^_Td`սAzE*kV%Z GL> +qKCYnZBKG "tE#ssjo{:6)6.HnpH_;W=8><Ҿz=. y{7`ºs SѻՃ+n]rj"ι'8qjVN)-}=}v[A,+{Bӈ}ɖ`I~K% -L+OX(\{7 Cuwy,V^;ws5bVÂk#`B*'k`k1!Uyk<¢wz޳Pw,=:TϺ e>?VqN,ۼmO{nmMR0Jf.P\˘*v*t2".m+Icz?<=ǁPbI:&&VʶK@?s9fG~Ed\R"Gl/\](DJP@rDP&+~ۿ<0p3ĩb.9esKm󖤏R$ŵ>cоakAJD9G͸> FY>k᙭ [{}x/f4H@3[+0V 9JwfGAYUlbɪ0L}GKMwu:nάOn6Z,8Ͽ70u_]Q]@j1PpT8lo[8wQy b' ݼl3Evq hRlDG"B`+qtOaK4y:dٌwLƜ_yYɞm[qv=!U#-Te^%< .}-|ȵ͍ƮS<{-#F7()Q:Ի#m `@bWQ]Gh TY@-"*)Fa(H2T 5<63+Jc+ѷRI{+/7^kHƧ"eaMƑTgZ578rԱؙ8%k`ąK 9 st$bpC1QR7pGw&Zm+Oz/c6%Thpw(1+o@թd`~B 4#fԦ&4o2o.0¬\fPJLoI_i Z4sv0YgG)0%mei}a$.1iŽS[лAuoȗjLT?̩4]kM+QSbk 3v%?s x v$o;c&SH4CKdwceJjxzX~/ɍ U=OlӑJLvKҢhy9 `C\FRM 2paLu*:Q!c_UIWӟO"˻ WPpKQ~Y`]ֲ8ߖBJTW{#tɘg((ѱ;zHjn^˫,(gZ936/4 ˄2SK!̶3xN:FAQ )]_\X nCWNm7$C{8U jڽ`mcE^V[fgbTHUjbb0Jq*e^yQ cyc@U5Sꕗ,5V{vl"{TY_*d,Ab (K?^ߘInT]>d-.fҏ iR5MY,UJ'ck^S2{X&pu 0>9&arr==d9 ?Cj!$xWBg5$';Y07׈.w.$Ӈ";B3ne [ctYނ]92&^z*/ eSc -q,9ʖ).m##FzgS]t5̗‫S6mON?b:D>KhN;>f>7/#1z_a=m4<>eb]5:J~ 2>.aiv)3f9ċBPΜGL8ٛ<(0&issjw屯=6/Y̎9-jsyn mPVKRJ=Kņ`;OUx#r|S~$ThM#_~ 6z}9^-u49#F+BˍZ9Qg.zU-k.`­syoې2 J9 `fumJYk>GiQ.&^ IIS罼[+fTúa 6M #+r:GGh\` yɎjW7Js~P,6T2'd(!n(CBO īEINwb'6oJ5Bh>_wa +}LghI)p^Ӓ^ܺɂ~AfOu=uu#7hޛT\hW/Nf͂=G#b?}4=<07Ma*\o1,[z,ƧÑj_:=!xx mf̀$]B♬MN};URu;iyJG*Dר (HgfQJ[\=U8L,s̄7~ ,Zứh`QwDJFPyXYů|b "^NCM,Z\S-z5j_R!|3H]ô6Q]0$ᓞf"ޠjyCP|\ƓMA .դZhĤzbZ)#x¤̾]Hin(.Z3 r87'4`z<1@x -΃ 5/tgz^tpFc:VhPGPE Tݾ5|[}ϞrJTC]<F{ǃ+_GM ~r_/d”X^>qG7埄ijDsi;Q{BMɁwֵMaN 5"iŚPF<շx}N ݊He >~Jy0G"ȅXq{v"r2.]H >D_'g=GBYTRsMB6W6Le{W͐\TK;Jd4o`@מTe2~@>v@h242JWSpR2q*w%-x.ҵt:@FcSihK 9BN$ֈ{2wju`\kpϓ$x6KVtjy%Zڷ^=]O7etOm= c{_nî4Յb"p4ȡ;_k-\.dQǁDvѓ0Š7&; TG"O) Ͻ{`߇K -$ժi&yȱ+8c+EN)ͲԄWq'._$/SkNRƐJ0eptO'yϐ}mY:4 g_6Aܴh"HaQB₭68LI![*V5|OfQţ &rN0wCKZ=`P1*nwsGƐO9c_g{A}g$b;)>tgM֔{٘O-XUKGM!VHyIaf847|.^|cW9 Im9|{̾ ] wr)9& 5;ڜO-{ѩ] BJ{Ȑc/rG`(qG>I~E֨Q11>o1jALVau=gJ8?J+o'+RsINUrN9CqjoW" ^#Dqz"J?^.`e 7UJtm'Q:@VK>[z|LpŊ=RSf069v\_^hG N Nzs_pÞ(T0np3%H|VDC:"\BMVDSLP|#>5%23v0t>$Em"/ܐA*pMUرٟa>1PjLǨ+H'0sZi١'0ʬ.Y{bD(15 pS>#++Z""C*tAY4Xmq1cs5uclŸl Z 5Ɔ( 95M{[xg.[:f*lNӶ/KG~L㏫<îy/أcn0jб.ki*anzr gO6d`HFcW/g*h#[yG AZʑ4,{uøʤbۆ+iﻸ|nO;k4ߵ^cí+e]/;B6 oХJz3܎,KC,g0HQ 1ܪs(Weq^*?mE~kY)@ טs#Z13e 9z6omYhUV)Tm2::D=bg2"kfV [C$Xs]0=/INZ,D^DT1 F|LRVӻ{/6PbdÕS<`DdfzP b/LiSP@}3Yv_NJp(keF]aҳP& D)Ja%k,0S5\Wrg}`@"O?),EgmrFJJdYw-g5)NCv?y80,[%R )%_z:]JI/בl,->n嶷}%- ;6T%ugԕa"n#tIgXLu9!J<5b݇&c"9>-gk@1rHTZh>7`RǠA~oar d+]ߧO*CxMK(TkwJ2oĶ͜iTS2¸JDM8 =lIWG"=uHPsO>u:s?Mް*%',}]P}>SA )pV6rCr _50d>0Ih]tK~er_ff:mXM2QkDC,`vVR;BUC27at@;ʢזX)_Jp0gB~Q|?.K=FٹE\1̊z䦅GXJk-V,~Ѧ\E13C]3H\m%^闵&VTdn(…'R[^."'4ruw .71j#FŰ3޷[i x0`q]fz@+ ղs "8 ս0u\[jۚ+t̻#<6 +vM0{)[/Pbz%3U; Zb{Ryk25; Yw~X:yCYETL}!Nag(1k?0I]әbщe?k bX)|nA8q3 /Iow\rF $kW Y=[P BZZw-N.dQ[Ch3}/!]n(QOr `l"u\V`E9M eCl{5ԮeY- /qS ߳>G'cHEXyhb=TiaaZD\y 'Dڧ _m< 5f)q"6&0-ކ޹C4eԿ@*$xsD; Xy i[`kbhI>3!r2Z;k5ۙޔ"8W͛ Hx3 @v, 19sN{N7 ZFL6=G>M$zvvV`;$[-ejr1T4GT(`#/lɇnG KIqeIzPuJsb!A`,}Z#PkRfFv. &D*9jX vBcH~BRDPsڨ "!*Md]9ɵ&4./WÕA`Tj$K*/\d9kNie-WYYev` ɩ̈́tRĄ2W* W>c: !ie򚴥0]V--0ޥ@-|$it`^ۼ-9hqN,ҩ<' Y: r<وf& fAxWdV |eIy1~B<X<Ws|6Xa-:&sitsVu" 6+i0]\7DK5,@J0X$UL)8dr];+@= B~O,1B6l{$[5y`5ȆJ̔LOʐA7x7Ж{]A޹I~gy!8u^H8"|~P\G)'M6?A}NfAd(:?s|QmyX)[ؽlh[U9{i҉Լ=7} E>E֘>)[W22v)8,hnY@%|5sʰCW `4qKܿY{ RPsY^|qks#e{MaMW(g 8&qKi7704WqXS 5Tm$Aջv]!kNJGr]u㌳ZÙzrfF8^ALVXR6m>o|Tq(Էl G_wNYPF=5't0߀qtV&zl"0oZMe_9hb@nJ dw|I.pmLM_:Ѳlqu~9$;Hюwta1{U..xJmi@/̝4wvq} }bAEpu$IzzCM#7{eZsZhŤ{2 q,9* ;S졅AH!SIOEf5=+"Pl ' fҥTtYfeKP.u zC2%i6AFԋ[`ôbl rv3X0\DZ ~fN¡M # nIoC:H({U6 Nb@e\U[_DaoۑD(Qm^.,P~njYi/Yc aͮ[5Q'rF͊6=өu:pVpҰeaP赁㯽>pdg/]B`S!aǯHTR۲QM}LQ*t ?H|˾f\nC3;MYxxezoŽ{? CHeCFe7 gV@W* J5<#i#<@J.9L&#YE_bH*Vô)wM}8YݤΨ&[|h3z"Wb]iYlozxk&&mz#W 덫7*\}($PxK l 9yIBhpO7,HtN9vMu7!,D^2NTieI;ĥGrc+!Q(#G˳TуW>vhaϭ'ϠΩWIk3j=uTLp8|:. ^+mA{ƢH n4L[fdm8?:8udoK]XA@t( 4f*VLjjVr!;jjm)MO9- u(4d(N2I?1dyϐ+!3Xl#&?gaI@BˆպV Ո.rW&qRDsC߼ua8i3Urр>^V !㢐!l p21&'(RQrC[)Ig(aO0h;3q=9Za:ge}uYWjbg;ҋf6 |$\.&WAWjka@` ]P-ṚoAGRN66:d ))6,CrPU Of3XO/a7kE,lb У) N(}Hwbl;euzgs߭CŨts^''(PC"VEHh@Knrz4Jr-݃lg,4Rl!];PF_<*aH;Ԗׄ8o!|K=ʐ_Upu7#\B.wκ_j˶g`pS?t!>-t }uuֱʆ^f`cP 0=#Q_>+ˠ{ i(0;")7G_|Xc{}nYv aDrb'ne1J::hȟՍ戣T) 1ְd3)}bٗ%h spݡpȌnWfeUszA@IRiPz(Cwx3&fK9fei_؋6S:S}VTض"'S  .3]L?I:,g]̣_Oxs0@Bͭ~( m`*tz %hi#k)\l]:"lm6DB)O7Pˬ VoN7:0.oWwݦ-$M{*6ڗf멒@Au)czCwO=LrHml8m#̉|).iLVО<$AC՝hyxy{p휍*Bѣ OGVssg_h-WQq%2%53l < ϗ [-b}1Vhv nA)[_һ c@vZFm%}k6Y>iY /؄ )&ym!JIP'By:F?i=<δ{.C1rw|Z0nRx:e8cʜedja_TL0`B u(l狗KW^zsb޼ qX8#lWT7H%Ƴ||l9RGL#X~˻REGgyd_(UL򨯺F U3#ˊ&ĘMi۷4 pwPub@|m:eA1V$ }&@[djXI!Wj62Щm[ n;3O+IJ0-APod4i319@q")TQW[7(ٷ6']J[C4d&>%Tnna 4R̨DoC.C7]F +U^[=1 ?HnwEy/OSdn[^> =+qV=&DPpBw]K)cm1R8zUό9J2$WNs8Ϟ߂fY{H$y5-]U[b[4=xmzΣR_~<ѝɊ )f f myPp^4rF.jr]sϓ .ZVb%fXñ;X|\)ڻ _5Li DwN4Ef6L$ϑi_ϻӔ!ɔfS k3):ݷˇJ[4g8+h_AP3TE z2籷tx5_1t|1 R ]=\-3ɏ3h)q5yx5F./kѬx0&.z1tl6o]0?*AٜҦhz )ϱs`|8S\L:XsR8?qgAPMqHŗn-|guePȽ őt#uܶO _NEq>#Sj!q/Y !_ o7l Nwmc驧cw Ԍ)j|F/TͥqX?Bq_f2@vK;:>d0½Y.[Mk>0ۂliU&bg+§5['E9f `Mk?uJx2vw'{3l@;ݟDPLxy3Z ܄$!pbɿ $dZTe :wo8Y&lJ3fۣ;.]tZ I7lP%!5ZFCA"js W0!z5 uۍBnaPjݳ5[d| `!n E)JS>+eT;cds/l"5 2u޶w6 :+yۙMQtܺwvtUW ^a&;ݹ]o=OZ:Jgu 8d?j!¾?$60O51Z&_1 /~{6 wR`)r$-I] uq7y Vߦl64 Y|&Ց-`f yNqIr.bD0sBJe7^*i3SOpl1,ɸ+.ǖnvLQS 5< w(nd-T<$t/ߣ˨~ %@ap 7]w η=OhMj6Ӝ#4'F"7$AcM"VR.*C?ƽ7D-io$jb&!yxZ \DT: |i-z@%rq<ֻ]kJ~L1fL 8 󑛟8K, ~jzc [9f &F~G7&LK_% 鑖I,`<(7oLf˙?g G Qo*:iqPLEnrum=b )!FkZp楔Y1\̤ߠRX́ѕAz$r޻)X˳/@$M]"UW-qUAEȫ{/:[1& *+ [#-F 52# !-(`EeDX@Cgs4#ӂ?-fQ|,Pc~y:kE)8CQUiR$Kqh~22{U1 "@7hgM̙0&YRŃFA&CNXo7}SDgM|B@w/O=qTC܆_{UweJ*kLjh#JϔP `]]GB4$oy*g;eTcE|9Ѧ6iw-O0$lpw9ݴ?W;L%K罈a aMPW.yMiN#vo&=hۮn']zAo E<\aVvYAZ8^{eYۗR;= )3iXJ:X'~ iVffm^;\b\XfΚ,sPGt}Z 8-+б}S{qڞ8GDհ_*&Q2D C]73lo R?1fqu@zp] 1=`'_EEE'۪hm`+?k9Mصq69KB.8K@l1zX%93x&aFh_Pw7h1/.R Yg%eCY|C/[:R(C |\4 V,_Q\9neEYϰ򘓢a1MڮfKdԜZ L;6h7J{/Dv<`Al3^+(TT[K(hdar I!TYS`'󘕞Efʫga$FFH׏~_чR^4Kd؏ư2gWmͳ!pRuT]E$QKS. p ,*ljUŻ*R<ܨY&n[`(T(x@N:Kgr궮2W"v/0X<ąa&9dzN\}{ ǁڨc&1U  ^5i AWGS“XRʢm]tN*  jbQZyUv)x1 KH玕< 0j}9vgj(79$: p38nYS7'fsGPd-޻Љ/@IMP!!}[Bm(08)P306GCJ`qrM.; `؞YlhQ )u(^\l[+hK / r0}d >ta`ҬhΈtYeT WڿJdfs C M@ǔn&0PD'ز#6vFiU=B-P3qAX1sŸur`LDavqeG %Q3\%TkC$#蜑+dC0KĦ0^FVoOe[NKrhVI/e'(nCڄh6ˍqQ#]j3$7JYinQ0|dE{V}lO)Lü f%ԹrMA]Xy ˺Uʳ}}M3$Z68e8c]?/ „9\YGih5>},58qhQgl@nfvn1<RaS}.e oL ,ՓyƶdĔ?CJS,|^fBjBޢ/ TQ4z^3.FҴL8kta$V_"՘ c.>U&'V|VЊ).QSZ6YKSO6-(3f<'1-LY1nUP8Z>Rp"hXPf&Nɺs/HX 3A vj(7a Nf!ܥ""`*.),%`ӂRo8弽 !!1w1w) xSqDžyԭ⪾%5|F8|#&Sw~<(EZ¤ G pC/h0g9 һ< 1kj䟉{B$Whǘr>@9P+#DpjLCIl5lˏ+T4rߜ(zoB RW/j~a>m[ ƣx qUcn""\Lz;ٍp*y`KT/HvHRփ2Qy4epۦ.q"{i7IƱ-{3u%3OMZL_#(Go7\j@WNTz( 1p,x z5V@+YLK(f¿?ed1Nt w[cVHhөyQH|یq&k =G.ͶTJHw-,<\0`sU w@QUC'tK RRN68f5-ß\Ew²4dq~ ^L|5$?4+qyL3pL6unGh&zbRg8aABa`a<4&œ[[ߌ I>Ox8LC6Us^ JT ]dՀ^,wz^R=GO:Fw>揨a@P +X:`)}E58Q2r(O#:n|!D͋?~].[4LܳƧsʙgs Gy@>f -XK1ddU|)vjshYy%|Bpwӽ05FL Xq:| kt2kJl,/^lhk(r9AE\(eJOtҹ9v~xRF^/3zڄ̎T2@4@F;͏G̸*'03/\)iy-x#eM{֦P'.W{TVS3֓ä~{򐱣[gTۧ4)Ķ;i\ n1Ib5t,+`Pe🣄<Z@G!C ïqg?֠lZ@Mv>/k,f${ռIN5Hy1=H$/q-67ϩ%w,y&An`V:lF9/iTHa yǯ`v'UN?>XF)s\nU."6dyz N KrVc'K??cGÞO-~AU@ƝecoZI4XzFoj[Bwܝ?ZP/ۥ5:nŲq.su+Im{d͟tmkE4.9ɨ6PME1]5yXl Xj~TbU&⼟; wRc;ˈy?Y3՟9}iMܚ}O(=>X\%]ArNo),z^3)Sw^@ݩZw̬"׭x`/&ap'ea-!略eaBY,CSЭHt';m֝wHX-'y/ig]P־x/<}֥*7iS(eƑ=askP:C6ըFJw*+vI#/݅:߫+j-%ƫS;H1BfK ]M!T#яji.%G ՜^/[wŀ<BT_YGV[5gADVD "e jGI8.-?^]i0OWI@X < *L7{){9}0ʸ3v6gTv,i|LQE'g\aU%0ܨx%%bAF:^tO p zOWu85( D,~{F1XLkY S|BuIMRZRUu6Iͭ⇃5gu,E{ydjqi*>]^;|DMIߌB`G沧XYgQoiPh%A̽d :R7!|xoc.x-2ER mʧY"z.a~3))q 2^,hOJ)-\BDO2؊G| #wB|nxH0] ZMdqO;g՗;\v )LP9(싑 /ržց[4P.!4 A P - 2T}i'F+peͲҶ8Vt}4`9-L5lǯHt~QV,DW7NbUbG$D9)76 X `\2:Godea^G{@'K Oh^Q]ZJO^^Sv5B>$zq91ڡ^ 6Ct P1;`Gt$'cPyL>""3!nxae3]ܑΜ÷$MIe7BW_TG"W76ʏZ+WhL4WPQEe: s1d_n酠{|ͮ6p G;.3# E0D@玒Z`^~t=Ă`DHs$(VjMoJN( t>je<}m]>A[@Ie ֬693+״Y.y\d`A_45`JQie+z]C&23,noE1c ӂ_qqFKģ\B;p.?jqX`3*>r2YRJt{1Viײ[C@F\b)]l~\L_!g's:5Zk{UXBTDɢ._O&gC]?H. 7"G#Hk[T_bJckM2p.$KA8$n"X̍Fۑص'sϨץe_E 1eJQNx>]J+P”F SQ{ve*mD"D3ZT mꜳL*foE83e8 /V٫Sk}<d1 uʘ`Ǡ Nj=).½6>pOsuxG(8G|I@SdX3ŶҮ_9KNu f`<7+v7;ԧgt/R#ʓؒ&-Ӫ" ŞbɸsDKKʹn3Yi!vQ>lT~5&_|4։ !0qiӌL:Z V3aF{. /nԃI)~dE- mz&`*#i"DDg ]޵*uQ*&keWb#6i;&0]* Nڏ3dTG[9r8#0 c25-F<30uV|Z"_ &[o2 nNEP ^{_gCso{N͛uk0bHf`QFZ7a"y<~ i?XD @@՘bz^3[/LE?YD7ǥ!0dR T &6p8k/t 35t+ḫ /pؕۢ&:A;\zk$tL;b5QΘ 2O\kk TxT]d%RN_1CAUGN5r-v3:G%%pWhZq{]ZAZ}_d)CHnF>g΀Rt1'|e\EZT9ގ飚sF@K(؆:C̐qǝ^>/=,m.3ofD./rengUfEITFgWL ?Bhj2<='os9G݈ē! -2R1A'خDw5^׭.RxuhhSǻ!JS@{hɼowd^$5Hdi/bǵ`)q jfuk~c^|׾Bh +K1;ZeuD٠ng|d\t9o\V:6fv5olT~+ ʙcZT\LbVW4bF)Lb/}'s;OAޭM 4$ls)'-qA@[)5??Dl_YN[!l2n^Q̎7_o?fpCا=A 1%r-Lpm۰IF~'#v-jɿڀeCKcvSmmg{2/cSߤfjHf?۰bJEkq~A(_9\I\~9@Y2 ø$Vi]$ aFt\kK!:`!WO^*Se^.tlڐ~ uZ-FL[ ]VLyQM t54uUX3x WLʚv\c~Ofڼf))6Pn)ނ)̡JF2w[+OXO:O Fܮj$-2IFiR ^Nrxp!Nӟl⍸3bcު!s>ݐ^ '9m4%kFOWsfNXajS #X A$2v`αc9@ mUy+MΥ\fZv%/ h㱨oPv 3Ũ``oc{ gjtY/ Q8JU~~ MVt$ipDf-0WJ,&RX,snۮ^h6Ҫ-;;]kk8qC:n Ґ͡l[84P:d(vwZk,vʤ$,a@jsiWx+$6seHr0ȏD.FzP:0( k4=6X/QkB hf($7\ć@λ9c^<|) j͡Sׁ{ ̀t /qĀtͼGgBwYgo JX(2=uM61n $}Gv6#Rg,;G"ToٚQww2͸7;Ua$k'sbv#_%|M9/[D芎ǐD Gr;p{,r4[ZOie֔٤&x3pD?֌M0T/_\'gwQWX}N5n>PhResmL6yn~ BǴalaY| jm߷jao0,])MpIp;$tO z\(Rj/ĩKßpVÖ|RT p!S/V0 şd"W-3dBC uEe3rO)6}ۉMzelC q{Ѐ/6Xޔ PklY!W!6|].LuP1u$d(Ke`Ħd]ZmHQ=,5^Wg^>}Hv.,)Rw!{$8(6-5>V~$Yg Xc4X36TU g+tJ΁IZB^bn5S$7rQ̓ݐd:[ }=?+W("_5uo"ǩQo~ @rf,\dkҽb!}.ټvQɋ,c B//E8ͤVj#2I ܴ 5H8 ~-df??[6(_KXXEv2_̊)J8.„F.N}C h#Ca?AXRXp%aYѰ ZM ͤ fJ fRWnces`HoE,mC'ݽ+K`_|uTzY5ׂN˂mv({dpI8,rAă zgʹFݤ˴x|cn_Y5 *²';bYn$$ ,ZIa80 h 8WN::@!h]bWpsR[g'x%*&7s;%{g2ۅREIg̱[L`'@Cl~DD*zOdu2f=XLD3;2+'|fk]\b ep@*I<*\9^r?Yt'^htd~h%[{@(!t<nj4^Ko/em]{y֎0)廘5%D|6Sv7X0ٝH_`);J 8 kXX9pܴdp+`iAx@CcC6q//Vr􉷶8a,R0B'tW fQ}ŕlZ2˧rϣ+;K!x# !WOjy}jԄA:D 0WRxf6eIbο#Rhw鏝B*!V;̱- +6 7E7]ָbrcy?2MAm`SJZ "x+%r$!8[E$'8XP'캵a?x"2c7JOwdƖ H+;JA4?׏d&f08!Tvkvܚ)2X0 mgsUj!=UwpEYmc\:>~ Xzr\/wl 7P[ceEa>59y 26ћy6>X BW|zS"$O4$غ3>kciCH0x.z-&둤U d/uOub _d TwI߿3h& +p٣זgT]AP ,؛+dh@th"DGrg^7- _t ð!q.aSj7*@+D&yi 3s$SFZVd7- p\#x Ty%,Gm{\N #~Ʃo;}W֞B4X 7HK<9eJ"J6FEݞDS(0t>)\Ԫ}>+ ?c2n[4}G[.T!xTn.W8sVVm8r7P7vFMO! r$*y/[ XEA"C~Oo߉1j3$@^$(rޠ| # .hAZ 麷vǨXP1)O[:NΫӌʝW]!r c2ja)ɘ23_]ɴ1BzGyi%ϑQ8`F:֍^~_5I}JbZV'ޏ!Ʒ;O $AXĝmVx0xe_;zV(%?~ծȞ`x|wNZ)*)=3S ZŀnaCnO  cuWe{'GR7*eħHQZX-yz.,&؀[w͍8|}Mk >|+Ţ 4f ɓ&>fͷyxvU}`iՉXSRx' d #9Cl?4]4}„GI{^K̦c\I Kuw_bR:|CTPun8F(y[g l!"jxn›|@6Z{WK[=7 Ϗt&)|/w0崽qs{jB͞|?zAI+li{BGO0Mx_n1̋FWN :%D&Z䄥RBX,(}O #.JZ=uח4 #* 6{k4$١8{۱9Ql[C:e͸uy ĵfpEtdoQ]l AW{ޫBHc`$pd.I:qFG(d-O=Հk9&ZDotU$Fai0u6 rpZP>CJ'*Hq;@jQ7ݏw`OZ4 6 τ!bɃ4y+gwr399Y3"ɔD'䌇BPZOceQ x~*reUS#Q]9^h2\T,,I2aaG.J<[@bC>Ͷ@VL=B BW|0FGS~INȮCtMưV{w5A3Ӣs39oCnnO+ū߲4yXbfbg0Au2&huO.C6z_X7c^1Pl{14'NL(VwmBj9ˏ0)dO f3@KϥY6y(聅"uxtgb#;|C-뛟Ȋ255 HSJwtFƒ\^9_ SbNtlX f-Yoh6:ԕʥZrvX)8I..VyNYBoXifKUv j7ナ5Z'@' LL7i}H^hyIӕ+[rb㵨¹~7_1?H{XtШqLS~U#Cis6JW>&[l3: X11@n<'ˏ|E5t&̩IdiڞB0뾁+~! A910P)N7/ګ}suyVxpxe,oLڞbUsC+?$JgH^5ϠZ l ۂhlRFM 㛜eMP ڇHjC(g=]'s_V!w]̸iŞۘ)Z{|mH, 漧ƶ+A@b=|t4('z;CFN_܀l4?8ڦe,OYzgB8ӻ{!CC"aҥr,݈@GX|m%9OPndjϻ<@  ^nXghk+:UoM0K%TFf|?W[EB{Rzr-- ,.]A!?(>ҺCwj#pe+|,%ulﱋ+^xxi;A)S)S"e_Eΰ/*YJM@bwC蛀ʱHkz˶X |=xewtUWvZ&A翏g,c-5y{<n?^r&jXрh.uyk\L뉬h#b aj'Mz=S]3@G к o=`/M!#л^|5O=~@ 0`D[| lTV-ɽužc$>" ]7 {,Ʀ8k3f/ΆoQgW-IDJM/ꛝIe# rjN.p2YQw?\]VJ} ٢XUB2,8_AD&P*eLDٰ5^antO4=o|.\|G }=@W|ס Oţd{z:Ue96Z`@ 3[Y>Ż#.a)* IZF3 Kh!P/A "hz51e鱺ؙO[߾.2 Xke՛+xpԺqlyhD\݈5^a`,ve/20/жӺǺSG~x \ Ғ@uM{BJb<.}ٖKPE8Ͼ bA3|T`\0!( ˃le۩YY( ܒ8V^OIPc]p+Ztϡqq>SuR4!NLhG&9= ]=aX5fS\=@. NI3WU$v ?lҝ^f5'*!*|>2wNXÎ<Ԕ$cn'X#2j;e&g س8aac4+ aݬb_H3Mw>ß!TqAMҚ,yx d2ΫvwX W*}1`jN'HiLdA2408H 1q0/!5eCIH<4ܚ-^}I}h3 E+ jKBɚ'&T_4YtNРI6U'\h%k ,uYX0?3 b`=>U%eA]bbt,bMuTLl1Y'X- ʢ>Kڼ+T,0c<9Y?gA?`:/?/ uģ?"ulFI:"ڹSs'O 8htyZ&Q)V9vZg(tK%}Dt<'<~Ŋ}4Q(" *MxmxݕЧ~džGfD)^Qw i$ |\p\'y[ځ*ݕb#ѿrܠ xAguX_MeS@dp>tV"Me̺tdE2٭FWHyYYf|U?{8brR9@CN@N3 / ݅\t҈:J.ܟ8&awWDt8gp)p˶8=7Y<:G.;qIhxMr;hFzuJ+a 艔iрNDziսIm}t'ExNF6c[ND7MT>o+NJK!3c l6?N@-Nn*Օ_傠?VX"S5۲p|~yۗղ+|owdbˏ$} xMg]D%P_J|Tojl` XSʛ(Ya@yqkw7ݾ($95\ȗMq%ġu%T8::hWF߷6(+>ԉywS0`m;Ωnu#XPRDbXiB-}/}y۷o77_lft}"qɊ~sEƦńaxɌ{?_+ !*!O= F;]Ǔk 7L:w2l5rDyFح Ι&F-BCyL;OvYz(mCPsڙWW:(>g<>G[)5U))0:$5NﷴmzkS? E̹WE.}06e F5:]ÿ1!┹(t{v-˪j ~]1նZ3Ɵ|z/c0lEmE֍ o6FWTt3tcz; (3 ߤFcO{~fU\%hP>Ţ!iԍ3 .BHj,N'}:;s'+Kd:,`5Α >U6@G+xoM4߼8qTLRM{†{`ǨUиBQIW\6繸D>VTPCu-R064X‰s}UGn!YtycOQs-H "ԍr c5>ZT8s8ɔZWmFZQS-?4KP^gBv.S{=gm6߼m9~_or''Pvr6*(SRtK%]^iP(v TU5BT'CZR$TTV.gCp]#i "0e4I9tɑY6vR>_TSN^>ti]c-/M[$FET2㌆Z{CAYiOe-tܫew` b $Yۗ qERPXc,9+1(\k·r0V7We8,:Ϩi29 5ï\(lzT}k֩;~F'kwW9ye svX7Gy/s ]gIJW`%ͨfEjY (w鋵l'?$YSn\^zDبhuae8u$D=v@( ̸5=Ck{bsȸ{Y*OK]nB76q%^fȏMR@23X[0&3y,`^Y 1b XUlq=/l+{Q ?o+@[`xB$*ף ,m̔mN<( gc˱Ff͠3qNO/զMc{Zw)Ϲ@vyHG' (rE ]Q T TIq{7$Jя#QMw{'ɛgJuU^Z(ߟ0"+˳uP4; &ʃUNX { YC e* jW4@QK~7 m[L}k_+A&@)}`xngX'=(Xqk7擩r jh8\(Eq cSM]bv@RcqЂ]ZS2ԙBwf(~vGf|V=A ۻ^7uC"=27*wڴ`3C8'.@}B9$E}XN֬EpW_ls+̓BaРQ-u!Ɲ{@I@{5 UP'C?r[Y`Td@;yb(ad$f":C!ǔǂ D <&34{9< s1C|ϣ|pѩf(+kySu$Ӈ_5{R#, *C _T6>-Z(.UNqtⵅQO̘irN΃W.+ZeFXcen ~`]N-Eϰҽնap Y A׹Z -ԘP/w~K&c}͞@?\Vs 5l){t]Y.ylQ)cTOe ,?0̏ O\)gk 2~wR..[.&"d9T,DxӚX K_<7~`qo?EjR.I v6նP#2@ZD l4EJ ,ɣg'd:> >9x^*919D?O,Nwm?>Վ8֩8\8 "C[}nO;_T)%:KB83Dw %< S*B_ CՔ']ď169gYcn`p8Yݥ#a>y0|T֘?j4LwvG]i1U|>hI!Lb@B>cmAa_մ IsQIgf捻8y̋F續rc Efë]XE!KEC,}[6F,6 LOOCk}M?XMz礐pWCAȠhTg1Nn=MR."\Dz̡ϸGA90u{ɪy_Bţ,q|Bچtm:p^ E C?а7paĢT+ CgiP+LFc0Uxo˚c8ÝԴOTMʺM2"4[sg`ݭ) :ǣdkt,)qEF{i ikuk-yJA~pBK̬UD}ٯs}aՍ)|¹3D'7ܵq1{RS03sq^6,cuݬ-t7Wdؠcb^4̨wp )򤴴l1\?`, 48E\y- 0QxM+?SFoq 5?$w%KiR3>vC5*O.\ғ|HP9V`2O$ɠEBH-M>l_ V,(6uvufC?z =/RD# l6w/ %EZˆiE ]YtwsٶkVtulF bhj~tBTiWWLuv4LPn{EB#4VVu-Ez4:[ܵ2͜MlS20Δm?5F 6u3Mf3& \nɆMH>'k6LV.aapj^T:̅Yi$+Cè lXu}"\(#BGtAя^Cj Pƅǚ<6xJ?f˂7 ͳM}b:D\.&cX<Dԉo#ŘKĔ]~1YT ѧ}ۼ@ jàt+-iP`x?p٧th"B&#봵<K=s4$,ctRk %{#[C/qe<ʑCo}ߡI_i=tҽ.fwMޏ#9o@n7"{YR \xf/=]̷ϓXS:gdU [UM(ܦb*¯"Q-/Sc{:(Q#lyy:s>^$4'b 0S".$={AiY. O׃#99ȒX ظ/ŎTr::^55Cfw=o̡X=Benh#]r Z%/'z/hn^uis2Ɏ˹_Nky|9 *0ZgVN8]uvm!'Xp8b୅-N m=olEb'PsA B;D8|J?eH %UV&iaJ}ж?SbK|TѥD.[UVYV+61k390EdHðf[[wŌ)NU J.W3FK-էO6]MsiWC8B[/dGA4h.a@T+$΃7\ &GS4khV\K1}DЬXȲݗvNoEL1C?Rbѳ7 'NcfeAv4#0]Yp Vΰ ԌrƫK&S}Lꎉ)-ECVľ Tk.TY6ҤS-;?18{ǞZ Q if\B]NYxcpuftYwXMOۧ QhTG%6S Of9~~I7o?p >P-p@~Mǰ YT4OPpXTCE}!YQkN&XէDһH"oY3e8>9YZ';FxdE5v`n cDqb.ܠXe ()UoiCj0ukx"qCcQ0'ʐ~,Y(\)cZ Ɋb$cGp!滱[$i i'!Hֶؘ ZIY5 rMu 2c~acNJ)gl5Dw@Io[WJҥ>s}*TYppa1K%MsXڕ<&ͦR/ Z tz":@?YȫW0Y$] )s6' Hy6T!5mh, ͘κ\TTW^+<h)UkĪ˨֣$0*M)^}>; (U{MU޷r蠐i(J-f7> _aNէY4ŔZ5)w`ܨ|Z1>QG`6aܟglņ} 18zāR#6S; -ӡqר+,f1N/^jta NGXUNGP~Bi\ 2zzF"BGqfW ;`9whc¬[6 +j\{XT̺6(PY| ɇx+Z2'N$PNrAld3A!ُϙH8BB28g.ш3EiW\_$sPzIP//:9; ;OIC![?Bx2?1CwÉOBd 5d7RGs;cb2ɮ.1؟nN `ڴoG!a&WSvn`^rW-eiſ3_Kq$wo W|oo4w[`Q1Oz-H藰!nr,eqWB;7iAٱ W[1Z)^UʫH뮬2%Go3x bQ=WJl!{p 2zK#*x )f'd'mPPRJ`=D'R`. Rj}mL74ahOn@?FéXTV,++R3RTsw& Baq w-׍~4~߼ےAl[Ы٣kܫOm=qq]EݜL)NgM|>)+}5ArvpI 7pwaIƹ%(i oub*y墂Ǔ! ikN \~Q[τgg( vP IH$!}@?"V?dR`7:n:=y҉& j oHqc>(&61 NL\%YRW%TٜLl\5"2]B(N1yAQ_oPSx isr eek'46d&Hr'CphRxH0OVy-#|[02E XӖ\Ĕ`Y3"yKJ=M ;] j$Y: '/[LS?}#s(` M%7ziag[ K!ԛvQRH)>Iħ7~4wZ\ğ޾z kF[ȓ8mX(rI> J2|CL2{㞸M [lOJ߲:azSvιr%}TR4-M'0@"ߍ)"o 9BPC4˸jlb9  xTi@󿃇҆["@b@D4ALwf,mB+PGgKǦ(AAvߝ{"GC at1|ۈryVqHi\s_鈼AEФar+-&)º&O -cBpwP,ZI ˯c[akx͵ ZWd\1a˨8S[;qCڨhK,1'S?A#ghμP[ej(˴ER-քARIԽ o_kezJqVvyOan& f=)}NX||q]#p}ۗUf Ȏ4bDƎu 4+匀8pՋƏ |X m2v?t0j'?q)EQڅF~H j/k $;dU<9X%4=HkZt&apdۤ/7X~v[Y~rL%"S/< UtWw]~O/ ӭ9SprBˋ_S^qD!|58qiڪOݨob<5rAꆿ50,% u+k6CZ\Ջ[$MՑcl`"5Lmڡ@ra#dK]fѷsQ8(eJ]auʆBw@I 9q>G`a5B¤!ܲ94h;GaFׄ+hHMX#\[f#Z-?0ҐO!ie7Ȓ2}xbn!傸!bfV6*Y aޜ\}یk>dֹ(7E XoY ( WJ Wb'@.N/ӥ7vmǂUx;G#KsȽC>/~W.sG#HaQyiV)R~s\VA2\H܎`xn /ѦmkK]gp4YMqizVO$[϶zO+NMy2q[03np & ęԡj]ck ` aP]osT>Ov:+{dֶȘw,d/q}9n#yDޗ|vtlȘ';="Zٜmj`8Kq S,->Y؄S3Ҥ=t]&DN'|=X]PC;ะ0eT 袠L7xtFU#K1If CbE9 t| U4&GJ ,asD;ü7qo_1׃F;'"å{MQj^ӵIডOK0OlޙH1l05\[{o"a棗{܄%!NP/MMܛ]N ߦz`I*VY'LLCĘ9W &s G`Q^M/I9\8L jd)&f`ezi/9f svTk)S1y6!k!f"ߢ>uDRho9a^Vm0pGk`722] /e~fs#T8lZ0k*IO:PA`JK g=T"FnUKRC͈$Nsur4:Cl-jEFZP&z[?DU|/xidsăíWJvURH{^@@u;td#l͵IiOň+&ͲHǕ\߬93goY&7 hpKJ Bgi߿YoW[Cx < U&Pc:EL.j#{& {"6-1`tֿ׊urTKvII׏c`x}~ƞOR!v(|,]y?@'}(z#<} ;:F܊gbl+.m _ (5M{cnܿpJ*CO^zXٽStK2XF ċ aϜkyPgjǫ[aw izgZds/pw)4ִVCT gl8aW)0HSb6 $TěQ a=)ZϕE:O'D6(h 5A ŧ=J5, `ՔP/NGY%+tDD F8 (=rL;ĴKm.o= 4@ŠݦOxtq~%-őr\ŒY~=j7p@6,8{;7t&l m{6ޟN̔nryqN/oc#wAZjͱɝwe26Q j=D~J1]V hћlS[fY')'3b]sïQ~A2B[NNSc*{ȀQ8tH5=>& i*R)ee%A\h .g,)#<_͜7`T+g: 6iobbVu-gᒲM+Ub؋ig\MB9+*݁ 1z+ ϟ(APԡ j०v=c4/X0%~b4Qkz%1Rpf뎢ْI 1uG~j4s,¬OR}s/3wiK4X]+f¢@]ٺZG1 16JcY}Zt{f. o/ :*ȩI(eF^ 'ɺnTRe0pu:W'ȠwkS2en=Ibɪ8MyM3:u6m}ة `R #q}z]سUДQlA/O uN ZxOxk.jlTqAWI, 7'` V&.m;n D<e #cD>a$ڐ&! W UttnX~Ct PS=Ɠ.- nd8^^JU+Nds$oC;^|gPu!W j]: U5_HK" NHBkP &F[NyMW]1ZRҚ8eU ]S3M,ؼ_qԎE@|1$0OލNY@HG{0]1ϑ8߰dhp:vW{w˿.ujT] /V{ѻ857Yk4WKJ><"k.97EM@kdѓ+-ag5* v)U yzX Gsvd CÞG2~%dUHHuR@eI!]б'Y=rX& O9[4yNC7;<ZAZec <=xVɞ7rKFXǃL(EJ?H&!}$uv)]/ ܧm>Ly6q D`Wjt)!OaQ;?϶Y<|k;z3:o(RW⒪l2D`TAG$ܓ*e 6Qe3ɶߺP~VNp eK >CxG6ĕt!-}qPH+NfngWuhZ_HGm*QA\QV4h% [-.&ϭLm'*:*YRf"$D!&fø?YJ_Or"%V]nPx I͑u{Th_v#UP^zWtd! Y_jGb;2dRjkF,wp{aIpԪjSBg 9v曍dK "iu<Ƈf]?B&NdP؋@y-\|;SxүYzhګ2ױmtqZ:×ա8k<\!9-={[չ}gz`6q QYɁk5 iƄgEsPRG6k:8 şV)f3buP$aբDP7>9@o@Xc->9NMݕTCSI9m!}=I]B]Yjm@i&u&br: xʗ⪢FQ^pi$e)1>DY?r\LTQ.[6sJ }.^Ch(y.+5jy_ܝl?i娩:сk MP UO:|Ikb3z_<˕"obni"F̙ 2dOOIuѨh28'(S^-3zf +CJS43DY]n{{=K0*oV3 !C (nGU%bX5! h\#Y7Ty vTE וX:BO҅MѾd&_H|_NFRR2><>nDMc pSD2$$BMHsW)4Se{*:@$'Ҵ ;;٪Դh}t׀ILT#qbqcdNeNRJ8VIn }"ļa̻ TGJ ֕jQʹ c):E} mnr m\Lb-syG}xFN_ +{ Zranz6qb/C4p 7 qv KKM`KvzؾxMfո Κy><|03ÿUA NrȮQ/3}OJ- vAB5Ċ|1GXZD5UA֪901*1 鏤d4?4d%?@R~Ҕ1l:+jUq;`,La_^-Ins5z6fj1㇙*zBݥoġT߆.4m;[܎܏>3 ĺ yDȘ K+p`o \g䣷8TBưw&JR&&JxVfw k4Bun-*jۛ“^\ H-1 64syEz3= 49. zIhB4 0VfhFZpʲ)Qg4Ս*yaH*d۶V|+Ym$UaKƔձݥ4Bp DY (8R*7٤*0mrⅶR02'[*n1NNp+%f.o- `耣vOMѽ<uvŠQ=źK-QɌ FvcaTL'j\9r boˉ0H6Ys#Bй~yfh qOˈJ8eFA~!(&-ךBAA1ZbX؅&~tlμSyqqB&TpL6G#Bw[}+W4< !|8Ϭ/MZf9H#/a0: ydwz w^٣чta4Q~a-D)I¬=j.we\Z즯S1ZI尝.+rԋ0!sQs5m%q!VecVuxt@pQk.Ig~EW44p)>>A">P~Ћ G%~1 rOo|7쮪ai+~3*ڛvsJ~Tۈ4BX)*7lE|)zTzxLޡ:C5̫c~sHj*Ŏ27wew=OXqir3'YFjz|V/x&m nvvH)ӫ S&thBQXqsCsNkAwĜbYrms|; N b"%H`0,dП5aN3_=ϲTy1o·>xJ&bW~P>qrwH,ݵ`EҠGD]}'(r0jLPG+.K@'18tkuD8`ta9Oކ u񿽔>c톈0i&K#@^}ԓPzO5Ȁ]։|&^H%k挹N]t7prxɛQ#YwS2;3M WD J~˴԰\}I9/Ѯo-$%CQdeo %38?K׶~6Oh*\Rg]VfT*cqkA1cGWjȖ0K8iG߅z;1ސwڽ,d# aͦӈ$hEGOߓIVw€зlr3t3[F݁wL4G&[Z4ӀwRs}7{8ʀY-Ƥ}5t)l$}4r8:"=]UhеZ˗lwtaSfHSB%0*\|\`kP-#Ki敚gp$=ock᫛/c>ɾEh y1.L3yQN8.mG--jO߷[>P9{W) HtY9ԴS ޾p8F8:\M;iGm!wJKC3P %ёIup/ј6e~!K7@N78!-f#R3B%'ОkcMo!5EIl1<$ 3ucg\kp~'zi!ABS/+I{;;ew ?nqd ]c(ZT^5d(tqF^F鳘qsWBBz=/)C]Q v|fhhⴟKgaxON uy&KXKw ~l8$VW >j 1 GSx EF(lu:(+;G遇8G{FpVj|1JOx} œ!iLb. hS]A.Nf>ղU$,ChÍIz\@E֐)>ox*P.cXoG he&/묈9,>}jGJmbf | Kf5ns@aG1ɘu4QM.!y.B!HExh2k^q'/+U4,X-I;9N_dWYQ;Qw[;]a`jк(Eҭ/ȥm'yl}'!aQOȜW/ > _Յav J;47!xjY!T@|e1;8̻ b&CYZuf S ~U8%JwKo -,mH`[wl2}םj.{Ut݂3ߕsFʪ`u9W`KqMo7ǩ!vhp8oBmAAŇ*P.RpIOOw0wg{Ab}4w(~B$C'/S_Lk5z%Sߵ#~'zF`oo,'^D5tO4 c<:vbPCv3_}X?6vMd plB{]! ]%MWʤ ѽǀň]-2K(':ӼvʖY )` 8m)1K>r!TN@:kpxVzz۱+Zn氃309FtuR}*8|DgDWnLZ9v FS F\XgʸaS~"f5<2Ť te i~1 w6J6ɾ6d7`s$PΟ_i}Ί߲NL>`?wt Vzbh/?^ _p\wVе^k5(./H9؛=>x毙KO@ U*#Gkmbfi'͝!LjS82_-W& pq3@PRel,ۉP%8W=D׵/=ῗ`r..NE6]Gp1)Dj]q{VSP:DQ_Ёs=8g#1XA*Q,\`a,wގ*hlՕ9IfA7 ueV!Mb+_7u~fSݙ\ni8prrPDy4Vpg &\g/"kRͮjTP¶wl5˄eqwMbz]\e_aJ]tuU*hI%Ÿ8űHeI#f ܱxWKR(+U Bt1(]NZ~\TC&loV-^/4E򠂫w DJ`n$ro4JjUIuhcV^o+70 ^q؁ ¯$E_@؆D6K֮/Pa$y Gt@5ү7oP2F2tHxeHhL^,n`\rCi`.H'x-NdV܀c?蚴* "=*=̴-Wh6WWx 0wHH\A7Au9+3[f'?Ӎ$RR0C到4CeX p{g,׼pZqJf_L=:Fm詥Q?o9E~dʾJdO[~<t4 6t/hy)Sa84@տ d3h;¼dY`l7?z* G#00UژfLq>2< (S`4+m]azFM goƯd@4LC2YPN%?ǂgePl 9$7iol`-+A&A5c˱awvPn7 ;ވ]^j$_Y?WC}Ttƚ=OT=omiGaX\FpJ~Q@{pP֛&@X^<}+{NyOG=k3wNř8>`JK{M=r5E(-[{efP{YNMM: &d b x_Cu'[EV3\1ru oODd*Nhc~mύ.bAE]tP݄!z; jM'es|'4m)S\I]6H^UNc<dиx06([3)%TxˡWMZ82H·Irg>|'K!3RT򸦸!4@WŞI'^<A˨Qb1aV[0/g5;68Ve:I 4P }Wܻ-ԠroS_H$6 @OyÓY9?:E-O0G'g]݂.qD*_קœ" kע}XUL\<\'FΞć)ffmoǢ#I\}a $-.4wW?|~ܙYɗlm+(jȿ:QTODbQǂjXk+u)ɼq+_Xރؽhܠ5r2A[N~Ub&Xd='pTil9F! uLgG9PLڂ: EKݰỺVFof} GvLQ &xt_ k,$AkmiI::mGA%Am\FBٮ۲~B%*6cIH:73fEIʽ$880$ sb{z?oDGc ՑyvGA8bG)-oe?<#g7.΢y4#Vzh[POh/0ŪTAmRf? u$úw"^1[83b"@eGj[o \n,9D4F]n䒺e5q]*rITP ͪ?V4+a4b }5ɗ G<@Z)ҼpO$ѻ.k^"HXqg;x𽘧--h >L[jg-])MV-O9B .ťl{ߵ+#}+(XndCr}Lq\MmQ#up!fuDaX4)yoK nedsd&0{#!0jmlkBS+aPrk V'gdP%9pTV&@NvE\/wdl [$ ^Z6ɻA@qa]ћ\I|/J|:yheiDzq`\6rXG2~|*_Ł, 4+)!x2 G2fd@[:A gMa`cQ8U]<3vLJ{n t=}L/R_1FtEDۖ-q;`xAHpzCl'XĪf7G6B ˁ/' >% IAX|5' |c~+숿s'Sc=,˜ VQ>2ܙ_rk _$Rt*^zѷuZ&] ;ĢύڝD>TUILDwKnz;ye>i^2WVLfS ^^Hb2l3f: ‚fհ{+=Q"D P|sj t4H/m]O OEm\9ցYg#Sp֊)}[?)wFj/U˜ |ac.{]׎L{s/Ϝi褳0RmF}r 2#$qX]z1̔1 [РB3MeH]6R䴚l$$$ 41^a\ Y okԜQ1ŸpA5)P'I \V|aKu+*,aTxY4 c*M 4 NL)FFX{ڇEy4cݘ)p͋DyeIAF_1G4L,W<}AyKpF5_ʳ|TAjGdCڗ?APnc:w36QC*+U݌ 3aĈ sbGY ~0"Wf&q[k09݃#Xc#hd,AzɫJKQdÕY+GlRt/LaI: ]CډhXaD|mC?CTX@I "H/뉂R =3~K35 +̑@*m8q0F+s+G;.~FAMڞFXs;dEx^n0ǒ&';eınuEtPAiE-Ra Z\eMoU :or{#;}ϼ]-Mm H O>4Z̘*-Hs)SDϸ; SeH[P*C2ۤ\%ĊGCIbhs~}Rbh)>E7_ E9}fպ{#oc$: ޷e& Py&i 弑/(}w\wi#Y?ؾ%H3B R/9րu7p.wi`K 4Tx+(O)aZ^{gCzs \1(wF6˫^t%X@TR^bE $/!ۓ:F0QqC^XX^$A ИQғh X=;7!vM]ҁEA+i+f\UX>P(f@3P_q[?kZlPś}(Q;jZ"7{2X=aؖLR%m*5ң8Žh]NEΚq4,<ŵiCqHY귮8F#̀)2;H& ʼ['O"[LJ?l!9jDa qMtwOSRl 2v%|0 - IH0'tb.OxLfdZ~V{A BT`kraNId6(At R"{rLlR80"\Fr!,s:y8a9ateVXrb=hsʐY1l0c|Sw+Mݔ#$m X@rX%,)e hk?N!לP_~(~/:ֶ(v3ԅK?7BU^܄(t2#噵6sɋaRm`7ZX&yy6  ;M^p*@=nX%6gq$fگڻ01i۶/,#26D ^^_гM7 ƭܰڭOV*A,3E+%\;rvt6x8˓jaօ.7c +Z:Jv.^:APRA[ H_-9x4+t|`Blٳℱ%m1SM2?#E|>$Mg/76 x hIiO4OO}L O3n>uy + yB5?q6rD]!ȦD@tEYu `e}2cFOqѱ9 d2Ev;;Je:eGS=" 6ƒ@E f6E|ĔBjpyt b"LG6 |vٳ;o (:Nj%?h?^pZ'sJp鑧 m0fl:kAU_}BI: /Ѝ uNhR4% xiP ZguQx{eQzAUVyB(އ+rӛxdF57tn\GZzM|!H MsR0 \C@J h-1i!S ŋN Uu|L꜍fɡݔTbVagmEܰyu@C3P y/fo+UeZ} *+N^Y޺X $syK:+:LۦzI7mrUfTA`{=Wq}sшAr䡨|URc8U!I\@G'Qjlם68̈́T|;OLAg@&j~K# @E ak&u QP Z"b{$(m1؎z>=[6g3*:!GYYB8jMӒ`>rS)1eǫ+?qf401ft2ڎP@i;=Mykp<%xh5yI,gm2u!TqC3&`f:!fKqLN x+ǔ ӡ {2KoZy:孢GFbȃY!I`/CPW#I63DUQ1~`Ds$Z@_?fok@ձkX6InsiA+5eǃˀXt[0Be}d=E zJ,6UJ+DA5B]`>x\7%oΓ*UdMݘ"o D68cK*ÎG?u\҉grƋXfrAnj#I.0? e'h& u N)c N $q8AT e'1bO~5hYXt?Hn6'w,tlQ17eWD^pe ~[DUH&S( Z75e;&Η9/@w|P2+kH&Ԑ3G$xo Mʑ9n&#sYj2^w0C#dt˵~=r0pvoMM_zx #14 T<h2A;gW"^;fr"cO'{V}~-a< =GYů8,\_҈HJ!'#V[LavHX|$;-GIȁ3}>>8>E1[~ mKӟ`bX1 R5-ICRIC{_2!-F"=A J%-u+yqg]1G3ŪVQ{ftnpQ?B.S+)0٦N^$+i<[- eox?aTgcTvШ ->= )xvmG%#W%.fd-nqkS# TX҇=fPoc MTW?Yx Hfֶ -"ӏ^Lfw]iJED(+Ի3D൦>1B9HᩤJ'Xn[&ak[bW2m^c;dpq"k^;ףta!"}\߭b{{aXA+ F5n}7jj}Xa@R~(G#>L"Ô PU6GZ}uN$8fmޕ;DdFj\0% *-5#m¬yD`-i2bw>"zE)<9c[VMɍF'A6ȩ3yPHuo,#3r_z]2%էh!}jT,G#k84ȉ j>\:/g0Gy4B_Fhα\ 4Gu|~ߺ]NN7ݰPYDғ19KT/x@kbT IܤUch&[}=]*$xش8RWkS;k$B?8=9ٜGi@U ߮ž&45#|m4))4&Lrp <_^12;A9砟Rtqk\p=?"M?2ߜ,#Y[JvD8ltZT3H-li !@ƵF'$(x(u`TGGPMQ&OV=JJטDGBO)ݣ?aMhl+[rKÚ6箐CP[cC$qD?h?ǨУ3-o$GϺ6EQ'{Xzy)ip_:M2*hxYl2|xTBW>xt߈{G|S nء$\[ \7eV :иJF4(vx }[ke.#Ф}qpâ%o-o]o ̶rQSv4##7윕 q)d?Ifמb a:-CMo:pJNULոN)aUuk;utbh-]CeslA)aS"VُZp 1G݌R%]1FZSc%UejtOY)ȝks:^b)dkvH^;9"tWp䜤Bb69eLye7S̀F$, Uov#Ff"E4UҶ] g7H/v4 s hFjh$rtbeaVb6%N`#',*8 h8f鱃(-t@wL7{x)ODTu/Vpg%Z&P4zE~ zO-kM?}I;Q2VheP[)شj\'KR(!Xzc3Yx+gD0SSVO;"k5e3'85Ft'mט/dUn/UktYvp3({Ҟrfò붚8]qrk/f<ng _&m% ˫,_3\v:,CʃM,;D/pTq@WieJ< k2".teQ=r? T3C&+/񻇓T&c{5I,L#3,i!hwθn45iq\!/$a4mM\,L? q4|ddlU]$_S2"b&8ӂ֎ 4j AS;j!$錷X^BP#qIJ.K:< =!zH~351Uًt>HNWBZi̤j{RgϴoS{X)+T?oq!y',5@Z+`Dԧ1#"r4&lk؄GJ7 H&̈0 {P-RX|ttK ͽ mS?~z4wDGnᣝ*{_\jO2dw&ka^At;[{/֧j3 QhO/hw22;Nm%E*cd䢏) J+lN ,[krs>g. 3or0˶L!o`dg垑.1Dob?E.i ]D{AIRFy1.ĚfYT#"?/Їsfr&kT/ymAFnj)BnA\k# ;GpJ~-B`s^-D5?5yhȿ! EV͡ƙ#z6˔$i Qiy4Ȉ_AR 0JkG$/ۘ[@Ulw }z?_sߔ 7% ƸEI ]xB,6I"o/TIa-2#МiR_ !p,qgȼ rgCN_6Fjh_ÒH5 P;KUYQsf'\J5`='t>˳>A_(X'ǏBʊ1Q: #g'BXʡCBj:;I*/ #H҇`,N8F!}ٙhUS~sz<ڶ@Gǐ;TZpAd1K64j#M)#GhUڒ as1_rk3^f@++haVy/`}/:Y3vֽ3(~>yUi,} R-  Yw .aRo:".{疠-8.h4 =)8r+AY]/#!`8 rz C܇"X}fh%噜NI!bNj-9#wxEC沈NshEiReO$YGn\3w=amuAL厠ݹ3D4/Y1 ;?SQ>\[qu=J*H;6fjr U<<[,m8lSjN nhʁ ; 5=QQ;џ1MIcckHpjѬJ yRMY% ᔤ;cԐ q uSE#pY P.\9'V#=3,_\mQ"_4%=GU 9j@N?c8yM],/Ag&w2즲]sH01UbJkYIx, _gO<@ v5L!?('5Om5(6a1@,fD"P)Yq"bS6J=Ts5O.X"gX$Nr7$ypXlÈi -P*/N!*Dq>&yUCzhE$q'FTbNkDlF4Z4Tgu,z TYNJݶse/np+t?}3%iW*zC{o۟!^X䢘`r v\n EZa醆@'o֝e/fW0yp%3w4? '=F.;Olhڻ6?NS cetp,^ZJKcjJFYg?;,M]|?*۸H|k/vFi;x"!0rFS:=PꇰX1+E7r;ecd4 6?XsD4)lp-PIJk룡)'_`^)3 lT X#SG)#`j_(xHJj-~e/ 747`*i@Lf>fa1$w©fҪG`b&/C "LVޒlDm"\FAfPCqz u&hzUN(˼OU}r딟#; 9-HaM3J",P"? cKƒ*, b'g4s-ݲoՂE^lyF,#;M.^PDkW>{\%vH2 ΧL}JA;}Q3PFN[NtKb IQ` gQ>MR+'jK(^SXЕyeɅ<}Qj12#$jd2F0,``9ߒUM2$dN0ꉬWyuukTH AObhp}c}3o&헫 yyhGAD'5~%q/is3H]D#M?l-_4T&CVY$p`,n:g|}]C;IpFE<]'/iRe^E}d;Lfud۽|T)'-mo̳udOtM?ﴬ(܀ؐGl4lR'X>Fw:ךpµ2Sc >< lxH}WN }eOx@o=GUh&19;#Ոӹ+ xհK] s}^2^WKR1:/kޤakHOM(t㍔*RPYYk@ f21P)GW#<}ۑȪ"KtC._1 @x͞3u/{9 ¯rAK|J.͈XapL\>{pW%ZD;?V Li~H9ePj*Z@"]{ٛcjY^hgpTIt yd(z}ie^̗KL.'\}QMP"cܑ'2_(U!8-kc Dz硞C.KV:Y2@ = 0}+@\E2w ",(]/a ዆K/n'f5%鰜\QG?-{$6^y׽c]2ۖ|o.^g^Ƚd%Q˵_uR"V&iJ03' %~8X؃OM=/y=pWU[*\A<%7F+Gh ֵarTQ^۠{I^˼` ydX)t֚ kg7ɫ ]LN>myQ0έߐ6\Mh ~r3TU=pΏ lgyBl:Ø:k.=z&<&lOsp".n[j_qaυ o8(7$ԛ/;%·؁A=˛'ћ3E^ql%==±dԽ_kt|27YuhgK=zNjChPjNepX] 6q ąq0[u[Luڇ9;)rx3Ͷ_Hnl͕IAyD:QPl=] 4Y?xW`lq,UYxPnN%ד*ji1esU7 __Q76mƠ/*8w gUbSXQS<Y]÷-dҳB@po xqn0:C2W p +B\e?s9Gcx5Q϶8_gBq6dAD*P٢ x  XM@?!gkYz[b6L}؛> sV<%&QzapdJGG0.tYc/ -]<>aI޽&s?op}{4ud'(4`zlӚ+fjR"`-@гk~TU2y}YSl[W3O|_8~BQ qnѓ-,]'L 3ǖdK>a4ᅾ(Yd<xk38zOՒ%xya>e.A"ԤCE :ˁnɮfM>ȫ<]l9wYW >V9RD>4Dt![ `A5F{ :υ (<@WϸfbvIn1,Z'";wbj= |1l{GUNS0+1󻴚诧Zi](C{$8a`@%Brq˩+7:4E7yo"V'D5pdM )/Jg%5-IW9"qY"T;,xp; |^ršP:,F?+ɕ_E9#&ђzc?^Iqc"rj@N4+귆*o-C4'$߀JVdkJ&:N,41ȦNh(;D];ݹE@|EpL2',i>;KИ[i,H"RdKh}aDnRbgjq>}ԏH|n\s$vA oTӫjѰ:O#'& )k8́UY%{D9F許,Z5DTAMC92X4^A˚wlbil7, -jrO*FKY@cYs Kˑ}c/"MÄ9vsl_.M%0C8\]TZcCˆEӴƿ aC,ÿJ-&զaP$q%8p4}!I,#'ٍl3wqRǢ|DD*Bdrڜ/TRɶ^G6uuAnx*p a!szU:z:ڽ ΡX"x[~%:ΊG毫KM=3w澊Q|Cu9I~VSH{ҷkGJ~*7Eot m.tH`IZ˶_ya}ՂꄱN7>(w ߌbhK$OArbp,/[!g& ?N"?RΑ75zLnd5t%eg7hKsVS(!-DzGeRx—Hf1G\yahqĵ2E8C,EyLGwRǯ"?cFڂ @ һr=JgijCC7lipa@o~PLqSt ^?>d2-.x֌GF(>\-9^Pl ol^!$4:c )?E{BFFLL4}tn 3^|mMEsͦ\+woNbVc0 2]Id*RvM#8'MZmR}%p w{'jVtACޗIzaҵFDGg4+yPJ&!?AѡzJ^4,Z9E^sw3G6혻Q' 1dHa-e,jF0ā:&_mͰ";hwbzƃxSm,d:W!$ڲ,(;D|,WTrH[@fxUf+^R%PgX! s'b㤪j,t=Gͽ9unĠw\?dlʒ|)HV 9xO@S:5:\_\WzH)kNdp/gjH? QS{ȼèvSc« ʀE]R@DpzS߃ەh8Tow'G _Jr>{XrH  @Vs3&8FBxȖFcV+ڡ1׫[+#cx)T\;i4lm"{?{2h|C_Ϣ6[N"Mw02"秩fmk+#3&cm>D[3g=Rd&#e! ̈W>yw05ڜ?Z!k |ZrEv5Ie`)Ͼne \|6W #WA33Euy/[,+2踑9F'.LZQ9h*F+w&HfdDLBF5 'yN9&DMORhKƂhf0~;kNA׭EG6h ˤ.B=>?o|-*!SĜy>_LuXng#k% `e~1iP>'K@Ta5hMb,]3fif3OKA@U6GNWa T B[ g;S$E^4,g6/XgN<5YBAf5)l׽YB9.!N-&?xrwlg'Ƚ4r 7c\Q/ 9=;eJ.{nG-4tTVn #BIuծ..0D׮t"TwaX5U8u"-:2i+s2qcҁ2  <}#mZ$!XZ"QKh_BϺ~Tlk ^?4@+6^4ƸN?!Wd/77ܽ[K&q |43oK?:ǟ띍5UrrΎHrNHnm z@sH\=] Jf.qM&Ғɭg!!dMJlzymJЙ-Qu+e ˯Ѥ| .*Qg `4uf`1]7]lUҚ2@&$Wc"dHOL'Ct&s` kh(Aw3'ׅϷ`=-66`n3nGR#IIG.V\3:&~Jq;ɑ2,F`)c * SBQ? yH~[LLsݦFPrlII 8j=(zum{8'`.UVF7Ԃ@Rf_OJ.Dtsy!хtG 6|n57N;NQ( ]"f~׋4_)0T[R5&ڦ2%h-2Gzm}ϯ>(fyڏJ0+D6њH롐úMuJy6gwd PUf=D S*{`M3q!m_ W3%Mq:̃FRE9*R$􉭭Lxr&E/6ސj&0XEWs5ϦϯxQm7 !Jj#oMv|OiFN0gycU\s:Q@/H"%Gc .o&9r@DFq247-IxOV̔n1(v1B39H,RH  ق<ݝ Ժ]ŧl}, r_"=;!ԭ]dPإK,fr9'[DIYuY!tژKm$%NOpЀthUb8||" Q)T`xpF$sRϓ,{"%v݃`1">+ mU='椆9z>GGىT՟c2!^2մ`mOBOźgr*5쵶A$Z^Q}Os2ժA#cIkADU^ĞoeЙ7z*ܵv|&81;z33Ay)[WL P'äTA=<6/hr&m\U<MENc]TV_s'shîoSKDL&yQMw=d[1FbZnn|κti,)ÎLhvRK'q6:9K>!ol=Yi`$ X}|8E/ },<丯;@ɗtY`ygd&',5Rr>-zӉaѲ!*Pn8\> zAg@ZTj*ċۛn/}jWb X? %WsU褳̂)tm^ʎZTeZ&.]#-*QOcÐdc33#͌*=Eo'bI%;oZϩ7 g:5=b Ke^HSڟ]Q q\ྌL 2CRNdUq.)/sLϧ_!1U`kX8WwI$'re0tqTλkxuaKƹJxBJGt(75ݷݭ\(*jYi&]3_+dP{T mDdsY6Q$=Ϭn$@ ]H`5}$,qșr9_%ٍ*iBM˳sY6i`K4}u$n]%~&L344t0ga.Yl!:<^oh1%[lsA 9Q c#G>'/V_S.q> ΔrAF\J]fJW\.å,D{4J`7$V&Q)7K[uڭ+&>{NrD7+o;5&\=\ R:pI4h:ˠN"ŒW|ڞۭ,5T@d" 6ShCs5]ЋRX`' W笇eјr{R][ğt) #QuDk/m5xt!đC-,M)ȑx@ P8ֺ\r{}z篳k@Jz0Yz~wkm5KT 2L JKiHX~&'FEciݪ! ҆ sgQ3hݎb&H8@ji?sMPGRFTA>qNTx F:Í`lۨ?R Se+(\`X_TKYB `tK4Q*45MAj },`{l :eMݑ Vm,ǥιwABP7\w,`U>Py=8V mYI*ԅcadD a]UD-aW;3pH=ʽ0^]&Ɠ e9#Cz JF^ Dh&A}-CMF/_j9uFĵo8_r}]F<őb71f;L^ܢj䍆/rfp=-]B^͟ڣLSVjKLKw)+K6HRu[)hVZI%Bm:J,Z1G_ ;KtO7!(~1Bf{Bnf}E P;0z1%m…6j[k$tl6I$5s ]}1Kפ$ھoQx;.lO[nT\ԥI2Dvqp̤evX< ۳ZAh6@UGwweyTqt!IͲ'o ZUig"D]hs:T,?7m1JkgwþhE]߾8ux?!ϱ}E׿-!n#}|z sKCk yӕsVNOk!Rə]ƛ̇l`c|X:Ž_HP%kTVpctU Sk`R.ԤQGx29; Dn I 2{vR-MƺwHxxєoN%;Yof΢N1C"z}#.\NAȨ`E ͋μ$ X\x{6fN5Iv03JeT;\T$\ŁɮJR xFm].0E(;3yIo*p\Y1WjszQS n#Nj+8$9wiŀOpRHc3\0B:&9r 9/VIBhXe*zƻ;YYPۇ{Tl5H6K#N8[tَ;v7%W&!m`]X[aY~MzԕSo 6("?A+`UUwGy[hxYEm!y2=ݭMOQnI6paT:yF$~+$YЄ |<[Wz.Ƚ8[W_Xr;B*mbBK t#Ne- o٥ժ]+&#f E}3I IJlcdHzBAY: EЉ&B ո)Fy;L|>]dQA9u䫦 (O",,2z&j Gv lG4\Mj*=Sl]'q 3U~*12{(pďLGF'[!;Sk~8kpICgXb=s{zyHCG:Z9#8Pz{+礵ы]6__iȠK%6%SbX8 m OF} T־7\Ì!O]V+zݍ8Hv6&䭟cKKioΧ/2~#5TDh,TQvu64h[?K|> _au e.}2P:| v8Y= }"8#X,4ܭRaFf4{c+ Y[ĭTBL$yeBcDrQŊࠃ\KB0&PO>"3~eqFY@6:zYoMg ʁ3 %ǏupLAko}74%6=6@=c?呍(o-ͅz"GLgVqU;ujƴ> $˩ Wr%K=cNSxp\a\'7}YkQ?&z]>?%w\bu:@5JuH0{7$lYu)w1Rhx?Vha%s1Rќpq3Υm$ijDcղ>ɞtHuTLh̑"1lFhԅw~KE߃#.. 5 #g^1I56jҩU1Nyϱ{:n84m&Άfsmo^Ht/AA',4~R L q-pLNSDR2S*v,!#w%)~W[ *M˧B⽢eKD&!q/W,;R?ͯe26- uPMM^Ϻh KLqW*hր>Ypk{zhFkb#_ٍN-B7\&:Y;Iɼ)f`Nа5z##]h} Q5- ?!O`!qy:9,b#[ PÖ.Ȩ! z3nx|+aټ v㟼qz<@nL0|wZb=f8&Jt [I (IP.BPh෷frKKL3 9FDhl7 W xe1jo!$<,<8a] ܗ9z]0mf͠[3L2ސ UE@Ӱ}iF!^ Iޜ٘)yDaX<~ET =:4getp1s `L+=k,5gte$fձs\%4v㏭ahoQP lTpf9zVl?)Zs] e{o}GSu.$:>HTxo!N0.DGxe;vI՘ljՁ0~tSUJ 2ܖ}S~s92O.5="\~:9D掻;o˲4R7kGcbbu34 `4.8L [c&[(_'\t Gefb2}2t극cڠ jU9$`<)lx8$4eYc RˬX!q5c(J6>t>ѡrݽc\kC/ XR9lRzjt;r+ ' JXPU3\9YZc*׋}R'|tbiHM-j~J"Eѣ(Ub_r9k5*9aR!<ླྀ{ et? /ze\.bIDBmpiYb]7*`@8JT-h3ܑ~K!\Ήؓmo.ǭXʺ'%hNrNZ'.(!-Ȉ3X&x QWzVoߦNI3| uez`cBGA(36 6ʿ^%^Pi T-ߒ'Z+bs]!9aBu@؍RlI(;AcifD9٦YRьḶOrq;|!0œ1l,XT7D+:c |8y4MyX"EGUɟB$ŝDNI]5~Ձ3Y-H2{iƎѷSo# SZs`jmAԦ籟OϢj`vLAL_k֌t7I;Iȼ#/?O(~LӞ~}ع ](!߲#CNl7WОVi1nWMث\F?<&zk5.݈ RD2Y tKBo!l|*NmR&6;gr[Z<;=PPx5?b7~r KlLAJzӶ΂Xr!%6-Ck+GԆg}z:!70ZXiW=yTA1L%_v\"(zKQ1=jC>2 ƒcbyf6CW 5VlMCc`Zǂve :@u^~?0[PʇfbP/"z-Fs~gP,I||Qz6H!_s",j熂GQΖ,g.v,x SA|ZS.G')s|,l=#+~rZ\="&YOk]Gtج agN2?{7D2P+y\iT[]rn^ᷴjWHTG((^8+ȂEc`įΪH>!sW dWV?W N 6ڪx]+?3z{[y9X=Iϙ9 %e#tL}Q~r䌚:|;Z(gvD@u+̍g?VOhQwܼ$s 2Z,(xAOd)8y=jTک~tW]&idqnd69 pxKn9=Wt8YXIS $;ar"Ʌw~>^=r;03"U@ݰ348&ϹC-bP2ɢV"!cprOӿ%TUW58iߛm*|5\NF`? f VsXsVv gEeV#g"c#7|&o]dY将fMcn7/Lwa.+7C AE {6n Cfo5I7 ,.NDTTA4B$HQr2& ;p)TF^榦/Ț˸caŶA!QhDNߺ{(_FSqJ_7Pr;;ȯ}n q @O$&0_?`&]έXM&.Rߏk>H–ؐ ` f)cNxOdq>eUEz#IXS)X!KB9'08&}'tL,FR 6QoS=ƍtwa6h1;γvz[~tazcsׅi oɛa49ԜN_7XC|]Q\'Q,/:.r>ցJH{.ɲBΊ ESJ'n?fN|I~jQ~vMN1[nX A+2bcg[BaUabHnwq~KxȧFiL}g\"V_G˗·8|U~ f́gW\sЅ3t7QƨQan=uCep& -3clNcTYKãkVaC[&&M1X뛽Z*<4/~'#X1DTIEG|(KtwU~U6)|Xߨ xnꆻl1A}ak?f`ogZD\o.x"G>t|wKyYs~<}co-'BcI%Ӝ<\Er'>}:H&9jI2(a>oh"ӡ3|pY6G3_G*Yf8S1W\{*j@0Å昑HCnf@ǐ_*Y0g?].Ĭ1<-Y!W)}ͮ7 #1ˬWqPq01j t8Wys`>%ƪz &?UF~ηInYMξs(FPO, UŐ_EMmI&b %y $?e7vN\dwu*`3y\Kҡ-rN굃+ߣۤ&~MBs;"nR1X t"%$rbO  䉰nXz~53sH| ~r&cU<0V,-[ɂo9s^=NL"gߪ3`*a D?e T<5dFWƷ0 PL+]0$VG@SL٪]UPoyq7OZ$k,w*bit.T}ˤo1Nab2ծEqNJƈ'p< `*]oigCI%*J,tJJuM͆PÙq wDZJһ驹XDfӷg#Y'ضƹ߾3B{T;0A򚆆%/AH($lf:qgNlT նjEƄ11¾.dr,E[Ϗib3xE憼㯌M2ءq+u$;մHEOrg,:֩qܶ3$]5#XSr"pxW>Q=3ܭ0vm8 Bg,*S) +I[_9̫fScHC۫l=C4 <*!X]ps 0uϋfoHSҳ c3yл޵ᙨt~~˦Iטd_r R`3uޘ?YLsqg3}'XilPcffi؏_rGԽW1R 2V.vfe6Yiyg8㈇x~ˢo3lqz&cD\G 5TKmIY&lJ>IߝY$!A:\Mq/^>HZ-e2aS;ahζS7^jRT# kd , /:V#EEE#.k>46K4?vb?X7C9*­i)⋦W~Qx_M|?Ͽ_BAsjGb &I;-K側 GX b *!qx}gi&cb_7-n`ξN=ߎDڇ¡f䀢ئ)]ތlv!)z7I6Z#rr,%|a2 ϕecRE3f_mf 8)ƒRS4`s)sv꧒P{/>VQrX텕/nDzZô vџ+&bj{ͨ9 n)M~HzUO0p PO;/3D*~YMf]>kG`ïEFs_3VİQ,ŝ<-AClڜE0=`=”tI_hYhk\e^4[_@`Ģ 7/ j ,G>aKho@@>k FsFH AO6Φp_pXԐmk΀ 2*F6)`SEl._1`I;\V.CC0o^w ptPgd3Z(PN WEt}Y2l<^- 7QgP!&lAzemEMݻI93wYYCZ!~\@Wdy1Ku0ШJQ)_h[kd"FAFV^FݯED()wt Gȯ29#SCC e덪PGX6%w7KIVKaQ I eBL>G'Wxb Uj,HQ-SXᏇKFU YJF; (!]KXMFHkWD2͞n16(t>3 7\ -yr4%=-X7AiŹ`| ֟w^X@&zust i%q]bi9 #N xTH!e⽨I:BC'@JXqƵw2BNlV}6PYY\7 XO Lf ɺG_mu]Y6NI% <ޭSAJZ,\L SA GHkWW^$i`L{,Y\7ٞ^fF (@L.T&y*~Zp=$\DCLtKUjm录I1"5((W 507d >Lvl'<'e ^n?ouxG#3k$S%8MyLl)H#u:8NPO{eow/Lz$[ꄨƪ0s+:c9̗!%a !|f%Cݑ% Sug75y|0qݾ(:^lF~.EȚ!ӕO."! U1] i07)𯰩{\rbQ-aD/Ynb() 78A[y;p}Q8x7=IdK#]k)=@W`i彩ebTI!I%MLl5J S0| ֡x&~*ݨ$f|.$|CX6N6@^d&: 8$[*NT`pzHU'/#?_=T0J屌Xn智ezJjez%yn^V@/G8e3 N`Ø󽝗p2~yp sçS4ZY_լlMrU*q?-DNvp+$Q|_l#gvŗ) bgןRnW< s %`24I8lzh&'v"{Ek&(؅Ѹ%avJ8p!o ~ ;E C)+@?Y]f̓Ƙ(vk5gлn{Vc|R9ØN"11F0n5`'qQizC1@=doI@Hy2Ō紼60ӪPd]Ź]^<~y ěDF] &rνs?1ysAlNS0c6XW&&Lx^p^klfzqS0t`\LopK yO4Y1`{O5S|5\Zn6k.0jfGV*j8峟nPa͜k௲ü]+ RO Ȋc֥" 4Ո rwM^Ql1H! :CHB aє)NyQ0DSiqO)L}zZ{wi|U;~cw,[8~¸s4n1#u%GqķpԜbҼDLV<.f4`c)ah"5~zeoR؎ydrѮi4qDM\5LۣmV,5˴ޑG"PM>@S*鏿UU9@XoꞸeJT!keucd\`o1`r.7 4x9F}}6!/~i{DZRo!I [Z+KJl~*$Ӝ*ʹ( ו4vߕ x$k"! gv6"Љ m&aX?oZјX%J*wݾvi)],{9 J _Տ"u^oU "F` ܉ИwW=@d.[@1_EP,tە^1Gt,ݗu p>Xz,k3\nX:AC:bƧ MKݿ澭tSazv\c厈[PEmu΁c[wHDMIxq);M|f5ˇRqi׊ Ȫr41a*"-4T$E-#uMsc@9 ̩]ǿ?bCH`_ `xyET  nO%+K9V}uW@zAǦWoL? 0tݼyr@uh}vD܇y d@󾙝_c;x6B13PǼBF7}k ;iD8-fcNcAN9RΖE㽖w Ϫk MlIΗ#"݆vp| .|R@fIY[G_ #\ yB6=QPݴe<||wl_xFܿ!·lK+*WcչjB#h #mrO6(F>1UO\E{c4I:dF(e5HK.dJVO뫜hMܹoݱ/kj7ݒ󦸗ϐd鸊Cu1Wo][,Sm] )X5nEr-- {4ءH!Z.co] =n`9xQ6m> B_5ʹD`uv46-Qw&C{>TBE4;/Ka{o6ũԧQ|sn}hqm<1\9FWl6_oE<7T3\3|$5.h( dE#N-SAL8VdFUaG> ob h4`S:pPSH3LN9/5~`rȂ#'x"p^"HOq4b㇝C:?Gf ]H-xT*1TF&LJG zbQ 9L8& {A sQģ{MQ {?+Wحb#WpXw3t|={`X}xe$5UIKZI໌wvVXT@T }'~QWu Q"!@G2u5[>胼*Ы/ΐl5-ĘKl+-޺1Q<1G },"*.&lyLTP1OX-u3dD-{>-`Y%-Nn08*J_ T\o5/rpzS?\Bd{ :cXq#L9ї =@,,čیQ\=%4~&yYm5ĨY= KmM{dd#U]x_n3o(wltg%vyLZ|:B34ZKl0VXla1Dف'B^5s{Jm+3D6^4ںV<~(t2o7}ZxUo_Qۻo K  Lf\;ރ;?Pƅ d j/UZr ݬUb_ c_kX oxj,U!j6 c vZ5DxY]EF( ho'^`U.03H~ɌxCSBao|`^QgO%mJ-n!k:JE\Ø_:N$gi$  SaIbP4ީרc;}hR'4Qn{z`%I3eDXkث@ ʋX84FFa2= c6ř%32Mp blZkcu~b-J(3W 2O}3i'ubf0rXӠS 3V fύ4@.Rˡ>>Ydψsz8<q@0瑉7`эS*:) eF{V@gz_sį bdVCTj| gt DuN nE /#H&92i9+8adTђ_xH}SWuzOv"Ϸp\Zj{7nc\Q:0}]ջoђOD}D-@dU PB;&5y']sGJ=Uy$Epnр |;e%/wͯ E+=~jBt%pNYM{|'R:)֩Sɏ(rWJi6Ik*-mUr Qn1$T\fr齟}Wx :!? ` 61htŧ >.8g3杪 3pB{)2TW %#RkZ@*r%utnӕɮU:(ʷK23]NLf}[>Zn;Ipjsn-yĜr 5N!Vs9&p7ܣRX#%, ybo-2evTO,M9IC9dbv'l}/WMwAp(o50'DC!Q=|8 < oJhɐ9+G02r/G>b1hV@tD5YzC,IŠp#__h@##`˺ƽ7B{xdKFtte cQ jCGʽG3rkW W$ Wœpoٮ1Хo}%(Y=q }Q}ևv˦FI&ɧ}_[l#xln_2:Ͱfh60<8u5܉0*" !e|#!_!Yo} *Wg=ݿֿ:9b;XPMIg!;f "(s)i˕"BO7xk·{d"gӑs_ש4,3/Ze$B0WP) '5 AycsXᰨHc9;k6@PW}FWڲpmP6Üf[LrP_mi B}U>Ȱ=s^5dż&MSȢZOPMDı%E,~UrS0`^.t@ ĚMQw~(~Y4Wi /m1&BKOyV%ž=nSzy4/ L5h0>`4,I^gQx^_9VRof]lJCbGGڧTç\=n~F~(V_ni hk+:Y1T:JbQ$nF..s@bo؝9螰.$N s`Km@1>[( ]}XYƂ,P=^ebx%²14̸_1E}Ebly-iRCnJDf>`ueJv&J7\&u駳c5"Jh@vUF` +`89JR+7MH.7UMN.]" ^EAWTINٴ2]ۆp|ThCOAO95}E7h—J#ɞ=Lr~-jn+bm{6mf)JSyсθ+ݑW޷勎mPiͭn ʒf Zs4X >%J-/ܾ-|͹R $Si4@ ]g"ksY5=W/c/gb2e?81<?rF1t`+YpvǰH"S$Q/ǝN;$ؖ ʙMfVQ_Y?͌/ b/j SBEoD;gEub^ ~X$Ǘ,B|Ik.y}FY/8--v'OOQ{.2$JN.f6a٠7N1w-fUp#Ύ?KIaTm% X w4[1V df/[r7_fϬBED>U•5Ϋ& ΙHgcT2b/Og^4qs`Az'2sk%Woe*dYK#2uѤ ?$2:U0k`(^@(XZݮ l0QP00:lm`6>N$F%sH0- - Gr%sdTzAgx%|l ~ZnZ_$gLi,1wWx}.d0Eu&gȵbXb憄8oKZ" ^Y lZCNSCog=%4t ŧ^%7^ϛ4F_7dFdbC@]i/3OO^Bv pBH:rU/IHzm;!_.5=5ʝ9vUo{6M!iR#.2.mX|K{D5FȲN7sYbW3"vş %q7hb TŹ sJ0{GcD^s?[#&T}+|D%-Tk9C54 %"OLTf!Ƞ`zAzOr԰o .`'e|s>T Ju Ne2'*Zxo/QluA\s#oV}.=bbpb ݅_áqkZRw*-4b Q-+9sФGshì a"E. y{N*mU0s͗?<Y<6r&PpH$wR@|2U="JǫN(L)F٧&;ycC2m7q3ڒ9ݲP31\j}~5}Y3P+2i4 n4A1ʟ/tdUάӺc#bC'XH*RUlWwF cI_"G/1Y*kJwQRj~8IY)M ]c>]>!fn(QEf?cȷD 2At Yq\Ҝ^ܲ+ (A[CcE7zrkHP }r",R WLQu#X;P|ؤ\H4j}Tqs?P3Od_f"ŋHmP]c@o%K7e)sL/Ix--t:M𔩌3G8F6ŽЕc+1Yh&} 0Fg}wVXޯ]G\V’5x0w2Kי"j̔'; .ALg@ϥ:,sMUn&'OBXE2ɫ{ 8.i'ZQk7bpטI@?D3ˎ( 4\OsnW^bRgʲB0aX9F>Pج_'KK <⷗b*(ROs25dPyȉ5ä9j4:F[; " &<,p\p9T=IcSJ&Xό_{PX-'8*5I!-yc7M6|#&?%0ծYv ,Oo6Ō#Csm&?yeU'^ R7%MȚH*`)xPH{F0\ٿjA1B4V}$&Ȯ NaN,:PQNs@֗Kgt jX{`JHCHH Ɯ@J >Y3v%rrX]'D:|{ Ļ5e+mambLLEyE3McuH @4lTU&MXD9? 1KOJU@SBo/,y;<ԓ_4Xނ~Z.68%+Yjbǖ>Br泳r^1碆հ>idr'Mq4f*QTt_:os)mI&&xf4F8_ չw~\iA]r^&QҨߔl;#b?ϗLp>~j hRffQZn־BR.r>;HzHm=G3-Y=9qIE¿+FzsdJ>Ë'd_ǂ=#, HRu/MRy6 FI{!@P*"n=C'{k;,N?i!ީ뾨9ĮBSVE:3ei;}oB;so(ަ Z(Qk0̶5eVlffd"Ń 3v2; pq ϜcO4"ѡQ~׷㭥Ɯ= c~{A6JVѷXI!ꦰ4)`HCBuXYleQqOa.(_po~uLD+bTP,8'+&'ӾNUw-WD)tM}nhAMc,3 "I[ * *|nl9}mj@eQ;Eq%`MuEYT WV9g] QoD#4 4(JV]HJVY۹ .6Zq5=<DUԤF-Ԩp::.8=GַԐ2j[IxTQ{9s(dXSƷޟ\rB]8DlՂLPF xي$;,Ek 螹)+V~l`hks{D`UL<\ ԬTRs=X)=EíN&sMI)[EaYY KH UΩ\:fA5ʌiͮ߃]á-3eb.ɃP'8݊N~N=˞OiN:S]@%TgʽT Sam3&d;΂ygan? a!P+veXٷTz<:Fvq1G$KsBYjBұPݴ`,9F)`x}KYͧv=3֤I!lMdu_IJ_[0UGhxӂ@|bl b:@ODf= GS#͖U \扢.tՌwG;},*(-VWx4cMz%#>sU$nnu;QGܡZz Y} _֒Nӫ=-`HYf?AĘ^I'f);ʓKO5#rW+tŎ3G<2iVZp&dz]&\ʶ@Ty3N|*&|`u=~e [l qcdꂓ<0+/pO%E(xMK 6xnS8it* `0庒gYGzT< ] ns_-  !L|餖3Y> ĥoM!{sgb: eT99FO+#Ie뼥ad-~` &R3\ gWEfCOVŤaE +v6b+z)(iiIf-dUTHb="Qaa*!6ڥO-xo ^'z,P}K9+ٖ:zM"Q/$ C|ݍg)*pYrO@۽utJW҃ui!:|1-:SSCp 5ycQ22fNE=Ȳ OE?uXHxDD c_4-LB@l(9"`znaJG(_tư .pkߙakT Ns`}psģЙ#onb` [^gzoG21TM|\Uܢ@; q>=OV.]Q=(עaOɭ9Ede{iN2}O<Ҹ uy1lW,e٥l5j:X UJ`]'+$TJTWx*?8!yF;T17_R}!JW>yS*I}r&AH>!lM(HqLص}Mpʩs;;;qTR3_Z-M oMWBUV8-[7H/cn7Fx#F6Sfa/{GNE>^kJ #:W&ks,>cӇRQ1-* EƁ oaVT}<6;ȒՒu,[4'Y.Yu%'EYՔet;ypDf%st ;sOP8݋ESBîLj}O8R ׂHR/5p."IiidIp p&ds\ \N8a&aD.Vb> 5yҝ:w8FD&cɿi74YhnIQxof55N-5{MN9܇jXWOtٱ|$fjR"($D)aj^֡ܯM5{'p!?ok)ojCSax#V|>w_B59[U #gͼQ(tdᏩs0<X su*Ꚃ7` È 31mrSt.HUHcr)ӳ w CRMfG X# rOuHtxU 86sDŠH}q>Pk1EctG:kyFݓ9F;lyub˞QV09W+**iH.k+TcҎ7gSh,9$ XB/1$ӨuBDިх/>ǽC>/T! tҍr8SU{ai:ƹ7)tyfT6enaaK4#,nQmыU"V7D8}* ڥ鍱A+39+g[fsRAC)jU% *\E3KTׂ;gO]gQW"QkǸ-答-Ė#?~н?T9kSvq(^75":[pX n}tQQDǣd3fyj6H Ź}Z {dj:8λ3[,Amnp2yLC/=)mtDɆ1MGevo ąm[O{׈ʾF;ʬºygAeQV.>3LhGMM2Vr ͞tào[AGa*A'bGLwSP*\9}Npl8|?{nnlRdK=K GRZ![MC}ikھ|0y]Ldi5mDHn!fykº). š,~Wa@_]U%pgKmpkMn, aP_ ڿGl`_UC]$ϑu;s@M9nD8s#!~LhlԴc)[Eȗ@6#}GuPndgufq6wxeS)]^ LD$fڍBg\| gޟʜ>FP ={#hlid I"dx &[00D;e?$wOl,)d_)щr}ӂ5V͕$f1KF?xlnKb5UF,򬂈-ӘV07jKcNAx0b{~6SN_w||xq{Ԡ8qP(Hͅ9Z A3^;i P!|. ji 9#R5bm8cEvkc'̿~%O؏ՁH,)b`ϔ0nroR1n&ivb&S783o/ck'rq%4i-nv#mZ%-sݕ> NAFHbte 2\Q5 {Gl8GxnoJdF,Nr30;8t!x4@ βL!G'"'9⩑X*m/ 1N?`%;Hz$V_ x;tcPS:6-b>fHƁ_^`+ut߼ȹ.i\ZcۚZdgLӮ T?Og6P'\܇DOٝs؍YsϏÙ[1oUW=XɧSgg|a+D5n_5 k0{m{zUSwb֢&Z~P Z< s 1D7kf$Yp}B tve6" 0d {PQp i'^1I$eˋ!KD&Hm`hopy Z~VPl:qBY-"VH@Na⿤nl:O_=Ir^Ǣs6Ed;W D1LO|ACCOc1^ G%dmbEf)#*@49DVzb\ ve߳& LB2=eaN=Bh8 @Y,xҰ)d^prJKjrzwE[`JvsD0x0h)`[u'}ek"FcxYM[9%,6q;Ǣ=Z]3d{cD*J^laOi[M\=(鎎2Y/P֊]YڨH^),÷PϹickHsuuG)ܭ[#@:葛D*3UA,\rpF|C-'Laý$?E%"^DƵDDJҪݐc{K\1(3?_B镩E?LJk)?Qux|T^~SY0Tc RTEUۛzTp3^[<3l?ԧrFs5#A ǿZAqlb,aR#eMa)ţ>>DJ*{Go#7.}г(6A #l?x/ԋͱs2ojّgVWg(hyǫ]YAcˊf't?>c[{Fꙺیlk˄5,cbx$L)~'B/Nejj7P> 7}N}: `Oq3-<!Y<[4ٸhԹMuys7h?*L#_ F}`a#! x9j"(E-\W&  {Gu`֒`;Z8$ۅ w^sG'=Wԗx=TrBXo׍騋G dcm`L 5rm8V_**-uӬsnfo$1\*)Jw"qԀ$/HGd\>[QtUIX:̋]gpxbpCdhyX<ɒW6QB;XV֙FN%ݪzꇫa2g)\*xPk^dѬ@]"12C\=S^[k:Eh|yč~8BiICU]'2@?[7əT`ܷ1ѱv*e@߂ f}HO_Ѓq._eq7[՘MO!@~M#|΢ntiFIq$c#cDDUR~;%pY/HW6ڧw_t(%OQۢd_SX1]6-B(~iio>|]:ZVuG¡(e2~q{qb҃}z첋{j~ܫD:Lv{/ -%ꅂ/MϢ .ڭw"5k͂VU5= + apKJY JF`+{;VUz,OF {J.}_k\'^w"`3o{Rݾa_ XpB=r;Xt:]ɑ;#MEޟǢT9reofGcɈKف.݇0Y! ,H Ma2F4?ax)0: QT۰CJ ,'W{mi(J2!Z8+ 3|*_.o#v=M=C}t{?l c ΀n&!d9҇-j a{$$~jׁb5bt>$tySxP]uc]#M |W.!:%t4ǤAY\@3{r6/SL! .1& =Qw`7ґ5,-6x߾\qK]]ce3P]Dc@#v܉6| `Aܭ~O4z([і958c+>&)IOc TIv_ 21vW@#0V-+UnLLDXk) Yp;o`rXkNQS"2xyvDVmjY 5|51w{s{ ~Dl,mWi6u0xUgAȝ8ڹ/Dٛ(7'd{b$|ZA0yllf9^y]a{5˛hs|mGi`Lj>No_}4IŝkZ C֩Nc(CRaҿ_Qi]2ڋCUR{fX&jTP?p%V*ʎ/U9ЄlJ51*6N˽BkU'ezSDTBOͦ՝-P̤\}v. 5ސ1 S  *P]|-~ v"~]~b!M"GEӜ&vd|~LEȮԟuj#K~ȇqС= m EN@ r}ݱe!u%O͎gUE>Q"K^QxasQ"eG\~N,I{$gBE6vvTPʜoPxȽ3 # )8Ob)l&{,$6AA>H3J 奾Y02Eߠ)2vtkV OqЏ'<5V/(SN2#".kKȟFƔF~Iwÿ`賗 VtJs|'\/ W ߪ|I TW^FMXrjrE?eSy}vlW;Pu# a`&[~VA^m}F``y: ݘ9w>{6"1ڵ5z.LYG+ʰ*8,9VQ\(B9R,Hֵ;tjmFimhn78se̦K@K@NݘU r>޾,(W ?DiۆbЄ4Ƌxilxύ) -.ZW7WҞ)g`s?Xni2VЌ|=Kw/!\ M>PFxs0džl7YDlݳ(,UD, [˔E J4y6p_ꦰڰ4w v1s=Uޙ>q\߁bNX!a+ hzQa+![VNE˥3B%TF 2+9-Kt5!R)@cgQWuQK04( >FͣnQ+Վֽ(߹5EL*@~ǜPV|z\CBͿJjM(HXRěd3̡Wƭϕŗ<+v?`e濁yiʦ9uh3g2$WP^vC/^k>Lv􋹈e<)Z Xm*n|*^{B86?\_"q D aRuG:w, zI搃g'1pP.c3:Czᴐ/kX|p}|ksůU̚eO>=:l!Ho>U1{"[$?>P 9ꇓbgcI}ҏ.ODF`,yQ8n0E,C&ktyw.ZRD-#%Pbui6^l('^ ;m͆fS֛QLA3NU] ox)mqsSkD Q3hA{*~XNE,sbGfc^N6J2JTlGOC$'J5'0bB}!*fYD9 [Gn3Eb0SrKBO[5@X[E*3f3Tz!PC+\Ɠs];2#sj>lpyD/F"롪d3bRh5 Ћk h .dmD,rKI7WZEČV9f.(nk#cѶ檃#=݀N{pД%uz*(|C# g+xD5?ld[ (ݾZK:zJ4k?jY|wy_C?SR'[10o A# L˄!7l~j$'FJӔlD~ &@:^D%쓙 uvW(3Z^PM(|~ AIأs$_Z&oW=߫;\$?|W놙\ic>fNJS&>d+L?@:3c,sFƽz"~{®M-pq)Y~䅌*}&hwxacEoh` 矴7 V6"X]yO7JתH*Εش)/"Y1hʵd ?R= ADywI݃[Rv+_.;BPM[:BO>td[֩#{+GuqPbŗHFu}^( pz!TvZITJhr 2͗ V`Q՞$]iLAb;٥d*> 't U4\⺭NP^ ъVj4$} K0-in̂RҀ:#|TIon&Yq_*)6V3+ 9ӼhP5{7:EkŋzƓ;jfY 0׌'p""pCشUS_yyK|nǿ_X#iT}(hss1V\ΈM "%c|˅s>@`ټal0m{@K/*G/:iVTV}CF؅,Ov*(:[M_red(Iel|Jl`J];,Mr2JZ*MΊrL(#[)S)A0z3\x>nCIn?Znd^, L렑ك/{)wZ +b;)#ꁧzE9&]NƹWc ,BВߚ w8cC!6V7iI1! ]¤5?f,=.&]Vv+X;97<蔿JM޾!b7h֣r N:]}#B y0*2 |k ENV"E>suQ96!<šg\%mR4HF˱^c+ @hoA3#PjTEQ ;m:@y0no*EtKBb!iVMo\?͵Qdm7nHƁD:;t%@8=c&EU{>hIG5qE\Qa|tw_E`E0x زɕ$u!$GS.VGEJfC[5b ȹ@u=cuVԚ3Xv.xnw$׌Ift'~R^8pq!W3"1ޯTo5*J2RR=}8PϥƆ{hkd3lļyuM4 `,vB9ᾯ:eA20)"d$A< 64oCO.`Cθ'!@ r\IH dLc{FmC(,׺" =QnDGoSQ?7'`O>)ENVaǓ4J}vYHH4M=<92g- !kјsa`+zӘA|,';U9uL_&-zR9: "SvN?̿i(iaQ*0U-fD䝋]GK##E&0*mcEo9?!y賢': 6 iMe{:nE]ڞPgse7qz+j-HZ@>Ofx&Z\ϴa`j"b%x!+TWf4mP7nk"m^Rm5Սx=CPڳRF)29M ,|y*kov&,OfȅjIqrU%Iڽc.]?+9yI$TQQXBh0K3[맗$`[xwq=]ã0ɘ BK]{<[@%IS3>^QD݁B`4,Yc0D;+!Qwd}c=%Ekwie RRnsd|O.'SdǃqGm !~ 0LjlNs*"Dm@M%Ną̥d{̆w`.\0;4C,ł $^p2HZ)]\E _$zO)J1 6}|$D[Y5dWδE˭-{N89^ ca3.TisNsLwj:{ 1p͘ovf}(9J@!MN(ɏv__K˅q.jJu8I4ͯ߂ +J\:y,-cVSNc纒Nb n==-Qym$>~j#7nջMZi&hK{Ďg^g4y@*kG\%׏C)8d7F7$ \! vx< "5Ǟ O>܎1vğDPEj;V(M^ GS,>[QES$_.ojC&v ɓő HIl?M|DεK(qkO (&6'#/i$sWzCgj@ CÈ~wbQ^}M5fupZuPsIR.ۖ UH tԽ&ݍ 2̚Ly&jMi1qV)VlZ7TgriSD dS )4-va{gS .{`=_&S vI'$M L*ɥ/&=GMO@BN *P"5hu$ӁYڈzzi:C6O-MabQHD8痾d131mh%GkwK)a&Hđ9UY p7kZHuedFIĩY" p[&!kq=Q'5{'Hik"IDL\;hC=/6Y1DdEM ā)3)DwR=Ugn#&Ё,`Cz9MyQQGwz#50 7ƓtU`x^9Zm%y7Bʰ%ƹZ*h]ғS06-ϬLFgPgVzFfkSp-lYq˗ٕkT oR^256=]MG1V3m=g6MfW d֌qh eG<#OOP=t4**h6qUKK'!ajޅ}elK[;äLc(8QmX~-1ާZ]a$TG x`FQ b%B'=1?"|wwxK8|/d*-ضx ui(|pba8c2Q'ou/ba؃}m٧TaeyK[꽘Ђ9hka[*cw{͐.H-GU_Uw|"lG[Աt/DoT}tldZQ$=HO7ɕ»8H \mZ bKv xow[Tebo E S5+B٥ˍ"FFiA[Ly_/ȝ3mX?ʫD#܉R4 *ѡWmO"t89Eag #Hr LMtsq[򱤂V2W e՗4u6cbY49[;ߍ;V7{4WjX}rDR~9~o,$?ygcܶyxVgn5aKOu3&KE>{ܘq!bN׮}* K۞'{- RV(xt@ĢODj]K!pPkĘ04E{!Fjnݼo\.W 6V nQ D4k þFܖ$y&+NAԐ{'CEÐam {'jDy 3|CP3Y1ttQT yߧzmf;cT*|E~JadPB!mT! bדE0X_kn^eJ.u(~HoFf̜:彟 `vestwljV"!^۰[XNŝKMKWjB HF1j Օ L\@sS(SGEp塅:8q+2 g?f:{$» Rţ8`#?4\B ק:Mغٶ\ M .k! ;oZ\/ !Uy70#ZU!Rq\c+XXy-)xuQti-'r(&[DA`G4(sP+JflgӔ[dj*JG@bi= ho$z">hs/yEG5`ĜX6 RX,G Ms>=,k^?㰾hzvebPoLf}!1}ƘmJVi=%;ǫR:G +o;X2O/ nj{f*> ;r) ңϪoeo1&q_kkH ҍtd-N#uQUݯO{ps5pCޯ4I.&(|hP$TpIո(a\g`'LC(۔xW*( uҪ}k@8_LY[^Y:EFְ@ Ӟ1thfg[0L W^)cޣ[j\Hg&cоF|yD244;̚SY̻ 1s{WLe/z-%s jcenz:, _3ruHI3;*lL$D]};i VESȟ~H)w`mFmkP80V5LQe; %,3yyɣH 5Pwǔ]Jq'efA8Y6;ʒv#=٤{&yTlBS-hWgG)E1.`ʃ2Cxr$`# (112ssHi:ǫ\cn]PTs(pSV mð7,@-[M^{ʲ7^Qnշ x<Oxgy>Cޖ@x\k=9Hh(e9@s-M8e} ՍG1z_W1+[Xjt|J@[90N .2;>E~xZˋx@1S|f'ԅqQfQ?m*O&%@mEw`<+}_4G!vqhdõ/^RY Dɿ.W_5Z@5uhn[B]L[׷e E)c&G\F!rKu/e˕p#$&?D]d㺇g. zO 1Fzwްqp>/\XL3W ~%[ZgchPA~ljdO;(MY^`gҲM(0 AvEȡA0[(+]YN;{+7^; DPRߡuyLb@3)kzk޶k4WV.%y ?YU~6dVڸ%lrD[Dc*PԷh6 &> 8^;xгuwv/b|N*Cl{.zd@Gh|.v2G/ތ5r ǓYxd0Tnt3|Y&RVJ 7m<*h ];=ZdLLL<=ؕl:f.2??ѕl_g^z%|y5 Ӕ9v|xx2rD*DYE%H|֯F&WK=AmCpC(I!9,yuʾDGw,G}gH6/ZY^aunꖳv!ҰND$}]:=@AZc@$9tmϤ0hy@C쫰'JٯvG{Mޜw& @U0d{(F50V$*8pfauWlԺ'1^x7XvkS> AE[|mqbדd{ktneI,yW{J$=U'ϜׇS`c -iF F/[Q̤|~K|q2Kק>WJ(D!}~~2\dJl$E'NRA\aBb]]E휀Mal\ڔaF8\~oM]ަA>~6ӽ n"j̡i A(OJ-;2AgXvYQ@6&:骐V1BSfIX>a'A@cbp5iv4Z%\W[#)kcLo[ G L:O!X8=Mwch)ƅgU@ 3vA~6)a azK2C:#UVõtES(F/E #/TwXoJiyfN&݉tn05H,Fg$=VnmEkƝbp;[RҔpwCݔ Y:ر^"G- tÔ=J=ol"^5,Tˇl$4u B%?rL.oZv`]$2䰸slP\q\[MW3Eݝ6y{4AZrB넞fF4'uaZ>Xm"ͱ=i)=+pZzANmѓm6n܇ 0L.fd"bםܼhN ',3@@Nxt [wn"vrGy^hz?Q^ϊMf"6q jc |3[( o`"Ӱ`o dlqWW4i-Gަ3Aߕ)R:|8!+-Cd;CᘃO^]6IGDMˏ\MsBExmg$*ޅ-U_&&?*"z|pPJz"]N0?{p 4Q5B2:jR#{<]K26ښ@h5)jx?8 vrBtB>i؄4lہo: _uR ;ԫ7mNhAvQCe䑢[=ΟuŶb-sypܼɔ:yc3\[<Ӗvzk˜c~9:!jmw8Azq_l"QnPBK]rF[%CܽT<+ƊVµ1dGZ?߶% }c`7k[GܛTVs+fc<`I+7WQNwZTϳmwicc>=-;|o9&4OgH}9Ru EL;qEϣmOdckadR1۰M1v_,hĈkX{#Tܴ*[p"oV#W}èyjU>IZuXGƓ23TqߧᇬÈIᓆ]cgDY" `FJڤy1?RW$:b}V(cĹSpC[Jl@1z}Y:D`WZ!w'KN d_jfEYF7S7S@lY`QZj rj',UoQG{}#2x[B|zs ǰ4K- ۔s~SKΘeVdT#7!c4w[eeȱ9L"Vre-I/xchbb<7A?թem~P| ᛔD=0zgsB pRq'7Bq{4V07}*qAV wdB f\|(Hw9s2,/RD*jF 9o`PYoѫ4e6"X  ?z4 e )՗ ۂ1Oy#}k}A{oO5vO.M0 `V̕ %꼍~Xt>)^9ȟc@u2m?l Q=XY srmDNJ# f]mj j\vT|> lv|α|^{/*vNnȦKP\>ORfW `٘8n:TJZ(gY= h ~޽o-/@Z 9EqpKZ*7y?Eaց>!-_M#.TnqM)caU6͸bݑBVAS./޺Pߔhr kY2,@E'E:z 6&w,|n䂭Hx3&V5oɞ ua(5lbwbߣjyygB>13Ǚe @YX3{@YˊkyfiqG7Ht-֦W{ Ch؁1ehhN$!EJ5I;K;qRE8}3d[⓸bXjH4խ_,ߡ{*;*/MptRd H,J8f-y xϟ Cr5B8ܕf (mgcmDS9Mx2x6ЄN f#ˁ$՛ rvN$.TNo-1̚HG 0 3Y}րّt"#>ndZng(s*Qv/-d87[}*κƧ4{1adKF8-Dx”bj}Y קãZ66Q?q}E׺M~- ?l86C 0S8 pRF>dR1*{u1V$'RNychC-{H0=,BՕw38L+6@,qpP7b7anZds7 ,iJ-O) iT? /,@riK/yap=h634mSGR]5! Nj량VOkpuu-(| S'ڙx eWQfPd-(%3T5C  A^+:Wz(,Azf7"OIe5q/@8|jp6x8wFv!\SiT1d[3 Pj./^\A߅Ζk=Gmh Ւ2pkЃdGRĝeЭ%2z;VKXOl=c|&0Čq CT9.yA8@zS^>6OXIKZl5%3Ysb&YT&UFy>R{<Ü5<=˓5@9 w|.kq"o=v-h~pLW"Oj]τ<ù d*݁TH02 HF"6WG40d'x'rXΕY dA>uzi>-BFZ Dl2{d.[GVC2.= b7jZ S$ j/ =~f0O9EIOdPPr# >0IX\SB8e}?fՌY`LP%%6alb @_Xs{/[USCǦϡwiCMid7h_ȑwQvE}J7o0Q 8<Oe֖3?J¶=]x$OZ|x ~Bnj}~==(dn5`iqa 3@ǼLO瑡LZwlyifj (R8q*w"Md-nN.o3p"/rMf^.@v{>u]Vo/[9ކbXZ$Q_+&xRM TUÝwD$nkBHvՌ6pXy*'mȂ"jWh޶-5@  j RR}MXqi@%z$Y>>蕜]l1#G[^My!#b)؜8+z 3W+H!Gszq/$D5b*M`}ө;\RL5<6'!5aVѻyoGdcv_#Oo8f9lqHn!m5sI Po#]KxO$GbƱj-N!Jm鰱^34(RK]`8ܥ_c8|Tz7Òn"Hd37K8A*֨ Oߏg_&L6~rp݇p,9^|`!褹hȟEM`dLSCMI{ҕa)S1YΑOX$X420֞P%&b'@NUNe[ w?{PZtTy=67ANԐm o-ʷG!S I)PFw?p5 tZ ߡ"bӜzXU,/K^cTnJYao+ՎvaD&gcٹpjkF+)@!?IjYĿeK1a)-mG54ڽ5MBAbc'U7/_ƤAJz@DȻǨѵ1e6Oc4:OT ȼh##ظ%^sFKֺOƾJWs^zmy%Ϊ\7,C,M~;ff(׾5uz``UaO;jW^?© @NM+ЏLV''fh.G .J!l1kuCkrC; a@8m}B^Q>Q;+}ABF[Ć> (ttglt V ۬ǻ@RW?=%@͉Rժi?lv4-K\7hvB[U:jIp<$bn{IAT%Xb E}(qo>%hGz:H-4Խ1%]LPdͿtCqlw_̗Z6R,[o9=a@ ~ЍG!<q.p-Lb v@)bQz=%b[^|X!e%ќaTlLp˩C/9CiifT,J+μc쎩X4?dG F?L`/|eX!e ?tf@#|zz:@G5'q&%*a8UV<;P;`$C;;u%X&P}pnnvc \AdO̦zR4rh6L34 D/I3khKJnywѠX70vȶ>Zݓ4h'o ZC3#`}(t =v rxCWWxKu=e\6ef/q[b^3ދDmnN$*cMY8_ˢZ0LAz=9A@~mK}?8oE*E_hq] iyivfª/*֘(pZ\rc~:/Pc4bw&e涃"a!d28Uz8c\ְV3EN2}c.Dģ`l Qc-v ܇[~X+$GvȬ &&BbI :t7>+ݽÝYR;9J"GXM;эz5ːլ&A!„tD+u?RUD&4|s<).#*B\(Ќ5@)^݆E6DJ8br)"bC|th;>r7W#KAr鋮Z62FPPVskxy9Έ̵=`,3C戶]Z 𢞕kB,4t-s9IV?P$0&fRs/y6;qE)aXdy \J Is>jS#kr =3V23RpYbPJs\ӭ)ߵ0)?bE"L"։赶Te!a[yx%E`iKFV-̘ust1oxihEg6N Ҋ@, `'׫Ƀ܉hck69_AbEW}}qqfh hrl^y1x7T@3k=r@ l;#|[;$W1D/7M"Q/z3"dn!!D D |vtO\aj{:dd޻dc# +OpKmZm?zy8K2rZFMbӼt_~&6ph<ҔHsQu$l˥3ɶ[p/Q]hyAh#al~0a9y23QNIum&, iGy ś?NyO臱σ# ZQ*S ~<\i 2~B皚ux_WQLD-"68ľv~wF9E)i:Ԕ\IU3:7 .ZQ2]71@Iv)u9?'^h> };`tIi&~)ر,Z=kWg'~HvWi\ZçNG;81+^;D]ѧa uzop!i\}{L#9sUbfPxР/2K p9k(oȩ"#0 %1>ޙWmǪ~%aeA,2)9ׂ; ?P&2 gL~ #8$ ]iz5(da rXpz@ OyQ4x}:ZlxZSrp)*k8꧂ hATCkӁK; <9S&`0De-jw,飣kpьe`RXDV7]Tw>x=7wA TI:4 ͑*ϝZ$1"J|i%3P` *ĖRLI)eAk oT@->U/ O[=BR5 ޵ۙqP9<Ґ`00v(2SOwb’ WDZ)0SMFG9~x(bM`1sRKtB3Sy(M8(f?:9=~ ɸ~y%K; 5|,#_>a|ӿn9;`qd;?U54M-&40O#d8 |\1>Ksr8{s qfɈQKYw{D-N,I[!/CxKFBꦧn X/a6 Oh!%dB- n1baXK0))z)&Kf^15u"#lP(\]Pz?B|؋b7=I3Vo˫x!8e(.\X~iP`TC>A9WӀ\˲ʔF3WJxkއDĄ.@V!`Ñ`4c }aNI.cBqdV7WYR$w <%e -LJb:p9'#mgbq-E }=?u5R6)TX#8fY%qlɿ[  &cЛ~U7 P7̛mV/5.EtK)8U D K<]maEubIG!|&ԞC[jj0ڠtZȢJi F>XHt/j vPAE Ɉa,3LdKA+D[QRdH&}iUJZt\ydgGDנ55UW+{#J*Ƚ}֣k{ w&Un4/n-s;Q_,ybŕ)mK-:eAydX6o);h,| HZ%kAWIoʰh sKk $mg&/`rkwF\_Mjsk{>9^^vV|ym8jtkMDNz5ۣcN-az|1ď1C \[?a#sU:5%#p?}>Ҡluiz ډd Il:;<1oKq3r6zAٻlϫ<=*SJ'@bl-FH0|ϑZ}=e¬X?:q`Xt7Kkb3 mg{ŀbyqtqrZ! &P˭r܇{BL190k@ϵ+\9vARLzh>&pZ3$^d 9D@p1DN]kKi͝Z9ؤEte^]fFԆuF8.:YM'w X"17gaIq9|گ"2ϳ6I1v OHTg!J G(}xqr\_[&KwvIomH*-oOnf"Ocl tĀ;~%]Q5v9E XQp-Fh/>`:#@I@S>0I.޴׎ /§ЁEcdEpO ;z^NMkd?&np ("D3~ty=..aJh욻bgekd@>0d%״muy'\O*Ä{6PD0:^ǘwJf٧UU~(Io$>Oxj6+8yD[c,B?Hg]F_y yWuYRAcUc-¹7=^ *:4i,.aB)oI{n;ԹRSU$+F-uס= 5F͢z]`q/Q8 ۮT$(3Iw^:@ۋCnN,SB~zAޙ8ew+P6ֶwT[/h5Z̐~@ɋ[BiFcL4DRi X*ſG1s}zi# ŒvYɠ Јܧ.:ڎOe`''PwzM%=F̴ؙ:nMэ҅7l1wDڣDV-^ ^ -vYv&, sxdKJ8RɅRqq;Jff V:vwV9:}Q9rD|Ӱ Sk7nю:<1\;uq!ym`\] ͪÒK?G"?04.Oc&@ASC ^~`ϗbnPt~R8번w[n6mT5V'(g|2]P+ATg{0@ŧ274VfKۗ!{vCEe- \:eqHe@y-:m"IP~fE)!nȖp5m;IhK X'EAY'یo%Q6J}p*:bK tɳ }>\2P$m!>AUz/qKpXDU&__ r}Bvӓ-9>qSv*JgpΞ1{U=+!iyd_*vW\ޒb`7FtrY|@CM-$z -'gKݘ. oǧY &- lÖ^AdXf7[x eϋؔ|'2Ku]9gc:1{ԕH}2g}Q59*p3NNZ+YH1>j{C^%k a)ojnqE- .&=۽`6Y71+-3Gݢf!66|T0t^.u;7/ܸh$d˔ 4WZmI4?[JC ɴ_P_h QhQP •)Zl;^ g٭; N^NzeU'멽#1`mdЦo2UOraک31fBKo@%] ff̳BͱNlIt蹰os^M s+CFg՞sd[ݴLNZOhd8}㒙YhpcT ??̙@u\|A=!#,mc9bIП*0)䍷iN1}G P~Λ hC$ZXv%?iSE~\ghALbӄ5}ib6%Y%1'isw24\X7ѵxS'%@>on_O$Ragy(|UG(tFݫHrm8Q AXQvwspAtkVX ;7 |E'+ͰSl zoD|0c @5/}2ihvPihCQa./SjfZJnMv`hpIeCwA+^h2ͥFԆ3 _ÐY f{XNN( @3^$aa13ՁKiQWs?1 ܺW#$"S5kd/IwfD‹|JSNr7*Nʢ|Gz*YK.--k9<ư!cd/i6er\mPlq@ ?8,_my/~?'(cmK/kV/,V:GLu}2&9G c9yrc%_>v */8Y KԩF :]pG5! ^,Ξi Bp CNm p0yafa4ۣd0-A0LwNc㙘 (BK< ~=+^2}'Q@Cnd]%iKu~ϕ%-\;}_])Z}%ꁶLz01ꔐ<$#x&:; qln-R3fl `n&w%µ!$Sѹ]wm!i84/ȢIp5;yi)Kz+s`$X&)Oc@m$M'>^7dOSsP/|QދApAL0g5bb=ǀ~ic7T5aX2\ƃJ%: oQ.OkK lpR嬊+/Ł6aZn&N+L?5Ws4*Xir1}EQr>Wy>W{* "dNLg7Bv2-,uYy%[DձniM)uE#\~:ࢉ InU(P}I^ 6VfVh "-~doNS-!4eIr+#ej=9wC<^GYVGם VwSw;HS%&Pz@&N?bշabܣkCӌdj0.xg@1"U֨inN!~/-׼(ݳwbQ NkIL}wT(j dWl`MxÙ!jX^<[00H5h512ٖB R6coe O_:z621߻[Q}yR=\&~Ol_Z$"*`C $!SȔ{6,@Vy$h^s۹Ei^$@WID dAy4.D_~:TCS$db ҙn@ (*#(Ԑ2N7mI+& jDydZ໦`O4-p<+`gwA-i#d;O`.(|:܈A_`/aotUkB431cANfQt>іXG~k# "Kz|)%&K9#ITi<d|ű#nR{G`zV [6}p]6Ǡ[5@ɞsr 5M͋x[IS2w25Wg҄)?'fILiSMǮFk ]FݠH91S%=8 !yEd`^Vl ~Ɠ ZkBW%YWsq&tħ`XzP!k.Cl"q}Dlw/Yp^Ӥշ$˰E.1b_%EʖF~^FC>[̒Zn'D|]gs-Tx::h9TU挲HqsSI俊KG^%GXvfV0w>~Z9`_adQ< dv(^HAΌB{h*ԗ7+c#~ݫ 8y2cN^+' b<jȢV|`tB!2t/{v{QiHD Ȉ&ڧXI IN҄ѫ ^g󊘉 eW/9eQ2%55yR EWUh}Z\H۱^/k<|n&=`4 |JtxV@k|Z zt y LFxݎa'Xůedfx5! ?22[nׅ7[SvV 9Y7A_p6+jʅTEN8]9}#Bf1dM2SnkDVbPݏX]aPaP5j)Պ9 ZH0 cS=zg|e}; 8Q!NLO~X-^>9ͭ<) aQCe B+h[[d7a%sl?M[ e>oɋHY%[_g襌B7Ϧ.D=M-] /بWO೵nϘb%|oA"U ;[I]Ȩ0nJIBFu]Lzo k}׏x%lx V@DSYfa,%M7!O{v2§bC#l - n X%.MK-K6Q ؿ֠?ߴG.k "ԉTjTFJg)X MoS9iY—YytY:Ub{ard< |0QT:|sXZO辭kUˎ= #F,?"f_Waz P%*}AV^սG=hZd*mtI+p4H߬*kc+W1j|2V;WnMtsG.O^ \;*kP|{Q$?9G+%Cк'Q^<%?3ӂ )9Z2D&AZlkR |:INdN設8!vDsPbG"ݣ}7N/S!gPqk9B1=eITvA#HȘo xDhA*/;"ݙf|Kf}3'\Lb\.M;7gM7,5AH֍Q o 5tWZh;zQh 5SM2n둱gķrYprtI`),gv ̝ bj* Lc~78MNޡ@Q.s~!0z{7Df tqIi֡l_U_ RhkbN7a:j $9%M!/,ɺXN<5}kRF0~Gcd^?laGv;,+c%ښ\JffP/nHg/3ou"\B4CԝDw7=& %/p:i}W 6bFD@,FuN UJ2 0wO&ӪKgPɝg,u <#LEL֊2;rJ#{̌DՉLUf8!CT .(kX©N%+ ;]7;)ȟ'$q TIf y<~5p"H>k5,we} ;t7k6!ȏnvo :v|ƸMf\PVuykCEF4'B*>5章ڲ˺[<]Qf'r=np&~.ף/fx%+ UV<V1nά55/;BO5K> x+=Ƅ}_HD9me~cY'p!ve*\tT+u&0{Ky}H0+o᪐ɫq|I'-Kx_RFUK\c(u2TaסyTN۶.[yG{}c6<#"C)ru0:*-:I)SB5ud \įր;~57,O$łQ{aM[9Kaɠ~=D`R"V.6SE4y(Ī=#)ktm*cv"v9٤Ȭ ⎕-%Umh% H'!0`iu7 O3Qp< O3X)M+} +6\&pKW zl#y05v`Fɳ/ls:pLٚ[I-c@IO=uL;N:7@ouׂ]`?֛Я%rGk LLƥ"ױI'9>.&d7vw({}.寰ZUyTb[$4:P\(;8b7Isq.,VvziU;=et_Pzݮh2l8z5%Ӂ-{%ak9szw"<Yݧ!7]÷.*TMYhƬimHo*{8ʙm[D4T̞pϾO+b $M[ߎˢA1Qj0[k8cWD=47L!]FLRE dseu6e_u!:-8S-{=ePZlL]I:wy@ŘW.>ٲ ; Ti옑[8WWrZCؠR`ZTq pNX4fHe*|};4*5 gַw@RVwmmF؄SnBJ{g emZ+YL4 &_񤔩5L?p^k}GSlU=Rs5 n5= E!.1D&Ix\ !WYH?DR@oC)F4Gto=>,m #zy~LcT`1 mTu]N3Pɲs\s~2:?7^>qA[z;iNp>A\QAL!t52f! ;G@&!e4Hnf4mA ]`vڞ!CG u4o箰$LiT|ܤNq@QO6Y RB*Ƚ]Tq=m3cE !!^@-A3~T@,4Z d&\6= CD&Bgۉ'.i4Ŕ03̹yԊW1d -0fLj@RfWʬE] k.msi2I%mV5 zZ?V,>jaeǯF$ Ԣruz~VӜW}7W#+| vcYK=Ø[z ( ,{ OsUD@4wKaR{pWlZa'e)RpȬ֩!D p;HoڜKY,"F-]qS>&[/@ n})a xľ_:f[SU{r4eM~|ӑz3Q([Xg:&ֵ~Ms25-DwVOΖ6Mcu_/4JHaj 1_=J߽]tQnإLHmX$QJ,7$(|xC̒>`O͒53|(i7%\m>wheRQEi70R1IG`!9&D_74X"Ow,m= !~q e XɯId}hbTȔ X< h&\ExV8n܊uvn)vscF6juWqhqWT֣# D3"]]X5q1l8k ,~7951$t-IYS b73pEHoZ_gtx?h3H 91$ͺDԊ8G&GDx|dxG'c+>A[< L|~7V!em!t>EQC7uAJbH%J8&0ҫOI"@9$( tHGIY(u] ws] ؄NNstթwdvC=4$:C˿*4ܻh U GBZȢ1)^l#8Q9!^%61:!>]vӣ:!V挒5\ݶ͕vkn/ZyRoi}S~3I2>t3bi6f69 k:hW.m_0|RV>737=)"D@u@鲼㶄oT@YꋻVs<bB)r2S{/ ɽZFk!UT2$SQ^V!e9JD5CS=mʧUPX- 9BIGGvNQcn7gHh,^ᬃȣ!s${M VEo"  MIJ>>M4D^reLux^?B5rv<+캗)4Wy\*\R>fCnA;55cm̯|6O ҟs ^8rd~\mqq@>rx&Xum|{Oe~ es[0)"@.tYDoʼn{Y?z2m}^caF2U$mvIk^h43~hB'%}zF6[N1DhRFfl@$:N;L8.s:2A•:G70Ve`yцݹ9Q;\o鄇h#_+8mW)ˋH^w]=ɉNa:ޣ{zdxwV*Vs20~Nr+T,b"ܞBd DL춌AU$JwMC=er2&D/LRdC3B fƴgOZҋbD%ߑIv%7xĂ\ffM.pkټ϶(@>#m>Xb[ 檉(f5S)%gw \2Cxt4kFRiI 's ~w,N K TLk]؋~:|~g31jQw4j)\œY|@.& *fN>4H)QS@0o,Z\cN+Ȍ" мi=m Έ9 eDwMÃU)UxP NVʎfs@R(9u7QX$2jtb#m4zAd*0+ݤ)<{A7jK7ay$RԒjxwEhZ1o..h(9(n{+qW(8p̅,!# 8̀g7g*ď+^c@l;@Gm8gN* VoMHPZ(͡ B%!XIo ;DzQݮf72jz kzz:bcSU}ςZ>T{϶or|I(DCԑ anVȷX4G$yKكMm7_TB 5־`NkÞ$?0$'xpjʅ_7/>"K[^X tgԏ">pE&Hf0}zby"TkfITNf/\'JQp2txb9e &Fk%d|:8l!NmDµb3%% .>4B z>(`|_} k_蘿m2jl ?ċ<5c[*b69?& o9vq?}dx\%qvGNf ( ¤YwEC`)/\It0\zv$ n:غ2850"ptb0bNnaW-#xnEY=!  ۨjׅޭ/tNg"~$O%a%ߘ?Io .BBLJ \.o{,Ӷ[҄9Sd+erɋ4U 3zdՅ| RzNuo;08`_-/7g) DlJ! v3=P6odH(e |Nݖ$amM=b9{J)c4"Z9tKyG d,=ؽ]L0]lwȳa5"\wW_~hhLXɡG\"PZ}8CqO`,0 ;휜V)&cR _ 9>p;<`UVan#J(wWQzʷ9y~ Z%s VSӔ=^`!Uɍ h< %1TJw,GnY>#'z0C_ĉ^SW[5.H /3 #d1oãf淶|s׎͔1!4ǦOoapC "V:3S'}6*g܎ `9QJ-gK$@wxxp6ugH4,7EQ3N ibG"®`"E.E-Vgi 뱥~E2邪sٟ! ٪_Jե p"( .uZo6,M* K.ƒ}v63ӉCxYGHWsC.FMqoFʊ[x~ ݷ?_:I? NwbL5[YDc+vi:4]O+Ȼol6S:5=]*Mn~t V2ݓ]A$$y8+O7rlw)%2Ŗ kW,ҰFeH4'z2|[nU1 Kzk2k=z9%P:ap,Fƫ@v 1\ 6Hz vFIB2#L a2Xޏ7`3iަ;bK2S1[d=#,1|@gϖOX7x z~'n_#D?2>t#)ȪZWr5nse/aI6&[*?赸yTҠ661tv'jx&eJbh膓(Ů :y{GYF!Z_t4w`Eh_%if.l)-\ Jq8Q)26< k0l = Axc=88:90_H ݟGc>VYCg ynRj_kc{%YB5mx{bÖf]+Ŕڢ16/f|?qQ,Iogʣ~_|$ sЁ;%" HK;T6* xxEwV> ]@uA@ųI5.yPzTt8^t~ z Gl -5#iTd8yad?#|g<淕 nL;+/Z 'Ě@m)"@ !K)@I-He2o1xXb_ h ';-St$"eۮF^zExȾGwR :^q3z>f?e5Zk,yb5ki^O 8Y"0D*iÀN(O*,ܓr<բm{u%xL`3XnG+A۵ai>,8o_iN.8|cΞz%,5O +w޹vgZ8q'K OwJ#O_>u\C/PmCxXZ)"%H(D!oЮF*i65v*8Y $|%F`P¢] _<ڍ[ep(ڎ KG!Tq6KRV{]3\ׁhֱ@;9/9IU**~kҶ4V#}KtoDώuRxS_MKoy`g"gψGtV|2Zr"GnZ^gVIo >!mr>E׬ `QW쒂ţ72e9t^M*|9BD !!-޿o"9̰qi]]aHB}h,uƯyÖĵLNwFL:[.&eyx[K(h|-.~)h3{_Ntd@9P[7Y؉|kM}fBم6u2~$O񀔈8I &fd=N jfteO #q|JL$ۏ̗{gT(`(O 턧O5rDq5-V .ѐNqX V~Ƀ3D(§JGLPQw˾Y}01?,ړ "5E򻇠zRA"Rក:p'E&sD"V݄s}R6DoW, 6N'|5Y{k3?,>!\ry@%6ꩬI8v&Y s(~%7ܡִzG+N "eCr666 6(~? Fbë ȥi`hM|+[pm7%Freu7{2Mɣ^. k q޿q'ɼ9GX}dܱ2iQadHbއ zC1]G]S#h(iuAT_ D!?S$ylG QI.C]9> aY ]Hxoo  {*L/ Cj|=恛ZoBV"z nuTH^h=qA4$ ; +$KQ9;3\ՒQnY2U؞S?(WG % F"C f9beU 2_R9V>H-bx=l6ϓ |oLR|g gR.䏺d\?vh4 %$4DA&$秎#~;CulR%cS# 8w7PsaBܞKb sLlQmMuhO/zWK vyB_gZOE|,2Wt.U}_v d @A@tnPL|hwGm t1xk>&7 Hwn|C BUs>z m[W,6'M~veS_ eNh y#DX$dP3=ϜdC@kύBFF 7= a$ l'yw^zr RtlQ7wMAtٹ{-E (A3ԁR^.(@zj/q.?`W^щ!tCRQ;TkGp'.AvI$|hWsVFQ:C⯌$+} ,qPXC?S۵/aowMj4ूar][zckH5fzkE^0Bq|L-Ӡn1Tia46 : &DƸmkײa p&,}/]H`z)m›L3y%s%}I{sg\mԕس(w5}\:J5,]P2n4Y"Aˇ#_Zau%y&t=B oQk?40nzDO L7oXڐ ]\ieBwJS#-z ܓ[9gxaqb[! v[1s?sJElUntȬюVe@s5롃Dw bA["R>vclAꐾ)ߠK |z/^r]Px.J!16pM*WՃ&<i|Biuoo5c>p-xy"6޺c`ZPQF5Wo1%hkċC RsU{n0Si0_"-P3Pi--5GS:J, "ۋPsb6<6E*Օi1{n7NT)6y)˽9MEQ0 Ҁh\4Qb|:I =N^&5)>6u̾:%%c9%+=w(V]  t1V5W$C]KR fb'K?YER{p'Q{qS]$fF?~`rCnaJ D܄.iS@ۊ_ dS%E- >"["pY8; ɘ_RV0>:BG5 <, FqOx?,X( EgN=l..(w󶼸cf`Y]ɻ~|I0|=*k%cD˚I}K23rtٶ_ZpKΟ$P9̱2v+jFL2 cJ ' H{Oa$O!h~&L txI} nv§Im`=>Uhs>}erGz O(6JN ?_ѷ頙b#VȦĎ_,M4i RQwYۅFSkڡP %ЧMo7A>o)/[V@ӎ//bM7T|Im[E <308䈽a@+Nh+tV3R( '!w]DU?A5=?urh)[Lmc$)tᎵ_EQ{y1S`qF08kZ^,;a'[şҩ[A]X!YnLaӃf/mƲBi}q{|T2w&<;4jcMlR$t;i]M17jڛ92 QbdQjMᤣ=6?nT3`Tx_?goY뭊[OL3N~eՂb8}f/^ѹnZ GYO!M0 GIwqv|l:7:R7,]%#_ew>1U}6+}lz7޽'j$v:$[VfFOwz~>r/|6l`լB/Z-F qtLhK6M!q{!KD KvlppI9>ϫ>&װA7I r`1K D-iF*ŖUZw/¢gХD<fz0S);\| R`3SStF~Pڨ8Q4[-N i] gxN8I:i `q YuB}(4[92q.x/[T4 !M2ܝCtZ GyTzߟ:cc,F_Ep ! ;:A~N};vIXb[ƻ.Lfʶ _xgBF xQ^P2;hmѪLK3^TΠ::BNTJ$Tϒ 56w I·6H]RZ* G=idgnu LJr ãCI5FJm3aثt8$tWQ,[ @(4`^\%rpA!*t|UvW`@bD`ۈdS2V_+ɇVxS5Y,fQ4Q }P{jw*K  *]FeO0;!䖳KK,.H4V\~Ag*,(`%43x8^_ }QF /ކHjk1%b8*u==PSgt-vg|M#!~!kGŤ@ID0R .of$ƝޘvxeVJ5Wc1iԿwc+ -m |u޳l왛h5]#]TT@lSU߮4Di3)-uy,109> 02bgt]jqP7Q0!u@X5 lC6R1m1Q ^jϸц2l̉IeP{QAf4s~5N7HAiSpF6H.Oyſ69BF WҤqD+)nᄮ歹V-^ <, uD FMDzV,t; F tRЃl5ߨ6GEƒy;CySI]dY;@;:NMHzQ\l/?u)&ZTYxl[qd](xfF<)Ȝ ^W2h‰I'V֊"B2QZ˔3'# `]YN8&rTRPf0lVҒtѥ:BQ'!=䢼&Ht\jI$i@<U.K)rE0fUӋ aDVzxLʔ',-jSnezZ?(Phbjo[}N>Z1ljgͪa_çODX܏af1NL7?X=#f>esW[d;ߟ7n' S OlKOFը  -l@M/SoQמwcIkt*Ai`ƍݜ ȓ'rKVKs} HHҟs'W`2E<:&BGlTƍgCmf$5-F1bTTþ c0Þ/,Y&JNYQU:dsOE>Ub/mI+|Ǻ7<(A Yq偵r^8P++PO{ٱ&MQ'Z׆w՞empȑA`V9 lD] =l[2( '7~4 }fhT-l`jZD̚l73՟lՠ6;l>͚8"cr}F>@ =t=/0F 4u}ف2۴[\J$"p*/Q1_'\ko~m:ZS$O"ir0Ihu*8o9賻{Y#0i[yJkUhIY3a+>ݮf/T=W, 2f}-[~ @v5ʞo 9!mCk}Z\P0x~sQ>,A[ p1\!X#$f")%Zxd*)P &lwk%PC `}4h&]3tmT5i6>(0 =XcEAPiLU{A fK+K)BWˤ(} oՄy2 <d$6jeS(7wK+(w0)*kG3WT +lfph5}+<%$eFSJ?W|* ҔTU䠎@#uhGU䕿t ݚ]'~ rÆ< ?) TBSGϓ4.H@_QU0GAۥzW$ehzμeT_-:waCQٰ~njO\)|@h:<8­Y0SMʧl맔QNpýd﹃UyjtF˾n;:zTyL2w-Üyrhdl^AWXj0PDH Y&>8Dس~JV&57h'K?XNۇ ]ksM:Ϩ6+`Tq$9.v0?Cu%u(h5_GX<ֿpЛN`deմ;0QRWb"g ~TiXuD{aQbsDtL - KMiMw8C^A @1"|ޒ $,/=Jp۶2f/! H5gշ ޴OT2q{qG8,k]KuO!Zd$k͗T`\x =LKQ \BY 1C6e#k>!)PU6BVnMjcV!AS/'Dm3ŏNwv+WMp=JMsj1kDAF`W4]~^op ezM~ !-.5h-%0:!4 Ɣn+]5zozZBylއsݹpRT :%6'(fhHwͬ}Ŋ9ΤCXkOx#PlV\,xcFshyx'_Mjم"﯒ ʠNPƱO8;uyrsUI~2KKzL)@3|}3"3zI [S5y`?i" aͣQə1 1y'i <{3RF+ Nƞ rp8'ߒp:i|U@VAO߾Q!49DoZ!+Ytrc2+1qSL`zEp GN<ٽ`6:sF~ <Tac.҉&ک"hլ`g9TN`}OKfg 6ArܳQYYEAx#ydX.T'u>ɆB&[͊aşxRW(nF 4 U } |JeC]`;5(s5-)]Ous`OPÏKU'OS%!0WIHq)y~lZQ0!B ujh(!?ćuj`4 BWN!7:@O) =DW_nfQ=yޫu:2@}_el:ea oi D0\ UລI{l58c ?2/*qY}M峆"A;a?(nOhYE%pm?OOiؕ  |R^Wd2UO9ӛuh=Yۺ@fZLiC6ZU >Ə<8近G 3tL.Ysι b}jQ@-I_/dҸei_-m]#1r~?}bm&STK A<93Zk[T`/i?g8y`HN *ټLߌϻALLEvMz_x"k/8-KE,7.L7qE]J9'QR%_ u9tL4sʀ橞J erjE';$eD?<c`byvLiWGGLGxk0Aƞ-✥ Appۆa (waU/Q]sjl9п0,Jv - : ҹG}Zqșń"TLL}{}bE}bغsNt.N6*p1P5+ey۾)=hro-{i1RĔN7AToRwAJW䐌 FtJr J6Z<;<._Ew:XqG\:aQN!l.8}WJs&05M}MiPTW&ϥ@gSqH6wƐ?%@b&%; r' kw;PmrJ8Rl8xlu.ͨJfT[MLB #91V;k9yq$W}bd-̑tDFlڨS)8*=r|L]c?l%@v+V&)2a27gDdWNkwב( U 8D )\T76&Tg긑fɣ%@oF{Ҫ< RӤob5&YUwSptކSpEMA8ca_Ou7H#H2ufh_şZ!]N$f΍ׄ=gu,s헊LX9[h}L\ uVՌOZ2+wŒXOs"n!:sԩT:—5o(,/a$E,='&֌ p<.^45>*tADI! ~ B/{=W*=<4vQ~y\|n~8|)-!z(D'rO ᇫAETwe:U]: #_ :tuӍ '²AfFG-;ģ\ ;3xI1ЁIl Loj?q35ʌEu~&#I18VI/k l0Y٭5ƉGDY$˱Bs.q܄q7m?&ffZpZI`1>U&W ]^wJLHxWh&c}HU0 7\JWcB@TIQޭR>RM9f(RGu?7 }ȡ_7w#KibY4*ʌܤ#Y=pIbFxZTаeG'#y-71_ HVD+a :(*O/P6o6Fq a/7 ,7(5O;_/j=bGw nns"N6}taB'[, t,Vgsr]h.,4* ɋ'uz#ԧ:?&IgAOB|}f8k|]WM)[:D1Qf-DȘ2OOmV^7_voJ֟YfSoSd[񶸩lhDA㢒b\&Ʃ#>{ZI{1yB2~~gLek]Ͻ潍VĜ̵[.pE0/򩌡%oHD82b5urF5AB,ypbX(4 !y OPp@dK\nuq7cO-~% WP,i7]Wi3 r^P#-N1t d8"Bz#,2'(>+OT..|P'ip/}e!FMۡb;,Х/*fÆ z+;{u6){d-zI.H rtBP:Ų:kZ]n# Ґ}Q~c#cG9tR.[TtӤHFAփQѽzHlKiʡ~r')tt]?MVU b c3=!II\ Tkzq3a4:vHj!K--24 ZrI+RQ9Fm΢K6(21+;Vv' FJ5f[%|U~ eA1s=DduĪ?I N2;9܂@zҕ)+OqLsI$mNnE\R ͍rRCG^LMi}mޖL!(vk.zT ԭLkEKrAeqDhÿ& v?06&Iq2,u@LkKt\0;|,oTO(xGlRݻ^2%=]t20「 "sw$!С}?O1IAjk',ZL"֜ i/u*H\d\t:dvl> ]a0= }`fs a\wNUq>Oԝ8D zZ0WarQ p\`NCC(U$F _;ЋCǝI3] Zwe:?ᜩٸ\jYB3YlQa.Pr[M>G݊pM@1Ch‰>1D%Ҳ P܎1鷛9`<7&􋍃=:ߞnQ,9%fTVz f@< G >v 4s1G;tf\Ħ_¨!7ռfOoқxrpKEW_ite*93 3u.8؃7_U.NOݒ&ڄRvX- &zo6 蒫5@p08zray"LAsҎX5qV8Ԥk(ҥ̆)|c@+/j| hCZq 1+ߗ .hUXn<5S'\.L!aW^#~/;.-cE.Ip4\|v(aA'6G2W>6"\$.]*fW )ugJ36ҔkP,1~ QDX\_Q`IApVz˶(۸!AYE Sv'c#Cm|}us K!a#m9h0#{3q3QjI]ܢ-/vb=v) CG$ڶQ[X;w]vk1"\nb=V6gt3ò6M[\3jGfԨݽ5y}NJsȡ_IP{fxɟ iR/TOnu'VwC˺P`,Y+g4?lPK l!L}W=Xj`&Z_hDA;,-gQ+llP?}lς6A]6𭎍/u6}5V4鍫:M2[8CÐGŤ]VB ԷD|mt\HSƳIݍasL\YH%у[}H8:2,΂U4D$wc4vLJ"b'cnqDٹRv=RF,YOuƲKH:Dq]/Tsݹ$J!>tM8A+lߋ5iej|H( i# Pm]@9n t[ٽoĊ2EK=]_{j+C%爾@mi՟'D_d /r3HkIw'<|16R.5 = `zW1hɄ"?8tΒy%+-p%UxPvyNXTPo~ɷ϶Dͻg c Qԧiu% n-h4ˠ^VpPYHG-sm?|y&c0TM[lVg)F5iyZyB%y${![CĬ.s<$V?djxF]1:ڸm DB6F1q-@[O J%6xWFOBƸtnҿ`RA4p"[!̊/bU?I}C Դo1.A~_b^?ImkzV{f0KeQM**ŵRgf*Ptog6$|5Ró7v[eP$,Ct?&,UF t\EA&#BA jۓE{p 9 ұ^$-"Q)eh0]u#jDnh뭃- ᩹FԘHyvQCk#Ww=A!CgL,Im0QV_B'+~w>LLO XYcmxـD_](Fx3A踌Æiȯ\&( `s(\˯a]IUJ"|e[|{]mD RQ@'pw)eCdh&r1J=ɖQ,8b>';b7ނ;څ[*KB$;n<F:̚1pQ;z[<b( b~_$Ȯuv?ie3rS Oox﷝B/}^+R ʠkEA V~{[Q%yHP u6z<; OAEj`'rFYfYD> ؂ks7wlYL1GZ>Ls!>V)Jш<2i˲_1lj| N GWrR;׎Mt_/=l$ďM}YUcC1i.gw"g>B<bwcOu]q t2Uj阳Ԫ9r'VnD3fac]dT,.ʟs{e,sKwQ+.ؼAݾ#⡰hxӿ\ YMt <*~z0+5r!+ĭIaCyt]5*Sp ^dz[{Fju׃FOOFhtA#xkJo@EƙĻC5U9-oe6UtM/Io˨_%^QIIS&4/z) 0GT,Ƃ";"3t?%97n4v`KܟSɰk(ea@QJC(X4 #$R^ sc+]B8Bwoۣա%lZm\lJ!l" 4Zb@[#vN@!C)cLYa$/ރ_ _$Qr1NR8b!xpE~c+|kFv4ik6=b 6bh*&ևh&xn6Tc=c9Vx,,ۊ߻D5F7FX4@(h0SlD*Zn+lmƸBos$ǛIBtQ;Y,ï'`VScR y$KY i}t/+EL1RݴP!cmh<9Vn끬6!N u q?#Ap$ l&WDb.q.BQ?OjSkH?} %z(f3i9 ZWC뗫)k㘙dӫSۗ Nm~u)csd2A,bDHJW [mG9tXt,\}ʲvG1i:&]} t8ʼt9ae,po{lrR&`M1'(r aTc=N / ( ґP;<`FJ~ZE3u7D3#8^c;͟}u e>Pz9R( 2R-}u4}H'-kCR? TR6w'ba*gw^اᖓב{H !uE*9ӻV Yŵ JXiD4`Y>K;X8Wښ/\Z-W Ϝ!݌Nvl WHID ZRyªSs%!U&Lڪ @e, m:=؈BGc<<ƼIх-L[u5K)jiſmh\j$:K_/o,'ށaكjhpcRK-K4qI,üU\V:1B hDL5`W\H>bz&:8a]OHk[2r@wF8[Tm6];țJqʚ9uv'z~_Ӹ[a_?fXgmźm{ySsѳ9).4O0iX .Kx4%I@[R<(|YJ 7u~yG+#~aĩ}=\nWnM+eezZ>f;bF/ !7ǨRo ࢓Ph}qg$(]#aѠ&_Cl!$.%J\ %hUZNjeݞ®Q ~Ə$@'tcÂ0| 1}/#)U|7e7HA0d4p1;> S/۪4%⌉6Q׃u'C$g2F00 ,Eގ'gs̉X}TZMGo0ͪxǸW,)YsZOu6*DZZQDqd"s,'׍˷˄ KiJXҾj#nmD .es\fks.zTLRDd_s\h++7f ,KMf}LɂT.|@X#ߋaTˇjn??hjūyK^fn' _W2JE4Go9Zc +a7~ yuH6Im'@> ?s h!6=a$d[$;dc!YWcLUY`)K`S uPLLPW/TWf֑/`bc"eN]ѫ_̰z_۬QouӤU?vR%ho]\Mg nQfG:Go@"'2Q+(!qJ?:"6JRñ &O3y;x"۫Υ64+X$F)ue$\GA64B!;M,6'I&k@ 7`,v.jXSU?R#ԙ=ao&dH8$_MA`/kdL:+=Z /|vT+SATq4).Who ќ+h/7ǥC9tc%G(aխZ i>&#PlU$eXS Q:K$J-nH-+*ZnY)Q`?,ѹEepɣ5jG:|uPxXJt!Yb|62%Pec>hdZv]*(Q\9 i#V# qcBD*z7K˗vs#'Gc?0gw儬E`rgMלߧ u؛аVd$ك"4r;4+e|ɬTjQfn^V]!PUdäRLX/fBӒ7T[Fs5. 0|vkt1G> hD] J_KZ\ )S }, 2Ǩ >G]Ϣ ӑJwFa{$d!$h 4s'\Þ ˕{Nk)"gꞦ;}W߼(aChC6d[smAPAc8 vFbnH ucA7?ST(X_0j%c*& {E$XtLħhc"tOBԗ!2;1me+Bbywo/]4Т:L3Y'~nM1iо-FYl ՓR|]L539$^ E!#T ?UG+6utoI/` M_׸VGl vx,zml#֙f^d+G`ؾl[VU}wKC =CXQ Uc@* Z߳ ;H/Q;!H0a.}x9:va5Gzlr-x(!jN!-Q'ƿ֖:flH \yv2k*a=d1R ϷpX\Sc"4ȗ8 {ɯ)؊}.R#g7r9\`&[CGeHClaYقK-{\N?l/Q/-EL9֘s +W9cbp| Jwd*_kN&mğ}{p e L]{Ua& ݸ 6 *NľʖJ2y604F+=N@aڿ.ʏ}BډYNFDb+S +O:D;Cs;[ӣ~͡ x,S| k>k**~2RP܃yiM ".v,WeQ2:^؟; P!΋XJ b53qXx9l;ney)?HoeC$;7 O(:H gMc?qQ{* i,|5'1Jbz.!7iR EB:;œ)B }Sו z)@n-#: ܔ)ˮ8,1YޟAڕgI _SEjW*[)$߈Z;NPY_f?A]@NtXl٤Q.BA4s촧XoVTT^boΞI e-)sTjC(jy+q nGcQySɂ5Vw7]䒕s0>y&pK5;k3De _FSU&FriG|g0"aĹR!ѣM mz%QᇏKC? G؍NE^B[R7Pnth8=q((,1SdO8c ^ Mi~%EƗX}zōG&'>)[6TEpAO"/1}ɞ GGŪ0m\"8l&Ǝ)3{qf{?*Dm]llIS ˬ-rYl3'PžVʡX'%RSf1>1 7jƑf%LS/ڈ)"{g},Inܔ!FZT! %EjFml $]LNE5)SōYSI e"8Ytډ 1W)OשTw(=)m`>2 B (L0$a@9Ӻph- ؅(~=NVdݠyLg"vK`$)ԥ:$1&)3蕫2QUWs5TS ls$ !@[V, %'Lpy1]D)G;DRѥK?3LQbRII/7x*fxT9!s34A- Q4):1V| :prI{G$w]j c|#4VUTD#x99h8~UK4e|'\)a`'*V8rUUziW$ (7]Y> f:.1)sx#:J!{ ۔^N(DT?xp%2Q;ZhSň)ԳaPĆnS-T9p ;Z59R3:]dtQ9N:JvAg&=2pV\ݍ( YlqU˘!R~Sqئg>{ɵ컟!gvhӰ`;7CdY %RwOb Gðcejh_J-1P†tMJ̆ɲ 2's];Żf?`q6^VFWM(SK7'F_3 (jH j9;0#;!{M=VɓCE:Ch cn~oǀ/E{[WJwn}a$ 7ڪ ]]%ғB\]KHH_.(ۋIE=Ǥ$˳LbPfdr0@e\I=wӅj!l>hT64;fp̯PD.a ixPX)GSSBh/N T471^C`TjzyS10WٰU6 1;BxCFdٻ@j z~Cf>E@!}^0PU(}7D6,:0hh5-!_l>K(CyeADyLJm=/K#Q3&#&Yt<l/;7d43%Y;J+qnD2&[ 02VBHѱmiPz [sX_uXAT_cA~h ڑ!t@zeHn[WR3g-NAnS±Ɏ>#M zGQXvô1䗤/P-ݪ5msYl2\N@ ;=\Zm8mH=t ]"(_u(o,c Obc.,'uQue[CU|c#^u+뤶4%T#VuI@SbqL˧dJ`]&5=HG $Yjۨj5y)ػ( >_DC 9DebB_4  U5:I$v@h;jw jP\( a4-_V0#E&tYGX3:X3^{1fqʻ6}h3U|2V>7֝PDT/7 A L%5eݛ%6dɗ2C94m )!VF>ub 'b.'ZH[/K3=KGN2teiJ5NAaAck@ˑ!-}(sM2F31֏Gjº{* βBFK岀>lb: pglyy yێ%Qӑ'RwNG |A]9u/=(g}=ڔ'pRَ7cy?+2@|T+V}fP  <\drU{*־oAXk'PM42UBMuWT9boXJ菴L`( pw61jM]ָd&ph7h[7o/QÊï[ c$E ,~IB"mW0"\z lݿbRIH9GVunğ{b9Khl@7sy /'J}570O?mh| J7"a`m 0 Ӣ f3GvC7<˫0žx!dD6RZƊ*j]uK!Kk֚ šP/&gmφ@^*zpa.#a|Xp爏p\7j7 'ހ\a%DG,501jLΚ9g8^g:{e/ % %uFc6#V@u?Qqj}a>ԁJp tvͮoCU3߄!e⡤'Ј+ QE-c jl +0zuxqX&:V~[~w;2jSK嵼^?>=l:,yچ ?G-) _ pфRt k~R p, ÿm|uYRxE.m({KAP)ګ>9ο0; q9e6Sݹ9E҃j+Ll $p(21Ѩn ԣMFolǥ hkGY[~gɱ )j (O9^> {'hc@WdNr3kv9Qꠊ+CkIJ9^ABlg^P}޽#kcPBzAY[=+V " <(ٜC"yLd'1)kM\553X&x?una#q^霼Ic=nsvEG^$u[o|܍X~'iSjfխL="nG@+ y^nzQkֱ bdPKVId "_֖8¢f}wbgy hX YAW[IZ`[uTL MA6C[6/N~ՂP }mWYq;"_«+elm ׁUټ|''Yv'0+LZe*JƤ0V|m75e}xjvVێW+99@Kr%#&J7~I^b as3jڃ <S/~cql,+ЋA;^Y"1~6.FdO:GeB֘ګ*e7AX[ҡ:>aH́;u^MMOqu>\{Ζԭ]'wùΧcI$L›k V]rp2_5 .* c 5yc okaxv\Z ^׀$lZIiZhg!PEWJ+V@U Oꍺɭ!-7ÅnPfUٵ1<Љ#S =,i\SE *-lS:a5k6W0R˼5/!#\@o*$Ůp%pi5t=w^) %?ʗ. )>t8u4/7q0R̲BGPA}`TpB¹ڍ2qg[Q,{ 97t4]#u[xh @5;֋ЍlwgPe~ʦ I1,V덀kMtZ]c'A9C@f1g- ?eFMпq-#I\ K"Ɲћn@4@%0 h4.qz.#J >`r VA`mm̉ZجHd6epΪSfn-3 &599KnM$B(أmTk>=8jy] 2lyJ%hL6۵j"AAw"_{3|b._z>/Qk3 &\chwSf=IuZ<:4VP'dH̍ ^].DBtteڸ ca`+ 2QL)#;xh ~@ղF} x/|q8ùtMUUN-_[*,$ +]6,i:r%$~&ωඁ GVn,K˙;k?95@2/j8OܼyӁUPs'wPuj%d&nf)YM.L `{4>ʭ:=4dD/xZgw)ElFuQ(eNB5f3_A>sI X\(1 ,@(QzdBCOr δ^ix{]u-&^)+{ 3et¤}ᐮ&ުvY`6$̖ԟz4L=*ARd}ǃlp<~{oIx;W%" r/Lk!/ly4ܹk`_Ooձ?Ԉu*Bj5* Bu޲;4/IdbK-S׃ǃN-6N Ҋb Zs8Rdhuܿ)~qԬW7N7*GVNHÕM\0q@**]>-naxƴj#w-F'N$-Ϙ<`u 7K˂,W:vy#^trun54u醭39G{  ![{ҟ7\{=х#{f8!\0QnDж)DO o_`rEZƾg KЖ. p@ zP);"EDeJp>;@O"TG)^3c/p:1ںҸk&m ^D,M4[}עlcu0+T+Pp^' ⫄QzzG3[Zs{a8qan< Z8̛Okf#k?E7). []CwЅJC΅bneV#< |VI$=I;5Q=d6_fufD+?èc(FDfD7ԩa'g׃F/8{n%k?ԋ~Ppvw׊sVFOM@JX,-whesB#ݎÝ",=Q`k4i<y/ov&ݽrc>gA̚poiVRo?ݾ{G8X7`M0$m>VV䂅B~d"LKrR YsRIb66Z7~QfGY\n 9oP-;ߣXgۚeMyX.ַlDjz!?[c{P ЏrYhJ?E~]懊HFnCNOІuŽJd2mU:I)48 A,x@"CƐ"YYkaMJHw8R|)p E:d>01 ó}O`SW/ⱋfƕs}jX3r@Ax~-.WZyG%ʪ(YiW+7FC ;D_ߖj !\ʓ_j8sHAlԦb4-!8QQHux($zͿ2kSc #9f]=?)siuy;.2$:. Nw#C_|n!]@P,y}M}.-7G;PYa}[|RKmF`mRG"ik=>,Wy1Co̎+-IkAuIkfVNaLH_I4j]&V˞&ND 5;Ш 9glBQA['"F P2]M.?| |J]3t m1E7>YMgLmSٝ`@36hstEZM+J/򋚏?LO lObp;م1?`J!*j4Pdm@V;lJgXzCՎ('6D B)u4\~^?X$yp8jE&~h.ecw:엌_FԆ0=[9k߿1-UCXR̷OO\.GO]G:l<g^y4RV޻$!p4FmA] bȱ;*y4MdT7x]FPZohVct ֿzR+d.^%5We5 C/Bz@YUIގFc}F=,H${XOMEoANx3fH&fA9!α(#''dʝa A!Cz ZHBCG(OGf|^vL+?K~6x/>{{oC2n|yt8WKuV;-$uf07TCzX"+iGX\B;p\]̗֥fiyفqP=4#f{J[gj}m#tl5/g4la/_c HM a6b$=<{tYȥXrY:D\yV}' ?͝. iZw*.r`ȵj-8c?JUq!FϝgFqppe;6v`ik16 =\bu`'QK5.O$Odؑ@N4_ Sā3?Cx4v=[5WldHm?M<ֆ Re/RrO·LiHz֗%hawXᡐ17|P9 { ,^Ϊ7 {>[Eʶ6 @/~`e}"k)E^G?D܂t=A,o(]46.ػ)2e=}.>z I cw Mޚؖ6llK[Vדgwm&SSzįY>r҅w!]<*ͤ:0[=ѱG !2\BVNKMoAϡyG&#.û4^CT2:0O>O7dZ̏#%.PIH"h?TВ7U;~P ];3y.X4& JE;wј4FL9懿YHGHCk 1rAGEX#@':%oECIAF.X#+ *! l`S8R Jy lʿɝ E}_5&$o(\i WJuϠk@u+G^e#W9 ϴe.me2sl C2w0"쇫ER؊jQ% Q$sZv% a/xAT7g=;U5` >9 )`c ڥa@Jfk/XxM7{sfE .50yb-ܸzs>թr̲llO`=瑶0.!L^)˓>/FTi-y \ !% sfy&ĒhS)7$GC*Fg1 -A+AvTh@.+g-;el5l^`H"ulX G$ۇDAā U QbD((jt$39IL1z׼5K3IDT݊$o,629FM%]+JZEJ9,%aؠwAtB^45c HbBZl<+YK?S**@עK U'#x Z{)0>k)+.J0'!vJAb ̔DM> \23lbmGEw!MiWkHI DZSPQM-+ b?@'@(S[I|1Ho2nWWK܁aĤs5av*\_9i@닚)M-wF.xL:YtO :ssEd6sxtatvN}7x1j`ulr.kw]AׯI~:0m2<hAre\%OF{ E9[G/$㹄/!a v(~*"2U„6 W/)" B£v˴NJ}Z׵1 tZy%7.$ޒH# 24|a%?U5Z~H'WY+i5zYR 3|?ȪK t bKw(ᨱ+ҷswc]QdP>/ǽܓ~v w}(FB{l/.`-1 ԕqHɖ BsY6~%,oʒG&{HYhΛFKvq]Z(ɤ M(BB\9\&:C51h3|"Rӆ$in佻T̫\"YoY #@q2(x [17@G)A"VG Xzoܓ!l~'rƕ D/ڬx;g*ztJv6WA[~v(x;\ C^h1|L! ?uѻ؃b/Dh;yдVUmHۄ:`G}Z] QhZ J{A\Yя!إ/UR$ "+=Gh+ڭ^?q b!!r6~x55sf_8}v5p.iurv?;bOj2Lwӣ8tz 6.X'8$h+mF̝0Uo6RUx !m"n;YSF sD?`j+SEK7h7'G"K ~:Võt}!2~^c)/|zz!;,/(3\򑆖{VM M/V/E "7*Usqq?y$H҄f&ēb/zFd։`×yά O1?7Q-3&ύ;Jۓ>ިi3 b';u 2HՠǓ%?.VcګL\Rr\وg?=nK:WYkT#:è#>FVY?l_6ٲ+fz?^'٣YBZkͭ|MuuLGM)(:\Vz3WxȫF0ROA0],`?M.c wwmLGO`$ 1!7`/leb}o{w jkZ@~,-El h+`>hCnw0g=`.z*hZ58JV1&Ct.q (R:  /S[h. ×1U|/}2Ji'0"Xpmg6/.(~Pjr[1׋7-Uٵ9Ch~(L6Aj1gW}&+msa'5.t>~ >ߎcco8˘(lEhx .ף @idpa._ڃ3V5 ̄@UyhvC dŬ܇ۇ(x*暔B0o8u("pALO4tcvрOF$^4ѝ9B+ӗc,_vM0ӶP f`m፫9U[s()õbKYf$(^1]l mKjꩢO+U&8Î:Ρy"d/!ùPEz?C BPb_ayczx~ێܬ1H *I@{z:"T!u(# yWa:cIș@\:2ZM(mpפw/vN}z$a 5mKpuw[By~4;ؾTSlձxWkO*UuB+jG[r@ӕO9`6eox@VJ .7Omq#_>JjhWQl*j#qB@c%IAbXi%)RdͤEChm7=ʄB^6/]FZϿ eGT oAB8,Qcx60堟KFA~ vnzǗ]Z--1sU%@]ZN޵h UʐPT H6,")O ;4-^dSYl)LXWN\y\ @."1 j1#Ǿ ۴ˢjDQ'\% .ʳR3o6;֜~RBF Zp&~ozG.!E-q$yy2afpǧr߸ \Y #dL;[5[# 7TBxe6VpZ [ţj{yM%F+yY/ߊ͉$0$/=K_"XL _|,UGO]?"7 ! 1 kBa@.d Llo,JCYְ9i" 9,nzJjb 5έKA3 X'վ`eCv֚ͫs@w܁w926&M $/6YgFiUssu{1S=;Dˢi1otzaw!"bsG  2W .VW"fOSZ!g \K]MSCؔpQ 5a#>z>[/W̠ aUs5$f$`A?6X h9"`Q ֙Se]zxd6<Ɔ+nOI%4ۧ|꺭 wTqe͘J-rD*mZ"KEyJ|vI-r%M**([h7P@N#_'}cuWU35ϚYmu ^ρ?4:*ɪuLHh&GbL5tc̽.3r:[ Hٯ9YB]9kXylwP5}8mb8Q%fW4}|U'΅z\ L8}AT3&7m$`Nm\b?q3ˌk?&_5P[é^#@rfXx N 봧/D7hJ&.e ̴*{Rfl΄bUNeA*Zv.-:h5+Z?wZ~1$1x9uivN$ͼ~2ߙnQZĈάtFvDGiKT΄S:%:z i> {s~,w-[~{ulӔWN\^ƉFcc&fl*莕Ө뙮Y Y0N%tZfJ ~M:v,ַ%٥.h(` 56,3^dRK`d) ;} h~ϲKQhsz mn<׸LaUS#^!?ׇyI߯&;^ZK C#$>IIyc)@iU*$B'*nT_Px$tqѶӠ-PiulT9R馘[ߝքyX 6 QZ*LD!t2 +W &"a[z,) ܽnbjk Epy9%V@DGcW+vp #S;%u [dJ nҦؔTe/yRhlPAKA;nw4Teɋ0-r4 Cyl"]ee]7儩p,g[S!rZ J.M@bc;2_ @_./2Ճ,{b\@y7Յ8k:kS»ˡ~mJ)W^Q @zA(Z˽>P+ΰ[ |>3΋"ݪNQU5]]{b!Yg:9t6_|(dBl"+7q2+ZoU; pN"4ݷΰ}>6qz`.ˈKoGerW; i⼈Jl;C)9~=,J68NFN^ eټ g9F3~Y}-\AnEG"dK׾M|]z32l(drw{1}[Ӹ~ҼCgm?UZ?v%;3A@Z9'+sZtsn#4O<yM8X?뱇 h"Yq/A@ zx4)h$^q]^sX=>Bm^ X]>3lQ[۾aԑjZUZ7zڢԽ{PbX|8{w$ c&gFi*Yv "  pߊf4ot#x E DAcä h;K BLtG&gETKYPX2шJ`A-;&9AA(S^Pu! ƭaPӯ-9EbxjˇS>ysOYq!.37vLc+qy"֣='l*\|q>[´g94e"},׀H sKb4d߯&r~: *Lf62Xts7^FvKSF5-F5z_0EvSVrR$X C'yA` #Bbx$DYao]BlI>wx 욊KTe.J/߷K;/b}油O;RuPC ",)u&_ vQ;+=ѮجuX~OvE7LX+ٜ4FcoQ gFX9fkf 'W|ãȈ>nKH^MJ%DGxSXJnp.5 3q|;#\Xojմ=W̼ [S*'3@w Gܞx=9HÑJ߻T2TVv QtJbz64+Q [~ohn$[^խs dzk^G?mFEA'Vےj?F,!ąU$^ڲ'2&Zk%3H 4X^6 h ą46$:v=>e*FFM8 Nt'VA'V&D;9w?MIX@"\FKĒ 5~.v_SE"+ߵ0":7ʹ Fj=4نatBQJZGk/(HԮ#b˾}8><݅Lx.+2m3hOH91Ѭgʦ0O}CF?] {C8 m\;Bנ_ h:dme㰴ZsbY6>[W)6v"J~Y4;02*YΝ$R%Xy9 Z}e"j&C{Y]&:Kq`6.$l9`M#(~mM/koѥtƦ-_[^6!̂o,D]h/ț(YOąxUg(/OðNp DO@+pa:dkazujfJ8ՠ DWK:Q'M,,8Qae P <@,vW;Y'M?~"41$#|eVYoj'30N;F_ ´_<zCgJ9K}%\hU)=PqdtTKwN` `bG޷)nw«[&5PILrcӮBioW]T=}Vcs_'E^WP!FDJq.)S{) Rf@QDk843Ibhhw2 ͚URuvLLqߝQP$ٔĬ 7, oU6BV*UMT<ޛNspd27GM& 3͘K l23Ѯ0E2mƐ}$i=i hMZ8-O-Zy.㕭-gV@* 5 P:Otd,7]jsz08X^ldNKP&(+:$ XUGF哔F)FKpkfr$S4hvxk3#W P°m+QLd3O] gzsN|NЭ@nӏ=kjj5#FBQb$ۦNr"er<llEwD i6VVNK8}ҽCiVׁbquh۩Ê`q̝[B'{m>]fyMov73 l_7~1 ۘ);]nNI{O5w|ddXq#o<`Ͼ9?k $6K('kmk$zV3FKag]$YU0x k3T4{uMB&^DvUQ>!EjP\M =)w1;d^?<^w[$2(S;w+Zlr'Gyh[3 Tm:s<$%|Fx' CbHdE{pr VP\ 26ЀvM|/YD%"'HP~zz쎜?ٵ f}w $XZJbԻ߽<04 }њwqNLANEf/HiqIȤ.i1b"nt|BL煴=mnMwp$O:i/ oXIT: Į'SӉ!?iKzCDaPɟ;KRg3&Uc! *Qb|RBZئt mb? U7KO|Eb}(ۋY=:6?]ҩi#XjPh A!F??' f[#`/X:v xTF\yFı)ة񜊪@$7@CvKl19m d:Gs݌"DnlAU؇YuX{(,( Bu<ݕYCFWJ}DzM).LH-W6Blt6TDl׶BiTVQ0G&M5gKK[XSʮ`GxыJha-ECvVUNu $SST @\S vdWsN.>3!s%'Rs!k3]%H':N8-=@#l8˃s{=],)nA\#W*x!F^ȉ(ѦeIS:NҸ};2DT!NFxޝKݦFd_Vw8MO{*χwCd1Ν=+8)!3 bA8Wڴ"8z7[9H[hX+'e0vk#GAz[Y0:|wU A$wIN[qObDT2`@|wPt2V9.e,F f'.ICm /8m=DޕêN" 10qIT6'wݟ1opK u0*~atWUQ4޷槨g9|JD*>Ld>j8ؽ!̷;h؊e(eiÚ SYegyxQRa =K0@8胜G8pOL7+CZ̭ǪԮjK 8&ך02]M3fz>, LJ8Z=0E!<\AY;%GsOSv܆AMdWJֵb+Bq;3 OGDKZhSsMkgr3i.z+Ne9ƒ倹s`VS"Rr#gW9u&}~þMRamid!-<)"Ez!63/u@rՁH Z|rIR޲^$}Ԥ#jdlT P?G Ge.2m%u8YdWbXƯ$Fj4S'as=Ybj˥Of ~djKƟh)6/][̐x;˗s,ʛΕ/rotjx$ߢDuik]' BPq-r9Y'v3z[ !U<,LtXh;PN3rGݣm]EAY maB@{M.ˊpxRT=h7B )L?Iwb<~"9m4XXFr]L:5^>BC;GRU2FP*Z.*C&/W9@QVmQmk5 iY̖ȩ@\=wQ; <7HwJuRE7.%/B/k/JC7*oNJOGS>>Ʉe)FpP iabo]ݾ|\XBE]0Ne;y)B CrT !U S%߶f:<_嶇p*=fbtI4KṲQ|GT"S]-8`U 7BcҰՠKO"H|wFp5RJ),LLIA p*>(za7RhcܢfRGn]|!U~PxaFVq_ '4 xc(ߍB'(R3PjұE .)>C8" %Ph`'jkطI{^0 t,le"%{ is]E }+SI%ˮԅstz"0`pSncc Fѭ!ų-EރlЧ>rnӦl0'^:śuwF (}u+rڽvzZNq-W \~MW {ݫWwӇt T#lX-] -@ Z\p_P,LD|pg-[OQ*9Xցۺ ;-rUi`ׯٚH_ tDVi0_X׬;M3l` _KZkBOqaw ?fC!nwP1%~[sdl {!BQdQ>k{i)F"|D}lذRǀ΍l*$J<\9]\ p$Ι?{μZs\һ@-жh TU Κj][@ &/ o1Z: Ȟ^ dfԡg:0zӆe R\9]ϐJ]f/QB9RlMrqCh(_<T-(Fp1txuרT5(J{C>rHEj9J}CÜ N/8{J v^Z/-9S#iK+9~W*):/-qd +?TL ʀ{֓Se<5&qj82Ns.G+?NJG.D#pj(N hU`tg1pT)b(X^ Ju!@Gsl8DxgI.g5i_[^Y?S0GJ[{g+,*`4r~DY1wN/U'$'7s)_ "`]0N+9gZkB$نiS'sجV!&ڌfR fJ2f2uPJ$ %;IR,4sT38fBt*\sRmeAΐE|bj Pz /˫=<:BȞl6Z2 2?b 7y B7&QGviI^ +{1yk/6$%=Ngˋ^Zd Vs/™^ǑMu?IV9 -ұz '58D`gȪh|ӎ&>(N6SXwA-Ϳ{g=wР`:=OKtHE菑U I,jG4ep} Rq"CE)݂{+GxR p"s؜`];j*tVb:7Zųgf/K.s⃕_شLaĽ3\.;hNYPjy8~0a\9+ϳt3 35-KYE70T]q=:pBU됙C\G8)qLa֘:ԃ*^־Fd@KY(:oȌ}ALkŋԇuQ[ RnWrEyRi8Jϯ_0Ř[<5YAmg 9 К@ pU-JnsL9b^ PwjBWL a~G$R vc )IqƁ* %.⛦O@*_(cgTCF#ҬV Nb[I.7f{h|yX(s=Nat%Ã2莚O T[M,2OL,m>t>;CЫ03?D|Vx -db[==x+Q:y Fo?!Y& v.m]v[SuTbݧWQL"KdA8Γf%+BhS"#9Z-ׅIF w0/D38<4 xbZ@vR}E-e~lIdx/pLcz3^umq՜UG*ɫ"q2,' H,¥ݾF3owڳY0xf{N( Bd%':.<Zg:Gpw1 BN(54:'jyZ}P8 DE?!1,U^ԱKe0@(KnBA# "KlY:z3gQzGKVn*TY#zJ\$tpLrTF`v5֕w׈pH^c֩ u) @z;!؂T2=ro XV+?Qj9KХz=! emEl/;X^S{H<7T$"A"(\b8t(om%4 =&#Crki,PRBI|v|\ts("~YISjN~oķ˖%C5p®R}#IJn -*EISGi%UOkO' Uӹwn_\.閠IQMRW{$o+pg~W;') ߚ $Q@V_.%[b5#NZ5P~9.qJ'Hi1&,Gަ&t!W+9ދضx/5BzoM1=M>~\$?G/ Vۄʔd]V'>CPkaŽYf 6$Ȱ1Ng~T><Z(Vi.DK{3qR Ǽ"6YDq$WfcO:z4kU%r ,/#]CѦs1 "X'?oe):u>`ϗ0~@KqRɳWBZ!nؽnzC"y Q%z7(^[)FM'D<}W}Yuv5`6#0@Ĵz|V]AyϜ:S)dO&>GWPalBeքz:Mp9KKShD L9#9M>KVf  vV}3ZjNՂsdynq<\Z<#^@f+Bl{{lS9vkj 1Npl]"E'f@7.&IjP^=V&5u$riR!g) }K/MZn[B,T,IӐ88`Dr5i7hB^@r^e%?=eq%=5vѣ)c:Wa0eiHIT!2;zÀzcѵpRK` D/-oe} voNt'u'ɮ_\(A9|̰d.vuvɭC_f0 1Q7p;傑rTV{r%29%ȢT`'2ÜXl={ɶ;bN8x3V~%洪HD|i{l=K/uHU*եǥwv󌌏̢H^AAѓ!v|4f![2~2@+U99TEmڦZ -…\ Tδ. 7DQL>ZB&e`<0\pF4{?QK~o!=wjo28hk+`,R Zff3}W(d΀'\ތʎ=I$e n(tQp(I#ږΦ-0-vi$2p%.Zzom0jG%ËGNMwbi"__p1/C-ϧNdgh;e*5tWfi>M٣GpR k@各˳/@#|ni~V!Z\l-Ӳ uS߅%v^$B|nG*sI8y|B0)(,=ܾ)!fFX>+#z+SהZTV48o ^]+?L ]`O;2`產//V|r .D$e֛ih`lq]% Jpnv5ճ3*W X8g<QclՅoqr+:pgBEW(yvz8!% 4ûMEHL~>H$; "a{+XOar`Ɏ|pO^zAR2™oi Ӝnde;E\]aiv=:dťcgIz;4WH 2 IK'!WV Qum =H7bee 9`eL i@'=k>! 'בvafN?S-_eźFHW8:}(%zhvݡ v~-NQmǖ,( Y˛ ܌y,\ }tɅT EKϜt k=1 prA;yyfh9,rp?aqz~v#e>'hUB5kALOd F̷H -#t?=Y;*uN~r>[0a3bҩ}ŭ -?F[nm\H8h Eq O?xtb~UVƒ2`cIhT7BBT!iT[^覹bQP\斉IZB:R>}o/FָL dd4.eBpH7S[G]=i@)psv͞Ͳh8>Lt` t׽d%}:sMd VQ 5: 5Oǚ/zWKWL8xEGJX_|7s#CnGZVo?9{aiXX2'kkSqmo'$yP2F,d>{WZE3+6rv\x{e2_^2hm[ ۊْAh~>&Г@e톋ަ.&glץ2Oq75" 2P/8~gXߘ@,(aOa-Nt|pޘrq_*z$D9ZZgJHOcwj8wvO%lؠo쇁n!V{{`&ŌF;^aHwTRsS0A_UmON4X)4'*Ԭbu/G傜 j;59ee4O&I8C6c|@I6NAX`>$df"wca"rĢu.guxBzu~ lӰt>[y[\8Z(ԥg{ pt`oz>[еQBPM'&"7TE g}q_xFcqM#hIfωEB2bPxwf5k;‘m/άQY`}3+ ,p&-fc@p0ggp.vפf4>,Cٰ3]?Uyң*ɹNH0 )M*͜e:~z J.?Pf;»վuKioRwvvUT܉%3FVHś(gL#-UtqW=HKeޗeT`eF+eB#s?sκdCȴ/*@v&R|#Qq1Ai1xu!5G "e7q_A8̧*S^Wz. 0ٻPT'Bm0p01y>=]>۬4'n"3W#$ǏXWtNeіJy;|7abj JyAڙw>E-C`|@ex?ucCYL{Ԕ~wN2aYDPutyHQbKf6aH!,H$ Vw~GOfTA<4j}c#DK}3$o gjWuW,taOǎ-\ x"nN5E\ L?)J{MRb/EQ}*F_^`baU Y SF!,.5 H̾icCUPx*v^S_1ujFqhzU"^OLu{2 Fnm*E^-E*s3Q v[4Lbnxncc0_I&ц |O,hMy,pU%UHۇ ւ)߼e&FA9CAE %!=weR'7Qդl9^L(`/0ꉋ͹4PfSPvG OϰPjn/ ՔX+i&I2@{;9|GSnkA~²㗼CC%$~0BǮJk 6*^Y眏g)";j+]B}~1 DbuQ}@RIVkrIB՚3j,ݵԄTe/cp1]љs9mñH|Lp5Ax/ݜ>)8QUfiDW@MY:wIɸjbRe)1z;'cG8\vXQG\S(J0Tw#/~<_DV ZuBKO_?,X/[9v> 5@ezYpP.܁zY 5'7d%QAt|ÒҝROQ$7)z+jNXK"p9:עc5Lµr"/DOwmE㉓^|\I+ z7 I;?A4gh~݀am*l;>ݽ+2%8O. ^'UCiڛ;M68gIR%H3@DZ :/_F'iNiP%V!eQƠx4)q Nכqe3β;#oU<N߀H_ ;]Ǚx* _#)26԰m~ݧ/cKoَ7:Y6l:}YPg fҘUVr G| nGvrEFy vy^«Fdk aeWP}!'}C|}H\NTM4Սql> ǽ8hpNZ>9fc,Q#^y.ޖKfYlnBz(f<}3U&Ͽ>ftҝL$L5wF)$_/g{ XiTOA<ޝ+;$`-||f LWZ\2 mC8\G"a<ܑ́ ܷt o_Ut#^~ Z6|>XI]5בz#(jkf}>0XNּ"3D_T38i\Xk%i1J̵s8nl PYj_DW@ ~|ZP܀ع|kY <PG6ֹy d\58w/:b%@dHeeL[fU̶A~$l -Q}G+6@ a-'{bԎp7|ue3Y$75cOgx tZ)<`5@%*YE#QDH |}`uݙXURY18姵H%+Xq?>$H,pU sD]V9j׊7*]CX@(FD(*M)fy}kmU<*W @>BP67")9Ez}:hdpR]ky}$ gKRm\P [":W`)W\U9(/4TPx>ɔ+}ȟbݦCyлvGoq٪fXA7rs 0fO5Mzt>~̉W"\0qxJZS8PUF;`5Ows8{A *8'Q ooX S*_ٝ9TjۯcF9G`/yp/$'cm6=h&4:{}v[8?r&M;@:3 -^8 (eQ5J\hj j}?iGoIw>xN[Kiͫ<~)&m0IKH8hPd<9K(&PXu:[1^G/kr tMo0U6AԽぴ0i()7D̞^q6A"g֦$|90T`0Ik6N1/>@&hVA[C*aȱ(*nӖL.LWJ+"Woy2m݅I.zf0%4(V0dfikHkvpV]` %Э7|g2_/5DruBRM^\ O$g/"TJ{e+ݣWJ[L!"N;;N>|~g [8|kC4AjÏ`BsHN2ٔw4Jy4I-I g됒 MߺS_)ES&WTg6rJMq(_ s /H5StVaC cZyh{0!Fx B}[yY7qo-6*Kx8r/@ۤ7XA,ptXq^n]tW1uzgyV rX]߶2fQNaڊ;ko1wGDHvJvD ggJ%]L;L:|V~]/l~-BLWAH&&~)6([`U}362ɟ<6#~j.X*rnU/?oUsK])T ˾WGgLjޓ:pjJ?I}5|K\&o܌~ 8 Qn/%氚 ՙP)Y)[A)ѥ_g3(!d!5=Oco &dF=H_JՉ[]oІ.JVֵe{ {$]4A_:#A^9eu{ز歯BkQƽK~I/s^'bMQǑQ*ٴ_-1R1CF)hDZ1P78K4n /y@ǝ.C)JOfYdQ\5m !$q6'#AJ4~ z`bԾ>/[JãU|mp4J}ʽ5WHE^"a2|;{hFa=# Ԝ\Tgx.V1t%LxVx3'Ϻ_ &qΥz@m8eXlك[uv%>7raB7U F6 {dE 6zPHK)R0^t+1IaaBdz.0`V:6O/#q WOmTrvE8yƬ#/$fd)_4-JUR9K w([_\~"k~P~KFj{K0Ksz#y]GS3czWY]!iD+w3_vØYUOE|YlC(5t>}%W8b9ht ("u"fF5~ J044C<,L9`KWqcaH:O"Uf9wjZw35/)f:w:NXwX:CHu/k&$gлd!uĠ[hkA/_CW>FȀZ\K>r)Lҙ DQiGr7W}deBWIZ'p'||> 9+u0*Ԍy6Pա73rI 8KFA$g=~0V0=ӰYy]+y ӣWd7-]{p<'w]7w. !牚ru1ᨑF1׶ằ&5Ld|XO"CW\9mܭ\1'nRu\"P@#oEnXI'u,ߢWt{twx؏#\ ^P1%$ʰ`lCP{@Zҿ &k C w"e|Rr!#2> 94h1 Dv(=B7RoVo'왵g겘a;ooB[k"s奞PR(Z砌3M:O OZ4|\MȔ),죓D)G-橋8`*2EeNe Tuq/?6!PO>{^71My_'w;0dVTdi~r!Q|/LX*W23ezOjFOyk$9tA)iGiŊ[0;[4R`OG X6ӓM39EgVku.{a ,A$y\Ӗ67Tz Ò$_QVY0@sx T e婫<8\s:BVF2(Y8K5+j d!Ǻtr1U׻Xv=[ E]Ŏz& EiZ]Zu,/ƸZL[`lʯ@غ4/ݽ~ļ9Ni(Ҋ¡s)H1pp5YMw/gmݲ*{Yf9k@w.})jW ECƣTq7,ق2`%BNT0s0HPB\}EwҬ5%,SeBJ)op9A8xOg;ʙho!o>dBo`ޣIDqԣV.} ܱC( *Ad2i[] n,b(>j#Yݾ= q &c/v~QE7-_P ]) j($xg:",TP=I~@<}3X̀=^ז\9.=G>,9"k)J. a2{g?xG%ǰ_Ks#^渲;n* mϩ ^aҿo^ qW4 7aH(uT2c^ Ғ$+hbS5R*;7kZ: n\fZ1p`rD;[Weq9l1D-1 5I*_0S9eGYÍ+0Ž2?oH| Z9Ⱦ$30UAX`׷_F$. Ѡm\o 5R;\9ixµΩub"󏅿Kxi>E5fPZ1f\\Yr_/VPadZAf@T~*37x*hWn8B1oi0m2%`ШC~o" )Ajѽ>SS-ݬ/q6Nh;b$`ȢoЏ[E~%s[nT\)R,3^v=͉(M`t>h.ciDĨkO8k:cŠΉsF^GRVA+]h`>i\5 @3At4й-/A5HO.46nž׃;_sƳnl(Bj%gGka2S,MpaVY[}n (Vz=eЪ9A]'9& l͏yg*+OAݑ SW~#tņV̸a |𢀍pvTŷXV'!*UٮBw|;JMcͣ[S [6 2HJL}`5? ^YzDg%1Sl~L4QP ھxļfMO+alNP{lᮌJ\aDm>u!XTe rdGBw"W' Ɲz3H=4Jep)#Qޯ`t 69n|J?xS@1P';PLL9zKHupV+twc4g..P%Ebۘr9d^ ϬM6AS``K +a7Gi[_K Ci숌ܞPKxRX!eKTnMr4_v8żC 2֤C #DI G͚Qn^5BQ![+ftt>L(/ 7UO [$DGv o<|zo\<ؾ S l勏xZ&uq 2 HbU{]AH6Mʢ^s28 /xxpH5z'q|R4'g;\TxeErsiKH"8/]wP++l>&x% %6TtϘXGtRQ5IfpaJgە /U-|Q-(v(| }tG>G*"ByZ S,J٥s)JI. Vl~|[bJtwL;tym|aۚW= ̅Hmv7.#EfvUq@ۛD;tF Z\jgD=<\Ǯ6\Fy<0|&`s:eggtÒF<\>L͛%XUa|*\s~f0CtMlnh}E_ҍq~dgAx9E'=ctA'pua&$qd"O}68g Z'B}0.ǚ3NAʜ-lǔCo@/0-$!# \=&̣)X "H, /y׳8#B)Y P_R*~2SwVq @<WM<8Y3J,Z31G+R. Ԃ! IӸJw˿L%NeۓYŞ<0+Rt&Qצ#w&,,"Ú,#q_Yk䡜KI9);$r>1T^L/ʴtP$ s/ɹA*ڦƒb#_$yɓ,i!~2%ʧ$Au e8q<۞ 36 +GZ.ūsXO6t f(B?ۺYfLЏĨ986oTT_HE*-܋cV0/#DÊr~c:W4or,"$iP'+i&W0Ft-4'Sm)=;GFkď/@JsL [?]†>qokxcƸU[z~`#S|M+׀B L- ydz7lχ>qmL#a6wZs?> AZ˾<+|'%=Z.Rp$@=HyߛCJ}xzÀӜ4+-<گKsϨZ[$&wBeg S*3INvjXﳊE®T*n8Kxj7h=|:E"SHvO+ #$WY& (C.&RpJJm,"`"@Φ=xUJ! -R9ĵ_ФȢĨz+) 4;0'6aC۹|E!d2%k֡Km .|'bcՒ c(^0&7fӓVpz )=>]5l40ޜaCLsAJv~m)q.`4c/-U8n9m*X6AqvFA5݃7^&uM15ݸkQ ?4dA c;wY?rQHva"i7_N!tBUR?-s~SRKOR8!'p:֥gvh@bmkME2rJõ<Ɣ({د恪|GGj}ҭ^*>ZE h +ܖY:e@4o5˫CZU&m (u#ѹ=0܈U-Q1K̐茚YM N3T%6'=tAiMhaޗPx!)]L¾aP9Dg׭p@NCv"FQ6؋5}j ~+Ck#2.GӴMd<~ `(k͗0766=*5P#IE1h^ǛI,lcBxwf|D.УWz8ʴ0^MmB ] (h|ȨGM1S5@~^]G׎ 3W֑*3 jR!g=י' jgHzba۹?'K3oc(3"Q{5^K.#*IKXy!mPypU%ܱדSW}ZX/#Ui:49!n[Գ}źTMl|g,ָpn噩U1bR[ߟ3Ǣ0Z|LU8^C 0mOR cm wd,+ lT[!c+J3tN|k"8% 6<:FB=\yd}!1$aSdZ9G[Wǝ:ӱPԍ/Ҍh8N8qU<4DG ͘s2L .?P^.6-0cCYk6K2dYd@DG`1$(JOb@I4_or_`"^߾CFKqJH?fZ0`Ѿyj bCŸ$:abSELt05"aC435#i61- F"c>_Wpˤ&řϽ v̨`TN BCsәzJ.1Ԝ @v%q*c<'lK({o: o +#T֑73Ml^(bNqdoTz_ fskC,E0bW \@ `[jmn"ɭHΉ+(woo~Xbx KlF+$Ǭ!H9/tbes7N]VHYk-* k;IbJ=p)_ާzخ*qg4 #C̾^w)iE5 SOj8[NɼFar-߾sa$tǵ1ƿp@0ҦrjRGCJbzf/+ѫv4{7>O^dK&5ϡJ{>u< n9'0C%^vS{![43\ 2vrus Π#MځAřȞ4ȏ `+.NT0]3#Sήp5{vzCs>V}M%\-7gQ8Lо7ʍMB{:io1@~ y,VuhåmO `{&a{T]Td.]@Hm,Ku] =gq*_zl̓%` bdf!P˯S ӗ=ia<2U =7Sni[fxI2cс;ztjZ7CQ_qX%Ѫ0ڌF?w# ,^UOqQgė&D8ΝF`n,6Fvݏw#Md&qg.~adV:*1׍_!Yk.ye"K 8,e=ý>-cӘRDJjHRJάxęE 䯭鿥tۅLBjQ[˹6gJRV~6[5.C仸0i/6["79۲ [h/K):u4ranLfoعs'x*o>9oo VFi9<_^ ]YLDuOS %UTu"_Ob'SU摟P=ݵH!%mFHX_{:M=sh,|{Z8l"`$.R]_y7"0>+07 (~$+3雊g76~SӠҲ!]{=O(@`Ψ|^'崄aS覞4&`Z,-lIM IkkA?Ԣ9?*=_aU&L48m~)Ür:#+@11&d5VqP [#mKHi.mGS+?;fTY3:uazBXqOQ)73WoTp'n{b]%,Mq膦 å~?iIn.6=eM)9-mEaB9 #ϑPfO3m/1[ VJ;VsrWQn7˻>wޖ7'o |+}}ijueB?;k-{Kz2홥':Kys EX)t]N[(dq]ZA; Lq]N\nqʎ0?k''O@f3/~xR_m\}`nlOBHq1=r;"Qc#JQSpl|rƅ2 -DVH1ϛUi%BB0R\[yPM?3_ i "7wG\¾DɉBX_K֟P3( #ucdۅN4.q^`q#AIA̔S4]N=_Buw $̳ͱ!9sH߹3>DhۚtfV;CIK|ڧ|??bo8_AֵhX9;LǍY*D/ωAQ~5 ßjF{c ? i%bdFB$1ϣ $x|FsnH15qvyj_7mO|&lFFCb(bM#@^Sb6̀{j(f )QJ@Uyc *4YUЁ3k09i>%gel}a:YTl&,pν~O! Ҁr=OPGvh9N8hICB)kv dcb98Sdu1R UZdrF=Ž$̘w-C(H+2V]³^֭hbV* 6 fMQP5F@~}=T@UCD؁3ޢ~z1ڂMVv~>l܉?`6.GMb5^q@N.yy@N3:fߋ 00{6aG }Ng]tIHy^sGOwh6Ei `9ҶJ"g]fhʱ׿S|]X#j 9grNdqXk -tlF\(t*z[rT? ljT9cuhWZnS^dSLe0,S86G+P2 ,B!9=Ǐ!KF[Zew 2PnӾ]F5*8fJG!wB#C߃#g#0Z=xD~#pkS96Q۱)W7XB~|P߰hw-k]ٸUtn2,PW"oΆu9 .I(%5dhcx3yr.er1PõWdGiImiwlI-nz=&o8[Z Y̧;Cеhĺz%A}sZ3QJNwn ,a+ꂀp=Y89D O $È#>vrL6w{߽ X"wO:϶݈Ç,7P466Ã΋J6>5+6 eT ixiRR騩13)iRFC,9 05{=0+24 ![XkຕʬE țH=µ(ҭj xOݲ}?u\ L Q 0ɩfp^f 7O)3K%^5XwiHŨ2kGBZ-)IᗺO:B'̟bTjJiߚ{oû,O>ܚ>USpɧE'g-dΓZhq_$XsmZ5Lamv;66NOy #쳩@gvx㏃oF 0" 9kRm>5~/ahQ&Xg.B]|5Y>ѕ3$\q~JU: 8NZ<9OΆxQ}*z;+]Jfy82s`;l@M[W(p= [0Fz_&PLL {G[ߥ!IrpF4G3*aߋvH}3c8-XpVċb>x1 MmSGqD@NhbR<;awک{%=yO: 簽!h|*aپ21]XF֨XibA`:o"QDQSbpL^z֦m2%:z,1su=.:s;XzwsfqCEj .5ˤ٩-Ѯ̈;ͼb-ό/BkXQ_ y55#݉ XcCbzSPu6[\8ɗ8 91BdEǔ /#V>朱xY3&2{GH, ܧaeypeq5q*{@ݹs=۽W?ӓbn7R}ǒ eT8}5a{RUݺA>oSiWe`bn H"L>ˆ:L ތ6FC2H,1m-&aיsx=\]`sjXgLȯ(T ;tc@n:́|jv"{=8f-pzO_R[9DV>~<ُH^1BykyȣA?D_|r60eVlK94Xc'RzJ+Cd\sԜf[M WG6Zo (h|#ME3[r< UCX^Q0>+vabIo*?2*H&U U{@iC?lEK%RT%J%5wXqOߛ&JwĺȿhSW g~th>G+c $Lj"׃`?M}AD^)_$Z4S-/BӲOC̖.">L1{'jx}@?O mHll%[6E{hɞ9[pɬRvZaֺӾ֩*GS*0$SYW!f=ʃWێ>B,p%/oJ,I_:-F5Ь 9+/\v"?BeuR_,od(^E!ռ#{]2byk⣦O+evS]R^gsӢ.u$F4ah޻gj/`kwG4>yXlvk-G~`:_ NB.l=eύ;d2cPY†msH5Xx IA+{ۆz k!j)p/>V40ӑ`ۜS`I#c#Wq ,a@Xc fjjIMWtF\<{W*P|Qyj[+ ~ưO3Zy^6y@t#osQᵾ={p!v*9{?ojڄra@g= ">2VVѓ30c:rmx$7 #_!DX_U/*Wx ):-gG0Aju2ZSTCB^19X{꧶"ސ@Z.P]ʋ2 ;*Wd=C{VE` rA+!ߦ$JVА] 3Ј쥅+ }C6XlEZTV򏚧N;C"!tYC:Aj4I:W]xv|Y&jh+a>J+ wߝՇ{F:0 2.Sa/RL딇gC2= tv^Tmj:l`v82؇Nzˆ172P57[lY^1v`L eՈwiH!nuv?Go/F )^ /SIR t.QhHӖvꩱj.fҥTGd GH2Y̴Xh7|"?Bah'=|Oˢ~͔]=.A#6(h|[ֳv82")c m?pq;EvC*=  z 3΀,mɾko ѝa'TTy(SmTkvrqy %uxc{5,E~M 3_f5ѳl_.68:9"=q}j"^f$tk4Q;fʑLAk-4dFk+;;XlUdiob]4ˉ&{C*Ѓ&eUCI _vG)Q'N9-n4Y-#&*lUD#Qmܹp +33_Zk py P \%sH{WD?q8yLSDΤt@ge'y'GL<A}e֩d+ޓEm("zɝ)á$3σ5Xn 1c|ՠZZ ,NiAIi*D^ny!3]=--""HRIz1Pi0i!Hy "GlGKA=ah?ǰlПxLDbqEyqF5&Vv/SNZBK;8yAsb7;X@r]j AHf=[=@q dKJpULj ] *غh] }wFZDžRe %e \]Lwcwl Nʉ0̯[Aˡ6nEUZ!~"g01DZڀ ꮖۍ`] or*ܬ4X7d3GɊHP;&Õ F.]R9b_FJEhtrLoտ\lc%**i >~M> tޱ 7K͍ g\Sd 6fc[3}.z@L(la{\W~0 S ,09}Lu4ezr5%irߢ'/IW)*)kRjvO^df*D뀝m`#{0<Ƈ>,s ԢcS7_՞N p` @0qB'725\E*ȅZCp] ZDiϮQa<&MȁߩCmTg-, MЁ(r~:W[ Fá!df+{!OfX,\u=c01+)2"%R0 q>EJhv)Tz-"D j]EY Vx##(*YSK`fJ ys~' ;;xHxS\El)Y! '+w?PrSuo}4HsXx|)7 27F"5%vgnhׂ6Nri]On/DA/6iW :=A* mW .ZWLX|\=.Vfӊ y)[-NP ACI`؉􍃠g`)h8NRWf,K'hH 4cxy~[rt]اOfh6Z *"Y-?&SINmsgI!%ܑɐEߟMڑ2RgHo d8=cLdWgqG@dֺ0CNXb1P ?%l5<_j<4iSe%wSL 2W rHn涻`(h7Ǚ0 A`Z„Vøe~Oǧi{D~oKMPo8,oC"3Dt)yU;alg0nALWNQdQ_0n=جmYiC]pl9$(bSZtumm#7)樖 c\[0eJ/?Z}ap*۔b5Ҝ˫?D,0[7'-RӇ}B7274Уbtx*{AaRr;MV"cpE3eGVzŒ1Dc?4BaMJL<10Ȥ60}k CT{]90GKL$VIYnp^B9)drU ۑ20Q8-8I2EZC(R:?f06tnyxn7y8mTdЙ%_E*~` z\ƚ.J/ig&qI?T(R-VV]\b4MeE}Ca7]glԦR[n.{-_3Cx{ ӗ \G (Dփvg]DZ`7[E!%NEh*3z@ʖex*O=q#Wq=բR(du[Me{@ua;!> O?iMIJU\iF6XĨ3¹I!t`_gsY @ "0R6{Qle!o^OoМǓ`在DrjNڌ0 kK 0'wX|gfPQ*(TL @:޼y@%l?R=]7ђTm@^z[ TiLdpIiհtg93lll/o?$ T_?¥\GG{?e|A(2嘺QYZK쿶p;-^G>Ďw4b^IT,Uu [4-2F#H eLr!auϷ_;$qjq#U㎔Ec'?Z`D)dȅ{DPx=nƐx6J"[HHX07°\„_:LTZ%E:E.~F{~K'Է1^N ;\F^p]XW U#=%uV F c=L._W بhj %O6)j(`q&1}d`R>r/ta7ƴ\0. ocE by3nJI'1a=3bf8J 8Jb * k]l +qom"690s/MyJo-a%zXm*7Iq$̈́Ѷ//ݲ ,?ݻs] x<.g(OVWǜZ=;(؆/.O9c;+"93pxSʮ׽:=" l8 aY2aFrR'Y4Ӏ`,]x= M>um^:4{u핫Rꬒ{|cmee|]ytԦ_" /}ZFOP&:MX>%}zv9QP$CK$]֮llr%_)M*aꢫX0g pי,j]3.\lvVbCF.8[L oh@G.(}0 vLxkV)xfv?a2Lx &DICFD4M+V B%+Ź3؊Au&ǝq(WiW)yd G#34+u)_ϡg7 ';  /#b/ ۱B9@o<4v#zOMġϭ; fEbCZDt_/Ϳ|’[:k*tSqܑ(*8Zw,8L1gjq yǜoN tn?pLѳ6Ί!C9Krs8B[HRF. K['s< i(gF=ÿ8 (L;W=@w\L3MNP.|[ܦ(,y#X? !Tn@3) l; ET4q1QA Qͮ;~9 yیtO-k^7i3=~Re-i~) .b}傢5(5_fSwa/]kzϜL*ji8-h OKts)oyg;Kwh@ΗY:˵3$̮B?Fl$g)#_[MxJDZ: O0ZtCJU]c 4};ӿakR򠞓i_ڃsHދ)c_*9]1=n'ljED6!~.?E Vn0N L_^|9"|>,г沬btlmUȵ7F2w #=/@%|j}C1(LQhJa_)ng4} 莤nvx덎hcƇo_xRa9%H9612I}7r7d da ‡睚*BJʾ[@bD@yU)G&̓fYJ+4;𡫙qXO:Ը5Qc\Î(dX*g/ܮ୥=i׏u,-x 0|ݨNV=!Wgw0^ʈwIH RqŜc37{ a&3>Ɣ/FOf 0! L V׎;ւ3W R&/ *}"TBcA/@ +tqM6>3ˣMg-fgz"_iv%:Oم )RY,Y,ȳc=(cH]Sd\VG[We8ڌ᷈wPs?Yg'w|{C1s4IV,?ΥO_nb#E+]F.b˄3: lЋ+.3Z6\DrāEOaU@ڃg2s9av5~uX'6M[qjQiӆᷯ0zdU 4zoO"8 9$rgQk%WD rtVY9A27Z]͆#n bדlS; u{3kvQ)U~T>IV $&$!C+<1AWӧ |c"Jw\?Ie?2˲gͮyL+8'3YyAqyƅ9Z6;؀@>FEN%S3G=ػ9]Y:Mq7p+t [u9Ej},aۉuD(INJ{ Gkb\"h44<=-z 7{>٬MZ ֳst`lh0~3ZPw#Yoڄ*jߧůyV~63ْwTݗ_(%g:ƹ=bnJaVWGbYұ+RɄʵXirCƝ&RMvrPUfA -R.%:I 1f$z),Rz $?cyqx@3̭7K(y]I(92]ONx@P^}zq MYg#xZo&fQCPoC@  n>ͤ]#kx\@,\e)`q I19kתgЂs/+!|~eV%ַ97&PjS=z位O.D* ی{cyqn^uEfZɀy BǓ_ (h,{?t Sz= ]y~,X| ѝ4uIqM͚-˼]g4hj2#g&,DfƁx!#WCh52&z]߹QLr؜)O6QXx,KUt !Ŷa&* +(vcx< GMc4Rm>Hi`%+OD{P$e-L!~f'ȹD) z% ՄB6x#Q6J z?=hFc;4&RpʩM&g,Q0tGφ\ttN./GA;+h=qN}|:>l9BMg*F^>YL~SM[al(lz KTQcUP\W@Et击~BeK>4U(U{g/[+_ vd#I (D +ԝ5a UDA Rf!-TߒWkCUt;pX[<ܾ'> }jb6"gyBCX X[V)pF8|:S7@K )t%~tݸPi5""#|g$!dtÖ3M$Cq]n-@ yfa̘LvMo,o.5*oҸk`y 4m*~glmz-z< -]0-Ooˆ|GAcc}o JhZ^:U^Ä9XYOn(3.;H =r9fC?u=R ÜE9 BG_[v #['cͿ_+hR~hDD.uz{;J@2H5L-MT;;xf %}*~ [+4jG#Q}tuMS(%vPoJY{㛴0WbG`t]#l+?Q۞Ɠ?wOꔩD@M/ }yvjX K1onf( ' @ܬ_ v*>,oР_qlna9ƇGlE)6jߘeb`CGcc\:;$Z+|K1oψJIIjA䎕}׭ߊ1P͖,Hl-a[8O^50h|bL3 *&'/ 刬`hNn{7PXt}6l@z^Nc]2A5WkWX#m4j]5[P# _~%`ox1KWv3ejwxbFY4,_qmzC-yS8Zlu:Eb;B 2G j<{Ro+yS"f+pEt^$i]v7˜Q>9 =lcQ07ȼ'fSjsH嶄x^vN KrV7^n-9, tSJtQ Tg|vG5" %=}$ѿ2I%kn$xҞ;;Ԇ\[)/{IZG6x!.vvR襥Q|kuf$IOYBIо^A]GOo-7<,5NPthhv)i reA]d+y0D8NS )s[cn"I>t2ν"eU: +&J]YYS4G=JϑwI%yEflāxj_svm` o̰FO1(>+̃stW')ՎxU/E@N# W4>O'YY!UK3cB2:k ߸FmBK0 Ĩ LN!PlP7`>i?,q,fA* lZ| &I1doUx:f:ߺ=!εs ǙQXq5 I6 4>0iO-dQ<%Hț;%}AQ%1&|X÷ۧ8bzȒkrV$3KQ Iҁ>v!_ʮRtm$_[͒$X]i,^ i *Γ,rcܰڞ8 55NOԚ'I\A=XQoኒ̌}KJ%U-hRX\MU[H1)W.Cfct0őu#*~"]^GXK׉^oXd)Ca+xD:!rS7F;\l,oGim\Mc? ĥծ,BcEH h&Q|}22̢~l2ۏ18<  g9Z'v8O9^nj"_=MXhGu$2GL^'1h? K4.GlHĩ7}_W_& s`2L-$AȮDK7}-vz0-,)P"$3+Q8G]E^} ((SSݘ Mgj [)hi3uδ1d:.G"&Nەk@ bi0F_ TU7l&O(͌|T(Mig1?xql=>Eg7\79&)%%L߭.΢ZT?)D]6& bT>L?cūj(^oVƙ.PIT||crsި`/v g+o-/ަy&*gdL2lns $Y`wxIۢ[gIirXW;- nWBHi-MfY ݠ(:6$ (bW~ڄsgg 40S|3K *MHeur݄R Ͼ?)O5@xƲ?CAYh:j+LdY*(BQ/S2i{EP6Hs0l1&Ҕ?F5V{Y`Tx*ƽ]ՑV[}7|NɑSnil`Eɔ6Dx4;ؗҧ$zt(x_Fk.U3=^%MM״jroCTANwFۃOKw V1 cIN=[mu>ޞhi71#b30B|/Q{eS$2~ϑnњtz9" nF]c]ӌWdE*eH=NpUpCҥSֽޜko[ iTxLRsFM.HG:Y5~qpJԥ7`w=';aϨ^|L<{V%oLVN]Ϙ.Hca\Wk {Δt7HօfY>*Y[tVA yYgӼ $K/N|Gٙ~s͑nIߊ/DVC9?dV>NI]ʆ>NK^ msKMuvtɽ?^uvp%R]Y =EmÖzxPS0a|ҏLZOlVS#'EJ4xb׷dZYԿt>ш~՛ffR-h6LVUWhj5Eu8wE5$f tDSaCP=ns}^xq9s]%SZp١ŌD0<I]Qؕ OS#WK5eO/(rc$\tG1-EF0<Ņmk$ %I ^J*ň']6uȲRQaJO3oaxh{"6₻t|S2L\rh$Ɣ[@_JU"Xz4J \q? ۣ]0G_N2.!1\EHyLڛ0W3)Ї%ݾs@*uP`%}P@0J[$ijiI"iv];D.y˟Z-}E+RC+~OAVrz``XV{[^V!UĆ::t;2o Q(S2p3Cn[~+!AXHi#'7"ʌRv/pJGh jy18`y(^+}j,CahR-sm)h4؎MA.EΤ Cx\sKJVuW00qnvdm&ϛH^?t;&WGNY$QHIoSU6mKSm Nj}"fh|FE'{1RN+jdhft:{u|jI漾h]aݓrAm[;ROY*+rxt7|]w~E(r+wy]cfFfjh?SwA+ȏOaB7)-.Uhа|+yvIJB"RΖmpʮ&=k~(p WZ+7,; ʧ[h[o y>lrA5U7_W`;ܼb';w;hU"8Ƅe'(?%a l+s!dO &Վ=CF#G) TviA{- ,=ŭM~-卆5xaNjg~w F'8 ؞!b&AZa^5Q&ely>0A U$Faǽ6 jڈ8c/ktّ)hDTvD4Ga5>t3Ӷ+:} ɍuQP# k`nA/ 5澟\!4 ᙩOX\^Kgopm\/ke=3r1d>x RﻒVb$.ͿP[&> 5^6H*t]5b-h?s]_,(lcV2/doČb5#P7t7רwQBi?7M],C(T T%(LzzG]tj͈N11׭mFSE8sɒU'2aAXJJF'JE3FY/aȂűǛw@cq̕eFs Ta5մl2{r, w0 犵ZA?L%ccӇVHV_OLBm8gӒa_$Y2~oSaM,nLX_ʈԬ$ֶJK`F%Na8kКq"dzxq)?OphAm/+hїp,ێr kz#L @}#fcIן2Ub$RVxw]~S}ϭLBOqako *Ҵ;+|6[[C8>"d=)R8v m,RBd0[^2 :pȳ1%1m V~@b\_*,;pSփsl5ދzP 6 T$/lXwHI_7KKvk`=V3et\xgMXDk09]"]B)Kټ=3`?BiUQ˕N9DoV݌!^:nBsl%<-km%^tAƒׂ"c%1-*n]Q"NEkEeK A\2ϲ=B t9Z˯S?wF3.­Mz mQNدp0Y+G|>⽮"UؒY'-E5xYB`?LɃ#|8n#NH?)x]eAYiK|aֵ1$l 5\Xomu%epj"&WT[ix l8Cs ̬滖/sC9+PS`Rʘ~UmTm呌y뛛c8k铄 '8t/c F!DsʶxiF@ ,&D  /ƊQ_^X%_w!C{arT e]x9cZ(}qcf(pr(םMԩ##9H{=C}8ўy9yw:R2^Qn=J{/׿Ґex.J$U0_9h=ވ|I'mGE_fbg\l,~3K grG^G/5X /ͽ6F^ۅ~ qSЉ1tI) S 췈`F*Tv }`r!/oCB,{5)zc*bVyQ҅)Ӭ˳FŪՍFbO56 i??i7'xWWK{ب{f爾\ 5ǔR;9e\EXI0@wd,VpCQX"dr ս{L2>>hZ(M&Z諥u3 W?ZGF&Tr:Xh >xް4Rnb Kb/"xЉ+*l]#9(}ͦJi/`!_`Duʞual9Q|<[HX g3B #> KcS` PZn/Q࣒aD fr:n_SX )V9*ځH " Xr8;Eƒb2dW$Y#Yh+ 2 B 낈' !C謼{`U$6tOݮFfǨdu"٠Uh:pl֮6؉/:>&)-? ߬hM´{3ҕPcȁvDew ,.wx-DI!\?8'.EirM w3F3 JPʭ-E|a*4?Pv,tY{-=klqB[pեMC{綊 Λ4I>ySʹo"Q Jl O}ﲿ&I€q|.syIdiψ4a廢Y(Issܒw=x>1clRG6ZX:W M0)=;8t w:Z"fG<9Bh=>xFJ4F]EBbzyἊ ΚzZ0#:NE""W*q[BHIxOt\If3V:*R K~6ְ=n| bʑ0Fn8p)HK.泣eaj>L}٥W) ? *_u3_gi}akhVvHWN8b1n50(C#[ SS'ĎO0xb@8c /!vwH@`r2ܹj $6F51~I:umd1`& :^բۣ]W3X4?VH~a,/ړ{I uzK/wjqҼUNPzỳڥ_;>`8:mK򟀐V5=?s*n0 W&P{(l6Jk^TaZ;V: @v͘ c٨i @mm(Ѫ<[U9Z]l@/=B{YJOҩc|w,CpaNN4-ȞS lKL7]Fcmg h ΍ }jw'& anxQZsfm/x8ÿcB0ݥ,M8 xil؉z5橭ĞJ )Ng93H-ę/A NbɞX;z3[1R:njb,(Ne/(9-}ݙVι^YztqB;gڙ xs#tCuJ*.cH,҅,: Ut`?SaF77= L"D)C66s:Џ@N]X{5c[yJ+#bv,3 wOa\^ซȜOŻp E KRzӿtAQb^D]soEOx ߌ|?+Gpi`jWaSps r׷>[*T.6B&1cLXU\TmـS[A26@CCqr*cۂw׋<r5'vC-! EtzHRi. 1w]-Y$!z>7{rsk#TMIϷNŢ13CA4\ChJ{µJ+хvQuc@0諗܎cN5 9zsƈpG&PpsR'76JX|rg8=v}ToI^ L]P]7*BJ>>PGc w^tӄxv`ݧ6r 7+B %6jМM!-+(ZF Ajdm:* F LʊaЕ]Sq1ÒBvMT&`=;cPxS -b 4 b:{E5L'b^TD3r[e.e~<(C<)_<[FȪLMY"fffMؽ aɸ+t`[C+aT'L.A?Fw[!ϟ,h,1 @I%@gBSCYUK!BDl[hP4+ يT\uᅇϏDSCxƖ~'|LIa|sD[{yGOL%{Ӿ1e, ՚]@B[8{ِuZ~dKM z:"蓟D\B cͿ2{E/̂iR)0!CXNR >},\9Z,76phB54YBqt%XiVƸitw$LD>͌yGU*,Rt_g>j3p1]R{Z1鼆:.ckC1_"6B\*vܚy&G-(YI~ j`KW[ "=3\Gdžx8$BsI`T6FT8s4rz" <#@v'Ba2 ⩮kqJ Eh#xJ{DRI{͢I Tfv12\ĵ|݊2 KOS.tw) ;Kq j#9CjSƅr J SbKi5 >w1jʣUL|sWC|tWptk8VVbz4>Ѷ c'A{)K[enqʷۤ'LͼT `}"X}gK#cJ_q6] \t[V&S_0K!So`&ݱ̑ea&[^miP5l ~bJ4^y H@½Zv$ d+0Y-M' 4='5y]Lmg[ ZR%i޿Yʘ(^Zb{N&Zdh'ʮ 9387@hF3B鬽 D] ȑ,tr’xO1lozS:Lf;CA}x R1/hfACӚ@=hٶiKþ"Fl$TIHT'hj#vXKn"=-s1si- p"d+=QO2 bl|'` gIAa`ҍ7b ~[} _ xe%X5$y y+;M_"AB eJ0a &ҡ?%l2a1}?eCCFN@޸xVW9cBs2M ӲiSCsљ:/Oȗ /Mx%_ (<74gPFUmd =E$ 쟖Ao i>6MdO&UbFBRvcAHh.ϦKg.@795hF>$C,'[H0\I[2{cx |{?%A;`vwLg4 e5M߱ZnL?C+C9L5򘛤d w.T\Ϗi3c1Og*wdTF>6-qtfd[Qt[r=(Gn; :ᢡ,eq+`L7,2,a":ly+*Q]h}S6Pv = D.]%toN(yH3AS@5Qh^;$쪅Q7yϢ:7gzO;*0wzUGwA\ %wN`y U}cNAf|oODEg8l"GsKu"5{فvupR=eb7vKZLdtU*P?hUYcygɫ[&G߹'wp]\z3T'_Ȗ`z'P{Q-D}0d#BmQ!80MMkS/Q ַB2?/{hu @P}Z 4Y )GjF-Oǒco%vl]NTF֠F `SđPy14B:dV\MΆ.u* jg7_nwB{#+ {mg+?JbgWjȻ2 !eo7SZ!BmȆ^PS:`;S&\VE4~7T :ZAӴ+.3^'.,whwu=bw?frl/7') e:#鈬TEp~'}وĬQײ@6 [\0qH#^K e:dsȱܱY*Hpap X{/%O9;غq;_N%)$z x1VX 6QfFi4LT NۿLSi)*g.t"QUu't-s%YJޞkɢ/nme] f@/o;#a^_|r4ֈ\ҺBN:Qxp;v˦Ckڤ1KfXmA{,>2m2ptDUץ~ |٬39rk_*|Ezu{}Wv!0{"ZvpVk Qr VM*ױK7*WDî\b׌v:k_L)GGczgγJH~=b,g?(\!l7NS5b9+(Vz7AO]1  7Z{oDLN?^ :B fT/s-x?I9d(o*vi}<gf"Q xB3T:;C$Wϡ~>ƪ6DbzߙZ8I3( ʯ"OF)}nf6+Cro&/POnIМ$.eXgwZă7j74q|,~>r-0?pA2]'k"z~ғUBteu@O(2KŞVnj]g\;`/= ]L95.RRB\q-̩ F{tMe@)i?N} "NCļ (PڑhH07] 5:+ꏽ,zDp,* Y H;ڑ 0=\0ٴD3΂W , J*}#}-ԥ-݋{0 |5EXA L*5k ^r5rѐ駐yHnSFh2hcJN?bQL%T_[nZEA'|\1J
%FμF$wvH1$7%R&UdcZ)֕׍%N4nַ_{pC7ܸ+ڣ(q!3C>|zA Z-N \]DYX xSu~nmr'"lVb_ $scK 夳6cJE z_۸rʅ?=hsY{Fo8GۨB͍fqtbȯ?";WhT^, m#Ȼz Fa&o!w0q7@S(]e7 Yq pSQ=EAb\>$${H3_0 ۗ "K? d7VAC*{j\y+.%o"2@IP|O1Z*c`/t⊄⒳GB,Tda};I{^n5C,#vɛ@8 ]9iKFRE0s+=`l4Z"c5$p\6OTVqXL WJ٫o6U01Ua{,ͅ\kfkq4W^J%S1;VjF(mK$2/z̓ `DX +L /CqВ6lx\:)B#ľ9"0`}ߪw̷Em( ^ˣr![]!6-E}"ϐ~7\ZuUdVLx5B8" pZ1T}Y1cәt9ꓭsHbNDދ_M:йL{X* 3 L]TBd"3`PZlð>Mw?<dv1ɠv.#_S9/]s Oc&3_6eC-7>/<!;;WwU^p53~`"eO #W5z~~|XC`WWP8h)5bৠ5j 4OU/ZqyQ8=)HJE 21dvUTb5`qv'Յw'tg3+X@#&yR1ف^̒a PKѩAvrںt3%̗w<١6:{1X[_96W>>do8hX G;doA,\Ғqp̭zu|߀ fRr.C lH=u_BMF$".s8/'ff5} f٦H"YSaȜy*$S"P66NRHދESZNU҄I׈qnHc#v<=4N5Ƿ֜=#[t]qdMI% y] Ú/ DAj=bs7{VM i$sk+"U! jW?4»f:5%?QL+"uz f!tvP Hb6vw k -K.mHwZŠKOˉFDG]{'>z|;jz|jGVI. $EHE;ExFu6GךM^5OzDA"E q2})zqCגw%`PU`,y V]I0e&d1 |,ZZ<6U*:ئDu-d<"+|yc5ļOj1H RnKQT}jEk(ڭL˥#(C<@*5]8ʼ\n尪W3V R{WrҮd)h>Hɷi y~y|a4ːn ,y|,O13e|h}>F7he#[dM|*S:M /VP~F>Gw ouqعU6d 5uHET(ȞvLiI eiPfpA Z'v>4g|LZ&˷0;î,A_"ZVcN\T(~+RBogB-ii(C鴭'.%6M*Id^bȭ4_/!W{/AV *oFޯ[2a[n"? ?pxb pt:BJI ܾ;H2Y ֽya0VŔ\Ak\2`xR6yN?*UVB:Aw%` )iL-BiTeAOL@H2h8Ʊ₄Ns7I'τ |j$9JdK#Z3,mM g9r!3F :ngB2rh?\gf6HaGz(M' _H({JC$II}/Yo_d"u|Ajnaw;}ͷT;nMЂ(ehM(c$Iud]R/GBJaG4w`ݴ5$gV{ *K kF%"Y1tSE]QV֢_/= $K"Hn@R@1pg>ф!Hc>M1a"=XM:\\^X lNveq!MNl֔^hbJYb!&.hP_NVBk~T6G`I%]mߤ|(C;íG@$]PJv9lAN }Ȩ9t2WΕ,Ұ,s߲ /)0W5_@ LnWw$`\pm|49DjLԔZfZo}j Q{c+e0n`ѠeSyِ=G F61`>]~|d)0,uOtE0AWYBh ZIz'dI2 zd2hg6\e)ϻ["15wNeaOJ_L͒u²85cJ`EѪ}k:Yds=^8}lwq+iY X6JvqZĊP@a_@+2"[AaN֣Ŵ~ebǯаZŽ"fFq*nVˡ46& 3ieĢbCϞlے L x9{/$zgqbpTOfpT,_1c(Ett2 muZ#3d0؊bY5h"J#NՓjw$Y߼,s~M};(N{1/U&enIm.iVMZ-!-804 N:*y v ]S@Y%~;"?묒#U8fN3(Wj9# xn}(0)c/쿯(hrՔ=-\3AaD xcEz?7yd :2 !۞q?TFWle2M" 'aJLwK F w%p_-[6|~tZKrsyN e$7>}+&/X/8O ,uXP)!wVO_ =>vV˿$2g>4D·Ź櫨}7JL{ݓt:mB 0X;K5EJI0]b{ w?dٟ5^ j"gv <32]EJA^vC-vlvZLUXO-giyCdp|-}1KMUC+Y ?T6 DpOhwrSiE6aбᱯ6X/Vi?cQjeV'.W{Hj~&M6o~*SR|-Y9rc=`',n8Yg 0**UwZ"SI!B7^Ir#ޣos᤭/ƭ-Axen.e<ЧM՛ZX8/Hm?&ۮ ¨lD~gHϦg> /Cp-!ö.M>9r{|0QN#vQ]loWBf/&9rN*?B&%rJ^^L\$:eHd|fX?(2R5]X87+8LG8.jyC7ODuӋ^jĜ{f: !-#z j0Zc8̑UO(,bDbnKʘ- >IPOږCxW6Y++8\r ճy/󣕮1-lrnq<H%ߺ J% ¼K/4o/6'5k}TroԖNf0C!f/DBybY8_ !Q}g&7tWVAL}I7ߚΧ!T",s&K1[BR} UMWgQ sg > ^K֮eNv:{=m;G,qHZVF@EjɩXBF%?I0O+$%SlG#+lU45 zD`%0.\X~ e'ǿH!e'G2K+iVԝ)~Hasxd$SrqθC[CaQk ~S,>j~9?T_zfg\񮏽%=ibF(ju'#Oht9:f0z ֌qQ  Nu=u2Bo81*CI fFYEt>Y:b֨Cj.H҆K,JOʜ|u%'2)TLs":-Pg O[T/f,9{sf EpP?ԜhyA+`\U+(4YJ+TW%z(nl~4ز_\А^$Z X<X4-%{&`UԱwXnnÆBIkO]cf{ᄅj QNȿ=:T;Į6 NJ ;0 Da|29As͑te, Ω}2'x!gVaK7Qn5JzG+ȎNʀ#^ՠ79WGeFD`,P#JZ3p;]/ǀb;G Ǔ"N&e?tzԞֹbNquu4fL%vB_ M{7A|¤/($Sg~| z`9GD H5G{/Le;!-\'0 j5R8&ғ@J.+ul6=f{u&?Eހ:&NiLNk^0}#6rwvY('r$rPz}iH&u2|<$}csۏ5lR(P-u ZH8F7 xw٢+ ʣH(x%R.&m Húz|t[[Kٱ-?(|0zf3I&JIQE Q*<^쪞|{9%oܮ&C[ցe$G&`YF0R#"^9k() x@֯A!Nu`L&` TUh liyUkcTD_ uYLT׬3wY-yF$^C37C~Lص)qw]YJgW;&o"7]C)kҜh0&yEdz\Y.,/^W nQU,)]rQ=־F}"n4]K8.wu9fPBNv6=1ުx/^ޮf.KE1;˭tGF$toV}^`a>/ qڋ绌{V/7r^t"8g;PpۅdzC?mߜWZlX<VOyJ(ˁLY(H|0mQID'UKGdba@ܩ[i6|iu;w昬O*?}r7eҭ_(۝i"onbVj9vnMӑҧR!$pW8C  H wjϺzeA4Փ gx:b|1V.7gIY0CB;^ґN/\@sHdQAI$I*õ& )c&ra{XB]*t͠4iyPR[0q X_ddRgu(zaH_s4:K۞'Q8pw^rҼ$]^=HNpkTW/sE\dMAxeHkª>5/XO_پ$lmQcCWǯfld0Մ7ʮYx!1yJ //Ea asPkidO*&g4œPu ^(S| M<6 79E9*+.F!H) 6Ib$R0eǼ1 8IyFClt1JQKJԦV21Qjo0U#Y0c>QKJՒZM&^X.UAijSbh{yCW]>WåN *j׵k7nڕ9gQ\ [jߍY76DeB?0-2o#$!`KR&g#(i5. % .lhlѻ[$,xS@Ku {NSt2`V"|1{x-HeWR͡i*ش[ դP\g3 8sKFe.|-1nYn 90?d`We83Fxd륵{׾}~;{ 7jpUbYU*Lm:/DF-g3 ,;t{+'z"ihGЕJqv^DٟJPAa_ǟw.PxӅe O_'#Ԅ/B?t%9|, f'A5\3)E_Ly]5}ȟd4? ݏ))5L3ͩWjUb]r} Huk0aj=Nv,$ה$5ykxP_]Ё3(,|/dC("S86_@ _Iڹ(|+GT3E sr`-MӢ,$SDz0x0T,[<="жA?j!>{}k|ia|>HL-Qةp4VA-K#l'khhti#sO9rX7$7u5翆|~qF=VcbGCd&#"TK:Sj&+| sbqrOk2N%y@:Q B~Y"}oܑAgf2+ybCWG[G"x`naE#bU+!wIͣW͗ʀS[B Zf#?>/4u5ȐdAc0UMe0A DDGlH+#ӛ׊1 sfY0`eU7s?m&Nh.Z7$Sju>.z'|b!UFpǧFo_Ke<މ}SW,W V- ?\b!\J7CnC@17`B?|DŽɳ?0Q?=_+$>XH]FVl9lEor(sHp?v@(ONC;p-'ކK8ʓ>hH@{N5PN~Pzj#wwp(xUN i;,YCY4i*L"m}57Hkf`*hoɌ>wB<^': VCzC\.41KoCP ݟםG;.7k[p_{҄IWjG㨆(-}tYm;sh#o{p͠Jp1rfx-W3z/E?5ÿFxŹAQAf(zBXF"i_=PEbtxZAZΧLu ò.99źP \wڂ\^Ȑcv$/4iNsAn~Կ-&`#:)v2Ҷ 9d!`D↾}.L"ԉNcA?_{/Q6ǖ¼=XZV+|xMf 867~TmiraÓ#X,p/4Jˁ^B.PQR$ X)a,I1˷(Y-r kLpizI4)&COo眩Y1kFlDQ -&[д ȓOk#* wQ|QX tP NDWWlqdlbP\>l K:˖'Eʏ/Y9ě(*Nz'`&qwJ9feu`Kw )xp2%qaϯX|ҡ d^MOIVdLU$@3x0N} ~_Ϣ=,Z\OŸ&Pǹ=z2΂Cgm4$k@V9Ֆ3 Hu/g"0'APB5#g&k{gDu>6TH&QUv #FodfS0]έ]s 56GtK%Vo4XXg 1D+Mg:v1ۜϖ@_XPLV e.z{,q!"cm{-3B@嗑㗝cYWMԲ1PuIB+~zk9]zٺG3}_,c`jVwj^=1;n`zXx#Q)A{j Ntu32P(`%d<,k{_fL5i\IfL)4kz҈Vl rIA\/zMȗ"A˴X ԠIR.!zp?YspV(m] b1$@3K#;+uD$Q]pg0k֚.YYRVX - ԗ$푤&J8;!FGǨzǸBۓADnЖ!ų|QG.1!F:EUc4n}Pr'ΰՋ;9p Hue'mq) Қ҂p&79iR7')8~߱t.|1?(&~plԑioD@}Lj)bZ+vo?,=6e<^ ln ^g@} fb_jp6I+ډ0\, khk 4 ܤ۲AnwԦZL1n؈C\{K[` {nUЁDFa{]8LFT {ݶ)Kh_|[I\;hma>yeI^_iR X8luotyv+cIb6Plo@uO`~`<`aJ/LDs㜟x_zI O$ \EkUCEd}F+oR:IXČڦmGV!oKo!b?OV6oNc*+n@I-o ܓ3"j{1>>KevS˭{n.H|6'7AEѵ}~u_z/PUtX7W2' ߔRa{F=( e$W{sīrAwX0fB^]f.s{oT) #`4`Vb. !#{asM51qic1bJ0Dt$3mBy3v``s`@j͗GGK_#ڌ8n6RŚvHk'N!觗ٓH6^ z&SdCvF%&IOz|R Q*Pi>z2(_]k@@.6}ũ7,S识њyq 8gm6;tՁRGiD!];0.kV-rs:Nϵr;cwL }6Yk4r@F 3j'yy  ;Tl<}3t"b&o2yi/2&c9!J9,d%9dݙ7+hXҰ;5Q>&wh3Hm"hAG=5LצH7L/~*3,1'4L¥-;sꍗV2=Њ>ȏ x\9[?}=,0[U/ uԶA~Ψ1Oӡ_i>k@DśF bWB*I2x[U ҽ p=/j`dߙ roDKd=]W%0˷Zя%<7̑c\#ȯkt fcHY4K(dƟ{W/p馼f~=4($a u6W΢pMKn}0_ѮZKٟmW+f9Qe],Q ^g{/OjSKCG$WΒL+;vdy;Ği bXɊ 9,r)i4 6=1U1 HrGn3/p 4XopK4+@8SE#(7?ԪyvےMt.*Swn*"R'*a!tWSbQJـK tiC#<ܶ*TpX ~f6W4!`@X%(r/ M4wXn=,7X2듫^-Qh?Rwl]^e_CWBR dJJ\f+;L`R bgn T )Z+Ȭ[d -#m%֊S7?5XCJ-`?xc=ySˏSpo)w0{%PѼBc88"*U#, `Q넃.Urta6R0.gau[ >J=,^W3XuB_7>Jڷ\>‹KE~V0{` 8 "EUTTnɌp,ӈ U;MV6u)Ѩ8Xƽz1|ƴI/I߶S~,sKS _b$)gxx%"D'DVz&YωcԚ+SB{|z t@vP.++k=-?NHᄏ/ T1AW?4IJ4*Zi|40,V{ ~ۈn(^&bXIh+K$Ji;pؒvn͝d\1% BC5axfW:f('{Aӻ{xSG IpK2@PpgSy8GV*" ³# HH֡V`[_xK[e{qt|AhM#Yװ^-YתTХZ/R˒\.:h,7Hs -٥Bc;S|`P0i`13dUT1SaKF! z=Rt}WK~j pt:.|G+ge.0*樕:`A}J`NAkJI/kPF {:48 |rȀ́SgI`;ao8 H?;**uzK%!khHPǜ~~wl/f8% G2Rpt^ ݠ3ǔXJau6kwD0\j-{{sTOS*r 6Ta}!+dU*#7'ՍfqvI AMِstjyAS'} NX1l#1O 9 W%6Zf7-4⏊bs!%nKeahlLQփVڢySv7 [H Ʊu8hc>Y&K\VY3gt=$PpD @ 4THœsTRLZ@iY mh5S = Z.(0RNp(+C zNoWU#S߿%%[2[G_T{q2=eh"VzK,̥be[ m0oyϜ# 13J]R{`0UTgªrc~2\UlFP֝Ir`QȗM?r+D,ȉG8=TI`S΄/-̑p$,T7ܕ|OV\(T=:b7OaN-Aph@ (Q]N.9MQߕ*|,=R(}_n3"c7ܘ/q5WރiU垺'!Pu 7/Z6,z>a {Kxl:&K1qNQ6[@3Lehр-ʁ) &3+C/ܜݍ+Ʈ.їi8Fj[dw_u?Isحք $gU,jJsp'U8t12ž<Ո}~^?"jVv!:JJ@2]u-!޵y e Cf1ە(uMbg`6 xfhaԮRfv 3'wȡ-@a<3ڷ H7/ ,1,U{FvM T[}漍T:'̶_kAH2j0ā[$bp?}_՜, |GHPg/˷Ѡ$ٳ"%(ӔV $MIj r:[ګYYh7T)ʯU$e,/dj{+T_G9* _F >/fuf`qtt[$qvL_nΌ>2=T]F;we~{_Jb u YQ{FUɠBw^X'l?$M;Ҍi 5V ]IN[Ϳ. -q~}hY3jѯ*Lcts̋UrAuENZQjЉm1xӖe[,]GIXZai>Î'KrT؆/]Ceapߚs>K]J1on $u/m]g#y;>{V rF$%`̦XOg~woHfzeBE0x1şF|sz%=dkۍw|EBy1$`DI"xڤl(mMrGh*ɓm6 ~riz`J$28=^xʳi\"<h]sXgPf5^F O\`ǁs%O2OjaJ̣3A+H_1awk 'R✺p  ǒ(IKeU3> }eI㻉IA~WfY=fa亄 ԏ~ Z'k!tr6,BKg]jZi[0_`8_yB:64sYZ m54`9д^q#|'vzG qyAGsc&t>z09~?K|w0/]Xbı`quM ቀ[_*jyb,\-Zyl޼g  T24"} ք$xcPkƢ͓0e40C<= uAM$,LrE8`.Rx+/Pxyt 0IU4b7=V,o1/5x%mD#(%4Ґ8p1[.Ip@i@=VxBԋׁs*&%21f8Ꙏtꇁ']O,*"Ӷr=w]) o>:H#k2.$OU]c2y_`ƪfN az2b!YE,i gwX37a-݃WhρjPf|Vg)!|+ڈS,L^/mx J) @an,WGz Wlׇ]~1NAD޽#0, '8;vWPɚQ8Ȇ,.v1TM|?z2łآ0_zϗԒ2?9'*l gB>1D0 [W@N0"b/y\g%~.` ijSfZsS]FU)T !R %\ZKxmd(VYA?G+Z nT$$L4G[)[~X5BeT!>>JPvEy OrHSqYXchBuk*-E> Z@В֏F=El~$ /HH\T/J>{SY4P~E.p<5N] )nq|Zm$/-(GQlf݊.Muٰ)""n3 ;9s'.?.:Ib+%[}7SCH=Rײ0RuCݼCI4k&+2/2fwVJWGtC|U̐c7 y\~yuXØ2Tj)^夰2kfq3KK阦5azP (H {?UF,brAصFlL]v' Α˹MPb8!\g1g3ǫ:uuJO[)Ԏt5h`@{Hnޗyإr/aռiPk3O3BLwGV87`v{Kh‹s1=AT xx )+\(AT7l'oJ`57&ȴ:%ѻFK]>q?vi~"%1@]@=1匇j0^2m0@_~ Sa} W* M]]OF3_\[BTuyl6^p2ͺje9#3=IO8NGڄl}]-;!G8 } g*FGUd?1}.Spj ]$_N[ot~TUptC${ ^!8P: Ea1DDx- d \(uh6QШA^vu\T吼A~g ϑV֝E@⠔uU~sQl%Ls3%v$)?7M?YP'~B7?|Nv15QYW~FFЍ]fa8B`Fp^4`|Nr~*##憾~b[V>]@TW& Ji G享"R wQ%h~XN`9%#>&c}G󙣑ys(7(sT0z4FRe-{ݤm،kEj_iE sOW4 Sr(e ` r:6‚."4<3ֵחߵ^$RiJ#j9vC8 H>^^sԃ1L~X ;Qb{ڼA)BČ ,eB5amB 5h:ihWsYH3]A&oy@lq;z/yZ ُWQ!VD㣿pw D}3s551Nɂ$4'ZRxj6di4: dR|뇌HyãS~yHnz߈CYYrzG& $|]I[YQjWo_~/!߭#B5۾H~ {WQ <˪>[0sԇdp-ϧg=mܡZZv[ vإpLdwf~d!ʗ2~&0tIٳ{^I6;Q{%5c솜o +vyv$A¤c~S@V/icPJ w,k>@[x+T؟nһ== g>)ן)h?f%:qPm&O@ 3*Pɐ8PB-!!uMrQvꪄ L[?$'j:p'"FK/4Nd6 i[&V\ x6rXP9$8%&ҼYbsxK0I`up!jI[S"mE]Z2)tfIM4wfXPw!ȿB6 ~Pt-ՕHj:1\t#]0xqC9Fc:3]m\~b.]t"#٤qlإ z/s4|&N%w͍r|T 53n`x{5X!`'JnQ̼DUĹyCN "6pǢ)BkhANއl.&: vlL#.WP;zF^ˣ3Go2݉q'vNVtڝr濼})D"MۄRgPImvS:R Gu\q9M2H]ת_7_ld/SPtt10Zfa=Aj=X(Y uR1#eڭ윑4Q/fke{V.GHGؿQbYk\^4|k{&3<ة!xᶏ~,zҸaDDӳ6"n(XA/ {l%tS *%bFX w{}}Lj<յgI7<TBTȟh2ke`E4Uc HWY:V"4_s*zcSJJ(8ٳ\ +!xU|j"Bsqu;H9d9FP`x;+Mcxm\9t7b@ ;+U Lze6sj#prצ(B} Vd]6.3C+X1%92K3>3D+E(ȶt0~Wbu]MoJ8T0o2B!WIGkC(qLsR N@9InEz|2ijP@J!D?xC:~^"=^a6\i/ %ԭhn0ݝ^ө4P1_FCFcrDmҋ$cԠէGV5m|KdN=wkǛ3Q'+#;49/ '?$N I^o+ƴ"Ǧv~$5]>(>:NYF] T̛ .:ڒs-դWU#k[TA5`FŮ7^8aϰjC;jxP•i݇{5[Ad~D )s<5hmGxJMM䡁3h)'1.@ +lް_lo gZR}չFzŊ}'EQv"׮4.xE& KGiBg(MuXJ&Umhs&9:׼Cέv1?äPc8e<ϝZ c1:+s2Q6*@쑐 |vK^=fV;/`4 2+ATl ?lZJϢ%^N2}h=յE5HֽJ|-ky6-`O2Ưr Ú#$wA>`T4?GkeF ωF?\^p [-1 1}P{8X&|a ٮ:Sg,p[ .` {dT aEP{c bG$M^]P=H=qMZ"a)+ ݳec]nO-W92VK.QV/sPsrhkw}%ȴNHdqRP n 2## 7Kx|ӆy5-rkܮY.ؙj>Z>m|:2ĩ7NUF<*)o*V<\`!+KC*68iDX!8-ӟDMda 4Ckĩv`gpQ%dff2V6aŢm҄#v$4?Sސ;SdR3 7Ds>sy1y>-ϿFi!V a{"Ԛ*M^䨋S2-G0%+qX.Fp٦z Wv˘fźcB(jg"p*~*MO6=ct5G3Lf.C. #<G7~IG4SD/ ʧJ>:w RLL >}N3*zDq85i,"FB]օᘖ C]e4<wfX%z:#XPu K dن5TM @*uܧǢs2n 7+x@>eZ8"ѻ}?.$**ӌLӻNyϬ1b/{Q!0L;NI/;|!YO1b/ ~gdNFL}-nL:7egX.]-\L["x6QxO*M`qY֋(v} 9FKy.1z 9<6$EXP`|ڋFEߴ5ukwEKNT-O5, &Y:NNJ?:wβuwG' IyM ,ef1ysO`J :c Ť<"jO8kgp%ߖ :ܴ}MiQd&*t\ћFD E˟wFh4d;G&2.6{G0pc ##\#%GoCWY>x7)Cr`m+h/6Su@P kO q7ozq̑ w<ο1YJ\Q8W.$^Q64>怱lqWo>W?}GIv)mIlI`֋96~z$z?@7_z}^Hq.rW7u{ڷM%Ekw|+ZsMx͖h׭ښ7Bkc\~? Sیˁ!æ>*<jj. mi'XAՅ3bkG\n)6 v6@SpNF;Cp5 O՛U5"g R6( BR:;oI=lHpz.yt.. 24uU>2(&0ji)}XyJ*9d`0q|Ƥ4UTtC^'B7z?@xf7,Z"@Z`!&܎fd EX%$zFKJ4*Da Y? g C5{ xtEDx/5p̀p\6.LDwX\h՘@;^@rD鹼XΖ!))bmg%-Hnsf1>h,ʷOTVi /؟MBjv1deS˲Rk *BmJR"zFjg4jޙN 2Tqp3M[q"H:(n-J~πVQʮ)h^n?X%hoUU|N+r33H5%AhS3nlFePQCG=k6"Pnu QpƾQ'i&ZeƟAb=\>+ȸܦԻ)zcΌ;P'0~лr7*( DI<4 _츽T/L&" cᔱԫwc X )tY{i5;.~ +I)3RDwy׾K3^) ύrYȯ;*bJ)!DZC>-j_J$\ryN}^5wVW_e\\ZNl32 S7ODOɕ v$Yߜ5_<|ck#nw`Uxn^=r-"<oHnϡnc7GL)).u!w&Sj)U+v:4e}*/u~홌9 @[z/_G%iz ]sF:rHHMx5d6shAm4{}s߹L/ ^@&XsU~Yw<۾B`D?$PDsUpil%Nf>AD`6/h$_A/%63x>e2 ;899XLlA h{H1CϻVe*>PN16h軕 F&sS- ݔ RP F'hõgOcGnͥkj0ۮ[qj'ˡK4;ھ1AKG En

O7 x [z*[v()BxQY yGxVPhd˒uv+khشMh8ٚP? j\‚vGZL?*mVm|0aN'|l$Ÿ} B}H^H}M󍬡 tZ&<Hu7^bp90Ck.|ף6Hl?P{R'\,",')$R2I92i 9.ED*b-5 6.Q:"%,z;VЏzXg}AM~6 gV3ijx(YǠ?ڑ/yTP`i!XV*u6L01., lT6adtvX'댎 B#))ܖ9_iؔOte"2T?[Iu3k<1k%313wb^oV-{I0ςJhUarۄBi|#E@Xd֏M_"a!Y#9+.NN'mS=߹=h%.WE7n[f!~}ha<ʰx?,em يA7&\e-T.lfd莓wA#hǑk{]M9ټrjXӔT+Er2hŎr@nuDԼO؂l՗F틹enP5:oYb)n%#pV}hYdE٧an÷p$O,ظm^CW/T78TAC7ijD͒= p81ꟷο}d4i=qvE<ֶ}TM*Q6xDX\n;P8faZZ$Yߺx c%>ɇ F g"UMGۻQ9NʇZ1I/Fk/vD|6/9u+jM}:e6YIE}oz8-͡Lnl "W:kzsL)\\WBjh8uFXa6-1oxWsZb酬'-ot7Rv)-|~{+P)kUrOP%Zv`v1*cgac~Z;GMKEZ}_R,T.DcIPTz }с A^I8R GEc9n55oX~_Ip;bӷtHVtevZެ$Fnn[Si"+G姦g~^O3@w!nk>{r 򙡲;S&Cp5W;Zn1&q(>a=Hv*(fh9;IFhh'q_hB\j-c&W/XbyOrA)n^C~Ih̅ZIna`0ѽ8&0E0>ӓ)'kvᴶpO^ƅu|DYn)h*W7f>$8}Ue>P%sc0bPsǍhD;[#| 9pf<z> rSCm5܄ -9EG،0!uU@7X7_h~vw1 4\^{eNɹLgHpf7^o:AǙ,X`Kk-QO 72_X{d{+G:sf aV0RŜٴu!ۻlok!`oACW9 `O2 yc `Z /(2F CgA鑦}9"mF ѫojb@íf]a.` UP JJɺ5'I;\/\w%lo]2WBr1 g!zrI6忶ʷ; ظG(,}gZUEzhr#jVksή:s`YTfWO:)d=8tFE?u٥}6vi6)JT;Y[-dk,̉¢BѾ}KWP5ԥ@0"5YAzJ` b9CpG2F\Qx݀niBFG; GQZ] 88]=NΎ$jE5V8;zbFog/)Y+ܚq,L:w.NuⰆ{lw9hQcdq )6LIа\~S2k$K@Bt*[V<>ܗ]eI[,c)E|Ƚ~SkwL`#hYē X5k換[scj"]W46}&Ng;y~-6{ /71Xs/\׺ZA[mO'Ks J@!$M)ǫ/ vZ*"؁]7Ƙ6'J2d%ǦdziG?荳#QX'&}-+,)4{dLtx鑠b%{*STA0a9޷uyÒkg x > Iې5\8eQsYցv0%OkMm׫sAiX>G(% W`8cUѤyz@XuX.9iazM߹b-8ӯ"^0K RטՁn<19ռE#3P]|0B[`9: 0b!cCTK.8{qo J>ci@9J>ik;94wd; =P SZ6z@fvGfF̳h8+.H r G:+hͩy?9nݎ@qj OpsonUKBgYYʾasO~LO׌#n'OL3i߸5Ml2 cfln+WnV-AC;lt^%&ĉOz&|}]ijYoVkȂA̺kg數{)ڄqkȵdE1z7,O+'z\{]PZ%ʥ p(2]Bb(Qz `I.sۮMe6imCp5Hn~xNiđ ;-82]Q 3Tuߜ6ՇpգTc0-{zWa3;_å4|_)y^wQhenZ|P3u_[=iI+P2W6-qp;XYfAW54`٣,W KpPL %uF73{  &]&>>î_mL, w-ܐQ],3V6u^Ϻ(F 7 EH)$4>1`lD'BG/ 09}2ԙ#$MNCdRqwY_6j*`Q䯗nWIvyɕ粖~Iֿ距rnd78܃ D;GA<|!Fo^@x`I;?w'vB9K5|h=ұ_MlE}EuTȜ@\{GhU+{^oP%pXLEqfUĖ1@dv~sIql) 6$$?-P;(gfYabD;&{tud~-3»YшZ^;HqCNJ Ҡ _RB+wrBHx~\1UȲp{aa0sA_V&=DjW\V+p0(L i8f]bXHw? Vv^I\XL@XkM!N+fћAY6dֿӪe}0A]*Qb@lf_#yk07-d5k{5U45)%#6=Ė2)ts3ma`a=Y~u2)]lB pa`fGQ|E-Q@G+.FS4ʘL2E}<(d&ngc4FܷOr@#!VyRʈ^(< 4K[+f qhVq9=шM~5PC#4?zdĜׇQijH>KH* aiݘp $TЈ)܋8zʂPyDϐ%C;<6-=Ë@ʃ97y"̉#hj"d)ﺇ(hE=K9Hx0B9NS`Tʝ A!eF.μ䵰C\ԝ&6?{AFFms-LW~v#yIUZh rC#LRw\KJp> J6Aё Y2a]NK6 9qI;S Q:<ֵHR.Z4hZL[QI MSX}hOWt%{őKa}W3'cF;BѱzH?#\io=-~ `N=*<~uZ2 =E$<33i`A*( /(ˉEK(EJZn %f4?m&r_wfm; +F=B/}-j!neUn\&6rB 1~* ebȜhUnsޣ|,Uu\ ˲@:CNy` Db:1?- a%; :r)9Hr Eɠ{d|˯~"{p0€Y+}D6khV૰+˔:K/GoiA'pT(^ w;j/וf#T>>Ml[vg)8hRWbzXǵ[xjTMDyN|j+\.b f@SR,-F6{Р@GcMĈ dlo0,#ܨY =a`m,a6Wu K#C{ W|L GPē675j+F >ϵ*R=/WνB08J+N:y&oz@Uf?'@R כ"hCe"b'pC ɻaĨћǣzZCc3U"Tf1K lK4C6q:OH4{;y/s#Mw;=?LӇsE4+7zz[tǞa#LSj.,m7OJZ "zFʼn,zc86᎒"!OwoWBԨN`Ɉ6>> ~IHQҤ9]NVفkBTSjL6Cw |練dU;Cɀ t^|]ÌHdN(QGz69iO.Z9E] 1Nuoe O0vޞxG-z'wmi7FZ45 ;-=`H a%PJPE)[aijo* Ӈll \=kbD= $!Q0YO&IsZAx`f= g6Ox͏KO1|M^Bz5̲TaLKla£BW7GdQ1~Ozw 'ف=$NT0Yt"jàI{[;2%"s~zU_IꮎEɛ6S,8 GL﷍D{xc~}5] ?ɘC{ 7ޒV.mO !W[F[`,ƩL Wѱ@TWy0,< >9QIn305jRSG_`@ЂPN*29-*֕^v aءTK%~<ܰz=]:enCI} &8fJ `KZ7om&c^'^칟t[ a*囇9/ s+_(;oƵs FKy si6_ƙ$țuͦOڡ赧S`gKzձt  ^k^@wcUtb0u&Ӧ0[EOk<@wl2#2o8o΅eu%2nPj5NO} ܟ휻%w ITh!,slW }WVs-{M\>$3 1(kRh]o0ǹnO,}@nIS ~<Jh'µEbWE ~K qCDm95; z H.[L&}oԬ/}JC弆<{>=ϼ&O W"ة 歀KB8V#:VWWp8v1PjrYz ͥTltK׍]2TUcdgM7?Ee&:T(9ufJQFEv\pkP^\. +!n}vk EP_$4ܫ72xCrrpGiFB T(I/^3Ŵ QRO5իNS.DwNfJ\,=捥/i@8Y7w>g1)X( 4Khd;~X=\ZX;h$A;nhZ}$ ;-Y v8KxѼkd࣡Bp([E-H($+XmHu\{6ớ|rj6y9O]a wd1[zԿ:XD[6g: Ⱦit1̞ ^ dF{Q ?TDvLlFiu|q?-b ރA[&g|ӣKEoBQ hvU bu!~!~Z"_R 3}OoUwJ@Xgu_eE#{Τ_a?keׂ.v..#†_J"SY,F/xʢxWEť>ydYM7>Eq0CV^~s4ܓlqhi^vث☡ Kވ [LPJ69JxR%kRX( b{ 3kvh׿g$mj\ϒX$]\&v~x--,GoQ*”ĀpܝQW&597~(U?S!!JxL $ٍAvj5ܐ`}s6O?5Ks%  c,}*jzILwTnkQOϮ̡$TzokgT'B+ ͒m ۥ{j@TT|/ƘVj[ Yu\^yY`iX9Q_(]w4N;LonNXCaڼ U(&"hemLP>k[灡w\ɬW}TW{rwعnLRmo2f^ؽ|Z )n {UD"@ ^[L_;%-< HChyJ ?c(d(q]tZ|i *,\W[H ޠ0y闌I܋gw<]Q_T-#eSᄟRb?gX|W7Nq9h-0&"J;;D' 2u~i [&d.aկZGZ72.9K"f|SK`Iz"}l1 ]]X`Dʢִw*rYVO,c+|&o㚙qԵG# =Fк:p!hǃ?۞\]B$j')t!Jʨ|}ݽxY"n+4tlfȄ;u.hawn9Kh凂`=sgCg:e+)rBl*(C>hqp _C#,G麺Vܤ7Gknpss>C ZQH "%8ěٞqElt\&G4 E3QZbKTK8+yn'&.M}&P5pG.=krlnQ9KwU 2z{ƈtKjl@Vr)8{Fx\"De:t ٪߄q)u`(y\ b|"XO$\'ڶoB~M> d"!¬ ͵x{>,Q@ &aa/[UYPwaTV>ND,=+8ޝPߘ4ZSݼɐrQ?i%\@0/rS^L ߿ sÓPzn[c{s'a<;9^yB|+yCcn>H|182UJZJ5H!H3@<ݾpoy.ߙ2U & MT^ MpyOY}7.rfCc?5/ ̵xE`{όof^}t-'< rky(TeYo6^q^9$ˈLhZtZuS@k=%tq+8[;_M^R `_eq>j$h86o?vaXe3ǎq8<b`N(4*[|}^ݠi)w3dc 8Z ]ZGK 9ԉeO6`XzH$ ,6sRwە?zһHβb<S}NW(r.w2:v$z[5LІ߁ ټ/;EprN1.+:y,P^&=z a]B%EݲOE[vAiaHtz 97@ZzZ&:r>ݬhY'c Ŵ.װN{:I:U-!npՎF9#O:WEN`=Ҝ1.,!]8:<KFBF)Ybݏ64VzKcڧmxNhaˤ$5st!'SɓWu7ujłysd`a"03}QF”Hr/ ǵ)'$=XS T3Gg\‹کKJkBs-|,VN?3B~4ȺxXKYuQX輧Zs ~1i JNq)-@e]ҷ;hxI@raW9Wd*D *KԙNpRy˞NM[qśv]QO>}q@z?3I]=f+4Ѻu379RgO0!qw R /*|@e`HķpO@[_Ol"MU]F7|D|On 4GFn,#JnKToh0/hK6 OQiXXs7ҍ5z{(ѓ;7<+]C#8@X[㒈ԍ܏FO07әGw&k2h61yG}Ryvlb Zۑb|eIڕN1P{`u :*zzD,fE ԂjNe%BE7s<4eg#}Tֲ Zsy*+RrWGh5mzF)5:Dӌ ΃/C`#`PS딒b^' 3;_u=>6`G` [Pb#NMZYԏAZAB&'1OqN/{KJ' $I^7HĴG1l-Êe$6pk7'd+sX^a:_ԂX2MF̐jhjLONpH1΢Yj3~`U7HupWc$9͟/׻XD3k ;2Ƙqk%k᪥˞fݹgEZ!U d(̆;tG )#ƵWg#|V{Jw5#I; ͥ\fAr*D㈥QKuڈ`[\]){aIlK`I\sCkS 162XɑkުP|?.,!!A^kJq8upqFp* 녥z-mb0cGPi^?~oq(1ƤcA:;Pң?6vmuت4 I"D啝O%l׮rg #$Err~实Keg2*6 tr\w|sB{:XiƞrRV`yFo}pZ#B]#/gGN5y݁CBr@nBm31d''3 my0n|"v3d,W]g"gι\JE.;e,ӐyһtLD[QOT׮~bKQҡ5'ITB :Q[C$Y(#͍B{^7WۍF;X`̈́Rr 轤!uW(xev DGx׫,&Xzq&&<ΊϮXLh#uJ3'WH7W,_ zKwUxAmOӍmTgM b`ɕN KP׾ L̑4c+oYƨU4a\fR2rL'j,&=qxI8 g#) qcRܼp|PNECuZk‹kހ~W/cn9JlnԡH\wE&&~ yLL:ؒL@_~Is2 LKЀK`{vtEdv&*ga/Ԟe@t^B 6lqsM*B7XFA(]b`A M0(g2N.y7 {)*- h銔a CVk.m=BoPޡK7fI8Cy,1z8&1l-fH=|ɢIȫw.[sYSו #|@:MNWiŜs_ڜgah1\0"$`.K"W,W%ȯ3 /_-N5`. 4]Y=V1X\CKW՝2O_ -|#|k|b':Dd(׎TVX\uB;lɥYPƁ}a[;RbAf=„QVas<7 BOPѥQzcyqdITa}=˔ey`dXeWs;lTg;X$4 ! M2ajmxl+Yw wok[e[u BNwi|ZE] %{6:ɲiEk.=^O9n#tC:1=w ί-3Y h~D~4$c)'JZ0DJoY^ފj{H xSI"+z"x`w~gfiZ{SU GRvϓ3Q(5j4lҕAAhҴ37Rɤ9Cq0x/#d<DwMDiYRa`PLR:+Gi(' c1zLR>T6"_$Eyr!4xSKf~2=ڼ_jլݿE'Dj^>RFLz`vO뗽(>l!hY@}OVJpf;6Ϳ(h~ਇ> {&cl*AqoA#w ݮ꼄b RM6KԆyZC:E[()z'ceہdۢ~j_9˸z=ou}Qkr8>%n~; e,zS(YZUyҩ;5eUS5fF>Q]!@iq1G3ʩfL/J)ї]5ؖUlodV u?8 汪h0РxǾ&z#OBұL{ A. JxME]HЌɼ>?<#GF/,<#@}LFO)! 1f`S)4؎ c?&(2tsz *AOEpZ,e7l.Q(#SfZ 11)Kjd;Q8YSrad- R9uɇ^pŐ<3\#*r W!Hyaq`f9ƾ*{5կЕkLMuȕ#;J -޺ʠe +QWu;qLf5"|IIƻJfĝ12.z GnE.5 _5_<%z&F_fXh/[ʬrSN<]V=dIJvv+PKdu%邦?#1n)}$1VmnoЕNFh3a_Lզ0ޞg+Tn=rYZ@{N<ǽ3~>!0ђ 24ab_ZO4I)>.r LF5ꞃU8N i('P$yfNbGg">X|ܖ)*lQMGﶺ?_ϠJYVݿ4XLOj/ uVPLE}Ѳnm J͗6ɒ* qd Nh'Wt\4o+oC˲ 23 dXP.|5tBw^Oy&!=˄a3lX-Тd FT4t-I;ho"LMo knȏ#0t,D;#!U'mq,~O $o9dw4$GR' 0\&/Ӷt$`e((ܼ.J! ~.{D?MJ^WhsbGŸ,W<B\W,iʊIy40|zFZD}d+׷ 聍QkEitua@ӺSebW1KolrfY{!2M2M66ׂAh#kŒ/ѡZ5u ^̨=lY>xJShd~CfR*EU'k/.9@g"QrtEQy ݒqbmkxTXUwHT+cE){` ~q/U肙С¼tlz3>SYt[r1PNS(`$ڗ?iCEwq#煼jhގE‰pk,/wJRפ+H* mfhr |;V5V0F}| N>w\#@$vu#ыM13DMWFTUI6SHGP.1Nb^6*:qجA̸󫢈& ꑮ5c *%?l# -MP Z&0dyCVG] 3H|LJpPFy)eL?Hdo4x Fէ.ߡqٓrm,CwFs5;\(TkRI=(^1>lx> `a4/D tB`cǣ2%5@WsT*:_]34Wb 4`eϧ{`9%F|k>9cX*ZeCa$^6`( uBViKF1K I` c6H>q7~9Q6t"Y Rܠf$q.헨QSa XuON(ku+nh>n zWB)zO5jZy?,}K8Sʴ3kɵf.մMMdjWMXT]p3OO;hnfjjkck"I+-#BP,MkPyjݳu :vT 䚭Fg.rG9RKMZ/l[mx߶+ר8ݟI;e4g[UQbo CLl8й_bBU\|d^#d#i3&>g DHʙIgw Sbwk.~Rjʼ{`)H ΁5N45 L1:0LfآHО(9 -v !kr9jB|\n//g'J*ANPA \F"Eօo=1ӎK6`Y;CH: ؕ*@xfv.c~N)Nf'_O~ wn鰣UX5l,˗eLf]d $<9@Y;:z?a.11j)W,0ܰw9SQ3,2 J:X̽,,?J"3"sFPSV oNdDN WΞMێT, 7Mc瞍 ='% v;P5(fu.L!RT8ZBiPm~ {Pb5H* /~Y*߆$Iht0DNjJz ĹG~J^qG9$y29%bb,*t9H)ej61G"J%j^THW^nd  usB&VEٍ.޻҄+=(/j jS]8O#6^!\kV P|=#1׈ ""^Mey1*v%ؙQޕ@el- P6'ÆR@]cˈh``&B UgAL)O(BEha`\U(^f,NMR v-]w>լ|@78k'xpD=aʹʃ+ڿ)^Qs^OTI\cǭ' k{k7l )gb; k_̎(r\–9&t<9$þsB<;<4vi3>A]fs"M'@8)r+ _`rh-S1&5M bF+9)4yAȨ}B.곯6Ea& -%߹1 ]0{8.:` AŇ#\TBg|`tӐqYPhN[(| ٔJO%QbaR6U`;\Á2# aThZrmRFV{}Fy{֡T,Td- 3(\.m>y:K fTp[B(Xߏg} FP]aIl!;"RQ"eHzO@cBewg?E7Α=Wz?h Q3*ð<%(1\b~޺@\"{6"'U7^a )@/!R=V㮤Deyz9+yr;RIrƔl Vj_o_t BI1S2>4۸@⒗7X/ݐ)"Dik\DPxCs7Y]\zQ?*߶ QpďDY6m1'w~?&3*E'"e{0_Eʛr ǽZ&RByV?0a Q*!z,],5]r#a- dL^^F2ШӜ~ѣe\bq{ͫ{=^]f qeS>E}_26LꬊnPD-;W\Ouq4¤Utǣ0fz:32ѮO <Xl_\Yo.v=&SbB8if7(mgøNZ$HxSDjgJ_=œk'~}O~(.| 92PlWʤ^& ("ÛX.[WQ\9JxrU +┟u ݞh%lTޓbR%)"po5XM5d?7 @o,ҒӔj2)%"Z:e%15Nqe>~߯!_ү'=I[܀=OA"9%Ƿ^zj e|,Z `Nj[Yƻ?4)?ՉkFe'w1ɷvAr'=j/:7J:v}rVɭ-N]N4pXUo]\,"R"?rxjG Kgd Gt y`”G^A{ϲTLn\b0B,Nu`+Ť]y鈔Bw0Yb#23[P7}g!``:w#g.LgO&3hAGyJu;Tq6*ЉkyB81TkugbZ[ E a5cIBL&SYlOp<"sဠN4 V#eeF⮶S',2r˥zN,pi&ȍNhNH蟱$?!m kJ)?s %OE!}긣#N~ElZT ^S0XalQ(yb}8P=2~nHvh!(, +;lO6D Vn[]]y|f?cThB7z5BMw#p?;𿛛iꯤq'1a_Ŧ%7]u ^|CR;UWTr?Y;}_MJɇ@gf3u|[AŽDrhAu Ũ>׹s!zDDz+֠a a~0q˯E%Zlẹ~ Fk9_._tC?%#Jȫ!?)q(Ƞ(+a@_Vo]6z5덭( MYek9tFTN^Р-۳4@b07ek`YnxN#]?mqxO403Uʢޓ^8K\`!!0&ܸlwTbz zd[8g+_%J"\t3 *oP$ma/0Ur?5n#K%Vj b@5 ZЖ|A2jCd=w`(9Ż6XY͍uxKh݆KȱM=)~c=W]'~l+\cQp NIec T>_ [PCvH!>8m/OO z\$񢥍C͒_EU 'p?v4XBN'$foP@f\H<(/x0Pd7VU6m\1|zVqd_|$ҝx""eqF 2lfEaTkͳy#x蜈 .ZplxvVQR^鷮 +M}VbV?VΑ vhR^{NR/Qph4àfm6''9vhDcW?]Hq^ Huc$Jm9f?TKɕ߉hAGfͷO d%yHh9gʋ-fp%QSvK/ WT#vnr!wX>"WI$˞b"s8R RYӐ2P;Pj2ǚu"ư.sC&^hUAd 4TD4< |"0ČJHYQhvM&G6Ny0wa:=(줉]CYt יPM#D@;H!xx''޹1bY[Z:m@(0SWY1,)/rV~f+a=0=`'n&[쾄ɟ7$ƨi7GŽRPG K´B2epȔ kjq[ 1?5mIr茱ބI[7o +]i䐳@A_rn~Z1QN+0mã|i,'M0'kqMZ (Gu}ʼjTl|=!+OL]il>Q)-5`'ͬWDZl >MF{@T?OKq5Hc& 5\x"tWs_Q2R@pѵVPIw{L<ǻWBr?އ 鈨 σM]4DSa&r~ĸ!}0N\$= z\Pl@/m@N=qΓڍ+$PW2hUvˍUO<m9AN%xܑ>sYhӦ -e>ཾYR-fC׏<896?pVyzNrTKƓWBέڂV~T /su[>m:d3ƒ5M/jQjT>>Z/zG'Jάu}'mP\"eN Qn}FMA/t%å)p5ز&qh x-FIDi}V |͓;zϻ}>vdQOH-Hb ŘVR}q[1dysp6qaFFL/& 鼕K"qhjh#0h]4ȊARHc;r!~1m)=Ԏ'M5 Z 7Må9f-7 ǃԄh`Qճ_pܑA@Jm[C]. !$X+6Bߒ~@kM$: 孵1\D o/%* yEKƻe36kɚd9cyZYbH@*qDA@_bYAPDr8|7MU{ ?ѐw ~)Au\u[{d6Cu>sU:Szu>)]N+C(͈rRu[kyP =y՗3]g}W]PU0p`dBGVT E^Uavrw|rt\GN9&5Jy|`)i Y2KΨq7YY+0 5=9),:BCMErh-"s8xp 9d#l KA|%2A% e+$M"S,vZ)vD22l > `}lt xh tѳZ6H( Ȇ,0v'-:/K`ORN*L{S=k;G뚤a(E8tMXƈ^o.I:Oʒu3^3 p)Kh.f =YAe`4G8 (qK`p6P-ZnنpqhoAwb7wNÅee [>l6aŴZq?}1w _F J^L`BfF-t}an[Xh/3n9>-x&. `]l"hB%H)?zn~to&hҁڈ᳞̈!1҃*#ux!H%k[յCx-f+uӸT@GA~T&7`"٬ ǎ^5@1UV*>8("ߤ?xe3OrCU>td 9V2_7였*KDgc'/ҨvO׬dV˰/bbӽoTC)pJ$Y&D{)s@;!f(bTx]7H\n H*kiR5΁F+92=lh)sVtqa(uETGoVS0gy5=JEU ]ҥ&v+F;ػ$1|< G*),f]EQޥ6@{L%q13?D}gr9).9)m:%LSEڲfq0e6~\\?FMDWO@;}]FRB<[TۜUbۄ(2`КL}tjD# 뿖VEɯ?t `#ȫXX8EjȦ"GB(r/2WAIOx6fA<ҤoF͡af݇xXk$~bp {TXŊc<_<:,Q5?س?,X6H/ns<7̜ʋfc|e2I Z$#nq(Vo_b\ 6bv]+|_bv*jrŎ&v&fѴGOR0xmKzM`R {{~ڎQք hH7m+,'| 8>p9Y䕮8%#.yؘL힫Dad1'*akרJNUF["X֛] 6!ObBi{2ZaUMsJݵ(F~VX&MیDi PS`^a5ڧQ(cRC yd 4nƾ v"B9}ʳ@ 4˪^[om4)@6 i:E'+k4 fQ:B .&UJbJ J#t|}7~| f /#d\vc&)7z R `ݹcc˩,J!T|) uW?g<>xfHKbARneEsXœ#w_5țIqfP5ЈLcPF/VlTt_]b`tV"'8T>ΎRX%:BdX6COQyZ[|5pt?TOXL[F{_{J|ve~>γ4ǘTvZulq'h.- @`_WIY ~S!{2K_=xR^ҧ4BAD;/v9tl5=kyjv~Pu lކ]_i4ʦZ(/x77Sf[X!>6^ZyuUd= `HP<٪T^a_G&RRT\,@ i1FUIڽt-}߉Ĩ;*BiA3Z=yN97JwN/xuryfx>\ՠBɾgY1!EՄ:g I&h/8Wo f x`Jt@v) |4պAg'`GzaȜQaKŎY#˅AcBOcxu1֎D4UTwԇN'1/vgbm~X^呠+I|WQ)/x4Fr'tbR*5Q]1>|n?VQkbnKR oR4As`AqɹfV˞[ n8VR r-s*KK8M#  ̩E-%oJ2z@ _9̪`S#_ixmBp (1"_AiS?ua]uR /doX㏐zuA?`@vf9& !ۆxѰ"d7]FMSCwYf'%lXz,*cao 3['.h9;#U5QrS">GScU$9ŀ;-pS?rbbG,?ՏY?8a+yn` ,6yknc ~|A 5'bXUqb8^ LP*O>| D}wny{ ϛQ;tNZ1Sl3z4zZyEoǃ ലt T0bnmQw LDx"WN9Ll],~=]( %(.!ٓ V5s&:͡I3533[Y`# =x͝gcԽ=MFWT qaIck'˔|~Y˘)?/ԅ9OuqA?{k8 nqvM j]IHQt@_݄gO&Y ;ͪ0eIFkk)6.p;MPYecZйg-C*j? XQԮoK\vʩnW,H~ڝ~~=[CJ .T{" j[cڭ#+n:,8# f* RaPZR01x?~i}QFU8 H$M|xFnQ0\QVxD$٣r#ш-e1 t; fz{el~ٶc[l4]7NjР͹3TDGE vc;J Zؠe 玆2pYs GX5B4נUj5;&(5]}`ߠ6mz n6O2hZB y+ 2TFV`=5jdh6aLYjy*X Lň~%ZԖW ? 51IU;,8|rpA S#2^g[v'y Z&Q{cz*̲%gHηR_egC-1 [._JPW]8rTNv& C=a{x ZO@tҷWd*'J5jtĒMaODB; WJsDVmwu(7IJ#`*cB{eۮ`P*.iЋ!@&KR`_3}ss$4)5V_|sfQˈ?.]" A* )ɩ vKK0ZHVL+ za8AL,;\M!҇wjLPD glXYd_lP"K{!c@7#|pŘG4ܣv6Co-6܎t%: t\f՘ƀW!ƨGRN)k\I݀~~N6h,H;u%:ue+A1+VdWҨTF Źh*'}T8eQюY-ih|⇻. _Z-q&'j[@tC.1q ,VFҘ'YsZDq9/Nid4ZQDE.|8O@ODbe$IYưfmɵYVdet$mӨy4`S:C`w2ƨM kקRMGF7U7IWƿ>ތFb=x'7L@U,I`ә B׏.UoԻ}(Gb7ԞcMA`qjh@Ka(Hd˅@Z΋&@^D?Ol;Q]8Rh՜ NB>bmژrE5!{cwS/P6^Wx4f,{@# lnYLm'WRsW$F j)@ʭb-`^2ɧ U[ds=^x5kٰ:@gH%OA@Hx(,|sk⮕!#vKj]txUk\ᚎ_PhhNAVB ++6SϪyZOAňԉk@l69I1`w~qfA/hۈ? ^ܙNFilǜ8̲ G$ɛqx-T^ ϫ̭r>C8p6%ϵ#d1{;уv?|07!55vp fgrụe}:L7H %*:Pk(e6/qĐ$7yT-`m{s|;CLwIV: y9hDm⍎]b7PClٿ XjuՔn330{@~(d1x/(;~>o~&]62c~-&KF4؋W^j _GFt`t ۝I=+R^;CgQ Kd?&a3=-1sn[.~]I5[&|*iwo{~gT Z@W8w9/3jl=FJ3j?1Gy)0i:9?Y<(nI^FYN?xXUELХ}bz_+ -I[vNMjԒ$:p.CZp8fۑ q+9!zpyhMEJm꿪Y/jyuwz`鴱JƹB|pq,imѬ|J٩U1&LNi%$![dn zK\uӨ^:VPO:}I6+nNkFOyC׷(OlƭJ?sa(r)?+- ~ wאm.ih36"p?G$,H@{t(|W4sֲiɭsNmN}S% rO6'xhXevq#tș1$[8zd6|ү-U᧋27?J*(h)M9&h1Vݰɴn|_j~5TGL3xv1{$l0EUαE^OHlVL<7dHfJ 1Mi}>N˟ ވECڿi!9EYUAx EEU8B?&phk>a}Gs*H!\ v_x0ICOѵޜ!~gO& fiPIEb>~[mֺƽaӋ+pǻEYfhsԤI3rHmJ @{9,pQ}\/a>>g}A Be{R dJzy챽mĎ!ZܻuX'l3 \q͆aCu%r<2\Vz"쉤+h!qs*< X`+tnwf#ys״(%L5A& ˞%zakn5!E\nfvQy#2A]w'!0=[ǺL8PNܟ$xQwyVœ?R :ScM22j-iT,&0EIMͰxO?LnRԖ [`SAO/Ppe8TgwiὤKy,( <}Jאo,rP:+]p~\+כ~~sF?Sy>B?^cJm)׼ \~x:Jlc_Z<.7M'#XMA v.|(PQ#?؁.3Mwv:6gV#S1K|4LEM+IAFg[)wWz )HtuR/F > 7N=ec.B)w2 r5p)8]WI:9>!R}OMyۚxb9-+y alp+@V@ȪjLnjͽ&~hXۋzzb^|3$+|GQfKL|͚ M8%$\7j/|tHY!𚱅ͽ) fW5,fO+01‰Ϣ!nPp2ɵ߉Vd. #t6B͕^Y]0A9%Cswon` bdrOd8,I-BXP&X^{I詽DxCB@fo+,b c۹玅Q4CRH5A)P`|ŨNkӫ2uh؞JN`9*$]YB_ *$:x?,ݭ O$3͍WVդamw#4iK@G[aPKvVH\.u#9=#=b֩|=g݂H-b{+0)tVidK_Ƌ %^`(:\(i /ES6>1/2O F*P9zct&ϡIlph"! Ziel0ݯiBh+N;X{Y6?B$e8M]I P(:bcCƫ@<'\m)~( /:e+;3;H1Z[8u߃dp7ul4_oR(#g[+tHQ˿Ca눮4syZzܑ5[xo|8J 1bE|#9'0XQs4 jEgg<[HY ok|$C,wJ}R1`Pt7ViMZc9{yz$,#$ljÂ.52>{㲼*2[*~{VA\ IcpL%bX6H]U, "Wz]&^]efK8A'H*LxJɉ`~7CDeykg:*l-^80YbHz# -aonMO Y}oUkkoɸEmt1 {bҋ :bAA^c7)Mi0'4wKqVRLꍪ6P!Mjz_NYꈥoZl^ K]i@WN !(*uޘ2>nz=Gp{[L[Ս w8)}*.kYW}XA#[Jltkcs ;Oy˂Jq20v}5an:=gjvwG U*G˜Z.a"5])Z?5iܳ&4l[.ImgNo엜L|A-u،qkL!5ٺ;BqNY;((v1Ou\ jWwN,+EꇑCQwedUW+%wݭ`62Zܡ!\wZbQ͎n,j;&^eP-qyF+ׄTQtFIoUZ$CqABd^TWyh)r.8H žG(3 w@)um)#?ѷMCX.@&{P7>f( ;Wp')VL#|H!'B'[؝FϞR%T+D'dlg]N^C zW8ѱPqd)7aCj`gSpKA\L5 HfPWGJC47Pw}dYaj`ȓȷ+B<֊\ _!Ilv;TCmнG|sqFp1Yx|ׁ8l(X֍J/EPvdQ=<) kshxT1h(U2P#79fWfa"HF gÛ|,;(+&bΈ;ZcmS:Zl@^@]I*f83S'f"( %ޒS `F3ƫ2^W>"ظT.1ص`4Ccg׵; pIc͈vE¢Cy3 "k,6 D ou/k>GML&}Nچ:ȑIXC"BÛ\K\(Ytq6s9JrTa yǕҪU"{Ygq ߶gQ $ JjQDqAOCSyTi|~p$&Tp߿aH:f<#dl1نa|z'?U`DK-08>*OGϜ\6:nƏ7͵Z2gFTf <ܘcϽp;b)$~֫S_hܺ 07/;YUk;!dX*ڂnqCaQW0T8)NљENkPpl7V=]mW';L! zn0lBH pn*^vd/28I 7B)/>XFtI3?)N7~RmBҁcWTr(9Q||Iڌz }|<`1'G(Ł %mu=RXD*`LjZYQ9}`td'7}NE糐( ! K1Gn hobBvj\݇J1"/A݋Fv4$a3lXҟ%)m7m+ʏ}hZFlB,i {kS6U Lz^9H'q~:iR P"sJ+*/ܩOG0f< !y`kEd16p@ϫFޢ-}IY}3hL(=NiI?RK1^hCB伈Gڣ쥽ShY5#關?sHQN;!,@:XhTc{V^l[ep_7;eA+70h>mbl]6}+/lbO>D әsխ1oޠ׃$l高/£*qѠpdu11 s6fVsn nC{kRfdBz|ub$XpE5Rp"T.2߭̓_MO&,W7Xd}iRRQan鷮0ءK6y@= P&2lP%]L8/ ײXHSw/:+-m 218g)ū,&^w29s9Aƣ b:rG3lM8@IhUH{3`gO()˾蹓%:YjמBV8T4K.VZ!ih~Pax]Zl+04Fp )=m`n:7՗ AXNTڸC%Ʃ (@޷1>5)X&FB+EЂPH TEbOE7&ptnsvt^fޥQCw[,~& e}^iފW xFTvQ'}O@mHWvJ (ͽZ4A0լ4ξBOn=sE!lW.F*m5vGoiXū{]}Ɉ+[{# >27bL";}qA %_&Uh631/Rl M5 5 ۽I|YVAdSC#]7r:s۞|3z \!ݱZGsv 7Y{ڔsksMg} Q.;TGQEf3{+l. ^ xv%!!S,^AYdzQEH}nh&)-]"EU Y@F/5.⊙˲ƚkE+t})G fo.K5KQ}cYCIGg(Tc!Y46,Уts3PƸ#WZY# ?mf6-2+ҽ7:PF$ɧ%x(\`3h;_i~l®Ծؼz( BTh tW=vTYg:LNKax="Γ9bf[ZOL,n8k-@+︑(I+Lb3C۶Q1 C24[ơl.۲v0{MKGH?ǣ'AkR)3/; h 2t%jGHUV` ӆ3T{B7 bm]T|ebc }E`GCu)M~܈?*WV*äyvz{KJ`W'8.n.!=k<Ml_GʾXf JU\ Z[Noe(-,}IvpKE䀹mĩ%(ki0oP;A0G PL?_''n@.N-۩]:fM<˜D|SU5yC0z$|" -{u<(Z F,[]&LP~k$2; X_FjKBh7|p3 ݶA3-?|6?)F4Qsn4[ZQQ)ZFMgH1\5  p7ȷ+l)R&qᵯHYH-%.yTQWI2]vbBr@i~rAωm>2?;Oy` tpL;'8)& 8L[n{R UAw9T5쑺ᅬwmXY Lz],=}~4zH.sJ;}Q$<9zVLJU8΋6c2u)?Ұ_quI#s^18:-Z /cfPwdHz*6`6:W獀QIKN55z3/qh#6"=},L𼡶AU%aW{90lDso `L!оk.¯p'V^NmY5*Ɲu2Թh..",juΘ yO7I4%]SaB3b?x Y.eYGQ|.qO”3#*v3ƀ6/`nhIZ:ڗ oRFlYGb bvgq$ÅS-j&jbю$zY?}&ݭ`W!"c!..)K;\54!RHE ijgk8H]gbf̡ȢEtm94些Tnz̚T9}`puflZ(b}c@_mN ޮ>&$Dt~$7-tlB@$sSDfa rzKEyD ~ x=c'D2KSp"3QoX P{Sj|tAvj`,?ti ꕛzVOϋ}9$*60#. L$r@좮!__2~n ^|,,܊ X 6-Кq:1}b AIy' HEY Kz%OgRkظ?FNϠ(ݸ l1E WWf{p)~x25:kxS<_3v!JܤUqgxMC# U{̞&koɵ弪\yp,'AL(6yX1rCs]@-lV'wS0%Q(ZF4:o@tu!YH޳MmM(K5HSH_骏I6g)Ѳᕡˣt\~+ǶD3ew,Av)T^040pf֊y@q1uˢdn K]MdH1N2@+35cKt%Ү߆?Ɂ:)18G>Ő0mTls*t :UڠƘP 8N}vϦYgy4)bpN7rHnbjVߌ> }L.(sR)s$ ڧ%wQ\}#_*2% @/uR4K7?0t)*@|*&a V{uQP<tƚni$KX7/s;L܈hbh6=س*;S*|g@L?8L!ʆ1~yqvsZLFPbJZ4:m%S4E"mư];UAV.HI8I0s 6}$7xCK2Pi/ݘʓb;k Qk:d=󋩪%$LZ:}.&ei#C "bg"sDJ@$CA*rkćCY*l5<@̻,(E}\u}lRZI u3S7aT?zټfgK9ST~I:=(6/Exd7L cv (ngn~3qaU8ʫ/P-8~bn`_4%^s:Yhy2 ul?g4iIV~ u@,*?t"l6<玁!&pzw]0U!եfN߶׉(X2 ͳJ58d$ /WiwYe ]~mg B~y7ZʠŪh]qAn@To "ޟ(LŐ ^1j FLe2 {,, ƋQY2!Ѕ~wsdS=^>=tkK<|jy`)ڦk,ۍbSNwQm>(%6%)jJ Ym6FuJ<}\4sx O +q&t6~p7()y]-Y4wɃD|pF ți؃IX %4irinƁϹgKi5VirlZ%Z{^trIMu-}{~OT׽zڨ|eaƣhݼAF:@|Y**kv&vn"Kz{0S% X@3_#C(ULFQ"Z:}.QwSC/ \Ubgu>M&boZGmO&2KXS)@9ti_uֿm Bv;Qڔ.v%e=u:Zz_|%&%X75k- ݞhWNSgsB@I-[hul00Ybc $)' UP|JjZ}&Uލm/%MtU(BEkWXaa9=F:ӈPV`Wx*jc*.Ԇ 2=%Lz<P>fe2ݒ*j~d.4@  Gz|<+ʚM\k± &`c=>+٬pyo|O[+d楥Ȍ6i6i#iE,Vή4NoEqVC uǯAd](@%DnWVs24d?]N( :g[IhhWk =w ߶;JRgH7S1l)%x|Ȧ`%:vpTvI'-zN[.K"G?; d6JA 2yi"D,H}/",?]mHs*f|U7^7 -d f>+ x vMo@Dk`(ay|J]gïI#o.y %>DX?G0Pf&%C4LX}7 ЃhW08T@x?c~)EYsp xv0 7z2P44 Xq_-/&y\nW<Un#/P |/6-ꛊ j&*`ԩ77}}{=SdWǓ_8I۳lEEE{reF5XP}d`ĸ;0qaeX>dD nEU$ْOy`_Z): E zsR6^7{֣1V0CEF%]W@pd?\osbM=oHA.P`" 3RPO s[^ Iv_HŌ$}sTWu)$ۚ:$ GSӱgoH#7u"Rz~lK@K w\.H.tj= lYER!,q 20Z l3!GeƣLjC{YWjw #+1٭;"D7:(ga~% X<ԶDqe7I g~XojC) N|~ h@D߼OZ c7Ɋ ǖqu6_Dkqk#Pg`z;*vm*I0Ї}t4 ĠgR*{; 4ͅQKNK==YBaHh_G_~;c|m'O|ڌDw#eOJTts5XXJ}@C1O$n?2Xfj,&YQ_g~j Ͽ}'*ݣ [˻3MF3e R9L\N )^4S_.0Mt#"{Q]r?YuiDCO{9] -'rYX8pյ\S/y65рk=zp?9q:In&Vdl$m.@牽*GA.&q=!jL@yGR ho+&}xLTOWEX}l有۲M[K(xeaÜ/#Hj=,)%By~/=bINwk^aD?GwC\YHEvy1[} /tŕ I9]@'&N<$!$ GÓ3U~K}$2BGyL_+P>}++o)3F뙅ܳlklr ԎOֽq4nØE }ށ,w;ޚLЫX$ə 7ǃR9 )}q2Is%i',L0/" 1 xݲC]N񐎛T;'D˥IeG,짅H)C>~ b2aX'Gc_#=UU2aXΪhڅO!Tk]E4 Mxy 7ftB_ 帱$(_/_;X<_ fbAF$QlV| Rl$^$ %k 0</\K5w ꖷBs(_>O /dd~r DqeUMXl,u ]G&S-8mN*+;ݸ{~677Kd :Yƣ]ֳNJ6*Ⱦ7\g״LJ;BNMCSI]C&=)?ApO;^RZFK>w P;X"`~>JzWã̆aƶG݌ ڵ>ڲz81pmߣnd(22ox850qlUBݸ]&frJKkȵ! t?fh^~Hٖzh'g(`vKEAv93]3^T 0\QP8DВwgX\lH)UQchb~ds{Ns Z]?S *y&j+d9Ȭ d00(Pŗ{hxhܵwRe82wol"ſd=djL݁)XƘx܇>cnn %~zrw-PRyjrp@SU ׭>Mn򂊍TUo1%}&(ZԹ+1_WJR˳Nq|#'ܝAﱠ?oD= }k~/ӀBųӪGU4Y!I͊M9d?Y7I[ B#-z1q|/FbSMOˏ քOC =pj/B8UKO(O&]Bqj"8L\7-ﲳP;t$ gYܜHm]/^s1PzRw'Ϫ9*H}8A-h3hG&VP Zoÿ#˚XgOf7Ъ@Hچ9mo׿0/q-QS g_˂Cm^oΦRXsMa|5+[8F^cZtIlsO8Npm֙) _mpÀHH_*o|gRf B* (jȕhוj zR|k&Ocsj/{>daG.m'@ yX?bs1&#I,-Dh&d@W|[ >M4xLfIy.3uMp%*fh: ;W֩eW3\`D _6gK0@=\XPWM1_Zxo_ڌH?U6D:PuZ=hT:2܀NףqUBe5(, Z%FoAāzo_!*gPL@bWD3Ǚpn"dy|x5[) $񚞓h)S$f6KFp(S*I 5SJ4*XR pjMj }b3>=a"<7.I*B9 8$|Ѿ \W|3b^xUS5NÒͬGzɼk;'F)9LϬ, ŴOU!\}ޗ<*M4z͚l:s}*88z~/ϖ7))KLaTpeLUm+*}Fsic)/YUґhj3&U >|}ۋ3jsz;_w[FIѧiaQ#lO~T2d͠N/od}k&tY>5 ,9HU;fzSD*.=MRF٣WT qG (ѴD+˨/#ldK9כ'fL;ިpV5C$HOtw,xhx=k)Os S*̰*p.WTK9e[^ɧ XG2;rOmhc%tBf}Lw{&,j:`~Zl;urJ\aSsAF "kw42fc  EG+JfStՀ!!K?=xQU>lՑNS5S[Dtv0 yul"1VIQj-V/a>M"++4G|Buf6*#Xw*:IjxN OSҧO,XdnmXHLj YؗMD*G sHv㛾lF ׳*'NZ°QbD.z60yÒ$&ERIv0ɞK8گ_z +g=W B&}cXUlSP׋//ӨWʞr!YJ,;RR-1cn2U3R.`#ӇhEm?h] ssX &E)a;HqW1p_delvV3isK&u N\نv5̝Wl{4r:eOc-k֗ s>lW#҆s1`;3~5Uźf_޿&ɷKja^}qQ/-dsK8̟@OҞU9_y ߥ~ǫ&fT.n7]d7@P:E 8ϾQ5tc#TGY&v@IrG?ix{;^뀍95>x|.ўC!vCU%Fk4t!9"c6 s~ѝepnl6.z̙j,69z;gF"g!1K9xjc :udّ-sGuP®ՃDM¨G7zІ`c}ԆL!Ž뭗)+)$" @I;JH!+^C3@E/ECP=N0]*@F/.-2Lp-i^L-F-]p -GQwhx?_9tRHbx,ZTMۻEȁRpR>ޤ:qkGmz>}:Fߴߧݲay@%:xQ8ŋz{Mx/ yy]Gx]qMq~p",UHiuy?yk.ƂMxf(#gq /#29=CYp),֏Z.%SW,w>0Ug%VmSl?xf6:j./I I~70;\"i+QyJ[];M7چ>N׮8%{q\O^jfe8KNru)o?$Nq{8ϵ꺰i=ԟ֯%.J:߆1c]/I<-uEllh/ kLs֪8 ?SsπNrac*Ә{vѝخ^J$4MvƓ9L]cUɺ)5:tZu0p g"㎵=E ۠?u,pNO;LKi~ 0AqS\m2n>ʦJ(!CA%cbZ! M,~bau}t)oۥzYt}w 1RDkf,U+U)6FmW OMɰGb_e!0R4|C CꪗQ`f?]?<٘va;f6)@4i\gsdHub1Gl> --z?'}y0txٱ> lsUg0c~GeCRFH-Am))r$mA.gMX?Sz$F+n}T03_]Gк@iogn6~`f B`|A&n Z(qr"H)\3" x a2W!Q7xB9¹_v&*{ZGظ-RHn2SL r3w8x8NaǑyЅ49y5As9t_S[K$#!kIwq85`000(_KUZTb};>WQA2fNf$J,.F 3X*$PgܨS*fkTT[o&?G9S6gm*-k;Q_eԥZwDd}Ì_0z9#/-HpCh"|T #R#tcdȒ109-Oh7?3 A^.6[6 ?a8bHfMw;F{:!mdTt f$S7ML[D!iڜRr}gq~0Ue޳/-jY_tA22j p9cQ/1zD~cƼH|Mcb꩙ ʄ:bcPj,k$fb8E*sd/gdmOLIc srVY|K̈t/MWޝk;( wtl%'dۮQtgfU1boc=ƹbŘzTw9kajd,`wyTy_g{vxv_jƋx,iq]S8m2<7^􃼥kIAS %<64I|li.3U,b W bFonTQ/g;ɓAP J c3jZ)ArTM|Ji8EgzEXl]=ԧّg:}~f@Ҏ'cl0{ƓLԃHws,oW6!''V=ׇ0ĐǫaWXngP5DGU\ ‚DJ훎T ţt'ȺqY*\-,K~Q雂3zsWͳP;?цjACޱ\18京?OAR@޴x};v]NV0SΟggHo\"1].?uA:'Pi鱙 |x)~xVy`ecɻqs[o16,S*@B_Q?r=I*{h(NptVŷ |Kn0ut 6jAe@s2&Xx>N)' Iǝ/wQن*nVDeic P"z>]?N2tyD^`jή!UkqZq-YqPL{#-\#z)A"|$my`$cL0オ}E?ՅRtrP`&X4'zVv`H~ ?Ʋ[ޡj/qF}U@  wc< D lAU" (-yTpr9JJ<0, Ӝ(Wܻ`A 3yw.MHYWqm b ݸW[?PpfbRdeaM5]w Pp'X=cmU~U!H:bTo+Xs@J ɠ ='bDsW 8W4-v;hg#z4E Jּhs&Pr,qс.##lVCj~ U3_ s%Ņ:?,qVF5QD(`SR%/?n%# E#ir|~?Q CaAZ-@YPX)4hdf{t%Nup8x#pٙB;[G{CqYXFDZzu%+"7Nɜ-"pY6rHضT !VacƳYws," \w ~'ZTSauNFS3$O(B~b =Mn<=NL`O9HH⊮J:Ait~Ϧq۶a^.ZR@BN?@Lh6z$Y0- "gړ}b ΫϞevkVH @>ee*PFmrT"R*#!;9TˢuX3Į;c8p|H}ShKg[d-\R m 0NL dAR~\?Epj!DT_~$i*\mfNJp iY*Ţhva_",OӸ'Jni\͠ZKѶ[V BݴdkLO!\PBǰˤ;kZzcUwX]zг* *u)4r0_HLVyKc-h{D314| W ύP5MPZ2DL2w5D64%oF8l|=b ,Rc&Li~Վb6HmR- hD3T;oF}E4EJ (}rX.}\c % S3HSø'|!&h'msjd~67@BxI2brZ ^`P l% & nK&Q<_L{ 6#-H"h M2a H@&By. xK~Zp{[Κ;xqʽmښ;䚷@,!WzrTU)L]0E|d'/GA L \~-^5wPCn(W^oڦfxG*]M֕lOSiX6:Vŀ'sX,;.y : KK3dk^ 4v(t  >ZQMev+`Rκx/:5AKY6i>G+<+~/ΜT꿐ƻ~]ץ_EYάa,$BbW S nz ; H_͵ܝ4.OY(Hy[.alʈ)Ku䏰8cGtNuΡWG|(_yCWGC6 A*Fy5ea!ѡmMͫ=树is%q?3HDzwa(SsXrUV)ʃO A^Omg-Er1ɓc ?ƍHPv:?vA5JR&LLQcf#Zwx5F%%?->,)דr#'2OSj׭~9Nψ1rZxq썏+b LhXQCs"C(}HZ@KR5W F#~AD@djr!n=nć{(93_J޺eL5;dP=%ϘU7޿Oj,5Ib@D?~ob-{PYQXS@TL #^T9bӥ"Pa.%#^B']ɒgEuox0& g2,imc-jT)\eEwD\tRk~tJAA&6\pʡ@c~ﱕ˿qP>]q5Vz60(ƈ:j?i B9"E$f,-q}<ʔ w̄O_ lZv XZE,Ho++,7# L2nG&piѥbS\XdxQPӚTo])gfM(BDFeSQ8Ć+GSv- :=9+2̔_:ɫµK0(mh9$BUPc25}7OtEl}MDWT3q^R_2쉷ëN^Ypک`+si(snhW~'lncRUzU}e;;LQ WM{{;7[&MCp))z!!m+c?-X;RoB_aLت2|QoD  O| Rri+dLp!gB6wf*GV;#;I+ n_3O9fiE!6*BߎRցi-!]&n21VF N=[.jFr)!7;78[-nd=6ʮ}ƲJ7#%dITcq p5 o/az?v.Sd1W~4H%,h8O ~Ha Z` @ČueyC=1:M5b~tc[A}X&/0~hpNH~ZfT 3-08XC2ƓW,-9UD\\n&% 9h7|ĉ5:"$B|5vT&`j1 iZ=/j,oTDU -qz]y8<ځѽ^~݆X01QsJإ2`(R驓k#˖uv#nNa0J^1?;Svu'޽ 5l–wepoOql{\FNW/8SZ8)r\&V!rbv=@H_/et]L1n!HÌ:a~G1x&2-gทE`|mSp"p*U1P{\@̍G/ ҋ=]F+K w:Mv`QUꉅaƸ2oXuy4jR6 רXMktuIDٗF_3JdI.Q݄C? ԧYZ%nŒU|2Ŝ~1XP_\ J兴Ԓ >p'$d.\[<> 2oD8fẒ₂Kvazը2JP ÐVrg,F]֑jLB2֏)ldCn8O{DWZ 2 "l+&s^}-B[p1 !ɸ; z(ȍ[>]1ʓ~nAQ(@h;T*/& GS<@8c`&ZΛtƈ7xN:(٧m *,t%"iV-OZCjr5'Z`8Feu-d=C^ǷDl^b۶a=u 쏴cۉ`}K؎^&vd8L3q`B3%%.%: Qxe rJ\Q/D˯ǃyY#p{e3"C%`ڜ`={N}-茽F]9S6g)E=.r*FlFA soE/KL?^f­9E29$ԃ>mNZr-b=.?AqR%DظnqӦ2~1'tou1#A$w\p5̐lYV>SYzȪ&WEAZU%Uն#Evޔߙ[隦=c/ Ңֻw#}1j]gǬM_e6F9Rә̍mH #b3#}ݚ=`SsT_Р3mn|J*w5o 4 F*Hyp~ IWVaufntvAF>=Nej,&}qUe͡R[8`RzF #A$I~ H2*iA9lߠ#rf2X`=+jZ $o;Imvi kƆ w5kIPPa 9jvx#p.5h>+ʪ,!l'h碣0ڻN #^4.iQOfC5C. vιc_9eĴ~=Et7r7$ő7~ౝ,+|Զ߷6U7Պ",Kmvò]{r_|VIhtT>KBG^nN q[ݵL75Cĭ3bHgT+&XAb⦶ ,̷4BqJK BqmI]_H7Yl\S#b)]d'[~PE"z>j RF֛|0W43Mkb<{LfޑBMpq=T+W/)K&v8wc܊Ph y*ZduJ|P§×]u@ RGIz)UD'k XKxX-Mb&5mULMNZ53gK/4߄'Ƈzߡ>9\S(z,IڋB IN -$AmlaF}?>[* 5ao!~O,5%+iE@rfddkLw&ܭw*{捱_qauLU aǏ96r ׆1n6odt;Ea;R[|(CU*??kxSݼ#y8#M3C;ϛ}7#Sus~O [i*dixҩ];N_Hs(7o@^n&z*pa"4tc,lɸJ'85ա#0jfGƧyV  [Jg3mvcHp-yn!l/!KL<ʍ@D L\'q?n쟩w8oN<;`/M<ɨGY%MF+yXPͷqX13r! $ȞM =뚺j3ݦB2zEsS{&;Up3h@4"dԋ s^ }#82JF&\gH9>̤!wvG#s2ӨZn#m=wX66_HhχZ7ޝr_a.Z/p1Oi @)'*i$MJJ-ca+h!P(y._^舖GEaf\,]dQj0˥ șV;vX1"!V [4d(ԏ`M%+e;SEn{%q1nj2`/QʐV4, ~_ T}I=6~Z)*TM4i Y;/Iy@&jFEBׁ+UH1/FZT3N˳3X`p ruJe =f +< t/QJ oN_ۏ_#JI>,哿x1;A{ 5RJZ$f\wq>mhF}z63s8P*T`Obu~omKbfr:OFiE:~ >8sgvfO+\`DAo_=r֫'c3+p#?:$qpga-J9ϫW/4^vV7zD =S;YB: ^uޔ2ޡցGK'Go{MJ{P"ls_m0 ߧ~b?ف5$=Qs_@s#!!"9S⎏»Z#=79F*a;UVɿRu2?cb+f3^n}K b*yUfFg+U;+|LzR˚^0uge }JVqOSpTw,/JQ{޵rR$IF7)1ZMUNrX7y=(@lr~n&E8'dUF\:q|Ez^<˖kɇM7Ae5q+z"&VA :ߌU'l}5p&04<(b.t[V!Mtkڭ\Q,M%+CդZe&T D20_DxOC^Yp vDw>:Pp115)R Fш?tNCq6݃IٴQ\C> RaB WqxԥX'yTҾǙJKG+pzFGw/obC \EHʭ{͏Jk*P mSgQ~=9!=xG Ϥӕ<—Ok͂ZT&e03& 90cp' +p^ix0LrEk"P `8%cq{ꘌY]0+gT^wlM7콛RRMA, 0(s%PhөbCO%ߢ`FR]IRJ'5b9+=J\R[C>H5E^0;4tNj}&>Ha+jұm4mB{oN*gc <]0iD^j};so{/jB䐯"IRb!UІ9)ܹu|$_rd@K 0bm Wo^٨π 4'ڴM9K/a+|(&0@f$q H?K}KC$T: ?τ3i^L/LXjXNN]1Ēf浌ߨ&,qls1N@9 ;#fIץaPY;(?x!|) ?b   S܉W`cζ9ָUqqH(C^^g3df^/ mZWF%~ H9վŠf_J[Yk($@b9&DgYZ* BmG|g.:0|vy!:ys .j@>嶯eǨeYY' H=]N^ﱊ>VWX@ 5/ X9 E`\RbNAx[j"`Б`lłR<C)9PyL̯f%8|9u ,rzC:Z}~.Wk_7{g5:Y;&a"ٷݿsSα-5 2ջvhNGg:%sB40&/PojV@/I^Z :unϒqџhrS.| w ծ8gYUVRKU;|~Z^<7(xy5 ajդ>h0Z\cRu7$6+p!mͦ;7E2'W~GD?dmhrh%LO(49Gd1kaxy#6yۊĖ;Vy+)'g]%:i?.G8yi~jah-מ=,|[[ʠ6}]\`8 ̀{p%2`nD!'Y5 y >Kk#~E%Q-k-i꼵Am©ĺQbDeW{QHwБ>[8H0֯R]Dq]gL"Qi$9=.r 4 *0'I",Rko)& _ijVґ+?❊v4KTTg8P$uESd2tq%̪[P1\z:#m /1{rnt uVD蜌:cqv׮RK=:ŀ,;rɍәڬu#wiz0f"J:X;d"FVfWꁼ* l@ʒ]"@2Dž 9p%-+-Ņ.WOI-ixV HTU17 =]*RKCO("SjNϠݡ~McE5-~:' SwV2(:6oW]pZ9hVi7Tvud3tVԏS{_ mJw13t*WS@&=H!jkV]#6b O(6A&C-ހ2rHS"W=D=$ŵ=\kakֹUE`W-Cʰᡄw%.&PW D%ƾ56"~h/SLM1*.(;~y (?0ۦ(h$X'v%`PHO>Erڹ`5f2ZBZ':o"֦Ce0' ߙ&?^H jk{ I]۰|uF$]NZ觪1ҡ^|\W >AZJ@9?l3ʲވp?G|n Xz I$RPK ʄbODpbэ`Rf?3PXbys}?& NS@^jdKfȟ QeA|;Hex@NJ|⺛J=Ĥ"}E\54oC}D-]YNaMa10Yl'a&U=h{^ SoX,P|ryr^ǯ 2mm1ī `itct{dы(Ip!r G d'}8QF!\iD'[*{%R4[YSbL'h8E{1ٻ &>4%T׀Ldyo=#͸ޘb,a|Qze (4U>ڍ< j5h;&J>> @I T;͘:߯R鐶ົ~ʑ )]"gUV~i+Dw}3oO ^3Û,|jT_'6Yi27v9A5Hr<].QX+H&yiRCZOHi# SްT9K᭟3@?t Q u/ u}'cϖ&0J*s3oqSĺ49~ w?~ lڗLy;t(oz_ ""ٞq$ذ+yAenѲz?M _Tvԙ H2&^ԣ|w35~B3i(-l]M>qү t6,dmNXe!DJDh\:r~x):WWkq+:WJ9H0rGd/#>\aO\";^ @ă?|h%/QşC:L9v,.?P쑕Wd]u qC) #Tg2 oS$ˉ08,jy+cRҧ+$0XXq?`Ѻ5Rs< 1Y'̞KC|FYI^enT\L|oW.( z;B2<}iTEDsWr %PO쭊ЩsGiẀ(_b*Q=={<"$9{8mY`^F~HmO@q0%-UP4/f!Gf0}'e5Sq@Mp:t"4]#l `ٚ$W MjnlU zi FIsg(GSL!oWnFɴhh)z݁o+2]Hp'.\.@(|dT\r74ɵhAӂ]<A,r\.{P2v“oQ\Tj%PAO" (2Dj`ϰwB>al[)W i%5Գ"KOx'9S_(8/Uk"GԽwsUob6\Dߓæo5wU*~4dbiC"c0N}[Z;# MD[Ƌ'ݝ-u[Eh2; LTg_5˷"-pen[ɏ6Iu`{8gn&C#۪zл %` 珬T$ {=xZcbt#!Ay6 Ƌ' *U z]z{="Hzөd;zsY>i}ӬGgyhC&XHdǚ>mo(:([Mw*R\&T1s"v~OU? W4ےyoEx5 џ% ٱsj%4H=RA9 ӭl\];^!La恑̿y2lԽ^rҡX=56r$#$ zb&Y.|+iO~mywa4!5wgF!MG#\$柀7/32;'c?XVKq g6P}S( *S`R =Q] HXÂ$=mϣt\d7'=0* 408&m7ϟL073^ѹ%[5ڭW={>aC3第:,tbeId 6eOaxǚ9vȕp:J-h ^&_V}DR߼ך δujw7iՇO3e\[х|% 6zםuY6+g*!oSq^~1}'xl~;O>Jp#Dwpc8rr W6)oߛo>Vk%:Ma$gA>~ YcC`:8Pp@+9rahwa%02+* w&8SrIKUf~Pƶxc8Sl7$)s {D 8Kh]P[(:ZLv 'n/}7w)%͓:-HRLdRp6ۡr[AhFEXJn-[Z{qKCU>6jRMAUsٯ}Vx#hfݸG@i]CIĢ,IST۩j$zco\Ĥ-H).-MG7G}2i^_ '#\DB=m":)7D:WWJMdQ>(*Wk~x &7e+=bDTpšԝ_u/'<_HǏnC-\LU*D" p/0CtȀiP47QS8^˶l| *BHX>R6O,gTg=U;X<1vrxϘ]o>ΕiX`D(++"&RY@6adOvUXCLM5Ⱥxju _T)&t xSFo@N/ }gܮo'M]'hAL ֩< _`KL2̈[vB?b]sԬp2 !5yzXV ^d![5%VWtTUPQu}rثZcqeSel)i1p6γCKg/Fos;ocA|w*vtokbfcɲۋVY4i6L6&0&$^{`fLx!YߙRmo:3 eb?p waHTn0 @!;Z_8@svunX<,/SFe; le&0$;^XޙWTV;>w Hh8+)MQސr|\{߱^un$1D?{ TU$juSu2\Nw$qş#Sb0; 2+bD }nR9e2{R0r[Rs䰈$q"QFQdwQnV;4 "'q? #?} Qy9SȴHzs(1GV0sHt%nCO,*i&fciPj֊:5`%7ow9+ >{fS(EE3\xdh:9@+6vQ#ZA EgqKz1up?Wgć7?!83v*Yʤ@:`t2C<@e"j@2w4g7^2 ɩr ]cOU񧀽^zz#E]3_ĐI5uoE1PfXyS8<_UHf d ƐU-6=l"ǻF}& ͢EhT5}>xU4qbkj4T͞5cy<5.1.+(}z@aIgAWpO+NjL?U[+| T ;N/nΥtT.[l Ҝr0rWMFRW|ž0`iC u1<2VHd*YMLU6V$?q}k9f)=;4: Ayy*3($b|ǽM0O fQZ͑?I.,:ưXj}]:%=Zv ՁG (aC!~L1s~yrnkf-G6 1vT.`},8pژAО;5VmdWsq,ftBwM ,VeUH2KI87/ԉ0:Rx}5ա(L+ iI?~߯.c _ӱ@i8e. :K%K}UԢirw/遢FE.1\2sor/rI'y8_Կ!<k:"O+ZkL7=\4.jD~~SRfS9O]M󘷉/ dЦB9KJnv7 0QiȭLwj\/B4KLuG#_RԹD,C:hb;ؓq@IGX\nzƹ7 U;G+*DQl8:A5X>.o ': ՙimṩR%;gDo,IFwPWD Paiuļff'ZxP.>C-Syg`[e.78 n?H]3LUMf|~*ɇBqIĿۧ5P6#2EZA5:,8aQm*. ٞwǵ ߫g4uX)f^ձlKKvK2X6 @{ɉOL+'X(>kIG)bi"=TVb:UبfXc@T.RY?s]KZFǝ !n;T U:PyE0ͭ4~yɸ:翑g{)gy[!T>5\ԲٛB I<E&Gγ$r>+ oCd Xޛ{%֕^*q PIaqfj6C# }\L#AWOyt{]!Ivr;EkP8rPt/hp(fftFh g x[V Mwĺ$zQ T#c\d>- ~Li Dٻ @ُnc[Luˌ|SV^S)҉N?nZq_S-/kSv|)'Siqϴ6诛%9!bHOD8=Oa)ڄwv4&4_U~4r%Ya2ѵ/:A@Dʚ?LK$?ǯsVݧ|gnm1NNG[C@mMYS5_G)[jq~-D;xϬRd RPu|Ye4!"-D}3ؚfae*GkQ!@3zC^T1C)ȕd$}pLp^s÷Se6  -W.=–-U WHxHԅ?*n`syJ2HsDxԃ.RG=l@J H&>ՀˮWyh5RKĨem)'nH!,mKؿ›P5> q4h*&WmQ37u☥zOa뉉 S_W.fk/!/,7Xdy`Mr7!Yo¤2JT%2׮o4=ºߝ,p"ĻaTMTr~f~F͋eQ|'iJhm+I.t9Ppc#Ur|ED) s֔};9ـ{#~B5 ԃavTN"3[ۻ_S! [&[ٓ/R }5}#j2C~zṬ `d66|Λ w|﨟QJ|=I;|<I 𳺟jyX:ʊ (TGA{`[mG):ڍi9иSr,}O }qUM5H_l5VS*q?/`q7`'X /:OC_Ã1[F5NJBNxxpiM&uTUU)c֥&񒞊XjV9=l? C'a+|w Rg](:Nm(b" %+`V|bJdI ]Yޙ>]D/m1: vQ+]3 ^,N@"; &+zF8ԡcne-*vব1!I?5@ yӬSިќ-T1Wۺ2вVz ׋\P;ϧhţjI#h'jD}'~/]F" 9Mfvtdk ~&$~uӾb$Wm|Akk9c1.FL` b Xjˉ~7-񽄉m%_Ikw]vv/؜7H8X6FɊXUSs5)e_}/'(?]9< 8MW<&LG5U9~끾!deq8hSzk芁W.Dw,(_{ցBB]Գ٬"M[1S|Ekp/G$o13~ZRZ@)I!y\c5`ۖER_wbiȁ(1 VjM!_qEk .}0~it,5`#cpM†)&И2a G[K<چs]"g(QJ9]س81t<2|#M> .S(2"m=,vm ]\A xZ'W l{wh@f SG3Su #%r""ڴrkU xObs݆T:;"DSX): m\1tsNs5'"Xi+0h'5ao]% +t qx .CmՂX?,VbOޓ}H1h*ƌ5 Ү{mGqѳf6oAkK^ b|NXhX| <ő*!bĊ 0%% H:w&17JM4לK x[uX┧ċxEK`i\w5(^I(bd8)=A@>w ؠҽ#yw{9}Fg8pTO>XV9Z]}CJn>r̶.G Ex m?!nȫd6ê6w~QFJl4Iu͔H 'oޠԶ{,@BXD"-dE]+V`˵}e o)e- Hoj4IB)+z<g7NeY3ʀ-SMXwB:.>&m$ (OdrdGgz@cZ]|K5R, \(J;+}U=3Ki8!OFue~A -Stsv'Wu[AsdE3&c!\bk'y/*.bxMOIFdR\CL\` w t̙1Aj A!bi |QhI4IuO# x`lhI]D+ LTK$51dx~'ePJ6 5dTT 3xAqM-&N,9>]tBxֆ8:CQn`4jY .Rťw?V1QaO7\el?Fֻ EDęN~~qrGS3P՗ tĻ ]j nA/PJ)| ܦDXa+:DZ/PK+5)kv%sFz dA]lrj2'4y48I 6+XvVۂFH)1Nm\(ՊJy^I"^ v<@cڅErjT&Qf\3Qܡ;=SN$!N :0t;[B v7X0QP Ƅ†sM@Sos%aW'@֚{уn?@e)k|GjM{՜ JC-T< LvQ{^Vyȅ/etPa:FyMq>tE4<`S8vpGnUl2+]\[Kt^U F՚A9Q}vlKW™6eqQN"OZ{xbgs/3r :mӒ饿._c +Xo= Н)ChD5 n`iz~VeXqyoDߔ HfV{e8P:;9uQ#V*qю~EȳA53%Iqw%TaLU $NS#Mz9o ~[~i__c@GQR ïDb7o/N%Ft5da,F:vb-%Hy<eåk۶$!aPd]t-GNB jAx'w K.Î@#z][ (x< MJ0Sd,.NSS/$7wq./Fd]x C)q"TZ$da~fQcDW~"VcJ=tSc$}|%E;Z889 Vbad:#%G?UJ$! O$wS|وJ:]A{Sh f݄[&l4b04e=|VM\s %~"XJ=\tuz!51է ]ijt ru-vĠ#Pw=>"X.2q: 'O Ci!8Q \O"I ﮿mn$.-o aYMƹѹ ȿh{8}4.*[A1Y@$Gt[MLYbfPD05%GFυlVDbq?$ڕ]RxUܛ~r`i`~zz7N6 NL4'ogl@tap0ɜulY6Rˇ-&Bbkn2}>M0mWuK_$yf=99&f,7òFO<8:uU6WQņtu'Uj1Z}:_:,15GWl#u-vN7˹i8Yvhayv`?vҽyӣ}M0x[vaB4UN ]NP>>\s7rکOWڤay\|7x?6goH{Kh|c3s8+QQQ^ĺ-q. 0~V H v[v_I%DQp'zGӳ[w'3}zu,dZ&M_K(z0q`?T@vQXaxZpz<W| (p e^qsU643?3fk>0|.t&r y5ލD.w6;R$Peܗåc Yج䞭3>/W.0,q2v )`l1mTyz^`nyoØȔ;p+m3t k}{nQtXp< ˊa}'۠L_rߙ)dtgw%539:@/s"b<0Y\ߑs\ ?-0xHjvCҏbz s DsI"nqۯg|gExGtC❙Zx"$|̽ @(j^1Z%3.q՚w@7/$&E>LGiha1"m:[i |[̏~5*;/9Cfcv{O?`T,mgFr*X/lV^mSL`vSebn'cw"@hӉhna"wn*Oc*ԗlDKovk@N6y0Hd7j֜Zt-yV2$k>\~9c{)F ͖ؖ&΋ Jߚ<|)h 7L4=5E*(.c]Qu1a:!0R&>ĔExHf"+2C2mJ6ߦm<̅dCz`a(kHqNJm)@rx\r>v9{ZJg]k3զV9;~IGC9D.TOcO7챼h)A;,RwS⠄_,@_wbh j0-G8JB !Alcqg0pV )*>4sM?*{0{U~张cQle*:yw=^Cg7in CmpˏA(P(i~PeecA Rvp&/yIf~f)/6ard6>w] 6a\UˀhЂH9A%34 d#k`:'+Ȟv ^Ed7gWͳ8|kXtMImUY/TgWSUfʖ@7$gaTxOgw&JKD!0I:+>[L^0*6]C*GZXF(~Bb0se@#C2s- mjd3%Y|%|^w _>"~ͻ=n# 5_w;cwťcZJ>:vSyQ@!>kGQތwW„bB{afGd?PqˆkQժ HeoLS=ZŲbF9;q6'Twb}n,T.՘6eYMF2 &p=r KQh:}6wʼnSAi<-A#Oi`<Rg8(`MBe3c?.y `sDxpB)N1Y,0=pNksMJB6RB=eUHZ0p|m(L/Oz9JB3V;ψy.6GS49|s5ՓLeSEh]ڥ+^/+薜[)j,|%M=>O|yJw.ê uT{F#Au6@ik w\tHDwB)e)zT"f (pN.-AHz.O,;.M57t56>OfM.;]16/3oa{EH^FP"<4^$~ywk*Ƚ02 Q$Dq給!WlkR 1.f.C 7U_Sv&тЭ&`Њw!8'BXN;슫>wО&؆zŘ5hm9؁m4\e3q*0(vr;Y++@Α^`rfygEC]bUqlAb#raUQDU"I[\ʌ-#LyY!k:UgK!E/VL(tC;HF$lJ@XZ9׾D+SyS5Ǫ,o kae89R$55[P~B|63Ȋ4X.fY&x?kW`tgpd}Z jQIQ.gv9{%]K+[փ=S ȱ0*#y-էz+[,Iy_ %f2 |&ndC# t]zI"Xih ֯&DY :% c %2aLCwPB ߛ{+0nb/c}tYvz'ߏ\)JaD&d7OxׯP6g09{"nòx8K.\,2u+;NbT1;KOegmdh.՘ա5dCdހHlH(1EcM%1NµuAEp8`~ݮe@J[%/CSIF^"=^IF+2W'-?6{o gI`tԠn<[𵞲:n=WIilb J I Cئh~~®LL/{t}m=Hk7&Tl˦tӹMNaaS%EsD۱dEjE|DT3ͥz=/p ;wC-ཕz:RB2Τc4h u+0FCS7GAFrx1*Θ1E}JUk3&G\J X҂)| c?BIx(/Z%[O.~C8|jhY"7pGJȞ:St=Z`" ixKHxj߫xԚ7r6^nAO`5g[GW§ʍ+,Gà8yhި"9N2{_2ܳc٬G)q"\ԕZ|'|l{Ԩ9Q g|!AtG&0sN5B5"PD׵c)̞#}PȄ1r(A aIz(Sӗ,hg(9?4D7Cu KRf7zB4gUrvX^lM<a:`dkF`4.d&9@0gnPbԭ-!A*I9Z\x0\C:DCmrQS5sH3ή=7*j= uE(s*DP9fa^Q$I'͗,26Z []#j#A'~^:sKy+*:!^YIdtaݓbI0%~wA୶ryr$V dt'() u}o9-&x* na[u9JOVSrW͗zh;[p!f"Ck/PeЖMqixLDa?!EOK6Q {-qZbFh:0g|dJ_smH>QrU⺌\{>lT+U|kOC"l~c8͛T훛=v! @@f_/TA|t}%l2jI(b~`g3K 㘍2jZpvhBzKEIRąO[K;N* ~t=Z_ƳX4GFhe#m՝AWrtpZGN"-[y:b-qd(D% /f(v6wVk#kU_ԌT1H bŁag [tP1Vycq!9τ䔧ɋ85d=c&ѲP I 1gb& mrs F)t>I,r*WH<Uh.X֢qpnIw(Osgbe1JgVQ;}Ex/G6fjG_ h{96`F2I3|"e kUԇZ8))@.fL9ZoeV cƷ{Piڒ*8JTEp88}5ceQ_;^ٝhtt1ۨԇϙU&Ipn阮\t1UyV$>'LJsi^Cׄf17"5Odi=xMF+6#׹"1FmZm)" 5aR t3 ݬ\"WYuLIZƲz6" 53KKQǀ%kN% 1|Y,YB+ jZ`=]od[,"tpK)! QdX}#V`_Q 4okr5_߹\{/cvWf!o?n3;l xd{?Mm9#]1THgK\Q2w=.^v.$n@[tw]$a`)~B*sd44~FF]8ذ|mp~a%BO!ܗKx%m'Z멢JJԠ%(ʼ:G_s0*pżNW`LuY+* R?ےOt%<BqoyOQ䂘NYU+\_L6#:-n\RD{L"x&&epYl[JmW=#7}Mp|^jU\yISM`nXN5I7Y4>c .!G!]U:/X/^0n 7!e:LˆKʝU8)5) 8>!1+H,֍ $n <. ECWvS[APE9e<t؋y)O4]܊5&G~?;u ^:UQy_,IȞj,@wJR5yМA_[ILc FӟUPg$W0L&!Ԅ@%F\$: 5VCuJ`ٲF6}v\K߃";Ѱ-],HIxl)A{joS3Bz{NbEe?j\!^}i)vߤxmni_1T)+5rZ*5lUSr ]YSrY +`s \l+p4i8]T:I>5,*NBYPx@JBshABx4zRB_CAH Exz jw4/ǡD5QhRQpv43[zaGRfP<כZW =ʀ\;eHD3-|jW76KW"c4of(G?<6ş+䶑ߢ6?bG *u>1̥[p&,MPz2Aų8McE$2Mo}j (48Əo tUa}'֯^|S]/%)3a\͇Bo9hgPF ΚhGu׾=Z*/4 ')^(\P0ZF\b+ ̐bDžZ iMp?2LAz3*d)2ɝ6䶖Xz9]'oi%HS+[- qYc6`Q_PgFzN)u}qϑ:# ~gz0 =F+hk0#9N;xuc sd1Y䘥xR[LzAW(NCH́ ؓE`u{+x]}k=Je%~Re՝u{[{T8}CUs⟁<@|ohu@$iL;o)X]GbaN9>A}272 o4̧8b%[矞Tϻ_ ni_5fzWPy띰 \CW)jÐU ]]/Ewڨ%V{ɚng:8%8 W!@į`O_)v%c%gu0I//-O MY\^l@PAlw_IOu^\Dߧ;u,ᜌ6~x@kPio's\Uqh|cǝĩ]]3QXs4s4>c }z/. fČ څM9 -%>6 $]4D2< “쬑2eB|Bq%w ؜a%š NXN9ͯ5\uJr93Ln[UlQf.ҶC _jjqZ)$BQN@7V2W2ő9%7bN$+˓0<|T`#]#4#-9FBv}Mmknjg~,CjSK" ңr&:2! {;w\;'pox\M˺3Oޏ1!C '}ȷ{,OG)JBLDm-^7ѐJ\ǢDwmǿ6b'&*ӧ;i88_>,9YH)h7\,ZbK[/BP;'C'w^̇79Ŵ0KSA$6gQ#!UmzvQ}Xz9CY-pEK!Z/'.W R`=K!h<a'A-׫̦|}]O^Xduxl#GUZP7ly)7)(ǹY]8CN%0l;ȻxkTΚO?7LiJ`?1{<7Xwʀx7V$ ; ]bpZZ.|:y[ ^I5큦0 w:c%k|ܿYj5zrCYW/E8̸*p8aQo сI^4/][&*r1\~@LU@]f$od ê| @)4=;!i0kNJB5X#+7@S W@j YxYx. c5KfA;@p*3m獴>%,͠&{pALw;RGX$y _5|Ut#YY VVFwtc.hq/!Fv]JIm8]fǶvYL%KF8" DK }bUGӔ-$ 9lZ6 xJ6 qJX3SrR|cDmoM{> 莖g O[DQ<ɓS H`a2Vu*4 ϙ| BUN'ٷQdYRI; }( S|B?GP2R" ov6Bzo`wIy5Ӟ\3Fll$cL y}:/S,MS|`^|n]iǣLIʞS!$bi.kT/mtoAtl\:ֳ16a?u 6)cSc>u0lB,_6Tn@m0{*Ff،X?r-[e/S!Js["{f?I\:J/ϕV7sT SkW8 =>(5;qzaT81PhzڅFO,U6|uO\GF 㴲Wf>ISUfᙬ@UZ4) #̉qB Y#haXUS [|&-Øl}g bb_8Ҥ s]iEʹWN-`aN~m-tC!,fE' EH3#)O* i*l51@;?;'ܙ߂*m~-kW.Ë聍LfЄ&$q!':ٍ`EOɥqxL ]r!ݿ8*sK~j 2FЊ ЫzMS~٦ 9(hf4aEq;%+'fd{ 2J\hCRh Eo, ƨ0VWp,®*fx n@ç. .ص~ ,WηȻЩP7ͦF&[7[\bDOEIF"x30֘I+ },FpwُlījxÔ /l)3{BM;0%Hϼ!J,'#;GiygEDm3]֗㷎v(i9piӎ+hw2ːn͗Ee *)^W]a L GwX!+]wfzoE'VDp*n/>ڼ,8Z3 0Y+3u.y|"{Ͻ h%0ε+%\.XB|5_9ʹ O< c&<4PG0eBS)ܬoe08dܓ LmŸ/w03q{ ~ 6MX+m-3}-!sq,s3壦BYdYKzwh.DžM4yL+U O ٢^ {aT+*iHlj(cw(,te$#i]椑r;y^-F|F mC2%̞삐` Ei~[kEO5N;DߦME^t?jM>aʬxůN.L=%0j.Q+ՓC=Dvw"]]i 3Ō6g)YdLӺE5QASqb9:މ'#/ʼnZM:>O|Qac@ 1C,[W *ޟHчfX+d'EIdMS”#.kCB߳14>_gc\,ham?6XjaȦ=0tWf Yy?u92P?P[XlO!嬰wCi]A誢+Z8\6lEkC nۿk= 4NnK}yv> DچpLu=ɀ8r7c)ѩ{Ahbcnt7^+^s" aSno#T٣i׌(h31Q7)F ZF^!7 %N 2qF غ ܠ8ZruºQ(.@i g#BRL4rʻ-}*  DCIW:(!8Q k/w׆ 6[}f;Vjқf}7KF!_~0lR$99 Vmwn![|-= M]EqҙF4!ss%_GU ƞw *y@uL K]W=\AQkiERf>#^@E;|\*gU|in]~ ??ɻ5ջ܌Vb9REz|{-4ޡSguy {C+ERvMiҪզ~[ɏԎSGL8 ii_#' Nq0y.Yk RVgbnA b%C*A=h7FY6>L3MLipR=Q䴠 k]5e[rcfUߠKkj~߂@e?ܰ @Z*}BF*Xud}3^ k ܵ7s @՟e%o=p#8>> pM1묫T(fq[-TJ)U@{RB5=0qCFSL)t}W`|ՈʣT 뭓x&ͧ݃3Ξ'zzA?7o7Rib(-6 D=Ers̴hZJb<iP ?Bt%2;lOuحTP=."ͯcjЦ!Ns]&{VIP^çBKcJohUHn d8u=oe1̱lWd0ʚ0 p84'OԺ7[R(A ÜxN'_\k4cJ-'tUuN;{y`ЮEJkzH٧?JPKOsKy?:pqSZAPGHn)'P|`kL\|,8[V1oݧ[_#I;2yO iW =TY'k8RCa?Id,|1ӕ7nƐS :DI}bvl飌zBLy*@wF?vp5 qLU96}T9-u.9(TfNʒן]YuXx=xgQOgdE_*~8rAz3]up2!pͥzrL 2 a,p$@8ͫX ;DzyC:"Dj \E@6eU㧡J dR%rCΈsYh)Rirm mSy>/Eyjs+Kz 9-cɄ 4" WoJ?B}d\TgX='~(fKf nqV"z(\7;dGc$cǺWtg J% RdO|ؘ9vʶiM,Rk*lK3;ۅ-iyymKrJD y*Xϵzr0P7{&feZ19OZ 59f2;`&@'ת|Qk. xj2G=ĉ<{vmK1!=5SYV 4-0Q,t꣩Z$X IzQ>p^AE_2kf姻Cp}2j%C%ͥQ{cm8ǻ 6)erXPsO1R&.)G`&FN2^#'OS[hg-k} YJl93>g]sa|C}h;WdM)x.%T8W(%'޲n>˹EdvV0:m}0y25mJBѾˆj"ms`hP' aꦿ)^VdP&9 f`J*H5և+ GA^ĉ|@&F1-N UqP66^nPRr#YP/Wr5i^luדQm1^jSG_tJaL?ֲd5bxĝ(LY Ukށօ'18w/F`J.엏]Au6se9|p[Gw0J-l ,~aCeh=H@?@}8=tRb?@$*ք E@#|.ڐ&ÏeMjUCI]NC;F9 fE9+áe.8au J8L*i=[}JOX{nMSD<ڡ4^eC\OHƩV`̻d쫎qo7e%c3 R_U# aR6TíG1LD ΌTS fJxTЎM[V\AݖԲn%f-z6;ym!Ɛ`'R8s[s~V2r$ezOOXAN2jTz4Ph,ȍ)@#)ltw-~J oDvq:2ɉ_0le8Vy!+چ,mg5\sk&Ki0ᝣ5ŦZd TdzCA]Qv/$\D11?tm3 0: |1ց##`Sz@[^j8'DF1@t[ / ğۨ4= Hz[(eN]X3>v/qdȄ K.XTG6ڀE2,A-ꡳ}*UŢ.-tL4w^eLábV(/IOU@ 6 :=m@}^}1 9Y9\gՐP ūv4`2# I9}ZdÊ~3;n |_Yx_:b_Hoļ9x h{IIU?ѫ.fXEa@ʈ%p4gEꋐl-nNFZO>*#}`#޵-]2e,t7y?} KO m)t w*;%/E~_nz+~%b kP9 ƎQY 1 L݃^*t̤A?udRiBHEJAj/1~",oЈ%g변1*n̅P3[,T\jk7@rDñjwԑ~ Xb$k:<=3bBGO=u($8>ኯf˵>wGYAaF9d[bXF0p7 It S6UOɸ1 uΐaq5@B_Ү. NT'lm'=]69Z%FX5]C[ Wk:8f:H,Yj;&^lMcutz{ut3=lxj rj=0APf_˜m! H"LhZq?(/!pH՜:$fw AgoYWR3 P)R`{9[Ӟ`DӖ@OD!dhRQx)xn%6b]ڈi@r  D'K ?\x DD{M cE5R1Uw\=s'w7 "<3a|Gv3\sEtɪ"#\=YuՍkTAFZ/wHFR ?A[ho]T LNZeXٰ; .d#{_70̼txw׭0`w| X=*}./Bߣi̒lY =R+MTA^ 2Ԥv~n@~h'IDdŠ$SEÆF6ɢ2 /%M0;U2H] Ohs .K/H2r5e'P8o+Z'GRfr{\#(Yn?.1] ttyM8 X9 IAEEg@AؤoakoKxΜVƷ+/p?}[$z9@B=P#Y2-R 7GXC?P%7"۔ǤRބSgYT.fRtQjJy'`UDc\KͱbypF``@$\3|͚,Я;ߐʫ ySeC!e"!ΉhD2 P nm$`;QA7o 1Y49p0ܫt<Ƌ_ZO/2t).p3tD'):J^%U(.u?J|.~5=9<;.Es Q|welT>.>xm0LePoPͦ)Մ?L]s5,gE>P_hL 8`74ںJ;\'Brd1*N1;[g*<܄—e,+#WUK ˜wUb!LuwakSwʹhquOS p܀=susEqK{-O8+&D= _[o)sX&}bQbRi$2 ,&rj\*w Q??w~5t^Y`=m=jRC76LwL hb4\cfF.4%vu+@|F"uwГee)F(DLNh<ܘ12?F5|^lwt*H9N^9 #Rm0(t=Og`ۺtK`& N B+@4|.8vB~~#v%ͦ@] Ni4$niioVvb;#)]&ij1Ic%d)zf<؁1Dzoqu L~1aT`.4˲/ܔ`hCyoF6a CL Od^0~C$۶66dy#drL\*GPuE䑷& @3s;{DOv.$n҆!cxpopZVm32H_:/Jg&T>!^ZL,=k}@r[84X&~jV7(TR!o;e2E1b6`$'\{'䨾 rS"Fd)l:ƛ⊔^up 𿷂# ΅` YEXY0/~؟ cz0?MϽ"ہӸ  VNXApo%حRg9ԓN&lJB$x}yjpWJnS{Ss/Y15յ8Qz̬%=}-Φo~aop^GF|TեsQߺOzUƝX͏P)xunECVbm KVڕ5@]mE‡juƪGafeib^0O?\0 Ftư\Nayu21u3n`}um4'ɔ T,)@jad/Ô2dXN+)gE-'hqDAu|cn[0r, 2ÇAl\'d^H72Jśˇhm6I}BwKr_'PQ"w.FztEx/EFXldse,UCꍨ CS@;It˴+=EW:12x'#Z9lWR-'{"`Ȱxs[B8!O4R͞R+F q"&kH8UG7NΖ~_GdK _RS39L^vL?&KҠۅ,O!4^f*ʴ)5uF5\w!QY'BA7U ˿^ ID@޻6jOYd$p -N?T@,}<&cZ#SSn؍ ny$ǦaY8 ;|^'$$di!]Bׁ4<$I&l[^B +Wf,4WQk؟;X{-!qes Bj`0tsA(վ"EMk_U)%w ,v>b#XߚwE?ƨM$NٯYrKp> &`s P h[-9ncApV)&BWSf ŃՒ nHOu3@WA MXI-[Ų#JɌwA(z17Mor_[ho>ˡutLhȪ;[IPxM'lN;!|$uM'f6Ig4dEQqr.?.':0.;3N:"^o//D_&Q Yl I<~AѹvU-TQի*:G 0?mt1mUW9o | ;E˵CC[XAB+!7}Sɶ1!2x+-=`gm#5L ,zJ|Ju3+#x?~Şr2b,1Y$s*釔~ƖV2 Ј Λ#<$ga& 3ǟ5B$gab5Ǡ`r9HEzn" $ zJVQ5q?HꝦ!D'~$mhX %wnMLΖ_ ߴGfˍ&ܖ8p`],VS<Н86gn_K<ݔX lG- S[q| ǁ1hpWNjf\hza"RρT Z]#[CoodrA 8AFsǀ1԰2?c0β{mhBuU/g/)ӎ_YӪbB粜}ض]  r ~ڌM^h$d^M8"0|~Q@P[ pbX{S 3cGX3IGҷަ*-sB!r(·w6d\?hsbΩBjt}^]j9‹`[BBɡɒh^k=t@ j] ,rRiFVGDZ4'S,+j?ѕ-}`m)/!Y0%8~yEIVN0,Ot0σ[#ea;LiPIfz;N I HzdK?yװac~Hd7Xb'oi37x%:VSm~ۃҙ&v]'1ىn.['rBԠ@hjY8OHG6#?u0g$# a`_ m`j_]GaØFGqA8I{&d+QJtЏPEzO5` ,y*_SpTjk27GU eS⸢eC঴eRęc|M 6a 6BVPgTnwV:G}F8$c^ysO*n -ZAik{o}g l (^„<ŕ>_S=Am= O嗴~v+bS9Nuا:ݷ yJ'`ugg<8Gdjf =֋ Bޕa`c]Ƽ3$-bAЌ:% `܌B~IƷe.Z:`1*ՅF%MyNw[AV<CZg3;s:GJy'Jxm tX97 cQ@G;dK?^D +Gƺ2u/GfPg B0X1"3[)YfOm1VE-Y;%Mԇw]ێJ̄ضS cъܦ GU{\{7; 㐱$Wyև%;O_ذ'uKW&[צգP}-گSPUՎvaZK#]*^P<{d%БZ}1X͗'[N0W̲B_UYNzˤ|N.K0LeE'5YG|˾0A'Twsw"%%ė h8o3_ZdzF|_`uC&F7Cz}IMoNʵ]DX3 c MK )ٓ=jX|K.q'j|8I zل՝N5%tb.RiYsPpb.ʽ t 'Q^gkwпLf R|y&1O#-]UmIc\SЬGq4> ImT@CZY횊d- N:syjrB^6ligԪieKJiBekٯ"cV#B)䍭&/]tI&'HwBϜti)Y؏a)(0E{<.Q+A#ύ`bm$VRyxx[s0Y~#):GMֳ U7uKCTF oҴ"BtՖmДױF>}5~^e;% T % [bi.ByY_bZbGWJnj') nSS5'KxL9CbbY:%EC I}FѦVִ6* sb]<ޗ}bhS.,Iiu/:c (-d{ERh@/]IB_wz 2r-,x #J! }K!9&J!N:%9oky=m|āY[ W\5ˉ-?wݷ fJjP%3S3޲w0 ^UkiA&Xˋgg,  oLoB庘p rZи,NʪCb `AxI% 2pQEhQ-*!Xӯ,#!L|$F0իH~n{טAˠN5ZsF\@B1$LA{DĐ`5Am%K D@l钑9.j/[ 5Q\Γl)ˢvФѳP&~VInsaВ=_ڠ;GxRi& Ϟh,xvS6;6J _yql6:k5>z[hG CM#͎K"g-R(l*1p5L{aDppC .W0$lg2A3ڼlOn{| S v~;/~dLTKlcY̎i"b{(EH$4{n{GH!iPxr=K{/F e-hדꗰE ꭁe{}\RsI.r e1}s*toeN|6vOWj5ғC_fw~˝JV+T&ՓI%F%&@ CXoM?rld5R%6)(q]6xp 芶:ٛVcMjǾ VPXRFi:PyN Ï" YD` ik3~D6PAu ]!Ã?P/mXë2[biu*2,B}tT&񨣳D㊎="?]f17r/;4-M2J`|>Z(q$U(?3y^Q,U1f D C%\;afV+n(18@) ټ[bK<)WiSwOR"U3’9ПS[A kL\3Ձv;®ʇ20 PUʥ/N=˨bjyt* aw ~zܢKAh6*$zBK6*%i.8+ MΝ. 03hJR;ܙZ5~ۅX̔wuZS=Pq6OM6bT?UmSo/˾A}٭J{ :**n"yRmE.{tkyRq.1b_l?uVFL ö^\uNj\@1g v4yɻ8FzuO_2i:Ap_ nE&rdJ\~ljV+T*0ep;Y PG'K%qŞ ^Πyy6|w:<.B5c.\mʖfOtLOQN({!~yv"W e* 8PTRGnBXѬ,kjOkC+]{ӝun1kYQ15f0oJl{œ096~fݼ,[<K"cy'-=k$d" ¿ i޸,rx1,/%+&ݜ#*=CX[쵽sp@Ԏ׽nlp|O`"[NwꛛQkjqNY ɟ|,ۗdϿspI6Wc5eeªMoLu9j)mݹ=8,`]9na} Q\ qy%e} `J֌b(xrS܈4GK R QoNgl^RSHA>)LjӨS"P^)e$'A *!?w͞&{*9 t "}14="W7*=JӾ!T"g@R@M C[G#?wB'wF [+rPG|Q>ދ> kowlŽ\Bq~& YN7x6WXY/],kĐrzcUOadt<'^vWG ZĪE"#K:&!*F!NP$q!A ȒD0 n0|ڣ/u2<[{g2!Gآv“BдAR-V``ήfFN<,˙lߏ̦ի>@=9KiZrTc7x *HPHNK$x^^0 )x`x ĮnЂ"{4,WߎiYO^Xn3&Xrˁܿ#h6ʘش؏pj|E%w蟔[T}>i|KȄ̪(ޛX$΁_ G_@/ƀCKԯ3\e Dc Cy$Y0˘X0[:nv ٰe&bid<Wi?W C?t PjovWKWޢMhrWkQ_(&ؿ(aP޿*VY31:d`T]Ә#K]164&wvKyN*q["pBJbJly.OV[&A`bGT'V+;M]* ~sSkJXkowː(LQtHZZj0FM9 b.[زXw8yU^MeMԣΣ@[>wBtgPB K8Բ-!}gaLәXh2X򛨹o}0X TaJ@ FZfN[ 뭂Kve@ʭABT 6 fątzM (%>`6~Bz` U}f&gɀhH'Qk$[ǟ܏Ę-W?%;xT5cD*㛷]Jn,TaQ SKWVhVpkyb"̶)11F [ W*>P}Z'Ƿ[\ZzàE#h@ sݔ_yVۇ w%+k0E zl 3'HU5qf.;,QϠR97n ٦$tC*:EN=]\G8\KyQZ%T&|\.j,}g)f3x[/6c`%JhG+˸'OGkTT"d|cô$]ucqtARPxp^!ViU6_Vßც#g+tc>7m 2nXӵMJp}ƈ*9$䳻 rsmܫhU-^u \ . -NuP~g5[v'24L>7-σm%=STk_U*b)F HqՀ oOyLS%·շ"Pg!&YD.- P|2=tR3Z鋕Y捜2p[9TLDpr/7kv~L^eXJ$$i8Ϗ"ADuJB 6z&GGd *qT~LeWi^ o@X1-\eH K[96Jg8aoo& F8'.oh[apǒxaymnQS{T0+EX_R/9WΝ98PA_?ox.KW g +| PdW ׵'XV# U;SDD[A!DA-tM*{(ZsO\PQ=R5xVt/ Q )2UXA/e},AONx+ ٩Bp FoI ; T#OPa!0av'Ccgyo{ [JFZ_֖4lFӪ@ޠ 'ZoF* Q,c@W%-Z?[K|fdYzE%zQLt.@!T3+ͷJgFf\>5Ǘ^YP# bl5yP򯚂uw::%Ѯx%~BO:41P%(HJ(lgٍuTڿ=XﴝBl;\*S|}rBd31p6=F[E~QSjy8uqEew Zֳ&D@2ҋTKLj9s .z(}0ۈ+_TыTJJVX fyn /9W3~Q<+?9!H| M9wmD>rnRMܧM ©?_G6j12~OKlB)Z?ց(4B f[գ>}.C\}|qR;ZSxr:"C?̟mE?sj{z36kuL %a'_!) a1tG䎩7+M¹q W]ǫQi\eA{(}5ݲp7 Z.-Ewʵ{FԤ@#Qjħ|D+e( \QnL۶H? 1oftU-̲F5bt>*;=U`}7}a |db2&IuzNp>HSm}ζ+P&2 4j՟&*OA8wmՁN9x3e_r72k)^nN}Ov*$h(VW-<c1+h*w$g \U =|ّ̧ͷhTO髃_Yj(SB4gmedq@\D1//϶ .Vߣlx;Z@y\>yfbz,Ayk<)eJ|,Sni^@oj$|È,hwL TQwfZ*wC2M\DgǨ? K{Jn3Cŋ4.}Ʉ MF`˨-KK(Ī%#9VJs'؋TR BH߭ؠ5P\M$o]/(I& '$b|@R;U#)8Nd**YC/1՗+5G]u-j14Yx(SaY3bNG%}g鱳 +sHzq S}U+^LeA*vO< (*@D?qSgZՈm۞pVz8 x4!{f!LDhAcO>,n37Y* 4 TU펐Qp3Pl##LgELB'4ҫA:#!"fDWU`9@aOhnyTl_:("˿㉬J6>=r_)a9ńͲ+7q,>+%֒1/[yZ8R&tu)G'ho~kUWzW$X3ST#<.i0d.y9Nӄp WhZ#{?)v I:>JWn8e95`?F<gU_32@ĚP w /N(F}ϣj1zUO@M9KXL%O}PVDzH0ZER7-;9OX XI蘝A{IEXԝ2tÅ5$w]E.pʙWTt Lt?c6JT=2!}AmC 10GॱmE_Zy 3:Jn%ZD,dDz0UG^J,Hx쿷} =Qmt@f{<'"W$lUzf4xwp;.z63U0P!LmyW(a//⡱=(ZV+ݷʕ;>,. mq\a`f qbw ӜYZY@JC?},( - E>Ƒz^P}l'$,#< Rx*Tܢ0d&eQu!*T-2,h1L.X- l)V9xiE op[}}tU rFt G2 !T9V¦C/{DMzeh>2?[$4Y/u#p]}Ȼ{waԍs"}:+zǓ;cgV MQ!eq'Ӷ%3zJᇷLOR\H;/+m%!b?Y~JUzg |΅&/@4]Y{18>vg嘴L9P ~7*f3^K|Gͣ4[`D6S] BC}9"< Μ /b\r.HÈO^L iabl}:Nh,/uz<{ LVя6D,H;k9} KIމMrw%TЗ1Rx< JDɪWgqk+vi*=t/ˏg;ۼMkhΐaƖExE墢Q(.D<.W }ˍ36xTvYXcEcPhzS0Y#`;&KIkz:-~>2uMF$ ZԘJ0{S}DGPG)IPQ6 )PkIYiiD,,0 BaȔB- J302;N%D+W/Sw}CV Q!gϪ"SPb& ZX1 i[v( ClolXjУہ6~؍7OaO 0N8*簥LOMm 9壇,[޻?^ 宼"1)X&D6tn8au}ޜNKk;w%kr> {$1F"o ;6ߢA5Y"cӚ:*8o: 3}e7ԂgT}RAv='{N<͑#1 Lq{v7il{]o(V<>xYC^.ݎs/S-ש95MGNβ& i?<:14bvV/<Ĭ _(ٿllhby?:18VZnFm)n+v{.7 .8نj x z&ҿ⻻7KUj'5ѡi\4Yb]]ħ(,V%;Ye hCB: <- BQ@2rлRXi&K*[% ױJ{ȚCr [X'K̬7uU6'ZM }e G7)и!` ]H $^P|5E315Y@3n<[yMo+ f3":[ m,l-:ZG9O]V MdQ*d&ʽSVӣNdK_X޾xɡlx[/݀k} AmWVʂ n$35Jk1#13 Qȧ,"7;U IU+QoGIJvߠLѰ?ЬXLcqMO0GB[vs6ZĜBG  Op&j iLn.DAJ0P^S$gVVkݶr|Qks^+tlʷBțG:"Z~^ܠHt&wւBCvMx~b9%lT*% :YD4‚,}XI4J@^/kIK y+'~)]82k)1.q6-V ~';Y)K u!!w %M rqc"74(M7E:Ӌ$xh*; Ƹ0OOneE T_=J)]逰hF g]~9g,M!Se^dqj/Jla4^@2Mn"PT<[^|E +љ̎"07*a#Tx;V[= ^%2[-#+#|`~7q{$1TWFL-9ߛ.D Wu\<`ߒws6 qԍmASQOGif >6#bv>C$N'^#nr8en?и2zXim^%Yv"wܸտ Mnc< Kr^sz}0 7.Y!Nw'XJNqsOr.l `i/m.|]M+W >U%Kb@=:İ2S}nU@#RzXt w5L>-ca6G3d &kWV]w.kŸ5 n[TK']] EPo}w}kl]a+*X- xe>{N&ufJsquV;E5o.}Fz (G{B;~ vaI)CXḆ(^,ɪzQy_Ru}S bV%5oV[[4Cۥq_`ßܚ}鱰u-"(!d8a/ɪK, X {6.Ad +vfbCOXDX7(\x 0=až!%Qɮ+6'Ō$ T\NPcYlZnt1/<6VӜw-; ti; f+R4Rx)O80mKpdMR nq6ḡ5PzRTO ҋQ3geƣy.GWp "yg.2h [ɱrMVXXec-N|`J(SժWj6:1 Y*GB";稭'iVڤȮ@1,ZT^~B/~,F8{&jaA/;^ -&6"ΗK<ucV#i膑 ?c>/ܵ Y?1av͗ x-:,2N$?t~΢QJ9\x\]AbB~dܕm(Š"o PY+ -Suƨ M<ؓD;\m:29 Cr_#Yݞ rX|-oeZ`}@{|ɠ ghAXoTcٌQWX{%y0@묾䅪Z~lѴngG #}1#}{T!Hes(8Q>aurw#:{\ a=( uA"].&{0M\ i @0h^ׂ` V`ݱ'v:SL1|AO+<[PM6–&j0ҢN1% RpD IQ)Wo{_&.Z^|2GxD[Ƅ@HNֻr sd;u@|H٣[uC0Qփ8vZ1Cnjs(<NPc .]o<ɳ˝ GzB1~zHFˣ{LbC_7ڻi,]uֱŰKu;8ʠ NSz(m lsϘJ4댂{gñ>] 6켶n$MT?vhpIW^q4dA"&k4Gdsss Uze~&iϐ"k]`rC7X>8gdتBg{ -W RZb}~>[Cٻ:%wD%Juxjh{:t+c2څWKx H+FN M*.1\ `]zy;Ba1&Y.Cp:ri~%$%\շpA50,|]f- ʹ(>dJ;qje#b90y߶.]\-Xl]WԫmaF?zV#vkcPdGJI޺sVߐq |}G)ya`R#WkL˩gbiГSqE>K=6 a2FmCgR)2 >T-cpƶkneͱzP<`ulNKGi(I-׋ ָJu\^ CH}{v&])|Q=I1,n_'S|hsJ. eF%w)/vS5|ˌq6;6IthqT4 OZӁ*h\Fm,o.w#5% $5jh~`nЂS!ބɔ +`^la4#'.at7zUi[QN;<&b25#S0PJ[n҃ LA-̪S)`KƺXT Caf¼Dԟa 敡'YAEo 1/0iC6/"Q:s_,+02 {YZu"[a~?҂DQł[. G#M?%. G"k\',γ frè oм+xN6aYىl 8l|FĄZG8F]7a ؍ J;Z8$&K+b,xMAp-l`N">q /BqH\6G |IJKZ@qvI T?qImhmG=.Ht^bb* ;t (ls@rDڈkc-UW*D*4AI 3/ujA1#S-Zy,4$ڊv?N %xS5 auNY8S[DLHXG߿ "Ĝ/3*d3Dl5ԤAvLs=PϜ]^c©b:A)譱:ඣdMc?R#Q\T/$/HU=TЖi]xuJE04+bZw{NzW`I[-Pavfb?Ɛp{פOܨxMu@#4h~Sw9%5J r8` br[f1ZG٘.PavpTGaVB-\UşcxW Y}_揀2U[=/;̉etnT-'ٝouПb˦hҢ:VaƤT_dy;Oϋ)bR 6?r̝*3 3ƄI2} D]4!|vP$+)w?vJ55`?8{W+4_sҨ'3cao>2(V{e~I pp`ӯΧl\eg8e[bԙ9ure[f 'EYƒ9Ut7`DX ĬMdb-*Hb?'%n_!=_#dDfG+,^c k/A;/^`Q f>/˄69\kD)IQMkqiSUbX>IHckA}-Ӧ/"@ƊRr N4zXi&㛗CHU,.KH{[(ºe{LYo;=jڀ*&=e%k\(j[ecuW8 /ڒYiÑsmMD]ahgB35F~Hna&"T1~޾n mO*&1#&xk< VYn3zV3v( pxw֠*]wQQKfV"qm.ݺt+{yٻ)\f?Tw@y Ulꊯ2A(TXܤ^/˕Lބ2vP" kB/H]0\颵}7mɋl3hr oޠY$ŘzDE{z03TϿSim܆.[pީ+6<#?}IAۇ]Wh·.V/ Ec4C\sbl)X J ] uQ3V;ɦW1dY\W̿A[LR-Э6,XdIYy M=0/)W =0߻MN{_eAIaU1Ϗho9߫VsKE#3({`3[.f H TZdجʵ03:?PbjYt\ICpXk ҡJ>/Uz;8v)e&1n+Hؽ;=h*T8/E$JfŇظ`A)n#$vYv(:|ID'|dTsJ;V/nJ6Ů*P{7ju&d1%!%h2bTRKSog>ao,og7j3/C8c }._LWstƕQSm.5g%ԷT[]GsCVVEbѬ4WdGȓ<4)@xr p++IqW GȶkuA`"h_# ?cXʫ0ZFtZ=6"B a.)V\CrCBZdXNJֈYFͽ,ԹrOQAt+4mǜ]4:"!هRN\q(N{'Y9ͻhٟi7j]<^_}۱ ~4WeIEsKT 몺OW)}s2his^kSm1fW累^CxW7X9h٨n24EkrA\&$` X69b 8긯r}p$} Z%3: KkV7IƔwQ' ]*=@81Uw2%Sե#CԊ>__)`>aq\r2n<1U@\^Y~o6pYb\9#VEiLϧUy3L!UԣrX$egFEd$nzbǑ)i;0 b5T>Y-Hˢ}!x͟rni2ty.z ~NJq1KkdytoTJL򺴀GEkWL(3~5L*{e3FM_Гޢ+FSF8mcyT>gMo,+,HA>-|jSf3A_~e7 RM񘳧dAHLXVGɜtn㢿ỳ ;aMSvSSwUT(tZGҖ[_Q1^ ,{(??IM#uQkn6[V`чkeSjt#/OwAx̊Kf `1L[QJ)2Մ^x dtLdZ8~AEEQnVGjkԭnCJ cLunLVb "ʹ0av%:H EbYwmI]@DPs6jW *VD ;(S'ԷC"c3Lͥm$Mz<,y޵2^Pmj0ԢT6v4FCH8 z=F[&\,{d'XxDbJNTG F1*q9B}pV1[m}{ƱpLȗvѫ5U TY|,k˔*v䄲xמD' 94/; ')k p8Hcv Z#Yn >xnwyXPÍSVF_ݶs{j *嶶j]pgt08`(P JϩNu=uYٞ>sHRO4@$wG3՜'1q5v‚3_dv܅;ymzaO <^iE1?Mi/9qibT 4r)Xn0miZBե,|Ћ0 a񂮍УmS KTU<\B7Vr꓈"nթx.;X(ȱ^wZ,rn0]ԭM{]En;YՇ *{$l9LgRaK\j~鏥cXP~*_'HDQ޴{0'|ۗ:$Q;lsgz`gۙuTcyް=cD)ΓA4WcaRM.b<;J[SߗdWOT޼':Z]?X-)1I@b\bئVI|wh.`lV6U<YF 1{E1!FW+1-39Y^ jl}c.跘Z&;4ߐ֙ق>hRKJc!;c3&7\). K5m`>mAqE$\0(꘾]ϑG9涫!# awsADxRrtwj1U)楣 H^tX!^xA^p~#CʎMЃMˋ??dhΫ$.N F%nqZS G"c,vF _/BC~moFG&йvq(J gL/8(#h zr.Ouw=nQfB Al8(F}u;j WN*n6f'fނLzX7qeHhBr79?65mHLݖZt jqUʜkE".&")^Fc !;Ljq ‚=M8 {|Q; 4ܬF+MG _ 9@-zJ[Nj!a֮W0yvбp,&PUyS MMz㉚xh=z o7[kXp:-A| jׁpq |];Vc䘄۱pךL\(IM#n$ǘmE~?@v]٪Vyv%tW(+~*{O dWS#*>!;dRb]b̤1[*%`#rz2>xϘ _ 3* ΚoҜF8Kk(`zDQ |zn&{Ik1$×3Ӣd2 ^l3g3esp7n= N wvS}U tL҈?Twio5rtϵI H 1 If|ECf.أ7RVahS敠˻ [WU];""{=|3#9蝴ܦi7j vCPSZylZQkP֐>I%ܝShr @GPDJ⽠#N( Y=9ΌL-r, J3]c<4$8ȟ# bX{p[b e=k yu0GSJ:z3KTJ%L߁LR^CgVη6ަv=P5PLCujnNN0 Bϊ̛.ے asYN}ScPzҹa y, J>^"&MLXU}qğ\I0DY1ZdV,M,;ӫZ3XP%%s 68Fq(P߭%S$ Ȫq C_jcpmx2ѹ+  SD'+*@PFL?Por0"oυ4,mlr>(|Gqz7Ss[4`qBUZmE81!H4װ)ND[^q"|zj輁 s!\:J6ruN|om|J,y8W8J"p4Bl65xpeQEm6ۍl5>˟mZ0snQ*B{TOtA0L9([Ox4~jT:o?WWy|ň>kZ| Fg`e)>E\<zhC{7&5x?tӠsϲOä0BK&i`FAkgMlLZ_7W\;cGpB:Zī)|=ҫ1ʋS#F;h5/>ČǚMd(F3C=?FBUC NIҏ}PҶSaYC `-єXŠҍP5i5[6`ɴe̾E*N1ǔT~"^N}Nq]!c(tySkAԮbAqb9&F9d**=j15 nO~ќ WTl;:!%/*#yOktJYO 28+,Eҩxߺ'Qs.8˭CM5H`35s0i\ldJt͎oCYXJѭMPQ"lEGl,o0"˄+,^a[`ued-Є/3V#ۼ4Vwzr %¿x31عzюm>!rM^i^4kS58+c5%_ 18 ɥ|r9[#Ok#RY1V٢`tb_ftMb2iz8-F`<W{aZtJH#QUiMh!s K˂\ Ȋמ|<+4+m/8GtX 3#vSȘp4/#ɠ3'ǭ0]hswvtiOމh3̞CATiPPs+'72Mem44(2EDP]Rv [ CB(:cW&9M+ۨ]*_?=X2jmabdJ zs%%_^7`?N ʈ,9xE~ҊZųHS^ᅻIYGrXen%'yf%"$ H4_q(.<**G )1x#(-ү[I]K!sʑĐ*ɮlM5ݖ11ZClȅ5=`Kḷܱ<ŵ3:ndO\u=fUݶ?[F᪗F7ۇ~dc,H~d-f}Ft=# vK 54쪌>Nxj5 ~/ =]8/;%e+RkzECB!˄Hm=VO‚iA(2 C݇d b!4f&n%I[KX pȔmd'qA:۾Y?f/RX|(rG_Qc-$pI67 D{'sq^Oȏ(yR08Fu0hMm6 s,^( y>W2S`Iǽ<بo "iޘ: Jyk_,PknuX=ob~wlM"y{[_DQѬAe=xi vDP6]< Ys^v"} >cB 1NBd#Zʨ7(_B r W'#0`aA!qWK̐ puD ĎO,O \#!egƙgZA<}:{ &~}$(OhNSDmoY!S> );4K?HNW/P?]-mݚM VaafÕAH\Ʀj/]I4O6MTlNzT%<ػy7M:V4,UW80TsM,fE8ب& KY[OP!SrK4K*=^]\s,hfntlgwBҹ wV .tOLgf*(ʰJ{cG{4>` Xuh1.F,t璴>/2S6aͯV`=ZRqckX:CZcK\k>:",hO߷+4ЖXǩſ-bĄCᬄצ ]P+TӰPbxϋWS 9~Hŋ28EY>4hE=+^7y]Unm:>oeKY(:28ƙ8[_Q,ĩ^]R]jPq{|K;K I&bLƲ3\0KhW}DIO.mG\9@a1ۙnQ+Nyq!18ӻ j-~es!q'q 9m Y kQ#fՓ;wl$A%xPSdAbCz1mfl}>;Q" + ' ifaT?-% aó| 90֔_s-H#A׌v^)Z ,fnPZ|%MҎSZs].^]ᢼoJǪAdAe F2]{jea4L!z+5{[.;JE`8)iRa5on mn E,dGⷲ'?B. P5(1|;W-GXwSsrq$ߋ@(&ô Mug]H _ 3#ӊwt)މtғ&]N pYB2BjгrHH-{MH'*:y[1`p?D-㏇Kf=Gd>b =:2 q@m?a]iի%Eg#6 X@O&o^MנuIe\r9:hnz`z6)'g:x~]9S4(D2]1?cԙ%;FK_#|лrwBb>?}!iJOp-zn[2=\&_KN/Syq"DD޼+46y֕.S |+Ns<̻{ݙJiܸ,U5;56U[B-Hd($#xE73"%|I? >(#7uHj8$?H:Bxޓ%;%҈8駜 O) ۫tf :|B+e)w! q`2$F_x_ j.t4hbL/*VT"=Vu;= eM3k|-M?B44ʬedQ|`ݱ]2SSԧ:P;k4gͮhԘ] jTtOX(&<Ρo%S3 CIH" tTrSS ǃBB0IJ17|KN b=hw7  t7G`E8U$Nᬙ\֛uJ4m\8\9/0xvz l?۱%a'dqTOBR-2{i7t^A쨝cޟ{@+FĊ KG5RDb{uhJ?7TCGqB*Q:;&}L5RL2;| >/Rw;qIa<*XbVplE ݮ{s8Ϻ0}O^:̿-z]1q{1&:Wq{9hM~W6l86:yщ2!utG'=$YcU(YK\7ɳ3v>UN'a$ù5ڣ@H6[";c5L}?? oKT$ s>)x?d8UsFL~|Xd_|}Ei(ʤ:Gё? ^OD]2u}Gx`ni59ovB;h~/! q1:kIS|nהq"w:ABR Z_8jc7E xxa(E޿' lkza(T"# }u6XIw]% jaS⃅70j%9VuK/Uk7ptQYe)Ms\-r( 3%˗E kTX{ҹf/ uG:a2jAa~`kCumIH2KB6F"~aKM)gGI6;Nms]T9Iyss_|6ř\Nomj ;ah ?յ:l F~@"|3-sx5ۥt޶ 'o4`_ $kZxSCA@r?dps0GA `cUQ|De宺B06, vis^KP!p:DRo$1%޽Iş$ZB$ۋ^&FeLr"zf lrx?{G]J V-|`d-< -z B'l~mnQ4w2*Q; 5#QԆ#-,vEdP]S,3p?~8'Kbx:C?{ %b u6d!ue@hfUB4x,YS2IAHK11eC-g{xkJGtc?_?2`kjdEgmi6>#F]18;ِiݲ4% }&vxGygIMe ?Gk&r*FҨmnzvHn+!35mv㷾Rfas~T~VhJx;%dbFs$nfOmI# h"L̞UkD9upg l&{ K143Ѡ`ƬnC>Bktޭ" +91[x o(Dd?EWCc+u;?kG!۲f_VI}w=ibt^RYыAsL uB*z;F76IlRq uen%>Bi<,M#g)&oYfb]H$FB wN̬*.$BgLVmol]cg Ha"}·iҬql곴H Hhi>_0];9 Ar{v 9udF$Ep&kCy/pfk"zDꄇ8%guQY[2!r긭4.ϛܢOqI( }LM|9*CP}ی4vpY.*_l#;KdjE ^p?"J 8Uֻ+X 7x4Rٶ6{6N%[dto*=J9,Z&^=W|OeA`/a.蘈QNf7΂S>HwOcϷsۢ9Ӄ/߫Xj܅䉍?NPeӘ^JG 3 YX3BFz\VVR24+G˕[2lh5QD[-6"S|ĄTے\޸9ri@~\ɩ&# gHm_dB9WgkU0BulKy( 5h^w5D,,ۓʷS50 Jg:.ܼex$Tə]Z|7+[:fg?i?ĂaR& Lb) *GĪ_l]7Vz1'dk T(!6DW^4.Vy}SQ^ A'2ٯ {gP)U^7:́m0UUYkN~B:"{J:±4{ $_ֳVU9~0Zka[|uO ;^>pcP7/`P:Пb2K;Ք>z>P3Jm/UJAY;/l}\pb)O?FsSIxuY$wGXepRC M;rZz]׭W˯@BVOUOLV4>9-:IWbkar*W_aih1qpnpES)q7m|V8 B2v2`iLB aAG$i:o=t.WMq:3?"X C-]fH!.3_u ΍"`Y|A/RQ0=!`m-8>P|߬#|K";/goێ<{w-R) %ǣJԳՄ.ۿir ʇ. OIۆ,#)e'흦*[%4>Rf! PΠ^6 gQѨ- h?q¡:hR"DwFBU*]z (+ 'GKe-46&qؒRE PZ-a0jgYmakt#SG i  Kf| ּ+abk:RBF~Ꙓkt'rIF\J]_EVmX"ל2+GZJ0Ͽ t5k$[y x!׀ٖBOXT@`W]b(HoP-nґcy7J}w,wh)A"8/ I?3Hjr?Gt{U+4~Oe|{ EzQ<[7 Yj1 dJ_mN; )~JnǍ߸U"hEPG[<V,5aۙe*z4) k!F"9Kdi9R=p[^csD%ݔ%a'J<Є\»Q 6PGj* `6nr;~݁NX)q=L0jqd9&}gX)V˿ә ;_j~0J씷OU>m♮ږIEpGmp~z 7RA[n5P~= 2wns,aCJ1/Ϯ T9hp`/8~# H[cw9-!_#I>@Xt8ZL'6=?u&f^!*)7QEv0Dn".aƾN*K%8Y!1b%@؛cLՁOBk}  sECZMsMt)QF+ ٟz~0Hxp^|rU1(Ck.G,߯pV$ߧtI:-f™䁥;WrD F̂Kh!)Ri)Wu6s ;`U`LZHM{BM?~K{/I^S\\X͙XW`F R0څB4kZ(``=1ͷ2?hZБ 6D@6ݰz@GX ^cAP)MHMԬts(<6 OZ='?]WBx<عݿgzX0"OH1{Lဵ ݴD76͓VyAzLͬ*RrT!̘쯓l`EE.!3$gB^ԻLchy~wM*ra&D|2trY5'aXЃN,5iKLEMblɻ!кȠFuлvpp`h@@$r4>'E.}k"6zYU">72ͣJKWuqsq4Ng ƢW}dNԃH5b"QQx0Q!$}YZ(U㮸IZXY IJU2rӷ-Ѿt!2Wrguڊ@`%GCON|1^mSI!":*G 5zV/? G܆a6UecVʋ-8^Gi|{s J@ 5,tePƭ Z($%%č6 ea(OpAm,ûn/R%b-KC*r&eI4mgML)v(|oGjOĹ-}Q|t*ӭ+\}U:*O[42Lä)3 kS4%v ,4^[Gb*-WJ|^1qAw|M&cSՀ玌H9V_bnO=[&]Z*;|ƮjfY; 1ݧ55#si`+է() ?l?@̇)u?EܢjZCP}H) m*ZH<[C#H՟™ g%ǂpT+]WMS>]Xٳp+{9Db2CNj>v)p0'Hcq{Zt70GtϿzN uB7]ֺEKjp%Ƽ ʞLRoӘFk:jΔUͶj4 殸]  Qo-G9o*6?P*aDK@ePOrQO[}mMݰN4[3.t$E)[&%F=ސBKwBɐa :`k)8#[|93V́}mTewܷ?g\;y0V*2fh]2g&]yD?о"w!Xm^(~$0 ŶƬփʒqċ6žl@M%Jʆe"CYM 8BŢhJWY. n;ѭpvh^=PYftd=eFuTmDm3A=:E5ǩIcI;p rΏ]Xw\|T8E/~?\j;!2'NWwyP *ouD픤j2t!nPZJ{1u?rHJ^y)UKZS+22pV$",?~`2^JkD#-F3]ga0QA ^R"ՄN_ |>x pdybӜҞ"HՍbcKA/$z8Ɛ\ϟ1OspaFPܹTCK?/tz7şW2u/n} oxzjeE!JT QG?(A] G|v!msw'm!ֻܻ'gRP5BO,z8ˏˍ6fkkRk*\b@돠5UӖ"~숕xH 4"4齛5,29Ncѐ 9JG j9ixł}Mkk `ݣL*n#ԩy9wXR6ӕJN3Y^қ.]"+U3 8YU^}`~1S  /oizyTlg 's_DKn~R}1G RMI|,6'x(5F ]snVIYUndbd)=AQNeuZl&*TrL3+83]';, q[N /+ԟU+RiD;xO.ErIsqYp@+%^'>ij@@)qG.a}_MWx,G$\RD\=g: _|mcsPYx3%#Ե .HS1T g. Vz.l,:*)I~]3&8~3AtN~q' ssyʛ}o O)g`@sEy+˜9#"_F&Zqw"@cK2@& :NmRly',KSFv!, }vJtTBZ)\ʰd`BJ*qj#x«9$adl&v$Snsv@l{c;/,++5 (nRz7bq7qHqV!2q-(0~'`77h^+X*/PD"wGLZ;K0@I$W.Թγs,-YmT"*=,_囘p A ,]~n`ET}פֿ%c.%׶]V_jfx\qQ j$2MT0=OM@ 3b~F|$ uhytƒe{^Y<%, IfXy6Z6>.,}YщsV\y6~N):CW:Kv0#kZ+جNKaz;ljV?%d:_]Ng:;;`)KQu_gH̳E4`]0#/#C0My 3/+-<'dSMZz.I(n#N;2*$nXoNBKZ{Pp~- Vut߼h X]s(+4۪ _53M$~v+_;ڃ1WtLc&*pB >QY줄pd2*Zukt5oyCEiQYE|F1xpJ~ ctLgWIypVeCӛZ9qm]2S} yMF4ou)3xx]ȀxcΧCZ`x˦hxBӷ T~^ 4;@ (jE2KP 3بXh. j. *㞱VECfH<(*0hjϭ xKmAxَY?8xRXzmݥϞ$ĎK'aj'0;q!%'͆%'*l"ڶ0e"<0BS&- H@ ?ZZ p C|&s9KiWm{evR΁w30U]zGxW!aDָ/2STґzۊxV,n;Bֻ:H; )7E k´R^"*,]=廱֢bo>jiso`cN'ITj+C%0S+QN: Yʉ~p4сp,/+˔'a֚;'dPiv-nyyaB}UPSRG/:x=so}?b6$r)֌@ >ȑ`⼟FXݬx|rp.NMHAeE o<)Ou0J^<;O?pqmQczu؈kP3[@q?b3fLpPL񾐦ף% d.;/ B}l3ao."fsEwC)sOvp:y0f;<om`VamWC`p=t(vX6ߗ7=yf1"W+ՖгG%hvLQ)joAhXN1B TuE0;Os=ېyuqs؀,|97yN @j;q@jG*exBbmɎ 9#+1yW2()Kʪ\믯Fm(;Wi)(%݈PFO)ZvENesN2ޝ^aM @A( NӧSk#HǞD|iV0nuThJ%bP>yFb78|wGW 1[`d}O:)gä5> -F:# .,a71xS2_CZMUiOF#ZoZ7ͷ4DAFtΔ`cfh=*Rh٣R%[8q <߳zEP.yR3fl:W* QHD:SjၽܧP+2}2|Rzhu: Sٗ1:-w";gc>¥{;BJ4whcUIK>7f [Hf拸᪋'9Mիy' C^<2 )M)-ZEg>*Pi[`Q r1 La/SrFCumؒ9OkfQ3YAj"'/3쓄iHq?WQY6 7m8$g ؃'Λ1Qsw0f[} i:תEnȢ'@ .8TŞ|&=,KTG$2ElL{bV+p4B>nsI{ǃ+~9|1DTm3FmTñZcT!x~X RGEߵU"fD栥s[ l2` ~4* _u?71࿳R;YYpLYHL[= ^b*)}7szG)@79 w6/!-FXtʥZ_ZJdh,d[8{1f軭_Ut!o:Mx^ar2 06_Dό CZA؉ 1&4'!\<Dc&`BA3+ L`-ud#8R!tk@2k z$o0Z7eۭ bWa=[3,kt( (]@xS'|D0-σk IFgq~*\nU;A.GZ!}t.`i`PMӑ*W!`0<{IAB=~T@{o;j5N.BP#]o_-/4Df*VW7۲+{E #8N"uB8؎L~OoknG5ȗ,V΢ߡ;ʋfKweloL'?n\S&ٝ=BsIo8Oi1>epcK(H+E^}JZ`&/nn1hGԡu"iPQ]JQI>RhrFOq2c^,] M2hk‘Uw*>@od%w1:2cP}Z&hEA7PL#迚N} .ft"#PzsE-#5x-a͇Wr5C4)/e?RQ2hT2] `h y k/G8A,NY]_ lՍAqһ=F2:u,JX 3.fλ! ` :-*_+z!$zF V#vuLXޮHeI -[_KgEdZ]U?BXXW5^"xaeOLG.XJQ?yIկO zBi'{w ֧}+`֓01PF)8@|ɷ.E?3j 29 [fЖ@l2 #t#!@7DNl79;Pg|QfĈ]Jv_\7*w80TDRхFqV-A.Q􇡸?$o%*|༮p9 1?bUlR8 FT5  TW=AmbNvJV:䞈qtp=5NjZ49MpbW{;Ӈαlw&`o((4Dƙ,߹S.iOt|FKak=@DbHy@A4m`3f\ɫjScV/t }>ࡒxr 5H[6q0&r3'ڴÒ(3ti:dٓk8^p@"O91Xez3r{Ffd,åՅmO^z˻PPV?@2_g&.o"_G0߬-_P5q$l%<* 8g8zF|69?n,0"y<QN1<2z^.Qyk4z#ꍃY=jq7Y˙0la 3Ix3OGCsĄPP- y %E]fEZ&GK\r}\'a0ik3MAҥKŰcA:t' * hmpF": I5Y=A:?P X蟺_h0Z3(f7h}U)WD=14ˮ=M Į*:Yퟜ,v_z9 $p~/&D]zŏڷ#5 ;+P<%os[A*~ݧARte"q}RQ dQa#( IX)`jEfY܄TE+ l1GB,Z6rTuK$ᮖ5J]z]@z@O1*OqysQ}˯sUXŮ0+W3SBh{ŗ2)Y$1T.h%\F:D>|R\PES)ՂD6(RzK8մ[iW{hZ'&蕻j-6a/y.Ba8js bz/A<(yYveYQg;iQm e}yQh)j(6MQI?KB ?r~D)8GV CX~08_C!;?GvȲ#NED|aǝHeϋ-6yeoX {92~Zk<-H7ΞďLzW(q1 H~Bh?Ym9[G5bW E}MԔb8y1d/Y޶rD lomk7|y]'B:Ag#yOi]GU !Ӭ4~8fEGxbE<%[U*rLX%ڨEa۾]S{8YjױHyXE;ɢx v5Cd,pbv*b\ހ[~XL$uY)!M7LRZH?&[E3/kXg)pYGè1L6l [|y6WuÈ+m+tgN P=АpAS`3h Z dN1ĞN~q?uq@4|1LJS{#4Bq[AZZMA%%ķ8Vu՘8@Фvut.>o':hW 01!Ļei^M ×;Kw_ҪS1TNI&]m6&l%jA-EMeۧ3>FtdߕAQ#y{E"1=kz^S:(;_HWͲ|@#4ks `<yƢVQ>uꕙhE5T3!x2" MLu]ʸ{&jXJew?D6 wy~ug^E;zpuW0Ph2]6nOPUx G'] , ޕE\8XrsR^Raȓ4.tD7+yD1]0$+Ք:-PyJzZWK88~9@3 3?"cw/r(t'Y [fd[R;+d^+IiN![oUP2N6j߃YC#tWk5e8ybO}3$b8^@r(CvXh냌|'mTh ݧh/UId20"kԼ:ťc$QPC`[77D l4h(_'ȪN!9l"PN3.y`jNǮ/DJ";dr0Frz'- ]C(Gz Jl^ٯHbf^H8ԇ?pm=XUW81=u' R`GA^)?岿hix,sGqøZX n4՟zrVo|pXqFuv:fİ=aO{F++|T;U% (FG6U6(A TzmzG]+,*Gio"ҧP)Lƨk*nHZ;/7eԾmIÑGKGRupT6yz&W.QUz0JU}uRYZ?cKKd R8?kܾNJe kl&ΧnH>~RDf|J?'z]y'{.ԽO> 3OzrZɸ99!1?:  /{C&"ڰ-ĕ>L}5iA W N)m-2\cv-TJ4O]ӷXi'۽$ ݍz].kde.5~f;QðX9Q sUxۀuͽV0*OBj{6~*/-?{S+KXY;؛@Iɵ#.:@= 1ٸԝ 4E1]4Uѵgɗ,tH܁/L[&S]i9TԖy$8lvH Qa|s*vONg:'"(譧R&3 jKc/?sT}ٶs z}_@z+3S)5`b5O;Z]Rg]zzi>0lWa F[V{' dAљ*e(5UEH.ڮ,$7+ϊٶbQо~Rb)q`1,5oߙ,_R~7L^1䐹'5_f75? Ij\=ڍ3 GlWG4<̈/fu0;m!=m`-1;VgH^hdrwAj_!bT|y5]:|,ύj3Q +3?8*<%gڻ<ſdf<!w}B'0 W䮮߰VwTII^e4{ 3VY/!h~{A¬M\=wSk;SGyxbͭ>k g^cy%_^k`ޢkU; SEY`PM2zm-JxXeAJhfHLh YG>kz =3:Hh'޷f 9eKL+\cw .9F*ճfhUJ-ª^X&G{8AiOɬ$UX Pl9ymt c8-B%H ?ܸXwMs '<ʵGPJ. u7cmQZi%{C\V+ 86=8tI,zbӹL7)rS%%CUC]UիOp[@ծ[o h)~B/28Ф!!ڭ>—::KG|p*WfDAC'?r'=[wnUEH/1H.Fz<61N=Idb-SRxv,@EI`dVʩq@1^>9Z*^ʑ!՘ L9#ƈ@d#MA"`*L%-~ BծmFTL|<0æw+>T8:3E> ˆ+Nvngs*Po%0#5T ӪC٧=b6o[*R+ý 'v{>.P|Fʬ\JlU$.dBzznoA:! 0c*en }(z(_3)w=Gar5{!w :U(ÊιkPkqOY*WXO 58q7>x|suԀJbpԳE+n6?Я߳C!ADbY_sb.#Om'&mG{$KN/*qCYI/;@4w|@:C&7z?CqI'sbBJiivC>64|q  Qj%O*xm͒f E;N1|3Pyuh122-@=XxD'Z`|0ǒ}Rڹ}> !mY(#4lX+$vo apSvy:H@c7;"g4 цL/6Q3`~{`&"jӸ4VlmNiqUX+|=A4{~ 3YJ.8(֙Q59MMGteӪ_$jG|$Qx͸qFXdł*0ͭ/y 1e7=Ax]V>Dz-RZ݃k'9jzPbMg"i:Kq.Fԯv~FΈ{M+&IHޅR*aŋRmM@)66])RVEo1PbPi0"1nu^=͐oaNF>ŕ:A #@ #se}-nk֩鼸 .)Nʽ7:vR@1rL/HrWGjG6JUѿ'>ЯN%۟j!G8%x# 3v wHs5u6>_#o25sG=IζW6nɃ-y0i5H,[W1mi~*eqN9dQsˋ^!#\`{$B7l^5Maib o΅/^s=^$)-0QC н qiKe|\'PZQ tjY%"t*xTGd)l)ڞve\UMxvh+&~374ڵ[sTScg̏pBD"^n-[W9 Ìy_ɷ{ᖂ}IϿ*Lg7N'7Lp.Vi hvFY==GTMPm 1bWUY:]_ٸr&<Ґ>.w*\xNNUuaZäjRm`tե5կ. ee&rdħ {C/+@\!<2x ZaܒQUz-Lm1Tↈ[ 5NA%+x5294pM =KEG.㍹ / m _VN蚋\Y B%Nt.ʑVW& 9R9c *ڔjU=1O_`>U(@epjj+(5G ^U [V*;?iqQٞM^n//&"˜j.2dE:LҗX%(p }Vɠ+VbӬ`V> Yѭ￧EЩqDt N hƒ5ܿ/l鍵hR(D[bSh4p&,OJ79xY^3Wq5+Apl(/qX/ap*M|"C4\pd<_,O@8s<ů[ma |泀}P$t skcR+W_l+Jٷc°'Xޔ`Aij VP05m$Up_ژ 6cen.CYf-v;Fyv}}LF> ImuO-ӛR XkpV 71-@Bxm @~O&[tԐ^1Vуzu(]8^ 0:Tv?e ZmD&ַw;r t2oo a;Lcڨ`۷1T6岌UJi3+s#?ϖ7C{zE)u1Ms AۡǙ]\ςH;͛vJS/zN*+‡8N _s>?J1i%ĸa9}Y"̡I+]9E';PYgEVj(tHHz/->S1WaSS" P[c"J.ntApu-ݗפ|F5rkr:BB,?>@,7̪9^ .rjAEoa26{6ꆐ5k3Փ*rF=r>{umw[b>YE]5Kԓ 5Mq@ؠq2>ɳY ~3J=^ue; g՘dxߚ8&) t2͙)RJGK$~i΄q5@Pv$QL޸+zAT&a&Uvy`#H[FPM/SK0?a!lNey2oAgd$k))VGG1s+.V8jœ1Tw#0(?jQe|gXE9A8ʜ_U&P{X3p3c]<e lIl)E);Vx2Z;04HڽĜ?!\sQP{RS&N >zR88̊;KB]cSCwx/Ax$^6匄: .gzb. _pELx`=W(.Ï|GQβj7S9TN~ix!xzWBa2awB+.0ruRR8RQ}m-i~k`p_xk1|Ǫ Q>_jL6@37 CpzGFbGZ :QN8{ajb#e3N}h!yjc5CXmKha&1%zpr>,3ޱmrYebdm<H#QҖ j΃D-JRmܜnwujsd!;r3M~f!7k`18G#)"exuG*罻{~ FmÂa=qYza]" 8, ɬ]DwJ 9P(A3q&c(s)/jd+S# o_b:oD5ͿMLS$  `'UgS߫∯ Ca.S/!&L,l= Ԓe*=ne#b'̒&,̇nϠP@!íc$DwZlR&uz 0{|4UyDs xA`:f<]_vSxV%4悴/lb2 1 2`Gbe$2&tyq#) >Ӊă0"1V.FO=|k7'~Ӱ#;B z /BE^Q|IHE=5T цkVKLkA8@TF?fUнwq$%箺ӏH X/J0̇&am44LV 1(-:kwX#~oBCmO38ml{ȵPz8k1jK3J5]@5Y[x$EKf]f0 Ҹ[\kN[>]7"-n/Rh.ݠVKNZ|.j|}_IAvX[$e!Fq\ o]oe7i"gUai2Tْs{1yS rt_tQ#3T)v= O<\LŶj!'1kzS΀sOUT˥&ӂ*?8cQ񳰟H_m$-[<9 2g!#8L87JEI`RQf'# 5núNݭbMwjy]R@Bӿm:kCEϬb1T[ ݬࡉzI+f_wqyjpJáB.OD:ͩ2|P%oCE,J 7oPuU|OljٴDEϮZf5Wy=?"D`῔H &,{?ܼE_/E#I?<>ঌU`E~)`IJD)PB溬3h˸7B͍h0{E.~[ L@5 D6F+퓉au>OO .42 h,~spvDO.w,I*XY}4d669"]= `$IF#Uc#fs-q. "9TXY8Q#ΞL x?p }pGD U$Gtr͆9nnտQg&J:3$V̽[#Mޜ&V (7+6G~^W@xNw,1 Q'EGm) mI,um鯹%^8?h/ we2qmE}4wJ]`+LYvq}'yd$.vS4Kd皪 /Zpv?Q.#zua#!稳qZ5Gfu hFY bYktOåƋ߁mZ.u~w[LK=}+fP)|X|mk1u#1t?[`;qVSR2F5k6#4l M ?Ɉ]Cc/H0A}!}%cճ''.!];/z[.ʝ7mi5YXG:W)Y@ FZ),(L][wi`G>a0{iWYp5 ? TyUUSG?siL3k $c_ =46S^5}`+M~7=/Ue-b^{굄@m9vkdCU7ޣb'|a&1^ FIx~k1څ 31%<ܫžhZj/]4\5(:zD;*ZĝQbt9` a/M d D:YKNg_G^kxU΅p{F"!%ڸMAT h41ce_ƫ _?ܽ`Y3k} K_ %}!FJ r}&,vu'$@ʤ"'7$dvSހ)Jt. g4x}f#b@GBjD"iώ {䥱r&@Xu3&\c`٣69x/cbY Vʺdј=5&*/Dxi*DeUkGcbז6őFFS5)WUU2׊%їjm^@YI|{AQ<$>OAC 0ׯUdpȵ p#'A]})?څo98@8zy %Y7/\e^L[0#sH<BlnjfVA,kmerHTF%3>lXr,A+ؗ6Mz6S+Sls7WܼJz/{/S8ZNuި{E(m]\<Ϫm1$4Lw;DRP,$٩e_ik5yAZec5 3ipMqt׷cJV#U[e.d:ݯ E;< j}B" Gj[|}YQ$3@PG:Spl;ߟq(}4(K2s@l+ JZ7[w7Bs yqz~r#Zon!@Ӧwާv(2܆u-t?_L+`GoGW]R`1 J ȧk ģ)SdTQϾUY^!TuT#UOQp?o r'6S-g8U+_4y렡45|/8MY-J uw¸iL=ʷMZ9Y.+WOP - GQiA S DwR?U鯾Q20!K_#&9|m,+ʹΞp5L.27>_d~;w{wGIƜ#y_ _J4y%1iip@M׮ޱ%p7<R`tsM8Xxm]?S=,*@@z-߉,[ dYo ЮNiVqNXvX7RToSա|ENt/Wt9W\ XܗSOpř:ORy[[ &3U+bv:D/*"< g3*3<`#L?"*~y礘b8D4T.u"7U ! 3N.$bDQmQFqJvK$+!r>&zLnٟdN:X9"$`$Eifx\t" uʒʸTt,Ƴ,teCf] ghOFiB[QoQ+9x(o ;,ftM+Cy-/>4Q _:l3uy5yS zAS" F l%}Eɽ4rBeDLJN*Csr.ڪӽxKa|XI_,@-w*9z枯I%ڴWhaa(;</@K@!Zb-hmgvM4KE?M^q Xȁ vQ$svhhB-5UhLe:뇰lꖻ,Be2!R)/.^h-;}Y OeS1ajEVuN9!<͑ߧI|o%~(p rZwgf'UN~aCD,klDڵ\}Igvv+ }2{'`ơV~Zܲ @W :f'2_pu.MN\dQ^E]ޫhhәo5Wm[E,5$hɨ@AHZә ǒ/`DeSTצ &c®j38,fWF~>dzs:`jLi ?H*#vGMyx*qTewA5;=)/=lIM43K2/oմvߛ?ʂ\"V'rE82ٟ34S;cuv-tq8pZ(!N 68ŖG }T3rz:VZRsbv2,ĩ[2">CG =o0<T RsvvDW{㠯$X%Cx` h([.?*eu`m9,bH-kvýf| Yq"_CE ug+̅>>pK-CtSZC-Tvf\ȦF5 ?3iO.U8{Pi8nbN`}qٻ0<ؙͶ4;)O' ύuIbc}?b> PXw+?LjŢheeY~CPۧSb;Cc7̹vulN_%WҖfuNc'k\-99UlB'~yap6zTeb'v؝8ۿ K3wO\twQ{9Ct Gbٽ6zx)nO.ŨaVN7dc8UNj WǦ޺w;m[\M_V =iي 4do v4<+ d?5RAd&6IxZY7SGyDBʷN#&(9s ^M4j.v@Yp+_ay520t@7pErZEmΣ`ضQf5!78x$Q\pWW]b S4r\X<d >MP%CZkyce؎ֈڐ9Y\ˢ]䴘֑l ~C\2S )X~[GS \CuB{-y1Oj&h$M1ӦCZ3VGirGA5k2&V Fz>U`RodQgĦ‚/ez:Y?gb~k@W+YŊIvl˜+7Qt\a읛H|I=YZg3"?-yb9 W*ѥpٹP@QL*>^@S.Sxϭ2x?hl΃L~&WZD0@;QIY{>r4ȴ9K2$K k)[E dZ(Û*K~Y`*]9x0mg u^>%ZW 1JNRqNlOˆ0r92ۨ3+Na{ǦcZ|&"et i 8&z/>-_ؽf ޲m.-?u)mquCHZ,I+Z SA!؝Lg|_͐ݺVv,Eݏs$RMae :ە~e%Db2($ E|a#[nVZ~d3.b~^(Q~/4pjZŏzE0j貖Z:q-'l}gc c2EDh`.evccIH7=)yIv҆@q Ne 0j0ب`a^r?*#`/O-f2&,mR.`C {Ϸ˨+4Ġ@lu'=[o5@qC.U% ~VD0ùj:Wwq x9#oĉrkye$*{K|y sQRLbP=?JO;t2*vAr톳zZ"l{ׄι܆Ֆ{G.%{!!}[ PU14 3(!dѽD!d IOBaTbg4񴠙HXpYk"x(Mk]+4| T֕K- JZ±Gy1'ŴP%Pp R#꾱 ٔڠ.&ȒꟁL`#0od}C~g=0FdHh{j0bC,F.̦e/hEIF{6HkoU0kk3%T^˴)R߂YeXk. ߼;m͊FP96no@"K39Ӊ5<l}]OL[J9 M'PUy<aP.d<,$IlO;Glkz 3{Ye-,<#7@G`Um:zKdsq֫D 7I1ϕq4òTfVmw؂KT$H#G7]TMW1Toh3>°JN2c=^ 0+TMƌ!zNR&~+S!dc*Ɗ`h<+4xrY _ջ8㿍^\mGmvFxih1yYm!cb(St' NQgfy[UtrjSMӓ&7e^ \z^DI4qv*jOyY>T,iӇVqFKf)|awǰx熜-t&$7Oi8w2VCfv0WKJqCc(|W܁_?tss#v߿) sCd$cryڥ1 ""uͥu BE$lx|OU3͏ɭPzψ%P6yek}6/z ; ͧ` .MvP;y. g"2&;wQ'X-_1lo=Wr :aͤG ]Y2OrEV3c6V tR [Sľf5za8Y99 yXF M`)(+0ǭfU{ZvBMo.t-pX}ZC~b{g-ƛIKHP*xoK'mևCϡZذ$:ZD熇I)'|.w<g$ZdOB\~?[ 7ƞKoJLP Q~c(1Ȩ(ogfTC6Sb&w)606a,g,\8 6ڴ3hU,i7K814=$,TF,(8dpߙ{|~7Sַ72IF%ʔTt!]83f jTa"B4ЖD[_$/Iv~2~dS,c{/O]Uny <SVmrQj]{3p%VlFDNr1~6$(xl?At#u2+a>F5D(؛^T1S{!JB.v$-e:UQXG(䧵\f)]%J6jN\y4ڳoPwĀzřqt:)re&rA- YiRZAMu爦S NEÉ\Ivۤll !S 0M.L ٣)FlЙB)A8KA * 76j1yRO0Wd-3H1r]9M@NPiyN5zZƿexHӺ~@")3L  xA_}Í /F7ssAdåӳEY"¤71p&5*(m˓ajba-`frg~I6`SV||tJqZ:\S޶M_<#w"V3cӚ_ #(>ZycoIsF (Hp ػ,l H C^<֏>k l6.UY™n? )QQMgيTz2 [Epu|/9 ztLę_w=R7k/Z/sD !a@#ᯜٌu/(^gdYTJ셑(Te''ashc`up;J$V‡z^Tn7 913,CM!3=0T5-ǭ_.5r=Xp bdrm&cM+ oKa=BDeX;^+Ӣ{gGhtY h;:N]CY2x-<=o9S}f(Ј|x (ٵz;?R߮x4(C1W? PJ^#L"ضd!rcA_E~|L`i,9#(i敓'OoS؉M$@. 4֐EE𫑃$ ^)-܀kB:1cd\d, s۟Cm ^deccčB'S ځ:w+fْ̯1>pUif kHxWmĞ nF 6f}WDKxC &,Rc LlhP;ƋcwpgbSRZ.a[7 8"Z}uUn ؞4!Ӄ)~ >?k쟇>+- L fxfci*1$?6HK5QXD0Hd]k8gO'X.e R=3:;YHDYL(|8#ǠW^P@Ԓ9$sJz eyu"{@*h_9Jm'vPҋLJ=k$/JBOL>: e6"PڶB; ?+v7T1dwfZ6ŪfOE[?5z _|Kժs۸UII tx0sLcK0d_/O!tHQ0 Egv> [.9 2Fcka-P⅊}hxmj jQk>rd}AeN 8!L0FLqVk9 t zctDkxBm PİV.{Xvbʥï7',\KyJ/csĴEZJcÕ{l٣dL5a e'.Ɠ SN$}w]N!enB!CY u$n6RK3ױZV_N$߬.:_P0b o#v7S + 5w,ӌwc/RVR@Y}YC M9lC^) B6EhrE&3J?l:kjш'&doB0FaPx Ͱ͛O [TT<*mAa+[n-i,hX܍+˺M.t#m>gD8Z=!<=J]ܪ[3/bRBUi5l 4 1{_z[N3tx*Ox0lΏXY#nPފ=vr][؇%6K&o7oS&&QZ.}iw{N4:9߫k۰hFDKXIr#V }aTS\ȒENM"BM{d@sx)Qy7''W ILp~~jDz)"?,h`Fm@ʛN9g 䌪 ~eNʅu ]a;g; VM Ь8&'PP#'rkq9(ES1*^AVk5iپ9'DV!j`:V[=q.޽ ηn6QpL6-K)Vl=F. Lz"|Kw*,k020Xթׄ; U5#" ;ݑ+g' 4k%љ՜u*rt]J%˘O.4óQW 0>[sű;3w"iEl-{ _OA]U%Uèp8dGdBs,_ ~ՠ_Dd06ɡy)EZn+V:7ԅ}]9-m侫7R~T\=oSuVnh.i@ѭl*3TE6AP ~5<;j&?M.y<^%(t*'s\sho :r 1+YxAH f p"v-6zd@jEQtfL3OVGy*wjS^a 9LJiQS/N6mJbGO .[yc[OER%B573vawa0FQ׈ΟTӱ)*l @ 1-+u5xi?BOz-FdoY UG $RR"ggW&?xM$񗭌~!S܏Pïi݈ |;(rIRYUGh&zW Ke$s݊{o2*M6LHf>k8)PzέŊ(Z^wVL22IjȈ>9kl܅!cvΦ 9k¢@!$̈́5 kංqCT.wK"6ΘyRmni1l t C?b!JRDV$=z݀ۯ6N?{zDw.3,xXHt$jGmHȫtUg4 A1jEK3rw#[A̓l|6)ȏ@-S0O:1T;,/2w>X ;B 46͉;ݧ7j ;+$Dgj P PVxܕ'ۦ22}T6WU5H6?!@hmF\v4?~e:a8Ppǃ!t-X:ЦG~[K-& dj._q7P܎*߂zJ,ΖO5Uٽ'[mܜ,RJq%?kz0}o_>M_ɧ.--s~o]Ξ(*fqXqQ6dBg|i6ʙDQr'*"xT- 5Q :s34ȧ=LH"bKrBC:3; ZPy$KCϑb]F=6~eja *3^_RsLS}J4hu9`* D0waᰂ5gp v4GY'j#D7JcRP7KYg"w*0<[?#M9'3 (Y{ܼ߻BP^2`Aĝ~rf*(;.b"N+rL&¶9rjly03*χFF3}V(1. {P:"u~h~Y4$~9`ϊ8= }owt1~H%C bݥ`~߶KT0W/#E 1 Fhr^wX9Iv=~Zp ~zpLu8ZMnst<+*! ZGbA|u6Jʈl7-P4,WA{]H!9uc?\JO]\qN1 Gȇ䶳y[vCRWxʏ0LJ,*XٷE^؉ fŸE Y>cf4 >\i8$Ftm%* wrscMv{Lo-QHAOqG1Wa#Jt܄Q Pp?Tg@ '3ߧ Q/'$%Mbzk+Iqt8 3'iLYf}0 QH7qHfVF:񮉘scN!ϏI9 3Y =3O*e:,|ŜU`hgqD4gHoAHgu ]&xH&TIevQDtPk[Pt,EHNl*anUd,gs5ev iD{>'x=[7CO;̍Z:c`c%u7I#{0[pAE5 NAh@fY΅Q0PX=G0bs'/Urd~jߑģ - y#{dE)Nu3h')XtWpN"@8 FL:#w~!U FSt!f|177[ Kp+Ĵ if^ຍB_RXK C0zgp{]q#mk=ken*<4nA+^cs!?O㔓kVfM~~dAvoc >!b.LTnfK0C2G!.w Q}δp;%8#j[ke꫊=;])#4R{"ku,m6 ]mZpbYK/<Zv@0/'Yj-++(wBNGjmXaxٮuXen'%RC=ix SaiC) ڲWE߶4/ܻtd_,ZFq'!Oqpx۬M>F ,o~YԐ2fƎN 6xQ bx^Qm! %Cb@uOFeD>vfGGe:axϪEXg.Ϗ:6. kE2_,W::OyXц0pEm+pA`ih*q\?bjO|Is|F1M4@Oy*+$$4ۛ=Bwxvh3ړiO1q) +gX փU4d^_ʩK~t!33l94 \ŅWf[qg n<~)M0~CP#"":+m?*êGV-j8)[ Gk%Ue̒iwROʝ@2΁ԋ%M 1"/29tC\5y'RdI7[T9bަ"G[``!Gu6fcd$  IJ nzHT>G;@':Sw\*IC>V"-@ t7QHUwNi>Uo/MA3 4%=}% PlCnͧ7bB Q.28]kKa92f|xE  1ܦC:\Yn9鏨*KsgqXVA1pC\'N*!]o8 xQF&$$ƪ%c!n&Ӈ|$뻂񍔮rY~HVy:AE?cm̋.; &i }`Pu8JGPuNR+~)Y51%q(K9/nˎcvl`O r?@)zM1PmCF`#:Sb'rZ'udOP] ;݉1sgl kž {Yαqy$BAt1E`{og.E .>Jb, I,oc%P'{_XY +b<=phKe: 2yU?\=ue'+uNB9-rfF ˩gN6$ގ ŷ'xJSk^_X I 7)B4aE0 [g +ax񉃥XU%KUX|v+bFQHLmȅTd% ɑߩZ(!eJW[ToljD י?sHWCL&`}Va_l0^MXFg>LѭPVʈ?P>aoI!BzȄ=Gf^əh.iyѼe޻v',T[ڣ・ZٜVB?A z.O-x`}݆yϪ ^Y*1*'`GH QɆUsa<;M@(DzS ]ȦW+\n2J TLLm٥jy.?dsv*=!׶PpBְnrf?@ʊ!j̨Y˶\r(|#F%8I!b!붩M1HjҾaaiY|{)kDyMU,σ2q/佸nq3MTШLlwQ{/U I?&!>#푕N|tw3ل\x#NYx) )ùe0Pݗ ER+8(2s;qbLKyio%\9_mY {g͡}]#/VVxV%Rvbuhvv2l!MaI/a-ܸ^ڇQ#| ԋ?4Bc~Ű-ܢv 4@.b8Bd!ÐAG%,y{tlILBaKb/߰iL>bBzM*-p,[b+w$ 3@/Vv-ώ8 LbGi/SH Pd4l$PKZ͂v˾ b"s,࿶5;car" :B)!O!H =7dYOc;B"x"Se(A?`N(Z awI$U-=57X>̺nY= EbA>D17`^$ad("qVL,^{ek\Q.g`0*Ul,wtas6T|צ~z)峀UbzӬ̋:t$cudrUPa׹yoknbXdf$-#wD"ML>~2jN.ܯ%L7p+ |B-j-Y*1 y4.m?(Y7-WUE*ӾD6/ߺZ)TpL56\i]b?%C׆5K*+fhzM]h+ XaNAuR.?@0xS,c\мiJxv\Rfq.[×09P%۵!z:Tm]RHLvˌtEfk7wnl iVB/B41y;%C\w/@ {y٦5FébkXLnrjsy9A vO!jB~ڇa`ѡ%z"xW G/}bTheh5ԫ (GTNK=fm(199viFNкX@9`$Ҭ?p% 4s&l\ [G꺣,F&5[s4di+T*fR9! ,@)'#08L^zrJK2e#됶kΪ,Aъ<͚VgEt{cֵٳT###+o oB姜PmP=E? žL_&i{71`ϫ0e#:ዐĚ#ףCI`P)D(PHa{?C t!= ޽=O\1E 2<,`x *h$ u5"HFfc+ZN%]k sV9,>J%afʮXw]bB̧>>Jb5_&j#R`e. c,2"èJk{T.!Bj+ V~ %]U!/[39-4&U]dp8QN5~hV8hiQOvXƬ0ՠQhଙ{w.| ӄ]%):Cږ҄/ {,%JQ20d?,MA;UjZ'?2 *RJ~HGMG/ y7VgBhܺ#ԧjOĞxBs 9b%U#@лGSԻU!9*s%2f*n׉Aom6Yp ^`bdAJ.AWaЎaAoّuixl0?-VT%qvTNŷ5ZG {XfAz,R_z^54qLԟ[^И{ L'xiYBKe͑'8TrMBtq=3M) ߺ$7T&A ^;4 ص UvSl TrR:R07^ "^1 ~#PD_I=Їq!ti;$G=K#}`T9b v-#$o,ci,92~s0xm.eNiP%(b&+l]Rvi@q.~p9c'/xP3 @V!CJnԄLY1- (1(phbc>_Ov!ka!Ocĩ%xueA`x~|WM1> bFc>qdGHRz08z2yIBsh^'sCGH錕e)hB19kL`*Ock"_{ WcC5$]#.~׿ ޚb~~UOsl*_H0'JKiN+vnn8pg}5q8:*ga5'*[\ycDA*Gix|*J3e6zT/:>Ky;M/=PvWε&|n `'włjطx0^oG?|3)n=CMzQ;*v~[ɥ\-T$W5N`71ml NB rAb\45Jf8nKz[8I(ܰnD ~;]7XX|-U ϫ2j`fF &B{P#ޣp:Y‚`\1^ .X5ߨF@[SDܜOc{C9~^:an*ugp d˃]?GWPﱪ,Ž*uWuH1RA?.k.1-mR@K MJǷR9_09%>MѹG!A"o|1 i{> }3&t|5G =,n>>ofiUohpZpZi VsBAgo'rrgo#'q68Rnҝ i9RmG#5gb!4xIYflMB?fOjsy_Y;u׵~H0_G> .OhtW6]X&"NG9T]Y⣲jPĎ,HaaH.ĜyHu2a!D#GrLpLừ؃A$G|P28wmgy;_D )D & m2ۣX1\v/u=Kƛ1Ҡ<~ڧ:1obDKCf9Bfm~gٸ1VEvC 6h*uioVN]'e&!6S\]_{J87PZ|JHwׇ|~F'n`xQIgӨe2w.OP8ĮNs6JH8!aUtiMyAM\A {n^ ݙa}/*D>p-(6%=f#:.hw!w}IZqٕhs+Ԟ! ax7T+陕re{7"hΔQTG;q0a7up*.=oY;;5)mT8y*Ca` >*5%˅Ln\+T"7Y  4vҲJgo ˲G̝5Փmv Y]D*8H_1k.qQ׵~2Ro8ܙ %vMŦ:|=#nvf-J?N7UdiqAJij9ь9*nz4X2$ZN~xX-JS=6. l$9)4`hsW4 w~2+d5蘔#q@9%O$>&:"B7}AⷐN૜K.¾\gm!<_3IH"zO#]&C>[dG2aN/e 펝+cg;i8L0 !<סwT~%#]oڡL"/A{'cxR+If7yxru+| 3١q؋EE_RnN,qj)c3*]sߺ[p8, c)u:E/ӽ\}D KoAOǮT@:K@L=%&NkD1xqsz ]ʳ#9/DjaMYCJQw.–'54&68ifY3V$@-8H 2CSj |mp`P}[aHyi#x]>݀\CU5qh;) FWС<9j|S2 tOVvPNHgn,a[[l˻"bAsǺӧ 3C@rF-(n^tT@xG6 RFuvq@ 7=u<*]\^@YjRy*Lrm+kғ, ;f!jf3T>Α8v퍛g=hd A/o= 6neS9\GQvK?]6EQ: YơsNZztN71N4ZN0s \s0h7v? {eE[C&޼Ő*3ǟk7-lfI,6s~ zVu;Q\I>tIU/;!̜l[M*+^m`*hqgk-Q_541n-=bp|ҼqW$?r Ҽ > t~E-Pdl*w'HuN Ey<37vn%.{ߛMzNCRk!WRnhLN6/(sc^b+B&8 j3¶0]3]91Crߥ>eX^z J+S_e"JH2 6"PThmd최a |wXO(-7K 3~qc.9zstP?1wOUXʹExBa_jF/t^wTޕ:%p& #a*dȮT[4#)_'کjmvKg ҫN,خG3^;i_ ZP3y =z,FP+g[AO}xU(fF5p eI_unV.|-·|>qIyL!T [fOP4ZS.B ,iO8Tw]A,CKח9{rpow1DA;aY},e=$K:6IA'*t pkꟍ6ٰ]"3X7u9QJ޶#˂6uSEˆ4dJrh?HJw}laU[crbAYq>[Tmr03a_-Y9m1+]3!c}F$m{qKNhD Cz:+b}6!87,>ճ·6XgWZ5!FK*"р!q/n2obuV#h>~@or NYc\.ַ /:#&SOQ>z=,κR`pKND-Q Ap0l ? _|veyފz'}+$n9_:>O.pδʋIs/ Xɞd7F)+qTOr!v %'nR֗ rıLiF#*e~fz4(w` l H0r6k#YdIF'9gŀyJYuW+Bkg+ W L]3;^`s^;)})4D5B+$$K E,8 Y)n*b4PA4-Ima}e{T@n#N֏σ/\ BcWKY`S{frg5pwy;qcuhܳRwЯpI^daok豓f-C-r9ytQJ4R#g;kL7}%UKUʋt`H7lȑD3 tˬ5# V#-&q JZŊim.c0${_FUV?-t"w}$(d|n+R:DnlLYl`ՒikXϰO\@ [lY 9,D,iہja*4)(lbL?iAp[4g\ һ$Ȯ}] e[T>}Y4Лd3Jm}lcy-lEG7@%_I-s5JB4MMK:.]vh^^91ރ'ZOCn3~8!1 t-0 %sC ԐCG2>X`Z,~"=E M _U 3~M`? sNx|9A6!E y zd+Roo}3ry0Iu 86Pyf:4e2'Rj)9\QvI9b*Ra3ÁX$171O BN$*` vX4;|nTH u&D 1z)yQ,nZVJmr8-Lt[} Q%ƯHrn>!*\|_ ImpS)7rC)ACP_Ջyg8ROOQ,_' tZ79f4w=0  ix"ˬg$)? [s+k>>Z1`BzF* AyP~zl $1?27fEk'O o@vEۻRV9 Ġ1H&--Xg=Q̉hsoMAH`Zg_04?9 QNO#*R;5g> 3Uܑ!c!\Lӯ SqJP^VZ: @RFf)nqjX1﹟F>ɵwfӵd^ř]t"ߦloR:pYF?v!-R?l4.FǤ"T;@£9ǡfu6]yM0ƤV TVyfr]^QoSҧ[q7^RgB I_#$J(+-4xx-ϡv\(h ?lkԵ}&i-Yk5NK|8wlg!+ U/wK!7bSjXYBN#Fx>xI4'1\&6LE;(L((2tO ®a/':𪌬&]A c\$*8B8m3͒2w<n Z> *Ix\h_>[\wW8]f?crMAW#r W`C,p]^r8Az\G۳÷I|R|'*jlՍGrohڐۢ*F@GF) 8pHSHn5Q-i.B1PR@;^M-[|dCj#Yp&HǦʀ8$UW} /zqMT܃|,fyobW^[Tz+ӗ`o-{7pAY?rBY' NWxZckለQ̝0js_0RM4vg3ݟDPM 9zTR\~pE01,ylD7Һ{MYtw#J[.?g]n)_ά[;EY^d00(-c"LzT2 #UE11tй:wܛ X,!?yLY+*l$Cv|lGVi.~ ;vO10C*V09F6͐hgYG,&zچ+43z'gH.S?Cp] {#qt U\BT 1g4, ] {Lb1E^Rc*6'f,z&O襞Ք ק+XS粂 k-Ej"#OE7n_5"r[Xi:&r!1`z >t1[^}\huJ%B'PY6Ɯy33^){Cb'5x_xKtHw\(/N?lOeD$Q,8P)j"_p RyXˣ"4fЌ+{VY`w ö{ȣ\ (B罂r)HA*?RNZtΐx^«g%7f2&}k%+F)"~{ Z?D衕X/F&-bo#8,Ti}W1!Ҳt8"n\̗ pv~,jB"v1#s-Hxg=m8&!-KWqt[1=+{G4۴U t% SxJ= `OٮWq.7yiN$7A4]lBuԒHT8)+d>H*"'!>ўM஋7!-/}^+==qebۃ{9x^ c9uy_0#=w3^(bEZgaG!uT"Fu%UInKZ1,q[_3LU1-ŹPkC{)Lkn"~HEV(KC@ 9i^QaX_ KSh0իSKz#gd bGW|eLSE|K{}rXQbZKg J7Hw{OW"USy$va[P<6EMDQSu6܈͵ Dž[̢3K{݂E9MrhUc+T·#ל@;C }&k'B1]u@@x&GڣNԼ(,6Y"*V :ʝ i89 dǯOKyHk옍H!mks2}&Ƽѯm|bfs#q@M̩{. qߟvm%ep|f j*vM\ 7*|qq{N =mI}p@^ssԻN&% ^ر{+ e렰\їքӳNᝐըrY`T׾:azkNXjɮwGC%ͅ]F^lk;qe[-YՐ=$bR)U֪DIWoCZ8E9~q1~ Q4`iy\M]-̒_-[aĊ1i$Í6qp; #+cI"=fh(O~&L`Mw-o hѢlB=h()}V"-Yqm= '|ɹl6dyU%jto;  I,cP.EiMNt˩+7ʁA;R7v}/re6VC)gp0![I 4ύȜӃ٢|M"=){# ť!|3rD%J8c1;r9jvo<8]l8Og1 |@I"x d/L(f ts19ZUQ_b7ko#6|d.76ab-YҚ~ (P3^hbuI,0wdN945(7G;nzWL2o`W^0HG׍ͳ~8㛼hq& ^hvEii`g K" ,6[xFv}6$ðJ0jD%OZaG[գ0Oky& 6aźdmOfc:,SHJ]Bl^IмebU8YfĴq'K(ѹ(br"q378xj-D܅g2#f\W/r8%dL[F 'J4XE8eE(xiZuZeǬt NWUf 9eov ?pjN![M%@%uGOgm ć̾5l+!#'4}8ºuGzq}+lũ`SHK^x(j6.zKC&T@+h5YrD!\F3ɳLdY榪 ?c5)|)TCj*\t*K-&h)fy# ?>y͉އY-"-nNNXI hFӜ5$I" 7~Xi>QvF+܀OE|++wG [2Ȩd25";IMJ(D}kv7M@WmdyBTP-23"-ѠLWHQhY;r#⳰)}u*N8cOxCӌClMV2LL0*]L# v].iFb]=+`;~8;3VM`=r6#l`v7 3cR[ſ >wVPE!\> MkH'n.[/$'mIa EYn81m*g^*_&^/1OKb!!֥3!9AUV/D$k!';N`6)b*)0o (x^-Z "3^fX@Khw8:"-'8#"hra \ n֫#]}TOW> :m2 U94? ;:];o/0$]/Vg4*iPh#EexvfHAo]:h(;e3yų~p9ym,ftOvMkᔯf"R(gx~@;ZK(xsw}T# N bF41':ᣅbfmvhf]q cs ibWopv?qI#Xɳ--j$|d5H@ӝc#(*%ί@a@j(d/ZNSMQg):a=7Q5{7-Ai?&j6Qa{>W!Ww0d0M}Vjș6LG(S6 >;#BpnyC%,[i,%̬$V g~Q3;BlG޽MxٶO2-gMi¾h;z鵉tv[+17}L %^N\ފ50C|؈*2P\Y*s/HHK3_srG`]';@ c1ⶊwĚi5RTx!a@O^딞 ~O$WҜWsE.v |4% 2Z{3'.D e׼7(^1 hŷgIoSe@cOdR0RnjHWl 2Y\6)YZ|(לh } p n1WkTafI3[B>Ds-^=B=Yyj7:d_pyՔ6yTgلtnWF.s^_* ZC(CJ|dA9ΤNkDqI* »ğ!•-;'4^3IЀ#kȣD2- Y T)t7X/vFֈ/pQ *J‰۔:6l^`e9{o!mV}(gA) 2Rr&I^vf|uwcŸӤ)] D 謑eggMboS3"*[bErLFzձ+;8fp [S`%oJW8e Z.I_kXnJ:D]Bɸ qϊ*,J7 s_}d14],"^ddG1 S_}&&{bYk`TXX 5$wRt૞axhM|E:19 ]@#Za<7)Ac eZ`'*%KۖOoޤ5uf9(7?@Y̺ʘ%ә @ dw˜0QCx,x%jƍ=*b)N~zVI<;%"nZrgi2TD5Qf,0/:=]MX\ ֣pcn-J;<(!7<īo* <߬>xIChOT(=) q u:N8ۂd) "wJDy]ʻ_e}^b6t㪍҅ydM%}Z7ܸ¹fOv/%WrCSn0L;^m!6D=弒ޙԮQkrcXl:}Wݭ5EwqJ(shQ&B=XԮv󦜝l{=LXQ"Dlw8 T9B*"}ژtM^ a)lXɷCsD4*L_5O/T6H]n'=_I hw$ɵ^`~4RP0ƖP;%GCyEq JJ0^~ !J E@sU)E'3"TSa- e1ƛl߈i oZ![AϤFC{2\~3!k\ˡ@t&"We=pxҎj 1:T^xYǬi+]FR TuA'M fsZ7sBc4lR 1)SxIO cS_.F흼},˸>d6R@Lê$˼jo}\eJWȷhvTqYI~{W7el$ﶬï]GZ|. C,շzw=š&)\Z9;#L0oaڽ/&zCK끚mġ]Jл:3L S[1֩I<R!ք'7vS zqS=t_G/Y LJv2W)&az[7M芔s|Ըzәgj=vK + ;/bl7t/',:]0LuI)-I3?}Ű^bmck 0T? yrԩ9K96p2u.B%X si8a65 _:2aќ,Nu7LA@: SS9i 1 dR:zE3tB= l "j߷{eUmlu@HG^ "7d6G^$11g>'nT]p)׼9;7OnߍRR“Kc[(xqlb2;QS#ílNXx0*Chv,~u{PZa-̅C/6k os ul@<{g->]7;ؑ%+? CK> bYx#4O=lM :_C} 5{Yv\GiƗ?) ˠ) 1x` #I42ǧIY[Ƃ:}`&SfKO4WF7\wBvߪt#ʿJv33E1B‹k-Y?BYkn%@L1'rX3OdE+wP)G#QsLOw cmiIϻ_ v-3 {+-HsŻ azV \~?A*1+0ČJ3S:zCs.Z렒y]~`ucU/rɈ l+6Kuwf)Ɓ  Q~ie`w<%7{&.7eڧ)t6|(F_u 6">T r<#cwp2#1<>AwJ|_a1 pJs|]"K&2,"lQ.s`F$GB՗|ϤFVU}EÍ,nhkH#2wC (y9QPU LjBV+..2ayRM#4Fi5νƁl G!AsǒW]:׷nrWh$ лl{2p*)f\\ bc^Qbɏ1 2W_)5Wͬo_ޑ9`J܀"dکt <=Jp}M/A) DS+U?9>rguueٛh!5z*k\I)^I1#0Tء!{zD#v11m\M {BHP 42cF}hpyĽ3v~2şL 1"gEZ$ewD{_b9P 1ř`>+})RF%R'S5BM#8N9pJ) y)3 !H{Q4DxegĢlP%/ԧ> ( B?_o4P(@"f+p~_Z^=O+ׅm7,eA~2~@N_(}2n5oEh%MD2#U@')6$L٤ cybݺ/*7m/|8)EnNa/6iٱ_ޕ)EFXh:JC,{+K0l#W/ݙOVGFl#̡-[0`Yj¤ZVFv &:<]n@+Yaٝ4"8Ed -aP3l_2x45Q)Wqqn1aX4?a wFmT+rE5=&$Vfϼ0@Tj륊3TkzڅL$cNC\jl3 ʉ'`dݘ9U(By'dKYsf`\O=&H=Q*Md̈́IڇQ2uOmxkEfF\/&:UBIu\_Zh~Q[ۀ0"]l\א6 FrtwY4~ci(̙Fl[2PA[JUSH9Sʴ'e?L (Ra;zS\`]!4^nzl0S65]d_⾏@/hKzUNJ{:8{M( l)Q{ Sxjnb[jY%7YRjּ[lvu"T!@M6/%1"WX?-J8zG983$;~=2@ Y\*s-(X5[1b{('{`9=ָsG.6l>Rm8Hàq$,u Pxq5< xK-&$s?]] e!hX$ 0cEK&^thv"W /pD>_zW08Ń_4[Fʌ{D.\S2oS2(!ç,)JlB!["V_L8hdJ_4܆?3`9RF"rm}5aWJe2bts8P爳JCG6QntQbI,2M{ߠwv iA6bO%WLNB\.댑ܮ4%sm=' lb[PQ]Fu`o槦`\yhj 9IIiLYӞ 6aR'AH?FyK{pVmOd>@P'V2țْ!~a1q$I,e!dey9Hʦn$^g_z͂ypBkOCϟQ\xi8fSF;KjhNdK<*d-^2"P?LXxn4XtňuVܥ7Kr1L &}tΡK}dGnepNf8p>Qɢ>7t'?ήcK S&bbWk;piuul"S!*63 +`4 4~@ΘT_֑0f5v_piӄ&BJ.OF;DsGo%#0_鯔m@V$Tk Bل`Jdϕs%v/4Hu@!-}3wVjd!эUHW=KgWzH_hS3K@mQ7]O#:Wxf<@H@.ɕ.1Y;& yU˱Hu' O[sz(196rW68!NVg]A6Sыw(IZ#+.BBz'5N 4M---acÃHN3YPgM,41;iN2Y;8!Z]`ju+ ԡURJ阽mvR@K{%Gevl'][.] k,gV2A^&Y(J*ݸ 򑅃xۺ) g{ZEcrlt qKYvGf8v<3eߴ"wQœ9g N l>I7DYMq<%˜K-9?:ucIlptʃ^>=^ vQi\uQd[;pװP_sEsBTg:z@CJ||a㢪 𦛀'Ye=ᡘwՂ(0 WFqcqh>1= Bꨮe=U3 ]yc_%1'-8৉LI~x{.\.2Bql¼H 7bS։HB4LYkBQ_H븴1wfx,ls h,Z͘p!̵{mG&}^*fX'꾚n͟r LQ=8r%u5C pz>bipҗNE Ԡr-ة4-9mv-Y终@wц@;+ Ey apub_Gm5&/ "oQTEt$&4-RǜUϗQ͈D?Qy/(TV)RN [Ԣ p;IC'Q3ƫ/SE\ds6^Ћ0 ZP^C6W4%Yߞ[Jz{S&3i= Rnȿ6Ucz1l+0-/"FKz'&-(u \_5n{բ&C!=ޤ[a F"lzƣnB.L&w+Ek[^ KRW-r2g⌿0kÖT1{4?=>jCJ^CbSuH ibǩRxKu^XO zZIV(\% !*uE~=lvL@zT!jmy㯒f#KqTs_}0gMW%f;uݥ^/ c5etu.~ϕnkm8rl2;>l+U 7SN6v8\ӦO J j E=E([C1 ?X‡hO=5`4-d>0f@SEiKqrzBNю\ sߍsWਖ਼5"bŵ_"2#,"į3CvA꿷jW_D^U,XںPH])p: @U&x.a2E@!Rȯ@\vvscuu:0}8ј4mD1 3%RdmX핏oeo BZfA|q!ʝ!!RnHʹXy{)` 5mYkuVK,[q+hdL8#31uV'dUE |W&` \^rP=}BZݫ/NJA\oLsƉl<ס  4x_mvkdQh&VSԒƄg2LQu xJĚPɡBPw<Mg(i9uiNJN* zZy}xGED/-1V铘+s~G,͍TT&tN:9g[ukfƒxkG}+nĻ%en9>)U1Lޙg'0p6%&zkb䕞#"|+Y*M+ig%SW wiVPAi̾[\е/`}IxolS/jH/5z"OG<0 Yw N?l7uQ%7f t5 hZjaPK V9G3ɸaY_rD{'ٱ ῀|NU\ Xq{'SO /yЋ8R_y:0U,!WOkջc ×6H%~+u0ӢLγ )Pf[ !0ʼf-/}HUt+A M6^ӞC֢fl͍ޓp*' qeuzš&B`MH`M.V(ؗ-Ȳfn D 톳)sL'ee^[uk{X1k%i\>{D-4e3YCn=YK)KF.a=aM`'3;|Y0^=:?JfOY|+]e +CK37($zA?\_+BuubDѹ/V:@T=E[KƿHwo ث]nʴJgx~F6=R~2Zdq74SZ,3ݣy.t2]!?XXl4t!t[.t pQ&I9%l]PI9 JxD7SFto/ů3k|VݡPBAֳ`z5ߒmqmCe!i9Q{W&;KJnpwdT Ygx2;V+ 恘$"2 `+y:Z=v}o>dji'sNXchz{JYz tD~ /aܝ dJ#-TFtΑZis EwiIᥙ0P[/.ʕŕ 'Af8A|:_;AW%(Ot\W}8i84Nn_"I"jwi]]i&tnp^Sq/[T b~C/S:pZb0i H9\-Lug `#oPn`#t)?;*jLGE~bOSu0 F)$]^R*s0pjp0, C@D^JZߠXOyJx a"ߗ#G{P㫤m FO}Bma3]ce%ѡЍ5d&ⴛ *fbD#鈦Hա$eG> @.ƛ+eTѶD2Kvd}")$=08sa浺,q TGPg٣vՐޥ:iG1KxXU~&. D㹮{VHq6!K|tTge(hHP frGjU"H@A>jFQ~hjFs'h\!d׏Tk%YV`s )ODEmݨ-FlkAR'_5\ӽRI /)!6#`N[hL@4zLckXYB; BdPU?Y]oU?T/fYYۮzZnVRG:.A*qO2JLPI* Tw3?41$*i/ ysy)3U-PryJ{$[mYHϗ_ $h<~jGip9@$iJ6ػ9 wuUecTTwPeKZm +=%,PpA!ECS )5uJIv\<~1!H&-a"wt#bkɥ2 <#~*d9B3ExvQ-ySso/J^c &jqAy {꾗Hb.܎6C3tC DuÏmBsiE$:8L΅2?<'x~:aٶi/2X-CJg$M Y/眞AaUH#1_ƍvrL!1|B G-U޼n׶c+>sDXbp\OwM(7쇬7fV_kO){){bLp'+.Ă.4Ҧˣt17~CyJ 9(ےDts7+w &d78Ue(bA\2%Gק7O̴]tSo%Zu&sf%nZ?MI,THAHҸ B( 6bxHm֭~2-fWagTVKlvrq~UPQs_'Q/8U@H-"֮j|Hh *B&_uj౿ߊ(6b2. ] ] ^˃FХ]KPn,<4[eGf|yKVR~k}`-ﴢ "_*̖e] FXJYvxKfr%X(*nv!蹒 /Xܚa͛ &He׭mp6xn|b~ ]6Fn0[utnQI40:dJ X+-Ab_VE/M#!܆INi{>mMB7q%e6rĜ0&FjjO~եurr{MbO݂+r>&OU!k#(inU\.JQ44ȶnWB-ֵZ!5sAc:m> jr{ o^#"7I 3;e-[K/DpYEaN>>J+K%r,&ۆ'-9Ik&1MJs";0l"^rX&Cg_;ȬKA iv2:wC/&ض篨 5G@[ WQj}hyjHxt\e} [ /l3d;^Q4=3ɽG:4 w:ȍ_-^j,N=ct9Nxc*9KoVQYF3f߯'_nf|U % ݼu~uYJ CĴ6~0hD,4fK%Ρ cu`` 1֏ DǛU_R'dC:RR,0PkpJ:2^B.;j+v{$z8SP]f8%r 1j12iɽo]USJ1ހ}#D4Kf)OƜB [8"[d$EM#]լ*UAx&,ԟbg@, NPj ^"[S/9rz]q_rLK{cع}=%=> )4~P0Y(g>UP Eݸ}2m1}#M*$Ζ҇C[ݔpyM-u)j"9z(unpLXs*6?km 60܀'Q&(f{$i}|`:S QhxqSW]#AᰄIz^ 8y]]Xf'1R$!+ );n )D2mEWJ=$r5 ~X2Pq4)5V.šrt}VVҴW8rf` PJ1&;ƨ"u&HG ~IKŬ6S;kOkuEOW >N!|w!]ZxzAM6{)*ezvܚI!JI^wc1+ݚbqkakk'4yYš2S&.1/7ݼq&Jbwhw_,!2ҷQK+.$o+/0S``#DK.6W9`_!Ӝ\]3֋U`Q=@W1)D9'NkBR(ǒkD2B"ø(y6t 2/%8piD!BH1ܡneWAۦ "$q##tIk= e-Ai-91h$n TZ 6md9IBpM**&owm}ILyѰURUX:=H؆  T(zJW?/1⑒G ҊuE1MEk}+EyzpA& g;! tw3c嫒ET\ :(,yfXjM+\b')0XorR&Eqs^nig.%Zʿ-D 6/6A ls.BdfPi!S?|z+AFR*A˾]Сz&gp![fL-[ ֿP)ة6i< ^V(1ɹhN#fG+ !9fԴ_Wdq`tH')7\B*:$YLz NOδ,z L$i-t/כTN9h[Gh@FP>|-lЋl[[~V lQ߭oIeC]i 2@IBC'gO ]23o(᠘sšpF*zWA` hX<] Ťz7Ft#XIP aj, J]ek"=Mbԃ6#Ņ1E bdqxk׾:e 4rVtq@.`c{r drrvQkg{\lUMjB,\ptHVW! ̦w\iߣD|sDLJʪ/VV7gĴaPLQĄ&>-lЄSThx ce/94c!l]u@ҝ }Ӹ86 na--R($ \Z^VM{6IU10tcסXKڠar54IPP%F֕}9L=i@d㠆d(X|X@ =qkTbs})iz1Nr.zD dY'd]٤Zi@ۮHY̎l[T˗P|;ƽ٭E*Y"\J侫q0䯰WM)22AtW,cFjKO/~*i#i*'1a\m43^cܫ@ ~)ƍ?lOmr#2Pr hw(L, A׮%(7h< =~'~!=&FaB [jݡULŌJ0/_ 0Olh?gsJ{I6aZ9 %]S+rVQ`" cCQ!Z~j{WlO Rt*ptkk' z4t'ipڤ[A"fȰ >]fnA(%-5!Dm CtUEkOG>9&Ap$'D+ri-eX(ڔB^ڜ?Sއx- l=2tZ/Fz͗ёr:UnjG8"3u찉އic Ez W`=Amݻj?.eYP9YH|ǵ:hiIpd?nN^k(ͲFvSn ׯ(gI[Ci_p`PJ1:D'n(lZbYTMʯiuB2)ԊG ~U8ҢJSRM # ܈X2ʖ17Nb.F{^! i# h[:X-amt$j.E_<&$WrIDVutڃ|k^UeLO.kű+rUvb[wx7xQnZ}4ɉz9sUΰ)V3{ݸ.xuBP6^¯{a۔(_Vjd8 :­%?~w.M*;,ag 7&b\' aKd~ b?} 1&zXO#g3܇}O9wKAsw. k*}W 8iaiDg+AҢE֚lo, J?@>{CKNmE%bܾر3;!}5@irZ6zT}-}/UI*֣) T ocQjWC&kf~vp9 Q@B yk oᴼ6Ieyu0 0|tR$2>F*Kcg ~V\*Ap[6ɘjCl]puWmxy5f!m-x DZ&hIϤ劼e[[9uQfB I%}Q kd8rf?slX}FO)D8G󷐾=0ߋapn<.w-O k4yύlIir1 jɀ>]8˿SZ л$_BFI[^vK,<)]yoJt8 -!(,?ey}'eە砬|,(סZIL[V~d|TJ"p SFmʨpD|Q`7wg gXk 0&dt^Ʋr*jfɊ%@$2ȽP+leRꢧ6Pg+g cCqiS^Nt(4 z cvLjr`?,W-|keL Ix9iwy|^QC*~"AYn`g[d‚W(qUhr߭w ԩ[9V4|IwNx;fW-nnN4^V{hSipgws~j֡l@z4`57Q . v>ymu^&Y$֤ف>m]r{;4×JMߋ_wKU,:"%vC{Xf?ETuPAF'o4k.zAa@s-|sGBt"H+ǟ(lW[ZrOVXq̑=(xlDJfKܑC ({y?,Mr>OdwK/(ZgӣƧƓ ApP>-I` _ioŮп[Z>lBPmH`A$az:VUoX^ #@T=qMn sL hdǥ*jJ)uF4&mf?LY32}5.>J**asd#lUѥ=1`(\6B"}BV=U @  7W biTzo]8[iu>a/0;M|e3GCBv1^l0TЎQ"6Fmb!_* `wa70|ӟ>: `Ygڪne?iql9Tg|%q@C7=s ݠ1GxVJZm89Yᠰ4xUk-03M#9 cg9<GQIJ+^Uk (imdà-bٯgSˁ,QD{=<8˥Zo*uX]D`]>ڡQwM VfؓS𣟎v2 1 C補d 3E%{UӪЮ2 !0B6v%],B vW׫$_TʫM]?PAn˼*7#}7cᕇKqFU~{',A<rgOɈDaGnNcoI ٳ14idWLڨ2@$Oen˴_pS_$=UGg^OE,`X@|njXI5q~̀TRC d3:)@kj 7($DPSY˵bijm_gDw`"WǬKo* &K4K%mَwGr Yk)x0\pփ7DPg> ,c O8q4wIn@Q٢Y{ֱPbܖKRyo_4F dpFx%*cn UѵZ& U0[RH%H5]5 o{A+p175TA 8ZBڐ25Axk-LJLn+A7٠!r:IYXX%^RPI<pjخaC6ڋGA&~"ᩜ?AqTI>%.=?ٷQh%nS4LI*h} j$(jrȟwi&c~5c:eYqonVϽyp2^o $Oes>mb!Ѵ}tn9Z9.c~_@'cz JD?{Γȥf>+0b qu-r rBւ ֊44\0H֣jOg|j:h}rF300?]yR:`sV_3yZ!b0;$eYvԵq wk>&n5u:/<ހZRrˍ^IPmF}} ,vBxU?*oi]oX)8[ 3K E*yiCnrS+vt TIM!CR)i΅$ ˢ'((*gvixB Tj%^%LƁ,2EId9YAZl *G}9rʍ>>+SS,(__ŏ/atjA H}͡Y m{-rab.| {$=qpDwD6DZB yHҪeğo n=iU $/L͇p ,-GvN^G\,/C`;=Gѣƌ-ԩF\cקg<`5NYi3);F]u,/ (ޤG| #W,sNdA&LE6nħ~x˷ILTAZ-viJkD4q c^0Ŝģ@g>S<{jE,YUu ׭e JnUOQ-'tu.8$Vg+ Fkn$R2񞏽˜*g{ 7@q?i#R*V[e sݸ' 4v:IuZY4]BGhuJ\i@Q! 4|ֶJR|FNw2e"5A;+D!RqK__It4n!/y0j% nn̍W'y?ɧY/XT <Roڍ1[-g=NV?!s4e j(u9d{V;:88}%: Ir``i25JlČDtf|+fq--؏E GtqvFPERWLyE;~,M,Xk6i誟ɴ 7!K;_AF77w0{dk$Jr{"{[^ ǀi{8N2N ~$oM7N>fJyR>"r;1}'Lɿ. ЇFAsZcC>$ vwϖ*&ti r3wLuhK0B϶p%o+_|diK %6AQx<'&(8Ar=M<8wp*I"z~?7HT\}g,z_seཥT5!OODS#|ܛ^@ͲW 2lhĒh yDwwL_Qt|.~}+}D`p)o5zDW@@|)Ţw ?nt٪`r, x4E@/L?eL?p,D3hU^Y2g!T~ pB4d4@-Q.AQap%~^w7ͥhu/ _ԺR+*\˯CA e ;Qfyu;p""HV{qYJ"8< xi-u㺊HJ]„/_r{Z[NJdZ (qX{qL̲nMB@~4y#s2쌘 P 2Qab `]_;4i'i(z3TFWQ"QwѺur Ǹ0XrJ {Hfy{)ezJ Ah" wF*C(>ŖiL[*Z0J֚roKE;"%Z(XfԆ[/fx9z fHGV#W^t2J;CcJOֶXyVg=$u b}=7FL./g7Ch&U7{Cs]yA1IhH`w}Fyd9(Jh(JXvCG_uFޘATJ06!f Вih(NMN3-50$ۺ~K@CF/Bk+te@x=K8;cjׄe"${RY `5a[˸$ˠ~KsbAPXʙ,<]/@gR0+1 %Yʟrmzϕ *?FnЀd6)rEV;K!i#]cЦY܁] fey3*1;KxrʓYǕ"nⰵU3ȣ:ɗDQ9Bp@rS>+h"288HB?%c}7xI0>|gD]$ 2;&K%xrf]m^}6ﺎwO=57::{FۧU$HĸZլhC83poʦXpFfԖ^lKY⤹uwj䓍׍.y+s\&hG3SgPt=iǐmO";7yO] RFQHOf0r-/AxyoAOɎa#Aqpҹl8Ora99BRp Jqq5,0j+|zx6qڼU[CMg/h:EInGy"u&asKg-Э j3˓SP)hjA jF\C=A]YT89l|*8:+mi/3<2C IR>tXf^Z5icK1I[qNF2]ʑ\z]G̺7qI#!*ʷ 6ǘck@$߰ G?go#~6!5 z#2o]1ipnק>d@a51 zWhlp! gj}krHӵR2b i ?D{9ƉHPab =.] é:O-4}qʜ \ZZw[Y k P& g%D7>* PdHF"hE *~*[.S*;/qL9Ua<5xZ{J{cp뭋4N|sC7#݃o@񰱀,o ҄1t穹 }ETOMq!\Ad݇$jHe(,H{/Yù1x&$3Af[_x.*/r30Յϝ6(˷1ɞeF|Y:VK-$$^%.mU|xm 8~> Ai= ޿pWX0/?|l+&δ̨K^$X.ZX>A-pKr")mizH"!ra\8i֚fbp +x9DmʕWWyDtIMu!?G7rD5[cBcy }kr!QAh9tS]'AE7g4:xng񌠼yâV.Q i7n<9EBfhXL_@V >+NԘEYKgg^n($*VD}Uym( D#n}{r0(&|^ĵQ\XXZ| ' //~Z7BL@gY!Xsrg9  [Y׳B;A; ^$%Cuf^ȊopWAjzqU]¾_}B=YL&o.zIk8 ƭOIUz<-Xa"sb;ACt6/]sÔT.CJVf{xEO1KCy$Cm>cB xBϐL3'h͖W-3\>'|OwwlırKf,\>q~ah8J2A(#FS ]ol͉ #dΤ;vGݔa@(M$5ҁ'BUH菅.1D_27OfnTai#/49Iy1gJ rS5$rXXCڐ3 Di=V{(YR1 ?He;J-Rp1rBWgSә 9$ބI"^P܏[mѠ[mTZ<"C}{4dA<'ii_ t!p] ONdOAPvul2ԗDxF"zXэ[ |,3wu)6M`Ka{Ch>Hʖ)^<V)}fY"B.ٿY9PKVcz@49s2C4iR(RiuuwE}27I&zF֨cq2-BfPuPȟ$͢e(0o؞=au7wGZ$T Gj>G*ae]*rJacJ0&)۞q? tsmYBZzdj<^viXЁ/bܸ́GW&sh bu *~ᨠg]bJ yCJ&$Z[p6`'a~49!{8fB)5V(DQӬMkp>o6$3{MLJ|DISV o.Dia`<8ǩOf[s|cKn3囂 A3VPPP=q\$!fOh# &,Z w9tAA)@c6S>\ӁVm E{MO*P3UN&ۮR@ۂI[̕ yV82p1י[f."vaSpi=ecUm 􄕇Ij c(fiEyPvjNRd#Mrkg/jD@)o!s3RXoϊIDoڳ?-0qr`0\=J j業  ?ީ8a\Jk_7;]Fr0trrCnIEXҰĹ8pPq$8\5r oMK~__㱽;j_Kp g?;pEtl H`nwU:vjQp^^mB'ܴWBÕlă4C.ťv5 Na!?/u62á> Y!VaS0qkIpw!=GҥGst2=dܘ7R(NjO.U?pNDU@E!ޯ5Zסp_Zҷ0a~0J !KLP1>Wj> ty{I43gEj$g׭mb0CS:%L_ƥcm(W@ONH9昘4Hl`a)4ݡPaXUmF"-O\YīEXs ug0[4";|۹`Y4ِ7 mHQF /wv0T,;&h\$i Yii%>qLf9(UD'@M~SaSH*XhNS7Ã; vt?p[*7ʐ+OHE}_rZPx "Gu+I0<^̢I<2.ą,[ jkj@-SAF 9 zzVd4HNg{ Rx1q7x*'A~$ba˗I[(+d32~^[3w,3fNdoP˓%gL~;`A4 DM_ JV&0R)׈-n˛ԅh vȟ# .:Q_A'z (XD*)=0Aم3`t[i- _&bpw AcޣP*aIZej f+窨9n{/Mn|Zv,?ɜDT'|ӊe45,(Opq\qQ[wiU@V)[­@^veODJ; ?<; y{ FFL->ƃ(E*.x+&KL ,Eڦ ƶPPa5)0!-ӗdk۽oT[vXœkEvc֎x ZnxG>m۱9<;>w RS1P5f; t9w7:{2Ѭld5= JiM!ef')3(}:g4]\{Ah#v]2M#=B$W?;5D,S,d#kX*}~.!ۺ 9ix R՘l^hJVT@"-#46 S|[F}dCU1П$MrD܂'b4$elW`I[֓ Vؖ KmzPL.ba+/6e JW[q k!8&Td {Ks6TPy]I0b% FLCQ(IW {HHj:#kj֊Q-'?li9Âs|hi-.:IJX-Pup|pHML6kTPsrUVxJ = m=Q_OJ?m92D(J>j l<;$SZK'gs%ܚf(3C~&*F҅[We?7_hi׶hQF ] ԭr@oGP x@Hf^l)6W{Rt3Yn:P0i;2?1V^~h(2B!( gT>y}:;"nb،\k"bRtQ|Rb cg5$創,V4PɮW ɇ@=;B%GꭀY雷Frwq*35IX/R>RGcVu(1ɒ8spعBqoL&bMwKDaмԺ& elCȲukw({q=\俶 xf[u`0$2d)]Pً"^*A.СLo@ n2=k {#B,*`.Zl\0vT|& 2Ag §9 BN"Ћ:=5C]EK׆d79+.TƲi/ AF$6~/9hW5"84ilpJ+"ߛ9qT|= O! >bOVsP {l$2v,47z}CҁeTM]J?F C;7ʐ΀G2754&mdWiÞ"gtAdr8ʋY1*Ȳ4#Yl^ WugshQÏϓ;'8db j=c<ܘ,D"a8lz`\Q9>ר%0fKilxN]o/iGժʀ4Sϲbtf4 $~Aa#qM׳+ ?z:rY3 'd:`]r ϩ&^A6OungMt*eVeNvSkFh_]G?ZΑcȒY:]:\dP*<7 ^t[-]1 AgR|`ԅ ︟}$(- z9p e?OKk/:|Zצ'/$0 Oʖ- ~줈URGgE30/. -(d"Tn^pd9 u\;|]ΏX~!RKĿ6>`//IW;,ȥxto>6gh"=͹+e @%+O֜ .uep'&kTDH)㌾չ`4Q ?Sbkh i,ri @(g<.p)v҉2ظS*4XJ?^KŇ uN,T?ڠkJ;A9[CЗ?ER|k#7#> +З/Z3 KnSw7Sz9iոlw[s{xmC6VX GߡZXJKP;HwD=ع\TX@ĉG{#U3Qūkqe©M!ju=&mZj,\G@':)Z{}?+pHrr,}z-) `UbEGUͲ HF\D~L\IT%zML2b2"n|-+D-ZZ;s)z^6|0aGZp2C^MLw/?dY,sn?2DPL:`A;Tg̀1;N}??s~G CӘ_|F#b`[ Z.dբO ]5bl4)+XFP۵a|CQ'h S >XI`\$qU8P%T@7U=*^? C'ItR3zAnbWț>,Z\@KPDGBV#]ejSsZ;IXt F:_rCU,fP@87ԁ zO)sHp-BMY_%' j~ ({lߔzxv!g압X?%uq 8AA-Ɩ!t 0"s,V#,U/X.brq.? UR9q8KQTMK36EoGs)glsa+%$VhӪe C0Y)U>qVEH0++? s=Lj5& s8!zNd1$T~?(KP悏t\Bt˖s $36rݐΔ'Ɗgbu6Z=)OGfdUT1[Eog_$PA"+?dY^w! dIs6HyTZb׵5ktOLX<%dx4HB[\4ƵijeϿ\UYsG=3NN4qyZyxxF@"lB M#hMA.I[vXw d(S:YB*MPHvԎvWSπ~l˅? ~~7hD(pЫ눁1^ɯ~[s`V}/|~-gn8r8QQek4$Y2EP+ .Rz%ɰ|iĐmBWtܿq%C$KNPiFwwӃvCPTByݮEpڨNYĖUsQHćDTnCް3UĢS͡?ɫ*}$!X*J5 |Gqx,-cJG2lH$ةK+vu^KdCV+/AugWbs]Ä 1 T k (QX$*oUVt.:ngy[ V̒`@J(=OvL"!z.a!^ɔdw !ݔL$1WF!U ކ*sHr%FezJ$/ iAX\ۆxc QbhwP#|q+Sk{[O*e%0IHڜ+L 4-unC\jk0ծ2_}+gdE|߅ĀLke܍hP'nӝU_8̽7kޢ!(ʱj'X~֪;S7&gnHSKf[zvooʈpϠ&ArjXxພK7D{T`>gLwj0&6oI+t> (MYgwל"eV#Fy$(eތ-J7M)j)24TNbxT thwEq:}, t$r)_l+a^U{$G`1dBg<A]bi8⦍HqE Ua}h Мf1 Sv)0%mdFZ# 6@rgH ;~dS[?x_tk7G]7*g`ר XLX<z೽\+: NctWTZ:Ru&Bn~֕]@fUn(7tc5SC+x;YACH:‘R +&FO~<URKL05[Nj 7@Ō6:yfjH\SQں=9W +l/\;^@ڔgY{UExY-,z*FSǃ$MKCV ;m!c Fnpo[PeAeA H]X(V (16; %|YKIqX@z'#TG4`qkOs&U'&:gttԐ +&*茖dʣŒL9WPYz]?w`͸s} -Yn][ ٫9aK0ψ+N\4ؕ@eGGI{R zjqUc9L_`OEs_?8CHs^/өw^tįQOwN ,6@-֎ 9jw掁Eeb 5DY#M W(o4kZI78xշF J<0lI8arUѻ7 |R^C;m&ݖlxe.Ƥdr󽾮.EbO)apy1[>i&d:ӏ_TzɑfzSB\ID& 2 T.JYNG 4IY@p@fܢ0b48%+D ⦧.y`|;Q)Vب,zxSu-kNZnR]4W*^MWR=(C98_28ck*K_·B4re"@ i ڥ~<%iT53f'z:(mw&1*=dpH2fR Ď<}S) o,IKש<"<5U=gXခ΢tA9(xǠة}śę>8uZwpP$D- Y^%GFM_6JbG`KE7<%nGjξF-gdՖT|x%h;qwɄTa5Rⷾ@xmfxHMRQѳH{IنהN(C XǕmj$SXFɞ̚Y,CvQ> U__~MvkOYzp7b{*@ǎO,FJyϥb)(@_H7Qh^MKHI?@ahQ1lu?WubHǍL ⢳pޛ A[b1!1Y_±%+#?i]<{ݿ ppǜ$y{ɏ"pεw[b7eFgSH'mM|4vPVsdzFpw hBW0 q }h"l]Z&#!gþgb/7_C_/Z  -jY7טM\FET%H]UXٍ_^l 8L}*ߟ{3~EBadT Z-KL $0 ){I) נiU‰-mB^~O[a*?eÀI$ӚrbB|gFOR U". Cya JvdZq0>DZe*f4G&ϫј}b_*I䩘a|7q“E8'A3.}[ɡVhB P Y>]7՛vu#֗DO9oκ2DlnWfd/E/Xnҙl\@?^i@7i1qnؙʛ³VyI8#Y ~'oVnڥ d%s ,F".rWӼҫ[@w,IAPo[$q*|TOK*%w>t}=\`֒-.سbT-σ ,f93DFQ}kYyqPEp"H__i#2[†IQy&?BJ .DQaEd##* lg~ӂCƘC?&uYJAbm8J^kGqL gOq3Bh``Re!c(:}+*`v+ݕHfDz6Qrd/$mZOWw$oydc2ĭ/n#+o^:~ZsIjg{/XOaE> 5u.\=љIVV8ahBN?UxĴ`88&\b*v\r;;͏' "K ^pg}XF<­=u]ɺ_ҩ,tr/Y;gS 4J(Tuܫ~sX֒_wtS<)5 IP Lo@d(==1cEqh´ K;}zKfDS$q`~C!h*no [ɣn\ I:{ H.`W$g}^-Y|> 8XݹA{ߙ:#|$_k{I{{ʧin٩A 3_# `]! }(wܹzxnb$ʨղƧXk CTU1pIPaÅ43,9Itnq6Au CHWGRk3zn]2Z5639H5ւ, ~<˽YtEY:§.,[)'rRh<)r*F[À <3C X|"Oxeߘo*uQ_ LRrV̪y`*ۯn~`'A+OG-~u<ا%eP ou]/Pgh֚6zȠ EHK'/Q&jB:Y=k,c@XMU-î?ӫ6H|KQM69z/ ڳGbac}!g NFD[W' #‘ΡO\)ʑk X亮~<ۜfzn^n&ŽqYĉ̶LH.v,If7*p$Xa|&ՄlF=f?8b6D F*8zB%8 K (b(;6K!f`3'mX#!P[oxF5*kl%! -8&x:[L35Ӷ${W4yw>W$k'UX@kws˪JG ymU :&l~bz?cDμ1.l:v [@>.`Ah'd@M+EB}~#Q}Yʊܧܞ "&LV9 NfMqͩ.2`yFm@c~?\~ˤc=hlMH|^L)!JEy|;A-fLG*õڽcXÓFӹci[T{ Q>l QBfZMi?,]y7WZԴcOzXs+zHspe2~؇3-cypND'l6#SBh3E8ׁNQHg}jͤ=t,|"<}]ޔ0X&zʅE8 8x }t45MlY`lwð U+a/ٛLsҖb⾩&yBQPd\b@f S rY,d/Qqlqhv9dYS)S24Uo ݍMVDM.W#&a$M?"<ޱHH_P0fosK-STՂeoIP7elNLJS)Zg !uLeC?ZG<ŧ Q"TKX g<.^26nF#hP7dpN@˷s֚/l`!SM~AI.kRI~|*/Yѭ}^IbEvߤ(0ӳ9VyЀ7v~ċw҅P4_Yl"A‰ PݞFq9?|M/9V] `)b?_‚ ~dT6{^5'8Sbu ͐/GeO3΃J9]$Aw[ ͮ,I Ӱ;"O1KߓRFy ׉עWp뜝Cafuh̾&AJK/"BpMS;ʾw\9Tá9A(y7Oc`WLAk޴ ^BPq$%Ĵf|x侄'aWK Hp gYكw7Kr+ $gPXfpQg؇\ Er(e5JD*8B {1,0N<1Up/(em,!|́{)YXr ؊a627(Ol%>eܞ`,;ͣ>Bu(Gw!rgjSs-+ F_{Y!a_(Zwѣa#J5;n\g,0 AT$\@h)񵬉=g=}KSPsT5{W16d%8އ3y-0 k o|Gi:&=x[DRq+GC˷N[r/+{nAW׭Hf{B_5YHCgI+m-IL8by)\ˀƟ⏤p@jͺ~Ydۚw%H7$,Gq$r?_ePTF`-PN1hc8RXr;X[m_JVs V:6^xMXVh6a3Šℴu^fKW 6WAz vGfڛũ*Pٝ/E ԝe`;/?ܫ }O5 aAK Su;XӑZ`T!P?5 g_G7gZ_lt>d䌒%n(6o-+W[{!Z.$F mvi#D[Lh.8!QG*gs2Q¡*t8r{{Vϯ vؾQ‹ < fb3Jp~F7PN6A . e[+{>.sOAwy kei:se2|цꙠ/r`4j;(+B_ c_.|xym1 ,/&PKe ܿN'}y]F wXs7AgؚeMx`d ^"{RfHS󺄽KwgMA* C {dwMir8@?)ux#TL6/h`?N+G|1zBhsL(4 dLQղ;oNNף 'yfbSd{ip%Sp&k:&hu!0Q<,9'rsT^NUfxJcO0bn5+e]f16?`묭~hJ%+蒙" 2H!%EAω=fB2;":wՃDLOvFwqs3W$_=|o\Q}%N a'}ϐ辡N(qK_Z٢=%9p ],FG/bʛ| rp2)fmMSii š 7bYApiXpm៰O!!] b.re770t':7د|1r ̵UXL 8ߌ It3ZobH-}v@Ҽ$8n(-׾DtڛNի~{s=AcC夅Y/C,yVo"F<4G#9^Hٟ2.wH˽ >D2mު]۲A8`ʍ{O-Ho7H|;|z`8G'Š t֌;]1 ?@jƚs6=-( m[~d.V SہUPasVϏh "R0;g`P%NgU0O ey#[e( YUQKXuͮ1nO͘w|y<>V&Ԃ i@%}p]> :kN!]@$Q^Sq|\ZquOL,4by {{6P"˵wǢ!LC#Ѐ=.*ZavW^> 2-u{c XNuİ`Z5*'uV6rYn00^*+ѫī"t+?cΝjX?_EG=ӘsKv+$w#|E:.;#=[ˉLǐuTų;,mrY2 30fDRe]s] 4UlzBZE]3PJG`xeMeVAWMdw=ĝ3b؜9P"N 0  >v&&sMPXBXVL_T]߂59^8`^Ėʇ>g&(C-:u)PtqZ+gdQPB$ozTetydPY$1f6?4 Z}gD@@}[% A<0nZn |n7u(AQ}3kMQ=lHBX[5xkH=D)m3bp:zzEq=إtsա\#DWFÑsd KKsIfO םsFz.< ?Iw4D-XFGCLq#n€6A|u EzM.;`,Ҍ&$TO5PЇa|3rYٕSp}~ ~!QAa_? ע )1&*P?-[U3vĆ"cUYBBߩt@ z&B2Q=Ȯw/n^Ml%n YAܐ`hmRR?.RQVep0>b W icbcmMwvdɭ6fʎvNnBqF+ˆUnσEAWiD(]\b6fوؤQ75})M&-A%١bLl@rAY-c^*oY+jiÎ"|Lf*j,@~$z<Ĉʳ"]i׀l G"r>ж<. !Y{z ay-I%gDBD^74]l} XfOYо%!b#IbMz^)wkn8_/>d gV$ Sl!߃prTL #W[UcdW;z?#{k+ cuBd) _wuFD}ڪ{*@t233v;1BuLO1-x!(87(d2؇i,ex >8ٳp!VЦE2 M7m 3 \:Xך%hj bkpKV:ڔ(Me:#m |RtT @6Q/udFP&{rT>$K-VUy*:V0U5X;wWR+|Aɉ1t*qAMPX<Ŀ<[J#r2xG&֖gqIn>ʒF"~ V'w~w)ȁ_?2**E|(T4ue|Wr\MΦ-^<'b̾ n8c7k}+"C 3q&p+[iW jhm#wd lb BrB=뒏.[T R%O I.{nY Cc)},nEuQ"JTcQ4פ!CĮ& i/ -d,W̝Ѹ*{[BO nV["28s}#x] p #' ff͊Ϲ]+|dK)hJkYf[~ztW%=ᡯX'3IMc-WiيdB±5OC[$fB*Od8Er66{RkGiWAxAw8i' yT)2($cJpeF˒Ս,S AeS1ljtj?7],8+ RV{/1qlaN9}ymZnñiRt:GJ)Y(aFABΉCi! +Vc(`%ވttgh H'u*J@I Y|cIBn^\I~§`qW(̎TO^ػK*^}{ݕF"Tp&a\Sݷ+׭l?(] %Jr`#&hI^1yhvБZ8Й~կSllgVo*mJfO~:=g[๩̳9&s7@9tH;H;>Dň 5=Z[F6 ,Y׭;\:pķhB\ԨJ[ Afovj^XcbkSigR0kUI$s*pɽL\uGU:ܒ5W(?oj3CP4 8vl–#pk% N|6>09 ;#>Im$:g&C0P05/ 7"HH$ok{ 9ݎXf-o 8U 8P.W[ϗ؄A*?P3޽h6UrnEww:ҺNզ.vkv|R6.ߨ$,"3mA^(z9l7>D%>@o-.[ (6a.]knQw~QV\biA|=+ FNMWJFCaDH&PegDd+N(q 2viT'Y_^Na[qr4D].'[҇6|-jY1tho~iN(+6Elڞ6T!۞}\ p\I,܈q6ޕK6վբ%!=uY2B=Q PGo?ʾ a ΢hʭݻfM{m DVb.Hm|1a=Z#qCpKj&>P OboĦ e%-\`o8ß1w$,sè]K;H ;/<ٯ—\a 9{чrl Tp|Ic!̖f GKy{RnCmgcڽhs8UĖBﱚ r~&BS e;磳n6ɷ.,|nhsW*~W0ywh6xsZaZ RS+g;GZBFndKǥ#W@o⧱N7tjcHָg 9칉NBXU] 1=.uSA7+&.m21@C>+AJpF'63aE Db.k,RmJ$ٲ',?<'4;,6,7DL$26 "mZ%p)j\+!?1qCZћZ5sj_3b\BtElȌr.xhOK>o6ݪ[_ʭy9f+09B7\z,= bTJCX+q Ģ_3u֏nXi݇d -J0AWe#rBC=<4 ¼(Kz>5[tW ]py7u_ץ@Epɫh*o LKT9~.#,pFfrrbX3>CzSrĸgʌ_jinqDŚ ӏ-iꛜ]"W u,S߉HR* !ߖ%ֿ ~hl0'/cS^in#M^]z鳢rNJPbd!#ng.z(h4evq\VR`wGX^{4hD;k JPqz+Esf`* yzy65L^X"jk-LTiwɠ% Gj >k\-J ',)^oc`._;6}$U"5qHʸR_ԮS^iN!>ءxvhtNUTGCYҏr *2/afŏ攧AKp_2(5.#=js{uj5k_FU O s71E~ZB#}tbh_K9o4)cܸg&Bkb> >('=)"?>Q]UK`Ԝƿ&v7^'۸R;ӝ5W1OܰA6 -{'\Odo34+!O@=bzy%j88;o ȍ B||N7Bn VFgL|#`|3yD@Pl~t0&,,} t}5'aD;h'%,JՒidI]-oPљA rˁ\֛+sg!hs6QFpy1T*dMMC'/H+(s3=yyNyU.Fvٹpz2/̖bƆEZu"|Mb_AMC( 9]+yܵANq<ȉc RgQ']'+͐kvუzژS & úo_ۺ7ި WkPU8)Q3<|rI+󍴦%aLT]G wgBNPZ,&Xl:sI.nɨα'+ |^I3tu2q TCZϰ w!k 5㎕L'rd/,~"O*c><7v߫ݟǤt0”t[ ̐Zuh8pn!?r/,;ziLH֛YM3>z)TkU4JӠڡx).7y} %o| UA_ыcW#̀jS0!#/zP(cRfnx},;M*߼EG ng͉5xЧ}K y]!z{@αSTb5Ju}Y9Θ1/aig Pw~kx2{; u^2`חʽ"m:*̤1q y44I!FPjR`vnVjL3uaUܖ=kږ,Ml2a+koptűqrC*|[~U.ɓh/xLmb{O1/EG=?MK!Avtut(mh̗)c SCy 64ֽ2ie9z6ݥ羒]SLnyҲh΋_$98< 0>a~yGw>UZF2g>II^bOFzɿ98H\y5j:#KrwŽ^dOJ똈i@&d2jF phbH~3r֤ riX&rW4E뗑T[l/Ui#-fV:se2r V 2Ĥ'fl\bݘeaozbel"}q6ݠ`Y Hg;1 gq݂NR@q=Dtȕ?'|1O |ݩ.J"u4)s8-Y!(_%JoY׌oHP[lꙤ^MY.ZhK 5ZۀnR k#[Sל|e " '^G7)DP5\ ;NwK,Q;kNIv1g^;OWAvNs8VdqJY$HoV$*IԹIReE VO%c/M1nͧ8P06vA*paRظmSzsAn4RR# h=.z  r '8kV~&kBظ'_Ό~N5d[{GvY?vYF0]j ?PÚsy C,`[B8Upss)ЄxYh^+^"_2@6db6I- TS(ΐX \,DӧzwNsJ$ kKwZ0ܶO#H/qJ?߷sDbKs]`."1)`_**T3Y_N8xju~S:D -dEuqWEIԶوKWzR+v17!L`}%lj?A۔1t;jqG_`nWAG((ħVs;?n 30&*q-+k4'ׯ|82춶bІSҁGo6֦YZ kK $R˜j)>M+[rB%z>ԗi#|@ۙ4 +~;&dZ{ǤQZ>4mcwҍ Bm1  8эQN:Lt-1KBEf{諟m)Чc!?4=K 槹x^91DZKeaBNR 5\ky? ogd'O %gQC`wT A>xxd`<Ԯ;Uhxնd|.6ǘyIoYONr) Fh ԀZBK1ӖѶaW6!JNpM/UBO3>"B3c-u&[~ܷOE'+Vq'*X?ZG~U1SeAS2I,/o5FW]^K}t[7b4 ֕ƻ@|UL)'feH`H P&2"";X >[B>N }EJMkE=lJ21=E9x!{|PLSR: P&6̓C߻?DL=|\bk.l'%LQ ĸR 55ÖqXƉX=Yd+MwOԎ-s/ojo=Jʛ$񿨱(7ebӔ`tjRp :wrzډ$ۦc7c,eLcay0gn?mZZ`l9"qan!~ΧyEY'Q;&BBlT@v,OR t˺k63;WOB1\fGE|j1PHݦpŚ%"g2r&q^@NǴFQhSDr{\ٻ¯zGs] OBr[FQb2LH>|qiaP.}?kAzkS5@;k c>M[];e9)` ~טfZ "?T-9btM{+^ d|ɶ5vA,R3Cx40"YteInjOFUZ wU݄ v'>hN/_!< 2I"f3jS匂?f[Hp [1_:щݹQo<Cy0%ّG.:xh^$5˟4=KU%wy K5jq1Z5<+Nv r@0ڎ }Mf/;67ΛJ(аtQJ1^ZjsT\BJoܙra:Ei>yIzslZK ȯno>\aB{mhjDkO8u/ȶQ1qO͉7s߲<ޱةg$.y|y'*>%*28i,W[7I%M瞷V^/BF}: 8^ʐ_bBrHg<#ujNF6Bb`iU-=kY6% Oə羋=}7Yakd]lnPf"zSw 0T!!$]b ึihҸi94UU&.F9jռ ЌQ| 0g ?w* -ws hhƟ(d.qZ\3LJ0]T.rx34~-޶=+R08v\l j[og_TIr@ Bxba؞Tʾ9`J4z`LǷ;vo#ٵJ7j(^h<C l0&vO-cƀ"EV4$y/p;ŝst]9+hx1y[>@bLI@:nD3Cuk'tuJO臮Yo:'#MRy?ͻV  LѢTuzjGgPY d8e>iTn.dְ%;"fX9R)o'y5rnh;mRwoK$2괹QQ$̹qP !>"d(4 ){vLA:+Ap;KM_{2Lrh"_Zc DX^stn 37MvhZIRvu`~ K'I[~EZ]P! n s3e`CutD fJc"5ʻ`sKy&dt]Oyi$^<[= ·¢1?0[@` s .Zg}Q.(J\qz`Rh~=Sg2^TVJRρyWg#Z3LEWCG M{?p}"xQ.ɨIvUrJI.:eb|%UKA3O n r{u=U8#<΀3tg T*0x#V;B/c4_[..y8ߟZKК%W>e҈,KLq37 /Ը Ǖy)ǵ謳FW}m>}ݤM$0ڦ>wb:f })T.`)ak¢C] D8q)َBASE]+d˚)ap']f;Of,J^֩_bb{,6F*L͸00HL7쿥^C6 }#Txih9luK:^\'ϟZ.ck_ 4ړ4EfNA2>7$:H&ōFiaqh$\jI\G}m/F7v tŀDIi0ZaoKH(QUF _ׄ0ѽ؏[֓2ӯ:-)W_e@0DVa;Q(2V[-WB$a_m+. Q`Ն]՘T xjp'SZ9F V 6GXAdf6  ulguAwÈgSgErʀҷ`7I.uJN۾ZVj)4JI6p4O(cj3K6̖ڥ~}잖瓞a8LY9їkYs)d'0?"-˹:8.O(0> t>+%͡wl8OsaxŹz# PbpfQL zOFknты&D>xgH(LiYԀBFX)>_j}wf ȯJŲ&WK'P:qVzf+>uX։fWg$Xe/Gpr+&(ZIc-mU̜vr;&MfmUm1U2T4ܡMWvvq)ѻ?(A" I5!OhQ5.qNy9e{"4JxIE;"MVqYzn XwY#j-"Gv =T;ut7CSuθl+Ͽo>p6nZʽ5y T&cTJ^>4H_zöȇub量g}R {;|ֿ--JPixplɋ 0͵ʕFPm*}k \cv~hqGTbM(t` U4ƹ<.AЁP[œ>L&׉.4 cʀo!$3,ut0԰]9d{scda,.6yt˷iaп%m(0gW=T.W"SDۤe-#Z1l-ㆶ d9AآEA* \"G "F\l sOn$}ȁP5!}3DJ"I7~>EAK5P2#C^DWN?#vmߨP࣡v<㮝nhMs"ncum9]N9/XYA1%m1|ඍ`(. ͎Bc/dSw즰LpoOK7sizbuj; `RS [iG4~rl}9@g©\aElӁH̙VR\xE&PfqE/%IDM׽)?  (̟!xnWl2*ŽfE,߹-:bP#X@2 ~,>ND Ǔ+#d''C'Wc:G9 LFEPz3ɏIYU88·T g0\t\ZMhˆ'U($،4W]ܿ~wڧ1xΕ?c AYfǓ"73k)~:C7崟Eiw8YY?vغN1.aZ3nᨪ,nm?\.`ѰP'|65\Ϯcq|_.0c8A$WxLJcjG8un| d Pnf7r~V >zo +-%QnjIFme*^4 aʟ!d鹏g\a>Ƥ`0QTp }czm7ZqB%'-kWiMu,ƜnVf# AXuTɚ `*^dqLNBop7'Wke@;Q- pE\j-Q'N O$!JC/ɍ&#k65cFqMT &F:WPfG\7ŜJ nYh#dȗՊJ"FN>qm4UEheϢ0+Ӿ:lТ>ţL鷺ʏM2silXV0}O,WO+|w "$IYFJP﫼#0;"*N\5'ٗi.vw|ԉR% ;ɲn${ڐ8~CnG]5/F@>6dCƗ"9*TPͰ4hI`?͙nv”ыhuߒXK_ԟ(1IuF]TJ<) Wi/70 p\y痔mbty 00LQL 11\>1 $ K{3ّD#Xo6nW;l`~m+l-LV.>oB؁yo=<?'ct|9C?*gٺg,^tnlg$5tRϜ b[uzi?%5\5{ f\z2N!ݼNF BY93xī$qca>5DP>cI:f;j.^Lo C !Yܥ\;p`ȈD9Q#$ ڙh,dլ0zlf⇇Uҗ 9oo4@k z,dtw.^Q6ճ(gk[G8TWWSI.,8ض4m+SH,CxbSpfSpZ_ʵ`XBLLDwL zu!>%Jkx),w[7S c>?`:vFIZW%>fM_CfP-oPeJgI愢lZ0, ,@]:l؀wzVUWӱ1," 0g(٘_zv|uTFT&0-ӆdP"XױиX_OeG0D3.ŌG&LV x#vW#t7dE4cy5P$ CSԄ,)i0nW.:o4 V]eIGadA5DfkW' R"@ypHU+. (7.HTPl8fyTЩKDG鷉V9;\aYB44FnUug[0B4WmÃFsBjZRgh-NvGh+~YPC8pཆrǓT[N̈#0G)AkS5u0t+2K@*5/ùfI*یyכ%ԚO}!mg-O3{fb5:'` x99,,_C Eo3,.;y#Ln)c#rlv(EZwj8(Q3ou@H)N1@.L=:;y?II^ٝTWxBer?sk"<M1h r-̅r~rZnta?3R֍fU~}k+tjfJ,Xeei*(jua}۾?0Ţk^#?ö# ?O m/UW]Ɯ=?Vto,ڹdh 2Oۺ;2hżclњ䃃y"jj禌յ!e+н!X` X 3d=pՋ`X ̵\yꂟF%n^c.˶{Ġw!/? MybOqy\/m1+&iVA5G+cHIQQ!Kpi&# \TcPӸǯ(3ܣhgRVގο~DV=fFeZ!g'BmWYsGW ̫ |[8`"S-+-ſ|{DeRr ӻ v "zU/%1M?^6*+~2twc8YVhȒv>T&GOM_uSY)NSL=4\͞|UC0IK dɻp575Z9f,KDpsxcoN-ͫ?ҩţ{:iYX_MHLv[!t7O0M<< 6'f2=r#fM>2S묱mESlF; %@IXEZ,-b1m3"Wz5D:x9kќD槚E)߰QzWCg@absl)}Qp4i)0|1)LGAOSv._b"D]G[UW _D_X@`Z2M੹ra[6׌.WFdr2na/qtczE3puVu΅ @!S8"RjKR-`RJd@?k427TSF9 T aA BEVK }26 (]:fb>/@ zR+t4b/ R }4Fx;'vM)#ps5 3,ܦn-A}L?DZ![ϧ]a`N abO(QVlI*ôE+btqm<ӎ:&-τ^oQ^f\AкRdXT:IM=BTp\C%F}ԡ"ۀ"!a!ԾR*GCS){dyx: /+qhſ ^|C?}]!aX3?cEj{b",IDނrJ[5,ܰu/R:pHF.pV0hLVRi9,[>ۡŵh«$ HEݷ4J?yHPd\mبV]f4!"|0ީL#A  edHx#5[ MPRSFECKm {A/*lUx}*VAH\{<#B@'b6>iN 2D ap`1X*0Y$AUqH2 Eτm|,xvގ [fߤԒ(7x:$}K2^(M) A7-=1FCh3|68 n8Ë[,R tjٍjAfz 3^ݰx)ےx]0%*Ke%;&KYAt!=&JȈ T;[ǻ|+$wQb\l{|gZ!E ޝ 0+ }ڌO<S!Y.00y=/o0TxdZ(~'^/`yPc%E/1m/wxqlÏG<((Л' TG*V? @]F6V87wxP]3 0 Z( %%˾_h\Xl[qD)^!,Ed"Nn[ /BQ::d>jH7H_S?v' דGz=;4;d>Qm̬\#Ht-K eEMK\`Ф)4c A}KmPګ>᨟Q[5jm?qA9T vghe\ Gm9vnr8B)C($L;/-1v^ö,B - šiPMk9?sxO-G\֮6_{Ee.vdfL~=O,) d9cڜ¤?ig3OAyHhXArCUKs5E,эbsMהa6p^x ,Yϻfy㦗Ա\ Je!oVx@^GR2O8|j^KC0P߉npA.@DBD=a}C(yo/vi-?V7)Oǁz4a>9E<m?l~ἄ[d:X&jٟ*Δ (?9?;'?|Sg=CdB|@mszx|a/dmJٱvK-ͩF S<)j lZ73X?>ч꘵#P][Jnآd_٤ kO${: {R7K?C[ĸN]Z ." !^P@viP޾74miUL›)*K[+\?6eDuT (oɠ'7.n/PRB.auДyƖ0ܑEy) 55,xI;Y +&{2U`^IJj9x]J3!487;4 A@PQl9g) sxT곭kk tg=kˢSf1-f(`eA oũ?dudFoą\vD&"lV އNqI(UHS~b`^ЊvܡBsix,};{) 唸8d,!G2+YrR@+4!gy ִWתlrs{IPtXBMȩF}ڎgFκ+ɚm<Ʉ95Kmi2Iof"iۺ }&g@6ɈP/Xܠo/.֭NZ]Ax- ND>hmBoAFy&~rg̸lkQ.t* C j(wF%*bj[n$$([إ-/4@(#^irufz-DxqI3@>?CX#-gngQvi2?feg7?w#*v-: _H뾑iq;%(-6 3Sy&nm#mrK~Z\9J?A6~r7|S3|w"hj$M5Ts^.[1poȀI!!9tTsS: DzƏ)_L4a!{yC6IT=M4]3SK&(Pz5Ӊw F!b0, Lx6GVf \J_}0ܾIvүq%tg@[o|js?N%/hsDfmzg@ӥ$|B$ň3HG.kl^ u ͻ/ h Rvި<݌wj!m=EQ>咉EٜTL[OmU>gc];iQz/5]NKrO4*|oWBLl#iM:3ESt %fi W 8t (Ciw {Q1P17g{H+Nf;Hl y"LqF ]'Ps+}mjOu\[np +XWJ@p&3S}M(w@b)GBg ~ct9סLPI nȃ"Ysnh|2W`nR=ϊN#КqNj 'J!i0,"\/V g_8Pz6M 8Cfm 1P!_lH~8xh~$|4d}`.'EE( pr5[]o5-=vr%&n]c$ qD!r504zAp^hۓ2&Gne75)>y:Y:IdHPwҩN:Bw\9ۡM)yI0?HYt|H1I)ݺJ5噣-ц6%k-?&_5:b X (usV_%+xgۨ5#T Pf$"xg+k\mQ!|>.9[\SÉfPq (:-S4%8D' Bcнc 1pi`e I%Ǡ.)@("g]JӉ۞*-ysldƂ}ZWI Tt;0\'5`:*l*,Ro]ᨢO$iQ bjKKl֢nS8)cHq(h&)#_+gQ`V#G e/9b\$\1ƁŊ >k VI4p4iKI6)5V+[yA uSoAYbF!uv/rwTB3ziߟ!Nة>I? {t:@)uwrb/6+[e]g:揽9 ,?ȴ)ᇔ>$'zyVmX.8@f29%6'TYLrRQi\55H5ũEۋ,mMK`fTlƳS!2Lj09hhUn1i#:ڂ|xDCٴ2~;w)$400/1nj?]^"8nV55c΋88[v? PtE<-Ђ*^JH#A˘v$,9YKWV7'= #!ɸJ4o̔סRf+T ) ]pi+YNϨy"_30o[n Iǽ\h*z*X4 sœ@zHy?>c+uGTCYzOHv^2q4 |^(w)3ԿMI;wsno̱ XpOS}MZvsL0dX &49x^hU>% bDQ!8_2Wbh߬` /kiˀs%x`^qg ԠEބS-"DHĢ|lAGqͥrvB"[} 1\b@I7PlaoA2?9@c۸ J]N#gD"QN)mWk~kGx$ H;Fd qPR'[ФEK4 _VS{ygU2Q({x82ϖb?a$;Y131GS`s˖!nJ_xFwX/6(sG%U/dc~y88<6$&s+SVQTAdjo!,p#-ă'^(G^ʾ$ Ӷ VؓTJ7|Fԃ3ʊo6U #E]~_vG*)QW0>'|cSK#/Y c>Yɂ7yџ`!LaBH>U3 Vdˌ;V(ɝDS- 缕4@ =6^ gPXMqW1|Zmz0`"m /UpGfѠ;wp" 4+C=ϑoFH&;q'mZNJ^ .Kh@?Ҫ&jfMr٢*c{w4i6Dq'!ߟgUz|rVJ;}b%&igẃ䆕0x,5 eѡy>yfd3Hjt2dJ& 0o| ǕTg&Dge <3$+z*A@6-͗ }1fbꆦ85bR6qe%drXxiw@}F3=]a(?KƋ YJ90-Q֧G+]pC :Yoߐp<xZj}@vID@gZs>Lj~o*n,aҟ1':%pG[c ÑR ax =Ji*+1G0 &nF~K^nPRu߼|Q!5u"-I_v_`ͷuuZ" ޾'|S!C"@hUm?N1\Kvh8m_–)<%7xYsf1|>%b.qʲ?Et"/WH y"*WgW֓V7TGz,MtH&س&Vn !VJ_v YA!ದǺK $6Q, #adOKoQ-~j[k{W\|@^xG.F 2g1s: Wf^4pծg:[]UwaTڤ2~cdBR_D >Z1 oyE}%Q%R |/vLGQ2>>4A A#,E#^ aH̼%Wv3o@+XEF-cH{֝"(Z-Ayh`BPQ9r|pXouKK~}^ĪPn d\:䄤?^l8ˡiA5g,tp̓"Z`>9P19V7"#yRB13p:!O`6 Py}Mgsh^}:bq$+W]WF8>΂Y'zyNC>#νLOG\/YއT|ZBAc˹ͻ*,\PrGVy(LZ#{'6Zi+>t8-N{_2&9o_xagQfRs$3_gQh9X"WJԠ$(E gӬ5xe9RL2ȅݪq9}/&1ݯR׮zpn"慐,g|ʷ;9 J< Fs-Y5pP%CNzL#ReeSu<݂⥝HlwK0_bXL_Dv(4bak 8o ڼak z֏9r^V9}srRW[MA\*W*y ċaI̳CyzIxhB kjLw-+J;.ry9#7, EnM*ÇkF=kBwv -@ g;v# NU0]E=^D2"v]1@HDtSyTk ERDtB#v^y7hvph*oTW@ewu \KʡP }ýdc\ODN{uρBRU|S5ʱL%IM`2skԵh{pP%W}^fln6rL:`ƨ{զ15d唽` u0r:"i}>נJ[f?vFx!{n:j~FX uC`,a*ӗ*]*JiݪWit}ũH>Kx9@f[i鲸[!nPĞ՘6q{n#bChr%ꯧ^^<3ꐦJ>kmSZ$6Ub&H:򵮇zFu*'SLo =_É HĢk<%?mYtc/|{a 0us,:LJ#dϗfHn 3ڭ<7c*4|BȥnZ7R|]9t޴d!Q$B#[JP=Ryz6wc<߷ӽ 2#YqgR9_l)߮babY!ZBoZԓ+nJ#aFzZoߘE<8l'L#Qfȑ2FS j QXO̹d@҃ul Rd)//BEi?$\`޳B%&e42J9XU7S7yc- Sǰ+-c%  feץS{ 56櫋.JBKdut[pd`}GR!|b!g x~ѣ ߻"ܙe¿Bs+ FM0eF(~])'R % /2 ϯsSVdqjQ=H8n#맣}ZxcR`S $|1r91Ok]!}NR ^-;kN,>Dt&0u_Z%DꎠJ1Ŀ7B+2ឆ܍ ^?|Ib4DY]]z9&c( ]!i^>k\7趶]mZoS[ gvbZJ9ZÒ|L6#~3$DYNE N|\Xa4JgrCTkժs'V0D3t@1ˤ~s[_n.>WIpXL6\=Hk3+&ŅRMHi s _fy^`"e.!Ú/ڞdzZJD:osnGSJhXl M 5bu@EDB{C1) 9ٽw w9"v>\Qiت?aZZ$&'^r΄KGo,$gтO*L$5uRiqɀ\:u8 赃TH^~)ޔ4%\VX|ӕI.V/'^@f0q~ɘ;#nlZK t.CG̃(O!P Q J؁ފ'R䤻xHABg!mEٽl!90U7H9?h)@;߂qɅ`xiޔrfO \^UZ0T7 S,cYmƐƚRi ;d惶ܡlOm)װZ>mTR]҄iQ+cJ]As@Y(=$ϟ-v;X-0S+ Fm9Q x+`Rj[ Mi6oynMt2/2 Kչ{H\dDª'YB`cDɥT/)4[`Κxl({WX%ƨ=DiyOvbkS|oZ%:`#!Uzw䷀ pWMsi<]%|BN}3?1C2wZ:{>>ØFtghL $WbV-Jk#@=%qB^R g:So JB=iVN&Fzr7'J(lӱAw\Y56<-\0g(Fv2ڝX33ڲ{v2j7)$k/ j;ಫxKG RPLa $CyJȿ h9Ub?PsOʐu|, %Гo'2~q  g8gN3T70#W[/]:ZAfSp^a)J,3Ҍ*鉰:y}TB')p46 ME(Ob~N 䓧$7VaI}fi><P FOTb%X݃#my{NxGD9?՗)cG \.byw)LongQ՘JV?E6ͳѝM{P}{9Α ,d3Es.Y2iGF)kq.+6@ `Z_@Sm]Sۋ`Ka 6o2ZC)`vKߵ.=0J1 PBn ;V iˁIa_zI;OF=8踢 ̨ ![v`}DŽ{( `>s2/92xciVm%L,}nC; 6?_$ '[uű &1 /\ӷڟ>jO4U 7-M$.a>%HW2g_G}%Ж>uUydR-hL!k7nv,\3Q i{$?l@P+^~{^z @P i s륟Blvk,h ;=ĆcjpZgJRǑe{K縣 W 3oMk{Ͳ}T(, 4 r; aBwGBגﭳpy|vB&@ip]:+WVjK&+Pf_ YܾEBCdNf8[j?~pҗ::JᶸEb~K{ SJ{zkMҽ>cQ'0#}4범]+2l0'R)zjXL$!bfcF :D6^&O-p3?R-w@9wʣ`(odU1r2ȣ27j+g6yi [TMM14z PeUCH|&Lչ=+^>h4)=2:kng{a23V T8O3O쀩D -pOoҲw:H7H;HYŐ{N۔s"We7t_nD <\]戼g=6M4 -vR觨-WZS0O3? FFͨ:(N t1IZܔ1+W+ڲrh(w"^h[.p=j~%h9Чi_Y%ޡVr 惲,:?,fBiX@ ^>#Ɏ:`-UD4.U`lt4-r()s-.߀@J(9ytu wO&uQfۋ_qc`Y[T䙎L9F+#k .)/VzН/7RB>rά.q;yeqN2DHHK 0r߄~x2o~tMP\R,>"!shUX 3DyzڈDh_48V@/*K+Ow9ÙU*f %Z0LK #5-S>GT7T/ DA7XZ&i}1@,}맹bQW,Md nRBn%?fxTtA>$ItR)i'߀S\R.mL'^"pxI4Ok*B̅{JpdaD@ĉL߬*ǔMЖy&"|8 Jkp QHrx^1g5e?jd}^2VЗUoV;]<"Nd%wOWJN93d?/Yf$5kc q/yk_ϧG#PO3EKGa[, f!q٥2\ ۷EVr} 2顛;fn{HH>;崜!lxe b.\x0$(x}@ds{*_ M2]WtꀘG!l 7j9l_nFQDʧR[U}u 巵_8Usc+l[r-(#|>XcE2[i;XJQkKhSPXxJ=48CL-d#cpq\U ,0A68_*nQM 2|h,׻?3R?Dy$ρsiD LłHgM"De xsTEW8+~)j3.i$DsHnٺ/qKQPd'Hz/`?EW^ -)ˡ~:.ՕXr蟶ȱHfSIMfy^ǿ{&+{b\&(t:0< >hʘ|־ΨK*gz7p=;+~)kdo? L-`0/ߖycjZ<'3n S %;醩 ъ&c{z|ā{sm3;J. )46a_JZ^͕# [eCK ]m7«>;̞$izئs  e9'w_y-_,\b4gC޶|F?)XG|TW 8z볘 9݉k3a\yͫ^`R i ]AjC3k#syVλwgO Tʼrio!=̓vy/6 F(2z$s5)\;>>՝Rfh(AF@Df?nEjB:8aSVu&BAQ n@,ـ -fŸI Y~Z ܂m?6!4;MbS$H*?̔+Ed S"OZtڸygr3OL>䒷 2bqqyJN1+mB8h7;k4jAբ*y./'B48jqb4j>kPZ%bXG! ǯ;JeAG7Z=뻝*b/{z6,f/>vchNtP2lO$[,Fmؙ [%,fCN' 6ziF?OOX.p Rʁ?Cmvݽ/E;rml[*S.#Rp jOћz&zwF'a;+mkÆZs!}Y{ #@ ,*iLB{PVZ&SD)$U!`DPFźP?߂;KlV%s]oOhȉz2a6ۭ\oQv[]Qd!mW)?8U.+W愍TI]CL]^cBJa76]MKNw>[WTJ'!튻yJ[lk: (qXO B\pUp k:qn'nRf ё*aUS/yy8K0QGMiI-Ns o!=d0Gl;"̓* OSofR*V^udj[U pg*gɒM;7Te`}o}fi ,,33Tm9(Zbld7-睝&Q3?ع5weszðX IX`/iЮ0IBEԛ [S!ҤCc1g|Y ,'|q ee+_X|g xCT^RO\C({X= MugΝo6@v \NAN.r_;}r3,:Ё1[CCeT9cAcedFYMi&,bauIJv!~WMN{QXqQrLp:d4vXIk=+^ O^&-=yGfp%p-Ɔ4uq(XTxpYm84u!QdnÍ^ν9AϖU$lQp|@}+)?"l-n`mYׄHWl )xKU@Ńy' a7l=gv3 CHfZ7+`)`s/p> @.sF7LmIgkͧK 3sΏ%E3dz$U'S˫tO H#M aCQ1f\q_o-̷w (v\zwK\U݈āM66{iKAMbVP`[-S>EuDRr^X&C]g9Y3sȓܭA0E@R ?Ga'>v} 9<# T$*/^v#yMfBu9S'f &C*ql9$ L)0XtZ}O&RW9en+?.UHҾՏ "(o38yqƱ^f X_-cuLUmjM76δl-(Ag3'xaH_xU3* C舦Hr.W0V_jsU2u+S>J+<6Pe}cj0=klT't\^fnMGc4H[?S+p7dx+D1PZ7*Pj {60ܷꚀ˳MP;evִWrzH#vB5d]FX$'K7宯a[^/gҡw7ӭB`h!5߀pS ]>cX\z9)WP16$;KNVGpnL~V#AkFYk)S?ժ k(iBzoCxyvXxk_ve=%Ϻ4nȦ (pHp#j\9M}Ce.elrx'bj(-ˋ$9\KrY&Z0ͣ@+s $teQLʟ-m&)_ N#3>2=^/o%=]`.BN—C'-1t92}.:;XBȶ^ :ԛrﷆ K9JHT՗0 xI wkulLuXҜ 87ž~;|;xj~+%rmO^a)+*~RĐzB?GMg$ڢ pϡ.^3`{-q yF*EBW׍i86d\iLhqmH&l@wu w"nu3,AL eZv ,|u ;5ަ>IliPP ."N^^]yTfyqeu+%d<ʷs}y0xzmj6%ELvvCWQXɰ̭l;_Rw T[?MC3ʓZ!L^ER`,"q X5 d ug`[-+B-Q:-aFG0{>֑e~\XAkxlW97OCg#;!Ԓ/dNAy$LѰ=+t.1E)a9Yrod+66D 0R52[&k.XZxu]bBl%ȧzV~66B"-3~{P0S7t;k4wt_TRq.澙ʼnT?ti4K|(k2m.+._QHܵ9tuIܛ&VtZa Qzڨe:YRWuF31;Sq?^$QT~|X̪2ejDŢQA l֋kfϗ^ H'ZVI 5ٸt/S,ߡp9lݡa+uH3|r.v$F|齺Hs/ٞxd%iF:ӣ}+IŔuڧĭ⹊ڕw#fˏB4]t #fJLOD 4@'Dጅk}*H$Oٸ_C,=\z/fKtɧRu7l|JBu%B_v~܇@H:96Udz jaθo:)sq#bª)¡t\cYVYPy XA(YRL.z LMf\@(pŝ g>AB>Gz"Z2%m~ FE##'q4ÃS[<]WAAҜ凙#k$ɁcĘc1lY &MwÍ1|y#CXh ⍫ a>)г"D?BJ 1=r `h;p` U_QB!{}uSa'jI@^& vc:^˖ <__iZaRO/f6YM)lO -UMGלmU}yINq7n*dBjhm re0#*|ۅm a(]v(~7$nGPͺDCRۢZS#95Q$7S{`}[[dҗp%XlMx3i#Qz8^E9 PqyСJ@rlyC+~r|{KMQ<`C0\j?zf|s@$Y5/5Ax^ bSiNQJ+s9ip8Oz~3ǁ0j{|7C,WA&qFd,AU{4Tt_Μ112Nhy&sols4L%+1tξhі4;wL8T@4gҧPYKV*Vz Z0Զ&#C5|f47jKD y)\BKiK}!m}~>Kw|3ѢWMJC//7u(pn3_"nG򈠡z3:1+R#y=`' O»8 ^ 2_Ѷ8e3?uOc@1J,@rr1] +D&hQB5j@\\Av7D9pKkq~J(]ّA)luay+Y*\:4_ +q jҶMMD @;ȂlE?:E߽8Vv78Uqm! ,,^ʍc6x= LTwCm͆qT?3&Ϻn#3o}FIA! /qk ex(9d޹L-Mr<`R7`r.lЄu `Vj4>z * y6b5A]Y_ ]onTxگdeecݠu!VN, Xkϐpu4HkVbFâ--}Y)iֿEa` k2FB@\"atVnsĜdV뾞.a8jA8B͜8EWv=/1!lv(*}&AR1j>dYI!|ތdg9ߪ~sKŌ<_GJaΌ+JC=KX +ZdtyCLjw5ja0&6# ,~R{PSdzWw 5 (4N.{[ҽ(C`J"p?w‹81_}T8i(Mɰv.+Ey#0/n~Al;/l*8TQZf=u- ]G)vL[]<[<2eFrU)>Z0]m)vj*ꬠfRӉvD #99 ɱMn;}6Z[ $C>k a';+u<|6m+bۿd3}բj,jOl Fbev@2q`gΰ+FƂxۂ*[Z lҦMI $fE 5:'Ey e#,пJs:L̐X;i^ g c.IEK-ȉo4ᣡezCJ7[vF_]hѐʎ3mkjR\t rp|l e;erJұJfAe|O yBt 53^:8k+tzӜESn5^-8Tdk f|fѶ0b 0rdq>kx%y뇽2 ?<ڣ2iёV@ǒKՋiЧ#Ŝ LYB4]}Q;{Zp07"~؞&i/WD[L6'3gk_w[]3򯎰AE捫0gRB7u3>Y1qrqEn4)`nwFP,a ۧơ7Y2f $>/bfnyP9_ 4PPbFYW`}R>K'f82IfژWpƀtn&BޞB>&9?G)E-~cmъk/[}Fǩצ ?쾟JK#(9rg#AB;y EKJ~ặuCRVC moUYN4_g{<|):^D5Q bwWOTGrt(^.N–E6m,i85O&l'5-P->_PzA@ ܓJgJ̆ \QOgݕJ7[R[x 5$B.-^>gGo>t3p5"ֺ]H>Y%R.kP3cП_6˭^ ±y1#I!,בP#> w VE fzjE :n 38N'ݿa|xE~q$NWsJ8FZ,ֱ_#Nh4VfsG*=gH!OxёjV:zk˭Y;Ҍ{]D?6qP BH(΢J-Y!A!O~0~J'Rr&zYϐ5EDR$NiTЫfa',Ʒ^sw4"E5v..ȩ`GIi=&Q:Vm2ѓMċ,gGH & Q1A6Dc: &7PJ 2+^@2 ѮuQu5Dt(|aJs ٠kv8R6\6 AʜOKX/ɗSH!'n4IA$r9EJ洓̜ѝ9z fU8 ]Vws+=qSa 5s`ή)ɗ ("qjTT$ɗrJ$<E;[ZT-;?ech+ZiIMp8w;lk . ?-d-­h¢:]30(i):B VyʼnRC|2-NFx%1zDaƻzk8m~IN ^ V#yuK>3@# _<[f-n iìXW=d՞djd=/_A+io: n*bx&(<(Y;=TC <;h#Nw;Yx'~/)Ukу+ha+pc *r֌my`l"j=ֺ5ȹz~q!ZwڀҠ&}o3TY Y7_rӵJRZ aO1|KO5F0M!3CA{2_ Wr[NN\Q3\RĂ[!tm] X\αIE%YHߓr~e3K2t9umS<jzn po& >Z kWUY,71}Oj yW1' @j $+. ڔ8Z#-ǽ9;|qXCit'qY#~j8SFP}\)^J-sZDT+%H OKqʳOj0gt e6jg68-_IC6#85GG-auC'0VYÃǝ] zd;nZY"_Bɳg9ˡ>O> `k#( 7NM?U8]t#(/xi{!JoDJf+$eWH&CVf"fn].:p?ސ W=_D 6R %J؇(TiMq-޵ H)DdLPusPb@ѸX;eMc+ QOt9`i +݁ޱ| LĘA@]z;D5#nZ#c/+0M6m8P9mD 6.9lb${v<%rzfD9Έ@ 3kPR?)94B,At$nf bc ؖ'/Wt<᫧wmd:SyB[gdަJ]uBI3)׆:WSu}pFLQHjKcqR|@xINP#y 10De YKcJq<}dhYkĢ(& Rfb$E濧x8~Rpgp?p/l5:=Y$Dσb=u<j5hC_)@M0U+;@Srj{1O| =UƏ9s,l@tߓ`w& *WQpQ-ķ?'48&ۈՒݙk1[t/ib'?4W5Ku.+~1r^(dETSϙӰJGu [L^NS/A ,ТO մ6x-sI; dM)"iK&~wϧT)?̸yvn,6W@ B?#iڏ)\Sml\Qh7>*.@| 탯O#~lqѵ +4T{y)pfezG<` 4xgћdm $rF:TF/C 0QC xa4\[=; K拾NCh`44g eb3 i7h4A7a~,;1`!91ˇdD$ƺ8 (Fnj%G5]c :κְG\8f;dF"о{|(l4g/Ӳ X\ 𛕒͙lDjDU;YVԨpo,۔-]L eZAIXD&"ouvșžo:+vN|C7SҔv^G"G8%]{L#DQ8x7\a^::G 1~b[4Wu'Ka8B5K : {0H:Bޙkyn$F1p' G2w`}-  = D X -ˑYĭM;eh؉DGH|$@**~ǰ1Khx}h, ̀V} \Q`P/Tw}s/h{;]>O>0ƌI U><0"@+ UU'hҵF<9 \pఖwEu!gERU|a@ȿZ$UHqh//cxMoWU[Pb]>Zr`{a71Lz79UG&0TV k.7PtH)s ew#9 / PEMٙA\&H Ys5 '﹌?'AC27UYwa{EL]|H)+ru4aב`3PH{f 2@36>9yF=SG\܊݇,4J_"ඳw@hE98Ӛ<) ]GXkc j3V* =*UZz)yΉY^>XV;Ozʌ-]nNgh"~&z=aJ)f9*= ܍-4 L<]vzFF@N&fb,ZcVv$`!^V}Y $U^u!?ӮS 7Y)֜-3%T"OcOh@dѭtF= il(Z/lQ,7Ky~I!?2tt˚;8g ӱ|U1- ]YGҧʿ8h9N,I6!}-x%al|(* k(m獿Yݾ*ay?3BPCl]mn>f}ŁǕph񩀝F.43Tzi!k}M,x^\ E%nUg(2᠈[ ))kDtIrA"ؔwѼ)kgk Cye]Xƿ.'73ҡ Ǧ$~L9fP QRT'j&t8H{*u@))`zۊ~-2ܞ<h5ٜq,[\xe kgҨ*{LO$ :G~r27 '@rJӍ[OPIߞ"9|ZS}dsAWwLjXUI P&W1mR^ !dD X>'~X$>J9]wKJM{No;0[+)@vVSnj-^[ts CdXh@ƒꮸ-F<4^(4CU/Msb* ~%ךz諈C g48̀gӥ3n3cleU W _!P༐|ۑJL\,ӑ]~#YݖVKg:\ɗ l|uuߞ&@SA>M,$۝WG5Nv;m*LlkВDgb\A{%6$`+HӍtsY?v) hY%wjL6@ZniOf3r)g_P`R,K%v̇胰%U b̵ci;1( `ʜ U]f:"Ļ|Ùi=ACS-T*Ud"lICuƖ87)r:nK ֊]r,y8ۺd9ׯc[;M-,*(_R[G%Kߖ7),S543 !Kg$-ޣŮLGV3 qcpu[;K0#e +lP#+c *rAOt,GfWX 3#WqCB@’Btp(.J]87vЛh%=86/Zy"gnz+u0y% G$˖~/JCTUYl& Тj\!vs]UnǞ9sC-3v3a'#U2d*N/> qM$|.,}Wgm]]\]y6K? r^ tĎ L0{@]5I`eN;y|a/%SL ¬wmp?V7^D3Ǖ"9}uMucSGOqjl"r2=[A~L=I=3¿..Egtj;ߕxM&E1xWLҳ;`Q7A|( ;0]a/7؊/„Ĕ5v˹AݹMwoW5;$m8ľ^mYvzɦriwPOeu!} ϳ(yhOWRɩ8aYMSp錇PeMr0 V(zC $`=aRt\@VUҪ!,|xy1hPB;}\;n6v"654{z[RԬp]2C1*KS$?3@-4Ilgz8YVر#OIp,O]C+8% <inY'w1> T@s*x^6b?tnLk}zqdr@Y;:}`1fwrk7L\J O 26@ BXJ!!ol1|{5uсj`]L3P&:J12u8P(HMw!Q.Ig%7uk uXae>MFp$?&T+[B(v9![ǐ;T4!]sӆL_&߸rBsIjޫj6M!̮k2 4|Z>`KQR^;X+?ݞŊ)QU_cPۢa̫Ay:/!}%޶.#]- ; \ڵl/}A`9a 8sQɽ;3[Jbz՚m`{/,J-c'U-,@bs0f)fɋۈHIVKUxZ 0//LcR.%gBד# 6O?eI ƻVGz`tx>o؊eBnC Oz;7&VIWO Kݟm(R >S£*,+tmȾ+õj}bB *9NS{3GI;yQno ?gTqj:>r*5(E( 3ɫ{yT}V^߂QHkZ¸% ?3)!QxHjT tJ5_lFtf@Z@|yBXU5ihh],%q9sRk`L&NvZWO-E;/ʌf76qO6xEG>>F)n/7LD_9eX;5@GM[L@AH진cb PͣRkn#2:E8%{1~2Hͨ_lEQMԎ>ӕboODC9n CBȡ_6SYZ^c䀕G%4]mB]j 84I?, /{)DHDZ\P5¡SpK*>^_KQuO8E;-sZ#B$oZe^jFՀԂB|UZ"d/p%@t9Uv2X[iX`^v9*vB$Ko:4aٸF.F7!9nA: V;tB!V{.3X Q݃՜/ 3N8Zٖ}Gnߣ_A޳eV !Qd_i*ܦed c#5H],"X&|C]wa5e3c duƪ*_1-~V3 A50hܰOpiz2tZe9,A24&Sb:%q>&J2vH AHs9B X^7Hn\PWƃlsR]0uI=CtU4A0qoYHfRX\Z-"6rt+تnpbJ[bRU'vpvyGqlI_zC>UtET5{` RP QR/!qtqNܝA۷""K7ݾ,(>5J%"_)?a$LCZ{D[# "4ê"-7Eua픲_VVUuJ`Q ʃhs)DC ;X(jqh5W{x1@HiK#X0nq71\(fMj@.˙ױ%C[2#HϿDEN꒬, MI<;: Xt)uzIʪGX QΖ4fE<#! iM)V쾭Lw~> ɸX 5^8Sl.]A<jfZ]Ls3#`4=ƨu08P>v>(7F?U9J݇#)zM@% G@ow:M1B'"WGrqn?~e7slj*=|׫_%Ɇ[ӸQ9w DV!E.hUwx[ 7!C~ejo`zotuxufK> uys[6/;#5U06l xq+j A91N 1-RXI4RW.w>^(6#4Łj5{%휽UY&1r/TՉ!Zˇ d(oZdORʹw$4bá!)48K]m\2VFށ\%(|k&u1i+p;?H:qTy?}5@Rbok3,;/Ay2q az:TDߴ BWrfVFhb5o$t\[9hSkzt'L/ܾ/_O-nl`7 ʹ$M9kc֟S^vAmN''s}od{ПƌBҾ~*Vc:$wI\͔©ޏ0Y:cl 1}(}4Fj$SNhZr&Q' Ow*Zd, ݠǷuYe<ÀȪ`2% ye6mvl.#0$y$h׊Ȝe7P)MkrrkASWU,Mn%޲s~ZDk!, 'pUJwg;8ymmvwYJqgS* RxwW} q#O`teJCrKsb {cRc}@rt1|Ű'sX.rO`e!]adrMnF0pTs!fC7 5zDX9(/OQ^tө!9l}- ^] i-^qJ㿍e4\< ha-(hqhc.?Myz ,f i:o|]@ts( Foˊ&9Z>F0jƾ|תhm߼̰[@̚^1+P6jmTFt.!-az J$/xvR qB6]h^`Q T]X5GHf{k K4Y saqEy%;{VJ ViÞ!dn8{41^E%Q"&ԯNj+LgVt/s_j` B^ɞ\ykj+cuRKm\eq0%[X_z]bzcWnR3}U矎J(Y`ǵ'6 ²J_޶ߋ&\pi6L"uX7nDU\P-IZ!Tfi,7qae02Ƃ++5i\]%E+CXZ"딇-KO@(!ålc_^m:Tg ugQ#zI u^ z h+O?JGboSYC 6O"JM7#=׬S,EUelD' QL_n{z՟dY›"O{jcA0<7&)6NVAu9" };{%` ߕ"Gz :~bJ]*OD"(뮋#Fv`P/p'0Ri 3Z̰a$W7 yxGJ^5e΃r!6rVܥ $D)cxD<_̂{ tem41lY{J/.o@5q-~(JIy!>V-#faepqi1 ʟ%YES3J 8+,/,q%d}=kys{/,+7Plr"/]!@(F,]z]gK,36'6|P!{ABTzFi0dtnQĮhjJkе+6Ml$C=;+2J4^t1p 5!D#[5bpld(T_qN)L7K F(zrRi_vZjdљ!óɿ 8f\ 3C)Ɣ((l12MKxor/L=j 3IYRmW=^6`y صde%<WdFt!mYpJL8VwFdz&^dݣ/K|'d1MW)457D9"wkCDˈAٲ_8d68MO=T__DX~$O%T*El05^Js$D r.[jMgn!9xGX4 FAP,׻L!ֵXqMX!hhˠ<'1Nt&)Y!*]|SKYOzW姂Fo``zVGksmO+FgS\e(ǵ]ZE2ܓRaWy0*\ݷق2?V'U=эZT$^O7|THgn>f F3=̀;{Tr4BP] ThB\GM3 _-cDʚ^p&v`eF\?K9߆!l>(95Y^}$ʢYBfķFJ;BN5UI_e[| 镠i";sLfST(=+-Z Izktю0#gמy#E7z+lA1ZUu{.?iq8uT,9x:9+QRRiDaQ":}\GagD"#nY3\}ϣgB5ms_*UӐOJ|3+ $Ovk)egD=E ۊq)}{3A"=V\rxλ{hvVI9̶qG&m¬Q?IЋ1wd22O>Tz {w|S:G$ɒ{l \fX HU('Y+]N° xE@i5࣋*ˋ*cpHf;.yG[mB:`y0:B:0eaƚNﰱE*H'j7o@g F@./aXSiQ+5P EE};pŀ/iUikq68@Yg|[&n ҨFB̓lPO[߯TnCx rѫIAE Cp~Mw~t:|몣.6"N:}(G ?:LJM'-ջ(zl*1uhOvC+[jH>1ό6wEJ6(`r7_9L܌&u|d!QP|YN~ky٫&pc]l2kZۇ?oVf4&!p!YjMvVݣ{nLu]>5uC/v<:z9׭{&CֲlabF#9G:(v< V\kʥӴ0^廞Cc%:iq߫JVrƚijP@;WiCt΂U95ǃK7IR;GK Q;\c}!\o#Xr0XJpsԖ`~BD=&}KsDR9*Z?ί Щ3)CLF[LyX~c7|,hF;7Rk*þbaS*ix'کS#`8&sT[GtjRlKb;y_VtJ~:48*--Pm:2HlPucRm |Jnu~YBC%68zJV1WVoԏX!cD#aZRkЕMޢ#$Z%Lѱ["ЮCn ^r!u/*-6\do(9^-'}..R&CJYi0c Z .%gL# RjGh-}ȪZ/*QU6&sLs+ ,ʤ(Btg{/ E.m+)k&k?۹N3/X3Vp&PfPq$%S) ioeX3zn[`X΋Y *Qv;QD0=zv8|C~5,dώ {8@HdOrߋ ֕7ʕ65&ωb7Ji^6#K[)am5ëyݗp͂*v$߰8P?;] ?׌6!:!sIWjGu2O)"rca 3DžSc{Ig9G$l+ԣr@QSM}J̻%q2;#NKeUQt,Nn-s1Q;\ VnmdvF-{?&v*V#f.w;0c@鼲sf9L2n% tzUbF73SWӐnKz5Er8~VMD8Sωvey}y9ӟ]z9*0qZw9 o:t,3KKw|˴GAꃳѸ +CzDt=,nsyďI@+N;kKSìKB|yr73,bG~?KFkB-_SHKX\[G<@(`쾷SnF~ʉD͜zw36c:4Aׇ=6>= *jIETyMvFcl.G9՟9SbNl:Z̷ M]wrk]%E4CH[Wdbp^M,9@ɯ,z&6l O}8R%76cDvJ5+Ճac/N܎ 1ASu=`-,bDktk@ĄLs3rf5*5cϐSwRew+gC W;9q򘉵i*v30X)j!1k{6_]>k*2d (F]l םl djBN0K׎RO];2`x"Jֈ+l  jhTh\^? _κ:@gMQ:.eYD#j.w,֋.C,]}$s* q38Z =#A]@ =Z A|iސzMc"ϗdZhי,rsJ؞iS&hWPT**/_\Y9~ ZGRpK*zgB꛹j:+18s3Ya<[m~CDbxXc.}̀FkK }0tq jz:J\GLw}MG5l;>;kIXҰ(ubf4= ϘZ_7tC 9 a]EQQ~gv[[c[ׅ׬eMkd;KRUڮw*i~qX4Lb!)|@'KǨBnغC90 (:z E2J ?,]QR<_廘U` )'Quzdē* e\[foI|>_)l2~98j$ jh<=]nZ{ب("`mhG Ȩ:q+-H.QHv60 fhWo?̀ʮ^Ld}LtY{Be53?w>C$fYO_&N!!ae ZEPFy[M8=TskE+SՒȠ 5ܯDfO*]τ_ʧ =II*7c&6՟ *fwg|pS⓭ÚQztV\q[~Ӯ`oZQyE6,6Wt& JAL#bO^<[Q`OTea ~]w({Cg bWgISZWL[]Dxuܼ0VG;|Ѷ1G'ZG׷$OmC~YVRVJft-7$4Ҕ۪u!" 0i~-bBNLj{ĝF R:XB-H;6!?󛣷)װG,TK9:+y1&͚ zv'amLʬ/BIq]d!5˚ d#g-k]y5tUvPcRe:afVNbLB4\TDG(g)F dB<U()Mi~[gq7H`84.l.1- ۩Hn?ikT@]FMJB9/ >*E54Q w1|qMD dT6j~E<9ʁLhce %hVT>|7vU %7|Q*Qٸح+fnNP넅o~@C+ 7og e4X{3;;@R#C<1nLVqu'Ļgpw=vdL 5@%UvZ\j& \ Bc$8 |.URjM?Ll>>`{d>fX\ޥczsbP}qa e9es8s )" 0ҍWj&0O5a,1.B1qsHG4Jof{(Dg ydPb[ȩ:r @>=f~h9,#iv[bbsu"ߧ?iUZƶmPhEokU&2WA!9S,СX^=WܬAQ"!瞋J5/ 5޾AC7;TyOɀ3>|!J=8.$& }3B]]0K/)t˳K8xb%b?FQ]>.yO葙S㐤 WJ>kY#keo&QEN hY]ᓸ O] /ҶMT)9aZ.?w|86zU@ d:"_n=t-x5`g(/Czi9mV@tkY)XD*2CSu%Y0 UhrW t ?󯬺ܯ qx0aXXBʨrnç"u כ ;q`kWE0k?p8xN94Yq!]"5\Oz;jA !OutzEج~13n/}-;'[A$[V O.IZ~vof*;E>ƛu#nRҬITI/lz `E Ԯ[S9)KQD!z^NyF@|Зui+>ϻ5zb5,4EKf[Й҆@6a~̪"h~lGM`srGiZ͒~A*0DeR3i z d9;1®R@6X<@0eHIU-lB^[Bъ)/ě[;#bF֑x= LVB "->> $m?=Ct9q3Qŗ,]O3. q^bDc<Ĉ_Y>YƉs `_K3Dv N18  _^ˆ^tze%WۛJG-e6B6WM ڼSCEOiPEjNdSMڜ>=\rBV Ծ * i_`T n{Qho["RH~hș% $غMiҼ~@-/ ^L4pnQxqX"Α55KG7:kH.n ;LŅ$BkJFGi(KE{r4gsVCFC;FG67zYq&_ m?"/ E)B/aw4%4\(}&KUȁ$;~roE,W );!*=r+60ů(Ij6s#;B{c.ꐲs;3!>m'e`Dg^+S|㍤`)GaAH+}%PPN v'(&QVA(L4װ Q\ csopk9)Zd/Kgě(K L -ۃ([*{,2kF!/#ן"Us%9N@2gx,O͈F nMG"ZU8s\c,m=';GIWB՘OaO66Nl+Cp,R|?M4 ~b؇ۖ2Oi1}bը隐G :>pj:yW OTk<}m(I)Notӽ=hF4`sސ蠙yk%[/Ћ}?y6r¾-@>1-z!鍛pI]ItuGù{_=r1 &ުў}86fťwzASnStdU[88RmF( /5$!IV"CSVPcO ]W3J&2#7fϊGc->bx]WeJatcJ'>l}f}ܶ*[NdzEF7Dx>Hgbz_}J]wM<+EGtB 1 AdonU2p'pMgcG+kdұZAN) aU֢kFD 7Ь~uBSZLCB}1qŮ?~!Ar>-WeJd^(.)thkҤr‰}?ؕt":e~&TѢ!lVR F č&x@*6  Z' Q=FlBWVOMpMs$$ a+"0 ZQUXhC"..o0|ZRV*SNM)^ ʰ~02 G8ۃ(MAt$9@k_%`tbt٠&ļQ,U]V`e ]{zxk4JimGN onjiya9ԱKRfzk+L5S< 2ceM<$sVWTBԍK:CV ]cA˔Wq Ʈ*VEaa`0t\o/Wu0?7ql'j_ Ԍ$߸+B ٻS BeOIA [NgWY*%T۹0ʎ6] 5ڰE,x#; : 0D=fRfz[ps7$ᤞXc`i0{K31C4A"j*# i='\h_p,+,8j񂋔`S;2;tc|pt2[Ӱqa;kNTvv}Ø{c#rCCn$4"+$HX*$ȉ[#zc%XnvbȭPS=?/;J骇oʻjLl_`E,I21~֢L67rZP#ή^U9s?6i4Q~wkf(/$» ̆ 6Zw sh~EYg߅ 4m! 8!yb@/8p0Nwg[&։v0q$ 2 qغ8t~(*^XZsVko% 6S&ހW9OQOQ&oK˷p`g\,pr"usBe̊m zS԰^ n[B+b :fuG /l-rsCxvL`+OF0ߋyq?.1p0b7bӱQ̪FGPa3-:ȋw'p3v_H_1b "!Ʈ;v sj]=s؂H48@wѯưb0ϫb¥!Y` -y?K!=ue?tfsµc"n呢*!ۜ1W^23;EE0wgq p굣㻪zA:\a{4v?B!ʢfc>oPشsM]!4VZis zf !(|0Lawу]hHS܁upqi}fLjH PN_ʹ 9NaaE^ce cus,G4A-/Du«yq7#UN#^X֔i&b.buVٳDΈi@Q.xDaQ: "8nf=4b?rg Ϫ?! SM=Á/n5ΒU^uf9w(ț͉vg! Hݣ(7<5RFYt4rCAϤz0!s;kV˜G?O[v&"ZYJ:Z֌숑"hP,2{P!-ACNfHh慏_m9$E]R8 [f̱)DD' 'z;S]ɔatj* >iuנS&F`}j~(T 3$ByZϷraz?"*;CB`cע(Mjy.ώmiaf^6"158ǡ[8ZS1pI}Psoj^́},ΞlQuGgao\N7֛Y; gPoLD*29R4wnJZooʬn \^ 1ws_}L/0z*Pcmъ [J>_z7 䇁+5 w|?wC{FHhn%?n)rx6w"@U' y`݈@|rHI*O nSi\{ZJI(41RK>.r}Mj=qkg Afvzct\xkjHl hp#=Z:q ֒x#S0|{ ﻃ,|BNF 8@M&. eR2KP='eX 1d J%j/XKb$qS$aJݙ9N M9 0*61ф`Wʨ4dqh!HTѪjي.>H/3^y Vz4Lt.p=HuFKrViR^3"F7pĔCZmR5_+x~( ^A>=#fį$HpW?L7af0AHa.]<~dM&J k竁.Dv433exD.8mF`v/O[E|.N"%Օ Zj Ŷ8Iuc(6QX9PI\e;uQW˺MT\(u/Ҹ+z-ap(gfygvALh*N"mG,(H{XJeLsRb4z/kqI$75apJ@Ih/dY1zֻʄ!Bn>jjw=7i8;%ɦ ~Ub>Iү 1b7w]c.SjPԶRsWٲ,/H7F8]+TINQFV{|\U+&[JbnbFZx.pIK%V{N֯0 d897%jfhj$+WU(Ύ@(RN^ݮv7˗Hu܆@ԡx[z0ûn1 8IoMdw ѻtE+KQ2Zz| mV|+a^Y׸flSOSqw59\7jAwe C8U* (/Gk݀a4*5 vG*JMQ=m<Κ$R7V rok="_QתH![~@J[q#5UH?B.]ͬɲ9jBzGIHj"duJ=L?z dLp:~d-)$kio&Ucpu_^"7`H dRo+#!H1`ԯlDYnHWzdWc,|V7>~wpY~$q6=eyc:%5?YݚX'X~pGJ풍@J=^n}7%2ǡE`w~NM:Nzu$.0VBi@~NNZj(Ri֩NFP|rjr ڹyUqFLo?5تDC|K jVs\ON,Ypqۭ ̯C]vnV-FOO 멨 u>ft?`dq [FX TZaI CxTvd*zJ.@y+CrKտa\i U~,1Wx᥸#jXv!NhH Naζ(X4\׹+0#TB"2:'w]"h!*2u#%Tv⌫J^峨6uU/dqV=D% ͈ia[0?{Fdy&V_5| .LgvW"&mY][ dq-27-gexZ4De_)L Lo_A''8*+S ٰrhwn<ʏ|a 0m[_{bʪAP /g,M)ޘM4;;JCgbv?2<6[mrIy:NֳbBJ[~-(b ϴCM`Z#.c!/9[J׬ꗼt33ʚ['0N/`^.ɫF\gYvR#o뱸;.I`!^WŽrҽD[Ӽbr1 kTtw.QP2sU(7 Rg}ƈYĹLfe,7D{SfC{pi#ӟ@~qx<ƶG?ɠDÀWl[4#zP+8qYydy$ɬGJRU$6MrG?2`l( :U|5Aw|9I۸Iخx(ƹ qCKy L xې{LvWHQ WO2[=V~ӎ"W=[C^> ;Ɛ`7huD,kFCXz t-3\ /11H'q@e{BϦ<} Y0 9'FYv X=¢KYܤvEe8Sykب~w /kz613Ͳ^Fvz$Ja_&EYP$ʻ uLD4g{w`ax>Jo\nڗ< ?ONb9w%K߮Wa8&JV{SȴسH%{D9l@Woc`$:B>~|iޤ }e\1,]\I ?K/Ĝb"3*E \3xsP%#E#O1xj1yYe~: !rj:='ǣR'Sf#PI%r~\``tzME]'\.Ro)AX`ƛb!VV5pGyȈE^(Ru&mcfwTBk)nNiHL%H]$!G[h෼I m_Xs;Nq9)/ `hz0~f{d.ժsC({2c=9[^DwQGv8MRۓ:DA<Pmȧ3DͲG ~ΖcoUY->tF㔕 pi4R!qsQp_} @NXp,J0J#Cy {i(v8E 3 4<qM%=r[^ ɡy> 4$<.yLj ^@X)y M\1ejKcwV@nc=Y9SmK٨ ^}>sϻ;@ScBTO ɣB 5%#ݘx7eURΠ7|%'<T @`B![.*f;gur4!XT6^xQ)5 jJg\%2]sCOD^<k; {JOecH'3=U4=Tf;>޺A,L4*~.rñe?W$]~Y;Y ٳC3ȸBɬQxաR#D>f1fYw14<ЃFތ6M=U7ޗO:ou0$j[T{qtsڈP[WI1-{?[)H["/d Jetge0$<<|G)l?ԂwLI duѡvyc |*'STzaGN X!%@.^wRͼc;pP ] v0+f?~eWB)j*$ 6.b5ٵڸ '=/iy|_w!qӧ)MN2XjUS6EUaْmR;sZlT~3 r(}(5{FVyc@nk 5 ySͱZJ -kI- mM3Eݖ *tTmZ;5҈A`߈Rpzg[2qt D:+mL✮R-ШP4T+sr|/j/'G鈇*IT<' A6j;F]&ܐUfk/(ͥ'&ś/Y_n…˅xZgw#+t[,iۘ7݀tY8Wĕpk)1$:ϲfu)t}%"=!_鬴J佛2ԀsR]TJW‹LV }߷9F#s=>nSrDbm^jޞ얛0C-4;#F_rqS3nPۗ0l=E% }]Ɗ8PO!,?w+I4b.ݑ?;1tso|̆s)@O bXne|yuq@:3hMUVcz+ GYŏaݦJsZa8S VȮ>P=DI],N, SL8n[BʚTă\!׶x@E疪^4|+P)-FCa4N (XX)y-ϐl="K;<rEAxC A*+iZ8"''C&#Dx?TwZ S՟&gm2t^#OﴺIŕU.v'mN;(j /*iŰ7ܛM!|›7T-R\ >`֚8V<%twbR$Y2N3%Q<P7i,n2Ca0L,L@oloCs~[CPwA\;[ݬdi9̃D6P{!8҉QK(|!nM\!]&Ն:oo3;Z<056@h>Pv'Z$b8h-a9dbiZ&$=?-Ϯ/d]JSl(Ϟ'=0cF*}uڻH&A2_Wuvhv|[ƌ^Oe"}M]M"ᨃᮧ_;@?!D?}Y.WGi`@D 3\c4w|.iV?sѕg/jN&-wҧsҹDӎ1甿Ϲ[)l XoT\ya &:Ԏ ͆Dq= szRP|:1*]u^ܛF~? ܙ/w٩s_ n>/> Za`¸c'f"|!VR'Q2c4ilJern,T{%.9R7Ph9KSӨ&tEE6լ, &\5_Y6Xʮq9@U*8B嘜;JLC;p`l@@Emfָ!~[8ƌƻ;b7qMuGӷ>I6[M.NKߕYPcL:[?g<_/~M 1yl1)G$;jFGtmm,RrxE3]{ K#kjޜm)˓jeS09 Z1œJY\욮"1pp]bYIu^{ԧyOک *.!X?Hf Ko? \0 {!y0)m -Bڝ0 _#.׋ѝƮ4+`! V ksZSKҙhх'H}'ۻ2Q<Ӻj|nf)@F vd/8_!qA };b / ±|e4#svvP-?A{+.B.d$)nehFzIӲtܙTBƁ0+M_fqI]X;Y{ipM#[ŰmBCdfSb[X-ڰ. .eI>S,GB8߀Nk}ZVA7 {MGR3h"=kJJߦ=ORsA;Yq54YcTmN@Ktiwvecl 5F3)ㆸ"sDZ5Dڪ#rm,tnng oЀ g6 1Z&Se(cOEB1!\?J_QL#_9iaY*|@Y›iO;ܴΟt|I~:}ϋS eU5'(~!x 3x,!{_-[x*z}e=+'dbKi'h ay;k-FmwB#P ]PPꏔՂϸa6eGVJu-=1ćm|.6H&j8 DۯQ 4I=]B9“RɌJhTjRԅfZ pIV&e0X[L4zxGzڞ}jOI0ԅ4T7B8{2f[w@52ZQnz)VE&gw.|N.4yVNg؆a)]vУp$NQC8;:0J1XFggr$&".dǍ54C (ΌoՒdWh9>ji>>k^ѬGtλ =l3EXi G=GLEOzYα}hoT JYzMlR[0 ~2+{gX9{.;9JvcvYr ?<a tLނ[,{1Wڠ(ZͿȇɾ $G zT&=QYnI~yA3 /<",Ͷye6lD_E⡺(OGǗ7O)Yh36%K8!}Z/Ln"O=LYzmE9DB %&^ܾnJ@ j|0t<UarN: ]m$ƒ>= LʿۻBaI+wNUJ PHfh^Z'/zm%x[UnKAȺK)+Hj \s8'#]fHqR`K] s5e.FN],xCH妻C=ͯ8ǡ>cmgyM .mSk"x>&՘tI2 wY0 ׅ;@1LIqmmJ <є8gHn30rUd(^s n҈+#*󢅶5 Yr!&2s'|P]PԻѬ=X29oi+KO /9.@fI5%.eON=>g*R|mPgڋ|u? ^l.,[8;yp  ԣ'$] c:o.D?_eV jJu ^fj(m/1G" 耳#b|; Q|p}>H|Xa}r@?8o\D^9(ݭIzvs]@?ԳDzRՋ~; bÞ>k%A?d_IC'K:K ]Ȭ(OteRֺAeV%MdvAk b?t'&zp{q?#]3,~7P]KT (sPƒӝU 9 0S9R a(b<.&pMxoM=NY6f2X*"gnٍrf:heHIg&(o*2WG&j%~NDNalH_Á$%N{"6ŘHA kvp,Oto1KIYg*ibo\Y2Ij;\g*Վ:PmHg)G>4C d!g{pIvR~qL`X+}皛WCxbي# "iGق+lB;{MOgsKmo1 [pա . XN1 n埬 4tmɔGc5Pp*ZMHLcm5Ӄ~&p|7WN <"տن -eIp9%$KD##.pMǕhhե; Uځ5TQՙ."9˺'5^lxWyWw*3'`?7B{0KĶR}5HR#͛t[4X`QڊCM! 8uLfjjaᾘIФ?mݜ)Og S;X,ތ`p#+A1ZxרzKh2.Ǘ:)3G 10>f+cgx?lP:A'Sf8FB]7|wV'mcۻ0`r&)33#co5P`z@(c l*.{;1|ׇE*H,` #lbn.P"ah%G@>eU&ֿ>Lf7EX#5{LN/0.[Ywj(ELRN E VhV 6^*s;o#ʹ: /lLQ)$cpEM UB}"9Զr>`hSFnť aW9;ӤM窞D xI<GTwu~}*' 3Hc,tfUЪ3U V-FQB0Cՠz uޔ—bR+~6gev@=8CX,թ@uq^[HAҪ*IPs BJNkڧUfSj:>::X1{mdՉ|}J)An6u;%iۉOX-/gl?uĭ>d\KY5$fH Gѭ:uu.8Ih FG *m[z 4ʀ|=W]ҲK.5 OOpO a!F:>M%'3iՋVj*M{cmJ2v_S~_X^J%3KMQl,s\cr`=.3qi0G!q9jء.l^B?hں L65HDH?,e(QbϳY4'QXU;̕^RFT3ܓ~]_7u8g5Q9#M_Uz 7FWa~vl5! Ȃ%rzk]7dRz [Rˉ5ޯ%[9j@^"|dD Ҫ9 :%)Lj'E-G~t~G MwOn\g53oم?Mᧆ/ xz~WҮoh8@m;Rok#V͟.|D\#ݥVΰ{EV=Ԍ^,]]ȫ1\A=QКi.e4ߛj9L<0ӳONuT4eQ`~X#7Ѫ ^y+͞@ hk+/ kVf\п}YʫQ895^IEOXQsZaJzx2//O}/KFgBS;=ܝZCr0RllَFD%MN륝ͤH I\MB\/e )4s ZpET]u4$h?%+,WvTppQo65EFOq|>EH=\wjcgvwO*!)/mId*e<0uS D b7ڤu7@ҳ^ۍwew p@oywu0\`~l_`rPY ^6n5 waJ!u,:%BNNA*{PUj*@0J0r˵cIW 춺*EVjNm .ukpS09[8Ra]cLdR?G(hCY'5c>Dv1xCci y<~Cd׺$LUKyDù!p/xIAs񒐨pbU3㘬M gwTq*P_cz#~V ylǨ,! k+GCHeg9d*ԶO풶u&*Z97n+,"OŖ(Abg} UT/L@Ƀw6Um*m|W@k#Jm7+%t̶Fu~; Gy%xP5UrƩ;͒5܇KJKG:nU͆g}>7˶{l tOg໙fBĺAi8/WE7LnfPTI@vK-99^wŞ'1"1܀QqL֮y գu_ЈA$+Gk)}%NUN xh#CGؒuIᓪq_'|  w eλPa iH}Hp͜x7^8\zyۗ i>$ۭenF4ub{qIf!6*@3ƂkףYGHrֲ{+N$!~&CE0 n= {LU/nXCI-rSiVa~EFƨyxqg#ehvK.PE :ٰ@JEbUkP юӈ r>,2o.%+95,J_'Yʲvr#dmUa40s8Y0d:c p_|V{cuA!!"l=]C;1*8lM~ܷjj<):$U/`;l05no:ZQ;A0+\HGl4Fgh-&rf{)Htȧ#˛3xpP!myݲK"mB F;5"60m?=P{ O*$~N,tiwm?q05y г6'@Yߩמ>+4FqlL5Ef%զTP vpUH3 CߠX7+34~? Pok%)]*!7W!lk| P;BXLk7Y!IcHCcEj_Q]/t։wb7hB=ۈ" OIE/徜:+j IxY&{Z>@Qhnh*50a<)؀A[.:gl *<hߢ5!O˸[ADu Nj&F[nh]#X}plP#&)Cx4 ;4`J 6f_>:0"!HL'!hC_%"WHk@%{Xù% $Jrjz 9YȆQ۟кNtKuD<~WyM'D]dހڻ€qk-F3]leiH:!/a## n!f]w鄋;ekizi- Zw('VQ9B>7 AKmku3qJ¥`>\w ^Bڴ1ƶd![it iYn gc#jGWF%ގ+%ׁ4B|c`5VNo%) ₹I~RġwNbs~RIC2#GV/ɕ J?gw~򟈽qz'~"9л[27ǣq29Wg۵&pN?-ʮic#{\nj .[4@ be/wH7u)RgaDa=٩u2F`G8?.<ٔe nƸ*UyV܊ OrT5%@)HЅ 1:OB(`/p4PW zߓx0,.0M~v$y5o gMj:KM,P8l]|*:v􋆌| `q_IjBj{1Gsd:@F&))57}{+PxlXnU>QF"0l}:bQ܅h:d6E p[ dSPJ[@ YYrȣ=2ekJ "U_ʁ-LfʆV97  39#Zdڨ*i$Us7|X感d*^RQPYڠTp:p09 :ج`}k0.4ur B=(]=^do@)xPa8X#T@L C%='r4{DyCZSb̕N7菀4T@~(4 ضx&y!ޓE y{g0Ϗ$ZP{=j.Y@2h%4LJS1,p7WMPk?vv*9= 7q=3[^x V݁Bm7 >+ d6"F#''6fen I抹xE0dYѡF~\4 \Nս k=#/hG قQcz"xw| `bI1KLlņpeBeW n?U:L+XUS0tkBٛ  ވonϊe> #288OQN*E{!Wݘ2UcˣY}V}4޺0h!MGݡΫw`.QQe:l$Ow*E|i&{$qu#` rsw5"R[jϗU]#F%Bi+.M6R\@mJE|3)Pgi秵\6K␍u$ 'b*@;RԷ,Nza]{ml$#\(,U|FY0xX#oz#DB\Jv| i<7X;4]LI}JVbLyD:ͦ5>f0V<|(A'-RoJj<for{ *, 8 #BG]pJ[ޮRZfՄgqn:MԿ~S7Cî׹yg G "E4^^%a00XQ;flԣĤ 6MpUSk 7lw[xEt6-kdHҭsYC7:"YM}ACO]W2E0FL#wғEFKCFy4fS!7^_Wkկxr٣s=O͘y,sc;hS /./|>O*_?G{@%6PDOB<-aܵ>~řii 5m9WD5GVz)͙ax{ե9Vn7D.KsGZ(iMG솂8u>G~YM>n#me&{bCO  z0:Q; \lt#zhIA!X }'%H%AhmAFF[A`^E;/Ɣ!V߱ .gyߵJ =t?N?H~HUj5sqk<oh{F,j ƽAxPp{b~rn дkI`fǜj`rІak޳|s 7v`OCˤ:iٗEʖUEs[nNN̒'R.1zGv3Ed0{]]b_W)O0JE+Y:mj!ˠQX~onidw#^zL (Pi |C9L;>Dmn GȌ~h1*khZ0/ ;@}(ʈ[ovtj|8QŽc_&Z+QzWoHrOz^bO40*ӣjcL}ʡWn/=R Q!~ <Kp_4}X`  ֩Q-ROPmOϋgXɱ9z-M [G2p~3@7RaT$D3ݡ5ڊy*yAdYCDy}4tiY< U@h}mfϜAtXɌ&-"dG5H 4{}TGkuA.%DfLY%c},U#89'Ϛéh}TlyX : x*XyQ4C]706_K%8Z_`)Nz\VLkd->9@RY I6~f?Eg߰ mXӚf ?O憰^RkI‘ LSnjH.(u"]t4 i/Q}0X㟇I$=ߦ$(&[hIG4txˋ yBA| W{tAUGJ&Jl8(xL݀uuS8+TR#{Wh94R5dgwCV6$8CqB)#2H c=96wjuy.on-BQӰXoecimdj_=%EAPOKskY3`:#d 9xŅOɉ">Yϻϗz ٱ/ UIF,*~q2I8¥,dxb 5J] ewbQ'ASL'81MHe=Wh뷰ӷ9>ҭ>u] m{oezQh,ݿpi$(lܮ\?aO SAB:oHC0ۻ?#<˅ 9. 3ocZ^3aP \$:6`#/(*gLdhGvΆ[b!iGL_cMgpĠN# }zfI;[ e^dB@ąF2$wW v } kEx?хw-mqqM-6O(dF?,KbD \0l0 ?T#+MlKB"0<ߑƶ\[}2vah3x[>}wc[Ny2ezufڝ*G-Q\&;TrsDSMDɛRǎ/2"J`7ՌL"'č 1F.+=b=nUyt#F_3l< 6T+L %6mq1{+g~E)|l{Aw("cZ[s`r+|[O8\װХށ]O`񞀦OVK8{ɾ>B V,<8+QUd~:vxrWH}TvZZd[tׇ%V0k%+K%U]b 6>=E^״"/81o )$}htկ!eT_|i@)LN2)?Q4QL^:8KZs3]%ީ6'+[=دOlj?64eV~lj=P}IvOBO8hRG\v7"镾 z!3=,I70Yb;!ZARaa\t~$]^IZhXxRnK0^9SQmrGȳY56L) jv*b[+O//<(Rَ-~4Dc+E%e{.t@>y*5[`˒CZ\eKX]ɤ59 $jaÖ⪘1 ܢjV{THjY)&/3\D \Qr( Z֜2Kxto;,OU۲], eoڇ%FxV`Zg?،3umߓH`rĂ@qZ[?;I g ByQL(X8M/b } Ff_6 ux6É"7Õ SA5οϱ$l< ޮZ &3_`V=G ʱpDۥ~ޮ/B7bC_'Vlk ~bU)5_N6>/2Ƞ"7(7]7uQ?](aI]rj|"\dAm%-^zr9fQz3q]0DHYn ŁzFSTsa7DWuBsܽ<ik/k`;OḾ'l`^5K ΂\:Tje/tӜ7~G+=Ε*w TY}aK0ng hk31t#Mق2B&4hOܮ7\z ;.pNp{JT?I]Z,D=3Kj,'гSW|#}Y$G~c (@2Vd;zaP::,o3j{!VDT6ˬ6?Hio;Z)ql٧KZ% 6J~SH>XFYg"{"fhd&o' 3@*ϲa^$˘6`ZA9T`EzNSΎx~~kZׁxQ_ gkv0&H q4/Nb6Pq @Y]W>H\ѮTC;cIԌC#yXrG?Q\ϫDpc' [{B=PytNbB ?رN刑Zng06A4ѸIɍQ~&JeH3żߵū, ?wynk*٩ȃR2@S5,)*N6j4RMIw6pfk&!@ *d/p+wr Cr+ǻP$V,amF XO]$|9)Q!HS<2L qN$&Hֳa_R%aG!K )aQdwlRwQ%{1}'<ߜ ~~2'OGǹ:hrC%gN/~N@da)e:6[C KNjgxa,ڌX"R̈́qCLVK݂1eވ)cطϋa!G%zS'?/_DQuߎ!U1K?¶c ƧfVE 1ӇvfjgkN;I%fF~P&ӂ <-!~IŻر}Z̷GQx*^_qr;˟B ~r^Q8I2ܕT:TJEkޙ*pG8n=-8{E (7'M XN*Õ z"Ap/sUb7=6wue#,"a^nZK\U~>ap `U42wj:yl_Y*W+jya$]leQsΆMXJ#YL">(F|׾%Y h]H}\3K ЩVU 5uoQAqwnq<2ޑJw֜tw 0#Hxn6mAX})X-hV%D&=mR2BRl45Gnd'7Ms~"'E]7v<4KB3L"VvȠ/2{r7164?F(N˛ЫRbm]\>mLaQ_Rt# =2)]9n&mxX.N]5{A.h1DUɖ,&1 !clr~H 뢷5tۓIFMF@FcN2a$;:x- |N|o<>zk@>DQH!m^mm㧴sOƁ CKXniYT*1Se۔:v {*:?*'"8)[Ua{׿>6 nGs?_0]kUlaXvÉՔF12 mkjE +-.sKiƭ7! sJwf•SDhVt}Qbo r4gP% qiZ##Oh@IQq?!G|  <8o='Q! ,Jf|MF17׹Q?@|x*u1R5Lk $§RH Ӊ/'`f2V4"5pNehïo3}[*T 3F8|Ǐh<@WO=,V}*ᔸ]0eÂr|)L'" h8wNt!>#hM26Fsk"~ $c_SE2:h2=(|%Bmlִ1MŹ²*|q\JjՃ~{pAu!]H `cG]}ANfc׻FnbkgMA>9 ''2w+Ѝe 1 1kѧUyq1ՠK0-8͏שx(3cf~qyTʗn[ Q _ng9>XGԳ׌;j;-0%4SY((wLB0!O?ham(uѵA@lpjJu#\/ŕ5vm샚fΜ7@.|6 B>ɗa%ӥ c[jJѝ3{bilDU \=}XaMs6Jka0ŤQ顮]IH'i!|;qm8?;7"-#) F ˻t xPh֙wԺbjW 2^8=5TS{;8,¹Ad\#QEZl#Ka`g< ȅ]2E<_6 DeaGUgvH1%jPę)0] ; =ӹz$,.ɗ>0e o 0\o*`F$٪O!!(,thMLś5+{U~|۔<~s' eٍe޳Z RJSFYG6=6YaצƏdiPZ #u389c:>ݫ >~d:aûBҔ_B' ][Ρ0rY Tk{X$k6e8X5${-y'X,'Tǜg}Q n/5nESS`j<blajUK۟ʾ|J4]`ûѺT. ~OXl*~4 9b+X*g~"p|ol4RudYHdvc9Hn&y,x~z7Ws&֌WՓDͼPHR ÓRQx #Y\džLy2A cnުh?٠MU0T;/p S}G^z'gDL[\ ,;!V7嚗k5ԼF++3pfcY /ӛyH#'3C<}N#IBK;f-ri~ 4:H1uKY`Μmd!TuԢՏ0-߅=5HД/F3e*`CbX^D'pPHv)=CyyXapQ\ mX1QtxL=_^Hc'UkTB' x9"yh ۀ /8Zji. TLXbɰDjֵTE7XRuJtH҇'U/ނ|B}k49\*ќ j , sJv/W5j^ѭ0W: &y4km#T$?ptzMZ2vQ/RϬAUqmvzN葡n)Wˊ-U9$f$ r:#߱[B3b#x\l>dҝv|y,f}Ҙf.GqndJ w. #†h6C֖׭%T>†(U2R+~R6J,$A j=ZRʚ"ǣjaA2jۏs)lgQk8 >WB6Gz; D A:u1bd3)6kPM"!)a@!qĽN:5 @fͿϷrĻ%d]RcZd3+@]4>w˃6iC*m|f^&!I7fIɴe(of~O⨀ s+ORQS" ehΜ0[kC5V<`{C1+&66.[KoTg &iZEj?0MJX1aJIQ3:~gP7q$kӔ>(>Rп.("&}Q}j[a2kLCg.>2_QqGs)o0n6a 2<+}g=b-Ջ¯. ! WZ"pܤ+ k'i9E3&2 *"̈́v 3F FIQJ e=9X$س RAf2geku{JTJ[-h'88 Do#9 eE1n0@AUP|P$8v3ވ!@^ԛH8TݴɉETZ C-3NEẍKևp C_q@"D8oncNP- 7괄SLJĠ9y[0` aCɆTMmS!̈b# &M |֖!Fy 3&~M} ˉRyXl|-v*)l ?O+ =8+g(+7QO8OQboexSy]m?Bb4?uއQ6̰߯ijA]ٲLr!DA(TRZ \ V];< a>*QxfԣP:unF֞|&(y~`=/88*~v6ԅ1% aW[`G  ߮cH`:zY`?~r^Z yvwUP J5?Ǵyjjb:w-Va/P6:3?]gf5V|Umx'ƝKMsD? /PΚBd?89#\_ܜG6/)^>w^lp/wg hZ)Y@mWі0my%Fb]}JRw 9)t{#ynv7R4%xգ=ye;~S'ZQ)̢DEDOic8@hͪV!yEH?뮆a&\jڽĢ'XIʏƇ+xum?Bԝ!`Aӧe`kD]n^POjkƒvMţDOQ{_\˴V9SFiyx,ٜ[whMA-*W+Uw*;)Ol'Y]ف V#Fۊj^,M7ʃ&5w@L\kY?-hqEHI ,&#fn:ޒK8/&ZON :eL-ZJ~W5["/XJF`J'} ̾Kš BF4n(w$j sǣ$fB2O5y46Ec{ҫq\"AhڊsMJM}&,4}تtMep刺FFq;qf+CȥHhV@\MzVN,_.q]d@Jh&-a)vղ4~{]8oln]ƺcb8V6+-7<8bC))&f-Y+~6lo\-& J߈ݯy4E2Z?qc}|41NxߤL(Α+yA5Aߋ4%/,X>Fk **Z $GОQ ѫfyj|4yuC7S-:TNh'/~ |NJ`j>t#Pω\xqkhd|źulG7nEړ4*:)H80XuDHXf.h:3a5XwX \Bn%bz4jvzmxkYk@v ٦GTnoH}*/c|菻Sr[2"0֩ϰJX.wwNE"}ԇ]P N9XpiE#ɽ~K@#ɟ}8! rZ1 yPYjF9"^4_g̬ 5aX&Q [/.btPcgC̾ -nU zAagatZ^[De ʷ9H}L,F@ }f?~ L/ۋ0Bm.F ȟXlB!.2S|m9Iz[E'x!oT۞{KnŒ*u.`K92[xiﴯN|ܾ _S؇ ,4,Rm`%XR^Sb1`vqYaF.9*>gQӡ#M~s ŇeMA걷Z.jA.׃.7,;#s~olDQ$a$cRVl?RV7/qn#Q*-7Fqȵ<ߒVQ I'&aRl*b+>E$>4)z &CSg^uۜ9AHq65r#2dO)`g%Lx$69WEs7BF^ SOj:a})-C/Ŝ#kIP:%9b7jPyP>\b֌ᵻ<,F{`mA\CvDQ&Yf 92bYA$]u/yupNEbϞ[T^LT|V_룩X@cmkӱI=~+zmζ=6Q)`3ШّϨl:d"$?j߮d2(ogT-RpK)$0[Qӄx64 4uà 1=\6YC.qt sf ֯XP>bz/qZV֞gJ%!B դ;ADhGS.V>#:1dfOA3Ͳݫ7¸+<O;lމn:zǿTʗ8kgRX&"ؼ6LbJ_rXC|jN-gHT; ¶6kRnٽUn\gZiPE֨˝i-׆QS\Z1&_PSAV$0]!m=FMcL< uƅY5-ނQ /I)7^zV; }y]ZϚ'IthQі 4AsEO߼d%.{'d*I6'w]T]jęUuYxX@$2tNݬ{ /RѶ/aYұ&#" .(Ɛ?*EMĂ +Pn-khZ'4 en҃WFP49 o o a HYZ@irdWUՖ9W(43>֠|xF:`l8vqɅ!&-1S:B錴`;` 2ts&JB :e%؉xrKYh? 3uS0"SZ /3矧Pޫ?ͬN  9iz#/fiOޜZ6fO%^K*ńZ]3hj Ho4zFf$e/F=PӮ3!Dj0GA_w-Pp fbe x[Mt0lQBsz> ; ]JV ˾]`Fct9o#2+1IvQC9պP;t1el_iKr/ ÕWbN O:FWk :hd7ɴsr d m/ӹni+?6opOPX3c=.Mh,7?,o`x~)s>X9C_wGHx-L|vgӂwH;w9fFŏo^ޗ\f/lָcAa=uYEƇH A &MNwH[YݳF%#b<A!FG\e>ɸW5RoXרa=u_I~]$,VϬp@éE|4bҥ(c>y,$1eU8&U.Ơ;!~`WH'dM4>Њe^6njzI2^4S5ӹ-Z%uQ~DY{m^y@$_E~"zͥ- * ֦.}Fx*0S'E|m˾g*9ir}yZ;( ۸6uV<XNNjN|ЍޔQi583\,)>HJq5!>IP΢DfT;:=Q6 (_O ),A,f.W"J>Dʎni}}o33  Ʊ\э,(-w ;} D#t33BU$a]eMT3AIBK5፱n Ut)MV *Mak9רW: ?MoiY 1g*VƠsILW`TS1GZhi~˫E1!޶xEL%;\(K\}%햏dzUS?;6tܕ5)XӁ^js6&F`vjX j/!ҏL=ツ̶K\uSIg75?[µ =|+o*YQ:cBf:YP+{#r lCsj|tfvMtlt- Z`qߕ# >j1'qS;UЌ'dZŒj46'Zh:0#_!lUQF@DZ2ȏ 7;Ba;1e;#&(]Qi_v $3="@bخ Yq J/(W+Xj--!K{b'mA K oQx#-l]I{> `o J{9/hf4AC)NwOJ #3ٶ@wD\qzԨ)N׵=T?^wY" 'OL_oFU$J(As").F49bkd%67k;kb\K򼳩i fPf}"J,'O}&AoS7kk9SG mʻjdRx2) ѢS&K:j!' K;HF,O Skba!p*GF8?@*[ߎTHYQ 4 qж9? SC! QCdlmMQ5Ak$L퇴&ʐ4$k8 dn6=7HDuzy^)-ms_)_5 6pSjrE\/!VTC&c&oc`˓ ZAgAN-wh(]R^lӿ2S{>+-=nTf+6应)Rj(lѕT /DE:[Ӳ]* ݈3;H/(~xKH(eߦ5Hk@zbDWxO4!̺-Q%jδ&aNs!< )$U[C,>_@co#1ӯֆSC}h+7[ϛ W%=)r>/{[% _-_Ӣb qR>O όʘvkz~㙪At(`w7q*vƈauкX$(^P/*qq8wIul>}㍡ |WHR]1Lה͓Z0;oV66gN2z`}l33<GT{Z%jSɘKb8҅--ƙKG" R~f?Ub99;S*׊ۆy2vD x!7~.]G5Cu4[]ۋB"l 豞nI q55gec6[{4Gӽ$_ &eY_oom:e!eV(CzɝtoC} oH F5i3lրScByR&p!Fdcv |ܾ_h~ǕNh.-{xNE%lZ""qgn5qowziFd|>DAKeci8dbNq݂c $F EH d,R&+)8s]hu\mbEK;Pʭ\uyg 5"%$'`v3o{s A{ \rBDʪi՞F<$mD Vt~ +fcg7'/+gZѼIjh@i$Yn*[{Y5_hZV̎QXUVj0icJsPR A׽6AHqaxPVjV@3T.x/47 Ta?]'":e"=7גyEЗg_Dp*6n{wR ,bm+yRQFsՅYbhYGΒQd9o]0V!˹-L|500WV`_B T~ L/EYɻ_}, cJCY"CG!ACm?[AQ sV0u"еω+wQGI$Rh tu^6N$`{C9s}DT'.ڛ%fr _WE5gnݯ;Mdh4[4j0f7ӏ%u3B{0^>g P.d/sK59}dTz ` c!92 coAL[2a@cÔu6W/ ?UwrZf B_ T(!;xI$D\0jB 3Ox_T Q*~hep'a@c\۹SL(}&3ial^IGwL-ᛍQ;T0̸+=+ 9⽐ $HʿWzx%fsbA?1,!,T0CO.Lf .dL19nk+lS{Z9 M,r\ݦU M CXcڸ xX6<4zPƺ۩1)ً>7~ {yЎI^H^ Mc5sg5$Tex3}+bVW2>aCAgqŚx <`~`+77,aLOd0z6C)2 1(h3j鍾TՌƒR88 %RkxxGfYpPYI$Bǩq4OKNho [ޠ 7M0V*z:68pL-dv{'6H]T.F33.>1RZ^hrteݟs$ {~=1|T%>qUs٩CCw"pc)&TG<lUy=oCS7N˫z-"@,/"R/"jxXehkVQHx[~ۿyRhV`pd TbU@/GHϰ}zVAxޏrC|ӡw9a^ߥl:OG8T!3 gkYp9MeEԦ"rlIM1o9Je9s%M:~D{5 %B>Xo xdLp0Vg+xħÅ'x6{f\o4jMK_Snpb:v^"ƨE"m7w"ۢD)o@ob-_6c"Q $3f p qa($WRI6 kEU|Y(RF)痎KP :׼a\spD !~] w`~c㕑W{Kz[ P#}ynu z!ޟMRqMof9 FI7'p\5Fla Dqpg< aUs êm$VRipl0wnE1C%p[Guw=M`Ҧw2Jl"TK1½=1!/ {=48D u)CaB=*KH +.8²F #u@)flWH6F +b'4vcpW`;rÞv{iU吁LBcr#BXHz淶Olje4 NUWTϼMzMB!28TD :&[cݙqrY3ZiHCϰ~tu74T[͂;S`HF5ݨCn৮EB(lP^c3, 0]c\iy{rA'P3@гNi\OPXD䘃W߽93(~c~bV ZeՌZ ܣmdy[@\T>W +JJhE!bz( #0HLܭR,Rgl^+؊ӊ';Tqv@{:r-o 3'xoٍSr^SQ(8w8Wx ݦ#aD T RFv g' ,# {̡,~W :5܍ė pO /KZ0(/\NFͺ3.ɵ-yVscV|4u Su*Cn&bdR6$3O>ʹg棄d5~pvQ+҄L0DDFBX,l) Rc@1Cސ;uUxΗd K$ 7r[k#Fd@6Mf9GkI5Aƈ|1nEŘ;Q(ΤpV܆m#ܟ+;GB}љV0 L$<䴉(襢fF-su~6['1#6`!oΓdσ,PdksAnG,`u7һ1x΀?'k*M([nqHu"8RDhv~@If{"EUK#(M6gwBd7:Tx5dFB@Y깘t~_̊\y1H~mՔ#^KD$:S Ͷ>_C,5Rg3ie}uFgsrN )J UGAQTjzcrWMk1>N"b=_9oS~ΛCJhgj?@[չ{ # vBԶwY΀x^ﶣ* (.Z!JZM?,\,9l~bKM}y ظE%$!tJAPgυ’J%:\A[y$}%[q DoϷ nɯk4IQUsF K.#eTv|o%+s€Ep{r]9qp؍"c|ӯNS]0gF y]d{cs17]}knh)7־C̓l[ ]Yh_ PZ!5uO09~=@?՘#eI*8U(#6>Wi<(,XtAe܍%ae.o~K8qn܍E4XDf֥> MaYw RJt3k Jb*j ;شy(1&{<H~?%LMa8?nq} jrk-4c *9Ã^sXD*\tƯx%Ils|V<ՏK sqN#{"IlÀ8!ʾ4²P@dy_'/+&y/ӝ`IN3MJ AZpR˓aS@Sjs>?xCg##Ve 8V>EV6k4!UёLD \QjeG7b8Ox*ކ)32bP]g-4TqBovz:?MVs?8շ{U} We}XГM6.h2t Οm75 FG!*2uKWcc)WMow`8ipyGg ` khwUWVoRX {"ɫjii J4r֟>vpAz)g]1G' a:L5Mx‘p Vl~l7*Γ2^Iku %L].B=’.S]GG2Kij3 >Æ7SX*? !&iS4KZ4Q|xyX/Shc7T)ZY#v]GcA3~[]kz~]3fhNFhڹ*#[lmfѢ~]j[]Lԡ,L^zSuXAFulwIeG3Wt]S#ucUEqbw!~9a&] Y=%z%Dp i.餇61J5JgwQxtAD5yI%l=V*⺲%r=)ٜ GnY>&2ncFG~nW!ܬ}PP8-c&9פ`Ku\{cx|ye``J PhVQE8 &vߑn3̶)G4n*XW'Bh·x3/oIb0iOl/#ͽϖ][@§[rlorjY9ƏW9BKbK;c̅:pAmO{\p6jȥƖb$g3mh.fٸ3s JE瘯B~Dߕ7‚KD "94ʱIKQW9;j}yͩȪJZGCcVmPe';J阎vEGȓu=ed hh]ǮyN!,B1B>HO=ox#|NEA*Z!d*\Vy,##^'wX$H"38Éut#>~v}7sEmSiGP@/:cMؠ(65 us09dZAC/ m`9]H/13w0VBd)$L԰w|.z*&$(U9vG耰1yϟm\hH++9X6nKE`kV "wd/Z^P%`wk+Q<[w#$?ѳts(,9(K! 宊zWg_ q]7s67mϷR}n [(E.켹s발y4AJ}&٨-ͦXOˇøۧqm,M%DŊp*3)稬>q i)yUqaX: KZYd‰#W[NW$@@`=_S+F?^#_ks;4zy̢BWZb,*cStXNijU<}gHSltHQG_4oz# ߼E a.OsRRg_2 Y_5G '_^bo+H x{!\Yf>`XGkV_?zlXe ,]}i]CPdiOY4> x1>RMذRn7xazXlS05IGe3QmZfP(}OiZ:؇$ &sY6Y{EN 4h¤VW!}M㎃K+RutWL>b>qΣ rnsE;v4 SLpA[YCg=83:36l'ȅ>YbB!/bqtTN= B:T7TSHŦb{61FQqkwJKK\b♺%#~ ywK:3p4$7R~FC S *{5ϮUGWJvORh}S-BN.,#ѭW&ocɾ}Q/\:fYD?c pw/W7$6ͪc:B7{7D5kE;߆M!fA|w?%(z9`>78 ̹kN2: q[K-ܽiMT@~^#XFLiD?6oo5gGa,Ci2bi7eJ﷗7|J!5(vix@E~\v޴Jn="Ym|2J l%elXIN"IOR`n.3RBTZZh|vSHg79gQrOM9bcy;Z\A\叶􉮌 @lduS{8Q&漐@K YhR<`ZAc\ڝKGD3=ul 5\WPI#X0l\+<6ln4$_YзiptFmu G ?z;%dr3坆t cy7}mbͿRI8[ie#t+rp4l<=)F(TP15E= erk$ W VôXqRԗ\, @cKXy [i;KzQEG!X?eE[0wBY$%k,(yu;k4@EȚƚP&j M@>)BeO no{59swzBhX&Ai _ KzT ou93Z %˞leՃo{|P\.gX_s LTux؏Hi[Z\CcadZAgx8CҲ+ ,W;ű9@ӣ+M@wLa+yOGC__&dQÏM[Zx4k*3Tvj<[7άx@v){&tLς$ HvzDvKFSϭe4"Ā8أ;Tv",ZQ;q.0MnxhB6@ۄŀe LV\aW,L.E!i~unޥ<Ԛ^"u- aLE_~< O#ןӴڥ[{N50 +x:ߗ "I nfvіvU5`NTl{2sa(\[m+l|IС?!ޟA A^6ty"]$rLėlxΆ .ᓨ6Fr_( iz;5[I*cUX@,sp()yFj4]h8xAi]oe:*8 MaB-eMNL[-pY\avLp /W}x6z>6_5Z 3ָ'l:Z/"X~Gڀ@9iM8yݒ v9?BNh4U}mAH)ccI+ɟ^4,6b"S (z4]^q7^⦰n<>?$rJ\71TPh> ^lG{V+-I $,^V5dvŸ0O^|u[Q"=~&9VJRS*!B 1;Kފp %5oZȹŕ{CĝJP]\xm÷ Dژ փv_fr\KUv3[n#/>{$\+BU7 bxvB\+4/^c^5$#ݡRvh|"JsX]y!+UG7/%;F6k{D,5&L]r8p , xkA:Ʈdʧ';ːN\6Xf~%{=$ }.YMȘ d-Td2|K2g;ݡ0n8!)=~h#KwC"-s #qx )LFbYfO*uhdI:@Мҹ-~C#;;%E_}Oڶ~$ ZLM^ch&K\Kw3ǃvj~E.(3ܾ`Y*cpCwx.IcLZD1;Fɷ)tv& + k7N J `jCI;3'A-cŅQ{GLzP>lխ$ ^_I!x洋+ HnU'ݬ@,M)du$}Ӵ(]aCwG҈×xG!㮶S6~e姰Zx:>5p`MRBo¸o4y#ɐXyXK t7v(gT|meo*3xkeEokz7YyOX.}@Zۤq4NaRbW:b+ v gew@q9Lk O 6 Ica!bli N4iqax֬2FbҔ?rqJ~ǂJeGraMѩG6,\T)'ʲtnru_8/*޼O+, h0t~IC&>ӯH&pp4E+}O ?@UɡR{+.Z}m*KJd)^ ibT!<7GD "lXebdm)N}cUѿ6>cz{4ž]ЗĎ郹OTRJ9! }$oϊk!N Lk։ɨ `hYm_s|%;ݜail>%'{~n?hBk_=cޣ䅭yq`sױI js5GצsRBA=o|}ћ!W'ީBt}?Bx焞n~s5S :!:bx_^dʼ%Ȩ g~n=>U1:6H#?sAʳC%=zJQ%$5)Z6-;ietU>e/XB~w_FYd<&%mtHt;9U~tM0 v gʀ/ JeS?}t&߽;tbEʫ$5uhmN%=WY#fz53)*h2$R̷Qo$ v!~6[(R9P7֤&Hi{;zkoHm"j˫Xo?b,OP7󴹻@X#_OPBL~h Ca@;]vJwzEtq%gkA 5#WBۧ'G}_=)Qhc~!ⴍlX]KџV.m@ᙉre]-%-S}mͶXwMHY.]31@wXZت6ec9#/5Yy CLo(,j$q]Js-RIq/RP'\1"~]DGD=Y# #ٓl(ِs@Gw넕p#4'GfY9[*dsbZQ>< ,"`.c _1s}ƬስmH@k֩Ñ<:qw~C:sՍbы/I`?" 3qnkd`GpTx RC kE/uHw3%|.=Ik;iNPX؈ݺAG]K' ڢӸ<,ƪ9 ╓:֧'$ޠUP)[`Z09Sb)>UY ZڷE> 0_'lƲo; 8YZMҪ̞WhI%]vppTbB +ϩ3A;^ B):P[|D({Q[4j+R*K=3'3 s ~niMdؚK(3z%"VU|ŽZ9e dm2 < -E& _S oixi?`,Ek'a 8o_Z[Pl&rdk8W>2m/_2'~YS:6"\,vޤB^<ZE #ĹPR(޾SWWɀoN ӏQ51F5 L'߶t9/6kYYl,=lE2=K!8tYhݬ \;]yl/kMGP=f%IWX1EXX&@tEXq\A˴hOR7{? ЈQ.qfuK*"FHFW@"Gqq2OEo:pi_V=be>SCM-݀83ADa!,7d&l ?(&j]d(DdݾHp`oE,Hԑye@'{Z Q)n~E-S,rez rA iJm뿡f?5^ݲdC~um),knէ±B짏~$*αtoKqfGXKQ8H'PDHˋ蓗. PkYn6XauH+#Ūf Nb,ZwJq62귭%lf~"~Sfc74liVlg^L;vZ2}C̱BA̺r*Z1c[ K.Îg52[Y"H|?O{<7'XyǥMwn*HD:̋ bL`qpDMF[2LSxZ@9pS|Ilޏ?Mf'm{^ZT<\X$-!UL7aa0(E_$Pah{ww%<(g@E6*+Eɶ֬6 ɠRc WR /1K{cmSBH|"9*b=]`鿦Q:owL5 Y=%\2$eQimA "ޢXA A ?+YL#ߛzV>Cw; A׆1cŮP> TZ?Qd&哆R,~*{#"4\5q>mOV/?zM;&#Z3!hEKykzOQoIJ7JVOr3 nܰe FE#u$(YVD7/Nm٨.?rX5c%0:'DQb zx?9CO\ XxXэ-R[k569$Ym D.J|(]Y! *èUؿabSX@ kԎ@@JH4#ж* _'L7%3 \˚Iy=#b2).%)gJf*FNguhO8f)jM; B-;˲%-r[I4>%Rta ?}]+г> ۶{ۚJq:)MRZt>^TE &1[l)R+TkX_0Sz ėQV#YgU"P/h3Sd?J>%ohC+.K $?ݘiML oa\+0xoo,;A85Z9Oy;$}Qhv&yU_vM7=;Em}ejn (ئ_΢CX 696|$cDEH^ft6WCTzXۘgxLZt ʓ:l~Cg.}L2B*[s- v zL6C%۞.|G$K7H[1^WZH&]].spK@i33k|WVPs"Gfs ΊJ@qX3$3,O@eg@X*pJ[|`3XbH)+F+fuxM* :ZXfW4Hdw/| )m(fY(1eÅoi~ڽ-qyP@MekGY^?nӕ?Vq" +aVW>nBdu2^12kRH5}$ouԺD k8{'o5&;cr<% (rVpQ xb$ƏyP^5v.}\_lR/>ܾNs!r{O`%6ApO@?X #,a\}xhc+pQ0b"g$\i[ Mxbpott:hDL@C]KM@C2S>IF>rNSA) tZtP7@]$B":g$~r|+uuǿAz7Q@>bѨeBEe(>^,Z&HM"9 !q6,E剦`t+Hl$/ w]Z~U}T>dDwE#79Z/XDhv { \' %~ ̙8I;1?^9OWq.E(y h8_3&b˹QkqX%sCQ!*i]-Q U/?gE1ПQXnw;@4>5Y)Ub㤒Һl1hi*q=64 ?I'$oSAp2S\B#%L]cP"ez3qFx^AcNq%m`&L!.x@!­±9QdFZ2-=b3^&so|qKEak ='đSWTHD,S#X-fu>cB܈H:Z+bU+Na9 *DleEZkUy,&Pf(`bmSLk-߉[:NWd+nQ/N#-~ˇ+"SaEe =>?V#籀M`A^[xyf[Pu첰EH?*Cݽ#Pky7 ,d$'hqSNA&3TJurZ{w$Aj-~pe>3**˼ }2H3[2Yno35ͪWB(n?NN{\Rl iy}1/ 朒ÙwlQC@UkfH1ɺ,#)LqqGji3&T^?BST-WțHtb갍M<*J3`S]!ƚ~p:5c*A .Oc58bUЌF=V~Lֵ$/mӴhJ=IѴt Hg<'Zy5堏o.Ҏ)c@ p6jyH(wПCĻ:eE^ub)oaE-b?\fG26ONҲ"wJ1w,N\Fw|zf~lӭW325ba%N"3o<@#EN~ ߑ(w{dQ*#48^1Y&F5o(Q8${m&=>.kGp@Lgn@l{CͲ9ƚYsYqg Ԝ|{F6ox3X/_hϩẃ}; ͓|8*EY?J7=Z|!vָqZPQV7}Kj)RZ!EG), N̑5ocZ]Wڶzi [Vr] _ *G^}LvYٿS>ǣ e˟LK}-3x8, V*ڪD=vyu2,_v tfׇ AN:)Ch2`fJ'Ѵ(MzocS!o4#XGwڸ+Pa2-Ti!KloT߁%pf{ rW`#Uxg7l1 /|WB=Gmԅi(TI% r]RdSp-jrB%@Ijo.lEͽcS [u ilF:s^Oy2 SPii{Y\o'oM@t5AaʮPg$ܬ(Ѫ&FXTXȡ2dmBf5ϭ6jX]/xAh[0[SL!1{<>6&0523')rD1M9& ND MPsP$A] DUe| '=}/Ƙ_ueϔS7|#&]Z# lS|iRm-, M UcԼ+at |g#YoNקX2q?G 㾧;PӪ֔rMapfօWLG[x`_siأlPv1R $Os3 VlHPeUU=#c>>R񢌙|B _,G=Yfu']-LWTEI;;TRb|e.m޷C1jDԷzˆ>tՆ*@4rL@R~82s"5AX_0(h`+c~w*u <@I#6 2@Y/Kzh:1(++0b `f;"Cv]:8I [fRk+ؑh]N*:I)-%?~4N#Y6{W~ǿtf& #}(-Ev'%z QO0݄ QU~cN@XA.״N,(S0f)X!\HjV۾N?37]xJ sl X6rV[=gyO{Z!dqR1ɭf'= xӺDFb'%5F-EM<?g (!'w#$n~e hwnuNl]m/PR^3N[RxdVXDy[SA.mHC}kEwc[D{{ƣ%j 3|dRzO3S :m%4(GUg0qʼnǃDod| m>z3 /{4+p ڃm8"V7['})c'1Mj YپwB=`'%zYl-H'>5V;M}}g r:pf]wǟ %8gc"{-Nhb¿ r*5D=%W >wKkkF{ҁG5gQgE T[WH9-=aHgw1oT,5\ŏQoqAI&!;=(58=SUmBݫ؈޽Bc4i"O{ah5ykȱ a&X <!GQ?DnqSe\]P}@aNZRI $gVO #0?!wVeCx]wu嶁O/Qd=$nS(. ^VS*禗 }w]:d{͇g%0Z;XDjZ}N`;i.P| ]Tm-J w2$qg.|]=pTP1xF0Dߟ<2,@"^:=`L?`aI[4C-HP9Kt!ܩd4*rrcغ 㽗En}g )Md0߶FEMyX!Lv3ủ'1 DHe\)e{xфnH3Ja$l*.6o?bԒ ЍԨE_ę`p W}}M2 x%0h])Y;TmX?q}4ˈ(+j@ص=JNh})S[]>Yew4W>=i(zrz2D}Fo%{4X'RSFGr^ 1 uo[S{!꒤e>/CjpUc;e(,\r9>3 SH,x g8w[U?:=I0346SmeAڑFIR R+R1ձz`JW _Z֚f}luC-t $204ȶ]3D⭑OLDO#-49a|:OrO +WLc Ls#qs5|Ϋra7ӒAw6h͚zҴfއ/ *27@&46#LBXIò]i=APnZ!h)$B-UAz`xx:!X4 }"r*E4>topDyH": SڗQ\q*+\*I*R–2bZ.bOҥCx:Y[$?8Xcv3=r~o_-iQ6>eWH_?yb~ZpD75xV@逝Z? b2, B OcH^!o##v HYNj A maA(} Is=y5D wh>lޙԲ![#x{\萬 t:@ Jl2?fK}m L=$ K Emy]3!3Yc,Y ʚ46c̑w]q"MsT6bu2}J=}^ˆEj^>̰m\G圯[MbѭƸvF-d-ɱ/wn35Tx*"4yP4A2ү]+rd^`b.SE|y*pr: vlD#1]";^Usĺgį 1UҐSoGcSt:}t""5$,q= Ǡ7۠YopW _iOoa>n `RQc&-KBg,bA<hgmBz p%gBMUVw ,{_T!Vb`@Dgҵ<~ zs /^wah.f1-zubfUU@tX C֧\lb$uG:6 @8&F1\Ժ1uYt tڊ(mHQ:E;,Ǒc8U^ŤDBҍfbX4 ?"4%J(Fp8$Tԕ goT")j䳸ĽeQڷى'~J=QYqu3xKpna>ojpkх em6;tSzmNH ^:h2INP8 6{n{y`b[(RRɡRY\MbY'febTw=)/NFԀ&XPlPNptAR!bX\ض(k2Ca׃[b`=;S,@J@1"E̳ҞDF"Y@7Q&Z6vߕk7(ؼ]ExYi%0TZQM:[I>\cvm߱^PE`v'[oѴH,k) #P *. /AL r<;s3ݸ `XkgqqMiF)O7(Ub$KFפLKBq,kâV#d>u: )`xu* V0EՔoˏ0~GG%d|8L5as؆+DQrˆJ,!{怕|}+%>^b"%^IJ z%;b[)ojOtv4~*w9FdNƊ05=b߷(67t Ҥ!8sg Vn^<"4`eF >)f\SLWUDiP8T.ZsMҒ'Br!M_x'@@NWqrucO %Б֪O@|3T$$&+P^CPAA @1QJ_dG)7hk|K<+&jw.ʽpzf1͠wgY6cػOj4"0}n=qת%/ =&iK.,hS@N Ȟ[΋*ESX4W xC!% j=MV ]k.iٍUA B/^Y. ! DsΠfOrvlO#X =@,=˙Jt@aA{`AcD'&Q2.X ^4A$ b)h.vv4^6VQ,{* vTjXݙ8wUY>_"oRv y!q~Wz"Jd)3cFnTl(zBuH61}RIfFr}p;4C'=hOL1Zɸ UI =|QV3蟉^ tU10HH 2i,=i1LrAh=l :gۃ|H-Xzۈ+h''}G[@b(&F%:/ I[Y|ӠP<^+hH^4>é-, ji,SŲU2F-;+t_Ŵ~JyÚ#UUgX܊j|@ݬ_4~w'4 ;~^ݛX/jy-Z@lܺSˆݥS1^p\麻ؗ ƷvRzUFU+"vSWh+xt/{JGr :(3(kV?&2eҵɂ D BgpZf5_d $0x$t\o!_DiU!cB~YG~dqlmW,*&}\%sM̓xsbeUk*{5q2ǀgbL -ΨB/~9:xғbp ԵUGa ?Jޫf*U&1.r+a^?G 9`\;({!r U-paoY~i ֩0YyB0kɰ& ɹq.eߴ%7GBev$coQ a)=uvő/"hT~x9z>+ ֖z_ϼE{#=/eH'cpW=x&)\κ%kTL[>T2MkTS.Q$a,=.B˹5&X!Ɍ9?H_˸igy] AɃJoI-O!J31oRY\r -ո&{4q~zg+{Q pib7FkOqx `q*H)0RǪar[@a4l Mş D`g0:NcZ&sc @_XCKӕSnwU4A:OmgIWw-jHGgt˷6LTKed ,ČK?{nL()k.%%B#rs\|aH"9v7+\_m;A*N: ~AUU٤~ anKZP;Y!5fT! k0F.cڻ!s \A;۶}o1+Xf{JfWL3'7Ѷ^ HxF"P1h|ˀĖf'bZHNA(/EÈ4MBa!d_omY~`eo p3c vPe%ή?A\hPnV&oC\{9DQ'].JųX6L[]'O{Iqa!D43SM'sgK_9+{/:oH'E= *μz6#A Cյ { Z5crR_tLCr3N/ o<\]O9_4DfZAM uTR`7-(TaH@}cȩDZ5T8k*m[Z,6VPlC-[;?G}OvizA&Yih{ sfh#W22{y l* xӲ*&R'.8"aܧ"0؈`:ԂߵI%⥅) q %-^wrt ɝ$mV}m8? /2Dby} crtF9/fmg[EBe a)×&F\vGj..a-M&y$-`A#[ eyQ30a 0"in>WԄg?i5x.bc$54zpnYU79؎**)+SF̐&Rz-J@m)k{ = 52$uQ94kHc21r(Fc.Kԇ2NxղxLY&!m4aMQٴFPXS.rb?Dz:wہ[dŸnKhWbLDI Z@KƧ}^(z!7?M[1-EKRmvƦSm]1wa(DGҐj[P{HbFہ ޼SʷZ#}Nq8*/SuZgm+|! 74d"Y̶($(5c><'{X5bIUݚ%8R뷄GoGn[q#ִ!u*QŽ,S&~ 4xݫ/!9|fB<#NZʳ^߅u|M#]56Ǥsa8"7șӓȪMVO5Ơ5`v G^KIѨb_&~v-{X Ƣ8mU'yw rrPǚB)_ۙu֞ʗGGu|Ȝp&Ùq$@Dd m xfw%()`d2 SH?^2 Xt7'na7lzũ+!  38T;`3*aטDA_@ѹxȺKo^β=l-Pdb f"?c?{`n.ѐDJ~ih j#- HRTZ8E$j]l_{:8vDnKtdؽLTĄP>WCƖގV6wLsW ˊy@r ROEb-1Q uanlh;l8єy i֙) @X, ͆&/[վ qU'}02Ʒ+\@TlB pJBY)4U;$f:];TZۆE-c8/[C(lT G׀$_@AO ]0^TULvxa.{qedyy6{D63~>6}`A5k :}5). < G'2BG%ᱭ4ӑP4Uy\  ѩc<`C_mb_nAt+_)3q0{xޯGW#Ә;:9"z##릃4jE g| %7K?ʦqvJ£pN)v따|rO?HE0H/O,z\eT*eS]0cڠN)٤rth|ܮ6 A)Rd[ Md{tt)2TvzV8:@IY66> w}O͎` ،H]$~{}5 ,\JhkOȮgRDO"Yv?YykRB" ~pBJ!4|SA?T:C`_P0v%b#Rɥ(15;p -)ﮔ RQ^->lvgn)m+ά,nbqDԘKBLYCj=JڱF]J/ Ҁ7/ qSxc;=)ٱnĊ'fļs˒cDkdsʐ WȒ@އ&Β :į JRI]%mY%ޕ:$\QE/ b ];ZP|2i^8tQ$Ӊ -F2E$:0JֲFqΖUʁ+HvM>ljgꀌkv솋I0V*?3B' n7C`D'،8P٫xDiesYxeeB?d"7rN>x%T;Qt n`Z`QvrtD4Wëtd!iK\Nd4=FJ~&m Th]V08sP9DN4@pgಀR)jbw8J+>k[jBPhhL-6_ob`śpD~R\y<5S;':b^Ĵa;E$` 5連J l_A]tU>uZU_TY0LB{p¾oũF*2#-`#r]BB@ҝqpm-PD`// jϚúSl/Iؔ)C :ZflZԙB$7Sl{J*yL!HÏɌkI +'sS ~Mff}OĔt/mJ+iw7߰Ng"m6J}ڳ R~@%!'NJGXMck *I!OsTx;du2>B"cerAWtAgzёQ4$dx Ve7m~4cQ0QO3k|޽f6 &{vHS汅7I?8]'@?E}ؕwRaK+L4];+)5ErAem,@\5UqIH(xG>ӳbQ,{[r}N= c~,iT6oEm['J7CaX|`v3M8xW~NGgE0ȱ1VSu#=`N4(ڄuXLƒy׮h0m&2ABd~C, ybӓH)waq@/D`%'/Km ,6U:|-JR ,1 1@kȹmɱN&} 9ǚ?vYWh%"I> t*[$0%jKqz%΃."gv1.ƞG|Y1⤚Xΰ]"z|8L6A&w֟'g63l:Y[%au!׹QЪ58ъ7zɅT""PruL2I,Q°#|5fM^of|2 mƣ?!dӢ? ݌)ɥ;h~w 񠄒)D 0 BO4BUz( Y=-fgsz,:fyQiY'"Fڸ+gAˉhs_sL.+Sa%o1fEMJ0e.$%ăw3U2ƍԅSr5?E]iXf7@s[^ӎɭv',1EV'TCɘ0!Ο=6ށ>m'Xvj"):?  v:%=e ;6 ro'Hq&ȻQh u.T.H%E%JEHȼ4|0~Gon'<7PYyue ѡs/e Rau\<@*ݚP ?t_B|2 ֈ@\S, R'ƈP70V=`Vz>`-8PViEC#TG0y}/e(n5.#$ {՗E+w!LJH9 mh@2_;hgE3a׋~SࣴfJI^8>&fV`xfMrLѢJQ3S*>h'~=?Y}kQ )`3X^o?`ξaу=BkX{:}Ubְm,Y3^;sy+ʠ 5˶ >oCc;jU1˜5&#Y5PPW31-oj(\9a,$b3|vQiXؖ/g-Quu4?dJ.7 D~L,D2<-)_"Piȥ4W6_i8ʁ]|c^Wћ0/߄ fptV{q܊*aN¦Y#1V@1s0s38XJL*W0H!gmzyɬyUGE"o߽ϣx>lWoR[S"'K~Lncv{z/<ǯlTA@[[)0},˃d4/XWjއ`&>o*:im,Iȩ7yta^wgM?,4%Ϯk5\;אK>R8_?sŋYϞ`?<8FPl'/}umeK^:E?i'lB]X:9Jb"K"ޤA\?Neki>2>("O]h\cC<⸍Aevtߍj J@[_wR4R!'oA!>p F縄|- `yĹc]DfCvftڷo@ VIxk8K6 LuԕԘC<5QDy6Y}ͫEYe4LZo,su*Dfo^kYTĺ !ź#82:_5ZI'ZBFr_ uG2fttzKAӀՍDV!pzP yieC= m/Lb/ +W0*8v6ǔ@c'z0 ) GE/9|2z$z >KSޮeR2ܨؙ_<8^[j1m)#d";'"v;rըGG!B*ZcyxicMrCt^Lظ}k*{x􍝘gzǾTM EH{:+yR@Y) Ma0Kl*FTV B^J*c bm}C: %_[.ըh A iyհl6ȟ>z6Ab0DV)Ij^\LDGNYc=ചNVT 8~dɧ|w Adg/ ~u7F6ĺ"xWkHsꛉM;xC됟u ΪVZCgkr{0'TN rGֆ ʹtZ$[b>j"'csbd-\WzN^9; !`1`QHUh5KYO*CM3#ftې'161̎Yp+ضLW1oXhc$2FTUȴ4j]Rk-t2d^y au*|L]oKhyBqhXT5D0V}|˒uK(э6~śgr ql\c?^\7RxHʁ&Z7XI2x#LbEvΎ P+Tk(fOݫBKgsWS3oXrN171[譋d{6ɴq߲c[!,Xex6fb lC!KVvN Ȧ^ӭeδ"LW'۳PBZ쇘QpS8G@.Gg>P-u&$AC5VC\ 78 -;;ê4)7ʊv-appG9,ԏm"= q26RK&3ۅ 09PƊBkN$[?J#ψLk't3ƄEiDH c$F |tP:@udQB5Gk@bw;Ȇj<5>3[J!!+ [AFB@8n𲨲H? ) .`Ig>ٯ*2:%2[5pw`pLPI8|,>CwGڲ<y?Pܠ/^vXxя d#q&hjNCpM\BjezE-vPfIm8.wx$;fg k¶ /zCNk D-P{uEw!+[ꭀ # 9 1I8 ӥᬣ0ҖpSIknbYCBVa -U4'\v .-/$0ӱMc|( .ƪ+Njn" ZPUY\1u\hm,nGݲ ;{pʌ'3=̪gnDG pUҨ'gN+%5*~ͮkLc룛侐g@}/>lՀu q,0muaTvr*S}:%@Ńht42.#uQv 58;$t=@Pj=(pYcw}"zZmhY# EӅOdh(]WGYdecϵ7|taDqz)ˮMHsʋճm?b-#f^(@j X;tt,@0i,ǝ8q;ڏ\,{7 ?br|xNWʋT N=1ʼnsRV뉸sX(u4rY9ux2$t@PG^Q#@QTa 3¹ ߃_߬s=sV9^< [UrTptR"@YT!qB-&}Ũ׉L> xe rkѻgዾt5^:|؎q,4% &uTUԶĥo蕍=Qq HKc5R^^D»ҡo aB+84G6ȝAJJd T M'~j/EvLgg|N84rBϚ6F!} -+sB qȟ=e# 1|^,?ƌڹpcy  -voaJ^\y@ ,PmY),B,>q%b*v;m[ZcMeԹI$o&71% \ *+;]9gGl&*ْSO 3QOre}^i݊<䀧\ 5cUڮ2piu:m9;.T^A || }wv8T5Onuׅ J Sh dhM>ᄰZJ_!Y8mI$(y81ܳ?"v<,o 39Y 3 Ln'!x:H"Rin/OO+n0p+IkHM/ D-BQk" (.[Ji?>oYUnjM}W_o_Xh wש_L HmC` hǛkKR⊲&eozMR]H`4aAv4}e `p-lNi :r7]mmEޖfw42jJ9k,ED1?bYs6S\Fumx 4aȶd +r1P_.}-!&q~׭BHXAKq>sxħɪ/@TuCKs< wlë\Zs#qaL5/`fY;&{F\}7lUh{j+[QTyB0% #z7G)0?sGU5 D(uX/gl=γqǰٛ %LH7]Y'>@ FR0m1ڵ&Y7a*k Z HG[q6rhӫE2Mƥ'/KM+<ޙJNyOv`Rrp`6|m/0,/1B7Gs+ܒ ?ᠣh4DcχbDRkzu}tȲ0g@Cqyͩlf] r,mU7Bs"RF!H[ik2u=HKp>^ ?޲UW?e{D?XAouԲɆxdȉi*V\|P<Jr-o){1G9YND;V߷P_mdz:cSΝ8/Y_Rl'Ҭstsj~5NZYш̎dO̰ ~+Ib:>Uuwkٞ$∬*],HlR߈0U :@Ά+D3D nrǯ]&B?L EBa5tnQ QE*~ȴ|3Msl2?[W{7w] ˻٠0qs*y6bPPe>ou9^--^d{(PGF0ebmUW5+ AQ0*/rqgFʕvS-J$s,5i1D,wDnIs_s98,:Q( J=f";p^|}uJj ",xLIWXKIY!M&:LVDjh~gbW<roe 7<^Wbgb7O>zr*BB 'YA~1}.4@T l:'뒏}br dݝWkcOb{ԊjIò|@SEXvIsslI!"ȭzݾU·]FmhW=@:U_]qЖ5H6Yrye>yW*D# !BTk )"z;Vxl0 `*nulA9!.3]SifKpl8 kT-YNX(6:cGB!XKY9eU6'mɃ:1N)ٵfqDdpev!u<pij1|G+j}ZdR]фW)ռ(K\$!'!̬*~H)r)I.M cA\v7'6sHu_!&p%Q_BctZV^]U]`G0ؽw/N?z0]w BǾ#nG͵:)n8ɪަv mT~IJ7JtD $qưԬ1,Z"NNw٠1zu]1@0`)N;@f cm,QVtUW1y6ofyh1!euH O @?i^4  c@5U32Ń| i̹VXyvUeI랎 e9YWuXBn#d,튤{{_X0Y: (uk"LVK:>yt0e . ,d@A3*4) Y<&o9-Yv/ͨc]NSN2? tYNjrn.&ϳcD|X_лJ7@bId5N + DWt/JP?w!~ġA|w>^Ѯ>擊.1v} #cM >/|z(me[WdW@Sɣ-UVnU @?녇ɧj+LYF^=ZE>'te IKcy=*Ez dGDX/;gk*3Xȷ4H;9BG_ ?ޕT~"Gw\M{sH^W=ޑ?3Oͣ|!T,[UKZq˧d]RҮ0;(qe7R߬@`4(݀~7v&j-p]rLpj:|] m<'w5١?tp*:,s| ##Q8σe[/4.X/D;<-0jp+NN&Pv9iUr}fKZDa#O ;La5ر!g@rP0c2Y[ԩ' !X\mkcˆE@l`]]1RouL9zN+q/se@?4erp+PKhѺ]RESSNF"-9b<_xT-#zN_,cwEJi_UXMt-_0G rl; \$i(Iee}K) K/<0tzط U&a!k̽R]yMՍspPE9Y\R-aNs ci2?8Cz;ѵn6\%EPck2*1NDE*% IΦQ)@Ӗ 3^eױcݤ-<eL J ditԄ,=GRW0-_z.ה~}6@* gETwS̼/~2t]Z?]q'/\{a/#l-rW7,JL*U;hy"H +Kd Ӌ2->c2gZ8oNݕ`*I%+]HtvSE7NN{-׼wP?ݙ\5]`*Z.G+BXȳ[m0CUrG͇a/!# _ɳftODkRۍ'u_ʧzNc Yelyah<7)2՝UPLTwD*fk?ƤjEQ,L-&eqS327s{뱺?ϔi5AĈ13^s[ 0,sΚ~s‹FtlhE3z: Y=: Jo^ ֍*ݺ1H2P{:)ь;UXqhqoe7˺= cWN-VFQ-#t͚)%ga)FO[T&Uoq:n]N34$|;j= 4zb0VxNge\Q7e(ŏK8+^ϗd@('W2ҫqo4p(`-ѻl~,"8|6P9 `"@pxެ,a%}qsK?<4QCֈoI`Ɨiۊ1HpM6`[l8[3ꪮvuQ@fvV R rGb{2/Bj+|}N 7'ZB:f ~-,,o!⾠؁M =\4֎ʉS̷!OBҞI: s#td *)} mph2$)  bGCI8$tljM_1ն|;?kop/rsRO蹍Pr3|<S6s){7-$ƒF/)ZԄFB{i-"иF=7-%-u{Rݠ,ZH]";ݟ]L׵BꞾB~ Տ7FEx"OW3ŁcN&ٚ%WuT *r:8w= e?ɱ8ߎ"1cJ3oCw#]cbI-9BqQ#τkIK$Qr-40` xE #VKDkƩ Nn:aL=jAOs5J?ЀFsXM sju Cslv8Sj'̤Y~C 9|R JdR}^_Pl\z[3;E %w9P0c^߾˟B'_(v]nu/d]X$ vrd]iH,wJsjOe -ʚHBpOozT[DG,C#Ii;"){Y)Zȳ4 =;̈́WxJG/@%I(%1ì f4kl8Bў@OxfN@B#[eB\+ס!˚>:VQ(NNw6  JXt]+SmʤK&8G"-^S$6|Xgܝ}ٛ0O,'{Ν(A{>|*go*A-2(+9՛:Lsz-GN_Y[G_UDMc |*#TE*wбf[)~P%"iHYG`a7"DSbl~DT}>EOB9]S>{©TI6'k6wNC>A =XB-bZZ:moQCSҗg'=Ϊw=h N>1  2x|q8K>&F UOh-eOUkp/$eQs;A#<ȡ5~vn̮'mFQn҅70SݰoB$FI=6d=M"s*Lvcіwyv!O >u۲4j,Rǔ}ƽ3> ZءoO8}SO+e{Mq88.M.(2{ee>[rqНL"k̵8*.UnbEIvIҗ%BKÕHD5|>T@37ۉ!sˣ.q,7=|]թCkc hŴu =&!ЧZ*wְ0bxoVF(9+h6_to 3y-ASEh&QK~$G !L]{:j~0Q5`-$o:xa.Ȃ}cYzQ*yJ-ZZ?͵:,Y:jĒgQ|M| ["r, ^날lFJI1f@Bj'zDhHJ²a\/+:1Tk-C7pc-CFrYR)y ar"Wךܣzc4%C7 z}V9bxhzC6v!r&k O u/iŽq Bf- l9ww9.|JBJiO V{ձC}F`'Y@&6*xJ $j"$HũL]{JV&݀:ͧ5M=6\7Y3TWO?wӿm}x =h&u2┍./$؜3q̋6?4wp3y}W20E(tۦ=Rw`1r3$:C,c+{׿.sG3} Fwڱ!ؿ7C-LFkRZ,Ee#;pqP7Em &:@:N~wU!FЁP gy{60oߵ;# k3}mf$}7#qX@Ѐo|}T'KA񉒇g(ԥkxʺ2OҦe~? _ZD_aPDh.5HW}Wf&y֋ UTBmyq$roY*U޶bn6RgL ۻ1䒆eB9+FyDWq7V3Wm͉.Lnjd@b{Tt>G,E*v]nf:Sj>3d#%I+AvW9# 筃1NC&KSǬmh`w>+y #g)Z?CMfŒ!RfD3~/jl=?=/S_=xqh:O,PwZP _o~;ѵ>/`JIF,QHh / sK 0yq)"&`l!?5ZfI>c t>|+;Tdte_"THh$8sr۱1Ho׭-r,I%NOjOGi2 zڕGr[ ^*6=30 y^0&3Ԁ 9 -c.bS) Uwz zKn-^Uh\ M<@g ge؛n\D{D.^ߔBM6:ry" kblpN](:U3S=dVz.e N@%p# >Ȋ GWez 1tJ7'%{EH+ 1@}ڎ︍2$\o5(LCVܜ 9~&%^Qx+ X9ZRnB6J6~3S@qon^Sr)F|h7?fٖ>I,s%{pQ UHW'}Xxoa $<0݊% n6YV e}˜A±$Tq(x׌EDi[0V,&)j"*6m,!]`8 m͞q+ںfcn|Ƃb. ݔx6xs$: ʭ /G񃬖fNХPž%krTl»3f3}(ls\썊ڲM4 ӁI eMӀ`sQMNݖ{ A¹ Ǎ[^p,}d){8JU#wOM ~0t8O4M)Ft% K?EBTA e€5x_o7ѤEϲc >RkWK%,!HSmuXgA_|\O^5b#VA9]ilth$* YwӍc?)+R[K=I)q8 .]nu~ eNM?{]!|PFFg?qzjYӐoϠb}tхͺS~꽊xOCu~2dmjXQeFiǽ}9|ܠTq19U>ɪj{)M'zZe >5u%UCHt̶8Z*}d@ @;s Brj."pЅYي /oybB{;sȉ,H:)oI` 5ҲKtz }(WGyLvh^!2h >7ԠAڸ&k@ 5m b4# V/@.EoDۖT⤩J5U`(Z7>;;8GETH37C[,H:bC{| 4_bC. E0fu)n.Fx<`\_Ʃxa5eo/>Dk#ϫ=`VT^ m #JP[F$E~߽$ۭkvR0{zZVKAEQǎꆌKPOxL|NGiSe4d77cϛ$a96 L< +;p`a=a3ͷqwJ7XF sKHqML#Ȥl;U|3D;R .\SXmQ ;]2ԀbX5lv!ǜ":+w;<3MtkLp5'oYmȠy1B+w'.l]S(LkcR[ Z&a|Z(MCjEx{97K؏"rމ{r8ì}l0IVHzBsm3 >BLV1@N Ƴz9tbm--gz[MY8"l??ʽ]ޭ0nm8+«t(¥ӲY-bç{ϫI/@td{ؖ h0n;gv#'Nz*gllȺn!cL)/1>io=QfL/w MMSeF[vI.&d"Iٳ/p0u}&,ϋ.q+Yj;,g?A-kg>0+䐄JY~;yX)32S nN0Ie7&"n2T_q;tp٫;lnT=x糒{FyؤIO}04>%ɟ#%cZ-c$u#[1z%N[G\RL$ڻ'nK;[*h'1HΉ 'nw1y"%?# C86ԳBbkc=bukHT2Ct +_2AmءIg`z=-iìN R  \W5>gշ<jGkk+߈Q*a/(5ѓfCh-`f ,Fۈ6MUe4[h&9,>B춤-Vx$e/וA I.E)~RJ,1S5,׬R)0`9Kl76\,> ,D A(wTX4M|ҢSXJՂMϡIU\"HPn@?s%)o=]@9J r=Avsa@n4 r 3M\E9-WsDHČj ص:^[ElHb=bW+e^ amN[*xH'31ذy>#)Xv6n3|8,S@ HΡjmC*^&g}@ǻ1„ 8 z@۟&OKUwP5ɈR:ozj~=^zps#;S_rY;ōa@gJ4#ϻ0z[z +7'O%Ү5Jq0m]1MdNӿ7N埶 |<.~"HD*YKL!id4G#L @Vr {V'c*L,0 ߁.0WLX>5So$t PaRwmn4-[Z켜A|݅(&(gl dI& [B6)Yue_-5gU,oVpXM82`B6O$55r;kK%/';U.d]TSh0leL z[8|E9!-Tդ$H[?qdݿ6B\7rBZQQSyGe. ߋ %AّV|T2UBTu7$fݭ7"U܏g7'FƇ%UFK !& qli~Re鱻 'SŔ$uz="YzKSKXG.eƝgvHK)oP6ù/pBS~'a3@]u;| cqϜe8Sz\ 7Պm9w:(n])쌋AeN 1z<R-^ɄY<5ZKjɘms:|Nj*UGYػ62{DxD!K%MƍM]-s6 "8lIY>_5d/Pˉa(5N^k)G@l6d>Ү0RPf:v+ ˺A[-SAjy*vлֲ4pX8OPcòk(8ِakqI02t7ü>-;r? ,qݧrON;- ʦ``ƯPw5Um3(#Hm*^ ` 2وUw6&YR=jj_Ǥճ _:7?+& 78= ƒt˓0= u_K獾Z1 1Ĥ^:SG; JqvIʖŜ$Ԉ@7fIa#HsϢ.As 68)VQRuڋq1_ Q.&v5"G q9K)70yR%qEUi:I]zWԳu+\G aIJ@3޿{0r=oUBzAAц[A(؃J |xx4g=O>.(:fCP%~(2>X)vjGϏ*Tbnm8!NвM|='&:|P_h!K{cNZ#δͨ{Y`|[ ~-JyhBiz8ހ@A_' ^ EEpDdPx۳0rn%0T$9q$2~4M'{G^!ddN4(ZfQ( {L 'ccE@7#Ru-Fk=mpeeۨqe <[xTN ~'y:]$+ۢm;O@.#-Fm@}zD"(0~kl^KoqO bw3yOO-m[¥ycm󬐛]QWids8#~)P ꐒI=i|f獤Ϊ'jPM(Ovc:cH , tJsjb:#n?gmSP̉uGJ@cd0?H79,puOISmdbv;&e[(Ͼ:%X >5:Aƍ e0"1+, <ewQ*yn)YG;;pƤpB6 ?"ذwWu~"iN>`q7F0E#!h~;4}<P[$:cȅol w.1fؗYUn+=MrRF[Î Gp [.J(b_P=Ni-&>q~f}rRoebG'񼭪Sd 8'3s5$  ۔!A2Mèk0kMn_A)ΈɊӘL|Dh ^#d4@N1!&տZYnhI\#_Vim~SBD|]DAۼB8QPbDY j yZaa8? n)E,QB h^X &Tqo4́%IKܥ:Y2`6"V$f FK+`e" 7yc W M'ٰ [:Y WW $8* x`Gasot*w\=Y+Ђ]%^mh9G%ҏif$u5d*zS=op0dSm3LqixaR o'g2]$zW2iìl/U2ߥ+XфBS%.(k 8,DOqT7b\ȔJ/4H9!t\q"_X}xt?@*5V +#3}P_ЪSҶ`}A }"opSDzW}m'=5E` LU78E`7ۍ֞!.h!jOEVAEÊJLɩM0OktS4U$ox C81>*an@<j(Q?,mʦ>a1XQuJ՟T7$bfJ K<̹;0!n4bxA5UqSv)V>fIbz` 3e9t絧ILԠ WB+qg>bRP>S*%d$cfv ʴd} 3y&]'H-OTRE&^Ft.ʸ rEYCI#Lt0zkҏ6B+[V*x<7/س>\U-ch2J졅7?"!_\>zrV'f,^Q[M);*K9MדWfٺ6 dP<ö1 K|P8n{!XmR3bRݥ.46x‘ X5s᱁:ͻ-Zls26YV0(B o׫=0)tV{J~J  ~5oqA:~_CSJʆE\ú~z]$W'Iʣ?'qΘZM LI>Ц(l:b(relP[ˌ(tPkr|nbBizgO$`QcHXb4,v^4pJ" GURb!;%lX ((.`xd`au51⍳}eZo8\ #HL*dn$Di~IR1 wU_Qs.+i SbcO`-g+8_AcL  !gMPzrQIwVMv5t5_=*C,:w#bA=H2F7?+"LDjEK@ ]ʣ XƜe< uLsrnȂdwl!񬡮gA{71h#lj6f~H'^1*CXP\T9h˕錜 :ߜ+;0|cT0/GQGmoߞp#Ii%m{/ɟi#9\$Y%E8s1 U.̗RėTKt`pElDReCD6F+5_qY9-Js;, /a-e l=(DPY}w$*2W\tq+fWAiσyʙ@] aS(L, Co (4?TY%h](ON>O s맷@ޓD)S4I n,x#t(IISns|fq'ٙ^52џ>pE.S; '{DJk8!M!Gk w=AVOET?\^pT!俆[eSYrMq#UyBXgb+tҏwa[:x3 }@e\u%A*nusƸl;H4[-RA)I6:Kf ~UX>wJ9RK 7KUjmk?GE~vW_7r6A^ 2ҟWEٯuLRĭ#wHpG[o 0#[z!068>`{+!Ka^ũEdm΋UC I\afvbljqrƘ2b"ဍ;s9GRtuFN jAzA E)_дEc&^}d[>o}⡆xIzN̡^̳1fO@uײayYۢOBg0|ԿD܌ӝk>CBv&; 1!Y1>`K9,¯@.62+DSIGkOC^Cd/RX {OXh; |ѨbXAKtqvS9N, J=Qa$u5|δ:y~\28 G#u ^ !w8ѢhvB 7BjʧQM7p4GwzlBl M#DSScQ!V&hE"||*`dI_{к v-7L&܅oIX,LrF|V<qBnM`]Ď7ȷ9=6.}^hnI 'Q#xZ^d1;de٤r%dڝ5x ݸ̪A/ :pr6l-Om`a/WoLmo u*|DaM(F,fgM`I J[# U5+s oJ+Y-sJ\mSoՍ%{ |w#pl@H6zSS 'ٰ0<&2v<2?~xo*J'bf*O'tCq"Y:c RH:gL5љN dYuI{L*6$n*d?pSgb NPXl}2ηX-^yb!TnQS61&9'ZdY0WmrXqjOgF%M2iuIr *z]6VQ{Nux_u/]!V c) ZVMnFdxyf&_^6/rr.!@eXNLj+lVQHNb\b*% A n(^'m\;Fn]7@Mt Ga萫l5q,U9I˰Qȇ+u so 2 gKh1ZQ,lBQߧJ $'5hX 3}-Hv?۶3) 2Qj[V43s-;VSb%}`~PzO lYV"&"1  `,L`iDTɑY&g _$Ĝm[+Jz&"&\<@z/gߊ, 5iA'YvϫtM֎GTK^+T-i+hޔ/HHN;]~}[ .S):iJhZNWLtLyyɹ Ad' r!V A0TEXkcc45$FnyGg6C˱A~N]+B+.|m^!C)CbHf 21BlV,zϬoyw:~V5\^r^w>c!m VԎ|XkarccŢohDOJ]9ܹwxonAwd|O@oǃn~S-k5cԴ}XH?俨 떸`Tm()V(T8͘Ybw#N݁o0hJXpSvvW^ۢ 8\4e&ڔ_0*C8@X%$=;FܬkY?6R[mP ȝ8jc- MaWtKH3nhb<-'=^ C NmMi ^QqB_"!VS-DX )'K4ˠXPf|6wΏH,Ugr.cq6,[z/>tڮ̣KgMr t% (a>xĂT;o?m˿UTfw$N} sgVKѺ{@#/|θ=6~"zڗ.B4w}6"B73-[,(oBr;E#%r1)ERt[N>/^7A-*wd:1KHǍk,sbxva˜ƃ-_-HMִca|Tyͬ13A0B h3͜KހA+DA rSڑbۣ=Һ<ȼ)E"]'WsOknvsKS` upؚRMo*hbzcBÕfIŏϭ]CʐQQ %dZqF%&b\n#Hcp'(rIX47 2]~5;$M64&ɯGC˟L<5rZHft iX?RmT D-ҌQk>GV;()yiYzA'bY.Ѫ'KNE4ߏAfUԳGTWpO;(qVYIu':_CP+/ ydrx~h]<.75|Bц0rqTt6LK8Xp 8h}%N+$)4zVa@ڃƦ~P X؞جg ~ȎiwJ+6)A' F-ܻԊ]5j38g"E])\/G彐\C,LFǐ{Ql#b{CH{-ڛ[^?~ՕB!`b}[^Yy:Mcq: 1!k'FgHD=?:bp8%a}$ĶgpݦH "“ClFR 3%34\Yc1PJ O*%X\e/̣F*83[ƭq#k>z>wE3ݦvc覯.'v/g˕fÐ*)Zhgw54 ت#sptanR)\j›<f}P"V }arRبwGg8GM%7'&1%7BMhWlĆ%; Q \ S9)|ŕp$ͧ*8q 7{ۨ(~C?MUwןt jW{VWS`e0`vqwqu fmFYӛ.)Hpg1Vx2d??N, | LJ?y} [="D$ 6k6ЮZ3@\b/ڔOѳv^ĥCBJ Im6#0xb2dEL\ >W}H<:2{GAͮ S]XP. TbECZ E3-d59GʸE h*TLkc/GקCDM~~ nZ->0cùhAm1b?C T@xXGsPX]N#Tp%"tpJZ[nӘ^37uS5VܥBa] }Sֽ9Rz+ߙܶX{ vq?*{FW>+~zԷ](e ^t\7 XMN8v=HeGnu8k[` _BL-ėsf574аhۇi~ñ})eヴ\}){GH)X^r_ON\`="tdJoZ e >#:&KseQh{ЪCgg!=bPIm(6 gй^TvָDڂ^?GAgJfVڍnAsD4m(eśoRw^7WB'OwlTKXu}yͰV1YjUDFUd<}VTAuFef V Hak]!LI[q~''#c bP^2Fj)rV;{h_=xפ/\ 8S"cSjN]<]>SVn8'Œ2d1>'%H 76&|L^%Yi ' >"~OȔ}ř[GIa%ٱ>5ObknU̱O&F'?RIg#Tv(r;QKdͮ%4J0O7kčShԐ&aGGqֆ{4fbq;Sd0CBH+SG$Z@[;f AQ\ߓܥFRc/NoJzuEЍpR߳2)Kїr};KJ;̜N lP'uVc!KbC*݇>z-攈 d+ -e[xUiZMsio.ZG`ݯSgWTtL<T6+؞Ӭ+oj BvLo xcK0#3cT0u3(QseU5Oūo-IW5coN3ZWgJmTwȘ]y-H|~s4M3[zƟDKe_ZFiqR~="NƓho.u9h8 I ֳAx(Yf#%kk^@aEؕc-ΙcttA$=sXV<& :f)r@W)e2/tuuNYM]F-@3 ϫ$OTiTyyY' 3+s:^#) Sg3d0ߔX,_!fc$:+f|ԁFu9;Gs_%|vߧZbBcxljL^*5@tHsh;Mȁ\A뒴Yw o~&<4@)3cQvpHVY\;t3۱x;Xvl3Z'XhPe"qJdcDmhlwړ øGt H,(^ͶP }6>STSgNPJ촫4|Uke?4}+d_/@AVr _< >H$G3p-Iz\ EݔLama]z炶v z}hAڪgD([鐄< oV;ޕ5)$bJNQ8 ƵznI'oמ?jhݾ+'؎d@υE2E{"gcs-&(*O7vþI3IF|#I 9Rf+]Z=0=և+߇e)&HeꀂtZ1mG)L2 8 +iSı{g?1` sA#X"ef kޛ_a cdYbx ޫfΙ%0d1|Mio 3vN=8fgcsvNfPx6Z1(-*Jm;BoyO" 1٢_縈x (RƼc=*\^zuNpL4/ʑ$^JW9] e/Wʑu\v(qY:Rì"j $;5@JiW(5;R8e'2B٬IOs6B+9 O\&~FH $߆< 0;q`L1bU<3נ>uF7. ,kZַnT+<{ Ej]58+KmdFB?2>Vm\@PJR.3 Dw FIJ2v&q mڑ;vS / ?զIbΞqq UTI^΢.)o'Z;LL|yui:ću-L֔­)І3<ցځkywSwqQ)?lC2 yQ+\J} Ӿ>/,H XŞ?"CKL^egG[(7R yÀ2^ă{2;λk OBOEڜ Ner_6X r_.VUH\´~MM|i2ag 4~R[UKw hslc4D&Ŵ!7r]\SuFg_U52 yqS?e2aF?Gi2aH3hYϿ.et[yGxVyn$fV49'*HN;% ?,Wk9@SIQ^!~ m̓$ωZjl,/SC৿l {%+å%OOk $! {:zUs*ϵw'1Q{B΂ ˊE7Ky<[2l텇SAGi\/Ka{;Q}a@/=sDJ lO< ypR@њgoۇ&mj02;˓,`*W&DjZSdTR~LQ>bjoEx,x3f}fnLFba4bS(-mϚZKi¯R&-3CUT,5i=}k\33w\F8x8 8.'S(r$/ӕ^$<p>@:UOnQubyg"Lg!Yc>#,l$XtvS֪$W1(OK/fY?Lwg>;NRsU$̥-Z<TϨb@^]ϻayrBNGOZ +87KkrU`{b\/>ȀV ]SO30fIhnEED9¼+?o1 Ֆqm(ޜF qX@"{JO [{Dyd&`K,](9Vah X:7zc4A)ysSFV:ݣ6Hʀ]v-ai-{nyHX<V̓ĬSјdVXB?o*R$MUi,Ӕ!D䫠 B.eCRB8xugnEmRabc)%u^jDoհ6?Y+]iP*W_Wpt.]Z{< }2,W} 5Z20UIV)L מ% tdrJryVJ Q9s*Rq&d*~sg yJ rFg%`+(~ CxJQoJZ^аrdh" J:9 RGFgx%E48b*Cy!fćI1Lt*SW5gBeh< X8N>v9j<.yl`,dwbecsW$WL+z{~7qG"^x>FQ ()/tb8;#F"lWIgZ3/ C\Ni8SOSg0@;v ʾRB,%4jˈ[ESR'ճ݅8w[|qWK?e_]8[ na|X3Qy+o&pf`nI)9J?ߟ~UjC^巇 m<:MO%#;)ȤVP΂AzD[R;W{tS3peĝAeqҍV,2$*[GnS9Qpx@|ӊv~5D z%ZUeeORzN2enΠ#U~ӕ dΠv@  #g%GLUA| JY+zv5U"B?k6&-YW}=?5Ժ/X=3Vgt/yЉ20+'h_Rb)MlĒ[a l&4-4#U4o.LM,{& ʺԱ)yȚ G m.kZbo:Q mw"Vzu258bo36uCc3;@Y7a_<^Q<ZF&M`eݡQ{ Ay׍SLrF=;ox-ƫ5z}.M J&Yo_΀J`!S@@ߨ:UWݖDKPr0Yn!3#48R, ,Ù]V9Ҋ|&%@)n@^N2"dǖk QV?\@+ #aK֥2pyۣ(h#!Nu0~IŎ wH%Θxz_3&6T̑zDA)SNv?ShR("&/P. f5g.?jm%ɒ߳`c ]RV%ExSOAξ U~ buV!Aeb_XBRyzϟBuwReEtkfݞhC!1F-vu.(i"I)ZT{~r49Zii?!VC-ƴ<68TQrqy (sZ,`n{-0kh1<#"á?tb۵S݊LHP*[N&>A+qOϹЅQV'=kY;:.I9DcSQRIx^TSZW U&Mm%ycGx Q4d e!+6cx)L EVt2(xoFfW4?dfe`ml+Y?zˡxJ|P#ۍMb9A>ℇC8'I7gޖDLLy_C2oueLdQ&6v@/7^L :GFJg]`sU;b@;h_4;{E"akMpѴR7oX8A$ zbbZq%5u&v Ȃ#[ޡ)A K!w&2 $k0Z AgQL|P)1ˮ pZtO!7976 uqk1BUwoiXY9xN2ȼ?xE8;J!*Z<('4}j+:J7+ə5#?72q馠Bhi+";#L ?t]|zPh 8P%٩6q}6Dd޲~^lq]I_yl*"7p/fx,(0?^ v@={i@^zBP-,0ycЫjED@qw{&-g9GTYtO9T RHa*Q|-] B T!Qb/uܔzh4vŽhƧ&u$dp[ Ѿyv3c|0nV1gUqd&?oyFW#AjUg+s9F< %" 8n2j\*UxpOyن|>tRO/c6Siv lKLp>5]ul']dAf{LNE_5à`))fvLYbsNX"]Q/TupZܞՑInu]o5lԃ~( nɜ5m$ zƆjMXY2 w$?i׼%*qƇ$/s]71yF Y;@3 y): LP!ʰ~lNC{ԧӷ ?'wnG?B"<.)?qd%\Ȋ/ SS%3}=uձͷ\ -^\y]I괥5nhǩB!bw]av.*5#D2k=&xԑl؝ yj|,Y( Mi!Ҿ0r;J66.֞ͅ\Ocr$P.&B"P톀#nY/>8݌ا`+nhd|ʊix,9\FTy+-Sœ aFsDp^SyU\7,%"ӷȫ_WspĜu+_Ҋwi_Y#Mj[1G)uX!O؃7vnj1$ڵD:DqhS_%82dIdXسr{PAKc.r -p $O2Ùd@,r,L2f;vE$8|[Ƶ {z2;+Ξ7_[9s_~ne&.ݔ*C `W`bLPzU :Hg2VTҟ%#/W)ʺY_ovYIۖΐ1'G`'j3cѓsoUDfE jY\W~>xi2r68%קϗpuf>ŎO5 LI OVZ0rՂ*>.P()/;we4}LU!@YH:^UZ0jWd>0&lpi;֐8S.\b.;i&P {? L0@dYJ>KNT V(R(Q)|10p@EmJH_cy\[2{j_myL1(Ft!$8?VVNJIlF t+דj^Z@}M $R=3) V ]< 08b<.iUHt2aIHU6O c vÅ|*&5Jw 2S$t4t/!Mgѝn7NÚYE/NĴjm]%, 9 bb~+M{Waàfz~ $tt[RI/oQ&QR&a %@6Bx\WWK͗hRǀ \0i_ǦR3u~]7Զ*' rj0qx'>=fݖ%Af5-#ڈUu/yOe0erUWz٧m6!NY>8Lډ<|ĄOsTrxtP1# _od-uEbBGn.NaMf)A? m끍k3V}#E}}e֝[$O6hsjܤdٷ]%+ Hqpher8;{1o" 9QglOO#D͢6vA+r9E8Lj~jt3@r~kkYm!R Adfxongfϼcẍ`;eχ6ikTW=ppKgu)u}S|^?V? pId q?Kbeaq ~igB9b7!eshv+ܱMвv) ,K>6(6Nֽ}קUO͘ƙAWjڭa4p.7ѽWL9&[:s:oiJOD/h5ؼY,Ֆt"bQYƈ+k 6$,~f<djk%i۶ވ'z %?%b-7tTY-HMq [v]h#5[+'toQ?`JJ l+[W0 =Q0,wD^D zvQ!O3g*qMS;q(qW 8 bB4Pc$x-_83Ŝm֨+Yp5^"$W-w|❥Іn1%o[4(@M6|kn,Nq:>}K)J>u&*g+gyݞ3vWծED# 'Cq&61bL L= ÆfG+ @D#\'W0Ci }/l/<Ӯ0-4 T\:L=)`|Є hIB}D)Hj3;2:N۩ K[ũ1`h͛eR}lWIǁg=AuCK&9'zN R A4DtOS\<ǩ(c5X'8D 6 wid(/:CloH=vGͺd7wYNVkHpuPsy tF lG^LSuA䋏?@ˍicܝ^<*Mi"&A*QëkXg6QƟ˫.ᙙ^Æ pM=vBVt ;J5 A650ltktѰu;%vvSeo"/&䐘J^nZ~oW`%Δ ^_uč:Q&[VG!eso%`&6bTrDDcWRb̕Mijb3jP̏&r*A!U<PAdPչV6PCH`'׿x=>AE{6LT@aDuo EoUn ֬15Q{@q#3uXQ"YM'e0,9y?X>3ڐd>#:!Gû ,Ǿ3=s F#ZP88oG,0#'P[ޗfe#Hkk;ݪkGb*.y-AY\ճe5;$~gmmxU}BჼsfKb$!"druNЙD:fʡ qQG9!) 8ꋈ?e'οl_r*6Ttc"TǜT\˂&ǿP]TjLr,^N:L3nSLRq~giG}C=esiK٨9u <گF?+>iIzM@tʃCwðJT(PVJD]{-e6n7%jqMAgY>3k8tF~(jePPW\̗SƖ,4Ju90&a4krp>zc84bafZN#@aЯ5TLQ}o&ĮLNZ2Pջm"| ĘJ1 8"vUʹ١U=9RFcֈ$%|Ƥ݋936#;؎x5!pl# |=b;I%6?G27?AW:\2$.2N`4oݻ\U>XO +C0mUP0#*'@F"nq[su% ?V×~j&UI\S CՅc*,$}ܽ1H9Um64GMHV+zqθM)8TE]'b/V BG0 /]ۼ7EHZ砞}8vH36}H@!QG%fL >Kcx=cΐ,ķ{4t?D?W_OhT`-hV^&%Hsw6n4j񏈾DH[@Lm cW2߽k KkЦhe=Y vYc j̳)3NCZQwKˌy ީaehxˎxآW^ߕz$/ݔaVN;zvNyZm)QՉcƑD/);.)1Sܜ~0D~iz|;|}xYqhg3t;5"-Q rph}>z:{#ͺ*"=w] XEv͊ V N>ˍ܎:NZғ11(;)ZqV:QKdūʾǑu  :{HOM89ϼۡ<>_$re p{]{ 9Hp Pi+% 2+< |ߥ-JQc+j-X=-"nxx Ai"5}\83^9PJ0cd.VS`wq }"vEs P´wC!>@ ∐UI(B=â#>;N)\TƦeϥMܟ$'K@kF_X 1)t'_Rh$.OOwaTܓ{umKK/@DžG8`QI1caB4=hn}^A?c#hu3֟_ZTo)#j;^x(jEo ! 9w{қJid`r4 B%]}f8k3F "3|,Ty$Vz߬)j5S *xZx4nP~9"RO$/tItx0gG؋i;ΪoZ- 墛_Ke?hxC ,j0-EW q& ie!QOH5T]Q:TlB6xn-#JrFY a8-N y6FG~ N2vҋ zè3`]v":*Ql\Q/Y_&%Z *JEwY܂ǃf\.ϲ(PHP:ǢeYG֙@AxJ ] zƀIr~&cQt4 . bEJ xE4&l2iYr򲕒 J0OQ)iZQ,scc+q ΊRWR!G@o2+^dgoN*ѭo=? j,!X'gziB`_*:%TDܻR@J}>e ,RF߾9sLI٠ +=12slʥ6 }p_,9cMR|;,pV8(k|&4#噀^P<(o8&3l c])mo#RN"#ɚ%l(V:NYbtƠ|B@#|ma-%b2۬dg0́7_Yӷc9J> P=5\:{TXZ=jy5ryPآC+mO%l>D&Х 0|: ]s9*q+yfh*睭nT;ZwY:7SO㿞!훙h1UDJ5U/2桐.E q~au\` Jt>MV~{{7g^= -m6d5 VCm?3A ^ʓn;ܶ=S)nO.Շ kCϐ߳n|i&2UT~쐉<ؽ.T{<& v+Rm[Mx_1ؑ#s,`C:{z) @6E8cCX|B h%Lyǭ>RO2ďMCdCxHc!Ի! AfɜD;Qّx<`]SS5Hη$!`4mbb]I;hks!MOA3(:69຋9A$Ldr NhQ 0Z Z}ɞU-c3;h} -y_- ֐ [ оe b A'Fi[g}\@m*Ů+aÑ _i6D[f.[XqZȉ0ߪם2W&"'B&! &s4Ԉ/L!ê]Bթ*Sr`a-P/ n5l4x|,QL` uu')WKs'O%d]WzG|FhFlT7jqST.8Ύu[fҤdzC:l88zRĤ("AċkZʗnc@'߸ 8|61Yk")Oʘ-Z$RfyNLJMKcN'5cϝtBlN!P.{ g(w +=ߦR%3KԴ݇I?4Eg$aCRn 0ASxi=0/>>-:Ӝӿ;Fg5S0!jc,6L^.`S;ءwl*vt9'm]73i.. O;EuRn"+])"W>K7c6?Wܼ|t"c/R_`HX[amMQ^/,)6ۗ//!902v }0=+Kd֕a*c_:BCb%4湇=':gh5{s8Ki**Y*x X"4iQgQ咆RLb)f\D[\#';M~>m ˕I)D$77Σ*Bi ߡhav[LXψsn|mْ0N^`Z+8|fWh3)Ӧa;]' /Tf䋃~}Nz*e^M/g4^.~j)oe 7/w -gSl)17jӱ׉\,&A=!/ӆs a*ݩcg )Q2y}q;ЇӁ"5/]?X:#t芈ug2 UNeJzTU»'qXQp.L"WY`D v*4;p `'LI*?ixu{Q6S^Xƺ Gbv {e{9^~|{Ұ9\(G;-'R 0-ف15^d+n^rm=fd~Z Uf@q׉yBV(aFߟ 5ECfzE5IʎEӨxz6E1a(g^L0E] )p3vp~~T;ܴl*p "-A4ſ~EVcPL7L| n*x_h9NmMAPz{J . [."@2w:K;8L/w'"r@ mteˏCjy#6"N>Ƅ<}YvZC֙uPnྭN=9#VT ǝVUc*YA^poGy!J/{K_ Q6, GS-ZX"o!s%8VT7U IԻ8H~B}3I3u4}aTsc<;BJ| 7T%$7~`k4]a8럊ըt†oZΕ/ C[gSg;LhaH6ʠLd?;z#!ˮf<' #mМjӅ͘PY.jno٢P5bJ @{0{Bċ#ڄZt'!/5$q:̜S*vNc DI$v}(TA. "W  ZM㝪`O?qϪ\A Y]\k/@%ڔ{A}``Bi㘠m[!ˣ^xR_*O*"s6>yS:Yn3aH&{C 7r< 6Rڑ6ol, Q^\ ^äU0%=qjYtρvb$Α丱(?u=i-Z7mU9yk=Ww>"gW 9偉'y7')v}n,^x5ꍆC,c _QqMu'^'`cW,gaH灎Iؘ{]B\㽆ď/ 9lo5v%"4r'­$ ABxVt}Ҡ/go g/9s6P=vqk-UU""#x=@|dװqmOb 6pl"m@i+ mUj9 \IAQN/9 83ouy9W`U7XxYGNR huZD*",3}R&cw@V8>Bv(Jju\3_3$"dqK}׮i8kGQ_ T $or)i<АU*Av嚧tҚ(s"=Bl#@Wb|¿yely f \[M#O𣹬 =9`Ě+ w,sEVYt5[|2?z+2zDERЮ6;gK8 #\mZKq$wD_ʩ>>o͖tY(N nZC! "N[pwNy7;nHYQuҥIY Gݱo_Gl@;R}Yzhm Jϟaj"wkQB;g`s\01e\84mǝ(r^r""57@NHZP. p4,NBp{{+uuD*UVR:eG=  c5O_횴nx~nliQc2J4jc3 )6JwX ,GbaL&hqr/u8BĸlLia',./7S^r:2ѳ1ѵ2 T$d3诵aC/HW^eI^P~`:A޹ dҗ ]ROۘ{{<=v-+ [:U)Q-]4% Q-f uP,`$e(@Vh'\i:Y_c5%IS+\j%1(ӏʈ[)4{?6/3TׄssδFJЯZ\ljWޛB,>!sl1PΧ{Lq 3#&hH4kI6~j ='m %d8rEn~x~^5e 1:MdMcA:a[Y ZR_@-MGuKUʦOr߲!1ۃ(eJ&z*&- ,p EF.Y¶PPKgkMQ"~[n[;С%n0w'"=0[( g<87ZL$ Sf`6JC aWjuriWߗVF*:\3/ ܭp&조LJӄLg+r)#gZw;[F3'dl͎۹1+\ߋuv=Rv78yRITB(jWW̟!hIi3MK~dKF#jX2Ic5ZfK?"ԟ8uYMNVjF,o2H?x8P٧!7;`ÕnP @A3Į'%4<ކsS$+ 2E,y/P "c $uũ&Q[&7 w.Xf1WjHD;WqdZ Ң^T|PQ"䝃P|/[EoZVۻqf6nAK:*)lY8uXh*`]=; oe%Y loL+OA@`vxhx%DPgPGGĵ$8xZ=-e+ڕ /Þ4@Vw\2qYS6jO)vޓl1Cb;KnYiƶ6-=<ةgLg.F WaZd8 %i|/3{$a#/tw{x(n$!Bo~H/+\\jTudb$p/&N0t ׎.V-7`!9M_x68u) FTnv4 wǓk`RB$ ,JެhJ .Ky/ZvPsNt;TOg6g~Aaf4!_ lAAI A)(]c $#9Xan! @ 2 9&WX(MMy-CpљzM:pyӬ&khn FЬ ˊ9Uu1HX{{c‚Ca$\EZ5ܡ_oҁZvpu~+bF [Ь&VuqSCW>>Gl8CͫT!J#^ XcKz/ eGy'yxfD'؅t-G ֬'Mnj_edYR U(w "?aeOOH4('c\$d `hF&uCu5ٶN>BSo!$U1J`դ9JSab'~k-5R7]kTrOҮK)4H~VqeD8H7!]Y^N}h/+/ CDss&ѴOK+gfvӢQw Y_dd+ӡ lOf o?|v JPJ ³ү\V/ *zÿ42x䌤hHA52j?ܒ.3|O|Udݪvߡ_ (iБHI3oW(2_ȽbAr52+#@Zs\#!K ֑͞?T\ء`i{}=9 QT]9 81<|6FLㆎ"VǘOQqՃaaw3N86iq=nN|4l˪щ~iEI2g6KMl +|ډpJW uQP\hxSe-0~6d9NE+yJկg@>^ i%(lY sGPAP29 TP)v*m|A. #u;=Vllp]c`;o ^a.i4 Ko:pY`(mv[I_Lb˘OyCDjV MUYM`z?e~ʋ/#a A7#%jF\e{f"8hN"1B@(jbgsXuQyp$9M߄<7G7IQmkQt*)8zyΙG;] 8.n?'U 92yq+l-Kc{Ɯ w c͞$4vFcV MC`H KpdprpyPQV<;]d[T KLg_PU^mt4AOpH " +_XrvkWfJ3/a%g3ߎ41.B{W*,'ǽ5L#* q;~6""EXsk#1a P- j/bvtB-A93Eb|om8|԰UTTb3>Ts.4z{uO!>\ϺhA@, Ts RT]ZG*8\ jK\PgVlͬFRYUҾF["Z6f'֬vUIcF)@ц1<_'C~r>ɔ@ |҄X.:>H t[ MmU Ֆ@_•,@ųxC¤udGA`JNsVVq;ۏ\ ocDiIqSA]UsmkBqHo~h{VZJŇ)r/p4嵉^ "^% ̈I|D^xgi&/U?Az}i->8qBiDt ¾KD#ƨO Wt0Z9ʈ/$ ʠ ArҳS'C@** hM7ټ#Or;ƇI3J e(#t96>9]Im~z@>yF|[5E )5"ocxʄD5񼺛@tYӠ:nd[W qh?&'Y1~m ."7/*epQTKpYX:z?ٲхfj:y[lD>>I0+؀ˋv4yQG}l:Z:j+ςT|K(jo=Ro?Ӡ6nb$0*sB4vah*qmr#'7p 6҅p%[ Kxh?XFnyjw^C(jjc/L.& 0;k'ݔl)D$7plE0Qw33/PNy;`3*74 /nyf☁t#~}*_DZ K.=X,w%4TXD­7:ޘnb 6u:U2CO:i5r#[oZJ91E Mt_Wя kSX#30;9Ѧ6С)T'1w͈6RS>uCdXood⭐;u?%$)eZVa3Lɿ,ksBa5Or;IO2›vS! Z]۫ |jc(w_6ldrbR3e9>Ҕ),jq/zx+c<ҕၓ;3}րx2J7MZT0UU%1wwztr(c^l!: XŜ. Bjܐ~q9뒛]JN,X-bT{_=0Q7!JK溋Bx*r`F{$X~"Τt[Eb=øEN3X@9?OˤM憓;[Rj\[,uWo! (D9X]Gg|aOˆŝ#؄F,מ~\w o~JF|&5X}&[`ϣVK)[Z\%CB_{ sۂ>WF]rzNQ>Bqp|P q :sF`vYŘ.K,UC&fl"9oD6`T(Ў~4}Їbhw[.N$EB֌3阰ҌqTY[aUxz]Qd Q_͓,tB+ UҐK''RDHRl]]+OPPZB@x 5sYx*m6Kל pBjﯲ{-F Q#(&N%[Xtz &MbR&=.,B7L߮B0z*\Fz'O"},}ܻp8)qCXl82|[Mhn\/ǕVA=o B8Os|]Ć"µp? bvMtL9X].I%`.+#ƐհKEg~.~gDR `Z8\ `U7E*S6C*ӑD‹Iq3.xK@ܙSDPʰn5q'ǵdEgџM=0)dphW,HH3WG0eEjn"?'m\_,Wm3s5-R'(ng1NrZEa$SlM9V))0g]'={З΁3hK}TTv9^>Z$lj,А]goubldcm[O`m>-K^–<, ,9a??s}>y1zy{D', 15;sHDR$+̎P*(I/&Ynhu+|D% 58K8^(q'ȁ&jEDa)o4 ^F{+L| nܑa- +PjKgRs >Sa2B(T&bfw܃w(E+X'W5Z0E;` ̠ІscLqiԭ+jSBY!Q&Q1^ RPr"-2Wxҏnb*e8~fz\";ESESv<ڠ 5}BwD<-,hע,R+ZB!ƒ`@oCWR.OXN][%7aTc9!]2۩8vP 83g`u4V;kq|m{nAjH s; ; GnaBA+I0ҬWSQßkw__MH-?#ظ*Nz#ݢP&qs(fU0ʫ ).MғyS(cR'7ǎ@fSWO&<}W٦ 7Pڌ4ߙs2UrJba!3[HrٌCfIS~n,?`7ppKR6 gnx0NhȆN&1`҅,M4ύ 8accOOƩ:ԦTQC%6UC$) 0G$,H IwP?6혀씩_!10bn^ G64"3^ʯ3{| t(QHuH8y߷/5^>t2*ن2Ub7JcOY-ڬ`c*#z.D 7{-=ʹS/wDpX٦C\:MH (YL⿸c ?HYA 5LWW}tVoyg$ S6ihzdp;OZf-Ps[ȢUvuUj_>6\X:P@r3+$HƮVt;NBqaڀD֥cv)wl2j/)}ϼ:!u障pvMv,{o- {6K#[`P@bm~nTHlVZjU{$9.cU@N Uul:PE˓m.LʟH _x@f8XvSD?wC 5<\Co_ɣ *%D"! &KiEn()}^MAGNJŋÀL .~-jB\<b|PJ1Qt`߸g4{Tpq,PNkZMubf# \d'9RA<]Ͱ & "Tƽ:1cedX-~ÌX]9gb&S^7~}A@6=IxD5xu}5ɚi:|?y|Kؼk2-Q;cC(~FV;`fki>RSjͺR80,xg^%#W#M3.}A#3xx27'7?_LUh4Z hZ]f5-teCU27a7s`F11P9N'4ݷ{He?< 6s&=I-XP ~]hGZs2eWU j'/n }c![Ϭ}.*KJ~iu{ۈMB *(Ha-eameD]s/6?A-“෈RP-dL O7[d8.ZܶT@~3^2W^#7W(zlY<ϢX NR-Țj$I9)lY* tL4d11\$D. oOֶ+T]20Rv+dJE H'0]1u;NLo~QiTpP°@_Lo< <WܶKhdd{cCʏOi{ьasVD_*F <" -х;*."t!NuAt1lAQ@<3?0{mNmM/r !xDzhO7cMG{iS|(6K\&1eimc%K_ uLxf /*'f)p94L;Nׄ75kLC*+(xǻ2ܭk, vHxMS;GKE"*|8L3ONSsP9TU,^ h2 GlB t[-s0(=?r埾^it݅eA$H{\_%)(D6d;$7v&"5*VMl~^ )t*Vem;!g z.e~ D0faEr%l9嶶jNӎ48.P#^>^grKpgo6ļbXw41Q b&>d[PladB1.%\mU*G3#SvjX@)o~zFO3;HE=[C^}҅Vn}_6mΑS4<X0+EOw،Q돜($1~Oa;t:{8ixn75dbM#:#+OO@̌ZTc&5-}Se>ck+b'@a DCO) \ <\!`=r +³fpgqda’Yy0Њ#D) #a 7[1<ZH_ƽw+=L ͣ5`Th4GP"Ji[!nYaTI]BSNU:k!u څvFd;@l yb.$0o1YteĹXub{4֭P-M:]g5;KKNP0h+.ɾ6XTTcY+="}E:'l- ;Tg%|[F?w@TF5W*E–FxFi11OK""܉7A@L=槟-՜ *]gd{oTacc12bCsfAw1Pr-0M 6HW)vl$1EfpbFtkTXAlVm! %>Ĕ@jCn#[pnKI9iͩ\RQ\+ '`bF1ܤ)\~@&[MρٙdUQfU)kW8H al~cusj;ʩ"e<JOo#jásEɗ6!-tt4-ܗb'*?@mQ(MSOAnvEomxs4s^>86Cz@5A!YAk80$Pt,0P˾P^al!/,.TINgerFc3iјtÆ'TwB2f]gB>3(Ysa"2v5Pե 2!W7@6\+HhZQ¢m+2g"!s69 Fde+nFǠ5 v]-3d 7vAZ {v3"X3q"S";ٙGDsI41)H2hpzߋǓƆ҅T1LiE*5X}V MMԜEy@#%G »$^΋A.l`~GZ[&Ԇy0dXii|8p"]Hug QYBW(N1_O$<͹KR3ZDZg<(1댴xyn~=:"*o|Qʋdn&5+vn:)6 ĚYi. VmX ( a2bGm\-9jhb|6q#WQņfQPVNGٻ. R{*m6Op5uK<̤_ NS˜QwZ!kIni#g^xL3= !VFAPV .ODDtGp4 hU_&M"͉e53W?5}ؼg V4 Xd$":Grv.|E+@ؿ+\:CQNLiAo`9jE58 _㽐55_Nr=rzE%[{tb"Z_ɨތ9zAqjHl]pFUQvg m 5%ݙn RCBr$3dhօ}ZhZ{/K@^JWW~V'aOހ KEQ\կB}tj =ևNW.e#~vk.-ﰡZǡ ٧$ H(V~[L(HY;z@:d?ΥO;x@|1C_zk+D0a SLI fxQn2Xy=2_RW}##2e@%U00 b$ 46sjH?Wpe(+x =0n+oKn]J/W2qҵWbW*6{]V͕hѪo4aAb8kXQnzgs΢%sGBfE♲D0嫺~dOnZ\S@UA#|u8W{8_7+pFRC;33.+hP0g֏Zcc(z Lt=4kTs>fVGz7rS"FMA%BӀBn\܄uݑ/<3(FM;lZ5-!ۀ̄Yr2+#P[x[ĸahX7dIûr1,]s4@PC?,Aş3{-Wo$PG2r&q˪γeJǙf͊Ʊ ٲ"LV'(a/`v(ٛR1zQJ;^ "K6>dO_zW'Gtwь>V/(G̢&guEjezjյgUsԃƮGBVK ȁ{q-w"Fu~PG}$hc=hOA8e_G|7D=(R?r,wUOH<6@#߲nY紷MГ a\pw)Yಙ".--dx5!muk˞ydB0âmii[0E(gLH +egRI0!Jйq'<j/밁,!w'c& *]mټl ꢖ?;ЙEmv{;W20?m3EZI4K7 F}+ĕ fX}_lQmwY;L_gG$L1%M vIIklbgC}-ZNv@<qM%2}_`ֳ9Q5Ţixp?ΰK 1<*|z?g&`դ.Y9t*7nãxF+{L@%+KcZu؅ ;jwbI_s3xx@CCoTfsn䀡bž||;Mfp[UvqfTƮKGY]KDk\zkwԐW e_yEFj<\wTSz򚀷5bџ32&WyRG+GLz‘G *90אdˁi /~K$2SO (>l4쮝~Xs E5<+,nVn<Kk[Zɉ[2A3:DKZx5@{l,qidþ?׋<6!L/;{z!a3:݅T=]f/c\H~:5rnKNIۂ Q>!bu o4+/[΀s-^/(V#nFT9.h{zS,s'%VF[ώdpbtY {L-2ס R ,O<{_œH]w@M9v ƙE=2P[X`ZFjNۻJD <ڜLdGI ͈u=4̞M ;aA t4c|:v7'O$**?zLd1!iZݢa&Bҁ3^Ee)":a49pi%CTF(f C+!;_8-h8#m!bP1:Dтc=|0v2L6|^gDGw[^7 ∞\;8yG=Ws?#0o!/OSz 4< U!8+'>-^+oHBV~_N+CRZΜHaC.=&uLa_zo@O[h#i[lbt=S0E sRiʙ ZM&qBw嶔@/yPnZgW;^ڡX\lUYp:Ymy ӲmZ 3>)3~$D=w3?,0tMdē~ޝ(Ompe/$"mES'8tS~۞{uc㱇b^`Fڱd[[7lXS14oJ%m#;h2|9)R4+$Pn?9ܗwLhr_d9WJvEoFa)0f>ts 鬵FV=D}f,̯ Vi+ɀ~y_̬ʴ}avp/mq%[$J9O|SI]hd34̹_lR~V vF Ag+Uiwvwac3G"[A8%m{" ]?gX zq !Pmp"dt1DypAbB+egj:((/iU G`UƜ1tfZ,z!mW-hrSl$>åZ)!I T{>UiqMH{$H _UnE?CŔJ^!m,W{`G0dL8%RvE8?!{**2`)|Pړ"?31?FKR:. $oZY6 #y9^mZ6-l<K]zkw'aNJ.dY nRGEK"/>j 7wS\~p1zb5+'0]W>j ^Q6ژ{Pze0! ʩ n:R&Ni+-?;PO|z/;;]5SL˅ᯥ:!-H_۵+6cE)X(R/˹7@P\ =$UU|ji d;gjpT"{Lj'ԣq#@>rв3, DRwNPr iy#Tdn* lp/`?H5*PP-%Y>ȓ\HV0vp#WF{]gŔ3⿈?t/d+a &O#U"m/`HN=S[NR ~*o;MaL |'y:$ZϽhO;ri$Rncx \5"(fBQWB 1Dcd0MI{.;KYsFzzh*[ #\\(Ou=ɝ$ևlUOv{`N퇅ٞ'ۂS8srl H&oO u>2JK3*7XWp[c4SȵӨw'y'=e[\MT_n(d s2O+QƸ<Ҫj{6H*{a _K2I)o6ؽj"Xc <~/wE*(+;10DpiS|BBjU'R|s\G(u"%PWf qP%]wg=Ghce\ۥx,BU lYÉ&Kk!zNq^G>vl_B-؃eHQ>DR @%0_IS{K`V0}b$c"jMÚ0-֓uWS&ha8]NKv(:9ה>h)m0Ϙ`/aMe2Y\D;/G1$7Y47j^'pm~,5ymsJ?3" {f D&mWNAKj!0j P,Xq@Aԥ`Vt+K}_uƇHNoGG/G65!U*<|7~[`Y!Ƚ-ix ɍm "eĺ+1Xk3)7 6^w#Gw̴3dGuYE"p]> & lAiND|JTvf vĉ Kpfȧa鎜U>NR)J|+nh*N]{Ǒ@7Q2*.OCO[ u2Hy]3=;!i30B 75F\@btb !T[HE"8EB9s/ ,k Ү/ W,CJ.C*hlw}zxjy @ uX!%(T/t:'0ImDs/@&>_CsR0nV+is߻-qqio wZ pZc/y!{@bMܒxvӗc]LEL4>h+ kDZf!##i'16_Oj=ل=aZGAC|HNG6nݗCXJ<0+[q6,<$p1p(Vr [HAC_]rmgb!EpG0i!G=D B="% Uaj#%m,1f>(v lZta&KxQB|>kq e;ޠpF[6; %]oC:" ( IdkE610~`ּD/7$zs|levwe:jϼIp /; {B+|W2vb٬Rvj@tqA6`hde~ RMe_!…/+܎ 6'd@T>CƤ *S, 6M *-fήyiznow pJfوq>μЬD˅L Ֆ[dʝrh0Tfz TQƀ{dެxCjVeaF0=kR(+{룺΀&vuh[iK#,~?ߩh|?9^@Rk m !iFb@,Yv/tF\[eVFxvml~6tyG=B 㞀*sQ_3[UB̗*()M^0=O]ሏi<~U7/x#dzfy0JZL/GFQ.Ӫj5O3%:`s[Z=B5n9N1a*+c~ elSJ)%If [mt! !' x{gIi+I%z3#R H( toyІ/[ p8%/5AUA XD`DJm(b~ZOTU~ @HqObIwCFI,d]"-+'ѠR!ή!43k#o*;P(ñ7<³$ٓ8B"o\T vB|k8խ8Gv*~d~Z]DС.I8U.t-N$1;m{*\ IkT1K_SIUBOUai][1V k-'QF,ɱ/y:bHrZ*8&H?*n-D/%bF.7P3XՕY]=|OWmQ>GX Ht9$L}+5>1̨߸ZA9-0YhF((|RӍ=zzc~DUs*f T`%yc$CLBf?9 E*%AX(t=7OO3|38 7Զfa3l;f&2?RWۿCEjt_7nQwN9[,#kd/(%2@^U@ qhP\f WYV ๐d|u ˓'Ϟ|(r,9p2,ewu\'oq *_ZΘ3wY=RNտ@GC)YZ&F!4.mҏj_))|K#×ZĽK+a9Je Bܒ8Oo`*,1zu%Qմz/2z  )#icFՄT̻ɐeoC"_A>@|t/hN1vmou+]Lp8AsoJր"\ kg+\,<࢑75]HΊzyqhn,?wmydr*xD1K䜩ڒvo&0{gdmH/Lr{rH*dX-be~D߸riO9ȔT,n3JHi}ekANkhCJjޏ40mw Z#֎AM^tT /Zw]  ѓAf'hhc(莕= vv;ѡHW[;*߻X0}e7 ?qPF dU:ƻ/ŰT2Tat~R)8Q#殍QipA^rǎj;_gw'RzcQ^}^ zB pfu.usB{4Kk֙i S$#q(M:_րLau{iڷX˷ˍ4 6'%pOj*GW=)wLo j}v pܾ#hjñKnO6k1M4~tbc+tVvgƒ(o}= L΍ S4& NC= ˓e)h!*`ѼOLOD9]g ReHM*S)(>= :N`qP B#*FfM 2XPR <(b_L3GNM<#f0(D 3kALKǏuj&(>DO%!Wc,~ub"E.>_RR<40c ;|Nbeg*uDKX:*ɟ:^楸խCuKլ/TAg[5}ilƂ.UM۲.`..Sq I[.!CCґǁ-:֮l#.GADL`;.YA.ʫ?$Mz YV>4lA^c?7C;ga.ocR#тߞzXӮHXS'HxeFQ䯉Z^@-!:42FjV4Yf;Ay½%bA {fyeA'EhCTš)z1591~-~aITu&f꜄ 򹠔 X>HYR:d>w' |g*Uߔ+ G=ᰃ:\D 2q;ksm05s,Qe$CO|O#~DNQ-hkA/d :sZ,bAB[/'qF7S$(tkYa9w1\V SMܕ߷gĴ{8۩CUb_h+PZ^&f Jc:lq;WjYvD'Nnն{JGd,*,&G,m;@F! ӬVh1,g)毵ab?A"@۰',󢛭0ީL3ɟӆBc_>YP Ijúդ zQ`?nF-cL CUke_6o2e f08Xuڒ?|=nVfH>rnb174p\B\e G*T>1_U첻Qh@"1gyuuݿT_B۱@KfI -ԇn**]Du/OBߎG C OOl_wDBp~M\bTze&|]hm Z@̭G6-ϡ m, zhz5Y Ka^prYv('e/ڡ8;㯉m$Qm!$Os)HӝuL2}fД5K){F5T7q6(b +] tS2 u,nY„ ޸WV8N¿[Q[,sanBt:pųAHt,SɅY6<30[>ȟFB E:GiƱ_}xo7`Qq9JIyek@U]VB8/GfH^,in2>E+b⟉Sz bͲ-YUSl[Õs G3Yޑf1BQUCƴ^ ۞c*>GDF4pw,rR'rB}]F'g lM+1/\iӞ7鱠y,F]O3 c܄xDl+Ngy8>BAR/>&=="hjCU¶ ]UyH7:UnY-| 7 Pܫ'ހ{?{m6z8n- `WJATi^nyv$ҟӟ`CIFp[W: { {1)_Mmyz`}o"egEu܁V+:ur9ɡ_&m߲qs1/UYre7g<1]R0". @ 1!Fi Qstt7?ׅ+PCtByGQ&5㮋@`*?vSʫ`o\?ftO>`gDl_HrIY\Q;^=hD&k9QĶT*T&Yixgך蹁}p++Ƀ.Ŧ޳!ad{LL$iicqnqٲyj{ed!{#p[fY#Z چu'mH=OrsZj &#p0PK$mQT-m~asL %Y7| hqF N`KmyM%4M*A{~=(x`oY^u~㮏d!swBb6.5p3XRX&? d[eLȐTʤ5esL?WRLٌN!*`Ua s\,q&].j@s7ٻ^x~ַ珰go^1OtCQtYdp~gBCM&ZNN CF[`z것Bnp6ߋCR?2 }@ǑMU4#x>8ZU)[6n"BT;s_o[4V|N}VѴ1a^i$~9\ւS§ z"9p)eFqAcup۝Ԫ1ku[bZzOBTE(IwE{r}ᴊN>`Վ0tEr3)z"gZ#ķpo6)Y38HޢsZ }XNl3Q-m XKF@,SE ]7&W}y!\Q*z5Xlm/[hnYI̲3|&Y!˾* 爘jmZnЛ,UkA8 ԰EU.Q͆&GZA*{tֵ!u;;{tVbm.&שf0,+` R ܢTDxzɝ7Edcs Bt$ʀVH'x}%ET8A὆SMߞ `HǷ]SMŸekQ?h;rψ8p2+,2"> qFޑ Yc_:Ss" 8u#?;q9ĵuy=;uDu* U¢`I#[\_RXUt`>dhugYjz|pbX@e 9N]k knU4riϼ#R%+8ӏ5BkKB zkݵ!u1rVt jYK߮g/:Of,א]+e_~xACh4GF-r'9 >XY ѭޝx8-;'S~_ġԍ~/1ꜫ=^7W+Cs8} ^gBH$y$L)aӁxAZG]"ČHsl ")hxB%[oUcʘ=٪CDm=9dzx`}6vH};uɵDy<@y`Q#c ;قQC /}I@]Z-ፘ6c|xc_QxYh__m~9h[fnΙ{/-y^S%}$S'S¾8Ѭ0[8#( 3/k 0{ώ])sC祦=<w^i|w\g_ۄ3J:#ܻ` |hyxrRIk᏶f}f󴹞xjfu)ɻVrVDkVb.u2 j֘vFa꧁g[Uxx5T~.&o1$i`4#v{Sd7g[®(<]Kl\St5tDPD+_fxJ-Ĉ-q+M$,=C=sQ>?? y DwگŸ9z4'-eB ƿCNJ`cm1ݠ;* ςB.uc kOMŵBK;Y_y!0lfrDԵy/!~r-> 9Dk4yd^"]%+b~wk$84x|Q[ 4ùQ|+l5fa3՝|uaʼn\IK|3ZKM݁{RenK"MM)'&\@-.Y=Z}v^LdN6YI] xkrZn}㧧>̫߈J,FtFPV]qU93PC`Ykx"J}6{v@7\KIDri!]HLEhGW8_;vEu`_Ao+0̴QԳIitPGwc_J@F aOv9yVoS>'xh0V4ҐV!5.s@|UcT%uX gjie0W%uHb|g09m`Gۅ KПb[j}|W@67=۷o.?xe0e&kM0Yjwuueq}^2ݾ7h+;c;,I]_;}HV Sl)ep׹y.$?_N'QJ_=eIj'ܕI+Y ;)j=;ꘛޟeQEa~SOGѨ1MA߻p1UAGCxngo/iX9E.y/6Ǫfb^* n,y/+:C]=֚xISq1V#=W z x:NJPLq0H=?hM,yKR{B~QqᴂJf@EvzԧbeػL'Yj ^^竀"Y7Ҥۡl<'$NzÏ5q ̦j֪6&t!\v&q&{nzmI?шďLOPzĢ>NZ̉{sx(|.a %'Q]L`zTvIH4Ո*'+b}#c0S8%2(xi#nSחVkY>)ESWoysdI'Rg4bov#P/f/_'8~8Mo^C hcEoD;b)xdUӠ}FoNHS=뗱'\tJ.TDXx%MdLY'x6LqnW5Aj:5.ɂ98~knC5yD3o70D LS39x۫ Es>ē G4!$S52CX8w)}cəD[E %齔ZQuA[ɹzmv0@V&5* Sq`ޕtJo ק§3-|+ԁ},2RFߌ(S~tjeNL񔄅vwU$պVi5Rbx> LgbI7v{~dlx]AGuvD+T+Ǚ}ENI{7}SOՇr"2pTBnbD49tKes),4Dɜ_s37`?P%/T`{dg@m;7z^1lQ#@Bku/o*iAQl=k\C+u[p7>#8؂}rar}{^WzĚFϟpÉt5vgۤY$ Ñ/E8sp79.ol=1_zMby4JVYOUE-uE9gԹU Ya?5 N6Ubۣ>y?d%D91[%2Kmzd,Ωb qsމvk :چS_ @k~)F7$|,G[wSK0yv+?_"-N Ǧie..N^* C+Aw>RAfjwu䆠4 f-鯕L,!}N}8ZekN'n֎gշKOv:ed7ċ7 APuѕ:4!8@¶O',*@jHtɻa#t3 풡oPm2);$%lɗ{M74粯-@6z~-0:E-wm.Y;Y)og*NCfVNZf!ҟzoȶNváM44&Q'y&ިBP<1tܤ>-`("ߴ 6~,T\Y@<ǧOIAQ+靴^Lqº0mu͍D\u;6ѱ{< @!"\<اˉsסɢ㴬IғU68: |AT2X9>״I7??u+<$ tF[*Գ-)gqXǥTEjuNa̳8bv[?1èƱ![hku J+VR~LPᓪ ^Ԅ|Í?z6#񞌹NM(VhGBܼ?_,턪(ٷ7*ꓯ#|*0\r:D^Wkۥ. `pی+4MHZ H) .?F}zB+7'\;?a @\Ee?x hl147nyLԾ }}{,zq|H?%te)nhE7 |n,L*xҬC4bwcX. %q S:cu#`0Gx2rR֮ DJTFgLY{z6_¸?6V;W*=JU2aV2;9\,%p+5P@4 ׻'p: IcqDe,zc#N >zrhϲ*[ ~tXzRGIMkT1$EDN> wp&E6850mC.̥;q)o?ȾD6LTXO8 #$> E6^h'8hvf"#* ՌH 34b>*,2WqZ=Ћ]Av]x[ fN%}'GV2 q-3Fu-&!)Eh(E뮟1" dXVߙ]Cy3GM݉c+hC9[A,I~0⺯U@%x_bp o,~F #&rH K.z~\,xy,#0ڕ,N5ADjvF*fK=*{4ϹؓG1%FQ{\/XtdӎQULV\nP!;F1;.d1&_]ʳtm~T]ԉZfqؾ3#0\v4yMc164JR=hug^Q TB#*n]\S'3/ç_21n>}chlE} v?NMjW$ ζ3壔  w9+BqǼdU9=Ij!"??{ |n="y,(+YiHvnNyd.VܾG moS '܃Pz7;"_o 9{L oPqmƬ>?8[q{Pb$?i4iؓK&q!Vn!}1-7KyP!'n:PߝM Rselwv^E4bX̷qЗp$tEA|vU ,9݁,_:6ہzt 0p TSYDBh|0w܁B)RV: SqAfH:Q!utH(SE<v gm1I1<| iI8t.͸nh/SJxB9Lc3D鹤T!Fbb X^7ؿMՋ$B"nպ6V-p#R]\mVeB$.Eb Ղ* ]NmHV'R . dK9pXc|={`9~wT.,mTM e䖷 zu`2IhcO;"v>´)v7IuZ*"CDp+fq#?ŏIC`( ] D rO`.d#!u5Z#4B/gZ-]iƑlz?'_xЬs։YU%]?ܶs%j瘣")Q~ ovnWL{k,Uϙl+rz1!22dpmx44f򤻏Qz[Swy# Cdld)EyOtkU+FU'SA4~w)V2"n?4:9P+M*"qqO!A2h7|i`t-0K9i.Bzrw8?orW~;YQJɑx;[n%] 0m-&끦I'6͋w/B֗{I?[NEײpcOfYd+0jIA;"*fI o۵vγ76$JTSID "#="5)G"cUb\h>}Oje?J=bopDZ0UG"0U؇}\vWĆ$غkVАD`un~ΦDS‰L,C j[RF{]f npxk˜¸/3Y=lC&frn=Ej2r[ɁS#dպjhK`փB?۟^0; #4;\ʚb{p581'A9To[CN!TZ QΨvˋmK__45I>QF0~|Jg2Q5W YR\Oe14a=@jf`t+6 @ƔB#a3bDyվb j#fVg#@(*Eۜ~M&"$ "Rhf=S2DHAcizgְըgwֵ6^`QSȎGr|Wyy{鏥`p/e*&ZX /rnٖ{m5>0Y$^{q ]1a2\CZ2E"-%7Bfl(O4#włXB7ksx Re}62!Yxw`3ǾtT/|J~̎/} Z@ 7鱪qg!e"?8^fkʐ#ȡah?(<ĺRC {OR|8(a'ԔJQ36$!;Z@?^M Ȫ<_wͦRi& x~ӡ6'8=l* (T5X@v VX@,kU¹Һҋʯ Xx3ސY`6{k7, OF^10rυȵ:t ш"Slj0vvz@iқ.{Fpܧ$~U̹i~1,"ㅢbv Vn|#۔DJkg][R<3.+$^>8$z -}p=UrAK)Ռ)IE&/ޤ/B^ByBnɌ4DR B*Өe,4 v$`K*rSa܀'1q(!o׈(ӗ-`HL`{,+Ϥ6*Hsr:rRE,2oMCqN^sװ$m Y-JߥmՆ +dm"Q?5^ _D'W ~^ ڵ%b({X'ޮ t"[I#A,nmT)r  KGDCؿ[I7UF S M?u k)eDy+ޠif%FuQ ww+f<\Q9*@.dv:T\Y)xJy tY6ou sGEtȰmewR ()>gFKPX9$qG oX/wUBO]DZ$.?¶ͨ8ch誹H[]V CvdTO7_R*Kū:ﰩ*GnLJӍ@NgW2ޡ>hΥTbIV-C;X &+7훯= 9w@(G3yWJ]~(p)g =\1] ^GvMu!W8zb\E`΀ƴhӃIr,Q1|ڒTuOUva3̦ovAx^O!Bݾ<Ȗ2@;DyH42t؃1[߉q<^4> *g˘[F)c&t0$D(5\Bi\<C*4 4Y.)pX7hWܭp! qIs#SQ5~-DnuJR^NԐ'_|Ewt2+Pc6^0 IB-n=H [3nךwxNNEw"7ࣲbںqfxA6V<"00P og~Ǡn&y$%E Z9qnԞrS@n^CʽA0G]MQOL9Uurb/CZf~T SGFK0CcNdUSDWO ;R 3.B_΄mq7R^P8|3Zm )a@Tp[ Ul[c&R©t(7 7dS> -ui >6f2/b ۙ*I# Tdk7,`~h؆|#92FF$K_ tSZ2W #rXjn7l1ʮc:AG$6#C-9f9`=GƻGg' yO3(`%F20N. Iy=G@\$ۥ?^h[8tܿgE=fm7N2IٔS] ϭ %k`'#̛\yyփ~xD1G/ƛwӉsC\xA%@ SOѡ#%b,Aq2xhWL|+ eǻoo\;0c~KGkRm?"r35$@ThS1fK0zݚ qPWN&b ƐBuV?X&"~ۚ .P=҄3 5ECMѦUھRβY8A|޽:`ݣ﨎jD`^GD]C2~pf_Bv~Z"]^YJo)~X3S N!Bw~C Ȳ,EJ5u9?>4Jz;v E4>)=I)6ѩϐxݚ8FUDi ARвTOMzϩ{}:~Ng8-VlքD}YFESN}(!˵ߴD 1Kh 4mUd77s\ TD(+F{YEϭWa9vM6$b hƖB{[[^F8KSZPR;(°s~:0m!@*Yaa L"Y @vFh!Eht;w55+? R?p J͆  OK;3ԍ{xI !0!,'K~LA fu{ӞU\.!Q?с츖1o7 (~t4,ypVXٺAܤYhƹ;a4`@/@S{?obo+!FᘁKAW\.U"5˭l*'x2G%@p(H8!*FN\^>L4Cj !9Ǡy`MڨQe $\ׁ|׌*|M2k۪ތco$qﹶ1`X5]' xz$@cd#dw9KDQpK8ٶ4U$Mӧ!l/D=$7E#\'U#pˈwZ"#Ɏ k=4Lz4MJPz ə|34BYѤy]:9ɉٜY%D 2T*֣?MGu-BoRLBtKlJEB\CM[`6ڍ/o6p=v(XjLs+uӄ!8G v] e OӓC<ބ5 1b^u74ُ;ɸ~pwu2yݻ*xS_:%Vp[jW7JG? S\68q>_-jL 4׷DkhGmq9*dZZm Υ !>-zVo,L.3Mx"uD 5)Y*ydY<7dD&<>"'. xgimR=; 3&0k|ѴiU J1%*g' i/, _ZJu|o㔙OMb݋2hojT#_?cNpsdVcW6*=)7[c V+!?c?0O)RmS_LQyMЅ[o)@Ԁq+!l)崜j-F裹P檈)!]1O?ƒ6QPa~-g}6b\fgF,NՎ1s@ k}' $k- @I|niL?m!M^1iYZ/AkG]j`QEWLilPVl5/gQS5%f:zFlˑwsw5f,0EucȪ؞zKDM %07"[ >ߚ j"5; `ܛJ³gU|&3iVzW )fRdyFh^HHHPyqh)p{x>+V'fypEʘ&ֽSA^` U“MFRJu_pJ%?b)LӎRb.!2&᳆$yޜڟY /=A,5vfƞy#Mc|3${TS?p: qQZӊt楌_$~'3WVk^dѴoѣ% վ4GgT!7A\ ⥩@4ٙ3P hb z"gIe42 Jp^ i 7,^)?iCrhq2h;_dCOVِ]?k]jH6"bz(J -[+sufz7 [zǮݷ1|/c2ȸc ݸ" ]#Bp4 豠xŜ0v $0L$Sp}~Hŋk a=ƶăKȟS,>S:da<0Cb2 . ߑ62fM *R\e)QG_\Agrf:ʍ%_f> .E.,4͹$p' HOw, y 92ǚ:;9anDz+AIՋ68DXDo dL":[yp'W[Rc"W ƹ!?eI@al:)u7!:-LƝ$Na:ʰYur*8^ѢW5 ׋_zېF fv,},6H TqVOx7 ;e8 (G]gG4(?$DPpH#k!QC\XOWLGx42{^9-)^c' puMo]Ivݝ/u#50Y]'{ܣhc8tS̺M7Ϗ. IR^rf o^]m~gPUft۔_#&Pa(4Z$=i 峟|/d/23wg|Sw+W|7{v4K bx@lC[d#/%6[DgdykS(״Z&@r\P]$xⲪ|0 ZQA7sA]q}=CVQNvf$M9|Ӕ;KW چq=7jdOeAG-nVE 4aq~(w/g+Rqnc[y3?`4awQ44 i#6ONj?ӓ6)졠2mszWA̖]p z?M3wh>a0- hl't^@, Hz/rFˣ eTlEMO}S-گ:!H=O+8чv'SJXJ2_La :RQmR1Qqxch/6pR7f: ղ vц01gljLK /C.lk L??sXwrϣCD a`g.DRvu5|+<g-Hk>=v6M̖rՠ4 9ΓCle(^ 4 mo#yzo| u9{a Q!j_X/z:EU}EH o_󲈅ohmYS6>5 r̕wRuCA*[/7$/D672bq!UlDQl+ 'p؎ DFWoKXX1R7 uo'ɓd'qSB/6BwL'xp> D ̄?]>ˉQ% #hWfHS(i͞BߒDۤ~/Yjڌ.?&xypbjȡj\$!nTԲ5>X#~?R ׅjV8^[&Tu/N3tĭ#v! )s0UΥp2'|e*UÒ p.[ qGKoܖw@Vmʴ¬?A9^J/u3 F;h ڦ˝ Ap|[t^hOd~D@tAI~s1<͖}>sjk_6 y/e`EQ>c T>5ugU֫/[!++oqyzw4Pm|@_& /W˽ '&9IP0F7rBX[c-#u[  H&示2 Ң? gr9H/s7&m]kR5]662;rr1*$(9VC%uv^V~VXXdPޮk~F;dix8"ջحh8V|л4q&N<7azh X+Kr1Z@i,C)mnzh%*WcʪrKxS~"u%-L$IZR8/mLWiBT /XU0;j8FVuEàX<2QZmDpmJ6z͞=̄=e ]+`F0BL3Fp'P) K0RI>- p{h^@j͈sG7gb. .6•Mr>Dy ݏv'+1BGsEuy k]1}5{5Gy=+ͱGYpǜhG^QZnZ5}x_N_-j'Q( g24E.3uwE[ԑG}oV&g{`Hb>]fSOAT[ Zej"4g5Glr#SWfXha1xDGu.|-{:|11T8X*`SebYR$%w, 6ޑZӔ;jي=М IIIs"= 0eSmDF@/sߗ*t^pdai[j!+Z+(,w. ]U/.EP2ġ;[+;u3L@;YRQhHLjo{ Maw}{ |)A^W@0 (MӕbPCoKsk€ن_~-s dBJ0 e.? vҐ-mΈ9 )y]B*1!y;$Œ~ICnݹWN#_!~2޴sWcڣ[k(ɨ1]}C"ǂV fȘT3K16`Y3 Q#)FC٢:{I 9m1`5{ƌ&Ԇ\V/{&Aʭ(`u3}Gxz(rDp3xtj@os;*j.* n⚣ 4h]a'Z$#Fqj/$06WNp7'Iz#;5?T3WX@WaF? TN)A`bb])W>DMUFr cnKHGC{`IazG%EA./1EW}: e~~o, )6J*`$Ϯ>Yl5-Poq fz;“- /"pdj7B쫻wi3 JnڿceR#5VN`52vfFg>qi^J0`` _%5Ғ ¿Rӎ VI_ev۳C/r~ _“0Ɂak-7lY:֏ ~˃l+ ‹A* Rfg0?4-'Q(Ok'>@Pth H$AFw,1#f* 4$c6/%ԡwjۅ`˚aY(?kq#4/ XB x{+xF4I@&l{"  z.<7Ol㪱$ۄ7,:l^EJk[Eq%JggFA}3lH/l\ I2BA ;28|@d 7Q\XJbDt0<(B@4!@6a(_楆|Ҧ߅R%v,e?}o!Xp8Qw8#m*pe농Nq]~; n[!69gU"}E_yYP0|z&t԰(@NT<晫hXLEA*ZAL5`Տ"^G8d2P'mstӸ(2|`i rISVxks`cۓ+Y:d_ۇ 5DmVM+0]So@Ό'E(| Գ<|B0P3xne:Q |7l'X-^4a%Fn}/%IJ;!ؑx㜜fI稌63 Pi7UT0 RX/$oWa(>M%asK <m+:JAXI [픈4Eh7W(Jz?F†%H%xː٥ WLϔM _*s}7xp g-30GA魸 V0Lqvƪ%pX9@OL ni:d+y=VP V($%2"b\7Kͬto{:H :ߠlARv (~z~a RRE|d )6py="o;I;{^YR.Ͳpo"h^FRN hT<XGe0Zq:ҢmvF4 _5((NgH \%lvfxpQȖ?^Ώ 4u@xn}/Pc\ׅ䪣Qyλ=wDߪ\tzZ5fkJ+ }XK~hS+#t#)X87>L43i?dƻǦ?7FA0(.10wa\Xo )̅I l7%E#v_6jЉ=z({;ů#2LL0@;&F;,6 zзFG0A q1MDp2"FO9SBѹI6up1VziP0 =/I!w caߐj$" 𙨮BoB 2ZaTXoCaTsNPAVh7CN?N>CϑhҪ%keN".?yZ&hH 2)V2ep01sΜg-K}!C za EڧE-Í H]Nʶɖ}ot.T[*v~LюkKr2"f[҉\z/2(9.l')[~TִσOUW6/͈PvxɄf&r 4"sK2sbW2~{#pr*0ujnlk!.?t0Ǝ֯8]oY0Z8Z1 ~n}IpPյ{fK*"T2x=pU'ytW0a}OW/"[$|\4"s]Q< .Cwڇ?;A IX}cVcV9mHcyq LjwBc(%3:~+RgB$:` izC)IH왭lj=]bTfu6LYOlR!xu9ϑw hge֖myyRqQ36S)_NY$_[nվXj,6RfIZS(ifU %]zM%귄bcsV_i-^tϘP~Ce3imSo39 kYD9/7k*#Zg$x| $x->.7D(w :qj EJJqbhExzF [7'wƁbÎKRFFyj;YLl9A{]O?5.u%GO87@h4>[L9 G,]!@B(:^w⩛ފ+]cLX(u=)-lj ؙT#Ŝr\ʂRuyj 뤧a~2ErMT/EzBR,;^S:gI8BQ;Mi4v0LH]>k)įmQ,\#:2 q8! 8m{rP@aQ..R4Z),Ysus?ʠ(,Ce%= guHh#M}\,!uM~!9CE`'ٓE1oI#+m([[ 1kz;t2PeU9dk  u853Q} %5 toF@d९kѳ%$z5:^s99^y8èls5o,x d29`YtW MEGxf)cU/Ad~=wȽШhK㉧^ >|4]ELnY=m#Rcpk8مm! G+Gm_ sFDhW!¥URAj7ʿcazN9} 0Y8% gzȢOר&XӐjqY`Z`mDU)ӷ*Wku԰@I2hX$%5;HUtZ_܅i1)m˛kvzo@?ZR-Ք(Dc-KS] Y?osw-_$#gop Kg{㬏u~A渨EvWYF|{^4{k2GBA? @0ec#.|7[9!_I5v=`D=2l: U.HlB:c}㚮=^d+bݘcC8Ť)QLI^~YZ}ϟmչJp'sD~-NJ"O^HPT׾EV*_퉜;CԖ,D7%& RaIH_EQP7"Dų;gzMDHN~=iz._a`1/ņRy;?]M)V MR.2U)dj;."BwEq--B)`E(+CXů38Т/7J 0dA;Lի9L)4JuQDmUi^4YO@~Mì5p%Ϟ*W@w^s|C]vŮu{!Yɘ%v&.HSZ|s"VFK* F@ 48z5f3 :oԳ?%TJ皕6O$|#8?׉,.]rvBΩYݽZMYQXOr j,'7w`R3\Y +A`eem%tۼ:aRa;.{0qބyKN zp{4YQƶGBlJB"m[2'Q/9ui$:p.b͈ԑ% y^Ӹ0O]\$6=SdBp[d^d2\0 Q :,cEUҢMd 囌 '?zH^ &E ;RQ3OW+k+FUkm'1 wEqjQ9&TY K9'ڡFsM,aVa7綼,_ cUy] 9㌞TT0{ff]ɻ^\pv2~5[Dc9ph^a%ʵm _QXPTvf<45$tH\ö!܄RKd6IoC:y.r|iԡ`WW *6SyI;8V{!\&PS4Mzxrkiɺm dQ_dx*}9vO"cN\]."rGzd*;$32CZw1`=/m4?ң:cU"DK4A2ji#V>f'BF/(THhkTrJW AK6%neb(9۸$;;jwŌ#m1:>*յ8qiR('F칾'4 LT"~T3SwZBR@)dKl=i˚ʂgٻ$E+R&IChv.c]I5)27e 41)ʳ o\ м'vAb&>jkvyq(j(p\ 4oÆ[=M5Uu|yNY6mܾ"f (q2x[kg:K.W?ex\x +)wჼ~S =sK8PGH@[C Q$Rhtv=e,E _p&vގ)f>v7OIqO&i칬B8ڝLt(p}dMPf*K rUb0J,ӕ!Iˢɣdhj 2b\Ul,rXY Lb+Vw.Cr@Gt1UMd_]fU*TF{:%[+kըuI7c-0s|̥xMHDV.& ܧguq% ͹lhx,rKĽ#u?T&w@J-ԝEdO?s|Tz.}MJ4(;~NV5_BBD8t3VL48kx*붳e( MYW:s,[{وctVKC#G0,B>p8?gEVsƱ=5CQV61%qC#q9@l7}ixVnӬIg70`֠+uDA:62 \0f$yǶJ*`@KVd Ea1'ulpq-!88%Eۼ}g>dL"roMEirpۦN^LfX"ybb.SMTf`s6ogA=N9503;y3TG| !1I u$Fmͣ`)$o;^+}U]!F :%Zl;`7$,/E}AH' kv7GT#֧Q|M4e~(TuPЉޖ Q#|ӍA _t7.t'is|ه]]#"W{E}%1U@1BfgzXju' x.t~$D)5)izGvci/VL~MNEŸbi>xu&PR%lo*c*VpHo:c͚emUIau!uWk- +F~WPe9OAw>$y)l$gcqt3+cE0lN 75-S8}EZ@R׏_i'MaB R;@% Jb.~>esMć lt|K){P;"+Irڄ37<~KSO<(;m}+bKA_ h6ZK)hxd-nv#CG]~%2PŖ%?_)Et"\%VN:pKTrWGU~̀Cw7y{b/)@xSг<ʨSW:LJEa]"WYpǯYrȻl*>El#F 4:"[]?zQMV t}XEϭ}Z99(htǥ(,nNg,as2C1;YP~n<`\u|>eŘ /Gp⇴>nCv{؄~9Q";,#Ϥj<|7*D: w4gѽ+{{oZv"cZ){V7qPyy~[!E=)V׵V4;) ʸQXZVK?S j%PKX)0c;3<1{(eI)rԦu}6$,l̋` ᰌ᫩S?CS&ss;$+ 2–QKFr4YQ2 nܦ;D bbf]:kJ`3ߛNf5*~(OQdQT]ږrnٙ|B%7O!t!`Z <Mz(Z1Jm%YhO+">D,vT\=c Lva/ g9^:545C![9k~)2$éU,p^ L!8?\r1Ga)*^˛aaқ=8'vL'lv'Ib`'2Uo ȫWq 4b}uD b#vZU7 wd1'~V{OrȊ sBAscjnm{ihV6\hǏ jCWS tT' 3Fq}Z~;W^oYOA}7$y9&|ؠn{%$JP1v {%h,lPF#t4OPBB82::[͹vR&/I#,2r[.0NrOP8oCk\dl-ȨL/,t&W,'K 5rN* ZW *#ꌨp.^ꁕ,(6XL?lN㧒5-|y_ b^%l,iu.fybM*u@)])ȕ9PbYi܈q~/Nfv[:yjP\trR|rs %=&Datgg<g\qт6%&a^Rҕ1dtʩʔ3&B. g&aCu#!P<֦frK b00I u)~CIyݿ;mD/9VO}['b dIE}n$1H~a9뙻 ׌7Y9Ft11ܕ(^_6TF1 MhAz:ߥt/_!lٌ5_Y$dN yako? <(8HNa-'L̲Ai^ 2a՞sBX oOқmz\W5ΖCT1ub \# ;,Ovq֫#n/DJS_s*3pŶ@8=&2g1\ k>%ՇsfUp(dP6jiEyݘe T!/wDc~dfvDѭF慿? #߮Mf)  ]t/B/ŭq|1X=ioVD@w捳k8ᶡvt's1U:PI ۙK s7XF g^ÂpkMs7.p4s#r5݁[X9MwVU@USS&^O<rB[ ~6P߈3C~Grɿh`W6O40 R<ș|@n?q ![[F31zm%[$G7|z9bk8KXPBTϡOe"I#iMHSoqYR!XiFX{'y&;*X^}Hg= tf?cnSVj5erЎCDu!Z2LiU9\Ge7I(}]A5r~?J^K:<,ଷc-tbZʉ c!a#柝ْda9x,v?(ɒ#d`f;Y]~E./e@Jicb/sFp"m]G+ GqƣM0G>GRe6 r'{!:,Ev߻AV0lUb((5ˤGSGKC{E%I?^Mq=T<^ y^8;quN/32y~k$#kkrswz5tslpaW[(M㹥wc Խ0}e#-NR25f;V+T NMsd!D7:/ٷ]Y1 hVM Lb|GH,Nn* `)k{lCoǒ\U/Wdlk~7T3Oj}<)µ_Y񏞋u}7+>1~J_84#YzyaZt,曾}Li g7Ј/R9$BfCPI-ZQ7% v}gLv.g%bpmqRX)Xv]Gi_#Bs^*7b@/CLwpky {˵"[%5! ~'{#7%LSP8.}/AVz\~Nk @ hVf'M+r5*TS:WVP;CO=ٌWc%3]S["+ʒ6#%/6\7䁨smQq-U}}'$sspkLt!|UNRð6>K7,1n{te6,hb{k)$|X|$LV تL0?Sѐe@X{q`OmPkwÁ518&E$a׆&1K۱8GxW8KDm{iI')dja-mf"ྦྷ 355W%1VnPL3F\x4xLpB"8ȃH%0atw!Jt0l4um(µ#Td=e 2&7IQO~xݘndH'tj"ۋd(ղKUKl nlt<^eV~1C~ӴAa2d3{FEj/XYUd2-.:0 99KC #]偰`ӔU[%V[g-*n4bڒ t2"2y;g! :&ͦ u}=a&d`-@P37$5loZbF v"bt~$[8P1h|[s=qi^e5aMor)ԦB4S@Kzc(&<@~#'\9٣Wt^X|y'l6{+\Р4"6h`帑2c;C{**Tg%2x'HƍI0 luEU։º緝]4[ Se z!PXAMJJz_gTGO#i n}gD[=&"="=g"qXO@!* |f&{5_b݁e.Lc+NO2>E~?ߧ~GДq1,Seԕe AR^rd#Lp-G%]Z6~O&u?x~/E~h'&px9.ӤG|[zA_8=hzQ\m(;_wިfzSm/z\?ARcf.# 쒉h7ԟR'FK6j ^ţy"N$NWzdQf-x f9 zw ]~I i(⏑ro\IF`?ɺj0^6 y3>&gi~IHÏ2гwM; 9"A Pw]̅v㬀j.b`gw#MėN*K-qwWAr n>\QtH&.KIh4W?K*  .Etb!M 7\-ePQ[ MRfltvM7:d4Mg=nah.ʾI[T 4:#1J}Ӽ[-QΗ*-`Es|F}:NOW|Q,WB H)1)b˯J(򧾦,V4`#Q)7/,wH#V]*BinBm2? wmWNDM4ғz<u/RYiz6#oGPd~ Gq[vc8,h=p>R 9#hW^z˹ IJZ̡/BIzx̕nq ފ^DIIr?-!v"PwÁ@r3 zypqa#~ɃIoݱ FZBP֪BҢ`%Iiz |+}ʮ4kd#ĮC_(3YrGt寖PۂA)C%3儸?jlѮȚ-o<8d˂]~aRXwx B 6 |zrww!xBT7e#uҟ"]R-X3н ƞz*7j$F`_D0A+dw_מBI +*\KI]gv,5wB>W! 7)uv N+ .$LgMl( gs:,G'!LиŤ%2c`z wd|&cf#e*τR[j*u "߭Uꭡ>=ev_YPȨVm^ ][un!yY-R:vjs:D)-#2.l6W6S 1m@6.1 Rb:}\S b5ÄL9Qy`V$OsYH HT m/p@^-)-]f(4tjboNcL)ET}ڲÍ%ilM"cO4%Ĩ=۷vy { (D6$~oF9,pq<""z2<6U)kκ~qې0Co,Zɵn'Z?ė!軯jDN"^H),TWS!gp "o/edD64c=AҎ^~&>k*dCmֵ=Hu!;V KF7ƻ2M;&"$,#v,B`@[Qp9Ik4$܉oabz!%/2P݊읔{~7od{uߣ6U`k A `uJH}:T<̋VZi|BPBh Vg˯8eɁ=+ F/l򅶆I 5ݵFMg"dfǩ[i@r~\ p=X8gr^ذNQ V⊃d4Ys a,?B1H3w< 05nOm k}g;RX4X ɑ>Y7b7n}$i+1/()KHuT;Sd:[ L/j_JF堔e`- }OcU7F_B@%0UyiPlRВ1CV(%X?IRn[@b} @TꓭnA"?l!E}:S3^- ]Y" tq~N㷏节kY/HF-/|/BnT.7q[1:a(EF0ONOYE&N͹դ4gM-jBԡӹthimJL_z- E/!ÈK7WR|PJ@Xw~M0]U'qk}Y9`q¹ P>O۔j{!wlGt 1;dW`{:P."#}OKD2 T+n/ }Ӣ=W2F2y!$m*0ЧvNj ,Qmm@zRMBj(|s]5%4#GuYD )-fmX,:+.k&mDO eID&lZlkW*tҽPf!cOCe?38}.s>26ŮjsjLq~q稺b)yfJ+aף6Z=7jȕIfR˥tsV?@Y􏷽G%E̩1: 8`g!A)<= u{!MR> [6<:*(A\7 jR"Ь=LpY"l@:-~ )6n\n4L{gacnWVfVKvQ!cWK,Ĺ-o~ٗ\ƃ]B܈8$J@^(A8PI ZD)hP5"ƈi:z/Wov>z#<ia:.:{}|ТhPvVH!ͧUy^\YW5j!7|=)ɞ7~JIIʈ pPU€c17Vָ 0b]JKiY3FAy^U&/BԜH冂mI&$P)P_?BOv^:jlM x]H "RxvpٟvB q}d1"ys{dez%H>ƦE%o1ۇ/R.yT^|Oe& =BN^; 5JP@ lװd6xbbStY3^UY$US! L0'4]ϓsTB軣â:d2F`(F!_!qM[4mtLa5K_Gz5܃C7n6a׵؊Sn[.$Z^ 7UUޯC32F$V4В>wTe@8tG58 ӛySo{)LKU;E^[2-g<UL`z"$7raM(VY1hoأPe9 EyÍgnlQo5, 0 ĄZ損|ҝzruG-{*1Ě@~i)\՝~b&L\Ƙ7IX#gc ;U&(}jjd|1DR36X&#~|#%22Ru8D|!9lHf>) ѥ3(I1G5aZN)<J6A JyΫk9rlw%aOX+~ xzB,MЃ@ }6H#Yvb33pdR~bfHû1BCZ+g`lXrt =bgv b"F?m=I}\nNɃÏCm@ug"\mz ͇R]4Z:0܋:˟Zn YHҫc0NsVgS^3;149 &qzrLL̻PIMvXּ}wh]6$>{ϥx VZ+|Q 7AFtQPq+&1֢oVemWU8T!B\ҟ-@M w:hLw^/cFm !__{J/he\lhǛϮDMj$t]pȁ.\| fTkzL"c& 6v Ʈˆ_;~D)c`33Ph7|]Xyh4 |&sVRya W%4@p0X[֘I)90ˬV0ֺ{~פOuDLQ@Ah,N@vOI "uB{~r!D!#W?俷P(IK*l- 'Mu`vݐc aN?j7:*+5L猀iyub(.|6H,lQXػ51!J_+ RНNZQZ؟N# F &k0ÉN~/4\%$Fͱ\?]%F5 Ё]mf)BIXOM4.yoKgQ7:\LHD~C3rzNv)<ҢyY 8&˦MQ?ޣARXu1$RT7WrqQb)tbo&0$78m71H[ Ѯ"ѤGnx4afLĸ :H+ KQ44 5OZU"2#(-q.T;O)C"cV F{rXWO8`$(m{{TnՇЩ8#Pk0ԅE@Ah+箎iܑ E6)nK-9t> pYKr^jmqLE9YbS_1ϼ=Qv1/0Efԙô!K\=u6\l[oArVaio8:xJZ|0O@_(ݝ*?&ڸEyssfĒ6z4KN*0<$@c=7rP ֡˫BҢ3?{T΢E\' Q _ýQ/^PoOE@-k!:<껃LT)& T;4gϘ#D ii]9<K:l&-Z#,NwN.D70D̵STSRV|qs7krr[;Nv{#b]QŨͶN.scɸLu j/Ov-oMZeT,v)f9ao&Y܊(+L˱2NgL`TfV0y"]^'sN+qLg5U``Najk*B?/L2Ae?eNl ) ǥ N1,5)0ډ' U|(F|~_IZM5˘d5C;bn62 "إ!J+AZtw oDi/ZcpUU sX$ 8y.#L4į/ažZ2pThcJc5WjGNlWd\L3adP%10j\ܻb Ku'elb,żO{r]dWϚ$:-748A#ȿb}e{f++b0ndqHS'}ҝx<DMBWIn8W YWevZ_vO&-CNwm6M#+W|lDʅ[s[2U6*fd* $iuVMeNbpOC;Zgccʔ $9%;OI:\u#8D& p"\Tr. rDo?aH/o{`b1V? +TxrEI݇*[׾9RTYF12AzM ~4 :6sR9G9ϯ[m,/Ѝ?*2ة6$#)ƣRPW|pyd=O; A>C w XF,NM@j<$sxmS(zaӎO=bxFJBz[|Y fb|t@W"fQ"V@Xx(@iPsvKppc-!:,lI 5GSNlt6c-zG,EE FK)ڄ8FM82Wja=ڥYݐmUO u! BZ`G&  g@͒gݦ/Μfxcf8kSr?I//C ]`\ڬ0Crf]hF PB^. 彔R]EaDewk8/'I䙽lT(_̷TPŨTN# WA1X5cV=s$L-z0.wɾ];jzIuIs$X'a'fghjtF#Fk1(1m?K#<G2KÄ~s |vRl)cّV\볬1hH33=YVhK͛'ĝSri!|˧ 觼#+IJI>>Ec^K8zֹHEsˊ S:[e"1dNIdbvrN>GRPbɨKF71+!۰+lSCCTB G҇b"3f:qC=T=fP҈X xrk Pm{((e9ToR²:cyaVIK@Cs%R H򀇬К!+s<#pIq x4yרoF,$,QVh8Ygd([7aU>xz(im lpr0`|#q(޹-;Gk59`"|9gZ4[~+ÎߌqivpwKq p K[1E@LkA;o Ɨ[O,QѢz8[HLP+ãQ="%R6% kA3XfOpKE'm=%x.8׺?"iQN4ڞP̉Hm3햟4.c1y*KK7B'܄l vOM!!F [=4\޴Ⱥ5~eʏPN( \Y+fZKcAMWi,vglݿPrcy,H6..W Z@Dyᇻ}NKd͘>ݬ Q _ӊRWB=ޢ9-uckP]ydc$Ywb2ӖPd .m7l)j+ίx F Ja =1ɀq7':EuYv$H3ؑ, F35/ qi\dhfkTj"\n0ĜL赭ZPmy]#H0o[ Ún>r3e2[7Q͌EXW[螊{ظE+DnM)X%! y{t_G,Κ|𮿜I3/{({gם.$ E7,ۛ?"oN!]& y;!`We"o:):Փ a/D![? "ixg_׬t!`?7QY%/A{Irrw{ A^V3p;b];Bxvr45Wv8E>UVW~GcGDIזImzm(CQr$a|y\'.Z4w H褾i{'=%dMe70hoc_D pկҖKE#*şj*zm>V\33OpGRyuYz6 OsCsk T rq92:JmWrgT˥֦=Ckz%w_Be]Q5l R"{v7+'Ad|zSM6S,YT%i ~/ 8Dl%N鮬Mp!ʩ\MkX 1. |:>CYtYO<-|J4 O!/̄ Gq;Gq?XU ivz  * )TXVѾМbC2M_K^ޒ\k ZŮ9y0!Ȑ$yYՌ#WA.egÎRS;<&lW*_) t>\2wf;xjͰDO(<*F62m2{^p7uނZaXY{Rdp)"ځ_7)}c$7iA6!K\' ϹGA8h侙zqV^"kb^Z?"G|exì< I@$ǴnA:'b$]6/'w+JIʌӖ@67 jKq+"_{UT47qUwm(]3y؂{&q ]+-R3>C.H#jo eի  G[y9_j^sSFTĞgt<Čzgcј J/NRvoL(:&IDW X.Nёvx2bސ..5TK|/(ANO6Fxlp!%5~Ӑ HƜZ Dٲ B8{B%* P04#X$1U%7^m}戍} ԗNww(ab޲Q|!l 6X_ݺ<gse0:t-.+=H6[t^)AX@.J2m$kJ?0X'"z! ^]gcm!^ps:jf&iN^ B{^ Ȅ{׬n 'Sqً[;8 >5 <H}O(/}k\PC;[(驹qy،cij6IbL$ TvbiQ[y23>b+:AtN&QޛAd]Cb10 /-)Gtmk qL ѳ'ѩgſ6 @aa!ֲLf8J%Yf))=}ijG%5Q풷C,va|BOs* m;]E'XFB$Dk~꘵q*ç)q1Оb03`Ş@ op.g)"'֭Ui=ng BX(y 3YF2ei AWŽ>iZI ^IM~(VM).ӈ}q懝":Ed{0A[| >@<MPE-Jl(w SxXx娎5KdgM$(ʣn<'0e3g!5OyaݝZV5te \^빒NDZjC)a+l>΀O46%x涨1!n"rB0.R|^Qpe1Fό B%w{/Q7qr"kIx.3\Sz?p?JȈKyr;SBb gVVw) +S1:c햜/= L (V]Wdww9hrO6vHI׭uNX(kH^a>P585,r +F[?5fgi(J', rč.4Hۍn3 UEaKeR 0 |a:G`-TZ+z09qfIH>4h?JmolKPy~SSr)A=.Y/&PTv& RZgoIG0x*adQZeRSSN_)+Ơ KDW ֟6<7Jjl 2WyQ=l4GH1W6oe OLlix\ uSp#07arvPesY2b_-X!adg( V0Y*909Ь8-s~Zl0OxMv(k<-뱍q8Y"tn?i?.EEqJ ,F< OS"f(f %NO$]S~^M}oĞ6sbGEnH{'Sx=zU8vc=SJp0ٽ Jq]gxuݻfef=t'$yMC9nc")  K [\^yWAw ԞC P;q!imF?n~㣭Ch`/e{٣D2O(Sd=N+D3f ~c)RkdJoKr z+?_Cn)~NdBȐ9 hCnPl/.| 1:u4d_ n+&'`G Eρ X/`c͸#:(nN~u̒M\6XPcO)_K3Mpg䷢ 4ʂ&}-"S1:T2RO@uBX9"EOs.X_]vЖk *WL9ZG$C*T =|L*{x];eBG[\#BXA]\$.TI#xXS߸Yh)[[N9hݭ we~n7"]&;=&K|]۝-8]ail-ot!"LKl_;"bgK6E禦+C_,ht4}3[EՅv܃煜Y8out&Ϙ 3aw_iU\@lGпg*kJȦ>801WDjZ@2u"ND3D7/ƀ%W&D,|_#)aЋOм'Af\[5 ^]㗬% t@$o9; ?@ky@os.MVﱴMf1 0#=hJY<R!`W@B"7|% ϯxk!_M3h NVz0/v\dO#B{$vױ^L~0 k!EbYFh5j#R>zw7|`f:9ܛ$Jls(r_m 9~FW|Ḿ '.@Zu-` ͂0j.t J=B OJ2q-e)Ax@ 7]{CRqeB?>^ &t:$e"cVGd后?k1E]mM܆n `6xOz~H.]?m"jXs ;:J? gon5ob9a_e婭y9z pبV)`|\UDa_P@;. eB6cK^ >|n`sCժ'D&Fj.!I:`Re iTmJ-=#@P*z5wiI>T@ ;Ptl; O,b3ow? Q:YOC=Ԟ78$M0^(::vJ((a [dO$RKQ/mo~Zo umgnWSzXXK=kdĘț<$D,#9;/4n|eXU۰cUlc0po$LK~4|(8-`1q?QY/PBycp<'܎Bqń6}.W)hfs7_dI;8ZƒI4E\n7&eGd*Z6 -8}zQ o2h-4Q0YKO2.unk5)y]xA hGW̱C`ZL1L eIOy2 ¨OIHXdGG,s&$ B'~U qcPoE=,6|L[?C*w 46T5 Vc8[@O,xYI6~۵TX8 LAX)Pio[ 0p )e s.D;֦>2>f3OZPR|QNjĺd1Y*3c'!pC LRΘ^۫e 4(~A+#/x!-b^IX  @s,OF\Mӧ5 C]hvp{ 6w`CŁ %s"p7G>a=sW ;b[;*5 GY8Rv ҏڅH2(֊LÍېUѥnQ($`hphjWm C~Lj?K#(.I2b==ҽμj'VJ/a( )Y@e㳩`в,'jkK}5P33ѫ(vb}WK-i~C31#ϗhQ-7굶WWV+&%8SۼXuϵ⏈U?e΋!(r'f/B@P񕞙~N̯R8N]( Jv=Q6~+Blk16G?fBi0!S?=}X s|\36Dݿ"-ssO72(U` I5T[&$D՚,BE aّ--?ðLŢ=% 4/K*k7x9 j|Q)IQ7!yvL9:/KŚelwĞ/e|o f*gv&W ݗֱavWNRSi#ۺX l 1!k#؇Hz4 Î(n!4.Em qݥC!" u@?*1lQI]F|[fBNUܦkG2 67dFmӗQ gGSbwp{sn&>JgI|khAT%tA |'=)ASn_#BS=Պ?i-owpf4'te9CY 8_K>)ko?c#w{G]MgBɅhtmt_^cǟl%bSipȌbGnjI7onW QeÎ ( -ZpsE=:* i*XeyxWV+㛁f8TBnmUї>UE&ARei o3T$h>kgfaΫ ](g cof.O%N޸+w+68Kiҝ.~8Ln倸sCg[Mh+j; /y}QX]@{b|ke+B{@\P؃696!Yg:meyیc72WK (؆:R2# Xc;C+G#X4j3b}~hšA'}4`|6k7Xę< _XS+Bi5oA#φ r'r0Q%P%`'5Qq02/GKNa8g/ښ=J;59*?TҎbS\X5n`nՃō2< tR%T#Bр ı]5G49)JK/ffervofsDDJء^J=w1ؿ0&9-%)D} wkWc~nloκf eSLs[IGIHdF.L8;dn3+;XO'I %gQ.vT汴|@CgZq.KvHjqEX,♯ Ax#-7PO 5n#n,k}ַWW`GZ_zt7fVo9FpjlQnKԳMoיm6-̲4\F dY@kؘkp @Nt\;dpm1bJ-(IH#iX&Hi7X$^&ruAdjA&oٛx\2BV\2~ۻ<*]-?vaQ\%O˒T59 vA#+,m-T!$ EzhaE?~jcYdS8A`EA4F Zz7+ 3G!LH@Ao¾+VҖekԾʬ@gۨp BNrZf/ӳXape{p5<7Цy y!-/fij۫⺓hƞknMWb=~\} _O~ܕk"IDqi>m%؜`tA"ŚJ$zV/3H!w[G- sl8*^I0_w<n]pS 8Vуnp;nc٦Luwؕ\H3Oo߿3Fy{&$VHv&UɞogGݭ_>ܫ/8*-yE|B& ]4\.}߆3Rv\/9 M,=59uei7P&[2 &*'g7uPney1+9Ϻn PXo&ոX6kI}9[`^;& winUpJQ=Qpiy$K =}R숥b[@<])]9_hEk_>K1b)sʽgXL[HZP{ݳ?.'q 5vA^i.CSlkhWL7YR47;%[fP{0KU*~s`E8ipy+59jsڙX!(Eޮ %"ƳZ9Sy/B(|C/perWU%E謀vwp| pɀ8<ȵDQ:b7Vy {i9ecBPԨ;+"S2[8L|bvwZ0V u[G@2Xיl7&6.-zKHq,o'pq&\z!z8O)C#Jp^ q} ϻ1Wbo.rR^qz=90Y?a |N8lMj:Mza3_\V m7^*)@ЧO''?+a#϶r0zӪOlu Uɯ!$YE| %Ns |MA"3j%vrܻ䍵ObNRQV$mvJKNy(ְcHXMɐ|ƕI>7H˕,.jwkăgۤVA:s2FJq΅Խ^ZҼnm#!kAb2 py~MxBw,,X` Vʡ4!fZ_]\7=| Q6+Ukr]+d{ !kftFGo$By %[0P Z'.NnD^ vH ؃ދJ \pJV;%AU8q]GW-R .E_a1hMn΍П8 11Z%Z|}l T2Al%3ksT]tzmB=KRMRǸXZ!@xzOZC :Kzk$St0SN\jiJ딦5#0՝K0YZrAu!N'Wt dn,QmN2Y[<?Z:~~mwx^k8Qf#G\tfe*5kaJ/OnMu蠩g04@u^ ةLf?2ĝ*FxoM0zM_sAs -t òaMIbC?4pCαͱHUUXb}aOX~=F=rʻ?V7}9`cT`rBYFD&۽kgG -ѓWE-v4#t+ b*Iߟ:2bIՍ{]m>%>2=GJ4YXSYDzHz t!-`zU Q}YoHa #Ď IMV뿚ˈuD.a*"t%5N|=mn7fT^QR'|K]Y: qȽ㠡{h9Fľ2H>AgR.&CD!f~$w yUNA_l2ʵWXx%BtOtb/vQGȏ&!,(PIn;z(hM [$AfWD8yS`ܖ"Щب0bCVIk2br73s}O46jbşHJ9 l񊦂VArLh͎kTh\o;1O7Apbtp4gc8B8]9 0: -hV0U]!^M L?,ubg?JlԑRNihbFAjR̓)w! ᰤ2W, P2{8DCMH;Á}jJ\p *ADtO]nQ6${U:Qw+V f asP4K.)$%+t1Qt ,S915qvZpHM9!-1@oQ& ))(&`tiū/5(|{e۞P~8gBAs݃i51I~{Ux >5"wPr2`F,9ֆݠVk7͓hݼy!q?,Y8eTP`.z6ZdK{-] ،rLLS: Bč{{ rD'Pc?JCYmOYKEt O66Y_'/ź^kMV`_ȓltw:YqsR?iݎљu_ZU;H;*܉,,x zm`jzaFUlv#@НyEq SeRipm|9p~ݾdrs ET\ xOyuJA t⌷NfKn9SiG\6dO>),ژk#>0ɘpsv$2&g'gk:뢋ays¨vWh^FT1|;4YLfΑ ?!P{%ٌ!ϊRo 'vЍOmqxl|mu3"mW㋨1u.l+x~ ʫJL*sdF䙔` ?k]캌Df=H3 u&'Jux?Ʈ:ŷ,3uo .c(5d1QP;b^gO8ɹ}νLxӪXN/0"9h^Xca 뺅q+ccQe11Z ;S ){qӒԴHhĆi萁]NN̗{V`q\LbɊO4Bᡛ=ҵDT"b2En ]BV}Nvܡ;;2f96^BNRhtĖ/ET)K5pDK"\׹%yb9ߪu3#ܡT}}~G t{0LXDvPS @_"1eyQh_'u(5j_b*&)ư 6Vѻ@\UFī`}Y_"˰#C^Ds#5؈^nǍ=K_e[^uinZGOY7c8]|0 e SG"Ȇ0D۬sR+a_CR szGnzk +Uj573K"<܃Ħ+=C PGG@Ox EIeʖ6aVܛ>S_k&a^Y, jdfy)ٵ96WJW6vӳ #]@R%1}M#CK G&N *L]S}3nHi+O:-Ftjp@O+qE~3,M)@6,V7x]cʄk^dvTi**eKU鑗mف3WI}nZ{9 Eyu{VrRTou,UkdY JTvI@Y ꓄:Էf;-L@ Tk'7'm5~n5Evyyy @v`{v Yv?AkcbCv>ɶ$>O͂L7Բ7L8<ɍ pqӒ VU}4PPc,1 )5]|"3\@Sql_}8c҅Ua4"͆ՈSʖaHD` _>WԚB@Y,im[A\1rRל]n%2_ ä Y,P LMfjHW&[;]&>{qN,eS<` jі|<$IsosYF_MߵK()dL{tqҁ-8vq2p8{Q5qA+Tu\dBY=Jvn%Ig%|y/7%BpfϪnTL|QHO[œ@} {fFN 𹶴.%+f--NSb=ɫ#z\f~$FX]/o[RX=n.ltqu!o1N櫉✸8cx:qyp7-x j%n م_8 1iڷf]B۔{|FzDP[o!nȒ1L4C4:5EZgZƢ"eGd'ЫI) f pWKm\hRo]kqb/12Vls ְo^ʶhRuYDI>О謫6Sz^$C~n@C94R %]fn p@AU4lC@ddk-욈:@Fв]k65t~98_ . <XI+Wt-f}VzaI婃"ENjmr;4+{;6oYouOSi}Ѧ˔x~YxvD4)a֨@aAUPbAt"8sHu5_@b ; >%{L+ѴδpEg%Қ66D̾^߳0NNչ. . oHJx-j)dҼ%(ܝ|{j2iI|ŬYpOshQ5'|a9gЍQ&Y,'/)&8j;Q gh VFɂ6+aVXצO=2mu)rP-Tܩ$x[:!WU`>| v)o2:!3ͪÿj9Р0^:^]-*-+h܃\baEu\:Va\fYg\Xն|hVI*\Cя}iyuρ:C\p ]%|#y"WTƜ- ZdroKR)MTw_MѮ2'_*pDO#tµ $8X@Q(`p'?{1|@WT^IMDm\MķI(o{ ѧtN>0z̄,1sBۇV;bZyS&n`5 k-v>OdvhօUz9 d>oZ{3.0럂SPڝӺ/y'LТl4d#C az)/ӐiCڲwW ft+WI Iee}a麧B {˪mں4p(۞ "T0ro MGr4r0 W>;b"$| Cl TT-clL9 q[΃$}T;_S(+ rEQtQZ,;f&F^cieBy:Hpך8%+#&1;`E&ySTR#I'#Rwrć#$;^ݿtw*2)p-nI 4 .騑1MWr,*%N PF ]3YS[,0Oy8Lx#t3_0}K/gTKEy~,Em$.͡F>M,s<&+>ͯz*;[v/](r] 2CE'աjS59KZ/:]G|ۈĞ&v* Uk(0"/{GnSTV ) S-DXq"AIš;I-ݭK)4ǫj\ Xu@iOȀVxOjtAOݩ U }W*Vqޓ Tjx/o50ǝ 8Q7Ռ l2(87Vb SX X3QF~wf% w-X[I*Ct*4!kkdV swOG?1p5SH-E4ςTڊnʑ{-1Ml1Êc &u}mu)E-tS$)m>hqXmMr{Zv 0XdXjpvw'mXK˛*a +{'oá׵ӗ"=auRedJHxfBYկRIW7P5c̰ ٤-dnǁՐ( ǣ8Ja& (†71Qf뜚ܬuTa4| tg֬g+saA2B)5ٰYfl$ַ}XHJ {J[Æ̷Q %҇HujWo|4zsmlkf;m$"ķ t}@)!Yc RZT?]"+"g~Y#/ 52NTMc~1R|w1ߊrfB_Z%E| w3 h2{ Ǝf%F 5Ц6>ME߱ΖV~kiG{qȠ^9BMJ4BKBȢ&e$e_# xV<+T(׍o:͐dҴ"=͞p{gTC"C sjl/s9`ix2qI3c͉rXxv07$..bmY/Iv7`e@{nM/m2CApX0h$R+}2ٔǏ2Ȑ4yU#YvR)wSmC,\ [\ aVN^X)HѸ`:nU ®urѬg'٦<|I͎΢ acl5plכg>ly{h:h @U$XKe 4h\]{հG?wiM/2f^BQ˗c'$]*d-9( @3 sg]LV b B``3NGDP4on^B῿id%:w8;*ĥKBzu#K+#:b.ZBFo!f޺,=Ĉ-~%2mL0:KOa rNUV_'I@TEvB,LV^n-M7kRmYLAxQ\Xُ W"+"e}hIs 8f7b ,hw{. &kƞtlH#w`8 [E;* ȫ}x5b#SdX[L2*$+Skjj2M+`N0íXCQ5)ɂz"^ԃK@3:}mpg-hz\ sbD2|HR(0ӗ>67-+iTC4"T1w m~t&< \<; 둁C5!yڷ †l\_;t:<ӇZP7^խ2&,+l\/TܯS(Ԭ+կbIQ@ݴ-@tC?̀N=iyYZ.FƔbZnlNVzjQ)~P&虁V8-|0ƏzǯW`YZ ǧذ}. {#A7K66?U(Dy`Ky>YuҖ `J [&㎜0V=Ȍ$^H(XJ2wh^XQ[^b>ThzF3Ԩ*c|?ΏG-)y€"UQU*V ={A^EͤPB$˳w>.R!7UߜmUR=! kM\j(+{uyoOԬz`yL$QA>(1L\阼ShV [Kѕ0I9Bc!r8.Ԅ^nɹ$ʎdϒ=c(ꅈ3@< M3?$O[3mS՛ǘNC4B1,_£#N,T*fٛQ!y;|?0<L'R/i]bAZ}/-#0@ˌ9#\#rtFaS2' 7|ӇtGm*-5À -EUsy:kPZh}اH5?muspmVu#Qvu֭KZk=ئx)ӭM!4)tFiӔZ7( 78qȹӧEU c9j"2t$&GA$zrqVXzɚJz.ue{q\F𒑟O9"m~̅$z;PK' 6fNj329ą7~A%hoL{R~$Z_hVjMd(y WFx"\DCȥ¦=@jMCr"0ɌGrQ/O z+K.Ss),COA)U/'j`1ς䲉7_KalH\%+O7uU&F}%9n6XUϜ b>A_f4`cn@U?<rN\Y;<btyZ?h?,U( \Sł=H>ԙÀ{^%7̲L(0lKK['qf_6;7&)"e7L,h>+NΎU=w2W 0Gn<#` Ljr'޵-{J̬+ە~%aJ!SaHf7@5 B=GSQv `^emAYė71uP7ۄR%0O0h5^S|U@.â \zM[7n wO~:"07q֣Ȼ8} +Ϡ 'GLjUAoxrޣoHe,$IlZ0~RV4tk?g`Vz&qL|uK bdHoO׆zapwkY; yyqjrj;E>LCkQzZCUpdK L= YE8hʶ Lhx@{S:k\5;NxޕS`jߡ$LWDV$3ţm;l=⫇?=c~3ElKw*mq-iB̋=>Y #26LV}UE\/0͌o @{MV F9"IG$lNS/ =rxiBw+?⻷bltvb %:pܷjOA̿'CL~ o5 ^e!/5+=fk@LonlE){&rM-mhAb*V`fisRYV3#VSYy0SKf!տIfu2VcFl "_'@ vCU>-#?EI8wwo^ǝP'=Zh6eN믍$/Z>cD[Ref"" 2*xuO"& reڼﶢKčsJ@j@WcىnG^L:ɟ:`Ym[^xSP?0w73#*+ bWIMO3y}z q?NsngX?OxX_vM mKzY͖¨H1}x="ks$ZXBUCb[pYA5t(;y52M2uhIvPѾtXJyQjXb0?`s<%EEI+ nVX!+J,b| 'nw wrJv̤r<ұY qWz̻ -qQ`hP@/=iX0^:hsN^k OQd*ڵrIDM }z{2j3#lR@ՠ"Ux- GR} QgI;;*-H@acK:+U\E Re$5)Vk5֯7pe z{ri~1jHz&5 %ki"hE/pwW&KGV99UO2= . >)4;B=BݐW6 ̈ckPjU)cP!A9U_0J'*vq>Ri[nrcw;hn3VdHp"* % Bunkh~ƪC>t";exB%^ k%r池`q!\֚~F2֓5˦ GUh46`ڽ58{ ,DtZ\}GwP pf.+YiH>D.j7/k-lw' 2th5ʙ:iu<6I-w v , h f;R})^k,R"R&wYui]TdtMRLD"@l:?c) +1~`gcg(efH9Lk/pTlSJj|҅6* &Dnϐ7] zaEwXŷBmQpU^ 6'MAE7:"aJ RQo14/&iDdjNn9t+EC& 0򄽎3>aR'#zzMc|U"J=+MuAk6 MT-V;`"N*g8> r( KLky{y,o4nD:6IZAě/4[Zvl,!CEHQ~$5fmuP .\_eOH|H \ r^PG Na'>G)-p|Kۯ7YnxdWyF&Ɲ$'ߎv/ࣰL Y6~/?nj7´]l.wΗtzjORzLTl% #L.ָff X"v~PA bgh'nڷx$Em*YkSW[@^aZ@%G6A^0TF,ToL7Ѭ-Ё6J2|bn@$B@z>FRZx[q(^s/Go˂M@~L40#ifއ*Cy<F߇x@@٬NA+߲z}-h4;t2 MD>'W{6ѧ;! eHiՐ#!7;t>4U`)>8v0嫆:zK'9lo2<^U}G8~B^tvaRέfL,l%U-왵' kR8y uA$,3qJΝY]2-=f))8\KU[=-}7X?.LK!`jI, 5]k~#qv3?*6%=z]7I^$eFf)k?մ_tQ7[uUPCǓK _Uhv(Mƣ <8&!F 4 0)ސjY: xP \*=s8Pi:Dgx(A-$_gc;w0wx0CbEdkENS+$T//mFesS=II^H-|2y%7x Y{}[xVst4N橷,/d\tAZ0H;cgyZg^F7>?SrtY쒢:}K2GMϻ<;+khS]񬄟 VA|scs4x-*JyHR˙ mYqCtcOByPᵫ#8`ƶL0}14<huuJXc/0Q! _zd~>4c#K_68'!}O$4nu4,\㹀0*HE﵌:\$xvGe s%# BVДq5LETCXI鼅T53V>G-S}u=s`O@TkN[.g+w!(^e02BU-Ni<Ɗ~ S6!S#螌ڴ෪jkm$^Sy ̗|1H^fREqʣ?ѠnIESEcu~ABG)Ypd'i4zJ34t,KzP+#Ł0]Sk6,=kV8Ip'oxQX 56=M'Fl؁J3&Rc[-€؏H}bw?#<* ,3,K H]gawv$J.s.!zg_ Joh ^=TD-BR h#N\bLae%M T/D[ф""N?ݟUfq NY/ ̱a a8/ڋͯ ;2čGSvӰǖ@&\#Ӻ!MYYq\bV'', 8u]lD$ImhyYɠixq$ܰv<ϩ1hkK ~4|M6{x"Yi8jaАdgJK@QqS8`FG9#6>@넢irFyD 澅gzU^X W1𪎇?Lp6O&.Tyh#-;tZ "'/3D_=tuv7+}߰c,rla]Yrk`_~5lx2+; 7j+yZ(fH9cT9?2pϫzc64{XN@n#m E2,xsE(sO;YӳYuEx} _\/]Nb<ߔ˟L͙$kux۬-FZ ҄JjƢǢF]D[cyr!˯>>W?_O{@!1H/|4]Sc}i~2 @`g˘[[4%sv&J EA8WѠ {HT`Tߏ7l=hikgi`F;r):b?YGʬ S\i'T9Pw/t"toD3Tm0"LrBzI&&^fY{NBʡ{'UF-8~Se14}kp] "hFot7v] yֹáet]|YMh@ηG9ߛ(oZ> _8K7:E{ x5+X^ҡN`׈V\80 60&sv)-<)>#Ҵ)w쥂BQXP3d0?*GPΆiN`b^Ic: `#Ql (354ѴڰmEriCm< S pe 639KS)"!=B`c. Xz>4zǥQ(ϩ9匂鑤䉨#/rkhq. "#'SB^aOdV^̢šȲ$|6PJ7>۹DLjΟ~tTϧ v&;z3ﰬ:W9::J$7h59|PbD7;7o`ˊYAic䏥:}hg@~".6:$dC*u+ݜ+'Uz9I{gȃLgTg &R] bNLaS|Fj5x' &t М?j]Dl*4\:hT=iyО w~J>6X;fE T2rWSjUN,Q;!}qMbznA))@Xfǁ1eQfZM)ʼn3e%QY'ql(ٹ;1Ě2"l&Eix(8섀m@y? _n Uqe4Q;^*Q[fQVΩS Zu9Ѩ⃱Pl d`6ƒ>⩣ yCg$)lF)5o[4<7rw N-˹_mL'v_}De|RC?Hɑ>B䦕0k3 p ;/ƥ[v~|RP*^>L*kؕO2s6#TejH=UQ"k6ˡ@QTs%ްNwsZW3\%J>> (7Ժ8Uti 6C%Ê~hyHoLhA2$ǫuv8ixS//J(pv$Ȍ_f>Cuc>a() k4a_0W:DžƽЅ.F7"]f!kvxųD]f#HB28:%B8f!UۋWb[NԊW&3p^!=̄xN/Rۥh>9S9O|$-Ye:43zĆ얊SQ;,v (7 9*7s0:) @Mk}T8 mه< )P^,^k]r'20Q)(K*ܗc][gF"#y9`z~i*p)ITgF.+Gs/ˌ%sQ9!Q=O M$gT0X|XwR##5d6tf´vXWUHUVB>[|/硎@T'o[pDu,V8OU5— `B|n h޳\nH_ "ר@gYa]]5M+;4d6IDїiFo'Mv^0Y0Qs!J_ kZl>87֢#:d$)а4HKc~ .iF[bTú߄(|{كm6"l-(j6Hwi5Q2П;wlrӆ_ɨ.QmRA7zugL`Ya* -K& /y{5֫aA(a$XL"*L\O7Z& 8j^цp]uQJ|#v4dl$,r.:ɕF6EQ?&ט{)|ɤOj!+7 ȹH8~n^{oJ_nCZ쀁ŅBoc WjT~&0ɄUa5rq:S7ee !4m^w<R5u+tqq5HRqJ)ɫ䅟jSGfhEvclty)K.Ozj"2jav^B"4,ۣrjȤB2-0{$!uߌ0D 0fn9Pt/MLviu@% +f &P(GFC'յ^=䰆'yU#8 ҟm/N(x0w TWsSa/ȍ$Bc-!\ɭ&dB_;4LoW_g]2lU~{^[}=1&}T%8O $p~ZfnO?/6Ry_4ZS@*O*,)m Z(TwuzٷJ'>8po|J,ۓ晢7.3[VAb7oWm,ل,09HѸ߲,2D:[Ҭ3nخC'b=.JA5y9`4;ߨ[@Ldrֿ&Lbڰ&}fEt,Mɯ5i$<]-;j>}t{06W/6GDv)QY/- 1( 6OĪ:ͦE۩qMx=N},U J{c(`jV'q ,?&KEHbb27d𽕌V43}78k^>4FLU7?wBԍ H⨾WcLtkfqwƱ.5gP49Q@5'-֟Fax\%p)V0T`03l NHwʢ*yKӯU.}fn)N:S@qTjOh7YQcUUq2**yEk]]f_Q`SaըcYTRf=cPY 0I'>++tf\Kza0g U vGON=MNq~|*;:,}`7ѹA[3S#?faK ϊ[UV#-Vk4Q5+ֲy}5DA&F_N /8׏\ɜB]gB78+;eӐ~waXm$Mq^XBׇ^{Fj{҆fY;F*n'&UFR7&e1B{7I)@(DwE\7 {Gf[%9, sXODfm+i3P r WjgMB$Y""¥"M?Dwn|x%.nSfn,ˠUE7i]N!M38+SAKWjQ褢A1jF_6Sb65T7O+G8/=g n\!2@Yz;y3H03q< ~!U'hϔ}0?K>=iV%fiה4..~`ܲiclOYGTz?iw{ffSB~@B)z !t/ <#4t庄8dPC] (ܴ0W?W>X?VqG+&|aj;0}Y)t7P[ #jB]F//9gcG) ~4 _HL7"Qs噆2KW <#,N#ZB WWDf{0mL8 (`FZt؜Vq%`,zuc>koDe{-a ^'/ W$.lpZ ~mhr`7 ;9J)6iRd"vW{W 'ZADA)  i $n >% s,~^2 iRqq_d̫kٚLkKL[J4RM U{sGpSYB G{:TY8RE(}ݽaۿ##M>;,/L|,WtRXK.6k!a }YK+vn7(p9Vh2IGIk*Ko8a MH|H@ أ"3!ԋDZ^Eyo*.WtQL%Lڶ(\ײ)%ʄLFx(!MDypx^eO|,~F"`\o &[!{׬p˾f;[}};hptX7Ub^A-D_8#h `?`7@z b&f D/lK3/b)F|bڝ3l8]@$RF\UAK T|O(,e'8>iԵP X*3uK9r]'C=,jײ]X{.t۳hHFcJG7)ݨS#_WnjزZq旈ARknL|)W,Dŧs볓챭?{7+o홁c%2 o$1^Z8:3qiGq,5IrIPpMbORA%dc*x &|Ժ. MGw(#|!!>dhUxB~CGKPֺ[:n(OY'^gx,kTH~ѓc}wV|S7yA PO}L_'L{$W\ 8JԬeיsN|+_mX~4kYr~'X.NP.'v^UGvWua;O| #^r(z$F"CT TzCJa%dy eԵt93dű]Vлê.<?Q(6$&Uu>X4Y m.-t ՀFYɊ& '&RbQ qE_C%];2BL}vA٠=Wgx^Ŧ^ vP4Y_Xi EM :nw/+l!),V@7wR# ".U^~Ŕ_V "В7L]n~х heyZ٬NyQJQÅ WBO pU+>Ӊ'1і]_4*.6]а,BJ_"W7܌IN7D y)Z؞pͣkVEvςN2/~0#(EtiJ>)+G pK]Ot_'B'Jƹw;Zܺo`ٙmsȓr7KR!_URWdz>\.f{I^QxMiP(wh̅-X>LZ :YJqGX][c<5Ɨ;M4H 'NoO^c9-Dlu?OG̭}wkC2#[|6d!<܅{xm+5kP*l9j@>fo&\oQn7|TF|@6/) fPbX.^E/Lu BC;`XISmmx!馮vw^t#ebcq)Ȫ3Q@Olz-m<ٌ1mߵXd/M`v旋Aq,Teܝea(.XNo"8qx4u_ԫ w7zR,]ҸMzix_+kӎWt73빹{TKU=$8ZZ<n6Kh0n}b}wvpC.z&S_Yѧ:)nxx.Hְ@!Ma92b 5䎙Rg3*}aИi3!~ }+%gUk%4ALu/B4Q`$T|mGSq|y5|Fxj}o߸-5uA'a`3Bmr~Qx uwֈ/gi1ubTTKc"UH[oz(;dgôPAAq>"a;@ƛ=׷;e=PIu+ú[ [ `oXd]dFF}f¼7(Wd nXLX72ߦmqײmK.\RÂ1nV19w!T*y<3⇾y+)I ߳ۇ'7HLh7 3jmʑ6n]J{_ 7'IJI ,dRR)Vߥ14oG_$ a/tIH^/M~j[)Q]}~Ԧ@r@ ԿpQm^U{3#@q9!$\RC Y+Ô_f|.s/_Y䲣3q dlK(l< fyvJ=\!PFga̓}Ss}GPJvvh 3C %^g}ۦ|1(aZmZ3 R=75~ŐEk.؅\3wa%"LH\\PCE !s5kvJJj.g.|DkOj@_`J)rSTÊ:!î?p1k>Q1g f 52fwX6nws/,u:#`64}2Q+i)g:Ŵ^l!R=f 17a9Slh5 {#-vT&U*'< {rbuO)H]lso>Sth: PA^mހs {֞5([j^,-zEq8C뻢S-w!*w)銙vrF|&Ke۫׊ ys{,"ɂUY~TgZ([RގmCeG S-|Œ^=&6JhM5-wUҷ!V lU'd:(Ŏf8𵎯oia<ٲ`;n!˭qB_|E}Ts;绞Z*GбAs=|'lvhQLxs,]A 77OaDZ±>UҊylmG9)MjQXUhH1M7+6Z8H cWÏwE#];LE+wpbzѯc#:+8/BHD% L۲HFQlG|?QFp p@dL bSeV-U#fK 2SH`BSsd5<@ɐ݋)ފ&Y[ mY""№zOv ɳ&7 TtK喓x*!)6YbV#Z@0'B -SQ\~  '9D31w&. gcH-v=<[[LP\QꅊƄؠ*hlECG"Iwo 1Ŧcu_!qUY)@M>.0;g+PRA?xioTBa ŧ6+`##9ݯ^Y:33;(cx7W ˛-hgcŪNރ_|φ0s&1dYI:L8'(H/ 7ݒ) =E3iS0~uU,1;. XmE65EEI>sc437>I'j҉ڀqzٔ/I i_߻0! vp2P0%{~ˮJ P:@`O[n.5r {FNfE42!)q48SP`L,,0G>l|@/8 7Lo$S%U6'}(,j )/V[3'0'|+~hn0~lڛPiZ+ /m^h5s/ǕRmRb|vuvnT~$n[T%qn底hW}=KӦGA݃ka,iyor\gf)6SX#%蕆cTu&ѕQ{uC#}l`]d?RU.BIHp$pE{+,*Lxf@eCTM&Hmo ЂǔCtѹOPW-4û]+y_xm͵wWb'uZw3͂L挙bׁ+t8c}..44U}c6yoTQ&I9uY8 IED@Q-%[=d.0Bc SA<ъ1D=[fRԷN[IQHf1Ζ%"A[8$`uT DN?=9/hT Y7h-NboKA%RdZATE*{+ób| =I$ን%)\`C~Ә:^N0rmK23tn3% 7,M;{Tr(% <苼!MSA٘',.;q+&k~ÏU+f/FoaeuotCF ?JUQʲ#``n!bK;q"OVGvݘp(op> ;aUyd-ItH.-U$4hX.?^Y⑘"7ӿyHU* I#4i`A6-X `ш|k)gj G[?ku|wrX ;!85vkWG,ٙ;F345\'~EEAzMO硁وk rXGccC|XuK`lpKԥ.= a"> >mi*BZ5l˨ۙ\{[(%pF ǗOaű)OX.`i2R8١;.时v[9a&}(Qs)1*ЈTd{/UI6򤮖V3ZR\W k׎~Z2\7&.* 8 %\hK9s ]Jb>F>@SRuj`ᖝDw䝢3dl2h<+'j `otR20.37 d 󓸋Su&ӪUznP[ nn-/_\YQv_o*i,GZZԠ)S KYxSE!~mpxިy)&xGۏ_>YCt4ϟh=1kc扖ǭ 5k 9%>{_fLQ< %'ދXA= ױו63Ns26mtV)T6q\2UAG*i26wǦbda2[6;j槏rTXos_fP6|z\)(Hkn*G3UB<'PCgb= o‰XĮ|oıp"QuӿQ:bl-s?Blȃ޾ewZ9Z;`5_ ZBTvk˭2ͽzh? vk{:4"CF C)hjRZx͂p[ֿwAm'X8Pa6& s8ȧ 8 2J.f+A:ڑE^}+ MP!EmP=O*.Ǿ>ѹ*A/,ˇȅjAhz!2N-ct <rǍw}o04R nCב+.PUu!{{J35߷eJZ"6/u9xT7$ĠK!EemۤrXCm5= ligW*=9L 1jd\;-J\!n˵+GV~Sk-U3>7tFh-D,!ѫ15fkO]c.fh*s\{lW~<νA ߣYL?M_Ox.!2!DMq7Z M[YnW [Y!i$&dR: [4n"X^6H7w˾}8)&,w:&vnx_F~揝LU"gW j)<{&rAAϘhuN@iAWw?^z!2K}h#@fa3-dIr"<f?'OqX|I.$]w u'g4*<*yj!:ok{IR42\~RiXK2i&7O?qy;1L3K C36 ]']SgjQpURl.3 [3LtX!m:Lb8~hmA=E;JW52& s'x* n[~yoʒ! @+\Z1:J>!9B"b(ƀA$i&=k7cķWL76[Wl"Q4:˦”qV{dy49A\J!582Idu>oiʶciEhHҬt Ă3Pzѕ[cUy<je+UF8ckd3N*UPނhut ޼oD#7p  N2ɢ&[vRzWmk|jAK۫|ВE8/l[ ~Rlf7$M%ә zgnI(XJnij'9K2r\)̍O!FUwqꄁK>*gEhNB(5:eA!jR'>|$f&Ph3Ʉ jJoX>:5$يb#P/P[aX:b$T($:=>Y4encU?9_4R\I==B_THr"vY iqW3Fbë )%89߆JuiNr+ysuZû..yۦ7('OmTD6 )[Czi{ou, 2!o4]v'RlƐAC jMNǺb/Snޘf]u4}c^i#%;dt{{A⼽'+kйSA0$} >|p4ӿ _yoZ2XcU5Ɣ =sgc%U H24VLd'H۲Vp]3S4Iϻٸ<ओ|P$6N# 6Uf.q1w|gTrP MF4u4x)E[iMBL @t;\Bh?U2o+KNWĬuK?+;Ik *e'7$蘉qeF`D% xpƟczAC3'`٣ƨ[tl06j Q5}GqON5]b;H<2 i&+N8M ݢWJ n*Yy>قrcS|Udϩkk^˾&yO$Z [0"7H wXzt͠5>!$_a\D1uq~2gpW<\Z[r]a+AiHw~5R΀þz,6TUJ>*I )Z*mUT.y?9Guj[hlp.uO~-R>. Q徲NH0g3Lf;<>fȚH|6WYh%sk8˄ hz 竦XWghn.|<5<LcIK1J-y%1ţ}M#gt')AćUf.Uwq[ % CA N:ORWDD[Bv;#>MVg6O?(_kI<|R)niqYv#Df- 0 ېjn;̡r>SW·ɓ$cC]G'K+`yV0 PY?˞}RED#2Um*n~@,NaMP_a(2mɻ|pmHL]bJRqa!zȫfQ|9s5z YF-@⋘VTD F-YEV&*Qm80 ,RhPUf &EjͰƗ`[GkwCf2Z)FmHL e%xAz+Aن^ĵ[_]C|3*Qڷ>GFoeݏ]{`O!ǚ*D$H_:/-҃}砕[I?cw:`WAWA8 QZ4Wa#}bD[蹎KTVΧ[MǞ}ŮI!w^CW[Pʴ^٥ SK;? 6/'XRFeyhWu>gL?rHVOR6ܛ&B|Dn843P[Э͂*c.j)!"0pd فw"F1qkq*(c5PHo(WOKzՂ4yvТnX'b 88̖1]hZ"*J7fC1?e{Tl2em`{WQḠiݳ #ED=ѣ wZ !iQl<-U?a)/D649U*šuڽziM,81PtNCKV .[n8(_{8Bm¬5:tҝB:]84L[ͨZM°"(F*hv4KD|lֈ)>!F467m 8W/ʇK:+(^vx-x|hi9g_.]qyߠrTLᇅO2/㡺~`?ʘJvP. NE #6{g#+D<(n X"2 _W#`]n:3hbZXn(y0fZ憢ƱC!SP(tm0 |sӠmdb;haai)w^ nٹ@CW&bWD;Y5[ԳC#1\oglx@(P*W5 s7o3%J^bzK2~8y_V2~F}rN=dȫ kDxT6}ifw<T S@4Ƙ*( 74΢h+A|EeL 浚bNCfwcvg:w䁯 {P&}h u?#ݍ%˛$1{圢t(} ;)i6Hc&%ӝ 'O6Gݾߌ#sGձz3BqPE=n`.]R!4T95ϲn^iW wujŚ ,|B&ZRԿ`ӑ71}:Ɵ(%!42Aϙx))s M-i #7:Y"Z#5)vLzinK6| :]+'LoӗڔO2$h`80:L(Ϸ zqH{I{ kP,4<%r}:KL :;$miƺ <}<M W:_J윃{/*d|E>RO*BWsVqvŒ(v%Wf7x׮9vDWSLT cBh q1e]%TP_ D%w7q08js$\ji#"$­[ejС㢗Io Xpx,2LlȜ iXaoc[F't&[Z Yk֬DW?q5'(He z54Y֔HXY4xC! C2eUetL}$ s[M g2OAd=XpE =xHn XL6Df>/7$^ =@ !дjl j|>"q6Ԡ4-ExX762LK܊YPLPͤOcoV$47\Sy-S=$@ڻ綯je)֪[om/LscR͡:- 0AeBa 7=ZʻZP (\mj>}g2lbX:ǃ ^CK$FLs@-a/64'`z%[nUR"g%s*ǰ3yd&-do"J56 A˿]*VyW vQN;[UT=M߳c9U(%Gd'_-LV ųXϦl . wAe2-Rc#ݬ\u01MeDsjuo@mrAG,Mw!':TMbM<(@Rb_ d3Iޣ<~R7΅YJ/ | e)eq8" BO`ѡl霉7vQg P Q`*x=m3`dĐ( Q¬!r2신4^ƷP)=xgX,0md67ż|ށ@ -3j@ZRJ.} w{padz7 {5pδZ螸ƻf E:Rdȃ, #<_ԇǷ[tȜ#Y|vU@>K$1%JAy3ii.AQ oDrqX3V,| MeĚE恒u?J)J4ɿ"B&DA<_"xy4P4i +EY]W1SPxuyN-b#O6_ :Vlu깶rFZ])dAXN#x @`FnX9!ZF@CPL?yD+c)Y8ߋ V~I^C؅b,sy$KFƮ lm"'*g#h~ vk>;s0D݊SFuausQcD0Xﭒdk/] -W!a / Vm ,=Zi 4-;MX__i$LAaEiXhO/PKI^;lh;qH>D sYWw O:t3W/g%:W#">q4 HUuڭ ~$ûE=E(taE]";٫z,6trݑ#*ׯo2hp*q1>Mqkls<>F,ʗv:H'>`SfT MgsPꐥ56I0C'@#gB՟da/ n3x,au}~=.;$C3/US"dՑxб-/wx@ 6#saJloV![c˷j OQwcY!2T1%HsӮ!5sҸ{Bhl1.IQF=a GC,Va"Oៈ0xc-pCF1)).XrGXAovɻ˒$i놮K:ڈe :6gX;SNbp[*l3G*a_q99^z91z[(#7ʜ8qhλ4'k@M@Y& ^}=F%!Oޥvjgޘ#y,Z@Ҝ}ڼ¨o!〳2~8l3 fn:4_L==(R~to9V+4z膝>AKdav:d6LZ;$Nn 3(l'Nr? $̔se`$-,5e#Фǯ^Тo* 4k(&π_3<20uQʄK~K,{ttb^=vf}7 ͍~* e@xq7ݒj@~f3Ef-&Q깐MaXM̝4gh7Z"l4÷1~j+Lx[`Az\~'ɸ lM7ph} >7x=9y3JUr g#9jYˍU$녾xn4%D>q #Ҹ@oص[C:>oވs@f%P:èjp4蔌>IydK[?P{;1IrX<)<q]:Xmq(%XcՒa< 8W HYE HM!ptIu#a¾*aUBd=6 P|^1WUh1t[B&$$G5"E@廅ܭ6UV)_:bo/,4R>翧վ@#"hI2\Z؈#s6`|o񆭿*~F,i%_a.|bvYֳg nv))_\ Ǥ!IaޱEA~!',[m$l儌|N=_P&8lUh}`hw% uYPai#L. v½l`v!YFc^u6{44mpoL+2չ;_Z?ªq΂fE=wlZ719eÿZžkMٗC4@l?{G^Ȭ(i1W3mƂvӭ68w4ȕu45 2:~TuP[yw2WJ KO6B=3(Pp܎G\n65UMC8 ,CXcna[k!W9DZ#r]#ǝQQf:Wkw(|E@]b vǥ).`0;aM'4 >~Gvep°KTI]PYL&Mw/ Vl"8&JrOjk!=׾Ae*&Շdu@k cG(tAߢӔszŌ^ܨ s]#$t@`*f\Cuv ~L嗎7f 2[/ni6_+^8 uW1ťc.Yw9x\I*QK9`rKnwo5VPR-MO #b p7g@Nc?IANzU-J|l.7#ǒC|pqM6`u|Et=>>5C(O!ܿ3XgxuZ>-VUʂeϏ'](q3#Q+&r >+&P J-1'iQ쮰?jP7QT a[}EOG ߯T֓>o5*,kZ?c߹LHu}5SGJ&nAѬ] }ahҠ f^Z -^`H.|j[1P(Srm`DSL'pԲ f7|ID|S3 hd/{ 938jGu ܾ'2y%{y(FEwrpD)geZ|o'FfD>PX^UuVm IY*._Ҷݴ9V;eKp\ÅQie[ɉ8ꃻFIkJ[khY_]3>G9=ʒ ߦKAi.m/8O.@zo 2 _t\ rz#OF0C-(@AKT ӰV] x4A׀B)cwtEOsVF/ҼܟXJ{+ UXX ""D, d̥ykdUPI*}I&>9ƅWV C9o2vޏPy d6sH`6G|oBx>]yRI!5\6N56ql 70_!d$KG.T?ز[غ'>BzFSCC-4h=>\oń0MYwzNV-Q^s7EQFqF| NĞl^97ұ@%P.!z|!vo0f$^az*̖[GrɞWUQ"%FlaDh62-sA}2n,TDn+ȵ( vw@2|籕Ц1{J0Rw(Y`|.]`a$Ӟ6)+N) I%W?‡A&4!;uG'zRZ%G?^VQw'S΂يtDLj2..SK}4b_,maD y .K{*Ȭ!~֑ $,xSsl\zt#S@1Zn'O 7r l>RFWŠa+BAu CY*J)jF*mL/eҩzU0f[rK$:xą䭭tm]D]'_W%y!̴fЮ13kG 2Lﷵ}Bh!iGojG8v*ʄ L%9$NGݮ6YCwй%dlF5|"fD Rxrf dakF`O[6q5:ٽλ R臘"H$G@_"̥Rm它vXXYz$CrG/fl?r?Ps2UTn=`hfrƒh~86-cp$Vv3OA?s/۞J)n%l69]mE"zm@qQ~zjP2HI;S9>ٻF]eAGHo,Cȏۑ_à!s:o!bqk&mvDI v`Nт3*$ַޯSexZ@6gN\n'KS&LL˺uE܊b1OR 7pW.,$>t42ڢxxQE~WF.1#_ƒ#MkW0ꎝ)>ǗA`_ytf9k+)HSx/\\s9P72>_A/Bf=ASP:<3?SJ ! sSt1#+.dw%guWu9`ȇK1-K"oe t}Ijul2uNNA7'ἼY>}rK7~R7PQb ɻ}Y-T]ŢrԁՠΕ?+\6δTPUMZZM P-@W2teu|XRpvwQ-ꔴ'e84ΉY?<: w[yz ")|Gmϲn{@3F,3$0W3i}O![q@b|Lf48Q/'eYB3WTbo߽7瓂"R:*L?~Ңr@p_H:'S6V;Coӂ1DE*Ӄߙ`-T6ۃQ Tmn/vJ+,.#@xYV,Oj 7Cdq&U;8B %bmbT̠=>oU qi;vR؏r< ,:%P6xj@Da-W}LR,#mB!q'eʬ{5 ۹ =ȟtP9SdP$T~m@U?zqI nSоz P=-rbcEKVn^E҂1r|@.ʠWN~ר1I9 u`Ҋ?[3#R[NǢ߳jm]nWZ!$>iRked`ݾ G7pGd ٬,h4ڥS9f9wk #u6U[1Co'42!MX ^wI#/kPkZ>}Qښ~s-/wF[7$Yo$@ꩪ`d([@]*éDi\136\l.ޑ:vq5Ek ^Z9v-NrA-< 93Z!cʋG,hI؝6-kZZ0! [5<]dp5s&N,Ͼ(vW[=ÆA=S.z|5j~Mi0?w߶ʩ&ӮɈkMV2:J ul2%&3tt {٨:>>x]ד{ص+(6cC4Mm7o \ `<:5v1(Ij>3J{Q}OgȫXuUj]AnyKC=vp3r*ww+ިe$QMd|\>A;r-~n_<0&1  J쇃dCfԤ~kP:׳Uq>p:u[F`Z僬ŸrZkofFj?hq)(b FaW{n:pӘ7Gd1gGWq}bU=_KMGPg54|F?Cݕek]t7(̷(t9^|Iuؤ0sLFj%Qlˤ:̳>ݙd)iovI2Amݜmx4oFֱ^a;sOi'@ΒB Z 5 AevIo.Z!>܈ٜ<%$?(hY4r7~ m\S!A7{`LO^>]zQ@iã$wm`dY.{tfid~z;FpQ4 t?ÏF8Z]S?" rfWYSE1Q*/n4MkZ].VfUD.uYj" DA"26j~DՃIHm7θoʫ?0$ibvVKv+#0Ӝ;\n+[,m7()?M~?E ֤ED|ҜǒyE\\!{&]qiA= U$a{)~T ۛl6M9U;sY1>BCQԇ\amv -hݨduJ&:fLԕ5 k|13j>?F 8 }i] \dҧ_oO1?*Ib4p^ǜwVPli>7 Dh*]rR]&{B :cMĕbs+`m:ج]xvnG&;\io?$;Qbm&kNye雞̡`I4Ŋv+bݨ6@=7. XFWwze`glL \x MM޼YzYGnbk#"t Sjϭk{v6]bh1x fj#dOZÄM oN_>Dm ,_/ R&-@շLc627̗ %wq#:o N\"HU]R񬫂hJz=n_$1Y>)|i؄ʮ"0&(_wZu]g㳜 s5&߿{s/ 񱪃gLD#.@jz]P6데+ԛyXG S$."!{.JPT]kPMSq8z?=`ȸB`dk5w2\g˷R*{´Ԇ&0֓xܻXTۧc=Ѡ|tsAɣThfmQH'qKp2HĀI5s: FshNuh 3nic Q\߿FEWrdǁۤGT{;&-)36ÞSqv ~)v5NmWD5>_Dz) 8o(i&ˠznsz⟦5' 5Nb*FDV[BQٵb8ܾSy L*nLaIp4¦n\Gt6B:ԅm} dVe'C0ϑ]m+ k&~e"8orV*iʙ,sh4`&Rƍ.*4$ͥ9YusO!)AH2@Yg%L-5)7,yzMy2owFH,uqptvl?gTZN4Z[r|!c: críCLj7Lg.4d-s_L.z^H7ZSU;[6S3y-_xɦ@:&W7uQ=qѬPW&>5as%"\ PYyl-ŢA("=%ڡo<`fptb6QL"pt!LׅQ!{Dm't`$S9RtK94\F+UAtt'9uZZUnM+D4`AmS+.Yrw:;bOR2.LFs!u{WjĈ_ƨJ "n3,y5c3)]ҍBtpf}c܍q\ 22k4WYi"::~щe5QO^f#tUh*irq1_DuvyUPKɚ>Zs|QjL R j3X0Nj!h@(meRZX.+k0TwǺPf8R= 5$9# Atꎭ!Z.U 8(6/)-bʼP/4<'LǼmvL@xLc ]ST_g3+juOlgG~CE=OFT 1yTJ[gTD٥b5Ue^w8ubK \fwbY֥;iH5(\hεTT4 G݆xBz'sp?<7XMmGe2UbիQr0Rv"m a:# ( \"ĉj*r6շ=QvW\~7BIH ֟h^8S]G\s7ͱ/0UcCbLd(B:zZXdԶS8 s[4s#sNӿ6 6 f1 ?uyiEٳ|JbO XI-I\֞&泟ɊmEdY8)c\Z|z[up ,$~ATǸ"~IӠb".(VPgLs t:'+l9Ou$zK[|kAE73K>F.[۝eM2]^_C^bBu^f^JZJ>у}'#"8[r~oZsx4//g`=J}jL9#:Oˮlv.췵#CaY(H`Zr)ck$켕D NijoEE*9K3&WdQ| 'Ajle3G=\|C:#J Ds ZDK|MLQHMY|nsw&whuMYvYmZ"ϖo@mg}..2"'gOyރ3iz*:Gt{0c ƃ+$viwIPې\8 T2H8̫wD#ugF *nJP^T (2j+Rq:(//HyzÀzm"4t;~U&ko̡fQ%&t/ٕtP&sXQ"]ǸrKݩXQKQ; clS ˧1@Bg.#C2~CwmL+XgL 촚6D[IxDsnHv^bMxU"Ss( f?oyu<1Ag}TdV|rsv|B!lb4d 13+`;]gt#rKg&dS5䞭^ք ̀zQ v(Iy<]^t0i]:r&:OVBTu'` X{>9\Z z}JL4#MAya_h1ź.x.^,9_KYYO2q7)gYPGҬYC׼'4ފnlÉjkݜ#~׆r6NJ_'SZWyw2[>XeQg U`1n!G>6j)N\lMR|sʟ-z*ORxI3H#wI -hloBWEN`\|6DP\ٌO2 PɌvݣ Mh \6[o)ou\`GCdx B j~r/2;7Px;Q-c@[^ Txш#ECV-XuUصĶTBD@ޜ^ⅿ05~DǻrJPϖ91Jr)킎 ;Rb(kPYkYto;cw>?T3x¼UT0Z%<[8ܣ7Ipy_='C0McUkHi eP#SLy.O;Q˦7Yg?]O~slu6?Y!9^9FSKeq2rY$wg;)>w1y%6;adu:;{HD1˔[8 !Bz̢rt*n8saEUG?2q=K)aV*Jqه̸DUcv/#!1%^vq,X"Xv ^桢Ԗ]I9N%F=7j: (?PT-k{;L%҂f߮cF~F]&L[߯zvQrO{X ciTJGeYps#ةe_wE{;m2Z*$;zjIF_?R3{":3d*&fy^f)XWb%?{e~ӫaJ7/%**"86k澾a!(n'U(ftqGV7¤ǘ%Gn!,i=Muk'ޔ{n6QVQťyk.&W _\*" 㛇w>e ޿%^lӧvad6t0*َN 1'2ttTWA+)1=)DÒSBq:/vg l]XC_IrEbAUL+UY d. (Qێm%8Uc:Ȁ얒b7LnHvl1hJoz^H vO;Ӄ?^WKgRA _|dbI f5=+D9u"P!וCY&?(w:$YK; 1R5mTڊ/@(4=֦*դŪC g̜55(2P#"5xcK~Ɉ5nk@tR?oaRb" 59mQZ<>wg/ζbt̞ZTnYmdrޝ>jA1Ʌj*5 th2TTGnS6LA=铓G!nkFڎm_G굆IN% Jjf:wvsy*H v3*8SOF/?ϱZ]@z 9)x"C9<<ܐYAAPy18s \LSblCZy9&#X,G.CnՒcl|9rzcl6ѿ]&ݸ:)MŦ_*4rwzTw%y'%:@8Wv4>]T`2qNN奔j>$0X=+wcTG怠|[-K_4+ZKvXv 0]5Es>/d3aϵ| Q^v 9B umN ɮۿrD/6ÃgmO#' ܇elCŃCLkȄC|pRcIqTNy*7zwݻ'w4QUh8^!&^=Y 'q\g\ <gw4&;}QjǬ 0, :Ni2{ćaho(Z+͕2U뮧?z[ 55CQBn h:/Ct͋X[BZR,6=}Pژp8@~ӗB^4{ gu>!(" VEܻ?^ W5ҥ3i }#~v~woex4_$wzd;[)x~S! hbGMH=< ekwS9[%tCnmUQnΟQ_yI'(GkwUш텥I3 #0g^7BH ZGj,gxacմ@3?v_ر{E I\Hɡ0D)FJF_xqZ%Ę1s}KKH+DXO'3 %3D!ǃvdþ@*H1N9\Y#-s*%yvI$a[B{ꋭ|UzGiAiF<%QHJ 6|/5d\1IYXiJ5eR m{"9'B;(eEl#Mk/qcKerzHo"&<(~4`aAu9CZRc΁m?yf:E,Mg.a7cI.}<4sS$wM['֐ݣCTMh $8jtJ u adCdM<`+t6鞎Zd&)PT{S* l@5*/7$w@ꌺO5淄&2 ^7$=TzU`y'6Q?J}C͠"Un~Opo4x[,w;/DJZ¶RJ|m6v[+4GYC6VT1~3QXF~D^7EW$S\%*PT%E s &.6M"NVzGvc:߼W챾[[ت %GfGElz`apAi67qPBK YNMA;u1(fuF06ewl ؜N҄#C=Jぽaӆ6j@k/j:^5ckyggDҗz8 ,-Qeptj>kpnb/`Cf}׍k]= S O>P\Ƞ2l`7bO"Ӛ\ cR02o|as\B( :i#Dv=,~yǿI o 3VC%*iI t$bIGQЎcj.:[6L~3i*z^ G_SK7))G͐b~~[ 3JAR2<,哢&BH@09|=(=(snBz2Ê-"MͼAEY~"`Ն ;Lbܬ64=}׵(Ğ1I~֟slϡrO[ ReI> -7s ѹ-$FT x=.WT[w^E5ٗ$]CFq3Fdyezf~r-ɑv 736,i$rV?pPa (:';mK׽fn{ 1;7ϬuŶd "_<~!?ҘZE䭳qD)al@al[ l*$dR"Q%P]-0:KWDp?EP`ǔ[PDoWEh1OETS8ji$Ϻ1ܩ/U/YsvDã b8~W Y"-C8t"biT͙T9C@G墛y1{H/t>sa|=h @w~ p~-~ Dcܘ> Nĩ%/Gu|ʭ|w>b\ðUz qpðZ!(-؊IE6n2O'L[+ҙyKg(?7Uנ;~LbQM[W^KՄF9DO&(,yN zk7S`H_MS M}ɐ)Xjk7juuRYLGlDt 3-`)}NwUZ!@Z8pV9iF&RnP#i̐h=D *J#BFuC!n ,J/_3ݓ׻<航^_2g7Aⷮfӯ*8|~3D,)pܼ5l* ;(rB(+K K΅bOkńΠo¡wu|!W7>@I1Mً7L9h# bg:Vܟ1WUlS$4 ^)O oceO̬yg Z8)n8ǖW;[[>x~5N2VcI/ԙT(]v*ql;o /aVEB~N*|)dikBpWCxH^gpo ِ̅r9Mұ >\(+DK^~Rx н(%Δfgp wRQF+%DVFJlVYm)`~@ w%Pibdij6#1.m{&vqՋMmKϋ9z<bV ,9Dq# /($1 GSFܶUK!YЅMp1P#`d]8.P(^Oi*ԴyrݻH?ű|.BK, 7]`'ns~oc ߸OBiOBDN&Ι0 zLVl@bq' $QS,"zF炸飀:cY9 wn$qxfjTKgI\BT;m>$iY̸H4WwyDtTl{.}--08K 4'ʢ*#ݵ+F^; +ŽvS!aMCThZZP?"^]ƌMvs~O%0v5WjuNUtl#0WY;ViĨ7ɱj]l5qP2#LKQԐTx'wL+`!(=89HZz(%SOQ,8k6qYF0S`݂@h3~I6ĭCP!Nw5}ָMq 5 xUG5}{~/SOlEc_/zm5m(t-}IcrيzxHtY=HFD(t5ݙYft*7s]IAxб[G:2Hx+6jv<'͞z:H R#dYmYG@oAÛ uG`^5U%aLu#Ҡ͎)9l|7|m|DɁ,-`$8G)F;UfcU0WcdܸagCXx9s0X䞨9"cCgv˝,Ih@: 9unz23L%<@x5aOm 4_oT FL*r7AzPGhA@xةoCHctc?vǢȏ~ JdycFGM2~0֜: zz!9ݪvvd(T) 8IhFk$"hy@B}D5W؎aoq̀Z[Ό -ŹDw}vjN|)c׹\Nԩ<`X<4C+C.WsmgyHNW(L`x͞e9O!pxAuӨ+ފznvc:7uNjn8aqJ=N 6xڌ ~~ʹ{,,=t)#JYf{{q'E.2gNHTzdHL;ʏw'{4(6"Vp->&ĊWP˃Ilݩ[djreY<:ſ^ԤUDs{B& ֜Vm]snF_F~Oճ[[jw,ɦ#C.yB N’XX/۱ b> Xa:pMf;j{#oO`ԩ E6+jjzS4PXkuk%e/Kw_D?6ou; G|lv8ur2kSTk`5\BĭZ v}mhv#Z+G&p)2t-b0]App$#?xF%:}mIx+[R8_M ڻ/q޽M{T_vEeJbQzx+և=*H⥺ p_3ѫ{Sx6OVc.b xOq ^gyy2fzcޔd`mWk*]tŮ]PM'0asI;ʼºܟl] .JU2`ȳdDߛ-;9>Cv`:|t%G6SݧB8n{Y`kWи\~P[D~LInf^jWk`ɏ+LB-fi}](-Fp r=-pQ8T( jD~(p-\T9n@F̓U7.K[ϊ(ehE>Ŗ??;b7?گB: qgCGiI0RW{ S4  _X!sr,"4'*YgW񭏠{C*ןWG;gkM$!@oK]ՍPրްE]n/Kwyas_y#dfA~DXp7."r6C^༬9Ú {"Ud..2ֹ N%[C)}ʹ~Ak$j/U_D]uZȸCr-mم]FjUxsKW,$_LfNN0oxG8 T]F \PޛzHy"DF6_`E9X1c'C6_s KB0N-lZ98>rkl?iH߅Q*wFHx %&:?v*#B7xwѰ O @6/v`ih::$-"3XV$p,ne((9Rr,I+ŖmyxJE3}N&W0;m<~:D1T%b5VosXR=sv0p1)$_ܾ5{[()Ώ ޮ]`%+wg *N~NA)ff,6%(3wZҤF_ӴG-kvJa6)=\y1\ߛ'$5@vd />l&Fz_զ:stw5Ɍ &:pѐ, !e ǦU$ 쩲I?I&$ G {FXA_(YGQ~XD*^F(RHt:rZ&R!6?!U;I=:VV~y6qpȹ&Ib6=RQ`@@iH+|\tQ.0!".*Wժ}v"}lZ:\ٵSm:GD;qz⦒ND/2R8 7;Z夬PSnP1+8cO;먻E8(:z+Dz}U(+lmZ kփRMx{DtOEwF Dݑ"j=V,{L\5{MbPzB6ه^XPg&pM'ORW>RteZʝuW& zMqSJgg9\y V,+6kN 7^ ?7lVd0uHV ZPλ ӡ3$+\泱INH4/$Sҹ(O&u1Va(r8n8?K 4*1;+Nz4j- Bq\@/Ё>bCDlQ<ҵ{(7`!ٞDrȨnwځqSʺLK֣]4m7Rs>r\<ΪG28e ĀBN&|N连/z\V<\mb.?b!-<*KYZl Gxא#XvwWl/ Gf:J| b\. es~6.v)oE Lo{ĆsYC iD Y|[m+C tʅb1:SLJBn 7$N_b?=eǃ*ЏH^6xpuв8k YsE}p#R/Ѽm.^rX}My+#rPtj-LL ;~ I`C ]Aak)̎1>`xX>fw86Dt= ;9}1 zU{`*d F5o IC *_mk#g-aX4037ŃF 7 z#2Z^c.;V-tjr? d0,ݘ+8i "7mr$>7/iD9*,ؗ(7bh-^G@t/G-:.1}ڛA=ƬLN}4ݴQx0tUcX#:Nx940Xd!9buE:u^UJɞ}u'q4T+jvFk C-{wCmH{zOqˡ1f]owS4flz-:S#h?'Io,/L0fvѰf8BgiTi^dxV:[{Εl4E<~B]sPEÆ~ny!oMJ'o_-9ju#LjOn- eKҏ&qgo o|' :w1Ao[[ 9 =oCt+|ko+L֐ȷ>UĊQ 6TgFox qW0\0 7+% (aڧ_e5~~&AC132e%,Nqq3"y+hTGBY[- w&DhKNN.4lAx9|Jp!L{fv1kv1.Pe4P2!vkwyInQ\(G7BUX.F+Ӻ]T9l1F 0)zi10w^bboz Әˉ"dZ^BQ{v.? иCGƄ)Iq̤WsZgrN| (+_T*6_zZQgNpqLTfz Zg8*vWήd$wR96:]zk6ݤ;;b).2y{V_:;BC(A@ ``Or'*h3[,\(Tp%`D[d&.۽loi 3YROu=OrXg!q8PKrP:XUOg6hidXx,0-'cK,˾X;Tl_qKrsɵShZE'.^9me;\sͦ*ZQ[ ybŽlVpyw:- Ӟ!qЍP6e7pQigRYagP!n-6_JD Yu|T2z*uS<<.s/,㚐Gs_Vr@xt($ @a/!ܔ b^ӢnnGHQ;W9_He!6muxޏhfA;i)̠. ):lw6Phto\@],5䇀s=ÑbdžDKz+E/bR4FX@{[*;_-̬LBM78Èx2M)Ԗeo(5f61'@{V1'.~_rxZ3} t 4Y QkE ö{PNX ]`c")aPYi7&XT9!njO y_6 jGxY-ŠPSb,mf(Dslg1uA:1H6{ MsŮj ^K*vSnF3Z 5΃g<>Hzz{`[[5^Ϙ @TR3RAYÖbx>.Wbܬz(v ]xW0M[gT<(/@P]Nm*+޿@!7D'&h)=g|F LW.AnS1vEPjn'kqrRHN^MWLJ EL~Kϋܬ(ە7#lB`%D"4(:[p|!'i$摑Uv(VͶ\#m1!^pkd2!|}c)%i5M鴩dјdgUekQѮ1 ."Z C=(Eg$Kwfp6qc6m|CFzF*'@lZw'TZ`03I96J50iHkLy!┲@ |jT^JE7()obs(->,%"63? 9\*)ݝx<ͷvt-$VdȲ(ඥyI aͣC}w+kiO{&v8$6ېYS~ -tV8H.dCDwc Y '',1a£6k#ӉDz&LKi>Z78Px, Ga CX -/ky4֢Kqd.&* ]lm V3W0omnΞ9=I^[ե<e9Zc7ğ_'0Fy%(,rJyHZ^Fp^ŪI?MR^Roa X vn*򺡡BTi@?~'T(k5(jqVzx$7z8ma7[% _wPhEG3o' UȞlK^:d]ƑJIf//b_P͙ '.'ۂp6'0@g)q}! )<~B&\Y9FcVF8nΆ\ 16dJYvb_i$},QL\h& ''Pk&Ȕh~OAe QĀʻ-] ^?/9.+QS08W 3+ZDu3>oq9N'aE_}>DeZr1Rjܿ.'c<[Deb,8zKA>ē0ríyhYD6{iop)5?.*fg] A?oXbEӴ|(xo#~v r}Rfmx0UxD9CFmxJQAuS=gDhR\Q8G>$ #şelnX(1g88@Jd:WX?& ,eXS&XClYΨ)oOHSW;?*I׷3T cܟ6ޫ㿊Jnh\s'c@^R2 Xe%P  96=Pm{ɺ NdkI@wf `-tpdmW$ۯz1j0S@ʫun oZ;QK:B)oU_h1-{]FBTjYk7`v)dAIqrw;O띑b0LiC?ʁ06<(Wwz*NKxc$?!yhџơ)#/fs!䊻E>mHg-7góB"wzV~E0V)1S&̸IH/ =w%̢W}Z]f\gǦe"S"v'!|AOAGYLDT'ߢ`Tk!3saJ@b3< `JV_C[U 6zlm.(wꠕRZCQ;32X,\UP3fW^^CԹCzbfSeza:MK ޘߣPdIοY&G<7-~ nfʤ(%O{-=%圝% -d{m3d$aVW3 f48 ԾdWtcBR@6E5>SWZRbOV 0mAV2I L("ܱXFkrjoLoVq{蚪3dCLeEdwx]y}ΡT(n֬q)QB1[1ܤ%CUJ_# |).*/3a;c'^yN^n$<|?i6Bl{\ekiǐbxN:MO*ZItSch%H_Ŏ9XMnBߩw,tTx#P$"m>ĴS NI^ݐbP4~Pv`IJIoةRiܥfP]HDxҶUz\w=Pa7W&f.qjBFמ_1G@dć މ{Lwp0UCe4 R;,e%N 60iyNk*w:}fzC b /DnpNA*js\&t+2&j8k=`P c T˥+qYeB!B)l;MUTjԌʵ;@o/cn4ʼn?f,wEʰRu5COu4$OQ1qlS>a4}ƣZ,#ä ǀKtț/|Fn%}$܄/#nS|j {݈F_?7AhG0i&D&;0U΄}:c84:9@.*/&6-bTߗ괏*G&נL4ƶ;ȅ :pPTszCz)̳9^z:]4n7k1'h$\ ُ],dL2$1}Xj̞>ÁTR' HelIu@NHͪ#S$\af٢TK8v5?"FK&B<wUEw3j9펙 k͓N,{ꁗC)}94ZD}Uk7\z},~VToo o?r̰ɿ# 7?+M\B0C+;Kl¦;JZzn:Nz< BT^SH"`w|l2~oq((fT昬}f2aY ̱ćZ8ϦjzzHCڣnv AqN^wIQokel*ӫBH.[1) 'I,dR6E3x.Zǀ $:R޽(2AC2$CJ7ۜ< or(EPfy3hT@jw?+rMUw/Y*e]>!bҒ]>3H3Բ9~Ըt?faX '׻,QEv5%|S"qrhqF(wҒpc$A*w./oi^ +&L[į}yt^WQ~ QO UxCοlkGy' ԾlmC!D.НޫB, U keR'Ejß!Z 243Zn63!S \")x5_2=d8a3Q FYXʾ|sEyys /k @/5pqmw?EVwOFE@+]D_#*69IBZ2T!@J.))jێ23&a\._g;{o øoHatb ([sh^.@Lָ@` c oAaUzcE8)x Pxe] H qRgRjϫjS~&T@6ғƎ^ chZܺVM1 I*Urqp#`I+&KsS3SQLyyIlm:>>]<9_TXMZ2#V71*y@htn|S:৚OħB7tO߽ݬqxn܏˭yIvLajoM/OPs<. }iżc|CAF :V+#x-3[^W-ZW^G؊rnr#`̞9Ð`hJriح^8L45 {D5x01*3[Q }4__OB:su.x'(фjvoIV~2vӗ3pͰ_K|Uɹ@6.σ4oGȷkNcWx/%a*\m*ҒİYSԜ,[Tu:3è"s¿FC\H7nJoظ@צ}.sF5=|MfxdCCz=PGw!1A՗bp|^ TGn--Ov k7H $CU%L4XX+ݠ P&x(b&4lԼ7@{:.05Ž5iʬZTvEǕς肍vm%O+vnƳjk蟽!+)uThFiuj/VaqgRCr;kfžNo>oRmMVÞ!ƭ_h&UF-0ckҴ3K 7"t[%=h`jip-(ҕ#"1ш @*9Gbu*?ơͿda?̪9\Jx"F^%{!U`%f6)'Q@7OR|TM(1- uVL Q f1l19К_%][|)'ֳ Ay`{,qtJ57)4,2>3xd}MiF gӟQf?".41}iܔR拁A,j- L_NlfcA*lo*ּ5*(۰holZT%'YZPx1pmVLzA'@~Wܱi>E3&X6L N5trBs>/-w_RǭHco VTH&sZdP1+]|5ΆG @wW 5qz-Gp>?{JZ?;jp< ʉE9 U/9lfuQ+̑](ޓY(٭`,&P.wdnҹߏkߌK%Z ˝*T0&zA6f9yjCV٣m T˒fQ.vA A fizi&c]kQȰlr}_j XR uC--v$@P{N#媄aDʑ^lyp:^CٝD%ը+2媋hd"X3-`zr:hB#ocP8yRF[q ߣS^?\OSsM"@q]үoT%~p25˳P|J uO+ 5|rRRyhp=~x0".Tw/)}}̾!M3ucFƮd=8&8Ϋ\6U_!-j\h&V;Cڪ2E;+ ha6n*vLn6| ԲQW\V ̧u˙B k=a!A^GI"egzL&qb,aN)/ I~HE:T-R԰ы .7QcZz]DT䋕?K~-eù D!`m0 7a۰2tl!&WH-6pNx{Z \c79 l3yC+jɒCriC7#D0/R W@UuSʉzK~{O^=oA*3tZU۪s#=Viv[A|X :6g);ZZĊ5v>SK("5Ε-q5E1{oh^6л譻+|cr8QW)ncՌpVЯ \sv [e Hl"YUn Ypkl_u0oVk'޻bW~O?^vBI]֋#9"gJNB%}m\C^T`YPּ)GKhfƂ-Cr(Xsm:%FSdoMV>@u0;] fxiZBυJΈO4"J &Gn=h 9y3Gcdh`lOvdd78]>ǒ{gIANvp/ 6_tը %x{*^|hPI#k\C,whFkP:з ܳJĴ yy׸rz\ 9-c Q.'FgVaw/>I1zg3ϒ^/N}Ø:gp742uj39u͖mydBL7^XWrq `|= Tf;V`]h43GYYq~nuZ1(bCD.H`60uk&QST8d)Hu 7SQSTB{MVxyЗ:%KYN7vE`I#Qv|E=x BcHA3SHhsRGRR̳XAJJ`5a;tN^Pua@ٗAu'qy4E Z3R 5|nP8A_b%gQ}LooNlB pazV4Q Reo) 4b$د)ͫ9yfŲCrB]"Fœ^ )cY&znRYIet!%{hyVEGq fqæJ]V:m9@ 릷 s[xqcAoqɗiaHaaBO\4 +hr$rge  ,%nYzln-Hz±we̽s$BnNȏ ?̨s7ꏤM֔R4wF/ 4e L- W潴 mzg/w=Aov4U<ƙ,>2Y:9a:tK?[L:Be,?6ibҘ[Ww D]5d T\U~VY#c&!J0to[LN3c1sWN' .8#HN ni&xD ^zPs`j㷠;ZIܸgHX8S U8|L7An_|ȭcT(#Gj8=2͋"Kld|Tb&L^o~\ץ{u g gU8eM :PߡJ0]boꉴBTҥjT-|ԁ\&G9voYnXKr9^ / f$? 7.Y'( s61Yd1.5Y;Yf?5J1CN\_+: w0N1\o Tw—ro=8¾!\ S_"Ms0[M\1|'9DSɅ.ȼQo,M 0*&SOcQ;yXS{3Y91'=HaM&CMBOқsXKa}C:Ѭ#iS=-zǛI,e 9|ni@ #c1 NhŀqB~,VéD"!Fc, EhO- v2PFk0K;lOyc˭;"UB1=s-OK9UFMeYƪ! 7L+.$c4' o y $=S\ $hv,w>o@лjou5ݠf|ӷ?];yuda2Z11sT˖zh᣺+8IJUk'@fe(O; ~KO#h/݋r{Gx~`Xca4#Ewo^t\UeCMeO h;a4duO$2yfjQdjv\{bB9ȊaS/TŌ׾Ey%*0oTk'E.1CFHX|黎(X=():x23M; p;D [K"Ql]-;ȱ#$;KK7/saM}:DAr]jn܀8w}ӫzh[֠Ou:3L-,B ݭ!c$‰0ШF˂'Sa+2^Z_ N1*{O['@!9鳺YKLUIrF7 0(5LOunM넯aģL@"w.,lGDh5شGtf C⯣W&m^qȪ5;:91s :08bYMqϽbV4ߟS?uᮀK"Pwf'&_ɑ`,{Tb荡s -PsJN:领%N{g?izm-!k|3.`C;\VJQ?7%:B뮡ZLyc75H]Y!1鳃 j4܊K`;WO:DJg =5a,_ ^J 0m\ퟺ%'aƆYu 5C=܎Vޏ`jtj'(@LS^7Yqgm:n!1|?+r'Wro2@ki(7ݽ~RGG;孁w> <;:%uOok8ʶYoOXsFwsr[mvVµ\&-m}5Zr'1`ih윲$ˆvQ3*K /UF{gefnfJyMnrv? HѪv+R}9.̄"+ZyRzW%S?%,T<ĻOt{5ÅF&~y; ?\H %'#e:Q?#!/&M SO(A wH&exG'q7"{ZCq‘zb4g.PE!SDT$Ti*(S5uZ@sgM!+F5Cſc;H0+@ M]ħmWQ|KUc!k[1d^Yg@FJٷ.(#8-(Y$p6oW2 V])9u6(tOc# ʱ]І oYwݞ$DԘq+z &ԩL(ff5ƀO^DhR1#]tװP497b? Mc GMy%+>ie i<^A-X/Q7OLdM`0`MȞLoB&YBlKx[NZ I2ýTϾ< 8,yc:P8L .Yѻ\ָ4j.6YbӉ!AV1tJaM斬93u'20K#X<Ւ}$D\eŗFZ[x̌(kIYyT*?zhEx᱐_6`%cK/k+|L3o8M qUq>uYlЏJ}!K.p8%l>.B_gwO YGmWhMڀ8>3o(aUmPl,"Djn9rRZ ƼT*a(nWĵ^GT(tΪBgUJpx4R0܅b g7&CIΙa: cNAjeRie\iɺ4KX_P.Ho>nJPO)&wl8@y{Q^<eIPuBŊy@x8ߜ4wM/FGq z|бFbnΨ`bR!iQY$S*x_o JU+(a+jk\N-8J6]S9$Ob5P`+0nu +Ul +OhḻwO0iggaɴ "ͣ'e| Tn:$~6Ў4pg$/C0+.MG>j˰yNOO0T@b,!plH>Oinle*h c;,MX!?(C{T8pP`RūEqK 2YDl3 j eĺF;4=jrE'-rr~˗)hT3/z:8Cc \wo8^9s&g7s&%3C-6z 71X֨[vlZl[\oǯ~cоVDYӗ~^qgd+ AA|_@䙩5qǔh5NqvgOHϤԲU' Fwcxl}WH3RD^ьsښL :ARvU?,c 1# vug M%(W/! J/r_':y&e,QȈ*<0sg$6C"+H`ܠI-.gv XߨiY2Gץ r/e(ܹiMaT+N̨d^}hlwXG6 G"aI ߗ#;OWs) nTrZgz j9AH߻"EoaK;0l`ib D}!'z'~.E4X=n߲ }@x@H1Ѫ,* Ii%^mqnS0v @U=H-yqkVVȆLLyVl$NLW,M8Llܘ~pKE{OeMk^)24UF'$}C9@\: 51}D?q2CC]3[tȢF-M`0p~ [*;m"7 ^S"5 iSDY/l90CO:v ""gd@Tewo&bԏ2Ji@31wFjo4Jd^C:-s/3kP+w/7)v+h798 0ƎLgnfr1coc̪ V,F&qN>-XN!xd4Ny]!yȈx?a\ ]sH"3{7ƦRh_hͿRȟBllkB֜- MJ;~:-LE*hH]72I\?n\s ,D=haTJJtqԩ,eP4Fgg-i8_}y<-2 25}l`ջcg _JΧ=i7aG.Qi[У" RFB\\c ZpJ}:*XO#@btcR96޵$[EN ߐ0Hw8-h ;-g[o,0&IDo#i_ԙe{ƿ*0rgFS >}!S+hRiήj62|_og/ mZ;9 81.&$m '$)) 1YJCް9nc34HǞ)o? "&H'[uk2FD8+R<62WT[?_iv@6ܭمg2lDF$YO&ZU@n%v>֪SrB$7R)>ylqITjC\hׅ;[2"kfđ=nCw~6U{e%ee4l)d8(s`~d%c8|h驔*_vǙlSMϸEK6 V:يj,~%{S_0avf(Yq]b/ʦ'vUaV` . :NzKFu~.-@"M.87q.r$막rkˮ3 ȟ$89Xĩ/ xSMXckK۲дԿ e=^DeE֢Y/TAӨ=K~qi0Y hLJnrؔ575 8$(HzA`,Q; O|chzSOSD=`Z:Jc!{dLxU"l;DȓùӰLrST ghGuqUh ‡^1_W0ϜwCc!.33DWOŕlj,0Y\?x*WvTq+1ڄ̺E@$͝RN&1eKD} .`rws`O_k {nCw cԔ#̊gi͇^> 90CՉhɊnښ!eY8GO 7J!y}NDpJ+o ^0B]M"S|+ dZNDNN# 9|ºkQ!}bdzۮ4.?nA_/i2#^/&g@Hf}]oMLڱQN iOcr4fWÅA `G}8q BD⡨yMNnXw`{L+{lĽkCMIoXɵL'*$\Y#JE~K4c[9oڷ?d`Y0m$JQf~:a/XN+~I}gqd nx VgAm RX̟u(Dۇ=[ pT2=MNхF`+q8S;UCPT.RhC 3eFL8!{uxHRUy 2|PbC'88efZ[J&\)T,"2ajӦOGeq>~OxS.b7CdWB@l ϙ}g[5ȿ<,fN+vkeo09翇k7٩@& B7R|AFXQ|m>JMnVPb˚%(ſM9QH_έd̓\0&3E,]xMʜe7dJ*Rz!d QPWpKb{W2M);NkW<"Mf,L3ct~ u*_x Bbl;x\5N+p쀾Qh:t?B- oq0HYAɳ9- 9~+̑6ST} 0\7)FO#+"zfC-I?ǫxk`X";J-4avBaleU&o2l$#jͻ ݧ%q>xI.WFÇ~ q_?#[G[*<ɜmn8s[M|ĿgXfikF As5CcT \x@"`{7$Q.$ZT.zTSSO->.8j~ʉv)"Jv/ȱ-$i;VD85סA>f^Dǩ}ثj)| MWOMM\^'!zfIdhŀFhtє]ʋ=%Pj/_{Ў"? ƱI6*~Ғus.&\; [?Y_?Ԥu瑎 ncZ8tÆu k:UgW3i]PlJBbR{}"ZpPƬTu03if2eݭV)DZ.0(SЋ) ! f-̖ky~(t$Мَ= D+cgMwT>Aǝ`W 4ccRut,9܊ς#I[ 4*T\AtЛx?ٗKS89wIdQK Cr.n +'fY~~R!+u;WRԒ_u#5'GA'偃lg}ygbSӼt s" sc.AzAL e1%!f3iWQ!1ì %^DrOÄX考ΪE41FCՔi7O-Jb-Ј(Y%`dP {^Z΀̻W*ZEYNlOpL b7vu{LE^;NyLe&bǕrNи/9 .c6[k[*UIrhi{c¿(`[n\ *EtJ$3L}1d&7ЌyI?[Njk\Q l/ ~X=+ծ{kL٨$ȧS<,stslH9+5 gm8l~ =M˭JY"Iy TgL!F`t,ʵWY$U!%'g=|Z0A%z4?ȶ~$Pn눤3+LD3]tNĸmerigu=>_[ ҙms*Pzs&-㢇-ӊˎE0M5fbU\~gM16J^\_;|*=%A\ n ,O=KB;A5qʤ@t (1A)9?O{Kq '-"PБ]Ir6egb hOngS=[..u:zSpyӁ~}d}' *犚DFݞ AU@|.1 ֍IFֆsG:6"s`Ψ^}g*5u1r[P+9|ͦ<ZyOdf暖q/򽂍k߳ Ĕ-| >x̼KC ĖhU|iA활049R#TzY?91jV*Uku8F9Ms,ld-ZЋ9 W%yG^FvKF&DR/ne I!4xNje e|9UNO% & bpAWrnEdA{w|t&MI)=]{ISTۉaa>/ 8~@/Rxy股 V(+\AqXCנ ̍މx|`]Ŧr YV삕Tթ1!~xҰLe0f#뢎'tH_+*lODXS?cdA qcOrZizUS\hb8-и-hZW.Vyw3y ^(NW߄G$\ 9ln: zkD"tlNᠯIqssBlBۿCD=Y1+< T򂧕!0 f.?Z\*p&K0R* sbS^*LN4+1t+BhJ-?:wU[*]רa /. gr>H+ƴJjZGwp }('alF BV _[V{!Q]~3#w~ Dq6P@ }Yr9;Z ]Ũ4L * (OPb#LƵM2 \ͳQ r IY[ȫ鏎qaz+?F/)H i=1sѾcd^P'mm`Ƌ\'elo]gXep2j!Ya^VR oBm-WPVϰC,~@dū,% x{Ŕ w2V,`[~Sj}BLu'bVC#0gFdcr4}rL@ 65AQTx>j ˜hVCD75,^CW[)1n;BiWxb%\qPb8u1J&5w7dmS CTb3q*QaA 3 '!t8N2?]|d24 ʛ3%CKv\>pUCkKŎMGɍ]:$}[&eyK."1ƧZI~ZnIF1%Z{>z80+jaݡ:voݱ 3"Aq^>#}iA Mٽ=3l\v@$2 纳Gbg~|[T5~$ݶ7vmQ!M'& eWd[22I薃CnyŅN`N+vLk[F8bBi(pt4玐_e1?m-|݈Ni/[[iSCW, ۱x W=ؾe&hb /Y8y4$G2Ecp,-Ʈz{}Xb4aXf3&hށS~]% 4"B:S z5NtRF/”P\[e e>(Qz\8in=?)Rtt3G ųQvWyT̾UYMERrGL|(($C}?Z X'đOdxjꉁW"a❸f%q4޾DUJP+#{S<\ n0 m(F)F~o iJ`r_Q$RAGn=v+t g<9w$aG+)\@ݬ6NtyV,Wxpr nLj b'+<fFR.^ *7}e#j;C?<(Ж}. n_sXt@iY՞4C wX[fgK?5I/זs}Df`4諈NwQyƐph`!>W^8dSoh]VEՊ\kƧ,>犻">茒\[I?m8ou37EL Z%ts5 $eΑ&G)X8knE&zg4LA}u݋PrOO6Wqc>Iz /VY2s?NYgsV cbޘ3llV`dѫyϢde8؊ʝnȨ,VfGYFJ[0G^50: 1l;ڪB_˥⼳N[<T@K_v~^}1 G~815oPsXateU?Gv bu:@]!C b[L{c欜pPcASeL Ov QSWseU ;6"smΫL9r3b<2tYbMBtUʣy]b9H^"!zB%Z/|JSќN"}eg8d9ˍHla[8A•5ˮYhaV@wz rmpu]w̍'l4F;HSDPm#PTwTs2_rP}+STҢ0ÊXW)A"?H@}Z)xˊa[e⦸3BScM^/ pAbsgI9L蕟(0*fTLS kQW^ AWy5`h;q Ze5+θ2>9JL[; yrG"QU4_&EXDgOT_%_6*zV%h?9!}1;{U.;2P/q$:Rt*"lUf`5t`]A*6ٔњ8M2lCE Y=?ѿx0Bj([t_K#@16- YƧٮ&I, dfT<Vǜ2/%F$3G']!hUfCn PBM#XtmH7́+VvvjH4TYfű)G1paZwI"͆_z,H^OA1+(OM%= iK^lcLvse1~&;iZp'J2r˷G}l òZQ1T?oMSb,+ߔ~3؃ED,fCa#m{|:v&| 둉V#CH)T%/x=i/aED~ϏCHZKuQs}{5{Ѐ6JfNIl!1+}FH)f]M+# P@H/}hp7kcMPY {!VpAuapKߊ .0[p;qe{1FFGV8`%j.izx@Xst|k"0=7 C꿕c`b=B,żVV@ST/X,W^)ɄUx hnÙp)֌od0ږ0I8>7 'U:o¡`zftkqH!4]t*#_&Z7 ]+וœ)~y ضx"h/nAFRf2DuFm.WWTC&^)d^b O%#@[:Y./#fE@K s,xi+ XH+@ʋ~{zVOheHEo)*%<%1bC]:5@Ɩ6qW:yN>wL$؋gX?_i!p{e05}. +yӞdUbV17.Gɽã2d9%5;wsFͬIpH;tB,l4!Hyd >uHPeepUMc=DJz#8`or"9?K7)b1kcM*nu`ߨsϭ|/) 1}џN;6]s-d;Q2 wsw~4Ξ ŽV RgХM3xita _K|!B {EÈM)H9 BE(mSF! o8ƼP۞E,>zTVA՗̕J(pqn<ӸۜH>A$ybmf)GIٕgKsd1^oD OTQ]Kun˸y|/QgfWnm:gaR{bo~,Fsy>2GUۧFð\HON׭g/\LY)ɋR:6\^|;+)Ha,[ute` 7aMy(Z!':nIޫqX(5Y9մM;v1@ OӁ$`A,(ne)tJN{GdIWgЛDC@vǹ1Ļ/d);P>oDj[mGP:y5UyU D{)u:@ m=n >iu+ۣF^t"*ݨ &Ԃ 3R5R)^$k4PfF7lc*t=-9̊G{5e侓\TsF"{x^Nk,4¡]j6ѵqj=֦JM{ o¸==㺩"ԇ=b)w2;t/J- oڧC Yh2pn$`֊?}V*?S]WҘ nHF _"r(d-=HQ-Dlspbw)l0~.)KgB#.33N[!A@]N[W%"ԓu V,cAn69~t H U*[]jA4![,vmkU.͜@+{w ~1a6;k:Ve^-إP}+ 9rH]x|ېPv›j` NRäB2ʅN*â>=3и>G:291.hUj~@kzk%J,}Ԓs0c#XNL:0#N&TDWC0NΔ O.1F7NUU:>A'տNvRJeɀڍҾ v3vK_U'+n5UflDYX+K&sb[<R[378d)7ddp%E"o}v>Xπ\fmvpp R\mp]npRZE-@L6O|rxxMs-ϡFkLvFԕ&6;| 'Q/`MZ:]mלGٰ咾WleIE+#{7h*l_(jF\( zGĠ3|Vōw(?yc't0w*T.E82`|=s=RIV>H ,`jVCo^^Cchk[ lYMw/qU%Ԏ7 3i9G#z(KM y|ATۡgŗɊO^D.C2 AQ?"pd?UKnos'!^cwpγx2"LO I\ByE|jD2G_Gt|z%t{s;=T@%ѣ\YAGs.SS>C,[>A쮬VP["Y?}mJdaifXcԝu$q^ qneLTqI&Sx_<;8s}xfz 4`4@BT=-(qCl.4tf[x)7fB6&Y0lHu ,\Cw`?Y0JgM TK/@wӵw%'sg[7`׃.ja)n5ÏS}DŦ4yu@XѦDSE?eoc;>:mߝRSKt0+T|ZaR>*?W`* 9X.֊? Hc  E=#YvI+fn.5И^(9Y)w!I-aL+sn,Rè?{.n,l+|5|ɪ>K'r>H>{VH݌w6_;\{ܜ0<[gi\O)/_pv&3e%e|i7 cXcTi+_zhS : 8EطA+(e!ht69ߏJh8*c0Ɋ`o>Y@7YֻV f[E FpZ:  ɱrIf=Yn L?Sp\e"e%=bbE?c瓘[| _zhO^XYf |~ʤ\O()rWWjʤIt4t5̞Wӵ|t$]\ ΏRI}:RN]Wi ΂85%v;)uhb>lyOލAFw"w$9;17Shx^q>$iq:T}Ɯ{b1!7،AnӷPѕ!NLSIG/K]݂VI>PXàKcÝ5f!㚜j˓U]mzTMu_5) Y1%bqݛ\Kx>T9т(-|! vO1NGCqksP/ќ{yfb4dtB^[|7(0!#ݤ}zKc J;s!1I]羧Q̸'Ukp%]A4\ãVKr##hpg)&TY_q&Rm}Z n$W&9ЉYt?cU˲Y"STzdx 1}V@W\Hs2-?Ѓ'|;} س#^?ZHų;sŻ)j>$\N 41M2Pd {RY5ss\I)abmPCvMJGJ{i&'xaHBVTwu\'L9{,ƫj /PG.zraVee[b:{A̘E8܃{>0Rl$<\dቃw'eDJЍs4UҤ[eVt=!uֺZT (M|7UϹ4jm"Aty-KݫfE(n6&y ᑙxr-ऴ섘E!w,CUcoFW / &{qIp)<3 Uˊ;2)rHcE0c7vNB)DR\p{[j93=Y׳\ <* (zTQˣG< T L4g`Z7'HMk&Z`V+`r^lx3$l-Ւw|aTg:GI2cb#d(`*c ;hb\"#j7uAvRcP+^kUڌ-¿NMjϕM`3fZGo}${!QqbtffXO3 ̻Jx.즋>Ј*mgt | ].monRD,SB)jj)4X?Ͽon7. LT|Xs!ax:uP I;혶7c!!HzXi-b#^-?(ӡf1#ϲ#:),3\_̦Oc*A/KY DՑYXBuID+~TIQڝNG*2~7k'x+wdtg|ānЯxFR/8݅|db2byl5SѾ/R۬VՄ>E^#V0 BwŪA|fN!h2sOTBf e[z ˩;cSQ%u+:kWJ!F _Z !Ik-gPT(Q\+wt %Wdr۟4+]4_*r+6ɦ 5N{ 0 Wbp6Da',km2Hvh<5is5Gg>΅T"3eOZB<~N&2O%MrO9ҫe>A6}tb #f{deEϸ3=lFg>d*b=KjOۣՉmiOG|!`#k}8\7>|gį++QOa+XU# j1_ 10@% vNqUauRru xeU˞*#{;Hïrb6 cșNхG,W6A)vk۵vq26ܸUA46o٨;{B,Ǥ{x[BLRN~葴f\znnO .D~-SJI֛)0:έ4S$/3PJ&O&{fxsW$]8+ͭcX1XPnfj2JfѠ,i6uHaygZ `|lme :Jnc#̔g},hQ#E_0*zO&/4?_\Ȍ oy.Iyg}G]/DkdgR20sr`e؍|(kmϽxqPPxf`ZУh܅81dOKT_ҁ$=kDʇKtzZ'dnw;p6/t1rv/ql;'_G]71QI㝗YI!#$G\ikjW|oh%h @?]nJ7bXpozw69qyAdS<Iuηs'l<*|0chjaxx x:S $m'/jFI hwSwP{=y9lGL7bl x[Puŗ'5t݇"])~a)%o9zٱ! 3b ?6Qؒq3 8^ӭ=5h"g}>շEN#U Zs$V$:Q(t6xhQ*3-K?9bi1m\#\@[_=P呍w_lM IBPvS (_8) RT51DďHx)ٸ#J,LgB$ xS2v`H.Yfgt>>0Q.6 dW6mӰ ˟.!Yq=G_)$A<c*U}\ʞ&<*@ET戻Tg\L~.YEá"E OiLãIze cȊY^ӁVoTqIhNWkO,fhHTЫʼy3%N )!!{kpša_A]MwvuN$"07|׳F4y´ulk`U<7@GkO1CV}' a"W<ψoM1TwuQ$C9OT7zbr,,0l3KP_$wwI&<2OAuKwk%Y}&0!'9rRUXLߤ4|y<'1KFuJFEI6k/K+ nnId{p.EBoIX62Ў r]m?Kb.`HOp2+-<^i qZۄdN~V;e ̄,Cؑ?/#gε"ag"Բhj5T Q'w$x~7B)2$Y.:@JX2, 8bW8Th~yzO-K1+djrD.q^H "h<%DZg^n9Tp֓8S8gF^|'ɷQG G:C-FZ@y3  l&pr(6~?n71sCvb,)51Bّ(6+; |3/PEP&=#*i!GkNqp Qj;o!z\lz=txfy AD81f0L&9zJKuB@%z 2*{M!% dEjo{;nqT@DOKtT'!1QV#L9[NnRżk1[Y[MSg7U;fblVMRH-]@[ T$Vv1:Ώ +z=={I4I~\|Xk28::xC(t2"n!0x ZUdXdl]^Sn[<$=}=9ndے~#euWXKIqlDmbkWk펒! $;& ̈́ .:a.`H - pZ8Y;:*"G=W b"-hѦm^;{"ʂࢌ{rp̺LMG4 A"Y`hj$u&/}ך$8A`C{[t90Τۤs U%.ݏq5}LI:dζ?p#S%dOuJ[ЉW ?h. !y IN2&1a!ʫ<:X[:QsDXrb )Padf1U+Kp t]65 ƅy0t"L6nsD.Y*4}#»vZkԥ/j'Lk0ކšBp cMkG5 Yωq/Uɸ$t5;">-3 %et'/,2> s { M1o7z"Q :lyUШ]eWy\`W4W+GRqCzeY0{2` Dn I =c pԘZYWNWyS#]'U5~Jpܴ]W1 D/wg'T^FVn*@?RoYuS6/wYZuz6{zNKՖ#P{tI_XFh0RCQôl;,]O2Ō' } WG0O8pFsmr>sgLD*be|욛  /+Hq|Tt'5G:BApAuyȎیRRŔ |%CdkUGʘ `7h.rܽ%Zd>%b.b5/sth"UEG\ \Ar%TѤLf_'wgS="VDL1歜,DeDhJnE*WVr;;rBޅvy:-R>29*y ok5{WV3y=l.8%9+3QMUR7Gby2#5y0||":u؆,t.g; bٝ6VZeo6|n2 Ѭ#nEg5:t71Ffbs1Lwce|hȫ.ً &BQWxSvʥ58ֶk=O .kejhlJGÿFatYaBHrU;bzm%#pA!+~~\Ÿ9I u轤+~K;^߱z#Z?KJ_%x0oy Ǐbx=Y|VS1@ɫ@GDL<թe{q}l:DgYg./Կc_ ClYsY%OwPEyq־qk&!mdD+3~hpLm\EY0Yj(A5q{w.jcޙ |e {in߽]yڤiCD{N,sO11& 1#0[طwdN ZV1W5s9sEUSf ~4U֝4֢;:1u9 z"[3a|XCR߼c ~z9A[1:)~)m@O^cۈYS.oڭ2dӰxW0 c~;G?6&U1]$;6`أl |t̅qAx"s&4ED`bI[P:]J$1@f %rwHF747c%xb&&eRG8ٟQ3Տf`P^ lP*Tҋʑ=XGPZ>Ihا_Aq(jsΚm Ovs]z%gގ D`M$VixgA&מwID8HU1=&5$뿐[#]REnˎ'c(¤s=VeS]cP>e1>6VKԒ3rX:F$sMA(0e1b!VOڴ;vEIҩ^:$).],2[36A2髏oP30#dcn]O#p{,d;9ݴcl'$ 'kE5QrRm_S ]21)ʅX\>Q%o2wF⸢\B,آ:D[$.>ޝI1ˣ^cqq~@ĭʏȉA2t{*5b=D*m$jHcVwm&܍V \3Q.u,:{ /*jyYR9ϊ ۩x(F<¶S3SJ2V^Zxjo[9+^.\ +PYP!qIgMv܋v#> dEȋ#Qc&Os(b ΧvQy]v'^l]BuE@VBQo<=^װ1Q[>+D.<1f; W yaFw NjL( MK'Lk{)Y[X[>f*,]k l-Yے*aDͦ8hY3/ TRPVyO' %9>͔18\۝W?p_['Fs;j 7x{^Ox _na|j} sfbgב}230pmfHzԌISC N `ܷn{."jUAGOj C|%:><-a?LFnLju1i-Hil@Ow970LK AvLzfjh&  7%Iо#sDDt͸Sk^i_,-S6ir? ^y,Ej =Fρ/@9Z?/&JpA/QQEC+= y ;coҭnVý$"tzcƲzE\塴Ī EA o9q jfj pׁ982 QhigwUB,η1ί,$jX8o,eՀ>Km_ ǗET[ojۤ)pر)l0^[-[_.Sʣ\f:E$M? {(Y!l([@X鄥Ar?EA$z F|s.JE#HyFO3U"/4$Tg&%˃‰|Aʎ:J-*N}>˕kt5.ʀNa/Mʩ-ӛBRRo,yqmd w <*҃)naƮ#+V"[Գ J{!XD[[oԪok|b@y/L tA.A+"72%m3}*8t `]MlH&Zo~Z2C9qmX׾󖄵6$Ye5Ѡ `X8#W T8ПzCBܧujtF] xb *82Wlqtu:PXP~\n' V=ڛ5: گnl'ɔ+p@q¸Xp`o魎T*p~z셜:$+,Ja`N _C=[I{Q3:!^dC::{P1yz4dh_&Z ?W"+ǘw QJm:/0v7?:><9N@"gU(9.;;s-?hG j\s{6EWwvW p2f][Tv"XZAf5F=-hDcLZ6,=Sl A Z1хrֵy`aPr秞˞ ʝW:A(ae(~x`H1Xe.~h^ *3$̸p-A&Lđ ',7eO=VO' kܴ 24+©+sFo]B>U6[a~M \6#~ҕs.Ux$ɝj` \h\Է-u+Yeo IRm_}#8Y-߫=c 7QU#r en`%,ޒ.SX{!qhÆz4e._eh4|AJja~6&i;&f?4Tki-'5qt)޻^g]:m j y+ Qh&.6;CGb3D| ytUHhZoJ2 "E[ϴPմ1p&99V7]~a]uDW{S &1 xZOk5A([)d>YU}e v߲[iYZST!AjLbޙ<]XL{#h9z8E |/dy#bp!JD+JQK3-qSU/ť&`KXUUN(#>VOG_hz \ kM!#!Ydl|j1NMKB2x5uUTF;B9@Cf:B.1p"*`ۼ0ǩADo [&0P&Lbʼn7$MWڷbLjSN}na R(ƍv"@Š~z%2HWZ9"({kIR:uEH3S }+RhC晄0)-7Zh|E`sgA=NJBs:9K EGQH,5Q=U^ 8׶}u/aYqgj}8;~ AV&a*zd(K *7ѫKax6J8ewIIf&w UfFˉ-| Xf|Vu.7ą)pICܧcJԅ< &t\ Jc<1>?IǚIv8 QRg|u_!}LEԠW}ñ֗tq!pwBM>"j㺽ʏ X'}Sk3ޕ7}gf=2UʾFF=ƥAv`6ug}dyֈX蠄e7<',éNs)r)&oԘ2FI'0E-ݴicJ,AlYs2k>\ͼDBsݜ4E-+`vtQtC7<ߙMqi8[[`E^ɌA TvT6@ OhsX m{U;C϶sE$!Hw:Fm$#p-'4[!zQATFgnGsG/ւ6|C|nd(3MߐNT9Iɿ2>5ӥ*䁆 .29.$4Ux9 ܽ{DS;C6k6:ƛYJ\)ݍH|_+_ܕ@%?(n&*&қ+JA%Ibsc <ظ9 Oτ֯(l՜P+vVNq-*ډ)zk-]\H;- wsnb32wBؤ -nl]/Fda\uQLv<Ԍ!cxO4Y`5l>𪇧`ک(Y{ɽ\ LZ|D7೪f>NnyG!nG}\%):_X!Pn2UN'}6Ze(`Bx*1[5܉\`0Mbδg U)G(=1Y󛎯o=HVsD镕nkm_QA`u$]|:ft]e'x:u%}n MԠV^,Q6 !RN !GGd$B1OSntb?IXċp wC?WDϼJˑGK6G'} E@Y 0u!N%vDżm[m ?')q4X0*-Ĵ_bݽ V1#$W=3ɪEw̓k㌙nX-sﯓnP٣B`Dg0R|E=dV֪C"^ aߤ+am ^G HT; 6"r֟Zr1saCp&yCP ),Q(0FɼKF "νJ`L_n£WT!pbS-q𼉽{E}ѧj2Qj~)2byT9cExnDqew+pTn\ XaA38y{)nJo߼Ү~7ox7V㾆{:qCkeƓ \̳ԥD'G~mgm@&oELotL}C~tH:aXׯŘ)ĺ:?XOAY#/5%R}߄Gi&{7 b pzjj" f#NY3<61%Q;b<7_\}KWb㙠:BY DcX\͈-:?W LI v6ތa^-ʿ:|N%D YI$^2LFh4]w|%6ԩg ɥlo/}=I$]?`t*+kjyUm,X׾һј7?;:=L>W~`~(}nzŷIRٕ(<13<%ԫb'كi3n0v7yPN4p3Ym;RCgkM)xd1 \NHtA`pƎ [ZOQ}LÞpx.:Dn/m4YWD,=ӣP.NkMoN_0rn2W+I465:gpBI`6rmDicIHӛ0~˝E5FI5-& "VufYKP=VUmV\p@;V`cI}7!.χlϯwUn}wnUȹPh6f$Tk&9Icy94BP̹bЈwApN+*ՍOApE+tiZ&>-:\wOcU:R:eJ0ڳIu{'N)_ފ A(w MAR.NVy3y>1'TVP@.<;[Wt"oYO1J329oeW*@`+hJm %<\^B? vpW08y8A E4n|USW(n۫ȏ>w%%F[z[8\ZX1S" jhMksNHi>"#s(ʸH4{1˸tz"_Xy ;x;)|D+{_ lɂEvjV3WW͓qk , U7(u{bR0]ht#rqGY*D0u~L瀀lFu;Wdxĸ{$^$1AbuaM4k*K\`"璎s^| /j`9劣LO'V{"y6d'w+ w1.ּJ>v1bk3 }v9=Mh.T`igXDkwm \:i-z`GcJHZAD&be4`c󉚣5YC.7Ed,"Z[hu*Ox {{O;Koe.LsAi}yB'~ Ya>ο_ٍI1&gNh8kˊSQ@XH_ b>) \) i&4"d4٦/D?-l /_Ve +h433ʘ9#K*#3Yy6C{ KXmOU#H3®l  ,; '&< Y?Hfx yUIݍ6X9ts3|G9sq'֝{35L3W¢8ӱ"tWF C]IԮIĎgJ`t1a1*}Cg 2ۘ~<]0qE-snc{7L-ڣx:LSF$Qo#3CrV*.s:%y5q~[w lW^YL $>DUrw D|لm!4D^yg9gW2:?1E>tBPr}p߸`KBJ3HF|[CAt`hDkعjJ\d(JIuO쳺DR[ݳފ>P5Ī߾B-X}QxMd>T6\WSF7{!=u T[ iau2k6^0z ( o"Vq ?~lz-F tޙ<[i?⚊c\sJ\Z[3̃:-VI'+gE^&uSoF$3t-HB$@{%2*r nY<q6ǖ߳h+9Ag*}[ZYu3$+30IC4׹["~<6ᔋk'dmG*Ӗ! (uGү8X:́tL`;0b;~24;lk|NNP2IH<] *=a[(S'MK1M61]'6~/Ոn$>6 4!x GH~U '8C*{9?9_Pc~]L# OÔ"F븚TX: 5IN4@pCL E 7Б>xڢTUM ГC,Te~5[ ,.a呱(_Ȧub4y"u]Mݨц@!@y05]0#[wr8,ؼgХF~&GQ+A:IX~rJGz6@P,YKdě3:,$s3(Jf?@;fA o80NU<|QIɼ8ͅJF܂'@z@!,<7GD}0ߕWq FFaF0O] ^_*]4_QyZbΝ;Yg1<L]\0UX!;*R.gPPY]j%9sr%OR,ŀ@5 6#Yn.z/b >jϊǑfFnf":Ӥ)-!&d=2T͟qOU*\@Wdӊ?|%V1hzvm\P6k7a@64]9I钓%vʆk֠]VHrB3s%ZXMH9ע5F''-mDXHPalڒc?LO5gүA83W A x8zu;liwbq|RNwES k9vvMjM:`^zSC޲`e[`%RdKlL[ZW󇽈F?v0Z=8s:pNp,BYOK.0u ~3 |Jv`, ]~a2b6Ou9'RByEo:FNFZta+谳φkU`5>97 ?u}srMC[ b.uL2s y?b(>Z%ì00C3sdŤn#i[h)=^H!m6S>Lgop%_H|lS`ZQLg탭X)| ;jz } 귶F A O5V==xsP?vgJ4er :!! qN/jk( ᜚ƙzN!u1qb\^g`i' /2|iBN$ s`é[!Jz"9Ţ#WJ"(Pu>'U`5/0uXIPG8)gL7ƑF=V^oꔞ{O-Vt,+;3Ӹ:v Ű!h۞FAX\5"7s~;dBϚWN\dzƇ&we1y2%0`b%s˓NWPV@ {tӠ; (7U6j eէʖ6`-|!C CGJģO̐F˹A p0Z\~N#_|C-sB' NLiɍ8烮L'qcJ^p0T!R^9~a#o`'?r\0탃EDXO[蜏]]Mmi(z`"]㎊:dh뮇. 9Ţ2 rJGTKz%޲i:7C`zaKǎNtRH8¡ 0kANXwȸcfyttsA3^|',p"wqL!9m |1Jsz9fRm߂֐kúhxFp>}QVβRkcHoT,,P;J!ת|N<"dACmؖ)"dɲld2?o= p)wCqlrm]: #띹6-"?< pm.'(_< ڨ_6[w FȮŻE; )ҭW0T:7F_9 p_f%6%3Hw~Z(*=[dY1}k$Euzփ> ݺuә$' պzf8<yʮդj0#4ЫDڭzr:L.cATcy(TF&L"ݹ$%z3Z4X"2?_E' ߖNkrv4NQ6$ @Ey0r׻) "Ž|rwW͊w.z4o:M\۷: :60DΞ[ABv)9& @[D><}$ƮqRU)]SѪD5h`VFg Ю0=GFV(FR~VeSͱbX߆?Q=qlB.7ZKT@N)KtPU:| Vi8UH})e"HOoO)rnE^~V?R}ՖQvR.} )_g*Tڲ=-8fr/)l{aݶ0n9=TMvhJsJ\mIE]8%ȽSnˠn& 3Lji8:7<,${?5U%Zd|ci& K"ţћjJo 3NY[7&Yؾ"&y/DH VoTx!=WI:GQ1c3Ғ?N.drIaQݔ; b<<)7RF01cM]o0._e?/ݙ7j1Id咇7i^F`?NEJ^&CWwdy6E$ws BJRsr;[_v ̜EvhZ_A~+p7ؾݫ xդt4 4'&tdVċ4!HItu^MrOT?dƉk4~aͩakh|vE,%a_ ß CNݳv"/::?Rg]MwCu Dp?ENA3:ڑ_V[5}"?NWړeLٷ(7%ұӦ*>5@Kb9Qj`IEGu/+L%BQƼWswfҾnB:Ꙣf}LOiG@ñd<[4|wTevK*!jji HkXzǧˆa-˾?C>lBD,L~1?!y\CSc&QfruZ"AmjoB({iV )澭 .X@XWUgal^)ټJ\h/XcO&?yhJ蓓T3t BKp?>HQEa쩐>榝ύL~ݜ&%{ƥsS2ӞN1rx^cj 0gE2U%H8ACƒayX5#;;uj+m3J=>IH2*m}.\-r:望 uX bz7pWAbI^6tɋ޺O%;QHlmjSU]kc嶜-c"O2xsd&tպK&N <{`I@5{*)tǷ8Ҋ $TroJ$b-8v/ė:qgþ&]WK8x4N_Z")Bϑ^I{b5jKU9Hle4̻W5Ҁ[~0MpaYvpסC&o @6M5u(Q瓼kX!IhZTNx {).j~W: i|$AsQ.!^!a1V#5kS L2U1gty*yv\;xAàtFWXq6BCRJ"4Y1:츃_\)e^ϋAc+0:Q j9S[PB.1%U759M*_$iԗt0{AI6[fNMI@PF4 "ջ^ނUF~BwazO-Aǿ֝2oƘ!44Y#Imʪ>y@Ӏм.m޲C1= F]b^?-fLxcr(n\N+>o7PW?`jpO26"IϜbx6NjSVnI'Yw oYU Ԣ5zf!{ N S0ļz?2w;@=˽˗}"yͅ`r33/hT@F&Sb'z ߪSMM7~X'f/G=hOhI:p Cu#}ԟfƙ%m,ao1cR3:G\~jE7y&. \MVU7 /P`O݇ALeQXҝ[GTH|^pme|F#`IQ~6w"{ZgUnODfN) Jr}2*Z3'(ueL@1E:GQI$.셱rJ(|R_xzKQ>~zT$k߰"d"o o" ɫ4[~, c2QVY~!zȆr1sq\8, ԤaIr< SQ^ #0|6٨]-GL@ND6B͚'DocIcߕ vZgH[7)t8n;,|SAT 7-MյUN˦zQ M&Qcw62ҡ) B-yfsfhK}dzſ(qoGIAcXSg5-"1bCQ^|< 6ea>P䆵x7/ =t/(Urq'\yA쫘Ƿpآ r =})1/uAI{"OEx(RwZxkEջv.>βA#XrYYz! ~6># I-hw], Q[K:X1 D=Aey^У^@ws >ju$Y*_Soe..u\&btdimXɿgsBԦmcW icԾЬFkslpزkº}!0I!tRvjEh;EWOyH\si Bɹ%{ƃ\gbi i`J%pף4,lcB [99~ھQ1Nw##2 ki,Y:@(h% (JQlAh;\R;􅖱EULTfW:zSi!/9Yw Ƌwh ?hy>9ņyn@ލiUඪLBavX͙Y⌽8jy@c ;5~2 E,_nd#_<ف%Ï]Tw8&o1 Jk*}l]_=W|X pldsHEmK;v ©oB} [‡U=ܿC|P֪jF* MCx(?Z,eZMk44Iqyum\~i@ݎ,zJ؈w&zzBd#}GeN^og$KeS)LǺ;U2ح+ ˁە$OWN?S2Ni$$d&_r߰q=gwŸq 1i+EҾ*a/AR;&}햲Vvm, !DQSנFGi8[뙕+҉{.)kֲER"#JV4ua2}<" R ZkoSC,=uCDRc^ )G>0KV}I'n~D[7~ziTae?BߎÐކ6ݠ&Tt*L˙U^1 i3kٻX.RVDlsԤp&33sVvhS6L{QOY*#fZ:BtI=koߟ_~Pb@Bs{H냷r1T^?ɳ- ,zr繕޾s1Q8}h:E]Y^HC.@sv+@ 4UhkMok½(l i+r9EG0^mjj(b@:L#El 7[aGwa/(iɛAbl;G6ܮ7Mv,[/[Aue5Ij}и.>5,=|2_FMDt*DπK)FohT ׹a89I#O0LK'Cy" 3u]q {!fDJL1'~b0R:+>;7`<l\}l`jY|3&`z5 dYW] ^،%Ŏ4<w˔P4"sNS!k~1'iO 4h kg9);FI}A~KgdG,L^Ui]WT;$#CZG+tkو~3=;w,>0پy=`~zMO SH_ ^;*@_Gd]µf%H!+w`:-6! kY*&$'oH\h`rPhFAE{Y4Wn> U C|Y*W' mhpU䵆$AAdunX5d,tP}3zn&<3XJXx3'`JUq څI[z Ȅ !̈.&,>L{N75٫%?ybha$qnF]jW!&:nL"R$ YrϔG4x;ӖPi,"t : {9*`ȃ9i[{)|66@f coV0M]03t qF BBt8}rLӉ.3 K߯K\v.n'^$gf dp^YPI$3i~ϋMs$u@Dg k;,TM3~1e6=DK9"E5FZ{9\GYٓ2 ȼ;I!tRp0z+S{Rȵzu.+n rPV;; lM>\7ێgkڠvN ),̺˻Yfr'Fg(. c "[3AzM s2io{I;+ZuDDH ݏbxPDig1F#q=qdD8iaB'_odvz]ML bZ UX&;<8)(µ3rx2@3,RM0YYQ_e6]kBWFݩ0ʰ謤 *3AU+ب }ȩ/۴|z2 l)XC̃-8@ᲑZ7^$l2=FY_ApAȹ1 `Xl.$vҗ&w< 8,euzn{ ˠ̟+ML uV2"xp,]݋ˉ0zAF9Ҟvߪ@.:~_hV@7HO9nf( Lm68^Rtc0ǩ١eʎ~m@8wܪ9e2l_%KbM *#/RI_r:Бi)]F0q|,OFߛ=_k2>*:g]pS.+R/z f\#{N < P+> W ;tĖ"lf_*-=6rF}k{J4{(Jc(;X/si[F'aw"PR pZ,'܏U) kW3=kymY[ep4̬̫Ei/OX] YVsiPt]P6H?X>ڶǧ; cܴwNLEAKW 1yjBÜf53y VNR.OaM T1ᇛ[ʼnbz+aDj#Z nz%(A)WP(BcF(BaWT9{?υ~%C8ߓiᙯb#'$v_?h#F1a`~dЁ&22!kXJ  c%=$!zer| 0as;=PY (NOXpkfXxC̖la[]x @QOyn-&t~p:\Ia,C>KϞԖxyˋ?bӞdX,$GiEG.g( ~lm^uP^ 2m@' KV=v %4{_P>Mfcv(pyf/M?e,[eyhJr.|9(JC ֥|aA=%>RCOܭ獳O\5O:Sy tQZ)^txX`1WW:BD ބs)%Ƨ {tٓ;$>/h˜HͷJ-hv6(S_ Gp$L '? JHX%`pHϠ1o5t\uW![ěRχ@K1aaK\\݈.0xP鴲7Sb+1}<ɿz wd;~xUXԮWz t|/Jc~jwSL&vyw!lx˪@ޒESt *(AF.2ed9 y'Lm=ġ29 _d3Huٚ7蛽䈌L? NpyMc(a@ "CF\PDaV~ wgھ|r|3ǒ9oBɛ݉iGqf^˚Lic ^jȵ-Aڗ+ttCmWozFdc`M0x9;HzQc>/}#@t ns! P+~)pk`)\(Wܗxixޤc$GԃV?3 փ_DmzxNNJkw9ҷY7bq݅z߭ݝ*dA>Ry+*->M [̻b6O}Ͱc u]a>#zqҺr> 2a<[0hB9 e[-X|`; ;;ݾ(:yoPBWXb?*ڒ`VhaӖ#]}p!z. ؟{`|"SA6Yx(q"F3myվhLI{ }xU<Y#ܽ6U=2-y]Njb49M?"eU - j߼?Ƈ j 18eL{ޱXulX yQ\8V|eUi0z 2 N^`k8OqZehq~4埬dl yΚ($Z*_{i[TTBPxQIіv^|J^C]t09 Ƚ;uPg4 elM%+,4W=,ꪊL`0}̩&gE\:f.WbÊCM^P]bR"sIbesMflmw+mƴP[,iRi; Z/yBP,dkѻP9a\Ғu~ٽ8B8A-aB:C@CBlѭعŸE5L,b Zo_ΑC6]\Հ<9qv=6Ž̓ճke-)RËD$JpjrHm/,ElL7uA]s jhp 6ܱWȉX.CܻV=qs|c\/$ͽȂy\|ȣѷ!(H ltNmy6{t8V!%Ma 뀱hV 6yIz0pULŋ_ v `H7wL˃Mt Z6Yʂ_]bv3JnKq( Rb-o0rOĉ _]y (R7"*ĭvɂz<ퟠ:seoŷ,W]?Q|2=zB[d;|9L}tHE4=3\"|a5\?6M$gdT.6j[={[ɚMG馱l^hxͽ(@޼ZySL,:U ˊyhp .il*~H)/o39NF4>ܢ ލG<ɸJLu>p)Lݛ*&Z7.": +{ioNO7L-7;VW2AVdt#6~\bUoCs6`֏iū'wK/*Sd NX\ // qؕBY b ӳ]> (Ls>O>)% k7 N0_7򵫡Viԍ\{Xuq1'ۑU"aJ^c|Fj:X`bHN]jj.# 8m.ts#kVI8nXh'4$ l[e Zv\+wI] 9 '/|U KqFO,/T6_TT3P+[ "jp]Vq.isY7"`{Ryi#fd5C%1\SbQq{+)Us4p]5 }LU0GC+XovTVF|(~{v__Au5)msʗ EJr4I5%dEf= )tG\X6L RK-8fyUPyVɍŊϏ2J@TE9rj8FR҇SLNMX)zF 7"K#kB}ݿnx0sqT]JeR$ 9qb8JAWa5gmCzTLI `6mďgӦ*(u!. 3; >vzI g s1d#Hilã&.>5%f&zݦ/* ܚb# iP?**poc H@P2XW V˛h8& ]ιB/WÐ=]} 0:`N{V$XC Yӱ|(oK (U"ݽg&qը1#dt+M F #]ߝ4UT3˺Dx__ŸP,nj!zQ,kXGAl]}&@q _ i(PsРa(t'-iO_Zl: T]Y`m++臋ŢS\ /0s49V8\*E"*뿭)+X`DP*;+eafS!)c}VC߬H-U=˜tjD +>1P6 [y)+ꫴ}-#81/D=~t 0uy?Wi@AߋO]7#~sL}=dM7،PG)}w K8T5J-h ,-R~H{u&`" o|༩>hI]\m'EQY~DZ={P/[oqd=IyC~;1}Vx]Pе5ȱ _Qosܐ=TyBَͶ(ynwbLoICO=/eơѾceH5Q3,>\yLbL2?pُy&xXbޔg{𷰣ml=Uz5; F\`mEhg]?|FO~Fa p|fг⒗WJ;˔(R¸ØjcO(^Č >(+yn-GmeQb 0*@k-@bS&HꞬ'BD|r{~n> o_.Վ:Y Cn'?DkStDco|s^qW(2ef}Vv\FkE#qߠj+IIOg#%í9 3_ ^c5CR-;mj &o%B `Lswq;mVhI*g?v孫,FՂ >H:z=3I n,cOiՒ:P_nIe?,M-^84 KiS`ߋhS;!U 2WRK!F H@=?eͶtRMNU5.aS2q<"'C(Y 6nb4?NtFCXm?Jrxb,y݅x 7 x'Mܦ&wxPrN)KR`lW ;6l+g̬1Crk’&zvL  ]^s Z5ML IYlkOw ^EZPbA7|γ$"-K`3J.$I:'D ϿC<ɑ<e]cJrHy]*8,MRVG8V9ڸmdȰpǂ.ފQ.g#\ˎ]z\ٲhS|"m՛!΍uֶ+J"S وĞLg*U*Aa+ DS<ͺ1u4e9PbHbsywZ0iD1m)elMS5 V$z0jyĖvt"VVY+RG<PU<&#?ztSi r6'oV L pS:?q3$ebjUS'M"i,Y}ρ>,s}XH<9 O%?~Cn\Z2@qiڧ[?$MbQqAԹDJ^wuޭ>iYsğwJ!¡ Vl͏= .Ȅj,le/49a0S +]Mxڿ/fwARk0nćz%i(2 \R$3XDYz6@:k#,s90ir^r, ϣOau$q7f"ٰk3v.Fp2I4 ɳSkEg xQտlJ=Ub7'a>LvV'RHʗ@6I{Y4G=ʁyެ&.e?a~Q4o"lrs56F[ 's -4DyLy)/LJ}mc?gA1X7`bOuB!C/OuF׼S2 ȳ8EKNK&P>-UIʔ$I'r)k4 $ÿKt&Kl\d-_+ drb:i/<7VжWee'P]=I[V֯F~>DEfC.F  Zq:f}?V㔅M+9а |0!t=Kth?#~<%<_A$xk .CS#ZW߄"Ew7$m]3-%hAr>V]@# ۺntu+ ZoS31ǸX?0!@Uo}S$S9*DCM!$:ZXlw˛AqZw2G&}`Z#[dIu:nW~_ ќ"h W//[\AWǃ[|vb>Ank+ҪhI&Fe Yk&pZ0ݑ9(a[keP{o *mLⅫTD>TJRRLNE%.#H.59^1+ E|`9I,[.! Aؘq.ʈ]̳. v9ވ2'aOMrpbyܖ$R+bVRI0!hoO.A YSKa1}ƁbT*ID[,hɁ^H9~ &$XR!y /)+d؛X{=(92D/oX:k 9"!~ˡWxk~pL\+b *cDON#DvtJ v&uEZa<#[{mc]ǙuE-&ǻ]$k`o(Orwt͡7qQ3TO"@_{<-9~)i^_ʥDVH "A{N(?Yۨ1UA܈HSi&x`B'm7&>j$l.BUyevl3`$ZZBdشDzV#:|t6'\moapt\QiI5DL̦Km /:Q}2j?;ËѰUQD/}}:qgb\"|/h)D)_=nїK%ǗL$&la*oZ* 0RQ9!"rr'I[m?\Dɝ-+/R7uED;|qudvJT(?Vhp$_ry3<ʆ;B]mܗ/HS-`Jm Q N3F kIT>+.|*>@dYCċƤ=ʧEǠM J9[K21sJ) nzW̒ہ^Ԇ{ۜ=Gx}ǁzq8ZZ7prqTAOD3:  yBs).˂݃3Up`ZYH k#kUjsD e8 )F?W:4 g4|Tu! [}i"aa2$?h쓩&AN]Ykڶ.5-$&.LڿdVnF_i6r)]_[jXȄ\ҦmʒqJ8\}DO%W~$k-23uShAt{eyɻi&"X!θμ ySE(_\$!bl\9L@6z OE}Jp:(0) !fɞtG;ǿo:W"/?Dl)!(Ն2z-mjIgU(J1մmRomt|H0nt3y 7jBUjT.r*3.aN9s5Ȏjoj=hp]յ}/a/x 4\}06Kx+Y}#͵+M;S׮ny\n7C}=CB_GD͎Syy?]faMeﰿ<tk}atRMO~ EovF݃GCŽ$ד笠y?R/pߓBS&18Cch&@.`5ՐRwRŒ8SR 4S|@yH^r8ӿT0toCf(quC.NS7Gp`5ًT4s/ |@3o_W)u6=7\"m=kNe0&%u`Z\IQ-*A4B ~#2fo],.B>}WYz\k@"X5vJz/tu}ҎOhݝ}KiՎ ݛ<>0 lVʀ[ʿ{;<"C00":fXʉu\{un3ݹ^ڝ.f7VAh1ys1515?[L4"NGdx$}4%klI vr1utk=/|ɰ{gqBϱ̿c؊Lj@2mG XثyQlxY[\`HOtgqeΔִR~Ut2iuѐPGA;q-5Ha yEʅ.,49_*.)֒p&gsKkέu"փȹYPܿM;t O7P C ,v#HN :ux)uy^-yfm`p`Z`m6W1^K`V=zM n)~,<P(t"9֊`+ gZ $sE7^~쯳qzvIl/]Q_=2banT7Ǚu4Tr+]}Q|^ĊHjqFNV=rXX!0<Hby"zk)S|8_tMGk|:=ғ(_ˆ6z?6j?xτKa tͩ3ojY]Ȓgmaƣ/:`r=2L_Gܖ x+SZʓ+ɧtyb󴻼i9$dcF$plh\s),t^LڦUڶd=,69IR qwB}v'/>陣憄^5tgztfY2*XyP ooY2rx-5AD \& (ah1rֻ)&hJ#s͐Jy,whw';%p LR͸48G .|/>R=i,fН1ZoeT*?dU8v{hDΚB0Ek#cNz;{l] yOa5 0q=*!Uev3I-2Dc(*/]>jUwBxd 0䵒ޙ\S6ET{<оlH^3*$ ~8EFf1{p$龻垙ϭ.gG@+HVeYC4^m'^aG_kjjIb)%#D[E#M T&9ݬr0RBa?~ qaXATݝ&7{G-)etRp㩘qf0JM/u)|׮b*IV}&D$3ЁsN "df.xB(2 بYGnW3&0k<\`v0۠0x^w&Gs~m]zMfN ]( ]"M~?p~u7sb4ۖB gsF~v$WJB#>zfj}zԌ'*ƷC=%/X,T/f-5i!ڰ^U!Klt "-6&X8tW\ ˛0lyׄB Җl/&lN).^?;,g&Ma@]i{!ӋJvBr;;^ an= >8wRBe"Fn4 4U|d~t]Pq(PHzT<2t~G[I/X" w'̻kO%Oԩ0}J,ޟM%G3xda嶽>ldrÅuէײ'(xػR]nj!WٞWT햡 @^ar~VܫRB6mIK۾x*,=8BT }ϟ`]{v JB"{Ήr)P>>z\IʛÀdtz*#.>sNx&0bhz'ܑ~)O(b0~V2ơZ:ͺ oZ#uy}̣ʘYKj4~EZʿZ #=Gtyi` C_/eTzxD$@;Lm/12rV8]r; ,QVXHoK;*Kؼ/ e>&|k8Q3Yfs|D:AM)7Lyۿ}q1njcsvi ɀPr_?oDB;z̺t5R3#c[_~bDݹ.pDWqOp(i+'ՎZU 3k0.O& 4؄e Fvyuv&S[GJb4~r z:TwdRt&4r7~. >ߙt Gm"&1`PSJò XYK J6AxjĘy -гSbq[wC[XKb 4/l(U?'`M2- O̮WFc i blԶG+mJWkg=pısэwCh~gOg =L:7\V%g!b{|,@s4Tz|VU8m:dXkm(֙9[-slIBUac3L!@L|Ձ& lS(ˇ OMi!oG_][Qt#h>Z ͳ8gS"L.WOi~bdbjX݂qȯw$B Yȼ6bbټAp>:3 BRN_FEm7f_߯Tn1 ^$䫒i~ȟ~[]Lͅfe_V{bB#lg!gl 3 i)eP&M!lk0 u.1~m 亢}Ini4lPק爵;yݰ$rҝVI}x^~m=C_X2Hjz{p*ƵCC.d@9*剖1/0`FszβH @~HsI:{̊_m{t"QKtp'-!2d*5:s[;xkVQ[t|xFR{/]Gݥ޶wqк_ΫBWHl p|h␈Lˠ_uϧHdC^}WMI=.W(˘T/} B"Vcٌ&d~[rTȡ"kƐ}))yb'Ft˜x/{㲓NpSm#ۇ[$YuIQnI{IYQ"Zcˍ[ݞke Q^q)Nj4tnQd;8b5YʹB/p#IqƪZBT[߳e}Kj;ԗZ (Ke잏k#6Uvv|%8:Y crpa$ 5`$n00dB)Δw@[S0᧻ Đ=\JDtBh#NI"j1$\z/r"E c"C&9}7`zTs -Pk¬f_` Q{Zid2$7\' ?6cxsDFT0Qؖ/ɾ ߬&sٯ*oUFW)=q/D^<0SqX+)t;FXbG~vVz^TU4\zG,f q2F6X~(+41}m+ƹ,VM`xE 9 =//>6% p-gw&Nפ]-҄ߜLZ5qz~D8kˋdF,*|k\k͕[babL~Yap*Cf(F4uVM҃CQ鮥@KƃepG{Y!2^7{H$VY IH<揔-aQ.Hӧa= RilP,mEԐK5s*D޼&&|RJ-/RabjI&9_ۑGx+.JOZ/xr4ة[-N\}[VwPV (y.}2*IV\O+UdF0mqHr2rbB$&:zB\C\A霕xH;sA«߾ R 4 b|^QjJ7&Hb`QvcSԮ9^]ٶP?GW-ܳH+ 4`8 0ef.YxN6l.Pd#~(P})FbZ;By7!/)2y]Vm*eDq>Z:EjWb?lm D9GRb`Ydr 2 \Hm*tL͑ĆË?*ATTkiR)μ9_9#KF&Wic1gfxY OrD;Mz<s:|;"PwFԺ=Gsꟙy`r.K|wH̪lZpw|cn(2FܠчAOCvzA CCӬ7uDx Y [p`մ}c` ao3XP$c=ki5zSh2G nOh&8_H)LG娎gh~/RRS3Ab0^Ib%mۧ!o2Xz'9ZG砈;хDu ]4"oW+krEu`)I'yJ>ʼswWtdde?v]2Շ>5i{O~t[3?e~H1ɂ7D_2[@f0JMYȧ}Df&~ْ}^@`x'3^:!g@)YXvCg[ͤ{^]JmNret퉘e0'OpUʯāe粡Eu:g3ɛ0 OYS5dH#d%̹Vtk'@ ƈuu0TCc(VODh[w~#+N֟sO::}H9]B1xڃ)Yfvb$L]. ^ȐZ-v%֤ 6x$ORsqmkX&~R9͇CWCu#lJ4tAY˜hSXъ\4;},o$ϊ +\^x69Գ?ِ?[I)o6ȬIj.k0Nt= ѽ<9'NǷX1y{Z|tg^=0x)HwJ #Dnd`FAҳk'n4-9YN֘ +T c nK )SNM+J"4A^ծ?R.-&AEzdÍ:Y{=zݷr(;t|sqؚ!ރ3*KU\aX. 0rV&kO ѥ !(zd]W]Rq6t{Sc A'mhHS݂uLSB9uU\3ҙ>qA>t) o&>-&|wOgZGf.:'ΐ{b*/˜z!`邲iWiW,#uUz_wl oF^_asܖSFO̦!C->m%6`icn g632ǁ> HhN[I<Ҹ*4N8y@ ^ |c Eʚc^"lˍ}* I9OKv\=[U{ qze:>BOYn]Z `QB[m< .4%Ey )˯^YQ^$ 1n[ KG3`f'hVawKyoOabP}*IP-ҸbX|УQp @~V+O-^> j_ֈZ p c̚41+'W oI/ݙi k7>VR g`Ts+sz>"bc"uDiw+#B‹5_(4-$ *) \جŋz݉0lSB co5:`KͧVaGԯWZUMU9^frCuSuJn0m?gFRˢ(kF`+F<0MM3*?~1{2mEU1t.&)xU ڿ!i[{D%R BI7R }fѰKB2Β^,(Da-@S0b]- +GF%T^TRF em:MwpD4TsXR|Bΐ$<>RXWi;͕0_O0V$hlPNT4׉ȃP˺[ydAxD 8!UPrՏ"Ҽq!^z4N5^΂X-)R;:%c%s?E9y!{-D`XS0YZso,N7h2ѵ@\Xң̌z<7)E9|U<\s36{'!UfϴS /B[ҍs)3(~H뿹52O4$ib UBSEyo)]`vH"lMuܚ>PDEՖ]I0({=uC*vԠu,1B||` [v񹒕'l*CoGQN݀| ^Hx<&ؓcw|OjUkanv=ei'i W2W";!2%3e/]t<%=t[:(hP*r)?0oCXVoxԆ;I 4 2+~A HlL-W礰LC1W8A|re3~\vg#8iHJ:BB_[z!Mqk ?)@UpPlDIV$Lji]R(Y*#ZzSs5Jy]Ґe/7/EoBuq"y!o!Es¬X"]D^9Y;x4&b1u+b-lS/2dULg3rq?e1i9+%i |DuҖVv,Y3^$3lpZo%$>dBw>lۮODsط=:Ʉ}!J͏Aqdء=Wq#@y,d|f/{(:T2[#^S wśv};KuljRMꙮ>aaAq&bqTʻc)GBzv,"k5J: 8_\pVEڭC>(o7m{ iʑYi7%ZFShdždG=n2p<~?]xIvmT5E<__2u~P^ꞹt^$x%ܐ'ed~ !<v*6+КVَܿ|?qaN3~͚N]JwtGň@AR䘷%4;9$gw]6kl 6vZ^;}1sa݉Nz'QdJ"up魜o\>8s }FKJtEU/3(AN[Z#l!a凼2!5-fDڜЯǾtZf˷&}43y1lI3bN;f-u({gLGƥ\ʼ5HO)2d1ttЛpd "m/:w\Sh϶KG@O[V|.lۄ!l'VwoĮ++&s3 wɏOեO9bŏ(nn\ $]b*U?I:Á (6<Éy`^%[70{h,(~b(A aE `@%yeb^c%r$&׽(فi>͠91^&G4d I:q#XM0y]6_0w n`ư|CaI"!u mh3׃2i Iʆ/Tl q6uƞhá2ޙۮA(W_1\Ag4(?z!z*!X;E!:o2=)S`<8t_ bcq$Bf_9!(NSOL-bO\\l MmkP(IzJ#x"6S׊ '$9g}"_ʒC('IJcBGΙP$Js0u5#$ucg; ;ڠ$z5(Vx.x1#ZMhNp)Ȅv !P_*^ܕm\(EY'!Y(jP-NPP߅A yDZkSPmn4"-/Ԁ \lN- <<ʉBE#HJ"D ~^TXĨj \W15J94=Cœr7O3JBlHϳ 5v]+璕V|~nD닺覸K4i RAnȖ*!&lU+j[$P3܉];.Ƚ{ڜ/Kuo(L{7fxV3Ң;ċhR #YL;)WB`6FR`4hT0|ME&k ?ªMO"[o⫶;")GGGdmB2fw~~Ҵ\'Mb`!JL v%C8CuCEMv#'*ш~}AƀkB-{A'O0W<ȣȷ"8kF1=TD$NwC̲x_Q־dұB_xvr=!5n x?m d& O/]cSP-)JR΂}8/y?..O{z-z/RN'/o_zԲyU6:!nlޯ{*p`O9]ץN$ןzW5}}z}x>¼y/c\^>3F m30CF7 Ύ?$g+pH$xVD5AV,: rB2%Ѩpl|zqgKz9`i}Yv8/Jm=5pۆ .Wxv,KJRI:$T2&{4fAQBTHߒxǚϚtSJIVAEUc~~>F[ &Ϗf+Qɉ(saUH~C;K=){?jG#A ,hE#9MPLS~l1I-.m{nqbod;E&ɽ1@Kc%W08ɗ"W:_E~! iт0_UqFjmx@'.t4QF!Xџ#J3l%M6`JNXu~fW Ǿ qØ"g8xV= XqzQ:P„tPS8; h/jN¶&INSZóPF^n"wٷ?4c9{l^tӂUd̨ -ŦnKܜktn¶HINRAv-mFͦq ?k)Bbxhȡb9r:ռ i'߇cB*D<MP5Q ##~|_";7o`uIw 2}kjX0sE.ta}]c1g ^sSGLev!~ Mޛ9$!5 UY_?ac9'bS6[ yk:rV&X ԄlUV}xjo.hɣ]P̹my՞c"ǗuFX\8ՙ 20=@(Z[7K_4 (Vt %e9L#J-\M~3M|Z}@T fCJ jJKm*0@)=nocz~_OqpRR! k|Z}ѵJyЁ[oˊò@C͢OG.GXSA q d'#d D,V^9T:*w?爗G߹?jy4mUP 7ǒx;UYcE Lxfěu4pKMk1YdY)mI\9fۜ(co`Ӂgf &جI֤;D.zw{+BEV q:ҎdU) C0kmK$~jwly*hT:eyYPdn~-~:YJN+ٳ6[7KpQ`4X rtUUQm<wgkЀkzڷqRzLTD d__ViٽA;]\{ OWqʙUYE8 bEu_0Qio"l k%%N6ɡ ƧS˹v0A I6/BxS%^s$5^7$eXݗ_ei|oXZD1Tr׫䳶S% !"Sjs#-]Sg~b. wʭ&ѦO㲟Ct #6b1ϸb2p+zZc(s^fX]re +5l QYVR3Pܸ#F~_"ke<EvC2&hyÇ} о`)a]ȓd"ǜSD&!w@SY[q˽c׋ڌ.EGu&yK6= )TO[6}]F&6X xA㷂?¾~$ttd cj\?. l5szɯܭdx40JK)翹[ ap=fha]:QQP0C~ #yHÇhvHz"]#m}0>;wfXCYEO*&;א&)XK9td%[߁~hr[zGIc0 F EբDwmDm܍p [7_͕y&4&H@a/n0(*  GX&2c8B QN]/leXԋmLli.%nL`K*ݡ>e؍\PP$\_:…PR ɹy ;XcT+"1mb59uJк 3XÓGF4bnei30_A-/KcG@s B:s zG m[ċ}Pgx,DX?9OCq`:~vI[0 :I+8c)lozzJ,tGMƱ2PѱQ[a)Q|!Ͷ Q)N 86k:sK٩dMPr^P>!j_kT5`DҸ,y&CVȺmC*x ti] яe骥uXO p;өq~ζ*PTF͕Lho)2ӄI:58NR峱)$̤h;G ?,|!aB=zǜ﵃@0=R`j!;1qy*ȧ's:'E.c_ 0ǯFpU> 9neՆP80!𸊊{3+*4 r ‘6"BXN紆cIE/gKP]"K*uW =6mEwLn}mSn٨Ŀ?vQp5.;h_S`|ֺT:_i僞?\ՂQL(AgÍOk6TOb) 6sOX2z%y6# ZvE?IA]h~ :'0]{&pNI#ے$[9R\i32U[XVjAi1:@6Û*Nk"rzo1^iR2?),S0ޙBZZmXj8+Ƴ8eI WWquL` #;QLEZ+5* >=]!zrnu,x8tK(DD b`yNdUU`fĴ$'GZ`.z:EF2| ?>g] lCQl"^cYר`LN g}W+s/rW#|ש%9Ɵ0D.U8b|iGT\bg(݁"IT{X -W /K(It Զ@P!!**l0ٮѼF02v1Ww۵<5(EBv(͋5|Ne, H@!ˉɟ5Nh䤌Cm!M|Qvq0S s A;#~+qYYd.tAk6rY!r!r4$_񩀄:Y's/ѿ!jLz]dc-EncfmpfGo:϶QLv{Go=.Mɜѫ:6i D7tT|kz(썤_ gXB3JHeGǸlZܓCAÚGP5r;RU0ѯVe Ma—˱  XU7,H!Gxbz4?0Zrt=(DV0h p2RʲykѶzY / 25|pig8HQ;(L_aiɽ*Ͼѵ,]%0Z=|ZʭkU+X]ox*"&;_g{ )}[[^*r]ٰYn\$謸9d|XDY쨅2Q 5^zHr9 qly|̀A'h4Uq >l=v~t4z"rIci`jFjIwl@*hb!Be¿#/J] и.0rޠh઒};_7-vw㛚~?Xxİ2=ò,/U6?v8w X>gx7.1%-DV285(.vq?V8vQAj>޸ٔVK<ANY)22/-4XS#$> Fd;~)rL.NFSm5"n$Fkh=0/Vߴ<Řc'A=õ}co~0P?["]*ʾDb:_+vp'~&~b&aT)|fQc~S"!CPaϫtԯ3h3]Xjqy^(S9.s?`oP E f:d`u?b&.{ [5Sz-vڌeUG%75TpOPDA7?  !nKẀܜ>͢^*tI2ib,pp#'v]RaS(h9~lF_iBWI' G3h%oJhs^H:YVÔ!~]Ve!H4]d驖y֝#I4l$˳%p<3 YXOHJdf?p0lDI v(##Ğg͉]$y +F> ͽS\¶xsv {.WUl/(ŭ罊&{07 >/gBR`JLc{ aj{,`蝗:HFj6P3o ķǿ{3W/m5۩˯]W1y ,+$cu ׼udZI[k:[K`f+g73V Dng<8Y h{aCZBVl*}i$a{: R4WOyjC)ETjZ/[^þ1 !˯Q}W՛t͹1ⷭΆTr>C+e[ù_?X5&`l\07l g"3NSg#s:{O(%[z20frM:i)nuJݝ^HUsmشRn\a]g|qk;KtٔdiUxPQデk/0 qժӓw4C ptwMHӞ}zCDP":\4,k<5)$Ln/@[-Uߑȁ]+XAn?)n9,I^oZK/%QG %:8G[.j=m[9"b ~vX4d$t6hߟC 0ZRlO1pM<{۰ֽ v5d$ =Bk74<ؐosK`r)-0,蕺riۼ xCkɞ^nN֫'3 oID51pEݞU3[~ h'ebWYT+QlY%dz{I͕-b&u {csvw cO'=08)+QN5Ktw/Ohe&mŖ'弓U+BĬ`$ lR'Ѯe$]E9EYNϋER;dԫu&߻Gڳzd?']tV( J6w;9;`2NҰܠ+kJ<Ґ#⃺n{AFa2agBC0lu]:^ٹLU*94z##.MyaAue,/ڼ,Ә}\ˎ-eqRuk|FWjm=F, 8oTk9Pظ= /  rEVZrEE\"-c=M$G7մ]K{r&*e^hO$d) A"l5F)G0t>E.˸s FE P&7G7Z sVPbcQHlgC;k:>-_#F|9>;Ң̉SՒs+ ̘`2x x~ eo\>`pF M=FylDY؃:%%V7U8_vE&޵xN$[YS ՅHŮE8~|G*ԋcIkR#)]6vx4Dc'4SžMU1$:glД3 d6a Kq'~RP2#n:x㻦Dn&xR"[H~q'֦XƑk+Izm rG&p!}V}~F^:3t\1ݛKo"+HWBׇ*c2V˄ڮWcU9y9D^7by'*t^.Xa1 [Fq5*b?Q#v0&p}.·k5a][2f(~2Uc Nyh|^&\'2 eo;9p&`Et҅C2ơ*]5k+C]a$uS']xR Ǵ5Vj92V.90x}q.dȟFGMz9 Vt@,8 slhw͠\<7cg${ Լ*Ӎ>Jќ4cU{jYe ߹Ԟ]$QO,Dd+WKq8ĔJYnf q`"^+3Ԉau ǭ?~X#qJSD/!tÝ  +"6d(ϔ;0DF;~QXy~VI'KV!g.u$+#eݼ'@$**U Ci*%'1m#?zX9OaANϗl Ui'' 5)<&3LO= /8 !0늃0pZv 6'ۍQ>xaZ tTg!›/S|/>1<D7y@t hpnu1h4HbX5H/k}R־pPikt^wS%23m^q\cv@ͦ3tC{窆Mv(y-X9f&_b;%*!XuFd'FŜm&|u9B qHfC`wǝeEˬt;hg@3wj]ZYTN<Cj![wZKXG_$B-ŀ-;;ކX%8BgqzJ1qQߪtꜰXH%4!Hrg;$ˎ \F!I`cUءh^;hFY,]}Iʼn3߻{ze˳QD7fO/<#?q&ЙkCu.(UTj^u߮ncH< wG~E8lO@ pM5ZG{O7dܓ*2.h6ALz }k3}]tUoE᩸y#5i}-Qa&Ttr3JAf|(\׾0b.{ ǓzIpM jҡ1j3Kh4CO&4=Cય75 lK a"N4H&r.u#+ee1gVԱ6lT* fB_T{S"raEd\!5tMY$nH4Mmv/F+Aש!oV2[khp`ʦ92?2^tb0}l\A@8xkHG:`T diM^D뛘wd1s7̑,a_4216vn=ںϼUk fbpJ_WE̞T1}uSڀԠFM!=Yzz/Amu3֩ӥ$XuAӹ]tj G\\b4bzF24zQ J}mV3O"zLBZ<7NuDU^S[9]p]!cA O\tSOT]_c 턆Z<H 0 ~SfU֑wtCmSzaJ蔌xҵ׻ma%)Y!dk?2꠭ ! !Wl No+ZIèracaై1#0=Uߑ! Dt1[*ġiB R  nuI/*I`$LoP؆+ (2M5t飺[ы*vkNP![K¯Wu2՘@c'2Զ}PMC33ǡlΉ-G%ϹD8fƦ*% ѽբVkM5ӄ5w`y#f-LbD!'P`SEr hu6N4=5hR*lGg+:@{ ̶1K\hRR>O5>(1=CǛ&1,JQ BofF2! 8?4֞C,-z2w1:QM܌P)DpI'ϣQF.}Qmu|bw\I?D5 ({ejD/[ @ھ8¹$7;z4] !$J@g%h~ޭrnc$/d]z}ttZV7AplQ)_WS,@9NLfʚ_FX#*Em9_s.-'gGtcmL!>U c;\qX( DzEYOKIqeGHp}3S4^S坎S?=-k9lȻҚ#2O_hwc O͙>'6:^.o=_Q&ck,y>NÀx5h_qR 1t_4WCrxq@윮^15ZucBxt˽ݘ6BVBҠgR~t+$t7ggX^1m$VqBZ9T&ojQ7/x*{,Gѕ$e`=o3 ,?Yl}¦M<]/r%*xa@Jb4n7aZ +œ S,"($@h؛T͓6r(%p -ܢ)cMP#U1U!a&!]ޱS)ZWꓒV>֝ԔE}Tܘ':Fv>MLtTC :28t&m+O49\au5@]H[*@dsN.hj՘ţ: b!q&rz]v(Azqk El{zE6 i̴|ׇ"̿N ӥP,ZvPǯ*Dfj_F ^G ur3YG b7DEIբ;k* U.C!R= cKz$Ebȧ ]*tt5bV})xߧpp7ٷMKS_l[IYğ*!!FtB9 )`cyDwL; t&ν ]!$ =uLZ)xpYhނ%;/&hJpg{)5NpVt?urQRw̧I!0FWBeI<+}*#\j rRR^6u*\V@-$DἶA$MeVcoemI e"2)>싞 !e!sn⠁ wy&TlwRkUu|3sOOI"82QEWo26DM, %{(Pz> - '/5G:3+gZFLd.֢Ew`[M",?yD%D4^OV4¾\0!ohssS3JR-iApلk^q 'CCmf|{NŅeٿǪ "۞~Dudp e]og5S3#2'e.W0Rw9 - -u{z~=vq3A{E`7fJu9-<-Ӄ1[F;I{7{ڲ#=j?,H'hqsa E\{ XO DJ0[< =xpK$W \3L0shlUuu3@< v=ޞEIq 㟯\:=vux5'CCo/K83=9TX-ώ*Ltx݀fjU?MC;EAq(Y*S-nEswASkd?l+6,LUiMmwT5@e0n& b<+5 ]aqoD#}إ3M8F&(lr X/D&Jiᗨ# [jSwһᣙ\,PnBb_Դ?:(;6V`7k"QU?~FhtFn"6b/_٘j6ۜ!}Ƨ%#g.}௸dfm#ci#׻,bBUPdU!]5C2UuR:YO(*+.8*l.iG9$d>/M?I!tF&Rz+ )*yhWAf}ySRŶWKi2kӴ0vA*$Ýspuq0'k%UݵFXʱ,y[ilO GT!1Jte|4)=@\*o$^)8AǕ6kˇW9/ͱk,y^1FDEMVv4Sk=ԍE=p'^>J|pJ㊪C&ZXv6.gbk;@;[j7st# #XP]oJm<JJ9O{/Xi #jCLjșm~H3t͍ MOԊ. tSRr,L3G˧?¢ ĕGi㩊}=8}{ .﹡?g)K,?V¸#_++P{ê%$@޵*PWfvaw~?Qc@@p,7%S~V@39Ic6D.āF۱kqy>6R3AyXJ%VHP"R^۬ިY=ٿ!owBE!M R#"V@ݫ/aULwIW_鷩O1t(Dk."k1Q]gT@ Zk1K{u~d\22 <b(5.pmY z]:ZfPa&m}EuL3N) xZ31 uy$e3]gɽ;;{'fu> JSsROU WE(hswdKuQM 0>>z&hPXsrC !nCuR%^U@):2NZ6E]Etl?PIBnQ naJh ('s88Loh rWXJ{\['$=ZC[ b_5!lWቸ롿)J Qķ=,Fo#E)/Wd/H{A8ŤOU)~cyPF9tC@7&+!N_t;iNsAdV+5ٯrdļ]B;1bF?7V!e}Z Ҽ,\nF t, 1fm{0/ 1o^$?$pPfc(b=ؚs榬HELns5F;djߚ B)N4\駒JYnOƂQ_rق\ЄCX4㸧E!y:ۑ|HI_Jo(h4m6n>%}vB eu>O #*w‘K rM[xŨG:bF"zKim؄RݣȟX߫S6(>s(Df&{Lxo hl/U a;5{~ǭ ;:9\kE >DL?c'PeR['FķyS rڈړ06bC.% PUN8j*w؝C+J}szB=rp!?H8'[_(B_ nf(MZ &:.ưh,Y9SkɰD~' r2i %] 9qx̲ (%q2cHV&?Yy.69rOZ]ZWnoFSo 8~? \xlu# MAl\IX=|}cVذgqgl}ԑ^{?H"%rH{q dul-V}kb~۽p4unNHcY}g logI&x%93bN2Qty!oO΢$9zo~iuz.Hn}z% dWiu-u@)01B hRذΎ\bA+ƃ< qx i#qxBr_bHo]UtxӔz )P5A]H.R.]|~>8be%yae͓_%0, 2E٢Z[k]cYv*g5}f"%z;f$7\"k3E1'.'S 1`:P"!A[M?hձTM JT# V?ȳ Zۯ q%(_n:pCc~u@I'ÇxQ^7.h!'Uq / }QI`% OSқ/Y.0S%كP\0~H'WU5Ť$/3\EI,*ڇzCQ>Νsu(rg*Fg VSp}\%lIdfpDBU!A-'vH}G h  DL _ȟرG@gSF7'8:LH6XˬrzWż3%ȊuYrIdf&GYӤqX8F徐vLK,}_8VR$T-"dB>%W9(Mݾ/W,[boj''2_Jm-dH=LZ|9anW]t)}SK}!1u^Z b,oα05U -<^;TaF X$K|`^1qe}0ڸ8-(LН[cC }0 !!Ҵnr)d%,c+BV7ŬL t|ƶGJgM" ]I-Z>X,I\?`7iҊ)v]@rKkUq.UZ !C!q^K`/$uYp*FHx6C1)`I]+t_S該vLY/@|r=Dj2$% _NP8/lSвST[tL 1u%46 p)w2iEć4WI6{M7x `ksM@CCI̊ \%TftE@C4^Ÿɱ}H* #lAuQ=RA® L7{cR#Z<9xROKYK?Kjyf19?L3hDŽjѴeV5((Æʚ`iI %RQ.dԄ yA^HMYdNԃb"kC1V|"0\b*_z㎔7[M i$#/̳R\yJ2sg@3˰5`2XBw&(rȠS 7 uԐJ)ow;t}N $V,1nbHߐKiTa2¾v2oQ̲?pI`*%par[Hr+R T^QjwwMYʇyK 5/ؙ9똨{fS5mC~" ~/*SkTw1 }' XΈn^Qb_ .?K~ՄipXG-R?vqb\9 'KJ'pN$̀x˂`G~HFʭДRH*CrKK=38Zg < QOΫ`:;ՙQumHg$A6 9K)PD)V*-ƏOGbTj]kЮE5:=hLd4鋾6**gh6=߹ًNFT55-LŸ&g`z%;KYOG:޴^X 3r57+3hϋ<_^\ ,2LkJ*Yb2Oʲa=-ҹ;C "$9rU ؼК9[u}nϧ4Z؎9^4F>?ŒҢ´(^c* !~51WCgpOґ8{N7'rƘM=U|f*)hqҜ~ڲgF Pqۈa׼*-񄿮 cds#]PwCR -ZjK5bw째GrYT_HcGYz%o(Ln؋hjbJ4q34%kLo$:HO!9Gقt8Pt&p5$aBDF WG?qYG,W #A-taN#JlWlnV%+kWQ!oW)Q :C]EU(z'qw(tMC?;)pI![E\҅ N_K0ز(ON=3/rP94#ḳ+Dn$uKH8+!M!5&ຘJ nU!̟m$X=8|PTEf9#biЂ_v3רC6[&l#2f3nQJPhY==8n!cx&u&0,wg ypgi:m)m)JQ֮D?:s VzȣUž N.g$yy54w3@v&RʧvRe.U]JBS/imASqmeʢOP]駑G3}8\ĄyO `{ 4ǗKʷ/ 8LbWThNhҗEc5R_<GW#5'sH ẻ E_Ŀ) NB| 3K&rv` (=1B+˧xO>zPX>ЭYE KwILm-]sK_cci炴!Q]-!7B;yf+@vnLhL\zE Xٸ3` '?1d"bk$-{֚aa~ f' V4VQ팖Q%{@@k =~[%#FpՖjawnNvWq jEEmO;6Q3_tԆ`ti62 w:;6Y [}A F< 6pA y߽;WI.ƶj"n ]UBʤwފadZ`ݱlH1ioa҄{AapN!cڄUq$U:4;}=)2^ߛ [*ƅ{1vw֖3M@-L( n/0r>D]e=@? ^۶RB$:rpW RXcTd-Fx0M5 q`#N $9KvQj7"_Ju^K,ˇ)ڭ?e\]d4\K#LmaU=&zPr$e#v)w`UVYZ,m*`Igӽ-^m)$W WyUH2*\MV2|X bfFM$hPMɤ`eWS.rÎXOwƿ({|<ۏQ=I GLSrjQ~ńLPPm|nnfa&Y^|No˜ʵ.c&hvN5x?l+4连N})q|$vQ5\-v _+YR>1,ݘWRtl|5i!_1n/4wgdGmƙ:We^#ٔY^V!恳AH8p[ Jy6w@9RH. سIp"1!6At\15}ݭ5IGM |XݨlJe+f[L[V{=*Jxme%eseJX1F/LFhtK"֐c-xqݳ5KCK- PrA,*4tX;Id.=;`7p֑uֆ[y2:埶!Y`O+Kjpe#ѱG(2{LdX}i'~UY۬VC fX[y@.H,3KJ[^zx(u\ <ÅZ *sˆۚ5.]sD'H0{P7ٍΰi0؜Lv ?*a"̓ ߧ]`m&+QHjO^HvTf t#~`ߟHyːHOl3 ] g?Xv 2wQpdzw-} MsT\ _p7ksbTb 5 վE RB7ؒr=o ;IMBхu9bªf$i{V9 a7C.#**xctƭޠ[]g1td6nPσh Q|:9nwqr}QR;F2ǡSL(h>6ȸO`n} c:N2ߨ3@&AMTJ/d}:>W-Rȸ3rJ  YvhNs?`lNND5؝¯Q6JCtzGz#>v<}]no]UBe%8*A #SZ2~ᢺǎ uWC9e&h[Ck{|b֒=Izok󹙼;֭u /@*XZOP '$NwuwEӡsd~(V^~6'JkLgHA֌C!? Nr?94 A3Rڴ.3PYvavJ# L’5]\. rpuw&f\3oߍ(4Z?XW`pb$lCIڇ :! ֕.phzn }yuvx,A{$G C$gcϽF҇4, $XDߚzNƍȚd4HgFYvG8nmַ1H Hwı<߳w3Kg)z"J625N+Mo8k-ӦT :ڝ}sc g<4.}YpzvJL~n86@ETvP^_?LfMG>s^PRk @"Ow#"Y R. 2z:2 ե0e#7b zhp<:gҐNΤ$i%];G>1ӮhCvLo۩aY8oރ=ۅ?-^e//2MhCH'&i1M1 4-Qd }aX ҢG|/A\ɻw\`6.dx sgkgQuĦwN6]s&"_;GxX:isd}*oEun/ 7 bIC/Ml&>_!;W>Hֽ N%^^@_%HKaQ5SE.ˆnZܰs 4o&? [; |pܷ40hqmeG83#^ kzV] eUSCZ'hpKFyפ*W& g}~#A*MB'Ql6=PIX'E)ՋCv&M|nq_eFۂiBb SٰV:WzV7C ]Z`?f^=ЋЇ h7J]QQ\1Ep⛃{M9 I~bb0{8MktЙ"^$ra}1 = Ɩ؂6Jn-a@aRP,bBN}5odN#W6&V/*SpG)5XLk^E6*àRBX*V ?qOL]^y[ :LWz{ㄦ/v(rdvV&b zTA<Fa~ KLQʽ0#L9`63΢$XI&59kmcHaҊ9v_R$w\{;D5+7;ѽ= g.A"OxnWo d {O+cu!.u"5`ܙ8TSq:=Z9 yy`ύ}ևa!z MO˟tT$qB/Ɓ0;3Z_(Gr@mYb[#Xը48ğ9tߠQiɔMC⮲i yr^*`51#7!5ĵhVd.jBoiZ~D,DNbq!Z;%љWf]J p:Uv$0m@);Ri<Tt=n?! hdh@z)0>$ AtNN!*].oWP+؆{.Ab#w9Iԩ J|XR!G(2RX{mh$z#}#y$_|_%(929MT&) e5 me*uhC Ԥ6&Xߔl__yCif̀k]ˆ#Arܓx-"BM'Vn~Vkӄ"!_o_G|V0x `Gޡ40x;h߹S8T ];RќQ4Ԗy~ v" FpRΈz;{@{L!['*D#sDsQ,-;I2 t7twHƚ$Vpra#:UozrE<ׯh-wi#OQLILVK!NjB&b-,v Pϗ(h_kqyyqߣTm*O|]٬2ߌskbc񑀞|zMСi3%d)D\6]As  Wx~&+;vz~}x?CQ1 z#_%݋kpV{9CtwGiz2k'yNj:9=:Xd['d_5U& Z{7 >*Ԥ`p<[Zhty5'bLxbwJ,GIaI c0;Kx^Ȫ8bJIp&[T0?r,Z5FΙ?-Ew6*K-_B&m"oXo qXuEw &"'6V"6r/PB,Xq9qmC "A"D%\ܘ-ZۏJ"L5Ǭm ^cճ}!\O v wy+;k|l-5i [W~\ovܔ-@Edg4yB确$SԆ ]ۙ$1[ ʹ]vdu˧BM4#&" !@X-?f~)U2{39;@[`#}J_Zte/יsݭ:rj21zuQ9sD%{8x~qNaX(Aoa} 2q@LM^*jX0D kB)LJݤQHacA`৽piKQ/91Bn@yZ@G$S%t׳!B8EH=}\%UAY$d-B(;!ރGW5WQkT Ѯ !(VñKQDF7ifgF+,!ǪR>Q f&uI@@b36VIWcFVُ}g8@nߖq#rlxf<[vQcFcKA쮍v̡骆v*<1 9W_uHEFÙ韊 C rT儱cKٗ-t q[LmQcu|a;Bf-@X4l$ԣw{Y7}E49[E^3B %>;gX&#DV5$jbQ9"QƧi=#8 ƛ#%yܨ*W'W.hׇ}TEb_l[ HLq䥺ؖI%?\%qPtmV]?2[A.tOYC@iG30 58q+/ig[|{I~@m.{YXoh{*o;C"&dCrINEed_h)bl{VUqL-b#p":~ؑ.Ѷ\kX\ L8lӐCI^y.֠q+Zj-_C~;h@Ny DA$6q z4AJZwn I;[F0KNz`U^ut FHiuB%jkJiHGgX6aiKq"M}6,$gP)y٫ a6 fĉ=&:V.l"a\/ʪ yAE"eW h梧nLY}TA*S[CDRf,##G19ȥL:.!!ŦةW&'@q+1CaF..`:ʃ_L{G/ݠ'55M65pM_8@ 4S3M\es/O5`lX>p*JG*Ns%'uvd9>u'53}ԆErx c?tN|[us=YyjL#d6GB*yL~F΋>$[,*wOX:C8ߥy^-hڒӐnEi}c@ y #%Qc -X)}^ j nm2e.-(?c('"i]qy $暛E˓wV.,7Z Ж>1ɒ!x;=xT E[WVnߒ( m͋9$:][oZ̈́8)ϰ DI`x}/~z<+h撌Beֻe2WGv,5*?ePk|MS$Llb:s]GaZPݺtCijBzNNzJ2ngHuTcuA@gV,5 oΨa }lMas1QsMQ] dfZ6qr.L/xKBL()ѱGcml3;EMӜeͦȽa$d{0Ʌ,M $}@ BXCq?0Е,v>d !;QBdUd:8`,CXKi_W}:B` ēжItg.v)B|_y+f)PϚW8M:@}mTjXy;6gڵb&_!,d7NdT0-]bh}P o`n%.rA5kB s:Y ,i~dbl"@Vncm7$ǩ^)X)}߽66#,hY(U@d޻=$57W\w0,j|H!Z10_y^+ BcURiP$)G޴CCߧ@sqexdhgq-iX?tA.ݝ~ͧ ohM#F ZXhz|~6Otl;,#+`G:s$Yy7,6c2ty{+q$KS\% ACNsiaU.Sp#2j13x-"luvy~3eH jQ/ 4|K iHP=q@u¹;){F0G aD? Ev<uCaSR3810b%=$ ![̏: c_1(4끭Չ4IVZ3b9| oĶp0ȥ\mG"zqEϯ3jۂ X4[򈑝yuN3z}GzKFir.< @Md_0E}pVpER{RGRk1?o2ۭax¥$ HFA`Bi[/:!p3} T 'Mr T~,7Rb;[k<3rSq-CvȨWv-u]|:ѵnO t3Ւv:P LY] ]v^i0>&/ U*IJeEҾ }^SG2w͘xKKՂ_|rĞilL>y %5u<) :L#"i'l"jp 1Eh^j`KGsylx26 8b$sILOPRRZHˠ!e]yT6MP>9i,0sz"y0 ,@t@i"3m^SBav ?Ke '?8r/P4(=G=HTj6OWCRC8Fy)gZ䵫Ij?I!>$)i.'4c(L^ (MˬX"<3+#TI6Ug\‹k3X$I,l# چK4!&F,/b>]x_lJ$Q D@G͚R|-MyaGQ1|ࡪ[PT7!чsTR =y+2˔1e gc@_T^ $tП+"G* ƮNm⼵g`]R5n͋b]МLlA}  8)8K&ۀ1{D\J1d@ήw:MQՙ pX{Cgtu?b51e k*_tH"QN(7Izyp~Agg=oMoKqnHmҭ"RO93]y~|Z }{4Fi8{ 9À W5hP&f9 M…e*eĽknJhuM(@X6+ahͤZ`ʙrK6ZF(eWߚj70,ڑ@GWпW\flN4vjOS>;\ vvD͇9mP? 8Bcx3 ɟ.teȟ,d?Y*7 E4WĜ{)1 ?$FqL_bl'łnr2gȦۅJ9۰{M)f*G#G d\q]ɡ@߀6͇lU~'`XEzhEVzb ^xk"-$(`XЦ"r 5PfSK/[)~X|b*,|^';=׺.z,Jj"%O `.DnkC-]n%-柖vdl^0n`:F\x/.< 6/ݗIa7[@vOua#h qˇ&d/~#'l40s&FLC6SIۢa\[xuILG`l4qêDԕu<ضML"pƵ&fB C*pKQ_>*qlx(FIvoBt?lGfvO؝"t1Pr??I\[߆CgnK3SYN~HݒOJ6@_u ݝ+ 8oR9Lˀ#s%Q\zNZcXxT1vve@6JnԖEaw4yj?B{c˺u)=E=plx%M4B@>SZ Xل1[2~HUy`)z7/w;SYG&_*MǦB_6x)T`:;K}_Xi'E,ſXt4Y1:(@#}ip~1Hrҿ_QUmyO6 -@Y%yl}RiT~8%$Ңlbj_ <%K^fDb$h{P~",y__t8N;{?͵IKEgnrd5Sdeq5.^HrZz ` d9S^[Uk6Lסpf~{0u,y Ot"~$B* *UWJ\ԙD~j VS%`t;[Gt\84-rB ~U5w3) Hw C7Z If?_#ntпC("dvo/*,BUE"gBms[RuCHu= х0>uKG/ɛ*.[ÈT:A}Mo-jQ[F fJxKgftn !ז-jE XWa[jDUnUTH KMeW8GcHh g{[x@Yr$fӒ6 ,iy^i 0d> $"p 8 WR.D芪lɠz,Kbey^B둑VL-dKR㌹N -͸g4^}Q}l_(P !֛X@08||n@W<)nEhY2N Z[&#CjVfbyynuFWcfKʩmW1!-zB۩X:aC4|;%*ua>@$FA*wmNcRv{!`_^P Dǡ.7,e/[Ȇ@ٴH!)%W qNVXH/Me>29JOB0+O !\AzIJUܨ18(<-#]q=_%&wRI>"bFLuMD8(b$AS29U5 yÝ<,sNacb\fLeߪ[|]=Q<ɶB7hTc9^KDy3P"dү,J(?!+Y~yóP>2֞8cWqCUm떗^=E^k i,CW_˚'f`_j|N3Sm.$C2:8r;%% Z?y+%ܽ<(pp%+:ttk|Bjv9“ P־dm&sl6AfƇ//[^l0i< [qX<@)?A> яH DP|Yh8f2lA3a,xZC/BQL<0˼`SW_2) U9vGLs(͔WZ9[b?WhA0\v˺pH'i C!gQEE p)H鸶Kիm6#::s+~=fS!`!|^їT̆0d>wP=Rl@иoe6p'U-Vǭwj7|gtD\ TTvT!Oٚ`lѭ|ʯ*KBshM.S~w_a  }e")x:( ]?AH5褥TTY0!kLqkw:h$ver"Iޜɽ"0qβ4 ġj1);=Eigr7mK"`\[_wWILs4;G 9gHD2.m߸_ts oW9g[P/8 id rMY/Y_Id9Wxڷua$ *>k˪O8(>ob{lد(c?[K=527tlMiu6yuV).rCw{3{YEQ9W™҄5;PmZ䡣Gs[gK|͘(4GIP6@~xa/z wD^aS}[EY>f$ƽ˲Aty{b}/gyΙYD%bР)Cy&5"ӾeֹwH!ɏ 8;1 6}{ܥ:h{ԙ0bN++ uS#3@oRnaPE"}3&LKkr@}> Bω=cm,4iu5%}hRVrusgc$K,LUD¢?qe$ȦԷ+Őo' Ejrɶ!)f2HRPU _[E3Wvℑ\UX[L`tÉ%H(=> OOQ7,w AKs'%U>r4 Ã{N&hg8<839'>73LNYY73d u zůgK2lʶi×--oOwS8~*@EUކL:jBbX4Wt0XI] ?r}hV%'c)A*=H'AUu u],K4A烔8QFw[݄ǻn ^Oic.Z.C0&=2|^i4MMcVmafrН+&[ jt7*O|78f#ZoOˆ)NAȜP@d97:u'|6&KbR{zF< H1'$Y9 (%;_TkFDPՓANdIOm[_+GQ\csԟmڟ 5GI.qOè#&LDR`^lH߄šDjaMeY+V,#5eXICӏ-]Q~XoReN'nK}e5e2L. ޒm 5PzR!}}[ ~be] XklKՎZ~)l7K`8**!] UADվ4r_>;̜hxF Ä}HN lz0_ Yeo L 2] -".?DWJZSB|bw'PJrLSh] By- FvcԽ(VfwO95W!`ib,U\Z͑1;q zz̕Z{ʃr2Xv_ǯl>-B[ײ"3ǜ=u*[ʑq#Ѫ{o!=F#oeTZ F=}F{ъh /QP@;U}ꎄ+%26庍@1rQJH`#&O:!5 N#e*6u|+fc]V+Ihgf][cTxf^Hvo,i`m!M$ ;P?𶲥r1-J5;L P ʑytpSY}y} r4UM#WӴ 6R᭽DY$a w'/{@{[ JOT! *(Y"-W_yx6v7 Cה-X`_t.9D>wRI̼BoZa3&z2:b1bH9zҿ{%Թ!ew.]WuJJ~6彶iz~>@ e##Dݚ,SywP}` ߲^)\9t<{pFEz鑷=i qѢzyge] 0yd$mZWY茥klV% B+?Hhfl.moFb{`\#`"nʥ7Jp'1< 2y!16s'1u:*B7c@jH텃+p~Gª!t8^u^q1fNr~e0~GL9+R h_#UbϤ%vnIp}ĽrXY=Ћ+C4'FYvMUY[:(5<{Vp;!|>4 іğ#9e#: nCO?vdz mx=.z*I֋O`t #_ǷxϬ/[A?IT-^Ώ fl4]F@0/b$sW/YGEg._z8^dPJSbVZ>lM5wb]?w. (FGv_A{F{AZݢ4_H~8;==YW~跖 RJRZ+/gDarc5fͮerYAVs kNh>ފ7}Zt(A QuinEW^@"B-wfTU!G*{ Rm!T0?_fo4?<%A&!`>l]51"y&Lg5-\@)N0c^~2⥨w%x/_faӗK("ѳV(DQc\Ł-Gs!Zkg6?nh8YU`&I~ AZ :)y峭W]/ J.p$PXt @"vEF_G&݌M<%?5⹋Ml֍vzΐU[ |+1*E-^J,XV|彜PŒ %b$r8ۤUy(Rh&ȫ?_#_cP!,wg8@ "=ܡT5$P *@)=Ero/pJIS/ S :Ɩo4hA5(+JE Vϝ;u4 eETYjʾ]sQXxRPajr̉ K [ėeDVv7q65U#ohfrcLj5C7 -n\=v8 l#wZ'RjV<Mڰ/*L ԿzF77b5'?L;XZ @& qTS0|_I,oRz#F v12 Z-jo*kOiTOشU1SJ)g*G`Q%w4l ^4*`3Jq1*}(a۝fzWmm|Tet|%CYر|M%85OҷKV G:B0Gn(.`B7Ԟ7YeٺPaL"ّ(Ri%ʰv#h71k/8zb"wWx,^ނFFRx7s=jFb>ٷ{;qKaxuflQ>mDL1m(gMf91xI)/ |T )ح_E?z$C&u8p@D.ۦn\ZX d[Swܨ޼W<]ALNG!C RpDҖ+"L #1(+*jZ9VW{q!Ƌ" [v-v21-G rnS_kF4XM՚?0D4 f+ع\Z J&:,<:DPjCM)2rѝrQ*ĦR#Ed.PA<D?؃qy`3&Tẖ5atǢ/UHk M3 DŽ%yz@ t(KnHhދMqJ;TΊʐ̩`gw5颀wRFK$6rt',G;EKAR:_:tHgK)BVyDz毶L"ܖ/*OA{!5/"~,# '4DrE1xG>86FЋ9i gټdoQOE^cov!` 6)I$f-{[JM Og1;JBY*adlsXs,$Juu>vi?&`7 pj PCz{3XaU>OHezT7=F@H?P2C*'0%]e"kxnDPƓ0&X"oNQʧ:h:a:?TXN0ZFaE3m`A8ܡ&m{$]['5]/ix%h;M2c ސoWIr!>ě%tc4pJ2IQcIhVrY4{R4'r!SdjJgnuwG?krL&8(_?4R¸HfʰO\pZc8(NY0 ƚuA7EQ̽5)LxR3ο~,cY,bc$BfόӐI9K3y@iKcªj_Qqۥo_v٢@b0^UzBp ~̾Ct|DDpTythA&MZ5K!H*#|-Qxխ4"Ah\|[fW`-}hW s=~tpK3jH]g#-maiՀk9c3*颍]KHpPSA7!!ihh1AynoEo͜\{Mjwi s5RO :31nV!XX:dnꏫN%bYyo%ͮPֿ]p20(,4?7*>迫C+m?1]@E\?((OWO#Q¾~V24@K$Xp%wWsM 5U,9sng/YmoǜJPrS.KA;T|PyV(2uM&숮8- lzZĀcuz9 X^=~s+OMOKE?LUƲXTm8Cd|&5_j/ܮ(-n`/eS8챒B3??\jȡ|vLTY‹HI;w2120f ʴ1~Y{&쎆)%cQl2.qHdPqzuuDfI"E8oҮ!Zȣ <+(3S?\RfQCN#C@N2W-P "mk蝁Тl4Dnvٌ1VS.es!#1{ я)'u e7O]?ӂ ׂ$'%_ а.GoYJfW 7om` v(ZpKVPhzQN&2×>}!5G+rvf|Ҹq^1Ʀ~V1<+c)V@$y{1ۢB==r q(\5 tU]n cX F0'h0N* +Z. -Bxw{-\xTh?$uxa䲲i94tQ`R`JyI "JO$w4&mĦhÃ"2-ǵu&b4POωq봼W[ í8z4IOxX FmV\<X(DDfȞG>l  gPpX[ Ppd8rshJa}HբxAʍY :'߶8vT\$GcZA-a&0v30w 4p7X"}Q~%..SST'Я H8m[n3FEp?߶H΢ x$~+F6g@t76@s ) Lw.,{U 0GN]#y"u@Ș%I[)ZSi5jCє7kp8JjLLVڏC&p?hydn+03AV\^C>p*x*hX8i1jw >DTGFfo'4Y5@/x7б2cKl&Gpyg@Ī: 12`j_U}W]ӊ Zz"ӜiWe]f:ٰUR-'oP}S<;݄ŗQi4M"GzFo9/76ŝ E c0`)vs}0h..- Mc$ʅiГ$턉".̀Sן WMk\\`{w꠼PlJXv Su#u3)>bB+NE]I ?<"JAs{"7VM iݜzw_2:' Pԯ!Ri'E4 T h#*d7d9kLJ׽MܼX" d mh!>ĉZ]72 [~Lx/OJo 8G(#\l _`1[6˜g Z$q"K.yh&Hanl`%d c4}1x\r>\lK(P4 :ֈmtD͇hlF%i 8)9faEp7%}<F\$ԕ.2Fx(ϭ q^m{ ǟCCn.[kn)9 TAdswKWAɢe#vkم8&&hCQw#k;' p '{3% IRZ Zroj͹;F2RrkZ%*Ks<%Z&1UOiʠ`<C /s^RRe1U5&3@wI V78u=;~x+!$aOcxV%VGIw6o=^xt{dU5lWMi8Ĵ94*Ńb#T*>jOĮuv&ޠ03Ӫ$%_n7\*xP$:w*1G#2,;2%$[/_"P$>BB*yzJnud;ml~<{X==M"5p:og:9QWt~IaqH\, S6Z.-c2j`y=諳ʡs/^]22DŽ]br\8Kdi5CSwxbȝ2,:0wU { .Li&YfB߯GFAkaUGH pIOm/l=[sE>l*F,2򈿭w/r?Y&=oO2.?HƇeˬ[1~[zFmEIDO,OfklQ9`' O}@x%inG1@/;<ՌwX w39`WdsyH}j(v.v ht;)3D2,ĴU&}t!}FE1:k3 g#=T0391 s,~ib>NkiZ5N_w O*Sbodz! >Țvjl v Hgy,b@zw=SqzM\@r ;g +C'.+_wi@~thO,~H\4VDHJ:$X:pDSRz6-x{dUUϳ `(Y.&%N, (7Zyҿ?zyAw45+uV[ ΈvyXGʘO(HR]{j8J6}㼳eP]aJNʁVXZ2= 8>[ UsoTP#$ou!zlgiYyȡY|Ă4R@*m3TZ~F2Ӎ>rFElLLw"r1p0Gpb+Y 0H+$&e$C1y\VL=I.Is4僳<[GVHQߒCƆ_6Tߖ !kCߎ`SBa"RJ@}jIsC?eǪHnTV b>EII7;ky6 ʆa!fsו{%YЊz3a9}X{I<)`}KUBSCDɿ4Mad7"/֧X3隳hʀm=6xk{ ,4} aڋIfĨlˎ賠VܿN5-2кinpwU_mq*kI6f/P20כ6ҙD *Go<*UgG|^cS<䕩rI+k7ėA4u+B ]ö#D9(`E)O[}i~س~Q5QeO h 8sh-18d3DD`"RnKr\F ʸ84733,{G qd|pt0 vg㍓wqU5W&1-N}umKo?4(O;M5&9쭪, \Ki%戻!*]{B)qk[R?Iȍ?OEv[Ľ Ih\V(0tg#a=쩬^O8ƌ 6Ɓ<Ӈ T ;ɣw:( u': 8nZEEkU1gFȆwvIԎ#s.Xk cnLv biEx/̤Por„>XQeI n]lhsn#(S]OtMaRq-<Nq]Ws!WeɈi.m*󪔺hTzOf&j !sLj?a>2) exS`N]欮p?H'|$ RмL7UQ,_9}GAKwL-o"ۡWj֓v`O NnKy )M^dΚSб Ҋjc׃YRq~@vg{mu#N2UH<äeHлWJbͦwnzEAi4,7|`cCH"x ;V1yYqiҥ L*\) uvd!AnHtտk4ւ4?EN61Ȓx;ғstww[R,CUW'^O (i] p4TrP4/)"-5>"o,edϵF@]n'aґi6 XZ&}) \I G,2 (-"|KRl'1'qx֬֝0a)mXH-l6 F+¯$f>fXxJ9Wе0?UcPj8yXYRD팺PWE,[? -͖Zc D[ܭmˆ_ӿ*0ARޖDVצ9QvqpK"ʮ|Bp: Ɩ)j%P${;Gd߿V @Si2~}Wh+B#@*Ϩ`{D3==qyo|UG-!=_DrSUi%x¯K#|wF ey?8"?[sHV1YGIAQG4; z[f=tn׊b"όx!B$d}DGʐ GjάaHyV#= 2G~het6H+i3ف6eQ=3tɭ p:عKX` Ux}BH{{g,Zϯ3m0'͟xG9n&z@!a;S1%KfE~9ERٵJZ_kQtW`͵ZJ\F薡`էVxܺR 0e>&ztGJ\ضIx‹~ s (bk1+&G2[vgw(?Phq,b'~H*yg W*;E/rv8 * zd%w >. c8u$k.` (a"U'8v>aC|:{JNTAWZ.r\ş&zub/?\Y{&95NO?)TXM%d6rUϡ3H\}BH&x3xsvJPhjKYwEϓ&NX30̏wnmĆ _6OHvx5/_HY,UB={oYhNBaO=ᝂҟ[J*GTPTA*ifgπ(K?!3AS|͘|6H3u}'shA|<NA|(Ms{9n(el$)Q*47 aDЌiS.Wn뾖$ MEEX373`O;fk"FM]z])Lif9>rʿ5!Cwy' h3~lcn־,KqZ|LC//U"Cتyw!?-zd3nw'U"Aӛ* EPH Ɇ`͊[ pgk'W|dEeIKÈ :1lI2x)=CȢAc$5$٧ՕiK/l/I,0d&Tgh㩠5#Sz/ "+I͓M t`6#E C^`8;O|h]#ۑ4@J~w!)?U^t3onf`T^e$)'@-S+k,4&v4& ԖE j{ Txژp ݭ ;AQĬ PѰ S8-վUdR^,EAR`%7U-Z } NHlZͧtLj{̘)_) T@EѾfߖvdWv1FE 1 ,#7(~%ye! j7cyf7KGuO96o&lGzK`-O<}J)R45S"Is@t^T o"hiNI ʔ~nt0tM}PMQ?7ӏv9oBpnGoweNqYےI t(~/ňϊL? D}.~Xw@$q*IG}!?HoEq!GNZ55oODZupgU&\SVu/uC|o0&iOoo s` 8\Gv5e-J9UzwBlqL䴌BN$.1ۯbWgR؏dѩaě##?/ I]K f>Tr66 8q4ʫ[6>NfH RRFK*#Xʕy@e,6F0a-b h%Ws_4xR3m~~5kؐaoxaG_>syhG"ř9+ruIz)GFb=ZH~kם (]uR~ek+f:]1\ u+;,5jnUUrRN![Eh3X&xf\Ǜ<-?aHMwm09mڶYkNp iV_uw3@Gǯ$T{m$ ȩnnG|nx'F,I0Yn_6 䳾v}y|Y_*פevt7^g=NluVz:n%(W~oH&Sl5$ ȕ*gH/9\̝#yT-~9%\W1 (sDGqRQ0(b|FC0#i8<6d ̰װKXe,sŲ5VXT3s5ј=1CM{H{} WŢ7QeCm EcI!f>G8%אp ]ߕ[:.`HM l^Qu˯T'} (@L.FHѾXAhejOdHoF"5l,hٰWҹt$J,rp_.þ_l+Js:k&)hTG(Ӗ-f \~"Fu*ZyX +H|g5GY_B#bÄ] mEG(rr,IG 2b"[rn),mD_2c֕tv/Tb}OK"U^)J}EM⛡~DۻtRtj7~+2?"zsEݮ;;/[1o~Ix(Mnrr+YT,Nx,#Hfv篈K3Z`B]}?V@*md .T'6J%& _g e@={' sHcaivl9od UT =AhS_ywkapD^4tw*2 T5ffձa^Q_L3 Xم{* &k.NпZGM_ltkQܷE밐=9u"plѬq ʹV27$PE\'{R =Z`%: 4w I5wվbozs[gVzzY矾Fh:ifU+ =߯^u`a5@w# j0rXj"𘏜[q*:?.G{ CYNzu}%JcVXDҶMA[t%2Nm epHF掯AF\ P!t.4 ~D20\ޒܴQf3mMp1V&H}B̂n;ī/vyM3<7;qo/·zNUԪs&0uUq|5y￧Ml" \$D]M^JKf,ּW=<>8(>THoJΥrἩ:Ľd+A\3.þkhrMBaeJ֪b|MfԘTM0\2o.#Y( 3bKԹBMNi:xAsWQo/_#wVfEH0N*0n̓8J1j×u|9BwJ Uu_2ζ5@ `_EIc{G^fO$%N"%;XR FlJ"A"5%9:[cVbxJZZ9Q2^ s:q,B.gog'58y?dBZb2R?@():$8!À i D`bhL ~DC4"QHkHI|V^aҜ?ieLuy̆\,-ct`DA>&Va0`OY[ O&9aQji9oɭN%1A`kK2J#)*Yz@H0 f΅4;ʼni"uӇ\Ԃ^(P;Rc}=y`8lORՏSbJT 0+fޣeO˃T1| 0گ&˚2Nꫪx`}IM ody^ˈ%rOja-xVij R3M-Qޜ TLQp %Y=7RbX` R2;wa`:tby@|әMCIbՔbK"0!6$)$yݿ)ABXkJ9j*$K H'% w qTZ/5^jT KlJBt)""5̎Ǎe`#kgQV9 h8^2{K| &kO2ͲVsj,E%yS3sa=?[k%) GQ>~%!gvOZ` oQڟ)ʿB-t?i2證 >PGo;}Y)RWDYyϔ w:%zF\QHOɩw y_Sx+H#4K-r"l~SÎqUj-"4 >GtW[kIh2:Ҥ }FV`vw+47z̏/0C22E1 }Z  den7g~K\舊2UOI#Gj3Qآ{w͒\\oOFV( ٺh}S:;_Lpc>'#5UKC}&j>ږXbEQl]ݓLF㾪DOizmd"dsNl@]`v^Z 6ؗTMhx}Z=_dӭDNLS.JHU @\׷Pϥ姥)PVGSѢAV#d+Jj8O܀ /zV +Ք'IڨKIEt"$|19 Ċ84*y,y܂z9pj6oK3dL`oGKVOiC L_Q0^WTrm2#3H1;'-3h^(tJL5ql61~x\pz?4Jf !|o9U3%34]!UΪ4v{Dwqb^p>:j[C!IZi%GP$=^y Ooų"FC|2FD.JƁy~g;+v<S67~vEwOgB,^f,OKW "< G!g!;x_$|nBOncy̘(렟 c4_(O4t u\;$\j\qDʊ`vrh(.dBUKfkfƌ31Q ׽]&6b7Ω! [Z}pݛYD]n +10qB"<ϕ3Fg~y%'䉻QR8(ǃgW`^G_J6Ԙ^(dķ!qn7@5[PqDt݃hO`0@QTRo/Q2YͮLQ( P'szު )# O|C':75Jz克|"$nbU[!2/{(08=2̆ @v90Lt||ecAcMvѿ}a@3)%Pdj`Rq@kOr<{ ( o GiB8tζ"=9_0"BYv#&LS9sD*JG!fR,(7AfZIKVye 14("?DM+ebP13^CleB^M `b 1\J "ttv?hڏ;1cBfkҾ{Mq~<,7 @Ŧu(bW9 [.*?S9'G|51Bࢣ m? )H$wBi /h݆i1:ڮ.6S 9dS E}TRi^e/,岨r|*bةY݄fnC^y&*)ߖ8GkA.+C6}w.gqets!HrMu0~[b߻NTqxxDVL]@ZLU7_Ζz8%ccWAVuoGTg97Ϸ}AjŽ!m0'CS^иH\O[8otQ%b.^&A:w[p֡-TO}l/\P)drZ|h\ E"07kn&W`^xΙo,:Tb5@Mb5HoI<\ک)n* }s8,jҤD&)_"8cY C{)+{+g$ R̵y3H !S?c(r cvZ= qH5o%GJǒID*K!llx2k@'$J qi]x]% A_%͹ϬGS+:AO ʼn@˧`8MgGSLbU "T:>7mb_~86shWk@ͨOhC6T;$ g,J]$ #`期j^t bhFs[Gf (dV0AJnF`4Ps{+ đNAڏ] *}j]?J'Ľs7Ѡ+l߮P2vB) ihԑw "}4y0AAk#olp>d6S`dtu5+\NwMB,t#3kQKi^|LJuA.g;K.&zU^*Kmz'n~pYB6܈t®j2.?[2̶cK`z֎ LMZ>cRZRWOfK*V|h9T3T*Ք>& zņfL>`ll^ g:[q1]Om2W\!!,/<`bt~&4C|$BWJ(雷wV^۠RU +:e.631MHs7=(E€jS{{+zu#Δ#HfOha5qdx׻@1vdm芶hVfLJҐ=#<8F 3>4CF" UjEnE;r8O}aԐL~s8-bs,+Q_NBLftxBx\^pH (Aes.S I@ m%_D;*)Aّy3~JhMi|ye/]<_{$u8D[㝍C5Ma n`ϭfƾ_tJ) #UI,S7.浳}{%y̵3 ~Z?H t!#4*C^6c, ,tGZCn1 j?xJހ_{նWAZĎlGUv@Y`p{&"ZfV0 *XAU@穝xl.A!רYPrn(1g9/- Ijږ-9;>,s-5v6Mamfcd5^Y#k0h\Vf1+` ".Od.P&*8RZUNm{\[L9}Lޱ< hw@5ntF-hgt"[!.?lJ> 4f^g<Ņe*#ws;suw j]T%J=%EeejN=\&,icEOHuo5_DGft]AL4[XcM ^se!U3..f546'Rܚ~5tJ dğ\w>̴):R>}:!=O6\~˸vU%[6hfcYl4Դ¸)&diɤ(P%?1%3Zڗ94¶eKe>Eu_«~l5_ /b̟u¯0o '>L||fOSUGJ9J;[leG߷L޿R]H:kCXsiKYC!;f3 Ӫj:-Y2&?rv+X2uoeV[]+-50m锷8ڠ>ܑ=~\U|̓9׫m LٔQ<śZj 3BEb96-r2oU+{ o /xQ3[򋦏mW=h윥OJ"ZH095|{sk~L7"Q*53u N[<Rӥ(J-(˓2Lͫܬ=} Ƿ:.*_{̝|#re\ҹ?7[g<'TQ3+W#i܂GЈ&Ebmqg_IRzޒf*mTDD%뇰b'_na5;q/‘cDC&a8l+-ǒO)>ezE{U#5z_.(/ "Z|gCiLj [7w<Aœr0O6NNk-#8-؄͞RM&-)Lgy#I5- 3&j!tb~ Z3rT6p)=ڔsc|oIuڥXa5:v&9IwZ?\UMaiQ.E 6G[ mqpPETw;:y#"!aIV=..ڼ_G夢Яq8N=÷.yv SiqcL, :xY GtA@WʾR!M!`Ύ[/:נ~Ռp0eh{T |MR֦a⹊.o{|$=Ez@/K"iA)w&Е$ܗ`gZ{ᚠx±~_QW+c#Eb]MMW~`hgM"zE+pճB *T8Dr% <_:Ɂoج4Y! lUߟ`VMuaCO3)+[pY{߂$̈́\!D1A{}PTnicO,Ȫ!J{juZԲq`2!mfw.4 -JwTbSj!,uyQK%te-y]ְY%P)o쏍!29w9~>aEfs~yxtZ %~GZ< بעX湭fq L7GTJ3O|'UZ8^M):*Ym;~ЌHW/aʼp\b'tuU"^} U2^;yJ2<=*a<8)Y|2Hàp&+{A>־@\+iuΖ➑s/f(}AmuQZhw=,Hz!F* m죨e&rit_r^,[%W䳑}(dl؝҆p tZC\S_Щg/jlRG&w( xCU=%M0FIuqYw^܋4%kBf%7>P!)Z̹UmF Ln5ɎՕ4 7?xLsc=;m\9RԕW'vƽ0ĂbLĻ=u@ "@vBAv6.r,PwC雳'~2zd= TPWb3ӱsPs?$>7J$BQ] ; B2'Ce&$lV˰ ]?YUj-'MxI/S:z׀+6 PEm9gZD$B"/&JsMGnhau3UB niQ&0L'|@cDZ(|,r\/,a+-ojtO#*`^xFӆJ|ĵzR3SݕRf7&"W"C~oDPxToVd̸/鰉@,M;%I۩X<"\xd _[!ds^Oqa٨:L.XxeQ#wQPby2 9_$D=r1*ir4wqw> )}!ִuZȍc(z?^渶 eS󹲚:W Qͧ"cF/^Sއ/l;Qa4Dn+$YS9J6s,|n8 L'x t.,3(Itc+̇;/'hV.k0C|s#?3\%%w]rWK6![* ELo5OM}^/lyk)iڻ\Ճ2]߃7==t3HzHf}0ɕIBBR|PtBG4#`&@[~M[ QԂU32G7PF ~iǓԂ c".2/& VhbVfa*8.MbPR@µߡ'˓ n$NP^Ʃ( *+^5-SCYXrș̉7k },V&Ei9 G1\0E[2bmϒO_ԙ8ܠ-P_*^D$ ,I=l-^^pśv^߂,x؛q|4\;"`%rI~ye5#՟̂%h/]6`% muvumLʧG3KhКϦ~Tv&dQHeb~ڃ~ ;^ֻHbM2qdP{oƒZ6<gQ|[[iZ9 ޣ}!l;M=|g-*ɑ /;i$ ] k#WV *!_ŇRxZ6> wL6, a\wbs :2O]bJ"MrNjqN[|L뭉$NT[n*TI.zy=לywcU3̸!~*3h> ZhaFYTX=kQh@g!-P_'o)=ww+ibq }_<#WW6LqecW*N #HGlN&>wP'AcO*+pnPo/y!NY%9noFPlœZ0KUp=rzRCΐ8:XXYV^0יB @[wSTێL] bo FԚ*2rÆ~Tι\VSk/:"y JZ|Qr^/-0P9 ih>g-䤉_#X%y ( Yf7tN#r-iz*܍a->o a$*3NeA)g'm()曟?`GaRY#/kr(,~rH1~<}D1حF!T-;gǂ9 ^cd&iX&<=5#ulW0Ӎ=me<>ijAJtCM R\&ϊeƟYIAO籹alln/mZ䬨{&}w@IغחD oщ?ENn 9„y:+nCFRH_8dk=jX)zaUqjw})8I-(w=_!Q+Զb~Hͷ1xD-rRlPVp/X&4ъO`dr$Zq~LUBe4RI)ZjB^:J 2%'8V_0rRq]ɱcs]GbEt.YoJ,*+C9^c9=ٗ8Ƙ;L91Xf]z|fc>?orB)74\zrl*{/ 9 Lwa>*轗-@S0Y╚w%ťU{]Z lK[uT0~䋰k{ysq>>۩; Z>[J_Yj2({9.?SU"r+x:D\5"]R7 Sw /gKp66h?ςd߂q(60OAq5uH۹yMޕV3,TW9P19̦l+[_'/fC7/k';S fE;eߩZDO3Mf$违DHO'fRx<5? b+@/UzQ+6WĀ bm홝czČ엝!2V~yj~~Ⲳpϸg#!WGw)?"(܋.S* tH9_FYo̓WD~Ұ0 -lHa7X9Qn^o%/3iLιR]|]4Y9}:6bȽKvݥsDă–qtqC!e^K O#ߙ{ygYo$[lm9vڛ J}"鶑&" L7\3v c=u09JΡ~ ߐOE?lBxuǔR *UI:gz,w Cz# YZ ZESpN007qIRԧr)>g ܚg ;Gd2KfݵE.BckrL6Qfc@)8G_Qw/B盥!6['SR_SmpM7|H^g熧@1b)`mK`}[\F]^H}MPtQ> gm8h&p}Ԧ'J]Ö[YȵOy1΍W;jf[jV$E$ Hu⟬ypRI"2'اŠTXP2,TfdpCΪ/VˎiG@ _7h'Bby:4Z@Xwc hrqsGIeu1F7?Dмj^R\rS@#}RrMM59yy*}2WeG/1 h9yHPUo!*jˢ:aچ?\ G #϶oh.Ce&)ڭ[ B-MV+LX~|wT$Q=e`MLϧ"!2ҩDk0@mO3{(Wx\1P۔}¾n* 8GgX [h!({+!.\Teel\.l1'ҝK`>Z}2 /E\z*B` ) 12 UUD\QyiT}h\D'ڴy$jAx8&&y#L${w'.gE*t^7ʺzdwg?K_iA5:>݅0]4U%Չrr&æ/;~ 2<(]e쉲PVsf~G53a!K"=xZF f"d+H=FD-ae/Иg' Fc4~)+NҚ * 㽴1f1:?Enr[RurUA~GqP)K]f$G[+L QN9qWvٌJGau ImتM +qG왮!is;זq/!MSZvX\a_;7^a'uju c3{1^[NjLf_(ԩKȼEI Ê;(R%ԯOPq><\4 xWmǥ2&McP؀;i,M Lŕ=.B#|GF i*dE,ol;WKWnؗPxr@^"u<_7n#wO;p]A<妹&}ȼ<-FJ(>E *# ^O ygap¤Dz]mO*>T;X\~T ]rRsyDj9Xu+үcL"$ XUr#EU}0>rqgr ղToSR4rl'U [jUP:Y%B;_@BY %Τc޹I^Kp菲 ^*$Y p#+cGKDAxFaLB+WL/?ζw^/ikBA2ZZ dbҤW;31TQKٺlbēq "C9絙 C]zq9N {G#1qˬ7]:0 ̞ߛ-?QLNvհz8mL!K}D)tO IFI}_TKʛ_Y9q )ѷk$4Jˑ4At~4XOH~^""i;W{%φ6] DRg|hӬKS/j0 \1Inρ os>])²z^ԓZ9!BVL9/=JΛS ßz-JIwL?ɥuV?BV?d83bf>Q"aɢwF}xG,.}co2G/뗬':g<t&G&{ODKaqlvlKPmyn5Z1~>m'kR~S#X|7 R0uC~\HSu\Pt&mAd/:B6X;,;]7=؉~۶̖micP"b7(v준NYq)*o=; מuJVRZISQS.MBݨ o̯m>qpj= "" Xt(r V!CʡS3 ̯4(q1CxOk}ZKކ% ,e t &Xg";w7s܎˜"|{˽4t$PQ$L?\p#WՆ3ybO}'ˏaD5AjnV7?OWݑߌ1sHq.Hl,G㴀SC,`h㙷6_? ?[t@zGs d1bWPX*"z6̰zk(~ػ0¶dJᢴ1'{,BqlC]5Z K׾udk&%7г9_DUYs'>;p@dapL?4,;8ZE%ӶBc,u8/K[WGN؆Ii-!+yN/joĂ1l쳻k\fT"VIKuh䮙NH{/QysNR͸} kd/>hJ;qu~[d6-ߵLH6mۗ̑u9,=4H:4 \vK=q],8Yz0oFǦ`'E1E[%6|fگDIA0Ue2U0ϐL Nu ?s>_}M ԍ͏6ء'iʊ~bs?S=ATGzR?Eiһ3L]AV}j #G4Q'+kueVEGY"dv1nB/] i%(7lqO|5cY@W&3X$2Z{5#|-tH]w4*BʻzҠjl9\-cށLKT^KHbk/sd'ƜzZ̎u{0klכTA&^MUr4~oC2½R"QJ ke*\tRpy'!zٟhlG0 lѲ8 z{Ȏ=F*H` #y,od]Poa_v 2R;olb0->Ħy;v%4-Gc;LSi^׌\>ikUC-] y-xt0[f9'm ;҆_d}$4i)ζ!I:32Cf<ﶿQV{{*sy^m;.a7ߪ[#^0,~Q-`6:p>v!Lg5:;0m^#܃84\I 00+сFT~`gpboƒUxs+\,{U8[ f}.I hAw& Ҵ0:[ :m8An"15DD"a!jgRn'8> _ YVe`,XUdx)Tڑ?γ$e^!fVܡabNlKEcLo'|``IOSsg7rRT.:ز#h;drP*y>c d DT% խ y|\ڃK &{{fy-9-]~Keó@ﯣɭӏJ%nR=fJLZ%UnB4c^4π T/v1r8 ?9rL/ v+GFK>26\j;̰@c \:gj\p&La-~cێ3#omBR{u۸bk?P L wC4:6$ܞGƄ/}pX+lԊ 6S-#pƓj6|`8\U?,Dyi;=0?'^OYB'1%@ ֪c5cӘmn{yU;& MOz仢|oDxCVj;zyVؓ U0.S$S:[}R5¿:K߸Fznųp͔'sU]((^rS~_ } g3\/L ~>TN}^V4'w<>7$,m_{7Zddcn 2`J<">BP 6@u?oqap*2^2V[<7c1s 4 _^P?sQؙYYQ4}/fKɧC/G,O'`9Xl2n"})R64ӈ|:˥d?_\gŰSĵa%I'gЙrqcQ>;0s*5,.f Ͼ=#=Ɲ0+J~Š#㍵F u. F̑dg9-O0cfbG*1G8$`^ ]q_V;ىH4Aڢ z/9q/:4āw2`EWQ7?0|i V^Ĺw9DV`'t]lb&Jw(}Oqzs2~jP9CWц< V{++=H^Uc# OAfTMnضSPAyp`8"F_%E\Ka4GD@`,b0tD>zl }fR:gDdYe/4S|B.ủ%yϡ;'xi'C$]܂pilKj'mWb6旕x :#}[;W0(׶rCB~Ok_a=y02Ѻˉ~g2u+VDW=%c$:WYjK ֹO9ZkIٻdu+}7܄-$*ѝ2*xPhLo6/Ht^R|r/UG80OFX~$o C!JLx¨Rv}̨)E/PwB2Hf@75%Q^@^^w';Ig Bw bSFS(#"cO;:_ք*֚+@Z >'|d'2LQ$92OlF4BYl Hђ:PZLytf˴~n)f[Mozn8̦-=ά['5=ûN%pۣ\} ާYoqh}&5#V^?l$T~,;[SXL#±,wK6]$A|H?J>Na3FI^c7!]f'D-A1.-J@Xvݫ-wh24Be3[Ulj e|isBMo5ṖIms  4sm;As@ {}&܌! [Jη9P > EB[Y0ɆٱEg ML0b!ʮ&l$1 CȨ8w/g--`RB FTSjla *fѤv,!u$L OTxK'mc J1Q1ӝE2saCntbogx";+ɚ$[ l>s_2 p S UC fǑ'\]!N)*>6xGk`-ȉz]OO~SDTuR 4Ox'#T] l 5y̺8xTaȳС Tp瞶 $K9\K>89:wO3Bzj>Hm"@+ob,wJ :DŽ o`+Ҵl%4Ym+kñYk*'s` G"9!8!2y;I̮Vh'[: d"#LIa^R(+FZzYIb SM8fS-T+YURM6SU % _ +PJ%ah8w&v]ͮP/yS/ħ'I[c4oCFY\w*z&JZ ,)u?KzoPrUVq9̜mKB6s$]0IIm?ww:P6I Ҷ},%jQٝnމ=v[=kyb":| Y7=zk$a$}{nt5 QpqZ(ΤP#:ܢ~XAas顆ъIPx_SM  .dKwRtز1̝$O%`Q raPGj*Й[|Q>"f+[z(:0sQBWQsGAAO}u^ M!X»wdC;3LPNͳnarJD&$bM*-l1& jח_?0'Ɂ@BLu'KB5t n%[9uTh@[xDu6Zik5p)axsoX|J #+sķTu`S~ESL«upì輥r}Oƒ )YI' =`7΀u7VG=/db귢1a1| ^no NSC~ vg6KWï~!Fm:MC*)B5ާOCj߉ծ߷|Ė4D-KU $`^Kdkȹ3v8Q^ )rl{jq_% >r <&P㎆O)pȑ(hP^zp%<g5H `K ]8pxfZrEC2 䁢4$^» ɨ:UJOj  Ƌn]ޔ I۬_Vg#wZf 4@]1^` NvFzVq0A}h.̖ϟMQ_=_j>6U~ RY[2!- jި`J*Od[*4^ ?$hM/_F?$ݧ9r*Q`-Bblk}/80^)WI`yWאH}bmZ]aWn[܌mոߞPC_Nh$<8WR**`aVNβZ,)o: ԫWL%/v9kEC!I3 n ZڧOռa֭ B֮5 i/C1fo eE׳nd#C0Z,>_qz/1o:X<$;nZQ@e"jSǝ9$hHb` |eV Y$Vq`@'%ho#CPAIeot5/ԏs=Ϩ=>7 G ;=eKP^ϼj86u,I-bx)cIZsc>Zȗee9'9?x*"Uv-ϾL-yl\awy0}i{ޟ猗Ql}ggLt9S%de<;O0b)"S iC7,xx7qM~BH&$mo1et j\{1- ?6;pO+ jusrZO&ͳ͕LfP<֜${' l5/fܹ$=|mܪp͑Fs|Ө]}DŸQɧ{9E#+ƅw_cSC^[XXl;oJV,(c?T1Vyp|E>B Ԃ6iRv/.uxܤ&:`ISt#6wMFiNטo?sL /H*Y')]0Χ T%,`% (}^p|IC x{gWh4 tgqMMZ7=]a/RCڸQ*) hvE>}E}59"[f tKh{,Z@)cW]k]FTP/Q`!ƸW~ A#k' \#a8 Cs1,EqbQKOl wc RK54TNtK%>\I!#ő"y '1ϥ,"":^p4<( vJT׃}!ܹypA3-pN[AfK0y0a~P qUK n S,<ά@7?Ge?FfN3bz8XS,(p|*nJһ zO1 SRm(O<ŚS2/n 9&"V~AWuthPt VVfbԏ[bcQEBx)σ!6&J e.yIO|c(f CDˏ܏u kv;vcU jΒ Mu-4pF|$18匿BE>%g5!ovSykKJ.å^a 3nbЖ}iApyZJ؃ H-*guyB7B@vjE-D˲dk)~n ^#nt}LLAoWv@6X5rZKوp>jZXQ>y%E8 OBs*&mj D7&W_f;6Lgs 3 n olp]nU;Co:Q-AsKD Neo"og` ~:}Ve 5h<ysufzC*å4M}H+BB5g vCVXߗ6_nby+ǁVÓ9Ēި1?Yb\.Rֈd)Q$H OADJLk#rS-^0V3}3s^#@V\;'|k;<| [;؋C_sU5qMÐBY&Q$e~p[dE zI ;]i1M +*3KC=' "{COb3 .?ԭRs,ǧUm Z\sƌqϝQӵŁ&P!chENru ;Ǩ'52 Y^f~Sb7x{red({gyu0f5Z6ѡ7~xojE)7uJZ%$ߥ^ tc!>,G㛜C/8A7(,t=[KAfKoǩ+ycb9{rB6rO1]'HΚIa?)`́0{v}RCI gk0E2Zjq#C3D9r^4 gAG7FFJ(v!!#$\|2Җ%6 ΂=#5Vr57OW30 dIR^TkyZ5˳"\b"ciwbL6?XR$N8T)I,K~dUR[KS"~ktVV hhSSƤ`\GFg=4rnG4aZb-knM TR&DaෙEӝCӃys)kSr+Z@a ox%ž_#/i޼ţ= ')krNIf*Wf,:@Gg|coFː|$!vNmF!Kl}Zym-_4M /VV;60ש}0yߡpP LI4GNaef붷+׹'/dݸAүqu2L;IPN_ HR-އ b'?Xx"qbOJ̘nWvdKϳWbJŗ܌ !RշS.Lv3O k]v[E#}dd|8l铟ߕү, ^dˆcA3M^>U |9}`܅9} NDIOß %Ԓ9#_啕fBH2Ra#ַ;qa)!$i˜tee\9cSM[^ i'&6- ]^*6+,^Gg1/GQ}4e7W-cdtm7f9vH(hE$̏$^,ҬqWk˼aK:(rӈW zvEֿl@D΀Sx@3|%/#C?ā V>{uyڇÚ0Q(u%ټ%z}Ɗ޸|nG^sv WlEe)!k!">*^P gu0vOK.7.!㪟O0K./zz Pb" $Yxk4Dw5E zLx$S ^ڡ<_6sTPN N!ﲪC»=)DD*.\8FgQ~f1E߁Σ;#ȗEzlPki48nٛ! MU@E!bOG9z)Hp S^m ;@@YnϘG!I&YZSc]Ph]EE&A ȅ6Vlt)j0σupl%1cRKϽwaﱪ)I{'Wߞm<T v^R3e DXwcp9V :kLizpC*<|qseM0buIi⻮@4O6^T-NKhdZVd1kUj V: ?@! J})>:1rjJ~Ua4i2DCq.pW{c{PU³H]([ˋ >u,HXPos 3 "N-GfR˷Ͻ/*{'?1k)u;mۣVޡR -n? c s-+$WY:IwBǦC}3W2&{M;Bz0 +$S(JFjy`ѸJ- l#ꑒ]| @''[`IwCll&99%aOl T#!bwpGqJLG]dCU c+ @0zME݆T<}N;,NXqȑN<2Gvɧ5- -˲^(g{S5`=RXpC~ < |8,|?ՠkQ-d9r 35`B\Xm0%t* 4H'7B=n\̠[Ur,эϐQy#8# V%^:$Esa_HC䎨̽]-P>-9zBf"bG1aFYo ;Kk۠R DpH A堰} qkVx#!;5O~n|b3W%ޏMGo$F7W+l3۾i;y ʿ( ~ UZ>_3 pL( b&t|՘+*BjUc/UpC=hVYvLX٥<~OBe`bsu p}fhIAZ{\=m^C'G7Ѻ2Sg5`j;|s(4`*_E(ێ@=,k @C62yՎI!d)^ԒrOs@;PNZݧ\tzA*^c/z3_*UE gq>3hzeH\Y,@?s)gjw9 ?>lO.B<$ocqYY 5J%x6VGt̛˽[nʘL_a2[:-lZg閳2G 9^Jxo^AJ*f5|^`V5ja}S[m\g԰H&kQnBCs7Go&H¿J9nxy| aĔSa\:E׍";qᲝ 6R19n@uZTes~3 1\۲Y2ߊ(J2>uo.<Ţ8}]Ͽ@Y\ ߌ"w=r ,4ZuTތ\Qmb[ jYfDe3)@!~҄=: i֒"-q@mDL`S@".*ɳiѠ_AlSk)8_|!sЄ&Ԗ'"?t'h`ٺF0w!h4.W3n(1O"AL܆ї)CnK.R\}K~rwи8kZ]zX % G8ԟ%Th2G@Ei*7p5!W>ysm5?Jd*)9]} Am;ձO^KA#CU{,2P9M`DY d\m]V-G^A,J=irio Iң,2C3=ir( )G.4x_=,!LX/0#,iΐCFº/Rr kTkҶۢDaV ӚGLD5Ttn.8Z`2@sR'{SmL]7u0%Z"HL:&N.cO3O`aUPPAl)6jNR2T_#:94[=؄c TZߘ)'tibv_Zmdбk/TrGiSKX5,tGJ]248h( nASi 6{w:-('279<9ۨSc 8_noZآj NJ/9sZ+ڛxw CD,X@.z\&#,X&d֔i;1F~ 2{".QZr[ <P|0f>y'QQb']?ꅎ 8 "{E{z{Omge R'- ZθLD0ҫ쯓.<Ζ?} {ZB#+͜4;t2T۱=ϩifF>[^Uu oKF:mX'bz:㗈+7(O^ӟmōlphrXYu4+קL:T!iۧ8yq.o9 l۟`Wv 5w9)mS]/-Ur!Ui&=+HcfV^PW,¦Q QlyOHu T7sؾ[#뜩MnuQ5|+1ͷ1b=۶)D-t"Ckߍc3͹6'd*sr{uf/E `-gkhyQFhDT& 9--dKl-,O7M԰٬o$=/ ϼHSsh^aO/' KMܸW{۟0^x\J!Cw{RA :EYJv?1YgBz}֯3wy1bj6 z,r \{\ NMC0AKRc X5@WWab1pHn䐿SҘKӷ!j.HʖIR@D++ + 5 41^6 }Wj?-6XbCE' *2-R$d, ;}3Ʊ&#ٹ[EHiĂO\ac 587zB(z}_M>2dyEOzh'v:EB3CV2Rݏ`'Tp]0ّ;A@ O䴚mi))$nߵ\n/ Zx}j1eK9gêeքZ;_g(&ۨirrn#˃C٪#+h)G:g"sVM&b8ua|R%+= ˳ Ekt{\`,6C%~ "}!S0WDDf|OK>mrr0 T<]"`;l4jyk3=u0Fq7B?r5w,vGU *b -)_UNC.L7%4.@ab'wnުu2 -Y%3,8wds54QT~bxFtV[B\RrPnȋj& "zM-h;R@@O ^hy/:KdOIǂ2{ΙTW&'n\Mm.,pU;Jua,83ȰӬx)gp{( ,k0F sZ#ܜM i +4b[Nz<[yS# ud1nAU @[wיɀYT KOY^tx*&/AF"T׉޴ҝ;Eeez*twmv5yV2唐( ߂j lYkcWVQǁ5A=R#sn_^.SHLO|^Q&+^͌I&,] q7w.,5?l4U\H9A3qr;=Kǀ^ +@&;i=g/1<4=1Yjb9^uxRlF|dĭ`hl&}-Iy57: (Ŕwe"Ascg&yYxM7 1u2Nߗr3$ @ʊ @ 7jW֘B<\hդDמaX8c @!O5i" :<6RGGi;{" ` _<:Sp|g cрXP~kfi 6nWO/|HTֿk ^(/y21gX ;,;691~"H%Ϗ4+앱*9~㎲1)(#{ގ,oT!BQ5 :" ._,&hӤ ]ap)=ˋ*RS6'S@KuNƒNJ_l[f2v}2ѡ!?0/he"VHmP +-hioLX^>]Sof򺕝նf|HT_i>xaA^$sRe? pZZkBu4W|B7K2ǩrMC[~FBkzwʉOfn +&@_^-mo{NmB'lHp-PL'kָRxVӉ@I.nוּęHEGKU Eo0td*(昘LQ3%7izA  [.ߡ;I ` 'F"ఒ5T!֦4N>q!7$UNmYI6s_mŢ/GzT&ɷANۿ7xA&1ɬ]Ae2Iƚ]3I9S`J~oDzN k2GGRBQxsvSDx1C?%>ㄈ=.PYR kl#ĄDяF ʵeGG)zmn2 x5|[[}5`z9ilWaesmY j2y}4кn<ܩ^3E>A}؎o=Mt=))RaX YeRҰ r6I} as[>}%&R]~z0/"ro)=tbGWq՗T/%3O}QT&›1%C31< $`ѣUMr#D ,>O± }i!X(ZWIz>g"tQ.9j,)'s؁j0 pBZTT;y’#@Xfh&W+"VҬ;4z?¡avvYۋ <{$AB7~S+;GlrMbhS; :¦ sC%=̬j\fMp.:T4k [Z h&ԇ~[ L6Ŗ6{њt>mFqea<ۡ/nlfP`ٓVvz8Nw-`n L!eTH)x I?n˧X,##K|Fdw8$2*j!/(+{k9^Q[Vf=f5crзD^3bYr YVq(`qqdadOkW׆B)nv9(hwĿ݁Φŗ 0rI?g`H+JA. (pF5n< D[`f9׹.inT.軛؜ z` ՜c}Iy"#V._E5@[meՇyȻ|KLJ^!xږ~QfnSdNz c%ch^&XF"&Wb}GU;ˇ b5 9ǟЌJ')"89~8fٸe S4oYn`6u q|<dY^ABD"r%積J{ GA=F1,dn ͤP8uX5xn8;RHV`gG]qDU1pH$'~UskBFAҧm˻ARc)e-4עS YͩJj' {Gơ"<;^"͏<[]Zq%MqGxMő8EvdC3KjL]P"gz{0wYW_Wׇ{hb9^1C 0:j>흒H !U#gBzEhQA+˖˺'MEGcHR6w=k>ӹ .)N֎Xجy:l6`$q/~pT=T"VI>ێiu+Z&R4SUՁԦC&+ WҧP^ HPXv'NUq($n$0}60* GEͲ&l \^q O‘%3/9ilNA3?)v<԰faM9&Dwb2xA: 2F6;Y c쳱lS(p{c^ ҎJy@`L'N [ۗz:bDlhћ _.m*ދ)s.q$p~;.缓?…ӾHZ+B}qt]oPEy.I/f }r MȜɫyzm͸Q=&/E_5Í~l#r{&U ,M" /X">nƔp[$cX[, |&p4 ⹜zINc1 @;]a)U-6/VI\J#VmeOt/]zym[ɬ/10ZCDz=N꿴eSQSW(80{FIث=Q_ٰ:/O1H!FH)mlOE lo2zF[SoL&37&p7َEz@GJVUX8>0?SmGa_)psE1w}`ڜc:Mى+^*iWMr0m "5 o_=B#\s-!XQ;EI)D_NokE|6ȷ5o8y_sĭ@GC,NOC^z4$O y$j=V.p]km'<~ ?ӤP. ө ;Y5Hk~$im~E7L d4_#^IrmNxdA7\q^čmo.~$Gze.%RS?_]zK/u _CҖsBkv%R|enEm"F{fe擕Mi[k@+)Tl]cd}6qjES5P{|bbL":sӺxmŵO9|\ep\BӞUsBq |xeQ^XGS?]0S,灷mӊD𒯗K1o+ǰh_LtȁV A!YgHY[@]4Zx' 4 Fy%%L\dTufiQpU 7 U AO B.Q}ݿcvfD-ἇI>v3uRZ _ PUsWqPTƃ;ضd1Ph/ <7dԷڅ0kfOO?#1p\cjh{9-䎏*d+ 5Zu$+ 8vzT9tұ;'RU0퓘I:-EEI w.cV!rڎSaqcz=6=EKWΜl*<~&Lտ HYFGy qٝ=L@9- zPo.R%0K]-~<̞Q$4`"+} <ﭩ wF-'.F[0$UGӂ(G&tia6iRttۤ4f3ͫ((|UMOP^UGOoׇƨ"PͿTrFenxu@Y/xmq!نDMuLq3&ͼ~SYF8\@`ygD49j?@[RBh9rveL(A$+Nu@ *]wջdNpGmSQ;Ucؓ͠[o6nt+*7#h1S.FCe4} Xw2L+l]~[[.m|1貽009 <ڭnVN³)дdt8W3T7!):qzËĔuj){w##kŐ"EguMap1Dvy -t05bk7m2zX2PM 5mai 77RQֽm{j]?mk7_Sa{s>Z,D﵃XkbrSU0,ew!QHV5-$(H|#qէSRjJR6ƿM8%0Aeh@:>V)%56j)Gsl.A|~2;prN드F_a:Pp`e&SJ9\9,e?i=ȆjB 8, bkC-ƠZE/BV&U*o:Amɗwe0~ m5D%2 &_^KS&&K9vm3sN)DkG<y,*M~wJb v]&|3KΆ_/+EMnfԑ؄VUH Q7v"9X;ͤzFmVtP%.vE`웯ۤXOJb7?b޽c#?ΣktDۍI2O"Jag.~0oa_0L2/ $'X5+: `9Կ*MXT QZ!6N"d"j&6sW=0ljh/bd |Q_u,/c<])E-<m $J궣qyJ'j? `O]ۓGyo~u癮\}nvL 66bGT@Mх{jYvN w>%V,sk10$cYd[a;c(֘sy-è88 /en\7y]Y/c珪.@ba`6|rG:Hay d`o-u0ďDI?EC`pFixKl8dU K+6|U. 3ö*R|/(ag+!]7"~옚0Y.4+kwk4$(ǻ+9Q`r9Os }Lk&cw#^1)mH "jA <ڸ QG.̟UIwRD#FdB7.UE3 M1͙3$֎lf" brqjA췮[> W;Os~Jjگv*M2(iF4<$Օ32h|a',0E:3r_@4a5t-&dUks䙀Y2'9.t6 azxEV3`H#x/bB9j0zǨ̨qX7c8Nc٣1qW_aY"@>$|r 5[3^(umAt8t@-ŏrTdeah9+ByMU M'@>Jej y>?"*56%&6%KzUmqq C` t4+@a#-ـc@Qnحv%Bd)~ʹ <3g,$6 i u0jggX!dr%{` -#GS\/GܭQƒGȨe>.꭫-*6ZGbn aM̮κ5cNn&&Y~i؛P$O ',=-ɽi{l-QS Xi}rihԡ .c^}o&+W1 ]5)zc ܝV"eԕ{U XrO6f*>jϯ5EPru֚i0)l5OZOQyEEmr&O eJ/TQ(C&n˒)-EibHi V{VvP!8ôzY>HI`f1'N|ceTu؊ٴD&CC84&L.!V+ 3/Ǜ3$3ODh_)2R*2w Mxm4Ȳ~yЩh] mH=nd|L,Asq'+wk5.&jX]޹ez gN*Fe17ZlzX]u9/z3!K"+?R(:[9lDYK9*=>Ճe॥\ 7ډZѤA_^9э 5[gu@sJGh {15F VbT߃r,(WJCR;y83q/ \wS S|#ĽDx/inTj|՞N C{4/[KQ?0)߁FV-h> 눀*t d`$} (i/XKr SBVphW4]$@%'Fa*8y eqtЏ~Eχ^B7BXT. {)B^rc3ɟj"MBr|`śTɇPQ/ "˭( 3{=N-9\Ko/G_,kcYr5 ܴ#E S=г+ a0Qlҫ1A@twR ONTJ"kb= 6Um\nYrq`ic-ϴeRi^/a)g`G Ta>hYOQ8 Z̨qaa. sjXPL xrN^W])d ppz Ae]85TJx~X RP P{8$+HR;[r }9~,w.S:GK8a=R‚9u߲ĵ*BG(iQ8?f/b烧6zwA #)7 /uDe,MBθ7" :jM7N_ŹLGQGAnMBAek'}K)ni?W  Gd.&E5;1 Z04b 2PYP0o;FZQ=DOAoVYfy>=V.Dx}OVKO Lyq‹5GI6\yCa?bf! g?xʕ1Uݗ 㩑3w)k،Kh{!duǂݮ- U)꨺/!ixy-<]׽0S'6G@]V?&N%w3{SCA7e/V7>,w&s>0OxսW2,Q-)?*EeOp'Tc* 1 7ޢ =ZlCV![ _m1#$Sȭ7qZbLR@%sNlCD9V{دꉪލn}sk'+䥆 k Zx`C]f) }p+`=6>iGRT< KGҀ?gPJUP?O?@G,Yݬڞ-+q(&~Ӱ: &:y1s=$H n1}Dy-IGSvā+kc{>Nʋ>&C-%NɎ݅nK̪rzՉcLIR&gdǙT6[g0l9DrFNP5܍e6t},%UmvYR2wv{˺ C[}IVW#{5GH'hluE)NR)`@ @6~,,S/Ц3(Ѡ B>BK RXlb~z0I^-x׀%,Nora85B1J^JG{zVl)!) X|²0CL[Tp\=&o{-]Z(f,#N^pLQU-g34g{\ƲTHua@ QeJh"m_/ ^/i3KȦn#atJ2O(LInjwRf2=D栲[o< ©oS5qhV-s9r Qׂgb'H _E"֞Gֵ!>PĢ$}Zbwazr_hG?iXtTmVs5.K% 6a.\ mQ&MKu/+L .FznFK qIewl8^RH,!:>a i#obD^$V *!A1~VE֭0 }+/vX=ND@" vTtcfS+ "Si%߽S gp"~Nr4d 7EF; -$: 3;dW`=ZP!d4f?MW]ëV?;Ԉl&T$6@9;<59 eo&;f[H'€ };|IS{ T !̲ bfّ2R# ZC}++Hb}LL(N3[P7n>f5nC^xN!:]/nڞ/ ЊzٸyJWBmq<޿wub~ݬG| f ֥!?;r_AkP'K}rݱ,,t=IZ" | |]#&=բ^*~fW`d&=4zם=o3d؃1^b~971ܚ4xC8j-Zy`1$:_t)!#K7˛*EhL}W%^`qO(#2紡-7~yC2/*VeMq};ԇhExi1cMt'Y;޶/Ƹ;*ႹsƃkbtD~}rZ$2jEΛ=s~ΊI~gY'8BhLME|.P}߶T ێ |K9f+%YÃSft7tD4dAL!B9_eƃOg FşѥA.ti""Ƀ#\܍I炰عsP~r,:@ 9zD BoBHn}?n &| TW/ YC9t}ܪnxeʀ=jz"|N 7ؑlޡ3ܸT[kyǹW(B }9C)þsHv[I! O.܇F$GۂWcͰ/t?F}< JۧƧZāJ/a(89ygPZwm3ҵmR\wp=ݯGs~H@dUN֫dH’vVFHW"' 6j},ߡ?L3aSJN\&vPԬ˲M!K6J.G c`WWhd؈7|`8YoY^1IL|xy}sԮ}Y8 ɢmU lAfBa/{aPzvP3}4HDu5ꭾ"MqqS(rr8_\268ZFAWy 'd-B$aLO)-2J?A8Oy5 B[[¸"%VMJыxUBmdWSwkZ5c_2+o9`ͳ~H22Z4aWk<; FhkpJ2& Fxω[:§,dv ۔nTw"/$Cre>ΛÀ9Ay[to{փwߑe sy<j̰gᯬ"Kú$xZ[h&f@wXܚKL梺ud'OQIsК0G~8$'u3+D2t*([XVuz_ޣꔇ*>TsKk3z,m974d]w"CMBr B9p3m 2V x8 'U `G9Ee7&0}F(!8 #`A{&IDj~ )')-a;gxu#lnJ|n4ɻ0{)\uuspW}Ϭ{hΕqw#E1ӒSyB$^7 ZLQ*46/IOn YZ1W2qB7>}K!)z u "Y+^&Gy%tgv ydç08b棺UsCpRW_ y1Sܧk՛?UMZ+QPz?b/3Z}j͢veGC3u ?vxނzYB^4frjTYz5x֍c3xHvF8{ak 6{ڥ14L?f} CP7o]/o6Q$Bzrg 0YHi%dk̗FK.x* ͿOz{7:i+ox3`zF Q+=rJp-Uq:MqՏLjz'VՕDyͱi+_j퍜2/e%_^~QiekDI(dt#?MT H349CX r'\C~ /M23 ,%'ŀHBa}/^)AԤrBt)nwrQ{3%Ac*b>Ķʅ)ө W*qʭi[U=#p 8QZEӝPD7d\8&b,t!Թ dY*^p”]"bu0e2O ]Rbx d2-$lf#5s"pHKrZ%$y*msp|3oHLZ:7 V=nɳIF\f@8brZ0!DNN[c0.9 }4 sIbit@7E4' YCGQa-(mxRlMpGeĚ FϐU;{~Y|C]Uy,$qۦv 8V0\&/s[XwTҥ f{RAT^ڿ< ^8wa* ]ٶ;j/eRjdz1}ySrpi3`f=`pI\ހ=7}|o&k6 5U)&`֝n 2G V8w6;IdB*. 7z?PbF+l1~tJ+&) nb F 5"и GY@(ٯ< 3@A7fב,%ku7_)>̓řJ4[{NVEGݜ:YI[]DDl>t_jTvijx;mowz< x$Ht Pxl"&ƈ+r!cJ(oi`ё./ H$%U;<*9co V*!+U5ko[bbﮰ[`MktB[,7/v^[t/u,O~hc#3{|uc(]S `pcMm ˊbͅP6V*t3ڐ&6ϖY)4 e]I6Bd|,x?q4iO7)$NUȿgϬf'[] +oOò3$:cٯ3ȿ/5Jy7ȩoMDEqMHp]$~xڇ,_6|?/Jx1mPJQ),vhe}7l JL%JJ߂ W?M7ԏS{Ƥk}k r&t&rXtc=41p7 U|;R(fS07z녫gکŦV/i, Y9jpK O0Q|>d?Ji{^" jy==v1…c:J-)wѭS' M}o#bb3+:~,ʝс͸U6-&'lH}ЩQ}4u(Db*@cS1 xϰt=ꃾ ٱ@d3KIyy0/*F&$<5 x?8(49wO@<_'C F/كANv@x-][h.2<ܔ>pVqLJZZ Ux -8/TCp&C 7^ocLA TGA| ww?(LtUB-b-'#z]$22ɼ#P;$ƍv an|?^b+A {$Į_C+a] )QL?)GG`I\>(.Ů9]"Op:sp p_d nNex^I a#DMlyի`[cq?J>+K*h&yؿiUM9q(Y~ܬVnis:(UT48rS1ə3پ+%z6^oSRZO?yhzB-rC3{IClt@m}q%ɍ(ht2R;͚N24 OeJV -/*R]WȁTNk躖nӁm[qZX]*:Rٲtm1=oփyXϰj^z&yy#5~QV^K+!ۊߎn1 dQ\m/R߾kˋYw p//x:P쪫q*)e6}yw7c\gVjRΫfmeL㥬8Xo"!KE&e*/>šbV{TFtL}VG{'$%L}𕎃sVҊ*Q#*O%f1kx(Agku`QC;&b?ک NJX#V#yrfApd5Q}ѣyu,qG!X"t( ħğ Gm6H^4ףv̝x_Lս !Ar%wIVhCX5 f݉yv[;@|"f yp'xU !|G)q5/R \z_KXԋE&Z U6m8s=Ǜm-}piU$n4n4K!:_J4d;`+43`G1...*p־D0N0T5brl_ QFۋdgĀH, {< J ͷ_vLP#bDa-\Er,Th3:8`O> ,ڐO@ Kt$\%W=Yo>x$H8uVs@KH4ɠeO44i(4}oIuXh1PZ0? *“~ SXKdY0b3ЖH0ks'5Q.qB)5Yrn  o2T᭤j^1N}PE%Z"Wr\ *{\IWJ)r}= ?Hb=CXc]J}k:i"9o&ԏej"oM۳誔ltKSjWq6E&.:Q͠#K;ws?x_#IP )δV$&j'[' '{rŨ]=ȰT V|Ya R+Т\M ́?[&" ʂ`7ou nè=g>PrɗE2'֭!8ѳbֽ?lVݦ@[ bKrT\͚yS'=Ta2Й 91*̎ww9$ %5s+s*k*$wcܯdѷb7kpgD+,ZmL+ݼf -w߮,!2,BSy NA(d&ĝ݌&hhN H &A`%Hzߘ\#O COP8GIU96wk!0{no=dR")^$<9ּbc0v zsҤdc^۱?N*2Ss1u;zgK0Ps]3)B_Ѷ \e#Zb_i}UZ:7U6Ȅe_<} n;#QP b<|θ2) J44зiɈyRh~c,}atK$;]%Ԗg |'bJHI-S9A'\D]F(+B 4x]o| x"lsp5 2](h&gFۻ"]Qr:bЩ/LaYuvZ;Piyԟ]7,D|Z#87W(T"i"l2#хJOw~a??&yP'IyVHZlÁ8< 37h.OYc|R>#v FSrI#\/p5G>|Js":rCJ,lCYc2" }^?׿j%&`XPG4/W]i75CvkyrRv\3j$;jg D_@r%zNKSD:5v@FzE&FUm,P0Bgydn3 iT]aD@=^Es,wicЊdD8QKkI!leҩϗ'P C֒8停(@&vSrE<Pn/b, g]Wg2z jq(Nޔ^]\^'O*QV-UyjUqG]ȁLtе|9(xC_*l'Tcp{"f%sr ,7~ma]nYʐ|[ Txnج7\}O-3Cq=JMt~t[7z`=5P8uCGȌf[ԋIQhNj-O/#Qe%~D JziO|U~4m*F Y74Iz5E7b"5&+SQn6it N+FK{FZ #d"= b&ӑ jζm&䵀:@Q_N5tq ú"6Y\Re`VCjOlyإaμGT6KtkAhX%C/Ƨ=Pƾ4&⪾N%<*ET8{ 잇UMx;<`+g\[k!DbLs`A%]Y}!PJV8(zB 4Dlngsn d  'McY #U yJCQ曩DKZL'Tfb:갢0Lp+F@@5)읽 G抔H|Hk9Ý4v8ϒ?=M;DžSy@+)7酲2'GąuB;,&]]@͙Z/8>:Ppx>,,<(F!hvlp3K츉 ;%ӽ| F筚~. n}jwIF(*\\&a˹oEkWcrs 8*0%㞴w]9#Si vf[S݄,{N*l@y=YGAK-_s.bf 3dC]>V,X;GR]e S;iW.4T@ZB9E\_qpUr1%^ݨ>[ _J_|Q-LNlӒ nL7jN;RҘQp:fWG2Xk:tpC(/  3ƆA嗣" >Fr]['ܱ^UG$>!Z@Li-Α7M!pL2}Ӄ.%o<>1ƹh:ަoZˌK6xw@?p+25%U<͂rڠd(k꥛T'rlAK\J'uO?$z 9 Fjot-|6jcP;yLT2 h:duV[[nxCmKۗ^{_]SFr0@m, l3TB[*Lk & k`PǞohzzJIrՀZctLyl[q )M|q}v6 \%P}1WALLQŸB4E0oc"-S%h J߾\ Ұ/5mɕЖLomY8l ^ k̏-àYrWW-dG}*'\jiìRFzȞQTp5SftuC$vwl rž/jjDB 9V_j,xjC)- *^ T: eFZ7+Q}/i x껺U׊"8P%Ylw{tyЍngX\ !*+8yK"-Pvg]u{J^05_gM-QAh~ώٮ{Tn#Uj ua@M,$ΐ#Q~ n$iypL !KқBʛqjE~WAy}`3~G H#0?ϨNj3ePjM *tC1A7ǵWOj=f3ID$GX\CTN.zP4+#77q&Տܰz`SXBe{]4| k| i XR9_֗q]F$+ rcW/<W`sW[?~@lKK9L7 )x 8ک}>` ꏲp D:Tlr^_:dv{<` ޲բ0U, dΧ3:p8b^D e<0~-G8ɶep^u,=DQnM&+Ca:5uU]|;,A c!1 #aX _np YnnǦ̱?\<`E8A!6YVkMҬxPX .1'Ha8\ ;Rz/}?Y,DK7z/2ٯ]Y&!do!dCn1h')K6 ~v`Sphws+]#ӃgH4nvX7GBxA hu \AN`E&z|Rʱq:9y݀2-6uQXW@ $Xy]vm`S]mmzSlJXtxs #')ّ?Pn9ƨÒ,ȩ3DXG iyqšySzUInO}֞*U©F!%Es&%PKRI#jCE΄ xJg%!1ئCj U+0cn4-ǔƐߵ&J,B+v=c mX5rd ʲB;r_]qDVoUEEM7JO㘃s]<Ƥ>8ǟO5*y٦ '{Pw7fcHm~JtvVD.CUVO?ѤvҺP 8浸0sy4&) v=#˞R¶ @8VZ &Ad4>QRhLT`l3 Kwm벩Y C {hJsM  JN koI\](+G$87騦Q?o\SmEzrZCVWo3JNjW-SU8#c<46-Uo,dDO亖mTS} ĸM4RwqFc~l xLǴ.liW}̆x>5M* D6$82(h .u`6(<+ A̹ OaѠFjL xs|З>PiW2qh"z u-˨(San y"59W!.nw9ޛ~HGP^S|L9ddG鿅htEPWbFɹQu~@ .U3 H2{gxu5K@񞎈밸/7!|#eI:uq`YK_y!m:4TM K twݲr,q|9آCD5:}FFiAW1Pb.>cb=L=m;]a#Wa 4Sw(] (ߎ0@z wb`,A :pSZJ_  7RETySJʪ)(d#Hx3θ/e9~M{L;mZ+cP$Tll;Գ_F SWWќ=hԬB %5u>v?"gso\=!B~>m8պI}AS}yp^P˜N;‰Ȩ"T2 ma?{|^J;aשRj\eI6O82#*X2, E viּ, %V d=&j7pfNE E>Fe5P˙a6)dYyyb@]Rz}TPQs}D׆s,dfdגor%{D|h* fBLq˷ J"G!SG7N[^¢'4r`G'}17-2,S,)JX@ nC,l>L6t`NCdHwE}\㛕\9 Ib OjkNc-?Fs;);yZi, O`tз d8ċj!cn\rՑ 5iYl_Kő^j^fC痢gUчoY ߳9l3TZ9Z?n*SxE복#R90[vk:letçUi:!qN;+8 d#Zz2u߬ 6!;HqHgw Q䒦 U (TH˝ "XJz oƺtA,9{Z _4+@ 㡇tY:r:{3a+vwKŷZ_{RxhRX틊'iUn#2螯!y9E%G,f=p4c/^0Scf(M]`ot䗎f呂ej#y % Gȍ2/=^4ZCߡ?q @μQq'Ţ{9sfYsMIצߔ*B-k FS /r9g H`b!hl}qQpbY2:Qo5a6(G {\ƷGw^*5ˊ5`U0 zoLqV}wXf r#hvryAzb$Y]#reyY`RO"p&F*!w_>V\X>a*0J˰GۚdK6K[tۢ#C1DNu Vqik e((GC'>:٧Y bT֯ou00b8soE[Ӣ15 &&{o|`a3S+z3ohԣφvØp՚3xӃJAtb0V@ 8-&6[˟fEbݜCV!n@3H@{2[p81[+$>}L6Z`m廊wlVmȲIGLQC~:g\ L"\tׅ !jHPQWK\5KwJ*j4i, L, ;= >?&Ecɰ'4j6\!$jp^Eվ3Hxu fY"YhKqm?}{ {4wę@qe]}3angSl9[dpl\qdE|[(u>-a ^ Y)p1[/%#L=j~O =T,W.r1tM~;'Bo *V5fN*a!d`x !4ֳ5ӷoJYQ_jT8N{>W6Bf$k?O7)Pd `Y'{!qO>>J8> KGT2R'(ܕ j=,Z5e_! vPɭ76 "TT<-@Flk(  T:ni'uP~$(ti-lv1%=#~z*p86g,;N0A8 ni2hU q,q .Ip dT4vkmv8FJխ1QsIޛCKn|{IL,C*bgyNEs'cWG4^qo==Q>&h,^lF9a%0Т{urz*XɯO#F'!])gG1 a~.U:)=Li$/ޒ3~^r^![EMxk1}G_wڮ$dɛ}2+7+j)\MZ8#A u))T׊^+;}d(nh7[*E#cWɡς7W,P\)<TTzBUxLšx='Uh)U'0Wh^](杒S$a-QRd y椐yC1 ą_*|n-XG#P &z{RQs}B v~3R=F%Hg.uavBmNy=$St6hs"Pl37APP<ؤGvH)BZb_:m7AxUa2=:̳ gT!-'u$ꃌ];7p+_,ݲ]1GtBx,xCL_O qv 3FnSqE G/+cvJ^DŠ J>,0H'XJ̶֎|Y/q6N(l;ɛZ=LM:sJ²1 &o:'Af g S-F`Zì5O]xysカ3wЇ(@uٙ=V%EӠno[J$ ݐŎ)%ج*6r"T85|t|kM/kh{j.ɨn|0lrC'x&R&t{Ž^H< NJ3_jh<Bx w@zܬKi H^!Eh_ ̠I~ gEHN?xq ]~X2HdqqhTp3E]SΰGmL j+l6@l]<{W;n`'-Ivv.Iݥ)cs*yڗeQ50]F\Z!\N}hDW>Cw8d+;};o:=o1}j]VZrIm)J۶m2T:߄`qQ_ѥvh`-&, o/Vg]&Ǘx9My>=c߶7>lg*h*{3]#rT!7vj-6y1+Tze@`_*;CqSM  ZekS cKlgZ%BDʧOo9`Ic+y<*\DLMWQd'SO ?0WXS$4N+?[? #P;WnxglbqRϷ&.ؒ%ggѕQ"%|2qVvYRo`{x1pu~rL+3;e}F춀W|F dt. E;(<,|="]w`=W҇*-7m~"ᨹ"E% [XbYa,#p2nu`6dJS v8<]7{Pw "R' pt׎0"7ijթ*A~bAս}⌁)PIӁzUXST7$PtHQ3NmjD.rȹ:՝, N{B=Cy~)gz4 8dLh(Wn'GX51ef `uLKpȎUqpJ `ĊRrgoJϥ=' M`bIlpC >/ԡ Mf+T[k,]'%qz+G^ӟ`'cE*X?6crwAU"io8 nlzb񻫍G3zg$k] ߻۶MN^%kbqȎtUJ+cXRs-,*6* QL.Wgp=iw.F jsi2ߏ3 8@rjqV#&1nRg`hh)mC%M,%tch5ˀ^5SL9{% B )! Nj4(v)A0k }&hUgFD":J=SH^ݶj%vMhT tVJX|>?m,€ϭhND("3IZP'<i uGdqC} AUe}>PmȤ,y4GL߼QXFt#P> &g컾@*F3w`(l?'K|*+0/sVTxdIV/ t8ɋN6@W*+Vؾ0G\\^*5Ui=8:[1 uNA6S1hK> [ߚH_SL<7 IofmZn̄.f.x3% ԒSJå%U H T/@Hiy𹟥BL#͋6(!>QGn/W?礯vcgZHJ#iPx޷hkz,%wc:$ߧRaI;#UBȖ,l!EQ O#)qa"Dm_k]oRh .k*&e"D }V&b#0v6ݳlUTR/cVyl~xs> @̥ۖgdT0$F*)3&^=q}97u&J~ͪDq$uV( f Bl~1y O46pRV0g1]BL 1AW˾yEW@,ubuz(Hq%*D(8`ca6Ѱ_K@hYf}z*l(إN٬Lm&Cp죯=age3햒A p*B̶o OhY4+=:_ºbO+[׋be%h7C3UES ٴSwW0)dȈ]sϲ~?H A[t:_+xq;bx㴨F0Kj / B(a6@4EIlZEZeJ=]2]sdzd2r{ R\]j@T|DW5b0jfOz h@Չ~쓎dSܜm^0Jf+ fPu4 Ƈt"Z/>]s+Bo1"B١>_P Z;́Ȣ>-wjcЛvCU=2G,u7i $.S:5nht'3'C;ē~$ РwM?Ϫ'^\9w]%a-w  qw 4\ %ܮQdU#*K*GNڗ!}`QƏp>-=q*:3aMcaah7Lǒ߰_MxKcwqPؼA.GvsR%V|#X;{9vE񪹚.k5IsfQ?/y/LD`w2 (~f&_ %f'?W2}RXW XhV3; .eUЈc$]S0则9=C Z n^&ߒKĵĒ#o> )qNaO.tb ߙg IGXN"]!a8=Kuȿw~ QߴHBl (|ZuphO*.5N\ 0/7'ç˟B%R8?%<$*ꜨKJ4Or?"8#| 4r0bS,]}2\|0fto 6&"ya g!+VLoNp$(`d;ˋv 0Uș%j֥3-=) ylF<3ێ_eyߵFa?] _ L%O}̖^DAL=vGo\&~VIKe"^FbC>$ Mqs:uAGٴĻ tlgY&ܐ +߹_1BMYN8X BP'yVxt\O?]eThw t3ǩvg2d%{ ,$KΥ uaʓKBF#o+ @Z4p00^oNϞ!!De7Ӹ 4:+H%kٝN$+<rfUN\MޚgHP%U@ / _ O3Pos#NRT*kxSÛ0ya7WLZ6Ab&6lYrOM|jBBA^5&9&՜ȡQ:iޭfiWtY2S87.tܭۀZ~`fo-0@WSNhn(pf0~+L'r0 Q8AE/[^]vOum~̧"]:R0kk2'\wFX_<$Bg8@-u ј*dW]˯ZP'#=@!iHOS%8AϺLsB< nlgOx/Lz򓐽`Yڵ @@̓i%H]XbRAY+lqptrzNlձ. 5Eu:D\.a59+Rmv*ԥޚgy2"ae샬fO;NVsNN7_"17F>*3emC'p]@X&d|KCMd.eR(h'rdN V}1`"At]3 jy;y\4Wvm.V72ѧ*QK&z_Ol8CDxw#6~mbR:iEAʞ˴dG:,pa-Ye ajgmD7^yk,dEE;VKKՃ 3ɫc:+ըu_yLoV}^cX^{8_x&<(IDLJt -*׽wK .vB( JNn"\(0H(lvE rzwA8iK=;7"jѷuXFeV2 Szy7"wz/kKk>=x) bE*}\xQ௦ 1sU}b t"DAԱB{vȢyj4lK eW)RNG8ՙ=dr8-fR%Lmxѣo"Wse*#%0hyozj5HT-M4Y"{Ί|#{W&L*I ciQfqa!M2O` 6(9~87C ;ξkeOqI55%yt/6l,W@c-%棣"* p1}8 ZU \#7HG+̤ێjJcHqcl V-wo**[#f`ZnwGqKU@tffE_)91v_ uvTA4b?WB{l : %"_[9wg.*Ҩ f1Sc- P䙽HQsS0K>g5Nu>o@9pCR;h#0C!NvSz8z}ٳ"xD@7SH4QYѐn|i?_6r^Bj|H0x.vcMZ*ìGHEO}nbMlFf'230f9 vHgX*tK%V[ggr"UAcoTsׯcGQzU--U` -_Z>Px.vSgO8vSS,TQ9 ^!Vx"}x 3.jH0t51h/#Df6iq\J&&X C2pht}@d?^e!*F#zCfC-Fjcɗޯ`PDRYlH-A& !W2s+CrԶG (=aŌ$f8 LI&QjCL. $fV2Ŝ6uB={MPsiz>Mnhftb-i&}f,cske!"`L|$3_0l 6xty dd3*ZOrqneaݢ)7p~!T 8H&͓pn!_Rg("񕥟.S WkЀBE1zœ ^Lß77c_-{[4y ilmCh-L(/6j8dc18CxG,L~6`R(Q@1G+Zl'N1"#y׍t LqCcx"fGI}%P*xU| F\=}iӾnwv:]W 'Tٗ^E2bb]q#h3!'B'[6ݾJۛVkE?Q T>tђa_Т]al4{8+IQugDd"ͼ }4?U4x)&xT.k\(nBWs 8ԭx !ͥ)a{HE(6A" s#M1ÍuqV:o`⃤/YvD-):)N$FGGAO"Rdby[1[<0[#ķ,e׺ө,V"Ml/Du%8 2s7h'ю`YN׫"ѡ'L?IzuJo tW ZX\"߾A-r+QQQq1VU ^C9zi'HFz9up3Z-n; alAUTDA>}\I̎`y[Ya4L 2ȓŽw%KV:kG̶=mqO; } P6U^7~[JKnkX03jJw89a $ʄsi*JJbnڝCIeU1IRIp凞0zC8?s93h5}eNR =+!X7#F=J׈ehpS:\~RZ1$ɼ8!{u**EOupK0OъF&t%`gO^,S4d)mQR{{g-&ZJB5m5ǯslшzayw: un8 [;IY}_v1u]S'Qe AĚEpQ{'yf {Q+S_MT@3~mrԝU") I e\:(AAk`$J&uCzM/Bwȫk\|]D3$G!eFn;n9lonh^06e9mbEnR|b[ FT ;3ӣaRyh2@ۓR(==e\1߉PAG9}F+jS=kDz+o>^EQ@P}LoiW+'Z7u yqH< CK/ch"o},o9w߱[ H+vx鶉:R=9UH-+9g8_S?ִ-"=C]΍fYIA S2SFAҞvPQ w0jiZ+%<9fji9d?fs~B7dH`O)qzVҮMꞀa@l,R7r7gbt+'w$+uKd*%oӵ;9]N4iQl{¶<>@88R|FDB2^] ~DiwGVXsrR(?!#oVһ36^݁1(($kRǨ#QỲDXrtaKlOIgD V!V. 0Nnch9ӊG)ex{X1;S6oJqbX\#.2.FĐ51("T9,b!'9mp_6cGb8E)kYΔ7r^>G*. PoqjJQzij$TO }dq[]nWO(͋Pa|gsI9uhYfPʸI5{ܴcy a86uuhSe?pdj8( I QŎ) Íz.eבxm<,:d>i%,_YVvhJwk3/{2.u8g&*c5b#"v)oWnpGM 8 A[|{#cvTSd,@,=c`,ߓjU`%ömStYZ?3S-NG,N#dlI00î$;fҥD,݊_}X_2p=f.b +_)OЄ0]ùEm1*] NN%k}S7k,:׹ٱ͟vfxLY=w;,$j{oyJ1&a) H>"~.a2ViG[aRsݒ]͢,I=kUl8=K a/@Y,r%O$rOJUw5^ OZ k 4ZBq#6?uVIs_O \"D]xWUy 3wv}&f(GLe}^/A= LsÙUb=4={KuL=|780 p^`5$i+eo:t|90kfx%CS^UM㺹^$̑¾M 9=g[rmY;XQh ٨ec떮@߅ 1@* 䉍VC Jg};v2mIl>ㆿQZ"$Z+;c-?y˅=&ž;gy.m}ZunE,@ yUCDxOpaAƕwWc7" 8WYj>"WŠ.k$= Ϗj9cSØtY5*w,6< XWhY(_uq@{mR͊NUTVco Y"cul8ťaY{׆Q!PTvuKU b e1VtrᏣ+wv3;cݟw/i,/@-ebWwcE.+t0zw#LJP0h&-9YTrTkgqѓAB|kZqxҗ9!f ojS7s u'fa>C&bkrg(GmRkB0( DLi27y,UW}$yB^+m. -l= ~TD34l8@%[a]&y xL|lRP va<@tK?`w+ `ZJ!= ˂pY.B31ǵq=s5o[swѿ/ &+<)WsDB$(oKK"|DkPiXv g>YBN_WCms3\ɶc)/׼a$ݐ'B&pt薦h{0wC4Np`L&0*CJf/, >jD'][|>=~M78wz9JnR$I~ʨJO3$fu[;؂6ӑ>;AzhuZd>/c7`ř?SEvyManfA$T6ss!Ҭqߩ9t,Hkn;V9[}7!M`M60b^aƧ[4>8)?0N8 Nv8\S812蝫. ̟|p&  ؇pya9efVGCHVU%̉$J?4̷D m iR)Bˬ'lĊ9+Jٖ&IOW__/l%e:"$ݣ(Ve~tv?M;Y8y> Ƥ DECAl;l5UMh"߉6A? C쮆j?="XU"zp<-iv8† n]5~-#_-r@H8M.;+:?BGKZd(j會\Ca5g} aXb6<CZ?W!i8Pi >,RKgF/U=KkC>IxDnHq-owg:ė0D͖{sO6͔ls9SjZ54\iU"VަLXTsL+Dwvr6V5'ScEeȍ[vD}U0V:8t>O[Ll_1SÌ:Xr+GS)»r։yMZ-nȂV{23=  J,|Usq7ƂR{p8]Gj$8Ǐٯ%j\w;cpSTg0Qg"^GeFNk# K&Dw_&So2^ݚGfUЗ Vi\ 3|k\߽+[$ mgLk5J$hّ$QO߼)}}B0͜W9q۫"& rlт!r;AGQclZdsv6>(cY0ffI3LW,9z5AgG2A^tBEEnSkզUCwD?Ӑy4 f| Jm006w}]pRن&hKwrIӔ2z>%GoLOaCt o&6{6ƨbƣCn1[2n{4ByT|J1^(FJOrwb+aulʞnҾ:#H5ի:˕D[*Tt hX#d;Sf?= &ugP -hy\s ѥq6 6H3=XE<5I@޷uo_D[屝z]G"+~̭pV#Q8W@`[Ͻ?0jj;0nWDI/o5o?OM!8/˳6xȪSxm0tYtήw>5Imt<–HWdGP=ep瓜OH"\AFj Qċ2.K4I2SjGϬ4:6pEEkb`m 4g"Ϳ#WbbO~C שplWy @vs:l+~k#,)_1 Nx $Uo?E{@#u *ԥ"x=, jw9PNz||H^Ji+6хm25͐lڟ|1GFvȕՅW'gI0unzlz[QHzpTNsn+ 'hE_^:x5ҿ٫:W ef͸?]IV 9@PeuJ$۠DҊEhDu6vu}5떾 R (qN2, z}x8E/uEnk J|W@Ue zíJ 1(3E~_PX#AFM!8(ipIBlrrhP4وQrnNa-Y}CG_PɌ0hu } O|-1ןZ1ENÞb<4U``єk1Pd!J4GKvx3evnTrԽj&^0A9ˇz]ĖVJv6QyWl ]fā]Vr!M[Bx"4ŏ|3\17W2;?ug)1:GTcl~nQ/y qa{#LKH5:xG(/ ̚(KY77H[ ?Z$7qf͋^% T#Xi -J;?CX,_qx ~&:ZO%x&?h|i&*YrX[|PÆxэRR ơK0. vt4e".dȲ= Hj$V%?ؒi"G/t@B JoˉTu>[Dkf^[JE=28ﯹ0D0g/@ ޕ/'_KnF2X6%'ѿ&KsY`8Ğ1KL _ LY 4|I%Bx~%P-WUMkwyp,7W}SQnai/351Ą!| B iJ{+\9-Wm>@ )MyAu¥gmw5yN /N 8vKc("dh{3 ;{=o{=u Pͭm@՞G^0* ;"e+7:xh|hP/wv"AyyTX""h~f*?!~{g(YlF*@oj׼ѳm7~j[m} q92<˻_?)\X;4]b s= .E300:Ѷ.͑Rk<#zgl^ݱ;=B?@#sJQ=6Z/lh=H^5e9/_w9tK? <f+x5;C}k[qj ]&V=Ig XuI-SK x0"wiU\4$9$!gi% kݪm |kJ kMr>[hmTMl\]+3,Uj|~ًV-df2J&޴kR 93nЕǠƺMYl;l% o i,@=n="k-vr &fKt$H,\5T;ᯛ>TFh-0L|K&QK4}۸]̮hWN"4zja0)Bl_n%HY3&B IPI;'K1FA;+2*:&k88Te3zFf3Ե/< !9>R;qޚ[[xv0<#xg bU:8Jf5rX-So@[}g[ՆJO t.p,ф$z ]'~;>ֺ[?%Qk1f~KE8Kaepf3m#]Jta/UHm$؂ W ArM^96p%܎OG^ulquw<5A4axydP@cvn*^`,5SJZ2s8 ,*sN޷ݙ :E3V*_ݩeZv-&Σ\2]Сԫe6`> E8|>0^lN1k3I". V_%0tHi8R/=$`,;p9E#E`n9-x~aY'k"?mLb}d/RLHc 7.WsKY6/k%~Ku#k7kRnCI}ϩ7G{ArudE$M*?߰23('+|̷>3CZfo-'2 ?nnبd 7siZ# ٍo+Nè;?0͜."KAT`e再'P^{@C,k-_O=|]0bwԴlgHi @άթlgsYk(1EOp6;M5aça|S~CdÄ*Ϻ?ཐh~19ފ}lʎ`bg$qo-}a]ϱdx?X[{MΑ AԴ!RK{흝n*"t7{PBi5$E@GHrBፈ~0&40y͓j䢕\q1R(BA:Mc]o68tk[ MRZ}1T==Vkf^~h^q+ԛ#s (E^Tg:±UE2 j@Tͱ0;O]!lHfAm_H__CikYǻ bJ ZbճLBa٨u:p͒Zݗ>:& XD%F v-!H&^[E;mD$BXX ?bur|F`oc>uUп`C?.j"MX aҜVPp>NRqd9 n](qV8}%zmt0eT[ 'y)Rh :ӧI{Z9lϸamtܞ??LOl[kRkwmN#FI#s~e;d 7s0Jr<";V38v?)b /HbIEB1[B0kj焏xOVAYgaIZycBHL!0y2/Q-kW*rBc8DEv2ʩ>Ap4v"dԳ[BJE>-|<5jO .`ME- &/.lI%q A]+n7IkAq).dمoY "!؅q%UzگgjX |$i(십wg S'Vlۖ"vIrax}:djZq(|mUϠfڽIfl&q;ǿss{Ñj3,Rr Re#|L~w @M0\trEP<`dez MBS%0?+xO6  .azcC Q6ȌYgѐ$\*R`94j`0l`Oz)BlmiO昼>B0q0dH~?ũY4}OaC1SovƜʿ5N1^ytLyE@%_кrN͍z* ZCY,EЏ|EHRVȃ˟3ܑƲZޖL_\HuiR}`1C襈oRUKԷg|Lkeqͽ˫2<@c 4N焫U9JENY9*:P$tĭ A sH/;#]>aGYH8x}txZpzweh z*ZWGx(dSn qCA./(/;9KӁLU8Կ`$p7p{.Sܐ'<*&鉽$Y z*R5KG&R1%}@ɞhuSA{&#=Wnqo'8We EvRj1{ g`Ai_Q&;E6D,4`;o'YG#ڟb]EtSOFٸs-LHt:^9}k'72qʩU5oYrso7ɚ soiW^CDWEo V2kɾ]T(F[f Is_MD ~TF^WxH ]VBve P!k/ĽlLWV&.^_o[Ee'[% 2k w]I.:qO4 _H(9&ynpbmf*^rbV~jװDinJf3S {rͬqI7Rf.&I}`^^ђt"رҾY UI/9y]*/A0շPuѻMފ 2h1c!hD^zu̸[&C`kVy Aa89"r0vêZ 9qx ; 5Ӏ @>OjEtёez`'9/Fп*.?.[zM?)6ly_:]N9ccӄ͘1#Y~[S(qpO)UքL=,"cHԣ G0wBLK_u Jw ZDօ UQ<TFԘ޲@w(S?RMӣ&bv@w~'@T=ߑc>d):n?XXca]'' !o2XF޹j@n3+} @ܒC*8+*{^/ e>F{3ᔖ ": > 1^95m)w4brBrl)@ ~:y⩫F7Ǒ* !=E?ڜV/FMґ 7%@#v F P {Mf,$>WPԹp:)|>0qE!M84m"G d7FfTT`b %y. ykg31>鲰zB35 )_ ӹD(nT#~T8`f+SU^2ijSc%|JfSN`6uN^#Jp'jCG o5&l0Ĩ`7|DWPTe:lA([Z4 bdTjv7>H=wXf $|)JHu^@;c/0; "҅%ED,d|8$؟4+#Ҋ/x9LsgdE")4|/7*?\*R 8CT)穯:>,KogXw޾<2X0~h/־aTXIY_>+aƲ 1_Ͳ ق[Uѳy%I4dhw E;=@d~Uq9?-ڮ4s?I)iѳG+*“ۤ dWV} gg:˺_qnmѳ0@3KLhi>ѝAe% Tv&|SB覇ߌ'VҺj;&xdv_Rm!`c7Sg@Pe]tr2Odւۏ!wf9H+2-hrfF?^ڔr=~{R_*fYٵ60s_ZZ NOG=vwcS*j zݏR in ?OFv6kH[S% U*hZJ~dEؔT'72Ń|xT5oM-SuTxh*>Lr ͔M'!rX ?XKF@x F*iZ-8 Nޚ:2Įp]6hb,ϖV 9@b-fp$̌RDsӵ"4d g~T%o SiP^6k aTh(_:%D\/\ODCGd#2>@]9/ijwzF:u8 דIf C| ZN>j; gTmpt 6,HV ;Iٽ4w4 Nr¡H n" z3(~aHfFNެGb?OD KaZ^sMwds5ZaE~n _V= ;C]"ZBQ] 9;PijvMʹcǛcՐ;Ḿͤ|8ElP~uHcW̿ ;޸_3Ӊᕥ}Shof5)edI.yWU㈔%U.)թe`4{,YV{0AT%|eb!cȥEsЄߚR64`P/qlR<.gZ. 2^0:8o{I?]/tQ'f4[^˴wwlC%d굸Ѵ&H}&LNUcK%AXFCb@tI,`_Ɇ $WC>N&ܷi}x0D4DW bgtKWF3WA!"8R!%ZEkTvb5'kwջg(qTzҬ 2j9!3XĦ؆2-= AAk]9<6zZ/*mz<$R?] 81u~2N?1$2,Y0Ĭ.1 MSήQ4zV%FQ/{LW03D{faiS2A[4~9JR*:`N9 Z#{}R?e|]`oxE]ُ9]iJx5Vȩv#:$1n}J_3%> P`E]yrZb1*Ht Dε< ZX+d c pLJ!|k¼zT?/jӑ2֕oicB00j3Z0R/=ك`_!bvB ${ras̿ƞ #K;3"MI±j6Ck{YNC?@|a8Y#_b j%lgR v?l4QB!70&{$C|\;iӳR*C8e[ٕ`*'qiA7Ym8 !l{FZ!@IRb!QrΨ`a*A4yR`m[BbJbve[Վ.#ES8"X]ѿy)? :6?iyL`l^<4Νm%Eh w ((,Z- ͠Yc^,FV' Gza.{war)y@tgXbFj:(QyW;SAGG=cNV[K@$<6:+isyfJ2 s׽8%ϜPpJ4zeٶjrun@#t7qr'ۯIxSo͕wM$ؙ'&g.iwf=!HZux31$Vˁ*mOw(5Z~4 U(5(({tts%xBpgyI{ͤɶxmA@㸏ylu7Ba?G3wy7 mfW7 x!T nC#ϷDm chlɠ\1X |N۸О j <-Nh'Ol{& ȀmL[Dlsw[\CٶQM Po L~? e;7 i'zs2:>ޛw%3ټ%37,|$Wy&xjh%&\i q-qiJ*CUr`7F9"q Y]x2uZ uu;@fi,Ў>3s0Uf]b#c`qۮ_@ lhlLpV[8B9\T_ od4ap,t^U}y}dY="uy q"UmP"+c} EZ妍X*yqq$ײַ3D+@*_Y9*R7[aI+?{٨_^:eAY#x/òՁEpMu3$7M'GE$ҧDZW,X֍H*W#oQp+Uw?SX,w<}: gn#5ps+ ?PBF+#ΊOԬa6ͪYH~?%Y䘍$`1nt:zJzU_Nql3U_?`5^P*-xEό?jΏ):UW3!Q0s_I`Ȍ|RB9+ B7>57@GnSPlig\sKL`# s|;vK*8X[Ҏ 紧RӺZ*ba+R- _%2U .Y<"-HiVck"R(Y60G׼JXpLRZ"G!Fl%k~ѴP'ҔvOװSr7|.X<Y [9})]=r KfcM 3% %{f#-1긝Z )brj,iA-Ͽi(RFTDM$5˴BB&mN3OL/.oSO3ďӳ pV)rp.=?sw-"xo錣06S!@Ӥp[nSbr'jV~,SZ ~A|5> q~~M{ePkJSe6>cc eq$ֺxc;@ "73#=N㭎(z&Q!GrD/$y]uu0`P稷]esN ۷%Y^g0CjƬrTai +wa6 Zx,Q&\*JA6u ! x!kJܼ-/Q' V#_`Q}`Èp\&6\W2XNt4)|w+Զ:V1( F{Ӹ YR%J(Wa]+fmJjQHh{^'lrY-mr_BB >dXLsm K{yIő9G7RDWڑTpkirOnUEwtf\bv1bH.w ( Z'TA YI$qXD(&T % ؇۶! -유=On:zL Wb3%p|zN[̛=:Y,nE$j}W0;M;l۰6 :2eC)}&>m{EfPS7?R#2fQD~?IƯi0/3bQW!ztKA#hI@ ӧ#JNhu%JJ2NKb7oavO"UaSvޜ5uu( "SӗPB< NT}t 9Hy jp* OoU /Vx 04'[n\>U$jMKn"bgj_K`%iNS>暲o)* &pTu꒼(˵!] ;)ZNXVϝ5{vEvUf[ T6_7KAY0X1+ 8qp*? [ү% ݠU!,aUs?in'!=3 GEɟCnviV[|- E>aR$V'<Zh vd$&SL^h,odBt.Xdmŵ< tU#x&LZsS,}^)BX r󼵃yOY, π $a?3jQ4(!xETz.\U7;z yV@GZ?J`DVH>u$>b,y/敥l$Q5rՎA8NHKWs=4E]4P٨\`}k^?Voj7ԾRIR2Bl%ȵq:`9JI>180sZ͞ DbwIM쯚 `Y8 Q6;Tˌ2fwM2:Gfx=J+Y^Z!zUS"y_$԰%@I/yp$}wwW=J/g ?s~LJ3z *ksW3wK1I./wn¿qg]sH 5mZQZ k%>d-򭒚!1T[5."O0썠e糞c3'Ty]aPrE UkYbp+gO.aԀ,#3[zlsDt4">bΛxG!i@6SFpK,}ZxWe9PZ h'dȫL_^hqߑ~R.$ CWe%r㺲6qr8Ho`mQX{D5\GR‰g6*T%}+|{)zFnܧ`*]ȦVܞ))#0(7#ڮ!xEY\[e&'ao^/]&vV<"q[ 1:m HK4?{sUs\"{ 8~dLh%Iկ p+&~enZ>+"Yӆ |%# jUB좌wJONRq` ϑ7L؏d/ˋ3*7B \Ux=.Geaj76`NAtGeswy5!s/)g >[ͺyA4 xK/ -{M40wq2FUR>9xZ ®|MbhvQ6yΉ+6QHx0ޖ}wLu$5]~*+.Vگ6[Q1q06\!S}DHy05(P8Ht9^ 6%EA3wZ&-R] < 3F׷i]_a= I}@{5'5vvߖ=h>^SqS)X BDY"`3`@[R5%Ý/oh~S+bP"X&/-F-@UKE sz[>5 xC=+Ax'/B4ec(Eh1@7Y_,(_s d #drN9Ve!=Mg/ya>a7Vvj=Ͽ;Awj@\3^̇_)vi1݊Ɋ o|#dRUֆTJKn6" l|@%ć3q3铴'UM92t6 ᚼk;x60%pz^It9mvțԄ `L촛\Ne~)Flx멂4hL6m᝭!%`O݈E痧HvΩ歮AoȅAi[%A_L@L%ӶxJ:pnl+#yrν _<727j3-=jQxE)I1~o4`9ophS>*LvQ2 ;P¹d[TݾLBm\=#s8y]HEa"~l}y6ne>cDxj5L5[SP5,XB̮CP\ \x=!O7##`癡 Pg auqLmv8K&>.;a^$ IAI k*' J1wyE hؠ7ԥ^1<|E؃=B9 3в&%5ķ/&=e'˴] lu9v=~m6%ā:hU]^z\wE.Q8)flVfҮ Yl'Yre red,XՌK8GWͧU}-%E >>FdK%yc]*We@ܴHX$8( Р,AEV#o8HK!Kkzl $n^n/BOʱR2#&&8gYNdD.)VnU"^h z>;L<${B]mi/ Tr]D#Hm|aYh<ŻiiYw3љXJFD &(tjzdHlF ](P{jK9gP1|=h%rR[@\*>l+53{za+&5Pvf-jd'^_hOʏ״n{A4ɞ"kMQ0&UԄ#t8M7|'77U%|!5]k =ە6pT|N3f KBzHED8(( ]l0shx IcueFH.fe  ^mzJP4ASz<#3>04~1@T",8r?Hk?*HԲY!#7ōY@ھ3y3k˲CJ'ޟb|׆N4NE@_^%oj=t/d 7FzboRx0A(Up޹WʦMt?^O:µ~dW ^3# lOZ+sjO4|?qX`r"W0VdeP(^όys373z㎸D> 1 Y :5_͌9${0,]Em&u Fz27NLBw}V7=2YiX~#_P(юWa~ai ]LX8󽂢$0-CEqN ˜GES)GAƯ\uAު-=ݘbW|FA@*z{o 8joLP?V}M-dz|?CfFuBS~Iy}hL[&4pvՊQrm n$d+opd6]hTt!hBk$M $1D;̢D?D—qUjVW95x2yZ̺C¨f-rj>l~|:KYˌpqd5W͌va9Of?Q/̐e^k.o\<"Sz>V$/sQ(fo_LI++@Kj*61Y/a:4^j Μ{JڳsW$lDƯL\]8E*COI|2F:Kˀjd߳I*( $NvN9g{yT홝o~ xgP7}1i>69_Zagz l4;ݕ$Trc?235 bg; lpR* Mk5x(U5>-C9k}LPCouQ˜jǂsߐmPk(VrAk%` W4!60Je[ j&ϣ@/LV;+C2N]enbJ}8/]<j\RyV[zrQi#0cfQ~6~,V3?ZN5CcfB| G#^Q1 vp*63A (yRmĜ68;s ӊ·{ Lv2\t`? pގaݷoD?Q>!iAPuRC#080~;kʿ˃_X3W (lpyWY,"ۮ)$9lU"BP%15) e:`9MkfeYNP" _[јh ޖfޝRͼjؗ:Df'^~C,zn\Uy ,tխth{ }(T_nȵb ,rFBȷ`"(sC@IC CoK+@abDT*YEl@}?Bi`mE|q=){jjR>]2~ϴp .̪ s585$OW7JX_%_c|xkayr 7Ӊ9K{=vcy(?G!JWrq|AعK0(c$9ţg1wZ(`C}[֧U9?9hrF' 9_Gk-CtAZ`lX4Zb:ܝ moW ӧ^4G$4m|o:(@z" S}^dh.|&t,yy.?1Q^$|w,\KCbVdhU)ZIXI@:?ĵ̷DdEN1HU8`j l4kqƁqIe}a4Eʔjfns_3/J@`cXΚ.$[;av#MלfѴF3ir6 a""m‘fTSܰ;^q LRsW8m |S~V'R)^MM(wRPqO| /eYKzJi熮u&y!ccj˄lR=BaU#!Xw'koᶓtvVM wC[x]SmJkJ9XL/kƂD;iYl98G(Pbxmı Fڽ[7!7: ViF 5 à"lcd_lʅ]_R@M,B`s M`C2YUTehKO) Ȫr\tc4FAÎKiϢ3՘4)#A4[}> l8V!n n$h)t59uػB9)03(@ܾ?*:Џ ,yk<aw< 6}g[E}%ډjQ1%%yCֲ`t"b-L=04ZDP< wf ˓=?6^[N5ЂH7D >/`8W\|a4ח6r3 3D`LmB d[af܅dd@hj*=hH'DΥ`gO L^ f(dOZ?y_Yh-Hio}[`tIDzdOu8fI 70 "74.U2ktՌA+.WÜ(V;`Lf/p413 mY?:UP4;c Ͻ ~ua98m* )$reSKA|Pc=/ 4@vɻK*U1*d( ]?k2eQ+pPhħI8dx}B" anm=YZa.f%£2KQ_hWH"kچ]4לVL4? n$Bē4uHWb;c9pdT&WZ5њf1<4aV[2='VlX.) PV'oa %iu鰿86abJu0pP.lV v^?vBB2Es) 1Ku%侂=n!zFGq`SY (bw:Pb3aa/xҧLRCzOx\$>?uW>Hܠ\[_|~C%1 {vTu O%y1xm+d=Ԅ3V0I\ҕ]jP3Q ξD_ }H}2)'+B{)X E%Zϊtc,__a )iO3qDcR8{Cu ѨBVUYDb qٓF $OΩ e7n~8D?rz,ԝR5/ +F.CɦU\6ADk @H5$F5qJ6=pYE>N>Y`=6]@+*W >wH;uo "5j;1JT!Gw<#H;ܲ)mOރ,jGJ)/$w>-C$_IڒPڵ.yqBWE17ᘐR\|mj?6^ThPmo$çb$"R;Z W $#; 4 ~"%hRrPGgSzG#ęMAI*6O>>Y}If!/S쵡zLw;,$|ܰD7GA +pcӘJ;c{Eޤ43_Uy8}O8G M! _"b&o}aSήn_[Sf'q.5B `Y |a_{"$ ox,:IgcRlUcDZ=qoKP]RY9É4ͽ8zG@%d}u tZGQd.k} |(]N'zRM˂;ɠZ8idI%iGs"6nuxqD?6}h^s!$ /j#ҳ~u`wyMAtGB6*pؚ~GBt}Kn/T)] S#]jʅ*XAЌ-\a^" L > 0:[/#4OOE{@yh]D!0?")EG+d/6yfNlCsT*(4`F}>=[>a4mW.!(q*3-HU)B6NFː;TG!mtNUܿh@J-n!x~mÓ" {7C,WqB֊3ʺFtdT[< 9=QU&J-nc`:E`㵧P?JFFSҍs`"*}mE!V](bHՈEإ%uz j]ūgz/SG.mZ!\ި(x C _ؚ]is>Dt>ZzB(諄[%:(7B+M+^]hWwes['J&Ƀq =/̺4?wG3+UL,onPևlkߙ~)?|Z`\R| adeAGl=P>#xZ1_E&qBv$~a6xf8D=hAJ(k\ozE')#dzP6vdzx~z †ilѫ:bHFU*9i#zzM<x-[J@L"5ʶPW^;v ϣЊ!x3cE=OeuxŰ޴Xt}Ő֡CkX.BB(L'A@< P Mí1QYຖ.v؆&l)5bAx8heDrT; q6-C򥧯qK$Ӕ gI . q QQDZ+&Ir8Z=}$aA8GCCZK9D/QT!m=HV5B#}{^k;AsVgb"]1]b(l,5FD!o܁OkpDjŧSoXI&8B^ +\sвz=wK+!k@L"O5T}rpMm-Hێ@]vVl`slQH$Ka @zxDzZjΠ.#٦ܑz wjls ڂ]SbIFhS%Cfoo99gJ<.KF9O6Y?]u֖ j!8q95}קWdHyDh!n5&i֕Z)P$ϤB/0M'+:'O:復({)|&Gd 袶™|,>Q,9Ö.kh { pO1ֈ`j5&],؟dA[N  8_ L <drUD6 VsFA)`MH_z&?g^ij޴<WԨh ؓ{֊Y';R0$P;0 /+۞[^VK"=Ps1uh40EScׇfW[7Iy~*m?l2FH7PE)_;{۶"ߑa1[]%9(Y?Uqhi}eG+MdM"gZ4PgdZ\.~ZW*$_}TK0yʻQT0;D}V#kw5Q =K$/:zd4)KjiVYF&jRx.z#uَqbj`aPNtpW`ܠSW{"Dĕ\h]i>|3 P62iU>`T&/d)0rр$;f $靅[Eԅl /inIm}BGZ/IF%ucOܝn_DDcW^VmL CCKǛ.|-[N;qxgL5iد}cJnTK1,8tQsaP%l)r=3अJ\mp5 ,׺۬>o(p/ShEM;Y f.(Б3%qܻ7Ֆ1}Ɔ-# (pSEyNNS!80\X1GT4'{:sz=ru!3$.U5d$ q ԝF_ zթ4f9X#6w sTXKeF_quPv~ ( KNzW_[2Lk >?BR7^}J脇&z.݀ FT<,pGn`Fn: =jHr4|]֢ lr&JQ b.#1g}K%n܀^8E|eJ F3^B*:I(H7 j^}],M"p@)#/iƑ).̊`A%ۨjA~4SXNUI^͢G | 2gߩtD˛&zy|=Z]Emmӛ0m-{I+.6`xa^p" "iДGqVj} LeIKnJk4K- ڲVM.MWH\Ou϶YS>W7|c ȆS4TD;WJğtń!?n#6)>_چ91ھ&*l79NNOP$XUwXQ%`.|~Jdϡ,?ωVЙ$[;V~ZTN?q߃ʪ0W,SauHD:v) 'q:*838 а04Q4~݃z]798(:2u-ՒSNaN"7"-8h/)A[A[1h,iԮ q#WK4X艺`1C_m\!dādk:h&Xpaz7S 2]ܺIv~;^N| # UBr1/ݯW +j(K8}?ֿ 5^1<| 4M5b:D$Aq]<53f B7}Ow+SUo55Bu^ֲ)uA\@~lհoB30@E;d DOAA]%>n$LޥvSNqlg;d9PImvVlvtk5b2O1 4\B,7)ы/fإ,Le|0ՍNki@$l2v^%-)3q4.:p-h/LḾ𐥏Ѻ4vs8tӊMud*٨g(%U꼆8dumD @CFh^zb >z`ރ8:20qzB_Gm1.]ã%/ nE Tr;kUW]åBߥB٩Q(uJ$R\9|dCA>}N-[Kq%Fx;Gmc.1vt0/2^8GpQJ2_U:aZhDoc,dZHJ\VM0,]QuLς ʘ`/UvUcRmpJ Fpv<f3߳^fW,)UpprVNo9 HciJobͧm-yQw%T4@0-OTkɝKח \g^D*Vu6 dv&eJGDVe2fQ~$K@5y}4qֆ9#w|2ED4LGa8 ,3KŐ>!dIs5ܮpDŽ$# ǠmPq P`F)1stJXb192V2ӑЊM;|wC(r:p^ Anҗ=qV䀟}|$L̋Ks4 \@)[qfX>('87} :s+ ;CL: :@my? K(ɘ<A`ɜqj}WQ}8;XL2:E!>Ymm^@dPyz '>WKЃ~G0`yHQKi*w}/~WEIIM0a=@_}ӹ\[_7hVE0K E<ɭGs;;y2_;?YƄiΆ*t%'Nmx2v2iWU$߲i&"u,EgΪIȊ{+2d `튙p^@C: w^8Y dydzE l0ϸ,7h0\5q6&rd8^6*w)gR.`ox8; %(G?LvA?FE6PyDo*kco7/dK.xp YJ)28~]q aX[\BX`L|憇GiMp֋|IIyM}O=KSysmPg:;v8^ ѐ3iw.YMٖi‹5&EM:i`<Ƹ9Ӓ0#ir@(]i:)D8& qEnDBlAZ2h|E 3|ஓ=RkQw P32kAߙQ룯<\Mpx= 5-cY1d]?n998^͔>pb+1t-;vU97bz*AM;8m.R0g3 ^cSJdmjXt\J4;]~~z9rKCBEt:dшj!+\Q!0ڈ7' ̹$˗G4GI!&R}#un5lv#ĒI[㓻#.?H'uY'"QP/d҄{}憕܀7s*.2ns&*Lx Ot79E0Z6:_=ϛ~.AaUsW\]u[м&^*rdB8x)65='VDٞس/ZKF4!8d'@,HWR<0b4==T3 ڃݼy˩] ̠K6<*;C_;E1nMt|&#.N#w6X/YOyOb4jz|>hp` zޛ0nr6G4I7L5`*[ڂἚo[IdĊdwvN YIj&l!8&C>99k.3ˮQT,e]r n~atnML}=> vR־J9҈JIT$XNʥDa3k'̮ D mJea;#wlΎt\? `7.7q.-⣿EMz=Nɲ^+FR}ovRv\ XpAGښ컧&3}v"[hsK6߷DY ]#Ǣ,MDa9d`?Gn}:XKSlغ{v֎pHe/y']^ve|Vÿ- nlbxt7>9jjjr9ڡq Pj=IOn<2RF`cgz}d'b8&Akkȩ '(}gcfNS'Sn73EqZ3 /QcfK&z^spCTӖEZ8[?w ̗r6+c_h)؜vD[e1祇ǣ4ZW5uvbRò r/A2-}NK44s2{:='.}ԇ}(|N,tsȔcccjo*ڷD6}S{i=$n2=[7??c<㗫 M"IlS̕5IO67a"4ߡSGTbsKYm ygGaE%4[cw_7J26&iaLpo: nEGPd@CNȎ2lޅӂČ @6 X㢐 e@G?p$z!C ]sg%**/4"(oY_ ],_=5a`)UI/! nIsf>or,kf%1VEk?HX㌧eX'kqNV)DX &F2dE53fDxG8S:(7}`Ux c[2eT^$p8UwCh;XAcm1ܖ*dȚ7tܼi)Jf5my=#X#Y+mvXH&9Ͽǂ!e~*1f>f.L$%Z Y/={>[$bY4/.J1'&-&0 ̺6VE1m-s'}LM'SnՈp-ЧHمV2|;1}‘Y} 'd؞v6KS].{/xP ,`H\h-ouD v?(/>ҩ9(hRlf  C}ML^?~w'd{Ls4>˛䅟K^;sO%{F\~C* 4IAst_Ր=ctyY}Ĕ|A '(;+[R rb?L <6iK^:˙@(@yP; ^X6E$iҋUG^1+$|L?PqwR12/==\fه@zeO*R#IL%Z5O\΅Tj4͗d|l[P}Q})wz9i!zk 6| Th2_ԎB>Lk#xtH6WfE^Į}%p$>]P7t!:>+A! #vë@r &g Z~opB}wӂkׁdnm'hV+hVYIɕˇ*rM@SŮAnOr{[c }tΔJ[C;Ԧ`F JEͯ|pwsM69 H<]-G~)9ަ>E XnIEEAQvK்|8sF9N"Y0ąp]4IWĤf㺬ɵ?ִ~`RlI2}N"#-7JZ{݃C(v6)o%% , S9=3f#W%ϗ2l,UyM@YgRBI6)S{կ7Nb }2MATaL;W+ r̽ci[L Re G9X0$Q+| u7O?h nLuJ=~)"ڽ$(";3V1ntdhf ms T}j|օ_m1N_܃{&33o=|QY PXY>u/Jﺆ$~˔`zFX'. Th.Z`3ɷK sF7KֿiRaۘ,^|#/uCt,>=P9Z`JSʑg%rm2t| ۵]AӼuGwr%Q2 p7NB$3dDX*{o&x[Gs0 Wշ;֍p~SJLs8.123]ybwK#2MF 8vjIeԜ{ h-asqz#_H2/X.issA#VJέRɇ%|q׺&w_$rVFp7cx=$ev\I̭)\v93'T8օϔt9lZ/X;a#XU*tteFvS(]Kt`p oa.r "AEOȨbėtm^m{{4<1|D;RU[vnyHT%:pgA`/ ߷ I"n9v/(SUb Hٹ7xon!fp//kU4#\{iRDpݰ P EXP@~\=+ u|$p@AiAEdզ=/fViӫu?9!x%v5etu@Ņ[)iY - 2pr\D¾,3Ԧ͍Od\L8pǹgu@:P y|whiJKl~MX_Iy r8t_N`͵7ySJ x׊NRϠ+**|}EUUqРQlj˨{u_BwL7-ӷͤ(Oz(#u:0#\N٩*(_x *D8~`q:{A煚ÏiXz٠ha (@ԝ)J)¤%7u?wlYG4eB3a!w͋-شvj߱>j@Nz7t$SjLydYBd]r):% #B4ZR)4Xyξ$ZNARxe?'|zAVq6:4̫ˤ4F\uк3Xtx`<Ñ.T/(.2-U/Y7j.@vA^!"6Y$M/ޟ\,"|P(lx0Tw~0mUβe;~daęguZxIʤ?{jP"ɚ y:t,E (=~y¥;!kaHY&;~3:3petC(>1c hI}GyRÀ+siD9Iҹl ^> --g.?DG#%Pߌ}HvQٝ`19z^<}rLȝoZoW⮸>D9pU>4 dB4WhE"ݨOf* rP/QeTW4Vep ƙH5ėҖ(ȝљp 1eRf\էd$ _DhG'*o(dʎ>"zSr9%'b#7 y`+WAq.!]i#=2({UpHL s4m|[+]>B8^:FppO%82σ*'De`?Z޹[q[U3O )sXNLbV WcTszs5<jXqa _Jh<)8)^C*h쭍w*T֡s JIfz _<"'I *}Xm}"}oBt &'M8ݶ0$_h#RtPxcpfݲupn<1~Ha B {2q?Hqg?e*4é,-`S#k.PA:"˖ZhRıTaۡ&m_k HJ;y6w/E=MndςYm,=dx>yʙ߽D;G7L!ㅜya7lp9s[]93馉?h{(͊|6 <K=%SSmI~~6Fa88j/Ctt#&FO(<,p9&Yx(\yGj( $M>N I[ƏVD.&#OPθ6 [z"*> f.a3(QFzIA/0QDܕO8xQҽ˚cfsImVD☨Sm[vTD}^`=gʹ[SPeh).?B}1B0LkZL@?UA@bpyuvV6W^=MZ} \Ar87䘚^,v1fO <,@W޳B(bhXEOz&(nM]JV t`E f eA4$CD k7eɲ]0S/ث[o Y%EI!" q7'{zb$&P>o?!1Ÿ|uhr[x*̕Gt.vFs}Ue; Z؅o5<1+5ATnUBӒ941@1|ꍛ~6X'{— !VF 7*[QU!9E&[sVk! `1rɂC x,}{g3v 6fo\8Qo,뛂ⲍhM`T>:h`E^kdYYxJ-0q@DJmL! }SԁCtQ}Y!6MVyI[_" yVa,bu^%(Ԭ]r-Vwߣ1AW#r(gR=PR;܈n^qo0;8jU6Q0Ul+`+ ycb}cO:n|]"D!=$5%ϓ2)=Cwx>#Drwbż%})J:As<A}z8N2}hm[VJae gIFZ,-Xgchl8sR}`XR) ,j[obUO 6/mKzʇ/;MFlQ  Zz2.6]e~|^cے/s%G|7AcKC_`m "Zz{ڶVmi}!d4EAv I?g2L|UӉ 0:Eԋ^\ 5]ڦb:HgG>}WZ ڔ5fͨ {_W.XGDhCSziSoUX 6Kfm$ ]L#FB&.."E+Agq't?R'6Iy1F.L:m~Ed)AtP/MV-mOM5fz;y(Q@-w~k ރs[]WXPcAO D-'(RE#o &j#cD |%F#MC|tLىWq̦2kztLPb;upu*FofGQ;m)+>Jxe'<*A"+i7A6noJB4^H5te^wʤ_,c[;ɟe6]+e)]++) =p6srB0rpKK=r}I;&|\fwQJdMAǖt1IrrXhz,,޿rfǕ"X榜gQ\2G]mOH\@'{J4tp;&t_񐸚%>8Q5ŗT v Uס 8 DCkZm۶ X~nt RxGWf-!v 6kGEK)._:\ e Q9I凕EJ[0alBa(Hj02EILe13 }vaJ:~aZl,Q`CF( =wr4Yl ꑟ)d[+: )#54y)1K$ls\W ^=7kFJ笍~Gd#pqh½f~lb!譁p讧"#6xW^8)7A עYСˁEeQ7!]ARZ.[Rۣ7sڵOL lJa⹴p]0yY.kicdEHE:})n;kPǜd%d06x4E}+YgQě >u@:pMe0ܴrP؟{H!6pM Sz⽹>t"]#ƲS0ȟLC:CwNC(Xo[zIo=14bUi u5%8q%k)vv@+p+i#鯩< ̩ 9Xets|Io)7#G ,ief|20#p+"Hx#u _ o {kU%[Bj:L.B#4)L,61-Yj} DuF= . Q9[#9 fnd Kg^^"|f4aT\obRPL$K"fSO ٠wM{ņhܮq[/ h$mu W]rУdGe@I3"{.,N}>U7ͺHڼArٽ0sk)H0"z2#B;CFDT;"$~z X[a*0'*z_uC밗<#=abg13߽]D~QFx5v\b!>e._zQcv:Ϟ-a4^L0i-YԛbOMfƤ$L)h-Fy-q_{oPW&9jzB 7dKװSZ ҹX茍WӮr5[~'YV;08 OyiGhFu$ rگ3~E93"6V'ˠg߫*|LrWDsa0YyiPlpB7퉴&$b+Q8ԣAJKi: T3MS2*`KI"f&a1Q [cq Ab"3fC ;73, [FEagm D/c]pC'\Snr E>\vj_B=\g#텭O ,ꮨIC@^7|jFB#Wx|Op\֙V=5sVUc/ETc-:w:>nTz{qA*L /$B%~ 4Jm,pXfV i 5&W1:K$ƥ5Ci:d&Io!E8l똗kcƼ&{^}̢Ɋ0x%"k7#1.]:p\_N _QBLk%lG]?ԕ)'bn/XC <vL[ZaU͛7Hr)WY"ǎQ}i?tEYTC˞tF!-aX1 gq;_rmR0]'cM$N=%i|Yf>.Z<0N,T45DbRBQP[M#AZ x6&t?Pg5A"׍ft~b=S]1Zl81bB%XٽfGoN5{k [݋FE*C95j̵6r3r`s\mg=sPng{j9$ycdܕ- i.I«F\%UuGU) OL-\VJ)"lJ2*#,x3`h DܡZ*tL)Ҵ6;Nd1QRp0C9u WQ e`$<6HtR;~%]L>cBhhVOzBF2RԆ͟\z0gIQּ.~zQv]1&jSDXRIvpHMbGG&Ms@"o|ի_)x-DF A@<*Erɫ{pJ԰w? ^*.PDT%kd)အ0 ,_0W?'ln" ?I&fC侀NPL$m2*b(^=ͬ-;7eF϶hƇ'%ܲa^AtkԈjx+d“tQBMPMorJ r_>>}U8ڹ ?roÛz4/Fաls~9^9MGH:S򍪳V9E {_"Oa,0u-{U ٫v`AP]"47uw78޴ܬDb(5{f8 F=J =@N-.#7D wX%| H*mpʈLY&< Mєo9Z۞!Ț2n:{T\FY3zHa]-Ƨ#KUR>NS E; #[@˩SgzU6f|"co=lQ8 Al s©R(()yx7_8ڝpTE(bQ9f R:z\X B>?ʹLW$*G٤m iʈ%{] RxKs%!9Ns/EX|X:$vы k>dL;v9,2ǞT,6ށb2rnptݓ4ߵ4>RWGq)h%bL P&4({Ԍ)+%3bF"Qg:͟Bdu%|]H=Fo0{ Srtp(+#GJ{?!ȡbC4eJį/}.+Jl)K(1PRt%+Rmg-7mG>'B_3m! =Z5n&FQo}5g A? Tl<>X.1j*@vj*16{'s49赁{37+*A^xRƹ@HlHJ; Y4p2w.lZI޷U, ySM h*-=^ NÀx0U9\J6a5Ku<ʃ{p tZXp5479|mh=Q wB9b`l*#9Ѵ WoA-mu(dphͬ=37}[3C?YNϭw63cjՖJa ff,UQ:rF&6Q=uS0BVa/LvC$pk+Ym >z45i9ybQ Swnv%*(*< Qӆgx56I3I{e/w4j  pC%_#~ ""'ITܛw5dX}@4-*ufÀпX(%dXI`PxuGyUJ 0}H5op1Rgy_؛E64l%  Ic*,J (Ĺ*ޛDrÆOBkǰ%pQs0/0vf9c6y13;Tx;mj{ZGu8mjs9ɘDBL>j1RN$$wGOӁsNiI'f_SOU b!5p7FC \b` Wյm)yzےQrgsc-k .*b~<.tk@ˏTxe.q&g YuEs:RexP11J+㽷"a9'G,m-qfbUKѰQUdC>Ԭ@O4ITKTq++49ߝ3'h[1]A[Z0Zoo]_J t>!"f XF?NPUYd<O d.:kw<8jm VϼqS6Mѓx}S5(/.?M׻(<3A+Ms Hh0woZ([ |<{;=" ĉ0W 䀕jqwG|U:7,qm5v޸xEkQ)z4,0z 4 v_&~j CBO*O!(KD6[m!6*z8X^"uiQak݋ll v./MIYh~H,۠K[[+4_nv|:a"(4H1Wߵg]5'4^FP貖ǹ+afUW/X毇T%*7NGQ@lm'{8=Jy(Tbc:))a޺hi"_AWB%ǫgcm\iOt0}!ƛKr[ N{e:8sSmQqj%عMRjI٩QIRmDJVƀ*}NFÑl$[,Dq_spZcx.Rsv#BH+t.}CB_>٠ T=li(puCY[^ DcуKV]ږ;Ђ,aϴUh,V%/0+ER~WLφĐH_Tg0®›yBX q6=>]f`6YS{s::%MC5@z_*Npq4'J {[D:䈀75Q^Oy=}Z<ckTJ# v;8n ԭ=HaW=,CsoYfhl}&LqhL9̖]}b%T+͍i},47e8R\e-4pṅzнi<ԁBLdbH[rLn& ȗՃdKA{'U 3hkcK #PF9T `{Mvnq^|kv'SsO+ ']z^ 3v2jI8ɂB$לNVPIf/0?ڒ:QI{$viC923I}2h7ItlwOtb2nၚ=q/M,fڟJB~<#le"m{a=X&K?[tso^8&6*HUutzob0k}h : @abn/*ZLT[dy9ď ($2qwVTi[:; Nǵ* Oe˵-܈alT e}I4{M?s!Gm{M>ʀ=[侾(؃2XU z8nw-@֍@#Ӑ=E,OEޕ<_qBjEyr#ՌG x?~KEE/29n:uEQw9"/V?Q5F18-tᵯC&PqBe>RgiU/'_.SlSCY`%)CϼI>O>=i'|iW%.4d2H)iފZMMAtg6K{ׁn1v2jsl$´zC:zĢZFĽA_}*^wMDH$]꽮$pg.i&4?4K٫q#)q QQ* ZҮW K^uy[+Jj5PMS1@ eu,Ђ)m9m1/"pRׯƫ;qfJN3N'ߏk(J*#Fie:;^v5WqNm`wsnS:ϔdCWD4Ӝ\?X̏@ի}ټ:pT>wK} N$! KXs]g7< MuiVcֻ$f`)hO5ՁB{zy %V2 TTpLoi0j+' --alhTz-KտJx%O)`fS&"RpNrN1 5r1 =֓DB_nCRⱕf%}'mƕ(i,+Kxס $|IMigAwWO;C9?H,"%z͋;] [\H [ȧHM2su1+* K]̺n4ZyǪ_jvŚ"㉎q}f5Nd￱dFLpZ-1lm5:h_{~-.^q8; V>a$%4L-\idAZ^ص?R.4Xu%h\w)ʈԠhiga9E y>=\Y{#0A9e[qr& `iLI@hSUtRVB89еQ~W5hd%H'y&7V~Q%EQ jaO6kN)QPCE=Tq/)T>Tofhji,lK%ו/P肸u%s[u?ԩ_ Hq?8{ @qI_E0V4ϱY<..<$=Ht͉ )d-/|o2IEp!T3Yۇ]! Z J[=㟱xQzإ̍"J1DaiNjPuԤ7|@7:[Sgp$tK1ĴfVM<00tdC. :Y߂(* bH<6=i ԃ'VuSemܽ]=[`-ni*οsꫀo'ύNiՅ czO`3Ed[K* woXME4E7]Eu3 Pn:[$ ]6BA$h%Pk9.?A+2C.ۖTyMCr7nA=xt< Z|{a7piV7\s AI$1R@ 2RR3@çpu6A n-|fVq/>So@KM# όԂTwNMePꙈMĢqSZww}MI[#WvC&i##á_øN8*nӥgdt6i%:p1ԍs{c<ʚ>fxܔ(yY a+ 440Q*]2K brMNڪSZ lzJjTfuL Aoe NwVZX2J:0ڸyV[Z 4Bm@I۟:SتM~4'i1j3w{'2W$?ͲX>6P&FL2Dq M-|VJ"k2EN"L z:Ŧ$Lq6V̛EoZ*UV U\k]HS Hr @(t"W_dtP~ aتk ʈCnkB=ޒ ήDBpPt~; .gj#YkͳT :NڢN3$uĦel) 2h#3|l0gL՝G*x,WU/ޝw@&{SÄ YWqWF# {:Ic!WJK*W\b]BG ":?y($m'MMf=~i,OdHjqx~[KV=Z-Z uQ ؊]bH61rJt;defAw;L^uGkA@FaqZ;*(Ci+N#s ~QF2m%I'.vq%6f"?[0m[p%ZD!h :EY$Nq*ZE\l#sd^fLlL殏-ԑ$@A%oWȰD1@ݬo5xIS,$ p_G?2F0NAL(4y%'m!DLLٖ}Q6R R94|[h=%|Ɨ10D\D ЦI^|x`Q"'>]GۃtB3AQP^uS\ iw]I|yȗ<6ta_ e 3yDt\Ǝje5'{ <+„o.~&-ZAlDEmT2C-6Q;58ls3 ^VYX$]bgxTl݂ &vjߥxĵa0Z^.f9P%t%Z83QCymhG0Yu[(jE ap-gL! K7w>rC['wp}+CQZ.ݩ7(*l58Ok45SoaͲMr+kC{R``K)9V˽M)7b l( poGYuj2f olcfQAvp^1=|#$԰_4(V3H}1t͝O=+u/Eˀya }.r@\ܟA $oÓDILn<+cs[g :N$uB@rVeh̀.]{7^g#H OE"zP*q W1;[0QD9ukkTqY\RzLt5OKccLT-Z:&I`).oekuH[53"(o٭jxу['r"gPD0_pJ@IH`g"Mil^ofWښ )a!0auth{-f^00(&A7(x uQ)Z7u) ~h;oc():ȗ9_N!p_S3>u?hxtjtӆs4xFhay.]EE)J$n>ϵUiЕ)#\mX^-d:g>?4Una ?ϳ=C22ɂ"Phb83^=! \h 3VSBsF2C Ȏbl¥'ZQ0[fɒh41%[{j_BFq9St)ag.5#*17*CF1V*{)nO`7a~j0m`gIM}J?pI/J9U~*Di{Kw u?\pF? -j8DAjp<\!2YSZei $wkN ZuHYǦ8f48 %,B/U\{;;[>yCU`EFk%qa8v`xVo_q?NePr%4f SUff 4Xwܐ`X FS@w4 &#@נ׊-1@v8L]Z~ XK[rP<#+=['KQ~jLTqfóP-f76=|%K0M Ϫ wH*YfLqRoL_QsHnEG7'a 8Qpǜf.ăcLɐ&ג%CP, 2^<2Փ3ECua7a>8.GM Qf5nOP_aJX^)pbF+LkFߔ=t4εC+y΂eN4C񮗎9:;`ŞFZ[kE-B0AIiRAiBttmWU'çA _#ҳ+X+~6ioےEXu`5m`pEizI6n0 &ԭec2NcױXAY`Bҗ<Ŋ/~v},GP ^7`#ܬRP Yo3^$݌,a<Aj/OUSfI)f _:,q"`]˱>'++Y|Ɵ^X%]^{!{egJ֕Zx4TT ٯh-KOփ11k<~9_!$zVOB:}ʉ@k^JOVTs`f)r@9赡)ZџkVSLIHO,L'*}'";{=| sn+Cx9{ #SIJR/\XC6JÜg/;D3;WnDqCGv?ɍ+i4 jI}>Mw>52O#:q7q08TK,ּt(>7Y9͒iho+v\T1DŽ[xHe̓B{>;ɱ?X5T>rN UbsnyLjvvvp-C,~*bP`\qJu)nEѣəזw Ow>2k''0X4y&:ҖeOG^޽# F%$vZGɤֽ鳸sIc#' dTg_% w̪m+ގ0?[_j/&Enwmhe^4nlͩœ4XՌZ/ fKG|^hU13i5f2Yr;Ii %oJ)ZW0' *2^z:i8z)B ~ ЫrjĈX&4طI7oVeQ8Y' 'p/'48>y+ T`.)jrۮZV<+T0/0֣`RQg'Cl̠Ԓb ֗eż)im*iD3P.®s(],iӈ"m1Ži8lg [.z!`%qzuPO|H14Կow%⳴y'(2նQ+unr#5sx@|KcmL JΊUS|vB ^.( չãX,[,=I1$aZTo\Oѱ>J(t.Az؋LW%|>X+6<(&1da _n !j+ q$ӭy_Mw{_Corq6VcᏢnjH.pC+r5\gTJMSZ~,LDžG,&kk?AK3¨ȂWoL~zMcH@bYՀbH|B '$6]ځJ'YLdoNPH7Ac~L& :&_sﶦ0\ Vd16cO f78(<ڕ/KP 9 l#ӕjG<3qOdϡ@?.W/ERؒP4T|̋axf 3-!voŕd,#^vY,G|]`ԮtZsʔɬGQk$J}l<cRh;aӒD,m 癣u05%Y"sW[Le͖Gu@M~_b=#l+ dK+\kpfa)Hu5 ǮbѥA ݪ̽dkZTKzm0R RtM$Abd&̯TZ;wBab2 {»{9Ž9/ gĤ4Υi`:!c֡kIj OFnuEK?!rKttʏ >ҲQ$x'['Q f+CT5 xŅvzE߾ Rv|xe-@^sr֫E Jw* gCE)a -1Skzšdŗ%d=~ZN ^(3 R$wX)1y{gĆXo.S%nREl =)Ymot@fLb~Zqy Cݨ d]omIdV6>`.Lh~Δm=Q,+$ W+.:N!ߕG։'` [akI/ C\E; 2o\`*&|5HOYnf!)˰T8ֶwsC;1(\S4%£\K[}!Mc+~Z2ELh8h*#6Ҭ~Ly`,GV|q&"a;2Ljd, ]A%a9Ǻ44yA&eG:,N_ciŸ+w@c,~\`MMۑ,d9zu;5UwiC:|LByi9/ unE=sٓ1䯇 ʉ0rm4=5J.H@b暲Ll3ȹWnvn?"jjtBJY ;:iC }Y]Xj]pÔ^>1@1 s`L%Wz'2o=`YLe¤. FEYBV O))z%)1(7 jQTLVkKA{A"D>URS>@jՎB@E " +г).%N8왧!ڏ2S܀`L ka )% w;2`SX$ .K|B]b-dP4x(p! fjۆ[˫uv#IL+<7W.봮.P\B oHH?Ҳ$ҿQ"CN4YP葏uF4EuЍZR)dC(븅o07 0tRcPJo q p[Il]$I N2`8Vc'@A;)뫔Yѝ2Ynjx'CZ-DW^]f}L>ʎA&7mՙi7-?=w Wzv>aO]/-v66r;慿_ugV"8, ZK`'8bK5&$W WJ47{P' n.PX,1LAU__?QaɌOzw# H Sc ;{dhv1*Še*=j|i o WuLvB-\GcUbb<=DfU<9[n]ʲP~ʅZq,$/`^W*G_Ytg?nB9ŖˀGWc;.38c5A|0`Ẓc#\GASS&s^}TsԄ8?A tFVIM컳H,sOOD"X,)pi z?P]2|M_ &anlȝ%!u옅/_cBm;Dv>ByxsKIcؽ"~L8zIЗH0}. I0[W fuF~@Is xr}? 6"hx<jim+a,8/;) `#Cj;yiP?" D 2n CB?}u+}#pKOomuE+Ө X"G% ypLP>9 %L^!Zߧ v{ g2R4.3UjV[ u|MnAlNLCwnj¥;Z<. )xtT6,xVYi4ԓ$5q@dFahq56N9@z+u+Mb}C-02! r{y@L)zDyvx X:4lց9=G5W[O\h.xHݍTN7@gSy[³GCt1Z[8h:,P` oKnX>zg]^]Av%nSkh K(;^sBx@Jz9ruޏӕvQElRo.&ӈV3ϘcX0{- Såxo>>Z8JY,A0쁚jhAۋЈRq!GeF\jOuWh1 tu)Jx|>=bt~ӤnOv @RhIT;EMK)@x.= [Z (_P;9X%c8ˮsnØTkض%)]qXQ:xY~Dx9g(D$UmEJS%Rmny'}- 0syCBUj3.643i4q'!o}sDP>c};beKXx}nEBIZ;)Eqr<@?2TC-PCM xZ0:s|0V>"<,~M՞ӣ0,TB JkRhɰoS~K:-wyq{L"-J*MEXʤ\oc>U8zWS&}^,xB1:FL8#ݬޞEג4x j eL\g`"x$GK#k_NOp~3{/J O hOJ}C⽲O˵rHTv8p'KcA͠vn ) ߛiw+'‚&3?Y{ɑoI诠`}: E>)#pqs=|f=fxϵCR}JpHXb/7[ݩY6k0~Dּb>荭5`+U8( h|'ũ{sE6aQ|-AZPPq򋄃` ~KTӉ WK+bmLzFܙtJxJQf=(jS_+N9w(?5=ۮ]+)O~~DTaM!3:_ Ȣ=IuTy98A6RK6'`yuZo--pl%&9xU,A;S.*R\m'i20NDPk+V8|!ܓJ8<0$1#~C 6O!`*L8U()W,w篤Aܞ~Xaf.M!8WY[\pA)]&t^w7Cl };gK.FY&% n+ࡃ b)GNc%3%4Ibቘ*z뭧dײ =?RS;? X0sģ Rlލ5D7l/{ xq^Z2$ bhG'u)IH?i8V0+UL]Lx*B tgny$eQp$pDTA)}!=md#ʟCƉ061%hr(JWx$5ŐΜ]f=6Mܓ24T6?xZl_"4mG7K(| Ty!>M{w6t7~ k^EqSm>v5w#De[6LDwv{[b.Z7X6L`鲇`f]Ķ?""gyw2`xnͧtEAXgcHоYuwskdzӢi֕O(xJ yPEO8SyY{3SNi;Bفר1xfBml;L|8w$-ric8$=gsN(ػ.] CԅJ FHl3i6Q KޜJ@]r",$AG&7R\P녤 }̢6e0a7t]s5>2v}HA]~d~YK^JKvNJLATE3ٿjܻ!ϣt0ţz|0|Wt^umv pIk^Y slNq7 ej.A$m>}a?g), ]R׏.zPv(aJĚcZcR-`eD(Yk)dyx,a.@lcm#"WmvXŒR99p;M~ = CC{0yX7-rH6r7|dz[sE*X:TxƈʄյjUۋJ*sRؗ:hW`|/Ӛ;,:Kz*gqSʒcon >@ ˸Os.7>e=r* ffm픑%O6-UiR@+h hBx[u4Pl_.N,b0nშV[pY.k1 7dz4ܷ@Y $ߟ?̃ݭ^O*u$$uv $tF*7y *ZuJVG ][Wz8ڈ(ɟG9w>̦P.밅^C꜒H.j|]AN=Vp k! !* w]ա_ʳ.(r@*#sCТzyq;ٲ;sr1Q`o֐Ä҃ukiDm|K"N:JV y"?VѸ00`AFy3ޫ8$?EBL:j;D_,=gkct%..u9l_VONHBfiorvRX}d>~Z7q8gipk1Wux'z$?9֭LP.qD3C[AMYsmBo4 *F[cT|?q cBH$i10-,wڀ6}i;FKe*WdݎzoZvԃL:=.{`">mZ |9MɲUdSSC<Zg,!wP8`8W;Kd)b;iuڕ d GʧTuOV2~N|.s5?ˆ1Sd.kP:on!nx{o?-(KBEIx_c.n%su$LL]Dbu# V0G̳Ϗم䀹d}†[+0E_3a-2$K541*6Ī$RjB? :T2gw;jg1K_˄M[Ip̋~oȖw> rbwY8q%B NAB2@v u؊UIC#}-xCB>M>Qo)t.z:M-\#_FZȢm8W`Kn/ug\riAY-ƈ9~.J\pK:׀ MQuWz$Ĭ7\VVS2s8C2To?,^ =8 k܅j4(qZ476鯌 `"[QGj40T:3,F,62"F(-j|gG^D4aW<*;$I7qуR-'C!"v'tiSYݷm@)*[!9HQ&`kG"ѭmRnX#6&z^| NX~ciJEUj@>|:z8j ;ZL@X i}9iE%-䫅6ۊ# rq;DTbȒl1.~)8W[ vilu*e!zW|ry ÊPԙ(WӃ1:y}f:dE5JJ"0].&]x[dpvvFОUso!:oTX@%-Cq.%#1kmAKmM HA&򙦃:K3 <]7rq6 "  !Om) dÖCZumdCM))/ Q O01ON98}dѻT:&ޭ1'&-d,,ؕRK$Hy"r\"Sj}b|N̠=[(u"!s H7`h xԑI" 9~ `Vt6qN}wuzCrہ {#XCCa.v&`GGQS]i՘'pJ;eHԒ&lӔ~f~Re#Գo"+ד~_Mm;lc-8<ʎ)oDo=A-E<.(=Dh3Pţ/['͜>PQڳ!7= *,yU)LnZYhgņZK,#;\nw:LDbD*iғR;nH5n$@k/ތ!t3*]|B0"EQm\1,gd i+^= Ўzm7r*YՑE+%R ^^P^Z][@'wy}J:sUc{Zi؛up" xSC=a%^Ud+1%j6TDŽЦfoZ]?f(c׺N&F卓7IOd'TBBnY+!uWkcرo96I=똕#6űX~dqtp>!zH.rh= Wљ25|$6lvTQd ,\T Mzo:}J*WwޟչBCo8fװeFx r^i|_cc Ygпk_Upn,,!AApe.vbQ{>*ws{$sh= `;D;Iy1o%EtlRtɪ4%<F3{5MjI@ٯ X]juJ V ^q\U6:hTHHq6(v7ϏDITAfmOos.GFf=Z"(t00,*L4`Sl½ fUyތ)%9\SLG!Aڍ`JMi :Fh]>8QgmDw}%B3U2:ugY*~2q[B " ٌ5s66+]7"&C "E^ToV:AFu3Ȁ䟼ΓHF< lGw?T|-6kV%5_ +O5U/'iD].G|g<`aɁ(IΗ,qD7K'Eg6!G$&}ۋk3?_OO݋iCG$)> kE(&\'zڔ^[J+fK9Zop?4̓ظڲ\I=tɜ>2'ۿ m/$ik:D'6"2;7[7o  9A Szٟ ofZ0qXmGcsni?p=92.*['*Ü0bϋQA }= Q~~B{<]J.>CTi-rσE&JXlު' |,π Qӡbrju(Np Hp5Qv6k[Vs@PT!=!G~j5>Q .2!8MWAP ]R?qtAUuI.8}e clYu x$iՓZ )mB :C1]+f&:="h|6X)iBt _NGtZjwddFDiVEa{qH\D-~2q1bA;:7s@x%5PI|k qEc mAsR^\l)e#J)46ȣ` fsE)YR̡P tAdg%H(7U)S^zȤz^[>'4X6~ )ٌ.Z4nZ3,bT"t*݋* n.JfdY">$JR*'g,|Tj+W"<ԻO:s].\ [OIh 鰸@Z c_VI|UW noMt[< lu]J"|XTh9ZG3IriCzHxLSFi\ ngB⶘=htWsI KR!긔[e*]͔H2N^WCvљsrzy[]@5TCTL~fӢ&Zth. 8LA_ҪjǪSGx~+Y d;\게*~h˳>5p---_sB_Aej?&"b'^o)Gyp6vq?W?upJn 2!@ E#-^IKê 4>|O&Z=h[ATZ6'a+l>iqCuY?4I*+EK}4Fdۻ2 <̣\ LѰ?\3.yr_1&1vLwgV[IfІ'?orbl 췏&\'og%zUPc]7moY-bM%ӪFM6 _Re|,J‡\CC;f[I N6( lwvN=G_sG 3 i8!H)dKh%gXOC6,嵙a_YKثgE_tKza@F4'<4(H`;(u䪫/*tf4mW4Y]dT];˩9͔Zt5h> WBVw>ͪ ĹzPVbT&d&HXOZ mq,a^݇{q b]jJEl;wϤ( x6]&/Z`և, agx:']OzR[xKNMU4#;q'BC tŔHЂK,Z߬(1'LLucgtJ]2ucOţ5 >c?=a(MhT_J͙3HՇnr8N?>O7e+) ;קpH@:{̮о id tx ZѲٸ̸nVG^:9̆0r4rnSo`%~IR"rE2%Kԩ!ȷv}_`᥂Eԕ_cSf_ZgA>6 [QbLm]E3Svrjgؽʣ|Se @' TV; ) H2Ru5;Zwfhs^ilut^ʩqþs9EX)jmLqx+w$j||EtѺq? cP=er t0yzd2=gw[ ъhUёUdU qmPSgjPrAG,Ϳbu+ky1fy\)[ܴ@ԜEtGbܱ΄S˪E@0_K(p}:0UR tc# c3<]Z+M"Y71V>1 $+_bSl w*k:֋a? ;ĀR+<oa_>HS:.͔ZHxF%L9l!tzdĿƮ R%%,`Kօ V{D'&nYly A#`B _^$\0 z3oB jgW+i>OK.0VDY?i˸H͑[ZB"8c,pI (_Z,yw!Zz,ԇU T%>~%B)Oh;'v2P{T+ UK}dr79Fߘ̕;@ntR2K d pn֯ReN?e7noX4?. n dwUlBn@~NGKv Ը],{L~k9nE2.;6% ,Ys:@4CBBrj n:#`b˱G%i,mHs?jDnzh(1fyZ J")ye{xU[Lqy7|Z%6epaΈd8غQSsǃ&^R<>AxK;v:>HRlWDWVӽXhl@SCn_e~zjn;E 9x#9'\ZZ w},L`idF5OŹˬ>AX;.l4 )lh6ٱ~ D2KK2o?RoT;r8b<8j$1/ãn;A_Nt KB[ŗJ|-T]So2[4939(-+LB Uk-6+x_ " <զd(\r(f a7GTe7a0.j*4y}8i c6-/8ø gy(Xٿ Ҙ|rj㛥X S=Z8.!3|»POkȿ>MQdn9@!FY?$1;rDDk>-Py짉TBno9뛰/nu ٛԻ'.^;F3c֏?[ t\%w&?xTTyG^OD َ=!D|HzհT?v^$-P1RE "AI3i۵iG«N$שU~*ݴ3KhdH?KD0wy8%g 0~)fJIr5o g;<"35ddn}LR amyZv#<{ӌZחzE MY`!u6qL] i%y#dv#̺Us`}@칧pdv"a abv^T-Pw;+䟹*I X(XN36C nA)t<`C뉢i/%,2eZ ;8ٝJr5D_v|<ń ԺLʝ"\ ',RʙrPz@LF}9u =*'˜f̮mf$B0];vŘ@I:MϒTQ|5'!>zDen_)&R4OM9_~l@ւ6ő𤎽zIh)AW\},k"I%v^/ eZ$B4fGzpfǡ\1syiBHWڝK,k}ASQ=t( 0#Za_)d*'~n?%d!jm0 IR=UZDyɓ4eijS7޸iňn%NGCIw1:(OHĘ`Z51f6v̍<36l6q)I"?*rО MtyB(p${ 4BDh$ce^<'04[ka4QJlLCjȓhpi?oU37:dj%w@#@L, P׶>Ep }d?CRN?BEdثPgzRX2y q_4"7 qތ<`'bG [yͳRF=,^70Kow02$].w"olTeqb=OڑrUGL "Ɂ6kՔ@BK\tmR<  )S՜E L)O7IѥrNosEgdzȾw{etD9n&"*=qɡ"Z@5Jᷲ 7ȲL MS']{,ӋתOcíoTS;H(I9+s^n,`č =LZ-+PTkgm^^?F#C<-CQx~ Fyi zHEbq5T">:Hj}Uum.A6e>^.>$ƪa xI6)<lDYJoPjbsT]r gthz4zڻ@XC*guJ^%Vs򹟨Ob=m!R̈́"J,b'ڸwL禁+c:2ؐ!GEwM=nx<,!WזCrWU8^ȝyVg~AX%֋NF 78Ͻ)I,n ^gχ9(#P!S?I(?ħm~Txg~:7c("OlloYP6 /^2+|JkS賈cT(l4%=y\=znU U{N8Og9cHɱ3R8jgAXdh \6^'2E<ںTF[ـSὡ_:nW؃ $7%߰Dh[F)|yخ>8s%u6C27FDGw%Z(N3k e%Ŭ7$b_) =#;̶ (vusKxnb60>H>G;x۾ S7pIJhLn,-wO-n8@|/k:N˟ %LaluZ# 9r"eq a8OSURCu<ß yZeҋ#_TL8s9՟{0WZ裤4ܴ+afKw{\Lt" lmfb+>;'S T"mz9* n' ؝ѵb_ r ּ<䤦'.Hg{tp+[6ac9-U=;E(+ 7˴u4Nd:%8)E-$uR[a7%VbF[lȵuY.G<:Sky&6->dF&^soi~5Y'TQuiX|'06u6%1uwf[Pr#S,-ƧlZP`>Os=K7ZPg`hb ѭYWr_d!JhE༘T4tX}NrV5!\ĥ L%=<04Oϩ󗅚Pf ڰUGn1 Ԡr4VH6 ݌jiW]i 7Ja1m;)yvVLE9$n2HVk͔`Ǯwdw%lHg≗""gU~홏l$ :7t6P,t=~9fB]d_B .}a.;,7cTT:k;sw9E)ڜșu`YQԕI| !hrg_ܣ׺"Գ[&"i$,Y|KbH*7m-@Qd]VLwZNGw]FS\B@@ei!x|o\ҪcO7BK't[﷛P4Vԛ@~j&(+:bbH/LzZVc7v)zsz3}*`*>&ѶI8L.z_ITn\r6r>] ޯ)AN`$^j-|`fR4cȕ%^~WYKf G<#4EK9c*JPNeFxMgm{^!k.ZDv© Ev[,>V풘!,6+CnKrϋMx kK|,+$c&?#A:F,UF{g> *9M2hxRq}f?7A;EEޅ+ ϚW؝÷V3f=8jӬQ]m|GW־)A`o*FU=cp:{H5@t"fDoVSZD*rqeᶟ;)}oE\K;u@g$'~K)"n7OqFAiz g<U0Lt\vϛY;0Vp!"k1MyIzB׆1:>J"[]]N88v5n;;+=F̆dRkQ?{EAqK0/B1x% V;'ق(Ǡ:bP K=٭mE4Sl)Pb5Ǿ}fHZx06\,i!wM2xe!"z'̴2LW-F!9Ħuԫ):\ZUx m1M}egXob?{ݪflmqt5L;=9p-}KAL+7Ms'(4O `,ǧW HCi"ȱPu’#) D#ZKkl5{`nMGZ"0;G,d >R>꛱G5^זŢ(࡚Nbvb~v48WO[H6)&9|;M,}7uʸO%5<ͪ(q[Rydѱulc/q/ܰ)sUL9}]{ɼ ܌u ғx\`}-?VkCo]N77=-D\f[;|m1 Ik0̂; SYkZ}'_#ٟ~2^2={]ku"@P1>v Nv MEx5E)l)>?}:p 7)qy%4b´%|$tKgo@"o)U(rL,2L~o58jl$+ kGN.OI@JaëH6 !Vl-j]1b1\f/+MY?``Wߘ"/=| Yeױ _?oFꂱzTQ جZOryQG+UQ O$32<{zQo#'c=՛J=d9+mZ5Ri>KdoOн$U_yvB{'sK$Pchh9[aQF kudPlBg g;2`$3  HɎ1 _پ{B 'EcYTia }mxNfscN61݌IFc'Xb!~Э)u+tVLkXiԾlZE v%,[n阋j&rDQ,' FGBP|DW725O$&UfGpy1ӳ/CQb}ùgY+d,y1#L%t.a6=Q {:ŭ~,mnR{S|/˩Ի(BCfaNTTM׺1_Lb{rmK,MO'D@w4me 8!9N3Ɵ4S⪹d޴mZ}WρI na/M["C}lE#ԋxSs Xө9`"|wȹ%%%-ar?aW @tfBK*^miHLZX _<!1Ҭ>=J3ᩖ׃E%u"]Cf/;FxgP4`.ߋk)G KPq[jmoTf1ƺq+x A$10shWʮ8$/P{2j#ZhvC@cz 9odmB”JihE PY (l'< @ir ,dAnRVamW#h6 f²+Y8.a“ͪ͑k-:zSGpP]C3UȐpǤ se#CE\Un R4?'sd%$"Ҥ!KD05Wy18fhˑ\]c6!8dTrr $c&wvpDi[haAϿ_*"fH5r$WJa0dx4>nb_\Јf6p8Q'gsЂ\bur$Ȉ^uuO@_Qmzad̕<7ւ9m3⩃*̕;6}(FX6E i71Vhk/KZ~'W6FAE X qw"SIaɴA VЊF> Mc,C0N82:bh <ýoC=%XnpfzsMvdzPƝI߅HRu w:͸"?[YUUpNh xt)woeP愑TF0ӷYoW{BfV~z7i ʐ͞ K׶*g^[{|Jnv "y%H+5͑-4|maaId0x4ٰU+86hG` ɗnTxNdX0a+VIRnLO@Ew0‰i%bďe3b 1ȷg ;x;c2?!cn/ޝO:^,*%?ㄷ6 LM'MԆL]kWjpi|NBK5 ^F'lއ7j'uZO@J$!0׭^teݏᏱtM|~ňKHjZw%c'c'jԋ̀?ل! J_{̎E ."/ pS( etDLXALLMXߎ (@D= 폦xqH]7P^qK o8;n$2ʡ0OT3ɿ)$@h~Xn`,tWNQ[ SħJ؛V{֧J?b4&!tvJ3WxҾ,I8DJc?^*R|dȱeujD Y:=/ llS!#O {&S]0X3i }m0Hq@i B:IpY{[9#r҃»g,GW"zHԞf^q2bW+Uk9SR[tS Vsk\9 `:lL+$VA+eC22 yN/q}TM@&`f_6!. }$9A'nh}1E"p:oͱKKױ#T? wMTWV *A[lNingZ#QiǪ(Lԫ$Ga:O}@KL#[<֊ť|@oKNP d60F)&ȿ5BEՐF0tƃ2=X߈BĄv *ݗ,7(zpFJ JF&9}!ϋ_%@W<[i>Pgag&p OUj:![V)n*MgB-LCr&bv]e#Cfw:ٞ8$v-uMu"^PHG=vfK,|nT32;/k;۴@m𝛖sH;<`?xQцbCU"E'U!"mu#j5^O݁R}3F^V")H+ۋKfcBkp_4,($<3ZяV ?yGԍs|F8W k7v<46`>53WǛhܢY #, =Yjx3gCeX*u:AGγ%!2Ė,Em:y=ez t"ZG Q:⤝[,.TarNca9$!^M $M z32HϢNJbhgl"t0mJ%I،`RYZېu uXp?25#^'Pt5=mf !qLqby9;>_:,7bo/"$Ecхڌ|YVy\G3eYЕwUQIrb&拆ŪӘNt{ՕĽoyb}Ըӂ!2vQrx#&m%DfY#y91'6?7<;H{dk^yWMJ2xo FV9v XbyRJ/58<%wj3CiĖL$妹u ;G4{~.Zvy7 4pg˜'h#5ODDyL ̚}&PWb?t,$OO2.Q[V-<揮{UV+ɓVxWܱCOTiD қUsZk|D"/3a-1ip 4fdHZQT.9POxUp '*}U>1tC7N":ws*Ak#0NY{"KmmmPFwhEf<>:%7piQW֔V,mL7YVf%MB )  ?=tnhKE2<sw@,&eB}*'3bt]~l@%\͝M.@'dAʹ1"<] x;)`.eaZ?X!3QOVDQzɼjKv!E GFup$Q`oӸB7O! 2$iЪ3(+[ďk}os)Abn{dL~Zuڪt<nhJvz6.9v\-V-ZW *mo/sjF3`5o-O&`BSګBq8A:;TTХ2)H2q \!(t~B!i`%[2ip}s8;Cy;/TI5}B-ŦvـfGaF@{;G[*s%T)L^Sh4*눟9^q>U.ѶDse[-Q4؉}#I-Hqn-8?洁v}%4J_FhJ.2nއbXY沠-0÷{)(rdf9:<&A'#1̒[K2@fqbEŮ:9tA-Z2붴LՑA Heנ)Hݕ%^ $2e1~5.E6t-S3I_a2*.Rg:N/>$ F :Pҷ X.8Be=z J%Yn8"cAfQ Ԕ{3=$-jnpqqst"\;<+Ө'l3s52ac?ΚWŸyu4u^@nAښIpMa *r [u[a!4 "A^\_ >4,gRjcˆo!1oI Nmhq3y=4[Sprh|VƇxN.JǜnfY_oK PJ9ĸWõZ^.4Ry 57L᭩ g;vWWc#β)6 }D3ms[5 A`ہ:64ZTU1[ᚙscE9:9//AϲQ ˜n6g7v uA^y[> ]"Ð(p7"l[_ð RD3e퐖/;nө6J_:^.e]uF!VwG5r[ sṡkC _\<䛭Hz n~ɀKniS`-Yz{HVHm[q {2o+ެҫ.3 6"Iun ڟRP<߇p#'Y&ۉf#_UD8)1g8ӿƒNnBaH)d TqF_J_ʹO>-LCrٴЃ'b:qsB @Qi[^;tiKF8_jb%rBhP݈Ӏ&l+Ƚ۝bsjÓ= }uZl,aL•j wQOQޡ俹;+Jj?&1dȇl'NMh`sڬeC_Őި9mp-KߗĨ2Jjnn%ԒxȁyK)&0պJ2KxI !'ƷW_:[# (NlaNS)6ůR$M2ST%l5fEvD]NYpUe0ds,^o@uX;?بX P@*gD:-Y mkW+[r:+3o\UXtcF@̢ ;ʚz-TvSArnPЄ0=J"" P492R8F'~>͍F%r^u3=%oT7\\* f]ia iCcP)9EnqhDƱBϒH6QF7Ԃ{(gwV===$VADW-5}I,) r.3 .ɳt<9\$ /Jx!2Q/> XǑ Sx M,eg h? ^#]-^_v|DD-sL~-ȂE4(Is-~8b'3k[޽P`\\>dG&b{Zu 1"@Ջbh/y)]I^@|k߇ Bq6@pO35z>+ <0F?,>oBS~CA%G}tn4DpJP6DF!Dl.syrm}p#&>9U ݽIKV+;>g$k W޳K^`S~+0zUq}M_nJ^ߺцʢԞss;Gg\g78m:t!B6Qn;MTVfڴ)!aϸ@E*C~{hmav$wy>!T\xUiQ ꣜ Awg/fׂ+#hBe]RʐEKu<9}NPqM~g&qWfehcگRY٬%T%w؅ռ;.SCuHaFؔyst485` t^ *g*8̞}yFpBbhkzbXPZi oCAj˾opiiJ-Aa_W`BW45nrG'xw2Rx"ӑ0#IvFgFFRIЗ=ht_$ob(FsU@5uV%a/>K?|Wdd%ٞ[gyBϬ[6~v#ʶu%pLTWQ!Ce[n]=YxȈ, lO\wsCFƩRTVT䢂y5{n/Qk& -$ze|XB{vm: ha0ˮ)HJYg-tbt&{bY2E0=pD"!-[# ͕YY@P5v_Q-F%൘l}SjցW w`V@zk`UgnyeM.G͟`Ts=UOu9j>U.b2;U{0dɌy gshj!'Ŋd*;8 +Υ.%Ω{x!(4y2~y`Gxy.{$"G, A~E ɴWI0VV|qF2g0*BH%'GRdFSXx-m$zu3ؑGh"ZكI\BO7 kSi$q"꼔^.ylU%utK}mn"~3f5:SQuÑN "|iS%iX|B&ɼH^0*A@-z%n6yq]I:nh--҆a5G!ȞNʫzGgFu9@) Zz]S$k->)ZJt(&!TkO׭=LX Z˝ڹ6s01>sń!k?,*DQB -@a=_ U~Q4e,*h'Biz* ^C@{yUwcQ )g:"láyk&&I@ :nH[ΐ܉1{oH[k]vdc%p`/Fw+Oa(t$k1"*dXfq9wjF!+ۃfWCDYph;iǟu.mxy~:=o")ӣpڣ>\z/_*Γ0- 䏤>y'47gL5C C>qN75;u@77 U o럘0=xzC)Wʐfjjۇ>c0YNI6 9xE4'*L'څ`*6˥H\cIR 1.Ux]Iƕz#nv -Dn7M*ΨKa%LjP'O4?4KAmYnYx ~r\@+_&offf`Y0jgÂq2{rqmZoB|ٍ}yD's@ҋCk0w U$á̆6 Eg->)i~\M˫Y[4c9|vE>OlBgrYdV6p;:ejk;uX NB#ǃRTh{1ɳRX,;tMhDzcdX*:WE1Set2a]#7d!սPVq[WhH>oZ;,>_!)3DuiхuA\`(qѨTpGp03Ȅuyi>3é Nh5XXqO[mhm=UwFcۡ ˄Qi=hxgmEy;oBLGnxй&t*c侣>#PX@jUhP- ;xfat˭6K~^W W {%3Xg #Z1zNFµM @ 2}+f>Li"4ZZj 2X[@M3?o\B>4ڞ s+9 Sr7#{5!RҼ,CN݅>l{ŢF#DС_fE:9M| l΋b}6#d6.+;־݇ޏ5ޓ 17 aTJ,#Hq4l~|RRM捃.`tb>'w o`rݎYV-2/ `2:&h@T}pC%,qG}V /t3dD]+#1ώM@v1O ڈ J-"bp@W[8Jŕ2pN>!I;cf T Gڥv- @CTJu\uɱ 獏ޥET?ȿmd׏i( |He3'fbqOc)~tBV4,700B61ڤyyK3Lgbڵ&x$XxK$ס,)`2 v %ڂ"=q1WƟ]"j| 7.`J#}cgڳ%։ L75ԖG4_Ú1~zI5+"v pz*كzDrn zܙ0M E%C<郫Bg #0*j6c Hejfѡev~ÐYup` EPyGR[7$qZQ41~Kᄊ@.Xv I$"#qª1mIкUl2GSCb_R+KI`?kC7TFbP{V"\-ۿ3skp [WN ӝze o |#htQpz}~hMLxƥ ,XHl*<*nщ&;:.;6Tj%՘xP u%E'oL",F.>}[c ɨ `uc ܼS752ؒ#Z;^9 L?zexN9Nw1 D=wK(ɺ|5+yp%#_(iJ;׊[9P@6&t+ӿ?mռ(i™˃DkI,A&s+- %_!*Yh$ kxx> @6?m-ظѓSk4X"acӜi4%}y1)48\`2P* Vtm#hz(-:sqYw!;'߃`Q+ ʴgyV5f0k 3#8ҸP:ǃ'8&LJD^$-C 7֑E%6n*@@DCc/fC^i:":%+GL₀]šW^* w}61Izm90*/W~+*Ǒ˄b;^nZa.`% ݪGͻغl 7*_g <@Ą'u% n F] .p/m8o]H#KiTEA;aO[,pRAȽo,:Y"dO 1 x"#3ePyM9>>or@{ =+e)NSOT)j.Rg=OZkD/ ?Cs!MW!mI;`(Yc\4po׺Lzf&UMN͟j gJ6mbξD AsB'gʚU?: *Z@>j/xWդEq]F!o:Wl,8ii7b6E;8˿6l"o#o,\%p*IDo]o#l~L{jwBˉ1!~ ޮC@eX\(Ndlh:ʝ!^d!CR _ֽEۑFϫ~A a8PrLet,t@ou؆҆6"k1t@8gk]w5Ioց8&Dy6Kȷ4TH&e(iɑFU6! N?Xq`"ޡ:;+&0n+tef\vZ Ak[e/lIR|N B eR틁Hx3X%"Fzdd0ل7K'0eG%1!FmIvH:`rhKi :˯2s}%˞F Esr7jS[8qQX]o o"#/:s1' "k0! %< d-)76zD`:ݶ[TZW{[Bsӫ;iU¦sʁpv"0&uk|=dLҪܵ\z⊫ݶ&v୸OVtC''?5W:'^`n66pni-?A O&Vbѓ_׃Oۿǻ?Mjv_H 23۟! u7>:z-ըH>*X":rŖĕri f8$To ! Ark\ M)| jz7'Ú\3$[vز:aX*zIh7U!kpGjJa0Ee8) |kC~h(!*ݧ _U HwvA_.wF~+Of2ي7{AEnmN>@#Fƃ_Dk^ZփlPRvgS҅r#l9 '%љ# ReEP(ۇX̰0D)HV~24GL\K tmXT"?U/6TN ޖ1C0[۔WmhY@u $f̀9Tv6y>䭠ΑtQ]&eעX<[ȟ9*^7,!t{XZ}WX :xd*&Z#.ҩ*4hM87FSISS@l%RLI"D6E=OLFוY|دX\FU.DR6?62ls-qLSf)zF 5"aGxyi"auk|_|q[5Bj~S[_D#C\]l/RCeH7bhW{4եB8dCm@'kJҫ6K&g$94~с}nw`||A;'?(}ê GxmTHLȶ'px[c=[){"7t% Ѥ x2ͥD3$Q虂=uPL@1ݵP/8AշRq[|eYM6u)'{Eg#ߒa^F +En>|jsחߐN욇xK~;+2KroK Ēt#z3*'xP2sr-V6Ɏ(5rt]zvKA(n9w|}7nz^hP(yf;H7tV7*:₭'z[S3RF|EȒ}8IN,F/R@ZaNXG$*\t9#gϿi6 HoC  Zv~*͡W -jZ CdM jâ1J^RiB^WQVDtdzvy_n"> 4 W-}x.2ڼkT*eq֫2pM@rQpH!Ä=<\gRY j8W$WöZ$9վӸRKRNkq a(6ԭk{*MotA~9;3I!F輑t[# ۩Z\%z h^XtqͻV>y o.ŔY t,K1yҲloV)m]fqt1c8%* UCN0.Moz=d)?A˅BM@%k 8OV+\EPJȠu8H%]N1u=;v dĭE Z7tu'4$dm[D6%#^Ϛhq6zX3(N/a!_|e莖 s,q#DN6_yÞ$)">+PfAcFu@5U_:>5-2eiEGz̭]/1"\?jG}8cb?'Pm#0 x$GSވ;K%q! dh` lԣ?N 3$}zU>c^♄7h)Ҋ3\vy.e!}~^AlMc JR}pP^?Ns0Mf}c!qUrU/]>7gw =YbD]j֩3ѳW|o%ar4 +ˎ5!Zۀ93F8hEfJD"/1 hym=l"VН0g)U6%(<ǴvO=تxMJQݭiZM+L/W2'dV~d)^̾H^ 1qVƍ:N7!aPpUR5 1*߯Eq.;/ (\2]2WtP6/p~a+n}ikR_ ]5` oB9wQeZ: /D0FIE|Ek`bBqT9Ѭ\z aa*|l<[)H:"U öS% h{;N"P].>`Tރ vB%.I oBDdvrC"/3 |2^A,ZjW\ ʽ.%Nw)dx"FWbA}*~})sNܙN4WN$C‚tG(ȻlTڡW)xCMHoJ}:hBq`@m_0U.rtZR1"ɗOv^hK4{.\׬8F$tiDy kk1.wm{gq%Me qAb Rºm&>{5O;#HjhQWPD{3Gs9j=qjI_ /LHMʢDb&>O+J)H8 ~_Z:-װeb0dgRC{},)u9[wxgnNV Mvh2׬5"'wcI[‰W ;,cRX!R5|m~5v/K+eay0.)-#, $+y7Jɱ5 L@G^:MRv"H(tMcEܯn@u]dl)6UV˻>y^Idk݄A G+v!:~c)"2j#Gfzl%^`E7$ `R=fYM_2ז`Cho.A)}jIR# (fc`kĂ59P6ԓg>D_ؖn-1 kt1)ZDiwu#`SRgZj-܀Pߊ]g7Y^?+S2PzH(rT+1?(,߼U*] nO9A`5w˪JiݱI 0UzBP@fʏj񋀹Pj5#o}Ǐo*2BYS%CFE`O'㏌X YjV?&h`& i60<N2 :Ң5No?i"G]MخXNOo .́C{j_=+^!x{dSy;c t_8SZxgֲ#kUS.޻ᚍ)?}ūgGILQpYul~3]WRwa;}#fA}M9O E7-a.jjx=IYargȀzu,2X|~?7лuTiML,*Mk *bzÅ*r\K"]%hzc34kie糆!ddЭ+\.ٸǭ*Zqic8+qJz0r;髗b=S晃֥_K2Ό_³MQ\>>Wڸh{)jT:p1Ed 8q oG>T[mB}G۪L< ` W Ô /MVw$gt: g3Co6ី WKek +R 21T@;K2˻J @_rp .(MȐye @qwأR%;Cx1 N֯U=ɒ8vF6'TpLցDW&cd zUŷ@?zL̈y7FLGs1$84ާ{PZ o]A2v(XF5- WjP*f4.=Q.`}SRӼ<멜w7&ىm; ɻ5&N 2GiGu wmG|,\NE}pJt$ >L$YkԲP ]ӞOXj%~PC@v> 0j~i:+ս9N`rt9BF$sTU6 "9'y`" X:$J!!u#b9*Px) BѪ ?L4 NVMqq2PM@;K Ǧ'#a-AvhBYӎsF@٩~EvDr9SՋ'"R&B"\w[V( 2?d k?X}o˦ cҞ"Ӟ29h:/D5 Ud:wm} QLt%c1F/!HiKȈm^7FJO[ZN~6wbu(]4=Tv6 *0>-b)BhG58uɧ#\Z২mnΉ?0W<  Vhg'tyV1xS+kM\"RVz0Rp&v 4ZCF{8[Cly!Su:^;>AN8FvIGb9{Z+l  zXoL-d&,,jSsNVRriN_R]vݢ5mֱjsz' [Mf'-!'#z  go8)^dQǾ$-) q4Y\72sb\(jaRGy\~{n?kリg>.zTq5s rTd)E 3Xaj9xV3ۚw is-٘QdX1fQeCϋIx jb)K_R3P+An~7xWL?cA ȩ^#"Xfo< YzLZzt.M f-ՏC喱z#"\'tALάeO^M08G|$Scc=B>3`vУo"/ŤUK :P9 9Ub;@0ЈG ΚyyPka ͙nyhH÷Ik m?< vu@*wُ98FvC[QR,^ [vr MI񧿸0r>NR\mЭ}2e Y(save*J/"^LkؾB{N x@PThd+<լb)D1M4 Ezu9Ä8Nĝ>N,ɤم/Ԟ+'u@fx+o׃$Xs:VK\015vᦖ ʋc!> @UrsoH ! ཙJ9 YZnBUFˌVE6 7("\FxrR+}IW ܑ5 97FE2>jP֠vTnE o yNZmL. ,ve=}nIn^krvwx|ahF8LZWe?X3=EMHj thIʲA2=Gw>GŦ 亩^H)@\<ӟćk6pY ҟqE Y?Kތ8l](y*ٵ "*P ʫL 糲,@$L"YH8N\Uho@qYFO=Rz%Dc |)B`y7pv‰+eG6!̑ob J5Dw&LbH( Wy榗͔tDvGѩ'(ꪋyao˞늲2bvɏdyQ·’6MO;t9]> ێ:f|ϣ zkΕ,keL}.]D[=liG#&iFI 0$6twm=Y6RA\۴,es-91UOr\BYSR]{B1W"$7 Z#9Ӥ}v+wy{jl tsqd́ykiG#ba!2^dq6xR p|4vR0q#7 т#ݫo` qwNA}7ڷ ɱ\p|{*kraT`n i,(=`߲_~˾{cVՈyx6Ru{4WkUhw,; .mYb"BE36qSIiAteC*)*cSSƢ}LXAƵ;lL[(0nDVqg/mW6᪪&+hg/L/u*+?asaan |oFϪQpZ&|`4ڸʫK$6]_}Lo c+M% ih8mX{K}A s+>3w6S;>)a.罏u/C`&c:d}*lT7 r d~+LIOJ)]LлoV{&E7uɽhHZ#?~*W$^NW-JH龠+/Jo%ο*89Kr+вxfG,L\(|kfG"c,tXZ^ /:0Gy.3p,n^|K~(jfϫD6Rˆ rU˄oN|73,ʵpA2 QׂH+O I$88ҸgӂgM(,aHgv0|aǝ쮐Ct;ƀtvL~ O sUNpHzu>3}i|ziϽIw ŋöyXց(@om֙qƆaabI#)<'AͫA(Hp8TA54ynv<c߭J[OA̮)ѯbr,=y *矮gwDDxKQZ7dq>=+F#{jt$HlMi|%LeQ)+xw敞?9v1S'ᤣ7vba]pԥ 2Z%~{?>&u~pmpo 'Aj4Lw}t/ dNIX4wj|Ki-SrX?3PCs19o2KTwfVs m):W UKam`0#"by{ڙϚ-&AU'Sݓӕ)Z ~[ϥ'Tf@(2՘+s nQ5OJpHg&2iɐ}P9V,gyEIm" ²@ުÁ}Žm9h0w.8 q]̤u,s^sܯg˱\^էGcOrG7k]x(\h` <-LddNH [1ջufȞ s=93?`-}C< (Mk!ه=Hyd„l; i;pIp?@ͩplқ+^{ºYe/NؤSN&Ke-Pa-&/02:s}ү6:s*b{\%cOy7Y`0l@"I8sd/M]µkD wt*Kߊ'[STw! ̼*i!Co(Y:?oZƴ2L+=LcSTrϐ;ûDHkdʔaţ~saҬyKs4O@גQDMٵ[`Ѹ8?;(g6OA:, Be9eK%75<7Y)=5$̈́ VgY#Ǒ[u*&(*+3&.>h^=/*UXe3\!xB~s:lHӢJS/IߤrZԲ]c&G G5\xP ? *ᭇ'9FxC3‹n"`DmCeөqG: 52(:D4*GwH]y9)z̎.- ξg'ۣt*ưˏt='L+q&Ŏe 0xͰ̔CسrenU0i} O_nKgx?4Nb.vXSeǟd57Z@h0M"_?/sR>vwZ.7wLi Q}Mvu\گnTޘu])6bim?x~PY[9s}A s9+|.&Mlz\I5EydAXlv|:VQhfh*M EDN :OQ@VNRW[Z.}3Uw~''ZYsm>w"UAknCXN+p|Ŵ9lEh|8⯺KxB]. 8+ϙc#1Ė@Z~ w"쑃K ֩k{G YM2FEϞΐ0pD ̢:{Ch }A"9(ꧦ]qg¼%w 0Ƈ>B+U?.,s!\XJAUXR34p0Z]vi$ (ЬbCi= 8ֶ:|賌 &B(<]jDc^:_%?,[ q"B-ĪXkݴ-\XԾۘTźpkjûݔ̷1C87E ~c9*rV)˭ l?p3beiC oU3!yܛٰ0e$![0cLqvg'0"{ОԎvuO%X1-N; ӷzĉbhOo֑RMCDL6;Ѓzuj^t Jc$ xR|ɏ0~}ly%˳0e ˋ!E] 3SD7^l x38R 'c Y1ݔj#/Fad.aSVGBu|~Trp Pd-nBZIlk ߿G,h2,Du!! NJ- &E,(_y(KVIug"NWa&spdYiɕnKY,Rպ@CqxIZNmî?jਭ]9F{Ûs dޮ(zɃ(9=Hq ' @&zS㨯AIiő0Qe# s2yډi5{K "3f/H[Ɂ͜`[WJ"N<8l O$DtC^3Cգɓ|Ȧ`f hIWv!EEvygbg$$DI)Vr3μ|mY X2e?S@max N~c%w!Χ=;\n_p=BVn]-\zIܷ0rm1rPMhX&S*#報M.A7\FiSm8u)/GdEGŀ~rAh dɂ" ˣWL!՟0bxa O^7)cE~2 @`b:{ŖHx\c,j饇9d; "ݳ<.iHl/n_ON+Fky<'e$ qqT_ %y֮/ᤋDgQ1ؔ'螶 1a$ ٌk~!NJ wݗC1~sL={I*d#F.;8pGfU> w%Ot%W`X m^CkMBuSl0ĉ$_"+%OD}AVJV_ R5Ɵ[oՇLdG < "y\'HwO2h@l1)ɥ!k3$D F4-#}nŰ )Qd1yw+|=uic3j/˦I:vSig1\{AOJ +U'= Mn +uDm %Vn K(vD]*;<$ayR #noz[D~٠UwN̨!S KZ!Kq=Tu$"= 8(l5<Л:g:jxֿَR9N)@ c;Yb<ݯ0rԼg/2 SKJV||ZT MMyE:JRҳVrW"R\Uj TS#1ȗX>kK'%9/=t2ZL ޏ-"eqR gqǴ3'ߜ#=Ąd^u(Ey+ȏ*9@ß7F> =8dQTҭ 9^7y4]  F#-=~ ]bbu&|I%"Gdp;lCB=bE7+=-?Bȕ`a 谎hÙDe(jba<;A,gJlxZ@wtP>GҲ "{@FVB# ނ,1!~)SCuG*oKY穷͙X9C8.pHgַk\'E2xU[;:X}PH65u21K(Bh~%XU4-U rpL<@II} gEW6M@ȹ4|?nw0xkn<ȐnZB&E.-Fp;(9p:VwGzT36UUDEht6cAk;@G"( 3n۞Z/)ɺuZJbU3+.{*6Ӊ_0ϢF?=HM%d) C5cf˟xQ Ћ<1Ɛg/JEK!h ՘P8`#D :a*;e\xqGXչB ty}fJ[l|uR⁈"z V!\2f$"v"BK6&p* ?)"4)ċ^t#g{D! u b|"<#H 5!I׭2em,'nqP(#`j~o Mx0k.&(6kCs a]ieĆOԦީ k،JWsBinwdwKn #6L<&oʏC55~A|?m5hPn*Ӕ'`EVcelzC'4˂l%JkL8$ G\|f:ac+(ngFTŰJb~p[`rjwvN#kgDLsu}fߧx`fgRʂeF_jРyJR|<,Xb4 q7 o=~AW!'X_~-cg!+OO'"s+x<&b? 9p +/Aux "uI6Z tz(Z%A`;LHsԭß*FՔo6'ᚺ*QٕpМR#5&UtMKYxUh-2֭\wt/}@/"h 3@)K%cFrK3`h`+{UYR*րjqHRpAWv_gz 뿼_"Ô*Br+ubZ0*E&pX>% Apj_.@X7b9 HJ,/'BA?r faہiBot09JLOL 's7ٴ4D. c^8 2==gķW=Bo׍p$vzL4\U3rȀ7w5evܖqUI -;5=Cw7wv7!ԷA#oHJ|7]PeZAҦ0zNoEj۪Y n\Ε ,"Dó9Ej}} =8qK l>}f{1 Hg]XB#3 #tUcͶa;&|EO+7ޚR{& B6R VVw㪘+Pn11r:2h֞llHe|LJTfsr0;|5>Q?!%ehzdU0;6MoصUjO~q!GSVѓU2(m+caWhit{85Ղ{iJb?jS14*)oQ$yId3NOFA(R^lJKH :6:UҨ`Q0%E.6g,1P[$@F8ʙisTN'Yg:.>°з7uNCٺ#$Ynԙ/vTe=F68\V{y`n3X!j 2拤)OQL1]Գ!]89l1,rԲqPY+xm a\{40p޵5hq\$TfJP=yn*UĂ;֑Jp7;]ra}X kms e{=߰_sCs|׼Rc8D[Zi; @; %Lܘ\f5 jZ:xr}i*}Ml}',L #gx:șIPmT@=(bςܘ5G-|5o_;mBNRIxXÿ֊υ;R͜A]wx;$GXT47*¶K1{/ M%g1L,`Y#.R B('dH=;|H5]cJ/@}}Zr#|]*cO(LJ2vd֘5Dzi, ^1RP_^cP'_Qjd_ !nAD[!pn* cOP=z5 %4"LAv_>"bfGK'ҼD([ؕf/ 8e=+i_ފO#=&28t42H׎?$Pp'l"DP.>MKwvIM:{wג-}R,xshkO6zB۴bs,\UIt9am8Ua0+bHUDvx]ܷDH7;c)wqͲcƘ1L8DmF{Ͳ3FX: 9brPlGφ(F~ ?E[ wǸg"'X`-|M.j+jIS˯~ׂX>`;Ŷ@ 1XM# U2E '_}b]gޫ*[ǁ^k %[Ay.=9>V)D0vjb5(Yuj`~ DG_㇜=hLc14hS]Ne4#.tNBx%O WV 7fIb|>RޓW1* Ό1[˫z"M1U)cwq0O,{EuxܑnR2}`׽4yCgdDum5yL@f0u&pY̿D=)xm-:MBf 4]kЋضWHqsr4t2&ĘV%=Ewf QgDz1;i"dx_FƬ&Ƌ(>G|h&Ǝ؃Ԓ[D0osWB̽;)LfqB5^CSilY_cV_cb~f.?Yh?\*SI;QG ~L<prDXgI+g{TI6/¯欑S4~؝ μ[&QUioB/E_af&\GB_Y`AE_uߜgd$aD^XwdsEGs 0l=Peg+| p0ҩ.ai:`඄u hTB(釡i*+W;'62yU} -ׂ/=z AHjJ}F*QUBCP!Ar(,qƱF"hITt:FVû<I$|9O\v7Bza 3e4ײ4xtT{G(3P}qDzfOLy U"9263 mVޢwl)w b%?@LYxt&ϊB=)[XSCl4z^D8!ׅ*Y;gCh$=CpnR;Rl#C.%eꮌ@}p1Wǒ^LDJhl.t ˀKWxP:ЀS>LȶcBvtwgXơoO`5wp;c]OW:aKICmMvRCR~$~صgj[=K]R;A9 ,_|6z39sX,aǩX~-D\ۗV 烇#_[!\C=l2\o9PiwP&ayps&܂: N5P# +,Equ:#Jהz?Dގ'] MM[rx"^y,UÌdޡ~E$MWw?e f14<`Oʊ^1`G d$vO_0>jo@]w 簖 m51^ kR݁dí)rg[L"1=:7B/4`ӗק 1[!GVc~䛬#<<$V|y"/NniTCH:U"e[ʆSJ:tgq٩$ꊄhAʅDwonmQ BS`,fQ"Z8d1رeUћ1?4n]uEiNQxsN! q(8b> 4HtG(@b\5omH)R-yQHTޓŰsݔE{wC@[~,sufgaxY]3QGP͜J,2+e5VK& w2D"|!㼛Ѕd/~N= sEjC7/&9Y^`1kf AAC"_XpZy8h*e-#9;{s!6t Yq=3rBE|Rvwta V:DS2lDڅ}r30?FM3+ʐ0%5\{$!/qV@78pcK]bAK٪6䤫5ҲSk&'cy;nPU)jY◹ȬW* _XRŗ:*YZY˥HNQؔaװYOjvAŤmeτ}7B5:9G 9v~X;=&a``]o|&'QG0]\"!vmJS4b:9:4~(ʁ^Oݖګ̜wvx6=z ~(]2w>ȃ|;3^&1ǾmQьy*̟?∍e]C8 cqk(#ׅX7:ے6rĶbi6ۉK{a3CT>~ Z+Gsn>reYLxѴ~ {\8FiR'h4r2Nv d4[Q,RDK-R鰩,./#<7 5q?~u2X7 D 6)Iܤ*vH})cxwd0* tIԸ %67rZ.Lq NO j HxgW+2lgFX2ɥf6ߥn :o.`\O;ACYuPXBj1&bFfk#a/+@$ä߶BnO3?\\ӁG AS7IZD;^u]vȢ,G=xp4ر˼޴Axtj Q%35fkyz, ^6IS$:Fyr;MCc 0ʇic4PNqw!u%|ރVMĉb~"Kli P5)'T2\UСcpm$kmjۓ2|b\)qxzP8J^C8VBR0Jl:?I0 6<\Rf=,Ml?gS!f'mrN)7 `@ a{2SՖe@/S]wTO(>´ C4x+غ}ЌiWkv:7ֿJ}'W& r:mʩb9V\>oizd_'u|}Fˢ[¯=N޻PZ',Rn^ލ% R$*t&0Љ>4z#*ɱbTiudyRz;zѶlotWc)V-aCC~+2 yKO?hQ,Xmik%ߦ^]kՉB߂{ZJrF4a(/(&!nyU'{F[wY!-xFY pLi> Ic:I >:^y6k;Æ5L$Jg-UR’!u.Et"^k< HdӆrfȽgLhHyo.4qCr3 $_v@8]x35d|3L|AÌ52bqrip7E_t(zJBBFˇpWX^ͼ'NB`Dq/kh}p !w8ڽʥ _lS{=^e@tD1ˬ4!^ꙶ)m8jc|iIZ-Ucr%kOdqk(G.C}ŰD5M@Eu'p/sr۪vՑ-o.J{4 Ve5{#~)ߦhQvV̞X֝GH{HZ&wtQsvk{pV/Zd M.V6|-L$2bZ*McLĕ9,jޅmpyLe[ ;Ix-ט8O %D'!5KV/`C]ιvj)z![ZfҊw m5&$5xn7t-yq{H51]\rP_̧:ّeɋ]hnP.(Ϯ& gK&yo2/4ԷK4L:gqhb ,{J3"tG83*_6l@؟ Z5iA=FOo+G92=jޅ]b:7f^lu+ |aY9KVX\5og+Vi7 'j8#zL1#yD,ڷ9T{r8Ph{;:|E[xZZңwe5]ZŊwUrL'nhJS},尃c525)q.FOɻH+;ǮGDhCM4ƤX]'(E|1]RhAAxWڭGod1ۑ wj_/kb031n+v+ YԬˉUI%wڿk^Ch&tݕtJX^!G;exjdt ޚM˹Zw)! oy*[ajZ;޳?) s ~BpԾq Y倽@2B_ -zWglAZ\>0Qjr~{>W=/ hL&߾6aWeXߥ\FS !W1I #ܕZT3r ?"-^>L<E w!p~g pYy27}P+ 54g` 4'8ɜT]iuAJ[N#N1m Mܸ? m؀C4%b?K ^Լ0W7a;<<Mrİdd7͗@\%J5o,sUl;jxоRte`9.cp`: QVƘZIڝ0 quzyIɯ#_m6! HjMFcDibUGO ϖdq'-`!f@g5C"ΘV} 좩MQ-KU,G"rȮd2]n`[(?"7 u>=j7].Ae v[.0Ik̙@!YLj.-lm 2~V|d?Y 8ϰE~ DYJ3o|E510bo .Cza㰱-!q1P™jDsLD~c q>.ǂUu+ 47n {5h%39 Ͷy"$o*vz1~Ɲo@̮\HͿr+y1EPF^VIoXGxI @~2 S 63n wno.;axqtz/}m8/0j7Wl@㭰;: ̿u%Q9GݠMs%+f8H`;A_pzM-p·dŦsɌ  7t[4v7.s3_@?bʯI7O6`@4`W:$!U]WP?ֿ;T]_zyNEXfڨͣZ> x8qTB^`rQ<}96Ӈ lE`c-M" Y1MH);@LtoSq0Pg?htV:^ âU@m=nC#zAH4 P |Y\wbqĄr+ݗ6򻠉W<{gMFjn[S~j(.R1Px{Wb VQ(Egu/*zX38>'ʼRf!:G. t&V?h~VsCq3|?,f9#?RTk:*ڴpIu+v8,bfkxߍIsz;*Pvړ ŇLJe","#UJPp4Rr7UKUBKX:F2 3((hF1 | - N$+ ۞қՈ~WpΦZ~tjdpSa1DPӤ؏L6$jB]lР ŸzvN=lwRFHWqgbtU§j+jdB#i8nʗXf3M6 CsPMC콦|v8xr&RAIeBެ x-?K\bW%3(7F:EV_qùزZRF;j0>6 aLGvxs <^Cȓddd,gVeJ(fH}NMKt2*>9VQ,۶>,I\sQ=C̯zTq J]H8&86RD4`i%uWeJ…fhdk/Hz2J(5`T&R+ @G xY=DޓL}~Q!J"ͭM7{H_4 ==% ;2U XZt3:#꘦wqx<PT݋z8e8g$pQnNڏYF{DQhç[vIwJ%ӵ $8^h8nA0i{mr(.(`n^U5mwM)/=$ށ fS2vi5MAr%;"0k۔d:@,UĝCx\p"eQ( '3սZ礬i+r2]? aT`䒪N_ !AOf{dJAo5dh<Zf)L~`MEUsIOi9|C]-O#23 Hk=L[>M#*Y͘1+<%T!L'm W端FwxK9`NVpJ'\Ҟ#7mZijWYJg5}" PjUpf:0 ȗBh'LDn[ Wgke0}n%]+pNAA3 p]u8ƵfFܸW!;Umz4Nyt_ /c5,dX c%V땰 w} xE9s1 x<^,/;S) V<p/JrVwO*b+r?4$=. OC*d NJZ=R{Xϕ1i.^S\o.AZ4#"ڐcǂe@dMן7z6+E,"}5GfC=ul_IgS؊64E Rj u']!eO>ZM\};޹ G>]mIfq(L&U>F`Rr7`,vWSCH gU0&OaikN* "NkDdʯ4U/eӎ;ͻ[pv/oSLd:2iB?7uH:zd )p-G2-7((۱ OgG١0pk_-6ƲCJl/ S}3p!$U&ծ^umҚtE=%e* ^!*A(|$6*tk+0w2 %9{̐p.0Vrl'!jby/uʁγ Is)}4Q- 0Дj\ŋ3#OSߎ}to,[qC["l$e܌?L"Q3y% WǪLr *JV އpK徏Ts, D~ :;M00ϼ0C*,v&䛡LjU*zуpKzTg䳁u)Ф@']V" .w ռm6 )%"B)-1%bVݦG uwx9m tNV,y+hw0Z)":u LyDM.GwH#hPމLI L P96LxPqNONJbm֊Ι :qUt0 _ Ǣ K s`]K H)/̙^([gيkRD3 ªdjo&DN ";7JࢣˌgB<"(!y)E2+B%lmf |2&]6^10*R1j!ۉ jkm Och.?@$11vN^zZBN9}':Zrc_~:69 % ~0l I/7L)s5}(<"~VBWY/@j +۵W *!QS=QrYTUlL{/lB1W%g}z9b]+8HQ)ϩ(b~ɸ:w,8gte)T@ (-©_MV@]ϫ0V HAxOR2/TNR2R>D mwl0ȳx{ 0Hkc![wENPw|}/4ao/3?P}&Y ġI#3Z':Af#մ-yvn``og{߹mb(\AY^:t=p]΁yϲs- #2K{K9_SRBƓO֌|xeS8Hwem[c*a1\S@CQ;~ L8"<}y?Li* 'd֓q]PP H>ǣV؊vRNڀ:aPs[b uY3 aU#. :zˌ*=H];ѨK#80zŰ6c:Geq >iuO7%r~CRC`OZj˒'D,_i'N@PA@s^ {LfY6J2T6S%DA6%LWu ʚZ##7!, ^zE=!];ƀO;6A[gz :GV7O:6Zw8eZ6o G[vw%nZ1?J+N?dPMC䲉%fl/)& -l $K,q3QDT+eY@Ϧ)eF9CfG cQlXqX oW:Ty̫I*ՠ=>:Yÿј*d!9gt^YPG'Xٵe,yur)e$b1RnS&BMr4PhX*~ y-&2SU/mT*?)|Co> O{ː:г^"X W öǨ} @(-{zKdd3ӵijiv9+u1fUl4U{O&hц0'3=sΆp7,< tXoH2=B?)煆.MZl5c",yP tU5߬l Iw}qL[X\l*ɛmM$x%VO`+Wv!؝9Sro>WzS޴4JmVЦ|3 vw&m"ΨϬ>8ү}3[2) g`!˞jFZ RtjEikK|MUECg$-uSUb1ܫvլncd:p^ m%VI}Æ)+R5ضXݸbҁYXXYt*̅*ȭ{ev ܹYK M\D:U d)r_]` )[+a1gk?YjX3$Ot;F⭊[S {L?yT( zƩ,o;V_:Vqz`o,dH:XD#Zqe?Q[n4zXRifVh'uCKǘLCAuS0~šFmHd˾SsP%UQI/2W5$XX|fx(aמ]G[css9˶2>WɣNsI5nUZU ɼf P72d,v-B,ǠY!&Zn,t<:bd?,U*/v?eϘN|m3 v[np 12`73%=4笂1py~z>t{Js|fnNT** id98yA1IZv"I<_Hܾ)qv5]j7Z"1yku"o~K`?05|KHZ:KjzE& GATFD-9ʻ{p@f{K)a;OjZw%p3IxĆV8xN5 ^ȿJ*W1aPQ쵛{IkD4ZgA_f@Lasbc&nz!C `OBUYS$w%'A &k2|-"s@Q9"epfWF'&i['2]R>`ȦH(/հ r 8b s~Ϧ-`H_J ^RUHNުG h ES*{\M fD=9fU+\wl|I'1Jvb4#rEP\|D;AKyfnFw%]?o M&s֙EW&r)u57|HGctsw'1+OCnsc3S[#c 4Ym^?IŨu//flv@IaQT6rXɘJց&{g-#Ȥ? nDPXMY3:yKj Y4-V^,"%;:Ln[$ p) )[FAYKj"(kkM(Ο!_BR*QMM6$EMVd~2 *aoQܙͮl8ebqNZU1̍8O3Q@rDq8)7͖l)a\rM6Oܡ_F@/A/z=mCؘ["V򩰓%zÝEqNj :~ֱ~HE+˭ŧl^{aR4o1Gx>(+>;5E"1z)s3g@ g9 ,ӗmEI@Vqwg9t"ܣ-X2 |.gY{V+%Ծ?ݻ-YWkJS{;aRHe5TJ&˨AOY WH@3ҡ#h&#jx%kL)=_ }*e)3¢ 0vfrf7WL1:eV[7g?߷nF, mIk&F~'&1g0…_([@+ay ɞ*r(m8G<77 ]A֊mzvDLڰY?_<0Փ&7%hYKDk(Vv~^1̮q$ [,1v8˰.9a9.]?b SW@[ˈdk-<3fbЂ+a~–'16ƥs˯y*{UrH%K~,}mN+M `%-__stE2v!Pd&ÚO1-idǮ(yHek`<52+z .(Ul+0ʙbi %Y<ɽ*[>\./ Y 8\K(ouk.YGyĻbkS0m}0I%t.,iJt" =N0 Ҍ*(_Ϡluo;H[cU\j :OןSM' n+GFdۙz0a-7bx3S0&"ϰ3]ԾT,]CEXq\_gTL ygEܭ̕S6cgss%袳6'ݒL5rdݮSp>+8z[5M]9޽zȟ.+cF=qB8&D hiYZ3>p83G kFHx'mo]/ZqCi4[\2|c(S.el#:+~6'O]^2IUVʘyw.\g5IbRշ#fWh):HǓ5J &~tuѿɻ#?wϕ,[8^XzϺ/Ӓ `݊fE%>jBk֒Z~\Xg]d=q"T+dhEW!<m;)M^f7J@\;7O Di5 wݕG5VWWv3HU0οj2ZюèrQq])s??UkĹ$aZ>&s(ouQq[R_bxB Ҥ]4YXU3,lvDR_9޻wİgbTte6hsW!n*=cXHӛ 3L]ۋei739z.V ˏ? U&2ށB^;ŜK⹖FlfcQ]9\'SƼ-t/&OK%֑H#QNayjIWV'R2q %&TK}9FRAj*fS%U) C9ȴ|))<0]fY+Ng$/l9euL KrPaRkGY*raA"8i)Zɼ#P~[4ڪJxb . e О㋊=]?pJN ~wb-.٭4`X:F`w*OY>}x9"I+W#XS ev:qeHh$D*bۢϬL]!STnSw6+Xbl fCNJZ2z/Uᬌ+$eaU|bs}P-^#ބ)?OE׈I&jR~j+ m]㑊rpu UTs✬Oe^="~]\:\+ج=GαX-Elx&y{Tw#B0eXJokRzLE]j(y:PGw@<ϵAXTJsBGZȅ"^k26I^H 4C-:H M벿ޏk7avs&ӵ8!Xƌ?G_ff,Ne dJ٭'3}'`e҄wXC,eMvзgYJڴMWGK(Swg2['@5R^M:vG|k'ھ-LL|_6C$)L$JaN3CG[ $pWn 7O1t姃`هh!"hDdbOZb][bQE2&%[doIøMpK1~>q~L>,`Q_kZ.Vn{oKXt򓯚mtfL !IDsϖ|UK_"ImO,O{`.U>L`J?/$d6n#"b.*+ķ,+S'/+o7]DTbS7iO/,hư1mT#S?$~3;4)}qVznGI}? GzMatSI($-8*4&؆G݈u,Iy)"aq ڃ3 dDY3c1I9cLv@gZQ0zT>SL#;zpx,GMEDRu^ꞀGb L4yh\6 bz#>aNT*՝^ڹ7@\\+D z> | uC`OA/ v mʗ#ww";t_4jfummS?t.Z ][\T3i3m jQ/3렿 xbYv9,ى>ok[#YhAuq)@:Ƈ5z؛:>_) AX&ƞyH ^G;d#bab(͋/GHJ~Œu . QD5 e.VB<$J:}XQhlHZЬ e %k Ti::ʙ,csd"~N/ %ԝ-\ YFj!5p[@+s;sǓ=WMxjN;٫xewaU-B:I%' =cLs=3npֈa*^e6(r;+[RMD箹p`YfI"pQYKHcv]40 D[AwSή-+%`b1QVu6E{@wYP*:V9:;/`9V~ eK0?>CPK-lb$p?8* P\j(&O ݼ*G9؈h8(rIK~hCJ_>w4-eJv8ϯDK0h&;egB4#+Ni'YMawRl bV#D ?H"~;(͠5>1Il=Y>FikcBkXf'rbmS}ɞ㝈<-8<( h9<* FD`)F [RA2l^KvJ 0ÄJqH%aRoޤ>@ks@UT߂cm|CqN}&JI3QzNe8ˬ''9BLȖixwJ#&Co1aY?){?8bgqV`Ai/Y ̀`# P] ,&)Rb ]3_1x@Ԏ-'wP%YW$K#:#ҩ.]5pu۝o<ސ^T x&L1кɔ]k?/*gi%.H煦eOy25:>ћׇW'돌yW% quRvLzn̓T ұTrGp qY|Հѵ bC<;+N|2UqWӰMkQ| Hrmα<_I/J͗6͗S^71> tlBD%f_1Q?)!˩a@G ^Y5sfC˜mek#-`»O* *^PnE|,AP?:s&OIg6W14w;Pt4W[%}o!X%*6:?9'1 6$_fUq}אLK7lJkFe ~9qK54J v<0R||RؓY~7H8=Zځ;pt\CJgjT̨P-QRU[]~OyV9^e~ ǃ5{:n"Mxs(܂97Y j7֗LӞ$ WMMwTe ЏHjIQjݷnE,|'UtK:Z?`6g37C mԯq?h 3@);$j`Zi/)3`^Cr4NT7ܴ+#(IKw$P~ 69K"&5}S|?w?,c]ӐTepWv ~]K)ӹޖnԾ[|c?n(#k"CHC_d0ߔoi=Fsо46Qw+TXh 32Oe;hs"_WUtI .}uFy^Gj`#qaU!߸w 9Ѯ 7[FwGPݞS5U#.$~nSf5! /jH}B47I4] bO4lɋ;R6;YX,z:\J ."?? )od\wUJš3N~B٦'bn2d)Ə$CsiUY0$stevW1oEK{ɜ`R8~ r4V^{}[Gqiqo R#1xwRB9@ 89}>§'nˣ!]HJ7 @Tqogop):Ve}|FչQ< cQGGrFCX3j'z"+?6ڴWGV>GC >$l7_O7D㗪*$~P7-W$/ƧNEiW;S^YMGχ]֌<|Q 0Fke*?ϕ2[c\h.q}G̮'mu9EicrNdVZ)-_Tf 3WCI rJϳel68fA2F5myZ/r,6p(#g?w 劖f]/wk{dt:Ӥ=ΰrsYm&gNX[0h;>WӟhhՌ,Aݩ#ye~?KO;&aٲ;JͰLq?͑`pE~Zd J)΁Sډ 6N^(&0O|a[tWwdqvN @i m9ƢL8 ;~TG'.de68Q7S+๣6ZM. Cvx4@eL?o:[KN"}JV+:ymFҝK*>6 bOX85!Y!mFg=Ĭј_>%b,mq-{7ט|0R~j iP,QioT.3ng:acMd Gij0Ͳ/JN^,?O"D*G1Z,w"D2&l]tN(l* e)j㨃=qwނ\iMB"L"KάrAq6SH+lZ.h2^=3/-[<'l(lK=[wx{bFz,dCq"KcHѩ"F켼>SRC" g!f$g*ߦ2bnC[/rF 'XCـO%F+!,ܳئUHSd ( ΖhApC!Ļ@Y0m|X)MІʠC xhmI,o^zRŽdJW-quxB Z$YiȠYjVōW.?L_\;Ir ;E&^kVù/n`=EMCcgMCs<)9㸜`[̀2W1b#%\ ~J'M3KGHB;9wU哭 6/Nnd"đ8G$6v8R 18d g*:= /I/ J'FFD`NG' J$~/:,5zm+3yz 5WQ0^$ nBlKwxeb'Ú&`Vnliv9`=ؼމ^Rwk8(NM>ׁ.fW6kݑ\)%QXӷ;7Q8:ph Mcg&HLxcv QwQP}BaqĦ#j[6vv'r^u|9h#ڑaKW3mrb9PSm_GAĬZJC;YXm(@f̀-M?k;lgHF6N%/c#e${Du= H-:m=Hf.}YBH;==w.ݚK ?IHttY~9Fd&;t-PFd ZXOJO.V5mO&̰9 J8:NW plƹ6FӸeS4w_92$LԉN? Z>~MQdN8!EWЦdWA{+~1A?Ӳ%Z :>i˄m2[N P *xg=ߐ=q<ʀԑX}*47axaփ$k&]sG[O&w`IrůI ll 'gE'2Iҙ@ݚ$E==%U13ӵ>SX=5 TɡTMϕ <8&MeVBkko'tKA(oDx5q|0(֔jȢLu,#Z%@c <ʆ9>=CPTfO mB9佱7ow:RZEőD5my_ӏܣLZ%AH{zⶠw̶-?=Nّ uqh3Rm#qPvw%?EyD \Iz=nU4mj1!d._HF.[0lyr0y )++JKN69*j2WKV/$V.U5qllz0Pհ@y"f?r$@M5e=P$# z"~Ф}Ԏ)HjĂ-'mրX¸V>09^!ɔO}~ !SR J,A7M*$}Y&6 ]!Ao_2Vb{֍<7W &kxw̅!S9on6͔.r6aJKyޢe OH88 q eAl;oATi* EW) Pƺ Tkf@ʟ{OhU*9"V1)Q[rX". o&עNNF-0`&^CA  Ւٙ~~Ո qKR U?uá_DB!6iqqpTD1+F+U{Gu`0Y\x;ˬ́f/nrt &y!iy mݸ7r_XO#b"\/ VآRY b@ZB|w#>rc,wO y=>Oy vVDI遰 덴=)+?QM$r̓Qqӳ#30foef׆ht'/CzC!OɸS>NߊdRbۃEdsIPc.Ek;XPcK88MZU*? 7 v{Hk !Wc\GM/$}g%=p&G=AGyF(`L۬L EձJ7 =~(u-,Dx%dv3[ jQg13`8qg|7:e֦`ӤZA )P"MNoM.Ra0qahЌ5| %1uJzl!-"b_x$\PW+=a HDη7~=@kN"Y>rP^ڎb^UZ2W0zzVc=RyC6(Pi'!S|8-a%V=ؘpaU b3 o(;czQYeg֥Ųl߇Mv,}M,Mi1PmP̬ %h/cA\1+͙~p~P;cT[Lyo$;[BP@FU x%NBz"FP#zDIP|&^>H\z:*q-ֵ ]eC66_H\aHez#]uKr.۞/dՆŸ/Gvny"#hNirzEAtVd}=Gs* :>'A`Fɳm vӬ437(FT?w]uYyXz{OtmjGܮq! @xhɆ]*š0GYϺ;ozN<мr &K~ 4r'Cjz,QbeMʄR!M> [hrH%yxQhs}/Q`٩~;%&\MpwΡRkssaKtBP$eT{ҐOY/!O7P*YY&6uF ^HdC!qMc8qm*X z4G mA7˺P+Ԏ"XƨI LL'W7/yo_3%GAyIdIβ΋` b&)"dG'*/G5{zd7 *7SQCP9زy6UW%PtW"Ϙ(1} H l~Qgl[+&ՄI!'|{6d(V} x&c?Gg@rox6@&V=@YR+s'PwhhvM154$hL|2]xfSiVX}"DŽL4 /݆\vpLvAA^E0YrTȡ돗4Mӕ4e 4S ?/1\*N ꝧUb@:ޥܱ?S#teʸ""=+6F ,IoP N~: ׂnC:llK)14ZURAaϜfE_iBLB p둓ўRYA2a9]b0ZhkѥѻӅ1=qР?׏߳tH W*GºxR +`{ R82ٽhQip C8O̳t_e]6!EUU:JBġy*.5e Ņԍ7q[5J@Vo.\4bd1*!jb{Ӳ2u*'2o bg4<k+7[w[\q{Bf-+XD=ʪG':/G ]0Ķ B@"zpϔ?ZCBVe@rl|Gae| 2 8|0Nd]ս.`,;rB:,]-eƃ/qfCЬᄧpd@a@24btr# jIJe'|իƗZQk H~-U$go:Gɋȵ-0=dfcyz+< /ְ:lE[ 6.TZlUĢV.$Zb̑MDstה4R~~]%% ǘTQ ^o\^?&뺷,UY["Vp$,t~=׍;K{)聎>ػutk8] /8N֖FBocNuQKԇ$t6z6h{, dal)Vn=vbmή`rgiCX1lk7P/+iѫ_$ 8z>bBl3s +? 5XԖ)ΐ bpl\ߺ&/ѻgYHx_dNވO(ӻ~|4e]tBGU ݪZ1M@BN4_odW_*G,4/ ꑡ7P+CMIҼɝv'P|)Rn9szjx>&Tn@pp LkB`osp )\2p%O.^К"9B@?- {l6VTkX*`NJݞY閬X9ZA`zE[lȦj ,q5ӋlRMNVY.C$xi;H&R}pD8wY<ɸ1< j> ` sK6ohz OMɫd8J*!S 7Ezj6 0rPz<6eFNo}ԲlIW_%$ۭmڥ]̱9)C.CJ$;4@|){fv`M<7?,M?^I?ZfFo:FuOA+dY tYj8cyy NJ$[ƍ[}#-VǤ oaoYҒNbS[hB$VMq+wZUf1okQL5N ϔq-PזU&XvyOͣ _DI( r=5oQ=FigQ1E_v< #|}ӦBW,ZM2Pk wIFy~ eĈoU̫v*#d-Uc+=CÒӵ2UVHc"dPF5z||:Ck̷"V.*8eoL5YDbl; ?Zx(QO&ճ8y[^ R[w" 3x-!PK?šbdET;ڧ|j}[SB@PO:m 'L06F HIvaY(xQ@gvΦdmɵ&>SPw%1^ل+w :pyIb dC2QW)K¨xjhx{Β.uUd0(S8υӖrIw'c)sUԃkaBᮚ+(<#N>\nZ*dIcVe(Νk=H)8hFkwʠ]+JSCv !:u<ʙe3-R})WNJd.xWPِc8dSPL5}x6 688vB&w4M2 åqW\D@=nrNc}H-+wChji\;x@TsT=*tnF{XDxJxÞ*r"^M>ee5U-߭vS}> (v?H ߵЮ4*.҅񅾡1o;wo2 g҂v)>:A T5;_GVxK3cl)Y|ԄL-{EO\ ?:ErјVv<8% k%T@~p"d2 (ROD>BmQ9<nݐ׺~_OB_2ykr专w?[]!nP7: HӪC24eIilCh#vpF]ULNeR0bU& k-#* >M"laT<ؓfExc(QM~~RQq dyבˏuK1|x-xB6Rh4 j6F `>R0{[r< k9D.,,%|Y(N#V'Hd?tS2عYvtT'o?'kc*Az#3'Xz]T۠p[(^O۹yJ3֯ǧ'.pM ҒH=eؙfs*[AK!F; FjLt?>@8`3'#ᕣ輵(DGs_XIjBf.h JJN]u$ٳǧ:N ~diq{E9$jց1 <,I'Td&=fv^pKb:&:Cxzb$lMDN n7{Ś _)O)d,v %;aНK!];9fӮ*ŢJ* .&~ GO hI^n+SO6B Ǧ1ZC$:QZ=`(iEWegWw kwQǿa,[3eqpY"j%6}aqZo# $7K,$F/H_ë_UCY.$InVa|D. E9bL±A E^:aݥB;U-kOe*랡HKff1h_}JL)g7zsWQ^j%_$NbO:\ U?YƶT=r$(nxoV5Q MLdCu16,yn3Ϫ\ )P^B"d5[ðĭkGH=:rrBd [Nh(~_Ҿ~ĻE6SD* H%əl7r;JB&v*%Q]?SrGIѧPTIeUid$նF~#+n쵇chlɬi)Dabdw o>Ka@\"kh4*/F "L~d$(`=6(oI ϵAe_Up%+{ Pˠ7C_D~'y,9u[5<لbj,2>yyWl>ɱ8)Ǹr3eyQ# 3{b#oHI= ZK64 T)#GtN7̧$1۞y'_p"{ (GERw &1יw$}d*w&h kDxB03LFQ%a1,~~4wˀO-ȁņR*[Ulr= e^gF[ƾ}N]IǺr7r%pl7 .dPN0&UpvPlg@BPق4]YtAToDǛ6n-icRK'6!+n" cqDpԫ̙t~)=Dj$H߇)!Ww ?)B+.ڞ=_K_Ap rl഑^$CXp~^#b z O}l#>{Xm1 $?n3RaMq>-%U\B_.9<3G}O7 ,fFo^F xܻC.hԡ$p#*;vm;֑6ݔ8r[exjF#蒠W"^[nyjEBtC Tmy=1{̂G{q/7G/\k/G\aOnY>X%f5H,&Kc)E\@nF~iK$0 Ip$Ur橻B| LJY48I`?U8ϴj1ݽmB=w>a 44=gtJv'({m+#)Q'g2{lx&%]V^0NNwxN6X#/fAmq[I"U^cr;wE"'ȰD_@?_gbZ(k7NxܰSr9tFf&%zvC5{{%񣾀YLB~ >>=谼K+mX >Q*8a^ y2})R*e'~B;MYX]Ȍ72AN}a{@.{" v3/ e6N(s>2:P&@g$ć!UE@=AmuR9:IK#5FVO=l ڱ/2/0S!"r1Q~Yv`fgdk8z6WЯ¥LNEjd $PNܠ ҩHi$TbB}//NVvoD|DZ\18]oL`$I.mLY=NwSRW$ÔH}}Sh6 JYFdʱ2 R7[nЀF.oi4ήlyH!,{oVRNں_QOY61Gg: (D @$f2Uכ-I^s[@y ([,.K)BRwzܬ2 (> *#I]X%+u+Lcgh_}3( oXQbI9*h4!Fˠ륎eYCS[7n[pT ܌{طZ9 (û7ɣD mYOGݴ.7}hI(ّVD&[ A("(0_5%*at:kybZWC"s[U7AW]6n%lm{d(~I:TEc$EG یu<fģf)&Ѫ9EwǼi{ufC(}P}LiI:,D4eΕWj$M᯷)Mk|gF JH@ Fc1=C>|>d|yT_OevxFv+S"0 ,8`6U2Vlv8TA׃Q8{$ٰUO Ym#,I]y7n ׉+^QIk/u$#7gKf *]#^3LO\poL ~6k! J6uN^Uތ4lg"¼7J͔mE/w.Fu~[%!v;~>Ea'oi"#C9H {{Z L8eL ֫+F< izU-C=du[ Ѷm;'TK]^CVڳI?Ͼ=A?OR_[^@âDzw_z}%lgW:ia+W!#ѳ$G0aa,/5Zv z=vumQ8G;3t鶕sF ׇaOܷ2r~sy}+T< &SN ?u2.1!V]p2DL/N .;4Դ|FH'(i"> Ե5NG+A[jTf-3 Tcd-np,H3yTa5>= BYyeȻ$}d~*pt_/<9|4Zq| @&S]Xt863wvJOyy2*,?Iʲ7Vog~ 6 ~}M6>., d%rKҹ&zlotYyITã*޾E;OKpSޑɩk èm=CCrVj5HJnznu Ւ)c8(vn2Ԧ(dHg?c̥M+j94.Zu}5]i^EPXyMqk^^G /' LA`D"#tso_Oqh'+#JHg&z#^\d,q@qE=b`/ЍX>\%!BcvY#gp ۣ{X!iuj-V]p o@4ɭ|,R될JI{UԾZ{QE5xJcJ 9^:@ 0$zpԦeO$xޡ Pz*[ĉrN'PtNb?6::Kx_䫵؅2k 1KyRٕ^WEpm&k0\>cwul{2z|r9h`I?ݨNu>׏.]@twd|Φ0/qs}*1ȶ"1;!I}fnT>8l28w~IQ*5-) HppٖŽoJ/.# %l8|)#2%ócw@N0M\ w("/drbb LVGM\_s >3O Z>mR&|~]p ΠԦ8c1=d7`I+P(PHR[+do&&^8ԏmX}MyiMtI^xAw~4\*t1þ =N^,6'cZ?ot>&p"XTdU1fRP22Pg]b(ºNc/ FpLqItШkiк3< 8~%5B,Nʖ4VT+7U?0_wk^nMm|A#$^޴z]7:'$RpYɄohU<2<=.V`%j3򁺹JFB! vPJD/,>}%ʉ,^Mpf7ҋG-jg@ "A21%#Pneڽ2$bneICFz= Z-j@) jT'{V`t_G?ҁSWO,l甗 JX g2>Aؓ4WG9(2cQWnS53z8}ijXA:EV΍,aOJOO QQDBc/ZxW6H-ZV&59=;mtpypYE*R.-eI=r? K`߯Qinӻ S$DX3N ʑ%HՒ^9-b_v ݙeXjPñ3^d4?X5[ZH#ljj^?PV Pmd9ZP D3)-aڨ ǂ o&>S[*fITY )-\zC>2O>"K>GxtK@THI!@&3SW5y ~xͬr1sM=8ֱOyj/J S(;暽&!yXlS"fb=2kdϫ[ T )1,5*vF4o"$t1͝ (R*]k{"Xo2y YoE3ـՑ> w%7aΟ4ǥ^(-#+/rbS{8eN+:,'IO,?p Ӆ=lS=t~Q# .gI"Tn넿m?ZAq6J* ^X-a%Uez3* k( gLalnj[u;@>T% w]u_UՎ[]n_C.PUtިjǾ/# Ldt~A\+,D Q  Yz=ev|a+#ѡ3VDo\#-0sErȩ7$^e ~K:^_i$cCE-Vuh= ,.;՚]pQ{udٗ9y6'tc,;^rW(my槒~ߏ X8;^N ;R6E鑶x\ӕ|?#ZgԨ|PPL+tsR,B2SxgiS3$^ dSa8+IN9=ےdͦ8UR.<^&x􁔡Rk:+]ǏfONF(I;/:\ZvӤmK8̍oN9g$";bY;>I~!6xJYlx pFC[NڍХӃAc4L`"R$j1k% G!N'v&RPSK[pΣ犘Wǘ[d!{{ >&2”ikJʻlx z{$}Qk@aAwyGv٢fr|7krc>Ф(".k} z~;78CV(߈tlfF%r4FYGn'8H GZC% DxJ8Q>s:%hg*O.w6PY)K~;!ܟڢ+j`VVdJA(eDe'\FV{7Lԝ!HEܼ( 훝dٝ9"G &8x3T {D;t qmP#8%+SM\04(PVđa 7{_otĖDi}JsPd)ήth~(nh!ЧX(t]l۬ 2l[l]92ctAč# xVѕ۞} \F5]v XEY5bm8qϬAq+2REq!x0=7>I#~~況0 c_7O4%zDp6Ễ\K';R,11#\`^JYʗJ#s[]p GcOB]c g_ ˫tt%g6c|-eB?_d9˓\XiU+TIa*uM&tbTQE$L_,8W_H5cȒw5m.ǔC8 7#ѷ;/o&u5(q7|$VRDČju%w@&1I㨇 "vF54H|',%XyL3g9Avdsi?*ט`^9 ?_ÑAkuҘLlп9x-7A5@=Y;<F\@2,[brh@>'fvI뫂 Ϝh.M~ŃA@|:_YD'-̲ 7)l8C|G6tBGfT-䏆Nx "Ig@SzYJ权:)jjesPL3ApC2_)F,H` :^&.הc_b00x7vx$-Kov< 'G߅Bڐ^7O?< Qp,+8-fb<54K|oʎ$NVl,Jc4:lmEV_>w\u4 U;Rjz_u+JhԄwRdbs}%|!1m65ߞr^[|s:X5gob~j0- -27Ջ?z𪱪^x=R">ÇYV(`T [7WcRԲu .Q:z!ROc6ִ_.S[xk[2jUxS#[>ׂI=)8ghJq^v\~&;7^ٕJ2> ,qˡCyh~oJV%k}%7l(·n59[˙ò`Vm5s='SfB6<8H6,yw5XXl]y4$< k`AaWJ0b ^X,C8?9^9$x(\[@gQ4pXT$jtr}inJeOW>2rB ޫw88t4GZ|z9#;w 7zNy)v8h }H&'G4rt; 8|sGJri.zTAܖnVȤдM?+P>icij96މSIM/^f @a!ˋz?dD&yf I %qH G`4l{?JfxHYi>n 0lc+J:n0C_r_]/7wVœ8rx%f96>z'|tA㬕`Ж:9>:;DG\+@=w=[~{Gv~5Q84DbT~1Jwm(HV}; ⁕?\v4&D9qP&MPUjyU9"@p|1]Y'SHz[R7xߑ[z`BFFΧm*ۓ4Esԅh+{+V=#^z<1<ʝRc(-qST޽qZF&8rijh#٠JMGSxӮ=l̋$z[.ڍc\*Ŝƻ@گ2NwFQځ3<Bl%gV&bُZAD!h"C}ZV)/J+Y7cgV6yo2c5 : *b!_%ohFNI}v5X?2z&;ͬH";дv)^~~Rަǎ4oOt ͜l+=QI[댤 PҰ;G ]*ӮH4_dXAmWҧ|*YzZCYS>I6/!c>Ff=<%;=Eqh[qJ I9N-<_I<QG\8ģnx>|c.5OaxEwT1fЍ伅LxomXPr/W ȾFYyeT 3 6@ҲrF=7_ PVAe}QD"u 9\A魈ȋ;ۈh5j' >4tX {p7СNM E*mM3[Us߸^d?Й\g(`+=T|eP@kcDk"e"kly6@)ߑ8Z *E mRRJo\ b6R H+7r" 9)WU8El4-*ĶA'F:NkSvNŋ2fWMNsq#@?G(?M!}4WjJ^6Q:(Bp2k ES^M,T|uvO'S\ubGl\*@wTU\ZMJt~S\yO;kGa9dN#iPGz]B/s-O&M|1cOFMqG[BNN_qGґ;l 4~c^"1o*yU^[HEP9`'Zwnw#EU:@/#$]Z]EnuvR}/Qb ۼIĝls=M8gڋ>ptk}$ Ra0"OoJt۟ pR)s1Ր? %ԥ;D$ܛLv42p$߸>ӝ+tyJgؐmԷ4?!r~i_XxYRu%L߈yJjnjmYr:@VSnxi]Lb}[+L@Pڒ\Ôd0ʹIw[_B ңX0pL;p%l%[8fDpX>RCÑglmj,VV~qלּ!<)YiľQL,R0)eHljEe[lZDMcg evOUPXB@0*W\jT¶'gn%W q4 L^ WmYޖY ꈒF1̬Yx<,#eD>v/e@^cD 9`#lo}\%0KJ7mXɛ3 s᳻!/+^KF|1p׆PoRvBSmu I56imݳf XID"MJv745Zz @qt#hD!|^z,ݍ쭟W*QԢ63&DDxuK[OT1h_fMU HHС3&r SO8 S өS륷l.Dx1Un̑7j֛;&`w$ϕl^./7"&uuM7x0>+T<8a@uXYi^ f@u̅/+__0It\Hda˅J|Ið ~`'hA}_![G 8Ȕﴣ^UFFA06= 0Q/9kZVl=ӊ'cܻ11Bb"7@%g7}/18D'ˮE煏R3Xu߽"Ȣo“0:.xƴ{D5 Q*L>E0yið*hG-2#G TCck2"\ZYxdiŠz?V\>/Hw9,!05e; :FlzJz)!e29|Z s9%Sէ 0*t;·ɉqieɱ GR8YYaDtu{p~y3Yᔢ ƶ3J _h{B2HEloTO=O h&!ZX16aك󩺊_VS<[Yc |Q q2SW7;Ȋ;6ĜTCb S`z #Hvui ., V)89$chFd`'&XMƨ^g:$R1F?Id[&7eF.G٠on؍<$QP:2ycP8x sj+dXF,ۧaBfwdĜo+AǛ"^e"Œڡ/lp70.a3zV|'U:{-Zz(?i-o$EkaQG4i|12rIX{Z{< *tq%tKvlDPИf]N9?E^w$7TAOBxBUŖ9=̂xȗJ'MWgI > =ҍsU:AQD/`xNDp j;9>l7K= 2d/$J `<̫%ɓ@_9xjј G Nm 8DQE\E2Y[/WX™ũ)&ٿBbmز<$KUZ(-=PJ( A#{lpG쀧nmY`\77߮δ$a| HtNsab F__tKdR^a}k+\T]]ljR {4QaQV^pJ0cE~w()tXp8ѿTruXDSnD(GM. n[(rJR+.vG' N$i!(_+WՁwIbq '0 r1j[Yh:)E)zܳ|59. bct竛 oeUiT},@1nu@ CdiH]d|{5<Po *dU[T@ɵK?kf9-[`AOld`O;^E- 'ל&ALDF/VЗr!n9ŸڤlX{H8=0AA{@ܸ}'n uӬ(PK,9E_8pN6MVpksf<,̤0ӱ N^ݛy4Xۖ]߳r$ޙ 7"n4"mf\1˯;tvj0Td fO3d.12ۅ/mYjMIN@5lȣ@Ԇo*JjqBeC^m|~)dD3GX^^dݷk#tRc 'I~2hvZ9}f%}|⿀+Xn:g*Oj9VX""T цiU0U!D/nHw)c&ZuoM9]> lI ndWwۜ),?\@*V!zGgc}(M08$.j r6Qn-IZ,u\Lpyh *>%Ƽ憐Ӕy~RNN~mL` |m@erKGd";yͽMHTR57"\M9L[X֞3]J l_ɗ&msq_<#HvD'ȿW,;_I,y۠됱=vW >C޽ߣ`'>Z \(om+Q'5jf(yCk5fOs\F.ߖ+PX5nun4`VࢫT@ crsf2wVmJ^H\j@.<kȟnN`QbQh{O,nCgB|29^J:y4(rU/ᤥ $zcuwqm.ZLK~oA+T(t-KXiV$妶>rqE% 4;> D MoS` |B~\QwmvzOhIHnĹ7.qE^TOA,hڑQ2S8Dc4gSs ?H4d{A쒩FbY6~ ƥR}bS8T-/B+Q~"ϱL>tB02з835)@u_;h6XOY`M~TF8pZǾ^wI>Ė@ي4=%:+Q~>+;lA9%HrW0^@S&ޡ'"Ea6an,Ev%|"+x& SFtU$ycK6R--)"8m]Xr!)@f䘂O#˲} PN]sJ47OrPXfۓ.t5lCv.>3F!/Qwt Lr=T@ow[0Zۛ8-wb&Zh"'h,v;;gE lU$;Ӡ56C=ڻNdrb0:(xZQ[VXt҃ l 4֫kt=ӰѦ@=E#:1 Lш=1.-es{3KgШd4r[))gO݆r(I=H;'V #:_æ&dlCPѧ%}):0G}T gOpi^DYG6td91/N *mNyjV+!^Y7+UEHt?zPF;-9+ 9)iE_z?-ee2awAKvA R\S^BK/Mrp|:QGTџ̪K4bҴrF [ZmPJ6ɏ}d¥ MKp\'uIشmy܍tg|y˼Mv5u͐{]e C1>~.H&w!/E/uǟd[1SZ/$XW)W)))y΃KZ`~LקKLDfWf4tc0:EeFΨ1sНmDRadR|f;oHn032- o͢fS Q ,1(dgEO1 kp9kT&C $ezeA;pc)\S1m=/e( $yBB< ^X`&5VxGh`NqG9Y/GaY:cRP.Y.Bj`CǘW蓵0݇{/(Z@-iR>D{7/1#or5N_ 7\N8P/Zdsc]},x` K$e5Gw \Iay3pNibۜ]gYL?Zf~2/f8ҙi6`<%s$…B0QC}gmezT$̚\6$3 А\nOw#ol20"C4Z$F.Yqi!Sa=gK 5OiW\PHF 0%R.R7h8î'>Du4>s0D`z\"lyaʕ-x}UѸ?N݃`RQ%˅41oA\e's!GȻ2UQ7j̒ZS_bdQd#S~G ۼF2{n #Qa#v >c f z]WCVz Ɂa CZRx cwnj yP0:vYk?&LOw'ͭo9 U>t7Yj]h>4FPP㵍] O*w7SZxxpXFMEw4H/C5cr.KjwbQ&xYFqs`fHqQII{]) "/v<[1w68V0Q*Y<;1#kJ4ZUܶu޼=ahX`X4}vL֐5|/8l :9<;G=_tkYa.#͋Hb/ n%\.I*~ؑv;֦pM!PVx7f])@Ѯ |50v Jex2mRȞuO=dJ >t+O-hm :ҩh0WJ-M{pwye+ XOpC[V׼@tTL^_ժuM~R_iw!bZs/ ~k{8cM b=PTޱC7~cHָZ~lgGA~J,uXlk.xhBBW" wK,=A9l^A U<`++7.6W[ q,:H+,H$]I)M@ \9oEMoќX~SGr hKL*mID,Dz$Hߙu t鷤ȵ%]ҁĝ 2RߊABa` TAS=Q%ERqMŽF* uGOιV~_bn9|d# ''h r\A41 *34qr Y2/t$<`d8)sxMP0ͮ8xHa܈GA볋"3eQ1?]|ŅÚhm݆m Fץ =m=ӫj;r?2'X U 1[C ByWr@^CɯV ^+Uc77!S)^ֱJ=nImBs|I1K2C>cW459qmzQ^Ȑ`dkDʍx_M0rNYEz,`YYfX)\U)?m8) l/ZE(<83L_'xN =(7Sߚ(a2"#дnR,ɠ [V#J,ҥܬ. -V%w|UfخEfR2縥KW(f/2|~P6׼G8%i'"[`7wOq ܸSM_+FO1Ϻ?r;P|&LbRָ5(%LA8|O-xܑdr,u++l/*kr/*琤݆KAt_C})'PXehh9E1.dN?xloQ֮maλ3.>M;kQx&gʺ:/=\%XheZC N{uX?K*rҁU`._ξ'&baS%6(8:/ïOf" `ڗD[lAՈgk9 YQ7˰@Tqo6swFo5˴>C }egg(_\Rbm'lÜdf01Ata gBy//mլ1~}2D'!iw9~ڐPOѺ-j~&J-*{h(Ć%7$YjsQYAwwWV kzyo._Ҟ5D 1Rb{<'ՇYQ^Ls_p"q=ZS+O(#ieeXjI :2{4d[,{MrزY6w%{VNH]L90ٕ?_;T0Ў6 hAb}c6}Z|z)pz+k!0ϋN,BFjO(՝P=m.2*5㆚@aJ?7Kh gSeM_ȅΥj.eգ)ױ~;y4HKS1wXͪ|-O9نqa@zMH]/XP(LVf9jLO?ѥ + ?tސWƜVu0Ÿ(ԆOg7 mp .^u34@>"R2Ie0j-NeK"/;)E e4Ɖw20-OAզHgS1[2.CНu h;k&s>IS"4mU>~;SgmB6N2۳R-+GatPz'a_5mʣ"5-cBm tޕ쳎|)_Tm*TcR]~8]|0*I4uz}/ C,nnяv<36/iul8\ƁC( #z,FсEb/o߇(~~./񁐱Pb߭yb0)e _p2餒 ԐKj jb_9 O~e6)g*M>z{z;i`zY7k^Yv)$7]ڿ<c(4dؕϢrdTk k}VS &{B ؍P-nm|~lՍo&|06镱U`NߒF5|[\cb;sS3/q. 8'8JP гmnٓVdu|7ץ#EVmY-$/9>)׻TUZV)D}!?|XcͰ-1PNZÒyx3|GoQ-Bx{:rd7w?y<gds2F Ɗ#rgɽ aMiNYqG V@X|> LGe)x,%Äbv[󒫲sgxQA\3:FSEy4F HOl%6ŗ=ǎ@J( RMB]~SB,8ka֊ f̎gQEy{wDJ9a3X#|YJv&r[F&a~Scw\a-{N<0fIϾ-8V8% ]8L~77F' -`ɀVAk0H B+[JÚP#ҔdJ拽D3Θ7a$sAZt{`^}P>'j{MV5Oɴl1T=Q-vV=6U؜a>16#nbje=22߿!XXV>sݏ?\J}K"OVBSvp6ypDɝ?U-xRN5 i WU A/1Jv[IMRx?8%xW3sgI@68y:>+rJ2'J `&Xd5ra=:62dH[imo$̎LS[kZ#pw "9$;4"L:n@ȕ,fDǒ"qiqȴ˦0ݢ4u7P) hX♓6I<,]Fm FKJxwƮI"2GOiQ88boϰh !sJ}z`݀뤤<;żL6'5 y-Fu$Ϩ؅>2 )e+>pd|P B2 ;^&509,\ö:Ĺ<;hԴx2nvԐF+1IzEM" Ϳz5@6v(, *-t-_4o9oK U FfqQ6mq.$Bux M^ wW9fL%҅=r\7m1I}h7Mܳas?|{ruW.R ϮFAsv VIӞh;I>[c,TSp ;XNf[̴Ht1~&I'ذj`P xʪ~~f>1=75(ol&a胖˟.fu90 GFT֕Uޡs0p.KJ?T b}aجr\I6caXJb K#?.<׵.HNToAi tXr3&ZjM!Ң1"Ll&:kҡw'(F+˝\1D[G}4>#ۛWdl@۹6<%y4:jJ.$z'˪~:C3O~DK䏺j ueE *gъ*_ͦL ?#Ҹlwd\]"bmQ>yvpToRt~gUȌHQLL(r>@6>Viɒ 2N4LxOOlEڛkaҌ/E5k$Q^!)[ &o]gfk\/I2<0_3USQյE,8bۏ^;:} uYYHB̎L)x Q܏5*jcs[ {4{"D\3P^2Y mdq =:;'S$~lZX1+_jaZx}T}! rw$ ζR,2dW3\hriN23vf?Ko{ Tl%x8B_c&^k#xlNv;yޚ2vel7m72 !*r[cĊ30|Xd6L'Ǚ{25j8:x ;r+L}HSCJ҂\DAz!֡c#FYM3NfBEd0P'.nANO7(a7v$I(I27UJ qDByyPG:aFIrC aIXCd2?Xy봣)_9M[bVkד WQ:zy-Kh tEДt;_^#=wۊ_Su#ķٷ$It 4ՉΣ'p+{+;v2etC!Dr| j ##gqhI]%*d%zz{|l>qklcu7ù ߻dIP /2쪫AٻtgZO&#`|?"d!1kNޤO'Eͮ\os):%MSIly :{\/-u<;J7Rt?|aj/q/'." `1*FA(t&F׻t9{~+9慚on>X6qγE댛?1cP0|odC#IHu+x>4 :čB+aX6ׯm%#wkcNaC:?aqܺevxFRԛhE: O10yPS >RS=P: !Ļ&qA,cOk sĠEw*ӮQ 77~)?;we Jy G؉k{,(hVW$UVP y G<]7t mKS̒n]rSr~=^$Ĺr^vڑ̓JܼzD} .:ǠBxzrYZ.?,+F b&pD0Ȉ(;\}: 7z0n\\}|Tv@xt)cǷ^F\čpWﰝpgկ97!H[b$W9SzM=1y;]X `)/gGF3u>܌6ﭢ@,fn8C&1?@#%sh@& b[zz,mBnSL )|7. .L,-k\*mzNMa{Lm_ģﶘ)%SD)qt($#>:B&LN.T3,\Uf @vq#חg.4@F,'Z,p5N c!}*+EF(퀏iAH }hVĕt_MC$4N`Y$y#C #Ȇ,Tsgv!< @TE񆌲9fњy8IAZ_{J I"ٛH𮴋N=޹t8g~mBHɹFzpT9|umZKa eD7, I1=:^w:[I(Jcd4_<R!:!΍z숳hǦjvW-~ꙇj=Ll]ȇ$d\fd+(9j,V9ycxۤdB捊9T-ɽZ݅-46h[ v/E8l`d]hWhlfɕLLsBDzYt!qLzG}Z쾘DїS1{Ior8+.o 54楱XN`l}<.{Ǝ2O(WSֿS㟝i3VaG \MT&]'E^ _Ã;!Z!fRHqohssk ꄏP1 &YhX8!eODռ92:q %D\W, 󈆡 !XEŬf5KK,)zi h:*s NzKB &j6"$(do}Ao]ٙNHMn9LW2*i Yrl3Z‚QE?&&spʖ7ʋ0k/gć?ӣTϟf`(&P~?Q^({o(+4Um o@ c iČ9B’Y_7C͂5yæś"Mu GF`x$Qǃִ+Nǧ[x^ֳi +ֲ_;(JXEI6=!Xi|3*%m? d{/s{|6Qc"sz:Uڌhٓ ,Ưr(Zq`&]: >dEu$S1ގMzQ!/s1?eI 'הmv[ؤ hnätGÌ#rV=-e7@|4YY†,lp@8v7s)bfˡBnA}myH%_7Ԕ-ȩ3M#Kƍث|󗦫> !GoasP~ SVT]P=y}xͤx "ϾCůkrMM u+ 9+)kE`%n\&996 3"c}h= 9}/<V ԶyW-…U@h?g`Tvdf4Yi-Pi3xʶJiE-_%$um[$ F0R~`K\|nM9YL2۹.B;ˮu~N҅߅/ ^ 3>p9v pJ #[2qj rr%˳zHf@-Byaby)c餔wȺ$Rb,F(T7obHgO u6FK;͡'7N~_82A.Ug KeWck+] Va05,]WGWFm,F 03cߣO &bv2%N Hy;]Hmvm~Hғ嚊{+Q}k҂SPǪ9d4 FY(k%D}S rQOA~Ilz;Z= H?ZiH,H=5Jmb 5as4ho2.-@5G@tݔE7La oUz-m+; cƚS4}%ϭEhDqsjo0v2bJa{l5@**:t*SϟYyN`8,/Z#YqH5, ]I.Ӯ4#ZF~v3H@"ɆDIgZCd>lTKi?s8s9ȧBA0)~Ci0kl[)͇A&)50i27omUރʆyK= U%c, URŨ%bU%5?_F,.%'wlHLڽ3&A6"9I1fYO[":(qӘ2o?{r$`V"FloMZܤ}IkF$)G[LlplC_)=p/\փpXփ$'\՘H|90`12[uLHZ51v@KCnfK!)?MUj9x`K{* /Mb.Tg{Rjbڗ1RdudnNLTyuLNX+{uI!ǡ;]~v>|Vп` )Pv]r4E'3~;rR2Iw⫝̸ _rH8Żb|öHcve==c2#"$jML#^Rr0Sr%͙0akx: A<@Кy) ]kƶXαFxl&Jg)+gkn^6՜-;Y{z4GE=֟E==E/ WKid= o^KI|!WKNI~QI6ܞ@{.je2N(t::*E95w'e$(29uSe ƞMU[APgif*Cpӿ|pȊa%_s_9*#QdCZ3Lcc%Ĕy?:^oXI&B]=2>qB 6.vN:FZOlh?.H~G:myܮKRվ\8.!sZt9q}!U8hhRl{*"nICڒԝDfǔB's0`^DP=1g Rfwx+N\ʿXH`*hfh!ZÃA%p Q]$-:輿b^NRݲX{ֻ.*L(5RQG_!9ab311|=ˁ0*3wlG\D꽂m|zp\E>$:Zx% K-_ u*p`9dGY& 6 r|RL@{a 3@0s1?b|SB? $ .XcƸMWET re ގUI~P\Ԙ]A4x">oWBHu5 QzN^ 274ABfXDJhc=rTr(d uCUU[i,K? ź9U#qGEa~OM( #îA%_$nlMu769Lp{+Yޞ p< #S\Zi^擾6Yiò3'n/9tU-kE'zµmN٥Brf @ MR[0L|{*:,95i?$CKJW".aՁgzaF~wvFRm#-#J4).ɡSU Y !#e?ËjH4wn^"rŅq1|5rʏnKloU2^@q}0Ze6'1,`h?A󪩹ِu7oK"R_ǎ;[BqtLɍ@.#r9N$#k>Hp%wP(tF6WZs0rI'#@h1`ָ7m^:u&wF6=<}c 4o Z E9lG2=>~OPHpO4C;s׊& .{rexTAVy.B؈k[e P1j0wDBQc9וJHJ%!SڏYj:C')˷.B[nAM48̤Ϗ#jFEIlrX2u>UZ\UqF㙛C"⶿jF&U|W#džʴ&Xhb # /)w̖nz1pi[k.|XO+k^Oei-*)5ܝkQLcm +'ֻ |n;h/ovSےk#䁙ǂ.&|,OBRJ'p{&~gsAOL~,,(&f/R2)W[)A d.A=9 zYlГ+M"ƷkD||lnȰ,( η$ҁK;a0(\<Y'px^ 7x7("c&ccM)vSMk6 b6Ea ?EH|X8 +Zn0] /ݥw(in$(V8Ƀπ+44NW"݈T:MÏSX/U'-=SF9G_y$}vR'&^¥!b@oלi`׸H4&q=젻6D]ɰA~ŸM.+~߮WBMN`OVWs r%u-NE*)kxyT)1+'" fq%MMu u\NզkhE#G^s 1DRו@V vh.ߑQp#'R-?]фYˊo>'Nձyk3FT%2G4}mJ`ĩSADƠdiPdMҼӸ+8Ne߿OWTH5e'e# mns5D!lu9,bs7#7a wgy.Þvw4D{ipϻ~sB_y Mf A~3fS7Zyz7Neؒc kX$`yW JWf!CYj8\yI >9ς遲H7DZg1C^E)r?Φܤ&w(|jO^X _w vnGQ۠KTߕַlM+_VN';srlz?+bKs*~ 0Nzί;P:=#AvT UJ}%o wsۘOkW=%,#28k)<F7VC *x0&7U }{Se[͇2rH•kpG43D. M@9&']s;qt[$a'ig ײi_F@[QbUy98]fuQ\DiC_EaSI~+joUk/$dLKvC~#0ӛVz4ď3Q[U7OLkvh$75MHIDJ~Ɲ-yb n?/pJf ISN.t}mBnV>XMK ưrqfΝE;[()Q[YՒK回"W:yn&J!CD!=h*U] &x-'wU ]كMȮ; Wa#%tVؾiv < P}ü }cSoފ/{Ny,uSFB.'?Üb&IuB.^%v ^ մA1ak$ S%-DVMsx66Q fF涑}< Ewk*k @zA&x "xBO?@_{H<FUE^]r=⓱S\ x#e£(XTiL-c#gA[;RretNNҊ`h)/9WxY=~I z9xcu.!R`=HsFX{2dV ۔3bӪbeYqY62-Y5eD nӐ e 䞽qIȲ GuP6 $>ŷk~ݭ?6Ż ]^y px ^H5=à6-D]jMBl[ݤ֏=rA6?gp>X$<Գi;Ίmb ª.HʌҰE0r]@]h3JJGӫ)ڋZ{FOE+j{?F1ZwIIſ~JYy4 FbLc*irRYyn%-=7iE+M/NO.łvvZd$.H6ΨG,tj`(< Վ86Ny$yH$ϟ T.zD9A|ץs`;3WgpB筺+jt׹& !0d VjIjZ) 6b%6@0MY-oPu?N=Jf8 mdOL5HB},b-FCm"+Z]#N/V~}˦xU;m9J`FFE<ů @U5YLcx:>+QzD7`pf tLE7qq}'Hq9J^1#vVMQkL=m!CC&7N]!BM/஼<5W,xKX#69o9!It|wđXWXSLn\4E?&xF/"3v]FEBe3T@>*.fIy2ju_r%| D+A>6UxIYɕ/SI^/Ef㺫t7˟S ZU梸urhxb;8Vk%!lLL͗;OAٱf7:BVRwH`\V5 DgQNzPflH]rj`7jBGFC]5=h: }y&Vi^-_QdR4;+X LB+, BF1VcJ#>I}mo7C`|^,DA "Ђ0%R=nZ9_e0>q2\'P%Z8qPo͆JA*ֽܑJ;,QGRIVEp+_ۯbT36~ =2sUxT1J`D5*ZQ_qdaDɃ_hExW|93#t['e(W6pMV0[dJT".>Iuw!yFmۉauT1φ+e(リ=5FVcWgFD]6/P" 8ʝP?l|]@PDr4++0Λe&s-c oC]ab,1اDN>g%;r(GCW~krKΉQ|h ]87~Al%ir;'RwCrN Ů&\~DHg/4)fnp~o0K.ٵ`"ɒ -z+C0Ln{")$OIinpP[L?=BƍɞQ7Z Qku5"nUf()*BH_'ߔa~ p~) muΏNPFSaf4>Eզ[@(=c2Eׇ0tS6SҬ<8)-ӚZVZZr| 4n]";~nJ̰&i)Zj/&a6Z% x?mnOZ* *J Hۓvxe!1&Z]$* PNxV65C'!vrqaPq}~#oA g<ҔCM$S+gn'<"@6C SeeaULzSyИ&у+uߢ6Ap$ӶITma7aIh cFQ_zykKTEuY׸ ;X'>X+h@" X0[] VK6KY\)giGүu K]9QY3~Q`UYIaNocLRNo4E?Cc`^ִ3ѦV0S%~w*N5@\oCZخ@k 0l[ -b$?NWl<8=jdP*s ,3{h#AӼ m9﫹dV{z(ޤ--7,CE4QK/ c֨ YAُ&tE 6d7R*j;o Ra5q(.S,ʯ8A _Ĭy#$ג߮DUb1LA7VOw;S>1]q'F82FWz{s4ELKHS  >DkdOc? q։y萗4`Ky89gV~݅mdlLV2wQm _-'ꁷ.]*:צS-Y2" -/(t( 4>7ϴ.:t & z Čl)eTR9׈j,Ne"%RR}r_O^t[ƨy;!*3^\17gp!k&.ʻH!\̤mqlS0%nTU]yR⽽٘j\bO u*>លjYH)2[eix^@A“WL|:xw|SwzI[y7؞1V<dob}.{esNn61%1:[ƈTN[qH!/ↆaêSfNmE !tQ3ep]SGg5Xw奭|@SѕO}w|k56'xpJ(axyGãU%j$CzZ?)ҫ?W> EVWrH|5jr+PՑ%ߣ+FXZ Z ݣ$v J=uSP4%}4y{g J%r\ٔWTlJH*@I<+!b/rhLQnn;Cs/a{: 9RAp9͚PTJ1UCTTh R##t2֕ʉKdo+={+r G&M* $gQFzADDHͰnHAG`G;Z>t1\&GֲMJreH\vLIfhF˽L%z lpe$Vj0Qy .5NwlF|DЎwJR8 hTkނ(z?x=DPXݱФVi/i`uĝrAZ71F? ױEІ6@5F>=7]uɣH(~;[eO_t2]hY/HʔGG#G/QnݥIb&.`Y恙S)}goMjvP;xj$-!]UaX[O[S6vZ_yIhY~O2վ] ho)>I[8uSxHv(:Fj{l;T&IS!CnfHpֲl9ǜ8*q 6p2@;*@ YV #_>pZ;•43f~!T Zm/u6ǍjJt E ø)zy/t+lhN(})Z~Lu vWp~b*sboeJA5ZC'Uz,)}Ǟ)ofxcFNZ{ HY)p5z/䥣DqO:2t$*8EIq(#s7Waך; Lf@ƙ ߨD P4JRovRZq{bL u0)M *qMY5rMieR)@&,FL?YF@sly܉zŲCogdM }Y-S7NtP`2Jr;=*kcgfKBC|)RِP϶f;~~tor-N{i [* %. .vOuJ祡1+i)D*QI2^l 0:j!Ȥ}V=AzIhRX2ąJ1Uo.T2ͧ D+*bO&1$~ `G$g 3,̝ߒ(F S?W(ҘPsG Ihgm}saHh9'f( q$2Dcz;@ӭ]k;1#S7CejMDW^H,&s9LL`4צC1:z-~.,Y~1$2\g获t5؎'j}s H=HM*1S%f]]3\@Z+ 2x5Q?}2_qǷ#jXT|It߳dAQձю2?kzkzTwe(+EraJUZڳa*xzsskmdߘyu!'T'pr5m*_摄- *lFg҈ 7sXXlǻuH:*Nqǿl<_戺WA`CI}V37%;')qmNW!A;'GjOtdGzAYљ8RD,I3%gy2y 9ppͰM8ށSC{<CeG~GM,alsLixfpXNHE_pTW[mY8I+f=`zlW#yL0%5Asnv9P X/i7[+UD$y]H86J<>=ѫ_m)4wcPC񙙵D@KF'׷~7ŠEBSFQ[' G=Bil'?KhQvc'y#\K: h|懑 {CiR.)(B38s "++5w9r߁+I\5Nj v-6}x94?&1)u1 ׹Ъ ݈lƴARRQ]: rQ RcfTڎiFs =F**tE8ȁr#4ԵT#&pxg|'/:RECژ0Tape Jufew;b- Kx ih>(m;qp(Psr>wָ@謆N_D,Z*C {WiRM]t_>dXmQ{L9PfotF]mm)>Z,($Gx,oY,҂y5P_"\M@a\3w 8۽HO$@<-b>DYƐa< :?͂q-w^5bpÓ]5_vJq~t-EM8;T{}-oOp촞1h:u;ѻ9kc qCʔ0Ak Ύ3CӍ#a̕2q@Gޢ,xU{#x'5xE Q'Aބǃ2<?MQ,u1f(, +ҿ* 0%$UM\m[eP=G_*uC6^ y(u~1@)# _(].7e;Pخrg-Zu?H67lϐutb6yeU1r2GHR~5gF|,%#- x>V.=}drНek`EVx2.w@RfPh?@99& Yq {i;{!^FӥF/aBIJ@ (f.,Qoө!?Q'.Db}sʁ\ᣥ}qqTy/d|>W S0V`^ fC§9J2–lXeLUMQ,hYӧ%NO ^ IN .lC.U;j^yNҔˮpV$waALA's"#t-KEnRH[LQ+&n~xÝ5^srM"zͩ^*m^3\0Ж V uvsU~{_7gw?oiϼ@SWD5ƍtBbYM@J%rXܶ8m~5n4<͕pWL}+4`='wu\79ZN-'N!|KqXg\>RE8 miÀ J*!VYbwXB )"&;Str'L -fw&~-U|o(| =g]FaRHI^պͿ*,V\8] CZ\|*ċ>'Ẽ n# T|M+M֜ʥX can^UrTIm}VaclN r;Y1 2¼. zqvA~_ Y8\|ڹtt#ȌV Igf!o>1cvP$aIuhT\TLxUө᫘s)!+ݷv!{:&&Ci3Nm9^Tq؂j#6af/ miDtu\7 Zɠ5U՞Eg.2o.u B7#Y*1QdNzQ{]Q}We<k@d4$iY(*B6׵ʬ7~2/*Ԑa E SYƔ3[?>Q:zH?U733N冴$wݴh؏Mh m ;CunJfG*X3td!tU=@gdBs26?DU.8nR1u;V,.L.c Ƽ[ RuKK Ma<sa%L8%Dx"")_s{Xû00yJ!EeGᛧj?x\rBR.kj~;}]V .geAIǙGZY;_b|p$7Ps Z9_0s.h)j;|:ʜ$S#km'!(8ޑCY>c^Ƞp.%E * [n]I}]A66j_JJ,n{]$=e aMR⏓Co`SNpbJ|7Z mYޜj̾`=Ğ?V0Etvw^ôږZ9?kA\ OU?uy3|_>8+&GA(ɮq JH{-cs~j떡TVۺAƒIX=D  4P(É~Ӧ֘ϺKnwhs #=|8^kH¸6!47/E >.-wôg3 bك7 ^0mwKVK_YGE^CG0O7u\a3]S7ƔpA> ܠ؈+o΀2vpn~I O}, [(ם|`IЂoW(0vhn ;gVS:2ʙݡT,DHP|#S?`̔y]oGe0x*JXV/.PNU$t {!0SLZ 9 OPip՜wfJr^W . ΋KHd֚ަ#NV_~BiO@IA]rFbrnUexP9 ijxb.Ws&7/ge&{y07H%;u!؝:|CP}z M&܂YOù>34w`*Q=8aUV u_oHڣGb(f1n6@q:HTܩm1N {ca\HE4Q\ 3i/ y:>O9]QgVmW2j}(sKJQlWtc6a>d'-AgO@DVmǍW|>#tUjs2jJ =T`˓\E|YŭƤS 5j $ ;wu)<-[ +[g5 VߜVIM8(F_jUC~ֽu*I%d3˩g{NFƘ˜KKi-A:I{&UX X5I7\ϾRnjwGYMV\"=na,oK؊DgK# Pڸ0%k1[ɇY4=?/k ZԸ NYͺ󟴑T"o=h4fڎ/J]P"eYR (Ϲٝ'"n?O{F=iL1N%KtzB8LDŽt흁BaAղgj7rG`*6 M-l]3ԻvI&u&=FSxy*NA1n_{#>/,6ZV4S4< #k89- E O!:on6_o#1Y@)B heAgLO Co? ! lOi;wfvNJ1]c]٨ x/LdRBMnNLqf$bHFƬW チu #7 uӂu]")7α}-KO";< N.13UM-t _'ʫ3ntqARmD/1oQ8 yWMDm#6lԠSW:,)T!E]"|ƪQrG1]e Ql{Q耵EdN-9SCb-&B,mUOÙ+j̹-&.E.;8>:ncٓfR[+5&EOG(G!p%ߑJtG:KϪ,dn7baM\sl]}\ ~XFˈfWtB 6hjԂ7ݔ`2d:ཊ(_>&t(Rs}_?||A$bqկC#ϒ,o 7h\ڷRL.wti5&4a!\L:p*;H"^PwRS lU]]A\3"͛ oyIt~մL/FrM[-- B?f3rz+052H!j]~Y6sH*=g"G/!`^/;+^ W_w(!ȾwC~k+gb Awln7  "U$[;Dq7hLjaN8  MV;=^9oTռuo(U쫼Sƭ 0|I^rnu,jO" 5:~Nr)HK+-vv. Sd7i4r C T+&vL3_i&>+=·p?; Kr8yc+1"I57Kq4"c#Vr*G T(MC\a88H*:1*U2G!hAhi XJo;}h0E ޡi /|o[TUCARm!@ }30K' cѪS Fɓ؝]EVE _e3oT{y3kU.QO6^a o1XLoc1F޸&{Sx]F447] 2ذ+P # ሟ2ӿu_"ՀX*55!PwT/i霅yh-al;oDn@uNJ %]c|Kv\y}sY-78 eɿ4 [f DR"!T= ћL+K*3e^}X7ط] hd˥=ZAW՞0g Ƈv-!?%?д /[ zol+R!4%^n_k]g?4|:);^bhe(Z)A7--{>M`45fȿw֓ˊm 6U# Ξ dh$G[ȬJJIIn7]՟XEHVԾ\]Jxdg{ucmu3D=E=GbC!.ޤK o#b+Q8Bzt;nA錢*ľy y=г3Ǩ<9tLuP)Yߌݡ#e3bm=e /d^5wгvcʚrR+V@]IcSI0v?i_z{R齊CՉfc:lo :i[+m׶M^4w/g#m5J)|`~ 71ցDHPKM)FSr\[33.Xg47.6AHqvaM"-4D~ EA9 д6ZϱnɵlPeYruH&#v'pdS"5UdQZϛPɋ`w Ρ+8CUi2WtYm7+ /;u;qÉH.l ndh47NdtQ~=?|\ sY=6O8uE(/ !Q1(|@p*Xć`JaŇ+ʕ Y%IDNE5*6aN,ĕQiuTH5OC8 pI%`b:$a8 1ww.7"kY$ɸDVFnIOxbci]f_Ҕ\C5p!Kq [(pgsb<[cY֖z}C'L ~g& T!c?J.x]$U`!73 Q~iw:݉אa2M%>ĺ4ZuenSG>6_?Uϰm9a6Hes]Ƴ4Pܔrc!;GެF⑬(~x[eZhs܂w̮E-֮yƤQ2$E2zŢY +OT 7H!%.wku%ȌSj͊-1_X͑;:k()SW!}[UQFOùy2|omvف`/R|? HuZ {vOwdݹؖ]҄kꢂmYx#!CіkN_a%Xq;~' zLc?ԱךxGv ~oz?YB &ՆzV5 ,1rM*9OדʎkU1]$u~[:jqɛ7Q f v#w*)ys n5V!Zl8?2'nڹpYMUMYH?}*1F!7{Wk6@q]e]zn yYd[?Mwx,z] +9FBќ{ͤY"ij4 [4 є_۟nSyh$?G}&xrh;xQij:_V$6VB;QD WƛR C4?Q ]a )ڝu P6DLcဌzWo#{LVB虍qkKI[?0е̵cF%vIt{4&$G[`RL ;Sr&ѷz@5JYϭRhEڞCgT>q[8fV'['7!#rHťP<fbI'D?ع"MH30f&b‹r%OJ^M^wJcy0s0,M݁?1aäX֫Pl3!:U7fĻm:L0M^G_zYR?~x<tgs-XJQ(obWd_ pa2Q}@{a 3tf\5Sa!g!y8 ⽍f4lpFBuscu \>N PS73(6ܸ_EXM07aBMTV*xv۵;hn:#4AgߞsUqGy[6:­Y9;8#,9h2COuݫ3dQv]؃C];ډsKs'G;$7sK[*:e~7@ξE}:&H ·xmǝ#z !i'{@s+tq~ #zk5&PQ*Eש͸1omsdiU rcilO.kO,f?rf8Ϙx GÈwF؞V#6->ES^B=rD[y# P>՚.]D 11žbV܁$aec [^ =9^r3k], <7F*bq\F3ŀnīgf 3%~-\:/q]߉ O/씀%} 0^9a -D孡qTI"4\zi366(o6;kZBmL]Gm*p _p˵ɦ tZy~Bl)ap96JG& /q-i\PB`IKZte rZ\ t!'a3 yac@rl0JW#ENvu 5zod Ȟ5Aǵ?R$R>pPxGZM+v+ryl?@.@tYHY{)3,1G6h7h>SOi~B[Ѥ1 zE(EHy%5_9l UY:\aV`Rb+[-\ )#40̓ׯLIaw/zW^B= qcִf64tپW9>RzBrˡLE+5ȳzn,I.$FB؍떔+ךC`qJN|$ $L. rǗ[v`}0A#נv+NVgKа/n歡uA5Z%$N4\"dLMN>ʼ2D3- BTiQC9uU`+~a u9>Oע)_l#SAYz; z->bwC 5C݉ù CKY`yH,(UfChrg>WMv=%aOYxZH#P:Ίߑ| ofi/0#[ğb8])wEU<7N|OHHp j]EN`Xv ORXx$*${I񜕏 WzLrLT~6k09Ā Z+'8Wgz_V1X'K3ahB;UZ헶Q'tsX:6~& 1 Oh& 3H t2SGx("aTۗwR'ٳ U;J)D$a.6% ]mS7:KУXeg$縑nՍ4H vaw9O`. ;/`N=YF)P7|)/`X0!g y5;S)𓋪o8P/wd>NF-#l( E!FoFk6&Cl>Q Sm[T&b#ަ>00??:wXAZ+\2zOAN$~HOdaxDKX#08뚠6߄it 4{v]'r9VU}}Zs'n<1[ s&]C-\ؚJƁ\nӋe0C 6zX~DWӀ$oܜ`(tiNoXz\^G$J r ! FM7Qx`G':Е<8}KA]fE=Rq[Wik(jB}Ҟ}XҠ4cRJz̞F|/% >?@M8z]mQoܠ?b7ȹ)ˏ2o *X&NYvX{%YvW"wӶ=q\ɷM4WNnP?BAk͒z1]HΠ!c3.:b䗚>C2UmY'\$a/u c:9/@v) -1P빍>^(S.ri@LULL0ߑ l-Ei٢6Ē8hw$R.1,#fϷfo9nf2n7uhW ~*?Ŏx;eCs<{$>j'F/n>9P/PPh "`m ,@#!p<HDȺKghÞ,oMo@I :5plz+V(=-B<|zAweM!FԯQ(Rѿt[#AnP2kps>}'u|baʥ\2\:[rڭk Z< ֛|]=<n)/v-qMy`pB1L44/5da|.\i!ߏ̜ne$wCֈN0pnttI&zd̦嵑UmzU7^rcs+ңT1v1vj<M XVg D+<p!P8hcmDlW{V&ͨhŤ0URJ9TpÅM|+PWL=sH/w Uv(ׅu )_YrPP^,@p |6_Q([B'v<رte2A]X'Q?8m/̽{T)@[@]Mko%OSlchVJ!5b۷Z{O0Cw:B\oYǡn)޻12Ґ.I:wеwR QN U#Lwk~כ 'j3#<ކW!-NӲmS!bOG;beήmN-б8>5liu,Lde蛟а02J ʈ' e/eǐ gRū.2}U{#NvQx9ZQ>˜iQv ݾN%cM=r60LJ{ J./18ID“̟ "T3;,!~5^s륍䶯n2Tگ ˰ipVj( (O:b'Q/zHdY(#,DpXJ e)Ǝ xs`G22uA~=oҘAdYi.2*9sb[r/Oں.u)M R'2\ "yf 12R? /8-=Vv{&"'rt5;n@PRijK518.T̼:Nɓ D;L,|D@sl)uqvZCza6S蛹 %t!]~ڕ2ic'{z_w4jdke\DA` GEbў&_>0r$<}呜ѱMh = Jv!ρ Nمd"| LĽ( hNZkhf#JxS+M0NKeY}{n™KJ <E6'+Fn4.GW'#>"Jx3~+tq*BUtii_:TW\5ͧ ­\ pSQ8ڈP! SjSb1A˱tp.DWGvT3yIR">8`m*`Ac37V_ 6ipE(Fym[i}f;"t-(Lh'ڮ@DȾG ĨY 3(C1-Z#Mn\Yي+!!aTnʢs V]ڡ~e6ab6a#̏loEŀu+oJ1Qlۈ>,Ƕ&[p^hIIjMU.j`؝\\_^lSy1HuӃr;, \\Òq<ǩ)]y7=6ܽ93m6YR9 qo=PA5K8qqc`攞B6t$-άl&h gcM94%ZQ_%hٓRDȆEKk5_NYD6gkx"5 3dຐ"yBd%uF, Ђ L&3P8sY|*K][fMCGObNDL *Wx4;]g=F7T`3{s~O$ iUs}JZh\?{t0z{`2#z7X]T ;R9VIZJٍtKq,Cߦam l|m{`;$d6k,Y Fu3ѡ(r8=R 4vUE3riľf?mF5 k(tcD'w u(73fy >S@,ְK1i%^  Z?PY ~ǮEĮ2K_47Bx D(kEElLllM"?-Q'X4zׂ$;n(k޽|۾6pGBc_>6bV辉`ׄg- <-,@qkT i+Pf5.[pT/Z!@qO4ڡj2k-?EHO,UtQwom|.jsE+mJ2Rw*l0||"(u"sٟ$#=*xO%$ NqxO ›q.+GIJ[ YDS$ u\~T^٢.A{/p3˖UŢ\+^,qU9M %4e"\mX/ H,AqK#kA(\ < Ωڴwob<ҶgI)Ђbt&]_2ʭ ܗ{Zy:eu蚯4E.P̬w]$Z-!1|#4;`,*.@*H} Y,p~4uvǗ)됟R5Q`H+D֮sD{߯֊cTV. ܑ.~]dGyU[u^i <1Cfo_,vcĭM ~S l ;"Nxm͡ʏH. X$9cp 3'wڪzjaO(b J(*,4֜#bvŮ7ijPTGEz|,1̝ObeϹp)_t)nK"/壅_ű8 p$b@!K80`WeȾXxa, u[iqM_;S3 qn ]47-qW?B& GZMB>@B][<= X:̿xiMϛ!cEr}יL.DŹ:#&_weF[6xYBOIC{܊t3LFl<2󸜌KrOV:LH5kNCJcJEڲ";rxg m&ucH Q ӹ5(x.D4< 6K;»q 8[3K<Zz/{mbs/y@AMh LR~J@)  jGd6k;!#Ng&H) k=>a [".z{ޓ>L񡿿x*jG0OF7^b)'Q{1>[ ]ʓyFcyVHzop?~%Ew ob^a0[ }OFBo5^UcS1vZ Mh`c3 .i:Ym$9%qSP?]QL{`ӿJI&ު]Q ,F8մZI{UwA zT.T}gD$Ng{lȆy_|-ފDdH* nMT$ cPB錠NKiwR88hѬn"f0>Anw7BYk@fƨ;N$9p)"'wl>W$BQI,dw!4ЄQl(d[3GGZ^66eTG*1E8BRn9cR[-qp~Г$Dwp7+kݽD/EHcC3]C(yLcUhD]ȴz`q+!X#sj k^)-{A6O>0:1dKEòQ.( Ѭ,^r쳢:AnҒbxa(8r,.KH?=6zT.v$+rnve1׋}4yO_JfȎ(MAc7 tʳ? `BmH㣷6zm"?[R`{ #G> za5p,`D̛VԧLGcP֔Lo5uКeR,xnW>9t$C=燹\;)?QkfdJntz'p̺c]bʫ4nOY19M;:dpv6B_ ieDTFw߈|{*[4%mks'\w7@8>pfr\#Ye"*XaFUR3--FOQm#5"~r,;g&t N{9;!((՛ֵď ;OKhѾ:9W'6i`{e[uT㈆08gZH$AC/jL& k,hyq`Y°܀T?K ,.4֯}TFKd# ;?&!%y!uCz9Y !ˋx< nwPW$ba`+Ҧ7G(Ӄ1T\ #/* 4HJJ:MiOw| ⶛j n.dSx8gKB+"]S|Tvp/ QDRzR1 }:,>꓏51arĸJQ` 6@:~#btv7i+F)tuVQ%Y_ZZYVOŴ e)LoQ+An؇E˽vE_/-FiHyfqI#u_1"ykє,r!?$٩Ru1T-,&^m Ռztng>8c\:),rI'0P곓Ph>fn01hD6[]1=TIN0e'Ļ=0"F?6瓐.z|,) NG]B8:ERn{<ލ|sSF4X:@-fz1@.5Z O+J0]A2q̸ET]*e;LN|k2ױqa M."ZeK u ;,5|D`BRU`YL 43ULXzީ9PYgi[6oXNMВ%`J2B3hO>?}tR2w\oQD*x0Z6;wG &QJ # qR稲Zb{ ,VmEGlqA1LCH HEi2$Wvk>Cu%צkSԧM)c䙖Lk(')T0'XnwiA* vS8rDo(Jb}iUn@: ua tb-N^A8)v4΁VtL8Qv:`tH^UaP)7=Z@Wo{'1&8[-bգ(cTN3p8K~?n):$)l׮p?;hQcSiEb;L5"`uIcildFɁ}ʛ}ڗX@s=mZw+efO`131 qDR 2|=anmXDDkfΤNH#!)f&P-]x#GR}zΑmp꛲[`dnSyJCJbl mz娺.ff&W&оU屄5 "Ew}8mB/ s,JF%t>V@TO=PC5$s Y<;˰iM+X35OBxLID< + }?J*=DS˴T?,|0M5lE6\(椧1=K8tbQsסʨC6 Dc;j3x&̜X$MeԴG72ޞPg]#6&?~w# ؖP=Co9͔4i88K AQ3^4XWV8wg8jWb;!9ڣzwHKƝ_G?0\x?9Qi'ɻ4/ށg}F;{0@7k̖5rq޽RUut!yxFiLUkCWDK#$gN;(օ8zHqMHR?1T%ύqX7'lJ E%}_7]  '׬]˴/,lèISAgfr-MF ȩt$._}!I5!yz~/ژǺ 俴b';5:6 Dں(YZxCNq?.x{j>%*Yxdslk5gV ^Ci'kY6.EM> ܈ckj)g zHIXfKKR6t uso.\iP k#$5tf.&K= F>{ޱ箌A7B!0J~h`Ȝ,x*&.mQLMKam]041Y{0Sy.-ϩ*0+L#о((}Z7U״| qz@f 5L .#8F6@ώO@6Q]5E•*J7)/3ѥpŎսiYh4E۳]o}]Xm8…~$] ю]P*\|c  CppI@piI@-OJc1xߺiFc^߫rƌ$/_6BwZp0e{RwbW@EayT@@?hB;qހLB5 x})23gEcѻA`5fNѝw8OǾȚяAFЍW* NfA;MzJނm/Xyi?Ck|3`tƇ@ADєщ]2=8W|h}w?N ƽ;P/hv rvmjD>@T7J1]؄U%Gf墦#).Ê$͏Et>Mr%RCxYi ₁{'$7T_8Ћr;] *Yw˫kX^VlQ=: l\mȵ`yϡc*'P^44gVc$#CnrΦ?ܙ|XX:pV\E OECThDwz^U/9Hm(ud%vYr\/gMy9]]og}1.<^)r0ƁslA mJhAE 3́,}ي3=iؒmq=dڔA|8Նy.'+;ͬgx`b8 #t{J,[No"X^1d`Q|o+_ׇwapM cb@8v92Y 7iIu$o$L>|e;yd=i<ǁQ/,5Y1dMhɯvO)"m1׻0r&6EYi!iy e4TacʱB'x^39= }Py,EVŭ+yv禔[ٛD(ll"0^]/ϨUJqml6ks d es=&G)"9iCS9\؍f Pkp Ā8;Y9A2G4ʐVq_ys >:Bd/G@Vb53bWwJY6J3lc,2E{i#V}7Fq#jUf*p=vxL,nq7ƾZWl5 m s(o=RL"Q9VODɇ&%&wq1 RA07M1{.ֲ>gÝN9Kw=ٸ0ZͬM&= ><06w4m>ǩd=lgmk^)mU:QάW ;^IBa(8O첡s|{6$X(Gi2^I[kGOѤL֕qp#  wC&GLs.JlmՍ[;Fr?|zԇ&u ƫWg㉦іcJa`M8`BO7V/v _f/);<ޞˠu` ٞT{Lj 'tWm*E*N~b]y8˹ϗ”;eE_?\ ;p(&oHN[  kNAsـϏ>pijG00f-* (\Mх̫n`hZ/C)/Fh{IiN2 k<9=2{Qk1^G< ; l7ˤWJJ[У!)mmmɠm$Bbu֯of&xX mvQ/_̵tѱ$\=qiM37~bU\Z_rc*,]Yz 3)TUK8 -KLmI-:Z/RpЭS&46Ckƭ& ܺtPĿ$G;8f!.5s)g)!YiEU`&AIYW6==؛syS䐚'ovŮ=5\sˊ{ՋFbP\57IJ0hj!K^YkV HG)Vtصs QGSu'$To6,P/bSH:`,/=1Y AVLy~Mljt)̼ @3 ou'f.xE&fO2 "| &6,d`Y[cc` vQJy{;^y؊i/5tuk`81u]mH\"sOO7Y:U5?6Y.D ͞U>zၥ碠G䈶sX̙ئ%;E906Xh4LTw15k 4aC^T7 ,_ݲf1VPAhC8qpa BYB%? LVǪ#@gf_[̱) cG%fnV>Ƴ1hRpۚ_I+pfQMw70 `Dlg=5ڶn6B(fvU ceƲ^}F=.,4 f!r=pre-{˿tFGŁI3?;y{>qTzkǫ3>,o-2~tӾSZ$gq mt7%MHə y?hTj1{ eoDhTy~M|/"{Jjz%J/ߗaRǬxa\J8Gq3{B3PyE=sh{vF1W˅ePڛԾ6*UWJ:R\)"ρ0j M6䐰WfDؓüs=!dCq'$Nꥲo ϸ, ӫdKjvUuakXxjxdS9f*ےqwA5EHk{mx dYdVJ>#l; hvpfD[I<}?baU_7ۡ;L3-E8=wÝd7,[1=V8f쏛hKy<CKGwHK ~LSm ,bU@ XV;‹5]VG6,gcLZA$"hk+ȞL|/S}Oo H* =aб:D c=z:=O}69 [5_9S7,EZikdQB:@w0F?%/%uAJ,"VYu2s :Õ-aH7j2ae82p֍E 5)"5O{~T=(=`E75G%o1\G'f³tfM,A} VnRM޶:$( (9_TEQm;O뢬ƝN绱9 Laux_ir04,O.c`n5qܬVHI9d;|-locy>.U;A%7,Y/)6cC‡;eZȱz/"PǸ$# >]8o9c3lT~tj6T ohō"U)Ǡ(XͥR}s ư@eI_8j]VQS) 5Z0XkW/r~lNTs]NT?> Aϗ^ğ7EV!txږZI_/sL\/ aֽq sROy=X0 |$O>`RBܮ9z[8⎖3ߍ˾WEӂEMO5it,Wp ?O_mo˨yO9?WђN'o+1}:|gFWh Ev.^s˵['Ƈa5&P <_JDgDQ^h=:؇:csA>*0fd/XX2E'3/kCF4C1hAg28 ʋd5nsIٳEty:@H>'\&;$]1= B9inUG]D1v~TqߣGԽ̕ +$V+$3]ЩI/qTqw o 7ijNwcCU粎%xcx U~t*7#mC %2TVweMN "Fp܋2,K`3t|z)*y%d|S7^]L'K"82^2"}g hdʇ? *GtE:FRd/ ~Z;g$t Ѡ ࢴY:leSF͙l@eȶg$QG)Sc 9}SZciDAE.ߝq Lw^wXaFIJmrA/F"u[=,JbH'2 ( %slXO7$v#xHA1NtDbj$2AƮD p8KkTc`ŝ|U~Bۺj.} 6.CgD[lTYJ@B\QEm1-7>(&\ hR܂0G9VS>`#Dqde@-u:0cw^yB w#{wk@D!g\iykIXm cCO6e l+e@+Vs8bh@Pu&-4T< ;73a&ʑvGH^V-w\B)+mP [q˔]J2"PJ|]uU8W:'gh$[6Ѫȓ,FOUHaMɳ vqP:d(9Ih۬SC9o@ *YGŜu]T{w,azĝZ)xӠ uS *wʐ)W$"t PCvIp]a-W^J@j8rOfP)~9;t؛/,HӖ]\%˔21=n|tI(Ӕ '^8Fע0i[zn~;/T4tvޜ%sɉn?D+pp-H9Q𳄎Zڀ54J?ߚ&睉E5v{4֣~ph '~P ~bv| TV+r2LY o-rۚ857i5cx@Lq)dvjُ[2Y0K F6^}Q?a#HfhE*aQC qA\n.-< {LU Vw񘚦?>yʋ]Cs7+_:3*x/L 9I) #VF*TV9 mc%t-cצ~vB6km BI5Mm;_\I4 uy78bbJiɢԅԓy,|_4 +ͳ*itWkd1cUqq O1c؊&9×='ՈvA d^y< _OVF8-(7=BPm!bxo/ Ur+'UVi&~bѕ̶ >ݸm4qfCevCQ+^/Cv`;JO ebbOo[jƆ%n1N~uqD}Bv3_Ga_+̀|[m~fT8R~É5^^$E~!UEhYhps,>ӯgm~{lyL!ת0-Y^a<}b,Tm׎7p 9p]s{?PhB>a6UO?q^חv%d*);z; YK U0'Fmwf7d%7IF,A9 E)){&uHˏs L16r%"+Vl1=KۣķD/s_L5S!}3FҶ^PT|dpBF=f%|mq]/Nb v$ͲZyJ=جmO OWXPlRL5^9h֝ڲv3Σ-{,mc0e!V9G)K0&;dG8ΙKdQDYҝ|ow9/قBY b X鑴Ǚn\,*Sݰe;eDL>˪-HC)~(tßgZVW[c<% q@Ϧ5]zp4-[/x7FYzj GfnZ, |aJ[+J-OҐ)W:\7o6A2J%gflHL W3n\^'GJUO5a7?fl`CvAL3+ʍ %hҭsTD W^̔j%HB1n9X!fC!Ԡ#D&, Ec!͚IHع*{^cgT"VT3kds`n5j2H*ā wHUSG'Zh'kWw=.]zn]Z-_Y T翣 & *rkA8 a<6 z]!ddֿ _kSC>8½O}X_Ol9q hqI8Q?" \2l($._.7%cޥՆn7.෈bD` /x h)JpX& z k$Ԍ] |}2Ch\I_s6Z[7Q?#(께\/oԮL#; ?i[hLO,:Aϝ-[ٙEU ;uHä\iL䲗S9b.*w)(a,Sz?޾6wkK4mʷ%,szfdt$-=xGV&;Gt$Q((7-\1HY5 HЀ&U-E Z-˯ao8 ^a|T4w{&ւt O:Kdׁ8NCmF0 DH:jdQ1_6Tz򢔃~O7ҩ2:1CI!/#yalNAdY,s;- DMY၃N 7LW+P ex7Ȍj ubsf"m||JQvR d~D5ӋmDĺjbI`SF[&GZ"'|e$' wOrͮ[x]4,)ڕuxxͲg]LQf!L!]]kyPCe15 ⥥U .0>&PpˬXBJ&j@cM$?_Ɍ i(F)ii-8J=G1ZhSu*%rNyC32vjѦs .ajƃv /J?1WfI +rc0{^++ KQ5v9~܆{W@ʊE%d ~{7ֺ@VX!=RUrZ;LvQwŗ<5UC0k̶9Nmf-J$!zsH3lR`^i15$7ojR /]J:wPƿj J&o3YV{E zpг\D"y{PI?9,-#1_evXJ@EG7,#ƴEͨR[nTF["]b-= LV(o,w J c;c,9{]ͩ$ !"*(tdxt{6YoF>$Lt0LCu[^oA6Pi>]a䜕xNB%-O蓬^!;{mD6n-3w|#iնdk&0/sЁSP\ h_-B.$! !@ÏR޿2C׭{{Lˎ0J=8HxR1O;OTFF7;um]c4bŇ`tTE9<#u!"*S2$`&{ILύf! J6{hN2}iVE^s%=Tηb+Vӱgi7㱱,|VV=]t){~AjPݕ=VQS˽bbZUXG`Jd͑0Z WɿYezov-xX!dX̔?F@6?CX&#;*:q}yF_mblѫI=JKq=Y㪺s q,2{}t#$o<1I|\L s@]SjwG)LRRKɏYN/ v+^bc&Rh'b,u +°K2䭨%s *^@Yvʸ-|N݈ 7ECl~$ h;>ONYyL]:_hے4O3rՀ^CTgv@3qS׳t9r3ŭIe@cDyoR*:0us# bUCZ ʊl$,N&o@LDzڿNh+EFXx`qاb)#mex dwL#,$;찦nR\>>V_U&gS) 9,07]TN~Blp9wHAf N' 5"]G] d W.[-̏j̳ЄȫűFC^I4%PnvZ)ɫOdR~Gdd+=#OIJ=7:#n=ʶ{ ʸ7ӑ]`O]+U ,cku'6P!p}_I4qB VA\N'8j1̨]w꾥Okdg7W]*(׻RA}Ptjgq½V?Fo6$)Q=.$M/Xzw1 JZ$y3`+| WŗSr!e46۪]@s i/hٱfx6S׆Uԉ)NmyacՒ~1;6Ad@pk<U]=`z$܇ea[d""U]Qi)pμiy60}3G[Ō_+ߍnD+kB3 ,9I&-y6MIac@Å xEo0<yO n0b tzJ.,E&dֱS49cs0dm ;~eOC7PHKպTW0/V'I '~U:vSI8i#4-bn3lYjH[`ׂQ*dkK,'P6wHVXx.~~Ǵ;fՂ{Շ%mS82h=V$ej+`'+N;ճ- { z[8e#MFf.ޟ/ 8](D[߉Lg@M'Xt:4+$ϊow7Oc>.r VJ8cˮI`~nzyB>[1 i굃Fof1} X ,ec+?~y/vk0؂,E@}^i_B'/Jo8wY8 OJ2ZJ(H.F5T^~Hnڙ4r9qSTHr"M>Yw1Bo:`1hhRxXUi>>/+&<ՍXxG"2ZnV[߆K*g;)) C/Y" nrUI, $' v(R}v-IN&Qc.zF}?gV5?l+WvI҉c4;Xhz@Ga$eG͈ܱdb@!Bmq 7NO^+F9z7}}>^䶼` Us!H8gD 6WDg++ƒ d|< Y.a .Ol拍C/Ә6)NIdv>s-ѥ-Qb*s-@cXpL3:ޡۖ&[aPjʭI5C Q}"%ݐ6Į=GZI.겱ݕZSsKnPn%ebE  hLdFK3hy_ 8`P_8%zIluÈ=jC33]1; a93ԥ:~__wN\8U,/=5 grq(Xk*lRq7KHdomPEyeTyAVH!iذy1ǛRqw0qh&p]]ls𓡅؀ !b1 =iL,5/)39vv_iv0}ӧ֏+NLRb@kŻ$!`?#.rx? w)]XyZqxY&DIk{ə/μ2/(&/cMNSfVc{J:ýzi3YWkR]DАE(_4KPa kZTqeRf8|ȮGDd"/Nˑ(ݬZި$?;lS?2#fFCȍT;`gd˦;5]_A{YmN# 2T8ЃBl6X$pu9ӏzv VܾS>{npٝ{FD~Jʏz=f0kqreFjjt^sXZ6K2!%B8Ƕf~VVonltjXѸ:uЃimkPB74(3 C%tBe^:w6;ê2jxs2BEGqI5(gQڒv@!qrQ^#w+A:{$ =rdN(Id .`fоꕲ5%W \3زڶXSGzS/ȿ`KT1G0,nm=-WL5Ԁ[PywtSga -/d<=!LN~zV_ !FդZq.d9;{>: Pl~̂5f?\)qf7UƉu qtv_aKLo#X0PT߱EϾCH%>=w`M*gc~斤6|83!Y ݓ)J3lP`3r1bJIF|FUFIsC_TJ^KnUe=ꡙ8k!3Io?P6B2:QS5$%K[7zf4`K0/ؓWr*4 #Ϥy<+OTndS +P s[ sE\ILFOR܎ywbpR!0gd9(b:s]<ZB`JCMJX =n_SLjooʱqjSeo Kw$pgJ2FA,7m-Evv{ Pr0?{ Ht" S6A/$0dE}}FL'R2n$ Ӓ5#]_cU_"S c2<: hJ wj&"2~4Zk4*R6"v/Ƣ'HI*ymg."Y9tYߛδN@y6ۍyO66`v,G;+6Ė fOt wHZcxEPU3ֶCN.p 栁O4o'Q}`v b)~6Rݦ[o/Nq ~E DFDܮlBR U]up.|2ЧC7\~OOc7˝u0Q3P GC縡XA`X5(DB%#<((_򾻏(GFQt>B X<^m @SӼϜ(EYbvTkg˲,|#;zUoP8C6Um1FGqx3[&QGDOwȃ=j8kb,r>tϐ>?XpkqEg.o%QHʾqnpޙf9IIh+Q>aم(Wz15 7Y#5|,邌@ ؉R+s-+`` [w(&?+FȅRR܌~\@-ϻ% !l/ {@A,U WkhŀLVDIN Y0A?\Q2ُ$BOiXSF)o~U؅w!:xY̒UM20)x1wDnl&Cl[GZZlh&uF厂ol46+ _ǰܦ|} 9 Ly @a?78Wn3W'>v}0ۚڱ FFQkUoy5CKE$j#qY~zq {[]\I%sdv5SKjgYqQ/{nikܢN o,$# Wn]^<4 JXw!;YDP$7S6] $| z23kgnw7x+ +$?/X}'e~[ T3Y< ݅`a(:kz V ~J䝲-{.˒hAg.w3Y'(6S T <.(R/BvDO";!Kڋ<C 0eZp~)b0{ωQs-+=R]e%*4Q^u$5ݕKxۣ=0I@l7츄&^:Hv~`9g>'R6Ulyq~\04joI'yro qK'6( Q.+&_VH_.~&免OBb$ECo6/Yڝ(P.AC5o`pҖ{7˸u" haӭs`Iu 4KGkE7k"A*@җ n 3@$xU٬׾i{Ie1|@.9qѵ1&GS<'O$k &B*[9[JY1]O fޏB\XjMWG f' kkzhzt* zU+\%@h!70gmy|`E>I9'#tS)VU|-TNw'0m|*~)>0?T[PƇ̠((AG'i0d3(%. *V׻1~D)4t|޷iYܩ$хTW_u_A p,.joP|G[d#-@h3T~G8(߹A{F"Uߢ;"iH-UFn 96EoZsC 'g/Db '}ZG5涯yl"MzZH0mt(MMe!k>p:DR3@]'3M;_}8}+츊e-nuR=Wkg5 \Jpp_ @ϴ4w2<~|+S`ms6CN.G[✁KgTiúN _=jK5>YihxQbƅfhOz sQY6ebrtD܌zw\UaD֚~|SYhˆ]ϲZ}>2sbf|nC Û|!*!FA(j띢\}kkT+Uk IQcdh-=-304oT-Fd-Oϗ9P/y|Dn-I41ʔ_͋s22= 9n5-iʟɒ'=A|}?ޛ$U_W^2 |}yubLVdz|p W.y|qbŽZ[91v~ R|쒮uOs0wor8IEEKTL!dr>g d@)GDP&b$š-== izd.QwLjJ,C%ƌ{dQbcz#l5N.G6LT8+~9qIRژ[!;UTkczS39^/]h)f3n@{`t- D}c\wCl+'?w铦na[`#ڹ"=Gl2c3v˿l'gH̪~\UXՇ"]hҧ'efLҳ15vz7@TgF/4\8YcpZeE2ٲtX Oer\F>~tܞyOQ p-pJ?cO]k4 cE7;{4tȮYue1oJBvǘ3T\O:cZh]7Laֻ @/&6˗Jm| 7R>rK7y߼f$?gS!mSW8B=k͟} RX-g![Wra4l] -{fA6C0hHu  qM$ھ~tojb>u h(4,Z`96xuiO|bMc;|T*v7vifACol'5Yj\\m=|lN?p§R\>Lpϊ"0[l}#GS:]*KHm~}WeUlO>)Eyebl9Ʒ.sJ;ACL>3Xm88鲠$Q)glҁsO\g8~{bi_QCBVmRa݊B'Rr  R^ƇVȚȈĄ1ZPuW1T]daѿoXGY!>7-ޱ+Saڼ%xJ} f;sz&y@,] 8" $YGpxOz\sJe2ԤtLtBcX|ˆwwa\Hr-_-e{ѴۄWIFzUr{ɬZPӃ7,π 8 D`fPb.џ`ҏ_0tL*Su?.P24HQQ  :߹<%҅D/(\d J_JAOȎ'xەW!Aq{8~fȼ_}^\>\G63 N7`,DG7[: Mtn>Z>#2ݗ>Cl[:ZJkZ᠅w6N''m/k4cqnd~cO %Y+qu B ˩}܌aID ,jG zܻ(] ǿc>O&/{h90& hqhIC`cq*V@tG9s7%zxGZ<48>79y;Mͬ7-`3ykX?L`z=2ɡ&/֊ܸ"b)]Wi NIILJ-br.*rABwjSa ~Bػ4Q1m!dIb:*y'*|N]u1-q|(ͯI7 Q@GqKgj>]2;+w݋&SY>7 k`vXJoDRA:3vepYnt&MdwC:5FQZ8 G)f<4HtFoٯ|N(>lqĸL0B;|}tĈdgQǐ9W~03s[x `]FR5x俢okH/ qp1י\}ホPa$ :dp+G<:fOO;3eq#Fe2 }558#&ȃ Ю.֤]4$q_unהeR_bF.b) Vx b4Υyײ ۺ%{+BLLѠH7ܨ~ǐCM rTܟ] l!qi#,}zGGpt-N/Y~Qr031 bmh,K<ӊDtkښg|*,=URvx,S[;҉0Yq.a$R͵b~+8f},R[B6.WЉlR JPd%w)oԟ8WO>Ǿ+!<ٛCj;^ 5|Y* @e PuUBiggܾ bX'hi.i nYI- Jup-}x<x-,o-4i"g*@`p)=c@7.]؂6v6WTAȪ ⛯DX/14o.h%Sَ$fh\EF!Һ7bgpd$N&ݍE 3G`WE ?MK^rtQ]9!茒Hz닷#rlMd+J@FU+uGW+,eiV D~@62x ĊKgzN% ձYrg}m0ߐ'fⲲޏKHH@͜ᆹFեL:l@<6) e5 K D7}=0r;0pzDa~Qi½qV\^?^tR ؉H E'-zɄg3Ƈ HƔx?ِ)Y*1L/;!olYܑU N=D]B fWA_q#8bSO͑NFg6p+tGwkMwkt ؙ!gTDYl[0+U+*qպw0t(ka EG]&<;ye&z8Sl}o$݋#[y+[{=QLl]B;9)/ɒkq5$݂X%z^p*,L1r:bA1' z, [uғæorU}Z2dxQ'DD\f69 '[IDgaj3rg/QfH cUHjGڷigwG.%13<.ߥR/VgD[tCPc^w`몚1.+Js_6!i#7hЭcB ]viY6R~F:3X>q{sP+.C"94 .)BYp.OѨ%Ga30!8k MNc\Gf!oZL ͓ x* گ@}W*Gi !yܔCMT+j..D|IT.֞oe G;.|WdU2rݶV!4Z׏Uv=b%: T}vu@u_@:N",gHq}W ߷%j73A:?_˓8SgĪīdH+O%,Zj֔DtxcKZ [W9}L7 F]Wd/W-VPȜ+.$JPvKH}~+Գt1v+$ߩkWcmb&`Ɩ`cWpow ;Z ;Kl+7sد3v6z}u `a.r&@2}bgX3qdDEz/z({^=NhSyQjT?l(:h TJ|2L}ӃyM') -((<+rHL`;O^]g):m&t*/uYtoc ?/qw[$φW%NLRcъtGE:_,ŻA:9!ٛԈBp2,$օ,J-*kbf-Ȗ$;~5A+Jߨ ph4]wpx{pym >YbP4 +\ѰD--3 rbǻC>B54c$9(9CR{ѕKMu{xF\\/Yr|25>(,;S[(r24]'"F=.8DsX936U>qW^$ń[#-戵ܔ0ָ(@MBd۸HZ(1ŗvv0mgE=ZIS_$tʀ V5o܆LKE6 Xҫ"Rz ܛr6/5Z;e D9P@rӑ"NYnnN6>ʐ}<Q jk>_Zs&HѠ 59:ĥd/.f籂]Q_L&b*[[!G:=bqPԷ5wT3"M"86CFџ!6]OQЯE.ǥ&=^[M]P8cYܻT/55DӧApeCVls OzMR)8^@֭}P︕ 7_ʯ{iчjσl*Ӆ? X퐙nʘ2s,<_mN#řI~({C7@f ZvFɦ1L̄uD_㦚ܒW5Q~0>hW3Nۤo 6'!y3un;)٤]9 :sZ[\ÿGcd_r-33^%Ԍ82gVd",~x8[)5"wUe; C5$K0׃8p[wr^UN6h6v4zfm_%QnqA-2νi70)#kXBGs7t>Y;d%AW Ov Y*:@ Pq_szJґvPsi shyy`]ֹnUmW 8+ro{]*}dx4ߑRKx:bo6Si@I+cӬQd՝4MBa6Ca8WD$+n-d@Hv%/_LW~4!z\kLSPD3𦦕ɶf$@˗-qB\.3 fh82xdt츋a- fͿlbW_t)1Kݩ.OV;^KZ2lI-;H*33\ѧKN[D~"! S߼ZqK9Rcpkn}o8TJ2ᱎ~'2 : _n#$Gm0Q۸8;Y\+G08x>͸캣j2)~ϯ}VOjb6Q?%|J-N>dǕ}ΐ NzR&&mLຳ y<Ψ' t)oR*\TzT s f}V[iTO'n|mK}S:L-&BilOBPp]Ϧ{J.5%(Y}CP5e$x9 `)B %?Ce:'1CrYo[gsH+$Wb4.gWi83!\M6nR]ň49a!fcMګtKnY|r #&y:߮"zrkj.0%{K9$5_T EE|5=b~lVs^M[ۚ$q&}u7= L EeC#֮ؼm- ?dUFVw%*Du8S|O dG:u[ḁe6pH3HʏD7ξH ?zNX9a,c)ԥbatCg.Gw:[{fm6tpXeK!ʨ2a]\2LyMiywno{iN!,>w9oV3rz襬 #2k$`|Q}хN#*:FrV(CG 45bۭ6\-c+P]fF?vLQ&r:#Hd}c%K&UmuO/@d]azdAJv$}ݩ M6&gmȓCZih/-(drpqK[l]hmw&D,.gQvg 3M|V1hB֗a[Jj E{>@s"̟[dJFƹ4'-p_GKM Nlg$Eݍ͏TEnl-T7ڪêAԏs.hIKl^bΏ9ʘbs Gҿ:~ Ue}|(`66T@A iQI<{0DXRׅ; Dq?iWH|8Fv 5>ǫb2mThj&jrJ.hL5,v2SE,z^8,g;AE;p3I4C0TlJBN Գ*<P+13=VJ$Trrm A S6+w_EQ=D%ʹ`Pt1;;;]kY HI ZZvW? d7ޔeӴumք HHn 10b(|K~ Y8|qtn9Q!Ux7Z$ݧo=)ުOjC 2_/cJ`:BQ֠"ǰ;ʬF.̚}C{.jbޣˢV.l@ZyDbUD'`# $lDabe)N $0Sc+L;&W$J͜R (;ho1+ )&AyZ,# ngZE{UI¬w.Jsr>q1n+ֺ][gՐD,TnT&cߞ\.5f\/7eB]0e#)i JheAIrxsb!G\4p5#~|NЦ4.9**͒DJ[8[-PqLjSW?ش5 yFg6=B5rnFa?BtaQ ;AJL)jAVܷMb̎no[@/v)$?Ô_ZDNZd\3=a6!v]trvo ctnɘ9B]lϢOHϴ>43Z oqA"ٿM@{eT1we ÷*ki9e\!y߆HեFX!XZ5iܐ6D+[/VUZW.J4^s&a̾&屝V/>XDC0Ɉ[ݾs6p6N33 8hwlxQ_"D y\~B`׶W|+X )*Rz1{$V {a)5)ņD|C\ ~kО2 mjA5`o!^409ŔgNuT)QQY P1-`qYWCG fDrx:N_ưKR V_dPNdE̽& 2h''k:?(&v gV, qg/ah36 %#_3DPB U͗iap^?) NyԅI.\퉤L2LɯY3 +oA) =%4>tDVagy0aw,v#/ЮpC.VԵ;o}hu jGSb8 R:f¾M95=d4^eP|S*F­/m+;%kmy/51wzM ܰ%-= >ҍɒaNr,XVQb' mB<8c JD, Yߢz!&qop`[$V`.f4?$ PG_Jcy6$Ozi,c(y;Y4AZp ޟg$aƶQ34E m1]*ZzD3[N/%Ƞ^E%Q(MwxFB14I"n9 [Wܫ,|Qw 1uI^nw4r%3 (=8!*vMݡӽiX+U״ hčSK>7!apxYxx.-U H! s*JCZZ;/2NQ Odݷ >Kmuݧ} *1q `m*F@]X]Td%]:F_>EQ't6RЦQ^_{W\Eq7߿,'ܧJY ? qtn25pty'ySg2 q1QiuJr \Z ,;T''_c8KCo!*sbX_(5&)^k6)Lz.^V!ևsq\h/ NR:NR~4͆M# gLVC<RݏH`J`,]UKMQ&uI1:NKK#sB>) jW%B *nB~0qi- $.nTIn&dg$m(X[ 3)[:*-t#I{Ҏ:Oi{'Mh]4R:(EI&=$sllfȀ*؈dD&47rA<(i$OE=enu(txYI0!w}]wc)M.0=Y(LtQ9pi_cBNlq?fG? Hu7b3Y5׹`ԫLw@P6!-P_uH4z /M`dIPF -b.s) |;jeQ$<ĽD^( ,gjH&RMC@'߻, iGgE sU_f#<0x?+3/В"iGFϑeqN*Ud58 l$.ԺH3~~)9szQ* sY*?.bP,H]FT"[.6qb'Mfג)/7gz7|e#%W3ۥr"hU[.9K!⪽dL~랸J[sbJ5בV|eоJ "5/=!I`k^?޿^IQ%76,[ؿde3a= ˶%bXG9np 5(i-3բdX*`Kcc.9h47k!/uʂ<Y j#f8qR@0ߦ2\=1 .; @{j`8dA+m9bmp+ ݩDI, ;4RDLjeGs5z1 {vP,bdkyx2rcCK`0x&;* h#a 38żgog̞-`m. ӾtbKo]QOpPh7BH1 ÐB&9mj6@eo A[DVCJ1))CeyE0+9#ﶀy^:bl?(," 4N^S{1NJ@s.N~gl]Vi'HD$ 6obV8aYߥ~&st$㯕N 7t30/MN_H e IU5= .Str !NoQe tnD.Ւ nݦхx\ђºwU3s̴z@$W$?\Gp]?UXJSY jyv͞K9BpKex\G©4* ^=pRCU="ﱴ P$,06hE%JHo)1{5uVHIzƳ"&zb1o J3qvUh6 5Ug@$e2)L 7Pz 7o,ꦭjS%;0#,q (v,w&\͖.O2j&h8o:na6brMX6w~鍘rQ1=_u~ܩIcLY_Kx< ly2uUaT1OJ.Ɗdh>s}{U)YVʲZ04N+(qd&K1IfJ+ t;Qt= 'D*Aol.+ p7[t,MhWEaMfzoI!n21r"K]+x*6:*iHUy/g3r h"k} s7CA$ٵ/Ŭ0jJԱc . x=;/g`{YA떄DfycZA&D_OP-ei_{| UB_м_erU~ ғ##+3>(qKO * Gl{^j,5ּH=Sޭ-轴T$~cT絑<ЌKڭ1:*C? ߗ&5vtͅwp7PhaT M6a+07g}RyO7̼ۘɟBi?\躏R8dPp.bU;BݹI@ob.[Pv\w|22>X,lxʲ$>'Es=M xG{tc(qr8>G6ŏ:%WS{>ä"Ͷ!2ߧwJ{F&bwTrtAkr 'g. pmGV*Rs ΩN1Y@0sWK zVܽխJ!綩Zw.B Rʣl(||)? u3 E0[V̟=)VjEdzPOA+߰f;|$bS?hDy1K{ g94}*tNQlº_1ŃWp;9ak5qf5El_OyB۩n9֋[lC{-M($ 5eĕXSSK'}7Fǻ<7z8=`ZRd*݌k kG/Nu4P+wEغ}>VLwgI9|)¬^Y`}vV.5˳N0Ϲ|ś>•Fof~pjcUTBɛ4EZ^jCRH@s[-Jv\IB}ψm wN z}y?1zb-%朴'FsŸ^9ad(Ԝ޵x7LM;&{&hϻC}jS*[]"=Xp ) |;=mG<OƅZuy ۜuv9t$DA!UPRkDZ llɱ^IaTGeD#AxJLmee.t ƛ񿈅~ c!3WfޱzﳽQ%$l*?ѩ)mKOeO;er Y몧RfK{cݜ<~=ib/d nU>WJ]q6ItBIT)q{P№XK0`3_CC||醄it:cd .T --Aް _31i;.!0  .l/w~N|{aE6#M92` U*q=Z@LzMIlk pܣt'EԢlFP,??" ~V(w3bqK ghZʎsQ CUũjבʒ5>YN7iOke-TpӕɞzqxwOя I,$GTQs8Gxn8 !xؘV$Nf]Mo& g!ׁTlW\>SSeDg<7tEz\V/HA|O9篶UYԩ!,u**1q0*n 4a!`n ]B `K@0`7 'KNQ0/l|]ulPL[\d\wht{@GO4"砻rHSަw<&nr\h3Z1䘐|7KP&"AgWi=SZxsB&qZ;f}zVoZS\x ޸6ihf ׃~4XޱPA"9'1đD`xh͞T=J눭M)a钣ݑB#3߭lٜI֭,'0[ q"\I+-jB#T]$|߄Kcx$Ѕ+\2lr֝lĐqy JwNÍ2WE|-}(J %㯶'ƙ=,?>XY$:mhõL_yLk!O'ē-碦*sUm}Dtލg5.Њ ~[êjhn-SzޑcTܭ츤SÉ 3ٻ톾J? F"iE1(!=턣H$NkK|7Wƙ/V:t+2Z1ÎDK#t db6;P6\Eٍ Sq? co6 SMWеSVO;OfxAK)6 f u1ڠgk0qME؎ZMCrSŴLfsjh)SǬtO_(%D2!6-*W bÞA)=l_IAkJEcs!ki˿,0_F:D3M;-/dt['*k"@1-XhQ(*/SV"j`iDaFy;8Pㅞ`I.+(B2I?i+%[!n<p}Ӗu]Md>3Fd^A'[MtqhA*_pݏ?{azyx<C!"LپnV;{ p?ò:UVogϓ^ǧgjZ)xר+gzU)5d>"!KOj8Vm; /ʀ@f;/A,nZXZXQ/z'}}{31" Xr.3ÚcJo<K\n"b0|$6$_{>b˩`jeT,rvb<;ŸYoa AcfhgeW.=8S6bA/m^m(J}h3a}C-q@+IC‹|iw]b=V^nH 2$-áT{8*/`Bdz [H9GBw(7 T'tfxT9Gy(Ӈ2stţܶKL`yL3 PavP>F!la2O%uOBS =…˃Jd}^6uIof%I?xjп͟>G +Ձ("hu_I~/52e{oBM7)4^"DŽ=:x.s㳏st h%?2R?yr3ӧX}41 J" nҹ`%v c̦]qHNxz W՜Lu*{fUۓ uqP0e~]5)Zh>!çփ*ED_OZCLGŭ77솸Gؓ.^I=3̷[hȺ8<y^l%l<G„徧̺ Z.5Zɒ\mA4܊\^A2B@+bܛB?!EDNq1ᗂ[iʨ~A^-e1> /ΐcpզr8[l^Nbkk캑qe+8MS]nZ;> 7|QP⳹Τ՚RϿtj Hv';VjhjCS6At|g#|ڀcٯ*sQMu=e\$먊PZ|$ #B)R[ ]"B{d+|wH"89gOc>{Mg5ЧjOG?b7 /^n8rTڣ"uhiY0iG%( U(eE Vq%n,ۧ4]~[֩*WnS@#!CdB!vbѹ:\PͨT>zEsK4"_ Pdɏuu%IGcn,D*]6^&ҿGY)SxdP4Pb?]n>]eSI=ɋ|&#[x\y`5l9B"Zs_D|)[ID"Rq&(;d50d9x5Vq`LT2(zEsaK, O9؃;[\nbͰ1()u$,+TkY8n/i7U |m/ŇO0vqH4N3PȀC&[SBFrsDư!3KnTla+yZ2JhxDQ*H*Q()di/?]HgS۷;*^^&k8(}<. uL7h1!N~nFx`I\f<5Dj0ǒ2M r)0ULSh3ѝ쨟hUypgWH[Lߺxj0GgV} T=zx2\ȋQP(PDZH7-:umV7v]!F MW `ɩ! lrۊB1b˥@kዀhm)OGV pW${)N&cO4藖Wґjs~DRMMeĎ+#)H-Pgӑ8(Їf~dnj YX@?^ ]h00˸p*nJ\Oi$LK[V{ g.]kWS')`g?pP {E>ԕdk%vd{ʌ >*k&ueK@HX |VE:%Rg<s$3=>,D;Os9A}}]. 6# -'YLmzTDD< : 3b9f'X:%@TjZ9#Db!Ȼ.(.k=si+`| jyb0 XPdWl=CV|nSP57>V52(DEvfuSleuBA/E'4#P^Pԏ;kf!ĝۑ͈+sk-4qWۂoZ]b!ajVA&U7Brf&˔ v,<=2E$e7Vi\Ǹ[xm>;O$D6J"i0~e٢o@a-7R#$͢M4:tquo8pNAe6-&>MFB3sEH8Anj$犁GM ^Vj[?-4^7t@Re#SaY,^6d}Q]+-vx?i'%.K*w%kܮa5^=izՃbₓnАH{je ft~Iz\qul淭+"˭j/#<ܢknhffmc8]nl[Ktt ΦX?YNwqhG~KqGUzMP!q#(*0rۨku-T[MXeخz9 h,3 ކBFy픤Y&^ϸgPvqu{29ˈx867&G+!ޟM6\<[hӕ&LtoUpU:(bXXOi8[4{O+dt<Kp~Y };uZwA4BKlVW/3+,j} ̓lK3"ADѸyN܆/;ꠞ mЀ]b4{>7ؒb _wߧ}2'Qxhʇإ^|z` G>kF ܵ X6.+~}d>!5<Z qA)9ۋ7^5ߖ_P *s̘ X9%C@vIP)*K䅓rI#-ߐu8 hZ0u bc4}*;M;yAfs= æuTu(x~k`3i٫K_~؆j:g`@Q#yB:S[ҔcňSZc':U4ĥuXzGu {t$ Zܑ:ev!9hX2‹$ʠA] .b x+B|sȲd4B$؟N>{. Ws|HJHqͩi0LMCo;`Wg(B(橠+Qxм3pؕ`Jc.nLLS;S-G}M)uY2uIG6 7'ZbA ^obnr,aEמ2O B;PPv+V&d((G@ 36=ms|L)ҘTkK%exQJi 04nO6LM0z_?~I~1/p!+(yW oyi vuMkMDޓ< !LJK;%S{8Ju$b( U dYmAww3`D3F .rߩ,ڱ EK~E"PRqk9N{[_09/jLSaHS dCPB T -kEfcpdQ󱲘0O,Lh 29o~Q^M@3nz>@<{NԝgKe;+5FT'y <-w|$3ZUI%*YVyhsImaӑz~zK8YQ b'[$[:]UKg%0ycUiqA !glEEFEJ^.bm3jt9!8PoNIKC}۱޻1Y2 in2ֱ0 0K *0N:y]# )ƈC1s 'io>j"5Rő..¦kD9ml$3M *~AЛԧ= sk[g$V28TK@,X ~jwJ)~)V06GG(J+x'uesO¨q4-79g}5R?wLfxlw/u?>f_>ϟɝk1_7vI9{A@M xp( "M-:(BrHd/·aOj?fu""VgPLvb ײz2`pn#2 tX~;H_W[m Wa95 F/!/öՆa.ؒ(E]d Ώ[:L^:Fh@co gwrfǝ^[Dۚw>;NJ0% ^:8)N-Eiֵk#Wro#}y-h+6M4zAi[֚Q&~gX2j3XljۉN x3!Hٙ*<ߐ` u (Sְ_stŕ2Cl",w~0aD[ypbnF}JNareO,qT?sºKyk<Zзv igXO3$ s+&+T񿔿xfMf>s_{9\`݂: LTq5nf7EYbY5jlA%g<))Q}^@c JEuNP@]+;KjE|HXp, ](XUf#EǼ=`%C3oV.,s[x\mPʅܨKꀯbW!kѦ´A<8( TbnFƚI-,&"4w?iJC?z>!bֶT465W![c5S] <{~ kly,[up+/D9ʈ6bD%:^{7#lI5 "Z߹aU>[4l[DNj cqX)6ҵ҈$SqߎY9 t d{lmU'-8j)ת[()^9 jR2 % =^1Z̑&Upr#N| N,UCd5 MQTV]uȤ8ߓ񌅫~Y=RlZղOWM5m7Sp澮pJMTDn'ܽTBoSSy(p'Gx 5xJ]L e%6/ D ~o x͍%/Y Lt_fnZlDgRf3AIP N/ ڻ5Ymʞ)4<~ia%C/+:}p@UnzGeOFE_wO=#S|Ga)͔K51 ,t7lqOYUյFyu8r6MsFIh>lBtMB;Fw NL2 IbG57aNDs;,>%RF 54\Yު an*<&ֵ ߭*垌H'o=ة\0(}.$hFL-BiɃcP 2̺a7]Y U^:l1Q\U,q"k²}42M"BQTtNPdkS{vڟA>URԞACo\7c/8G׸FoI:~Wy q@Q؜Jzz >v'ιwwj;K<(kaiSI[o0`knEW4fa]hFcT1YEҥEI97/#Uc:=)ף^bLyKN[ouNeS-/kgCڬJR8m p U%f#iY#E"XzNZ|Ҳ1\r}to/bddܑV5NxL\nwzjB@ Lִj7z6/zm\N<δ)sf 1y\;>nyH~#6,{%a".> !0h%H΁B­Ƙg&]Q$J!|PU4;}&PmqԗиKՇFW6G+zV5a*, *`'+a͐&:U jq~qģJ!iՖc '@rض]5}ɠ(b#"3\ LQHsa}ɂhx?l) lDye΋2t3Ta_Qt)de"rʱl虽 Hohܹh 2av͛Bot`6oZofvty_+[j7'CgB8#ɌyrW$ =q*v&=WBvomom8O8l`4'+7D xWv߿qܞ'tG>P^:T~9]J(Z O=ઝ #"& b#]Fӂ@\.gcRm ҒP=ϗΘ }}#9Q^fT٦Ihb#3+tte'o$C>k<,0V_W7FxF/!m \Y,C]BDl *\ѩzLkN!|e~C`fʣ2|"oUW9KI$־8ݷ33HokRXC,_d\"̐6qVf;B&JPWR40Թ{BGM<ڢ.S eECDLCt8z4(S-ǰJm6O%bWL] `|j<1ftua֍ѽ!tӷ^|^8'z# / =f.&̰Ӧ~kC R7!z'x##3 5aP ^_)Nc!SP)0w9;#K@l;c_*υaHW/>hTo\dbDqZY%VH W_g+gD:]̛hsJP\e:hp@"OH}[6 )ty]*Yjj>4T#RDSe`1!Rmm,iLhB2$0n}G9[ o]|k.AՌp 7BH n?מ!2M=h!kNj^BZW͐`'? UVk7age|<U1ȩmPB>۩GA(3xťg|ѭBiyN˕S߸ͅzVTޠMbǏ,kf^0g%8 hQL9# (4v'DGꐓS iuxj԰Khcq( EGJʟĝ~|-nְ oƾE.0X:9dP͉7Yݬ"Eʕ`x |j\~ ގI Gҧn9Apn^/K #{\Z!XYǫН͟iJvrO>!/%t'.ԱIH8>"{%IjI~U*ː2yU[Oͽ`K3*Mh0XMrR./k0aMȕ?#f`Qj᚞I_w`hƶaǥJ\}nqH xc\72#2v*|Qj;<(l1[Ԃ0AyC%xvi$vhfuI|!0F@(a)^65~]~Βao3nTxKǒ>BHWaR|43k Кi94 eTl>|U(),>iVgnjČgnZ/g1 ï/sN܌;Bocx3]Bϝr\R3H<RCBqd,U#F#rr&I]-˨hȻq?Z@l}8iJRqG*a)nY!ao[ڝ ᨚL@?akv.AB Q<Ԓ8F3֨W+^m(2ƺ%:S~{n`` bތv8 9`V.C3n[pŚjG oT,nauAMHOwg ; \82+Ι/9]p]MX}C_*"~%59Er[OhI0D4z(| j Dfd h[_\߹vZq8En{Z$ѤSi@lOI\MCXw"9=+ž;R؂xaWKP,|0* Vxc1غ&x[m@TMI' iY 3 H0rֻ%WU:R0j<4y k[MK5 l(R¥Q,j+ .BOsn?qe(21r[Á Ab~Qc/f*"÷e-"Bt\6g<qPb\F,~ým5;d<,hij)8]юv|~Yy5* ;*O\@"e}֯vqR\)`EX:؀m9z[]!XUj4>@s/S`Qfٮ&V->D@Bź/O>Ӗ]j ی 8_5u,-' }JҪ$pU`^p@s[][ej_-3x:62O( wWQMQ$Yԋ,R`'.6"毜O2> ȉ\H(8>e|lChu 'c-ބF9CD!y}CRq"= Ќ_sg.%tŪH΅X=\fuayd(dII&#q,-JU j!!&׺⣕?הa|y&PU!{膷XFog7k`Q1r{ָC 5EZ*PO0u|,D jH%7ًQ_**>[͵eș@&wk",G`m/Ʃ: #WuMh2Ds-n̬K~Ơ &yH$ܣ9,=z!D*cQ|0D@ ߴkP]~"u6 ֋~+[Ի瞧QwihW8`lZq^NJ6$:f"pyk ZQ8 <'"Zdy k:"oΤ& u{I(so mI"7H#e IjKe3mw^R ׶C>RC?öAT=fa/h$"YӔo4}o85GK)n{ buv>!ܐClRAgw3"gKT7nȁs8ơZ~aJ'.(i 7t39*ۆX!UL8iG=ׯU B#*I_tcϼ]GZa v2rZ!"4m=^-).C} U6_2ΠzSX%wָA/Ӈ(,UwjXQY0@J?<[0'@,nrn\&BX6vfpn|Z+1bn<9Ph]fwJx zx3w" ItH"# 5 GY SC!l5Ռeq2C8䝾S<>1 -y PZݳ &l8V`TuB"G_}V3įH6lc,6c&Y w%!@dsVnJF=!K0Q(`I73];tA"μخ ^ s#1+8O*g5*p!6ӿs'wrH#:[w^B9t-#],|yW4L]3)tBI2s-׃-3I4)CBLߴ\8p>4B 09^"I/|>$蔸[K(4v7H95p l4@2<:LSdˑаJzuKڣf4 KϠ3Lꚳ]|ݱmf$0{KK׿hW2`rL"Ę CrXJ,^M+ulr?#Edw" S>TV~I Dr ӧ=wh6who7/OwVWd ԸyV~l=x"Nu@ \ʁ ba:PZhLoСoUl Wdw[*w+1s4EtgP7 1veGѩń= WG NR0:Zn+ipy|RM$'(xd"YE-;PbSQ<gO|I?<.=cBKAKI2f$l>΅MeVgRݐ*zt'tCS۞?Z-3hy J"§~,׃> fpF7?Yfƍc DJu1p?=Huzv$[L!fa%U,|w"s]Фj[mosU"shfw#ޜ؎vՆF/3mwK˿rȌ1, >K;Vej)Dt̛oK"NƄ05 !qi4Ո? 9ep鐇( pZ dgO2H{0jQ5SЧ(d 2c P큰hx'j"k>QwcMUv'7E&tLkMCOL9wMth=׀N1fj XIPb8,oe$-` +d~" @_3)(DٌC{pRMK׋8mCAC=Kź1 <6p&* TaUS:g&*K |6X6[pm2Nᱟ;1DpU䦕 H|W]JUsE5'(%JfL=D },%?3٨]&闸krq/.R^?MkȾ ?%}fgPN,C.#;/Q0ݝ~7(ɹ@?Rwev*a<487 IFӊ֨۴7}񾶌8c V\Daʤ>ydKl|o2EpI757mee +xni0JSKy6|J^?MX/8kk?ߝ=pQ+ze \"AI*?Uo -xē1?X X#ڭU&M xnbΖumg557k)L"q0tUx8Ϙ$]$|TNa~KFV J4/hU̾v藻;vow5T!U!5FQo'h8ue`|fM!dW^: ɚhgNRH3j\۬i=Ã_tS<CdkA?^kQMFTT{#^E}9epI(}[#I0GXY(UY;'ANMC QoxE(: T*hB$ahwæͶ gmKUhYjP9Z X)4IXw,#ňxmƠ( (;Y ZG _҈}dwIp^7kFBH%/۽ۡY,mrړjCGw&ыQ'AQ7@ 8 ?d9}wF"M9w 2BQeSH%%]'IF`6XBh})6< ;>Q3W̭(.2;6nҍ[規@(ĵZ;Z]ȟhKc-o_N8}l9ɸHvV~ mRm8IG |tQl yzw.!8n̕vWr/Mn-1&AU#\r*JW2~J4!B-0 't,/Hvʉy.>ZuvqɒW'&ŃwA>0q ?!RGu `L 7se|P$\bwOW/CGʩ]gaxGbYXPvXnv~V܂+Y!xIэ>l:!$M4_GkJoh)ځu}V^L)!u Қȱ Tk!JD«XQ9<1mIbX9z4RO2/,š4Ilv|UA| qvH7R-?r q81G$Xd^?g%2*{C1gEKaipg7WuBj`GD u`%ڟ;iPv}?pֆc&Q11  ͰuzЪām Vr`gBO}AiΦ0;< Gh:2 Թ#=UPd۩9V)@S3Mmf++w0!Akv162 Yw b{UπYφuBЂ*NZ3/ D `yf&rP,"b aL(r b+]zJa/ . H9;8(4oS0E BakUܽs< S[OIhMlj}4KSk Ԯ%CYj$5; c?Ԃd=|M0:о9Dd`Υ[hB!u fDT?0pV6j ; *?yט*Eq"Yf$γBΕ #i.+2 ۭsr?ѷ4pշl3SO-񜱮.e#0BFm>$㦈`se;a67OЊ\8^,ř":l>u 5)O>@^;>B jB) yYV5Yz;R/DQY9c9y"aJb#@~y{^0eZ#evXAR_"c::u{6G%*9Z7U7GZUd:6lAUnxFL8Qi }='*+ ՄBe]ABfbqs KDXJ^hΕWkS"x"PAݲya />ʌ1Zb`Zrz3x2S> Z>dnX_:ڑ`RDf=hG&QE[j33&GE!0k03qN)< =9V`ML$K/:Oj# UX"Me8UEY!, ϰ:6&h)~s-?4iW,jtJּ$$8s*ξcH@Rnmx&>z3s#oXƎ(TM&ư#bɧf!I%"Qf9Ɍocpn m nS/ǯ 2jf3g`4s ;=, 4L&E]0a8?OU$f\{/mm/- _6 瓮!jToc^^Tk* ?uAl]&oR`i!- JT<:K)V[ILl䥐 2Qz3tz `bF]dŇ+l4F$ =q,W X*8;F*:ZPtΐ{;1Y^{L<< V 9a은KCbA&.2AwhRF7);H?>~~2i!"(D]ຩkPѦˎ7i`QJ_0$S^_HP~Ϭ*]1Mfrj@.%ٗ85 |%Aȹ 8%`mZ-sKLLïל"N3EAlwpH,}z;%TK%1gk{4=þ>ŀƨ\T17ְ r(M*~Xv:Dk\1DOBKG;n_,2fBnŠw7;&Ef_amWbvl&q7i8-J] tmSXsƶRr\B ¾(؃1]hȏUBHcd zܸqvSuкᨁ:at:6Li/E-E+%RNٶS":#5*NW0béFϳCڹ854_vXl!v5L(} ¾MqiSLwk[B@ S_WI`gr%?|!;;(@\ΞcIa ep\9 ;=;t^UGsb߂2z CB|[G-0S{+ vttQ}znq;Eո۵Y:Ibⶴ"x3=$zWNlq?,KP#4h! Bv9^a"ól+{'ujHFnH݉rx nfV:CaH,7mh7_H>h AP7R<,y@/ /g Ac `f%js+[krƺ1 pёy驢!7 &5]t Z)釋0lQk&yʹyL0Gf\7(Y,^?̅ʳӕ(>ķA icwkuLߗ$8 Y68Kn`H] l0Ҭٖ#ڬD(B;7cX9!BfOqUp)NCur oPP}±*Ys%k2m(<-gR1*`U:j,OzBX BW.؈MRT$5/Q`^Z b,M]a2nmZ7סNPMM.lnO٠d>'Deax*z#26,K+9: H%2n(زR#u-ĬEꨉoof=f h@ ۽Ow 3dͮ6jkYovV]> ^TiMZ?\U/sؿk4ܗ]o1kM)t]a>^g*bY^7e ) }1 gٯE|%>r< A5xo/f6c%@][m@f-Tw,C.#V˸z\Ło[cN~fIE|cx<aPr~"%*ߎn4wA%$ tiˢ=a~efԲkKU6YF":2M;iYsdpKa5[(pn㝲lK Dpm`\NFwY'qD4n%qLnD]nJPv-ba I,Qb3v ݑmrtؤz\D(-_VƱH6Kl6Fzrx笯>% Fpu6)oQLZl"r@E6zmYZ6Tp+d5keJ5`!`oڙêģjc*v~rԗAՔ1Š}\:X[֟0Oҡ7VG-Z+kB&Jk+3;xi Sy |}.QH ;;msgfm:WA|M:aTe:gVlP~FF 1@`?Eq <2s[#?æaN29,`;Rܝ 3ۡG.`A/RW9џX9n vZmԭQx&Jrլu\wՒ*|d>X=ٴz& Ɖ!uCİ#(Ov[$E%ӹɱ[韣W:JćL(Ԉ9&! 4|_ELTMn]& F\Â[!cXmy:\+2 =0ru՟HA[W3D&cjpm4rAJ[1<Ŷ & =')Upv?w¹蠢ϠIyÚ.~Ѷ[EOh8 Mqafkz ُUG.i%X5P'3xÿy[s]rLϺ$Zt)C ͳ> 1r)}(OhUvV Af5m/?B܎g:T%,f2g΁t9 c*J>c4B:GGk]z??۪{rdw rN klzh(xb2 9Wkl X/b 縓?Oi#+rQ}?>` 3sPPΝ eT2C$h9⊨z .Hl oyr!p1?w1y9ctӳ'#Z`! L鵻,#*8a6EI@Pe jaaNĀM (eB5U9P{Zh{h[Vo. R3U>64xGY3>+`Te =ONތz+y.V/͏Lt_oQU~= ,׮UrzL_]8F6 :Qc\-G)xEܖHrք{}}|W[GX"t|9&TܢA1}ʣ` [!]-nϳj45 QSA5 V RYZ7$5)H.<*o E}J)‡ x vDj r-;[ln+nk>0z{׃΂2JĀ 47#DX-J |xsW>Bͷɗg%@1e .XCd$oj޽HI72us c0~o [8svwmR3U:)V($usk@ނ 3b?k֤&]gr|v})9"%P6o"o ? DjC6բ_06vԳU|ͧ%Mb"G|fp9E~2ޥ wf[@j =qzTG չ\pJy"=:w=y$ U/Qvr;H)G6t]/,#!YZۆeh;:y3BNxI|JEuaOȭִu:(DNƩf rҲŜT7`}[A* #:_xF! !uylMkd@a+XkbmRrA8jꉨICWAV|ā/X,L$4ſQrz'Xҝh0GYmq2Y`&ԄȦʤ^\ ¼gK3:|g)@p "@X1)rk51;E,)hK ~Ws D<bdY[ղ$۔xYf-K wl &8D%]N G xq hjlG}]a`B1͸McU —NΓu vAj)Ӓ{D3Xj9R?3C)1jq'!zxl:P gŖ0ecJrnJZBVrcflFoP}PG;9Ah wM+_tg%.k [{WV$T[84X;8c4B.NJh$ɡrW9spɵћ|t]Zf23 űZ:E67 C;2a=\^7 "k]`9><:/;nQذWX-t{ Ri0MLu0Q,J1V >5\|!ㇸ@G~gW-oA}UP8q[7cLhu9,uEqA,9Gh7b-hb(DJD n:R|H^/}sc|zzߺ$:`! v\IҲ3S)UaJ=P,A-% 6I- F0!pF /tMaU wr#Ws#0LXu#`{\72sz$E2? aB+:)ܓS!A;~ SKPSfWJ>㾄u8v1ڍ}/rm4svNN?2v؟?dt;AU`zRspq[32E+  {H;n&^TYI]y+m$.93&CWݼP&EQ_a==a2Jʶo~&N4EaxU| M"^ z>bp;նvGldi(&fqSF8IB&? 9X(;X3`WᬒHg?0K?]\Zj bT*4'!u):`~Z4Vvڃ+I 2Et[1Nf3he F?juJ\%nv(LŪp*I.JwuAbOd: 㢃&}O m+Xpb܆ݣshF/:?2͘hۋxZ4+iG/FeOh]|_`'7I>0Y^oJ8"iԛ?eG4G1drKK=\[[ PR=Nn4 ˟4kko6[ ̱iƇiC 2iw,8@ZS6(G,k֮pn=Oõ8zg>`,$H V@{aE}uPЃV);'bd[ރ(=wN6_(Oif8Wx\7SzjιsX*?f&eX^PcVyz"Xŷ6%/%ìPyJVL; &-}C4=Ȁ1[o2QPTeRCv.;Cpaaqؒ[Y}Fh"5JLNK%PXPsz!DOrkcD6e\ <2[BZJ/x.A{-Y *Q>Ѱ]\( pnAoR]/<[u+C _9=!^=Zߟ~6uktkfɾȑ3?9oz9%ʜјϣmII%I@sOT*KW݄Ysl)?<-|Vu4s_ШZ *Ӟ:09`9j,Ks {h8a/kA&_V9|! 9)Qg ȊK?NsE1_Q":Z<%6/.f`pRtc)=: G[ ϥIaan+Je5(Zg@ҶH-ݵm qFsfO"K7|Bk1"^YVOϪUO<R4>\i֠ cGI|._ Gmp]F7d s̊~]p4=aքk$̀qrҁjy|:'c4޴6PcV#LOIhBMmiD{IZHq&z2{ً.Z.t_';-(-ZLC tG/^Au1A$E\eSJ]WD󑙳W#Q'BV:EyQ#;$Ԏߝ?_*P퉩bN{QN4R&菽XAU{Nuo WzpHTjNӞA)bcfPɎ {25c W Z! ԇyEפI%Qyx#G +S-"BIk{F}I:%½%.VgdS}ĕlutosA*>X\;Ym~16X#ybg!Z})|'ZL LL N)vHh}tweX#%~oаv%.Hxt䕤c-]Js%߈ ddOtARz?(x28fFU<彶b8~ &P+lG&اMTcftm;!O+ p. bS9}$`G6>d1inFZނSPAe'تՕϛPr`Ŋ՘0TqΪ2#츮jȹ;StovAGmh*ݗzLx: x~NDȢu)s tU*'j YUB1_Įg =Ċ蜷e]PU-NPpV@0sᯟ!ag]_zD) BueKPO傾6vP!1ܦ1u}RA q)OQS[C0mmB٬jk%)*(L 9K:nC٢}x3(1!Zo܄7zU49߬z\oبp?tT!IzAt9喐{uA(۞_ g+Wdz?׮C8+U,Z\)e5#.$80pMG(FQ63>3E~vy؂VYdt U7Zbxü< ]jga:?H" ɫЇ|0`ǹBGfnYFZao`$gΔo9%s Yj> ]LlR7fTcP ntXED[Q1hܟKݧԦ3Pr{z <6ʺ+Vnfs:O {QGTmNMvEl&9ma;'LKJW}_ɿFۿJ}iXo!UpgƂ2hq$ұ@~rSm;P4l]X]Jq!$&vQ!fѡ#;jQ&bG%hp駼zē_$S؛@$ $&E= Y;LhhݵCY5Q8 ˺/libQr;q)y C3.S)=(Fџ[v]Ƶ3lz3ʔM :ҭCDY 0HС Nv#ߌpUraIFО+Ƈ!ǭX6?U kOpm󧋜 Xj39hu $%\o(͎CՔS " ,`a@ Y|?~E/ꕛsx)>]u.cT%8bWNN$ i2?ӳicgb Z{N2İ ݅^=|(Cv.[MVz`7͚!^CGw1f: ؅n=z€A{V{&n K ˙뉔 )zG7,(LhA G#}9 j"w@v^3`eCRԄ:QpA|DV)\c, ]/c,c -?}7kYlڱn{ЋQ-y`b'2y>"yм[\g2D"漣OMBhƩ*8G8i;ik4BfV(#B1pkoy4iDATEAA?y1}5)Dg]!QV`nID!7^fBR$^*Gs[A4eŧ+ޜCu/6cjdq/ɘQo#M:_ R8޻@ye7HHk;<'@l]Ԍ x7m5v{:/TK1"׍XyU٣w {Jv};Sgas,Ej5 ͬ N󩛴!QթW4+$q,<|ޕ eJio[NSxʍٵܻxy0<+;g`أ> Gj*t]ȗU*^\R2dGq^g|y׭a9`Dag ؊IԽRQV:qq޳yyb|z\E7(w "I![0LLUgL_bVS>*gZb.Y Rx2d~q E$(kAbKEO0ktC%'-WJ7L| ?~#wؠ72|Twc"mVvPuEqy(뫐E}p؃ KYN΍54ģ=2 2}a\%1oN qRe'"y@FæmX֜ИF.>h}0i~UU\sxptƋbW?C4ӇTjI˵t`KN??Y/PdS*]$F:Wb=sN@y`?DmIڟ[_EzoF\чԩ#rԷu4L+=_wo&*X |5( j:y_OYru$+)ѭK_ d$=ߊEo}8VJ"q*K[ׅ.u!;6g A"QBGdhd[n̾g)BҰMwض Kף`;*Ng50x5e$I p$֩lĜ}/eZ|֚ç$C(/a^ fصue.ZUo 5#\ɠ⌡C>S_r_`@y$~#Y2 R*} Ua2NDe# 2M)[#y)NC^43v3(apMhj;? uRT ƞR!\_@X1/+}+"+^m!#$Aș b( -&g@P0<k{ 9KZ\PaOR U)~YnuFh2_wWŷ^A^JjFS9a.TRu <(m`6j+FJv7^H>4civv V`p/6}QKSurg1u.F"형 w̎{k}qپ*8XkE љ5\'.N/s&Հ*]*QY+n7 KƆee+m:q*ᠺ kd~T.v/֛$!FޫS* uT _~@N_yJ_ҧ<  >&*uJGc@p8cl+T|<=$m? K[A*1U+#YUPnXarβ4^R-Y10)iOnelLm`1{ceyvp<$iӶmAmձEdzveKYB?m,#[>k|i)VU鿦m@hTon=]yots/.:b蔢]Ǯdzl,:S !IFҥz׮d~G-@Ko5g]d.X0:WʣCKX6J"/_R!qH7}1c"M1@~}] jnnb:'Oz5 pI {W-fϗ:e4rބmfUf`bGU_ *aٸǭ+E3 MӘCV!}O:- KOX2 }̭*LF_|MCS(+؝-会a[Pӭ$&bty'TPUM8၁ gUkꊊz*:+t )7pxX' |8QA1A)PPi>O :d*v&^LyQcZr vnٮN'eZ-e[oۙ_kHc?7gqk^6g3C HPҶvI}L8>&y0lOS[M}ƽ2u"3Q7=m(`C>3m`Ҵ@y/c|6'@p1i4L"xj.^qd 7 ʨ%3{V^D/iV>9|eB+MS҈Gf^, =54[E -[`EJ[\?njҾX>1'7)#Tjt3C;%$#& >+*9;o:r1ĩsQ4d(I>ļşKu2%lr`ל@cCOA~:ZP2“[ۗ#Y)@#եgSE@Y=kU-^HGIcۨ($Øb! 6)pg (' Xv702ū}"?g]ruD4M$Q_55&j擃rЮNՈw^P D/0ϗCmӾDej񌝁U<F̤ LEM*{y"aNzIbnxg UVj8t Z[xIL ivUЦ\[5͕(݄<etJp5'pſ Mg`RJy]䧻NrD*m+1zޟSX p=޾r$jrf2EV[# u#11!P;`1x3&[lb8n7JfI2JMyuiKf? ̚FvfY!bͻB$LӿTN4a@s88:|)ӭՋsQ.uTՊ0qr ;(odɼWDutefR'CA3'vNYYEQr,\j"I\2YYÊQc/xG`R`Pīf%N:G_ZyJk ړ. $-p@!$_Bx nvI!Y5.<୘_ %Q.1E|iu %íZ!3nAdGADM- ,8k{ν^Oڭ_tc;{C~ݞZ7P_0 Cp m>e|ed_`d M@ 1E ySN%6-+x Kuш/(?W y)^ iQ=FBKG-ꎄ֥kʬ~vnlg]sޜ$;Fg&@UQn4jġLH aߒ\zkbP*A c6'}lH4W* ONTgQ?aJH&S} 8߄bz9r)`{nN L,A4l ԬF2\<H8CbqV}Ȩ|(A YS3C8KN v'<{cgS? ]uX:=&c R2/GKEy"'p檂{;/AXMݮ}_Du+ơXOArTztfjϘnXO-[PyE!h֤ ‰dF1'3Rىq</T1!jq>gX~dw:1I Xye7Trǔ&nK_/1NBQ~8rtS%q:!Д1ѓňܕ\Fl| k\H^C -ӝK8>K&&`hZxG ԫ.@z'~;Aqe޾!eR974}l,B#rܰ&(lnC,W_ 2; 9:=I &o?yd.*,[Bȓ Љ3RN11atWk,ݏ݀hnR؛6#}]Ny|/$նMn8=p߉*"v,3cP /ύm_g\SR=ef%Ef;g?scm·JR`L>ٛӕ\_"kYirFIgƩM Ux:07bWv鰰XY>R ȻEBfCXPH,+(mr㱛pf45e֕-%߰ZJcҋ}P!|4P|Sci/zf[e,W͆)k,葆 crqĚ =u",F]7PЌ$f]hZSa{B 6]w%~.vz`9noG\dEAg pv¾>hOU SSrW_Ԡ$k{2&}UFd<`'RX!GR.dҚVޅO^*0LT ׏^zXfQaRW 4s4i&fTgCZ/?.9vO]> tbhD/bXh-Ez)O1Q%ZDU73b^ uC0_ʢ ."uDV3^ B&i =Be]8^Wt_sMG< $rL)d_Ho1i%uǧ97ˤ[9 a4"K yt'$!W$)$gz;*xׇRa<[yHYg6!Cɨi2U^}h oI-+jv:Rﰜyݬ!rV  %;ȪMsݑl}]0B=H¥@ YoIweQ)_0jd)YW">WYjڤ),~I$J٤| 1϶j:9gΒ| b0>5sd˸q!@/>"Uu9\" Qm(Sq{yfs7&- b@4av,5vr !;LqPFs !%YUTMv5C" a?!Up̢=S-&U~ cCvǜVyGii}bu^<"2xKL/A~vм{F$v5jզF=19 wB W^b:BE&lu"Hq#o MVg>-\wZ6"S«@f&.@d n|k+TaE1ÌRG>}B{ D,j} mHձtsy]`(O)OxDDa8$ Qp Ew>9]OȕA;I,hvo`YRuoF*Cp REtD`H*X3`u|p >v=g럃Q,N*+2?kM"lY]a2%j<6˝Tt,q9g:j9XЗ^Ҏ[6ÂHzz=Of0+uh4JH?|+}nx$uDW6;cTboAZ7d;X bl61RɨSBh H3&JZ=kmjzJdU'"O, `"$X'%9*XQm +%Yi.C+E]R-dɁ5}x]4ufDI}r[bup 6isR}fme+SBma&:W7ݼ3qQ}`+p]6Wk^Շ".Z3<ۅuyv4`Z|Ҧz  S:&(CV rTs+-ږ)4>f[_ e* O\71rCA?Yfm1W4;jQNocVߤrcybt nnAAvSG^džU(=d>l^{A *P۸Nt#.t,2]EDiGxf%I,W'pԕqf+ê"Ow˓jS7|,"q#+U1Vo0;W|F'Fr4*:ސļ}9n:N",bՖ򻷞 iaˀMaZ6=.҈w,VH ERq:]CB QaHŐro &exMdjhS0e^X)g.t@N{POt(6Vlwȥi=j_P`xVC{3d-u.H)P ≇g_}/\wk2ue[8#^Q91-THs0(i&3#ձ=U[ jLΌUQf .%23GNJxVHgNϟ|1(; NJvgH/oiwX;F^vLcr^係Ur z[iEE;`%33Hnr[Lr8L'ڙLk:,:­aB )1X 6\.+wx;茲Sd@Ayf/K8ߊJs;N0Z+DE5+ !*12Nw}7姌-afs1#J8zD4 -(}Z/*F#wg7)}z|o |1O6 @Kl,7 6T(b%Ēs~N^puF"5ҨYMo7tsE9ߋIGŊB:Pf3)[\A( h{~/44bGSS68M%,aX]SjGEG飏]T^/?p⋍*Jtsx3VPSʬ^e'9QE1. HJVl!UCy7hb/G1z?(!ՅCEsِʕx#x.y$IHf&f| Mf wP߆O@oi<JOV??MYDV0ys#$mdU6AO1SCN ӼT>qr ?ٺكs_$emXqOX!EA:(^񳳟IQBM!=#M0X6D%ܝfYՆQphjz=T5sR,'.ʻ&]чS< go-W>Lȸ|UDNGS?S#ݕu>ݩ'oE0sK]Wr1B%'W\B00|F7Sj:}llZε}]}4 -Hwe\Kad 1A{giXqo.>/ h/wƢXw> ; S7s &h9 SX'!`a9v?16̰옑{N K YEW--O|Լfaѭîez?@6翨ZL2M \1?p+R˔U<+{8z+K7/rTu #gƌUi9 /t >9mn C&&7&;zl\VuN-J!{ߜ֯ c )dg*nuK1ccqԍPC""}8Hq[tzߕMwPVԃ_<[IP7D9eFEԎ+ai;pŷ>'[zԡq<lTGΪ!>w(GNBz$_f&4ڠn'o*9#bzk,)8m9'v0цp#B gEXV>};Ivy ~ő TV9f…uLn'‰y=*0;)/| i.e?yMހuF!yєOcn1妚gD46hOOr힁$U4KA+k }^6TE]UC_Sɒ]s)Ir3{&Fbv(H aKx'xn B=hE#]b X'djcl%~Q@mi>NM~Ϊ]hvkoOƌ8`&T0E)}Kb@x(~I<@8쏍"$\/U)'f\C=OF'# 1J ^?:#3OV?4\~ҟ,3d%F aH04 -n$d?ϕ0QTB\bG*NP #lXtlnyr1id 3g3vr%0JqC}қ c+Vd̟+[9k~ 7qVU<" @{B]YC[P"'zeᝠ%H$^H>STn޲(2,e!w-"bjOXdXQ $L, 潙^\h &1”34n g܆gЄ+1f:OyZVLs옫~7{oDk"ʅ+tfVY+Dޛ-~ =J*I=8Uu`Iǧ͝43p"־C}}n$XPģ"Q1tit M|I^OF2:NVH]P ncYǺmN4cd mO77 bZΒsk>?9=EʛjK0~\$͉[ip+޻tm?9N(dƁ!/_\XMR5˧Qx\ZA!B35˙;71ޛcg2)vKGEyJxoIG=0W'VI"3v`/ҭrOQQM'$ 2 osW 9=Hm72Wšwi5?0.oB4PR!Ѱ쾢Y@ %Vv`el&Q E :e ;UYy'1q^ضpk~IE1 #eaIx'JYk5ky;I,1Ϋpv500Y)ml ZdgO%Q2ͺk8TlcT[6}cV!R]W1)+ʂ4:]F!Pl" g꛰(|Rǧ pm[96u\+ % <4hڴxe 0gWLn@=#vV|9`Ikϙ:!c{W U];hZͽګL U$roF6/LdiBUp0RߝIx/5QWL+ІEjSipPl}%-|v)ԗZ+1W=e1d\BUX5ӎk_^ݮyr= +CoKL_hg I?7>)%M !u})YN+=Fo8"aVVyG?Iՙf'E iUKcp,iN g Ѣ†sfX@fovc`P \O$RO)h4~(Ǵ醩tSZk'ƩP뗉|GͺqinAkn9W!87EkrwK`^k}qwO?RLͳ#jӏz{sy)XdCUXώ!L\ ϸکzuA>'VYdN:][%1޷K$t$'茭s˶rE>i;|MҘ~ 5M%D`6o6Sdz a'8C3eK&ɸU?qB+U|TlDotMI,Oy0g MqUvl6}ydҤ )6ԜK%*!% v ?;<$d"1 /svAVh"%D+q)~9P185 + 휺|s k^%8PHA\)M;MTnrǃ%O fZ+tJ+O0 "Nu ;'RB- e_Bh™𑱍>K]r[rT>Zj{k`+; Jg?Ǵ Q9RBKLh#>8dAxLyoDk[:I.h!v B2kPTH^EE֨ lj x& wijBz${צbKhnq] ᣐjW{o)5&yP8|,LTtf.iڅE_Z_*) SZkXe2*Ͼsnb~L6-yhC'uع>|]ꑾ# BED0MR̼#%PE̍jL~ϐ+^׸$HHJ+^$b]ceP|2k%_D3m&"fA=DUfƭ7ԋ"U (wa4X6 (pؠSۊtVB=a8HF!>znS,"i {'vE9^>-f١$cvR}ُaak5&$~18ÊfH:dgV%TYeuDDq(H6=. &SaU "j-a{qU !CpX*|LMG+ȷR3GŸ:P;e ~dX.Awfn6pw،O)ʼ ?B6mKNݝ;sa?[04ߙ h8ԥ>nKg.ʏvھXZ@.C;&mIYj=_e~Ȑ)HYYI{ wqmNoE:fHML1GN4cLK k7JSeq~Ш1q R$n7gZf*'B1g5?nqB ӨQl*/3{o St\Ux 2I炤 I SUuCf=>T 62j*BR>5ONː+u:$'[:Lܗy!d* @ >!!_AM`D뺢^1,7Y2Gk=GIňSj,:wIȬ2p;'GFlϜob ʖڑuv#Ǝ'IaKġڍ|ℾf,.,S}%8şkVW j#ϙh(Ө_p8Q2-u#KnsmETCdĝMR8R.9Q5P U4ѹo 1w S<W:H wS2;FK#@ _" #ź[j$Z504HCr2 # kC%%r7d^rdJ[Z:?} 5Ըi| Ժÿ13.o`[FMu̺QF҇gO0E8k!F{%eVd.~++d6I)L'_1ҤMi5 RtkP+=;}ڇ1u.~8= LUZ4Rz!dۭߜja0JxW ~薿D#Pp^1g0>dkČ?ƎoO%o\W6 /Cڟ/,' D L9o(z=)䀗 z$x]({pʼn'mqrփ mU`C _*.j,/Pt&WD+cP^ 6mqgXIxL_xK1`,*E ImpjkT{rGcZ֐b_~~ȶɑcs35SR IF]]^P9Q8} E1@ poh0]9I5XsoJ*L C|EƉ3D3 Rxo}} [wIr WΣu?,@|1mB" ùz9ru:]ɒI}VԵ9v`g$GSpugȌީUȼ gPDutjn>e@7g?"x UrL|& :i(+ߩӑ|91r՚cc9LJj Sppy`OWq踱ǒ/r h"-8 ^LqzdοNT8ࣁ9#i^YE[sZIZaW!u]ԏ58`vyjFK= Lxެ;XS`3$IQoYH!Y2)~x^%Ir=UQV ;CH02 [/6iHyitRfV9iXRaJQJܩ6֋ܷt-(56F<DWO_̫K(ź>s`C#-#]#ӬOiAMFSV<ݡpGC[ڽdE8O ;TB~KH](qXb!S}<(y2AU#% #:]HgB◍=kԇd,. RvOǓh^zC#UTTVaj4M?M#FlQ0uw{mX,8(؃7$/ $c6q8aU>~ZOھÍސ|L B[ی)33i]߂GRtf)I6g: e\;q2Ql,k$A:hGiDDZ-15 ߆*LPT?TFq{ D n)P kϹڿN%0k}+g5JMNbsꦪbYR'i'upg䄿Du;|ӫa'+b.&9D4.V=.vN?*NL} =1,| ϵQ}N o'hI)i@֢co&}K `B{z|ڥtAMda*,ΰ\ h~ ޯIV @zN ~4񖯩B.k>Y;T.^#[{F/;bEt$۔G3H\n!;ӫ|ەQh1#).QEHh)ewpVp&j,fNai3b4޵߾CIQtEܑ;t'a)^vrY5-pS$=Mqu#Udc^_kFtK{F,*)`;z5TOlwf*+d*fRh6Dԓq8{#O}+!c+|=}.PIiQ{jPIYFՒ;!4+c&A )6{|5d#z8E`~Q-vn77=1Y!-7Gp<M3?>eՏ[ 'V/[eEwpR}ҥn0ӊoN5J|W៭:Fh׃d) 3Yё;gL6SCaa]9((Zu P~f(`7غGn6ӏ 7~78X́QFFH$# ڥd?Y/C6T)6Rsw8 +%B >4G^N V+Lv٧-Rj3,sqH >Any).I?W\E;U4Ѱb_Լ TyW90NsкFS]OC#r*_`%}RBH T rѣn>8FS(U}AGV *em$VI6*mԙr`Qm/Eod=cz+@ ??'Gf] ;-.|l}}ꦧn$WG4.p([\.O{He7[߳j} d[smϫ$O: :tei`T6y6a*+&a-S7ЌTXad!;H.wă"q c9_F4[-4`6`?6O7躑8 f}T 5p)@H1ԏ@tuzb㵿B vn~R\xXi]΋t`fs09XJCl5ǨMt|[vrygۤA!D?%NbTxۼB+X"bqA>71'#(C2/.{cbiGحo0l 4|K[qv𽧉ʐOӹP@*S'O:;e1tǔ=({L :G-%sCy-zv HBP\3Ƨe.lt@3}1/Q͛psK #-JPz\PR8>=ڞs>[ZO{~^x Iӹ8]1S¿BX_и2⁔k"ʊgSͬD]aOw&ٖЊ ŵٝtBׁ-OҤ"vR|'-tp^2yjK~wY xy^ز' 7[EH%_(f&]f@@FmNZL DiVC׃MVUE4cֺVQvnaxVqYLc͝azf4`D+_SVGy%qp֥w8QM3YQ"iI?d(R~Y\< Du62ۏoBkd^hoxj]e'@&,p@V !$8_$. }j$u̴dTNM-Z텇a1ER}Tfd#& !?LR1tV<^*FHRX2M!!g?{JܷEuU@'dI!nVebSTirIu:_F]h%wB\:ܸg\kǎaYTAckBs2L5JQ]|T KeBRɒ"uNE>R_Am#KlXjdVͶi%̐:$TNGn,u\cڡU1GpIT[fIdZ,[ ^cԵ^R30&cSj]mb =DEbtTEԷyF15{>\]b$SKWF櫹>_K"EhQ$:shw3M!+G,k 7ZXr6'Yr#aUp!&}Cͺ$5NKNo>/0~W\'}!lv39mK:QjE4p ܉\fYɥC0liiO䟇b Pl*ah8>h/ 6U{0[C&UOhyDr&w~5q7xQxZ:h6zCБ*E<KQ C}]arφLò PFKKOBpg-%4%װg9Nbm=Z| t+4 8n< >Oh_Zyh]Y9*U?U*dNA7`+S^Lo45SmocmG-wdR8Z xr|nO 3E Փ1S= H뜇 ~/eNJև#F+Fc9XMLvy%[E ԇ3$0a$M*$D(ʆymZ `D=׶H,FDS>/X=i!C;񴯑ʎF9MdGqғ'zWԌ۱q:SiFKokV#j_O`/ID;U-|G/ZR$.&X`(آqs_sHI0iP(>E4w-.˙ |pdzv|R̖*IX.~Gr0_'[;&,Τ5&ܓVUhe#4P\Ph5 wf2aI)L^N.8Pb+\A =[ dIC0LFl<,f0զUj)|^_4;ՊO1(M/O]?9qζp@%3u_*CwYˠ(r )! =Y3,W@H#k| O0t߃-nPv4`8]e 56OlE y m2 R{80>%) z8aX00C(Q^7JG¸,鶄yqo^pγpoџdQy"IY! 0I5SA]&VuƱ]*J/P =4g5`lK K0QCx@HmGX'ldzK8N|rhZ p12x6COq:|c{|*;V7t;~PpĎ+&QG**h( /btq*K @ L/RsI8g=sB$!2B.0) A[ %|ح{mpkП7^yB^wn ֻ}hZ22YTm!K|ő65<^>^Gba!PAvߋr%t? EW- }+Jc [iE+, Y" qSՓӜl/@_ <:ْVoT"D> TG(p/~>7gO`[mfZqSyAnfʜd$A*hrBti:ol0Or]*9/g,Ӧo(#lHgV;[;@'Q91y⡱6xUPڠNLty/Vk z1w d 4WEܞsz})0AK7BLXx`qf7Ws3S*#Q#F$ ,5;ȡlE&FwpNg7E@ثn$ מ-!x',jI5pY='t03Q{fRtOE $5K=m>Y^xCS]Q$m9XZ19u)JgV԰)X"*6=p50]xUD 0 kKDI0J9{`([&tFQ{/ Og\(U&{Q1ge}b"}~y׼v#hR?ZUJE#^(nפ`R,Q*TmUA`((kv}Zq1pJ*abMȽ,@]az3_!bLTi`xnڝAFf0aG6~$n0dE DA&K) _/S+7>6324x|ϦW!( `iT ~c9Q۳s\򪱒!Z[Tǃ҉;OxanqPC&>Ĭ<YA A7⭁ qd8R3@Ⱥ]eD*@&h8>iZC$_J=Ox\'.ʟF[˯I9D`ZF[_#@~G3wd)Ϧş^,X$48UO<ˆjz$-0xeAn dT9eMq/Q~XDL2'"6 x? Xwfa;E|xvYmR!{0*<M\K~z:hƜ>7P~R2zq2M]{3KPc u`QC7fחzm|qGs V/$B&9,%6۬Waiy[s{Qm3^P|^: \LXIg;_cOmЯ~>JG9ʓ3o Ӟ^@դBbL"{"=f 5{ IIh=y`*>hߕ?p5$[rGF7y&W= 9/|? ˮYXJW]Bzk-% BI@$٠^@p- BVd]\!0X]T_+*xtP|<|b(6' I圬DqR͡k P3Vzi*<2xڠ JLb`Ҍ<_'i eK&F}^&_ 3%ȫ0 z=̭猍8瓚`\5FY-L_<{@K_[rο8Jbt<,6z^y. 4g6З_(j]̫ EZ9ŚO YRG.6+*65yol*YzSq o}ĉ=p"Ԣ7J 5*fYJCiAt (JgÆ~o[7SS3@:? cO-EY2gi呪79m*=c*Y!dy v XzNMbUٖ=*0m5j1MRyQLsFBYąm0 {pؔVxGk׽x{K"p9l10>exK([W_kqԩ[%+$?-f@(;+2gQ{>Ь"nBA.䥒f'n*j!`>f>h24 /3+LRrCX2o%:+T) 0ptdRbY,55Z}le;W6"[݉Pe|SEugE ȕޕpdȏe&ul 6SšQx "p.`˨M*\zZHo B r(^|aD`b6'T|rTŃY6,s Lҫ܄XvF}/3pS]zebYKE'2{+޼Vf9roʑ!<_i@8 z,1z~d| Z@/F58_Aj@*9n Ԡ8)Am|Uf|`^ נ4$~qխ+W?=G|X WQ"l:*IBƿli|_Q%nT&b(]KUEhgXhD4'Wc `(ٺa"nhtJ8YIYUCK06WVN^MM%b!mEW)?y[-,Pdp4!Een]&Awn|ظloMڢ"2RiM$cZk1K/ *8Y8'I0Az> eRf)G[)\75ἉhЀU曒 TϑZn=EH.nc3$ec0^Ly{ڐ55G힖H0f՟7DhdTǰnheZ~&/hZ)<$N+.EiG6ö@cA΄l$,dR%1br> ռ} X5wKCUxM*:R-_,5H0GW+ XЖ ٬ T.+ˋ|P#Gju1 Gp~-/݅;E?,jc=38䌐 uyGk(BgfB\,Ų"S]?D.Q/p.ΪCj߄B=8j@ArE/N^}7Z̎Ud>-X&|4E7+j],cp7GڂH9`.n @N'AXO*U- j -W''Zhma`׏gssaqlNI NB~[XĬdY|nj>6+cmyt=>4TITRҿIcް1 "C9v]|h}~T/K(Ytap/ˆxa5 k)v0IY+ קetA#7>vP/q/,R6]8u,:3_h6`60(Hcy3K^oxςG HvA M0i,>4KlmWhOMr%";̽;L7~nWP'HY)u i(DҊ[0t>P|yuΧA?:Z.̃{ iiوa(ak?[G<˛TEC =[`#WvygVs "ñ5\q jEM{ !3K\Z57pR2*-bn^-Y,V<ʱ¢/gwO;vB"bp8m* hcJuy<ܿSoW~ltE'+ >İ4Hh8TyR0i՞+3EOJoӗR2`SBj ;Q ~;!Z $'~u%x*:mb];n)E<|#E3_b&HRa {{E~ 'w65~ibsP96}+oǢ= #Au=u:7!pSu&vN}AO΋Fcu0Lݺd_OJ[ :޵?| sջi3ۃH6 w ͷkZ;RMܲ`l<2=h[fk\;Uu&g=[m. }M0tJVwNbIbhYҔqH$Qh% MXV7^2\7>uR)ruV ;SlD ^׌Tj4YT~@~T"i_^]ӷ1G9~r12{墙sreMdBM?N1@]{~t.F[Nmg$8pN5[}t2wϊVKI ]熟̄~C xRbP7#O< .d/a/ x ضZeWylésl{\UazC˪uoE8 ~|(gB\8c X(*ɔbv۴? / 3Pbt,X QDchh#n5[J XfϤ8DmQƭL;E*2v[Y'g&+,0PϼKEn|޼ ŕ }2U-n [Aơnz\ 1NilKǾ@ Fyns73` Э `b}7A+YYL l'V=e̼ 09U'.>62/tJJxĸe`w2=`炣SsYp\v\nES56BI5Y+ud# {SQ`m@f@M1 n~}N2{*Z4(uT"um`(Szjytw7kW<@4EነRRV~O$M3QKAy Hqnr x/y@@9N-9p#1d9uj.&RiV@ZqQfĻu&o xm" xx| H*̭;I԰w̬ʰ-[~[ҕ~'ΓTH ΔYv"hp9Fl6zK`-D;pox԰ 5e(e??Gճձ/E=u-kA Jmb`fv*/'wx}ĶȀa߭;QdKKG{$-gfal6ZO6j+M$(S1ʄMzA8 OeJ@?1}NWMdکuƚɇ==f~5+2HAGD{bS&C ^j5*z"8?ND=j}510@u *; 5=oB\u&yntwKzL[5MPk{_"Enh&t76u(LbTf 5Ό-'ux;j|sT=`c/(AYcs ߵY}W^,Z@f%Q+NXdd0n+@4'୶*gtRT#U3CM , a1ՙ`2FUZVdx'3yqez2-y6uȥX i#]&j-ilakf6g k}w-Q-&Z$MB!wj*aKi6YcOT$Sgnnw7(K}aXYF8\}ՉK-Lj "Z&ȟX-:?2/+[aill2(qlq"kY_4] m[F:F.j8K[]G^\gWh&I__hFGKvQ qepolTֹT̼V?+Qڞg75t[[IGu0Spxʋ!8h0Th7s3u5\f0QAbUL;~|^E/,׻Ac)Ͷ0c:֐ܓ=Aԃ Bd8W/k8 4a`őNCS m.a2}_Rat=1^YiEP_*@ tnC0jigItGtik"dV[$(GKӕu6_5@pu}®8;ԢӬ\eGN,qm>BT?ބu!ɏ0ٺaػ@1dhZnQ~p8IBK&?CǢl5N"S †we?=;Cà S(kdh&'zן`MfMAx,W-ڡ/Hceh릩9=Z5y7lW|qɎIvЩw0ydMaՋѧP̝@lJoq8_h,!c`.UI6 TrKfǼ]\%"WV|w㚖E{GMA"ԪoiiO7JfaT"A1ṱ[?#8:4wqFZaES~G aa;#Ev2Yn. Yp1VFȍ\dY}H-O(@vXIWY#+uj&e\h&=!|,wTiw]s- <}ZRsaVK>xXQhi!R!H,y8 @;OvRުM]ggЇ *t3QLeǂR!i ^"!;.%͝G>+_ ~w-$0ٝ:"p轟WᦳTXNb D42еh(؜:..֔)N}/J*0Zp?{2NmFCj]jT$Al>ox=/$jq|4P8P pݒLШ/Lnԃcna5n̊;K!YJaCx9ĂHZ8bGXqr=Fi 0fwVR .Lj HʴY[y^?L`H__RQ\ݢlKw^ƾ4lMe*l"5|bZ#..4%[K޹B^K.-p"Pise;7GjDN?xV[<̭tu\JKچ @-.P'a"'L!U7m?6(v^Z}Gb-9o+&!|cy T#.ݹEu^C>ˉ\G6mCpm)=\ v BA6jEUWy~WS@4Vzi$V` i*Y,WWu8 U3z!6d3fCkc|t^'"")VXL%1*e9xdl`Vf.Ii h,\[RǬ2dS-;}.!l=fuhe֩͘Ԭ{0 hHWF"cgF:iIJ0(.X۠#D ^Ϯ]rT\1<̵ ]!;*qU_:A̩"A4j9?/*DsI]G0 ?^x0ڵvW(PG:ywœrЯȦu7)t8RܘyVL5^X} ӛ@gmWױ0$s!# @<[7Mxum=:(4 x}Xf{w2vx"D3\ FC)gfF}ϰ+&EtwUqR[ uR@e2^o4efTlP3h%3 :"M.~y} {cEIG qhe?Fޮ^z_@bV koVkFIAhT0˛`t~P0^X)$ӱW|z=i5s+[lW1 A?Y'eMM;޶W?;l%Qs96^shW} ε_Pൺ4QWۣUR,#9k^hTk׷]po7R; IG{6dH?Ut" !+)E6 |^yNO@rHh!~[5ew(fAusG*L$:dS%#:)&4H޵Gn$_5x4okHVɌvpӽ)cŨ\L]En:W-JXbKU^}@wf0[Zj&:NTTB,l&܏c͠*_%5>,n `"[]4U8%'wɮu$xkZ:HB?~SVj;~\'cK`q'd; d^ ')qtM")ܑPm`-n}^lހތ>gtmx=!9cɮB+:tmeW#uo.)>lWs,a͔B|'×ڠdnaN>p ރ`3a}}3Z`4LT*Qfy($iLv},kTщ3IKڷ%V+i7nÚjx34/RWA 7571=k4',7#.o2٩+_KbqF,'&oԹ%Խ㚭9GZ14.hϝj_uUn-ݷhh.뼴'F5 V v^tDd~)8TNɊ _QJ^@5:K?2fYDJgԬpw$Lq߳ hZ",&AQ+[W9lk(gIڦZܱ!g[/:kbԋoW.Jr4CBƏti'j_]#aPdw.sg ?vJ{kŽ6w壐! >!R}uġ6lfÔY˞2`|6?C tvNPL2,0] vYR|a;g@'TYA#];2VjZu!&5EsdJWƚHY):cӮ=bI@'O$:PPI5ͻBh <݅BV*!^ Z)?ضƊv<6[hjKF*'wOMe |!i)7׎K]KA`n o*>fhdM L3Wt"hgpHG*P7XyV$G6"TLY䖷tbwjč{r`y1D\aW Rw%~$&_.)UΜ܇Djvc 0 I;p+Z9m1i )34_}VZ b(ink&7R=ɔ)ܸэ.ё0d1$@HF Ơg K[=G(O#E)>1poUvcOk?Mx_;[άbH+7 _K{fdqQQ+ħ-C}.~n\_<5Z~J7L 78pG(m9,>刾WzCGB=7$Rdri#:cp-U:<^Ҏ {]:{/2^a]}/E( ljs5_tB`v:L}Ȫw[(JFRжAК r+M*5!o؟O @0XΔ߅5ߌ+_&x!;L2< Sl0 <䓬Ώh}?WQxɍ%ۏ `0H^M6ےM@"uÚtg!beTߨ j̲h|}nBh\Ι寷$Eʙ@>;lMTQɤJ@Zw2z.J ж'{CF4Щ><^0ɎWr.YS-I tVG*L Xadlz<]kN~GQ4}Z8Hǜ`~\AǸ50f\PEzn\)L9i<WkWSn!56臭L*rmKW ̪61I!QY~F8szOz~|UHo|Gkia70vұ9t*ږ jԜq]'lM )-Ge}K;2wT7|:jl:B̡ۯJgf'A I("bTy2n ܇9Lh<1ȣ5ME FoϮte!"gMR"w+NZ;r2{MH![(ϼAMAIL-fGAh [*mx:l%4OkƎ{ЋgC^ji4ژsHKڿ2Eh%ߺ|J/I50A^JLmsAeB&mG:,-,2}g|~k;V;Z{i*W`E6-#cX^Mv8brඃCP\o3x#qK g>R}7PPǦLJT{&=L^-Ow]`fb6 tz4K}^z6571U0dO}L!MT(6rԖDw O{`M<}DursyZ[C Fo1`iv0If >Zʃv][Ӧ-c;|#;1^oӅLmjYZ%rbh"~]JH/aQ;~d>5iM?}Ծhgu=0e|u#k w>М65OB@W*ʘǫ46dzIB #$WFČ&Q4`ރ |qj$M\73z ? eU-׮C)+@KWd^ւ*w-G'BY:7$- I.p.hEP~}MjYb,Dý, RNW2A޷1X~H^.>qV!!mƫ4)'YYFhw㻦'7N#)^iy@z]BM/!lYW,F_JFR?EvTgE'L7Yfu/BmZ\ Rvg )5~:k \ zm 4l؟3LN6Vm?o喂L>FpҋpIc=ee{k+qWQBy螷Ӳk_B5AI挫"&43sg`9c`:J?4~;{V&q1QS`b ܣA>BعR 'K {,<{z_Fǫ$6|O~#^q0T'k4DZ$rG 6) K֐fs]*CܹK2]|K{̍Luu]\or!̙i7lMYHE5gGƔ}E8`H%R#w7`f}'WQ;a5{rq"Ӥf!qGt{(u eϹ{'V{=7jt2AU ,?s@#z|/xTq<g ڌE8[vSp# >I>$?օ~>.T6S>b#Ƕm nn5p MWi-,;?p7?`j+ҵ )PӛܺAO=5Qnmm7_;#e(4' raG& Tmx_dJDe\mS$[nL]PRE@nG6'P|'&~u /I|)q6VbaY^{m)gٺrPHusp*M%bny?8wղ8֊C2KFN(i",Y*@kP/*כOC.옆){qMؕ!=@zφNi8^~ G$4B%p:l5 _{STF=W/bMN֩)$5]; #)`"3@g^*z&zX\ٹo;|&G# @y9xT{Ö՛NŏDcK#ЁP I} <kUiC9JA;RL!vmUJ" E(>ai@L3UH ӆ= ; 8-Wܐ;f[dA]~pFNn"ȉW 4X:J r.o4 h{g4nNgB*gG alYXZFKMi$3 IW 1_NkpbҶ3R'i0Yˉ *$]: ,6c_cNxr*L^ 8|ZmS׸<`A|Se[EiyݓsS~8Uڑ&֫Wљ4 xOAlv|J̺ BuJ ?Ja.âi`JqrXoO~r9<'aSuu1p)בcX `jƬbsnbrت1,LiTN-$]*es:Dv:/h}Cz%UvM쓝Fo͗LW|1ZbVs]kcr@oWZ۵^ee[%us\ pLsYٲu&_ ;7^nU(Af2(v X`V 0):>"#^O솳](nzzE7DçD5Њ ]I^-&2 "ps(j![]- TI6|Q )k[YҧX KԌ ܍iJ jӐ?5 !X 凍nHѽ4q^4UmvIoqjNK?k#)*-+Ǔ@Ƒ%2ى3|U_mW>4 H"$e+XV2ͽ*~ 9\lQqIѪ c< sgMéG* 3V 9+ţˎ" DݖLm8G CVMdq_]Ӳ$W{f%}]uڰQ4YpT8S'K&$[8w&MjC,#M=r2jGgӶ3GiX/GeQgvįaY<"o R;Ʊ@6zU)Ѣ#thE[6-{י. #c@$[Swg+Q#`0aFP=𜿿0tP2? ?8N`@Y [cn7" Pf%D<^,`D_0rK(,f$0KhDFGT2PPM3_8:&m:tѱY\\\UaVȲ=U`rwܚ]Pm 2(xJFIle * ރka y(I\k~tD8bwbiPfp띢U7r*755AsV¶k3e=Ë? gRh$7`moI@K;`k@w'~e뷓tO)suƑr?H҃8:!mGșPI؝[G}8[ʳ@v--ر2'J9͌+WTȮ􇈆a~3so-ҏLTZ?B z?N?Xb5t Ҽ10&ozOnz8/9^HmJȼ]#7Jv\05E2![xz_f(c#D篫k Jde^4d.?В[&G 9(`)ս> fKj6Zߜ3#TF, &p$ZȻoMέBW J0E:D@"ȐWE^<DSŚHX-G·⿄8mZ .l_u?d{=XUl'X(d(5`%.`t} #-&˗&̙-]fqm O|%޾b.@R1~#m<̋H8}u3b<%adlۋM x]YioM󋲘!Kn˰~]UߢɈ`ӝڛKPʡiBSkDSqύ o38LQ4z Gᦼ0E\5~5:؟ݕ0+#"1#/va`'l >gp-66:3=b'0ϪCCɱu@ĝj8* [ )aKW*>I ۊZUP mWS9+v?a;ά\!6K9qkuoEp1)RK*K~klz^CX݄><ݻ5ޅAWVV:ᙣNtS`U,_XLXz^تh<ɇLGգY0QZۛg(ztOjI3hNTE+p2a9.i)+{c&>D*&7mm+Àk.u7>V$tKI-%'63{ [5SD 駾?wvTUr=$Si`0F' ܹ6=!UѸ'.3 K>5ws 5v<_Q&yA&4íZ nn{RҔ=`HO1ץb|6ߜȻ^@ܘLvd!A!d@j`ϲKhYzA9fOVKJѵr@>T783IRVlhFQR^}*-y4{u-_UI=K4,V$̨(b%> Z\7Y}ȱ +GMb}NBh2}Iӛ%f詙m(W;_287!8dֿdnw czUbh߳ W|VbR{`HL.h/ ߞ%5V! R֊Du)rR~j7uo;}.ULo? G;0]z_f%ѭɃZ֬s?h~C/.WdF&-եUj>VV@h6eގr.Mi_[Y5.t1{]1z+kI Aq}T9jZȊ܀t nfWF4H{ Vk x@9z0%W!1Ppʕ )C1geq›I&+E̵h(%P R-hީ4+ y*o߯^SL7cC HV@6LXZz#O&^~ GC@'czhE&wh韡m^PHq Oj 3 ,wn7g=(.Auy=$R eg'`2S*'QcKB6)Tw?ar |ŽxK.L 7,! ?N $a$; b~/l2#Пq&emS!t}ʺL?a}"FJ;r)["2.}&պdAI?BAH}vԏb.4c2v{[f&k8@z&d8pn24 ;"xď9Z!|\:f%G`kXCxбf$pYs-$j%jۘ " e-Z@zg 0p-+$F+ 0ێ)n<1?f SQW6S`-uӁOC ]_a)= u\а`ɐu/"JZٝQ. yMw{!D̩i CHk%B?YTQ/)gn:4:N9iKKVw'AB oisllRB&x'. }D%rhfPVr c1,]hheT9Йڢq@U4QpZ{+Bc9Y$:=$&ھ_<䆄]si+}Ti*n͎9yNJay"s֣$s*w߭;>H}\Q_:ԡyrź55P&{6`j[ʁ )7REe` $D4 bv h bA1`řT7Ӽ63Um aJ|gjVIsM뵪 D ތ]"kgY"A- |xb{?mP\$k4{lL'͓T%R1}S{G? ٪p~ 5t_T7fy1v=aJt!bG%oD)DzyUc+EQ{Ynzx7x۱J־h~R$cjxsp? ]"$Eرj͊w(:籖=WXe khz!wc̘W$ mW <#ٌ@rquB0VYtv=F!7śA)VƿGĥIN9eŬ؏C.DD\Z5[#+dmIe_gHXF-ͿI<JĎL?tE3!O;W-o2bIERCXZ"lM:{gcU2! tII\#qtCkw?C^i)s mխdwБ>6m9tB@iX*К)2ll] `c드76"ң$x}NWjJ~H02,MāK0gfkG˶:9 b<#VڗΩ['ZI4mVh!7O3+Er_sU  ȑ81-Z1;5šӝY7VNB[' wYin@S@EٲMV#^x }YoбeL7IE g@Y8/.{lϰqI~J^A?0T[c׈< 0'Z'ӣh[y|Ofl^d67GkhZ@~"[} kfc*95 hul~3uo!'6]q%wlwb G2㶼% rQb ͵&0ُ~ {2ybRFOӡ~ǷRO^JnR#‹oD9xK +Y @tS5=(!3N4T kl -Z< iIi^1exp!I"eBm./P'bo$'[)\kT7aMZMo4nCwOhr"իy}L"\n̟߳{c'Vr,T斛Z0.m{6>Jv}˱[;He_a1C0gޒiؿppn17ˌ3Wy,~D3쀒r<-3[2ʪ4a4sd3tuf[]=DoT9 yűySk]BZM[ml8w-N^t6%%74,*Y5)@XR<4=aҁk%6)֮J9^@ i¨37_H";)&hDIN*N0<X[Wk7Z܈kIigli!AcܹW1;h[0D];(f@Qޯ%8I곧XA㜘czu {n t",a4Jl嶺ESY}\ih{DXr2`Uviܫ-*_\h$ʼnnMWcyYȅ`x%jBIaՑaD&mKb߮7'UXDl"0o"|c"=)HJp'&V~m&T$}H8Wjl4I~xX<@!U( S; Pc_ xs!-&ґ8=\\xZ9dVAs+.1No#z"ܐ5;G.:dy9 Jc};֐:+PZ%kTͤVE쀄•E邈W\I<*th) nYɼU3_c}.:MqߙOW>ޏ Λ-5NԲ%6 L=D/U:L/c|)\_\߁qg(,$|V`.=H=%* =^%Brƥ|rw7FՕ_.LPjJ_S.*=4Zg孞]]4aHK߆xaXl5V>Q45VM &`Dݫx n{)a. `Mbyϛwۺcqk1;M\"MvJU ]6a35lvIpJNy"oMu_']&ԡEҵ/a9s =J0v,|It0vW[ _I=+Ҍ -]$!ַLDzZ%2UX`,}<'iUјkEp\<9 !y Md>h%F`g赝qjW[Paf.bVe/\ aXr2]"s{9E&9\\[e@[gR0[W}uxZ'VY/6^gs)盤N\]lRzi/^yAR* Z q:".caq)u.,z_ ʔ{w7- kV(K% = հg+qeb;P?9IVf[* bh ;:.ʧ G#ﳡh盝}'؎\=)<-KHУ"G{ ̑: 8Xi'Iƒv]#̙T@ w`/5ٌT.Ubm\VDvB{}{k][K pfD[C֌b3IZ]t"!mnBM悪Jn$.$hD ux9'L7EˤV5`HvAհζ92.drt ng L/}H_!g,hZP%2;y//dq_!a$UV 8/ W5B!V+HT-cars_3y"v+ sDD(s. *dža FIM0.z<J,_NܚTFtjFeU BŸT,Wlj?=Н3O+O~0BxMf J8|#n|=/HyoF4RؓE QsdpXw{~Y1Iы mQoWLUM ғB ً{o * =(B*ΰ Y8&ôϭ t@zSjj\m^$vB̧՟S$IЫC6g bfDj!jC1 M;ftcmR~8?~~}[Kn}p)7t;劘.4:"gn{RQkA"oIVЮ ]hZNp4*?[AO‡9vqn[}#4֫r%\Yi7"8ac>ͻZCB(BaKzVpSȾ `J4vp@uB v OX {:= bI6=OܣkC? $@$y1yA$qDqeu]5\]0@lab2(>R!tcV8,­!)f<G%*~? 0<(OOL 4^Y?I S!?֨-C@j$"jr?2M> tL(afs; sI{ _d.OS`;nHV1H UF UieNunSr}bD(6AjoGuԾkumMu%D$qdɉ1yp CDFʃggXaJ;4;\j>,ς8rA>|(@;egD⊑'x]zpfHr9$waU]@=;$<{>Bڡd0BY6rݷcFaO}r* ltI*D_ۈ+U\pv' dqĬ;ZW``qOdJ-16}Xm3T6prĖ3u+!Oؤ;TcZ]q=|fm wEK <i$\9H-F*6wHAhSa,lD` NV@ j"@J[>TsN-H(FuGW<؜1.aLB u+${* :NMUI&>_(0hܱAd `%e[I{`=3EolIJT gFo^:=Ϙy5, Q&QA;^0l7IS*je!#N?g^9-17u6_!>/X|kD)E5n$yBxvYGlV@뗝Ww.g*%U&5r} my?̕GpʄOrlo; E|C4H$am%A_ lOQNK+#LPq.ί`PXQ}ݫWc‡? s1t'@ۆΙ|`C!!s{,DpA̓@/i.YaN!x8.-o`$-;We\>1=16"WNV6i1h~_CQ*dS5"sѻSNp΍Z$M'ɇBZmǢĺ^M'w"$K?2+xPgcX^M]~k%Hч0d?p=suXc&}p>_40a0q:y߇ijEM6G~)N+5OnN2瓷b%\پuhCOUioT~*_ApEE2|xDw 3QLd ʭg8pbyQ ;{˫Ƌ=gG]70vlw][Tx`V*"@H_T9x NqଽPT+eK=`hz`= V嵱ޫ 7x^X~/ABg"ң7[ckN,#&3^sa3ˈsi&D)x1Ĵ4m8'Zj)偏Gx D\n_m}Y{u\ z%C. r. ԑtB ,T L]C`_iB,|HΨX|i:҅K&ue0X$;ꆿ8eE[uDuN2fG^u]X9d:S2p;+\$EC Р]]M0مCݱGD@dۥvm#F48Z,55'n+ .% tZ' BJ;4LQv,ՊBM$;}"Sh?] Ih( _1c ~9}֒TzUYlaL=NCtz )rdj=b, gGR#:?A^Cl,'y n 5 z~+X냪bfgi F`O:|$eӘ,5֭ +<*#FFq;0sXvǩLigj)L^ _"l}pe7c0 ~`MJyF#ܢ-Z`\A'03g#y 7Aa`u8J &'5:\9E;H7/`=kު@J޻-_ۍw;Ipljn{2IKlVvqL{%=h aLI8h+2~qGNfXsOn)V8[qÈ6%zpoN/[& bR:@)dbF7#>WV̭|d' ezCt0'_I*Tŭ~9tq"@8& 3 j͘T; 8$D`yg,Tc r6kVlpd]B&-v&eMEJm;1 ip w (a{;[udEFٛveEd'V@ v7?zmudמ{U"֦h_UrJ=xul懾棍G|>DVe w>HSڡ^K)MPk<\(v;]s+ߌU'g%C@72KɒFVPtcվfi޻ $$QFibd}B%F!bAx@9:lokSZs /viBL] A Qu( 뱦e1m C%Y7[W'הqSLWR XCo]+ǿ Y[5.g b\ hfO9j /fn}_Q*o:^φ(=~[ ? i*:K4w\P/fO|*E u E`BQ-]f?IlF'=cR$q+{G1Ȧm҈JHC?2؀>3OU|1a-oLتy4V\K?'KdN u ʅZX7́w]& %}aGĉbD7{P65V!A>!SdBh+9t POuǩK?lQ4)*U𓒩|]il!qښkwv ZjIbKt<)M}b%Rcш:v/:P?>\wl.1? 8 ( ~ KT(B{.rB,]VYSnصꄽ<xpuuDUFǙIwKjxa'nDfq%d.6p9lGv <=N+샂c\G_xU&|g+ '*nmbO07}2{b JP+bDC#(UTe 4>1yj,o]Cۼ!N)qV1VDS;9CAsu{;P7T6D!|yuoh;OrVc>bUNkh7> //P=">@`6aRxĮL4W \Dutsi zx73"`C=2*Ksu.c?ӌ{B7Q+x9Ӝ{"nu_˜B<-i1x\R5-Hdz賅a-LcIONGs2.;hbb=X^񦥴G`Y77vϟN0N&%Q}l6%[4^Ru5 ׶D#sX6Fr4% J|Q 6de L~Z#*s-/XGf0>Ղ!_kfRMUOW_M+g ?_P x|I4Λ?( ƒ0( Z+]@_UQ;iO][R{ X z{g?A-wt2'W,$CN0ZI0-΢ƎVK?Պ9hu P]6Xvv ܂JG2X#+m\1[DGi?yPA AySZ ]՚)n l yͥIp}65 BuxnW7 %޲u='9%eayIV$5%{ .'rh5+K#?e5t`PD(FOq11FLjUL]мZ*ZO-Z:]K)Q:o~XğZD4$#AB: #BJ*{wk5t$dĹE*.jS8qR"u |Q_]M ,Yn>y#qZKIo~vV--76'c rV=,N8{1?r%$P;u8HJ@4̊ͨ(3ܚ!2յlhzޭ=ރ\jUt[jNWÀJZؿ,SraP@(_l*TsP ;čSrv=AeESxUl,BW>t`wR.\5>XW9{>\EXq?]ZL,s{\Roisڿr5|'JENzቮ+\[k@b,dADkVzBi[=rt(RªGIt|?ddJ2]sEii(}=rwkW ietpWv:e1ܯݜ3!P`!` I?1B֜5V{sy),ʨ}fq|jfW4kL5+pFFύ8A:_BWa<t*!uӊJ 6YɅu_#GbW߾Wν#g-2-|K>؛ _0悞0wۅK놊h\{^i=80sx? tsĂɀJϩJ=Z0 ڂ4@{i&fկ@rSx,:#W 0IP}d78uRZ"<+.YEjwX=rTz%M;5diy@2 z7wn`by-w؄hSOS?ؙ !Xg>堽s^hIQ)ng̅(("7ZkGфf\9ጰ?$Baʰ7}dk{ fk #,uۭ{Ij+4.ugR^m6}FܦSes wCpB 7SXy%j.1"SX뭒8G0@kx+Ҍ*mn˱WMc0@{q̿ S#߸"L|l W0ҋ6LԖ5haB6-AVJN6:t/X`rs:;ӂNf2ȟ<ɧF{v$ )r/ȶ9V2'|ď/K g'̅I+_yL.<i>4]"9,,)2u|LcY<}^m[&†oIYW&H [1o Qy-J4iṷs6 F!9 ~bE؛0O T.[;E \yma.RRkM#J aۏ/F;F>Nmߚ<M;t_:-l#m9AIMKYpʛF*3`Li@QMFON~vFA[V1<1nEVaKSфHoЈ^%U-7O~_Ө ,M·3ۨ-l<^o @]uizu0)>[?LVqqs^56Oh-*\[)' I.DчN?v{/Н ]79Efu}GsuP9&W삆uJw:Snݞ@Jv]p-ZP wMz\:_-ãyz3ُ#3"Q@(LX䗶뀚3z4TTh%[wƴ޸ڜ|q}B(! E3;PS6 g0Ә B(x]=+˓/>bA%wm-MDM"E"W&p1iX,(O8 PV$x(w"+ U=¼/qĦ82znt?@2#mH?\҆,)#{x#ؠƖ(/< VZKVId|^\FBqUpo*S@gT&074W3mbtqIhkחnAU?_MKSdѐxse0oEvMZ5x }~frm: us-BS ^ܑW /> Lo W.DNMG JFdo瑭Qũ^B2AB?xS~rSI\}t }ܺ)mLtD :ʣԼM((nyz a;P6>}ۜ}j>^Ka zA|U-S/%_?غlD94yCQW$+v)J@1%~ciD.սnp+hBJNj)*hXEA,20W^SJIQzvݠ~xТk6UBlV^^q\ynX0KRaϟm1MgKBRqZ}zA?Si߂>sSyAW6ǤsU'?l}~&H+˒/xyc J M#&f%qs] M M}?2(ak+Qz01{ qbosmn!?H|cLs*S3ԧlWKA,@HZRHo{ve4;3|VHÃ獆^\מH&\R_Niƨ5Ʊю忆bxW )#/Dor_Uq6:!wdi(̗Z}cu/'4EY Qp~Pخԅo؅<4@4Riv`1*2^Slw+c-V4h^^70Jɏ|Mk ZyTZ8-kû!oE85c]cE=|FO޳W)|䦋 kC'2A_w XMWUO @=KP͍d+rK3 3Vb҅g, my:QXe.LcYE4qݓ'ݹ.hwx~=wRbŋU+eYVeNc/;p+nCحP\Y-* @S 'u yAK]{,ߡh^~H^M,fy0]zn~,m'oems{ƮQt&Geԯ˜ EGu@a++!-#J$ᮔ"K9nzŧ\[Ѹ'8R5`#* /0/MJWYU47Xi%ޙUD2N6'/~DݵPB=XS\\Vs`uKi4g*?u)HV"8m!X##l`<(zrc{Up`WP@SF?胙|f"Cqʕsd!W"GXvv@4{l=7 MiaKpHH}=OH_,>z3WqPr|3g]]|IXߓd~Ya)jƏK+3#ZZxT.@¾_גt>Й GI^j)up*}`[w3C&Ȕ:I&ad3{p]1(Y/&Ray~pC1 F2j# 8 vJagZ^Bħ\B5Ư6ong\; ؚ+x)9Fη_)7h=? O{SE%<-Xkc"-{)B=gJtpd۪:v6봭!_Y!MLK;łecwQi F?&sVw'T\p,$GʳE>90`=\`zAXh;>ѮbMt]KB۰H2!^LJ XDdN-9տ+꟤C*W6=Vi\枕DLٷ^#"IȬg8ǮQC.r3 ;xÀlI:CDTTXx ݊q7Ċx9%MeqzXkc?y?(|oBA1 Ǽu4 P)#B "_c?M 'D1!]IS&\uՊ,rr, ZH{càܮx<,8ߩ ~Vja4njY*[:͡4xt$-U5)u 2,;,篂/e1fƬhVratJ۠c'171C˜k;QW RT'7J*ͤ P#CF'564+|(X.q[,/9rGm)jjp^]GmƔd[RubJhEO*IcO{-7acu ~+Kupaݳ|Jt%=OXf; qс;"-g C;TVzeKz0wٖKoD41?hsoj”#4ʖدhŤKA\V*4|Tס; yueD4BaD]nvҔ4b-sG DG+;%貵1GI(mw!2.t 86$-5Y]>MZ4Ѯ\5p؝LX-T>)m,i;7CE|` hA?qNe@IBcainƫ~+['*:]:#xD]t_QK\+Z09yAkp~o)7Ci40p5Din ]곫Ձ* ZQ ̼_w`̂ޏ)Hf| ni̾x2l0\ ᄫ=&Vo8N)6-nŹ|9 Vpx/ɧ*}$^aCe&. 6Za#k'ːzz)vDU ҬWdUY[w*"*7Д7sBA 0U@djO'#W?2Ȟ: a$9r$!L)`$@2R{zM Of?\h֜bw0_oޤWnrJ8-+sXb<=RXJf8o|jGIP-ԋ"䚻bSM~vb+Z'QKV۽ djIZ'Lfh n|G)@"s}NĻIv{h o5xsFV7,)A KV~LZJ/]hh+B!͸H:Q7~NMceDsq>LP:FB%D_LͰ@,(*$'y2fC?¦W^R=lCkocּNڒ$gw,ae)x%B_U>O ep1qS7cD$ֵЛ^?B3XkK, -x:V?AqMNL/Uw  9ЉAq5:y ȩ+d7"ю82Ӂ:+x7]$UG!uC5P L5Hm6mpq$?9Q+֥TȸЗ.8 KXu^yVUk{+?iK8qyݕ+k(Ev]>\I2 <4*A'&wemXYdOxMQNj)֬5aZĥe'E%N#uGi?Up{ӅC4 فRVj!c4~@raO;.G6p1eo]C8 nmnwdF6t(:L"F{oȎXK8 ,Nw>>ܡttj٨Kw\oC2UT}\sLuypLyM E=7GcSɨD7fEd:op/.ݒ 7M/IJJJ {SJiG0;o=Ɛp'S./H ;nM,-i׏c(ĶWNЉ;=#˛v[eOXZi5a\6ڻ| reK 9 :]Y:+ KA.*iQZ7Ӷ)FjCoO{۪%^~\9gqPT:S𼷿h0*RK船e?+@gO3R4*c Bf޿$SOj}%hMxr?rMXg >2\'ƲHWGFk-ؙ>YNp٫LUEo f8lUz^AJkUgju@)~Z\ Q p$q0tM!I[N6) "i.$nAˑ EP't4_ꌌVxA϶Mh$ZF&'C7:ar6xO9 u,c Y%.Ƭu]n] `X@~?^)9#ݗ!7OG̛iQ)J3"o%hh[GxznQ WLXY뎁wf׫:](Ywn3'lXliKx1\ iI..(*58[6%>Ho@eVר"kio}99{˙ uOtˆ9V@1E9W9dψkp^@[/XmS67cr//{*zm6?Һ6ߞ~w,bX`f1E?蓰bzƢVR o9~l!,)htnF,MpIFg 24Z ZihD|11-Y觩iFwA{6=qC\fި$ -eބ^r ^U0l] -\5_ۡ1$ BQ$J0L+׻|!)|E&Nƚ_2zu &7Z|W"4J햍cKz!zl7hD,?77[x:'-g IiTPTyփou)mr~؊c5C{80PP#OE,+w$6.*km$)sFh շN} mB!0-elD3vf2+ [zAJYk ,;ѕ3J`EpkFr54+ODgp߿C`@ԑp+}=(+M&ڵjqG9?MsL&7^5cu =ĕS1RnM92wr]Q -6H4Bp]~v)T"ʴ& )?Lro,H4NB޳`0hN!J#E(LU/b[M Lr7^BԜ]7N΅[^*7.ro0 IBϧY=WEJNԟb0ro}J =?uۺ7/͈ḱAlK/t< \z93H?BDXfҿYWaj$I;tOډ )TY[bʃBO] `pK_g'rρd SeArJfqhN JҺmw;V8v(~xfO f}ٱRP{?:l׉q1No4fz?{5:}@;6 )O #gvF.u7iYK-y1Ce/HV≭Qzl<Ej[lU)u~xܜDz0=Ni7A$e:n S?0HLA%%[E:3J ybb /2dXw*hRyEYჸ|b WIK̝mwi _D"XW6Y3 Erw?LfH%moY~B8(mV]y$~ʣGɘ|lc$NǷDa94 5Z^ _f\.uwo3~k9 zD؉x3`j?2|SΘ"qt&]RfKwdhm >i֑gfv+'!Rb0ux{#,❓t"f(5 g!C'?5_tx G=ZlũAY~o!Р6웾WI](hVQrfm6Pfz4齉@~gT5(qeuӱ >A(3jt~_=DqvP(4d#֊9l+bU @j,O? |Yh5 'zGW&zDoXroS_o IK.OND\i=6C@4ЛiU>LѸm fI܉'SW@l(B+fܚ5~lD<7꺯U(n$o w|i=(3cT|-68FXYs)^nw1ȟӱwS%[gq':.hnɠuv 4y  mbC |1 fhb= YOxQ:#:?u0M6q:ZOp0e|:i7ޝ,6`V~zCWI($hqjI{;yd0Lg,pA- sKl&&30y\NF%q ~2%O$|M33﷥EXꖜ2OT׆p~o6hxC~ƭNJ-e0Cӕ$'tnܱo"m^eHz6r/78 HAIdHE28ߜڸO36c nCii]] ͗vsjFlI'\tbx +aeW[NGZn\7f4&Ѧ V8EVLyƈ$SJ~lS# {$9ǎwqΉ6sARYu 3|lֽEa[--'lσo h)p'}]$#\6y-y3P'w1e'LIgzW,H>˹9S3P~ 9{=)k9DcM<-1lax #QsdީQ'M7{su1D  jf frXUxCQp&MDčBYп6`ؐE3GEδ}QR'uVR26>U~T}}C:Rs8A+?gZ<{KsxRvL( GAD*>E^=W֗@2qp5kHґ@Zcj$l$w6|4.`!NɅ`$wEy_~tV&'>i3~7RY&D?sdv!C;Ttt.y/,c;žvw%jL>{-q~ r]=*3!T ugUɧ *!Q%^x X Qj"Y+< Rl?w#MnDmڞ"i$YovciNwHKGP[0mc5 @t"6/7Wp i3J-*Aҹ_ǡ FWg 2  )~7VRxA/"oEz!Ud@ޱԁ)rKUU!A3>UAlbBܱͷD1YڢIZ[!8\saT(D/=S?|t(*%LLE3 (T)#DS  Z#|f5޵藜|^ TJCcWrcn ÊCRHb2k]E~"GiliʝK+Lg28[_(=:#^8ˈжm2ڗr~?iyxT @۟hh9@-1dxb̵(3<6EK=h'v|(?KMedʼA" iVtaଦ{{c:'4Pj7 creؼ"$19yqQ,ܘybyA9" M!@Doxط~ɢȈ˳7&5`:i)h9a2sGPJ7?Ee5_?UŶ/HcԠ 0Z%wj; ȼ$yT$:z|]s+wr7ǂgƂ2с=R ۣ{2"P&%1 Xl69,>&' ujJ˻rsW8rTzĀ6KsŧFjMnwU&Z3gA(pZ{rwsoqg#24꺈E}-5M1 ͙%#nG/<<3X6L(<<ۮ89h-3ı{c.l1Q s Goz˛ 6$4*η(/iXp|H7OM/ yJf](/q2 +aи_I.Q H@BSω/\s0Rӟ<8: Y3 W2,lNHY ZE$᯺r|sn6T2(Z<%C_olyC-&!qƐi+d>쑔^^(ֱ|hI`h[ttZ]LyY.@gPʵ ЅD#;-?t v3 |$YӨmVa&Q<=jrCEAA 6BY HCـ_R>0C+{m-O -`7o0Wv'{k(#:vb UK>Tk4D=]Fm,- IJ'j pNM ;sEN_/(fOs7>杻1Umbm/tq}iTz_r?˝rWWw3a 6BM*+vGVF$urSv<"x@~4&m M(+ǯpAOʂuIE 3i4Tۆ&ma[Tc߮ Hϴg6bD2;V <>a\/]p*O.yc[y"J4 Gs% ھʤ$obZpLlr`!Ֆ蠆 GtnGh=acqn_-ǛܼEcmY'IkUB(CF_Sͩn= ,+S`\\"q#
Ok,.U=htc*!-"4/""|:A$'-H#&Xf]ӝ[_i?MbmPbTnSYDC:,MkYN*M Qwa-I3-d J1Z#_ m=bHHA YM45oFӿc!g](o!A WB:EAaAUg-wweűt̽f͛)-\𫑜>.[Fz{>+# -,m̠oom,K7ݼ'`lāxFujT nf?w.:R9/:wVGnۖqQ.o1D8fwYZ6к{ІN-1t `Th %-FИ%%*#_L_<fvދݻSe7m@~x⼽iy6vFUFu4i< ! kԸ{?lT4~/XKS;g4&%6b*'t^x*BjY-ɬSZ\(&e%  B}DŽKb"\>~1{s`t0z-'@K}h{*K$WDN -e:/\Ԏj"7^(Q$бaXt70oi !M &+7 XP7i+RR#U 3oy&wZ`78%0ϏZ(5R" 98Ĉkq&eѤh}eER/OY-a_XӾ\hB׬HZQ㞂Udz7kY|aMY?sY-`г)ksXfe4 'N.17[c(`N3,i]<ݽ G#{"BȻ;lv]uͶuc/JY3(T1isxm_O}PLXՊ0+^-KJIhr{'!-ang *aBJ?bZq5֍?@uWƻW=b6`mĂK2')B#]VI/p%jɻ"UFAu^5obϤEIL"``a3L#}KF<-=eo;&mnJ]mulH*,!ʌZ$Y(ɚ 2.ZN=ZI=VZ\ط{Ƒ cz(8?Z ;J%0̃HV.U۷S৒_1i8LAުh) )Iꈷ$O8Rq$um[~ưa(:OVpHOB^2:i3.V":MƗ-ŃŶDG5mfx0G,;;ԫK$_\bX' ԛ^6mӽzT;]e_f&xb8wXRDFY-{E& gi2 q0)^@mΊb[UGuYiwPŏYв]e[@Pz"AN81U;̫n-n38%[ZP/Wn h-tQ+VSgIӜsMWoJȓWz{eCPd[:)q͗{@ۭr`6Hف2&K[TVx9F^JbW#AY?_ybWiJbptAj 񬳗CCyؽ% s, t{* ?h9鉳4 [7]еg% Em"N)LDA ,'a "ߦMxyȲN3%}g-S}"pVE"%B 7xF7V$h0tPfu06W2A`qt2bvzY뫑#޵[<%漛f(MdfF#i&U4:hdج^'v`jxs&xjH"7fJXنSYZW#wy(Uڭxz;{ !Rw)LDlߙk[ K܁E ETFl^0"٩RJ%Zs̳6O.v:rC_ ZҀے1=j]߉!LJdBzhKYXIq<zyfw4C\ҏ;]۴(hcW _ucƒaƟRV^&,aL/ H½A ;xV?a@k;Ƞ'2nDrtU7xʩNv%HR\Qt2mKN۟Gy3 dBW(a9=qnW/~ Ǚ 0}=JѫEΧf鳅Kg901 8u ȵ`,?^to0t ~z1=}dXM04^:>寣rY#XJ _^j5^A+o%F5=}D^JS] 0P.,Ӕ3_$mKhBG=*lMYN) wwǮRp0KNh7lw}_tSvݠ[ _! 6T#i;aQrE 1A̎諔7nS6-޵.q''—ɻ &Ι~M[t2g xDIR[FGY;4$gXL u%ϋG"c]bq_Xm6O>o(%MI]A+S!Et-Z!H7oo~L. X7dN:v@[fW79{,QPw$Kkvii.vwz"r%+63&ZXltmg'1"9WpβN0}Yca%S&Ni%B0ޝ9b~;"H8IAеF=lŸ;]D<JM07Z:IL dChpL)B]atzb  ,ј.sg(fp/O [r ɢ?;ߎ)/NI4>g6 YS~d"cىw뼐-Gu1'C,>uU7MDi~rm\;B1ti7:ng;pywiHJתlwX0ɚ?gX!VQɥV/+: G{5ŕd<-ZX!Dy_՛3 >cLx$+ߥj\>CYy^ \f5e+i;RmCH)F[k 󧾬%GZGrh}$-!߉^ߝh2p{GMt9cosV 9WsNQQt͈n6 9"J>V j35D}۠w.%=hs*lǤywQèCwQdG'#h!\ނ/&r:ᙹJxr)=?YC Wr djJ~}1M$m)lُ ^ ܒz|զD ? GV Av8յc3٢zV5zՈK b*[oU)gN(~Yً*c'R-gCzVhUK&;u$`f)ʵ*E4z)qaݣǵ/Ϫ;bʎ-x dڻI7^̈́R!]J>D4GC\#OIsAbuENNLt-ߠ6@tT;e,g9hw(=>4+UV4l#v~~rҜ$~nڎ6.AoTYKmBW\yTsXxy9e۠4ZaΔ7탭 YLtc oGWZUq}_ݫ6?)T$3AjI E2psIϑOuTc<ޏJD7xT/WT{{TU0Xg쪹F =,"f1qbK wLM[_{ G?)"<d:&#Dv:^8aV$ FWA2H6HAG uRd5yDV-ştoXHc o}/$N]!(dG[4[('S Fѵu+ՙ(U7I0Z26[2~X1K87 64d|Ǵw4/8J-$(H o@IBh53\(LK&+wz~'20qE רGg3v #x&lI_۲=b&CbvQ:к#bD)5 X%!mBrQ-Osݭ hkDCB= :$>#瞽<.C*Iʦ:ƯFa+ܸ TbHRcHL˻C>.\P0dF{U5<&pY(ca8b_"dlzR#YLxx I/i4 T:>)x?>!Ct'bUxRg(Jԙ¢M@"=x[].5ZP䋨6j HjqBZ bhBEeU~`oL}5++b{{dwG>ޠ!pvKp&jor;Al#'t_xDW-%@8-kYϰpT0KLwaeTT4>_M+7)X9|5 ?FHh ɦ_}6<-E ĀuѶQ_c6b0*  i. <$A,ȫp: *A]N){lg?Âg2c_ig7?Oo9F6Z/ҙ[Rdd;UM/ш%-TW^s093bf~ ,`E-lFڛ} s%~$/4TLʰ6Ւp/9vћĩ&~ p)D[lۑ"yYv G5)Ue0d3y"[p)Sʲ-PPk|UrYhd`X CbY fl33h7A`Eѓ3eJ:[U~GѥiC539٩1Hmi}sX2&@Vp5邲d^4 _Ab @KجwH7Mb-[p9Z+e;3 "*5U[Mg ҅odA0F塠 \ w ҞT*,^:s,U?v!ZgMލbvS˿G>rH˿Y%&Fb@+~V_ǍaqI#ũ"PZAQXN֛R9 z|<mf\7.K֧vʢFm,OO9|іL-^sE;WCmo6VtN.^,O@n4مiZ,kzdyHQܑWvیO[ QM*_#8>_};5 U+/wM f/<(!# mGM'M4Aj(,i!*~~T!J3 ~1}֯3'v+LqjIxVG9;#/6+[Ӷ)1UTS0;ќJ|Y iWOA'}\9e,^bFXL"C\-DS$n%7m]g:EknW$%bG7p[Sq'JR5F,l{Bq1 A?y٦+Zi}L Z>R1ejd7zsbsrl.SRT%6ڳ 5*6p%' &g>\Jo 1[9-3L,Wá'w+\]6͌L$8H^tϲ,Ɋ|P籡KІNvdnPߓԈ:y!9e#Ɖ:OwVb0Cl|L)a[6x"9Y) qP53%yF:Ȳâvڸx&WV ATXYBeP+ ? su^fC_oPf@6$x_.-Ywk²@uES4a6c"$8'EBGcu\ήj\owq `_p-2O'U+" e It2X֔r :C5O|<4J`%4)I޾ێ\ rڰ~fp!o=>!9^ ^g/'9*ElWj_&@ۦsB%7]۪1{}@LkpDf_CӓMU, sF;S07 3#FBnGvV)3x-Ϩ̰&i=FHl{%x&3.Q˺Q):.fsԝepWHΆ\tq 4!SKj%0Q!*ZmU|kpw`^+Hw$iO_nN;v\bY*6 +wn;O\ZiƟpHx-Ɉo\+8b́*ok&3eoJ"+/…/RN=b!Q_mka~IhA$ڟ?Jt-9I nF|AFj ړu8B/NWf]GP(2j%) yYèj9Ӛ.L͹ZB?}HF*^|"R0GYI Pv@ѣPg)ꄡ׫0o&t-HN">_tX )>< EHG|6UiiPj:),Fϼ3)U#Kh+pxxv◄phvA.[+tɜ~?R6>1 lP6Sj<迕ИG!}o]h-RMuЕLh<\fôDKh R}jGQ x}͔oU2VDΧ\̧zdю2?'$v ˂2aŌڒǩ!֙ߋ=y^יBPCpA8*? BDw֒åM롔>7\biń,Զ8([ |寡 ې& d3uJ#}x ~zl/ڤlyNOxj,A쭦BgcW|Z8{n^_:2|>m<>l,]s#s',.qhf$'.d  f*Ãx=el6w3Ѳ8-!v_Ta ]kp'lyGRIJ10Nڱ@&&e!(Aeyg_$1'9/ dWr&[ZCM 5͓?~ٛx¬G~͓E ](Q1qÒ//>v$^2hq8Nco[9k@|UH*/VTxeۼZ-j1gN8U[zC}{t;Ty$ tOXXTdQ`'}88 ֹ̀Ţ5ӿmGq!XS%ي )18 aL=Fu,7 oҡo l{3XM0øDn>fiCu;(:KґXhqP5cҗ>{cMQUEĨ% K`-J@h&zijP)"9NVkUIڒGlLK0Y"g*eh{O0/D~V("dOp,y?䴇/b\bͥe=7 C3ÁXkHLyb&;J+(9P̐Jx/Ze>`*sڼj+u*PDrsvP#QҌ\: WP*C\yٖHEωm/M&.>}rM1mNӐ14KuNۜ^>l-H~/1}\kG]ht,( (ѝxo? ŏ:unž pT6liEmuIڥJMu(X%L|m) @$-{DxSe<6(c,ʨN,l]ZPlI#^PcZMfPf}9?`T%9 ҍ7i_My9Ђ&+r7.71 {ЗZ >Ȭg«P f BýdA;IGB((jkN XߍFPsL `ICz `HodzGFR;Crz,Q]`f]KJwǥYƉtOLoT]v^"sVO|3-M84Y`L'F+k ôOFJbwR1=irj)g<!I}] A __;_,h 2E&5Eȷal‹z,>,O.w<AnFn2c)aoC4%JJ^?倊|kKE,yLmԞvaRMB@9?G{ȣ}WvWUҜXJWc熦s CC:RHxzQ"ZC$N\mȼiQe*vوh+Doy=$P8i-R /gI$Ȱ6S[C zlMs>sCs a|"k=@2/5p0D -N0Cs\sW A$I\4y%}cKyTv^)iS$v&emq? yX\|ibub+0Do$ʿ$=PVFxE^D u/uWL HĄ6nѐ}/\HZ`E9]ڂYK2]څ^kRO)aZtu_%Xf`q[}L"]6)Һˊ-!M/TRhJ6W+2Up t݂T6  PֺQ;S[o2c2ޱ珤!TBlX٭W&'͉ Ov6dS{q0#K;jyXm]BJzc`(ua4a72YMm+d~JsU'oH*ƇEkHکOTXL#`0mfu=--dž&| FRyn[TEcAKR3oY*JNhlƠ1`dZ2`STi2ɀlsKf)os4toMy+\#uU.k%Ru?pXI!QPS9FXڬVrp' پ ietd]N%N꒪ٺ. Dx?҄u ݕ`*B*$e`dޫt(e?cm"?)&CĖsp`brG!_ۥ?9Do|(h3V{Rs1`n! &3ZKt~a #ϩ6ms-Z;ƶ heui/|v$?-S(ܚ}RT E,7{=j,TxiqNHkĸ8%"iR $xjSk%H[]5ZL`7?^d!<І[l(}d~n㈜d.K\riU#֝QA|<ÙybP74p!oxe}jg""[У4S+Cny2w&ya,29V M"׮v@J_"5!$r,]X3p&l`>z&.q h̊D A,Rf4̮i9xh21*R[=Ǡ5mlV-(&vzF"61<4s7Q ϺR܍ 8}tfpISFoQG P掶єI- 'i&D%]\?&1RjܥP[buvryhP A0v.sչlh3`eb!4 ;.X/yy*"k]r PL58A8Uȅ)Cz3{c$8V|xil0׫.뺑Y+Z%-ӺRGc6RRbQ¡ @t_0Ak9N vƮ푾LD#pA۵,WaQ=e(2EBcۻKR[@~O"B(ت:gXSI* (?(pLk5-Dч@?n2xP/p0c)0s_A8e/L W&ʕ*H 2$&6Yf"W.a4 1d6B6,3jyP,\Omط,%T1%/C:Lx ;=O*!Փ_,}&$x́4L}6p}Dι%w]ޥSb7? qB+\#4[mPwfoؽV?Vj;vY6M4+o S79ܐF50Zvp.hJwtx!F㙭̹DcիR gůW ̊9~p^ <𯺥CF|']L1l-(DT˜yE:LUrY.Y=CŸX3880#yA',E@eG9UrS%zҪp<w&wwH5csD`lXqD4ޯESlHp:ԁspDYY T" H<-uU ?j]K(npn&F`q3] wvRGn0h,sP%9ɞ|2-[|2 %]쟈7cݮٴ>4ʚOYt(,00g~R.9YKZJ=5-X3W&p>*'0 c%m=9Y]&9/[n %лdI坖RA7{9<\GC4 o } Vڠ4|pP mЬ2r?mؗc_",vϨ53z,)Tja4ʥ@1$ԩK#3 xX1G3HښM|L8abRNV,Hncn{o5f/xLOVbxsRi8;%Yʁ737^j.uMneY\PXSQr0y( 0 tlSv.^߼sI%vN`%w}:狾Nk ɞ~ Ո fۑM^ d@t<o <3R!9Rȡ*~OfeK6=Nb =&6N?9 GFj9aӮ0r=x؁yY;#?Y"0=pH ^H.* ݶ>C >Kh_{kux،qWLW61wh-1Zü"ʧ³Hp(Q8gryU=ОNP6'G$">Rt)J#`{s09#`Ύ e\MYh/Z̲ > ֥Bf1r VϞ֯aw]mWEHNy JJePV>2u#fŇFHFɗِzJqqu*/f9hQA4 f^aG"fe}x`EYI- nMd{TQǿ0ɓ[- Arjg@~D١f;Xgy-ƱӮ-J}T焏 L= /\ipvш(ۄ,C#jHSzU ƮչٹA^PPۏhGCt(q1ґ'{o5)~p]6 [dWg8+D`'W\Y-R% NE[KL+:یh+se½[·+ veKO5~4𱘨FL+Ѫ6mKgr:nFlHs= [8,4Bݺ5Z\jcK:ruONXta!ǬĶAUHj3m,,q! eXW-hk%$kYko͎9*6z߅+l[f"/j*ȰN6 @cUl-{rʫpF=AG#)xЉ9u,vݥ*XX<,^X>`rJM+m\M]|Q)q5fi[T:8j)QIJ^֘3pb0%E*)MfNM w(HC[lsŕ50Yj+&RNJSH |;,w ^K11tpJE@3x|eȶk+pB=)`Ck9=芆^S?{Yh ?&_L x6Uw&w+xuںƋۙFY')rQ)}_j@~%9W|?kRYn(ai5|)L}2>*-\ G9Jf}?̦Qh^hmD.`]j4KTGeX Ɓ{|fmDdö3yU^xw[/A!ܾ?ZGƽ$O"E&U{I_TaLĜm{e4euAXp0_  n{ưtDz6Z]D+ʺii0"QW[#벞6Exޒt⾔`W5;۽"ͬ2[i:s ޚkݽ8ĭW]sT~-}+]!hݚ(:VQDRnmޮn/ DR.53'ӥ(X1DD#Md^Z~6R t 9l%jYSDqkf0Y 6C Mf)ym4 VU2䯀x+ASu~o岛ZduݽdmU`h ,C)LԬIoܻ x_+#R*(Ji 7j,$8G [9Pm$Ԧ_) cr-ezz߫rή~MV S%~YMSUiج |#^IS7T0暗 -"0ȟ6Bsy{\;t(Ab.]zif #L^ļQ k䳱쮢SHZ5YKP tEkw&1?,~.E 9VSM{ *oRp)il9έX/fDZ kD^)RGU],_@~i@n R6Kqinځ 8V)ϧfiK#@Cn휪V~bVdI\<Eheɏꛍ{k[c 0r$F1$Y,MPhc2l-2\x5%1;a̩pj!["ŗ*a똕{FݏL0wu;Dޠ6$Eڸи.zz#֌~F;;/ =JsRg JrgOQ2;ޗ`מI"z,q,^tRSkj@P^V-R3ĸ? $!׳wx& d楀70I\0bzp3w֡^>c~g5LmB3T˱!1-U^zo tSe߁ C MVCq (q^M%BxƄmtu~Ja0JZ]^ʃof|f}#4m&@)\p򳐍o}gUaƒPvPۊWoDOo-6{@×y,,e:?Ń>x$l vD55*O$`urbFV[asVO"!(t-3VC;x( h -'s6K!og4Ô4ƠbFx͉ D ;*uP/f m xH}5̝?!_rxUڑw|D[̳lf, l Ћ?@*3L)L9syMq9$L#〃q&״F_5+5q[BbeEZ,Nzqi/%R!#`Tq=`6]K?#8M/Ԍ SIEMZ+p cH:6UӂOacF Ý[+l ]1 GP_.rlM'b}>љƐۣ,XSe2s/y 7u]][Z{^PBZ\Dd1з)LpSWLPycfGU朕,m.$ ^0dh9hC]2h6d7\ӎltKWfےGe2CӀs#*MhfZU"VpPomFizMI4歇BvS0X>i9g}4=J%'HեTZL|MZ{sR(ȦnIm#zbĆ;=inN q?j[BrJoP&]'!4K zgKjPN]@`k(i+p%XAK{ m0"nMSw=궬_y#ӈVs$?Z$t_`L tu|]E`["Rp;P?tcQ,y4Mq91Oed<8QFw5So'Xn߭ae/`F% ~Nǂ0 yأ:D3~K ~TIw msͥU<O6So7(7\Ҏ*bN*Y&0ߍ^qõfگMۅH-"!2V:}By AC6yG 7`C\(_RWUсƨkUnL7 hH/~GY iID7`6ްPvɧ{GuJpxьN96ۡ!Y7O G  : tj*bҵjqf IƶAJ7WάY?`䨔!K{D%TBw3'>=KQm05"*SD|hlJSiB*5Nh-@FRP$b YS۟MNzڢ7a+:²x4I6IY "SA;J,Ki3%+ys7@+k<DZݥ`BL* iP,R'!: n^9`k͞4"^\cD}8]92_D"xvY XMTH2݃UoDgsP,C A67euHl:q DqpNCsVK f}6$a1)e:qs?% x¾_Q/KQǬmL8GȻ%ܮ2MȇZMOC\jzct>0] 6uD3rUD^C~ꥼ _X$xyE8>[)/d /թQ;@?7q.o.oĚ<DŽDr1?%y;:J2ɾ]P46#ش/SPtD<'X9z^0/6cֆ$b$R i9jS~ ]A)G{"FGO/BV7z^pPy߁RPPt9p G|Dw9Zʽ|UG&RL"hO"VUܨ?GZ3*]9YcO%v/"^prK< *Gu+f|rnQ?]~39݄o]vKXx0K4{4˃2{upd~jT_9YSGAw\>Y ;DFz1;9O$^.AᎺQ[,A~,-%8`!}Ӿm۝ME4!3ej{F0%FiXj(6C 0Y"WaQ ?sy\RͤUVQoM$?1-rHeQK&KLG/Bi,#"??¶MTxMѼ>c$}k#OЄܼSE9iQRtд_ZMğT΋70C@n#*J9vE#,)~Z(z)^ïЉ16ht./&Kɫoa)`Cѭ'PH̉|'#M.1[-NrĔT4>f'Z)0:h ֻDH./!˸x םFk>^NPPF¼B岰,@OkF&ɤ;9kDxE^'5ǩM ቤǑI@l7-@u`])ۋR >DLPyY$so FD=2ݙ4 p:&>"W9ߑEtP<k퇪jʰ*X>b*,a]Y{xTG'~8Q$/_-Q6x.ՈR;dpW{Dm~MQd*fT^0ܹqUfߢOf0+]P$qU;ِ$mAT= KvŨ@^XNn] A`uwGJ),]r!#+M$3+h Kk ϴP$I! gIfG8`W~/3U~ڰ}g l${ %X?!vOh[ٝz~A3wT76aDְ=^ 8m3}k;Wzf[%r\[>4Zf=/sj&$QJ?q**a@R%ԳŤq˔zOP ?BIn,55sBd$R2b o[X5 ֎A& bԥ\KJH-$S#Mg{&SLmlB!5kKZ*Q{fwN0xz}lIi@@}eȚ|g>ֽRM_- [kF]ww4SqY(/vҥ .H9tuɉ'h&<%eɾbMZ )&Ro%! Y -)LMKY= oPP= sԑ- BcҠG7-ŕ.by r$ì蚖L ҧU:{ŀ++b$?{kX$ƲtY$s"e} m n>Lg')#(ˊ_)0)/C , aldk]K )EqHq`?NރoK ` [l[E$rf, Yg ʴۡR׎4,cAxK}F+jc.L'_=Z#Ja3%Pbnh,}WL?sVmAw˙g(ՎZ m/(ؼN>ޘЁ Sxt k윌͊L`/}l]5pS5-9:|C,?I_сk rADFOƝNOOXYWZN*EG{0xb ##FW D9c^5 "MD g$I%IgП eXDu^G[8s0S6Xg'V@sV8٬lU'a1T2G;G ,A _#w [PNتV=- 73#s8nIm(ƴKÃo,1%DjؾW֬]eqfϮ+ .W\Qf{Аs8C]N 56͇U4fk -Fn\-"r15 cN4yhbuS&6X#Z[p((mR='AKCou IoIcAQa1"呵i‰Q4sGNV5d28i[cqEi]P¨ Zd`xX %^>Bq9򂆹X3@ Mw=pn3/0.lx.l mm5_d`踑D7T.PգQn_XӯB.1s0pb)ػк0'LX\?h`*dKט}XWɆ;ȹb>-Ѐ 5+aAzuX S,ɬZ+&g{= pU[ g﬑r` Y"A-+@FL2ss.;b7\qxFTi6k79ݫz@O{eyce #:t,Y=lI7!ՂJrNh[TFq8VVQ2]Lš#iD@3"?tڔgK!2Kw;,dVsWF,7ga.+ EkI+jkծ7ǔ#Y4T,N6(u*jנؒo'Տ{mOcb7 ʊ ~jm& kJ+9R5EhPy8a81{չqnW9?_GttOG}\LQ6ïur"]?EEPi `Z/< H5}/b! bnϏYe_7(\FSǘФtN@2pmF3X]"|` c,9F8AܺGm@~~bsI'N  ؽg ^awdS9&GW=S~ߩr_&j̽cM<]4HXMeߜlK4 fq,KY[/5ufUqpЇhYͻN[q}jMVPKn2g'~ _Segjy@?Ue#OAfEZ/.JЫ'%.-ÛcA8]f}{H/1HL]MZDx=?268ص5K%4B4cCo+o=[z"I~j^ &FV~Vr".f;n04/rϏ&.c]k݉ɻ:ڌ叆JyV@}`r KcM0Ujח :!@a'O|i뇇]9/n=~a> < Α,) 6Eaz.i jHl!:ntunbXFszQ4j<Piݰ8;E?ApOF,MCCB~2Ҙ} kZr/r9yfX`GRP3W:D"9۳-qdBXI[xKe_ e,YerVix7-ܱFN+eqSBicZm|j~?4ңm G GNN3 yŠqaAɅPe94KvoJR>Wb̝hϖFusz=XFꐉ"zX!*cPF>*ۆk5vuuٚiሦlV`.s$ b&gewO[$d2B[>Q[QU -<~ :s*ġfb}t_BvP nvdp{!N:4$p3boqYJ/|` LxׇN[얞޵ԕY} mM4L 3\A)GH3;R܋4>-~sAoɘ8k%Z#QXf~j˗]<{X:ae۞kBmϡ02㝖{2l&n)A;꯽X2hh,I+χ ѵ V BڰKS@P_+W*&6Np5}7f!5 =ۖT[[ӂz_cHL~ \u٣f I.W.SHLN5c bzi*u^wWE0L2Plά+6:/bqÈYΓ^YPJȋKS PK#"|/' 1GЕمŝuF# /?FsQS dx PG߸⦑ϟ288njZ@F{O:S~D"bUBX$Rv4,5"^e3K SXzw(O c\SoCiSxuxD%wFVͰ1+=0?8{K @7y@)UaVΘAr<5'uÈ$<'Y*FdhJ n, v\-T4)na;I ^$ɔU[Q鶆<6T2pj P?ɘ,\I- +9uĺ1>%vvđ Qd()|zᵜ*}' f\-r0 ȶ ~*RG[pov-Vˢ|qKݲBҼnL# {Վ&,9?4zDzx.<_ au*A БMY&~T @[u1haZ~ 8?sU85B%n'j<57BB_/2 t_{۱M9tӼD &"Z&H,b h*\ef0~/[Z*iM$ nGAu8LKa=If|!J?Y;M 6WWF a2kB4#?! ޗ􀪙s4K`j @k2ECUtQhb44*Qyw;IX2#<~>PMG#D1~BhjX,v*%;M׈%~l4s*^zMhQSZcatM?OҴ eSC:$Pһpx#j@ k; c]80!MO./]PS Ww][=$X} MrkW? n!x5}i1i^a[C~yvgM\./0^|ĬNj\GI8IPvj_+,F: ysB?msn44 ¡YI6Z%'\FWXl>O8ubKTƙjP9ԞɔGWWv3^CKbB 60dGAPlDy9@'7|c~zRG"_ Z'̼U%/֊^䍶`]~H3J|-5T&%d~Q>k 5/Z)vi푇6?]eqP 8qq@W|T'Q§_ay55]ډߗSp8C:>Oثi z >5bBD.п Ci(i5[>:zm<}\uQEqg+b! 9g@>? v9$E'&=M(Z)j(Yٹ՘k;~^E2,reϻ g AAV61Obg+gDޘs8B^}TΙ_?4O?, Wmݐ"yD^!as!T08|:sJ UqljN3Wc`OR^z)aII165Lj''A#uUBRo?:"G]@\HD񹇟=7=rd݅ GI[x^_ 7M&@PO!HӬ:^w ^֤v/.5@AtҐ13ʙ"7K*Pt@[ zY+hGR.}3Ű8u_ik%@4 Ba{?K"ʚ w6֞mv z"qq&lnlXn$PN}8 Anm&w`}bJ0 MdʞvP𾸍sÀ.$ʜ%#F;{/N rԩe1g smاbIPPVt^WUxefuE8>BtCj7 r$f#nx#Oe6w s\'.;A{![^!oN ZSwvOe/,}ϙI(K^0g$ %H-ŀ T ~w6=L4Q@϶NÆqڣ7 h>@7J:257$tS'|P|w{N550s!O&b2oT#p9:©;0h]ge1\"HĚSk92r ٗrBAՀU~T"h"[ r^KܝdHw3fÄ5V6Zo1T8ȭKkE$&}3=iB}sj;ĸ(F€:j !#΃5(p!YvwɠqJ寋h [|s)T͛;'7e% Ę )j#3'FlttV0sHł/iPxE[ES(ՆwQa@1#iK_daye mǯɸ9!i!AH ?gU *숋(r|ln:sfG (p^FY]zԟZm۴VBCx *N dFhۗ!OKE"Q؆YeWC T0假}NDiԬ%~)i/Dr¹]e5׈s`a>W $'cg–E,x/Bme,=4sײ9ߒ MI\c"<JBAMn< ]Cpok2EvP⍀}{+&YѠ_7VjGO^,,} 1N,$\yoЬ병4jCL /g-}D=,@g#v>?u_!NYȬZC/0HU_3!(#e\3X{̓{[ڲ=19jڒ<oxP8{yz^$ AJ]iԾ*a+@HL?R"$y1LZUY!)aA8}/Vմy<3zʠN0F!lh6_*#*!eXW0 8>[AE ZјCYl3&-?090NWYy霡+6g7<ǤgCy4,~e>9l qaf>j@K`1CH+S;}1s O >9TsK`i]d]Sm1͟#"? 1{a:t5[y_~#WQ@0˙kX3 ^'KDzQi6C!)8`>iOyPk5fs6ANxж rVGI+52C?}tpTqez*\"(<8|_2DRW#Ug .0z"VK4i*N!W')(">|;h&Dֈy:?r /1bU5-yw .9K]A]Gr{@VvNP(BDZ1o98v!ùq ;|pHγ@мrвc>j?Ō-wjX*qYՉ]hM޿9,hf <&Hx#" FiY6``Qv&;0fb̦S@탹M5(XF$pN<+~iXEŃižjգif9hu?dEJ-64*Q%d7J.B(?V!xUu}`JWPM+j#Xi|.'gPk=+)ML)p痬Zp 2v\)[8I%,le>=`bJOꦢQv}-XBnUW ^89-k˂¬!|!WSϮ8vt[^,)@)БCZR GZfyЛ"p9ہIZaxdKtdMӣVN- Lnp.V/[ [}-#%̽a4{Fs{d=5x65sw-i^!fNr4)#Y<4̮ G[t?AN7(!}iTEp̾V0ceI=dginҤhZK((1 )ƛ^EPu2;p+3|1s3SKa``pK0BhGZFR1Ftj 9dayԄaץWfgV;i9oU<Ԙ41V**;c;p@=2I'M:XS ë/ՠ[2 mq TVch ?QNrG}4Rw֬L7l-L"%U$V`ǓzTq*?dL/XQ.ҳyt֟4di;eTv}[CF!~WؘV){ gEqdh"ge4XT#Y)JZj(\ cYꒀ &"t~Y2CeyAM1=y8>ѭ.N-+pǒRɅj/a9|k} +-ƮmX4'e<OϟM O$3}Q\m&-<o6 ;.#o.۶Iqn^B{:־^ E}e״ Kg6HKW!vYP݂ fEZ]{s0'SkQfx6!vr4a~QfwSu[ObE$loYf \Sya\` ۅĩRqX9p(=(l(u TB% c\lA~58L@;\_[N;n2sDj. ̭CޝգX(r cުy4 \qfw}S~Ev~a'mH?!8aVpx̋̋_Q%&,9i߱$*QjI.L =Ъ1DmSCʋd1 L8e5)H1zĆfmQ$#mq2:0Y>{0fGQde]$Õ)ul+"# 7CZh0 NWX1r`̺]2&oVD|~jzG7I RbJ#w8 n #5}<,эٸ`p@|2ϥd:Q]yOG7`cZ]Ʃj(b\X+Rœcp^}ՎC%(!jOIp }1-i2D8;Z`70K 8D?cegǰZQnAfMl N.@6 2O'Y8qW">u` P8-Q{wˆ-^t3TȊ.Q|6Ybs`?rA,fȦOHjΡ; x~)Ur>-cImKI_Tqݣȋ~8#ⷄG'}C ڜݑ7!H9\"< 味bC.qj ꇻ .1Zc81@%V,wP$ n d Uz%t|A0_5tW15XUS$?{} >*Z]ә5m?Z2hKxaFlڼ R:TIc<F*OBIB<_+A?CyzUr )Lx@b;hGݢovABV-Wah%)ʨ\C̞ a0@ 6g\hf\$]FΥcCWGuhs+6?^ H`t5=#6ޖARO`%Tصu񌡹 hx{ZKi=mk9?OYE*Hoo6^KAAGWm4lB$WtCPWw3 v6-,'ūR>F  >u&h<} j|FD!AՎWp8 TTExF :'8azπ %N0Dkf79(Ȯl YXW!ΛUxo*{ZՆXARp̑6`1F8+F\qu35d8br:r=Dɖd>e1%]h[UZˌOfƺNr<3؝꿻#1AX0t7%zR " +A#ͬZs՘OGuF\HAʁ¶RIWSX2A 1fSx̼o|'`8I%Jy/U[m*}= NT~|%H G3 #O.rU/c:72)p䈃[EW_X*loA8`7:etIPM2ƯK]($l?FfFZvٽ,d +yr%RZ6 A#?sY@HݏA'-WP< D Qt?οH 7/AS2 Ŋ(U9^d{ AKǰ7c+~Q IW 5w-ps=oN&-K!晴ENX?I`xL'E5+_@BtV_~=xmmr܅So=q"]D^7^^Qg[o1oX" )6QZ;{ir%uoB0k*+JꪪM GMY]2it\zׄԊY_ )p =gJ3(/vl|[4%Æ ֙QG] gcbI44J{+H?klkޞ۹zkF7b+@LJ/^mxG0,unc Nisy01BՂx x7=Z^V3'7ϵ5eb(:;ݖ>"%l3ҵOH15*9nXNv9+5؇@{ZȜeedx0i O$T11fyݑ7Wg'C"wđL}'R?:@I F"xMȦjݲtq]>k\C/ĻX;f̨ r}>yH$g~8xH+ֽSO ½WeX/E`N6g*ERR{)9/[2g}xo+swK< 4|n6t ]0%xG3b?@UI/eҳo}92{ܖSU' ,z>Rl tKe Dt(2 #J),Ŝ"ר8 1#m-v7guhpqttIR%D4{wz?H5w$P-LK u  w_[24/[Ao{_dݞxHpW"#Iye2)uUojT㎼/7|h$9ʴM#b׍Gǜ7@'yl cƚ#\$mʫ@wm*  eK<Ƅ=f N$ZOlK(9½p0Kܰs^1E/Tp0f'ؗ"fSnMphΠCz?!=ϰ|[ȶ-W ą5G@ʶGbO-OxSV }?Fam#mFRgZu$ asn_L)Ѻl949l|!+[#fLS ( cR, `XIg ![BżYdNk \2\}~N?`[cՄGdX.^(0l`L..GoN _& %k ~%@*[}5)d>G3r;`.:p W.>R?q P@p@0yCA4qg18$P5NR%#P,4"~ y}DtC_%J(L%/s*8cJQdۈ^jm^-}-dxx1CQjSoSF2Ci$.Y#KaUs-d+2Pi%YETxrЍ|']Ljx'~t W7%jiߐЮFGa <yߨ}dRK𻌓d,~nF羽j `o oLqcaCTEs9;Y()s2^+V{ޛfryPQho~EɳO}Ovި,c}5E pq. Iyjx"Z䢲)k|c&[A gLl;6oqf}V?>Rb}=<ٍ+6b jYk:$,)Lo6O/S23TELؾzB9{/O=㻰}Zֽ{}_e\!l$sa0}laE5>; X{QY_7Րl s<'b a fWͩ/{6DWZUiiW%M'MD*}Dm84o^F]sthh9ޖMבѩKN7Vގt ^* Ϡ2XyBN0zY[S |e7C!7fyߠA!Y==q!hvo>t%ܸl\ xU3=U0Kmr8(S'mxYq>>?E͎/ @ʧ@7~#Ac2=+VEIJfI YO$#Zr| p݂eZXNM$`,ujM\1a 8q$CbB+)P)RrI7}N`Si='Üup֎aC!哹q[_j%{%#ґ݂t>CYND'K&3yy~)P艑J|e{OeNtÞJ%РܗWB%D %Ǿ:eJ v>}ӻ8+! }<;jwkxUln`Y+i(T!|\L5jiEIjGo5|x4ֽ,ȃU8Kn Ǽ 9J^<JaU ȁIlutݐ}v5EWOٰDz6#S#(XJw,kZVv^&5LiB|WU_Jie)OHւŹnO<[ ZъMP7g% mLn?XH }>E[&{DkBNN=ikeu魕chtj\x6:s\χOU ,\k/l߯KpB"(=}4)^UyO4r[?-X`ՑjP CG ;䉷7rǢ:TnMrLBM5i0j<Ī̮%" z^q=AёՁ}h*& lx, b?7/* I<-ߑ6rSjc<)@kJQ}R|萰MEe2Wtke^s{Kbq\5fP֎'iސ6 gdB5%ԙ6p ~L-3ĵKPd)?O譏2[(4;)[~D7yj3sؒH "%y}@RUJFE$1X3E 2.yOssnzҟo.Ԛ`H13󅯰GxߌS.$2X[DV( ȸ4(=3a,EjAH^ Փ%6&Wnʪk5|Įj0~qFkhx)O't~򟶌s o<XK>zgp_[ƬH7BtߒMQj܀Z2+j'WY#*W%D[ X.ū/ fhG$M[d 5d0/O#"j8P#:M}bI \t^,0 4enKRb(6{; aUe/؟a|P^-qSdR(A7g6ns|UY")KS~IvȲ7kT|acDB #|)+ki_VLˤrs2g5%H_=d5Op|efv]i+2i? v lG,JKuf"U:3,Զ"U4l)];4}b86ld$qڄʂͲ!P| "mu1#G',̟K6E@֍3Δp9glb_c?TfRݤ\ qRn)]7*6mƈ8/*Hv_ԍn.,$ ˕4 #v@@C@yHq}ʞNjc5|n6^qӹfft2nguV9>˙q=ajʷKgI![:õ6-o&.Ys`k16 q*yH=CƋcɄ6+oB9 T}STqvʓ qk~+, Шa4Le@Ǘ#ǸCoƃ2?jjjЄ!{eֶβeg>TF[,_p\ 걦#;&E3b?F@JuESxǓs!ZX!8sꐤk0RdNO[$jqЮDwqWnBM19ڮ@@s[ rsFI i/?7[9},˘;K},@ʐN>;6.ZFֲk7: E@^\KW-~8ww+ԍZLӭǒFӢ \|z r0y®g8rK1Dūnx|}34]_;yTfǷ0eڬx~1uqnj{4.5,4t @#Dl/%]ãbլy#zL4u?WRӺA\3|@i`Az86[z`.8_0^"Oç7qf˙xϩsr5. l [sq80*tX&]wwKUt ts3_n'aNo#UY+IHgeRu% x9:&j=u{Go;0i.=jż iB}N/nkwz|k?_I"ZzO=ID kq*R 2)f`,5+Ŝ.V 9_D*g&yAy݉-ŗo!o T7G{O殩mrZW* PI j Vĺب{A[Y/,$D?E> )ᓉf+j[ `@ZN b[ \dw gM 6_;YgPUm3+÷ؗ"X)R[e[A7EzR7:pimDy[*VO={ӛ+D^1xK  jL 99Qy3f}bH5B5.μ0|bz B-y^o[ Ó?K e&0C!Nr)BSnK]ZN7@_zS[MU1?Z Qă46-k8 Iauii^N ѝes׉`vfwk] 4Io͌$e@|.Gk&6w=̆u+(=>2,|GX ;4Ϧq2g"KA_:qBh_#/5¬ݷ =\*z^ űƕ#a /eSڮZtjunQLMCGn}Tׂ# W `L*(dy=JĠ hh# \`*BI57iQ 'Dꡛj 4P"OJwfm1X5Q=cQfSUrn<{I#[0N.^^|9|yq?" Ԟ#_1TӮc ]VA~T. &JLC] } Y73z1HkZ!x9>»j*%xPMQ^˴.F,T\a%@Eۍ/Q%&AU0<><3s\ 0| Md{(>u{)bdek[jP3s"Izb;X%T<GIdL~E.? b^ju3LxMI Xr\v-j{ǂ5XY84F&'+ۗ{|TCV.k(v|h,BƙQQ;. Yl_2$PLЦUt٭? al%!r1`q9$.\Lk` N#ڤ4"޲^!!%ڊ9QN\]ڦ L$Z1oBS6\ݻ'5ת;$;XB)t k ݇ΒmEU6 $[wx2ZQn=t((#\OйXÞ窹e+4g `zRYt؝(Jidf 9A87~#\x@*[:,|/]ncrc(&DP֓=am8.ݻwz҆o#@3Cy+U%<}pdoxLPJ Z7 K*f6B-_(Qs>NiȤἼz;ǴqXCj_<)B*+T7yb-iYϰڿW= q;g?ۨ1 ,(1HcT,RM qN.ڮ{D<HqԟnGhelǪQWS4u%> A OͨsW: B1lCUA}`+魌Tt«̗ҒGv3At[[])m" ށSP?j!I,]2jуxUdv^.#'ۑv&Ũk]sMT Z8!=e| !u;U`Y!I9 &J-w۞d'UQ QxaR׉ W~5PrpDlw6 ;d菙WNU@)ԧI _eҡ=V 2́B:EӃE-ʮ;XO [s½Db{~yvM/J}Z.mX6wUTF+䎅P&;r$bm|zS 'N-F]H'@ W1nοAϫ=ԕjV[-,Rj%he0H"-ȅՠmE/+܉!dTroӲ{?ema0XD>AP$00t% _s@a{]MCsj1VtN1f&cyfwxAI-5yQ5{dȎ.y`dH*K]`-7گY&5m]u@I{$]CtrX0LX/ђ% ,y|ݪ+ɐA%&˒f $y0<6 0p{vfzk/*B:OJ%T8[{gU\":|/hsހkVBl-[j|z0Bq`1ݴ>@s*3uf:zΤvҵ_s;:xʩOu͜Ե"!hIX7W|>i dk6Exg`OӒⰽVW.[yB}59V`qr$$>&Nz#f++=&˥%;2jt-U^UUP;ӍgP6HO`[V9VL)_Q}9~I@Wioj.mSM! $nі2_ G9Dǭ4>) `=wm;Xo^,ߊ]vgX؞i9I4}AoOF3rz&/jHcܴBD_B4쬭$ (QW_YroFwFVc2a(Ҏq*[(rzƏ@DLʳlH:sHD2⿚ŷa[?S. C<$Dr^a{aۯit@Hh=H9#V2UZ(N _Bޅ.eY($CsqcD7 ].{ijX/BdA7AtWk zDNqx.QHbVusdwWhy@\W-yi7+~ Zadb5.8ņ%s|S\ڵ灁 ng+ ]mI=ϒoҔtY:׹j(}IczxÖͬ+i]m_ċ뎗Tva̲5F/e)%Yg" uޮG[,rYEˑl(y:Ci x--d9 hDAC[dd™E߃OkegZN <+.Ww5{ `9VTq'/M91KWlEA . 0&d!&romIAG&$ Yyo4TSK_ם1跱Pqm6,Q=8:Wĩ+7WNC鼟N>lR=7(:&7(ķܙ&Cv1n0e*F1'E~;A]yt[j*k_ުpi#e|RE{`)BFXDTJFrr/Ώt"a6պ#ǖAwW̠1gX;Q@1CKMۈR cTy6,aeq Xu^;k,oyXG[mPE\\H8)1Y~Isw])%gʴ3l-{ Ho13'Y y[QZv^UJ 93 <T>**O. W*p?7t{sѨJ^!ekuOJql#K"ظ~%@iQLUS@+,1'z.E~Vu3"c_J:LQdT{‡/Aê! q5/2߷2rt aZlw=c+gu襣q*EnG29\!I<4o>"Aay%y=fiyJU~ɡCUj;N`dN13yMUL`cw7BYQfSQ=ԙP{J(y]bvhK =Cm8.vPUYIJ>M(h D9) )L=Xj74xQ\~\BQ {˜ũqFe,]CFs o7,OF`ݰmZ(ŸW۲- 2deDoL|9XZ>#m-r,Q{Ac<`CH<`dȏ??(IJ%vʭUn`)F-Ryx0]$6ՌPsɇۍ0H5Lגwrn+C,;}ȪVRl1Q0O (ٕlFf{ZO50/2%oj3}zR9 !y? ?? 5 ctqU\*|x+[L= WPh~&Q ŲT"!\xH#1jr}gr!r g8t~GhP=TW;$X2T F[Z mR{mfk#a|^P2>sHSi~=z!7ɚG479<%R6cܝ@R'!+R1vUy!  al1҅|/øx+`{s;E ({ ZDBֺȰn>nj9K2alH`69Xyx[C'`õ6xn<,@x3vw_yqSel:$x)?Xmx{  Q\K?n_v9ɱȪ,w-&N<tf)ԈN$l~Q P=m00֦\W)Isq9ӀZīfą͹i*-/ǖW1dИl$P+ʿ ԼwUhsxCИGGaj O :B]Jь,mn1.^~Z]nŞ3E)'m;U:s:pO`;WQUXrъUNI S#S_NԡZr,}QzŪ>܏t l9/U)M]'ߪy$T ܚ}Nᢑ3evHL4٭K Tor~С,Jk-#Odf.pŒ[V#Z'45F1O) ҦuIniF5DVkd#c$]w\\Gl}+Z&gc"Gv ݍ r?sT:kW.x]ACbgПdӪTƉd@ $0  nֲz; CaEO+. N֨M=ʐ {V}Et%#^V~-A:E4R0vVH?yriR^p 0=*K@!4'-dH!*J,?4t] cTЧ_> .PJ9/a7Nje=ii,g2b=W+gU >| 6XDfILsձQיEb gݴ4YۃQuVAwQ!Bjq_Cn/u)ɡeJ ˇ}G.zC/=OBFIv|I:|g,7Gʦhl%>/T9B8i*:x%^:link1N30aZIMiH͏5{ rCc7[ag\)5LܨH vzz@y O12vm1*iCy!pIܚ"ֶq vmMUz _}& lm)kzT8ɋP[8x埅.VXC0P5EXA`۶3p[ \mm-ݔ/틅rm],۩#\Pw `SQSAԯu4ꍎ&eNw2]?c#Iӱ# d8‰S3+++ڧzXmm ] \iuGAl.Gzԑ@ 39!歼(a#Oq L2k=[Hɮ{_g^ssE,͏Atz肕sk3Sj4FEs(s`um cY*!3IhrX^Mˎie7?2EjZ`Q(y#E0\p~j) KYD'=F:[`RgfR PNEe{ Y"G5%#@h> .T$9񹵺̸J)@j[<c==$RlJVXu֬U ņ֐[±CPP#*3_Vmd_s}O>)g+^PM;8 g2%k*PГ@i?ۯZ`uvE\jo[pASCššl4'.XJءok=yooPt|8_}ې;cЂgɢF܅F|_I2;V7x4ncitLR+BdjU4wo},&+]yr"cC6j.4 396#ir,{Fz'xMX}5.Z,sPM8ω|{XzORvvd[56#BHךwrN'WȜDz D wRs~b`jt*ďYbZjR W<獞)reIgK)' $[/z55AWF5,xQO ~ 8^ngN=7(y:#*r#pOspejP%F*Qa nHi^y _W.G+*d*Hf1?xM8X]U`hioۚ*`&a%ۇ21d9%tغrr=)MɭK\R0hhqi4"1 1@ ~`HiyrWmk#jS\U#$hFܙҏRII@P%$+!VUwy\fɈ`1햀5Rs\Pӊad4h' .BX%8dU;4&O4UhLK'|t :Gd^OfFt Q$q@atdgbު ΩR'M@-E#%U:9n̖ՇH!?EA9=3Aqq(-FzcC\\QbMɜaIcQW1HI蕖5rޑ-L&͔,3Bΰ),e$Fe6ց$xc署-òp](Eн!0jUAx:{ yrnos XQkDpd&A[a9]i._TAŔ44]-#0Nea6XPYݡ^і(JGUQ| A!1ڗ@VYؙ;U+mjPFUJ0#3V]Od:}@HXy:xXg8 ״vSzBٱIV2`JIi-) "*h=<) ]M<*K5dlG*V& YXW qm[eVB`ԋQ*5D_c1ؗ2)iĩ, lC1̟zI^ BFTY(2{/rhᙷCI?ry<AM`@[1ZG i1 ,lQ1D@LGT۾~|ElYk7Q('P_E#o h*`@ȟᢖp$Domڤo;uxI;:V¦  MͩpV$ Q2+[zˁ kiaiZ~yJxAX2)-F.4S#Z*!2'W|Mu6kw-M۹L `k`vl[g(6N0e Vu?~b$ 6f FC:mB9Ai*TL4(/[?oXlXI>E.<}qg߻1"~B;KfzGv7AKп͕|,ў{ ;[/6vqǘvA"*Լ F\|1tHz:|| &V!Dg "N2\!oVG3}Rm2!:UU~b,r 2Ƙ@f}=G![گiRZ:3]`0a˓| W`! de_~?-F;wh`oDt{vw+^܍\QTMF #T/xyҪ˥n~&7 ٲv>]_mJ\43S~kwd  |p6o7^ 1V\R_,&xl='M*WvW*mY2`X)E0'"rUc$q.oZE~2=#=, ,ye, OGQ;6H2\M>0avg;萸s# ,GF\q^*,%&hݽLQQ( KF <_2a7KR^.UJwK2Xz缳@JhPrHxx-k8;E T_iw?:F v 9ŦnȂ^P$tcW`=ƂjlimG "^*uv/X1Mz9sL\ec K Q'A B? 9弔=?vdu a):bE53-Gߤ]ӾgҰ!'j4>lav;}ŃdG%]֔GL:>Psۤ=g8^q9(^:pU ߖe[=LC2@=0V@l#JvC (!6(vrOAmBVs(v'y8~s.yruw 'pPQ&;k[dVb#im,/kK,ZGFE#01V pCD'*L}\jF:xf% ,ڃ| D8cpߎ}52dA#oK}Zx%vͰ2[P0r\t_!)J19g/W7g=7_zW,Lbm硇 %)R9 {'$4t#dvՁ[T&[U*&ۻO9\T0@/:=_A9Օ "60PMG$"G0<EWaC1};{ VľlЬPZdUArC9H6BPI54Pi) ]V3A/n|4s񛢐t¿BMgOmKQD]kޓޑDoW`-w#yOZHKʪThs#98\4+ZzoN77˝O![ZY57ۣCzLY DﺼG R$aQ 5 4P+lA3t頄nɗG' dk4c2N$Y3m>:D $deJ-q=mܬz: OT ͖wT9þ3hW@c /bb~!|J_J9xjI, wF;Ʈׂ0]?/zkKz=:㦬#z9rizg; PQ ,OI+٘!'^|n|&b+u!,M7P]9^%h?2aTvޟ +%ܶ}Q6(C8L=fR"䢺l*5$ܮ:L#Vj* a?]IO2,,[r2|aһ\B2=60"̗cWEB0Qcj[;OW.>qmp6mȃ Ӝ%zZ쏙b5:i_<9Z% Z= S`ucPbӸ#㊯}[ha\0Yז;Vy nWk>e+D1]댸u0P7L\v><4`_jW+?;-.1aGL73"&QL`2s6Q]킓J*$춉\)2%̦^qϓgQ̈~[:v_VVnk^mXs&[6LL!mCD6-v `bޠ6ޖcօ?cApMN'uV `pR@̽ U^jYb 8 8-l9ZX}({]5wJ 2RZOXcOhdFx^`p%.tD3=~G)W|VceI+g2))U5 Z43ޥq]2xRSJsO1˷;+E685tZO~3Zka4*8#&k/\lW}Ny@$̃ufvݥ+ƸWc>Z Q hiш[YDaIW$LHڔ_U#Em,q?c S1@60޶>ү>lTWn;%HSbJ1HR߈E߽;Am^=mב 08nڶWh!YPffܖhh+7SԱoFp+J ѲR"C\ZsCe jȅ{{J tAO Ά)@~9WT)WNKdB ~& 'U\[= SX|%NvK **CE<El3SB۵tcγͦ Y8{= rY鲌ΨȌvY}H.CQ,`A}<‚M~,Ѯal^cI4Ε]T98vC dѠm-v-w[{pP3mto&*OA;p;asl6(75 7Գ0T3ŠV1lx)qDi撀7?:II\ʑpnȍV5|mcP|+-ɺR̰wLՇuMT~׊q >#7\6(xfDv|ƈF,:; D DgN<`N.1;J|K jW1@{ڶ,롛<֡dVjfe,O('-):qnQ2',WX8VUY+߿v B P%s>`F: ?hAwG`L} ~Jd3>Zu'wkC{/GhT^ 3zNёk>-[ Vw :I6 r\bNDŽ1"Skvv`=хyt5;3ve-?0%f9*KVnx!`q 3YW;4)wxm=It(wyJe4TIݢ "E5d4E,%d}N>\-#P S/y$΢L:RǠ8ƕ8,:Ӯ/hǽH4 oՅ 8qbC`݃9biz#Pǎz.}'q"dbu}m4d'U&;:%I" ny ]pې<VmN#I5|@ SaM&p8$[RA~Ʃ+?' 9!S7 0J=XӃfJW]}|$[D9ʌ!]жOTB#Bl, 5s.^S>Voiu3(n&LF!q@.+o%rӨ-ig-?(:&}%vp;Y)IQCK)aTBE;Aآ U{ђrvya!v T*kZ|Hnkr3:T)1G99u^HnDL?Ghn(TWQIL6c"FnrН#p<gҦD]7̤[HWC^ ɀrjIqM^~, s1ƳưD)%b_I#sw,coH30AXkg/i]z܎{JY*UDYQ@ճ'珑pRt H;<*:_27* S`?=$xq8ihGp_?( :OEA#=y }(F گżb3eΓL}f= 1r51;cbyWEk""Wok֧)T;#OZ ģAfME$ԲL{Ơ}ȏ+*:acqF0mߪ&?XTUkmɏџ(b"hR\a^ST7#-Ag(;@εbe,[,NKJ?5I@jf],ήr7AXT6]G#2 ?~hK!}ʈ t-d͏ 20_fwuwxщuf* vP:#x#T3U^_*0+qBabjƭCMLvh48A޾ ςFHB)[ J#JkHi+Hh;6O5<׍51 A@)/wwx|=HY8ޯaM`2%Lu#N Lp6ep`pk}wsH=aR Ky\Kl,ķ`h\)R蝐WD}mH@8g "?*.%"3G!nriѸXuXgdܕ bHfO駹3x$N^ q+>B<\+#]S13n% %7{Oxߠf+^h)q,UA $+Ͷq+%9a᫚;@|8PTygS~'Fʈ04*ł0?uA!q=,a~؆WZEd=S20ErxPY"ݴԳ򄾆AHIlp6|~p!ѣoj(yzQME-4jɠ|7x!)r Yғ&ja8i Ҙ:W zT:NvG0 y&6ZȽ&xRSoSoM6 ٙozЍTqz4ryC{ Oa-jD쐐5Rbf'8&e~bkL΁W'*uw7Y/*T4S0N|~w 9E.qZ.ݞwHAy:j K;o{#Cx9kICF.b,2!CIݷfr+5w z#^ÌmEb##n`<^dVIf&l*}mHcż\=4 6S2+7c >eE;9x o V bZ_@H patm 3"?hk u{vz}asJYbٮ$ U~H5 egpWC0`$<l|glG)i&ouO2&9QU`hL Xwai`8>i6}w|(bZb/r|dp7lȘm\MB1,S a}i`eSb:)e-Ъʪ;gK=WK&T131:VoXsʘ;y/&P0 yņjѥxw#JG+[n-B'ҝ]]$':_5$H 7F2w7c~̈5 y5Gj}ej,LGj2y x@+@U/* )v a ɔ3]טQ iQiVO (ꁅ:ZTl*/b@$1T'E. <Ŀ6ۻ|>O n1G}d *L#fJ &h&uNlJGɼIDԈC|+ZN|R}4&ggT&gQ_w$Y6HmM( 4OIMkRKѪcy䎹#=Bc݈]"3I-2V/F üDyS19NӇCߣՈ3䎅? #>¶k)0;7[|kfdz@0kyAe/'7#7iXP9:\RwHqN|8 )u2Sa E ȯ6I+(Р92 4hVd]HU{f;r<TagX)濐f Ќ+ "liӗN=OЁANS= AEdo%~{[ =ŷUneY;t5܌z4uYD1Uɥaj;{UfWxÚyfYz2M5єOkIB| 1b_%d0 '~<69BCE:XbR?C9ku͔Ta躚9Jrxkބ6)0xL9jRum.)<D(#VQ H G2m̄P b i.yu4z9@{εQRT]~86_wBp,>WB~Ո8x 6 eK4@s;Gxp`6.Si"۔v2`'xD_}<+5zrEG۹4. \df<\LyԀn@]翬L)TUO\R h \Ec kۍ?<ړjݔ@t _Ш7 㴓ZczӝW*H""hZ[T%jG~PW)̚ ~* .{#>4XpI)kD@~rW" Y> 74A;9h*15:~_nN%8$CҤ5MgRj1aCDh+v^ۋg,([`_aK$tfKJFհ 3Hٽ83iLI-p)jaNcn|F:@6?yvd;8]$ SYԙFY?\F_HaPبh eH+.A78Ie.xvIRzEgTUI-un+hN\z^ j]K/gA#ޱxx^7I(و1pټ!%hpVgf4++V -bFz {v7۰T@G;"wRȍ'jG/+^9'[!{چ"y VߪXtK* r$I,3ݘ&r8N-EMFW kh;jvj~sdІ%91liT F}RiZ|{ac ӁP x ]yNFsCYS圷^NîZ:$zGCM̓2"矕;ά9 &(n>lܾOk݊kռR "V%!HW!G-'mnzCK 5u6rZW~Z} wEGj-cXtVSm~vSfQ Q"%=#4zwI9NdN/vwUfiZ )'ǥ 5&@UN*MV>”pǻZ-Ё`G|z:Yu"NӼie _{8V>'g,Dœwyo}"@l6ij FqoA Y<[+)ͫbtJQ-<4aniJ\VjtT6Rr劑Â/p Q!X. N#&vyA@x5qJzV1;Wml(Κd*m]./r嚂Gdcizσ G%Rm Wj\wdxrӬ5A?zY1&cT)=3iYZk;vOr>+yw8͘,$vD*񿒢 a]e3.Q$8mq$8!.@+A(,O'9j?w4[]/xuXH,7:D|s7,| RXA_wH aN+z52ؒWE9,Xv,{qh}b -k0Tz]v>xHv3శw"[]a "Z^Gll6\6z6/j1HPPM^Su {[Ȱ ϊZ!wصJFs[0Soj3 ԟTn }hIATn%)A`n &n<)^r{Ш&j f/%?Z[b]!*4߉E(أ7-$m<ԏ` T%40GhAb)cNjzXM[5 q|#1vVl ޯ4H虾3.u eN F tHg$ @:{$1?yFªW4-mIq*;q)PZCrSt㏗_n4/)Ax^u@v`;FKT!X+Hzl}rU3Spg !f1;Cr2&+gnvh6*v{[/ɨڪ,\W%% ~6,XuidX(;0,I;ыv`1vj2⨭;r/ vGJ1Q"ͪ غؕC nLߥQ _^l^EK1;O el|~WMeǏ O&,H & )Rb¾z,dAqV|\_{ Зo|&$y]1/Hfޛfl"d[4ݎ(ݽ+K@὘ 7j)hô&Loڡ8݇@k Oى!¾PI5 x2cK.@*ۍ^B5lI2f7 V39cv1VRwTH?_CmQމZFC>ߒ< Z ~y']lz+a9k0SҒڱ_LKӏ| C@-:jq:xu?Ml5,!8!$qL7SU*!'_(:ך&\hk[_HKVCq 5g*`5}Jy4!suL6SsotR"e^oe0D_lmDEȣn3^!'(wȵ#Iv%pC#Vy:yia/9ol],1̦|qtm1|5{DܺġRsوB!:f.GHLgڋ=9Ф.$q9 qf+hc.P#D]jϯ>6SwOQ8  zgv b "vmHڮ( 8MO^!*.p|nl;>tF|YSiw0;^ 3HUVZpnffPwE"yH4OG &MqN_̞KpҶAkr d[IK^Iz 2$౧:rt~xNAuD3|qm@J)MOMt(;'DU?eFOFג++capeT)gsgިeр:GLl 'Z2WOǤWOڇA2Eqrq[D]N\.J=^k Xc?p!=qu(_oS 2X"72~f0 NQ5ELE<-8ޝ{_HȰr8E&٬|rTNmdmݘfc [/ \7cMХ(]*wx DHM$F5p)5WZ͘+'E?+}y4~ikHGꙇȪ"['سFoyCعGa`߁>=;f½?hǥֱJ=כ i{f6ٮׄ-XQc'ҢXf&Ls4w:G4,mUHd+#9^Dkߠc(.jźZI.v%+|yT)lv_uS@[dK3sKKY}6h e($ߪQq׹{@mvʒ!A}-KjhHrcXR~cQx*]|}"<)Eڵ!>=sQ&;pis:_I̙ )1jN9LKT:V/CFD7F(E4 ĕJC|KH!A%o='`xbx{/=(O7d`~-c! Hyi ~8棪n#ig-)E2-{]tyzbp( uH"OJ[٨ɫ6rikDʏ#H{@eFޙ7,$D**UkjN!ǧ‚>N Zs_]!+=Wyn> 5ѕrd% mQ Yq Eq3iC$kFsJ4|.x ]X'ݺZ8i_b" 91D9/b_P4yO:1<d;!_({' qņk]]FDbXWG$u֖[/i]B^+]>ibUǽq®BF7k5C# - 8^v| X:'9owG m"'"W2)M==s<6s>K4f1VbHfjyZAWXIc.>YhnALqMb /'$0Qz\P򕐢9ZI#iW;|2; &xPi_NgVmNA8K,PW3õwj6AXBËGTEVlj39 r$6FWm!$SDN_V<~M$vhQs a*`boB%wnܛO‰#!竑!Ϭ\ c-"yr, Zɾ>Ʒs)TZLdˮlz|6m{TŝÒzDk'ޭ}/m нlcKUl]MR+0(D̈́9?ܐfHF+S\%@Z"j QϴT2SSەNqkp o\(qZeRY74)^/FX?6gJ`Cyr"_^gOWpYie۞ֽVB':ʀ$PV;*&z`QWPYS({ȜޜΘg3~BQot%b5(u/D7rYc! qc@ZEt+x!/$ƪy\_CC5!s q"4M8g(ApzqOH:]$Nu~  di m> }bx6`V;ּprUehid!ߋR `IHAys3A!m̥VxP ߂="aApՑYԳY.$/T{R)J<raFI2j.2M7&YC'bUư~(HoG\V "SrxYa2_xQ%l~VhsOw_X,/. hk BC?eH|6.,hf]І\jmx,)"^`޷w=KmOC)Y{LϞ06VR]>Esy3c'7N7Hh~uLi*вhOFKV+J ߞ/0mx%ԞeشOV.7ŤQc(K+)R;2Ig]SkB+@wX[{Eː>1A}4_eCTϚۻ8Tn@ygtƐN˘ۼ0xqh֭'U=U%ӈ&1kjFT^fJnJz}_\ =~?,2%%DF*' BԄf6Kꮲ'سZ7dQ~~൓@5ę j.2 fw(i] q$əGtu4=>: ue)aڦTD#pСlTnOze׼|>sA>\"rN}ot͵_\?Ts/e*wgmص3 Ka:uӥ5о*<2fGސi9_@w9I* Q՘aݦ9 ;gp%s з!X9E`Pt *{lh uQ b8n š)s_Ū>)613DbcU SZpXg UNIWƄ1 1i8 fdZuq 7> +TY`" ^sz֙ ;WN6si@Mivɉ܆(fpM tvm`tk{ KBj1 -~'w$z%Y %x;]Z--=C%z1Kkv&>1lI;C rD*aRܶ.׋` ]7dtucnbB?iZʤN(d:T`Q.yM}66mbW:skZ<zKZHNjUx[+ YaiP3qq{%i2HvI<I#lV/vN%E¥ #&I MۜGrq86s@WV:7 8>۽? x%$8ys $:qAwΞiC`inqZh&DQ?cԸ[=1fy󴺔苒W;0AD4\S5cjdߌ'L V:yW ;SӛcDV˟Ft_ Մml'PlYb3 5"{򖦧aڇ2 <|XDA] )CCH{O˟Z98יGOl;/vKK~\86]!ڬ,>:ѠMz| [ry>+ ]4Vo;-ݕQ,̅-WkwB% !3`k-hrl1h! t:L.qKor MLO*Ʋk.7/wU4Ik„4h-;r;ㇴpSTCTzb fe041w^Fk2+oy^MI[PGװ%/G)d$|Pҏ-|^FeRjM;{TF} ߭092|{[RdR3ܽSu0MN3a&`I+mn>h#*Qn" īnBZ_MoIuγ<涅 %a$$ *4ie0:M~IDJu t,W X.TMU*'T;IцN_9u~X,ّuhfɃ^ZSǏɏRlפ H+A&-9~)bK ǰHdWb}v|y ˠc2YcgJՉ6wbidSQ+kPiX(T1*Hq$1گ4SL+,س k;y'/k8)Ѐ[I8ρHw89ٓf*5_o/;]VS0Ix5CwxC?t=h_ JU-ŗމgbw>p+1-7s}bUvtbCRu`P0>R$--4iY`⨋'O<Α~~ʲaaF3˒C9X ฃr˃"77א-)wD#Jf-S KWh#= 48 z,5o!hx2oQ켯8b]HiYȦE_=,e{k|&hK{FQؿb/=0n}/$2wD91M*Sll\C;[{a\*ٮDyfi =>w},0_ (@?%pHw(=>We6ԙց(}? hpϪ%i:$%\JohONȆ,T"JnnGLVLѶuy"$Ճ7$:4#T g J ƿq/(F6U#*. UDWij6Sbau\ٮ採J<;n[>cdPR>5^}7$̳Aemjy@B(|9,.$ⴝW^R|ƶⲒ\=WZK^TBP֛00ލK3LĚCaM;|JV0X4KPxn+*~'JVͱ]^ A@2@,b(9#%jl[NWb.u1.$ NS*Vw+ QӞEQz,W3Q \B N.FTg@ZKsrM'Aࠀۋu0KQa<.X0`SfW+-( BGPP}]4ӱASDP@hVDib;-]O}S!&HAvFʇưÖC<&{fXT=XO #ءݲLNg\̏"&gJ#xBXT6]IZ,'|GZEkœ tKmVfF bdwlxXcF{KvQgD맋 #dwJ( 1K5td˷V"fy4;ޑrr{NK$#,0(b.8h?P[t"?;_)ⵟKD6pfD,V2VM^_Gi<5RAAX eQp{b D7i27tvҖuj ifdžcnQ07J1" y]`MS51r{K&j4QYOG>ܖŁmLUr ǨD"3$2ItH fp`F'!M(Rh}H(V؀.o-4SIC:<  V[$Iz ;/'z~ 3/ʧn#V'I=x2(x╠j&9hzÌ bMpb/$p:06y|zߦtDf`0JDtRV 9HtLchnS g_E .!*YKa칑\⪶,gDUWVo]]#2.k []J{l8AHܪAUaf2r; s8KYI؝(/Z&GXt2k&%BFo )4YVݴ!_gT\o\tZ-b/p!O ^X`>(|-Puj;gkkBUd*\!NjqB :`hPh^a1jа,{Wk-2*(1-b36b•H"by0Xfv bDByoXn2 [&TzE\r8O̫_l'TGЎ6j$؁V'K&&eAD/*̊<PGl=R4]ڱeoꯜ*ti {(WvZjݯPpLء,PmΠ oVAt%sAq"zʍsPp !̒.a ӄC8GT-2G׼BWfw9F} >:E;^Ѯ+ٞg5& o4TRHz]uÌ^$oBn@Qp,0Iu +j?ԥXhtBZ^,$_3wqi6Mğw,:[@3Ol(|>=kn5@z+zƑ^[|\)!T(u5a#w2V!B1TYar}Xq N8#ۆ0f&RF/1^wBgV6$wnX[!.ZՄ.ztY.G&gŭIڸ뫑0a9ws?/20a~j){e9kL'cax ΋#m:P+1cz1aȀm|:a/@ Qڊӝ'-7rXh>*+۰qgZ?o֚Oyɪ EPy\)'z$s.- bȆ3n4I<VVL896R0!$)/V8G67?ki:{kBTDCr;T@k''.i5 B~o4PMħ&&nU:r~4`*ޖr=scC kq8婰[iqf\ٰ*1Sqm/a{P< p2dJ?TrH7w!r$:ڜ*GrH>c:Ȧw߻XMT KQks_"]K}zE_}#NGю h$rmͺ r>NV=5k4I29}ix_>X+?=f1L28go:ºFdgj D 6PeUTERBYASq9~ t؅+Gѱ)V$Dknkr&/A h3cف"DU>v ' tR0/-F Ni *fӯ&4r}[3 9u}-rw0XەfggrLi[e8zw/#IX4|+mmZ$.K#; NF^5Ѐs=uj8p0_?e,}Hڏ{[ɮ.p.DK6V/_#-uv%<Q u>ed) 5Xe:b<2E90Zẹe)=smy_jz˲yɐ*O;l]$};jѮlE93gf9-Ԉ'è'5Ƣ^fwVHƖa?*IUf;$\WΠe4E>B .6d\(a :/񀜠*1]4l xy>_zXWyauKl7D*)ยGK3,4{ae:HOe106wZ-02rTZdq҅r= Ip73ST\&Pи_*fK̵AaɁ>+Lbdp2EΪ#:tHCFuRiyx2ym%q2d YX CS2p?0:\g.wt5K7x[NxΞA^g}/@#"jߗMR%Lf1fmht@{ww܇H"iBGsd]0pk4"Kq Yu2R͠Wx]Y^׷jPhWW#drXsEFK.ys@xV.җҗ6Y^s_0QUOGbϾE ޡ%@z@i}7gd5\&{j-Hu6taqpM XHxJ[&Mo4C66Q;1֣}>NNVJ@H'iw)sY pS +K AЧ@! .;d_hIYX;:ųbaQU Q^ BTmۯ9 AnANG2){=[Jt I*QO啺kl(7|G;q@*to͜Ѫ|d䝶Vy| JGX6$\ŀ8|EK>hRjNK8urz)OJGЙpSqZ ,lD/M+űU볞O_ He]=oXѿ;иig1=df%M15}&AMUR:'ו>7E&2Kix=mSȻ:5,%(x"W#Uqp(J½kHC+}<] M=7L {:s]`8Gx u*LVL;?XCM7nǥ$/z͐Grֆ.ȝmP_=﮶x~DM3d.h +y:6q|><5RYZKe Q[޼"qO!U cA/#ϙ"90`UB?x4Fi@Տ3UÐ!ذ5A"lL,q!a9m4ԡm( m P11__Kt2 1d(|@ 2%32DH%G<|vfSy}ҵ (“r[R&~q)fu>=okl.x 5\&ս8.wDK}tf}.x&ĵM߆8w[R@KTe[a<+ N=I;t2/yYWCvt<5ݫ![.%./==d&F 06noic^?1RΎl[q3c_;y*`ǰ!ߋ5 ,V鼿,065gʏ燻 涗nenjƺ|gOU^:M֪ۍo˺{y+<֦`s|FpG3f[څ3߅%x?݊,+`0k_y˟cDDbW7a5A ,{bͧvZJ /2xDU@@ 2;rLJoF:H!"Z{>~s}MܚCSCggPI9w?MheCGyR M;D&!ū}*RHQ*5قs}m IhwX8U|jk3FVkZ@YKyqn1#? |㫴Z:"+Շ#,"3 'uer%2l~Xc s̮S^t)> FBڣ6RDQī'KdV(jRzOp4+DDcub;fN39z"ecӸFhB1TCuN>[rd=5lw 5zil@rkXo"d.d8Y >G]8D"13lCSǯ-jo܃Mɮ<@;&:eRphƙS 6Nvh\>LK ^)'H)3Z)(:nq?AQУ,eGD$cӤʯ!.,UXU[J$6ƿ;9.˻p!s¶B|(fрH[Z40ԕyr4k en)E;7$g}{,pBXsdl|]"%3h|C8V Z9KS'sQGLZXd[9#7` @?='G7v^fa U7vu JK8ҧ`UCm*t INoyŃg,?j9^@p=-mv+Nz[7/B|SG :9Gaj 52 ?un iH$IM_55n [qVyK$H=>{Dm;Tٻ>W lpB >p%YĞ! pNGx~Fp` &?,k1O$Rus+PL|N2}<Ώ+6ĹoNybD ^}̊0yX=JoV_H-DFo8,0BqlNˁBa[s)e>nY`I)X.8ELrŝ|ugFSo]7']mz|3+0jcjgw#AVn횺C_Klz (jUb$kBӀ< 7nGJN7z O3.sG@uAIK/*j"ٙx|˿fNRM6LvHkv#J^+ӫAResa]\=SzX`)iFH|.:V?SEe4*Ԏ6x'cP j& )P[b]Uq)NC@VG^hZj(WPfRBi>0o*E>Ԋm6JFunVd ןWJwx1}n`Gg /a4֤;+m"5PTDԖ~CǠ ^mp?m_8pvD^kgSnZ,X=%_7EIU|RFKM&59僟AiW8{x¶ 0CݶqKgVLZf[&rpnBlz "bXM7m6Sia7rTf`ZR"\$y}L~9R W.|59b5̎^1DRe&m݂ :>3K,OT;N>")7k3qm)}ݡLT5B4XmJJӞR2 9t9gED](A*Isϔj̹1G-Dd;mtDV.r  n!m3NI4ň\ )(P!$N)ka3\^PY9xƔ\0my6_磩[?8mSԼ{#'|8 B׍8>[8LxS7Ť~_yLwvǃ 58~)\ؔD{ B9b[;D]аjPDQ'݄bju=Oy=Ad@P#ݮ~B{l%sxo\0bl]ĝ%=iYH13ռ?AO}}wR*4Ս\/ ՜GGGhpFA ^,ƥUF"v\PpN0φC٫zͳ뫒|赣>SrL D|•\G]W/CJKa&|u.} *ݹq&% v(أCK ȐuK#}iuiHy澆*gCR8{"J[ nόHA!JZ/6# V-0M .BM A#(8$(dNQySv?\uns8WdRqĤlbzKxr;7sgFr.B#&5R K8>` 4#Ɓl/heCSq-2'Ы6rG7\!")P\5Uzwf ^ F@]߿s ;ŗ';Nǫ 8>^q.yZ[gвČxlR.?x{2 &Ct'\! vܒodNoKmQm9LyMZmִO7C_nZ[?`K= zΈm'^).Y.9As6}[cmWM#+M%[\;a;j ;w@T\R(\{bҟ!a_kJY72bZlT`@ X}f?x5Q~3(ꐙ;WJM˞+ZyKRP+-y+ 8Ҹ[a2Shwjxfc˷۪ 0 fSu 8 *tus:^1W>@h~Q?D,0 (ffG|ۑBjqqy@C=?;>u$40 QLWbM{U+۟ ҽz }r%bIR+^<@(_jS{~}zUX ƺ{݌xaKoLa08ˑ ̘VS0#c, NTZҝnwoNME/UA գK; *+-W=\?s@.^-"h"kŃZ~ģi58M)qkRZBqjB L9G.FsoY#> +9<Qn Q6: Pyk*IZ4sT0N`.P=ŤHrgRʂ?ՁLUꔻ-bף c a {HMnajI'x&855)ܜgшi:>[dRD.>d44-cBi,4ZW KtԆ#ỹZC,.r 9 }B};byzPhɍрSN\߯z`$3dm)K:=bJ=t DDƜwbӝ'+`9G{w3bBX+ :+Y] u~W,/Y_ՔZ1arL`em+ǏL.?μBsgi=VsAJj$u '2i;ҥ:jx'4ERO,vIOb޸ A2B2p oihݒ43l,ff0 :.4 N8xK&jx~ |0I E,K"$⾇ı!\E:Q j4zr^:">iHOmvap4,Cy;mp(QyIZXav.|ʺomXLI?byŧ G'm2ŽxjfqwSP>Mntp`APD$*uF~ÞeŠ܎g5|I d}X,=Ehj?bn?|T-0N E~]V#1ƘY $`w݀q %~a4IĶTtwĵC{c DFbK9ֱ~1 kMJ>7N@{lQm Kms FȸUζM>%o$pĔ69kœo/&CHsv(zFQ7$:X[)= Q9ݫsFu3{Y͢a0xqQV650.r~G^}V*=t2\3U3QIxYrH>9<~?A8)wҴُT RЅk&25u$V;تkN!>:o}dKZ.3Įf,v6ysI^axOۼa]2)ze*ZS@Q' Ы.5 "UXY[\# bqQy W_1HlKT0-D’-K"JmuMxF MieQ Ug-tN {1mS0WSZ'jD-JU ӰPVV"11cE"ξ/fS#Aai4}$nۍ,K}Az!ڻ,?! n.ħзdFɍKs&g8zխo{:g۝tU1"]&C@:0qWe_/D/.ȉ@qՈž9ф0 de珀TQW4$n}~\T{[y<˼N !aЌ/ t'PJ{RG]Uu֕(TkRT VG\!%-OKI %7]-N^'iBZ-߅hL\*&-tݺȚ).kF&"h;AT]͚lPAh)&qKAYNSQl i"5b. јrOr<ռ5E'ZRI>݅"k(a>T_)D2 UmxqS*2rJ% pX똠f_FFCXb/ѥ7w=9)i~P"~G^KTI _EK XP>:@Q9!Nu˃ LZ!,XWo<4M=*207f~Ju Sj+ȎmaA6(Eヒrq481'?ÄxHϔjjj?:_!AH\+[e8^r/IkTHͿ3|LQ0XD :E+" tqu ʁOZ_~;$ #'JťcZx\R ~ǙfEqɸ;׎Hc-1tjXQ\Q0 \DT =7xqt5m>[ڍ͹vA9-B|$Љi $"%J.IW51v ƸI h+e*s, ^0SsJ) @ ۩!lKc&HHaC[mX\1AÛEq5!C -1}׈u%T[&ޏ"4uFɟi4P0)eof{ݖ3 p~ ]_еC.ko9\OKEa֙"ζŠ6;[4]*0vf zM[GzHnCY^&[kjih\T u,pL(&6 } Hw us+3ۚ6{ʰ}1D(p7A~4 /_tHo{qt ڍW_0JH6 ,!Z[,QVС G:^oJ)qZsI"=cX -@a9l?>\BVVc sVXz-v臘`R×+C' kΞe6:|ג.õ*`?d\ F ]mg a@ϲ?_5XĆ`:[\/ 0+nƽ@b{u|KN"BRYF1m\CP"th}.^!9<0֣F *a3{Sw`=r%!@_{dc"^ʗꔭA6s^]^EOcZ(hk ؙ~6Yٍ܁`n))rpg886tANˆ?IIO%freTt.a^ŝ릨3hɾQz"UL+N*wK3,D@Azm]%DɌlMC]̢q 6Y  [b㷸mWLl]x}G-'ό!x2j7x!\^ 4ޏLCЙ o-i7r5(!?i}N)Oט-ni]LWO}| =C{ w+Vy0"ԸfÊh7ՠ ^yt  '~ݛmyyV*{_wLl#N*hH >sUj,֞eoVh@gFZ耺(2TIU`9U+{_ mH_ ]P9N 554ŠZ söhs)E~ " O*4d!-rcu/ &CWf3J/sK{0(6Nfy~X} >ſy (ӷY8fgˍ-'٦Q\ JY_]mVVxR.x<7nҫyeM jz戇$-{TTzmoթK|}$x m-5 딋-4G*K$!ickXHSmD ZR i-!tF#m>4tԅv=]p'Д ~9=8'qO8(:3E*}F9yޝ^N0GoZ@`N_k>iߡs)d " +,oXEE@e:=sg$ӎl /fs)689?OF 798'ĘMٳCjz%K[ί}*^V fqGf/l5A0 - G%$F*^:(evudpm@WDl |̝^ ~2V/짹L6?^'{ZNC-:!nWkhqKXt'ltM4o;ѴDooJO6l,:L Ղ]Ot+Ȓ/|ĜHu2=rkd͇ٗJ鷁k LR'.vEOLEUQ#;ꚺB$f)웣 ӯ+[MU\uaKLvÁ/U#wo)2Aa]J-L"9$EzJ2 =50Z]6RQ@N {iMLUdѬR2cȈሄS٫EDle{o_-/Q·EÐSM dyJz[-[Z9p"\=*YPC$ y0nQ ̼=;a3Ko Mmli8Hm:k'ra2> P I~)Qx4edS?ZSu@q,LB^CƇnpĺb#N /\,=i&1Dݗ J7aMl SC_kOh!'hժ9J~rN4xwN†3dgvDƗh4/)j0~qK6L,Yy}84+Jֳӳ,.y'Q*}Ejm]g+I'%bMOF\%#bۀUIz4B*mH{HLL;K,߿ʬGZ]BJ>ݭ/% J?Z-8J*QٻL?N%rG39d6y\r] ~ToETq9KO`ͬƪGE?5݇$l%["'y~zH+YsҞOud!4R45N(&5UUqc\?©t5zfS;Jm.:grjfSX{B Ys5!kplwbC%W!;LmNO%[+n/;` X-4:bZE|+9O)&F!P?q?1E@C&i JBvh?xݺDjqeVUbn#cT¹WUhH+2aD[9.1)\pѹ.{iuH %;.4~S+U߈EE>ɶ)k"[yb(·~f[bHH;۰W7gU9Tx=8OG7 b%IHhQS0q"w Crh+xRr3/XՒx$ |S _WSXWTG ӿig=+49e a !/2UrnY ÜJLr}+d8S:e[Xy=0qĐ?PT '|gueMRk0N1-T}Mvv˟h?n+͜Y(C b$EELemj}8s>fog 0>k /V5eP/̖"d>|*b:$F^EgֲH-)ժ 9j{ųN$3,y }`rfXs=؆gG[4S%v0cȅ2uL6Yqpm?.OW7'* S&!_V4*珯DͼgB V  F'yj}{I#S!0)O b$nUR#OdPGcǭl*3̔BՠYb;* Dp#*^GfkcqE'qIT U`z;)uayt?B \%W|?!/Yv=YhձG=}U3?rJ1dD77Ud)ꪻ-F9Ք\g#T7Ϥ/5SY(18DПQ:7%+ϳ]]i%?n& ( .XN=vTGM0[G.ޡD̈[piM[(=YaaRkbJñkzbR HG[hu7Fr>m؂&$3x Nt쯁_ڶI;V4ѽ*OQr‚$(71]tu7jծ`)4Q&UO>imG/qcrIbH_T5t޽W<ۉx@c;?R$zHŰJQn]ђGE=w$b45Cͻo3 uTԤ`oOKAx[yKQe4=p.8N}N ްC=!"qtv7\n WyܭgZ|[?=0=Jq$3o)𳲚t,dp?^2 *x!n s2Ќ>4}O#阺͏] lӚ xYEsa(_ ɜHYF1:j}ˇln*'( ]!?$4w7xhW*5"UD7C[xb>RW{ft GA%ذ'[%HڹV]5</0WxE#o ˂!rjc:Hz4gR#m?ŷR FVzg' >A]&V#NEǍV˸`%$uwʘ#'[ Tg{ba.鮆Zxs'~Kfzv.הZ6ʵǀ-o@pc"%X RʰʐUIs]_#%8k:> $YI 2.͡]XEn[0.@,t;n1.nGbۊ\@#.-k7۟0 quu4р݃"z1q zGk&zbT̤\IXb0x|76KJ3BSTYASٽb5-us+Qo!Fu– S\e]КЊe (!_Y>p&! 7ӥA{*4pËEVhN { H kC,E?9>VL"ˣ岨;MejP:6g#ݑYHf?l ۯ8y 6>3kש@s8 at \޴NIYUG_rV>$ CIәkt"?Yhtĸw[_W8ZRD_ }rz[e6옪Tzeyڲy3ؔajz] ez*o1np8;Y6lτSJYp$>Qy!Z,*! *Щ@r6 '\{_S%]cI wB"(#hjQ%l$[zد~Vj6Tm9R؝,bMj9db8e{ &[e)rQUTOZClYm8=޲Z0d_2 Y ?ypw6wqҤHGc7 6sV[ @ַvilcG,\Ӗl?W{|SO(z'?_>Ck0irf=s%fsKBԄn+pK`L$,y7fȬFD%) a,C@Sg) dLQY`Q`-4)0jvݺ4)>OŇs{3PmGD=~6 ʊɢ駼kow\0 Ӯ)ۼ w5?SfANŗ4I3$ !!%I" G AR͈b)&G{pYY_p˰xܛ8a-j=]A^|vmMDWs% _k 2ip6R؃tbvJ:.tP瀶S{FBR3{;FbyCSQ~Xf)1[Qw*_BWq_[$DXBՄ"\H}܃@tz]:oc~2uW3;߆_C Iթ g9whVqDE~ᆊU*"qf\y!S 9GCr4t_2Ӎă"-wZ/A5ܝ~hH\HˤmIvӫk dtu1af-{5Xٓ[7ԟ_,n'0K #t0#=4fb "؇zuO^XP0:'0q3έΌ63njN# `lvak^咭]b*Aetaz}Q7ɹƶW;Cv {2K=mٜ\BS2lǩ "tZ~+Д`=[RL&//ؚ9re|W/-0!I7#83q>RBg6( :ܘh:yx" FX^_wdF]/%.A9c2cwozHa.mJR_5qFg:+,3 Y<ѓOlmRۭ8Iܜ )~=oVt13%2e+slvCІe@qoqވn/yŽ}[I0mA e)tJ-Ө{Y7E 5S^b~׹VUȀ>pos5GmfN&H/eaTc+c5,xhŗ.Ced(_ H0ĒbG`cJ`PEomV╼.d3_z!tGzY5dx,H_z-[)>=Z x2-.3ɞbb!,`@C9N=tAcjm\4ױ[ԫoIR7ubW| %Ry!FR$ߘanMAm凈PbrF$e=u/ʂQ7*rHB^,e UYFx"mu%|fϹ8r-sƖ\@ 2ǷxrK?(Vn֨vx >}Z~w)^hEWzL9g'IFFU|KEִr+Ft/gfmu*Rps֯60-6.qVz1^mM-=HЬWR$t< ĉo/eWf&wS%3 N sekWǻI`v 25 q/!}1CǵtȦ{r"8LCSSВ^Y*t}ĹjȢ!?<ޫqaFY¨9T0!ᒼVYk A^cˀ 9. #CbwĪ$'I:qwA!3>iJZl$ܵy6>#?JJe KX[Q'jt+On9Eͽ}o #{cx xOڤAtrӮxx>ΡЮE#~x&iOxť,ww&x7]Y 0.@0gҁ"XK{ :UCe}(qx@&*)7M _Ÿ mi,'=V ^ xw=!}v>hRfx|ұl<7a^!s {9),{_$oEA?i\W_lXL&#n ~55 u@j븛ch2=VODЮ(TD |I*&oke7)KU.jDO\F7oB6TG p t*һq\q"-9tgGͫ'fgc%Vа'< c Vnz0%ň׻!^Y.hM׹UzGndjڄ)aѴ% ( ܒ'#t%F*%sJ8d}M Jj ˱pkpa5s%vՆxS]R X#S5.LFG$!O@JKapiaKA)aSsuDZGSŇb")rMG'Z y`()AwC|sNI5z2ipG:hYݚlH"=݆$5kͶZrLR]!QXw׃d bL'+w' Tc>偕Qm"j*3G?$&)yq'Q$ $eINm_&γ5_z"KG+Y/|uG87]:B!0y MLd*+G71=3ߓwaI߱0/b]%N4č] >'z1 ZkG?7@gF\2W ,/S/~eDԻ:rR H(2lo OMNKCѳa7728\|p )n72sl)ɸX] @'HX|VoZ.\ -ٲgݖ#}#q5gg2Qqa:%m 0w)sd٥!J)Nrˮ8<ߨli,0Y< ƙo^% 3BKH:& ,tebP[Ki%&x/g$6"!10$ Dʆ\|MD֥ϰKk"D,6 UMl͂r-g>d:ymip_k"> XyuR V #pnY^huMDH6$0Nhk_6`sTa1%q̋=midx2qLx>^)<1F0BN`:1JM{IpQza>P88PԴ\qjR;{B:Zo67# Ek7! - ϧ)]KO#Ӷ [Ǹ*^)BYшrq8cVg*FmHnJߴr;0/MZoPd`zĎ+j.w[}iȨI$Un1\oed?X$c*7%ݧZ C(oخY@.nsᰣOac-)u*/Ƙ ejpQTQ~]~Y=2/"wIdN߲]9ae Zjl~r?hi^TJ5,b}CBK {E6U3Ί_7ͻb`,\(F%ha +FOϸޏ VĖ@Qo,CB7YIt@v5,@TB(rd2 Q`7Ku{7x pN o=\Xp|ENoɷlo'%C)ckAr?5KhVA|\QVLtaO#.UMZIjq>dn Μfg!yo\~Xg\0J!X̧5T!y~_uO&{A!89d @Є?zsZfGP"?!GC+V͇Li Hj* 17h4^|uL\3[ř>DL7Oy_g~o³JЦ^!\48({pݙ"&{"Ha@Np {rucq6\"}1b7b^~g0kU(JS~aӸV)") F,IwoϸK}+g5QUl16C "3pX!zRez^gʎ0Tt݇R9,JrkN<=0w+-Gz kA!DH.vW +'1%tW`rc*!-2@y; uz u聆Gsw@BNb"&᤮p-;T? 03ܔ`Y%j\æ-Cka6c_$mY\[X&gY7WN; sd`1%64ʂ`dz~Kv.## {o쾦֭蠣\tuZCߛ)|lՐt|Kxnm>tst^(k=źf.}?oWg/wnAn9hH$(ĢJzy 6`x}'4Ä#1eԠ{;FCyKP 7giwT8k.otҞP4bMuħ0=,ě^$H!8^Si{=5N `q' g4e<'Ro)iS nH# sKx&7\%Y4Է1S@3l]' ltΣlNf-H:_$XNYAξTad5P@`\' ~Stm^i2osd$kFEt+p[ٔw2Zy ̿ze)VnheD绔4?ߖn@VD =}*hgx$'GݵWxcboJYnVQ-?Ղ'ǝ?˃ͯIz`iRp0OzLKee[Q:6]\GM ,ѽ2YGQ4fmϽ}~p(U/p\?Ax_Ljf11tX \ݟL3"LF jΦe >3 c#ZZ\9:xYl0]l_ /r]pv-nb+*"-lZ Ѩd\Y_#AE2{h=Yb*MYJ(:Ğ泷 H0jVlj.GT#Fzͻ^?-hwB%]L葋2jy8_%xi6-H,~}{g%rI{bʈA-O`Gmgm7:ך _seq=-FJ2^D8Òe ;sF,s`Ϲ@=O ~λt# 5I 1[8U=\Z!߉9Նa+k+xXEI=$f^NV2NAKSxt/sH]!wNN/=Ay>gd텵|C7eU_uE /H y?q7H?#84nٶXuF.߉l %LfæK׫~!8 D3H:D`߱ |>G f^  aݷrd&FF.U–x¡"Ǟ5KTi՜| ۯ3uȃ-Eh6x/ʒ+#}' {p4!^LT2r!Vo7)BP[3g$zL6[HPDNjBݿ>Oh;iiR#CCg\):^-gp#jـ%F%]Qd5꾨qrL.k r.vϦ{xM.6< lyղ$Yi%\:?ٗHcǍg{_F@lP Rzt ׊Q|U+!}?sg+ #&ˆZj5!VkS:3=*FaA5kڮ1)yJ1Sokh7l+qγ):B{Js:i+b=00ZM -8O<}sڻg=VO{Y a)>ȽFY+~$)['3#p\o3ڶz'RJo}JڿP͐~,pɶQ_<$ iFV8㏢?pt( g$8* RPv xCwxnJ]IpQH0ӫZ" V,ݗ IT'xq4<00<ɍkAa=Ye>{y(pjlXX𒨮?v늱qDN o^{yYQSQDzLo$r,wBy ^Q]ow<͏]x)rHt?$kvX!˧ﻃeI?y.d3a6FY1)CEH>6E{}V—NgZ9>߈BvfjlT;ou/zQȾO&5ZpokqFÑ[WRw4QddqMiw_mԔ5'Ff $rLp]ôH>g 1H~/l [hi+{p"])Hz`~@Ҟ"MO(@\+s:ƹKm=H,ZWgm9NP((K!s1I/)&!W-BebzHG}|Q.4i_ȂKԟBz<:s 8 j{+a-z8"HףnZ+VҷO\]/ ZpG%ɄFjQ /h"yc1kX8GꔜJ֞2rC ɉRlGeYL~W:agfRZ_c5J$w*ڱ;} 3)6K\JҺØ^ Y35 HSh;ap+~ ;G\Nt1`dlt!<2]Z߳Q %Je>/5t SBoc4bEdau٢Ab.,ْU !RY{E.3!#0] 7s(^ۖ!KR\B}4$EA%3F #@Dпc ]-=ޑ.nRzZ[yXL&:g2G)=/E#K( ;^ES mG/ $޵ *y[ Yݸn'K)8cRhxo| gL|Ƀ^%Y>2̠ z&>27ԗ]@v~64(%h CEf63-a<[fŸʋݶ{\2R"ݘq5mmYϬ_)B_ FA 7_/D4;]C5f!F%M4L{YwN6LauxW-D]]#w67q_lF 8prN?_{]破q4~?l_jydk|t7Ň 8;[N33nS=Yi C˞Pq7^/iqvg~^R|"Ja*-A0Vh P+ zt✾Ar\>ėdsj,P;z&(qަ1K umDzdH&:~$j+*xHwbNNam}(o@; ς\3M%5 VDun;bcij17/%Rpߚx%4Pxx~@ o BHs͙H K\ ԗOen/{LjKE KVЁ8P Vwӈ o-˲~xG<6LX"Qmsէ{Ĝ֬\V1!4-;q N4"s$?]#9UǓ|f>ͪ7M3giDt9}߭sTRQ@4I@pѦF -ߓ w*gϪ ׬% :Šʼ_o_1 *c*㨚CD+a0n{ 2o|S|{^tD;̗vkcBP_ub9bA/E>Rƃx"/%)%x?a iҔgcBuJ sD[5,DO8N;N ,Y‰,rtCCJC =y mSFd8trf ՇٰR?FvlflF ڥEx^~_G Lp{f"HA:g;%cbu?CPJO ˟Q/XafH4EĘeޒGB#QCȱtZ_"S6G@wj|{3]X1w6]#cĶ؝Q;k]4 D&.g ^}D[\ w 5-TGYTBw%֪.7,{oLvW/L8^-x@{rq-})YK*S%mWQJ({#MT]]%~R7n3J"+3ຉGf%tKzç/^~3PQYnнS֏{YO 8 v_p-Fr:ޤWdBW[:SQwe}ƫLYKOs$./"O4G)R_9] w9 zH)YتP'hԘrXAŲ?$tK-(>Q{$wN2ln5(>3`5:\d2i\e46jC.t+P,7, w2{#ƞL~oǡƭHhpFNy_0rOЖ=)RTa'6A"}L2Q %f#84<L% r?Y8-@2 UuuS}<\BctKpl+O C tOh39w(80 Ń-Ev*BipLD3a7'ב%1y0'H|h86)%6PUŎ﹌/z>:\:U$ևe׃q[&MqgFm$jkBs}I !vBwOnʺd~L'DTe8A y)YߑAn^X fܬV"h$`R^4~UXZ.p'ՠãhFvWX5 *;ZT'Y% Q77rӤHF/Ȇ¢ W13vl?A(sJo!ތ(􊉅L$1l2@`Ô/ձR>DaFviokI˶xk\~i;|^}s=U4&2c5[ x9*x{tϝ F)e3b#FBҩW >Č~t3Oe)w]FDh{̋K1<|@=KS9`\>0?Zxyo"mKOg[BFUj9MuFퟲz $T0Ǯ.Q;i5^h خgJ/F?wZ{63G,-)7W;!VoWioNtBbpv)&:]j\l 5zMXsJ$QA& -j2ɵ)SP4frs5fF&\HG9Z YhIGO|osxQ 햀./{6WֳwNkb7tld6R6`_aO8;_uY1fa+i鈳A*:fu-U\. sL:$s${JFS$T^+gqt0) x @{i:'wS),с3o7vuHh ](mQb@ha*x9ѢrBԅG\"g;bO 'q .ށZѺ^.$|7 7S/Zw 8k|[CNԄQM7h;L;@VaS㔶 k=0^@G 2QLaa>Oenl{dBd?l- 2Wy7+e:XyS\[tey98ǐ)GpnTxR4Liޭd0!aF-pb84oW_€}B>趂`>I!LT0@c.HrL#ޓbI쒻'XhLB}O,ڱ,$f DNQפ e6UMI ?Vf"TTxrKD Jj双yR!XdbO&)XN*b6#hxL]BReyaS,jԃx̝KMTC{pgoGʖs-C5  Yo-LO(!^\V@khTlc `G~wϨʶF^!z>Cj{(,F3.4:R6 # +إhEI>}\0']D^z!*:Qx):Z^.@XuR%>-v$>LʁeueVoGX*C5EUsܨ;wjh'AF$-Z[z(lִ,'z}o7^4`s>,4U.J\GRv,2_4#D"Wr_ݰU(3`Tʁi~=ͭT=A\Pxj)e–F!ZLoϳP gi Zh:<#YUТ}R9uyS<*n Z-tupuA쾮uy]8& o苞j`SU}L5i(ZNܶ~J헢kڼ\<]!{U &Oi.hiReB.;cE`KO;kALc,R׷2۶ImJɇ_`q;|~zǒ𴼔'|?,c(Zk9|+Kt@΄O4~C>-)dNK[!~|qȍȎ,Gy"1$rYqy ,X+hY }y<+Fwtu]HID_ly2mG{P]zF䂔IW vS  oC)\` ͤ2A'5q ;~J3##tV,޹"X>\2e! Ëya0#G*@DKXt2zl1͕hz D=@C=\6|o/GY!y2 ! 9>Lj8Bj{8Cx['UygHjQ)I5sܛIu]c˹~M[qFM 0 8briX#=k-54jtQЙD/ԡ7lS8T{ ^>m/Ttx[?uuN<Vo7j6̯I4o [JSI"NV|Ô'i0[; "g}aT^N\NU-'yv_ML:@'JGFczM/nEb3a_y1  q dnaGt4aݑe|&`|eJ+F\Xga3~+Ɋ+|&ևcf"vcYi~mŇ(J_i!E$ V40 7AHZUa5!:Ô|VG'WtaX"򾃱z-BIC˘kҞ(qt0 \wq;hi7nC_C2%yY7b>` ^I!:~ x~QtǮ#~hH'RM}%  ۱ @& !(֙H+pjBx<6|Mdu@{55hV} Q) /90hD,DF YД)޲!Ճkjpdd CuTdxBg;cjqà 4uì3@4qT a#~b4O{WmF )*c;C{f :b|;猥KuE `rPͮRߐuh'}{Kq "Sۣ{(?O(oGl 9W|@k/o_»Z"aU6R}I,W}P;ZG&eY@ Sp xLcIÎXK\XMj- xbT o:KL%./8YY?L1F3h>l[UĞI69?z^BڰFɳl nv1#Z c`Zndr/oK!ncٱ%8ϷR{hoTIcjYK|U*UvkHfS'乲dEhzj#'Fb Er3^֍L}aypJ 0:sӽ# Z;xdiZBt&PV^S(pVB mj9\`/6WlGOTDt#"L:b  ԡ8U\!A%J"+)QL.&FcV_vRJoe|B+ǹ"~ݯn. CL],yX:v*g&|DY%5^.w 9K\[54/e_#r7;ym؟;uLnB6s4~SBǖΆ}bAjG:t ͬ{vd Jn!=dz=DP/ Fçyl?.hS^)U;9ɀ>"ypAvEpHK6FU]-*e\/L;)" GI,.sڅr0ϕ6=K+|4/ 1 Q7nL&ةA:&EXR0135zy sccX_TA*/ac F˹g&7\"4yrZBhZv~cBƥL'\B*luo[ecl1֪v0mψ2f̙-K w#K2㣼W5l*<&0PnjHt">e(eñ'8oHyY,[_!)X/g("Pue+2)jqiD"$GvJ9/ZfbƉU1Pdè"y2ttq. 2iMoE6[ep:3d{DPZ[_ lIVNDN Yxr}<9X5z|'&V!nKJn{.RLabxnxaާ/ww fݫo  M<N0*=p(r%%Ӕ؅4f,}g,m2L߸WטUJ-#>th[*N*!HaqGmͰŗMa@>t"FUWL[D E?DB4UN=ɢ H?aIfqRۢq(vfLkl?iAyj03n'beY<_AwKuڠ|,:GF+pA>JB"- 췩m'uװyTύ6J٨`7ZG$A=Z!b(t!&ۦ4u ];4lMRQ/ R)u J<%C jF%+@XtqI0S0>`SQtaE"԰󶼽 D@efpQ6- _yL>,rTkweW35UhC9-_k{wJ=2S;1x&$([5rnF@rw30+ c5bC# |o:G+RCcbq6x$f /5.={`ݓٿrԤ vG.M+@?T @ɍMу}~„OKj1P43咳$!J)G!1 q-ikQ!#AHW=BO @&vs$'OYc/ZOv*or{h%GKSYZedEC/$gZ蝵Re{6kʷN`j?ߝv Y1դ nQOC¹-*$pU0|ۻ=RJŵI^+ǦxΛiFeUD0GQTKmk)!fC<" F,CDqM:$x` gױ7W>3ٳhkKVE|kΡЫt2F:FKGdX`7N~[J֞xOqG/Z|0cE._vw0D_-0R#m /)ehgdz'U\.#IeգBE@Yуj&KʓxcFOe>譇^Pܖ,-^{8>OԩsE[߯([E.\b\@;fQKxwv%{> Q 46K|Cl )>-QP?( ^ CMe<<]2/]!l 7OO9Kg8dqt'|-8A (%'dHcoUZ0&lIҙY|޹7Vʵcjl[XTN8%Vkh[pqkx{ %CffM$x3^C>;ěԥ0waH\,- $jv=҈ ҞI}:9Ez~djHyY/I yhQ{ MÔ؁Ìpd ~q83VԢqhJ%g'ƪbfHPSg{L)<˺,_ KX%볁MR" q' Lpdj ى {I;3NXsxA{iWa oO- a]10J4WChjۜ=Аe4_f_޵<c2)z˰XCXК)O@zƇg ɮhzCȧ,d8IL|q1J EWEzknW "PFR^&+ڨwBF2/A睛;3/~_7ͣ!͢ˋ13wQA1A%n"݋=`XTW!vrF:liyFNe;/ Յ\I]v[Okvf{4}"W;>pwX4cEEv q"iirALv"_rRn:Vaa)n7OUBw|W-*Sg!(0&4 WHq6^wA !o4x$!%K\8IuEw[kS87BR<LS"P,a%_<<3K# [o'@XRai//NClY<%`W-79M<'f^wW9Er{"Vq1aq !U -jA>/5N#ۤbMRЇˍ;3'yrɜU |fQ X)4xA iSbgɟ~Ӧ/ a0i^85e eQ~{$E)}$>y _ȕ;R?[H 9QJޭ31ݍP"-lR|^xxPQ\cb~ٕwK(~})Qӫjb^zڞ Kh=$ܑXi䤪C8T痿{)beFFq qYTYݵk)6H&#쉏5_y$+6 xA4V>ó`B,Holkx$/%718G݃=,,hX:&-PCb ٧7J(ޛe7V}-+@us r)?ɭ}Yf 'Z:hՐa|=̅b|\ի#; 靼Wg" >qnFX"ى&9˸͂8 ~%98LR=CԲ2 XT +%|SdL|}ɻд!aR{,@Ĝs{p:r{jCJ@{N a'#Ў*~h0X>w/ϼTddh1a KTF=*<ӻz7279Ɵw&^BPxOw GZA>wU" H9Kl1tlET 0b5AN5CI(!:Ăf^%: TO@!X Z< NGSjxǹHzLhbfP۽Sjrp" o/>p"ʺc|ŞFFuďKa.J̋/9^qGBٞOޕ h+ȿ>oo?_`#5ɀ9A7D|Ȋ,bdfN#֧޹dlS5`NZA4u^8VQُXZ8Eg+%BXٜ Ā9pnNbK).{"b''ɰ5]@x\@~?9uEM,NfC\{kn $J:)n{ _5a cO OhE)4}%"3}2kz3HqC1l,o{6_ưai腷RYƌ*EnָENև2vv72p.sS:g(xEк4]"tp%Bd4:6qxX6^ ;ȇ|.UbDeFnڂ:´_a? !U[<)V[2@v<,vFU7&{C)3mz`jCDc-q7&2":aE =IgmK+fw^DQ3fseLmiFӏ v۵|[.4 "1\Hec1wu[D BF"(s;fPO0r~![lY\' T'r%RhE.3ݻ[H:a_`6Y?WHOE|.M{;lDOĞ8&d?J4r" NEE-J8-$渍QeYE^O]س15z'FA4Ay  yl&=|VRlRN/;TNprE?Z˳Yf}O-:o&M=<̡Rk6~Sq:ܗ/Rj]hPjF؟Qfp+A|Bۚ&(r7[Pu1ޝK' Qҁ2'QʵZكf\b, 9Qv*=_-39NR[etwXpNgJQNdb-o> 7uu)x%B !嘻%K䂙EOZW@hlalb3(rc`͓~Ԁoë@-Nu 0dN XH'z ufߛ+>k PY *Myx󡕏Bya}nR [v+v#fڗYBaT0rځň7"ԇAq'L e0#ĎKa /w7vu]V} <t|eႀ1>Z)+ĝX DO2$7 FK7dʆm̕m|hpW njgL4x%8 69 [$+pFkFa0@tȶG?.TMΞ2Tϳ7`5p)@&ǹGɘ95cW+ܿ.<|-s; =Vm}tZnpD)1N';D 2rN~padysW3I;oJ7pħg&N $&QƭuG8PBjWbqS?j- *E,0I?gFffSn1^lL%`Ü[m aa3QM#%U/RτfNщvn6DUhaqH6ZеҪ\.wlK41)iTSMhB#b ]-sN! r0۪Up"۩,h[Yv%$~]-n(wHFi# VZ7U}R;Ӣ n }\FUGYyœu" ܀[o,˔{'G!a0a %QDw۔Fkl2 Js<JX5ʈ"Qɀ?/>m^p@ W% ΜG͡-1aL|8ѕ~)НW7_@u0q^$v}aP `sr&dR,m0ry]x8;DIR 3D3^A2 -\UR: ݢÇ9Ińfw8M)$25;dW>)ՆEZIi np&;e&~0=}g&'l*7T숛I8FXU΍A- DŽ$hXτ \ U}'6x-bp͕`X] 5XIzN*㨠 HAM*_ ];yK5% uڒ: Io Y>sdAo&Wބ.DϭB鴚?w#}$\]|L9pߒaB A:>)LWC@7zF>lgXDVɇȓU,9u Rm3^h|e7Yj2JxF FTBgbf`rh kC]إQl%Q}uŸ'2>:)Xj 晌wI@$>/x$y0a Q{\}ܪAZ,:lgUK(_G\3rV#jź 9?_|@wEN偰Κ;-FoOR 3k!j=e(okj+s$s\A"c]D]-N} ΁g@zqЙE3kGl8Xqg /-IH/vkhg>gɄ1Z 4t  tȧKPE xxw^Bi?98 5T9:bH%Xf#l T緒v}K#N"bú3 nDjqW-b{Z4D5X J=~ ] Xb=z Cs(h(/ OʛپxopbeAuTLCss`090瞁c͵FKXqVy]U~]|KJ7S Us=IC:R 7h _ƿ?&oAxR<{HHM0+ TĕQ"-EYgw~6{:;A~ZdM^A/6viAkEf%ג!/$HLAUc.,n{-B)rT'L81we7=Z6_@b1h&"*?}#P]!T%3;Ik>v(ZwWsbmVQ,_0ꋏQ5@5kv^LrkUYiay Zh7l=@>*_шG4X5FuY#B6@ݴбSN0ͩD+0 ҝfg~Ɇ.F Ymjn11x8K#F\ZɄz\aȠ-$z{S;v[eh!6;/[) dM2%zsikI~G@/`Q^'هIꪘ^!#<@Q=>ЄϫcłlmX:lGٞCk=PjdQ\uqCOL՞xRh};noCjT I#ZBT e_ K"+{ZEViƴUQs`KOG*)Qfd()q[|X2nfjڐ5ZN_FBnrZB?͢E3jx{s/>}& ieeSmWet Cozw \iTH=uD-!%)H'Ut/q6]90AH)SuEt w$E@VcFda2Ảl"Ix %ye<``'5ihj'H/^^o׳˿_ʻX~<]TsC-c<ptt7# kH_⴨q2_a%~wSa=9CЃ_[Q-?W8 @ٯun ÿFq'(T4"/#ZӮyݧ܎njG6w%ϳWXm*D3ŎSR&N8w%@}kkySgWI^K:no̔B$gng#;De^,²-DO_uW[~bJp/ӫcn4HpڡcB#o_@^9\4K+S8ث lNV-)e׎Ζ0څrV th0A>/gT?S-4wqwTߪޕYώdv-= %5u@_Ok;9z=q!,&x3Im6}]tR%ϰ=Gȍ3FBXOh+pH*2پ6*3$k'wvmVj3&֕VNJDD57$U8Sq):K#؎U9ޡjlZ̅k?-={Z~ޮ 'eww탂Ce&Ȋk|jo3bS|6: J_{/Mx{0hlrWoŪ/꡻yVayd*@*y-^+Y򭜚p`1߭Igb9}K勼.L{eXA"uzTIG[ ;sr/Q贓.ė#ݫ)-elyp3a<'N[P8X~cT.1'#uJQ$GhaL `LRjY4TCvkAf]CQN\ͥ>Ԙ9*_2oU# kgm3@i4IC">mFU"j,щ8~QlHI|nhFQ@T]2&i[\̈́:JBhC%zye:b-dǞTy~Je(:Z9Oq5A$S@uUX:$a1Z^:78>" !ph@eeqIHږL|8ՔݪθN39G$mGcg_-^q,394;}k 1&jqO)עX"Y6%C- N׿GdS:7.ɛqW3%aJ9pn~A؍At 7eewqw] Kե_L_FDEv&U`O]+mArq7 x m r2ԍ^H$?pA<~jz%KoZ&; ^}]ABi?vp!{5/i?0'a'f肈y8k6xY,ٚ-+Of2BힿoBzbe_*8)P p[_%?`B?z5P^eXh/` :' !22M^Q&0֎Y-(ܰ\O̢@y >1H|"Ty_+w"mpunvJX/:$cM8-ʘO"h(N8%Pt;TNth[._t1 )C(ed}AtUƣㄕ #qӠ5vFƽO3G, DKᶚ IlDZ$4I$;!VV#^ n|,i#U_S0-P#S,fS\8WdKq{ xT:+5zF]M'-.v˽y$q+n]`w8±_\;{.s,puƎ DV&JI'ܒF2ݾTwKBsk݀Q3'좸L5*qd #|QN vcs"\ hz}XyjN,xeϡbe *i**);׳_ɳt|ӻS GCP; r T{Am+(IO(AGaM xѧRI(B^l"|;o00"Ě6tЋCZ 9Isɸ` cF*" l;qP}bo{2]jIo;̕**=埢NW p,[*)=A g!C64'1 Qyg|QQ/ZAiG*MSY:/FT˚t`A ?b.6=1ze.Mna˗O1b2u6,b@TU xǔRpG͇toN_(wB1@Ps߼K!oAB. 5Ymtn iN\M&c1s^Aim,EK+c6i%%(ڱp\#ݙZ5.<7~b{E8Ѕ!uvEW.NE:-)@* GOMie$/dű",aJAx!$.Ph#c^I@eׯRw'Nɳ2D soke`x-k$]4A~dF,UAZ s ֎\^qf:G%x,*y*h ~j P.oV@)'5a5*6!ݫ,+{ Kl t0?h\-ѻ*F2gRRXZ,_J tO7qp Gd\ 8 |N:X01{T6<"'i(dj';H|u!HIv+&]uȅͣj뎧|UlFS/sA5J΢pz(P$zM:v4B%%V;D9r@wp׉@Biiώjۂ<VO$i<*6%fGQ3{09rtI')/`ΔPrm[@z3۟Wp -@,O=5"f?*,T,T.f$ ƶіcktX\u3;mANtfGH+*0B] \XKFp:#j$иcaOB!v'j&c,&k*Hω|rP,awΩ93[d>S8祒WnQC;9;8YjBﱺREY-u;A0AEvm yu?@0+ ce$PFjES  ¿*V^if4s}a2 KYBOK2,oGivso6!ͼ E^Mh.ؖ(=!ɧkblF6Ca&B'Kq #E%KuYea+/Vl+]j]:2gɻH,{E ΐ\ 0haen|LLUgHxY @^S Ǭf- &h,(+_`DcO Wl. lN*{Uf~` -d&XY %u2,Z3<2e%߼d{x{n%ijY2WH̝~Pw-OH|LG2J|1jlnT|-xI~ʲ4gtx_Qwv1nցMJ`PChQYǤ'}7m?ъXC+{EU64}D ʁ޻c_jMx_E+h{9i8#|s\7+ECט$+e=w8Ckm +✰^4D.A<;OH2;2LR'm 9,5O:^ʫP1mUe#-&1RI M|D #ub!y0e/νH?Sјp΋€Š+8l3{V7Sz$*F}#@>d@-);kMV:=(0ZJ!$'ޯod7ŹM:4Hx"xmK8)L=#|!H>Fz^լLmp$%J1 PqlgG`MVyrdjD; .ΛnW8 uJg{T #ºKSFg-,d7aP o;ѭuH+PS" R0nF?GZG*5 6jU|ã[~L\ҿNF8]y %jP`78JV gFCsKC.LUʝ F<=HxC(INkY(GWT&%>V͈FPcF003YIkb-ԉFI0+ G܉)gij1Xuw|A 0@6Yű)4~2no>^&/![޵/=z&#kFG`+ңX4aU\um@9n/[ſ}ܦݜ5EUyA\69_lu?5wrQA3%\m=+3#따뢥}wVixj V&o],;w$$ɪa/hE^`U`g[}tX8@3&&3ahؽZIܐgA,F F|=86xpe*ȦI{+Hf3Is^ 0L'ʀ߲~AHW?0}$'l6tw]E5߄S'1 ƽ r98OqbZO"\էYʆO zEckʷ[Iٹ<1sepd>Y ,1{Jl%w2G7?u&G66pvI'[y-_h@tReQ4=CMn!L{)Ѧjvja?0n#PL%)yv\__5DV '"I?'lDN7pQFѐڬS6ۀ9>=yE|'>%T,=s@[m&fw3U+hGBlXwpr'Xq*cIso\}Sd,7 GL +F T%iV72<^h,遗e7,+ih|`:~w}| ΄+2kATHÉ[ۏd ;2͗B{nrqoBΙs:zl`qm%¡Vuvܣ|W=fGJzD4;(~s @+31HvA98ަ r|}&M9]){9LdX);2~Qj&f-A"a#uQsZFԴq*(HǡX*g-ˆC^=P*̧% x%Kߒ;4F`&iBNcf/c[7Hړ[ܚxIų?t鑝<>ck=/Q"ﮕN&aXFoC! 8RwA8h&K>I2 d rC,`꫄uGvyZ?B4r=IBc*K~ił13{J߁t<^{ _xj*ʞ@O,["Mԭ% \WszIyn".i+R[Rj|Ss+"[piLޯ*t2JWa)w|EqOWgy[W8&'<%J a.7|aϿp!l_T }Gq #: ^֐Ev[@-Fl4;C8n' < ftoƘrp4)pb)`2.fpof`P2>C>,av%]P;tS|ι+*!&"=,,j+5s7?T=>ٚvD ˝!I)7ܣl?&Dmw 1E\+/WϙAhODywPd̪vb'2' !oBGKh7}io:6g~L^OW:U%$,e%dM˥ f<\z{Wp uiOfl,}{rCBgM}ߚ 'f>tAҌGpM[,@ϗ>v M]nL6,Hsrh gКGnDžN.mkZ`rqlʎNDG# 2Dc^8v07T#lg06rğہm<+?.3ޚ>|']h5xAd/clXe 8ti#bm =q_J o'z]J߄qpAE$Qn-L^MA zzC) 0Pw=yOn%(}{Etf,ZTw;! X*_ST)ɵ[3lK pWb*'d4 bw `V̭le򛮑y`Q x-r}GEfBMfɗumCf3qn?' u*kHS0]c\G=npkLę4``O2MJZ[eAYt}_P? ;0yqx?l'o&6a0n]}6L_Kcɛm. z2: ݇̕LSb^w],iz&Iul'<0/x1kF:Yp]!]!UT%A[!ͺ`M ~–R7ҽ K>\ ]N+07l=r2j]~ P>v2_%9Og'GDNX=ٰuaPm<ӣ  p" wN4?^z. r=rR4A~VGSfİ+Ɨ:Rb\R׍bNEÿt#kdK_h0NEnq\ba K{)PBuDKSt͆$mkG)p][Cj@͒﫳 Q 7 1% Fħ3clpY|p{?ÝQYkjK[&u|Q R"GdS:B!Oikxw JZed6)Jpv)2jnsFĢpN0GǺ3)S;?'G|@E9 ٠+c\H;JT4A;zX?⼅"(yEdRz*pTq[h~UZ < ^v|#*# O*|T>h%U洶#I^Ƀ,؃,n,t'M >&J3Uh,h /+U{[]Gn`èk$)NڳYv,7xY!DY9Ρ`XHЭNnmz_Ĭod%G Y~y($ $(ⳉsb[sRӷjJT"z #݀u%SCa r>Q"0e~u5ᓾwA^FSL%.|X.aI/Bw jU-Ti\iIc1_KE[ꣾ6'7ʬPI:kCIN|"m(P6CW#暢( uX-ϴʺ! 8'U]*g~Zбd,eiX~3`-!NǡS`BIby.q7bJlO*ko[͈1K@`iK/E6{>(|@J( ^ A~MUȯֿ0DHaL:}/0B> ^s8o \h:L~q,J}6Z!o\շ%d.:?~ߧ! Y:R'0i%E>*CeF]B&ZSBl ͻ \ڌ=mr+._ՅDP9a"(lLgHN' J$٨%0q@:MnMB:Pi iID3:n W?M-W+3`~&]!>yȞpz=Hi#ArK9R_Fqo@G۾{*㚩Nө{Xs$WW2eoQ58E oV}yט/ߣFg/0 . ɕ`"Զ[ӷ>1`k@輖3I_}SA9/̱'7)U* *.K9@eWcdIwBs4E"=pp'nL;U1[\jHx\:ki@n.|Ơܢj(PdKOeH |m~od6`xB{O9:0 alq3Bv. f9!P]}c#)*ND_*72NTe }kR޿0V<7biid*ډQHaf@`wOw"qD8©JԳ}2 %$PF<~X9A)r=t*ՙz [M{ XiҬK:-jO]uDY3Z2IV֥&_ՂX+(Yƒf~A4^}5~~V]:jP 7Hz ='BPQw-v~"F0觍-+n2(.8WTA27ǎ3Exrª =.AG3xG Y?*REtK|_+^ q6Cslt7 7. r]yoV^40П-SXNAIi `07Ƴ`TZ̻iKxs;eRK16skTV?Az8HNҹX@cɑwl9ɝ SoOw0{T3K:Cyt9KA ;  yceI)yT ~QP'P϶9닫 i9J+ z *ݦsU%׈Iڢ?Hl ~]k4;0((ꏭ: "E7Qo$>B  ~Twi)<QHuc)nB3>ҡ3tMU7~[/L;m뙠^wN?зJq{/q)uA4,7pKiߴ@C n2YO UiIkMźW.w""j~><>v]@ sWl8.|6OA_I?[C2n+ $ YN@1/9Z9r2Z#G|rEk汿Pb WFDN&._tsebUۑUog#K35ngz,$V!KA"ى^_q)% wuRhF a[YH(CCHTr^]e)6DX pa&̫HSC)W ?\y$}"H ٔp,0{0Xu5 &f1,/[t_Cg2Am=m_CB3-Ejq͎ǏGT2%n,Gsn19du8ِ8OgVz \4k-ŝ;@xQalEiͽyc+OpcEN| 'S3&(dS30N=X2 mm\}``atu*-be`;C= 11 @Z jxh>/R9̄D42+9ؔN36Ne-CU}qEA\MϊDw|>3Rs`cv#AYD 8K`IОCbq֞} [qɾ!easad- Tc%)M0("`%J:('2S<ľC@) /97@y4qd&AN}4Xz'x^=fpaXljrG(+3f}TR2RYeZcXJӑ(S % ^ݝ=eKqdb.dKо ܬ7եA)zz%ë;8 I-  j0S_3"/۴a\DNwc=g-mQKE e'-c|q1i=>BX|&o\j;OB,ѥ:@7Bn(oįK<@ '6,̕&0P9*hВF0Lq傖Dw= _/jTȻJuX渼4闆54x˜$ c xuBZEm3M R%$Qy(i|`[5J%N e=iJDQz=DiE({B$([Gt9Pt6t{ԭ_h&,ośߘIv$Mm7}+X.Q9)o,{_HC6vDc >̏+~=>O쏺8=i-} 7m#?x+J18M\9_OzLf[Lp &!s:~Nd'wⴶyw4N_R[x  y.ɡʦk|ⓠFweu]qc6M:%Abj-"`; [;wSGt=u[Ћc©Kv1yqhn_Q;Gp)8"P* gmR<67|u!UyFk1zu/R>hb3 >DB {hbQlV}sHȟ譫W0_H ڣv%ӣH>9NZB;mH5i`ReO\_ w%O(+Y:t%op3FEFPnA]@vlCT=dE6`?QhdFc@z(55xdQ+!J3܅ڽQj^bPqשyG58ͪ&P^"Yu al@ʚX[!8`@K*&C&?^9mF.͎K6@ 6zܝ?soWبInXCq LI29Vhvbj}70@hbr|9ܡ?YxЭliο]\VVeh#_(gCJ3hYHr y=* {bvA6-miZ,D!҄TbRQ<|x, "ъ{?&i$Mxh*8 >80,%a nh°hz#t,J_h;sWz˭Eu"q>9RÖ梱.ȡ6ߖE*hqdc;vT y(԰?u;ViP̩@'c-#x>XQ,C6"ę|i̽?Xԉhxia2ɒzαГR!&D??9XfܹוVgo|~2v<3Q?YIhoE=ŐT P +č_~cx98L_nui ui᳐c4*kgcB#j"627;7УE2_A[г3۞ XEi 5p6OY ߯S$n i9TΎ&4.,P>YJgأ/b <ԉEtuߪKbH:AS]L`{n%AUۙ`P4;QWWsdwo(IGCv ;? grR900J\ξU}=oTwg]<.5g`&){ Sb i?d+UHU`)01AyR= _<j;,O‹a\aU-:C ^(wY_sl`Rɝ158e o3SRبTMَذy˰ l38hclWˁ@/ {E^c= zMnLU03=ݳp^"qIǺ1N%$\5Wf8!~/𽓥XY'[]wAd(AQRv8>ZQoGby5oa7`u'rP5xGKUZe.cbv<>p# b&~U?K(P5Y"5}UKi(lW4H~ؙ;PŠ3|z/IGFmwOOW<N@< ]㟞, nFT^K:;꽢ʤXP1}5.$ALb`+-ۯeQH>ܞ(pӏƝb MIE %6q0?.Y?$>K۞ 0P82Ia m;j=lP.mf0_^GuVNk;ê,zCX>|1|?kb 56Ew Y$'}yE( Xr+;I+6MSc;SLc|7w cZ g ;VDk(5轴n|4Yyca hP8΢Q 8z.´ar3ׁ%(;ciH9/N೹Z8b<Ϥ[3ׇ{`l 4VEf)0g>a}5Jo tީ]Am,>jfy\T =s6+:߻#>B^L%ͿXM *<$)E(0FO]}~;lk< jx]jDҡ.kpة[tYY] ̿_MdEo(? iW}}~pf?n,Zr/Amuvtji~#vP1f~-H"{ 1\gY+8qqA<86"4.莺? ibg94\Ph4i|O fKGkՔ'.:ghCrh`K4:cXnIVU ټAS"?!醴% CUw]Cye  DOԲB,=}r6>$oS]w#llϼ}V.P5Yu.4/b S1ʴ*(1|Yu1L kp&OM8б1-#PyguՍ `U޻ȑ'-G -" /RFQD4KyWyɊt1!n^kZ>t(.Rn),["L%g؜d%tM@k8R{N͗a>mڦנE zDEI6 J fv"wP@~,2Ou}zbGq'b`s:?`! i>r*~z"ՕS@Jĩe;+7 6so%jqw[2<5ihCA7X e'9Pa{M:KCN[CdxMWN wLT2uU!"}&n&f9ڢ#x ZN,rzc߆W{ѡRԚ@WH|+ivmfX]m(i\gr>&cI2XUЩ̶a=\Ar8+]ꑮ_./:?IuqWBRYAx?YaԇvP7g˛gq@ ϛ0jp<Sl<~퓩;^b_Fc +DA=|)DC|\a0 ҖvP*_U_of9=Y]zsp2Wbxq=U%-f#e!+{ksgQ(-Oiv~Yͭ︳1]?t ]?JbS!cl>)~ٟNn'vBo"Ʀ2A1t3<LA/3RiG-Ltz$J=M5)v3afʇğՕQqDi]RA}a԰ ڜp7um@&' ͢E8 W=wFwfCBėJE-{{kH BgNm:; r?xwэq\;t?%ɡ#a(.ҽGV Ȇ%Ëp_!g]oRYzV$#ERFt* 8D>p;* 1+p25`^Ў!̍4k0gK9*7Gh-(mbwxI(5)%Q6 +?Z q]Zjq6?0S>E^eqzJry(I`O,i,_w摔 kR+ULx ѝ01x'Xq3 (b們 \{ U0(S!m lnѱ<qZkW`&` LumXZ:,u25֒( x+0QCKӧDcķDydcW_BuN_`mǭIMHI`GzGZ+9GTy1uߖNr[G6 *; 'e NS蓍 F‘ .K_V pRPo_?Ju9tLyQi@-mn #?$.DuÖ ;>QmOiY=֎DDO؅s5p~^h:cm3@ySX`LBt{!%%.wlE:_-CQzF]_]G!ItTVg7G` 4CN,azoAC)Ҵ Hj w>HF.;/p`hAPF![ҝwMG؂S[TM~xF C ni Ji;9ck޿_V55D<ƘpOI3hyHW9s>7+(D.qqi޼P.)'TYIU>3v>[ āA&L,Bfu`=UgAa oyT$rT  d1_9+-eO]NFF%呰꼲p(58Tbؼk)tG-YPvalqcޖËC&aD@ĺVi"W|+fVtǏ"~_jն>K*؜T'`@q}?.nqW b`uE2?b$"[z;6a)NM/1(H5 _OIMSiw]k]u]VW8/i%*Yަ{VK}!b^~[ l3@%!Lao³F٣wo nDW6 ~BRBfdBa!#nKwrԴzXB4d#ITIE{ 2m\4"%%5_Z?4{@X<6tl\B@`:O'~%b;I+BZS߫'E7 HUuא|9¶P,sK$xDsc,+>ϪaK0"\z>vwG 84ww *=33*=lp@m'f|34*OފܗSݹnFv !8=!bϠ?{Ef #Kk O3}Y5Qʬ7b.A"PXs@) |hmS!>~Y[naԲ>dNdr7Q'p(ZuʟK,'R0Yo8& @ꌱg( aY2Q"R\X D;0 84&cUWІ͵2̝5Y0Ԁ#΅f*9w-3,HiM&PUc`[锆$޼vkВ QeUሡm)w\U+I2g*"0iޛ={$:rh| r>2(PAu0l1# G) OywYJu37MR|{Vl-($J lrWN(P|K{ܿ`6 E<R'eQ &v8S@P~ϩwB74+LN~Tю0S on JLζlPG!$MZ/ŀ{eM\@ˡK̝M*o.x3Zh#'p$XZsk35\ICϰ]q(=wћC CUO3/Igck{l}V(7DnJ5|:K%9t_M8ٹNK%lAxZ :gz|qG[Ί~ظkYS U s7fyEȔ,_x n!nTkm٩1K06c.ZNj^vOrJq*}DBR_@q_.Ez72` G'tjV"V0T-t1b; _MlJXĥI?z ^C)Pb]!uueioBr-NWGiDJTXXU8)Y2Bc=N ,,*0ME]@$ݪ5ڄ=ENlr> 񼜎zIOK%L9K;ژ }|}@a"lB m>Ony舢Zxal4ٚŗ Ԛ*__Y$BoA3ƕE?ềaڕo~ !m 鑼%t=fLɊ\KprRJjYbS<zY8-|Uywk ._HM9e4#FGÐigr3_$ʃ3~X;H%QGˀh?. v}`|C|#e92é {jSo#)fPh=Ş&rDE\0(t"澭\}Ss@c:XhCeOyl%´;˰Fr)Л@0XPH %63zos/}7;:(r%݀ѵDI5'3LH:ibФ413B,L4Ԓ _I^^ KS޳ud .eM3DDKb "P"KJ`5{+1Mr't%AVSI|ԐH nJlPLhb}*ۍM 1l)$}\@1zĊZ߮M-T Q^qT:Ճ^$|uv@gS2p-4݋q(Rк|O?8`(AnXwo& R:Ԑ7 ]@A‚4kWC>IÊ p7e<$,h>E5 @5g&!LV%L .Վ)~||vM=+eO4sc)nb6z,2k* 7) hnfBЎl\)ԒHk)l;2DM/;'X'u.f\4Z#P<͡t!cFW]F8pY85h#ҩV,jd5y#'jmudb vjW){Žg ~Ή7 tsSMPN"͑FTλIwa2Ά7*]C-j9D&2MWdA[,%e%goV8QA-w)7}0yֶz}yBßf|PLT݌ӓxe[tS#[]̀MxF>AԚ@_!^1x҅P4&eg !_mJ:ҽs1+46mKDLoh{.30*Nh1dZDZ Ո`S(i-@)YX+גhݱ*M%3diЖQZ]0T?)h|mMpA(K'6- m= t3WdWDlG{r݃_G, 9ChL vRH pϼ.B ׇTE-K'1!ؼ *=٧cZYeM<)W1 vg7Ajt!fF $<{ }=/4߁_]OF"iR$õI ,䡣o8ޡ*y]% e]U?^4Wa.WRb Ɩ*qX J!5 !10`V*~pz37.\q傿.Vܦ~y濝Q+5bf WqKL `Tdc;MC?9HB}6ȏAz@L~JZPY5|˩Ǒ?lFppP &$š\70/mwgѠ"xKu7jtn&<'QbL7C<:Jʆҁ Em>~-y=qFKU<ᨁS"&K"oqw<V5f叧s"=#\~0D֤ڱ::㑒Cpaߓknuc?;1X|ї 0$U>̉,Vsm(Ԇ|pdjyAjW3f=\–[`oGaT2ND7Xi=/Clׯu{~E92{6eBoÖLJ5]w̙o x4~0(( 43S?l.9kT;dl.jN PvfsvQ=2JcOxQTmCF^8R' fGRNSZrPC@ Fe1YEt&ie B+BeT?3Oq rso\jg@{7o LT=X_n *8z=4\u@nT?*j Ҋtcz9LzI|0P/Ǒ޶:Dc6V 7'UO]};5Ny}M1zkOMyF1y FFLZ"<0e%;P9ͅ ?j+Z/J05x_K~Q'0ڮ,}ݎ 4$S!Q3ykT f\2> /osg] J-O>os+"@{07ߵ7kV)!pM,WűמG^ҎmB3Ȓ݇x0 ]mWG"L#?hp,J1DچQ2`:w ef2i$t+ 7ۊIWٱuq 4y8sFvK a8}EXE ioBNN{x1=Av,eŦa23ٕf8i)J=N~ٺmSWq]* # )e?E.ƒF@m]GB E.FT^tȲeL z*wTu;l+\:3BO^١u?Ă P/F}O[l}b[bꍀfΗ($haQjsO&2v"K1K1\sW>qHn?ynؤS?Pô$Pїaw SG!†۴H+Zo/(':ekLNU. X8OxP_,qC/&fFTTp3 [&Qy0F(bz7*hŕux5 ,`/-g9I?X4[R;9jc[Hێ  *1CT'n_fXEq iP Hr3gU2۩$Zn6)Ae]*1;vPަDyk\M9U|͐ޓ84mx=v {tAPX7.AG/@w,@H_mRf1IGLh"z/"XIα+CHqh/gRI;?>lUnO^S<P?w`P)Y4Ui6LC oʒw#ʓۺ6/*10Ay-DB2[g~Κ+Bwo(Jp50+GXG#~qI:QFŨ@%:9#ح`5;@ Z{^|{aGY\(NЩR5lʖ4 <z*p!ƸZ˃tn4wO\O٭=P]9%ߣ0%K>q 9sW! 7<6Fv9q?g>N:w]S!ßϯ7P$]jRbïBmެu|Z%`{#? >d"fa Yc0frҖ[p 5- £d~ 5wy(YߘSNQɏ</CpZw]I'/n }č$*,+j~soZ:Y<0 !u-:ļ\]+:>"XW\1Qnsp aj6|qXW椯-џAơ\4+oy[ro ֈ\~3tݑp+p.)iٚjz{o"T^S;{!' {! R /I8_cDEF?s'"Iiہ@IuA5*P6^@dT]j)7' ƓJ2jʼn(z%bQ&efps8]olƙ-9feҹ)4Jt\>FD? a(^I /wH{;TM|۶lSE3-$4WztC~xyHY;=Mf q1pKzрV$LoX;ziogqy+7oie5Ć"ø&R>RH?[F%DIsPoפظ25j ]*aX"o2ׯv+L8]u?D˕ZM6X|vHؑrM_ ;Yi-A \ Gu>7Zsmw.a{p|0ik.|E|/tltzDd¦;㞮JIr0`idĮ>Pslh;&3~w*+G97p;ݹ:l}ojNLWIRK1;%J?0 N@˻7N|2싕S.`N*mObT' "}ĩj7FS|tiyHYIC?F}];, LP|)u#NL˔rg[.gw[!m]=?$Oϐ)g7if1\i^? UMTkmԢwƣASp*,Ss27&,=v_d }Gz;QWjzۈ[[B:JM~I1e@#oA|ǐJWYskSK";h|M}ٽZ?`&j0e+eUITp 4W/kً2uB|*FJo46DM,g 8dnM \EwFbAhyҮ Pu}@O4E `a-d4SjFC2^g5-DgI^=uC7@e9/Q(̻W@d¾|L4`'jݬ+ };3)Oh|r`w1y5QF4S=WؚY+n,J% _N]pkVj U쑽&2 jjҖ.Z )͛^Hk樀L~m] ͤY⤽f@$n"%x7kc^#fu.oU$8D%pT%_*e> n~"UHiї~_C,m]2*{Z2۲-t ىwLR^#ѿj#2)݂яh7Zg|O&_sJwιR=^7sޠjgO9-])rt%K$Ͻ*/?ӏhC楍.5zet4"]ə&hMԷ7˖Dri C_y)pC+.0>Lզo?oDk֔s,͌׸d~5]6#- oy47yj%,'Aw9쫤ig}ߣD~ a+]2G~P:*"~fw/01k'/UPWfG/%U+Z5GRxʩ^9L8ҴR V$QDR ]osEfVE}3*6J}q7)7%j@Ge,z(Hl^][!&?rwI~ hkliTg<8(ETk 84o8%`9AmQi'5:(|.KVoQ G&&*EZ,XcaWHI,vC@ )j0򒼻IY.}it{Չ_4 )7ijr/se7s{JQq ˱ENM?.nl]gfOr&?,vF@mӵ(R+ktԈTWl9Cj->zH H}!02[wGX 6(/=$>ҋ+݋;:{؜nkh=.\r[wA -( ^*,Se|{̔<ڪ`?nxɎ13Ͼ3:N4+,S|褔5nQ8"ΕYҾⶽp{0Xdq3֧[Sw IyێE͸7&AײI|粥z #V>4^P@(#~K%a_>v6/ _N)wWjyoָ`x2!6x|@[E -1Izй'{K<I;ںrqTC?6yoE ;r^suX  f(EA}5e̴#C@_A'4\7 s.e_b(tdR Zʆ0_]z6߮J֮:"\*?h9'AS _w5az-%^kqF $!@e1w0>vt\sxNvAmlőTpƪ֒D b+?#JMHJj׿+K'u}Gi~O5)N 4iEr/p[?),@.yV|'> /Ytuؚ)L;+tqCQyԹ| 6:J*f->Lssa?jMjԇm/)C]v0K-lk(8XӄY On*nd3vd,ԣ>(#V%A; >k{D/d+"BQryJs˸R&bwڊ@fue #8"!@fdg V-(f@;1 twGMJܣė!Wǚ}18`%;;(yl/ާ㖸"R,k.@W %pH ϰIXT篍hPmW.E\0Or;Y\3J€(sDrR~q6R֘ %WPLvw3dᯚ1gɬ0YMgrG|*!0fvgHA 3 bc4C-b ˪[i6w`/#_GLM ({,t _B:MY^CLʐ.*)nQ^'sg-upz ຤`mOI#?KAvjvAg"P.t4,1Ba/6ϻg RDX%swzZj"S!EJz[yaJn| S,/;] KH캂UYK^yF9g,ߖZt"pu$%Ee2],5]Lرx}pL^ox-''i' "]:EEý(w缑m@#sP֠^_3]]p{;.-`3ttoUB"XKɝ :rL 9˩w8=Ma^r}̴ΎeT0=œVJ E xRFeLGt!Z.*5aa3`N*h`A:u _0] C{2pM-*iiM}Ɲ)M0>-Hɩ:ln\ P^y@7C,CĮZ_AK`hsVgiψ"Xp ڭ =!%󭐅c/ģi7oэhR1l r=޽\mAQ G/"X98w}R3t2R'd0}JKDZ, *.pPHj'vC_[쌥Wf\qRzU- 5I?+~cL~]A ܳ!;~p EƔv.|nوsdjģ=Pgz$]2[u)UX(FMc40cW*eLX{kp$MSͣ>=CIg"J)Xu} ?f"+k?U]F夷+'3 5u.0]ac8EޫȠ5҈0$v;Z%@-Q+ t6Oe(05a[) )m$rUGrv_z"Z}tІ*عkQ9>$܆9>wG4K6uKP).?iKqdqoHK+o9Qj-#70u'}k'&2Zo'pFtA3OڍqѨCGCGr؉nA9ABvO2; n3';̰R@TnAq<#Wd=(GWZxY'@8ucjFf̻]3_~OOnG6fWs`̩ ,Uh%0g.|o >U yzM$(0k@llp^1V5J"Aq]E)2ګfܸ_*:6+Kd |-c^V6p]]Jtf|wtq'Bn >.2c%fx424(0gN#UGϤg׼G또r Xk{P Y-m-UuMJZ޻g.?FC;v,b%pn גQ+QNލ,{ٴZ7AUz@pgR?!(k5 Q:cDjwȎYftOf-{n-;4y#TlMowG*<ҕU, i̿)N^sٴFl0$A҃>$=U*gZ>>)w$^TU߭ho/kP}Pi㙒 i ޕSC T.d3˯vk!Wd/" ͼZ" ek)F^-Cil3J zq Dn S,=lG%'= qd,r!8"F} mbfǑ!1VǚfŶ]:jD/xPkGGNYpĔrBT^QEԜjqvo Vο՟9E#(~xMV ½~VS+D6 _CV n=2buܳ):^Rνݹ4BfVEE05ڭ ETjI*|8jƨU{V YA {e4LK0fIyB[_;q!(X?j7  D f'!xiitR6eG2V3t_Y'zJGQڪ.F>f%8@[~!PYIM1;M-恎N& J]Wu ̵ggl6`Sy]($»EQMj;YqzKG9gy\FX_ xysYeTD~L#r`l`@4dOvfmA#(`.mVe5nlX]怤qmXCs0쏽q pLKU[1>Է3+q燺mT0gý?$\z@P5HV&kD[ zM g6!CfL1} Co<#v1==9y)S;r9<]ef.޶`lM\x{Ŏ=#L&b&C4H{)&[i%iuӍ]z]SYrLK,⨗YlIp,F&<;o|YYڭyڮրI $wKU1DCO3уovȗWMd[n3u<@ 0L,3f3Χ 'j}sp+?]⭬iNgQפߏ C}mHp5\Ȍ53a ԚΌ{Y-Fr9YV+FNָyZh3ior: )H:໴Rë-)~ޡRQH]^痯`'YSImٯg'U9W/L{r#5|\v%ټ8z'M@TΊh[( $`MyCk-XֽB18W#n9\UIFB$ RS 67{p7R?l Y!ƉiKGVwÅʉ BxIT]0b {Xz*EQjr[i EJ!KA>!Q1֏;+u3Yv&z>3#]n)E?=ņvL0K/%"f<0Pv}vI Uwu4A:0*-C?m7XO>3sW˂[`?:gfy|=#wvUVSwTm4 |PD@|j2C>&dp-u?88 W,q)1,LhJZO -7>={HH@cnLJ|]Zc/sAZQ8e;G(&d M_[9J@9tm6bfC 3qA4F& \sⷯOj4~6e{H nHfNT'Q. 'tI r 䗾߿]?T`%gY2(Y=@ uSӣ W w%G6?:ݝE\8^`JB Mі@}*[GWx| $x*Rt!/@ّ6?[QּF34=l&W'`/`Q|Thz;R1="1z4+G`0AP'udV=wu]3jRv bA,=14augQAVxf9f O{UZWn>E`Y)"Z 5en ƿ8ԈpC/w@Pא"Ij'Fj^;uLL=0"k3xt6tvd{8{E1<5f@8C7 g2ޅs.@1ݷy]O=?D"1HYN. )yYơw&eWbL \e0PIؖe!wR0=t_@[Xt?+52?NZGp=؃VKj&z~Eb͊2Goq=$vqہr~A׭=R;@3j`S'l@Q $fvEs;%71h;-F0l:U9Ƙ_ vᔨ3 SHF;r&ύ[9\%vO}#mrx%1Iixfܼ xZhLO!5 jKP!n_]tMØ5[fu_A\,aԼ0S>d|z'0*Xvv Hty` (gB'g2FTwԆyo 0N/t62ؿ/2 Ų Ex~mx˚ȝ|׹ z -_ȴv@z5;sya-&+fr[+%ɹI=:=F$XlHȺk)d]4ƻNSy/$<rj@i8Vn)YTJOHw|q\Jk>BY ZmF2=Wꊸ3I%Ɉ<6<2tbgq}{ɞqyv{G&g{kM f_kΣB'k%鋬`7/ >j@i-x\"zz-roI~÷_xuX͖+ uYuWPU3y[m _o7C}@j_('W)}'N 1'*b\jR\RzmuY̬,:gjYL"2U$+<" Gܣڍ!gI[u4 BT*&nyDz`AN7Sڑ YE$·^Y$*1h,dgֲD̛ rgX!L4{L)B^W/Q34>~uyysFߔpfzm`,mc g9T?XH@m%g7ov܂݄Dt7 `й*L"* Z#$q݁q"cyQ<63a+ܠAuqF_Q?Q1GpsE6H&^LN,}{͡Iѵ[o$^3 TBK"! :Pq%jg IH*(lkbSȅKPW4dЂ$91Lr3I(H ,Ϣ5s?_~Zn܍]cK(}^လ#PGN}p=z6Hv>ET_k< |*'_M,rhŴ\SBLCqA͑]&}l'4]т[4\uтd^lC,G\U;@V{D(xrh߈EoyQqxGظ>' ڙ By[^9z"R 3׸Dw>Ch2%Z`\v?vQ!e":|B!2}Bt9j ֭wyt'/8, cWy9ۊu)`dEU[D0*J0 H0gyS̵4ЙOjggq{z? j DNf86ə>-;+B+S5&@3^#5X]+ac@ˋ[N6Ň mtpτ!B<"bB~tNla?СT,{7k27Ұ\w6WFn#n=DAﲆ4A;5"Jb9kcVmw <*6UjA"^53V^WTFLq}r"P}Zؤh+U޴*IMB*69`X︮Nu4+qcl`!j>ZЭT7:ӧwI~a3K|xW@W, d큓Rf L'$qmk%kG <duS%׽$Kw9W%yFRSNiͣ;SA{'v;E,b`ԜZ,#ϊO Dm̠V|(rԗZ`(X M#vr}(!p8bge 1sE7dIN+='Xg4yUtJ7ek ntA_]/Y;gկ`;+1 Љ4˯lsto!"POϮFzsDŽ)T (S%BDh6qB>wEift.|6B١QEu4˅7.W$ǗgjHJ%@uE&@dU?ov>AM@J`nřƒ^!v tĞ4zo]z[i7şt\\áͫs˲>޸vtR`i{ 2"SVGᔜjðҺǮ[5, X˔IMv;$Ά8 <2cn"hfV(ĞwQ;y5O='$D݁2!`dKl/]W:Zs1^SSVFPڲjVs/>;n=rGSO'_|Gǧ!fh5 1)S5֬0er6~UEY~.0"OBeK܅J+Ҽt3]Q:R:)UyQycI -CDJ@ 0+$_iv^2VElӲHV%Z6L@iӌ: `#A "(}EoyOэ07ФYʬeB& AH G Ŕq}a(^lN|!S iР,{X ͛:dVjl{ !fnrP J*RAsԻDy^sUe9^Cw}p$Zϖ#K.3KmPx n/ִTm_h۱͙TI$+%!B3f8 TʭVOS򀦨1szOz',jGwx Boqѱ4M38ũ&^=>/A j[_6[tp^+'O£7"O~AJN;$yۿS{b6x >mDk. =Œh9$ أz ?ܧzy(G7v+T  :;uկ:$B4ASU1ړ{/>a 뿇cX6+[s~n3;2+05arnF0oWB?$aFЬ*@Z&)q{sՏY:34Kefnl9C +T :ԻfƲCRMzʳNԱ Xi"; Ötp_}ˌE>YVo avY U?Io+3Wv2$ &}Is D0lV8'O #=6M@&ՆÕr- -_ 7 ߏ킽?}cNYfIEUN$/c5!BsBָ'v,U/QFfL0qq#J l&(ߓ +^ñx{5LGDo3^ HBg6:<1 nӔVbJR0*mBq̝ʖ6rU-n=ɗ!_e A"0 @EnQKt XUNh DKm54> FYW W_)oaJ>ǔGMn‚~:d`ϕ_" a&D)?7kg}B pܯ\ Dw9ܓEL>Gfm)Dz"^Ub]‚v8  W2D?7.|M*n'7uqR28 !X7v:#`_GPVfmf}nu] `#X_΢ 몀0p !w7/xI褀H1OSj X[q]񮪝@eО)]H;XV*M'kiUyxUӮV $愧\dMq˜cQиɥʺ1pw(Rmc\U>Fԍ ':aNvUNxųZ ]dR"iѹy햐t 1hcH+ὌBti`m?/浆L_f2l1$V:cnAP`svi& Sh:!}*ҝʑ$/ px;q Ҏ)%8x^B_JTo@V3J@JyG>V鶚'd;0 uG+Ү N r3 4^ڟ;L-9AJԞLK|.0hogsU7da 2AS,Scvyo]Ax.7 IML[$8[lVoRhR MhzY$sO[9[%?: kNTNPۗC:'b7a%sj:l#ʩoVW\_V8oF*رUa9.kmYִ$=j:;k 0]̊X֠p21:s>!{ɎM1=|); BެM,J= W;5y  5e|`0RԚx {A\À,(tpogbH(; lCBF ]莵Z&E4*6B?)6d>PlbctA Z5WD/e8^ :,\]k]b? ݲq0:9Q^*n[>%Dze^+|L-`X"ӽO %lcx-[ e_8UΕj_%ɹHpԊ덢GrĠw٭7*ʝWԄ>oń0$XNćW9Xc[z6ZڹQ"̅t4нTŔ*yQ7Q {u6텮^  6gJh"O"8CQڙ{闵_u<~ Z\$ 'o{%xS37JPM($7L{YУD '5m __eW8R2j+;Xa#l)͸ O(TmYtLLǢtg'Z1$v#\٧xt.- L,N @Nj٤6M 6zC/9C2g*Ik3)^޹.Q!qں#IV!R*dDԶmT_ ' O%6/|!sps-)5l qDY;gɦBym)1alJFc7\1Ͼ"򉠎^6#٥0cE4vWD3"~3&0Л,"h-^"JuNt?/ݕ&dzN)w>jfԱJԂ)[ JVQ''c2K&y) u'c*Z"[9'WAȐͪJn\|S80Za)Gτv"0TN0|ܒΐ4c? (pʷ<#0q 2Y Jtdap aDր}Z fɫK9!?i$䰳$W2_8R60kBVمwIsQIu;uE IV6E5Ty~HniCVRit7*z8DcQ|Ey]qg]Mʬ 6noo$?-r,MEXaʹܒ{I`VTvJs6@/;ⶌI,abNL#+^ -4ktp/\['U~ }$a\E~%Qy 8".Ic+JzV60Knǎ< \y^-2,G|P >E,Yo?@}-h7aMI3p{ ƢŅk~PWUӴͿ i C|J1"oItH7Pt`p4dQwxWpEv9W-Poah=;N_fඟv$^cAWٳ8QbmJX _j& K(!sR`:Nsovn\n|o*s#݌3*4z--dhDɊj8".h76if|M,ŌDv m`e{uXLb]e=N DQeɄ[OB+?e kU?:pyh:7\EY>zn(( Ҍ!XF֝4P܍X}2re sUsd`;E">wyZ^1lmB>@i59Wo%WB|9M$s1CO๐sSL@l*7 4P>шf=S⫥q.\%t`" ߱y}3#vةDnɰ{ V|<JM"h"*B^9(R)޿GRދ5uBpVY?3X {3%P7q.ug`뙋CeLu㏏?KkT*;Z5*gQ#fV|:v(&!{/\@.teZ]♂@6;Q8% G\<{KAP-9oO+Cvֶ\QY4b%ݪ9FrK"^ԒnA&IB 8#J 86|! LiMeg H(+A, ccVSYär" 8=8|bL>:u8N&xȲ0ᓽl9?eM+0r*c-v?eL fGXbl%˙{!8eblc4H];耳ձsfySحzM_xZ<^MSK =eNr)"3RL$ T^Hs|y I;H+`|99yLSJƾ ]=4q>:~' 57gd Vع MQޤ>-r֑ytM0#ťm""^M̗i mV֣dIac/|C"o-=򷐧Pe!&g xv3EwNq?F/-fM ECyϯpO&2(? ;Cȯ˚k1˼7xjIxzîl6 KM?{7 G4KDgj*[8/Jt^z:Qر"7mZ"}(✰hxX:Gp z4p0ǁ+E/f A (aPEbW=% 碛XOJMGn3 u6'-`V/}}<&M0MoT` Lt{qm"8,| ?@-^FU8LӰj+Qj#^.ؚ3ۃ?աA 4W1ސ'$dzc/G>ɶ'dH|\>OFH# "1&lyER NAVx'h Iخ+@ !g;J"YGezx?!aS# _UEE)/ wϩ CG7۔H‰Zd$vX "dxZϻԗ ln69)A68 ٕvX6`+aljSD%N*$m*+bE's㾃FZ$U|7eYl9mA#^^=]!{̣}q@ Ԃ },{LRbP'؃SDǽbǣI22kؚuCMIBUlӶ_~&V)]:z@;1cT!8"v(-y&"I"*C_$Zoŀj•WY6teaL҃^PX*X_8<[ȗ*%$ "FI;S:$EkK1E-OMErh=pl|+;MKo"J (Q"- e_^V;g,B9<"$BÞW`m@Θnį+O G9F:$K̼HAX0-*S7!v" PY( WpL"tN35 )oC nmrN:H2j7i\upuwwm*x@A9>݃TSF $HJ`=j+a7'~Wsq%8T/P ;'FԶQki SL?bdURӪl݂(aj Z~P$T4 VM)?B_Ē uB誝,I@]3'D( Ua:Q7}UvCqw/9rg-У$~Kƫ-Z:Fv;?Bڢ +xBV>}ľk_2s T4/^dwy`pUnsЋuܦw~mUAU[Io?#e  G=qu-kHZ 9pc ;dBTR}b|6̨[4h»/ViТ/+ ޥc%y'fƹ~Oebi.ereH4؁0ҫP$HU 2 h<ē-o맃lB- )`k7e2 Y%!Kcc=`XYguJRŇ@o,]#R<ֈ@Z4EQ~!XҾ^Kw(C? w+$/'Ln_ Fbmvd27YLQ'1mŞHT8UTR' 9cÒ=H> CCp>aTr_ND4{4\t|yr_c8dwbX^z*ל>Jj'ԾlOeϤzlM~lmTFk\y?䂾 )&,5pnM *.[òJ{[,Զ>+DV׹Nr"EpqjX`Z?g$z*8<2 I~lzDs!D KI(Q\CzƐʡKj8 zڷ`& &#o?[GpRx InUBS=Tz:4A8S$Μݵ+86l2H'ݫ2U*6vca8(fv\!XF5+Aj6B0b݃4Y1c#)iymi4`CB:(c{D̀icQmiWwlRjh!0Vǯq!)}gn(I(Htd\?b^9뻝-7[Ҭs<'`6<]^?:DX&[l6sԌۼ];}.ᮇJ׹GoOЎxߴa=ٜq7&C7QQ'+%ؖc:6-##h]hsǮttc$v RA Ӎ2 )HKЍYѐ}_Rs韣Jq:[}LjN.їWTfH2œ$ϻ˲4*Knғ]hpauzu2#h7'k@Ȳ7.U#!nߺO]D@*{v%ahbR l$`Q.،ȃYD{!SXy#[ ĸ {̏!`^ k Le<Q OѰkZĈ+F]Vr<"4nwG_T9CN|R7`B4fe*_"[2jj_qI˝%h䡇; tU:jF": XqtkoJ겍l/k_ɉK0d9M@oS_([zm+ű|*RF`N <'?iEJ߆a)Z@O$WGƵ$QZ n=́hiS ,6߈H=zbFkHMB%Rw1UﱔR-yCJWv[}Rlz1|ݪ$.B*l@lvn1'XbF,x'.ͤЁKX$%N/$ ?&*ޝVzշMH{-|v$7Ȇc5?:z{!c58 z˲^/miHhʴZEښ !C]5f`L`'K[Do?}(WߠsgWW.Au~@&*?,t\KFou7U||$#TA9K1 ZV(,GQQV ⵠd}ї19 An闼k,δ!Mrju3uC}ػ`+cQo4KhI0D#f-1"_'E?o_ĩZ׋+$3,_[䶤,54Poc(:Ct,!ۛXى&  Vq22I峄B@OuYtAmRۦ?1 |Љ8Zj@1DK>rI͔rmzio,[M*ʼnij ,JXye"M f ZNNy$nkI]ei*KP_I 4R9˷bE:>SjOw9*賉OY| .(ԇ,3a\E5cBPl2XOy@WxbhtH >q8Z2 i"C⩝w͚YB!ꉑGI}s#Yr!^G <\Sq B[>!; Ҭs;e ) 9C|Wm>6\a(hZ(mwk:E?(;?q0:!~ dr;au?cН6%j8`i quI/!U;+lZ-Vy ގ+HL|=]:{*j_h51 2[_>oᐡ]6;}Btc8 IƉWGүE#)MAtq#,lj\*fN#D 3}wn5*_ 2 .bAt{rB!isT f ;4"P/k3kqR K"5߬Z2f'vzl >cc-롱Zp}OiHV &>TɔRb&;k}1Fv8GyϯxaJX L;3n{$>)OSiZ/^d92?x99Ss7ךxŅ/6e]M&Pt]O'\ⵔGo1LOtEڤ%pvpjY'% |wD$0ooH)FTXD!]p9%=BjGjHtV MoƟر],֯~mۮ LRhi9Y00‰,h?:1e&рHH\ϻls@,ZɌjˉVIs-CՅ(&>0r 'åm=Wm:!W%> YF7v:Rb1OF.vwn[+ZEuSw߈YyE%lVB}FR*p '[ʨ T˥s%H)KT2?5/4*lkI|B;C,nȍi?#lH( qes2p`Tcc >!mv]SLD ²`=WkГ|Т~J׆#Rz(ђj_sE\:'$@I48JLɋcXr\7?˽f\Зbݷ#FOIM]b}%EQ>˦<9J <;Ġ4dmyYHO-wNI‰& H(UqX{Vn6o錷aLj?;7 T0:j;d TPrwAJqB0('oLjOtNlV7yDO:9կ')ŲZt{G? Cz; NNRr< L+Nhl|A{ǀxv`s Y%ZaSuBVN(`QWQQP, a%2 v/:^x} Kx~0ZO+TzDzt OY>.>19D7C(LQ `zNcpVuV7 n5ܚsIQ̇db*{]/Ͱ@rc"㸳,֑$,б|mb Nojw]p 8VOF0z"]WJ+씣Ѻ6mUVvy:>yBRbQ9׼G-^ !8tlG r?TH m }i; 9{x,M_ی6}0]<~3Pbɞ(yK0?,XKX?v7YxKY@};Afڟ V1o26ޓXj_ H~ٺu^hh cآG*t̊lbP,a`gUMxgXXdYS,|r8DlƟ˥R5n: !Fx0ݻ0j0LR.s(05ig~-gS(T.;UP/\uo-h{iL!YaH۔GfZ.]A}SIM\ d,pšFX͑@K 4Y'SW <%"#$u+i@r;g˿,~AJPlUzI2vo^='bf]3,]|j;S&Gv"Qﱿ{gLmk縟|c)uB5Tz}e7lQ_LP:4=}^ɝ5WzP1 ;B[X7ZYW;5ɾ) en%~'ZlɜB' XKgn<>c)SʿG, >HUJ:8TD}TiVG CZ/dj7O#/ƒ-z4]%mz!$#SA"=w+M-GKӺ۾bY ٢]3nICEć +J{v4lKl5l-7+\!i_6ggW/RGop UDM .3`&_-[bp0`ǓN"a: ޾#{$c:T%i{t;KKהh5[>DtG*pN= mt&.rJ/?jLOqfP Z*]$ӽX$ 2^2q@3LTdZtۮJp7`; |>m@eЯ-P" `#VԷaq g/d^ˋ}0='yu_8?AQ!+7x,s.qa<,, ^iyLQhHtEG涚:(\u|RXLw* ɹx7w+,-Hȵ .253Y9芒4mrf֑OݫHϖ]z$a-ƽnʘeF|/u =A)J>YJ0`(ȕx^9X?)aX{k $}HS LJGsw'4yi;\ uHT;NLq6vC%?m[.err,1i-#cM&? IĨ8zNVyS0LQ"=TnM`RKW fI'ZV|HmԳ=+af 0*a}JJXQJCl5t& rh7$'F#B0)Yݦ $[؅1 usk"a7m "-Iu3+ li/dAO f= H1u v(Lg~1($<` !}9L_VawnO߉tfR?+ %Lu81dߛFlؓkB#N׶|psPv; ("ժ,eیE|NN8@-U梄0J܈sgS թ%XovkQ`E#~սɼ!b6@GcltnόU. NޖGZ[_ )x0NЉʺ0 ֘ʝ>4"k 81/mJĂN R)lvVQ>"䥧9Vj}أ"V7rN!% ?l.aN Uqc ^Ek~yz#>=#%GcKlsE!PsAM5WE)5jluIM6QA[Q$hWJL\K̟JM[ĸX s>Ĝ7ÝB:ִO^:R{SLtEP1~'T&P¶AAڠR6QCt]VOQ[ԑ$pWLy'kZˇ|U/\FkDU.G׳7ў)8ZVLۥD5u&%ZҠ'~*RH8D$Rʃ1϶瑾MKrxh/*E?47AI>xS~YP,tN>HȽJ]xb`bQ^Y+Կm,)rN>AA˅1="0C-?5Py=*A'Yu.X,/}qG$p"l`&dd6o4ijmݤl8?oaӇ ?r텃ZkR/)>5]>vMNc>]iE>¢-.c.~ n8^Ϳo1r'> 361c`({ :ѺU, !m&CyU(N 7+/V3YQKn#?g%m?PUVaq)#|."AQ y&7UF:SNtnnD';˾|](VVA:-k~?BQm { Un&^PĂRL㝛|Mks&cI?ŗ7w!?}ʵʶSرAַ&[Ch`,ۓv)Ca>b+x![!:S4*Q]<+=WO~{&,8R߿-];<`Q'_aVqwb 㱽2ƪPcUV(-Xb› UJׂi6urt_: Ns(f~%P%T9vtn"P|(\vNCىm %Jn*AB7\PE:ZuR4#uߑMOjk~GD"h'GRCԽlpy ^%NT=zɲ \mOG\W #hL4owvhG E+dEw7;Oq⤟ju>}hټGaLgliЯK3awsh+ o~;m"'ӟr:"3nnit|^6nU.8H+}Ϛi)c:.; fL0HTJT]{ ;Bj]ueB *H3Uݯ/nbR EQ(=Ǽ ?l*OцLpSsc0'.ĬF YA.4m{'aeL6smܐ~܁EP.f !!Qh3fnMC 6kVX#}.i/BpnކM9jCIA;~H\F ExSj{s|؟Ӻ0k@coM䱣CPƌ";h;)}dR?2J_iT.z&LGs/UZNwHJD1<㍛GWp:{~, r+eEΠl!?TrÊy46.+N;พQKK#5->I5"\ıxWyM_.Hn޺}q5~>c^䀻֠i$F5_&9z!UÕūq=ΊR(E'Z< KʾHN4>uc__*?ưGS/ Jo\^sj,Ho+@#htZ/P]OSZ]{fWV ӢV|qҷ 鎮ԸnլRb1F~'? pmՍf vs4[a*"wT$k^S!qvM_S*7vEZ(=R;U?L٧HbTEC=ĩAH*\ΧNFh^3:,0.i[~ӰiX% yW/H$zud6w@n![k<؇f[Tc Ԇ'K!GSq!Y>Rmn |ˇ~&_R+=d.y!E61Ȧ2ޢr%зfY~=`qNp1w9){(hLDW~T? ܿ?>Y7EGmy'W*,;ZB) M}&-ۢ+1p9^iZhfſ:p`b47J sKIUO拚ӏ6wV0s'_Y5P'DPky;'B%t;ÒwTLYzo9cyX#Q]65q[%.kȏ-BD,.AXI9ɟ%EgCKZC^:,[-/yk9\);XҚ%0Z5NcΑq>'t=94C؄&_go9W]2u)£gY:+T`ne$7M3;fN-2dA>ЕlWEvp';q:h]8_߽ .犧,){d^ 6%:F{$b~6߻ooȬx< 5dENƍ7F>qEfcN] j7,?گmh5VMjH_fРB+T>((%Qlrkcl 1K.Pq4) FD;aCA=1s^qHaP5v@mxB$\k* =J:l@ŒKq%na=ѴUHzO9YO^C>wzFK\PV&r4g ~:J {JoI͹@JDy#FǼ^GaIm|D|rԶ k+MSux9RS LnR}@R*3S*j2Wf:JgFogL{V :mN2z&KzN1b{a u~e#K, Tm-{Z liV2h\[i~E{mRS*YH<8JҫRSF$ů⫾_SZZUa< ]k_Ҋ%Qc sqgzH&M8/- H{_#):eHqeyZ-.݁KW(KD ՏzXRWL`JVvd#!2˯(APx- I cHȸ/0oًlb{8 V޳2ar/:4_ў>#hQwhF? ni ,8 6L6ZAbF <>Uu nkL,(pZ2W6W {%|@&; $SgNv 2l[fʽ]2i}-O#]J/zVisR.Ir^Lr0m{ҜH#~B7Q."L]W^j%Pr],KbûY9LٵKM,킑I _'#KU٨D; `kKL}x0nƇ*ydSpҢXD1>w6קTo8nK7MHغ(cb`_{C0HQ8$O۵4>bL) 4KQ4Ʉ"C2Vhx&fǟ?+-eZVBb}EyiȧִֿāY EJQ'"MWKK8E76Fd6Т~srˁ|>n{#o%%Wؕy%T^E[tm"JnTޮ,։UȊ߾ZϪ+txgz#~nF.Bn.Q\m{D+XAwn4(Cd`4WVU~bbkhVS35\.)j2tfھcGe],acwY6@}3G(eí7p)E%; (B ;HcLvJĭa 01AǴ{s߸rp+o*Fl_H K]adQ=eد@7V&Y/*d{!yU'/:U]LJwfOfOXhZF?Q"~Iј=KVD}:RqCoKgxbC-)cۓz5?J.TPFC}u4IWxO3#'WQh׷AoOTZX wo; 2cq8XH9>qz8 |oV*B/0Sz՜gpEa!,9ĞE4Q_rm=3:@[%vӚЌب7:%̭τKTDUvA=E>YEv+[׮,ߒtuMF%&oU `Y䍲k֧z2HB)RBJQM8VPRuUcO zϋ9!J|fs/ỢZ@#:`!/5K?N :j08J;( f8߈PL?܍LHh-E?a\&kuAk^oW4q$@θ$irq݇gQЎaO1?5+5Qə)ND}ރ&7>p2G`xL',|9TDld`^BX}qB.M6*DwjvVz߀+oϖ"5p h=<NJrm7O^4cٮr/70A:>Ru^F[*~ F{\=qTϺ `tb1HTS#\2p{{i$İțN~TyNqhC+JI#|e si3992:v.9Rw4Uh BfZ9ƻmQYnpy r9y Mg,[AtfRNLev4'bb.:ŠeUOq^aaݛxjV_.$f%( M] ndſU6A{.p󴣤'^x-ZsN̜W!M:&O5##1סo d 9c&5 N@ %P&?]kW<љﯗzϲQarR{R/Gg͞Zj,o\3eefsB8ct9%w߄3}kVt}zα7M6zy.{\٢N^-:{;)Grgɹ}oPͱ./)B-a2YqD#<Q2;F.nx]#%~tqV#el3NRU8 :eCZU+H"|~up|(9Jm虆L;)rS5JݻAHڵ-& Pk] +"WT3NCF?Wԇn$6-/TiCE(jvÛד3܎JҒ_DBIo'ݙi1AnKLD0ღ%CPAŘ1 = x$Md5"<식hkFf[gut"n\G3ss(@Dcؘz?]brnkx @ZPNNwAOYׄ9,mr?@| [\1Ե/:G!~R񽌋 cĬ;YmQIPKB:sQ:ſN9 }3x9I˯])& kL>oݡAld H+eHEiMíL>ޗvuCe]TUZ"@iUJzgD鬋#r%i 4q%d.)ش0[AΊpNS<`uxU]i3W7py \T.⾻&(3?%2^Mv_ݾU뜞4},*̀{V?oa躈%O(v$G_{4!}%v]n>O?䠞'3Dnlg[P/G60hdy]v[a w8SF~5lgHt6%m wA  N_d>mȉ5Hf8hWψ!joJuv/L.ԘM/ J2L*|8rYF/aHQ]Sn%Wq{u&8K-Lg *W]+b>bK̷ѓ)u4:1g݌bȫ@9'?CN:s}|侙h)~XMֳ k!GpU;xX,}TÍV7Mԟi%݊VUXeѝ>k̔^KɊ.!}W+ޖ"8 5ndCA,95VorqI,2ݟGRtM[xn&ۃ!қOųsx1%;bNWX$1*:6A­Gu< ]% "w)aԣ~;mAv?nJn80*RHÿuHU^K1sop$|0yZd7ˆL &fdj17W ~u_rQf?q.$utd[CBZ-s4M<+FN|v$zdL>YaUeC!dD 7. w:]3 Tvjꋎsp1k͛oW?..INl0&>z\0.O02o3۝ҫ,!Ѧ̮ovZmR<70X9*%$4W>?\S IVZτH i1a-5^󻔺$W.'7jӴx!ٕ&CdK gtF]bL[=3AIbhH9't'N^  Y_l5}T{G^쿐Em]I*\2: 5cC%UI]k8 Y5`;⩫=񒚆[?3:R~F*Ovn(c1 \I{:f*H%flIRʛ]l:9(mۭՠS~٤)4ݲ0@ 1~=AE,~*(y /(ŝL h.)ga6 uWE׻ l c}ړםQQa0 d-oJbƄ"Z^}d$[)Cm6vO||$[^ z=Dm^80.8r~lXXQA ?x8I䨬% M ><=Y*@LAefiFYQϯd VqZ*aukkvԟ+35'F{cK/J̋6DE1\!<`R;dƄ!dmƧX(@Ǵx:rx1QClJœ!3V?>4CI6xyA y=S)kh=^61ovUֿ{1e@mH֘:`LDir~ⰹi1g& ˪wPƭq Y{vJS]0H"N8˖grP[G")ahU5L'SROfJ?:Ӓ&_s;$tI 'Ž]VQ+,>CοA&gsX>1 y ԕ (ufBfH ]ʎ֟q];4x[J)%%zъ{Nei&%z6qxuAD?Qnܡ決v`:+QI06Fs=Lfo/VUA!46Bmb{ @AHn ˷@o zQfSKRp`"hjFFl^%5E G(oTQug町+c]#(п9? O?G"6=##* ysQUe^|ݩ~fKO-q 88SOPI&}m/\A_cU'}b \kiSQHP+{ac_+j*bψoSAMm0@A8rˠf$I=Xe[C.2Zk,^_A9F~rmd h%$xYkh>Ňh¼ M.~?% _z}\gv_52Zcb{O-p$ީÊSr R>s5cm).V=LtM~[?f7_0@˜,=B}ufZ3 >JGr~ܥBT[:\YS,}G hª3Ow h= ;6Nx];t{*åzBzWpB@{Ш3-m[hS"L YIj'Ix& e=w! 6E0,n'emIâg79~;v>E((k(j+t󐫃eJ@ӝ'Цi"q6]v hz r-uۛyOL$wM.'?:X:ﮦeVnҼSz2-CQ9.؎]?=nB}ӓKt_՟EV\q}N-^ Bmn6 %#pKЖ?@B;؄z_Z]4[ԲU=eUX+&ۄdkjs@@ tr(5ZR+/(&FsU@'{4|d{$M@_s/珽䂍0$43IK0'*d;R'$C-Q}v<͌p0%yF+ ==>a*"hҢͺT_r ELD̬:b:_:=%DΣG1T: s{$0r;fkBdjl qKL1 NaJ8D tz EhUY&w"uNBUWOCX(}!DF+?G|ǢHCV\ tEΝ4!JO8f̏KxDC+);9-Ch7Ē-ո0u a4E'MeX\p 8 q#77fu?z ##Lj% 1CHX㹊3HLoڮRѫ)}@g>2Ơoikf}$Q2%}˜ R@.v׎ϩzlPGMv35Di+˸S?UPGw+[P޸N8K?[9 ~%1}Nhgf[FG+$Qr䄳ũbv"|} 6~Skc[l|mfvԟ NiJs?Z/ cj_@,π@^]D{]\%|5߸z\ 1Af*ӄvKmA?qZZ-O>,$ܐdX|5"kNsbx<a1fиzh/!;HyKDc($@qoګ^YŁڶ&.}3el :y0j字])QY~mr0PoدBl }s} 豸'Tyeӊ7u@^!|hsPQkc+^t^npS @(tQ9hxR ɺj}P'3fW‹'Sb.PljO]>xe?նq 'K~6&:4cn $'sLOu5ڪ:t[ȴtT)\:& c/~e'r*4gRdTi =/y4T88Fu=Ƒ _ڬ{<~-d6M0yRyS[nȶeTgtE—WFXD\OsR\}A) "sӭh!K8`N_ &PlKQzklN: pe7eyQHyu]܉fڏ׋_..)Q7ڲ0w9rg1O]vEo8>34ʲv}0}_%J><- wnQ3[*o!qTs&c5Ge_j.&+$Jj=8+kgX&$g_c)= D3]-t$ {{o./臼G 4`~ZR'\̏v1$cLg̓ ,v@rXcs' ⚂T1db0%x=FϧF>чks̭=u~E5L .x`n3Ϟ*Rh,c39E"-rA0HX#yZB/EnXRzt9΋d \_׎xvUSEPr^fzC|ϤIVf`<AM64_Ӟ{ک ](%1sy򘅟EL}@Jh9yҏCQwUr|WSsp_[/t7~Uub?]CVMb~[6a>Y 0fLΎp|3n7ezwJ|t`/=+ܨfJRV񠲬m0 5%;yth<v+q9\kuIB)6̭5EcnY7$2hM}uKPCbvkzr3[_dɉ'j7v =+>;NԬ!T؍8U_mzG(LִHΧt`[ ÐJX9=y`& ȼJPا;C@t62(R7w AQj5w9&'euKYP\?xz[j"=܂s_~s&xKV)tpyj)uQB W)qBo@_JNM*}(HtF]tӌʡl%t8gtڸK){ף rLvؗUI"YB d:Lh&rG]ZGla3{ÍE@V#xtbrc,B8OͭBF]$$ KoN&2OA %ta@=GeU}uNO] [,89Y  +XG#U`8I~MeO20;t#ZFXUdfVN9^/N|?@h=ʃi)}p?C-dX 4@l.#SKZ $Xg1œ&Š \(!A9f}hܵ_Ҕ{ΉfLVAR$F.k:Ν]/J*v\DQ'A4mΞSα*Θ82Du欺,(N0a\W*l7wPZӝ0k#A 1e郏yh[d8P8҃1hKtG{lkbdY}L>6D?"gye ?`lO}2rsPYV+ aS-  Q&=-3ԖV,'A&P7PVe%P-ȌΡHŒۘ- aR̎$Erkn+|vކQ;’eeSM8DrC8 wK'e\yWsWNɛl8WxZ|Lp+ Q,4lʍ_Vq6]u6oV'BoLrϤ=Жvα[)N ^@U2 6Ѕ,_ZLs7OG21T:\ i;`x1"^a)QcF3*K = Ev9_W,I&@!36Avǿ),KSe}8}}BC z[[[F9l(iZuʭVOSgx>-VYO)cSB[cYjW#T"KM YD՜ZE%/bji !aAZ~OvCGe=;onyZkTϩ{RX's7"@;;ϴ7ԟE((U$ 5/f$5CAC'կq{[);M4YȒ$nR_|,jU]3mXM # \\|]k(`\9<)Y2]HZߋ,b>)2ph-0+b-&qy[z /`Q_5ؿx5L),!D`ACJwR[:l F Rlu-g7 ԕd' ץɁnk"a%)P/?;x[T90K(oPϵ߲uO AiWFIL?_ \*BT R6S ˠm;^ͪXcCwU!9=-C1kdosv0bq*eLGٷdo2f(gj6?7LЀ@#m]7c{ZW^>/qa7W;wYh–,,l"P>+VO0Yv'Ilq^o1]sÚGS°@`7 sC)œR vJfç>޷)2Dݙ8f(F^A%)~vO}&<>K} 8ɢ{d=>f7/`G>-7M]E\_=Oޮ qo歍ﷱJlhM,U*$}y#@饽4kkn{@MGL6ҙ|aX}#m8Z=q`]nVޯoGzV(02ecJ+G[2 Uw VKleVZ4MuP?+oFwI8!vz- emxxNҡud\S@ ѣ#;p*nDgޓL˛aZX4}$~,|Ȅ^P6Ɛ>u8`L d|ȓx'Չ!D Dya k\3~}[:$N̎x}=rl դ*2c蝥s|TPJD9> ~tו$/r3Ec^hP'|6'>9iEw+iT7 ;Zg06yRUKh S!u,n8Y/?'@,祫֔(cva 15iS/,c"~L16aUZK+޿WԹngQ0åCkh$Ղxݻ T{R{}$RgE}{v"6s\=y,94y:FA;m_s~HU>>Wc2|߁E6j"Ё%8.%dVjB5aļiSN]'NՉP=(|,J4NyKԟ`zpT7~'cd&|o>WSbӚg0T\ K+7٣)d|η,Y@!4~'Jbs+ d },Фђ'4B|_!fٛ"faSexX,;E~T `,ewp"'|ZJ]EZ ?Eq@/'L"4hv['bM80(R'TBbKisxuƭɎ#(+z "xu &?Ut}1òm:-O˙su!i[q|~˸#P:)^PImIޫS0䖂2:AnL}*_6ܤ}~o6q!HӸp'kޚ$ʷc򶣆kI4J;~fid܉Tdd65 *+2ZuaV<1KЙ[E_/,;jG&셵 ?;7h:b̃ Dxxa)CS;qBkŇL:ϴd) 75a1zzm 7k XG_sZGF/+~w WtTɀ.>w†$ŕvOĿLWSѶI;^7Q’J֡iiMa W2u}I.`I{^<nLfhI $Phk`c2K-D^afqFU,Ԫ -&i˓J6+ Iz]Cx=&;TN׋p"Ih"SVCpT~M{:Bw6@w䉧HPvaDL`OQ a\˕+ ̷ԐG~e6WʾݬQpwvd4lрcǭ ~; ",HRlԆwyt~a]<@ntA\_ϛv:YY=^6"SI:mZ{=Q ɽ504O|`}"+ȍ53'*bMYh,Zd *L` s HR=21$ Jʹ-!cWPn%ubg;+Zޯ!Ęj;sC!$S2:1lޒU'o˸xBw94|C 1=P(͂^X1IW!fQ*'d6w}gܵ}p Fn5q)Lf:4SF9 Ȁ43砚ȗ#*L|ɅI:zp@@,jXJ?hҳ DKC[A Ϯ+fc/(_/h>jB?h K"0JjֹZ{d@"EB?/nj@ŕ]d6K`@Q+PR(R׎Ӳ{OPkUpk#Y8pTH8BJVuTbJbzv"`L* 0Kro%w bۋ{DX_IBB|,a* n XW&];L XB/,^␗5v-$>JJ%-ZsRBwBiG,[T} K;1}g{1>y̌l!n<5jO 4햏lhaSy!?p(̄gaEP&Nc,c:> kEnjKv [ EHprx<f}h+Gޔ;Sjn~N(74znfrrLr;b ?:w/!EŸzNDi%QrϦ656yEBÌA4N=&MT ѭTcS=SEJ"=KJ HF2* Asoyp)f"Rz&!gxԺ`,ΊVE8`P-K(s*;"]p9_Z{)iYemE†:1Q˱,Hx!S=`"؋kzT7{(0!."@%%=pF лi-_Q/x˂M20]B۶D}G}Ee W9h+$]ގG4Y@|[)U BU /׿dc Ff᡽5}t&}Qh pmVKѓ?|"1e?cMUv?3Ei>gUC8Lpg8hkUX\5}d\8ErEℭ ?Jx ]r@>mdQa؛(οe] ]u~ ٗED|6E{E*)ˣbJCrikbfi^m%y v[DoYKdoLƪ-=?ஒ[V5^Z蜙.H"aWR;ecۜ}*X^ _-?.ޑʿ)&xl; 7@`\,Tdӕ'IEbZ=!0WeTȞ\舊͢JA[5QmжKV{]Kk|iя<$ #/MSإʯTȮ,`fρ+1sւ>NiE x Кq*ō}Y6,x TV3aAį丙3ȗ7,K]d%ejNqG =45=HyE63ţ@vI*m(ҥ&8T+R o.snӓ4jJ<Ԯ}BaQOZQD Ys~Qӈ!;TJ*K<46SHC>Gvv:69[.Ţ[ah8E GDBiR*x}.8N~ unZ{8kLyC8'kƪܒJ^n]@>/geZ c߶3kstgP>mV`]0SN֏St<*E+Na徂L(4C%\ ZS D;[@gǺ"yϙac i4͈ 6Ye3{@!ߚ> i(W2i1S|6=ȑ,h{aWmMsZ&Zq VG(և56C1Gs|l5<ܬX2ށJ;`iwwHy.'XL/*ȭi$m!M wcrO ZvzwX㷑Hd^Y,Sb k9ttt.O []q;րIM|kN6ׇZ@ŮqeʬkPTWo۱x1(`fzÔv_vt3Qa?gRɮ\2Tjɝu+22Wf>@5Oz=soE&JjƸ{: `3A{`λA^ i,/ZtVVi= X̼|sw0w4aɚgUXtiP -(Ú(y1\ sAt@n[PCo3m3ҤxG6K_;)W  K;z[`XB\iYyX\#5':@o7fwO䒌 i""vKuYBz1*9EnX8u$"><|H Ws~;?e'^$O:VoIO2Eri @ihͶ%UPLL_zu:p;^ xs3XGI{BYX~E\7ORek❥rUXbwC 4KvQc2`H]_{W{TU|ۓ )Sܾ=Wweg7ZAR؆ϫ/EYTiO>~B vau!߾*ǃ1|WHD)߰r1MHW$jZ79_k/F*t`ְi :K&E.4$xY&jK%]ykՔFS-͐m50 3asCM58^}UHѝάh=r3༫>tLs#z+?MNET>N _o+^b4L֖ịFfwѓGmgNN3@" ru[jlQ%F\'Im@FBHQ{-ujFRp*ѳnüSK!$8=^TJ~:JU͐t89*xLK:шaB׸ 3kfȞPp?$Ut\C2&g [bj"58\BϟsO @B7xx v֡='ne34\*LaXiMT;t;|lK汶kx}I nQ \z Nzrėby%O7POaܽè}tjCRU.XT۾L  a & OCX pFx|OSnrX\ZY3p,DˍʌWъ84MK~[ѦmZM93Tk E3lFpN?=&h1Ѯ e_iIWA=սacFw`9a_S4 l*]N_^8j.* zb gnޚC:k[!R7CaF' (%z7A310"-#~r1A?S)U+ACU K(qNw^ faby˹@|6~v]/v27Տq؉+*Mqv'BC)^tTL=Vc0-BgS^v "P|ej >ƆW -3iA@ }8.hC{/o.D,&E-&*9)rY0]&/`'-|Zq7i(yWmb ?Bfs֗y+>lD|lwgwMSج#മj27`Ğc̸Uo9M,'-kܫCJxT1\ȉ9EDٗZs /U$MA >I,[(жd--hLPb߮{e9e0^z)v01C |EmF>^p#se'w:~"@4 UZ;'O0ofbC.F+xeb8c^z3!ܦO:1B,nX[kH\)7V5>Ӓ#&V~ߨ= G:j]]I;kR"}|-uy Xq*3)ЌE$%\*+kb)fZ[w_\%(Y|kwT M&}P- ^y[fORU2w!|(kw\a >?g26\6- eJЂh>@5f4KI@}w2.ۇ:Hfޖ>Y(67+|@m/iv|)|rK|JA2량ńgzsG4Ul4eeX+j0FR3R #0qU;ftgܤ V;sl ROS7_lLVY+֡Gq2B se<<5;J"syC'̳bjU,ҮV_[9fhu.,ht;{v4a=U=EEӨ/[8zǗs;ʨhub~1s }ا# :bG1d=InyR0İ+Ab`Mu|l3ţߙ`sr"Nr̝igd}61(c5{b8}p ~'*?h%m{AM=XIRUdEH-%? ".#.e߽2 t{amʹ*Kh]_1Yձ&t:Lw~2ֹɱM{-֛JhͱB}NK~:2o6*RfIv4g% :CaQRW6=(EZ\DiTӡlLڇl;vʼn(AAh!0o^--6h".ڽx>0@i]*|J8 B. WJXchN~yA's%%yM=T3dW>ݚKg5u^H{vdqN :",ĄoCIӒН&T;C3UDGFrQ `Fb$`C~٭z}Ԗe7D[4[$@@d`uk d×F YeU0[oPO&vsb'97h,sH8n&OC%);{S/b*ro|ck|ڤ ­?-X}a2 %_i`Bw#X5~eW,t+0%U+J D\{X|biLGAjx I[9yShuLQCRzI=̃8?~"tEpͮM [^ȼwwZማ;ݔ!=}9Kkl3S3iAn FݮZg|6$6am ^1&t|iK8^`lj(G+o1-\UK,TB-i _^sXKW)j +Ƣ'S7dPW$9Pdd-5qQ`ݲ򛚊9n蹂/ /}$'-T1R& H=; =ۆM]ݎVgGEJ+L /<դٌokQ}wqMYw|ka8Rv#B8$?,`HrHfۆ;68滯M*Q\ :b DH̴F~SZrp; |ASm0_p7qb9~ٶ "-p@t}1w];Xg m}4r"*(\ X+7ad:gv@ʰF\~W0v]{O&=A쯓DZBSRP&NíR-w̞$W~"{W:k&fNADWfR6-rcp*%BόldSfze%F]fy+7{Ho1j`>]&Z߰ׄß׳nGD+v:ڄ6|Oroַ^3bmM6hm󷁚~fwpE5G ӍW\t3v5_R؈ՀC5Fl$th&NU#;G\kOF,4$: ΡpQ#PD튉#[Ibh2H:v,HTnf=#XkkR髪Ãbp_ a}׺kv_[:WMfR6#Gء/PR^[ p:H-;sDXߊї`²д#l <=pѤ%wCh)#;(`,AGFх?s]urWˆ2SJݷM+1X/G܈@%rzgKFXW-!r\`ƞrd]{uRAZw,v=Y ć|)n~  SqǔrΑ۹~SClIMc2knJ6PNF mj6}''>&B˕>꥛nHI77jB1h/&e*:F/@$WgdRwV-h&{ya0Yɾl5Զ-Y7N\gK-~ƪ!D$ =)]-zW!l֓u]x'pn7Ia$a2,,_,Y.p&S*AĺXf|`:.PtؐI~aVw~ORuLfD rnJ-Ī>ˆyDs=#wT=f>C=U{D˄0˾GC̏>1]Y/5ΌRC(1-:C1.Ï7u|"UἹF9$қsN孝" ce$L)ydc7hpOD>5D,7+lU%3z!R.Qej6t1b%WojE!#I7_QD"$㹒5M|%=clFf$ϷêF?董nʲcZ&W1*nj#a{'d&׿&^rKZ [#NŸwˡq+(བy}is`eBz$k&tE3qa#4a9{Eٷ势D8lʘ'l1k,EPggJg胀A[clX5@DQ( ⌖v2==8b|hWVj|Sr(ƞVNɪ7zA}ɸ8ZMٶ3&œEc. CH[nʶLz"T}# hE'j(o*;ur. Jm.*pB[4 :AHz[ ^^_2R#JEZEoUr bB5<=~Ęf.aFh7٤BqiBDƿoO h|݇/S'"5өWzup@Lh*OXȒ ZiUx:i,bS!1g1 g]h|Zb5$/׋₟Pl7զ _4W&=L+N뚊R /,e`c>jkE\ィ3W_!걬o>6NS`54ā6>=_0P]GrHZ$*NsF}=$FHK䢋bLlzyMqw<_rC}Ջ8`^SKnSEy{@g4<OkTuU4Vf!X^)8̖CQK06%G|P!HK'/]9f a{7\ zO8\͌Gl' ~!#B+̰h`G{~פ*B95uxNUJQenk=xqBQ*iֿ?l/E]Yhp3?m~xwNT*ꦒTq| @F#O;gC97>Wéq?.uϡZFrWb4:=#S77x2z`C`tQ& xqtծQ:S%g_Q>D'ܰ$.s|=N5D"<e b1(Ʌ|̙C 0GDZ_M̭m^Y%1 KU!c7F׃ :E_RgcYs4jT7=52d{ ,~J 4YjA-&w)W^p;ES}Å07mըٛ! z?ܷ[t7zw g=&+GA]ntaQq"\b-)fhm&$X޽ԧwmj1Qv$KMe8v2P dk8m{ڸd3`3Sw2 Џ5 CsM]NpN5p 'm o!(44ʦW7ob M`K9"< 7b_aܡK  E*zLoÊO++&RgcBvx#x%uUIIȟc7j@*^lGn{evT4]BM"fc%=_a-Vt-hex$b 4QvkLumH-yfD0~Q8#u:'AfqvH~|"RTC,>=W[*:^5i)ǦV>QˁV g3Ͱ.qRDBL9e2&/8nC x9a12C}m_Uoj^E|fݞ&_JB"o,|}ץ#߀/Q-0lT%9{zf52.hk+1re۬EbkZ[G 4e%H:δaZ_(Fj5E vQim9u 汔'uUDsI;%9GW][+<$/! ,oq;HƷzGZ$ßO.Ӿɱ Z0?d X/xNK8"}`t/nq_orNo *O{B5G(RAU5dǓ3RO6x\A,IiQ%)Y5y,J@RSHwo ql27gCc6"נ`Mbӓ:W]g":n% $$;iyz>"^H`$dcKU2cц5"q<1̷;(@6|өqw*eaD{˱գs9DAW}}S꫋7?Q<%5PR0', A'b')V}8OA=4 UH8^_tq&xv*#m0(ܬdD S$y@l8wh&R;0bYQYZ@KߓZ!X`ۗ#XM'!K݁I , nhl$1H-m r/'$AFU<Ѐ)9&p4fԫ1)@ZGOa6KmGjP#F?pzΛOU%ux ETwT!7ҽ* 4plOĬ+iQHdP ,:>WP:GVD\k$QHDw1zLb}>20b-WXX!lvM"b@kFH) .D| 9>pm-kYC_pr #tK#cX(@Ab#F+["~L6l`T0YGbjCqp̪xVQgv[˨MPy8T؛#>4}͵Z-(Щ?9 ?`4m6-͂\=RXmuy"ueoӪbU.O4=gyo߃t>9,}A !4p5K)=Qke;%ThC~ s'mꌓx)(!Y/VbzbJUѳ)53 tQicGK=je 7+PI`3ITK6) f`#>pgL6l?l,n~'# K+i|C#by7 ͢X*fidtsIqʷ7x} kSicU 6~c @M\Kê 8y#նA)|3Xh%ɾNoL.^я*A hn$q$qeAQ^'U7I!:+cZ$ />xڽ7`_YDj=P5ST!FU Ϭ<6:$(}8@X:?w΍FJ*G> fos z!waUHm k~()_29J~GռHUGFITC_\v#ֻX C5۾{mMY= w,a(^x$4D]c=#fSv\Pң/ïWH+GRMAC2N/c;gTb&+?x,VOEtxe^O H1~os$ G_ʇtq-*!XgD)YHɆWr5WEb{ڭ{M'+NB} 1yotUOۗk0z%S x}T_F=yJƇ<_Whp&wqX*άVeJhYp/> e UID xr* w tõ5> sLF]xMkDj7}GD`9W` IW\TDNZ%7䉤Ͳh RGuOxrotwPjiiHpŹ+/iſL,Â7 R0Ѫ9m+@3Y-ۤ@zŒ&ĤAM7+9!C hb3ƺ4?9`/im6h1r&iP#DmN~N5>Q7[lJͅ!" U)'4nwmT)EUyu OmH#>Ko$9vc|-7&mJ]J+6EaY\+6f#gsBH6rh%뉕ɥFkOZRPYK&X1Qk]*p6b$FA*{R6t 1P@Mqzs/aZI ơ}tǠ3 ]1* Tc)FyvED#o&oD\ tfbsUzt,8S>&X= 䣤,~5q|(v&ޑ:D/tGv2$R NL9Չ]!M?vq~cH H>rTSpȈA&lΡwg'/JMf{wR;}ԃqPWtSΐU+?XQ&l*?o[ mx~͉ĕS:ВghBn1 ;;?jY>xv<{u[D>CO8IⱵծ"#[m|w`;zi;QMn~i4 =ՒwJPmŖ~c`$x*J3)TNs@ ).4-Q; RJphVFzha, f7f8$!#m#w0#g9v؄cFhX}u:K,q+ބkx\e\3k N_#.u4=V]oz 9c~ʭT}eMlӛ]dp@2zar t-10LG':-奛@<܉>7fI2m6" i[DC"Okݠ Q10.2#h)SљTf͓eqEīA ԶRB m:u-DK`jN_-;lwi!G2qu]-H[bϤ(: vFx]YiѸƆ;:},z0]'&Wc$lQq.kaɡA|0 P"x1U-[;VlF _nZ\ qj|102/"bp4+.VRt˴>)^G*I$lO*dcǜL6E?b(A mKbo .(R!1_"1Gn$ݾy"_9o)tsWaC%DBdâ>,|=)lylP ,n76Ӛ_'rѬvp4֐Q͟'A]g BD:i!54`vEվR`*-([Πmظ-y<٢@jC @u܈PE0 %e5& cvL{[8;@B0E$Ndٻ TBKGBȮZyAJj'pr{,XBqawI?q[mC/6-UYL?TmhS[sKNTW:Ld沨U %;vHo oɔ8xV9>@ š#b(ėXQ"QQڬ+){0xte8c~ /&,q~B[r} \"t͢2O+2 z =vޫy9xxp+(spQ"c"jm tAq[D8Iaz섖<D7oG ܼ 8ډP 1+T$h""%=,z׊#O+tX` Vٛ5'0 2EjHdh~i( "H߲e:[%ZO:g]/&$]aQ}zu8g=9HN3872c]wVY(mxσmb}|<:;¦v%8⢈Z L99(ݮ_IZY&So*-9~[U&(|P9Bum\@bʒqWw&ӈR'\دW;`.nZ X*eOY;啵{tuvL_7/}@Bnn7}Lϰh"HU)L¾dIs;ȼ"y2sxqX5.`එtC/+7G^wVaK;{Mfu ifF&}>8%fVzFK_ NŶ+ꙡ Jޏ뵭f/_. YP蠞ML-!piNj%hlK3#4륻+wNWbt vf {Jzb&v#j+j0SL^zJq?_^I FM=SU- uFO#)?Jfphb+07t}l;Y3OOܪTzƇ|̎+DU@ݘ=t\8Kq,ž||gUA_T江*Zȷ6hP_|esMp)2<  o4_a'*Y럋I8 v&5ir!tNRSH`'Čq$aNaY^Em>]5#aS#ue:Kd $R( P.@hBMƚds@`m0 5vQ/.N evNJ}Ͱb!P.G22`EXqb8.u|k&d@:MM.9hMn ZG BX2fdS9\oY*zs:N%BX+ӻ&8n(}!v+qLun#gg0M]H6X1`p x,,K!;ǩԪRr&aDכ]/ 934tEU0u30ރZ9"vj攵X ;u b>}rϤ!'!4:bꗕ)5X}_"+i Jc $8eREE۽'MW#DŽA؀"B5G 7u&sкNk:)J!::@& R+J1K&sxCACXhwix5̒""o˽xrz2(t@I43IyzҷrU&w$'CAD&MfJ|B%*xPYϣKRgNk3hJ L.)< ce09D=I]8(m;[$vlm 1{z`޳iE(@FT/r j0o{D/Srέܪq }5 {J nGZ^I8^!{CևN,$t #h2cBu(gdm\wlRJIh*下Ge+ĥTђ' nZpМޭvqD1RRNQ{GMh]L4D z)sl]$w̄b*4aXfQ:HkZ77p4(pJP\u%ɢJ$8V xѝ'O)ZyO~SMN,E` LJ=n_Mӗ"4vS.pxv"ς)C{vFI4ͯe/(rfSFaZ[C1w 1%}՝„h k[s;,vwcC )sPaB4ۙ1ڀx;?9,=[ Q,%E Xd@?N󂹀۲ЊwaU{J /"\^jPI T'}AK֓:ABEQ-tB|["9sθk߰&Y> :Y:ӕTV/o{j:/Sm &;:K>>lc#匽@<Dy-#SJG2W H:-),9%x J:<sLs1}κ* 3ZT +"ՋŽm޸쿙@ǵa+tq&E5/GO#,. y㺏_(rN&K;? UX߻;uҩ/gWoP(g(XVzT@kz`eu&:Ie0:*lj~du\9x54-OOyske$KA߷ejib 7v dz2YN| R\HղڧT-$%{m:153]iXbȗnwG,qLxղ#l`[Jԃԗr:#:zuy*hZ1@3Q \s5sa IȊ+*=)[N7cCN;ͳB]$C ^iI3ɔ?82jN SAoc7S ·+lgmC?ItlN./M?*PN?7%4VDN8Y+Wk3^ K? |c904{aB4Ʊ?JAuꏢꄪ$в5%B1M^~b3{n4iWoN|N0} y=կ7T@pPSc Tq^l 5e{g 9\lg| 0nc;ţV=<3b׉bK vܒ\rzcŇh~"Rښ-ؤ)$xEBōK(;Z2h~B:Z~%*_^p_JxXN$u-[ 50w's]:xD9җÉ'J.9OXsyy}y΀c-jUbxLQ8%F416rrae1|(!gӹRvOl[* ݏ2VaT2V }q*-)H\@J:r>gcO(ģ BcP^1dZ~]Jc=yD~QYwZnE#E*Vt20mߵׁwVp'w,̒$Z0j_$U3s]첊ڴLBBBC}51\'굷Jp{3e!Xwd;TɄQU}5(ڍ ,y]8+AeT//qa]Qya08;k&>C|%APe Q*=h #7'(znؽ8H[& ܿ]8sڠ*Ѩ "2Jcٸx^5CUUOYooeNۉ{ÓٔGCdk.Thèy)eww9^s04]9>b {,sltq/\~ݺ[Ͷ+Cc[!Zj,#fV$ssZR͕D#67YHFkHd k&XΤP5D 1YBζ~2Kd,o^!8h Aw|0r{v_ pA"R+ \ >ANLM@N\uΜad|XntuhW|+o~P"O-=4)84a/ﲝpB!h J@khIK&0VEH!@͘1Crï#q]Ӛecs!hMʤTMb< &Xe3uDqA N>חpȸjdSVns! dя[?Vyewާ6T#{aނF+}r e_I}Wf0ɛw!t[ n+i o5Og^w;V`U=053*U1猆1t}[ߠK'oW9߲@!D\>&F=*(fm(Ȃ\Mhv%M;빅67H( $c9aeV#&2ĔR8VqQJ$^^El~%]oUU+mlD8+IXadzY(,(T3tp&.-,A  K2) Oԇ~v7b$Y)6DU!tTnXOǶ4 !|ة-ovZ!,S O?;]ɢ1B=˫+]dXj`zWspP*wV̍]\4H( I YP/auQE `(NÀ[LND~7Bmtz"{ViJ}@NokSѹ]L1[8FD&v6'0NqũWysy%qL) 8>vg,b,! dc*rdd,3:"Ds,1]Fy~fz }1 Q7e 'ʈ /%- rGry#m 4O!n_PCk@m!Tɗ/ȥJi"v{Q1Wz=U" m(L*_Q#k*vT-(v7+{D6T’OIh\F̬ĭ4[x5`"N * Ȳ/ }(u5)OlMK}gQ&&3Pbk`2s;>EOZXQ6* yV S&΍s3*``g pRႛ1,!(&]Zy&UѴS:[!}=tג1H!qQ.~vbp &g@ T\yUw\?z'b0+^@Um_] }3^s͗u)9)OJKXF 7gSQ;% BS TL(]b5iI _"D.C Ǒ?-kSJS*sW+\o A9z+Q!UP6!*OF[H y`\~9D6DENvzM:+Nko:[r_vߪ~b3дo@nvšy ;OP]ef,{b332F`xBL_NXAIQqq~ѽD?!RJo$.'yثC"e]2){HU5y*,Y궞y}X2vX,?ܝH7r_ ?DbHӢn(a!kv7[F9__JJKc<lw7 @0c"3ݳ|oO1E++t { T2JAm!Xd\f_] S$N,X& z:!_/K| |w&Z|HܛUQp~/00t:WqF4벥6Vһр*l\wFB+en j3a8ͨvnzIS=7j`?u *bE#xhDWHlQ_SDHNy.`yBx#c'3@St)\*ad]iM/ +x)'_ap[6KTݍqXȤÛ$0E~H*+'{WA|:W8yW{bbRF9բ$;-;ufk}D-2Q>]ksN׽*Q? 2J預 \ G2">> >|RҾHNp8XH^CbWxh.G ؘ'/!+\W.K#Ni}UC)ί@L;@L8!ES\-_:c."3Gj8z!S!n%hs&3BxL_'Ԧxdma"* y_$8*+kcʡ臏5*";Ÿe8Iȍn*l~C2\m+mPof 3ܙ ujQR:9v lXOwЖ%!Hޢ5W5mǥmCfeA ArnҲH<ˏ2am_Rus(7)h1V91 tj8jO>E>'-LXz>}hW&$ HI ޯBUW_ryI!τhQBmWRL(RmCk1.G'N} yz.y0a[RaɄ~Lqh\ Q_$ʸm[ T088?hkA;{-놹¯Z<unE&RUd=Ċf F])V+ ?Q:03LŊx (ڂ\9[&.)+ T$yDďY!VUf}T0i{h[ ;7bg?(F{ǝ*jZw"~ 93'VG 41 F3MJQwo(rw='p,;%Jf84cSCe@gdtGgXfuvcB[A*O H8ov\@t.հZOj}hLNƍDMM*sBlҤnKgDGR}ןI|:60@Bfm'}]aӊHkrdK1<1@P{;%'_< p%)*at \BANg h2آcabz$ɭ CkMGDS_h/uyH`ԑhvAX7QG(ہ_ƮJ/ElFY>7N&om‰5c'>vkD=ʫ3s3hM ͟_ 0}ׯ5B13sOH_H/NuycDFy)Bk])\{lK;[Nݱ8PJZR8[9~\`ڻs`R _SI$Ta9 rVG.8+:WpY+li6; Y>e6aOQ!!Y.BHK>HADZo GdI P 7 'ڵ}u`;ciwN}Uhx~n na[uN ,3N _i7"wzCM`Y--[1"HSRȱԖ([`4m c!X٭$^l+= Cݢ&Gٽ|eߋ8pa\@˝JZU=܎ߑ.p~chzm@ѰEaD^1U$OUUoX52`Ȅۺvû5|F]rDMm[~=sB }P+p[|baަ26,,;\%u}J+[ڙA7oj1`~̟?(AJ;&US7/OXJf>ۛMjej)6P1_4)eH`겼!. al߮M!x; *zpEzl+OSi,iNJfIc8n }t<2T~Ym`),F^$Q!|n "wʿPp~IJvdW2C\.=w(,(bl8vl9RK_=1Cՠl)]s64.[4Cr /N( U땅MƋSEOG; qisH hy AU5f0/WTQshIsHZX;ybb9f 3_'_| nMl_s]QᘋWwLPDWDh7T}>KH<`lX{|BsX3 qal@,0^"Kz۫"V5,ߤ^qxةo݊ey-z8K 8RJ7۝HET)j*61T+= K C@m4,_0x+=ESX&$@x wUC٪1o\6׫= y?$ Hj%ǯCBCyD/O(V`Z ;r|P 8 8՚ \e˃5MdVqzUyd/| V1es(pzђF;65 ?V|U\*Y,|,hy+3򭑤^>TO[1As;]g7)A3 {4{iOQ],X: nP1k08h1zЮ.k?7`%_o:e<ۖqN?!X֭д]5џ6 M7[(D5 KL \`X?ˊn0J7e1%In; #5+_.REilߝ0K}*3b ֹxAlAB:_&Li9 8  WX?4ys<0!HU[KO[{t-77 Pr#ZoŒ+{_wK ʭv,cZm1qx7/$LJb&&ɳAY: ï,ߛC~a=<+tZzvhԁ>X>)ne@۬g嗍D谎T+%ddUDU))V 6|4>w.ohBwa+T Xo'j6^U7rfA*:m dr34(™4=Smųv%VX]5p/28Ʊc5P*(((L@H)4ҷ:{$f!٨/>6駊]VU=%NOik Xͺ"3wF ImG.C-_E0#ytE q~y`9c%(lS#(BI~4XkFŕ JlhdϮ$'=&l/U=_"`Jd1]liy MIfo&,fkY';{Bۊ2m-8j&2v"_Tbz` ~Q87')%f~ 6t~y:}JK^,OwmNUp h O\ğMIlj0`gBvu2%ȆSAv(}ΟW<[k[y,O` (AIw5Zif0g " ޒ6\:"8x]h 7῞m8ՒtV'EvO稍MX^4X8v>N-]/ښ jV)B?@s(U /iG A ]N(}94`` "+ >ZxPv+`a!ȑմ=kfb;e?|b躉sJ~GqU5N} Mn{j-mͮ\_\6gjcOJq羖.e7 ]+C`*čS*jڻV_cWyBU}T; m.YV jbAnbSS]Ds5,Jw&FzMad0܉δM76G WviyҚ|j¿&S>̛qluʢ7%W -Fz.$".zbMCtK^ d!Q' h9;m[;"WUrg$Kӯ Q4pp@8W#pZPϬzu:|v$D(-=^mG𚐇KˠT&OVz5 x'ck%Z-S?+`:-]s`rfOlq̘{N2==iq'v:X42:Z19&?#א b/ؘl73s<\$f 5] $cF򰕘[4Υ:c]O/pYlz`C[(68lHٷGH`9'0PmfoBK`pr$3XE]P~:qG.dr{ف, _q+yNvXz\4V#Y$њócq<}kl.bP;aUL]:$8P:4MQ[N5knh#EyomP|{h-%(ȻoѼp`wlpa:Bu`>^yyA>Kw!xĄ e˱>hhi^`yD3F#h ~:o&$)%Fڎ#a02ІbJYڪq|3B8h>5ۛ>) &5>Ud@\"e][wM:YlWNI*"g7_0ˎ΃SHvf`C*$׍= ){:xԀNf12&3H 1hʈqB8-* Cm `2jAx#HTm۞vNHm7+1'Cw>$ +YhEnX:t:j?Ҷgڊcd 1')d2~""V[gk2UX_D>VV" ^P^+׵/CPN*9"POZI+:QlmjR'ѬV,S̠C$VNAm-r~зFiEl>P_|k;OtR0;Nwc6|R@¹;9Joj QE)Ɣ;D|*r_kgdZFbϯܥMn;@?NMĬ+TOhnsHu.h%WwnN|_}p0Kw{^w]t܎e2 q]A9$ `TH^S#=`6 ְUErW׃@] uuڦj'S!:!9ViʻCqي-d1AED=X^&ńܣN6}~ Z,)=K@Xi!B)|ga$:_I7\>TQ (i,PݱYxAϗ-n{1ͭQЧB@[7X4v.lٖ%ppC&qղ= RR lk,4Lѿ Uw1OU˳=ϻzZ:,WuM| EӞ6aW#(C)|I`Y S¡i=1[>CYmc y13EhsvVnʕl "R@ Lȁ˸FR; \'m1m8q|'qHG0w27M2nИ5^/TD_/bRI-x8kK'[|u þUy7\&"ނtH4_J-p m#*F(sDs:#u)c>ڢETR ݿF0D3u򸷐KPك6*[?b_m]eJPuGܲNIǯ-ͧB^w0a-ӸaGn<ɑ0o搥!Z V:8X$l.$5xi4jSqȊ17f6ey`RRNNqu9s4&zcxtëʪ[9׬feJWg Nd?}$99xͽ.38b!/rI[=S=]ʖ=2._=o>ǏA/:ql#yq+F`yvLD>_'1FD Jg\YgZc-T@}r?N0(HiG`zqJ"Ajgn5 %y+νTs_^贛(Oa+j;VXA ?9Uo~lpA [ (W#k}(9y{~#]r騍ndUpCh/de{C(f x_rʡ؇-Yt: [;VX~~.TžʨSvA?ȑT|(/1ׇr"!_?B') :2L,"74yA[ 1ӯE-I.%͓8G}Yy7ޣ5]G9 8ݎA! r3 L<9=^cTS{~M` NR~YeO/cV3ӑٷ/˼3C֣욚3w1u,Yנ'ЕhcJ&o@6Q196߻e A%-5.}RrNV'Xi=ÉpVgkJ9mDE@3 IA=vM>\|/E Qr>ّǥ+gB]ź9DkVt$cs%X8)Af)2Y J/)CKţuum?2Kx>٧D:Ec[ΘzC}UJ 2r`yÀ9 ڨDbAfJ^_7 G9C %mAmQ[o80+6֙{t'P GlҨ}ˎ(^q;FLBYg/ 8#&RF}- Vp:ZS('.65ZOɪ'dIݤݻ=#\.رB2YG[h:WJZ*ӧSĹ+jkr!nM?ql钫;4ꉐ:ށ"G܇ irLr S;䲛9B,}șьbڌꌤ֯տppwaªv)ם`tV>qTdԦZq=vFKy'Aq!oi^6@xa[sݦ';B幋тǘfhEgUeJSКm"Ox, ⺤jOLSg9bnbOYD j.]&8o0] Z2ģx-UՌ'7눩D; (^cEBW%V%v˪9n?\H<CJRZ.(0+^&Aδsmn^]kjqTZB#}fw !g15B}bf۪X֟1xj=(mSߨ?V]'̓>ԕr8eiZ*5P9m۴X DÐ}9ljRZ@lM`4Э O߸j̾4.\ Qk\ |<%Z?4E4-4{VB+.Y'T^Z@s߹$f􋫓'O);#KW𿬕ũaEzT= */ Ɂ1 k6|&=a2%F?@Oۜ~ sw EfzL3C~~%~24bt8U/fXs}Δ U;bb{K]<<_! n9or8laM$6]0Ɇ, n-;;0%'s?&p ;+l!rap/5 YN`^ 3i—Odsd}5ff9/H`41{k#OF-ɛw* 9ERл:)<]*¿lr+'$8(Y5 KV}U^ i%՘h@KRߏCdY>ӐSdjM3!m[Bsn ;4%{.(g *r$$UE%usF]O7io"`6AkuWrho/ҏaf\<$jRG-o I4O'Xk14FCZ,Et sE+lc/(˲H xmPK32w{}e D}Ȯ QrJW~EݟƬsgH@w%|2Q˦0ݟ}| !3Xn_CXAT}o#*Tߌ+@}^7@' YRr&iF%T n0-_i{b 'N%lu!9vJH!5FkDj^_`t˹2a<8A KQZJp,b=&Ov~Ҵm= hfѲ8h2B΀CPƶ5-^SyA]ƣx SE(ΰT[):Xr(R᜝BΠwkzTO [PoQ5WFQQij0N?4U$1-$M⥄d[sAg[8Cʩm>#p&HG<9R089}U>Y!߅v@b9|a#QrWV| S rP ?q*jI&Dx=7#ښ"ڨe%Ԁ{3q%ei7eN]J /n9].cJqg!˗6Q{Jeq$vkPS"YoeY!Djx3in$9|u-beG:zBQ݊}tŽ4F|\1TrkC쨢q רlJГgE3R =pN1@ \|HSΏ (Zo'2 )(`T䏠qm,iп#AY\CȦIlѷ sY ǡ(1#á)(+dX}M>S6+ꢓU14`n8A/:3y6Nn) qW#jf, 3翽jDQ~~:Y*EK'oQ)R]ʠf< Rm˿teȗŭj&䒅N r-0j\"[/]%v ȜP D9)hǪ,/HqXD^b937f)3 8p9BawZ hc#./9kD]rMj&ޯb8g1y֌0/q>OR#:.ߔT}(װ>TK5WBj}lA%D6,%@I%k OcF,OJLyBP(O/V,׀C@ ɧ27SО+%sjG"WkV[Bb].r,DN`ZTr*h9g>(ɁNFs;ti|ǥɑ&u(WiQ\MM$IX89D*;]Vd 0K xyH@w& /MCMCOf d?( tN.w#a)֦T_{yӝHp}NSN *䡗q,fD'шl6!emt}h&{!OP1dnߚKܧTPTFE@!P<%s-=+@T>zbAߜP0X7*iS&RnAj$E #7\I-f}V)sI苤UQ=~=>1߫XȂ֜~# 2%6Z*&ƷìmUANti&~<WEZ7tlN;WQM D!vɟ %h=/ =wT!0n&:ޖGu!X קiцOZ`x!CdT̛08N^@nq+'6'|e_BDSs]ojQ2 yGK^ `_UQ˃I'f:}v֙ \8t,v<WW !VA_#X~Ӽ4R˜sR{Z ո WtYz_Ϝ7d#?QEԿn-準4vާ-H]lм\ck=D P_^ҵkkROԑ?n#K%<~w#*;v`,QA"<|m'H B \D6~+x`P{="?DrZsxg״07~X`"WQ2v(#;#ġvG[Jm嵷6;K" f2 1K}** w" Ԗm6jb10GZuѠ&* uBIk!#[(\[}Ʃg}el[׆q`iz#?WZO[[x\s+r JyA>UV ے_6( Wl` p㕕f\n^#E]w}Bśuzq1E{j Plha;du5.@ε]@2M/cqUMfݛʬ' z7uUj):%Avzs΁Ĭ,P8&`̾Swys!2YCzc6ņvj7縨Juk6}fc~ R\UVW&5I)¯Hve{3H_;WCKN D<{KtG}̸B{ocIu7fwk4ut,qmOoj\9>wвi>ݻi2ὤѰN# t@*ne@3nQzO~- =0>t.ZUsd4n܁NBr*G`r6ъ&0;HoI,¨>2B[[O-#:!`՟l4V+-a{N>$˩t BG8N+@8XUr&I A7LAF͙>@aF2 9L8-6e9DZFpmЋFcs\ć 䤍8ІɷE:AysniV3[J wY[CF>&_žoK/>rF[wܙ)hDM1jd <޷/}j1 %m % v~sut|\/ jYdPYAVϜ VMz'WC0OWm~=b: KK1|ɯE}sm>olfl6Q3Pڬ5Ot9Wݑ͑%LS| =\GL{vQgcŷ|v&'nM$LkkzEU|R|4Tc_< DeTmb!N&!B.1!($M,;vI _%'z{͓|sOiܑS B5p%j\s"s o]MgR{s.]ns]s<+r"dौ:҃AۮxΥ&DFj;"]VxZ&zqnsvuϭ3[J{-E6?+TRv-|܌ɴÏ&52";Od.yxXMW=2c;bclOQ[gVVY)VES`h3~UOh)gnԜ.&H/9n:oq.ofE3-,_WᓆegymޜbP'BQBI3|D]QFN j$ \\ {߰=b'kdc9t r>e,c`re Y#h;W&@BzÎ'WЮA%_\"PxUc]&gkG"h;;(NEO!V㧇krM- u)rY_O G1jыhrlDLܼ7]%&F \0 }N<ۖs- :. 4,a@l8]%ϋ,ϟZDwz=>YnatM}̠rQ}ӒV~ʞॵkyjSd ]=1O߃!/Dy~}~k!jBW gacG6r#I(OAR|T#V\y^Ơ=(m܄9q2P!agb2LW*ݢBJ*q]aR}4zQv4$G[~.LI ȸ6+$vH>q%V`8S GZ!=kLEeK{ț-`̣i:ɛx3Uk_>e0%ga}|MƼ9eWNFdB'άt4`C"Q醲Yt ZbB5wkR< p Y(G cEdˆXŹ< g?STUL1S"}XGc pr}_>"Oi?JZR>sYbQ>r ~_ }`ks65o`0c(y^!!kQK?d(6V.MFVN׃.a,s2W:|㸜iŴ9,_jIz~ $lUѽŚTG\1~ѡyYP z\ykݗdd@Sm<@+;puE28HE:x˼]-% / IV+h)jkL_׾r dNս_W&ew"s$2,rI+*`"y2Lj5 50jßlߘ}$cЋ+6ۨiUPs.-;_4Czti{%hFnF64ۭNj@F zއ<0n"bw&B4:T]qlm6r8o+nQ}*B>@ލ:t:Gg(QZro܎5RRnDB,!u!_JO(f O֕z6͢ᢨnQ /uxABVjb {&gZ{۟tJ&}y-D 1nTJ*Q/4N+TNm,^ъ]kUoPIW EE[7&Z5L_tNextW@:`/h0) )cJb ƣ 5-!Ib*<0 "gĝ[eǐ5fLX!ĕz|!K7 W& <Lnםbaa"J6G%6w?;_mLCvIeb;_6uLgh'm/S%We%J^?nFJ<9abOC ,s.wYh6bfYg%Z,Lc:6WC'Ľg!\ [PޏlbkijERJ:Y֟䧳V\T4D@>\%!L$vىZg+86&V7{-dBV *n^m=5kD9nx)`/R"P[vvjbKBOoTiq=CO7v:M}({.`a$H-ohםQBқ8QC%,G^=>]}ȧ[ U+DC5209ǂb=wZ ~:ndpp_u*& 6ˈb+S;๋e-/\`Ewྊد1lu\bMg }WEa0{fS!BCE 2N&:6xYBo3O5v+}l!nW"K\UPA1_DUlL9_p*,& Ϸ3DÈ0rAx4x;K2d? bs͒t˙N(-0kVdU,!i܌VS=mյ qfPoXg9 1-NAh%20 /1,!GvH*#1Q•FҢu)| ̩3QA~w·:KG` C|2Wmr;Ȉ5+OQ9+Z&,$; .^#o`0}T'X\3O+Vs9 7\3dGnm \e(oJDcS 顎+70D7v塿#Y^ZNEt+=6'yᄼ5!qyu}jUh3s(Z<٫QB搶4Z2*]ȝk0okM&2q߆}BOgr2r9ͣ%i޻ t8Fq|oh#e)tTߑzؔU''$0ptN4zx"mXIwGcvzaGP IK{Nd,cP%UI5I16j񝝓XҐ{eV"+W ! r%H7t|.hua,G`QV<05B]MX w=L RRܞ KX8}z7R裖SdA;d Q91  {^'ߎ҃eEc>[jN nóZ}YeNot3Rd9?m糕wrQU#bSMxܻIlًuz/0a[٘+@`48u;wa&k[=?w"&K[[;UyB"9 gAU,7B4 pp3ֈtc{}@xcZF&.r6RqB!!(cM]3 v|F/Ɯ7z.~TBGJ 1`aJaݢ5˒% O k 2.-`1X'QĤ< "o]]ck@i~5{]w@m¥q6x{| o^Ck^H76|9c$Ģ9vQNi,ﶕBGC%&:I90XO]>AgOmwvu4jLanIqZ$-)'Suɋ}V6RG``^2Sc줏kR]2@3q\+,lІgyOd+2e䢫zx6U}SFN;{V]pyaG Â@U?E7 x+9t\i2 3ކm9 xa~޲hkfcZf0ȜN.2tWEqOzƖL!I>Gd4.[1;쌟aV.HQ Q~&=~gFV^7 S>?C97w ;~G1Į Cs%QB&/Dg(cZW?9T5ʌI^S^;Tܽu7}}!]oYpvҜVwJBoތ^^M<#n{fyhtŴ&!;\>(RBG:^&B(ޟ䰾s+%M>ҎNmA,vPӽR炶P57^} :`ZYK$Eћh0wƬA1U^&yhCVkwyxv2ϐԬ:h_;LS>DwVy`L KNj>gk&^U(nj6_}y<8X6Gc %9|Yh͊^WY4M UJ,E BT!qs̗ODTe^̏R^ٱ4Qٌ-0dcuϭ|fR<6CtA{ӹ.肆|E@˶Qpt< f|Pq F'ͻb7Y=jzgK/V/\̱k.~+ݖ- &̖l[sb,Y 3h<3l}?H%KGϺ<\Cd)Cx"qCj"۲νf2JB݅"S` H:#k:S 4!'jW`2rx!']aVI|JϟڥBpݤ|B dKch˳\4P`WQpB h_;l@틱P V5[:$oV⻃>Ưq@6#Y\ }Y1 t"e&lA!؟ktUr)GڛMy^o˱, e#plSQ$XF+P) Ahk-qČ@?"J3L56R?rkpw,BI;Nި da4ѠR!׀A?>޳@^jjۄO͂j=B/ 1H+W&橍bM/ڗh#iѳF5vTu3#}g˰)-?yQ,*$*"|)KfmΤ>7O)nʥ:%󰖹jѳ1vI 5_ͱƖ+!] h~#k+ʎ`7QZ.+kz})4Ff!"۰}(]UtzSjUs֭e#+q =cCrҺ𑫾d?=(LDKפJ~痺2SVzy)#LWFFĻ "ZyUV%M|`!<=gk;wToQ*Jij g(hwj}b  Ūݭ3<2[ \QR=Շ.XP$ߙ?zo :?kv+1get{u/EŠo (jCG 2>qUUǺ):(=M9:|:ѴZ8Rj-RQq:+zǪ0j.U[9%-\-1n֠(^{K׌Pq *75]a4g$P'b*0geuJn1M( Н%} [Q/ 'æ45I{Ƥ@Au)]+]_ г1ɽ aTy*joi2k9^w z4IRGO\V C Ci|;AFB8Oψ38E"zS?1\14X/p2 =s?bƪ5hya'C,хmAsC㐻c<2-KkY)Xr*<ݥ+oJj:?jN5T+* :͇HDFfr)ͩv=,>y4_ʾTAUOG>+_7ʢ?IC$P:3ԂoYY\`\!lJ-[B(ٷnMĭ2c~V ({~Hen6E$OSςmVWC?x|/7 yo&=N ޣɹ f`+.`}O_K|{zE\ޣ% 6ԭk$̙xrpA`t\u֠Ɍ÷x$9,~Tx`H'33E7gEzinhnE*.fߥ-Q3P~@hei듖WQΒd+H6d 8UJ.gS^-p'p9G KcAJ7ޤ5L؂qg9O_5;sשLB!d0(2ΧdwCݙKYUdL ^ Nث=6Ae VԜY[zbm޹Μ/]3;R+]8HD .Gb4=妷2:yjIu4~6 6ZxB 'OBT˧o>CGߤ1SFcr:Ƶ+6Ätxaߗ!joO;cChaYcoNww㴄Wџyݨ[m~C@N\ E,Of5XE._<ݵDJ+^,OxEAo9C_\\՛L}9oyrW NzIt!0yĤOsqTͳ'n9U(F##]\- _h@tѥCMiec Uo0f ұɦyyS֜YqƏMAlCh*p\zӻ--^&0u|^ "]uBpgмOK,pL` EvQB7͋-7JH/(a*d"ajHQMiC'!\+ D *}!SoP^z%V Ve#H(/eUZ?VCPqj\"H:~`8A {gN7|>UIwc/Gp{]vbȓf`j3EhOͽ)@gq^i!fsɧx~4^Eżmf^^.oweS%]/=L29IW߉[lp^VS-OoOhOTMbܢ )$Jg` :K0+4,׌YߵϷ0Uu#V־|a'|cxEԬa|S2;W`W/u': 9/U`[p\-U3rN.b:b]wi7ڹ3JB%}PKaiC8UezKASVV0Me. H?a`:I5RDð*<8p8T odS&OyeHC,/ LN k\wO1dj^m`WvCA%)*N"F_QϹ"k;QJuj?f1VAF]96p>]/b82,MZǾbMsj67kεN]T5bNI$@03HU4abQ>/:bK'Cm}4c|'tMc!Ea< m$yp v fqbt1{^hpj ˽MmXH[KN%`+`qw]ݓL Nj檫 U^um8S %{~v#q7P >'S9[~(m# S6QmDn _=!"$7l7G gaC iM0B',*"y[ӳS?PLd?˫XѴ )s9R;0[`]8EI+EنJPt&D-\OmSwQK,#V:I!7ɌRݸ ޘ7ڛ_F נ~e`PINJqզp]D6O_%ҫjйyQB?NaP}y^y;%7@yJPK Ma7\UcW*ɦnhv .#?oP J.CZM0nQ(/,y/V-֛emo]!q2"qA;/C=-2-xzC9.i#,nXq?ya"4)m(끌hPMg-N1W*:(Bw:k5ĺr7Cpjbܱa._Eo%^ D1:`!սκޫFiu[Yg6WȽh#7=1hlJ: x>cm+ Z< \{MVJ$4?50N#nzH[MFz RdzfoTznS,S?R$}Dz,HJkIف]%񱄥ljJB,8Qk, dp~9 ? LkbZ"Q~zx!PW'kj ::f0\eʍZ.tW3]ՋǑ {O?0(&c* Xy[T/Q#g7} {vOEJdVEnWlBU(=2-gD2ڜʓu^0YD":P|Ì7l&-+B0n:][Q ^p :̄0nu(m|{E*XBi$8Y{t$2A7Wz)ЙG ]J" Rcԣ-S8ap lwM[z=/WvQ<$R`%\+h[nϋx؄T:KHMɸc/Y - v(rb ~i(\n_էN̉h7KW&n%Zld5*!/D*JGl3"%ivUqd-xmq[H=pmO9oL*z^˪SǺi."e\`KƇi"2 =M`/\:w76V+I " *BK%+Wv;Gw4jyXЋ|t܊Q-ã p~׼Ҫ;O"=HWN B]#rT%.$Q%iȎTc@4ܪU@kkn= kv˛}_gNLFMXүyHzئÄ H6(bχlpp~~gȸhP~ ov>'䉭''_ZAׇ,㽒JwR D7w$+C<h}KŴ8{Q I0PDrfɟg 㫁碞Ls*:ODC۝ٌn΂7rdra:2aA/ DА+fߑL86bX WW,vM ruԖso~J-h .gB.zQ2/wwuWOV/ )fH|5+q,$qV,-stØ T"g| Ve^]Vih4uk6d}/12W@u݉4߰#ZZlcKIoV~/gh; D?,z䎞{zSbsi ݁ NG=VuE9Ue/0T|H? ; v] .oN2 T,|O4苪&p!  Xo{@hIT<VeY9YӃOy C4+Ly*2_+{},Y+! +'r?B&5ǥ@m蛻U{-#t@#JBjrA,=wdЎ!O,G`) ۚDxJSʔ"`(VZRp 8V =A/ԍ#FRkIF|Y"QlB]{*9R1@5S)T3j' ɈK !sfJ1ЪS"I_[k2X l:ZbO ʷdbD)/UABbٻ 2 Hd9)L.Ҏh_ ѯ0& ߵ5nhvjgz;_2! 4῝S$2%٨l~M7my38~|ќ%Jގ]׸Sc;X^.)|J^|̰QQ뻊4+#}|ѧaX@ EPk o"wBӐ״,S<uY:v w!"jݵdވjqv_y3| 0mbuhmoY~c_6ejqCt|ױN!wVc%dy=UbId;' YxZa)vLHeuC) ,T<1 '3wV[ɿ6N=E`-3P3LɩmM& C.7AA<63G%G{ŠzLAȉtRpJ~p}{P[㲵` X+B=PLnE>]>G}r?긧o& '#&v3!]jExP.RmNz+MU5:XEf:tƖEVbDN;td /Y4Cy&^ʫqU n-}F, 񩣰 XCG@ MlY<& iuZ@ <@g Ò(` vst5e7W)">Nb1/$߇d'ȽtV9 #6i}8B. 4Ұ}7JQnski_/.:xܝk{KNkU8gLGgB :ý_|U9Ah06Ǧx·vfr:<_i5ĭK*PQaZ6鷸7lT*njI * 4496.fۣ R%u6惥*C-8,y> }opdPl20&=aJR!{: XjT#@{,Psе)892y3j x(JZմ1U#ՙJ ` y+ ?xX7F%[!B|6ǃ{Ҩnxu`XnyPtN>k#xNSўf_ۘ8Od܉~, 3,.֑o!ZĢƜvG"JH#Rʳfy{z(z~%!Ӭv emƐ(y-?Re9a@Ѽ8n^AAP OuML$Pa rϊ)A}nz^C{.zA;O|!^Q@biYAuۇRi"$Q:UFPbdbQ3)U(h S#}tg9ҋfa)k;r8v/s9jw/o9DHwô|VqakҞ)#]") Q.g~*ЗH|w0#1n"7?mյ/t:G˟KtdҦ~kӓ`+nwM9>xUIPl =T`=샾D1k^rMn{&;d?о>H &Y}\]S,ٺFml #S@ƋmK7JFF2qqiQBWُ៹uvljr=|a]6lEʬ;Voxd-:,xBASs!$UH@GXk_ mfBRSm?NX)f'oS9&GR`fbx."ȷ Up 1IJbF_)Hܕ1; *6ϡ(Pb8tBA׶cB>lDr SLۘ~|-V ! Î =̧>$8MEa±?Y6׷??`(4Sh|}3Uhn5GS\3B!S*([,hf2&iژY4t"_t9i1j8K7(:}1Xlȉ k WӃ:Mw4YNf3:hy8?M!6e$k%rHi@ wN**{xL3]Bw1qcl0ȮUE@&^K6 ڇxО i5nfݻ:ppR-?s ?2͖q-it-djL&Q.|/>xo c8<܌ZtC*@?g;mb;`C|=;=5nrս{>b,W>pQV*xy,2cx"UR2² 7h7wѵlt+4f7{ߊ x6k<$Gߋ<21^B= 2b:t9"{%*:] 4vX:=-H]*ms{!=Z/G5:L;fL*frZ[g`Ǡ I/j`mR<m BF7ipHKu~ C3=TlJ=h)ăZ)XYF4ݸZo&j=R@Ek+ovd蹝,pS>F%@$+1YԹg@hF7[BK՟֦GI` ~9Ul6ont0LͦRG$8:T~m4wJ^JD v9^%4w2<7>59ν?۽>YT#F-nD&6o){K qtU|FQWeN :nj5,gxūv >J/)Y$(j+87WA{ pQƣ=_Xg/]`; y=kvKəv,a<\r\D?Zua!;2 &0{<˚]#,Ӟ,2'8W5P&́:`Ya#yal5bYpaczmDUeS Eb0{gwY/i{KZ?$l{LH氯9@Tf3GWghzL}-/,@b)˕QUN% B%30dPy4בE4b8'\Hi+馶B#8onWn[LWnLj2SWϊ_ZW+uLōOjOB͖`CM5|?&M,=-,Maw?&F* N0'PL9wKRv)\y: ӖUUdK:ǒl f7 6k*pi@eoSۏ0F{#e@?Mʨ#SJmR2KH݁\/:7+ȥO7j5=L܅Dmί6\5<6V-CHd+1(E[+y39"VƐդaXaKh (b pG/ %{RUx{{ܯ$9 l+LxH:^MwkE bE@sno"qHFCzv-R5üND}0J"07tQCّ1a׿dTzDaW>Jn.P.ĕ2P:ĐD=4pvZDrKp\ _'FB ed3W.(,^9tIF`؋, m_s]U,9je〘JUςk\@;0 &xms1&[!kk.J砦ɸ]pQn۬g!S<4-\Yܾ:gO5>9Vb}f?5d!3CY݄^=#J5w|hL *=3ϙ"4u#6|]ǒMfG,]i1:fznASfoRC:;K|j3*jRѓhdD" 7}9x@.ѵ~~if8c8Q8͛MLbiK2;W)&K(&`lj#\J > ~0ЁL)G"QdIhv3DKsп5SoCٽIH0dzeTH{U6knQ=X*b. JB$ֆ2Au\Nw`=̟Xvի4gBa]%ٿ]HZF|cf )[k6|tXm)_{SBeDs-[doLxe:EN)dƦ X<"A!Oti\46]$_Rg2.w6"LmfyXcWimVwzVrR/RD=b}A"߽Q '+hiUZTg6sJ#6N9T5g>C cCGtbEڍ[?'E7%FaB7Yr*aZ/;5 ]t@{=YL sXS+Ա3QLL+h>iy|`U U9I((tƏx+#Tv: oeY*HJeGí?ͺZ@>tT=K NU#,0t]Sd*{mD~G+6}nۚ{W"@{s%nU,qX[ 93 CǬkpױxFDeYJB.G5l&tO"K:QơP}=ih{_+XV]^>t!RlC1Y-6gr!iCxձ is[X!=s18WΖ|3M\ڂ! DG$)qOD3];'XnYa=Ve̽B]XM0$:pa[B)rz'0o ͔ɷJ|Wps#밝66 j- t9`it2GM#`C\9""عxI'7O;Vcd44KwHob407˞gaN)#4m`f*`3Z%(L c]{;C?FdݫYb:z8ThQki49GKwـd笺@*ضָ*=d !tO0M_REF02tv'%em nP%r1=UE7Hn~TD{3 ;b@lu7.D&%3BF{aI-uD&@.+~ C[_lUDhf+k6hlXrl@FXV>S;5D_}F":*$+AG}|=]?KB?`vAVr,B%~֛ hgͨ:ӓʿgOy>7 s7x3 dNc:~$%ZJͫ8 CPR%2NN}v.ϧnN~Atn&'ҋ]|\~:y=ځVq^r4@&(~ #G e9=$a_&&0lpƩT9 d#gCԢKl{eKì^"H쎁-JR7F G/]3X'TdR$yAH'WZp}lbU"uLXwEQI#wub1#)yʉ @wHmT v&Z튢Pu@E樎QI]IC^4Lj{%gú;}I,Yb -lZ_񁌘 nEtSZA $jWKQ Ԕ %ΌB;DyPLucX xk4W2u<qb 3'' qVo^\ 'ә͉: >򈼸h2eE^m6=<;=Y/SmE7QIRCcΚ~wereQgjoRw>'# )oo~E >ipKoc;3`1POh-h*&~eCUP[Ք*Vݑ";[ VnaԪ0iDPQQRJ\& -BTbFAP@-0g&b. 1fMн3 mFuX+JȑCܓâ|Ц)j5ߜVNFḻDt`<~).|Qsk.L70$^3 JЮks݃|Bt`G \FflGz A]N_3qL-10B'./K/^C S?22QM+\>#FAߥYh@C"E{pڝ+H`Op} `m meBdST=].W8 xחc=7Rdd|$9)`4^::Oc^3dc:?- ug湅ۇjT{tnY. tx|gmbZJuܻzd?fHE^qqmbylPQo;B%vsBU> V>FY5tG~MO!Ծ_ƌuobRʲ '!̃ :W~Ѧ͓D1pQ=_?x"" nWȟy`iW# "Pcda@ՌfGW'&iJÌ (rWTb%*}rfR2(([ΐ DcRM-qwwM0P1^sS&3X>`1y2ֺ`(J4&ZNBI)Xn*F ڿ)`8V7}z ,Uw{VMgJ{ڮ)֌zE.R4%K^X$ݸ֢z` 3\N ,TMZu!f[$EbwLB'HZhԵS<:PRjr S.`S^A{Dk'e85=$+;oh=:IƝGHM .Qݽ#X7CW0|`x䓑9 .\=Rw/sAŊx\p!IL؏M*6&YNF6-C"qQ=tLgQz{e~ h4؄ z޴[=@:C Zm {otUPTlzvNB]}=t,'@l˟)ǝÆ`O̵oXF g[^61l]>*XFf9xZV>'WxDE"O ϥ݃ިoT8F߳.bO< aLYwE/e{s?`Q%691wc,:nӄvXu[,GɛJ%8Z8g+]2 n(ȭmCz5y۫$ھ)yIнB-8#ZWDqO 1#a$"I$'[N: }?{:ik )XQZ>2z:ԟ;$hae?L7& 6527'v2QlTF{df%фk$yodUcA 1pvJ ʣNySuht'hC/ ! ҡk~>Bv) Od-ic%Kfg&!Ga88Zf 25B{9hװ"+̓(;D_>m9Y㰻(oL"#=Y 1/ &3CRl-:OHRL3Y[Nxo |-*wnJtl Q^㛱`׿9}> }VldnÞU4c m}!yhXOdmVʼn'߀tA+uf[Mw)d/#*v.`σNas ,BsA}{{RGg 78j9,L -+%љuu^L%$xK4n"/[PaJP2(d;.\}5T5.r ۫|y/F+6A-1լo06biTJx`ZP]|DU۳akʚ_*G!1恠 +޿Z;7>KL18QWUIv԰8]Gp-Uj7 @]'T&FGO_iuU+̎x ۋ* ;7OTMb3:g֘;'K}FCuT3(>O^8 E8:!_Ĩ?38{V9XCDS~bmq7ĸB)wgNA)q3z|қO*!땋"w['uNY<6@#Xzr?\߅otI (+`jKB^ZР>T``ëY6v'kZXbJ9v3t& O s{~#lrs\ɅqW`z 釼ҝ˪]7Pu6)G½eëóo)iSsCڣpm5۔ }Ӿy(Li^Ho (A[Eѐ[oI~ Mhi9 #R5C[fVV 3İ/V*ְ PN obHWň40B¿%,}=K]3R[ HCƎq2MeyPEbՅ.w}# I:ƪG:pr'TH+FOymIBf~9'a{&G;g4+41|02g Gz`Ǫv)5qF :R=U@/ 0䌶tm!'|܊¤&2OdR!c㲧e0C u$!s҈`  & : >:Sxm_hg(t`}u,%+J!pFsîv7#dA|XxLB>UsA6сo[4Sqa}{BAD3 ?[g׸ ?#^Eo@|Uo}ǻx<UE#-]lڬ Ci`kJTuEFri#%_zBHx3yUp'ΞGbp9q7d@7?rdNMUńOkTQ4:}Y3+`pI!MIT ~0,3!'Vݡ 6ZhRE[;ԛ%b:ۉ-Z! E~~" ~:g`bϴiGB?] N't q(,6' >05сG 4,*?lpl#QR4a:ϸ-PgD胨&aEQK͋-oR|X,ӽ}-rx9q[hV~Jք)37X )!7_uAE@A9,UG0(aZ҃-Cv]fTذRA vKPnZ/M!&:V2\"ZN@#c'm0~f\b 5pm+]/Bͷst K_oЩ #;J`=t*j9XJZԕhjر]yu9 i2nJe{}lxpǃ䒢E|8G ϼKe9/⦍ t%&Ty]}ǫR|iMd&,xyڒߣZu c`t1ʼ=:L w\l4R7ȄO.0:FtSJqE'~W UY;4~Z9'c G,JAҹ?T s=?9oyvdVUg?p2(0h\Րm(^MAnC!%><c5Xu+վfƇIaCYa:Q=CۖN7|)]E3ڏbr-)Lvڇ|cVdlFj:yvhpfiIa#7pxMnnE7ӿ7dYJFkj1m{1j?GDPa2Ja/`/g@7TG[1iZQGr}!^ *# Ko?SۀN{pN Itިl-֠I<-Glgz#hL: #iRkO䎼_TDSІ3V5v|Fݒ>ӊ 9,Fn6ݠ078{LU h ?5V?GY>3+?b%78'Ny2>|d"$S.WX%M=\oeU-RYRYݭ[:EO;l , uuzJ"Pn͊&z_B ;a`;v<~Xgd1r. 7*o UW4UEOo ğyY197(#T2'01M NQ^awg=w s,!eV+X.TdX?"a[O xWr{80ʇF ȂfEo8/.㔊^.8PbF=< #@(wXYQ'["5e$d'QmA}Fy|. *M't(z!5p.,@Vŧg{"^s[+ !Z@YjJz62~2!a?Uc(O1#T`9g̦P9chxE<2Hn|栢iOd؉|ϮuQEoZF_|z<1l_=f8V0v~ְ[zωտ>?+.z) k^MT|,Hq}eA3j2abPx&bwѻDc.@Ժ6w{fnC*odV"G*jiw YżlD(ȶ6e*盯ɳlqHD3WzW8xh ^9苩@ A̷^qf4e Dl*P5O Yԁׄ"}G+]/}[J әUd"+ĥNi~]fh'tQ:t+̵&׾~@,Rag Ϣ?>FUO`{b"XmЃ63>1/A9  '7g߿K^ 3ӝZA:,9L!h-tq L][7ʭlT;O_.9OcަC">i푼 oFhPCZÿP ȿxPF-2 JUl{r zbX\@n¯"+H 򿀁i ?]Ma9Բɀ`Ɓ`o6 fm't'%zn鮼 5Goƽ3@l\Ok\)7%TYᜂ_7~{} G֟ n}GD 2p=BP"RUC,QA<dG[4|qqBi;B٥*dO07xl݌t~`sTZ7aW#ՈV~/sޛ֐$N Mc7cEHZ=Dn{#8l"̮-?23bzNy)PN˕!kꐪD貃gҫ^n$-|#YI+8\@heHcqm#Ҥ[aX,83ކ'4ā-k"||ČS<9]5}"4?(Rq-h5g6IJɪ-\v y;_*.U@ptp8I&uݭtLE|۴q+ +tO(_p%1{Z~? oȠeLr|vm;BTSOSoN6zV2.h &w5]&(\eN9wzUǍV $/~L (kSx]UéPvoQk 4B|~4Kjpmg)Owq_Q[e/ ?S.k9m+(F^OD$I50if>_o[fk=YdMfm^heU3}tWCy⛡wk1{~]P'o^砢bb)SΤ]D `Z 6u,'^؅fUgKwJ5PX:8@N~A+"zj{A5VA4E&iU#ȴlZpugK܉$P[JJinĐE~}ܶoS[Z;bKo܆9WD9G--ҫ-p҂zw0ڙM.R Ėdݲ?p ,Zl!sfdtE؀ϕS#XpwK6*d2,hc c2Mlk\B+KN:  GDwfG;R뱸< n!ACHyeϝ\!{j#K_H!i:`LG]OaxY6oZֺ1^b'g.Z-|>˘}Zpy,ft^wH|_75H"'-wEJ剶趼Q|r=(8 v$m*C*[^I!vL'#PtZbs 'Ā ҁ'ob/A@d@!4&Z-˱94RqU1sE(kV)C 5"4=>ȢNbBH_6+Hl$ǨM-_D]blE Rr_lə*?ش!X8{7v/*qb0y(ǁUl' ixL:nhV&y`9Yah֍ N;5[梻 LՔִD= p(d8zP7; 2,X@+2Qs}rWH!&uySG=pq (p篫 }!S> pPW6"ȖDd2rt1ڭ^ Typ5S)K;dcZD<(+./heVwc}kz8>±c8|?[ӯiDr"5GġtHHv>)ɠ+&O1Giv=g*HL[FduګR64z( %SdhQ#'D]dQ4I}O0wji9rʚg09$PΤQ+?:jz#BIPL%g̸8!7أa, QNgP]go6^}I$6o$ lfo3 ku:r[&gZd.JI:ը(GH 9+̵MLH*G\~Q3OݓրNFX ˅ l{rϓH&W4kS6+V l'NЯj@p&>=Fe싹Jx 7Xz*/Z-lJR81"N3WuSmen;ßc2! /Ja@;QLU5uL) jW|^nOJ瑯7) IaIb ŗ줪V?{lV쉶[w3'8$1|vQʏ\h)tWnJU/*d̵WxyAWᏁ3ȕo`i"gWaV=]5%iK,PM574W6#1LEZn`6? i+A}qz|2uc|?잻ʞb-~|uGf<-xJԤ䨧s*[cZ, :%y { _=_l/;g>c8OtqOKh?^?p!tR?;t*"FQ4#+ b?7"efRq=xtz/^u]Е o\/-sې?h@ͰT~j|nj|) 4,8MmB$Mh/(?#Ws{҆pbk%@04HrMԹ<^.A AR(!TT Wĥ~<ӊRVS^ID\1nX,}'q-[i\hԙͦ\^ϠW#T^*^43+kLGuol6uǒ`֊'o2`mbɫB] 5_"NMn7-j§njKqa]j4+ :Z33g- E0kiXFS0huݮUĈF-yVM/>lza 3?ȽƯneE  Xd]'kH]by+(RЗ8jDǀ f @Izv1r١  BqoͬMaW3_? ; {p~D?bFC|^IGQ`)X-ġJ0&!<]uhw<6dv^f3vl lS)ߎ^y/ޢ3nt S3<ڐaD[G3,֩ k[ zúEFngLs3_o=9gkuJe XJ5u2c#7F4ZȺg3ѿqDː."8޺ Ԕ MDC8~3ܥUJ 7J!NׁTKTsF @l\*==%EdlJ1'P2!͠ߠ=#GT}҇L.٘[iH1943U|gCX"?|m$9U:eH !aaZUC4!? ohF4H04Z5?T aPNīzWJ~VM{/n5Gr|Wq ^;AXO' Kl3tNe:zUꢿ02v%az0{5OZڿP)AnXx}99aa&SJ-BSc/>[ 1k0MʓQLHɪ]pĸ]V ( eu;Y陉ޝeaKgQ8=@ T`U-ۜMP]Rŀ(X$Mu L֣C,oA?Љp5YX~YZPCs9SQO=P ol]Gr4iCt_u34eݚr~x'8X*x\485@O(H](wR; |dؗ{F_xM =9GMe#`M2ؓ.um6X"2'3vm>BTqt"QIPc"P5ȫE/ء7%WL*Nʹ:Gkl)\ nVp XTQԣXnc& Pl~n4}<)z=Dݯes8ލ>"~&5>7]p#Gt7KLӑlǮ8,KND':vET* #C\ 23pWoź-q{R5QI(9byr&a}"G *ΕSБ~VB}zK]-Jއv׸*.eYC+<*L19y)ߋ1^?>U9{p?f~*1r;=?wk^\.gAX1:IFѼ:], S!͇ܤig^Х=6J^ӳ $x9A&G,#FE<@Fl?sF,|%qIY2xKy7\me%>H;]2~8 nzQHqstXs$.ڴG&dəF̺)__Ŵrdl̷֔x? yn4 EYv6Sʢa탿#ZZ`ﻋQW7f}n  mВоݮOXE#÷cB碊>aAZ}$'Z˵R7ec܌3{wVRZvؚ ;FT+!_~u5n`oXd>#Vb#e;#m%HXITmC [ 34e)N\jPv B#EnӮ/y Tg?3tdF}ndZ\ M? ;is2q5 7o%*?}\9(K+WRR ԓ$mUq hu5b/QvB~PX,&Yw{[fʪg̩I,.Ls^UVEXQyD4_'3q-~וt xڝ}H|)!*1VqX'{`)S\79~؉%ɂȃo!5CdJ1U8o[+&|Gzu,֧0I/e}W Pp)AmR@Kt0zU`Q&>ꝡݍ'%<:ӨFd ' 0 m*X8JEUѤ3@N+f7C"58T2a^av_~ Ύk":07|ޮuu ɰ[wu˴Ǥ25 -W9᭨]1^2͛cƟ oǛȷIN|bQ˰eF.ce[|.x@*<v͜XUfbPL++>{/إbt2Οci]!iFk?M9PWBiv_Q-}ǃW! e ȥMj[-M4]_sr%Ar1h+"Prbi Nyxx s(;+s),=`;Q!/ AгkB].ojȇKF@,@J'`V/r Cz+AnX'guk%k{DN0UG?}qS' ;T&Gr0걡 %x+Ue,s>$`1\[`fG=nrZ[>*?` Ik.Fܖ@ͼ@57a fò?D'6 E,KJY3]qYA4pۋKjrz1Hג"=L^SßYG*sN4DLOrО.A-toU&4 IxtiˇI{ŴE}5()awΰ=60ڤELTrDYJQQHûR =hD 涪Aatv H%";ڴF'=b )R4 @GF{]M<4#?2;gg#TޙsY0 TgpCga֞FĶ2sg2gA؄j !XkeF0˿ -7p{=1ą"sXѫpJзI %̽JDY]*&F.N{K=6gp.Z7Di P+WGވ~P:5QG4V^Z@UU牵8 'BvO&pF"h'J1)/ j7U#7O\ˤڹ/"ԝ/h5B%$`tΝ R-٭-BSB@H`2 =*b j8pbR>7eƾsVWl&̼8@m*g*LU WF44A-Ku׮ϡ„/xnW4Ci[e_ȕe+}|!6 Jۼ$TVO5H٥xDZC۵\ST'+Xa{Rp0! W0ږמl{?7M NBhCyYqDi.OU{04zP΅=7-] Vꈒؕ.V9qsYv ~Ui& ˑ0)2p-nw^+"C߲J+EgB'wPƫ˥gORò%'Z1|BPv?J*e@MRzAq㩚t~DbըUj6ʂ!]+^˛tIg1(7b Q!nϠ 8$x#a62OD%~d#^DmTɾcl }6r E~K e?'aWU K8jG f՚Y6x<bLfZ5IQbS!zr_3nw-0J~{g~:4M>:zCOO)ϕ5$-# !*]~bcOnXIN4.g1^ -h.5F)*3cay؃n6آҨe$Z 8_}֓LȾL'n=Aj\ղ6YI "ka2Je$<#ƅԋ[m_g$1?ac\YfdzdtKF=ٲ)wmp"H>Nvp4|B)xRGP}p6vNwg4O4Rw@<:UhMx ht T+)ΣJ理T;H*zVz5̓I>;QܢPpӀLWvOLC~MSV¬FK,)`5{ѝJQ$.Nn&)9tM9*y݃8tDtWznPka S7d,7Vο/@#!ːNg'ESq'Krrgfz_*n&)Aiqlھ.P5LXGl& \BԲ$w_C u3Aq3l9tWIOG۔'t:N4b6wL\=tX 6xmf4'mߚ$רp-5 UMj.ryMGmdݽ!#v9G=G%( `{lI=XVU68|2_V?%oNN JWdz>n"ۅܧ NfN%8?3Y~ [B-|B*A9!5s7.44#YD2'J:˟$`wJ,1ꖹoJȳ ̄n 14O'€ YkVm`| m0{[i8N #\}Nz-PjĚKZxwoTDJ a\(/)n(xњC7Mޟ Ƈ-m& HAC$е((xJfGc^`ub{ѓ3hQx"gt wrPs"DQ;9kSK𿆐%w2GЛ'pqE4W)n)\9x6 x/b-^jq>GčVs}YM;ޱ\c#,~u ܂ڐJ|NӍJ,uu%?/ܬXpSSZk&F*?@J{¨0xS;9 ^1rP1/m$$fw蔗9wcFݸv4҅"9R*kڇ3¦ ze?yUVX!M߀y^?_a@AB9&V] H@b$ Mܖ 4͇.q.?5y"W F3X1Y9=oWŽ.: &Ju:=u ao>j(̙n&ry?6ȱ$#EƦ IUX A+vKxw:3Ğu5H <˷b}+qJy_R5(EOw''nQ_5u^ p n{ld##x^rӶf*Ut7.7[\蟏ܗ9U _,Iboog4 =G~Qch0^"}{^o /[mfK,LDMN9廈*ުH&qBG?>,LNC_q_5d&.MΣhdY0)b7?Oe W$[8.wȘѳSܺe/n`1U⦡F^r%ov-IqU'{~g=l8g<wb-"7Ushl39J@HG$$M[2`Wy}zAG:WfL$WΙPBof:;| ƚ:d8nwNՖ8tmX??m+v.}L95Ww{aBgaν'Sxn.wB[ }嬾f9~[nr.Y$uЯ".W8L$_Vm@&4(wN=hh6$x+B (ZLW=}h[b;V?S wݿD+eJ0QS-v&SDѾFeY/N3&fL(h!AurTir6 b{+XvwC`@zšteVG_gVec \5D?5:'T(ʮ!5|`5V tw Uh"| Xk6O}-Eb,n: 6JH7v_lY/FG좛ޓ68 6O$bsy}t 4ʢ/ CKk5zdxE+mK54X=]̺mdRtD.t.篨aW[ bM,8amE X!N9[u.b:})xծ:k-Z3p\3Y;Pn̨tw^~QR;id6n`C~fk"jGe+=mL@w3w10R<>' " g;5N'uO2ϴ ]vFe֠-s֝Q8-fo.ՑɏIKN^YxytPX ^*ܨ )ErdM,g#:QrL`m$61*šͮs` ھzz! l,N} 'Sfp2ZJ 4M'}, gr(v tHԶT8\zx:&Q̚?!Q|Gˡ<i>*H4hgQ?kFcCD$# 6&a5yC}'p?E(MQÁӀw[j%4>Q@g<1no?I-BVf_"e"g OKya,fR!]|Yߋ2s 5K[5:g%+n)3iQTT.',21eK$dU7!o:/`!3DRYuNj'ŒqAFb߷,,Z~EaGeE?uA(59P$O>SFiݧ>H[B:{ (_:3>`MR&W& .7-`P4~o>w$ $5[ېMmaY?;x*oYt\XԴ0pF-AĎ@K{!+iN]^' 3JZ2uۍM.q͡ka&7i[ mŵNj] }Q˸Ua5%]4^%x6Rk82Ԩxv#%CM?ͅ]0]SGj%Ogi𔾸߽yku>lWXdͦh_[M!V_qpƂuFIH,4sĝE~!Eqd),BupS*Eo> ^ <+>'Q 6Nshb#hYzV(9Fi`ʍ"am@b#e'.\D4+!^LJaܰ_e7@ۮbh{_Gn 2sح%Ǹ*?/&/ةV3sG9E!"TyHJX ?j%Wm0a=]lyOg87r8%P4*K4+6 r,qVF.Is[ a78$ŏүnc"> igPdxpf$PV 1b] frEJ,po|93+ Zx.rmOxyxXQI}2C *B}v$ٮK-lul31ᣲ`4kj۵${Zy?vnp'; qxɋ[UCݶBZ=;ROVZmRTׁ MBr[ ֋`u4|\Ms@oF 7mKd{@UAq׃oO `E[na{7286΍soGԉ=zZ̓Y #D D9@9݌f9Y w!fP3J_sV@cBp[ Z8IL҃"PMFoAc]iOI/F }q0jt}/W(=1_Wy9DHUm +q\mzOLx9u'9)?[kS2k\EHQlZn&ԧGf#k(Mݨ]"M̖o>ȦhNn L=OyҊ]:q#}k;-|Z@t/@AV3rbcWaܬ3!iJCg 0w|6\{-[~mρ& 5hP@ y2˵x)/W񪉳ILC6WFlswS⁃p4=%pκW8ʬEQ̎ #e{w΢6P9{^Yǐ~-g.<Z͉{pp,= N5`γ 4N,k!{0㺏r?9R#eV>H8!KIFk E 0!z%<4N| -#LlpPOevoZ\}Jluн66f[ͷ4YA|iRJF5]X^ze3y}а[M%~'?tH/3spz@i{)W;/bjr[U#p9KT;5 B47bXUiҷuW` ?O#\֪h˜#7K<)Ѡ,Ix&Qvύrtu7Мd2v-ʒ!bTw M;**њñvzfA*,cHpѾF>t͗̒-/ ;G b@ {ǔX'Y I?"[s%yKܩ/qBā9)]8dZGcc&G`M9 b$uٳ2u{7N jZPqvbʎX4s֌ E!b0Z\խr}ʄw Ymӝ,N܅k.U#BEAs^Jɻxb2kO<'Zk8)lzˮʙq6G-bn#/b.Ҝ8{-מ ןP>!Rmuڊ,uFh wD;d!=>d.p@{AƃTcdk4pMzl? tI+lLg-=6phЄ T :;IE=RQ ~ 5=]G.`*7"lhog uF6[?z2GXqGμ7^Ԟ8#D=c'"W-F䲎+@mjO<YEuԈk3MuY:Z+S9ļ_"먀آR$Uyt=tgX|sP寨#4MyVY~`a ,m$d)%M7ЄU[DXIGhDv􂢈LELї~ 磾Q^zdͰ"&3$q*]x?`TaJ0 feqg5|s1c4p(&҉qE ;R 'NSqґ+:u)ܺ^p&:YP/5Va"@Ҡܲ/ocKHCF#/EYM3oݙ%DSi+I&Gf|;\hEl{IkJӈf]S'|-5Z@.=*l' 2*C(UQZ#Ŷ\'\g%j?t~\U5V_IŀiT<_PAhGrdVٹKuZPLd`t ]oQ4o$!|?;FixV;KȷvMb鑋~!V\|q,^y:RHK+rHy8K7RAEs8~dWkN^0ӊgL)c- FTv;$UY!Vw.No0 I* xGRҔ҉ O}. al/]RJY>Ne U|NNF" xa> 0%2XDjO0]^_1mvC:_g(3TNM+m쾙sr BꉦXAcLletDnNd7a £zmʵ5s HOP !ѓDb8',@hP 2"Eqvdqxv/S M/\`eF!& }I?vYQϻ|So#D17џҵ%qy~jI&ظ-gl7ga g!BJ׷ے8>5f)E}IqKUI =x2vhRKgCtA`()S ( DV|NFߋUټ&CZ}$6IJV榙q`KIR*{I;:,bW.ݴѐIXXU0<4RBڡ5PRאa$Y0ш#æܢB{*]qH" ,NIFv4-;GBƻm12HK x٤@u;3ᡤET7L0žMnh?`Wjl%,3  F/+܊]?z/hC7[s &ʀ:luWW7;DcsUM7 K5X짽zeW4A30/WdUD/MLk  /O-TmȠW$GgoNE iw3O H>ƠATXq9 櫗t6ׯ(j}JW"?D[7dj9Jq>љUBcI}cz?: O!]tL&CA'_Z10Y[=~vv'&F~h/J|IW|o{Jf۫@N0 'npƻi3q[3\g=̈́DOMHB,4u t?h<b\\j\S.2V`\}JU(=^~Ãp+U`ֈSU3K  -߶Uu Lfͯ;*\Q h_gb_5xyG3`>}U0S&Y[AODR ;rRİNo#0Q`fBራV@1§/싻-5*%J15.AIsw43~dq J}}Tڴfv^?yoK8x\iom_=t]Zun7>[`.X3b4lF|5 g#!EKh=6R*'TxƏ++)oXLxS{('O>{ A `#O^#c<:t'{]QBe&N34̭I! dk'{8Dyh|IT(k``T3 84;QwʞjYIw|="9P2)̈ũyT}܂I#G m̬*>+~W>vK:p_CPƁT~-یN gbmK6'+1 FQfSZB:֧AK+z/po~Gqv2 (9'HF >CUOrsGBO RLZ¥#ѳer5^Thٽw^[ Boc~mb?('%J8!?Zjz3?ƌ9\XASrrZA3Ly3ZJ$.JR]..59e <﵃B,yw_Iى8 {(%i@euбuT*kaDq}ğ} m@߼b.L Ig廦1!vƹ3#J7 'R$EE\esΦspĮxo|uvUJíN#PDܟ(F~JzOՄ%xlï+V"?Zn7L[9_m:cP&l槸6PqbiE*w^Qj2ՠ%S'7FDŽK|D y;y'͏'mxUf{qe= ekvKp̻]Qi4Hz>rSwy3tSuU/VhO*E%Ou?|ܸʭZ]ޥ &#k%d3$/ߦNM0&;MVG{LKklȨh)Iv'F"0ymXeue%AsUVYP<14 -{>t2xw(n[?KZ6gKh sZui5]a K=o6Af|ࠑ%hQNي~I)]?DR0 wM] 8^1<"G{J{trZXQ?>!"7} *c'o@Im'SA )bG8_1:)+m);66,j*nR$$?@dqLqH5Y׊TZޜk;]8v{h5IsORnTRaY!7}[]P}qlU}q)57I6Q57cB3ZU[ΔRQرV /2VxKXo3xr]uÛ ٦LLJ n^j^"Y/BDX*0?<휣'"$TtOq dߗ;k']5h #@aGHŬl163G: QPk3-(2Էs(^.nAYwd)Ѫ40B4KHJ_声{M|@|ې<t!&ZOwtqňm;u!M=rƋC^vG;A{N`ZʌOu!U*ZfNyC0'$RL 5I)ͲY|s7WT!1\]WIX9,§-xPD^sLS5h?ZdOy[oO=wѡp &S9H}~ж$]晶00J<,N"I6%sÿOtBк=ņ|U>)`Bk$\ѳHDޒ/La#K# 13Trx{cb4ZcڽXF?\^ّLT&-un@ #B@>~?WEHAB+sI<7N.# i>ӝ K zY՟"E4P"Z'Ɉ5MMԵɭQl+dywvJ&_5-ue hV_'gG":N[˧ՋR:W®jAH__BFP."9Edd8 áK{ӠD-.-;;q/5߬%g?f2%a*})g(WƓ=FX)Ñӥ'o)-{xy9m`v vK?7%_)[s (ZBM45_+)A_6@i2jQRXOZ!\gj^g+;hf ޯ | >Gūb25e߮c!:m2>轉>w#SL #iC$_.d?%3f XE ӵ]+z`ت= @Wfh}9mePAB*rK0'j:~O ,$iJ( 9Nf*ʂUhn#HXs"y>v /;x!UϨK€ YR8 W2aKނ>S=u;CJDj}uq9MrpBa jBIov ka!ě jw-* x&wa\Wio%SJ+C2N*D!@,Z䚷T\ #p]mE"fهtlh,:abY|gh1QYe_н[xKࢃN4pxP}ۦLm-IgS>iX̅KNCI/u(U\: H[ ^^]1'Fh9G)2`+5+P !䠁%dzC#G^gwl,_DwI5ksEFj6:2]v#N#,{dA_k#oUIT CkaFXn{C%7MINwH]|_SǦ I#%1?'ڧ@(i{ ]0fɐWICH6y ^iڏ 11HLDFꓞL eΕa!Ђ ֐q֯-@$S4 }͢G8Wl@)f>½׉&A0`ߒd=۹Nά&ek"wI`|M#&[)"W+} nS{a2Igx=w%;DZ#qol.?ˢ!0aKn5mI3)2wRRȃi @dU/!3:/̀yr %դ=y,DIڶ&uZm簳2spgfA,=R&̨tYcv.,"fOSv&mGP, M%s_q# 1B.)10hFrG-S>pp>!3o03lYڅQzvlGj)u>ɵɜ{c씵 o10ClHY{| nx(cG-q\DPM ˩Q9"lfڱN|1\PǖfҝܣчFgwk0|ı"ZɒZ{yc%]:hE]>@"gslQ~ktK z,L/o1:H);>Xg,913YёPoy/@,߂M=;̭.UyQ~*ȕ& IT"Uo"Y^*wtmgns7])ȁ=hlNcۣCnO[QHJutE\'n{Obto{<̍W9\j}Bi΅1?n/Bu Ե,@k)Nh|o$iOOU>""yd`v"dY⬼,[f^%ܞLز! rj#d(Hsw+9DԎX'u8]/KfL;|k.̕VG`@W,.N|9\7 msSQ:2yN6R=s*D% -1A^'A m Ճp^_+OV|jΨR{"rxxhƾµ;>m0^6uIRʲ:pD=s| %+v4'$pVM ]i,pkmQTWI DFUSI ެ͙gVLy~F })=`q~j#Y !ڔA,(^W}DAbK,$%PIGbh̦Nr :W|`u-,~92+ub=*hwӠ dƛ_9SFOJ.=,tzvuguU)'Fg$vB3㹘A=Ԥd=[_@F"S^L!\i!L{W

,L=u|ITn&C.y#ŵ'0 iߛQI. 0$ݢ(9LL#ϕ!:Q(tf͠gn %M]I6yE$xDyEG2ȋq;lpxp#׋[tPulL5Ճj <}{RQLf wϡ)6x}ʀ`YceOkّݢnhYQWu6,G ׁ?$]o-EcoRʹXԑAXZ# -r I*S/?{65 ̥+Lfj2[,NIIW|$z`mLR@Y-\po,NgH'HU Z`Qi' W:@"Vx_jT )@zyI>#'w4cU˫Ԇ5I">؟}XE=.+!QVN ×@>Q*QzǕf_ǨN/)ुk[J:M`KG,-m~ ᅪwprhyacW8=-7́k9Ra enShAы20g(l芭×~Xq1nLۄN5&1f,RjOܥ`_z\>x.s 2j~!8"}M_338Woa1fUn'e_'<; U%9G3XSɞs.tVmP؟A-Wb:ͼE[HLd/m (C+Lzr2YSvlsUȧk ebB > 4va"ͪlGD[9]OMu{|Vtu1 i>khi# N)aѯ/n$a~[W+ƌ`"U.}!0]fb #jE۲Լ);{8)~ǍUzik+ú,bwArxlO+ lݪm>#!Tă5Zx!+SO,$ a9!5&|qTݏVe0YWp5K> ߿R| 8Ap2.~Uڏl;qjfKR1y}b Y:N"N1rP[y1#׏p5B)I4 .DW--tbd hi''WX(~d&-#d%|4'3+@Q籶-DY=,cy5DV>îzu?nR>v/ orJ`'a# W6/|``|P4qs c.MZF˭j=3We(it#Yjş5ڲ*\ݮĘEPf⚟5AM0r&q#R[-סӛvOxIVu(oGP΅iQVeLg8ujոѾyDx g"ݳ,\tVcsIRh7kS.}hP Xg0bKоb\/ Qb߈-⑷4I/n୥FnJxQʑOIVLNL tId6(=J+'*2gG卥q|GL9#}s3 Zi YWf%,], Od@Ʉާx.9 c+B՞b 9x:kgT6X:MkUJSwJjh՞k3aVI!qIgغ08T+}:y#g郄Z:zY/|!pQWx ,i^Q>7 )%o;X.an/l<&}oE|0{ohCa)% vgB摹# c)UREb2X)nxl[ܯ} *伯i6kCɩhHWo8iibTvV:n^A>J#q6ochz>TD߂?4.%oA)kunYg8aU:Z;nI9m>f* Td4xsW0ad_9qYg:PZD.2;]a;b9UMPR:5+]BfwOyG޺È7NESDIZeJ, dA:̸ы qf$9 [$a1V ~!\*;Y猞׾(S`=ҀTT )(eTH̟<3Ԑs߰@wK0\8w[R |Mn㉮&AH45i^ ?(u,WU' e>`Di+|s)I &pj= peNTmgM1$bgǐ+.Fԡ-2z*#dөk/Os)EQZ:\98ߟI!Duu,1{|O(tV1Μc؟X?E7 ͔BǾB'~l28 v!,<U!8ZA$x[3üs$Ѭ),AtH7 ę04aP;;iۧkx.Dj@Se]i޾x:fB8+/$;t WO3A|Rq ӂ+.X $5fB-!Wzm֨'IpI#91Qe+H) &!b܊ʴy|{t{n43ubJO0Ey68u,~dlDj(窄*y] 3D&c4RɴXhê\乎"KԵܼAm[JV9-\zq=_oJL%{o H٫vuqkQ1m+UB8dQu&ΫD{a1?IIS8/{nfb%R O2wy-sf.F0Cư[ :c¢5=\9MwnfN-.6Uuց"#jO~jh$[5\/Kλ8EKc*J_S*W^JE8>KO҄FK#H|fzz~@uS7H0Y>g{ Ea->bW\ ލw>-"Wt7Y Щ2~K#=>#u7y{ qaV|͚/Lt0TkӍ~N5n#x5{=CYE_LUrTVNC(^G9 rkQH +_CJ@ZکmHߟ&nv cR4[{8͗X{6V|E؍AFzQ*NZtmB֎~ Ht!Ӌ$DQn Rwɻ ˊ~ _PBV 1\@ʃ\kA#jm=J얅㏆~0#N/U큚WpPaQtN!dVDΐ<45n2 $nP8WI29ɶ2 bX~`,œgI\k]V3DUϖ14bj[v:{z\3I8lfK:%~p$ 1'`଼لj+RcƖ1I?5MuφbRQ+" &A!CgЈatx]IU%p%ı#2XWc<.?b@Rf Ƨaɢ6y)8}>oM@(ƀTDz8C# 8zs'N8W0&]ס=)b4?WLΒuw0:ZyЪWvr0Z c̿@:T^Np̔1msĪ)!}אȱ s!D18 =>yqfD)SdJVN5Gq_ dM1AԘπ}rϏ"l#VNJFPjӽwFJ^n uڋ!lj!qR-ZSY%_ /t+s2{ߺW(+'y"I[)'>Hr@(4pyb''p񽉋i TNȊ%9s#$!c8}u( sV>&6V\L=si#kپTϱe,8{d;Vd9lwńwgF0` p kY b9kYí6Fo*&k{ML6c4RѾL^ Ehm <2﹍"IBp_R;* &)W]f*%NBIerS wM)m襃G|m q2OLJzfo01YFpb;>j# j|H| H'zc\˞@s8mNdDTV%qݍ>$ڷ&v/y^w>ؠ| %~"1we&fA`|޾nJy jKI#q\ڪaGM4NoGUC3fJ7L&"h4G] $(c?W D͸gh"OFa$gńq; (MQ0gH|OxU,%M/aD*> ۤYEBEuv6l,AkD,Nu.F҆"ⲑ{PdXTcE р8(7]P%x]ֆk-,RU(&\"4TM8ԬP5zS"2z?6kYBoEe̸ŸysNLr+8xM5HHoA $S)59W)cs/嗉_jyaLB z3f{ѣ9@x^1*ˢ}KL:ؖXǎDuNߍxFw2oENw>kBu9B)Yб7muU76'\& X'i`NZ9Fw3]8#dkɀ*za'Ka}J7ffD=v.}d'4AZ}.1eÙt]c */G5jTiMNT]Q6<ʣ NvpYbE/E F֖F}:<1OcrΟ#Ki$GuO;{g^*;Jx)b*X],@];(l|k$v"|Z+nm8qؔ;z+n$Q"K>v/Dz+J\Ct.PfGa8,86vV{J}^@'WS1}>仠1zǸHC:g VlѨF_ZtuRm 1PЕ96*_E 9ݸ:47J t;ngQV3*_S% =vNalhp;C6c"-i89 ꙓ\*/}#D2Ġ}BMlApǽ[7ۍ^~pĜo/*E3QJT"R&KXLuφ%V X+\ X"b}-dc?ع)~Y ʱ_duP!A=U Pb= Pt!쫌;!bާ\x_T Ȗ(.qEFsܮ+t6u{ŃEh<33;aӗaA'*ix@E5ڑ`A|@qXw&[3XO<8jS#Iﳉ2E-{ט"wPQjD d'aQB2IiWƮ>ԷΤ[8Zeh_۫=$:[{*L8n>..'G?_%pQ|ݿY/Mw0"e kP }d1a<$M1ܮZqyQܬofh$Sgx)RLf0u7ZiB:v ,Zv#i W&}dXָBУ6E1Y)o7l&X⩺7ðcj'WR 8L]b*w7q>ׄ?8_>V3 k#PuTɛkbDdj}*0(klI;mhZVx@阒UrvWњޖtyVѵٞ+÷D}ľ0'=l|-pVOPni0${:z kY 6ZԱ~x$ȣG'1%94RC2Z{d(XD^ޙ U0#Fk?BmbלtfRר[Фl  l#ތ?0)g m`tG<:OQ3(jsjYpl͓pYe<c#T?vYf TOl20MSa{.-~EG,`țElV?B.t Uw7"S?j79)xyH//F?2܂S5,7Cg̨,dO{{j ^aC|1LggAqa|uJMƈđ~OQL2ܰ4˚2%CKGD4_Y0vT6IRLSݐDf/q UaC5 s,ۻ;z2r{ F3P[:/q]yLGC+bGH3`˻3#cX[?qI5 C[=` p.;֣tr>"rmuZ\o?~%G;Mo_@ CV{^m^ sܶ)}nr&$w(I>b?弝)J:1\H8b6ǹq<[d];8b.ʒ?zmc+#j-쭋]|`~k66W^eHTǡgkE2#m<,Cp*դP%zW-ɱ۪4w*,.&As1P({M hgp#ўVC=#Cusckkr.?/@54(Ѧ|$_r!1BUAz}ʝGwujB7oX?+*b|)44I`گT>#Sު/lJU‘B"q'e1qNPH5V7W'"X*"! ;aׇBs9j $Diόưq6P9Zt._-]9lKn.6/Y+}-1CflX9ׅGCyќ cKƷaw8mI= S{ #*ߢ@'R\Ƣ-þ~i,`rCnϋQCGcqLIp;)C,Zo w jkJ=O>K0*m~jokWZ!,ʔ\%!giph|n9>=8~S:?S_B(2B!^ҞκeY GY ,V;r/9ox7pAбxxhTkڒualj?d Œו;<0,6YxUFa1aͽ[%fh*3vTu4#^5NLȖU><8}Z֛?ʝ}5PS}{Xxwءw|$$9=]%*Zľhbںt;R=:^h!$^%|[3n<$6`=WG ՜l@uBG/tf aj])x\V0BOL,$ jXx2,"b58 Fb$6N=Q5BԠ򟩈6t͎ix6.EOIu^+홷iO[vs|FIW^guO@!Ln3&3lMfU[CĒ9E@MG) <nvg@,ȤP`I5ܯ{HCm]O=-v%Hzߥ~j?Ua`y;hYؾ`|4Q૤#zfZ/ۄ i& 8ο;=3iXny@/1SOd$JׄwW?9n5ϥkatHBJZ&j*$2,,Uj^ɿ?lVDb|;281oĮoѥwrDP/@T+p]O{eC+{7vkph3C6L0Nl:3m:zxμVlN/-%MXP?A{ԪCcsJ .)?z&Zx̻^ tΨB$3+ͱu[B?R8rE;{[BgV$ϽdlLVNQkv?tcPwL}_4R.'eߑc?N'Xjg..7pB7ExB=s''.H٪Äsє":/;SO@|eS_%=V?ʑ &`BvJx 2}PK+K=iƤjv 3(s ˜#x<{ID^-@OmtF%\4]ϤX-RO?\2DM18P(6pPšD<߄1f9-Htsk  .*mq{yao^_ML2΄S3+ZL:3Ե8@D:9d"ܟ:B t^ܤ'Wdͱ52H Թ@pRg jU;0Эx}Ӟ ŲKL7CBv2 3WxD;H<8qUF"M41ɞeLE [ጧm*'f^mT+9?D}c1ƴ^FNvCHnXρjv2.4leϸ١\K GX˕T@0%KX':)PfOUWouֈXټ3oWw̵u%?lMhYSyjuOL&s rf{ɐ>:=t\ēpx_7jQ8^x>;NB-}aRxa?L6x8Bwv\ÓK(m|r7Z?GUJ#PZ?08h(o akTB+}t$F M{ۇ %$('zЩѕ +`1 y.[ ! P7ݩ gk*|%2_rS0NFŸ wÀV5ѲݥZ|+xHy鴃MΝ LF9XTA[W[ŠckCGy*xauA9^laD8(v\u;zp瞪ڂ&\, h4c{l( DµbE(Iݵ+-_홊y8g_.4;֯<;-'>|ie` 3ւyQ` 'ܐj~N? ]p^i: :c1SI1xJ`Qh8L.;z$KirsXFBu!#|7l(V5g ERcYۛ=nk,x)!B$C)v֢s5 c6](>)L5n9]qK"5JQS-~x[A?T-Q5Ļ>r~(ĜdN?Y/O=y1;\HfWgժc"[hUL`Ϟ3X^:ub Tpu'Ws%JxXTy#$1*omaO14SAŎ'QPљ9~;wbb ~ρ1v0(玁sŅ6٩$4%ۦ]107 pPK \zVתfzco^!l^J_mIr.VNUX}s:yDĆp/un(#)fZ7;Xm10`&ܙg)S[f$Q+̉T&} ;fqg4fY\ %#@ÇojEMI݈NL,}S|#~[ul+CT2 02?sIZvRO'x,O3Ch@ wLI2xtsE֛2l!渼n Ej\F 1oJvD  8ݔ~zĵ E3?(e:`SRoumVV%?;hI)~uh0o<\ hqAp,{.a_)~Gl.P".d4lQpj0: ~`A]"i]%t 5!BsOL  $>fk-tG}:?o] Tm(=0FMuĨ4hvIPbD.h'Fdi3!e=.~:UZU`T^?&=mLj]mVc᭧ #턏x)7R:_/0,#<#<5ŴGŹtJC:%HW5u*뫺째SAl8wE]O@+C'XWJO-Xus0mh`8{ߺ β`zgԍVoŻYN]yr^ޑ;P1RPdNߖ/c2?ԫx$5>ċ߼4NvQ^s4R=5H%ב5gдݰ4 `h\xsw :S d};nfyPeۢ8WKch._H0r8jNl$;v4G9 A]lݞ D*?뤉 l0;~;?4>AEd_~΅:v`eY&X ,voY,b|AOLOfeUg Fd<$ǕG3^]ʴ3oҞB.ћTxҪ+.WtLg}b`=eUj68\Rl! i)E>F@us(d>L3 CԚwPl)d5{Z k;u&7$4O| @TRF1bރԇ|v'?-m.z(gz`'|H3;Y\{ybb޻)StM*W!Y'(q4;G6c)쒹`{\]kGaD7ٳA٧xr;c%/Imf[,<="m#9>?ZSɰ kOdn L-:'^ޡ5U'‘_\d$&MH9xU$HT=@p$^6+РϽhm /z‡~pީ"iڲITGpM#s;FNᱍ!!8S]@Ζ߂ؼ}RϞ 7o&7P}(PBZ(B4f5qkL/$F¼Ui╨:j!S֮Č-Oʾ9sKD0 %xRB팶 +1<W |#B!QsYCKK@}=GyS֬Ʌ[mfEF5Q=V/No~f#vj$Tڸ Q3u eh>Bԛ&<JάpJh(k$Y Zl,;v &~-XblS@ٟ?˴,h P؈g8WwpwH} PQaW^|OLⵠ?+JO}vPl<>B  Tl^$k>Dfگ6j1UоP "n9qrL5wdq&01~(]ߑmnO|d`ioQr?8E0bA fC Qތ&quLKPV1 -\(]Ȇr eJ7qFͪI%%MAPkG1\ Rf #2ڨF' 2qJy{dY9vi;Qs]E/j:Oz|4Pm)m{ۅ6rV6<49X/ykq-QD[oo߆{4oeE]>BڹoTOr_׼;Tyw`]o9׌F+ZTØcaTKH]\{R\`l?^d?0# -QA39}p w8KtГ*j~O's\B}r+{x9:G!1y%2% }G8{~$4z_wr))8D ɪ/qvtH52[;oՁ切Fe9>b z4וЎ7m S&=溩P!pQW8"NA?cS=cq;h*CU968uȎmaDw ǡሃ ^3$O&,t 1CHbjI &6u<mzfs@1D#9ݻȎX1 ΉBE1QܐՏf@)[}AS6PG&̺k ;ͥa!=׌-,JvG ֌}+,<?gdCgUc`6ԭ5;:5곩htzfnȵrD9}n9t8_o l,b+Aܚ1gYyr' 봚4i|зX mO+&ǜpmpU;*ʅГRM Y;CNKY]OKo@/St1 x\{Rˌ"gIlj6I%- 2@wGDQ|âw%E@:qRW~Iw[R\4ݪl50400T+cXMOB.CnZXOaՁ\fɚkɜgrc|7jմΎ8*fu͔,uFF#[-= ).XN%q vB* 'Z,ߩ+sNf@Zߚe,w1ףȊ[J.#ˡZhN 2$fN:`f-Kp,)+4Ut|ۆ C T)]6N[ǍX'v~&Q?;DI4`Yܔ MB_`DJ=;}=5q9'zxq9gA3H.ߏjznH2ՎIݫaihZҲl1q#G4FA}̔/9f;C8}O2"zsŝ`ZYⅅ 1i'|Z8bpCۃ&apIrC=?$Pc~_?>U]I=GGQW }'?- SǒEnQ̹dqH#`|*;[5M'vlDEG!!>kfR$]9:EϜ 7|?8͓aLn3g l?[+;[$JaO&߭U4mA}(CI8PXӮ =;mkG,AtXClw^]a,PdUd1yq)ΏK*C]nIʖWmihU i451ُ7u[8#) WvO*Gg؉l$fbt)]U@uya4ƟW^Z'obҞx5#]-;\nᄫI,m/Bq4T}LJ'7XYm%1~xe#|6z|ht\\'N3U^S B69ᨒ&W*o:7TgB@E}Μ[iU~X7}4_^TWv xba5-=mC+8if&#/4ml+Q*+6mmdO ;V!jSb^+xM_"&kg+^H 7tכ2 RqZ#A@J? ]-4cD=JLَu)T hU12Y) Y.'oH=+ 3$;Šks#wÎEꌿw}* *8J#@u5=ӖŅCAI *[[[Hy0I_Lx!}x#A` u3m|blNk/8F6n-kj&&D ou;#qfD sIj>x\)..'%͐4<2'Y(Qb1WW'iMNcDx(OXD3)a:: jBL6l|q( 7l4 69>1\С5Ye-tzǤF˘j'pR1R3תfYy(8vv}rXɍFT݁w"!.WJyAYT\,M^r vA1ԇܦ}X(Mc(X w߬75" (ǘ)X*>DJ- EMvXrN^8@'Vefˮa{3n~<ɃJ`v̽̔w[aQܑaT.ghc.aԌ8luKSGjs/-Tv%:tv)ZVe#b@,=i٩{ݎs;&E澅3wՌo{pD8n:r3NZ z)/P8[12&jdf1'h~>[lZ ʙ=d#}k*^ "hIpnOO.4 5;fI%D-&!I6'uI՗k[Hv?o7#E𒣋W}Z a&**wes3-@&Y0Cd> Xe*rBL#u5ÿXuϤ!0Zǃ\1)@B>JD0tDCd#M;` E:35%3tĐoM0_F\_Ų/ԣ.Y1b?WF \:$DIx, F:]D4 vhܹH=}@[lr`s}-Mi#j Q5%^iXnXcJ,0.D#q]/{/{{Hu-d1YԸ"uAspTynyd]LTrLm[DO؏(j๫Dſ.77^ }iԃ.ݒ$߈O􊮲lM9569hXK]J|d&vv 8%ڄ>@rCT`< 4>jS[ZC2l&o8Vi%8>?7i7yAƔkzݷ45OjtuFmHRAwAh*JUGEf Ss A3lv>B_&&5Ȅ:m`>^D\t_=4ikDLSYA>7}]ʝcWݶ"RL4ˍ[ f'^|O05=fX{kjCԚDC툑Ρ L k0tWKh %M+8ոOacgVʼnٳF;)>{^~?伸Jqv0=W?;zvr}U 5"L>)_+B--Gsmϟ٦ΖFjTFe& [KTkOgԚR. WY4sy A@s=+KtbHVYhE&@2Ԇwݓ7VWIYSy_J0!l%_P' ђN#bJ0jﴷW͟ ŤO򌄷(0n%WcQ1&wÅr2`q=|B&S]mĖ?.DǮGjN,WNA9b&EiqD=HOcŃW\fSrm#FQfa8AV{4V%۾?Fb$TGduRpEX­E<ճ⍝>1hj'bj5CXAF {i=N [<+5Bis˒)bpn3YRJ_ᩎcpzr$3u- .-rXjvd  L7\ȕԉ){}暻W8RXv# ڛC)^W)|=8ed.`qpٴ2B')c*]Y{FfA% OB?nx,YJ;(<WGПdަf;pʬvswloKrmomЪÒhhDP#]W;{y~# b7s~@L7c$gM;p?Ն9֛m#lc9֤!Ou2pG}l3 6/Xma7KW'S!K& nMlQe&mji7qIaIގtn)p@_\-s1BfpZcnQp܂ИN @a$ Z.|ɘRU8!5J}ՂB<.plK`7N"twY@ QfW&`T]dOʥ_2A$vRauɘ"ER).fb=l[6\dh1 *숐k aR>`;]3H(1Y9%})" !̅NH|~%ҋA%JV H&Ac ŭ؊JYl|$[ 0?aANlq#Z,xB֢hxVM`W>p_?h0LZܤJq 7?QS$u&YIx/АW1B T+bG)q]d/.97ұڥb~xe {P+e@uUJJ[8x^Z d+N"XUu>'0=+bfR?ZZhPVkcUsOjΙ]=V—.M9LVA9ȱhLWG =hW7&s򰪰7:!:*e~|-'?V3a25`V%7-k?ќ._ܔmck:쩢uPA<1l(Kj!VVĨ3H~/,ɀ&b䥆L3O}H'M` Pg2FhVߥ87ա6KB}7#'Xrx/EFiv>F^KH-tg|ؖO7oUZ/GTV2T< d葢FgR0vZR(QkCvڥF d=tySe]- d v8 tq$|#r;mk'"7/i֥z`%JDZdז#=ccsl6$>$}䙪\&AIPI hp>lEu@l\^d4&$HYqc骢|F1ASmuj)GIyl= nebH-|B q;@#.Zro W;Iw&8󿥭;Vc&6vן]j-9C\4_Ƕ4? %i6#-N^@g ~ :Ly`ΠWW,a]5:.'='nBw{#Yؙ=H3GLvۏ4mv27n^\3|3Ev*: Bx0!w7?yɈ'W)x6@4pcixfŨp:^FWhi\^M ~{Ӏp0!FrKᲢ5EpSpG}i-AA~0JYg.&u(4iƊEY(&vaY\}"@35}*HfةV油P5*t>$O:.)TK*tV*eT|o.P 0 ˀ+_o!st캷/.8ėWVOPڈ΀f3@=_'rZ Tp,?ˉ-&buqՓo6G=Ѝc1@ZsӔ{^ Z#*[)3N_ъ^YO~额M $ *N}⇏Pu+Vms$W"&3HnVOT .=5xZdq~<C /"yIP8,3Jb&5@c)OA !I(RK%3Nq?)m%4E7qo |±EV&uϲ ]8 +k/O"u_vv uBso=fΆs + pyzPei,]SS/{Ya:Bd|9dXap/*߾n=A\ Cn|06ecqH,);cXL_ݺu( ՆYt`+lr;U.Zux+X@WXU_V~7,7KD!plyʔ-$R'MRT ';RFP@X\WajHIi+(ѡ >`Z )|7ߕ8%2 ;f>5mb~k݌c vxW|Eec{B/zSqi 6ƖɀziiXG$*e/.~q]s h3,n#t5^:mC{}#7\j{O΃u ?iB5Q(&aTͦf/2<~IX_+̍kSӧ -M bujx ^,@V2 cK*Lb/dW8_2kB˖BmuFj羯U>btCEipk OuE5b{|M҆. } +G}2޶WmD"cvdF5:a( en'Pq +_tg2زR_R -~Ucaa`Y[C /L l)'.?0ᾒ).D~ŷXv$Du?&Y/r^&<4xlvL:Fo뿦pٙYdo c[5 n-p.)J \^CG  ]2^e+x-D{m"y=L]͟x+èU,yFHd*zeEv+\0<*vzN p S0(b40*é™2 E#=ہf_G@oAø_YYf!!5pwij]C2 AgMv&,x =@Q1|9*aWMw }̞K<4znKJį s7­^zPzD9j69װ͖#,1y}ɌO%ȣ4vcc))f1Վ:/KڲάQn{zNB,Έ'OxP<>:,8qs^Wb^ϣzƋC*݋] WaTHl_4|8 e&.yHhyWY}kY oY:Ϧwn)ݕ6OD\ =H]wίx)gOԏ ":Ʋ_/tgk*,Ok WI 2uE 8q7 1XԳuuF˪KpbuU\g]nb],+и愊~xOd׍oL㉮<ܝOl,树t%A5W[E[ Iô;  Gl'^J)S8y^W pۺ%bڻL?L*@gW&G">ޛnb%%J 8.ō+UtGR08cY`݆S;;\ ^DPREӒwj*<1YWYa G}T}"7XtIk寎[$!Uщɳ M5Ի"ڍAMDӦdzbk! !:>7R/>JrvS#?cJbDpCSur1r?ǿMb񯀯?ќ; Ū-*5zCc~l ~ *|"_ 1Ep\R)}X{V`h<`t whL:TkemJR}![*)$ HqǨkg%ȧ,Sc%ZN%M݉Qr\p1TVlř:ܶњBK ?Z=uZpe55pf_Fߔ V)|{SɇqgMwh"N%Mg f=9NR?GG Ju\=ыBDeK5Bl6d9eZ-YKHl xb3*0M!ӝI*ndLe:J]%-`_Z R5􅑛nDivwm@p5 YŖ k(N3]d?;˗ݢ}۸8"#CL;ue5+:/!ܿ%>hLO]muHS*<~#Axi>]7Ȃ+6ǿK8l{œ7Q8XC[;oݰ y\*nGi²cVG=D cZx 7%&7qfc2ۆ)ac>񤜻35SYly? L_=cwrڱ?=QeJ3W s@U2 ( A: &)Z}"p1xi=8*1=-Qʂ1Ǎ+akݶO0rj/e4apsgy=~1k̈́}pą95lJCWnd5UmFN0{xS5znߋN#- Y{ [2v+< _nVPgo9%w/U)Pdt*Isԗw`7a}@yS{h7xx(fES'Qv,@󑩫cτ3ckv\bJw"Zd=z x\ϨOLJC8F !+ޑ}G$:ü?7D1B#O'c|XArSp% gU/WJLRq&/kৈ1.y9DD("IKV:fp{d\Hv# 7L-Q`!)I'+P~(n0a К2>V}F~E? ltKJi=VOt#..e¯^^j%1HҴ\ Y'vI0 u%@k)VݜAJ犍SBⲪ͡),_+fJ}.~4+G/"GLXێy`զJ,a#>&qgB^zܸnPvXOr^C hQt<=s^$=%Ev \J0#܀ZiBNz{A_W#?CWm |[ZT dKzM;gTԧ grd"f~nwaz4BRZNT>,{ %m ?!p4K+ !Q_) tVg Ѳ7,Kp2 gņLbOx*Dp/wϫ <{l2K@ᝤ{gGR̓PsAeXPo]L,j':\}XVuvw~xq`1p" (sj~&ii15O`~CQ5ƚ7Ĭv*`Pz^ pqǁR y X9ZARicP!V2|ħqgP!j|̥]0 ;J< *KaYm7ZSX^M [wϰL"dUhS`=D ^>zMd]>]# E}|(YxXb0zޞLAU Pt\8O6\}GO;n椘: ߬ Kt~Ϸ& NaHFR ȋ"Vc"gɋI(V 3[lcs>tֲ(f#TX@fUZJHp{  B;Kut ]VkҁMy\PnZh 1lP^5bCc N_3Y.-j i9I"Ikώ[P˅:"c)Y<82U!,BAlŃ'nb/@ƒrwKxB؉$8ڴ<"С pw y_fx"ة;̸v ?r'(6T;Jn}eBu]fX/RomzlWـHWK 1 =G&),: d+9$B#v/ߩ;SU_"-9sgRu}*W?AFX >Ζ룡txŪ*U'̇XbX0N)vUm1,HԃnNaGw&v.u-ɍ*.|\ ؚ /6dd%ݴDe\!zxjGRzߐ0&T_R4,!2ΡDt 1@}.]џY9:{eN]|qh ʍٖQy!RBW[ 0;XG("mS+K;+ƟYc6 >UA+ޒ[6*tyf0{ٰXld n6~[S|J..ۓ` E+OF8g?$93STJVHe[)աtҒH3]t,ځ3R.5iIA9dӁ v ,2d(e/z8EqQK ?SF;D~+$WU c&xi&K8|ZeIW.b Zgҧ(. xKT80Qba## (_F{CJE[~/$CوI2T-fhcDI ^Zv:~eO-D;]PQ tH! :|kSkgj𛶌iҗRU;i_ulbLkS .qmrs={@p戛8ͪ&ԹQرm3.~aD|ܤLԯԢ(Ńs(*S5X6YYj(D3i9zٜvxL/NLSQ4?E?/h#[ݕK 6ÎбHO<}ٽ˙%¼'ɞ_Ȳ{塝.lTŮ0`bsuߙ.^ن5-rk3dt'(s[ǔej,H,a1[F@qssrjltV㚝Ju`pՈe!0'_#W;cΈMWH< 3{nK݌fL%^iײ?`O)^JwA7=L SK 9=N2W?Gv'6KfwibUg;3xh}pZoj}j#K5oRsDBrT.o iu<Y#^ӴSҌ}ʙv ,SpZv&<S>Ti!h;Gfw^Cɕ\&L#k?Y@M*}04.t8wB)0 ;F:GhW\edӢdt~VdlˎovX,x {"TǴ2@O9,"{`KM|_K"%7nn Up;jʉo^#2Xi.C˲xj%uAy#V/ $Q&QmV6܂un%muK[݁Tg=rK|-KFFbn[ҲV26<8-V114ZQ?Cpbx%qg|Pİda\#A,)̰u)̂9uNUKW6(;: ή@ xpj2 9`׎J`5:X{ Iv|+k(YJx$3)ءFO|ucNĒ+6h1E,U+w:"δqZ5h^;g/j ʾwK9N;(TϽ2k&wUǮ3)W=fm2EhTWDŨޚ{zmaW" aH9 Z6>D. ">D7p& ~'0S",)F'y[VtkSjwP)fJnI1VR-q϶]]xd.\*-%RO& ;v>n-xgZEgX0h ]!`J=vZip@mƣ .(;'LFGxP}+>*%b`,=#CDfBjl Im(zѕ+2HZKo4|x6^rPY/^eNj^?ǚljvnN2n b3c8:$\*z0`-޶@A&9dFD6x-:'S'<'LU|H&r#Fiw~57b@ 07`ˮNж1|(QiS`šnor쯉YMaMh^u=ʆT=Ӏ =#^ݤ@+kda[4/hԚy 7;4*_c~RvRܪ!d7c C]()L cdꄤGG}n0O}=,Yۥ"XEɂ]`)ghE_E~ϴx>oW Eο!Tx *EZ5lH(fqOI}7 N2"zf-W SO$}V_#NOt5ےi X>RƎJQG袇[&ad ܟ0U'd /rCPQnn("댹;L`'ɭ˴R #jnvϕDq~! @Jrk1>36+uX+M5N柱 [9CHڞ_l^RDDPQjG=oWɲ,btޣdiG$eJo@荷,)ߤ(f.=7j}Ύǐ6.(*h)GΒlVu>4GTkS՜Jp\ZN#lr Ђ{D4doX_+@BmԞkh46)i*t1n;/ o->abFF`^amCqgNbu%$3Vwq P1}X<[ GuL͎m`i<sk0yf~:\$%6~ 9]8K5@O\S6Ԡs8ѫXWBLҋ {ql%?ns[Oe_*jXR 󩸧s&Ug@Lb@TVXZxOʍlM)H0%^ٹY^qۦGSwZb]eAŜd^T{0˷ bԉ7븸\@D1 JƔ‘/;8$߱SB?멋j}G"{M %eovnd\โɎ̜U >c^l%4YP8r;cN -Ȇs_ zi~5BRa×~>Ycala+EBd Z$&u | z9}y ǘ!V읝iITu^oV"\j`:?^KAL/Ø:lm˻bT6&kpHc~Ѥisizg ?Y~;_}v4ST}!Tqe<0J: *#+ W^gyTDP1,PYCn%t;[-SvaһdSD+g"rƒ3 !`'ڎѩ?'_0Z̶j?f#g ǩ[/~"/Yu;~ r?\Y~D<4R#%f+=-X;?Ox= 2P|Ʀ/+g4(9V{2l~@"MŔ7yUro2֚THڀ|2ڷ"J N"#߿ L9od}i%L-Ch?@.{0rx*e!3'Hh;Eb Y?uB{A_B& ĄY*װHn|F.H{z*@!hQQP+xsJag0AeLIv=R@O,I7`ic6p0*e(́>;;- ĩ"l. o|B-J#ŰasZkl dF7n2*VD$d ȕe[%Y \A.nJE(@SἫPIklSaDjE<8;099q>[ dVdlsZ@7;'l ](ڒNԆL F@m48RNőQ/4e(Fx"jyN fY[+Piڤac6^ s 'q(m") 2ix'[+3"FeNV0w$H5[5A%}%JX|o"0ɺ0eT7]+-lb| YsS Q3,cNC{3ȿeZ-/oZ H~9Ũr5p>x֬MyOzyE3J&pMz6ï(l >oj>@)De}f<{Æ =JN" r9`Oc+Sl")sq47',ݡ C* Y##<ј5+ Vd=j鎂]+9@HJ}vѝR딸&QN1`/;GxUYZL304JhB$RסB|S =+r/wk  Jk!$v5_ 4lDʫPM 'ukČ NE8(9w}TQH{e*7lr,( Kh/~*9/x\k5x T qB#,{ul ~"{ھ=BD~&aMCb\87wgSDNAt)1NGy.ܳ ! 6c%IO$?Fc39@W[0>{>TfcgP:F5@{=s:"g92q5PX}Y ߋ0QAUdU໴K}{&JHN8Ӓ@Dw%Z߿kK%̑F:gM!"}BI/y4Si$lvc#ׄ_Oth|g+TF6_qif~ k-nswjwnt `k{4xRD3 Dvn3 D" r!GޢHc FMߕ*+$:B3$EbBЏ/~ q|N͆[q2̔b7♉T{eЕxv 8̀?R/i۟2>6-i8KI JkBmކ(lOZz vߨ|+TyGc71X(w_UH;ӂUk\/PꡛP7>dޤɁ/%jgQ/Q_|BW ̋'5hsLcey@A2Wq5(JH.G(}$Mj [wBS^OC_ޭ>2騳ZT~ygyMɪ$< ieFARњw)I"9`BZB _ u;=Sg~)\5+g}ag&4J_|C_Ӕ"k %ҭˮ(P4L?#['ԌNet& Bϯ)m4ݯsU=SʛyX&ڇ4"B_j]auRJE& B J+^\".-ip<ԜdзS%qm[EY ˬߟR:zW%>>uj_(PŤ,@#pCx?>B%Yd #{H`|$@6t#{LOblհ$?コ.#|4WQcl>Or=%ˆ:O 8CF:&7Lr:Msmo'_)!QIˇį!-ɔ.O0+}ߓjB'@KU&YP_`d긳t5Y8PȄۙ5W ǁ ss1X`= AM$;6u& K0 p7kt*`_)av pڿg]EdE/Ww Sύr<ԤV#u+u뉤 +(` Ep` פ Ij> r߮(qDF3 v=WN)A.Y]RzT2p?'@ ٲ)#'ƚzYʼa69<0:3'Yy:-C|D>hcp$/ 0p}t/f*곒1A(ǵi/\ &mEDzMq A(^Hdwlߙ_dpq49EHCYmžۇ,˺iz?$M_T7X\S#(:ę=L94O39fx8MQ~ ns_⇖ ͵~X%l2Av .by2͸J9sbb|%wv<9x)$Y /̈gkG7}S(KƜ~97E#O$Fut̥I\79km`ʧ4ּpŗӖ e#o=eG^(!4azYvNgΛgOh]B&Obe'oZBI@mITYaj:VZyQR~"ǥ^^lZ D{ XKgGǶ3guTHGgD]q"/O Uc쪻{$C w;d/Hl +U*U ʌj \+_ڻ4~q J^lI/WoqgFUV1*fc͈ZNwOyKo<*I8B%^Ţ0Xh.^:_3aiZ~&=άlvO?ӻT&5Si^ma~Cz@#a< : RXz7Jz7p (FΥ^.a+ *H7([yy`!T<$-DOͺČƗx5-T߆ZеXi9lFW<; ؟i{trlZNN4elqqUIF<3! !&3K7xs䐀t2fMfMBk"(BfA:=IAORqS)JUpˡ[ȀUEQKEJuYnyTh?VyOJv^ǔjD ,QZc?֙WunLO .Uwj ڡ~ճO#qGQo aN#ŧ{)z덫O3쭵>2׍B+*h,'>VEMxLE38X.Ī?0탾$2@d1UwiA93/Ĥ9[`4bОٝVh${iw օ h ZY-MEC9cx $Iw2`Y$:h-@ÄHpei{{\ `H#٬t|t,,u?BgZUi!;ӗ~/$=Rձbw^zܼe; q̴m{ ykc7P&.ɺ@܉ 1/N6 JQjBS`^"'M6VҧeCxS-RJ^XS~g@wBNZT j'$k83?(FGT44ձj4!#1(Fo\[w5T'|Z"&hoqBu4BN\"#Ľo fɴ=C{A/N9Ҙ޷VSvXJOѿbh/怠n6Jccя]gZ,2DeC=g .z}[b5hRث%Np:1*wftH˅* ʁ01SޢUij>e8^2?QnԁY߳Ųr֪[5ċ1ؼ#}L>!ZY5 -!5olVdOf]Am>Biš1.)cb"]@vmR?IAs4+QkʦS'7K" zQOéUL3>BN ҥM` \-t9=6qeC$ 7F꛸z*%PE;Q.)\Sː0[gv8$B+m, yf q^fpA|hٓh@+~ޘά?ڵ];y؉pTQ2(e;ا{vmQ9 ȓfͪ^:a2]j7d_feY) SM~aSR򌢟=DdsJ|ZVvZ#ŇE RI>1SoenD>j b]:~Ǝ|w#7X'4 73OJ.29ZK11Gxpc'z KNSoy}o ~ԟPS~5`T;ad/ jd&T4]gpTdYg>t7 򚠀DnK3-HQ5< b9h,(|<,kh!Thn#yջ& 0-6.A,S@?CQE5Ro􎃙k9v}sEH+Աh )|yLRtNozJ\NFVMq)f,[E?8+z3JBkA:[Z Sd(1]G*'1D, 4\TdUC%~OuJ>RZtk4h*k!3_DHav(Fً9zDHwB2:ؤy\>Xۘ\ZE^Җ%\قNJ~z:tD1~ ͍~wL^;O _`sBFr .t*AXGu?r&r%oZD zO2ۯt<(<ݖt.n*zox2Bpoh:M[w ,9/CUe-o>:v1[a%+D.r%6SP(kr.J`sDU? @}qƚ޷X;91JI[F;[X9e6Bg&-i09'8Eu+.3c[ V`GBKd>^|VgHbLi\/7I2w6WvsebRA*^ض 4-/!h! B25q#3.KYi>wj{erL%NSMx쁌70v= 9r^c96IdTY+n:ťxۚ g_ASC&T)x,6 rzIlk'sAOWI/ 8v{}~bF~+UϰR+ Q';\YOtێ5H+zX٢ԓYe؜R&ҝd}z.3 -% `'LYX=+ΰ؈AHhQ'`9+/䱹ľ y4Γ~&v'AJM&I~U;Ubn voNMT3_ Įf&pZ)R#8MtM˗蟨Ѣm-} 4pQJ@H`Uݭ4%k8M1FGϋML٪-罤q;sv jp|$N"mK\Zŗ55?J$@Z1Ndw /5>%p(hD) ە̯ByJ`E|0gW3"TN0m^G?LlUobX9K%sȶw؇]1YpXdGIG6Zb|tQ^[EXX2Lk x"G@gԔ@75zbrp_L뫤F@G^ύ7S[? Im{0+Գ/^aI[)}b]% |K[Jx RT/SO ?7O.Ÿf6ZkTѪVVP8rLL"#p \ 2 z\PW( wj6 U)Eߠʉh nKsw%N-шO7bα Je_FdVK?# 3nJ>ޚs"VZ0Խ^jchW,Iů1y`dgd ){pYS6MX(ߗ}ː rC|"x?eԱV͞ CUh1iK.7NFķ(p`pKQ i,/b3Ӈ#!L 9Vd32QP?ط ũu&8=fePJo4)pXIK~ i{ ٞGq O_p٤rSD6* ?=m"ڛq aieC6_<ԻxkYžf]0qv:s"&#`Tz C]nbr3d3<"9Ĝe<ĶJ;abBwM$l:&+TOr k :DX Rպ@Q&׎>y+YqB5b?UVbsn]2>Ք̞UfL'@뾕a{:>msc`_ъm.&7,/XM ,G ul!dU]MQd\|b?|d ozl<t)y.RȤq`$f N7 %gLCgQ e!ufD>ٛmebWqy &^a@nC">Z=4@+A ϝhM"bJ c줸mCvT!Erojl fƯ^~=bRm> q2&xI]:`^iYn ;%3qO9$`!-ը.k`&E G\>ΨI6 =g˛z9+Sɝ (V0e ;A?DT^pd3s=$E͐HN1]{E9/txNOc66FЧ~LssYzٷ4Vmy%[}^l8\6{ &'# VJrr]ͬHQ2s:L5ܪ(3toElFr|ѩdt:Xp~yr?JPb3).y)b{'@R9/g.r$SXgBlOWMbfx]Nr]w_DqXVwH?!toR5 S ZP@#l!4*g=0$5m3,Aꫛ2b_O9KbfW55. Ċ= ɼ*B<o9{ "8BgY3C:@~R:H'ci刞X[ DCPၩUKmeb v/Ŋ&]etd !k߽eٹv,ٽ/|1Y2|}a:%ڛs=Ց6\W[W˴+O7p4qG#<E&)zbL Or[I9jA͘I*_t~}܎DA5ꈺŽ &R}? ?}`0 T#9E@Onټp GK–eAۼ= I>x! >jR17Z>?B0RPf04BЇqڢܨ2Xt7BJU{IÚ\ |eZzy^қ}P/䶅Pr{M+^L%*"$9\^  >|As͒ռL\& Kj$'A9ʓnM7<гq7kfeȱQCR;G (} hQwB|8K^_Wv4Yfhpc<4E5mzF0MTDY hD?dSU$pOO4X].uS<iCwk -ArUԒm Z`KdSYN\` hZ@֌y U*s*ƕfu)BPKx7j{pRL* ]^hE(D9'lC]l8n*;t$65]F@( f#޵)NB8xJ/ >$ME*Ϯ8֘uZput[TU =HGB%zDĪSt?<<>j n>? F XnՏMrjU$%SV0&$M]PC,!z 5\:܌K hXҹ*UPgPΛ)/={k-JV5B'N-$g9xu}k=|c/QܚH_ۏ-n,p:#m l-B5[,Ș PcgQ&fPW:Msdi@:DG"=pɭkYmZ7p/6=<(^/a#57H},˞N9ɼ'vnX}n"x^RyAAW'"Pk^ n_Qԃ/5f}›d'jSB7+ ;< Dgo!RY]l~&5Ů8n_.:I}mwש{K3n.V1/zN)]n;eޯ7UF'JV$d4sK+,Cc\LN&Qw[+ޮ)f; 4*<¸prUMuO@/:"kzJ:圭䅀XLE|rX#r(.:9)Uyoh"9Xk.<ٞd6hB3 IYNJLQl 0q#Y(:H8|0LoY~y;@a86ݱ}_o YKb~еCL#͋zt;|9˫X'"oݨ\=2."t θÿRQ=z2Gܪ@HRAH aUdX́eeZ8D%z"hNx=>@Ui]g^K\a2 {WxCSkٓ4_A ;Hx^_^!aȢ#h® OE/ҋaGojI$z.dl"(9QfsP!:Kh XEcHĉ-h"+y( |)0]N|ˎ}߁q>ZnBT7iߐKy}c}&NT aJX?J FWhx=JOltMp)oU7'{]A>J3 #_ *E,XVc52o|wt<3\X]䚊 'a&#N^_Grj`P!2IfoqAkEh@qˋ5P3؆"|Sa4ܿt, }7+/yEpEr)Dm볥@a& 7ksxC'?_b ?r.̮F|8(ؓ[W58#nL2ʩ(.sn=4Ș粝BKMh$;ԈUpRkMa'_ldv 4Y ߈j$YUjGt^k@-1Lwr<.FИTJ9kD5}*Ar> mʕ]x~x=q14c:[atW0EV 5xdJ 73/jid`i@;a}jl2(|t3?0[@§ڜ )m3HOkcZi6{n%at qK^*.W޿&+mOU~E^ eFgt9㊿q t|< 3?<8{:}eWtUuTy-,8K@L)n?>a>/)KUq @,@|{Ogur7EwD<* 2-|l"Y5&yUb'4#Bx®ԁhQ(SMQhw9qf?L N=rilrS5I$Jߧ!cI 5L ڽPWSlh3*䧻82EJfMz`h70|7V_⬮lUe`%$iw1DWTljR cfg&fgI[ĩd"_MAT(Kʧ9D'qYʎzeB&77``8 ?QPԺ[`/yp d^A=jծG]:v\\s?@qVZA SNxxѸl+sFR]+m>cqs' BL^}\{y!gr 3rt:| u"lNl\W_fو -GmPH+'/Ku l$>&U4L#!ʂzhnB c܁.Q_: N@CV9wo#Չ7>'Y'.X;+tτ0{$r%ab c*Fo/̟xEH698K|U*<ҍģ55mL =a8.ɺ'J;{I;G͖C^ToU64C52\8 J"DՒ]{l|O)0MD>O7(4m7oŁexh7 j'E`d]z|rJ=|y|`NqCʸ~7&NG_코 u<2&V]@'0eݗLuBx M"0ThnT|<z0oOzPFiZ~=\1 F,J"&KA*M" IJ"vhR=C< 3$!a\Kx;ek[R dl$ծ"`6 G)e-~tŗBa*GS)~xQvp^r4)Y6LD6wWR`.Lg7d Wg??dMFeM" IPD{#w26!|O#rߕ՜vA<Ȩ/U2[ 7Ё,(cō g¥ /f[JM{N,*M[g|H߰:Qk d -)[ґ56o"XHx/w; A }Hq _1Фy ʪ/b!6u8ߏ'{BG*z%[5B0⮵&85Z5㴼o[+πE_^jTpmƜF\kO4^N ^ 6sY i!+Oș80?e(i>G5 g* E4d%H>$aE{wpQϱ2ESOGu?g}@N9IsޅvJG୊0&r\Y )*׭$sKt{zD?q K7ur)ؐ4t*k,z7GQ0dr6J Nttm+IvKAȯّ) ,ɻ( FEb),7۹,C0r#6gO>b4)1Lk+hWw5/`@.͌iD/p3LǔEC'@p5jF'Fb}8_yΤ08atx ;7$U]÷z7@ IjĹڐf?sSt`mdG?*oUɺ/*i|,:xfNN.r[VMFܧ!o(h]l9$\HbӃ1FKf&e}ض',=tSajTaʞs\ :a<띁kH GQ7bgV}߾,mM6i*7y Б:{)`0Ƴf%W,V G^d[lYRPxAI"%ڤN;F70<#HNօ&]gy}C?xR>L.U !\b9 :$x=>lj)߾𑣔 W{Н`Ռ3sHWswDa{UuJ -kJHRu՜q*".;0?HM쁫e .J xM,S.Y̛VMoGJc_ҁ<)ICYcZ͛w&oߕSMM ݈"_^X3&We;. %*J\i| SypB*1rf2xޙv<Ջ sjhFx#ĔfpEiWHw>aq^aHMh$wytdFv&kC|OĠg㸭D'%ff.WssYN< C|-rfa[Mj릉Rr"HU_ Fj0黤tm_ssC)Jܣh<}5bOK4x 9͉WrhXz|BQepn<'zZ5b~4icwh'[$'K;0eUR#|VN2;NialR:%#&XGY2qyW;%X.Qq-  dccFe.ߜ}ic8f?ۛ_RT0]=15T0ݬW%?TʑD=,2&9`~f? T \™uˆ1ⲙ ?$OK^ 7v{͹28ڗͽP5UfWD:mϕiYH!Hm;da(ډGJ9ηDrt%[(S|}-$hy.mC3O<8'';l%LD5Z,] Ն*]*l3FvLH_17+lʳriX8LÎ676<~nԙ;3c)lДY aŦp}+ = [eζWPirA{Ҁ]qN6f!ĵ߼ 9Ց2 iE*jNNP%ѳG^0׾,w~x7^2d]EUs'A"iRNܾ1꧂)x'ҕ*y$uY:(Qw9oH݂]t+Fet9S @c0`XH}'q o?: D :딨܂fnJ%7 i e9_SVwH!kܣ~tA̡- bm,kgCy) <>2F=AK׌,G9[,cn2-zMxY;=Ik-(~՝); T s+E0m@?Yk)RBhd\<9_Sم><#?!}kٿ֋%UT`Kç[ps2]aj0v?q8l}G>tM'?}ʍ4/Km~5NƘxL|]hR@0(7t*U_Kᐑ0?b4[wdףe}}nGC'\[W6TegZ#EcF4ijwv)@&9kc`c@C@eD]ذxM%HDƔV /: ܼTU1E\7 kh=&<)+)3^LNa,^Xo^ ijk;v乑t7ɍA}uex*=]  bĞjSؑFP'((ez%}',ग("CNFr-!.SKf^߭Cn0i2nN3'*qPǻ,nv: 6qdZi~OA ,>!L2TA f)́6WٳyI`z3=\XڼN3F\0>2ⲊaAª x_WVUM XC$@m0bIOD9ClAf}HA*/*0$$j~X%(]50'\5KAYc_y"yF'ƿ6WBZgE9F_Yaz<6ET+ Y9;SVEgXF/ /8$d5Kn1ۭ H3vAhcbs#ya Z Ҹn!5 C%tuͿ eĆ :肄u"#X؄]+vQhW,.0vs P.@O?^ݎٷʹ:Yc=7`c F(>hRZDpޅt6G5%٣C3,n-a:ʯ/3t|g4*f%ր*$5RAぞu \UyTE$b|o])VNP~Tpމ/*Rg7wcmSRdC%0t.<;PfE8Z*ŗXVH=MG77̕52؁Z zDG>rgBAIc4<}^}2!S 6`'l mU&e}(rrVSj8lEv14bgudu@!:k_4T5qf. ȗ]ȣ ([ٴk`|7,jYé5q^o*j:R LDSpkK 3wm)ۨ,).y)H ᾡ'V\|>@uw60?2]Tmknz "vݞש/NZ}wWoҨ"Ӿ |o&F^0ovI)ӱ<` ~F2#;o2(ܖQ} {HQI:X39q3.XU0ɹL:L0yߠ 3 ,\65wsEm1u%4czTTB _7dG }yr)Ue۝&?ٌЪ09:\$bgzDUSQGdzu|Z3=!Qfs4jicXgQ sЍMrǩ;3풽WH cEDy 'JHd,-h4<h1 PJ-X$ÿwjտpQt#斈 vٝya >ޔ ^:LeЫ}']BB $yE$,źS*²Zwwr<KwGeNjt-S VcL&@)7rCYyWB9n4RGGu;i̞+㦐WʤSM^pxX_& ؋@j4O5舖MG )>Bݹ|~_}4fZˏT1eaOnEB곍EٳDr|NO޺"fSvym Ȯ SZ2W11YIIW8>"kq+Q+H:̣ߕoҼ†df ƭR<܏pЉ^ѹd&iίPꐧCŮMcq 4ݔ`nǗ;xœ<ӵ[ͷI(-9琻􎀺I`"o kmlCTe+qVĻ/ciNR"K%E2 C}$շP(H,; kן9, avģ:.WӇa䯹@bXٝ2]~5~@[h.:tEӚ_?\*)t(zQ ޛ-TY亐G|c"sa?SB3b?C*NÕ튞O*|#_>ژJcXqknM9нlG.|,I;0#d SWhчF7n5R-[4IeM4Qal,T7Md8x9=r Ds&QUu1.KVwFةq%2# S cJ {&ۑXf3E Uں#Q9D67 v%kBgywAƩ zNrV7EGI gD(CooY}/R A=J唸 ,ë߱D;uD=x_ 2Yo!4/ }c-fs҅8cAap0 6Ԥ<4"*bV*Ls0 pZ٥ qMu=}hSr_QHgZ4Si Ҁ9A n0,TI‹e9 @b]oAM䣝[͗裵DwYU@[N9 ῇ߶*σvX!Y)]b P|{Sa]?{v(m~[Zh.iaI(d[~yi$cS>zxcV\fbY J] Cznixe9 ,dY5okpoScklv>vqFgc,(շGmbc`1vpuaJ#6R>oh fB,`G)zuho˸NՄIH"S 7HYBN3h27x >V㵡>/q7b%_Y)]r*;Z9UHr=} Fa7ݶх8mqMq3w(WG]4{W-J׻Ϲ޽; yFKY!v 5u<.:d? ~Hʦ>/\KV3+I29}F >0SD9¯#gf~ Y= cb|P1]ã?(Izjn<¨+}/4M:`鼤.63k[iM奧,mw{y7;HYOŶJnr>|YNXK2V'칿쵽V` ]+OCR0;7"A uUVra#.[2Fόɯ,[(kOhy A L+T+!)5W/v' tӥT=ՄG1zQSaX9T/!&| D%?G9=Ζ rb)_fZG1 *] Lj-2;1*r*8,I3R8>dqz^dxvpru@pd'Qх$ m#{x>XRHOj~XC[CP N/zcPe~ |(wW~"Ibm^L 7'vrCb?>軖Wk4tIcuqdY wԐ5݅V6t͗5˴ɦ:\oO\LԬH\~~Ī߬TCcXB`J0Bt1!D7VT63z6rNIN̬6?_$@P9ob3 lǴ9osPMn?b8 <~Oy諯zƘtH46k$6O4n#-n ;!.3.>Z0/ ISN2rpPrADX5X;גrYB).T6h0Thi[r*Z #ݡ)%Qh 7IS8όT `LVl[Z]$*ΦE͎䄱 t8,sl0-ɳ"CǼDQGˉg#ȪfJ-UUӔݤ3O|v2%wdn,dOhr_Ǩupl@sqEA$侮7hG%JFKh,ۉpG6BYOE~.Β4V+Z9@ʎ-dIAQYAĈ\aVd)56RQIĄY pFy=.gq|XcA{rgD=l7y4nEL(Ͷâv*_͗XT"2?AFaEk L Tybe+ H٭RPy閙Xe7/ wHbR'rFe. 5@0geBFDM 6rg8#hΉL ݂s> $A'p jLP՘bzD75az ?Ҵ䋧; |;#Yy# J&AjT<@e{![=X&h`p iv~i)%3iJ.tBkdB@ Lz1Wtzl@%X<{mh`ʞ:'-uό~?wc'F# ;͜م4VsO 8ro.O/>d{H2 1o0ZZp; ZyݫH;ĂG>5ES*M!ntPy:d ru$x{/t}B\p`cL/S^sjjkBgL X#m6 A-q/m,[ BOG8=On@ ).!Dm v@` s+8zUl.n0dT__HpB] 4xs cK3O$g} o=P7hSGJ|\AB# u;jO}$ \i_ڰ΀C_|¨0VvGh|vF3RT'%Ä[wCVcBM/ LN,ףM&>^lPRg2FAro' TC\mN)~һ db=WVh!:.mk~aljRqrD.,j+o/*w<魖g5 eO4*lS]RĬD<.Qf5@r:}4tb S "t'x_Q#!xMƵ 5ꚡ9$4مbzn褁RKes&wt "v؋(M+3 rqOQuV3Qh tQP4 PYvMAZ9sQ4:tKK#<~U4bتYzCJ39 *ҢU(͋^HW.!EǎSh,AfAwo" K.@'mOf& )d uQh gva伡&^Ax%2`Ho RKI)p.f@~In4lME-)Ti2S촁_.I(c#7+9G-Ē"GEGHxfԪx7K ڼ7w$w<2ձ'a=R /'RgBDCTioC9 " 0{R FW m7 aRhk*Z5@t0@*U닪2[V.Jy:#HFj*7.t""!8!e@!BzLtJtp$QN>V]t)\c7Z K"1)/!{/$Mޚ8FIQ!|Sq'h2~rsI3~Od6DQuj }3zf=K~ fnN^ơAYCΪ^ryn-W@M/ (URsghg KEXBV^sGr=R-uS2"9X*%ӂ=f 2JfV]f_ʥH~3g잪M96Ik頔mB7pA/[hq{qɼ}e|~ɀ)K@.{k,BQZ4.7آiQnI9+}dpq͂+ mT[]vz܂0> h^_8edŶciDz_@\4 롻ԂM)l 'poG l CaUsRu/d׳;Ilo c/ B1(goC'q}3柀g5<OsA=/um_EV-+V,Cr$ O%敺̐p÷C xH&%0X~!7e!~YUi|wu˞>#'K f.`5dԽ/n`ϛl<4]~uAM@+7 P<653CnK'f1Do9YKzڿ)&Zؙ<Oї)lBKgeWx=1t, OgɊ1*e8;ԋ'prcQ2ʐgfm-vjM,x-$hT1^ :;}j)N{rEΑ ~jPr酓ʸc *OMK`I̲!Fٌ`Zo__WM18JBh8n byvmڀh\r~i;-V :U#RH|+{(8:ù\ pO<jpCֳ1)p_2s)JH㝻 \VZWl );,;z6:'o:9K uD5Z-o $}up8.iC mC9A8DBBUBed"f@TƦuE.RR+d=+XUXZF9e&Xu3vɄz*e0VŇŌ늡Ɠ5$I-ē?CuQA֨< /c; ?!zGA kZJUzV8MHV, Y@2!xٺB :DŽgj3yS~j^NS3*{0eNEX]2r1c Qta+E"m9-gj?7!s^'6->-OÃS0 WqBF;dKUTO`gМV|/1HQ`~SbelPm 'F\UbhrCwdo1F()(Zʫv$ȶ ۽L7PʜiU7sn%[wNoeljF7{G1 qoU"LY+:UlBh{2M+{..=̫y JZęes&ZՂcAbG n䣃M\Pt9lÃU[_ֱ.-$"[ʡ  ҆T5ȍoڇ#:P/k)φ ',rJ`' Pyw[MU~M+@yOR\$4(@"U_6oGW~ DLρaKai0FtL68/wJ==3{aQb| ޤtL=Z10~*ĠN0~mAxXF^d{9$be>|)wNJ潀tu S+p^ /aNx*5>b=xιcC)dQrko\|#%bHE*SBOk!Y\cnluKk-f\ ݁ /4T`s$Ae}mjǛS`oŗ`m,bȴK낽=MG#zGl FͲp.AD[^jJvepƺji( !a6,[ ^jsf69K1 sU,Kžs)V N1PE^c.$iʗtaCX, D&If;F!0HQ8I#zV !bG$}făug܊F5~TY%FT5avh¿|)~="z@\=(oRL|Tx`8rF&-L$X^9]&_,x]*ҐTMvu=`E* ͸Hv-BuQf8QD?g(c~H{Gƻx JGTGVT0uTY ܐls>H zlF)v!҄3>I 6ǜ43KC&FG]F}*y@i!M$ +1 %x(c/ׯFa, JwLR-'b[-W xKFx[-h/ca(坏 "~ h\sq6'}'&Mh h(E:*8j0tm4<׼:(3Y-7 ^8Ec-?uRD2Ts&jcm>By aN<}Ij8az|yB F`κdu dF:îFCs1 ywlX@+0^7T1Nv<ΒqJ5Ac&pY#kr=>RfoŻ@!A<V!62b8/*>`9f\V6VQ Zb!yN ^ۏ]*e"aU(&i7YtjgM:-)Ă1F s>VMMg`T^*Ξe9<W1/+[#SZncE.hrxYrDƳJFXh'Vϵ泎_LrA|֑Mr]Eڰ{Hv]k!Wנu`= I|#O=tp.FK`*Dr9a k0%OR|ޗޗӱ?ۿCL .WQ$s#VE ƨ}$/hꐠq::T!/^س]Qxyxwun~W!GH>*jQ?e`|q/x4,ed/`kqU3+W㐷5؉0SE3O'1 gm6`r3EvV@?awŤTfK ܳ S }|f$X-|NCAz nK(~YÞАGOXlƶnZMdKLtd C]}1= 5i(iXain$<.JHFeҪX25jlW9Rk!VDT%~{a"'>A>*=YG{jK$"2rTR'R*۷ V<رT +%esV9bi2X:U_C D!  ݦnKo peY]BxWn}>F4dbmB̥gaBK&/J9 `d#4BsȧY` oe]rN+UgdCƾ\NoM-]_㬀/T'+f]HS 3REUL2l_5Qxa}ں|Exo{o'j%1]7hr*jw_k jl mD cH{@T_bۑ(ex (uGjd!p[Yq4`uۑ0؀N6b@n6a>!'o |Zr]9v@`K}DFW`ĔaUt=ŝʼnzyIv";?nUzP#jci%%n0r (e^]@DQ V7[Tψt'Ue=6jq\mKڲ ?sN(=7b_jU6[\>jݖܼzِHba;gB Z^=ilEd.~65GH"^>y=`U^t$a*<Ӽ qXMN o+ƥZP])Uh&1$rifMнm0ag@gN|ǐX$[ϐ]yֱ[3OgI:K -,? }_dB%O2[#M-;{ba6N>`a{5ܾOك  ό]I3E& OxׂmtLb׈j$~J8mg}&׬,Sɣdz뒴j #Yހ^ 6=6% <K6N1LP{$,Ҹn,4gr<`JoբLڰEYGOJ?T"bb'9as>.K`Hu@sA1υh%/XMea9/ Wh&1`#?۾$+p#d07 GkFF-2*[X𻋙tWTQKEW(e2q1&wX@q9.13|xR h*l `-۔жT:ĸ@@dȬo(i1*B=OZ}R Vb $FRf8{F/cɛ> (62l4%`OˠZ∬fz_<3Gbg .1}rL+Tw:.]Xh\SFDZFCO qk+/vzqo1ߙ{կ=B,Հ_Qۮ+~Ny*Ҝ}@T AA6Tq)PCو_I}^nST3 =SиbB%QS 3&KyU4{o 0q樁*s[rXyd5m:V V3-|OY8vx޿ fWf۞;#^PP ڑuYH|C-"2hqvW>k-jvcn!^4ŊOMf(۵PC[0ߋTՄͿEe[La-O;ܮY)HOSTjĈ+Kǭ?cM>ZXRGǢLDW2YqKQ%זF[c氄 |!$ Da`FGL}V/î4Z>Hxrٟ?r$Mdk%šX{EK3p=+]g Js-*} Br6h3avhFijqw٪hL¼@+])_.L eJ Q. Ң8 myZ63ղYj-uC92 :ʰp(9+x)8z3v+Mz}M G l.9!]|1tOD'AejpV'K}vqLn!P|v/4N#ٷ|ƨ`U*ȒlF"~OĀ؉R!W?,\r_8^7Gxz(J-Y'O/VTXpK*t(s)Gɺ]| ^PŐ[,D7 /T)weY(KBG .#jQf[IF "pHnEQ-)]G:n2O^u'VTO{()[!/NmxpSVȂGe5H52O);Q-* D|8,h/J]vNF#ߘD 8u%c)̄ڍB[B_̕ :OTb$'A,Qok~|.h uNk]Eu00{{z^C2H40zǨT5IJY v5|&gT/(?~giҫ͐p Oa 9zx1h"!sh ZP7b)NM̝im0SA*GZ%`p 1!RʪΤTCϐ~1.US~ww4".@Βw$*<~WWR nH,=]S"N1/ojO`YW=M;EJNrN4 ^s#kYKnP,ė[,cA[ͪT:EfU gNa64Vz 䔳Ϙ uK0Zkqr‰.>jbAs62N OUีmaZY2pp$]H e~ t2;|=tQ9א>q1p֠ =7q&:_^$G/e1>h2O!ĵ8Cj!-Ǿ@_(L zϋ>pwb@:IYBZUYvWigL% qݖކPP^|@큺uժRfOҐ,0bu$ᆀƝP3xgu2Hm}ǞxJM\gԥ6[dv @%55`bD,K*tB1=Еm"T9flK65@&ºʹW+k,$^KWg &`b%4mc`Re(Q6&~}hMP0\x=ncJBgs#0Al\O| :]|CZk_܊ ( ORj bGp_W:haVGX1Ӏv!B2u(NB;f0\`RtVތ~VdD3Zo-oK #Q~"[ˈ2b̈́S0rLn oW, ɔ8 dxΖb`?C{L^xD IR4=n5a@ PpE5Q3M'h^ c} C2ybc"s t0*38* 0:'oxqsٺ]$I$%gY?d'K.T`tIKR5wvttP1q){' ~2>fO,`&n"lS|*Wdvvl?okDOؾ(`ذƢq#]X`߼`[d 8˸.;^؟zϛiXr_뙞6د!GqlpH} : 7/hw"KZ* ~jTE2uxw<ܟ4'IX;_mg*b,fl'cR&êњ<(q=ṡ:xlO텨ogM7e}I uN}0\@˙j)t1xĭD}\ Q*Wȓ5O%J"4˺I159NM=$ 6\;LL(ZoZy6KHZu͞Oq<7܏$:프L7QΙ8>#Yn'mna⵳WUrضu!R=R5;.by\0yR*j@FC(.tCqp 5!ۄ3ˎ&NF\!77$DѢ[m}w\^=mœ*ȝ fێrb9=ZH)Ck7[yY0u$![ko76>zFXv[C5Oad.DoS6&}34U(|+=0OY>y^Uw)xŦI335qiP33|!]&iGeu]LK_μ25&܆$:F<#918ζA3၅m2 l =`-&/4R(B4 ~ p̅5R5b hXŗM#3ΤvhתO4[`s\9 J̣JIp}Tgs&1tO3@DtG{cQ9+Iя^'_3e@Rq\`.rr+D I ^>3S^isWu;<ǜMF+$ؕzB昞( 0`htݴm>* D+~|KzJkOhL0,'iimZ6 s$w-8KsZuB,D+np,(\oS*<+Y|~\p$αO<:U5̙;Xra=ɳL$aY*\+ ||ejeq@ŠNF)4T@!ܺpPXDgG! ~R|>T2~**D1Tut-#Ӽqz?\Ш) o$`U$s֯!-Ʌhr~-f%z' 9Q{ *aqmZ BtjF /X[MaЮN`: icgكlyQ@b%A* }#K9.>UJflɯ+]SyE@}ƐRnVo[|G?  і~)uO4vVFOe- ӄu}S];}#;P+ll#/6@II4$όɧ{yӏڊK(pH* P^n]HKXf oRznXuQq*?/ٸ}|>[90;njPAsʃjvVY^q 3Oqig?;84%zKIO/)Ɋ f;>z|tM=c]5 ~]ybj1W*G3ҚU#\䕧wÔXhIѠ Bb|X?3cMȽT=_Q6@~rBim~$%r\w1)K}GJ 0xt\:H9踹*]6oN@7K `I&6K[ gji ݚgURŨ+iI:eSL&~x1#Ŭ h~` 5:2$ہLpމEJ^Һ*-1GG~ ~_e-@mp \`?M%%bQ3Lē`_* E0b=71׶H#``VS/05"1*"1u\TCz|^j롡V. |f m+ċ ƥ(;UjwJ7–?٣dۂ#cԋ?@,{TjUxxL5~"*'~+.Ho W3)#EM^s}'b5k@)*c|j9~'֘%v8|js~~] 5{TNQݐ1Q7m6>Co z ,9s'Laar_AN *.ī#tߩ-D!W^fg < H ׊RA  C$#; 6 11;)vHojfhhj}I% AS6qe?A}%tqBʷ`QƇ"u֍qĕ~MYrTbB%su!}89tIĦ\$f<|UqjMt n!z9`~ Rvx@.*>U -!B)FE _`_M61ܑhj4l%l_Z6[6IO:n!H yq"":͡a]92Fv&h蔈oh.ڃ<т.`4 Fi`8 bA)AbSAHp3$`р+ zA+ӹbjO^W _l2Zb{p*7մl; WF{Rn8 BGf ⏞-Aa5Ϸr( MH= hv] b6/eyZ*So%Bw5Jz9f5<<~yeQQ ɏSG/ZiSSg j,(:A˓.uz5%JjWs B57mA~qƐ9ԐA$⥃ w;MԘdo"4{즦vݽtݝg8;dAO&8Εt]7h|W0O58Cw>'D`b\f4So.RAͧ)hz(N&!~QZF GE^^D2&+d rJd-tU45c'5Avnfza[rfug[)d~!ieDTBAhܘnl%1kTZx?ѢכJ)T. KV1/\sբnF; 5,=S2¤SmŠh1:/ܝCD˩:Ba -qx$se.,at`POtqxǢ;>W䄼*C*ČjFEm-C3Jyy_E} Pnko৏|X|I3 p+^Pw 7^(95aUOԟt8|L8S3!e 뙕 vI03/QZq>Guk*Vf!%g곐h҇P#I og|ǔKSϒE\ [Bg1^¬+5sO\b^E*m>ھx}^]qEB:?5ǺP.Tf(jD68Q؊`q2sӹ@&PXD(hcvn%Dd%*s~ZG@,H<|4e,^* HZ9p8Kј]:rtЪ}y6)-.v:ͺFNn+]'FA3jF&)t,D#'}c|;&2^t):%#JW/p3"" N]֋yb:H~R[Œ468ͽX"S_},%Q̆Aܷ[B=aA[J1ECnҘGu&Lh~ JH׽.Q~C8%N~Sg=J5?xlӪa!XJ~pjօ>+}YD/qc^Ce yPm8{:E'QɄhN%%Ti}Cz" /fLۦnbt$µY % l/t -.M© ?mڑeӏOڅ9`<;QQxKW$.PɑxIrh׀cn hJv+85Q~Y'w2J)O\CY?=$Y'X;|)DڦB׺{Qz0 db|gC.fɪ}50\)kُgSC8r(,ERc@ k|+HaPYrRV:Lx؃bRjq \"Σq@Fm4DHVT0t @qAn=@f! )qGukv/]>**9}P1ѐ2Gڊ0hQ>5 qsLF 'y뚑븠j3~4ǰP6Қ WY$兣I&<8 &8-2k0}v u~rf'߀fa imd~ҟ9Rpʚ?.{HթھJwyJzV(4,v ~׷^A .~p Fj+&<O)3NJkj[h0+4 ZM:ؗ׸oEsa5_RXĤ@ J NuZ"7G*z}qu@cyٛ7n?~lv*{=$uSeMqP ht3ʁI<-4mh1E7 2 m L9W4+Bt{Cޤ̃)ML})Y9Ϣ41#8'0׏>2xݓ7Fsxgt\%pA3)cs c8'rnsvjVʉOvCvŰKz[>'8e&ӈ}SSsq~+V:+WY~7`-O!5Y@ F/RrR$:|;3$LZ^5hųuHVuCǣXkE-B(@8Y 4W)3U379R+ 딤ֆu:LC=]/| #;P>\L~yȳ%T1x4o 0T'Z|_,oԇ R%`Y!U`;!xz6MStbHA ʡ./g7$:cQA1뮔 u;CXf]jbA'Q94N,I[yR~[a$IwFezӫtu? fwb<)nY986c1CB{1JeϥNFKm׬L- a=W+FpDB@ϖ?Ij2RXII˶R*on]^`ܾ/ xkϧi;GOxƯC?8muR|֛e_mN.'~#נg+YH " N:[ -g7QZ6&ur\"[58Mԙ'*Ɩk{10>zv`Pb h8Vo1g4LUln }Ԍ $9jCP'g9Pڷ!>ge!:Ϡ(O.! a5nVCz'Gyϐ!nnHz]JKGh* EtѪ*V_@}Ǩ#Ti'"$[ES9e] 0RDR5V4פ)pXILÃ88h[o);op9^z{A[a'ZocG0#4L[) ]Y mc @1!7$_%xeN ;Z4Ab|y,\$X0,EJ> sfx$v)G%hGz]^E;*.W6@0'9^(j?~`Kc45A{99NUT8 h>C\ڔyǝ;ZEY5a5k QNܗdw[[OzR{?$ FY2Y Ms"|αP=[( aA%[{?\D+HU-mTΡ+[RaCJ$vG]7[92 {h/6qaS!0{E3я<2 ܈ .L) [.lΑ W{wEZ?̕@=2.wBOE5a:-D'AA`T8MUi vPwsկysà Xc.PܙhPzҲڛwh){Ϧ(YRCV'$~V-෬B6gh#Г,u]`<_3zn6 .<}_ >6ZAPm t{%{Dn6D2<@&O5.xޖ L֪ i6L}MqD_뚕at9kc+/4TqvRIGtmds ^[*hHo}u 9c(KE6‘oO=\zV<ӺNQnv)8rB߾5 U |01%grSҎ I&G Uޑ$fy5X#M[ImD0;mz:1CW PhVgA+z"c0^tHʟ &9MX]:ns= ~Vxuk~zs<0Z)OBZp$V4W{ЮM(ddhV/g/+FnjniR.CVVNʹg.ԃE(tII|suXC[6EhA;gI+u5uԍQH*$EN^=&[a 56ư8R+}s)2t%0 5~,#9iAz >Sa323K^ _X*؎aq"J n!xb"tHˮ84ꆭ殮83MJ;s{봌LB3Q'\{ED<6qQ;ΓpZ%v|TCX!2< OUG޹51 B:"<S/ep7C-(NZQu!>.}sѧQLgC;iM8៫FQ#H#Ʈ%`G+(IͬzG~ +9yߚ2K\`@ mT6.#uc]Df(F~d)"ԎaGw^J0.ze@Ui6ޚDѤ<*U |D殠w}k`f JN(ΒA|EӼ7̀QNosKr,Ú$h$0Dg8h ՜4" e#f&T<|ڋ ٵboMW .T <=ϾbCL,1T%9:VT&5.kdZnF$[\7}"amޝx{8x%TMfRMZо5/Z<G0s-/,x&\Z n f%r5ȏVkɳUӏs{%fEgJXG.Y |EmJNOG%('/v8xP{}\Yt+ eكDz;0.adB zU[~:֗?RSN/߬8Y-V{(c,OPXxQb{hIqa:074IJuHj Z=k6ǫ=֞'1 _G9"qjEbw.ug;mk\T1Qcҵ,β +0 ̾;TQe >\ G '!.l>u%o_e,;8L@]ȰXr"(V[3ˋt(,_-$솳yX<+V-~atEeZK!:eA%_!NLi+3di=>/IJ|I#^Ά0;(dEԺcؖ=Q"ޞǚsR7,ﻢ /bY8@ųEGj @57 dJ*G798XP~`ڴ 'p8fok,NxtPj"l MsċP(U+=I@]0ќ^f p0EaZZZƏVԄ́Zb(I"U[hJxaGb֨UnATm|YG0 mf溊@XXÃcL¢m;6H He ɫzl]RAmj K[q P 0-! O׭40'Wsrc'|#"Q,'|G—xTk#מg'"k2@6Hl Xo+l͗A 8 amdW>~"Cc]2Ol>u~1 }jOSo%,7R#1> j +o~ڋYlޥE@ MogҘJc˨VxeHa!M/;ӌ)K>_Lm [; ꋨhS3҄ FaK^&,Ld9uL@gvb)Ck/3U@Q =^"ý1æɋh=]$4BZ8 2ʖPm2f .E''ϻP#Y4׹@|^2`]۞:zD2Z; .J+}ALvtFzٞsDODe]F(|LԯgU{$x$k97A sf0\bx՞%ۊ>Go"BA -y]yTQUټSWQ$3}͋2!!Uڼpf9 wnV6>_S6/ko!S*,ԖA[x+&nt{4@uRe7Y-yͬ^ |7u*wOF3Zb .\Z(xg z5NŻY*_wA!c3$E mE2 x;,j |,o~ؿ]V(JB6?DG>}+`cND? Aəߵ{mam#DiEi~EQY.0wZ!-sHnyfH1Goz66fžq8_"mlȖ,-#,aQ bSSy5,^(G>DD{3;J9U1Q2!rs c oSXSE T]T\! Y o_͂ޥM@^r uk-2"p&~d(Q: Q^:`ޱߜڃ;$#TMBLKCfXa8!COB#(( +Y;ii)]':sKR\$Y$&_зC1,pY;N;G]7 U`M qUݛ4[Njm!7\f0%-?|[t"wݧ+@ צ0jy&{AhknHmZC`6ӈź\A ҥ o >Lޏ5 ,[FjƦGEmrI,3`+cdV" C`([)mKvS8q3ŃU'SͱW!2ז=t(BU#v(0IS pQu#bx*~?פqO7_~Z`l~0̋l;9DV]^jK&LFU>nb1*J tf-)AfjfG,f= Ѫ2\7-C%*hU AN7+>f˯:k1Za-SàKF79&]>+MqJ0?MO;5*z4ܴ\s?F7"<sfr{f5ԛu04T;ǧK&9-Jjh;v{1+rƑ8`kLKӚoP!59T3:Mnt›UO5>0JΣ ׁ$֟m _B$?ZMg,~'s,WYF8KY^'?n\{O{aI[3q yUݝ\pJ$J)?Иt㶔?MQ}n=S`WR&Ê RuruD/oa]  %FWV xu!0FrqDg_s dyNx~ AZJ-,415@މԠ ֧!`RM`-<+z]>d0Q@~kG٧Hثaxσ937fKroȻ1wXIGVNUZ: Cg޹a9i=r !HcKyB5PK drʟnaD.I]|kmy4bsߵTq<*ך4BB+y>&6r5E3׾p5du0lb9쭢'j)yNJf<=`bXǬ3 %3 !t[?pfDhO禚J_GN شP.KO'aVwV:Qg Kbv&nG+ٜgv9W Eڝ,Y~2-uRIx(8hG w??)QA;_Bn^0'wi<诮P.z5Y hsq7}0ޘB17 d]0T/e{|ߣ_1uUyo1Md;N A}y\I׵WT!O2$R~\ɔkvۋC!~S}I΀iOCvpcv/ي&낃[ulC}蠟UܝF~cfTBZ0p5ͼmgad~I"l[|ߊyn˪&#}/@ΗIkJpLH k NY𹈯CS,^%I8J=Uŝ4bsL)-QJ r~9Jb}UXlғ(7 >˖knr(8# DTHO5F!Ӥ?eĉ&o~\1DFv jm'EBQ Mn/=?^ͧyP:2uWi)G#-93K F\@\,,۫vɐk <+x>DFm֍{׵ fa9)L]lVZ+̴f9%w6!P!.r-KekӦl:` "'og&\U|zOgg2. 5[VR"lAÎbb>< [󈕧ot,^א8{on8ݗ9"3=n-I)s ֊hIIϷe߰DbBv镫f }ps(ظ!K/FB4-h)lziEP ,ӛәYfd #ofqj]M&P!@Ff7B4PL3~0_[R&r yʆzk ]Q`$<QI,ڲKM(lPMMx؋dDex{/8w1aivQ U-dhb`: E㔑Ԑ31e6. !y} S|d:F.i9<&x#0bp?\?Apd@}X[%eCR͗(GV4 #TytJQA䏣z#@5Ԧ$̪u80٭8WsEZ@<4i,P6ĝc!v\8 uԭ5Qbz,L$cU=yO.ti ;Re ݐ mm"<vxm:K ƹi:K-v5;)}5 SF"˟DV8a_!x _7&IZ?)`R&Ƃ%`mȁ1ADoƧT)Y$E* SH X`=5 <ZP@c<wr<' ;13L 1Sv-i@\D9)L5%N ltvʆBi@[ND'$0ȭ9⌬KKh3+5lcWVb}#8,[N>ѧ &d*1POMZ_caSgm0O=QOYwց$C~{3˸}#GTh WP ,G3U[SX 㞊Zrak@=dOHz$s7v#^ӽQr$uF}_F&EydNVH(gV%d}SI/W𢗖5 ʕI[SSML%Q̘jI NP[ vdJo}-"DeCX2;E ڣHϵtMc"6(FpУs+f;vJ;\̼F>PߞX/A-vR~/HGҶvg&*5W|4\A^$]>w&;*ih2jX/mWf;oA&/BAf*m:0(dJpUvyf O9&[j]P]`S0/A.hSjlN3YTn!#yM/ּ*߯O>'ٰ }Y{*bv22ԌI4DgUIRd.0W:|_;.a4=R4hI(F|Z;H)mW;ļBjH+43M۪qP hs0r_OuњaH%S*֣9tJ;JŸm^dCh0D%!:Xb\.yDCͦ)lt%ޓp:[բ]]?\l¶1ܒcP0kmڨ/+I6Ea}q+1s?sE؝e*Z.bS{/nFԌ.6brwO]@B&)Tm "겺rB5?7}셡D8uUه^zQݼ%W2P I"SOUG2/ &55Xd *8sB/?u3Sk54%.6qw)F-Zoo-YOn<[?VK |^=>bkwr;v[7*Jg6NF 7^סA9GN*&?S'jVxE{*ZT B9q`11-ÒLK3Z@ꗨ60iT.ⅾFecK>a?YT  p>D+}i q?M=HC{t6Jqğ fKj+h\MZz?s;G'J39 N99wȗ<{l SR]m@fDO4 =maD[.y>L+<([Jmwpĺ&slI45iu.r[MxoQ$aCބngCX8tJ,#%ZE{XY%sȄ\ue.dsɗ []J9$b{usd?ek #q+%D}z$rIk4Z̸݁'T&\4~$i9 t/5NHxJ+Sկ_u~LA}-giD* 7jk(۸'ዱ+ |ĸ/{MSHg4O'6OB""{G2du$})|/٢1)?^%[_?wkM'wzvv (\-|p>}#6gts˘ ѳU0#+quM"_o|p ~{ݕ_ϛ&a{.rjWۧV>Ym2GLOu+"6g;'l-'޼nC@ 3;6Aw2FQVoTBr]nvI2SN*Qѓ(b3bfɖ = '4ww6NnLAOGN]X?aYmq?>N ?nn#fD %&%5y.lT~^$ɞaj0}bd0!YY)+/8#: V]E®K)>Κ ԰q҇X&%G.NyϠܹ̓ޓpysC #F{Rz?ɟ2z"8+ & > |ˢ< b -a,,՜ Vh# ԗ^ SQ7G{ !f*7Cx@mc=Y9Rr#)zx2x 8- [5K'~)8iWd6#NyfKJŹOj!'yZ|Î~5P6uW9]'{~Xp/߃+QLBy2կCQǩ)E{gr71g-7 5? (\c%s )n'&B iIGg")<g#pOXJD>ۄA^$Gf/vSfm/T\ǺNrs0 [K\:AAKtBSPAEjE*T䝻j:|2v9O+ܝT!~˭O^:͹)Va28;wc^M{ Wi_=W'ke\PnF vDڗ9-+(c+?hr%f"{"޳eYWl䥳C8OV-agN>A](:0j{釦bnִjULRmijoNL 9H1n47dv*.'t8BwǖQ5swhwsRx9 MVV«*Ԧ#sv1Rr@v3)s;;hp-90 '%'F/dKz GIR=>Y<"ŀW*=U*f>aM+u+|ﵦ{G[1MxL/%!or5gY1Q Mbs0.񥙩_ E^.# *+s%)8XeVC,G˜ b"6&&h;=c?~'wǘK4a,1 ^?(qɅ{&WSKvVG }0#{7dԇwBzXh{Ww|Uu.ו6@Ѕ#09J>L&_YtWi.{)2=1Bj֔3Qc,B`)D8t/|/4)S:pћN{BK!]Ƚ|sXfoQlZ9n{ɇCϟ["v5Ȗ# 7#栭jcǺ0Q7wfRȎԿ)TZXLOҴϫɎ}?I:Z/yL6Sʴ&{:/P.b.j5} ctEyLV}jw0TH징>)qp|`bp/%JǍ9-$|2=i3I!^-{qʌo~MG OKX"K4=8d\%d'egF쭳%gU鰐ww7͌ sHϬT6G{GΊڊ>vsҠ7[dc7饮ςZ>#&ϢIh*Ƨ@3$,37&zomx/~GG6ovywS]HxhKsQIzUEr ;ں )4j3Gtz?SDUǿ@QS'nӆྩ=tCdĴ|Xũa !)o2y|X4G7/'8x:A@ ՙg!C~19(_Q\l`rDZ{)\RbHpC'MQhqq`GLSbE .&FXG_8徧@ \KOOO*gL1K 'l-h'InU,4[GI^dȸ܁HU5w t]iTr82NvŜ$}o<{P&Nq;&h܇d)MO{5l]F.'x*HnOx C=nxay _ V>˵*2Eaj98 &P͸2q_ +w svebx+oIvSCyQ ’TZ L6K*qidSU¿+8xy)0>!iNm)Oϛbw 4a4pZp '\Cp̫[4CmlQ]_ee nRDnv. cv'9bpړJ`|6Nmst(P"rV6,*\ 0U.sA[HV΋cyO.1`8ng7kݡv7R傱Vj@c'| 83XE=$P~BJ5ș: _?nt`1EAVMMp:N1:COk\z`%-2IVḯ~g,spڭ-d߃LHz4ԉY}qY#syWZ L%xbr6ܥV0z),dۻ|wlBWTsH:1?ksNk,xGCv 9f?,YǮe'5P)53z5EifϗsOD[d6'N[!4觽 1xp<8ӛu`=c2Szz"N;.K_TE)RbALsiHiSXѕDG):JE5.!_Cd5e-fn[!2A=<IԐ$n$FDm3]%DIco@2wߴC1k8]*~lu.K!!'+=u+/5X] ~xL9i&P/$KG犆'smR& \`#.?G}?V i:*=D՟f͠(#"5`RUyODE\h*Czx#l |Qb|ufB-y9saI.ȴh-O6KսkǷ͚5~Wy[ ^Eb«6]lEgL>;]T VɋilvO h} ^)i+4FWbVi3n8pA/[W][ rn.+2ncqW^N ,+,&ЫEtFq|瞌+Ɍf|U@8Q=OdE&Fۺa#al!>RSA/r96,+*fg|l[~B'TRr@.Fsz*ia#(~G+ϮgƸWa$X4t&T&P6n|4IP& ,LHӯƒ[u΄n\ޝ:U8~^IZu>NYc:cBf7U5oh]QT( qR.8w pH!i> ^*dZCC(ꖬLXQ2TG<!1lcn@qBwSz uھ\QBiҺ*#Ŀ9Oej]Wm@{l EsO΂-[K|EaJzmbһe+q~C,Mx mwUcYjM>x`뽒r/_ujNsPIJj_z/՜;ݧ\z^uBDW N{[eު2+1btUHS/AxJۅ[HaC&"ǛL pK;τΪʛ4d>h$DyT:p4Ӡt⎪2% A}ebxT@Q}[f{S%G>T%*ѱ_("$zT>4Z5Aٿ$"X(0&h\V7A%  USvKXN|9w@nK} oY|5hUihNTnIGNOL'XJq"wp)l$܍r~6aƇV em9l5Y邜R+aa͓0CM@nOfڍ') q>6}ԕm*w޵MHq"KzMfxrEg(Ou](M>Lh6[c,Qrj e[sOoq=b3?W _\ ¿YRWKč.Pyu{6-u>>*a_aA}&`N0C6 ~3֪oHͪ\R@HrQ\}3[=LxRWIol2Flk(g9itfdPG6:E$`zjnXTБ%{_f9haHV;UbƋ_|bp 0s@GI)ْ*"ҫ̱m;F H!xh.=ga8}hyd;m0S]Kq%*:.M..϶d0Ow兜̡D=oV͈، u~U V/ ftP|X' ^GgF`gsOd~ǵWw3>f)ܼۘ= ?LĎFe9~ Pi`zc%DjA>Cov 4Lq;#R):y3Z|_${ ]v'*8n'95l%Ǒ+O&ֲHg-"*pw#Mp S+U6ԝB^0!;6!'ͷ N͝҉`ZD_x=߮Z74Q 3Iڒq!5C޼[T,P}P$4z9{}+tܪ8xɡ/!.GA\DHkkdT xFu6+\ÅzZ++8t]̥Szy2\ rHaWE0OGӈlXƾJoHU>=ʵ n-Ak$,C/Ll.?z%D^`I@QQ[0 }kI[x^p![>+!6 7e[ݾ v![Sjasc1H9?E[0[qd%Sp sl~:+pąWU$tQ~q_Rߺ:2y0.2[ps"t^TG^uV[zj_~/k= +@+/DZVӖ6Y2ѻ$?bKGFR|#"^[2WBzSPp a}>/}]SWU9BܶX{{ęRԱ?op|SM<2^С~>:[Ǜ{8?67wp+^;pmntQ|֪Hr Km (Z|"痣^v$`m gGH \_&wU2Y)}1B.5 CݫD?-ϪJN_f5< {ن˒Fhjl|>*ŴVA  yBQ]jTf/ypk pdǟ_oFEnpPҍ="+Ӥ>^K)tP;~6 In C22K:*"p;_39yy#mWuX# *yy KUZnYmo'&Zm=][/SE8IA3O : 1 T;ONK.2%-$ ! k mSrO1K*БMH̘Nb,y='i~~B!}^bYq&9Cpxn m;E>"Ơ!ė49L}|Yc]8>}rcvn ʸLZKeրDܯ`rBңRe[rHY%6^|~HD1r7ȶu,&w[ִy0~UOpoQrxIu쉒/?{! C.sJiugҾT#)~ȻCRou>^XtoRjC¸Hc}7! OR: KaxPxg64JĂ5 p|6f8vX`>@U}JG iWkӋ69o46~q*QjK e7C;2zi]>tm,HD? $U'dH*j]̲Sy Fo-nj K:#x7ͼ6(ietqϺ/4tD8{>3S㗊FQx6VؼTfoe2ĞlsXgVrqeF-0U^PM;Rvq[MUC&F$a˝-ɵMfrz'݊냄G,Y̎}jұ: "am/TCjp݃]b394zWRj7 4I -F󋠎xv!C-Sfoe+T΀r`<-)O@@?+sKM)'9V&~nzR!v8wᡲWvJ9WmX- 26$:fE2 GDž9amd Vޅ-qKgq^/r~a^rfEY+t+RkKqb.EWrQtf(bKAkMqs0` BK(, _[i Cr̾]xcNNZʈwaP$L/>dDBflVDmc@Cz3Sʜ;, I}R~zMqueA1!Ty 2עAf\DvX1i5Yb$t̛{[b?8Sh ̭dpX,fq0W#ϡ:UU^k@ tưM-dzQ5'2= ›⹈|f;}aLY>/eyn )>r qD^%lX$PS~>uq`DbޢZ}?>qgBOS'.;t@ Y3ƫqSѹF~VH^HtDpu%;!'ž9?uKPfʀ>-pL< =rԛof^q){xt124ysb t"/,j]:E4aX耩";$']lB|y;8b%=W5.Uc(k1 R=HP 5 waju{R%j *[Φ[Ͼ8-)Sڅ-AX4Glw6gi( yCݕ3X| K&%[țonw[Mhm4xbiQ6l5_<#hfj3b~KjUsڿ`ٝ)ԢVbձz,,˜?)QYxY kaDQ\]ğc.vhejofq:Nn]5 1/U/PYh8o2$":>+>z@<3j*w -YAMkv6K'+ӅHJL@ ֧8jN2n՚|8~f87$*Ks:q ͙}Y#Y8ݷޔ@ʑ(>Y'%}7ޡX,k|Z맄xFW];oP@҉c|,\_ GEʂ5Fvc"z,F<'%Sw4"%ȕ`jLٻ?oŗ7QoKU5 pf[gxw\κfH֔*<}4]:^3 ㇡cc+ 1l,Kq쇜0]$:ه.(x.j+"eaݢll#$rvqm~,D۳^ɖF}ajāutoז-XYDG& Kê(;Z" nt ck]ȂbS.I%60?]& !:_.kij"˭k_ J=0Gyp yRȨFpʎjG+TyZ/~oH!.^aʘLҾES棬+BpA_5A+@ARb!K['E6 \/2,`b3Z_R@o,ы͂f/B>Rx%j?ҳRJ?vݕR}+(H\2I>x:|)3*78;m"(.Y}3Y)ytAA3)05aptҖ0J<Ĵor3װ8+иEs.be|)mN>/~,P=!AepyQ%MdCN0f4( ᥜ8Wcع3b۩fM2guLn5r$Mwda%u.*sRB;.:xR)7*"+ޏTG΂_@shMƥ:7(Do5g1<=M? 6#?O/WhY, !N[WL(>sfP{ |9qLW `􇾚[!#޻[%p[Q੩(V%IJݴ6zh=+w)'gxx . cqVjgfo{- Az0}/YL]K?s_-(HmRU1u"rY>tޞ+:sCXiPY~ۻ+7JvݿŤAX3ӵfu!8@b ޘ*@מ= j) ŐiyJv<'nT+A#,c71_IUl!B5a]@ƥ+4% 1']Wu[Bcfnv 㣜qȜi2]N;\q*CB[{j44l%'^;傪,6]4$k #\]]|YqCAƼ/P?TMFgQf"noB =iqU-nR!$c5(?py~/^ͅz5?ȳX>AD[qKhRvۣ Ɗc'~3YuIߣe;vβF\f=](fA|bD H[Lqq8K'gd*Za,يs9 oE6# 1 y8wLY} 6 D f!9뢯8go&ߋWʑ϶eSa8GidW*ȕVsFc̡ڑɤi @K'3D䑻 Dz 8K%'8acN^aH{(r,Ap0Zoiʋ$ub!q|Q|7T?w%2 #kkr5~v[LB4pRn/qΑI{w (ֺnffTW1mo3a> V/6Ϲw^I{ UU,ʪMeAȓ\𴒈3];l(׷+ Pר1U4mHfׇ+Hrn0}h Enrn0YU/l>]Z6x$HWw+ZIm+RK;:.p Uͻ(}+wc ŰRq{j1]3EE(|>"T}O8]DH6zM5oC{>Uբ7%ak9nL7Ĕ "jSV(hSQ/^$:59 u 1V5pҌK4oºr?Yۆwr>/UqL n .WlEӖ[ X}ѭNNlR/T*K޷嬝fsA\̾I.;`-98 2F jPBʾi5tdǻrfOJL͂t*q]P|l2H&0M٢M=PVEf^W! .'/P}tTģg^l"?1_ `7pArI]X?>NuB =Shw*DxJ<~xz.42BQgDЂ{HLby ù1؃VC1_?vN-<(QO0u2Ir E20o`$DtK״{xU$R6'mu(^|!l :IT8#S4B~~&W 4gZ)cVs45h4]Vv{BhPܝsW 0~F|Иr5|s:plz)rt(25'?_Eee&:c)]kdHNς<-[^ BUx8kaypߋ&z# FMz{]oEW؝@;ݘN7pI"EvݠR-XQ,F״~(4rď)7nF5F @q,^hsHwXsٺHgJA"i3t'X#5\VA6TrNfϊvkV̉ZMWpKN$jFjH0J[Z{f%oRQfmAhgXղ#ԴL$ޜ|Vj~G sF&5'2@dwV/JBQp pYà'̈U^~s'@~ K 5gIy~;-bKPic*:w&GZ_J98?sGF#5!Z6ޣ$~=ApY~% :5X*Nσ=Q'y*v<&l%vQA?VUPtGp;L3ek]`)qy vNd,F EulC e?+"v|Ve斕P-Ci~m;TqVi#>!uL}5ևʈEB7~^9S<}f:AJysFC \5iA> G0v0AL2.Y"CUɳ#qY dZ.O^^}=DͷL;k&ϰj. u2Fvj8]9 ^CaZZY _dT4f))2h/Sܬymen^,Gt|[e4Z!R}OjA?k@_AO*Wy*MI [‰&Mƭ/C׊E~x\:N şSDTA-zS&Ye/6 r~E3HAZLiE?6f.5!5V- ª[l딉!fD:%Z #[DW6-ᬖ0T1%2êWP)6 XdnNӣăn̶vdyɯ#w }Cqn<If+}>$myэyQtЇR H=/,2aYxh/r-޶eE$^W뽝]ek!x:5 I5erF-i9N&{\,򾀘B Te*WUm/-@e)lW`+L чTB0|2o¢j^]={yKt~ŖMKT@gcF2$#B-#<ўuHDZ} 3cn)#"H@a%?rѰvrŰSbr"|ZbEDU?nL?cF, "+#R4~}>1{IK Vl!TTnПae5!:581@I5nqJཻbThΙPC'jٓ Z3^1\gĖҬѦԚa&5ՖvV;S{Iѽѧ-+?Ϙ p/jnp`l ttk}X:y8kdDZ%eźCP$]!wx9˞oR,:F4ce ;BqB2OoW. *6UYuTCoά{VD$'E%^K˩CEhȒ8#(*M ]aMqZAݷRV韯IM&H2Gc)D$Ȕo:6璚$KLW;o$SUqZ4Dr[.چtQGYmo\Ƅ۫] ñ ;O i v>S}$\6FF):?[Ay? ú Ϝ3o*+aҀ|R,pv -畆Q(rSțm sAin:DSb"mZZg݋?W䚤ãWP6/2 Ey=݈3SW"mUUzXmViOP\1ߘ@w#N&E r X~%翉=rN1iڵ'mu$ O*L}r=il>$UQsz+,$MEn}3? Tg\q=)f\z@ " h X:z`Cr] aFHvjbˏ-=Gco>/ҤˡbA3c:U::q ZܐO(j7;cibS,QxZN 2DF\e[K" Tu=n\+1Љvj0_(Pswn%PgCipb_S!h d|(OwѺ.֐;]q h.歵.^_H[Z2{9t-"Ό`#uh֌{wr2NGahejn7q˿u][3^ʔA-W7^oϝjJ\K;.8uZ#; _NJ _id I\g`@Wz;-Ue! g.f๩XS/M 0W\E4+LYgfѩ^uAmJcg4Ҥ ƈDlTOceEgj!ȌgA*uiq6[?]?*3 iZ/d ȍpN-+k唩FHZڠ 6^ܷ' 1W}wN\bWA錀scqHt&8'^>2-F4֕) qw*O}\6NzR%B%Bi ``" `<;OP7wkj?]g*;f6Kn'Ҕnxxң8!cwA4mS@$jr \;PwI&|1<t24)\,R7.hvWڪjսZޟ^a?S|\d*Ɛy[")H\NJ%m*X,ʬJ ezZŗO6 ?~D1.0bhsd& +D "g- 0[êiT&dD8hgEIz~t +^.IlވF2{p9M7 oK/ n+Td({@j6|By5 Ml4F$-m$:W$)C+OJ)^SL?k$N>Te&db~2Ko0@]KBiIPġq'aVaRpyaufaHA٤CWa(7jyMJJ&sx} ;@:h`ȼ G֥gJ27.YcXL 4J˛W ӾYռȒS$}.;53X zfR_9%@"n>Y !l8:B VTXh.uX9hȗ{hݮV\^=c4P3KyՔS?hf Ym.U!͵?Kj!~H; jMB M'*qh}yg". < Ѷɜe>IPGZJp& *HXckHPKګmuw}U9$Y,s%)D".湅+V0XT ?.+f\-K1c~ݩND^NŤw{+R-'@]{8{""^1K#/Fn'tʭ>Wz 5Nʸ>W޷Bes3÷[:r mK.ΒMu<2SabDH(UtԒj2L}f΀@5Zש@w h~Ӕ&KtGsnL"BݴA';/la]sFG*>+bN%ɭZڕ9?$AV(y0r/ OK%~3&ˮ;H|p r(8~ppb8Po5'kS;i:6[Ĝ8Nʽnzd'O\|pG\#+GHhɋC)̞'tlW<#"~ ~h :Tz1f4hdk?!H<0Cz׵Q a@L6dH5 ߦ#&EZ{[k Q._9Vg@x71PDfZ u y"״g`ϥ%Y9q#R3f {:BWHs1a.$ j#Z+UҪӎ&wVdz-NWmܜP87M7b/)VAB.Ά(DLKBRZ  Pv8]u A3B`1U)'|AdK찙f˕j`\!*3x,5C`B`+F@v"/ϤxM6*Y !x?{a#TrXQXެe›R?jq'.1aaˉlٌЭJlˎ.k| }ZCL[0Ӵ`U،`ɚYysD'kZ¼>UY '<0VUHr^? RKX ݎ, @ZjgWQ*Gf rNW<;~%P*En9GݓT8cPxV[.{aVf=lK0d$S<9`z!G.×<0`([)=9Ɖƚ UWƹ/R7/ 9`gmAũvq$o/jJsD4XOa;fD6y(Ϸu`kebMmXGW2:Fw uV܉ӅIA&jwWp.v4B^_ S?GQY+ěNƢ٭Nrxp"űy&^ly]+eZ! $F 'jnSlǬ[\mUrnbs=(w%4 BFlMwHibO%|Fտ9js n^Vn>A j`YoK .N)eќWFn^'5}VukEn9|M 3|e&SON5 @m{1dvʘ] O:6h>&~',:!K dzMx&>\ȶf x-.Ҋ3j8;`i*x)=M7m (+F5۫Tjb]sPUVf@P`ɒNQqx:$*JzDnf:~4b.[&;nn"}B?*[юA?v1J YGcOZRٮ$@8PmN8`TflXK6=W_:pFM!Y~7|cDp/oKK h4M,cW'QH/"Qtw%-٭rݽ+.CaׁZDyi2ƴ屁.DI+WAХ`.J *5PHH?v0B$BtC1v9]b, ɱO+Tyf— -lssFqVkRJ|%f*ͥI+R= 8jTl ےO2娮ŦM 䳰-+Տ #>}s}u$ĻZeyE/)sNG%u߳> ƾƖb4'7HJrr(|rZ[&9FO)rV?ƾqbs>$ &&n[ϴV<% 87FZqWD>z mw'} j_9Q{b:E*4/+t7wsb@AUGRG굝T_yJ@)CڷORgC|aY3:. $x5KBZQȴ>O$/~rx:*LKء_PX-j&%3M߾-,&J/و`n_f^9b-0f 7nZ);"9F@ȥ)ff 8k'XI _UXqgXvkM =l6gz[U!Q6QtjTP#ck.o݀reʁmc묂}IFU _Z^u#[%ABnk&)W6 JX ?6>Vri*-G [' y&QNg c yqh &xdrD$1Lf*F& vg $6 yB< XQǔ['IOU/ G-{ԅpuMƞJbfF"c@=,+-t}}r3jk^ )Hmݕ9h_]{C~߯[ȲHz>ȡPܢ| ĭ1 Ahr?n-le8gY+H+WjG_](l{nNH+s'ƈC)ΖAWi4;bW8Pghڊ5dV{6r9L2e749oT\Å=,}GVںJjVKũ\Zx[Y0~+3ty@?aVB)[AuS& QqVVYh,i< 0Ag;a0I0yK@Qye.03q1e׳j>leuiȾ0ܹ{7r,}m袳b(jB3H&cQ&z~"f͵w)\+>}*u:r#iTIU )[gN(c_BP[1O'p L!!EPjmehup4ȹ*@':] ,Y[4M藎E&o"9ٚ6 UՀK5ԊCge pXqS @v Ko^Ǩ"F-Zҕ8`nQm CJ+8g$; nUTMqOy;& }+ZA2Sv} i/=La7{:qUWD#PQ'C-~5 cq[LF_C5R|_e f/}듣|:{=Ճ_\E^|>zћfHHd4z Gv{P=]IdhZZ%bpæVѴ{pJ7DVaEQ%IW3^Y3>.VKA:[A+#G N]'U;7MH#*`<Z8V~R$5WRy}3P³cHcBQ@eD|V]YMv>o -ks!2Z n{Պ6yx?@ƥ;CglޱL@Z(RѠCV"Mlrڭƀ޲X`'"3pv.;:,qnoMҒ:y5SZQۏʑ_߭liI@XZFɁV)FY셤<^/sb~g_}F$\ܡWK/ΰ)3`I3)&&ſܳc}[*V ֻ?-)7pVVdi3lS2ik9\u^ PUDLaUZ"x^Z)'((4gnv VMuQL2J[y 쀲@D]"R)4wx;'1gZ# T1格CxJe^Yt݂n*,^NJc|aZ ,srm5y6>o`úX*D PwvxL܌Gq"UW!U\ɣĦ6u"ʵog|/Ӕow2.l< h+YSmst$@(qϛ;ɏ;n#'mqkfEd˗ٚ h4+eM]F /5qlɥx%.멀6Zcm}ٸ"d>D?8 z'PL}_l_i[@EtbrK܎ÿ( 9\tNvKw C`>IYڡ(Y(;DC)RfՎMS^`Sϐf{5v72, s!/y)@A}'%ԶC0FqYzNiDZo')jRQAr1pD<hՔw|;)ݴ,"WN%%OZLmt'д~9UeOչ0?hDkDGʦB?[tnAtXZCS7|d'c(<,-޽U''uzJtOZp|"}mY]I[3-w%&ۂL~wm7@l.M~טw>; :qx!\E1YB&*[ScghɊ7y@;}R҄hՊJ[RRE}N6~]HA5.Vٖ+ԕ-Ya9B>˧_h}}(hW X D ޻ShsiE0֣og_^2.ȣk *;HFZ1̌0 1>8u鑽FCkI[Fj%@&d&o 3tߧi%ݟU֧1# est@e6@]? H:_yfYF$pf\of̆Kogσ$JٌA-m&<]\c/VZ 514#:D~}B!WqvH4lWiJb8|//O4sW#:qH~["ZFTO5 ToHTŤoQRO_ ˰09tHQ>o}.Tf[,k(bb\1}Sk(?I`GhD-l IA:ϫB"zTSTEķcx2(ҭ$+6rW*Z;a`$x]#u ouBv|tDO.{&kK-J^X(L6G @:]bJ9/>i4%2㌤206wީaqkx \CNg1Ү_d5;Exd솅2AQ7^I ]x*ӕ@s W?KzM#i?W?,18AxvGz-_:+ L  xV^w^>˴YƮ!X68ܝ4\~]7F}NeZNv;bƭՕWE$˦epo;Zs GI*۟VeȌ(g-0CV *`Ɯ|ԚrJ>JN@1ŬJb>@xNvu}7Er{F vYOg>.7_gIS] ~ls\}MFZ^g90պt3wKW_r @)EW}HDݷ+yJňdOq܆m9ui@\ri%3rU^~ˢ7Ǝ4Zs܅Tψ>3g8msVY0U uT\C3kCgסT Ү`~쨂H?uɹӱFd*#.04k!U x [4:1JvB*{6nRAWsF3tC\u hL mU7j۳+]1mq(6*;4Tr D"n9XALG`qGÓFMkq@Y% jJVZ< |ą oj]g1Ѯ-U%A-<1hiSb<: n-EHIIeȫo!J5tu'9\9K4thO(Q3H\޴gyQ;#Rzi'uc~'ŝ>E\2~4 X1|,!,]P˱/{[J}]ذZ;Ò _5s;_21`+*uόuMQ,/=)p2NNSuՉ|jAXʹ"z/2Zx"7%N=G}d~ i9`^Z+,ͬML#hǴw ֌cDǨ/h:.3Gtil.$\NjHJ]2!Nl  UBD%˹:Ē<b܌_C<|Z=@U<}^P4#d5a|Z.9 _b'+{3A m}S-%ZYh 3IDNV`~[L /y~Jx&/u)6:t՗w?-lX@lڟk&cS;w0>gJ]M(Th0xleX#T~ sp8k O`T^D޹LʆH1~>_4x^7k6MYmu/$p{1n2۾h^;" ۨ<ﱰY_dƪI ˜:ZO-?M#!j)^zpYFzS93T5[Y#|[,"TMQlǪRͨqh}Jt6ݨL7Z=)C%T~!~ӽft;!B bRD  /m_+go1ݪ! ` KD -F˓c& {jQߔ bCb;; kIEWG(J>jnX'SŐ&J#[;k`\f)|"r1Tޜ'ebK/:Yx > Zgy#~b-zZ'%6iEȵ=f$z٫5dK-%!1N +]V#>](Za\j"ɠl4(i?<,m'C̻dR]=A)@U; kCK|DŽȴ d7ƒ:6'0Uiou,at,*Vk71\'. ' IiAtjCdc5zh[y~=72% :$ dWzQ Ǐ!27[L9olRv}3U2sTHUFs1%mxRJZ8H0wdcjP'֞z݃ 8NB8QV,T4 mfF:!B ̜u}'!\KK $*>!bzK{LFpL'7`UV'e0g"ޜ9%QE\nl?WV֑TRg2k  DsUqlyK3:cv Rb߃bg`Z P|y?2d0,i#Z30F3GRLT0Zн>PGV{x֩[ F/U)aPl ]-0O#Њh8b֍i sH%b>y቟zڼp Rǹ0ƺpЕ%rZ K_ Jk+pS=]xg]^V39fpFf\cb<}լ7):. xR~;MQ'ojYتv$гQF ^aY2!VDc,*[nZhf^ᒿGxT?v 7J%~tK\ȩ♄ arWJ"yOX@˨+Bk wn zwKIkc6H߼9Y2~(E5yɁ́Bv2ӵiH! N- z.ieS< RLB=6q T֕3^DlFzQ%aZF@fuL'/[^=]Έ>>+q|͊Uw:\]WXfRhIJNkOӰ \b\%es/zdu~tx48fx.K5<*ߙY!+k5g3צBV1j#`&'ě=+fw #Txh~:[ӟǰ8wQk>:g0o덝dvˌhߩ/ NL&7S['_b@ oKסN=GЕ5գ1Rkw%]~XzXse◝Zs5l; G}Dn1}6<2%tS,m}'g=+L\sCs|ڹ΃ AovP S'8Ѓ\X%!ȣ \\.A7=BS]xuE9 \k On~F#\&?!.T|g߂70}Y#"{ ʭDh%>L)Aȏ^0droC9S+ d.eq_Gǹel;oV8aw7*V m!vrpλor`H:Z9\6 f=iŜN`ʌn.>y6Ӣg=^?s,B1:Y(K.$ů (yWSYa%ȋ޻Ӆą%@7'-߀le}A^4 {>qExm%$ y>ɑ9 gag~b`tK3S9TUN4[2/ЮlF=kvdJ}Û L6qrQ qϯ"svc_gc2ٟgx0u9S^z + |kTBHԤzC:(N $q׿42:Ñb\~y7LJ*<50k?7й:w 1S0fQotdcr͐z5g3`F£<3?m:;rPYg<ĺ^N @(XsDz;S0ڄBs~o.$ ձNK%8{reB9s5~'WUzcML7II',ZK=mD#dHbV'G)l["B7vnuD2یʞߋt?ilJ- `Jvzh$e!_memۗFZJ渏aZ._ 9 /،t 2șqSQ吧9@lfMυ }亂84&XxizG?  B~e#agDwj%xC3P{7%Im`!oPlKGܤqlpnӥ+ѩi8o"t<]›:+8*)ǭeD4` Gw!Fp$a%*anP c˥ 6OoL7De5o2Ct#ӠΨ?7c0AUqSQWLy T̅ .6!~Ƭ{g%_ɰl n0%뿪z Ftt+0#)uY5>,֋O!Ն%n7E]VUa87"?,cTHxLp,lr=ð1ce>n;q¤+өi( ,*=07S(z@zY#P&}^|Cw:- j^i dA)O .7-n,.P(Gn_]/∏T S4+sIy[tչ_%U4U|])hD mWLNT7xmo{=piif9yD]i[\9u.MM,D IQF|I,Gq$ pU F݈ViXK%n~yِyٓE$G4\xiSeD]D#DXҼy%sm erP~lxHλ/e&ors0.y[qTx*~!bҰsJ=<|œr7(FUX/' xǾ7tS]Y-$Ijr8R}c˒sw:,"{6}֭vۧ܂*lx-3tE* <;`C7wrV]H3r55A@S e%L&upjx-vH6[ۉNEj͓,Yq5sqmĹ86"T뾪r'r}hufwsh0(oy"$U1cQw 4\ZBD w^ Tݬq"H$E2/d% >0E\-Li{z~k?W>N)-oM*wDS*n D@5~C˘Cc+ ݳֿ!n}aA0xv̩*N x"f5urBu̷f TLBUJӑi(3Hg*CCv'Z)oa-SAVMC:F4$3,5v{G0 gr 'ltx 6 ;5ҡN:=`t2ڔfDLl>2[t({#a#!k;IZ*.rtI&7m P9-4mN.=Dș~g=S_8*1KK4砹npg* ,3^b"rqd)P-0qY4Oo$'nwؓԄ_ ,~p;9nj%{)`4b= G1ݪk8׫uiyoQX^1؁d=w`\[p{}_dմeSCqD+XO (fW6:j`LF]Ċ!apxmM Vgߐ&xV 1I؜`6dG/t!ZҦϼPه5Hɑ q2* n1u?`=|JHLlj^cNDaB쳩Nhjnhf/J^uɈC+C;] ^Eq QR6RB.4`oc;be{rS :Ҿ?X!88b,4߈P;뻎J? `\ ~ʆLy=$ ,N H;Qjojn Kޛ4h6ByYF6wn˚C7 \3J8$BВ=Eo۲ΏP8ҝKO!Ժh="iuƯ"gL>ei4TǦ Y"%4l1Z(b_xQ"[+V.<^p/pus"g+ j56t.<'-UcoŌXJA>sIˠ:~BCEh3Ԥ\E0dL>5tߺѴ"8okOw~$ț48@?x'^ͣ4oc02BM\=Kq/͋t˨_/8>aaÌI2-mQqN׷鏯@=nd3h4i3R,̈́d*܁m^I4P}.UrF4d7F8C vL]{[*I?k0ר -.rUZ8U1@16sh!'\n]8Yi9\ kW#Ͳsd21G>e1ng(3><֟r&B^{A]Ȓ3jpK皛]˂3B6DArր`ēA[T§DjM `t+q):%#u SfmOwʡ&pdg t+J݋,AώGE:k?.dF*Bі>n'4jrû$S=:i3¤ mc#ft1_)^3Vv'`n@<VE_·"Aɓ=^xӛ46 KsOcVR## @gT8ԋ9OzD7mavY25yN<-M&! vY&i a%/ N3ЍtោGn8ڙ߲+}4L$TŮP>l2DfAə҂ a~U(!k3?b q?o鄏 j.KcPe=K. D J3 NI6~% ?L['\3)v@vaTTBrG@t`/{L/%k[dJgtbjyl^ZY}lm]XyuW`'iV#CCD|:f3K1НJ/=Rt(\~,FJoHY#cW@yBlFg@WU,rfV8 n0G|?ݮT+T(8ʛ'ހz\_U;CY?Tb=^}b+Yq¿YH Â{FTb@/9WC5JXbij^5z_'+DlO&7r%(pRN5+LvLR13Ҧem*Fa,NFrͻ؄ x01Ԍxci=H1b<,V;ꈩ&[z>RyCkJ38d @CZ 8"` ;omR\\)%te\"9'4N#⬺#4 \S*Y=Mw*RI;zuk@*fxJ~>CܭȣydIlXt NXwآ+n](B˟Z(#+R${dPAr _#,Egh!:Fj_zSGq뾑-OrZ( K $k]cj~S-e `8AЮ׌I_^tıWͤqӑ >fdnڧ} A/*lgO4;h,q.@3_t @UF`fUj2yH<3 _KdzNIRtVe\j5{2tyn~vYZ~ꄰBCr] K՘=6s+2-me!)􏘝7crIȠ8lr9 _Iwŵ|$0L&㿮S~P';&d?,5Eu7݉.2ZYe4p< ~%ðn=F?Wނ*DzR&m AESX+;=qq9Suܦe,ae7C(7uʷv`)V [ Vs\ r8[[*I'o8I< \ҥa}HͬHv7Lk3+yYDs],Rxp5o>|c;ʴ>+0^Tz΁atToS4QOFl%\mH=<%Aa?^WlS )uW50w1 GW82pvMRr7#'@ 5{M7`u!{O86+㔽J^eUo MSfPW=fee ) &Z$9Jk]2oT͡F,Ūp' Aq;F =NMBU]<>サr;ÈֶDE@Q3M%}"2cErjz$%̡LzCksHa\Q^8 g6]Wd!Хͦ "w11g ^UjӭޤQh!*$Ϋ2 ljTȎ*EO97α!)}(^,׊Ed8ŵ= X-pio' ^1wxtpzm@$U)G%󖽞i; (H4S_rwՉ`-K$$%k"r?̆g\Ga˟|2\J}'W#ȵaE\E-Bt=ö]$ep@;U.Ӝ!dqd fE2XK4͈2ɏG^WM }b:2`"9Ua&GM>NNg%gnmqG3f{NZ neY05\8{B. LӠ۴gZ )/YCul5D{ikoVB?Յb !d>TG[]+ۊbq!qg7E=BonMv! +~r9\D|H:x܋DcmhS޾YZ*D̿$>J>.-WeؐB,(߻*D]R7{;TdcOboe"$*H7' (٫ W49PJFv3WE`TZv#M%"Ο0ZOm4֠*v&&2ԎI;7YGZSbHoxG] n MZШIfج\n7TQoXQN<PS)!O3 I{vGW|bS<1 !3Ì^2 .$Q(] R˃Z͢q*3ȕ=?>iE,6a}<s`F wj_M #!TTaZ4{?7Gn j3)ʱ;$%nyUqI0y<4!"N[7ZI^N|N\y:f?m3I"\i0ώR}Z25 EOA$k ۗ%Dg^F!lv#Iћ>+^ߺEgY@t"JyΆ^\T'-FŁQl?&bս44dI#I ~"eZ!T VBW)NKlXyNbөt)j }dn4O-= 1}R c% ]]8^p!T yv,Ӧ芘cl̈B\<1vu Q65e1hk:97$渃DlfDgԍ&W}.,m# QT_dsfnYxZ*9ar^}zc9 Ua i==nHoaUdQx :ؚ}7AN"!w|R*Kd(rٞJl lk w8;}h7ߨhi}zƋoPiH(ҰcRw2H롛&) =ՄQ<Ep!#K y{)Ȧg7V kZ5<@EyE9nzA\J4dtIOC rPY/D1ڀ7 b~Io_v9LA~t3qa^7 26]&KNJ Ŏwk:oTXo~*~6iʎ7=YWPyl%)U)DÔV/q)qkKlo{N1XrOwAv}\ꎢ?A45P=\% (RsvpTP||Yy=R`t p. bz⯹:S*"7+eV+bݑ]Z߫!m! RO@c8E<9ABoJF%G?/]E)r\;n:s_4sNNR@d=2fR4уGXKCȲuVbds ̄8͆$#;1G 8QLc+$iv(U'<[Dڲ.lfVlK.e"ZtWaߏ]vVtg}gGOpߥSK%O aZ6`x._avJ×Eҋ.TRAz!Rv- 4 9"Fוj+SL&>2iI!UFI~1DًȚnvLv `njgC [{ɖdI)B͎J \͵EثϴuJu{BG`iB:K rwtH;X|ɕ5rR;T؅KyU3$ Db9Pſ&ˠki{bd)凔s&SeXn-zK=sXv~`#/bCJrg B>XˑL %/cլ͍θn&"KBF*%lAmyeRpn{l!]܆jEdOZE"o;8I0-^/x%0ry,[gt7J+o;%OW44=FbMxhk+H-BӮ;?MNzėwI`+M{ XC无{gC"dġE=چpgBƛ4Q*h 3yxʿi\D%A=&t&~L[r!T(#>'x+Q 0ۑ>-ez!y!I[9H=x1=~BYCB8۔y^kr7!Sx@1$ATg 5w x8ի'|FY7e)z2 !<}^ '|dATP}Jچe nE" ܊q{iqױ5S B mO8}ѱn l[z)}>xͷuҲ! t='BQ+*3o3T+{kk[4b<\§\ݮve"D8lO4|@?܊9]c"5Ě :yM3Wހ: (_¿L#,y-f2aX:UEDsN'CE8.Ɠ#N9~VE3h\U݀K8M-wn0'jE}H7Dqy{ͳd]7&I_OX3r|of$hv'd~Ux_<< n\dpI@hb-GE)hntQ̈ xW9S$$NnJq͗H }ܵvƝȱN. %7BhdXǻ7X^naC)t|k"VQtݪnK#>w:O,$z_39kZ{sp*-l!xjC;dzݍgB9Or}\CryL(ďNTtmB]-9()?lQU|׿/sៗxdI+Z<\Qi%'e/N(oz\iRˣ" l؜NL dFNᛊX݌۷8)43@bˊEIca9G6CR`Aש5)paϭОZ egs^adZEӢ̬ c ~u0|Yum& [YI}'P9L8Raƅ\_9׋|-o0TVlf90}J 0n`nQAHYZκEwPbquA%8Tꮃb+PU+\8cѥP 5Z.ѥ#f^.*1LCi BV&jW<( N{ Q6RjkeiIqmB9q*nX q±CF}Ԇ%LkR@jӜO|49,d(GēqdEPi` p$#B8kر 0L.d[R W}d;x'=e6'46M vR$Ϧr+TI3iuF"=}o0/4\`O̅: ^A&9Qf}+i:-@w*3MTxz/sLOj#|@;1o|Ŕ)>!<&UQeTBhl1ە1hjXл̆$Pb)Ү̎vv$@~&# #]l9) QAh^M>nK)ƜKo)b6ծChvqI92`z^&j*B1Oe0y{EnImZoY-ؿ,J' 538ϗôj@:<|>MruXII _m^@Њ+uK) #S< tTct@jܒj` X${֦J8s  ɺ-ĉDVW^Y;.`PuH _=; X)r-+mӦQc+aXjIh]:d#k [ܪ}\d}sFm!K=h! .a="74Rʶ\vjMR]6Hӥ&tA!5IEk-dQ'X.s^% Bڗ\! int U8Tsz[sg8~HWӮ$cX|!*zN18U1$+f+RtÎsĴ}|[ -a꫑7t&U}4%|aKҽi?^km9I`yF3*P< ܢPJ5"6.4/I) ]c%̝8 zz{TȰ˓  1g3 WK\-T\όS@'픛" 2Q~?l,W E {;4t/PAK_jl!_ S?*Y $52P[|)ױz5`.J/J;Qou,9΋||:GCjM<_MJ&kjǵs8 JUL!l`H[4UKㄌUX*0K3jIQAS׿$s ,)G(Fz7}|P=XgQ td1Ds]^E?0R|RRܯ@[3i}@bv`QtgHA^A}ĕmB L:K"'㟣W"ި┰kHsJ_&$uea2Lm!*Þ+PEnLٰ.B90:y;zMǻZOl8n^з*z+5Yۯu؎ՁΞ?:AA,Ius|'3Z*M4X@Lb+{DA

.KfqU!㣢t[mΊOߡBSo{2KL[K+Bn*Ͷ[6uYڮݰLeuh&(0~i' ({:/hɷ-#iw ȺyoH!<ӿ,;H,[TX#iؓ,GEU}|ZJ~ٛi̾m1}*JGڄCkuT9N/褊,7oRːϓ=nDm}ՊߖE]R".pZl]NZ\G_{C׾jr&/"ۙUKpSqmV֍#rU;׷Gw"[MC i/g@w3jw:%kz }#ꅻ1ӊc4M`"{p?4a2<󜀩tֶьhUeG#a?+ЈG)6."aR7^!1e0!4+Enjbwb c;x3Ethà*vn$q`qk,@PRx.@:#;P=T2+h{6hϪ?#RLS?soĂ)!\&=Ko'"\<£+~ ̶̘Ҵ=D4l'y`X13~v9%ZߟI[~cҵ RpmVݞSV%&߶")(7NuGܺoeij5 ~O2kc0+7XR^/Z)3hopQcUuzq+$i]$`Mɀ*WwN( b2zy$œ'">;Ni4oi0MoB; 5H^a58'$RhF/i& w}O0t5Hy48 H$B aݎ#:A% Oe3'׿䈆?,Ƨ]n"w9R$E%᫦2v1=[~#&@!s=*KoF# }Fqr93 ,Q&Z?xG OYgB#g|)Dnյ3W/ " mv#rAx!20}U~0FS|mj9QS O8؎/` )]HAhuF_nHNV|ՉNcTLi=?-9n}9`=Ύe6շdJ)R3pA)D&%,_ӵJ9-}(H{o5CJ]_d?IO!E/Q?i^ͳ<i6Uؤ~o,V|$0]XS+7o_Ký-pJM$`Qd)r0>d#:SqH/6!qe[XkH! EDd=Le"?Ug3!B=# F @kf{s/*f\c^<4785 ;[-3E.%ȳuwHf}pyI۳b>}3sWxTEfr~P;L2o0@.8!&ۑH0%bTe.58 C`T VC-S8OǷn~h&< 8ž!aJFHect(Ls#r"2񗥃Tup ͔bLc-_ LiziM-Cl6xM+%h -k DO2;V`Xj4kX&ȃ*\Jb2ӂ 3 7)kl_hN~Z 1u}Bvswx&:߂yzbKB$[v%Ȗ&NDL K܉&cDO]ݽ99 AIX֯98 dg5L;Zì'tdb2g6fl堽NY} B vnP!᩵T!&kTd <52D~'Q`z(ci-/ _F[}~ P]H\RU)W(&(OQO~Ǣ#;r#%\q"sLy'}`N-j'xoO-gt*c0u%e }vN QW7o/ p3U|}K <NKү%g++fPg0XU`e dx0,PI~D8W3T# L䂨zGs0/w=U)d8޻!fjthL4G콯9o|} ~YJ±@^?K1trȢ<Q I#eHpSwMPUOPJF&dL%!^7&.RY&…|7TJs ]\'| .--bA*k"qv*a^IGg^`)E|k*sJsXXB[' j*}C68زR/ z 0t\=DMy]yc2ntWp>l㖀"G0RQe aώ_((@|+ԢQՄ ކ:2:2_| i061Q>+NQ&>h 5^qs=6,>p]V̕NmVfi|VMe4?BI b]4ck4Pz 5#!GB⼤,> Z'29p$ 7: ӽqXGXtLsz>,gg/?UYXl 섬7pVd mRgh*K(TPrhPߒo ZBNONd"MeWLTODžT:ak?enA8JJ s#CPA6zߴX)){uVVe[#ۢz1MIYo|"O 㚱imɇ-M)A=b%w08~T~c60T.ZH7E9WILfv`WM5K?9aƻM_qض5ɡ` ߊ?8z/v!YK,mDMpej/&o!,2evAZD z?r^',ˡ*:a"jFiaraD7:g7'ud-֓-ؿpفRE%1ie9?%uqyh#_{#* Uf*Dd:+`Ӻ뷦 1 "2vĩK.>f=U5{3vw ? Ưar7/2}C6'(r~EA?dd^d8-8Yr"1e:Zu 2dtQ*M~nqw*X%`{VD~Df*cv7ㄱmw(s?n53QQ\[ɤPu 9f k{bWn;$fW(,]k"j _uޝ!w&݄|p24'xͻvr[x )xW}Gm v"jnدQ=f8&Rǖ]FZ_k\T!Γ`O^jBfu:սVf1R4a!kZ^ZS) 6{y ubQVZdl+VWsMv9YbvUgCyYdLC!C`8 8ܷ:$ Vc/K9TݰrWEqv1'H#Bp|iYL֬4%+2_(Tee5gLȞ'^mFim^찙O[ &_NGhⴙ@U0d;)K`pQF褄~ oX?Hiʆzg&2 6mׇ_6/GVlf&KV&i6s+P8%brzG51 ; ֖Y2=;glu11iF[d,ڒ?7jdgMfl *l9D9ru ߮&7庲'75`]By={q(4x8ۥ(uoѼPIfX1MZ;A3GF²!7pEsS/_07 VxU?v"Ba0Ҏ潄mڅ-ZU1/ PDMr]iY r͏-T~W '6E~_l:5v9'&K V-1Ѣ%A;e4ڽubKiI򶧕_IL(KI뇓gG}?-m_CTq~M"T_oK\An% a4rMkK sD es?-6= GNMAs4$hR_͙o\ vn3&@ Quvb:$jOF*h` r]n{F|[Ds,/էd$ DM:(qRD7oUަ&/KՆy+)+Ǵ{'"bTNaOaHZW<'T~&& ky*<0(bv! jVJ\z:\P|AFmH2Dou%vűYH3YkE60ɔS;+ &©:X_IE fJ^鍢D@F>̒- 6r2&S$X%pmuɭ&Qw!zdq<>5%@9aH`M.5y,ڴV2͝h :Oi0A%jkU ک45/ ڊפo ϱ `>d8oiHɭn!,E lTHRȪkWN Y)Xx 'bΛk@I,d]f7`o5(:K 0P@`H''C_M-OWYn}ː\lYM<乑t+NL*?bMN.CEfӝMQ6nIL6%K@MiSKzRBDm t+M nӶЎCOar|L>;?70eZ{D.q0j /6D/RjE0GBq|}1􌅧I2!:5βkfNA 3e=YViEy32,gK07 6nܓёٳPj| şaxc; m|JPЌgSyRf2N /kaϼA~1+Xuؓ~:4h[!^뽞Md .)JSi]* #`/Fqq͌dJ#^u_Xp~WC` a,CLd9}o[etT>lS}7ph-NnP%?aC \5 8 1;yXhn-r(N j54YIt_ԃYOqAՀNi~ {ni )ʨsj$ua;W0Z)B>.` Ɗ`RMhDyZ DQrI.W+\?|b,t%GTRܿqP}q2L=:'#$NXH%GJ=OV6sˁd7clsՏ-:KB#_̱mݏl2`E s0jZeRpuwuS9d#aI1kF9I>^[ V)Bڳ.??GV30&B]eN5TE00 ךE |Lf;drbbW k l˼hwdi'e&w)46F^$pKX9a#۞Y˖Gy,c(U =-yPwǞouɅY?6'Ԡ~YaBdP$*ak>YpHӒ,"X'96\dXO 6fI!;DD&; cy1)s`2%44b2QaUux! \w҃ȠJp~CԘckKA/kg hyF+Rnm2yn%nhO 66I Z4塬Ni&gHPrQrv׸~_]꙳/^}׺` 8ykϻnHxn#/[,&SȘFjdr)wPokǹE,޷M@cܼtUNSD#FL{@bqw\Q-1>)P8,ܟ"7yΛy?UGk#D<qgT  2Nv{clvoLϹǺ=Eg:.3赠)\϶ji{T/Ok?)|aZ]{!l4N_!< N0~:37 USgt츦ް/4TA=Ory`1ntn_4n^0fsm6flԡWeeSe!73O #?LyH߬eWGd"kdmf@_WeP*G4Hqm50c(P֑9ݝKd[%6Nj /IZa aBYrTK4b]Q5{Q;"(Z+gX/^6Z`{0:cJu{ TdL͗~Nֵ3ȍDV=?,Z=8*54|]4TO/9`iYl]Ƨt+RT }FA՝nT8Aωl#dSV<8?x?M&MX9!j/(tK-ݦ5E'he{΋t/=ʕ!Pt~rD˹ A\gt/EA`3ƾ~ٜVwhv_;2EV,Ccg 墊^U ƣu.x948?1]ze#PT3#/OHii$@tͷȂRou =׭=(܊j0yaevҢ*o}fDxXvzF- u6|tE7^ aYqe^@#Wɬ -{Dl{l]`Y6Gvt\Y8!;prD..t;7}HC'Re^|C+6osDQ_@x5=9.8}>3H]R]|i{= MJ\-&ª`A ܤ_.RD}A)\^ 'ôp9`./gȥ 1zI*5TH-:*’6yKa8t NWe{3L .+ Ed "֤}QV8@ ͻZ:.2Y0hv[(Wj4`Jŕ 28cqj @ʳzO,7&[~DM Sor}Wme+ K;s˫`Ѳ^5ko}М(6{ H]>aKBS) v=~D%ufr‰BF_Y VŮ8ݞ @j񬬤#KTs0fwo5{yj(&FPd`w\:lIwg`J$T2S\1Vޱw}<8K!sGLSj y[|z/=|7f>~S 8:xBDnv|AQtr@piΙUKSsR5\XX,۸ 6:H_jve! ឥs˯2ۖCpW;:}R)v*d;8+ESe~kKXh[qf$bh4W'6'Xur };云KX@[DeX ,۸]Af9ڞGZ1djSJF:݈攌6? e!e9oD)}X@tWUrIM |B8ăt|%19in:w9uXa8=YU X(ZXJqzXleBfRV2Q2‹p$_<#im0m*8! >ꐒl9@u1*{jk#.s}NoC{[W,1 G-&7>W6 >{bzi]^3䖄oi4QW=Pb@!pUŢQyͷ>&t$k*Lo,VuF"H1 Vt@m[ ~q}qe@{ ]̀#YJ7sDURX8gmo4LXW NDDc)=UꋐsF$hZ{'1)3Q_I56&1l61ƥ3S fvJ 1)3 y zom.icX90,f]wP:lsbǟcA?Rc=PyO8{}/MWn{R#<7Ljj,vR:c&}EY{Pb$rpDRFj!wF1{H4 n7nVTHI=Hࣔd F%?0FQ}g˯+ɣT& Vx~VqBd,W=$~U@}{‘ԶI}5)?Q/h @־D`Zx :M5rld\ɗ=갌^"%!Oi[؈^5b<㶽1OD9 a%fu9L{iEy3:p(n.}v F3 鋏rXP eH{gm K$yƕVAw{<9oBv[t.MnpP"%2eV8N-iI1>hIS`v7m߶#*D o.NNcK0̑;ŐHFGҧmLb/'!KEb1cmTtU!CH}j*Pɸk޸;Bj& c/zB 'U$G|:09K37ΔoԌQ ʉHwax($݊%jp&AHYYҴQ,yJ\CըPY f1i!OQnT8#P nzf9JGp %L۩BF,Q8\1Єg#Be)(16Мf35:R9ggա\b(_vOF<I+ïgV_3xW laDclTVi_9ZND]k62){T"mRo fKJb{+=bx~!4ue95'yuK&_pBQ2X*mu)B6#B$tF;$p)1Jǚ 0NKl"k/&AlȆg]Oz-x mްl_2~7=_ @_xH.%N@LzJM+L9کGâ}9gbkh~/::TLOܹ* A0*ވ믴GS`Q*lE8X8RqڧT `wn2`vy@Lk{ʈ|zspmU:ǘvJj7{%Qi~"oGBCOąa Km3b&/wfQőEarp9zС69)*7zvĩ94kh7LI`*d*ßI0D(Bzi` p&6v4OS։sXo5c^\N>Qо+ G;VȨiSK x>DFﮕ}n9M7*4&Mĺ %tر:4O~&g:mbE/B Lƃ^f;DrRzT1:Jkzs8^;B8lLtoe"pJ0o@'`RU:w'1.Ӯ}'mxdW҉BrW>Ɛ[G(O"Frj M^q#unqȣ"Yaψ:^dNJ%Lцh{om1OPjAoS OO ~klbwyZ:$U]W {b"Xq49{;2̩Z:'nC0K2/S!m ȀL<6 &鳡.|7A)iF<]A/UNހOk{|| ])FW@ԏR9";5_v;=~6EqaG71DqkOZ^9d[1ؑcQ|@pE,GfWt*E^vdX(*Ep2v@\yw%ғw!!Ζ`bߊ!RKTx5 NܹE{^d" 'IK_TݷX_YŻ7zo&jGފꊢx:}D]VX'c֡z?3,)Mk5nU$T0K_G^Ҋ{{U 73~NFT"˴^e7.< tx+z{`1yx05=hem2{B|kmţݷW`DJXInDA~%M\|ݤiqsfqTV-vѻ]%PDN[`Vq3'048l9̵XgBDU f8!H4ycuyX x9Zos܃ A۬?S4;`Zټ<+$@=Bz]ZwcjV,p5`yia abI3X@Wć]w?E-:xb@.\`c5ʄjrI?+Lz5;vnP=`~ gڕ6R"*]}vKx#m:?؏ٔ`v"wZjhBwy֢0{^s;= - jym/r'O:u7PtQ\^IXFr'4뛌+H[Mi B}|tqt{e0;ڎf,[+zCT-, .d0E1ɛ.`=nh\|\gLz!(ΌYj7wj$ r%f:eckL VIJWnS>AӍXK45r1^8c:I6ERR.ԍ*Z旒k{*v\qJ{%ڭVx}pYi(sd{V3co[ {I$][؍tă3vh+$F ݠr6깸WB('Sge_pR.]B(vF_Wi~=>zWV.RY,wa +DCKX Ra%#-AK a[$ w.^ѓ|/džyiV BXZu=xsצ'2ֹX7H6h3lzD%<᤬^ 5Ũ!IBRVS q77={8zLǕM3!8KQX hZUƚ1ǦNѺ&v$:6bh~Mjt>Ťðc>RfIjl V+Z0X(7{HKA]L1D ~30/jor c`R8E)1e NĞh'ٰxq'vgaX Izݫ [@c=RyUGy7г [ĕ>J< _Ƹ-#]0bvHlթw#[C HT|3TYO&앰GA9A^o{- Aj~ `RӶpG9>qq\r(rmߙ3t?u0eS;d-T[,fQz"1IFjHHGn?{> 5K |9DnY73 KvɅ)O淹`vWm;|"C )rsd_8K_ӈXGXi ށ#+~|AfS?;J9Vcd\~3=B4v++vD% lKW(CTK!:|ie⃼nyQwۿMZv2VIoA5EWan; YŞ?!W1 ۀ5vb~.+* JJ?EyMf&xwA9Dߕ~]؆ x h~;!ckEh bnxuCZG))'?+ x~_Q'i+Qufs6v^k*4kag2dWix5K\}L0NK݁fb1Q8#Kwhɖ/1»"r;[`d% jk$\h%N8gR Lx G <5IttǙ eQ rZss؝4rbCk' #PXƓ&m챉g7F=7|\֍(RcS#{>+4?hZ¯-zDF"8R9UAA7 vs1Rq?g7.:oQ AG$q*='V$n35쎄_jfo;3APVS:3P L|c̟>Z:+~*kpwy#Zk};H%FX50$rG:q *WOEG ՛;;[%Xɢh Ҡxy~QoAfQiyyJLqh7:`Ni܂ WCJ|9(L1XRIyIb)ԑ_R.gdC|~ *-2lr3Sk9c%X%+s idCXq m -]2W)GfVS*dLb/'^z-c]Րi8TtjY 0Fv*T;ě0kQMpS"?/ׂ{M ])&udlO)Mи{LͫxߊRWfbrʴ V .{b5qjĂMfܕ5`;>\DUʺ1{ǼՒ/\39TZI0qF$vVbjtGp_=r=n 7JJfj.>gY{_JUP3{KqtKaӪ сtQ9e}Z!¸ꝳ* y`;⺰\k<%͟tX-jڶ;4;d֜^O\H:I!Hh0X ,nDn52ߛi'(DCj ݴL[!Kc%GT(xt;0ݤ!PL(ݗb8%q*\rƄw~/wxJ,sTt=hG ؃H';$*X((ȐޏB zr;O `nk/ P)mz{]s3gXhU`ZFd|CPm)P>6OD>* n#jZʁvP *^VR^1ۚbNWiy\%`.JL[<ٺ]6, -2ڧi}.=k5A z Agln=,lLnb{/YsڀN3xc*JŌaW1sT8-I'92˺4SZ\0\U-yR ʪs GZ:_l&h=`ϑP1Z^i挨s,em|IxKc!zDhS=˔kT`N M A br+99¤c"kL}KIDv|3gfMĠ%kž-x SYؑ QK<\6@jf7t|]5&BYIL+ucH*6N*|\DŽ>s}xՁPT (HSI-"& ?ԭ0 -]zqc.{Zqaӹls.QuYF&{gm$ZBts,+0u͆b㱿M GZ,뾹 FaP_7luNyzzB:qvı$ 5-muӭÌkek")O};Lq8 ̖ xl툵cƠW7A.SXIf'+kCuM ?N/ƅdEҤ)zal< P3~pfzYVt+rL cÿރ#/3"w^~@7X 8t!IRT׾Y4eiE{N/O 9аDJ@COWӉA~h?A +&7Ԩ=縝`9<\[Xg@E^\o 8bIz:ƏGd㽿, {ĺ ­) Ғ1 |Fsk2a-+ltJ\=$.Ugq^[pXԠO)ϜNAZv.e^T3 6/=G/ |e}*YHzjQ\DV;,)b(˥n1Ö> G#K?׺~ 1^@ :<+$0 `]􆓜FMT; &z;w 9"B5'7b˞‰u \CCxy"`^/O8!buAL* SyFV4h 3Ӓi5O~;u ?)5L7{D5@58ؑ7] tXq6mR받^< ]Iy &Y\aKF4WBFH4XWa\IGŷFVQ4j9`aJb21F~%8V|Ô~'ƂR&RB]ȱY)L**E̋LW9‡/y  6嵼鐷i~*썘Rol$$FpW;;W0 !$Ium@`I;?h&bKgy3n=%7?نHEl YOxSLb 0Wjl)o:*0K5E=2muP]#¶Ԩ#;0'ƫ2GśSh.G=AM*i ?0SzJeZ=Cs-a~ilq&/៿[a:aa?nBW#qbF8nCpmK `˴S9+>%pv@4Ѥ.>ÌH_QJ͇$i+:7f!fBfu2lhxdx0M N, ƱMjz  $wGm@U/V8s\CH\ _?pw Ż&D؈Mm{{$ m.B ]UH]kLoYKjCJk"3 H9ݖ{L(m¤E;yLg+M23^I#^`E;:L;=VSE.qe"?AѾ{O}E<w- ǭX5q @}*Oj T\GD/}5s0ǯʖ:T==ܵ'{Zj+CèL!!ruPrͯBVT TZQ޸_Mz,RfV4Q5C࿱cþ*f!?mo諅)I\C,Apĵۻwsl_hD66p^l0CPQ`oFm~xPC{am&lusY x W ذ cMn?RI: U3'jJ-Oq0j˘cmv8kpHEj?"2D㯪uJZPAV䈒4J|HJ,H9Rܲ$r4^pĺB򱷒8 Rnzan Cg5t(B(?x{?Ց{Ƞ8^#Rq͖7;GWh 1~je`A~hRvad8I0Vu[Eja$e8'$=3%|omTho6PlimT[6,~2TPPV#VdigGY;U6Xik<-3C5YO\Hn(̫fFEs(Iؖ %X v@AE^ u{&ʷF MeqOvMgGrU;P*u:p_TN\:݂v0TZē ƪ`,"%yxkn=u6N?aW jGy!;^t2-R(PFX(Pb㕱Mc{ v0'#ZC @;4ԡ3SaڼI Hm[%'^ d%J*8$40JY65Oq@'6'>2i68u(ջCNb@tF&G=Z"ѫB;2)5Y@d S%#e6y4#3 m6,^hXF[[&\%LFPZH0鴝fWDyeTԷ50V$<59ĖŶ &.+*6%6x" s<G~v u 9~ )zB}Y_.Ð}Sm{ׄ0|׏Vپ$IyΘ p{Xq# 8jZ_ 'U`6LE|aLu@t$%KAe廁 _L ؾTEwSO^m:|Si,O\c:QHE#!P5}5ux5械5S.LvQ- /;DyUyN]r*x*5zܖ@^vCDD(k4\pF}l#KFE[q2\wi;&{AnȮs =Q_aek>֔ 2=vj!>MW!"Q~lֲ@ 2dܙb{[YWȈ̷Kb`.1[¸a,HA)B@^2++VBF0u0rFxm|!Du.»W(J*80zM7nMOf(#ꌵռ1vb2o߫B^@Z/ey.ZQc*'Xc:!{aTc, 1KHRT7);:4467'K31R?Ζ+8h"Ï|Th0M+-F+ PWψf2&Md;+ ,s6x]](`6g?H[bx:Wz4U n$[2_߄0-}orGO1vS}di SM>aBVCA)tҔ?5#C yZP0fF=-)P'OʼnoH}!uO]vUXR|S(:LdWNeI9..ѶV=a1lRy% eI#d66|qǂyq%Jm<3jdB5?,.I"‰_%tDmtXl.m&,RKI󖛆X"M^BoJO"!sނcݛ:e^vzҩ0"Σ4jd0x> Y 쬿_:Pi>̌q[6^{y8b-lI\ "P;<\Mr4GL]&@o\ 32'#݅ixRvp]+EFyy3XI5sor'&^y¿$+:>oDq["'n y Yb˲ew66-B3 ͷIKqw)2or4yb" >kvdNGpw@O?nR&ZY|"bomgxC0cwg,ަbzM[# dQn:•zSk?"o'*b@ lU!dŸ1K8r#]^y& sÞձͻ5L &V$5L-tVkVQb4v+տ-';nKJ^) &+HRgBSo+]/U:K.QR1RФ956*Deڬm@T/*>r`ob߮!A.TjX9!j㱅{eM{ZebZ ߔ-]!%4^ R迾&b d Ne^s O<]F~#Z49z6CuI"ʷ)z| '(0Q1K)a}]o/N'ՁSӛ8ٳ%u=I`(9:(lR/Ǖ? ܆WyM(sI#b|Xb ˵k qEh*D ?۟mKO2e(9̛23+u_MiDH:ƉXyլ>.q ۖŠjla\ IzAP&WW{:B$%X̳V>"G:gKch9+h9 BxM,- ;C%,\e|]Uλ"7#:O$wF}*#.'eC.CB~B .~6n##"}smBg*]̾tĂ%es# Z`붑trr:3PDCэ33Y0^ s!w\b]ms-$gˈn@K8`DRPJ&eͫqD8\il)ؾ>J=װ=jG/Hy#w:91k]OƙҀר/PFlv]iF߅c]9P&ti AhKGᡂ C ?1*HwM_KK:ߔJXӴ<䀳<$?r8x?W$j2  _F^_r;#Fxʽ*V;- aR-/U*Ԇ 2f Ao7\X] 2{Q8{s6 P=p,-<=2op=R;; _KdPZpȎFʍq.'9Iy15Jnnfdɢ('-=U7YF>lDE+/AN@$X:U)G@6H3`&Mk{x# n& D॓~:'6+Zz2e)"@c{  Dĺ1"':AnAf>RG<>ڑ:=mӟݺw]2 ֍^2KEZ IwCڛ@oK G8)9dЪGn »T-pFrK~˱v?!gNt@vJfFC!&{I3SW ad#9BS'v;BlX𰲪Bel>"? bדCj&x64kJ3Ӱ n q NHU`qHoq,>kx]Saږ>u< ,en-  =܇/':?<<lk˭L#D #DMPݳe7!"\بHBCZ;ੜvM캗B8t1QEZa !useTO櫴j&֑&R Xv\P@fi+@ !+?'+h`h 9TS{y((Bcλ4稱b-'W*3DzcfMTD\$RN!PQKReW9 X֪gؒ%={zWg_ g9Y)hܾj=_.Wjd,K.N_}boO?H-9fc 9:U#=~J) f\HT6лBO>\\V:֤SUg?W~AyNV\ιE%7jPF{hR 40{P=N?~a/]C,TQ 9#69j;j,}y!`U$׸@^Y)@ZOoW"˿`n`+:vk\%=8`w䔚`yXI:{%w>l,J.HKyҷO00!@e&l 6s8 drm<,Q<9IGIJq^ g ]R+Y 7ey_Xq]nLDm ?c܅təfg!+^$MuUO#hOGķI2Opd{4uk7,a'} }[o,İHN屡ﲿb@];Cܺ {O%_u͑|lDaɚ{Z-$[VrgORq+Q܆<잯, @)jCxDjWep'W;36ED>OC"X3S^{QjIL➓B|ņs#nׯJS"Yv[ ]cUtu \tߕb n˷H트Ӵ0 ;^G^Et:M«Vc> ]/ =:0;{54mS@@&J,vn;:MyphVpB?-/lZ<] |mdxNav`#6McΫj}ݸ!^}:+MRWJpC{ׯny lFIUp(sǀG<:ݿK?ɽ_3pv1,Hy9q)b}0fpJ Cd@P w2q,ә cU& ؒ`)oSDM ]YK%'Nͳϖ([\m~J,n6t|V8HuerbjpzCZ|A\4ռOp| ,eSn̆ݾC >? mMy0),t04Z&B5C" 6XP47YJP<ʞU3f\#e[ \^1?5fZ^w= 8t£-IbǑC3?)~^On⤫}oL3VEkxjs; B4  á\F*w,0ℹ0(FGQ͞COXD~cnv#elc|u<]N:RY]+S9֝!E]Fu5S@X?!$B-yeGC~9 -hm9f1IӞtQn3TB *W,8߾m'=yX4u{~PnC*ƭ;&$qStذ p1Fp$n#32!bFA(-wXD DOSElX0X\kar6/x #G^ sX(|40;&~!,j{a@{z]5KSQBT[L $ޯ&Jɚ1S f&Wgף.Ԉ >0-.P tHtᤒ<$aQ(/~8ZY]9QT&&)2;^-Ebyl=Eq ͡yyLjUv v#Ao,{#ሺٟRѝTG÷OexF ̄D@plvΓZ?*V+⇔Z.{@| KUqŶ ā%uTbI} oـw{!.yj>?%_v٦SIiw5{k [cފya4)ԣ( L'}x< w_`t|(e+K?7>D54P.Y;Q"qEXLnJ JX/ezkJ63-ޚ1l !w}>X㟠j&"{g:iZD/jz6]e!y9Lh`-Ʃ51z>`zkS8ӒNAXvޜ G"x;-VmML.q)G/I`EV~_ Lci J3E.BZ$yAzcf7w X 돷>KWT٣5PiG`qGlf2O!K)h=WedpNj-M˙"H{""$DGKk>ݫs!5[ NGZtydIhx*]ξQ>`tt83tR4wwm-+P/]_f$R'̶6>eZ}L;S8'Tl@HpS1o6ff(GInM=v)-mǝui3.v>Qp٫jAsvh[2N ɣ 4yF-|Ca s'lQ U MdN{%q=3)ks)<;EcJ'!~'e]ȊD„ێ/D*B}4r!G !e|-d?ՕLikhSxnG .|JVTλ|GNOS3Ϊ_w\õЃl({g|bZFv*Gӗ옌Ц>k@IP3#M{[&pї*(;f*X4Pq'WhoHHVYrް55(0#7OKR`8t|X-(S O, ~%L>']5ʴtvgqNS,3b(2{%dv#Lr#3=uROiL{f>ǡZt5_nqʻDyF[!Am̫2UA;Oz L2/|1"Gmg|vP޹k Y36ߵnqguY3 ^<~l^5pJnxꚨ*nf>etbAJyK:DHPvn/'"L_qޱ n24/]y ]zU2>7ol֖պ'EOZBQ>/z򝾟nbϋAkAQ xPVI6'h҉Q`KY`Á#mBb (Fr7u qfwmVgf|sL@*29RhUȲ]D*غ;1v~YհZ\, ֓lP̳ȴ!r\nï[k5\?(Jo~ ~-|8Oh2CODnW"}=5-ͫ :CKPsM1qkSA楷+ȹ t䨥cu'Vd|xF봲*P /O D%_%b **d mj )Ol9D汄B-[tןug͊w/Y/rCu -ZB֖Pv 'uEWH$f+N#p7[^V&OKg]I$j\|:M`婢&@lDsFS\L.]JZ|\ ]NlFi{:bkrPHϢ{fm$L?S͢?33/zGHw sK/́$X" UI ^Dk@bd8 ~ɿ;Vv"\<, X6K~?dOi`qJ|P#f%@ԶR2_)w#u.=nܻ.) {95Q6)ryHwMJNFó0Jcܹ.n[oqʎ-e;<]= sm5Dڛ9n-K#ay{SNBE\Lv /"%nC{A&]*IelƱo9R=Pm'^X3R dC>T/T= D&q]Q&kXRi˷^{B7&WO#fQ t+ϽTBLH!LXRWuwS?{*T Z_qۤp'Rtz¿A᳊p1T h-K#t}+7ΘМ-c;oj [K_ng'$VoF. HGl)'9+V$L Bȯ!-WޮAea6tRTw Emc>܆w=NL~xxqc+S)N|F:eƅ8l/݉ l4GEN]bx.S :WoQ|Lr+n@&hi|Wi%ts0?,%x.yKfAˣyT!  S4^8lUҚXLᆊq]K |I <#j=sb-@<ЋF7K/M0v{F ۥ+kʯfE1!ItO5ZM*xhjh>tE{S[Hm´ui#d/hXm Ɛqm7,9wR3C*69ѫ}3.IT!T j8x0ikx?܍!_aw]-j|h9 ӁzB ZdG>^&m7wCHmd,{@4叏bGeqEHx']vS"q? Z((⸱N7Hdl; :wᅇb()*(V$yV ġMRwFll~T!Β&Ob7< .Χ+Uio!>LPB-d}ebec#c3OSս" +Tb:6!d.y½;4[Ŧ Do߮ )~C㠞VXI=(]s8!CBܣEᗂEQ{hEFșpQWٹPtV΢?H;ت|(IdFBs 5[,f9oi^'}eκX8t KtFbu`"#6tnau'Fn [#cq]0CPtE Bm'YjLMخy7':f/!%tIQL-9B(5}ծ aoLEwHσ޴/4/+-gIs72{oPH O3gCHnߛP_,O0Uߘ!~h``k\!?pCr78^e`A۠RwDzy)?5YBH qc p: 0]YnU&} GLm1;)0P2_M-Y2Zj qHٴ :92?1vd'xum[ lwҴ6fuϹoW.")C>oN tO8WVntcrO3e"nǮ%zQN0mCD ilmH07;GE&YLخCKކ.Dkɓvd9 䨛LkՐԨpʃFgN ^Jw+ ۔Ω}4kwyEc<G%P53z Rq"1ci6`YZ{d|y4i- c?g"ٻ 6-c\3w5(ٰKP{i_OS&1%?͑CKsܭE1Bkī@!^'xMAп? `}W {e!O?)d[d[Bj뭖; ֣m^z ^徺!Z6H@p$ٖdļޕ.cO+f $6G֡_4oj@ͭsB7Rݥ~"fM;ـ?$A jq@!qж-/#4<; rt]T>9;8?ZM*)q73ߦ`j'ܲm@ǿZ ; QF^Mn=kJO%"p71>gnsJ~SaA"7av`1t+w8R08Bj[qﭽ2& |J>fy]mC4N=(Bvgu:zp_$]%+Q7$hk^kJ|&m)d!@ jٌ?݅ ӏejܥ3Vxt6jL,˓ y41ĎqF!@;YlnHXԔ2hEFi=;xud>jQ`-\rdyfDR^wG-ֻb BxHzA1EL)9y0/ W99mH!˕hw瓒~ J;"G+RS'x- _١L,xNG?-i{LC (aT!"-i4F+8x[)˯y"pG3R9jTd%|RÌIϔ5Kq8#/ی+M{_&CҨS/p_aPui3(C\:MSCN|kèVOTL Smcg:$Տ <[Ƅ 0GWHR{1~:m؁f6q!^&ӾAvYx<|N J]mT2o}p:koaMBuջ:0rs E-i,שr&@8D"- 2q[0Ǖ'([g}d.6j{O-qNzk$ IPu]>;[7G'j:#tI2O6sCqwrFP:/5I37d&8wJ~JɎhw0)s>!tBKXOKyTsl"gI"oFж]ZBQa`1ntKOF̢=rIL{כ[1S7Gz '.M;DTF 6jǧ7 q8ϖMD.\G2RH1~28|p$@CXHOؤ.5ebqQ~5[{IB8d!FQqs^Oy#'";/Aܹ;5 ǝ⺱4v'hQ*y/'m s%F+5G@_aǴ4OpnS݀>`elH{sCnDY5a&c -a98E}[+bu'z.#  );P<HkQ6Br>[1w xWP ]x/<)8K0/_,vHRԼ%tΕe {v=W1X6Z+xi O,#e޸1Z k}e-R"byj&*BG0$KyՀ2G<_C(*G7`6歉HK$o*s(۰ HD|O1נBYwYx/LP9/TF+RƐjʟ TP+%] D[FmLzaZU}ճ P ĺ5 )D gey pܙP31״+gUh֥~t ƊBDSeeZm N“䦒2 }lse)}YcK[^oCl3tBS;~q$JnZiS[].7r T({" 6yR{WEZBl*4tL@׫;T3jb-)xނ_8w:`!x5т3ct $p1p,]2ܺ~b@Irb`%>7 #B@3+SHTSBYT22닪 }WVHpaO;tgZ37z$a VĪ.l/CkWot3qn%[j.T,ϝXOE fk]֍*"pIiߪ|jB6ZҖV dCl-љ2F5 Q˹*^aN>9_[,zt_;T89-;ajr 8a׬Q)_gISiZe`.Kp`֋CiNK0Yd$E o$[v5c'uLRS 098C|)!v&V˷18c vӦ;CO{I߷ΫCa ~Sq;MX k%~ |al"1C>Zo9Y_pV^&v @c4.yS:)\y(cbE 42`כ{c+i0 T&ƞ*;JU -IFA;_i8YŦB2>rIG+jݮ ^=vQWXNI,6ߑilQ8LabF\] kOS$Ž>1H ⊇vV)@JS^ %.tgKQg~m z0#EoX M"``AEhV CN~ݸ`DiTc'8O-3Z'JdubV2fym wi@o~}!ʼnmIzoS+Pn$6G@?Ucop#. %R 7c?@E,)e6lF|@xH!X8ľϷ.E6ʭɽ~21vZ+?RF͡b\@VMcqLw5y0vE a]c4#Њ#n8GcOrї-;﷐B:#0(9r,0 Y$Ui?L^Ё`o0{=qR ^!GܳHş2)>> ; %'?dgR7H )Ce:у!/f5qI~;SFOSP` qu[wAW-מ/y'GGH(Z9$ 3uϛkiȲ6a7*ЎX6#+ވf |&]y(^>Fb&dCqCLf y SV;`7xDQ#*zdk~dȲz9E3qp50]-1CM-Rt4zG!z=NELpkXc BJ0-{%E!" B%%os [@vWƬj/|7Nh -!)Y/؂+}P-\)wbd lj Xap 8IHAu3^"2e DsRI`2303n,x QQ<{!ma5u|Qի,&!% dw5`[ʃQU7!U2 \Z;LU`4WjqEGOwq}m+w+|c8xqQdPVdꉳY1Y>%V#gi ~h!tbV܁\kS`35ݵV=_y@*xt]ƥN4J&;R+;Jb*qM(sMEa` (9.M?=QM4TO5>+.{6طZ{=&;rj= ur TOԓ*c ~H .,8+s@Rp?=(hx#x}'uh2@Y^8|PZ0) X"F[Z~Rt1\^(7SRqzm7k2ώA(w(Sǀ<e^ }<˲V=p˥a^_@y2==Ԉx 7d;DٯX;&|5Mu]| q'({4s_3rXcL )g;Z]qe%EK2%3xǐT;!bPi+19ty:@+B%f/9bu+  >HLnQg_2ȕ[{{<"6kŵ PyI yY[>&Gvk~ޓS*Fu\zd*?}n/63BITL5|iWHszA$CS:j9Obj"ZmtHMIXZṵ52;Y Y+CHX6$aR?Ky@8uz~0 i GkNk-~2<>D+VjK L1{@{h|U\"Jù6fc 31Ȃrhn{TJ+@ݍRLG^2>5y<2APImAXQۺ9֋Xl 6bqJ²rB0$5)#{A,i YY3oA啯N ܳڳn(6d֪c[ˎx6N0c *k pl!Sn9tQS7PĠ?о#.1Du+/G4JqA;nbȨбҲvG8X$+(iq" =ԕ64]nG4-X]lTARSIvh9?Zo{euA|[f>Ӈ~YD"ݻj[`3Kz% jԵ" f+e}i#$vL/>`+\.`($G?hM$Wr57ԅe0-٢5'늺t'50;v*Ӣ3 )*ySI$e/)EQ@jyKL`5ԓs?O) pcv$N(Eec` }gGM b4Č t.Au@aIC95EfkMM+X(ho9i97f qifց|yӖ͈6? 5 ė]oqsfʼnoӗQpzCvoV7vLn`cڦwWE-v&CVXtim)ڭqx| cF9JZ{8HոE}v'#Pş7ɣDQ^?".).wǺ`F, 6&]g[nucn[-87%mEИ8i 1w`ڢYcd#C 4u  Rl64$Z=v!"** 0ˁ٣>wOA;67e4!T|7/y9O @1w4 L#QxAV%.h_o4$rAx`6M3{5D2GP kB˫TpJmh!jcjsڭe[o%w]Q׃\" ^C: { 0n\+fhVviEb3Eq~FFȊㆹpXqԷN{O&pHOs_||;nTcc3kbaPuRFccNtg\{) ,1= +ɩEʆ[qTKslyxNkJ&"`@/Z06? :klI~4;|Ln_O/2O*[Q8c%}O4q ˰ FUmԘj_Z_S=4J ,%5,ĶkZ|?51xDۡM̗S 4.а9_&'H{H{q,/ON&gӢ)^Jk]E8O7o9wAF L6y3bhbV1Ih r5O"z ^F̠RaotVe-4$A45^Q*6&;\!|\N|\ɓvz$D\4V*KKKx<aJx_x\M`W򌺞DzGh FZ|ܩN)ՂQ!v߁?*~ 3"rWiElq_3?Q=>N_Y0ehkvҝ-q!84c6fЩZ9LDݿK)&S/w|֌Ih#u U.?)W,gQV}1 Q J͝Jc {(EƕVDzvB=hxj#-͙xuMDSL ]X+S w3r9,;V>{Ɵm9`_AmP(oakTԴvY{3\8c'_HK>򘨲Yk5?Z_ Ċψ &vs1X5ORG~*8%XZKo)kPe𲷂?g:T<]z`%CܑC|` t<a/i~ Y̦43+i/ ~OP:Dh&V,e1'+M8a]yx`qqi2*mIltU"T/ϙVV-'˼-1;KLyX13HT) D)eAqg.81{QML?aǀ,p xB]f0 b [\ xРLxYc CEe0$({/WJVſ3]HѱZNz`WS:Eo<^7,/\v9g#gb.RMo@S "ߟbML;5b@7m[~AUh, +blr{݇_{վ)>x8.3[#pC lq4ϣ*'QD.AWTVĜ]I@4K0nSv@JgnX68b.8@+;p {W#ee!D=Fd}E !eȒԯAk#֮ `Y>xMՌ0R+ &?_WɿJR'+Q7hc CdYn GF։a cIAYLۻb}wjymTY`0{p s;q[*V KUUu=bѫx{"}zb@Y;l-Hc\y"7DLY%PAa5OM"淽t(+]_QVa 9`h['IJ c`ؕZ@~G](MUSHX/ !iYyqY1+=,ɍ*@٦ߟvn[M{ ډeY[Cڭ|YZ ;E?ug)fEĘyWX#_$]7bĞY0Pmg`5wخ3UƊu| c2@5 'ȕ̖X%u$oOF@g/v_'RV6z{1Sޖ /@?,5 X:R,\9T!&s\?~x2]spz%5; +y/?Pvq%gu++2SnNl(uq%CoCnW"_2m`R(mS37H{GbaQ#02޿ۿjlCxamS}5,M; f: : ?_t_S~+Qy y 'yD?^z!"qi%)Di29oYt;IK;6JPI,=NnPN[)D߿h>YiQ~^(ok fו$%x}b xZUON>ȟ7LY@mgWWgjdx%3YGsN>k<QJ}i [hzdgW?1 lY~D-buԁT2k UhJ%Yˇ35 ިQYJYq68?sh̶??pƜ,8M+7 U &IA9BrPcS:k:ݦӓ_dw..w4 y.GܯᆝrvD먅WӮ/;Gz^e.Hwg4n-/uP]!û2# |Ek:`iOT:C*7nt$8h:,o[4lgESk1ROvLNp2Qo:M1k,rCb(@1G9LD~RӌRlOa>m ݨg*"]es3@V]eKx_d8 xn~r_u p#inJV0 30#Ȕ!ze'l-qYeSQkl(\L󪼌8ovȔC7"z(?B*5GzTlQ;:#g#QƖc}R1OBz.q\)BʊcфPȍ1CG\}lا<3ki^h 'Q$tM؄URU_oI5!ci_ !vjI=ZAWy& ']56Y6O8W>AyJg)1Tiς)ɾx~B8cةW 9+(/g_rB|} rCXkC*ofmg^:E'ݥG7 fcXv>fw-~5ЇYt'NˡȤ)9{A̖;mkk+A+ U0/'n rϺBj$y93l:Hqrѭw2L#^B!P9{z6yxܼÞLCNX q _v3q$o?IQ*}Il{:6 5Wy! i~KdjlK|FenbowȮ,=Qr:l!WqmA)mvM>Y',a0N~מ[ &kz bu2e;93>#M編Tα\0#kg&K2z1+aʶ`t\ Cv[zWmM 'j3kl_exKNd2*`|\Щa׿6E&+ч,ZRZyr}+İ?B -L H|٥/8?]$̷X𺡨tNF"KU6hWa%u:k-O>Tv5]jBX%:_R%#Ei1~ 22ĿMIpMʽ|6<. x߷ ~]*_qObU?~<:Q_.!#˲}cZ#&:9۪@rÇFmK*Ιż֬)X>.eeCKc*;ṷsK#SݷOGj妄4_UMxXgӞ G0E! F*tjeoyE͌7f~+Z&\n.B\UB x-;Ҡ4V)!%w>Hnr1zuΚ|R%+^([6f4^bs?^LH*z-9z+eW>~{;<1,H@lgjAW5!Lߛ1#[$d-Y V@v Z\Ȑv#V|R!ro@N1)uZ,TLR #[Wp6H]^dUwz:ҦܑqIF5.n[1ΉNY.|#hj4##\+~ϏSg\J}E6,@Vwc3[w#*ͲUYoBQSx9av+l~E;F{]@#M!6< -duyVI)Q3aC+dqW:\{ЍPM_o :5)zͪ-<ӀD7%ݫM?whJ,z| œcA{ 'xE8dTH=6DW0 gP3B1hžB`-6HX$m]T~ױ2??rƊwֽbg [Q9Zk6HXxݗLyCR?^4Ym} mԣ?_p` c εMfBjV#V+1{iu)%bbuӚÄ1 !bAOɡGJ~L\FmHvRynxd$ gS* a0N`ޤסYOlk}P\\!W6_6^\*!ڤP;"QXNWMN9H kY_*HJ;.DҜ`\6u0;^ުM,,=Ax +숟HR%\erLl'3` ג peO32C3pC?:&Ugb{e?8S8ǻ?ЍC:%q+awty 8\FRWh22ЖÝma"bc6LLj} }Hq׭f^ݒ r'&%Wca3%CePT%&[I,G rMHA=xXMl0E@2kJɱic[AAt1eC$Pݮ$8pf?5UZE- ZHl'o *o7c:;=6@Ԫ||rYjySzs4"l'z-}Z P6#-tW EjkӭI}?yVp#̡?u Pu/ʻ,;bck  s% ?1jK8]RiI9LD;S &P0M8"BӬCIyF(ob#1  3 2U5E⸻0 8+!mn4]ܤ2y@+z&~*~fXٹT+/GES3z>OS=7?R QV4\^Ǖ7XŠ)*9K+`VUȞ}X*3uC8ekğӒKu}#8 nz:z(9k[)j}g:K1J6Ej(|.%Ju#@F)SH&,pu.F3dL/o Po ]K1i>IEX:ت|会38 ]==̬gs-s;úx! Fm# f8]`ImESJbZ`:@@({4AGD9+|+]PJblb91n%hPT¿c͙{m4!`(Ʉ~W̻gA"^MҀG;#s=~d+h -|}-0 `<リaW$Vqo;=t撣> /| ;!S^Hh]n# xc0zZx)‘\<%tcia:{<>0U(RW6!8ө(9ϒJ @|Y#nX ڳ[oP/XN{&?.Qv r^?jzSmIĹNe7zZhwzE\%w&JiYyp$q48nr!du@0˒]X SlQnV[UWqhsçЍgKA,8tz2#v"|ڇ;s%|7WsrB>?%I=Ϛ]e,=pg;4]>&LnTdfZʐ6!r}Cƶ˓p(n %Q @Gw|`{XvCU} flW7&[r Օ48DFB)lU$ k a` m/1hZ;q(gdV{Ir=*w: WK 3 !'Re7lۀ-Z:)ز| У(źF}Ƭ[F܊E1|zyWFMd,#+"ZHP7L]|+43-BJfŒב<oU"cǖŲ:gvM:AC)vBޚ璘|Z\u:WgnY FXW k~H)մf3qY/L׽&T.3L(s0=" @řÕn'XH#)^ϼZ7ӂÑoAV I9{xI?,XBd u#xߥd|bn>.+ʪ`J|;gOɥ"xEecD B8mh N I&Bu&(M'uS(gCv?bR[huҍ ~n+m|PiҹkŮ7?Kns}5l`Z3ܹE L#v<[Ծ'vRWĥF9) 66jsϼ3L9/O4aeXA ' b!is`ӓ-d{z8!rin^:qEY|x`TU#BL!#>~-dPRK?b^e}&cH2I3@`c<oh.ŏ rk+)u_yj.HPԬd;7,~RD22r)LecZV˨?q/x͏(E[ Uc$\>xb6VTErL$"C lyb1hpɋg~z3*(@PYbIu : ap!]J'{N#nc)PR,+lP=+LCr(wcl ^,WMY: (wCy.x#SI]wU#,le'`NX[1 9lA׼Jsmk=gًUK) L+mC{^ ʽcI-w6WĒ J*)A}!!kCWH^ƣ,rtぷ"D 6OYދU~d~+p'/xߠԌ}%08y'h* 4mx-:0eN])n"Y|҈bPRq/hX[xQ7XHЈC,Ovx*y7Wd mKf95to^K{ddn6ђC-2g`Z Lw0GJnuR+3;)PBǽekq:.PYF"23nrJT#/cv0 C:e\BUzL+@jAZ. t -&W.(?La"ъˋGik{4?Q,~F`U^`/}t2t&)Ӫ~h" Mu2ZO"X5x <D'RpWRBNKݤQsO@%wADXMbW^^|69ÓK&M-n>؛0MJlRsZlǦ7kӞ2ҡvbfzŠ:ؐEM+9!Ka(uAkىmo٥ 7X:QգsH10pI{="Q,E* ‚HAk"lJR=\6e2+U-4/Uh^:S>D-98K.K !Ƙg Q5g:.{z@RqD l^-z]3t78{ɣoDM͎'f8WgvϷ6Vd&IYSC]?Dز9Z٭&4M+bcw/w7l6&h.rffqaѥ=qWYe6}e5%>)_5 -+_j݇v\U& %kuS9tчЍBN *D%[[;5w9o հKHA:\RQ~jC eDj:x/+P(=LGT[uNX!jL.i+ ]o py*4[0L!md5KThl(\L=қ,.z/Ԥ÷.]*WfR(Dm|"X}MOW26- !쵛"N騽N] b_6K"3 ~y)A{c1'$.ôu{T"% YLVݬ &w/6-ζWv}~vU]͓/]PLb8@x`>S笛9 6/~Q-~p)qd&0"TʍLw HmRa@K}aY N/z$Yj` N;VJ_u>w<2 ;c'(K'$1@aP9H߄ܜv |^:x`ٱ}}qoBYЈ|I1OHHF5EN늯 ^#,k)!/4}<1':fNXYe Y%m{eȼ}T`ae4}\#ҡΚ#q[A2sTvgi}l#UMCSʗ(i+qU\ODtVA3x~_S=DYJӿy?zanA>i%,ŪH{!-: }3'oqxE v WL:\~W;.q>ӌ~/;lDd c{5e#"%Eg#pYӲQ gO2 %m!{əvR{AcTϝ7Zd6^?JAإj!k6qFBA|͟Q4I\RK]ZI.!6aEk3 FJɊU)HHtyd)ݡzhEl@-g:~DYo|ٿ"ѻ+Uk ,0rc "5jA:@nKlß ^qLzLH𫔔#. s%cnF6~R.ű$g}°u/iPF. )lPF£#i,s] l!j sNEWˈh8a'%D9h CKF^le'"/#/:b <6e:, (ĥG=ʆ%y1 Oթir R=} .}dwXX_Wݜok-G*S1Z*MMgjXW{ۀQ;閸6^aP Nu;bυxV4d?zN.x:ic/4o>'*MT^MH(8k9beacMmmMaA-7_xp"،y8UTapb0$%p((QʱWφ4ǡ9HިVv!%˦IC(gZEӎ yڰ|ZX('`}tZսVD3T%nD|k8#˝M,RF0ȑدEP΍9v_ffڣcrg@NucS)k,v۹ ȆLjoYxmHv ީ~}i5~%'Jk%¢(S#Б4aFx _'z3'y>F3G"F2Y?gdIxиkw%fq\'LGtxvb!X,:5vh_THL{TEU1r.P( b;C.sPl@Ji `+? >HtOH{tRd*l.};[d,& Qv?2}$kw(HA?ՍxAӒ"Zq& džkȍ Uw˲U$'Pi8dxSxL$0}&vd]G}Š=ly%>6Y]٫p&<`< ._mt꺘 \4J;jͿLDCr&owV+WZ=/Om&m]Y8>vP +ɓ1;, vS); k3qJ ٸ)ar mFdYMB%exC4aٿ8E lПR^%8r@WIܠyߩ\K:Ŏ N|c+u0=9^99Y'l]jzQ4^k͉4mWIyHWݒ{KY+j"̸qL35'r͙^ns@Yv+w]t;~`rYT6l0N0Xfj;OJ[=~և;8jƍ^/S4 w5tkh2.jZ"LgVvY5*8c~ HOVG:Կ&wqt1rFFԑ-vU;C` NgPJ ӯԥ_#XŌ6H0Rg34?ni04ބȊMnR\7=6{l?bw\/%a{,d%.OFDy[m]x"e6,Hs"M|/-E݋f̟c#U>9R 69W1~exY6Dc̣e֞=Ѫj?Jұ#[` \kUNUeVK)&O/J`;aE7ZE0G-gwaaeCS`XH(mF>S%>] ];Sպhl#攏4 <;.ˌf~z`G,EXm}]Ģ 2nJz ѽV'W҆L[)p'KV*:-]b^-yP"^,Jxм# ['!ˎ?*Ca֙zoS\9Q\lQжilA N쾩@`P-` ?UV#=OZe9!Zp@ '{"7VKگEYƛT-T?!{%?ĐlyKZjSz}nbO?{=Խ7[?kk+W R:""c.b>X tE&:a@V俣̞;vΤHﻬv IR2{0&5_G䔧/H]Q5v >F+0 YS5FcXSl7NY<eNAP @7I֠[ކsc3ӇOco d_BRӑa~gZ}ŴL*]A_jLSvPPz@_ÌkҌI91KGkZbfGQ5U,K6`sFG v-NӼ>t#RSgtHK[V-/E͘~s=͘ˀr#8UWƶ~Ma(EBBp#ONUnu ,{VheUi۫<δPx ڹnl)CNeSNɦ|z@nB؈s1g cxB`RbhR#gn9iKڝ6q.,$t u@UR!9Bw(IL2q}|hg" 7 <ک=%el[)˭mu]7nȯi?k0 n=WkmyjE?OQt7NԌaiK+ܭ~>ѴbR,+|I_t{m7NfS[5H YፐP'+|H/upuQ<̈ E1Xq GV82;N6X7/YQ↙ R! qkⴣVf?T }qzҦEZ֕O\B? ljG-=vásӗXOYWXmOs[:V%#8:7LǙ<})eGAyoB,2KT]Ә <5 gN&:a6>B;E!Yv>.w/HA{Lv4@hC㦼R"6Q+ޝ WmEQDr,OۄFe;a+:ޞcATEu+'`,q+m8)*wP~/*-Dzr7qHd>Q!@'a_J2",e5<ŏǪtș%ެy^s5rn5\!(MlNͣt6?0ejt4C~C!s{nH uG7;Qt1J7qWL!ƖUEBbDܙڎFm]ˮ3#>Jıj?xO "Z͘魯gL-ȇXg5?Rƅ=!=?+:3ʐEt*z궄O=Dqkr֎ӴmHU#~js h8쁚n:Q9!3T_ l3>`;RWzaq4qN>GB#˪ P4=oĒڭ|y}I|Y?aci:!ټѳYR8%>1 p9^갣Fҵ_XIZ=j\)_i= B8\@*6f2 <~8JҴGLD4GcxN:#\$9N0O~.f7Xyv*fb(h*eͩEigm 5+&mD~M>QjH]GbHlejJ6F]t ֙[S%l:X'u1ϘC^ .NW@?5F `u2gv{;= N~$ܻg3JGX8Q-Zz1oTNJnh0Ɩ{(8tD̀HONS?G&-%heG;~G-Y;f!(5k!Ύ]o3}آ-F40@WT)Օ*}1`~TRk)V{|BXIK&}HEoOO=A6 $UxZ= 4?&vh|c]v|,D{?4W 2 N[=+ 4 W+:h臭y U4YFp7FvQQG4i׌]ڗwft+@J7 FfMM7v@|SSxoP +'!iw215 RDZ.!DJM !6&'1%]S,< h& tŚ:Zp .iP/+Z/Z O:'< ..f%8TM t}^)ypY_"Z"GRZ7hMuӑI\4nC<1XSU5N[h@ PnfWC:TѨ[~V{&ܮ\s q_^&H+.5wj$SHcK0-H'~r5# Z,m=_hhx`3pfYTh0+#߫jmҳ^h*șˢ}尷tQyLCCɟԵhj~wSBT6JzK eBn1߮ANMؚm$!͑8ґb> ޴S&ͥ% dVeb8k*0X&ᜯM0ApA6&2D/R2l#VZ+D,kdRkdPB04/bJٺ`DR&r!h%~1$[c 8I8L %5_BZ~B,b T,G֪c:3V1%#Eerd(e gtJGXN5ܩSAy`3i "uf^[4#,@JSWܪE?V!X8^cި%^vRЛ_=@_šmZp%q$4xnC!Fv1dk -m_3WB^0"9Q[6Ac,r#vzNK2NfωuIl2O=61fw!EGiD.V#js΀-6QP+ k-wb +TfLaUA*R]f~{Əz?!J@LyN"8n!zwΜo~~5H_lR7kXe _I*cyy:KiC]x73BNXJq?\=+^H̠?cJ^żJM2%l.߸m/icOsRnCw `}mzh*ȕ5<9?v_xܻP ,2\o giR-u,sj/8z WG4E=xj~]ڳU[&ר҇-ph(x?^^>V^>pcfqe *0Ts3'8#~BD.+)*ۛYt,7 ARfS^6cM&s%Q[qGv"=)KN0] Q V}mv3 l+ٔ -Uy3U=b'Ar@=U0̫=( ƕXhƟ)p}'fG7Ml UzcFސɤ4oTOP7r?%2 73ɷN@<;ˡ{vmI:P}UPpnq 2㟎@ocs=9bJ?Z5"@qT1*} 3Q4'p{NCEsDJ2eȟv4YI6.`Le@?DQ԰Dhwm!`GߧdB}IT9a CI0cPTWw4uteI ԐhچDߜTPUu )(qb<4@a9TmI 1+b7guS=Xm}^•7UFSJYIqXϥ3 ^3Q!ZD[b[SMC.n"LmT/vy 5;p.m?:}XH]JZ4o.Q.tQHMzK"AM@㈟²8K#7c7Am0ǻ'IVL=ӶsWoWAMFƖΓ Ïlkz Gt#~Q *2X7d\PUk[2l.ޙ\qBm?9 MpC?ǒ;$L羍_G8I2mz&NIU#W\x̆3]r|K$#v)//o_( TEo1f-_0=w-S0墆!q|͐KC G]Np$K05J wZXbj ^`0\y=sW}d,CZKz%F1%dQ0O h&7l'x8k_[ Rle&$&XpELJ'wxhvXRhS0 #(?2b8 [ؠR;+1*M:iqY0gMW;ˀ~c Ioo DbN*wuXk4:s#4x&oSc!81I%9 zBm{lbC'\Hd"DV@ۺ)־v@d_J#zDՄAnw 0=~P|Ay_][w}|\gA4R(UwsF6L5x5 )ڛ@-RUm^ob 2f6FN2S}&f7,,FRLW>`2/K+⨿heJA/&X*c,3wz2sK^ĝUmQT T@:zٛ4 oj##tf @?l[Yj[א-MՀ N9G=?Z`Mk$J=h]!>)UvLSV)87tؘ?PZExJ6i`T'žkSV,7o47WīPîy/r°>d\2 xb_iskgi7~~(sk$m=~0 :<86ij+V-Ei -U'GBjN87Kn3=Z,MG7 e~ !:U ]oNp8w}Nxpݨ?2Is[DŽݛ: z-M~j|},o8qϷH9o?TcƁBYщUR(4> 1bw<#d9GcےT~A [7ٺ" V-9#/zwٞO~>c]`{mN_q6Pz2-`i+p,&582z`_dqM-IٹlP#B"IMfa}QzQ\:x#qKos9[Zp409Ow@OUIL\ϧq+ [4?A5}/2IN5=x~ /`BMojYs];+kbܫ_[{4 ۘ8hU]V'V-`ױ?loY%dj(sQMBMi0VtzL!HX׹F2-^R0U.-PBƎk ˔|K4}uh0Doj\m%ڤΤ|M(nUe)?V)-'oH*F0orL0OӬˋS<*6SSڱC쾆4}n"- esqtݚ|pZOj`wMXy~; -2pYMCj?[; M!id]?EtfFtjߍ{Β碒Vȵp9> r{5F7 :c^. 20YQ]߄wӞvVI??N[ԟ3sִͰqCwbZSicK 5Qgf/+jO76>H9KrwƨhhQx"ðF e=e_ʅkG+~rxO ( "*frfC~Bl܀D?/Ct0p~tǟUz9%ѹۅ{l偊ys#ǦHZJu*FHzѵ$ shEʓϝ(_׌+Z%JT#jk)_wYy7a@HTy>sET3,< ^qRmZ((i@!OR+qmargis7U z1>~IGi_քm=E[J`r|TUg~÷&N 1L;P0n%i4(reQS!JUns,G$1(ϫT"q =d[Y7ZJlI'np6l*^9+gQL(Py{~V>XqUlfSEi1 QfY_P&rPcriZTJ"dջZB%5HбqortӄFy[/訳~&GGcC̚_ٴ3VIxuI< ' i>[-hkѦ4UĞr)B^\sD .[I~sg uz5TÜrS7F1y,VvFl%M 3DeBsی=ƻmzO(K|v(QƖ2G2<};Ղ/-JVs#TYW 愂o\\%’tUƵ_WbnXVThKyrxvY<߂m GoK͢2F)J\Z)e5 q;"}A-3r|r:!Lي.UxO':O #"dctGYsR]ᙋ??dfIeVqQ s&BAFv{w;6}xg.J iS ǖ0drOU>GDxuױZ\00=RQ.>upwcT\/ߘK2UZNʩTsKgdU2z)8l T)c5ݤO4q3`GN h \%F6ՃSez{XϛU7we`жxG.LmjSܚy3붙'ÐA̖h7V6uzGpN î=ag6?o,4ĤR9msRye03 0 e DB(V$kٌk)Kv[s<"ºB|\ o* f{pC92|*i u:OY3[x4z4UAV˂_rkD9'&}ArS"4Φi%D0\\T?zm>w`xo˅!İۤ&(&lBF  /I,=^.5D#Ɍѵ&*Ǩc yZ%4/PD 6 j/N#FVPGPԆfn>>U_i1۷yVYh-x|u`_g܊@b'*OJJ |2mW "xڅ3!"˕1+)bK!pRo^IPhΘ/n2`"ݱVb0)vKu1O gC^-6I)ղ FV~uEO&\t]+ oБTC%,^գ{Yc}Mđ*/1d: O1+|V̾69|t^!%!9 a6@۠Ôr6!x>9dRX?mYjV}c , MR\ alhf}DuJ&_o,{{4 #o4j4SK, 3x^n+:ًa40R4/{m)Kcl=l+(lk)}|d'H`BOp_c33@,]R}H)';᝽C=K~*1w>z= WrLoKð=8´(e1\yIm9ʇ**z}6^厎1L-ʛ`EyU/~:1b"yBiwV]:%L&s"M{=rQpH~(+"q"FK@ HS2lc1=Ly)b޺~Ai նo[% x 0̔qNEףėkbQʯj)@)AsF1[MYO3)Gj_15=Ct1ɤЈrlB98 t+7(Ci2I-NPW;źN}օ-فUƋwz!ix057úď{IK4 Vճ+R׺#859"7XGP a 5*Q=9I={q[dW4p$\ n-5So5N}|?51V[hq.uWuht3<۶PW190?׮L qSoC0?f^|aM_VgozDgdx̿##8$O}I2{#묽ɞoVqWeg(52U](%@?~e]ZH'jcSeIw@ΦL~AOؐ-Ůx3ClPQLx;T+B!A} C4M`4 WPDzW?TWHW+ev l*RcV q?@2w)-<-S[^Yoy\Ci&:=D+馼S XbՓ9 `/&g4&@gP{614p" <#NZ['%AT+Tf+lB9 : xm%;H JGb|}" Ck? ׈< AՏz l XxߡvU"P̬>m:9,vjicMLR;wϼ i p.6إ0[ʺ=JE+-LF@**[t*w/#"bwVn9+hjP9kƃ V&&S&R{vktcn*hMѵN߇bY/v^bzgOŸ+}-Onz"F1"җyUd#N۸E܆օ7Ĥj烛&ACeړ.Z.3 NQgA!U#ւlA1T(ݐtP.PQgB7Y'`HEN0E&>1 r䣈O.YKcUyF.Ʈ6ô~Á([ŸaIKr$WS fO˸p.,I!WX\ky4#p5Ԫ Y1{|"ƫU*55f3I>StgPOCd'5DRkZ:L7!IXH 2+NdctsM2- >pQJ,gվnBtV+G%-J{ܔČ>F ^9Ӧ}o-Y%߃ CKy zv4K5J<} Fd(hbz?}pT~/^t|'NLd !z\@9yw >!G%BH s9ŗ|)c Y$G? pQ׸U*'f%؃ :v=$8ZmX!ѽ\"U[d;3M*9x#% ՉOF:d1AX->TTbkVHF@qdl+\! Wtm̶{p=텾S6 dc|>xBg@'j/(d鰳ͯFpe&9_z1`77=EwlF% nkw_|DS*3 B{>Tڌz0nQ,P;E† `Fnkv1fUɪPwA7;e3 + wߨاH 橼=T8W 'OjDmbמn>fSpDUE_xETblF3lnoV-ica[3s i|>M_m8h]'l _|e l'VN2\`5o U@nZSio8w{9=e܄Bnd!!`CTqs2$ >2\Z]T-{$qg£HV {CIAPbܪ4Ye |(̪h/`CYٍV;*i?z.E>YD5dŒ~Y"G>z&5V!βw5%::Tݘ_cnW#9\ЏbsV1 [}ĎѷF19 ¹ANi[;qiC ͖xÑ2Aڿcd!D_qBvdu[V#|S#n6.9g(VNN[9Fj4&<<7ۈ)l)fa8<:⶯oO9c{tV/rڗ.0/e]Ȯ-(7:/Ð5^ngX`/Aly:azuXGіY;(׌7 T_"Y? U"Yfhi6<~m Ǩa}Z Yvӽ,).2+2vjƅz7IsNSõQ񗬀9ж7Q(Дh|:8]*ϕ8q *oh'̈́])b 䗇iŞoML ؛7^ {aߜ_~17yWtX*\MHc蒣H6#$O G~W3:ۋ[&c (ܚL1ʨ 4KDSEi·sO`iqcedCRJӑT/&g* D"}Y+g>ZeYK c%Dg! 3WjQtqF7}uo'(FK#ldf2ŝr%!0~Soum#?;|j9D䬲l7CS=Ԫw.$88!noJJ̹R5ؿV&/Aȋ3;6r=s b Et'p:iڿ.'=r hf3Ѓʐ\w's\")?7B%CgjS[ ʿOxqs!ȣ)j;GKy"r `=ZMtԕhxR͡ =wVSRD=6$$2$a_ˡ'D+1?i#CVP ;>'L͵ bbfB~.1d|ɼgX+u!{썩E!;E}nEg$"r1xvL ?^F*H6YP޲5Xfʐ3$1uZ]JW`ް@rR;{;uY>b9*wY6{9I2VRxˋq 'ަMQd=IY\Jnu>RRWI<=QxNfo0ve=H^[䫋󑅟nDV9.N7jrk]68缱e|;rDHrpBU`n *꿊l'QKk$ޝ 9C&wਥk.[TKZucMX8Ept{X|jɪXAfؼ$Z"JU҃W}$Rnv4n @ 4)ciCT>UY#MeemLDa*a(x0+F`!N@+o a-T#fem[]U" U5ն;HA4ز4i-u;Mxܴ)ݮM9*jV?(C ˜"H^!Ys|o?#kR,}sK z"\҂Rz|aC|`횮H+cWt"c 9OrCԘ)7_&v|D*6CLU!JVY@bg3t\dMߊ$,vǡΜH#< N<(aS}LUj-DhMMblL~Y!E|cr"%1ɤz6,vt(~"6]y߆X΁0Tg{ܫrK)F"{ΘЗQdwO~瑋Sr  yyJVW>C"D^>[66_Jj}xswbވ$y - ѬŒ17]`aX/FBx"2O8e:lUϫnjoLxW{wSrEn+ Pbׇ5#d5dUyԬzyTN]ly&Pn7_H0\|#*O*SQu5/Vd 3J'ג)@cG%/}SsżEfɚ lwPijZ%?Ӣ|H0XNXN ӌNH2N<fF$̀};&W[{! TaK oĿ[P9,Gv-bV ㇲҺ"1d|]cGފZ0ߒ@) u qnps{c:$(b{4V%Q+I&nzܓʔ`hX?%M2֔XPG oP}7wߓŃ5c[SF 7|$w}W @>.X2őջ |5gkG!L=be, ș>P(9_@k ϧ*-kt%z:'&cPPFߘO~!`_" ?GqL{]}s~ KNmR`7~.,V>ո3WPN}lRxDBFaY!5,CcyLD c[SAxOňf-PSGl mmJ Mu)Nuj!j9Ȏ"43Dѳ{2]~uw RN׼9vRK]@7k>' P@/o׾d>Zq]9\%Qg7}7 K%(0,mq.ߓo-JW#A?@+8m M.h%xԈ{ S g,zqUr2Hffb71p zw IY M Gn$I6%3>9ԗ~=TTx-@Q:tYgs{! L?*AA*bW7kCݶ4yH$Kl`>1Aty. ^{ޡm8|eHJ]C,,+[b/*i}XtnͺAf a-YѶ4B5\ƞ"T2`|,UWt8XHpPo7h}LJnBu ), )wK<4nVfu>FЛ"a;D2er%e^F95}'6up{5h8b] ][]1q^}p/NV+ft@o#ӛGfrw\85}kᡂ,)z-7\_ÀJ 7tUoC^SmP|qyV1(-k6ïW.St>8fNB}c;`stі${lv9z£KO9* JP.pzt1t⍲PAڏ>C,2KMw Rft<>&ٽx8j$?_Η Upw$X ;_9*IXhu9>}KA[f/mfj,HJ1݉q-ڰM*ԳO^*_l7?'"b1y,x(7=Y9wOpm !EkSawW@Sx(d14*ՊKF25 1Dq8* 3lŒ͉u-F'9n4(΢A&56u .7>>''&k[.R/ƛYuwO j43`N &p/rf;aQ3b5vr!̨iamUFR6m=$z u=љR@l416BX"^b@j{  c#gX1Zn.nç9WIrVO!P<@B-9GUF+Tݦ=,4 ՜[$B*7af2ΐxwW`ʒޟ(ToE!'d",E6'WJLD6y;I$`5J"`>Zծ7_=]@ (Ċx侂@A3?pPB/#Fw@Lpb]c*{K5z$BlpVS?f0rOׅHN@6"9T”T'j鞾.=6-r`dIF{%UDƳ5`81B< A1P{걜HmƤ5K8wbG=eqx?hp:X/)W?we|!L2FRMd, !{7LDaPa ) |mY31ʴ*`3|e7xKxJ!yf5^)}ti!ړ1P\LWmimARnm!Ht{d貍aw1 MG\ߢ&=f^ I+c%rj(zgۖ#-#F NlJWc$8DLq(TSmjg=1ILl_RװM > "^Uc<|1٦ҟ?[EKfO g.A%S&ɶ|p܃p Jwב`A"9 ꀗ+^ -p'a*fe jGGMx@ۘr [$9!/5j5)ZOog v@s*ϬF1\X=JF,M99÷HP`@~|C= 2!$]rY޸ Mʭ^d&H0XLZx0֪~, gM<"[-Iz1JyM}֞ٞW*?a= +jmz qC3l>{{H_&{{ M&g_`zP.lBGĿ<6;No(ɟ~y ^ #Di8fL8x/^* ;d|x/H9DWEHK ,f]1)ٌŚ+N j&z&T.oR˺ECu֞1LuueVn {M%Cyl9>/!?Kˬ ԑV냩, ^ODYuz`BXMx:gCU 3M_Aebbaϻi93'F&38vvD61)?;`r5F90D'K ʦ-pcrrM كnLP IMbȮC5(íE\2:a D@AݑݏȚ!$κl!߅`) 'b O( 5==ڳw.&xcSXկԾƄ2HCKޖ78(O$qڦ϶ k^}4l$>JXdHčщW7Ɋ +9{-[M>c{_@ޓ,1&&m d^[SD?p)C~=GQ}y @œ!)-Smp:0.|U,!UۢBЮ;- nI ђ0S,%zU gM YSO iqT{N͎j%GHH'eЍ =Spg1ԉK8ir)(XP}2){UK[PWs A\'1x5~? D9X! #&W/S|ͬP]R{nr #,5P\+Ѓ`5xa!)pL-^74QGzg2zbZ蹮AeqNÑA_ " cIl'S R|p=a"Wm3k6vй?%&9s:z%xeYE4 X#sz]AkT<,qCjϢܥESV[?KOYt߹5wov#"^Q  *|TQ@r3UR {G'wBr"D[p"8 ;Cïj'xyx,[Te>īB w `餿Gع5]hW<;Lhfb9ВـD]QF3)[zF^2R*bWd+V BLa5{:|7~1Мo4< WE|{XZF{ 00Ս!ˌ?MЫ30:22D.w-V朜Se[wFD=j,o5&ٻC8y#yq^?]U =pjӏ{{*ɽ ݕݥ 虹u un | YrLκsʏ&vp*y2$n]Cg8۲jfQs;Lc 1# dP{"J8bڷ;'l9I%6*jD$z]%-A~y ;/iJahi[Qc4]ri.K72A .He^izEQs>4ʵ~2o^EƷ/XTB(9J!FěFYs5 { ڜ\&g09?h0/~P>Td4۝8́Y^Lq'empU"!]-U¢ɺ!GiFB]Lu%ᑵ'c*`zwGv j]Qۻ 3ݰ-̦#2AWkbLjHA~NqKfMzؓ/oz%]kEVft dEY <5C%O?VZ/oj/4 la )Ua Z<) uT*~6W[&#a C$M̴aFl71^{W ݬQz4Li[A[H r 9fG2u*>z_NϬdg&[kN{7׍\z!FXf0kS5!U cJ.2Q}&'nBmo 1YGGD7[N։λid!NI6!ԏ?t?iÊ..e] wQu\Q~ c /"]۝=h@GMH$IY»\c'Y;.<ݷP?&eq#1{  ٖ(pWϕG{1#R:qܶ/ 9t2x]c qV d,ߪU}K+1PS.q$rl;WU6 S`4ޓ FN..aL5mHDR֦XWeƩ@T߾\ eF=5]}./? l<hIX8g%pu *?Cq^`rF]gtYׅ VVwӁx g78u=\\hQkՒT7TLrA4}X+3^`DYsl_4G"MPBօ%fw۠G}`ǭa Jxʬ{Bd |0)]:v*cd\_b*s@uZdw^Tn9cjlD*=c .#6B|zn]/r W%{ICDVGlQR=zv.R> *XiѕjON"Om_t :**z0;GAkӄĎ/kRDbv-+H*^a ~l8s)wBGύ<CV [/|T'<6L/\%mHUmݮW_`[Gp2u@h $Pyܧ0j+&UFq\rH@%1"s mdeJ lww)YId6 0({!#1 ӥjbHIci0]Y@,lCуtMȪD>{N:]wTHa+i*W,Q꜀2D3qt>3ǿOkz8铁ݙ w2<5{0ߞ[1i%Jd)cԞꚪc{'8 ti JhŠ+[EXqIIYZ~,8˂#sWA4ݨ:\Bh[Q/!Sc.MpT%+8V IHZME~r,emhP|@o$j ֦omuuPv^sp#3{E0͈wl^B.6[S >qFw`3 ܲH!WQD-ƺҡ`$R5M3iBq!؝a1Oc=}o| K)LS4 5GJG'BEic3 ЕcTk"fJX$ڣsU[u4৅j}B#RPdKIUẂhAc'+,?sA7PЈ */M41;t[A]S6,Y8A{?STy6(¬f.h;]1a/UA@U4C1SH&ZsǏ$"4O@;"V O$M0%*R:O3P}ICDsW&vo!_(֤L7: c8Ηl6 &3Z[7,Y6g BP8G~t.FݼoD;ZTL}9k#8ÑX=ŹCܙV"ܑjNvYI\ ڨr$Pgݐ;c]!*Ts7h7P?{si]}`:M2\NR t~ЕmNt 's{֮ [5_Lwh*a^6\ M%j~C ;jO7^#)-p0ZB\';>A/h/vqs$-LeS6V&ΟJ4fJ'IXY }D;wK̰%2N259KqW\-D)F@otZW[DjT3 \A uQO^z~}԰}(J2آxAʮ;.Jl8d'{Q1*ɫZK~GL,^X&O" q~!򢖠+9,_`eU>h.͹zvX{n@9%1Ӟg8EC-*RKH-Q-$GʙK7L4]?WN0?I?0,}67AuNgq# N:nH~X?›Eԧ!z#V[ʹF Z@i5$,`_P.߱m.&RjˀLaNz[Qs}F8il rM$]@W [\*<g$eǘ=jc@zC^^8/jnv!8eί/>1|3c_X*ќIu%VT̏|ڢ`M8R=F?-1^xWUE̘phЎ"PF~F/Fc#( aZenz61wq>e7PcoPI\rcd=~-G#nEՀʄ8(wNbLS(8(7 ]ȯNtT.iI`G4fqr.{!ؗ2w dW*^4Z4Y`@k=my!s`0@b8am1n6"BIt\NgL O3iʹ\uf֊!^)K%O&d-M i>#~X]Whl\t)Z6=nAtʲl[hJϰWS=ݰ@_dמpZK3*qBweLJIN'?TiD`鴚=` ݌u8:|ЭߟMQb)L>Lj@ L]JncaNic3򏆢ٽc4 t0"&tWP Yy aVB:k BaӇnCIz]'3饌,YZcߔ.ssKA;vCrΧk65HzMnLeG긜BrDY#]o ;Flqt)AygÕ\(B9 g lT.ړYv {`TF94 YvhοǙ_R;uZ nC2ymېrBM !IZ֒ *6>Ed9Ԅk7y:S 5`y}eg x@nr~z8?{`lyH5Z\V˲RgU@3,uÉ&oǫDzC!kdSC Q 8`Ag2x gL滆 QhFX]acGM2R;P:KYf5XJI2iexR&N(m˴Е"lu$hĩ0V#:|qӯ%6Rr6"eS^ /++vDfJZѐ)LF8# }ͷa9-(3dG*y7%ZцW2֍yŁ 9"cq!N>'jWֆu ]pO9zyxlV>9\ n0-+u#9`r@TM%ҏ/EYGn6W`1ߔE 6ڰtqڴl- 23`NYNE+C/Om{†}*Xm}E$G>QaJc"R՝!b#6BĸP夿C #!a ݏ"f6ӻ+h)]\1+ >7s:NT\ uiTYTsaP.·s==:*50lPjjW2qB~ H!гdwf%\sqiZa,PƦ1a6/KSu匾0z@9n"S Fav5G$g'4!Koޞd(,N"ߚ(6W Z>.mvÌ{ $0=Zߜb*Y,`>1I=~ԓ36DsH ŢO3wSUnp5`LɿK}G_tq tL)Dz7 UΧ}|J\l ͲNW4qAN+tg|h =:)AWsdž^ A^D[V6K?)Sv^P"@P ƾY}ս]l]DζG^ X?ɘ_ph/iB 壢趦E[ZחѾoDዧ)yȤBa6%~}C_hB?_;~ѽ [PEI8'-2n:l`a"z3" E#VU?ܚMnrsi=pPXy23AmnZ<:Z[jծ}LtxUUV` rY]%cސ2W&AQ( ^Nw()cB0SL|rd#!0 E^>=C)!T}{jxN|њM(v wtrK1rXn H_,>y-a ƭ jaB%םfI۰^un?uMqϗo'Ikx66S~-t5 l]ۯ;Cxch1zA/0%n 5iMsWxitIG2.J1ShC;:p*lHC:A5umJze!Z`*87VB^>M Cm7pccI8uXh]$,`Ջ ,\`jb60+.w_$'d4HZોL1s'^5 o3o$]޶Ad(4צ_YVENdeUGӈ)70j!Ae`;}_^ij-BIj#0~ v3mQG*:2UWttFyᘭ yFH}GtqjDn-.y~y"TpkS@MXN 8[Dbm{:+YIg=uF|j'?f7-,2>;6#6keܯ+2,* ~UV vDQ>TFLOvI9}W:i-=m. oJ-@UD;B^sq888I>OXQP'A³@n v|3AӅVV 4bE.)}ǬwR >{zx5M q>1 ܮqm< mGgQZ9V-/Z6@v9`ݡ1 @3ھ*{x~-V=!\{US1ŪΪ-(=vLC}( Ծ}Jkx~.P^k{ZNďĸxkR-#1P1@C 9$ U*یHYB3) /3m&)[ki0]X#3,^/ӚDl?r4%A+5{'p-zP+<(ڧ޸PXT~|=C 7lvf|H,>t$\5 y< ռr@ ɇ9HE,l*A+9Ҷ<}Z=V0ؐN\yTsjRӛI+]TM^/vs`M|LQL~U(psڭםȫ=nVaoG/"9P3XY}Y9#!xzuKGGAm`:1W0Ӧӆ ٘F~}Qv)P1l\bg0$|L^ER7v>¼*v˾},q)Nk} gf*?. e$DKOnrs0N @4ёs>K ^!*W6} CR#+]-X] 4l-lĬ~Lsw~ЭR,FoIBHiTɠڜh`HԫC أgIOy V8{̺⇟Α;=܎a7՞A杅>904߳ˑ%7tȕcRfpVKˉ{y]۝\ARʥ#qE~%!D FJ ێ4 '"y<`o4ƯAIƗ t=п(fWs[iλEg> Jcůk`W-]\y3!ݗXtT~:Dl\0swcOh:|[h_ &}fr@@ ¾$f6m^^kY_+"?ٷ jbJn/\dc!vw.ƢW]#ҠW9اZDQˡ,d+X*k"@w<|⡅zC  .1XR"|R5Zc,H'TvkK!TKq~TTLcUj&d2aCZCxH|Z ]i>V'yO#|wK~\w3D[&7)[9Ra]O ȊVc7FpO ypeX# Pĸsu,,M#rZ-<*a%7wc>.FQIHWx(xIIW<+~SNc'\в6Tj᫠--=Z X%c ( 304"eRhfCÈiHΞ荸jR uKIl!;t6q7^Uw$w,6>|.oZ(Q—)%Ey`bW/ 7}}"q {ų6 nC+@ 6: th$+I:*d0 B]ʼׯxƝdV\?~h,<}9G%9)r4RGT:GB.[(KD- v q\bY`^0q݇PR8BaV1UtuhSMeUF 6(* r*7VvVw5;m2c$$ׂڎ϶eSV?#Lee52 lRb24([֗ٺaۏ7&NSPA"K+; i'i o?2*@N\.lik1)&)(-*-J^zh_Jc\_3(_a9?n3*t3dcPeguv gݤuM'nױ3n:Ph{Z.WsFL<ҝ9ɋ?華ue"E0AD;G  qn ;PdfGG6bbRhK4%'aOBb!y ?8g!]`c8F"meB)ՠzLhǁi 2`p_4MiATgwZƯc~ %qDҟ:S hGfX O*wҙBecyo=Gc~ c1Ag,:<ᥛ(6r:dKQ?HNgA!G͈.-WڦHaQo*#$Bڟp& l*xI ov(?]PI\NGx:qv0[k8\8yRf^e2dPҟIZ s<@ K]@]0 T0}4VFF7M) ex>n3lcP+U:_' ?h-QI; t Ioe܁.O_|r$˨e GJ70(c4lL N+#X#yS^D RG|Pv呢Vԏ w!*:FKpך+UE~zvNUaÉs)F2 NlTZ@5f.D* ʅA׹yGO0򉵾!2ڲCxދJP¤8&/ qmLJ3vajfIĀ1[V{RW%9~65z.KaKӔ=ϟv!*$*AAUPG0'ۂ0 ((Б;=ń{g G7l"nz(Q CYzϻy+ˠ*dEdy1@)1JӧF3Z](5W]n9m>sDK^~2_-[WQA[_E 1de5UEHLt2ITck,hhtB], [ Še_q([\s;zhdHI:4REtia8bQ@sզ",L:T|tE,MIڕKŝ^  *NH~'a虎 B+l\tM >jg08cVj&E., {XRIW*yo&jIVk5ff#,}<%|\>{7R/ԼjG3IJאk5Wo.;#:a!wt]R32[ܵL02Lqn)kg׀w& !P40j@;e͘N?4q [,wΝEi_vf$bM8}ghBډO'6qQ Px ̯0{>HW iɍX 4ӘJp%֟`yˑıI+k c; >4D2ԗoUHsJi*e*Rt <ݤ@3Uggq#Z9dRМ;Ehb榠S@^M g^k/$`KZ5M^ 2X2i ÍsO_{Yt esrK5_(aj"(nhd(8a:6HN0?އ:#K`J( `YAOa+ R@kO=y|Q+f}ɗ;ZL&GѤpG/V1(dKO06vJZcIO| N{eVx5kS+̾Ѱ.pcg6Q>EJL-C_2ƛ 둺ީ%R=tb=`_vt (Q?+uwЫWlcYAI}8 .ǹQ m녢%z/h'&=,0K6dB:s`-q}?eL{hPw:ivI!Op(vїWvGɧ|If]B_Kgғu۪J]?q)ڢjFec_ bdDvWE1.zi&{6>4l>]NDܷ~/~:T/0F)@Y" _['UJ K{O5|Ɛr͔qgʪ(Y9(1>13v! m4euڮ"vƘ^czDzJUߨ~6Ts %K&rEV0d47g҇z^<Y}Й_^8|@zʁB k x3t|-qVOg'a-T"DPBN0Ns(fp.je+B klHX3+"eblY?]#LD[cs$!YҖU3A-l Uu+ 9Z mh@:_KG vtl!+gG,PN<:.FhV[XLF0)}vym)@vFQ=ж[:ξ*O=OgȢD%u{IuMAe<="͠Q0׺a]<:pIDL(C5Ft89L}>)w KNMjp ]+ U* aܷXr^U>cDHwr8)(BP̫vińX|(8;LDUGQ*A1 m\)H 9F PQljT.AmZ::*+H n,YD_3TXRuy-d¬KcA$㯋S6 &ypn&lON\G|T"P^`dUq-y>e2Áa ?\2'B\-"}䔞67ՖgA& *iKE!F tti,D?lPVnaS !Or׸d+Wj?\3*3o@[J u ?H2i4XZ3Ar6˪_HzI-Bjd A޵l&a tm==gߵ tou꜇Y=!;U5zr7WG-MM6aޖh=?Oo[%Zw"{z7hJ3RSZi>ޓA4`}+qyTn3e2K?/.E>s`#qxHaz#B-We(;jyI!%mp?V.jb'CNO=N1.w~\"Id x4xieܲ3aR*]7x}u|Ӌn_s̮6`ʚy3PoƟW{! 6b񐭲f2m.>Ksp5%%> ]<:"8G^I/µ2XoBEp4=E#;"jy}t|IsbPѫ@ss. ,K/Og`BIݛ^1p7 4yj=ّM#H 9eӌ6ղNR7hS5R^dyz,MβLQRp^wru}86u P@l]Y ! |:@mA#QJD 8C 4~tYO\(Ea#9yι5L]r/Zb*tfx'.({7t]ʩJxe~(mAq<_d)ᙇ۰1KCM_+c">9߲݇&M~,E'IPx p 8x$iW$ Y r,EwO79i\YR2^X=\~s(t|UY"[NlG8R&>CO:gʘ|a_W#R$7'Q)#~`[wj5Tmw*ynKywz `%[Fl.&@*cja`3mwUg/֬餛Dc?DfILj8"&K>+&SV'@Xhx5$aV6+9%)?P6;t:7 sW?m ̓?Oe"_O";f\F(@q[Y4Z8NrrJCdfaC&pfROQQ解HXaxX39%g @z\X=qnyKVC䘽d0}Vl{g zz"˶OŅ^(Ea8T"_ Pl i65Z\9Hx] 1I`wW>) qd?o qn:nM.0jNiSxgH\GÁd/1v&F7۠A!1VG/j[\8.|rmwc'&s"VrWugNolm+LmfN9RȘ&EI0I_S =郶oآ'DoҨ E@ TВV|0Rx~% RRщDE_<š.WNOܔ<*d m+Ĝ4E=x^ d6 C$+! Oʚ8?f?mUCyJbyh$OІ pR8;v۾U=@<2\=<Yj/ 5P)Ӑ]hM~bT4l̫>`f[˷'鵴:EQ].ѯOd 9nѿҚH {t6Gai~;}ajc&89ꚥDΫxR !IxHufeTkWhC|:(|': ʫxϑ)grڂHl`AѶ,5"D?h;qWӈ mup0_DhF,mi_D#6ZI4i2//2I{glnP]Ie&IKC:kJp'>Yĕr@Tk'^|~[Ha[{M˂>{zN&L iC8ln>NugfAZtbun$W 'Ug%ϺhMjv6G;BZ Y"!vaAH[ˏaːe mӼ &C˨H w2$8)aGs(-/*'N.n&vd}$CEwY$'k+X=dy !(< vcPs.pVѦD0eHZX?i^ eRQ~Z,CEA<>oٴ}#o;#gD3&$ X29dͽv 6S&1TF++֘`Ās.gBƿ8躟0L%{i',n 1?c:ooCե !0/8%#xɠ0uq|"anZ+c 1 a6O׀4H7pc{S がapٰЗu LBE0tP~);X2N8[ o]C ٲUE0""H2{Nd@"'m} dd(].p_7^(H]Ic٢+ٶ{FCȈL{ ^ejB8Wl>|2敖]i>cW `> =N%< +[e+R2t v:{LqDL<Cd>znԈɃuN*bsA\,*/ɣ_y_j[7{ɇ* PyS4‰0mAt(B O4"[:(D}0݀ ~3׼JnQ@&JÑt6ɧt“- -ЌS L Tšdѫ_(uG?"m2\,TqVf(mDdF0 xf1jX8Z NIwvn-eag[WzF sOcng4l^8~nSЋF9}q$`6\82 30Rq5''mq%]ߋb?k2F2P/LRE)JyK |Z3Z~x07Pƙ#J2Ztd+WHr*w&Ğ,XgÍ.6J9K8~< L'"PߪĖ8 c1HUj:Wv dQ ;y޿-7{$}gjH>䭎~zJ@]gMʫlNچ+mhGYYxGY`+W/͋GoYyDJrHR \6 HRUqnr+>Eߞ 䑢'׭?fZ_V"V!ã֖QZ,F[ʈL!V~Njͷe Q$\pgB'J ~yɡvyruuU(y;)++ℹel >I&@a:P;(˕G=C1dB?{[%/9b 4~0[ØPVモo!DQ`4 f-J!HihwńJ"hTs3.UF7_'G*݀{Y(Ӽ @&P){'#|I!wffb4Q~r^j1 Um X}n6Yv=-l#D CHFҀT2 &Gϼx~HO\ f{/;f\CJ-$Zi3~8ڟWL\\Z.]d ޲ -_hAEV=d̥׉z%>z ^lOU:oĘlC:VIM";w0Y7`֕_YCY ?,X71.sˀ0,¾mU)gWsFC~S {BtۤBО,f8Pd+z? Y jvf+]¨v*D"0;p ZEdB|z?Mל8$?l2 xBX;9&2^J8|!3([5+ҺD}E>4 *.]XǐzZ{Y>uGA&Al DNj-U]X1CHƕH- ^Eob ,z[LTz8$oEMIpާkH6Ye'|xmI`ht減pH#o;GQ%_Qʼ?w0kQZvDB3t?x _M-u-YJT ܚ:ue1ps)aY\rh YQّhf@UVNij+T^*|b'g$&D+ F5={^?q+D`+]`n)y#%8E`^H|k]0FZsb{]c]F[$.{ň.3 {m5!cSI[SE| ιbQ6ĐK we^/x˼/~i$qB&P/0sU`) |!%ÙA3\p.6G0`,?&k^Z*޾Lf(N1>_bݻu9;:TV>!T 3DIq&l[6ۙQ벨;SgڍS \5E-TG`E!04"P˹xjŏ vz%= 環 f,"@i\H-쥿cR ̯kfuӻ.1˜- 5zGH>"77؁rԣ[\33]8Q aN.t)݉D džቦ ^?AP:dP] 0kO_F|֟c3%њ_AhX YI *5٩fHT(,." YŎ Kys,c[ߜ,xJ>$^ ,8ڪ\``1Q`D"z4pYd_䀷riY3(0yiQ'8cyo/揦ԵsO«.jv(J$)fr8rВh^H&p{1s2]AEYXHtxANԆ[ނg\{fG& ? Bt{غa~_NK}y~6K K^sWuaKCmKtc ٣d'{ D4;e K}^bӱ BUď={6 6MwYm(w(}wvq&=D$Ćx?%PҧE1NFYL3&f`:5K7ގ;tbj*Hڶx3=*TW1WPU5*fwsDuf ,{NsϮ-COa}6HһK|l+eD߸"0t pEyW_|NS@tv¿ѾE :d@K|2&N݃{_.G "ƃ&H݌xsX5xɾA6#c0/aX^R=7J&ɏ%ևq{rP"s!w5O1Ώ.΀f/0"CA N2cb J| .ȎeL/ و~RPBMo*LaAI7ƩAoD72Ճ]B3UN$\bt 5TʝjN*$O鋭Ÿ.q%ZpiK)+nw~7ǿ}j6vVLtr\d)dp,m<ȫ=) C[7Yk-{5'Qkvmw71.PnS6w%b6 =L/]YP%Zt'>Zޚ*#簂n_J xb-̌Cb WeqCYgsv~xZlR0Qϙn-!yd>eK;,Sqb>ˍ~3`txL*a' F[⪢'1pBΝ:NMW;.2M#eAPo1?;;4^Kx۵i(rݾ@4hJՖ=IdBNo+|A<| 28icJcoo_$#&g=@?vgb__d*x3,p_x,GɁՆӶ AW(m^2dmF+/ts /6Kv<nd`Rk}8aQ"B:a|&싚#5.lNa B`+Ni>U2o&R>D$ ;. V)—#0Ve$Ed޻9]E7^ɓWfp:,Wz$x:eX*N-a\5?Bm,i5k*bb2nӸ("+%r4CwiC@{\tƏN YHG|3XVc-`ɓ/3^N{5S<_8q3rAX&v K2RE)a *wиa=۫sjVWYGuV9@˭xI(3[X{Fuv*vT_1Jb2#HѶ>Tѹb#(*!CD遲nO&r)Imwp~< q>A ty~̀PD&NPicn#'dS%ε8SH1zRt惖ques[䎓fފۇc H[o-aфJḄ䑖"0r B(iQ yJ eSFa>\8I{a6|* O\Ř i-] Z͊1|kix]3`?t BM_wXכ`2H\dCQlN+;VR1 x3-jmz{є1|j$<f}ld-++Hv͊Go@&z.\܄XFɵ{wCjX *ǻ&gAyݐwh+BњibKsNGo3ck_ڃq'>)±= ސ+^$(Q\& h^ڧv\}?(94+QX+?yE}u/!ϸb |yeuqWfw[i Q/w_( fJKƨ7}4x 0,̶6X59qfZ9x>]ZѬ9s,q27Qq9'bFCW'9{# bK~a=&RUG>R$bORbΤ(M/\ATQ`Y&Rڣ4Te<%jV?PAN/ƗB }~gIg%"*lnoscaHkcw_ѓbr$&<0ߖxFi@j~G8P Uusg_R:-xc'F{A1q10'a۵Ip4. Iҕ.EAl%[OnK4O HY{NFi3⎯?NjѼdֳ}0/2 @;E{U#uG?UQmkKB%/eJWBq={ =G1uοf5^㨮@5_ {OMspa'\PӮ/.&wK/|.:ZJT$5)vs ^y<[z44Jm7| "\6sn%%K+4ø~;ó0c'UC)+Rzѳ\׋ѿQe~x3ثv1,ODw>pm6@ЫWoh&[:M;ؒu4ެĥ􎑿TyF0ԛM<+F7޳ uTոd,- ޗ5o%J$#vB1}(9ljm|/ FɠX'-7IYe \kb*FjsxOLhcV4hoT|"J4I|8HCU.2 &iTݜf\H&H5kyϟQU$d"cSȟA!q*- XPe*I$ J݈Cpr*Cr (0ӫw#<@z|"H?K ofuB s↷KrN~2y?n0I^zOd fuUU X- ?WM` 4Wjplix{Nc .=^Z>}G4[vy+1?> (1#_RuԺB y-<~9OamG0N`+ΐτ," CQondU+'ODqPLrvonH:V}N`EYFNYI0rin[jh~ J#Kiyu;^W>E;{(͊Yk[~hȋ^;nM?'kAB- ~^l'C|oyt[I0lHuXYEӶzxM;m3GxPhD~v oFQ>d.*9pAj)q\K=jKAWmX9=eT8\#ŗ5wfȉu{RVЩ~H'nAXӘ,Pgl9:`u)4i >w(]?'т|Gj~_XW8@(<\ZӍtn-->ڛ mӅ/G#$F搕kV^ Z4g),*5͏!ŗ#1t7Fkӱ_'ق'zLLy)oEq]؅`D wMͶ8[O,/\0Ws1:>:E=d?Z\40MhثpMF$$@U0!4xSm}QoxsaXC=l.zSEԭ)/Qݑj!dI|[ޔEd3ەJ )ZzNUxf/Kk'gENaDNl 1=dr,D=fM:H^UC[*:!_\Vt9_ف6#yuۭN)anByU# #a*%tC^e{u=H=LVr͐Ŏԏ8Q)A3o W%~9 I7@ LUf%a*0F.5sT:}SHݷ퐷s/T)쩇W✃q/@/ K!Ƣ^[`\A \?O``Nl@?)R?2;7a24yg c V"S?+pnwtKt^B^pY%oRWV's)#o9q/u&۪;EnLF{u7%Y/%];X|%Z"143buAF K28>| @pܖ V$0[,"!iVWel齩ŃSx HƊK8J7Y)wѳG'=PvjXπE4p!hӧS@^pGEAwO P> X pVJyA䍌i /#V5gAv jTQcLl*43pQ ߇o\ߺ\d5"[9]=O~j,ɤgt hRz(4R, ~fqQں-PE-'laPSbF@1ڽiҷ}_w!3ŹL.%}).@5ox Q^kF Zɢ-nTR$jRw(.Nm/)KR Z]/V+u-!A69 >p':pzcUI4jIAqsW FHo]=k ABNX⊜<֒|Iu_WzFcmr? "7k[Y $8'tmE D&|O'@.8w]? "</S ǻ^ijf!8BnDnbC4L*_5fab4A=wR UEHdn6ض+k #,A&se'7OGXx,eFcQ9R iӋjeCxvwNq 1J6'2} F(p앋Uu֒h#n1t73M4顇GS`e+?{ si2mP_@夰ApB6!+81>\p| #-T0 yjd'>7 =gdl:6ޡ!=8ݺ W{S \e/|w7nN)~ j 鞶\@BWº Ku pWt7io?1dj7 V^Cb/eq79RӒYX(e(Xv ?NczwƁ:c54BUJ8i < 3kXJh*J_c2y],7ۜ|@O#\Ɲ5يá!zq!6ޮr/mV C#ubsed߼eʞ;XlP yi ⛸+'k :_v(ʋ2qDĨh=7.\KivjZ]>;'u/0!,7@ yhIj+B2}@XC^8[FB^V@=pn һiiR* l̙љ;ƍ us8Q5s~Śv.sq^>BaR1 GlZhB,{Beeʕz'zur!(l;x? Hv;S' ^i1n]e,]Nn8(;MP׮jYr"H1NR{Ŋ+.N*GAnLD8)pł~ rk4L|nS5 Ax$/kД K=1e8kmKJ,J$`RR$#.b'Z Ԡ4 ޅgͼ*R[b :c'FJKf5撑_Źnxc/_qFt{evǰl^G [GܡJW=0q)%!;L;!C (os}Ћ zg#0?µA4WT(bB "f_}˹oN rLF#Bg%z}u̡f:єNڻPAW;X {@RΈT iS!|*UJ|wIr,@w !0;grUB+1$Al7RyPAV)zӤ2n7,8R+V?fȘ6dȿn\rSnOJx |4S^qf0M]f\b'}WhR#'lw?j +F f+|g'ɆI'\$a އ fXM ^\_? .BLjZ4Y9QnNl'2hE" ݜgN?|z$l'pp8|w!!l7l`yL)qwaNXbL8} > CqTN,d`4k?*=fjW)ka!r-RҬxrA5kVn@bvBf`z"la2Mz=! t z2l?TujcХݮ"4 Vџ#_iqUeSrJ/_ӑƥj.ʝļ˽O C9pbou@#Hj\w=;okx00ڀxVd;5mU.PN$@~d^·P䑍2lIbG^ۥYC^>uND0xөȋ 5}a-î0ߴPuܞ$&ܶ\v~[Tˏ:X}wpaM61ᖄ.!3WHhJ_C!~ @;59 !PM4;hw[b,1ݚV}GxɓSXoa0g"*-Nû $GvA M_/6#uż®G[)(wVĒl7 ?6UaB[(K7*n7F H8/w%탐Hϓ*_"uMg[GSl{ڊ2Tl!O_%#D_sGoUL4to}p8/u/pL '/y6WЯ}Z0ǽT-}Pq_8`UD&Y?b/(0λ!Tbľ G+(wǕ祙a?M t%Xsr2Qhai+ FEsH\!Sw>IϺ:bif WliISwk5v:Pm,n`HTu:J|N )*PȘP5٢&~Q{I *eɳңERi5$h@ԃ. 64 w\~jWVkQ,۞/{ݽUi@"Jn+Pw,^>5v:yM&zdLr0]:-"i&^ e?OVB<c p9O{|a iQKnۦ g)4F7ӹOto/ICSs>Oр?`̙# 6lO5r QJ;RC?%_5Vy ۖd[`m ӧ/wwye{b_}k1H @FVo; n"55?-L#]saG@B ?U\<)зd@vP}* ]ϑ%{x$F尬^N+a$+J X2$F%V JK<9~,^O oFF+RZf!Z$(v |'4=9 (wtwq _k ͽÄShXO ;a,&㴊<56gFϱ\&JMcZal=MA$.!lNﶫ{hXTְ65 CED_מTJ/S|rv{Zwx4QÚ!egHw-w8JX/nJ^.W$ߧOa xQE[мkWL=DlT%Ksx&OֿMQ%5'sQ͉Y`5,x_Q5*&>/q8wTd@;zk4CGV)!ڑ%Y2IhxWr{x^E| # ]9٣Tv$ᴏ%)k D\˞tr\_|і)Tw* e Ŝ?:_.Q#sF0::l>Ε1R,Jcih)&e J]uAUSRUU嵕-iBݯjV=WT]1*oMH/gU<ySbΎ͊"> abm)~-6b2aF> K̔JYbZ3YeT,jMC4eptwQR@|0 h0!k>V 7#O&4)#Gcq|k+iˋ`;'ep Z{y uP0gݏr7_1i!݇Ƕ)%*z s $2Uշ ԃ)S3r669a3cǓʑ{ M/ߝy%l/|c :>5DB1M]:V6- !cfj )pr?ZI8M\D J|s L>/xv$'5pNaeFPtfXX\@eRh o킃~"~7\ׇw()ҚπݵhКHAܩH'$TҘ*NZ?0n7JfS*G= -vD(O:Th1+4 c5 Iiwa#r42{vÚrmIbty.(WJۺdeԖ܏Jy sPB%,ok{J_v26 Ƹx=z[IwLɿ !.{^n1z,v %MMd y+o'Od&E$hMiNg'=$}BcUJϐ|o8a}Su8[e8 ,B!/IwD )"糬%D]B7-&X}fs<<)5J ?m(qql{GK78 RQ'ݡ@[(Jv_#seqf?<|b68]@GnͶ6WNlT,c'9m(_5º^[jRIvކ˟MTwS)H%E4dX=~Cy0_\?r޾9284캼a_e0G|H׫HGV#PONZV7@e qb`"]znV.'✇n1v)h,`U?*m4EXiH2vWuQ߸܇+&ڠ5 쐑` Ew"o顤)=6OӅ$pb-p#] Xf%I`(m 8RB_Blwo_(`1L6f}OΊ47A#<쬓^Bɡ*drk3BxRGޒ?xEqvH Y?EfŦ$ɋ>s'Yr*Dw#e,c1 S,0vSY,DB=32י{ R];z(6ZdTeͷ P2kϯn2!w#[Y P ;w?Di>$e`7jy.r%wS=!/)k1$ă R=T f8Y79XYl8N8u=6~AC4oVf )d!Er$w+W4s'>$|M2Yt,ʤb+bU  NNy7JTQoR&|P"*rx@\OT{@MM5ƃ { [3t.Y ~&r2<@1[gy!b@"7V}K6hR!S|p"Vp?TsF?d ^4Q˄Hoy[Taw: maZC  V ,'/U^Y=ܫf.r}R?MݝSëe[!}{t)$0$Yڱ>*lENrʫ ;ə. ]tHhϿF !yK4/p]1IAzPdԢ~C#C"xvv6[-  IUbHD̯ܳ)1~D~;v>W9CιNgRf#FY,|SVb=c!F;eLSxg+ވVEnvxZִ*"]xZ׃Sq,H(v(>FcQ3SUP 1@ f\,p m::B@8_Lx{>>ŒDyqގ+JUT9%auU/1Q] ,;4+[*p`V!a&9ef966P. x3鷠>/>o&9Ƣ9#;v3x*xEh`̖0?5>-~PNt$b2ZGswE\X7E]QCufzv> Dp6A`|m: 0hPxt"徰J5nfF.5IqIseL0y4h/nVz~J+}̦O%ܯ5M k m5;GUOn{ #>uc8R)P離n.. of~V-]GE:048S(f"dFX9qH~ h)仒ʷˬ,Ch,u%L:0[gPaՠk콎Kq*%ݬ\ Lؼ~!]>wWso,O/ECQh1w<lq_`XIVxaoj7 t>w*:¿ #4h_@J7bT8L[Tl`7>Rf޻A54>&]{W#=`NHś 6Z7PK #Mؼ>2?~ZȅfiagvRxQr)(IAxAu&Z5רIAGCRRTM2?= 73H>RO' 1UyA9 ]kTQ)1l׼o]<8!4.Maթ%Cl H.v3\8s̋ډ"UE? EM247.$V_z"@28[6ŘZ%RެGx׋R_z.Z4ܔO߹,\(Fz$!VG*bHLWR nq20p8G .g28Ej5sPN0HV?Jks8OWߔ[]]OGt&{ ?\x2Anj`>Z.7łhEɉl~FM<l>&a=;(Yf[[Ҹ\fcB HT8.eLvr!/*Nwڣ_6oW %XVPUif~M0̃}=#X ﺹJOsQf qޮ~ n (lBFI~`UdwU;nn;̷7qJ_#}- u>ۉTv >jK(.OR{K=78l@ x{܀$\G'_DuMkw]ɟXz(v(ki`~6 -ؼp"#Cā4/~NAf3_pJ.T@b~ag UvO@J|:ͶL3^yeIo2 41ܤU+a{G^ M(YFFωoFBu߰~U݃ߎBJ4%S`o32!9a#ԁ֍|sŹ~c'zGzjTሁquqE:Q_` I4!olUWr=afN.KvB?SD܍фjY3ʌn8B3Z_|V];(n:K{Web\AK(O#tő< (S.[ ޹DhJP$sg_ `RUQeU8aIRuќZI. e9:/չT. XX4з^t.wUl2l&  t!{/NO/دڬfJhwVk%M>dl]jt%_!}uIV5ƕ)nLJl/BZ$(,KIܱ_tO^O/"hG2~ +F[UHWU]=^/¸@²{*y(}<;#01/H-a7=!V3&{U Ѻ;Z$^$b[g3a?XNqhٗԚ0;lk-s%MzA|ռp5R@ R@EaZ^{YQkYހEﶴ7:(A.=>_cwR@۞$5 J;5B;#;XF~y'BS/8'+HBץT kqVEz._{& 5 >=־8F5tzP2P 3ZJRqSV,ERoUڀZՂҭ]K}Ң`x xz7&@wsͧШ\aěe x ?n3XM%Ƨ:!Law fqm*@Sb@j\9A}Z(u>1 w[I L٨G^t& V]oE\I("(\3.,KcSRvc.ܠ"ư_cGXٹ(JD)==P~V]?Rٸ^bP"<3u6 @aQgg`o4ig}֟~Hߺx?IEA%F=j]Dn<17,Z)қ'gFPP @7P)ʓ-4cqYFncH腰.~D J'BdtV%2mkz?:/.fPW\Y~[⛚T\%t2%4Vqlgb-Zv3{8ISck,eQZ+u}9K}Rtdz/ iC!o>W%@HxQvV~(s8םsgJt IPrҐf#V:XGPCKkM55L%6[EFl0JOF=,+ĵ̲ݻ<,I+ , Egm&u@/p?gd;B 'Z zp )pr<8k6Yv12Vp@0A`B@JP_/`RLU$閏b& 6vpR 3+Dk&=:?ތ`4:-6\.HGPbԬ+p;PW|Rj^KU|ư\(qΊ9[DjkHbU.$C3gylN >"d QN,T کJ[$ 4O:)EnNr, :uZin||vcDb4}ɠUFОECFiteoxP2q3|=2E#Az崝S~{JwE@&8j3x^'<'Q 7=^fN3.ޗs ?H5D:#mX#'`> @dfNRrܫDIKZP4e L5lEI)_@j.e$NM+}]}>(W[>Fq|2-Bn@h0{|7]|i!ʾ:^r 5{ߗ~lpt [JؐwP<܎gpa+Pcq毙LBO5A^~VCZavYѪJiTcd{RGoAԁmdgu{XÛ}A- kFHdB!gZ{l5vlt¡YM[Uyv~$WI \ RWdzЗVX 9Ci_~Q֎Wy(0,xAW0;U3DuyM߿)H 4[6 N|hjl}s/^6#>ݰd'L-C%=X$z{y:P_lx"vl r@N?"z0v78e2c8mRN!-z'o\$ެөs?b,+ig2"lq4%NE'R^~/ۤ6{CQQ\9=v&NB)="X Cf43]!OhTH'ĩ28嶕T׭Aރ%S` BNmDBmNyd LqǍ)#> ;dҿfc݁&L՝lf;Q 補^xV/Y0ve?kj*zV ft!8 $Pw^4e7S<e(x cH-ov50Zʒ-[)5+ *Y`'yֿu3]Ic "!VDC}5F ]I I}$ty,g_ !G[S!gpl\_o zjcz;[ifxj1 ʞ-rإg wۊF +oXs,(ϬB==J#ǘ(e %71v܇4U(1I)|i)`<(AHs Ħ|NRVzyO[OeʩShl ~4~)!/82ԣzWkLW9"#rs6neMƯp 1+.ǽ`_voRRcHN_TjI0M/]H&2׻Lݦ.?6D(['pPc$!}C+^P_C;žS#YAB)?Lj-o9:/,*e|]' GV4p_,J-d d̹XIfk*c辠D{Wӹ A^3Kxr 3¿i6߂|F8>e$&-ͨTv_2ݬnчF*{I.R 昕$;E/6LhI3ANo\ N:N&1sI3A- ld`6 jQiSFgiaˡJiE,PoJ頿,Yx]3d.Td )=NĈ3Yكg K,nVf Aw^,tA,fX?"Q3Dn/@Ћ~ G*F6j+Cœ[DB8=?j+c<*<dž]B/,nQv]WKހ_BYD _d1!tQ=:W%m !,f>6hIGUN3Q?>LD1[?~K7j8YKK#f5$+Fè _T I~w\# G7yв9KJaoN!s@}$Tx/V|.UݲZܘb8IK $-8~/8wxL.4) > %LdifEB FխmsҖu~pL;BŲޙV$+$  %Pͥ#6{#!b&5^BΏgA?? HW䌅D'2ԡёu5BJ qԲD\|.ɷR(G;up}, (ѿ0, k1 bymZ¹ipdޭ yh!&WHz fzٕ̃Uqcd;P[LV580Ӕu^Bzhq??w+*]?pՎn BVV5NZ2m(j1Fis;Vsujb]}7=27,aGvsoC蛕Hۦs;cH9bMA`)rBzU?}d:JWs4BEKkz*k}2r{Udwz޳\xqEp7WݫzKV?B9#U Vo\Su,O|Qm^#iƒL2D &M;F=Eyb]//U' 8>Ky5(ʀVQtG2?Ulh|}|Ir!\Q̇g{{qџ7x oCNdgוܿam}%y "3unݤ6Dv>$CI)\@-hς(:h5k@IAq6}r11?|훪@0RCm'܋)$!{A{#H"BɢkqEqUgZh&3Y|}1gT%a( 8ϡDGw5[:g J$HύF270UMަk9;^^ 'A)UiiB :ڌ<\-ת2j"&@ >: ܬw!8RpB 0׬H * }Rj2uJ))dq2TBFǙ4_ŋAg[Kz:5|M^H1j^B/pхrꞅ pp/WGp? [onhw!BKO-NBW'V PgFB|Se4sJ8+|V`ߐ"_S,N#dWWUriC m,>XolcfY`M&R.ŝ?*4Z'ew7&[=) A+k6]6ΧL6+PSwv U;e'_D߈nߵ1C<"dܘ_$l)čяw}"WXP{ *U `,ʖGdI'ae._Y AYO$B*ctk ZQ $]4M_e/ So)P/^fxl6K({V|zcVL@#kM}|n? J`1\#_8)~LC Slcr`b7% HW*?YîF'nN, Ģ_xֺgT3 &9fAZ?Gr'4}Mj.2t4 s ?1J>$_àJ A''d=*'.&s痕j@Өtͩ䠇X6)~O;/Qnbj.Q\ky{NHP=DsK OI_KHtN+W1␪4J!*#m @y> svpiAԉx6 M֖˓n& ><๫(tix=L7ф~qZzx*`gx`->ln~̨Vy'=sD 7FiHYג1?13)G׷*J6^ M`!$It-8= auK9VzdTpx儜 {"n35&[In_ +,ׄ'lV'3fq21|'Qq 4dT)3 W#T&&]a5zW"e|jr)s/^D菒'u4Mus8rE_d>_BsUuWVW&lX(9Iwâh'`-4rZ.56Dmx{큒ݒvȊF(ڶVgpD_R ]u/.ہ@/㷚z;SztUpUCGP/O6Xi+\K)O~#kS e[5"0SBhn3hC{zS;.!z1E>l dw6_΀eG5 |ǟCdS&9>93z5]mhjz._ q,Rk Meb8V;ͭͶMDL N^t:/A/Zրӡ`D]'/_5VgƲr"!lH``t{:)щ*29J)RNGK'gy_.FCo}exU/t'' 6⭃0`\wtyv [ @ҽ5 [Ey朦R#Ofϗ%%6Y)_h!ƶ04|}qR@S ;U3(]h=B#&WFrw=d\~g҃&2GC0%٫9}\jDΌfψ9>KN (^b81$5+/΀'NYPJ x>տq]$terAK?-#75rP $B^%SS&/aKAԏ;5~0 9Qiѥ䎠>>fe |NS,9(vֳhr!@U9t$9!O)N^]y ]%1` cO~vwu6*w.2ҍy܄7LcQWP'75oPtO{Hdf&4э PK^>Qv~A5U(o8V !Mr$gat<+6mAU)]yxU5BgEOno30x&$zMCD^a*~VoY<^`3|1 _ ]Baܖܯ'zX/R!mpjF{y73+Fxڟq@K3Yя\C)QQ%\K9FJX,af,zvE$M~Pȸs7Wôc!;/\ LE \Uf-y_nm?z+D@ԕ̓9$I9#l^!o]1ZC(ǭ<ʹYHyA-=?mOg1bJa94lLE ֎½I {[Bij a` I:{@gZԩMWYgg7A=tE:VUěO]L5orU읦i w0}ܣ9hyèDk,^pW-`BL)FSV`8 7CmfY!yOb?r;NN5>$yMbEfmA7_l. ̭!J_\c d t3u,^D#MͲ} y`eagFwqTMhSeXd\-?B(-6ebsUSN'+&#g^*ZV.erx`I^Tu7?h׌ʉ9i,lUj̛IHٿ:~/QpGeg ;uopd:Ф#&jY\y? e-f_f6֑e"k=R>r4RZZ9\_Wu>Y) *͢xHr1>$WP&ğT|'o{ID-{yהXAJq?kg-CՃaT2vL9A 0EA:_%}_nTi X0T{1ir "kxlD2Z|跿y *Aـs"\ Al-z5s|DM|H Ok ,_4;T rW#: ^Q>? IM̅D@{=TPNg|wl YE.}ɘ#']BX+yأІƢWܓ݄^9Gq%}^ڪ-#5g&Py4J eX:졥H_{:n  UXʀ 3f͂4°rk36#Գ5oS 2Zk hzxaJkO)7^j奬:8/n縒RͦI:K'ecgZZFH)i8>a[6+BT7E`’p/"{(K|CR˕cҌBܸb{o?ۑ osd8kH5?p~m0crT leàz >2M:Ļٵꗙy?|6_=YW%vg$XXm JPL.Q3{չ_`yvswL'OܱT{r8a5KA~*qkΪ@/WTMp.!Hro϶qQ{*i?ːkN|-8#=e ؂[? J סz@NDO*Ƀ&٤Sf;4)]CՄtЧ 60ϋ 9)yֳY#Vc#*  ')y4R 5DE!^Q/Cۺg;+*"Ǚ!Chף*1 >:N"J 7cQ#Im ̋}v|z?2鯡>dPX pm>n60X7W! OB4twN0i m}X<Z%LNŜHߎ/.4r=WW/#3i P& ϖcge,4"9Q|1΋5౎zƪOI(:U=ek'֪Bߤo8Ћ6 lXAw F/'sf+?];ߘ-r# fiqt3k" Y}DG?`V84ըMxJH sK~# FD ^^8t%_^cє)ou.O+љ5Ipb"҃Ϲ6qԜgıE;S1$=NqNlD"ZiA_mϖNK.>zM\ WRLN{kԛ6<]'RIcՈ.9Gq@[C.E͇a餝T+26+M;}VBgC+'mZu1_E)3 P)mŵ -ڴ2 \xKLuT.c`PU<%V9U1 vj)=_N@gw?jDv_ :ebem J u1 V![tOʇ4-ЮM`9X…*֒+l#ՀL+:u<-9q`2{/^6YYͬ[V_x ^Y0k*N:ŜV+#)o$s!A{n(W=s.Bt$nj(R' ao)1x"%B~h} 4Y16؝ nq}"CJ ?cȉT!f]AB N^RIqJˊhlF6\yX:"fˡ#Qig؊}kuښ|4c|u HЇRc''P2$XS&MJFEy̡m0~^sXDK*J p: s*mGhmU5-FohU/FFq+ U(½ ZTm~b#nbAc~1'{߹sZD9~R0ź ~,E9m?]b\'}}(1eQ+**>Nqۼ|EdJFgLz Ys֕:0LX`;fxc@ʳ u38ה·6(,_+y!OHZ28ab4߈d0tSqxӍovArǙC Ag(T"g9OFEЌ#U4U)/DM))Rc: zY*:8,KTF kH+,gOS>%%sx%[q'U_qF0Ψ3w]_<&w$M ql0cd@vM<)}i?_^-.,[?_0ʈ/#e!tC0a/R,N/GK闡Ni7qbR26kg%@q泅V`k?7I}ҥ q-d gaĶ}2vpi㧣zH&]U/lPe l=>he_ k/Bv(^;|6=Ze}V)ģWl[vk^}+Pk&(72^Tdp:a1|gLMJ2w]Ts@~TX&SŲL>I^U O!ʺ;BeO~qQ4Is˘bZYJ!>뤚QbR`g򌟎TBn# `% "CYg~e;oSNϋh[wG9`z:f _J#ň-mU (-8ȇ+b:dO~nX_FyWoEO+um{UG8 |>O p-ygCJ~Eå\d(P HSpn}tm L hd!XU EoҭI-Yʬxԅ^4 `{RӐضx6&$lنվ1$71ȑm28 ~nCU?@nEJ@dB>Qzv)Ĥ\5ğ)Ŏq1$gՎs{\5-.F;-^ZgϾR؎*x}kFD.؜υbb7U~g,gt.QNuZ.6_LZLfWPn&!cY/\C T^i>e+.;dObiOtbo!T. ZI^ 0sLD5w^W] `o?5*'MgpKD]*j1=VU<|V‰]^_{8AlHIڽ,kbCYZx`uN'ٝ,#h,wߍl Ļ9hׄ .r|@]2EtaԻVj gӢlKXO?zC Oħ+w\ ߸=# og}5XP,F 6 ؃8o ԙf'h9nU.LHen`ö  C8z)5m}%ʔ4/tt)[9l@9[H7RO5W4p`HC84h !4̤ŰܴL,OMbN1壢7qlViZhЮTGdJ8S+ʷe'1ԮUYM;?e-{Yr[y&-du"bc^ˎOhDXmz2I F]#0ƧA n!DR"ݹ[$4#Էě?L_jgQ ITÍcS8pAÞy"p1ԿL!woq*/o?`anb1 kdzdghhܽ+IcJ7@bn0BW"&lʋ=<(u찕T!CzMӴE~B+6MeM{os+}J&ፑ}Gg@T׳ϟU7&јLqCz%55\ vMiy%7v_:OATS>ݜxT]!}}y Rp=v; /F#i|^x3h)i=T,$ ļK F" =[AIх6NP#u6 dKbDˤQ=~͓U,Ћsa?K$9~wPeCyQ6@ >@Dx".w8! &6q$،ŰA`EZr4nػ ވ&10Εf;3)QO)&Nd$؈;BQH`vR`w|8_ >` P(YAYg8@"92v4A" <+i?\lTaZ.`d[<>\~x^O6YV'-NإȜ0ډZM`1VPh G DV\tO*%h#>;SX@ ".Koe eOL3U2z |d? h'3~-'?@ę\0\ 8@YOPDjI$ymq`Jl$H,PؓnX yهdX6/fxy/҈U4m+PWV,]jSY5NAJ! CdVvo tl"X.ޒ#y9Ƅ<6 #cVpj @T}{,̣8f/<2d NU8 jk/b-s@SlfOZ;cs dysk"Jkאh}f_ ^v6{y@xBR Nb+6i v^ a]v˃yƩɴ` تl2NğX_otB*eD6SSo*\I5!`@L#oŒw]#bv0I7+aY$ZB&Rxъ8R 3MmqQda y\ڝߦOt}{a#K@\i"vB~c^y48 m-)s9ME"4@(0 ^UDw)蔁eD@^zT,F{ Wg4nN*2 l~_. x8Hܔ\@pw˾DW>rřVso=Vˣz ~4ַt Uy+ZvrUsIN2sHD%G?NepEi? Y3BO@[ 1k~娊wQ%Tʖy"9G.mjd O+XJU\XF?q5l)\a({ߜ2Rrrȇo`K<,̅-r&56}:/ Rx2A;묚}iAtaK*UtdKz192K̕%O=S|SHS`l&%{KҦS>Tmy@B[›kĴ4-8 4/pEQIՠmF,ρnP{cTnDS`7g&_g/I[|b"nƚՁA-\>N#%3'RyrѝaC/"=mѐ :pε95H@ \O'TtWT~{2ݥƲNh{ ؄sBx5WTaہJ% BOSd΄ 6_ \cK0(INTy:zVlJZ1ntl{맷#>Smx_ew DJgM&vL~[< P㴗>,?.P^8>4%5`!7pU2{L六Bj&KrsaL+j߀-v>' P]CS} MV/_MJCG1SSU3 Puf[\0d$|!GIڞZ.C,c'F$`1h0*>Vg^ , ďT@;(h8AbH uᬧQ]d󮡯oK2UC{ZtT~g~mB~ʖ,ݕsb9ӥeLK %!P6m_4?Ո`H5ޥ+>/ސ RTc[O0Z Wuo5lA-x<۬Nk%͉K7J<-YoJ"/ăάdjJd<ԒG}BƢ~zu(rnS\7?a1v6?VmUPAvjotɛ}C,!{*AMH`&&>XR?֑K!n ([a6"mIVKX:H^R2l;vp̬ Sg#BHtTǝNIΩ hU(DNQ]v8~ӞPlg F +uܹt"Iڷ㮸;[)}*sN+T)Y'j5/ kr%f+c}zcůW%i` `&" ̼^~-;ri;[Vb6t.{r5OVߺwHm45# [1ߢ^W<) ÷!ióST0KyY%ZI%|81e;=EP+A LYZ uzlR5:,F2+7Q~H=>FTi\1\kq/ȄxG릡րJiA$Mnb g1m&HE7UzSK[,!,a[ Ρ-:>4 tZ vPĽ6al8gCN~]V[Fm=7e9ə@{st1IrI<*)l` /j:,.jYDJ>+Ma61 Z' 'wVfMRNc-C2q ҿNdǀ ^L9CT1:n/Iz48ߐ"rW6_DOɿ}<-;~1ON/xo)-ڑJXEEZm78[SRsm8,/rd! Qew * t(!y.d2bĞkI l^"E{xөP;oElx$t-!Od?_繮j!5UB3j$R l5*I ċ01۞u+9;`z-C;#EC {9n_`rzam&IF݋I5Y FA=#Ӹv۱HRlx$MK=LmIT/!Q-HЉ 3z|)c: &^pzPQB4٪4B^;1bXRƊ[%1%S{MEl@¦%jYBx.VؐD6YYz$D?OعY@M:ksi}PY( '"9 C[L &eZY*U[ #WM9\Ͻ6D #ے&]nżKTeգ7!R&3ʝ9nTӍ> K}'20lp~뫞5-^V#_[{ntVP. ʼ߬كt26cg5|Dx74/}Wj* 1Ob앀,DQПq!vjXe*o 橦*vD}a5?(ЫMYMBlq}~jׇ4 %7?xU@N .Y۔F)vP=+RDQ"VFu^ Ż1r|WQ> x鱜hyAo =^7e\ aY#D+a\\ Ҏm\g ;ja WMNm%lxi]d~>!g߆nJ2̟0^4 $O#mR/IR\ '2hSzeӝK^4IFf{nsQ4[{!zİ =ΝL|"]M6_4FE#,c70b"[DɃpq(Qe˨'73ӿ Ţܨk>(2jOk Oel+zTZҨAt|M0o3d?fjLX67@3QǬd.A0ڄ2E܀.$]y+(5?Um,b m-m<8,ݬ9vi"~l%,H%{K@W#qfANa^K<5>˭Z/_6uUֈz.:,VcǨqC@\Su@WCPyPȺ Orϒ黢%DxSnZs-[a-0eֲz^ߖW$K%Hxŀxæ =N@lJ<^[iw2!^]gkzIȍoS_li}%{8-8)U:1ǽ| h(a<*TiƑh}`1dDVĮ%L"HqV %FmEt MQV%z'腲#'a].]hH:]Ȯc%a::)(՝ \:teQu3|\P1j%L6 WWja6)8SxLߙ|`\XZ6X !NЃG +v]T N軘bc@?qfX8JOI%ڈ,)%'o*U2cʘ(A\RCuk06߈\-ν<^/]]2şO%TYݧiǯ&d ;OK{VL|-t RL%؝ddU љ5("BJj̔ zsN^Q{~e~=yj|G\W`fG% 0"xNXg@6Y7Je_90AԜY0l@ؠ5vULrqAoԚbDW,59 k𥁯;TRzs$uX!^єZ8Ԇbu4ݐL^O~V`,su;^αp XWa ۦ`IlLG7GZL t][T{F W*&)SCJY[.邭 ٨e|ﯜ?9*85lͷΜ0lȐfOHl3:TazWN*L,=pNb!ƳI 䛶g[-S"& x(uk|#eֆ"~'b4o&1HodYa286U!(:Vzs"}8vNǿ0EEstW[VY2aw3'8l91@QоψǞ. ٟ/uA*36<# 7ln(3QZl|CzWRGƇW׮@Odꂀ<9lN$ \ dEҷΚ}ߞnBirdVFJuD h+XDMe薰V\Dwi҄8ߨZޫ #`$i4<mF$#A /7,iKiUYQ##3"VY մ5E~\E^`Ȩ۵hf5nK'L[s C=O@*HVTF&j$i&wE(ۂ1Fv69\U%ip 6K'CqitDhDGGPLyN(l WmfdVc9!E^F|QsuӔX>jZPxm=Q}I/1*1B N3f# h*GVX~3N%dYg&.WeK{i<FZqQˡ+?e/\ԁ7ǔU/ Snv˷+έcr|1M6; B{{W!rI/p̮0F9 ^?z4k46Q5JX,ɜBY_w^FHM|R͞p|h;?I؋U(G4wFʪhIKH~+j*^xvQ+o!b]6kU:6FLz9t$3Zg@KЂЕ;N ^2 $] 0Ȁ{T(UAKւo(ݹ0 !&_-f$%&W-`f1M*ѓa!"RGD#2yx^!Gm2̺qY1wG}HP y# U Bg!$nmY޿AK~!Nm Q#g` BB/7ž?Aںu|㡗RDMzrLo\L:;F&TΘ  m c繷rLkjDBwlvtKh[*a3rp _ݡ g&Z5*s", zcּr&#x_>H_y~X3X3\༜fmD8dwn=s4:rzM_K[ym)rdյڇV{*Ʈ 3חk;q.էr|"kf~=qR>0-^JyLAJO2"Ӡ1ϢG?:US#̨ Zd ЕNt41Ol4˹uq |!v"lO6~ۤ&;̓9S| tv׻; 'g=;RNфj%k?ގ+d sܜXI*3G8؂Lz%SM.gZZԮ(ps u32I+T0W|2`%Wվ廏lg3r5m|P 45,u EJp`=!uB.ʭƜoa@ a`'KPD*y™1HzVm>jb#DXQ)0Mtd%O_@ yb4/ +e2gPn'Cer3z/gJ)^jf鸬}$8*!;1$Z;)nmF%BғB]Bо47VSkYHƨ1hxT8S];9% Zo'{R! -Kx#A/ؓ6҉B/~/N/Bj98[beX#Wך|D6RwT4)#Q4l29::iOp ]nl"*+)zF#|h}Bv0ǫ 4:H1_;7^Qݐ(%b?J>§5t&9/J˻.zc*eHg!o'`;2b:>#^l%5 V;yfȆzk=ǜ)\9ᜉ۲B6)FiC-{{iB%,Wf![h>4D3U; r-&]ɖէQsxp (/;Io7LV n̙[(v3~~ ؄Zs(u-Vnnb3rR8=d SZY|{'` 0"`RFCjŦR\[OgF>z66M#nxSt" 8hy84yg/ƖܷKa ?srl DJ*<'CW's[RIpC{ RZ*gLjtd,VVOV)ZwxM/33w8RϥOp8UDEz诟~Ok2v z[~GuȫoRC]l`H.PR0 &*5<_*]nu;E&':}?-(`4t0&SQG~$FwZ x4|/R܅F=W - Af'Կ,E-7,ڑ'Pc aj;}_=LJlMs+b6lޥ\HGrgH.=VvM35pU3yW4إ*%鵭(BS ʎ֞atJ>|RuM& BP r`89fDҁ2hcX#th-ja X<ž%ܗ:ݘB;Tjù18Ӷ7SHv=B녊TX'e'w6Ķ 0A|# Q D|¹ҵ1Ńm$CRt򊼗m;kApZ휦SO#= nn vƁ!+j&y*HG}.lIi|K:|jN ~u No_RO϶ݤ^.t).*6/wmꈈ F$C= 7\w"GSDs=84f8 o&BTg_r'J#N!bD >dC/:G8CB :*/9(%g%sJT i5]H7Vbk:6Qk|ۆZ-O$f:'hg-]Q$U(11{<Ksc`B߿`;0l _ћWZSǦWB$qPdn :[xk4E̩\=VUF.qԨևHr0StD(3e*s\x%+@Ԛ y>ĶC'= bی4_+kbL.a>E>p)1S$e# t `Sm.Ar)qS_JXqMEdb>*P C ꕐkpcj,ۋH~;C-UoXg;:@$&a^>8}zs ''ynEkF:cW YxܡՃAX><(#$UlH=z9F)k1j8Ժ4?syLiHw!p_3Ғ}v*6\5Q)67`.R}j.rp_X0NVqlՉڠ!Um i/p);K fZKOvÈqK%!!<)g:̛(}ٻ37Nϐ&c_!kDՉ)n8Mbz Lp(;;˒nҮgrzQLk8{_yo\1Jݚ]ɂB䲝@_zB'ÏβOCD3۾R[ mbBRP} 9}&ЙˉH̑af>3҃76WarjP$> ڛ[{OzEm> ׹P1qx']X Y AҝMF܎ǫW~vhi8܋w~5 C!aᝓpC" M'ɩAZP2Tv+[iw߾-i۳xs(>Y2|(_* @V.Q̟&goUdaUi \SlÁg<˯#_Ipol?,qCF):=wݒCK29.6D#emn2fb:PZEN)V-&}'wKg_JfH])C]9n(N̜u*܏_l JO P(+^@IqbS$a($(n8揉Lrah o3$ R &jy=E >8=~N̞2Z~XayueZm kŽEE< =qI֝oHI;#UBPn |MUVt"!kS(iド~&y(L߱aÛ: H9,%^;,4Vn͛4QI1`Hdd|*x"N}MdGl )\9=|to%hORĈ*?mo(k|hs7Z$0P'k*fuǞ,bt)'oGd@@v0ݖLGu%]&BŨ|,iԹӠ)E?Ə?u2# ϗ,*RiX/(L@mKJͼ}|bƚ]rPr E$\>G*izEU9 ̆H˓?^X1=:<R` .0q,n'D'<:;XY3N=fO i\ E+tR Z ,q8¢Yr}VNz] 5r 5UN eGvxrI^Z10-/%ӺMnє:+; 9VpL`D3 F-l]}!h͡X@k,. w+$$?pi>Ӟs4#ȊAo)\8O!VXD? yVkT[u|ŃtL yyД<hmK3 ': ( M~K`OI#_;gi/\Su"хD]+",{uhH ,4<*oMf$C͵M<_0p ;G<[S#]q-Rori|Yµ=P8u#Qۑfy;8L8WveCbZ-Q>E{q1Kϥat XpnHvO(=5Tcs mD{?DGxaZO9攳݈U´y\SY%ahFH 펼!c/ʚZss{NU&]&:Zqʳ;e;)x8Vi(Dyyof}p'H$9+)ϫqNTՔ[u"="V[T;?&}W K[WYA U *#ք\^|w4`zȊ:R+-SCA<|t]4D_VS|ZѢ i7xqzZ4K< BWĹHC-2CDA;J.h,0duaݥh Dݨ s;e6R'ieDۙ$Ѫa+>8 [3?SZg* @̬C!:dL,Q#!wivbۊ! i* IW(=*A`+<L#j{c+["~2fe?1yXlp!m X'CCT%ER=6ߤ\UQ> f-v^ 킄va$ի6D+y~ʅAfHJ\~^P9' Ǿ*8l`J~s|ۦ{q.id\ioGd4KQзB(\W&$ݗ>Kʷ\`sm)&ڭ^wr$iHDvRv3,E f#Z_. `ӨDnbH6h˰K]E7~ius3nתk)ߧ:|NdaNoFJ%Ki*{wE/E k`yXm oF4 Cm?2^I\6rO7)Dݧչi"Es!͎W8 {i~ eq7-HK`NXP_nx>C!{gao1 ̺^ty2Ic}Q,?pXfS_p lxM^K@yquT% GFAo?i=wh,f5s`[lOrXNe>!O4"o:¦ iVT?YiхIt d#:wթ}1)yj^O^`TKt}*y |hR3d;+nZَ~G<1<ŠڒR;Epڞ@xQ)4+cHEZN}@M֪䝉M|6Ã}Өxu1WwpE==v*@ns|ڰKw <Hm` }`sIo~^]綤L 6W80eUgqj006,ff)lUG[6]EzH3n.Y%R(^Xլ2rp+W zTK_m3~OlKXO`p'TYV"L=:P=afrդ1)RXS"߶0y]J5r.zAIx$0.\Wj|f@"?Bg+\c%9]>7/=o7V A`B#iZfx*kr@d!M wNJ޼r4Vy_]oOɶ%⸥iA` 3qDƮ&М8l$ ܏ph*~<c.jd(MfH oE{y|U6` ٤\? 0уj ó.y=?2$qcy]0%k}aV -rD#h@C@䑢 uHpC`TR![~y\GVR'.1Z$ !v>adoC]|$9)bzyg[}߀b8dǡLn+fo>R O٠ 6Xi#KyÁ}uj!5_nwܓ/eB9o7 uMWX(Wޘ[" / ^]ޣ|f!Io߅Q1[vÅCŇ`)V_ĘF}kUg%˷ddiipUa/|]An(rغݟM~W]/,휗*,=-VDTp~;E-~?62{Ҋ`p"ia(}_&5-/+Vr>+o@w`)5l]m7noj.4B0: U!)nXϘEwըhi:f_QLzuPNbDU Fɱl@.DލOĿSIkA(k; sd)g"x~ZuC^ֿz>!4T |ISUpQ\ y0#D+ Dއ[`݂幝.FUWOgI8A8PXkAMARα%j*rZ( &%wWņ ,72ue@;G]Y1uѪ""DăG MSnDքQ b6=T!p`=.0cMIqs3gkn ǎ+kn)Ċ 6̜},D+.`{K;BC&=`Aor /aW1B )!~wn1ԇV1-tlwAq_psax/drDSIB3o Mpyr5b"-?m7Y("u0􋒕-0,ƾ- +RRP3@0DkYDFlb\*Ē*ҩGv0y#_k rڭ@;S RGk0nCڜ.1Wů}ژ~b̍:̲madgnXd"Cwiwq'{fv˺Ovc}?\e@F2zOM|mE1Sp=bDI/<i:ԙ|hހ.N>.]!>~ꮋYd-ex˯ӷG*l6FAd0'v^?ԡcWۄ1 B0\T["YpoɿoȶILaxHKa׸m+;|Ӗh pVMvM`/,lȫ s.D6 1eeoNTW`!?]F|U4A(VQ4' ~g*W.K4 ZH&@w˚+fM^ A. 5:+^ACvb%1L R<_J.P  IN=%j0 덈Uo)$3`Tv<~' ;_B'xte[1VuIaGx}rR}13?mֆg)kc8k:ec(dnwztzbra_4eW'ՁgSKc:X3uliQ8D2YC Y6Z]}Oi$甤W5x- ':4Xs>fJf;1}r @y/0>MSZIaop@*)T2z57L;->_̒S)=ɗ՗o_ Şob#6>z#!VGr՞V9!@CȮa=X~0KVn>%4榍cGJ?*JTcU4ܦE+Xk7:]*ׂ͵>^{\/+#Nju2-}3\_m jDgCˌmkX%2%jdPքp"RjXU]C\gOu͈-A R6%{ah$-e?NMpJF4ʞ7_n '`vIEo'~Tn578=*fkن![ކ,vRCENǻ綘0 V뮬:f'  _>y2UE'-[!u2ግ:?WOJ]6VUm#_Q˛ >::"R^q-{og0 F}&,vAwѱ7J=qrײ, hA}ڊqqgIF0Ki-L4>5/3!kthS|bMKɟWpXm+\*NG11ҙP"\VN 35ZY?R9x7e.7 Ia#T !I5EJ곡Wۋ<ُGi(j2?3v{;i#8[o:3q''ǣ|=KщjcCڃGvh'z0?ZO4rRCsF?rcud0\!0ׄC\q6 })7úշa@{`,'RR;ЖV3H=jTGhyϸT %I鮦W-Z >[e `5V9!R~oM=ߎe~ _S`2`, U!Vj9Mh1K[$5l%cڕF9>+4I? _kR84Y1| MM_b$8v̤YI:_+@@nZ\[O G+"E FzևKg9W/󲬡D%Š*9 ۉ!!?6xI`f5J95O5 y B@>h/Z{WvIۏ,i&Gb0$ZUrk|_8iˤZ+mR 9мF<|eo<\yAif|@s`hЗ7KE9.:s圙X!_`J*E,U^,6-h{Nl7z!!+r@IV5h!Y+acD;t~6(>5Uh?3hȮtd5$TPڶ{UFkqZf"MUjMR%ja8stiaXdI: Bؒ\"c5,,u pg՜8?K2)i Jۥ%Nzq`sMdh}o9{q|| /caʎS4oE͂=.^oLWhՈrTmmcs0ѩYFܱWrq(w?fGTxTyJ {UD |NǟLÝ'?w(tW̜ AюǞCStQ,:G+Oy CcїKeOpK \3\ p5t]L>9C;06D0KјqHsf.iEK1 ה~F BǕy\0#/4rbȐt|!Icz9ی1`6ܧ;<@Pes*3\%\s<+T`6"'WπF&cI]Q,,f "Qv/J:!,U& 2lc@H_j%c/k xW#mlT06KŃW|R#-1r55ox;y՝̺X|jCY0ÔONWuTcT  ) OiW=ș֍iaxTp*Mj|rAx$YrC5 2A <{IJ D`Fn< Hz}".ҙ~ |P:@-u99@Bv"X  & &Hc7-"ħ%l3_2`  qa!xw Zvh*vCHmX?\D=DgO41C2%7o0pbQuI# nrB+q}u;:-U;>@a[O44>N0rjIFsit]R{ QGfzێ~'_J;gwy,PNm$gA$o27v87o4 WǸd2S$(g*AF{{D_KxY֠z۝b݅I6Ai>nߕ>y^_9+`0^7o*$K)hN߶60)kM2)^ =#JW Ё%cYGq5JeY}Y!͝q.5kf$ئi˞rŵcIaȋCL;?;#K !4uV3..DnyOLw2_Z`m#Mo7$0C2Ef.'Pt~+`4.SGl2x0K8S}uun>__-9ZCw\eަW]jXi~Bqbդ1gh!gxTgb&!k+3B(er og$U>&'@E`4Uʞg}$M(='! ;`8ifS^.X/ݔH֚`N bK9M H*E={Rs= 6qj.v-:4EK-:&Sۍql?zG4*Bv@1,NF5o>pZ)p+e燞1 bws,#Yy К#()ϛuYL} n=V}O^Dh%>ɿ&'1(Iwa _ 1mt?c E3$C0ui539`h[1qt\@8va[{MR$=0"+Dfo3HXFٕC!ŠևghLk^?ulb{R#a_s?&˟P+"/+b7$v 7^$/`>AdONjhCUV,˞ΤgE bHa\b*7 HM62 x`.Tom (? P)bV^N}&$5Ng~~v?Kqml :’衮d#¯_ɲu!j%,d&63cz[ 0 rn53z3OWߊYxyE 4)p!g"91L+u^osQ^fwOߞɣϪ߱?^-LLye>u!}#RtecЭ& "#Oc?^OcW];BO+RN%Cwb1wڤx nGu'Q4Sͻlg1FxA.lϠGc*EC|H9lh!"y|f+.OhkM&jϺ t8w ;1Kz+tZj‹@)ЇYcEu*~]n*z.><(QN-j._*o]o_9XI+˱7# e4S铢njQÿj\.! V^`fo]y*?z&cѾR'@ a]N'<3Q@33A ;ߧ{3?;v*4;wZw/5ʝra\+pZ;^Df⛠ zH!LLVk vڍ .R bD$Lu,HqiІ؄*EҢ~]e}]vIhhӍ5jy Mq .?Xl[~7E L"kK\\oqbcSG k# ee睯ȉjSȁ}W%`T#3 esX3[ð-:'Tpb ETTy)o*- [RfQQ넄~)iM*m`m0c¦P:"w(svQdR= (ص9P&=&_-4~p^hōD яvN]l0͑OݏܦŖ F (Ѿy~H+oK)xߐ0j(YaM԰P탟Giv|l۲#т!ӝ>.* OA|~I<˭M=HS/ߊV|*򕷌NS)y*}ɂ+K=tPrVϱ)^޹]Z8WXX1̃rO[ xJ`ǁ1lt6}R@^&<^ИR#}_7*h\c#`cVlnCCTdƱu.:(YCTdFSo' q,ゴ~U!BY#@K ζކ(, ƄЉLzC Nјi#6ڒSgҘN~,ݎMr H~:e"@QGپ;)(+M2.$胈FCN-g9H2SyyLoQ6∴(8n2Y<$6mXNhVSS8ly(ɴ6MS/< =N;n!hU HM;ѩ HA_C39!U,)9Ll>dpxٴEY wŋ).)rdMnfeCk!sd;xI|ƫWŖe5TFs>/c:q2(|{PRB O&!D˫l~긾Xr5FF(' 1oQ-ɄgJ8IBߥ)M֢\U'[n)V]QWzȝVE=xX",ѠMʝg/D=FM瀐 f(Mls$U 5%m'qEQH gȵpĦt%OaX\ qJ5X\H+L;t0lgEZqUl/碧B=~`_RSwzgq)HjHpF͒;mɍnلsMPȪ*ݥz#mu:z ڈKT{1qL2*H~;dYQ9E/NK0(JCϝ,W-;j߾:Vd[Sxa#]=qU S!(,Zu;S9t9Qݭ t_r깢@iSoYDsg7B,Y :1Q2ڌYnWV=)H<`(T pu|yd+iTF!:870'Ȧ s iKH+pi"5ityL2: <݄TFוշ"ŵ,]1_Fy.^&_a:PFky81:/2?'{kL6?ǂ ܫZj@Wx 9Yaxo9dNU =D:!%X R+ؗS"hqVEGU&9,6&C6d9gDCmbTGJ$e  ׆q7 I-p~@v3W "9g71ظG4\^.'IG4v0</(5 +N/ 1̭D2eO%֛Y/I{#c{/.q) ɤYir/w<)W4 "Rm%;5K15E/EZ9xzX)ҲzQ4Z঵NUooKlaNƣ8H z|>RA 0F+#^_Xp>Xп8ӣxYk=oBcbw}5pϏ@)wZycR̮zgʺ]yS i'@ތi0vЂ]0(s{hbh>}) S %cCCk(jU:ɀq +-O: ~nP.*!:PU?8dk.Éx6i.g Jq::Kd7XuJ;z:uvAYETOzmB(&G,Gź_+q(^' 4V:N0-,g 1sou>컄@ h-o4)QMƐ<#B,($d-J& G{l>?:k}<$.)f# 3A2xr@4s5la"d-Zǎj;'s(;ƌZ+;vmTRŒA%G$ߪK_-Hc?6UPl0'769pIzQ$xyo`G{1%'"[NtC?2}QyGC9uT%T FM^qQb%ǖB-CE*1:?9 $Ʌvlhf7ZqiT9pGHFnfRR/=,t%73ך̈́DNxV3+f희qݽMS+APȴ%!ѡ:Ϯ$ $m!~U[8WP'o"Ui`_rԮ7-{a SOG䭎HԦyy`n4j5! fPtZlٺ[ah; =k>gQ鶨Ǝpr BZR*{0 N$.1B },jhm4mᝬn[jUq5[FQNu_$w&uah(KȀ0 }Ob{E26䜫 ,go+T^=Tc0UЫ_'m&+_z䈯_P}%Jm%ѓm4,Ͼl"~0"S jFLzŶn) iMݗ 60;,Hbxe$~A_o˫8Z%u$fLXȩ#I~"َ<(8H񦁭 IB,q֌C^ƶB؞1bd3LN/!e]uRGguK* u{ 'iu#>ǵG~hy0gH."#Z|0;FՃ=+i>%%s y8ĺ2F*cHuk>m8f`ty PŌ1{)+=^}ePgqqJ| q̓AXmݾ=(x&ĥмdXAh-dHEiଡ଼dx&7p1)8ŭaX F4ʽz`ijA!vOH1jB-CS`ak&NrF\ P8'QI+%wlCw Dt:1fo,(*F>>}H} WKTM1vߏNZ9ψ=]ң(w(Z:^SDoK_mHg6MO%W:ņho;׃f6Ls%Q&Ԏ1n 1Xw˞9Yɡڀv:sH9FCyTq %6sD/w4Tb@;" ȈSdA}DrIk|G^*C/sd񊥔+4ʽW '<̈́+g$>J_ב5*OOϞ\`VUޮ}2U0:9S-´[t_<_0*y?1 -Tr.w[%(R!˓|P{? Ht=w@W >YR&l~DH|*ey2y`c IG'V|K[ٮB K3-Ill<gL9gCT$G/rki&G(ĵy8t!/C (HH6s~)z85X.s3A/Zq:I1~Yޗd^p)mLld"Z,!jG1ı47Gsve[_ai* K/+E2\ӡr[t%ɔOH"?%hۋ6&($*&{ 圥 ӚHj2/.`7g*cBw3I|c!Yb n&CDLf YpkҵQP*3Fدc7=T;ߎ9}L*7ײӪѩd8X+-z"r&Dei4Uu$]_IzdBOQ\k ,|;P cEA5>jb&&<LR|}>L?.&jm%g .7u.e!Upt! jvd۴ w?ցw6S'恢tjҿ3 .H)5Xwdj41qu]P9xDII\^HNA#jtyk XAWsU Ec\qQ;'z</TڗI*Gb4!_K/I8-\)'bb\sۺyv@tͯ5\::(դxX)H3&2z/gr~Y&eJ}]%QmS c[AeK_ԤvIڎf&Ό%)Yy $ i+dAx[tKvzUKM蘟k\9 1aWŋOyfO&kD]p=g g>f{)"6NnATV>7&? ]RJ-@x T7Ϸ kQs=&fԸAcal<ן}H0qkȺѳmOfB(/}ʇ=la׷sy*P)S";BHs.BT30dKګ y0f* W:J`꠿tblO8{$  A&~FVm*EQ4e R Dޏ@@r؜LޱގHAC1M\1W_*=7&;`~Xu d t'AL#x '%1@(=dƹB髪x#r4#/ŊObkyDHԡa!ԾҀɴe/} *Ԉ0}ɘ`QJ4tdTn*cXͻ: wwMԘɏZ,K\a 2IAOKy9 Δl$Rڒ{,{dEsN'kn{N:+HB(_7G{E]Z;4 EI.LzKqn}4L$Os$څ&Hj3ϚU[ @Ib~ υh-r(U.eKlڵj0 ][H\c#1kY&>PVX7@ WIEUC(ԳNy|t\Zf 6%SZo5( g:Aq)ف L𠘱m<C]r+kP"]m~&4fLK.ioZQ9x>[ s}ٳ..Y_Y 67f /ZYτ<%}8kGQFx.퐍0!~jB\O.0ݻRİ  -IIڭM[_6\M~@:~Uo~P_UDP;uxp;<]+L$8oM7>a[طBzO,#e`0{VfOf&Qg\b Q.kEzkY X+%&8iEqp rQ(Ա +AavxAe )b2e2@O+AǡڭtN/SipF~1]mq9v9:[qv'e S6KGAFera 0D《uz. 'ugqF߁΅hG@5&58%c ?d@j~KA9DXlE̊L:Ǥ'ɷ(V7Bu#{AnA#Q?8i U D  aHS”r /W ,9Aozz0ZOԫn7V>h(oڦˬ6rviF^];rq4Tg$9ia*)P>nԱ;381ZA$^,VPh0V4QhC/̮N~?4%8Haٖʹh_)<{՚i渶PȌg8-3"*ar !6b׬90ۚȌtT өrv)GIU;+uɠeߑ^Lj\9ׅO}ɈGHY?> NwmËMRE!z_Qwsb}(PgĄ'CFr1Pkbr blj),vggEc9,sv.Isv!jيMIG˞hO)sv8 2cH1*V-,A^bt V,Q*'io3`4SK<]b؅է$dlS(,EfuFw }oNb)[" g.b a`1kzf63Z-،AE|?o(Wӟ;Se|7|^FZ(;n^5|7'i/-5,Q|L]qicNJ9Y2*b\ q[#'H1c/`j]uyÛDJ~Z{sD qž>l#H俾w/;%2|oI /k6n:A"wHgrT>2K/} o^E'ƲWJNUqdY, /0ɳ]ݙiѻ>?@2S IJdv/$oÁaR|?đC,~hgk`14IVm) `@ ÊܟJArͮ>W*Lhyi{̚ϒ4W9cqDr߁' =ZT뼩E3(;{a>FFZ7.ruGC ^h$_H[A'"o!.H/a[h>m8F^f+̬rA cVOJ;NU5[1̥c]bL:O4 cgj*~[T%xzֻF'hI(0BDǵ C-*L(s3R/"F㑵3(rh8Sf(#lj |lR{wq4켰2C*L,>IQfxr)Fvz~IPȾ~5jǸVÜJk?D%p_okmIQDOf`$_l5GgazQ6b~ys;ieHr vwT!y;ɚU ߴfJ]5err2j|s <ͻu05)]d ddA.HG aI -%ծ]BwT+ȵX*7<`WS"O c247ҵ62OuB}t>x?EeR$?}򒉸Fg \4l%K%2<TD.unmb2KW?Gir ݛF^JUi/<v/[ZrbTvEx(+ҽM`I c) [Z}֬H`* Y0[+;7_Q66!w*/Bd\]ʎʺSkhYz%,X1fБ 2EL sj.sk88 VN6D.P{C iE-!േdD/KJ.am/}+w 2Z/X$EyBfu_JrV/6o>u3tC$U_][ܬLyQ:"]T@[lgtԓk e>㛋b QRf2@H1῭F'<^`S[PYI .B> &y<[2N|TsZ^KOmB!+]L^t# &9@AB4 ݼy3, ?%azm \pPӗK[tMG\ER)4Q]6~C/ l_ehƯsYz9Zvz 0qbCWBiX>?Q`B3 Ϟq2 c?^/\b. ~IneHJGmBu3ض*d:0ͨ;Cew|%{ޢ(FM?#@Awr%I3ɰK&_N ޖ3^v^ \I7S"_oQUAɴ>T*M`LRKQtu-&I8 b2KK O?n=c)RX[r7׈ %ތ*I;I"oQNce4bBE4C52,מp?RC1=I$9,ۭuOqjJo-w6KU#t}[N0QB;!!G^MLI𧪩r MA?G#wC$5> >暿1Rx[ZgAeT5jMcޖa`Q;jn \^26@i+j6ձ t9ʫ|i XdSsMzX}C҉7m#+,ug?`\coe\ qc|_o^iҷ"Yt]ŪFLv:7QӁԄO"n/U Ȍw5?iP4-ڂG4A\9\].gIC?Ld)+oq]zĢÐ_ۛ"+Le`"FA9tr%=&dAaiLlT H: D qZ;JMa\M-+#%Ld!귖K-钻pRϾ̰DS:zJ^ c`"7j,K3-'ΎLe[xY\_AVlyY?PrKx_^#%.O_Sޠ{<0軫ht?vJHD u۪ 9) +lQSw1)RP=t3/;_Tɣ AeLa !|iL8ΐ,9bX^+rB+5n>,v,>+$Wm7Fԯ < )S'4vrFFi'-Qm@w|(U_q 1vRB0U/ח!%!PÔkrw_eF6, Kߩ(Z^8:i8wͳ+}߆/_63sP:=r3~[=ŸI0~<^!/PX6eIȪ<}\{ت}$)-SV}9>ڙIG JXzO~ Ӽ/Lk_y%Г `W (wz~p^\diI<0_0xvU`xJ3$ [wgYJ^-a?bugB1XĆi#-L&~َ#gߐm<\ 20ނ\H_ 3^JT~-`N'W(i*EW[qQZ+-~HhI1ZMHeYXTmT<1om MVE)$k + %:_[ʽWunn Ѿ2k%#gV)TX^}scWR\5,АlLp9=z= r%qInd%O} RkpMoTpY@@pi sXcBS ;"!02~" kRɋ[y)/SLaVD +W}*H.S\9WИ+i0j|h E&oes%Ȉ`w-B#Cz$SQc?qAUWEJAx9}1 S!PP!Q1N#Zڅr'1S3f!&5v"6+ˉ+CpFn.9neUisqb{B=Ou 7 аT;5|#^~2[Q<=q,;Qx!X7Y;ܳ`'#|tm~T:wjt D])(Ym2mxul kB}eMO,i cdPHc1KV9s8"jI@Ŕ+ODza:5WauÄtC@% ;ހ @3|i"Y5>v{/|(ʝgG*pœ,!hAf84{敡B2J,U^4 ^2KKP$c7%R䋊}΅-B7%]L$EKW!ktEJz@(HrHA$ : E0D/{ZYnG폾UFwl]KtlfJ(}Mȏz PD̏Ӝ$/كsH.̖ҲZQ4fljfiUĄxH5w tڈ&Bwwp]rʫ\W^L].q]8Vа-|21>%!MΐoLZK;]2޺2EVF~Zy#h't7S%4,#3B/6ӵ(y_FTHSI>/_0A'Mf8ƨ|J$y¶$Jןv POzC)Kt*d/>=ʐapoԦr^EGr%;##T1D#ccXq醫-`=-?#}rc׶J::tN4x<ς޻΄ Y 1]!m¼bbx+8E6sO&)ݽ+ry5Ĭݚ<:\  8GVw[eŝp0~SYb jDֵ8\a j8@r3: P8s 8#7dmUqi㨈"x G(;eƨUuReX:kr_@ ſYb\dbsp+stP' &qeLߔSih*17m73b-y[SZp#N~/&}I.Ƙl8C$RbC.Ff8uSuz!Jw ranޮM!=#X0UZ=1~Ӎ*/nMyY:+bǣ$(?[=_ ]ݻI^="8VA^I%sVYW=@2 8u?v.Gڒ6`RyxMcan(MƝzu sK=7+-mރ\$[WPO2,\Y/ ds)în4w*F~_J5edo{=nwm1xR Jg ғpSf{1}~ U&0KuA?Ew'׿DmdT,wi-#,)H| VOƣl@VZ#֮Hq~fIձ8- 0>ZQtjߨ2,EW[A{$~ 9ϘE2 fU~|?M[YaR%2Fe&N,$|Ei'(K2zhaKWKhMͫd&?g=.<& .N*L^'tQ>]eܩ:_Y93iOT|H9OOiT],0pGIݐ5+lZI*A&g-SvCπ":!w}!n]El;mF^RL#u{pM RVBс H. ZÃC\jj7)Tv!!qwQ1)sI`liku~>!W1(;J0Mx ]m sƯ}yZc=W:4[ bm#ajqHA!qvfpjns$p+0ѓ"<Mioc W vRL_[ŔvD|)zN:eO>g#h31XAbU{uu~2bO/x!*PA+Pf'k6oegmhˈ,+wOTX8:$,VPkHŠjŮy^p=Y'+tVЉ|kEMXBZN]QlRi 7N]裀 IFN_gMeMS~Gf^l K0kpT2F%&=(&oYAi%wG9g~#0PHv̮g!@.7~ |лإy.F݊*nxUQDIW'I*&l]c]I9JHVW b6S*Np嬯7)`wkFb{r E-s{_^˳^Dr41ӹkmAMboYWJRSɡW>nj,5'GQU{|8X*rFe98|U|g=og_5`Iaahl?\n).ԎJ13x].5j}O|xS3K+ -] oߔ}"CiȎWE ,/قYi:۵q4-wYRmO =Åǒ kud6 7l;? Oq9+`5/q 1Z`*KH:U3- |!p!T(5]fZZ'!Hic*A'KX^ jIx㟀_"kD>mj>[뉬ˑപ i?zǞ S oy d\LNmu %_B|oܿ~Hf[;gӔ~Sb s p,\z((9QJ`7AynVH0(LI(ԒO5FbQt; (e~CFTA=i6(!+p@J@m Jdh?*0^Y6o 2& "TW7eDh gUE[4?M+aS^ϡɫ$ՉbUaUW:Xn̶J` 9fe:SsYP$+FokiR]-gl>Ιm},mn6wG]'- Έ0s`|V7X`m;("+'Ě7u,fo̒Z)%U f  7B<*mgy3;#~gt~=Eq[M! wL# IKAӵ|: $%`@iDbsTBm @@K; C}dx珲yc̾V԰* A#F) 4D?^5ф_ :D d V-u'az'fj^ƴǶ"H+GI%6I{X_7U9f9Aɽᇠ7Ƥ^"% *(?O6i8-.m~ 4mPT}p`gFcLo]Ʃ* pre`7bu~2Ա4c]r(çz^qY7Gf5({\^DE*ut̖ȌR;>o!(-k]3b%<tR|n= fk*&Kc>[$DSI0zݱބ~3V$)0ۅ[-(\tXkQE)~4ee89|O="Obkjƫ?3}άK ):M(OrG-&EF$@P!U+Y%I#`0ԛ[{nN  :Zk4t;~=ksqz(6P0^qa{ǜ/8r"b^0Mz #|_kzJ/fpڨDV 4[E!Hѻ=U "$#JHL+-PGuQHїmH(ϛљsIhI ._~g^2T5awmz7?(OGE^G ,#qWS|c?5b]pSo<j;.&9':2т}RG>g 0Q57|WX04c ds9} **>EsyW$0sQiP͘ÊwumålI#CsYG l;{Պj{No*&` ~8oe80C5i@բ c}aSձ[v-6=ю9щ3e5\䭹PŚqY j3N;S6Yb󐴙Υw8GJч2Չ{kL@46a\/RH9lܥGz1SvխQ1RRG a~'yT"25L/|^>6a76RӍu|D^yG)Qt*XfZK9"diO*8gܢẩ5X{ey%)"_H_)Q,Gml`t: <}RLATOwfEi$b0K{!V[9q) YV,x@ư>EG0?ɩ))vA&_Mp17CPwA@PiǔL; ?~8A1H4ћ( Cif눹 muvY@v^%1r‹fϾ[ ,E%p}؝P9>#vxZ!8!o]]0+2;Cifn0rrgpz%cn,ڭ&> {qEyC(:q4@:Φ=hOK7#.M,*TZIą^~W2xCW@SYM]T\m~",ٗUg]Ʈph}2T 7cs Rk$msN-ROmHr n]lY#HF (7F# ħ=8IH\K^ ԆP="@Z";L$u$bAmSZt߻R.t&&uDL_w02: *_sN$+LAt{u=ɐfIg͋`q=x!B(=t>z z(n5 MB"4qp6/ɛaQq`^'wm5o~Se\0A6_äSMQVY9a]z2K3z"Hx ѳ2 yc\8a\xK!oM'\=hW^B6JN_*wg~uM!jiDaEOqd"+/ޠ57Nu;\"\I@Vw=>:`}):_LBl:|u2%oXD; %{n 1Y8~"RO]K<WTL;̠8B ,'6>6oxB) ף]xE* ԴC@)h^&8T&>ʡN|buFuਏsɝlG.ƝPWncS8R_A$@ \ۉ `wlF@nBk˛Ö|6Q[skŒȖ]$n6Eeیj.2bO{%W]2II1?5YjVKjg_ƜVGeIzQ mbTB${a;>P e)8jO`d#ƄM̘f#|xF͆NCaWCߴzԊ:~uS +O5f[P 0Y[Q7L엃 +'´~ѓQ|fhV%=B}-a'XE+*gWCa}W]"0xH3O!$)pH.#d$p KfJ4+ȬI*1vsw 9TU :4((E"}坨?9^;44hL:SnZJG0@2c*R],&Bn I !~) wba)eX{T-j4 ΊKz~e 0 nrȬzhI+6wMɼ00-)u('}X[H-[vrpDN5S$ iZǔt2As>8cDC wS޺4L,:PnyB~!T?#7ȖHZx!{4iHpJr*+&#gSNx!O([nIoiҝA8Xww슚'N (0GGu<\?pNhADBCލIL&5Sn'*[03Fn{r;Q;HIxiKJggڤF!2@h&K BgvC)h :}&OGvL]ynCҹǒ(ܯpcjyot.ye.ѼĸzCi gזwx䇬L{x`;je;+I:_:@^OA4;BL FcI&Kmrt` O2g!xJ+mse)w/ָ9U*+;2 <3$J֣{̮%|u{/Z rhc3ΐ\Bv{$ͭC+ay2#޶NYF|=!p_!$nGb]*L04*_ Z@V"; ;*?u:;7Z3fC;bWd>ޘ,MJP]'ex7q\_>O  y|h&C=FAYOaϧ ^Es՟C|b W|nȓLI+#Oml '.-H'kk" | D߾#?fj1 1Ww'o^il1gm9%G4CC0ƕ<4TwG~: ߶+ZiFDVjxRø$TըL\K 7ݷI!oS%U1Tbo s&r$C)v7)m8xiȦ }A70^F5jaX`\1Ӎsڢ# R] r`V]yaTT3Ǟ4 OBCY_ӭM/E>7OQ~YfiUƿ:6SbgTMr`B,>: ~}>̏$.Eԧx& C`h`W,,Br$8YN#ZVѻe^&ui,0~ fگgjbWD8hR I'PU$Ȃ¶:\YMsVHhɗ}aS ae5Z=XF NI0aP0܃̣( PWrRD~_ltG|;,\1EmiQفVG*ETዅ6&ށY4_kIc# 2%T,:aC&+z gr#٘ : dX!a&3hA^<_Dz*%Jykp>]ԩJ@Ϩ( ,2GEh6OwIKʡԅآr>,[B3ZΆ w7y|gޮĨwVI~#UFrtgʁZ&i^ҙ84-.>h~T,c=v ~ǎXJQE{4W3l%rNi3/x/3RHM=Apn86ph$ H/(d75ĬSrx Xam5'MKe]qX.\ֶ8r^qom?;'y4/x.w7[u gPv"h@ϾU{lB3 JJ`Z|_l-;YSp[! )RpUpQFJpmsݺ}>f6簰4WrHF~2Tc)yU3~qC-! S6|GNvj]<#@ ަm5}F,͍mq\|O}I˪TzɹX 'p(([3\fJY|Q^C.=FYT> 7w=W&Ej1_s\S6q04u3B$r͜*0|9ҾvsI$1UX f%͗i}989xVMIŌp.|A+Af*.gx,UoH*_ `LHg/ȷ6)y.{Q#I@CR#s"5TT(|py$[Y tlW.m7I^*뵐@L%g+[dHR .`ӺCf.8l)栵vtB'9! R'&mSlABD(J!dC(ѿh?ZI\>.Mn\iוqy[CzX%P ۙT[۱!%b% ]pjMm鋟ꖖFME1-dⰥ8$9:9`ޢBAf᡼4)=RJ|o/Qx/L~ڐքdMX.D OC1 V8wE:b]VXvv7 kLnQ5zEWz;J$䳔T a!5=Α׿.گ X'o􋓣Dl齴. *2Yȉ[lX{ qXSbAƿ<& DwXotގǧ:7w׼cD5:>m 08\GS*Oj .xkU%x7D#<(M:FX=D9CvMo-'5[[{vWT|犹hE@BmR3lH^Ml* 64␲9'д),'_Z7P5Qq߬;'nnMb@;lGǹrτi6@8 # Xʐ>hQjs&WqХvr ^SAҾ =*vDx].=zTXysnD z]df&NK3N-)|\fr[OIq/ 7ZtT#ZRFffF\6Ucb >gcH` #操ճ5nCMjTo@$b# 6DĀ*@Y/lA=VOVcd3S5ƹo!˱-vq2h2bs8|/PL 5UXx1h@__ IPDG*) I 3dOY̋g.cԝɞ`2֝JԤV9a܈X1Gݱ?. [ :4FІ' 736:W.%FVN:5ƓZ?*[PF )c,6VW])Ef"QA%-Oep:AqOm`Njl_sqipq,얷2>׃|ri i$Rl3@(pߤ(k#>O.Ƨf('@YN G}~QXM{׺PCV'ߚIYnA`b3-=7saQuf-Wd,Cәƀ*cpCx_lj&j QEӡ f<Q5.h8p` p-S;mH%oc1JȿbY)aPzw4.eT]&Ti%{t×h3BM\Ox ڛ:cm8']z%'V N@ Aa d tܣu$Ǐ!#o綰-S+`kJ4uS]k}%y8W:,R oSY/#Wۏw)ysTU38DZ19#JCd7'9Xf87nVe  |c;h}pfz $܅+0a, +D/jf!nGuSȑ_(Q{AJwnHVk[:%yX y[OV$*G/3?x[!n7B\PV\۴)D;w1m/QY?Fe0ָ:"n,/iƀX.oY2L"}P FTt0^C߶圎㫸]VZ-]ccþ /qxzZv5Tt:L['ӻGl%>u$@x \ Zp5}e;+zѴV3;ay]ngO[l

2cxyw}9 oYȂ*L-'# _A1"쩗r?UpBi4]Xf@A^*_4z 𷯋K9<1C͑%'%"GX3e,]3CG50۸SAh  ,ձd{eK:b.0\"E7j̠K:}fT^z sѤpO*EP\&'=NvFn%n\ǃ1r*>.: +y)rtxu C8\2!H$ē0tTRC^7"y@ϓ`;$'S@ M9.a}IGCX4hW!#rkRhߋ]Wn m$/@jG۷}*Tb@paX_,4:@అ0JȃSp.SXcr1vw1nԅ7Zq)Lo_ԢDqTkRU kE򿤏6`BÏ"y$Z<2XOǏ>US3tƁi&9qV@,] )n׸JDF[@ 4R<'pK~aMmv)f<0~Y~Ό8q=پ429ǐFbalB\qϟN#.( r\j[4}.:e۠zGH mojN}L0Ejy+`ϺEq NeL%c#Űw` })o,csMC l1Fß%QjzהLQE ƃ* -}0sҸ+[)S?͉ &;sZ,\VxջZa/2v@LCo DAY`h'kua k,bDOK 8gӬ jB6nU}u<+ܑR~c`%f;~Ȑn?@{ҾebGm%\ZB? yL1;{J0XJ}Jg9_(..j l<[ vwEތ}o?66qWTkEyH8$j0i|0=2jq0/ Oց<3 JwĬ r~wg?eWN46$WFIɬ;y2{mEk7K~/<3_2#YcvkS{R]5}K)<9<hA쿥V(vCָlRvaEJ4j!j0^=+JW2ptq`)EG~g$AsN]l}. .]F\Q~E/KXy%C)|_QCG6ay'kKOGLrs J&^o]9E !S >Wʸ@vqJNھ늫es{!ϡ;|r0=E-a.1ޫ<΀ b2͑>>CgvՅ'p ±&L6G6^ MBXafe}eчV&p5~}l!R<-E@G#>b)'|#zdUm>"ϫ0?SҎcKD:%WM35?{^l+rxp?Wwog$1*acCglC1|~fMuAZ. #H1kX^w| H=6u˵I'oQe"pW7*%h+_H`UTEVp lZ@_=췠@ B>eK<)ݦW%t_D}-.. i⑂K0@-g#`h޻O]khWEM!Kfޝ-Hٌr7ERWIJB<V<+!?%T@I iN mTϩja٥y' 4̮DLYS$cP;KT=out\]}끺0hQnD^ >N;;&V˖mXhR$obo(bx^%mKő ?` Ϭ”5ķ:Azu a'=ʛ14I/05ot6oY)U<?FDf{`9#Lh$yįmi۲w6ݝZwq⩽4uU|ZULvZ|e]I_nDs tnfxf ƅ?R:fPԠ3-.?̢"oje3d\o2ޱf !{[4mFwRTq:=%ko b#(K{7 i9!VQ(]b{P&)%~__AZnP$LSi\{ҡg:Aw A@(@Miй oh77k ֝+9T3'ּJT TmG?Mk%X ,qa1|JUzM}EɈ qo*QVmq!\#}h[fTǷWaK`˖2R錺D g&ſn7qC{0@4}i C2 ê7^EA 1?#DsOgET/ X?΀v%U"buXz6)I %x`o,t\u}O 1Op0m#V}ԬlA/^;WzJO1.0gH1Jo*xk /lE뿤 żk..=}d*=\Ơ6b.H!x)fۜw.Lc2; G&;ctb돠Spè-1O}w7BZs_wJCS6#GL#*CQxku=r=QXƓ%:m?n!sQeyLX gx ^̑ :sϷƈp0D˄@.L)z7 8>y2~47l)Q2enY,lj Ue1lT[UQ@y8hG|q,_tf8l_6 OkO 0^^ڰcqVp]a-5ǀ3QLHmɃRj _poc˶#9`ѐ-7vu'ҺU2ȹъ!P%wD Q0зU# t )ԛ}6w:~i]+S² ^%$ۃ\fIRt`^&i&cЂd^L){*=C/;ףhgG^'QTZ%kX?diOyRBbmiUm|]UBSl?@pSƯl@iC]vwgv{aXC$u!NDAnVZȷAѶz@))қ7oIR]W>S׊ָ$p? 9oa%!wMQ7cw b*zj0.f8-D%$!ҶE= ~K>Ϩ.0FgZ'o3rWUc UZew<1쏸bG֪K$x'<} D(gTFn_%rPau $ݕ;F?06L/VϯTF-rC5WAi62<Ԗz>(:`LkV![sU:hr삨0 Vg28%6$+@,`M-Xx["˭I -#j)YlvޥiALR"^sy^(e%jmO&*>7+˲ m\´~[E1ޠC  DFOdI0Nrv? -(v8g`]18E4_Tiܟ9ErnK$)f`q]3z>}7C|NK5 rӤv%61M5UZ1(viN$KuF.=(L`2gΠEb(/|g4 RK@p(՜:}*x^[Cwznu}jĢLpq4oީ cA 鿵8}l )LsԄFR?1ݫVaZ2KH7;5Ϥf(B%h{ 8:qpkkpf>;IUf+_wB2~`#rFyц6!$bVWTe۫/]( 7jpRW$)wx$:){D9+*uu`!ރJncnjAxD 0iH nHU5 @Hf.6k9VF :spI4p < o5ӅFQ!H*cjqt<&xƒ2w}Im\/o޸u>-3Wks{p^SH&R}7 3TFCX/9N7pa @׍4E0{y!ij__g;Sp܃Db4%6EXmc)mf{ zn w9_1Ӈ;33Wr벁T@0OPcH6NǨm 3vfŴ"K#MW ;j "EU-iLtA:dwuiBu:zUnɠg喙3w:\ya)#9.k)Ff:괍zbnF:٭ 1/E৹Xh5B` 6iĭєk{r ƃNQ4|l}SGL{QǹC@ :)`qBncjMqԚ9v26o_k-=}e|[|`V'is"(ޟedkMkwN2iBNVǞGRW~ "4[w?=Y"aBD+sQy17gxvE3s+3;FYlZݘVRp-˃~ŷ uDA>΢PSd(NYd:Gfq =KJDhylmZ1&U Y%vRB},7pxzmttUq̢gSi6(C'7*ϔT;Z;}&_ќⓕ UFΎ O2W*-a  QS`#8WkSܦ32Gh9Դ~Cx,WB`*Njϒ#h[@ d(jDC_aɠ‡ Fc2v03)# o٣['q0/v%7}_;fZ5t扈"ޓ 7"Bv0AL4<ٶ\[AhTɫQRiHs:QF͍8cQ5G&tTK H [ ]Coަ<22۪lqd^tYeƋ,jt@MXHN3+*H3` $d5 10u@gc8+ZxLDkX.y(H풣ślS0sN~|WbT6s.Ǩgh:#5q,d'lzjqaP'66Bo~o {tKGP4S$vkFb\Qch1[U:0(Jﮃnz;ԿLb lg B7_v;ؠnx=ҦI]It4Np?77( mυ4/ cg6XXj[v._78C!Eߵ.̴=IY?d+*;N`l~Oi92?#鈺2a,x@@bX/'m2fހT!o6_W~onmy3ODDyxP`=tf?GNG&xkF`/'NJ Nڬ gKt }Ӭ8ȷlw)t`&iو' S Ihә1 `2B9‡w`HBu?jҡ3gY"9ٝrP-ᵾ;)W`&f҄еٴ.zKP[έ9= |JjT".zz)FXɥπb$ C׸}{]b:#_׋VzD+,\nX;SL;RaY5bFظMCl:Npcwx8~3;Z 8ᒙbP[|dhsf0y;QĵZYәš0]6n,&^P4ueGrYX "~O!Amim3(cmu+{C+pH<a]l>UlD9ö_Jgrq/_g:o|K@k b}R9;z?VZ^qN)sӮۗPifc^ڍ)}tOEhnɉ8F_'_ϓ~ssudO64GZK7\s_? teQ)6R|sz5.hQWp1(c23"9#ATH 7sBM[zQʜYMͿ*~h }015wh ҽM>x;o}ЍG*9Dv@r.ٍ()~)@aIg-\8+p`Hm.˔a9F F53 !`%kM-C^ q`uINy5av? DaWSoYjH%r?Q_vlkl{-ZD#[CX֤1 Pt_xA&Txa`bs7UKj'NU~F[, Cw 6Rɾ|>SCuˌrRՔT\#d0 sa<86\o<﷫OCG0bN0Y/+NÝKઘ{{P2sظaq$C Q,w_E{Gt<4gL'91^4#TcBd8򧍴Wqm{-iˢ၌O"|OB3b,7@iaZ%4͂q8JeTht"2DX'zACqj%+J(ْ]DA&6GPkc`9Lt\&(L2k_}b:m@.b=,mȀlގSjL+E:8L)72{}`ĞiMW|#|NPR65!sO'_}Tisau͋4 oj;,8AڗF00'ά(Һ5 ]P0E:++MhmGk ۊi[OUCWxyZGzh՜$4sG:Lq׬]zp>({ԕv75M5 TiPHZN¯DžBxkٱ u-]<ʀf۔C޺: lr|/=v&#dcP կFz ?B V&U. US51&QƠ6&uщlu #&fMtK" @?CJBŸDGbK\:"ɧ28v鱊]*z(*4\YA+N=jGӻR)3HzIӟ=I|ioJ_"\1\ܷ@,Y\%g#XmO.s '[늎 =#d-mNT6H[si&/{9֗v4DG68`V)у !wID 6z2OXD#\S`#rtu{Ֆ;5xVf5[!qKڕ?Xnq# %(,}y7&(=aQ1}H܎hsHEGbĶPj^gL.V*Tȓz8e$ x=H;GT n~WHrT`kRBs/7-;NG5)4L‘?LY:~pՌ)|NqoL>T$D_E@.)bRѲ 7mCd `tsDf g9zQb@̈@I;ڲ,6ަ狂b~NO :F!AԦTwGm'煵E f=q"PGP$xUOb\1xhn+]<*B@?)6%Y(P\)|e^ s.C7c~r &,ixPky_v*_EH}t3y)aQ;S ݼ*Qթ{>]~V\3 49$i0@y/bMCt|!irABsO˴Air7;wy?JjacV#zyK|N oNJ>S*$oA.gŧon Ddmw r8N)17PY~̤miq@埳ӽ&Uޑ*AÒ թFcAF6P(Yr_82/SME3`]Ӹ^[ΘUs6Ir~ J( JNwO`OXZqדtBc6^"eJEkWy0fq.;JC'/~7?˨g+%H$WfIИNghW\aP؟ +8Cu6rZdYoX *B4hizV~f#xQ,zj'Q:GmG,AhHHtѡ?e %aLcڑ6 Ria`sWOGM< (ڡDhieEPC&>. nmryy]AtB V?$RLfB  gz 5Itj$EքW>${DBY##+ln.O ~{FZl/7ul_b>S:2ؚCGTtDIx˅} $]+qPc 'J[e tjnPs#FSsӶyEL^&>⑙n>ǜOlc52&:jMV2lG3ـ.o9)b}*xoX s47H|Y!X_U˧/dG^;F>t!ltrgqNf,+V"xO0%VbˠL:7gRM0:4 dʌ PH~*l>=dW-T o7pøExW֨ܵkyK:)c&dnf <61K)V-,"|D!]'-i`hLrR`~qF^VL/hT꜒s.7y8d$&P|"=No԰پe*pg8K"L[*0@x!j+B,fl@ U d;19uQ4]E߃(!~:1L7[wE.2lbq(׌ԥ@?HtqJMȍؠRKNyf7.V[QwɛukObf*b0bh)Q ˼0^'6`Kȃ}!r$%_2&2)h= ԗ~y+G0G#P+7W/ _MOH F b+]zWѣ!jrAW$dsvΟРcP-РL3,ǒPN;nH݃y`%dF]V1SV&+~kK{ؼ.sD CgL j0wJVH0LIrPs( jE.%/5ٗ{N_t.gLl^[>.xU3( ]\51qZF+6F!5u ~F5!ɗʣYH Zf:R A<¹0ӽZs\V &2|Γ4jKe |CH╁f%}=)ww㨅bG" YZFpej]+4!;NfbT^F)idʜGblLMDh.t*\sB늗D>- TNT\* ~1jc/Un aS(˅%;ØWA$)4-58XTn Mls8X`Cg7^J::; $d| [D!gEO?n 0O_,J$n'ՠ/N. ܞus7M FUToa1:nQx5hE%w ( mnmуz_'Nl^Vy viG^4gJ\ ,;JvX_*XQB͸R"McP6yUZ}sL s"yV5@9m&Nc?OtJ;N1n@Za"If_ OOx%'3 󖠬qZ)l`73|&r)Ո;զ1ebZ ؗGȑ}kSf+//| ޭoDVPRHF $!A?sfM4$b]_4xMɤ3B^$,Ex%QaqJbUs,IqZ3Kg?N۞n*A@$54wccv%?ۏ#LqiƐ=u7lCqN nN+07(Dp8[ǽ7M"?x`ڇծmD6>tAܲ:gIr(;,j3`BNj/A1AegqKN d9.@K}`u(Cz:Gb0 C5)XV?3]|nt69*8,@'B{Л8?azb옹AK'4\x@}E(_鰳uXI|J~xg.r RrCߢq53(e1 3LQjX'A4֯~`L쟥i] [#M=Pi '4b#@Qe e&,r!? 笓%gجA@ƥ;*ccr13jO>}.܌zslh6[`m;X!xqDuxsRN {CԶ??6u:ʅ;^7raNN B4本޸i{| x} e֘ɽ5o`GewI) 2?aWYt$|g50Y)H7reЯCϢR']nI܂SykS;[վꨨ œTKb%qɄ): H*<5j>hW'i}M$d\H,mW.)Սz0@`kqBC8rBet~ǂdwTk!I5!S4'epچ}Xx*Cyk"Df a APjNsZIN:ȲΝ0@1#= Ĝ WRq}%PTJ8H"=}=Pk,B,@A!it^QЉ^68%>i"̀Y@GHX;Ąn[;shr 'G1^fSA\PKwW(?=!'n'=X xSfNK9v5ځ^u2s%e'ҷpj5GJ\[Q"O?pF|&Y.#@ i4SjNU8Wn|cz7IiQm]/U Wyj+) Z#$V&ȚQK" /p*BgvǙNPۏ|4LLb!Oy6WOS`o%Kv}0~-̛PۂE#s儱'Umq̆hl2Tj0b|їbLê`Uڊ tӎvo86_Txkz8:`T9tD9I w[  @8I @y=@R 9:<2ګ n]o\FFОai4a01%{z+"z!#N I2 g&U(HT]gOA>p }3SolzŒBa>ր!H|ug9GM!)6NQTkLGz{ SY|3tRRn.L ;>.5}0E pfQUȠKRJB~OXgu#S: So].pq2j ?z!K;1C/V ?1m3ڳ8R . u E46=7Q ,3,,PvHzk7ZkIEj ]DY'%UDrB+7XmÌ<7?H\R `^6(]I׌*G*`p`Q^iFppKnFK|:f< O@#q5QȡBL{/RZ.;Wo>'n`:3wSrӗ9BGFBOg۬9^TV8n(_}L PeWN` Kk#q0k?vn- ل\ͽfϳ>+}9\)îK5%*` }wH#-WEݬv*Q9d&TMRa->*U0pTԂtV@ %qk:!h3)> 7i4aV@M2@¤ +U:M/"1";,&9+kܿ*7'I:nxJo,}Ccm1 @qV !aSTtNB\Dų'q<_.S_%OT1vwjqMY=p:K+FYEJL,6N͕J`H1kA6[ЭR+is<9jV<.ba!w+XtV1XI,(tEEU88?_Pe|6YzQg/:Vg!Ie8|4/ø44#RO .'}l_͊D|⭸\ d.~`e ;Ϻ'$x8X扗,K>s--KX%کPpKkm:F _'&T Mpǥx%F8`x߸Ɩ2PGX\=:^%ȷ$am<(rt'|F*a\%K"|x1RoL5ٵ-o*Tk* ,styRǔ+>\t+uw`1oJHR >oJk2qBQОX+E{w]vRG!E)*)U/Ta" t 㘱{7Kn:A\kF Sѯm97qO=ymG>yb$Joy2 c$(VM53Ssi#&F fS_*0Jvy`ϡv}ac]Avag@JP%1s^kpod.h@|U1-TL:ٚB\2MR'-{&TR2IsUu0%@cAO rD}iO34鴓Fc'ϒٝ_ujV~6d1N>!"KgE9םDH~Oiީ$܄ ۉ@,|'{UZt}nC ٚАF _%rd!cW@*,oMF=Qɴ[%ck=߉0P6is9c^C F9Si*qUFXM Σ۝ܝUt` +h^+=ex5boi5gEG%#vhN{|6 0p(:l^ԍ,,($ :jXJZa8~Q!*,DD*AIv -BRh.sGu5riOYxWUfaE!%6S(z44XUrsj:Y+-L̏ Z",w^$#=o#jꍰpIp$vX癶Hs !j7}]wf((,wOZ:N嬊68xM:9RɛomonA9:.]/ojF BclmpG3Є\Ѻ3dxř߯}Fl4aUx.veUtD.bý r .Tb.!Cڸ$Ϗَvpn$bwo 12RZ2$_Ψ&կ԰y&Or)f.|q8_M Quݬ(s!S=Wc,x`lk^u) \/4_nBa' )㊋BKtbO,GVNR~9bÕ'C[yȬ|4G;: OF*nd\ܣlax -aڢ`vyl@ܧ,X.i T<]qR%?(Ǟ7oSs`땞5,? >p+ + G31߉b峹QgAӿZ֒]CO` Ċәmj+If=H yT?Iw%|) ?k9/8`ױCix>"x?"!!?Aa7>tY`)L\نd^_uH. cٻ(:z$ Q?v#}/m,R.D6S}C&,KZ;6BEE-!ԙޢg*)ܥg=^@ӰЌHCad'tK{)/7SތCHy k|r6#͢E"T4*ZRk2QP1Zf֚1ɲJ ҩP$.c"}5~kş~~+qvOGsOA0r+/%X 5$qK~a۵2U[K]H̓ջ6ikYΒwO/ID[X~ :6ĹGwnL{K~X7Dd,Noe+(J7FluAETQB5ӫzpais]>EinX?S9SvHop[lRɱQ >£8`cBTyx*Ŀ::jwk7rq!(CMUb&u Q;h. Ir֛Z|lgς`*t#[(od%SVζRt nEBNVaśdjT/_Z;tjp׿ts#`+p%pK s9Κ")|(l Ҷ4X0 RAg}0l9L`z vEK| PkTC|\/_VxƇ)T*,b->Ǹ+S6s5P;܂5Q*HOfu'zYR/0! o#JU~MBלsbl4F(9Qx: %DD=8f맄n7CKGb):z:lbb9S8JFo9͌ră'磶NjK;i?6QqjGWd2l}S$e/|TqҧhD u^Sʙ؁\_5\P%D0N i¥Fm1J#M>d塣@MeyQV lxq9_GbZ.J,߱v`X#7D˼CLνrt|^3XU8\(;@9Ӯ}ŭjg`ߜhƱ  {AXY8q_*%=f5"\D!!;T/f ȯ3}ܺ9ܺ;i_Þ5{ٛAqy,on$ M ᴎ~m>v#@{̳*.&۽s&+]%,jRBkvERdnml* /_kP8QK>Y;0(4jP+R0-f%uPd?znV =[A# K.#]t:7|XX):;냷T[4Z6>P;"@`'l^%}$AamF趺ҥ?ωkJ=£Yy!ߦ /u7G閫 yZ{UA}S? eM"v m] 8 JR¬[¥6|QDEf1ֱ{.Dǘ#^tLN쳕ðF4%Nj!68`Х+(!fa2keJ|zTk/O)YBB7݅l^dxYìm1$:S:̊j񒶓Fg5r}" $ u2~d9475i+7y=zd)cfFD<]~9DD'dQ_2`6F& |Q( UBWV5^- j`- }o@17o;˼RTpSWʜƶ@.} Z~j%%W\[3}̚$SdԍOGh9C<J tgDdw]mBA.!`3#Bv6>›۵3z`Of cgEb ' jF9,{ۈE،ZHV:eG=<͢aF"B;VSx=ٸaIՇx8 "gh.Г!Fvp=C*Jß<;Ѧ=vU8w1s\֟2nd&oJ74"Hjpր+mH'j"z's>Ǽ^NtA-cpa_$> 2*XIأ:WBȇH2\r!>ᕺPOO|9RG,:%ao+K~_SB_oD|@d׃?f`=1 q6ŧ *oJ,0U>*wM~ u?{RDB֑cy5>g[6V䛢;O#1@ɎJ/,<'EÝpnv0vfməz1ȱXN4IĥL$!R }:s'I9{Y+*]}jih(5~`8njnEۺS,%47A<9svW v~"~G+1H?@ow"MNW~Ru-BrIrӸ/ JTB)^p"/@KWXgN?D!knYpRXBĢ_@i&ɮ*[HwWV|@EB]M6f`$ja[ #oA/JK^1ۄk{{('\!,Yiߦa1ΧNjҕ mۘ*Ct#cm}rs*NsI>n7rU ۲̓$W,M@ښ0H{5bLRǪ˕|d\ocscfhW55fNF)5!OM$ZG6݊*͆ɩRV?銬>zMchGN0<!iBkzŨ w*mlԣŔ`'⪷&Ji G%%l"Cr WXД5*$pR]S,};Ћ^}R+v H:alѵOUENJ0a=L=0ҘYV?Pv N mЗkhjTB%fE Ƌ]oi[1uu+J>gᅥsIx,o;¾y-JJjf?~ħ@6 j 4/sP{[8 }S򭼖Dᢻk~AkԀ9^NC<խEr__>qoN]*n([sJиΪPUjLGE9󟅻4h T<ߊM\l{";!\f!j\6(kbL3Lo@OZd{97:oc7r*vBR!yUFxj0;2`Q796]dt>{d D4ᷫ HBz.R<[p:FWۈ|0",N5ݛQ/!t_)aC)p)Rl]tͰ5QwCQ ǐ7>mN 9Driqf׋^bpTj8k Zuh4oBmGKD %RIPU`KA0ĦqC$"7Ai=;n)6Rh~PɧD~xn9(~ܴ/>';X\yeY,T9Nό3kr1&5 0mI nT"˾G5:˞uZd<ס`6RmEI_fBRHިL 03ڴ,`󧝘 yDhe㭂\!-y\q]F%Ru6>=0gkߚk}̀.2_"צzgkW/]>IXgH6&˨"n0[ rLb f]>Gg 37?gQ(w978a ";.F11DkŠ$2#|*o&0E6b_t^*n}4'fxsxo` $MT]z\e'ןm02h2aL.;Eǖ֋XtE2vL>ɗJ;V-,Մ^3YKp$KF[Vn'sG âsʐ`(PNH 9t[-GŃXGwU.v\P,9)C8[dw]p*kPFY1l vwfUc!4)nD3 "{lYG#ڴq~,.4h2pkcrs^A'f;b>نSiB\=O{ht>$ b=ɬt TW7.H?]Hi5iiU&!yiȁc?ULwO{F3 V|+5,bKY1-lu0crm{R!&|J LS#HZ uX'ޑ5 # c A9|A%js˥6,)-+׉{ ʃJ.2kF&x!wS4k Fz*O+P+ bM.tXڶ–3P|b8ΥVKVS71c3:*m !tVV1 d M?ixr[bڏ8Kr1Y?0B 3gt8T =KTT$$ȧG&D"7D>&Fă? D4{cp`0(VR]fȋ̝SDy~~h鶾lЗ&Zh yGg1G❺8|]d<\c+nZ3A>S4i2B;T$BR^=Qtv]; kJʍ.7@%#b$X)ڏbȓ\\fTk/eSy;f%5W B9_Xh4'Z3_hk ?4Q T1}Kf:O&V>cD7ttzIXJ!y}5#7IF2)g"=dFjK}rU&:1m^>_HiWNX??d¬]H3òX?kB,tu! ̑QJ4+)0P'0\yF-UӺ*<.鄣N'/&߷ZZ-1kz¬vBӐesӳ:LЯ/*BY ~u'KcHy/I6EKӺ W3jU;ZD*.~;9@ |]+t2* j-u-o.|hͷd)ahԴSmulbZ&_Y9>#}S(_asv1/#s&~ )ܓ r!J)(׷n=ks Xk5dycI;&S7,wbu\"a$2}9[=<=j -u'XOyQ;CbHZШ\PEQk#y yzۥlq%sU$m.T9kjxxF2LI}:lP[sL^D}+ynqKK I6J˟vtfU63P1nRiϯ7/Yks(޻E"+7`K<@a>_ K$dBפID8w s5xh'E6.-" x1Z%syS{ΙVKc9)z&&6Մ!1p[Gx\E %hء+V\QpA2>vX: VgL ÙtF#9*xdAGz|t0ء9`7s Y)䫜0!$S4mwqL[wo)b\NB^ kaڕ]]V07~7` (Q7QOGg!-.b/ȱPÕI^ADeyV\8* .x^3&{jR4Z;V󳢦e2NBg1ڣ# XXߙ_.񗎩zcd״fD(J U:4 0"s587trϷj[>M" b{ km>^[7ے<D6'fRqRq!7E0 0 X"8Ы:[™(׶ ['iWhx)4b{f= m|{?\һQd[gKƠ}r/X TRnƌ kZp-!vWxq5CVlђ7^aSk nR=sŬY)T$jgtvW ea@sg袽^w3O/YI紎W!0JY&Xp9$M-Ү7g:eI%S/s=.֟[IXQ(lnTҲ5k;[,GC rȖ1ylh/( kb|2#a)s+j?7>|7Q ]9|;(tt%zf3IT\bxY|ǎ>{GϚҙ%SK텗s0FUnXT5 iyArW "yRt%C6>`ZczN::qHL_v@.UXѼ͈NҮVwI ="(PӖŦɶl58#?Y$0 w.6ًK1A-菅[\RG`ۭGF[J 8c—27f!IaVB)/cԄ&l!o0t]j*ڶA֊5ߖRyHL*!T_ө_BjE\baXb۟cd6-KcM<+@B dv<y.@ЁD3b{(O|_aDA.d&qStp uNn77bf Øo|-useS.:boZB*uA^Vk3UpPJڟtg)u8{kZ/zJ "S._?WdW{զ ƑPy љ:VM :=wp|Y)U7=/+΢ 4IB,}$r+c L@Bq8P j. ?T\FրtuQSxiO!jCj %TەbISe>Gx3Uy7; pxE&r1źN@plepŇ|߉33sDLnc?y.N$l5\P>ߊ=Y/} M$=WM'3 5L/œ \lݺ?iuVq8U56g# נϊwB00eޅU)F Q궱Z8Jo`J!.ioG%/$Ӑ'e1+e"/4C͛+ k|n K6n6 7{;UrJhI"L{rz=+@6G&6 ɡmۘ"t 6Z|/wqWy2bJrMqs& m}9 gøMD^$qec<ݶkHԊ86ꢚ أd{ `{ >=Q̖~ RɦYݵEF5{6`ih{z1VK nCW_ʩc}jU%'cB)~N7 -׺6tb?L˲ڦxb&=hx\W¸for,dɏO%CfΦ2m2+7o`Y~c71>΄~Cu0*Dv{O,HE\qWgW"}H'uPD=hۥ.r\o6oN5+HUr:-46dH <2KYtDJOs7&(n@~Mqz. 齴?C@*uY@:DO#1*p3Kz+@{ 5ώg-8TP8HO׌&2DY;4HlVؗfw`qv}Y50A h<n2|{Qx* ݮ HfC-~BwG¶@2өİ>jcݬD|gw#x*\t|Xd$rqm1&]e;)먴K``Œ::{*_dDgb7<ER3Ē6#{O9 i h*IvS[. |bZ[0{,[Gb j>~]R-!|g%OĽԟrqSt̷p bZ|2QTÅV bCq1V 8U1מEj|0Rр.9ܳB^OTqRf=:`P(e!GQ:xXU'C+RlN;T@Qط]~W<^ ft=)ju'uloj vB8,>$+=^-I_:~qRIPed7q?|DK@tЅ:'bh@)1yB@"$5O!ۗb[E DscҀ2ʓ,3{P?LO65[ 5!Mm^E`RҜ/u jle^u%qVFHɒ^G}K[? #a8`j˄%U*$Cʘ {}5MKmyCIkcZ =ca>6[2(9XaM%WW͚g:.'8 tN `;X c0QÌeE #^#OܵNуhe5LɔPoU#lx| Ż)߁_kqv?㛷!-&GL2hjg8_W߫UvDf?e`|S'#7Bbd-׍yK3U}ݝG |n<_GKLm s]^|}^7AkLdQrOw R~:绘tV 1f 4 : 7g|)95gi `kBXzj*!V%\P]|O z%<:s<7HK䎈`8T`򣞣G?V*)kLQ@p=:Ѯ|MԿ:JI ha@eweO)|bčsRU)l1r9sH >XGM)ezd)A@eM~7=ZH=jK FW;Dcۗ*Rqc&;[Χrv*5pZC< o#~s Ʌ\b>cޚ(m<"ZH|P,PZ6 6RI1/0u:Ccnև|ԪB<$~p3ӃRE-y-? fL3 Vx?i}SrU; T߯?gOTS}ꔧi " Xt6eG8)n$'Ho,Yon`v [pJN![w^;%e|S)|,ѝǞ&*"Wy&]kp~'ƜJp~FvIӲsf̐;3kWMeX)b $t hXzx6 | pJ\;v9+aNh%\N=y=ZZrdUjm +aPhC!7ic5wDvvw+ov;b-ox'.QgmMH~pC)򽫠xYYzZÒzqbuӵxT՝ڎ%F~7`bݶ{r8nSTW 5jOwmy>SX/ 9GG*@mA@B >9F A<̐&_f/ø0Ʉ=rɿs%(& (*]m3Бw)g˻,+sBc@yʻH9+qhZN'뷳Jj/‡^XA Dt۲DA3Wly1X0}Mg8+ xX[`&Q{#jX' xW!Q rNq_ +ws@a!]"/nQT^a8ޔOo*YoM!ȋo{vNuHJa*fZSoHM}LΙH$,ze9BoKл$B ԁ@Wm؁.۴gym15٨wA C+SsIJtZNyz-%):UDY5m8Xryr \LJ* mO,CJTG&"7-x$ D[ͮk |Ztb@3A`[h']4_1^ZďDBÿelGBI, qաNX Э0{lkU0)4A\pIL~C>\/*NT:N=w5;E}c5b ΍h:NC* ,mDt?BTl5_uWүPx rFÂH-N?N"=hpQkn AV9mD*XRȩE') !d(K|S~Dvo;U^I\>A2n-ي3K5[1q $=SsEƝbXJ0*TS1xNvkd&I;$R͝0G9LYׂ[ZLd0R5eu+A]6ujkH4@HvN<@ 0SaÚs2gAjiFL=r/m-Moh ?* y66Y'6Ac *^m[}>ڎu;B'(>OӶϑh$Tr ~ Yx="a<+HS;iypdМT`J#爭E;W98?[*1O[G m9jQ>~j/n.ǞhP0IBzo 7{:PT,E78Ebo}x71 v({\y 1xj-WBJؖQP/ E#Nnzp-bpc,nu$>6 ;pLQFJ&X6$lJr"϶N'akL-#aIO!OגbL GBJ0#hK lB]y9nBB V.+=wJ~NN/s{DsPb m b09&ТVף'Q-bTP}nPk㏣x@By-R:OOFL*~SdNҡ6[B; 3w -5쬾tx0SbA병s a mSԆwoEi}]FW^;0gRT/ʶkjm,N#*b|:*^E>Ghs7*|fcʺvCUŰc-*48 Sd NQ4mJn,t?gd#%x.X+:D&FR^%(Fd+i?g @JwUz`=t¿XMD(쫯o:⥚tot"(@SB~{'?cA󕹧VW̨kٲ60D 6}"ГШ );<py__JpGb̹".ǖ~p 9϶75$izT!ɷSH H5hReHouRrz9>KZS%ol 8D0 )UJ+ i =ij/dxwFi^n"5:r\2R |#i5_P6!x9P,K\xyiI:bذJud?dqx !ʸ!7)^5xQa!_iz1]>,a[Sh~uzɷY7otQ{M/E?GSVmXW;E$˴#|n7u4є5FMV X%|f^E\IgN.Wr)üCU5'$DTNK.% hө %C .N"bC-k6kvפ몜 (GNj uJAzSc35J'Y7T=YdC2B PG'4`6z)C'PϞ*}WD %HH]3Ko,vrCa^5An4h<]էJ/F8%7Stw>п<([< 7UgP#fJr ͓}[sNc@@6GR hh@#썁6(kMcPuNq\M#{Ø|UR0x<(<#+ui=;-(ʈJWfW@w!hWL.{*҅SC:ݤKkO\<q n}峯F.[l?hpO*5j74S#b/SIUo{% N vgq-q b8K(1m!՚Zj;ZCп-1u?o4q!_E/ q(+0v|`FU)QҶ6+R~B;Ӊ{ٞ&P zAMr%uk'8BٱXo ݡ5xR;I#Wb`JUID2Y*`_=5WázX@s7ZIe 2%ӹry;_FrH~M/QG@ހj9bP:5HV3e K2&FC=$ s`GMg"t22B&G&}ǙD[JaKХ:ۑKN $D٪H-[jR{(]UGcx)E?|}8-5Z\3ƛG9KPjݹ  Vjz~"ݗ3 FR_[5u=MFT*7=5EjmO3!֝F B[~QMhIVR^ǿJ%A&HuCq< Y3t*Usp9x N?+Ѯyںhc1hqfԝ׋VOluiR*em/YH:8d^hρYvrox0/(LoO)?]&7*pЗ_K*:R-Iq; mm ʠJ쯨 #8S 8Wq(3['/-jD~XB2pJ_1!vtɭ],'.j![:w1;{%HzñumƽDZT$y0"x8R!;b.YȼFdRiE&e=y͞D0޳_^\T? 8 _]pxnBF+%W2 H mCEC7>x-x=3hQO15(UYb+'D|'7p߷`MF5tDwd{-}g:߃])0w'ݣ4aiH}<~r#+ڀ1JXLbw84ر?Y:QL'qtnMo>\pij턀#1]eQJY޵+#wAT%uMQbaDWWrjDŁD@5`.xS#t!Y)Y?YE k6@ E\{qq>^c8PA=as!欖cw: u=2mDʉBQ%($MzkYe?0_%L[mVףck4IRaW mP;N> ӮI޴ЂDy0USKVTkeaJ9D!@2:hPl\kSv,߲ f-@1cN7LP[Uw$aokаyL NvHĕz% 5/o?crq%W| +[ڮ^)%OޯZbǩM^L,!2jǕ4)Xy t7c6*'/^k_z+[z [{{hZ$ȅ bq!&55f?(x}#W& XP:?h+C ,J C-ȑ9~i}ZtiK5A_97!qfĉ9Wok_P NP+T ?6Dz r _h.3zPgB;Wxܲhg~J6z̒ERNHѲYO`;{ ^k H@~'x舽jwC?˩!Vt 1Ig j3VwKldF a&equ밙fML0Kw{d<5Tm]:Hq+r"+_yEDPV;kлa;$:hFћ;yOŃ̫li"o4-q;ϛNI7E'"y},szGG jZzc/J"m+۟!MQn-FCR"G6-p$aWN뙕 5WK_~LB]^Č+R@鼛QԷFCPdIVBLϖ$&$.f9Za[[G&~JsRh~p!" ݝ%OtH$pn0-vEG`xs KxdgʦƁs=?7 R" <ЖS]^ԧf\6-lمUץͫ7l7}s4E0X([p+vtLB1g otnr(:=g-m.\sτd{eϳ@8Cbx=clD!8h̑E in^t޷!`]{Y-iզ .n?eøgCb8w)bኆKzOQe`Ƹ˙;ˠ@K9Àk qWX0kNŋYcٺr`^zr$jn+J(oОm4!'>,)br+#_- F0h<oC4VI6Z^j9wn B%GzfBʼ{ªB.H=ye$z閎,/Qn4R-3^Cv>P^՗:7&"7 ^YP=;ԍ<1)5*L4跺23s@Ea!Ej>$7>%|:fi1%jWZ=pDFH %Xcx4z=to4r*HLhSIM3 B̛vC#)z*2Op]'`VO#Yx& §p {ًb7l +B^kxHlnɝR N S.6$wHCk{qZʖuq tb{%~A^⊒ 0+1: M\V]r/)=[5\+WZ1J&a_ L=g+Bc>"Jp/ҥ+{I w9ŖqH ɫJ~ A Rd(^^V-Hh硓 -VYկp<=G'p}'ޚ^ 2ZZEͷ,"H"T*D OESm*"x|,q(Y@캂@v4 ^EAl'/ԏbW;:T/ " ȳ6  Cvm93.9w;G(L螿5aOpzJd!mU JoI{ cm'a.xg^ 96ˆK|B%l(]gy#|]Dɿ5 DKj뱛k_DLfYF`czt'.U]nGs#xý"v [LX] frlGg ܟmVӛ%P\W=?R:4@I84LLE^L "fQopASʃ.r}%hp_ E.<۞ěTU :,3Gvh-ML614( KBB`6=NVJh?KBV>N>"=lu-OƥjiH^53ɐǙ&DM)+ 0Mv?"trPgYe#H8B#9\&p0{ah)FߓC(Eˢ57;,Y=; ԍTjOw'+\]l4&1Z :˚m!djP`!yXo@c#8Y-HgMg 4z~gGPJm[shè $ ^]_ګ<Ø}D8,)n/jޣm4bh+dz>[l5y8RgM m?sҪ- LӷnGG {-wMpTCW8"I߂l@s?zyI+xM+1ټK6S(MSK-v*,|ۓ: z.3IJ Y|k\0aJS9ULr70GSlp=7=!sdia~`NkqR#$ō. œ~~쾒!/ʻXKg Mª?:$zrs*q躚{H.qMO@Fӫ*A=l9}WLSOz}ͱu3EC,fN^= Ū,&OUnc*U$1sSED(03wpo1Gy[4ƼQ[qgNҨ< + TTZ- ]8EGWX%dHYd;,pyEдڇ̰"K&WKHJ?8dj&fS6lF/~pb'xh^>E1g(NPgS3rMAe90LM("ՒLk7>B(kg\zoK=̵-5z7oox+חWq* }ɞtǞ1\@иX*j&z\/]80"[ '9?]m_g#/Ւ~ v-'oho V0Ҋ5)GϨ!R-\QXA ͠:f٤:ȆK`DD*s0x?NA=d˫[yFF9"ZNG0#eQj=̾W9E,l&˪P?;`݇~w"mbB-o`سAϿCF9"q:L5ƾw=(m׾tM칳p7$ģ6ukI 9.R wfr%Ty* Hͳ0nPRX ,/_`]AV*izs…ɏ"x,&?=mLMEIh*22D;3d8ǂʏpbPGdZUpIvSHEQaH6P3 F0=SXb3UTW{S-$lK^seЉWnc(QWگƸIlܘs xoYćPq=헼2m(!Rȡ(܍qͫ [{|0G1Fq 3ֺ۫ iʹ(83\}I`v`5K}#*לZ+"a))6I&8q9sةy~?4bpſ 2Yvoms lf I\Y[ƈ>^tUDP=RT2i*._ WBl;Q5.$bIz||Uf%ȭғJ/ّ TH^|s9?AH­1V1A4b?)YT+1As$4rLP@ ˩zHBro%7ޫ{n*" 1ϱM} -|-{df t#rc{C x@aѽ_QA(m/N2b`$d^z{pr+CU;ۺ%ۊhؠ{_<–ްMic&LT/ [d*S-خKPS8=FZL`rQ{pkT$KdeIu}D״LZs]AY1pNYQP~*G[Z`Kl.%[.Kv!h3S/kBqD;Q,I|JbhS*NYe<ޱ%qW7~ _gK`&v1wU>\8XеO57{+&;j9U$ sQU sPZOIoݒ@.g{>̶oh"wa#/, Hmm[XD9BSKISa쀣DI'X# Oz_J JoqJ7 LY1¶7V n`8mRhN8 ޾ƷRG w+]FBKM{Og<]h+=e n=fз!rBuEi5Ȥq/IjhۙHy꿓"~{0|tڤuӥbܮMܔ7ChfŕjQVVS͊n [>m ;qi9Kƺp]6] -~0(՝ra:@WStUn?/fJQ :kzn(wd{L"Yy%-bS>0iQ$t};u>=@¡M = tK<9B(p! \Nx]sےP[kZj|%ZWJf)<~L ?t8;_nmV\^H 9fz\$7JSW1>+;ts>aQyr@Zwt&p8Jΰt*rcv=o]P26|#8 )$fKB%+MY5n+Rqoǜ{&!`TLrISaғ%PiW^XrvE+m ;p  ^_0]0o+ќ\,&)bξdz# 3@B]eOhQ+b'z6UG c .7bTJGG7]PВQ)C{\2 6~ig8a#RN8;H%>L<.n)ԮUa@Ai%˓p'uD%*~}W܄׼ ݈m@ {ީ)!79AKNHENVbxoҺI*\ 飔 [ȷ4(MAdq}b\n5>_a^ޮ<ԋii 3fxTb<0~c^ >UߖX xGVAy= C$؊ ۋFZs C%q8#`Rf_nOgiBs4"Ji5֙EOXQQ3Yo^~$A)`]ռߋO8L8I%`kRD s{*+R6vrԎ]59pIZJGU=oޜIDQ+;Si a/0n,IW߿Wp[?eѤ1TLnq..'ֻ+XV L$IwkN(?mJЅh y#q2t-9p_(uc:4[R<*kRBV!;,γ{v>)ugE(fG9IE25&V~mQatunCqFNzx{R?M;<-fk^3geJunvk3ેHwW~ʣoNjg2-754tyvߣW!\7W}. 8 -h<4}Q;E 7kCl?6}%!H>w%W$_m!@LrgNg.@2wkJ4hۣs5|߮Ot0V-lyS_ t%UzA. xpg'˪݄(mcb2vr6^e&GBId( Tb&F٫x{AGDry*l#6EȐ:<Ů[^0uE]Lej맜E jDxӣbg-%<9] (^ [k1G#kj7;A'SHh9ZodNgKcʍ0d|BH` {onGw^K&Rn<2P MG6*G>@-CFrhEL=Ǥ"(0O1k/ (/ׁ Kږjgq&R\u*L?(dy۹q[Y6~;.#jO)yTsgI(Mu~)s+"<;$`(Mu`DH 9aa}4f6PT kLlP \xKt,cxKqsqK?@~Q܎CKmvz)0sm~hPZ sի"i[|-1QЁgH$8wo\Q+r*'wF\[Ŕ1~wͅ\k2Nc[S#G_v } }s[t,|)@MJE3 pTUFx1j5M{71KϛtXjy,4T2+9y9 ʲJ$}D>2  0Q45ٍyیoX/1WME7:)u":4k:pg8"\=gn=УP “[RI$#¼hDؔ/<ԭ"8K`/#h SMm@%tJVs!Y18Kb}fl^/(73+V;re.K#B{: 퐸z,S Bj}gxf/ȯAXk~_mGvB\j7 ^\zMS'v3]zX}9&Wi4D y6۳%,h5Gca_'̝BHޣZ5B8  J͂U9߿,k ]#0*Rb6/wpα0xdYͪ}ʴ9miw/#[8D C wy mfz]iUb>N/_FV0WFDip.¥:I*z&+nE$ #t0.A< |hr=0{2﯎skW 4PdkfRJtC; qVWܛ'3& THϓeqE;&*4L:%Z91.qnS+o?K d= H[O44+r4(#Fl[n5zAoPeDnR1 .KZA{;.<ԍF\ <"T"ეPG]cy< `)y3߆ |+ݹވn=۶`'EXYP ܴ4m3(P(.m5HfM dsgÞg沼WDRjO3F]ßW1`sFk0uߔ//̍$|^Z(4~t4n܅_/8:!OyfW58<,h *q˾i#7W:eHKC[%!>Z~@3dX0o^sHievSwԅΜqUNP` (,4iY\.$j&Nw81}ڕ:?zn lWBgwf/iܸ BYB8!pVg0u%}CAҋ<;D6eqBi~]'yk%,U eKt2];rY{'j4ĵ>4g`UN >YSQ\z*] ϡ_YEOc߁&Yhlu״$b58niOtG_;ïV'uͦSo&hf3h1P:{(6J 7?bn imBrF_9s>Îx6T o֒3a*Os'lP;dzԯq[+^"}mM 7wS]HL y e?8VnkiZMٲS.@ZU9ND<pfdx&D|Hhy$AX0*}@76W\h+; Nˇ.Bd͔O_qZHnx!@nXŝb}7+kEˊ*G F~wBAFF4 mь}ƽ2A(ք͐Ѫ7]}_6=!wJWuC>Z|u;NZM\ sX˰^`x>MZBTu mRX!/| yV^DD%Ft7P)*aŹR` yuPE->[~2C+5'BX&N~AG׸ч_6ͧ BrUz͸LD1P!aѲ`E'zp Ѱqsn7z.a>02lKB=zq2]W2'|F$qcʎt/g9`p_D]CX&ƍ6>(RR*n Jo_(O +g]ig4 +lCڭEywG C3cH_Txq qQowX~FdmYP\d ),&=5DOc%2C zcPvE|å˼5Z{&1eok1a8WaoAn0~5<(u&͵;=M@ߛw6!jsցE> _4R3h]t!_:Gv}#LvrV% 3(k2}6-|ȱ%6\l~YZOކ~Ӂ+}Z_[%,*Î|Hsm遷)/_0agL0Cg|9s˯_O1*'饀~t<4+8Ze pFKXGq!~N1/uhtJa-fprwwͤ]!WGߠ [?nWc 6 VUAŪ(@CDpzd`I֡=ی92+%.J R޲+Ȏ-Υ9TD?%]ei.xkD>M) t0\)gUpy0/ DRrNihKkx~HK&x170_!$dcc "it\%azOO!*eyGA 5%ԻN=U O'u৮]B8P:\"re{Yяσ,>BE ?1O퍕OV9}oU ' #et 1TDMgZ>YԀD M(! ʦp~6#_E5 د6?#+Z1{/!@#6z>"! @uH=CstU?h7[Vиݠخ^S߯lr(ft@?0|rDVܵhv.RB+JJ xڄ7tmů- [WzŏehPHъ-%@W˗פma{,Y UU eDY]͎2ּkydϠNu4(AڻcrXvɞ\l ]2}'f󒾕oUf&XN55q%C.ՉY )PbrBѲio,Nx]}쭵(l?\h%n-n! c&źNC|F䛤Hܿ,g\Z#RQGɐAͭkqIK%uDUE묲Ƕs1\X`7tQYZ;! )|^I\ט-6.)(62'BìcZM 2xc|%!{W8V9 ׌~QƜ5jڧbP$#C-"iRuTI ؃+cyfqS&_B_߽5t1 :] Naw:|~h_rA ԽVM\`;>ێ!o@h:YX&zQQ:"[y1>bZ9BԹBv5'` BmIbH7/[W%=Svq#ϏBtAobY$7 Z"1t6.GhB vw }Tcu-d["*D '| ((P Ig+U.v1Rcn%>PP ;O0xDUObe8 .D _$D AD؉ץ=<&i]mQҠÿ J;Q q՞dt,NocJ0K$0O_Tl)ĴQT\wET@e:lu>N q܀d9A[{MO<7JD()RSP>?Xvs AHqPYmqRyk).+AtԂo6#8OMA>_.;7!uTNnn4BR4k|7t"#ҤpwT}/o3X^IжfkFtŋX<{; GhvUܞ"?t,V1kn$Q{׽M'6 9j|# :ዪRf]XV?ؐfRiGP)8]'F!>ƛ*4gcZ.5jZQP+L-D.d)qCMI =p&xO=ܥXaXy?^&7#KVlEs7V|D׶q"Vx<(Ր["2P]7gq*ϧٛA$XGH"4+}cwdྼJcX#w@cD/[PWv2H>R$VʺgD_^z-\g-J+(kbBe=Bh;(M`uOsU:p/&uR"w#4ԣtN Ur=K=&2F5}juq]BWGI +9aU<Բ.7vMu \vyMy&0HR &Q_6AJ~V >ekM_.]'j{_1Y_)3 QtfNÒ]é7tp+1m`%mǂ) ]<)ӶիA^~hjV^z K#Yrֺ\;H/-Iv׶vإWz՟EUs]lߨ,}ٹg(&Vs#ƀ ޒ>7SuRS;O>"gNxr6ҧNV*|2 zı,OEth[Z~O`iDs9d꘽Ebl9*@BoܒOoۡ%ζKG&S;f=r{eLwP}oRLJx za2{9Kܿh8U)DṔ*PgP5 e7hhbGBe7kK]QX$29ZhHlF ٤OISQ!YΠoO9D27@3TCn2Uu=ݥ.쨖*n'`neaB [@I.E&ۦ蘓rlg)>Jm;}Iw?XOԡR ԉBܓWտE^XA(4">zn>݈nqHEGq,F/+ j"n$i7x`~U . 4 ޴ΨqّDIC71N^Kn%]sT. 1">u|/XPE4tq1iGmhMQp7)pcBC\=礵/-=S& vne4=kj= 2i<ݠsЏ-0^ }ArӦ>ciخ nx9|Pw4|y?98:W&FؓڒC(pH{~tw=K M'׺T0 ~,ID&!>[i0߄%`̻ap{c^8@P $|=cv03 I1O)v?srcs S}R\o/ﳙm,¼≦u<JAF< N@Y9Jh+{xק#y|2~ۗ#B.K5k撌Z\xy5,CA%1pꧬ2'Y#3ӆXsajN'oM(3}j+Ҹ\:z Fuɥ7Q{ݏ׭SY+"Tc7D9ęS{o_,o&䑨@Nb|YCabb)qZe:1_ql+%$ĵYQC^ ^7d ~xi[k,9B,9J\",(hI;d3e%Lstj?Ax -r`v1Z9Y` d<6qI[]iX-Y)C=)xSASA+%o(-J#6?fqV:3t@OFߒ927e_@)7/Rо1qۓ\qh&1踠Q_heڀ$ .1I{s&L=#k}W$GDhݝ]Lf`\ Khe֦Xmb#uƈYT a>w1rՉutCaR/_էb@/b͡NP/ᔓT@<pݣ73le1du3В@\FIeK(A(u)Вl/.`Yoі1UeBq'V5Zr/SwaʐJ3BeпCb {2I׳iL=w󃏌rtt)&-ˏ]9k")7B\[G|@/Ed?e.[-:N]W'8Z I bFL@S 1'SrIU@~y`0 n.$l|*W~FP`bVelu>WuN0[)aD$`Q?t#Z5ɠI/C5OӉRM.Ri)hg3E'ݕH<jea5 )7+Vpe꩸_Na7JMn.8ǀ}\wDq5\DZePb>3 nD4R(!z5BThH' `40DfgHanCx+qݡFFgOXyQ~iJVk"^k$>~U$4% a b 7.MP>E<ǧRZ}#HP3fUreu`398Ds釹i5eͮY_O ToTe>c&1]C$: JYMpe{ +Wxa-vd^I2Aa{E7^,Imot􍌖 @\pV!1woS8a9{T&# X/ӭbDQ:(vLu3(GDw- 3n7 p$jHZ$74~)_y6.O σ@JN0Ų6h+͡=~P%fd!]Qgrb MyTA=i6j~b L q$C;owvЈSğ޾E~@#ZaEAKsm9 w@ؓ.K-?tZfw#=-<-74a՟dZP$UU!F}^b<3X0?T?\mXbi+Z䛘^tfWXT!҄s5Kqyn ^$KĞFshO?ck!&jl0j7 $GJ`\$Ӡ<Xl1xɯ6dSDnkm,2֍ۚ.O2% +/:#4g U|]V!E8FY _3tnMMVpNMG@6U3|i̖yJ/;S:ag4PSTm:%/8i5`" ?h|.,@s 14cr+ a0<qHA \BV@I;k \!e_U:h扬X}q#% dGpHU.g 賺u8_o7SbjȐ˃7#| @(큦e'5cN%v9͒drB "S*S+qOSժ.۩HV\AFXKvHEjiE1g +Qy7,h>F[|zOPac dC;*> H͢`3d9(L4nZԱl`"Gʌd,a`a\jZ;qW`eFr\ӡKFZ<(~ [+b7 h@Ţ;f6@r̾^ݠzsRR ƑHJJP"r/ XDxs}EoVu"bJ MҬM/fDD:½(䭧)x%#Ђ`l]i=`a9}<izK0vHٿ\ImG3+ Fx5O`u%$H(8,̖ӽ( B9u`ֻ֫K=K!F(5TVЬcij; h־elnl28STipՀ4ס切IK7KRq6V<%'?1A‘o8o`K. byodb.>iu0%*%[4I'dB|?͍듹 a)`X_ԭny;nbǀj0tXϢsk_8и)+GbTpMwj+hx?X J~)\)kj"g:&y_.Nn@W͆_o!˝}R/ 㩀936XBBG@3O$+ְ7cSηF;2Vl,Hb3\db s6{dy ,ÒAavZ\|Sj?@ EIŗrVrBC.*hl.M,OB3/K_fJFt4>}':/-pn09԰D!-ʩ`q2%I4G6v7)8DvnDjHl3t Ȓeږ $#B$??x 1. ;Vb-8<`G96mEJx$_6^(Vr)""l-$*=)TsŖf{S@E'OMƦ|aJCQ-΢B=WPÒ1t0ovv>_0$q< ˾ݵ]lߋ ]иXϞUdЗ>aqy>nĤ]Xkš `oOSx ѯ$T]ZuZZA@,>f1V.%9 ,+&F*P*??g_aZC+ǷjvjGJ|A!6+䶨ݨmbN3֠_KASn#G3p܀*S\%rXg3TϬx0l %fjP7m`nߑT_S?0ڢRMT),Э?Ȳ[&K2D&rE<'TQ ;FT#wZ(W0b>7|慠3뎒V=` =.:QCG&7dMv&Tǰ@,zD*`SR1}Ty 0$x `|Ca_-#Xq7hZثIQ!Nnv{ . ,W8ڀl iHC%ZT dHݒY^d+qBedRU[la2?6u* G&bF@d1Hm;㞳886Л6)ʛ2<~Ջd+͖U?vpZ|ŃJ:&Pvڗu`65o4)5.YB- |j%N»^*C'T%OZj+}3xnn$=D M6旌uRדTbtmS^c ٌ2HWF!,%$i g)k yĀK4wd=/mGyY1ˊ_1$}CuE%fZ եHHHF I2dK+=_Zڦpr3Y J۞͘UVjP3g @0]zyaD!ۛGclc! Dc=嫛h ^SM0wrh /' 9Bz3aG>b'sG@.ތChC).kp3R>gW/ܴᦵ1%lvNbEF[(~8(>7{}v#ER{@dy )JܽD} #+[d9?X5/x4?ȚT*(,,?]bpQŝ"^Gl2۳$uspY'(<{[Uhgnp+Y#5/DnvQ#*j /lh߇<ǜR<V&31ݒ!& 6olfhVn;xG1fg߬cw|p5f7g@n\*1>@5gBuOcFwnPt/t+֫JHŏ!sA(8/l;B=}II!S /\S&N>p㓁9Xh; en _RT EȪu"y-ily/0ve8~A7*DB  +.ߵ.Ȝq*\ ;ZZí?Qqq3Gq?{9C 37 euSm|=y)Zm49]4(J$8GB7-bv j Sԕ u9s\XET7AR{#?"5Jw.zY"4nod^`"S@[4<j 4%:=ux/?8`Z΄} nrXV"c<%fB#m& S;r :kJj-$$FS5O{ӂ@ocxlxER?3QD >ȟ"W|n٤ܚ0piWys]%p}v,'%?bd=-`(B+0o-YZMX-x?u~쑇f߀t4cNTt$E5]yT%7R^UݕOפQF (fjjIU/HЛER]<6'*}aH9ύ/w `_{-=T5x)U\Aob2ʝ{U&U&G='~ LErepe4 z**~ejX7:l4`CNȵ'hE٤`F&5/ꏔ${dVY~ilWwtBG X*j͂!Q{0]CtpOEo⢄ٮ8oUK%KIޏTyj|}maza"II[+ᥢrv񜁇Yд\O&n^T|] @gZg}]6CY!YĥItLQ'avJq+ /{D8f@EhN{*}YAMK&$hFPy_F,N^]8IF~Uu! \kWӈ͑lh~1Q?o5 wKԬޢ_W9.$ y X627vTOtsZhQ2spuW.Hd+-z1KKP{I;^ln,| '7Ȥ~O曹K98 J٧ pS6+}Ӈo;#Gt?ފjZai/wrm!z>d_1헒>CSۀ:Z64Ͳ-|љ6iPƩ L1WBTfw7Qu[T+qrU41sh"F@T҈nDTFۡ8yZJKm쑜eBEkNܲG/->г5hEkf\Jpta ie <b.do ˁ6]=_@XlWUktyZ;Da _YZG"Yb}a4 %:ΤtD_u:~?h7`ş:ԣKhu[ x=JK=sZP޺pbaI=.wI'Txs2|? akIXհ%E>5[qӒ[2k/2}¸xu> hs?~ &g؂g8{}lʽRF(C ~ۿcf2ܸ@"G6wd'|Dr=YdЬyca:dAe2!Vv)wQ(`jwY𾍹"REƅbZhǞ't2}#UØJ )bQ/_)4_ :ajǯmߜGʥ@[q!K2{I\7U;V0?2^ƺMJ@(*YE(} L <6-úD¼l֭}O gT~ ?$$I 2X0E%m R9^fyⲓ-w5hC(JGKbM$?5Bdv?V_X J7˒_Uo:!=͊6{Byi5%N2^9ﯼD["OL42}PZYf)ЗWy#m/H a𤃷*ܴҁpbe6$i.ƣzC@v#m!lOr3䦂1%%$]u {9,KyEZL$gI2T wuPVmLDZ$-hV5'_b2ثOt)CO?tܶJ_"FAzS{-rSÜ C_Qu%xrk% Koil`* yC\O&d}+~q2/tV)q4D0J7Yg ~pwCX 2O_<xt.ys22EZE佄#/S6.I?uQ8xFW)V@e  V0U5t' C;ʲJп`o%~nj6DM(87ZPpKߪD̔y.^^ D"0蜲(wR]ԼxM6Ww"~ޚ/p $(G%%/\9RLnդQУvef7 !'c:A}iO  #zIgs|軪=7B+W[HomL>/؀[ ǂ8h:dc|juԯ[&Ë#bM^WuXE["*,,[N Woś&7xUXo:X.P =&qhEeKcf3T;v; _3NYjڡݓ3_6%NCԏ\3m3ؑEt?h9gLґYEC;&53(HI.Sl !m.ϏT_p94SUϣf]WڠУJ>_Y ~γTY5DE(i䅭܋hOg,=ֱtY;%ѤBg Lin8Ӊ_ntͰ잟귺E ۈf@<ȵ6֞_ػ l|x}|ھ+i [J *4ۆ3]ٸYP>r^h˔#ʼ`-V,${ /JE(i ٘ZT ZF[TeBmdp:q XB~D1Vb nn, {Z(Bp\^&FImcq@}=@e>tm{9r6p݁<0_snSBS.JN*-KTdQ,H2`B]]Lkrh-4P5p!Xkދw%w\HUS~Oiw`(ff5e3՘^C6X(fO(D#ڨBN*0*vH=3נ[6|8U؍S=&,l/i`w|&GIņ`Q5{qޖ+u$G !`ȩ.#^Cl QjZ7GzXYtcDxL 2ˀyF)D%;9G=9q)nr&/,~SV:93*6awT3~39=eJ.`rh0qp(q#R-tvqާYZրMr/zp˾=Y${4[jD[tsx\ Ûn芹`Ft`2 D1l(1q ܍S`N!Qc }>y":uP3gr6UmB"2ZPo@X>b8~̆Y-GJ#=Yj1mT6fcL\WvœI=PF/k|J 3|S#:P(S橷zMG|>:[KK5yo޿JJצV}u'~m} *LEN4D6Дzl#7&_0U{cU]厳0H^LU wH)$fYhll_÷}%SIqW bS:`"]b6q%R*# QC˘ >XE%I c#@NJ$e:3I}2`p~`T3)4@}0$,YMZd ؁!10MxGkv'~:tBzP~ aBjl 8/<裝~ڃs J@!k,mJ+8#{tV Ά]TrByceX9ŗݟ^ ]_.ђ/@#@碥fʌo]F&y@sOMMWKhP8_6a::U`Ktl$QJ(9v8?%6&<@\C4ɁpWEDh]Wh-yuhվZ$d3CTor',bp^uJE'a%O}dr}ʜa\rk68*3|-C_~Jw,IUbw@= Bow#TVhivn:qȊѣkJ߶[bZj.Pn:be#ԀӫVĺt>_N q4cC"|*؈s? c37EU'GdiVήYs]Xޓv>9V*YcPu.ۀٽLU]ަn#<‹o5{aK_=-JEGgTGH6093\~ \!(8b:uw3Eh K$A C9weݰH f ~#vtd>a?y~PZJػ n3!OBuRVe>;٤֨}Sm:6K5X%ƄTˈ^ADaUQKjgJV]>pAF fvIxp3~LJ/ȋV4枈|a7A?73K4MN!eF?0)R3+Gw#6yܜ:+Mb 醙:`䀆;#_]uTX Of"9FR_ *2*s=R8ѓN*co?@u.xKmlxְ 0nKlMѷݟz (n_1C@0ʹXGl.ӛ] i''E&W; gyJ?W˛ e I0\g/oҨI2Ipy9o$>o8n[~$!Ɯ>h@a|X!;g>hG MCB.UT>ͺP\2ZqH_=ߨmTfw!h R ͖o[x.Q:S7Ar/!*U4rSyPO1k/ܝ3$³-F'Y4Avn@r*0VMT1_^ bfbgs0C돃)k~a5J0LAQƙCbºRD4?pUigjʈL^pu*blLF:bpZ}e?AEbYTSU`gRߡ7*]T0 ־{p\_5ば,uyQ6/|G,cOG$WX.ܢ;T#&lAy¹UɩPg) o'@'NT2ťnL::W#?l6ϙ`Bi֮EZz4 5= M=i4C$[͗ƿBۓf4(+71r3OgPd=wqV-tVsZhFpU638 5п*zOSgPk׵ET.Uy7|̬g$eeK%@>+W[8msE:NHWD;눿ٖܩߩ-A6hL M^N籀}d?HM-[<-bu|)w6\D{J(/+Km@#R%>Nl(ӑ8z> =Ujon|_Hh3mmBItPRi|Y*al=\ba qj, Pr;L)W2p']\OU -U7m /P6c!1:8xk^"haY{%-:?P0-FDN i>t5Bf9f"o?.._]1Xկela"۵0STu_J٧JxK7"V,]lmyXkǀ/2)9$xvIј*Cc TAH(WE&$]⤃W3L}//RE6 ȱBe xP=AyǓ(!$H%,c6mkyO`q~5 B1(&ٹ3_)S ;6Ҫid<_yy01HFQ׋ @ӻ!'ﰔnh(T-xUy(11ړ+vG.=!G#ߊwϘtD-$kMWTR( T"{!876@/h.dQU,C^b\MFrف =I`6-ӊ+PͭB_a{*6#|`(+`:]ǃdz{ۡ[ ')R8$OW\0"q1l9]|C%L HNֻf5rͻ~K/))CbI>e,zU施>! ZTqT9^^E݈VnR bx4nU TVag W"XrfW @%:Nmmjwݿ_N0XKˁȌx׫hA3E{tN<0a 4Hf&uB+],}GώU٧rV!2/D9,t/Q@d()|C5Z댵#Bt zj3Q l|sD7nN|m: 2|{O3 3gC!>eogĒ[ 0=d&g8̙0o4>G'wѵ ڂٽR|dDƆ2NlЅKv*ק@4K-+o@+@ERj> `a{ ⿱FAo>VnjfgG[{vs"}Eti6.;s㩖ٮI8M: # !@joW `v,Xa( {!Xː Gո(}N)?lImr &~'ƭ?lpdeP԰55\I4浧"CD@>(JU<7,,m/NvhxWPޭPh;;6}=Z1\=`(SƒN^|ruli\V}T/]NJE-GM xԧqG48&\ fqz,?׏*xyWecـ-D"4iT~֊I5EJdZD'4"wS%y=ok%rt$٨Q/)ʱv݁槵5ZeU`AY$mvUBoqƨhI<%Jw[ m ڬ`9,Tugoʅ}&-|?n~+,#x czi[ @g+"=x 8å\UO!;i4 ?Av,%Rߤda %CU<[NU/wa;ofLr۔>cuOsۊfCeMy(L'svHѳ=`wf'y5kPSQkY5ݳvF!Ď(j&*8K:˯\%u6hbQMİ忚tq07{vrVN7COXk^h@R{D`^|00HvHINeqm[7IY80<۠Dȭ\Da{99 Bb @ $_y- tU( 7ˣ (S_жU *>׵} uCvSv`ukV:-:7>VŏfEHat,o ,!SSIe˨;ΐj8YL=LU:64Dv_]WR\< Z_]o_2:!{5Dhy8x H:zjh Xr>wZ O]|_"#{k~rXDVxZ[7;\_?x\`á{5 uZnJhm ^`"{FR aG;T cjyw+x[\M%8L\0̀g8pz֐" p2~N{\n웿X{R FHچ^L8J -GX DO3!WC>`ؤ{%!㭆&d`7'!cߍgxmt?n堊Ȅ<[XMe`/69<`wӂAAV9p"1cމۛ1é:k)V>cTN7S"l=۞Ƨ ȀxWB-6M:a1_e[?#8c @!'%x)!PN//9 >4c<>B@q+>qgdԈOP nߢЌJeIMQ4-3cEnO/>m~0k^nObb1>=N xȠ]uT}BٜOu TL'޹l;L,5 n'S *&Ƞrx@(Ѓ&̬Tz2킖h1{> o77eE`yÍ63 ؽ 1,u% zzi{~=1Jv{\σ2#3ˣ5t? FC~q@T&CHRr4;Q'"5ю$<>#g@S} Pmv%^rU/TFAE?}J贺!A2nu  P8bp:Y=8۠$9.MDΗ#($S-Mw;_xU⹻B̡1 H ;՚R`DPbN@MOgKHe㡔$?N 9R$K!s)o7.4[\014|/MNPb42t1Ԯ-?oLa2MҎ`> {TLo@˫]SpV@\bpZ4̂SE5FE.iEۡoGS).cįk D"(~t )nNU6D|T DnfD>zavSKC q1|_e Yhcn#2FVү2q-X, O(WmԟjxQ;U1ojOtV IG(kuX58%2u6Fs'2H_\x9*<σ-1}gҰ-Nl*^$6M5c痔)'E:Xߐ~[VܿaGrΐ A PTBbLR/(] 9L?/=}ɫz탢!sGII |&6ydXE {Ec1X 9t4M9OښVToAҾIL3@~0ee#?D~Bdx~]N}?fwQΕ~9!y߃W߽oMyf C0oۃu'rjjS>ސ#16sgs?ߵ=YޤI81bCٴx"?\o흈#P.W{}=q5t0h Нyհ$rJ./lQu7Q5<AE g(+ L;P\gE;6`! |}o%X׳'0 nR^Q QFv1MFqkF4ܫMDmKѴE(4*"<=/;ܓ\aےwyI&CCnD4Fw2wmӟBv #F~;5yBÃb9.GKt@܅yk8.L 8q3X"n_F +63#ja^8mW99 `+lM2{]9@j7fQhlZT6> 7|EJ@| "NNzF#yN'Wy/_?^ =RsўJ}M1WH[iVoLQ^W#ܮ WwBUѳ.: @DŽp 5@{헕NK lAF;f(&V}?Ly: =O$"4>SCfȳV\yfһĄf9zx%d ܛJ[PrBMٽ9"!ylξ =kj1j+Y=FWc߿I٢!\d۹7/ޙf!9Dy!8S3X(3SA/NU hgꊻTRQq04+Au|"КHYdh%]8^eo~䦅I2^){"#'UR*nTaZ'w-l{'z`L~ۥXX-_7rxsAج؉w,rwc+A㶊@ fK9, 9 .yLpAnnE$omǂP!EA͢&;cbZ6TF Nd.RCGbN;Ap& !ǯh5IEuP!~2o? CIJ6o"-i^Qui%wp"fŢ_L_ZҟMOosߒ&qp!v)Y߃-AH֧R4|Tec}C6D 7^+AOM菺ndilm`A`$`Yk i `h zݭK_ -FҾ\DVqRe$\MLj5F3УS댣&x{Hp4|.x#g= _o/rRgkJ~M 7)YV쐌tu=@hTd>*TkB%\CE,FV5D4L%'\~OHCo 3CYZ¸m Qqzf/plgEf4^mTJJ쒵8*;`** @&y]j ;CdК=B%P`Zw;,a}U/YM(#D>B0ˡ#K=B\xg}a,SrH%H$p;)>҆Ljc5g.5x3杹f}9dVUCv0SMYHl$5T_/ka-!'t34NLi蚃+Ჲ ̳dth)<*+ލbG*+"'819Z18KTyֲ;_dv0 oc{VN<M1='<';~odž{˦ Z xcr_?7ǝ$mX,CO]WMP B0#6`5,qh_6dеVyKe 9OrԠM_B B,H61qHcs-y)')Y;{c F L61&1OrQs.)ޕ릐voU}%.dJ#a_x GՠiD.; 9k#n.F~Nń6.^ig!$q, 32ԣuԙnŐiulkoKdТ,R/G|1|_S݌˜ICq@WF{ geRTPj⡳-{DCpG۔gscv xӑ,3wr!|&O x ! 8ۙikǔkmRu9e.y JQ&oU)=Mu5Y҇ҧ 3νe^͏%Fj[Vsi"\lU8Fcxae**Kwu?v>|%W-RbD:ޑfmАl)0]zo+x2#Zx2s,R|xQ]Wt,nmuT/ʶT,EaC쌠"8˾n#;|MCl39qcDhX {o[s4%M7Jx5qhgO==d= B Wk)<[:Cj1g?H65'JҀI0lDS(N'ݚL}/>U:3p1.2a¬_I @3'k]Y4N n_e(F`'S?4HzMh53,O\6^J&:Y⎺a&+^Z\qڭ"r0tH[G4u" S ihoZ,~P֧Kf&U2!e\9 X&܊ w볓bPDGu^t="ICB'Q7/Euq?vU7,)X!S R1`lgG Ϸhpmo/[[<~B$A}Z5tڭ)̀$ɸ}p߶}bX־ƙꊁc٬j 9?&v] ~~jHO`SL ,AaZ NjW.0$DZVΐi1;iu׆lFyl"$ڠIRL>K<<^K3}a|*5ʞu+I9Y+FA)u#&5m&4oQ8o,t*rCN6z+0(UjJ;^ACk |opTΨG']4 2ͽNlsπ\+*I}5-"} MJ=^ծR/iuNHi2MmQF҆W}-י XEor?r$.V.T`fPmɻV \T]!d+F{S‡췼/ojm ҳ!rm+qO8VkuFHswՌ+ w 2=~gV2ˣl&\tnͺY%jmfg#g+8[8(Q$KkuSkY:zXUÍiLD>,{-5~TAD\7ΪSlٙ4"e}HjǓ2MwW0ZnPe/H3h4Cod`6 :daXG_v(p}Jx%ewZ➮0Geo+Lmr$L(W`|Pו BGYGA7uX1tqBA*,#0na)rۄ[ĉ.Ƴې륧G6z7'ngaĪ0e~b}g"fC8!2=fLe?SUS6yEzkkjR6C0o[D"»YF7VF"Inw:BC+KNS{&F@"n@8mT-Px#}=Q(] ޾8L$ɂZaq>.Ju!UYصTnE7 Ŭh fl:ZmN1Q~ P0#Y7>(*zg~l(Rq4xs|XTs-CbfVNWԴ&m&3IDpS7bo"lڮ8xkVaG&M'MSsיA1*z0 DՕաh0@g(-0s1rqjYNي04gVyBIBn<1J*H?7}2NqfEukQ@ìա!)SLrnT Hh {9lt}+)NeH+җ4ZrXxa->>][Q7L b3=HmքKg'q*[7^8;(G^aLC2D,(W *IY 4? P$e^mgsoMoa?7X࿥`r6⧸#cqo1r [xp-(JPn~"ػN;\8N&5DͫdѬ4\B~l2 gyO%h\(V E(*.r]iH=/sm]hRxQ9hEp o%KK+y-R`jۼ4QŁ&}u<1YiNܒӿHQ?z ,}^4[jHoF}ToEhpWzAP!ؑj~pGnO3I2 Uн#Tq& QsnlnVDo#p_7&DS ΗGXqtO7< >TS-$[X-[Op|w><Ds }v;>gs,+ 8NV qvڙMЦx,5-gq4{B!5}'|MR>{lV M*pǏbke)M,/vP.9^宝W͆ 9},򖖭؅M|N%qZN|{V1Wy+/iEJ1%JS218_z&O>Sͣ{ (!Fɤy 8>RwBox 1ZR{7.nd1aFM1U]D/B`RK_ީ27s!P*05cO3Wu[XaX::dq2-RWT0J#OXNN?ڵHNU[ܡy&tU3^4)2 {\z81+"AS>Q>1>;rEVA;G涎p`99?&ɿ)mlҾ{ $"OI-qp?wKU s<@tdhtwح,9%XhC,6޳^1[zXϩd֏[ *wX2s.4^6S+,ltFjA"#!1}n{GYÅNT)UPR,y|ܕKi[́Ίkm-U!ٺC bNiF|4Ve{" r݋Vo;j4hQQXC=&(Y{ 'zTR)9ޏ+ p#8#|,/?5F#7m#6]CX;_AQp,T99^?7p`Tamj}5OV>OY([]_Í+;"`gRr^*G%lo3 VAqܞfSh^Nnrҙ՟|5lgD̙=FcbNCQ@x]s)Ko]A˚ /l׫<r$PX [)ȮTzz`MQ͹шXŦ/.{DJ6(z@;cvvM9/uR(즦f+\0xR*@2,$3)UTS"-?u `H_M"8p1{ '#vtP%rsR2Q35,EFӄ7LjSp-"-ODfW\~TqU>07pKtjz>+;ظ<$ȐJSbuLtWծrj*l>"пsgwTM8Ihä WÃ[v3cΝxQP0?Ie}׽x v7DM9D u`'L/ եg| ^FyW /CK[f13U)Gek¢Σ۬^b&LLS0$Xp;.'WU"bqSh"%<(_o4idSGlu (o I,ւ4]+8XHa5GYԬM#߼̀ywo[Kmiʧ'Gr9D.Z0r-`g}C*,@wiX|SqM"x*s@jݭ`L E S%nb"{pP< hvBa[_6'!w#ڵ+%e/8R2/ KQ'zscF U .9H!4lmN'Oa0WK#ALv*ĪG;e]GmF҂':Y{a?B(1dr,OW:aG%ػAf:k;OJ^xӒ[n%qdz$Ha6?Y:k(WzP gͬ|NYq/;|[^OIC 81%JWPc<3+/YJr4"{ͺWx>F 눺 aƘ8NPSa/vQp E_ftK}>[݋|'D aEgcM^P'G^\@* n7;Z-T 8Y_^p#Λ)  p_Cq*B+O먠ɇ\ؖ\?Sa봏.|x%fy1+gqp u I9 p\5n ~|Ddf`}9ʏLL9unOs9%v=YR4=x۴z*.W,(QihLGXՕJIIf*Ch?"d~J++wc#Ƴ:byHW6WBbSpE7?r>(+[`x~1ju1[<snM2YF Vlaq̯,?WOHIɨf>/ڒ bEX,x, )'Y COm` 7V>2e0S*э)t %ѹ8Ķ:Uey#']S_fye`3&I&IGWN^jcg7¬{lSB1hP*ά 47|)4L pgvMFc2Ē"Bx]b\9pJ٨@N X]޲ʾ#Ed2 Ǣi&[&,A@aRh0D!珶{qT`J1nL= OBGrdu!R`̾g'! %[Sg0. ^2AW70>Ab8""_+8 Ͻ!;TPn6CG;ڳY!x}H3lm{Lx0QyJ{y+ߤ̵oJ7qwR q=+VV U"&xɖ4=ǘ%kvi+{wGrB %_Sڹ`j$m%Hy$3@b-U)TL^؈U_2G^dJ}h#_S}9"S<2? v의qϽ'P v)c\/ 3 rBDp;^ᾃd)ƹɯ'MNJ;/7xs!tɝݮl06?Q}B !ngeBm2yX E&xꃼٿ@wnuΜ)C*;;{- ACu2lNb@ m,ʝVy>^MTm3˄+Z464A9'UP Rhd荑 s503@ښ/LSu"h^P0g&4?-sd.Ž t+˗(qy[( zK^8-%1c/FAmj0BsW [cŧK7Ϸe YypdSCDn0rCZDu恵oXQs2 S#-s @8?(Ύ,!K'v-q1CE2ql+T0挠|iEBE| {'@ 0Ob5#$.&Me( nl*WQ!]T†Lj܅&Qg۠+׮JE1or_slhELy:E)U8O> "xX[á>E %w4~ET9ybxP_Lj#̾ѭ}IʧS.JZ(>>~ΡdȈ,Q:pXⵂo 3fcMiD78;cߕߘ,zݮ_I4!UԧPW(TP5/Gv,'`}~b_RpU5w)$*'[i|Ƶtlo`*\:>K6`T=3#&<ǖ ( t5EE l7g9?_:L쪹AuP* Quy'(33KSEeTzXS 7TOh[ҶІ 7a4V h$'Zґ'rM,ɦzPhU?J&]{Eۤ7/G{- RLQyly݊m &Ͱ86[?#ddRh߿[T7IޒL hc@Sczf %ҽیR"**PY8Uz7IۮM[wfGwOB0)U=@ AŖZ9 ) = l̑bʃki(̚+5e_wZSPwP!QQ^xG#^y  ]Va5-X6QxCNcabYZ'*L9qq\glU-e=v`#-^Lq6r\ܛO~Qv`Gɻ<.h.y M4taM:,|nez ~zSb rOG$oPjp90i/I:iG|1=_!ݧ1,q!fW޷>1bam"lar %1rg''egCmvPt(&Mdl 戝$E <С-e }(O}i9+5[h}v9͟Dny^93)kN[l'wpkMlRi.!cn.%-dj6d7 b8Lɷ|D˛m;HYcf֫YO}KSj$cR+`b+6ƀŸ!]躑6RfPC,ieTǧێf[gm0ON9R+CYZ amPjY d>\eiC[{nsqp=O4"ebLN hJKyŴCd\C9[tD]zѤr^yzކPJP6ӧpI1+6}ncl41 ekZiQ<.btcfޣ/*b@?\;&H$!WVUzw&\*@v-HR& 1tG/U!0Gb5F]6= =t1*i<8G!VzV 5if v7y%HAIv0BNn,JƞTl%Gɞ(!P_qܾ=4U//w{r/0-T;D3{-~ Cd, R's)YL2AYgƆT&gh~-|fRꆯ=Esemj  M;:A0~ia6^Ĺ:UZAC'Gqgvej>ǟ7W`X|GBV)71 esԷ Ll_t⬽**bDTf|fq?jUS]Y  >&VеDVs0n6ǃy$%] 7BR FaV{?`'WAKM쩍 2*=;t/AFBj(B]5 ȿ7I7Љa{Y1yԕ c5c<$ !a~K6ޒL48yY8S'52 ܰIN8(_ k _i/s0e/s5_NfTK{ۿ+UmFFSqagpt Ev/*bA{mP""sfkukhb2𮤔m}afp-z$^`2Չ_DPn@H)KKRTYI}e2 eI$@1Awא=01Ћޥ.Ҽ(Ѕ{gn,.X0&@ onO1Fse…MӶdd q?!Q${FIo9Wh?T< bթkӐ;1Xi lE#: f9r$CS];}=>tM(lzN+OpQ?kn'~|B\'}C3_L"d4I!#[eǦdNGS:w k`sj)ϳI)dx;ɁUaAa>aNM`Q?>qoV 1b`W^K:ܵ)朷G{Yȡ'5]`tO.154[#\_xjpm4Uܰj\{P[֡-٣`Xʼت2}G*( iMg b:xKoחƔJ-lK=hx D6\"!߰煉9<EE_hU^ [W a Ez\/S!hNJQ@Sl2WB&c؃eI G}O_ٴK /hO)ݎQ}E͜yW51%S MO:@{4r fnR͋؍ R_r51G4У޸ЋH g#/iͺ_ 5s@zy{ZA :6TRp@ZW[YpZj8j$(2-CÀsmr&5[XRv!]+;m5g=gki7 [1rǃLu.n&F{9_w69$T׬NKk\ۡ} mka☇d>=/f}xc01wioLTSJ+mBIԛ0U70Y瓟)CL/}+i= zפ.A^7J9Yt">dh=/KqQ_sV,*Oצ1[>&fd4;%h˸L\ VR&i 'jͧp ^Ɯ5ȉ72xnŎQ]e~ f\:Z,k',_'FSP4ffoxVAQO2}"=<2Ti٥{ڶ?صsDt<94tK7LiH[xDSuOO!EJQx[?8-Pt'ox>-1c]X٣`T)Y֢ 3t\u6ڸ=ɎbdD YʜZ BP2:a"Hb'`ۅy-tkXsnZ 0tWRB~aQp2Uq²*-!ZI.y*E\8:_&7t(19]! 1rNAc ^˞b;9~z&<z)I]\& &!R|=ioת kky>gykyT y 5c%|& 59j3sй`_p:Jq0b\%rskLzߜ#AP6WzכZ`NDؤ5QHdWM̞4[qmZRn]YM!O,Qs|- AZm :,eEiE1M3i$}3ZXbW8B!RB;ov8%^WW(Gcu4&˧? 仗KO Cޡ;rPd:*>~NuB1k[q18uH K@Wge9K}Б] l*·$}V_2, 7D!2{4%sOwm D"' iB&lbhԟD6"Ϩkߚ؀,>&b/>gPtp17o5kR4ɥ$@E~׏%SxI)tby@2 };Ls%#V EVFۀVg,mM ͧef ZLpvaX$جۺbK{sBxcTn׆)[N`sR29 V92 5g|r9 ie҆g֡/,}ܰ=/GbV%ȅq["{B|N9maނN[fyYwI4DZSkxh}u(74e|='$@lI--yH}6ysH>a(^o_J1FULێCBviMd9VS@PtQ6 C2H|`@uro͂S֭P~u?uϣG|m*_P dm%+~;5mYAryvhSg!e [iCIh&OƼr0+̘=Reg:b}1ve`QWGns?oDlv~ϖJ?DjLBp]zSoT:MhqJz_<*,mh~vzxלۮ\ i͋WK>.mțī_5Ϊ Ta`Qy WD0_!9|Zb[ٵ@hNaFT^g|~ t J9|sO *E=h^|* }Q"X-Cz~AO|ӓi#ըZSQlP2 QK5 &E9^F5 ҠLK"weԔ^ qZt -=l () "Qc wBȹEyy?nGWSIEdM!I1ڍI=Gz8̄x >xsMM-FS3П`3't.#6 t7$^6$8QMLvw)R /Apz$v 뎥_;*WR ǗOGXก" 5BNn/+آBsޯ<'1y͊9b3yx7.B e +9ȗG3BsGߠ$c=Md;)>Y"L#qo `zaBY! dZRL`aF) jW#ZQ#!+RPo4a!wuꆣmG %DM%M_ȞGWF @Չu+%!sy &{$H/Ma¸.|rq=Vўo䞊ˢczC,VhOIڵLR[Hhw?Cd8֘"4I^$zН,dLZQؿqy٫Q awwd3˗Sl=F:uE!7Vxy2O-{<a+!~os0SH$fwć/Uek*nP{- ͛ktª` ش}v0z}# .&6ciߊL0?9#xl2q}*=B[۝ Wi>ޏ=ڴhVh(=H3*w}%k5Oi,;rxq-rƕ%;^7>d=/cᠻͽŝ'݃GTQm=𞂼^4BdmaDdePx]۳\4¶KcE %Ecx!;#h:A,c*K93,WKuػiɼİpKDž\dF Gݾd`.ZdN3O&[W {͍~Gsj_n{Ɣs뿿Yb3%ިPYZ~ĵTwBE1Goϸ$rx*&t*9z3u]ndwQ;ݨS?N]YZ*bn/w %ѳ?)e!$[Nx2dq:-˂!"uԷ] o'Pezµܻư ҨW_䰔RK,(5dDmoP2J\zH3(KT܌Yp!ߊ) $=  bs:`3 Ryp3^$=33▝\SzA5!K=&<@R|C:!废-jDt4&5IFZKB(GcVpg=& tʣ,BJ$/\]EIgȱXV++Y&+(M |dοIZrӷڠ(1Ÿao !ywTf:%b'8.%Tv#YRR2LgJv=t4]4 .&)AOk]ݏB;-x_NENXKfClZT!Br7n?)mex3x0!,w e$[i|YNT,ǃ댞![ⅵ̊f!c35s,ȠHY`q9Ѧ[Ҿ<V:2yuB:5rxV$f|I8UN0~<5%)Cm,$ rVA tńi^|׹X1ۚsBqY=? } fnu>ml5HIݍ}_xDJ̋N!eTIFl #dL`:\w3)=RS:UxWhџQ,+z sƮ-#Nx3M4r߯e L%?}Wz] =t[ۏ<)!g9C`VNpkaJ3 ؽ#xo(vnW"Hg޽0ukJU1wvf<,m7M-q'~gS0h5rФ`.Gv% +X''Mj a* $l؎Apn }IO~{`:2>]@3rϯm)) љ`Wˏ[PV"q&,Z$е3}Fr$'iJ\_1IR_]JiޓQ$VcUcwk6L00_$HIF!i_*Jz.Hfsg7̯8?,|ߏQwps23垅bgN` V>_Z`5&9?- Aa@ 0E:uMvi e3{Yrk^8*7s<Ȕx͖Bd`4a`mh!b|9 ;lT*.lf. i뎡` 0|ڙ|$%AJc|'Yiɥ泝b'_Br7 84#4.2K _BW'PӇpdww . 'E%Q02MLw4z$";@270*g6ᠣ{f8hGe`Z) Le5"&{iO,ԞǢnwz3@mÝ`*JDnĜ@Zf]=I1/g&\o4oʿ\c-agЬ9A<ãJա f 5>*4JaHuL:Q;, ̺zV얩Z5^jZ;2 Bg,+'1"h`pVJ t,m@szNOx7]]zQَbfQ_*z:Z!< fGS7{15Tu5o_i@:4YPbnA5=DKp?IP'pEj}i5RI.dU+ Vi;P}vx )rxCJ/.f0"F%=,Ft!B>طQFkVRH XLBt5%|zLg*8$3fo֙Ku=CxX<x^hʛSRzx= ָX8ҍ흱ookq  [)oupN֡ FiB4tTäe3iPY+쩕%<5*$+6lc;!#EcEFq*!:fRp9Ҕ%P"< ᫕L/Qx.7^0yPƙzΆ`RtlZr(/)Q $ZS-.4X95;8hScϧK9_W٢!*&k/X݅+MlLx(Xr&MqlC(u=Ӌ(xsh Qw63an!ptxp *P;\K2ayK=KT+z)|iJ.gY2;" J neNQp(RXƠ]mZ *,3{A,؀."hu~\O .:ee(+; #_k2 QHG ]4U]@p]3>< Ƹ"g2aN MƊ %f ]:*հXƭd-Kv$܃׾pEw&j]gOpysv\+%Oz/jHs.O#?}"l+qruZy.Đd\/Kd̢i^wW2z,z7 z^[ȿAH MdjXN!ߓ9={N}9(tWҔU߶|D:~_Uj?4C&?GC!_fT &} a6̲#)o @wlk u뼘;U_ƨqKH&  BEٖ$^ehhBIg:Q;Qm!0JԲ}t&9xŨăWǫ~ƻmHRR9=rhsTL/m̽G%6^U2%iBpIaX%Zt_Y'#>UpClO2=8HHƒ\Q?ci Ȯn 羚|zH|4 _6buuݰy}rs]7A ww$9Fhv%VFtžY(wإ?XxFi~! ]bbݏ&pqZ*e#dF8@1"}"\" l4׍|I.? x4GNu/_jx=ߛki.-~ eJfn.֗aթvEEQ#'3:&Q@ĔPD':Č6%Y2= tol۰yhӴC"+l|n; oK%,w,x EJnZr@(XuHmTq+ַEg0GEѾ^gJw-*AEL0/j`Ud C1;;͸!Ū9抮^z-!t j>=gG&@7Hkh:3iY/i'?y~|>PxQl |Шُ3R S5IXPg&_Y Q;q>$@#L3b`ԫH z`*~w*"2y x:S Q!gUArZhϹ[D(BD;aҏu]C.b8y}̕ `,df Tt <*X {IhsBjύ-`@X]jI9S-쁒 q#eWQ& Cid| Cq'J.3 ;a1K~|rndˤ\NKdj''ZuLe^JAPVoM[ Ks#%Rrttr EBIԌ ώH>BF!a;vlNCZВk|P;;i7dvq|xH_xy&ݨӵ^TjęAb E^ +sJSs-vb~~N_?8e7]JG>Z'OV[&m!9G<j{~P" !(WĦ/tJ ;`$}^LjZRBA0yit7MK>WUaaC>f 4n)Zv1.IG.CHݤ`>ӷ$98w怆4K~Z{YZPL⿫zFgz侶 k؉炏}輜U*i$s~ ^fL _ jD[ox)\#oV#.8i oupѻ}$h80JN\ffB^mFLJcZ#)Xn/m:djHORe|6 PK 㑔01Pvrs8yJtHXtj3FO)WhmSAg `|W,el<"}^?MB/+ u(k/W&FHٛ1Cn }U"~Q,됥PD合>dɲ`d>$ -Jai R vU\ e^%y`e+0>k ԋHwp|H67‰#[BQ]6&n߰,eqfM\'mB%ӳ!JΝn^gaDLjv,97w*Xoi2'] ʁKCUK`}5/7AURё˝r4-&u|F۳ANͤ?e SWڏxR'f_=*fq9mb85;_t'g-wxcwDo]]Ҭ݇'P?)CS]qud;0Qu%Isl/c5^Nf+ngx{aBM05^1GzۊXc N@067@3X3IW`pGZ巏%tq|*Qh='g,p/bB=J_u!.`.!*"G~I-R^csrT "O3<0W5# 1{P`AcNMUq4?zQ-`#޹ʴ=S4VܔY0֧WANdV+UkPt`lzWJ7 }aJ[H{-7qZuriad(n:SfNGM1JהɔYB! iGGy%{!9di?b3~ld@/zdϖ*\ _bdcwiqa_ꡛ߸D| xcDz Z yY&6ӡ#5 ٧]䫩Ԛ[n>! XxX Jń;Jyʗ7x>_%5[9arͿPi̗e cT=ՁA;@}ibz_v.^18>yjTPϿztc)_4eӹEin Km/|@t;@zIԻߦ,V*[ɇ^wnеlRi6!/b1\u?vO `N\0O\xShҸ/]=` 1IA!hczcyݶؽrIʓw$dX~a+l~lib`4{jǙ_^ە b8 ExCjK;E#Ssodc[`=@㕕d~ !/]{|1/-Wl,!Ӫ\8=mr֝Oz gKZObvloց nWut.3wOu똞]:>Ysf ױyK l}-ٹ},a5py>dn<&V]d l8" 5_8'=RO{@5}W6Bw v=}^A"3t%1k8TF;.]Q&$`,8Ͳ;r;{? }Z"f4'9Tc].l"gҷ'ycٞ~]5Q:сeg~1|ҽgd$gI`X'4įwكc#ʚ.]Do\X6bFµcIJ-`m _H޿3w7@Qr!r m?u Dh;fnV? ސF!X*gI(㬮~$A8†>9kb3&gETrZ7 bqM_zz҂3nqڶ^-qAsLGm=[*taARO J:65fW!3^2Xx1&kQV*8>ZaVxxS҅ z;QWG\*KpMzbuġ@3aep*z:-4kq։S!5c۔Zaz'4 $:De|T;R c'xN<쐃ݫ ysrfJ%HU\jm͋]>wXK$'+֠ၒ9޻e[[Dn )ߌh4k`tLaA~JQ80!cLX :wXFA<+DkH_%+Bh-ʝAJ5]W 9VA ,޷k(Ȅ4.7i4-Dk -B|2Tih2nt 3 R[o;iU+Zguݒ;.BM%@ۿh&u{v"EsER>VRbyL[\Ex)]_J;lVA/yj>MvSM~5s!םCW58 g$5RbZ}1 Tr/*0)8]s E\u9>(OuCnFRMW3ռlyy=qg&Dc/aPkAʡ)쓁#C`ǽ 犢>c$A_hkޠ Dj'gzFܰ`toG뚧 U̜OƀTv1ů$(&gUrơ.3I%s2NEx fm%=ҝ po W>a3f0U f[8#>6tm54y|&YԎo`9 +i1yQ(aY/VJgmP<]W4tݍc`/>]UkuG/gU84/Ӎ&|S'`Gڶ7K]WwBrxոn62Ꚕwy=~p^ꐮ3wh>G; w(}0uINNn "+b|@Ý>"̲DfVxS!r tavy!Շ ~c:sDh&|@[E?08#:mE шUҼKl΃y߲_S,7"~g1m|hpwF4?2ٓ|hmhck{kL[lF Un" > FQQ[hESdBSnG dQj"@K'{$-+QOkK>[Da))ϒ$;U7?:& ˢo%T;(԰|4)ZN|'\>ƎOM>boft8K{̫h<0E?9pyE?K|!Lb`o) cf6إ2x**~%CÝX4u}}ۛB"=h{|5eVW>Q4$r"_OQTI[x= 39)zT %U(#dJ^7,k [dfQa䟤|z5mu'|̡Ǒeȩ5͠yd }F%ɕ~]$9UFiԸ'Ȣ0(}{Nu>¿ReOϼ^*F,\HHo* >ÛY;m్( qPB7 xThpGF{f6"/. Vr_%^I8{J0W)ߺR]Py3-`2Sl֧f)ooh }Bj⾲aFc"Lw9:zy$>~*"_.qA}xuPՕYDP=  SZn2="b!/ }]̾nG+F(8[ni̷33u' FJ8cTNlǛ~ݔ$x7뵠[S{6ɩ% ayXIDqq!eʴ%vKzݭB.!k2-n#Ȝ(@cx r[8aV*܊w1,DԒ6 2ߑatȄxTG8U(8WdC#x=t 檾򹄍`t\BDSSF4]/I_lȀd-F8(g?(| ]Tc8 ,YAGrVxݯ+~ e5HqU+SQx^J$ewx OEP'˯iDy"U2m>Z7ͨ rbmvMնIaHp(iT !Hۏk"O] '~yk^sJ?տ)ӆD}Y"l=lvQBsye? ?_۸=6wBMs%v\%JVsG5@#_7lZOZd_ǒbvroMLڣifyZ.0Y̭ ȃx\hgfXP)}(cNxuYc[ɍZ v@ d =v ~ǙJ73VLK[sezd@ `jկ!?>KKAD9#^c_N 6p]&oszڊ/2# y_ 9nh Iw,BšuS9KՁ-8|33+ibFˮ;nlJ]6`SlG. kMi5$8v{?!#Qԩv*{ m^:㳛(E4"!;`xlEsCF6~p` xņzp2P c-h0=tޣAaN 9u?QOZtJo"GjhHКmhn[չK0RXi{ o] ^*o iL[1P4 ̝{no˥g>X}Ȼ2/>*'-y.aa{ ^;vrL+uˉ#D\t^1`:KƎ7^xi `I9vֶi\!ɚ2HjcbDʭ Ʀ`Ǖ▬6ttC!)#ٽSedL**$9IeN5v+ IR;caȧnX8)K?Jy}FQ'=ąAcYηraQi (5EOzKWʒw]q Ĭ'dUjh͛.6us0} q!*d:l\dAsc5;E5oYojgsq!5^ xjًˎW H/{.̈]B)E`Đ+ |WteC!QzAHͧSK={JЌeѸpz,(:=edIGK_&Ȍqrw/XĈ0vʿ9]Iʈ_wRA {tͥ̀$b ,$L[/? ة6Y$Ib .23[Ѧ؜vs]bK֔ɜ8wf`,8獻xܲe/p(kvYΖ썷{~B6#Н"MHCFW<"JBU25[}r_$5ʄJk+at' >'LW 1 ǧ*Z~yVr'Tl2~ؑ|䢂vCc=FёEv KU@@e4Ty\slu!ܼo6|\2$Iɩv {ʏlf/ 1Tk3{SI͖xЪ) q)Q.Ok9"NрXT(PIla~oqoW[p͞4 &u$$X~b HST~ceyT*n 0M1!m[sBx^ɤuvm@2b&8Df30lCHɚ30Bִ"ӷK Bh:\kt`&':Bba\t"&`V ݘS B]r#I}4ib贠P"vHban mY"EuT{~L6ar&]rrxdT[0\ VB{^ de"gF+8s*Q‰LޛOsv{ĭ$/]Dc{?OsTgNXIJ{n|UՄ&7Eݕ򉦬lK% Q_ϙj<8=6 ^pty4T^&Wxїa]jʛJB8D0P;_1.t 'j鱩CP8+h?ůˌ=Z?5Z {#/{&T'֭^!hC$B Kf\{.~6"{YX* Mk;%2q4p=ZQS]l7N`[GLtԴu߁q#ͱ?r63rQX2=d7hJ{kLj`W-W3Dn-B٪Ue-eYLn%M|nO]c>o5IЖٛJ* &bIHMe% '?}H8ƩԼUHR ?f&lO)eN ڑ }'4:q@y@:(\-j6Ҙꗮ&{Yw~!]c? t@:c`.Ar=yTJ:ڭ玡I ހj_B#gKdyeY(\j✓m@ɵ'#4c !omPJ9+b8WQ5VE2|&Q6>^s8&P,ܔmʇ7C[βVM陊@Ǐ XOlX-uz܍%q[-UnO>m .VS"`{׾94n,=W;-뒙a1ZvPv vxXpˌE݋ÅIeER y*BMWgƛ}X69yZLMo0K-Pi*W166U,rplӊ9rρ, w(˷#MEopſak ֤wy1Lm qt9 Յ9`@HN||߁sY$[BfgɎ^x4ӺbP0vnhଜ@"B6h!o0Ԓ½.J$ٸ-LBהDќl oϙt\>ti_SfV\,c"UvBvLt#ŃORFfC lg0[ $b5sD=C)e<6x| r5$:VX!֥,9d3FNE!̵X7E60E&x=H6,lQeLI5@*HTʲd4zvT}n|W\' d x.yUػ&_I] *OÀ& U& D_BG?GT>aXHy锝TNf#Wx)sfMI˒nvs WZ@M`۬ W`F8"xZ:EPd9/kuŌLИ0.}[#5[{f\` #.;zMx? X(sl[ 6WͪOwpjay6"$$ 7 + -ߣ ŢgI2ow" FpIP*@B@I5N8Wv-S]Uc'#:cO#gAlHrKxJA. ?hc\[12Du3=|3kIY.!:`7 GSéE N8I2YH#oq.Zs/= ~;O(\@2AH/)M7P--mMEn,GQ(h(Fli'RndvfZ9v?Y[vQ/ZeEHhrx"Ĵ~IO!r<1>s3>nQCl0 ?aeܫnU=|%Ӧb&`;Aii+dx,PE d( i#Ulׄ(߰i)p\_TW$M-3Q7ӛ?CLJGwPF &pa 6m.pcp<*Mn6_[! .B3{'hg'CԬv!T2F[c1ZSu&%d_XF:M>QR>8`%#zm=FGBVDa[y$|%X7|? rfhT@՛XyS ~4v.ؐ -,i o "&NCQ~X,[#/u M3HiH4;UxR_ v+'{EvN"O)8-/]  @s&O}eXu<αZQfXώQڵx6 ]/jE V;P=]KaDžp^D' Tn2BZLǸrQt|7"AYKq"w]^eW Hw%Wvamm{(3vsԒ^3ۺ쪕Ulipj@r[ߏ5U2ygp?!uulT)ϣ\ tMc5o|IO#`>JkemVo~}W|b< ?$25,, iXo[TXu0h~)]*'I7-0  5 O5Tt}ٴa- >!J),wYfT Z{@ ^\|Pza Z>AbCl.eI^.{ՖS M^<' N+](K|A]I+)LL|9g9S&*鉮Y8a) xF=N ߗCu/&%ǁp5pJ젬uvbTW$LTS'Ve ¤mI4K,@ʭRQ(MfB_uk}N^o*6eۯH@"_ji Y[i/qQty>əV2qo<}G.-pOBB*6Z'nD.__1wršc{sCЮ7³ٴsۄѯ=ai4UwqVaDYPh'm &4#@jF<;T.V8`(פG>)pHAU<߇7Qs?+ ް@ d^H/,"n&c+'|lb_\:IPJz Ɩߜ# ǸR3`ʥoވ@2^/KP1͙Olm-M.H1ij<ys雝6 `_)E1UJXqsW"OyEI,4*V>iK23W93!U>?5RԿ+H=a]BƟZpw0>@&כI-+"nO;9axIN8dRH7h3[w>̱+c7{oI}UCKP$yy[bSO֫lY PFSHlUᑲ}SyL`NaDA]d,q 2hvT/K{VCnKg2 #xG^M4UAkn ^f\"eYD>+= ^lӇL5UNZtwRsy;6ifqMVOP ;ӡzS7$f@)yPPyׄ]#A\v I$y+RCKmp~ o]6.Ct+&FJuqpݼ:NTo>9Rѣ5/r:Mfo2G e'fU_I{)E:ٜI?zw2HQڃ5PP75f({PbgtLJKSׂ[Mi`Br[d.L̴ׯ~mzZ P0ڤ-,_'-ºqi=KҔ|(X>ũW>!xG4r2i~=܃le_jjx$~Wμ_.>G )W˟ZAJ537=(Hjp-|ΐ;Fb$P0Ӻ7ݚ"s%:IxqoI${}^:AUHxacHTS@CjpkՅU4`~z>S|Isyks+ {+>- T-G3L&FךB(IvR[I8ԝ諛}xOe*k`XUo,ÌGUZml2-"Ija_vcY@ʱ]9X#R@PjK]mvBxb_S֪|]^ ;޹CFF[JEpI9B߫TA4֔ *Fo]|89ZP{ގ)dt4/1 ).A\ѢKg$_tiOFGڷ2 u2/X׵RI)0wλ"[ z)2ȡKQ.)J NRhMXKxZe|Vr=_CNVh|z96&~UhxLYZ A}rcchvs,r-Cgy`Jro߂\{znH*R,q_]9)k\iJz bwqGKQZ,.U 3wqQF)ѭ/SKE&I2y,9%ZJ%hd%'GR0E,J|QA5*4S9*ϳH Nd y@f~㌱cZKެRgU!Ob ޣۍ!;(E"9vj$Aa'ǀຽL?fvih/Xaeϫܰ=f'Yb^(pFic$vo*V ڷ1Ž$a689j(NM)䑴J()\F|-ъBI!̚g qx ɥOSO8]с=ͼ"l_a*)"M3S'{0BSqncҋv穒o;^*~&Z&n||cXMPnQ*͈@&'qnB2OGt}9@/05 uv ԥjTs,#dɀ3=л5½w$E,72֊/vkmHZ)y Eu_NdMzRCrn[$"9¹g Hr475]qDLYCxEd Vqkj7H|uݜATfSpն9sd@'dU1kwpG܍e&wV+*8 K:k7NsT~ 7H0fe'ZvAh^Ę.rsG̋>BHkI[鲫T/N͒R]Hb̎"'3д&b;[G~=dϩ˥aiwnp~l9@VaE違xEzgqa@.h֥Eb1̠)*ʮA{qPqAN̈́^!n\ݢ?+~Ƙq#X l=?hhjӲആeQgz -+Iفvy?YA֯Yr@ lK\ԥP YLXhHg#%ACx+ivvd4f`>5$]N-C*ЦI}F`)<ˍȈb47 Yӟ Tb6Enɖsgy錁'+Ex@*zx﫴I鹀SZ.h궘[cvy6a `Qqk|ϲ,n7s5p{  glM]{`W^jRuysf-Ap M+5geioq*1EuS:}(-.Hi+rڈqWM=v &oK 7Y6I;Qp>[%$/m?b`{6'3Q ǂ4OYDܒ#š,Ao.WCzRC!Z6WHß,&aǣC S&0ɓ `X4oڶh4PT|gYںl8u@.x:"ڄ1L!RH rmBz{y9)՚Y+ jS-[!nzU 3.gh[`ùkZW4ۋq=Lq}lDE=VXim7UWqڱ9Vbz,w2/&j@z3M=|Oi+_ۿ>{BFp/{vM>8/߄D}P7fft`*-%8]?:S󯜉I9D}fsعꏊR0@tȝi!ΧQ3"19Se x)GB6Mf06zOd̓w.q(.5'' #QR(AY> aϾ_u!] :獍fЛ-,jYTtxB,H%>D2K1Ah%(҅j /:_Sؔ~AȢ+DqB,;R$HdcZ!T`t t:R.??6rkLry` Bj"vPbiOЭK:nI jk̑خ? P-UA[Ud#y hK%2;oT~gg Jη.PA@tfX@DC=EXe|df2A؁iG2xI6C|nf1M46Lq곁9C6^ k2ID⋀B(yY1Xla#~a\KM`я 3q$̭iEdQ⍙ ih | 9HOGn9G3)+b~),~XFl)02 1|s9e&~tԫݖe,Ve ƫ #0 !vT7(Ǝ<<]8GMڠ.8=Rضhk$HŌkɬ!b վ?/xtϩALa@ZdRK;6Jx St8W`ګPUVԵ:@k;X~.dI L<ʤ2z#'1]XEQ}=aڅMזs$#Ҟe?Zf)׵:$*"8>0bqxS䪚&!PTѥவ#C=d ɑ?)c0hr;N?ɳaǤԐgEAf@.:ԏ!w;i@u"B?'5_48 #+O$~Z(|ZnwҶ&jkxkLyx0Yӿ유bUk+[YRhYg؉$KR]'zD22o!(FDL=*;Oao2Ġ%aT/}/]SپIr۰2#.\J'#C˜J~ɽW{!Dd mF›3;v ~1{ CĶNRC?9c*43je1bja"kfYe`Ƨq,qO,h~J'4 q s9E@}S=Ú|zc 3[f[~ThGfxSCNThD@2$ m~W^=/+Kc3SO`DD@   9Zg5.0 \(A,E _×[(r IJX̦Ȟ(=vE_e+SD~EȄe'^OZ^E YVJGM(ZsUbʵ<$2Z&d8L -K\0 -y*ѣqFc乳Uۿa9IS("1kWMNgj#-\$iAլrB 0o:eC>q`kF~RX;I~r / xj%7c([\ynm97L7b|O>uT*&L˧`M#|uS#{.!:8U]WTpVaȉF3횙Rh LU]hs%ga}]4dO;IuЯywB/̠?B r}[WTmd67"R;>DF.B Gt36Z[dBT wq['Nlis0aS)$Hi5{3ݳ5&uWΪSu!3Od$z&ӉXfv;s1]D~KS,uPY7 2!|[d͉#!v)2 su3"2jRw K%2TӽHNLD9+@gtZiۊSMS\ZhKXxB:rī^=$VTycc9!̱|J mHG }is.{Nf2Yh&(J""/,ju BC AyL6ZvLhxP%ܣ_@eEJG+2I )3د@1 9*%H|$J/9sUp0(y%[6&< پ#Uxw#Ǝ?dH:i$l;DHet#|3/4=]OW֠xy[XS3ϤG" KŻ828{"CcVGm̽[kԚw M=Jv-zw4f2+ăG̪Ϭ⣭x ;Mfm=X񉶛N mk)[Y_@NC1g39+hbw="} b;[!s?)Bٌ_U ~aT1p7O YkٗZǣojϿ?zHЋaGf1Ȳ޷ fFwm ;3uu _GoK)eOK6xOV=. w~ZcƷ `R$@  M&v#'JK(  buty&tt2Z쒤mNzZ3H!ek&cKP;/?J2FUQ+I[R\CFZ]=п!Ju'g:7enLZM_Cv{+!}2hHX BwC-_gXDn\>F^@Ww~[) ]g2{gjOR]6Uh}[&L,lkx.G uY":; J32cRB,5jPj>XNV{Mx> nY8^ͤ C|1i&!Yulf4XB12"'vi;7ƔU<)t Ne9X0t{yܵ_WW?N%PGRi??f_#/WPD+E3J*֢8$Y4=9QY铀U,iПq#-HGMQUU%hPEw/SQ_;]:M^(SoeLmnˡ $L |av0P!c(3J~ntauQ^LI#>AxpQ5/~~.iuQiT^}JJ ?Hki xif9w72 ux+?}n~*{-*Q2rzvK- 1rj&,bYOqz&%dk(4Ml(KВl!; nFjY˨Ҟb'GjE0zrҏC^2ggZbYsY-c#c@@l8g<Ѧ!~h6=xq5UKMy;Vޚ|I95( UEe/})?ib!ױϟb# 8+~fl1n给 _L&RumjM_:jn<4aUi^9ޜ~Xg}:;kb4^ק ⭕*m\ ˒q 2 6R . F0@q?QǥWpˡю3 m]bɴ6&υB+.-V(mN7zh g\8 ֌\(§Tʸ'>2gוTzܫ鱠+#" 2xSea9;vŪx$6<a2<4+ RPauȷc;dC.DhI u+"o@{۸EAD Nܺ].x uyX ÉE\w4.,I{ACBS!t<`[b φQYY9ʦ_M%o6*?W;?5mf1xTF"vŦNƪFRDy^LAq40!cm~uT*%Leٗ\Qf;--xO,ʱHi ÈPdg\۞p|M/n{WH$oQy1`aa dkaq=}q {KAWսOb2rM)w`ؠm\|&' n9Kuyǽy$<ۗض0a+H(;Ń&'$XUQ319Y42H`*=rB$>kR|IzANsYsK,?Ӟ 'T񻥦(X{φYu0st=իgug#P[(dn,oP\CV;{ŽOOּ}}2- Mh}SEԸ]/ԟ|5]Yqy7濠qZE|<$︤IE,^ѣܥ=0m!"=e׎n ]fAmDx(ڿ3fjyK[cOxS#jI̎D*\xoZU{UclcypN-`J? ![\!VRlĩ)>+qaSн swc+#ʋhHmmBӜBG`39p8ZgV* 6ξ N>.}m)-~Qs~#/E*ąaPUqo!KmC^m{ /K' jD)CJ|%xov{.JS(RA\+rjNV+M924r(/vĽ r[Jq'dn/7ٜU,?U 'Q|[6T 76CN" h򺻬< y8[˓:-FȊ=sP?hqhi`;ڙ<@mv>TXWƙC-Ʈوnc:f+:f+y7XăU&IAXG/ v{"^m# "tk@5%@ԨO[jzj$vcdHS Z+zhŚIS6:Xh64c!}I䴰Hn #D1cb*4Q} D+1=;A=gē΋@rf3m4X GB/E==(S\w\>dK&v ߭{W_S`*lOU6 j[]7G Y%)ڴgG[2^~0+񺳅d{b!8B4CS}ufUi3hntt:>Z%!ɢfODXKs*Ya3wIɇpZ#-B2H+7[]Km.\)FhJ~qJ2n9?~*aIT뜽/栋n"&m[ D{R|("ʼ9xθJ洢XǪG^,s5=^Sۀ?64e~Kv3ŒOw2^ղV~e )Tq8@G*,)23kKW*H.\Zآ Wjޑ4J1TJJ,M k}dKDt2(, T>!ݥ@nۀz9eʆr誵6bT%AA9̻FJwXE0@YÉ=Yr?d,'}dne,#}:Ƌ#a*Ե7Vc1R~12,cs~Tc=kA^a[2Svԛ/-mzXk^'C=g,Fk]h9bZi'UXᩨl+ mVYr߽(U.hEp>B|X/{vIϵ;쉺J̀$9e[R|/0lH+h;Ȕ6aq~=Pg+Ür)ĹhkWB:5i܉~4_0p)ē+C"5.3>G pږo=$ C!6r5RN) 5h+g-6M(Y?U 2*]8V]$P5<Zw>qhť S;* h uTH-\LnB&4?mޘ/3dDyn$qd2:A5Qc[ѬI$8lK=hBtlY?xɛE-reXYe Sgmeקfh c4 }}~`o m Yjvu=lOCn/z+>GG.2y2MsOhCHԔi@Yc?"&rDm~;۱FV{ RDA/E5إsǙuƻŶ2Ŗys5|u뼹F)Uvf;ͬ'TfEtŒ!~]Mɮz.QH!zUEK:nlm  !@`O~BǞZ{/DX?i{lbL _⥴I-);qrc?YG '3$8PQD`t ʍZj((X̿!;%_%78U͎Dx!e8ѽ8?7TwF/^PG[釹}Q&hV@@%ֺV<;X`G_yZ{r@?LkSiqmm18J#Zd¢o.'I4;\U0U87xâ:4ZE5B㒇S\|iɛZt2rKxaۋweFEPPP |7zn)VD0"6g}'C=RA _|&Dy?0#\-|d 0`. 4۞ ݬ c$5.˯Nya̎k/'Fy]9 00qb.nhC땱n5n cPk`@6 ?Uhh6 (H7dYCn3'e?SE%sMBwe"d(BpuMx7]v% 9UzŋyKINǺnD!a0Uh;#+yB"(*xEELxe纾d; STQaЄrÿ7S *wl$=XxkGʶGg<韆eap=T'LKzzgqÄpU*aS $VW)6̩HBE_!axͻ5 Lrk!asn ʇr-8dIT ʏ-˲.تaTDٛԊ*H'?ex혘9#"bGf zbY$YKb}KTR@ŭ6e#6eLUl8@᥮pC-=@v@6^,lCRutda0lcZ^n<ϝ04K( 3I,D*U|}T xvT1v>vbKi6pijFVK :BKDu_!e^0LT~'PAdhγ'_1eWzJ8G}Ү' P)ڔ"+,͘foltNdvT,*9ty2^h/jj˱jp`$e"2UXXٺH9@WB#@@$ڎ,G$ 7!liAΑamAJ4"|dcFZ^28Gh,^% Kt㸛Lv%fE}7,a/y>Io6XMmuEew`?g( {.rC#{"eO{~ߏlR,`(5eK-6j[V$8TV0y/=wvSsq.L_RnVǴ#?U0Ӭgsͻ*Y-X5RYJ.6(_㮼1QB) ï2&'*ZSAw5N8|_;kJGbT S.~\_Qy0Wj|tNHU]nO8vLXBjlc|<\!6d0 bSmgI>Ur(x]PFeV )<̜]   _x7ݖ%'-w -Zc)AyY9&4 7B׺%yUw>8jHva%o" +5ŷū tLtl8ϰFV%ІBvP VjN9CJel\XL|٪$*:]젧tؓFJH%r3Fe9N|IT3xY%`G'g|gcx|Ev H=Sm^ND^X龪Tbk.IuG8 2K`D%WZ#ޱN7FyM wY}Z 3z-vX t + CZ."k@ы>dtE7 lBE-st ^&W^ eml]Y녢r9XaNltxvtm"=fTV ىVȮ`6 Cl5`f*պ1;#,/0zH~9ji \58cX 皡Z54$+dipeAԍ($7jJ =83,T[稚hثݽp_oNRxmυ&tY=Z?LS, Qզ6⩮r|ZIai8&By%Ax#R=>Ҟ$ e֚+`;*yf 9[/\:fGǦ>5paiJc`^f?..),RlSvC٥򑱕?Хc#U 5ҀS$I{=+Y(h1 /Eq IOaς68L0g Rnja̱ۭ97i>zgb7A!%ڳe`ZVĪ^Qd.>)mHYhE2JJ4L]x˻RJ$ʋ),{K{V6/دFNe7!V' BJDzG%$m\)aCƿ_ O42o-0yН_:<{BLPuJاz7IcxA;êgUA\&xe,9U_ 8e6ظe)EBܗgR YHc82|~&&ѻ) by3$wAk9_x!ҩqsDOgD'f1KI -7˘9^:4Bhyx]#"ZRL:2h4<|[S;ԩf!~/|rU#G.bs5I{vz5)FGH0AB뛢; RNCVkl ?zKW!.[/Z gX(op1!S>rgt"3D-qF+~RՅ8˘r? 3rDTn,8C]-# >lXO@*, Aψ=BnQC>8C*0ApXd0VI̧GX^ .z,_~ˈD9i^;Uv%3 곞NzDa^=.nx6B̶[b9 *3##[-, t%`ՃonCz; zl{/zNZSY?!ċETT)=7.L^*JIRfM 8<ڀZ 6fQ4@FIpD#YKkEW!n9M̏IP /I5l: DF g?ح+~=ɽ)gN=2ِ}@A]k90qA+cNj]b,}`ibo_l i_b-H *mSl}٤m$(wUQ<fB =皵 d[Ŗ+h $1""2eW5i8,S̟xZ )suUQk.^8O_q(pu=ý.D q.SP )d7w iM|;uƏ_f󅇂_^"xGK\U;sAqc>g8lFx@OM夂;_XQV2kl%eܶؠٱWj4N; 1!EA4->$@^DѽLp ?7* ʣ }mJOĞ;=9*((6A,#nNk{eTL&R )nؑuvWM\0:.:=yg:PHV_bR\"JÙ?PM^%`b '(3K i9U\1챐c&]G)ׯݐAå|d:D3Y4^׏Kչϳ Zuc 'oΔ&|]ڤK+ Xz6$C{|S: g!7M)V0=ˡ I*I1Qvr3AkEwt"+gD$~on+0F)8@=-Ft[ sSIϵ3D&H; 4("i^x/& c;LY(Y4e|J'iKSZ+2!,g >tAK*d|+9s*ҰfWN 3 \n|J>;xZNt<6Bw%9:'ȷpNѡ/ ZL 呞7TGֽ1,=1hCb#hZԩNe]'gĂ!v}4Ug0n!}:XSˉ4C9 #\]"NۖXzV<98p&H6%)a\`+i+7?z#<y{UA)z gC PUI %{g^H18CxW>ڵdtNC#,{Ԅ)U'=)QVua;ռzбhRMͻGtIYtT tCJ [K>v'9Y ]L,y!z0X",u~ 7s4NR0F};xE|W4fn)Ѝڇ]ЀdGOΠç庹v Z>0x2/zV*I4:\)[.2F; n:|$L*(ت& -֞>oA2>hw` `b[Qᯣ晠wR6ƅĔ/`e~| Ð%A#v(9$Zr-/a[}%^/n5ilIGZhjMֆh{8R4 ᨜,hPmu!C%W672h6VxKkaI 6Y?$l@qGfe3lۋZP8m78q?/h1}?L" !V Kh֍N® ׼zaJvܰjezjTd!~NYE;٥Gto`$Ӝb >&9M^ȰڷF թV3f:duX@/憮H.` @eJ0J'3{(+8UwpAP oϻ0np@ꓣCzcl[vhLu=]{c`6B>LE!sMn&Q EC2.x_Ȕ2&̊H>N:~_lh)lCdA\(?)͒Z"@9?ú* |; J^0 cfƮ8/fr{l1Es5qYt~4ľ^lE\KK5WP Ļ~> jo%{`z ݉2T{ S53vܽ.Ƭ(P5qx'>M:o^ JQޘqoP3<̬ѳrVXSgk$p.P<~H}IbZh)g" -A~ulB }K:"yY煃-tP~"qih{NW_}lchGvyb41(GG?U a.ְȚ3jCTN.u[KkŸf3j9Q7,9y*{O4ōZb}ͨ}f9x JܸJ=20$tgCl5`<,eՐzTH}2V=VtA־Q1Z|!y!1[qh'7+Q7fL* !aH{f|$ߎ.R =#uhzґ@_6O;/Z O4a r}؀[ I9z'i倓 Cdeb=LC>Wr 󻔛X2ɲz捏7eVH}GrѲ F/D(E”;@7 QFRtoiBǙw=f ܍ ،S>#l7Bg 3S]~g5[pa>2. `K8kMHo7AnoksaubWtU4ĩ+7Y\J6r2x gDarjP47А!Gt'SX|,Noѫ._F,"z^̃dqy/:әs~kzD֑Fi9:/ Yz"=ExŽ\,SqHN:\lr8-D۷[X#Mu`K#V6"R1Xy~Az<+@oHO@5^MH[D_rL]O2KЪ.|bʾQy`6tXD(NPKr5Y78@_fi{'SAC_gk&h@f dEH~#ĆA娵LXe;תFq=PQcR.@LHZTƲԦSm8pKXG~ZcW0է(\m0aIp04Dso@x'HmCaԇQ3[C]Yq}]ƾOLY!w`_!FF}ޝmX$)r8z"ŐB5nh{|}2N-Yf ?݀3qznֿ eg<=EA[˰Zd<'OQ:ϼS?9`{~U321uoi-}~5f}~9AݍH?8Ikk%j48+Ԅ?9j !=xa@(Ŏd;?_3~y_ E32Üzr#_UR3>P?9 ȎYɈ}d0S9dH|j?-ݨ̊ۘ͘{Kz6{[A۵aYyNhPrD赂ѕ VnBԌFIMw(ԀF՘-YySa*ƫ9UTSHp.@o*nHAWW#W5EJNYeIf~ ;\!ݘ``aV/ AgQN޹B%w+V~[̦3p(J1=NI O üw{VqSel+HGu\oF1$g[gWN[\{O,k9{N~i:tDZ9eո$E ]``h} ;9:~@jCyc*^6Ym/#K=b( iQp"V:]R2z)Z=DWCΕ%I:}|6\n |~Tw/ Bx +[d'ߪ2Bg @OeGBz X#o +s@wJ,3oݿ4 v5$%V(8)Uc]i<3;\E`f="/8q:5lOMYv4k%o0L98AUaM3D7sF眄.#Q#ܹ{W܌aYWѱU4EnctdMc-cfpȫ>QQ!3I۲abxՂ\`IK@8}̛TEgI Q}LR3Z\GK1g&]1K3 Rr\ymyiDAޗCyU)BLz=_wȠ&oɖf+*+w%sM!܄UZ%>i'^#Anb ^/,9Y)òI :\N3,n/+H lxJqV-=peO dAO5MG7:D ]2MvH'2%5 T( o20;{Y;IR.{f ԏR-ْB A's!h@7Nk.&Ua([#rykbT*3r^Teu2bxPDl8O4Z!b1YHO|A 50oDW@uk^!tXͫyq:TBl1ysCҧL=M/0+ҳQq+uo*#liɦ0_JE y1Ŕ/s |=Oj_L]s{nH<+6T7wTBupXW!QJ&G6`v+1AFZcY~XFw*fx@C/gڇȢXJjv_Vg.,,s d+>A?j?Я{ceNYt?rGx3- *Q8xgfcD'8*>)'okO1_Dr"`" &:)" "E"s9O ~=`*> 2YC)G zhF,7Q<9.6Rg^$քJwĵ 5Au=ؐ/ZtȺeox_7j8M4j …\<Ѣ!9Muv4X$.BYEjf,D३#P "9&fy}n;E(Hg trEvE=rN:mE2 C-j;9hҚZvb? y;\߂,ZeS%EW*s ikEr͹W7򕊪 Lt鵺.e%e}d]IX ~atRw^.*]Q/0Xo03_$^ $*b?`rx,&x^^V&ٞiH[U/<8M8` ~;!#]?WL8D eƉ&!.t80%^i7/@dyz}<+9r%3O9ҡ&#Z&ຑsK7^-i"$Ϩ%a8?CJ! F⿧8ؤf|4|{yذ=@ct= g+Q.;)/s*Dt!Gh6Wp8=\~wo51cLMĬK&RhaUG N^@2Cn!XqC[ʜP3qA%8aYqxBȫ!-5ͱ7?!Ԟm̐IR&2=rdszo J1FJgC-wfl?;*-Gr+FÞurn! j˕Rbpt|I^ tw"ʆaH1 `υl,uW~G?e:SQGL|Sf$H蔾DDv7^G3g̭خ9)qC=q9M[\.(lmnNEef;,bf#Ͻr6{QZjA7W&SJ[m7 u:{tFv5._ yЯN%_d8EoR6MΔ`;̋vA~TzkST&&orGM|PrIM͐dk/( קKDWW6۬Xo`uhE߾ܸ0BPqVx|ߊVO3R=W[݈+yr[Y7z&]s!ټDqârtX%u_PM`Zc|j<I^vA(lsW[;(e.[N\Ob-w\;cG{6./0HbKsn*{h0 G ;@6lGEW #Ʃ}(tZNu O2F?`Ƒ\xW.lBq:ۤk0znpEm{Xka#"ùL_etP0[3Osvs!"|7MxK}1GDǟ#ĩ,2B+NR6JXӝc Xh5aQn*OٜLAV{H]S2N"a Ay!MCss_WQEMHs@9G/?Kdf}f נ.'^y2=~Dx֝HKK֔%T:̩)! ~!0+l %c>.-38K̨bz*+GkxGwMX5R]D|wx"!E(=X6ʕF"2@# LԝE猯YdY]b3~br4] 'ӔyP' FЕp6vt\A!tF- |p7?x I#nCQڨ4TX׻ R3F5Dڷb-ְb!@up5'",(AhT0+-,1xV;I ܴ7Q!Blj?1-8Mk58כʜΡSCK(WxYWTX$03Wy52}8Rp.2[Kzۂ tͲ9埌J{tevF[$_9 n.RQZ{5Wȫ1enE%tHKr.1hJLI Zt<5逈r]] Hw؊\ J1+LbOFFǖʄ;*rŪet|){7<5vǭhGت`GBg8="Q~onwxd>D>DWɠ^]ЕSNm4G֙Oc)X"tPC985sz2 bӮc) T!Mk,`tOտDRۃ@dDS>d^m`&h"mE9f l7͛Dl\`0d:%A{D"I@*$jx6#k\TDl2C0Cס\ (  71By^Էf͒²W|ۤ[!zcs| +K HP7ۉJ\:*6 Xx]@nPW${JGT q0)e HbaD K׹7L4\MjI&WVZlBBr} 璜jNyngCX} ՟6@ #|~CH%Ske69qǫ*(X'E5A]/^@(?Y7k1Oa{m]^/yNǫ݅z̊>ų9?>ieuKTsp#3^Ի TÔ)>q-.ZS2mt8nY)]BQGEy>Z=W$]y_7,HP~Wuڕ$Qv2Cnov~Nk M8PkHSZ'0C}6H<][8Q]0U%5 餆 ՛z,k<ΉȹbXY~%j>PNnx?D4mxڠRzQb2R<\µל|v1œdP&7R(tc@1[u3r FX_G#Ro}p㚦vƢͶۈj,\vsaz Mdž&Tc0(acrtU8ϩl 6ju"ѓ]Yd;1CSAjPqk6 kӿUߵ L cΠu.-&GHq#a g?r"1GЯA$Ad5]alkwqn>4Hqïd3בKL7_T~(s^{FީuAm̊ -fAYa'xCTI~E3dl28&"r> sj4>+i^@IzDFP]T폭 c|ma_18*Xc'xoo1i\rR+hz67 knb_9$D(%];woF±V@q3̵Po{!ǭ}ᕽ^<θy']: e0GvD[#X"zZ~u+NnqNR7Ž2$t jS:䦹L ;tzFC ^ ]@q Q xY2l!'PGλ"p&u5mC6ʠqq̤pZ4E|}u#Qu B--PNɄXh M 5yOjΪ:)d+S's).d ؘ/9"ªpjϦkP~@ g2)7C]G閣 sߜxWCkDOnllF57rɹ%UB%a@)@1o ~cFXեDݥ,@U׉T|b*k'r++Tt2aǔ`Weq.$y jb!v-*=Q&Lh7*}05D2$35ӌ#>!`S?|9t4"m @QN8ȠN%'DO¢5;I WMڿ|,ٍPDUpFvXYZ8F43Ag.[XgW glnd|!F0v"'}Gmx4stXń/U52k!oqZQrǃHc0%E P=ܗfL-oFwCqEۆ!jVYЄ=5!6${Y-\-.~de{쀪r0Ct:;<1bjpTr{.wcr:;X}&PF1)oY7>E1i2ѷ~0VBﲅ\qFFߒD32 JWev[ЙOY\liP( I ȩ=}¡0~D.<3s:Q4-S zwUzڳl*.Gé'PPIa䦄GUY-oW &Xy1ub7lm/lhȗ#ȳa}QL\[ .~fp- ]> 'm1v 9vNE X?˷eW>?xI!z0G0< 8= 6a}F!V.80!g;4;&s9nfeLS=R̜4W'\`^I8 C؎kQ!^29@aSaeG'siceܜi<"Z%3sJ5$Xc 4*"{hr{-Ș4u eǝչ4k;I{yOTE UD oB -<ն \>x@D{(u%6H= :8ƹ@ԭ}sұ*o{}uOQ=.QL=mW+`Z\|W'=E[auppH . ug0V$B]m|xRN`LvxGerԜ<t+'x!C6:SDm$4P8v95Wo>ro;V<,̰D_6c7]fbI}caJ'"YLw>}v 3;Zc]Y쯾W0Q 7]jn{`@8JWچvT<{df;/3^E.o?P\)GL-s~};ccq =ӡR RMw(ctw Bl(<] R=&8 ~~0%+Mi"CWnoq ۛm] -{)׹%Fi{;q|-q'yJ [y3N۬6]rSB̹C6{٢[9/^*Udʳsi<%}2;>aLuQOBYWʱqExQ²߼_y[p!UIcR.i%WL 3A#gj x[ҳ8xt/cg;RKWD36Njeq\q[k6 [oɰw`YnhhsT9 *.5Z̥4q*Vderlޭ~yH˔S0*̸oNVYBkZ%4jGMZ~IU `WZC@2E5@<-kbL,Q.(WD t 6}Dv!Nsl[!l(c}VylsS e2߭.9soODVRb<(#Y 6Y3aD&j۹op1<ާ2iT{pٸԋe(;g Qs[(hǙPj8B fXŖT8/ TՁq/" _X~}&Cuj0\%]N߉J}U2/6]f,>4YiF4Gal֘05PI|TPō#SaK'u oܪd~CZV["U8*ćpe&!.}Uou}ATc{SbdbMm1}C&(J{06HdL E(-W!EY"S0PlQzԃffZ%ngL'- o6Ii{tfh.3|S4,f=784RyS?Չ5ege]BИo# uF[ .U&@0LOLT1CjMK1_=,NW;t aq77G:2<_Ӳ&[ad#[Z]1iB;1&y \K#;q8ۑa~ 3b'rq3Li6p_:w<ۣ>`BvkTwmpa uY#~tjh,}XYuլzfjFH 9W3j.$dӎ'a*L0MmpV^leGM:t=Mo~pnM=Sg"<%Zb*;hK Vr5nSy`T^f׼.gh(EcSki=Sr毻n>mRYtҦ=!^ʂו*vgېL'G&:RM/ԐJ&̰PB%fĵ݁vR~Aޑ)Q32-R0Yk4,kҝU_z*$)Hb0 gomhTf?Bw?&o@}2`L5B UՈчokк2r, |"-ō*9 0 lPGjR~: ^D zF A*rTb, ,=X҂]x}qmF1XrKmz0hI 4+0C0kV G?.kx3OByz߲fW[UXYm8k~ޒ$`h3RK^cG_uJ(dZ^s9]McWEHK龙s WO8]S3jP3[*| =mܡkpy?j7r17E#qI;̹q}ܟR%xC+{3@nSG3:Zؼ,N] S& 煐hDO~Z 5љZŅ @0v50?ċI,'DqT.YiN_ ̘*j%D0gBI4fz 7~w`i8Ӈsd{Fv?6iʝ@iPccx$VJhyscO>IH+# i ma~7TTe俑"H Z~ﲰ﹤O!GQN!~{>& vpMSck"'Jp\WqnV3A̝V7J!cpj4( @y.@^~Aц6i![s>JN1CvIrߧjz]ޢ0fsNj턆P?ʘ ϊщ"sHݹNr$%@_yov<<%lod4?.M -Jsk_dqU*m75$Bw$#?qޮ)M[6~!61xaZيz1)w*,LXEZ ع)CBS~qpA6r C0yE '|1 Q " r*zj*~{co:U"xQ*Pe $Q\g_H&>̱Ȑ"5eh nI:f5 q)sRWffzDM2n oMeXslNY/|"H,+Ve'vΊvS y׼0!^V)X/ vuNH} !eW%p&tq(d HJ=XbUdJAqfJ޿0DF/2'T~C74$+;5o:#p 6Z4pjE!Zpb=Z&)g& bqo$*j1걇4U񟁓נ}ԗ7WÂ}Ƽ(te91&2(xZzK77T蒋=0U.#X 5!)u'B:-{v\[=/`+wX,_gUuk[KzhzC@exrHs`򉴗N'nO*DX*,"^G㔲Z?+7EZʮ长Y$CA圈B|>Td|?Z3Ԝc~vu^ տ+y3ggIa dܶQ7ːVܱ'L3>}띥>ֲAXf'Vl7ıhtLϓ'H.x-_wOyok֯[.SRExv@2LQ͹Z?>0J*ə=( LZhPP ^Uf̎}\J2vLϵ@T=Jo3p/)"i2hȯ=FI1wH Vfep'[{wy'EYMqщ3r̄+ O&y=Q+CL[^+rlQ霵~"'Vl'` |vJT)D%}NIcSpvC5H0UJH ]5m=Z!RD>' ]P IX on.jLb.֗'{ `vB(Wgv%]0Pxo_l8HRˎs0-Vdҩ6i]O|i)–.XU nik#+379ZؑFk~gKUaĭ|+ʪ;EHnuYe ixI55̱D_1) ރ'q@&qH)ίZFZ9IMe y(0EsF.XQMy<$ Y<փ ]^."Nx;EzxcMmX^!WSw -=lX0YN'7n+6BΧPЂ*- nEtJ.XZLebx50ȋVAS'#B ˎK}gMJ%xVh|RAܱp&6xPXGΐ4eS3#0.* H]Zwce3қ`gk "׺TߩLIdLߊ(K7܄v1W`<Xl 7Sc$JIb Tq)Jx4CU?в6amCmt0^;r 61繊9"ukK bv]?Fs USe']ۨ$ >/jK*y/8t×XIEWs?n<=D'p*N}Ź@W[LI}Z0erShsː8R?2/ Tw]~ {} % ?(|>2srvΔci=H9\tb/U= {]sg33eFKd,Ѱ!< waq~ UڐeLJ=ܟ77ᙯٟ`!웪4_[iU6F`k8I*if'i M],$~#jnߧpKRހ U"-HձIeF+ed;5ƈ?uXȫy6h(%%DY6ͮ-HM{KnڌXdpLV<޷ fc\ٛ|/#kGډY%1ŕg>fH~Yf"o͜CFY !3JW"ˠsɢU{S\e -d>(!1B3k"ʹ~d#yߗ2T_K  u @˖] *6V1%>O{@mkFy5*҈D{zb$2O:e:օy$WlX6e}U]`΄lI%2Pw-ȁ[71>_ee n]̅'3@Q_lPM Zj4l'ٱ#$IVAqԮl\,7`F=L6=ߒmDc88%A +zyC%i꨷?%_@^B[f)4(߆|CJ;=O5KʫϐDV,U`ʀGZ!gQ=C @ڐ,(PԥF+ZSz`v/^4l D֜dC5JFtB3;5a=ut1nN !H=Hڴa ]##3y_0ggWK RS&qoެ~qFiӣF$>K2ezsDl UӶ[I^Ł_6Sr07C8M} ,/1@ҿ lԐv[qgt'J5e`fjKŜmyJ#qlgE>Iu0kizdҟ6d ܴV* Ƭxbk=襵Ko H,7\~Fv]mΩ W!4Vd:4^++btS^6)XގDV@ބ}PCLl?❅Z,#H ='56'"iπwd>+_LD)B@7b#"zȆRkY{Ucq7V7UF'scFgmoBfEwuqoKl8L8:E٤}\ɠ KO-\0QՐ톉si,;C?u6W>՘@m{_?%(ԏUz-rn^R'a\beko +}s;iahG$o1eV]fA7t, F24f+^ZrӷGG3!Ȏ՟!%♉x<|%xIOL71`sW>~ȩ#&R[A7fg7J;VNtm܌@vH2 )7!B$Ζҹ}nV5 S@_!O/)?jcr۾BNy4W#kVw*F%vC%ГALdBX:mj ĎKOW==fwxBqM@ T)"W'0 @_5 o^U:Ēx2|]G/Č[Y@ҪהTJIF8 w2z^b\uY [OHFʏg7G "|QV1Fgضcd"Kcfo]Os@rXr5/P? ?e_Jt8*N4 [i9nj›x<-s!(W,c' Jϥ` }a3x;J-~y[ǑeajA(EMF'a\$Uԃq-jNBygk0BjOzz'H^\.XEvN\Y_ftZs<,ҙġss/9sX8Č[(y|46p^7oh$IR=k˂B }"O \qt_M|(RD:$5z~A VX:ZJrVȶBkSѴ+ꥡ4,Db kg{FfMV[ v-r%gk3h|K'V$˘qTݐ[6ݴx #uMG=I+~DYBcKʿ~Qw`7#a&*Շ*6Qk[[tE<)IeR])hyTlS(# V@iST߲C= n~Ra hwjӣH.J=fdn/ @ %H~4i-+n;±#~X1GtH/4|n}3FJyv "x{s#EӅ Ø5^|ucgHDO􇣎g/GK}7q>-?ɰZ= q1=~N!-|8!S8u2 ~-(uEr$Uo@]bu܁Q44Uɥu6QX΅bV0,D]KxPb_FT]1\-NÙ@I0p*YWhiި*^@ [..x&(ILM5Y% tk\Gr?Bù=$#-%}WN%0g3 ݼl|:tX)r,¦qdk+'_]zs*6X`8 ";?` k%˽ɘiey{~R)$T:=v|%uWi Bb1@<$Dc?eNpN GJ0<3bܗ@O1Ӌe ϸֈH,iCחtf`v7lu,SD".eav:D+ISOFV(z:ku.Mc>6 =M #RsB$ h$U@첋w?@>߆T0NI,HӳbzKTs`Gԍ]X qgrHTt'R:lY5&zD. ~>h?*k'ra1u2=g !߸Eey5Ukz.u3=Kcvy[ԣ_W&}]źA/`qTDZGLh^+=FOY69ܩuƊ#t@5sÑ ~&VGtYDS=BeH"-_NjsC2@`Ȑ& a=Q'-^Iw-, nQ!LNjEx=2?GKwP'/YyTJLGZ?Vlvm&Z2khV ?8o}lf4>Ƕr06O;x=V5)ŹӍMGa/.+)Zh+Œe*zl%%!fU %#`D;ʠˡlv\%8+uMRqv1T՞%0jȵrEIƒ7i72O}W WyJFL@M+6L F4yCR R3e}f%w}cͻW v6be1^=gÇӸ܎AxZiM5P:ޗ#끫{_eS}lfѧ5ʔ(wQߓ#/rd3DŃ 0чǦaݙcsuc̑P-.B/}_#`}1/%U;g/:[’x j/g#쟃7TfZLê ;J=ձ5[o봈sqMd>3]ӝp)ղ\\qqjc7~]_II>Fe!AYwU$~#;2 ]vW:n">z*˄53<%cULraL2ˍ2tO / -J pQkʌ+ ժͮ*告m!^*FvfyJ=xyӿi*S0B)К:łL:FdKzr?an;ǼL¢v?l X4ΆgGKCc ]E5a^s^#WmP/9X==/ͷ:[*%" {P&5! Zb*PC'KȋqsH\3gy>ض*Qj%:1GC}`rH1U<6TjS9>vw]},LZd]! m`rɆ*r^"dT x~` HvJ ?ǥ8,BcN *qI6i)s2pR /\g6ceo[ e5Z`=ۆ?sO& :cLew( 03'fh9iǑ n &1 O?޶Ѵ`_ Q\ ΢x72ncTUN*ky 3ّh[I>@툔]z& 7 $MM=k}/\`q,k]::21¡?{{liN9GD=,O>unͶ"D}誦t]]d'^{~ߍTu\r`p\N39gyZAܴ6v*"N{p)}|)C"L{8PG3{mT&-KKe`7z` HOf)RLQB+m0 /2HHF}ɲ6f1K#E>udD` t4x  ݨ P }Hߖ6khpiea͂CD v]|3* сN%/ 蕽?,jF{~/=b# Qǚ'=,a,3l)=Û{7Z"/Nц;MxtETaߠ`S@k:o?OnPq. A! e~e C ]~pv@h̔W}xfr(~Y!Eic!Igex!Tmez'iLx9L {1 @|]*f]2h9LS9 Ö+ sA>^]5n%"lJ߫Z;f>cXz*`}bG(3VOzHX(-)mjI[n/{O_Obx㥔H )0&q6I/0Ć\|z4{L{6]TѸ[WdIF߽U2ݮLk5t‰HE(wMjh=2]%\Hrס 1M%{M:_j!X^CH|E-{ͦg}.$!*Twi(l'@{qbtk3XbڂRycUx>ۀ¦(Uϯa}.yAd$^!D# B,!%'gxx"Knz܎u@>v~[#㢧NOQ" !vez/\>23Dtڼ{7!S% |L:;O~ x,ڻd6~ NQhx8MV2׍٠T>S,*cɛS7~^򱈪 -uV&0]i &^^}s1& {zٮ)X%i1|VQ->C f7S^< S[ ZQ՝U`\xFB*P{Tj;VÐ U}Nul%V^`E J.Ѯי;ΠT nS4pO@e^ Dc\|uksM]ߕ[ŹPyS 1U͑8M#a-}0jr&fXhnx?:mYIfv&n-UJS7S`QF8Gj.VHuI@F;B%YSR}s 5> D4Ej%{Ĕ KD?iw)1j';?V|>L6J< =;7CpD:ݰqx\d3|ЗmW#0&Bhec%q3>k!j_T%(Z4b ٖ|XzY.J;v6)FO`N`g=_R U3w'ga#t6M;O =(s! 91.ZuJ%lHo47@IQ/\P~8Çk:m*L';SR6;o-9LJQ$ps6ܛ>Z2z*pAQN/2r=`pZFGpB̃ښ|kŬ>PQXU{*[`tEFܱ)gᶟC^@e4: bG|9_uE]؋=ŗ~ Kq>%"U\g7NƗ#X <м}Y}u@Ѕe#, 0"$?$IF6wRdGq8>|B=J(C 7챨wC[-djW<&2"">`r+:Lc-B2Ul2Yʱ=ˈneª@jy]=:$o:}yl<ϓ5Nw0$@Ӱ? Iώ*&oPBIlV1p9=5S컋4W;x/o2Al7`@#X&2VlAM({jxaZ} !N۞3斲UԊI]OpUuά+7`n:Fɲ^}/:Y҄4'4-VI 鯞LIG$MR*T/8 w~^R/ aS"uqP13yO)=.%ⰌОexƭum }oVIrt%2vYv,Ya !boZGEi(U !$Nߵf[`7x ;[rn)YܴJtf!^`2xk]#_L4/a i`(ͶA)塐[rsuxe-"͝֎V,FN Xn(u(x+]%\x^0-?THn]6i4#A)FaNv/ y`?lr{OɎC 9N`@G~|wݖMr!?XT0,;}Nڃ MO.d= ƙU>M#S1E"W2Hh ~^4.Ru!G>)?m_T2Tٽ̟jP|3 gO#[ 4b MgQBlo{t)J޲ Pj(;R-R]70TYhsz#}wGȕdǡCUpEOHHY5oy!/~XE-ZX)A#!^߽DBo(uر]<'vO&2妃Rc@mFýÎ5'vc(?C+'DET_" /-C ,)E8eT=Aw.T#$ھe绚Q!$zI_&-;PAzL_Eݛʪ崰NュD aAЩaRnMD>!x cyK'_0uX j_)FufF|(1/T}#:⹺gq6s=%`FrXsfU̗f4= zf&l&i4*c gU=dAc {㣸"zExu`3܊m _0 ?M&ͯ}*Czbh{]  3xv$k; 7y&r>oĦ@@xe$^&o_5d_D>u٢e⾮ ,  bs!Hp o.lr§DU?^d1 jNXb/pmo,_C8[ T†LRUD*Ph m+m͵؏oP#<_>W@YetYk퉙aDVqߥY^KK }OCQLf0iP^fؙ7\b`!6\v9b ::J+ڔCWCG$,W#TKsq~@!+ih)gڕ nnWW[O->݉D@Mf'vRɬu7f*Cu9j%)T^/w̑0y ͪ'6J2RMV׽Zw%jx;*)jo YljFVzؼqf#K$on <`ɜo:ZN<n7 1ۣh#JTji Ѳ .ʞI`e䢊f=gϜX q6<L, fυڶG3Eo= 54MVLMІǻdlbZm Q~dfQC78Q}a9|a)g`09&F"{\Gh94RhzЯyxVvՅ>K@Q|C4N& 3MY3} ԙw]!nVԨ_⻳CO|Zo g+/ ,gi j(X5Wx*:2ŕ=%~K\CZ&(Ms2\|@ I'Snw%#FE4JL%Y*qkxJzeWEglr+-2zڇ O)ܱ ,%cՔ6lQ>}]lElzқ3s4˥R"{`POmLpW8$TĎ/ t~q#'x~%Bm^nto|{Vd汿*eP)Y88D6ڷ1\w8\I]ıy3garI< xk'=}Pgahzc?c1H9#ȮwNK<^.]lc)1Eg&kdEֈ`: ]t/oθF4rh3|<,|SV2%Yb 6G@yCEXKP[T ХEq#ĭb&Q@EYDA0Ф+.TjKZQ[Y` 3Bvi.gȓMKF'Au.hAi`\f$|uqK4kalߣ3 Ufdu"1ZNXԮ6_nE1vs2MAFL*ә&'l x?|nIqz{?YBX=~EC^(",s,~ ӂmڧB%ۙ*#.džS{ev+K,g&$2pS u"P={Xtv&˭Rkn61<(eU2K{|W6rl. /Mhu^K''_bLg)-z}u ܏Eoi'#!\ 0r]) G m*Ÿp<{KRdiÏS t]P{n:dZB-|0D;}ta\#Lc R(Wԯ9܄I#5Yڸy2rYgn]"hZ p=H(<k$iȤ-ި#_DEy7`$ tGMXĶ^ÖxHNq%usC?|H%e٦Uj\<ܺu<4 'Z pqdAd]z[ A ,ɯ:VħVQ)L (~ӽݞp+S%0a#剌KԥƔioT2u}.0~(zU>Yc%i4CnBªѴ닾:ao%$ŠU 8n.&T% zP[-A$i|ՙ"Y'̶y\!7 ދYKBk1pZWjcQOGfYQXEq5B絇mp|_߀xY)l zdՓNyiE U+,A:^@aANEpqfai [?SK u$t!FvZT5^T)NomJ0/ҕio!~n=(IxzAF A6N"khxDmKKдL@ECc VNCm4NxTNpdV 7Pi2g-p|cHQ9QdtM_!*&1SK6\ۂȮ55q2ݎF-|І sډ;&jDvm߮)dL\H(2pBSCPF-7?֝;kΊP:Ω/$WZ29,ʼ؀hnlcnxZj_„+ ӓ_zfyg|A TԺ/> K'ɂ%w?|; Ӱ.Drj#ch?)x|k :sG1 a>뒅t{NԈz`h)= "}+gDH&ڎkpB}( 3SAX; -bqclRE*-5ʳ!rׯZXD%f0G ~8 [ TlJo&Z+&gA1V[_L.-@"O50 &2j|`ek >Ņq^Y#?| B!Ƴ-屋:D# +]]RS(pKr"r RF)bn=àB[tiDLmaԓ_nlZF;;67d| rvPeU.]M⥄őz9H°u tXQct߽Y0#6i#OTЦu|ߋךɗ!0!MU\"%T7&݅תS%{J+-7#O_y02pV+$t$ʄ/_ yvW,W?cB_Mx[b<[] =soV(,ȟW5I- 539ׅ3odH;ЖfoabMjoۣ˅Czt.dnQtZR7 "rcXHZ)?-aٵ+^&V"+M{2!{JM-﾿m/;q+bن$e #jq4Ik(X~4\^IeWy^bo^iHܽ$׹}B2l%`+hB/ū4Q P*о;~tff܀p}/gRw(Ї籏s}NdCUtJ)h?yeo3N|탰OFPR;U 򒉡4pf3aa=/plQ$;Lӝt4V}+ǟ[5le~ XIT1p31-θJ0*#z9!9J*پգ*]]ڝ_<$<ŞOی팶zAh.7rWB|'M^R9yGY[I_@l-9_40V!L꼑 oFRU:#gU!P}QB b]1XvM=^*: =Pa w5ry\90.!N^n;ZJŹ.d9lSUws#o;)CQO{SJqVsY\>=rٝMGD@p^;¾y؂R=McJ{y8(I?%KVQG4LB?J:`{)*vfr<}l{P_ia@-^{41l":N=&_siyU/ݦ]%Oȡ7ݿof\P=p0v;?эʽ 21I3CA?ʳ8+2-OtdTokThLo wb#le4rd%@2tt*CaHgBvUF8d`3q뀝9]w4^:K%T| +^oo #ʬ1[Dh6O.l{} A(ܩ)}J<ٕoI;^gkzZ3m̨ldRl+2GHx)8]4^nC$tXf4˩NK{3"y1|s{Bi٘e L UĀ /`!υ_7ÉT80wv $? ײj(S|k9vF!mTI"~;K2ډA͇汀`ߑ CD;8At]>J^hgY}粷H37ꂸ>ósKeN_kQ]HI8 kC(l{& 3Ry.Є4kgP-^)7S9h%ȝD ,f,L d<96iDþPeC(O%$!e{Q>NuHod~kk#tinzz 1hN}$FgO y&~45E5d@YCCfO0)kjPd*A:Qh(ȼDȯ^S8)t')1 33/|W3EM7{W3fXOLc.t24 1=ߔ`9^yqs;xZcodRF+l(!6ZM<Z2vegv'gNԍO]3Ry+WGOSE*dYxl!6tֈzv!?<7 5 Zt@6N:%7@ĺmGⲂ_; Ҿgr }KTa poh"O {X)M:l6}@c]P\XgR sgt&7e Iat\]ѐ˒OM }qhx׮U oY钊aCPrt} m, gMk\ +谐i~%$0]HLBFD~G> f^TIV n]~ 5 *D@`cLwL}OoK,Rqy$:t`{bv0fr06hÉ*jmW0뀬و>LiA%?YMVP2Ӵs51sHʘ8qW$C. :̅x6 lŴ<},m5C~̧hxk|Rp^!R.rM `KV8?f.tf0&Gd[(=mmyhL$ޗG`38Zr= |NVJ2w7Dw߲ǣ@y(5L n|B]D( R#0$Mx߇M)6W!t?yfO-Q= I6勎;{XBŪ3.[*ݴZRȪτW98TV~"bHb)lPQT$Y$}R}JDw1J?/8aC:t1V+VEq"ޣl@-ZT Y$Q@q4D鏴c[ mj*5CCod,}~DOC]!'.ݒ~1^!]Lkc=s7kSu5Z@*|+ekWjmz& 1x9XJ1:Hqtz-c' 4%uFMնfy`Il,g7y&2+ǔLi[_0=ŢGy|osԯz qUU2'\H!֍Gf#WVt2WZ; tԞ<1_sy4uX_8%4YA)nڭN'b.m턒d/X"51!O^ o9D J3~`1wag(O(\F*鐁?zo=AZEbݞJHV,5p4-zeΛS !Em%E%OJ\IHU(Y^oHSEgtx4;e= 42)|f5הlJdV"uGZy$'xD!MgR/lIpta矌k(/HYYq*7XzEzA B?1).BNDqûsH\\@{Gnp6Qo1 P>D/L]Xф[ EOvp]%VY) ov!C֒6|^!=|sN9`abl\0 nC/7+ ~mxKC%aԉs$q6o1z 5ǒ)O]sLtש|{a}5H'˘!#wt#h䣉FP5|5`\@_On$7|SZA0,glѤC *']-a:uؐ(sDуW9u[0WFl6를LMN3#.E[v '#4v# &k6|/TFR:.#o HYΤO>C\ %:gG3#.Yd4Z:qpFJe~1.#VgPSz O縻μEɔ_8W^1=P}V,>{,|Ѵ=һ<7}/{4>v02%}FceM麖ɦ2tX WJZ7;^H'(6͜'-Ŗkiݚwy+(ƚ`W|~Bjrh?5xXRس^ХţѓWw^bkv T<-Qw!>F"pb/ףl/)ai[N1sihgDؖ^Oc؋OXvuNL0ɩ[iѦ1'=5$yZO 1;AmFgXÌupt.N0ˀx߀Zq0;v4-?ۨ K>)MQ#1* \5oħm'6ge#n<f TW;y>=#ZH:EkM؄{ ;QSăJ$B]!֥g h+cI:B s:.?S\E@58hgb2`y~¥|q*LI< xGU1aEPԥ BT *M%QCB7F`~JTF1pAf=t/d:ts9Ml/핪%ɻdn"5h Kw1߰0m*6njd4̾u3`"٫1"7ie_l:Lq&C(Q+Iw> ܿ'}WA}&+?sx'WPȌ4eQu;u菌o)Sc!841^Z $0>FRiWƟMHݡ i! C#z6CB.l1MoYr!s;b=;5%l:p7 cYtsV}Y J؈*LÀC[aCe krm넠fv6[}`p; ⣆{] qiܱ q]Vwyl>Im T>oM*w黺 Owx;±a~t6"좃ggnCs >-Y ?{^CnnہNq>Av⺕od %>@gSRb3P݉(>fN׻Px/d}x̨`~# ARVP!#CRly6P_/~9!ߩCÏQ/|gHy2ʼ7- Fj3ƃi/Ur;L\^=-$-i  4I9u]GlA =.':d +F31%B?Y㵳W: m/_ ~av@xo1S _?m9yQ., r^1 N\ %6Drüqf/?B=v?xu|yt[g-zcTQǮy' 4b&?zm@%?cP@qHFS{k D5 ;t"lF.=?Iꀸ6L]Y=*zhoUsCFh 뀕Jc3] Xi ԪJ"X«4V̬#)bk{W ާ:aýWLIQyKO(3nd,S@}ՐhuGw`xw%'QSbhV)ޑtIs/29wA{ a!#D}-=M#|eў,?3b,B 3DKBL2h@ d zP&ͯ=#H"!.\ 6W ]ާ9QA/t8#yU0?ꅂR^1Jkv}M}'Y tX6[A<ǁmD6W*dlK(t VC_̦Kss袾qqZ_|X1O0)!45eAE4ph?;iNkUlyM gP@fSOCz&!iعhc3a;6[Xl$:HKTM5wa3gN0('E]x^]*MCbO6?R)OaWG˾j3(9Ù@^˭ 6ö:ߐ1(tR}}ocٝHf^$zp z[ܓg5*/=8&pTeNo.Whrۥ-'@8짛3Q+*ey!c9~Su"'aۆ OSyG+].0G=0YCZS+ uwf4PZyNJOf"[;|2UH=`i<"t l%*(כq`:M!`W1L_6u"y&QSpJ ]%ivx:ϦInM +?S?ׇ0[O }X[?'#I#=%\ 8Т#2D D`#@=r8c0Rh=\v]Q&vM=A4 .XxFǤz_& :*i:~N#֘v'ש.U,2jٹ7.@&q63(:eba͘UEN<4"b88Q֨fOI"#Rq9}*sȢxhU? $@I1&*:1߸^↙09%yjļ1]FfisՏƀH4~E"M[2CrU}n+eDd4՞31 W-!9K> qh<3s|uN6\g t+4-^> aӓj>}B߹xKa\){6E˔֣\ #:Cd\_.eBUg]jsFh= k123v3rA&!,B 37;Q2qj0du~W(e1δR1Dܿ|ECcE{:eLeCR#::ӒTb}Rµ[x 4Re-\#NdH`K.>y4r+e7{+ 5 px_ZlDK"$@qAw0c/}#>oJs1"ǚ"NuРu85V-nkȒڴRm4:8-(LMN(zai6Mѵ"[ᓽN uZAG3efǘs߀ ނ%z Vfs)W%Bl ٽMo(\fws*I0Iځr +&CLub}@ O2rT]WFt5Tq=njX:yUz74c-f|P笗xTjd{VOoDZ>FSԨE5ÉnNKddz ) ec;ɏvHܻ?xǡg@ڜYy=l|01J⯼[f97rP^i8J?9 Jސ3ꬎfd"ڸrքH޷ZˆCA?Š(I꒫ 6sSie_< Is|ܱ;ma|&F=k~T^y4_# Ka9":CNXpRH:0Czy2"Ja,obYއ/WO_{e#v(<tX< 3~G]eȦ=A,jɫx\S&m17gaϯ\`IH8> Lw lP;ը0,EP~m/W0hu.ԪJb}x_<`w8vu fMbd٨-2YuiA}.]J̱z-p:?P`\0jQ5~ Ls\|<4ڬ:pt?=Dˈ gAҘ8}tj>L8(dڪ`A}~ |r's 0 B~kQ[:G=|dCCNBB6o@kPq?X-EN 5q Wk!& "EٿK_6`^f73{@zUqܚ˱7eFN#xJ@0XCV48z4 [˪I򧯫(7ԯc,wJr4! L[Ju|mCԍ,&r$*]9gZ3#/bܫu5KCX8(tOanԒӵEg&MDs-if3z_?&] Ze,Z:?Y>uWK-3{6.]\=Rn7"q!{ޘG o]xQuQJ1Bͧ( .MGaW>!A ֚t;mcÌs͍Pg#> %A3zV;zLM=˼ȗB7ӲX<E0Q |֚*![)d+f2C kv~RN{ S(}%ܟt O7X:T?E(2/Khb["r*%W2=ԁT^9y鼹Ĵƕ!3 #JƠU( 5 żd6 _ 6٬V /$fJʷ90o߇2nNv]ĕ͏ ~'lJ~m4A~56-rcr ×lV;~SrbkF:#4дuÚ&.% ^ Z TeBmt{Ph598@/.iɧR+U,DEFʌl)s54NQ~Au'0I]2-_1!|Tۻ1}4&BCI_@Bc3cAV7#Pږ]Gj)8BH?UknCd~cqq %E̝(=r>cH?c/?d˥!dqlc:')fq%/)͖8ߠWaפz9j1sog<IbblYѣy>gju_m(,9AM L#y${&2%p*W7oHK" /}40?Ϙi*Y&scEe(@b_^! ,%䭇6 >pj ]2N"N2չY L)W$F%[GE4) LV&k^DFL׉d .c2=%Ji>.`81[(䱏7\)⸀9!79uz3%B@ QͰNCTlH/ a~'q-B]ld7- =1ML z%Ua Wj״JcW{ DGa-aZ"Yt*_E\qΩ+ԏN 4ykrj^i/߿C¬0x<4wB6,eꖦ/ D q"./1e,UƎ&BOf94b,\Hc![5ҊmχO\vBliK⍭eJf2ƅegL]7IT9nig\Q!{0z}C̸JJJ^} {)LYP䴢z WZz#;֑3\x@ LSdNG58~ 2+4!J/k9-8_c\Nj]yٯv<ӳNݱ٪# 5Nt^_fG9.Bã;CĤ$f913^he^H  |IɥX+l1P O$֦+t@@s VЕidc=F2 w& }dq'=n"*MaȂs1ے!&@Q53ڿ490L)%gwFg%IR-W;z*6иtF4P_= ޺G5Ak"؟1coQ1 a8LU1OQDZk[/tl~!8 w=̈ܘjkat~j&] ݮFd"n_Y$p@\%mXr fӺGE0aQp66hq"W͔&J# TgcwUrgA[/+}r yOs!pr3@h3HջHEHv4D/pWCu%q ITh hlcڎBU9#? >+1$BVuK;i~(o庖W1& C>NO qzWMY #v>roiՓ29WKppȒZR]VyOn!RGx F$n`R3My2K0fcMEeK#|L"_U0\Uh,\[M|V/սā,=cjzݪߪ(Adb2~Oo ne]nqu 3uyq ᆖ$ 2-8 rNʯV<iBpm~'i[&pDM8:M$r@՚`v-<51)&7vÙ;ʋ]Q#*5Q% #m0B MlVޜ#/JXN:h#zSޠ/ˣJ`ƒj^wK|.q͓/u R,^\4'0(emی '1g2-'(xŮ_?{"|AD|Ηh,;fSz&0 ([!y!P!glpM V;["ƣ.S@(oS#; {v)W,#qݑ,%X<|Wǡٶ<ڻ}׿S1 @7;%`=?0AY?K}( V3Axzp ?BVO [4ʾ@ [(jGPg"7h]Tp 3[?ry$.mݕÜR=SهL4A{2vƕS3$TT3_=s}#\>+V?O4 PNlac\O>)ͭ naěe=kk9ȹ f%wH sԤ"ԃ%bx5 s`v ᗎKZQ8o{vB&&/i!S ~oegKϜ<0cG{й=[a;3ƒtp.ؔɝ%[jF{3QLTbN_VM컞ܦ餚x,3Gr:wtم$7Eq"gԣ] ;7 Es dm㴲EBh)Acl+rbfujok;gMmyZj{M3,PfMZWrs!PlٜW.5l@s>K1+xwfJ'̡#gA+: R-)%e`[}8=%W5*?je5ك5;Sz<'ڴ U:sKL\MځK+։҂>.uKu_ce[lT>|ݢo Η?4bc N#qv}]Ҏi|IOث#j0U]-sUޏr5>wqt/5Y,Nokv`J6 sJpV(ʎ0U:P@#ܡ3os-a'!H]Lu-L<xLsT&^e5ko57`5zM'j}2iqZ%;pV"܀>& o"?@1.s|%{uInاW2oL~V$o:"3\eV^^cy: @ũ/%%!!;|G`}4ZU!"Lb OX8iY2-M\I=!|x\Ǥ~@Jl^H$9Im"l3Ps໢!0k.am3?܄.&8l7 SrRO14pܣ꿲JP3w @6ZhѦ~3'x"(^g@ t1sD6UXLVG{XTMu5fCG 1QiLQ7Yl l!pќQAP|2UCjVvJgy8-0ef%KDu /] YYMN&TDCnvD I4Tt0Q}r컎*2~ks%} x"^k}Y,FjhTB1 l9tH[t!cW/<9[9O|KZG8S)_AJ7 ,dVjQZO O/?F"B?t57Ƴ(4|h^ ';(AȈUkݒh [8OB7t=zI$ Z~P/0R"*޽݆շ+6_ jTmYX~UԲ[&l 垖Z1f~qF;0=d co =CU8i, b,px&hM˖Un I]im@@nTҲ  /f]|J ;؄`y>ֽ T'&|w*zMM1LV8ߨC"Gk_ #j;ĭ@q|(l_zѯj ,Sk4PCZ1LE9n 4_M;GWk5QT_+X?VYWHA;~ID0WT:wY 58 /߬ 1Y:Zpa<'R/%V$BEC Z\~r,rrN8ٕT*\2Ŭ\&{'B/zpeVz6q̪:d,+QW)!, ϥ`e*_ "9$bҕO$)`iP$O/roz؏,:cb;a >t_a2@au jL p*aV jоi&gE}x"oB` ǩy\Sckr7+}XKșIEGwضwh8%4a8R$AmͼD3ZC /2~_bB/UՅZMqh,a#ZYՒzQ5;@ᬛD^p `5BY^P% 'Nڪ4C1_\&Cv4*X !PNB">M uK՟z-ML5`&2tѣ8k8u}iY m훉Wi3'}1%A:_FW?I Nj PDקkŗ=tW1blJh:cJ5ѫP0QK}qZ2'FpGw  u{xp iVͫ=' hItCߤλdxՀBe}?mm ;_ğVzt-:D9Z| ;,+p|, YO1)87QeBĺ0p&yI?C`.a ,z!C]LY s4,$XpqSFTʠjW@QDE<*33}Kg%0&Ja姃t6/[ۯmDfbwjƪC[=KEi<; ?)]!(xȁ'hPzحApiL*u(L-$ Z+n+bjؽk>bm*8xfr7X폀o/??_9kÒ [&/`-s- UKcaʌ(= =65Ҕ1/YݚկiMq˺ fB޶ Yt&77W ]L/ĸI[!+vZচ He^\ISFKB#^ ᱯuḫU 6.vW%MKM17i2; lxw:B(xw_B 2}ZLWtJm_Vj\hM2fكc0Iesز&D5EY>1VfV}_.* ;9lH. Y{PVC3FȾ{b6 >\E”%:J7񃾥?V"I2hޜ/>Xy.0.`4r:-67BWAngtm=^.eUϘ1qJ` }"1b vG(Nٔd:|UL|r.æ0ֵhwcgZp2ܕ!9B1xn^&![܃mXYb/+_ c"ǣfChHz6#+TISV Y/DT᳣(`<ܷ͞J Qc%#ϣUHfC$߆ L(UqGd-/ a|V,-7nڪbm!"@ 4SHot^]mH)y5um}9:53hsPOEv ) dL09z*.ݝė7Af,D]fEM$X hj' Ŵ~b~s (5< @{fALfڂ߱1QVϮRㅫ1W4:l zuA;l3Oͥ^}VG,>S*PnZ^A°MܩPo p M4 ZY$ #Q/c3Z,ܓgԣsv<};@Dr^;s8F M.#t k D7Vﰠ+xB]I?9T)PH#L9?!**8ò^^՜| MϹऱTuĩXY RIenꞋ1}ڽp:E d;>G@])5H3we)lKfH)J^kDWKTbCקOu{WpL7Y$!'c;DlV= ރa<ˍ+RaT{ wi6}A'bK;;G넔?;ųZb q])ǞAGx_jߙZXԵ;ɞ\3y! ^zjFx>5Ybg<[kɅ]6yV;)*P-J+BUj9M PrHф*s?j?m-JUs߻xCK>Qs]R@f0Q|C Hs[(WI!ߟ>.^2  !)5T{ Wf8- ]|h/$ um4  h' +CTG醙d7J|rYe̛n`#1<V_|hpbtx_gmD<uڽ qu-/ވD'M3#Il*\\fz2u{i vKP7з-vPq+'ZiYQ 8H$Cul]73&׌aV\s*2x,Ori#&(UZɍg.} ;gT_ڢdJb|AuL{"6!܎2g~f :JgUX; h| ԍWE8OhWM'` ?\w0ӯiSޥT"psG" [#K^v&9@Y1nEw"$ ű*2fwO&i!vc G|D~Bx4<$xp @$&I,]yOyQI\_GZSZP{=Z94v3J-.@D:^1_ /2焪C=ggQ3PȰS< `]|lG'{iO4~X?M-^B9nfGal҂Y*PS}L /bAFF`,(ɑQ"Pk N0vQej-y M]7OhV$B RS~HA)ک _2rSIw"?VӭHĢԔ1w.:}w,-SaE?DAfdPAݸEg]ʼn@4"ef"9Uһ}P_Is&4eemnhFQ!f]ڜEՆfI ٭Ս4ϙp^'Cg%Z?^v ٯk7F );WVo\ EW$/6Gp芥#Ԁڳ>quej9Xbp[PoʾLK&LśO1e1xo/TtR 0;E0T9 *u,WԎߡ30!NnGE_A3g[uQ:isw ?k%=5uP8rC&˩nr{ KlL7vv2hZ생uǬz, ‘ĨL\ "QR{_"Ɲ(- &}v8,\bs41uKHϷwjh6 &aTGXCKPc:'By639 AiSo2Y]D vFoBwrLmu0nuE~HFLKPN^p'%/1{]_^w;tSgR(9 cF8YmU[% 9 %jX,k n΋'9(/M$RTPAro>aQ` eb_L=dY\]+@4N@DgT2ųp )8~yI$H笎HJիcn0etÁ؈jaMbvv@w:e<$WoԹ-0\4j(ʼkH94ycW8V{Ϟs[E*RԨ!KDfJ./+[Y95-|mƦ)eܛ?  @b2Ӯ-O];ʛyt{7]#`7էMLc89Xgr1q(BKftZn\ko R_sXŗ«mOɏW$9lVIgC U۱yhvʭC*r.]2ힵmG#Z}:ߟ,"]=iiy6%"ÁaJ` z36L`ՙA,֌ ATl[o䯮G ~Gv^'(n#>%/9`J+jy:΢cY)ӨԘ*u>:УUeW@t'7a$2\eN}qIBˏ&wغc/QvpAq9ȑPҰ=m#\YlML̫VaUp̭]Fxùw;LlV,Hy7CeCh$*@j>SiK|G&Y(Qaマjs/pR.<IFi8UÆVM6EfaNof/MwB|>s2kh6QUUd7Ð3!|l=`su f ♝iA5)˩`b ~1"_s |*'J"IʽgSP’9Zgt&0>޽Cї~ow&#I6^֍vqR&UrA!Jl2j+q'rn4ŹG`u<`,cG 8캍*"(OݝFXHpާӍnPլj1}챈{>^c)2Jx;5r#t.E0.F&< ZH0q ܶ=<KpScó+ea DHAv1 H $}zv+NN~Cxu0NZ9 fDT}5R:1"#rZ:xu-V+8 [C $"͹m'yABG)g1:ȬjIJ4C©Bd)mAK;:սrS|k |=VD:~xl:O9D0L"՝ۘϩ Mrlz.!TעX1'aTv_E kT]PTS(ZrEc7"RXMcgu:dyz"ġ̢ @>XJNߐI xG|G "~>CF fN_~ofﯢB\AxOgV2Ku'A@퉗̨] #1d7&fȘ9a \>Q~^1j*TCp֛,MZh.Z?k0V3J'Ÿf; VGLiyY"|L揢vD<nc(wѽjKhi)o̾-`Ö5П9 ݆N])Udo^u&E3ά>ݞ3;,i֔gqvk&7Y"Ǚ8r|;~3~3/Ap*յ"۴uKS mehԪp9'>I{#Y-?n7[#KG}e53MTk=Il.Œne$G?k' _W_G?)4v HK@;am?Ij=T)je}˖liy9ӶHѐ))2ٮi6' Rd}Gx^Co헜KmN/dJQDˆVk0ff ɾFRFsׯ^lMm/`5bD$b<g9H.ef֎7.3XC qYRũLJR9 i ˦˝hDmy6odLAIrԚ/Gʜ#姅@WM(`Kd]+<ˇH!$j[eDӧy`Լ e.d^qa =>?j]I37sDp0 hĚ |>TCrG[?ħeVt>aAqQ;,, PL=x#|  U?.{}&& k-֫Ό3h $~0Ngc+P򀜘f^ 8P"d ~w\q34Uñ< VwM31>Ha$@ryTPX|81rnWBSp$Y.rJ㍅ ];s?A^ZN3]ɕQyA !7fD.N崶&Kxʟ ]IWNiXyIۭ)S7ʡI&R#(@{w'BCJAN"Q~-5!F @dכ$4]Ts*x4 "&H i챉uk6z.E!jRii jC-[;lvYDz?aVl~|椝i[uXaZ"bqi:U AyeU7Bo#6g^Zrf}20/K0{1x*Q"GER~F2Fg4*3$*\KgڧGF=xM[hit 9p0&z{_{+b'!~U_>1+%ν+s6ulחWt>.13״0 ?%r+y4/M~>qPlK< %(LoY!fUSL}B$ xYHkojm"+޿ a PXH;$1O~tM)qAK䕝I6oO& @g)[?I>Z32h0Csږ-1ŜXOT%li(4ȅJ%ږڏ .)D ta1?:'l W@o>`,Eo $( k0<)hq{{tGbM.[g$f[xŞER,Ӿ^SĿm U_""fMF42ydW3܆M@Jd4*.?6Lx)m!j'ͳNN%K̅bT[x X:/V3Ljrd'7@Eh?lW`f}v$*0WZ! UaHd(>ҕ>>_A`NeY=bPzñҹ:oݼ$燔*U'bdZD9s4X&O]ԏ>R_6܋\qθDjIe`D3f !f甫OLDŸ#0Έ-C&6ܒ7X^yJ;Q  At9f@}&wBr>a.;'4Gc%NվBWᅟ,,d[͜ Yw3Ǖۘ{ZRSxlT"79bxi1dJ sաnΔTmd_ i?s|Y”L=ֳ ^ݨUe6k8t h?WK)<|jДQM3/W!:|6M wB+חn KP1cWGx_yKzA9[bi(%S7Y*.@΢)zʦkb琯 H׃9|W(`&l|og; +&Z󍇎y$e!1gey6ԝ1ƣt$I#˻ylm?;ɵ7QǿN,j, kG< x<<;~u}'фíF|O d%O:Kلw3K"dp|IJyLӽ)w{|~yUoVS}-t9x'G.%ƠwOi?UUk.47+j ;3:iR>=& /ib|b #댏yDO( 崜te־ot[j[~#(3E߫8!y֯K,"mc RQV~ɩ0à C~~L oLM`)(na,ileDKC&#Aɢ4Uq Po) 7q,!cAl@vU6',qbT'u}6jjAj(4 5F) K$&7Y˄1WOnʼn /1%F0Wan1rs*sԙ&z h^(m4;jr)T?,7H$'ShԲ-7)a'ʻfwzkXPI 4sSTA ⯕2}'vzi3 \-"e7=& a7?r, 9 v I}^A}o[3a\cFW%܇xB#+7HN@V17V7S\1V>_n@?C1%-@ЛIT}#yGT1-B h Ei s[K,aDpǚn?.)kvX)>՛@mBLFNΧC&=q:=B]˺PT3"s7|hX0JE/:ũ 5ie OV}Z#&?4*vT$֋ikU3FyN a~NaMRԭ},+Q8q< H r.H>U/mhրm=޸mCF~{[ y= ͢ s C#116B:zДiœQ]40e&/ ZN'r d8<^Ejv`ɹ:x(GN =l")͔2.8/]Ep;E7vUU>K&sa.'Ofi﷊n/'B(FN[IpSNx1py5Tpl21G@^* ̩u4CG,;"(Ag0cZ"$K[Gpk&2uyn~48"!&׊*^nj ?͌KpHGq 0Y ,8} ۟):p#'Υ4e830_:S[zrx!*~͠+MbR3gifSdf!5XDo<ٳ\Q_C j'ybBdX9҉0^ڐ}x ]E#g5E`_Nf:4]&rG ?Tbg[櫤J҃݀ vnm #muYs+5ivө7}i7h֮qK?YuHXjOֆ׌.$~Fib*I|v_>ʇnT2fšȫN+$FchEUwm95ƮHNpEx74WLًڬa{Ž(|?xe|% >NCy`\\y9j E&sKsH]{)?4lu~b$JFtݫi{TwWf_"Y"wT]AFpJ)P\?@D$`)Cw2xdDe>wV]vRd|5 z @~[:t6d;='1|YC#Zˡޱ* "0r놪PA:?LO;aZ蟀TOxJNgAk?ʟԼj6Ko ؗ/U%9B~=zW2cW7.' $/+xI;'L`J9GFDwi#~|ȸ鈧7<8sx)(֤oS g*O1p tֹ#`:g{O'[?d욪XiPTKJD);zՙ3l]@Ĩ2(n0uk_'i&OQ#൵Cml$ъMC{_ 8#OF H$;:K7Ș$Q־wVegMuIjJ3]|k )?ݑZ4 Uq^C;Q 8YgF%N@ໍiY!]:ȗB MDNҞA:[:w͵jW ػkY zTSR jQA[_>u/7+<ϧ =3s0H='&Q\#}!;C3";awhNpf'QWx] J7c5µ@ j>$&ٍSʼ<1\76UAp P1B{+sDi[i @Z /cSB,D_7Ās1W+i.*PZgGK}pH\+봺0CS#N8^0RfvZ\YI(Y+FWN:Z篮:r;$ȋ->c1>aN|$"F0Ax|KL1p?Pp9N'f;Pn* 㢭\stHtV'-QLcxR]{aT(F*ׅb{µa &|}Hhxzy\Tmβ^(7':&Q/A8ւeޡLSg֍I,ջCXC,-@* 'tcMo{P%[0]X OG3ib2jNl({ա2zD7XDcй|C =@"KSO9]ˬG?⥍e%@a[S=^Y8Uf VAFDWRwv~t+2ٕ!j1͚qf ^)/+. B4kQn"촦YwoS>"nh82ai}DYcS fV:Ǵ;|KK`eQ%6`xd Jw]# cF3εM !0 Y8s=SDSUڨygUjD̰{$gy na@+?bUˤƩuɳ)~3|*kD Cq<^ڔ X~r7x]cC ^/nFDfX2e6lw9CZ9|AZt;4&^Qx@}9&C9͠;/wRXm B29@}]^5C'и+f|5AIb)+ +u!]>l=$T>g92GϜdPeM ٝ#&VA7r+]p +|1 r3-T]NR,{T-M@^ZWr@'\| \@y%^J4l/]Oa7D|āɏt[af prP!}e{W?*$AyV j,4*b~ 5<|ynzQá&Ip_zȵ+P\zMkh^?`3S@]/C\JzJ޵th͇5[#@Xw?^M`a\d\v_v/x/H I"=% }ؼKor [ɨtJ.W}a9P,p S[BKn("Fu},t #3~cWY]T F>XE`B\PdZ@+lYNIkV@u0Ξ:iʕ M@{m+oՁc6KD7 >'>l+8}v\ X)r>N%js-4 "Jh;`:>[k:$I 6b|?/P_Z [S030>iJc:~;^PށzU153 x욙=.3to#| Xy€Tt/Piؖk8a3"#ҟ)(QSi;N3n.ĴrP |[i:3ټu(Lh_$9զĠREh&h¨Arջ߈D=~:;b3"ūϳI%nBӧ%9Ch _(.e7Qu'sOȠiGH7<E;7v" nԵ&Ȩ-MvZNb~2>K*7߅}olN@_p3\VWk$ֶoVtɐ.V'vl4n9RHZ+7Xkw c%i o B2`t4SJ+\-^šKϜ%$$}^{+Eh"sD7Ƕj%7F 7p0i9V-Z#50ozyPi1?vhAtC}aVsfO.}C ]8g(|#{_ #ޭۗ ^e<;H[/KDDW IsW;4SGt j ,M TvsW8ѝEOA8lL.B yj{hz@ dbؠMYvаdcB?Ao>z+ixʜ^5;[Q2@{D`04fNj@FѺd4GsPQSE%ahҪkd#YbC㺣x=qRji?1'>}L},96P {w{YzIGrHA>#Ef<;=p}#'"Y^K1-J]~Zc^>?Dj]4k?ϩ$\!cFbf"j4]1 AAJX/iZ >Ȕ%+EY`Z -W?PUL2.FEKQ`ޔեZyn^12>zxA_(* Sk2;Do|! z\:35(5#ZzKd))=Ѻ2>H`" Gq`lӊSZA0n}">o(ᡃW \B ?;X 0͋(eZr 5[A,#ᶑ"D 9^x&뉈E|Hn}ЧONAM2%Y]k3|t2?(be! '8D)aӓ&ڊwH|0R'o(Oj/֫jvM+=dhwI"rrWjߌ腂3y瑈F-Iˊ wI81>U:MBhxbKbD^D5H9RPZonЩ.Is靊aYɉʧu6yB0=F5QP4( r0%gV5GtщIyQ!aկBczy]ECOwL5,mPR=+Ү*CݜMTa6b83ʥtok8UsMȂ8bwD@V^*p-̪Ƙro+_\v1~z=`C\jasSvr@| 8r3S{SB׊zvO'/P'"ˣ HRt瑓@+VebCtw*]dAueݔɡQ`h)Aq滭yDu>J( `^a9!i)`̐G hQ)eAZ-]x8eN-e$?l` lvOuBF` "穮LݚZInؔuZ|y#rYK_tܘuT9- w V6+=])jJl]<13"a"Q5're[ДɹOĂ_ǛNƏi•6]VFb,%EBtk@d4qۃ̻bG\X4Z/Db:pȌr#C]y|4fݯ,]2cDFD } ;52[L86+m `[B>4aM2Zv˼)?*tF T% 8ȉA"dx1jDM8#WTvE j?]z (Wx?fW56n )L @v 9r/jVE216\}EX}'Ym%)3QWDB$; cݥ:6%?G|/79;zt%twz2ީtZM$/{{ϪZ, u6+cr-]Daߴmjk&jQW$t XejKߞ2ؔK|1SYj9l JcfŸ"hZIj]gUhHQ A ӓf2&v{)$)^a;y,7sTS:`TBb^?O=d~A Ӽ |ln"` 7}Ʊ%2֑BN.wk\;l2:¸;;ڰV]_¯xWn`jW 0*YE%,,u s N-|K~X$^bčlEDkD=JĚANol%+Ƥ-Mq F`yh(9j#~C8qt­,⹛ )I3a{(װ%tY ǎ\АP$ ;옩HE\:H=#!8d>u_YRD?)YdH.:02 [)"nT{ڬ"Qm71nAtAn(]aSST({yzT) '/DMr?tSr5 '_.hb")]ɟb|,=C_j٘4ڰiW(*fRgPsD]g6O$2xc'4[`. Z挍k퐾~x1/俪]\IU&ܷ~I/WWMQ)V &3҄LΏ`.U( |Ya"M#G_ LēscM=dʔAc=0dюРк5 AyzXO >NC%gLW zJ u3`*DJ۹jH?ȿ/ TTб?/{7N MA*H)U[3˛ "`ݺuwmƊsI%IGj*DBNbV8UV-W?#'' "ƭj325^jޗ{eJ_7cD25-Ud:ٖ\;ij tI_*(!eHF;>B=ӭ"FrjGFOiEI9urd$Öxʍ59T\ʔ;~ki{nA2 r+yM,nW,4ڵ%bMrHӴnܫG.5?0Ӱt; a ٌ%z_VJrڂs'C4>by@'9;Ub"KÑFܬI#wHT 9PܗXq@2jW HŦ.#Vb/!_Tޚ%f쑣d8 Q"$v/=d5bapo7 U);Q ]20 TA8H\ny]6w3ĹllT{w&d~O*C?p@/;%S  驔E-yvpb[550,AC7Fu% 1ׯbca8<.dITG㈳fP K19YL@X\[R=50^t:ǥ4BtNn֞W?i6W0>iQNӇTȭ!vȉwksDȭeRXQUK6՘4mAXҒ{$k7N+(473ħWWGhU2ktrv޿?wuX:zLU~ |=HER現3]_lQqR{#`t"edCWauAO_";,|H,tI{3ú$;UH2n?,e9ր2@CdϱTOs6E ]Oc/պ(| *'Yy+md.p `'%v2]RеMr^\2MpǚfDw>~mXngz=H4J+1R薺D .H}ɯ\!`3ѣ^%kYfHvY2o\SJogU)=-㚡J;@`o4hcel8,܋K>VqԦ1zBߡ;{=U\$Tb? E8~} lѤ˗]lX贉L%}+͈LL-eB?˞dIg?2'yؖo WMk7TjqB#);itn,l{YlUHj`uίwՀfx0yp & kV2;x9<6YG8*Eҩ0&I ^+@]"ȫ㧵lf&5 AزJZB)(g\YJD٧8֠.rhk Su|uAJl(7V`^Ve/Q)+L1,D`3;_ ̧Itqcvkh Ir3 A2IaeycWZr㕿wojG}]g)х. إ2u}{=' U^Iײ*bx͍q4cv܅>AfQĻ5>+aT zʼ&0? 9yf <4a!rA[_ Y]X@؁v[{(㟁~]ji}];Wd  0jFBE¹5ekAѴ SKaG*yd8pc" {εIrҽ0~_9¦e4Trv!%#Dr|MgVLgJOMNo@Ha셤v0fpľMpgS'MvQAmMaRdh|e_=ZfygChbj;~lF˖ :~h~:E?8?~3 *Cb~L1w`FlKW>$Ƒ!sRdbH= }.qSN_Yu BGT2p5|'{ 68(EQ8ѦzGb KCuA%8SE~_7|<01vZ7hJ:GtJ3"< xA{#S}"HQLVZvE-&uCՁ詶ˠ4΅eLoY\iP S:t.s.(+17>`i?mm kGP㮂 Ϧ#yM Q$$,L)a/8_.([֜htHUV31qvE!:eP(`1qG_؊VPUPAW;в`ٸj-}y?{#Tf&ZgYmo qH%mn"9!uv5[__,$~4) u7FKŮ <39unʝ8 ozKbUPwьaTF}O)jP+j `(@n=4=7͖?*`UU(¯E bݨ|:^OQF҈"wϰ,ơ#.#c` 6i:mo RJuԙ]b%؁աZʖX&I'GGgةq .^j9 2G<#ڃJE2MslhK BpE^A]9 7BVs©P9z OåTm aHgHmzTdWD%kW"6m Fur|݌klZr4ܢ湁e wdIrfU_'`>hR"rJQ1a6?ʬE΋~- /bT3?3//V>-i~E[Dԗ*!OʰN f~dԩ=0XۮZwEdIt}=)kG$9Gk:|=\8|? Efptp.|p 쭞ȄJӰ+9f6T ɇϞ9K!@&o 2;u@Px+P,"+#O TL͵0?NyEm|QΔaҲ. ֈ:,ϗ<6lP D^T?=|0 S̆@jօXznI>A=y-ژsFUسNO$<_IMӲ>Qy*53W26:@>e쮯8R ႚG.@>JcXۺX xb=.NOwbk>p::}YAK󸌹($m vPv켍trx*P^k7yc:1"홮+1WZ@G!b.ҀaݤS@f6(q^LnQEu%ܣV'iJ6т18rg5!T? NPbu"qq}RZ**}rEiP J6*?e?d1p0@j?4k*츈ͼM7[DB8_,w%ސ <+!NOXZ8eJȁ&(RD%5 LM|&nW44ciuaWmp Jڒ-vH=fK^PQ5rTl9EW(#V<)_i*T-8>%Z2zYpW-,uK 3 if\ \s\ JQ\xxZi M@VǨӉK_ زh~8C[- wDInq 43efgmc%̓tO\3Yp if`?h) 1媫&5hGn@Z4Un-m`471&F-fKs\ПjoNmUxfl2~α7X]7*E-^CdUQHם)_RW;٬]6E wİD.>AKG4"7nܷ$'ЊG#AFN"h{_"M0(um=ST<94꧄zYed1}[a~w6I$uF -Zm!(2S7=_ryJA0Ir*Ă*oNfy]mG=Ǽg._"=•H1%W¨<8xYF̼?SGPiyS,Tް6T 8$YH2G}K kwnfV8r+&:P`| A4 |?R toF*b\Øit㉭, }s~J)5Y{2@&tBM`vtg4m PS jp (5T@_IOOOҫu_?1O,ǽM*nҋpO6iD1G[{Qk,80OHm5G2AA{ݏt:Nf?a0[ZDY,~kVegXE¾T.? V<&+Lf4UP s40'կSCO@⤃p`T?_NBh`q ^FuN7WA9vM`0\Xz^$>(z G}i 4(w= g~Az<}*Ȥ!Ld;̠DլgsOX}q3 s]Mҹ&[7}zOUUo L8A-j^G ȝm$\ aֳ@mݷдZč#В,9}(M3 Eԙ6yX0*T,c?u?dELo mqvȉf|"J 2pj%nF*蒖s]u{H<@qR()I%acM9m;ߒ$Ti ff"}LZC|=<#S@n{į3Mxs*HT{Ys봯P_7-BE.PUӥUsVy95~i::,Sg cr99e /u BuE۫ᛣ"#s@wP8!hM`N)7p7 0j=kX5[6JVh?!3CVTh/e Pd*ow.z u"|"}U1NҦ1~@`8.l_qj v}`:VPt':+c1]귃R݌%th/r/^?WakM D7YҰ"0s0ǞaM8[v?~LϵjlJ{a=0u4 |Ms*rwT1fgkLW@EW|BoK MӀp9&ʵ;亽:Z9}߄~D uj\9(B#~ \hI&)d(>$s*cɩ|+^Og΍`޳mP_nj?jyE~ѵ,J5qEWd!^aS\9s{z5y{siyГ}#J琯 sm Sgv*'\7(זdvy`IZCkL!͝@UǮ 8~&ݚs(l&o]47W`RL8IQÛhgw3E_ Iᾑ̉И/N*Ss3ӥ#-E;\F2Jre}=$.yDDώ|-~S(STTX,:lҜDOX}ɒEi(̏H?A28-Efsc >y2`!DZ!9W6M 2 Ҁ]A;%*rL8{Rƭ8,jjPٯp ۓ%I֟-y${nbLxH.Ju!\Hż])z!$ᏨaֳfF8eUܲ^Pkn2{5o˛DFG=!* M&tDSɄ (T09lguw.%Eqp|cV6_%&FOyn4_-^UQs wvªT \( ?me4bB@7-OOK`߿mT5]}xO]kWϊ$B5ԂB b2rCmw;MVi Qm&}в`^Bf+S#_yWy0 ]F>l@Xd6V#NW6FF]utF4;ֺPC0ġ;uZ{|St׭lT?=`>c-!%ŸGqyEe[Jϻ㏦tsq0Λ躜%}?AS%)cm_=l4!Jor?ד9oF|vT_uQK `O1z(pFS ;_EBib{ЅƩ3ˣQL8Շhx蕼s0*4h.^/YyQg?=Ƃ|nKv k o| :͢Z˨K*e'A Rꆽ~u638\/݉MW0]♂zcsslLCg M6@ԥoۑͨ* KuL?Q>M%VSa1).Yh<]䁐)];?sZz;{CGV'l+tKIKyiv^"9mzv"l(N,bg7-+Kn@:%2zU]Z8j;$=X4xZ5e1fu`ܦCjʀmEQ){Yܜ%ov_}d9=?]:&C,lCpe8{.ov_'Xol[C̢0+i' BP 9V>{eE8F+al| \l ɿgM]a.Cbںbq^}7Ij\@rCl]7bzv΁)K;>-`ICWAK^fv\KG?jMcR]I_N(ץR"xƬQĴn,B}R7g ci7YI릤G*l3(Jxʆ"X x0?2dJ*xD͝5jo_`ÙG#Mgwfӊt4f xaq>՟~&#ޚ&r,?fQjCY =A*ߑDQYREEHI|huYm);|84ik%Pd>%>bKLY `|*$g.!<"V/+V1k7vU1ٱr%j̅=74M]poj&4ʜۄMj A7 Pm WֻGae'8P=ƳQ( +0<"GeW[R)Cr`/L.$(fo>۟6 b瑖ҌQ3Ok 'Z-il QMPzd=2뗁zECxۅQ/O,[&(I{< sMZ,9? X^ZvnCJ<|P|Ĭyjиَ1 l5"^!l3p9]Q >Hkc9* I)ckF.޽$>{7E_.bjs?>R%g6[6UZ?0oq_UkeWǥM м!cn|8khWREDf2fͨπtcNIȹn%<"RWܐrx`gϙv2z> = {Ȉ:ƕqZm97v=e dwyejF#9R|q ص)Pͼg#|4,dH4C0:D^B @(OVȡe'hkImj C`g:$fMj2Zvb:V"թ[EXL=L)3/> Lt :GyΥ(ӍW_$m ٢lq꿿[i9WF&Aj* Vz {#::Q85hL]`3mY4w "vd'L(M'=LUcGرǠǶkY `l޻K/cŖF*hxOOF1Q$N_ecn>>(J[z,BVhW%#kMH2i< -8ND,'xB7u->m/MI.9ga,Q 7Ts݅h3])lpf2c/n Li D>L/E4dvSDr/a@hL@{a|a H&*f xcZM%x6<^*/ؽb=![Xnr 4<58LVpT ~ؓ> xZ|o=UXDF6"%G5-VH"rcA".0 A@[I3Ϙ|=^kPR&ʨ(S!n=b=K'#FkB59q@.e-ƈ(B~l9=P>&|֭z`Ćv`VwvYŋv[uq.Sq$ɷUob!d,i430^U+ VG DI|_EEXPV?H/!(A0"y&bfEd 'i8_09Ξ&![$HzH(4 ?hsOe$!?7cc?r7媨m2@ 2dgϸL PqIvTK3au=bR.M6x vA5+E![9&!gY̐UHfE: {wbjF& #Dʧ}>o2B!,E2: OƗʮ{ _lfu7\If9ފyha7؊n;b]S0Լ{.t=Io ^+ U_ mklaZeL?t3G]㴦y)_d5B /tCs3udMl/;MpLϙ=b}'jMLu0_Kap)U+([9}R.uLN%K>!2"d4AB| =b@V}GUrN.x\ azV&WusV%U ]SXC¢i?uEXUﲒӭ//>@O`B5Tu3\N6 55U1Cj6LFf=(S\ ?rVH*u"c2cyehn lV I@|Ēe/@Yjnֆkŵ'~/|*p:Q{/c ;ǸT!tNws/U6uzG#\uθe?ΛݨȒg'@j{t2):ԋ2] /.Z_⓵U]wOFb[v.FIP}\q"WwLP%ڃΏ*MifX Ae~AXC]zl׃]e?0 /pPA@ NWhOיiKH;-);1L|GO0UoWLFwju. ۍ(T@'}Q@-\Js0cL`>bz/HoQ8]"& YFhs+[+V ~94G@"΁\&lMtq1$LlsC]yhì8ӅN7jM*꽑~3[dvUdО,T>>X `cMiե\ Nhnj`ew!ْ ӵX1i*=[cm"0Pɴ0R]oxMy$00hTw"^e̴v'hOԴ <ɼ˴bYS柮,v pSj0!]J~νR4iAR".&W*O)߀ρu?ZK\{c[3T(fGL%(;OֱE%XerY)pw9j,!!bjCs,BGw;6eyc ^aUPPb0cER*x.bޱ3,6L n7JFs_(1.ԍ4GEZv!M7]~Nj`WC gboKؐU; *!街tһd+lrxp]BǾw`'?U#Yb!/[Ap/5n#>sڶy͸@gx,k?E]9zUM˝J̴VqB>hG󾪹~ 1fR:}^+ں'ûB7PZqY8B&Z߉iyNL|ٜ^*lcpЇԝihQ ʏvٚblSֿٺzw"lK 0&i#Gq v@F}{ҝNԃ|[mSM ډ1.?E<^eA&t]莗*h4V~CdKiiĬdl>מBv n ~q~؁)i K& a~[\:T&V9uKeKQ4⻎EX-&9Biб)2bd /rCS C`k2%oBYx\dIgcREcMهm@7Xs U{U[;G6vZJ&x V%]p 71 %pcuED,^Q [4FDܗ ߼Xn`b enB7K=r)ql.{!;(zy&2-7I`̱xҨz㦪şZ.("ȃΌC:&)h)(D *=TѽQ Jm-ѮzW_";hCy| A%fI3rPSzMJ3l)7–ΒiFPnv"E@بWM@A>hjZ`)ujUp.@@&TR+N&N籱Ɖ^| y1`)$yɉrF|ߦfUS$Wa/UQ&0)|)l9Px& 'BG8;<䑔ˠ -jFw#]F7A1lAO[c_Cv}SGuꈌx-M$Rߒ޴'cFK^ s;% @z`I o铕΋mY?Qke)dt7;bI_{ݳ{,ӯ~j@\5/k% @3,c+jTs_-@I& tWz4eK8Rx8p9si@1˩X|%?TۗT-o\fw8)T{b-!24ꑯ,bW qDk=Ť, Wx=dS!G6V4 zf4_H`O?*b,ôY<./Sȳle$w\@7كg$8`Yl-3T˜۷@ۘ\g! ʵ­9 XlE)*ڠ~E}r :jk uj<A"\O7Q[=*%4ݱ.&fE9M '"pk-[.#*(4 `؝TiB>~f=rsG:sЋCȷLW5 U}z1wBbI B`lNԑh;Dȵ@$1RO>LeHƃG99)Բ?ݢJ/vZrFN[%T&JȁwBIr;t@Cw<_ŧ"IaMmq]̸'U,:hy2#m!F2@Q6*eˏG\ '1SD?Y..܊~q^98j~#Sm76wUs36#-Tt_I7Ÿ;Ÿ߹>"+,k$Xh$~9:rlFj2ѶҦMZ .M +#T/4Fcʐ^D"uFE4yCPvJnqWV6bot#FXLuogiZ)W@}^ŶP!t^UaqXqynKKu 7.W둕Mis,M'*} u@rb]v @nM"樉E뒰(AJ~}#a=6Vˌ%jp5lc -!&ѫp"m6?6L{;tHڋiO?qbCG;&!&+:҆@6]]KR f~LWLmp@ fhDJ{Ɓ aXg@khPp.WeiܟJI`1 ؐ#F5' ^/)a\gv<)L[xES)Vv\;'GPm cVgi ,hO}{so½cnzsRe?ֳE/Tw E4/}8CaH2LSl@%@[ 7 +0^I˃_۠ҏBM`Y}.lm S׻.n8uMC~<3kGG0y:FN=SK5v~YC4074wXP`#ON~C>}k|/iЋ3Awq<ӑ<ٔ/ UnYł!}QUUMh\~fk|7Rk_?ZD^ 2}!l  ~|\_~@|u5b BP]qr& h)lK;a^yKGnnK'C)[/Yג(ZoEy%m% jJq1,9#$ ERc7҇+g m'hmSt%,HX#Ycw 7XnX(s^R7]G}?%@1nEIl1 J4.4HXad>=ўd)H\:'TL`EKAٳ!چ4V5?ɴ Nl~e{$M'Pһd|nQJ[vrmb{|7%ΫTgԉoi&R x?p8x 4VOږ^d*OM MD8v%S @֑9B\[`I),93oN*)LsĺQx=3RfwpLlLjF7[c]sWhn 'n:>e"9>o%tW'f(|hщYG0"k)hO VM. {=h!KģrW i\T1S;l 3]d&|RYa`oO{]K?%Hѹ+VVA@ںQhcu<}Pl7Vʡ|[Lv̛@ɤ< 4wcaFGt_]CZND/}57ͫtEpnˆDKKϘ>ZO!_k򬳸l]،$;od %Mv;MD*=Qn 1V($쇝ᝋ}[۽h_,XgkUB@˹1b G'ѠQ7@hk[9Ӑۋ̍F\DsHT:| b0@eLuQ_g-Iл'aH+aiO% A a҈+$j6 / ^ σa^{zĸ$IfNS^ &;+8S q&eS,A R(:7IǠ@4%,&o/6.S]Ԉ o U70ye)}^m ؁k#Bz!&+J6ЍN[#Px+%&lyCTר"f6*C(58-r5 Μ>>wN('v]d@+v/q+/:nV !ŽoPQ@n tML !m}gPJ$w;Z78 mu /~LMFL\bzI^=G('}Th@A"·C?zp@fjFLonrVvtPv(`Ɨb,Wj]]ow{SFs#}סv+S󑷳QRo5V+)OvEpσw{A)qAd<%Es8^Lw,ZVߣ#{vTLn)9 P',tu1f)@[b"0߶%:#9]\m?) ٵ l&q):_e-2@pOpʝx竤L5vibiA&ZLTn7\z3TjzmGTM`EfXCgu_^y@GZL޵DiŬQ. gE#A}?h<}9{rΆtO &p7EBn4Wd*PHVy,c| <\9V,x(3u#hRxnqI M\YxA(kjPeJQUG;TՐ,sYmyog v sx<~ͫDox96 u ɹPD RЦPQk~GNXk=1N2|ΧÏ_PGpN Cu;rj'z`2nfu,3/|2)Uk C3ʎ}'X]1 9Ko(Զ9rfaU|ե #@!,$9A&Z(b{եIm#L- XȏzTU{kn.dB<#Ugg9ٹEקխJ C4=❋F; ~ykĥ>qOGPNnyr=g;,DB˒tC7mfF̗*,Ww!]./U=,8yS%CO!;~6߲g4瀗O!9"2)z9 -=&W>EQ 2~0T>NT-#8}抱NDkC"3|_n"]t ιdJJ6#ީ{I`JϹ <KJ !PT!8Y~j:we7fM/:Yov 7fɦDX'qlfx">/*tLtdНX֤螐: ?₁;YY<oa@_H?NO7V~L: ]7Tg&;_`DBDtH@,>;q{+W5ͿWghnb)8 )y/gxs ϶܎dqԁT=;{Ю`"[a1&ǧppat7o_b6X}M̠8(-Vd p=1iIn\ڸf"vᬦ7MW!a97@dόny~:r Y;XgۦYy5MRW5C[~4䁞&i$"Mhn 7~חt,P>6McFQU_7(E ȴ{=Q=췸ӭ|ABZy9+3-qFYAmbPMV*x"u0ʳ?Nm&mŸ*Ig Yb ԋw]2?BiT^ۍ>8cƾKl%FtbmOSoBȵH&<澝 T e9}ARDG* VAܜ/mTVnX7) 4/ +8/)LO_<:) WcLzAm *ţL8 [qI)8$7Ոgf ~^WǨM@[TP]iD"ZUNG|xDYsA\$w٤ M6Яu OO&z)wBz+pIӲ=/JKZ*[G+͕J poERVZzZ`vq7V2?ot^PXEK sSy!zaߏlu=Aˠp6/׹.$.6n%DzYF$˧w3 /ߨӢҵ4.cPNOqFƿ29MXLE7O!lPӱ 9r;җ*d+?Skm䳀ΪqeAej?gS?ct+%Zfɇ[k*As a&~؏Pg\0L[. @B<ތ#WZdxHD,g*zpA.)"pA2 i|JqR)ɹ\\bp/VQ}'!Ҥ 0=B7G<Цo:g ]ZŃPۿAoMtX " ^v{U8@%@=m?b)ہ#R>Mҧ PnBYb\fa -qG୑o8ds[|O^Rw %^SdJI΋ _o! mT֓onͣvo@6i4HQ6ٔ1pLNm4l`1JAWIYR.z[]ԘWNKZ c'+pZ '5KgLgp&AXLv}F .,AI^h[*gI=&Q.$gVM b S6˶ZrYvp6E6jȃ7AU=B+p}8 Rpl~d*Ǐ PN3- y9dp4>s7"![@-ω9 lP[ᓑ/D LôP__&+7!0"TvbԿ_9[򝍿l WGMůA6-q:TtEcympsz@?.z?K\vk;Z'4a>rӪ-wPjc-s*d^F-*Noe=7 %֥M7U+;#vsz_L ?(J䀓@8ҹUB9fK5H'kcА& ;G.'lei:6 *֠1Xͨ@0`1X%}ҮyQJY%8Ze<^iHCe&vD2b*֟m+ ]I݈)jܩUZ~IG<2g ڣԯg?߳{T/7'2iÜ{W pu_0qbޝ7V>(_oaF~>Hib$q@@ kL]ΊFטf2y)PH$9o!eP2Ȋ"9\Ӹ)YZP" #*΀]I8}+{@ L IhЮXx &XE'jԒC.'%MQ)k># IFRGN%UܭZ/i䍄zHm6$l=\%Ч4kjp]!zt"WO & vp SF.*`l0-P<߸&ISR!o=0 8YVttm}{'rWG pMD/SY dr#8hBUo! H``dBY/Y!)2s;ٲۃj!w-LHI1(t>$,,򡅕,cОݔ1$j16/u86;g%D:-rDGZxPv.^, Iѹ\]HNiA܍'5̋«Xkvf4n#5Cb Yq.aحGJ}肈ډoCYà’a8w6>*m@ݚ 5⛫³p!RV]J@͎̪7@[VF)ݑ/oncɡK)kLώA4%W-J4 2et  -m"J_k*Yޝ8<"/b:;3TY3P\S|x3ܐ4g2x9hBz 1|.&VCk$sf\eޤFIB9Z)q;Qޡ޸L]LzLȗ JNC/-s+L\^й'M*ղD 5Uo C3Hlxc>FՁЛBfhլF'g;O[[ HEy4Tj2Ub]rKahVCL;m}+Ug6ҧ[I)SlH0t5gOBSG ԃ%3c&D$|(ʟw rMu#0tt/kSDi!yBCY,1G_%kXiߑK=LrahXfĝ34_73$3G0s-#Pz -JX$*,(DB68LDv̆ɇcdDgTaL辳2Fn|e9f$~N#S Y^Y!:HBuJt-G[C>rKn;Umfz:xY ;'{Tک 7lG)gT0!]>|aڢ:59.Ģwl*@%CnA)'9 ;c]"`帔VE}٨FZ͓ w Fe2jOA\+Tpov$Hu/Cl!Y%pŤ䍣vv;^2=4u.k5Rh7"8N xtܚtmN"R4x1,rI')JHcN4Ax ⯵yi"FU~OYP;6 (uqR =q^=iӒ@BM ^۸ R߁u6(@ʁKmSR{m`nvѭ vչ IϰǶOԇ|cJ`R h֕I]GH±Bw/VLj-4ҘKZW}cl#ͻ/3n uNN3rDo}+jP)|Rk6&R,(B ЮȄ_+Jbn|^񇿯](OujhTIv،*&SK! `C{ɶ'09954zgHxx'ߙH}8fAf!w/@"z%;aq?1P0SZZ#VTDuw @49Xk2{M>DL1}L+ zV!-MoY"UШ8`` |)0SDC[u~{ ,Àg/ 욶a/]H3BR KbpaŀC4FbA'߻![̈́Α;rK85L.e *]`r[~3CNи0%H:!CGB@UXx09#p'SF% LRzkiN@'vxt]⬆X@aۯOj,?Og #+ܝd9 6C1Bpqh:mC\c𓒥:wLKM w@yʟ \]I }f^uxҧ<:.a~Z?T@vVc AM3&.D3 8{dSU} a&ѭOJ~lţ?|U֫z`PAg4z΋:,%ͮYu^4/'ռ]y<#,^g'  s E"TX+sa1~p]2 n| _.%ġyF\VʮUhK&'= BX 3;.zB*e`/$/_$o)5b˥( փEi|F%䑪 :8[#u5 <700R=Wz[n.mx)3aSt.KMJRmZe)v/<W2#_KS_{t MV7ZDv |k/JQ:?i>A0jVEIzRދJ{5qZjZ8%9uHt/p}J[2 1 !/cGE@я 4g[~ : 3 M9A}!7S -#])OW(ܟlvsGnHkߺtb"?L{& n=u}vb*jm,m&Lֵ,Lqiv$ d {< ttdgrF}`Eʛ_ ;%X*Xf(YLq ;?<$Mf#} Rrt΍{~]j۷# f fɀٺ:CdC0ˢI' F~]+|;ѻe8Gfa6+q3~uͮj#hn4Y,8Ch[b'< tt3S*J§EQoD;7 'JV!_Pjmf UIjK} et`| zXrGkՏyIsG]zˢG䛻vRM 1rh<y!]*6q8ô_(9=Coʘre 7r;Rn9 q]gòISJmk茐(& !) ;p&""9qJʟUk*1N >ɀ~G@2`A ;Ww4jF`¶kNmrJM8aRh,0@ǟxe|: 64v0V(GE%jPbV7x7,w$fL+{]o=]mx.LuON2o"P bСUI K&xwN!q٥cT@Ƙ3y_2d[hQIAw NJ<C/.6n?bD<_c'x,U)m%/.ķ(&ԻqKw ? ⬜,3Z߸j%45 UnהoQ;KLx30<4jea<$ŨE#mOQIP*G Rg,Oe}+_R/2β@M2t~[mH 0$@1Ԋq+;" Z`'N?52fPjbG7>Rg5Ǡu g9B OTZ{$جW2b]d^:O?*2jk63;c%\m47QVC$̽6{ld՛(4@x%t^.j0~ŌF!asuP~R\1H_)S7[&BB5Uk3* rc]oGkQ^pȤMCb{.3S N>Ώ;]!+6(nw@@]oPBO8aT*JV40Dǘ6 '˂zl^w\GASrFXC汧6me Chp\sUSj_!c=.3f!no7cn`%]#⬪HdoÀi:-Fp]%<}D v76쫛80u}D5ZI>ˁKV~d \A/sjȋz"n/[ZSA󴽘G+8\:m!xq #>n?USG|˫{;M&LhmyqRw8y5ҬY<~ e!ۯdC&2t )^n.`g(>d97uo(-͌Z>+ @Ol|+wݐ)V=&[%ϲʌx̫Zd8'&MM zN.?n+zNCh| IxyՁ kDz4BȤ+vL0#ӥLt['аvr[E4$m-+tேGjzSBn$6;+vn?X[e} , Rɫz)z^mQ䖸;yM',{p[4d%%{yۡ\AW$fk|4D^r`~c8X^X_98%dbW[Q$!u)b@J%ך#p:(9@y+s]]^A;6c;d#//l7y4pgv-D0۽GL 2UO}{q,z,OeNjݹ12 п@R }[!@?KYKQerF_Rq"w4O8cP'+ȶ=4H,y$yί>ɍQyk{q *@[TQV߭vrVCz~zw vf $w$WD* $NogfˮLS|7tذN@7zXVWGfgh/ZА]c/x krRJ}݁ WIE^QD~fՁsv`(V>(TOT̪$ jb9G'Ď92D4P*g*kxԑ2;8G /Rk 1Ub!aly1t`3 fL#$G=HtY}PX>x>/6g"r4!*~ ֣!Bi#y/ wjKO3W$)@&?L[݅Odgks]f .@o9U>]v{cYq̢϶.D؂_ygS6iC˺MrЈmzfT5^ :mGc \͐/@ҘRKbSv}@9 $\* ;E} Ѣl`5%WQȲxfibˀ]F4{WTz͒Q zE.` >C֍s c3߉j|['1JgbYE3n׏Z }wVUMx=XhG-RbT3DY'.+Bjo\1ÄӞ$m@q̋cQ0`䶥|ʁ zw4TD髭J6^<%[ư$CXRؘÈZKOiCP'\Uޤxh"ZԣSbgXzl8j3@n"Ol2M(eq!n߲~o£O.YvtJww|!֋/ SF8 ]@G첢#X[ߋ[J.bK3˽'7vΐzpH(iۡD>Ahա12*hUX<ȑWMj +vi]%h LVpy%.@~ )Ӵ707P`"2gэYh!YU΋RQ]^0݁i4CӠL`[e}8I nRig.g DIQb%\H!C0V 󘲕Ln"o4\wtbvV30 .Q1ґ1vibȐiJ>=5#C\s&֧s]k.xT72>~K +˜Zƾ?IVuXfnF}Q)G{T>)hN=X##:AT0E(U㌓NOdewoPS}EouIo9m vE?%|֩;+|֢DsǗqЉ8Qp /bL#V =229LWJjz?i %=X2Xҿ5X(7Xt TN,!{Xj}J%22bli 1;Orf+ppmګ"A1 푨q0DqAJl7JT7B #ssAf<Rj5YqS^rԋ~\m#e|Kѝ@FO`5b9yKy0-=FiVx}"hc9*@xjB3Ȅ|GfјGhvOtT{ 4f9d@CI: ]Kg>zCPj Ȟ2K3Xz0{Z+cB+DT<B ߗ]S!̯) fIFUAEUa]F "CaiIИR=C%ApM( 8 >FdI2]hBG.> .e+];芨a٦.߶DBPC,BQrNf  ZgU됪[njUB5I6Ō$:E d,+pacz3 f*ǝ:wTT=mGv5sF2~>BmN4#aؽvɀVﱼډQǓqߦ+ 1PurrFʩ Hf፜#VX>b~깐n~_FTF6(, {%} _(l64$z^4ct,UMhsYT4|mv])2mQ%d"o61j]ض` Ě' h:>v2R;ܗ` x8T' 5~/[cWs؋ W@\ypG#eOlekC'hsPqtq(Iᢰ+_D}}}u赕ғ-.\mC3-w JYУFn,(>~sMjk"(:>LaA0>X!Θb:F uҎ#Ƈқ`ɞC@u%&`d a1-KsiZxz*xq(R{J l+VZ4屨y> )APaNvlB,ilgN)m#OJ@= 7c3!mkD CDVyzHg3bvXN曌ɪ/QL/'2<0ѽ?pkAha"-%能rorh0c~cf׶vtfܩA[l&5 v2]'&>=_z7 YKb.%J:DO.9o b&hi HJedg X\H'?cRzc;L fi@:@ybgW:) "0pO÷Xܱ$b'HUwKcy:, !pa#xPx=X˻Jᗠ8yk5!X\6ϪsWԾO{g7mZ u6 k-+'Svaר#3c㩽Ab~;y\f0ӮT$GUiʙ[@IS&6)OӶ±׾%Ij>nmH(o 袪 W߰F3u VD-d[w&VR{ŲcpO l#j݋&¥1ߴ7m<-Y G@.EfE =2RO ULӫC'3ٯA3,[ܯRY$4!6S~<7Hr6fÎdLH-"++HP{@[aȾ#qx &'SbA3&^4%jAܵxAw fu$P8Ei1bZj՘Zc!Qsed2,hLk} #ٗg0:E eg#zFSvOo&|`^t=d_GPley67HlQF jӧOP&!fGGڳRZ?bxI4Q"<#%hő7SPu(^F.aى ߟ"|f_YLyG%5 \vg!c<^HK?r.4 92:@s^]}n䬅\{<8?P,+ O:'~uX]r ķ8|pukr)_uīMkSp,s>knqw* ƙF/=%_9SgȔԍ "k\X~u%!EjeCP UE&\B]w5 /:sC>8`<u!khV̙U+TN`(OdQׯehH-9Z= j }R#551d  +cmR42~2R @Dd2zf- (;!BW[3oLAvla Nh8˲5󀤦깗{z,z?+l-=ηa2A@p3G/Jw%v'(0~RC4Un&n`ظ.MW.Pj*uxͦLN^tmeKyk tyoɭ`oe1eC֜""OPF˂7AHz&zD_m 8a]ռSӐi]vx׈#Zd Am8rXpϞv| œjg4c+լ@}\`pΣ#ݑ27}swۻ:=d7"] V"O;*>}IC-/Ru_,~m ϾcB UOeV]ҩ9 "$~C7OC"".s`Zޢp)FLZ߈pe:~h9}i|u2Tj7BlV,`5EͶ݁ ^5mY^c9`%oEu$2BUTC~t_h\- B F<Z-,֚0@PpM`x Q i}6mpXa! QNToy2=+8`{-zrEr.&11>9(Dx "QcqP=9KZJG $[^Z˭vc%|HK#[^Dի F-*"HK'le+{ `<(^ u1 sťGR}csp2:D31+wnC9+MW NmhiXt$5UV+5έg,]`5"b J sϣ&Sa# <|fiu l_<Yc(.7 L#lO Wk;\bV MtMX8haڝc3X&6h7pܵ-j8)Drpvo=JE.cM})(uM}통]Ы&w#>#I@Zd ҩ-ysU­M,I9U զ|EE.Ã3! +3'VV3\ /wX" ?jH/[_mOnf| +4:Sͧ-V:_⬠{AS{o|fϯt<#M╖ 7,8$W  PT4zCwkL}Cwl2ΞDa%[C{_R2Zr{9Ɛ Y1@3D[AkAŢdŠf޸vVw*S>6@B";QN'zK&Lɟ.]qYu]:G%|/ \&7owåVŭ4DӐr V#or;&RPր/8+s䳁DHӛTx2Z@}MB*ӺTvP ]@2l̨@ w-wsdgi}'P'0E^ї[-b[,о+|a/Ϗo>`{Dș9{!OֿGX9!n ~i"*xz75mU$|pO.A43x)W ?&oBU%HE p&q"t:&C'kBFhs^̗nf{VD2!%Pd/ v1w1u. ǔt1R)xQF^ 1wTOA$V!:ҏ,q~5;m]rQ_alX̠~Elҡw6~>="&9u#o Xʼ{<WI8?%HL|M@,?Iy&ȡt^)'<_Elb6+ĒsB:KVblcy][֞i 5Pϲ!hc7|z'3Vn='R9]9NЇ Q>uz43״5-rA7[=;яpf_HWiuDHTihL_@L?Wd}otFs0n'$'0`r,Ρ %2l+lvwa+bjOQd_h^u` w̃j:z3rbk, F5})%5qUÅ%JʢYXq5]|`-sm)_RC(3#l6 y}J'%ه}tu4|3I&񥽎@;1&HrlOl CSjo7Lb"Ԕh*ZtI'zvjwdܶZ~jF/nB+,u=(z$L,\ Hg"E/W" ag[ Q n/OIiѢ&̒qq"R=#gX{M4F-P $׉z2SH0̄i4d M5]n֗40غDsUqyʹfzm|]/aio ,.K?sY 9S&n#Ʊbh:kCӤ4dAdE3%YK#Vs^˜ hv^4gHr+L5 gz@>v|}-%XPE'ݝn.2j={J к䗆eS 1kds;IUu W AIS%S":cU/#e^_BB8h5)TI"Վm A`4t_h&أϚxzK[Yd {ǡ:|,o`66-1ЍAJV1RVB҂CQ&{_N|e +R}] SHR]Q76-ѻm؀AS!h Ң,B+vPkà+*n!YJ7N5]f 8S86y#gܠĭ:bGwI'\wN|/Ra h52$<Eqctpyh0#>bPme$@^sY*pG9t |b5^2~&Qq ذJ}*8WJB/[Le7BDלaV ɲ=X}')eIgZ|28R?3Ρ/*N0Y Hָ-vM> J"FFD_uJӹ2px>(Yc V 2.$gy3fGkr~8Qy͍r "/A D]Wk?oEm X71: o/.۔1Q껌C-Ϣv i ó{ACFxT_{niՐH]\WQcub|e۠AHyg Lm,${l4dn$tb(s]Q#T8"}1Xrk*'%$ zr!25qΙZtW[n$|;?7`q- 3o K-mr+xS]m ؿ|E\q'0c=zw _TL/'cTZzϥlnX&.hVF~/3gW>E: #HY+c [✓$6ֺҺowG]>uoԗǖ*>C~V2Ō1s W\h/l9 |.r5`5p[bJ,B<ʙ]:ΊFd7㯪cY-ugX -+R^~`}\Zrl~T^N=1P;5ǟh@B;d[͜Z<>^Rݻ>epaXt*R$#*FXˠ>_u3f1/P`v!``_E&xD{c Z{9jT0;!2l0)󏛴~1"LF^2:,,uT<%Ӭ Si@o&M (r3Nܰ%O)1T(*fUv7&7 2ӑ>vjӄsZ@J~SHpIY &qe3B}d HRN/jӺ6i耘*$̪gMMUZG9fNq>>@5naR)EVmbQ[7۩/c-I'NJSitrϘ*.UP$:k{$SPRܕƙۂEX5La]ȑEl_??ftOJC$xV#جg C lk '%5szGo{j?-sTcy~^UVÕeM,M _jo.SHa=,5&z(LFߐ 1cZc-8Fs_ WteoxRs0ѽ'#ں~\@>mkD^Z+1ܯՀzUZ c6.$*`يV#;XyA\y(apIf#l psZDAn2H[$ВjmxΏQ"vluP߂~[ ⶺ;}Y@n-g, &rs e >KB#sk38K%*&fNdyXٔyi@} >1^CK~U)LԐ?6L ΏP'ȗ@b>͉Oh.Q DD` R!lxu\n@jaqL1vmIKQ|Sj mnZ:pS@>Hs}jw;"C̢$IfnHqImyD3ue0h?k0^iFp/&?K49K踷X]e r2|ucЮ[JЁR|{7$adh IE٘G <(U ,OW[ͯ !|'-b7a6ύ!هGjn ߹Vg(g f8sZU+KoI\;i`"I0c$b|Hh_.kdO @*aW#AA4[G,0[2EHFg,Tk/k5k^` >*&V@=G{ț5a\~:x16a0Dx(}frw)ճ*Ll>a6X‰'0.Mr)dݿ WD'd0"Ȃ}a 2"U#">N7uEr ,@xSV+TE5z%JEε<Oz y3W1t8z{M*o3y *E_CR^^돸"hU65hQwKkN}Ƿr&%JC mks0g# #J&&b:D.jEQƠnqEYR ${tBKr0`zt*0߯+L?AjqRMOU5Ke?"Bz{T NCҞ𪺄=1t^@M]1GjѪ5#o l[#&b$,5UA;րvpkg` a7E&,SaE^f a1\,x\*#bG#d3U5'WLDξ"F^A8ܳxUfa!3 @cQ& o ):)мU j1qi{KJa_NJf:HJ+5O+:pv-ʩI!یThN yM)+VD5ڛu!/c?kA^[9G>u@zcK9CpJ7V|ߪFp#MQ|ݱMQ<0,тN."BgvBS'{#/ aNBA$f:uQQK˼B7n7p@5rRMT(w{ݙOQE:}cb#2TSt}lU#u$5fh8d@/i#@ 0 Q2 w^_*%L?Y{c5c*_Rk/.w 'Օyb-&\ݧ"-"9B$8_CRl&JkHZmVE0aGz՞' 3#9xt!~/ jC;]pŸX6ayEϥg:!aL8Dˆ9Cb5 2oN{Kpf<ޝUj8K?Y֨.%hy"NJYThmIt>I ^w<Zhr5iox.EN#_=L~^ 8Bf}ROy JꇊMݙ)NjؾLmL _.o4+t!]^(v*s&9'2nsndrG8n/A5`am[ =s}*G[CBc¨c:CXx$0A" i8^N~6W9(:^/Rde䶧:z'TIa oHٷ+BGIaS$*D\)Fsw 1-"p3lG\#„{EmO‡XlMl7mm#"b 1G@-Ħ( "S4!Cj/81Q Fuwbb<$Wԑ}_+a<0XK9m $ $}`rbh2Ã@ZP8@QplP"n K*{'*)%cꪕ iAfh5TCq:$yM.-|ܧ;oāu,H0ڍEacF |gSϦeoFqGTVHlV SQǍ}ې:T>,:a1>^\7v;3'1d'€ L] IS[4V5N3q_|InG#U~n IZ Ƕ.DRZॵK bw۷ {yh\>hn[qWH:uJ̠:vy?;UQ[nH(vgڧ4t{i:'lԔCN3Qٕ7u3\?i6BѤ;eW{:I(_pHT;rGWcն;^&5N$g#ِ͉{{'sX,H*Όhngҿg>0pg4]vA:m?<sJȿFO<63<3p;&b5AF7(ge@(F ܳ =o!Q4 C>[%gp[`k<华Vr6'yZ^&TeШM7~t?DZmPHZC2/?\"dEn~Wk/Vt !\~a9]RכHdPOd-rbu.ŝSfQŊ^Rkև6FLAyXH0?9$@B=XDf2'ސiK},&432$KFCdٞPFSe2)' 7>? rzNA@-ӕ@֛҉{P^5>1G$*7z@7KrcQP@Z(U!K䎖dv=~,2{0DFPJt ؃]G= ˖HW8jR_܈%JϺAD\/S.;y} 4 3f6q}88iR}&JŒ(,o?P(7+,H+X rѴ[{ET kW$%ֳ[`&$& B%Q0:yj`!+}[W4֦+2&f7J/igy̏t<&an1>W8gːvt(L>Xpb% } cI Qn:t}TbH&VT4p"rsF]R,0.Tإ\+#U~kShU\ݨyKw+^o= vz:g-Vz1%= <՟:%\Gg&O~JĸrGk_[6>5YV8"'Y{լ>6%0wB c2Rƻ_ QqYiNxaS0gR ыby%"<̠GۧWTeXH)Ç W-j e1ov7Cv^4s^cUJ΅=H>) 3&C/W`DN|pvT?҆Dc/Oڻf"Mg߻O`Gߓ\aPeNɜBA!^<!"1D0%E]04Ο2oy PKJMQe~g(2л(^2|8\6yᧃʮ,_jSKW[ {n ' 74^W]Sa/)6"/@2hGCZ~nD\<]?/$=kB "~S?KWcM\sW }~SBxC303Ǖ%R^Sy_f_82ä4'xL uuƨ-ef#y9oԶ"A)fRM̒o8?M VH&2:5]W2cL]oo6ln^qvS_iӋD8NU1.݈8C=ս=P*eJ^ux3_rE IkĬ&$Hg@xa0g6 7!Y){:3Һ021*~;Rn;5FSp]tbu?_%EfizN{@ ɯ'Ԭ%-hw ~NRRDž=R\ ;tɤ5l\#D_j"`f杰,u%? 1pp Oƴ`J7 VUL\Kn|7ox(N1wRt=^0,Pk;B3AreYq8L-mcP}frx4aER;i`[UU!&߷x\74ܩB/d_G`*yhOul OihþƣAҚal$$m/_+Kemé6cY,j.`ltb?M `vɾ7qWI$ OTybJKƑe{HB3Qbe[}fߧ.R+%nj-UW~'n^%>89.W l۠;N"s-h$D|th :@_pcJ1&[sg DEVǹŢ<DFAr0߲#?l+XڪY^?c 1H6Wbው5^  ?ჇuuҖbnۅ w]S$xk=i]lbZl4dϚeU1f!sW?;voAvl:a1X&NZE|%OhNy A/#TXvB޲aڈr8z$@tT(S'y A3eS7$Ԍ-\s,L ysF*靿Y_nw /@t[vybЊ?lFbGQAQ|]auN^hp @:ep-0f篋 GMbX`'pۨ4^ZiX(nFD:(O.h;Ș4G+KN*@FraW"kԮ&SX@:jMUd4ӰA$#w?{`ĕVS۸W>S.h^rfÙ3q:B31M(6xq"+æ+$]FPDV8KCk@-TzKk10ơ ;?EYU^<,.,fc7kFCIO`+f[zDYX}Qg{^ʄךd41)Qv9áa{a2 ;q϶^LgEvU_Ӊe>zu[Gjt*ݼpݰ[~<Ïrs1h*, 4z^7h8ADheEֈ_ YS]X5tٕV&mFs_UFg_Snz-e[;e,+;]7hk~L{|s /x^˾bh}SݥX}L0xt=rY|*$ ҅)0zE 6D4<4C0 QYW:3ftKn'1٭"$$"o$n;76 K@X2(<.0fKL@:=BSy;uķ 崜~Oy=d4EcYGiMnjOX ̐&}7Pw$7+0ælŸtn1#S;ܑ┗)fK&wY4=0oz E>[\hkч]ѽsWa4[8DJ?1s.CmDAL>Md$Qvw^-.b H`o:WJRj}(bob 06^\ zɽY;ëD6曳/󂪭ӟ̍ʦbY%(0$dYWF0 '6[Gׂ0~qwwo8_m3It^ Nn8\H i8wTtj#Xt vuhd ڒWb{r!I8Rf @2ZVzE^#?+ ɇ'HbEt.щ\'bbqTof48.)NvstntK~bۑZX>jQi/C> .5Lө;^.0qh ' ҏ_n5yZGb9g/X~ȩn|C*<$R17iT`D]H=4Rי]=p]bzJ}BTM4Kl  F2QN ܮ85%NG $[ו Y4^CUsUqs 0yZiw`6 ܧ^#a#vpk.*Y"޺{_&F"{K(钠Rk%` N:2$JueUoȧز7A]וw|Y nr#ăs;e ޱD1&i^t9Bԙ|q9EƉgjK%PV5w||6*H7BA<x-VOC177Xf%|$qY5Ho"mM"Z;&,'g[|3a) T35*ZVf4ZXiOG۟-/zO2,[xίzL N5*f7{WM/zBU-xĀ>XьdB25-lO-Ji8S;ξaELmq0}்40SnvF{2|ln/.X{ҍ}[B%J1h2~CY kK aDZOJU%\ι Tɸ؜@z٘4--ЉAI[-71Ǿ\,X9xf r Pm8ى>qҏO!{\N<۽wG<)`C^+ CvUXy_}Z@{Cʜ]I]$u#)N'WA$"2Sd]}w)^]'^abu5BXI$Eq_u np[t'f VmGɭN/[>n;t :,47Bd}:PM+=C9q43p|(:j -L7]عs荐EYjpt:hBQnMB􉿂+aR=|5_|]Qhə}nRIlP:Z jU YCs 7{gxvAF T/ r{f]Pa +gZZ)TGգ'6m!tӯ[iyi)GWm釀>kI^m7{7]KB>#.eq<=?LӅ^p@ʖp((i+&aq̚JFqB-'2EH rq[[X3^]oq>DkCrJPq7.s"7q##R,Lc)Xbژ G#|P5uZrճCw\%p D:6~P.9NuGj~5F2 %4H[|q}A167!0Q fb eXoapqThP*KWncST2  (,rvLYĽ9~}N4f,U.W{L!fd YM:-}bx,-}c.4ߓLGgžD9o QM`:4ӏ?33<,zR^[:DwyY*.ó tYyuڬJNJ33C&&l6.eKDak_` 0]0H:! djIfչP&\?{EA\DkJXH㗤%z6usD(VpЗwj8+2eT}{|)e6 +qE dV',ye҂HjTh| $YUѱIJUk[ě%τq(Y K*6V`'a813RKFQ~rIA#LmKI#gVb0\&]`31p >g -Lr!!nJ93%@ns5[]'Y{oOenNewԈ.pMr ִۭ )ꭎ$ c94Y֮::`Q6hZy jHckA)H2Vʰ52_խ%yvn@B-ŒCY [RMMus(Lg+!VӒ%b[Fc*|ǍWߴd?݊4kLhL(!6@nHNIT*,Lr&,}#/[pmqV7>^Y#LfLeiSw--RhIqgN<ݷ߽Ng0J8w(&VIpPCOgD}3">gھߙ0'/YMhD~^s9l:פ>^;"cܗӌ?GP:nmUW+%bu.!bU 7vf&ZOK7ݠwk{ѭ]c+U,#T~V"`f9,a>xb{t]G)iqUr' s]tE:I\148[@=g}=7t& 9wD1{ڱbK"H%x0ZUeZw; 4-u6@#3 Cp59+2Yd&ִw*'0EQl|ʅV ՎH|Wcb,&J}TERv2+J#bbV`65y{MnnZ>/+v 'hb,k锚Kb~5KhNqh| 6 ,1_YX?rḤNq10MS uvtv/\O!C@oS1`[,#0?ݴ7m-M-bxs jF0r\$$;A~Gڐ5[ UL._KC;YrIe@D F܌n8Kb6&t9,K#čmF U=f U4DYp^csECg3,+ 9ѽ ר9 ܳk3B6*a}~մA/OKρi% $9P✦Pn,"?&?C2Q9  6GLg?ھm>kr,Mm|eCkfvQ3 L7u ׼Wd"^",(/W\Xfg;eep;kNJ 8lR0f!d,hbMss'Q)KjΛn7'r =V?iz2I^c ޳c6FEIf1᫈/^a1VTLu Ff%Cc54Ўr9wSގ;_f>4q;Y)uglaSCN5k?#H`;408D̎\o1dnU_((rl^#fƠMX=]1-|ԍb t7hU5u5:Kp# 3G-aE */6z.g|7RǴFucV.\N p>]z ^)]D ;1!7JUV;RJpw`[+QDθnRp8?i3٢|*g=锆ਜ_5wў?)ev:5.j ex]}!ݞRyYy&ޟ3u (c@!oi.oTsT'\T q2KPemLa#O8>6@ .Fk`[p77{.}qL[h6ND[mb2.xplp=̢[5pQfF2kd lXBo9Lai!$A15gFa5VmB}ˇ3l$riq{An Ҡی5 3¶IJ!gޏ=ƀ"U URZDqWd|_͡e%=!/"ߵɭ8柄ywae? aeF-h~J{8ۦ肺<|1N7|NeI 9mB%DK1'&{5qO&Q@LxaȨ{*s:iiuS'}T\Ʊb&1J~(|*jfC yL77m$OZ6҂4v%cd 4 93">Sm-e'hx4GzU- .P*>:t\E'BzbbGG,-iA'ś*IR^(gJ^O/ ͔ )٣~sdń:wJF PahILUN9 T@MmQ#ˎ^'pfLRb\3|]5Q}Sհq:cGafX]: 6Y4S0o͛8nS69ZZ^E0u= |ӝJ 'Hӕ}{Pjq}XaԵիb̂mbTVBe\BS`_V'ٻTh:|8,6n+/ٚYcQШm$7tE8f猖KvEI1C,ڠ&}P)ڬsbmtBws%ypO)'c@#]Bw>{dG"|&Jr<kdNH-mR15,pt3%WU!ꟳPKT\N[xPҜ,N :4ʪ杄ךx:hQB_!\o^JT#اZg~kR֋%D2Z[C鸩q":Yat8z43O4I`r7LtmCIybSyF}?%뢖嫚GVq?'},UO*$x0>m" lЦkh)e( ^1ş")Ų.9n&t.7?dȬ͙{6 %A_~;$14w!qX#N:`D vXڿͰ2WAo6W2U@x,EyaC)1NV+@ujz ~񃩉y/ E}xc΄ݒA̹k1K-MK Ys1ݐh^E6 ɨ;?sczac(9OЄ?UⱗEyK`ұK}yrA'C:̃%]B8-_ =7W-4u|"nA8>@_kP$~AoOwh:BKr9qoNC'wGRT~(o7W4ST6]|[l3:NDHo|lAHA(iώ/NsDtHWIweGqb#fh68BZ1)%T2jzI] t#*wIJJ%,Jr!7ݤ9ghLzHc^~ 0P]g<#l# PJf 88J/ތFs`ݹWk,NbF|Ҡ19du Y)!;:f5hO믤s ?hm!~_?kQ^$]3#</ޒ`b9U%m~O(B IwIs'’_Ã-.s?% I ~O:ҏDt]_.u)=NKt,^"x{5#ba+EKaQXUʫMa_ vC٨mj&½TC:.zk(H9o {ʱ))xi*Z5y5p՛\׽~3DۧKSfIFf8`iu w}k1(Ze4&*d>}= GZf68]a `"* g!y>_Ct 51/یtEwE9η/6cU O=>RX'y-H+(4q&7fׇ- 3;VYni徕5zCq ~;DLGs)RPO7N X) 1&t,V(, fsM"n/d&DůgL?ԲLSF(Hހ-*Q`4Evp $O3HN!EYFehpD늞FsId'ɤh '4 G d.qHs"n(2˳c7z2ho|BP6q1ɶ]`p9;LAD08BjkpaOxބ4bH5m]B-$IHKq{* 822bHoc!'X̘* ] el/D!+,ÛV{Ӑx+EPK3LDdW`6,aJ#EzCw⟹XS,)V'hi 8%Yc  |3 ]ld732?#Ϝ=% &x?_%ԟ0`IHGzc U'Y0k`67,N𞫋w8 /03,Hj3ƟYs4P&}sa2?Hosl1tԁwj"0neEÞz qWVGfk^PMi'V']5/d<_X25 *PGсV#[GS&*ؐ:+DqwZ{[pc05g,+& gy +%w0Tz9rrSAH#^!7oF,o^oLmѤEng|Zഥs5q`%*2S+ec a5*j֑&a(rQmS9g&)7"@(w\Dۑ+n3繦%O50!m4,C {LJGg_x K}Y佀ujEh,CM S?RLs1ܥ LU'\d#gAqT U.AJC<8;ugOZP4d78!v%a+&m΃A\ʏ;*][X;7qLv~ Hӆ w_ aɖ~tNۧ'k: bh_kz|}%9S(M],&ByifC)7L#BlQBO/\,﹫YlXc-^wO-q_2#oJwi\P 9Qx&BY Ogl&\H9iGq ,}*9?8FjD.4tf!ypdp-5W_b3}a ?E"?m2A~sd0_z r@`s# O&Elm*S}C}, Pp!3sD 8oy2R74!Nܨ$>G\*j w F/Z`vQS.Fc>";cB{xsHo/p>2&pS n/2W)Sjz:Dᖆ)X-FVj~(FPm[=WE[ Zl<(WFpMl@{/d)|%ERėpH2VS@]h)ckUD8DPR R}} ӵb_3)24 |2^;ha]M@<Ԑ.s@Z/1nw a\Ѫv(]oi2 H}"qJI讃&Hhg./J՜'- k_XM* MfowFs4)C9Z>_gߍչ'\|*8^ʫ38]YAx8>/_t*{.^sTԊix9Ҧk&ىXQ3\℔۞9U=Ys2bG S EQ,Zn^FaGqCZ4׀w*ß.9)/g)Aqxu? صVs:0Loe V90wz :-af&P1?b!j;XiDkuWR7nWW$gM!rwD'Jc٥=J݄@ waS lf̸7W?C5|ʉ2gi"a"x;Y!紗*~%؉uyQJcKiw-AWn켦lmO~w7/||L/EYPÉklyо-?k 6T Am.^-mp8O;zTud<0 i rG+@|K#$C"͉L#8xqMtTN| :W;)Qұ">2*fj.ajW5h\6ЩTD&)bvQLN\~uv t ckz*\b)ۭHbAqIKnE!V&6x 1AHte n! A|kTIfkZV_52|5BoȅJ.,|i)uHC][Tv_ݺe0^r-y??5 >C2k4 oPr`\c.QQö UKAlx|W5Tsr:y91Ywuq$t~%fbʶMU1l/@q.3ԙI>̬*Ţܞ(L0iLw©}Az8 Md ˉl{& e/tC [T_`&`E T-P.fO>+opa|bߛcnhy׭ $ݍyAͣY8}=7cfoFx?gǸUjqrJ ×N‰cPf6[Z8(3! ]QQ5W%,#'ǃLBNs 2 k*~X잒q+3MDۛ2Mosaq M[xmn$ eVQ!ݏ&VhJ1d~lVRyB ?Q/qe.Y1]nAs-/trxWW)VS(jEݨc&|XB;P|''m9{jJ!JqC/l ͣiF:ނآE8 P/</i3ȖDzk,j (=3 j3l`2*ziC&esL$Y`E%19j= 5g]g{Gho㘈Ԋ'{r]2G1IaA\!h\9ʪ5N佷[DюsVL 6QAM]sg9^/7TQy0vO3llRvKe~8X5>y,y Fk,iovf5 Vy (e3wy 2pA`c1-nOK1naӘ/^- j_p;V˿P${]r Z/tќ#TiѮ!/uDqT}tMiٸ[T6+`jE(c GQHͮ@I {y1^)f:g5}h me8MT y>C| Pb@s4 ;&]]>1l' T Ƚtqr${M`IyZnr)tQħ371@vy bX h8(;9eo\2x3\u]9\TL߀@# jx (AD B Fjąטh|+.y[`U!t~|s\2:_/ ,AELl%ي(G*`Rf狦)=[[GX`$۩|!|[2y!b@$MSP$&\_GCʑj| 4/JCW^ԗApBZ G2IrUݧp0H2'`jQ$/ōjnPBsR28P)OgY"{y/d>@H%q#FËMÛ*w\p^3 Rz`$f(Hڻ$Y&lH.Ą+]}Ǟᯍpy&f)C73Pzm`uJMgU;S`yH\"-mX|6$H`*+|;"7OPO }P [=G߄k~.vAٍI6c^JS;@2z:xG#3Ne Yí|IH߬,pԏiΏa Jv]7̮LMWr.Q|=8GsZ ArW2cSʑ! 6X]. T@5?[CL7P+dO#r} W qe`VKiF0QxmzYZN#a%,oŸ&,sB1v8ŷL%iEd忚Ձ N-_JX b,SiԳرkpTA)E?-6eq&&\NDVZ/-s2 D 4>L!{J(-N}'pg<*8m kQ? ;^@KdFwG) р4& '>e7`pw)f=e~gnţZfy*XBl?_ZFl@J*~O:S&=r<ֱL,/! v"nPI/PFXaAue(piӋ:+bEBFCĪ~[xUgZ6DA Pw1 +Q;~-C:v J:{)7ącAZ3[PJ`Z᠟ɮh5Y <5t+nي~5lNIf3-O^L\2]w_uu4;]tʄY d vNppV˾kN\#dΉ+-:!ehnwut\ow2-y[40ЋlIʁ\.JTm )L2eZE RB+ATV4ª>Cw17kț<)9`^%ZgTt -{瑽h}lYEŠ~uZt V3sxPjK%.F>uǏ15cܑS|NDYۨ27tg+Z qMc&]>G[^i|vlh1;굻Y#WRIoMؽ,fQV#IXP@v5 k  [z)uj.zP #(*l뾗})fmt?R8X.MʆX^9 gL[] ˈ[QL 2 g E,g4Ih.Ӑ3#9:[+EX5xf}xJ4]RgCFIy>eu.FZmHg dU0.J@ TX:d:XqQr:TJa< " їE2\ʜuM,w"=]#?z3_qvЂ`r?`&7 y{mKIOFoԺ)ًN YmS#X_j"u G+z#s]ɶ{]Jnsu x=+r%0*\Jk"p9xiTwM_i*֭sHA;,ܰDwUvoR9?988M(<2~KpH!aZQ*+SNEOC I=@4TxIQɵ?KwJ*T\juph? {,̓J<cV eB mFIsq1%ib1Ә8˻kw E#uY\3ab:NO Uk~˘$ ?~hnG|@&փ+X$bPl:qwGBxjSV,,YXiяp0KHmQVMD:Oݬ|ܸ(CA{, 6+ڦ4\> 1f,ȟ#v=z'[(ŧv7gd. 2Vj#Ly4y60VҰeRAm G%?2J^/KORJ{KWӜ:+c:k %tե{IZ`Ũ"=KegOMA Xz-HL@ 2+ϴEhbs!s ϝNҷ1DcA\eM]ǍKɴrղI1IƘY$~J(ɹ2:щʡ3Ӷ@J ** !JSi5dH`UZ:w~Ae/͞t<Ɗv"PQۮ~[4MGJ2?ɯN'U!~dUa۟d W Cݓ^FQ{Q*(lΗsHNΩ^?)n/)aVk{dZU$ =mF{N_e Ev \f>~^h2sc,]xghe&v߀n[K¾>1 JȜDo}[B>3mLZφZ](#afUu=(zX m҃I~ΖЦy~➢XSٗImVhsEv>"3,MM[ΣȳPFskC7k̦})\'|:Ԃ^ģ voK0J*B+$ aP$:۶@OLeɏ%=WpڕngA~W@=y (io*m)͹>&_fבk; yP7PqhPR%=@ܮQ9`_oD@oG7WpfZx]ppG? [tBYvbϞG@c`9zN\,."_'āX-1ޚ%p2J&{s;lƭU6bӃdԼ.NXuSOjG)9 T-8\ ! oVRG¼QID՛fBC@eѯpagp@L^O+ׁE`۾t̃9oYsp>QQ ʹfbv-ws=Jp*cre BD=KK%`+r6#b7(І7 K9:h|Lhv8o3 cʋ$5#&`a[gr]b0q52>asq. ]XCoLÈ2/:pĖZ:AK(PXIefGu@?Kuf> Z>hkQf? eh6Fda%|FPj)rY!$bKx1\ ӞIy> ĐveRG eDV4FOA4S~~t='i{Njf՛!%In(ԧ\@1[u |U54dNgܕD2LB書p<{:+szL ö).2n ~D-7%aT܆-gJvJ8;#eLq fPG1&:l8f#̮iIP/ߤ H})YO\-xբ}^UqGQYS{徶,N2w4.]IHv)J%uݬbIݝ<Ev2xhm뚣bp35;80z [( _V8E z"bFYM9('_ )[hfp"2ZF%Cύ9ߢ_c2V)L?2![!4BXIs$xb|/%w¤H`A1# _.-1D uy$t@ 9% @U(x(,7dU4) Bz)gIԮ"nCȰqe i4jnMչxl >wnWֶs;)3[L.Hs ;"^0 Z춆:욂)u֯vS63DK epErN'EV@loԻ(FB5X 2f,؆ڥN(~ u xbY BRC[LZFLvv1&\54cpk C+Dڢ/xO};DreS_WrôǺ ka&%yPJhD>Ѡ(J`XSi(8pN$NgDJʚ͆kYZ '@K^j̻YqĆu3!TETBߌޯ(_?`QZ A2 a a(*mf2"Q{AŖ !lIgv]n { _i*(q(Vuٽߟ_%%;#vA]gmϓkRV;F"_4)v!Qg^њ;j.n8">$!mJL?'=5BIS]I%mV(B+x?kQlǶm'15hKL~o,}:I|]0ښubcIJ}&&Uor[#(BdgdrW9Ӝڝ XC'2R?Q70yiVt"J6"c8fh#gT'ڇ,&Xko(Ů@gF'IEmgL0EGB-O9Xr E*z8́)_;go߽M|^Wd=fIeJH;`Z Sw{q ŪpwmSH9|9VKw[Ų`'s44 ]5&@`_Y T06A dْAlγ ^b9m~̱-mt'U:\nC1Jtd5Z}4g& Ёes=cIfntmn{+1zLa^oLꯌsKѽhc_޿=ELVMļA/?u]ZV7A`L/u?mhb +BX=;,70(?Lǫa/{>t!@-RFP~-ȌUZfx{+#F HF&FnIڐeu"d.{xx`6!SUIk+V! -N)`fh3,>SϪ]?Iyv&sދh804#T1fp*\%ͥ7TB<2 ;7fArYOM3"EbԎrRtخÙۥOqhǣ%Bv+>,109!"g8< p0wkR=o=4L7v&.w3O^ f~&8,kLm!@G@''!(//M*덡(4Aep$)6<`K47I5┫2LG jCQ$1VP%;gr6Vv g'aS5} (̲5-xAa; _y@j)v #O[c sMFԹ:^֬6p𘚅nute]z'G%" nUbU<7M qΨ^b#r/Ld`,~"T'X=Xm~; 'KB7PtH4d{uB"shf5)TaKa! a];+҃6Y|C3خ}G#\P@ 52 NClnj$=ixQ.z/@^ZQ䝸ja;P)Y)6S.{}](qP"L}S5bAACU~y6E -6Bԓf4V@Y3v{gu().uTPtdp-ޘ>QWl.KIk w6=z/R;f%X"Y }՜k7K!f8!+SJN7m1fY32bMȤQ_}4E :̡]P!HX+^0h(!oH۰| óQ"PE~L$0)R[4]k(T R/;xeV2Znh*@DZ\'QGc|UPXhp@ PtֳQ₷ʣE6܆]pa ϩl|uJ)^> h~+sđN w]/*Y {⌆Ʃz17o8a'DH;j)R Il0# ʥRأ;[dKI(`5m .)E\C53kFs򤯏hl򽗕 i HaWӃ蛰0 @2(M+ԑOY$@9@t,=vkhJ ޽9E}"0a]mP^@c?*9AgE?#%+'GPK.lM4h~||xQ4u9nBL1 liRRʬ;.YJ'3%+OZb+u-BG#Q]F_,# UE2x]n K NwGL%s%,C(;Kֳ-˂n{_IliۨP!>PQ@9&u[^8tOSc1T3LiAoxNj|\'z2-R1P=Si \n;Plc=U\m#>1t*'Hm)c,&@y/ڪ zM^8h:BH#W cwr5Hp="Gnrd䷖{2{MtsTlߺ_S7{1jə3v˅~{"9IM񦪔Wj6_٤TU=`lpذq b5F'w۳1?&ѢQ)X'66rl4;(;أ>627"{Z1[FxM^2#]E"n(FZ 6JN4Y/p }pqH\M&2o{V>خ_t{6R0y~ϕm@1Uʅ#x-/LLBO۝|%9EJ7jz8Q}&k&4-<8_CkePо_ZUg >2J$/͞@ܸunHuL*yݢEmP$rr؝qPri>@Ss>]RJhY3RQNl3 b~d䒘_'GߜTo5.m4"@7" ټJHLKif+L_61c+cFB!52Kz=]pc_/jm WeΓ)63Nzq99Nx:"v5(VO"sTheTTfp JU8T#^u$K>N/2Fccuka 'kc.)1,Tꑃ_قfTՙj=|6mv?q>LU6E d0 r5 liG@E&Wh['Fx"mH[H<{4tdt"CX@,}y֙)B]׼:>ͭvѿ %3T<@Rh,ŷ7)Rx'ۀZ/ M) godł4!BFŐbb̎fYIl6c>i4)Z=>cB8I3gp%Xb,Z}Dztd>j14߱ CTu@y`A %@ zޥآ4T8[v?r>T(̍)8XPY0{yȝ@Eu> Z;\3J*R2-C( x .6EG>&<(ca%I%x`F՝U!\(DZ'bk%kb0E``^.SE?#YuN9Gfw_GΦFerEn@^,% 2sJ p鶳vn=iPU}TК%o'IT[0eETr#RLc (wT\v W5,%,Epg]*}||kӈi5>?,X1OCAحnA,0Lp itxF2hZ']<1-?[iy= kU9}*wԣL;甊!C*BK 8#x;y %޷a'G%X-yG^S,-Ub?3Tq'fȕuŃg .⎤MoQa^Oƚإn.s@ 36] zUpQ.B޸ƜxIl 'Dړ,&݄_ .Z[-a/u k?W&+fj2it`^1{M2kUIwEU3\ ~d+'6b,{@E2MU1Y F1Lat̥֮GY QzD<̂ݼ2ה0't1|Dt8hDBsb.A=tl}ŶGI2Db *"?%kηm?]NL+jUzP;>-TOǪad(0? }((u; e8/lvZ W59 Gݒ/̤M$N< *gvL&2 ca)OtjWrj&TGI͋hT!!!B{!!JB6XM0SkR*~PeKj.8,/]0 hܓ0}`T̙ogez+~P 3RQؙ]{I"CEIdսʿd=w~Ճ m^|iէfsu iqaˇJZ9W8u(P=tBA;l\#uK!UHNnT;˗En PApTv@nH;W؜j;;.VL;]KȝLo&G} U!4F!Ѳޠ'{9DOM$%Msy QUs7]HۊYHIUm2 -RN!K_0-uc\`i޽8=[g$2:-fbvKMu$l4_EVUfOG(ռN#HMo hs8#&UaXE@2*e}WT6S = 6W; j W^$%^rny>IQw6wykp-D|9;A  R xa~<^X8z&t4#Ew^Z8;=P^IJN1`]<$c8wߣQ]q Yw種'gUJjRkcG[~yTUkwz|['":հ[AC«Nd%y6@WRг1k]uH >J2SSCP!w"ݦ{C=gu O>1`Ni{VbLOCwhZЩsa[(@U *y^hY0Dk3r B)P[SG9k&Y6~.:Aע5 oCT^(V1TEDRە<6=kvu3jX  ?B"=?m5P[@_x: 61i ,d@x$G W9Z[oh@f5GC:ƒn4EǾp2X(P hxAեyȈR:[.'te$N`.Hղj"x%Sc/ 8ϛxj?'$88?&٢J?k 3&H&/݆%F++)8H owYfȈbXvy:"!i^4Ӣ|)dvqZ8 Fŋ Z_4K{/\U\F Gwe -t`߆bcZPrB?u~M(Zg1$D\ʷ[Ҫq `0Q[հ9ٔZI!4t^>g ly$\ya#$cl|pl[tnXPtcZ4Sidc Dg{ o-r'OZ/'1XT2Y^OtZk%jĊhFB/pR`F G/h>=W%;WѲ,`;TGZ eG5Դ_o,k'ȹ*QO) gG?TiG_Ŀ7T %6u5r|]U(5{!278'Ƃj,-N!+( |~0İo1Efաa Q>OWFuG )O%kB| PMHČ,G=H'y|G -03Ն. Բ*PA}3l+̌G`^MV].xh)V:Fڶ}b ղ!>> {ei !JNUa0ҧ 7D/|QtDCMBCBb` '?}V]A{ <ͭkSGL!WU#=JZ#jcTKtd0pҠ[1< e]+#g9+7fmN;RRJ GeA E8386Me(#"ta-In*%Lь;!~HwEUw#<e; 0>%9>(MM>+˯Dhe^2 b홴t t tXfXK2JXS6Q VsO7)s|4o}$ (1bJ휓GL+4Iϭ׼Ӭ&-]W- $ 7-F/_0I(an?m %cw [z%z`vHLDg{I`?{rNI:~-4C}m=:jN=(8B"vY-3/ <,QG02f{jvNaꖲʚTM xЌyW)(ZsYL5r#ιnlxe6 4#j7Ca%5xE ,.+)K]dfTK. .ɫMz#enG~Z5xZ?TQrN[ $d:}с0 ck69Ww49x>4yXxM􊗙kEHO"єUbXNk.tѐZ )H@>2P8_4oa)IAL֦劍|wb|Mtm }8/4IQ " cTlg6QT X0KnU>p ~'3?8Sjv s^cPq@5YMڮ{A;VbgYCV[!2>OM,qr `| R#OHMw?9hxK^X Rj-srL.ey @O׉j,EiqUg=% ]Õ1mq0t r*5Ta%4eZ 4mK~aSV|FL%WfxaBR>;7&ಕqaSIP#hX uMaRl|ֶ wk,Yw_U!ֵ|z3ZL.ESekA%Lt!]+.]BKcq7a5f8Pɹ0~.^u`P0$'3DJ ^~2j5M{?B}!z<{a\KѲFΙ'E 8m\ *BЀrW^6pB?=f6uV 2%G Qt4Ed2nsRԉ6F¹-=3?% *a6Ld2 u Vc܍}k$h0cꡛ97BNQ> Y $~R~ͨkЇ3 ;EgJ b|!YMុ Vc[5,1ɵ#Peg@g `+I<*UmJx[-Kyŭb! UQa:jV̐zf'+v*˩s3i5m'H5|өP 7SuK o0>pϼGڅ Ey*JH6%}ٌV&~'N朼/YWQSKv[K['W) )H,*DǬ&?WB1A' ̏DSZTPkr>91/c ЏzgE߮\鎺_}4`Ýu'l:J?"ZkV; 7Mn2~¯1GP=msWX!rkcT8mȱM` 00>/;_V]LjHguLkɱQJP'#e({>ɥEpϊE=qCEY_áe !W n3f#A4=19k2Ud}PVdY&!"}#P 58 aw})(,#Uu3mg1H^0\D`YY{(S/W³7Y[WTR 5hg60*6z2F$Vr46-dMr1cdx)P:`@Gehdۣ\s#v]FQEX:cmJՐPvab{DփiCkja:~YDĭjk|O?ޏK693.}t;)r i- Fפՠ?~TPE%xnY|!QT g8La#ЯY_}*t+;xJ )e߹[\%gT:IoX (xe/GUݲ4tϷ f59fRo4 iI8Q0~9Xr;%_/g\>*=7t+ud|nDlvlUφ,hWZe(*O9T !*iƳ/5 3q^|cCH7gCь: 4TA@=i6~&܂q֪)=f0!p`.uIdz^MDjKQY|% P𥮁\A#앲8,T⚼ʟ){UrՏ#>y4u݃8ap7U?fGN4ua6G5Dg-*D4l9# a5z=ϗxN |̱XGLs5Q$ 2߹Y3wa}rƄhMr69YK}(*u9QD @/$Phz0"u@}ujft),N[ xs}zRt 98ɟ[F̜Q{1bE*H_?+6ڦHLNq=l:N߽i?y,[M݉#F 4xKƲVUeЮ;^1C N7`qjbgkx3Z M;oWTSvcEu0 dX*+I}Xa+Ą_.5{4=F)$)"vھ1ƫ*e~ʱg:~DB]T| |h`W^vNCP g>A~)j{df/w[H尙C [H!\ ~ia5 AgKqiăl$9H%3dyur#kIxG01m=X.;j)NW{\'wRnxƘH)qHJH!ORɤqnzA.ѳF9}G6@3qXZ |Y8ts\GM> yNj_]-7xϚa#01E"`ڍUrgӻ 6Ja1KMA^dWݥEZw2P9K/gbocx6esӠ(BG?HtSLg CxiEl}u!@W֓wyks+(p( 3c"7~o/Dr2Fb RZB㿝00<\Jg%B)ݨez|x "+pZZ!|Q+7-27ns`qS6/_!,dayf9j+D%G&.#vL7o e\R{d]$i? pߗtxuu'F1w^r`i[ErvsHG/w|[3xsB6CqB^4 T ^uZN$ y_HY)0{)y''vVk4$"Pqd,x^^<[V2Eԑٟ{`wϺh IJ:=?kq^g3 r?ח=;R lz]m!2 *kr$N I\v^dvqpm"M2cSАz.<ړLzw`qD7نo*'v 3A4J'؟,]))yE3Բg1O}]N|:aL2MͱPKИ1󇡅6dIURYW^9+X4`yxS79!:a5vA"oKZGEP1d4F/n? Q(K/-U]"cAӫ rs#V=*jXF:dT{V;iX"Ⱦ䶄[bΩ˨]@2k?FɷRbmme[ }=xuPHPO滛`ˇL큐@Nyp[c/1SόnlsU.iR_|g)^ sAdaVsOx1MȣNLЪPfff:)h┗ O}z`Y_ø!8v<$_Ϝ-ƭ|Gj*CSK=ۣ4ƌf MS'fXngkY ăm`TL\>lUH[ZUL@|p}2]̲6WO$W۷#Ҳd>\vݙGfa ݩN=S HXdnamQ\CL8D86)bx< Iwp*w)iphT!RNa%E,07'3܍j- dBgzZO$͡)5RgjCEn 'U(tF? }M=;3xȤK)3~"Sw*.$,Zh?;a4q-MRx)z-E-V*BE\JV,Z-Z"|&vD_T $nKB})mJ.~O KyW02OoL/9ql ăDjݾ\Ponnd>)/^wpiɜ WL7],J,!w8~7xƝӱPB-`H1'46]KS/šX>A.)8)#{mP<$jZfQҨ?w]~ V 밑PCZ(17ֱ 4=~31l+(@u E=TSoL,n1b A5Dzj縉y2쨕{u&ly~_aj ]74|M "6GQgU- %F~4P" <h[ +d'I)RfL͆;{vںsJo'}:-#2̠s!HbiZiPz=>uF+w}Ǎ9.Pbx5*~:F֯1^Qs'{#Abz7SӁ%%*a(܄im.Q/ܒ`[;Mra?PQ()r>Q޵ p6&MZ+,;^LflX!N"]b \T\oyyIUNx{PmHaB<'Ξ{j7A>:xu|fܛi+v`S7'-haA7= OBG=o!,)$y]CgՅX pqh")%^yw|q (=YVͥZn㯩 h^v WHكoT{Ǣ!d$YmV^@ӿ pREt)?^S!cO׺7#Y̰g߽%#mzK/6QŔz]H6p}`ÇBp>May:sZӵs6 R{Z((Li ,܊0Әv%DmL[񜕰1̐ˌwXQ_RdĐݕfPƃZnܒ$u. 4Ǻ S,'KA'mL*+f`G)ݡtl8uL)l*bTi.9͸,zLCUN%rRdq.S>HNf76P;<59ba+VUB۠g%g2vu ?(,1CrHbSE?;hx[ur l7]'4jl;5#NG$6-/ 2ha2b?k7]5 .6Xy\Y^u\fh|E|K#j}B=76 r EfMt(H]f)< \X ),Pz  i 7Zw"E|3Ϋ/*9b>>_) @4n=F|b:ګmW]ON^[*Zmq,{FOﳠ;9=)~XU}W%A_u!<5|6v-eb 9P4 zBUp' ϐtڤH-6 NUB\`{T(^N+vFC5z $*q؀^]1sǿJ^:M+l g }TC^%%gx=.p$({Dq@ ۙk!Än\ צpbʄ!wړA4H.) ;-p8xᰧ{\Z$-,<`|_[ D0}b7qd~5CHqAܖ5X F$Tέ9dޗ #{4@)׌;osە%I:(5zFO3~IHLm{zGŜJk tVBb=K:÷|$|C^#A#zеMfJ2d UNqOa3+[̗PPzNAiae./~uvv?"伱` p%Z+J1;V2;1ivWL>S >BU"F֭^ 1eL{%~C,9ip"/=HZo,>DoUDJ72k.:0,4۔d{CE0@RibDG"ìu|,Y9E~Ꮗ}>iRZ\F; Vt/7,3Ȁc[LRU 8oXi:c(1'@xK׆0._JLqqAꍂSQؽ*EiѝMZI5wlËP +~zm>NAw}d E:e~1l\Z*ЭWD(7hD:V=; סIݩ%W Tw%O!NtGr|rB%wTNDEyb5oi,,%ޯ%x2&~Z7K߬ٝUvs5RSd7& \wH9CS.~#Ͼ3@-xcz>=z\Sb&3:瞱]luJ"S/GQsXq]E۷GqVH`h|8 A=̵%g ,mseNf&\z"=s/*M␫P=DUvxYfryeMI%ziZ <{Vl* ~" TaaCSN#vHމU*omVĔ0I*۲Ok@*m8ua[!(313)˃3,k-`" 'i-ߓW. Ꮂ|3z L%Xv@Xmөf9LaYҊo :'~!b&(aPW9$fzyRJ q1JP>?gb#{uL#v&T+Ww'7izdj/O Lt3洛caN/FGPtFRW dW"kT<\ ydz֧ /0ĭNsqW'1{!a&8 xH o?"Tbb<~ΐ+Z$۱SM  -#U Y|zJCNTW` Ewstl$^`kWtOah,}ʿs~<;ǢE#]0]JrJ=aZilZ$X4yCA>€"Q-IպՐp|4R*>0 b<(Pj=띗۷\(1-]KcLf/@^_,O620p\|2I&9K.4ו{_26X %~]u trZ)El@=S%1e'a16T2nx}gol1~* tW H??aQ [pM߯_:õضn1)e  Eު)!}V'!QJGQ3/ 6i9)ǥ3Ln\9ͽqrJh*wqN!q!H<{cW$75$B-kzRSUۆȆ,zc*5{lLW`rY>/` CˋS";DTzFǹJ,⺡TQ3K*#UI-I$G0FܖZURņ8%,KxrC=6>#\B)%xeb!˅8RiBlԢdtZ)"ƭ\Nr :mk. 5AXuϣ2('.JakM}ar#$T2*[([OӨ젿Fz}%0YHɩ5;7*-Jz״_I,Z#r v[JҨG (K⽟{(4d}ӱ1D3J"QH᰷2홂yJ#O$|m .6?/& NN [0<ɬ { 鍒XfVD39ПZ !F_*ZcIAue\f/tXK*f=# U9OJc`F%|M&mP{zmoʗ.55Vy8 ϤPc$"I~D/ +']1rk EMS7::|pM՘`Ԭ*GB LPm;PUmO `-s]p2wA=-$hꎻ ԷEBkt{A%7t*o#'^NI!ٙD;sV=anZH]3piW%c+BܐZl:D KAQņMl(OWW> _ޥ:W3-bhQ%EO_Ւe+[1SfJ^' )RŒҸ)=>GCɜFOsq! ]-|cGl#N[{k^P+E JtMtf96Pj_<~b;[%sw;U4bA,P TOW;pgp VxݎSKro>Jr sW7v:Cmn>z*;B ZIĕ=W=4baUQhQq|E-PbD¤$ǘqBj$:N4@)+ƁiJ|7kB>bY PrKMz&>n O =Gx_J'$l4Bw=BuZ9m0b;b7ɾgfެk q*xfW1(1#2n'^Ds{ 8c[{0&;%&nY%`cK mY!F뚸b3Y~&& G(O㓠~{knb. tgex4}%K(Tn|JCgk<8@G8э yh28ܸEԩdkܵ~wYѥB'Bw _<& ~͐vQ?;*QIz+A{ o3- bJNY+zLoy:fBm٘~o؈\umYc|1 ={N\=aïh:1AaҮ9@Iyre[;m}YlQxko*#P$%v!ULD ιg"㿛0ªAx SA="R2`(X̒Vf3]mz.y4{E?tg"cdqtr#4`Huok#J{y@}zF ^& *_.>{SLd'Bdd [*.vkrT q 1ӥ佲D<_۱FNw_VrcqVCEhd}ɏ)|7 ?ZkWT.4ױi`ߒ4Kct>%|oQb{ye2ﷰaY1 ˎNxSj? z+2fj ylsL JjK=RX7/D~@}LW>gÊ,`dzX_5wAǧ23/[ܡlJ+q(ICUǒRC-!Gl"UWHCºRYYq#c)@"l?H**&i9HEpNbI6Fbd/kb4ںh *6QRkpR-1{0iJwnr,W~;w^<;c4 ~qhkn^,Ce ʈ m1I.<.F#::.w\-E|½}Yg[_,tߘ-Y/?$䆙:3)tdo[e`~:lm{@rtVwosZk++ \9$,t >Zw,IƷt-&G(: e43UA[E_F™ۘu~֩RS=#Zp !2b<~e8~'etۆxKqt: ^$Br!&!.+stQ+.m-  o. Cdܭo(\ `F5O% ǁBa{\RZ*MVdzWy%Q\4BY2 RkQ/ԔU ̋F 7J;hs/+aBc i"7Kl.GQc-zâ/zx8a]q1>B59rpH;kPDAր0aq(jEq #VBwGTP2e/m_ i+ϵ<ݼ17@2a3u=GT&Zؠ.²|g' {Â'Gjb@׫;0kP.(xM"{ma TS% x _Y=Z}MYqP)Ig*'}5mO h yXemqR 8K:^I1{~LJQU(^\~䭝fs+ aVs o,؃ԫ8arLI+>[:hVF 4[,_&"_t@|q/֞JRM/ l9F#H#?qʈ` 6)f^"h@" 5;ڇuT֌&"#)I.TdoR008{w`ftR!$)FED|I2Y㲛m8XG$ l&?!4W[H|Ki&M @n~өvK'nѹAU6c wT?A R\Ux1~ .36h yqvBQP *p(yDIhUXy}Wo@hhP43 sAY%O|eCdpF>e面Qt#)`^C,T04ShVNгL|Sh۪mIʀf=p=HR3"bH_^+PTN"sXNнP&<v2Lmu T%8 nsbuoфOmiHryq,x Jdx.gB+֫% ƅle۳Lx=8&?4@3Z.Md̏*5)1U漗VG^RxԍgS #.ff1b%a3@nJ5׳BbD& @=#֫(_vhyC4\nKPqJAZc~DyAۭ?QrZ& "˼#Vq@"$[& 8y/=juDrfZ\9ܷlgZBp&Z][UT&dm<:9њ<š8fS 'U;1O?2m[FAC~o'E/ I/ M>*[A@O^•῱Ӳ3{ZTZw7DzXw N/^ 6>i=N|l8W*O7H7j=wgl?1TTm%䤱.Nޘ)S5m$] [ ^&2" D5uû%zs><Z 0Km?Pt hS}2o!ЖzIMh!v%? QI'cmC>SĄYl.r 8ux۞nRض{ĺ p+7bɚk)>$a*ז.TkD afw;oSmrHI|he 8;B"?P'ffy`Gx^sKZ.^_SC{/1vo=a|eny& v@TJSvr &F;TO_dm An$LrlMUWeǓbT7Es%bAf2`~Xf$g5IN~=Js$5h_;37[OWB1޼^ђٛHpc5 +jYH{.uMJnwe/ 7ŀW@`FfZ T^{a:(K~spDžVZL<6B1cjܿڊ>Y 䃾`(uI b3j'G|oM~ СnBzLTo +lے±#K-#Sj^>t0L5W?Uv)~.uKR= =/'"=\n* I'ME8&[:IL(`+q 'CvZ_%k" ڢBhvUXoI!lѣJkc-cw䭕LVs-]/6Fes7g+;Kib̈YBVd Bt7RVLM*o,tNO1x"{G.& M$hVv] 6lݢ?K[Q?_!`Ř*+НֽdT:f;5y/f%ǰᙶI?2D"A:A ,B_rt73- 5L`Ei{If\5kG3bo/xQnn:[|dzx zi5Y5>R :(ti[X@rk#U֖ Sjq a7Bn~iDHSL?ӽ(/]8T}ɰ@8b岲#BPBI2jr4/I0Hf z9./fFqMO3: d5zp{QR~uEW~Ԍnȹ 11 3~Jg"=zR0e▕FC{tHJj*;*{ɡ,egyMֽ0]C9z KyjۻNli CRIr?z:۩}Zɜ4|z؍ RK:Ӕ4bmbD@10 aY u&2`2+LS6>!NkFydDo%ݞLp%8c]L\Ě8e`%`9d\HG _KTiau> k;ǁ0EZ;Jl"6ͯHO_wGo 鮎ZeFVEw@G(4+o~Ȱi9B0+F:yR(H(=;Ѵرw^+v h~j__^.p>mDŽUؓE5~"j,@[ yu_ECATJCU 0=A~gUՐ[TE WlgAh CvF=U1UK)<Ϫvk@a%Q>4GJg'?,~xéQW ɓ^}dI ^5ْ=Y+6Rw̥ .uzLѱ鬘g՛\x,%+h֣ :X㭟 ח#0D c#_^$(Z~a' P=]wcQnXi}ԝU:ɓzCF1q}r OL,!^ߟE! ɃAO埢ꗢn-y9Q]1 ކ8n/i_[/!ڟf\w=b؝XW^*Z]>Qb W ;آ(\sACn愭V)G,;dD8ӌzuca"=@tR#J#sg0D!7I3Wf qȧWbzJs,&m"M$Gnl 0 N !N/ aALpTQa-_9L J|=s|sQ [}rW;9&ccjKo@ʃ>p{`6inbW\5HtwVbƯnb #"{/*BL: S[A̯ M]hdrűYLR-kʔo#Nx9!{켘jܑ EpG76NC7nvPj]r.#q⣚*dmǗ* 6kjZ }sD{%d;p*>~Bܤ|C:ckp=j晾/dExD VډP<)/:8~-ƸTG | WGc^dD$ W4cvֱ8oݒM[ oD ^HqR7*'Qy/#1\RL2_OIM_\v6Vf׊G r17@R\r%L@@N]0p!ԃD00o\DOa͜(V%,31]:>MUԗ2a\-(#C }{65qcnϊ{0D-EZra#.PA, gt.ÕD3 )v \!"/KFSGΧDX?b_cQꊎnGNvH#Lqï&нBObZB||"S A09uz.؇#n;q<Z)kw2dWP.'BCNK|Z@o8>U+WΖ:,ڮ^/8,إ"PqC4|QfiK^ZYl#QtE'LFC} _%qsn1rrlvc1E'o9(j4 UҾZT]c0퀤00"*8.tI50>lQr&Ósn#44G-M?T MV]>|n%;5& J;d]rڔrrݼkIMV5%]TVTP#p4H#=0/YѮ7"BIB~v@<3yW]Z"f+81" ;uw/+.UƣP:᡹άN`ߑȊrz-*s;Y@0E>27lQvxY5˥hz>;?#|x/w0HuFx?@ln<\9` [82uI62I)s |b?AEI=)WTAYSzpbqSy&mWN"<([9/H5i LbFXKqw^,Q8Yq-_Ht SHsC\G5&U)Eߓo7 A9(ar#i k^ 5QW j )tSK_oGy9T-*5d=NȔ\f`]\ab ?`S~js:N D?)ak-D;7k) 5P)Nfr) )I*##^7 9OL.!bԪol ?1Vo*ޅ/{;\oYD+TM'L.%{n9`caU"5:9"wxЉn,OӾQj|SCo .fTd39xeȝJpu`F ,!Pwߦ"ŲCݔ缾сvCNħd_A2`P5@ 6mqZGHR*yƺ(Kni KL<Y9U§t+85UT =&kk!7ܤM|gSSO&sq $Gu,}pӻw`F`+#qHܱځXNHxa}66ɎA6~x[ĜNQ4"tu)T\KNufϭ u"DjR}2P=Ac0a k/c{&Y_u4'C5ՠc@[۳EKHx6m ݍE&87&OC9G>yS&)^|-D ܵ[n7D+\g"u?7Mjy[yMh1xkokX 2j Ks/G_N`)/EHp;Wi$ļ8'`(ٿy]ՔSk`t\Kn4=fY9QZ1v@NY23lFzª*p5؆ S=Sm7t߅لV뀮C&fP's'scFf-~1B\Á5.:eQǺ)i\{pn$:N 'lS*)ӗWjIn rX(JdU¤G<=敫 X%>$idL-GwJKZ`]&a~EB2A_{P@!XR|y>FVG6.ʑ:I^uز6rX2^aID} i[t l/ ؉ۊjc~7 M̸r-^PjJ8LGɓK馎EL:,\2 %Ժ H0I*Tӽwi%n}p5($C#F9NG AlFӉpMmRscq3RL! F٬v=4&:i9fmU1v` 3LC:%AbY:{ H^h2D IGp0aȸRvյc?6gȻ>q +:h_CΤNq{!,/n̹!U\r3:tc.+[kEegZCC\ 8ryTU O?ܛ8Uɤ54$]Lٵ,=P,))ʭ< 7e"APz4x < 3eT" [toOk\4tHzd)j.riޓR'iRLiCjy8ď<5j=˧7f¸זqx}H܉8F+sw=Bq)KXvnS@ѱK ̓By'D~.[ !'dA1*WN1xF-~ RM-ǏC=Nc󔮽VG:sx!G?{޽sMEIi)t>YAa(5[Tq5<]' 4LVdi [9rpCG${ $@ҵ&ή!osm>Y duzS0ִ<0r&g6$T<^fs?󧸿۰{}ᦙ|THKTrE݇Ѳ}?I5xP>X">mrMxyf2[ ;O}s\ULD↽:^[`\ղ{̢@vL CP`|21\pD20RDeh#ZǪ1r+B Lʮ2be)Ҙuгn՗o:@ `6T_\ 8Fzxybʭ$npܝ9Ao$biU4ۮC|p5R"6+^1$4WEehW1~; i(dӣg?}L^^S\UAZ#jɅKMO;Lu BfqvW Ob=-;i m8*4XX) ^('TIL!TvSИge=LS] )LevJ.IYjAZgN0=xJC}VGǑu{Elgܸ#[(V4o(MIubA;Ndкwc.ZཌྷX@ )b&sW`_N yR݌_Nw2qVIܡ`` ӓH#s3} )A ?yP^u }TVP'_tϷx㴧hS3}=.HYnӽ^$8Hj|ע":ŧ^64j|ZғV'R -GexZ3&l&,ek9Iݎ`a4ظzKr ;!UL|*=Ob\I[$,{߈8خ=|"G0ٝ?vKU۷/#|1Nwt6$'sq3Q#4R+c|'Pg(j)muii?EP0, +ѽ^ʨ?Pau[L}FtgӴ R +JHKHx[dhAiW1jt;!KaFvQ, |7iNȠWX~:"8!cz A]^X]ryJkG|`M3^7eI"yGT:GD"5TIu4J*nGr ivˣgP<€QT܎{,d H 68(C a'Z$ QwkܞTpjڃ9Uz5Ә. cPfNr]X1{Dp"]:VUW92LBL9R{#hdO;lk ;~&{- ksL4dJyhp)RgtF‹4 9qX0FB$v1~ΎOLknolXP\OHi<2" 8>f|B;w2OB;d>@#E 1qJMdq6&"!s_vQERHM䩗z2͉{&k7*S)`%1աaR^HHo u-0MT8B.6MMpV9VAҝGH駆Si} i$V9f3؝Ο7NVh'`ڱb̎juh.YGq%Q}=+(Tb[e$Ke-fۘK:,CTʣ<"}C\/Px7_Vh͍'K=PSn;UdQ&jmjpHL}-vD G[Hy?w޴eP;_D3xۡ?^䒨q| 43&) NRCr\dHfgUMO\t/~'. 1jH E )s\aB,OOA!W-_J1B+Dl(λGs×f͎)ld mABytPTǬ^+FRbt҇ޱ!0X$uTC$*uJ e| j8:c``0~/C)~~9R{Uca_]n፷+-ANhٮ+m )T̋ dps#n a m]]asKAU)(|\e(=3kY &j~:y-|%P"nz fi86?P,xҼz}N֚ -;}vY "Ҋ)`3'5:6i5IM3 !Z2J-ɏ7a6F#սNo`o`#) {*)e%Nx1ZM3QPD&vp1 cltuG9NkČ(os4Hb:?D?08g&)#вY.OGMa+<~‰%)6?<2_2;'A_L#!ArTXҌ3Wf36SUYR(t',yK.)Lg2=h]IH ei!xo]VŒRզ[X~DACʓ$o v #pWS[Pӿpƃ Bb hRj;쯡p%;Ѥbd3'#ܟr_azq^nIKk=YU-fd9ݡߟ7㥦i*hك-A!'} ڢplU=h&qDQh{2\_Ӷ}3ZŋlمO# w],A s‘ADpm| m;l4ON_hn!"%蚐Tq~FG07* )>\g RoxY[ae:rP|Ha'G2FE5t)6\0xNL;Ua"4M`p,lx,pn(9 7kpHqwZ)-J񙲯Gxe4iYp*agdƃאE.o!3# ܖ*hqyxGHA*&2OcOq;eYo.\ֆ]ZtWhu4BɷE0" ݳ=& -=eOI|f$ØkZCļ`ױTYHtWC9 `lۘ8^ 묑bqocaz" ?Z=+Q,점F~ 򎵹9Q٢N-a¢9po,'UԘU|/h{T[w"G. 2Rv),bUxxĝUI%Q cujg*Ex^Cs!O [`[Ex KO؀-ufc2MJmcp>ƩcC˫"֝Pkpɸl2 L5}"_Ίx&`S6>⊀RK}Rb*u/lՇ   \P̵<PsYOPsG:=Έt<Shꕁgtl+ 1aXt!Ti(Dȷd4Y@Tx.;SuB9Ogolޒ:qSf%|HLMq{=rfbH{sQnF KhwX+k8ΦCSefP@dON#Գ~Nm > P1M5^O#NPX* f$zP%PJ>#RP0ך`ip5wg%L #R<1CTL=*4S/['ăƽ@_ʟ2d$lC腆ͧlE?m| `InR&Ŷ*_h'w3įlq?e2!6 x#"k.'hj/wqUP<2qqsBE H͟RRE~*GMI2!!JoQ-ln\w2b#3tD5E=i2!/DK m먱.=,ňm'_  4@T(Kso|_mӘP)pQ;\-2K4: 8^/1RHyQ㕩aQ)^xne"fZ,B6M8s7HPLggt$Xmqf8%pu@h7tҵ6Նr>E'[-vΗwbi`H/S.J)[CRK$vsn["I 6}W+R /[&5GRYL23 Sx]b k{\F=ka8r8((Ns5(NkpE\TH_mWZسzS{w(?5vBF&M<*Aēt'@OG}$С2AVe霫U8t)Ț[}~/R&\ZÐMD0 )tȭDC`m6;ǗBǨ "0S D^+Ec"{,17: ZNyφ}qV)RV@^]vޅ*{`ҡ8II/p6DzNIx_7락L"CF}*gًɵsS+hceH˔yF0ϫ륶1b +{/+䬿E^'#f3M^h;LOYy>9]ZvN= 3T-@q):eo7my9YaUV_[n#=Y6=RVՒzlt Y΍?d&%٦uޘ%pmKc_ō,#`Kĉx$6~CcؙOιpV\~rk~hUpY޺J/3=agIejTLOhLUcqQ[U?fZF,Hbw5UU&**-r8+Cx3b }¹>QD +gZ16_h9]釥9g&ڛ hj)B0߶8!-@6XkjfO+tE7ai#1F1h0?%ϐBa+OQ [`Aci8hQCɡ+ iB CN >2$hMp՚ {&Ǘ5L%MlM(v.Գ*eRi/őoӵē6֖=! `gwpJZ\D-K¦0{cIm0lW W\,7|1z!+p q\<ֹtɄժ1A-^V:A2́5HT͎* ~Ju 5q@X If+XoWǍj hdsPs㶻*pXѫSH+X; D^ἣg_@*9; Vb2 v4r!hT!?EcrÇ T&$v۱]_q)leHСi}i\:L 19 mt^YF##_/G [Þךjb Gcv\p0q5O'O2 ֥RT&kKDzr'#+>N-FB>mym{)pŬ!aaPs>oAh/;-;$?}+IT6jn6$:uzvx_leKSWƴ]֦5Zg_v+Ӻ5usi8%ITA)ɳ0FGH}fp=wQ!tWQQr.1ۚr*.maM_0FͦbL^R򈺃#`S?y7H^[ ##l$d{!FP4}IV^Z&eȖm0E0w-70Yz|a^ U<$eu De[ Mڒ PF𗬑ooUc[v"[_hF6NZ(vx9=dK}ve5Щ$') H2{$7 z!uAuU"|qHE-%2 zVŃqb<)9]ˣ֍IhŨ+Ȝ %Իmqy]ݣ s+zPa<~A;SpD$9;@$3nur^#(@GM!`bX6ĸ5I,8}s\AT8‚:|m{{^ ZW26B2<.GKۚ.{ b\N(}~79˩6Cx}i  yi2MU^j̦(,B˕|fV4DFfGrf~?%n1Q]ϣ?kihn楪2IdSl5 PP H Y( w+4)Hr׾D/a/IT5gHdʐ]U]aEO18R*a 2%7\ȣ&۷KZ$)NGH"͐Z)ݹtZLI}GA2:[K9`Z:l>t( },_{5'U% [Wp(Hl)(` {-Mk{ ɉf->D?blEV%~Vg9ZKp 3ײ`0QvcaT?]CwjI=󩂍yp6!YJXtJy<DILQ}7"{ACdC* X1 QN "b;v F{=䂈Fs pȉƀWG2Ԧq @ːR`с%-*l2gUziZPO͢-pOwgI>P3t%,*}|R~Ybh93C~M#d4?^h\mQ[W}B4CtIG]GzY]4l1'B'&gzS3k<,gbq8Chq"jj7͂##MT]*ed 8Gr|9 RDʓq1d#vyIOtvڎ )i o6:cvgj^t 7hYݻڀ"3v{1U_&V15BHoGf InzOqC0'5U DB\iF6s*yMfZN/l/ t3="[R1x޴8!x#vʙOyĬ,=P$j혱+ߐ&4, ="U$&(QЋt^}1 )/-ޓ'"&8Ǡ&7 dno.KxHWv0kjeytn&e^9ĘTFE3: Xxw)1 {ҧr?j<Uw3ِt_YrR'xX2#3I.A^ܝQ;!^P?9A`FRKJ5h-IMrް/+luB%̵+Y5۸$Y@!b _Oƌ9D]G$F]~ZoەFɡg8w9*#\Љm8H2FOPmp~۷ح,+|!^2:'z1,phՁgM?$G-v WIP_\F8I'r@KȓM='ϳo' ZʹtHRoEʍGnfXYFU|PiYwEw55-F(BD*vnv6_'DҖ!n|-r$ȚH?q ٛU8O&`R" "Hɣ ajex[igtD-? Eh@檭_5@S\3\u唆H7T;C+g(sDzb թA_I psY%ujd){w`u+Gi'!,zU7Q^@eiGM;}V2Be`+JC|Bw5h?{]z=?DnX@a=1)ryw֝Ş,h*.,r$IaWjoZ׼i9qǼ _j b"2򻣏AZ-2"ᄓ];B;vY2eGnYv*^kͅt-TQHb΁bTZW+79*e)[: Y^i7(3Z{p<1{@QaV 3>>e_AhrnjӔ] 960fv1\\d' E5&#ը6察yKi}iF seݯH UEԷ7Yl2/E2 jZ?V[f+ϠLK|%IAu0= 8g,?(,$lɣ7dy}ϞJ/%㖰bynaô;cكi%L: ьdc#rA|WW܃9YAҴRd|yv& b}o=QE7,T!B % 촏_7| i~yBu_6"P&Iʃpa]NPy3S"^񐢶eiDa+aMֳ~lOW IFQv-27>iW".ҵ: a+mB5L;g3_wo79oͤglZ_B2NtJ}4Nv r PVaѦ;}qbX=RM_g[%Fi"?+kͿ!Zg \.6)*r ~J0VBx~[f⧕ZoCYHѣU T'9PpߥeHBj*ρv ܗgYlm=hR=~옂 gނA(kXGQoT(N+gʴ?j\!kb5ҼjGoQ^\QG "+vQ14i1KǺqWH$71VRy0P=Nɧ /%j{y$y8&=х?4~"BzVQ9(h餣T8MVrs̮}<?! vcS.sˠ_[՗DEd# c tHpwy]-h)j T3݌uzoD ([Un]D[=15 jYb큸ac/MB&&u!h ̜ŗޭ̐S$G\C!\n'Z^4[bumlREK=PQ%`y<%8ymMdl} zC(90<~2E,,VÝMQ1^" \>˔T7[*ۛ:<5UC4`mS51nᔜ[V<6{l|"Za^CYSSQ=Z437u$LIijR- ghG~M]ۇLJ7MrIM*C-(m~${{$n%3fm)q/g`I/UW醾t Ģ ìӔ 4n^xcl]!xxa佸I ]`$Z8`t mK_"|rwHA~!9@RPǢR"%{l{*.6Rc}%77\zM,WDeXE lؑ&wry\oWfwhm|PHYo%V"uzᏪf` &pߛ@%%eN lk>RݲRS=,glï9/SCƞE V.noCn/ RYU)+OUeۗq@d н%}:W0Ym&ۧԉq)zzdk ё3PKAdf3=__[z7u ]㋙ MRTF~Iي6V8\3wG>:I[xRŐsbhZ4gE&0jC(?|$E˙̥`j;8PF!0Wb!.,^rC*/9.6Ɯ~ds㜦,bQ koˋ9oדm9Co~8&TIl)kT>"mYka?lMgC+^7(Ʉra(t ctsdžU "@kЯE aAfw|kFu:ZΈWc _d E`7l3%ƕ1z vWEݦr%kiШ~J賶*Dĭ@ -Xca1rj oX{d d`5K*c3;=:!l'I2 C8u4 ͡@G>^,%uĂټ݋qҬM$[3Sj᥮Dc*1楚 @֛&/Dp½8s66GmÎ_Ra]:+pY& pg]NSǂWK&=?H.\32JUhEcvalykIu1ݜ¥0Q/xAgEVwr٠Z,x9c^o%?"*іT RiZl-HXJr sBQ0Li)&,!o̝Owhޜ0V.qv"ș+ W E:\^7\!]Y\+#tu.W0`処J0~5 ֨ 7v_%2([x.=q[hȝkt-j5ou>ҩ:5Z~z.M G==h>s'U'aW!ir)[!ǭ r:1i K-Y/*Ŵ}okt)C-#=&ՁR/f$$xnҒ8;JuM?{ Α̚9T5[_װ{nWywIMj 靺?/5'ۉgdT$>LJ8e 甕fhS`%;C.᫝yz=l" _p&CAA*Ć6@JV̜|02=jEɡ>,vRIBhu2B1yC}}_۰ )R>,FbD'RF猥nFԹȔy֢K1;+gO| L@fp>JZv cV+,7dgwx$c'wc녡gjEm[.]他&#dD{dӚSQ(xi%6(hC Ϸm^aƳPzbsc0ׂW؎DuZ+8w:B;֪Gb:d cn 9..xZrYջoy9P9{Q@{!H[HշͲAfO΋κ譖O0, 'H m.J#ܱ9^Z+ԻO H5@bbuW*Z|_`|"'1~#$' P&/i>{ ]v k>}*8I#Xm;Lm\K: bx>ĵ~|;3]^U%٭>hpﯹyEf<}-3{ P{1}st٧/h-_%FiHcf0T6Iv,Ywa:!hΊQBx/Pu: |.ha6,*X\/4B-Ҏu. Mzj]iuQ4 oۚ g.|{[!8KNhBM] 1;1 ?P&In_Ѯ)*Q ˱L @y(dVQ_<%p VF~nqDfZ]392OUp{l]9,ZAW4A܉A9=/ϊuxn&i #24ͤ̚Ovb/ 7lÁE86wl.ċy (g9rPWyK~~ /,#'Y`#Ҷ'tZ  0 e0ZR S }/hI,(z獢LACrM ^4PDz|5cJ]5FB|i4px`[C9Gۅܧav[MuSCQ;v`"()xw { Y2U8+sgW>if/(ڬP>x9|{ܜ($a9 \-HD]yM@=ӭKe'C#]wUtR4-:@ w>"J^m|hV_רK * \1u 4 .8s͈a_CLA86kH2?)Z,G~ϙf.|~ҾPD85"ѷGż?8"6Ɗ%E9} ًExb-*K6iwsL}BpZ/`]*E? ]M|\Ð ty]J*Ϊt$)-Z{QhڿC1%+x.z{r8I<ẽ_4ehLJ ]V$cN\`3E|4G6y,t/u̱K{2~d|rCsN=%mI%O/[mn=v9T=O4,6NtfiP ebX $|I2M<_%ٮ7aw ʜ_ČIT d߅֏L# O8u>Kd()A␛J#j#IMCҤԩaҙ%5{huCiGy:$tv: ǾaZ>881m#ewOҴqHF=.)}&h[XoXkTU8Ggk*kP8z=۳y~'7WdHPʺ Udp,󸵪`)|mQ`пEizMdfdݣOJKJȹ 5Z>FGW5X!տ~${Il ` `J!{zm]DX7+dB!:T1[ou,}f#> .?Df<+` `6% . ;*lKn\xe{r;$hk<ϿDK5M]t:Mp.*c`{4i)vA1a'݃@[$N_P6l壽(3i>r._8Ƭ_'xyH5 4lCmp}`hb9*q{zn 0YEcc*3h'5.6^l I)2z@bWE9,"j" u}{0 33~7pt~O QْLSu7GW2@ĥ|YE@ufߟIb:ed)#Q~#VHNM8fܭ\%F{#'PR^NH}>\/`c 9 ɸ0i'UsraclcMqy S׽;>cө?asmZTm޽J]3彄U_*NN!!dN Q(b&9~G1zTcsօIC9wGoø ) ,2h[Urq(:u%{%RL';'=6n4+w,.T=|Sj A #'LEm9uh}DT\)2䨿+f .M7'9?6NuP}_>Cؑ2*9yz0$M_mwXk!%2ӥ&=( 7c\ &湐nͲW5')UQpֶϷ>R܃ VƏu!Z?#'H9xWvr=1 o0'3{j~_> gϛ|c)H)]JmKF>:ruwv4l6]?ax-q17j36繮]@y+l֒RQl7ߪ@F,yhmNMZU!n 56( >/c%+X\ ]x z@E!Ql%ZuW- E?HX%И?_s5@\=BEڣ؀V([(&\J4(Peyt͖){"6BY&TJ/LYbjSPC:QobW-2qTpS&$2Bs]w|\Wb 2اNkͷ,egDma, Dy%}ziC"%\1Iyf;֞fb(ڃ  eep=e/kr5pOG9@(  SHeiINk6?f'Ou0.V(w@~SinvN{8%>yƆ@I~ËoKpMW9in񡐢~^[/>6"n_o3d/5xW. T:4G "Kң}m]- & xF:CE+XUӴ 3.5cڬ ȇjio|oX BYVۺVO˧Ryיi[ 49??^5tSVǖgr &Q36伇^Y-@b+(u>5È(y8c7Ed0"16FNfCs ؘF$r2?m_'Fco1z$M7{ @s ],K;'ʽ% v/-NLemlz]n? u}y3څ"Z<8޲`>onj DYxBK?v?g=f\fC=aZe4őpv3ߝ)FZ ג^vW bdf!-0k<)v0ӋmƋ*/Bxvώ`AFޤQQ@(cl5'?<Ѯ5 \0 I` Caڡ3*|)[+m`s?ӥ/]vW̯kJdRR-D'WSs7dBcѩ ~~l-c{cɾK 0YHo8vf `.̧؛]SkpZ#@>a {g; E ro QBtѪB/Te҃hCli]ӆ.잾Dr)Epv[~W7yDwԄpf;d0[L5fz^/zBcKa}#A%3 i Osߪ!N\@eVϐ,复?kVtXd+_Ku1<4<B³&n?"pl#l9yLjM& pD烯ߏTs=2I6zqW¹=@&hX1 ZPSF*$3xMSm*nKKh'}$Z܀Ckw"z: քmD~w9:D!a Vgr@<ݪ*UW""}xk&CQ*#{(v,_iJ<VBEFX+%NMXN5.6^ ~jqH==CcfǾtE|f}jtd I^y8 .¢@#q=4% z5ߐU%ХL+`;DL]7xr"XEv(mMV>mk0hG&rn{c@ m<jƀՈH@-qGJ5T>E<*`&b>Xgz~`/74dIjʟNG/ _aT"^V'}LyK+*:cE2Y%J$pfJy|Aӹi8 "%%cwB=7oXTw;ΆX 6yY(3ċjsd0<$S)VgTS|Yn#U.*n%$.]l%awKWIC>@xjkj[@B:y_N,zXAΙC]]60rʷss(hap"lZHz@Oҥ_9&?A\4g@N }6 6-zNSЛnIJ@'"Q牐B܇qJz867ΐOw zh6!߭FnO"Xby 9>X2UyDs/vV0U˯WVvJgP2b  F% qm.~QɩnQN Ş[wC߬peS]]`!HO >)6quf2Q#Ļ2^<q @[ , ǰ;JS!liBcCsS c7?rpRP샸3S曱#V&e/o`)^o !̘|}qP!]_Ҷ$S\b0\/i^&w~O)P۪pҰ;BVU6~ph#|0[̜߽DH 7{O:v*vdV+"d+dz+B){NFiW vBX=.h* *EM~@6ti֬u bpJ_&Ois@H8.qR+vY4A&K#xpeW(a*'. cN~4c 6Ty}Od2\, nmBgT;)\Nb:}r[fߒ N0m:k1L{;B{_0NCZ"\+j ؍ 6yxvs;O[RRv-|@ZąssrV7f֤]:Qx!DƇmP!tyArc*{:P#fc;ot eyPB XnU ~f\t!*i$EǯQ)_I[dc~o gx{?Mľt aI,#8p*,\]fKЮsH>2? ( [/>/ @[KFe>\΍M^B% ?!*_w'ƹuRo38*ҡ*F@;[!3.Ը&^)Qx:/-{<Xà*%ႝ|nK=l4?@(ñ#ѯ`jD;RPI-i1:JA65" u25[B\ 3ؾTS3J\a(`= )P$dJYq]XV̭6S 'Kʊ<@:Zѭ{orWrxE+SBu9SpH1>5PB.'ͥ$̜cA5B1?wLXS:"AσnDsUǁ<(>)lt⇠:^AsfY~fij4ulN|Y҇okRyX91 WN HEW<ƬDF~,`tyN̤7yzڣ*h~U.Eܨ/my9/A16dkA8o9ՙ?kZl2M2ci#u"Nt C:GrW VdyO>\iw|OɜJN M ďŕ3Ǭ@=/xq"HE 2n94+%'iv<_tSxN]Q<>B öf{A*ty6a;r#D!|["Q Xug%?H_Fyݻ}4v_Bg~-m=+ꢝi=J)P:T.O8PwS[)HQZJޠziMlކT33 M{o^Cx+Gx`  R"X T{= }_PO#NGơĂփRx"w_?=dYXޡ`R 1# 2?5u҈>̙ 'eҁHls&ׯ^re+SD}2 ˏ:MNg6S`oW(J:4-,{TrJպxCW{-b~T⟭ٗ30Ҽ6WojjD[pJLЊ"vrz@?BS(j'yd˪Ss-B }(/`t*,Him&=iC{xC/ օP]7nhldeGɊ|i?dPRw') ƉKBV\v*bJU}w~")7!pOzX`D m$'2#H2Ɣ,C*q;iuO~#z@x3\Mf$H }[t+ocTK)sI㈳#PQ33/۞[w=8462{!ob\AyP[+2 }U5 Y8/9P~aObxMOɽt7)|FsO7=݇AUF1Ͳu{ᙋ8oc=*ҭIcslŇrysCZt)DAŃ>z"D\)r^4m?l,D榱n$XvI9SXr;Rf]f鮧D*xCY7[I&Bt8 ;m;*Aj- nic8,1BX݈m%aF+.J r8pm{7)h".FIe_l3l_}jXĆ 1,wj "ƁSH p_">h߉W'yٵ>n wyrJ#Ȭ۪ /v_'\F9faOfU_S@`;?KHG+1QOǨΜS!0"uX7&Mk=U'֧Z 8ii.WB@媇O,P◐0Ss|ߗkW})(Rwx(OYLRruz/i\ߢ%j]_pY['e],c/eHDHbBzOj v">} 9c4یZ `DMN[!EE3i0`6Pa31LE=>R,FeAHjѳ  u{!yMɿZqI`|ŷuIvMՐR[ۍmh%ҽP0un9L`!/v!?]"FkePA$gD6m,Կ<1A/ RVkL3k.!tfe/+>Y1 Z >FTK9ZEJy MhmT8nl Vi!<d)'of>yMB@ĞNr pwt5-#rQJTKb/v1SՍjߕ$7_oE'" Ep-C 9fX-~bLu׊ 6i)w*6q A b$. >Ӵ+wOk@Zq#ᔿf4?=IBbS@ugi5,M![SƵ&0up) 1_8Y /q$wE& LCc6=}Ep !q 1; >(27,o#i%OOnQ0RF7 },xl)f);!A fp!l\ˑQAgY 5K+M%EE5o 96ԁh1mgʥ{ ")l^xiCGp$V6)KrR\˚rlޑ?}h<kijjesdy oq_a 3c-g^wC1+{{FTHPťqyyjPZUWr Ug@A׏R>OBhˬOH7+5n5. P"tH[y?Cб]禡yKm:5lPE@Vov@Rt+VÉQB* -h OKgz,%ıG%vUZ l蘸|e{RfHs۟2 u/g_U"g̫aɫrpX,+昡rsxjHУ%Sȍ]/A7NOwxR:Ȋ=k[n-4zrwD {4N0ʟ9}e|jwXM>+z8讳E$SU|='#0z.(Δ=~K%U#r$1s~eV&v"q/ٖe(>]+qR-uƼKZFuf? +hg\xGƔJD#2kړ 2:wX?С\[l%%jx\^=G AVd1 Rlsypze_ K=[&w# 6>Zm_s/;KLJ 2MϚ[ j6=)~;1F=F'$D"+o!mQY60h3T2"ʼnqQr1 L@OlʟS{_AtKMO޶1sv%dn wa}y+Af uR0M#\n6 #ۥ+aЧ迯6)eȈZ_*e[^=^OƠR,l( Fn?`*ZO ּ5sf5+0R+,gf#unt Bb2R׽ O:Gr(IZy)ƂmNS_vJd/@8Z,u6DCoZ{~+, y*Z|+-FyDND N(~[dZ>%F2["4շdB*m|4+/L; |RkoqCСo>ΛxܷjcK ND",SEP)դ/7GbpqgTEW$T>VB|K> nz%Nk,_80h-,m r^ F8&L^fz]O*u +`u~'.hI%=zqa(WV6&nrXqF)X\dx//}OK4GAM%aӾh4Dt/;hwx!iz}MIdՙ_McS.pt6>}#EϑMۼZ2\qbKtpC/Ȱ\)c }&]%3Te2f.w+M’I>Fk8CzqXfd;Q;J#i^=l, bI;#&0|@1JQL7Qx Fs};B|jqZo : Юl?`&dMy9U F+Q_?(vbgfA$~i/Rg&q?^(A.u20W{Nlǜq-2C` gNsoGm;M7n$l}*r^`]HDw_%kR~S1B~W]x\CaTmhp4bEy} D6h\I ӒB8'~K{LhiYP(SCdݵ&_ϫ,*aB)6>)QUFe֋fQ ,O=q|y(L>3=jN;\Akϲ&"0ίDH/ takR!1ޮXt=* ([GQ \1 dbQMu/XU@ ƴ$QQeGGki.UPVfWF3}%ҍRaUlES&?ȡbRbn,O̼9.p[02)buQJݳȟ.KeA, GR֗'kڙ!!~=Knj-FKgNOӢY,m?ʡǧR$Lvm?Qp.:JX X&{ 0CE|͎ KV2`,pߓ(Q2twÀ!!m}HI}Q;o5lyj,4Qj|ho`X9{Eתm"7z^~l~U?}ڦx^ۈuq ]߀@j5|gFk:"晛R\$lsS[~Y5ң4Z7 b9S/F3$\wi톖4y}3bx`ѦzYC\u`Q0YKEDND=dQ"Wm.`Ob0~IRNS  #5ʁ#0BXG\m]*ݡPSBzwnߪ2OJV$[=0VYDij}!nc]cHK7{1ʕsii$tW"7ppMe#r|]ӾF N)M}ݲ獡t/7#Jƀc<>U+#QoZ(P絭> 5RgWi{,gɧS )|Y{4aoζ_O˿FYCG~Vrf"\nF`;Ϩ "j%\a}ѹdy 1@gDv!$i:h)%.,&_ \v%'%n~^ <@y#I)9uI`԰^jF<7=.Vʚ)S>㓋< &ࡲUh&?YTa~0lpZlFs3C}&[hFoFW_Zfod\r6'sX4f]fԬDP/aJ:{V] ۺao{xU攀 ,u^ ]DJQ2RXؾs$ߚ_A|Qbޙ~LzvȤ7Z {>@FLeZ쬭2kO4&tsSl^`k0Fc{@tVE613ap*?HQAq590Ǒ.[Uq^^$s33l?S֎uQ㇭O@kbqmʒB`(W&(RPqa`5N,6{R7ƒufq#]Wi363iC0(qEo9cH6'Uyst3bt91(H}7B 8]<[i )|?QuFڱ~ ҽ_>rww!N*[us%ty G? G*sʂ:|Yz/Kd\al z⢚`w0~3L"8G#Qx:%_ b|`5t̢ƫ*s0P7 ţlɧnNC-HHqx5Ki`4l )G#x7E3x2]%Vh19<0B_3+= h̫Op~ڑkѸӶ8\zUJ}*rR1xP T?#k Wɷ#.> /@2QlN#1-:Os:^uM %Kr'0b43"J;G;ˎ5 =DO!4-k8lԙ>o#TؔH^bQ̌X^dx69 8dI\ܠAsί Lc OpW9lDt1'= qqj+96o.i22@[NQ;sqjlVu9!L "QX;H6;Sg7&', &賠ոC0Bgp&Lݡɲm_GtlB 莠Mɩ[{j!%MHD@Zvhr~MG Sz_A,=?nCLGYp ; CiS)ij=XA.a|Q]!VNlD 73$m*GEJw' `o~0ޒk+6 < R-w`-jMB?NM~MZ*JVA5"dT澼w؄+=xa{Yc uL{_CIrZ61t,= K-TʀaZly&WjJ)ྨ'VneK_Nי2K,aҳ"bݹK*H kG'YGc%?Y[eеSu\b-t]/a)mF/p5==ʱ1| ЀI[0/D<}5WO:r&(hgQ0>PmhO3ш>e%)א>я TJ/2q| qrh$xܦn 5I\?ݭɓL6T^&7"޴9noUQv!yf+H3b=/F5,>.$rdr}6Ndh߇AC\bH:uwMc&o΀eTsVo_^85* ;eldr< ^Er}4 qIBC}{[ASo1b`/vv]p oQd']*!.)*CĠh 0<*D/:k EHqc ӳXrK@% $ ]U]3bgX)V$|A-0-'AɼZpk*lˣCtۚ!)BTHB@*P8Sn^+F|mp` QF`aJH䂤ZuXWro}8Uˏ~;@ S-!-UѕviJaK^lRSOw !awqkoxE ./*>BRG1hDIez`R%T'y.|;n6g\ #M ELjϣNg>%SRˠ;+ `>PIY7gi@@́N1akFqu)j]5Uz"6"%A;@oW@53k1%)>9 +TͯwQzlLu*"|O$·Y&mZu` BϙH%vԌ>Ax*e99,`%a+GsoKL!,"3[l\N"p*~WÞﻭ=\YFqk>J뾣k|5FO#sGQK診C' PI&a)tްԍPltn K+f0z75DUz{!n!RM}NqJ 7]73c =CESE/tYG0ԉwD歮Y3;xiJ)6:]"jmk(Q͑a$=R8V׃3%tfȈͺg 5|gC8kkKeb婢LcSmA6uQ,K.RQ>U60vU)CHMi7Pĵf!gRAs)IG-B bH5͊}!-bwśt R=JdqU%{դ}?W4@N q^U ~]b`ʰKhX\l3 a `޼vTR5^ T,DJGR (V3^@hO|rjJ{yʑ|T5"q=ŠF[I2o88DF߶AHcqn'!SQywVh x^55x~Ǔi[ZkϿsnB CвI $귬++5UAe8^R9 y >Z%>PPr6n/Q A=m0#v`q^:^׊Y/n g  bj׽nYس)֚և rh {=A22`!BFk5yZSKL2`x-Rov$݌ ʶDX C٭%Pw§2a$. ] @rzHp(=@XZ[ qgX8"_w=$pⶂ=nBN>' t'hwp , mmdv4A{U`a3LܰLUȌvBnzeA&#N)ӻ1 OcAJ&+v&lrm^F6W%ᥱV ڽO~_𓪳 S2nڵMbplFԄC7A|b4k>&Θ uE5J}p >\S>BjܴL|{Snz!)ߧdyi @NOaJ/tL/9-m^| U ӈ2=ҭ 0AYH-m$,kteSNdX| i|uI?dbcِbS1'yBXdDg?:Y<`ÙYPr HR,OmJ9 {p.}'( ۱xNcp̞^H7y~Йsm'_5X=䁛X~ؔ/Op$(5cp"IhK8l[k?j5Q4f [Iķ#PT{(1v4l?;1cXU5-^)Y¶tި;IDeCuu L.L s%fQ\VӋW̃74%_;Gm0T :SlkA}Oa\+ʆx7hd~qeJ gZPqXD-׶<'r~|l^,UXb͸TfcBV }tE}+(9dIRͨGo,Mbjyˆ H2Ϊ-~di*}9~5tdsǑvͥ{>Ma5qZ$ Q`Žpӻ0'986±Y  =aJV/;,T?J?9a@hW&F2)u#o0jL02_%k>?a}G߈y)+mw޸{ 4q%7ѯ %i0:qU ̚~8o;7wr*~*s<57J6Q3E^cI?}Cf2/TFX}ڂW*SN#ޥÖy])U.ύ=kt]$'>w%N?͇W" W,b*G[ɱԣRVY4*aQv ti3- H{H`!M1O"8{l6o˗m]fY B&brjӁr.'H3.G5e$0rX NUj {)dExn}ȣm㶸 0WƀnsAss=tzM;[@\~Ь=%=ad]Iy+vXB]n1"Io :2El-+`8' Q6X#ws >^%N8BejYeW@ #5]Hyg'ga;KeVdO/3ÂI[BMo;&$v/." ;lAf]+VVdҢu'GaP&Z9nN=xrEj5l!٤eaa ֭0˫@wID3+:V_D1X;`S{[l6hN^h;?K\a8z#yP'F^PAi.f2`([*G (AzC ۨ*v6z=AsF5? +~s_ɶp9s8`)c ; _S 1@̳߉ٟ!Skd87{8 ѺCMwV^i^;hSXS[F'FUym~s7 d w;bW=j)IvsމJ^T +b)f7GЛVukD%~Byb:R8PP-h U #b\@}[k&/]4ͿХ`Iz/$%.6} ߈14S?E,r1BվP.^#8lzۀ_+G?J}U$>5G}$Q0,f0J*ĵCYb|>tp:5qB# l_m%xd\O&In ]y+hH.;h=  H"5~{cmI M1* Rxgj~ @;9{w2P2RwS{v?jP^(8$]~K2afYSQq(* ۄm0‡yxcRQL1C"#r&ȏ$1L FP~v]^s yrt돌Y)6chmN,qlR7tYvs:OOPWTdB EbyEܬ;^} l|eP4iڝ犧ZypjN7ఈ9LT4ȔvP昒BZĀPU:ZzTf5$UӋɉ^4 ]Q.eW^.0fWpowR} כ t{Hu"l"CuMYvO FqVdP.B< 5_btiBEC=ڧ F$DrAa'!*|%ooT58 JNfx¨*10/!\eπdmp$ 0=x9O=.Co#9^27]RO¬IR 9A {Hz!!=wu_fGPzư<=F|T)`Vp [KJ0<0+$SVS! 3S9b0b.$:O⨢TaV?퐖|}˒Q-ǟࠧ,6+˜&F{D7Q7*b]0MB[R"ՎLaU?W4[\W?KL俷䡏bKi/֭(F9)E~8 %ȃS{FVRkd|ijl6RjO)gkɷ7jƀ8:`]VEԽզŒWqU,2;E5,j3)ʮ3.jdAfa1ZNSܚ$>jڍQ|zڅt?2 풟iᘝK֏% !^%3ͱz||F?ܧv?.]bL̅u=#~tA Mo 61X/HRpiW9DAp_ aҢN97RPH`Z^ȶw-?+)]!XËܪ3m6/kTݖ3qlI+<wQ>0lK:K v}; am߶(BI, #-K1=ٜ"l_}҂ $y35gGYdH|uiF<\TV63y*Fhlz%O _v;.oT 櫦ꎧ1Wcxλ-m4 7j> ͿHpfbDpTͿ`hi="E- o11@Li8Sp/JIEh4C|cKv oܩ3ڂ? M|D$ 7|h4l~Z~򯽕ʡgRю<P[u}B/r*ݞ ADɏ>f!aQG )>Ko+npe8!]=) deI efHJ3Efs :ݮMĤyC|) ޹%zSyPP#ftΉ Uq #8>|צKr4B{3Ӈ,Ob~Sͥ\S=pҊ$TjAh+^#:HBc-$i562WGB` 8AI JUupIxo[\ r3[uC"Tt&糤g j.a=(e7]'Yw葂@=(s%U">*rPk6rJyZ>*s?cW{YZҀw0D㻈>UWM>;iKsXXX>9sςc݂ԘI@YlC,7|ͩ)4 Rh$~VLCB+E~d0cBy;""M`sf!5 P a?4 J<Xua{V[V>%i,0qѦ?YAGb}ܗ-;9 I }Σ{ԐfZv=/# Dn'db&%ћOv޼"1ɸÎ]J,~z*/݂ (zZ# EtV§ ϶ꁵcL/~b,a -/Դ{kꈞ iաK@ "y4itB{NY_t 4WYtơiN9C5c[U735-u|FѺ,(IHN,6S;mlC|R%Wdkq%8VLIU%cJ%{p3]^qC1u,=x `REA m֟mlf10 8Utp> Q/$&=ߐ 8l#7x{ ŗR#UĬ Qy@Ex U_,I][t +eL~%BuO|jFTS<"HsuaWr~[-` 6MF'7_ɒ`9\bMqZv#~?|Q.{'P,ёf#0({%zh\Nev&L0m~ғ wZ&xR)=Z{Fg*o"M3zdD2]8'>)- RO2ufmZb ssyȼZp[DǧhGYw.!$E5evm{+羱1IG T5 '[gCrSI^~ǰn. S_RX!%oxwT0prI=Fyb44x"yUcwgAa*ٷC3!(QβUV9ٶwJ>Q4Fܨ<6wAi2ƟS)Yuc׵; چ{*}kzǝi~D 9=XFWi%{)D1Э?<{ l.ֈ) FxvM/)֖)r6X תּO9E?8YHhuJ>w̤>QtEa"pT:פMwS#ߖJt}^-ԍx*wO7ʅȷ7]$kC kXwNIsVe]p IY*GYm H\*EF2 乐N)R(=? Hl?~9eϐ$S"AcS%Q] 37)EC~']I&sCq:MnY\`O}`o?۟w?oDXiDwhyn8jRVBGfȊd'1`TJ2], l`:@vΛSE8Tupצ;3L^ݪ 0bʖɉzϙY__m7>ۖy|ogo%[5NF/$$8Py-BZ1 ʹo.rm'_z8u\VI+:S&?33`['  NzJW|!"M*]*/(J|KUVUsԵ_Ruf#aLy-ŞQTZKYv8sI+ ǛCXS#u~Sw筜`BU~Ёzt*qEpeCϾrsj/zzxx~ʖqг$6u7tn/ɩG9$D?ag~W.=m@\+'+O1y&53 F\xqDCÎ30t#WC cF;ExCį0+0٨7WviߔgxjOygx#3`񾊛7] q$&߳iG/@8f7y0[>ha[$͒yqdWnn¨ B!_>޲?nvxV!H# : .݃l-r /0ֵd?Rac~ʥY[,[ΨI5 "^bP#OLN9XyB)Xv|~D{`jSu(!CmIz{;`o;yǠo[T ʘ7V8e%=0͏|hdN.LFzu_ %u r[_"wZ^`Ӵ8{ȿuSq`4X|,j/(]GP4rO&ˎ|8yuyK@" 1{t3Q?oV_ԩKe|9~t>dM3933.tr(ΏK)%_h!K;rФ1B@xAĠSiy^F$Y~ͤ%>q;?VJy)s0t)_>ai;4`q28H tԋlz+=3k=DOV>5p9.YP2,Uh"zϬׁl#hjuv*Vɖ+7d#۱KW}hߙ!4:>MĆ&7C Lh+ò?rb֊c!$#kD7Y:$PϗZtS"}5:3#vՄ%;yE(9^&A.+ 1BT\NA\T'oWE=1Un,<:ַ6?ߒMd%6qNixoWĜ+a SkxF$Ԍ?_mflm|c ҳS|޽#UD1]) TW~g;6&M:y6FwIMꞭ୴r1f0/o&^TC{e~g?cU8[!%kxqfO!÷w \?7=\kS WbLDj2ǝz|V3sH/+7Wk>( V(v8yGK쎓itdJ+!t;DH 8yP_7q3bO_ɛmj%JŸ_V*?-eor( >'fQԴ'g㱜D*Rkvaq*_or!@= fi\9S. Ujg`fG",2Ҩ]3twBmʩց?1U[& %84;ʜx}p 84:岶;k4:߄9 GYqss9im,E߆A EӀDž_Gd~(_4kk6۴|xg$b#ߥD9Á]O!g{ի',fœW% saэV=p&#K!Q(%O3_;d!rS5zsCQ,aڥtݩ<1-eD_o.B )׉,HW# 12*8{:bdv 1Ral|/lƢpVcW8I$\Yc?h8m=i|GgH᭷ĕ8MxA9LG4|Di@8QV/R,k2b,䕙a,"MQ(]Qk~*Bʗ-H|")+wsbals석n o9Iɸ(qU#K$Sa b}03="jWqp1ABeShm"z"fmeG 47qJ991AЅjO{ĩ9B?}%3shn*( ҢvT;S 7QӺ"d!fi|\Y 9:M_Fa<lUJ> |yo/\R=nɑxB; 0,59bG9$S3I(u᫧A?!1@7IP13^y4N2w>(H¸A>۾Zw@zrݢ^SU=Ěm,9ybN eF 4ߡP$4u@Fz4<8P,K[UI6=Gjw1NC>Ba 9v>n|.,ҙDtHhw~kzv %: 4M@Qyv@rS/z"r^Ceuqb}V#ث.UҜ= .Q ׫ϺYWgQ.T7JT.PZƆl*a'YJZgRy[gšQ >B2ܰ ":4w4j"FνjjքWb4q-J(v_{b,TP[&gcT8ANawp(۝ \ طQ9dbN ߎ|C]Mck$ m _r!ޗHX _6̥'zxFqy{w0$xtCXMgPm#߇]+ S5VpnA+CWDos*2 f~Q?y:K^1Jm+iz2rG=DtIGE;LN?<u;yQ+~@Gƿ @II2n rRP6DcmRT3rLQPܥ{ ۘQ8G|yj`Z손T7BKɦ'rSD`-:QL )MAL)7u}{y)7aO$pPf/mb ㎊^#Sc`)vN~Z YS!fPҝ)W)?W&~[L~V6:jtfiM4 GR=w^΂$-L68Jf=B[3MM`^6sE.j$ۋ8|v{IQLDFfi0/'P|QhuEכAMcp,##Q{OBeV5P xjѾma8T`o`ɶ8<f2*~36<9.+8}WB3X)> |悱mF"W|Ǣ]%!5:Nт3gO;>Q$c5C+4.H)`L0^ F5R;H>ۮ}- [{[35\lkˊNoYbβ!HI{QQt3a$z}2zrI%3vo Z;+G(w+?鄀5 #H@0bќ٣.ܾ,P(؄Dh^g ]?فZUz}3e`m=rDQyEkJP5 G4}D⧷8 ~'Ĵ~d0ĭW@&GHbrS|Z (JoB% !u^1rT8ZhrDUsXPS-z6la9ls$ٝI([3&xohs ?*H*$Wjr4lF0pRG}b0E>7*??^t*ѪE%f?dwj<ɞy4pjoaZSұ,^']c 0~!O>dfe7أ2jHPp2Np2=s٫}=~/ (y/lȨ8e#`nL03B7~Kb dh)'ASSY 1@פ le֪{SPjq7{I2B&Lz X XjZe}F~yTjI^PN;a8 0\Vutw&0|ug\%v4M*II=m,W'( VU\Fȹ0QE^Hl% BgRaXl'FRy?d%v/u6.w[0G:/Uw $㼻\} nZ aawMs>"#sq9dX"1Oz9Vpq[PY4k|ɖYew+GZ>#KpӂgABQ%lcbLYdI;KF$ynp<l8 JYT8 xFWa|FN7/(=5;_1M(Nb1hcaE0f9=0]*H{^vy20ׅ(&2 \ zJ]ң򀘪GPڋG$JE ߂ |]1rYձh/O(h's0k#稷2:[\Vyv&}Id[PTLBS bmOPM,;> FE:\~_M1չƀ2b5ך);#_~V]" 2lH[t,uN?ѿ2sT=(%vY}fm =io&XT1lCL-Е*Rtp& 5]-]>6E'o]d#l*更#v:+Y%K v$i+{z=?=&S%4} zO9%ӿf<RKUlCO2V%4]#'a u*ihD$4=3"OQ{aBe8R0kqH#r]It5|ft":Fy_4U?A'kQY_qϩFۍt&;v;G'љ%$ s~X; r;U;驪'R(Yi5T4V~L/$秿J:adQSXC=kaHP죛OlȘ5~nۻ#~}%%a~ma UwTF&P1Ac ܇\(R 9D>Y PW2嗑<1+spK%C+ÍZ z&ymH5, ":س42[_̇tvԆ b}>6\i}䐚)8ЊpDHkT~{/lhhUb,(U֪﮶%[6JrrɗU+/ie.&JAxp2 { MRnV,.$  ;=R]pnmC mac]?A^ <浺(\[l.'&p\=0Xr2 #w`Z赉5K;G౜W0i7‡ݻ䗎ӹE|2CwFi$W 5ŗ7G f@Ƽy?=c(ؙ\[, %:yLӇnd{mi8av:yHF-I?`wc[^r۰!nʥֵUvM8j)B}BoHG<C0a{ Ǧm.4+E[rv,I{phK? mQ Fץv|׆?ߔ"86nDRA`JAU?oۈb>DmJoKnv0$o[![ʃp)xQ|-|^rט&9G>Nke * qqAT\xzok}̊m;Kgog*F͟ѧ) ~ Hth6*|fSv7 HF4)QG,|.FEq}L<,a8E+.[8Pm4.<(hgrغ> `76(cޚ}{t;!s\Ye%ܥ]dz ;jPׅ 6;26G-I^I3T ?PŒP3Sn>iNIS {j.m:p͘Atxt-vUE_|'w@э0*3aԢdHXa#}\%R= 3#8Ŗ[?5JЯxpVI-'AmhT [!>Ot~)2#ȭk4ncPb λ{<6]EI>?:V<2 C36ʴq0PY[D!\k he*`">H qB?`&Þ@Cl%K5#>y%V[[mdnBOf R ?U޿Ci!jxII'(鄷0kllR YyAT y roJe`3Y=yP4"c`VK|84 9. 'Myz=F & ?9䣍;J]:{fO-@{(kB]FqN(lU/g$kP /Xc8cFi ˕6A³}a^gjn\RT?1.G #-G Qʼn;:^TEMO=7, zLex%׽ hQt"%sEYb~ eNcފ)cDٞ#}K{HsXdJ'Io%G zU/Ф<*"IZ:m.i )!aC)2.,&PChzg!źvX!*8fP[2׬Uw,Sw<(?ҠL#7GVWVg8ghjckE f 6gzp9`qvT Y (W{ܠ6Xl+,#|@lKxX#3Zpدq7 @s~bZwZƵV4$xvkצ?'oj0 odt@H7ow1{Ɋ0`i#7q;[xrQWC-a^aHz-K嵤w1M 8;K~=Dr0 oҡ0DeQua5hwSt4y8V_On1^xri)4)ak"r{ ɪ9)MIg&M37*p!X#䷘5G1#/HtTi |4= ^2Jpӂ}M}sll?mv3x,=@1>Y7OgRC87(;U9jlmc5IgBomSXڅW756_ 5Z'u3{hý#v7_O b c IbneQrY_"!N’0S5P=8Ey͆PE\kkX*=u{1{8M]c*߶{ֆN'lΓ& ݟ* 5~Oj yB(aςdauvް}GK!Ka_~UO]ؤވHb 0,7rC(YPe*娸Or]<>?7c@u?[IzJ-T:}fz!G=leM+o&O}?6fibd#%W~zS{*]_!Qh 8c H8\W#fj2"iWB#Mdf]m#wE]Ǘz`!gE& *#*] h nR OGpS%1|;4v^ӾF인:#)YֈHkXboCVSB'h<F wdKb"[{=TSWQƯ )Üկ-1aRT:h"|!!+h>k?;R%`w( [B`kA<ߺCf \yy_frKϒHfj0, hΈ&U>QeX):%!<&<M^1M7Gvr7͸39Jd孒C\|I$,ƨ?N30 sXYծJQ=#0# fcFA1@> :4K=d~\#"\tIz1bϽ?Ƌ^N&8\tWGJp{m{{=*< u"h< uw{y<i@>á1R>)%'O[=/wbJL \84+^!.aJk!~}RUE! e,HV/a.鉱,ԤvK,7[/ CF)GL͚|)Acɂ S5 yS`_!;Lycb4# DՌ V GPI2f^vZb͂ɄH쫑~^h *5Wl{#0aԂﶖa+Q;&>X3gJ|d /DT4+d*Q>g4\ŸAi`2!Z!vyx>T S9+z7Ǒ/{AtpSc=C9#1MңxuVz-kkӷ2Xp`x_&r=2T`[N*8'<jӦ! юC'gԍ%a!evOGy_q$ۜPf?9&[3:*fg%[;*EKo(rۑG]H=hNL"Au+2< :C&$TKIT WYfI$sXǣEZO\ \mGc)yIy5$o=Qɸg[57ᙼ_lbP;tfº 'r5r}]tRѻsܱp00ͱr|(bl5^c'@nOŅ "3 SDY?) Nrnyev:vvߝ6Re9ݢXͷ,HkXq3@*)t|Hw@{rB, ĹC8=F#4L\TK(?y6 NЎ1HI Wݰ#K=]Yg;eљo ˷Y`HZ5 'C@9&lϕ{3?JjVxS\ecz_ύraVIsB ;dRQI*\[g3!ǤQ0L)ɍ댎܏>o#ZqD SA-FtLKع)Sx48 cJBDe[*y6VoYgG:<[ZHtD}ճsFi[UdmNSL+ -"x8Xuuǻc . SVf }?yN$62 t'!as$Ch;sgojn#0D*DqtG]ԊzhwBW}| >p9 PTflG+.#']8|tv j`Eh3qbaz;7>G^I7LaF y ԀzŠVί ьz2w -|r֕)%cX oV{fK[:$K]]r,ȣFX۾#c`8ynKR^<"8rta=r] BJHڡUP.XF r>rG'⠈ByA Iv*Lb ,Qo-Yzfr*3"@!fm#^M৛3+} Ix)]<'=9$fteȿq4#GOGzzB *נo $Qҕ zΤL/c&+9[fk(,vl)X4 NUfam:|ϭ1O'Ɓ{ul 1-) \M3*|]:,BX}=K,?`/=8D6 Yw$K^1++%x3*:&>lcɱi>SL$2s^6g|/cٸLbjՄ<&`#&slP;O2<^vAMS>fSVJJuxk,V?v?دv(xdSr=@R&tNsyn DqQCaȳcZ&NL_TA۾ztHnj#2VR(T$My;T^I P@y,7= dvv("%Y p%h*0_G $EI5yT^S4? 1KV3hh~cݽ :=~&n(k7x%3[mFWsڶKV/tx-ZKdz3-ECM&rGXe[{yGy9A¤;w >]==)õ%p`91,cxI_PugcAMBgo_0&W`h;WA/^E\'0^4\TZs^ty3>wgA%c>7xF:e{6LM~R!/_4&&Ω۟Q]<Ԝ(Jw~p罪~?=?'>D}>>Fa dmZ{$߄LRtL%@DvɍR˾,˱KW AVScBa%ru/ $z6$m$v~;ſ@FԜe@Vtl-ff1+D5'sBڈNj15~!D3\w82Cw(9@P(>XVnU1PF2Ou]H1c_l hA|BS`t{mh{\G*BJWPt1w &$h\ۖ'U+o%Ù;x#ӓyCCb|KAa$>|H1V}nvnlToS9s'>v'A*La>J.H@ݨFW[P0?!AI+= gA,\yx\y g(:p0/d*3@<4[1UXMi .|@޷Tvб噠 `nSvK> }[YVp¥Ը, "՜u~lAE _ $@,^E;{m9cyvv! 74uXT,הP514SKQM$D  鎓W~n.#>Sd&EV @SqA d>o(Iy?G9j. s`%΢OF*# <>"fbvFmyߧĠ S/!6, G]+s̆De"`3<S+s:](cmu?LWf$E_jɀ Z< iiv`泐FqLuД[9w -_a4zƽ5HiCxV\i08Wdki3Nwðr #@E!if+__95 i38m?uSÈ1͓]+W7= hShJB(_*DV@Q;I 1wq.GV.R²<\UcMB).=z:\Of26vWϳ4-@D U%lٮZ+kuMMm:ɵS_ЫOjyxP?ǼƵxD_d=3<e@Nns+w1ze0GP7CqM6 u+~fU8>w3Y>io@:'Y *9NGL;훂oM˙tᴈƳ{ͻ^{~ǂU-x7t#*QUO>c y/poVy-GAq\(@> ?Pn"C"Z[B)/jw/ !!7<*jHѵN.$'(NrPiF…q $|zy_bl޲V˜D{M/=_ 8-ދ2e?K<|ǩ &b '~vԅo(PЃE =Rh?RVb 9'?,7 Ølwz:ۥ[1Z @;l8ƿqx.AHy4Io,_YKyw-{ؙA1(*鬓b:! c2 Dtw| G )@*LS])2uc#`eS/i`ovP@5=LǍnCzd)N(T L"/e5= DhwOCJ5@/ +{JLLF Uy3!N*?i*?l6,2 YGb۾j:p#/ \q\qU0J YF'-)%h az.rvo sKfıI/3g>5;>qO~IVi(z_sy'B߬keƺ@oP|3um Hp''6(qD:W1|8(#P/˻-pM} \Iڤz$I4&FQњ=ghY,hY}?I]ΰG^!>\݁˷ xD?h3`dUVeaalUUQsx㜺ENIH;UjFU#9 ?V"wu *o~1v4=Z{n^ V*-j571)N rV<`0t -{P% r+gpOS/(TM)U0hYXQ*ˤq21X[`A{~ k~u៦Grz:<ڡNeo.(rP +)i涜2kD?hĞ{.B8i u|? Xꊭl- 3Mtۦ9SuMKi=pD]K,xkd?Ax7ݪUs8%f:tM)@&KVMN vv '4g3 HH=mkpO~-ZƢ[s}ЂrkyA" nuv=[1C|jx2<3ͯ3n1v){3!ajM-Hy`Tʂyi[;4m(Hd<@nJ٦m^+nӰ>+.޺k:;g=; ֫B:?U(л3) 9AvyۋxW/5bˑz3rg˜;6}Ho=RG+3y:wtFLi"fInDlI {.k~L#.@S&NZ7)LBp!g75PdC:i9gɉ5m8gtM2z 5()<Ƣ)t Va&˩{X 'obC81Z-g9Zd l.VR-ʑƀxX1 ;~]p[ )ʴÂLh9ѹTQ"Lݏ`A'֥1A\![}aE? 3>ڃ6l&鸛/.J@=V?u2BS3 ^ր$V'Cdig BUKB,qUKЬ mpHO@^ސ&wfJm /0ˌ?ڦ 9k1xWQzJulT'QኈVW57Lf}A;{dOG=>?;"d9O3c5u-aoHlq_PߊR0T s r~p<|uZVNlytG4[' MUOal:*\&a6 +[u"3OX0m?)҇jio<[mNX#E{`bϬGrRU itHX7Bj:aI={8IɆ{jdW4}4CQd0zK*^tlSK~ȦEy=y*WSG1Eɼ iND\QA~zӹi(ykپ|asYт ck 3T` miӡڦ DghkAƌwXƔwWBD}G3-*?W8OMG V4uPqV]XPG޻O0NlVТukkWޝ8Io=%)AGs-;io?Í=t>H?E!Cצ3 X3F+:P[չiy6{hrqS=+`wďiVN-5bK"+r;3c" ǖԢSO2W0+5YP\t &5 Y\ONe!&v~jMJT;Cm%?1=d__ bs0M$^3BpAcl!eZBwg;2؏ak!(bc>lW!:հִT*mNmAӋGȣ:O kk@He\)aa^^=Վx4iS xF c\"iՀ:ԽMSYk J?QgnvuV^$mJ]$zֵa|hy?A %l}kj"|k}_xD>uנP?VA \8U{l UG|Cnm8_g3N|ĘޫZBD `?$ޗ09])J~'s_, ~5$Ў;5v(bt)$ "K5QJjmoE T)&y@;B9)/YW4M5ep iu2.L)z1XR Ep b V6JK{uF.z.4С2}ulC=wVM*=#Ը4Y~)6E`|;aA`"/|6t;0dW;x o]>0PpbC9aaD>%V,0@&cd^JA{sy }MQwd sb@,\$#g ٿ.'&>3U$ʻv ak"2Aiؚr@~Y6V5z*32\V4r,TvkPt(D<M-MEZR,C0Va pM^fh01w6_kioe' z86۪Sٶ V,c@ˢ?+2"!;L0.]tP!͙}%4 2FX88,:·N v5nnjei*E-6F4x)סW.v:ZêMyUYKt  SLMKrN$IS8[K%G Хn֜wpt=HZD'8ȣ `(k}L Zr}pQQιPe,nr"Ƅ.3 x DN׆ЯwkR6`DUޏ.5~N|``l_;PHl(bpUz.Xg%nmYp~ xMgHkgKf+w63參;|<@eP_xVŤ4RHRI5w. {Uߓ]7xBg'Xf]EQEqvXّ&yz[M kE2kKe" u .!ă&PdẊG:6)u[ϳCt(6Svէzw[OE'҄UPD"3v=/R,-AT bZ RY(5jZPFybKHuƉF^X2ncdW#@*J:(̾]:\wg#3jDׇѣzI*PvUqN|V PYd] d 7.=Z:xL[l]=):O_/ z)8[}K?*DoC`iR,Nl}M'-^$S>Wk :~|?dF cPJ T N~WN.KNT(eт+B ATF6k'r\iu<#R=Q%aw<?b| v*' If.W {\fyN4r._&Q肩AUxeR4(ź)WKOװa0T&OfT@L͘]<+fˋ<ӪM0;c5¤QnqlY!20Ǔ}IUm@N JCZKXun[_}Fq]g=oS`KfCK\Eh1/mbǧ-Jݠ[s5ubMx_<f5gN/aN2n_ȻjRxk 4 9()gr"*rv:ZafO}zvf:Ӗ#t bKq\>$iQysEsVR nG\a7C:osVa~!'ITᅟbײ! #ЛBfѱH3Ǽ`lRIi j\tP"*Zvp|ż@ GJA^9t]hY-SǞÉyxI+T޾"S9eBo( "iE Ũ?MCڮ\_b(K׽ Lyh0W%UQd}`4I}1\y:uWS -AG5u17<[ 6m BS>0',QK`{뉝<(^I )1ظRH)RH,>3͚6q 10^Ar.QPCL]c{Eԩt @8/DB zˬfrMزZޗkNz?Q ,$mt ?+G}WOU-7sdSi 9&j] X~ J׌*is}77z |/ Hdasn /W XIRa2ä=B/ }_ݼ1\dl#SNPElugKߐ :}.;yZl)i:&gb3h2FY})ǜ'dfy~E9DBu`&5uOO&H_UOY~{3izz'] G-&x7'RJF5tFe"U&YWhFA)6B~H,  W NtHB;a4 h7䑂G}oVբg|2!Wg)N'orbhu1FWƃ^* E"?bm/ZICiqJ8>s%䴬J! = Q#1ZkȤ)޴="Hu[emFZVn*O[Q}A/s3S)yGao-)x14I,<*)vړSl񝥏~w5?[0!>#/sEJN ̖Cfڟ+6X%JIut,#t7 DtBc|Ђ5~lGqiHMǍTX/m5 "\Hw6fzOꚧ47D8i{R2{mOq9C6Ppq<a:6ccJgof[=!n^ʣ4!@khvLl%ͦٛHi bl~vX$ ;@@})Jv?TlV4&2qe7P˜r*OG/ji }b `~ˆ'xjbO+s{5tyРƸ]ӦȜ ;i:XP9/ k2+ÇzKƓKwJ >L 'x~"4@\\:Dn(ts,/3I6"h[xM۱ _ l$j,l{Bu9j-[ j]0r݌Ҫ^UB١z]: Ԋ42*pivr<(hM_p41Ri|&o@@E/Ҕte)| pS SQZթW.1f>D/LkN aPzFy!e T ߎGa#Ø1˄1>ӟ60|8PΟZ?Qw(ؿD%!XTk<FVY>>rBD*mE_N^| B#w6jyqj*ZuAE@ 'LO|U&cQ ƪX>(stvL [G^幁6P{y_ ύ(c%ڈ!/&\Sr_oc/#DtʦWXCoC}[ kT!cn`1Lc*Ѧ"\m Mף =5\_%Mv1<s#M)蟌?Ʈu _ǔq}I ڥI=W{CINiU>`؈K|A*g?_U>D;"JVQL W t`>Ȓԋ4q mHĿ]K_qIusi HTc7vf3N)I736y`P gZgl sQ63?+%@_MР ԚU#YD35e08DtXwl^Dd4~B!j]e-yFMG " r܀C3;xN4,OJ187=Gs˺Bi0t' nk0wdM(? i;KUsuiawk @oN6p1WֈҺXzAi[N;k"X?D3<Q: ?- mUYb~WG,軴 4*,R@c2_{*wYcD^hKwUJJ(>ucZO(>; Wlw'284 kY޸1^_C}6OWmB+j!Q2oǢ-_ R%rZ5URfUmitC]##;\KRǡ->&vR6sr1GB!9]ds>6=*d=: "5XKy? a *;!J}vsm}u_M't1O2YL/ƁgpXZVu T1}k P{~lj-oս24P簣Zle /D\w7If%t۱V U {bȒʃl>sx=ex՝#ʖt^Z*(v؇#&yu*Pԧ1@$Ôa|R8h%Rl!bM^rY2 ,7_YɵR2tXpx}{e NA`,O[*1 ʡ?w2(SaaEdOdhzzCΗ-FXC' Foap:yOXz,1{tڽ)U;I]}o!b)άN |I Z WxV|{&~c1G!-JHU GleI *9(yYYh(FH[oضYr;5xnBk˝xd"}EUZSY6`~ ɶP).<`Ԝ荘/<6w=dCI}xQE_seC\.FȬP&JDx8oo9>As=W h) 5L^MAx7EYd2pᏵÙ-ƥwsb"fyIQ{-;<| O_yjQZqgWf'f#Kc71gl]-vTb־9st0LPj_ݣ !O>v1ܳ#e"X.)f!/#dPQ+0˨?kgY_orh\eK:'kJ'KMRՖJܾXe#jtAe@]٩tr l4ވ Q_N ÷E})mƂOYg1\ճW1{%jovTz>)s5.% )H$hvk7ϫT._y>+|I_R<Ê oׂk haHbPRpN" Q&G'iyAlmj[~ϗ{NcK w-QYpQ>M| JB<S߱I8Y w'Ҁ(Rqh_ 9Mr[:~kz,8i_P#vRx! זJ b 7gGmQ;,<ʺ$? {JG^:Y Fԏk{$.nU}y@9⿃N-` q[\RCš]C"׮nXfVsHkۙ`X;q{@#OKvQjO` dapDuN~!ϷUdT nabd?ߜ}v$#h=ti2O& * ɑ}r$[)8KCUNIs4)KC~ZWUי~r7U@--?S.ѳVc©38irQVGO՟r9jqL:J~D*$؊ƃ%>Ѧ %)HZ7!o.Բ1tc'= C fpxugxtP:ɂF51𞮣HAh9bsZ oykE{m]9m5N$SKz5 ~RGbN3XԶVu(Vp\ MQ2͇i+UUtm 8htBTN j /%;=獔{.J9(ѽ?Zn /=NO2_TҘ\7͊*d3ӖRF>?yOW [+s" mG`9b` ^[2 MC h"݇7ަ{ұ$C>e:{^JuaJ2Jm [WC?qDt˻';Ov  t . )/"ܭ4.{3I0`?Q@i&ѽaUi-)Ao ;*@J g'>ף|x܃X Aݨ?ARa7qq{B.e0 w1.1R2leN)xPy"ER[Gc=2IltYxZ{IkA8]:\M&V*Ч5ѪۘL Χ~^JZM{*6}upxkV|{8({xl^nj]B|3oȒXmF9uF~-fRhb1kTji\ f;qӑש$IZw΄ r?6Mod*심χ"RkNB–vԵ \*}N#UnO1 ah\@> T0̃yaƀKx֢3ɉz;_e<[^w1 H+aEU/I4}rF[ʌ?pesy@v-0UV(wy|Dw74V6W_- ``H&eСU &C(2E7hr9. ?gʴ㸅J4aWzi\޴X7A)q5uڀǰv TFϒ٤2ݰRuA-"YAn^0}W#Np=iAGpcOWF*6,v{Б J;hv h=ٍPSGk'ȧ-(CϲC_K/q]z$)jL @4cĸ`-|g]B3FȆ|^_ -blt*Egֲ->1X>Z z)M#ng_t[`X@ybEPӀA#`!=׿d \c2;' j}j'!"ʃF{S-s""[o:R < m@I l0yI;`γ=ǁt8XTϱ!Ax[s)҇mHhb1j&ﺞXs?Z˕6W 3y=rޫ(2s>‡ hn!T6?ƺEWQA8W%KENd"Hb!ݼ҇uk I.{ȝ_9$(T)h_C!&G?@>{D[Įo=uM`-pޔMą5uvIFT‡cj؎#S,5h x3Y;ԵWFAIj9ôd[TsS~]a}ڸF;Gz̔ߪr<9's_=b.a*|@g%_X;xp !h3?o(۰QwWd3.0rFdžJhҧ𪤦؂bASoҔnr]-U3թ2㷾uDFy6t|J4E+#BǸq IK6C4Daf(RUUEF0L3Џ0EGj ku''# gt#04O,RUSj2QxuWޯQ'ߔQ"b'嬼0CΤqmfE"iB&~x"WyoR>[0W6р hUeqPܵ#5[SH@Rh>ViiÇe+kl5Z%8z;+ڪ b14)bC'V;9)NJi $j0,hyг&ydg`a">yaQR{? !%8&0-x@ZbD:}|9t27hzIk!BIf-GƱO n\D@X{jouYaϖaO|(1ǃO7LF`IKlRv}02^I&EDjUV%wh.8}SA^>kgJ_r/}V 8[LSxvUm6oPLrԗQV6-׆NPTMp5o:gi9!P5С*6ie$j1/ k.K4_\kl ߼%3pğp6* ]گ6[YneZ.nH!]`CGni$#L?C[UZrVH8{,hJB;t'캰><GK,o,ҳXXG^bFS_7k[U+0e"aY.X`M֨\^fxz 4]> +Cɔ$IZ,w!`S6$d͈ JLsQLmkGx+{.I&Psٝ`y>q ؛woMD!~9N#ǴJX/4J&z P#Ø5D,:%ς_}"ӂS$k cE+Q WS6T0veJsĠܶBT?)iCD153K&8Ē(..GD=7cNПzb)ZN/^37$39Zt{H-9r?&Zm0jf j=i[jv.4G+0a3"&gh$%Ni6B 9ȾHIt{yGuYopZ#1loSyx|:nXQ=O4sġ~(rC}+d1|UF)WPV6v1\Ď&zjx{s~{i<&)҄F<'#j'Po5* hגl]?_yݏPT5_z9T^{,~GGJ*Z"%Q@1@WNTH{>[Al]-m<qpJ~ـk:wYևOPP4Nl1X  E!P)ꢹuÃ^u (E) }wFKd>2P2,' I߃߯Kƅ񰹰#_6=-JOu 3*ꔊR$S7 _z%*8n@!'zdF;񒉰gNd*L5xsäK,`#@'9D_H2Upn/Xj#!WF<+ _ 2hA)*?RRs'C^\ڧa|Rwi+NH.YY̞y`ZEX_F+TJqA9K`R#)UMtECЬ ^2{bX]ka9ӱ洓 [8e!_"ΝB' |b ?P4=~${9JUR*W5ܻ 4?wcd1o]=IET"=_vdBk=m~ f5s`ث= ;r ֤C4Zv1T KvErVr\`fΕZW |$?6%Uv8\LpYcB=Yo=da;h'-oP dz<{JJcS\II΅lMXKXh= he})s\\\D箙4&C;5Z>jccL3<̜8W%UKb^aoibb=uVQCy,zm*M---q_So4hւd_ ^wo:{<Ӷ̢R_A$qS=l٘[NJε<1!yy6,m}DZkT. EmhAۣ(4Uc:X[.V l"[ 4]RdR?rq(&Qziߍvw^7& u{}իڷ}% Kз3S*ŏ !bF4y3W˿I^t\#<5vP5<\wSV@,'!50|+ʖiWDiyY<&E S>y5I4_''UuXqꓘC+PI 4X⭂B, C{Z5 9Yẹ(:ƹv 56LJ"k se2AlT?; ȋ2V\݂v7JBpCV\}Sm8pb!<c8q5(/v)!$B\WV=B%a~V^Σ:D̥ߑ WBdl;t(< k/侀 ڵ?Eî~]Lq P oDn`KX5uCM9+x6"v8V7 @A|XN~#6'WNH hZ3fbc ]EsE|^/U{U>ώqx?mMpMۛ`W,vu|ݡkpEJ EpXxVFKoa![mxC(JסBѮ!UCV6E"~>.TvY9/`$K:|i)QmLyܒNMM+Qx~@4F.|Yp)ܩ$|7 } d-1si]p4`\ A[Dd1 @@GG-A?a] ^܉?qUA ^RF$ 1pQ;uoS ^ȫq{/I&Ӈ"-oZ{NZwKp6v#m:n^qgbP;тAit?5 rLJkf7gkmN20QG'$VO;j&<Śnޘ{:x#pE +uXIMNQW[5虃p{K'|e֮${I+#1}m~)k {=a.t#D<3+60esܶstc)~Kd6ۇ+HZ.w@yPk4 SiQB+q*p֫Fiw_lD J֙r Ҹrh ]TKU%o1rWfU;͐za$9byiQNRCE}8BSpI"e"v3:]a݁AO-lOQ3}`$ca"6ȔIftPl2\=5!YufN#ZGsr~$ S01n잫`%  w6.2Ƅg!fGts.CdnmYc7XV+:J즗g[4)z a$WrC420eos%-0c\/ݗ:_Ơ89eVPZv`4s2wMOꓼ_']9@+0@B9Q >DmJgeY-ݝuED@hGRĚYpʩO(hcOx%ϊ 3|gjEѶg~doܪtv43B`jc 6\(_nnԎmjhF[[g3|Rk!)b9N]GDžJIDfZɤ?;_a7j3ɂLsHGs˘8KvQ61 7n¤Q ;k dZcbUbSJJ6Ň)!gم;9!V("3:)K#tX& ڝơP8l<|+_B-#Æ$ x 9ސw09󊧰5'| ׋I6_wV $`8R.ieӦ(tvlo|'%MzCD?PṒ(cUʳӒGO?l}yC 3C`lԮû[zqվ 2S4'k~*8Ēz ] rP{8QA%IJ6w ]S$^}O|U=R'{@~\ j12 X2ydzlh>BN{)aOHpnLF/('Q`#% t@;J)(UK G-!Vgip{TcXƠgӌŌ1l Lz0g3UӮÄ́P4*˟B/U^؏`YWYD{>9y}U4_ui4#9lnsFȺpJDC *; ^;_exc!G#,348NDׯ7 bT!yqr/L8">r\KKӹyY/'߳AC}!x2 J( bA4ԼSGuo:OZK$޻0sUkSD ) ,s\v֋` CWz=&;?!S_u ;NPz; 0f+EиJҳj-:l\cUҴ%(i[h*RbF«+Qy&`Xh._{TKY2v-k$j`Y=wٕϖCaˠ1?Zz=ZBŶ,8Va`ݵ P3Ԯ NߎOIL- T6s 5)렕 5}uugԴMq]]&q#}߭:*,2Vn-8K;rK @_xQ g pZ*h]f1P!3̗H2q^xU Wh"8pȧ`6=2niF=X{3EWT΅t)z40$U;O#w@[O5U9e9EpO Fŕoʊ6bctϩ$mU .r-,Xm)w-|{G}]yYҝ6'RAt!Lأ}%Dl/yv7|LBn{-oܵ c+6F-Gom>2^L6 r?i?5 ;le%iUzYa,.`aٛ0L f=h =b5N#j}q,2N lkJ^49-re\#еxYcim%#Rb{ n6P\BՄ]0W-H, 2yK>É"qt _tHRp5x;9.cf"PnękbBt/hvJEeö/f8Ad].QTL,zI,d8JTh}Dk-t9[eߔsG3'f&i@H9LMS=c+au'suEf'0Xl2I >φ}9I]Ӷ zrA+?w:B#rWeE y[0,+Юߙn bP2uoBjK)P+wIZɣA1 .Dqta^*`k?L#XN$=|sYjZmQ%GVf%;0|t%ۏxƈIZavPΤL8^E%Wգ~oROĭmP6}I`5oroH(yUrd3)AڏOrRby-8>_YԃԔpN~$_is_n 8P4ݺ w_NS~*`|gɡkK4Rze]ڇJUsi{PT-`FAvp*ws1lahϡ _8bS=_uEYVw[OHNBԅH"n6JSTKtCl8eπkk:>`4)RgcV{94dfj3bJlCV 2mL>J8uR$~LJa2Nw_wAUkhSQOgq夡A %mxl7MAә)ZׄrOl?@{^R-_/hG2u$ -nD۳n:YY{N׭J jǪU/>mB3@9DV%18*agMz:h۶&b5@+hT$'qӽ# iݷajk.嫣#ԄwG he\A[z" dYr-n"^zlIGjm# G BfCJ i,֫P܌FO.%7fZ<w#p;ۏP"ҽT&Nw507~ұA¢Ώ1YMT)v)>~^傾2y//QT`.;]fۀG v+ Y($T7ck7D竝R:AuM릠$oO5\d5\;U-Dlԃ'L>BshYͫ}s[} hp1uvn{:W/YxI.vS!Z-wKDqX4kjy9>03Anw,V +'`6{dC|b%?>q첆 ?ռ9r;GHvLe%Z(*V܊~/#' rs9 5+GYXŖu}UKUpS=ߘȞ~0a6H$qz[7\81 kIƾ \) (%rc4ËS?o8F%#pNx2uHh>5aQϑRSH]ُ!>_HAǼvF+~H9 0JH'eʇGRYAujN24 zl`m:)[L MȊsx;22#茾F*nٱC$FA(С[:b?`+GV԰T<RC z H7ȾlKZkWUQCm,FIS%˶] \a|]hș.bgː̱Y \ͅd gwX;!D 4.cË/WUR0\ C~ܸ֮}ׄLv\ZfQWL;)wڑk~3H"I9r%h3%WzKK/wJq־9܌.BCCCYr- qx+P+F2q$_ڴ<- _1Mf[SяxtβAB9*~twOV*XT{ |{Y6wE֛(㣘;yL_C"&3@\j^A_Cho+9,?ΩKh2#G^u݅qYOQ3;5MKiWe 1z`|z eAC|I@+eL'&.jǭB=΋g Ƽn'ʶ]*hRޙD됳I&H`.1)=}O_ARc͹1ZwFj9FŤp#?'o@ ^k'' 44q[V7hm b'e$ڐ R=mdxVz*,ܻlF,_/P U/_үh]Vm;88ib[X Gʿ@$G]$lU Ze Sje(\>U2+I{g[饿hC{{%n`dpDg\x!`{xpgðha({T3g͗d<7hl U `fn2:؊(^Q{|-}O1u;Hsh%YĈ1rZ`_ݭWcU\eך.'=O24-\k h0ʒ9achWg=LCZO>C0;yh?|p2"P8 )ui| iER)P%Dړh4e35t>u%Wu`+Y 2= lռ?a} 2>D}]nj4lV'_CGA|hJ xSN Xb$(c\wXhBv:wf'<,cu^trbgWB}2}OGiB)vM$ϫA1:$5ҙ!%s!0A]slV̸E9  WGu,á (-Yo}% ѰtpHWyWk8{|OJ?^~-†(%Z'b)XÆEHk04(4 YTL}v+[L)IѧNWJ31BzFJL])2YWAjd.}|L"0;2I;I.YUo$#La5i X^q2.* RtvC]x}z KV@CP7s D:ګ>Q*9Ez|wh7{;6x7Gh+)#=-:`*,, RBz=E&sn52||U3-i< l>]^o zF>B$@ңT˗,Zf's gz Ϸ}:Va$ҀEߍ:WS>7{-. 'X_zzCsqC !}"(5>]&eGV{N$~5:?~[rxZ ̢6M̃wbSB:7R&ZTϤC!?^kl9c%bo1ut߻[4LAThԡ VM N7dRo\{0F] 萲Ni<;3m$2/|9=`d3Dۥ;;*J&ЭC9ҝP,OF?r=kC/%4bG<`izz:6]f5ukDlgM73* ACߴX.>(~xpR4\g]@&o2sFϨ2x!22:NH4_r+Nh`?Nrk;H,\/|u3,^d-Yvkǹ}@x `w 1%Ε|i6.Q|E0G>U15\h&1c)Nȿr֊Jk 6ߜuj,ZkSZgqQ Øq.hJ-lX#ڔCm' H_EQa5BBۙg-KYZ8C+Uhp>r1,$ go5C,Y {ͮg}k6Ȣ)Tܶ,֥ڏʻD4xC7J ?&_2q7{r*U4f4ip-!_8n/D :o)>?ё@Y7kOW'?vwQ"5yWig/+ܭ !:f?P~> 7pE[7Wc*X\q :?:?fJqOP?t[pwަ8S ^}ĢE;'=C&Hؑ4LuHp#O2z@<&Wx C|zQ+*D;UPlg'{{]LEReu̷="fpHi OO%;6o}(=#s9S@+(Ą>ݍA&NPn9C! m"bYڤ~Ky\n"z/V|T"7@_6*UiX{#_ނs\ lS_@/&o7k*PzӸ5p-Y(*6J\LSX1@K;R^Hfzzz: ğNFZPb/̲8:pLpOG";sm;VGR V8bГ:n,/-ÝD o2QjD TuR3z:%U/ b?xwMN_0GL?&8 -Nj#VuG/Z4Oɛw? ޙurc F4*0+׎1 l '6hЄUbBIfo6n}ϒgho۔Յ2^Bj+m"s:pn#]gzmùf[LFo[xwt^ZMX0t˜-;!!ki]Lq%,>7xlD#mt 3-%3VO8B #2ͩdkUI d;w~dTJ Ԏ]O{Um`lky+SDLqFz^T+Bwfg:1[Hd"umXYrDƔ4n@86uc|˪@۔:i ~5ּ("ZΪ(Anpa=fRF|' R8kFu.ݠRM[ zK ؄QV]mɸy3GF.1" dLBC8]9^ܮFNmN[ďA`-`a +&b͔_T/ETn'?^8~.[ven,Twt`|r5ȂnG% ĕ#G6HYt1:qC@琱ѝ=EL#;fu}Qyg LP>RN\ |qѩ\oI!<:( ̆IN68;RQ?bUz/~؜ 5QNt(,h~`G5!nsSY/UY|T \RW׃*zB*>{y+C{0B0sq(!Foهԏ!B/c"ml'>i ɇkFI@QS Sy=4e<$b[ԶygHPl0(Cj'{D(5lyddKWev`d':n ~yh(ȟDBCv"j3/ VZz7 3⻺'):2(I"}r)*Gx MJ9d[`NƐ p8:Pjm3,+haIʡ(M`o놢_/KL0nW8ӛC 0]2n=,u7y;wBp/c$:˘2Bl8Q<`r3_g8YZBpkW\#/NZabh5]w7l\#k.s$C$Pܨ Yؖ PvZZ`P< *'Fl ?3WnDj (ce3WZi)z(tQDʧKP|s&O%+8O<߂9U|E8w٧E%Y ɘK7Ο!|BD6ÿC Q?qolDqsb?wEvQ0 H-.g?К ƥA%C;t+@6jw^gtnQ1A,kSnyYra+Du)2鞅*e25㽧q0O?j [H@;]Y2D'z_,@SjߙZƈM#/b_p*|I Q&nȍb=K8mR▱d0`\*4s!x^[Mdkd͔5jYͻ^c r_A.1I3<|W,W$@nT8٣ s>mn8P#mjWᏆ6$ǵԇVe|5~DGPtvU[a5b,g`ZppM-I4Fk&z#`Lkuk /\vde"uL#mrz'o!0NCL"ҙ Xtr5ZS~"4N+,uI%0N,^gjH&>)H =E3Zce&A+ѠMjX~qL.^ hld\M<ښwCow:,`PTJdԒiYJs2ǃW^ⲁpn:8 %x#F{5Za0r,7/ ؍u$-3S.?rc.Ķ%V0 {dSxJNXdS.0!&'*9+ kZy^ (xH֫ˋzBl;ίU'f(Ku"Q[QW+^]ମLzY8F+qPBGj%׌DCEon?ڜ*rXպ6c}wYP6Գ] X :1K7)^k.O.?ù?|% =B N$N!{PqY]t[|6cdΧМ3L[ C`q;^qrIE:?4"&T@wN: + Jζ/f\˝ 2`gꭽKaaV85ށUPZu!2=ȁFVeTdԁpސXuy]FV? Ӯ.qE|N^X:{܋=4'-9Ga8(QYy=I]++\oAQ suA8 >֣` mX7jD![LA9eTJAv~xۛ7ס8\Q`5dX&I}?/obqL&H\ڭbj("ž=u[H5jMS8myP/ d{ W2ׄz'K˚ rulj_;z EIY%M#B ?NHb 7ĺ$F43ɧ>OG7-YE9N0IޤW32ba):O™5R!}I]͏ܺ>,䨂 Pd01mER!s}Tڏ Ad.v2JQF/ʳMqLO(adqşl)+XF #%7% o!8ҫp`07۶Jo<쩠=ޔjh+"o5nr`$}B&+9q~/q 6v{YyJ-l&:Tt/F!8AhiPM1GGGNc$Yk#(EߑjRW">ĺ~SwƣV6 ku fR ,Z9ÍM}7-jݐ[+,T@+3b,u+N}8@qc?@o dnFv:}uz>1%4A)z^a9+xI%gj<]"䑡>f K|oC֍X|a `7JR .Wg;68̇?S~i%]`[A3XG׀7AE(NC+C'b .:UH?l„ԋVkri'qBp._K%خ@/1@{g ֧CWm? 䩢v.D)>Ǔ2hD1%t*qE?>5՛v@_uG Q@^kx22QݽAjG$Pc#t'J(^+M&*;H"70A]ѩ φ}⁐ΰso+c`d#Ҥi8p`rF1o/V͢ZZ8na-IFTA*b=MP ކL?KS<~N>OyhV!܆AMZ\SG'M {Ӹ9":$,@㟄 $ҴS9{RF8?G4U9Q3i9{)>Ж"Ŗ@=d~ 6XQ;]\oF:^#PW46|w3t_NxcU; ?/QL{ 5\ Q)}4hlf킕QvcL.^%N4]ÌM 93+GL,1zSzn-:?\1,mm }\,kړ='і?s!;tFvڬ bU >SHydվ $Zaz2qxdBc%˽&r9F)DfQSN}nܕU:K@̭4ҫ8gSVB N ξzRdh9~901qນ-H~]0W( gWb%7%m}u gT帙ZI,6*TM{3س͝ Px $*?, ђ4]갍=VPS'3)ߪ2~-MLKs)'1e j'tKj`pU]_s(z.IdJ*pΙKpߚz>V$^d.=Nn9b9+Li&~t(}eOpH|oWWxe/KIC}7GBp8\J+oɺ7نѴ,fRd[T\Kb!Gs(Qh#WXc?k_~FS!a-V¿)45NFI-.*mwFX$.O 65O{CİMt.7x_@)L =9m[ IЦ/QSS0i'~Nנq0(GZh(ho7.քBex9)Fq5ϓ;vJ ˧xoyvj+ cJ*G`5-yxЈwJ?Qv5#6'ðk)j{6EDU=<2\ Asn~s.T@zW@KlZ] ZD=5ЉW.A\gu/T*- @[S*UYVvbGmٳ~&ZݷGa3\&'Yh#G!_]k+Tڋ Lx_шeyr32[qWӏ1c*; WP ؏"3YʶVUwuh2]Lʎ8J8:Sـ2sFucx^:'c6fjUgep!o:v?5)c%HˎB^~Tz [/#rXCA4oWF+TDӉ_V>b*~4J0BU>-x_ RX :4s"ܨ.CMd^^+(`7:$GxiԷgXK2={0~SGu(&{F㊯-=G)|TUM7mP-%(}f [bV7eC^']:wnoYH^t[ wU0%!a(n(2mTA$ d_?%ѶۼF=}U(w Ie,ʳ,)#B`n[O, "=~j襣y9`CL~b52k@_nFlV֫^ɇu;YQKp"ѿGdOYw8X .&;~#6I*U W`yuc]8' 3(}axدz50>m0C(*Y^l;$sz@YA{{ 9k'š ZVx<=lZw)*,ۄqAQ1bI:zԊ<.;$zl;,78] z׭Mvm u5x 㐞lG+:hYxwGJ,CS^tcHXT&ƣ[3{={?YH:,IMb;u8GmK-/zeOThf_69J2J@WyK_t}N{]sbLZ]~\)rIS]і]R/t , hx+ .x#פۢp'8s,9Uӊ ;ytjOE/v9xԐC#w+\Jۮ导 N(i~{ѥǕc.-,k#S-֍%xq'Dᕖ'D@߉J`aـ46wڕqÖzzcB?~ʌ*5 `"?޲mNۉ=ɕ2(07!(_fRͼצ]ε./MX;oD0s3}LƘ?|V]j%{2äbx*5bI]foa4F2wiVΘ# YftTiWW bpTĚ^ ^f:_L|pZ0dln8iKf( }}Ǟ@0 - EbUu?usDC}*P&@QMo >JasX8)NjF}D+`Z33w0wOM@\L0!Hᶕ9: jF+ä=R壟=")ai6U5.Þ)tp4Zn<ֿ ȴƙC~SdIɣЫ0 W83X#S믎7}qd4&qD 4Æ wH/`nR?-uNgU.޼䈃cQ&VG?Vaas.tڇ@w1rZ|6|,ccgvJd^PEʈex*,o8%{ ~wTwĝ`+JwhÃ4i+->6jM 'oᣇFW D毷tznQtƉ5XatI#.җ]xh[):DcyL*nGBKvoZ0F,agOgIw2P=x+kb'T4eWh .Z47֐sw^E]SA}Xˆ{_ [SL28>X oِ%ô=/'EıPWž%u NEg+qfީچeΗ(xP8ЫQpwDa&ڔ[}ߧT$52+z0)3(ޭq(C_&Q+$nrx; oK -!~QTPߤ*7f9ibX+4;忋G^Ϙ0iv Gea`^+k4Q&Iktd3gO_gOW*' \Q,W#X8JPCR,ZתNUP qqE e fK$~b~W3ÑF} 8^NoFLUNH\iPzeL'[GNE2]RYoF?ZT ck~c$3`߱t8'ݔ|#tXd5c:IXVBu>?-?FK[`EU[N`J`76T,MX쳔;>V΁2ʖMn#3oju`9av0ٿwL%kj% @Mֈ!a«A+_R#d гKTE+`0V^Y"3I0?[n^N E+_)Se{ij V6}:2 Br>eXn9scw/_ 难.D SR )A=:X ̇@394='E9g|׍q ٍŽ 4RV'NAfp!*xL}}Jt/Uεe>^|`\sCz {&=C:x%Kj0rP$X"H7MX[>#w xZa^\3Hn"{,VUFqKپi"^U[S[4mP/Jee=qv܄QR+_ SoE`qn.?,#ܗQ}6]t %M0äI! Q5De:Lɉ^`2uҔ b{iɔ7I?y[rE^QN+W5vzTtf}dS}Jݣ3a$`I `q\s)%/9\wvP7?~ޠ0"+T}M4"x>,k=h"u )<`fkɨM*5CdN~0pΧ GI既P(=P4W2aWT%gx~!1}Ӳvp/‚l+gdzo0ȦTrtsVNkN0)#h:b4Ela+disy^onb f 5\d=c;(\Ȯ~QIUG-eP}~ydIM/BqJx^ ~|QUR^)M:3EϺpErkÞO VHYf+j(M<rn+{[a~%7vrP;wBcSd?L52 `BeTMUCz3*y/!=`-m i:|N/,)Mb/mˋ|$k_%U PP2P尼^.-aja :$/ T<qA îs K l9$"ݐHiE:v'-z_4)kK%5mz3׃v$ʠBv<>z{C}1(ebB>i.錥ThH_#غncՋ{-^$4BuBpҏ6d4Ay5Jz3yw޾L_Ve6U ޟa<7F]L6GT ^t{RwQǸ! ؇ N0t%nߴP'O(dhn2{p;=?Z}$bҽ(I Z?bGfly?ϥ#׫=Ɣ{H*V!7-cICrX('nϒ#K9Js|97P)UގdW&iChm W7-"\ZoKz,gh{nKTրWΩvq(6AM}muKsD i\ȣ0߭!-At; tOw_t& Pk0ف1׀v\ȥ@)OQz չ k/ӯ[2{n;PͨKY_,Mt7A)y֠Y +x&9nVzH0v o/Aա[R12"lDPvgk[+ʟgؤ܋P3J}KlW[.id:ЦV\u. 7r0U!c-%j2QDI=Vcv 2X^;j xac5fGӷ}|\D)qz4a߁&ոرlUɪHP ;/?G؛&;XVU3Ⱥ,Nl"ֲqY'p5$!%" f[ 4>ܞBtOncI?9R#In|+O|cqy%ƽʁ3mi}_l5ĭB`jC"@u0՚4m$PHٙl73uQn ODPяRq8O1lU  LđcaQQyJM br0WLm$ノMX(H;aݿjJ5h\%ąfo$+2%  /EvGAl3JYɈdϗU]gtg V ƅCA@yv:Bs|.׺RG3#emtX,^ ?=*$63';;vV40td a1Kd& GpɹF<?'n?͘ Ik!q}}—[`CKAlnvR12_.9?>@2|lzDT;)I5^߮q)n0W)83T"2P#Ro)ZB#?!i]t,ƶTȎ+:~]G{TS)E,s(x.k4M2 CvĶ[`^Rj6H'ڍK 0wa2vooMZS@8fjnC\2i+8Lb۵H,<ֽ g,H˝1bx050|װiK㿘3dbagJ? !_nr\Uoϣۨv+Wl7zqD*ߏ|sj +U ~967o%>H[nr s.'iPT7-hG@ щ:t2=J _sQC^/C_3C]OKt(ڽi^ź=mƄ& Cv]V'[-ŐlS,AbEcKYK?FbXoYj[mq `JGփ49.zZΫSG:^h#|2~syBV| D29+SŽ{ᴳ;<* é;xAfэ4Lo~i߾KE|*! ^nrb*놝n?S>sih`LI g=I%Cムܶg9\,֢0o80"g9PN Bt@J nbV(PkyKY7& rh%i)?Qjkk?O4hZЯ͊ZڎrAܘo*gjBHu+ $bTn\-ނa(?fBX'լ`.D!Ten;[+[zՀ3qeh*cv)M*4UpYŧR;+4:lNkx.Yaz` x:YmL Gͱb^eߺ lClu@l$Q~kXOtS$sx+M'<@ >ҸZ6%9@ֹeX֤S>b+ժ~8pCI tV79j+o7ɚuun&ݒbIY)̨:A/4IRliQ!$<,gUT]dL.dD]^:𽧏Ax6ln/"d=zGx* Jv;u=te@}@wX"/ KOAbn\3" C%j:Hc<5 }5|pF#?9@kYҤȄ5o,GpI958PgeJ cc-orNJQnbG;ar، ՉFu3ZT?4o^[4?t釄YesWt 'B/?:MxYk\c0F= OCFQȘ\HP696a3~ R_]L+|ꤕrAa؟ 4%q>:󀊴#N~+LH|[ٺC,학̊Nrx-vm91ހn5F7D4WÑM\kIb# hl.?A@}@^č}97O*}{d) Xkdauٸ%L%-2d~ǀh6g4KѨ$ޡ(7Άmj*sP:w)ma|ui}#S)wcB07n5iVsx {AP>5 ${ C;x߿ASf+^|?%5M):LFUmAu>bKcRa$BHžY`\`^*<<-"GYq* ֙b2+y[UHyo'/'B eXa܁푐bS&,$ɮ$c-]؁6st FztkXޅ^:{yqgٛ-pL`V:QV8]|QƛY2[9sc9(1aS 84NNҚXL8ʮ|+纂''O&|L|-4!T٭aahj&V5dϐsoku`n-EғݳͽLl}}4:]&36Sӏñw~M&U4,-W+MbqPS9PVf*5Tohբ4o<npUm. *K2">崝Ij>-M3WpU2A0b!R Ssj[Cl0䌢 ?;ÆcQan[0p!w9?1LO<*Kh7VMV0޴L2ȝ4x ԁ$zG`F^T˾dM OLyz7U,\>~.J?:KǭzRKU5}d$\}.A'죧 _>Q*g&{u:_]F͓H޺dUѸ͉ۮ-sCleAsөRל #2` HZ)#Kһ/Ȣ<%/%1YDoK?#HEV]^:AmOռz09SNN"?lB6+5)ͱR;oXɞ꥖}.th^mGeID7N7/WQ|u%dY^ۅ5ߞ6r6 Eۯ$P;P)QNj^jzYG8F`(> 7ov0kިD{ )LSo@kEV-!*7f,)c[.?,zJt@q+ x.x~%Й$Fh>c}Bd#tFA)TCT'X5xKKó'}AG.|KJ!SY]L Vae* p⸼~}#cWR6^kM)?L] Ꞗ+YY~ȕ{?eb=)?vmd&""PEJFAHӿTgb`R*+^MH.kPI;jѓ=| 녨r-`$vwUuVvju1Vj-:cx84bIo1|%Sul+$ 8V{Pq]b6wK vWrqy9Temc.(RYAi^(7P\AzȅV] 6/&eΌk6  ѭ{aO$9mCڍ  GyE E}B]H&ʛIMW1I}x{l/P+tJ#Ak8G@;9SLb«TpʛWnzobEH0[xqnpU_;}s[jd`P3k4ֈM6r=Njk!HHJ VTNѾws }0QzA::IyuEG.Ȟ# fsWDoYs5;$gܙPTU^ #Wa3evܷy<:։ 2$̷%PM 9Hӛk"Po,P-ιݻTcsag#9Tc|H >h%- FIYyJ o*ɩ/E-`H3܆U!NIލ |N-G_#L$KQ X'4c\C(I'5r >bMH4J 3i/?:7vEp^V^d?2*7~({/a˂'O-A:%(>׮ME6+WUu/^\#IX@|(;ĝ`ߘʩO<;qiJu'IJ0/k-Rrs0T;`Lue%KϦҭu1iʬɵdUw Fӣg.XZ7E #3L*" G8eGh.l/^H[]7?#Jw 2A)aGO0}h}xP,L8oT "POM6 }0<>*u7_8Nj):^!0!YEyTg?KxZ,[W ;?\m$KKT)6U/'DMZ. } 9[ w @"&F֚ dଞf,ԟwr'<}7e4#y?f9y9+S/.SOY]&I=9S]SjX0V(ܤ4=\4Xn].\0w6"瘩;ՙz3d=Pn?uDXS,Eo 5\>FKL8 F у딘{& cCm)xC>xч>G..qЄ473C",dEЌ;!@'?7] k@te I{l_<%5*.PmU4MCv _'@ȸ:E)o| N4IP]&U2aAuTا1m;ɕ̑脢+ pP1 g.1CBzOJDւ#a OGU+;:ݩ]Gq1Mz_8zzd*fW]!B|>xUU'ɐ9jwI |;IOmfj}T )bڵ-x.]x5g/V7.WwZ+69આ*䤕vn>3'M< ʴTnR%J\)ShD,AY62U.֤20\ðӶڹ+LRv+-qf eY^]v> !A}:&NY&E_2&6vвOyȟ3SNО3|r2l$ >Mem»IS <#O`)䭢u/Hn3(A 0%L AҁZ/Xe''N9S8Yilw?I-hQS= 9p:Wrپ?|]zn:!KNȠmȘf٬6vA< ؂o8_?C ׿&9Kt^M$0]%,f3/ ~TOg0U@yA; +ʾ6|)F8X,?3l%cw\SSGVD_t2PysPyp^!77w+d-K K.G3xefF%.i.9EֺP9/?sKƅ6ՙzT7(PF w ba?gc ) oC{ (3?Dt*GϬ=e{%:b ƖDҒ!?1u9UQ˥+UUQm#P1fAB۸^,_bpK:tMGn )YBМUɑ T)}0UDQw(0\A'pANã\>4Ӻ\u:Yoa{ l;r76.ŝ KLAyd5X,܉ kНMF֗ "|W1;g)AQNT; 6jzOQkm5ؑ |k@ K!J]Vh(>ɥ_;¥ENg:6YuWCWz`wmk,EQ.e2S樨=2^H+soY}|zOE:Wc$$L=V2H%{{Nu9h0 1ll~FZTsp#xHDY8u~V<jKGawrW+32krX&֝IQTt]!giA#f5[NzHԞNLB(Yjٜ j1y%)mO&E Ɋ|x( [^xZ nzA;xp0H cDƏ:(gJ-K5_kK2f#]yOWQ[ՓHYTp!I] qGhn|J\?ɓ< XҾR_4@dwz9ɦ&C26UC*{SwE}}[ X:\ V C3EHn t6^:xEdb=Mr)o9oNwUms0)Ҏ$[ y+qqqC? ,f:GDrFHF]+Pհk為e:~Jz τ-. MB9큸0X'S+jK>N׳[B',;/L\N$AnAp$qK/yʒ0y}4.8ʖ-,ߛ`^~SEVi7B3σ*bW;9Jg@A6Dt-.f /XMVcS{4 V=#g->*F'LTȉLyZ&QVdtD3PuKJ"F;O Նz;CYŞ e8\ Z82 h1XQp"Ϫp8bF۪ZhUh6젤gdw3G z1Vuoa4Z zՊl<K)Fۉf|ķm xʺ9\- DfHKmꔮw}g$Ϊ⠿k"-v!eX5G j9׼ XR\_t/› / fCoKk<юx V<*v܉&4ߌ#Fт- I]kztX< ¶!s{ *dAd(&1Q"z7K?✨CD# u 7'x *7# %:qShְ}lf^yHYKi5kV{saD .ݼ+lg do^=7wUd=uТ̤b&΂bxr)edL.D>Pl!ׂ J-va:j>?%?m^,W߶]>].Ui?ZCt,jԃA@|O0~i]؍F}! ᕚ ̆q*$<1*OHO/(#cJdҌ$'|1&3N^h:y.8hF;ӈ̊m%`*<@tHp\ hڶmI,’?9D>Ѝݚ)X‚t4ycPYuxҎ_[W-H\|UB3ʗ)_BYFX.MO@g+u>ƚD3M7ФF#Ņ+W.U07DċO\1c e?CH5揄Ut878Ӧ0%mrzzs !ڂo XFt}+,4`zR b/-` Z 66YXgdCRάVC2L]Lq(HHaj'7FDX}-L /kVD8-Зt,ze!HoU" bF$*?_ 5T&gW v`f1\]SdC,?11PX>I'9Ц'BEw bZbl!S Cա)'~ gpa"&ћ-bhC; #ZNAӟhHeB!;|/7aGL"PnST[n4 S(MLt`$/@@ Iףnsgi?xi,H-MJYV\n6t!ܯ?>uZ}[AʍU1,R" i3TM9d*SUAFTBǁ;dq\ "F:g)rRdgب^L;3U/{/׾Q\qp&S8נ^ӡk7M+"2FfY8wٹnDUaa>ֿcw/ cӇh#a WcXUF y 0 &9.% ~vS{&P^(4ۥiC+PIPY-eQLVq"tVpKLC34q_:Z'ӏK:RAn# _, 2w`s%9Ty(N&$' )dPE05r#ʓȔuMwDc}n.ek`q5"RXVdc!g뤽Qnզ>h" l["kI1^:[|i'H9h֙Cb|!`\\:kZ0&nz[t3r-Vc'z# R$WIb[u$_EmrYMhu3c`#Aklʐ脤]=4aW}IF bR8v葻C e*S ~-ŏiFtŊ/2]ѩX2!7]&ϊ'g; / .!V3{iEEϽZnOav3V~KC>$stM3kbZk%N#W>f= xv_K;?煅ΊtStu fS\9=udSw{C$W0M5[x f. eNBBE tʺQA6zم0~@ECVis jؤRB>W/ ~9#Qg[/W>Z1,~ԧwZM+mexA'6pklÊd_ZàVm4 hHL3Vmb>ڍs04hLySAS Ld5h{C]}D2;# ~{CD$ן 6N~.S?XUF';P"z8 m-cz%`4 ߝuZ*{n(3Y*س [plg]gnIM|Ntzyܘ>F_ oUl_MۧEN,V{Žy#ӊ/3QȎk;Ĩ?Lg(]ݮ5/?^#mhn4=%"c4Xh d_(<lB#VIǸͿb]̶"2fhS=/,P#MbY vqɋYBW5nJټ5Dro`7s<.B> )9mPzNMW~r٩ 6 C5&{N{Rj~*t&4w-5^]M-^ZZ tb- A<<OrU 8)Ƴ+| ]S@C;+( qR+γ*n%.3..zY ya># p{ - )-_:&=_^CK>!uʆBk87UF⛐| ZU>F]f =$M`+;,|0^C$1Zc*j,}hj5`g=a(mHu,)iPRM.;|Y5!xV`WHn5)@)CɺH=D3;`t$\)5!C©&,F{ő2>4?МĆܳ5ҸߏCS LUfqi zM^U~g27=:x ˁVت nFX ;ڳ!Ps42ܻZL]LRB4a{⒨UŲrOh<5gVpe*X !fR Y +u=] ,EÚm5!1gGJ4/o 2)&D8)AOd6 :b4r)6!MWƗۊBI늝3QIg ߹ F!TC=T(--^OXi7(< Zo2#V~>͘0Iўpu'u#UBodP-_q<>/i6S#;)禭P=JT[- n&"r7C?0;!;4[w q|Z)]m w%_5q,£XL㊜(t-O#?9$m>Rs}Pz-*/~-s.D J`،a,z뀎|{29аLL~BbQKFz^CO7wȣ8 ({.YȊ`yC'$U1P974. ?U0Ĭ[MJFFFC4z*gP(2CW U_ǙS )O3BtԻm[| =NsJWu;x,,8HO7#K_@ItewawYEOS22¦,@˵.,c#Y9${LZxɣVD_ /G̃S#^ :?7{/9'WSYwdnR>B=o wBJB19tX[z3 q: 1+q\ӟ;"`\UKnpV^p()G3|QpFG/Zox^=\eb*m g9^tݕh` \>ʙ%kjhcꇿ>< %*4nqVQiSJT*$/׳n>cD"#m+Ȅ4R mS1= - S̲'\Ȅ6fqP]ʎ`M?@}G1'5'Xa'" Y Ĩ6G[ TrwMRq'F9NSje{mʢed,5kA ;x55@]``i}t=9!e!W]*1oV+aag6s|=)_ڇ_zNSD. yo@"i9ϾL6q  |x/,J=(.7[L'p^(r'&2W;FjqK3zx҂Թ%9v= $w0ɸCU1t j_hOAn5N{_zTB眕Kچul:YEl6a7 HB?B &օpİ },9VfT5Jq61gȓv,Ϥ-R<>-Go&摒76Yq^ѩ=1xj'2 't/uixo{XsT(BYs5 t0oO@PsQS61phQ-7uk0 KuĂxc*s ~>Q9HԺT ;~z4+\ pjK6^'|~9Wl"Z8o?J.8l KSQ" `u0W#JNaM!dTⰱ"]*oq {n1#/Iuyd ɗg~G2{[&Pᛂtsǁw'&)YgSVz*j> `"x$['!t! I ] |@ 7Rs= {9{[&B]1tfIes~-]S)&E=b\K9r-q#8[I|?$0 Wu軓6N4F)mJ9SB΃DZn#-EЎ Lq>B 7ܧ)RoerLg>ѰK*c\4\ճd[n(gɨd@xXoF3!FE_5 +h:*3֭H Hl2$ߴxQeC%i (1ng[+9/HgB{8hvC lkS/e ̛P =ʽ%Ð _P/=}4-&iHEeFKdX +<<'ŸJ+Tq7 {ey9Q|PEq/SQ6ٲu{l+zCN2RKrQ o*}$,[^aAχI:?U~lڍ]2I`[:ftXnk;Fω9js'`]}|[F[P8~YȻa'J XOd i{rC))੐R[~N(NwsWy x?9/0Sꁼ[TD |8ii۾?AFeOv7'2l5oOp;_E2+rt'٣czrC5$-v]6S5BȆ(?jqJ( $I`,nbȒxʞz[uAmt{G&oÕQuUahc.$cP%_2Maեuozla`m6m$ǎ㺘q=  Խ]]C?xOiA3ڃ}Bxs#u-Lc Wfckk sLJH4GҰ.E\g9Ѭ yacPK*%s6R{G*hf"ꈄqֳ)XgȜx#=B&aӢc+k?RUYdMlIDtaT=e)Dd 5;Ფ  ~#FWf(v=ʶ#Sf'ӜMQ .Ն#4Z8EBdb!*M'g3X71ќc񬨺8P3NfP\bR=O~r]Ra~g0'Ϟ</̏b}BNu{+|_ʶ4{Zi"X@ ҵCtF`TgYJQ3^t Zɘ|Vr+ÃeX~8Xk3CX 5+'7ZL=֝F1i sI38ʉx}PÃj#F=[@~ m𡻬 =hsz '#{8Ћjݐ5?e~B7ŞN?Q. **%jw-'xJ|a.0b5!!a{=^G{@w+}P_z@Ndo6mXuj230՜?.忥- m7j v\#%yLZ'#$oMH &yY+Bח|Mgr;|'̽K9&ɗыGͦ{ ߟ% 3S1N}*4{é4`7DDȎ(obSV?QzJ_i\rf PY+,e+I^K 6bXPoe!ʻxd5WPϨ3*SV bpw$&8 mSCb KWLwAoF'`<"W/`7seI]4uS"~>W~1 Uk,QHnkN* cd?5>5Jsaޏv^cÃY@ 9򉪏0k׬5M;1Qg/\:/B1 2u3?rq)MjC/k4Vɽm:Al,^M`=tYH>'w&`m@lxR{qBuؓݛ _0eK=奎LuiSBn=mT%U{OV^~TAg@9Be"/N`El9/{Tk:82@-8⠃8f\͔eL8h?=Z, o?H6k/$O-ܓNМїh+<~זր9S}`,a\;xc{ԫӲ] .#3bHR"Q Mf"Fy1H_4fG|ë-|XnIJJEg(]exՕ <#H&xdi)o M +LeKxo8? "@37ӝ{[>/M& T"7?4JhsKFMCS3$p?= ;g JĦN/fxQЋWa&r*E)*5.iءz ?_`g6z݋ضHDyV}ԹS[bj>PL_Ǥ:p:`Nwaʯ7?eO 5su!ҹ>rGk>f?5\_.H.V tIi\\hV«Lz0r/X"Օ+ (._O,٥^#Jy$BP4|t0CfGºpIl "!qIwUDiY®t4=Gw7qUT]}x+mc]JWLU *@WosfaH0nb-Wk =Ӥ>c< -톒[Ww+ܫl1 1]JyKFOguǹc!䍵ئNr%/ɼt ,RqvM@O`p0񞾮 {6/p؋:DJ'B[!r͑3Yw{偁o[<6y3;G#s5''o;9x4G rŎ(Y *b֤6LK Q6 :L#+}u3&n镵cQ~ռ8b×u GHN[/IS8RR]n{Eqeq&KmoޤIyN0+ՇBD/YN*JN2"ϘDpL:~;ZQL-쳽˞|n6ꆿW ff}ƼIov5_XMؑ,x,-p(Ou%Ea5KV^X:4M@bxUX .%5d&܁CwfSY`Y]vy v "7oېp12q+V#{lJ 8z b$,{k2t-Ι6r_e{^{L_X˂}%LJp1gR#ٹ2^mEuX-~i-Y"$I̙E0 .>'z 3`3@S3Ф753iĬpvk:8[zdqA9/ܠ'iR؎Wm&+TzXduh'~Umr Tܭ)mjU/ߵz=9k3ıgwలva=9ٿ# Nq 1^[ӻ DƲDB77^bt}* fO7&&뿷Wd \mKKok( ^s.tɕnJaFP ?1> D@rsiDw3|lsWĝҸD +sAX2=/z=z ,b,j~Cuqrc=SBءVW|z41wv@mAWnRc=#BCȨu0@֭>3踧Wѱ2L`AFH7nE80uGʀ ?0n{@ da ?_-y,ӻĉJT&#^\W]qjs1VTRQJh}SCbJ^[}ƱUᤋI+ wl 6{ uT|qk^(ە[z@)6GGEI{{2J9:±ٻtRÄ,5*_fdpOڃx`A`oLu-+oѥ<~bnX5ӹA"^xb|m._4;J2ٺT`#bd{)1@LV臵uK6zـ9b%xD~O9\ԊқGRf{S;oFZL4$;Q=uh9qyNg3:Ҥ [&U#rRL5Q|F ٝtXx$uq /8霽M i9A^`/|5K?}kQm5Y@,΋]CY8}Lӷ#)C $8  13s7NgO}c$!^p0<7@nr&"hI؍GA^–k綵Źd`3!M\d!bT`+t[jy;i|KxpI ')&\IUu`{M Ao흒V)zGiJ uAZe86η[{a..n5 M.q9̸R?gg_, {z%GCKWMJFc~CN"jJQ 4)\!),1aH *g9x>aJb DE ?ACVGy[.MVH`P ,{֮g}kl&|3E4'5JL;^skQ|Kk@Ph6zҘX %Wn/ I_[>)GS$<9i&/OZ@ݝҍmj\qJ2Qk& `"L/%x 2L4mJG'PsJ N!S堄 OV*4[rx!?D*]LI7"CaOgȊlj,>tZs6JsBC%v c]J .tk=y43yEo8T~]OR0VC t6W  xDHCa6kٌUttCK= sZg"4Zzu+=n~{UA!+Vn8]T9HP;F>JP P6u 򨧯N$]{5"0ZHʿ^yEyP29 nFƍa!lG>ME8/e<-,,@j)b?JT8dšqvb }{L<5X?!k>3$N҉%UnDyk8PeoYZPf-gs*m/Id瓲3~-.hnvФ{M3n$B9.* ?q3ֽxҲ%(؍9,혦/.ua}r Mb+_2ߍg'2Rp6/=rWR97qB&.%38I @<}ъR _b*j{.D kIzsz{B7=fջoTBI_bĹ]0)dKq5sQYe&-aǁ8X 3]y3"FyaйO2%ŀM Q\qٛG{8r=F|OH8o=d;fu_i(Q$fZ`ա|bj҂ Xbl; ,κm/]Usw ~j`jvA3GZ~|~+ ~_?LbIG}p4aI¼2_U %X-eB(ݢ'VLy}O|8;΅s 2a;D,ߖL|}ײ MjTX/903w ѡKG`QP70 e5s@k Jz0v? ZJCZ b|^&2jz&HT5ERHPTIl4k ±nU[F0OygE7/@̮EAB\iPâ~`z2|?M'Kj^V<6hA yyiP缮,˘~ HV'YޯscԷTG=G¾1bk_\돴EvBP^#G!vNSotX bB?d9O<2(\%$PE~]dƹ *AmUl!谲c|C.39P9ub|IgRg )0=]|ԃJ'z?mvgܰn6oD_\hIPh"|e/7ܓl;,yd;$1~ L-F> 4 b87j8H R!^LEęyK]w27]^s4@) eRbBA_ ֨!Dm. @,{'AReb8^y.D_jFw9Bvak Lس&8_ʔ=?ίBhVUu9A=g֌"8~ˢ VB8}rT˜j,xp1JMX&Tʔg|ȴZNsLݤi jVxF*~Xw•2,Q|B:g>~*ԶIͰ4IօNTT~n-z[9\{`T-aI692Jt>†0Χ:m<;@pvđwޯLl n,?{"DcbOm#i ?..ܮB 4χy0/ tU CRRzݹ9+vj&l]&3Msqz^ z',\ɿ\3,axK2f^eצI r &]lkZS Wlum\O\Aư^Z8V)ұǜğGsuM- dQwĽ6Mi9 O3s%ב@i`cap:D#e}n=Ƿ^."v4C6i-i]MPEAї^)߭^GBa$}8Q֚-ʬ~-4k4ك3'-@|Bن׆F7TXܴQP,V |b kP͈8J`W"M ;l^_YrHI|-L2C6ƍ3FFǜd$z#AʧHZS|1`EI @٢[n0K$zJ4K!C{(|+]mj<@Uɀ ?iw8TM%k_KюCCj%j=-{g$y{dAc\NARΤzބ/6ɆhM9IIcϧHnWCD i3,&UЙ&MOh.w'Mdo,re086O.RrP\%ػ[o4̸*[^Qa8*08χj4C4'ލc 6x N},BrgH+!`,P Չ[`7GkqR" wqj0x*X ixڑh?xvf pBBF 1*зfN MO =}0k)Maq뿁d ֫ƷX28铙K2?Pv|  u()Kq,;^] N vm\QU;b9??Ȏ[. @0-4UPt|C0(=[抙O׸p !#Aay"/uoWa9*ì` z9nE2ql1u%9 J| 'J黑2Gh(Rw ?)]ͦ/tx\Qh|1gR4Xָd&lbf`+kֿUx. ZOgHtŷP\™pa$m;(5}DW Ш؃LzJr2^ͷ塬bGV6z \9 (5Z<8/ƿê D\ /SI ')Uu3u ;ӿIȻ:ϴ,uas|1m0ڂDK?<_c~`meД=<NC=MޡSeP]M'|I Q{|v" B ٨܃3U{Gd;d{|9ٿ3hInVZcetirA41$B:#ځa_+ѹQUjӱ(aeƝH6/ydEDi>Z(Ã@`hV (ꕀIrmɥAZzW_uiҰhVcG|Q1/Jֶx~kڴQp ՝/E_JΕ;BSCr خCY8(>ag=7c|Y,F`GR&P(% oU͚7Gv<3L^Xj9fx-v0}\Fai8[xpq}8'Ν p'qo2A豠juco*t )δ!0J`C@ݘ<@TSzMU4([ӱ%M*ޭF :H~wip/ٚ+}%\"GЗeIKL*p<+^W D5|VbcIOö$X~ Ns%Yj'fģG~nFCo1v ǃy\pF ޣ^ʖzT > 6!F۩{M&.Ryc6'er^8 7黥kv30Xol(. } ʡ<~ju+w%iG)4lAlJpߨ?cbso{#Vþe СD4;$6Q3#l9&xԧB5(gRīQ'Yk8<@2 L(A]6)9 KgS{f~ŤMwV t0^ߔ;%Ӻ''{=8S7Ȱ2ZRO'&ȝ)S1N]VCi+-Lœ`%,.=_$teӝ]eX~KޅU%$ !gH;b½zU`OC@[8rlLbkؕ=S>0 fL@o(SE:n%zSq~(۪}'KHy45ۙv֕jW`p㔵;gd9g ̵,08d]W`o\M}PgW2t#Q,GǤ5@؅)ݿd(v}wLb&7.}|,\kPv6bI/݂/wOfX;ُQGV$挣®yf2CTmy)4X<*⓿ʲ&pQiݷBh ]]3Es|am:hƜУ&yc%wk?'98T_}ʱ 8|Hzd?'\)<|/Ԗ'I{ ?Li㱠HjIN _#u$u >v0 RP¨"^ٞl.rN10 <?m2Uыs̳JrΔE%.u:4>H@2,T Tkt%|sV%JE=N%YG-8efq؎ʐu<>mR;>3ղdIi9Śrf/S倊i4W4^`1\Ѕ4$β hKܬa;,>$vB sRBc zo *|?osaӛ1ekVHFo֎6'h,7͛Nx{=Ώ쑪OCE;1чm>e Rd&ldmUhkb<3!#pOWj|AF=}˙dJ7F yEg̦⊦+Ơc 3IK)gM4<lYdiv݋ Hyl&45yTe(P&:سlAa؅F%I= F|ۖ*Z[#Ho0S3RRz(N.=FXd\>!-2u uo,8p ވ=R=t | n9wո< -0 KϷ$ֈ ?nԁԪ5W_ş,ֽ-^αq(8F>‘S•sBS%ExFt~9#$rMR'Vו2>  tY<{/4[ҸTZLMKvK) HK8ĭTQmZКi\kMS>cH"Y)Fiwo!ft nZyZ9{`SX+CneB<_"9 زX)0(:ʞny#>8;D 0)U">yBz L>^D3ҠV0` [L_ ҍoV,V WRTxzmR|uÚY -8 g9nF$:?ڥIѵ-{5`ڠ.Wxc VYc91Q-'.H3RS-dAI}U,6?``yMϛg"mdx%"Q4 _m(qQIChg~ {nE/2b>XH}GB~U-S1JN |VfJ$6KMDXtyCH4i]LK=%00: ݟ@@4'hrh#kNN획&J T2wHKTn[jVj$) fJ$RIM<uwa Q ,^^MS<Щ :ځo!l[}Fh1dc`,}bZ"\! `?]0?یcy#\jOe%zTkFwZ9)hRLװu‹,r KE'r0!B((3Ex>~ O@I=zIeXAHL:3/]1(Q'\cǝ-hj0bZ̫[ueU0FlUtÇ5s`|E1JPdr,q8Q7]^>EB)Y5tG>)ʀ{#@4vll._2ږf0μ0Ne_8J^Iš Zs4j=C2/m;ht6jpV죊 w>ȱ=lxZy"$HkϰAK1k ^RKY8|X7<0CiI %: #΅;YRUuf VT;#CKCZJvUGL Gqu#N8OWԘOi*_v|ietEh/EAbMve0FD o#o|dPVQ9tK 1DC֯6>I5S*H'5AGlOh H1ӟm$SzƮ{/qgfQ>@Z:hA Gy7MХ$y9] T3${ fP贡.1[fTjq(0_z6wbs_!Mr%WSUKCmI }m[0r˸ &g!m޾k?܆t HN22N~ Ubrҍz3ޙ@2ydQ} EQXl#_CyƧ8NfVc T>=)tʩ. 'F8ץ Mbw-%=߄xZ/ iK6kcYwbG<l3>/MXb -B2 (12;P݊z.+LYWM[q`?zkRHwAAgJYnp~Au%(}}/;ߺnoF>v}WVex#)-k#HJsRGy,j!4"BK 1qPKH!⌄|ꌫ-:㰻&2*:` af uDh֙j fUy*T < SSn~ʘHjGjx6G}Lm7C<~}CBUN^bF_F:>4Y=m۩s+.VGQs;z߫%Դ!CFҧ ۙgum:z1w6ݳ8>wh%FU(UQ3y3>AV_c<,-zUv~uiB 9Hʡt٣A}k *b?C{FCZ;_ma ̦Iơ\D\лr./}mU!0Rp׺V4 ;) *9Rv{C`T"#cTZX #}vi ]g,|?H2Mm W4/LdƄ&ƍÅ&M]N蒰<ڢq`:n;X[$o %=bWx""=A@ݜbAb@2gG08B+&?F7~t^2?!Q3KiM+׏m0e-ֳz е~ aS?6C\L]p=w z'F!eG)Q=e璑dWW[ ; r˱&np rփWtMe*0m܊Lx| 4kFFjS)q7q}Fꬒ:7Wpj!ٙ|szп EB2|~jkXWa,[ꙁRo[ԛ٠J CXDt3v8 aфvmbj( qa:L^hLa헔J s Jcu["YegER&r %Zޘ`ѽhDbF^~^k=yJ]YUG] e\Hs87*8MULa 9]?Pբ1yf PL6!ORtZV cF~ŘC7a6M?-2GNZ`0 u.m `wo}Y ngcb쟖T-~r-\]gv_B olYlZHE]^`E S J)xMb@,UVglBJLl$'VV{nFtx7hk+y/l"up5<?V1zti8tƽ]qrTK@=-V6zl/UO?tCbVRY;O_+fm*l U =IZ2ֈC=<9 zjjpcLlW]&e"b t>%ڪ1]&2o}LO"y<ڛEJ d,t1?3Aa&X1mLO#l0G_uƁ&Y172 dxc;3J1I}9*f{8mBǀJ-&"E[nn\f\@%h^\ rvӧc0ޗdB>,[Iq^LՄrXExlWV!DFu%ܭ <,ptn;䐎Ӣ7Z'[L,l;.u(2O~0&(-U7: ԱeaSFc0 1҆nAJ\#0/oMs'8H^\pb6B2ȃ|1-SFqXz-r{[D3[,|h}a);s2!~.aL|}ʑxkć wn7k7;H.vqQ=7&[$֌,li*C43̏i `}%8X!QdFb&6c *9DMwWIx2sG^P*Eĥ@oK/>=F7oeY/ȳ:`-?PUiSQ.gRDue"7gsOKDuaɉ`P<cMՌrW>a ׺Bx& ]1$'qT3xƋTƾ̬}22!rf1:SC^n7STj;vphh˺lfISI0$x${}h(]U`}fO0A, [9 \0żtavL䉙fK@蟴1[ivnym0o_Bxʎ$2TPZa۠T]kԙYv,&LmRbG N,Zj$܁W6GsKVY]j5KXbLY~m^bk 9)Z9f!6柢sX'/96O}- llfҌ"/FSB^RFL~tۈP ܯv>®yR|Ac*ނZW͍sy3[c;Ј7 *ntmUeOو*ј;`AI68|kImIj%9q6)} >} 2]?=Fd-aIx0>փhC@' 6T넚8]H^5d:XaHCct١rQrGZo VZ+P'zַ4-{rڸjI7k#(tk 1E,޴sM/Oڗ'@%>V'`zYsVfF ͚b.]6Vn?fVkBL܎;􅷅]Z}0j" /ரdK *Wf*.˺q 镤IXYQN#{]_p vw tupqFZ){{ɻVH }inYH afQ8dn_c%aB;e])n GĐ,FtBO& l +eS;⭹;!g[9{ zjMm$_(i:9QB!񹫲l’Jq\oFV:+>FUwPd ypf]ӦڅҨ!,mx^idȨEn*dA#_"&pa.kL"jSؚ6à n:`zS A=RW ."ܗK_w5X}_imk&j4xS /1T_Pz . 2mC,+3TʆM+%l" VKc$3΢b-O{yq}POBwK\r!vEtof?]zgRè&~G#ikGXHHfs>%5E!.h'7Oh||~li5G@/=u66GNodmlp`OEqT7zi"BkH>ly谡? {qThh۟Yfub1:^Zߌ$wFL]aYr 6CRI3s ѳϣn7k-^+YJravv5!xĈ䖩|Ɩ2#Q^9$i8-.o{m99\~?8j}eT($u^;T fn04SI|˰xב$aC; G2rI]Ƿu0/S0f{=pᔝ|F/dA9F^upfM4dDFqIcZoZ iV\J dp.;] UzR-D n7 c\pf0W*=RE~i̓[ 3,SP 0<rEzZUI?sO[( E}@ebQÏp!^WC'x~gŠǡ?-mGʐv(^E8{MZb/K *qa%΃2?ZH*Z`ȆViIcl9A͚~ pyW ^75퐃y+Z;e|(7<:V wJ9$#ۓ lszUC͘-; }b] ci?Y9_Gf12nw)2w gз[KU2P.SZKVP-n*ǦO^NsX.C;oYg0♅w~Owx|'ȔG,zC1T:-u NvEдuV7)ƳwʩLa~~Ր*{ ǷsY61r6-Y@x^1'/] >tҋʞǞ;'_%$Ǣw zi/LC3(p!_X?|͇u?B= $k><ʼ=_DbJbY`\Q22(MR;,c~Pw|i~!_Iѭv n-ע7M|uxGѬ(F٣walK$Geq d9yg4%ŋ )IQ]ffqհ Ji?D H&rRGm EsOL;c \KcK( 1,hȾzMP Vh<^:9ž*Թ #0sAH"x/(wQvlA 6%cثq'%;7\f [;ss)1.q""ˇz&O8kwڣdROwuDirR ˶Z0YPuIWHH % &/Dܽ2 e4l Lnu6'bDk=nkof'1"C-T(7G+`d@ \;׃ I5ɖ#'R .Z.TeҸ)!Ar#ԛU0Q/{F瞺:`JipiK8Cj΋wXd-h _(Qαs ]iC@a ,$<0Zڟ^/n X9hSmCu^NoڕqYpw`L/Ga2ƭf (sr4>7fF({?fVQc`\:2{U?(пn֐~5:WN.HX}7ςt=yqGM~fy'0_= {_Bp붟I*7YjF?40u&*~$3U;nIIP- >>|TX[21GoM@==Rk7: |F_(WGyդ|Uꎚץ\\C}q/UOGs4nOfa[ǎM dZ]t֎F2$\9+E7"/5Q%XiBc0]@m5d- Rd1uwcS{w$^/ ^*4㔆2٧0j1nPyϤi22BݠFY{tUѭHO] :AhMj1 b^KWɼCUdaq} A^>.zF9 jiQ׽]<ч ,C\@>9G^à kDO%CGM80 J/D7>_ l 0.R32`T7V}$(B}i6~ Áb쿏)M*tmzߋ`)IplKnY;иI61Vな9{aUvxZǸx0f,S|9|\x8dؙ aG‚!IU#;Ydz-k/Ԡ;r 18)tMMME} 3Feq:D_kmC:MX.3KڹVjlPzf鰞~4dܢ6v?Ֆ445l"5R GR ZS5|8k4'.]rY}s-QtjjLZȞS&_V4ų$VK߿YWRdӵ2poQB EWIV"@AW_ib&d)} '?![CgWϸCzӔ v:M^1%VjabC(?2> qG_'=Q\oGXnh͉PޑZ]jUK qW降eMv.J &Vٻtj{ .:?Ps5%iډeN20KA aeRvG\FУ=_SfޙBpqXސxgZ!6o٬cP:q{3 OĨQuTbBWJrJ}o|B\6Q8:n&]uQWKF'y9g3/"#顁|p$`8d )̓-(ǑwQwz E^>!8O—Maq==*&'L1N[HVJ p 0czα[)ȵ*9l0;JBkZxG3"M|=Y2&OL\W7|%n/%C m^G`=Y~%]vŽS} >-_dY N0sp]$œGh:˰mV"3ukZzM:7 k>*jNE$QR%dKmlRD8vk1kt*=}i X/zh}grnU19p<$ݲՠX=i⢵O .q7d˺0篥;Uj ?pDgys!d::CjehO$O!pmZd@Φ3}C_NV}mI!s1d $ "ZJь1dǥ<+0 EoeVs3a?ʗ>~F:NFg`"SKךTmE(RTXla~ i,'tg朱rZc!=%d1t xm^6}iw0'hVΑdW_86M*oFe1S >**y!qt;8L0,2#ҹ6] X6c`Z# A};lk!Jje+BY| +K?E'C0 .h}ȆtVv5 ޷7 S]QAy\ H@Adr=D…5S 35GK~˳6 d_!.ɯ}RW@r#tJ/XFmJpyA"zlU[-2^'ϳ.&*ixOE[ ת0b*x1(u+820jWsf%?2 1PWxbb ,a\7gM^ǤO\v mkc we mq)&klS~sTjkKÿm}XTOj&6H*xVT4XCl0^lEZU]AP)E" c1BY0w7ZYk@vx<怜1X (stLwkuө g?o'*QͲ"ټ!0vY^s؝.C[18E.[/@D* c* O?Aq`7'ر6.Q "W($5*?gQ*jjZ3+} st/!2h|`w"_ YX8 /c覾g|#Gߩ9|75퇼,J.am$ =d8@K٢ ~_yx(dXz5c:+b/TԼeAĻC.nBƋyأ.>nήC|]`. {յŶ<Μt(VZ%@\Da;r5=Qfs( w>$T hV=b)y-T|hfz+LY|AY|;!zrْUՅ{t{jyZ~ijfo5Wg(qA9s>X 883Fp``,5 DsU5+sv>MIp^sA4TUP3> M z|]Y2V!*l+J-nf6#hPc?JxfY8L,[2JNߊs9%CMɡcKsӜq u|)^rs;yxÚ BiNO|Qm kJ"`xQTH І[WsAzhy Wa晴۩zie *6tL,reءh oʉ䇇Wsm7DX`)> qp)oqůS%#A~/=o;%Q]X^DX/"By]M_"3rc,&{4+?@ ʾf.—r rŢX7 bYĝok.7InusF}ȆɀJsÑw^w]'cC:N*l<=y KS#K9;GgB?##Fb|Vǧ=O^,:ǀ6ݺ3ٝ7Sڀ4kRޣ3N'K8ccn)W:U*8561 *&/x"MYHua!28Xا0h&\Zq1[c@HjntEj, {;ydFrG+<8c-rO{][Xϝ,Fw_"g. pcǻ6@[PĪqWݢޱfhX]6.ne lӵx?dkaB[JV{q&8hW`dt7&nEXTcxB?8p)F2wJ& 8фk vz߫#m cb2׭VH7fpZ`2C=4#, EN9,O+ PdB|I ~tL,jɊj/P6= [0t$D /fsj"-jcdaE^֞25{Oz޳ 6cdDD"Cn+JOn7` 0րC0qF*ntir?bj&C@EWIW 6ӣg(99qlU-b雒!X-3g A(OǒJ$=B{k6K"Fkxs^Zەy<7Axq5w{fԝ^qkʬ 1/aQJ\ő:dG@:䢩C8uUM/C'8se='J2g|[:~aṠF\$;uB~=H@R_<Nv϶_\ٛdK*Oޔ?PKa$UZDRigP6/l k`Q,>F$5e@Vn»f͖Ft^dp"ԝ+P֯ub"Z_Z-U Ugַ1_ĥ>֟Xj婠hVy9'WHc}XT,ۚ2N c7ű\xzΠX-#uSIt<t>^CMO} i䵈3b|$wч' \-AJH#=׉Lh1X"ڳ4$lub9Ns7;2 j"lΡې܊tWWG $H>da(~Z0Gy~ m(W]{~V.'ϑ;5B7yDZg2I""p.+rdqGM'.q(*v%/uNvY죓k4/88/tvp/2khr$X>1RE'F{4|0(Sħy+{$V Q\Of5"],WZk,S*v[ _{vW` s-]v.D2,gסni/'3.a40uQ%3oK,lUfAC߮j՝{pc/N}JH+CAG0!ضa,W %s)|*f0P닔߳ڦWi?Zi $Ƴl_7a pa"ȔH`ZD^|;]6s'N&*3mLpb$5Mj;o!O9n,H& hxˡյ]w? mFG=HC+Qœ,}]|&"=W SR~bSN#qUc,7V)tRj@2vKQ& e^u%(@Z/SOA= |.ݭQJ7; ~ g\(H8[ KJj[.n :flb(USx]Q,9,Nj+l͆&4X.# vHJn4n7b2:!v/?g,v)Xγ:SO@91'%6᥊d3Pm- }M1`9o"d'Zlu-ql߳1UhD<Vi7Ķr=m!v9v5-EvP'U0U|Ǯ`\eid샓ӵ!$5䒣htA@ ٬6"$R&̟S.wO? &kGu&ݗ|h(=[=3;Ɉ켴ri,ObY^cegOeaFϡ wFPs\,tHy<6{a}ƏDr?|yEc%ZPt؃KhYzX߇`K ワ TB x/UP+V^W]qۯQ:bDlv:i b'Њ8f葛G3HfiOh2AԀЫgh OB}mHFϘ ,-7toǠ֤NS~H()QbR9To'ET%L4<(ػ]lصsh>c< GQ'Lu"KS`GBlXbe%-$w`2-GD"UjPN ͂ WPNZud(6m2NyU ӴE$ZOK$qOZBO/Wdz&PX&/p cnO[oNafez>aM(ۼKT Ls@&# +^p9JdPl~Qb?:'@]&YvT-6}Zy -PjᔠSrZ7+t?6y+)*rh" b]3V|x Kr).56Uk48ejIG7ɚNWAR(-x[ nc-YoxEAFT\PW\X26n+Ym25VmdĶjRF9Ej[+|=WsRJ$79utq,luݥB@QE`7ڸwxk)q.7ľFZagRK;S/I87)Rl8ooiĚx8wRgǫksz݆%=~]C+kRMSa̤2e/k湇Aγ{n3'WZ@qRN N! v='A>NocF4a˩9`]6+N IlPGrzj5Ivd!Te^"NwR HXF+&ihT+ oK{Mx >bU V~}XWؒSCn (D9bZGВZc^U dTQ{l&܍|t"lѝv0RˀAz@%4סQxU_*d=j cS.beڣӆr`RIB}y1'* ^qv9RqujR:W @Tˀ}rAFq-ZTD CQy#cH#&0&y6z>$ΈsDZ=_!˦וaVe 1-~^P.@Hbryinۏ0;C Oaݯ`-ߢs쭡]C ٥2lݝ[0m5Yjrx>3u:9qZ6s?M*il+\p);ym#&Mvsz RAV! 2Jz`>+!6%@wcj I0>`,nΪ I1Ƚ֯Ҷ3wtK5 1@[hB, j?B:m}5Y|jң=iZɣ%c|MnIIPEDnkH{&N)Ib^/I9TW ЀddKX"˔H3>XQTۭ:L,sk#V旓wݎ юNH]'.Taz@HU}S2j+CQ\O)Y.6+o~V[ߍ[hּ%: *ug(hXڃw{" VZNm #9Du`GDvZ@{ߜ>mcV3E(V!R>Պ>:yES*6㏕[x_z_ (7..d&ұ!>?> 5\wuƀhW' vWD6YeȇQT_{_9^ik?9 ]v-?E_(&-d/vWlKf|܍~hg߈Ylꩤ#~x»ABٽG9s'e M{ ߋ~Ez5٢#3>H`@,@U ^]-Ё IhNRc^{)9)>?Dxmi8*t$4ւ-˼ݱ}ڮ)SSNSvu]bhw>W5n#?ĪYwHx_Q=o -}.&ظ7ҬqpZu_lKcm≊YPSrY6 2e/J^>Ij̺&R w`H` &uܶhLSr>w"Yzx[2aUg'@e(tHDY0?89;ߤ%md:36>CeS j%رB"wKO- %)3و}@.?`>xC)XC+VTHꙸ6%ɔ&>4@ҐQ ՊϚ]|:RQWOup3d"ZZggŕeRO0īK W= 3hπq7E9Prߏ哣%(9mm ,$K{qFs$h~p8^AmvꌛYd?jO sVjPS-;,c?TS(Imb[gг6@\NVrm<\B Id]|۷]OXKA5mrWpG-]*iF^B9_2L,?֢ZHC m搱ZXuu2 ݟi  S$-2V-PU:Rb՝. qG's)]/ӎZrV3 @|%=myi ۽6P'?\*miIIiYpN'e XGKb|DS3WZt6ed+bdį&GhFH<52Blt`MfՐ?yV?/Yدq7zho-lbSNyV,e_"-]VT +f`RtxDqR.ÚXQzpQC 0o[=R^Kk]7U/s9'пzA*QEe X`1LRh.ݜBuR!|:bn/|,8UO eÓ`1|L2 h =Ҏ<(f>[V `쾻 ~6y S;2(rϞ+6#܂-Q}-Zd܃sTW=4Eۘ2.8|o#H# ʿH)_)؃5\wN/B<]`vbk d.kJDH9@=棒F81^NQPPKJAbRMj}PDi#2CZA[Jɛ8+]-mkvNԕr|25pЍ0h; {j w#j)0\Ͷ5ߧ 07A -)._270nR b`HV㈰Z*6ۧG7|FA[Q8_j^Ob_  f:g0ClBʳ]4Մy!\b0ixî)2U铽.ROv=O- Wc(fmy}4Ai`^뺌 `֬_4X<);?LC&6V/(|jQ̄/ 1AGKt<؜% ͆r/>|1ذ6~p+sKG?ܞ3`I`;9}Q@Hh-O0-q_W砆@Y FF8Rn~'W#EdDҨ9zOuoNod@-D^@խ΀l❞ Fj:co;&E ŕJꤺ'&@iϊI(V@C̢g=Z 4Gq>van& {n+}Vffm"3E8?@ qAm{6cþ O$m Yi0"BzքR99=]/_tI183Qorw]09;sj@AzupG /?ʋ9/,xXx!}(݀GK&I+ʒtvUۂ eH{5\~3E Dw(٭B #I)ÒDUMc ?4L~ͷksgKt,uTȾc~/I Ԝ.?u[Sq;MzOcQ YM09r0DhٍA%olݴXp"P*)2 6ws{øG)+5Յ Ԗe9[CI,> MWsm䥀a~tMN?ߝlb7G骹s GD]”b\P yGkUca}}i4'\P$GɁsS+[y-w0JJ`cíoT/ uŌvάGQwk\&* ,k+;Ԍ@@D(1 "ZK?Gex.B-{rmJaLgq{wXOmf^&~MaUrp;lϮp&\qk FB/%Q9<^fώsQCecГVqu{*,e}[W{4i\sbJ$ze}%KT?@,ݫJg orfEt\Xmqj쑘Y7ݸx{Di/TdLd”Ƭ'cTKμ#M,VHMSsjFd5Gy '> -ihgWY dᵂsy,ZANͽ%կÈBr<,3U:pі]+zǝ2urJEb vYO(F_8U?9x;p/n[D}梩 L ),zBdRW9P&xP9noϯ츖g;f2e KPpn 2GO_TRK9r? $͎{# 3ުfKy/mB=+$]|z=ndӇB oڻPi42?c]>)Tnh$+ ɢ>hOeˈɃUD&-6zK MDFsQx2ttdzy52[%pm2Tq3~;M,L zԄhQjwYDETn- L kfrjHr5cXp$K'zϒ,A%8Z5=0a0eD|abAq֌gy޼У6=djb2 Kv>Z"t:# }0問B#PJiS -*_ FtBi_}nra&ϱ!%v=8k#=)p~.O5$XȅѠ^ X,rX&wsi@ID<`zxo,j\VTn]( E22"C!J,(q\ ~˂ct;9rmlea_Wk5? "b^ЈjP )rI jQGIZ2=S6F7gP\]"ィ4~7#gY\qWR[mup[9yƶl[)sr[`a*~@XRqy~a⌏j@6:F"U(Ǿ0 2ڞdd߻ 7)hl#d;㭠=9LT|JgngInU*m{&ckmFtZ<U4 9I\;C:3{lݟMfJ AC"?q6:B6́ 07~b#cTn}-%ח~fluֿOWU.(7{)ֺwi4z6Y咼^,SB&Ol@m5ѣxs)VcWoMM37(vb^.F[!$? AK:,Hx [Co%o%)Gܲj%k@:zmL7ߍl<'`[9g϶ &Yz`wy~~떁WV@sђF۸c`g1z.*] 7rkXwSM<{!%V11 *fOV}B|+l,#Q4MTL8xEn*ڗtIF#5yŴ;ݞzAڈ.& 5hɪ,Pz $ 2j=0u' :@_bՊ׊ ӟz+bZ|٠[v6!qTt2E%ʳo7~=h˼omǘ-{C)Nk$XriEFV]6,:y$& U!ҘPmNDx/T ~g:4G\(80RC QHXLg:XDb+?GBܒ8> (zg'CTxȻ ɯ?k`_f}w˓Oۃh{Mۚ+ qx8#ȯyd`TۭnE;<4| =؍ҍ .tOjn9Ɵ{d&MGH@Yw/"Ϲ@[`.r*@ ̔x󬧁I H!FEkHmv=N&}–{#A%3כL C_Lcގ)'pD>ԏ \1r|3Nʸ i8=_&cUtT1X (j 8#h102D%g~Sf_pH9vZدSm'+A+=ϰPsܤLPH}S!>!(+-d!MM6uԮ U__Bt8a h#oJn Dhp*65?ld = ?Z FSj<-/#s.?cZ2f) R_ԬU? U 'mلa|M$Q jWi2ktuWeFTҔeo2qNK{t%ݲfO|}/\W ;Icc') d+(M%nXTNx8u Tx9ӺbWM]uTXǖ4~! s=w<}2A㝎3*Ub~ݑ {W^e˕QatKӃ$7FmHxg pA|Un^=^%B b6wDzQlvXx{G.^HB_;%ʡ\}5Erm`v۩GNǭMB<Zg2cs,zѾpLC Rry2ocR^f)Hvv[BBu,ZEYK#kҗ0d&N{*V[&l"}xTpұx+eVn sڌn"ߠs! x(l2ĭ>n!>B;fX[%@ 9l[_㣋$ i:X-GL0֝-2P5RHw9uRDSW$R:ֹ͇Ӎ:K9PK0z%M:C1Lar(]-A%5\uO))atmGzo6ea7% N@:߫C`$Cԩ"eiYѪ\i%"1&Kj7;2O?u#q3 W7l롪 Uׁi`3:A-yn\RȨ]=}{2?^Pb;3jv\e$b3=00=C`BL\ ;s.oX~tKRdH >/>^vbһE6 8G䲘D#( j! X|`pS{.:ڊDqN=_LFN GόL` jWέ3 *`*ŷq^p NvHRi x] 'atƿʲ4Gx 81x&Ǘ ?~ĵ$NiH怐weuT!Bdȣ$d88/C1&Xj0>[p8>E~rCײ0Q)R|4$\?ycDIVqMͰU&ʘ^:_~{%qo Zh5#"9#q/=!j(tzD 0-K5H }n=~R7"{y Qk`J_*;}jK۝C `}h<$(Ʒx;͠}bqZK*ҭsx通"٩,DWqIuy|4\n8Fl-(0L W;W)B\Θ81?-'UɧV bKCK!+ya@Hb`dJO*˷+g ƷT]t +1!'J|4gqm=oiW`9el] 71 GD^ csNٺ9ܗ$'J$cXwϭigG-"v@"'Bԡ̏@0EHD';6;əiHs{,z 7|}.ASm!nR75't~$x9/A^BaVcnwgi (˸KsJQ5se HՉG4ٶZ7NgƕϤRrtҸ1VXg\ ~%/-NӌgGaݪi`I,%1!L!!&J~$}:,m BzC:_K6' PV:3CE 2 n/}|$+c}"v1XԜZE069f ULJhsAW(;3OFTG1WRĶriێ=Wh/+Kg1ٺ5I`J @'e@G >_sa7J8w)I%(D6wV&S=Q7 yƥ׏'WcIp c ;nȵ譈HmVHof NЧ.(Xvsyћ\NUU6K?Wxe#(ΓihZTE^q=1 I7%aE>ܧ Kh+9aJa~3mу,g(2(иV(ntJJ)hqc}Z+/:R n:6#ıh6 Fh]/HɫQאB#dnk](q01:Y@1=b.:Zeo"6=d٧ꮩl)1r5fxQ9TCi<&&—x X ֤8Y*y۴Dьz:Rѿub~EܹsYJN_ T,]&1n+jr6` ICBk@0f`ז߉,^&/:("WwѮwP`'3Hn`̚J>LhT6?N_Dv%Qg*q^ֿ?Ͷ;3; >(n։A_gwc>72*ߟ8 TG$r+]_^, /sPl>88Pp%P8kR{K7k6uoBgmXER#/G3:˞!E LO[.ShjgvJ6fuە[M2vG(IFo.w27'MLX<Ȭ~h$H?P`ԣ. 7Rã+}n2d8-qx1raZw Z6e9rvP JcUШȱ d7 ׅSփIlzܔH.to0 ! 1'$7-eH=w ͭDO!$( Lt喭 maӠA돼pf4\J8E~+-&YӠ f"$/VpJCwPPŦ{)Y`eq5|!vv'w~|! (1[8Yg% +JڲAYѦi֝C7)"x}=:ZY)[Q+\L 5If,`-o]ͩÜHjk#BSh| 7lو~Yݎ ! {D7O! X=v֏`A$1*GvCtPqc$bplx/smyE_!~'7:n~v,n}@Swjj*`yS/@Oe;XdG ABKHڬ8P_EppZ@ Aͦs8Gc"M Nf~ ^5jz\M.NIp9ʲwGں h=Ǧ%eZ;m^/rP5UXAyBepMo.?I@a-$ۄEz\;w Pgpx3DҨՖ-`Ze-ڎ+@zj83 i&L1j#p['Fa:B4 `t}7'f`kSh+Jر\r.&$6-%%?ƍ(.I˟&87RR U!RȻ:d@8dP퉴ՐF\NҜԻ9Go(4=Siˮ*XPYфo$T^2IXM ;^rTӐT'̏[ဏ 0!yk#9f6܀ 1J20\Ɵ;&.m޴.$\Ow/fDͩU_ckI9>/Uz Yтh/?kj_}; L]p }[IĕUi*)~ҽZfN7\Q)UN\-'f̽J+3{9Ty֡yщv.)^߇AGۑC@"ReqpvbO)nf^r9AawS3ׯڹ"v,E8BPy)NQ&ɣvg &GyH,)"d'SXv޿O\ë/V 35G/bY H];J;p e:7Jw ڇ;mpV3HG߸#ᒕJQ\ ^ovm{Tu1 n+dtWVB4rMqj&/.uE u+sh(2_t ٍLuΘmy8 0HAa6&ݓh){eob[Ϻ\%d6kYqKc$''p}0) ,bʜK7$`t _*k⓽ꩌRiB50Ei:fD֐u k :fd8iǝCEyeFόr48: T3D`Ï;pQ&Xajlk, b>Fڴ^e}&JK_iG%XG`i~ f,꠮V83֧GL h$Hv%;<4z0V68amޞ |9)Q4:Z0)2@_tp=[:y58Tų_=HP?A@|zS2>t/6-Hߎ?pgP 'e;(*BȠ-$B56{68Ò#+bgzY ZA0/Ā|AAq]˗W{~YZF f% ,M&.|?ⱮBݫO`.,TH64=̕Cݾ~L 컞f*vZ/I{IE͕+$* 汪{Q&9ƹWgp¥ 7 8۳]TO$~݂MIO7ze?b}q <($0`6Yd w/cIunCC|+W4ʄueN -5ʛop[Lv2O"|qJȔLzKmރkIACS!=<[HLֲ'y)[U׌ĚӺ+;fiLcIfoPec*, ޸@ /. b(>sSj}MX%dKQ0}!awJmCZ6Vbكh~vs;#DxF6IQP_QrX?o|T<^jV> u۪JQ]LI>g8 ?צ1o+H "j !k >N̎S^t4"tۃor\<:NL˭&DfHfٰ?GIkGRW mgr({ Vٯݧ8v܄fM;%Ĉqސ'3{nfb:Դ^Y+W3 Rkݾ?؀ ']T% xzFvfYgeWN"FJ b3؋!^!D#@JPP |$ɽN6w`ړckxTe}h^k(~9Ӵvo%:i !~?FĮp,ry nx$cN7DnˀnP~wFRKȓ~+fBˇҢ?\e@=l:r,4u(ևVf[ŭ12[Ipod$s{ĈU~$qٻ\r,.9' `uu#e1+;R-OcTLX8u5׀zf:j=H.k]{G~1Mr[8gN`36 M U2UФWU:sLA2ҽ~Csg~v%mQglEd>2\,6擀y`.=.Kfv xjS9qX^n̡L|]<R<:p4,ZO84@nTB}\!3K(:3d~Wۖ6 lgܡ\ק\ȑ\%I-,jxQR%]p*( <\@0W%tdgt dE ̄RpUsyDLYbC .cHIF^ *+mK𷗬\pEȖ^{F)_7K99m|rܺba֬n}h4Hƿt=JI^% y<蟢qYxh]C/RB;X7k:/L~2 33) J'X;+z2@C^jqEZ:Y9v۠{ /:IXJF1@ȴ Rl@`9n'W7IY@̼W-KYx2gx/Dp XK|#ID#/7'|KzVz*}l61!nȝ l\Z`C E x6hoH}(ߍ+m$~&~NvR/,@H$XmBuS+c  3#1PVg>11bۼO'4@Ն7$*-TC2'&SŠ^V?Ej1)&_({O,b):b y/aaؑR1boH2߶ ))]ʘS/nԟMKKkPQZKV5#-\6Kl-C<%Mq 8/:he6t;%-: =ύ&j@YeѐnN^[;vVgS+GFٚޏx6H78$%d]mu*-=^k(hrTJ|,qžaاhv "0=Љ \T1A2ffSn XH=Jj{ _At u[qf\2lʴr$y8XTtF:|AxVphL7A#W[^A>IgJ N>` {c*ʽcUfZ [`w[Ho 6֫sda JJxUbo'd,`mx"iR[zCkd^` Sη_&- ?ErVc ^~-a ghR zfVUυ Gѣ@Y-GiFoƩ i 2)(Πϸ'd*\~U["ٗ \unXY=0lC[OҌCng7f->ps-GK&1@a/`q;\TL4ˌ2ΔR6?%yӱ!yn6^@ð$D2MXٓ͸죹68"l h#z7/"4)2 㤻-/`/([C.n F|/ &ڦBd£^kk^JYp̺f {u몯=GP%o,_"Ox|w>5 {!("[NOj :6oT3*OGO6jQ*fCMF ٸm!e\7pK&Ȟ9gF|SܯR:DYccy0^Ì9v/)k0ۺ7Ĭ:@> `:T@B%]:^gF2tZ2> "ῲcY!a;HvLjJyABv@/誟*AKlH0?*2{bRN) v'e Cm1Psp=E(@v,E:O'Cwa]"גpp(XƪE`%&CGñ EM=)HP_1pijەHw9%hbmS c]HqpYYg8DqVF4qZod; (Ka/B^X>,?$Z~V< r@ǭUߝWKP}ԍn /6PļN` W'nW7uNMBnhtgkf / ) ÏմIW/aepئl:"\9ҬA27#8*)M—tV)/3ᏟxTJF)?hkxx k=ʸc#wWZ"cIe`kʾձ8ȺTZiՏrEjٜp ħ`**cc9t 2em a|>A]1hJ&nw֓g>k+ʕ)lКޑ4HU1š(dkz.y'Wү.qc,b׮HżP}8XyuV8z4Ђ7 G?G#~#sz*Vn(+GK&:8[NB8(MI5 %,S t?,OY4go2,w =؄4IZ' .A%/sdWjc01;s>L$c;kwpqdu̻=hC`W=lxxk<} V)hM|զL$rF{ierDOz_92)0#n轻xί0 Ja9 /oغ"1<ĄDmr>nDɫ0M3e- M'^G;.̽jX0=Ъ?WqY?L2JCr8E|+JP^[{S?_Gh:u(Mn1^4Ɏ~#R@Pr CEP&k?*  v`Y0b"F2LniYx5\H F*z߸&H@}6I $Y(v>qQFRI+xQLam,Hs${TFE 3&(CU4^m.3e1Y5 lct;8ҟbB .`M4U a"/#;31A:z__OeQ/ıAoZcR[+^En!q4ksD'YpL,q`wh\Sqza_|wcz{=rJZF_׭"^hɿf[`,z@)/S߼C(vAvﰍkWTƋH%ndU'# @Z`j}أlGWS]$n;)Hi}^oRp"N羽տx.uAcATA gZ*^7tK+^W(g攩opڗI}8{,+@u𾑨 ;qZJ-n[qY)jV;5є7p; u@l= /CqP0gʟ\ $ j LqHe!>a3"dyܛo Cxt@s#r5weԟ7i2Hqh+p+X qpI (eH/L8;EȲKUhe)uT SD9vn%N!ۀxy ̟iGYNr>O <*+qkid-Ono[VSGGzlN 7U1# D?Jܞ?p' WpS! |ӐS t  M(B厥ufL j'xrel>*f K3J@3v\ӕVʣwMww;A!}}g]=ZP&`hR<B&zg^37ASM/굃ac9^RPy#ig@ZO ;|Ƹ["$gmvB&J'ySRRqPw,Cƀ'g㚓oYPj$׬k%^4F#&~=tQBRC:u?KNaO׸XoC,9 0E¢A;a1)yX?1b IW̱1U0NɋFڴ&@LfxLo#ےfbShȺN:ccҭ ~`L$'3|&ȏ|*l#C`mh )ypN4N+UЄ%?ʐ%Cvtd 4}j7,#;rZ_]cb1ExgzڞKbuwB'H+pTINAgT|C@+GH Aʻ5ޕUBM$12tf ވdQ5eŐ;!_hJ9E ctn"!oЉ&-E "0zN JglaiNT2.Œ j1Z_x弸[ 0}6s۾rq bZ y֧n~-}F&\ӗ+;Ʌ9ҖK_ j$E]}צGEcѯ-|%Mirq[tir/~eല'MR>*+RO0y8Cz*G,Jc Pu9G3i3=u]ܦdKURe)'G餒?.Jׁ&C2 -9Vl$kwu8EL'Cju#rk=9~7[5#2 [nF==&XcP1zcb BMΏ Fw=wl<-{C1&9^3|j |X%t^yDDwr^X!p[4ϩ S"ph1Gu};V&'Ho.U(mAru7tpbt$zE6.nnTĄ`T%Bi/5Ʌ-XV te})NrUBz ʒ*oՄl6(Ν úYm0zk8^EOTX4~/9HݿٻqϞ'1Hn)({|IJ.B`l D8fA+n$?OXc j8Ĕrȫc,ZF*Ӓ 9R~&MTz &Z,ˑSYXzZf)t;Hfkފ@of~~BKd dzcVESem G(/B^zBԘZ>']C;YuQ:OVj]适5u@ +NT5_B{Gk4cqycu{ 1G|9!MRɬ*ʱVB)yJ9婜H{:s狛-P=ɤ ;ajYPP$UQ0LPĖkqXꊓ`dN0 W!I{Vؗ-gl ;+WAtC93Ha$rn¹W d yʅ^ '7ΆiĪof|q uΣ~y Ƨ״_?J<~;tm-UV SbNfLmd[( ŎQA6iGWG2yy RQڀXNi90z/9n&tuu&Lj1jlV{HYYg#Vs^>.Սgdc]:mp4Ph?vqG-;_lS@q> Ps1+PkӲKɒxuk'SlfR@׈Hemfti0gazid" "2΢7O\FM;z5z;?t$ȩm4N7,Ʋ瑓qO&"C߹vˀSzOZet(<`VVt"Q3'f2zFBn4R-pQf{U:U&q;6J$yn24ؑ‰Ý۔wYM/C.*g рlJ fEÅu1ѝ\_֏C]Kkz(U} ue5! dIS7.zX'n涹&uPNd2ў'P~Jo~آ~]H75sm9!l-|G?eˆTyy9t9j{X_>TtcwuK_yG5:[2UQ/6~JL!bc7&5 *1Vv)KT)*JFPićCdr]S!OjԅOe:r *Yba˖r2`O=o2f#ZA4Yaѿ9ư-"SuI+T9lRJrjrYp7Ns\c*k\q-@m6g$#_+t?d? HUP=c5ִ֮YVv "`vA"^Z$+Lf։k ^cE*t;u#P%~BQȒ | d^ؓ]Ec{{b3xOP#7A~}v (Y#WŦlV.@SP|!yВ&Vu6Gm,1CVOE`d C1"HWgqh:8v9V 湐X@Jʏ #BHx.6Mh45Lhe qiz6@:q`"rTl” ,u% w2Z'1: "J@/pGh`(;0{?N(E{Hvs{kx4y1)\4;LM[baGYyv+$ ˱w^>sk%k`m4miϯ_gcJ(2 oLŞyCtX-dz'5W~HzJlOF=+ `H%NKu0da^qgL= 5<PWF9p7g2܌_tKBerxh A;" ب) l8tz\SRvRij'-OO?,юaG4WҍD-/r^?):1-R15A ?˸0Mh;%F}j,̐..w>]p3s4[{q]ױ[ +YK 9$ ~ˍU"b>]q nXEߝԺW9錖= ,0ؘ8;^T?yÜ4PwH=Ux JL+y?#3'~{~lm޽Z4)/r ohW웂0(gߧ}*qM1}kz@+%r k4I5;Y5?6QJWTMͣɐ-bEg.Ams(a ń3@F'y"K @ֈ鋑yD#TYtC34Im*0US0{?cǺdǮl󽜡MS IDӍm-a Q,| >.1r.1' ߒV- h؎PC = _KCB eb7U, gh-ԁ )z*\\jUz)0 o">xųvd9zig;b7ڱKIKOXbM.e N⻸J&8iTOO|ҷG=E(,>lnؖF[C ĎRR$ 5+ycZd]'H8:M B^f]ݞ[UFsz ^Iuwh&U`abFcE&Ѵt,q-/"N ?7w=P8Bwќ8bD6Tsn<טWD8H&~M('rDS֎|>1cmʱQI^H?\z닝&t4B`h܄#ī+a`X ]DKY%+ r$.$Wb.JBc\Ll^ AEL{_磹;Az|Y֘5 d Dy]G*zFW%HBdj]`aV .U|ֱSRucY;d;m1_{,GeJlv7ʜeɦ(m$hBU̓`۝G5ETTwQBϚx$Wc@~t%ùE2$1j~h&$JW40MyT #шjYm$>|P@LWCiAJWoߟFyDjsRT*cOPOoamF?ײgP]OUrߓ]{NR'=l$6VƏsұֻgTW&_\Oq|=abʭ'sjdy`>\]{xʸ.MAhHM:^uBJ:$XFV΢3&GJ&05;B@Z[BqD+ocY3 c99E..i=ErDvux xSVH +`7#1s釦7F xk3 0~;p{?q<Ҽë^Eڸk`wNsaWR_W9x-wIs@0ɜICvZPM\|_;!L*S?~u]JGHÓuhɪ0u?f턊)l禟[6|XfAipp=r X*v arGRaER"m;!`eڔDl3Fg'ÿLb%F@i[%r"!i; UCHhkTk ŏCyyjm3Nq!}z4/}5'FwyOLۺKW9j&yGϣ?ca. MEB"]`r|)_zq:V lW^5Ab A+Ӿ!K! rE<}sFx2%\v֜CPmm}-?P'_Ϲa i[$Ӵ#/K͠WOԴޥ ѣ,L\?*˜wakv@yi.x q)}ưn>E`<4*CLndIH$uYGf'>i%."EyAOǮ x6&qw9(:{m™'o$cj ea ( Bcc^{|gYՑ>J{?3ҿuP y1V.m5DjvBT]\&PMh`娂uprBŗHɯt!)\6i`K)I zD+GVˆ3AoS9O mOmh:*(ү DEUAwL9Da%Ra-P%0ׯNd_Ѕj|rϴLBg2ddIcZG P.*K"Cڹ݃ -)G?NFYԇ ۭ/fB)f1FR![k ww4)d(m]dJGuZWr` ucu̙y@]JY!1,~LhmD0~:5hPa+PTIVP1"]dDhxRc cx1O쪁t,usd߈mVoT"iu<-ϡs \+ :6-J/!PiQ:2܊Po .u`)H5\,DDE: 6H׊{Cb,*IP&W0>ͼ, 8%niJO]:eR!S7B"_i(L9r#ָ!qJt%Чar #Q s h'O zR;%P>xWΡRS 9L@Y^eєZK\jEh$p^9 Uʇ;tWt)vmsZ0x3iI݊廴BC\Iqf᱁*$HSIsyMhy0 8PϬp}B8 8{Lpm8H3|K^8ѯkzqIpI'<=}*TWi_@%E=3c3^HXG@,ZXU ӟj[D&U/O܍9,xx׋,Jz![ gJC T,\=9Cԃf4w"-ʣ?UnZ=|8 6C2vj|ti#e~O[^"/$lFtlBU0^iB'X]SA {2GUUl,t 0cJbq% -)́bW̻gtx3R('0dK ~wH%oPKG+.IQKXu)L6Zz'5D";\@eX;seEEf"E#L}D%K)Q~]_h Bݥv6Yt<&l9,TN=_}%6JZVz_s_2ך{)5y? YKޤ|˔|0@4Qn/ۖ2$4A?S:/`8aRy." zi'0"q9Ȍ+8OҍQPaZf7 9ݓ:dX8Wj%;*95HR *5k٦΀5=:8ӡaFTm[0FJ 5ay\ʇS{C) 햎FYnk;ưbpp`R& ޮv+|zAϕY7jeH@ Tʫ3'=A):7V; vJ];gA\:уVH~b7H فc"s#Lm\P\=\-b2+̀(,!aL՜ U+ƓDSJwń? 5(ZUTW"zN ^t3 nhO b> / mSi fPG띝}\d`jH"?`5)*~jfhh#xŴ{$ۏ}= rU^]g;xb$+Iik:sWޠ*״^*X~8@.,]aaNlcAlm ,Zv&Ⱥ BvJ2Jvhr/SŽV cD5#JioIa6ۼ Ղ;( ژ\Wċ8ARtUvMZ>m-~` *,yYDxA3ij5)or ]MZdVN LR:. zھV ].xr١d.i5JIR >@E}p[֧\wO">DB'9DeDm Vg֠Ǎ{gvVF߈]0͵ ի݃W7'b }G pnjmOn];}-NeCܑPҩN@ Qr- 7t*ax@%W zj`a). ?> ohJ ڱS Q5m^NoL7S9GVB,#!U@|#sAHS-6ڕЃw:y>НT'ֳ/縕A[@qKo%_‘U荀\?:I8Kdk,^ff"+ :Qzd/Xm+L+7O8Os.ݦ8 6ޘ"^=N^zP!pOL,m2H!_ń`-SgˏB2Nu|ͥ "wx~"B`rmJ0[vL?| CDca&T]z!,S%Hjm}>f\'o& BtXǷ[/ʚ wӡhIjiȺJ[_?kPΒbKgIS$z;c,.n2z>F.\2^#NVo-H&;z}^G- }1!agL %pn>B7Rƅ,;K=:HyO@D=`Dh|WLk,^L`j(&wx:Ф³xgNqX}UNj;7 G7QkWu+u2h@jx&e[D٨\Hs]8Q妁BOO޹9Q` #j5tI[2g  `a@ !&t2PنAi}9j"l7M穓IJJi!IԹwTwM3D`,Vx[3kK)Uy"πB^!g#'JG\(9H]C~GpT67k Z ^ʫzwٴX_XN0DtԷSH7 f@J;o`_!CfUg6#"R]MCî֭EOBSaeA`_0a}+YTuOĴ1/^6 12Ҋ'')s3岫]絅GKxCQƲ!=&7{guEMaK Hz>{bd&f&]fVy!+U"3+J'\o4ۜ}tKPQϮ lYBxeluSpfDO2 )7HCܘ]:[* ͎:Ub+Ax3`!vB-^&v:ۢߪnωs`ZCNwC^BTCTb%<;36fP*UDva](}[4OYďo7C?)L:V|ׄu#ڇ6m6i#g<-ZEnR<*sz7s/|%y;;1@bYQzsm)Y_LC u sb@v(RZ=^[%`R/D?oI2x =/tl6%$]N >ïr&))!AKz0].ԐB0s+Q:R{EAs̓ <=˘6fZhmMNJBk߯ Z;zS;X!Y:]O"ُs:fm?QLU3$H_Fa9Mo$lwB|~vݕǰIDĖ iBǬ/3塧Ɔ<{(p uۍ֚n%8Q셰 %Mjfr/c+Ksi<ݬ(8$M}unlC7MR/\Բ9yXlYJ z~?NkT-{GεNA:A0ײP|CӺ;,8`3򋅇ǰZeA&(YV  zs!SC# RH\O 42hV,+ČMz =0ۅI\egȦ?^Ry _)Te׍/U07!k(Gi #{3TrJJ;V%mV O)᭑ J\a3$8Ҁ 1ic5p]nZ+mjE0ۡgT$7pi-`X{[%~h2x.95GB7-e[-+A -p|^g9XƦ58fINzRۃUlcϪoFߩF~V$7;]̎kU#7VJl8:D1h62#ylI,Î37u, rɗ"Os݁Xv(-ǗYTe8Q#d xlz?-'{5 U+P~Aj>BvA$BE_XqSzXi޴NyS<1>!~fnCO Rt :XBy (\}mf/xrwL`X9Z@-Uo6mP&Ztk(`1 Q3usU]r[gKB~X^ qqJ$PH܉d.ö41(-DioiP 傽3|15·OoZm &y uj:o ¹hVxWBNξT^\| 1&5/UWn>"U78Y tғ;!#9$TwclU- \ɢ?Z<~$>34\(ė*uy'Ӣ%t0ɭL 8.b]*CS@X}Q/ aoܛa F4mx~V# NJ;<@I/%U{ @?!ԪWNbǫ~Ĩ{x#sjE=u1xC"ޅ_2@u#Anlş_P-Lz+Z[gý,;.6/'q"NLh0a<)?׮sA /QtQm$>!\gER:s99^O65*`DNQέf Neeҙ6\9C#db01o {xaΫEstXMcJˎr~ wfD{=Tf7e#pwtW1'Q!fX:QFEuW{e09Z$an*\EHU*?PO280Qn)E\ d"/ǾR Zf"bA(Ѳ(DhC/bhNkp3搋 cLΛӖ"\cLwlnHjTa JVPik.ܩ%4e x|8xٻAw(XTR*>$q0OkC~w#`s7&T(8)cpI.r[.c^aٙ3Pg՝ Y6y !Uq_ۣ!IW'K$#[i_(s˫ *C1ԫnz {YxU[`k7N(G4^ Ƌ:4S 9X1ýD*T{+7.`X Ꜧ'&h[*_²q;A'6GkNoM+#:~Qe:MDŽp=0 x謪N3b̠mG?g3$ muV өe91[SWSpf-rIjOXYH-omn7T}Jطݬx2w XFbn 5s#4.[ zywseƱ-cYGD(F4[ իDz[yů1D&{ΒLįl,Gd r=,2<G?PL|ϲ}pKe{} *6%t'DXW(9 UP%4:ރ=c<|/gGb 1K{,IeT.ǒ WMMs(k]x 5t }ÂanN姓a6uX\gP5;C qhwsG~**E1;4vi$ZW.>`ܫ:9m#WPu-0!Wax{kh bv).͞8|L(s>>ڴ{M0E`ZTy۹5ߦa+%3BڱLO)erNkb=0ر(d?ݧE;!8, Oy ; m .[J o.,yp⛇~d%Pm}[,%n?rui{_qrFN|tM8(2&W9rBQS F_}%J{ ^`q@,3}D&~.9evva^M#4KW<lD`BE:I:=2^ v(hj4{p!.+G1ߧO=.R.tOT~%I_bƌ{0/ wb^9hayCq_O\ms6}ƠId"PM3 fxV%fِ!\fcy 2ɵMv_?=O8ػm\?aw b c J-"fAAHF9_MaHQBb?}.fw[h2 ^ZC|>4aT*Wq_-*hXvP! =5OE֠ >: ?CmJ>:)$}o(;/Zr>x-@Q]G<-i+4Á s;Ga:UB$\H % &rټ~Xdž;# Jv_QG5^3iwTyz=TtPχСwxys%SK!(v;{I:31ر aĮҢ2FpWsqqu~jܪz@ChXLbXćPc-=-[!/Ɉ܀4j# >tPȺW%zP]RW4T&Gh ,x2iZ!)`|:[Kjpď'J^+ZU!gqN6uCoW i!?A2LmOh)Ek3A>cݫ.1$Sy>MtA66L tW !&t(U8@Хe`_lŕ4VE_>7Wؚ #nD<ɀt K3dȕZU MWi턬'{`c0zt5 ƁbGLܢZ 'FC %'<4ieAJ.x7&Ȓ77ʕa@ A$Ay n& ~{[qK=O5=P-Mɬ"r{U%V7OΎ\D0_Y Xdhԑ oWfȷS_w㰅VRO]/ "& COd-4뗑?m jӥaAhmwV9,TpgEn-'xEq\4D Av" AE߈ j.p.5ѷ:ikVFtr*܊U;w'H.!Z$P<rK60q- b̤2)z<ߦS58DHc`Jt9Zp_C_jge)<( u̇{OwfiBcX D3[4?[d@}eH6P5 Zts"I[PozX$HLKr7yû.j'v=06 PD* 06E6{#zĕh m.瘵yl|=!/@fX* }5{=$%.$6+֠SהWT~7V8@6:UI̓1N>H(X(xN<}2.@\ I=w3AD7D| S^ dP򏕟`bn)MKLnNz, o/YMR+!ER~q;G`Yy%խ^KƖ4?f3 j5uțIʀBc,XYSfi1b#𳥳[$#{3z~(# q48Ϥfy#~ X"*ˋYdd4eird:i\{(޼F:׭ڬ/E z3\u9ȳe 9v^I+Ŏզv: *V+vOZjfH?Lv d :J$t9!oPhٺ0v+rfYt\)*Q}_=Ħ^Lq*:>ArmHtːNjg|tha淰4(yfp>L]s.$ͳ+E͛+q](Ys鍙swhg5MzOQqK!`kg\}NHu\JpؑeJѪ9E0>N'p䓁?~fZdU $9>.Ǥѿb!N nVc_,"; Mw:^tu|G~#MQu_`;Њ4§AgW>5xq7D{C ~~>4ha 74%8|& $kt_pĈq ,L<7s[1$shPCMl)tϻ5c"r|%kgq?Qc&[\Vfk3M&yqJ[y!(LڟlH@N\ۺ9g8pu]'/m]'zNvAP.WFca'#g 9g.+Xp3٘a妜L>>Z,-ͮq*dOR` W$)C;nP+W86j\u>+/Ueӵ"C[Wd" wGvU|G<ҘN~2i27N.ۓB;Q>3~Y*q,rWcG;V~8OSZ S/ =d0,شo`Vh XT.q=.@ i`J9Jmn[gb[x)d=`N@L!F'&6"13K 1`=ϸXvK`,|/O֠&,vŵ֜Z]; $BG0)F$$ʻ뿫~dm?V@NQAz?`*ŻժpG0(ȋ^+^yhȐ,1gb#v8m+,ɝ#8wPl+M0L#z腟 'I¶ "x<&FS-5 PfCO -P4IѻqjiyK25{+љBu3X2\aRr 3X%>…A)eõ$#G^`uLf\j3D(Mŵ8A" lP?StTYڋφ)Kl\*I id<Yr:6)-Dgp堚ܴ`Vfds%3[zùO'Mճ<$l2oS̄M'|[МMNEULt᎟  ѧnc1F3G٩4n_2P}ՀgbML4J/E7-X p' f_HIq,9%v%:G!7gm:̩]MvsQ>iJ j|Y96iKJ ~Q&NqSɃ #gK#ĥNLdNÜat1u0p߹9M 3 Z)$Q`(U^e(DqS~|QɆ-h͌6ED 'nz4Issoj(DèBL9kdHȧ؞ڡ:hu|'[ByB!$s8GGӑj쐏ed#|ApъĿ)IiY23J-ARƈhQ̏?f߈L n}7C ؉J,J9wλjis}{:JL>J `_/Ju{' -"ůZ P`Si_y&g@՗{>lF5ѰUmpgeڊ}C#l: t8i|a)O?N<<9+uyFOk3n.E#J!LF>k w-,N=+[93\B2Ԗһ5R=Sz@!^xx#q}eRA#ϸMtS0vTPGޡoBgB[tUL|nDPN] NEAlpb:&Bĺ!hV>%sǗ[?? 9 Fh@ Ce?xXW+UZEui i;z9)C+O`L 7y e^s`"DA4+Ul> dSmy!WЄoFB3rdܸޡoM$Y AݘYPH* y'ҋLKBLSѯ%Oxhqjmt 37yƕ:\D0CҐZdsMcYo ^ Sf'd!gg heA  F-ɜ1o ̎REP|ʵ&Ox1_d_q7am'm[7zڝ<2?V⦴̭1=H&oW,8 (J/R@I~gPHQukb#:'>( +qO&EΔ3[Ȭ0+^T˘LG@σ>ز^"Z]HCG"#D#7?VajDZߔl0ht#5 .U?S %$ 8N,p @|y51d KQpܼD11vAO}JsS&TSY8RS PC'p w,;y#h Å+S*ݥ(akoz|is^ 65gAq7KLG7f̲P zHфO' @IjFirvV*o7ht"-mu\~/o;夿סn1f ٪+1]jZ3~4(_)0Z.uЗj8GȒ Yr^ⶄ"+eS6%XJ@&-d311Xŋi^yard˴5MbaH(iNLMW]m{.~Q}aW[5S:bLk$]sȄ7=Շ-Ze~qH|jFuytgkvX۫'a .< i{PБL#mۭ-"ҴDQt-JeE eeV㍌,!O/\gC&:J>6r#K*)`}v8 .\`t9#xS[gh"R0$ Ne0Y ^g{}1EQ^xåMF=.doDr~,>TPb"537J1mZ_,{> ;Pm UB- )tl\'5XIB7@`Y Kb, $4&Q ؿH((%^c8ϰ@OK-q1dZU|er٧9l4Vnq8Fȋ@=fDlc^GiMUF}Ure[<Āf[6uwd1ɣA,5gL? .⨎A:Ĩ_ %!_ 94f:CzKXZp s A)ߚG4 XP^(([BV>ށT_Ѝ)M6fz6` N|};уk4% 1dS'f)7\mxć{PB ƕ馒胞24̸IwXE6n{j k&8 72O>$ wllc&ˈqskv$ BG@d^$3o8Y-}颊e'f=>x>Jτ ,ml|WVL+LZϿvNp@c&ӡxWS4OHH\zs=A >qhPoPg>JiЊ-/ɣE9@ݕ"y%Ach+H QG}1# MzaOfnLC$}zYh)Ɋ+-gunKƈ6K?m Tj4BY&Z8iE߾8w\ irJkm,a8U`@99% l6\g-1FcxμX!wI,~ȓӚ1KB S- hg< ,#/Mde'sSZ cއMTxٶUgG R ,ez8xS <킘sCKwjLu4uv" !:j74 ?8j5@|;xGlutKҍ`l0:i%klAk4vQ1aG eYKw~镟vngS Σ.lOQ%c)grQ7J9h9jyMa<QGRg{Ы%i6!?~&cj d|3YhTV2sct #*Flk4oеa3Q%hVF@Yb<(uc9zAr86h&V6ANhanD%=Nk@J2=Q(gl0x*o][6%^D`Eְ$}=Z$ҀNM Q] ddﶶ%OiZ{ocsioVz)``~"{1ڈ؝F$pD0>#o](H?4J~NNOGB3}0CEy2*Nk;̔ 0 TƳ_n>j!WT#9j÷e p0䖜#}$#v2]Rl'Ў?H0_tYZP:D^i/).vڔnB6bA մb⢻vw,Iř *=mhϟҢ#|lI3*PrD$`̱kR_70`)ZfȰ^Z}& E7tWc'FZKVH#e"%7x|4(RfUhiLz-^3݃Q+7N{Iu4 sYYA#Q4VˑNG~н> Y^M,sbD1BdCRF'}bI )\Zl+唃$βϾiO&ЖP A3b_ſ"$R?8 tͥKj%2p9)袻[3D^h8[Cpy4MbQypY gII}^[}c^'i*b$lHƴqGL%}ln;XvlgdJ[`)@^ "2[#,_ Eԋi9#۾E%Ȩܧp'gT"ٟY+3,)L~pDoз69Or&9@?@l( @"YM=:d3OӂAo~*;M|E&vIWAsh blLxpҞZSĔksEV7 ;|Qw˗T|Zz8DRC*tpC^~Lǻi!W) B吿Ҍ@g'F})عdsE,mI==_T/ĨAM4ܯ@uC]'.ݞ T#%[a5 l_;%5Vf&A"Uu"<"nZt,Z% f,D +%ib߳TA6R^C{9c!_>0 ABԾg(ުM3hʚO HOB`ZOAY :yRY'z0އa>{+EYPRoQM95^"L'9 8%Tz~n2ғN[@>@ףdOw0$&wŵK{. 4AV{pGZ1\vaA҅jV/}M&玘zV@Ty[̡ka=KgiKIwXa;iTݝbCWk/z*(]z#ފXh[H޼AВN+p;kUC/yQBE :Y ^4$De{nlC>ܓyS aޙb &-0W0jgVRГw 52z[_%5Y'c &G&KZ?< _l_h"/=)-!*u )Ws!CA2mDd?7ܳ/YԀ}=0Q)Z.Nº!U"}YUos$fu>~VkOᯥWq78ѴZƗ R-.7TM,G< F/0l)_AUjdIw !q} Be)&M7 २HKȐPl Xٓ}ݠ\Vt/1c/!܈w=s YglTMr_((X ҃4[Ɍ[KBtǏj֜ xs4疓m,}ҽ/D$Ӂ6j-dE ļ^[#jWdCLo/u {EܚC9x>1Su~+O)ivfóKtH|a1dW}>-nSmQ!e˫-X<.;|̈OJeP^j6)Y}j/t2ZԌE?s ₴-v RZ4d'qͧ-`u&-Nʕg[ܮPHϫ UQ@"q29 AI }|ހiiՃ]񙔃6=e8jf6,ZHc[[2d/Acy&$+BW\M`=uyFeh*h 䐘`=*4uW~;֯—@IJ&[Ws^V,E U& x背77qu;=D$Bp~~vf{RCm Zh9vf %~t~JTWboen,m;Rf qC.eENt[@SE7:y^U }we ʟ&}S'ƷfrpϞ]m]%Q'E,ܲ4݌G7/D0̐/ VVi?te\dn.Zh$0'2RTF?AB= jEFٱy*@FFFa֧IS|x˲ BB:&jW>Ċ;a ^yx@sdzLQP.,p4Wv@tê?T"v,M+rww}tV2(,u ǷKQ 8p{6hp0%ڰ;G[B3쵩Ƕ0I떞} "lZք8EcoR,Mر5J|UR+HzVWk/*h)GєؐI\ !u.Qȇva XAn O460DDۃE-.5?V1¬g 4%42[w4=]n ,F4UK jwVi9HK06ijnӊ)F{Q3*ho7jDQWr]X`?Ÿ !S?[ U@2K5}4'SX.kT#AUOrAQW|<ŹsqB[i`]\~')t^`4: ]m35DPHt;rg{mPЦpBfxi2fNBO|M4i^8|.C1G LڱYoXc=Z֦/2:)H5[loxWl(K=r[L]G_C3G b+N+L_-يb2@|y'|YG`+\uncH7ⱅ$v! 96ZM9,FְMd!h ſh19` QbQ@ه/9;!V#ىQ嚳OBc]UIQ LqrbE{YOip])Ӯ+_bI*SzբXmP'O> 8S1D 9Z:tYM0NLVg0퉾sIZ.-iEgopc|5s?xb7ؐ"l5\.z֖*K? 7?ڳEPbC3fܮք@gԶ nDlHc͐WQPrA욆9ېxfݣz˳s|;ձȼQ=0*v])+k!T%5]|#/N ~*m{xpL'L2ulRD/nô1DwmƗq"@ąF=н<\_I.ż2DKp9N2![yyY\RTVb%+LlIX ۲r6H@4(Z5U>4 ]ltdө!$#y +єBps4Ӭ0Zx!EJP)iBmQZ:(Oч-1fϤJK,ҕE. 9'=ЕT|H O;R<7"}|̒1$K$]C}+Y83gWnR&P >lźKb)瞘iVrm`P}-H\SFL8#H^r+k3 Mm=e3WI0X bdד!&-53 < "Qe ˇA``gU٫C[f?֬ L iV>Wachf$\"d?xmUT,NjP*Ѻ" =ț^+=wPKX`s,Y QsƋ(-v~+I^h$#ܱ8(KkJD7[)2|(twЁX`:';öo$j>^ail 6V2*egYCgdJU 80G_Pi9κ^&* rE/XS~"kRʪ˟7Љ9uaÑ?c# ,[H;mMkrN42 gĕI,jV3qG4w "?ʐ1< ;Swa}t-I >r9lS V*(fka,=lZgJ7&$srMv( ?6,փ&NLtagb tJ/soì^zcD~е쬶FviGLɦkHG~չA+#$Iʭ=Dk bk Ϗt#G _$Uگ c/00ĵzy%jr-$,JL1b^:gꅣ)5(I* s ֯Wh*]m#[;iT|G*U`Ʀ#)-h!,3_5;:?TE@fg$Xc HOs14\ %gX=j{ xp6zO:àiUe;4bciT')«M^en /r.|.y"K igfrm9᧑6 ҼOD ju88%<"&G5󊨥 O*`cTATZ4;KKmؚS`I\r8 ~ }cI *ˀ(n/rXuy[ET*%Dŋ_NA\ۡ0S]lTQ ȁcm#g(cJ\y4-F0{$ՠl4Me]n+^u1_9l5u%UpEdӄ"D|le1 'O ŁZڒ%tșL;oY0d 459^q:LۨRgum#%+0ؾsAڲFRfh tѰPZ;CSրW =cщ _&Hr7igꊨ77ׯ(TݛK7ūhC"_yGZ #Y|;ɮ7Sm D܋\HU[oK%XF6:Q􍻱0BCЮ[e)hnZKY$R60 {BvѲ1i?JTX. ?COx Xpu١.sgD^?-̞4qM{$qivS~l|gD~+TK;D2 "|Tm,{A`FbL"g;}ʫz`rG6VC]v#,$~fcJ:ґUS*}\%CSR&!sTv D(8;AxJN':g'ӭ\G4,E!E;d/}jZi`}<#-Gk HaCגլ=!/qg dd. ,werPm c ˁd=OTCŁ'L)]@%#Ḅ2PL,rHLot_Kt~J-{ɪNAuc57M'0w+-|>]< iX2p/a1\egWyԃsٕCɬt[+X@{'  9Hy ~%u$Dn^HӪ?WZeeC.gٸ9M6]̒'i!>/8f 7?U}e"7ojvߜJxz jF]FBn򑵯 'b ֡0t.@U MHqv8PlP+Q7.g`KoL;TOrxs!1Y<*ʋ qu#@Yg{o8$#ub)BMdDܜ7"8)U:Ь\9T~4" :+E*(/č>cY7)y], rg`Kj6*8._N_D NP(k!Ǯn-7{`E٠|TUhYAlWt/:LJHCJuB,A/j$V:r ˆ"4 o4+SVSuKA <7ׂYX}jMl9ۄ02f;=5I3"|c4)bj }м枨xRn,iW͑S˭-}|3!>}ATEActvFq^SM]pb'N?ko} cǃ&9K'*X걶+,־XN@9y@t6Q$M 5if\{aAK_GC44@҅Ӽ;GtwSqHd ZA#c[&KSFs~Ý>ITs%Bx>.'k("XavNU!Jrn%!(pz");l[^J4$J43ga:p"2Q!r [cp1s@ t:1$lw ǖE0M]xv"Z8S' `~xo&rt HJ lo@ zS8͋ТM8GP(O[#E{Ŝy0F5env@V?3 C(H9 FJwRK׽2n@|~(dö܃xp߳rr,D[ҋ;;~Ac2Xb VݱWsT~꼵6mWGYx/e~.=/ ܔYGJq3YP,M'm{UkxPI 1\{l* YY [q5hd–JrԐ-1+~YToA% M<(,"x;> uQ +nk%Kb\Ǵ@W5ID[WAC=ϴX NfP:T8T!]Mu"s۽+ĪZC=5 3S xAG ` [J$W>:*CY\y]rn.i -`^t^9nNOCY ix_ק&RUCOT["Mu9lZd.mEM>16ĥՕ{Z$ٰuP<=C cZVnMք}Mn2\i֘=2pV25e[DL$Wl+kLy+`̬? FmGQKgP/K W-bVy++mPeo8 h5ê"ˤ҉>M+yN=W_3CX2ε;e {.JBIk-EkϠϯZ IQ߽gVnY\;&",'Nsjԇ!pZ_ luI~$|(nc"!љ)K͆4c"=BRħӒ*Etd`9Tu(Y*2TճsX: Y cJ*b#My]e"[R3yS}r{ȧ.Adm s=A5k&!,`YX) U<)-TKf?^ 5 zP;B wBOM LR*3kE|\3|VA |ә$v> R! g-jKs?NNAG‹j+S5Xރ$Fhu<$`|,({ܝ=Mi31nJqb2Y6◍;EӲ`9L˧R] N垢 ^ܪW2tM  }IdL|KK 8 ϓ.ΐml_=$4#1 1@@,-`m`'L\*z<"Iv0tOUpSx㨚37(]򠘶p$,A<";16S*=Ch||: *|YmCBz4#~p֨IĢ$tD j-Msl5{Jb4I?a`\6Rc{_]!uO܋N#[0X ߧVsQR>>(jIZ pń9,EUN91}L l"rn$~XPvwtǃ"|'+,ɝ!KEI :7..E[-QN& _MceT%q=:ZSWtC]lC@c/ MV=7Lv)_KSN u>baޣwk>`M ڍ40RFXd/[Mj>Df5VKkVλ 9c8ѵN碗{`0 =6̵ܿqZ">S k=bX*Hx`sZϵԩ' 1Cm3'*b78~ PdC GbBJ1FL#ȅ*8yTsGeK|W* 0hT7yD@} |Lՙ= ^xQr.xq/OUWu\IrE4<4]*36B7/:K9H|r4%.Tg6M6ٝ{7=Ib 6Ǹ!}nռ=,kE\F^ffe;6D:H0_֤ZGn쨥;QD$c1+Gko&ޤ=(*InyZ*whj}-x`s4< 8g ⑑E* w#MT.Ry1<8;s_}aUi&.%N:@(֯'0S5j1 #WL7_ޢyC)+0{ SЁ"6jW rFXY|VmޢY@5ɣzYz*ہ#~<Rf!RzF,-$u 튆Öo3rP"d@Yxvaΐ8 J36B=Fx#'$_u5֧lQ)N3S#+Ί=]Hk?o\x/NCV0{pϞN5iY#G nZi=.&Y20,FZso8F;'A]͹@þ8 dҌwm~r(EiL%@ P=Y󛌈*܍F-+#s)mcÂ{_10OK:Sme/2<.0HKK*Ŭv'Fu`$$:>͏ts3ۂ)Y n4IHx?׵rLX-G&:6],+t.,&7> _H:2=$8~x =ՀOV1WGgt)d{d)CTzPK0Y[a`fsxyFbSטKQ#-kVeq-m]fB cܾ_ 9iv7Yh d{r`䡍Si6BtƵ ̀%UC7=?^f] |Faۋ+*p(fNԱ?;(YR힎0 ` ȼ֥?HB(ㇰܐF'q0KɅugmqoiDr <*WKdֶo  OK!#H˓TIEq< 6QVTc4I֭,V^Cx>#Ȼ}:$.P%.P|t4:~q?ťjNYf'\JI"dz:J15Y\~GS+P|#1M1uTq}VHoNtu O0,LyYοyEK>9nRC!9%}"iJB_SdiD΂Biî@M:hpTXd/\g͕2F7k0!^#vL:oL[B }kP ڶE4F=ZgN p?\BXʺ.p}'ZBc@`;^:ͣ}"p7 W ע9B*|[JE{H f!Ȟ:3kNzQa# E1mIAzaK&&GZ7iޝueԶкRSEGڤlf{V7+=(t3׀J PȒiPd_&ڜbPh[nc;p^{gHZj^ ,Iz|N gI _!eMxl`*9ci3X$R"!d1p Y3sE?7dS2[S)cnm/qkhADh7Yr~@c Xhn$;n|uw>ߵBQiz(ZCJLV 9 gOnP_E8adjo)tkZ z2B -C3@;J5LBhEU{2CxAheo>XSE&y oO. 16e ymX+87~RjWto?ODx=l@i4(B-8S6(B_o>lSI/M&!.y NbFbY`h]MFUt"dΰ8a`xkM*J*JVE@bO}A*foڣYX3L[%,AI a7 ff!F/2T(-^NH ,yNqg@gc3Gꞑ wVV4UD[p1vYn{ԇR3 HM8cOXx~Dgy EF)/{ncZ6ȏ<24B0r3zNC>B38Nꂧ k 2k/3C*[N H=^%o\@ % "#_/uJkV1Y]tiVI^'x/-=a2y5/WWLCƚls!PkE3qs8|a(G7mQYtpX7>$8R4|s.ΰ6.[=E>ba-B%WnhK({Lפ6H4*ܲK<נ -al!ۻ<)q9W QY E(jѽlmw 0>R8|$%w?m\܅L'ߛ15@8Ls`*+Gx(-qBiڡ=uAai~EeҰ*AfGs1]r-Z;`QՎIK-)O9+lut|.kO*r?k%&Au"wM̭'+`$Eo׬*l[U*:,sN6X /R>6٘ D݄!;pTjpH R#Raam! m ֣q0AĮ3`iYn.9S }X@IHʚ"L!}n'2iQNs q;FYy0C.)o1tglЪ1@ 㹄L" ld#^fx7͘| .]ĸ,__ OubKi&_(YA G̅f4qSv 8ժj|xobR0;S &uHݕʋ2sXfV3rf`i U9P\Jr|C6n&k U 6;d7׼:;N:p 's((^ɟp GHo&Ll6c0iVq Wb`Bfky%$;U}FЍ#wY{C50nG '([I@2 jϪ^NkY xgo.Νé9 AhE8cH!)jG"ʅ6&Sgư(M\pcy HR`;>M@Zy#KL\~1muK0CuK94 pƖ_ٟy˽}]!_CgEvIin*+}&i2c#;/o۝z-(HAv;VK1!3;¶Zϯj9H+^76c2[ hTbxrΤ3Z4j{86Q_;1r\hF` uYR'"JttR! |ϔ yȈ6ł}j%!3u UMEWԽ-ܭˑ Xzp[bkIO=`4.X!|3rn&g<3[j-y k,G|) Unt6au7( ^YwMAGk'FL}-Pwx:g3鲮F\Qز%(:,.4=6djXdY 1-J9(JfͽI0I/ůz@ΡV?\cRT:J$yp0yKeyʖB04Dʺ9pafgGvE&1$wm'y:73ʶݴ ĭYTܩ,e2v"ۯBb(EU |7XKo l' ֮ ͪnצwB];ۤ/ ՀEZyCB 8&J9dl#j<> mi!V"⣄޵2Y^.8dQq! 96jRk NڎXOd&>ؽlԑYM&םGVɾnuRPsgxEQ9SșGMzOT< 술3? 2 wkoj꟔(0R -Gr)-3iw|Lԉgsߧ-4m)B rf+!o9у;#o&^FFUl'oh i(B%eױz8I@9s"=c>k3Of3X|ힵ[M:cB-;ߤ'SRۑ:FɫmIg¸Hvr3P'J\r`ݝwRc=BK#zثBY m읰#i|5oW-1?%{Q̷|"jLŽ4׈cD ׈7! 吻Vj%(jY+&np]u\;Gğ"Mͮ'pfc{6K4!d0>GS]n,]KQ^/;*@MrGxauͣMOcXFQۙǼa|2UPEg-i9#/(ZdŋD/n&0b]Af B) I DJ -%- q;Ah> Ҭf;2`)=1=yΊ"p}ƴ C-SOKPɢDdӋCQ psD!_ *WW fF[prb%Dyt ; T(GC1ʞGU37fK)ah~iuG"DrGGũ ߅RVz 8aȳn^k#Ǖݕ ~SZ`c}BԎeC_(Wx-z/S ٓds|?z'Qx!#z/"q"7;:oGE| K٠$sX{8 /E_x_`5GfC0=+쌾"DT4y'4ߙ׹rC<]1+NKR5X,&#gCӫ ߆6Rގ#K]i\P֘VI #7:nu>*bޘJ=M;avwBD_1[x5V,,t=T+6(s ߞ (< .# a>-_ @1mJ_-6Ậtx'vcQ>m(3.E \ԜK[ s}J*]%ߝm }H>Anu3|s:m? 1y#u C++.@-fqn Su#LJ|t'}ua E]"`}aK$7G^ފ^r?=ݎ}@3yN=Z eXS ëjWPKŹ&*E7Ƞ6C҄MSA,U.Q1Em^`AWs"wFRRzUmWq~IXYdHh)wpkğϰ/)jifL9aLttКAvE*[JRAb9tDK(iLh2'Ġ\*#N+do%}nujۘYP̗jhT;A4pqiELJX5,%A8h4䍔K11;`$zY| Re^Kcʂ^H "xXڟbz&*%$Ѐo3S  lud< 'd߂{;`|6s|+59K`!BPT/| !tQML5Ip'XZehb4o3ZWLT֬p]"0a|29àqYUbPOg+AGoGo,zSyvtΓEڕYSvvD=>V-PC7gf&F^%f#StEf%}C`( R`2g GG.zk5|@mV'rܦutz\kCq,7pcUФQ{ʛ@76r،EDȡt*Ӷ2!|]tfsSOT޺hJ_hJƬR2Ma# hov/j TZA5.6 @۶v}--- lNê <)@ {] 3pZzi@ T f. SCЄrtz ư u}wg:mHp7?'J`_^-pҸB<|ukf/t*2%S $цBR 9*%@ e$ųF}ў hg 8txO KxN9;Qݳ.?Iv)s0%pm"iUw*_]~삆K*CQ'TJmKL}fF\e *ꂵQ־$>Oz4p> ҐP9/\ɽ #'<;ɂ.nϴ/g1窩|h֛>f#\#gdxFnF*z6,/J>fk)UIAqB*WbQY\Nmv!es̿zy8ج)=$޾u-eU ´ߔAaɮ$GRe`8S9ݙa0gʜQdP0!P&%Pr5]BkT}__gTc!e>|%(b'9lvuj,垣%Y69&]r #6?fC/MhZ "A6v@"ǒ|5׵r2Rjg=F5q[i#gS2wxp{ !Ϻ9 &2\,WY[BSڭFG8>'!yO0fP(SCjyYO]ﶌ2=9IUqccanYq=vwTW[#Gg h(|s2BI[Wv#H_ kku^nQMhUl.E&|ȣڰY(#KkPiӆҊ%mak >ib:emU*XBAr%PPw}bDbL(?o(pVZ[ڷ] ymko.i^ZC|,J`<%PAhB,4 -|θuL9D0)|r>xLT^ٌ\#[6Vd<*:|{09@É {Ÿj4AX[cd^'5LA\Y7 JVI7O!U `cʇfAuQr=ii .:ƾXK|NI l&?5~rЎ`r$z:4Zޫ7:,0\`Zm*Gp&M%]aXԈOzBOC’duf~VJ$~M6M~` `]HD?3Mm7)!zK&O$ *q 7#2'Ys:tVĞ@mEPwxus3?{rɑq]DG[)je C?;$u5pmN/sZ>s͝N8y.q\Fi͜1# j%g4^FBFМ6`5~Kg++/)' #{*E?_Xިur{[lk 5vh|cf{|4w9FNJ K_bw/ldւC;s]59Z[w"@Ӹ3-%n&ɝKth0s!m\g]rctoNH)ppO66 qg5?Z"<-دpcx-@/z*1~6Yud0^ -Km'L84R*:~$;6 DD L|kXɨz0%<>$OA؃H˜MhzxܩO3 J7ba A=*# ٯzKVa)P|ʭr (0R s-_93ի` vHd74،&Q;E(XIau{8ofoz]u#wcFݯ u55$`je+x`%>C}-_9ﲊ?xev# jͧ#VC^m֯[y>߸bO#)KUc?^D3ihBiW0i'*H1s>SIN$=kBJbN  F%r':8p˿);eUSxJ4>@-(DPT- aG*b2ub=ՁC>qIʗpIi+7i;nn"BhE3>Gd/r9]Y_A7QYիQݬ0RAC7OdN-9(6p^zX"$uQPOߴqP  [\usL cL|7i 'gm}?A~VFCDC^p܍Efb)kpBo>P'?Ӕ^SРP漈@(Ek!N}V|8TR 3U&h)|Ph ɩ K$Ut@IPVg"|>[7eo$Gv8eOo:r4]kjb.[Ij/fvΌxUo7|'Vٙ9QaĢEg\v LEc0;#yRdQh xBdNFRe0iRh)M\s˳n㏷{;*0#S3i=|0%~8[Bڷ.1e'ZDKz?st{(·;IHUe ߃A&'.f&݊q g܁8NؾZDq'WӉ>=6 ֋ t++P{9L9pȏ fU^5{xֹ=1r4 [M䳩 zjaKM*go/d.K=Wuʢ1aK弈ŵ&B{7PR176ԋe/DLR,b~jH3%xfB # 2o eebXwg ʆ9w,.^9ي%_2g31/X{A]IR`ĈUρ,u]>ʷ 6ޣU&[%y5M0߂7#anVêPCD^tG`fa)븨/ E Ԥs~f2[9U,'ԞssSxUqXi jBk8ֶ|Fu$O?ZmkW*lɲ3%@qpcm3.~DFAk!kD> 9(Mg7NӼz{T%̛lqlH%=ɭ^/씅)_""w#Q64xU{YA 4-U)yR+\cnRA`>gRqm`՛Uc<t6۱%GWe:+Ɓ'%\RZy ݓb7xQr1\V?e{S"[wؓ@"}qo /_ۈ\ovf:z~ M:5Qڄ\Vv'ju8ϧ2 ?erȸ:=U#"Tx($Ei%C_VfN{Yxp#)ݲʉ?"DM6{?@,{_NGr˿楪 3{V;38j%Vp#w d]EMv<;~ׯP5(6WV6[vXuV]W!.x7G  Lp讈LNaIJz3 ۢH>P1h0Kgyf'pkEYok?]mƳOkZYHᛅOтat_mo(]:kbֳTiYr޿vKtrË\$9'T4gKks4qL)Y6fYD"|oMi=nCtĎC짶'憫"` L!ODj2oOڶw9-2!Ѳ;:g]Sh__+;b)]jDӄBX9^ia> .IǖWr9g3*)L][L+Ji}ZawD5$i͜fiԏKj:Uv 1 wiA]33!XWAaSLKG] "J͸9Fͣ[Za|uYn3茺Z`Z,*Q{ߗe鏘%7%?}0]dϚ}~mۼ29?25$|\֋[=9^r)5  rO@! >t"2<_@MyhN`Hmާ0R3H, ?"|@<)xVY<^Yz1`>)'2z}Rg񍇚,Qə&Xl㙃6-+]o$:B2ê*myӁHVM.?NjS/vOj#]wuL Jx͕Mޒ(g_WdQ֑X!-TZ," HJ2* W\Ŏ |I)MC=ɘ qfܣRtT,O "!B2BQx5j1-CR\ξ+3kT &J3ٹK GSs¶B BP{(Ǫu\Z40YΨ˟=*73>dЏy 6kYyl1FhPđr31ٕ$kQՁeĭtE0$ ^^"s㸪^M\jEFs/-.HBJmHٮʪډRD]_p*5O( 1=7ZIyB^|h7tR|qv\Wb1:ܣ_553,f m! k.qԙLVfs45 78pjgy;km'J,xZ?66)3[x#jQ:F͵xX _ˊXo̒yS8_{rvzS@ ?T$9_EN~4`QJ"6Dv]Y6]QMl):iW:uAiWm8@p;oN/'7{f}0R##y  kSKt3?hϖ^v]&@֋>7&#fDּY$;5:>2ۧk+D|yco%;3?cs6pnOe1?:uP{"/Z+ 9cd|^A$S`A] 1 fn> *0n'xd"[Jƺu3s ]<&龎B|mhgډ|ibK-\ރR*>LK#nL&bb,r` EDt- Dl^g^#!^\ŧaW^h qcx<3(Rt߯,jL{`a+>Mi=ilvAMSn.)6-zUyR8;F!]R! Q6u~WkcQ_@rDyxꗃpJ%j n[tX5ŋn:q e2~N>OrLOx94>|%N,rRī?3~zrWNu?GDFŻZ< Ԁm:qH.CZŁ@Xh6ˌ}P۷3m?fuBK"m# 8M}sW¼uR r'rjwa2R܊ J -NK,B.@v Z=kĄ 3-;`bρ7811̵ꩮR1e@5O}j"v;Gķj4M/ .v ^ yS,<Q^x ;m[W3짼cz P/*qЙ6_ ~L$1<#Vw?UNd[5*I'iGҲUnӻ^!/KKKo"htcRV|wHa KEahEg=-YsZ+o4A-;l\wt rTjnO"R+J֏3vi/HL WJ̹na%cD_YE^4I KKnWB ͢#_~7h?|M1a%Gd[}FM^GC]e_X =[L2Wi/.,]$S(:1Qcэ&XUٵCix$?On/%Ctɷ!j9IӀ&J,Cr4 w폴*V |?>-ZH"]U_ 2`Į6WsKȝY"OկPjKvB/'x,6# uw?f2Sj>i-T4b ݣ`hF.9T3kO.ܻ-roe'm&tɓqYd)gX8޹ #Ig+ l9Sو#38~[XJї,-T(>lTpY nlCKJdf.Cߎ,"ſVgy 6SL0"h0pCS?|[,@r@8o[vBB9r Bbjdύ@D"yk,R=.Snr=qϏ m =eiF@"OH+b.aM\D?bkgp`_ n&iV!$vD%Z{Ժ)\V9⤺Evv.؇?U#y }B/ŞP3q-{7Jh_<m"w MR6;L@X uz*%~&CJ/mv)*O+KV1>y-&MMsمLLD̫":+=>u{h[ہm  Yxhl~ G~&mhDj=TuMtSۭ }nPF/3A2?qTCmOZ?@dUʂ*ܜ B CB`O͔3<%<_THdpӈ,FhxxTИIH\$V!PET~,ENd3 6@=<lkJ5 <7`(tMvC=#{MQXT'3H 7"puPΘE_wqcѪ,yճx95С_T,xQbqGH*挝m~Ǫ1ʿ^ -ڼ#n\0~tQ`\dk[I_YLzޮI8{Ӆ`Ru)3B2dqڬ7uh=o8d~Vrx@k0gs܆C5g @J8qU*iye<ԨJb@!v0 O6N!* #$Z+q:hfCeɟs@\rQJװh h3!N˱ҨzӍj$U!~y+dr/TVCwc':IL' nBhBaF`1O5ϦHˤ2Lq}g!,v t i}\V8 W=J=EaUQ2/bu *##l|y@?]VDm+W:Ӹͬ 01d;=l]nɞvPuY\~Rڲ^2`As_y_--ŝMDWлV8gDP?~iIQ< u$a=2Tޥzݜⷈ34x 8))W.i)sQ?I0ޕ k uO[BٓwvU::Y,XM EV~Ks!2ٍq4t{&5#]Ii5 Q  5f.%ijeG9/{oLR`j)r u?R.AT w{rW6dˏTJ0il9kLes͝/=L}~&[ݏƪ--?٪Awc]DkYq@h _rv!vrιPbҞo$ʬוWN:rig/g(qZ';pSϣY`Uʂ7$>kO2q(:4WwUi`dgY|;eڎ#gc'gϑF:Bj{f:#G!JK)僝)&"W 94BSMUdQɋM#ۡdN;yJ$PH5DŽY6~"1*I\0~ggKBL0t Y;! )-+\spTk˳܂OQ_-@f~PlWh[cԨn]8O]jz8^:xJ7W=}jqLÓ|ր?@ә8Y.gܮ GԿ(?g]ejr"L_ܯ(K1QP|W[såDI0QV[ǟe4DIQu b<-Dw1[ 3y d tbGl?_z %-,} sy.Q@C뫑GV+ϳEg/Q#?\YK+sv JzłD Z\lG=U|$ J 4>$((,Mh| qU| oa9+S q̊TOe332W"NsT)kZd)#4ÐðU糗{WB%=URZNiF/Z LwVM"Y0 ;Ht4,G#gq6ݥ ? `9hc) =0GJ0EnIOtE;9jvjRuQѨCsn"]bzg"^n0f~সF#oC#z$馉5ӓTx{K䱯qB݄wY2~>,qQp+EN,kwU I G6C:GOZazw%g6l_At=?v kcP-}\׈2A[C&0=s*->4Ӽ Wqc`*~6 BT'3 H,cphlUb k#V37ZSp"+ X[TRgbK?ݛd )›mʣUMVqwIc*FJ5.n@$ "w,iia߰O_#%kT#K0'ZzxT ![4 ix1.PUjIqp n (t$@ *5iC4E4k*ABnLytgtLO<+XX1LI[ Bq)&?:س5.~ "/y̎ D'*nC@® ԹCݿٜ2dӍz\6iuL8'>ْ 16Skw+dМA9"]PtWwvP˩6TvMfw_(!|_lc ]s +%\OúDߴX=%?nN\0?m:rAeKw@*%Y }!ik &$YF72˜/X&)5.~&^y;T-;Kg*^,ӌ|j] u ^] પ`f%O^zԧ y%i%M.B ᧸t2eTR̀,ܬhs؊Wwyy^ҧ4ǯ>&(t kB~Z# CO-m0֎B# Np`}$0[a 'uܗ|rs]7+h.NG>J±@-x ;o7w-q4!hXW|P2xr`\Py"VtzLJM_HٜjHՒTt1r BZ,uwgfC}^/otVK-S&Aʆ>άN'ٰ ] jQtclt4KKi(îrMT̋)~Sp&R"[={RxeRg?FcEG}HrdΛ?Gkm*/>t^ (f@,_ IGG-\ZG@%X;,2fe#y dY2<<]sdun8#F z -큙%^=, )oR &֜%{( A\‰Q:--X6(gGG.Bm}uACİZầzOHu& hJQ8G!0ggW[SN5]=0G<8{9m~lTI~EHPBn[w0 Q}ERLd}2Do5l9m^ ..=$ Ѽ 3 c>bPu]_'Gc޹MF;9ϒ곋DGt?wr9d16?`$igd5R9.0]F<ƍ[l8o_1[T9̝ ٚ_bMjLU\ E7_g"Oh.6+zLe}K7jժ39S }*\4WD16Y-+NyMa$,Q*hLɳz, {}j`lzfO6wq;;%+[~( 7/{KJBdN`'7H^X%!2Jf ;ND %!&v*Wqkq `,dMV>L`"d%u"]^2ʯGTEPdA ]ާV#zaZ\)v' GFH;Wr"S^b{@ܸ{a|*3V R!*XL?6l(E)WkM0諵(cLZ;_mit|p![Y\1grwH e'Z[$.R6tLH-6 bϲǻ{ x.u{xP3khpeYL~:һ#3# ;u־TDq 8Xy/;nU3?Nђ0&a&%cz򹂳't+kCE$Sv.Fsu4ѨF6dUơy 2EvT`D{YQ P'-G>0:9O0fSl#CcDhGތۖ憥/>ky Q4+FYB +ҷAG ޮ71jRu I/B (&A6ڮH4 ~ 8ETeYt(E tdD>k?9кKK!ꃃY׫ 8SG|U#{^V, a @+.S>pk4/L7-}ʴ-"e#J&=趫ʦ3c~|MǮ' !͎2vw_ d`ɨ."#;Dt~"E36wb,xJ8T>t鉮J 'Fbq}/W ))yʟNvH)[>ls&=H/݉F[uk5/KvHrd:fd:z6ieW; yNtGE=0Ps#fVyr-vA +ˎM&z EmD^t2c\gtTv,XhgٙoZ8Ն:Rb(27Z4SbOqnSQIgrL}V8+X-yQO1tYn&quftXTsy謥ľQjpߥ1aXuH]`~UG]o_nIY.ըR7u饜 53yrc.tfJ?%͎xӄ,WUrᶬrj g!TU z⥈ד12s&]G=%qF&F Khlk>}nafʹ?4tsCNJĝnl>|.B$"Kq3F[wQP=^1 l4ʍ;MNYEi&6(Q9ZQӄQOJ;ܟǢ<x8Ձ.P%N2#?e{\ŤO!В/ h>r)V4{=A!~xwڇWaƢ3׍^'uOYM!djjWЩ-c0]^ Y4]e҉^c:z_~]k-YmVnYOJEmL0&NrS,b>ΌbxN^.m>”Q7'Soqe8<< Glx#5P=>#N؎.ltXXjH/ehLW$S50&0Md.jc@Y!1p8Fߞ_>`׽r?c: :BsUx iv<m'Zh?!y:8uElXXwCI87fEۺ? J*N:G Ԃ%kՄZ(tzY~,: 8^[^uP,X/u.ixO݂0+@obʥxb|\ xxFߵ9& w0Kc"e~2wQK;7 >6,zpt`D {:gm$ƿHpC_{!;#2AvXC0s`W)e`Y7;w:f\Ə>GVB'rDjA1h@.UpՙKU;쬟AZRB?:d[e**M+ve"E4Wy#=tL#FyOM 49"B߻1sq_3Tq6h$JcdZإ(u5`v[sBīøѝ ̪=HZc%Ex/r4v6we6$o h+qI*JŵTj<0^'ۖ0\jq` UIJUP+I$mcU8'')o-*LK # { LK}omU BGUT?5ipG OR3BuJ 6޲MWRGeM3,CaGK}NSkʆ G2@wwZjs.؋PhI ~i1u{ZOy'Q;ZZ l+7E"nw6]|V[۫ D' L^EXfs(dGl-aaN?= L!g!CYi7s1Ft05Pq,=%6`h3D Ta8Կ_^op#/=[1:BF;L+X(1-u3( 8.ҒiMBJɬq&,C˪eRA!RD"9q m 53?gY?ɘa2#sԥЌpr;= ;eˈ_s^s[<.?_T7E')<ıغ`/KLjց}Oȭ za\6pH1EbjZ\?]X:8udq.zYoŖ,pґ1m~iK{^"XjQ@.4TѾu Cu liwac3Y mVH pqM mLzڒ(aa_Hk~Eld, w[W:4=aoj-ʡO ]C/Ja`=˰7Av5+_(l-badśyCkpwo if z,mYv)XvBpKϮbȗƔ6BvB 9$.iPN*P&xo'׭֚[W]X{d[ɜJ[s\"RJl.D8餓(6YfO" <"IT^S$vdxh7c%[un230ߌji93(pP;5{ ^< T Fxf+fM';#V/)3SS dƺʻ=MrކLV@RLqэ1Lz4WϟNcyKl^Cd63#Zhe8PB_v]#>JqW%pmnBи ]\p'`Qw>7݉T%(@f*πK/.OFdu.ݑ嶮EZ_ӃW}wx=>`q2@f.^K&LV6σ%owDcƻVSS2,1.dR9]=C^kĠxh;0,'8lmᇸ)!h]aBKYI|Z|Tih '?s+U 2|.`-Ӗ9[]Mp,#HRS87N-K=5d ˖rQcU9[CT(enZЪ9 D^ +[-c]2`τy t(bh7`QJ ["oԘºr3" =u@A1{ U0ۼF#>ssC@?ceoJȽS@Pg_̈rg;*k]f:%LEJǎ(v)`s},hSGKk@u͜khjX)g;WT$;ZAwHW!/ۿ"1̉L(jBvOĎ00F9ܑbI~ &{\GFrİ.NhQ XW*2[$&5' \wvux`2DiɈuII4)c-Tx)٩0#ͥҊ)rCΫahdMD {sߌ&rc 1ylb S,Ԃ|5"Gɛ0*$c,Ll6۸ ~=E;gsU''.쌓 ƬK>@%7H2ިG0u IH.3M'+qѴAcN7svqcСIÚ|J132[h9qoQ'9)W>hQ"co[>@?iF5q7JC.J|tnen45{?M:꾯7u!ǂFb'fq#M|M,%v' ؽ=k@ffU1TkgclOvAJ̖8\C ?|=35g0|Esn݅ip9g|,1 )@iBTS0qFTv268z rqQܴ@hO|g+6s)–}1fGs)R6}D)Qfc@aYBH@+,\NJCT1FS;,3r6dUm͙[-fe9oQ0b3k?BAHO+[rE* o%GV ,ki QT?BMjПO[w,x#̙6XY3ܗi'nIz u Iw㠂Xolt|=>EMxu+&tx[,(aʫpQү_@ExHKfJ=J=73>KgO0~M s n;Ids)j.ڽ_&Cz UvAGfs 8r1r]7q*lo}ʦ-Z*hWM%_he)JHbaq\FcCCG9Жyv*v9&B6s!6a<2JX fqYkT7k\8J\3eL¹R)ir:Xsn=%?ykZr_&Z<žw^0-ܩQ{-e{ډ]z{lw9/Z$N;(}o!ȑF.MɦXch@Qۗ Q/7ȕ^=M=opfLv=YNO1X)S0tv~ͽ!DyK#7l}UR} i~^{-RG*&[KBkL?|bS zEB?!#KI-=1Dϸb@ĥ{}U9-:C焩.oHT fCm%ʡy$T'xUĤK~țQW)jVN_ƑPj_16ޕq Tq}b"tԕ6 +)ӊjaQEix+)6vKR@9ٜK1 gzl!PȖ[/^S_p tlD< \ Xu{{a;rs]>C|c#[N[hQW)G Efxa&W}:i6TDd#/u@A ]2>4JʤUsjX/6Fsqw'I`DNm]lzZ19tF.*3\࢜:ug;|VQ t8ˊ "`!6 ol}woBFֲ?Z4UlYJ%m|`g̀ 5L˛}%vf(Po=qa G`m|]$atVsxK$/q8<}k$@= ǣ3@#D%AG$kpr?^+fȡ#Q6/A@8`!{uL^^#l rXKgo Ag9:N`fM@>i,piZo𢹮F}l2ö.yXk؄-EaHW3)~BieR$@1i515c|ś륥.]SӰ'{2b%bMyd?ᰲI(0!0p ^)Wެ0=ʚ*t\aG0$Ud%I{TjB;d"=8ygu .lmrrhF8Q/݃>4pWOP1$mVLɜMbl%)e*]$FgeVGC!wvr* EFln>]=Ҡ`#ٹ͗kef$ֹ*cXv1{`NBFZd\[JZpH,%@ g;+"͕In dmVdaS2>^ʶ:BԶ:lIH&!! ܵ5zui8n.JRVy"Q^@h1%F~ "[hʡhgydz|x.錄_Up}Ci㼣 OʼO\u;3шc{) Lz'OYSnAB4Z?(%A 7s>yt\IJ(.юYhsU'%w? Rt}d#4,`e [8m"0}LH@9U4BCi_)\fU0-QA)=Nbb`k75oI$~.]jt,+?X]_fڐҊK7) )}ಳ@SdB}<:< T4[*Nqȼ- $rc9ČQgFY3ţ {ܣ]tӜYr;K>[~}^oR6_~>3`?1 ('O-e*6+j?zo]3b1ABS2OsT-+:#"fGkΈ}` m t+"򈁰NjM=Pq+"L0w7MT˟sz,OLLv)EGԯr+!<,YY;9v/:FQ/UCK*e"*ƌ:^?~#j ;)d?`iLP WiQjvȔQʙS7ġSQJ Q lwa ٝ?>-!%|ͰrbXh~?o5kΡS1 ,!3ܟj@lFĤz_ .jھ'ebEpld\D̑C%k>vf3c, x3Jk(jW~GVHчg.VmCڙ+e MhcH.x:(_WݐCAbSc`,OYS+" ODft'D^"z<Moņ%>TEquAw+Z>Ct^#%~l=9@޴CVx-:R_m= 1XR8u3Uj:uCP[}gq{Jw[ =gi4[R˥GξK䑀X;4/*e({[~UCG My>! #<)īQ,|rp]߇6,hşv6? ~ Vu`Jbe]@4RH-Z^vdk"MpȚUA8'`z :ǣqr^FP6wW50=TO jH  Cv3L0~#Z.ؚzfX|^ F+4 j FMSqa a,^: P3 JS쎨ɻ;:`(ƵKY셷C~JC؊@[?*TR'R8 9yRos/MAJvi%cT۠|pQy)x>54lȲu!1"BrQN~Ԕ`;b.I5k뵷0$Ƹ3qsLB|`9/5o'ED(f!PQ vBpڎoϕtFA/ G0E5ZV1= Js ’In!RHfI7e(zc[4X KZ;|`q!%A>J;얡_G`D9<Ne׫MrF.2. &hbU="Fr%5M&q3JBK0^@ZVQ{f2wyzߑ36,\ s֫jO #ԎՕ` B_v`lD!g*Z6.(ƿc&K]~0?\!Ǚ(l9@< R.T\wI'F>ŨNS?A:.*0g˸e-Em22*QZpYBb;R{lIyJ|a6/mWRN0UFߕ-r :Z:`Yʂ߁ZVHo|*#lE<}H3U =PQԨ[5ЬQoiJ#!-p-ۣ3HmZ`hPj(CͻM2b /?P+f[pmr¼Ĵz.~F"|#]Q^fL 9>vIWt8U_Sen*qp\yeCFI)ҸVN}l*z 5P5!&u_#YC^S% ,B8)Hl:A?cQ.Gg#43;y/B68ef`I~ 9OI\[6ٿP 6K#95T/^kArkƉHޯ9I75xRN5ry kz+f]<2>$O ӯVN&?]Ej##DM\ `S3&.͜(ƆT=fXrBl:yltӁ=] E,'~<߫HmV7{Z߲(Mb/ӊ>vF9F \Kcafc41 A|IYj)hHFvJ&,֌'ZA3b{Tw急Gk8čjW/KQ1:QfY6-LL3J] \V/Xt$gZ}&OO,,`>7oBl NpѺ=eYV Œ 4=qu4=r&"YIUAt0D5;ѯz2?4)^sĖY ft^ck2\oଖ"X"]$ fGeD7<.V1Si=eS?8埩F kW WjeF+tRL鯾DL% 3#! ߌ$o);=W)}ԧ!})Bƻ p *oQKk=qE#F{"'G1`,y[282i>}+&Pr٤ȍ[8 fiLTǹ3,?7,ӻKׄƽKQ~Mr8s]`~o. I+z<[̭f;]Ƥt0Zv<~j~f+Đ)E&냰j9_`7}R?+>۪Bw-"g9vKIv|kc֫ Bf3U)L9(~M,ߛ߁~z1wOH_7Y;KʅʹbI6yyQ"%d!cd^صia!:WeeOW*-Ha*s wK6iIrV\{!KA^X 0P=Ǻ7:w+as[1}Ϳ|R^)G8^SS1fEX@.Vi*\МHr[Yb2_YUFi4 vGyNضn`$X#GQFj[KN]jRQ&MSAtýwCj#oJX#6ָvPELLf, E^`dko^gʚ$V0o\v/#1.i݈{[KG<cڐ8Eb<;*f,"ZgޠFt ElΎ)7/Qܘ)K]QD'rV8=0zwmNցϮ0I3d1@|#rPL%Zp"J[@'ۖDW<nDxfe' 3F$:Aw'TED9..#v} 76 F:…E:CnS[bfw\Z:G!24A[X $:v[({'ulV]8of}T3ה^u0tnYwd$vNL+**QAL{›rc0=RrX,NȌ=J \e;z 3+cG+BHՎBt<ՁV_k,8nPm3ΡL@_Pv1T,@*$܅Iuj+"xn&Z6^ 5rFhY#X@y$'^?{W(JIhԏp#R{RIȰ૤:Ahє [n6rE!^ Y]@SX$:}coH tT mLQUi)8:}Ս}yKņJJIolax{K_"J\P,$] h4$>LJ{/o9K-dm??S HԶW،M<ʵ}gN\JQJw5Zv zLFT!Kj0g27E:7^ .䧋_,=ڹJ}aåZ0)%M 5oVPֿ'zad_,Woe:CDe').q! 2;])HEେ0bvL<poQԷrѤfì˟ͱ[9T"Kc附uı@t%fktnі͡O;bgUL55ϼI]Ŧtd4ulwSH;?ܑpZ_U'0j͚-˻Q[#hA~9ryJ..x؅u~7A z*)a/&[l'YIbLV q,L&pSlbL*#:IgFtp:lk"?1'z IWGUڶg7\'-\x )BIuCL7"0GWdl<¾{^~w ӟ.Eχ~*& CD]P )v ;<@,=]+MJa@%$s{}#b5_x*@A(œJQ^c 1Im3ip<_s_@$ܠ먹'Tx0>Kś$Ѩ܂ M6{bY,7qnG3}6WC2+ls;jJ]QU<؞҃z qI7(Z-UQ&s);>d(E-94]ׄυ<FvS]6Jpg$Vnɩ!ҙ۟Cdv5Cd!ZB%oH!Yj2\FȏV3*w.JCP X\cxa#'?!5T8\GZ`YO8?l"㥠;Ր>+oίn3*-v0e?Ӟ~x#.g(ҝozťJ}&vY Y<ڨF*YNEY]P;9W{-ëfx>ctKFxmQL; +ƿ¯P.7@Get7g4Gax ̦7-W!5p!um/x ,CjƉ':h]+:'C`q_e˘ix2sց gOvz4c@DklYj|_GJEK8Yӌx}85QwQ`@Ei:hieJ /pKZmۈ(fu:\,Oҷ&\8@.x>Mj%igˡ[>_RFV  ұ2^7F"hRSZGYㄲ.i@@ʡȟb(9 .U}:b*C Y Q-sA{aRoEa:ZBqGZkB(m5ZLѵ&X:!i-E2c+z0E!#tFACڔj]E%AsNE7(e?w\b=5je EFEn½;+/Fۦ$4p@D\oD&EJ{/Wn7mMIE%Nen0Z@kKe5mvI.QAjC L v) we9حc4zI휊Q4r6=JM>+QEģ.֝1& s5-wTI?&m)_JH,)sUjӳ}zB{%|kEcfšw j?KKqwP+ғOKyY<~bDmQQ>XYrNnPGy:{{ _XWa}j^ >1ub[3}QUo]ѠЂ[r#V3 KӡU %YHEwΏa+f|F cwʀ/&-+?brcQC' (ƌA% U[3YOT@optE %3 "V E2uv\_,VƷ(T^)̾Wq '΢B -t6Cmp&%d"=)g)؇~~l:)XiOg0hOntR ;ڷBpϩJr*hhg`&"H&қiNp{ DZ'c xe y}-A86̝4U.A|c|/mWOe\&in Qg8T~*돡j_eg(ߣst2*߲o|0ĘеX8plHdjd8Ηȍ@js+%/?r:ahfJyd}^Mw( >p<_eб>Iho2h[ӢGE\DFemڍ5=P,\Dqճ- F[Rj"튫8 72XXNŁ~='#>IrSŪ{ Js}= q4L1 .^iI?stz5B,nqd̷mr"MH9stF a pio9Q=ujד&$d5PY\?61i:[22 1U\]5'_~՗b/81זmkӽeBVz缥!gl";_Kx w<_+h2kzKz )uHŸBm.ߕҤ08D'8Xϻt,ѩN2,DeD6.g/}/I0 b%+x)3e/ⷷLCLw{UڴLҊu o]9q#rٟtc6H$q|%dž-568ݹ"W?.~#M>r^He󃭨NH%M՞q5<0ob$c@9(NWfLnQmS X#gL8G$k ԢucC7Yqlrs51-#ө9'UD(ԚޜA`ڐawH\fZ;s;Z^ȗzj(:+$L6WJ'+r'R)&" NťjN>'n: T6|Ngr^c% e^[ {Z1Ym!VG(zl:YP6=&Yxsˏ.AA>_U>@ipqg9| 5CM/oA2z~ӿ XМnqL V.b [eYԞZI4%;ʵdV0#" ou趝Ds$텨ĴD2W/gJ _RT c_WmӯWrq;:!y;:WP,;u0TKh^p<ʫ+4 K~Ɗ?=3}#fICٶ@.L#_!/'r7 #mgKKf6JlFښ, 1H|+18`P軦'plas?FFQYU` geZQLh hE)7%jAAWsxds/ QYC1GKgN<ls -7 ayN A'd$r%k]0u ړl9_iSw,Q A-02# |`t[ka݋`딑*Pp#br"l}ǿ1)ynyn<=# +IӰ͡PY|o {kX!豯azgyf)(_12k2GO1qzwȭdφܮ Ķ&\ <6wL11P9^nSpʤ:ܡC,]UϿX2]JD dҚ{Np- B,F?WƜw1VBt;Eli~geάKd~cr^ALnU6n_\0n%W^И`rYasàR7܉1 ~.yTp aMR9 gOJa 6JǙ|`R&K5r&EgU}8\`+I@vAaZ,A / E6>=aT˺EW|r ?C\c fNQjfoZ_me~+\ W&JRtMԴUlp :6ġffIi@dlz_[0sLcΨW 6 >E>oEsPT%LF:G}hڶ*F+]<+K}I4+^ҊpUN5^G$p]~<&!*LWTr}Ѽ0g~ҘM+ 0"B;Jx{S5%PbJ}@h> f F|ͣU]~yi`PtAB p~g.B(j`'X#tH3N(5~fEBV m^KBfH+jh"?jU` s!&v;rnX=(q̡m6G3r'a7> r)3 FDJ<I0QJ y +N ]P\MBBik |D<^B 2&Q#EJu΄IffUCHr_"z6ԥAh]0p=c׋+(ZzI?}hwBNZXg#x!S'`!">驅yrיeV/VMͰ"165op;(ּÑwބ5*8%QJ{SoԞ찊ךGK'Fu:M~vGvIsC/r?@y +_5 YpMODN7(s#$',B4q6 LZ']\QKKͶ-`8 jgDRGd@&w.v0/NLP,e Ma9FLx ^B}ƈtJN5;Ôӂ罅f?W)F,$nRja$`CQG~ɗ %SGeQy'sr9Ⱥ 6_uoay&"~\ NBHַ- _g5ۑ)11Ɇd#*;Oɫ & pL^?$WhOm , fAo +%`9Āɹ(P?8{?][tȢ)9]siW(]{$/9>ƫEq9Xk:wQSѮJ)'١ da1tNN T(fWpf[]MNaRy5a;.S8Z7 Wnc|`H氨HX7tނUlI|#~ˑj7 k6jrѷ,*sL. 2 Ƞr쉶x8} aj. ХQ ?ImnGox?Ϩg­2l>T@_&ԌYeן^yGޱ)X[G7|eV|x*%9lyK#FY'%Gy^Pr=&qa^1IWy<]kj@z["X0a&?&DSSDE1epD'l C +oK\AIp;Nq/|9T$_y+)P  Zrc@Mot=u wĕ_G Ē[}h؉&Q6 $']_}!u wgWNN_J혲MWc-X02! ]孭B|=N-iֱZVthkoD+@cmؗ)IH&ӌ0%>Jm-> ) Id1IVЈs0c?T2:4|(=ÝB"Zk2bK 丧)Sŝ#\cŶX0;?6e]哿`MK}e2ʋ|0zXaxLOfA"\_⑪teE_~f}&rdds=>.^8BypuuvU7TaWbcQ]b_L[ EB3 4f'J"@:,礀W >J ] IԎ~܎SfG4I;/ )Rs 3@耇3%$6xXϥv؃Xi8s&xK51߃v)GdC[ _vNeYʃ%jCpVPOÆj W;k`l<%m#7Wz# G+$A݈AOeRCS^4$|m[|=v1A*0Z&*U)ɗ sAcIѕUG6ƽU6r]@7jD[!^2J%i-`ۯJ}ƃBW%U/z.cN3B԰ϵcs.W\@q@N&ŜޞALcv@Vo[H#hO߂㋦DSUJM2^GJMcZziJ:ӑ7(~M+Ba2YZ-4iuohЏ3>zNFkU1#HY'K 3/s_L:]1Wi>|ڨw۠u2=Pxg g<-8ein)ı%]@MNl0sL 1\C/׾2x U7P/~.MyT=3։[z=0 CHkS:uʧ_緖Q/ J~[Yp Ͱ3)$A-8=p(7'k? XqM]?Zzֺ sD_ elГrӫO#|+P{QH,Wvx˓W7-t4)@le!,iz>eeDD@K~sVOc HvXWV&;QW-׆ZHV\(O{D v;@w?'"ҌQsYc}'~ӡTwI (1^زs t5E.V@qO6P<"Uãx,3cxbtv'5\]I- ZYW8woIU^.>ylr0Q'S7Wt7Ĺ8UT9 e/R7)j|4aQI+>FgާKF] (_wv)ؕ)uUQP!==c,"SBD Π\H. AAXa/ HVRӗw B;e|`MP/k:3f@PݙB* q戻3 @|)_;jZm8@cRTfIN';MÇ88SB". |sifQݢ.!TxC䠫KE?k -|qڅB+݇>21Ba9*}mWId4"l2v^DFFr]oA'j+tz{S1?Ҹ )t[d NIQ'SkFoЛz00.7l}{\Jmo; J0;I !f~.g~؁V%Ѵ'IJGͳ|χcoFZ&wQl x}I2FGݧ{A$|EPL)7 #`71*_Ӯfs++H*IҀXX(vjfl0+`\!hEe#{`` /[ؚ+4IRXG픛d5;`\,Z2]ѥrx1BSfX,ҘA bҰe3lsRE6oNh y\wr \ 88w8iV(ݕi )r˼@k$~dYA‚E+bpRh8[ŏJN~< `*gb\cdHIN@2{udM0'i,mi(9=h_ 'VZVv&ZCՖE u__ T!֣}}YaN Rt!iXAz`N,eL,J h%H;'^V9]z>'?aR1L*zsᡱC딄 &ʞkљ[edxW'"N{>0/N~v4^^JiY) &Hn])Ӭ%)Sј8vUJזHEH̯r" j1V"z6B;1?Tb7s HrXy6`boecXS{s!R,s} @;+t{p (N`άp_% p[|ao'"(V寂_')T6ڲ2ΏYpw)RB!K:t/%n \5/tgt^"IԽ-͑3~e<\Pҁ Sn^ux I y; 03&Q&]a()ԧP5@UPG[u0=ђK2Dlj(Uz>28!Z^'vV-ۡqgySd՟(EoN Ŷ/4m>}O2=Aطk(lJھ 2-T:I`܌~?Lˤx-Θh^8#1USh9D0σ" / 2C9)`0tiJ +)zBà*}!q&1&)냾6Y8hJ%c  DNIx#82=Y8 q1!(&EgHk@(MѾ*nǫS2&dhG*z/` sR1^(b0ͺzZ $Kȥ+NPf͵(3<+͓iL:&8>=䋋R\G{YTi9vݴ0,%?cbըg6dI,IZ\9Ꭼ;5,/.cxpJo]ltaؙ[U޻ zմgp~CT+#{5½`M)Zagk+8 Km'z 35[/QKTl~3T^tO[׹mt_//2K`&1[iON<$qz{8K3cvg;p#QP&VY[_7U,Ab2(5~X7*$Mfn:*B>Qyw:4jQ" =Z^IX@w &4JBW/rg_#K}=8~ԕI=E}=ik֮6^xBy⺄QVl_qrb'D[+& pDP*,3БeI+׭Iqh2tmSOlƌ-7-;<{T)п;T04CY7A.u7N5&\VMfUgX-BBP?Cib䕀sBCjW\6)U]HOxi/aEV IˣgY>MlO =k ÞڪQkg!dABwrX\j{#@Z= <'Za5.GggJ6yh2%W@ĵ_W%q/H8s^E ^>P/INhzQ:/Kj;6DEjQP4KB>[^2` Ƌm v_?Af@F؟'8oS ܪ{WF $c @YyËH9`PX&XjUqPC1< F(Hʂ,%(JB/ѫ \ ,;h|:"6?Gv~g5UiJݗ0X'͑c=N>U1 OJc"H  '~7tVNVfe ! ZZl[*iTO AgKU{wHHf않>a?™햯ahI-X?',c=ţ hCuܪ4i ᯀ1$_)Jhh@ӟd #U8?̌i$+Tp?[ιټR!ݜZ/[brm/,M4 e"9Hnfh-={6,j$禀jN32Bu (b+ #XvƢ8̕saIlSt#ƪ,JZړ'kPoYLۊn~{T]#+buvu#銄lkOsQ,XA)I&jjQ"![egח-!*|5ɍMDJKw\NHo&!eӮXLOkFdwq ܚ7 R=!/S%l#ԢsTէV`lPrb[ <,eIl \zJxN2Imw8gߵ}F;`\Vp['w W>.8aU &v !Vd<ˎg kuڮ}B|Hv.c7l!|-̯4J͚ZzѬ|G"kF|ժb$@rv!q2ޔF0 YmYې&IX ;XkYp בdBtT:0OB n+/h[x /?E2s Eeaytkk@!pQjk?5f{gӳ I"z߿K2 * y=4US+VBuMy>Gh!ֶU:Iڴb-5l+Cn'Rwl`7#ᔟMdGĢi rw0j"gl3)k)e;0j2W\-=v$cl؏t;2 {y..4u6/3w=9)n=1` w%^ڕ"* gFӒ9v*ƥB4ĻXJJۮ ? - '(z -ip, ~x(7JrJTʿ~ SQcxŏTpnԚ0_ǶB6KiM0q_yK%l1*gGw!"Ta4.@܅FkrbM [^B_ BzF<\.CN|`zGbI VL:i$M ^><R@D{d L,KWusp'!rMT,6zVEܽ@yVΦ*bI.'/(;PmLYˊ_c7(jqX8G:luvA[=X =T-&P j(a`nZl\R7Ha9ri/q̍FtG3gvOAA7E1 oHlЁ 4/k,HGq3U0ßaڊ/#&eYk.6)[$`Q+B74L?`ɍhT}l, 2!qN&~`ZH@xv(j]l=*L 輋e5[Jv\Y/7B6֮*(4\hM][~$rb}tǟ@C랾e &"`겓ޝ:3)jkt;8J=`k~DXdlGe6֟4ֺ~ӘԺ`b61JfPH7]6-"]5XiX|amG#@ڕ=|_9L5P #\j{׍i ^4~"kj#ZŬ9AB:#J{}H=)K&q\걶yNGvϛcDlMW/e;wxeTv5MX5^'o3r? 7j~ǣUP"֕jbiq ŖY vy1P&3,ȃ?QHcgJ]ɳF m:j.Of0tqwqOS K+EPbzEZoYFbİ cNVsow=axH#8,NIaҏ'8ܴ(-zS'5Cnt p#?;$(muR&Duj/V5cX#b HB؎.DzGNyd~(GJ8tWgI۸=ֲy W b%EhЋ">FZu/tzHupR|]4i?s0!Tk0F=P`U?UEcQ >gUN%~6Zu@YoƏTVcSBSQBzVF>X ʂI}[4,}[o` 2ϛ_h+S"Z>o̶bbo8_ˬܾk@5kgUKCr<!ʮ٠OsVn1)G{E& ,۱'i2/?#ƬF8EbN"JuYg _%ZA:o6q=r_.݂t67~>ݸ3 A*hzN[/ϫlDrDL rt/`_z#,No^N1jDTÍhufO5N15=V{g2r3&kreT'X[Iq )%l&3Y/vcf*}R(:eYjwY)E,@Bʪ@ b%A%~ bݼLq@5PѯBVQ~6۰?,ЁW+zxɲiʌrfEۊOmh>;s;ۜ1Dz]oGX݈0᳾N W`!e,. ?@YI[t[Y\g P4y+ aBSe"]s;Cfu?-DߋkulY'^ĥB!Si 'FgRNM͌QuѣJo_sL1⅁R+GO]iHP\l^nȾ#PˊUa5OUB"?a.x2l*ۡ{P}/)Zc@Аdq%.s"0 EZ<M$`꾴!%N yݜ/b.ɅHwv7934D`'pf.S|+a+F<%v\Ol573?*Kywc(6="n`*pN-fzq.{%P-ow `n) 45SKXMw@^yK-k/ VvV`h~w [f$"UѧAEg8:?` kZ}F5sz>7MR4˒: L^S (A( cE[V[.{ q t9|)Xfģm81CAV[K\9~JSOmy߬,έ>G#t󥪃jmp3Y_RM.껫č /J9#b>\N3U4'2 ktآMVW3%@ t|'z'ρA܈滛+x +!ڥWVrr7 ? c\DwMd.8,O C8nkT4m?{$k.%2zW  vՁu_#+wL[, $,my4uhއ 1f w>5 -QS!Y0S wN&tEU-pp;R5ϒDtn ;FsMON~Ә)𜡿87 棏AQLsJ|hN19PRFxUE Up>TpbD :hQ gb]bZسaE 'Uşc"Y?WX6xޫY(%O.XB5ORsMmAge[x{iFe9OL7PKR+XN?P0@ު ( R0U]NJ=XhX^ W}%=Hpp3N>,wFx'(tJI)b3}298vnjH۲8&@ƈ5qi4Npܒƨ_"F@,/6(@j7ˉ~~9B z> !GgLq<C~PN3!1;BZ_yca `: pN!GImv8\9rսkB$1u";Y*-l(e%>fUa﫦jJ+%)=)uG5f;Q2P%XXO8ׁ(oAFʲH2ޮdkA=4yRyNJdגE_ r'\no)'g=~˦ *$ef)̫\[O :E`)M#-=kĩ^Jӂ5N-3Ԓ}Zkh0;k[`4a>|.Xv"0)YmJ;)}ŋ / VK=ɏ|!٭>[An[_*_)AF]tQMKmzt1Njֽ*n,ݦ[*20I Jg x[BkJ}eBWY` •V^w("M">2o%T9`Uyke||+󮛤d(5 Y¨qZu9_J]+A}Xu=7y>sRת9ZZBC-˱>vTtbAmkB ҽP> |c:BJ'B-tS*-ɪp[~Cۙ P)o|VfѫiuH/X|<[ĸ a we6b]٘2)'zk׹(#;I I݁.EoK/9)vg s$.C =+y9?SF]4)rMOU]Nk 5$n@kka5Q3gpfZnKDiBC_55f2Q2njJX?_ҽqu;2]DKh`do{p`gH9M&b6*腟.tǓYO8US"`ٔw% yi@/ gR[nBE}2\>|: @y:J2hx<@ WC ~<&3,(fZa6VØ'|]R+;%~ڲv(*ނ@_CE>GGOF3N^-5o)K2Pȋ9 E'CbODYx Oq4Z*Dk^&8dyc9L kt9gSSh9 MAxgh4VߘJ3`gm橡!LX?vLO~T*&,9F Np$Ξ1< )yY8M6KҬ,]bH*ޕ!޶-7o%DqO6z.ֵ,P׍?up]D;|-e,XKx!~ύ'hjY_&by"Xpa,cψ5t:<Ĕ 8T?e,Cj AY>@+IڥAr78ol_;u)֩uB>[XƨQ&إ=/r!ijAN.3m5XO} {C逳2] TSİb1* ʙ2{ɫu)[Fw1\QmtH?q8[ 5Cȅ;\d\ ^=5*lvDW2UN17O?k֧eTFrK%;~M†YEM [1b> ěnI$yqbKTQRꁗ%Kimâj.k?N2Nb̚~i+pN)'B'!I.HU&6`Ȋt&&FKphkPƜ,K~lzUAZtGр''5(il[kIeҷ9q:3I@Ju>U~uc~HS5vվv ,Hfat%i%hhh 4DŽkΰd\p4/a)|ܽϠUQtY)ؕK.󑕐36p5 jx9c5@w =t5 0.⯠@* ]bRɠ>IBG;FeUP|'YCQ;Dayv$/ {qlqm+a{@K|"aC S `!AQm_$Sv 9Y,|,:H_yxb$1$: 22>ǕcjYUI宣KoߐKYLi\AC[T6aYȎO1 !<Ê|$g|ܶ*dV ǤPBϷCq8MƔwLc 3k oqm9\ 3E5nbPk^P-xt1Oěڰϊ._j3? ,e,*˭J}γhIԶ6% o{5ĸ$)=MN:<A~26Nȱ,SyFk8nD1Umq 58HX0uT_;0kmж2B;!slNf~;,{iG8FhtLg5&W{x' p\Q <%=3L@&pPP">khHj%[KxP^ 4%;ZImM^ׅy܀Ѫ,84P IWt!)MQ*ܺԺs@WH챾^fzhzVjʸŇԚi6|k21 _!fL[caA޵[ְ@|v~hAR:^,NUlfdE]diS4C K{|WwZt ו'96N @c <ǁx D$sRH7pػɧ ƽ>sB`ПK29˥EMSùGw" ykaqqI qbxKLE~W~Z)~3jڂ0vNifq0 C9!|Tk&ۛ7A$Y54Mt~STyx*j1 2cOzV@0FLG<@w$?cOݣJ;&kЈXej33˳ީIDR?uw47;gͫ)&xBfFh;538lұ,jO;b7OwWULuMMjׅ5xB-$φׅljzy(DCdQ U5P$x.4픆i SKخg,-~=do`$pC#Si:TZ"4fUK|3 zzӋZS2 ߫Vs+ ,w/ OeRBXlvCˡ"! Bii_8ڷܻuݑzrXv܌wL͘!0[JKAO02 g+\MZ)d?oТ!2 il#+G}S I^ZIyM7A[G_gH~ei3(\%@f}yhl~[{Lױ 4rq>+rIUp~"ӄp ҳOb3.;igL9'B0k_!9c C61v,Rm0y硝iH*="4#a%ůTCVwB:C>! .'Ȱm76ȏ8A l=!\I!U^ ̳@r ețԨ%UQ')22p2dΔș ~|bsP߫3J"AV\] u#ۆlۜEtQPjs,Dc4b*)$6pVZkᱳ{:F;7%$ҏ+݄fb: Nk)ZYff-`i4okD% ucer5,La t߳ >Hmh^un9U/͏cNmiF!]Cjmvl(Gwf '2m:Z{/6I|y`Mͽw:ţCB@^Np%WV>+, )XRDJ_.t²4z:D2Āa]:5Lρ_jFު 9Fjz8ўlv$HO$=r4xxğ23\SIEp};#k{~n'_Ƴ5vU(vS-*KkSY~j6F  r;h0 :!'4&(1 IQd ]Y5o]KAXZ_`R۴72;w,λAC*7UD'c]_&1?tN!+؈pa/?<c~8ʫ(AwjoE~º1=nZcgleD.%a%]T֘0͉3)qvV$-0S@ر~0_zrRZ{z)(TAS.3)t&zI㈮`W1Ἐp?-%:]Oז d9xK {]Td!ObU*RC+ukLa ejAқǾ[e nΎ? Z댫ѱ\e0_$/QBow)0_ѩX<öD;9U[vI3P`Ğ;݃%<МVtr{xhK>#NaHRMlq=LA 1*NJe3Wp-F.NRY@ xMu hr7&/G՚PRhj&b4Y"ss /(&3ϖ Оf'AoVyYqJױd'bs'?`G'XJ G5BW큕 D\p/JRaǓЧ ÷ Z]oKS"\k'9= ,:H^3.eCvs#9EzA QbA CK^(K2QN/tCx e~m-S2('ri=6;l[S0% g^iXʳִ c]5 Os@yxjna:E>d ɸ_=('QQev#ZH?g+e=a%""9"UOgy?dܶ:HkXg9>TjGĘFCӖZlR<zb%F.'?ųlXgcJ_(;2 *-[t뼠@2P==5Я=7CjMx}1A=EOԎxȐk[DhW`n#Lg1;M1VA!WmFQh ;~oSrI 8fU&ٝ?20nИقΩAIw7YP6TD]z1i53!oU'l-}h6_4=h? pg?v+O|oAb'ugj3\0dڝhtm]ʇsǍfl̿7A,txʥ/4\jlzc;P79^\Y'#)塄A'&?/M!GNX@"U:- :}ù3v; 4C@v̷!deJʳtuή) ȡ?6"k27ܙn~-dܶ* V&!jےv|{]Vs:W v۰f@sfЮ'RqyZ[j!8$_(?F# 9Zs0uX>aSlnVYMR%l6s]9vl7w|,\kc>恢wOʤ>ԪݡjgXͭv̓d0uɍ*!V%+:^fa2ۛ!^xy )şXO<[FG'ALJgB̥rRSNXd+^Ц`:wo4`b-F~A5#oVیfHvx'<?Cn [GPx8xKO~ 7 p`P5 jϓNKLT77[qKUhÀ50kdyqMxi&9c*\`kYQ'+WSK]OhacUyшD A|z4WI T*FG ;Đ9hYV??p:{) YK #+`(myڴ۹#gBlkt,20V.jsR Ȝ_6F.WU%NKBΜY+R]B)16hs5D~MŖLCF3qc /Flo  X@JWtyY_ƿcGuDUV3'[˷,5aX[^ڏ9,.uhEk%?Yf 9 J0%mJ«$ʊW{pȫ`0LUMNql|uuª)ɞ7&M,5} Z-S)7YJµfh۹Q+$ ߓi(8JS |(cʻS̐%2 ^o` Q'' ^KWCܴ߻Q\cn:B`]?@nOxRh{[}ZXgewճ8x}Ghx#٥I!gCcH3 i~Vӵv0F 6x(n~J$Js̻iY1dfXJT.0W3%]6Of^ߜs$~yUJVq긓f4r"2iw[>M'9 Cx|D $?<ޯCh IY \񜸭}dsL \P ?@9sAVSs4A`.׈rheGe.p89[s(6E9UʲQ"{3Ĥ"59-픽..$PWCU =$jU|N3鐠D^՜ӜŎiYQڍ pPjWHE)&4]@ٸP vpddQp܌-!Ңhd̷ XmNt.6I:5]`tJT(z\Ǵ xe5m z]`4,B3l4\pR&F1g/a4[0Ayxk-ڋoʼnQ׊?%LV] Mcz`%ObǏy dW+Ih$rc25o(ko=U Uc"% K_J^}o+w ~3Ye&Gen^,us7s_tC?-|s2/kJ*o{z9kt Fk~XkqόDR\vx$kg^OtϘjui}M FI?3Hޑ`e6h`ϝ'?0/>ܔ68(hN Gane0T Plq!Ғ?"ikBmE: _Ofʓߧ߻KZ÷tOC.V-wtn-hbOҡ2Φՙmi%F5Gwueg"A?åAr +|X.QRլ[m~؉b˕, &a0ڶ4v V˔VU\UrK1chs%?^1j!e/?_6:7=YS Ps|mgأ;k`GXREߛY(%s:z;tY!=Ѱv,B nj'۷8ʻE阅L dCb_m%{G@f_'-i?mՏtNÄRtaqrvE͘ـR)9,BΊ@ej\ikBᏙ'."9Ph޽U%, _r<20xm5W{ߴ5-j?I͟_fr8UC;׹ `U7 0)k9`dTf4 ̂:[ x;IHE r~/uЏt4(ҭ=PEyf0Q\üC@[!hgljFSc`$*ohUk3(l!w7dζSBwª='WBLgKT^9Z^! z`R|U&?7?~KWMhVytCs췆c/yؾγ!V@iPvV%őgW '!,Qq_t!(peCh9>9?EE۵x_]ڼ4ԕ-z,fgQHO: -lXd9u"CWwf1[X߼?wn}v+J KMΌsd_r  q39ݳ踸a}Y*Sd[yL#h޽CԱ~IvԎVq4dҐ0sk-W,ean 5Ψ꺠l֒XyT@Ҩp)E '0{]u!0e!~}{wP:IKe@27 a=EA6 e* 7-`i,vҀi? xX' S\H*hl>z QdQ>=c˧Fhw+zY4 gO6r֣ʋՓ㮡ƀ{3"\Gtdbn2O|:FD`:zT 2OWR876LJitX2R(EO7p".(C^$l#H*e@j^P]T ?hoeJB-mY>1#aS!$[!p {,]ageB4>a2 dX1Ƅ:z1܉صZN)׸]xd4z !UDq]܂>Gɷ^l  mY`}konQg닟6Ͳaux̼XC,+ (88>z_T%+`H&KH~;wĖn.8`LJR8OCG 9Q`'^!C$g&xCwzY )kXm(L_j/x|d90 9mJR?$=wWS2Y_l5rwJtS^fc'q .uosu~A+ԏ+&&[b2qe2M4lCΠ9IVNgk=[2vO%xܞJ:py ; 3Ze#:8t76r}v Cf0 ǤyWڴ]ː_'dNe>а}B񷶟=3>˄ktgasUVa# Y`<~XcpIÐ(H"=7]Zl{S]"]J5P5ϲ.VK.A i ARKc_7VvM :yp!@z#e\.= svWe @Q E(O+s}yrEQ L7:U5[[ފ Q1^o#u$ʶSӀ2pXzpyuWxϽٰ/F8(E>ƭ]ItB}б<HU #yle#0ei "yiJfXt krP=W:i{q/SWP_5nzࠪan7q*iwU3S;r.3CUvE)o_$mn.Kuo`(O~.}]x" WN/(gU?]iB+iP\*|eU;֩Ms@ elt\D;B!פa9a qpkl9/YGhpJ.&ƍc;(-yWېBt9C+3 Ps g[Y >d'^–Cmt_0\dʹ\&]@4YM+cC]l,*qiG4󍧪1~kbT8k)7vѤ{zN֔ه1KŠ9@?vo[@ Ʈ[} w(&H5OoN Idx=Z薭[\t3_\3/?`'mI9[fzIGrNг41S"op;wAcmqERo$_E2ЛA N<-Ç _BYzjءj8S5j\SBF7m$tca"02G%f^N|hӡY+ٮb7X]KʹrU5MyO()AL*C6DeY>?#E>6HhJ0Yڀ|@! 7?aWr@WJ-Q'?V_: ɩZA5R]-ei"@삟{89}> /-7\k\&)lvjkZJͦkH^ šީ`ѧO8)/[`eolʍsp)t|D,Gx=v(ԶqD0=:x"bNK,]z"$<pcC@miA3!`u<ܣ__4+s7`qAwV We)!2h_7)[bMPtHxX9`YGε2e䵉/ڶ 0Mm6ԯ#fd2&XyR}+ `B7B 2F4B to]4 zL,k)S 6t2G<5;0>sp jTG;$B{)|{𫇄CMl2:~iI"$=;RSsIºҩ6pO6=A鱮߾;/Ώ Vke逛 F{j~,Nke]ќ;A*>'ToBhhotцH pU#sC2uoOF)~pL@?G)d]AuVyM"[B7KSFbne m!6,Gg(g4äÄinJ \b"/7/HCB91ﰱ=3%{kAHtm\E //I"/˚to|9IyUŞz7A8VV[@'Q60(sZ`SgXZ' " Z׮aLFAL lKw>,g̛$y8Km '{s.ɞ7#b߯:dۯB^gكܐ0q|_Oa ̠$H Ga&DXb~Mmx/֜|QO֩B,MxhV tJaY$riR]o $:teKlia.1L6&u{j32qib T⦚EXywN޽UdqLvrBS,ut%OY)EJ4A~K! nlF 7!nQ8)g4ۆ?N0 5[lW(a,p)-VeLjޚI!^#=t,֩4yXjYPWUǒϺdCx/6zwn?3*/EFYAOK͘5|  |_n3DԩL5)Y#2Ou4!G=MdlWHx˘놶 w]?}S]ar7Q)OIIN'8Mhϟ]1'gI%:]92`KeQs\\XWوeXT';2AxUX"b,@8Nf$\F.bXysK!SVX4jY8EpEf 1y{WkpwŰQqc6A4ACvLr_uAȤ˝ER!r9"ޖkXEI{1[#Fra^osZ Oz?|@=$dOƒ:(\;/9 Mpsݞ !?B7xwgtÏt""3˦ =& upňrfNo37Z^YCĈv{c}V5 $bh~#GW^ydP `H]u|Wh^'Rfo yeGx9̹4B륬@ql; Qu/jv軣Y Mσڥon cDUß4!(%2%ff%L/](c aUci1pnpōf{ }`'& 1 S8*J` |ibJTXdyEGs $meBԐ<^yK˦'#Vd٩3cY4˖;'=VQN&.=^UrǂD9eiI\ T= 9s'{OJXeb;0i|;9g^z ݸ^uӈ<`±M^Q?rtNW;U;,2޴,FG JI׃Nk;٦d:X[.r$3.KqBj M* ˈk-1YV)Thd'Ȏ#H1T [$WI7lXa<( {/$WT<7ܮי5+oNi/a9Zցփ){sB30QwVm_VvJcl0 :"3UЄ}{|؈Я>J,c<x5a8_=}|0xNeH% VʯEѤ+(^iP{h0@wJk PufOfvE)n>nX kn$ { WUdID3͘v"7|Pu_۲}F~69] <5tw0ms&{}!M Yyyռ@#CztCn ~k{3<}Ao[` '3kL+$)Lś}?XLPN#Cb8/Ot 4I5`KO7닩#Y|G=z;a^nAi%f<\U݈LP;Q$?NGnU4PM_<)Hީ-WBFn2}Vj@B9ە&.&!x[y0FKcՑh~a/ ʮ W?g)-e T:Dڷ -IEBi $jd /DxV8n*L_2^ԑ&1 98},@Q| 4^̾OX&߶dN }q?ly ߃8\mR~Hq1"#QMFOr2h@_\65Ń$ f_=% M[iCұKLp|4K HP&cI S]On Dv$>T7ZSg/4,B+2JW(mq = xRe'BHMTa|t7U(;T`~9h-`18 n0*WfdC S7K2ѕrJ?| {1_+(Y~v a['R&DBYW^Y  ^B[U7qx nED1b\D c2C,W-[ˬ6_*](&3Q1p?ݜ\d_(K. rߵb5VTХiuPQ .ZO+}#ݚڟ\]zf߸?!Y".lZY&ډƍ $ >@w`-[TsKH@/F"U.6cW<jk5@-M$A'*x͉!(IpnTjջ6V<n۸{yT q_{#C( AN άyvz/1+\9cM+7bx5FT,F#r,7Qw.\|(GL1'V }Њz `ew%ڦCm,8z 1Ճi Ӵ ܷ + kW&jy`~d 63`I{Nð3Wȅ?6#q񶟂leO^һ$n""Dpe ˪wL_Qb8Жl1)fMCgIB\Kّ+|XO\3chE D;hZK z (]L Z,3ꐈYq[ )R%s%EӋa-X vAd9BB;} ۼߦŷJkyPhhF+9:]{jnetE0Kil6\jٓ{j;.D}^7lUϬUV$:r& `S4_?t3+Gᯐ6V?\ռR&b.]J{ʑ Gn+/"-8\g+. ?s Vq9tI`0L?v`SA`q(Y`),+!< Ep"BiF\DQƣXEBjiֈG^^ڜ/&p!yrɖQ]z{ߜ~W賫 kR$H`u:JqY*E}ODya>2z2b`k^9'YJA77N;-&vr88~ {t4h~`.s4KRQyߒg]-kIN?ǏiC .; `3?q 1dϜӽ.^>ܸT71.8)j FMNjV#<2F)$ b>Ro:`5,Ahӛ+tݼk;7!ORUp6Kںۣo'Xpȉ>2,(I%w`#_ft&6.啝 vk5gAڮc)B\$ܘ`ϊ݋KA2r-i@/6H +!Dvmd#P*_g?V:o5_mٕ<"[NG8ޠ2E*8KІ<)=rɈ 2n:L=PrI2*k%CqEkǼt]sx_}.4T |fuZH ,Rɪd#TY<\#*fx€ۘ&ndH U.fRZ' >mYMi*3'zD֦Pmu );V@[XYQ;T[Q)FxTZJ4:}T`L0SM08񁱙h!t G*: -6o%H2i Ϛ RJum :vdidgF2ą/eFT1}mVj761dN>V0QB18/{FV8Eɇw*ʏ^h}A2%s 'K( gv~ 6YmMAIi{ϭUs%sgnRJ|pc!xq}`#c rvޏF{)O߂ه;1 c}mDEeFBŵ+YG+(XD҉;BiУyQy>H$(AtB,|(ŒHy8(C<1'jsH5W$TQFt: 9[:bu qOW T׽LhͧM WNs8hЌQm\GjrJ#^8:zAȴ q3@1[;X&.J H)"FQz|MCcż~~u N"8d[͈@*s2mAHFCRAd:xgE0 XG ^2fݬQثAKw= g]L- A^+, DF֗с7鑻nW:VbqQ`sya :3bT kH~$GV-va|7d.nJD/C 4G,uYk{f3~9t.^<bbW}-޹oBM6c<8s#+Z\S8N ;6!_8ÙfVn*[ CyAvlK̂ j^ZFOg}Ze6zwBE,=n12"ʺ綠[Vy}!ɐ4$N?E"6B "R]fe6f&'4I׿5ޖoF6W& =s}\.Bi'7fXDfmx0pG=Y ;D 2Þj}KOg **]R#4,MC ρr#6zN RR ^qIК~ً@Sgwbje0nshF睔~F-{DRvFKn ߈cm~ UOVg(6xG_”W"`6>PB-=r~"5.ى]^ }ѦU̹y#dBD<~eW2K{p sHXp>~3zLW$ov@sFlh¬kc,Spulcv@d[jԃB]"0gL/ *)K *aH@yь3}S|=YXЀӸ0LUhP^ٲY[Q4>xmV1".vCQAB@D| 2'R븫㠦m&xF0ظឤ:KEUͳd=sg0U8qj"8[ɏ5k!ϾSdXF謥{aҨ97-@pۛy%XAC{)E٘@XTxuL"R ϩfWݟg4X'/CAny'bc|TL%cO9m.tkH:Uu><6#_ *F|+3{٢H5%og@բs#m- <;v\[;f3 !Ӡ?P _XL5./ekwv\AїF E-F:n Q{>,@HôaӍo󎃫+ˬ

#vJv]6O:,C* i>*twUUp_9YP4XPf&glD&p0]hŽH]1)^,ƣ'xBA7 H*@rPa[cԿucajnAH)$[ Bcw.ɺMxZjG cc\llEnq饴o(?_?*B=%Ǭ{ިr(Ͳ˝k"8k6IT%$ K+dθ3+/L%򐖡x>[1JȂ'0pJEv;$P[fюRWz>s&`2Z8e~XVn & 輌ñwL3kA7,*TŠh(54>X"M]| '-Xj9OkXmo4}vq_H1hY o2/i6Xv"F^[v~N5?qN>\)nyCD_ovu(©x(nV.w @a]yivv4diQAcLR,,}aZ>pzr4M(69:+8nB̪&=pkH2 R'Mo4]7q>kąC;b 6=]?&RvOv1x ??HC?_kyvLv|YC6ʼR^Pn܇kZ&:APRG/ 3D{iFns;Qьa ;rˢhЎO ƀWL\~nOr[>Z) CVϓL{{` n=ʃW̫  1yT4ƶwCl#TG''*)kad]W:$ŷC{I@NNl=Q5x.=b (y/Sw>类)pqyĀ ʉ~BWXc'kҋimP.a&XCBҧdNgJF jgH12} ٴؗFN+0:H73Nf-k6,'riدY-6kVVg:>ѣWwֲsC#Ƿ<,X_rT uNRPvOR`uf"򣓸);Oݿ'/԰op2ga`)\bC 3#3 #nt\2B~v ~H=qBhP M !{@3 Dw&[jFk@ӣCmQeʟo~ hf7 JZSxOnZjl@3y%Е]Wk3~ MhH~RtM[օշ'e0i_0J@KA#UW ¿kf#p@B3EcׅtK1# ז^=ltQ3J`+@)rpzJ"]>=&;m>[IM$Fp0fy-]8S,l_룲Cvۯ"3-@FQ+-(?'#ͬN. >|U|c-W=xa<m%[{T M _sz\|+LHsO!(7!1GicgB.1p1fWnMWt=Aˆ*#">4 )Mi?SDvg܈]nzŌ93t҃b"N+BjWVmC$AA߶eЄԻ?i3AOpX̲ܖF(+\ʄ+x}umiԷ7ͳ,SK^ bQ*}3蕖Gӛ};p[z4 [3lM;I6JcU9uߴ)ψ;x}%+Sϵ#{- 7+L/~u-T`]ꖐ:\;^B1f@E?-rrHd^j}]e.i\d7IvZ7Vi`ZQ0??-5a{s-=®V2"?ޚL9 J~P:s=477j3B5|? 䀒]%0q \G8R[А˦ {^cY5 MU6Auq I_#d& ssvOaA=# 8Rʔ~Ǩ8#/_1;pVacjDK+rGk`ma5o% bpĴxhE5x<.2:Hq{pD|lDH3;bfft5zg{dOd#4P7ȟZ@#ys#&?Z$"tBܶaۣ&+(=~6fOK Þ9 !Ջ~xWŘ9 uI>馓ūCEDn?{oi +-++;uk=k:s~}\AGғG-;Uy-_K(=jË$H}Q֞Rl"E޷~]La|kfi, ڂL#odSNfOtJFdIZ&8!o85z _Oyք5vasʹ'D.B:XAࣘ?c&Asi!E dpjzGݏ?5yV98]*HP1&VNh6f),>}Rz3# HXS~;,åcJ'-D] 6^rw?ǴT@ ]|j&pBL 9`EqjKuL/.! 3W;HiG+zUḠ 7PIKEQJwHtO=UCJoÜ%ߥ3#BD/K3U$a.L|vç+(΋#%+?Zdg |:c}Qd: Ty%L׶*ҹ`!zj2T-gi7P<pXMZjulaa2vs&^he%FTcJ(pSq3gyՊeCz~ىi fq /pFqϑ39G*Oza$[[IsV B[58.8Ő"n#G2,¥PVLb}%c/&ǥrsݻ?X%">P O,2} A38vBZM[}@=!Xa%qiZdv2(m*nK;3ձ%%Q5J pe$PSZ8V!!P%4yDηv]Ei$)Ͻ8= >/(i2/* qҸX}ZȞ~`)A+jTafw\'-o^TԛNC,bw*{W e] =ά&Ȯ!;1]4.@DIxKȒo}(z֏p&d].?~xQJQMj0G!Xd1FP. 4MW]' TXk)_C8輦Re)=lI|kkՒ j¤BwEZA\DQAQ,uY}a/:njz2ۀL]-}hk_2e9]K! cEs㻜EvwTӀkIJm/~*,1dbFG3y ~+}K6 e+ 5 T.tio+SXDK 봺BFBt1a }D<1iNߡI_kO:zj7a)Ǩ{G ਿ7>l,!R/cĈ?kCۣu<̼lRHMw|\\Z\ E4L<945T$t&3%yxrxHshgGDQY$DOG ym"sf $KRyV3Bin7P[~J҈oKQ(Y}X||*y)Gi~ -2OSi$Tq`Wu$g6Π1%1ruh&nEE$WĞ96VEv3jerOa˝<{ ϭ/;n9}̼[qxx! C}v Y8ZFfVڹ&+Tc2^48{g*!U\1 o'n0vSRGƋQvuBӬl'hqPHy˦C׺S#A@Hhnz˫|FWvEhue<7| }pm]#W9]JTD PGek? 7s3; $ _;$]PH JXa eB>Cr_g]I8239z׾L<8dyfXU"N"&aeB%>\:YӀԶmyD 2?dsLVchf/N| P,\3f>B lUΘ w 0jTߢvj<;X4?3qY 8_9ed\5Kg/EϾG?J!K9Bi~"t4E'pvmu%w.dΓȏoo:`EvڂIpxl_AHԚWwZM'ck]"qE_}fԆrFOTRqs>JAuVpGL\n"xn { o8on^ hZ%wKEE5,0b]egLz4D5l";wA,wk̒^Ȇv-H '=]]Xps{CH6L) `$Z)ܟd6 Y֤F(-cX:h@DS><'0(la`usK6m7l༩3E9(g>̓)b&dS۵x- 2kV ڴфrF?+E律> [ \TGkf]Y/wf2{ԓ|`tgb@#XCFͶˍD<4D~GfU ɡ: SX?f);'>(!~L2Kw0o9Y֨GˈjU1`]'92QixW! %SˮNk`k^vȰ C4Nen+α>ߙ6ɚÁ{E3} r= DSz%$SB#oLlE9b2`kZ3tp\d| `S`?L(}|'\ HgZͿB-X\*-~|mz)/5]u8NM[0J!,2M:FX*dm/girZD%N899.,P?()c+Ty`BwJVÞ=(̞-Ptb9e e=萭5fK+eu!?55l,zișv5Q׍!o5q'5/iK [rqIMLl9O2›2kt[0t`}A~y`vz¸NgKZv>#jLW!!3 'a*PpQJC,,NQ^  {GC0+mLzَKO%we;)_>&HR4DP\ju=y"ڏua'#ج>@E4V3q"P0JCbLQY $i.MQiSKPnc&WlbMo-38T"AɱQ-<~b09>= ovZ&rg5%$@͐ށUxuq -b`$]t](@78[:^GvlAm/kFk9Kp KIpӣ B \!1Eid3Ld T* GWpdLkZt4ozDr\՘l7Ir!Ôc2VJScOQdh g΂*&#,]lZ!w0kԺ$?|pRK6⃄01E$wL Va+]Tc Cd?k& A立-kr,Op %->CΧyH {ң،r #S}8[BMveHs(]DP%BbW+>.l@&y:zJ=pFуA.OGQ<e'#3^«ZC8ţHPxIYsCEɔoj,l`k`BgXxt[t&U3 tJ!oEe[=u(=I 8hPrܪ N(\1cx2q-Vr6(DuMlz%0O^͌lM<0y$r1&d(i}#C̈́[U gYlƝaH(ɯ"c0*DoP@$0PKh;Z5TK}'^>n27#٤m`TˇBEp7Â@ɔ{lLGԊJ0 8ROMpQjAڔQo"f*..ŝz?ꋼ d518L=cd?w!Z}>0dӧ-|S"ටw<'KlLtVrL_;iP̆g0̉a^jB2%1Xm2|7\i({9ً,h9`O)'Ȓ@^:O%4C*Z5m 'w/ a&'/"" ,ƒz^zz5*HjIVL<(XzV7,+vHZ+$Q<*rZu-8:'5uuܭ"#ifQmbCxVkn2n9P,Ht j*DĐ`nLl{HU袌D jF׬ă`Uhp"DW޺^⩠sxn— SoԵ_h%otQ̜\r,=۞1( ̋qaqC͑[4Qh,HgY5NՁ1,N,Q"V-%U  ORx"KbGz~H^q_:g^m]r<-lcm m=G3J] "w?b,̫W#s[]:]cCߛhѮҋ_a1 we:c #.c85+:L7KY}0?L)fMAUeS6G m3nm9*Z OA2?-H-c;K:2̧fXRg{Խ3]XM)qMIᱯx}+)|&;,czd經(7e8=v&rEQ.]7uhV`N d5ڡbă0kF%_r"Kuk9 .?ڮҬTd8Ews ܎PuJt ZvZ@iw҅2 Mi{l0@.4sĝIϚРX}t Dr]nF`n EU1ea >NK̼%'" YDz-Q6T]ik`ktru2}Lە% ŷ_ALLmdxQ[ʰDM/VO3ʎ(3)Ϥhg\tܠ$.]zL4q `cX 2ՓEFG0 oiFS݆%,™Z1iaYԺr@ ?Yyjp)t`<4&R1D^::4cv$&GwMjdc˧3.mSWf:ڳKӺdѲIrN3_9YqXzdB5WL= .ϼ2 77A){@?@TWddQQ1TVS5T4Q7啊\vT]qֻ3(#+eomjh}!+cԖ}ͼuY8 ;ɯA@#^5 9+hd)+&8j_PCLu)܃iWypB`vք.I/F !$y$n@t3>(DA80,M+5m"E6zA 8{d~omjt88e{2*e$"Bea$lQ12!xcY60"p\8\ _q׀Gy$J1?|nӗR{q<_`U'TňMk^|3Y pS fK.@xqjOg:Y>ofbvvlV` Hƨ4!&GsicBZ&4E{£{E?zgUнޢ9 G)J*#o6kH-!.5T/9N N*wAT2[wZP<9ჲ~In^|5t޻  z ESh/P gb$1J b@Lb"VF򼭤~nɚC 0k"`vu#,6\Cd=q]hq0АкE3 @j=_ƙP翉5Hy6ӫ2du 6)?e-JVGSr-NZ" RJ;;f^`V(_bNBz1` Q4n$qPhڮ1[`/GhaFh;7#d2;.CI9SM{gS{IX~YS˥4Ƚ6wyļq@qH# =cRt ɢoCTU_!vH= XqT6&ŷL KC̙|"#Tx`k ac:}#FI7%ZL[vv>Qc\ Mjxm[1qUԝBO<#LvQ8z%.=x_rpz.,%FMXpml}?k |}:}PW/{|)8*O^_+1QSa;?lhgYozoN>20"ڣ*ziBR{ҳGu=Mis<~U0r؀9L5u:sܕ_iKhDHb``$1Ara6dqZf[ݰhnXGxN4T'/7Ꚑ -l}:6^:j=ꨈJW3#Z7J-P]hTo [HXVS)סٵI;u{Ҙquu:QP G[?yʍtLX4KB7̻\vJ[E66@` (Kr5hͻP_UJfePOx.N1zP㈫cJ|C9nޣl6#qOΉgn)Iq@+|z3!Qw5x27HYIpg G9b[$\=?tniH5n8rlZa"Dv?33W܈䪃Ĩp Gŭ )(P;?>[+{][D; kߠ]/LˏI4, &C5C`17[/Ystn"( C|r _Hg$F EUևܸ v":b9G?BԤIK\CWOc$􈵤h,"VFG_[n6}A,)>cjYJ^ +ghmHrÊ>dV8O/KwN} !_m N<r\x͇qypڍC2I…Qb܈xҨFu%6eL؁:B#;#'d+ٞg}Ns@ qJ6E_737(.ѵo"_q&akM55$\]|٥9Cb/He*Ib9'T/i& )ɔL0˪^qM;5>V4;25Bd#Z[)7rupG4Ñ1L"NǙ&qQ$*e==NR v%=Ja:dJN耐 QO`w^޸2z EFTw??$`L2_IO#9.2>eK̤-tgȝg9]&apBY!6f9M|N F#jrlϊ;C5Ө.@sqfKݙm}d; Di]uag9ȗ⨫/K=N٨ZMgwщCFjw+yPډh+xcyiwe;ly]{ d'=_ V28ӟ: Yof+|^.|Nw;#[NG?LE5h?I8hc?Խs\3. r zZA"Hk A=XL4$U^LO DfJaWKywȳ6Z~Ь[5'm{k ^h 7eYd_7Z Q\ a̍.S0g䎯"_ظ3Z="tX\!6K;l,g}c Գ80 P5jscd=  +N)7xps(dU P;6hh?=lц Ǩ%:q8ڽVW*EKbRZ2ƣ|Ân16 -ѯ⸲et )R DDY\h…oyc~JC|_Egnk>aqr*-e֛|!nރ@YQ!BSwmQd 6q1" .ʶס+tnޖix`ECq~dሆt#8Σ-3EÅ)+07`5'@c@iW4oBy 7C,oeW3$x 1QzM=(yU=[nB/ęQ 8 W^(5[{/yщ!JOX@w?r.)$̇?`T!!B'ˉpLKKSN%Jp+_5\-U܆(˶,O)`GU0s Eqxjc 7֓ $\^][(zTR0۬uthp5@eni`l0ǩ r[*|B% csz;2`#OW- { ]`>6 `]>Pk ;ԹNBDm=ţŐ6S@o2k8f%; P[awuf܇frVm3%I_ݪ&_:9NUj=A8$wn-Bw _5MO!.Y}{aH2N=;y!uǔ@ΊΊ@! @&o=Ӹ}tj砵w ?hʠ&-Ng%RT7w ιIWEC<3?+Ș֟{t iV)](63󘳚Y> J~r_eXb$o6ubyJ%Kzg0x{Uأg*=ZQPBgюX޲p"Gu7~+=7zŴ+^>[I&GUR4ɤ6)elŨʧ=(/%vY0Ԩ0 #whfR7_/rhӄ}Q" 2մ/Iy }'s'dBR:~ؓ52q q9B_ImgYT}VӕM)fQTO $BӪJZ|ˉh /c}QK8I:*>0'8EBѝyر& Mf/&([O%cٰtd[佉DMK{A&z 8 DxHiHF|(* ?";$g5'`|Cی/'_]9,aq7r!hd+5 ;+ϱⷖq~m ƇDG|whQ!L,l<#9 'iaJ{~`A.;k(wKpPIڤW8gu!#oTA2`眖>nMolIoBi> F_\yRD8jy6[ ^֦n2ӌ{I_~KY8z˧ ḅ3׬3R9!y @Pԝ/H Y:,"|+%*B m8gPI!{J6(wlwElhÂqS#A3WҾvOg:6"fEn[Eb0Gt &{72ԄǵinEhpyw$.=5э@6e ,!C?cG.{WQ7!<0jT}^Z=)BhX` 4lY6T#˜Q dih !J0%sZMxԃ8<]q_+?zFV벓w{U:_1a8#ck-^N]kj{ˉ8Zaxe-pQY}w(hܖ۫InP0|]d&|9= hGw&"&)74DZ)*lN3".׮OsЄ*HM%T[w>u[%uWxmX/D#x1L Fm.MMJZnZ`KS"{lZgz67 i-Q-JhYb?:Jd dBqR9 7C"IK'4"%R ]_r &9@6Cc; 귥4agW[_M . ϒpN[|!߀)D!5*Rg,FAmt)R5r e)џIKRHTf8* ztuHar390>-lU6M8p:[㰣,'.7 z<&U@~(,s6-Hpܶ j^rG+K/o556spP ?΋*kKPUKӔIߕEE)9 6$+IJ_NY|7E$oNawWm( &ٷHdoJdw# PTk ns!.q$*>I NScp:`Y˂TͲ YڜT=U@xFhU髯8Ez79 =~Sc>Ir]8 @b'm;Ԓ|g4NE. Fȃ*PG)b ~{H'}FJt B *O  Sgm?YQfG*.HLӆ sHDZEay]É}gɩ'j[}<D]^'P<[6!1촕񞥟Wۍ*kcj{-+(:ppU!O[;6,)uWCwSӮ#V+ۑܴHPm-ܺwD,Cܳ;$NBQ )zeæ"~(kg"$4?'Qc~)R0 R6A*"c s vwyCG函ۼRtg"%0`n,tZ<:ζ/'u#!@}Х%NhQKC6/@ iy]')HnDP@>Z)M.I 4~%C#I0iz}O]2'U&}.UWgcN%l>õ㤣~V"I֬Xo hst~ak?m$1b`]ٟxPʪ0r ߑJ/pÖyp+2u+>h[#*c:cJ/z0-DSπ @0b;|! JFpg-V碈LDYA@zN 73lRFO3'l/v'@3.6dڢpdg2/roS ii~fKϦ((oBA>uQԱo9%pI,qgi*A,=f696R J05W_dxڥJ6JӰ33- RG_[XqBJ6ބq}GR%|,Uy$~ zvx$F-ͼ |̐mZ6e?f䩧l')횋6lkLLZ}F3Dk`DYRt<8@wɪ=G 7RQV1$3 Z2ANgh^ ,*&(s5LB\,M%kĩnGJVv Ћ+B qSa{7mhtIˬ2PG(+6H-yC:^VW].S|:ӌք*|!~ɩ8.i9B1e9`Jt\zV6"op_AzKkd+^$>۵\2m]bU!JND|[ͯZRgZt?TEGxdȤ<=AȭYUUś24j*~wE=M+³@˽OjxJ}7g=QNj"^-=_o0[<_*/])I1(Vi(]3J2댋=ڲB[N9WtĢrAɱyy *>B]yGp f98gTNrEpyU6D. 9.q #U$X~)t`iɝx>YJbP y|wb#8K$^#A#;yZC, эutht~zkx]`f =*B[l䞃rSs*)p;"4DCQCVmZT#U ':NR3<4@ G]VomQQG`'dJLRS3ѡ_w_=&A6>qp-iPE9ExKu@ˡz)-xO)H@ oj/k_pFm աo;ф7^^ <}HJϢ[]Uc3]:()G j$HL*938l OzrS|?w KߨȀ =-e nFyp0К/ߔA L XǕD?^SfS{װ׊KwCߛiG5w! O.~VUktLDB;>{.ӖVЙRKz&/u#!81yY\z ':dθ&0o\H5RnnY ;uj6=鳎Sj)73O*?hl*e2Sgo-eA=:9 NٌEY0,Ń"- o|՚6 7wȋrO#? tB dT"sA+[&S,~#oE낚ZlĒ'F3zK0 W͐LC_cv!y` `te4%;5?rER&9ɼS4c:A:X^<(4OBW &eJW[W~6@K/虏]5/2LO03JPݐOڐ%1>kmAӞҘ=(7)dqڄ^h:L)`,W| i?2X1Y=A^ ^,O(9Ǻ`Sa7zX 4܂:*;e-ar- m֢p |9\%;v#nL|$ SPNjiUz h$gaJ!7m%bWuIzl524|C]ֶZ%e\/{ʂ3K4V6 .$}Uu]'5ZfMwwCge@@zVpŸ@'d3O+[C :-WSI{ozuukЏ#=5h|"CBD?`kѦHoy~]JٚpqMgJoGf&WLHB^!GPiWMn ~O:e[/<.AR9#0.O\e, mu%* 3O'edgpK?fx^³=Zr?8A"|ޠ=NI:Y5v*@G|)r27uɄ ?+Ղ z]eqeAaZ7ɏ^uB{s(!@c>bjz!a V)u:θR^M*G]E~pHe_r6QfaTqlj$ix1O1yX8IX^"9O_7'!f'x,y᫖BsupSIR;V{;b F}Lr/tNAf;`3V  [%_iU,,m2%d=戔0bAan!QΚ5xO R:*Ik#T Yd(,@ Ywu/,Rq4YE:Ka)vJJͫ /bM-a}»xwB`T?1u]=EW-idE<תrk7E=^Z .T{ .e"nE?m^/}|c4%h7FHb5ЭPkpz ?IK i=#o/Zn, ~̩6tR?8Vy%碃'3.%PmG;^gśb1e(JGShݼ3HK\:>K\+vr}l` Xlϫ 3«ʼnBWW8Ԙ񲡑k $MBS8 ޫu7\r;>&ɡP0`a{ W Um,zm!%.Pj _9r&8쨴9(hf515ڴ"nMӑ+Y'PU["Nu;M!,%旛-v]Ŭ/oI.g jBA~[SJaLu+w+:W ΓOz9gs=H(f-;}|)eѦc-GfZ]%c&+*؞ 8ZUTNfsMCxěOUcʜS}Mfp ^rP g Ymȩ f0VmO+䎚\*uSӋ޵u |Hu@.Nwa63edv'( -/ ҤNf=ˑ,)Fp2]M|50IGS)PdF8k#~kG7!~"tr!- ª (fnYVU~xAq IuѡM0&h(W7' 0/!L{^7/#k^nep]JXT*qV"c"IP,ecR ɣce;H:Z) YFԡԕ*#hC:i85> /}OmL =(ˆ(Vh0]lږI.!64w%8Lioثzb;;6"=M󣽓@ԶܧKY\}_XHS&V^ mu_i &kwm(ŃB bs b罖0xKt-}pQ>-n&sv gx9%Uh )K5ԓS:ŠN >75q4ՙCo,US+5Nt/$7]iL)"C\yz0Xx *6IGpTWbM"5j J>6_W":xrįn5:4JPҩp$tf4y{kvD;S $*XP.q-zwLAMU?%WH 8ƘY}T Ccyikndl@?>306inq~p-tȶo9A]T<4"ٚo= 1yOK lQw8|6ڟ4dxudNjd q&¶#?[`~|Hjj!^A' @ӄo871= d5[Mݚh!;_)Ç :$כX6GE5cT?z] Wn=Y h2l!Nm퉯U^Ix*' ؍+s=g7.|ݡc'{25ChIi4r 6W1߸2<vYEQh>D!\R`3ƷL3OۤS,zY%>jǎg>}f+F;y$o@ E~go )B^}6Z s2mo^DϐwsNcW#A5[bh@߲.dK Yns,7X@ߴP-6t IZax\aa44`lB.D Yw}8nˆCn_8H凴.hzImFz, Bն|ӔeBE2.}zuOIJTBc_L3g^CB$F:_prf+{t3jqxEk s*InZO}T&e5M8m 0텾EUTRoo#h naAߺ(׈`qPgMZdmUEF ]@ح #* 5B [/H.|);15\" Gqzr-*$k8*9J\($ +k ΎWx-g~B/O@]W¦^~e]y!zR1CiMFU4+'`l8űw+KWֆe$+C|k×7~&ߪqiPRR’YέsuR_f1g<r3X'XQTL/ &,;[aA":Gp &t[T=+\߅%7Hqw( pY[(49놿EW+Y]G7DNU?p'R!%2 %kTG $D$#ZFh̀C+ UĵW;'#KSVE3(khD(O>U}R״VT3Qd!>8M8x9HBK28C$Y-v鋋[k媲`}7ĎaHE>#OY1syI"m5/k(wO2V[@?,RRꔚj[ 0S9DJhF:[gqR>^M$]W]REn09)(,"kŴ]=0I/<p:MjWyEul ܚWvYDrtWS1zNPbt cHF"J^1H%;YPwWLrf Gii\ucGSش:nL-= ۿ&!UrLJیspmu(s|G4Mr0$uNxS{G@T0?erXg~/8TKVPPQ^?ёm pW(KbE3{!e/#uH]# K*.@DAܶ8NdM )4IȄ:*iy3ؠi@V=N#9 qr5NT.+A`\Cg驝:V^R-jo 3Ր"1-aQERyH"7d>MJ "[p8x .cEN nWcLkj?R[yg3O nESPl1Dtш^k@ĭKFt^/Vw,2ŎΑuEQΆhdpQ\\a6؎F[ݡl0s m[?I Ed= deQhz rn۲M@}&/ZչSo1oi*^Z&oY{XUu:O~rӭTQ<;g)Q&G!fwfSjau]a#UP-"; wS֕m䕎ׁ I&NLJhz4^5pjwY'y 2t4)?8a`,Ck/ԗgb)'ÙtvLr(a!ib:L""] U"VOxgƬtU|mƞ aᤞ^* [p>ƥ)o bTfdN2]n oFte4aԴ$rjp{er6J (Vlb]h8Z֤Ʈ螷nשb.ɼQ8ɷjT&h/ܢc)=%\}`섡{Y_Ýj5UpWHWHU2?DH9? ך'9:*/wVj6@kV僚PY9g1yUr|}H-c[lell\/U͖c[۳ii7򱩿IX܁8Y>;%Wd~f&F04*M3x/V;̮)MbÞ*Rn0) _t ;6XB~ ["K"s동VCzsjdGPVosx0 ^ Y4vo0JѓݭѺSUazl!'>|p:Weq-Vů_fI3eU*;܋!tY.fh*$D=7o9^PoExir drܞ(IZSc${Bh #WX t_GBφO9^e<)AZ[Q_ٝ. 3Qŭ?)o5 S0rNd¹VGhJLJᜲI R!ȫ̈0Y/g?+<]i֤`;O a3 ?>,"xeܗi>1H.sZM{A,T^X|)I@m}eLD nUf143tzXb<.(_. b8'%ZMzo> xpjB >^3Dzt0ovk :_٥N%?t2HX2a*%Іxr6c+̩ffؗ/t |UQJw,e`!pT"ƤxZe(t8i؏o\4>7a(q(_m$:({tlڎv[#J5z~y68s ewGH%n ٪d ֿ3Bط|:nnB0e.f#BoZYkK/vf,*xL_]AuAjܴR>(l4L?"L;[I=Ԝkf?b@ֿ  5-5k\W@7 0LLԬ?C?n$jmgn9z E5 [Ί#xMܛW~zgDp90@AuX0|\"* ,b|&}{kt5uS'9p>oL*h?F7>hqX̅&/xrΑ9w"z^u8|3GC*E2_ %]#C?U/^֟Ga{>t[Y[jZԎEބ3 Q,|mwM@_N`^; &FM ˣ eޅJKBP!*K֒N!5G")-v#-A3l4P^x(`lw'ay05=ۃ0X^r=\ζg%K(q(ug ].a'eTg&^ rN=TڅCA@U9F&D,[.u[4 5ߜȍS %DhhiLT%˔4[<)~vӥfj_b یȄ`;A" !*?G#0`xϘDU%䙞1 :6,N042#['m«ݑHEMȷ~[\ nQ{s@ G`/hpkM-xE0XK &m v[mᭈYlVKq yF,㓏<5?|P­˼Xr;x"?:t83cH թz7cl0n"y= ·nܱ\Z.o8j&3.b}-8Sؼ#컪0 fGgXĒf3J47~ ʱ&#c8sjUdiaB-Rjn@.} 03$Y` ^ `<)Q<֝?E_B3+VCsken+ 1Io6u/dWeb"ZAp-qP/ s=ʲ)FDYʁFO[[d$K5x튽b÷,X Ѝ3;1"9+#Dh7ħ!XQOn/ h7FN{Wk0՘,r1:3`D5ボ_\;!XK챿xN#T3٦_2;iß/dS+RwzfxDXhytG4__ u'??,BrcqPt_(|\ɢ0Kǯ](,4b:H7aSe{DLgY(&]?no@Ĺk8oˢ5BZ#^^e3B\4EvLɂovĿl&+-qR]g\k2.L~fZׯJB?Zqto!!}ܓ!%Pfyg}.5l}DOnlx]-D&0nn*Mz|dT|-uV = .TKCWݶ[R{Z n[儏r𑋌 o=o)h]iz|̒Rg;eQkRaTnݒ?9^vA,U֛dӼ{O4''|pܯ$uNZMGU \WSJo|;<^ƥR/95>0ksb.P@Jp5oF} !ITb "S3YZe oН'ȥxDt[`֕Et鶖XI?E2k Ɲ+,PsejQi~v2U0T霫h&*HvJ#Z6vO_NˇN.7Lm%bBUJH0{Lub׶OGZh̢.;{4M;/߃jP"pܰN&>hNUwB(lV^>:{s|-y^OV&},n;/4}=: 늸돜!wZi 0B߁m3BdJqoJܢ [ݐgjk8:rsgG *@"'%Ĝ Qn&(?G}+ɒ]2v[=(ZϊVU`OdkP$WswDIgڰSx5c'A{2f([)ϥ-by>g))^%TQ/I.waE6NPkk;4J~>Ҟ ! ::ٙb$mo5K.i,]\Uʎ 5;#qGjerJ{lm5DX?QOO34'l0Wlrfznhxf]ݙ-@dpb)$e__ydqss n-<,Z9媆LFDFU2~l d°)Υe4[M+v߅#|p~%_@΋LK0$$MB}3BI#J6!#HDf-%'1ZAŔg {D@/-n>rvAlo 5a0j̆y7erg!E5k. @C+?)c80oh@"iS1D{"3\r"])gr4'Ȋ`je23eYXyzyn$]:0H7`ynY@LJwg;"~rۇ y$t|&/94-K{6ΏTSdhgJ/z#cabO?`-1m /#n0nnK~H>ytXxt^hmi^M%-MՌjK$xB;8>yʛ*lCjWS_xn2,/ ̞{t>=}YxUz_~>OoAܱ-[ BZ W]+tiЩPm])5Ag$\ Q "ɱˬī\IeתhN Q$϶&ogX}bBxW;F/^-k%8 yэxC\[S>>DeD*y.%rt3xI>HT1d]]t * *< O'"A&_=OuKA+fÞe)'0E6[߹Ubjܺkk)Yj>^;=%1R<0ND$qA{҄8Zp+}۽]g^+C^L]::bCyMYo Zsu ~QAjH{F᫶A?Z32|nUw]%d*GFӝN|}Aq/9y^8ڒYmt-Ԅ6 }6r8T_?]W^[F%v^X+cHZSg*iy ~z[#yOKj[.f}j7g$]>\o-ȋ$ 3rfa7 ) .mo+Ŵ.&Qp(N 21;3C)%0kL/F`aʓWT01/<󦵒vHZhs%j2 Yc;Pۢ`UQr1hՀDJ~}]J_|>VUU}O3!&r@d\&qֺ)f4~-@撉u2Q{SVo42q-m鮉5$Na.ڰsDV \ V*˙`?]W6 xA 6$Z{ hn7;f5 Qvͺ$\m3MĿb9`vO87@p;hV-F_t`d0:BltWڅc2:ESd~BD+ M%Nsx} B™7X ǢΪttut]ZTċ5 EQ~a /:A>=UZm+\h^f{z,FPSv߯`+2yr@.r^RJF4![>K7(X6<1V%QHns$RE\2>d9Sΰ]O!E#ޱ6kȩ~Ҹnlm3.̃?=+*: q!!s!)ႂ瘲kC}Q-tЬOвAo-t&9v8q(U #҅ ץ qފ@h G3> Cs.|\c\H#*7ɫfTѨ%f2FduBj턶oIrqx0 :F lwmO)b718̅ ՐpY .7L2Ȉ&SqΗN94&fk`Ͳ\,pbw6]M?T`UԖ-Pqᡒv?lÇO^w=vpB^+D(dArm^ɺpd* RpcƆ3P~ű7^oċNDCɢg!*`w)3cOэrd!k5kxYw*ع'2a^øj\4ϻ5aR.={;=~5`;4u=RNukgMR8E-u14|7;=^ڧIOC!E_Yͱ] Pt @jR z`۫EA'jl<[G#~T͗|^p>6j>hvWSME]a>>+F~4#m:bXQOFV4tYvK;ix8o\*㘯4^8Ō:-$3nŌEr n0QZoH ά&-o`/ Wb~S8*XhM"n)>N.0VmeZqD.]9Hfg&Q=%񇒜FSBNܴNukB-KŠFd Mj1̃_:_Xƚ|5 tsPlo߾F+K<}F:fg+wsdx"7}=T0dd>V`KaW'p"KӢ+k&; L.YcᛛQi"5.xV@#%_p2Y OxGyd BD7BTԓbt5fĢ@yhꔝnPdYwď=CӅ*03N `P1p6,&ܺMQwˣ@xXW?YhdMg~/pn 0T(51m=șYQT]'648\ی* s8yDRe]k{ܯ9d e~ҫ._FF.ݳ 9eU[hm 00⸩8XrQ&;L 4rV]#xM\q: q ߮nsm'm@5v cbjEB ^0.ʠRl"81[}LsԔAʻI-ty4,;w%|AX)w.T .gBa>n.n0`C6@Nl̙_O-/ 4ugH\+׾aV .peHS'ҜJFƖJc֐R'p| P/(-{/ |wjAuYc"^@# s1|#TWEb Xo !r1.PAb1 ?vų1|%m  A0YV"*6\{R'f_:p}! 'I!sc* EFp 䆛cǖr\.OJkd.?gSs^P(̕j4 ,t+,s.wd"pۑ~KMu,0`ŒC& vkLFX58ܕrqu赓y+83kKCؓf X PtU&삚Ff)xƗ5j G+e62/Iȼos8<$hHɀ̖{'=U Ma:fA茘)`䦿ɍ#/F6O_c&3[dE>W_C@eHwB+-~q^X`f^X /$*S9Sڅ.[I[).3V~V +%(oI3dB۪>IqK,kR=ݔ6.(BNkO@wR}7Gƥk=^"e,Pٳ.IN'(^5v4&sfP}*SR} R^6 ^*`Jjp]MyVHZwZrANQ \ T;ZO[njȎC8=Q8_٬Iѩ6_DɭXXqچ i2{{)wܐMGK& l儹-b1j]onb)Tzg5{w +pGgάj6rdL vCu$,ǧxO ,;r'Wq=GmsJ)esPSS8U"[zS) {h6%1 ԺpoY;`O:5\ҫxP|tl'ϰ 1cIb וFp_S0Ɲ6*:|^o{a8fa 1#ff*;ǯ'KJEiy JI2!g9V''-p~ 9 }°(sT!U_WM`ALxo;G*4j0GlP_gهuG5~W*f^΃7DV#\Y}6KtShY*ޫfeIǤ2zRBW1bl~C;<,ZpvfK_Ӷ<N,rby^wSXi哻C:Gx03+ `@1g V}KM YȽH?0sQ,a$Ǧ! Gfk(Q+N2ϩhqtf8~ؙQnpx:6jLR^q=. _.78C;ќg sn _:9rdܶ OJCvl,i,ˤ3tHNtJ/ ^:m~ y [IHςqQޠqn ~)b^,bRֺpAkC69+KrCU('6 kS76ɳJ`_ᡳSEw Oi,;} yRɐ]32*!yo#5>29*5nl_֎UpbѹhF9 I7rYW:id( MRCb]t[,V'mfC,qΗ?xpIlv^\SRqfC9,AaSgb (V%ChҽhN]/Øxr†e>S>k:Pgy"I95PF[ыQh,z46/.Nldh9}"wZ~iAV ҟ'~TwqG;D&L<\<y,]K]D!^I&%`x+Rv`ꁅ~5dskrer2j{wނT AF111+h fa:Of&VfrHjZu@ޫs8Nn0D T%ZS> _싗Pkz\]+Z!Y/ʭ= IAm;wͻ_ތD9$Gd$߱ "Oc jTF*=,+˷.b>$_rV8j?΀`GOb=hFYS덊9->r!VE /\yOoLK6my^-W dq;:2cP|qK /(˥W@ ^ zN*yHm;gFڂ6U-4B e_q\\@SonZ;Vz\fmK2XqcĩDeW$ly +)4va*0Y8:oLOIsd0 3rZs|7kR D0c1Td :hn֕R*kxz}Kyd{=K>EGG/+уS#6ZĽARk[+ʍ^j8#fkɪ _dUe|܃) $ p%*6ͩ*@'MC.k貳$rwg*w~)3vIC ~]{@o:ie5%{Im :EkBv5}: hG1cwỵ5WM:Bs9 sގ?;^oF48L)^&Q) HTISؑeg-_`'^PB 9ܵCc1KpY7Hz_o^$=?.kGxYǼoDHg'Nl5#qvt=ȽqWdgj{voz@@LSZrrun>'cNkoR5sx@T- `8DQ cC./)8UWFMS@3,2&Qpy74h}DSB* cec?.qꩨ=jqKD)yv򄞄̭>~?aO`_?B )Clg c8K.-C\v[0@NK&K7zx+Pj ™L<_vu)E)Ot¼8:JCz|&@Ze,[9{YW.~]-Ej K3^it)ϯ2v\):+-BXlLJexDb#J$񰈧MO0u"-&?)yZZݤyC`thtJ3Itx,,0 )x-61mo )PuB::_q![CSG@%mTܾǣְ؜uDDQ LS}蝦KWF}{7/o4(xiƾ)CobBn#;ŲP28-,s䦙ѰZ @Yri#oSh@? q*{\JdvWoZM+PMń[MU(_;ȣ?oq:"X9oF̔(σ;p%T/-Ŋ.8w2yDၱ@=g6jO+J r 6~>kz";J^.UmP?Z2Ejx96ny \n/Ŋ+Sa^!jP"(KLmt@,*J 6"̡||;ZyGA x!-Є]9ˠJ,~1B3$UI}vm4\ fm1OKnȄ[ѥƅ/#~EƩVo%[ 1$&>A{yQt#Q=?DunQfjBƗZ&kGvןQ]XhԤz R&!DU ]\K}{ӝfEo[Oʉ\Z\x`uɽX9Y`nNs xRvs-ݻ+H i¤WC{ML!$xF܌ޚːc*|9j3_1*Ev PK3 BmmՖӞPS(~P%Z@efCV1Z7Δ@jq%zFKTXa/LB1-y'4]XөC)cYE,.?\sw_ݲ+Tqq⺃Q9320ɸH; 1w^Loh| ^`GvOeph t;fZ$ܡS&ӓsш2m@zZBW;yS;(FI[AO~=[㰨baTdZk)-9}WZ\XD^,ye.32ϴ̆%! feL~ڣ]\7Lzފ1'8\ކ8zG0 F(*@4{x)\pj'ByןhXxMp,aI"<OAr\bfy(p({V^Ae ʥ vxw^`B33cO܌#ȆyB 7V$vx_qH@LR꾺"otI殛Uz9[`"pN݂:f+sɻES-6Á;s2+6qT$nt9g^DIIw|3ߺ##k@XM 17t«(wWHpXBǑP"mG]G^ \{3Bm~% ɿ8tDK$n k1\Y M8ASkyݨ+ue˰)N4''U..z`OBLK'n4cI;MrWBǛPKOǛo=]8̲~Y&8>]݊HlD.E^|=5hHf&ᐥ[nR(50(fg`Gks0AW06ɘ3L7eM:w yJ!$` bHF; lE&nvI~~˪"0 Ȁ;6v?q|[! *uFrh4zAY Uv |v,8$E*Nx_E(9)c ˹ŽR:4dC!5QvMr6n*@kɝKqOL$|zU *son9ԊwJp6):yqVN؝k~D^RNsT~_hY'YMq(Z:ց"ۑCJI'$r]$v@I@GKZPS@n7 'ٌ$t&wyYe)7X_֫\bzש§ 1Z-nw_nNf>)Ic܌I#@UyT6_ė&iF#:g6?yt[O+(A u!BCVєTZcJu#,j 0- Y$>B$Yi6~94`O0#m7[BL=B 4'RW.zߜY>yov8Oۘ=9k7=4*"XKޮ#ԎHන/߇uz[–(Y"t7a_k]_XmHbiH|b}݀JR\c W:ε^aj.4.R߮Cިu>Hgh쑕\]>hYi.!Yd  éНӤSR}7q/#Ȧt4/:OAgҍ=Nn?VF}mN"+{r1LͪqU` Z+KoSIjв o3Uq&5KnVgwhSTsl{&KpSu]5.|º?lS_t1+5b ]J]@.2.1W2D^Ig{#QPrf5XL9};rZUF.MKx@VWzM|h{6p ABh:2l$ֵb*;}%=rJCA]ߟ[ nge NSEPeɪ> (+pZ2AѹrNjc鍷+щŰW_HT:ӍDhkE1 Cl5ք_Kuƽt-Ϡߚ JEL97?D{c,T+:JT&)9M9raN10$도 8g"xى(Oj|$ FK=]q8l8jVr!n n 9hA{LyXvvܣ;jm=Dq5xeclA>CJ Ln&x>8}Upqq(Q9n3= tD;-U/fKC3gZ"UjFԯNKԦƯu} R.Wܛ;ɺ= GUyd[j>:=oB˪~%PdۛI VBZݥZ*YtkUeġe2V1HyK<(*TTi4iR#FWuc=V- kR&ve?*^C襬BEqUJ"{)l{)6)VY|9F:a^rKp"0IPt?f#|A-H-&.WMMk<rF}kg TR@'X E &'~VTM7|UZQ;9!pii&!XsY3JMJH+ G8z#FGr󔓼hZj|3-{ۖFF5rM!*9Ye)9\kO=50l~6I5i5]0]PJVF.!0riJ/ dɤ3dnTaMBݱi R$%dТY 4ѧ]Pox荙KZosMNÓ}3о*?*-a*yxR:ZPwRPIF qpOl;40<*$ƶk5_ r+5ʿeZB(qBRr7:6y`Yt:4q%+۹רIN;F9 ܘ{Ǖk4yힷSOu5Yw˕eD5Ȁ,'i޶}aCIEwtzv }6l2O#wUT\: CCp"9$QU0&N4i8Y=S.u[3?MbaA S'#"2XTI!s'(3-?J@؄J5r S >tg auGyr7`\bMgy͡Hhu?^IAs5%f=tbn cVQ iz} T^IƽmiԡV6Hs`bp&8vTY٤G{w'ڔ%<'.tPvG~||no;sCsfv{q֘ Tf. ȓ"T6(ܺB`@YԚ}4V!:hNXe_3rvZGEA~IyDTGpNai1ZˮߠΣ\* pasÒOP#XnVN${Mw[M5я[u* & :¼d+)r42 ) 'Ì.<NL7 ^TEFGvwfUxB+?͏^AddLJ2^f?>."P7hx˧dtθDsh^ƢQw 'I{'ʸ?d, n]84?[b/xZF9j"5 Hk&>tB}Uc7ہ~mӵ6UآI0{_$"î}6Q:MC]$m}>`L cs(g܀ykhXVqǏC)|R6#9E;>Cl2xu $̅:9%7 !u*y'·8W)ִD=pv>BtA+kUb€ 4?#a^ROAA`H':2h6Vs}MMR},GS Jr^͞F^(|y]DF!6/bJXl3]=[MM'ˆT^{F" w={~ :qz]CE+Ԅg{o<ƃ.qLT}̢ Hc[&t?r:f`hQ_^;Kd`Mؾ&KO?,6T#_ Ab4"a\9ep>R- JvC{{Vp?z(Q} W#`bl._@P Q $2j@FDtvB~RFDoT;8K־D}?뒽!C4ftDsc|v2 \ũ Ԣ|YB ђ!BvKj|].n/N?;2р^b\+>ȶwx;OyKWyObVeXH=,YiT+ }-**&e,Oo_wfse)kSn щ3t`yҷ%NrzE<6'*߽>j>xκn洛rYVފJ Z4菪ƼAvǻU5~!%OQE<;g=/>c5a/L>h#s^.G#i`taJ`,fO`_Yfދ 2ൾޛtGSգV +Q9쨱cb 8]G\CXw bE!* CІS60_kEkŋcuōg5YZ$W̔@*X(Z֛xϨw1>:FY86r۾)Ú*RG#Y41pY qh;\B/{;lw)mTu^TqAVvW iL;ܲgNSj{9 :=cCE0!1G!@r][g-**ܦgyvV*fɯyu xZ$"~c=s - )%nv_SU ? K voFqvVq ;L!9&}\E[T;ފ"Ϋ >H9ː g#BԵIoāyG/IIօ2b :oSamơ~aXӨKzdr"C2X @P~/w:[k)*- uki45d\'IO܌X0x:9}Mq=LVĿE{^ ʱ+y![>Gws8S Ω?eY*͈˿GFiʹW04ke@jDo"Ohu(]yŁow_ pC}!EN;4sTJh|&<@YpDGՍ>|:s#SS͖tUuc^R&b J -۲{k`?uLq*OoiI?PѸ~1$&"jn&AOä* (>A*3+DxMZDյ56aˆjn4\K,^>0 {W(ʑ`%,(G=a9+xьnAzY}p <,e4PX;lbQdL$7Ҧ?3h&B_l6DY22g#U8gC@r0DZ-똙BųX] GSLw#6] A`iѝ/%:2Å^+3x>?sßBŗ_bV_jĵ*@F1a?h%egCbY#RBkY9VϿfS-)wq'1Ǚr0wVikuPϝ yrRvG*4\ s;iXT-S!@5Dq\'I 0<0~2Ҕ 3K#I'Ý9HA o<Oќk F6h{]*| (5 ] R}~{8o &—t7~}; H3YZz?!\RA kJt( ǫM3:'(&5!DNfJ.-Od(|l6*fH~~i U2璳 ^ lv9~R *njyaGXC7vb{c ȱV܌"ocA%sS:E h!?qK/y=.) 48x]LZD_4L͞zZAKL8Sُͧx8&d%stَt adQ\ ^Qz@>Aoh"$dNĸ^tZD`2]g֎¯abtrŚ h"§_G BGjZ#>292N(Dy/_\'XnJUeÅd#D(19團iC@=&N7l[;A!p㪈x*O:R 5Ny4_>:wt97ZM{t:J97-s4ɋ_BNeձÂPIL*@D@'[Uˮq}6"3JDXN61b)*ڝm&S. ϡ6"nRzT0![Z Kֿ4i*{I]t#'ٳ.P 򐆡wׁ$!&"`X߱ 2gQ"MO!A&UED >rΎ[40\8'3*;ɤ)t4;kDI :~ь]a WMrCNK';7cᰗ\Uwϯ(\V&Xyx![!qx$O(C{* .,N(e_ky1@bAVEW 3:T:s0:d2eHfQ%V}jCl2@}0hzSipB:ce ^׶nIRfiԧ&탣ŋ;V(~'Z-SVH,( u֟JOG|YM 4Ucpt]D8ZNƞ?+N^Xf$T „4}Hopw,.)uab9h6}R xIf{[_ jݓ$n=Gq(sI?uD8nc\0@K[8Wao>`yUrp<)k~Y?mTZ`Yk鵃zHxm*1IXΩ,-ߎm; Ӄf:+R}?l¡{A7S[ p誅9aܧds9b@6{O?WD }b}ƿ߿K#O_t1 ;mm ̚(r.s nIԫZ˓^lFMM>sV2,UBgo&P;TFtMG}h2:_mD*엔V8r8U%٩M6O)!03HAyX&vm??_SK qJU sA33;NAچnxN^e=5ɶ250_ևR|# "z&F矪:^DSMYc{ϙԭwP@5V\d6:SO|p]94*l"*0rWz۟_u NiY;M2Uw̿ڀY;[v}mX%3"4\5/X&uU,'"FuǯK%SX¼IBTn{+R!c:S6d3I?~E2}>˟cu!78P )m{[EQ[l'Ya6j.ͦ[  ěaNCg >Zč og1jn0E ^djX:2%]h.zЉ=nO^{Ic:2>.]D\\." 3yw <:I8 m{j?.ɶ؜&ѦZɂ + wq eO#V+T4[XfN Wq$ѡit@"9+f ^IVO= <^B*Nw63`Pr /xm:t[i})Bw ǴĒhLN'zة~Pk\; Ds!Wx{QwG#QU- ώ) k3&? "Ʈ3Epa #Ʃ앒"† CLY46ЉLtJy]QNʾXdz/" :G4<N^ (#yIUy(h*>~kS݄Dzq[6-ZAE N0±ȇd/κ;/^R9kH^b~y3Hi!|ʐ_60Ӡ׬lbMc7hկmP1Ք^kR)޾Y_lyc} `DS^39y~7%k=97I`M##rE=> *&s "cSʝߘ )|wQ \kkL;~xpM5rVwp G=J}irxװ^7ƋD}L~a⩉O: >c2\:8f8X^6 $idn=jW1I* PbS%'%1SGlvS&X\hG!#]56UUÞ1<#Cb92iW{( !r=iX}Ȏ '_9)w:b͗B%_EI };7TDd"R6 ;TQ>`U +R6)^>YhL*f&[Pa<|?mN0Aa9sT)Y3.p:b 2 UiE%5s8KZ|D4+Pρdh2i7UFGw(2=^ۅD/_I@(KaIb d'hӟ H뻎tz= t6@7d p VOl{o ܧ5 q-v6xm6#`{KlKGE/+@ vg? 82KU/ͺ:+z IRYh|'LU~jCݥdOHL)?o'8C/ W.g$B'HWU95q|gPceZ;aS6F>ca& @8XQ0U OVҰ1/oܭŰ-s>CSnb:س#|qaWqILftAWf%2uߘLlKQMBۚ6RK3+e. pп= *koLǮZkW7;q囏,@oKCvw+t6> GGx13Sʴ1Wlib{Z C5&l۪w`Zr.vtR`x GHrUq.: R|  Rvy2'fb4"/YE59XP/a}< 9 \F$Tw[ƒK )rlS@cˡJmwTJzsTo@ѭ4uf nIzIu8`m.x;^}F?%uI\M(统,ygoo}ě`xY=ZQ-LN/CwZ\ bO7|ȉ&زגvJےS+ܱTNE,[HֈGV,X\,G^X>5D\ߣnoU>4.DFf. Pu b`#D9&厌v%xQ,c~ծVTN'Ö*iο#UOKPU?1Ou R#sbSa۽Ԉ ?Gx `2|iFTh=gP y&D;nb AOħ!d^9CPcJxf._kWp$~8 ?GG|0 T6N cA .(hsXy(;wx0'Fw3 TdutdJTi1!LQE 7r& \ǂyx>ὦ4G[aYl K HwU0bpU>~_'|)nF1e3b^G#\*U!>ceQD DAg؏Qsk'KBF bV;zkM9RGhh5k{Ο\(1vgn:S0'ې؄͒=62n}h_(1)K4CHC&PlZR;L|gjJFB)5a} @ch#U [{Z!k7AeM HF|V~la!`SX|6vADY*I '-8LT4@FmJ k^DtP7e .)vE ֗p' 0_6j!)UCbG[JGW\o5U6N*}"V(ԻPƮ=2ziHW45~ <[<DhFzƑAg\g"tzsp s.S!?~%N"B5TxfF6Kwzx baIA7&+0j\9\jv-I#f;/rW mw"g@ԫT}Ѱ:Zr-yn_B:9R)R(UxI_`Sǂ~]_*>ˊ5q)=>_Nkd ŔoFx͠72㵫I[Pz2g蘤HM1]=/UYVW湣!BV^9Kҏ4,\D> %:v3m2cuΣk/dHx{?qL(uLb "]ؼfw"ab,oU [{9g/!`SR=ՙX=O-),=wP=TE ?t SOejrֶB'BU;#(\W[$][khWzF  x4$>ɈZ¯<]Hx @sA#)-n#%|?)@{lLj=$_,#dow/a5; yo+:|20 )S=,n#fv\ѭ'j4#r08:oʗX>6؉TJ#۵-%5ݯnME`%7JE7oV].l74Z TjKn:26#5 o8Bfn\h \Wh|~>){lltF @s?mDX.%w{b V*Jau+gfn@ &.C^ ȈOzCǍGktĽ'hb }&t[Hs[~xFҎV>WqMyǣS "1^Y:q64P/j8d%RX@6~*(FY!nuxu4\gyf/ 5:1x³NpP1[RSp jަ#t щ嗎Md~ḍԁ {$CAi%[X1-Ŷ{DmL='Re54rLuh0:gom͜be('@կbRRnfChtwu^/sDQ2dFQJw2vsiOR-.@eJYa\5"| $דyvWF!TC³h3^Q5l ʿ \ fy+xzMS,pm8 WpDMR'"hs_dWhecZRJë,p4UC0UvX*:Iuw"?iPfo NA~q$6ԉiJ~a~xx 1:uCI%̵S1ʁO9؜s~RiF y.u . \sz|0=3 zQަږaNw;Ņü%xQCǼViJ)ZZ:*R>9vӁfmqPѫn"\JO|=="Io$avA AhvdMW]O> {$wpy{rK0nVc#v8pLyN /ֱHPݫ}~Ϲ'ޠ-D*6y=دf\(J @|hIp%2m΀<墰\{D|R)jp tlaxm.<_ .۾wmv(V )""%:A"acN$WK''|3u{¢o"aHQSx~'5~EsJו #[k8ϙK PTҹ$H}"*,n\@ ᄌQv-׽i`]A ^ȸ@;L ]7|#\Dw>}$ P||ӕ\%t"7 /@#kl%Q"+h._|hr8aygԟHI=˶ڋ ZE_1)3<)P,V/]˩e/$ދia]mESa3V:C쐙|jhN;Nؒ+?3.^֣COHnQ( TU׿/<M zx6؏k#^D{F=G&ŔZ(6efa]}a.ۅU]"KM ]ȹ77jxڠ[Ja4.} ȻIޖ?"YWrkC͓c҅TQ{z@ G31[+LRfmr#ҜbKW e*_ounhp SS_{&Yϔ$1^|:8o"J3Hp J؂'"4h(8#N>4Txɡɟ狮+,j6?ʠ9hF%:QGncӵk5`u#1k'-("hY9)Gt/z1Et:wS*hySUнD] iBn¼Ax<=: qUUGtcJd  V_ebJd*&IO0d/"VYLf7T=ۨ@-We8m3T U)Ey'F?*+N- qFAIg7/}cl1=nb1la ]+vJ`.m[ : ӭb'| e5-,~V!j V5O!JbGa^Pћd; ON]QH ٌzjtU,-o&ddnb.TH%[S}gr qᦲ4 Rj!]nCa1Ƞ!Ēתm t1s4fltjk?\zDvTkXNăډU|m=QqMptR7ڗ'[A"4 !-3y бjSt%3{0bڿJz uWeJ[->wX5l;1K-T a0hxʩ% FZnlĊsHPӹ!؄jը{sPg/Ldcձd].-Rdz#?|Et2^`GZ*D! _E8赍y~ͳEGh>mhul:2)ƾ{i~:=A %}`8E։(X=I2賴xV4zSρ6US^ǡXȅ0S8'j>I|`qn;%/Y[7lYiQ+ű(+4b Qe~~"#/7%WuS{105[,$ɶS׆4nOO}Tu$mR9qTEEOI9F4%U?! PV贰,$Zcxo;ud._Έbto;>Dg'X_$iqm<[οm rΨ0#&n>$^ܙWJ>uQ7yTU/Gśr 9C suv|n7M%sd4(HQ)6T+@xṵ%thVB{#Jl33b~;Hr|= Pl92wn.ic[<0Xf0KV| Z0\RکiSM99F J9? ;Å /9e*E+;{-дQX3ŋue!4JuIlY`R4O*K~m'hLѼ&u 1Z=蒩gouwb7]f0F"*J-ji~ldiǣz,Zr*?yf P.h{cמּ u.XSJ@SPRqQJtl>e܃/c33kZ'$+bBx9Pcf@>l-.?8:j‰(TZ)( e?Kc c( R6}j192bR"܅I$+\(o(Jx9!AlO WEjj%$cuw숗+X-x7}K$cDe \@1~XN/+Yqח/\Խ4pX*Ѽ{̉FYɨM։5 Uɶ uWbZSGw^D ]N j+=IUI16kEnwj:cȘy=(܆2))3$ k|gYTeg|J d]K=m@ ç7XTq \*1?L1}ib4]§垁[/@ss65T.'<6-;kvTo#Sa.jsm2>hrlqCA6vF̑ŭ9,%njіNI@n2 `QOW;^ʕDQ(ElEfm_h |kLɼ`60 ^p`MTqV47}I0d *>[LkZ$̃#T&7RUcSF^eNDjc}A Slx^E.Csn5]:( ʲ->2@TH5҈ǗWK.meKFU&:IıSu$;7rEy>2. -gjtY ZtHw8Byؖ"R'k ~^di`iTfΆnUSpHy~V8cCf Yq3Gj\[=wLP^h)[3&ybQyXn` ?+nO!V]s=9TʞS(ؘ8ٷ])#nRn's9J @W<ףyKӂ<g98-^YᆧŧDDS 抧ZPylʩ-uf(YzdJ,OQ;^:L Nb;-3'j|[ϡo5L\G'=ʘ2Z~p'cˮN!u Ypev@Df0->&Y>= JΥ̑'G]*IHi1M&볪) z.B1;X,CAd,ֲO臂{3Ĭ:@N}ZⲪŕ|iyZoڻs| ٯmOXۍA _Fъ4߮ m ךК,m@Pu!7DBpяyuI_pa2Cz_Ҫ&>xAR9Otd"a1PC ZtB zBj\1Gnٱ7`s= G1ql2d5Dz&npǓ}%jRO3y"UL>U"P6ni%%;-PA5se_/E޹0,wwۇS m2m'I^L.?yV=9 .7vm  Ƀ~|+1 €]Q%%TgtOw|0zsT l_jgVG8/m%do` 5YXGjK(=FlY%kCWnb߿D&]5!cZ3wAiZ- :+ m%ݚ)Y;'e^^Onv8Sߙv'gAe P&,@i9Uc67k " ͉2uMG1D=(Ӌ4youSn"d:Ul&2J0fZpS=ےx,_q0kjA"{%*Nj狰~"}Л>;(X `jg4lh'A4gK.G;!$&ThVg±"ҵCDlI&|s +յ?*F5-y!aػ {} |4 %}ΊCñA 0hd̈k 菗p1jF9ܜ[7#M!k5 TXy)JWiD=VƂǩ꣒;(o8Pam06Mծ^Oi򱉓VZW'P0r@)2URBHS`Z)7P*:6>u Os8}9K>}֛Rs'ʒV- Cs3ۙ^):Q#o{ޅY\Zytu3wc缫DvjUX]*oXoۻOM#LvvZ'81,f%&s ]vZF҆|'!k$)ʥ;vߙAޢBK. e)cf%.4~--$:yYhcO4(~yV.ګWm7ߟ?@Ŷf낷^%À%3~p".5|g]F} r%YGDeucx~ INvgha["I7t?L\~9ujמЏs[S̀;TܺtrQcbsZ&٠1t4C> Q6}-*eb$TIZps7\ct;'PIEx3eD-T2U ukDr=i(gAwoVZ8Nc6U`'yVF3ϰobBҁI"JhvrEm FEn g!1?sɉN S| oLSvR׶5O3R3RiϪUY;|wp#9P!v&pREE˯3@Ky7h#=J-6¦51 /%|܁^$5!q*w8f-o!%gz=k쭲]Ma[|F ۴IJ{[sTDONkص;#Vʱ lRzhGRw£8Bpʒ-y0֡c^Qz`E0NT6<԰Bϩek*UɽnAgkh{p,CLq0wĦπ 0kP o/[:QMd *;w%W6-Ŗv}>yМ 30&m 3x2 bUb:p"Q`&N7[zi7ؽ_P29j^uM&-!Lv+'0,b_o 2equA{T0cYtp{y`#й\GG;,f(dҼCtCn7VkEj=GBsyE7,Fk>6ŰÓ=S\³6_.C'v&z"e /&E(<,pAfd"r4SN.4` 37"1VEؓéA]%ģ,& Xl:~X&KEw!o,yOd&ǰ<ǧrqH W_li-,v.GB(ݙj|,o=ˡ!,?.@g1M@pεq]jHwYF3'FZb\rƊބgx?H $ tHR ^d- 6m (KgR%@]{LCn}"rd#!z8w-GT^YjIdKVXU/eN<>9P C4cudq8{ 5fʙITWxX0C`C;V&TʤN>HfKS/z}/| 7EHZ/vH : =C%gD)rQQBד;^(_^n1UVϪ⢓?xʘ#y]~V0TLSc8z(6NXr9='e֟q6իZ-=4 ǵd1πK B1[fƆ;#&x 83۽l_ oEE"FףTzc!?9SQr:X6pO߳4FZ;Ou"iZ5i#> KGM5(_;16>"&jٔNf=SYn$Uԃ23pv=}SfG.wf$~ʯJ WU$-ג %%/!i6'7E(طfRBM\EPKƍacVq&;e#u4L6amZxJronI[@m{!tq_) yqGmVKL» ݫ4ī ŕIe 癩|:o)h;ObhY_p5qt2tB␳߱azL+"{/J6;G_kF]=OuHOӿ1:08H^ wwPOW|#(-(L|F.-RƵ]cnʮ7aeL鷺0"R-.}Nܶ\m9A=xT?|סv¬RU-A: Mf`mR{D'z[ D =i1`Rs !o\-HS~$F CBp_(rq /83tR! U*uY8&JW ڮStv~XIm4U۵ B> yz_wx&4Dd~頲E'lI3 | q84l-69{Ql4ǫzλ/f';¢rţV.fVkysb$p,k!WϤ4xutʎ6er}L+H+WG 5{$ vQ&@Zk_%,gߢ{߸;ΕTR}]<=6&EI֪Zlh?hl݄# + aH"|q1Ilc*Ul\#eHOx%BB,g;;hy)e x-44A,~E-lkw1ӉVЦo{#P$[5g`2k36}fdbQiTqt'UGRk9*U͒*u&EфR&袾pЂmTr V9ޱo=oRqoMIYMMseʀ0Ʋ9\"XTCVU5WESn<.7T_x^m4홌@|g#XIM|f&Y-PYqFW#q἗0LE;=#i+8߲4n$ w@3@K7h<+Ewn~"'<<IKchG;s7%;Dh'/#AQ4');lpY8n~?aC}͂~*/di<54.#b:ds+KHE -{WD@FI6yH+ sq)lA'eFT9V1_-`Z[+MȊok*2W?)߲|FBp/ĸ7OA9y˽uKmaGJoq07 X%2Œb }I1^=:ph^Bbxݗiهu}ޟ+0kdmϪO)Z 9 ğS;]N/N- <;eŪڏyRL=Z聾aL7n>8*260ǒqր:q2iy7+mV1̢~hn%7{T$TE٤Y| W7wA:1 еyL7Y8Z Za,P`/37392[aG# :kMf 4E0kx[[/Ay֜)8tE0h`v V9M~/w(Y `Đ2+nT(~Rb| yKLsU^XKu0IbOgWrVEuw˼,twHqW1qtHiHROJj/*s0 1f^aZ`򘮽;5h7Kzpжq{[{EK|Wt' xgw~I 3 WgK5p=ob?+Vu'\6X_鯛r#JyooJvc-3֒f }Bv kϼhAH\QBDmDkRjLy ~QR;-+i z~$mlӆ&ӝa@rgApF~wa ![,7Զ7z򯣚̵KcH1L +Ő#Uusu:Ktm$y!կHUtYv:Gx'hmA==/@u5}0ƽgS418,w ꎁZ*1NĖA#SnQghkvz7_:*mc&ܪLoKҭ-1$5rmRbY$HcdYP" -}f^.d&Vsmv'G. t_S刘](&+C4[>2YIN? C&7; ڼ ̨48v' U# է5AUjeKoYYџH9$}?p,x xcђ피;?Ae* ;U['8Lwsjؖ7zvU!ؑ5?Wa6S+_W&ԍՎx?]`~puAG[xf|KYepAl_665˜~pnl+>n~ Qk6CUr_k|ˍѣPث-4赍 "#˟dw%y+'l qVcydR oۢ; 3*ÒQ0c}n-]d5|~Va% ӀxWXomEe&衴@`IA[9p-Ӥ_X/3њTѵs& b½c^ONWts)˵y lrmuwei06nΘy`Vid_zJhsKf ]mEz"ŷYot{N >Vk Y @N14mECퟴcB^z54TfuΣ{P)+oC->X{1-|{{p,ML%gCڐu%r0BCgY g?'6v߉]xe`7-IXqw1MqUt+,k Z&[ :Tbo!fT1ws:b)?s';) rl][t};~JJ}%yy /rŴQ!wwk5u E$xQiA T(#C,r'߇i$7xu>xfר2ʇ.(Uz_šYadX(3% lIbIV:KUubw ++ꖂ$Oz%?sKL K'qBcKG ~o|yfܘR3iy1(MqD/ģ|sgEq2݉Te R\YWAjf"18 Z:Qy(o0t)j%swMnK'}qsy<ϭ J'Zx&Ⱥ⭣LKlcSKz/,OD/Cuf"ԣw謇Wcn9ڙkЬ %c-*nݘWxhM}yj8M1;4sY&G ReFmB7٨!*dR;"*?YC E'޸eftP>YU$8kv.T7T[#!o7 bk1%^ʠ]=Q>V=u8X¿r㮘V18eJjHFCD#ymł/88^FIL?F܍OE^.LM aBd Q\@`2F;&ϞUn)iq"X[U:zO͖ yԇWH xa4oA½v+mJ]oоI8ޚ\qB\ l 9BufيY%@_?K2wYfNo{6e5JQ:(Gs&CBش"bڰ6 &Od+>1(C.CU*6!Y}U&Ar})4UbqbsW4[O+A.{/ {oqZ9J:ʰ^0|.%90NW}xF܎8NF]pG8vK^k2{fnf^d-*?)i0iT4x?ᩎj/0g݂%1g";֬!lQ[ƧL]S__B{k;1YY5Yc4A057hO V$=݁-"{ߢKkb,ʖ.o sE ]4 t~nUUAOq(ahύuWҳuXr d2&?xiih9ZF{~x\Q=rfXpaOjv?ZÖh-:7yP:%8"p)eo<L Bz2[>Ϙl=T }yբ ɨNû2>16=&3l^{3SXqKXjj֎xhy%WzLuKǜ"-ۚ'X˩*j0g Д =#ٛ=nx0D&hXn+R+f<} "A@`>">Rcry.{ H'N^qmǷM)W= CCƷdQrժbjNꛫk6,w~];xݬj2<1V>C8 BJpn?h 8l)gLΦu,#rwE<5]:B)hR_Zm½zTȒ6Yv},#` S85q=DG8٥קjvRmr?ΰSM@LJR0 Op<6\# ͈t$%JH9EFe ,Ѣ"|t^*r'Sv\z<3?*'y-usV5 <Ht,MA򒱬Ѽ,d/ UvoZaS3rgEq$"qKP#+L"q=F!2F.'Q|, 6Y}zV1Kn5!Fe汨!obZ|X)]swf)*a?xB)T=Yɂ\(%?< iW JA%$qe%SG6 rR{w26,ĩa:^(!&|z%H%̏rFeVgX@:{ N$iI:DH,bKX.(շVpnZkP~2F+ҟVf5:*Ub)Zq/X0Pi(WpՓljDlU7ENz1T"l:uWY9M =="j'o$|(q|F$5DK[ֈ]FTܙBn6=,*QX&oNwO ϕ|,ͦOjƦ+l4wHbC8ۖhsCi AQVsYE -hgv)1l|Ԡ1O4'3eurowVB/}:Etj # 2̦nB_( .^ű҆ /!׵ zJn#d/m j'Zަ1T3?qs[$~by k;:9m[ %o+ep] XQ}\]پQR_PIdܪű><0@:f*^טYksyX0.1<-) Qoh߻f"I W05kIuA,r<6R%?[5:dRMYӾS(m7u>0XzFxiq] 0|ۑ{3Һ 4) Y?҅Kb~,6{֧Ru QfT=3K;j="dz$ C߆#P B3RwhR=DMW^^Y&v~fn{P R`+li<,NŶxnDw*0jI݋hĤw?\>򂁜өk`EEdBX /1 _rR5R f%ϞW5GrB3wp9hԪ{5ÑJ eRu,9*oF3L†ѳ)̢=2;gM([iX;RijXѸJ5=2"rDEbgP@oIv iɁV6|Ut}F j)M7Vh:Ha ۖDk?K8b9b.մ x;EAPIJ| &#bfQ繘} @+h1F뙞5B[JWێ4'L_D]Y9 cZP%LDswk%[|iU}jXE]US_+2=rp9DŽnBj0v5Oi A^-b4m3ϟ#-e.Cr>mugrH,v 6>oEYUL2AGZO> 糍*5Esj1ȹ3dᅢjA-f_?>u)%\%wۤꜲiv=".>HU 獚;mhR1 ;ڻ,ddec ECg@~<`Tvs oi j3=Dn#QZ34AJM0$S9[#ҜtBCί/ɖ +-]V?m3,$ya5`:n6;h[ʩ$.b=β믩mȂtIEegr͠v^IeG#M/f.ޟYU}UC˅C48|͈R(8 MШkXFyA@ޘ$?$jEu!6=,t@HymA62L CS6- B`xc ^ "LսEF3t/stxMyMv\:, %U+m<6Mr Q Huc$qtV }hwd7iDi! R9¹+:0.+ ٙ6$m*&|m]|0&b?q*Hv<Ǫngb^@ !q%{o*|sY,fR\PA܂fvcōԢG2K&Wx')F'4ۮ!)fV뀉ed~$=("7}氟nVua; LSo ,a6"LX&& >lÖ}ñU ۖ-V ME}Y͜$HP^k>u49bWnD^:B˰c0`cG`.Q//ߤZ`ձ"ŀֵȈ?4mO_k9a_C#7^xbQ<n͒yŔgo!k 0WNʶOE<=5 + ZʳӧKD&=vwsHɠ8eV{t8noJⰭ/ت#-a+GY^0J>7R;,(>WE݅;kN4uMۯלo;ߘ<6s Ѕe[bd斳f55pfȖ A,I4=-Ԗ-SXRr%D%4aV \ElZ56׉\z[*[o$4F+]nO`13%CB F->oaR+2 E];iLV3Dtb 0W#gb@cU jkxW軛 ,2[7˅.遅M>ZtT_imu4 C;` A\7B-dŹ˄DZgSc'j[D$vIC6dj*hw}{ûfvHW gn' FQ]":WeI6%⽫9PͧG FKba霹ˊ41Tw)4$9%$7!-< ~!sc:6JB48WҘ xMmq'D7F4[5%t])j3HjjPӜ  Dz[ ; &hօMR+kkş ȼ6j# jx|:sp9}Ȣ?A[|4d)qBNvBCqJ0dsk]#F(e*&Ʉ8!,- 蜧z2asw[=i%Zg1S)g@";eMS`)ٖF嚔i^$uW2ԩ3x<&ךPi+V4'+hp@-F̦pT$3i|t9{cH% Ixi5E|0m௜ O㇮}WǬwjQ\DžF d4h,uh}k\eG &Qt‰n;NT{\WKfHmByn׬_G*H.UG48wD{ -V"7`هTZ;N菸1m82/DB'xm9Jvv5$|[- RB HOCj-as6U$uoC B{,u>c`8[ T]LC|&#+#ZH hy1((ĩ*XdvڸҬy+ͅ,Fh !XT/OPUJhD~;ջAAز>ܡwу>w$?*vyI<Nd~v%4"aLrU4I&ѭt'Uw/ؼJ H֢x,/CW:O3S:G:Y1A.`~`Zx$? VPaXM@G7;gВ r0.S#uecSEy_TPmy'GA ]#{ +Ao]O#BYӘ O6xLI-w;cYAf!-cGA۵dlY$s{B'{48ȥۦڸIH/ mfj® JoEE~q0}eH:3L*x+$/y'"@1"m^g >a}5;4ޫL}cٛY*T-;@N ΢@cf{V4Χ. sX/'ƭV+mʈV6Bx~sOf1|qq܏~75ۀhӁNmwqQ#YmUIr}wtGiOqSk¡kQ-'JaḢv$hS23Lx&-+8~o \Gg#GfpY2ЬB"T6e23ޫ:W2ZOojQl+𡦱jj3=\#sN Ǫ& ~GL>2wbco]??(%vEziXv#ɀgй>\-bTitbmigЩ? ䷀lHqsT\Aci[ k7eIfbp긳<> 0^ԌQ*ꍸ4?+EPs;k(mpFT^+[x .Y$NA?nKۆA]I{e) }~FyP.3.>>|R&@LOz jrl㮇Uo'pxx^=&aަq:f"$Hjt5P{|͗\ Ny\BݴsťÛ%)ےz}XY2%ޞ2UXqMno +/) }rM7B+}[3 ލؔ)}5@uthvs fU/I)"GdI] űcH}I.3Mv+%i|݆K2!? zM߁IQD;!tpa)OΓ4d+[p_w]ₔN9@MFq_[fjPM96takCht[`YI l~ Hv;B3bY^SIWmB>7&doLٲ4;<3O0Rmt]-NWidk6b}9LlB e3YYuNw2O͝+-]BM?Zdp5xFμ ,xd8a]'Xk\TbXiRO|<+Nۥ+˦JH^f5vRnZaIUq;U _-O~rrt- 5 :> JBwrUa/F zu;lIX-FU&3* 3 bCjTbN%oba倨,+6}gauHcXZY>x4SDPtܒWRP k$ [1>{L%}_^w &Dϱo <]*)Lvۿ81(oҝYIn]Y(NMBPpMCF@,)x*/9^^9[Vꭦb]|jǬŁ&d 9$P0u?daSZZ?(JS|S_ e\dF@GV3'Sj:s0C(J f9?\IPdwq|'_' uu^-G%D%1E%A6o']X0^YK*3sB-eV^C'qın%,5⶚v:wV!2Hε7aeK!,rUylcBh) &`6M_̕z2*R92U |ƽ&Jsnv6(ۖq_IVex~UZrJ8FIn,.90GE='ZfƑ=YВC6QmW^7ۻH;GIm K)v5Pٜ"rܹӦ2(CI1Jp>M䊸:g!_4b̩![!y1)Q'tٖww 'z eYy+/cZxR.dnЇk:qƼ50)9Z&&dڦ&dŶپ=hgџt͆8@IB;̗[3Tї0ދ@辫$bmD:H򱭮{u-/]_UMvO6ac"+0 .;I}Hk0QAF"d eht4Qۤvړ R+9H4 G-: $~ޡ21\H jY^*S5"e/J4 po`9ė#i|lcв/=dKt-MaE튪Xo!GT+hRG` _=^o,ӆP,5'--յʏyn ym] J2N촼&Vs@p3@ܾNXn}(fgA:tx8ks[e=uŶ3{OReDs7z̸mw8bR\@jH:e)!^o%;q>Bx( !OLvq@> FԶߖpM30uԵVcgXƲ;xgh6ddpMgVT{W~2 -ކ&,ZS C}TL 3_uSRB;@S3˅@ad")0IcCV1ȘAҵ&Qb:-:|Tsݯ 1 d荘5?8Q GkD4ڰ"ҔƩJ,bݐ͌S6ƽgxaC}$š'WsxlT;D%ĊH>[y'EF2WBwy$P)tKw1WENp6pxVIWl&[) t <4vG񄂮 X> =]dZS,}OZp6[E 6--5 !6FJu]-.@3{L NfQ-  QjFj #cޔjL :n֥Dzxlc874*1p!^ lDU|_Ur0@Qn))tui/(T]~qx0s " .kc/Կ+ߖK#0oFAJ(#r_pq\rj0qlb&Of|IOwb5ʩ _ ztTR .iJ@y/ZrՄlق|I13>Ws&}s@ޫ݇B?7?S*F "3LMAe`Hd bԨ%=Jr3 擕Bʓr,Fus he Q1kԤ}g^tohW]/\#@JAIi8K;XKdG~Hw=~gr"nܺ7O'Hyb.}<"%-"K{z?C.HfC; (>}؎Q%.*^F?1&ܾ01W32#D=RMT]+T (KrhjNh|ǓD9Y<2 gR\EA^Zn4i7dY Ǹ 7 __ZǪqp, n@ T^{"ʍQÝ!K:KAgFhnJR<~)zm| ]3Cw/#opr"{|>Sb㔖FX "|4 l!D(?@R^7-'Aq$^t[;ύ9o3y~5fd~ ,^ׂ?Gbf)&$9;H짷啣ehj3Kt_pXl1gfr7HŘkX䥑IR9CWm2"1=+B&%,k8VӻzD+QƱ~n,[[abM1Iݼ2a Q 7[w6,:wTFĕzW8>\ ֋;nʢ/0>0^sBLuyuuMlU>m%1ᩱbbK̓,TDL * rѐ]OcbU|`f-mj(=(]ltdלFn?md?q"O2&:k 9K@Eޥ>G2W>7fM6NϺUd<29djk#J4apC|UΉUIJlĿ0uXqx9+odjHϨ4K`k.u3%gsW5-^@A0[@Ub])z:nM!TJY9ƂٰV% 3uҹ?z>x C/ RT҅SlDdN[lpM4dkkEP 7õڈaLLЅ/G_DW`+8n{qÆ^kcio ԥ^!ԗs{8̧}^mYWB(%D넞ЩٜP|hQ}%ߨ{R,|0_O\dσ3}3uU k$'A V%YRyciJYdR!kM!Uo<ʓ3eP 4iЂݰP (i[ø\oX%3*݌A -` 8/'@&H|P݄QD/JvJo=gq 'dWwr˙M5E(Q޾鸏cϖ$*뿖wdk7$]=2AfbI'L%|6h ˍFuPzz}e0MEI'$&Tlј 'Lg8H<%7-㌋* TQ%yU Rvf2t1f N6W`dP̊" LoucKYKN'xʮ+(J>chvS \i{Q[*{}5UMlbC0oRzᶜE 8F!Q48H?1( Hz&J.G & Н;kMuw!f=̆T݌#b^*TȘ]2bm4&-Tlz>퓺wr(<.`QG}zq8< b@68ozR R S*C,`qG>̧(K1HՙIuƓT8v+Ѕ\ܟ[{=!JvDo)غ x% ATu+"MHLfUBeѯZiKL+jh-rνRUorfS~N[]nΔoL.j|>49/oo20#Z#6Ff6VGyQ75 TJNf?8z@> ~JjGBӻ Yy^T[aq3=S$46|Jhe06ß}Q/e-xG|-?#>A3dScv f$pM{4k3yq!8afXr#FŞ6ī!'MUvདྷ7{!qH"EIkt Zr{Wh<+zlYwZz¬AzIl1ϱbU7jlԱ ^6jYAay(W c6 20>gۍrdqg-L&8t '4iO G,oecsbH)oQ/c |CުԌr_qI<6% D){BWާ/ OHGw"= \TOEg֤eg3?cX JIEu?^(b7/>N)~ʧMAG&C PnC}u= TοXe arjNhNj IfW*ѱSn:f{S| , N3l³RZ!gj^Y$K0G*pCeiG_*4T URӼFqE׮Qg 7lڈIUL{,9m%}U@GܺG x&ܜpWwΑ{He=R 8p랹@So AB"(RӔ'uɹ6|#'IkU~mg ھİJף[v29*O~?1Fo:*+Ri.NeeQRbTʞe郘XvƱ]_e a6 a?7Q\[%Urwi@^ZI`?=PHxpXB1H&,{\6BHt|6LD6U,B`m+ֆ#7 9]yU *̷MşVD}Kmj?^\}Gcm$L qO]^+m2R!aYx#[XC OeL室Gm"2'ӓg].Vd?:Ao$wN#'릘3^~mZ,q ݣ5~:N5_^*c"CD74𔢕}cA. !$]p㏀%Vd7˾vnjL 8KWBSMFo+54kCNpX\)ڏ5$%k/nX#ly^eLd}  *HVr<8s$966qs^7ORq!}/aqM[jBHw}N.:c:{GhJ{%W"OqGflQdD9jy i"0g$ Qh/xܒ3#*3KtJŐ xA!ϤR&`?`u.5k BH>MmM1,5D#f&"ס ?&ymP]ICM5k)ip(p+ lƋ˝= 32lp"9=Yh mz[-d3qG0XG$iiV@"Q˛zj~A39 7 뺍R W$-8,JAt$ K<ë ]QJ? n!Po@Ey0]9CX&Z* Y̷$e۲AUT :?0EoT[㋊FlT%}q#å\rm%^f#..\jL,ˉ0cdzc)DqqvF[(/-yaq"FPr-NE zVМ"v>h]/ܳjSږs.؆TJ"?̒h/T36HWNP&(DRcV5u5AAv7Dٖ@XtT&BLث{F+×bq.]ќkKB;nʑ%TUH7 51gLt0K"f~IXMV;Բdc4 Y?47tu 尿wHt.:HreKJ9˥YMHZo| # 0'>ڦKu.#W*9Vv+6 ;)E~/p؆+98L$)_P*Haaԍf{ Iӂ=udB@N&s?ߏ^-Ys&<`ґPq_b]]Vx|va*8s?*.&X6ȰA:+%pXF9C lD"5Q1}ila\Otq1a/ݤp9' l\ZJ.teb'œ[-c^hU sV7e8PÙh]i.2lT nT>I* b˔iw :DXq]2j$ؒ˖ZdO$#t=;Xˍo}y1ﺋl²6J:)[wtn2.2<^NQQs1cl6ErXrӖ,O]RLN:PyF %tǰ]IlzIFu17@ se iFT:37*"vI#q^e1+zǣؗ ܒ?\=v5`3_aOЀƵ/QT؞X+ i06V;AuևMiWI_X^NFWl4#\/_8o]p|aqet=h. Mh~Il̻JگTg&^[a_\fGi)XЭ}`μ%)O^AGƂ-P.En+J`PPZhF6r7p,q (/N Kcge飡´1}mKB<í!CE_$ӎ2t^HzOx>8V_njp5/}-Xcz\Kf<r pؗ:'snF?J:TdeY"~-Ŀ^Zº|sDt~ctp426]'QHADj Bވ#hj^ðHE m ]hcfZO/c/H,h=ȁE1(b)" fcqJ6?)(PI" +3v>,WttN_@:U1 g7ae$ynC*z$Á!Y?{]2fDC~)}9Q|07B תHiG OXa5s+obi4}‚mfBR<7G92jgXn>co8 00`ؙ*xe5U8]|+ni {`,4vE; "Qyy *8{*rRUvjʍ~baDJQU8<@^1$-R|.8;>m{],¡&|>J"x=.ɓ~8fH'm&-*n.ᮿ(“{8¿y.:U[Hy-^Jm}$봈Zc:w`i;(3IFiUڊ7֍W'JⱵ|٘VZ`L"]P'Dwx<n},>qT*(sɁuA2EiM2܊Wɴb08Zc31+ʼn+gdAEf! ye> `fن^>IpҌ\`W_W+ݍ#gߵQ\o c0;;j7.갉y;(\B9OL=(1oL]sP, Fx9yQ~ZHVǫ@=ѼNPbZ?D&uqkk 9a˂5@ZwG؜!oƾheY#,'JHzrU' sGgx5ạbTbW!H6Y?4|h_3Dl MYKmMmGZxH9z)鑇P~q]U|i!c6R9 =X_#um 3s;?(P=κ(Ӧ]gv]id҆yb'Ii1[.R3{+7QHX)msd9:$|c ejEFo^ FcM, ٧& 4?'YwIQq)S(u,hpD Rz-w jfa7*\O1$JV~אJ~[ 0|X4̍8!cQOfQ}.|~e0Ń0?_FlVFIxbB3ס)} lԇh X@v4%kut{%oq=cҗɈ+)㑀| 7~Uwy%ry)ҋ\tء'٧AV1ʬnЀfM{)@W?S~DHMc2V&AI19lTRc^4|? [u 7)f YM7H1Rzmdz;{g7-%xWH rVqOA3<P.FxDqI{[5cJ3Fxbﻝ__W25Y,UK6W 9Z?xd!X-:X:(PC$xK C(uQbĈnԲg&JA. F&A7ώPU=tOS`6Dj2$3*"e>!sIj5 #a>cMnpr ߜ(u [%,*En"#{qmM5Uɓ^&BaafN1}X >'άr͢LMPu!P13bˀGUK+Ko˶mT+y_!ӺEb(Zd`;-c+H)cA ly9Nd05C1rU'Ey=pizڔ\BVy0p\:ߋLlX~fikCr3l4v\D?Yo#xG0"i٠UCz,g尯GRRv3Ӭ;7X `G6-r-v3GuuMR}bC0OvCQd`w5C䷵GԢњR(]>,}[' *j ɘ*l(_{&\y f?xvkyONij"S2N4)dY{軷jZCE$8ˣ9" ѿt)į[|SQdf B,-ch)1٭K__ &[8c B[gK: Y[ f*+gmED/8^FDpn}[tb ?#pE>xy ;,Ɗ(N|yAd@ i0P{$lz7`/FΓ3'I7+`n]a5O gs]vt|+qk6K芨K-2$FȜv< 1p+ Jx4hmb}o$ਟaz"NKnk(?xrricz-ւS .Uk 9nT`*|&HO3aپ h*a%'K&oߓˡϚd!6.CR_sMZI#$twi&5aw?i࿵-AAD=~Be⬎l1)o[sy'[^91mFٳ}FIp2(ťik(sBX7a6637f).wQ!8sU]-uç$L] 8͕FqVϠ*+ v24,TzA#b eF43A-xS5ꑽ!6ޫxz 4hN KO/ܶ#P/4R:pfGrQc2_i>@$Q\5q_6b Ym@(وѕ~1YؗOi6s /5$h: K!Y+~s0ЬCS,QYS셧| ,,yOd$;Zu;v*Oއ(v+s mYut 2^WR [h28zٲra7;zذ``Q_xlu-þꪦ{t c^oMKWp6J9(;AZft V9 9|.C?/v%%2IEj׸h% R4.w)ăåԄAިIlՂ[⣞ْz9EJPR&m#)=ɪHwT/Ґ7ώhxi֨EP׽ Y2HM F]ՑriHt [G)< @W*}I0#kjf JZ 7ARA}F s='Mg,=;NI}p$RCʍvj# E`: +QPf8k`r#BRT/_m);]h4/ hv ,Ni]5 d8{D]f&K7~w m(Q{R;6  ̲OFrFF `T57ZӤ̉""&RDc >6.ݯX컌 #(8/bg;}ަrK\YqY& _\?O񧼠y[厬^GxK'B@ 3F6g',b#9'kk;P&q<~f6KK=d— 0cz*'"LaZ>}"o ebCD An fZZU1aP#"9wKc㒸]! -dYp tլeGgW"w:%h&kE}2y~I9Cݾѡ9v{&'kr \JLl{e`1uWJjOhoe{m` BB̊C 0![.VP"ZAI! 9J w-qmg i:paQnQ+*;3WBiJ갠S&1E3ݶ|w5o[\]Cz boź36?:v xhg [0 vs X '5I&H6C-v+&} OӓkPm12Pz@6 Rz@J\@i S53/L&N԰ |y 0c{6桊x, 0|u.h"Q6{Ϗ6vQ/0ljc3Em$;SxL*ݎZ%tz^!2=:XQÂD8f\ڮHu#xz=MXݶk ,L;gE#b^ug+H6[$gsz؜!?^b>99H;,Q+M />ӒOwXV7'9xi"2l! CV?8+]2}M9$C+So4VE jy)3,$ *kַ癞7ŒiHb8NrS@oR!N:Ko/ ٽ )$ 0ϴuw\L\{7.2<$5Vl[gE/(`76 E~R. mŷ|!B2,8M:[qADZ0aUk"5SQ"x{dϚٳi5䨎(,ap\,JrDn_!(y|-&cQM,?'8JǰdՀ.EQ6oyMDT_YǗ!g#NEE8<.Z4eDnA!|.N;y=rbs<`7kޛw<_ۋI}_QF`gTR,!)vQZG$z0\"cN"bB8)JNƘVf&Գ*njdѨIX@tVNpV$A_4oMp1fp\ğ-5{ZsKRhz_ްs ^jE _lHI `ŀ VVfȎ[*Wb,`=)_hVͼSp1_2NMi^q`5,"!>Jw.:f !z^!.c,\=]\.RZkC}y&;/([٥&B&3-AahAO?>Pd0͓kW&hीZ`e8v3GٍƣTk*Sj+,ONwD'=lŌ٧-b[Hm&F'8_b%Vd`:Bw5K$g\]}- >S/;7؅8o2;:lbrA90آSL)`Ŕo 0[FPn?;W@ Q1OZh[lnw9TTCϮg6"{MngFF>| A~ݕf(x6 Rbm .67vI򔤞F6|gf_~]!7(_ jߴ)_5a?3ˈ]*%gс2kgrԥ eg9Mr\ĴzLFy>öDGήr wLpk2+iqD?#G`j2s[&L[X.N "d5-J:\%+ df%o1_'}q̞D= ̮z3r=d>2?uO類 Z#8zQ.O]SdF`ډʽc¾Ǽ]u=.Bd:oϝw\\[XWt.j\~1IN4ׯ 9l>bq1bϠxLVZ pRc6Etr둋ovbUHuz@g.cRwϝH 5h،!SuG[Ȯ^)¥''yPd= JR;98*4D_^1R7AlขMr-Fq7m? ,.A$܅tY+FYIp)~2`xP#8T=O=\KeB݈ `3sʓỉ}e%NV!'`N}{Var,BV0u ?cF IY1;9x\`,\9%GSrǏˌI\urcK3c`1YǴg5.Wڛ!͏0$d+J%Wͭi=n:\=G(ݯ4(òWE,w0` ,f@X 5Gb^hP-$Jp]CC% .8cA- .ce=r8gB-2em~X{i"&a`)8?x<>~IH(o@wOm-$_7W872äc`>Ř~8tscW.;;nHU6xkt )!#ޟswFBnS;ZӾO*fk _Do-'3KTbŞXjAC&nCrs#jk~<1-1aͼ3~$ *GꉋY̑)L#'TX۲qy1@U.9{edAP̟J[͞@߆H5/ +%Jr'd9HexH~iQ3 EDL-wMJX, * =׷)3]z g*؃6pPeGlVD?d꤯ND,Oc! NN0g78=pzy ̯L/PˆhvR9H' QfTOcufͭQ`s ,_8MD?H %X=\`|϶YSb_g7.V8D_r7ij!`6/Q>2ZRquŠlڛ9Sdf=@.:SOd@jnHIfumkě01ՇGpΡp\2OrMjqiBTe?q"w?l}CnZz[^q͜.׭Ek/^)i[ k$n)Iꤦ㤾7]1syCm֬ww3vjÈ_ҡpP?"`M]i1MG|q2ig@󊍊ӠSy/|ɈU*R#ROWu# =}`RPb]TnN5aDIprDFpDoلeqS:C >[c'`9,ac6vX̏F~ƶNlՍ gz 8W!`09 }+(Cڸ UJ4N /۴9QT'49R#ih͟Z[bt ؉Zl|hE'*G欪T]|LU#<)_|M[gfg;``R+êH"s/jRyfdi BmOUcqMjX_:-!,|e5 ސAy@>Q><%UlH$l@ߎNbckM{GB)cz xiv10[TpʋwPU(#[c Y[: SAl_(-?LjB$c)mu}Zc"|5_N;CfCIYF)ݵb&6[( k17ڇ.B!6Y4&4Ƀ V|*Y]2A׸D2AG$pҊ_T/Lf/֡fK#J/2t)}XGCvAH*PR:րQ Y6þ.hLsA :'Ce34>=fu/n8_uR#ۊk܎2y)UH0prB{ಧ;`2;Mr?KD`F/|l58`]^OSlz?= ^,I@\{}JaZ(`yJBn&̨jnImuKVA+ K`#-l. jG!x5W&]T&~1Qy^D-K=|t{ +_ũoyn)Q/:3]irC LT}LZ3>$A>.4Z?|)hVQVyғ޴qw rGܠr [$8d$Q5"i.'Pj;(xOQE%:丠'q2ZL;_~+߭٘; < #CY<l>X|<ŵC57m糘QP݇w XQz2BPL : lPN7H]G NTOyUb̜oD` \-WI~Y3-qH)WK\vV#josU:{N$l@`)! XfF뾬;iM _=' u0N?;J@ MLU֥bEG< $h>9f3Y&gi F0.^$ 7[ꛄ8"(;-f`ůʜ+˰ZGˣD߶pYNueI.lɘ`WjCT6q'ƔZ[ϑ6"}z}F4!cv$ނq'[KqƄ&GNNY{c5|uHS/r, <R?K$ [Trjsrcy}!ztcHGnMc\*D\I8#ʾ(M4V6eN\)B(̭o3(k-rïXD̂̌ SoXC*Qֆ'fRYܧu,n9؞qqV@;%k)CF)>n_y=5v1mVe M[} +'=nHc(q%SƻlՁƿ,L5*/S?h&qK>1w]ο#N Uߜw{qv72x%+'s( CU?uscGrn A `DeoБdV*AMB!.2;' _ ~@^Q!Y +x ^2 $ 4 n\Zm緹[ӑJ; EVkDZz!6J' 962  Y(M?v k=x3<ԉu*N+7D4%1!{Ji=b:)jt24чؽ1 dwx$b]8OV43 d:K`eE+MAS#nrsWyQ*s S`1D?h㙤~D3U|/xyx]3-LڜmEUq39Lޙ(ǽG*\4bۛo۰XI'𴋻CIY?4[aWoA |zds?E`WG@ԩdI.qɪeL[c)SLKHd R#(b *w0A{: 䅅^ ȽQƓ̴@\v;ġ oXOʌȢ㭼|ּ9O}=;W7iR&`N ZiEG;?ij&p5/ce!̝딋Ck!J9yHw)kc} a%@KiYRL1O։Gf.J#o㗅QV[ i0vNtEV,p䍲7H.4 ({NmTA-3KL. Ma/ |@~I&sPNgT+&hoQb {6uM)L!:ԌnDŽmjE"4sb>nӺ??HP YIv(pKTvF4Q oIRuu:9_H6upR^[Em)[rǧ3/۠1yu0D\S\N&@:Ln02/qHO%%gr/ɔT|/88Xy8\LoG֨* \Fɼ~Atr2a bx7k'Z vwnPC*&:iLd2pKUvXwspΎm

@^uc q"sCj߯(eBYAiϵ[k)qg;-"v/2`kDFl%fIsC 1U/ew 4oJ쓔ZeɶtL/,78Bc~SJW."F%_TAt 7x`">kgyZ 6\ՍTE?NIe;h2Ɍ%]P0=▏zɦ`r"&P\c')lC@6O^ŒM8) ֦SS.ILӗ<~#< G2}É"0v;gU 7#Ak_'0uOPH PՇ͈p-i 2L Ʒ. c E奐U33vYJ71,'v-lԻcT#_)h(;-/0r4CR~~Ӧ]tik佅]e#f&AEQyܺߗ%L `5hgT^z{|iK ) <șAU`ZTsk}28;JN0/鈓gH"w讅PNb MA=[ŤK;Y?T-/9+`*D1ġrWZ0R$DSuA'e'-B,I5EH.}TQnٷ`!^g;YN+<Y 4 ѣ9MYauVSqTQ.NeaKC?i)GLpWgꗿ!GzQU]Ǫ] ])Q,ߥ纣T`7nk4@N[LDF\Ab}|^ш,V;o AeGW6 Ow*%bm۴|R'/rns8Ud6} C^^^ʣ WK=V4h5"WQ}Iz {έxrUf>֣^xzjݽIJ^26@5S?zCLGI B̘?+N/RtA.JmmisLkv_ֳ;p TZ'V( ']k5_pQU߄Msڂ+e\7ʱw>π8c&ɾAGd+s42~!UbkPu '~!|3'jp` *5Rz5^y3`cgc7ۉL?}ŧVYّ^63E[o]nc.MS.#/%|0&40tAi{c7;kw>No_AVs"uo);+d: {Tn+ɿK˿4*{NV4գXGO`BC~z,W C <|'aF'jO QW|B.ٻ=9*lT"cjo΄JB O=GAq5\`lajM{B\BX$ ȟVSknF[ybyk|<w$oֹnBJ^j;#S>qY_\|&;N|(Uh7?4 ViCn?G\|Q(:;:QhזI*+'e֌iW3mOR nn!d>F$^l[t>c% d6b!ms2p& ۉt9_Bx{O>;J0֥%y5Pm5}>UGWEU+<3g2G'Χ 9︖m?!y/*t# 2aE|&4 BLmhř`Ź a\ Á |,uOX$XW"ǥF|"Ǐ%G}NHݙ`EЗ^qd)ǐ2+5M\#c MHBRݱ1-KAH6r@%t&>_&`ǿ)p1K "'*'qq_`Һ/Qq\Q/st>"Qq_UlQZ9)l V>3` ,D*f Q2{[Ȉybmt)m p@lRي~##qjKdzK~b>x=b-dǓˇ'?`#+[N_T%_ؒ}cVvoHd!ؙoظxi.naQ!>nZ|Pia0LTm^f[ԥ*Q-ߐx&|H^%"mGͺzDJϬS̨b0f=ǨQq U|O³3ﯴL?mݻgC:&d[T'1t~u1C+bXu݌pCV֗Np4'lMV3`QX| xo֌X1Hp੷vN 9Cq#D%z4bݷ+;4#ߨR!Mtq8a:^ĝsDPyD>4Ēvr 5 V($y:4-Ü]+}`-/m'{8["/h=fsSsxd]30&-70kHJ& +MBs7I+1/Pe{5X2z/&QYPO'a/?.KPl<$]Xa zZ4)T.e^F54n7Jc2)眉!""L{mpPXsy9'/I}#Y7F k11߮/MIhQj384 c#4{bqF"1=uyZ$G}cbN.zK^ ×6K- &QUR `V8_C4_6%BVbP2TV6 lT(ロ͛:u"/-F[E7PPuQdr5N\i `bOb4F5j~GZFsV \_39/z0"4OgqtO;j1M;%2>%}#&=B~ Q(nz/{vNĉ~)}T*weM+HٕF4̌1wl:R &.˝[Zv-kIpӀY紌Fw2u44c]rz v v3$ID@A[dYM `&|r>wn.gK&je +(nڔ49'Q(?yv%iޱ揅)ˆL]Ė`p Kj=h&_Oƈpz=K{э2!ҙNaL97nQ C$ i/Q&;PcȘ}["޽w&!2l7{hSCd}Zx57#{_sDNԝ]#X2#OP{ͺ5!4ʎ=vAh"LzD.9KT_`6֧E+2_l4]qРC $[68`ҼqN.lMcx%g ѣi!x@^<˺&6R@;<.@7iY vSy[#3DJ)T\'MN$. f׌ilNVkB9yZАg9'#O1?ٲyBj'B c3(OSw 0pb爴H4}ЪYhjYHlbyV 3OdTԬ]=͏E--H0Wa-ƇRvXEo /j^xEn*eE`iB)eES$xjٜpenp!rᅎzx|ZR؅wgl 7W휲'6?_F4ngEϵ= 5dE63 AĹKx\MynQ _]H7=onU#%ryDK2< o̒rL\s>:Mi9)أ*͡&J;l|:]lFwsPc~ft -4#@ȕE6^879{'k''Ĥ5!rӤj媶 -HxdtǦ)2*(Zza%Yms 67>R{F, vR$'ԗ0kʹb%I_ijQ:te! h=(a(pNH*Qvm/<ӯax{psnS u94VѾL oygvBfQ% |5ۜ7;/a -+A/xNQ\(˼\:6) p>PBcVU9D!VeO9kxw[eb8IP骕v]MtY/+<֡jZ@ r1_&XZO .ܔ>)^2O]Z6i-T;X~V%3`` Z3?6vN 塖8'2{)„![\``1=!W8K"-Zl,WP"v IHW@Bp+ ΁4&(= BW(YWǍ܉g)(ثR*({L?8t鍘1VV`c'"dԶ~,6mױVfYʹ'\MDm{uhNmq;ޠPW+U^lAyVpGG^Odf*YH>ƭс[@%ccTҶ"Un: qVyɉJ?Wos֔'ݩHTߋ1|iE*D۝-9@L%&eBGMm;a! pH;K(AޡSs{nNF.FZDz{vg$.wgCMi{a|J֧4? }!1t[Mj0nwo ]#o4}?H\,'\h+P"-* cx_SoY4sY4m kqlAFzf_Oe# ()GNMt [xD=%")TdE|W &Y7tj磎iRqR@"vR)%Z8-B:oUnHd~bTj՟6nFR ^~ɂrg#ٔD9z%3|.Q+L]Hէ^?.IUIA=VqnIu_jVD43PEd2۬iم^qa%B!^ n.b11U5Pp] UqCJ 8@6bz 2$k ZY(Y9QᵃEY1p'uTc;t$j*9>%d*f#Ū Il=6SA|30դ#p(Q_;r%,Xc%B(,(ѥ=d[} > -+.67Ov0v N: 3%k< +ư‡ALYbҢʍpcd+ZTz!tBC뜉CM_zs|;V]Z2gr:G\CWNLzB[k*^MwwvʶDb< 7yizײK\HxN^z=ʳ,j85ӎs=~doYTagiT9D7 `m·NUsu{1d 3S" O,V}#xcvc*ϡfED7\9H8JSet"_z?l i)0[)̷ o}LGd j@얨 39Uwtj'Fx,Go 4( }hr7wmTxT}W&5@޶^Ą,h:hoDU𞡋52 c9ՙS44-4x5e8N#vY.`XqS箷NOt w$bڲmTffd G)Ȫe(SD#|_גĤwK6Mvv\D)5_{J98HJ o`P" 8F|#[ZPmI8X=fV3YO!<`fN!kn\NIr8$YE} cl&ʽʎWb{tgP-hNȳt+;C l92{Kۘw)qXM= G(@lcxb~w7vjYiܹ,~C@NC[B[<^;}qUf?inp7&6e9@3Ixq4ڊIT%t5b_vu_J{݉"%6rvǝ*fOohr`LXmcÌؖ/e;ull{rėۃ䴛-ov*k#L ]@@!u@s>3g>[# P>EI~@,Ħۻ2^a){-ΰ:QaFFl–9/=A.s<ٕ1݇4Ae݃&J:o lr!򲟯XOq }hݹo~A^mGWpP$NAm*ә#Fp1c0ix qXjXiW~r5tܮ5@Ѥ}Nmdquvi*.uXП^S}}&ZJ_~5f]s|R{N֎ У78U9iĊ5)kvv雥C]/e }zg.ԯWLačv=#z77oO:(:Hӊ=tA^2=zԿE!ۉgR[Y˦)ۤi~1+mν6cCN-fN |Έ6c^Du5âq,@os|lsCmV"/+*ŗVe L hRZ -{r&*߆2ljʗFlUS 1ugnYrYp3\-wWw^h4o7ToۘP|C-S83zkcR@oSzm1W8pt/>_޻a[l V1|>JioI]i1oz`W(6B4wBETu?Q2ӫXa>O5j4GTt?婇f^y.(ޫK%A|3 nu0_8?q,?9TW)d]yn)s}foR7떨oLZgl-^}gUMY(e` ťE\-mԍ.}4ʌ0߄'/<'."OlMY)z.tB†CR 2I%yk[!ƒ/NRtepWMm0)Y?aKX  4D%EشLmkYYwSq\Gw3oݘ*ɡ0"KږM7Dú3L/i+Tr_ɸ`-"wڈ]Z&;Yj޽Bz+Gg|B[ov5hq6Lg?7S^lx[hr|#UHx6xcTec{2Oc `srn'9dr_D=jz]3x*HCžQ¢GRZuԒ-)XyqV]E3#vw2Yܗ!H< p[t۵iӎ6`ʁg  uPq|@[L}Y[2xco^#Q^9&snoB2,Fbq17 l+(՛&)m6yv|]Ñ̛#rz8$7*zu#*U.F_R9C}Q5}VČzM3aKwe]YPk*F B [k`oBB(gъ;|Ne('WQ !TmK)r-ע Kdf/ު`6  w{L o*[2F{Ǣ+X"6@7H4O˲ thi:SUj(oƨb1w`rL h]`u+Wc0[ͯ7m۝,6S=HUAEPV$ P`،X"Y-%-ڀ O(F#53c:OGN7ѿ+YEkÓ;@+&oE4лf-"rdZ7ڮ2m˪Π BU\y5{TaH;EXJ!%-p$OWϲvPV ` dۋm~Z{V'71ܧ0jt!>͓^:?tAbde?$ Uhk9'nߋABQc4?xJ)cJ 8v(R**VN8iN˲ 6 ߬fUa XeLh0؃sіn+ @6;B WlO.m2,s-cYaPdQXhT;1ܱIsw>"Sod+ O:}EE&ۺK{ӭe'FQցsO6,)”M;*2d3LBZIkn ~,Y|ƅL͑'.yX.k9/1; ,,L}7}NIŖrCݼ%YjmMb2\XXu2Zk1 *.עSh]:kĈ]{ȘP =3g ,MlhHAYm 1#ɇPIXaQBPL =JǼc?vTʙh5OxgГQW-"JA Lg ?cWd]Y|+ g瀋.B5 #=hnjKd7lد!Bu.zɭ=v4vbk;Zi>ш+b 4eb]޺,wye.tq$n)65&|'+uLx'qN;>`[pfTi~sN`OV\߁T7f_/ټ}x0:}\_{0cYR`"ƻj$Z$w%I=ԗwa(ۊnt/P2`[1x[PT%kϤጙ"yh[T,:SoX*u]'vvĖQȞBf i77sFi&g9{PEy9ͱG$_'OՒWh&7}ϓuۓK'Œ~G:R[Urg=~ {2އUś&AeɃЄsSQ#=JAXf>rЦ;NDX4Pme.Nl)=H,uvJc_1Ov S)Zݶt}f2=yՐߒNLg%^";ƪ2,Mـaf$iXn>F tH$3 8p uN%eRG?%g<6* ҵbݙ6x7ڸyOi-e?u /J921 bAFRteK%lf> ;οfVm\}:(ijJ#}_|~B- Vu+;Q !‹ߜ^K솬RDCt_$CxB`;lGP"kWw5=>ճ𬄆Y2}Yuqer4깫ﯜr|҃׬n{$Q.1 űF뢃_3ܰj]g%!"̸C͓ě6C]!!)7Xs9ZkU \k[ҋĄ0o lltf9r$ﱘÆpf1S&TyD@҆3u&| ;E;_A.X$#/Q&!et3Cw{d@(O N;6xbZWiYVd!v3vttvv ~FR$kL:b3=Wh%~@VT.pԃ7LU^AkQ 񜅁,a杍];y{{+]"ثouMQʚߺEoHiȷFhC-H(ɦ:NBiV%0Q,b#_nY)plUb:&9 2>5-5_/Ǯc=^3?N3cC5ViG%H`1W5>Lc1g ,g3r60q4Nf ,Nq8a^|Ey!YfI1;獿UP."/Pje6DzGJ|?SOzARp]ηx 1P!IO^iJd Ė-6v8T#2%;`jjnj@)xDLTM6_g׃_\SY{4B"ѧ7y:,۟+FA>0 *lac3>kkμ,U}X5nwDE;m&{Օ/QM8J'rS`߹^ĿX'Sq XFYkhK3 zi~+X|%|n=B2πEM 4DܙRn[~8 {|7Lzhcݒ0{ 4(f7>u cw샥z2DlmF_7BK_O>{DD~LWK} L/dpb #=:0buBg_+5ʇ$)Mklgq)b}%SO5)0|$aV 5yܱsHĻRJK$0D\9U%= N詀R s*%?з)Âڼ:m 8DL[[HCF%OﲀրN\  sbg.gĄtdc5HDm?c#в{pϮ9?YQ&LJrtkV\@d`1 K="B8{5P>GJ{ho"tuأ5(Ͼ略L6~HݎqȢc]/kNsE)r5`(1 3r^Y-Ba(Fdjl"6ɥߎ-mnj\/82ޞ-_D|FIyk9{D`(mXLLlUDa_-J.4qժɣۻ:1Cjdl-w>1SջQ̴)o ĥQCm#{0rhCzɩGz4eRe$>TYRCwcueU`$d~P-=xn'r7GJWpCƼӍ;_ii`R%( !o&ޏt3 ;`710nioR^S"ut346ZJEп!)+ܴ9Ot?!/vJbȚUIW]X`&^(Npe=loѦ&.}| &ݢbU!0s-QO@S dp  D=[B__Yá" [[ L1oeP9М[oN8_fi.tRq8$9U*DHRqN%YhH:sdM0qaqr*8x ` NenO5gؔ/5njY6JŸY>xwJY(1.@fq@-TRoa=7uu_<ݧ slom0bܺҊ^ː1!*HN)k^r<:]]%{BEPoaB?7 t$I h wOwFgbBƢx:p8ڦ-g`?lJqJ/ ph4ǒVP0$8%5̿A)?~$p0bВ{ `(AՀLo~foToֈZĶ"Mͳr`.!$D 1=K"+cRJBjqmȂF.1Ǽ}%M?> `=/v \6RU.0U5f~D#(@\#965&HT q{0"#jRuwcˋhYKEV'r'եէvT5ֻ49 d\AYQqgؙAww¿s> ef'Ԫ,̵ʹ)}vX1uGIN4ᧇ[~ؘm}/LjAa^3vq uwt9`NAK|q-?IU6NKI`i\"@b/%pe',LveFK[/S. !hwK՗0M &xKѐ~F7(.(Jtgp# 9FCֳt\(rkge5Qy9*ސ"} HXډ:N=h-(g/yO݂g90SKDP_|\הDs3ibh7ov6P!Sf©ysWba>hKBjUd'qV!ǮzL~sjxaT^KtADxWC:#C,rOz<l(ub*6#,c2 CN ] _٥N,ϻl/RV 2q5;:n}7I)DQd0>CPM23 >:2둕7(Z̚.'v'cGUr[H˗5@FxU+/t7%_?n#1gCy-dmSzm_i!:2sM6ı[=yںʺ|:/|`}i \;Y` j}$].|+ `Ϛ4@,zH51i(鷉!ہkob /9\L+|KTad`r{`EY"q/lMRKB-~wx/i\Ke[{e&FvwmʅxVkƁPp©zO.H8"奎΂{^Γ.UD hP [iuH"9p o/='AI*f1Z)Ku!mq2pVX˪S'C]||Hi>rC뼏C>BŤɂ̏‹o!A`+ya|BNяbb,zi(Fw j'6փs.,0#/u):FQvTQvk1N yd~_}ܡs3d)\(Ç VWAXyad/âi`TOZ0WukFEފ `9z,N2}6r_.˒)$ D){ F!J@:S?Nz:L.2ղtr2*{Ubbъ,$UzRŅ3Mn'NJ~6=JJmu&&}A{)&&˓%_0D}Mэ<UsnI՟Y,Ԯ=Rƪ:m3aniv%bf6.8FoS4aO[鵌ڀ^Ds'xkZj럢&~"(.M =M"{y;7T,/[w<>JD}`ȃa @7)Yŋ`߂Q~|{<:c{o:oMsC̹LЙC ZR7"IÌ(uz77v8Wzެ1ִbwH'O4<'B%YO@\r! *2g IScF.`=)-k.֤txf//[I_BNF0>euӳ8i|YkǟN}wƺ0jp8mS\p v{H7''DvZv v{5( ˨4隢7L3joKG1>5:@2bP-m '0FA8,WL($ܮqt?BدioXh"y2!DnS*ŲnWK `婖oΝZZX`ȵ}c3RpNA%Ye4,%+rf3bOpZٯjtw]mlI%Ɏ$_Mbl$fP bْbyV"v=+[nG){aXl `JЅ-Vw ZD-GY>[ehIV>XSl$dg4QT"Q< Iݿ PAVa{ `6%\(.^g'A0$*0!gIWKə/zv[K˭Hf%9Bd+Qr3 :,캖,-Dw/ES s3R`J)!ʙ@(D:=(h0/ ޸Kg+$tE4vBJmM`=I:"v;,wW Ḅt-7]-[GnXޅ̶/1J jHIJ(FhSA%3 ؗʞom@ML_85G4+|y;H ^Ҭ^ R#9Z"¦gi -/ĩ vw;lωFC]'͂WT?(@Z%RAX0Ϲ{]j| =NRibOq ʕVߨNݗ p xE {ZF#tW Ҟq[._v61 Ev?N}R~5U~V, tk;w.!l%؜O a/ nzt;^׾lݪ(U>hL9JJ'V^6=ƽ_J\ٯF"id$ ygrp,)DE^S@$K-h]jF͉Th_7|Of+ԍ;}@AH Nz2sx u X'Qmq(N|#.ETIz .jdh -;&7 _Yu W?ʠ[\a4ppw,0<;:g!\vi]%f;w>Z#J O~ʼ S (^>SthxnMT+Fٮ{m M!3CC]d>MJ w)!ILqr;~gmڒ%{s9,Ty":b&_}s}Oֹ]zPWqLLl rYD=yt5,ѭ{gIbd < 2cA Wx53DL՝kNޘ4!%˦\xq^:P\{T|3 *?֛mXQbd/[OPOM?Ph^*R6:-CaN^a@6V9UJ)vtL\3"Fцhú#Oզ0:~w7`)D@ލDc '9V>ildD1SX6ʩWj--/ uGO~]Eɝ1j[!)FLu#Yq2{PU Gjſ""A0#-L0 ^;3S^Dh22omIB/s2(#Ɛת9G{ YwIY&aA;d/ o7P@:L&GmЁ-$2)K{PQKЖBC:'8thD="_ؗ5AY%.!=0MQx=C)H. >]7Xb[2/Q!P›(Y =S: Anr9EN\A>LJ^xq] E~l{H-/03F+Z7NЗ2.VtxZCȉ d$`(s1}3±EuT20WS~A$\T\IfDr.ہ3?M5!}ic/6 ۛa 8uh`XRqTg-I:@-?+ 0 w{ۮd'k0Ozl*o}mL gpw.˶&RA(6$L$sl$K P,iR~zW^g(&ںB-c`R\UDIkV= {G⭪šw/#'HdEX jjSc[8d`"V(ǫ; gy-usQŧ~Pղm\ï>ivE[Nzdct} < Z 3(u^ܿ"t7<}G`[< .6YLe225Hjx b|\Gjxcg5`{O.\֥vT:dec[dWOv}}C||kՙt'k5#1׋Y8f–8C6/qr? @9#gy̚2NEM|Iiy3ݯ4z;dR>2KA=9~A|0.rnH(͹̡CY.=*m-  Yu7p>>!<Zjkx>d -~{K#qKq߅\G0Y+EaږG+$-flJ30m :C'@ HVrwpP &_0X1Sd#5Y3ҋy#-Gz]v8-a$~͘A9.WϘ ETBX qy>EZO# {YewRMz>-88XQ%Vm<)aG)˩풨%Nmgq}/w~w޵gI)BJ(PT.W-\ѱKհ&@`3n}EҦ+иj*/ $>Km}/7<3yN|^hu \y9=֡'w4卬L}1~Bo%]#=<:?NYIP!H΢w^u>V6ni[=y<%@PGhDmwX4d+96g=όox(g)$-I3BЯ.۵4 4`[/KIIS^!c邪2d*dpddmjbtdiJ#P>.U‡So # Eivᥳ-Y&p-E`5.4z%^˥Qay69 *v|PCFH-rlX?H]6D^]H7NrM3[R 1_1 鳔b1 1TMঞxn;?H޸wbmC>;ic̙ytW=Ǜܩoiju!Zq>+p,mHDpŴPL-J*V*f6Z+;J"ڭԪc`N, ds:wW*jt;Mȝpt`Y#gsL(a;TV?a=8+ԣ'|qqDNNl<1f9T5Yk o+B[_~qd }SLSkjFAgǢS%)BLćR85W$T%J5GP~HK~3W`}(荡6ȋۈBBZvhQx ޕV Dni1?k!H?(%VSZW9CM޺ϧ%6tʤBW h@L_3\!,Aq$8(Dr լd}_ H8TqON}Ё՘HL -ʹl'”ugp]-qӗF'Oiwlk 1Aw~6|$yv̩0 l@`?+roY1wo|!en&/g`^2 Pa`m~^7 HLuuJG.K]""  QL\A ;:$A D_G05jSA${X&h7Ob)SQ9, okvލhi/8\\(˯rrf hAlFHmSE3_lps2IakhGй:p&;\ 4Xj T orM K|P%( '|7&/K?&:3wKmb* "Rx. $lmQ:P6y >a/jIS2ULNj,ŭN.Ɋ*P)QFYcGrGuHFwC^8Q1Z =e6[{wZި5^Q{  5Jee v׀]F85cL$%RJ*pUn;-NNVnW6CFujRw9 4v>E g|ꎆ+"G>iw᚞ex'G[ɵFUlKho:eB"eap ,d`:vŤXy8{#@oC͉עr~R7V܉G1hfc$ڦ!=غ$HJJb8GQ%˂)mx ҕM. 4zݰⳬE邺YJ@F= J7HWӈL5s:\/(o߳R*Wcy?i DWqX  Ş/kE}kKyBNh}O__C#sKehMqiA9to"Ck)ڨ%a*XeGyI=s)(ksՁu .H=24S= u62byJ lUMdDZYt0WdiA8\Q ކiZ2CH ‰Q37HhQhO#>,_OK! ~1;dU6˧~@;hѤ%Eb{^XI!8g <>":F :ȣS6mB(O>p/ τGQJ( 4]fG,:0AVsumlͪcгX B.L-YOȋ#dR?g"Nx5Yod3橩0+l6BK/wܦ֕6l* n}Ox?tP}{1;#?C#:>Pb?`7v1@`Vqi|[=eiHn YDnqO[A FOniYm96`3<+u6$J82sp,\>c fdर!x1}Ѓ2%% Hx캴 2fyBL N&:Qw:*{,QݥS5h>t {FZ޻=L z/##7 EX>"%]T^D _R?(Z2Y1+|OG}*YkԹ,ZύA Ģ+& $~hG ]:ׇEuL/=$nzg $m' x+{H[lf_ bP2`}s6+:F/2IBojWoN*Fq8,n cทhNcTML9ҲjgE!AJ3^![#rџOV:0w&ͨgȾRC4[sR. |H9#Fa C 3tlU+la։sO<}F[TA};d%YZ(mR%0 rhy]1zp9"N>j5 ^Ŋ՚  }L"|cʌQba`1g.+#3 ݦ.ҿ\\sSr̉@s]j%Ņ"Zf`9 gRMʟ{hɏEDGxHW]OjH:%?p!^[q ؔt?i{+l79 :|@ҹ]DFqd n=~4,У|g_TQ,߁MWc=?դ`XV4mڥǞ~wI._'Ӷi㠿.8x̷]5+W'Py^-7bO c彀o}2V< V] nQ妥wRj}@ks~1imъg4}㈤ ^DwTR4*a aG:Y>~%+/ȩ&ǎÉu2[CK:zߨ=.W!W"~!J>N>6%=MrpJΜƢW&a+F!UoWY]"/dH^I؋HhFNĺIL1 Tҷi_NG,7= +W:l|"*e*oV{( {["ekzy!`|꺼ZcS"[=O9m8j-dUnyPV!7!:k4}~Z9CTv3od {$rY "YyQg ٔ4ox^@}ba lhm!R[U}ɭBǾSd3Wl#2+=)@eRCqP:ة8J"* xM3>r5gG@n)QFhGgp膨1PˇOTU?*,j cOx-MVˠs:m}9+O5JT/ч71.!pǝbOb) (럶t>Q!DP%~yo׸"`FaL+)|}sq ;J&(?@#{F_}h>z#.[W:EWB3 _}y|~fM}L)O*e@Pn\Vŭ> Inv-:D$Xp)wܞ;\/@"uvհMU!2ͳyK@-IػAީӲ f= FjqSAkWbfzA煅Vy+kjl^Iݭ|yB ESm5xuu?ỘZG=;W!o7o2} qм*6Pk錂4bFMOOZV@Џ;Y(A7o s/e3gR?Q>W0AGO`.%Kl[.6D]4Q&stVT<aDFFف%Z -/,~`jI5V;V  Bj父0t0Y[12ƪkSjAWzOw{U{e!$X;]щGKg8~!MC.3kNj/Ѱ4-(w =m[{g4R5Usrx\M@6vد= !Ύ2,i=ܢu --̪޹-md?eUFAÀ8tig"8%.յg(!L {X'E3静IKmA a-9AB@BoqMjtlS[YE$N+䴺֔kۓ (lɑ.W%.&eV'\A !GB$֔!}  RD g i7ޔ%0K DW'^w\Za!uGUqvVDuoulz" 26O95Vi$֋ޡ j j݅ynt) py8E&pdvଳkTDz-iC[+ܼ\*j1.K] `2;] kCsJf`;s&; Ӥ^lp* " @YWUdVt؉`0}_ϼoz? U-Q "s^ĕ^T#YѬIg 7IJeg5l2}}99lu _+#f]q֩xv?Ep):9!AyJUD!ɠ1b6lDߠ_إ {h|eplcMŬNeAoo -_w!Eqf'E"yC:t.N(El3WԄO_ ,\RȦz{[NvH@Gw{/C.JVɠЛgݪmA%2fUQ5_uQ t꿔;wYidAtv__ۼAy}<b},!Vm6K]eX|b !n.4DSqϚaRU󟸑ULYޢQġfmtP=oaHF`qM,qs}JR1~ 77/#]W3+ubpwm#Їl Rv$ 6V nTn;~ p"1x p"&FYpo 5Etn[FqݿZZa/gko(WSf?Yc?'T5-22 3⥼Y@F׸7!%rLWXT@eUӪ_rÏ'PuvJ5Wx+W&OZ$0v*#,J\(]{TOݺ@h2 's34w'jepY]LuS]Q@0naƔ?>Ilc|vÈr&ei#. ]VqQ"6Ƥ\`a) qj9g  ז܄Y6q(ßI8)&HaC"C9$;<1KqJ0'2Zm7LA*Qҍa(MaQϨ8|tcWF8hl!ʪ N}tб O:{ȍ(&ЫV&gRX¡mV6JR)&XtOсaJ?!l}BbusflXTc(SQ>0SZ8s) geVl~t'죚(F}"*o4ru( &&f@$f0^ nVu^5_7d 7a!Cl/ W!_mpDT/]*~2DKWtuU_ bbg<ՠ}bs]مm 1X54jFOd ʰ(G 5>f[|w N`n/ ,֌ÁE3\G|9GxskFv7y8`)3dsM Wm G:2{CPZH.8Ss(p$ecMP-vq4|هԅQKoWKųԅ0;ZT ߼VGeg6`00[, )H7 r6n$ U~NS,+4h\0|u%D/2[mBRB 6, &ctL.JkݝY&kg*6ZRj'Xp5W|of܋B}Qz^Bdn˵POzL#8n Bh+wtwjEu*r}Ge.Yvj?)5tw#vlk.m3U7ζ]::=\y(QUh{(@?v)R6VPh6P{gdlb%T`2>ggg#TT0HStOU,'[ Yw&N̽dQ?Y2bIc?':7~3d%Dxؤ2,CIŀXSwBa;]i3;t[t{I[j:Ky]U1bhcGc\Bp4Szh;u]8ɈYsڝS7\χ'9 Mxi XbqdzӃT=t bҷPfLJ+aAUyǡY  ˤN<1oWaj†nU o4>Ҋ4Jw"b @B?X^G?'bjӒĉm㔠Ofp oAuGP;6與CUW7VOP&y靅[e p;bwJpB\[v]XtUKBpU&ۖ2aӿR*\|UÄ)b?8#Fh#}gtNȨe?"QP+U jf`=|">ućF|/Mٖ([3ÊN1㯗OuC>?^T`Ts@-'vg=[PaTɃj2Q0 [q-#x$(Z-]{l3ݵƀms6oDLR} )vE!t ̥6g^]*niN6bj Z 4 dgz>n)إFp3ahIZ6ok,fL_VU/_é}g_'#,U0m]gTheo 4V'y>fhEoSuSiGâ}WSU0&y~s(ab bMUs_"^oJk>m -tqr w@@TN*6;ys㰍,~4nTDl7cen#Ʊj/͂-WLM>`'.!ͼ: pAEtkUՎ RB&KpT|:v~(F1R̀ǐ)q(K:U7^Ӹ/)ĄJ*!o}V 2DGg'RaM__ L!`9wYyb˴{bL<ӻe/nAS9r % 5ye{M_<>>>*n" ! q3DBköI?PQKYvCmcUڿT@^xS}zZ&P_ՆZgh~׿_8[9dqQa ᶃ6䳯PLi7JN(nAc]2ҿ0)G3xԌ{)7_TVmTo/C5T(=&1]ki4 WIab`ˤ9 .aPf~_^PE<-0G7-QQg:̖`a]I %6gC U^ܿ?­JQ3YdQrVG˅6XZW Mk=~œn!KG^$uZ˞rtrÖ'ij'4-$&8=A-ǖ#8)= ɴ|F'+['`ދPl+Z;6K}ꮉɢom 1,:<8M;>t D1nĖϳwM4+Tt.: oziK2˛~AեqAϲqQn!6[[*nENћ({g Xr k<)OӗAI|]"ΕM^"7R~Bv4r.}EaN^2y:/M``g5@u"vtJ6 7hgAtW\s$l ^wL$ %#R7e%3w~mldN'1R  W8]陋9]6_mؘlPx_1)^-q44_f4!u02W#7Mq}6yEO{;U;Cԫ0k }c3Ⱥi|38=.)1 !+з9=pQDW9]kʠqNvO4_% u;q vFir` dLthD&i\ bۏa읷" ? ¼I6X 6]ƼPސ L(A0jJX{ :3m$,mfJ^M}uƐiE g(ٖ*Z7L `q`)-Q~h|*,Y` M7~^ers |UB@fS/ǔ8̼(|}"iM,̈́L&HCwHwhD(v=Yy+gEݸ:[] ʩ w7uK^CDolQ#]FM睁S:zڿ3F5T i7L?ɚA|_y#L.K&3\y4g PS?LЫ J8jfz4JyzNcEe|: 8}wu& h@4ǙEǐ ;_EȗJaqn0p͆heD]+6 o4ʪfo\]hY.ugw;"];jK 7t;V yP0OFmKS0c02L]2Jufʸ.qfr8 ý$j\[&AlݠSX}bd?.)m9Q,¼;Xn?00>*V 6`{u<@T <.NxD1dM!#D`)AEؽѰVOZjl"Qw7Z&:+F9ϱ2 p b)~IwH7 /4۬פ#9Qf_z߉ /@;*#@0ɴo+GU/ `+h'RoǛz M9i%ع {vPDk~ s9`(~ЁUsYwZYgM*}*T=KΦ. gUROq}+P\9x7*$S&@ys9J'apc_`p9Q|CdaQAZgs;vۤǕCn >< Z шs;jP;0( Dlp_q͟ (ShXЍ6$ fuQ!B٭򑍋oWx v%=~1硴GupqsܷǕ4xSfd-#k}8R9 D r)8 OÍjEN|oׁ4&4@nǃ|%'ÙH#S 9q )  2]Hɒ?nuKJPb>_AsJm4 wB\mٓgq6n!8/w"lu *L1G,fƸ<#ž +Exf!"¥8ԁ tnuf.%"6+O:iM|Z|C!7vu*n|'3ŢGk$(ܟ | D?Bܙ ?,Ev" upn5z$;gk7_~FfՀL!-n?&YIb&ꦿw .,yc}`qmF*k˷ϱQ̌7:$Lr._iRZ, :\+p'H[)Z~> HWX{m,P*@o4F=OeS$($drxO|aH6kԧi&3nJŷC3ߧqƦx&pDV+|:_Г1m"u7뱊ا٣noۮ3(3Acm̺i9|ZSv$J {psMuNFRwRF'+ucT !T*Y Od Xej GEьg&^)>2٥ܬEE̐M R9 ezudYA\΍E˸db|krq[#Ǝه5 BwG%6 t1y2=iI⇎b d(!zFkBs"NU3o0|c;M o؈Qu.rNmQ)PKWG0SMyR- N3O?trTfB`}"(֢" g*D}#q>ƀ<`LV `&g{\`a-gs(8ю)_<qb@h5n – ** ]T ǘ M8z\u:+>QPbE%%UO" iPPIݓV֖ю魿;z \v9?d`%"PĿW oG,ߋlZ@:ܗuZ湺gG?o'qgH#*1 VrO>ȸ<ޢè7F.|qwjڊu> me ۧf񅇖e4paǝZ:Iq8>4`UF]Õf8k_U0M8?`ʄ5ş{*K MQٰuWGq nbVdG)]ݣ"o)[s*J]y%$ƵR?ȗb-BT3`wzP<.jLRÅYƾ7 }g[/Şnh~iH琐syL b&gFG8U=`fr7bT~MZ .qqcBnjICaA;4p?4 9uLz{@$*ٹɲ{TlpIT[`_U#y=NUd$*kg(ۅܐr;B|%H ~Wengxk]_?-APEl"m>d釨KJAT?۳\,P91;k6b_]Tַ3n4f Uu0T F ɥP]'u~>=TΚ%cҿ|ҷ8 ڝ\ 9-A߅ޱtB߄> |~W(:\M-(t˫RlgrʉK,ԭ+􁄭 )"! Zn9u֨%>g Sڶy'J՚HK:3EI_'AN  gh3}n LM%78"oJЖ?? T#+fܻ(5!,WpRJf&M鎔 mYAQϵD:N@5(l$H;iCM`ql-Om8AnH;}@!7a"icqѦn'wP4 Uur,N{4w l fu򮷍G²k8Y!ܷJFʺ9[|  c.X@6yиdr1|c+ j"˰fHNR0\YzbfxטC][Mk<,( Szg.{E32⯺,kFI2d€YAgHR5DNT=+>O\q4aj% dm8`~K MwoySۢEK~9HݚTVbX]ҎCIJږ߳^'YG& u]nm{ `#a'5Qmz:lw.6d_')Z1<_g"bODWSrP4T37w-JReԏVՁ|UX?xUcQ(^7$@h$|'if-NbD ҟ: 7{շvhVR>J pz輕wrZ#194KޒZ;yOƙQԟ͐;xZfqZl/  P a/QG>B:N9֭8ǩ⢆s~ݚρ?z'^Lj,_z)tBD' |~82 EܐvuX^e=?9#DLEɤךi.mh+2K]=p|K\%ejĦb.dlT.Le[ǮZ %|Sp$zŽ\'-6 ~_hm"k ܉K% qc> ۿuszFI@ x1eY'3:;ˇFS49 tGrM\(Vチ} ;\M6mwjRe%Z0iV mُܢ`!X]렛. EA`>8,N>dO z&M9VѠWA_X~櫻/#Vr{()RMMtpP"K§7.z4@ }}U0z)Ui9n݁|r!P hJ1Ҍ#8d1GAOI"-c0FF-H̾@ /D++xÞBsb F h 3QhGO{\(̔vm麨% m NN=m ~60lӸ^ԷoP2:)VPXnu)95tH`WXzdc\Zno=ʖb_F@)ȆȲeˍ9˗ޗo O1G<>zڿ aoHȋꋝ| 3Uӏe"oV³-]өz]W'A[|[Z[0T$\|TZ=f Ll ?/tiQj_õ+(: TKʋ-syTȬu &T2;(谪J[9bU#; Jߜ] gFur~X 9Xy402FX>[8~SIk ;[rYKΐޯ(F\0Ѡ^tbp؋wY 'O&{JGb(\]vNJ^MQ-ȨP AA 9@RKudVdn'iz-RVXE-L mpO =6絻`\==ѪK7 okrHtL\Hrb ~Kӛ(jlLWppc S!jX2څL{"2uvQ"쐹@K/P]l[;&H⾐xۼ8HT"W9WӲ0ÈL?V" դs&2Aqrv^ҚaEmN^Q\zaPQ! RH4Q<|5yzFmkeMA; >z;7 |#<:5 8B IM;_xtT:m@Jg-xpb'XJ3 L&sMq2:lR?'n'fP=g0wV !1懇!ʹ/*I^HޢyգƘ#;ײ?8@D0;oV%'[Ϳ=\/-cݻ46X#Bc]p{`oc ̀'|oQjAǯec7:i/#ڛRaA0Á_~ gtFV%#~' QA8U}abRrJ@bPԼXVJKEC+quiD-df~mU,+w{:gFLzq 3W?,<&i`!iL:WHmn(}0)ޫ |md8H%?Cok˂ՙ*kdt2~fVHC{0WL{j2OZpJ5SLb #׻^ ߠބJڣ1a'XltZED;>+?O,?0G:|!@`JОC5]) ʮRae3Lc-~a8JA嶔,AR=(n1BpEXG`ީvW"FO9Xa{mPu˻lz9 h,> ĿVgEYp!v3&h99KDţ0dٟ]" KJ¯VH7rc=3m Aư4@Ξ8KKn9$AQ ' {qtpJR}ז7QȬ: e۵%,0bv3pAmZMw-cgL+px_/ƙԲ 3;+@kX$癹-ssfS9mx%ʏ}a(q`_ۧ| QΣM5 Fb%:^tLp̲_4K >1tD sw^${$&y)*#><]ծ &&)n6GNn2u+:NA߾%&nmHˋqjcM M4,b)aO0O}z ,APW${4#2D~t[⛹¹;t%2@%2XioZݲF"3ݯcrdč$WǬ ~fưgYG$ZYk[-%bZ mw(Vĺ"=pKtȸ I^mB1QO~9 -UB|28Pzbq3 ђ%y7dDI=eF }I$UXLTFz*9LDRf=w"C]>|.؇<S@8TtmoPߝOoձjEBL+d8~_4yirېt5U]p²'Y)O h'T?1vqIܪWt9ßǒfPH.IYGlzSsk|0:A·h DMw?(QrHC (mS2i9gVF5)KNBx=B~A܅S!9<̅4,|8oCW4UDL2{w Qĝ_80"DHrhI_J@%wJJomJb6* @-a^!lZT+٦":3 ge& 3"^<ue Xhp\'z!tictI֜3SY^+1H5&0=Ր@l^K Vmld]C pO_^^F[ *3f)ְ9hU%EquD(cKK{kg@ȕbG콾QP EFB{ްI PM<,^I M}m &)+T-2?QLZuAARW#X;d8/23֥dFGCX9u-( /S2mI V]9[n~,;J%0(ٽCrX}3f4/U{\U{=!|0)`'T\@*LWHK`xbL&BBg+7`@ Z)WyeCp؝EVsidFA@TTbđց%tBXeƵH~b!XGV(QNw1d3]x-7b|{/ˬ45^oD$ml@<}-^[;6@f~(Q";+s #˾kylpeMj7|YCغHKxR[=! *ɌS X~gfX2Z ^dŀ_,`3_uPDW@ޅ[[V0~&n~Yc"y" ]W%C[J\_WsF"tzeX xY|AP~f|0CwUKۋ˥Mc;ZU… I&ŵ? |Ûn͇{P0 87[,욱%E(6&Hu`>hé˷l4^OBdW c?&>jGI]sm `yPXm'u{x7VX9E/MMc<+a?ac@#xj*= ':.%9a|ѵb=F>GO5 wy׏Z{YT9k}4[C+GJo ;m--)II$L:ILޟs:U/`Mv ѷ8L!V4~x*BG>gRM(~K AJQ%هΨsjz`XTH~ ž=qr؅dlEfO~S],d2 !s"xS@W p]KW s#1x̦a+Q^rFx*<0)B8}&e!v/Աg( 9s,v!P:BHAu'!vi{FcV!Ph%E a0a_\Pt7r>-uUjfYLp9!yin]eH9^v#Y lC޳1a'>"l 81`/M?+5ݜ&گgvN ֘yb}vޅWsO岱6`I bbjL\!0bAWf:-@?Aˏa8c0(7#s|+=M2dƗj~ xXh#mMH qN*93&qX|>RPQ_tEf#~V` )%+\nkN`]#a8~Ksoo01#kuSeRſ7M|ͣY|!:<K!|"g[O$mY>_܉35 2Z<H;ºr^Fz^,S%@]lyV!RKS(CN N&dCFW2#A KzC@gx5UO1+ 5aч .˪N .AlCHV }%&"dI*Y8&ZN^m]b &4zޟqWA6hK۹fs}u/r{{ rrוWGGAn~-p[<]c0"0rIc`YAZ]` {=RȞU)$C_6NI4v_E cNKah*v^)M5No`vAw1q~-|N3hdoP-QȈY8 ݺ GEJr54IDǾ{{tԦB(w87e *_Xf99Z;cM > q/|}A@@dC~ϨK\f9*}̯QBݪJ5-e?/G1r0A2I#tPfj⊓8;0sꚟdplչ/"+eţ81Th"o.ˉA N el1+=XMEsS}YN(סσ)1a@uGȅp#<9:mwI, k5-nۈ5$FMMѐh8Ǫa]BSk'^:?z^[$Ubo88aQr+ZѓȰĺyXQWUh%qmzbUH60;xnXŽy*8\kӜ-ܛ k̎fpfi"zZܥϫ1buc!#軫fUOFBxE(G^@NP̦7=~}? laZ/,<H4=%=0N"Rv)d@9}Eq&"P1[u DZ@#rYΗrF3ay{ij~X@Hb*ɌCh?:<pSkىcSZ F L2wXv4Ó8ftSpgؘ9>WnCXH)vy-=waƿ'HfD'@1+F }lmr ΣF _$ION_@=2F ?D$6B2)jB$C\.kM qHPG]~oA>65fY{ qJ PiSg'1HW0a?ǫ65ߪmlوu'[ˬ)\x.牳)k&5IKsBc,$|T3]x+4eǭXAGb7b70Cf׏8^!ГfEQx!y: &ڡpe)Q'!U+rq&2!R\ar:']SJ9BmTS^1(~pta%+nf vkmX_*1mz;?YEtl*k?}F,Z>] ;>|YׅII[8˚edʐֽ&ޝ^H6)&q)~oePkj;h/=7cQ7S7l?ͰvQnmuu gK5VY,ji礵ԙN7efÝ?;&wg u^˶TA'}I9F=>$= 0`F򭼰O3|r禶RO17(SivZP$2&,qG7ay"ذ|b[JQg1+z#u|*7qΊ,L]e炯">`?5k@b߮ZzzE#> t_ar?UAW8sW%Taim􆻘3go6gr QXJȀ?q>J|Oر~Ẍ́-:>r@Ύ2[n2 utٷn.OƩJkn5Cu"^ѱ6=-e<#lUK@ϊLmr֯\_̴~δr"_nSONAuDe)n%ƠF5Vԧ('>sc\v{)SʙD _=H,;@_\WoBV3Naʵ @N?0+]?htI_\gB{!G?{)?AjMM-B6ijijҼ^=mVg}BfQtr*Mf~a DG-난9q=U2j_EZ0&T#b~w5)6p;$ρ6CZʮoOEoD_ xoh6V@7T[1^6g_g$lj_L)0"]N;X+}0H 5:.Y nքT 2v a.3oFDVZh2)L"]1V4"L!ق{lW:$qx`'zWk Ņ)[PX Xq.fLŽ-;%B]$܌pF٪`QXd~N6g:+$TJ35cHu^";dMexp/H6%x,3sx!ETʫL_K:2i>'=J;T>8{ t"#]bsd+Žwqr~ܰR|J=[n*ndIt Zdv9 \0jHI4Gwr 8m xP򯚐Z`uq0&m7{7Rr]ȿ~-CN^ 0̖5H ~Tׯ-'ZcGA/IEOb%ZfZ4ͷD̨=8 fpjSXm+ [ѩg+bTz]ϫ,O*՝".zRyYq =i,h+ce_<׋|Y&!ϫ?D-VQT&anzE [ೊމ+PXzn_gr(&X]Ykf.Ts[j)gbd{Ϭ;O/Z!T`pƂ~Tgt=qhܪ1(ƾJGb%X"t1]C\AW<I .7m-h|4D^J-uo<,ktgI90]A f64E-X{("jI7I@RS .~y& Xz"d罽{6)og_7^aH2wی&Z'3.Gٕ Ğg+:X]^.3̰"I]w|@avߐks> z-1 rQydKYzc=BxY39B յErE,S_[#MV,ӈCz|d6uFn'OGCaD\GnSuep9C;qC8h.1føX#6(zQ%R]s# 6\:*Kɫeչsd LPOB5!s3+{3{#7_m-hzN!o QPd@(+*)0+HN^DLԗ1$Պvj4IȔ邟y嗄Y1JZnz4 :zGd{Չ}g&63vx-D%M`?|!`@A<5 `kK hlGs#\HԾ7 :2 V踘F`ʸ|Bi`M67HvpK}jߓ3p/yl sj`Ȟ2w'yk2VhW)xjE9ZzPb2ɼvkωMC&Ik͖4of$뉽I9X4Xcސ5Όfo6j܉zR;:P~|x<ͻ) 'C;u(T<_5ՎIIclA<WVkha!7Әo"̤-kpǨi0EhN0$?'YbKP5+Q;hu6yAUC.A()fTF4 쇷 [ćxJ2&g ƪ])ņ֜|붯9'ZmBPW||G4,hj:v>83~Nܵ c4wʆ\!+|kd'z+0Rje 1ݽq6z),G7cmuݦqpq=\zDJs ^ѕZ{E"Adѧz$4|P؃TU9#n!/hkkgks\q5T- # |6>9/ 84崝?a7w-9vS4;dU\69LBr;@$)n+{+x ti=.f\#|ws86ؤ*reƦ&-<="@ -s87|5Ա\q2˩AHC)Y#O4떲| G)*5Ǯ4!eaPk gS(_D'箂eWxhlGmez཯0dNvm#]c|_a6"A۝rwˢ v٨=D!40F$uj|ПT.Mߍ עf  U̱u,V}xe/$>W%p7fO;83n~o'IF;Ky&˙{4p[{Q& fֻ%%"=1`LoAat\ egm*:(ψG\}c89b@Zـ9zv20g@dY>i6@F#@9є0ް3nOs{0]? _w[Ə_ՠlYU]V|A˄jVHؘapȔ Ń2}m2&Gt-} h+6{11C$g,5<+ %!4X"kݔeHo+D0Gi)IQ`z~pvz<8&?ޘ檜CzZ;GW6 /<5qx *oŊ;u5Dv/W1H-Z0C|we$(/2Mʒ*~?)&&rT ͢Ƣia> .pxFd_IޣCU7ۏL+w$k#L9C(#rv]Edҹ*[[mg uiR)l8clA~O}٩TS~zTC.,O-7n9&k`> ;ki(6Ba {[[ym{*ߑ}`ԼIݏ v7~.𧴺te/~ۮ@"I`>Mgu'0ixi6@3%a"O De|&?̐fA䳺S$ר,XO9clN6w7:WDq3+r%MCDMk22ӱqfbi Q;<*0om^Ɓng f!Z`>t?pҀW&' {NqJVn/l>39QαgL?%O7r/'/-a;a=oy@L,zGǔs}]Od ΍/57yɜqN2Td|3xTTA1K5ehCbў(ɠRt궏NJ#]M`MeE7; gZk0H]EZW*M(m B3?̛bΉ /;MoDC1&ț ^gQ-rq[&pJMCuQ4ސyS^^G7X68zCɃ B65+H'ȪS$Fg)lLKs=R8WǂH' X&"7\كGҴ {ai0iqx>n+qRsڡmx*7nȸ4w9NX ŗg[WТ}հ <;b!މNWnj{>`M5rtЈR^vXݵW/061#geLhO9㠡Q#)+L?"R}l7Q 7V8~8;/DjU.1$$1pH/`FGQ?';'0B Ez(TTa`J*rC=ghھ>Ä&æ\#Fx8#K&p?fADdFK3+d06g;[d" Tӎ~n8߁3|q_\. =眕#[@ |;yS8=Uw\Z_@|a} i;%s={c6p ׅ(;NbDq, xNOXT -1p7pz8^eyToq5jM UVwiśp/Im9 BG5Ta>&k\c W hP,r̞.{yteHo.4S[o@I\p,Fay>h@x`YQ. eo_ kPXGF'Łs lb`xkUfO)Ho:'G@;/bᒶ.wKvNjj,Tgwr 9J$Vg~0ِPkG)gU?mي.[[Es|o҇z̟TA42P۵^w;bKT ,G:k;c &L婄 Nʠ/ d~$DL8sm<$W3"t]a獈qBvAOq'춃;gRT|]Ȼ (hB!A_n@J*q-~/j&hmVfN"gzỏ>I̝9m}_WG- 4awλ{]}o1swEJBCgatJiI5(Xf4:[P8#M&d.Z{JaФ$!:'&ufbP+;϶FkClTq6ϼHMe=Kd2(?F)+x)wg]H<RC<퐶?Ƹ^ aM{]g MITQgIϬOŤ"u/JZBl~K;W T,- Cdp/酤Y#;x9I72s)֢`4wM3dFgMC W0s .yud#$G[9cV^ҴȐSι5Ys$?ni !D6h=W7A-|q$@%Mےt܊#|XY,NeR_ǑATa WXNӫe\w] qn0ĥ?3ݖQRbloЄIq2B;s\: : ]Ý=w$H)4dŠgH;MP__! s/r4;_a̭_ gJ c*Cs|!$tҎ~>~|c98P/ti KOʶMEI-:{}gڹ:tLR`Nw+3+̅̿|6& n 61Q aHT7Qqտ K!gKeV%/|%e<8wG5K`TAYÂ`(=cũQ!?fiLmΞ+0Z ΃·؆r .ruDp@Ș&^8>,0S,% TsKҟC\ ,bd+}d:ϸA5UE+?rՔhHGJX\!5<4Vuǧxָ[RFێnҒ<^:1_\4MĶN[Au {yB.l:FHL Ke"wK2WhP`,ߵúR[_|s8=Cx4k- ޷KDKN1]a+F?0^С'?AZ?M e{_>qs0NAgKOƕro R}̉?4dH1 -_5oe7aMfyzftº h`W/dv撂?7''TR9L5nTlW@1K-JTc;Pzeo2", t*{+2)D7iTE <$-Y0w!mc<U=< dn;NLQ"ȔA>smVhnPz(2|Y#Z_?MorAb,P"W(nw?q*LD*Rsg>(ҾU{sԻ;V86۷KIj܋#yDL9i 2Yak&p31Bl9ydN:jf2nhQ]c'Q:ˇ6mAP* DISDc;0Pè %-R{wSwX/cśeaI 7͎ &g5L|ER KL?דP$LYlpIjٯIeYJcɥLA*!c| {5qR")}NU YX ɐF6"d3ZE|@l4 :9AdiuAz3fQ I (.}67%x̭Nv ʣn28uVCo7 OiwL' e-&'?*a ZEGHÈYWlV~~G kaB~D\-nY(('6'WC/ѽH*g҆P$d`÷JO7= +H)2( W|Z]Lӎ4u`> Wv$qYg?g^{.vR5ؚ)3U(ތfn/k#̆zM ic`wЪ,&@4LGjZ(wv'nWb%#(2[i|~u(x,vw Ul>_!ein5iYO9U|sɝm<*MgSc$ / -q5&k#4E 0Aۧa^? ``>̋#85-=U,tI uAqY B$UG:ASq-ǤGE qud'٫/ /y>vޝ_nGzV}kkDFl;Z[d(ɢnhٿ,U t/S/JqVMfc_ΪՃN6&(P̶Kh i^hީ$Oh,к3a3 %'Ty?B K:[Ţ@U;emMEônZuIP\.тuD􅳧)ԐjKv}qޖR/xJBRisıH9YLlEկ1hs(C)=_FV<6 "<="T2hU/6F&LykAպ|wJ`Hxw+c gS'T#r>HjpNM J|<Zԑ4d9ъ[s:V%~)SwƖ||Җ׏->8UZA5&HUxH_D KE6/<9[a^h/Mv&$3Lؤ.C~/qzpqn=~@n0;vp}xd:1 a}ҙjҊ҃)+ϊ; rTr^gv%l:DB0r #k$Wmk[V|7E2{iégϦ0蟘gvL^I(i-h{ƮyJbgQD58$%؆"\t=צA"+B{HLBg,yj D&O;_;3DkJ)-ߠT-W1fSwdJBP:6\\x=p2AssȲOh#]|'u$Jٺ\tY7Guh ®!R&)K}IN٢'uӶ6}ušTuz搔yJ=BXG>HM' `=/[5hCGuB%UCTW^-Uaԗ"p/8jK1 p#!97DŦ7֑RBA~ʋ&F6~0&}E(LL;2m#xnDn se2aY1G%JiK&'_bK<ZiӐTXߩVdJ #Mr5  +nb|?%!˒O!oimʛRijSpE0⍗h`6-"u:S|NDxcڛY<4(gtǃ-d3 }^ 8mcmb:zaG2[L*gCV.g"ް!vjV',3pnV3JzidʏBkMiᶆ(;Z403X_r2Ū ;qm}_bik}A^]\DK:񭍍_m` F̵d$;FυQAN"\x~ɖڋFkٓSPN憬;{j3G`nNAm{gaCqJ'P{l-c` 6{gOW=Svb^$j̚)c 3)l ^@JO̿<ՍP'F<* Fˮp k%L5{Pf͂e;1KL7+i88+eƫo'lNڔKu2YWyxy' ĴWqJ7Ons,KRk7`;)~O _2ӵ`PR:zgA+'QSq7ΤtP2XxNll1kRf*B˜6qHl-7v\ ǻ(O~9'BeF_BgJ˼{ t6Pi˲oYytve+4֋cNe#|GM+34z+fLFl}(@o='*lq$Kq k$K^7eBpͧ4yN?+tuo+  Bˍv氧݋#y YVi.K:=[R)3f,MȌO `JR^G@->8ϑKV*WM4Gtw6c6gy{t,GZ=&\O].NT!v40a4̷{iHRE Z7RE ::vyM{pOB˻s ~kvk<`%NuzJ~ !F1M{iw~F1&glФ 7h\mSP6t w an)^r:޴Kr79TXtx(;aiBOy=jumB$*F_i92lH:!ν'c3( 0C#GhaJTpMR[9(y?';a74mÇ6CƬ%k7دb0zA)̚Dz>TC/YN.;bM8@xMq b@]T[3yj?[gDS4"ZQ nna,b$IeB2PG}ͣ qwi1aK-:?bjHԸ9,>NFJpEE*e~($[yϲfߋڄ-% x6W.ڞ˂/U`\Z Qr zm;[C6d {IJjV=@H4A$J˜rоSPg<ƺM2t8qm2`#0j/lA*_* Yk@oVҥl`#A5N|f-q&2`} 2aF:-ut!pzeBX߯L |ݞ+joyTezy{) PP ۰޼UxCiki%,q[NoA{1zaܵ.~IJl{<$*sm,F<<%i&x+WYYaq"聎^ؽ<%\5tV)DJe.ֱ\J8T'Af:2}!%F '}yk;&[E.ZVf xsPIlt0}6l+k[:"!4XtCS=s]—t`d2_V䪋y\d7۳Xa2nwģWF}՝!51?Gn5_+m0SwDg9?.5n*uF2gGLۆ()n>1sy);Q?y_=Jq(!snr}MSvf\oHa:uz0J5[",;REѿ6Bũz}}^uٵ/z2>?AEZxnm(ҝ%wJ ]w8yJvɾip¤c\QR}|[d]xD܀)0܉=䇌'Q3]5׎L؍ɚ?x^D6-76NՐH1/0.hZ~gWJ↤ Lbo#jXAk"|;v܂>~;U&a᭟ ߓci6P늀*[aW[(pDZ <(P q'd0v3g6 yDUXt#B/a̟e93ء8Qȭd%! 4KibVz@n [.uE7#ZuQH oVf&%9:kKx e&@܅発=T>x4L-@!Z8g( oc *2k(/}YJL R[!ADw$ ښ[QS1r%Z|>'=4pgCaCֱP߻phE]h1o=u=D0߲UKgn~8B ;X~|g= Ӓe h{'#b,܌z LvbjtrP9/{%O!a?W?v>\h  @j.ME`Ū;fqESZ08\*mh%E@+=mЂ0aCd\1`03EǙ2t#9Z֑Kw$8)u# Uǎ: ScSHYx-o?.m\KVyR"ۡC6(yqSQ_Nl E,ʊbTSt8ꁾԐcѴ VwQ<!Tnu Me1!OGXTs2Z˓ v;ch1;)&/EGT*^ i2pSfFe1t@fg¹¦P| GKؙ&Mxܻw`1:jֺ|S>¤jrW;sWO܅| Pޗske3 E (F aec`=IL&C' ZX:t a0ysdKe<0 дbU%&YY`5WٚNßw`Rk%Crl~)Nz"Ros>YN"S w{YǚNy7p*@_A憣y6bBtp5=Mﶻ\D7鍨cuE _0 v `Õi[h"]Qf[iHG*}~{z˟;n KUI f'Zm]0 mjHt+6gRqrLWSZCB[NPP93KIdSK6`@W^Go"YI# zӃX$8MJ}& (b БuLѠayI=y{0Di1|ig|@PKx#).M ^] eromp*6}Ky/a-dACnv~.4M(D39P׿XklC\FQ`}ȵ:>@,?4nLJi"f/8#_>vԸ>s~tmhwk]|'[#`3;2$ )Ƥ\2Kkiԁ64k9>kHR)LB'*^Pn00?ېUSFmdt sN7gG| ;IjMc͊_roPg}6DrKpd la6ES0_w/'rkWұ tn,O -:SXBRk.c0F O=&f @}N7r p =cH֢s| @B#pT`SEI4?Gѫ ;.p4/ bM;J(?AMLIGT䴺Mta9<_ fek)&%/fkc`k _(/hpN/.,8gzޝ2Z=@(MQok"0ߞ}&Xg.OqM0y\S7 P.p$] d* koϔ\*)9f]d,:FwDwζTɁjD\g*1C;45(n!Z}Q~LmJz->IDpع Q jNvG9lc z@t$~-B}lZRgw9k@ BayR|>Z1n;\s>^ |9qxQNY"y+Fֿ\#DY%d9^(Czt_>| ou9.B|bX˶B$N29s!]uU$us+e^fX԰7*o[4#ZA>&\ lʞ!/פue_6 7Ձ)nT Fl.PB6^(9ܭMW;6 r3V"(%^SF:+Y_6gd P ep%ը,Aq{`PY Ud[w/[]1m]ط$u(꺐lFVF +hb:2J@9 θӄOhrD="_p5tX8?EU?!wXV8VT&(.)tϨu )zsKmH.N+5 7[v≇iyZw(EoD%'.&R*j~G)Zyz4S6P.z} 7&k$O5׷@lbzEЊgQ/ ukZMo?Wx;Ri-f'?#m_3}պO!9l6LX%+#p1gq<׿ƜMXL!O0{GOtކ ٢8?}B</V"F>A >H \F~_IGmp[[7@{oj8{(虙-x~[VMHe;$b81kVchksj;Q:U늸HK}7GbW[M.I!XUZOZzĖ9f>GwacJcІl$TneSK < aK~EA4?Nw*w~x?ogH f(ץBq17+fs<୶od <#_LoKrz/E4,E)y܅ٟaЪ>?:2L os&dOՕ{MMAJ$M~SW~1)dD9^T/Mk[+JzP!S=K sLBg \:Thစf&`"oM3 S痢T%{lѴ2G%Lv[ouʑpdQZ sqqh |dp^ĊF‘8xaUCDw0ݭ'^_:qآJAI[d*ʓN + wa)^հxo @(&K_d*6Tȷ5@HņSSR%SKiؐ88p&b$F[bC#*HZW0=YzY=WL@(U~8G7dQO v#NS$J~1_$NFMBQz\9;z6 ה4떻ce-?|K oIO@]}o!e-A\ᴏ=: Ivd+:A>3ۀ ;xΌog @CNȌN9 u¨\1PH~1ۙhv&Vq195tec;T^@WV[ 7ܛ:jlstwB_&g _֊zGNۆlBKh$?KX,1Fy,J|Zvl&{[dp1RiEM0~B>}=S!%#e`rc՗UiTe^&t3e rG ʞ`es2W}#^Xb3_=LjӉeW1;${ F'N1_, /L$бyRx3Qv,{1[~k|ۃ@:'+J+?"B=}FDȷ d)AV_mt jFbc8eΜNV{#e{qwkIp8!擟IkūTu͵ Fd3vNs/QsW sػ{Z^YNDey/ 8obK/)6nܹ#.'0aޢk| ݫNi[qf ph*Z=@+_[eDe nfjDnm$op= *?fW4TG4Qa((ExvhH^Xc"{aVᢢf7Ku~Н_8v9[;'*#A #0a[lII(ב~e E[<O~1H`8 vMBٺE ל#V'~jGf8oLNB'=pA/ XA|T̑ E+1 E"V[So|kox1$neg)g΋4S~d2zfOGzԞ)OCfn`x66&5k{cy JTVpVu4 X0t6Eao ܞăT:lhT&' J|?8mq"_>}#YbY牦F;(gEKM,ØA6a+9dE}u^$wzz_%26~\& 2NPbIa+ 9Z'!iIF4\`{h)j;pgo٧.B [*[[MKek &(?h@|m}Nq^!ǵ)}TͮT2j/@XGD_'j(oǡ7Cw؀ۆO ;m[8ERngoJ)ekl*TFehI)5a>R Nkpݤz<%}uE|a+=&BW d p߮zk/S+#|s1c [nPi9psVPf9 )\T6c.UdCy):/,`N>!ζ^x`oQmѴfL_8BPҦkqvi]6DT 8נj5 VbJ$Qvzfȿ*Qj\c9>,؄^k}S`pve:*a1dOɷ츏:2.9Mcj.d6%}^3nVK]i_tN7s&IXp# 8h[Ճ8Yo؊.5\ȹ<TyQYb?XNRs8;؆:DR+Z1큌j0ÑpUAU<ժz3JvSD`%>lBs7XW#$<]'J$sbwzy UQĕΉ0م?5A X%F&6 fyK<þҖd1ah:NC[1*~^Ʈ T۪B#"c6,E=F (Q0Up\ёͪ!A$G ?)E*`ĸ/}lՊU>ZvBPlCpKzLFc1ʘRjA*Pv8.I|kJO4l:JG%lD2a0} 2s?|i[G*B"+G-Ȉ>Z%I쳍݋BUo,c[CpدLҔ%_1%QCF b>D+P!K0%@;#^iRXѩO>ugSrDG]wR|~35-5sj$ 1s;r#iЗcHBHRNA^BwW\&Th0nZG/m]Z 8kP *sfĝ//;.gxf?$6G딃?КP`ɖq!'5!LXPC_,/i T4O$|+kkAf1#ݴ.w]{|]u73GS v 㰻Wc+lqH&[ƕVϓӹaA~K:凼ū!ߒ|A1:qcI髧rys>U{^cW dJ {'sKLap~.@jᰜzhF H =YL<g=[X*1[GB$(Сsxyz:Dc1Ax/ƉȔ7[j*>gh+=M$9Zn|vbਾ`4G/P®wo!"Mx7oSF_Ht@j$3,fA:߀ UDJø/2Ȣ7|Yj6Jqez~*nV)GA n)ov>~9ɓ\ K.TVDvWrk=S%4c 6sKZL,ڹ3 st?_] \D$J.H>.:&XBZ ;i ~:uJSJ7&/SΐXC5i:RC`L֒lGLdC@5<~F `r'WH I)(lkO3@T"7!{뱆&+kW|@U)B$莌slFU a?F; 賸0aFUrVq)FHߎ@jez3|i? ؙF\\Ƚ6<tr҆2]VZB%D+P`\pW/ p?ObA(L!7,q&0`L,ffWNpY)PGRė55 B nڴ% $羅qCgfiکUWAtɵo9j>MJ\͢o#43V '1=9^mm<x7KKK8%\|...0RkJ^J \_c5hR_"d) ;SV﷓mR?e B|4Ne[+)gu.j ̴hǍŴש6FN?#w`i%>&˹ }9O$:C(b)0 Ono4$A ]ja^d8^.e5؎9Lz֢?/\KhA{fX}R:ΓDS HUj% CU*JLHNB24nOnONP?d49뎕k6Up{ϭ51{|*n؁Ml`m6x~X1^pZp@ 7jAչ;Qyw'j5YM JE0AHWx-/[cz^S\N7DtZR^M{.YdX}?kCzy]ʇϥfPK2ӴI'b v+ظ:TT^%6 uPDXMzH_w}.Y)? '_#DY8Qo9ӆVD*dKsM6‡ X(kT`P o.[*UemYV6'aU1G%Q3xs?H;]M ocFVL2[nU-|/R,D .!7bh=Br{v'1Zol@!&7=4x5Cg_#^YMqؼZV{wkDi`{sK& n48(f*⿆6&xxҩVNsS2ϲ;Si2V`aTWDa(Ursnܯt&;$[unPkx5RC(;3Y͞[Ԙ2L;`q!s;V"c;<Gt_pf}7<ՏIJ[v~ {bA-׉aGU?(-kױ FfN}:۵ղ)a u> v\{ iNu*#{n~9XDr+ ⮠[rFm4Li5L˽`FpEO ?՛UUsq u?4l 4+{G'f+V e@&6~a,KV;v`䚻h%]vHeXVek=BVڴ;Y6k s-Y6$!{ eJ<٠a80`ֶy:?ޫkfP Nm1ZA<$1[! ֖t$BHZF"D[薫jb,4}SI/ Tji:9 LxF; :e5ZfbEbÙ"i>#sє}y{<٣\`NPKRT ~j`ٯ<+X 3m+;/dxO3OlQjC\K1]Z67N}jCۑ[S#ǏW!VtH50ëm.̀Ut(0hн¥QTF.[{>#`%框[29f5xh^xϩ$Y̆riD#)fPԩKlsp _Sw&O؊iNMz}34(ū˚IqiIW‚όʙ6Tι'v`4Qh4]AxnxY7Ln[GYW@vb ܖ36pҪ?'~r-V1Ft(jbR4WB @SŮhZQ%*l5JI|yT 于󌲂  <? 4lwr^Pt֘p݈jZW}2S%HE" Bc.~-ݛCcV ڰI}4uguJ+_TBjeU}e#P-)k9߁O 4..v Q,,S| .\i5aP>L]P^{"%Դ}G] P]ß8;7V֋>r d{$e5'F_"هeՙJ 9ߗ. d-m3&n ^ꤐb^ AI{#PJK;p CAaeLX,rHA M|\s zIpaN} Pkw|Asȵ-Yy&n4/3٪xu@jaђߔRYtHV rvsգ]*8C1zxaW t9?%bMsAս<2M$[ `fm(>k,c1f2fZd"i1BPpϟDԕ+' zRf{6}q-a6"r O9۱u X;rCCW4:^-a6bU)^Z_ w.j1PC|3]aT}AW RQG>_ Vf\*'a$O-ToG>2]TA`,pħ/W?6?܂_Dl<}PLHcTB%-ۅvH%X'lUDw nT'Q(˼4\xd H@k^|KM^IǪ©iv»a:k8>֐ϱWy} 2mAi.~>SG"_j5tj}fHMe6,Lj䟡lI( q>щ$ 11ݺēM]eQx g-t7ZݸP w0E-"[FSbK޹)hVxuS[׉Ee|u||oӧ0;ܪ[vP\cv$4\\Ȉ}N.@nCkʰ{;_pk@FiB.| \$2Ηw[ތhn&=pӝSj.75hӅ93+ȠBWK$e\Eӌ!3.ۍZ>8om[_ =MrK8=qo}DDV}#%"Ht?&YH8 \U Rg띐XKIZ0믫R<9iüa5"H5'D¾ 3DVS$?3kI\#1;uՃUbBt.\t5=>(hNI3St㣇\03ޞKcD!]y>Z݆u\B,2m5gn?CtK;HxA# X/Naُx#s? ȭ*m0%bpegfC@~{0>R*xS|њϰuݝ(F8ENoG4#NoV%z!'o_r,=%pj{}'R#ZZ̞vbvٽ o&=,4{%$ Ҋ< \ң1.8EbnSK5xSb}U'XxcIw{VwJ`-J6% /Dt~y,C 9ʭ!5O)T\v\.[vcIrM>yj鬷a0Z;SUTQڂBNآ_x&W( M/n!ª7E(b" 8!G 4G؟߇E[1 kUy{/C:2+5pN(*z2m#cFqk'42f |Hlf #>p{(w&md1ʙC:فZt\ΥpLSAa#FG<28N 3M:>I\,kzZ6N {0ĦfV-:u;'0-t:thVa JȍG fMiFN#`FrRڷm9sRS󣥯dz@|hcd Jq dL_|k4lTRq|Ezt`$f#`}.ċ:dH÷9]7/s{Vc?iw7v(7mr\bP5 pWwq }cLW,:.1H? ?-51u 6vaTK'%Le|LMh i`njӓKo6ꄱҬxHBp "lU[kh6#e½$1,j.O;#SwYh+1^XR`)I"ljnhcQ(mq̯rop^xkUq">8b AVȪGD]HhG?Y2-LۡmRͧ7!ّ|kh)ȸ-wzsه{J4}>ѦzUq:fsG*!^ o$8->P~'z1h5p{'U'm|>17!TЗ8n.m&Ԃ!d'K|8`442F.'UUL%ڙ>86lSz&]I%2%CXso#slQvE^ Q5t6Qu}ݩOLbI3SΪ^KnTڀ+o ʋR "cJLr %p}wUU,^ Z{>f?Ki|Iv :IVnYGrX[|2 9sG(}=bR4 (_~ >mY;m4׫}d@iѫ$ViUVj4$MŘA!60pb2G+Z|%^}<,T dc<*3C+$FFC,Mk-S2Oʣ1U t1LNJ U)-OU^JֳRcgtXVbpgzޅn{Ux~uub >#Cc!\Ϫ@+ʌ"Q$dW[Yfwfbpr],}) !.vc >H]uBm㒯X흙 ?,OӢZI_Au0 )!ErAr= r4 C{F}T3Ojf>DGTK4-;Z#&!qȱZ :FHGgZ9ay32HݜbC 96_xép [b ^$َVn$G@*RQM@*ds] wTݽ@9MW8MZ MaV_8+ +T?^VS=fZFlzU xaH}$ +S]dyULK^ b}З;x96bXd;AmX\ORkfUb@dImvx<.u{[V @Mtӄ5DhnC b+.`n(*璘{S8Q^?h_`¼(8cEF[ 1ٱf0G9Iԋ#_x{m/߀?5W4n8o9SC9Ffl~V 01.JVtEES9 >lfiӥײKUWJհB,65I7k{8 =Ͷ r> Vi00zL]PU34ϴ50̼E9;kۀA ~{|z=YdoMenn&⩭ t-y]l\Aco{\?45~¼7^qcYiT?3;Q#b4B@힏MhU7Ǚ.{!wjc[ į lsDHLGbsKO*a*hכFۆC>K_\4Dހ'u--Fv01yon=#D]ʿov1׍ʥxX~.qq6͜ 2G*0IShT=[}<&xVa5Ϝ<jμ:"\b}jQ, 8F g,P|b]}#06v@r>p57҇?CBWz}' 'ۄAZ 2,BܱR^i΅l?b)zjgȸZgx $6S9XڨԽZt{U*M䨭)XsxeGΝKVCU\C 9Jj}=T=ҞѺz0Y#mDz;ة? %tTD2,ο ._dԃp v֭ϗ?_mMz[Sи" w08w@+%o>P~8Amgdh@jw=i_F-: `|}#x @PC C Ia>z> ?.`j>$bww8l~`Y=GF}\l\'eL1V`wxB]4͔ML(8ߜSN⡱ΰM%8 |qR}C[YF,%sMN'xm=/ϰW!`g[Hc˚J SN=3o(}k9` r4sR,j埸G,GIy8M7L#%H]h\lvŽnUL%(Kؐ{r{j…Y[6n'+(g`'{o0H9-T4'\9(..~Mt3)x46%w*׼v$Ĺolud)fymGdzO6I e6ݗ{^R^w9'^I&Ue~'5SR2ʫg3 I ^e= Ic4.4'w#I@Lh^ҟMp^w`=/ htaډnQiuD._Om6rrq!8L7d<>{Rl&!gL/KИ9'-'>Q: s iC/UJkLDl";*{t%ECQRmGWnoa+F7jI..W6)fmǩ[])L6n_0#c>r!;6͚1St\emYqۖYtj\Q]lTLwG_3`+`Sp qVS]I/t] p : XұL{;[ WZ!9(/6vAXVD>l=̛jA$=Z>lw;3 =AR+Rf$OdlH"~(^뛠^5טӷYrTEABpod_f'WVMU A?\BDSX_VB6=:_8BXk.8<ggjkM4ڲH;l&qh܆}$m^)T0s,rʵ R c6s*#[ ၺ{6}{[)`boPxk"jkw?u+~qJvǡZ3Ҡ8<ѯ^,W5GyA Q\R6"#ՓYT 5JNHH' ag]<0".01ugURm'}ڰTC+#>98{JUitZjU'@גILڬ ҶD)֊ %~{o9T`H,)# $//&f~TzX̗wDh5F$̌,LyRⶁ\.\ LMS_A[?}n\keb` ʼnEEA z^ʠނ'"_}p8-ͱVHn]ﲧ =]#LG?Bvٽ&msls؋p&mf;KUDl?<O;#KPG] Y5 }o(ܽK4ۍ@jPϾB #*A| %ɾ`TA3։4H?R`t0>r.Kjopi XGD.qFs:FX2z0 +y!?c_Z%,{7}`"L ![f ft4c<5Nwҙb  cP]&ڶKEMmD \9=iFe'bǚc^/ )@>YwX7hU8vp7성H| M{U5dWP!HQ xQ\ov9C[V={k2|~y+<\"=Cd: U=bNLJCȍ$1l}oPO2:éw֑/+QP^mQr0ƀ-kXcz{(G dx2'JB\p/fBVN ŭE>6+k^pF9e->fKG9N cR#A{;++y;)ޡa "n=-`%˖#5.kHHa,6ҏtvAoqϼ!26.'|pS04# RYxπUD(y3 rSί> ųlY+ Z8=R6!#>9 {?J , _Q秦^ES|I}=c]r)c%[%+'oRebgVh2c&Žj4 =3fCW ދfuLD G3*9;M,VBRh'Uoa 7xv(ZMW QRz&iۯ3) ĕb2kDͲ?t\wZ 3YV&=p%Q6ϩN2}kU\$+W̕^}o.yKQTT\ -DOd A>hBYs k}f :X=J?4jΕDe&,\Ov>&'ݐΔN +c$_ƹS;+z=>UҲ%&u )cVZ`D~031R9{ @&8w-a5I9K}m^V240d 1YP3{w0'uj5eXP(檨id l.c֞٥sCX x+$k1*:WJu>a|t2812Ց@gJ&Ry6hHk0#bԮŻ`=sե&.ΒEBB[^L6 J?ׇd]?_)oℯ7RT0 ~29Wл>^X7;2M_Dtxөz^r͸#`V2Ig8(y,FdYC]ښG5<Vf|^*HDNXH2ODj[v78r_]ՀbuV -a cN/&X{C%u(KX(UzSQrDY`1XtI.48#&._1?&m<,r)ڪ%ppw+eOFBg*rijgGY`ǣV`I,=Yoi}gCtTZP6+rhq$3Fjw,Iw{lY$Vb&%[YNR1sE=I]-ټ\de t\d47>C9Yo}զG [zٗN$͔= yT*p6"ψ;T[46: gUoqnzsWgA+!jzd[Uں2A 7|DTKz{;}pkM';l꟎_8/`%8'sJ x_y־iƃ\8L/_4(}%7Q׻gݬLy;=y2+>;[_˞56%1@J,$CVmZ}4j@L*7G+\t1g/#ns[ Hّ{8sMҖ& FI4?`R\6 q.PAqA,`] Bh^mՎ$H!'rb wɛD.И? ri<.!޺ԣR:ESk Did5çJۄ+>BU 3VM ؑz>oF5M6R;|liDKك"TO(Hص ҽyQoEXHDXl"H2l8>ahm6ީ`,""F:0]]H@k6S&ʽ?WrcH'3#XUƛklMGa#k!Õ`-dysh=c_)6]Bx+KHB:V/"" EnӷPu: 2,!`)\[.3k>t4)DRG])_ngUKEd.N€P]S`]͐Fs)/@h^.;n%˻XЃP3H/5@M?hK)}{?PT'!%t%.{JÚf}:ѭ~V\?jNM\ئ5zUt8 luc?d6ʹ?f ~Rm[5X7r#I;-a~\"bP;HwG} æz+$U\YV꧈mK:wW3/\/;ly#Eۤo+lA*Dw$1]|+-kNf3$z!jD9k_* ;{zԽwpQ\Uv2~?*S˱p% 61r5c>FJ-`kz((\+H!XR0;hNx< 1RYa&Nvn5'+FxDSv>ڧwF>=z~6уWGٸ5C2]b !t_ikP,RQBAhyf#!fwWNU ?n=,֚}(bxTB8 hMljDwSOk̪_f@RRëyE=ۣ,քzޘ<ϲLdfsm`WCWU?Dc'_$b1 dlEP?J"Dp7~+R%0M47T$2IcT !P=>Ia3h,WW1Ɨ-]WˑYcY|ylPtLSwC1s H\~8Tf8 y"?'WK(S?c/@7 BǶIj!lj=w&ok3"]48 eKU! 95.ԶHBNgQ7b0vť?Eeϐ@wbW_thQs6xqM0|qt?F2Bȳ[J|T-,E};c@E4s:EwʵCLsݦ˂Ӡ_vc^{0!`4b1g(" $6ޣf gH??$"VQ>ӽMh㿐。[od4!ȝrF.vTJ1wE8o?N~hUS(\s 7<j re,}0e[W(^ܢ P谕 +KR⥀b|3 ( U,\tU|LԖiRъm Oc r@=L豃\( obm"alk3 &@QZgryHk`j 0cW @]qDŽe#-$,h.ꠄ,U ,}|lbUM&#P EZMoh1s/@U+e#8 UD^t!G(ز) Lzćo6a,DsZnIJ|252j]!\aV :Ӟod4_okQ>tY&U/"8&ӹU_::e`g p#0ݧCB|V/3 ScYn] ~iC#Q𫂚"+B7BiyKHio1$elDA(<9j4 r&'),&VE?Gc/}qfliWdBLɻD15SfmX-Ṯ͛o qȣWG88sKxV;BܰVjom$s9+2| ǣ?pUF&X-7#a=w,1#9S_%Ξ[jsћ3I6)rak^3N 2!*GQ.MP65d>.H%cjZMFJ2ٸZ;%%pĹX|PgC ,vmWɅ,+ڀYhmb}\"k 6156ɫ,wpf{p7 o7 Z:p ƙLd)QkΆN'wo2sE6s)$_Ka4Go8Au"c:aI wvro^RhRϋUO:T9S0G8j351تJ{m`dWn=/tYKZg0o͇Ăⷋ/7N ĔߌDyk?2Hʅ̑ln ,+)}A{v+!hJ&S_Աqߌϐ| j'VI#Z\.P)Mgx|; Fi)Q̔ʸxƒ_|8̗V9¸R_v݅a?Sn L=:4H6Sd/ĹqsUkއ84}R|>N#~!}``b׻5JPn8 3N,}MobhB4)Aݵ(+oNʢ2VJDu7&D3G WR`"+B5 5ȧq8YNk͠sp[9XD34Cgdƴe.\]y]%3:˟r ੦ PbpN ]v ?%h03$]Sh_C"xϐJvw ]᩹V.JUÈyWzJGsU]֬ "|yS4z}i88:Z_59;\6A^u@Y Z!c]w7Sn\(*Ad%sRC,plikzЎXUIbZOJКƔkez:yNGճbU 0;h RmdᠲU D9A%z%E{hG㮃,~vd*g C|CB#|F!~'*aH:8@ԗh%m1tO쀄VP >5e ~s9,Jjè C[5qpۿ,!+0:̭ÓQ{q~@7,uO;+峭Rw`1%wxhDꐙFL)-.UyF@IurP_[hSB$nD=M5*#ujEF[63C_NI!^vέKY+r{3f8T,5#iHr; hq D='L J%Jwp1nZ8"fGy~kb\&NYkZeH![w/w,ty./JFkldLImWsNȚ~W0!2c\j}az)XФۯⷚkفn_qh-02Qv_{,z^l6\9 ^e%w9\Q)-/ϋg 0=?etvn=c*HtމI7u |A*?au%V#O.>)ک]iMO 4N_<ImaVހҴrjYŁ%.GC 2BJKzY29{w^K!@kbe ;/7Lr#`ˡ3o"yIST(!Ee X95^+l^JDVFk͖d~{Nlw^YsʐmJ)T,fJpYnK=f=g` =8a=].P" N9[%D,E#4/H> 1,_hO\ )a-Mr ~p M;@S,6t;ϒ*@z ߄T擻޹΋VT8;dF7y,r.M؝֊՛.8[c v&~Z}?a| eP5V86AHe7WۛMYF57ZArJyׂ>@;#nkLEZ4¹*m썶 z* t匰-M{4^7ŜTi;t0,C}FMb?4Y{e:94I+eҠy㞕ݡ~' 该y?zz+cs6ՠF~޽wwk k :OQ ޻iR;h6'įH,5u,yzlǶ:JGHj7izx]:o洙 )N;1n8 3$RVzNr?tCCH|ƥP[S_n樘HoU"+n\4"bQ,@VLa1e>U!.a,1C(I6[f6{ʈ/:~ lJą"bo|@!}G(#;G2239 Cj'0h?i2Bd!/ZskFnqefh_Dܘ#qHV+B #pO=ubI`L{maF?S[a UM{yPCѰS7Vms;k*D/ ~mmjq,DvTL "ئr7V -{>Ҝ/NGվ^˾cIoDs<@ZQ:qpqCLקmz@U<gRoke4J* +~k?d2R)=$FdM,?zuI(m8 xo:9EgR )Ɉ$sխQ 9!3=nb3',5PpFL5Ѡӵ}#%jR7:PIRE$Ljf "jHU8az>/gҜ94g8XEx`kC rb-4e5ދ7Rt'Ž[}YfbZ&3?m{IvelԜSHHljCZJ}ǞTo-YNr,AJ. W-, <>Qu FΠX`ܘj1m giVma#xU_.I"+3_[qÅD-++C]]ŋaK|3GT%K.&}-~3 ga{`209_?Wd9[lly$_OEL"}$\̼;N,IjҐB4bUoD:w L:vVшqRR@IC[1]⬥B50L"ߣ4^q$EKX0HR$:̷J zbc~C.~pg2]2A˻LB\ W*>2{\Ow:ZwPğR;g}(..8̘9bÄr<|4"GfOshfQPǻ`eɶm[fdK?) " N` 7#+&g.akhͧrOgrsF#(܀m he~IKk8iJĖR\oJ %q5 6 v} )19yⵈ$0>r,j~ K}~7|leE2ӊ[bgIߣm^q4r*[ܢUeBgI@R}:(PNFX yw>0X\dz9gg j:=3sꏸdqЈḪM[^\IFÄ-Er ,[=uor|;M.OyUylrJMn6[/!aҫ(ᢵui-1`1:Qt`bHd>7-E}(_4L/]LS:rvkiS!)sB_$>~𚭊3ĔoGC&dR70N^^pf ooljh؃m槢,<sT*VrWԤ*6{{W.,mCC=/1hS睳V%.% .%TPeA+W[F{!MȮWCIM*! |E/F=.uFl5t=9US8"+PC 煖!1vKQVdda0NSˎ*%AnJ=vbA1phD)M$l§ 7\W-U@=M迷6^ȩyaDmhEdt#qGRУ+AO$Z1~W ]J9 r{H%!|!Q7LߤE{o/LJ(E3M֊~h٬;6 /@b';9iĘ n7X H3f0-Ƃa7 ;Bdh 6-!^ip2C 0L X$w{0ijE}%d=$'Z^Lo # x|s>%ۃ, UD,O#]5kRLK6+o7 5d0 HUU!cH{> 1b8ܤPU̖Ǟn+צfS`ơ=X% h]Qm(jb8 c\INx)#A: l$P.,'L04Z<Zc*n{L&6t) oΞϮ̀PжBy luK|-H-/jJ6#lUlo[:ᰔY|.) )@nO!&A!a@Q76>i{^$dJd눺h֚zIJpVz@L $N QO3Qd-`9#U::YFa{]Ɋa)14Rk]3Fw gtD} qyOR lL3],%f<]s٭UꇟR%`m d㺸);yJY(0:ˮAAA)25@a<8(UOȸie0'3SHqVMn /`רH#zUO;DX|!\P0CG~<̥.LH9½YA=q/@j1e۴jUvjTa&:2(K5 xeQfcy}ZP*i}}J`PJ 0A{@82}xf eG:}.C0:ߢAC _'0)srSN[L#51!/|'h5f ti"R)6"gked,W|LVcD ;KMޏqx-qg{c![ /c {2g;z׋=5`+ (=jLPHTEB Fgz+:.EL Wƶ H%s~"yI/IO㓸얆w$Ir]sZ`vj jWuG/B*+2E%g|GD0#2!+<뙁-?1/$A#vIѾ])jkj! `^PyΤ/}>jx.d 嬬u [d*ꛛQH9>P4!D1'M?*BC [R-g&˧Ȟa/7wR8"50i836ńhTHr=y; I?ǁ^w˫* #se(aZa~Gơ:E@fgp8 O21ҷuj rŵLe304݄eIN1ɝ}P1% ~CĒǯUoͫSb%' `a :R ;Cv!+ 2.b(?J% 囏57bx]-[r}ex]H+e餷){#%T-F3IeX^VQp⥺} =ToȽgh8 {y4^;dw5`\+Us6.zGf]!a;iLN]RaW!̏d( gf@Hx :He;;}CoMuv[V'AßIJ[_LfSiiM0Wbjto?̰3d[`UpHK}WG_KXrx:~gLbq9{L~@!Yԡ/&lGۑ ACaTzT [+` kO< pSi[2"V"U7Jϼ)3XM{Q2ڈk4d- ٿf7Y(1 +HFzqm&ZvE7`yq[>OdJAǩdײ1mu (+cNS9Bߖ8ɬuF"ajSEP*Ӂ䳟mG!<g1evP@_,x.-.)~C0}RAZ41&.}2^")6j7?4T;xD`4\2f"QIsŸ>B% RW(r U&ʒ{|9W3En"*3)kHt٬Yn˾+")J30A]i*肀QJ  ƥ:l(+e2nB_0LUVlat6 qP;K|rZRH7'|V'֌)Dp5EMyn,[hP†Ye,` rG:xe $+N ЗդFli/qz*ϰ`Kum|ikSۛbrE[ -E܀&{ר0.bw@C_?mf MĔWpw\O>BҧŒ1% KiY N E()CPU6J_Lv%qӡ6X֚ʲ:#2|cp;e2ݖ<.?MElV)cu]-->a4XfF8'q_X, JWA65CF1͠-U3Q duRV+Ih8axުRFe'3KR}Nj}BtKtqr0ӝmcF-ZsjMde,(Ooebu}ÐfnVHW$;w O>71ݧ`< VzݒL(.;ny%~[Mm+cO0rc/F9`k#x  tiIbS)~I79hI]&Y"isäwpOgx_r_f[meȇ1 d34QYN_1KF>$cJw2֡3-ZoOtg'YC8 e$;k%|Z$$Y iqj<,^hHmݩ#ՄșuvRuMqe6'oe'^lB9Df1_+ i!>h4q|f`UU}1V缽n8g,ƛ$`;kPۨOLDNϬ `Ȁu0b|+mvG{毤O + ELOpbT&-e%t5>ΉM&u]_hSMmV%\l n] e qۂ y3G3jD 6}y$>ž5,qhQi͙e͌ YA1{eh3B<{ @ͅTnU{.]i/T]kt#aQ/w祟B6JÎa t"& gqV[#e"DFNl$ָ|,\ TD5Dn Bck!3r=0 4nQPl\ @FpN qیYlةXׯ6Áf7sEퟕ[ I>EYXMBf9C)e+YDE/LJϸ"`"a JR 6# #F/ظ P)eAҹYu^iL ӺTmzp q~KЋ1.a$MGd_ VeK‘q{u,ڸ`Enf ?H-, HeU#DOR_VoҿR kZ#z7,i<ȔvlGGZ&[֯ av}Wpg bփ?8P_ִ؟>Q!Kl)|_bHSӷ2W^.q5kgMHDcPT4qÿHEh*|{M] N] &Rn:{S'pDMyFAF',g` 5ḋNх"V%[x@/] &WuLe/mCxe4m8=<8Glc06..iG9ql{ 4 K }Y26eWB\,h;x)S/d'H]v; b|wˎuž.iCݒ%'w%%VxY|SNƥ\>WȽx9Ygt锰諆]tߝxpy3󜩃UEG N OyE,N0KΗ,uc9QK⊖\ʓ.'4#}cەhf:ET tvq¦ ]Pʢ%Ę>w +Qyv8G4e>هJgWb2r2:OTgmynX>wP-x/Ψa_ Inw F)_=pvøjA^Q /Es11_ NUM;Pcٮ{<%VV^j0ɪRxZ]18sJ14i2̱oIT7d~"z&psŬaBd ntF5 FW7m;]7ӦNsZ(4&uV% N;ՍpNGM[DE7W0\LJgEbŦ^|S+k4@gRwR]\ځ5^J~U$V2'5/:]Bn`?0 ovU[,L,%geN7,V1S<,B3{;ȫÍڴyc\y-*݄ѶL!,9/VJE_'6399xqBJږΦ=@ĝu Tec;zeafe2z/UPTjD>6̣4q"Wbم9ZSAbwLK&p|Z%i^x#W@`}ZR/f쓳K8 1y5JF}r'玏5<^"%$яҠnn\îPL ^.b6:#OsNѕ&ÒqZ<]%c %~#`d\\rtT $ܴ{^xV{ǹyt4H?wCCD$Ă]CZskhT+Fpff.26xw# V1o KfIa?TR|G*&' Jyk ŻDu}xSIkga!Ow 0nMQ:ZTT\8>3J}Z{zt $e<.P+(#^+P[tHec}:}?- f",OYu|GN`+8F2XULh~j3rDejJ{U7T"^J)ӫpP0*BoDl'|J]'} sdzdH=t.JyR:J o )nAlYĤ!XPx*zJuXAo[&EvA"5!e KHJSz[%hT`/beɡ92'3-hnU8h KY?Z`^k^_e g:lP@p%ÍOnJȷ%ݡg@mM( Yz†]0/Y69_8ut;kLtsRMS+^,; LvJn$5aJ*2YJe![a13aC]{Ë2P1סT #U%FGD+:*O,q4)&>KKt}UW?Vٕ$oT'iΗ(h+q(O|jt?LW@/EjN*?p :"D%hj!HiT6zQ.xcj#&ㅙ*bS0oԛs%5]kX'ƅ|d{Zc/"B 9Ou<( .k ǩUI۠&IIe eTBDxP599ʸ w|cv'"h0D[W88}O]FV#Hb4P_IU@(&ʁU\\R:"Ŧk7k\$Ye=Li N6[nE8~ANced1,Šc:5#"(5El}Nx'hsʦ{zwI{eox ̢-KJv> TB|͋-)怷];8Gd/e+eeab_Bs|Ղ&.2 }焺ϟ;[lj3n4ail`Սx@e(a'j݄Ey?_0ōNO:i9}JΨU燕 rSpŹ\;AV[ +h$\VN\½s& :LM`"A/M|0@ޚEʌ0c>Mѭ{ccBd$~{ψaP}]Qh#!ޥE )=8W)M @h/bF]O`B,E5J u*ܷo D?3Zq{vNa#X6iIAbrŷdy_5w#:zbڐ g)(KM͙1:[FΓݵ5+.0~*cA@-JO,\Цncsӑ%.F-bܣ +/c;c/ޒpIvߧF8fF;B~pC喝Hs dTǥ=8aeCX'1(VowMmbH#@B(Z;7}IܵYסvNX|oǣ klø!L x)AʼnLK'H]KV.P gOvZ@90[ y]\Vq5"fK`"ģhҋ!v_hX{p82W{e?u4b6G,!l9)L'Zb3%n!]T5s} 5pRb,|D}y/CL]rQ ieױR ]Wo# „Єk3EF} ˢS\=2H hyfKhlp*!I@*AWz:1bQt nZ)w%?bi)YDr=c='֒zF^}Cc4_\=;FO{\}B~~J+:pŨ'-+c.#m8oS8u>1,QDS:YX6Hsg;SǖADG~W%sT曲%w dec4mQVkvN8_GU,l$Υy!͖_HBj`૒֫" L.&g!MEcK%ְ|p{~%zٶQQ"CH+zlz35K*' |u(PϵAWJ:? \Tصp?\mq.C=֘h79>16tĚp88PsHojE7LM%  )+?2)Iq"{b1^ \ȍh}zYE79S /uFd\(U ֝ 3yTTqcAjZ. 5&'b;w>yVoӚ ToAS;~[=aq9~ s BABK,~& g]ǦIAq=%d+ց[YB=Wf ̹K):^, hߘOE"h2+t:`| AS)WrV~:l#zW~8JW,JO K$0fTh6C>!IxH4?tO1d9I;S*aԟ{^Әvխ 19TK;flm|}@?C aw< @F>G?929t)>08?x2vku;P.X%M6Ͱ=iOvjz;7l.<8ܨdymujDlڬ <'Raz I]&~q3nZ<9o ]J)2 `R7T39rR}"G t#npaLkzLuCzlcX n7 hu1Xk8ZKk7'2s@flVYSZYU}BY:sKR- YA1jD} }ڷEutJj Q:e@ 3hCف!Wm$8Go?;y$vH=IIWERg%N~w.k3\ Vr@S'9ԋ:ȵXJ|+98nhгԂF7ToACԠ4%*hk`=L 8N*=W!g EiDzϩV+ fxK< W ҟVDZdF8~4Js¢{4y|(^IP3.Yۥ`1+KORñ(8Np6(ȱfMcmʣTZՖݍ"XC޽#K?:/|$W/HY8,wդKnE Y@ Pˌ̭p83/rMI84)YuYIy밲C)5;~fȺAúΉ:͚͞Ƃ#>.jPWEU,(xfQmF*UAoPE$7ur@1^ >ge\_hҬW3*i-Ɛу ]jP1*x?}8jdbgl&z%Bu{YHh3kwѦ?S %qVT7ÔƾS Z ][FYIe5c3A.;gkdgm!CJ6kܙ8C볆j-pg݀rNO+'?BmptΥVT"!m:]uºpQ1_QI'G7J OlsSs:F k?^ I(u:Wr7eCkwa?9 /Y#rw݁ɺhi]ݦxtV|AuY' jzw(tF;la$C DdFbmàlrY7yaTZ<'ex iA1nu=(\fr# HQ~K=<`r|0hPsA<5fM(S힇7ċ_ WWaij`w?H]0G6'iZ8P0)lFO 7[iw:Z&-xs 죒> 2uwh1b|d2g 8+c=J-e%nDV @r p'")m 5{K:lUv =SrG` S)Ϝ Jp_e@#xGZm(7ư /I#t ',ML~%`*KC, EiLR-XmCMW&a[tCؗMTN%\?J,1aEaĥźh 5ZS+?W{1TDnWKfP58u﭅F-SHM344 d"[fyڧR-y&$vv*74Na3yUa`n @ )@Ԙ)PmF"H)Pt0PZQ}*;B7R7TZ'3:#DvJ9yJ #'1#ݐpT$bG @]4$vcڝϥ!EHڿSԢ1Ԙ8# 7 I{(O/Я!ly9uضwGn9%=>g(U9 17 *bCoD2<)8[t؂LA[Q3e y^P.- *1c̳/!IK-vRL }G#ٶ3]8kT; ͢z'/60 W[w|'k 1 #,OV>)U #)jz8ݢ6h)#&2\+s3$qK< ɖk{>T5ȷĝʶ (ٯ)tQ7Ao=:E NeΦX\w7H]:T>1eH6Ƨ3UI`P-7,/i+{*aBNqΧM2r~׷E܆7MG`z$vr.0nvZH-5`34ˤ`>ˠ ]IǚEsëpvi:w6 7~1/#_ni_ƚ7~Eӓg6qmMPYBpL\k%Z^GW^98BZ.s\XYg Ekk5p y޿\SnM[q=aG~!|~' GFߩ[̒tr7sݗAwK4Ў R_IJ6vsBF>z5ٜb2ۙ7ا^12UJfS`у6 1)b2;0mCxi'|EZםZ؉3@SP=X`C%ZH-&a]LslCgE?,, _'g>i[j.Rm9&[z]jkNe1}kq.e-ݒrG>*Rf50{ [<,0XigI)רS:hD/J6q+Sy eXVF^erIB& 9=! >ODjL@9A*dF5; 5Hߑ-$X&.hAēsES)$ew)У *:mlxHVn쒣v0n][H8CVDgSơ qXUۣf,(Q m@uWV_z2%,z*TRYso#nbCHSZQbz&&:rdx>u z ;m|0M;AA+LH({AQ$Β6 ׸V'142,M'0ֽDɅ'm zu-gcD6qn#!Yuu!,@tz54"kDv|AMעqNY])g#:ߎJBUimɬyzz>7IGrG&Ǒzj5Оǻ)i['&FBAa6Ta`vbʳan9V`UlɁ>㦸?b>a'ܲ. 4(Rgt+_/ELj2㣶Q3:Wy)gLkN#b&jǞ-VJD1#Ȑ&/|6S:] )GKj] OD{0] ȋ uu[2OfEhbj$=D ҭ9Du1Cdxqe_ԄǺEٮzN`Ce{5 fꪎ׷ͤͯ؛?NWzi㓧_2MyE̕@^* ;R.g?/0m,fv/yǜiח6ėpa,Is$ϙ[UşmҺ!źcܛ§{əxV.DDjIbX2̈0(?_ `=EMgb|E-][\TA:Q1XT|*xȳpt߹ gZcNB:i ꦺj1*S߯"Ps@̑i!;ߓ )@^ScH7;tH}'  ĺuVckGT_t&b1 N>1yOl#9Q&# h1hq y{4gvr2]mR'pi&cžծtV}<]׵o+]xwwԜ !Ny^XMwצ{U'"_*IG/6F֘sмũcK됤IH5Ĕ!s8$kĒ1if&m̥߯P8ߗЛpDay+8aDr>H!K\)ui}x_+8 KaV^(gQ&6l Yn9W[f[T_d;V*Y_d]S|"1Iӄv g4~J؈|+QiקadwPtk*W|P= ovx*sﳋ3E5Ҡқ/Fa'0w :pVS7$%Ӵծ"QˈUsTc(l-c&^df>hR{paYz Rȱ͸okjb2}0 #ބ3zd> ȐL&3ItUNȐxǥ O0 ﬩OnjI)#W"dvXחvX&y(G>rKVq !$ږ*-Wp'`W9sR(Uq^ȻIssDP#= Ojk1V$4t;b67I)!9N9}iS!b_5&Z\ە:EyTΰԵ'NJE!NKx:\|lglgk3ery/O:h,s)\df'?e u>D,BcOmL8ּL1,,8zު^t*oEcs|W Y'<@ ;ɪZM%>x܏V9VPY SwP V.R}4_><5[3$c9?%XjH2,>ڿ_Q.f'$.IX:

38ve$GFHԅN~7Lzl6 ,ws)1]$18c󍍧I~> 7$:|, @=Oo~|_0{gQֆ|1@s'Z\ 6UT>KXo-f*ꔜN`5vc禬NssgsubG0VŭxV/3=Vn;;CVNz"Ba@)O5jTݟa_H`X7"+0RB~sJd>FBW8 wŞu_rL^>C^mI3Lzi 17(b]}4pA{?IY`l\rnI@aa-,j 3wp%kc R% |HRɸBG|aem[V;i~-4"pO1 QCWScTG PN 1@KFz̊e98Zi &$G)jÐO5O>_(pyrzGfnth,P6-$;FOr~pD o sV F ^?w ֞*v^j~FIM'i)>`z#O{T^RLPM 6 FcqkdW(^6MEV6"0W4 ol(uyn@PKoruMm~ kaY.i?&h |v#8o ޓd7e0aImoYք9[7" 5^q09)m Y"&x7YUmHRHkxyhvԇ%S==S_ y!eRt_ѸX 07i_&kZ-LN4?db74Vg(^=aZ , e %1y2Z!J}𡦢I㘝9HaTT=r K8;5B\D&_7`k 㧺|%qu1VS4R `9"`oXM؜QJErC|-x.Mrѓ9闹}[p#jV{2)=XYǒPY0H*~ՌG]]`!~BNh5/Cl_!G)6߉M8-\\?tͼMELc1K_q<_~ݰH8T:Hr4bdkKǘ9j(Yqҕ;PІs4F` A7$)PZ- iH]=Iwq-#c&}zMs/ׇ;RŠ_kRR(WYQ! Y%s]dɄfn0]S 5rvvz1o"Ѹ^}xChc3A/c6K2<6NwkֵWdwGھr693&iCus l>Hn QR&@RgI3}Ŀ  jhVy =a㜪S7pjGTTz.[˗(GʯPYD9amua\6oxL[WFHn6VJ[mt*KԺ؊ m&s-E DRĂK)vli b GmM8J5g3VN r|Db'q-<Rw*cC؈;HXO0 Xj IGJX-9kWTi3/J ~|a[qqּ18Pˑ9J5j\P{F̮Y PTi@Lzgq8J)0NplTY> Ver=!*Y^")Bd6'u}4)rr3߹Kj3[Ro9IU]5N|uDFYN%ܲKWO \+%qx,Ep^iXX攼gFĚ& ߔ>T5Ȁߋ(hbIMQ\燙1Ww 8t $*x,נ$S̻Ç]02ٙcŵC4 NNZqU@R t2#⡗BO# Q[eqs+~SDU*EPuW#5Xh21ˤn 0z}iYEQm5oǗrnaQz :ZIdmV(+]x p)>q^\1V R"Oߪ(096۫DyWnZJ_fu`ʈӭҎ윫2\\?w5߬ҁPMIy(zXjh_ la"/w{^-)CP!"zsb&]:+8K1og-`ԬGECw5Ho"M^\\E{F\k'="lt}OMPe[ՂxP9t]YyP)ܡ55a> PR滷%d>uYGJ ,UUb|O-HFCN3}S3(uٸLP@:[R `>9+/"Y}~,qתX9iQrS \6 Kևdn._l5I%:0Cf .޷5Tˇ淯8m|!cd)_Kfɚڿ:T>Œ+Ɇ@331SL\6ٷ]Ʋ&L}cipJ< ͌W:)T4|̆hͷ/e3F,@L3>U!;^'BmrUfN;_i&ư#1E!}(_â~Ўu'f5q@'G%HAE3tQahqzryi lI#a17qS 8;RH).JK@кS|uTUL1-}_op?dbL{y!:5^N'W)+>t.D?Ek*v1pE[sLCt PM ܽK_tͩ#ټ j'8mѝtxϬ,X>[ψ mpC7FJN \A=)V N37FIjxN~*ЫNr&ml~EUҜOLʵYdbG`)*m?&&"( {"2v;)=u `Ӡ{Z(Ç2 vt6;Jd^\W _bφu?)zɿ qD]VX~o! mn!ǿW߬;bNthLgt)|Wz3+!hIB^EԼ]YL-$>ykC͢{b!o킚;]^r>Nn/Aҟ c̪Sw+I Hm;{C/dSzsG)7b1A40Z'BW KT 5ݵkP1XjJ.QiؚXcSВc5;PiՒϚilYUlt]{oSeUkI[@aHE瞌gu$Ri?Sڗ[׊jg5U3)BݼnAg-c| ],|K"b s[,Q=HD3^YcͰ4f>L(OQ: ׆y"K~+~Km\k)ly+Pːf'kb3^v hv`2RN.y [y앐?,c#nGk乧bBCJ.|b gH}rm0# "O6I!b}`۠ |Q&Qې'`;w hs03eMFFulVx}vv\vA9*d`]g&.%X'?(*0n]KƦ2oF,6@]+p3h[tL\uh<4(JgE^y붠r4zQP+8ۯTb/J(kp@HJ}|5e|tG\p#xjl Va_^{D8~g 6-ٵEL{q(2ַjm5ʹRWl> ֹdL=Z:b0Fbs)IrnsIz~i0%Jʵ!ݕO U׿]e4qYak鮅ES"+*P .3;Em?%VvbN s]# Qm]`ՉK#;p؄2h0z?:׀~"'# ,w4J#?+Ҭt{#_!3WHwAޔ0bVftL]w4TWIe0D%&<>#@j~MU쟸!{4XͶ闟l0%]E5vOˋj$ZP1`h[hx0@k^ѽ |n)'|ZdQG]Nb|OFO'r&Th‚y^XcmFNeY͈W";(G7Q~P躥Ȏ*-;^{鶤|iX`odG*q:T}H` 7L4+P-rZb9 'Q:wjy&Wh76ru?_3}i5wo73Tb9  dYS4SC,S\h1y̙g!q6#F MR<=Y!7!nj`VEvwU#(7vSZa!؟m& 1œk,q. Dg0*Y Q_gQ |mSGN0"9,FV@ʱLfo)c!6{j'b^p b֓Hc3% ?ڀjg`>Ӕsy6W/s552㈧NVy%2zNYs fdn7pduId8E/@ewCY?ӏݬRY 1P&]ei{sXLCIoTIhYN=:S,XVћTQs_K&'A+ m{?9,'t{L{4O{O!@p?$!봴v#c0߬WF+1Y V{,gVX{,EYx!IKԵr-xvh*of3q Ymx1Dn rNW!|fiRgf',>aQ_'_K ̕(u_z!$!l`/Pr91iQ̗ZY┥!$g'=lFkKhCKވ#Ɠ5ļT(t zG{T8aFs(_m v s] 5K_)o[=,"[ pTA{5l^zTq:p4C(h w,Pq0w2WM?˖RsUUX{_WΰNޠ|mUŸLJq@.gB q ^멋~E7/lJ `ܨ. *m3h-lHm,H6E Yִ,qqA~HL'N,]ƜVu}x(/LAN1E%$jdBYZ~54{'ZdjyBve^&')v ZeGK i#9M! +*(Roԑ3z(ӕ#c5Kѯ؏@ xY/>c0?7HM~5RV,#9R8NU*/lu,M.QT<+NQEjmjB,c_^J]/Q x%(8g23w۪ѿ) {PUTT #Rm t"&!mSA !z=":̴,k -C* Cs8s7yF-XH-aZ#&xQ-9\kL[7ٹ >N=GgR\]j|rP57}AJ Zɷ*@ED9uzh,u=-'pF~x46pBc5[u}j8=WYQ Ab NXϴ39V'?{ 愛oiˊWI^z%Ԉ=aijKȈ En9$zz(PΚ+r! !9E4'Q!kZ3YӰq{$Sd&Op[zֳ%g䤝8mkbI\qXg3&=HTpSd.}75o 7utux1\2pކ%Y , 9]xcy)Kõ6_| k Dž]|܌O}WMힾ,9P_+|%V7h" ϙ)C \v,ŏwGY4pdJV֎w1;63NUvrywB#{J~`n-Md򽯘hClpm߈ Dee$w1s婄\B:nLَF;{-u)41tby^[g[@ɟb:<̄k  4# `ka!8>_)F*e)Z=P )佀ea7GjǏ .fՁku?יBN#㽑Am\liIbvcífdT6le[K1eR)!$ޔCc%ϛMT㾥 c+TɑDbl%Uvα)}(>SLԞ`_eX Kگ?ލOxHKJW 6N+3S q{[HMF5KX +{k61[}>hHrj^h |ˬx@l_y*L}IN^LתYPRfVCc}vg8SXek?H%@F$Yp4*J=0^[p#Rҥe}eq6>/JaotjU~/*X(N[Y7*I&o6yR q7 v̴V1y_cV8D(]o k Hi>v ;Ɏ~ 6==w{ԒWM. ؜:z>bq>cT}QBhԫ%a۸R>( 6˪(LXÖc?ӹ ݡc`hCkzZ io ֮檠VDf*6,` fJ?j0_TPXzd1#M}<Tq=ERi0iwm)҈NvaD6޳9}yE$(al_!cD;Viyn߿۪*o +I0㱼(2G-,[`$sۼO{V mPB -o4""T ϱ\$ܷܧ0S¶D.cʚ tVl 4߀>xBԿ˸ ցe%c@Kqgx*#ԢL49 XF]ܱf6;'B,fŸV+b=@HڝdIe&uהhW%LgO/1JNMϔMO,s\Cl<. #[KbuE &?ό{}d5W&hSڎȈ.LOv=SH q.M NR~=?ғN8lLWi%O>hQͅD$ЦHyBmH~|`P<<,c9ZA؍:Y[5ȟ`uV#7"uw96?}|jfZ(I Q@/kZndA(/ MH YWSjb~</*ks TF/`*QAoRMZNs1fyMu?XT>K^g4 (pd#Kxeԁ&S!cZ!GIʥION5t,i8LVw+BhrJ5pَzSP2SFJ9e+G\)Kfwڟ_N[;}ԕ4-Z4I&ByQ.pO'm"ƗsGb:rtX7qpS2l|5 2s CMҿ#ıc::Ӽ((JG2#0[ !H 5̘ərQF KI(]%1Ɔ)ˆ\;eIU˵^gCU'luEi.1136nt(ztNA?iM1bWk`Hz*zy69\XsQGp\cD$aJww\8HYK,",8HG@b8XPo$ AA;{ҘzM,kK LkB,Ch[ 8Rp?mŞ[׻ @\>ø-#P$,o*I,p!E<*˟ւґyqe{_ x#]cyl:P;M뛲*{E4}&Ejl*e.m/ZϣMdXl Kc*iHln1 W%w{L:UGB{z.%GVpx LcR94즤v dZl#4Xd(>k|d:ڕOpZ/7ga~NkynҌYZdQbriQYbO_N&qZa[m@F-nϘH˞ZzG@`H{#OE g:;gC6e>G.ebA@D˦t{~z*KXKH}#_$~+lŽex/&f~y`۠׆u] v37r[:R؈x|a4d*2U uz駛a0Tψ'n﬒=uQ),cy Td}ӎ%gRbqF/<^VÓlTp-gmS:=~.#f=Z,BW u>υbĸf ۳cJ;`SP`s^O}ЪíNn' X>nڎ&cY&Uv#|ёE,Jy >Ryg SC ||IJb4P/#9Ĭ1~m!dhdc3-8]Dl^\`);u $ C5J\)վ{1[qDt^CyP%i-X'.꩚$(J_why_#~OG@+duzПnY{x+J M`w5%KHBG w- * 7?٪3ቖUOqcҪ ~\\|y6 +sl YQ7I Ax;ɈbaKPCn[G/X$⬐m_0/XL#N%+XLKC@Q+'eZ꿵4%FVͭ4y^ce=9/CC'? #g2Pg쵋Zۑ#gtڪ "k lSz ay~9c *'P./ӁH9ԓRjeLtn49~H,n0%Yfv2F1L ?,[ie]#'F(3AEnʷ|H$E/W E:7wܷH yfEb~(}N%w}R -Ij&9g vsoqE"FX8rI'AAk ɇ!;]GYoY Z5ggp^?3oA>UQ o,T(,]F/ #79j!9 kfg?|ߠs?9yZG 'ܶR5Yk1S (՘G}愃jǩ; i~R;r4}mj~jY۬BD}} fw [[V` _Ocs,_M1T0A8_b1N8૲Rzj3E4NOI)$Z"8>^|IGUB.͒lwͭ$EiA*vdҨ('xeqn(T$_>C5V nv(H;AjߥBrpT4y] >iR͔$Hq mu9:wT;R@*嫈J}HI96}^cy_Tka  ێ]AdSۜf_5en` Pv\^'djSա #ֈWǂ:W #a_me]pGG(wT*?q#.XuVUް}Nzz6f \P~<wo'7SP52h:,u,SKC9בc9qM@fV'}-s5z, 3H Lk+ /,`ksC8GVY ϚC: aotE\ 增D ,띈3kg9_vɂnW4B=AoL韱^zy%E*>E22.t Zvۜ 2R+q Ie+i VC2WޝubEx Swg )8/4|fuCU!n^:PW|"g:N\k|2<ѩ Dii̔.) |p" g2zQA=RTMD gN4d.M.<A؃>u/omӥtddp)'Y9V`i\ F]M[8cMKE4J^77¤4kt(uc'{wsÁ6K,)aW):H}0@rȣ~f`cZrutI^| n1uºIJ'%ne!\Y;E^ʤep9tM=2ZV1$h,Vb;HiA_1hls{SUDF gjҜ_siatb ^UN22ƃ:$*E32\1Y,,$MUz6»}YhgWYIg~?l m RE a }֐#v %1JLnaDÕoGyyKMev[Ѵ-4.#^@K oOf/?- m Ѭqy$z-deUM"&Y͠QhV/,"Iz͋ڇ0x1VHDqI b&HQ: DN\ӫzrSuٴ!`b{Y_D®i+%8Ƚ"#% NJ3!č,80wt@P+l]<2~L/ b;h7),'-JQ VY)2r XtِV!J(8'-G 3SJGLFoƇIir,c2 BAui r^ MR1W:_K-í'q!Fl8 u)\/Gb0>xN|se@CɫMSv'])*N\_4 F؉?Y!ǖT\;e1qa>?q$y*nfF:?T.FhxJK﷚2?ϾVl߻߮o} 2t`Ql}¬8mV-Âum덐5D;;9zT)܂ϧo'ȏ+DS6RiJ\ 5(CscXcgosCGPvphHQ۵0`"M`*lSS4RSL84Ɏ<~Iw@#kx!qhK.t!,ئo:IĿi8yXKy'e\jzN)McXLkVBZgRA(-ɉ 6ZsvZ&;=p\j|u8dC.B{܀Ūۑ!ock)Nx#GZ0z: *EgnWvd%\ziz#m$^!'Orw9 M4$-w[M#}B+$m%,s-._(Yzc(޹2ذOp,nmE&ˀKR<%܀[kw{}0_JSw&cm 8Je|1珎mswq&P5!o2Ӄ] `lMzƩb@ O"1zB<.?yJ]lbmމ)"}6ؒ{rH7PR%J,4KeGr%/Y86LI(Ό2 aN/G SZoZwu+Psq }t"aK ?H_r+$&:Y\vtrA\qWuN2;kgwӴD.j5HG^!_c^lGakU5JP<2c\JG. +ɿߐlNyRf !C~Zu]_0QVg!-Ea)#&V=/s}J.A3KaPɡ~W2@g 4Y5m4h,MaJ}? 1 REH ?ϑP]zQc'(`f Ϊk/o3//|A>*ˡIZ a+,t](Ǽ %p k&4lF %#K ׇuxcӑLQ2=2| ǖ?\՛b+s(s)dg3,嫣DmlCDFX8iѨ^+w 繒Dyꌆm{!wZM@˪* e0O!X_SN- c)ĒlepK-LZ돆^~% x:}c$uеԀ&4D8}Fk3|l^b W1ڮa%C02Cwū{ 0F.>dN!'e4tl͠89&30ǜ?g+ֽmH{YK}@X#ܓK"H uk^j'pb:x r0\N{I.'{ްR{W{3 c@$8zZa(?St.2iNI Pr9]gUepݜ3^`Ie?CMSHm+ <ZA!MU7ǧPȺ!=~eX%~e !_dLP>b+N8BeE ')r?Tb 6"Ci5z}k۴T r?L4W51ER6Waԣ >U_^+Gq~>[@f9g~!=Ny6Nx*sdTM0?$rԦ=t!8CkVװCbI:i2D)+$EgzjYh6 AR솥!84ߊTF= JF3AHw>VaH"RI `4tI.b,ZX 仾[轀h/ J*u{X1_i2pr?sd(m*T9&: =QʔZS61Kzs할Ep i ;G2i.bC̶i %-:2[v_wpYEMג ;@y O;e)(KN]qhkg d >e(m5$U`^~:N$IV`%#O#9$ù@[ d+_D҈G\KDսI枑^pKnÈHL3SK(Ml'q2ub,yZDM{;T ukm&jDӫV(f#?*b߹ ^1qI sUlPMz"m@vh؎#ҢFҝcҠYvPIOJ|mUQi*j#!fb *ĭ{6jr>HREGmA;csyRWGpX!fXIL;jH̹AS'ݤjˏ\g04xrK+=IlfFj҉ݎ̰E1K@lߓ- gdY)eG9R,mamOZXįAoUbVڐ9`AGL1.;M4^@:6R7=L>!KUJekBuoc5P3-f#q0.-جu %3lLh]}}+8-3y3}x +eٱq *U޵g!#obC!Nڇ knkxU!NJ3iaRRfI?EqVz,폦jN1E?MXu\ulDx$s+Uw놇6TER&m,X2"(W&O2oi&V4ht|83,f~X?b0mFٌ>.n>t8ADl7J 'iZ^42ceԿ OX9fdT#aH>"vuO vH\A"46 [$<]jzF?X\TJ([aAzt^zØ  @Ӻٖȃ8ov|;`ݶGZ1',l1Ss1B.{r@0{}~wYO Gfߨ x]1oDmH /5Ẍ-1"q_Se}$&X0 HFbӥ-O&Q꛽.~qP&F(zɣ,PQ@Wb) J*L&-{m rzWq$nTt}?l>x>S1rUM.)A[dehM%8 Đ%HDW|Iyt 8eK9B7NAii#ԒxGy6d:~*-:D6` n\͂5̀^&#EHuv.'T!T{SZn DCôGVs_ Px U+!{懩;uۇM=1g ~B^(W'WRp_fjR祚%LKm\ByQluxƅ;e<6ʢ}5M8GؗTZ|Т Y\[,bĐ!Yn'!] m4 8>x@ˤQǠ%j-Dm*uͲԵa6=?V_uIHY*7@gktCk8OغIK_&e^160 f(sQ;hwH89,| Ojې/[*:Qɜ~WVswٴR渗MzQevǦPc(5séjc0 6j<Nz䒢)\ժy.ЛM'pZY)3Mء3gI@3o \S5yf#\}*w^ӕ3 ~DfTifkES >Ty͗FyW S.!M^9{P^Djl(2ς5(5 MjoMXCUPlDЦ/}o?iTY 'd lܻ` ?jE'J #}  Xn4])VлqŌԋE(5%VM' d٦#7#T7)l"Ȅ;Zׅq ?Mc,W e68*)4ǹ42( b Ji\x3CřCҥʟK(Š}&zm!4Hcc(OJ?&T$jbA?s{*U) &o,!yә3ib|))<6ˢi'!qgT!9q4qu3~G >[YB6jvͧ_0+i)4YZ6:VIx-8Ky(HvYk)gp+ '*t~1L$[J93bA/@}XR1!)Sj:[l3jD9:?(TqPAe(ʂk#,jDfu첮yjҧdJI#.hV`ey_#:D*M)AkZ6Cxənjx}ĉNW\,S;Нx SzTm~GKZpzv0,Z9Lb8؄ ΐ.m2#m筸}:D:ZUG,yɟ~(Y҂[3NSRpS- sɞ87L3c̩H]X ,ܲqRhK ;3GK  !o4"*쾏)Mip;w_1/~ǺwišZ XNrNA KEQ+e&{sZܐKsdz^*nWU|C:O`Wko!Ѯa~%>mHz6@O';p.ՇYݽ(im2zf DIBI_(s 2,VJd90\/d)%CT#  UrjۚjY[=r PV$2JY.*rN*srYp| ,b_lړ֬; =|Ud(R$ɦ"ڲX%fm' ;팼PFdx{WEzo3!=1o;Lr;;v{O<5=sG4'k*C vq}~>R8 xT6bgR}$A<5*#_hIm`7iW_<B8¸hk෠8oDng=c)7,X,=&o+paP9+I^|D% wAnFDE!O)W跆"2ӋQL&v ]Kn5ZƉ\_Sm& i/)x8A7zK1qk:S{4M5uF[5$ jx2iũHU=\dGUM0(yL؟emYV4 f}:+-q- rBYLSO6sti ]()1}C"<@in2־iRyUSi-LSQcN*=iiVH 8 =mlbvVv+@+q0.;&'oɽJϑJ$1G"bdYmiV^ۚrqP=vO΋jbY Ը.pg8baua%[yK>ͣ}xRC?ʖ9. >sFgNݓ?J".X UOlLU0&oYR"#(Z̘x%{e7Fd5Bfm8U[M[#]g;k'=~5{Ȱu lsai:"{ĉ7eЋ{b_4Nql|P48Y;aʹzX+g i*s_ *SE2ONEndυ${2[?>lG]{~De:(%6U>+1ZKo0*(Tۄ78<>gޕ=+"ܠx=$ 6d"ՏqF qCddwxF@{xY,+Ux!mJ mn#V2 ƝGF|i~9>myfX xN&u/+ø=RLE%>R/X,k@I 0K|@sÈ-ћԍK8CSxG٤Geƨ,e\pc6KS| \-ݐzgÑˋ!YRɉcAG"śtd[P4(mZd^Fx4i!6 _RDYXMAk:; 5A@$r9EP.Ěs+ɞGyprm t! =`Gf;D.wTJɽ +g B +jK87EQoMh1oIx RŌ2I2Bcvz)W%iߋw v*f_kJ+iN$ufCc=k :7UWUOμ+]=siϫf1`8l~e[* $`A5l)r,B_ep-B;,5W à5Fnu;2ڧC :p Z1^:hzOZ.,!*uBͮ_ϐ =J%D&jox4^VHe16ׂ_GvY>-,b /N 6+sf[ _R-"̇}q9cMR&U&֕]fRtj [2Z{޽%^B(%琊j|€{!bV,g[ BHbf,#2U:44%thn˰T Wv OJ8kP/OEE@uhk&}^FAӍ|EX--p_HUv7cOn dDT<v@[m-Vn©&M}Qg7 >]L9N}ue@S猽bvEQ-a䁝K3,އrܘ"$y%#p*6];PaDc\ν uݎuUCtH}lea|ܺO2!|ș#K+C3pSq\<,eS&›}2ttvL%).Fׂ> 4gdf"pX$R9Y,'e6J,]E.[ˀPo8/l f Bւ]nlxTϰ}R_\-ԐQR A.{?ϒrPNbW$z\&eɑ!\qБ0\>1!(FPfΓv@I @h+ݾJrL4X{\Ph@摮`mĒ:Z"[^I+s-L{Ӣ0:-k< >a&M9g˝\n`7׀Axz~cL(¦]<HvډHj*7I'[v iE6[M\mJW*0Ǹt t)%Ɯ_E&1jM(× ' BwIJHEpa}yy7qo(`^O*;Q5#d{WS'/$Q盗..rܽ*kZS$vδp87*N"ՖMؚ?Z~ N[uqqssAw`Qc.2Lh`uSًс3J&Nd>w}5IsNɀ>HQ]V6{a?Or ) 6Yp?JMLY<Ԭ[2Kh5z{յ[/+W(9d̅ӏxc(Y>XƓ Ssxw`D8H'v#X^j Ny%!ہ sBpָM N!~lYxsZ7XϩUI>C=W}ufI{įL0T{pR֪ Ztbںĕ,E]:.}U J?W]8 Qy!mO^䀌s-hIFtHlGYyuQrܨvVd$5Ww/iBҢ$/Ϟ[ލQiTm/nZ7T\ZocXDꯡ5ެJSZ9^Do%/ʌE(dgӛ3f5pVHz񋤆Ls>0țT@N}/+:r$X )[&_>h :YDƞ͌nOގEq!(jmX[[l!A !wbcJ[[t:0Pu TUA5 # <}l\l(l ">\<MX& n%f$4z ׄZ N8ưtNHol͎4]YoYO ײKsZ8XI 'Zӎu3P5)UgiȩU(7-5DF-lCcJ@MmIU7"D|5~&\Xv@ۯ*@˱* iΚFG\!bwR K!ڥj;U]H;wFjAZ?}`2o~@C&`޲HhA0 @a|+eX8Sj-e:L҇ԢTcGs`(JUmOM` ˋh,b6jKӫU4mH7@*=nQGP`&hU{y$ Nj|uw9V{v}}t;_hpRu̲񲭨P2d`Jk|=W &a HaE4FG>LyWx cQ7K&cyyz?_Ж'͑9mTs/Zⲁ(2h&iOmkD>j&3J\*;z&QJ[ΈhՎ%'z!a5i;g${iPG}j`V:?9nG_2I[}O2Rzr<8CY?RtH7Uo?i^y]yIP@'لf]z R~k0Mm!f &t=#u1 3vR"O*i%e4 Ŭ~b[Օ+AyRbo/-&-rmf4EQ4Gg]Wz--AX2q+KAQs$<%s衅GMIs}a"f UQbV*(=*SLŧ LrpaʞK&ݠm{Mf%/2b.9 1'qYc(缸A*l ȉ@ӪHȼ~@LFTW4Ud6:a*m& ~\b4"(L/x{c?(?-bb{(߬IoM*:³Ĵ$c_J+(_!{˵r&kr*F$24]+=²h'bϨ{]δ|[ӓUMbƠ)?C\\}qݮ 6. 6WÃ1Bfi Oܾ"Q $iB{cwJNXJMIl!/X[%|?xVW7N_1[^VSSR 3|'IvY+'e 9:!K'!C˚i"$%3 d`e<@$T%廧P# S6\',8/pZZ:sa#O%=ǬݐNeKZ'E)ô`46yzE/ݶ^՚&޳7׈#& @LRЋaÈ'-c `m "&_R,Ƭ,+jn.f, tM` ޲6Ɛ׵:ӪX"8tlˇ%sSRL{<|U*$^ylTV wKiʇ|v5գ ٰf%0Š,kvpl{H= Q&EiqȐW'adx>bBȅ0::ך\Frouj! !qzHA3i C _HW( N,H/Kz6׼.FFۈͱƨ,دYǤ5qKRe ( q6 8's'?ٰ%XiRvF5-)ǦeLy{Z6HQߊ`k'+uǷ=0AR8JpU4~Lop'= 8u`= ; @rM*}a/BPP];8/E^O]fG z#vB dKxNڌnWFzbSvlw=9J0';s7xyFؠ:O%]3Ojٟj-Zg}I\/HQS'|?~mshiqϗڌ{Yr{?zdp:@ҽf,V#2JG< P[+~%ܩ ?cw z2#XChSTDY 縊yOK״"?͎5kWH$`ފ!m>RdmLuQBd6Q;D#l% +VCũ߼0n[2>e˽ٞ\F]d$ ѐrlHgQx̃a5*IƐ+f< *VIl X"FB\A||Y.E&`&T?N̫ɲprk94 - /M*|6zTpܝXlL+#a<t%[R} #I$l,w=9mHW|Kfg} %u;'m&{0ЌeW_ drPi|첱z%2_ 1z܏R* Re2!d6*  垐L}>yy/DעGFY);@J]Rf/_yQ_OyRͮNfS>K[=7`+0$ieJDvf[ 7cpN;[G<AqO!ضX4;/AwW܎( 6no5ozkz<$lK@ƄI w fV@Fp3#j: LY1ZH<"H=Q- iȗu)cҋ<,0r_NjHXMcXRh*mPBhANJ y U4St /fȑ&4B>IIXo.a wy3R4h1l#Zp!+m[xebJfu"rrߒC}64Bj]D(}ZzъJ9s+!;{p#]Q<[{YO7qW/*4y B Nr"+/b sZ1q^0 n}1rh!b[V! =A.qL͘(p &#Esd&@2lbL./0 fA81zHճM]uLZpCNQv)$o |7TE pcY3W9w] *FԳꎢ%eHgEk &dx+RdoEX9a"s;r1!]cR熊s7F݄-c)-VXzj /80cDWea* ꐿӁ'N];y} +yրi{S&!ϺAwk,aE[Bؖپxe A׷F,FjJX/3 * :*]'Z [ }L&[VI: 8.Vf.–d.(dR/ͱ D_CKjK-Q`nǬj}XS0z"u#7!Se+{3cKqHI,;G8bӑEw<H_⹮& gE[-bxD*Юl?qg[6ޜȓUvixatF:''rxG O=='v"&T<\!Hi7rV7 0diD=mC_+))UI~n4cG`Ъ* #?lkkߔEJ2dL׹ iH|UW1}Zz0 !3Yxe7$Z mgt%lcܬ:vJ7@j\EgI-QJ{G-f T:flzm|"TaGdJ4KnS`omUm䩞ވ3PގU!HMv3+~k<}MNhH=𩋒gOե :  ۊդ=4gmzI1#ɤ$;Q}''ұǘ^bl^值4…W5a?l#Q*ԝq 7-} {2dV.1ӭf'S ]QnH63ffZ&NH AU4^%Ҙaok#wθwa=t܀LXLzG4Tp!\ ,,drOTE#RD{t6h (dƴ mC:ʎy;U^c\aVKVC2^rɚbzPo-qy=a6]q!!>a<)mo=R1gLu)灞W jA|o'뻛a2||hO4@\7 h} ) CꃈJ{4yb~'\YQ 5hfŁ7J͕ޔ%ZӺ'|ϰWrAt&sAdFa>7.Ro_ww~wd^}ϜEpnՄ[Aց/=TFխ曯Ok-2d,#Sb7)VAh5j/*2n.U3v$aSW >Ɇ?*Qh"]i6*r ?RD"C}ݽ c Q=Ύ/5Gm| Jiݗ` ߍ9{V+cT A]d52 DW aQuL!X\*=d7% zI*E>=\L"Oz\,6Kz\A~~m 皤-x.Ev-ط17g}o7k Tʕ:)$aTiΌixq#{!,(VƆ*å-w]^mJm{q(!.ie<O],X$qxnJ '|7$$֕ XQ* f[Q#Mx j"T@!n0`/gA,#} h=+\8~6P:J2^z-3KHPT}O W#YP] )+3HN4/eVS^j#RC*Rq67C&nhXvH_^Ϣgf%~t25гω419Nru/h-}CKJ Uqz~Fxa{WIټI;$I%7h"X%SKTu3܃_ע|p/V2*'e - rJлRA ol0@r*qⓄ͛VVYj}p`GS)d_})7n tFs5xa%$.ƶ4'^X7h1P"P ؒuh{Cdg6"&3!a'jO-B!ɯvqr4dDR&DоY~-c!1Vl%O=IU9CD$l^ %h/:S^Π`λjLjvW;K=fxAH*ϡyˢP_ pkMcxr[14gRY-۸FwxBC?wcGHni:z ͠`gB7T dJoXD)hMO"\=U]""U1g̉]>A@`;jƥ,-:x}͞D͝hPp3AXelJz 2S`[}y^DϩHN, dn|Ʉ0\DŽUT5ԽP΢qPhI))hsgr?gGiEh-|9G^9m# x! mj2E1@23?iqsI7xsI~F٦ "5T :6vC9J"r]v lL^Z*rצh#KQPM&H1 0W*(8=r\ʔHXޥؓxW" dm/5`X[xzJ=+NdW> Op)BеzrU ]ubHk5VsFX:t\`Rsi;gG/K\,QFͥo %OZt_m89O8&M͟4`A'ul,sfXz=J/!{ۙ?,ɵEϴ,k-x|vy%a3(mrR(no5wqAOƒ\<ʅbMmcN < +1mx~oP{Y4q7W5Jx$({;&uĘ^#,oS|zcc42o sjyc1gu{U;69بkNK ' -'g!`Jvk#Bo՞x'7-dѭ(I1ی }js.aLzwI t:AxYfrp9ML=eL3bUISm5 X'xٔYk2 QYCm]~MSD'Ï |"wk^x+]Þ{.#= MBO%!0^vYeaйci\YУoAw$tsź v(Bes;CR|Ъʪx,D1rI=/gxN:EE>J-Rt])=Íf o=5w0W:W kw ExW/Xߘ QN茠\_n3$ױMq9Ee pi 0$!G]s{%AczHs5H5ya`H~0 ;| jD<´gT3=L }`YǧHz0Nzlf VA?EV~(gnU 50Ɣo41Y=EbMD}SdmC:K7ݥBaM[/$fvje5q.IKޟ9@Zj[pw"{RHN%g15me`:_Ai|̝.!!H,il/=Q1t M"e׌JO՛S1JbdTum}݉ 3LqkݦRl!WTFp}| Nz&B"5J$0漢zlA9 =rfa-%8ܘb:c,G ĽnŪ*!.Voܕvtk}_sB,ۖ|րm4֒SlDkd˚'Niw/'^VqI9(B6 Z^g0߮Ӡ~kCgfT>gsH,TЋZMun!9dQ}B8i0v.PA>yt%HR`L> ۹AK_(qcpxqLA/ !ke|:EF;A ҶMmVW'qg6}択Y:G9kr RqL {E\"@ ȓbyS]͹yq-ZHM Ieq3́Qj= ^yfI Q}e)l߱{'Mxn#NɏuOfݘՉ&B3_@6o]!N4jAÃK W|V+h>lu6>hCGkW`y%+I?X@2X nGːeĆ~7L٩O6L>mwR8 S}&L:Jc K7&$B2>0;^UMS#ať@!iDS(9`q zf|>FKؘ⥩rľ'l^̨K'ԇ0GqP=8C-!Nك65o妳f@JX$2_^F, ɄTA Ӵ$ܢo~snF<llFRNßyM,cʯB@< y2ju ~_8cH AT4[ha`]@; erGZ-Jo~ ;[f 03h`+UX Hm,qG%Jpm_\ z]kEBt왺5aA E?K=*dZ ?d__bϝpz~Àw&wO[hG^1:i;g뿊r9C )v=KUeN/uPQA" 굗8[ތ*I?,9O6jDP@]7{ Q]oZZ;hE>#^[qv.b 1.O<(Dgł;T= &NLa #k+c Y5HSފ~BHd@66<ӻ| !cI}]3s{ӧH7HAa, "nc0E\QՕ˃PFͧu~U_ CB]`2֦0>=`ƈfon>_GָAPA~r3gj!A5 O `=lu`aD0fbZH+LyrxwKX6๫c ~|^ܺ-X*-RnY7c={q< Z dก:^R4|qq yi1Y'Q7疁֌GOōp,Dm[("\d_GP3нNϟVHkt*-`"x7=ӻNPbo2NRȑm: %3&,v$s,Wnl~XQ($ osoi=aByO h ͎L{ ;!\|+dq,k@7bC*A=xzPTSDww+D5=l8[8r˪(baGۙ8z3cTmp62Xi$KP n{SzjJ,h#@e~J;s!}I;IJT_5i+@F-%187)or!ة4gT2PX<Xmf~f "(¡@IA1RQT؇aa[Yi)]a!{`,{x:wږO|Tٌ\I)Hw"q= /κl%35SQ_F~!qn6֞l7\IT)Zc[Nojo,A.bp)~aK;>C3'+ \lE){MZ$z}Y?Ț`j A׊,KL*4R>!Զ6 SiB˸xN# O'= @ h7;V-+m@28.ZUVO;'5HCߙ3(f81~TwܖFhףrN4#z3t&F`Ӽe;EM>Q$dOQp2RvC7y)hjM O4 ґCT8=x.Ɛ9gԒElưGn_LFTdh آM!yb Z3X~dG K|8ʝ\n .*sMyKBiBS&٫dx$9]qfHɃ.ۨY;(@XU #lZ-H&y= iD< +EG`ӎC o[* Թ洽9Uf(2ih|Dgz vb/ 6U| Bl?Q] ̈́wO̙f!wKΤUݢ YNU]zg(3묧_げ dgEi%)T$|EΩ?W^n<= wRD̂W*U,0YDWiZM9Dv7X;ZxtNw>fZ%_X%4 AJO۝\i֏VH#3SFc#x# {0Qz_ Q$[ॠsLp` 5F\ [Y{%)q:ci+Z-y1eA(3HZZR>G 8V,bM׽$ۻ$ Ig&!; Ƙ,1 D*QD1ZlI:x "=wT$\Fi#Yh% ٧Xa8d㛨mL/ "ʱ.f#QlM*Y3f~N`Xn’Ph5O*b!$NuTK8Ȥ5u>XLC m27@dzIZP##|)fnN$[QSǙIOz]Ԑ܌NzjΩ)z/LdT\iy%0~=u D,J$n?4\ T8ؔRk=XF16`/гf<69R9O(n#1&w 40#AT^qwlO 1O NE6YpLMΎ_d dO?U} Gdu/-C i zuႌw֮̎V$fJ!Jd,wKo) '}mEDp CrlYCI֪mBg+BFnl` ݻssq>22ɇ!]:z%E⏌2(hr'ft I^oȨ(ɹ߻`?+ZćkjYRude9kM*t;-[R3kt 8J<>KM=sQ73^+HDSͷiTeЁrL/ ;^98FUM'7"]Q6rYשM9XaBYmABfh.z׬F=&7BOJLBa Dj6$IR7%A|h`Fv%+~xt'? EBJ[gΌTlIy+UhƧ .RA7(%P lE-,`cN%ߦ"u?WXҚ5'S#<=O|Qf˭FRMW/AE;NncO5_a|! 1,E?iM)&+^| >ĤH,f{) ]eWL.@%5"FCL\N`-wZx|Sc<c.xɴ?im6 tdp4\ېύ ;Nh70&O:THDmDej<r7(]clYaeuI6x.c%XY3$+Rf*. |w] maELZ?zTC\ xLl%@.u^?W֐/o.nQ==osZNsw 4T71EZIA,zQB|N~>WTuYpX 3J7JF?ˊ3cu$4hS x?+/r0Y[)(n "jAuoQwa|vL ZXx rN'i k|Fn9Iiq=7FeMjJrb],W.8aԊE68#kB<ţq!Y֋_:e۠l)[,R`ޖO*%J͚sp 0Dtw-Rd]3 / w:כߕM8Qa23g`x _As⎞#?42C6S6U(AQ!a~шcM:zGap-`_-1%-[M t8lOa4 BioXʊT 3;_nv/SpfO$q>}<$Dw"C*g@W*iQĈejPN#{cD aC2KcFoJt! -c=^UeH+s~ UQ?~fUwS$%z[7JKp"x(c )*$0@[G E"Q  T`]o쾷pN@hV k:(ڬ/؞j=dgжi!@4=\/J*!o#i ј#Z3=B'_ÈA\5mM7>4* wedMHq ROݞ猤\]9jrBmtUD2o0zcTf(YG/.w}(91.G*P^j.\Fbю@2|Jgl*af-siJؘA̰%rT_*؞| jLB֏"-FD; G :eN}w/lUWpH.:RIMd?*O-<Հ"m wKoŻO|\re$ie.Ǜ^qw+tʆ9YO-\c(K~BLל(:TYǃ*-yF%|хE7%vD&LYyC-]Tq~ɴĉ.jtdot6GB@v>sJLoD֫Blp#GQN2}!{K6( R D+}γխ48uKURh+Of/'HeSFIKmUO@ l)2%z]1giStLށyёR{f)^P)3jxp7)\WmKu|_ͣ\<[$#1KQgF rw[q_\uBRQ}(8wݗz~l" #lz^^S̻2ھ8 /lpE?Pf<7B_XRK8l?uHkq,B06Wֻ:cU܃siSն:2q~@FW|ZzQ&)hX(=q t$dr=5ucˡ/ȹA]~##fk5>!Aa !Q ٧=ЧV[15ѲDؽ_*d%[fyk>}.;,hoOQrkZAg_iJŅY" (i8d)@.%_aF:J!N7RuHp&L@ɸAΓLߔkSҖ~BFz01:0svWz89JY gjS t|Nլ=ʪe3Z klUi#4ޝ c| k`@v2BV*v{4Q>[_թ&; o( C ["ݷCѣL̶lyZ!d*b#_ WTn1nO_ktCK&LmObB:MlM]^!B˹+qnUK{ͫĔ9͘C%5?Kݖ+=,9X)3&=E@z=("+:P֏w!ՌKSf20Zf"śZbr; ŋW%+`/ D?IGe@_Ws.ґ_ c`&nf[RG5#MO ;#ٟ/_Gg)wmX E*lL<,5߿f˯gEme|5yۻ2Z/t_.jrsYi}<6^T,5O3hsσiWz LRgZI` L`qfMxK17ɳ:'|wy ۪J*8lZnp`2X'f/pp!JMÜϽcIHζw;d@ZH6R5&E.5ɽHqzSD)Npǐ=2߇VWHPw.;PHn20D"w76*.Գ庢*#n:P N"5,7/l)I⦿SWt {W7Dڐ! ,˃r.bP_[Q0?ά_rxi-3E1˚m5%sتӿ҈@XW-:lj-pIA:>#PAH5]nEy? XJ] vD3m<2ʽeIafHuvu]m<NJ2_=hH5 # R O:0XJ;:5>c ~F7Ff.!&;P3 =d x:[f5 0R31wהm [sKyPPG#"Xj[V iޫi%hIxKHc89mah-߳1Q V2[ȣØ4׻&U7"h ,İ T MZn`TZ5ʍ!9nu4wwZ}hQⷡdk$K-˙c.T$(i= 2t Fԩ:@"?:6]ra9/ԳyF1qb^SMCIJ ɕc Ӥ_̈:1Ee4r  lr{ ֑Οg{;Wb8$| DЫjVh'7S'Aӊ9OT |$%W?CZMtSW\ʹrY?G>V fZOjGȨ&'\\&0D&?;{6aEGAYK(`/VM(Kb7<DC?5G"}:#|AB )( mdgPq,6(,1惥j)5"U 3Ч|gf;L< zzȔ; q!G7^Ŭ/CZ 3|NAq0u?/K쫏KSYUq0N*%;}s֞EnȦ7OMM2cn49_{nd?~d6=_4XEg pn~ǨnXY=>8#UcMٮ?NLFˋ&4?Rgksu]Mug6adF,VTFsy1H%M7xR|4wFNۗSpytb/' Jքh`!TɝiRI?U eLЈYF*}u|B@/Ern W 9'q;DCh8m Ĥx OTknYM &NCKNJcXO{l&ޒHuې?Ģ !x{8=\L9GG=%IsOtAȬꦮJ:ɒwWko>/|/LSbKm'IZW<&Bp `^(iXɹCΖ]^6Yl!%n/`*[k鲃KM^MRcv䟤)OmdP4w/0Q#O,)aJ*~<5| a>/ca޶~@XskL"vm}L7Gyaҋ=[E^ `쀍GJ@P v1Eùbm L *sjY>ۓtqYύԕ­$kJ!GaBL*4l ޗ#89jl wmB@Xy±$^$|fZ@go3[: ea- å|?=ˠ6"of:n:%.Ǭ;S{ hb[D"0yYL4@̚z_ 8}' 6 OR;U7|RX )])3+V2廾uTFZ?+#a4}uS4^C^on=ZI 0(N># WK^%'0?ѸdPߎ \5€rR"ϛ`"*)㌵+[ї,)`U颯 VX ~:} GG>9*0eAmM9NA4]@'NT GrP"2ߑl V_:'1_O "܎m#۟Rѽh3ߵĺ Ƅ {[6\Y[@84eqIIR,ۍJ6+>w؊]e5`s`d_UX-TjDR!C5c3-QƗnF'S53STF6|}mMfszo7:§4wF^u:)MlOX ߙ-aLo9gsTH{kwg䌶.V üF"O Ӓn)P6GDWn 伦P](d|Fތ| ,qLopqyV`hW9aG?ھr1G`#Z1&+#Vޜ2X_ˆűSf%7 Nltͧy 7ܾmE=u߮"k-sM[ *zI "fAW4nhjMoIum<-sU\i [ˁ^;\Kp]40 ҋXmKk<%8&˂̃Xdfkw[.JQb{l%~qZ?z_wpV=lfapƹؚg@«@DRm$J4wNEJs{~H]jKu~cG^;jӳ2Ch qt՗#RHA0Y \= Yi*Y+y;!7AN(; pL70kkC_8Ao(|buZhMSF͈+Jp!u_ekIKcb67[; kb\Iؼb SP40(u}=#YxOJҙsq 1<Ƽ #j? W "{BzZ0Qa8vrg܋銢OnX P]g-SzʐyfȨR]`,ԑc[,&EG&](kipQ1 i~F"ͱ<_4/pekQ?_Vag3pκw˪˺@*9}\-lj!z&[.X5Paz ZG5dZlC&@vkb'gX<>ET[QR6;  hȑCߜUU@8/{7|k T}1&< 4ߒUЇ K6jPod/]썟h>4)qI\v) }1L%۶ Z@̙k+oVz\_>KN"BI:I!yagU<{:ʣ+t=yՊ0e70SBz{ RjzW5a3^d6[K636X&'R5Q\MBYƆ[i gYMcl\htRP| O4T7ࣦs5QX]F5n1E"P:wzdV,JP}%ۧNp {y]sQiF+x닓=w.kT(Vzu]\fM-t<, `&S,-`rEa~%F:0 /s Fcm>(/S/.5TeBF/whZ7C|h)[$ztMJj-D7͢Ml#rH:syVi( '5*UJ`?H<#?R+ < kWm2nӈ:< `QJNz +s:HkXSx 8(/o߁\ MczM-8 ,GPsh;7$B0̯ a|ԝdnH!Mpǀ g'ʍ'إ}⏪1gw:K Uh)k)] Tqu,NG>eia%&? $0W)?jWa]| Uي(?tΑ%o$83±¶#x䪳vD 0nOڐԠ2}-q}֌/s)a8osXrPg֏lf Q8ۡI!SKӯSU{L l, Q{`k+u"*Cv"(AS-@"Nt Tc7I}@ rr)c؏u7odā2Mb,RjLAK!-샭 ^gY2D`}wYm-3AcC&N^ntX^qA u'v? |ŒN H8J0kXp`mQ9VŸxpYk' 1 K5zb , C`S=I#?bȯS+t9myER]x7i^ FrpVJsM;2{m"L cB/] c`9x#YE DdjlX'T@hnGxӨ- .,Ge1IoѕT=yڨUS8p ;& UiNn^d^d{GRW~(\U_ oNfͱW/_0BB)/p~^~ø6qJI[iRB+\sk?HC7%cCcj3g :s}+GUg5 K\#mYPIyYb0!#Gaҝ} Iۜ3xr=;Sc {bPgGA Ky) /ӊ'vG#gD^aCZdN!;|K4=݃]"24΀8~TPHg*m-a353hF@ʩJs=YAz5-axWUB{rcfZRy:FsƑA(sATѮӇP_W<ڋy mh€nj逜l'CR#DNQDk/C1̟c\nH6~ZHN$D' j'|mʌpëմ]uxj<>ˮ9lm/J7,cx/FCA&";,s֊]BwXNrHYg -EF;\ja;4 8J~5K\EU <Ԙ57J"\yӂ>fMebzH#D,W"QZg Lh|?e?,ԩ7vUi(ۧ㏟;5#HLh[LКbshM'4\-K9iyRJi4[@b0&a+NRa2X\Ț참èx>+ UʶxUY~""FE?N)2Y+DƳTlKyT @/R&R WժS߀?1&G5!!7INisc#g|jnUǪd5\j^O>u:UJjPuT_tۚC\0D7B)_ڤp}ё.vd {#݈U|#߳ڪcB|y|Uu-X65֧(m%z چRЕʅg:w]ӈKwqTa|"OT&u}na SBvC'RChX^!Lk8h; ZN̅ofVL:6\n>w6]gqH3h UT`~؇$X'HO]Ӱ0ںA@y/J?ۉSx%*+F/v{Do:o T̻i^^mD\B֫Da(c~)Vѱ'#C{Lx< # DXgC+{9 =TmoZ!uxGJf^'@T_l@4J Ӏlm˯t*ղuwUK@P`f,1F:\^}(G.W%Rxo\#pP_sWzFV* &W_x܀fP:RO?y ]9?|?3Pfe lc08&- ƭpK:w8bńZf^:ȁp-Mczpܫ,aAC3*IS?{L*?YsS(A[è`XQti٢|=BoOFur E6;@;̉"ƔmM1[Ue8 4&lÆٻ"m;}.:|5pwB*F nlp{0X+,4Yt@A|En7X+D[bW$J,ˢNVu؂'׾Qx7@ͭ NM<tLb,L I(/GR(ZH5q,Q~~VVqx4 PVY&hx{hɉEЊ̑$>w@_t')'T^X UG_.k+t|?0}H_ L?Ύy7з4‘ҕhWНJO~q<)Q/ ۖA_`eৡd:&i5D~uxƖ#h#qU'J}}DQ3>5c-kvwYN[]RejSs PSD'4EӁAަ M>Z2Ĭe{m Yᦈ<`0 Ђ*ldͿ"+ " YՅ=a0ì6 䚵[kJzq!p$) 5aկ& ysyUIK)m5fD om/ԑCFѳ힬JY3zxiCX5\#WTnku}Njl`[CmZi xP7si&79 %'jiƺ\^kn,(.Ci-g0-Ͱ;2?cJ`yD*oX'tDc RԠ~ V!#}NS!ÁA2S렰Z:Z*b (%x碉&rL_rLLy)2ށQ+Q~Li -jE 5R4vp)&^@fYkQ԰<[] l?Lci/e2y``/kE`7r4x7)?S1a8A\̏M5a`QvTY|gt,W9~(^'/)-Yc FQ@Y1I̿dRC,Z&u Rfi%P+M"veQbJ{}+MBnY["'s;Qxen(8~^Lnm.;)Pp~ >q1̓3(i7iA;<-[yk*,lU%bzT=V={^9K*:A:XIj(eMJɈ֛^>nYONЉ#T<-XaӁkE4\jl(OaIr_)1+> J }@~:T2lR<J5AyQhc>.Tn[_ 7f`ƿƼI3FGTKwI3òHh3|ҥ}€~x(MW- }ز5iIh(:ONQGb EtѥyIh3ؕO )f_GnDad%Q97XXjj1'PnҎnHtOW)kG]o1A0)nd◓+QzrM4Ou:ߌTN5r9w6vM/qQ͗p@i(D"eEG_Uv1Nq1ŹX s+ ^HäƺYdk9V]qoGk_IIʣF97d{235/w,F `Yhfjlt\'N=5h)Z0 .v6UeB6AaXqcRF#lC9i63*T?W݅U:ϢoJ0}1D,9qQ`F/2v;fF!v@-x4 uRFֻ$7jLp -4=z98lCs-%/ǮCȔU $/xc.F#97$ bwSMb_uS +'}7ct.Q=H3L%]jqu˔x; T̽݅ĘC2Q꽸(Ky{m518\f !aň,Cz(uq^٩11BcWU@uԜGGYaXay% X/E$B8OD颐ʹ㜯4l,Mڇl2O6b@ʎe`T;?Ԓ>{M͑]G$ӧ+B-w LmB3qļAgo9<Ć XzԌ7j}h3Lm"!tM *C. x^>RntјM'RHE[w;J2WI5F;GZ?gfq$ػo|tn<ͬT+|vmZma|jo1f7I$uBy8I#5a jɹ ba:'@'G?\2gq^bQ}s:Aɮ\#)DJ!8LD4BMrZ'*ZC 񳘹: \J 5#,>zLnAh ExJYo|f;Hd"6' C'/ERYd+kWƇ%6]և}/%V-g'ܮX(=8xq7@dч.npEk0UB:|,k)%KkO~wvaI'T% @PڷwGErLE\\ICLέl ɸȞV`Y\ p'5O" mE<@%UAKsfl( wfUa]B!nG_!3wfKiRW7Ԛ 1/jL?臒5γk֡?"R2ڰcR eG(ouڝuuZN =GevкQ9{ĂKw[7NWmM~"_t&!q̕GV/0_ AEc("2ňQ},d)õ8"Ml&]6 X2A_S|*PH8B9}u-ÂooLٯ *uSRݎRSWk"5SQ$jԣ6C`r?9?]}X%MPƟ*DplcҬ\./ZW 8E[|NlK}[m,ԥ%~ .(/fLے  LQ S{}(N/B 3U};.ZBt.on$7&3j1jL'jvD0tv?tX.h?& n~ϼ:A&pf!~.z0p+c0"UK68n=JG y s1rдpnH2Q?"e5>^8 Tc]h =v}mJm~?? 5BR0e o^E Vb FwX$2``k ZbuEitsF/loU*sIN ;'ٓ`kߝ;sfrADK$E _$?}HZ$_Wos5,k7 Ezcv9Q[Q:Y 5 %UD+ _,7,4[l=<ޔ} VZVhrwa9@TfMxtzB-z(H+ڡxVfM?˸eK(+k} 5:y;Yy%C\<~ヨS ?3qxQK;R޽Ez0ѹ; tB]g #򈃧x!"gQQ-3PۄWyzñl7)u-|9r }>2a9.Cl,+d비+t +{CI B (~Ure˞.^0(W` h`y@W[UٵA|fWx7E{qo8AxrϓO=Yj Ǥj`RQ:"Sof)GOH/|r cLHU=NϯhYѕ,j(î.GjA[i/#zEU=r'pQ)uw*ogۺ7gF=mpgvbCJX_0s`ǡ%=7gH WX023:EJoi]?Mwm Gmqt;A`mA9;%v4v[머g};y)b$ F?66p121ʵx2`߁44NBғ!6z̘7O_,k2T/9Mh0g 1Hd',RNP&fӲ*o{#Ws8a1Οݟ-偆 Ϛ0ݿ !gCpvj[=,@0$PݤISc\D|Jn$qwцKkP(g':xaB]=!t#%/*i׏ * žorI#ք ObuuyCo7vrARQ٦^:&;]|FЖWs4카$U~[X ڤ78Δn$# ?)hjZ 2U&xԤ'Z?nkK!uWKSh{vj59}HW*Nz`bBx%b:ZtJ݋ʮd|c QxpNޢKn6:ƍJtIUaj )S?CO~!s$%WTp|<Z|a P sjjDo^n/14M2ɟf 'x&1N(M(.4ȯ62Q S'n ؤP@C*_%[Mx*NsfS >VB9UI]~}^g/"S<бIBJ3gɵe'v5ӄhAw XYo '!pףa <_s8odhj|'F:@A|IҵHͮH9^bxx=p,wSzBR:Y-~p|!kqByYu"{f;SFBj…+wKr'Qgy%)$x;sdDu2[v9iRPw㖲4]Aŝ"15PGNMD|h $ Z ]8Gj@Uݐ|sd6k5N&݆4c+RR@YNnÆYDrg=H%lViN;=7W!*^54/+`)%e^fbmLahmH,u[ ;ſh$+w*d4>]l[85u뀚 یZ\qWg :'v2@y8}  2 ȝxei8ΕX/nbZE +PC8-Crg󺫖 ?T+o2)B:Ϟw#4N""Hod- bE=_5Ï聛`OTٍ2z5lh0 7p+ *wa \_t vxVA[L ~VTOI1~.GPgRdLCn+goч1CXkM`5CWBA% Ϟ@?=ڌm=:z.n 9߾,&9'ad3Y$Yi",u Z_ID8Z)uwO?upۋ{AbL̕E` cH̄-V@M߃P}(ɍ\~-'VϪ]U/`ǼL`mNB&*' ɪ$q\[\X?U XzC"Fsq$Z;D `b+٨&N"zjHu7MD&p&Ml5MTe!9::kP[!Qk?D`$rrPUEuA= <8X1'Vٻv:c‚FT6[pO4W:Q켢J{55\]qܯ73-^b$#؍дIir,Js-g6wiDj/NmX}c$T*x܁o[(LdXšr߯ lEBfnpCc}|K.n:XK>ѯŖ] |ؕSTCo]H}l;>T$gĞ1"O ㉽y pKӠY# ԅQl/ZX\[e3NqKhFuVg@?ᴈᆯ?ؒq lDaN?ˎGxU)4JK u<>W.>)oKKeE= oٴ3tu|yp@I)N]=)Ř7+Z0(^vr{F+tY}Iw;*&o;>VSM=c'U?GIf'ئjw Dg kdh`CEq#` k}zzKҬ^)3($?f>s]z@frB-|`C^{))rjl? &IthU Z{1u˖H- hq~j)k9$k%*$N7c%H|HP}Y"ykHiTiQϼIgWUD5j!|D;lp.ŊP&(Үa:"AN]ُ*m3-G}SĢ}R!"Y}8EO%-cŸkg+(QQюڲt_|Q|[GڪeuW̭(j#t9k`;M> vFׂSqrQpI '$r+&" L1( F3*;haJg]v MI0s(zXɶ`/$pO p. –;0y ȉhFnڹK#ƆcK3 4B!'C_$䜈μDM 5kN.1}8 [;^DH#s,e\DUWǿ~;v_tq\Hc"'DA$%]>=A_1?f%$%-H֢tqѓls[x?SXW`+pQx$"<4T34eyFa(;9߻w0=I]pfӢ_?Sx ^,r\]73#4KlC81,VLT XkEGҮ1~K996L'Er)C{lJLJE84eX v:X)r>x,#Dy񘲃)[FB'z5uGWDC$lOݜ # YfD#Ȥ듅dW ` ;`ƀ[]AnhUC* iOg^hS2ckƷJgLI+(:}_t&bhP&~(!MjvrIͪj>"tOѽ0T&3O Yw[P}XbXuλ_4nX+zhzL^.\ۑ"mUV& i]C+)[^zVXi_fT*L#]bGΠ q_Y~A6ڷS$1 tA>$e:o|"K9/nQ)?"EG"[@ħ Ÿt]y.Ϫk;zj{uDH Hex6Mx+1-hqR1 "#o{\T̯Ug$<#'*U7ǽMjk r$0+$,g#=zV j$Q#|bҍ |N ٳZ#ڸI qRX_^#^̪Ԟ‘\8܌~D@y/k{.ڇ+L~UR}l.[$rFچ'IA|{z4Bāڟi@t%ʈKԠس2Ք1BͤLRBgu۳ [xh<OE'.]ұ]R;<趧2U@aPRyp1WzRwϏN:n[ 0&Mble[kҪ>RkGGPvN:Ih/jSq3[(5}EOv h5oWrܮRkwt<iģB#n02`o0yi!1'4,x\wT7ݲXK" ShpyȅȤ&`+V@x򑟯?]Cfz@/1:HX_~SOB:#̿݅͗-WX'D%Q8n)-ݼ"飊$f כ}wߦfˑ|Ti7- lZj @.#L( ōE(081!IBXUv->\Γ-8'J nt i)*v)23@d:>N(t*$S ž HV#DЬkSzoJ$T)\v2fwNpDq͉kO[r>VcQf s=nc@,T6cz׍Pr(=xM㕩 /bc?q >'K"P)c[zDb[D 2it:1vgώfTr)CI4W״w񳽴~.Xܽ14^<,3 a2ޤ1y="mF.?($2Bpz˫q? _eb C0:ncϼEISnt^O$ڑ=g&JK%N<ǒຮb*Ţ{ B6Yiqln[h7ڌk]f4){g ? 3X.`d!ٝEŐ`|4{A \A=X$sNG}F[C 9e &HQ\D㊣;ͯfpɫQ+9r#a%iuvtS=4 ;s)9ixĜ?gA"PL=zcʢ#kx_ y1&JH=/߂?;1)8F6NawhH9:/>͏+U{4=-lJ/ y0ֈA*'z~0 P0pYOc>q$[*4GܓJF*X@`:|%Gς[mΐ,7E#v? BbNY^Qp8*_+:DinYCPwz"+hE4X$r#> s:0-_e1j[#e:zkҖa-63"O]G}*|>A^ ?Υ!ngYc h; ͙7G5<ƞ%}V*ƃ=\Hҩj5x;*e6M/3;v$zV u7w՚>>J"!ݢ~RjݞZo0zT/feR B[1 X-: ^qu#9'0Й$;}TЃYq$9QgbtPQ8t{R; u, 6t!qwM|PtE`A"=\:~EPU *$5(XH0JN@6Š{cǷ' t#9K(DDU:;zRG=ӠM|i~d0I)U刃*MH߂0k(0%ז쮿M!0JͣWb2GpٷwPy; ..8/O.֖#T{~+ޭ hQ>܈1KD0+kpcF Pl[;~Mclfbe1l̫tVO4jH=! /]O\3|Ck302ŴJDnz$Odދˣ'/R:|KS!,S';x"vH6^6UCyUH6nF0v JM͐wqV;G [j"7M|'G 5iQu RSTȀB"q& 9Q98utɓ볳?Ԗ*P*WhK,^fSK tpd$0gYs& k+3\uNpc*8e9S&-1wQ{w-[AZyTF|w.>0g*ZU^1UǽczR$2|CRheT~L*L+>KE?qөApyqj{n y|X#K ԊI$O`^Kb}iԈl}Ӟ"W4Q'PM+ ^ ¨i˔= 6hESlOǞ *{* ;fhgpʹ7`\ϳىϗ*ҎR :zxPVmj7C_InԞSB5 Ji`~3F4.D&(k^5EWݲuyKhӭ" EēF-!C sȲs#Oi*F=Yzx2ُVԁy$ k4h laHؕj #dE+^PZO`O7"4k7lʟ#>*8@VZ2SZ@NpՎpgY"8/#h$P g]l0ے|>C(ɸN|y쏐DH 5 }-Ϧi7S.-o;#RMqK 2=gx78QE >V1]͵xj@JB<"c#d"Y )1ɔ}`S1A/_X<*DH ON+uH&z&.VBiM܀[ R HpLt w+{Nl640`1Ϊ)ͦrJƃC[o}6b\UW0=}u{ y mo-6H6_’Iev HL5\UN5.$g!2U]pH[mj[4s )_;LuEu3QX6ng ~WU׶SOd@B^ DRuE^qLc~5No%@N? "/1.?׭H`;.4@is!#0W/yt`ˏAuT1B90 "= 2X‰cuJ}V1HHteBojlEЂgM^#~{]!74nc HSc]_ P_T:9$CCj/pPV 5ĽצU'f+(I9pQP'QٜN 4AzoCsy, K=Na CaӢNYe$r_$F%NDx7<|?+&2>~D֤2u ]t݂u_һ"roƉʗUqb~=:>ߺۙNQqvÈ))$:[ % Oo ! .+ #pbaT!u{D:IJSŦ, /4+9giG9X8H:3M E6Cٌ -S KlbumV׍@U>9@U;In*~E)S,7).$iH"bs{ۥ d5&frk eU $qJ=iK&-.ל%Y'!_lhv[8bZRm=R c߶;i~B-6hqu3\%:H)Qɇ?¸>A[؞''Hu   qD+0C^MQձ_Oщ4eי}+UnvG~CHg ? &ήqjogH8g{󪨞 -!JGa%uM6b髒8:(l֙(!blóG Y@4!4?F[XH;H->Y;)wdΥ1B,Du#`d]|=_l?̜ElM*LNNq,zʊhvC Dj%:O~8 ;I L6-к"Ϧނ$we~9}=4S(,)Os$.3Z=Б/ zoiZ^^aOZ_!oz+yܳyu@y_ANP5%NA"+?mTfYDWS&0ǻ{W`ԤUQ("8G '~ .ڍ.WUvG s ^}LQOP֝ёiwߔiE;-G%=~Ҋ{Tb{XWaq5I8NuQ)oi:"2K /?=w۴ʿz|l8RCSLAe󚊂|)?+h|6>&<,+snz?tJqw|qIdpҳFG{  %h~9[&Uԩ_#ZmKfm SpLM/J&_/kr[^PfcQ\(bKr`H *c1i @CRK~567|a5-KOyPDA78"PiВs`YPe+1O~&0?_dOA˟#tz!iI%%)%ADD5`1s/)w yjEXVFY,Jx=zwtw](VÊM*M;k<6xFѨ` <.pAS%SD8O2ROnCK<3zsHyh5ʃ$27`;+8r Uw9Q&HZ[s\|[KúBhjgA.;)G00z۠ ]zΊgYկhH8%˨~V:.HN'5)ǽ]ag.F ;EJ{XssO6>ꖠ5^&fqxA河~,OamZ +抮XG 21aF dcvIr}<'@U; a,z_K=BVtqp| >lINtŅ蝾 |_ r^'$L\r2 dL{ט:~岁Sˣ3Xt0A#D&oK`b͂?}c,}y:\gfICOM9jǞ/HmY*`4}3#s3%:0OZhٔ j'$dX佷OpFYԇv6`T5Kᔼ:NHx'^b>,SyԻi٨v<(Vŗ}2.!:Dn§VB1Ra.>ITF/B,/^}06ky# XOގw?E@:pFM5WD&4eKaOlՈq@Vm$+-9< Y S!3A 8[ެ݈ '#VCL fv=y2m9o bW,4IAzLſ|Kchlh=B ^b`zX23DJh Ha!s˶KPf2o7*)]|*2gǦLeqV^!>I0~HF*JD? !4[ ~f6m[6;N$,#0Lx u~ҺצB\GdZF)dsbhMO8d݋^nq_ސ >#!WlƦ"_}ULSj8g/='Ó\ZtcVR|,9>X&xo#ӱ)&Jd ȧB dy|Le1+Cgu+֐򓿂␡M'xeVu?< ؜V'HiT|{ %"n|~J/'a6_äغN#;r˟^v*BkKG@n0("p^3kY/62Z 6Z@JXS 7D3S> ȹbpIo2=i֯# avY&M|pc)jo浸pHZ # cHDց %Bԑ=D:8EnxaT m^^u:ʕOpCC[Y8ҕ޵uO+$Db]q ( 2$XrN0 DkC }CQ30d[Za\ +6ĽTcwgjy׆#ֳ/u83`#+7G](v*xi %'`7%E?aR;IY%4%%@$׃%}VA9ʏ emmfR!Wa5svmnS2FEU2ah]-'TQFЂOjUak|=EwM ^,r 0YPC: $h~\)oP)vӕecT2cItIa9FD:֘[f"!%чV[|{a8VGP[ (;xu9g=9HsAz1(]q?ѝ68=mЯ3IJ-/g#8R@:KV9-an萭Yt?_F\J $qAg_r28$oSD=B(mG- mϭڤ}[PGv>4D<·n%; Pfp T(#N$B7~Dï8A 6B ctr+Ka@!O?4V)| ;!lYNN Ell{v5T^m+lllHtMke#y7;*!e)jR9ēM9B):T{y:ƂډVڈr_^%σwGGMd&S#@+/w0Iv9FTnX ebpNU0$G~$;4Y9pP0d( ;ٚsz op hLcpdز=IUku BșUi&eO7x2E>%*4 {ȾŊOjū 6x5)UFS"<zyLڬ;#A".]_;X#W,$[YҾ%M =6eYvTs(]n+*@`Mj-H0䰯yRA}1Ҙ-EA%%(Ǭѽ+&S|EKWB@tLټơ ^@'p{&*,{X~y!$UȘ9KR+6ūK܉<'d"W3b]aPr,W:2@ e1*ńZ쨵}B]"][9]{]bawAɜm/Y_qmaӓBnC+NӹQƵ\.YDX,c=ddĭ1et}$yޚ/ƸGU{%L}zҽ!pEtt a QQ oyo5p#L"쭣AGa B`Hʈ;N-"84|m \|g*It&<gzi4t8C]^cg`P{V?:hMIcOZyMxY[g, >RhUR19{A,u{5}FLss;Gϊ>=M)H}W [16TaYR,2ntWTa֗2g6*Q 70>tdJXRE&HrFmpN8;zn;ڸڲ)x:.((>aϫ vdԤRͩtGi#ڨT4T!K4(ǹn)y<lٛ=|,XBif fݢM߽]1F;H>h_m6_3+7%2%QlcJ]ێrŧ;N1f hU뾨!1Ji+֭] ph CBw}+mũᜠ2N.Qs=+dieh|&C Wg]8{U_e`Du9g)=6K&{q=%vuz[C߿ x"'xq{NsVC `Z3O9=Z|"~PT`\ҙnF|n,Q?aj.w*huTMv-J2hj]ETnĘ7] K} 5ՂNzl]TyrKj˩*DN/aI2D\T|= ^k =ca؀S`NV'5.F2DmbZ/9ٞlLY@ĥR"l>&\j T+Tu녫Zq>g-,tZlSDcq+Z .3lSqyi5ќn+P~[)x9k8#`Y,̜<;U LOؐoY溽^B)Bjo[84t}ȗ ZjRFb^?1RobU?nʊz($=GuKK&TZa[}xھA N@{*m!pߛo/kmz(@Ş{` OBe)o[RRe"p_y6[~-AUbnmЙblj"ڰUŰI16qFL- E/R'$CV {jd<#m.C"nJYf6gu6Mz 88W8 e*yRzxWvQwT5û/-n%k}GHw,69(cư~*g:s4nw //`?Jn1=5jyީ)a&mS *Brٛhk l5y>q/x" V868bn35 쫠?UlB1݂KꚀ_!ĚÎps:rl& ;ДZtli-5c'fT@9?$&U>~U4B{Z-Lu`=o gDYvrd7KF>8oo!ybyr{':pM.o:^e&Clfj|,!P ^pa9Pfpy?=!Z|QWQ$eq~7G9Q_qХO<Ԣ+QJ! P5cj'sU׫^QTr74me8r`izq]{\TccsSxR9o^.ɓl7:AkUĐ|%X}>ߵy8?ZF,(K#4C+&;|5\jffD(2ɊXb4(c\L*oBA*1廞,O(L{e$ե{T z ͍dd)CnW="Oh|}GR6@4Ufi*ԗWx<!ࡽ:Y?Xf8oGvGR y!u:V %(J+NϽL1 gsY d{KT][d@Fd.cTa7|IQh_,i9C-h|䭘3>8f'i`62 +B&ލFfbk"P%ekTvT7jS5%i\gCm'%+|G`4|Sb\K|INԲ>!oR)Fh ʅ-N(?¯/Fà i UY[J_}؎ 哇' ˻?[D nKȍ8MVHrx0(nblO/HiAxOݴp-\M cշr]Xa ~oW܍ !(Ӎ\}ˆ`에B>` Pa+kuo@ZnIaS^u;|zCIPc  lRe[}mاkHQrMX3 aB,ߔo|. A\^(Ahۓ^|I bl;sjG=2+3mYJalRRr:/VlH:*^1=g%@+t{i#i]qW[rN.TK*\Sb/@O2g/k`0\ȖSlB6D-Tdwm`+jerMb$έ*ܳQd wơ"m2.j99k2m.4Df^1< ;NT ˘ o4M{EOס@wH"Nz7+'|MOoZoh5_(?I$r6IdE-.޾Tef'WuxQ\.\C>wR2`|[$N`] 씡7ʨWˈxvj"`@'fG/1Y~dوP&HL5b ;YE`yf.U[r,Q+%4ߨؚ6 ¡{` {szk dעKYܰwlfz!X+'+~SWdjLK `-+N^:Gz(y~Mh!_d+ RɄSwm!XN *pZt.(A#uehq߾;c/ԬݘxCWYvҴ7ePIg Cp{'w_xȡXlpkAʣ1c"0;Q35ӥUx,CJ EH,kB.՘,0+\:E g0bգԓJ3vL ˾bX̟fLjIDeQ)bsYzMAk%pj[&h/.Wqh>uStƶ@3o<2TAkٮ̢A^k05nuK- m 1}E4ŌX"F7bsVX]h qhi{>,jMD"c+sSQfp SǤ0*nԪlp I#{M\+U ( kp.l&qN)$)r6gdĀw>Roh#M>mf R0nx1 <)9 q%t_c* ϑR*A@}2ySlur 틥biC㴓Ag[A5L4YY CfyъNSkNiJo62h1!-St Cq7Ƃ)+PTЇVE0"X +L{3@n7mzXsTeuR1*MXi x/ {.YҌm.C3cޕѾczVhPD1CiB$]Cqb=G,x刳l3?BH5nlvz\ ?\FObAzz`'L1cEtK4*4)IC6E@$(G0LYL3Y=ǫ;<11 +^͡_~wl~M&)uB,UG}n2o7tqdA_Io ҷ9فU+.&5@GҎ|p}#yђ}76/I7?$ U-KPabr$_ q\ ? ok}nшeͱkv$21IbV+M*u qA.:\1 QpBx#60Iۡ#?w)Ixݵ&#<[̻Q7yЮ+?\!,g+-#\@^1Vߺu{B3~ rQTuha_ʭ?o[|yJѰ&ȵmGUيV! G[[ށV@0bXv1)1C۾bBr#0d,h_G @Rm@W`k)|!-Y9`ׅb)+8KL6/pDZv U.Y}f6N_edxC!=(<<&orJ]q䤽!OF'h _]-nŝ1oL(Kzzu](د^;-ֱ 4naI<7^];xQ~EΞx<郕dF)@ꅷ,ܥ *rXQ)|5ur vIL_)˶HB^`m,M9Z1+Xhy~!}}kWǜxVɄu̻A$P$;H>˖̉C,Ad8(r^MNۛa)HYY5MT?:bX1 ^Fq-8'uC汪 6XC~+TxJ6 =}!~kkw5Z_EMhU}nGyncI$-*' P?QHNrS돂 Nq\$5BYZ IkϽz>)(:dpy[KJL ~55mw@$ 4XTmz.*"SgG`%fKNݑ5svnF7bZ&p1ExP)2˜) 7Y.$pqo3^:mOD,bɁHC֓vXRSRKG78#p]R9c5Y S6cJބtzRB\b) >F4]tKݛlGRA-_sƼt^ ۠8% ̅i`u%q?{ʪ1[qR\K>$1s:N56q@ީOlJ9@ coxr>l/y|_OR:%L <叝 S$:{i_;iPgDW8R9[v CH5^&f7^=TApx+hhw C1FgMB:w~}O*+a/C}!%_kRεU-سk<@'kx2N%=w"9:9V}P +X eE?;*W.g0ڇ;h¬&9ɲZg׊%Sc$9CQGVE_n=gsAj™M/#Pu$#M+ Բ%J6u:|%$vܢ7Ԫf.Z.xkл^ZkQPc;5AIPRAs=3vH U4,˓Õ)HN+߱޹Nxe ]հvCO2(Ή$-(DNBX`sIȢn<1uR+Ɠ:nBͷ;գ=bo5[aԈLO_M'`&o ӚNN5%\b?7!+wOR6. u3!0* -~Dz(ky.h#Py2DOI ۾k>-i08aAŢOR 'P}B,큚mf:2fL2, AP[/Yȷ2 ,TÊɝK`Qy=%U\0IR:ɐ10ھq"goaHMC m`츫˂LvG$c'㵬lܳNiG1ҋGFGA@Q+Y>hx:KFU3Y6vz<~qvuE$\QzךVmtlyAk \[$E<("E&֓-&ЛYX7mOm t$RـBg$8%Y+|[9!G5JxMO֍ .nvcuncifu^ޜƤPJOW3;LPݴ=voːXUCo.F=CZ8~z|M-1iz:2P"PRi+!ڜ QZ,}ZJq"{qtpjU'!7u?Pi0$&BJ- ~Wa✵ +Lx1>K~Cگ(`3DuMoJt@P,, &t{x390(F,=: i<͍w `y:@-N#nPKd(qb \73 n!?`1Tb[gQڧ\T $E)Wbtw@vW$NJϑMgC;t~Eс@PSdduIӾrĎ10FYFxI+xH*vx%+61@%-t/ #$䱢x&B+Ks'9%k|nxգe}}1S0εߑ֘ƴ+Nbfd%۱^&r T/uf!݂x˧luw8>152+LrGIZ+ˬf53`sN {[2ƅ{L!w!=| 6|P"1tP1J#DZzZ2jf1pgcPo{3e}7 Կb{i=PyW#L؄H2P$ Se=RR¿uzVr2ϸډ͙G3I ՜S+e'8^'vPjbڔ $7t0#-ydEwr`v;oi2*8:LwpMb/?$51 Xv|/`Ct ~IqcdmhdII涼_x]ݐuwTЮ>''h(4zH- -u`5Cn!u==i^>"zj 0>4% %bpmh9t0tHM9f&<2g~+$MN915IH;}je5[/=Fo9L3wH.NfIiRqʍ#tsTm_"oxl~|8=wI9bO A}͉ZL䗥8纾;Tke[ܔ Rγ}m=ĊoS!;0;Ab0nv,9>\|n7_Q&q7k{$¿DFj"0YnANf<\-J,'v1@w)t @P0Nm"LM&(JKMqb*;;U4$2Ԗu "NVI1!VJ ;|vS#4"@d%Gg\)V{MopmXAXx{"fр%}]3a 9fl&UN$V3 ȒA-լQJKrW]|M.N­ Ezt_nweLc6OnA#<ͩJRUzI/嬮h{9^8SBb4%[ l+e]V3U!m 땛H#`\߂}~R@v$uZ0)Sc$6eHږnrdRkD"5!hpI^(hD "Y[o/J\O6 kV@v }BH_WG&jvcpt)8ԛ G%W-p e16wT}H4h86n / suNʉGU0dn FY<)s]1ʓ~)i0FTL*?ӻMŒa !\f54-&1:N>'sOi:>%e;.h[P{%_C)f/Y`hx=J#~y+qm7_B3T>3 * әZ^hǤJPOEζ7>.[x\;kyES)`#M/ݳ;(`Wh{b"3-qL_ީ$y{kE$pؓSZ$'0Ȁ{QlkH,Ϳ 3jRs!Er`'a`gZ '᧾8JZ =o2MR螎OKatB Q D[$)IL˵:z?ƈ꾮e|' @E7ґ/6cj;Dte oϬU ttNaJzO FCܩ~7t<#^,S(z ䷋/ԓuQߠD <@ vPK!y`7jOV4 "00XhR}eTץ˂[/1Js7}vz\ez]څ^Խ-|N28Fa-S9Mk()yT-)O+HiVA$k1cn4_ r^>UgeٜԳP3̲rdV~[' R-ҤLp>JV \ [ȔF,ҐNցuS(hxwiNG\iޑ+mq1nJ<+\ь ]1aq2 pYulcK 'zc OYT,/V~Ȗ4—Qs%Љ·<ר n] (yG+UP.QׄDBSxcd7U$5=MFL~6Խ #@<@ i91v xDyWv/<Yua_K\T+%(E=7w9]3هǸ!̩N?Oۜ΄3:gP3tpl#ybƁnYwUJVrg5ɽ^|i]VhJxr =[: ECבVsSmԣU% .y 9XyBct^ʓP2(Ks;g3ٹ UXoԁ:%.E3x*آ'H _FܻIStGmKN(@Mc|k?jdt|)ZW~r#m} GKmBl]W;|ZR.'iZǻFKƞ #Zj4c2 QVwJd$0/((ĊCzљ?iW; }KϘ akU[*[L 0R`lO?^A"wa*,} "dy̮L@͙1YrY]4+J FFë}-0<<I@ĐE ͡ݞ >z @N -Scn 2r}H $#aH€YRBJ= ܡp\ XYN:G4+CSҍѷQ.b`u].{-| irCq42OP*Ytm\gNY] )^q=ؙ2ρ=\椅S֜n1 iٳg*0da/3JF{D߮Dq`eZZA$љs\،ndzᨖ@Cc_ (E`YzcU1kɞ@xiPS4MTJWi1o/Xpn&ެ۴5aԓaPƒ:*QS ;eCF hjh /Ddž|=PF_hYU/% |:Q/oc;ϓL{YyK:Hfmϫiĭ_tib#ʕa2jSn̦5u7+AF.sLj2GeZ,mʩ `8vM־E_q.L6~2'XKFڠ_zzI%qVNTa?TڈNkNwG3xHzc8GXj۬+Jll##LPbVD_r-;h,N;H*@-|3ԧT*v7,V#IIwmfبѾUyr!7niktKݵmzV%Fu\: 'y)o|]*"H}.h TW[9<Ӡ{4C˜Rw&d˘]pA%@j!;?xGZg* Peͦ< hwX) ̢m (tY#L"4c*z!sbDpM?Qpz1Pu҂2糌Q+ XlqOivYeQNd  +ToIu~1!2 OGS"{ T94+6¤vgGjm'C Cv\-|}4kbpM+*TqU@@ eI ԁϢv2Fe%v'Jc"QÉBH@omÑd=2}QV]fyH?F11IѬ TaM$+D@8Bl gLqRFlSep2.,/?]{8x+K:# hcۿ +5l#MS\D-K ~3@v p$[.mU0gd;^kxַ8$ SU$ i7ɁsRzb_GJ:4p|=JZ~QB~~?jٮ2 UaboeQ,uGTJ#g}Ɍ;stWTj[:A ʸs!ĩO6'8{`D{Q9=} ُ\YK @@-J.6{nr|*{(%%m ,~V3gJ]svA%+ֳ" ,<rL8ύz{ MImKv Vig1u}KOA/<ː>\huT?;8͝/QnjC˯ FyI:~ lF3xs,B=)2 kY}FvYI;ωgZo̼OB)|eIIqMb4MAgE7RgXgs#V?z?+&^GK"HCBEH6M(z5o)NZa;~F >X zT]ȻZΖ؞+E]]F8wڂdz;\\B!&MjfyHpfpES4bSrYD.P;d:ٟe-ԏ̴,5s9y1$h~k-|).7!Hyp1(s;3oFxsy5`& \T2]2}'.`ySaXH^坯iiTZL==B +2U(S$r@GMA}d$~{<d1pggQ 5X!m g˥*g-۱[Nx(CIHBJHYl&rq&F/2C oP^9#w( liT%I(#""]$Dqj)(lt3}5:|ezʫ9-X.:%0~!;,\)KSMl;n荸1BCqoT= 4$q*Xit*'VC~`mͣ!CNEL4&wqK`?@׌6 `:%c଼)E'[iJr-='P/;O9Z4۸[8C;NeAz&̞ ]H^oÔoܰ <Cܘвe.A`/ fI~!eNY_&l%Nqu֌)sֳ+7<[dDlSV|N' .ա:"M#>a0zKsL3|P>ԟ#FĠ-c9 j P>A.7Gՠ1ܓe <\*! &- %DeS]]D%tV?@{NO5w3E~.ʓ̔E< axǻZG$Rz19Y?x#> ]#ў۹Q-39 ]i՟]+E*1 2m.xd"^g ڍE- '{l*T-YJS $ITBHvvq8NF'h]\:6k>e)uP_pBʖ)Ҁ@ZSg HMo YqXUpU<5 o?.rt-# 8^@~z\!H [՗zKB}(V ~g:~9am~6guc#_'>'G&-*"~F!jIk1kØ}(_A8UgArFē5Z*ݦZe=!bgG ;u_+6-4@v^?!MgtX[@}jRMDH8颢],"8gIuB_v]} Q3;M>%gWɇEu5ln?{\孙9q5 $ (J'ze*se6Yc}<)N)H TR/z!́DU?5!C;@:׫]-Hj.蒍J@ߝ(^[xJwJa 3,nV'fA T6VE{ٍXl%ZK%lo{M愼*/w:2?[;+_;Ҡ wMϽ"XοC]2NnMLb-tĵibjW.03PpB:QO14q!͛njf4;/;CRgxX8)2Q A%w^//R 5b3C ?+jlnU;jݟ$7H/?]r rm!gPSP(3E3!tvlr8%r(վجL,ehy~qq)rP$.4- b؀k9n>uM%M*owwYczQmur(keUS <}Dt4*M/o8Vqy?IH\rOfrk%/_ɘ$z^(`yDۍiJAM,='\'m8:ٞbl kT[5)Zo {Bqts( Z,';s0:[QTabAk55s;$ /ʸo'D%ϗ>o7AS N㥶pI8f+Ğ=1x65܆3a%w6v -K~,NO$]S?Egmk`œaޙiJ';ipJ"Fs n>]*-@ˆf**]ewwƁKyJ\4=7 -s3Zɦmu"TE"9UK ],+-_ oapDs:թ']ˍɜJ/2~#\Fe) +=yq{\ͷe*i5B39ahG [Q)w2W9laU^+wm5bMVVcEwn@&ݰ6@~Uߡd:KH)h!!xaQb#MƔ+kn.TF%ĕzAMduٖv4O62-rSY̬$i K'$c7 +Pa@2MˈcFe0F, 3TFJ*gDoN+>).nte&kwNORb2:)4 OWj-=*Vd7+? nnQ{&%2 )z@rT9_yѰcrK`VߧGPH*u,mj1:\>.lva=8^`(F~?Y\[ ]QC)\ҮД0~}3x lZIB 8>Ǔ~Xe^%WwI) =w; +)V.m' >wt_%>]̎0gn*|bʩCޡ^Ld}T3q1/I=S:'$E-M~q,qoʡ#]rG>n[!BGz,ngxr'e*c+P+6ۧyr !{G ?Ţ{E%檪8KzR 4Gl/[l`U{wjx qSIߡY Ӈ)W5T< 4<8c]QތpJ/:ŀweh "4YB7*\ ҅"Z}qح<.XR1:# $-݃]OY]6!>eGv]z [J9~!QxoB7ƓjaXUSԏ5Ni[qs3t9o2}f[Ph'8 )(vk73Alj&pV_Elc5kjP*9T50g~;1ΣmbP&Xyƶp 52PƗ2kAf ~3 03VBLGjg\s&3hg"٠(R:,җwǾ5dŒPP2>~Iao˕Hs`2R)eX]OށQdrבDhgDQ|1xbE35*U# ()=BF\vs,u"^Wc, Iᥜmɬt9B5h@@\mf6:OVL索ڂj]'O; gy| C'&UuN #7-VBlOx3og0sKWST}EC !ï+Qz/骱VV9[ʺFS BӔgi~t4vSވN%m#˛蹑chٓ\ػ" 9h9@Nze>i6&4?%T5XTCÍiZ~mt"60"uAʗ$C;gۑiNZ`G]mYտ* HLFQ;ytu^s_[3OeҎeOMd8ܵϜ2TW׻mp1ʭ(4hKI9ӥ>\ jĮPsqmtzB5^i֌ #gfL b\fk%WߍsGNOkj `"ϓIAjK0^㼧t? ,ylJypX3% ͻLn5I'nA88sd.0h3/>D)VZ>E^u|6q[+(\Xz{BJTTMcAWR'jF )>B|!:StUoIhGVxvB Hb~'K2B{70OkXsj14,25^?rw$vJiI-w u:OݷF)R T&E d0[+}h.p)xVmUMvea;ĸj(!knjk-xair"R?W**\54"[Pf^ ۿ?ԖQrA6Z>C>yݎT)ɠtjl2ѽ qvhAj; `V!1ΊU@_[`1:ofTf4o/|8oMN4%uWJ_|-EԽBI528{rTӋ9A9I= U2PzXpXtYzyi!ᩔk,Dm5 5V9&mp7aku&$AI.^&>xٵjǩ=3S<ܨ/ao?Iye%'CdW; i lBLjm#>Cޡ2j' l}J *FP :K].= 66)j<7"K4j&n#E S՜ _PS{_Ƭc>9jAeOyu6#9=(8W$@Ͳ3qb5:o)Yvi(䘢ߡiX'HvT7DN|Ó=c U+Qy]yo)j&C?K c6J6ʾhBBLʐ\NHaL16V+8l<$lOˡ?v[&O4y'|oV:vOsrCpVUZZK>z͐NuDM *K2LҰ1n K&{~Sgu:G)ݖIr(**?h@us rϧ3Ǚ!ʭO6b3k7P}(.EB+[нYà EvCp(Na9| iN4h4U j">bQq5cm_#9PP4u\SX/ ޥ&۫#FFr3 mr[ݢUdך%aHs?OĬFN⋳tLIhtiK6, ^r˾Gϼ)հ_Jt^R#0R?ƕXt]|vTNZ< Eu$`YH:U|RE6J,ce?7R8~\ʈE~]½y~o&犨 w}VF2&*} ?Ԭ>/bp^]y>Xԗ.ڑbX CQu-@dWJ90 1t#CNJ (Μ%mDoVV +B#}; QQˀ7">>^d" m rﲪŌ1橕W:G\@Uf}ߵ#9M2ܣxBBĘ!n/A|SMB?,QiâQ= [ 5n55O˰5TW^4ˮO8`}Rꞷ*{qaUTK ;+5UK%PɎht Vtn-`#Du N%.}RhE .W12{1YM1z"\!jx-"b&>cH?FWM4MSE]D{ E8Fd}tFn_:żB^u s8Ѧ9뻷6}ø{+޴m $k$s!MsP8N]2r]`;6 3;ήo? -!tT߱[Sýegxn1E9jы7COycy) GgܻsZ,r\J_\rxk|'V`Kև%v*Ps6+Ð;xd phmZ,Ĩ\`q aq(u9Mՠ؁fǪPт"U#g"Pcq\=De^,8!ʔmڤ$W=D(8 sc~g@B"[t| bm˽Xa#Y^v!x ŁSmx–@bM$eA\ŷ)bo z'd4D͖"THk U7 ¢Jx"Lu˽a[ö _d$ݖW"YLCg3' )cosbr(䰃\#t2n}\Bf9%1<=  h]s^=Np kc44Ҫ7DGTǼnw(Cg_lx:4CTז6m2iA1`I0K?5Ms#l\b7Zm^+fDsy L\SXP٩å91KYs1XBl8_0Dj W!uE^$ݭ/7Q51ݖ1'=tOX] )n%QA(Zt( 83bO-2X9kOZ1EOoyO/zwzf\Ϡ[C^hה H{܄7eRn0AŁs[¨/<>K]HV*M*} )-AspkJmEot @/( uPjQRd(#U -i)a]Qh<:1׶Q(s+IL+D7iǛxQѰw s#į9)==!%8~p3.筤 Y\njؼ4M,]&rke5غUJ&jսhmO'QQ~x˦]ŧs<8\wZM-UgwO*DlNϵr2Hdzʿql=!?sD[>'|j9Xi栫 ! cW֝>ѣsys\qLI.:<5;3x^d+y7 -o(fb-äXI1;/Hfq$;1'<ב_dWfޤ&%$ds@&&8W^@)pDĶ˷vP<41ɪ.ǒ [X!g\q>ȕ^`wXT1B-jx5+;nnV,=h6{o׍k"h W&@=|40|* D.8;kVqlqjDI*tN3^%V:͛!c:c|x!aF٤n;@sϭ `މg#;㚗-9 ;!oNḬÛѣu`O'C2_㉞6=,t IQ@3wF :-QouMD cQXy\GALZl&iwPf]yFq@J$wnSe_5LJ/o!@Yj?X_7ȁ0|GU}D?A[i1 H}7j."b52|dww[<{}n# R@^4MgQ֙2Ʉ{WOmaͶRn\$*­bϢ$sA8isAY on5P4A%gLm',ۖ(Lb|hl"$ÊF0!"2ѾU*N}( X(x4z·Yӣ'|+2F.pj3gr:Z^ڜHoy1BFb"#E6w++zze7=%q9!֠,bQOGh>ihV Y7"M :GlᮽwpFrgCjA("ZNMt-nˑ]3W,6ڴJ_UGk7v-h"ÂA!GZ!Elw Gډf+~zC,DoeV|f:鬚 t+ce= zsm*Ut}" Czc#rjv+ _K⋫n$ ;=aYC~oKiWW\0+@r[؈c>Oxnu3TpI%oP,Bp5ICkI).\tL]1fvW<~zR/Qtd4!.5weq7~"tfOx7o=97F!t"Bg&Ѹ+Y>ʇo묀iuA zHTldj};L˝Ϗ UkSR*<=,Qקn bYoKUl^C+Z5`oXz2jH@Ž Y%mk E,b,t?|H3zϵM*=֌eJdgɨDiZ i5/4_6dOJzbw]1=Ym#OB <9B_19+H1(Yo7Ki#v׍mA +Cw <4huئ ҊϾsm HY3[R{2.Yh͙|E8rKb?w#+gITi:}gT>f8O!Ek3sXxwfD{R]MWHUm) It',(a<67?nd~*E0"T@nC>Nuw eoDx̤#=Btb_0_CЧFTxC)vce@GnմcTеh<=Ww;^.*Xc5/E-.ݱ%c&&@-5tpx穢8j/0в;,s0] iZ Ș9uRrz9y`pYZeK<] ْtӡH~? %Ev1_MA(8lđ3.T*a5*. '|0hPjz5XP5&Lӭo~j{kZ'G=FӴK\?\BQ`);=50>fΑԃ8%CoA&*c y og 3-L]`54Xq2`yXs6' +,$WgTx wHs^X .|}>,ɔי.VS3Uu%DK|{^VvQ *kT>YIe'c4cz,2 $jj|PPfKB{Xls>njVNJsϟr=K (C{ =m"S8mXҏSTYbj(^mL]>%JGt~\;&\SBZ:Rմ(d` |ϞάXq4yUwgx(ɉTrBUi%[lys@pP,?W뭲^k'0 9FdF8+fIs“/VrP#؟$xxYn2Ohչ/>"B6Pm S*}(xӛZ9YoGbFpZ4,~inFcy @~3+"yXB4aat{JWn7]6,Ħb*Nqd)ԹK;@Rȉ:i[ZeXLAgBo띠b=tt.RՑTH~o)3E}zaZ¥oZrȭOn#, E;9-AF+d,)%ΆJ *!H7@4Y&@n;OIc?$M M `Hcc~{f޲PF$*ɓ#* w(~Յ'Xuj[&WY`'vMi[m3NaM:TNDiV|}W)e!_%yO6%rਸ^_`Y%zH*zt&[7GoXaQ >^?_8˧"p{ݎAAQ ks;CR\lBn[![FW'MskLkHG B"N]l)]+Lh<ȵkJ 8!sl5TmR]*R ) a; q?RYZVhs4xhEv$$fWGfZ%loZ;ۥ 1F7go4]afiJVJP(,# txա-5qe،%&ȷM][q{>py)ߦ5FgQAJ$a&iDn.ϏRSNgDpʖaa9Fe2 dϞ!6"ƍW^7x_wd "_ G:fT1Z %cӬpAz,LjU _$B aIs X jh+0OR!xS "MqB<_>'JEE1jqv<5a!!բl~FhO>_pjNӡxZr^!XlAsb%}\)+U}vh5o29LV}YFs;6,P`& JR#֥T7JT=/j~ / 7%)aE3hqBIU38Qtsوb61PόCIdt~BL&PdP o:@=#\ NzI_X|-WO]>-d-O.Xr08,6?O_^h{O8+Uf-)VFNɺ֨8SE,עeQj_ao6἗꼕V&y%7_cyhAG|Z}ښQ4z>Cmw_"KaK5)5Z ~Y?F @^![Mۢsm#nӊ2NSK)}˛8 ` ݨS &v !OTp9HNhGxfڒ-&mP?j߇'l"1.)[0N}X z2=}'o&t O-{^P2`=R9Rgj ZY>&'p98Z+k;e%U!y+ TIX H(ӫ.lh "dAQ\6GCZ|`Su8F3/ٓKj^`fŔ+VQ~tfWP?,H)2hsvp)Ө~*/&V`We0\RwC/Zz1UT ̪F&)j(%}Iwak$FfbQ@Iqɽ?!|U?_p]m8۫r$?M5J)'P ű4ҫ0U8pCc# uWԄ^T+'rO֬arX0Kp T "Snf;a)U1~$48'tPᣔDjlH(R8޽) .7io5Loߦ>_b-" lk-Q:&Pc*;\l{€a#;H7Tg"RVꁜL_RgZn琚tih0+Q?JZN'π04 bkTFMTNt?*c;\=YDXB3D*$$:J| !pj`Q]H?o_|Tz|2k%-{W==vdRЍTVIP @yy@>|E`?A*.=]ydRY(.D~qi.䠛HCmfu!8ᶮ&yӫ,|:OhFUnN{1 <)z^,_BT,iԾcѨ*%z!*<"GǼ~#L-%,W],uZܲ ,q8gE\`+םdQ!CX5Gq?N挢F$C[mrWT -7uh˝|W3Neqq\P%i~$94)B>\8-cރ=L\~MG0'klP / m3YmEXFz|Gb-/Z;@V ! R%g`tjaB4`JAAH~{2#GHWe3'XX qi8Q5:;')8! <.8.4@(pŘ)&5sZ2$TQz\*$s_ U-XVME'(GlBL>?~Zk@>䬮Xߩ2Vi9E8AReaߢܠS9##DOo ՜C\B\QfݎAk[秔)`'(t4j*hzoC ~$N^Zœd-MԺj cnGA 7@FGCf!% _@ݡ"u0&iQ?HΣOf8EDkŊk[ Iirckg>C+筃t]#:ɏ_%E8 ؿJ`8Ʀ */H 8AƤ3V΋,꟨}!g}EF:&wOߢ68cC[սCO$_dJrg0qI>( 5jL6촳 q K&6ɫe,@;]<:F*^p L\▍AٔF8eNyOWҾdǃmmQg`^ܢWxPFXVa*+7: #U_{lxE ˡ$Wһ ~2;mh@OQ?1|Z%М'Bph@Jǣs儏x9#A )ϛ)yǵ +{Fc!{>9fOsAΈn~4 3أ"idt!(x'$~[ci(}]sB6vb=G> {LQmOnףRlP+>;D)0J!/k"ЩJ(ymb",%«1|Pp`Z C-!⇷ɵ']j |/N|իDD U|&4elRC) iPWeHwtV{$BL"4,wxUq<Ѫ˗ey`؂^a%]>PYf!\L]`LH2gӄ1|DH -w4OQpPп|⠸Q./n& *@Q~: ]xI#|_7iczQrRLl+TJxT_CAYnϦ̘fQ fZ?*)Awv܇ҫ{ytǘqt~Xa@kjA ȶ R>JeWYL1N@01 Y".+BMF7)PkP"w*k@ -c%.8Ku&4faEKrͥ&l N#ȅT:]Qokv Y0J7;.gOP|߭| 1|Y75isRd-q8ҹ5JBD{v;QrR!1q(AYdJ?y{c-o7d.}J學+ǸŕDڪъ5-ic9mi_ ̝w,7mNXU)V9OGHYu oO#0^a]6P?eZ@N'\3Fp'n "Ȑi :_bU}.6(]RW}7fmGu´0ı'^6uP.ln |)TݡCbj JF/:sؖz,sG!M!<%gF+K(wNy;%%xbRy7_D.HAWol&қCQ"l^ֳ/"S~+4%Bv,HXLj!y mRq9o#7ߏ: ~A.HKM5n[*?g +ݥ)}ǎ!YPX"NT3=2>?Ch30oCLwj'3ӁQ!w\BW_ǼSŢsrS/]Ȱ ޒ70w?#%;*}\Qd7 4*~"@"J_7…p۔| ˑKF1*}~ vGmTJ%>Ҝl4w9ő0I03΍3u":s r͐OopʩIf~bM^"*e6;M+Ol.!ss$ MݦQ)"6I3_`3ZV2tBmSSк"X잚Dr%3DҐ;2Tfk,TcwƎ7{@MNMx`sG!8 6+71pO<{탊!p>(r(H: ܘPRc ;bwZJȷsvHКs- g;zUvs';`.O ?-W%~~]ϘŒiKwyStZ3{,-1k,tkiPW)," /{$4D)sy4_iAe3S?\S( B$W2o݂xhT.ps%̺AUKӺBWIBK^\챂X M\)TSNOˠ+[i[|V5num/= G-eeb9ˑDcn3扺%,PyL3Vؓ1#^ (_*FU{lڀy=KJ$#zf ;1cI/=x>ȼw͓T7ۆp'/ZX/TKP-iGͫ )V6>䜤PϨVyhP!i&d7Ȑñ>]GtV~l6. DVkng=iYdpN MG,3љ.A?ڂ ;[|wJut4IK&G!^\ /Α[V,a5O,R}װЁsP/ Y 8"p@@ īNηJE|[;~eS6qM!k%'IT֪ vpν\FaZVDeZ⌱m1;D 'D;ϳ`L X?Jj$4.8Nѕ9Ƕ; ŕ^-R$Ίw)3]=5B o^%kOeK f8rjj>k8Az/TH:]f܌]4k+޹acOK$"\wf7=E9\d!?IlV앃_c hRE `OgF8΂>Q5?1(u҂@F'1҅)FAa>gIT$OT,P-Z^eP/SQؽ ; 68m]m9I * D%VD1X_5SLsdlaťI-KOsʣ&6Zsh=U7j߱T}}]R%fcך'H8-*xpv՟A9l/ݴsHI*"op?Q`(/A ; ":UY]7cotYv&*1}q0D(`8Yp0.&3d=$$9Ҟ֡86|_M5{wXUGEKڥ_v^QT|oQaq׷QZ]C0d:-ܼQ}uS%J"<vrU'ArExFAVYXd}(~"_*dlr &N>ГQ#uۮIGd`|wYP_g9Ƌ ui6LPbUœ"7 \1Նޑ ٦.TAp"2RbIV9hu:k(eb!*AާX5ޮ#ڼr[49t?@噴J.ͿM,Ӻr?SN?c Pδ6K'PD$7J-E"ZP^Af\@^'(N3 [r[Rqrz0>OHfC 7 8YdiQw(_|gR]wʚ控@d"JKLuP5FF .R Dv|3oyt?(17~01x}aI$_a3)04i0KTݳJg~3Yjz+R9%m;FF(h́ ]ӗ3\3iSy9e(1Us<Ν3?cfGHMj6n >Ы10ͳ4#v7"S(NBf97D'zԛxֻ, euSz :me5ItRq5x&J`BG6/ye]Egx|r6R)20VcF* 3<;_O0Ċvpv9˄PDr:ߌ9v2ZHH3U[`JFH+{$,PA\ԒyANXJINJE$"jT9kgv*F &; iGAhuǮ|qFD˅BrTtS~4(z=ݪ!dKRTG![1IL ]($Ԃ(Rx ܣrg ?VŦzR7 $ۻG2u!yQ qH<{ر-wBї?%PW1"YOqg\*{PoT!Bi`[Y'JT-EyiBvk5@7w(UxFy$OoK*1&˘XqR JQq&L>0[MSj.)X_^yr\/H^6.mLPlT/霄KpՙlZ㫆3P uI& Ä!t~cA*QEԠb{μ5 ,ѶPJZ!*IuFw] beW2_׾:*}^iG5*l#vtcLieO?c˰wbOۺrwM殫ѣHઅpb1!f⥪s9Ǵ/,5|x/lރZP[eG)[2>㞜gݚl/I0; K5u9ёD5s;Ȣg2el؊W/R aG1B95%[p90H!lPԸ^Aby0( ZzZ*5U{b}ntY_)4R@O3>o_ fGBȪ4gojLؒOH[n0WfR z'ߕ1ݍzkF0p [*|Nb?֔arA`rU9Vmdyل ]4V_1c=ǏT, tJW]O[ 징v%b|D-iPw @ώ(ݗR2/ȲpZ~ZZ2gQ%zVGJq%1O~>}bgd Ui8(L bI SK;F'//-TX@c_!?Pqgk704, 9$ю(T1 TY͎Mq[rsSvc(iPQmmma1[&61͠ M3{ҜoZiYM5lX;vяHj2~(D(Xچ9ޱסC'(DnvCpr̐̓=92BęjR\LV8m/(i'3/@ykRoOu d]04ޑ*$&yxCr`J~exV2D? `/ (D8j}Лn(ɀD@~oOc ҕ  ]8΢/HU="BG0(%tY|+[-X!}.X#]zPܵ *IQ3=)BrR9U躍Rly@pc`EH_ DuWbbM4f@CNP,W8"tš;`/pDQxvL), 55i5b2IܖG7Quym »1?AC^}`bT.%+31c2B*WD]Kj$o_Ub konZ1g2QAW5W- e$H5@$~??6 @1Tg.Pc~tBs0LdŴ, 2)W z- OYş|dpo#o-.P0{L'Hq;ḮlOG{Wt5X/~/#e̊\߁ Oid#9GC/-t r >Blm%4[20?o$bG>_֋{CksxFsP3,Ty<g+$`>dQ J/4O>Zlr& ;4OqeB'Pm-DzsuIצwmtQ!KY˽.uqT%AV.# A]z:iKz.V4]~i.h'ٵ=&Kbm]( u!3Ҁ88F3:ʡ<ݜ;? Ҝ"'IYW޴B*.Oɮv%tj']E_3?JQ b`#:Bѯ۸? 0:Jvz.;>ZA&LtHWN:mUA\Snxʊݖt (d*'^ dM*)nU#ce$ϴx*| -nt8 )-Is+N:XD܅m&~K+uD y}yW $5UlxY094Ul#OIE j/W| #ᔏahz5.ʓ(+k4ҍ/\5ZBq&nģBxCFݛ1TP A'/oG{ s = u|DwG 2$̸.^#J#|;3w}/! z%/p!GbHx7u|eB،irCHyA S3pc-S? KHo[p~ͭqF1ZJwmq8C2lN SIF`KE6ڼL_$_teKE$-D#ܖ`NR2f5>h`@c`rtԝnn7;|0{ޣT*ةP!Lh^ٛx>rAXtg<|gcRYhFKC2YHs".it"x۴GlzY<z|7`+ifBxjR ] RM4 / @߳ǫR;D`@O$Y([Z:oKQ;8L&>U'wo>z LOv |Ҁp΀nddI\(ZꝯMCyI97/f&;-;+.P P<쟩YչJl$8w0h4`a㚻$%(\_:]EXmuق6Ml碞G]צ'᣶vn䩠j|aNVH/ iSƁ |rku:M\ 3pO?۾-(Q1*Ec&rE\ɷU92L]Z9q8lL)ZDX:_U0 ),ys0f=ʝ>F]<.s  W7a.th r G_:. MDÃ6'QlN.RoĿi p@;ΐg謰꠲;Ħ"6Ht%b3 yNpk'K J@ڢ)M"ي~ ;&6[V/y$qaS`Ѻ  *㊆d wYVW&&'L?` EVq*U |(\C1o`fiFD+JT1L|\%¿\5Fٳlc[ |.?x\M$|rÍ({jDp*xgl Ǐmt}cj˳ԝj+c%4<]WX(9kD(un`x!6\zJ6bbôdd?-1+s,ۏU|QjV_Z3q BrX")h|r>,JId"52=vlI83nrgv@"#!#1u^tR!1n{VjXڪ]C}=3|(C;5= N.H/O% ыa"Sڇf 8Pz)sASK+_J#DwvGLRd8ymi$)s(<RA03.71tȤP@p^6攱=C*aG:Sth#. Xy@5̗~+>pC䮼pRJ=b嚹fن+CDa]Gbn nf+2F#ykLy J6JCG Z.3~o֮K5O0cXlri[֕ŝ!:*?JzՖ?() WҠLFgj&U/r!o YH$x*ŶYp`U.f 45K!|/@lY:4([5KceaK.ۓUM7M!ZV]C 06U@n,D'skvc:\gZULS !ΏR,oɍk<]{ɬPٱ>:zˍrRBm\w}/`Aa4ۦi2 Ew2IeE`XjN9*m3]i2\>7MLG<ߴ2,܋=ƻ#ܸ |"V QمK{t\7l"V9'9!l\lk}*,OOȾf ĉ:'mGLo~b&sDqzƫrW۠f}WI݂u)t~ $W6'Iv)|{Y&,b9y1xq #r_lL/U-3{S$%njvʼ:/C4p2N*J?JcSX:,vJNKB=¹  6X9v@jD8Dn&SE1(]ȎXg2&]=dEƵ,aOaM&WM ttp$c_V-\w72ⵄQ?C`{'F w T8sx^ėBfIicT%?!`jgmm&QQ룱-8A ʮMiaXfj+E ĵSZ;]o8/+M򙗷L{wS,7Fg@\M1 `z& R>GWѹH : &q 4AL38PAcId\Fʕ 0z?m̠%5>-YU@[Jx/3^Öt6er'("FLLۉEkM? a#Z T{6ᆊun M-@>@ Pyͩ١0\wa/0=s*j1֞+Og]⛉ wմqKIݎ8jҼvʳ,eAq?DxCE&XԄHj[Vtb/.CҔ*_zƇ82Cwd9 - ž^`i]2vn{8r zR*zZI Jꨵ;uX9'wTw(L9,MP3kjA9ưe@X0S-UgT#Mqi+rLjZ._ mTkeşI(Na|gޏ:Wͻ\,x*hcm)lQa01kdl-G$zEOQ xع\(, ciE *[4]H^I Nb‡A|;XeHOv4/>y 瘾.֖C)u[׻sZP=@($`PpKWgY-Ø\33y:~;Э =(h]*(>xo,{t܋ v i"d:uF;=C8nS5ߟ`euҥ4`c  qNG:9E+4)t|tZ'+0S -/r7Z< |1R`"=gH*裀=j&o[=ŔLV֝cI'JQo7yZhtށg֚ԐCBjNzPkvX/+\g)`3WFLm& 2 d/;No߿il J]͋5]s m(Ǵg'"otI9^+*y)4XW6iw'Sg8 au1xd>1tnݧ \'tV T!FrY_]:Fo--„v|*nvXdD \5jXHr+wf1d*-l c^lRb"<ص˨g7yDOxGjh a'EKEsu+Y\W>c8OkYXZu^-&vtٸŌ=S-y`XOTFφģkBk gTk}nHy9-Eآu΀\fb fPEoܢW#C۳3ESFxb^,Ռ 3x8MM*Q*{p}lD,>q YP:R`Cw+Y[j& 'WcP:Hb '?ϗ3\æcՎȑe;Ys.I)4o@'غtv΃7rO#>xM]m]g6 8t qp%Ό38ɃP'&ZY'9ePq…iMms*en U;.]GlS.v+PgM:8O+g]d@s|?QmH+BO 0ZuO ?m|s:dK59厣Gq[`!%g54ED7іRZto%gI1Kz TO;H`A_7Q }~}fx3%`NbSw,7Dg'cM< M ќRLf6^6k.&V­\lf v0uյefOҸZP +P-;Qq/8H <&θm*p@Ge`fA@5pT}#1yKQ'kYhG e޲ACI0[Q 0W \ ׸BH۰zlTV0`En$AnF}'  Nf㻆hh~׶pγ2j u|b ,WOKP[<Ј j&m-DZ~{1b ',bgp~|X:g)τmy)6w"93y+\@(b$Hp α?1ҵX-pJ2".2}ѝ|NC" #s)vYomFY#fZf$=I0e_#2V P"a;Wpy81SQ Ǡa(1H7 }Heƥ w B~5s`@3{W;*{:"2΢fwᷟQ癫k2TT}F(\^Jbk% 6G8{>SV]9aR4V.TD6.=P/ 87gA]["֪QLtS (WC-1X,C}m TGe/fJ<>v0Wn霐C6\[o_:*C0J>C QD=\ RdV~Ɓ'+!xc~6c$#tuEVDSx$j;V5lcE*wr'ݟ_bQ4i>1~jf!li`*ﺐ@U{LnWʖS&z?ORbCwVwc1n5- ~rcws'\"vh.@2^a): I)''|bMT]ҋijvuz1vE`iSE8:)=gOסҐxڧQ.KUB ns #6/AfXO9 Tw8_ GbHVaI1#~2N8D_B} ͨkәuJ~m]] /LZgVs}?jiȶt} 1vˤ_iޛ1V22 u2Xs 7Ȝ|.p_.E8\x wq v:Ϭ)NbdU y] (@]%p.*8[e"!y/&N3 HАGCZx&$ .Kk4j^,[\szh!txhh+W * -Ў@aQ;m)Ǟ|0 #ŹM{|iLoa ^]`va_|Y[}:o߬^5j±q[!58s',-ҩaMS1Kfͻ iO!nhUW"? TI S#He^AcRaV.ȇp22j=9ϭli1 TiJ[2<d+ n(jY{{;YbCnF* [&4.r:\EXTMbu4!XlS,O"V;#vk}# "uerskaW>,lbY*xP .LVIK=/GV^76{^KIo +!Ƶ$> b!@Y e'_tv0e=[zK7=ŠcA#-͇9JGb"BH:]n(ٿ3G"nsٝKEAXwl}cqntdDzQfJJ Bj*Gl ,X N(K+k'xY4noຐlw)B#VS(f2 3fa7kl0-T#{ g$M?[L2cYȠb j0jXʠwt$cn{2AF1 9[ ]b>2I{샳Ҿ yxEVƺ6.k2F3h !&7/biwGi7ȕ ҔMPvL8CV,Ua#l9hN-Hڬ{y)jL jP9v'(3wCl_8 >0NkpYSvb/Lw.wR g%! Nܛ}F?WMT|c aXt6w!8r XJyUZ L7W6 84:UtT^07;?Фw_]v#|AZ7EZ2rYK\[B }M1xTd!"; sxn3Ecy 2gf};wd92=-Qߌ=0-nη ;a0$Hs3+K<ukgx9#W\RÑUpݵ&.p=;UP$xF\C67p%*L\~sS=V85@{d)6'_#CʮKh* y]*p^(D >@YۭLC#= TWQ7p*G/eb'itK98 MrSyE{N&d8Do;w@y_ !ă͌^az|$tITЗ`(ߞ7lU$[ K`\j' e-%O7kRX#ֺ L}1fK(Bpti52a+@}-+c )]ɨg @d ?恥iNA-«@禂R?&feLw>N qxN&`PMOLIK2Pށ=brwiEҔ™Κ5lkB{˿tEH ȆZ$VduW7/? hXi`(_{du>Tw`)?LZOLJnݑY"˷WIZq1X.PtW*3_ |^e`v)sNPK(S\ W?,nrʒb'&y%´]:ZТG< @tKi̓7v4k}_wL\&m=@2Y䮀d?@/,QI?^jwSXzBE ElM &6(`u6+=Z=p@H ThǞ( B &'M~Bӈ^rjnD4 \+27Z>ЙV!6~XFM3E%Yr9UЃ!)2,A n PN+H*wUT57%@Y: ϣ H$XwDBJԝnqcSW箁*>Hf; 7i)hҧ(" .1M ؛ X4ㅚq?)iA0YsHj!N0\eD(6'+<0kk :,ڴMt:tb{,5V Z=43@e sXߪ;=)~ / 7ΈcFJjIO,RgE,9ܹxDm":;&/:CٍuOVvKk"KU8'1?X)08gsK{mv\FJʙd)6CɛQH.gdK~zn:]NvƜ:6{НZhubk%6D8TAu\S<_8nd |! Km[Dnaylĩzkv`؟M;X~B[p\1k s`AqЙAv3ˆ4-@aС>]j(>|y\k+>  Lo &rjj-1#:UCg_o!JmbaƂι#&<7ߎőwiZIq4[DrB4.+̠ymp_ W.&p'[}qD-עfHZ1\EvKlX[3ұkUqL9LMXCKaLz.56_g}b7z lڰ.fWBĩE"%#l+AG>wv:O Ǒ Ci6llE0R?{;>wh y$ge7 x0 ֋SoZ&prE]F@u+?Tg10Ton! omw7@Q9dEy7UeR7/ADxL6)bO|啭]' _wލm֫m\1ZeNĈo8{4ZTG.lkģs)9])T;cET 1&eZ9fNb3 <3 B6'_K9Jҏ# [}|= J%4Lm ~&_\ w[?zhؖfkDX=6ć; ](VOB{Xn!sLb 8ZbL<8kT,(Onl?^u }N.0>3܊ڽa4bP :0 nvxʢjwXl hPQ?E6>QAPX{{/s܅jTEyz!Glh0-BCZvӌ]u™,Ut_hQvuj|C1T=E78_+7Pq}'?cO8_ȫEVz*ϱ+KD&5Xw4NuZLw Qj7P 'j1<6u8ӐQ-vBtb@^+wLDDxrTiSYa &6Sb?x{ rjzq,3 `GF;[m@nWtfd]gʡdO2~<0"[ qŠE Q<^X]?"j8hoG Ƹ̂M?K[uUa!'V+ֱM٧דWڣ{ sM I.qobkz/Ix0њLjAR'diO:N5X^*zfi6Ҽ =`R\]UpH$>2BE.]WR-`eE_.;K)0:WFh>F{ cCJ~ߒڡ9C`_!BR$kQL,nY|B5iS.&i5+>o8m Sg7U dnvC 90s/ͯzF<l^ v2Z)is1.f1S/;rKzEY"zzV|KІ'1W~XWqq:-85UWֆlz,X"cUPDC<Kˉ8:0fլMu@>ek~X^c?kgrי,4P?n(XhE7h/ ZRO:Q`t(iyx0#G >@d˗;z ekc~!; I͆0\ QwXGQ84kʳ,$DuMf7vȦ& C VvSu%zo&҆03,|կ*{ ]r':Uŀt'~SȅbV#[ 0|s}]^:,~#ꉎGPAb~O4/ZI^ 4{,cѪ3)+y{txWCkdVN/miߚ:ܰNl)n(24NZ~Ԇu #oZZ6y$UD8s$/X$37ښgXx8=BG>wfAdb?Aʘ,(3v~_5jBI@&[ q$F>!e)!r(qea 漒==olAͽU8XK.H`iu^:ƒx_lOIC'&J~:9 !;l2#MsdW58{oԢ$n\.ClE|\ h&w.ai(  ]9W89u]PrdIjٔ `Q'f>iLo AЩ v?NOa&EnSY xӴsVWZu~fvߘ4 g)eMG/ĉH:֊s 嗙j _6> ?kSW|{bjDžb0O*Pv̯tbm6|lO{ V-A%Z47CEb GHeeg vx6 #*y”ϲvĨpPIy=,?.R[5]lEBVg@Eub.kcV 3h0*Pnp?񙞃r\HϑVH\cWmwldT oY*^(MGeȻrf)bBeeP"La~@Sj"ʢww|+tk~VjpHڢhpHCM l1S>Yp;71=&V=*,RvMV'WҖr=UzH0 1ǵ&|b03D¯kw$Fj=CB'Ve"fhAPa7G14f'>m/g70}DK)|)*Ե>$C+]#|VV?<\w}du͏SQ {V:$"{9Puv9߸$'JJJ gB۬| ԓlu #]xPĈcI;ǾY; D?sK@pȟӅk~#+LXtàwtVħDN.1<&oҸ{Zh'9e0 'ςܗVoI$9LXSkD?%Qg)V'$amFIHD&CJѨ;Rj/ G08bhmv´7AVOo:eTH>8}i6{Vzq@V5*+0!sCb?745,0#=R=(bnK'Cm5CKC om+ z̪͖XZ_]*ܥc};Zsq7Drg խ{BGE1AcAz,O,4I}WaS1?hYt`Q5Q޽id {%3r lRo#I{BhJKYSN޺ZD{Rʝ(c+DP|oZ:kjzwib~71л;eT0Wwo?RJG 㬶nDy~a:kV?J޺fw)fAu 0c}5gsq%sPb;i{)Ɓg BJYzD$FIzr۴}SKDKx%(vPli[p\Dۏ|VQRD: !vXOXQQ'02|oiO/d%-po-r.A+5i`rqoU&* bIr"K 6$@!STIa'_&M? j@p#~LxCͱWؐG?/R o`PA4V6JE%bQ)}58mW=\.+f,tmF$l.yyiq #F{stΩRޒr8Jz<,(B2%`wrȣ [-TWƀ Z T .i:_7$3lgVY㗯^#fA_vⴠj_b><e`ڵq(d.@j :߰iq}=$ V`AzR!1,!6,f$`~i ֫1ul-jm]/kW,KN7\2D5SfHz\t%7)TZ_c5]E _ IW*wct\L䉓"z4aO*DK{{Y:2S-ݮ p~Lr=˶ 2ZetOKj8zI|ȵ˔1-۹n8N6KčTnɛk8y@IIBGeR 4LHfנc` Y8r%[*W0]`Gs[Amþ RT(ΛqB* ]u/Jud(" s=8JzQ8j]~`EuQ6?7 x )zՃeUvi/0KkR-Kt3e 9$̋=xJݤ<"U3_JٹH]O-ϼDb.+tiB߰_@QmɢHy~;ӱA"N*Anj>{ ;RE*`*_~tgUe08n>QR5yBXZjs'nNɪ`:P;?O0x!:~~(0#I%&O{hGZhCp/ꩧ:vu'SFgW|/֏FFqm٥BKIb:gVVb8oևj@Jڗ2ug弳1^"d]GThB =u@[BP]Lt+u 1L, ;WD{f$O.ќ. sW=Jqv42GГ5a7 \W`͈c qVR9鱢egG<7ZApy:/n1X<(|)Y8?$u߽dŌXHt)ۅPP'z?t ^Ս6K?fx$p+gG&A~L|xV6lV#1m Z]ܭB%7eI2d\||SY82s!.~HQnqɦ:Р/I:W",#P gjze?4#ӭL?4 X(J |Aq\]+'=e܊ǃmVӻ RF,nx%l40_di$ uY0$]JĦ*?93ێ? [ |&ߨNu#RU2&& =1K; u%9gjpx依%ېL-_qOh}Pܽp``0yCG[<ݞo a=|T[> BҌ !fw)5 &C8!^-9'@&ibH6ѹODa jǕv5ϭW±!E4ɄҘV%}(GJL`Q̖i]ͺ[p9wY8E$yiM Ddօ3I$7WlUI= ns+橗HEr;G^:B&p.ŷ@f.^7@vp]"O6!q ?Z:K4Ơ sqPnYx®P)!W\XH/-szlyg6kC[mjW ӎd8v^3'Vi܆A՝ >LXhOnP?.y?Ҿm3) 8hcnK$S*>xlyGQnq7% D:m,F= |XRKq,Gr;*q xC`ӻhS9Qr[(? KLx{ue u8O_y!TQv|3͐4q\V12[0ҒX(Xw;Rʑnm=t$;[D"Qش"+ ~-,۩h06rLJE s|' je? e\'Yj+Vt;E@5t.4ňs!DTLt]-~/Ւ<[U9 3@A:>jW<: 8&>5/~O||KD,ȭoqI$تNQ]&'h Lr{w#QVup,D2NgQ-K7b7guHpV@ 9᫭O7JRҾ\0ꠔM5@)B:(αR&|hT0 ?gcp S#݁si}Oj.:Ir$E[ڻ(x; ʠ޺ͨ;o>*K.Z4Pdž roIs(."ܲLt#9c=%pBxߔM2\p7"sg]45N _: 9UhU>-0z?@d&w'p(o;QVb[Q8Z2MU02S 0e/6Bٲ;gGMj y?FqY0~o3JtRYRHI~ed'Gwt nLgzW7 R?ryPAuRZUb0 jٶG{Q'"?f8sȩGݺY`&u+vx@LJ}&5 M1B; ]<@9kW/3}NLRqQOHؼ/^k[ ߡ,Au WWD(QC?jR;)bN`HeQ׫݃P1UMg,-UX[6E(yp397{IPة6zXV(agڟޑ*f5.!VWLv"uZT96Nz}6QWJ'oŏ;} PIr>H|S!_pďo㫎+:&|ca[1T2RF!kq\>8Rx X &]"QZ8糹ᾂ_RC70~c3HֵʿYBl ,~yHo }' 4lS }_δ)3DJB3~hQ1BL:Ewey I mǿgYl!٭,: ƌ{%x *'6zv\Q &@"¿ZP?Bi,F8}K-/ Crrs0P%l5߂̈́aM"Vpx YCcu9k5۟3u#1?yа!Md$U +q} j<[5r{2=AE_ O%zpGYoאQ4'U ? Ëg-}-z@yqR UJ؂PXTشynG]*J*F59ƽ2oOEm|j[L>&Aq.#@oǢ{Sp#^'VHk澷ت}V2\Wq,ᣃK#dB r6y{Ng񽶮DKHBxzoێ夳̑{z᱅{q 5rJUY.mA@@QA~Վjg}Nd]Z,2 1D0ݡr@\+LD{2H`kPeS9*u3$Qo uC8:د|IIk (6sHwWN}&<JA.zAUc!j|@s\rHvf?Iw{Wa(U ڊv5A 04mZ?W&0z.hUz?$^ՔI{Ό/EG5(^X3$ύrShl D`SdENKq F.Σw!1e.O9bJ˰ynÂ,s  TՃ6.לEUs®SXV&Άx | \oҿG_Ȳ;@oZC;SLҳ!9?6p[iE%7's؋nɾP]5 g)j PW`n>͍`@ :ԡUӀ@#D1 UssG;K],!\ʃbU#9dP40D"E 0gVhoC0nSqkQP::lԒnbeK߇:,8u|Qc_9x'3W 9OEՍQkV-΅dlxf}Yf?OA"MGg)eT235qxQRd;}qd{sZZ`Nŋ'[o(b י^!P &'j*JIrcK zQ{'7g^o&rd:^5޾5m:|sߴҾ%H1\q8t)]|9Ϲ ,#@ _2svR#!ihnB;æ 5[z5ћnbWD}An[Gu.m0rv@z294/Fc$dd׌m( 5%aЦjGs-SanaJOܹ-EҋG]׹.uCw7zJc!n >C"6v Iď^t^cR@*rߟYnSrJ PT{E7]k{*9ծ7TmJ'&s@zfhv@o& 0Wn6I6ħ=ՀFcBgMmdim-i`=)7] WHF5譕|[ OUmAhqO$p0m#Fe JKiV;-3͏—jܝ9xQ׺%>o CeHr@K ͍KO^5`˔t%f1{k)>Qj2:07h'bx&zhyjO&v4!x.#CV Ӕg2DۗXKh7 {8؈4V*3?鱋_hsi$2jӛ!sgFoa7opc<멮3+8XEjҫ,~ufH`҂Uf[a^ H#1^-^q)$;sװF&^z%BC}@AO.<?K.bBajkr 62G8sm&nl$GuVX ps01EKʑNK@M1i=5s7 y^ O琘18cao&s+- Bդa_V-Pa<{˖oB@ײ᠅a}飭s 9?cEwEl){scC7/JddAe^f`vs~ q0'2_ y~N${xt&F! H3\k" Z oV',vpࣣ2?Lr%冨.S//}9%ROxbb,$rM4=˾Oh*K QG \‰$ b총CZ ]ܳAq6h/$"#(JJe.ȱ|jaI{.=M8l]T-tz̀+=nngN bN+I`MO!t$4L8LHpqG  ‚ Y+}*Gm*'&.g PPIV˾&i"w{Jwz^No H(WU_C!DxE2, מQi]ZhO*|W"nWW&# s^ր=x I_6A{ pߌ]m/AZ,%[uXm侦fD.lYUi:Aj֤H2BU@XLB̿huehHyXdGE:qE7IPjv!@Շ ՔL`$eOp f-_A.`+J39n30_|b U(:b>L`MO@94iКϿb7|~AUCO|/4`¢U/h&] n( 91Li]4󱩧Аn(ośҌ=N۾JVʺg(8\u{NKt#hF 2}'Gܹ=@J[3*#\_\ܼO?8QB|УtA(cdFpt䭛 _[[#^T+qN6=^ ID kjiw =]$HN].Najƥ鍿*Azp5jvqwBxWEL L{QY"ˡdd$5ޭ93Xvv"uhWV;#*Q҈`=e/)B pΖrƗq`HCX"X)rmՕv& c(&brpS&zbETI\0M0v{a<$ Q Eza<>?@5{8G>P&q%$i7M#1{+&MEZtD*i#SqNxHB`+9f/"P*akYfejHʣxG^ /@v!@Bū l"iq*՜P7WBscqYg?or[[]aPTgv:ҶXkbcJ0f́7dbvCqB@f+|:y)c zeȚ֑"2%W{P<*5o,03{(8R#SeH`OEi`E}T8hX@snA{ #IM*Ή:?hOmfH7ʡ$ϬG@3dٴ{|SrZ"Wut3Bd&X 9xO$*dT:/ /4)9˚GK0DܘVC_Jܸd(A-MmO,ꫢ$fl;]dgrbG'Ppk" mYteĘ5KZJB8w qzlEwl㭰7e>[5^=K*! Y5@ iaDV'p hUrmO] +M}V=482iCHd9FN@hY_4Q6!`mVaF JH)V/HWe,EW|ZvyiPr8gkx*v["?[ci3  6J=w@}X_ȸKXľgqrJ#:\+>|ڑx&'Sit߈>?BӚc6&,4?R8LҳfS&–m )Ȱ3^Х0=ϟٴDJuD;hV=R &rZk&Yv kiDyTR%x=%nOFBb:3"3D6ғ]=?>md`$5Ed ľ_8ۤfÆtyhj" er[Z-g^oHCCIZVWz.AdnB#zN}{)u檙@QѲ3pt5)L/[A6m0ujN@*LH&ouGF7ƅS^ lE|%Fg٣9"01?f/זj!r`v^5Liv"Ml5pΐ$ĵ.MT\h+Z$;L#j/Ad9Q VKu#RZ9}-z_!+:`3f"(N)nfg% qW<º$U_]̙ak#/ȩ"Ѵ 㕚0Y:;嚭e2V{=S#z Kw+./a\>LUo;.4oq/4Bw w3- \uJGi>={Ua=j2a~ӱm~&ᄂYo$\Ӥ݄r;6Ǜ-\n"M9Ey1 ˡ "_8ecZ=´xk)#o:pyPe5L gh.Ӆϛ  oi.4eկyD:e \%}бϠ>ΝKjܓ.c>p:[+ayFfxo^sRO 8 7)ʑl3>պ;%ً+`v'aZh u.:R-f5w=LOiA)A$ζu#MVZ9V!ӜzѩǶëu]7!$ޢ$H%:<5 8HUP*8]^#@q$jΓs5:L;UJEA߬zifX$u Tu?8Gye4d3I=X&mbbzzxiqM[zO܊SiߋW@OWIH6{ϔxwESӀ$;|ˡXijjĺA %/HCUVt |~ˊ R937+њu#9Ř[:_`r**m//]Rwko@J+ WE&)uw%=},/ ֨P :d ԃ uPj_3&!0{:MO?ܠl잀z&-/h.aK]G1UgfX+oQ / .O:>3z|AUB#nt&]ҔTXB|(I k`G\(n66SxvW~[!e";^\[E gx]FrZH/?}]5 z^NNOCQ7Eț@@$[_Ƭ${m0n=٨HѩѼ@a$^\2FG[5o; t#MOtҵg&J}!M{ lqI x#xZbs'cg N೾AUMpi-)I6$6W1+,۸F\Pgrwќvj:K- GXڂہnbXgKhX7.ѹ}[]cpc[仹;r=~.F~̢}& d,afANC")]s.N(4gHR9ؘ]ݓ ST<=:yݸ5B5ϧ+@BFkiTsLz)վNl<ۣnaxU\'?v犃]/-ʦ|BQwg^ {+/_cTxCN?)8̀_?+fSd)NXmr~`8nt$S!u}"ɽ$`4NQ;ݶh׈ -KbT )>~W3$RDՇ/ Zt1n,rAj>wlQNn.ր3Kr'JjS׬0"V_c)%ۑKe.{x zy4dAf_E~="<fX=|$e-dBHY!ҍ'D~qC-4\6V^V(d`bSt¶.,TaK*azgsZP)JSvflBE罨ϒ?`K=ܹ@zγ!mռ*Ѥ5 ࢁ!'&I ^ S#8"QZ fb@lvD[l9͂K@7Vn%rt习 oSoI!_^ ߙ;7%=C[X?|%L3MCf_Ώ[J[ā((-g[ BZ$[&B>GL^ &|Etװ%SvGp.D$'EfWOͽ`4tFj)T 2YQQ9'_6L*Q?jɾ_ o fn\_>eHW5~1U T!KI'{Y$z(XcM?%hŷ71N> _zu:=E(CNPʺ$l9̭1 vRR;eʱۑ+t[R\^AN{@ 8R}*WX=6l mtf  B7B#`_7gSw$*›C8FTx+Wi.]_=}y>EԢ*BOgʫ`b:' S#ufQB⮱ֽZ\Pj5;E?k DοKH%5@l-kѯxSt2ߴ9n@"w  ^wfDԈ?ɛ^a0r>ƴǯY6x1Bt 5nf,EU^Sm G6GS\􏆳Ő~U-aWԈjޝwv@̲7|[$Dc؞oMWjh+Lt0,ܗ/v0BtW̆`ࡤ W:N72eUiV]?w N= : .ItY$Yk)/8'.hC%^;虖O$-S:pT3uq?_liU4Xa;gMQAb~{(˯'j_Ǯ-4 C>XNy N/sPnwgYwصdq}Y$ G"tU%}|P;+"%a[D(`FxDB3_uFZאBL+h (( $ѦrEi8y3`FM5@a#K(ʶ 0$ ˒J kW, 2ax 9זa7o07زʙڲ A EG1IH`=$#WKS֓u[px-=ga`rQ,{i[1luAR(=]{+qߖ BUCWּ,(4UiV)]lbnQl NJ`$WS8>Θڐ ;쳲+]Atpv 8msYPM8-A6/IE]1@g75呍=`ǁĊHYGZ鹍?o`(%uڌrtcaxT ;]eG%DOA|Tt Z&:dwrK?^"HJa :L菹+1ʀaշlb^gsxNbFꗙV:G8%u)mGpkqvbV!1r;nhOwjp7kNCvG9@ qJaaWr7Dsrd9h^GYis: WpudZox1`1mB}s 4XQ n|t0U/ȬR)S 0ufD[8*K,'W+~nbPQ2_A<`f67  H-u.$?5H[|rҰ~[`]B6 #o6NJts·D(UR9"-(LGc g 8Հ^7og]FOo]Z3ySNI .8AHgso2zkD67ZшI\8yv;[ rW.݆Y6T?w"/ߟ041w  <zT#spb vgWnF2kB /xi8vbtYPEScfCTQd/n7mJuswL@ |AZR1H"JL:%D]q|-OfXi*C.^Xѵy*!J:yB7K n9 F 8Kᤂ޺`mEa-8lL+*VEi|e\ݩ:==Զ_m i *Tl IMs؃Bs_iP!+b†ÁUBQncrBA  sKFwߜe?R1ܓŤqŻXz$8ٝ(b\8e5t;JA]nFk+?%iSNmRw1; 2a00ʩ& %d/%0 uoEll;<(? [KJ S:wS 'c-3#vBJpQiIr[U}*-U⢖)rPpJD6*j9$l&m[È<YΠQ;GQh|).)n KBS`uhqd5nym>Jg9)7Vs "5EaO iۓkQ„l!Q +jיܙғcq.D?_cMG,5?SYwcFG@fK_+X&l[E.UAvҾ:2EKg%C;Yl'Sc#yWAxX1\nP;r 7?b'AY4Ѱ^,Tfw==&uoFp,LuI-<%t }T7!"=[t+K0T?naF:(ϽtQݦfl›]G}l,pN uv`!o԰A_~4p/~x>ͮ"3|}-QD(cİ&R,}SUٹK D_5Qe;>r:23GX=x 쐨 S^Bրß#N]PRۄ QYb}nvÒoeٺ> G٭mZ{0D۱i+t$_f`ltnza㮈ŨJ{b(6a J|:ͮJQD6 ߄j@B0|:|] xk&rl~!ݚ`~+>f}gA,u : ZJ;8;dAEbk̨tb?2C4>%P&*`9#vncz2;r#V32uDM.꼝V˟OᓑG_$~JDףjvh }iEU2dԸ/PcA ccն)'*UӟeժFxPkz+pW.EH+Єb20M3p+KY{"9tQI}hiGEd~X ͡H:K,I7WLLG,h{ n>H,'GT}BGE- D;?n^eY֡UUKV(}E4.bnG^:Ht<#݇ż+$?R]7d}*/_E#C2iY4KU3נiáAN ì8oӐ @a@XbDkYs~=*bsud8dꭕv"yI(.|!z>J_:{)ʈ^lʺ$_54+)Bm]ډPdhYonYF iƊt^'m|Ǒ Zfcmo(9WE:D] [#nt& O-{uK,66<&D\0sPnQ^qpfp? 'Pv}i4P7|i7>Vglɹ !X.`tn|Y)8.3G,)cI Վp/vJ f,\ dN{϶bH?IKvthRQ7!GY%Km s@f`|VTW6sUȶfL_ߣ 8қ#>8%$< !F߭lNP}?Hvڦ*ݘ92d iCj2zbF-*~ vPX!3m!*h[1.&p`҅W sldtLCyLqȯ5aT䥾Ol i#`sUhloQ mB.fFTD )?ڎؑwj]'ŧ -z b&fpΪE{h=wQ2\g#-?r=Q,O& K='2?1+- kXNK."M x~B%p2Ŧp8sցKqǤH˛h?? v$a_zR:WY)y|kt; 9nנĀ?UwSWITK緒?Pi|PSxkS Z9dw3S`Y@!@Bmy2W^tLeNIK׉8ݬՖ"B9MVH+ѿ:(2 £H|Vl?trCJR4b16Ch]$RE!W:܂+< I9Im}«h)R_b4ܑm8k%97#b]%bު*ӉݿK_Ef],u++L:z#/pV&wEP792v-=|/Ԃ7APw6Wvsqm`- |ŒNJQ}!e  UiOŏd}ei@p"AJXYPbH4sA}ptp]ꆢܔdjFJ9o; X w5꼀[> ^0D]J)jkiB-D?ryۂj69+D1vhY*xjL:# /g~>ND4\8Fo,O;{J_]Osff9XxX7aw 9L>h}N*YͲ*HoVq_XT["RCM xJ|br8eS3(@PP$ -Ճ*G7 1[=7'L*/,C 5̎\ח+*?iK-4οq ʇ%VxHV i( y#C$_G,ObAtk›]Z!nJY1ħJ8/>\ꃙ GɛSiuqBqsя9Qu7}ŜE8'JH`B+O蟍oyޒv l].eK4 eV M z g\"M^Dž'RK?E=yX/ $]mdm@j{֋%Kp(W~NGcBLԘw:Ws(ݞݹMJ"_"+HX0WJ> dֿE$L?p \Vğ}S'm lna%*EÆsQuJ櫉1\'%p {|1dIMWIڗdQ-QS`=Z.-bzc'If0̠V27?r=ϱJnZ ʻLNf̰Z1*-eEK< Zdi𝣸u*5Ӥzo_SyY GN-7g,=̓> ezsynFljƼЩ@^ w￵dIȬ, S\OL,-wIglTe4];v0zJW}Rѧ  :W@P>5Ph4d%ԖF q K=hҰS2ws a+!9M骜T6<]wm?KW~#\,?317Jnޯt*<|vE:sy^K@t{yjy˕Hٸ5 lsd\~U8^`7_ hvFLӪ}]Z)n;"7ϓPc6x[,IH7yDUgIO 1tMI]u7%B[G0J ']JV1TVh )l uv-n҆$Vɜ' N ߰;?'vQ"!a .`I= )#ؚܝE4P  T?~_^]ODn77ݦP)_.=6s$l.=PS;>'?T[L4v(^o'kJ3!7Ync i16bI,$)"*VZ8`n[QW՘SYjlHVNf[ϝj96iUGޞ.691De=W[23J&ODj+djI8cU֏Hm::>c04zK'+W*n>)\;Y2*R:9OF]-4r nlGYIgh3J\t̥s VWk V*Aj41Wn!CWzZ*oma`LJq2.,/5Rgޙ? ylfYUngNlJ{ђS!LD;HڒwWLo\E޸@ZcIhGbfE^=RC}pAfyﰥz5îB-go.O yL~y~g({58{c>kbsR?ثp< %NMˣEJvcq@~6WF@-gq58cO;'KuZcY1`h*jch޵i"˦QVkZ&V;#gh'Z3yAgIc[iآʭs,{a d]dH{£یbZr/z)pSfŽ}%DK;mQ 喇o@!S%ƒ#~ 6y[(f4`Pz܀j[mk-(mH8 Ҳd,o ef^Fe"\0LJhPR=;$u޹]JZm&T&e[,K}Y+bRd\W58&>Uto$X\?Bippm%ǴEZ<ģ2UpƦ c"4BɔBVШ&8_XoǪ6g;\ȱI:x0ĞPJPI̤le<{rR|m#_҅OT~_,"f:G) tZU<"!gڤ.BSg坊rTҘRq<u!?oiC,\P(@Ujjy6;tIԆJSLfM(0b;fTÌsf."kp_8G hLOݹA,#I+ܩ )*'KK~5%6ިAEgSF_?pKXB^fśw_ھ(.lϦةyvjL^9GJw6'b9Bxj+>kR"YU7M܉@[hD.!ۆչM$'`D3^ZRjh5>3)/2o Et&c&%aћbXp0j&r BtD&i_huT& ŗZ U U|uYO .W2m j@fwe*H8diF8xKZ=s7ZA] u^K }wSኅUIi.{h. cy–s+bz_e߫쪀-P|,k_+59<Njb$PsQױ 9~+0KNK_2DS2V;Dei~"\zP@MzF׎%8XT< [Hh"h{M\j%$-FXyjE,H01"Ɇu w Xs]>xdbdUSyo7EEoȓo@Hsdkk~ RO\J gIky3 ֚{>GzcK򴏮c@jGIgKit2( áHT{|y)n;5&RrFh_5-hZd<8H+AP0 OA7Z:D CU֯Q , ؘF$ajH2LQfk~;< Ts&@H]4K[rC!&i#getPOUVUK F%"$6za{BݻLV!|b)%2h{FZ~%J׉/Arg&Hhxs"tޅ?..szõ/GS'2*<_~+"?2E b[K3)Ȓ;XgfCU)o8Z@gXMi!1.%ԛ<"C%R9-ǫ*I,N Ty/P}1[ߍ-8,M# >.?5t}]jF%Y=D'3t׬ 2@g0Ub_cQbHCzm]5"9f!8ݻG*74Zl^$\_ҼECc<ӂ8SzZh-GRd쟀СFvIxܬDjэ#1]+i3D_R 7نS4A9*5y[}-ZnLv/f pO~_)5ۘm$n0s=D+6U5Bm a$+-0~VZ}C@wrц/OL¹5~ ;!>2\ZtZ$U9Rs`n5t&FԼ xciY.5ٸ)Wkv!V5M}C:b ɐE<=f*(5׶A[@(Qsr,2b%JIMq(TV ÂH,N[p4u I`&$?:F91ǽF"2QZ౗X1ռ0.NMv|U*!kyKUZ=!Oh44sD,W7VA?+u2lh^ e(̈́!!\rx`H ar2Cϖ< w7^(4On1|g}ۧMq/J3 S뼜yT¬|Jt"3ޕg+wZͬ|MpR:6Xk!#ŁH 9Vtn-e1}- VHXV# :ljCsvr-%C= A?Z$IiD:/^zQ8+)NFik +Pd%.*6{n/:M{㗽ۭ7!&5.4RNf@2DBVK6!(6cתڮd\=9ϱB ;9vY]!2,qÏ<uA.`[aja#+o H,-zH]:u/.f[s~L(EV}&V|Q [AGnfsr=NPY}H>_` #%A"!y*PW2%FH+f~4Jx53?LC&/:$K3hj2 Z 'hTy"dg x]ޫd$z|J' B]8E"֧Mh"Q\W3ޝBBhGMyLX^(W,ݔ듎 ?)GM~M+FlwTĖ"6* &@Z,  9@)+0ƒ3P|<[Oy 7z056LmqR0UD kxa" B$6Xmyz۹Wl1iFyxH% zgl[EԄ;_k d V<ˬ\eI^X-L^B}DJzau Um1}cC"g2^+s Bſ6ۄ"Q9ۙZ9Cʕ3w]сC>] |#EP/ۥ*Ač#-D0Gm1M2hYTsJGz_d%B UWJQ4s@ $BGŽhB4Bg,#!@2hvMTíRR~oK 8}{HMo]!L%' K{sB~d:҄I%1nO݇dЪg:0wTFj.*Xt ' e6,^JlSѤw/s^A5y]Jm':d^Pt4#NZ}6t.p;sƬ+w[:ԏ%K[Ck˸6ދ 6N_զSXW0H*g2uF'E@}"GRyI6VF;8׺3J0H2[)h]V |rr J< :764^-O91ч転{r#S _~?~!e-u<ǦbAWٗS ~J(T*q+pۈPA%8BxAOm`uI* VϮw]GP!0&OAܑ虪&& T|Q /yX阒/_|UB ʚҠ?SCz?0C#r|ںWrX~3ѣas񤘋g )u3*b5>*SK䉭@5Gx4k= ϲ.xFrȏk̢#pMB3&˙6!I ]'jeC/Bؙ# A}qWttöWJ_`p :/@bEV/Imd-6y=NylUT/k͵w=!A…{kvtԴ!WM"G& ӝ(NЄ N8P~Yi4|U/!%oE%mkyٞ B>rĎG[ZƶY@ pa٧(-?Вek `x iOƣ kM|tG*(ξWh^\ 5򂩦n+HLj'!rl9G0ݷ5Nqʵ"x-,sk݊zw~sr܍1hiW|[)e*/@ܳ?{͔uf]1(s=bVzۢ]x'bꨱnn)}raӰ^&ۉe4Q*l4.(.4uߐkEZNkT~UZqDl0+TT04݂|L&OMQBN]!LE6?j.dluT.@y_;D,ד~Vd=v8yByrGpRfDrm"uz#5x߭uIHX;K/2ms'gC!kV gB \[eĴË9&DJOZ:hZ/$]g`q_ 2/q5-)$Ysr}cWt0N%yVŽB`\ii?UY:B:k#e"GFG+C8gWKoR66KVl fgx6`ӶB$̇I;jm7$W:ރB\H0n䈚S‘6{Ⱶ#pg/>yvxJEV x>18ϋ Nh5MhGFc N59k^*" oLj_5G6:8C_ +ȇ57a )6+x*$l/к~q`Ŕ(*VB̓7l0G1 Ue w'5<J B_,62͋a[CCJ2vMw~IZӣ.pvl*h} ֧ v:Qv3+-sP G} gFF[nҀ

98vEZ+'n^R4\v6['@wHn&z[9(OB2Կ.T}j; O#q$#b6MJ MKyf@{mnH-6YmW=/!k3 8DG%ETK AW}P]K}޲8L6ٳf `n)JWFb܏=H35Aw9-pP~tx[ՏO~EotZ<0)Dޱ,[6àͭ#ӥLfN7^~ZX($x 4PL o5ۢ'UÈVC+z2LUg \m`5;%!D^t|Ti5EdfѳsIsז4>99siPoږ7Wj?G쮎1VƁe$Ptl,wFDϓ3J?j zqLxk{Y鑊X`?[?&ՇgWe_'>IBZM]&Y[p٭@Kdm(hhk]7f#"!]ipbªQv0U߈~c$>DvvGE=&,̋WXC| MdeIbBP6I;F"Dv$׽Yu"K-y!>Z0!it`w╝qlC'LևYÁuL槍hhư1uf6/J]SsBdͥ mJcj!CL%%e Uz M,g l _+/VoP M.9UFٻ'6"xx?e4NH_fR34ՀDl~[ůLXG@4»D4& &^A"&(\.|i<ŸW'ZKڑcOsҲ1j V _BSm Tt7)Vo,bhXڏK)8b_\/wg&r33=;oL> |3^3sv8\c ɾOa  9@O'WK+q>/2G`E,|/] (ŮPծB162} 49Ų] 2^1?,yor:jd+^r 8vdBT^dy3B>&G 8mѹC%\=6{ :őA!O=mSiuc}}YW凟  Oοf An'Zp[Vכw\:,artEw)S;_.J)'KJS 0ȸ^2tDzR*n`z* 2-?fhT Qǡٻ2@vcK\pufɱtb75?% DM&O,~XdtLR%,~uvJu  @rhpw[}n\wqF%"jo nfyYL]R%uo3`OĞ$I4Q!Z0 x׵D]u!iq1Ȗ#[]7/џ!gV`Q'u'\Mϴ\o=XZ:CsRB,9*1x0c']P#PágoBT$^aR+( 1Ԅ@tttjvv}Ǻ YV.|eeF9@㰮' )ѧyѶ$ւXSsBlT+ք_2>GX"8hrk|M% ؗ,J"k9̭ .iF;#}zJq b u2#p5sb&K$X E?(AǢ\ȅEc!xVwG,|6DvfJAȘIַmVE0lgp39_jA~*WP8Gه x1f,PPRcxn5T1B *E׏&\65MZ&4D#<<lzbP#vc.,*::E7\F]Izk`-=1B9^;kw9 Ҁ 'q (5p=}HI1k5*-|7zwj&'┶XjOծ%Tu_s4.W>6|͌8$'- VP k &`@P[ZB;Y65Ǐ). [Lryn6~'c%$-NC{hd{K'wjWIL{g6A<1h>1bB(KK"pN*mŰtQJG Gj̃WMמp0k 5'W ,ke80~&P0Zр5LLe(9x\9ab}|q#cىjRc"ps %VTHܧDv-ř;dD0z2+S>F.ܵq?JP2D{4"U>aOZ^ZktoN(aCTsh3 OeD}F9U"U{av(a1nEiFގA;m#%nn v? ŷG_K3Ww藢W r'0G2c8Ujee1rtZuQbmF  SDֺ/7fwmQۛOeAD4-rjkV^@ަ6 *쎹b+P^^+b?Zk73re7YfB-L TjOGU::+Dœѻ8M^IY}{>a2ie&ۈ|c-#m#&Hþ*G{oPJ s.RiWJcE+^n. L,:!A: Ԟ3r_Ui9i) t=FccuFq:ڑK05'ƙҘpc&k><Ȱ)e_O 窞r ew>- v{ЙwZg)"ΔV.^~S&F][{լhlWV2t6@I4*'KZQS֚KK3/'@0GPX3,5y۠c?=(s{CJ.J11JdӒja"P# r5N *AYno =Ȫ:-Ie ;+mŭc%]%a 0y/<^jrn| tK(߳>}]DkDQ/.J`\f ωv[HxFt17F9(yE?;h|脦W7Nޚ:04`oƝm>ߝT5O's:E⮡+Um#ӻ?k aࢩWbE'Fݏ{O=}]5;3]0 XBd?[yv6Ay[Gclzd4OeDVUi"]5x{eWɱ2Q\4 A7תG bVΗ ,쳍6>EاfѬtHN|P0AorzG-#މ5f ^h(!~Ik_i BA?XUPLWXcLcB"#k W>/wE^>Q'*YP(\/3Awo})X[!LTXv ,%@xmI|OP2ݻmK17gB\Hs[ hAWND)_1)gwHA.{" kV:;mNHڛ=U% }[Z,Nc˦X*0<IN mL{.*# oغZACW&u||YUk n\%+OB'b ZJ%zKX`5t Z LQ e᪣ut3F,uM_ ۪=u4<tRNx%R""I򮆮m(%gyo(*`48Yjva9Tr^ $P@YE8,eiL!WΖ H۸5C4![NTmX)0.; Vp`c Y}dz=FH]{Bp4|-?Mhk} O7zɉ_>-RouqnH"V~2\KVRe|)~4J(:w6 4[j!tZQО~ ~{cś@Ci UkXJ\l#(L$4ZN?wϭ@x/`\a}^SS{0+h18%;hkt:N>3jx~~g'kum{<gRnxMB~v-&+YUTZ蚥 s$KҾg6xq QVpGO.;nυD#o:̳QhhL͵y*HͮtG$MFS<-bɓ/3VM\b =|oYpmVFBV[x)I Ϗ^E+`4=BBf^w?6Aݕh\ KQޥ.yWp;G@Mީ]nXEl+ BVu.!a&U9gRT j}zNJ*w9]z%\Coi,sΐmrւ5,XhxsCN m?2PX=K =VűW&pDV呫av3P:Z_9 ;=kOwEտaFOHx떥p5d %.f/@x7S$=@î.;}HI<:R7 MP2͌ϒ_@<{$vS,O&.҈u[BbC=Z0G~$f`9Zy<` g4n_h ۝h8< բ  JYU .'C7EݰU wP09L@Ypw$ ~$=x ZYw7R}q؀L#bmJ+߯d4o!\蚍cBr/u6a7<^4@ J̕#tat"' 7pՈxt+(1:&uOO@îp;7綟md%t _.y̲0iYè{;wU( u#$p^i4Z8I)E+h;F^ #q y&0>ndV =qXIwo-< hY^žv*~?QmPq<Ɇ8S0^ˊU6 9=[Bи/*OJҀF-V2Suݺѻ ˄w3(y0pBwL],1/lgœs凵n>׀f֥, aca D$ E̳u'Ot6٧QL٘WpnוB ( 0acO7< $ Sp ܌ =*Ė,,8M;ࢄS3nH7vGD_%]q>ӂㄶ( 67U>[xX{ʛc44%Jbv&suijӯ La*pf t#>?]5y,r;THi?z1`Kw&,d5P* w/tVէxl;K ڌ`~^*QdVq =ԋ36FCL.1G!wdCP4%@.e {\ @}$!DSy ajT|zQH׶SEw.Tk8a|˕tY>4\ f7tU;saNVoܖgwjߠ0LG{ |]̈́U E+j+]D 86ۿJ 48Go0j=%;sc9j >zc hߟ# rn/P|\Nj| !9%w p jv0r]7F*/DƾzV-}wo`PV×brᯔ[noICf-iF?cSG*6.skoTl~_ym(Qz (> [EPB뽣>.VO`D&wܶ]q2ZA.X'?up2fwcRxJz-y19 gAh8^h C}7-g o3u"7=#};ƄDE37ٮ%#?$pRS~Y:ZI]^4i(5/({JJ_knwXm.?wU:%i:FWv7%xbX1>oJ„%*ޚ:U n( "}"}ö^sKMq$Up>*@ yU oF3+DP"_Ҍ+t1 ^}FEkG*j`ٽ%0A1""H\fTi56j=HVW\_xg8E?R*9 p<Cu0,/'? wW8J}M+#s^^J{|CL:׎F^iq s)iYXY4~r݈zW`rV8a 0i%w-p?6q ?C:,sCǛgSh<(47',E8 ?h;D$LU1H l:aH[" l[>ٖ EK;mT4rp)Y1#7`c!9FW4 \s%3=[G#jwC$ŤD/.t0-y~7vc.ڏtWI%x,:p͈͜8HZPFqAƳ`$u8X-Z9^̮ᜥCMow|jB/|❰},-ѐz5|kEo5 `lőXI &|sq$^=l b)3&vcly8+Wf@ fQG#^鈁=P3 QʆTq)rimUblxᤫcȩ}DިP|Wv;t9V&:~:sՒMN=1R7 ,ҏ[ ciVjڻXu:Lʢ]5_[KGɉzcyB$2UL~ʇ!*Q0;[pDb½^-rZC]ΚiSK>J`cC8eSJFL,&wcT41bl3Y;_jKɤ~'UKDÊWOr26+_G)HS܀ؐ-L}|I2K0;PDJqu#f/B ӃyuOs0&8TrlhI1V3Adʍ*h ?S6se*qSY&)֯p]L0 wOrU7 lKՌ?^(Uyr6A *%ǎG%dYbv{^Ԅn q>չ\u ~4=><^TZNu3NkԟҎV>f[¼qi> 5q0r@;#OZݱ\!5fgxsp5.zmXΦ?xښKnd$ju/B6I{@J 6[.) Ruވ++˺dQj{* %A5Fă _&Kv7[n̽LQqZ:dw)0nr.+Ny_30gLN;㖣yWAܦ f|9"o9KG+;; sR5$Nr{s& @U:M-xB|&gL 8ܳmk;uBCz<`Ib Hň קxI4 \~YkQZ&W0xU@/ͫ`ߦ!E3>k<߸tyRdV[߶݈s 8tTHv'̰.dTL Zܭz! HMOH'kg==X܎wڸ%.~*Y w!d"f:kfˇp|P9*ѧتlS.zb2 Z +vэZU Oijlq`^;H#;GZȯ'\7a}y/Wb]?M,F<~ڜIRpq߭0R&}rK3!/ ôk)w8/}y"Gbxt?VQ)9 h6ڕ9ʺncmo .+X?ʙX\7YV }0#RgI/SOX{8ٰ J wMKjqw2np~e} VyGS|tn0] Hb'4ܱF<<~7V> Up=|N:EhrYUv u79C HӮy0O> 3mIzj Rx;ګwKzL]ǹ i=Yu}CN >9}Tc| ۬BQno KB?e"Kՠ6)~z"fcI:I\=4X6mH@좉Ffv$[ScT>u;ݏB -?@ b\8UW(\]UfylVV=U@48$sl )#/u\^¢oб-P׋kk9]OO.E, dA"Vdòs,V!mD]׼_pQjWEmq`7.pjXlwc8dRCGMvV!oeC00T؅HmG? aCU&]\{{1FW,h?dz~?My{络dQw_*T3DHa]?x5Td[RGB"پ1UJ-r`Q%ʧt6`%QQc`}`Cֺ)r +4zkߴ!xMB5~2eO]&xFo B͓&Ɏ,ƾU`,%ݚ( = laNUڼ?'2, ( k/rkCf)~r>+0ODi,I |fCt < cɐ,Bi= DW.sG5PO|JyF0W!@DŽo:yood]\u0Gb~BhS.g>R85$PAU{/uZZoEsCŋ9޹7MC\{0:f`` swe'j9:>w0N;D.O!ubL`rK69*(!OOC`|]2~8_4$r_ c9cf7-|,tj=SIFs}yY.GiIEFl;Hr kBYҢW[ճ]2_%a qj9꒡י-lߍV9,oB]7arIՅ:.(<);Ny<8˪"B=ӻrU֏/˅98`v$53c+H,n%aws$ X!܋ŁLtMx@$Xn& 3ks^vRE,ul@xMrWN@cӋ5u:b:d5nyq1zFD,@0%e.lά o@[ +cY9tPb_Ŭt:O_ ]Y^xO{PS^qvg!ަҭZH!i>g9h:/Us~5{<_zF '6LZ¦4@]:1m=; TՉ5/p (eG}% DaKQgפ`Xv״2)WTbҶ90qY̠cG`9>}F/_>[H!-Җ63׭ $G;P:sTfK}Ft/ry꿜w͌1wG"'Xf2z|4U+~{MI行$?fgLu[ |k`H !6ح7]h}ȂUT +eg5C;` Jj HkHfW>!^?e10pKmf6f !j:K68`%h_@y97RЇ=l1dZfe+Ol% 2od?bn>Tڳh#X ڲO$H_ŎN%vrMdU..^r~@S)i%8/Ihx-i}|:Yߐk"~;G^yYppv,]Eb#l;+C4 aPrxOZh~)1ا7/ uSZw*96V_?ԿX^H33@5 ̻2*AFj3OHRvU R3z!Mt8/OZG!l!voΎqI}{EӀ&%+awK h1`[}#+^gd`SUV2A#?qڼ3XŨ:%̮~h?ghyfiAƛWL9>u ·mSqO|A/k/*xR=C(f(l%YM?є3|?^l&aOR:k+\Q˻׸7 UUlp~T? 2>Y20؋9!4,B5I"oYI?u42)iITWj};{/x$K Zsˉb5u-YM}q( ui 4Țw?j4!ߌؗKώ!g5-yMTU}$j vbt2 J1OQzqT}a' _G bϿ듚sC_#MP<ysZu-=Zx/}|{ Izb>#0Ezd'O֫JL(R5PԦW,Syx=!UM9$3E5񆵠־ii'-n[-c.^?ߋi#V0qMp2ǻ$͙@q^ބm6eEjk dqt s3Tcΐ6 "Ii(C'-۫?y7cnT':c=3n] LU'*,yl*ι|xĐd y(bJ0!eXCix>X[. 0r;v'vӈ<*5,5ç5D9I%ZПJ"FT޺-GGwPzܯRJS pa#EU=xܰNzW$)0gaoO)*:wWt&{/{ƬRΦmG\&:NvY֘1KRQHFznsh$|5tUq:8on<%wVAw#>cqzm>.6&#J)?O6N)> Ҫ=:e/ E\h4i (2Ƿ`lx ‚ ̓шɍZLqÔɎPgaBR0\F,_[͹"qsLT]+ WG3J AIᲾpnk\ 8ʪQ q%Y1~ݽQmvgh(nb`Swcz4>7fϑº^aX*>^\o]XxdZ'Occ+bBIYcH,k8~-SJn -LS&k+72e)44n?AuóP$aY0atH|  )E*@g}T 3A֖wX 1&quTRJ ?lo !")gաi 8d@1HԈPy.ƩQCz)9Sc 4fdz_/bh"4*dXV FIe v{GJ؝_`Sʼn>ɨq\yZ#O榘" @N'uƨe mұAB;ZK^~%ʍE~y<Ԯ^8#q#GSեk jڶ@6( ~v+Xc>1 h`@`wEayMS' OJ" 7#$J3Ru΍M2`?r‹E{c8$Β$#J'V)j~oZ?tDٮ TMp#WՆ5=Mvأ&u7*lqtՇ+'8GFctk"VDF`Y|z`T~ۻ: F8_.t뙮g׺)dXCZ~X8*t9+8et?m8a? .؇vUqoS;)7RۨjBn:SۼQ_jڼ?G։ZF3.=$u󖜗4(D: KT#Ƶ@8?[Z1%Did3ͨ ˫;NUOc9R'd}$A 4ƳE|Vc_ EG+\u| &DDTk ʰF5n@MvZ i/Y~t#ɮt_ߜj5`&g`~o8vPI.ԡ#0,X69\J)uoF9B,2D(!{s,U#$`9=EE\\P94 LtXJvq] ey}wNK1b߶/.Lz Hy"i=A'Oj9NI>.N#ٍz(UwJ=3kG c=L#sɧ٫6db$XYMLjk*nɶƙS0IF".Z@dT3@fw~(Vޥ&/dd C[:%īeL&PF9{Zo1trgݖe03kzL kf֣ypp8bH GrJң{6 3}־5ٹ Xg(J  Asʻ֕=G?ίQm"HWcN O홬l^$h]{kSjg;?),|"-I3ɖCw#tр!6#we,"}o:އ j>K޷M`ZQs$Y6Ƒn9S)ᆱ_7PKa hӸSϵˑeMHZ gUq/5@gY)̐Z~mc#D+ذ >9k [˵3|XPrQ-|ٱKfX)_Sn> YB12ƫUq½nQ+7C+Dޜ/N'U$:ٸW 9{|{P}p3Dg;̅U B:TbY[8!O!MPLN`Hxۋ9OӜf"D˽Z|@xHr@ 򶊰`X(g1;p/ts;k'SQ;=ZV',or'cBݷhߜ͓;;QcH/ջ@Tc=Nh*aj9 >% ^A8t aXʹlOTnҢlA`}`HQ@y#NML̉&ms|9HmIq\fǑ P4 oRBņTދPXyzsB/>b$Sd\vI(@{$8{g, dAֳ!:Z< (T~ͮXg kA)yJ $1'tmx4m[5纈[Fu ^~ dr )V`!^# JٯsΑ:0L|'T^-** BVu64DŽbk[eWO ޜG~=UxK%Q#ض{'šMKW]$Xm+P91=D2+ĸi}kx8b[y2 `qӟ~ė)9\ZL~W_gJׅh1NkMS0WO" ("UcJn]1 {؂`kۘWTdq1RS@}m_D--a?ݱ$k>CM vw-)ݥ(6e"Q\vVH+R{=dfA0J[Xz3ϟ\(?\N(0gz :@_ݿ 'k>ܸsg%p *SݶY pG>Մ&ir?nʹ瑧݋IF %a??2p:gKRԩԚ/֮znc6$1K&ZEC6z6z;TEͭQq׉HPB>^$G~EJyInhS݆{va#5pK ~"PDK:M*cT-ީO=a`t(f,)vMɾY[?3,tݵƶU2@~ws\cx+UXhW#^-/wuHY2YJ?CwF]ur]FKf0;_&a= =&٫Ԥҩ\NM'sM@BT#&҈LLHUf= ܡаZgG&%Y)vۨJ&SGv}]@F8Piq(.mNI-l._JoE{ v'1P(wzk}!gVMaXԛԏ6`)PDB~Oqed1G&A62-ޤr]X9xMӜ6wK oՕˆf HՄ.ڜ0Uԗj H%o"a顅JڦzHЅ&&w ZDrΞ)I.i`[H~1)t}|>0ho8^},Â0y*w Jw_9SOcute*ϽH"]j՗ɹ ԯHݸA ^:G 'ۑ'S|z!?DW)Z`AV^U+ j{ 6{6qMݏ) /)o ;{0;5IGȟP =}lFKEp>+uSl|=@%A-{pX4~V>.BOBuEI CQzFό1Iu-g%N yhz Dnj+nmc ݞw/u:7kLjJtV=^uzgP>?k4d;Cb~+F090>Y%H FT;IJ;+b ڷ8$GJCrq} ݍp(<6A1*0uढ़hﶦYM(VGM&oq +z2|Rfho-!Q ur9}3ϰ77(N"+5R*Feܯ?fL(!0TsP6܁a'Z6رd?˾<j$(U<5o3whSf,# MTRrs最22P|Ӳ@y^NGųÕܝ=X15W'yqs#YrU"),8iE욱%2ęl>ԯs>Y@U+8 w@x5-؇Iq,H 53" ߿TyrVRw ]MqA=#SV~!ػ! s q7Az8K* VpyuRհZ, hZy)~KQ $˗`Ű 7[3](I!xբ%6 J)@E) =ÂZcF@}ˆ^ڣDf-f_ R8hܴ;~{h@f%>, r'圢@ aaV|V=7+]oVãOy%y ټNAF6`t2&bT2[z6qhh-E,Z)Ƶ_Oz?Ud?%q4ZG 5Dr;3Rjd҄\:p񅘍:$$_AALF1bM9=l<nnоGЀN05 ިO%DtS+M)<ϢA`Y8.q凚 W8޻0躀%2OTP9:FtK8!/:RL]v?euمsAH&6ں 5249طɟQAgDՠ @M/GpYmb]x)6y +#DrYTr,%W&[ Z 4o5fbi<g1s<~8I0+*NhtӸA2ўܓ6i(jVQeC\$fG;تA"S7>zA{y+j+SRH {,I6=<p]4bwo7~8d*AIÿBGWF.s ިr&gxYf9Уn&z6JY"K;ggcQE`&Tp/L19tU.CЛ*#w4-,]+au*G h7B/ChiٹԌ++㘰^U4c숂3t 3ݪKXN&9dNv`ѻ̦`ټݨZҀYV2/Bn3!Cw^G~K U(6z.?pŐ̤]{ڑzefˈP$FFCx}yӭ'f42fQo|jǛ6{L?Q͘LϟkO"Lc75(byG%(28`s@'+pױIt %a 3U692Xgr7n߈^[&Z aV ӑi,d4 >놷@"J8dF]"N`L,S pkwe4 O ?~~3sϹ^(i^D"0cVgeys̛*0-)e i5Ĵd;ꭙd#~`?3{4 i¦˗'@-Od uu+ ˿:E/DeZf1gȘYm*kluޒ`h`oھgQm3`0?Ќ3[fZֻ~"am>W -AݲH$bG\`(aVqk*e&pSxf@W3V+2qmd,u0pÓ1gF/M7ݫ,(nmLklB||r"2xW{C i3v3Evйrx{40@p늫"{}L 9qhk-3 ċjSFmox7 Ykէd}`%E2tӃ 7U9Ercp4LYP>+,;5 :!"go֊ |YƶB\[&\t|Ev)C`֚Mݚ;y߰r :4ˀ83:Z{q0+<0 /ԓ/ loǀf{kBYBkpdOr֨'ќJ= $)ҳy=K#{V` %H䙰VyQf3/j\RU<]{H}Z3~z8Ɖ/,&Ժq}O'CJ =QV93@|ic[  |&:ΌD5' _'/ Q0}1ʢH5a7w3H>/_{نENL\|יQ!!ǝkuBqXY<-fYD眗t<9r0BUA L+M:sB.Ah)bӝ7SK~,ibCke`lYr1֟ Sw&CEܾ?ԾAL< &ZNWYMDSDh'sqqYV  :֗Q;p+٫;NשkeAd]&>iu5cvy.g@D1hq Ԕu_EÄL_%(aFӒtcm7Q7Iɋy+BfqZ~')=kCzmZg hid5IQЀ21\0m=UXK{ak5+w}E[Y=v`R$RmC![ lt01"ÀљUQ28Y1EuqY̻D&H.~KAjP /so}u<voϺ~<; sywbߐZMtq(Ni;oTuޜQ^naoK}?_׊Z>sb qVO,-PBφl):GYr@Mk FQC3'폋ǟMy+ Q|៓v6H,0a9; ;Ux~m=e]?EY;2T܋cT7 D?xI>eY .$ӟy}(%$&k9b>29|Xc\AKk;7Cp|x2d=ɝibZHQhO^7!Fu0Q~K-OTT}J"pfK3>.tIbB8ת&qy~eaHy#PhZUV^03Z 2#2d٘3W]|IP k.)W۷UyJu qԞ1JL0-s@G|ZP-Q|+>35V{aIs @J5=ީm#Xf+)/s gtk'S7R21DNQ%Nb~W06( so@T7o\.sɵ@_sm,I }d`}ӸȈ"T[8P@(n0b4!-=PjkP.1jη5ZoeV¡RojI{qqfl3yd -1 uh2gIwSpB8G8aR 6% \#l-j@+c6nnZuޤ5Tbc;rdwqZZĭ$ NQND΢l"VRs c gCQsHqyѝVٝnhv}V`zOm;x9C%[&|kP#e;MlGS1zh? JE<˱\~ qNv2".kJMpR던Vi" 9AmX< päӈ4't GfauQ]Lh#9&s+>P=/zT#;Xvgy Aj}d}ˤ hI_f v`JxAg ~_cf*NB 4s--t ǪPY{hd7 )\O6`y_g1ݔmMM[?YjQ3&wwjqsD O1E6zg # dyջ9iROOk57_ηrGǨnO0F(! }k2 [Fw3 ij2CۜOX[Ē]fS4gt#e}ߛ#fs8zo6/¨SI$΃vM!/ k!ʷ,25J#: TG[wF:2Pͽlz1{eR{\I{8*!l {*~CX$%[4ů E#6{5c*`P)frr.^U!9嚁!jU7SEAdcM;o$|qmwsɞ|Si~SzTJx @RE?vԄtH0B2Pӫ-a~Ci@ o1G5]ă8 ]Feq>\̼0`ۇ-If ۳`Owc̳2uN{2Lc)QC @b!=;1yNF Iɐ;EL)Qx,I iݞ( &4#F{ܧA:bP^NsP/?:n;W5ܺ>[Uukf gR|G]b@9t\rѰK\k2U?cyZki5[.ld#m]Z"A'9mzs3P:s;F\˄͆v4?a6ݒ4}#%=$}ӷI_i _G3 Twѿ w^-5LU ;-;O5Ҥ>*h}1yz?@YuHe|o/{kCw F !p.k%ʒ稝lރ~ԪOp'Aw?*l4o7ci8n&;((&%THy^3Qpu0mG^w_s*] LھOox#Ud',˽ٛ63;(LRբ l:y:r&So\ԩ6qt@.gU@ֆYc p=7MJGJr\‰ťB1A 5OrL=^ ]W4F#CǢTϟlZHbE@2DOBtd< ZThYx5?WU(1Y?=ܹoO*g7x##fC솓 XvhsuJ =#Ohވ[PK=D"%P(Q%s|f)WXt I"i6L_ 2TJŏC'?yNj0#+01%m̾]qbNM;X\zD"`!drKvd!3ؖ„,v̽gPXRޯR0:^%%u5S4dV؟6R͍+j*2:C޴vGS -mK7%N& pm$WsV7/ 0)h:J$@Q, 5Lt7v O`Jr ;xv  ٺcwpO':21M{{v/ڊ(E"D֯*Pla0a%j.I[Aq89gknz7;`}>n;k'Go3B~ / &t#\,"^L U.7Ă8&s7ɟcЩ,tޙzO>Dn ʩ" # z9G~ k;}v@`g3 u\ TBқTWy9tκ4٢q}n0c֋.kl:Z(at3c 68+5 K+te=) L)*Kn&?T`K<~MvS ќIB 7`p[$Jkj.vCOɛ^}qZ43\bpQ:#iUJEI+[d^^##)ILV0 Üٔa@`K&>.L6ouhڐ 蔈f*Em\X爆I.ꚉ$XcEVla-w;АE~ay%G&9^k&UQExWsPZ˗EdZ<`j@b't1ue G/c.O ׾܇w<:mFkL\eG5 -$EVIRe_ʆ06Ǟ3@*; ]4ߑ[!;0YWyG̓ڔWߣϿ2wpJ >h z2$a|'(_}6zkg:%x7Fn)9'D(Af\;Q 8QOY d0\]!R+uP7*oXJ a7H4᚞sr)+Vu{jl z htY:/-Iisc7jP3_edKMUʗPF\6w*|.0`o[;[n15!1E 'Xba3T" 7 0j66g4ᱦG?mh A7I"yٲ^ -{.:v cԧMz5 F؂r..A Z y|@g]Rr$+J V]'Ĉ6lyf-Ek eRsrUnZA$ Yݑх7")+Nf$x04tx ]He>~2eX1}kHt!{y)G#9Pumlp,yĻ'P!;ʩtބTT+\[߽:AEդO>q'*WV\$njwKԐS]ȯZQdRweQR*t_K_wgjz[6?heA~$+$UX`ZqROp;>ބqj+SZ,&¤\E^yZ"(ـ=/;zd$[(Y{'rUVn v9bOD\R\z-jtH63 *gnwz=Cf$)`W'ZIrK4D  t{u>s-=/G@أGliH ʀAϭL4ԃl: rtZi ܃_ S彺e?m">A '*?&p y&ي4.g-0"fw{8fe?4\Ufx҈uR}Re>fo#̾؃X= ֻofkDŽW$%~!jv~ωз!֫êcH MW^_4C8 "un"qm76/]gꩦލ"8iZZd~@x[ìq@DY0DM0Rp0{kP=GΜOH[v*~'Zjkm=cєP 4qvʎxEB9k"dI5Nͨ9ƞ~-}fBʹzͿ XwAh`9CV_ؖ.|뵐Gר2#m@'nb$]'@$eWG5G=W21YFJ]*qT+ Ƕ$̉E´Am|zԫ;YbN-2:&S}TfKmɰ?@W,j<$c`jFܞNI'V|%UL܄M~AVRx^W 楸N-@9ЗJsF X.*lz B%<Y8 ,kةtgqQ*Ae`S*=$ -qvhvOͿibT0$ v豇' .P~DYFD`ȷ$Un*b9~xtmQ;0I+آW9Eǿć Ǽ8]ğ̐@`o]85\Xjn~ I┒ ;&{0G߀B\R%쿆 P?xι;I "^ҵY3{Ҍ,w7b#qsH=zmKi34+_u+~ ,;IX hNҡf>0d=+Jf gb|Y{$?+U7ѕDۣ1Bv'6*,q(4B)G>ge0Ĕt(?KlI:*(+ G۾&WUM]ec1XLjŀPB7cjC=k&uiu\>9^̋qMQq"^cl״ϯt7 -" Qlֿ ryU$_8KJ"dRSw'ё]^8gx!/K\Q%gqpAqP%G(JŊUc1G4Gdj$МtK `TrP5G\`Zsx8:4\j,!LsLک_xyf! -8,/^.:p}\9fA5ѻ 6rtpaa$ 4z-cV5o(;z{:;#Yo7:QWpө hS9L6oΑ\RG؉2YDTD^!ce.w=~ uwۆ+l=*d]Peܧ'y&U.Y\66)>(!l)Y[AkU/,f#k`ϩ'z1"&^.ww[)7{>-4MHucL:|< 㢘2B@=QQx1ΔmR2r-`C2WݮP%ԇ` m w+7 Ls0@(a/.ou,l_?׫U|l a:\ةZ-NJm܉[ ΖsxVb\\b2jK: "A KlM=P3~HÆWj,~g 0_NBT jFnYgߎڀ걤ČynpitCtC^g̏2q@Qvm38`ͻz+j J!k.F{ΧBC _LZtR+/@ahFOxL6 t S5RWZ+طLHݵүm.SovMd~c`JuXRgk`TKP o$!z$mJ Q *#ҋQ Meޔb\s>&+n=Vo§Hbb '^4^<uUg_㌽);98UNJ"áoY QRX׋5+eXFZ)Yvz$M.Y." ɮ+t<:8|G՟oo wGP&< zi$"$ȯI<O: Sqzñ3)ߤv 5>IOcIdn:͖(n\ aH @7]cY;1Ë }mB c YIA|Zq? D;@ T58鐴Z'{/~ȵ1*UU96Ԛ' ~tl/Ɋ bk[Ӄp ArX0+w$LJůw"ҎB )ߐac&]'S~=\!E/ivC#)4z陂lnק2Ɏ/{$x,,Ag_WMH.FoBؖΝcz0-1FC81@Չ~($Lʳp_׊2G_\KQ B $#z&ioz.FЅ sKS59 =[DJ ^IMc6Qkg Z#Hz'{p .賍LMpr3fYB({l4ixlkRw scN/TeZJ(BELiMBqXUrA1As($TD[ Gܑ"WߓWHSb#~}_Nct}+*@api̎)1{UQ} :FW-j'WG.>qm+~k\6}#|IhOzbTc 5kɻ脗pRc1FxP-&kimDXX T'U£\grEGw!HH+lt]HUbk;^JJ_Q|WjSa\|VY_Eؾג|#'*b>}'6?%Y?u` N &}y*u2't6Ja Ac'^iD>\E`y~Qpu1jTE ]2XiG3#M,Ʃk2]Ē_REh\~1|Şj0e,LY!__亾r:ΞQ w.P?璇,6\zI)x iSXtu1SM<2um3WӤ8~?r M`'>uy75կ}B=!}^5 ż8;KBa"(HT)䔂FWggٍ5 Ԟ=%4\4﹕ zlOŎ 닚;mwضWQ>}B&.r‡R2;hRS%V]R:Aۻєǁ[S9ָY~U?ZR߯5uΒ.]8儃ikqw!jN~VsQw,HU!0Y]rh A7 pDuSB=ycGQ^sֆkg]#ϧ8)uRfo l"+r'L=f ~R "igꌄ;($t)Y&WFR]&h>萙̄/g6s8PPl] ]|w#B`*G(*[CabdLox$w}÷H.5iZƜnI_s$.uWӈ+${ij4չ?@n vn|2w*Ic@2ulߪSEϲX{Xcq4SڃϩKpEY@,/~Կ,P%T FzN&io̴Z.ͩ}.y0Bb8(ym)sDu=GO32`̬-vx \E/;iim[>016w|Սfܬ^-bYAR^zm=_[& ?찛5<'`y 6ܐe_(@'AVŦpp()= VU1b2g#]eXȣ⏉%N Hd:{^?6^;xUM/ƔOtd(F4y^ý6/eo`XTjq# &ne'AH*?ŶӀ6:6_$ =9~HK#ű.S@x`oa`-Y Zl,ꏣ]RJ%}IG).f(V-0 ܷtO4'ط:̌p,IkHb.J@I|x(P`y )X߰6]VuV:^ݍǐ̦Ǒ^ ö9)qVc_hlU6r Cmgn`fZ$(;&k3Q+ի;tiV<5Qdh]6F喆hB:{ApN[' s2iFsvt~[V@^wkv u@lUnΝ!͠՚7%pb߳W01~+asI^^+U! Lѵ'1*nfH58CQ8ƏDc\zD0c"6wD<M:LRct'4Xfs]}hu95srC0%d;b\Cl h:hFªM<ߗODc߈ow$OXq[W "\UM=¬[b̹ ]yS1Ap{j gYxJ-v r'&s:WrngWt9?r}ǔwq{pRiT'l8k*(6wн?O: :7U1kGz;Y jtIԣIo}A@X˽y6D(jAf[2Տ?Ě~b~ hRv.Il,v[2# l3<gR[Zi[*LQTS>{tIԪKJgkI36.M2)\"u4.ڽ0QbxjYVo؈h}; r3'`XFѻ %$sP]GVA}z{5!%ܕkh'@~ {GV|WL!x]P;wrه-6iB1S~e!s wRqD^:Ėd@"Lb Gt~KTr^ojZO>eVVMDA*>L F\>]jZ%m aZǎ%]&-c\о/̈bkwH*H[<9˃m:rtS`&;fJWj8>uTej$M-txǩ-w%N3fcO(IhG\I7HSz9uvMhsA!Ȧ**BP oJIGugt$ėI^?3C'^/`{9zPwQ,oNkpp-y}k}s+;WѡWvª2XSfG _.o~SU Ǿ[=W ɚγÌx#QCj%$> U|{\`PF@fFDYN1vm{—,/uR }{|b&aj~tx oLDq6ff?eB(AeCDoZ4I^:VqrD[?V5;y >;9Zhނ:M aDW eEa=율etݠ@0W d`"c# t$m>7B%.7TkRB(dIS^)q 2_;(*<\" O'w_\ W]W.meYo[i_e Y6oy-T9ar=5v9I v|O롨#fb7fD]+C, $ Mٱ(%J&ghDVlS^>} yX|v.a|(Ө-ܲgKܗQa4Oԑ6 Z;Z[Xvpf =EQΗhE5 E+[tŬ^,kPtG"WzxuҮȽ67"~Y Fs8X㱦ndDD^C;{r< RڲwY~OOB[s+WgZHQ~Dk5r̭?)t'[c"ߛ.2hAaC3lF>Lt pxz0u窸.CDRlO5}Y"=30)oV3MC_]yM9}L"՞64κ)@(>Ͳ{l䙵# sVMhE!>rcy4T8­!ٷYJ>%vj$np4D%1lyrɇ*RoQf;{r<*Y#NFՃ!(3{_23{88!=ms=acjj>M~t= )UKS']TEG `Q0nyqvQCmjOphG"SQw2N4X;]H?^Rkp@1dHj4"e.]lS&kZ|A!m{X/My_9 js|Yߌ>=AY(w"K0ڽf[XTT"9x+2b<ZBJ |&9FqâÌ* k_(cY[z*ݑ5wo} 9jg qZeS瀏ѱ*>*ܺ2V;oݠb\& . 'Uް|@ #՟tNV{ {\d_|м6I=*sZZgj<ݖ&N:Rh?hI9mk?Ek*(+ jP&x8&4cJR:C'sdbdJFZͼdtϒ`FRWsɓd sה00X$M&1ׂ$+, N8uPNd~sA+/3&V ϊ/vQmȨ!Hm=l}gHĂw'O!*j `l\Y"$ :U xF0ɃߥחDG!S9l(]໵"'i[_40۟˗c쇟ߺFt?[:,xƟjC`";oM4WHhuqwv60-tw6:,O 'X$[K#o.W5rz 5o3Qm q#0lF;dplǾ@zs(P$:ͳ֣|Y`[9^}+ RWO;,=jKbUwLW-kuۀ2|vl)ZEhZ{zD(D mY:xM68vH΂hu߁ }e~㛜@]Vj~cof%b!`p'pfOSTm%SFf[0nHhZ~l`obRZͩۖwxK6-q HO8t);˲~Jf֑/?raZWK1R؃Of4lyH\%E)G+ *4s0O&aݡ0n<# 13DARdzr^90"H`(|-fc\283qgU[Qxax.&D>ҟaPқĒ_Jz7>K`A }?*et!ԡQ4-مyXԐ:29?`T ;#A`x8P6z" L5Xu̺j*bN۸k/~xjxxoonϳ6 B#H"PSB;nɼk~xkv_n`G$]\H75QG\9/#XKU^E>l[=4'Xy'[-7ج>~Q*h/в%ŦBӥ&F%xv/BƋ M8YSNiz*/%9::jWY ;0x[&wA0ȱ]ŵZ p8:H%gӧQ5o Ռb ga(U[{>\Sep9>@Fyj^%{S|Jz> d,SYt ivyiJooq9L\yܧg|ߛh+8pڱJ`Űpq`r uT6KY& }$ƣg->UiSk9J{F홴;w,f͘{/1aZuT1na8JZ8mX`,U&hfF?VdT*`L']Ri:לI&o`8j:ʅ*Gy厠A#a|zkrʽ9Lߥ2lWE IG8ku4Mrg gxld`XHq >8TA(,lzy+(˙F(KIN~͉*yc2ˇeSΦ?G.)~;,X3y&*d&eq 8ko ^W5ܼ{'pz }wi}sX螇BglQWD)w"N,hks\{"lTA> 9Cv(Mp?.>c#;o'Z%o꺳ñC!v*hb( H%vڔY6 YRniJh0++C.rR``wmA\4V"l?]T* fd.pzD&ȯX*{$ }=N);+I4uSYZUKjAMwDsԡ Oƍd5Vi͞)ljtwiCI9(!uEF}pZk0 oB զ@ɘ$ 1>ɈvWz %47 G(?-+ !зa_=%$%{p}EW=ٱ@`0pYH nJcMB5M*-96PHh 9^J6Jj/kt v;4V: P@1@\>P4YpheKtysg+긾}56R44qQh0E%#H&2Byߑfm5sbodr~Ld ݉%DxCqgv{OW/t([ubY >W U\X) / &}c?"=ɁR$9S>ߧf- Xv.cF2faEQ6'ZCʇIoUIwI;('AfHܰi?#\()_ǥ c#ZFXuZHiyY3P#v<9) ,sUz%gD@*5- &>WǃwUsKѰorc$j?FNR6La9wBsZNrb [bvNEL}Pk[ '{,M8V/Y{ eq ,FrvA:`pG#҄l\r ՑGfgT^ՙin'!x"+%V᱖Zn6 ZY]J>dZ6i;koWjS_ /O*CփURkc_Ց2FуRi?}v RN)l)2U2Cs&ٿF$߷vC3Rq\ϛoz aZ܆F] 4ЕQGrv HX7c.d||ONvj{^&=@/ ? M.hw,`* >R2PvFHLxCM M*L ~!BFd)8Hr?XfT#}QKbUVB 8(p&x.p; nH"`hT%{FY>nE6rԟ('dH&A,W*^B.JaL:R/A\' }~i aXd M9fX9uQ2Z@4H ƿF{ ZLbMﯨnou#2(~3Np @0$z;veӞ/ՙm ָ'Q-R :;#Um)up$E;O3蓧CZL~q k~jɶ=9ҿMA;ǀN: șG"p}}=q%Pg@9g:Boܙ~}b=N0]9v~bޫ^xOV ],_ .Y%[,ɝS0JxWfPt |)F`+`Enmcn6kq#]N#2t﵊14yRO^KgLʀg Y(K{ HԂYW&P}QKGˡu5,J6-ֈVisӾ*iם-<p ziu)5dȹC98Pu󐚺mn W|Z\6~<1;{xgaS .P]5H.oT6"huSalp:1KH3ЄF ~ՁKY<,sm1ï&7:+TA|mf*+$5@>Xf Ʊj" _k8*zwңH4l楂pJݓ) 3s]q03Fd8H3ahq+GHCѡ}~ '^wp0݁^Sh 9 T.Z#2"jU$N 3 NkwT2b1'ǰ H#-"Kt|j^ǵhT;5(?4?8:#}@>s3ȣ8[ ~2v8 NrrYSO7*8vP~8?ϡlke/fʱjqc?}#{ˁ~".SwQkBABEn䃌tyr˧7W;iMN2*dǰu eN12 +3Ŀ쩫q3*ϩTlo9:w2Lk ݳ t,,dҋHά3|ԪYpp3 ǐ$8.<[UYclkV :ܰC}0#*ZfxCSEW5c\:no"WB1Cy<ә8,ړAl$#_g1C w_]|!jx\i0}*8Δdr;Y*`K;;p9!6) j$1Ξ׊q5g1oXv:j²=g֑[Yg"$MG g0Hْ1*]MR {- >˨[k.NiO.X8L^[cډt^ۨ)G܆2xϞPϝ6ޕE&Rv斬fh'6g`aDZUDCY jS;;f@IȦ۞$P8PTo%Ny`88zs65R 僞x,+h([O7 ƨ q5;:My[yÁ}{ xG24\HЭxה;#x 5*<36 t*0BRE|jͺܴpףCmb稺;~;7lNr+w!k2oqu}ز @1_ɦNKK%iWVdi?U:P]Pn +jAt{@Q]xNfDX%Y;#0 ~4f Pe?U@ #[r0mM6 !$w>xx*o4 J>}Aawd )?'Nec2En' FJ-9t'S[6)'Z B. .q02 Q=3ڣ1ޮ'|XOJqj<`l9ew4BphB=$`я@Y ZIst(քqA0H/^5g rMb@Ykq^$ɓų<uMF#A}?(* OZaZUW-%3I5Hx0̾Ȧi񐏏Bv i+LS呉tB)sJ]UU 4|FF*V8ȯ~s3D2%V? !Ϧjq"w]^.9 j뇏<߽$Y-[nriDja)ܚ(Z|aasXx~|?/-APJY A(B3a(y#fwlVnjԸKt8,UU9F;쎓žmn [2{ 7̬0$|49v7w$ge%iReSf0HLo9AvxYģw-7)l&LY,_JB*k.1 ٴj 0%p5Oَjt]q4R$80bYrH: ~]^|ҝd~WiđlS' JkK]#qa ˗Hlu_  h7rA}h,EǦ|;yp%M(JY8n͖)%\)|4L4곙k Z ]\&[5NsEPW= )!s1$;*Nա8e\Uzq1CN=A%qJs+I!QYT=c@]eioANK5fM`E'gqhn nx'ΞF'y`7\ q;>YcEd3v E8keGڠKwoM\HO+oę8ܰky {2$K9GeoWRydK"II1M @r$. Ի@ %igĄA5q:5bێf+)8Ι_Kkuw[(ril` +n4zhC%G <=DpدP$9j:?|7 }Yd' cv ȇfsNRaߣG$6[# ?2l$톤J n Ze ٲe\Ü3WAo!pW~ \KA?ɟ|G3h/Kx6jm "6Wy;v,Ηlͫ?ךZH|j,cm]=&qUYbQ" jфY˼ 鶕ͰF-tfns'C[%Uh{ַO8S+@/O] 4a'"7cPtg3"DB ~J~m٤꾭M,-I]Iu7Κ\7k-,f*;-{ hoPn/'\39q}ouL%0b;rpx#mQ5H7^Qk26K~ƶ"mDħP`]vϐ Y=/IS5^.xFc߼9P#]N(bD _޺pea6Tr)~&yu>U-sŠ/&ZE&FnJs xisHSЌ*k*"B8e71fgݙ0ZQ<.D͸gф!vMtu2` 4.FlR< V :loqeY"xYFڧ\73}և$PT~ta^<>P+4EkQ4bD'x3W!+J|M[FmA(I6^}q֩wnƊ"?~79ts"/=c%bl# K-ʺd~Up\hƤb#6G"9w5vanS!3O_H, kdM+x˕zr`Zpui1g;"$N,q?|ܛ1Mm9=A4'(S)BbwǯAmtX@hDjV=e 2-~gٛ TA>˶m$)3pX;{=a oYUH 3=: _@=x&1Q| b?= ">uFA3I ؐP껣nLhp5Y5|喠/d,55tvĔ;ȳ LNK9osJ8wֺn];&&ߨ Xΐr-5`b^R*dM@BoƟ)Ѣ0'ŘkD):TdPi*KGP*w˂u_M2y^|ɑ9/{b,f9b@[ 7Ku]lĹ&`]%֦= %o; q_k1PU! |H6k_M[e"% 6u#O<_HmI sA!0[{c$A2ZwTjV^dr;b֧@LF#NVgՎ/qԄh~*S)~#ϖf)i) oҴ… sD|@Wɍ4Vբ=[i0/2 Bۈg+w gqh:@ܮd$-cd *pjCr}ZMTʾY|P.ol̦ؓ9ƚH1FkwYs`?%tmE*W[ރ(aٗր"SaexwTﺈx(^eMJ&+\P+t:`+MID6 6di枤}oz/vx,]"w :. SJ]n3eJɶ~"w5`Ћbz>ΐw+Z%1[)ˉ nkDeUe / D)EA^)wY{."@PtFȺw^GtU.'ROCJjLD!b 2|3ҲøAxfG%lәqGFp}4r6i>8Ud$IRd툯z0Lq;"p*ʍ f-]Z+܅W#\B $BZ/y1/B P3붾f{5q>Dob!v8J(y&*1  `5.%{ WMa'Z+)J)uX⩂1Kv6EwߨW8C<W {#xriB4Ñnľ~I ҚEtS?'({|72gP$j x`Q Y-I49?tC.׋sS=ts J"OrNk5l2h]X1>XP4^P,8tkɓA \$_,$К]c&ixV"ql %NI|G%򫔡^8Ζu;΅#EVWiy 3W7]jdNcKZ k(ѺKXm\HvfHԎcuEJG HI s'}0`xN1{,="Eo ks/S-@{7+%A:n3&͑rĴ>kL<$0[ #ɰBp, e7GA߰ BOH;Ug1-}eC >G~ǷpSiP*7?k@jEȗ6s${^%@!+rц{Qw|,"7K$z-PjLH/<ZWPZҼ ='7&F=Ӷq^` KbFoRSW]ly㯜m <2Teʜl;QE|=S#$F64306ƺ9=vrD.ZHaQ<7'RjaMYRζ*54;oW?i:n]F.)MOpl5z*,jv/5W.0u<GQ<@*)?=#K)9v~?X;%@4--C"P<)e~qjPm: _VJz{Xq]ءlfXZ`c/rmdB,/ɡ$2s̢@:fTi}5fnzD"EPQv` 90˻ Y2՗nFf.h/r\ !tsPf7Cw }7v&hN_0UޅSqcy+VQKA6l,G=iH]QOy;Gz.Ҝ% {;{+„CGAb{)AhEXlbi,0NL nB6чuX^pM@#Yɺx;.9]X9M::iH* },n@՛ kĚFl@aJpalMP:|p3zӍ˒EY3vW<$(wm{aeEo,n$op ]F(o <*G߬>NvM"!P=5Qڃ7’El(V \w݌@H 1)O4)x/d:#,3}[⅁BdQU5^|av,x8ͩ"? 3F> yK{ʂ A@^2˛௓Ӏٯ<-qӯT{ƯNsXSR8FMǬ;%KAeY*!#͆_룯k I9*(O^^-w+( ZLݩCfCmV_JPi g+ Yͣ].Eg axP\4#$6 3Ϫhja€  ~G:FQ@xۊriy $Py䒊492IՆW݈LlQ5&E.Tbq\z3uw_.^]L)TsbAh@$ M>-o5/8nb_̢ <+bd($ X]j&fMcPo">5xmݒ%-E2 X*#?21'YZ;9 e6ʡ?Y+0AA0bۡ^-9515. Bo2E\ ~b(uMn3 "ek Cܺ h-LK^&d`R4>kB*^ soF1׈S+;ih#MSvf!W@ sZȞ, wМ7 SAox_MBn_ښI`C1~ږ#Gcu^Y D~ $J93,9GTySUQGd!f5w+ƃ =?;o @;T>e ./n4.˸W:-VܖM@\=]\1Sq2/j X6Sw7 Z0BM'lXF j5Dd1{% NGeͪ![3F`CtwShžˎ=BȽ֨Aq}j'-VFLg}U9٧SgN֗ XfC pmdPeJrۿ$sOͳHR2l:&xG" 1x\}.Vd%I a!d=ȸfU .ybhyTR7 W})ө^R>2gaURD:ևIXb%pU 0q7IRveT!9N1e&yZۼ D6^Ib/ε7s"MZgwͨH@deD?V$˒12RL,\]*E%Puۀ̾F1G^`2|[ioTo`dh!m/\+dh/%^l[ݯt/ez,K~Rl: d@V ji ]1Hg-Q[uNLV!gQ Ɵ Xֵ|SpZ1€ڮ+-098pԥRAR&b|OL32!clMJmUU* ـM-pȯ,~8@vMPVZ!D94Re|*Tb!8bad$I)-R}&w骙ĄI'b >%"u2&D=TlJ.1Ѕd_\f?`c@B,= .N"}.vYq•vo^xκTbi41vx;/OLUUcA U^U$>\Qvr'e9,@x[1IwͥFջ怇ν ͙8i3<`yc0j{]~p,/ M5kCRnyuUٯujFxGy\tM>#շ/`Yٜ]W~-~dFOe5G2_7{ѧJɕB2fFѭ>cv_\As21`c_p$k,\Nm{S~S˚Y*H&7d2FMsvTB#`Wk_J h3c)_&`b={NA0= R]fƛu:I=̽+y57[Wu$|CKӹ_pV_P3XOIܔ'9^B0(>V5^NQQ"205sw&gAĝVˠ,B?V38o+pToVcJc uu+Gԝs$20*<%"gfֲ5 4{tfʵLRc(8Q2:çkm^Ug`] W5q7곁HйS[G(i;M7ʦ*flI/$hv &SBU/%C1b.lf{!C"S b8L\H;7>O9&yC.GxaAI4Y4 !C==q8˅t:JC=VY ҏywN{ѯE>F<8˜ObRےw4 !1R߀NZ{aTqCX!q)T4#WirT㝈d _䢶 K|'0浇5V hO0mU5E3@fOf{7AJYxDLD_gD>:Ƿv-a="[HtTKI:p)ٿ^墶ojGTnu>r7C5NKɳĩ}+0!Ȃǡ MifeDºvH]9 u嬳2 a9EwRNxY"EvT=5irMӟ4Q ZVlF K̑NB $H f@G<}DLS͕?b?x}chʉ!44!Sy~Շ;#zZu[3L X^.%E.m m`ρ{ȥ၂78>nYvWHsi[Y{tKBYw[K7gЭ B.Ǔ)WHYJ" ́<ϝK~lBYNÀp1oIL3 _s.]e!|@F"*Q$T]MGaeTr.`5Z|. ҙS@ 3@b_7m)1\+ȫ"t~Wݤu1 ؁ew’X`\IQ_Ag{O:95òeIFvt[6Ra<GJ pK-%s!",{Kf̞6$j77 DX/HK!121n߁^"qI(,- _mԄ LY&m Xrmê%1:nOe xF%+Y^D h~N& G+#~a=ƔPj,z#%Oi?(.AaF ;0mr>f}QGJf}KOp”G%us^>&ґߵ8hq&::;wb 9adkCג!yLI, +gU`jYNepo,$+bBu_FCHσj鯁39M`giME2!*V{ `5H67D G`|=B绞Y a!J@PS'1h+w \N>$OȷMq-P%λ55q۟ϓlHiakzuYyo>Gm)HF$%XB2QUܢ$ղy[C z10Ɗ[JtBWXw(0<\U{~܌pa7;~&U I=W-җoPwmK+9On]tRv&l=+3t؃y$<ƞ uh"\)Z6 = MeOm2B..~:xS Ee}Q$ $z~LjťY?r+M6a?L,Cětf}sssENc8!V`@-l|SÁXyd]gzH";fjmueFY!8xb_S,:sx1(]egtwי`&KCzP)eOSl `t֪ѵl]wcf\hNrɗC}dx`v3,~̅nGl@H218t|+i2ZdQ퀫i |hX ~N#U> 2k ܻJ gI?/UdLv̟oۂUݩ;.PZ6gj $Mn҃)rVk2&{WU#XddD̎}ޓ}& >|PX (6V7:PIr ŜV!ue4Rޖ󯿖V9h7^# nA][Ab]ńn˃/"hdO]cѵ-np?bv-5Wש4^%Pp.Ίw*pP({fO֝ J?$c!Bڴwmrb*ev:px_/BS ׻G٬8_X[˝ ٹX"_ݿUѪd8\~qw5FJe_ 5uYLM=[v!0w-Mj="W~&+R:"狎Z+Nk|z qƬĆ rܩV&D x-񞚚ŊퟤjGx ]~ܴ~j A:ô ."'׬huu-q-{85&L >^aN^$!ܵqؚUxT\oڥdhIŸvt\5H-靟b _\5@1Xt* т#SupQ7w9>;ZVJ(wM/%4xԕɐq؜(n[ Yz!#flP_GaU\48J*va.Hf :a7ӛ q_oNX\ȋ{@haaV>S. 5oV{sCAA Hk/bXs, L!:ϚK%/5ҙV ;MY݋z0[9 7($>+Frk]`P ʺI2"$iDcW Xk.+{f2+,owwZeAkO1C-LęŹX۸ δzj/U I1Af7Pzع}vI)+z%ae8_iϗ>`VZjSη@ӥ0 ]5a Psp^]l6A!<&mD&OmYtRMv mF۠*Ց^%/$taX6;| ϐhusI;'%(U|=όiuß i<(Ғ. f oon2!UVK3i/'%Xat5>2b$)3M"L]G!F`|0$W7Hw1wF襙.x"Wt]^W}BA lh8t[eȄ#ߵB5%ѹ3^o ))KR+sƲ&$zqʲqr,V:[ʠ;Y(,nfvP,T`₩OJ [R.!)4TZ'veWxc(#l߆w%.|_ZSff0^tJA(Z,xsWYV6gګ]5AH}e^i F0x$w.\zm$$?>$\N50M)+":oa'ִn12%=qɛB /DwEI&#tEs6GIb:=|I^nZ PtHT+nѝJo`sbLǺ&]@)TP@wC?߳6aTdw$o7ƂouJ\0ʰ A V^akmf,A:nPX贏PO8o 4T L(Ljr7LPZM](fӊ있;lӠL C&'uLz߀UMI܃㲓(S[aDlQII:]KkHPlE2,M*~ϑpx9RR#_r5/Qi-f}Zcuej&G` M fd fDUD,ѫt݇b@ZA?zy3<2cjMȟF[6NJ O MhٿoR1 4DBO=k4]"F *XXhQ{1[5tLͭeF{~{G⢔–G~[2,C'&&G4Q6+>LtZ(Omʰ A3zDGORbo1&.N%Tl\-BJ% "jCӇr2ڌk|Bx-9}fVe/OEKl˭,;oebO$4GPr>+S'=0d.] )8֔P5L](f%al{e|*r V@k;r}qkoj|]SʹQ8iR-Nw^u_E2;ՄaW/ r~1+  RN1" 8yUj?)h' yof ^2G5bo-OR\dXC\В`okt0|NuN:Rf\궫ܾޒ6B8d|9ڵ'V\&&'_2}eo >c{&K,)5&\ߡjJ@($٘O2cV@Xu*!87s} Z@Pht oT,FuCy~ƹБq~=,{'4΅ӯyzƱ =d睩MTޞqM2v F;칒ztQoMJ٪ ĦK;8BR'9\dJ:XU(3Gi?F!}I PM ,Hc6nH|nQ΁2Q_mdd[z؍5>A /GDEIS)+mv7,3Lƻ,Má2q~(, |baʺ{%Q*x-Y9!X{ _k9-^hnfH%?WΖ7Fs?q}zI=e،j[8V /tCqfF}Ns_(7dkI+]^P ~3t &I/ʻ vLk}Rljy~O"@O%BgHʳZ:''kf>_=ڒ:}C&gXdVUX\$w֐y eC̗;5F>vG@)G徶diݍ΀[3 w(]NhZ瓺Ec|QXs(S 0CK:V؜)u[B2E4L p 4N" _K-x2AD Dnp~獣ljBeGR.ڿKL+ZE%u? la49>ABp 44@јF,*,'C_uo8 χ0Ǣ`+"Q^$q3.Q܎g}P"cUvv)4YC~+u;wːBՂP4>g B8#4ݐƠu^z/ D hf._ފS}h~1B#%ZD>V0Evs@*$zy?x7Ȋ޳롡ɪ{Vcum\ ĸk}'3NPP'C_=G~ wlp 3 y_S>fP%Co/g (kkP p!z.oQf47Z-kpԉ?$˙ 6ؤn"&}1++©舱3p'U1.2M"1KOm54~c;TDaRfPU&XKK{7(1胝ɜIAkPWҘ1mRjG5$E p3hiq!\N]jU {0¸h 0Œ.8q`U[S)[hhJ tC(ءK(cj8=nz*ODuf?( %_EO]+wM,9H<C,83ȵ#fb C.͙:^ucδ(47@YM70; V*q/Ƨq 0|}$: ţܘs4b@)1=ZFgUf!2||wH2E*8`|>^-*SEi|</آ9hTTBEWVks/9?vY|n6* >tB}8}{R><%H%ЄfĠNR;p{v:ppn{9+XR R5h JN8LA%JyЉݑ=gYRY] %s@jwQFSmAv@QZNt|9 5hfnEƉ` 3azU"B8x Pմ'S\RTe0Eс8?F6ei4\:epz1īoXV]"]or^ў)~qMųt8\G'!$f"{Ĉd.RW0E߹\ 2ZZ'wQ8Co#afX//6 }hq~iWRI܅5~N26?RQZ@ o~> Sk#0k(v]dr [ݢ>Mp5C:* .pm!D;ݠ&ݺI% nhR?@Lv0(P1'V8|y,W{AHD a]C 8߰a O`h쀳@ShF ;ӿ.-PhSnFd>|-C|R2(;\{׬l@X%aSJo \)4leN-y,LN)掸@`:l}Pw7O6lqm~Zab %#BFNK)’ԮWfL+|SB OO"{M[ b9SzmL@+7qU]'-/ظhyoc4Ŋ(-QD8-Lrb8~,q?MKf!-΃}7C{A(Ѣ)Ez3ĵ% ϸTIu0:oRX'It1iUc2|Н.4`doI;ia鹐 )ggqb(/GYǀ禧bZ_{J2W'hcGpF PwFmvgE,6ݨ 55tik?P%3ʃa|b'cXE١ϯCu^zVu_6`=fگ,M #Q8 \ZWbCsXg!N|^WB]i`Ʒ)tvZI+ԅ@nAtW]}U(p <˷8Kt/V4$0>_W{cW#Pk.]l1Q[|6drA /37*SQ}X5QLۨPS󳖘' ]qFP6R8$ s3`|Dd8m1huj@kqjyNSQRL>\+SZ5p\8`9^M!y"@4f[ޮΙKӚnUVkYiuSy]e]-Ri 355YKoWakc,F纍એ}F2W=7.s9d.-LC VF%ӥTX { [pe%] G˰#yBhJsq'H֎D5d!Fǿ<~RpE?b Iܤ&QZ] dG3}Y*n.e-`y>L:EglCi*zRD ?pv^WqN!*wos@]p>E+T l7?TИ4]o &Vߛ&1=6&1o+: Vs*Ec뒣ępquO~ ?(&xw켇̾G8}gz7^(DOI:*-=9tcv롱|?#5  vAcUe?O0!q"*=DW8 a}cZBH@#Z QaOٹ{izp"U䡍O>-<WΖ<#⩤)- &gjtbXf6I!{7Ek%lHn]3Lq@Vk}+Z#ߚh*H0N'ZyLx}Fg Wu8’0qA,?\:;}E'FQBԢC:-}:1wuKD-&2s(i6`\k_8\L'T6^2 nĞ &V\I Ψp  ebY7%QR8uRghW`dtv2'Ul̝dl*KP-ɼr>+ st7Ç %mV>0zx:Qp8Ơ=r>Cb2 (ZvN3eDŽL;&Xv3ì~BM^Idw/_T8cJM{@\Af{Ap&ǥ <2jSHEeyiضfX{N.t⺙]l-= -DLgRcYJ3zȅ|v"61BKe !W* CHkJu|3֭On%M&cu& *+!eJS \0ZxzK6Mc; a%@5!&c-1gWt^ka v+nIfg#*RzfndwT%!'"cTZ0A^s䪔kuY=g.Zmr~x䐙lWZN8wbLXz 9]b-||Ghr,8:'~`ӎD-]: ?z߯}!IO sy*[1?–?PZ8GW[MC}Iss -(kg"qݷ-ًk`tqv1ۦtlO8rKSw/A;&o:KD;ߘpA6k5 4t~G&fc.CR̤wȯs_hc|cC'5ן-B)|<nw* BeDW*NVbvɯ_Yh x{6-,*5\.5*PA"xvA=3 p]C#؞W(w.x,O%iTftxpHܔKv"5q4؇ş6T!\G0n @`^cU>Ч@kҀ7MƦ*r'O-L9e˝1Y/k_U1ǭ{nq}( LȤh>:۫)5x7U}\DEҺCU U)u^{Aa6Jֿ_h@hBpc;vF*z) G-qpHN/K;wZ1*Y|rƔQ 3mb>b*j(OŘۿrV_~R$5>aD ~@=1Cܑ,K| n %ܵz y|Qj"=C\J1X=*]}+%L.mkxc3+!w6t#[79[&;CM @]Cy-/=a"3A&!.Xt Ip efWϕ'Gil#M+}>-Y1k&HAY-C~T>@Y#+?h &֧-CfD5WwFx󤇗t*IuObIU/ߗa*a7QpNߔH X8_ņOXQA)%ֿp3gפv(eL_Q-7`p7E CeT)l6ZsJr3XR f36xm VhU2pJ+Vl Ul~˼҃tZ̐u@Q@Ck +{O[C@+o&+Cs >pQlBUsa Tu@KKlRG:*,PhR֍\SJ0z*M|';!n'BvžHw23ՒbROfKѽWPCK3ߎw"Ѡ` p7oxߪ)M  [P (؅jqm9LطQ$Rt}]-mL@[ @&a,"Q23}j@:O@-D: X~ 5$ +V| ")y#,y=ud0cfM?z⮲ U=PQJ[X3泥$Nl`,!E-<PƇ*R8;M'n [0(`(T0ϐ `EYJ)YZno &[H)bw(-σ?=G 9? keNTwZӋ^eeU Aw|SszJ$*'Rv*vf8+щL杮GxO *ױ9y<-O!9CVݫ_=r8_NDύpM\oi|qx&^Vdvρoߩ* 3vdښh뀣]6}i?d[~/V"Dkԣզ֌xh+37Mn՝MK7 >]H[e`ѝ S5m:1PJil<"9e^6/ D©<9Nh`Sƣ10uKG" NȼdH'??I 21*Tu/.2gA)r;{@ |hY`Yv; ŷDŽZ_M98 ]ΑhayL]{VXRތϭÑ>t+yoЁ1H|cYI'g9cT"8+Xzҍx1W58tqa RAAQ y%*E % j1#9L=,(iB0N!kK;)~lܒ"2zJu/M˕33Ζ2sI*1maiqLs@qE\(J£0P"Z/zVݻ_@b-֞2%dF.ԇo6A!A5[^ZuB!¯+Np'EӳaevO- ?Sr_[$<~`2$ᩉ 'Z- ߯}G[2Q* zay8eu͕d d{?+P=@Src.^ޖ/u%^qz{oΟORĪmڝbYfǠf5:k֗sh̪^}Z)ώP<, %Gp7dи N0h~(VfwH% |ژmp!#ԕqSN,߀n#:N=}R QYJiyzWXxnXENy1hZuM*MH&h}#4Hҗ: J:k\Ib ,@e-5&;<V^=T_j/1\a9X!LLlkvDAp0gkHL7z6 d'~GUe#!ܲfҽЀ{@]~uij{ zk]';[E8?RnzЖ+'ę6 nFz#e#@-XLB7ʰq#;.CΉ蛈|#; ]>Bek%~U#%Vb$S^gOv44$ͷt^ry0|ov ױּᩤojX^2\h^y"BFH}RkBjb9,EDP~2w$ Ӊ(&8/G}&㻖-ɋܟ|:_UpB5pJjkxBƝ/ g>{TP0D9}2zcBi=OX0߸ͺocC:PbBHA@dj p`ED@<XHB .'Xs%IPx=u&ZukT|{,u($#zy1f@Nm2{R{K[[)L%rR o^rc;/Dd3. oR(. &@г R그h#]6|VBgln9D`vA"wrY2 #mBh'\I'8ZO2WѰFUpXKa:5K5” ļD:78 $Alx%?1^d|Abx/~֩]>jp o##th_CWg5=*R2o%_b^3퍴{B1cBxP,L IʏWZ!Xt^[M,Zy/#Ft2Zc/Ite %Բ++F"e$eRVh8cч>kBU7 Bjh}S4X$X3+6FӉaCXc}}~Ϫ~+ FbIsfGׯ*gYhFDzmX> .JD-}|/o̰Q;͙[G} ̻w 43  &4"KyܖS{"jW2ïJ14cm݂<щ{}'qUTIfK˰ /@]=aD>w}a1Ub?6X~\wS"eGfzQgYVyh^ML 8I<1?R$_(d2Dcm>%.rIu+z:<b|!JLxn[h#O7lKtۀna+7q`Y)^n:FBYj!O8aF N1Ĕ~:KmQ ")Y|U8:`P=yo-;j"R CQ1DB K];*_Ua7hB|i`@"y ~N (mW?.x}{3Ѿ"̑@ΘZ=W7F_ށ盛+WlH۝V Ւ'F;yV rzvZ7~ ivO"!*"d2lYÆZKlZgX -uID(ˢ2|$ .שq{3~V>^{;v /Cbڿ'@l'Ue'TdCaa4n8/3>@G2~Dڬ=ca2d(%5cx[: Ǖ${5$~0!0/X35#*k$ۛ`*e.}gN|76ؔw3HhY@%C<^trԤrH?jA mA|~'mLcyaO ->R^wr"%cfvKp6uzON[+Gk {3Ӿv>- KM@$pJw4i3 j.ih`iǞƥ .XA".c cfR!Wut-5 MoCbhҙu니5RTm0ܛ},CEL(]r[1Z)Z{vePX(:Mn#qE2i;/|:.J$befkxL TSB-5)ȧ[y!Rg؃YKE1|$qgWdK;.ssPuvT#/SIv|1.a)d݃9_\d28M\pKΜ | K3φ'f! ~TΞ:pY|#.%>sWcHkvh uד&"%!v8#g!Bx,+Y\ sTYbKxc2nPOT nf*`dv|ʤ|n)<^- v 7{¡* եT,ҕkV_m_X}bf{6MBz̧R<<&'Lq-Hۉ<;q;[ قшZ̆Dᱟ%ՕZJ4Yƞxy$A,R޺;1Us g =7\ϔb /!|D$px ,RXPRht-{sfŖ6񢵞A@Dkp$ofcb-ng˳g3qߨ!Pi^%\6!KE:N`h4 t=p~O&^B+K\dA8K*0 jTۃtdޢzJQ~33z 68ӟ^KDD9nEp^by r"=n7(]B5Un%[hk(0S7rU㡫EuBu}a[ߍˌL\2)N߱4 )?>K$Ѻo 4_:# {b<fZA.QVww(*R;+< ҋ=Wv}Mec6ebڵ_i"mOnCwZcƞpptf¥{'/2f<XAw1x'\=@S^=G{C^$HrSUE ^/uLYlAߡ _X}*y#-_ƳD@%?28J\Eb漢0,B RG BZK<)n\cf3ec1-`Ajd `p"U&NDexSM" RmE&\e&[AxArc`C%Y_ f1c_L;j$T-'Q~F7臿,x#V^b"@kKƛ7*cTW(܂sucxKW0RDNfJ%EɧVj0|39K'iX_|, |%WgS䎜-R36m\8yyn4"}B|͝c)z 6|fx2J/mAfE,5C ۢb#$\9&VxA:SE3ZBFnƚ]7aT HU~>ƊlFJ0ц4"o%R + (tWg}{ugIJ=/Q& 5Kʞv&kMn$i:Yx,ߪ\_j\O 3rz2^?{"5l<I/l:Td\5?ǚv݀%j`9Pyu4E</ _b58_Mv4Nt8h͹Lz@P8E}."4v/cٕ$2Mrx,_^@b9킩m:X6S+Džݭ 4 2G3pdyI*huLh* MvW{?Q#3( r~ֲ#%۴%PlhkrS^v.1y=[;WER?J˜'sHQFj SJ삃E7Ɩb֊& U{` $BJYX|@G(oUn~ݵ,9vu3[==Y}(y7$;3vY҈-:Y멎q|Lm6nR_-Dcϵx ݣdVw7T'W~p>F/pw=5+==^[ƷKx a JO)B ,>U)ߕ>r` lj~o"~@㋈[XHL. +pcC~ó&/K`נ0 %$( @#f*)e(qGf-&e ;bRQI=kS,c=r#1\˾:@PR[z\㗄W_BH"JyDB' iX/ C/BA1Ò20Ť$~. C{03G WKp8?ab.T_UDw֓i*۴|X*ݫYNv %=~z*2˵7z9كz8Y%>s'$QeΕt}yAQZ §G5 0iM*ʒ2$)aWl6@%ҭc_s,V^T%Qu&BL΀c(Jr7?/v罈qbh-PI62, R 2jq ɿ=^1_qhT/-P~egG>:p,WivQ"čj=K>p 8T|e4?k-4 2eIQ{߲qb`nZzVTbxi`tl{6[= 7 ]FF#NegU>̀"l ܉O.%;d +v;lhly]2>mfF//XYM'|w! bބ~pW~?, I9(3ǧ%%;BWޣRӥBz @vMFFK>x1 :pD.O8}+{fٽ>zӾt@bR7`+8)"+\Y(zGᕺOԺ U4CG6)Y ,8g(`^GM` Mf`Maha퇩u aB=f=sgrh]?!^s.<"}]o kpRL?e]g~}jf 0w@&qm-,ؖ[ɝ5B3^Qn m)WnAZ7it)x22:u<Z!$řYL Dl!/Iƒ>~Wmq6 @RШ6 hQ3d(yoZDgGO&LYkIdU1~$RDb#_^;2JalOxruxTxg/4ITJJ$ ]7;vJ0/߹#-mUsUo^J;p i !*  "kQ0*8Dbzv.Gqw @ 9 G]|Y؇K|fI {FJޥ3#O_[>Q[I./uw!2zr "W!4ЉxmGNg p#r;6?I#;|qxL'ufyLઽAՠE7%1KxaE h;̛()SoϥՕ᧓}^DЁ7'67w~^9Ww):~ H:~^*C.͓ 7nfdiZoc:̨ n$  l O_@p0IGokB^'C5 `om=Vr=2JrWq+G #>2 W?-[)Ӓ+moa ɥ;*T: iy =LaƂE!m> 8 9ysR #[hD!̋%)1{h w[}d>u蒔[} ?,|n޽v/~h"SnȺ?f4DB-Pi.:촵@2rGhQ.FE( %UʵX`d~"Ah$<*}#e oH=H/[8/&PȽiDd4#dO[]=V< j_fkƝpZgzX% Ň}HsލK٤/,G o69܆`Mcy>m2.^C"c}t/<:X ϻ v`p&P_I:T\f/3GaI{H3\@H;ek{ݤLn,'[{1hHBϼn/zx&q5*6Y}llz` wu~$8KXLf")]MIDK6ːdҠ8+W)]`ݜ1 M|˨7%p??8(1\psR2dh<$^ M{ݓ!HUbͿ6dlڻ$i+ 4d{~\`%t4[zmA-^<ԥ_$ei?Lӷ{"få&J,8CLCFpe!}XEGCEdǬn"QNHiE-XN:SRwNvRB%G^ )P#"2@Q +N?*{ėGҪ-5\yUإEʐڕ0"CNpcCDT-OJ!usjUǯY4Qԓy4)Xޙq1i`I(pstF*m.VWrH|OX(K6`aŻ E,ϧ8EMPE7f 7U6^GpvY]N"?YjzQ#˒;ch||p !v<Ҧ28;BTzS"R~y[DOU87+Ct]zg`ES.*iЦ"*IdL^ヸUm4ȀQFʍ3$}yӉmdmUJ_ۣk L=qL{Ŏ^HoZNcG^8R &KsNl3IHf甜7fzv\Ql6a5U $FB~}kz.sZHJ-q'PJ2=Rl @BoGv;%>;ƒDP1Yr_XHgSjqkG?W\~2Okiu0r) {d:{in\+&ʾ|:t=>OVٯeU3P귕LgqҚVxsm#!q$;Zɚ4H)c[{3—h N-'vv}NlI`toXlI%SRF!\;P|G H|m_Y>թd^'ݲcTy1I{wc$t:{t8=UK|iv3vЗpvttg 1(ѕ8fN\U f wOLŧdn؇:u+fOx̕~w 9Jjx@Jc֥>[OֹwHi4 'q-8&660<.𚟻d]9(N( *BFm ?ӹ&QC3yfݟ}s4O|h{+zn ݇x{/-,ڸ]S湁FCU l瑚%̊f<! KФۗKs/S r5$圌\TM7[%]&s"PP,=GVZDb$0V zQr`' "a{h!Kʯ601`h?58+D $֩ KPԵ]&aj=y/:_{'{Q hiP \8鸢9Y:k/ bW[´!5NΖȄhIEnGn)Α3u8~_GצG@퐲D#v3G~A\#]jOje)YmkiEbdھB嶦K,YKY1DWQ{+ǣ@#ɯ`2ԖF=,NK'Wy:ϭoܶ$tq;;wB.?`B7 op_D4Ϭu@TH)+uaxԹ_ZC]ZQO, ":o _<>̓z{#2(}Cֶw!&1BBJxWڭL `vH}`)s/%{}:>QmhGA;m`*x/pn5b:#'ZfqkI"x'ySg13S :עHܗ\!b,)~}BJ\4)p k8Gޥ;&Д1CQ&G:x)sK9U2!G*aXP-/NMvXEX4v<6Pxϋ~Cmg`(Vps6zq(P?c`barsc8 ѻ&`BNj&0zE( :T|Xϝ&ndԍI׺ 5u 3Ai}l#AUo ^-P^[ʾœi[Z:3\i&;jfKt$n9 2,+?+(< gPmW<3-Sw==^WJ/W=Fu'4~- {{%IuAws87jV|*2L ٕQY 'WlIskd4$:36c2nH|yͪ<,L3eHEj<)|'D8%~uV1ARFyP,_ȥ|6*mqI%yOU}ɽZޥ9VF>d2EXboDH0Y뼵5 [g,D;OJC_(T+Y璳̅Zl@T^udw9$E t|/ re>|êX^8/*rψ͕̬ p#E\ Gzsk{A0i+CQyFiQ(Pq/ř7`ٸg˼dOZ^YAk%+Gg'@Eb~ oqՎ<& ֐Iu u?( d=i9^fO79)whj/A?imBKdZ@W߇x9M[I-ġ=L&jJ VY~dxz(c:)g-T16)c楔 M5OSZe.7 mv 2]ךCc&صZCL.=k&gᷦs$ѓIG/=S40qfg摦{O RqfktBWܑc/!C,wav'Ec!I·%vB OFmjAK tb-"{d]g NpǾhJk:3ǨsOeޔr.D@}1P^|K6kRͨ 7ںiױ!wЮ+@H[ ]o^43>QݍQyj2U}ؒžchq7`)hZfek^ 7l&r7 ER~YuZ_e-~#%djLA-$"C}^Y}`aˎJ؞es8_r%_o^ӷ@l̦TbcGÂ#i.MrT81xN˖h=[E@@sЋz=#lT1m8JRҎi$/PϤ7)#ߟ[.q`Q (\[p{ZUZ \k웼=7DJ}VLtZ*md~CMj2 !J:>L|k}^4<<92NTrv@NmжBiYjaIz//]@$r|#U5DRp(O,ȱm`}4M5l?*Ԏ^eUB66Ëfo Ue^ !4UJ2a]Cƨ\5;'A|%(qZA}#bs[ᄌ/1셍uOFXKArl?šZH71'_ BӌXX  z,LۊIcJI+WF]/93ہJ2^[ d:E%UĒ L4C[#@ˌ JnHIؾKX)/M 9҇@}ؿAB.}Z{9lү"bNhk0u >$U +is^ޤR]n@׈LV/Hʗ5QٖU{ Yǃɉ4 ":[23[J.Ge{E,M5voֻ0$sWsMV*N+vĴY Jhe%]eP Lj)bdR_OyMD+OC MW~׵m?]:}VVJCnX36QTUFf4K<ƒ#2A+Z? v+pt=8'p*4NOK#4e{^TL41JB< WϪie3 eU+Dͻ kȬXzFaQwy=5bP؏=a˕=0Bio8r\J8N~A!⾮k-HȌMRr{owAgK"rBb3ao sZ" b(H$5Sq0\=h0}nK ͧ 2QWc9-<e䋼+щ}Q]IE#e" fs*}uqu̓y1A(/+KE0|ToX4#V8gO.N羵}~dq.Okib>~$ow`O[AR `9)Q !7FgX ^ >Ҏ,Ux4S06s6)ʊ{\q27&{|MȺi*־@\OouF1x! nN?&č1oћrPfPJX5mc'"&/8*RŌqr*j1>T o>: z# u~ɧ*'8"OݢyfTla8 ci 9qyxIt8HøJ0_KfGTu/sVFǟLe]\3G4?Ii]c ӂ`#L^zY^ |ܶ5)Yb78MZ+=6b4^>D;f٩)PPM%_P=uB'9+(п6ލs1T)L*٘OгN?˛bF cMP),;|.NB蹓x$vm(JA^)e!4. aK4Eҵ'TeQOJS@ c)}SaR@\yO%D'۹>XR wOrL@0V>ᰘf'?;(r[ ckq|rղ'Iӄ<{Nn{0!l;N Lc d ]y13Eؘr74LF?C죿46vrXAGXgNk[.X=fl=܇/lsnפfJ>3CiVۓGWZ~V5t}Z[40+^CdS Q5hq9,#U \{TmlMi>g :*9هqjĩ<Η=ap} 8Fa=vRqFk&"rFQO!DMz_w@?␏c&GGl։N%S 2^Wx *C/0NdPLNUۗ5%9ʼnTAU7xTQgK4SIe\Z;{yLj0EAvG{fM:&:*. ޥ6uԖ 8\? gnϏ[rI2,5)hF"p%x }ibݷDWw"wFS5wp4/B,#Z (qd A03(7ui8a_*##QCF(*AԋRbHּo{?iYrC/gi򀅚d(`r%3O,ŽI\TH9tZ%%;2DM#Ѹ]PɹInⲈw RAn*S\?YpM|GJ`xpxe\ljx26CTPt甭pYCREkx$Zq_C]q_~_JqW:[7@|Gjz*;inwS.e/J@z5}x;+nO|ـ? S(f11k&$y4&D CLgwGyEOuЯsL&| QHvީ2'N1c^K{K )?j^d l?IW _Нow&`:)v(<]9#v(v-9*XU2Hvz =`N&SRekyvękrnS'o: -edp{YKɩX0ikce#r6dO@ꙊT2xdߦ1ŨKcD:!K'O&3xl*n6F& ~(Gk+vxahKo$"ۮ ܡ";642M!zdR4҆P-뎟As"VG"eƜ [O"ԄowoJ0 Θі`]tt$t;/>5AYSwg4C-xP8[z/g_TKjHBP,\$K91N/yG91BefI7wݒ pSU^?r(ƕ遷׸vh3=bcPZz}י}XQR8;Ew97!34KaM -7j Xa *Cd%V̞m6.ֳ8}o.=)Xj)1e+]Mdi[!B Ղϯ4֧GbHץ#fSāP/~3N_ɽ*m#b J ApRd+A #k6#/<`ez4 Hj8'IG@7̢17gRorACزo1ໍf'nY)sVɛ~<t+)04+~7}_/XʧP_cjoK *E5"YM$@Wr=,+)U柿&yR<)CzD0ӈdrѨ ݲN%!.-֏GWO liŜ"lX225J%aE ";0]ε-S~n7\:*w48Hi2D:2w މ,z{QT&Fq ąTl6jP,_Y)PH>K~i0'R9PDb8H7A& ]Z-fvvH w}+A_&e+- NB$k"7Bٵ=;*!HA|} `I?8 jFqŋJwwCM='Y9]WyFo&CD8ЈcKd.kb"v&eF@Z2x eY TM*3 +g fb U) %LHtxie,?M3fU<݋9I7*ɡl6H՚0huDSXR=_LWD ()gmr/1x*˩l 3VW.'`،N ZP?ǽb (ĮFf?N`OlQѓ]mވ"7UaVcۭtVyغ#ZTf& jE4P5,|;H{tPf`^%p:i4C:ZYrXext[Au픔_X0h(ӎCI롸C瘲͘z56a{X6gҬOCwGR^l.6B_ A\T!~t)@!+s>lc D[;K&u0::&shfT%*3R :g#!?bL֡j@ZtSә ;/UI?B2hp? .~R-;-'Fli}]+3CۡefJ7/Μh&mP⚡[JȂuh.>ʶs=> .oxZ$<Zz i~7g7Fqk F |\c bsyӦ{WX*8oCmSdqX;ƙk:T=gM|;'E-Kҁss:z;\>gs4 >'uy?ˣɺ3f 5%|={jTP܍D BIj+i^5N` m2P[BJu@ɤ&p)4X*H6k-A+8iС7Mh]БqlE!m/ئɷгC48kY]17RT/B9l^pS K$#:ֶuIiG9h|H}U*x _sˮy}>+Tyބ#+up"MְS.WzۦkE" -NZ@O{{~\@$N!}%5h ]npi;kDnP.6 #{i_N2wF$ԓ;,ziyR'ܓn/Ls"*'2>fLXd Bh`]V<923S3hy!`b'qZR :blI &HQsN%wcЦQބTҵ9fʝg^:ı<~1 b N{ "VR»I "Jc jjQt2T'_AG軸悏oXk%#7zmʨ]/n]&WV bnBhy7,xٔv-jUD6B|ú\o*BJmwm) ' 1cgh܌ G?.pLJ1HPW k0힇^ &l0z#RĨ&?I^ųChQUBm/xª%fZKl1I3 $ۯ( s;/SX0Jnf#*e?+$]"~L/66&㶁ޤ4oy\2I3?@ے&Bd3h=~ɂ䡡Sxl[m%&\ЪtJģsb{ZVzAնCƧ!5&fKHMaP~݌6 X IR5'nޛ5oI h=$_fBC{&- Av1 Sk5 Pj0ڶn=R+ @?/K`$L@M#~>aG~ ~""[dK 5ܯkYi," a52h1I"&lnR &B_Q !U+@*gY ,ޘrx W:7%ݫ9Zr-jSzk*TXp|[,'PuOa;^oiV/#
􆬀*$&N8F/D(y7EhraMei+i^@WVoٮ.pxofGW&h͜?|/0N+Eӡ8K"U/ >E1c+;"qQ F Mel+%N@yo+N^,^ӁTMq5* G9Or&\UݻgC76/0tЬ ~jJ2/3C'|:iӕUEjVY(Zt`Qy %@w]{G#W:Nd3k°?' JN헤wnF`0hLUoײe'  Ze7j(GB/jOA =T r ${v&k;/_+(P֛iB|tż3V^JqON& l B1IC ֡ձJ6?A₝9%E_!t9w&AWW:cW?n:3(mӴZ3 0\+vMY`T;> !: q]gg3UW}~Nn}gOtQu[dL埵JK'5M,޷e2 p'Ђw3΢4iͰ+Ǹlm%7R AW 5@ vy*vSJG^\"(حi#s=[8_EsXjY/^)<;$ѵR4ʼn经e| jFƛ،UBᆧ-55 !ZAu%umH*">Px)A"cƖCz5vcWqnߍ6Rqdd)g+FʀЂpJXvZ K"PRxQ֬FB +UYҝR+оJTnZHco$k̃ >q/_[X;X\\2ĺZZy(FZ0׿{;ϔ b}[h.U&zDX5) a*!vW\(;c!JTe)0߆79~g܆ q]+Ih9 8ĕ#aUߥKKb=,1bK9^qD }bx>4Jȇ"Ga+'rS7R@pq ,e-ȣymJSr؄)[sx\UxjD1C/|xf .cbhXcAF%)e5Mz" `VbeqƇw“whTo$&I{6]8(ڭ_ bdpM]8 :7✑6loDmB._2wz ~x{F\˿nП냰vQ`mq%`-hr0]ZOP/_AӐ5+E ,6@/L+o1c@%* s-:h VinJTh+k ">n#[+ZlQ:0U1D+ '$[ pҚHqx}(7jtآjNgEjJhTxE>x:^ܪMN?V[䍪E<,#zօž»3r1 2$c`؟!T:x|$b~g&=9]0dd `v Q0^$=)b@.Eqsͅi' . %2gttX]/]F;ѕ,+Vz.+y 0YἸ+ 3I^Cz3W\O6$rVkX;Xiϼk1ۮVJ:W $k}~׌*ܺx9_b--SV'PVVkגlJx0qK07+<;n{Kj^QCa #2'Eӊ-`Gb `NԽ쓋/SjCB/Z<(N}$M M`aE2+>{LPg, 3N@|B"Er :.Tk4,h;Sϼ}hOaL 1.Av#`QuF{E'H?w y+=N>bqLp^ةڑ)9aOAófynF tTn=r6, ȭ_rɀfTEiъOIgKwuBH!dk@))b-~ФHkQ&PF9G (tKMstp?9PCqxsYlLJ3 #~}1іmgwkCGIGHϒ;%0?hO=h hfqF"2-,Gޭ<1+g4$مg2z_k,PHMTGT:Ew@][Zz ͌[81 >}D,@J!㎥)S&|0x-OQ+ 3A5cQ+?.~YzVY/ =W ݿg] f}E)UW66$qH}Hu~o#dc]3}F h>Cd2!LxcIôQws Cȗ ? z򎝎/hĄ>o0w2Y :a %vdi1=΍PAބ\t:Pu„K!vRGn2߄B_#Q2)'F9~7Jjd]}xq&*1;c2!66{j<&k +gQר5tydՏi+o*^lL< KKKLX!t?B'Km%% ?%م9=[ WS51+yzƊ羂9)T$r )îk3W&N&uT8(F2;CE%qa?I'7,șz(y6 ߞ,A^V~t,[wez)Z2;eûD,hҜK!B5=uI8;-3֤[SOQ k fngbPv UYyM`v{ o֊UiҐ Yg Gl[KG#P_lV@CFJ>fxf-B X7b{a ≚,]Gx=-OS;lmr*B;rRc=ZhyU7|41`-vnn㙬mm z):!{4.jLAJ@\Rc޶Ѥ 酽{&a+ 40 +McqRe[oӜ=JPT[-5潢:{1՘_<@= Ww310qu墽%28c>IYE1qr:S6_|8?RݳOl|Iw&8p%vB3Y V5x+6Exfh4$RV$} J;lL\yF/rR}DOE71Ik-\}UpW(l8xW79nk֚ f.JWb! a]SK0eQ,ަP =5D@ 2{ pIjWBHbdB䳫a}%ȱ'guR/SuJ:8+GWdU\"ZDȻgV'ˡ<]Hy#SA"1C5,:A}l77({ E^諁?Ǖ%//Iy^ONM UqC5v;Օ6Ew+"eIn&$:>e 6%ٹJ  x`7ibgCmZwu<8g͖qĢOGݪD=)<,#}uHY^.[& tWl ( @o4X͖]fWB>Eت#V\`guC+o9iO3x!J2cژ1p&Ғi2&nj\m<|=Ra᱐갑a/A8ͻ~xGoǍ)3+ĢG|Rɛ$ #(xIԢMsOYS.|v<̆Xso?r/Nj_=!wkaAF4 %I‡GMUzV (cNkk_E= S1XRn{'`3boV;= 6910A?;lURR%0X C'O !ܺ)z|V ksJ:=a@dO\kr}ҬC a UhBwd~X& ==Ii,$)Gx<&+*ROtxOpwnCJɕT!D:E[A:VIsΓ\řV^ѻ[2pӬmFUy.sk#lx 6BGH*cn\GgKhN!w+H=v]f?VEaFyڢɫ c!XD0;[7ŠZTZ}DAi{e52tN9p[ir_%˨?e䦑c;d݃롙Fµ,V]5Cr 'MfD3rj|Pow\VBc#` Dp@P&74MUE\ڎ$r9ϡ= ֹU?G^W|4%2u{oP6읧S:V uζ*jU/5mE5Q_/HQy=g;y {V߸Z?SɤahO>-ў7Jܓt7"w͏ZfLߺ.USxvY7.,yd d||®* R;Am4bp-K(YP 6xu F ]/Rp(ƭn-e&< ZXe ~$X90JW3<7ao+VC,z o>To).դkv@;"BYQf>g I3࡬6iKb&Kɴ 0 Y[l|_zDu2wΉ"H sZ7q6x鞘Z\qvyNh4/`ARL&ΗU >ې4X"usN.C-},nYM] yZ"tieP%Yu$ "t)*G(/K T6;{HWKWho!c|)1ƒMl]t@^1-\ |uu۹n]Ze3q->87}09)ZSP]er)ˆ9?NP"m^?y#D!;a0e˘ڰ`ssRNi_8L:6]/#b14/śJ bz<ߗK*8Xُ!:vS rd1 rZִ_G'& tFҴS:7JۼѭV'kE34y hث;AP``POUo"U\M7էT|dʊ]ᙉ<嬏fi,SA{*$=j 5_h36%sE|vE U%I0uxAd2{/@&coK0 ES12;s5 YGң2 "&b^QjfәɄr`.$C nι_Em&Yj7C8jf2(ZlOUA*J$ށc9l?1{!k"Ы>.!N˶Z|c-{(o26{c/u: $#&8hA5Tw~hȽM78=~TgrS746*x" :܂NstHo-l#'0f ~Jٲ@ߑm{lg q 9>/ֱq@H@c7%7jr4N? zt oR@ICjn{}IEp*nA XXl1|UQf(Ȟ2e n1wù5@a\mï-ZUlrsc->GhET&)уK.#Dc`~:IR^k\S]VrZJCDB9Pq;~=>ˡK lǏ彿̕( q| ϓЍ>_(Pi"@6!vŨqY G]qMRK;yL V,;jx/ J 9 k(FNP/c ty@ B+dW&'})ۉ"Tsp9]U2ȳV89L'h65Bm Єz=t -R&Hr--&5 S` )Uy \e Cǫ+CGz~2^J+QGKrT| O =,Z'w9f QbpƫCvQ򳞊G*;*(ggX7[IL,wXXt>A7E85Ю;. *_9JvPeaue1+BuOq:eo:}ُzs33Ȇo)QM"]A;NCQa&A.d_0SC{LlqbxAqthE >Ytmc|#h~݉P}C\l@)Ox6rU7rq*x5*BSlU!@/&a'rjZ<;j+w3V,;]RՕ\(4€&M1"[h6+b,(rm<ߴsvv:^{2u5k*^7E/9RzȂaeUd V{ܡee<ΦJ'=Å:Q.)YR8[˯ڿB惼Kڐ0jϺ! _gd+$a%cޓl)S]~]"x&=mo|xyiHɴ~<ȠVH 729 eA-xu0싞sO;ce>C:/E͖I?mPUpT˔9I5WjZD0IRz V;?1}  ~YVĦz`ɒ ]<7gF_b8`p7R]0vt.MlYCy*"%%,8#BN4u-ɪrS%x;6oANfHW ­Xiw|Q(4EMm]LB;0L*+#I~${ѲKaVr5ħj#a ;4Ws TۥK~^Mz] 9mÌ$qWJV!1h\h_O;G'^I57Q9䇩xZÛDLEs≕3Wesޗ2 S2EFx:^⮣i]cʪ 6+ЕHYKtτ?vjk3(!)O&^SqC6ד(YM0OSgW\8VGt;4RGhlokޣU`>.SaFDJiɷa}X17X^Ot{|,׿Nh73hH"$X0DcvLºw.C\uД n:o ?k- IG~cnjѝ~eDtZ@6,h\O+sǕ,QΩiyPrYJv%!mbT?u@ %]7^g{9Ҩ=cjDYjVFAMN 5PieV~ x+oG7T(bHسkkp^ó)%B:DӌIyq)S3\~@f7]WkD 5Ȍ>&/ Hvcqn'_Y6qHaKw[>\Ȫ)3_)E3.87FC!:퉔4|¬Sƕy˜Fs=$y_[zVL퓴TRbJ.ǙmISeFM;#[9&Ȟ6:E"k+o)٩#"/Z'q|ܟQ{MbX^;ZBG/I筗Eemle= {wu=8)Hy 2 cl{nK Oo1< "PO-yR]_I6 JetSʼ)šOm-(`w]-YF1G93piwNTMMGP۟YP3ªff _t`=~Xa /FޖR4Av8pZ>KJ?SpYs+-%#,lI27-m~" B\Kk@׊կ8!ެa"6Ȓ ;N6i^3wZЕNtGֻ&lC~P63CLx0J;4Cvl ?s4X T r;'_GtsqOF  Gf:~d%d['٘I]2<4?b JtWXyAqF` @HԑD*Y#n&N1d(GyT!F5qY%58y3cVK=_X kn^݊7gT'(݃ugsH;fmeO.&1%I.GRl2Ljf0&Z0#$vg}؂Hv-mcWs#T b~Eg|VR0Z-'>WVB{zQCk8$Ot9j»cS"|XE$.&74s2]µo!J5Y$o1Eq}և@OJW>'Koe1eg4P *g.h X,c<'tfr)kef=B'ɓ VOJE"Q\'"GWe}V/h2hbYHoWR kS=zf;p!ᄡ+lLNW}$ѬT1X!<;O1'*dW-=[ +Y^o?V;]Q?&-4B(ȴvD']HpR7 !b |pcV@{ -'})%zi_ʨ7a4l/PҶ󕺗mU!kbCnP3ә .>$~c[1IՋg6pfL[̭tCt]Vfb wio0d53C)4> @v_x)MGuJyc$r+;k +B~?5VYkBT7=Xb|>/>x=;.th@\E85ZEnwM_zj8%JBO!EPnc}mHyDIx4xmŷV1#VXtVꋫ~?#jdifF׊ a!ղgS`IzWN,Y#VԭIheeDcV  Yi^bMBJ6 0WULv{|#ϡEuŖfڃ-) x\q/dSu/+OyE/2b*Y%"ǻcGTY#;pv{ Z>YR#~P.)hSrxlRhO jEb 2UI*=#h+wc=+D%/bXs:^ e&HWRLW_7 C װo}):]f CA Ԝ@+>Yqy9 \?G(5-Tty4p8Ԙ{Y#r6nƒ-EN;Vjo-z #eb:CxhAbo֠cf'4[N]ߛ՘~D{Ș_r a@BfrJ[8RQ*rdmyI6+_CD֞?F]W{`hzBn|r-3 4QՓ!elG&x[鞨(̋7TY;I@D% i׹6n`e]ˈi$$%j=T9٢"(޾U {eiQ_cK3|hNVPQYgBTs dǺXg9?=T\5~<çHE71S*/S@H^vwV{z'om#gb}6o,HF7PP鬈`*4īؖ@7D Ĭ#K/g='7*jxxV.2>N+2R縖؍W+h CQ2s ́Tc"Ԙ S3Iw܅1~'QEJgSnq@S*(BHyFæq1%o\K7SRdÀEakIrtJnf] ZU.vO(^(v\A%)Nr׉̸y]geڗZ(ӄf0`;)%u q'l]et=t(/ ʭEOXuݰS ͟Ϭ '05f܀ h8Tqˀyͱg*);ŧB-&sXf?ў3 8[;ƿ'$Ez*d,HkG_*}x†Ă&N9!L}nԊjڶ1-? ʍ^MV@b~qym̖@+ TMTAMtɫ TÔPto:L8zl>hkC{DgNfbdD纄Zí|wf53/QχED?-i7DmQmKmڱF.ϭ l#/ Gj?0ydM_״!$DAQ+\c#[x/I 7lRNs*Z9P7$ޢsr BR!Qtwd%,np?;CL.[ |JP;6MBVԮ-yFJ6%K%3.7^oSMfA9`U\6?|eúR/-9co{%::C+a\-bS n$fc}X$,NJ]wpl)ܫN(o^t bEFNȟȃWKQz6Yf|ځ($~kUIM4jT9"^^uঀ&Mn*H0bbP%VB*3q|rs$[//yC;P$SV@V|;#\X͞+z KmӋe<|`+c(H]ifK@ w1tlPHp"`yڇ:K_;dTu!kX"ĐiR@Ɍؗ[%&0@:kk:]﹇'V{* /4fr?TÅ?ͪ4?Wa,cP8ْ,+YDV 63/\ r} l), _Zb=]a`W`Ѻįe\d׉ZYYܛn$>|oaDTx,uxkHc}v O2p6 d w_wʶ&P HM`+`-HZ`u)R l֜g-9Z LB<:eDF9;Ϧ /dNFTpH%2x`f /UѥH'gՇ: P#F {]-`v%)%n2#;}Ğ||d(* 4 _ ~KW@MF?'#}+$EjoB[Gfڕi߱W`ko!7R:`iŢ2~%>D[:mI=ضzEH|#ZOGq/k #*U3VicU=<#xmDv/0v gק` otBo^sEtyʫ@-KW8Ͻ}]`HL?gyZA%ClWk2ݲQejQ@ŴărZ4۪:XoDE{['ފ5MG-&P׍&̄Pӕr\_wr eq~  {w+܄Yg Oku62kΦ!աƂu~y%B 7X,IÂ,̓M~B} vSev:Gr\JrQD#P%_&ww $=/\cGNFltc/l̆˗j)ͦ,N6~+= f?ݰ!1(nB$i0tv$X)X 0Ra]<pcm7U1~oE mO[4x:v8aҏ?Ru =YOUŹV#Lj.n i%fӻBnpj{0kAZݮa^@Q]q-(-~9^PL-$wܿ\B -z݋MLh= _좯.`:<'ӘZG3K?d{\^ aWV&P;6;6|ZmDsu E |+9 C ɷ {4O,PS4eoFZ??w1z;.5~+!o1?PED h}c}ۋzaT@'DȓQٹ֑!dXmqDhs FM!.x~(XH։DnF۷El~J+aEWc6FL?e<<ý [$X7$C>48-5%$X;5iB̟)b`l8HL C4,gob,/.16d ms,{i+վtಭXbb*aX[w/8uYVHr ִaM] AA䨳:ܗ}@P~W^SWt &ڸoڷi6'A ^*w,[LF 5*Pu'Fqv@0\%ʘ:YټzKFaGHV pJG4P~on,J3@_MO!+u7k--D#}9jNEԀ#v4Q1k3Tۋ ;o\| SQrVsF IA"u^4U*U@ ufj&pۙ+Zw J@#g`[ٍİ,Pm&CEaB>ho $xJTC iVpjo,ٻL<X=p3Vb[S~g tB$C5,G>hӋW="Ჹ sVlx#̄Ng")Q˷\5pmZAՉq|\MYǑx|i¤6 g [p"L ^+ FHĈfgG4ZIOV[@(5rU\U+in9lrG"x2_ &ŁX 1`/kuͭ#?;ASQʑw Ȣ'͹]ͳpSxi|/7xQK`fGy/$Lb򒤲d'!~ľrReg4\W072 []~X0P>CE|[+I܁!#=Sf[ 97BOtHJ&Cc$0\Rɪ 0BbrS?zji*,Ӄ1jX<3< %z1=1 +Тr s2ژY;#  >F,egfyWjXW>⫼O"_nc6H`EKi+-Z.mx38u{+um>v注{&Ys+֫0wJ}تQd2\:b7x(XIG 8vc?UN!*`XR&j9-zVDpzAF=&j%!hn{@]gg[ qdΏ\=I]*rr8oV'qLϸhu7-`@QsW+ig\X,eqwT뺭lD{V<CXd)_Jtր(}"0`F`GjI ^$-rkg@vI.D$k-$p#{5^],/U,=^Ls.Cq (_ S0Dbf"&$DDk'>o*lg`Hl mٓVfB30m7o鲣tntS4p$r}q/#>-aԈl.I͠o7 úގXsW tHl#K_ M6{&M錷.6%z11O@yvӢ^ ݏjv nlw{&DAa(;MU4~;:;&]s| 'soa6bK" ;QutB+iAkJtPJ,ZGp@0'j]jj-yfAϙ:f9/;'q,Yf znK]m߲>,vvƒ2%Nk{=ױg&Q]00vjҴP7< eB>#l\2_墡IEsSQyRsVg/PI :p6iWKd4C (.@6nk1v S 1P.dJ8UArP_,y' V*Nq>?P*QO bisUEe5Ye  kkB2?M6DeAb. T GuVhHڸde@guBu~` u0HN@ck`$75jOخ .EVUneģy? DVa_kߒ3GeU` ky#GZø<1F!u{XfN70NgC$LH ő`j_'Dp\P#y~=xaSR.nƏ8W Z, :Vc<΁ 5inFjk@9s^zl¡y} x̱w'/v>֋3Jrcϓ wXC:y@arv!LT%>wy/ FX[\HUI KU |]{Zdn KGxW71*f ũvߌ0n9޽&Ǯd%&jqIV\ 6be{դEu1?wA*wʁU"],Џf+3Pnn ^d ZE-oL-o'X7pvĢG8"fl('{MmpֺPoc胲8n㊫_>2 T!=qcMĊzn=+O٩x=!'!)ki Vɞf]aw4[^7Zţ񊩀sK´Af#ii⥆`H- ӓ{b|R?te@"cF^5hE;Q=$c08#'^iIݩl2hHj+3 9S$^`K'2_"{TGE5x;z?\6zFw${I3,>0٬4(p*s+U-gCuK$[QA+NPb4!bw(( $.u[-vm0 4|0;;nUONM˟GN ?^Z!"45ٕS.Dfwh9qQ[`xsybC*jMA2V)WP{wP|iWv֚p̭XٳlԬ@Wd:³LTf{$ޚsΌ e9[4 O Wx2?G=&ylsEOAO֕hFқb\dEYH::wz/LJK< Z2x49M9AL̿i@8}Bs}lAlZˆ_J-M3F$VLPQ4F DXCq:^zt@^;jMJ*EB[,/Y/+tX`]M^2S@]ӒB]ٝsƪ&R}F,n oc){*gזҩ&{Տ :p Ә69GDrV&ϜɬĹS(bm*lm]M6i< :eݠߪX@'#td~jszZueQAp('j_ PՑu쓶# 9ivfs+ 69dHd38MUab3; G,nL”_q0VTˇ~зV#[t24]zk.~ w?UTm?T̄jͣEXbN_pU_{t5+J5٘ܚO ^U*;{;ULN4RTk:ʼn2ۊtENkp9}/Rmn-`rخk#e?Gf/{anW{HSS9z9>Q$lcjAVxuPixz5s%RðLC&"fȚ´#K`WyT?J벂F7h*]pn˟Why}U3oZ?wҗKODL~Vgk R4őݐ[+*^Cy8D{ ѱ 2U'ax̍.Ko460VQG|Hke;jsZLϞ}īxLJUqIf)ĐdX溔B(Ҝ-T+;">fPfuȅ\ 3*--qrcѶXe'{Ͱϭ:?=4f^|tU P.\,ND*P$YUio(n*5|ꋫ.BQ +#duZ)&i3gc+IdѮyp\~\w$z/fW%BҫdXI:IeE ݆1:zbz7}u:IN>% \= Z?2 X[hx>aT0-Jx [+*> 2%]4݇N0*` Zǀx4Uy%v/| 9^TC=Iw^pGAHwaVezjO"Meg|cjvZr4N>Jeཊ)\s饅}u-ňWJ&ɺނ[![6;*;|0K r3Fk'MHu7vu9?g\xC9mӅ}~0ç{cVXBК {tL|ʒv^X0vTXfj $@-(軍WMRȾO2w#.?@'A`OjD "Ϊﶕ~ 8`R8c~ "ӣC.*CJZE̺,: L}WsRC9SʣKv7P`{.eY.T]B\9hne6*祘V;{Y X֚]EǭF/xk3(v|$CiiVڀx0^VJ y6zlʞ ܂#qw1 RCH%Åi?8B,Čz}tП7P>##ߵduJep @mTQV'}4>zkoUR+ w޾4YFf8%Ԓ1!Zax9]`TYzeIqG qGU}Vm} !z{ 6^:sӶ/ʐ.7 viFvYZBJVaNp.mc#hUI*l;/º'7vVc ;:zTn7t;dFOȿhH-I0Լ3'>9qESo WT/,x-:.|پU%R Ō1{eQJY#;g- GsMFX"{)N!ىu1z/*Ato\UzP3u Nu1N k^|1 h]?. FҀP%Qnwۢ!`J07mt*ejzJӹĶƭ̠Ja|8N)!ѯI}ht0i6?vH[-QC=XoϏ\Aaͽmyi0n]ax,_o5}Ln0}Z%#`}tLjFB2ZOs3)6s+K> Hz%mxqpbäekVpHl]R1>њy @Rmq1z/f7}xloi'v%:5B ڂ)U_)y߷OZe6p5y=nM/ɵxvڮ@_j+Π J/ZLˀV ;sA遗2:%nƷcTfSE%4^Vc}KFWj {@:h+U/ߵYi-H !EHtS;ּD5 ֢hU䊎9Gf=PٹB2mW1nGR9 Nm5F\6%AxsÍ2{;퓏*3n=PQ.cqU Iq{ o (twuqQs#)jf"t޵4C$W Xe"/֗ 8ězm;ꋯFTer[csZcJęsQE%FmJ dlpz @KNǛ* #rjG֙>o; <вx%~s.CXsZtr_hy[焻!>ƱOgR7]reRL nN-\ I37]PPu{zV#Ǧhzp^1#bx1H^^ >jyax|h@)=5;mX Ev> N*0?4jM ]g8L=:%-y3 4]涅hkqcpqR9bŒ\TC)9#ŧ"mJK2.X@ j~ ,Vi?vżbvc0j?hxlRUZj JƘ;7% Q?#;@J\DYڣ3eEyuTþO >7'JW2VQJS^T'U,: S*'#vOkAV)" {J|=mHf3 " ?;ꮮHLՒwʇAhCٚlBJ9n L+kYߞ53ZWj&oiEcH*"[FDNn7o4q E<%|="i]}c?ҩdaN̝G0ʄ}_Sp#~5n{+ AMOYH9.av>v2` Q&dz{IYX21ƛD,c"$*E.tS*6j;і>1ɔ>R蜋+ޅ@_Lebj$Nɴ^ NqJVM3)0TPp[LG[HS7n;V3cɟ y!;7ݩ(}aȤ-Bd@]L9'#R$(Z̙*]S{yE ͷxR=m8W0l8}E[w NIBYBf<8"Z;ux\BŒKQ1 mqPV `,ԒuJȓ*'Vxh.f{a'{{%HHCqYCH='!]7LՃA@yw8}J5NRug i DYĽAQJ1?pcGhߚ61<_52[% T -\ƛeʘx2P=bZaCyr$oK%ʏpPϛ"nܝYeZS/LRdgM@T P\859w~#_z  km?,z?8huټ9$=KO"JUcmv/\MXxl̈.g#)7˭ 96bY$<}[-LlaT,C*"QxB .q`nQk}} R|_1[s4񵼀G>o`, d+J`m'°:"Oy/o7k\O*s-C9W}i|dA#nx1T=I֐X>o/8P~)SwO+>c;}HoSѳ@4kWJGՃl^k*Rp(谁s胋H u>z=BE$~1%J)2՞ iVh2s}70^O{(y6Jǔ׉3nDšӐyCB׃UOZVm jbkȦ\fڮ&O$Vp=_% gK @wMbKaR]dy4eJfs2sroN䧥]h.N͠5&%g?-yĊs} oM"<omgn!V\|dҮ|SŨ?~ tT/*K5Q"ҿ L^/zONk+rd4Gi5EZr=]<8%_Tor6qHi'~AlLj}J8)y/]lITD3!"+;U cRʖP,* Hf|W7d aśFFl{uIvtME3ȎG~AGYŬI'骿z`W$s%ffXAH ƾ óA~\J\@N*E3" :cyOWOH=Ԡc=?BBVx*ِZEy1y { vuXO׎-&a<9_Ǡ oSExU)rOx$Ru#_K :R\jDfd oɑ VF9?s89i Yg!f:*"3oeGsj|*A/ =Ճ=LFܫ\zU:w' vD4o&ȪH,|ALv-}nsV$S uKыj{S,>Ff4$FrEPYkabqn"_N!6ywm)**rkhd; dz8PTX]^&6o^V+e| ^fu zUkMjiqpมQ=㑞͒O dxy$ M}M z鱁_3-h:p1gh ֧yطPhu \rjl3s̕f FO,Ǜ\RNd+wÇ2d>J~Oս<1H~lzY rk^6⻯ZHٛ;1 %S8Rj2a=ʎpzuL"Qޓ.ݹcnMF+lD[pBG^.X{fqCtY+w*8ḓ\|ݻۅ~YRH%1xT6EnBshAEi-xu=^Nz!Ji*naMV Jy xlAQzMCIqDmE)ߩxM+ \,]h]*xy _0Ԙ԰(?LB;6.P Y;s=ݔK`.En⿿s%oF t=Y[F!Y]mM u>~D9&U~86'`pM@z?S .k#ݤGl5" S#d8ziSc u{.4zeMRj8g^60r4Tr)VCI zM}Qyy[c·H)> M9`ԇ+ (9fgLlb: ![kW*"R-cIw!3pSK` .VSeѼЅeANHnwK_ۆV~hF>s"$n *@;KPQˌ|Y> jњoP\aK-nٺڔ.%lZl۹w֎Q SsM9/ ϱԮ;!X g$C$x׺W=Pqʮp0A±v0VJ]s=m;vL<+TmKcux@#v@x^v ްPّlc'HM;NX{ @R*q4rl @4 5pxG(?BNI鈖;6Dh6z}b!͋K6WzRAPI%bp6Iv1l @orQ=Mpj@nBƭT %$~Cw'ɗI!ɑM*N?vAKlk!~ *_$faMWܺ^6, FDPø 8j%Zダ|bH+R!gћI8ގ[s4Z[a6:\d}ʅ%He\XnT7' K}PaÏbOO)Ày$*t~1_[ODxGaBD4#cx뇅%1YȬˁrC (0lL 8awgʃzx5ps ( =rvO2Ҿ)8c)_ÔaKn^p;놁\wTI`\Tи:}Ԡw$,T*=vc6%&-z%2xAn$N66PS?|̲GɯK;I|fna' C+f?2oX$AimaZ4O`C/~Q=$u05J#^Whfgx|_2Tk¬Ջ0% E{9u<\sRފ nH=|Zԭ]9r沒cg.nuHE-tD:T)E*)[0׽n2-AE JXFyQԇyC6%b*9,~lkp&Ϡu᪋wYUzO]iH9(@CLx%7brū꜈US꯶ .且hm` _7~_cR+E=qF3N./k g0S.V j,  ?Iŭ>e48]O\]VIo|v ^'Yc5s&3"_f 'g#V]#oEM= *ӵ( WGQ$-snί'q(ŐTM|kitzB@y]|%Uf{jIU Ś8NPE'{i'yi8ߜޤJɠ>wpr .q֡3NtݨeZT?۶K*.0ټYG=q֩HG;49+r[u>@lQt@ǩV׬Іv .Y:S hdfgx_:isIu@7Pqm!M:Q\['#Pky4ݻtE 9<" E +egEݾ)㱺%i> 9!fI%-6C smX0^~JEBW zdaIw^ooHRf?6Wڍ;.-Itc_FI((v~as[Y!V;g=8ky{:U׸|go+S Qdo Ցʔ%iO. +)>ƙi unr/RA~ a !b{UPcx[o"!6ydy+{4Q'cI",кLۈ?yl+7X1BT[qrCႳ/H^UuaJp6j ][˽J†3h5Lj 2+<zۈgU_̓+4z18Zݷ_lF>6#%]$z/(/a2oiC0Z H6ք9>\, ԣ`I@V}~ t"ɮS`;&U86+hPѼ@drj*T(.vhgY*pl)>"!4:$((qٜEAo4<UpU*>i>W:hKiT;IY&V RSCIOS9ֺ965~fo3ꄰm>TQ^ja1@www.+'?O4]=χ6IBVmj QSxs!Ix`RO{PS 4@w7$m,>Um(EpvQU6Nt(âl SpD6 +TCM0M MgG׫%S,#˻6q~|>z lvWvJR-fX\t}:!.耝WE oj睧)W![o:Si$ IiX{|kTLfܓ9H oyNۦ$C@' ަC @-sN9 2 ]u UeOtB9GqB ォ¦uS߮A! Z|?T0T$$-{leZ!YKaXڋv<*%8/{~{P#@=?Ú[k^噤-SCZG\d  A exKj"+J _Fq"2}+5.GO2ˆ !'." +q/Bn<쥟l 8L lBxducp |X_OKIUϸ=6n'CV%E̸_S95J O(,I4v{i}_pAOo]63ҳAեg`RĖש [@$@N)`h{tABfQmNve$ZşiwƂ/g,)e:w+=o$ =g,UnlS/Z`|\?8iQa@~tRIJ$>̮Yh'̢(.eS6N!}1s2@\cK19L Z-h1(Ց#nTW(I6 9 "(I=WZ 5e,GʔGD<ـb'92iP#L*45]!LfTFR).ɀ_nĂ« >u!@Ll3D*Vf w$m;j~ەBc,=~rxvQȟC*a[ugIfu:0iOS~;*:=.OL,e]e%ayFce:L컎k055 \B(`1t$%=؁<;6+-xUxOIne̎ iC5ӫ ±g8 T6Qo]2%F&F:FI/1 2i1|@g(!0BF9$Z9ezN=j]GNVC'Lm1qUs%:o A]c{_<҂8K\v^Q72_?D9g{eHjM~Wjɡ? Smi&$ԲCZ#Mùipr_˂W.Kv ^frߎsrE&=m] `N ,-C-Ek>z7HbVQ[8ժ+q`]S ls_28* 4Cŏx(|\M6CڜH?_Syɵ:it^7+getL B.cd&'|hH!d3 B Z-SBʾ$D͠7bj3XϿmW]H99›(G8 ҠH䓭+|$+WܵmoX J軤uާϔ"VJ$'n-e}¦B 9V(!ҫ*t+0Fهh-q'jd.dwmq8cxux˗iykѺhNmWtL0P:Yxp?ҏqXpIA{L#+xkt~R'u!׌nS{x[X7Y+x:RkIVT';@]ƔF1bC)((7%bYgDk\ST&V ` /ɛ( fGOUT0+\?) A90YGd*Y"/*SZbg&4-y- %~Ԡ~8>dbJLјEJd d 2[Nj:3|ĠIf1X\''Nl^\,ZC\ҍyxߛvlG};AeJ,n\ҿ)EcKk0T;le>v\_<5SJ{18O4CھZ4a MINX "GC R WQ7_Q~&ИTIU@BC&P{fVpף\keY{PW1GhoQIk0d-90}9d_%wXL#>- WV;*:yzfRk7Er6G5s>WYcz (=bIC6*qBB{Ӆ+KĀJmmH󋤭G=|[EJyˑb=H!]7QPwxثM̐Sy-&`xA*K}PT`}nyZ.u$yJl͘_yXyb<>Kl}Z}vpL@~G6D#.ZGHLaӃ3a̡ V;W$\R3qgJ [<@HK_o+w~8 >׏ŁCܶx1j~NF9LrG)g^[Y%YhZzVmbc_G ?e(ǂQ@6զ\0wL۔Ǭ(#}<VHupq"zA@=c=lWa#4\6AS=3kB$Ь4!7j8hlc4! Q'>>%`Aߡt'B)wv`ZB.CG73o(mC7.x}[!okr?c.FukV}*[2y#3*KT+˞t{`6ß?+o+*J2!0Ϙ[k>bV6NiL,PtPAҧ4Ej 5бDoA\%֐.>C#EU.ʩA6*HJz 哾VS2 fHb{e ](am\4bvx+H5N]9p?ebD^4]({5:;9d9RsUti(: 靓B4Y9ARg]|[?i@FC0;aqyf$q,n? P]1w&؊i:5~L[>זʅ+ٝ"T;+yɄX)ߪ,I%)B?alI2GϋHIp''헴qς8?9j'J|WV#hX23;gJoAbUiToDV)HاT-0&Uuh Ҥ^ݦ,PtF#:!g`u&kŶ.^G,MԝMuẏӟRl}}vG} ㌉@?ѽ"ҡ3nՌ`uC-zVH^Ga#y#q݅Rǰ.Vh&(uذ9ɶ̶7M,GSxcF)S 6&_TEj!M !m;=3ޖbHW?/QqjЙ~j[/24Z6v$v3O(wW[Hohe r8w{:z 'a:x cvÏ=IAį-N{?7sf\S8, ׌u#'_ SK#B*=V^[->q˨/a ` =.aǐC᫴%:vͳ<4O y??B*[. NΎԪ䂳FU2W(?yH}9]_dzD4G.D~wk6 ֽMF <ٚKO8to9C.?!fcFKg:4h~y~ Id{AΦE~5H?=3Zm ";!;0l&i**8*㏠c9Y8+K*`TAI/=ߺw!jW>~}0|DzAˁPcKQVk^}ɫv]uM!@LX̓W- sH6-VA@!뭩G\*um稨1StAԆ$Q$}%ږ{B >kD6S(J{,lJ۶)tnUu(fm]9֏@xݦ.pݭr޸G۰ Wgx%o%oy@8@/<.3bq =h4fLGϓKeUNd<_YO!>U5fZOM \JEA/({DvtUT.[߉0*fDWD/gͲ*!IAQ@.~/9 ܜ_BW)SR=S۰!/LҔ8h"{DbŒH$AAܩ'ÊP8v@VXHk)%C s۵1k|2ߠJ * kN`S('ލy_C⬍Y[dʄ,fh~ќ[a%+Ot֊% ޕ53C+狕~#tU8lyآ[i57/5b<۞6B8 6;GWHM[eKuo߬+- Cxh)J ơQF;<'拁.0\rMZ\W$A3]~bNt( PvQAvF8D㊿P`%qǁoK)ȐmJO+F!vvlp KxMl,T wμE@qS?>E*|JwȑP yy+&K Dƕ3#ΕmPsͫcbeTB5Y]5PO)}J< g!X%vUu=l5VCO"T!zh l74s+ Sn=/^Pf+V?/hBEյ ͆%h<Pq!iɘq%D^V9Io5bDznTd"(Y;1.NTLq|59:`سoXjE3dn@?,(nkA/D0鶍 XD^@o-X"c&^2a sSh'S sS&1z FD#;#݊_kyTp8+q#X=!oI WlI8fz+ u7Z)N.3h3ҹU~n- S5k3 o<.A4QlpآRk[+,}*ESCro%~\rgk>1d} {^|lʧf3{x67ThXip h%KV3k91!\AQWէC ZQ70\TTpVAh9kd3Ru-"4{?C KڟijhЩ@c.o;+yl8 N?8()qU7Oѭeie)eĉĽ,J+B]U*#"lO!(oKS4bB[HY63!Mڗ.JrZWm|gfhi[SQ-_hVlŕLN9zgftM|ٰ=\>3&o ;uW:ڠ^hCX{šㅅgߖ4}*L,gv"YN|5bn&t^nvl`=А$x{[RN_y|KTj5ÍIŅtLj$CMoәgMl0ū>D\ܨ :.*6L!{lLKnO^ g"($"WrPK34 Ӆ4<-;a{(s=Y@-T 4}@ߝgcpmGsp0[[X'g6Uw!w<3Dg5VoVu 3p*jVuCE{-}yd)ՐB\c}e %s.Xo[yqLԖݧ (dր5O35n[ٝ#j-`f&"VIw*ϪTh,yrf޺ιF{ PYuVܨh >IFj.b5| 8TEwPDsi<m({ 5+׭lqL~/̍_AuZqʾӖA*!2š0 İGz*"I3A\7'Rm=PSٚ-|ov uhFBc wxY#GE]@䀹쫒 Ы\{[WRГʉk]@ @)IUGJbs*Y=ǨT;.r4* lpI_!z@7/^emؔo_>`bfZ曨*2rRZh"޺NA={hzFO}X?plJ>آ;,>c 0[Nζ7A~XX~bJ}2 ٚ_e!e"mH@ XJP|&me0XAɂÍ k$ ބQ D0yeyX/fT dH.xs4&C ,3(ĉJ ,EH.)vj]b^v&WP6!T e|Dƨzp hă9aI)%EyS8w$\8cFVl]& izЖ|q=v6TC~/O$b6^KB.t1NLEMW_ЍyS 쓅%yFꁄ2BͯÉ" ױ$T04#xE(mKT}V~K2(sW #߉L ݴ\RuiAW^o9UT 3]S?_8j%f[G;s]%;pWLZpՠޡ'3p l&_kop^ P!wt)ZSBU~OED`!px'ЬouCSe1PZdSE=ޯ|? T /%cޗ *`qDȓFž4QSR1#PVLuA\M@J~ Hc%}&żmJ==]hF]ԤƐ/jS)G)Ȅ;1/d7w]xp"5DLjaTIHt9}h/4 pݧqAr];P?j\i["̏$oYif낭'`pmSy@27]H٠s{1z:"\jn]i4vv 8Y~xb~6wP.B?NzEW9YSqBNZ*hkKCe$ݖF :  [`zK8Q*ޓvL<έ4od"]8JF #S<}Ts`t_vہ[fauao$;N"0BVf6ԕcWNf:ԙsm, p'"Xk)T$:}Ͽ r7iTEO:UaܛLp1M%!r~$#'H|`-36 frk "% CŘ\Q)<8@x&8Nwadk# y;[)câp>}̘, 8k8HVsʼnLұ>2v K\sٍczk0!T٤CZɒv ȲNs }D k >A!k:w̯DWKCz="a# =V̫ѮI/~:rDcԌɘ:B_fODP--zzb^e q9@*fl : l.#8%ޜAMɝԦEVU L5l- 5O` pq~@26c۞T -|: (<==SBj|QGQk-,\(RYLd*҇g`bpUpR-Zڜ?kkhQG(4s"[>(4_O~r fw1mYI-qۃ ұP\mNlƘPކ!=m@!A1 6_TIt@h8B"TeUYTᠧ#I;U ˆvKXs,6nLG8: U9N}\uF3rz (}>=XrwqG9ml:P,־Q/$$XS{Y+c%WJNZ:u+b<ݓ[ٖ#`Dp >=P7 Lf@Ώe\ j!B MƞLE%J {Mm崃ϹCz)Mˏ;Ej*7ծ5JwqY$vqWtL c!(J[a\>:qB$"Cl"6}01 wD7+<[q4CXߛ94`5~R4C~ذ2#{l[̀u]S<]i&v5FhgAcEn>B>}R'H9 g{* fpda}۷,9#,|R"o[tul~ wKw++KJu݉/'`{ FncW] [R!UqzX+fr*{|6~DE;Hxǎza.St^ΰF(]R0<la}duLŖHlIXו7X[ftf^ kӆ )A߯ICKVz%i4T;{NO[W$oB'UAߋcW}K۞fmR( Bym[Ro>Ԏ3a6W|71tLoz>]ڳ4։"pRAn߽p$6s\'(rQ0'1G)6Xe6X!\#au<]oͺܨTA*v IT6č3kC;bX,0aedFhq;巉1B6[Ǽvpm0հLHpelo,φYMHf'!z8_A(I{t";'D1>0);M%cBX6'cUx`^t~zwEQح;q?\Y<jƾ~ -.BJE8FcY5͝[?B ]~P{erY,~gXMB*O %wFԤ&_7(0 oN[p3ȁD8벓q"/u]2;XA L<@G!Rv81IZv߻sj05JȓȲcҁMBqOFnv[JQpMv2 ST ޟA,)613~ų6۟}g~B%鲘Hvo5FOkl6zr l \*h(H_,ЊvLB>BMJ]tcΰ5etKƜn܀'f=|>>x]3  @m=/8;܅?ׄ@WoӰ))Rɦ.'sʈ@ B `Xej ?+J~2k3rl]\3NuIz}dOPyOXbÖŜc$w$v^swS#R&inϞFXrݠ++4]3(xR ɓG-Jnts6(=SC/Eh4jꪜOαM\W0ZPAB0>)ţѯ!j_t|xRv_}6Ge*r!& "b9 _cO[JJب9,ϗOLӴ Ep1K!Y[CC95@34r* #L}r]}{M3oѽݒ7yCjx:UN҅Vgqd%'-CgFmT? AC1jRCu!Z2r<4[LmSvb[2sT1XT0_%=\fL<69pdM/nL/k&@ZN//#g)Rj4'Mw&8".n9g]W,MͺH{PZ?gp.2!rrzU&QgtL,k'{ ta5֙-Tⳣs Лt ,dz~[HX4Kf B6d%#h5Nd/A[z~sdǗ9PL bbxW_D&ġ'XZ/loٲ3KP&ZL}~E+-L`A#TCZ rME y m6 5+ﴣrlAVvG"2L5W74XOo;vJ g7-tqqmp6;> 3nX-Cd&}?+2G|f y%ZՙC$/'Ձz Hq,y5[LF's|@%#@mD.c2[I s{P"n=^r'yAcfuOqQ#| :9Yv|d*jw{q_ 4X/0j =RC"d'xoX#QT˪?/f*/Bt]-wWpqԵa@](/wږ'utd"SؙT}K2#BvapY=[FC\?э2Kd$%zÔ6jXpIAk/7/.bP'P"e/7R {FB%(!ͿA:kY?ǣTJMj,QѓKm;Cs4k 4nQKM 1XU:ya]$aWÏ"711'<.GT4i3c*f'@'%Q%zǐkt5ﶟS|q1r4G4t'ZӵXj&:H̬ϗ̲{:a>^bJ8ݍթr{_koGa N< Z3nmvɛ^6=cPBس-C$$Pd{Ű3u{ԯ͠0&g ކ5PROC*D^a3)um;OZ'<`b=Дg4˱BLLhpN=dEٴ/}ೲ94J4*Sd|h- ׀ h؂k[jN73瓸؟:zWL Srwa-G &׼YV%[V# ЉtKn^!@lA5 wi}c 0p G',2_d/z\]ϋPEb9q=YÁtLu3 sŖ0mAl|fY|y1B|3Aw Pf}G {ڗJ]C H ~ _Py :t0ʹ7Ϙ&DNKǭUݝ⴦թMZ+mD)N$KZiydSડ(>zOԱU| M 5xG)~'{X⩬mȕCe,?22Cҏ QT^B5  !)C 3X*P(7A\'mSqBd?20VL~;GYx|)2:dڃlVD!$!x?cdt½mōiA?^)cRVzU/+>R>Ycv@USOcfE JVLi5)>T>ez@ͫ^W' oLeBEڭv́X}9M!ЙJzNvmT 5>ẀꬴXK'C&-;[zZy {h^Vi ,Mfh`Hd P# ?oiydmx^܇6#8I&CΟ~#O)m 5fai=_ymOxoKSr6bd|@b/z>-m^N<-n1k@-d;1]59Q}A'U"`Vs>h&J2@kQO~+P)G`8şs9-~f(HaVa;%@!7T]?a=Y4DvLIY݁hP,:h']sD$zݧ?Ì }>3Z:VaYHM~+y$h >w}``pս;\F**h@nP`N|Uy9Z=#*yWms//MF9^"}9=ݶM xLai)Y'`ٳ+[P%U{n:%:-k?/2B_xLn]i_ğ8fsD2Ov3?֊PŘ9~N 909ْh ,̺)lI.AѲ…֖(M8 r (s:a [ߊ @8m EdN=T %Y!ip 7$ QPgg*nz,b%85zBTBkC@h#hG bP@mEChOz|͏sS-sj()4PaMD׎d))߿,{s=k9;T@Hnik畾9Ur:SWē{ocj(P.mT e% `ˈ`b9l0: zvt(Jn)%=/o& nӰoy"EnN֕4ֽ~#1̺t6%%B8ذxH$Rudx\*䠡V4g\Jyyx; LJ;Kٻ+f~oIweǬ,A3}k+O@!^_| !}a9{= C 7Wb?=?t&a[@->amT95C PT+VS֠rx*0?U:pCQ6L"QL1 :tZp)UFr)qTͳs=w[m:3,ix^9{H->|v̟@|:ؤɺHx*^$ˏ?{1>Fu<;MY+e~3xg_km=Fx|б$UOaM;}$b`ugaš́Yy2L h,M%F&]k~u ZrP1\qV;<4H*&0Xa`>qeu_C9J˦K5Quuyc)hu&.w&3!Ƃsx-jX.XIѭ*rxēw&+mX,i/ڢ4bSMl`FΈ[nnsp 2O.lhb$vv[JےcGlW_(+N|4yX,(O=msEczJ9" _5蛲s:r`]!ԟIP IqH0 vg|/zxanx7=+ǾĔX`Sĸ'2Ng$|[L9xeeDVW%#ن ˱lxNݒAh(-Y[T 45}F-3} ]D33˫3|BvNNpPƈ#N#|h?"w:M#a5Nd,xh XJMt5%7IsSD{c/_u){v Jv4ޤDJanķy*% Oc L!?k _uCDyxKf%_-;ÿoWcpbk,mBg@COl3eZE~lcfRi9 |fw7nA*9HNW=Gː%ҋ;u]"mY5bC9Z`QQO*!?fr~9x1V}uy+'A%O yh[h%*~4z^5>^}⏐Aq=yR2G&-UuJ^0^XWcO\aMmTD> 4&'P&~6XN U4Faֶ kP&Sk@D/K/VY['^*zaE=uR,xL*iѬ&cjgaL؍c -x/ug)d!{;(yľS199E)S {T`fҠ68d٥=G%`L1|΍Cul"M>jjǍ.Jd84( Jb}޹;1 %R6Fy xjB~}7I.~u dJ!:3rq=Tl "|Wv?dUG0}nfK6c,C7:Xܰ m,8Ym-#ϔW 8*wՃ~To'R-Z3[T.Pgo}MO#̀Y v pv*1S6=lmQ&AsG}Z/'5i׮'*\eFdE*;mAuC"M߄k)s?7#ڎ%bq5Wkʾ]+#iىO֏,j:!kx;ưiuB\HIñ$zރRvWߟYyVW_x R,g ǚ'aJg&J&/AkZXS..#?C%iR(Xz_9 67dEV̺Gpt,2IC5ɛA;*'F<§QJ|;+IlBrr׹_ą'I̊)49m:f)DMHp}$(5" W r>$>ijtBUZ{$׳5dfྸu|J J\ٓ1G -zdn90` gЏ3'V0ZL~\;cq|*Gp`CR,ֹ&rTH%(!D2.$ioˉ/ʸ83}:l-oFȧ_gE4"24uVa}EZѶ^)s緓$gx8=W5P t=eO &GsT2RB-=Na]zdž 灬~v;THȍ4}F\>{r@4YI1b=Qo=BL8&D*i`Crq,2WvR<|tЯEUOꍪj!G^ 0+F̽0$ X2q)L࿙'܈4A+LW!jz"#@j*qua {)= $ЂۣT)6~Apj ؔޱxawհ+pE`yLЁIG\ ;Sc.r'"pNqR?jmK4Qꊁ<QQ殸酤:ږ>6f8xϊQQ <-e G54,A Ibj&4aT/M=ɤ}デw &txbmDihD;|_BL[~3@)-CDŽQӍj w GΞ:⫗ =p}W R $Ycw]&X9~E'\O!zI8unln:88,L~p䱑¯Z|y_R{ť7;"|a ?5C}7Iw`țC *NDL(ByhNsK7&>ϥ%`cd`Ÿ" Ԇ̬ݫآ^I_ZȝQY){n-2{qrfR &TD:p7PU`/=` ;?ГAl G.tBYh"%:@g킦{U`,zB8hPp[] ̝U0v1%=l ]h>+Gqj<3O 7݈^z>A>7մA9޴>cT-&fZRy$ǖ WXwx6%e*.Llߛ %^˶;"#XK3\9S~>S AsT}e_k-$~AH}Ӛ!qjŸE*t GW|rxVm҅% *DmtЁ-(iGr][UOɼtqDsJj@0Ǟp)=ԈY%KϠv:!l,]}1-gF/0u̸[hCh5{{/@mKjv@ǩQXIX!?sO%&$n\a3rUracyw _DkHʸm:~H9CZ33cB*; q*v0,; sSVf%mJWho͒9~J~y9G{r{x)\gqT^Hoehڙ$"ÐmV)>>nDM~k; $D4pF/0Bp,oLA7(fzgbє?ѫ#]J-?Bܭѣ{y!!ܧK@AOa`NF Fɰ9T!U%B<%D0ՖTeT2=[Yu'l_}bN=F&/ 9fD,&?|1S߽Ecѐ|^Qmhxv!hcKgDp7SVz 1?phǭɯΪG*  ɜICucҠ[e a] j"[VQ$K$ ݼIpLӖ_P{$^5T\S߁lޖzaK1Z,}(>'S t;W/ Rw+Y_u&BG=K$r9f@^=կH\,':|ӗLJ0_ZoɶL .K-g{ܑ3 N8! |:6z^߈wD })sɩ!JȦSd&S{_"QzV ~jG]Dr\p:`m%"˔gk:|w _)Pi[X5o\& sfױB,VzyҶJ$6%lc7!]'MAvKp3Mp;zcgޡ:ah`WS\qO׍4"P'gAҞSJh1=8:UB'Sb1>lK`L\ $,P[ꋧZJɣ sj%@'$4b6<䈻8D@껫I DFolZ7jnU!#|왊#WP'#b;` +Jxk-&EEiDxٸ\¥z== j.AJpKVw$-U IVQ;_ȡLv¬KO}F:%?gQːbP(_S֠;a>?o11cӡ:`)p]])zu!:b=i4oHa6 W[ <;`l.^>E,NU ܢ +H-N ʔ/@+*㇜IG,7įC-Piyi c|Zn]r}Ń|οϴ(x} [k5!qH7$l N1q:A#-['eφ $kI/O1(3"Vp:~GߎAchГT/ ^`R<|WN/ HIoXgŗRwمȳ/cf(jn0TUˋO)8:L skDoB~hX(t|U95?Z127BK>e{1Qn4ɒ'Q1H}σ{#6%UUBЭVOǴߵ^Hh+ 9A*z@hw%2X`kص(O)Ed.rl~[E4i2kFR[|ud+ &T?c[ efyLJc@a4\M(@> Q N#JrS>bG7V7lu쯠Vr` Z6ZkD4G -^oKMp\i/1y%|nVh/<`[g QX2B{FRDn$@\Ϣe5 o HF s s+=E=]XDny oS< X~fX|e+woϝ]Gn y Ko(΅?oD`=ǭ؜W^7ݮzLmX}{IL~ժao=`c$)dtU)ucїkf?r!O},S' /t5 +ŌhӘNqy dzw;EZoD:^)tXK8lH md I}a9#D4KIn圎EIIcmMFc%.c63V?^b Ǎ#Us~ ]'M[dW8 j`ͦHE臛]ͣy%Z6mA:w˫̑Șs` {`oBTɔ>HRr9HIki9`XY=WzrՊkϜ ),|SkJC+9뗼:9@hi :mb++4K cvSA, e4sY3}pJp[\H`v$rR'\$vٳ†O'9Tg]XB~&gd7-y͵R̀RYr#l~Z u?l z]sfRQ'KۄeZTpY6~-P@\K=B)ǚs0ϩ{,а &&m=%H2 #-e}gF^61Qau%~xq!?CB6T;DPDٯ('pG|fM՛^ @n)PE?k6xkg Ph2F@,hm/Su(G6b,D46תx BVAL ЀYSj: ǚ ABǯa:@7/S/ؚіjmb=c;P'5fUoߎ(dOŒ",])2pn,Vzd,HµI+JH_4c`g_rR`bQ#Wnϐ-l-(/l@-:aTFL+?~,> p$% `'!Xf>L[!h=EDJa+uS'on@) p$p)M+CR죲[wZ.Z 을\\5϶pGZ@qΡ<6&aڿ2}'b3unεzKI_ȞD:X rPqӉ˹.S@Pj; E_w| BU8[!l ~1Dyd8AUcXƕi|QSQkP}SiX>C,ga06 ʼnEe!n~WR9Ir䆍+Waus0ÇxiWjL5I9g&-˖o6n) %@[0ӆ8S9+ z|1Do@jgJ խ6Yqnn DgwC>OK`exAl=KQ^Z8rϑ~0˕(i)l)r~܉Hpڗ}SZD~zYjUXgClc'/ :Pݗ X.@?;ϓFAg*IE.HϥM~6 "5! -3B.įfOְbM%/o$f !SԯiaʓlʨoYm0-b&Qi96FȾG"]#@uh!b* qm cEu b`sxq:s>q2.м%0bRBp#F0bN6#..V !"+Ӂ%> 7y/Y%RTf-i+JB_fys 1#W6#L\d׼h]FHSۜ (mR]يw}Fס~@?tRzzG!-$Zd/F (w?ѥmtn4Y@(7FWfy<~"qeH0Z"vnXڢ}1 ! l[FCM7z4eqv&AT˛MQ " "Ҧ?.TGtP k*N*'kzŗ\,[YGU & &O  < .$tiټF 1dn;˛l`s6 G+7wyé6ә/m>dSM<%<;_(MeW@kڛwNc:`5v aթ͠6f[hQX*ӌ>0s^#钌׻mN;iRj$PS]v:ClJȿC(}YXo7r4N 8g:1*|0i'Y~zw|oCѹjm0T}2Kdśea{JE2ٺ)gafp=mIr?Ob89rX/R瀾yȏ{lenRW6 Jz-p~v!:{9w/"! DHsURe"--@8(= ?ZP6û_=QD@Pl@ܶpH$T5Mv@ɷs$4Em̤ҍ&iNlQ/6mE#wS.PZ&R¨)bC~[*y96u(E1~;#"p$*כ488XϬ&!T ԂxdHytr[U1 {h&dٿQƸř4!uӸ l^"~E!%^lQ=tȈBa6{nԗo<=ﮇqqmmΈW'y U"7MvX T3Lj@Չ" ]j[¬Ho%26v:=Z6Z wMU)aP.ӺNVR.(TV^|̿x~qCtź q]fۂ6*cܚl aJLO6{ODw,JpFaI~ՍX&})c(Kyk9| EK o|yx,7mW~X`):d'}A0n)çJ_ɺHDe#2a2ᗫٮˌ%M}=; j~pF>ø ي6Mn'hg"csKnp H+0jDp`]-n<𥩣ȂmKl1"~'W . yzQ x`bUͯz\mop7\iq,h=` o5k1HK[xE1ku A{ <뢦8GdCc1= SY˽-5W2'&ikd-c38Y0ö,3S Mq%,/vICfy Ia9"~r/.\#b^M?>O}JIocd㬢`JmRg!Ju eu^d@S%3zw*.GM!<) > +=W=!hS+(7n/:&pJWܬ$ 0]DGbGD_\ swJ|vg9%D tKAS `UxFumPqq1zAq8&((i_| U]")iA׌<`m? S>APEv1[F( 1ٲWoPﶫՑܦˆ&k&p?װ}}r>D׌ 0>'lV;`] +-ck\ú*U}C `_j[4ld1^2LV >ĩhnh}wG2SˋN1[Ɂ5:\ڟQa N'5A*j8/sd5TA99K~ߗhpf>^e:gаɜYsg3*3Wvx)rL-?Gei"!1%WFp40D 1}֝ dLl3<'x3T@NwI08d)JSMM.74*qޏAt" dx *IhGMY/ GJD8a94\\/US%m[ >'YGZ$o歝W[+RcH!7:U_C.g/Qdm#P:d̞)٢ia=jnƬ VYoij2TaxǗ<8DQuR~myrGJ_T{Swnx o= ٌ~5"Fڵ22}C]Ng%n? e"׫.&bh#+(v6Ge >Lk Ƈbj^: PmI:9,rp)!z?vs1xJHFh+k pB0qeT$svSqE]p6N┒]Ixd'Kw} w)YkJ mnYz|l`H<_ z-gXajBO]!ck`դlĕBDH5t>]jʮUh3mHNoA0dP8tU@eD bGkӵQ袞9‘QmIӿ\oƶXC%0 %7x~B{@w,홎WmQBB@S@ܬB!+Tr/oo{%J^B"-kvVUDCv+Ur2Kru#)+~K`&-Yj-VNïnn OPdr:&E!n(-μ 8y[?CdMbB$ 6Fs[mOޞ,Zt -:߄̋q*mKѳ}V4̯P6,. ϒď= + "&_O}} v6CE>Ƿ)"W}m;} ke[認wn9Pωp) 2E QZpVxM?{3ةq[g*|AIIx fOyzhoyM\\h ,A, /nQ,,tYD; t|l> f$MChc{UR8E[!H9T, gD*|I|O<ڠa,ǹw-U^POJ9b\+LTOOч#R@#S( 6! ʦMJJNq$@qᾙM8aj00N-%[rvqoꄰ.ޥ([ #^Ү{Lrq? RD sObUa T!8DL9GSNl'a/8k^I=.U!m# h-oɡ+q8-M5*N%W &j[LVXi8ugGU"Z~ HZd|3sүlg/3T+ޑ|ܿM!'L9'鯅ً\A."l,d])Č4?r n" mhOwI0sÿ5?7Ρ3V?U)EqPP,J?+Fn1EIL4 <)kg9MC]P]Y'2^292z~K׉Y}(DUh45/(,j'(ywCc*iIAM;DYۤ 炰`]]h_hSb K-j@efٺAE;t%`b9T?2əZMRO)2<qQ@>3.w߬XgL *ުMK"idNw $'a}tO׮. ѫӾNǝGl󥥖Tyx2}kaU=ѕd;I<kPp*xs0Bm]JFTul)Rxo/ %IGVq/=|SKK5X(M">&,TM!f!7PQv2FgRq!7{ ʲ`s*ZlAOV)i GzPsĎ]i,7ZHNY6Oy;PNH}$~vToLqȐQ"}`!d.Z@1F,zF9J DS&VݥXhaϾ@~dwRm[bA9S qUpI{ ތ)BDt u/hk/ͷ+ Bm@k[[lVsϣzǰN=b/4ƭIrdIW4&V#D\xg]+Mtc܆/hE+q]Zɏi"U'?xp~cm1!ȞOMt"Ī\W .BvܸZǷԸ pr'坡soijq+; =>2+~8Da|&9=r NVUZR Bӊ`V J&gaS$R'mQڻsJ4IqȖHٳ\a:`UCnL-vB@s2}7 N(ͺ>A*i~X"j!Fv'gw=PQC~w#]=dw zJOōkNhO&J9=7x}KH:Il?^/ gͰ t6H͌`9[c3WIZ/Z tp ٝ'-evGJKE A!Sw]APlni-'8 .HsAQn9wJA1c ۮeSbd>.@wiYx>쒙<>Ⱦ/yQ~βI0ƴ^"t/^jɍњ JHֲ:(]f΢%/H%w`^k"̪ZCGcgpzT>1.0!9/s}_T: t-m>FpdAbpt4֜}o UAsRҤX e,>F4( '{}[Q8Ų$fH]9Wqyuzݮ%dGȁ|(ш|T>;3]eaR+UM!Qvr-da 1"Y$trk_I:fD.3 7-é}@n?tjOT=]LGx4=*tIȅ2t{ .P|9ĭ#HYޱ( >"1A=tDF`ɠ&sx Dl`;5F);= #쾍-gŽ=bJw)ws5&#d'-+lnV\7W,0U^Ӹf} 6˼\8s`/ #{05-Ժ E-5]Gt򾅓a[:cz}&+<~DG<' nQr_d*W$QfǏq߰!4tLBB,7Yz0AXkJA(/VAT=(紏.\Zr+ "ƫD]2yO'cF#k!GyUQǷJtV TZη50!P[/|ұQJW뫷1E,KKX=gGe d:s trx^zj-n[A-~XOS#zi `H 0$0b3kxw/ a揀qΟ52$~k@BbkxDμ+d_]Μrw>@ڳfoP'sW&b A3jB@7E$4@x6{Ύ1|PDMt*g4Tb3+h36.`i\ 78HyFv<.#^FR@եHl< [IUO`tNOlO0_Gzݎc7VT #v~,Thnz7J'.dq2Xu8*R|V;"IoҮ'V4YO%>Ľ@wywj@!UsZ[򮢞dVCsC8ɪ0[,aNuYHX')+u=-V2DL`0$jKv9z${#lHۗ_P$Îzc zfOխ A]_z48ſʔs u>{l؜qF.Wk;|s.7&F`:; :{JBpB:f0Fq}. WPy"vSb1+L$Xwg7X0iMp+[C# cCa phW1#ƗǮ $~IN*5OFF"FY UO$k[Etq iLѢBďzX|I:tڊU`f/|d,<(GUŐq Y7h|y͖ҙq]Y+P9jBac•ٔuyNYpx)(quIwzV 9@F {fV=k(yU{PgXP Tz +&5]y*x&%Y&~?YBp#QsNo&=9Lm$f^y:Z8#j߀ցn`ӁN;ê?u.uv[!?\h'C`_͓x'W6,4ϱs*oY?GWe@ ^lITc]]D֯*~ 4Adf~BvBH/Y}Ca= u/? &/ `< );P_$6@Ž*И67]C'`)t#^aO7t5k] ^}Doا{Wg&L 59~;@0zA`0q^-PПKeFfȨ/mg ݪm[jT8˧j@cJ븸@eMvhJ6ay=͞c-xDݚuW[6+<UZ6(Ox#Ɠu엓i k/&<Ew4^ aXrM*L9Gype[~̘6+p: A6FzsdUfָ` bbuʹ!\B̲C@4h#bM& |#9QvbO*q&=9. @%+@e3'd]C!@Cȳ ILhM~ܖ: 3RF_䪦-zƷ(/ K)8OGHgUғ:bB]/rR%[:0Я~s{wڥ0Gc'Me&+VڹIG JnYf:8]jYrA@Lp~- #gL%nf1PЖ;rՄi<>x`%Ւ&n_7m$Ӽ>rl/B'3KN}[׺l ݡՂK_n]/NXZA ]V0`/>ZDoGU7:Qׯ4͑;,B[l)fY8JY-Qi"ӷ}txɯAP齲RV9TZPaJf^I393):F-/ޝd['LsкB3pH(;t Z쵵s9`Pu-DiDeY şm;}BTa3)4VWs3ru ӗ `]6X܀D 3;I:/.b# #&9_~m$ZɉHsqZ,̰09@_ԕes8/Չ&Ǥ׿Kv3d-E͘1ݫod^?&-I{@l9pCy橐PɟJY.T1L (w? b_bOЄD+*{ɇ;B'Qi yRw>vkzOjb4ŧU,xISKMMZB_*jSZDtm]};tFߖ'D׏*+]NnЋ+# rU .2~8E8 ` AK}wĆC,tf}M1 v~&a JskS1Y+\LTp{y P-p%N% hUC m?`U;lpkW'q%ݻ4hTkt¿Z`OO좈XQǻ$l:~&kǟ0M{,J ,PM-#Z2<:p޺o [|,o#~z69#+lj<|2G1l=A[th\GZ0D3cGj!f&6~1AGL}pt"DEV!3eW@ӖIw (@ _L*aɈF\$@rFfeHI2xH%1зdLnOPKЌο|Ma}&5v_ ĥ%Tm'4/ͧFru΂CQLMhW xoXl_;4P~W/6'bT(my Cm _R}& yI ̊枻4ā W>"VxˁӍa p׉O|Fude+88ki4[}H%ѹ{DaE*#%vVHuLU 0L'G"(xn oSy 0lͼv#lIIWJG)ݴq;X}/?2Bcw^Ͻs {6u_sO$yZ! Po( ġi.jЅoyv\MnS#8 4m tn &V5QcE %S0<& M+fKmIdJ - (䀝H!rq)GigRBR""U;>yW'tf) jzfvhAJtf S+Eÿua9P${8L46OW8ajγeZcX(#4A%4Br>IA2+V:-T5h{-q#8+d@Wzx]b)tT*N爽s^y:)~8ŵYi]L%r ,ңnj&aݕEnPX3X/@z(O5*zzm{) $$ϜԹ=+8b:S/V2&¶ֱC"WӞ9jVU=s( |5 u(hZƂ%ofU*ICpw` ^_ðHi/ncx0Sg~q i|6^axpV܈{2g!s7zޑlJȼ^sT0ū:;){S3Vc˥$:O"qb`5qgAK]lJuD@(_]wxk QKR?cX)͉4g"Љ)F:˾î Kvrs{:UIc~lN<ݙm'\LkaH·(6}"z;D )@UM-{0%`k=s4qG7L*"cc _Wϴ`W-SEn4iFDGG Vsn"p &1#)hHfܨ~9%ukm܏`b 2PZp$%/Z N_?H4ZV+<Ţq{& \#rOmk hR$8J.=Tm@ECOփ.2N'l%|Ъ?"kqC@V*Q+uu'QQ\jxanr tLHP5{S)^3Qw~pY~e{&=L(jp Mܓ}`"&q5eG:ƇLofRQ)I %hlHɃd2iPF}h=Z JSVrAtPj\p1a Z)` b V; >Aך!Q!`nY$bq)=I5"Q+joyʕ&=01~'|}Ol45g٦GeC/Zy ]4JGhdȠ鄏õPjm2)EEu[XE@(F.b/ ŝFnqu|2 BwwseLE73e бUe#$WApQ"op}r JW5V6[.;x F ?9W>9H{1I]ƂfkHN,!m3{oN3Xӓ1c/ե[kX͸BP3̩Ray3y3(5#~c>ҹM6 gWbũrƖ{po"eάN"U#xM 5aLC/'UdkƵE?{'ZRU|6<-B׹:y"9GDD(6nٶIM1?a6"4HA3{qD ΫLjCPZ0܀6–s䀧k{b: N:Vn^[)=4meY"܇_^z +w;2U>6ӒQχ:`=zg,HKRKIZŐ5OyZ͉SyNmW8,Wj ]^ieD·@#f ROX;E/ǚi}K{Ce/oiza\e C;G4t qcW"e,DLbue9`Pʜꡔڮ}S w2WRmPxVU˄ ڸi* `04X$`/RZ +~Z !V'¹ר5̓).#/x`Kvغ Jz!(B5M.xAl%3K1˔ׁNh-gZ{>i/`sY7xH8CV2 1pqi ՗1&C]4 Y*`9G{^:`F{)8uL2{`J6 "62Csp ! / b$QiD=^@B]=׃-RZ2"Әka'N"6t\{]vs6)Ct=k[_ۆ }qçD仟aNN8FEBі5:M _9~GJ8B=fNjÓ;4Y-nVјaZ3wIe% CR{v3|R}^P ή ɤ:m^!uf-nɤqF"zIΒv{& E oxOֈ,oUN$2j6R|FS*u/*Do'YKb\K1RѺDj\/%:QaQ` 2}x9]8dh藫@ЃsJJ?fHq 4T%Hf'^:jX^pybV|~-mƉ iM5d%[%->R)uLi.ؑoUGߋh>N|77 &S[f{%?4yNOJ}dD pÍsI!n(%,AvAܜ鳅,\_ޞ3IQz*\W_RA~;3SGyy2h%saR /#~՚Hz]W*=v l{lCs5(<_ԸI?+RȌlh i&rVJxEic2&Y[#V|H!XL9踓0Ȇcvikt%}* XIIcD &AkkHL~nƢCصF|Ь8/(m"4aUM\+4~E+49JddLvVM79CEqn^opA4 +_ ¹[ԃOF`緭L*Wa~:4F43VOT/Vf Qe#?L]X fF#Рɿj&}s|#6'Yޫ>D6bcQ# %#D&}5}-RS$Y0A&FF뿭. ,<TdZhu|  G+:laRfj&Rm.Ԟ"̬ eaVx?G4^W SB,p ?+D]Y% '6^ :`2VM]JVP>wI~(رo2u4347J]MJ0нWM~>g6i^u$rZ);@:y6قGsYݼdY6_k9mh$ag(Yqd'RDy_=u/͓o $+zIdbn EULlP|xۿHDi\._v?9(5 "J=ƜBL€ƌ!WpJ:.4k clQ,|_]p\d֠IʇVٗ9c>l.M-տ nOns]z#vƵVۃA2!=ԓaJ&yܠ^$&}{b (ïu*,W J+8ECUIWW^)b= UOsNb󇑂©65`L5`~6qms?$$Y ?0zghVI@*PH*BI{z;͘Rkی'A롬W{t%=͋J{D? Ntn,W[qJF,G.e‰+Uynڌ}Mѡ8@+ eQiF y(P_g]pXIG!AGs(O `HGCx:JoGnQqݟQـ⅐RJE>Kq|#aT4+V&N/ +n A(1 ܁-CHO&וԜ&t L;hPy{A:;4/6Bk,84',} )Xs42aqLdVZ{ÒK^iͲOKO:B?rW"!EL?{ !U?\f_a@GZ,gͿB6! BFsŷ璱]Qoţt^J`[Is_(<_7Tyϙ޷'M10KzWu4"}\HCY|'wqv)ʩNkCoGH 6^qS7V˧)r$PJqUpc/Yn{XRZTA!Ni亝$ՖE8Niz#0_N3朚e '0m,nxisW=81Ѕ@ tPD`uP{QW0 P`6V1\+mն-_ō.v Y1jڦ18Uŏ$%'T-I3ˁ߀1 k[mR^uy!!ױKc0 d Jn#:d Hv'ئLMѨn+9O zwp-/G|NQ . L n.Ti ż츊L2\Px7*M<] 6 )Ӡulyx@>dZ_OD651~? ~Mώl*?y:݀FObI?b Qi/^ ulN,|UJ}XQSocۣCD;q軇,Gfxi6Kzu>**4XY5"מSL$9@P=AȊc%DnI\]v>p0J ;<ۧY-LcGK=e(kՋ DF4 kNm˞H0hR74n_r1[ p⇖|-O)+mgOOfOQθqIo f^IHqw.{.ê!ًOH|\V '-W>~,4$o=Dsƨʟe^-8CA=cWqzC2j]pPpTzDY/BA>Gv΀ a3l<χ6/x ]^To].C}=rϚ(U&14Grܻw)oaUL۟kGŬѡW2a)I 8Ds>X=k&9%L*dxVx&xؙthgIN -O4=M~|Е w59豃"9Uvhs-M׿QD\2̆uy1wl)v@ O81XY\ DHp~%$Ryh+ &d,OlYEl*y^C¾ zv) e>bC~eFb[E]rf5KVMaRb,a]o#aS'A@2[I`v greAQNFK0cF/9 x~K [fTTj˅) "cRLpKdzR@JCb|ESZ\)s)DY+@*ř7N&:R tR&RON%'m@Nczy:[!MJ:zֽPa["\ 9-C`M nؓg2Mx1(55OǯǎE.wqjh zK! D&tIV?T0A+wW=Zy0 c9c<[-ħؘp RPAIIknҤL|QXλsq3C+*mʙLCLo_Ͼ;1^q'o\q3]V9Z 06G?z WU_AO~)>+0у]:添]U{w<ޭ2Qa^ADPI`:7]7Ӝmj@G);E`uЇkP3Y_qRlUxVj}}O@ lI4<1NYVA+YuN8xbMygibc]uq{/pjVBM[(>Qd<8RЦn.bs4CAl+fzveq"Ql"Q֫ɐvM;(w\šwK4'M "(TG[gq)I!Dӛ&7V+-ʣ̫>Yt)wTZ JϿZ:22U^uHuc5:N9bMx@->@Uf?͏ʾOQ˛'Drgzh Snv7∎Om.9Ѕ"4 mIw|=/QC8Z;,];8Tu+1 LucbstomF쳘M^-j( ցX# ǚYQfK̀ǻ}tgqm-,`kg C JB6b :}!F5 9/7i>3`f P9.g^4dh#sr9q՞sǒ74 xv89_hPf L!?MOXM!7oVeO[Al83cy= DGH ?E%jnGC3@-)>A~l"ƦcG&S!Ƨ-JgF#x O ~3\%fADq_- BsgҔN;8Gjttho/ Tm\]J_Q߁xҏpJNrК"׮TǎGB(23.ou!dpNJV],@ܘ>%R:>:r2lQ{{|2w$+PO*G4whh0Ta+uq?dC}-6v2I9yZ_{ߍ=J4:{3!1Ӛl~k Fl.Flaa1,[f/wo7`r0}~dxɀ%tV9N^~d32X)L8 {&U)Qsz)os kn1X$X(d k,<6=]b:T},s]Q"#lU-Ne3f!vbQc[s5=@ #8~ %NR2*܉|R9tA~HFа"}C\s]STv[f4 y[;O.@tǶ17Zd;hGT6{bTDD>u]=#\F\BܶŮөr6*5k +MVČ%S@:=))07&kV=*`-H$ ].DصagB( Fu-:ˈI԰@Ǚ&MUߚ쌶Ru^| N%9G|Kw#jɯY:p 1ocA,uR}9pW+[co3ueM(2P?WˁXn"۾r YYbQFw[?TB^j:XzV]@FK~7|ZMOvjY]~HB`̤CͽN!º'+ Cm=9;3ݑ,U" ]E6i;w9*{9FzP9"qJxc9w׶J*Cx j#6FW?~ wCT<%j/zm(eF@Pe_v'ZU;Ǯ]fƩC A5g4p;kSD!ȣ̧5rayDY}eX\;q0_3lqu'{蠙55 0CAx(0Ɏ?;!/6%jV\$#5 S$){#\WhuJ"~ q?ˤ8><\SA{}č rL; hW;S޹~>Ƨ`j{91F-A:p-:'U0TAc CA=ƈnw0ҿ~ DF|w)^V,,g*pK%e*4:3&91K':P kƝK^1V<;_e4xSH֨>} ]Od3cg~fw i"Cbޗ~qwp?d_gkE͸ہQ̝gNsu#F{'J. -w s(;yޙy2GU~BJ>N1 !r@%Q3lm\6i߷@{+n"E™A]H:1DF K2_}A]l)/@QJ^+iiPm'TޫɴL/ GO\-_LFg9?q m9o|ՈZiRD}l0l`uX7`:ԅCZ#X@:b.=ҫ ,)  ߑa|g?sLKJ/d2+Yu+L <ᚣ 5"ڢ;w/%4;9.8ܖQk =r/[N0 Z4'QZ[cp.t sv9CAI/Uq35(v2PU(-5 NZȈsލ>|uLK(W"I$hԲ2#P9l|"tHɃEEF#О1Fsoz ~jj9+2Nfۿ>zM Kzv|$IL$;nx :yFa15k,aD~"rѕMY@TO}j9m Uݱwuj j-T1!R{(Jġ@6XEnv$>ۙ/+V ptow>>oiP NS Aͯ[TMk#ދLa {-]Y@ <̴vIWFN} )5R67R:ߴVTQG!чNnë/G<j/SSZ<]?z{&js Q9r%}g=T-zCysu -DGd+Bb:+v=`.0aOŕ`?[髡lKo9 RdoQOGc6Fyz=kw{+T,*8:t }pZ|@+F~PN 0Ж?f.2;f1! 6*~Q(ICk"s8nE<'P'#fk|դ U&xNmC ~Z.%a m4R\ӆ6aXK0rzAO6 P}S DLSޢH=Kw DmKzAU6ɤEu-=>e)w WS#M6+-gMO\#1[BͥP ]Pv-sk@C*Lc-9% ޫJ\o1Vk%`RL3eU2V7ۦ9L.у!MN|u(bEfL]gTXSU4k"ZM*e, u7p;XHkC sںA=g  ('km ұ[kb@VG] &ᐲ8;uc ta x4X Ck1}3 /CP3 ^u瑽ccg Φ{&?^lVN9JM?VcB:V3v\ׇ1QSn Cq;sxpOFGYKn_&`3hf`g $R$WTS.0NJ5>рӘu,o;\>eήxOVZs(t'ĊqP60,"ZXk/(0ʼ|_Ga +n\\WaO~l[G0ScZB#fj/Lqs!?C]f4#9:)Y1s#kGQ73S~%Z`{"Y : !S1o+/"Y\rsLSkP/!`V@TG[J )Ⱥ0Wbk{?0E KJ-MxC:Y$P'=uq;.=YlTX?u:O"[_$b噞 K?4뿵 \O8;Dp؞/ߩ RԸ<ٰeRE1#縙C_^aǍM?6WvP:ʋmk[%n ¶%R_u /RD ASH#&1S KI2ʹ,H&yG_xpRSod>S:Q]X CT azJf yx6-6 }(:7qk@"-NPTLȨ]^lZXVc^[͑!՝սHLZOW=OmJvV )%kab\]nC,̕a|$FBrOK$ =fߚ93nyg+mQKxx7T_kl/oK_nE1 yCIdž6]As47*5P}~m!XۍZ{'bH~G =tL/:x@`!)@ gdXOVH<ۗaOljDm&%;m0k -~2V 'D)2Nui:XP]Gnt~ 'V=+p"Kz"_ك?D> W xRl7't0WCS΍ W\ XvNČAxIP٣;kv" VOR ܻ?$G!u`w EF3CGc&oNyF3lHٮ+kL-5ǢkpQR]QwS19֍PO삳9::0Ay4$ Gw$4NZ7:A-Lbx[z Nv\TC~g.l$&N-{*&8N%L87pH7~0-) GQ䃮M6nnslM-=պ{]~r#/{#XB\{+wR[oS\w&&hhᅖ( ϶ArU{ G^Ң Au/n; hWl1ɻ?$)xynΠʎp1say5?,깝Y|ɬdGȷV8.'5Ià1=t/`0Ri- 2ju U#n IXt6[݆F񓷟߄;ٱC'k ׉v oRL۰L>5qaar: DtoI0@O|=DCWD^4OwnC՚|^̀xbI;^] ξ%a-c:\\OrR~UY4[qԦY 4ʋ0It8YY353b'@ ([׷z&šԙ?|m<$d*rdd5-W:s%=اJP&v%_/O<^?7E\0wyQx@F)ˍRJߠe/<$H?clN+B7Lu28qlClYbf d@ʣvɩA7O940,Y2Z ~ACf|- DXeZugRk`=0th٨r M`J#Z >[3G`Ƈ@擕8YėixjæM92 pH8U:$z`Թ,6&,%RJ v-%lgt4 HAY /ơ$u,-7OH6;v2{ eDHۑ~u/>| oY?XlT~AS9.gOXt}^uɚN$Crm+,qW g(*lN.vEO- .#<8AkҎb@eKIߕ{vwqͲ?֧2Unp;76HDZN `ί'sĴc adbh6*Z m?o ?B_݀v9-ӣ}AE(n`^);C$ŎcۣFqhGZ;qVe&e^~^8!V8)ΞHkL;fa)a}m>2SS23^^ÇْRXn$2+'\Jix It{ DڸCm OF ]{텆I~)qBJ2p=Uj6J&)>\Sڗu|wQlA!3%D1[j{yFD14θ\d; wCXXƩ}hwY1Sq_dcԌ4x봭X/#TNH8D۽co 7;d'UJUiI;a`roTbބnvPvA.((ڗ^9 J|ZRnt=fo{.<9dXo(.C]-r{AHo4}AKx3#h!.Or.I"teU"CEcYgz ʥ Lԡ.87r>TfGYF5m՘Y.Nׄ(|6“You)u:n &aշuS( bzrPVjX` P`kzSF?sG\L-|XX+G| ;hEǠ2EW,^jBISEpi \98m.ńԬ[,Ɋn;_)+AvDػH8*>aCK!:UE Q@բT> Zgv`bA#!# DOqu;npGo.Nn0*`dM:5 A*ѝ.ꃐ7-dEF62E$GF>&Xl@A5;AfፇyxEiXpjU`b/jK̠0XxFwY]D2#E+L+ݟ;m1hhk ӹ.=bDӮ\  k #C+bVN'ja/C.JFc3ŸC%?Cg{OƜK,Enqʹ*3#Iem~XN)܅:ұŦ A*&1nR$E\(nvKti/8lX+!TthtKz"U ;\^Nh>P`"m!HKBTN>gܫtMɠP aejzj3/TBʀ%x0JT.&jrčlJx)pzLoZ+xحB*!ۙq昤2LϚLEW  :zFwrٓR?zh u qD8JwIRiB ]cݴH T426xnz}$[zIPcse7۾ Yl%uNV߉U vS_% _Jz{Up"7Z DR;sjS32 %;tC4#,(j‚jr>{_no6ސ4@$}Zf"kt3jۉLt ]"u5IG--C*6[֝bkI[bA> @ HU} h8ŸXXhpش,a|g̶^>S|LۙYBz(C'uwS";Dch68_¿|*SJȘuf!HsF\[CIKtD2VӂUր )#UYɗLgp`EyRܛsU1W %Fs$ fb7D&Is5Xku o/ƹ :Gsp01A|p^?\3mغ/ǘ*nJ[}ͩxKraOiT\u@wP16TnLQG+`ѣ)v<6`/Mї(P=^Y` V(=s<?jp馥 _:"<LuċRZ tus$$< %YU/C:"M Nu.j;*O@p^iy-E}4Fk)^'K` .Q$Ł/#~PzjF.I30Q+Y"@aG'!jN+U Xq˶-hjcouN㲞siIČWhC4%'{wcx+82 /.X@D;w A/I.Sw+%׈[p͂`9tjڈk9qMfݾj/]4+?\_Vn۶HAk *%ab9֏&{FenT¨Arp3O{5^YOǾ@F f uAȹ1Wac˒ōM#gpZ'*1B/։ }k(atH G&E9ڷ־*żS:gE2~ >ji}.N pCWtvGchl[j]``bIG[+| &BGKs٢dz'ۧOȜ. wEtى]fp} sT5bRH/,iyC4ǵue p*l`N--0XX]Ƃ;_q >~c SuOߘ1BאwcEAL,lu91'LJN5QmEJH_|tL}eYjFzXJauŰ*M/ yN ;+/$/y!;NP^w]f#K FE <>7<3ͫcɇ6!Tȿ+vrI*K^x wtNA3_^z%KלBR-OA7#=ao>3fWHލۗ %A'"R 9g V򳀑~wjc?CZ5k`rP$d8&ChhP1X)h9=y^ަ[MmAXj F]rvI_9g/>Y7H2,`n X EI@O5.3>0՜e6ћ!gK!6e4gziok`i\B[4 "ܮ f7;5DF(`dLsZcZFPrϢtB ǨɈ@ p59JW}j`ñ~hLrTO?Cd @PROM"TE(bXI.ⓅV{՚7- S*Qwf/ *?*g֭{t>3.u $D`~XAǸ/S2\/Gm\M $^ sbB soV[KAŸI?*$nZ88ɤ2-pX4_E?1 #mB'BKf~JFC(c|@)4@F,iAVx\4%gwjN,; u,> ¢_׶>[U?Kg*t/\(PxN.K%tY)+-`~tvC s3{fkO Ӡ;ts*I *6']Xy b6],$yyjDnBȿ+2c5YqXA3nRUon)@3ټϺ9;JRF9%O RKu4 s`B%tMscym{ vX *=%˫~!6ԑdpdaSyEo*ӯ,!_2A=!>{ֳ wjsNTG"UJVPSS ±$d/vHIwy1nJ#Jr TVM#էq 7p:-#{sa_*je~cNe6QFuȲ&1 oDTG8Ss ˴!<ji,_tS b٢BbN\dЍ^4I;CÊ'Pf TXlM$5Vtޱ\fu˚h3zJ1vٵ3^e%=)uFxgn6{u#s9 ^NQվXl1k>~sjS9֭cMUS!]aôm[?Z a}8FP0LTrAUw%5g[r_%  dč', ʽ6Me=@pQ^ 9G X˞ߙXKD $ |[vk/'YhgOuNL7+ȳeD[:lgIϽ@ 0.KhՍ3XGlaϼ$dkY[kM/oI⓫d/vUĂë(ƴ>>ƶFlZٶ'4̳[X oAM` ^C>︾e/ yXS.r5_"=PxEǤTv(f [x=RIr;fFʡ=_gV]ŲbZCF~02H*ڽº848aB-vEIGP1+QNrf垃Ubg,r}Q ](k?40c̸Wֽk\T;@!1B큰q5NXˡ qzqىCbLcEug:*܁Ǵy4R Z~'T\y{607;hT{ Dt+N+A@ezF{C;.T)N6%6D$‡td'fy2VFˣnTa,2CMMT [B|s@(wL?IQ\3uB]HF'1_F{#!Z8 4OKp&`v91Dl0iXb+FqYj/wL!R'%rNLOaTb3J/fI3Y.[ [r5nҗ_T 5ycv8v$DK!3zaErier넖0~lYDba-IuQӉv)pv܇v\Kf?D3mYeEGTk:& Oev0JO%9u /=S}ɖ.~*ׁq'iteVjjGM嘁ܘM8^7ӏGzƒ'҆( 9䀻 {t&eOt(G]=7|K5:iqFKms*i07|LftuʩAj#j]1r5jGܭ_g'ٶrC > VʉFPAE&xyބG} 2މa{k5U,8}j^zF"婬~ۧ 4N$5eG!>IS zpp Pf1,1IaoSTB7z7MȖxoPeǜF/2;edpSG667؎JX7< sĝ>K/ޕ$,߅8;xs1zsH.\Z&ldFĤ\K MX(/Vұ f01n>]#Iس99lf4V k_Ch?T.^Y-Y,K@˛vZ\n[mոkm%V5Tj%2o0'0A#G6lOʭhwc<9&@C M-|qccvPI8XwjC[թk#C-96dq]CC~Ԋ>nsvkVbQI+,\@\cSz^#~6}&pJYB f Dkq+Iz6M29kHI]_8@4WRh {rucl2+qm^E,NZe #[X u9e)nST۰ J3ĥJJYܙ̎W*#d ωY0 ud8 'l$px٬rQF{. O3J1Ewxqo3X$I_uX~Q)Xֻ4ST#!Bh22v~|ru0%u)E.8e;.H'ɩ5TqQtnl-nŵXh?G[6HhMTB{3OW[Ok|dql?R|F"Ij  ^qwX#924 Qrar&'5"٫_o1O 4TpB0F'ˬn8lX R=om I\opWB_Szul0~YВh/AIzXMl=VEyܦ8 ~]“`j^}4f;},GƇYϠR'"0Ӓjk25];P0Ix $nQtЬX)h>5= rk#=U]֩.qK;DE ml|FB;st'@Z|X:I{g[v>W ]LehB _0 i#ħQ9콿'rh35A4bӞ%jQ;[ r_B|3鎈Ε0OVcsca9U"km,hjl4k㛚>r2h7"zN%$)QVuP;@cǪ^VhٜBWl:b~&:NGy3z~UΨӈ7]XOR,^ NE~`BG,flr=OqIP\TȤ-%vs{iZ,%iaI4g"9hcF,H6.Rr${B(_HJ(}?W/qD3d ,ir:L`$x:XR Tؠ?s 9QӫOT& ”Ytڢf)s עFP0FP}p9WRoz$+0l_En=amϟa @Ĵv$!cy{j rWkX{Y-tVy{_vۏq5MB-=SI)ɚ!Jc¢rTTev'?-Zt ,(k.\߇^4 G ';K֑:Y}2WU j QA,ɤږZ8c;e@2A1_ : @u|,rl^pW>_K&cH9בC{VqƶeK;AGՖx)ZWxdcj\{q[l2.$ӸrZV߽uK0B#MxM=~>^2qP߆j?NۈgIib "+ t鲹0Љ`}M%4|9JG:Gzw7f.d *IB #ˁ*ј,eHB=VSS[f&yg#[g?)5fK@&6rf+>6ٖ,b$ N5zQ)`}&0xUd՟b8d@, ^0iģIA_7IQDP_G/7W:;+0+ķi.#Xzھcf7Ж|麟K1Un `0/$j|F ]ٵTʨ ݮ R2]-/Ѐΐ4=bӮ9{v+Q2NF_qenUIC~WQై\7@™7Rȱ9Jo,uIJĐ5CsǠ$$/)*m*pSuj>,_W mw:6Xl[YLpD#H- ̡DI$ĎUrZTj=hI&^$,tQ)jsl-32۸6Qޜqޒ7@ r4)f-Wӹ&iR_zC~:a([<+_Ʊüʱ|ш"-](/وF4oi{pZ:Dfj5t#1\j:t/-' 85\e;HBVΒQ݁ ]gIJV!wz`҅dA, eT/"?n%3kd -2zeW6(iz9ތ |KĥVX׿mm\EEp^w:qA( D{Ncgyŏ ćÒO,4rRa7 uz7"{F #j0'J f9#=\#gާ )Տo9f^OBݟ  y H .|s/W8}"&@.fGmyFE¸}2) ׃+d00.(N߅,]igj3╨tUI#넿 -yc4 6t o^jt<[Ҋ $?!zxBk^Wynέ|Sl<[bL%GV/oۿodBKLL䧤~QI5,\5?fN~֭ 7"ޏ,o+ɬǟuE:NQFݸ(ا) PsoGU$*#O_併DpjQXeGXj8iCK/n)F:݌^>I~gd0Nu->m@ 6t5KW< -u rK(;o@ǔE($S59 ,\%2+jlxAfù g9a;O!#P9SdPxK~~EbN-$T,~cWsUJ@bzx"iHG7E~lZ4FgCLɶI5Q 5n,o7@ıyɃ.\r-*UJKj?adZ63!y7 C Za1\*-"/ȭ`괦aPY<{ڷ<ጩaib>rl繀b^V$s,-61Q< b(u\P(_)F^L9Y+\6ԇX~+; %_xD~A =%'O@HV>AP~\B5b3)^wwW* kȲ95igWw߀nn+*Jwpt_4Հe)bUlG.ڿ$x8NgV%FkCbvCyjOS8}[ 4ZL2%MV'Oju5M؟PPOմKNWghAF{w;rf cD:Gv[> $'7[='[wJ )7Y*&$@Jm\1ս˯f۟u)ڸЅ.]Rq'edJ7orLv|\xOj^k}v^Mȑҙ~@+9&h-Bv0'"蔊6y(~nRLn$< 9S{wkJ*aN-MZUN5t& Y壆'"Η酭L$r[DRGܯ4t6+V ']24~6wH&|QƞdgL"6,`PXih6Hw=(̉-yX{,\<̓k%s%N@?2,HK+F*ɪ%$ȤKȅS QAW,Ɋ?/$8-FUdJ|Bo냯:=W~?UT?L7{[lQ~vYTjCeOiJm5 ]G Ɩ,y@~x( 2U"9D7p}Y47׏=]Eѡ)Yh\Zc^IT>SP7_N8cCkl5rnjOUqu,, و%% 6S-ߚH_ y`zLW_F)mөHa]j*K4^͌:MmZN$h #j>%X;,]FJQ_VV} )E_jPY5Z4BCthzMPx^v:ધ ~ BJ>tT0y2m pm". maz >}t!M=pwVV%A=N pZ֖p7iui(d]@f]iw%SsĞ~; /gKWn]xLh2{UF^Oj߀\J=.Z < "uAj} =u){>Joi}ܪ}H9/;0&[lO ה$5t o*YH\DanƳG2 L]䊿* ̈uڣDlrth4_tC쁿B' ܽ}W GQت ~z~Hgq?lbI `@l-v57Dd+/8Bfk szؐGNj0o_08dwy pG@:j3(3г $X,]Nr*ښuIxVMi854!Ε PPE v>Z,ȭ?1e؃=+tFȪX'3WcфWkKYpԇDZZo lvnIؤ68UHR)I–?SґA'o+GM$33&V&L#mX ȔHʗɛqjn֝.H7Uh"i#mb 6*IU^-טTUM/u35yH>Opjӟ J'ese3 S.P4_5kZB'KVS) eP(O/#q>Mwo,_'8}V9lHaj iiE}1 zQrF&WV`-v ˨?$t4:~5Y~9s\iM+G.]:M*I1$\kQk/>5qpMӕB)ؾ4,sMXcJ4Kdm3tN"J=g6s-JLi}XLWL4G3P/P_\7B©@bKᑂ_nP a=A5[ӵL]nT@Zz_3ߞw<w\8Z^1OSmVjQ #+X޻f#nZ4% >RiͯĀ3c/~(H>Lդ7va~Lۢ@Yq2&s]z]7,C_xUKI._0ʠ٦h*LkCՋZe(O_2Ϛ9A\1q8j61l]^z ?V@hʎΉQSr|-XšK,;G55%3N"ZP?Fd ~@+S΅eSWbXTjx#R1a?yf`k2 ߥJ iG⃱̑A ; Q'¼?=93Wy._[!-2["}zO(:5x/?^aqŞK6!yeg-Y,(!ynr~spv@x|gsE\(d.6\ԺhX}Ddsag6HS;ϴ7E)ӹ?:CHB ?=m!0ɥaN)+E#$}2r{+R(OV]mW$A!/=3n&oCi!МN bӋ 嗣Qϔ!P\(x/+zIƔw'.)_яZW3\ʕrmm5[SITfwL\!ɯZ!DaI^8h=dLYoH.k\خx:3p<8Vh{ >kf-*i֕dpbaӳk-fN9Zͅ EMl1 2gAGxxM}!8sbfRFGCe2ҰX9\OH X_Upºw {B0"~`\,bXyB-n{,yTwH'O23Sպ4 g-X!)٣ ]xҞԾLkN소yaRp \J%m#X娠'v !HZߟh޳`xIvX*CȀGDh! %]z5P'4&z#]o-l)mNkJE"&;9dIPi\q7Y-\lU5kQ5Sr]lb;LRʸ':.8[ lüzQ 2V~N)Vوd}Voy/.UPC-A?z@^*CêLD@{f0 }etlrsI%Nm@Kzg7I-? f,32>x[SV6o5HLIR.[cQ!?!A\ 9@ pgʙ7-i GW46XY}}#1g' ݘ6| 9ZgÉ5 2YͳAUr A[iJ 4/vgD uy!UK{_( gmSroivtͦH|AIc3^d~"t{xfe^:?q /X6cKWMn7{2DT|S=8^L+ʝY=]~R`nD C4gH#PG;m7|X_X]Rg[VME3rjʪd]-BQ*ۿrtQ.'ԧ?Z5=87F?BR&qȭ[9x6vrL( .elG=!!o9$2]@>|S) yyUr!j`˟o#Yoח? WSdp+"[1RW9@ "&:KI5 >]`Za:Ezs'Y#"X~vuR۫q)TJV>Z\Sn,uz'Tl} 4WɊyТhCq)WE~_֨mW׋|r5ƺą+Pf%½3Žl{⊬bCdCDبZsK򳩄9X'<4E,v.5\|;¹s(ϝ[H11/[qx\%xQN ^[r2KtC\Sgo %J UD[ӵ +حt?sp/K{,2p6ߤYav=\vkk=Cҗ|; 0<ɑXDs pF/ơe>ZRNt* oǁ/`lEZ>=OE.\o |x벿U_drˏͽw; Z`H= |v#LwĚc^AށH\Ţo!(bWYxBoHˆ")#ws40yE7v ]BA#Ӛaw^in϶Yѻtc.sܬ@^ńb9~6 k&Ƿn~]BsѥLۯ&.gج5q_7~WU8 li2[7vT||g  } ZnvX.V4<»<Q$+q@o 'n%861Lmά3 a sKqaAKG_clzHèo67AE.v;IbL@㨦KtDMO5ֈXLIv7V?Jw׎7f9SoOS&7)nP馞 qkdYľsl2Jd2ļ|(w[ Oy͒yx LJvnb:je$& -DnI -Ĵ6M%.'d1QԔ>@n hoD8Pf(y ޏAH 0穗{"pr&;L"B;w^G^ݼ5XuZy\N~o-5|5 ߌ쁅Ofy3q*Ʋ6ct>Ƨϐ3NFSRFr[0{~!@KV ߰6vŧs@z6rv#0 ? J5<稃R p!|IWƘ\H7xD6!iB[u~־wTV靠,jo̐ڇS]1wւhĮF0;yM~m~Ք>jZ0r*  VMqeUp=n9  owT_7$]`I{ݤ4?9 of2N^J eU. $e}u2(\ˆaH0߅n(}Y o~Zs|<_rc<-"rk5KO^1$6vMU-(1Dt[Ōz7-"fƏHQ3Vbd _0[ cPj %>2L}15*#›\]ɸTnqI6?o(MfCCTi "T %L+ET)C5b+|rJ:j z"|(AqQUv.cyS^/ʒ;‰K@EJh A/߅vuj%6\<6(7[KVB p7qΟUCMTK Xd*wRGNff{͘hfXIN4yq};cNb*T_rHhfh"Mďp5Є́)'9aiokAYaS"uac(/O;kMv"ᑩ[$d].+oyZ5 oHx Y ^zSxsf795&H__DBVh39s.mZ\DYYn7yx~@6ҬoO 69' b槥^^ K.("iһ҇sQ|2iu2 Co7ZSڧ–GWO/f& 9qR` 䃦A Ynzh\{0:a]E\L?$L&T _iTR,3o mzpfh{kdoFSy2EyV;|{;pC6܇^-QawRplADЃ<*1 Nk̮+Mz7 :VG*Obr=\w/eGz R\Nh~H{7N9UxJ J/Ρ#AB j_D~v,؁IHL%{/.E $[X:GYJC|(t.!dVv3Sp2ncE;}3~R8 4<h r^|M`*3`̘sm~J|2yZ7+?cQ,#=mq 6L,GN{Je)&56\5o0>˗;XSd djdk26 ~#$=4v9 ͈4!jzxWy\{}*[{V^rKW}SgX ];峮ֵ.M;z'" pi4@! W\s}%<ӗGK&-iWm@dbjgQ,q=;aȪŊ -J9bp{I)P]Bo՞j<se%>Yڴu8 u=͑IG朾fH=5{c.Uo|'(`_y?bFipз;"T@[$ߥ9~5@;Ƶ3 XĆ ;h4hJbG 0hdZ~^K] õhŋx\ qL49X0t&;Θ FL -KuN- 2yi`}\hM. }}88A F Bj6oWxW bG'%> ƚN=-Cczi0QNulvz UqaW>@V8a%XbE/ p(7aqVP4A&[ry*PJ(~+w(1,J!A9 *}2$i:%m.׃m)=&xĶzk78[Ha#00ŬrX(P}zGe;ie}َjNsN-Xf ve&@Z&n#܇x9(rL(% {0pW(qZ |7OY#s~jNYJ 3kZ:xsx ?#@!6Q ]Uv^+`5(E%#ҍ\C+ mq̖!)<¸ϙڏ6^J_GDsζK- ʓLwRN1Xk7\)[Ā7!´gIKDl[rX UKB1,M·kس ivj #j~҉>8 [귇rۥjBWDD<˟Nvwx2`|!|<pÈJg~R/w/CI.5p7)].3b=k +Q_Ji[NX- L1Z43h5+=!P*7lIh@XTCuH|>MQfd1"q\r(jH  CwdmfP]Ҏ(aA>^ p!A:MQy] rXGcsmUF`H[]塡}\6u8w@؇u"Iu'4;Ѯ%g^E^ G /7`ǒ+ >h/v0=(`|F['?=t%$ΙvFBdgFzPʘ1v[^e']ݑ^B_V&GHѢ:|#<@AXL IJ/$1hޯؐL3rQ >XYO ; boiT*+)3L}B$٭Ǡ<|G0T/TR|5 HG wI_ȡr٘=BqB\LF8Aj\JjlEN}myK5Rxh! -iWp^8HV8@SOm={MIV/H`]lD l@%YWꯎA(YKDI )8` كu|k dr 4cZ#[V/6,[Ls-2? O8hfM*-Y,dUvΠr,J S6ɠXsfZ*>&xx1T>Cb4 SCȄ<28-pޗg75<6mXjPTO6 }eϷ-(e !^&y?0a6H -K,* o LN8ЊkŴ^*}fj!P:U( RMXF\- "f2^u0FܡR96|2 O Wc٘[Ƃ8c~lyߴa>Qw̩H|o4Nӂ$j&KW3j7ȑ#HO"gqT9cIPxwF15P"Zj+E~uvoMD_{L-|sH_DeT&T*B4 C.L ¶, ?Kua(@Հ!4U']\ J&mVEh17H YrSSLvjD 0{TYo=nUrn6g6l:Gh9{k!~PjqOM/2mϩ%c; pʝ Ǹ+m[NxHڍ. cDBxj$c/r9oRsH)γe6ҏ+n:i Gqb#ac riC?Bs`gs|/^&Ӟӑܱݖo* g+r 5(C<!{ic n)D75 p׻4fV %:w]*)PfE_YU7~Z,qIU@Jˁ&bڠ0B@m r qm6]$tA[J<~,:ՄXpWIo!dz} "P-b$)*֗e UA$S B4dϧnjhhEi#!qT)x~9;Zk@?xpV!s}_AvhQiq$UKQoHt3+stN{Tӌp@30Ņ{񁪔h*t/ }Q11 ES?. z-]S̡9‚%9_dWޛir0AlTxO8uW4qo16R#a31kv?&h\OrzP٧R8-^AO{Y{ q8IwJdTr l*p|255-L ~]_!QJe <3z4yRۖ:0,H5YY)à ¥B~G:B+ ff!J"mz/tV nj\k϶GQD茾jYXe(a & Ђ_=N !Ҏ'cQ\2 2NsHU}}70,rAC@( +A8&\d֔1A~G(o5΢R8RWﶰhA'EPpWǸ(༽BY0Ƒ ]Čg5*͆wF^t`cTNrEZە'Tm= -8xg_SKRj%oJ 1 .¶W2(ljMaת~j;Z>6F7}ry $RZ.@?o[ hI&x2 V)J9!X"zZ,`:9 Gbv?(RTnr<_4S?g^3b܎ 6ۮq@5dtI6Y7KJr妴m0ALzՈqܕJ]hXµMǎ.ںTgF+sl-8nAZIBo&"Y~ag?;Y-TZx+J H/D69_b+QM?qKPldC6罢&ͪ)cX̷v;V=z xhx_H<[s^B:SmH_R ;|%]P ?ezQ+ZyQZ9nBFF]`UZSűSL4z8VIVQq T|ޱ,9 n%)Gً:qcis;x클BoKj؁  sV5$IW?]2El >Ęr2X|rlV8EȄPBؙ^/ZUvȬ9q &4ϑbp1u9G5lc7FkdE 뢎 Z8ݵԓOFJq/ouWK|?V$4@[~ cB/.QY buCXQ1(zOi\-|=Rg!ݣh gx"%\n+KЙHK^?i|ν=ޱ0--2؋( wLS"#| ?fAp(ۗ lh"Aoؗitmn-L 7ЈF2uصdpZu/2.>}D=Bmw #R]9MYrMcX@Ʋ$tALsK*˟'ReMV`ΧFFbHQMD*19%0jXٌV^Y R|[hsW Li]Zhm fgJ e2iҎ(f^Rͺ!ϖ}vk,=(0曫o:$71Q[v(yx0N-Wn6 zzi}QV>tm'})3ߛ!Qr/6ǹE" τ7D!tgp.+@O{xUDiki7E@^6Bׅ_Ѱǰ<pNրl{Jޡ2xw8h5iɫ p]GmɤO!<) xҴ+תVfKon6?|i5{MxR$'x6Ce\t Zmܪ֩)2VC@ʼn5kԘ5΂AqO7gF/+'n _X_XYF<5)wE>OǹC E7k IuWAퟫ['Qn0r=<1 SŃ"Y( bK: =uX HjK 4[Aݰ Ϙ,"o|Mz " dXXqOcM*p t+JcO8ex=L(As- iR1]yy'=[ Ja۟ xu.|ِTPr[`i]}05I7@Ku<mp1,LUxS?c#J$0{؉̡lA5aS2:2@tMx~n4&՜ (#7*kPgp0o"* #)L4t&;9(m[$"@WV[왿X5O֕nETT?=trdWfՉFuKB?!R%螟KՈs v~+Z}4gg|Gz xٗ~,ղ*EyC+Ҝ|tDVkBx^h;@? ?Z>T- @o ٱy&EZ^THJ`7ǙPd' l6S P1& o/NҎ?ၸә:1[8yԞ HGK&Db 1b}rck5`ԕLu'E#@w>6PP>&v?5o;mf*MpWrykS<)2?Jl %~zRūLCq$b̂+XjбovRth5"Nލ, wE,p27pE8'J-jk\tܝei@x 4 E, 8] ) K!N%]6X3mj۹ ӌpQLx!4#igE5o-pqMҸ~, I}~yLG/~SՁ팗  wS!_7tx:(u\bv:'XPLRfO _SK:ݒ::pM'~BvY‘2'=1"(5IURdҗΩ]S`0Wdž|a%h9}NbsI:̘`M U!5 K;jh}$A&6ܚN*AC@Vg{ёsk@!Ǜ)1a-BcwOq\TSDf`ޥ8MLjŖqjUnmYǖ;6p= j=)Rz4x d"ߡF<44 ][bw@Wlefqp\ם ZbHaՈGU{lq$f ZĠD0^A3iȉ̳L E¡&x3&}6h9ЈW(Mƻв[k" y!̄Fj kuVjn}&9i3zF-'/a(eS8=|oW~ி$Wsr&면j;<*Ϗ_%*D{y9`SBa*fuY,i-Uܮ9u#b @vÚsQ8Až3(Sfyʻz^\-flZ6s[V2a1047c'4̸6%8 fbw"NyL1UH~P]#3г8suPSEXmL-ni'Hf=F%:q-=qxڿ+lh8Z_Nvyw DIh9v&#r+ Ydks@ KR+@i<`~!tO> g:VKp* "@+ōB`ý#~xTا>SUJ6qg]).$Hg* c%X+E$IBЪEE0|ׂdn,1z*ƗŇj]%!ïrjQ)os1v Ar'e9d\,viZ1Ԓf7(1B3@A:ۺmوۉ]?93AxQB,qt_9oz B?&la9.\jRoK>d}uB>,Cx!)xIYݬ*@aT=  P.W6[ $z\\IY)\o4!L9S]صH%%e˙j}$\.֟>I }ִ ^lm*elŰ_n/k{Hop/ro"`ݻ *,FOlBS3'WW29bN{vgn2@7#gyf8 fzzClʉS+]}/B~O}FHx ]^)W ,dTc4sxv3zR*NUh)p}9o @4Zzc&GХc,R^IaJ?m'<jF_j#UT@|-CWr ^UxO2Ff;\|C3Ф.32|C"00 6}~{"?^Ak>c6!#E/4@.n%W,e]%.4Cxv\ _v|0\5 0oD C#`m+w2/=We !ʯwr(==U(꯯9Iy&_)qgNʉ~ӿl^5iUa24yp| +muG*Sr~3jr6sԄ%.^d]=xFŲZݾ-nnHcvMdY|"ʘޅcpm8g`>D">Zth JtVZ\$T P:\+Bw%vg]<EkW5:}/]i6laZ;Q@s mFz=#XEnrݺzhk3y4=7]ٺXBI$A<QA؞TzQ9+A EcNC:p-n̦Oe7@$J$"CJ{<#H9⪵f~Y*-~| P|"#(XQZ]zj9@G^U)(FSԝm;sWg,Akhk}t%ύM5k]r@+vv;%>ch*Hܷz2WC]E` z}b]~R^`WK49,TC0$Tfg?1Q1KQF%FEE~ۮ)w}$zH<[븮 2DUW)6)MaXoZ8,㜦}"b_m#W~9)eu+ƔYhÃW 9~K{ ~18+g69"n׆)qX!H@ߥmN};#k4qA!ywOmbݹ_xNkh4ݵd2_*ճbsX#i'P{疴G*>@~_& : 1`[`7_Z@-Yu-Ҍ!Pq{YxX}N~ _i."WʶcABP=9&`;so3& 8U-ɵ*Ykc-??CCzI8rL Xg-UlCr[{uw$[nseRrm{nw44|$[0^M>V)2d^Do>{2)7HfhsO?S#Hhϒemyt#a0xҠiwyJ=S(7?:pi apD!)`Lͯ|i~hx~~=&8u%;YώBİؘz6WM;rcV! `_h)dmMŵ6 W9 [G/[kBa%Fv2͖W5~'FIyHfKi"kG&!Be4]a@/X+J́xPi)hˠ['Ht&._PkV$\ZjV-'iH iN[ ݾOD\'+&S%lЏ]4OO>@trf .TYK|]&'ȇ"^cؚ=FO֔T ̉zTp ?UY;VPôjA?{Oh4&P&{?p$sEXՈD;#Ӕk-1sI+&Gl+߁`0~m_b" f]v_rl"+z_$!TRltMO%?nJ#֙A0f4X iӁ<%6Kx[0Y\ U‚]|PG)WTvp!.nE+ڜ1q2 TWaNxY6|%t$Z˼T _Mm?ng"GVY_}x!П@u?[P ?DwWh>}L 'H:=nSs{#u:@A޺,W/ mOzX"H[I?d$De`Ӥ7gƓ^){aw,{<*ݒ f堹ͭqv 8,Rjs) gwĢ-1S3 fBM9iض(ogAγ/HX;x6PѰf m2'¨/fX wP'X"䦋NBl'ؠK,t\a߂"Bn՚cpD*5Dp2RQתa=[j֬Phc#gKFljP>]yeWKМx[v̑6F"|q,MԼ'< |x#JQpFeo |*Oi5%b-yb^侐%?{NҼ"pxKt6"R{Bi1Br&,]'5ᵁ"/O@y/VMZ86^b5χ-i9=Ru?tP1#mu0ZdA[) Q/ZS ӳKOg=۬RlH#+dƤg*솑Lp߲$W8/fIxƖ㋭u!i,,PxK;: \{x"$")UokCadzABQp⎶_Lԭw74|+j ־X=eGGU$WjZN1Pə$s{C2]8 ׌mO.PebU-RL ҕS}*}Ίg ҵi,%va9c?rZ۞8EP3DYc@YĿ ="μi eKqĝkh|wR5^A/@ )0iTﺡ0 uKt1#"Q"n Wz05jM6_ߌ.FmйsCFPMixbHGGh`D88𨽇RY1e(Ͻٵ(Mu% `%*ff\Ps!<,8Mw}\&^I,F8ԃf .$DhKAijY"PP1lz0XGʭ)Kssk`DZۑS(&!XTDs3+j卲2sgF|e}Ɠ WkCQ`[0 H~"jDWfNml{%s; f"`cFř㪋a; %~ &I$k<=5)uZC#T vpk`9T &8Mw{&|<'[HS#?I S3NUəA\y;z|<3(2ebۈ&О8%*>3z- I fDΕwa\Wsi$|%F2Maf1ЇTdX~^,w_EFgpU5X(Nn^͏L|lNyX܍x(D%R9 Fٔ?ߺ5K(:M 8v8DX}2. #^+EƉ(x8 QO'$cRB+"UPٜnI02x&ħ(>ȸekƎ?08 AzT٥|6W~EW4GO`V+(T:ʹߌD{6cPd4H87&#-GZjuKX8l"`ntZ wϸuiKcv0<O_ImVQٽ[D3쒭\Պ2S:ZOWuD[*%F[qz W=|i9U{>@>ƪLz}i %!CKb,9)++~6ЎEnUFB҇T2cUZG#:ah%0͊ ze슜 =Zj`T KT3 ?x:C 2i3@V{b;]L!86~o|UℋB$Ʋ(o Gܣj!o'J= 䙇0 ޹\X#-kR>+EUG&κ$4̊fTmn/;,!4NtЎK/S<\O;7 `R1R2KҾ8F j|]I\ MPi|䁰Mc}{Z*Fw9oo6:a;xdkBrHկWZ#[f [^_1uHws li6 g5UXC ~*vÊZ#ݕPh03F[ڜ0Tфnü @&į6A?xj$iV氻7pokQ'[o+O'3Sd?GPaI_%a6Y>kI`ſbP(?Tň#vh Sv_,'k0R"! ڭKٍqEf2NV[2Cۣ`>4y[kk1+nUum>t#>I͆\e ?tIoO5} CJ2@p~JM #Q$"3S̿a]F1+LP9T̻S KL9>< 'L D/a#DRAx0W$ݮ$B &r i^Vzy~k 蕰ϰlϱu1 y^ݓHˤT8٥3;w_wQc7Kig2 ~)PxΕ[6?4D߽ ̱| rg_6VQ輚vK|~6d2k%KsHG-mcI66>~Jbou. qwamh]p\' UbEBM4LOҞY8̰+&H5k 8DJ*qHߏnx`(3-lѐB޹]W7$}佀͡#(G54\ 6\!& W)Ru̐A~W'kGddhh$tҦ[||o]ȃꇈ@iDApL")\{Bu 0SbAtRS&01RE&[BɻW዗!I58)7m(쉡[-r) qh;xd *Kz;~s!Â)$Cu:ޔW;rEaþaz)՛0V@p*?h| %JV;-q]}WomԇV?cY2ˮ !࠸8JGkpjS/t± fz4;LB,hIǒm DJOKE2q:]ʭLhh< #E\c ,B0'$IAL.\ղؼ\G|J:ϓjnPURl~$KmR rZ^{hТï X_Prd䣙vI%[]& 2ē9p:҃mt=,7}䝚ʯйDP}L1L=.?{6ƙ艼!NݑGd#4 }Y3ӚF]}?'<(p,ޚ~S^cwZBSjg'z|E qsݿBze0OuNjɮc2e*iH@V'R|'%΂Fi&olodwjCi9&c@47ڣ6qugv5ΒDmjC9Bu$Dɠ9Atٳ%z1?]qwdnk h1K3(6+KdR!-EĘKIqy֘y+ i){&r47o iU|uhNOr8Fu;Y߉U}6qe)N uiT~+'RZDfk{.qQ&_Bw;fXڤbDЍ2~B(XΙv ʣ^do3V_ -W=+ZttbaF 5Ls)N 򝑑m FiX`atJs:wLcaѽ7Z+eb/7E?LS=KԥM@o>*5@S-udз[玂J"] b HY\'cIaCI<q3Eycjlȿ6(vfb0G .L))+I"?/倲pX-% ȹZ$uޙ&$MoAۂ}#_ⅉMeo{R-= hVW0w!ZPuxW)yiUVtX "ccpT0l$D:/Îߨ c%^Gv>|#$xlaj [sr2 $;K xu/wjR} 28W3V6ڱf#DPWv9]AUc/IJ5+`0ٕ2OmI~:0+:s;qߞ%]1hکh먓FQDekp NirsN[v!4,g.uc߅,rFUuX!3؂;js"Y0^4`Rf w8zCTX%yȹ4!S\n~S\٦ ֱIPw,%! xg+[yNfI="i@z#x3jPGuSkִ9"OP(sgK~j"o>IKD/(bQ:mԂdVPrچxJ|9:@Ʋߦ/3CMXtLπߔ BJ$(>ixV.mk4TYDs/n;Jt>/@M`jܯ,VmV"FqtSY,s߬J@qGI/S_w6Rǀ@W_ԏuڄ"py~pz_8̣8 ߜ]`75H/=g̑M4 N?ctE|f5%F!(0nQ '-~OEM|-;lIϧ m# X3;|&jAlh .N,nDjǵ4ø] Ѓ*n`T ,]a-h$P[h.=2VZ<1ܸ}dkX2|UGw4"=%SJdqxCogy  "L䳱>z}լҠ"O#5wj.TeXOL7x֎Tsů 񛚣iZ";D&h&5={D_'ǂD\9 5a}a&ݧ<( K6RFxU;N5pN7-KX+r#,`E W+EM8zcj@:CswQ  tu4>15<gCho"e2;J=Hk6hwZuA]-(ᤵ*gkls탏u"L+*N2Hb& Ȉt/ A#fYN5l yUF>xN4Ry5 1 (ٶd< nLțl5lEz?A՝zܰ]zTUKjM[-gLW M〯{'O:䋡?h5*vZ7褅qmQn>Z%wZE[t.g%B&v?yZRAJ$*тp >$F]qw nNɿ7Ɖ,Mtw9Tsw50&؋IۉFLs$/I~ //x#ЊgQ 11sx.,?:V n.{6SN"6 6jGbR~k($F4/ &+K7 _qĤr ƒ&d\-0zMfSX ,I:?ҞifxGnw{ ?Rwcq } q<~+e#*G 5XkC,g/*3}dϹC} 8)  JGJ~B%bt!wԾ`]Uw#cFqC٠k,|Z`ZpP١Adal{gn3Y~7 8\܉-#cH?oq[% YO7RS]ˎ̕HzUHd#Euz9A*\2@0ilu}Ir%8lMEZSLN-eqq_YR V:T,ܝ2̈́(6ҎuXnR8:kԊ#k(Cr { P< 6.OF} 7)ٱJFzFze& VE zRHdJBpӥ&dN=uTņ;sHTJX-10X1m7F0ZOFWPMO|3>omnpwߗgI2NߓMG4-vsXv4z%d#dowa'TjCBSDmf>yԚ'Bq2r.UZw'k0MԆЈJhSk@N] 瑜фZ Qto:̌GXQDžpDKIfA'DzNnZ`7.;>hhiMQ0Lwt#6|A'FwVtJ}um{ĘdSxetO%X 4|ʽźDܒP+.&g$rvp xmk1q}$kL orwy[dBn_hz_!([ ]`k q8ĖBƲ6+46.3&Ք>._yc71 0VrzP~GNFTj˲vI3fPo^AccÔ3мgtuL aά(3>=p?ѩ9Y.( `Z–DI RU%%5ICfڲyZKRag3O<»DTX(f"bR%rFH|𶁝+D4o/4j&k] 7@A顟 i~&CW^Inf#_ [J9azͬhGUv%D<VrEq2Q8|3 ͼ799GUY:+YU DO`8h59ΩJT?]zr&f5IVQ5?t#k(0W n LD"^vw2#x2g!*o365> &FFQ+Pg5~CD|۰<KkZ4fd˯\3T۠XELUg˙(7zJ%YqHJ\p[m%[74+WiDJP8m; c̝vE3s@ņǿ_2O1==+N/{i=VgG5F)Ѯk뻮ܞ./:>élų@zg \qүPHG$abh;4Ng+Q8e~|-fm\Bx z[pz0?$GM#\f|Ee i|J]H5b-m>7`ʞ-QjL +ӋL%iC)6?1Ew$X32SB\\f/JgHc$epn:6#50IDg-d,'6 ނr8^+4k^,KAxVB&|JgKuR7Trni tͣ=JW]k:idqӻ8Y|e "nDHiנݹ|фݴSz%J zŻ{<,DJb,o R>ܬn`҆Htl8ӊOsj>c)[5B)T W -0!Ǣ;ۢ/&qOykKt6'.` P#p WNM*`ݝJ08xAďSlT.`(y0[) )d3ꟋbF\/ހ\:5Gt, (藉.!⊌GVK9#x UA"9VF#JhZz2lH o7 +)6h2]=r%u^Tz { Uglɘt!XY7KtUd_ &j'3D`HMBQN5 ҌQ"n'@9C2}śE1ap{NԬ"c-HrjvNk&,!K^a^V8k EOKXYYLv]Bzj|Um` _EsG&Rh.2{HuFށ"qR$vve3$`qu5/i_?xc"TYj}$TCuCйSQ$'\dRdMU_dMF2T4Hm3-O9v1xU @c!_ZT_u:X!sH^J^p%'Rr[P]Y<֓ث B1Ak gi?so;4>g Y)Ф;Qh'rۃmoY+ͷvT~R0r[\oyqړȱseV 8ZC {R^U V@#4 `͔N}䡬.:I-MR憖{1_;{\h濶). #GTW~p_Z2ȿ-3 }B|6 4xPWLl_ڇƹ1g-I)ѡ'i eZ7rZV*1[Pyw$Fb:4Ff퇃瞱l#6PQ UPB^^}ʳOE RlkbV%='/Qi5LkHjJfA.C΁ïgc y*GU`RwvXh&gg%hqh(ಏ{Y65?u2Fcm|-$i*"o>ƦghK0Q6LՠL3?iqi,H.[ںEM%6#-F i4 ayGGV m4tBs I}%VvMů'vQsS:T4aT:rBgl{D5_}8N7ʄQ~x $gOjus{ln8, OEn>GO!A)3naߤ7v Z `u%l,)Kd#8mX/e-KscEThIa/熈ERoXwRf8݅~ hLZaO/M9z_i}0v Ri-l'i1/<{JFǪՠ#t?b4g6( >$eģ[h [}yb?HY;W8K\v*dbsQ.J˼D?b.?#8gLWZ;W7 H!p U:=1QKA{r}S>Q ֝<BJ< 0Ft{z47*.A=9pʹD_GUSl7g[cu9 hG el&֬)0IJ]ZA=>5]DZ.2fB_DžȬC9D ͯZz7.'5;l,D _ί!»D>B+2ARKTn:M"T| gB7Ȃ^تy]EK{cj^() yH.W?CxyåmxYDzī7X@g[jqq8}ҴF\k"ւK0aA'_$3HgrΔ@qbPXaXvX̋0SZ⾋~(XC]l}E]"hDG2dX,#T{'RVQ9l(hK؛L'CJiSfnvތ2cA Ք*Q2x ρ]_2@ʕ/\1jI\61=踈&hl&WIG*5h/vt yyI1^Elו_j(D)u~Nc!v8vvŶ0KLeJLT袽$vvj6μYMݒͮU;{<15e5?SnXF/`][[&s28p親60 ISC_mG3(R̴aI8-26&eĔ`Cξ9z,o.YF5ŧ&B(ꜤfFt7 ~Qr^J9Ɓ+]|PtF͌ B؊}0pF\R ܅kdVe20e8zW#bC&}9 ;8QY,jІv(C*~h2* H, ^F~|WB Uڵ>+.:."tZSePT'Ԯ ?*hn~¼)]zY=Mb3ipI'2Կj#/3>f><:eR˳%o B!HV@:s89qT)oniK?Q?7^u5"͔!UvhHnDKYۨ _ЋxV[v\qHe|R@NٽD Oa uKĂA}Hw ]Ξi=Ndy뗇{ Eo۸n^OWPDT=h֢ ΫZJt/dN2o+/w=F>5jFͼ4[L{ճ"C6])ޏTcUF f.xf2_{YuK&z ct]tgb}%џTajc,ȼCC[ȯVkzv=ik^kBcYXWI4BQݦ"lJ8Ap2 PjtFdu[ rrVUU7lFp"6xF{BN^ˊr뉈 S3sYEYX-czgP7'b)Gjc$z}0-̇cū)OT,O=é^ey|FQB_Z7CΨH-Wǯ)@99>X0Liۘq`/ᦠ3)jfyiͣiNNnJXNwt<߹,>(ܝJ,%VTXi=qf,=O iߛojnO/ȐpCn{HYM'50ΥԝQAHKxQ0[&nw'tr2֊ٽt>I:tsY /0N@uѲ<ݔ/`eA[c9+B YW]hyXŦ~J'Ws *(t/8{22f o2CR"PY $w\h$I]#ߌ$"t%¸ 2j>3Pf7' ?T, (E{MEC^hfa;Md"$f!Yc$5e$ dRӯb3_e~vs9 _܎eA &INvjqX8 [Z_ P.wFrh܋GW%ܝ;2X"GÒ~rt?˖d 9dS4aXwK Gцnfb[W,(V' `ȝIljO{ǁJ#:u|B}G;xU[ "JCMm_+﫷4J'X4Z4KZwoEpQ ؄>u8q͑.хcoX8)/ lF&}ʅGO_ђ[.sbST.k ǁ%]Ka9W @uB1Wh ܒʯl;6~6@\r^fnpwL ׇ-=RnvFE*>n}BKn&xUA,B1m B\,V%m-#1b,$t-Z!BYHu4 G{#ݪ7c^h׆-Ot6+y^7ǢfHڌ3t. f csF'֮i#2ug a+Fe0#ħS`>}y="eGJ]A%޸8CGaX,'ݱQ s]^7 ޞx䚬@1xtmw>殐t-Tx'#}dzڞr%`lۅ*7EGV $w'r -+@ *, pгrgU0w_7ER`B7_սߍg ,jVk~7-~!0aIQniFD!EG<#Ņ~{,/X(|:He1_ Ub5)-hU¶"n:1 Zjc;wqS X) mR UbљWH}b1DX}tpӒkۡO>Z{\Fx|_%۟|<L4#?d:dՒ& ,XS-M)|>=+o'ctq"'zI.TF+SQ&P9Vz{kJXzhX{{]vA~L.F f3N2:FFWt'lsjKV"!%AN.uƕot6I&sGq<; h_zrcެ@šM|hf?!u?3͢RIg9Nsw6 J˱ʮ%<(2E ?;+RU =b΂ToG~MKQo6quA6.2f>Ф%ϕ]Hp(;]P)@̀\淇]AwnU3#i5w|QޓiWˊ >GqIh;aAN< p Ȳ *  sP}dvB'.lS`)Y:O*S..cLaG%cR]ySm[Ɲd^ܿ6eِ#h-ܥYUkfhȞ6:Sx`tQ9>6ӱm2019ʈf|ոӲTT1c6u Ԧ JHY@6X\KuqMEƧ.e[* J+&X鷲迸ěXRN$M%ˣ\}¾1l|VLŽ=9i1_oFCGOH'L/$z,\mS b7zF3̈gG˹MXʠkz/1.a&BZl 1QBs."\O*?Sw{+1r !.Xx$(RO (%} D\X"5#ǹHS~G_X)Zۛ0vXN  0*5>6OiPbG>ppR 3̊<0q:c9%!JT=:j.uNݯ H,{SF=R0L%VsOdJ8.t1OQ]D9U2tʝ\ڳCo)bܼ@mkvSb_nKqh{6 I $XC* +R>>SWBOqpprH8+>;9EђA1et1s-` _ Y(@*~'B< 5\Eu[sdd<`4O𪤓'}q'NeQ_3⿺G1CVILHJ3BZτ~TBW,KUFV*FX),'$\Lڂ9fod %{´ˮ9VUPЈPͯl u0:8ьcJf1&Ȑ Y ed¸(6DN[ȹtbi9E/ő.A]g q j?UHVQ8),ӣ|O^V;2YQ;q>ml̪4yƎ]xؕ#bFY-RP2ឿш1KYncvo"qˇZJ$^ilTP˪W_k.J]b]XM(X=sq˘ RIyVٜN\hfr^m6(IǬ܄JaVdvLu+Í,i\hLT^%\uh!4xDA.ڴ?A }GY"uo4QgG oVo"dEpV+󽔁EQ 9ߋp<ҰDTU%Kݣi۟+u~Bx'䩣fw.ˮ@Bsՠ M+Ib孎ZxG 1o#}+_#j拈-$=!`vp2?WGc#}!s(L&1,]eN5/)Z8GDUy)\OsXqpj20&)ޯ9'zb#)`*2ErEcK :AȈR+ZC\iYmcU $KU=@n4@}k*O\&vK2j4pgTm.HYE=*eA.r^(_(tI% ps& -&\P/JjR%y>S~R-VB>BM TthGЗh!m]XZ!K10/G@Ϟ<δ̒2 z9+eL-h#.]>y@`o/u:='Nj8 K;2l&bqҒD"q嘖-)GdnsƲ pQ;Sbz4_\e*Y,Ҩo cAs=hqhze[!R*52ޯ[5=8L1Θޏ}4 /9a(uApͷu& O kM!R y0Ց]1 kmߙ-Vm@n*3?6u-O١GV3*]yWSHޜgj_ΎE]MȋR,"W;?P&\~kZB,:,ln;Xnx k"= " Jq[wmi+ԪCQ_j$j|3Z+gb06i.M%:nKl-|% &\JΥz ?[Ν4=ȃc|88_֙H[+)SڬSiIv]3a𛪡hÍd̾X*aרjcO]jD;UMV\^L;wnd0rC%Zipi?Z?TK:kgbyMP\wWeYn0$F'(4&8nuKR%=3_)Z5G+y hPKC 5fͨ9@*Ccv_\A+ƃx4Aoh~$ZAB*jmU3)1@<*k J@<Ϛ܃B-G1%b@E:֦8Y;Ŗc,Go]a ~ 5:6kMJZ._)JH衎#tRa3S{~I󼏴V_wޯ<sǙTМjnݪxn[8TSB7"vgI!Φ KMX>IE H;1;-nS[x1]4!ҟG겶ˆcpQD3\S< γHD=PznYXܮ1p|zm,jǩua6^ tMZs\v"OXVpӑ%UIPjLFob E8ldMF)ya%$x.Yo(8\^BgbOڽeBpHɰ6] hQs ˴ص2)nuY9L(v9ZtUU`PsP!NL|W? bZr;x^(IvC1WE#4S,-tNމ6y7t|d˵5%J&t]oEeVtrr0Z&Lk20`|n}d6y=i37԰O.O$ ke د٭Tv,:dIY|*3 h -|foȤfǫ*&O1 4dghB@>zgeJ.Ht8uF%xƮR'ыRd' > 0&ʢȟ5}rYtб QUĒodkf)G׳@{ݻBlդ=8BhWbHl4dɋ/{HAx$r)穈o6yMOTEl fXGֺq(YS23+AgiE4S=M,EfB>Dfn`HUs<R%0Y>MӃJ~oVcW. 6_Ldivw&$}\ {L [~y>@X%:MUVx Hhov0oGyIY%j1FR\|4#&=^|΀^%yA<\""R &2Mu ࡫BI13xqΪ\dR-q>.w' EL+T0c ~*#p Os_qq N5 ӋYu˂ܩ_"FM֏?tU(Bׁ$$|n6Qh*_U߹^;B8-x4uvq$,]MX\S{=[ S. Gj:3IH^>qaNq+W9Bg?UHu(pIJd>CSPq "2p(Ѭuڟ1  &*H#{NYOC!DX=Q_3ndd\(6l#v+n[!o ^<ҁnE%SE;0(%u16qb­,y>Fb}5mBi!DK@,+4~{ FLXW%XA0tuL]B+x紘-dN!Ph-w;GZ\vj_ 6=_oJi,iV4S_.E1Ц7pwuRisu2^Dη0rF^&B;wۋ^}3!lHhg>}蘙bY5y7xb\^oOAF#>|LRe^0 4b.4JC 2v̰96@pO/ E|5wP=4 feJhyVn$O(ƎНc,𖠮yH`۴,7xCkT ۬O!ss\ ъdgcA;?2Hz_&wMaW]B=S{[_," Z.W,3Cm=LU|dTO:9{kQ[dY s#JB2F?DksF,ҰTaԆ\7"nc:b8> V[68n`PRQjb$6}t~jY 1$nVo[Wx|Y;>NM7d"R$Ym?ݠRYwp@zo^˼8ENtcSxVsٹ2"@z ֍(E_*$ݺ~Mu=k tAVBP̎D֣*\/LE k NE1cj\M$ /L{>O[$bޔ&2/v"L:J.]`ʪ“N j]؜%?BhE5kcntH3&"X5_7~ztV_뜱] ?ޅx 8z_U4q_5v9I X󘉜m$r ǿʉ3Г2mM9W ..7.ޫU$d\{%fPTXL<<罕#d*7PIWՄ?O8Cv$Ht57H%});jG{%>],2ҿ>IenD^~xyo;&V OkDWXAk {9aV֊I-Jb>|Ŭ}nY9ƳֵoQ |UByz npVIx-u]T+d7H^Sخ(L R~ЏFY- |)$JbK !f8WO=ȺET$Q~.|:E^و6a[dRǗZڍ C`?R,X%MpV&iX~kuuߋxml:9u[TGkTTI5\n?yi&7P{6xU#IJYL(!0mՉ/&-.1VR2p-儵LkVxk>&.|PhiK6{T?!1).5vxP̝}\۩xlcsZ-a2 $ *D \q|. 3#;fSmC.9#]sPS "A'}zop {'vk2lDVqዡOg`&Ld+T/QufB; sb #vIJvd2{6I`eԂq코H:%caLl < ѾvFEҿ/\C;Ul-hH>v :aNJ@s)2;H~/|g\D u51H2ˁ/-|!$Lm.F4J1RNiׁh@40Ȟ"czp YKDS;c`sGp~~t:l8^IBs8Xy4oCr{bG:  c$-fnkFdYu2􀤆eΓ@Fv ym0~yf)0~5㞣-gEI$8w;f.\z͘W0)8mΒ2DžRgsBi/el#>h״piH حL2<WYEh"wK%ѿM~!lz.[#(v568X89;$ܵ^5#Yj~zgbxMoyk[@03| qF0{>x7XTg`rS.QiL?KhMqtwZ\/ߝ=Z}L}emCBsAPZtʂ7 JpK$'Ĵ;"uMbo2t^4bDZ&T3և!ŪSJﳶUyI Oyv.8i߀̛GdzMH w̜Ya?7M=VvVɣ,#nn|wƚyN2Om?{H-\WўX2TRn>9%.DD-;oTVG3ćc BkߥB| ۣI մפF-APt5G`J^9r1ʼvQ2 xۤ3]iLQ7b*`Ck^Mjy}W#c ~ wb-"L0? גm Da˽+Fb)=lA&0fOyv/~5g'DǵR c]YZ4R~+dw%|@EZGMd&we ګv/=%.U1oe"pэo g=jsլbZq3-gƲ^m`K]TAϚ|ʩąbq3K|RU67AnxIT ,Kq;2j/HB_d`b~`)17E i>'AQ.T`$X,c>`PJfq# >fJ21_+4 8=FVq+4x^RLk-K*\/vjٿ9ض+4 Jˌe:j 9+Of a;|f;Ejbv+)yc< AoLtFbxr6L7M0D~ϗhK㊦^Rn|F5 P`y\PC:_"粖=A'Qє`NJ{Fnk,=e&Z\L!fP ޱ)uRKwT- w Wrzo0HT,0OIYl]zաhRSr mSrCYy`AMT6^=>įۥ8.o2}ws꽒hUg(-O<$g°al$Si8—@1Ir/JNgL K{FJioV7!Yc֦9 zB_cQEX]|E YSO;&XGBJ4KJk:6Eΐ,`:l{IsSV0R䋳[&cYw{BM %қЮ@;^MƧݏCE6_m3zGk`6ggA' aǸMZUNKw Dۭ["fC@73톼eDRwES]o̸6 k˵j [A4*;}C_j.ȩ?@i<+CoȒ,h̵h侐劃{xDz#Z5:D"%L証4J8" ![T"c_!E!w:%\k9cT:9JHӉإQ~ v죵w.YYB+Y[[6٦ ( v9eZ }.%垁] 63J-?g"򇉀Cڪ szz?/߭҄>@'E $D)\f0 }r&vR K7[xU<|9J!! (w={wۼqsec)L7}5BWq3E=r#kYGve0?紽ٲrEryE%^j؁ZꪞY \ܠhU{& 2t ֲ FJ wESIO~YВ Vk~˵e0fR9w+A];+5RNJi!kCxo8d ?\0rUZ%FO+`?Uf* KEOxYouݢ Nڑz2=7rTJ>faB;1kIߣ]e`d!^m=䅿z4@m-@e%`&H݈&f׮#=5O5 j!aXUuXjN1l|3Q3ʴDzof.6"(Rw' |{卋B[/T@GuG4 I =S"#q qQ(|JCZp抄3PҺܷ9L8[ߐ-7*2\OE& S؄Փ z^B>Av^6Шgh*+;%|M$2AU >j3fo_$MW[Xv/ LӻLN'Y,pt_{PC8SYKs/ aKg izFX;n.i:)Ixv "x0bR8K=ЃgMTQ0擾'@3y\1~8/Ł7&Uk0FDHW,- R'I Ù]WAv<G9i%am8l'.1D.NeJN!Κyw~Mh. GYaFhj>nYe^q.hs?<Ƅ 5$j^`A46>h0c$;,v 4T]8/fw'=ARTҦ l `C ((]<zu1p %cp+~M R%G[:WF@Ci3u٪J3ಠ$U7bF-`KS,8s$U؟=oyH`x v"Q(g@И Ka,G'VCRǥK4Ļ- =_ocv~eq]\΅xA<#u=`tzCX^L6X]W @fB1Z4cH!be4 G4C??Wj/)7/^JE 80T7d licN+8FHg2r&&͕S$ѿ~9Ype?pR/f*-]Ѧ/9#וy#lRPI+S]_\}!A-N4:FB-DkQoX`֡R]龦s`'.>/A")2?um]"LU%͸N<( D' K_%.^Qz/X'}_Py:tG 36 WZ&z__JoNǼ2CMZ`Sڑ>1Ihq4{Zd1wsEi:З+%'ݠtܳU0L+Ms} T.\Q%UǞgb[{_a¯Â@Zd+YQmK iP[%&* o8Y@QN cJe guHn/I(6>b.:  55-Rx5TРΓ 0٣J^1xƥZy ekJ\o%@g(>kO&DG"h;{Sx_W b6&MfGYyBq^wg#^+hk.x 2H^o@q >%Y3a={(ܒ)iB<8ІNtC,Hۧ"DR v[i I"sK$ qptXs{tZrnujlUU6e|㤑,tجa?<⬷Y%tʂ}W6(bzD)~s>hWfcJ0pI&&Ǵ~EFMj)IUg@&/Ö=ߨwPi!:Vs?;)}XS;Ԟ.~OBf- yG@cZ1{C 1n z|5W~H-[f0'Ղ5@uqzH?B +rߥیL,m,v8C/437{7.Ik@d.o\mJ3Nܡ9U nb#!CB ͊|:SNJSgsZig%'u+z vMPѳ-|N] X*L".a̧|oBoT-qFs? Y V/7[YLc9uc^2}NaDZGjnvbalWڨu®Gp9D-gVlZХ=SE7̈Ŗ ;c ފV´%] WŞBʉ_W?@ <bҋl>K ڷOR qAdiF eZ\컚I3#25Lhp?cCO 줇|-:ӍU IђAu - i \K*Zy9B2u߁>sͯ#o%X(͙2F.c=1yy1gY/ 6ސ1z Ejvfeߦ YB22_)@xr6Nռs~"$q.grQ2+'ۤ;hә:P Õ&GIy3- gYGbgw2u9pfqf'=ćX_)M7}?&g0С#6{,E FNa^*F"q=&aշoJLd= $?ML {])7vՄѓGb=pv@VA ?wBNU^Dq;A;qr<;< ڠj }v s'h}5bTT0/nϕQK[G&Ϻ"5S;"$^OˁQ۵!!26Z'fF{;E-^/j뫣Vkxt[p\;/;,̾T\gHKs( ܁:>wWeiSz&]5*4nܧJ7aCAzȇ>$y <+Cڗ)%:>]vџ?9Ӿ}Y*T 2>G6$`B @gi?]tj\clT<*_G{ۀV2K DOS-~/cS_GU V5#E>#nI鶚OF8RdhQpԘܯ (ƀ9FT6F#Rם`zl-OcϘeU % B^{_LTKGƒ}JF>e5ڗc(s!(%4#xY!򿄎Qn(㻠OeIE~Zu~(YÞf¹ODY ZSH!3bб+{-2yRRA9dsx]hP1j)fdUJ|1 nu.R|dDD,tS|o}wn K/sA|Hl+ƛn#gy$:fm }asAFC՚GkZ,+'%*XMD>VI H/㻽y V?/bƫf_a *jhEt 2-Qjыr҂-RC >oYdD'䢘;NX1p9GcӑA7= .}=n~sӸ"I0I 0SxtCх~_oOÌC3;zܞe=ݔI-[}0ö́Yu$ܼڮW@WϜo oLNZYdjS4OTDVZ f j ЬcV=W֑,aS+n㬻c.\?l{Ysp: !`0 ڋTyD$*b{+bu?1|Y!}Z4j80ty[1 ܄zǼqҗ 4N_uBK=ས:`0;8oJ8j4X ?jjcLV #{3) ʟUvХɵ XhɔZ2v&T]8vH 4S3`Q1 ۩nb[Sr/]AP&[Cav*B2 qV {KZ(g{?|a_WzoR!/us;f:NF$+6,/}{W`@!Lk# M;u/q^.&<_(LuY":p@(71ĩ ;Bd{s$?T銵,Ch([,pAY_`\*d$c#\6/ pGqٿUɗɦ >-2䛚j^;xAf`-{ T*d e2r_z I;PgeS袎ޜ]*$BSIX=, V6A-F8̈fˈpy tGx*qI=޽g\H1ihgQC}sy<ۋ;40+](qi \\੝~S' [L,-CuT7ԛ|͎fƊ T"B:4[XC2HȎ0e$4 ٭kcM -\yHոZt 7)(&);OXYn,\;g2s3>x[qq:H, q@KGfX!xoƀjOs0IP/26$Z)L"q7je=i%seMhL7 lvR2*]4f, yɠڭeoͧXJU nJ\_I<:gV;a\(20qKn-zHc _ ]g͢"J`YNJɍN)$}Ƃ#d7ˢO&/`~ۯ ?I␍8>9J`,IIo.q&soolQCc)҅"o")o, GPשSb-q^S4=kͿMBF Xh,S@hlC)@">{(%#*=Q)|܁7O,[zVe˛ 9J͒76"5x ^&$X FqRZMp[mBKA+0~+)Njh/bd2Gv?Jc9YIQv uAet[5̃DjCrfWۺ~͍K ?oAR8V#l%."88OO{*!!<pIYBj܌x3$Ykdo;EHA$@(s1cլ]-o;p/$䙙T {YLBY%\17 dN]a G~4k$OH PD)Y[|u2q24[ 띑ԷutE~g_KDejМ30ܰya)"4`Zv<{X账` S3Hm%B5u`/S&0M êNy[@g!E6glq5rXs9"f« M^Y~$A-A V+eF^sDs7sAD+AD 2=<@) V%>˃)]mzz(PvNSL<:L*I^FK|Tr`|F@YX!&A"ɞrS &}S>mD,s#Obd$۲{XONm R~l>] d'H;x ms︎A9`dG*(l4:p.pEP1ŴP}ŐMo:q瘰࣠nNuoJuTGg>ܟN N)e#@y3iY=e=%:f[i {-ǤWڤ,|,-NbFmyGlzm0w^~vt3"&DDLQ?f \FZjN_iHEV;B:g.e%#A?~ ;g`)_^LbGN1.`YYIYjYʩЁ)O 02dƍhU}v*%SS?rlg.x=!?.+ܤr!7Br)b]sDD/ѧB)"ҥe0?:u)X]nSj[{TFi̫KjR[}$4UsNW qsTb/RRW$h~#:i42קrndW}Nw e99Nv)i-'#gzCk#xjӂfJhrQ'Xf_x'Т!.Nwq#- 8AZbn~ikVʡ, &leT[xz$Dy/*TyʶJaHM+"We@tT'Cj-҈p)DbKLwtu+X%}Zg3ĉpjeV炶3 nc\P|SFxCS.E@v=Aо>{3 (A(֦/QK] bD j6Z$~ NPza7xQ+䕗ۼNESCISk58Q 3Hp4Z3Mr7V ɶ(PW)ґآlP䀣`oP D4 (\?ʕ>_ }5c~p޹!A E2f|;2 x<ߴResu;~b`;?;ͻfFf-+vމ ^\fnRMVa'7u>1 ZPoU?&R4o,鄜˹A@Wv&VMg@hn%dS!d۩IxDl+>[SHQT04t#{X4=F4(^oyNѻ%v7o(FV%5T^0h. !V yc$9?ORײHBmJ_"Yhf]s9[duڜ!XSR{lɥ'~ͽLnMˆ|ı'&F 0. r_{+ iq;6b{Mwj;`a\TːoE={@EPx]Il><}fyB[,:-OHGͿ1>YХpn J{H*Va" 3}D_ލ>56PQjެ9q"iֵl0~؁r +=S{̰?դ.;փHi*"l\kF@e+ fyLWAկg;%1r-b!@ _k/FSYؙ$ mXO;j7;[%uLkz&Г?]1[q4Kj(ȅRZ:-50 ogͤ},x/!4[_aP ?ӈ+rxMFsd6]! r ķv۫VGIpR:~ٸx-|טI*!I d*%D 8xQ9kBSD4t|'eUس/A>[J'W6ZĬL(ES~Mٱ<ޒ$y-XiݒE]ktMtㅅh .cJgl$p fc)翜_YNis~CMzԻv }d#$Z2 V_d )㢅6FT$qg J 0CM<;ao] QEn§sSW}8H;q{aq컒q| _߱lb v:J'~'p;-X: tS4Z$7=- Fuߦu]\O8&j!klӐ#;% ww EAt}1F?X&("AYeFh_KQ{ i"KTc=uyÙb~+j(&”yH)5sCv@}Zў`E^la\vE5tg~mC2%ʊ-bz>%{a%RaJQmkg$3|boy,ܩvF:3v[)JN6e_XEz8|NT'/O9Q<^|&5"cOԉ[c:@ -؛īMG2 `WAN-)_E"WhsIoHv*]9 QeftJ"n^b1V"!z%EfI{ܶ잰s)dvdQ$mum^zF|Rm7esW|MCEo{q+NX+2jw!QzzHbLZ'L=>SBMijl%Esuf ,E1sZkYƼS)IW&tʲTbi*+hNAbƻx?& KrɠϮbO']ٖ[(* tlXz$7qCeeJލDuT$k<.|F Χ3h&oT)#nRcrdп}Huoj*E4яO^;X` L{;gp Jg?\!H}ö?#I x @uZlࠗ/==p/Ubk^t}.U6PiT](\_M=aW80!b\lT}ff7wbsdD%n+W=\/7mJG8{?W͂0XOFa;.yNxa*$u lZ:I,g4PT^Y*;SMYm3sV*Piw)tc h^1tج"2KVis'9jL۽⭦G*@$S^*<+!PĮla>j_8cNP?*F3Gu|$ 49}q<h3NxCJOB4KE{R| VyQ .@(=-sĔv :_EsJP:Z׊N-YEC*28ȒuG4eAPϏBJ_gJ J/PH RBido]}RPF><|S_̮25z<ɀu .Ζ \l\hi*G5voo_-i>_7EA~:̶V"1p襗g:;X!F\,h٨X9xXDg_δѴ:FE#/[K=4zQw}Cu8/0!baipL~J}DCt3N]`9^ҽ-0\|87"o:2az`>}B'fk5l5rFRf {^CS6,q\^D72'ϝiscf1~U_A~dW C&9tݥwBEW{yI* QXʊF{Ԗu_[ ([~Ǧ%C)N[$9kIjs]ī]7[3pL8j6nBkMcbF9uIU= m RV#FBzSuшFMwQL8QƆ_chtBy %Cl\< EEZQ1AqFف*XcdQTá"@FtgARI:>\ VI^pκ#Ty⪭4OO11!jtˌd5^!(brl04h4OuQ;k=P:ue%bR'dDbAP!3JdYRhZpƽdS;ɔ[gP)`Fmҗ,!i״%ˮՋ+"zslyG">P"sioUqFe>Zr!ʤL,3Y` (& egdMG[#|?oN-~û-{@dЈƤPQ8cT𾆣{ ǣၬeav>dr,nuf+UjFD0TC‡oF<omt4ڨeU zK5=H{7F3|~cwnYQGk:g!qL+U֧! tyfTSu6F %:sFB.R26hKsE+j$xY BT"dkf{yVb Q%RJb0ki85-x0/$˺b2|5cd*XVi  ǝq!L3^x*vWEڪ/1KZuj%4 @h?f2UUԑ!w" j] A7೒ĩW؟0\#䲪rNw> 76sS69r3M>v SN x(EU)'1>μk{H/;tEa)ohx P?d Pnq+T"ti zgCȜxr{.m `9>; OK( LB qtڅe?Z$[NcI$ǧZ}yUq th]y:2|t29NHWc. y c*nMZ+?L{cr-cN}pHKv#c%utkޝ3"n 2-g>`) 97S) x :_l7s ]d0I(<`aVWn(gs+Dk;8Zb\@$BOȬF`s4R} 1"8AXARNO וetK[ࠅTlYE91]C̘KQ}in7H3&~aLm~ WVm"0ȍaJ>Ad.,qOcT:6U 6V^ %]yٷ8\8>Չr9JQ͢nm&? 09[޼꓈\?TtۆOZ뀷2ӂhK d]Y8L d%Z3*FfV H3+*κj|+ L_nR\U~Qe;$>^8n|tRsBIn@BYSM#/"{8+N՛Bl[&ՂXm*u,|{6\ޑ2ݓ5Q5%T򠐞7iej|ntYɕC*)Pg;NG9ZNuٮ}u沾_ ֋#2cMAc~Yg 3Gz:>6Hkp@郎ExaR;q/nowGGR~INT=qm 69ѿO56Kx4QyfGBpjD|⏏IGTJ7Ҩ[˓&uzg%Psj^Ebn7I7 `Nmʆ! 6O4I< ɶP<&Wp6r44^Ĺ7 *cHw݆aeIx^˔|!E: [~1tKX)3Ɲ9 Z88Up?dW=_;wO9lo"X>j]9#Ti:"2{b~&SpQpпLA*+E-4%XUWdiĢއ!EM({MmO t4ZKޗ=Z;6 [‹Co3B1-vx:P(Q`ɑnbg0qcE8BI@Mq2 1_2[y\eGEWqsܶ;r[5Z!*tzVa/ vLB,\ 58QC̦%חNqXk}Y'9.GKIPA<=±k R!w+ulڥ*!SvuLjӁCП bgA~F"Q"vw q̄e}A9 TeKXs09ʆYM9\o 9ɷ9ˡUGe6|&h匋#MژYb5֕"o{l^>u[J ;绕z(+r)e I 'zT mrq;s5cy5‡?.k$m!>5;ć&D,&_?Feu7=U3STf .U{5w%NexZc (Յ񒝘[SSဥ~SYJ+&\yE(- qsze 8$eʮo &A@E#+`J bK(" ))I+Sº)VX*1UzZ5PKބ m$_<~/!b:Ok,Xm̒ԴD5(eKhTԊOųlI^wԵA:,FPkf)hڠ҅ά-'&X?wB@|VsV\NtqCO7Ԥ+ŝs o Q>.$}P%s^ma<)셦E/ @";}J"[p)ޘ~|&V-6*?E`!Us?T/!%_I8r,1q`HrQ>}h [\Z~-R%^.&^NSjYa2p `\Y6TY?y˷p;0!=ƽ݆16c!lGoO+ ?m0"%5AY8mc0' wr 뜏[a3lE Cn%^ziU*Ʊ/!n: D~5FZ ^R^f} jrYݻH80-"UE;]JsTf6o-86IsJ*ݽ‘`UؓkQ?̣%8S;{fRMR1!BK|ckĻBtt5_qnәGHPk,4Q|*UeҶ)u82gX~.VponhJI5EG.Dԓ4o@u[#|<r;vWD [u^.Y}*,+l,XNy*MaEH5ө Òp=}TAȐv-(N@&ZNOw >ؑԡUIܡeq!$F tR?젼ֱgxrOD *L+`ZE0x)N2@3@=+]3ňor(CܣęFfrzWG||Ȭ.u@!&'4:p֪E~CV/1 ބ4߾t2Q7hkz.{CпC 7dZH2ΜZ3g=w38m2hG8Y i.ݰmK3J_ɓN{,RbO`3V ~-s_fH[ ?oyF.6؋~3^8@[˛I; ۔ڋz q&s!aV]U/KG4UUN0€| $Z?#\ E*ƒ^+؍6jJu+AP2a8=T-qo4-@XnlKfSxG8N/۸K6}Ḷ0Gv5b3;wX$2[uGf )YMV P!B`!CyW-qޭ,Hdt]K%MZՐօFE([t,"㑡M.:d_ޢh@d'U󐌚FHU\ u衪'c9_U*Z o:bLT=|2 u"yBoZZUe ˋibْC-@6_KQ ٻ`%49#^pI4׉Jh`'.GcejyyU?ڪW!aAS5!Zu}b&8K~{q=;$~.«Ԗ#TE quJ-]u ֟*1(4*CTMhi9 }=+EjRe(fS:>;ap )⩃qҩʕʊ/,&z;E^f"09O3nLb&P#CN݌j}XǽE6$["D@3Od~"(lL_WO@K}Bq@Q[nqt~CmSDF^O% csj K1.EPZ La97d0C O,s:AM39ɨ]½"+6B# {ȡ\gk_{#zN/8W Ҷ >je.e~/kbNDm7)  S]@cR_w2I&a7ڨ,avl"âæE{ 2`D1FE $v4TηH+4Txb=ǃ<`s9<8ra0@P`^f(;hGܚJBΘqQt"I1NV^vߤsGEB(O_`Y寯.,ƾʟjt6U iJe!>0IuHǴM*[ZH*T2?۝C2[ Y?]n=X [LdqP}YEk^>r(XbY,pOυy0و},ԈvLJ?W0%-=sբ(ܳs='(pB6lp 5fEQ!EXCDtхc}F;P_!q1{G@gi++j׵5 py)>c:f]: Psڵ]TT//^klhjrzT@:UJ`+jBr$?=B_#B7s1 "0WO VEWZUr~h!\h\>ӳ/p 5vgvZw`Q&Кz-όPk‡9&Y&\5ܧ2-#aI"vv{ږa\HeF)Жi&); }=.VgA]nO@cVPуշX2uu}?_4d|)A+M61J?ID{䈀@u]U5+8Y%FG/Yzͻ?Kd">-H/}?cy-_]*`Y9իd*_feUSV>2$q3l"cp̅@ΜLƒ}{>m;yRzAX')TKdxrBj 0S`aܳ1BX\l7N>Mld#.#NZQRy3DRk< #b*=kXO0#$ Y8ح'9s_0'LǾc{l0PbLjpwU(x7*ǶQkjC (|.qu jnR xE؝O` YDd:VGT|䭉% D|v?d` –]e\⤋>I182xv߈ߵ Fgr@|(UƫJ1c)蹒 Rt /yӄ _+xa (į.$xBU/H% x*f$AxOJ;Rldc,<K_ ޴3;Լ@gu [5f仌VFV"0,Hׅ>h3C9 ӐxOu's׺ΩOY{qǰ!6f? 2JС<֓ոO:$ .(~,n"rw[6؞XT/ L~oPspO`؃R+!k?.~Ԟ|f-0<3v;:z0 Dͤ ]D֚wMEiKi~^h@nS,xV|sΡ"kƑ2`:ƂϤ" zzFOP I!|= fzr^ ;) qͺ,!qNxEtI%j>n׌iT pԣSڑfk9ٟ?wB.p>:ZEo xԨ)e{Ӹ[pG <>,,apwŃ~Wv+?'DXVVNPKs'S(YlfU^!-C\_I &b1k/&8uq \خ^&z>pM/awlA# gJPOPgi2\t_iz(;%ΨxlBj)D/K}9OxB (R>V*`cJ[ >EYDh2-~9ShvK/kXeMgx  J4va*h+sPӦLPy˙H<{F"P%{+7渷xvs!3]^O}x]O|C(:Av88u7)GҚHl}#3Tt59(ej!h>B2,(!oX_.t2 App>fg =W[GI]Nv,q$]% q peB& kw,YJ(tȣ&xڀ/BoǷ@V=1f{O/9*L2!.pl4TEshw[ qg4Y]PY,,R vMa`t4{2+;3Y%uZPK 0"V8i"s [RBw>zM1D`9R#yjI6EM3N=0>u3q5 P 7ۛ ~\؊n_ӬpOҙt%attꟋ9 ɢ,3w%` 7)9S6! wyg SBX87*׾/[10#p!$f< rg_OLZ&ap)>ζ?G.0ԭ}m,`J'^Aw!%ny30L3|oOG ,GZD^=3R/ Ke ySNueоbwe97:W&\yӹTjYv-&GO OUE"6f3|HQQ̐KSSa ۫}iQ'WݛڎRc!Esq|n송N;=;QcBm3@6sVGdlQoIU",Ոڜ7闂6kɱTbb@IKͿnW䱾yfHl`KNQA{b٫/CZhaJWA1f CYHWZÕp]߃sq6/u3k&df> $e n /mTyxBxy)W dHy}2t/vD|sĂI2~|v 0~ch68n=CP/([DRQ%!H {r&'=e90td5KEwjNL7c8 Vxv#fh [F 5̎ba o8D0 >&/+A7ڷ+/[se#cd}>ms63DzKn'8I /'Ǿ#ް!}%얱r}_x_+~"}eN~/e U37j4Xw  >h,7z,w#ÛcjgO6m>`1z%,^`oH߇)?Z%ԝ._z7GcpR+%{J:qW^hLj-_RQg&G ")RM;u@zD^f e`g4 HrD^qUJ@5׎SBy5jFݨCqG O}nNs5;{396&VKt(5S|la~V]ջQZmVnՇ\ZIE]ӣZ=iҾBZ.νl6|,Lhnծݝ#,@O9\ՠlTp6ckH>dD9SK8=-:לYH!P绬a,u=]F8Ffnko3ЭCw_ *j[o%g"VDu@OoocJ ꒱4#c/Y t %S-؍@Mgu]vFy 20E0;!_70F^ p5T6jr'5.Sh7&}NlP`b|G݌U('iS /-!a;=#}_ddC@5*89ֶ1~Vp3b?j6z GY]|{ @5)1Esڅ \בs?[db@|•J+*Bz!$sta.Zw8Tia`zԟ渴$&t+ Cbv[ZQOe>hܺ)Tn zWn<[u 7sڿ0НC <؏1OBUr>Z)z^u(rP0 $ԱBl:3ꂒKEd[7w6<m3'Bޘ®^M>R?w~2Ui@5*f֗"F|:vzv)kޔݪtiFC gP_ iE!_FE= "BI\&Y͚tT: N)bVWѷ6'&6Ai?ߖ+5pJҏ\3o|jKAj:Ƣ;]-=<,Yk&2,ևq 6]ޖ>2c"!O^M9Yj *1! ːTxJqᨓ.2R]ttN[  "N[^2 y _!9Knfg"R!(bۇL$h%gXtt3v4&Ì}`}2ͤ;jaQ&H+nQsOa{O@}x&=@g-$R#8Y=&$6_Ė5/`rr ݋/ˤW9$}W(Y=A` n(٫aj,Ose$v Gf+!r7޹ɬ^~u~}Q 1r/s1ߴz W/WP6H-aےJ 땩"aͷ˫G( <1ϐְ֐Eٯ77љgdLDŽgTꢿ5YZ Hۨ# u]^>EQ4jB-m>wV%n]*z ~dO&cdL0:Rҁt G9ϨoZrN=@M۝ wwZA_ЪG "w@<OH h1UVBo FoL^<TڽZ0({~ K+~!O"@ςL^ ٣[ML"U;j_ :FsWqv[5`e:'' rW/&7I Xs_xH{銩T{6'i/(UA;?.`L 穢9\xɌ(a6/fhl"F%VjkF?c$F:7; 5d;,sCC[ LMn&X.ӳSW`#%>wg! * >*Љ6]1f7[0`> = du\t2%b&(}1Y.9~! )!]RO5 [ ;+o5sJfmR^7DnI:a@=x!V"tBjR>tkk xזY2fB!FvrIQ WxCM!~d"M+7/GE%(MNI\:^φN|{")Y.DFO#';osح?O<dI+q}"-Ժ1~L϶VXrKE>ұ)"PRu^`6i]%w'-angں櫅Y6p ; aJ<^p^ؾ1.sX(;ٔ9-, +T$d;ydDuVn05r9E7…qТX(4:MCގ 04jY&_%j743meh{GRusW}WA'@XuꞠ06S ߉(;E'l3#-0B4bP=u./Ds۪kG=)A%Tjt o/Ҷ@jnx0~!r"6JcdhH)۠\ˬTkc d=RN!¬NZK9M1SjHz;#~1B"5Irx,aϜy* 2 $9 S]!"]DN% .!8>3ieZ"a ~*^y<VfY,8k cBKvSCdrKױ aNq|E™w^U5(Hq 'R$5p .7v/ n/ UzQؼc]b/GFE- @S䲘hOMu跢3Ӡ_mB݂E5f%RcY\6*ul$3< пdb_sHiv\ )&*U!fR0XsX/ Snkc\.XsHaei}~lV0~~_e ¯xi黎~z:z/2E2ewh5Zkqwl2-DVgmQ,m-3pCeDŽebhB/'袤 bOv7B +#\m*mn<~Zo|RO^s9kjx_*<-VD϶.Z˽t`^4둌Amޱ̢DrzSqtSѸZy*|O4Al 5Pbͯnj%"xz 0k~۪w*u@Q#ofL̲+$c%/O+\Ѭņ:;N /4xmRK3sR@UE@+/S1ӊa@;C1r zAu;-f$]/ dyQK3-)x1A9߄s Z#3zHHi`&IJ#xL(!IǾ௘=)k4="Ord5*n'a*>Y;&-\2ul?H42$i7г-Q8^ǔդ+\qC;j&#Aw4,;s-p=yJpG|9*-PG5g&&ڇ"Uc>EѵdLlog;ww j)Q^djb>?{ r^K7J;7`ohC5H+kxJ5Ԭ=Su?E[~@cB~B{Ee4Fc`̣&0iykSCsIaL|8@P 6,k"pimr&FͨҙP< KX_9dCP T$=dl]hğtdѺ>ȉ"AZSn VSVkPGjYе{VJ.l]Y:7/g'ޮ0 DbF LfjLӬ7)0 b;V<Op08W RyxdǼ7 G>vuHxqv y7L+v~+Ě:t]c·49/6)w&y'8-a* Q/Hfi7F RBKŠmd~ S^F,E TAc0H2 d  |(WBCI(RHe0 7, ׶`f$d<>6>)\/!Zq_7ôIwcէ̲3G-{Ru}h8/2=^ UhLK"휫/mAf}zr7;'+ Fmcr^R_y&=y!Vh'F9`zeq7֘AKo?%v b*ъxEaU!d\P a TCK+x%9xjeKF,MʄvTsOnEe+ mYǫ>CӪ:7adOݒ2m!V)|^Y y\zET*vk,c >_zKtL97ݻj rbjX~QTN\_ðS][)ryyWz*ʟl )w>_Y[lZ=5jM鱉@.#W$'4V~2ROve'?J+mwk" @g7dbSJ+"&%WLo9X:(c*~MH! \eI0iP^vowwUlUǟR? W!Ճ`~ТkeVaeln;%#.|_^[0*zE+nMzjRmٓ(E ǡ=:h:UUVQ]3Hp㹓~*HS}#& H J0S;wဳ~B=+8&nKU.+)`sfd~1-g#4OJ?}h)a֪jO~ō JSeQ2P@ eǷ #5yW0okKP\݉؈_;-1u$Ȩza!;75Ւ曆٣Z6VutRS0L?fށ9 *f(nwBSdk/f%a.G/EpśAmjǺ:Gf cˉ޳ӿBc*D}+\}n^`=i3TƄ9kqE*b&}n9[^M=Ji }ϭ@VD}W@r{ :gaA0PO'ʘ/~}S;|QEeZ5è}RWTl܇XZv;{߾d'4+^ $9Wsl6'Xpa~|U6"p\ȇjooځZb?tj M͟-`Z9dVeFS5`v UrYk"r1(2]R 8%L0%;&?E#@ӭeSV'2˕xTdeVoc->1|?0+1e%0Mb17 RҺޘ\O7-0;"7BtmQp\ FJ\<)զY HƥMz+q0ΜOp-ۮP2?\N(dSc> ~84՜wu;a6vT=].85b$!y?ItܘB`@ri fy'5OV`%"RHZSZ2*qvRGV7[l7Cn^N2)k NS!+14vjVQ24x!BiAΤ%% hj43\eBco\,j6?if&_eCK .f*)g`tD7٤1oyb)Y":i S /XnjL`1=}&7;2n^墓ay9P}=]Hxͽr~{.٢ Lׄ)b~dBQNM"-h+/WOu]@C~eQs5U8gu04:YM֍8_#-V EX1"9md"X˰<>"]F]Cͺ&co3fN&@ɖh '`<.)M< kFԮsV@;YF+r7||9Wҩ<=JҺ9Jjƍ"xjP j9q<}0,E۶!@5ZhO_0rg Dޗx=(3Uu탇h^]ѨEYyMlm|MFiցseR<`v-udn I'dxEYΏ[2O>d4eZ:aKwrPښcEH:%q3닭@:o YNfp>TovCs٪Cn&)E\@Fl>f}Sn9'8qmU\9ܒTjI%<+#<\NG,*4H#Nm…wFMy&BB'I>d5@ȵ k5|R*C-*,WHʚKhj:;6Q+L Ed_\0J e'eCH$dnC*WIَcRDhgkK㶀  "kZv#LI\Y6Q&x xmFFX&Wf xښtlמoB\dp%ҺdZy֡ˇ!Zom}%B/Kv"{󅗅sƜL50/ø_e2qۧBwIϟ,_p$gNj<&; Ӧ6I°^$[m1~I 'u)9.kG2S1 g(UL;L/tҢ'FHRbƅ .:3_| lI:疮^tadĎcMtz \Lڬ-+d /{"S~k\_ 8.Tꢎ#ԽJO"ء0k @XgFcMx#q0FbEj)C1P-]T-0XZ[D[q0mWO&;wa+!MTyg 6Rx;?7< GN3b)Pa}(7w.W7AFz6@Lr'.FJsdg}U?|bi2B8wb240 R츭r`u;d\+3+\+>%;k"Kj)Lt(+:UzjLWS9Mޝb/^BnYKEc8:&3JI"쮽c"SeyOm@*E34Tg/^QxPX#w)9I-WRd0 o  in%mpvP>ըsߪ>o0b uLn.q8 [ڭ;*'>][p_n9jzrJLjYH5z`\^L8 pTO S?n$/Mߒ5Ԁo\x 3i#;,z8a-wH*K5J|ߩe3n"M,ҪNf;jlsx(Cw0v_EazyUl}˙wi΍ԙJR]ZhRu. Q.!FM՜'Y ۉzurkoTk$l dg[2:F4B]FKv2ɍ@Ne.i) $f,t#H #2>nxΞʁ6L帬UIo `O!;?E8.%T aӔx|d?~]iebʀ.a# /}^U:$ #XT"H~{֦"kPCUaRɿ=df/v0=`qQXſK=e}G.bfF0!{v/IgU!]fsv@@?mbUD|;ة~w'v&.\<Œ"}t)>GzߠYXll5_x'K/v/v 컴@NN"㍺ur}xQىAt'm|,{7PL~"4)H9no.鳀"ӳZᙷgL.! # ޙ;t/ȓ"*U_R E) Bdu ߃ ̄zp%2;%Y 7=TVT/35SfsTWI;_uo8EG0HCqsb#cJ3mt,)s>߾ V}qGA=|1NjzުH,f\Il{QϢ}|##㰒Y+9,} :iN}3W+%J%w\Uܿ㪹QzXbh*]CHfߨaJ?7{%re 9mb L=`v: =!e2IJM45?˴M-d=p]f, # ?@. vvq>{Pr@`_qH\zNNg4M5I Ro1vF~<}Z_M b(> 1]DkmIW0"r)U(,_Z)XNk~1Ե61v*'dS\>Ӧ]z9+!EaFh/lDo(Au!ac)}5d!!X4U(6I6+ftl'E/}V\+*yݘ<MrZw%ɬ2 j(ڌx<.-@S62]鴵Vw#DuLUn4>8g5̸GGGєJaEqNj2/BssU/UHmKܨDvdJ4ǝ< ɶOaDf}?_)N6RY}كQ $(9P13Ov\ fY@Bsp ,hW0̢B?bD`b]0,䉼jK4{OeL4B[~8~up#UiiDtL0Ud{f&"8ӌg:+CWbbM '^`x"Ic*d|8ͺ%#57^8f82(^jڎ݈Ү$H5r+*+yWDG(D=8s@ W+4O7I5f nran}՘bkgoƷA9IKf#歵Nti?sG֔ {m7c0o7ďҝm 0x'ǍvMas 0D[njXpa:*G/c̊ NLK6.e |m oc'e-%81*}yeqw6L֥2W:R~/A.~ViQqwVYaQ|>-\Wǃ9`8 tgZo\X vRVkJԦ'T1{ΉrӝOIFY ZD_]Ȑ~ :NCA&&ҜٯKhw Ȩ+2u¦dQ?33v/Q̝7 ~tyݣG@b6 Y3|(zzW^ԽS/N'W pyHdAe&RUQwz#a7!H?4'7C* <*ߵ=' NxQmҺo0\ffJcޑ %=r;J^|FDξ骭,^2Q:$M?GCZ& +dfYlC N0EYu-o5㳴BLG-G ˀU(C@>:hh7 6ybpBqlT>#_~l(\®_N19Y때V}>?_"B)'yctkPu9{ii_b@ybodqe)c3d,@lM̃ u}y/ gyc%3C#gj~Fe!q`0ɹgj'pgNL2w`8aé`Ⱦ7&bn!g& i>˗Nb>ޝ'hN6KU |'tx>@ !aX20< Uȋյh D ЋֽFb՘](i"t?~_NS9<厳~}vSc]ncd,'5d\8I'O 1=;E}|Ԓ,v! t80`Q߬hȘ1 اsH 3?zlKMc?4h\@iҗk7 |uS6o3ߩ`FDM[zb(},S_ԴzV߾4 uZ('2y`f;o;HP$~ŧ3Վ-ǔ5hpò@?W]2''w(Gb̚|Ѵwіmfw#hJS< W>9gHja X{*K)e_gb"nI((QE=gʹE׭x}fiėaHVgS#j/H /^ J($! ^S#eaV4r&tل#7Q&+,z&I+mXuimi_q$ EjK c?g\FY2١O&1~Vy#Ll˂y#bVԡ$]=I &wD4Ϸ!{! DL'¥A|^+g`^};iK)98VH5DMYgDRN%qh)D6d%GqB$ʾkiw& 7HnkKԍXE J.#PazN TG^[mŘG ƭ{c~D ]FE tt: oTiHBfMD[0a??.:+MM v"F= ѪE5 8\1z?-f\2oNtS1TQ%v;Nv(|&ֺ2qU|0Jxn&'ǡP+b34]ZTPQf.ہh~B] L1!:i.AM^~ :^rLjv{'Ԗʘs#CSgowR[Ղ ζۂYoYԡl Ӝ;ouN3ōT;8x*#mV\dN<OVj7YZ@E%-lBv&G=v ܋A{9j-Q:;g㣷x/07bsxy#ɣo,CԴ4+#Mdt\x_Vn6څ7bV%g1a);L,9'ey52쀈|eD=mL`?og4ZUvvK /⮅orYl`^U; |j}̴}~oջHJSy{Y9([$\AA| 3 CHrN>2K8:/x/̹'/Y'q ]9g(`."U!Jz0NrCD 0TdpU ~JD~H|]31]!ЬLePÇE&6wz-5z]Π Fu?Yf-c^c[(H GX%~^0x*f?֏`JJ4Wyx&OzA."ppUr!jǻ?2P n{Az_$C !YBvK=h=[?>y @DT=&OjN Ө0;jZbm-ܙg>wҡPM"a :N38JU\;_]vLҌ~{*IJzM@4R>c cZt{(-|$cȤ}TG$N@T<6wގ5I<"^z`~ u;D﬷(Ept{#|b[K\l5:s:ط$H (Vn{/nE7Dx'Q< ={9rhJ4=i-A < DCO\JJ 3VhVrI@BtJ+rn|l}2IJ+:'ҷPGR^bZB`Z 6b2Է %Oަ+xBTJaմ3SC;׉;=xz=Yp JJK6W> @@VrQmq_:*(\ʸ7am~b srEzo;~9˔5\[!_b8'Rh?<{Z,e D@ %<J9Du!2 ğ.< g_-+$Os1©y:w:]<4 &#r~TFSUԤ=ҋK*v# dv $CfR{W|8HqJ t~ c32d/`z'gT g" *.K׭MXSl0Ty =KdphGapFm Qún~#Yw,,CW3={&Ex_v'K .veg ƫ̲,NmˑQx0n8M(t)ik$+dykaJ٩2XM=,ѡFWO P~ ՙ6ߜ!;?iW-lT]ݳhOȳPQ}x\jljS :b2gl(I\`#$%g>j\SMl S\XvDxwR*^X&\f;CZx]%dO'>A⛆:c9n,K;-{uta!]}\x' (?8IK)=?]DSDrYPMp4TSU"^j 5Zn.]м,AMr&ElDr'ZR](L[tL0.|_ dbZ$I(Cȉ)@`U2ڟ=D/ol=a܇zBgc4}ݿRBRJ(gsjaBf .=ؾ2EYema13ΎStỲJK7&zPhFJoP@ѷ)446cwAMWe\3&B8h 7 =c)6kFNY졣23Mm TYT隨I4yc Lǖ(A/ + hbkVђS\sq5OGG2J.l0yCR©r'Z *|KZ}%@ Z#sRWeՊ16 f Ub4PK7y/C1 ))ĖPF1 튻iqHLA5p>gsfž4` Ɯ͛{(ޓ䱌4]6%r)v'Yu|s8ϟ #@rmh_SŐEi1fItOyoѻ V^ 1եrΏp~}zBe/b{ ~ͽnS]R 5@@e!Kj |!r2]ϖ%Odu$%` lbFr Jb-녕9O*eHu>Ji`\>5Hb4`$ƅ^UB=Ѹ#[Gw͹S-8!:~9m<{vH-&FĈ;DS吡%F;WֻLFj-d@[7M_KmN_Pꜗ7l7Ȑ~zcy!"ťmUO6le!<׿)3Πh4۴NC.ϱ}cSś؏69OL\#-&WeD2wKeN"3MUO޸i=@ykD~w[\IX7y' 8] z=+qK* fYWE+]\ Df[K4*)'^tHH&riT{GPB*  `}Zg=8.xȌs-2Pڏb8QR8A|'s.ӾiRK#[sC|w}ݦN,V`>9k>ѭطA .4 MNI%-V' u:_T,8.e(@hxal|Gޱ( &FH=6>7}K*pr.TNB;R+DTjZm6.Tb4$+#U%wGSAwnoVO^hX wZK*^<6QpRꫲ0lߠk(`d)!,b>3eiY`N³-88[!`iN{ s1VؑU_l9+y]KBI&w)CjdUGg9ḪV[/Dۀ˵,C ~0V{wʻDbMq-w*3"J w֛cO.Gm,ر"+ 7YB:?5̬op,'Nmx"Rd}}t0_{-J/;+ $0?@BcTd|f6Gq]f C$CEr̨a^(l|'X)QٕƂF; 5üB5N]WYU]f:{6S(*ot<\Aediŵ%R`M@t Wc֧09lypua-FsDGa|$O7r}ˋ H~9cm&+հx?ݥb k: 2 χ}Aʂ b*偮3~ 'Bg|C\U.,xX龏a+uWCߨ"5#p}Yj1.scT3kgmRnôWl^RXSt־q}}Q#K4?b) 66U&= 0X|Yi9y6^&:,WRAN euz9SOmW4jIJĭoTQ؃0+*6=qs\4^s:{ks5TNjjlvRgN|L,+)gh M T!vaஔh~oABy %K RUƷ},dma30hݡYZqvo!=%:nA(Q@@W4i m|%23~`g8EugbVH]Íҷ' h#~Zw bSj֋oT>Hof D~3{q*e #5UEKJ.qOQ]}=r+_5.[& ̟O↌-H^Ix-#]߶Ԓy,&7G,mɜ% _t~0N64A*[X!UV/;4$ MTzxP >(:.)8/יZ)2BPaw056r_޺.Eg:v8%ʴ7+B"#.ѬL W}g} x\7O:Rn2L}?LtSB@c6m$VDO35.Y}A~e?DV+O&ACt5Z794~l_ JԱlEAA#k abg-k]2cn^p4wX lC`"͈F[%9PSHk\EzsCRCUgIr ]oІ,ø[cMBHcm{ĹYqd{%칀U(WobC%9{c+ϽI#T7h&0Sm:'#KUcII>$՟i:>iM NWLa% va"dY["$ 4꿮PȊU7%nN!R{:½[Z ]0"P^nvXng 7NX{w2O#^~n o=\}+Fdk㳃3*pJW\K7[@L}͌Mw|Ã&i ɷV,KDϳ{^ess^h nX>YxK~L*;ǔc~vq=daSvA6wYsmY b<p6Hh$ XF2//v3?J lXPRY"͔:R_r=2U]mZ)gWJwX Nu1؜ո+:[). ]~Řɴ]G1\r_"6RV࣍?3\Ҍf&\upl"vG%_";1)#UUja"NV% % fp9}NlU?(Bظ&}zBk#r^7tQb*jמݙKfu`9+~zڪ8kj6CE32ir)`C l:N}hG 0[ 4`nMX2UZs3En4 dsu,LmF ') $qcJzwǸѴ^mUD%S*Tj\o/K Ù4!=?d\g,yʱL8F+W{#/]8G"gk.Fi/ /!K[W .ԦR|139ph>fhC}&+˶ iPpjQ #I1_قNrQ+J4Nn@c5cϬ+˦mtd٫=EOLMv+QO,:xw9)"ZD~,رQ}G1O]EuSp5k:RPAUEAn`?4Ѝ/qY6x֭Y-4/ڻ̑kW;Ԓt1ĔMqiV%Z̖ˆBw-IJi#D:x&S0mXu| *>_&VJ.}wҕ_?R-RpL+ۍTHwYSޞ'-6lc1zOXߨ FVGg>ةKbp?~@%+*rvh&3; G&jT]ն+9%1͘: kV}h)c=i&֘!@SuX?\'LQ*匿(WN-Mm:\? #pq1El`ciDv)=.*M~ 6D =QfL\ v"HKsYI+Z"HS|)9­jY3oI<tHeԊN8Fb m%H:Q J_Ҫܨj k`z9qC/tڿ[ 4Wwi{hb`iꘙH,vL׃'g ~6]J(j0 l$GϴGnIV$ZG^ },aVkxٗv8I2VDYm~3orzˋ2G1MN^uUڛ-9D)E.)uC jWH-]RP) iU^zK;&7=C+?Ӷc#&F 2ˈu53~,@}ld a?sELrѫ\.<ҭg2R+D,(bs_2#/PDsJW! O aOq:s5A]Y1\}Ao|z[6&J4.7ER<'rs^L2.9 y6Y\m Ed3:ju;W{d[{xj1}I^PиR-Ά_{s`5I2޲LyRJvm#\OMYo襻OM([V(Aͤ+v8EpKuye啡XnjX<ʍeہt/H J]]gI+5$bї$&CD"u8Ck|δBzۏޡE[4fȠL͈sPҢWh:2wZ[zO~[o0g{ZR3702{yG.`icXeiCџMix}lu~#`Y_30g]D x0sЗ**ՖI4A0sJ™=!r8L 1krR#CP J^ahn|[jҿ(gM XZ(b=ư>قLK-bI%Ct; Qr~1[9~‹8Uj;mYN/ir7 u4}(Pć_L֊MxʏK@BXI:[_bw.d<$*oe\Ռ )8%|sissO>ʌ%q(Rd/sx։Th69yr3jmPsc.SÎꅋYX5"rD곣ג$i2m$+yG/[߱W+#UΩp|> l#2eXq?~cm)6A,eSC$|˧K0I]8 ^!>+Nn AuwR L p嗥;DiK&N>Tki`%Z+ٻz b7HhU7|WZXάֺ͈n R|AF[s;ňJS^Zkoy2_|hqPKF/bK-e\Vqy3jS࢈G~=bѠGo0&[>F7Kg5Yl<"Z(˯ά#u0G.<4pbƔꎳnA0X Hb;A!i<(=xI%ź+B!HEcn5)J<7J-7ۺwjL˺m/0G5/TivEyS(}.4`'pj;2՟%wH?g]5Blƥ0"1xJ4p7H.o6߫l2A.9< Yz5Y"q: tDY-j~4b_TɢBc;:8 4(.'hoH㹲#t6 0_g;Ńt!xS|CTn\\ɬPplH4m͐&`G~s)[Oή,g2t xo8laf1>8T}kx˿N 6rf[T8Ĉ:LOJHfT%Tb H6ƛ2jZ2Pt**7mqOz>̨̠}ZS ,ss=|iNՖe}.?A %rCB}s(};YyuQ@(d3~3%=B#d1FЋң$6f skyz[?CІ%7H#e g[߈hC~Pz+3X H}ĝ1I<.(iB ԝڥN \;۰uo4@d/t9B{.Ny,B֥ϣlcWN"٣.lEG^sSkVs4-7y1Ga }`/1wS6j&ClqƬ)LeR3}>P'u9-BDP.6&c l(s ŗY3chJap3? }vw˦(aëVpR'5PY5wUw@=sxo;= zJv̘!͗G89"(gWy?׽hڹpY4xw/rW⯀?^}wΛ1{cB4g6D柀['ߍN@?;#k @<fEPQ_e'=RF'* u ]n&dl:,~T̊?xFļrE_WN<Vt[TD{r5:9tr4n,GNd\WáG;'6pjF(->m㩄x@mGp1ԁ| )5!t:cM7!x^"d<7,V=w4o2Qт,쎡yLA=铺D$_R-_;&?Kv'Lo!duWc< {f6 $ET*AO_Q ~bf MD#M  $6 y{*a/_m?Ҿ{'j(%p(RPTX$(&)ڱN<  )m$BGZٝgՓ2TP:zx|\7)~rBG>vaRӨ L2u@p#J{0mW~/|xgkNK=G@pF]E%.ZgxX/`1NuoRrlї 02NR`Uuqxo=NXqv(Lcj#a3Cp9h1 $Imj/FVcc^Nx 'k`r)Z@՛zGk$IѕSyƆ3rY!dU{u0ï֒Z5a`ׇY@|:&vx(oC]9/ŽH2ц" ldpKUpz1N jB)k;q{?4ژM6XqrA8|ve2.1GpA}^qDNtM> n@stY&Wvrlh9 a2BFcl{Ke3ZnaJP1VM>8&.O90˔IF»4-%.@ZmBQ^p?4Ɇmg"]MOP%jĔOFqxd rⅆő.+^UE|OlA# Ëk rf'h;dc =ȼUd>cBH*}`3nAVb@.&SAfabِo3?}dF#BPB+>U,>>bcZOB {I$n9haD6p ih T 8KwǰLvL9>:Gk4l~Ѩ]a߼c\N9O3Q!v(E7 (2"ȇWIx = ZX@Umg&Ba6ʹf!757XlipEP5dAΚoןۗDj*>&j h^`˩ x~h9xVz[)VP<4:eqyvkޯ|%13fd},:Wo9U=lA)nf$#jBvM;j!Olh lKOevxj =,eO݃qU-`3Vg3cmP6f>Ӟ&aHhQIn3A*Ͳ>"YrCk0X anV<-g~7 .MŞ7q2Pb&BE4#z3@UpynE6\Jѕi':ȋ.F{>, !~JsX'(K94)(RT$c t K:X%#ԮX8ob?[%š ?~(@?ΐ3  פJENd\hw?YI% cV+ء1q#p$Ձ;g+HڬG0zg^?a^pN#{vaj-Q P1XWFRd@& ixf!7hoyVf S{R ́0s'mԘS o9v)& Q 4fPMڼOUjݛw3q#霆e0I]P59PrG+҄dFuO\/>EsL R*ZU8vV9D}|}>:h,ˏ"X9ffS7_O7Ȉdrs-̊"Mֻ,-=+V uLC\$G 1BZw_`kc3xZUY}6#FʽhJ{b|U7$;NFŋ^l9=MzhuM{VӒakGP'O7LZ+ew̺Plt-9-6ĺUHLPPvA9F8ìk72BNsB>xqn^FJQtULC [c0Qo S~.̈́cgab)!wv g7,UXAĥAC5C}v[_^mA{ AJYSV %ڢG`Fwn;qyTޱ!W; (LvŅln)UaG!Jl~ZLZ{#Zѯ'YsQ|8GXϙ=< Pi:eq@$Rbw*ҵDqx@Wfcfe9cS edn OcRDT H7gZ0[Lq󏺦}n|}݉NJjaAJlE hLAdᅯwcmIO{ݬvZOdٯCO8Z_=;8Vd h |8`m{9Sz; `Nx>ފ=nb0RUL}~ˤ$*٢PtޛO ~"*(kE/s9rA؍/%/rGiŦ cxc^pjA.{=žCbs,bזOYw5TMJWQPɎ IRQki% 7Z }{&)sA|g$s .*mwi|s]rࠌXC@h*r>dy̡tQSʁǚ=g ywTzpt߬+Q'3NY묧'yЄ"jy^{fIK07˘'Y5cR-Q | Oʜ#FRCkȤ sO? 3H#=jFZ) lb(U1%r*C)MdeWa"uUrfْ^ꊚN"CmcSč>xZ\(PZn*`^%yۘΎvW}P]~m j-Ǖ)/rΌ;jE 4 Te2 YE2SCUbZ2$5~=V⋵ jfQ'@%@Ymt3'?) PF|Cl1gcKZFhraI`Ur&k%y}Jsi9cK@yͼ07>׃G54RCIo/deq,S6sO}yNLyT40|.h\rZ|%%PI#h\x[u|}Jwcu{xv:O~&*Њ7mZ[.I jkT񥥨8bz=f[=hݠXԎW/?!6{ d@wfVlߜoϕ N+W]-IeNʸѝsis+Hچ֪G| ZGH39`: >$u-ЩDFZi勺%뵑M{lA0AwJ6,O2g!Pj/JL{J|ƞ`hhm񇷪:Xd?^ C5Ц< HN9ؽ8vH2G U0.t/քQ_p0vO@^~yh7OL}ꐂ ܕ=QmlUc"Ќg(sk S] {?M!3*gk:XqxL uQCR0*x*#=iaVyRtհȬ!R~X|g]#@#M=븳tAc(ז">`lE6pa3  WP"kn UB1%c#|(whHz։=Pnwׯ(L)f{HOW@zcn0 EG'icjSέ\.L۲~rLbӸa&^ze6g)x_ A-"PXm>>3bC+?5u9yQ~-A,#$ vMd7.Bl.]Q~y\h1I~򯉎/r nFcto\£X:APoR]^F4rY;DGHXރ>ٶ$Ha`&+jn;1voz3/՗>4+yViI0 a}WW<{&XD*sٕDv.f3:lQ q|Kӿ1Q-p7*DiGT8䡨d6PZ2 UrWEgQU7c/OVg_H)*?Г~ rH}"[dTEWw;NI4n&s']"Ll}JcGk ̠zBhm[O,vGҞ@K+A\77xڮ0|sdǙgQYUj IfPQIJȢiou w"<30:{bR[~=eG;*ِ~}k) - `[S.4!ӞaUnSN4%l`jYV7ocF0RnNlT'm^iUMq[yrT&K =.|_;`< z1MO O#yCJ[< yI:!R\4e:i/[_< SMɃyqd(Hbm)6%ّE0\%fRoC ZJmn?AK~JFfAEs#kqׅ5E8h =Hf.(P- =DIQMI}7:ܽ#=OU-.aA{BƉey"Y:g~񲱫С!*LJCиlOݞ&:i͸q'Ep􈕁A"?@73~JU; ]&f:fye~L gjxBX:2CG%{feb@ftP3O UlM;Eg#(NOVĿKu8;XД)yX}𧮅:o\^FVqoE%AL¢>Hҳ -gk@KSG lF祟fzOh( ;baL>زRDxk+CYII9XN%H`N.6z{R\[%lX԰,(-VX>בd nAia}ِ9 `&!NcMJKdF( Ȍ~iAPfUg%1e2v솛ѶDE,Sd eI..wMU7R1ԬRĉFY\]jYC$ϲNXe;mArX{Zm?< 5lCIP ݑX׌N$5V*;_%p EQ7 W1Iobbp1uU\@-Efߐq xE^Il~߁`4Ϋ-Z`?3o* ;a]tR1`X;uX#%-aA[ P)j(8=ԌI0PGROy`i9*[uwź@e&ߔJw397wפ]e@g= 7uPsС Z t!4;Բa`^Hpg޾ V5]'v&H;Q=FԸǬE`7A-OУ";߃|] G-{Gvk,}~znV{ɜ 19/$GjV$@(P|CmlH¡̜6a͍A C$HQTzK@=tX(5?mvR("9%''Z;x5`Z-}7bӑ2LXfJ>!DݍN|Nk>"チ\|-9wgzJ]y6v\ 0<=h ꗱ\'BaҬ=}fLgn>(X4 Z@5Dj;'T֍4phZ0LNWaLQF\Hm -Q"]أ<X '8t1P)  })l/!Vi"]vCߋ4"j~ 6v7}/EDcW7ׇ}b$l;,>N3.4a2/ ?;8wvU$8<g) Rd,sݘc VOb8)QjkA;$K9|g`_Wӆ̄;?'ѵ E]]~9jꝩ"5d<^J M(M@wÜgv*ԡ>_7P]/ [JS N:G`Q%᝴QѾAfFBODQAuΙhX#A1ۍ|)a ( O'K7>ҨFlS,)*xvm:<ăZuo^hY:VvVYHqn D!6m?FUS ҏ܏%9T? ;PP_ƣ<>\fTZqMn-܃]_P w~Z"*_cztN',oHR+I$L%l?DxNHixpvn}4Z@vy%{&ȑV3A+qr#G47w h'l3fiIZE;'ZW5_z4\CL%\[|fmtY t{vO(abLi=W;ֱ$iɷwD,0hP! 2]Yf⨵T~Ç6%1q 6/bC偂?,M@7*RIf!ОDQ7:96kCYS@G>Z??8a5/-  >R%J/- uϘJKKj?V[yMtWb@- uͦhhL')`hM_>T$~\ceJE. x#S:J>?5^L¢0n`BaRKjݫJ;W0\sYQAvo`ؤY<d;W 7{2/i uanq.}c}Y gSke8fv< )Po۞ ŇM+HRFQ=[wQ5cK躗S({I5j*XAt#~f?s"hX/BB޶1}R/%$*VIV[v/sy^K2\BEc3emcՌr9GM97AE& >j URJgo(wkSmИgYs3C'I18Mi/  \<њ'G۟ H-?dH3q|u׆iFT!Lm(uF\cxȟcwTA`|.K2ϩ`o  fn՛4{i<ُUEY/_.Q5b{+P`ŵ;$H~Q5+=vn ;_!]!-}qy4\xT ͮ%aA+O䍲z\q\' 8wr\ =o|5'l*lԛjM{m]ЎvB3FR*O}([Bfp `&)ZRwYźƬ ! :9'0jHs^8ne"%y@Z]D0kev7sE3m|wqJGCb\hp1+C^Jy U ~i I5_y>̈́⨑23HB4 ߓ\[Q5ꎜM'V bm S[6FNVYpPt;&1b̎H__ϰU"`hWr&fQ1iO/Mx TQ)jO}4/a<(qY^]gL~5 L%A'@&^ՅqO'ݶ^n OvҰz !'pU9;׃Uҡ 2$ROVI}Q]_zl,kF{G> [Nqmzќ3x:3O< K坷 @ʰQ= Lr2*RUyݮAu0r"j3O wE^\L':\7)MVdة:N)vCS9[RgTa,dj-St3Z[tTo3ՂhABdgⵏv'Gi|NwI*7=iR!ur9Mdtp >GDW&8,jbɈSwcJ ![jST|zHNQju;ptGi C !mTA$7: =uBx3:1 w.axp)NSg,E%QOVcfDлױPJuX_WvO/qjx0>s^ ( "x|p`׌4kKpBӵW$g_Z-M/`ػ_"|^0!6\r%/E.c$GﵧԧP [e*-Z!wwjqGI 3,Qʺ1|",|}1N533USȤ]Ɠ ʰ5tF'&wI~c:VP-A,IbhTu#IM:!OTVNu>AU@^Y5 3U T~ 1zNlvӣ>EBl*?ULWkn#mAF>~j =&;Ot–5Z I󍕊 3xAj󉭄̐*)8  ªeI:ȏ,@daܖ[d:z.Tkʕ@NLGGl'ug- ֭O=;&FaB.`;/ӗo^re`@܉Z}w(g@W؟pPK%J]AMIvWA\y:B" 74Q`G=󿏊(mcHWܰ&$ xJ,L"W0gN@㩅EDo:D=8 ,f %%.u]YryˀݳSt ohrԛˆ#'p'9>JAG,u1v蟌q{$3Ζc|iOFJ[c]peD, '` =3A<҆0\KG  eY[P1rل8zҺ(N;|{4Td#xxC}ˢ(pqؗ۞ond2!mjYTB=j Rآ$P=e&saxץ,]m olo@ٻ%Jb5Hʇ50ͪA]XΖ ȍC4.9XؿS}tKG@Y^ !]}_"Oe_?8ulHZvmsk<$Y6F,b"Pd/^##[IٷmP> _3:Mq<Cbyi6KC7v3OWv~3e r9g-(. ba1OȵnO4nbsπe G^E (n1i(ܫ4}v?)hV| (B h@ri|qp¾  $/iR 5OqfnW勈`sAhƨUG:=Ɔ_;-7 z~HB(-{%.-DV:P|"n(H$%-E(a:Һ,[FBAL g^%RA+M Ε&;xGav?8_ [#p~W $4NJ[(>J7 VFF tT\Fiْ oU6҅ՠyAgp[hT܎ΞgblsW21mn-kIU*EN*iY{gb- >f?ӲM py+DJ(q]"4~lQ h (\SDk bwS &*^a>eQ3* A:F(3a!PG5pkKhN6O "+HoLG@&­¥Q?p#;1WJLڷUƵ}ͻXkXFy99JA-xOJf2>c/VB,(y"R|oW#"'ZKG`ڣjcSm:bٌkpuХF7-t *ٱJlXZ" 3N(ZW`0'ZB&_ Eda;̄)AA]F>N\}»:74!9{ٞ tzG34ƌ5']g<ôT  L>4.At?%"D81 }VT80R *@|xz2{6P̡8/Eq|_xqCT5 ]* ?O53'd?GN4Kp?<Ixx+S++^4",+補CL&ty%*T(}3"4+͐ԣCej/ zDԉ6ۛfkLf yم\cS"":8$Q+n<L}2t % T`[δ6\߻Q1G}:FlI«zRuT>Oab2c8E AݑZx)}k_PTXY.l$Ǝ𷖠,vME=Նfh{TO.:A&&)&f+Gk^=oȁ WKR!Ջj̢rwyE}E ܒu(ѿvPXߙEA[-餼 pM@.>%񼖇7ίsZ_z |}[O+^ڪ:'Qz]'6^ &gHW $Z%SC݇~b1VP8A[P5A>V]ȁ TƱ4\|`A:XR >%ÌN% CSsVV,Ħˤ2Q{W6)>23mquV1\=|Z)[eMGzb_E:5"Fo&6?WEϬW,LvIGU5NozZ߆kj4^xQdf~65,Ֆ($9PodU;>iKE^ٓÎIcm|+XdebqJdf &w]NF:]uMa\mk1½bx+Yf7~"b26<ޕ6Zٿ3l׸5\%Xra1~ӲtF;&Hh+6,D~/[ -PmƌI%+EBJ6.] Oݔ#7[4QYC#βR-C(%S9ex GNTy"9 %,6|]z C[u46sDͻ ^ m찅brr @~bBb ҜDt4V$9p&7M;jy\"RƬQG?uk`x*Q=:*1Ex:seY!8d- E?,a[6}%v( uH7q -?˸8$kHU$  X#ƿZcbĚJ{-=vGwl!͆/hYeIJTؔ ]rîU&tAY+&{!g毅 }f(¯@7UZ{W[*dk n›"*J A11?ElEjs 9־'y=!^qc{(KQt^Z?g {bhl^"^'. kFs=chF(I4]%I| G5za&MUW&\)IEMSPƕ8JforJY' |4V9@9K=gyonmn|^hi-`%CtBVWyTF}7P%V|*SdE33(JJ0νe|Zs(܃?6OE/ĴT2| -@az w %RԻ2`$ >lGA0Lxҿm :T=N”S WF0BXk XU”p|{+&Ğ&Wc->0|(Cfg5S,>N 9sKm0v#P(2@ivB5ՌHMYR!K WǓ\->!f{8u:1/]кCf߭H}{fMlN1VgL."*ľ5ѯ&++/"yスG!> FP3="deҤ9Z^#;Lpϑ,NѦKKwP ׊ly:T:Ж/h'R A'F.n̠L)'qi:̜ghy0H 1q9Fm91ױebMz S/}zөw oꟍP; l:WiHfqRf|bBm -tx::K F$B/JM$vCUII6/~^c #\Cov[uƎo3]4h7]ou FPU"TnC7*'Z,@/AwO2BES[LC|PQ_i}ѓWI=Kϛw5u۩7ZtnlSdyOVO$D^`mx(ab(*c^*R8#DPpԚfвdo(GmA]o%M\]@,:/ol:DO^\8kaV]=n$9dM'_/sS=~ϑ[Ol&T( ]\ >HފC.jCw۽vyQ`M#m87xyC,JLЇXN =l|~jȂAQu>3/}c H&5uq[{_uUP&y6,0 ki }aݡˁ)ke eB96r2}>\*ޒ(!#q䛊Q8Jj3Uԏ Kj.lz =A.=GaJ6w}V;9?AXm8pIʾ$x-?'ƅ!їJHoTs@%HLV/eu0B gˬ GͻQH'` 6p.%$yK D. =K*x[~q9X Mƭa"kWmۙ.2!PPO,rB*)}rYJ1bn |u}4DƣsBsƢLFNé&h.ixYug@ٰpd>2^^ܘׄVv/|`. /FG0Ƈ uT\vOxxQ"XsΓy&a.?iZ&IM-VE+lxD*lsH;&R evkUaF7sQ.γ:t %ބN,s8ICUg\V!ִbw(Q^j]8מnQ%!,52Y7i!t#Ƕm%n3AnDfpW3bա33tds0QgGD!R*-$H}V yiå=_l3i-P:,(KSS>Ȭ6pA˥}X?kg닂gܻ)O$R>Ͼ!O"J~7" 956V&]9[eIJfvXK^ 8Į T`Fq~d{#Ukhu_ @#{Љե`aDQ+0tđz7aİFo9$2c=##kgnJ2Ђt+fϲ! 5뻘k|f6^=:&jz^ ߯i.ɔ_ޝtNs;,plBBYFE5Dc68rܪ8]m~ܷ!>GEgF;kV}}L0`k2ʗIZ3Z4b "bg ' 9v nHa&|pʠ#'W$.t5Aj^ s#z/̫lům.U=Y)Wf1 "yO\D}ƍ\)tb*鏘 ͌(5W8D\< JU).9pU`^rb0CFSq4va@%1DU+tY,}Ľ2~.Űç­t#tPɊ&2<*-.t#%J@YybQ)Yw.+(E*;`P;'OPJLga>IF<+;P%xazuZḛ1apxat̞(rXUϳ5e@9>Yft]1^ym 7@ MAЬ'xiN{vLFNC-X\G sG鱝ekQХvibȶsNXh H[?*oLD!bDStPN_ jNe{$Jm AR 9Lp$aeP ./Qej<$#: 8IF 2͒R:Z³D- e|IJʩrBэMΰV6HN`8YX|(b~<߄MSH_~r }jU%;:4\hhaK6a@_G!U,g񍃽>YuiL#?O_Q :.+Q<0B@з%qQQIɤix/م~89UՍ}67&`%G:"77zP8+ӮȎ00=/iɺ9´~IyI-^-W>K-}EYץ1Q✿]Wp7XyT.4[:E5f_`8H;cP@}O]#]vC?Sg2:3bjw?a=Hjz&unU~6Jh"uVؼExφb{ xB`(I Ԍt7>NhQp$_8vܞ;EPeOZqG)Liڝ03SP^+t՝eR=N%|7.ш88SDR"l`eŎ8%j:p P}q{3vxJVe%E;|$ I7gy-pxz% -vYr8ElA<Y,V[3"aM<'"~z m/Pq 93E~=XfCַ^홺da>@~B]m@TqKhց+b >~ XL'r4'ϱ@Gf azc ynm=\XC \4">5tQjJEyOj̐fbKڣlGa ++ۚA|: Oèc{P.L$j@!q>f#^R'jG'- DRioPG Ӧ  x5kt-$zL:*<ϦM{׿cWZYƻ"LԼ'< qLq~uPG("1 (>TYB4=c2(N8 mnXw6^]{'<=vgqlױjf)jn[Cu1+f0Х( L\W*H&Sࠌ`AsY:K6Y.><;=xAWuUzP$}I1J FA%+ld3QHqSsvGn}MC΀qbUA?vGBP#eէDmKx, pIlug2&׬eOkY62Ty]Mxa;Gm޺1dz[[[P1Z ؙ-J3>nCF1(%z4<6}Z-L<_g Eo0_~<{#uD~]Z6p"BIfr|UC=l5<>r{E~a -8ca翡^Wcn/tܢ7$T'b,Ke ]LE滥ؐR\&It W]9>,Exll0Ž)IVD4~~Cnƣ"qvbQHnBNɸDSJI/ wMX`fk`23dp["`tD03%4Q ~ Z`Y|p /\gjpjPT4.!nb0.պbq6r#dmc& ʃ;}R-|}}z>iJw33ፕA3vNG3u_'FQAj@CDbKYwk' m<ݝ43 cp&g-EMnMv  r/$Hy啎VgaLo:* |m#B I+yHG{/c;K~ݬ䶳kUh=ڹ iiD1C OGd| WVل5+ l/IO>}TO% ܯJļЊ BYw#F.n'WO$@2N`j fx&!]8 aeXo*7UQZH"9Q `3;EI- !XSGj#ibXߟi&۩;5[3xN< \+5|%X̌m r-:\ E rӒh[9C׭+" }NF#Зc<:jW;xLu;u!*ISfw۩{NW1R# VX me5F^H("|n9՜ bRU:Ś"&0QpbYp1&2yenj׽aJi,r~@үz!%'+6i`2῏oS'M/̀Z\.;ե_O7?11KaG>+F巵3j+c>t#]UuТGTOK),a/DswSfwss vt,jhb4 X:F~.ʽ"ȧOEt]fm. -(!w2ރ ǣVG;".r7⒆J&osKG± )ǧ/NH)dw, 1,myC#%6.58bg>N7eQ F֞ }l*d(TwpNq,gwCp30F+J)(uw tk&em8G S\*zոQY%W>h丰0B ԰U׻owP#rAnM`:~ V,M< Q TclyUu*gpy l½jG IdnD%_Od_HAY:Cڿ!s?sV@g_9o?6D\Dy32aZK'~[ x?/䙘;ïCe!6JX"딅-M5Sf%A>R؉%,>ߐUu}kQWB@g9miH'ӖxBť2_WxKmFsgU.wN@_SX.;l/v#]T^}-zGp*GDڷZ OI*m"$YMʎ3R7oEJw[AYqEmc%umb۴2%XS@ۂ>K">hLZ? w7 AHؕR܎T 33$nlaKծS jTrDKz)X!ohaï1/gU '吅>y>=oڴYf ~4Jb]b]䑰]])v]=&BFeIRR ',jϿSuPIŠ7Q Dg%>#[o5{W29p)GI*j}ڤ%TQ$[m@{oO gy}g|f~ˁQl&ѻg$A$_` K@SYYE_$ h%W9- 3n-ۍ)YV{玙Uo)Vu/ٴx\qFQR7H570 p7^p5ylm+*ԋ_YAŨg)+*v2\)'U{-˧jV0ݝE?,Q 5"1g|5hO5(Ź"(Cn 7~T"d`гL#C49*pl%LwD>N_WVeܝO!3_'H+om$Wzf*L}H# hnD :>=п@2*m|LrfîLc@R;NǓ=TѢGoIF›fjJ 7eJUxV'8oHEo`{@zg=P9=$+%]1 P9(4ҀZ7Ԭx ܩE?pLnCu=ɇ?0-g3;ⅣlAt C3I "ս-kKt_zlKqn8 91o$tQ.*!ޣo]/W7.}⡂>|9.N'5]ʅ=te=aW;P-TP҈hGWd13}rN?fcfr~{\ ACD KS]~rVT+M/;8,.c< ɰ-nO[o' hλWyBL~ħM1T팟\)u˨?*]U m߀?㭼YOL*wWeIQ͚3Qi_YXVV#EֹB;Fc T(g&)4P|v%-f4RC @^r(hg+ XV!:mPޯ)3#s})1Dvi2{zy`T?k KD:P[QV @C?~F v!)!hPFYi@:߶m! Qٷy|'vCz3_K O43̯{+9!7ؠe"t{RG]ѝ:0xF `w$4îWaѐXίW -$a`FRtD#\9'ET+jHձ8&S{G̈9G}wdg @:Hoh2O }K8j0m6Ґi*H ru{,6QcarB>t ކ`J)srwqAp)p +ؼGQ850j{ q$@;}`w/ˁRNsy E\a>?6 C6W( HA)T'\}D «Y6IÓ`Td|B.r<mI2,uxQg{Z9tuæq WZ9x"iFѻYN ݇d7:'>1MDO!H:rW]~Dtdr  †(ӷ BR]J khfJ}JVōbP>o?C])Q5pHv7 oڥ0PUC0Hǧ8!$u ˈlL =vSoDV.M(Ba _;Jry| ]o 2s!%thJzb+mTNBHhJ^RȦ~4PP +haO37YţDlsAmV/aINzxTG^S{DUF]7Yh>;O٦k|U].6QY ۨXuOA tG2ѡ~;Œ&YtY%Q)2D^v={wFe >AsxutZ$uFذObqs,jS`QBA& 5B!4a4h|}!ݹ]o\*㱆lwbøo%ST%C7:.r̰⿤@m^w/ji&Q QQ R$E^:Dyeu54V;TKm?NQI%#GF %). ؚCiȋOEka20hi-$"QOPtŝ9[lW Ld1LIӌ*C%Uw\RMc,9h3D:.(懙5] ^ßrCߖ ='#xp^Qu]{,h¾4)tRfai 7OgE1 zN9eC2zk3N69d,J[P;`zVj< O)V1_@gL6rcK[ͥoBJ F::VwS57{ v\2i)\j!U_ n%&r~C A\fٹ7}; Ҙ+ mzLJu&-u"Ci[ک@pnn UW]k3,pSI^uS EWN^&֧pmYg@8_ЏnB 곿#pGr_ ؕ[cqs?; 9cY9ܳȹI6 5n ~w3j\S@㨲T,f+E6QD-1MFy$Fd-,bF|KUx|LmBNʓڝ'1%&m}ӫTE)IBѩ=Fɒ ߃CVG<BPA\G7;&p!˩ *Ha6?oќk|5~;z`m< A*/ v&d ;wPS,^Sndjgc7 &p{ 9Pmy4GMH~GV8y&o^!)ɭz0Ul/PMC 11[)L[x=PZuf#Հ?;E8E&|iY5׸/x <%DeDRltGdb“y]V-*JӦ֤j_>j D #EL^x#_?X\讁%?A# C3ARMxħ wZ Y/% K?7oχTAitW͟iڜդ[mqv/lrxL:ajO*,N)Ǒ]п?n/^jFަX,m7r7>AL4pYH5¢] dN ^uK4#/@N{:F^n !CHz|# @0CY(~p0-24I &B$qt4GD!]&à҄_~Q ۫LPܱ;@1 kDU5)a ܪl T Otf +E#޻߾e6Nc],IkbL3@:PgOa;#6hpm@XzAGƷM6gC19TٱEgzYKbzD-c#Pv(2?)dwRe], Udq1U `/@n$"7/]*\?n`L*| hK'Wu H sB2طpWV;3AЅD:j侙Ol:{q' #y1.4++{osmjGp眑žr(&e!c^e"Pn*!;<*&1Ӝ!b"stJ2HRش5;KdQa%Zt,K&P#$.֎V"Hhd։嚶ŵmZ0Q(c O7*qQd>oPώ`sF =ewB3yZ ڴ!6!ցl+n^L$Y!#&k+y *rn,kC%6Q@\wE P!8|"MEG 9y=ָ 6 c y& sJUӢO~~Fͦ%Zy\zHD_tzz=@gVgv FN{ryǃЭ>T4N_8y7vYq= Oa}8Vrn5eo[/zy} 5(=J4󼔗O'Ub9OvK,_tJ3?:f<~,8+OND׾_Aʝ=='}ypH6róO7_,.S#ִp&݀8j:$[IﺄIW-rQs ֎飖-r/ %{ESg%pxj(1ԘXB%PhDq4Cnil)5#g%ACa< H`d#**ֶq9\.jfT_ˍюUE'؝rQtƂp @1`{V]B#Ak_FP{_tũ}~`7)!(1wsDSucŚqAudB(Zӥ qPSnUX&9f3~WȌuإqyD&)FocN Yzrz"BH\+/[ Oi>=•QqhM^_4&vPoF3t=?;c1D]cډ)yz(\bULQ-s"Ҁb5 m V"r{^pWt4v<FӍlT+PT67[tty ^ъ9ńӶa$r >/tt_#b^ ~RZ]ưܫz@hR,XB@ewķPq=o$ h "5nkmsM @w)N 0VR_g?Tc,JG^_)g!bu:Ol| J ԑ qUDd,

  • &-?Jv92sSf஽u'3ĊƀigֻIV4N K3hNNQ YsaDY/MC I*,S0y?.m9/2sGsoÇPVpSsƊh7k,u)P k@8E$jT|RV&r6F>X(QWdu72M؆[Ym:)d@0uv1"o/|YٸCE@Ă)çּLj6#:F{AA,{oMjbsCuM"j\WF~OOoS܊1!#sy."{q&Rɽ: 没6{!lħ|o{g ؝l "L\ɺ#oЇlT[T+4ZZ,<6tHbBNfD=lƿXp(D$^o[SE3~T>PNNl}-ÅǩhB =sc&&=ۧ@}$>xQT"!HoLh_uD [srޏN !AxFnS*ei8& EPn>sEKGKR_Hmhn(a\\NDљ;)h[sу(&xjpRVf.u3]*yWhHLZň݈%>2Fbg`dGwJFa߱O]NV' i⼇ABw,H +{=`AE~˜E˜9<䨄RQIElf] 8')"~'3dp<,뤍H*btwUPM] ߛ*rUx nZ\%&y si'wIy\bz=?RvXsG08R Dtk^C nHz)o"C50CZ4|V`NIՇյ]d>tugoʖG8)A Miy(VO]ˢ8H0I|jC4DGT]J]8`Y*0jǝ+7#6y*=o=?"ꇉF%8γƯ ʼF&W4Q: ."rS1^-őX 42?Z#ΫP[k2)Nf i2f5ᗯKDbZAof h"Io=(S F8ɪPv*89XտILm,xnI5/ZOq6I %evALty{c au( &[ҰkgƸfp Vć/G?_JS񵷢<3r$:Q(pi3|-3qVfִjgn_}oÖW'Ai&z:FoU.+vfU)d1lL0q]]n72/ľw3t>&`JNgV)?!fy|sX} 7~T敔^.gyWxhJ ]hG'@[ (>ѓRi!:s:O|֒&rYKN\N$nr ttkIYr/_߸j .sRo)["a떺E՞v^ʽĠ h#cR[AlʝCDa&BR0~6&߲+'˼jW>S?N=.c;DL9NJXğYf#8?߯4e#\ fĭLڈvdR $Ӝ>K{ 2l1z\W1IYK^~V*iq ]O$.mዮFIŸg 53R/rSe63%ٜ8Z)C):1ZU FQA&;#E}-KD='mMyLSM3  C>( dLsH_Gb4?gz.~&/ǫukJ_6sC7OdgiVN~c3j "@tyfI!IZٕ6Q$T6K}U9t@*C$ M>VzW?;{/?fDk%P΅ŏn 2;^g3e7-Ր2ڕ͊@ztYS5JwCܩߓˆaHu'FJJqI\ژ6X9 _& '=*? ܮ<tOPh/`Q"`.]1Ar6ɓ] n?95ti9} 0.p} s40یg:gqz3SJS~7L k4J)EW L& /nv{eXb8d`oٕJ\[0yٯNUW.eA L|G)/ ,Y33kwWqXwC(;uq!(HbpESuɳt.=E#/'(?R ޙYҎX#EhSG&OH /jݬSPZg%cveR4,?Y=ڱ} F3Q_ma>%X^ŧȿh Qqw7QԹ`jepl}*~);-y2tYS6ėZ9`G- Mg^lkwh v غìȼ5X8T[ 5-"ɷ9]}E*~ 5qu(EFYabˍm&)O_-"(kwNBb7DS|E/9NZ5k [4,>dzEE~NY%KīA%FR WKmQ!6@ׅ&p9ʫqSkõ=-pMwTzk +o'^沆[tS#ǜ{yג}xwu{?/sU/ !{5E Ar}}NB^|=\LT_K 1w6Y>ܯ[#$5x 嬛z-|Y[}uetK1@#Ey"͈sh g󴌊t1T)>Rjù])ՉF5Car4yY/.qx9HCq3$AԪ~N`}#F$Aw0bA?gfGcjŷo_ha\f(޹e$"NlEJ#U'Vjwvb *UjՍU==ԘǶR*ƕ_C&ouբ6" M#?j `/R?W._*<_/t&(c9Tjm]dBDUXnݰ1kIX% ӝ+(~P翭D"]"u_, DLPtK җ<ʻ2ֶlnq-S0J:VF_>74Rޞe2y~Bjd0)@Z[Q4:QԐkϡ|Sִe;?y}Qu{l#7ʯ:~DKqMKjk z񹛃K0s#çkmmZAv . O<8W'?o}٬Zَ]镍2 b\J2Y^ _N!w֚DvI9ynϭrĮ_%Ib(S ;xGzi.kfixX[dJϭU*WDA X OL-]/g}¶4Iww\(caiL+X:ICH>O=g}1`8CI$K[ -ᦡxI e;eVM\SO|E!k6Ձ,RYn$\_uAZ4$*bm+aT&"\MbM3 vM/e#s9n4ͩ=m'g?o-2~ . #{i-U qŷ)o:|3~0Gaۺb#: w?0hr,a!$Cmp^d=o)lZ}"PvpGQhBU@ K=SfuH!BY?( 5yԁ.ך6“-x}mT0Sk3 rRX|-BɶH;N6qOi4-AY A 4ʢY76sd!G^cݭ~9"ﯞ Xjm14)Er'[bv`Xov;vE~jK!'p0@~yr 7;ޤ@ 864EiYhc g9,qTq ק{,90vڨ]"7y Ga?n0i\֢?F^gO `PE^;~=q@-&-1b&{%{AlD?]HFƯ=J %0 'F6JzzD"dKEQ!*̙zAsE<;t& ~ޚ#fk-]Nꚷ}$:|8T^1KcH"_ =؁~)B!^]e-ADZf %=9^& +߂asC$z :5]vJl_PдIaijP,y犓+J;.\j DJ7ePvÁJ0u֑"/IGj]u`U S7*IKw8ԮSZk/3yOS4LD ; "KZSQ$$W1<}ܗxlgA.47~ @ېWen-+ɠxHmbk.̶euwGfh!/yXbd ܽpܣMESaNĬbԿ2*Əuk2 MwKTɮT]Nٙ`b!=z9+E95vz|IL$p8 ha"R 2idz D-ςoT)4iΙeX97֡V~au,+zXe;u_Bwq˲9A甇B0ڰ m@K& KEH︱%{.8~ )uP;nxndmLZ x? wG~K9.$6Q`E{eY>av z#N!_Jzg]UO&B ^G58L~ Ab/{6˰J!U ..W9G"vUT!WP"aGFw9IOr,b~+d2,gE4n״ ~%2܍85؜L Hx{އwD:*Vex[\Mh" -Pʁĵ8S G ߯qp؋YfP8C+Q~hѣHV th\=\mV0lIkȗ-4OIzX/A> ; 뇕5hV~X>] |BVVaʣw٨.[GrWSmqqdM#" _X.N: %[&t=L"_d'zج2Y;۔}^_Bw)xud3_elPcswBӠΤoI8N? ]boͩFu«wspw~-5*ɴy#>HPqQFtc܀kHMf@c$'fn&lcιpxKaLo q%9q#ۜS-D$T٤T)!-4_~ݛӘSB:!Fdw.+.ؔE3ⲩ8fF/ҭ# x:/l_29}5bgr) @zӏۈjfX5fqNF\Fw"u޹{K=03H@Kcj$s<1&WNM^ Fdsyh, |V: ROB'I)Yh:ԕ@̩7;wp\|UB;6USf'Yb:5V\.n#`=0su !HtAl2Qf:nƙ蒆D= | *eu]|'7*71Ÿ1 L_sS %蜚22T#vVvD/19=O{=m$~y{>̙g#=G wާ`nn5AS@,|OC3T`s*ʵg+vS]\i(FtEM-b0w`\I#3(Jÿz>qB҅|zLqa?×?5C 3v<*֖ ?O++O?{1z >y^~>-cN7$,S_9KnxqpK>EKs&Jn%-KC-Gz!}6vr2~ạDHrg Pm;y[:D?p\24WJoqt f_yN5#_"v4td/WK= piE`;V:${6RL}rY=+¶=R1,gWTYBb" q4d5t>)93}-$޼{HxΝzַdG_q[+L|$\*˷?qA;/Nd. r;̮~L+/|lam(Z W;@Q UT$d¶TO֜"/x[O`~njangyx5ȊF5R9(f62>|YՒBj QINl{+WFk߀q ?c/-<܁ _Ā_LRCE^<7TfԷ0(b@s)IN-NͶǕ.pT o"ۤvCk~å]gn}\?n0VmAq\T #Ԣc𕙀W#pt!@FX`$'nE_>oS|k%Nꉑ,, &m)_|%ŷ{Fn4i*G^} @*vgt[Wf O nf,q1آ^_4U_wM  ړCD`XR z{uhP_ؠQ 6a?U Ͽb,T+ v3B>PJk$t\R(` h`GPʦXC3;Rv-hsZ3y+| gu8 ZKnf&6WɎH Y3 6(q|[l\6s[o!*_QNTW$,eB£/l }wbhNw~.K )̑[! !JcFчmHg%Hk,N50tQμO`ɛby)D!C=EUIOX C0*T5P6u; ߁L9s5[JdKuSs}(JSմBdQ*6숻CC4 ʄD:!H͟<$^E-yN$H5"óm C-)j#LDƒn'ݽ*]"G)~N4<7ar$]=Q|wBE tW)柚:z` R! MqcK n.kD|8ɮ @\ i]hΠHp .olc 4uJw] 焧 ^;FUCVɯ~ HK+R1 "N⑍fo13P-P+5  /*0rh.}@MwO']n}$mCIbaVѨ}|O0F-? %3i"+[)*i \sW`K RA;JjNՎ}5=$kp?#-Lm-g#fNIzg}Ƨ EkF%g`5.c6ڂՁ̆(oO^^ ]W;{f ϟ9  tP;Pt<>4KHIP-a5 Cop^s ?PNG.jdpumw<3'vsS,>/5]rm&3;[D VmtgW|6ϡ"TRqЋ]΃!(^rYr36(a(oAaDnoхzp:E7'Åuk~w5h.aYJuRf[O'<4S.vX˫Ead{tD߾eL%9"YYrT|њAWUU} 1B1? V9s2`+R,wj{D{n&Y[A^NMP5˥ Us{6(TW{[$} k)uy. #yh 53ABE &8º*?3g6XMU³$̒:Qw (uL. ((;q&"=|jGy)Y:J&NZ#<<iIR\LIh!i#zR}0qւb*u%M4Ѥw:Ffj&slQ1qQ+j*o1Fј;CiDdz͏aPoI9:FJqhN507lv i%m>=oml`hPu,g5uy#~bQ+Qw; cSuA ->.Il!mC"}K*0倆xDg;`0' \\M7'j t"nOV6<^ vV0>V`h>Z+zl7be飱~ŶuSz(fߗ# A=7Hv kH ;?t EVs\FtcN>[Lֳ<=[ J/PͬbClRs=MW7A!>#7Ain'7>p88FD%q "-Vk{V\_zجc1U"p")m*87Ӧx=]j$l$?)@ZfS2_l#hoI8A>EkuPmToXrs^pQHDYr/ZJ¡ `sPl cvtrd A)6VI\<2->s6F}ÑKged5|׹E3,X n#]2c& ?QLǖ0WDCB%2-(5:5L&gMNp JHN#ޛz Uy_uLe {U彭^;99,[8>Pwu)Bakl[F6͠/`FU.)܌$ x8B4$=c}Ծ6N*,"eJC*O'^NbI*5dwSpy^3dR U2 k6֬kuF-Y@OW`w*.Y˫ư2A;:j8M Rg>yي{O|!S@PNO$"t`z*}se@1.'I@1;cO<|R`VKeS`j?3~EZARd`DžՃ %$WYznYBQ\e;vo+WB^ ~ĕ*{GehD/W;.C9 aT:1a ,_ Z!ǂ떳6-+O~o%I3sǏU*yeWE\зpgVzv>4k!KQ:Mi' ^A#e=®ךLU1˭I B"72Jzt;Ր-UjFPp")1˙%3 l㺡cv gL\@~)S -XDv89JkGuJ)5nXͶx3;h~އlKI h$M'c kRn4r(3u9ʧFL| ={%X̽n.y `V;2Ai{yV&S? H7 B18ta0y6ڤyJK 6JVWNAYle$;Sm3<+~x͝>ߗB=N>,l[a+LL$Uq`)ܲK&4'{#W mo2b /֐)VrxqQ[@spr =gԅ>,qƥ(4qۓjrI"&'r e -꿜pmLPS| HRuVq#|Ta7;wg&MhE\:àɖK/ǃ#)JC# yza: =򁤭H?5()@|,t}&9t8ެG`Fɲ=2e'@\K}"5;ty ٝOc{i 22QyCv+v1`%Bn>.RP801\pp41O1|_EVaV"wxPH'D yǫC{M.lF4`<=?i.%t]wsm,S%; EjU !FV4('[ɩbiӽRV?l˺}.Jh +-&ڂV{re[VuMoѓ~@ֽo<` 2Nz^%7µ&2m ` FU43260g=՛ڬnvuҬò#c -cgK(S A@w+:ǰVͧ%SՆB`ZE(DN R dN꿻KN2Fn^|j(3=*@UAt8tnKvPcMXqZ_sv_ L{>F  ^s5M.":?2-%&j?&"nf:k!ғ2{rzLNLX.j쉘#hFb4P|R1yb (n*'81 QPFi v.b%`Y6 aqR5<8kމb;DR4%+ o-h#$nb'3|7_(<M`]H7wjnY-TWYz;w[yCbذvm4@fwI :2b.,]BsEe܄>{"c ) C̟l]iGd|T!94G08-NNhbl\}܀X/#KQ ,2' "(88UÃۡ~[p w!Mup*%e\Զ=E[ܲR[ۉnu0`.ЋLuSil=rF}tka &W(׳ng;p扫EA30w8.u{k;Ǒ4pQXIv<crn2#MY`:6`($e Uj&)Z)%WIPТyhd'Ķl '0=("uFw8S .wRa*I9P[G''mծ24Toz38 34]ڇSLKrXIB9.QW?&} /1ɇPd.:#%1 ;,r@fCF+, ΩԂf+**L v @Ӎr+k dP0nRrMW:9>psLUM \w(M{5U>[r@hD%v$Qx4*! '733pC@L䔋dbCe==28wVQuC^{޶9o~o0HŔ R%_ъf€axo?S48)9720NZ}g=ņd:FN/ULvٳF@jK0bc~!c8\Pdrl'Y+>ѩ8\Ru [ƣy?pnՆ[}cD\>CDL_;L66-#$t"[LMe+qbBcI] 3;bcWT_78nm5(}ZxZwUK-jzLyC10tXv`w@+X>Zן.$/520tQTm-ak et+Mn9AMӈ|Dz9oB@j9 N̘h>+v'sMo&<.X'#7Hi/jRMP%r^;m-bǨswƼ圜NZʱyJߐ[u7a4:Z'fJ ouѰ@3ȯ,Nv&_%XlNuo`4a\燎~6[ְ*Vr2w4)}(\3x$ЄSzvkκX؍uA8Hh7f-I6UBu0..ȭ^?43{hu-T=}`#%=Ql6p!A](\ǀ]#ֶͳ\N1=A犠I\=x/o%%L^[:裨G&^#F]8MSwpہ 蓋1~eKܑ0z8ߨ2g'^,9E,{1껴o< <,O[Yi+mxhƚ3(M1w/v}WH^XT ֿQOՕ|FAiVr)ҙUMcRz/aG%n UvgUQ>З,AY(G3A,+5ތ_ؗ2,&) Ǖ ^d*F\obecҡlsR֋&1rr)C2->+E" xI楸ܴŸ/6Dh:KGΜo٠S, O0@Ua"põO aNG sƼŕ ,"qPL%ZFF.aOUݐHr@M'$225?K]m԰QAM% ζ3 B?TRM\݌R QBcJ6gX<te/|3Hk[]daهji25mKm\Sst o7E@ XϻPr M?\)~^9 W_.$ɺ!ww%Di!" ?>K4T@ }zKD; A8 Sj`sS$%w[ͪF;ֻ۟/ZD1)9?U+؇l(qCk](k=5 x{cf̃췸]Ӱ<1ūJz17;}JOb8 5my» $Cn1àOe<<^9N͚\s:5_!OΩLE{ vݽހ).U!|&Jny4%lPzꛃuJ7X؝w:q ,,F# 3Cҳcދf}^ zڮ!PLsPʱh@QMd o쪸%RE34oE/yVEy&Mۆ}pQ7g?;. ^ hIx38TR\[F=J~޷uS;ή:[ZQlQ`pz*\QF7.sW\~immG [D~+MNo.bYim(ll_r5ߌ{F|QmqV5eJt*$^UQ_;8݈$u<['U-h07 qlko@kPUOAy\*T{8F<-?`f'\N$HFOBN/ZڤS`d' Q1Uiq_I'kNL)PgHDϚM9dm {X9<=r&x,%#Dds!2!R3T\KņR 'f!E`א7ҊN{ s{{]NYЩ@GHӡT%9 %E2QG_Rm:jq,ob=rϖӂ yC5MX%r?pcp@7i=}L #\ƥgs$3NtZ7_c:?mf7 ~R;z19ۄ|v]y?hQ%u?-VC))Kf7lu)MHľD"`vmxN;FO86e>0A*WjO8P4`a%n!2Bh筩qʬHk5Klu%əo0N#tZrס02,t6"Jy(P:u\`)6npvM7Բŭƒ3y?RTSKZb&{x~q&ioFtQ5_E|=j,sf6*93֒!GT/8qWVxEб(dBwքk뙠#R+'IJ~XosXbպO`]5ozèv8 hW)*a3ȝIPH Mlh${/(x?6r;\U4c0n+qb7$a'TQ4z? aKGz?qRbD~wa0Xw p}ywӅ.“/I.ME6bpE.F;Pr>8--Nl!@rF(Ui.ґz6]7g|45;XJ1pvES3JQ|B틄q[BMdezG-ǢȣNhC^?HQ6_(f(F2y#ڜj[ 2(icQ*$8_]7G߅$=i;&# }ܲt\Y'I3#Gbd"~U/bжVp+5+KD*enIPDZ~ۅ/3T&|%U#y睯e&S7Dƅ² ⬮;D?r&GL=PQhi^pMrz$?5]VŊF@q,B9"75A8TLNK,oslBz  CN8ږZɹޞ/) :m,TY9(+P5DcߏIߴwV%T89Ew=oNXiT}ڐ2'ĥIİl߶zFS/)1s=^1A77DܭG~;?]ئf9p8UAV|VV4ԛ᳽vs@+;զPS^.W7 H.! 1>zJ>FO?2xYY(Q s#:I*&;i_ WwH2k4jh2;mhqrΑU{'GrpG,GQ%攓N-þ VUw t s;($0hw<&!1H*bڠ =񊰀< ""X:9xȅtj#l:Q0uE{ ".S0Ef%= {z|Aa۰+.C3?|N:d޹TpĆ;A1f%d53oY2NsAvR#@Sc@fYWB' Cr"k7 yW€#0٭18P9fA-\18i f2kQrv+7@>WL|HB k|c~kdFWqM$50>@Rp- ^TH&=gJbN[cU[CrqBV‰IoŪBo v'rԎ{N9Zc velhuL@%?]Am G9MAC@"@ 8 r>~ ZHZ#`ms!&dJw}iJĽt>i f^f=$SqJRA+Ѽ09]'UzH?*"YH-s yz 2܅Y $"{&1K^lm_zK8Y} k S[Q=}y(H.rʗP6bv@ 'wohz wRs+:ghUDvxwz4r?]Kec6e: +{O10n"%$K/%{_iRyShP[;Rb cT :h{P;^⦆iwyQ]s%nO pIjH^k3F@n‚੣>kz$F>{Fߧ^1zt5V_,r7WU|V$6HZϨfµ?{._Y4 ׷%d/a'd.ߤސS=JFsVmNc Y<Ȇ.HaxSm䰯b@ V Ʋo1m "dY <}xؗJyri%2&Mo-8w0aBJƺ>K$m#4Y U 8ѝHEP>a݁:J*R~`~MR Uw(/˝&q-)aSs;Re,Z ;Ӭ6 ߜN?S\B9mdDǬe)wÂqBCZx`YQqpI9e"p_W?fIRnUVw@ƅj)OQ)~쌞{YY[2'Er3z Q)X(2'[O{ Df,/pe,.JxX %x4|]o!]jxP(*@^,Y!YB+jH=+ć sC"ED{0T8~4>1(TK'`V) g/-!?*0%Gj+]R nK"^F:3bI2?@F_ c*Җ!nP3ѽ؞n"-785 cxlH-##c`yf2տ6(L#L<ԋ;IRLӪuqfR'0a/C)L/A]~h;,ڷ]EnQ&xH3ᔅ[I&l5?X!–, ? #}|J0M8>z*- rW̊tΫ5f*V L?|:G,B݊]PCB'LkJtHJyr3F}iv7R`X.6gZ#uBvT0G5`]s JzxQ }6 W8G\1 )GO\fS$: +Ҋurk7&@[f}oX__8!d$j.>yy`:8F/۽5Wj#+R1I>P31>_.L7`VɿXkAL"{N(詹.r0 WTs ϋvC1=>PmuV"HՖ2P8ތ 6fH/59w4ׄHGGYTS vT\}Q,$me?ЩX` yxM9C9/i6n׸ k#c?H9 جWş.CbmbRN] 3v,RIX݁4FÄycDHW)fS7*J ҢzG]y,pU- !lKD{Zl=!ȡ`Z.>(cXVrDSj+`nT!M%L_v8>/L' 9+`Rd©ncu$G m[7BE1rMUOAQ+ԃ wky,>b?qmZ1u a D}RSq3U &JTWJ !C"0hFͱtk#2OonFҡB TˀE\-t#c)iݭv #PbXTyULV)Y!>5<֍LwSAqfI5]X:LRgDޖɗP'x=PxAmu,ŎߛTP^U*"Y |tqɔ;RER&zɑkqCcٛemN:w (L<ԸӒ UB(_,ݸ:DDpPڏkl;eP\Gy'!%cq?VZpB?qA<4ɣ_Z^Lq[pm,BݚD ٔ#aO˩> 7~'?+H/ۘhOsA#Ҫ{B~4+/ WQPrᄲL>M;>R)[0b},s)hd (Kf>bNu$^}RȎ$l5@3|2yaT Ub =/vDH%ےlK:G:l#^6 o$[Gi%+99/$(b*=Nn%÷`(%qzeKWQv݄g)C \EremL#6 a@ڰR!]?3'B4-z]F;2[_.j(Nz0@sGh͏'a.#@B 3ga)Q5H4ʰ%Ё*ݼ՗DijהϵtiHeYB%aB;1f~@k`&D sI?-=@-HQΔǷ;mt>PcOAr/Қz+4ycgS Czz J _iLA<95L;svH=Fl.yCJvDtgQFHn,^j!Q,{QU_+cI팹Ta 9 $D]eǦ E)3:9s[NjA!xCXŐx]kܜj%@4 DR{iY6|^Z]ԚnM7q?Ġ[L^jW.!f퐟Pf˔Ô, `H}2f̖Os ҉Mv} ܪrzC:NwZ?Gs9:G[$U?G I_[@')Wr{Al3ݡKby8~o'&*)h.@8†$ei:' HY̵RV!]BgR |BkfGJt$*4WƣduXEw> M%s\%-|"{b*cL_,)Є7h b *"bgy]'&@GTqXc]L=ۗ1}D,v0l*b_ |""J>.-(4VcRbi ͸HLzb 9\)g%pLOdl*@D9 <_`|r5,nKb+X`@4 whd&`Mzi'޾]k B({w mR{=V[ )YWUwn`ƽ#)DY,;ɥ(?>"YI318f0V8gY|ٖ ]Fa[n$$ঢ়3Dmܬ\ǻKsz3{20K* u|19 )t_`nr,,KF_a'$~!hk}q .6MM'=uǺ$, * eћ⇏BB_ϸ_SjJ\"20<'Su8|]%1ij̧fuJbx*Ly,z*ϊg\K YKY(ˤ}[ (1܋CzܶEAsxx7zߞ5-OLYj vs!8˓{ทnSA̚J4'AhdIm<ϓaGfHV찭KQ \"uB667?(k1c5LɍˢLվ0Z!BFp%ߎ㇎W}ZbZ  |`  u<P\%@S<F2m^Aj?<58DɷweOPnY6]4QF{٤DH$; \聆l\ $ػki7'*YXbo0߈+C>RmT%>q|۶X15 .älGWKLU@՘bk Y98O;t[na\@\Ǣs2L7ظѕ4_pygeԍn&KA行\3:5n;ioO6%QQ%LA$L%TThvP+v$G%_]/w`^7a'raquN6l$=sDOcuVܿ*OUņn(:!U+([ 9 N;lW:*o#iorv]7cϏaN|#y"ʞdC`vֱ~M]|`:LJtAX&ߎc|-w'2'ipٝ/~: R v  MԿ߱+^9a 8V(_;pڀ )f/i{F̱l>|:b}*fIQfnTX2?%C}O;l7s/'_P}W"_@ ybcPK3Fhtt:Oг&_>n蛈b!]߈L:_]+E!M*HUAԉ4%̓ vhmNƹӺYJ]=:g )f'm@,6ezO~KoJ7֔"IM"F#CBl{eKX=vYMLܺ)?;'3s"Am \}!ɵX*gؾPQN& %+|^σћKH=5" d\\Su -v 8 Q pTY{RD8{\Ƙ2BC9GJ( `GvYcZnEYv K3J-e<Yjz49&Tы9+6,A)Yp8%`h2&(r -ͯ6ȿMq]$?8@R'+1@$Z"%$yQz5 -֗4^DP+.w$H7^KԆ͠Rw4I?(,@,0O.T<^^lJ` 1WǘrEä(k%XT}`х* f=$qLy$@ 9hs prL\ ;-~ =݊|-t]ӭkݼeP )5'm$E.vTB<L#_ɏ{,XPxHБyP΢N^c»;4:*K1JRhGSҒq+OQPmZ}_WDCZ hto2: k-հlq1l9r .@F`wV+L݈P5 9?ms I\R*KmW? Z wP0hS2OMpo+ӣ(] y๒;:!<@UԠ:Mٵ#%{G酕@*d&-kçQL.\Y"|aj`u$5V\<:8rqՖ1 0L@8y@6 r' Uz$qNjB'\cvC~X)rPLV/gm i z(P!6IqN(d6_g2؎0!vQkGXU}Fa#WPY];vF*bq,v##(a\*3λta]a X*%wmjMYVɲ*{Ig_O_T0&q m!XMFG? WWMO*|kR,GE%u omc?7mp}wXS61)[0IC*㜹q+6AN>_ ţ03A`pTYj'wI{ULFf!d$ҦPBtDM,j$ B7)8Lp"njeGK̇ŷOtc!k> !cK$^->ZtL\}^OV"#zLSU&>Gfe[yYjj "#^6@5bOlmMn8M";_?TeCg~W"]e,B D+rP2aX|{l6+z_*̖Ug+tB1m׈c5M5n?lNѻgs!iv4x JA|}3ss(QchV~WD(tΝ:S)}s^`}o9QC1 [\sndD?Y봳LUCIG KQpUx]2?5kEDD}y'€D{gy pzVB$[" ug6I^- "a[qJO 'o[߭w-Z[iXak.y 9ãm;c?[M{ΫdR͇kl2*/Uvp¿a O.m|ʢ=e%4/sUVN.xևZģ.24"{˲`c; B1~ո—׆Z9,@M _-+sjY$FVlfPJb Qǰ"?XDElv ЗRZ[6m)diOƞZ5`N1ы`H8LD}C.u&#>,)Eu@涎a# Ϊ3@42-lFᤣHc@]Fp?7*HSdNc#BfΝ3ŹͅW:s*s7].[h Q"z-I𝐶W jW5lY()nrʼnh|a:ɦ04",0xVh7ѪkqJ,_V&Q&[a`r2ϵ4l35kNTLi#xX 1NJ6RW}DJo}:AG0@ ?inAn{9OyE8D5y7@X[KHqAUⵙfp*j.h`|ǯ;k;lbܡ+ q`:cj'Hv-43V|O)]έvإOP~@ΏD?We.>BBiŔ_c%P@gwoݜ mpTm*9ڋBrE&otoh@YD3OǬ&y7X*F*(lt̓ CH}Ӗ4X8:eEp[PKֹeȡ> | ZmEG8fKLWƯt.|]('` ztcN%+*ٯ&8t룽0'ű"EWBx9"&JHHj N-nȎ@3*Tt%GI 2Yn9;%rw̳r5/cj/u(ya`~sv.6őPm$yg[@i/DJQ F6p3*-1eydR h-z$r rhG,K1US)MEbN_TmȁX$ɼj|Ԡ=}_Nan!Y8^o:ЁўZ#TE7iLpQ}tz~Qʒf7&?mElD\"S&Uq*V.6C,< w'$!c=0%WG%7p"Ok1fZ86m.RsykXzpv{7a2k߹׵WsViPJ] p$Hf99#WK}XR=B#sIQmFCm6(4+H9ɥ?Bmiӄ;s2n zI*S_*h {&ҦQ DۺezthgA"O]x1x I홪W,Qnw[j3x6:y$i{Z&ئ8/M?w k@5RmTޣ+4X<4bUnX:,{iY [M؊,1Ѱ!LOV2Bjcû8Y;2:㝜Uڰ|jBD@淗BV]{NUlB^4Au4Eke'.0f xшxt0FQ!86~'k,u%Wn+Bx-;92~7 ,jjO9lrY8QzHܚ}kMfhp]ֹ`rҰ*<Q?F'X>l""Xć卫 =g 7I7m>dhxXTH㕪&NtS:NgLbw Qy=dײ?jydcPF]kT:PgdjNv Ѝ *>27rDq8f;>Z]poBAj JeObvA$ ի!'XF֪b!SXq!S%Lq~@. 73}KM ڢE 4x-t!h3}*#"H=^4<@@nڎ4U&' ٱ}Pgtr\r8Ps<- " ,yiӟlA}PF+M]kI;lm 7[-2 fI悓  1nOf.!(e1^0NLͽqعf,:uʫ1W` ^uf} yN5DP`c;Su|Ĕ0" 0HYtPf+\8a&J82APM_.n?|| vĒHjr|ȩUnhʍ/|1Bw? |C.*uƂDbtSpYܠ!QC͇L5ӧTy^()Cn18N@FM6r3 ^{b VGYhݍ$SjQ"ʶ+HS/#~A`%$3\OA$ڇH} i0Z%4ͱ-jM")>5KPNaUSUǃ^^Xea)A~_)WJ<~lŊ KS>iR[GFջZG} (D(+X|.WBPD+> ȳ{J;_WpI$~f!Tq|;yϒ骸_1)@e U'MVG0#e~Nmw~Cxdvj$qUX`;$O_0 Auh'L͙ ե_mrd>e2Q%b"2un-zYjT/~kyK)JjСc%{N>;ThO]U,eL7F8n8TUs<; nI-AB c)8%̍'=ֻ5n@xsk10u~RN ]׸W9 Dy<}3&*糙 |w O@JWi61ᰰbr+Gg5'0a`"PĘpQ-J! cZMq [ga#EyC^76l^"qNRnԣXP\a `WOEWHp]*sHb}a~lU'tP\10.0tgfR;"7J7ŐL`UYHɵ2[ܟRAQD h[>3>ٯ+NHedȆnzM-AQZGʖ.tqENL|$蒶_ 5 pDd<[fBNV[- $D>ʒkǰ]L=koRYb^<~3DG7(DrEjن (-5?6מVf;b 14٨>ʁrPO O' zF I|] K( k$MDͪW{gD^ypB٨F#Vu1&Cr ,.@f ?cVǧߐzIOB$9(aJ-c{sUo(mOو zy7$9)S8*%(٘jԍc89m 쫃LLon/kvV-= ( wߴ>+A+5പ"t\03D2ʠ #67N5CHQ|{7n@{}:dj4!6m?VΨF踃/@(KjX$/JrlDvG=^N&ԒrMwtqgT] +6MRt}Yŏ'$/CHsnoʚxPܸ\5Fsb2(8dY9qvq}LE9F DH1(`<Ȱ'3e/M9Ҍ>¸e A6ʻWn(+ K5 5 װC7Gpb(=ܘ^qQے&>z 3=_),uzP{Y޻IeeQA >VxaB|B+H/ԯi :^JStZF-]q᷒ô.OhPqkžh@U}~k@77N~UWוө_E-vD#/]IA/4hN=Er7j!\iWc# aǐ<b>!S5?fH)>65o6e;ە=AK6G^TOXuc,^Wn5v6Y.Zx.AjjefbiN5^(м_ ^?]=OFTӻZ%>h?ɒsᛂ!G1>u /{,QPK3Bv )[zI$ &ya5 Ps\ख़6{1I _A.y:+%2Jx%6]DPD,;1{DX b]k0Svtۂp zͩ4i&d)#k0[ ~5PYuuC i5ݨɰSsVÉE`oZqGQ|P9'Ie%GrT`񃰭D %!*{?c>o]lAZLd"8eg s/d ÐdZ6]`4ǫE9+lC)'DRD ywubl"\}+.G^b~)hxؕ{bt%gF''Z` e=_eDGs>mEqTj 8Y/1i'֧[|AR_6pz0y.2jȑ6p?AsD}>J7y;x,!^M+TKR*Z $FvitsJ؍wBEpA=K9Vj˦XB؟VQ qa QM@m zY:?xqp$QeXL.(yrh]e[]&1{xH t*QyitĿ?TGKXl.֢6_y(}Pr7 *u,Xbutf{5G=hh>>}"f}h^;Q#xnv5*BֱT17@ 4)h$?H2:V um. 9a JQ[{ @Lv 4BvmqeSY+Gw}8DKzu4)A1belPf!ӻ-T2z.tyDAcP?i@Μ vmUUo'<`܃ل-F"^a̶+$YG N"rg8w]6&co q1QCz2yF1<AYZ2р3 vq_{$q7%k|?uQ3sx 4[Y3iݺNa\O`bvF3jKEAA6y5Ͽ~W޴NPM͘23;g~_09wD.\ E6cρ}KQly@ODr1ҽ֓)ZUxM5 "Z~b/7ҝ?U]y ©ur c ΎO 4/c:~r) 0=_}Fj}s1k^u<ͥi[ZCY~ɵO"q; xw'͏'~\@;V.?nFnB\SΜZgVDkټC*N'&h"9|$S.gPi>Bu<]f H10N>]ZV@VbP10<&n#Cզ6U}-w;7դq^l΂Ł5[Ԙ \K xoQgY re@(.8 QkRט7Z*(X/9A'ϳNm3u6e \27S[/P $9 ze(. :PU5]-SoWVtjYj+Cs뻀8'P VS𦔡`T*DB<'O:z 3rBI(Wނ.IWCv{M?Ã\#2U QArwl6W%d3'ⶉZN;_]IVC-,z02|mJ:eǩM܉! {x u72tF{նLnåQ1-. \AXso~Q2Ju)"U}BOƙMC+R]-U[`iTCro0aQ>Rsdf0=\'z3fSb޲Up>$i3YRDFDmYk!NNiL-[2"SQM$'!b5<ڔ!*^.`tr[ WOڅ9oA8隕 þׂSOXǞJS&Yy9Hfy$mD7j!dΧ9`l @f!,=k_􄑋TKkycX _ɸЏ`r&!_,w12uQ~ECy RAJ?(#"m  z|f{7:(< /^ 6#x]DȍUxżl= (Puv bZObcذiE~?9\:vSR]^d%,v{S`4 ? ,GnC&w48- bJw$s(ǫ8Ko#@A׀"saYΕ/x4[-RN,xUmzk3iI@1%K[ͺьF~WkKh1k8 0fsN6UeaSH2K񎠺Z'=)~A-%5/MrOERJ90{"jLI=`J\0fO }]$VU,b& )]8IE`8ʄ`iapޚ3xr#Ȕ?Fp%rYO)c}]&6w!td>+{&Ҋ?rXyJ1#WX뷤ǾP~^EW2;0h)^[hk6 Q-T[IhRjjij O?ޔnD @Q!o^:5 #Cq18%7!\Jl/?S7cqlòa?0!R'(cooڡ.$9[il\Y̍X{._a%Jj{ *r%Wk )sO Kp=x$OKa I!#C%>SqHBl /Dq_A.+XN+؆<@2~mo)57`צ(l}*F5 s  \K4z(5Dn}kv4WG(CT׭P1m..b"쓇a$Bߖ^fk A;1pRP)Jz_ym6}Bi Gw<ڹ%dxr[wFݐ1S\at.BS-YAo\n/(5aTLVC=ԷxP_[kIc8|F9p{+/ C5x/S FV 9S.b~qd"i+aɚ[ Z-+/ ѝ*nCX7/*M^s@ϖJd(\}~:U8][pEl 1 uI:jLMxO *`?(m74ze, `Up,8'BS,&)&25!6cN"],dvYu|#$oڡ g˱>LpRlw kuuy01jy~1KM[<]W&FU \}]4zEf^Z8BYM99,n6S;ɣ@sA#\j^Sļr)]8\M=+JOdǏL kʷ)M x-7X+FM!;ji]w6JQPž Z#|ԫE\Ы+6 joUv8.9MQ9<5AXRxPcWU?#hi ΫaZ> ׄPKc4QȑcB3SGpc4E'"G?4Ȳ?w<ѡgsQ|}+D*sEf`] yg/ d|⫬'d^YK3G } d&eI`[E)ȯUZH brwL%(/MgDH Ibjmw,a"mQs| $V@(hB ̮|`k7Fa8oSx5< jg" 7sO]c9IMC$Usw(Lnč'\ޚ@7^*p=$J`I w䄓A=ie3>q5J):- c]xf]F{)]19.( ;$|5q CϰP[q)j8-) 0? ^vT'hbQYhXD':HGDHyiR٘(D-E&nΎ~;?lu0UmH5]4J8Y>"sz E1hFo!:AN[plL1 1uG> =^ƪ_$})h\6$˾.XP͈}Nv:bL {p1⩏'| kU;6do:L/Cю%,㞞K_J %?Б} C /Yp,\dW4+%Yx]~wO-J_4"T:ָ0mŔY"% :ra&`BӻN=red%Z`nA7J$ g;1ytZr7= ox&C1P> 31P?v?yf~P ~B14AfbU&^vR" !2XL@_0QTHRkL~R aڳb pUA@x7ܟmyMUt24Bڄe[j'\}qƽ]aU UNRӃxy8ˣv>EQp Qn뽷"YxyYo9E٣ɘA۝b"VNn A?+C8]M/ lKH<"`6 ZNJmmvѠEڢI+&6!klZjp0;aӧu6O_sWUW^7Y&7*l!Y%Uz$W6oE8|2kvT. ?dn'MI?Sق\gBz؛)5Ka59?TWRrtO&^1 'sø ^;^H}Ck: <xDY^('-u{4EXb52T2杲O6he%DFѓ0_yG#uFrjMKwإ*An; /l= )4%{ `=d4&1 $!Zn3$s۸#]C1N12Giw[$` ]ӵK8V}ʝq)C$m@QL|#bY\¨g0}a Z`0C(ݠqh[w>TʠM//xg b_|R#Ӓ  জ~V sDOXx>&AXj~,NvkUU.xy ł.st#FêtU_zȟVڜOǜ.vøQ}DIp=pUTEM9@a6mp9F[#Qj}?%d3g͸72d^ ,=0S7uv0yg!:#~3>a籥ʂxn.ʞqP+Ȍ?I?)tXmSs}Ʌfffu b.SN` ~&w=jt>-A͇?t}H^PDSX@뫈x)zih4c@(`W0/3c(zxH>Jpt;T'y޼DwawE0:60"/>L4^Opo3T^{0ޖ1|s/^,hU˖v/ Touoad~&AcsfߔeICwf+ֶ\ D0txf~àG#l0.${ |`b;@ +vZ=@+L_cyoD2Ĩtx¶WU5/䉧b^Ȓg 癁ڻx{m|f\;^y3+G\Q'#a5o3=F /f P!*E2ZA|'E,Rw<Ԛ}_n c *Lwg4-xc0Oqws;4{Xfw8BVod=yHZXh0 rXԳ>"r+u`Ί'*[dvzS]*8!X+0j5?,f VofϧunAm 1o22Z[*hahpE 998B 9%0R݋yӄ7ˍ=ؓY`˥[КPt;y<@uno9 ~lk9Dg[NP-!Waf㵳 wL采3U]> ok)G5µ3,':mZ*2kbۀ2%[0 W9۫jddž2qhmDgSD yFL$`ɇǁ7ުȰQFSVHn9t ~̟ B2XP6Y(*;>oIL>o~wqdx`B E8 ƆfA`+ y?Jgu0KB]qDRUQ2lV%Ʋ:  ?# C+e`[jġ֋20$][m0e8 дj16UW. ĠSIFM/rX!i-$jO2VMeҼϓ|5k}i;C>#Lt5jASG(pQіw%#*NbJY:_H:7Šx ;؝6Z&<0=R+S?U!;`}g7#(61xEa1'RrCoT]e!~Cƫ85G@7{c ߑ j/ʔ|#mkHC/\r8Nnc^H gRpTV^wO`nQ@"x8)OXBΥI0:ƼNNH2Fk!eS~ab+|Q!vb;nzJ|Xo$ߌ'p8@NoTM>T'+3Kɝ=7o4dv0CDPR#n'>7CN151 , Ej[Vb !6fgHxj BeohGc&ZJzB= 7ZFXv &qs>_r̽ $;!mTAojaQ[#Xzi5z("I-Ck~T~:Ҷ0]c,IhL&*()T/>d$k,UOlJܸXlc tޓ@׳jugDX#]q*ps>>Q,o' Z`yWFFwkRȐȁŷ觵wc*65tDLbL 9?MuL"kxp|Ѽ {-Pk ֶ= +ˊ)&os|CTy6T@ Rܛtzĝ @* =C(q:!P-Rkrelhf<x=ϷQqL-xB |˸QÚ{KDC]SFތqPtL$&X9v. ڭ$E"fFB#I=샪^bzK3Mm~$zjCh[Y4"70'#19fr*~eI\)Q<۾Yszo|tXri -ޣ$>{e3bqF'#2f ?ըjSmsz-HXjg`#>e(`S'xfQXҬ  fض`_~\JInȉvx ؑ6Bcka!J!Ɠj}"hŘ3f *ZzWCܰ}5DOʸM-X&1m0C~ɨr/ÇAiJK%FmF,s1SKzKkt+TbXRD|Lr%F8&x~LW9 ݒM{+ᯁ5qTs8a4-S\IdSmA^_c0#?VJ8y*3/c`¥t_$':Um{ Rn7uR P8>o7Ӹ ?E1Ȥ,vtw+:%uA 0Eiݠ]ٕ?/^@kz<͐^D5/]cP=W@O#!TX-:-[|}jbwRdߟNd;UE7W8)N% @ 1\1 $lLgI;$EU?j _Kew-Tט%\9ɀTQ (IGXy{6ߡS ,N6|"v2I]sVBtë\zl{)Q>2 3X~1 ULMj8NP;[KW,ٜ2I}R[:LV_2YGyr> Yu9OK9뙮/m>*W( .iE"gƁ"gP>~Dj1RE@0Ғ{ -x*DMrn0IuUBQ^几y>WcZD(ڧG;(MaէB3Ǽ%![^V2D1, ْX|i!]];GJ ;)i?0]a6Z 1 Xo4M\VmgSBaa'!Z[I3׭z?W$d%G?E4Tn9V"TberPҥ$P&+) $X#v"j-e`T&K"u8ͷe\W  eE~'O-|T` ĈӸvor!W};ɲ"E@<{2Ʊdp2vŸu,׹'Se:cMsVŢC[JmX`2'g6md-<^G ¨40.93'2kvnnqbAJ7j R ' 1̟a_97c[j[!\`T A JTiE!a\Tj@|=diI~M4փKv.yDGՁCp>: p;H$ecMkPiHBpb8yV;&ffGpv\Pb`veh=#bi*FB~ ^˾hk҃9DsH{a5}ILYؿxΖl+3ʸJTaI̯!SK;/ZyUjf} FAjL5-xO|q} 粖 ,*mYJ#Wz$Bh-|Ez$%NWnik KxiXIۆ־hO[Aٵ<RZ5|Cʶ{Hy%qhğVx^ `˂{:ٞNKY]FIF"}zf;(5},-ވc-rUse@i;U^_p.ỉTܦϼIr+e2wp(^nh$%,6#)t/奧vܮ=&ޜAD޳\^`\:*n ؽq0|е-]QפVWEr S^*.tuEM{-E KRj:M&Y "Iuȭ{/ yqO1. 9/;*)RT$ WA*.@In9O3L1E\-b#PdoXa0Mtm2ebLYf$pƫز;m_"%@+1?sg1nZ8z0nYr4W}ԥt-<8Zu h㬕ӔD$.J 7NH> xDePT&Z0;vJ3Wgt;H#6K(_ ¼U-۰Qt~=w ]K" 2RgDn Lc ÎI\/{ V4Kj."@eNaK1E0嘏&\.#`cϟ_hKٙTuye~!_3y2\G/?41N+V0t(1I\v)BI'L>_DխmewP]?D:[!3Btf-cFG`bCao˚_~!xpNt#}L \vTܖ[pW8F VbCP\x #:iDOI"FexQay֘9KN&??}4Bxh̳K ;N$j!VU;F̘Dv<(dUFГm4[FO[5ދ|s~ОWsWQucBU/{دy~ǘi{hJugh"6x&Pr-+Xe͐MbuN;5IkA}goi}Lm3SuDvN.DxD KZN6 pcϔ0g1O#oVVD876W,^;Z(c|\ϧ~K[)$[~bœ`jGud⎛u.'.]ɸOE&gjpNf|o ǒcm^!}(9d3fw"Z|.LT zo"p(JwD/.:c gL%OTŤM-^yk Ab}?' RVtjn~(-0M HLLDA*]IUDjLfil5hsT.nET~)3wyEZVEɌܕSd ZܘF4.=Hi᯽rZXn3 ]r/..~(*`͋aV Km4evSd֏.X(ze1kU#]n%~pC[#v0鵢ڑ- H-,\:;JtҤWⷉЭ`#Y f@pZ䳴n8P"'yuh,sIEVl1?+ްcgU[gts.╔q6lO[1S-ב!:=ӹIV0݆XMoQ x?t>D.9-geڎⲏҠtU(Z xQK4"_I'%7!0«z[+&@u惶{ز+a[ \dh_@@!;[U>8/w".N3 OCfu6 :`[Mv12O#aֱF*}x1jZhwN5z(8a%l C~OUF{}GzWKcʘ+LS 8&:%]Ҫ-wCf& mQ6woH2-7TGys)kɅ"`Nk}Äzw___u4WEKNU;@ /(H°XBMc[Xz1Pf61&LT0U$::ƳڡN Hޙkbn: tA'ܲv(֎suT!y7 /?[-04^k(y;6]x+GԆ1^A4A?Due؍!CYˠ(ATA&!Gw9D^ӟ~+IZ$fҿ~^aBl6ǺId!^mᠦU d5lɑg+%5gpRcw5_)|6搃k6:}-2әR΍-џdkyGPBP4/fR 6\fX͗>΋!be` O'Cx֝FpAq(RsQ߅$]Y Ota!foMoG42TB&?B ;[7F&=zwiӣSR%ʄy}֖r4 NU6n9T9qshT0j ]pz~XijnEN^[`x=SAכLc!rˑjJbH)DM[hΤk"i|H}(EܺEa}>լ62߹5m$sͤK-ݜM89GG UL AxM5D׷.0^WZ$WKNjK~cNa"VB+øw:r >z^sC&b^i4ѣ WL]MY4 ^* /B%QXF,fw1E 'K>%bk/- FNnŐcPl|f0cmbr:I63LUrzi"2|y <2N}Y d6&[/DretO/ފ&I]BXu65IBKӴ8]M\`'P5 gw4"Zަ]>6xVW"O[26uyB3bz|:ŋ`g#Pӝvp"q/1`!-&:a@B- )BAK'VN\=+Y6b1 yPKʥH=^eKwotC-WۇaEA-2&HoqI?k\ɘ"- &nx6R@)% &wL Dd.b"CN$i#_٥7>&HQ 0[|=+O<}3Է5`c;x4.AD }DJ}u]ID?\=d\,O}OFb/T"KkƮb^&TZE!VƑ[6ivbkTpi~=[]Ȃ8c%`Zq!ї## NHg*FNn1L󶆻~Au`tѢ8SԿfb7LK zNR&E8WLrK1 h[$ (?J Mgʳk[ș O7c☙8/eC5Ci= c}4ՇtGZT]9p6ӨPd=d.Qy i0W"}?/K2`w&d&njWRB4?XB$y/8( S3W)\?OW *Oi$lU} ^w|%*?58f*|xfF_+t3!h=#7 ܳu/fjwUI-:9/8b7刵(j-DΙ0 Ma!9P t\|5l :294~VL"@gl**7|Qk\C:}?h_B>=p+fw&D%VD2ww-,_ij`P#@miq{qyl~Bq,EECۂ&KRPig;i\7e2#*/S?yV%*2ߥZqkn-~6\dq9Oia"AFC g65ۀ|+ g~ ڪs9#;$ć(L]wdh,Y[ SDID`EKY*.[~ `6^иux*ݸ>#'>ciaܻnZ*-D|ˋ_)3NFxv$&m*Q>1V^Vӕ8D)6%#gOA`63rkdwLdud&98n -$ˀNm,%P8k2\f9g.eU_5ǣ 0-#"`iJYȨl|I$gU9jhMu^u'cF8VÚ J!qm>>Jr#-Ff\ܒ6E/M} Gq~*M|HoT#9$6L}+nvYۮԕ$ztE'Rm?hrzO (IQu[@ JGkc;9S6>fc )U&+e9Hģu$bP i7Ds.h)NM.JL$>\ÌlZTˊfR#LSBghl@=O5gX?ecAg%ؒY7_JDGD,bi=ӛ4AhpVU4ٽIω'?<=*K\`bNIUAwYVX}qW]#׸-7u8Ì^_.KFZ}i2GYN)(oBnoC&#ƫd`(\ 3)B"0SI⚗1.7~ISA):V`b)WuU}/:Lj8c3.h4Sw>+/uthAd$P?*10_2Tj$ /h6QR 1( uu/'z cy~ah[heH2kUeHˁVTZ!cWP d6&"t\lAVpchkq'!\T&G.gV*f@>r, '=qb&U;RF'1u"4 e7=|4Υ *P)oZS=Jcr8HjN{"ȧ ɪ0nW7X067ܭZ@ဗcB.(c% ڜ8+@T*4~IŁ^1;;blyΖ$O7 )|d_cNŮ"n;PEa{_)% 3rѼB*p_߷ݹ$Szҗb.h?9Y]R+ШȘ/1kK]KK_ǨA[;-4穑_h8}Sz+"9Er3r`{ O 8GAGipmWtyXa :{Zݴ[6 ]^E TiBrq`Hdʪ;\O׷ ֕/\q2!@?L_~ݒ#$K a*Q*r;}>iBCn"DLҖq'МةmgBPEgmVQ ):$6hx6# ][0&9l!9q,E#ۢU{ Me{U R Cd٪(Hjf?ShBԇ8|AjpEA!GnzhZ-S-@҈ş ޭalu޽fZ:z+\I<-gnqN#_VO: E].ɣ qWڰa(aPȄ ?uV*'B :+K mz>VM6ں).l}… ڙJNHc6dt^{}AS^ʆ}r~udlՁeWz6|*C-@7LkSNw2Ž=쳓Rr|jN Ӷ4Ym n&ۚFv[Τ*֟rLK<2XPPN}Q>e7OMNݪ=~7H.u.W?9qbV jflca]= ئ @9]ޙ)FaceQS 6>t>`*Pn3gz2znKK1Њ&C= nY2 .- r֚S!w.YŞe{@_˙< ipI5BU zm Ov| \ȬtzZflZ1T3iu sCg_]-{覴.geĠmht%h MBCn䦣;ityA@-P+\H20 <8ԦQRc7 A7l'[OuRp:|HcnU( Jnjk3<Ie"?;Y>\[ynqD\o@>mK:sz@lŭȢI%WM怐Xxܸq ?>X 'eW@ܫ$EWD»D;RI$whW˥89SP7ȃZuy.Cd ?cv2zIqi ٪*8Py^W/% E~soogۤS^&ʾeFw}~vUyd{4i#k,©̑dfp+tIr,jBΝiM}ھ;"}LX #,+\ "6BꘄģRܮ6*XS7*K`Wɛ Њ?LC_UBϭD]r\Β.-tV-j@]e,Q 'Z'QɌNj;'Йp l;;ƙMr6\DÒ;9DڄZAUTnh%Q3j爃$O(0s{١\@YzƔadK-uPf Hs^ ;LtHM[j =laNv-S}7p%!SSQ ry% ɷRTϠr[,Dg4nmb+ n,Po 9|*" o.c>oL}3-eTzIgcfF|KFhE.`6jQɵqBVXy3fǠ|MItV ΍KTس, ;Z\|T?/PtV I(%m=`QιjtdN*RN⺎Ct>:`]~;E%t1%ޔ'sGӸ9gG \D k*2 VUt0J#QH&m }ٝJ˦θH?ݐ (16H)CwI QVc'0 Ϧ_;,ܕG'4x+VH7t@A,4]M7鵕Qi.$\iU5"~c37(lgދ\,߱>`De ;%$!qFN(ˡ3g=a6CG;ED,貚:q3Lt.=bX.vJuBsE~pb8cPndѲ!QY3?/t4Bu @h8!٬T@)Ŷ ٕ5pYS#V!bng|Q V??~T7EN'f)jr?Wf;F8o\b4p{]CAzfU]nCcyK4_xT,I>GT_pQRw8RKNh݅(>c+!'ܨ")d;K7Q3RI.ce5KVxaB]jY5Ya|x4D5GaYi7"2IaF[,ֲ;leݓe XƎTP;[rSY*K#4X!/ϣdeV ?z{k0CGP4xd097P9y|-=\׭?YKq=wH!dvH 5f\<wP13Vs`h:m=K( XGqzQ@-s|;mN/Phc~[WPrjxq1KsdBe]Kҫv(6PU'-X>bн.U7r?##L˝ Ǐ*;p=@ Ch*և>!:M NRC91ahDXU9atJ'xz&A$]Q|t .a'oF%ti[ssbc=kLy@Ӝ s0̣xe<=X+y?00,3=`W0#;[ x@ǶJl 8͂8S=`Nۯzլ3;N wWtϏs 3V,IcQzLHPO Lq}<8`Q 4[hk͉?Dm餁:Y$Y|RzbZSeJrpza2`\z #JTA?݉=CuoIa$OGpE3xwMt9P‹6Zޔ^ Y׵.^@RWߜcP'iL)g/lׯ$"FE^[,*Zُ7.W+*N4l#8QS]/!aΪOVKϗC)qtw+Wse⑺תFB3\v $\>:x1N|W.:@~Xxè<Nr }J)&]_Rɑhf)TD8_n$寧p{$9?qV%;J0E/o OW{S7Yޓzϊ𓿑dwTYS5]'V>"3?8|+W/F.ͦpg)۬ۚ-vi 7:Ә^KaK'vmq+܇ʠ75%냘鄍H<::0p 51VrcjKt&:zJ90RtcHpB/l%@[y6e"œ׶❰f&&zhr#+6s9lXJ%.w:S `ʄm!xnEP\˓%EK lJ*.-\;#|D& td y zm5m™ƷZ 7jYOxJ)z/T7^ P39e/D֚RC(I0x-pJfN7`ݔC^(ei .QYkW:v}OxOIppgȊlI1tWmfW&owL|j" U]IWf=/bTuh-~7)[f+ F^Ja8'SH# f^ܜ&wgkZ;+cpa!-y꤆%܆`lm*f΋7ק%V*]A.ا6OxՄ=Us j(3%3>V7) f<)vA`X+HG8_qt@R:)PzK憓߆ha5` ^iL'ifbmQ|`͗ RʑOF29^ѤH9CM;1פeRLy\:z|)J-h)mH#D8Mvy`.O"fpѮ G'b}jMnx'&/>o04v#® D܄I]/8PԾ1Y+T 8<6<@_ ".?˸fVF4oQg:1~d:,Qo&M)td}JqYj]OyK[WrB`7q os'+dm>ۢkul#l+|W.qZ>Tv k߆smzLiss';lIVHMA&cdiǰ0=-2dQUqXcT (s<2hbgGZPD,(\aaR0!hŖ.~ϹJ`Y!M kϱUr+sn~%/z Cl]oͣ.E&d7fDZ#pr,sPeD#%@b'*m\WF^&5xk:cýbsZq=l\m.w.33]y }hz+SH g@(HA<31SQJ2)w'84^F$oFוOߗd =`}Y,!xhU^DN6[7lsVOw_[5 @oe ~߱QCD&{LM ЪN}<c2/ԙz~g Q$K(/W2舣A+ ZfuI%׻1~<1з"s9ӍTt32&d.^ĦL'imnA#^|Xw2:rOWZiDߓ`*}ˬWm8T ;:ʖGtKچW f%2|g@=7XDNBI8洔tNW+9&79 \ R#G\F@.,Ͷ_e aŢuu~52y,}+msq8Kx"1>(F,x?F~h Wu]iP6>\omXTe~/Q)$ }mjljZY9 .Sh~9@?LQEW MbiN3ʤls\i8pG +.V =>.bn*4vZGCI\K_mL2<e1BE, kKF"EAijNь8`q)Ht&\ )1F';& %=pw:YŦyDꖬT6 IXH{O4zDR ɡx)m>lV[{mwbFmC*w$ELUЁ~#H]Qjh]feLՒ`xl?dM}ݭ֩tT|Nd'Z yQ$JBjCƓ 9߄Pl6OɌ<+r,-[Wa)3]C^^F^-HW%ULRB #7db+mQtM$2-1qk0ȇL]qFL" ⼍baSG$P &u<6Y\}uiy;J(x1ˮw9zyVf)]?O v9'|ʾ YĶp`V-4Mlr{a5P? u=BxcZX'uL/Y\_>Z4 Y9 CM[ei^N 3<_FW0V+N^]QOI[Xg xoX}X&b 0O-ְ^]Bl[7ZR>HpЯ@dԹP 5̔X B5k\C9`ʱ)ݐL+WabZ:GS8|f<^IAtuQm& 0"& f  nW`s*GL߆ 1?V|BkY(2mU5'$Pw/}/Yfǣk x /| TAO}58bjhq 4 ޟi80CD HG,ЕǖL<ݒ Rs$wDIa\аW)jɺ$ˣEm{Ξ2EYG ^\Ou4V9Q9w2~ҁ1Σ#Kf~u4hOVgW$N_h+fv㿝p*mɆkAπuO»W1-g8t|ncklq[$+Sl6\@ou";-k,8_퐝W[>ƒ06O; j#x[ԙ2pp  t!J&'k?p0ݰ_ %W$[⹥u@87.0IeN;C)i/-% 񂑖cʈ klQEXŢ| BMhXJh4}#*%rb><5 .Bis|7k]uWPC4|&@-O`,y&VhV`q !|ݧ!hls)fErv#%O K N3$B@ֿE%#O8O5Lдd/p؄b`(m >Se: <% Z&Ѯ3tͽKي9s-Ch \ŬG`؆@q" +&+Twl`υS"{>=^z V$ fѪ3٠Z2(m.2bZ9+&>@Ԯ}%=cvi˴(Ms9'{. fxjZ:}.sWN~A2ɾq8̭fK$ˉcVSGǢW=jaھ𼽋J" G2 ֵN'aRQyj\UTuE "=x{ďIGkԫ@srkEe׭JiQ;Ze{P,{YO beg =뺋`9&&wpG?:ɁMg6Ddfc Qro"0l4_1!\N׳w~ˤFˣ'DS~GOS-ֹ8YfqRUf{ -ɘ|) R֙b!늳O;UcA]Qn@cE(ˌ ZG")p?H ˔z&S w ڴt\b.HH`@#+ZLmy%&O uo FRC7n9awΦ !ϸ%>O"|S쀭ۍ {~o 7ovDb郼՛[|ҭĨ&Y<̵ ^DžJ@h Y P\٭@N$D>K)u΋uYzĜڑȕ;a,YTe-KGu85Ot&mgOPҭ KۈƀCkCyzzQˏFZ~k# 9(ѤPS/luejS[\&uhm4b SXm|N̋"Tjǩ7RH m7K^KqҪgʿi*PtIw+7tUWq^d*(Ji^54P ܸ>.b733و e4J{654RԵ4BeӜ(yXr4 ,sv)/v/>KI)<9sS􅑓hqK)nYT~:C{ I2|E;s?(;rO@-z,SR ֙x:'"287zSrEWeaB$:TP HRښ%>F@6ձ۴ mIoj %ʜC9;OHO'&lBb_f\u> Dc KLǙ ruΣn1Գm5˨'.15|5_tg+вϥӂװ`Ѻs`Z$yv0lľE1DL^lXHgz flbYg5ׂT.$Jx;od k?$ka$)Fb13v2o1t!{?2G IEcgBˆZwZMyؗaUaܭs8vNȂwmU*UUQkg[—y#eţr!lo"p\_(O{穉 QKOJe]:dr8ǖ%kJƫM<omu? yF^lw/;d:YNmFh_Rs@~Tf筨+$~6.RfG|06B\1zs+$J(1u?<_ X$^ )~B sb>!IW[E%un5g״|ZR^WU("VKMK2.&DYߩfʟ+AHVK.uކ%AV dLJ;#*<\adVS7I~R'\B=i֏mwE5;K_]cڤsdUa!we5sUKUDjt#栰] X& ]yT}i?YYٵ4-= V%DZE)etr.f/ w\{uK4W ن&a= t3mwy"Ayar68q,w?ͨ^aGVN~wϊ9Ⲑ*i0+!Lil14¿"lS7;ZSժ+)mE ROVr\xU>DZ.hZyW0/N\eWЏ(@ok{Yvó}0p(S0DW1- ?^P:K{SըQS8(gK|U p8CPu73q-"Ö[t?[F;ROZ'SS^jfn{l%*̷34 ?3<a&9h.CH5[@},zL\E ~i[QO 6$9!藥X}Ei &+n}*h9xa?=FsL Eɬ3 a&(u<~~.l5Wӽ2 7JE Zܡ2yjQQ0GشnÈp[? U +eQlk;/]MoǕ'w€ŌSuB%/t~ : mɡ︀2}古菦 J ͌"fx@!$`E5bqKQ 7.I"EM_rAFomx DC8RcsAe7 XEc Cz=C2[iL:B*هH 38BKSW6:t.;DRP)3<^$p'.U<̃1\y%K{yƞK;;t 7(9ۣi#@wyCkjnWaLPTd@&%yDOYIHU[,k89 Y.Jj$>U(^ '^|@gսDﺯФ[DWKI^$iGrk'HGE-Sk!È>kMhZky!*+סڙ-_@,ɗ0ǕyɊz`g)|ߧJ5!y"Oc.?qnRYX SE5=ZJzr$uR;`zuRR42}p{sO6$:s6d'S=@^eb3%)8Ԓ]|{VǣΝfW grG\,cwq$wGI%V‰wR$o5>+O,@s4~CXS:_ѸB| :U3E/¾e`+O1_잝ՊKloюf6RF|_pdT!uM{m&:1ΕBnp1OZb4#Xn2\a :ptU?hr@TC0Yn7!R7E¨ dh?iqRX+ lryq/V27Ul{-"4-9S!Jz2-܏K?9VZ'{OEnpGaq#PZ t^ڙr)Ҟ=TH%|Zk\ f܂{j^cVƤȟ^܋QnvaYQ HL}S3OG ٥@Iz:'U/U19]ڦ_mF1+q25q@Tii&h)h6A~B".|S3edsꬾCeE&%"闳Scɂ 6a(v/P4rJи/إZf{ʪ/29Md~#,+ӌN?^!)6 õz@&1Ep?}] 5 h%v#3Yy2$*G793)6ޘ,_Y[1PRyve㬬,ţ΢LIJ+).tj$"&@oڱȗ_ :)u2Dqhj,)Ǜk{5V,DDl@AKww]k06q/&CKK ~y;":f+WQ9~YZl-]srwAXOh'vÝyTX][T-@37kЧ=@mSRǩ` W9q^K_/ g|ЧS:ĩt Ԥ,zTk y3zj B!9Y\D_Ch&hRZ=C89_kr.#sQ TMeNB_Д#>nKil8w9kㄦnd!F3XT$GaqMҚeN6DY(81@Dǰn盤ab\\{N,Nd@Ak7"F`Sgfow5}- V : Gk ff+ S:i&gʡ1nF̾.^%~a7ŊE SxMG2"gb9M:D/fcųFԺC @W.zx ] l2]L#DU%#u:EaRf3UM\z[h0R&AJF~X0KGX|5T.;=BB1YP~>"j>;cȝ# :K Aw۽ H-snGx 8Rqfq^ǝ_Z_@:o$3@rNhFY,ŃFeI!?%J,-D~ yYm(jdE "m ^'\ bCE(EA+zf Vwh䛈%v΅7jvA3_uK| qLx(+.ErEE`1tdԦ-\ ǶeF xL[ŜtA7oRm.w\*{;" QN T^_^ fxV^!5}a59ZwRˬm+b؃9~n,5>zanP 9S .~wS9^ȗz_scUH1 $'h6m%Zwٟ@ÃI4K]Q!)toX !0Dqi]h+:`yF|ڎ^txɅ2eEj3hhm&ڕkVh;H%s, uN0{T(regL%@|n)=7pNôgnwux"de9xi A[-̠ioYhX3&hJ(.SA /%e* %>ߓ? 5@ucqPN^rdd:~di)Z5ۛ2*=UP']^h^Xkڬۘ(ܱӔǾDD#{zU-h4L؏I_v|9ek%Qw+!,*8>o`!1'fnvIb57U}Rƣ0yg j/ s(689Ғ҅D2@:\|T>&x[*wx1 AĚMJ:9aPp]E+x{ZO -d[1+`SOEAJ4Cݖ^'&R5"ۍ"2BJUܣuo3I; wl0H//}ڑyDDLm܈V&}4eqyVi]|-0Nec]{힁Yr0[ٷzܢ=.IpcAq7"tq((.ݩV_B:SRp2@('}8"?tR0އ %rrv>CU%{!@p[N͚w"~?qG`T?P:))eUhLH]Jb-BU,a<_zn,ff;uFbc{+,~[ jcY$3SPm^ۤNf?}̛v~ka3da: oxH+2)?&T62f{N/6(CGv-[g% [Ov2aK.k4ߜ6YrWKV / 0G&ŲQ S\hR#M oZnMCH)}FOΈI"fr-#:O:2Y獟80Z=UE%aO6[Ȟ&מ=r@ǡJ&GPPQ])]LE6baN3,M($b )bN0/ BWռߢ&‰[TJ٨dUQWʂn"\ T b>rU(݋YR#’Tͫ,aO^ Rk&);)Dw1r=`vckg2BM -aO"9KS5|!`psh%p܉ *?8U*H7-W6<ya4eJ s 0p\Bրh!y/Ϩ1'))yc'Bx?m_Cm Q9EU+$X$B8X#Ly/;-Iqݜ\hj~!."sRe'2\s1$QϪ]cֵC&v9̛qH1N <Ϝ,LJؖ'pdRY"8ˇqO•>!JJ7H2?5.e#uG$yljBQ˓@w!9Q%%@gk7HhK߇D @ -dnj^RB6͠:LK\lALϜqswM4zݡlG!yi"<x JY ݴ:eW]\)5z=yHdSt{QRg`Vs+):sgZ.kıˣHn=l] k8Jz\k9KRDYѻi91D8s_-b-va7B! 9E'\Ev'd܃nxoאL,з0S qxm`~]iI?⋖?pZV ERF<[_6+lq;m_->w|4mgl:JV$ga<{Sۤ&4Ę>D3j[axƚp&D@,.ꗹ=ΰ l#&,ԧi@' ='%E޽~ryy`mN&n{Q+z|_ÕZ~H9C`DVjy1 y_!r5{1j ĭ˾c1"5tvuM֮A{ڳ&h@[+ɖ;~Oq*~hUO2YŢ+H>* f-!YPfY䥷FӊuQ]A Va̲}ә] 1J},mO7eGGpԆ$cGCu<Ca]lH29ZYy&h]!˽Vycʲns+p{%=8ϽT>`D&V<%J]R */dW=P[!`!ׄZ ç b.qp= uv6G V#g?>E,/V1fz<戉QOnzA`#k(Xb;xH.&b>6^jidڡZ3ôV)_^DX/sϐ O6 4vIvclq J SK ,4hi:RguO7U,3f9@ H/"=K33T@yO|cNpt!TUKI΢]yݴSWohr6f bfi5S#XOz9S<.VGy1K9&#vz$:c:BxBG >G(f"]sric |h8'XB4$^Om_"˓ަTpcef[П`Ŏk9 G@E3I?|R3rݱoˬm z0-jwO)jH903CLM;dpd(@[b:tYG#vXp9tƜgw~K,@{Za# Ս~}Q0ddG|W=i?=aV8|cz!je7s\!VцUQ8Yd@s=n^>f&znϼ7} .~Nzx#u{S+/|ZSqchM'qLN,^LPX o㯞k ,фmA]Dp@ڟKz%kJ[#8G@]z,HEz^6 ,0 tkUu^ \{CӪcz0{aKn|BbK$O2Œ OXs2n%{vKO~wz;B\ e!,o cK)+"x6KwH*8{`\\hFItĂŅ4|;bb 4- Oxi%, vX'ʏTˈºIz=]iEI0f/E g懀LorwBKŬj#!YHJ=l8֪g|R3LRk<}@ez 6^54FsܓqbFX&<˙|^yuK,0cDm!玀ezy|7TH d+,LpŁ _a06'sƔ$ﴟ Lkh8Pbo}ȬmaŹ8p_ڌإ9gJКiXM(*Vd'~8J4xV'ʒFy;óeݏ}&7z'w{2F $(෩p%&E S .׸]n~8? |cNs>˹N/U?KENO뉰/%lyl/W͂@eXΊq%+Q`TМʏ̄NJV MRhYhm-̘i)΄>=kbnȊ?x=kn{uf!+KD2loA1Ó9H~)kd_$!ZK: rUaVq4r0xa비|`Ϛ憀)Li^ՔApԨ)=%V6fAM0YZ  vɸ!O-T+1|>NuI3y{4ٕVw:*1]k0_߲:S$ͩ=K99Ǿ>EI`ᠭU:uRgڮvK&JRPJ҅ņFLo#r f "2寔U_V\ӕ0=A4gBͺIG}3T%fVҥ(ա0anh9VBjgr t pz"nZBJTWgy4Z o㘾,u>}.G&'e-j4:^/~Ś'zޛ4ּa .CȌCXF'c//5:Bz*EGU.0u碉#O)Js2rJ!&_VQNS|qGc90)5߈Qꎶg>-sqPS!/6 s"$-(И[_Q#kѤϴx] 97]_{Ǣ 4zĩfJ#[~c^xu$jӏ8Ϋ?^?[ _w .u[Lblt(Ďl3.*O0Z2~%߇sLzI5$0,7KTyzt"#| dy_@eh,rY8-DQq66̀gYԉjZvǔea ׉Ջ/Y sQj􁞨Z.3C8ّ6ۚ_±Z a;Fջ*W,dk3y'8 K:][Q~`ǹXJ_bRm߼muI1cg㭯qt1(*w1+oxoe2CC&,DqCo8N9ƍqd67+yna ߓHz}LN#iˏ$Oeس*.P J $i6 J6V`辒Lp :iQUN:t9K%xb6* O}QD<*rgm$tZbN~=C =4_aqV)8XY;Jmbľ޲N|zEB@%gM;cM?DŽyTWmbm( ڛa+AοK wP%~`5S+  'v TQ|ryG7_eDjZpĭ>cil~_Eu=*:N%]cF%2X~pedQ'3G}t*[$cjSDƔ|} |cu5Zj\͚f`ہ dd>E_4T07D -D ҽ؛JLlXc'?mKy+]y4̣Π9_[bE-!) ࿚[̡.NS%'<#2믰|y@ ۃ'=iA&4uLQ46H/8\fh1r_}Ys0'J۶}(5#e|.Cw3jū7b NQQ/B2ˌҦ29p\}\TG_:Wldu#>YkbfDaC-,].~fGl6!b'YkV^'J!OcBe-QƁQL:Q@eV$NjaLʜ yM*S-r*'HJurMQ"J>e/ý˧rWMU\<3ӠЕIap?(^MHJ$~|%h]$Lg!Z|k)ƻ4V?ȩ;_ Hdm.<y2Z67ZHO /}j ċA&ְTLrGZ)řD:Q:K JGp7O+Ds;PJ"!4o-1ҋéV ,hAմaN6=: |r8bՇe1>XJVi>Gn7<t&B󀦼LM3/7ڎN­4>a{Lp\4ƺ'dԗ|4% yàDaWGt M@d\^skd+ͳu:3甗Ԛ9|*&A*q:~9ٷtj<&rygil#8~pڮ@847v*& +ׁVȾJ-2] ?{.֭݁?O4$j"5=uX ~6˝gU83M oXYpBkz:<){9b%aѳk(i*?Yu`EyglfdbxB]~8j0;DB^O0I&/J6楳ؑ4b^g;Kw̬*r?@h?,! [+bݣ),*f<ɚ;I(|7 )CCsWn ʲme">7Zhި}Vh&"T计,SO2l}V|֌VsV ?ZfP3.!W)=4 |/kw2 dpS3[wdxxxZJ!F.\K=Bn[ޗdpl@>MtqF4Dbߩf# 5ޒWILDܮדrroQulE(`T6' fz]tCTF9ox^@35мtMVREp׆-z*ߤahbUo=aֻNTMM߲Yz9+3cYJC4V/ @=X@?; %5f5Fmƍj;ĴB!NG4ܳ5ފ>2y@)HIA3R @C"n`6K} lU? ԦRغh.s oE d2 ]Z65^@sDi?ZL3UDB»n7u݉|>Pa7EP9~*0d)2`7rHM3EBez4fЗ-0DvmB&.Rz7r KR(᡿T#]]CЬldvbS9/2ũHGyrsx-<HF A0_bNyQbWJe`;Ћ[3,5j{6]j,0:}xiSG:,N\֗{[j Ent㚝\I*rUU @ous GN[uգ=Ҩ%  Ȅ2qBxp221:Z.jw(zX GXn!իc5u@le`$`7[xpfZ*=E#M@ԷgZ_iK -o_P(bdXDկZ&A<ѕis#o S>}H5Qv9_k(]&|1[)|kaH /09Wdf"jXWQ*kj@:Ge8Ѧ%opYŃ$kHX}m?#xȪڎTD5hLCx8f-NCyْ\C^㵓23tRk>3(ί10`rLw#z<3xsy(=5YkWH["/[vcq?gr˘ GxT3YGo1Bӗ+&vKhg6: CXEi[eJ ڳlnɖJP֌|/U(UZfW3"4N0ptl5 59kƘx_sIH`(I=8cU:8 \%-|p(-[ 84bӭ{3hh6޾ f3q󐫾vӌKʷ;gݐ%c@jLoK8;5û4ˢяj`K"?,ZI]b*eFwmko:8>֦{'W lpB 2h?[Dg%D:TYEn- ļUwG } :zYQBh "Rє BCvH >1޴؍~'"=˿;`5maḊZisD x Iqtw+ZZcu| e"_IDqDoz\GĜQ>.36%[@)T/~>ig0u4^?PO9Vi6*"n]T+K1@啕V| ݫЮ"/ǽS |b֚ 1Z{=_ PBDm@U Ոuֹ4:PgWKAjfJyS|S3qqxx8iֺkdHRF(]-ݖ (at =\,sݶ(4'9G=+7ɺMmRI ?/bɹٲ_^#^n%6%w"<坍11OUOHI2ufEY= r4^6ydA>DҟLHXTk| x r2w_2ǒodD. #Hk|L7+P>-6oo ."A<0b#c^]~).XSo i2(уb t6qRzӾ3Gem1n?0;*Q!):z  "X<;YIqQ`{ҿ|<] dҿ0>Vi*砰[2]S:M÷Vɝ]`1Q|"Cp"9xlˉnqY 5#=?"J0+Q(HNgjrSdq(( hH14BR ]O,B*ڵ5SN}{Q`鞱 pYoQ )c CST[Xl9i% } VHlяrM9$ {C TqOHx\:,$Wڝb}iIlÓ0?8JMۦkpIoBk 0]"RkCF>$Oe'2$f6XsK{@t&+w$ឥv( 88Τ.ؘHajas0[9:Ŗq1(w~ E۴PݝGTyܡv.P rL_"=Ùi5G_<i6..+,nT~Ua v s-ԉ4T;z&q =ԹAejlG%+a6Kg iYG+opI8EIiμȝRHZ=ZGNT즒qQtTDd xaN;V|RbËn8{TѠ[R|:6C,{jo=_Te4NM$`bE0*˟] $0DEr.HaYJ5Grh2'ԮQ/ ޱ*&0&BG0Ɇq6"J.}E4?f`-lg%XY16Њ /)AjcIbHc6HfK<>蕺e ^wa3X{7T+*` x5 gBB: Qtof!u En&mu'%l%I\ ؔ+BCC> eJ?:'6q:RoV!_d"Ntxێ%SRA _x(fv)Q"J*EyM\wJO9˻Q`s /Zi`S<َQ<~ nǺMlsgb_X]{5dlmgB#7 MH-1xb5//G@Y"T:ISWovp N#uh. ,:/tv3hᝓ5 Wcq8ȋb]F4iMCLܷ/Q,٥c8`. !v,[ڏ/k+f^2%]cKx-P4T< q .ٖmD(:dK.b(xexMze;NꑠG&Zj採!x{|HL [_Yƈ-ТB%k{NH==ZF>,(una.8=j@(Zey)]V-]e4^sYvx{OJ#M{M+ԸQBĠҵ]*GHb€0ÿؘ*F^燚GKBϋnzU#^ฉ>mv[ނ_ȴZCd#O,CL5`K$h]g&Pob 6lU3Z8aE-:O7;5x dF"6Xѵߧ xV4)>P?蕛tn8 2A7o.- [D*XV%T7oQ/(KF{[oy֬mR-w##R)U aBLEcch43$WYC4kklXiZ^7@w3b4TiXWCU_J0ϣA8&3cl" $S` 'Ӭ Tr) 5 F󝭂&~ )X4 ya6q|m:{9HTU%tcpH)7*ԃpOٹGž]xpl KDWX@`br % c"̧d,KMʁ8?>d3 ;wu"DTK%,D$rp8])'bք%|%G:TmI'/hHDJf`SB@OZ9Qr/[xvoD,:j`*jX]} Yz#K1欭}:U z;z1z$nt|^sQxQ!" @B9( #}B|A>9̡_ȻxԔ}+g@t+Cz2g0Afl_Z/nU6{hU;r.ےLupA^o\'4@.s.: dI)`j{(u(t:+-[,΁=a Qqy Mf~CD"]ϿhO$D;t$Y mA1/S Ba4c>d rYY"hP/lg w%,4&4%·F8w Z;?,w\-kN"){M:.aL8e#ҙ>Ե̤)jN>ŘhWToVO,0JX%#hOyYuÃqp%.';9BFMTN pM\ xpò/]9eau $Ow+gu/= <0Ok%0Ivib~zBW4ٺd2@ݑ7Vr$^O%TsN)'ғuvl/`i0i0/>N (C^x#b-4*{2_J&FUz{}`twjJQj=dnaBwkj##qꃝ#GS31fB 6w*ݡ$|%<&@g&`%#p D]c f0| c /n]b27G 8DR o"$#@S1/oOO@e/gbR8n8Mxlݺb:TA!>'!ei| [SZu7ԭ6At~SdW<GGEY{.|TO ֘ 9g.j(S@$CঝKSSA8߮Y#Mdn0$n$R)9Fn_ׄ5%Xn @dM}xL䍒cqU[M2CN_wo=8>,JT^֗v\#OHXfD 43~L>[ȞrN܆w  i+CVOD@#^9X'"&Dn1PDgύotX {06* ʈsrZmQ[ 0HqQ Snk 1*҃E/|}Ebl)e%A7]!rY-#CLKy)&=TjC⺪vM*g]~TҌoQT5>;Ovk ]y`vڵR^iP_FYtTO/yd8Xݜ-*gB7#OhMT%j,ȷ=[68MsYՆK1s֙[4 EifcIźm.XUcYcxЩaclu$!Da]^Dz<ཀy菭*"Z-4V1J53s?B@Dþx^;dHgp$.ˌ>]f`+)qyS EQs>wЀ4xTebdc{"Xpr&'o,s1/("u\H&É|-+n)$do͉6ߗvI!o5k~sgA)[]M(脇8)xW&pD$eZ=/S!P4#lg!-73]8V;e {O{&9a7z 5EP PbeIZA # LѢ kDڡ_- vuhn<tY ,Q%X8A[jҗgPp ֕a9DE~s.^j=9i;'\ ;u^DJ#0a!HZ+aHXZ2JV #j:r8)fO%MF02HUeMl\i2H1NaF H֥$ BS.~ώtϵΫ2ܽ39#; cR5wG\]D}1ŮR 7ccjZ`BSAhRh TZA.W8_9%i![BI;q$e.VLKɯ ٠pEi:&+'4<8/dL J_:o[Jʇ2Zrj٣nƌn ]?O .9BHpTBdOLy^I "xgnA~/sv6㖙Bw1j#GhQ ^y쥕mQ [5geMQ [~XDk z)>rq8liM B6L?ݽ*,Q1r*a1j_y7 lbAYqɕ2`nALg}A#KǧE*Gd󺗋T17=`9[@/ޱrZm!/RGrh.`k~HCg+'h>Fi|\H.2a|8 E&4?8%oqZkwCޢ]¶c LuG pѳ 6`(]k#e|s3  9D HӻԯD$eh?ŗBMb6p"<F*k,74&fp~xOd)Y%K}ۣnKzn*'$=3Nd_ s{ҙN`4CیP)L{03\T~6g]Q^2x PM3 UuSG@+_.,3~7v- b3E)ߗ2Ԋ,@kOaQ(sZՃi,lK%hTb31Qhm350k[P9yfø2yJl)ٜXqڣ{%7 db˔reFW$*IT?m/W7 42l F^ }ZM,Έj6>n[SiTam=x*5cldD+p!n?hքf U׉>y'bh0@ɂ n©7 X_@Ɛ@oз%=E==ORB|#?1_L$ .J3: 4rb! :`@ RhTfM% [(gx# 8 04fSZ\կ>Hu"UoC:iW 3Q,mgRYL&Rp*g뤕0~zuk BčL}q|zwO'(P^ 9D7] N]^5O? A׭B6;^\`]9gNJBޣ"޾y=}2$:7_gd:E]ytkY8uj/^R`Kp |Z$vͿe4 _V0u4459UŘ*KD%;*lνm4LNcA;#X¥E}OIB};c GN*Qh4<+ zPJx8UF:ɄVRHj9 ~jڜ03Y6oh(^m~ADY<waKXNZ*P 2#j(f(p_]iK_)wx1U~l;BЖH(@H ַoBe` ' iH d T#[og~rTyb;9w~AԼK)ܣLef4Q)7g.tX0EOnt"d }4m63 ݋S1^iȠ '4Ɗ*cXHn]C]DTkjAq-+%ٍf1ɌDl| :$$OM{5,s͜%.a(`hr 80gm"LjiG.SNFDӹF@T_Mu ¨+t1 b 4}vqށZ)k/{0|sʣcR L:M gbk #6E3P+w]3 B-}S;7P<P!OZϳtz[X\M(ۣyVk*wz==z۱"8|"+ΤѽH7֞&bܩI] sroOw!ֱkae渓h޾[PR~P¥e]BU+Js av/zDήK 'wMhyRe8K] p&#ǡmuSh&+bʿGۮ؂/4;r m,'Th^1 Bfz1FOP_meô$L \`n/36,5-QkdN51l9ZZ A-rb7T'rnd%2/vD+dt}1G*y !AY,I}q3+u>,a&Lߥ OfcJ8E ph}yԱS(]4ۂUaeB =RHt/dt>f%h@jdےA-.lXTjB9QxLHDѮK7ҝ&C#m\֚K Fv Z~4F'6L&*hob:bD??:$+"+]Qg=Fqiϳ̌Wd҅uX=εP~rfYX;>J MӠq_ֳWliJYCp!9dA]l(9{\zeGQ12y3P/p {4&QYA:C8D\쐢h7qMN$(%ʱv~gXcc~EN8_G@XK9=oW0$&BHY/JZ^#/Fw*5cu'N$V4{SPz{^UWmuG]95}ҞhN.OU 05<[֤۹ Cdb&aZO-gvLR}y`32^0Fj|zLyħR<PǬ=Wɮiîx5BW>I /?jwccڑjpUHB]Ӯrܜ[1ՠ?NrRH0o z fQ'FLZMq05wF1VXDP3mlòv  t<*+`"G[q9X*(QO!C[chXGŗ/X#ֻs)!@$15zbRs77C%Jf>^TErl^} #Ę\ ӽ,h x~({$dnwZ ʩ$@+R bM[}{~sŌ9Y2)B&RBP%ˎ.ENR_Y=(|"tkbFFo na h܈dl69Uwajy@E$`:p-\.ue =R |v6PVOU V;`%𽎬8]o[3LkЕ_$@!A {|6a4nCӬ@lwg$LWIyǀD&G{0sK[[&mC] IS *&pKUֺ a)3M˟o5MJ\0ԁ3X+@) 'Y0 D/2e$Ò|X t{&[S5os97 mw0\S’H.Iɮ`@~?!l u4kx )lSm^6C c:ƠLZ]H,z'Զ WR.>Qxn`{G +JN.֔3^xHSD"aSfe^66=ΟX`V}IVq. 9411xXA=Ѧ_UlmI(r ۭKc6&Mg+er"LwNDZo>%mw vόrc+lW_0imSi"(\Z92_ZG3{ۀy]f` έ(_ ͖)FzC'xd5lK J.+X=i\#T-q<\y6 B骚*Dq贚j%ȵ{)CF qG@dF B r+2Upq̆cZe 21;-oW\:\*F@l1>R(=i4|~xxrX#G{%LRd$(JccV i,U[ $Mf#9y kNhFnrގsc<*M #4ܒ3D[aY`~OXd65v9r S6i]: qjE/AۓN]YR Y19^U+""Y qdp԰4)Qj?{28jyFQXWjL.u`7䪰FZA808|qJ_1_3v}FU#Et SL Mm];\5lރb^X.NpV"0!Ӂfhߎ #@"-Kh_z4ɨ2CN/Ǡi蘜4$2L; _#RO]7rgA`=8a;8h6g&> @9!%fc0猣ȋ|]TO~Oy^bTsJ)1.hfd`XM컿4|:1mkHpՠߓ}9zJ?M4*kAvt޹Xfg,ʺjɹ5J4MBɖVGz1⫋/{@%\ u{/M\E@M8_,  Y!c^m |@?&LlIFVknYQD?O) Ɇx .&%dv,R MlZkȎ4K)1'%~քrƲLvGo$ ^Gi;}ՂґM&/_D[[ 1|B"~̉wDPܾP!/g@c Ը1rJwE?)sV"d#<SBGcWges=A@ݭm3=P<ĊB'3p}xi@]=SbbDd]QOӮht( `Z&t7Á }XNbvIGS-bF6c18gaHl,f ."Ջ8ݤ7vƏR?e;%v+Ԣ\7k0q_"< ,1]*dtS49ؠ]pCCv;? "IHv C0.>P[GZ֪fACJS_I@P9nPaI5ޥZ1wlAU]+uYc'p9.`9ݐ봓@IU.7,آ0!QB)fsqd?zA1fΥvS7+t!U4 }N9^v6尕g gh]<\ޑ)si_V+^LNXEk==Rѳ >_.)ASx^@ )g^ R4;@\_g>i ]5rKY2ڭ9DʏL/FRvlA!Qd sָܼb2Ӭu%sMh{3_4s:KqI##vOUdzWCA\i&|\7c&s{G;b%=?[ "ŐSp 6A HمS'p(,rNn:$=9̪ ~WN2-?Ih" qgK$f:G--7N=6z|FMt6G8at % $DQ%1yB @US,nY24(!{= 'bsIK" rPԀKW̏x#\ e 9(?t=iI7W\Y _:[xQCh&_BL \feaWAz[^i [,pWHRK#A={Eٹe)Vˎ|ɓhq뒑g#ֻ~) +8b:y]0qnV :n͐6O)Lșm[{Nui eOihgSɛ$h\]} T3zLB@}m27hH<0>H}f DgHEڷ*A`8d˚Jv pimz+.mF՚ 3@嶒>ˢkSNBΗ8[,Xx5)DS6m Uܒkfb}r%o >X8&);^]4i~^$YɷI=F}Eù 5D_͏.yjTE Aɇ6*6w**<ElPuXFHy 'hv:#kզA)) ~̂6Q~e2$JqO)\ɮgS3Xk2%W 4IN/z:{= QAp6`8?u1oլYeU/Uwrx>Fs#b/3Tk*@9_q{ïV>R+wJP!S*it6 +^*Hd%;i0|r/XG}=po1FdAH[Na & u va7O% { }ji FW/¸^YLC`:cfͳuzƸ:7gskaamN#ˁ0ߕehD@/,f~)[[8R #hRfr B(OVktsq ڗ܂d 3!WEG8˾~Bc;nTk$绍x\nM\ʰAݟz%s6 ړ>f/xIG./rKX]UONd7uxomhaf8|ƭ5$!5MN&pszl0#mlŰY˴T',hӕ> nU@k<#Y.7V5T:i1% j Y6/>{j|iJ]jxJ^_w,  /ѧvEgOҥD5hVOv%aWirη v|Ϳ[*$\ʡȧu%C .qyq?=w #Jz]W 0*k-uy6(V!O84rX#qcj=r]Dio6+ʴ訮\lMN2vY@Ivb v+)BmFۦOJ+OtlphOA^1<|P9 -KjBT.!#N=8lpcXzR{m~w]Ç5@$D S[xGG%o?76p*MoIVE(rc TEUY7ʎsa/h唸Z,qw/,7"=MFXSA' ˥7BIe>5F xܴe&AyuaiS^D1%d hNnX׶b-?x{OξiĞ~uCwS@wmޗ7ĨEaQ ]6mnڕnmٰ@$݀ `׺0Ѿ;ڿx1& U/642Ӂr`+&XW }=דt`htD}vmޝ '~6ѹHHd/" ɩXﱿT[wW8t v^X4T&1)< 'cI4꿿5 bx?_\z@7-AVa.JL[e! siѺi;5~Ё3 K[EҬZ:)K4݉ Ys(w"hY9nTnɆ*oH츔Sy,Cn7eҲ#33F?lm$yq){~RG+ՖË{X@?{o 4Z0n8*EGTkZ썖-t hMs΄KM3km`q9z֍vHc#u%V!~JcZ%`V/89뚂}^+mt$ǃ!XEI0EUtsME(BjZ86]d#F4H8G_1GOx‘#[!0V#tׯK\I:k7?)*f!13Zt}Ca?Oq+dh{Aׄx ay^E^t0GĶA(=D规OiZ-!ѫ-~j yw$/2ԝbȶU&'uF̎T1࠭e41#Ÿ:0_8i= lUX8_VzU=r@O$UcC'DpDs%^_[V;5z@; K UL5]@~JҩӛLj yivJz^vXbP=Kzhp[k&].,KҨ9iR ,5 #r9wkG6Vz!xdEo`P7(:nWT0LA٬52ޅp!?7g8͘k3ŦXF:"CkJƗ|MxԞZ2@@ASrVm]{,4T&{ 2Udh+M3D C I`}@eQ蓷F2B6& $Gg/lktGky*?黡Au^a?`@{'ީ"vWfD &aZΦ%,?r #MNjm3N{t96AE)MYz/CvsC7${{ b7p^S '7V[u4_}&я VkD =y:hMNL$typK~Q 9 f"Tj A bQȀ7KG Cρ)!*X0tQěѠ];s: jxw%#:T!3Ͼ8~΄IdՍG -"EkW`e9kUX E$d #4,ʎ +ǻsi"Xr)8&zđ|eic鋳Fm?=]ǝ Rpu5/G슱tS0|c՛5HZϷDІC2l36x"_lQP}yܡ<gC=c */˥+>Abu.)f^G 6<*P1cxL_#nlM ڳҘE]H;_9WNfЀ_ѥj5鹬zbA_7;%kN "mo8laKG) ]&+h~Mg6g XZ3#H’c<@szK-:#,$rFػb Z ܥzX5^8?j7y̸I9ܗr ٧po ڞ&7 BC?p~VaT(r>ѧY,^z!'sb,ݝߍY!TL/B0QvҎhUO#u0|4'{VtKՑPA-ӳTQgBuZSEdl]TTⶦT?"G,ǥ{_Sr Λ/6ERx"- f6Qg_wV ZF]W/dm!iDZD|:DW{PϷ;df-7Am$~,x|M 2(ݸڤ#=ds$X+u0HH>'iR,$Xmvߍ3T#-^fZ\>sr0&OS_&]"w=|vLX\kϚ`lcJ{X%4{&·o Eo9 NwRG5c+ U.MfA[*M*ɲYICZDGPe FYB[ҚUKhk{sF%W M 9@6 h Gh A@(`O_{neF߼ztϽ@Lpy :^״Z%'z_/fm#iS8iN~*L -; F_LnH7AZ$k➖f4R ЌD@tD hh“ *nmWNj&?S!5B1+d4:kUT ll"a) 8|u~"f-RGh`;YDŽ7/Z(+4qe: w3ǬM  ݫw|G; OOBop.? hڽJrf@ŸdA;+0clմE//{9'Ȉsf8W(HOVir8>w)ڄ4RWb櫜$`{@ 6Wz$=PN rؓsl%j3N 3Pnq%}/mT,pa-6lމi+#_:b~7L1ĥK!$Y$#k/v f4Sٶާ޴&NƏ 9dqG3NtQw(()e/ZBjc*ۄߛnnV $0-o ԯ-LNر}jXQO{-/^˙ybɖD-JUvJ,z%v+Y')1\oh:Fy;{ǜ=lBfhA!RJimu\ٽx /A# p#[gGIV[SZ,'{@cנ}$5neQ!GN"vņD\*VᖪOCnH5lYӊB%1C^Dۗ U9\gnmxի3Buνl@Yѯ'4_Pr0aSXwQ0ZS.7_X+:|JcI3xF)+(v>ŋԬa~L/GiuH3jro;TR㻓߳OoH7f S169vQcYP=oK'rFwnn41 {$Bt y:~%k$lܷXEl |K+vLD gDnRS*&6m"7G"".ODp|I|#|!~ almXA\Y5ԇ*`(;'+8xMb~&fusl]DGSa{6wz2Yeϸ_&>$Ҥ!.ƶwķ{< өG/TAo#ߛ/i< + P䐖ۻ^LIЂ/< աb'%oS2D*G =],TQpUQCvJn@,tk$#dH̩9,Z#!=i #E7\J|EOGOJ*MAn7(\9B{y'݃Sg;|"v gqwTG|eZz ;2ibq65(R11_ԃ-DNUd\nq yE=,Q2MKIw0`kCFY ީ :I)x36ZeA?Z-^xMmYHBuڀ"J[ T_JD˯OUFG㣂,Ğf_.81l$ +Dl%ctԈ9;V МˈiEΕkR!r㵱g 5jz|]M q~o1Iwvк'AI")Wz.&Up( ⣓(BqB7/UA=fec~B/edHNqH!*xh%x3/  ?%D3^+@?ZGW![{YޟYH(uz[uhxL -tq #/D\'Ta+"|ƂR1O ՚`gb[fhU!-]O%Q@75esla΁g5wm7.dŮ@Cݰ#h4rJm 6U{[TteP)X&DcgŕʞUSɆH(޼y{nlΜoJ2)|\MKyF;5Ֆm ʑ4 (f0eD>̋Ð@Z0 iW7;vJlCsxeb -z8prH3.l.{y:I}p0j`ϱ'ԜaYtWFz;dVEurAMV^鄵2DѤ54әCb [@@kv&@PrY]_qdBPSM&Ftc.vOD(TCE6˅Y>*"`Zģn)s߉2 .->h\s \ZU:T}Q'7eR+( 4 w}42UH]_k8\jbew!F %$ np@|پb | x{~z=Kl!}Mט{"$:Oz]WfZM _}R^ueC_S6!4Zqc5{:V[aۗE1\w:&֩Wnfi4!B]YAЯX!E,-.L|2P9yeT@0ӥc9x@[lNhztTpB@[LդYqn.Vh:-ͬLf V*gAġuԡ F c~8™ j_I%u_ce,i`EmiЌBy9c a\L]8yTe߻]x=p \bKPƨo+cx!XφpiT-iD4a}Ԓ醒etiAU+)P7g^%jidᒖ|2_k dhfւܒ~C#Y:aX@U^ >jda -yK n$DjԲI)%}߫(}=[Sp7Փ6zTr>y+B`B-PPKـء1~ZȬ[x;-LsuW%E602 Iͫ$=@IL4(ݵo[9CӇףu8,A DcmOT3_+ջXfrx"cyQfqn(4EDtqO~ Su P[ 7EE5vxSW֎ϙP1]VA7@nӥיX2K㳈JxKDƢQ[6=E;}Z.XR\'\ $8qk& ̺1`9 x& ~w!nh^ "Y`>7ʜ1ͼܺuQs /ᐆ$vّw܄LgBUyj䥏N Y[]4uA=aCw8zjM\Id*B֤x4-p4a^,د˻ՅGY*,;(Az@nic>,w G.> u apfdf_:_ܷЦߡP R/^r3M"/>K̔2GJ_sqGu HS=5cffN8D`TO6=7qs5&?(?#1) YAB 3cC+Ԑ+U x;Άkư!UTx)4;' #8YM6H,ΉrppR;v{SzaиۘX3#-xr[ W)ZQݞX -v|*ˑ!ee)|;/ǔmtpQE?HuGj^sNP+-BnO >9\890JCQ,JHmk/*䈉 簾~ɟ/UKI'؝nI_ +Vf텔:pJ{cDFI9.0궫o #5 ZnF` piYuaPa.x;u`5p"6\}bj.' ڥAa#C)H&}5z`~LoJ(dfA/pL4Z:ȥQthxx;= w@PW;W}G(UVkwyQ.b6 |;ߛveU|U?:oV|Ŝ،.%HRl3€PݣJP_g^=#Daa&ϰow>[';aE+*g% D? %_w6ǞXAwKUӛN6 iˤ<+p6<$k0er H5|;Z?ˎZOqY')yߛHߧIn'"Fj :G`S"|`!2$)b䓮*vդƨA48+_%B%IAh@'"龀1r;EP `&p?] ]rGXtqTXS 65Jf>)wȅگ'@8==ɗISAlni߇զr pePM6(ʭ5p1FJq%RP_w8o j >م>0D))mpn `!vZ&ef}"'wu&9!0JrLm0q5{Vz4JViޯ~qUxzHMՊ TSQ@I9CYL:{A)L@B2lUgPmS6u(CIĂ?4 +׶jُG%BFD( 'kF1z &{ -@TE].Qpi3N.! dZX9ىJ5~"' {(m !CKg_ŎI n.ˌ#+ʉ&1+cmXkFx-≽NeF roNGtԔe*PI' bɋ\yQۅqZu9 Uuʓ7:<*k._zo窻X(*aLukmj8M[f'o;VHH^&M yB:?4/"@dFq/j9ߛ TU)/>SSBlRռNɞxV 9rX۶f˘pzEwjäRy^CB?Z/:}.Qc40oDz* N 0G] a-i(\kyI{aOXvV~GllʵԌZ,9f 9,rƠ=\X :W8~}K،&_Qi@BSXU$vtʂ$q@Bʆ(XK"b6湡?L٢,X_DKE)_A^gJ=Yepn Ym|`qܷ0hO=9KN3CWX<9qV?$Z\'s3.oTeU鴼n׍{!8[gW:SzDKv阄Mv P69 mKqIzÎ ۧ<&y @x# 3($Uf++o䚄Wjnv$4Do:'IeH# JI2n{!PU/q?|n6OoydVs?ݳ3sO,0aBJ*KUϱhaF|([Vn E;,Zm8oe/@`9I[s*4"GRUmz4 #mj:Ӡaǡ!PCn V4XO`%ǔqxgL]>Vi;%#m/-ƶ *:T+柖z/l"ԃVkk%'\Ȍd^pNJ&™g-JdirJ 颺lLKf%0pL0W\Okķ+^@-Z4/.0zM?j:r0WZ*۵͙y$RsG|6Zj$Lid%9AӛbԱF tՃ9WZV+* qظm]˳ e'QVskBnJew#@P# N+z^Lk w:# 7!(L1@놷3 p~h@ઢuS;cS~lFt0 Ń9>P+]yr2>1A\Nۖ,CF=ʼ] &Ո-kkU:"WGl˨ j ƒ7Oj֞t5!+4cST,~E ^k' ˨ڟFb.FfIQ+dwonJUyUщjV_tJJ{`iWGA=;z/6ԅ7݌?Qg#BdH;w#83S[&nch)Kvos |í|~3 zچ8 6TEFM;&[To_+zMEA*HRo$3t$;rTݸLس(t m_0 eE'dv T75M~-gFbT1ī}U ߅x4UpZeZ!8v&HW:̓r".2dnOQ}sX5Jh杪lfݹV9N| X[8vMpLF#M>Gː4MQ0[,SM`ϡBA듸n}-y7֪6>nRTR^`-ZO"?/W&vyULۚTqn$lUfx*v<ؘr6} V}3Z.O {ۚ돮 <5EDgS#">=aYHQYKj0L40gEfMxFCZD;<ʋ4.s v"hpmDq[ 0Ppv]lVJ;?;JvXdt|:GL0s^ȿ :[Y]L6 Oߴ\s|uPꂱx |]VPfY2صyɕc2XD*gBi@sey\iHY]DNwFgb$V"F[)19W_AYsDwPۑ`Wy2vY}ʎ-\56,{K3"|Wthoq#>R@0`^ts;յhS6\ZI.ދ|M]vhBh\iQ@ydeה("u[=4 n4`yo[mo>5=#حѢW)FSGDz@}Ya$z4Z 6(b؋AVr0];w/ h#i 0(m_l^į}It3*W (}nmG{_v:*/ :Wl$PE2K.q+&S7[c 膚}o^3D)(}+ 萴Qp\B5:SiK7,E7TKA7?WAz\`ٰÉGl Rc@ ~|byyrP'qg1aq3Ϟx:od^1Jzz1p~J`8m 2DmէA "{}6R(GVV:'W1Ew?[cT,BJz4QFqm ˿K/ğB+<?̭[v~ikRlX撺3+ Vv=P:õI,Y؇jq׌Mc#r:saIH 49șCG#t٧pFM0Lq|ILkĨݺ];`,f dSfD4` ^Q0 9bSSE~_~So lU}? Q"GKI4CU˅ 8eT< (v_`h@v_ڧw$~\+{I?HP𨱏%#UNFTkfaҺ_벊2eR GiBOP!{*=~2;/>^F֝Я| K&?T3;׸,_Yv A){x@%2CPI }1| h1)Sc=\V5•Fudk1sE~n׸m*P _TL%SEYHάAh 9\π<_^fL]КQ{#~P{5p^6B| r%gDwCac4PA]03CZ'Ctҩ}KY*uЅ|=؂j9ǍEAoXЃ"dɊg)k3D| T^Ő#130i4HKX_N'=5{L3v/ǝ4"H.uC v'l|̟+7m\h %ˋP^.]rdzyeV29Qw л{:i[0:mTUH?祤h) iHwpCԡWǼzJܿU}_IsL-d>C9$Jav[08ަG#eSP]NEK-9L}K`~@uK!$;ua7#bc$ldžiKrY[u.+u4N0/gwE8 KNI7ש$=k.S6NwxUІ*IcEoz0|k`XhB%G*)F}-W1o U/n]ˋxYNtɐnJؕ+5PZ/)uXwmi?!6j0lUdmh k#$4ۃǜкnleѓEG-p{Qdfo)-[*4FW#r.7ˆ'7c3ڳu+4V*ē XMy=H84Q{KtVe_-tc+_9\%@` f1xpr=_fyxa4#RU@J{RxTu?-zk3&-I?hCA(:YQhL$-zZ2UUꕛ&3[v *|G̋f5XVaDj R&߹[ l55˴VqYLf\XWє/Y&6ドE\-|LkKYhve;z"|ר~n(z|+FK'} ̚*ː; dᧁK4{xҠYE.3w:%; +&qsM×HR , -H /v퓉[p\-)l,)}?l1 1̻=-yXmAWQI_v} ra-5}CU Y%=>s,J|xD t"/1QvWD OP8Jf 8=Qj!l.2xBAʥ\_AoƐ(dwϢD[[o4"u$.wv-JKή҈0jWaqqLbz(!r+lε>Nz=(䎸. !O|h4QGƚ .Q>7hYL8gvK~ q(<${8v/+rW??!4 oM ?~ue$6|m "D'AFQTB#9StA2@[[oc. .tUE߾_ӏOEMuQ=Z2rX8m_`7~qV6>jPɥ?!$)mgaXBz/H< $y|rT[6o"ᶱU@@ ȠG30Q, :VDt%_}A9Q$DY 4$ ɒnY溴aC4ybC: !q- $ 4.%`52@U0akRELyl,-#mWy~@a#fAH81lGr)-Fq1d1,wUPWϖ#ZJQ{Cj{3(Oi)R_oP羸3IIǞGjN&jm≤/&%u5/XU#=݆Z)vXf%M(RakD@ox>SHp#&w%=s:j$@'s9Ұ?4R۪?)Y~q肽l,@+Ӝ Ғ6KJd(/VGʹuޫD0_~CRIZt?))&fX/}P|Wnx尧҅,Q;ÔLܢ|u ;l *kC_rdtUmtc;E|e_=yvO 4Z_BwS=[ŷv'iT\1-@I.x}8ɲar)Yth:MpR"F`~zh˟e?\JLTmk>ꡢ E; t-nrG|*WsOZ!Y&19O#[_ؚ@š 2ThQ._nHT( F"WdGEDzǩH=,n#𗦬(N.¯hēSφ[ͺ'3Y Ve, V7t ħ3qKB\AֹvY-}`V/Žï i^BSp )@x\+ \.lKg׺!zۑ#W/o<]̓mT:nisuyAT(Z6`5x">=~sD` z<2Cܔ8IjWY7~E5 q$bɞ 7"k`j!wmA_?`}p^C!mulyVV3;id2D砊1:&[RDK I[4爢F@aJ=Hq)w 1s6 栗fs'W?5Þ -x,&I^ lh k S=LH];Onwկ,ݑ%?4;>_bGs0tȦc06¤}/B:!S~ܛWpɎnwiN58~瓵LU~3J9|VFP"HX&{gj.VcŔuX; 4vr8oKBY|]hOiv D:g4,h|_y30NSv9Ȟ'-?c GYQފ8) -r]=U\D9Y $N?RĞ%ŷ}tܻg81›(ET/' |8h#32e[LJD'Uo} ꠫II ES24avj'0kn^>UL'b %L 2ILQ9A12g8չh";Þ?[ɐ 3bb ЕӍ#'tKQue(~˓׮qaqOQjVva4ٞiY~Y+;Qxĸr-(vH{uyb9Jٗ.;UJ1~*Tv ?KfӆHȓI(|odBR7 cSǰ| M݀2>ErUE <Ɋ 3l<8:f-}' $hfVog&nsC9[z.R^' ~c)6+&3euRc^?ə>EtbPYSvjkul!Z:~~tiPѩA|_VD!K$*%z1 nۍC#WM)N}4RUd9a|ԉ ѥyu]B6^gN $ş< !vX2FQҮw 8$u3` ς|\lp lZYȊ3?t\a9E='1#aio CΠ+ Nr_e)+W&;m)hΛ_u.d=%B HS %cx5b4ÓUo奕[)*}s*~jUst]= u$tO}ܕg5RSg^{ Fwo"qr:ަVyr)TͰc$^ua,|$1|ȎrmבRa @n71'ԎGͱґy2x=3̘'0Q/ ;g.H|FKZ~va+Ik;Tܐs6Q9!݊w#ŵ;9 *"1DkM6$=&uU+֒qhPh{M5+q{ ʀ K~!4{6Ac,:v-s,{:UKƔzz#97<vRj~XB`)c[cw>^8@ze~~nA%^\T ,~֞8o~hLԻG1r0!?)9q44txNSzS_VE- HgcxNSX _3qg470D\u yuo/C A<*:pڞ 3)Q4G0n $DkHy@}d$A4C-jZqG{{_ SFN6^d@šhT'Cwv1)tH\y.k}JcxBTLVA_s0deed\Q(C Ȭ0'cur2ÜG ywɶT׍q*avd{1&tvR#`Is4A&rQw)DU^ttNϴ-1@ 5;3!Ѯ ˓~,[)WkѦo1zƯ{u*l"C-־!ԃM;\rj3/.d ,oR_|/dWeeν!>Gq`q(RγZb.]'\5 P5PtLHngߊtZ2KwzQ5761}([}T`((B+ŢOkVhQj(r_VNb+& .*],zp^"~T ^Lظfs!.Wi\%b[>ȡ)z# Ê-\2_Gt׶{Г%mGx ~W<ìtKnlv;JV "Qʹ"㡁ƥ*A ,?`o9 ?D2C/Ai9?B\uR CSSCk􅻯дLc`Q?SX=l7Ufg@S8eG~WKwZ {ۘ,wW6FPvCmvR>!I,ix4c7[U%(qv.D `?0=L 3dB∑YT}S`)94٤~I|u%8OeosiG7ryn[9܈ {wFv%_aO[Q遻R7;RSy&5Aܨf 3>u`^X3tTreIU S Jĕe>-LRR,og0BVP)nNiYsUpẖ7muX&2_ ҟmMvѳŰ}2O 2X:uR Og1P Ea$5hyYw

    K=*uV=ܙ7,oAPٳk Y?1plvz'QA`'w +g-wOhମq.03L! FI|Ij݇*qn)~wnGbHҮ4>(-߰Ukr v;_hq(3mفS\JPn4zo薾WKl>n@}˳y `mƗ;Q4xtz1!8֨%۞đ1QEI\VhK-mR&D/3@,掙tu9JUٵ0 )דIոDŽtA'{it5N }lJy}ӆRﲧ}e37j3)硺T@EWrRn=9 ?żD^7Y̕01Ԥ?TbP(ZKsb+/)! zN,=Е7we'ޯ8r$ͅʼ>(`]j\+ *Z"/zY*wmޫw*AJ! <k~蓾`c|nDRN㛪Ŀ3?~ԖqWzj| 5l%Rc?L;%8$uU|SA+SANHmœ-ONIlqFd,q{`O\7M ?.O8;yr "[g'w7*ozr|q3Jl@βކ`G}aʪzlCX,GJ^c, au_c1ggBm^31mz]wf,Y_V[nas2)5,d1́'XIYC ?_ʳYص_#+*Ǘ׾sw?+[˔F}Ŝ~e\Քp9vΤgn]g?Q\m *g z9&K16 Y.Lv JFs>9hg[-Q>.y':ki 2Qgu68Cպ៕+7x`q0\Š3,ֺ.힒S1'CUԳ2oz1 1q}(" Ir؉\N%h?տs/JAHZg. jVtp\*=OֻqmQ".$ij8 %BM0@ŧD-kvmQTl88sgFPz3[I brcHTW]·~ne˄U-8'Xt*>}p,H& ݳf}"gr4h똥Ka]E^^Ț"i@Z]La>gދjP1TŞ"t)9D іi-~v-ġ*,ɗ[aF6MBJ ' uUj7Etds%ءr>QI'E|=)UlDyCd!c:7{¡ {%1[iZYGU!o# +6=YR(P GPk~H&[gJ6`']$c1W]{&г t \J I=peyb*oZ3 y?HS$ة񐔙<-;5E ؝S#'C>{Y_Z_ !;q"]j `լ+[ȥDHY ɉuAR2+qz,~f M"p-LX):SL\DY fjh?RX1^ gq1 <' 5NXAS)kI٧bXQW~iTF5PՒ$kbO\f*fPPѨ޾-z)UY'Hj-̿FmdntV !̷+:*6Jg2:ͯwԫrhBGʅ% :EMtt*jBd^^WxZVEjp{J5$l2knWT d0I=?\z|9lwTI}kw7!t?0 [|SqsT[ZZL߾73l>KĖd*ǺR "KkfWT_yNL!LL,~~wC/n6NTLQ<7eT:%h,x۾pkUBOIbM 6Vt ]俌"3pn(㷾$pys[yps(8gyt '9ajKJ-;gZA拒.KMQ (-7r.5 zgzH퓀2Qad @O__Ƒ,L~ʎN((bu"1m΄e9q^\DueIShՕ fA턃`+}fE{ZtbKVN;(9F} iS=0yx>5JyotCXUtg r51u he*h> LNPؼ kɓ~"Wz9vJZ!F^skOLOJVDNndM$GŵT|.z_]0ٛl.Z fj|?r}\N#"xg0VǁM2NiSt!Urge(gOEVz4=8>?h8q!Rqzi\0UP؊y/YII}w/\q!tQnFeR^^<& K7~W#Fsm1E,(~:ν <z[8 >pSc8:IXN%^>s 2N<̓cy~Z0> d#z[y~p Sp<|0 O;g% ޔөpeEA]2 $IKvVkY~Qv~! 6& v[?-12g;x̛vE% kY,*o bLU@-zpݽ%yl20 hG3e⩣as>[hl䣙q;XiaC=M3`4q_nOw37ee-NTKM @D6UadLCRӀɥu s`nJ^ Pܤ"0:8-[5غ *eO@U :=3Y3'ZD]e_rD4 Y)b%O/c_+aF6=F E!+C c8*@dʡT'v7'~CPc*[^:vѡw RXq 2`OI#BI XG:AZh }c9FR)GN$g^ {Qh!3ldcMܸ$%4Fy91V۷r t=;֢ ^hU&k;&\>A$E;adnR>2o0z>xqE[s!gH@~~t Y q9/6<@l~TXl|]i)g\ ɵ f^T|jPVxnp }ȍz+bo>%% v_k`կN{%$1(ɰ]c3!3ꠍ# "0abk1~fV:w^F~&~mp_ iy36AiUOCD\ؠ|j4$ԩL#i^ Q.l]?B*AG.GĿ^?(mQn]b®:B$t{40\C6J藅BA_]5VכhMcS,2iɮp8Ŵ>Ϟa[6j|I<7;RB杼7st$k,PAZ 'k9a6K!XhNq{qf ^0/[ycY5?/t ^ ҒCf{r/8p1-FǾBKսc( /̢$sz\DWAP 6(?.?3\0bUW4e#Z4!aBJ-$TM[BuafvZ0=+ wn59K _KL Y;Ypy=E"$L3!RM{PK68l0zAӄ?U j6}Y9}J u_@ Rd1Q|{T,1W'/@Kf ǺG1mI`j)MY66`Rކ bq/3#қ]0œՅmR`ORE33ƒFM?ĒF%usLw}_W&@0> G 칎:OůF4PK]ZLw8;I'+,+_͚ɻo6FS!IIvyFIߚ% ~}TB;zڳpOzѺrD݈\J%gqeѽuB *HtdrL/!~H%&Ct04eReFxЄ[?[v{Yq(L#k 1.#K~utoZXXu6On>72zkCuE? 3ۊnB(kF'QxXV[F fBh8).a#M ]VtmoGwQq 7JJA˂kDE}T%~>{[f޿Ȟ_{t#lWQEyΥlNjĶ D=;yLB58bȺdd ~fEݝC2iE+TVb|nQ@u?_h #yŎ(sam)%f"෵kF*qq%J'2yt=< ukPf01+$K2Lg')D¤~7[%C?Qh;6Ӄl6t:''ίٙЏ\$ xlͨYµҚ*&fcMPU{̫o~!YQAQgD ^i+.$mcɋhndΜ)7G[WNJE2h@Ҝڂx\~ts[Cw v_}̆*3 \nkMWrD5;QRǮ05ᆯ a gEJ>Lt_;37̶eVњ$x`v_%<&ܕ A1.@qQxƪE@AoJSbr3: (t$d]f(T'Y$)6Y2z4iنI"UȌP!dp> MWht-W UV&~TwW6(@Glu5 ))/5s;^3SոSM]ƊsE}kxA?Xq =4%9{SҠe: .GMydHzY9Q[yn!IĜ[h}Kǯj_J}s0έ~U#.;F"rj[ds*<@Ň!)ɘұ^l썥 {O¡Ѫ 8 [?'q_?2%Ga!zo '1 cziv <{NBέ\A`CDDOqFǰą3yhgBoVZ&]]RT%L9 cLT6`]ͦs- ae\O-a :@}jߠ[$:x:D)R4OЉ$I`;{v98uXZ#:any.JPb[m4 Yٌ3jGMO"b}eOyM`er t, UځOƓUeK[!TF@PSDT(!D[OU,WOT1q oAa3aP4/a}zKJw)/r&w #)+ KUgH {@LO .-^I*)Җm.MCi%F4]9r4%mNm |! ?&ٯ@fJ! s/=ja`Bѫ ֤pB=m<є8'.8k*h|)J0B'δ%<, a$D3֋c@p_2h~o!fz蒰|ͽ-ۡ.;X/U B ab%Zͽ E.M:B w> AUgpql:qE52%@$4{Y\}[cmV>IAVo ?Ax*8JźҰU'b_>UH=̻ Ep4!sjc,Y,y%k@Fb |KSW[ɱS}5ƕNɲ]'vA XYRћV2*BTPA7s6zq;v ǡЖ/z^K(#g0avL#Mx_0~?\1*9pu|^gLE573!s؁l+p~k!$. v*%8pQZHR>wfD\WP>;|q_=xy n q/AҙP=FAwDMi$FuB%9ySL{.M"\u52 Biwb>` '~f ^}Ov-_\3$.RxU%8Q oo1gYjB. =,X;[#iAX2;<q;rGvp*Cm6Ye!Bk ܊dV7fAK&wrnymDf{'N8ݖ!n CY &-+|} KxrP^aH-H!S}7 f 2(P9/HbLW>Rg%$5\ 3dcz(Y!>AD1}?:W UСhidk/# t9KOv_Cd}L~#$t/#=SZ'QO;2G,& 6ϵ|Ԩ.Z++nFk@6cC$ PZC/~{p=L/GTGbZ/"7UVq=MoE! <^̚J-= -[ 2npE=p nһ6ixeG!3L.]]/P6o f+L6Cz/.e=]23bY˗j,n{{&UhMk] T= 3zDԓ\qaXܠbHfk~ӑ2kܗ8okc8zcsrdE:ߵFZn֩hFkƤ[yt_3E}귡˛i(^{$ !i`>LֆTdiRԮ K\D.j$F1dTg1o6DiU7h3#: ˟U_s sRgn & )ʵQ4=Q%]O#VzÄn8h7ŗ}g0_]a#YЬM$}8U^$t ˎQv;.COUNwʥj6 ծN9|0hu0TIx7 ?Zt{T`%fn(9/G?w/Ii(I_@S ;0PgHBtҬ!O?KEGd9O ˙2BÒ-3B~~݂s) ׇ'ע[䢞Я4u j D@d\h{ƫB>RV8ͺ)bz4r?~븛CSâMu.mh[{~AH{I;ֹF4e֊Ŵ/lżGG/0QV dLPuMEo3.t=f̭!R#gJeju`,V8ͨ0T$S2T $1,ݽbO+%rsXY /I ּ~O{' @{:)>&'xE"-Znb;lNơɟal!7=_ W(48@-u?ovA&i%4M`E%({ثGqbQ=i ]ޠ/kBvs TP]L4 zEk2| ]J1ϊjBN͘W+'Ui(]1}!ưyŕjPhSOFA10\9[14ES\cCCV{$$blHES7xTv.ȔMgd°ȋs~u39J xpvS31ӾւnA@#_gmeVZVֻ8`%c2Wu!spf+l&r!\82S! NahH,̦ |49 1X(} ^蓹(n?>z٭ch^̅*Xn0|c/6ABh"8Q")nn/Xqc`%:cT]M&C"[ ^9("hdJ1* G^#u*"0[(Hj> }"ym5"Oj ]۽"`݃t G}ݙmukmM\@5M0LF]NAUjjhA+ ߽OoUN) HsVR1W0|LF篎wu&U7};̬֕ȲE ʎ$U=" #)(K2BsH@߬鬇:ܳoZ;-:AFOEsfՀʢƐU) wcF=C`ݫ17,N P).e橞Q]G bU2Vg)>GKNS+|kL\PepCme?+'gth6HG 'cvf< 1ZoR+ Pcy}U ?V;wm˳W @ZE P 'C f ģ4B~]OI{gdslvƍ%HL/S=hC.sW@ZHDlvZt] 00c#x(3lЧ~34O_)QfRKB:F Bl eD_HJQY?QUPu={+YC;[ՎV.XQgU0S#m&` /#=:+FY_AyN)6|And .3ڝ86LwkufI@P:Ibc#@P[k Vni6~LLNzO X n&E*9I'k=LiP6 [a7LӮ#7 <ߒCPY1_XrԵ.8}rܑ*?lEعu&$²a[*w4ztesgjv#9mA_DQ 6>?YVT5uX3oQ cMBQK*Kw~m%X}zط`3+dW.D09Is tW9nzR~-CSx8ql ^frd@uٲ|EnT$jL A=cvZF;>B46r@iF `jT xZ軆wMV7c4}_l5>Nbu_an)yPl(Q)_cc,c&@UVí1ϦFBlc50za/6 ES3uȻ@iɂ{¥*(:1@$ɩ?azzfHq_@{yER3!x5]vy9˶a))/U2,ٝvV4  o^8UeWmub~W#F.)L&u`1yh*TЩqCM=96L8꧰z44ٶl;QO_)1x leBn@}ExKuJIK&U{ mE zRukj՟G=TD :9z7gx5S ޭ5Mhw^5WhXH L?jzռf٘^O{x]d_W>Ws~۠SX@&%ե$}^٭P4OF j>:~`d F{m_5~ٺKel==p{3C?vz9@,+*F|l9U/Z_L6Aw/'HK_lUՙd^,ٝFoÖ\8vj4z&fJl j"{G忎JU>a0S! wmK[N^cD &@'|;z#%>T.y\kF$lUiУ>`tC"AR&7al]}_!s(l ѝ1tjsqUfoΰ<׬FAb'wirBNvdM0-d]ᲮTb oY@1m-c!jUKc?0Z,}Q)6E~}_Z? 5AʝX޲c!\E|6 9Q,MT3CJib# esL7N19sHBwDjCàWgȶ/;Lɭ#=1p,vaH\ ;݁@:V#Bs{&ߚ0CN%BTEHdՀw#J e. sS~Yi3ydJpa^8-SoDײ N҂^Nc!C( 4 g542!P${ua܁>Gh#E݄<ꎪ\Y=T>/mSWfx ~ ^s/Vg:jhJFR!:W{ݾ2&)x2OEn(ܡoo{\gco[L|\ئ"pǮJGnzQS*NeZ;Z@:-UTG' '¼|#~gNɨUCQgX殗 p|o#qݒ8ģWC[~]B"*͵>A -ne@ +]qzmpYXA-CQ >J5γi+o'oNڨUkPU''LrA"&^yJN]URua!2]?oUr@ <~;ͽ&O_ W:Zh`xC!Y>O'=IIg;&_dИIJg]٤&t-OkW%14ꥲ3N尲މF8Pnkn!T#{cu=9gg#H$˿XYXmژEU5j`]T)yGwLCH4%ORDWr"_g s1*t~%t7Iar]<=p-C+&Pc = LJ ܢN%]@pt1c2G{id]Dc'`G"VvUcfPzb)$ >RCN 6;ׁ=H2xJ ʩ p04wxW3~ qE~} =`m6[=7H?jBrZ݇S~'-jsAS?fM Z W|_!8~lTQBg\KZq;p~5sZ#w,}*Ro?W H~l Jewb#Jq5M;8gU3s}Xvk6 a'd|UQEǎ-Z0.rW@GU9]I =V,d"]KKM://~s"%u8-owja~b7BS&{Q(+rsG[ܚԼ(kc vmz?37ϜZ:뫔cT!aҴFO et K֏Tk_LvԚe Ԝio!Bm@zb u%~s{m8ajP,Oys_xL.O,7c*-D9CqC%m/ŁJW=FCܱ +ay+;F3ޚp[׏,E@b"X.$b-maP@W'E0#к\[]h_EziMcm׽`k6읎]dh^l4큭hK_i {U.ppG^xCK3gb5ŋZv9v!c/fNue$хWە/M>~bsҕ(E]9-6AIc!&`?6#b%-[UV,`qx$E;b~0ϝ̩8i^x1zs(ીjk K&l1 G_=rеRr!Ү动SQB&Jq63丵ehKB}yM쨌?>!dVK6եVa7QZ|(aG* mC@KKAZk:vpFR8@}&uБ\e& :_""kbP͚m$CT kX0 Epm0qvb9),a.+V$d?JG[򫼼 BEF ['&p~oûRDaP|FkҖ)} H {`}䈏ЩPo+ W<%#jQ5Z}jx ˖xJ fDuWaap5˚;$.|1 )twfF E0}Al;%? kTGwMO[nh4X~luM%b&>9qh'Vg!WCitrHJ{4zw9!Dr<%科/ #BR'n% ]cO;L>Y ?|'{ToսOa>UEb-&uh7v <9:bJ{Z8ъUw_kU7EG;nN'n&j/VP? b9D$C7[ ¿<$ӀI-}>q{${O@_|lm%;81jkE^#8n[;B`]2AV]54i3ǫ᏶ee;`x__|ys k*s:DPeJoŇ&u鳦u-(F C眒'bNPr$,ZTU;{p?R;%AY?@))WWwB~b@MS֑}B*}GX]TU0Mk921!(u<+1LJk-6l ^ioWpse(>y?v F[vw.S'X78sIF*)y'?=ƅK,k .&XDՍ\݆w&G/lށW,;[XMem\S!R!DD+6#_-\HӀhk~2 & >&s)"Gbg% 꼈NNuk [>d +z̎_v9d\MSq+Ws`oGdb&!:?-H*Dga1wO?WGE^BE_#Ȋ v$\$QꗡJ*r2oސee9Ly顝.0{X88qjl(8LHR- .ΰ]zEpTп)ԩd%#uAuG2_h @W`a-ly SCh`"<\PRv?ep<+[ԫ:Y8J=G>P@-3|?S )oOetiKprI4XpAf‚1.?rIɓ.uEw%Ƃސq׵ P >Ga'?ٸDc}5&A1# H)#7 Ep;$! 7#zLJ@*LهNS條y5v38{[=h0kɗu>@ٕiw!A=/DiMki<ҩ)ÞN4p !d)IlۄbH#DFx@9ߋx: ۼoXB_K6sx<ܻ٭ޟ}M cLLEEbLaifpcD{({}eo6#[f"s}1nLWi Г=1* , yAͩ[Έ]hrɄ擀nT Q @Z8RhBB{.VTW5n@bljY2٧L}GݼxE<\* )/t~BYu־SPvr_Xwܽr06^UMre(. v\6R$oqQ QM,ЀOㄩhz>ؒr׈ o%~sSif[̀ A'ү?8WDh@^ryv]NuJ8x_ Yg]wV7n իf#\u8}iqFzt$$,\3gDJ6ZOmc!* &S^2EÕ)`fsh!<[UZ 0<*m~v(ޔLn8rzQF\t_f^&A˽w'fWO֨J9vF+Oר>@fy Nwϙ`&t P# Vq>%ۥ3'7*Cڊ_/PLC6,7<~[+(d 7Q7θƓkVnov%~ηp㟮d%nΑH̜Wwư@ Hl2Q98S]0$OhR .1b ȯrWf9Re8}Ӑ %)}J҈V@"-@S`${@ m("j\'jA!NU7-XPͿ¨\NYg KɑSgm0GPǢݶ1D`G^\M6ᓇ:Pb{X&3҅[^m#^uBvܐP峝AZ#[O>qըY%9xnzpu7Դan?5z`ҥcM:}ʖڤ֬KO V_Ͻ5) %F%w ^MhP^?A=h0:.k7\ut G3, ,V}:#йnTWe&Kb`MA ^CU Nqf%sZвA&z ^UmTB[nL\?{GI5$eWyr~,; pe-'%%a$*)JJVP 'ix\S;u?D@I^|huVE@So '.NP&3N-X0?Ps6]os$Epku4%΁*r'mY=8z~{@cu:_h7KYΕnD|Y߽0 L n 1O<5r B@ciM?PةƀՔkm I2.ښW#j"x ׫Z$CoohrQ?{X^BI3(~R 31^uЅA~w罚Z*r*[FY xݰP<,PʪVU _Uixڋ҅O5 jʲ~l;4%BvRKe"oGόA?Nzd_t<49%=N/J<^MF9z]25shqMH_گpBqnRi) ")JÏe>Rc6Ǽb3輏9-*E`pn2ow}3KR 7%>50Im/6Zӊ n3g[&VvbMp *OyI1XO\W7)H饹F%]BGnRT G!0[] Z]]Xa?|(Ғo.Ϸ-$ $9U>ї& :Ze&Z!yt;NX9mTXXjY{CLwnGY'l֙Lܜ^yMB{r_9X4;M/A3!pxdUq[%t5$uc9MOzx7Bw ~ bAq-}(GŰLD߅^6M5l:3c*#{V{˂Pߗ$xZ v5Hݣс-y9}ut?=~7䓠Sf۠[FԑRn1K9U|IL P\="/ߕWq=VdQBPkcN>Nι0^i̓$h#T]I#ɼ2>CH" XR% eo% ұq|xGLY8T<9%4Hp:'`@^W`L=m.unzݒ6º5y\belA. /yZzo{ĕLҩ51-L `0%G p a¹{/F"ׄX=㄁)@hJC7E8 0skǿ0Ȟ^"_'Iϕa% oÄh&!RrH z A.,3{;-j4je,{'Rqk S([1}bN. JaUFiw@M拋|p|n ~r$t!?:z,=R7_J$Gh Np;wh|A4 S]-}GQ2؝._1 g? d597bvCk_6gW읎b@o 8df=@x4,3zvR5D/ݛŮә弭:dnme _[>dC9ahݡGBRYA n/!*)\nV@yF(uM]TE6z"\fGhX~S3~E\%˪\6ZqBz\֗&cZ=C6`ɂanܠF uGڽt"x9Z8&r(OH*ʰر _GYWӾf/VL i)-Tu5N:۽ 1PϹRg?O滑@(:⮤!(9aԊ@:Q$W >ۮ HqA[L.) Xӊb?zǯ=ncw Eɘ+"V7+Tea1w`a{xb;7a d⛶+?r*قT"YD <:nd> SR0'CpF9@a@ڔYni]Poe 읉x?)c ;kRqsKȮ6oۡBJUCJ}pmh8v^7=#l1 @#f`<;ppG|XtN?"7'BfQkEl@2C*(d0ˊX7<̧-|5sY606WnC=a`5U-/j]h_PjT%Lo*y&GHWɈ)NZRVc؂DڲnSK0JflQn7|s?$@Dص{龞iLGTn {嵿:Ho? xS*xC`&!0ؠ:9HXxX4F?- zioy9֧O x "UTn 2]¹-[\5)RO/@M $a>aB׮QW-2+|P]w.GOaUnh |ԸEszK%FX/0p_~.Z~P}{pKNުWOBw@?!bz _FzP.#*9fR|?O;Ls+v.fC?n)| oBVqЂ<]י͹]BK9/?Y1Y5;mUljŵ/ ئӻʱRQz՛ax.1T;(({@*MRg>c{)?6˼m\0ɛP6W$_u-MÈ~}'TJB].U姺ǜ83IH}:Hvz't RlMoQHl2- '9 # ^ E\ꙡTp!=bYoN*f2rPQ#"SFœNN.;wOjeeyv1dIU e1W WC%CfڥD-_M'/  Goc4'bÃ,lHYi%d2n{q+ՎݣEj<27|@N29tהje~vҭ"jszC4Z-aOg_qnL0Kf5Ak'l8qc2.3<[.!zdgAH"hA:P0%%K[ߨg!.; u2YqR3>Z(NA3Gs]^7?SᕌI}e E!g 1;HWHfOA0Ok7gKo6-)kڏXpxZG,.xZ$ LG@zK,Of_|xȚmD?)Mۤ`]9o8#60ܰ=W>y9Ќm:WwfBN]pIlm˖r6L.bzz bRkޝ>fJxAa(zU?<'a".cT9R]J資'3nK}4\+n/obhs45 K_;U!e:!ok':H{hϯCZ?q^LaL@XKo5ce?|L1(VnfӿY*?ڞS@k/BƋ.A|\ %+ȟip$?߸dѬ(g_֞#Ih6uVhhBfk2\9ibj1 Ƒlo pI ?T0!(>kfKeo{(s͏\=-c3Q端΍$*ԎwsqQvsԳ$3{uNmMTMV讪 Mdފ*f2':6aMk!Ml//Rx4tB8nv˽q9)e'hFQeS?Jq8"]ho=9(,\|! <=n.h㎉Z5ᨆ0z-d/sWVG2FLކ;ٗhR4!>S )qGC]R!(r8 ¦4k6j0RXA/w:!^ܙk)DMZn+iW|ل.;Pk"U*U GȨz_e 5|]`iI s%N%k16MXFخedƥ3-e)-0^Sdb_ozCuMŃxꙤ1FBos/'^I!/r" WB` ;RD3UtTOk2!DFws4ׁ?,$u DLE[MP6 3J IwErOɎȭ*e^QtD&H*٘ 7 gfv\330Q˒d%։z p/[7pOdԅ(Kƨ;hB_-R$P 4z&_aK]TkZ0UD5e2dEBiHP?N2O)=s Dc1e@ Q*bqQöy&P;1rsM8$XP:"Ȁ#_7I d=sAb ʳ Vзʢlj!? q(izpTH Y.Bצmع+e8TcGLe3*wLQFo7! | RF~/]Ϣ?vhKE[ƹE 0:>-8@ sc4scc͇PY02 ,APۦ#%.bQȭJB6=O%rK 1=g!2\2߄FS+J 9,*қʣhKVZbx-.ULHEW񀄶Z?N86OM?RP iTO/or<=4ƒ-z}O&eVR_Pz H{m}&# 2NjU4G}ZhۯPjeKna}r㷹哽O|= tqiPj7xXZP!A*jr bp~Cpl@)LLV/qQ2O vq$drys5=_vv(UF^w?BHڗ5Xü O\Xk7Ɩ I9yY~'bRK_1xS:: HkF X|a&@`#)T0ggs8]SJ{6TH?̠*P}oW4srvm"C,6fB6 ۚ7|wu\Gd MH6 t*o$=S#c J>ӆ5,yL"w7c! y<ɐB]dbᦓp*괪`02YF*T66#|L#p04Plݝ}NJ;. )ᥧ_\$.(ȥbI7Uq݃@GDYeD"N-zn KjstFϔ ߃AVA[.c6UʸXeU }r=t_qݥPAU1^g =jE3(WiĖAs, j.1#/XR1o\O@/{)v= d^;>GYWUmOZQ  2,@Ďz Vw4B]",]i Oŏ \myXt:Gm= M[΂ (۟^\2f;Sxr>=) T^z) 8ʙ9''rP[ !m_ r|Sw3%"=kM1 t\VMv(%XC)r0z"m@M7;<[&@p7l?Y%+D0ԃKsۃo5 r$L'~)P {l@YW4~aY?j9HvNuT?WXgkGpMN 7"3A\j"8D_ "a2uG 87?lX'1^b`_.yѱE|*%l*rWcoO9]5SDcS7>DrR~-͖OQ+ћFVfS\Ag'Kx${1@UJmWDC8M8kO؇h=ad8 [ m<2\px>jK=sv⩣%39Ц6J;nZlH#ŌVK#lc4> I\”b$ |MVF͢эFYnzAY- N.%%SE$%%Ǿ3CyMjs];<6xkK*@ťwb( fэrbjX_<ݳITfTtj x* zν[7k{NG0&$<Ƽ4dEI O7Ws"l1>~ %2+@42SQjyB\zP0VS @/lM&Pxe *qgYiҟ8c:J!)"ADD/yۚL1uw$ G Fq KNmr$Kwz]<Ь /2Nͼެ+<%̸s\ nl ׸̠x[ӔWQlPf^f?Ȏfdf'H"%,{ıRJ bE7G7map'Nv\G)mC׋e!n{X>2]n*JC|GP 9()Q=/iFwk%zP8A'(o&̝NT ӆA]9kp>&a׍`FgpLwUc,Zd%*9%4)}@ԉsۋ( XKs 4~n`㏓4DeiZ(˅RcvJ%aG\P0̏H0f$47m{MPL: 5$yl.{ ψw&dԓMEԶP{ kŢ=vpЗT-y92bW`" yz#lԽq,$.Ͳ̕,Zvиplӳ*gdeLx(5sZ#NuYϪ6ٶaˁgS5`'_p(5w@M90nL /]nSUJ0x$*6rc0>5ܓ=ce0efz.$ENY0wU/ P OY4>H|eVV9xf? 0)|!i這Qe%In%oTGړ)q&9YD i,^Ey2U*HM0ǺF'r` KNT=U>] dJRx;8#ޘ ,JD;AM#Z9yi{M`cD#/T ~<8GVvb*a'WlPaP~reZp!I(;4gwuN<- 7uͽ2r0 z'R$vD MɱF_isqzٰX37j,2yUe~m! QtlA87\LTy$˗0ʉYi,21yZ)~$ `}ǀbr ΧfPR^ͮpPbXw< GDtWŠ(p4Hnvo"j:Š˜$͂.ǷF8U4:Dv$3G4 Jϴ7{ݙ}B]o/kԷ'캰L/*218T0S+D,! /2 F$@YO6 yj0&M9 ޽B -gb?QWoQJh:G\$Cc8ņyDAE`@DPsf iLӥ;aʄ7zxѥaĤ]g;WI',. 1evAL3KtHh2{eC4{t5"5Y.H޳[' #2m4)2w șhҺ ct>O9iN#޺82YT[{WM=F `mz֢z07#lv%,]+b7?J'[\~m;ԴTJѩlT:š( <7K **Ii+Gǝ4T' qIMhiNy5#J9/N`w~ܮErcGw]V?)([]ҡ49[we*t<LU뵸U9 ʨzE.*.A|A}r!y bx01f/˗ p%X;} l`U2(4#tY u딝T֎#BM~gP r^:xOך&()L;OFѪ O[x߉"NK3vS* |Z16 C3!>h-WhvO6Qtl%eti -N|x¡j _ZsoE9..I3a2CU~ea*m$cҷPP<4aqo ' R5nS2-MEqK/ִNxi`,,ݹ؜_jhe餋#8:M +UZcX(u/  9 k)]ndfOu.i_r42~'z8KE#EhQ9khwys$߼%Dag5Xcp  G#jX870z"'h[:? ƫT?_+kk(/v9X$W))ջMq f' cN~4juhh=9uJ,snha6T7\dD ^ןNCwTVQ86ݬli.W:^ Yum,qG/j'pFWh/FI>| Ho<ō s\ӨF|K Y?}S=PsM"" bĈ2TLnguV4P <\ckCI.GXKyћAYؓg)d\,-MYܘMʿ iO'"0gn%EȰzj g+)Mf/$e^w}.ggu0 V8L"V߮R0|8>X %S@h*$1'}pṈ<,&ҥ$iuށfl:v bμK^n'C7 *?yXLƒU*AiRj|#aWi;r cFlsXyµ:2S@\ do{`LR(ñ)j9:'A ]C  tS=NuW5R iC$X}$d[`z?>iUyAP"xFG׈vҮG}L6SO#*; =G-p.(!f4kW\:- џi<آUE,r\ߟK7W~z=9 lp<Sq{Tf9'ѶyZ9SE?d3[Q% P#@р$_Zb!WOjw%ބ=2;.<_9Wrܼ0%N6HeY|^$3 a3_9tˤEYpFQW]pJAߜ\/H`4X2EYWIA)$'%l>ÕqWxRZq@r mt<޲+0 Q |Ck&':V'~-P}egW+g "egT?'yR%h29$G怡q>⑲olfd//RZd!I0We>,cLK= ZH?;ll79hdKR#9nv=j@ފqa$fRvG+-(rxIVLx5ވcv>`i..`}A#?P/+&/G 'jT PVeFqo/#UϿ􊈞`UI5֤ۧnБU{QU3h?^1x}y !NPH7~BMR{}s1+3A-e|ӿJlbmHmPq-٦D`c2n WiLި_#6z`Ll0u'*E6ܘ?y2[Lh^iqaNby2y@yξxI{`gq O|Y*X8<2!  υ,owIE\[4@?%R{30xuh.s]Ġ M?WSɸeǡxQa*?r`S\NIRoF|/#M?= xS,aP Bɚl1 aMny#B tNgggNH/x"S%T ?s_"f=[W>:ϗvAE+4dqɎ+~9*-c!kf)Hf˶9Ϋw_BPÅ#*)^ye/x(1*~rf@iҙ/c^>MQjZzdip s/}x xL  ~/n0hѻvIrlM8>PeNH#as3#|7ZUIA3 &NOLQSX-cQcvGjK#Hu>-K_7P&?ŮK!>%V3ə˕z.#NԴaҖ}5]sK ?ՄX-'q?פ$a| EOwc@<( IےθǒeXYP"yRI{P'h\ݜb$>vϛ}H^ =tekl}&z^Ym%ňi$3o>*eI*|oh[1`{XzY+ssOrGM]HdcBrgV6ޙ#!N}t Qi(dXB?qUل>_a)h@16}7X IaE7-:NT.V .޶bmok9ِ1Eѹ"OV"Q[.3Yat$>tKMyl6'eidW-%4rBf!KS )d`n#4mi\iіN8rw1 QӌvXBV5OKA 7=H\jwvE%9,hi]G:t+(τ3,ypr`G&F؜t?ݎ* 0S,vEXbFAk Dׂ _ۺȑDGM7^5u]vRcB`5Ң'@KTV{f'bYw9oK.um8L2s Y`ual3߬nn$^[&:\:y?jӃH}]-˽K˫:QyO圧ou.Eng%:(HSn,B-.x]r\ W~ؐ e01w4j ɂC6@st G4GQlx.a'iMy:/Xg_9=>ԯ @okG2b9A $ *F ɺ }o%AI$Qi9* @B9W?s |.t5m} @ ջD,AL-׹oޞ&!@NEy,l))yFr0+b:xձ\*S<1ȴeȒ,SfK\~io8 /Aә`;3)J2U Yɇ g2?ӱ@_"V~S@:k~J7}{/ o=LZPYz\%DQeKNpPo:¿  5Ü?~O ҫ'l6@K#:o>͌h Ts+ߝsH {~\>i货[q n)[ ?]b.;icmb^P;ii[x @2l6mH^Z!CjƲz7-(kTu56~ תoO#u8\*C=dOcU''T^osE&JlU:),d5][J49%?{eZ-]V$L w>4X^09 4.:; BChzLRKFD$rL%W#k,󽿑H5%5T뾧]S]w-(ɵ% zǺϓM_K5}mb`Q`(T$K͵=٘Qk GKx ~Cߏqrtj*04+tu>Қt(MqAT!`bX?|^ ^O?4:esgխ ѱ1~CB>^JX/ҟW`M],}2`A 8q;Lx*$3ve)?1T*.o˛aݿ3uI ?FIT ~R6D%$6fR^ |)lmbbQ,E. /oduk Zaj4 Xr׆ޕ5?aia-'ovXw -^70EiX{x_՛@K_[v GgT7 +\2>,ޔSAx%JWx6hn77eaђEWΈ\Q n` o%S1k[ ]?eDSG[H5jEӾ@=8Ox4-\4PF·4Tj0.fHF‡0H+^f ،%#0yXS 1!]*pL7r~!b!4s̭Rs6]vu8MRVe U>}ȍ7[SnTܸHj¥3a~fɥ`\W|Yܛ!1y 8.WQ1&VЍ$Q&EjR휺z.Lh>ҹhu?nslC'BYxd'y36 U:VYέťAh FaB[,q7mRI/UYK':Xf>2nn/yhgC`摶(eLaU\bs>5=&b wK D#6LMuB9I`w1F:7Zò#&3',BĔuc@#;`qx~q<9dp M>T,V  PVd^#'Y2 jMN |NvU=H~{BnpIkg 94/"" x#9ӕ#ij<Å)ݲ$yqXM 3!=j&U,kM GHmMp?%-\%oH mQ|sy1ox\K΀xx=]= zrM H3pPD7RiԍCB4gA6қ@Al_ANN&ؚvĔ'GAlA8EAq8RFt++ktC%rj[(E} ԥ*(zq~K'(oeaЗ)F»[^][c'9;{8k5MZbuzÏ> e7N]E"c [ɏ olS gpNY Ho uP^w(L#E[h!D1_c9z={fPo[*{q&ZmuR )L<=@w:**$ͥƋ[|o~Լ nG)%Ta ΉͷJvFxlzJ|mkr*7ҟ{ZN>kwX5^/ Q5K Tw?6@kMz`XK]m,1y}*T Ẋmzsb=_GyB|@ɤz)yL ?ӕҜIݸw^azFjQTNܹL^q$)>TN4W̗ysYR:\@ \8q_P^ n t_^@L0d KU6K]Tw.ABihheƏ2or3<c 'O!+ R-_xY{;{[ZHXט>QrHMOZP:Mt|Yh0ର$MeLÜB*0W៸WAvc܈< [Z4|K$WAk-[3"V"dm@Oz&ד)מrq]lɤ@~U+?N*tG)Wxh>p>#2a:qa^Ԅdc%ܽg૒ep[Il5##ضTIG&(TgęS}% .lJHr?fm19 9 ~LDr`rG VАᬯc0tz-+nDhQl)EG4},adM_HFY5nwjS'G#!Hm#1liC=bn,+H}ԓVo M? C4:bCڵ7r4ً24IikXPYKiHr~95BprHZK[8@:1@vRjDkǙ))<,BHn~> U!\)oxEpzf/J679F[3ctV&lvUR(Xx,uHL}3m'܁%cxiDV]x?xki{9ηJC=uPH+ .;*4B0j|ZNcM7-oaIeWƓO|"A p:/^ScyfKHy}JU)-^ +W$mCqBkxУ9% (ѳ4lx|c{쎓=<(4$ Nu-XЁ -DMD!Nՠ#)a.~*d`BS'Z,7|6ɆcE,$"ߤRb=@_!%*Hӡ{n!?n%)9٠W7hKEƐp KQ0dnխ`Iڼ``oϩV!Q();o3K6- pdKvI_G~WsC)ȩ+zTah+ѣ#wK=!@n^!?V&a1rl3QѠ:2kYiN} ԱA Ix:)v/(!pv*J=OQ|:JrngRJR1>eᅱ/np'~}[6|%z'zqpNETQg폅5c<̗l: pvhj*:٫r4n_!Yf^zqZj)! \?sqnQ/ڣ 'vɐCd. c"Nj;_twF8`\‘}2d2 ۆ7mh[ܒze~@y$OG4^)hΝAw(9kPY;G[2/epz=y~XI70B;!` *,9nx& =2C"Wjz"]a ە5AԿw"6 NeoAZ}\LG]D3ʰ:0*hy"9s(=.a]%$` ԟߖ}4:y! bjM.5|9 jv!y ӊ:rEr@n7n )¦I_goRX*&dƳ(t.xJ8UbsUJ+R(q!E0{?ui.Ugo$|:t li*t/kT3⯆.s\,J:\/'doӻvvdat>|[\iŮ '|ZGpRLWh]h2/yusQc'6kjW#k646uVIz\H8d;ۑę&/!Ђ0'țSSߝ.'^3 AWdOQ>AFXƒDb?c& nQkUIhz( -ofKWR\0f9WG0ǣ esƸ3#KR\աX#ul\iAlX:&Kےtw.oZ0t/M$ U"U_5 ۉ*\뵱 y%w[?*_Cb/*QkiIQ3Ɂ%V8`/%֚l%}7&̳S^˷Dʷ5^#['L't_J6oA(= 4M*uj uUr"ù9G퇄D:T 3|<Ի, O94n;'?E^0RQc=1ԾZ]AuI\]6z9ȶLٕ"uVnSAd4zs{s3TN^7Y„=WMxܵ2{f>B`aCrӑMHCéJB=SkN%hSE/VnJM)Jc 1f(,9'.H6k-REw}jزr7b Bol1 =zQCLYt"n 5jY HmR]^^ šQ%`;yfV@f-|2«(A\֕Th⼏;|0 \t:zJN7RІgGm<{XFSM_į荨#[Łv~'A~hg)W]gi4P\"/_q"<~͂/"Q,snji0jM i=ѡȍ 恎鍝zߞβ , j LWG\(?I /5.錱cII BŎ߁ @WCuqeiX}]!KU=C µuϧk ChBڠ/f5#g4ǜĵ f@/߱ˣ-k`5̗]Pq6- )nlB z H_+:J 9OCMMőTjʖ”6;&_X0pGGrgGsSa]^;-fqY g+ ?5po/ܿ t`29Fs$Sw:oyG$~LGa=>-6ka bXΈ=9\1߶>1$%T ss;Y%/ ^$2V{!YH ՀӼI $$lzNtʼn~86-(?jgaӹ^?XqZ˺U(_Ix6v9<ꉝgUEi bl4KIIvo}w<JIc3J.d3&7pgO#+%Twy"p@9E4"g[G?4?Nr=zVh8[hqZlrQUl%E}1 a\ z9&ikD%T(~UXr5K}-kvU#iat9.&2tԙV>˒pwTYov7"e܌sª -uC {ژ 2:?ϗq셩x,h/:%޵h j he%5V8)H߿Hxׄd6QWNQm}z庈jh&] $MRL&ñt)Ľ=y*i*ac[bQ}=O}K^c(.Em .o*Q[&憻c v2+:fT_BEr3 `C1 TQ)>f8KOULwW`TwrCz` Lqs*XdKua3(;0?pڳrW 慉Zh۷Ɠs4EQ4%(>PJ/pm}VE#SWr.|nƌ`2i3&̘j6ez'䍌DB%|kO٭`go5rkFxx~K(i ΧJp56%x] b~82DVP=qޕ<Ejr4Cail:FPUbh-$ܑ$22n>0-=xBN8/= ])خFk9M==b0_ٟV@J$Y@`f mf.%JSּme3|cx?Wx#H 3vo=DEd UgԖݨ+fLJmTjp!<ܭh:2JMf yw<|P ^;Z>3q:ŀ1rP{XNXfRզ!733gǍXD?𥅗(\ 7GC?xFP<}X+:oΦY"M 䇹f/2&MPA&tELιRp[3ΠYGTf'DʹU&=x2zu쬺y@auXh;Uv2YYb זz:D{J <#Q{"'˾D*-܍!yCD7;9nIa,Ɖ7XfĦEq/7c.|GLtD]z*4BRATC}90/,w)g]@j#jvk%!H脢(ۜC!E6?gq1j6[2ّ7~{hf0V\n$=U{%c3W=_.~I 3C|&bHטgRyچ|&DUW43Ak$=V $nv{\3I;:uRb[(wWnI"85p c_#ɼp]_WAɄe; 0 ď]p䐹xP سtVx7q.#/"XYoX"eՖzd<N)Co$⧆ĎUB3#22 ,;:7? fdaYi 2 ,b Pa9ҫZ Lu'"xg1٫s.o!H9-M/$0K.u F؞EPvjὗN# -9Ő- m! ݩFb?{a(\0Qfw 2 ϚH$&FڒWfoGU(U mqzE>/ "y*)Rofo "VI8VuF@ԃh% ` I쫩UX|ݲ}=ac-n~ GDk@`gĠjfn55>BxՏW=B`H0k0GN;[^A%Ks \} M 4GEd涙q F\"]M]ڨOtp CWk/ng*h'|œ׻/tM_Cas[ 2g' M()rlYmwv t;e5j6?iy@7;6Or]7]Wc*դ"']y !;2Wv7[>nψuH]y.ݸY=W|7 L"M0T{NR`Prx4fc$f{D['!R^c!b}_q-0cJz]/Eo:_g5d,\O:YCF kƫ[C ÁFU3:dPdXvSKrowa<$W9RH Cu"NӝYeRU=lTR FDRd 9 }y(%o"g/9 1" ЙV\k=gɉh&’nnvԴGގV܈-w^=BTlaWsZ0;Cq-B^n aM۵E_֚ڐP3$ eDB7ph{-$Gu99rQK gSx LI4eh%n-F-rcXlZȶ.}-.Vwlo-# %KOW9WFƢN=75p:?(4!hxl'!"6N;%HMZ*䒦UxneZIA NvwI^Ű ` U ,k$̻ح3P;L_bຍ:|Ŭ(^tFG`B+vbjjr|utj>Yg/*_2Һ> Q \ Fs1'"+ӋQDHhu!z_*k1hlS{z)e˥ϼa7B왤^i$pn[v+y$!jZㄦŀɅL͝!mAǖ^"H'eq҄MԉWAЯْedyiS-$7< 5`hu&2iApv ~*G1 #'B|nnJG߅BkxڽSP"UN ·}`k)Z]8n۳shK3nXIqe8٬H> 2q!rٲ !L=9 UyVsH~i[50n†*tO}ʯh'B\TnhotmJTѩB!6Q9/ m6V X2B aX'ϖJ27q=KN4LQCהGGԪ0YaK ;7 8bv $cKE֭p%0-D"̈́kc+8eo< !Z61f9PZ ]gQ0ɟabwBb. qY+BȇjC',vǬ [P nt|E<_#;6%&W@Tu]$vz~i s3.]bmξ ;IWpmG;ִ% EmɅ[tXkFQs(ܢjd=;jE>̶:?CNL\x1 492>{yWuS3L2|͖qLyiy8dq#/)>2'- ܜD.sO6"=vo=n\žy듗yGYS(cA W%ѿ+' I(Q厝 ܢ V\GQ7ȹT,ůiFodg%6T8Z|ٴxdhPwH,Rg> 1T-EJk=UתS:R%ǿ9c^.S(Ls`@gڈ;G_C)[gwK2y¦j쑔߻-jXrS8Fdh}L Z˹d[mӡ;">bǝ56{\t<p} buO9e3f)Vl.W4K{3r=`;jv JcbuP}2؋ғ83&2"U{Fq/`U04hXرƒnkg3BbQOEFEF*Iq.;i:EMOIo (7SWLanXVcG=ӝ7~W+o3F?ޭ„P&׺/̜ ޒay. 2ﻠ<7]AŅOՀrjr$- c\ L bUHn!9k(fln2}(Gvj16127DilوL.B9АiI宖{|wAGLf2NBdQM] ȩ -Y38=T4xнB}j;߲w4Tͳ'qD-̤"bLB[T`k\{9Mqh'隶"Kjf5UNsg1X8juUُ?+D܉|C8%LQڛes⏹S 7#`dBؚr4l!JwdpMH$CF*^Bc\bzYQJG3#hahA4D~u"2Mdlאvq 'Xmh'wT4^|]s 'Z:i_.k1Y qSǏ zX5bK*=g]v#I鏠Ӷ@´JeН,y)Kn5>  IO'~Hr/ aAd'nő #4<4,WZ*k8@P+ʫj@:@WtB#$ r'q-2I0ߓS3쌋e1W!T"(MS6EڰpH[{BPʪ 8ku^XDOv/H8NBM{(8o$d}w"L$ʑ0=&p)+hG$1%p$Aֆ)tip;x ,8R[mTxB $kSF%oMyOfJ /IXe5Ri+ە9d'$M7̑:lfT;cpvI=e]#qk{"nnsHaCa~zNpuݎUmiY\.Jro¸Ndk,amlkhLCMC\o g?@UJ!%d:ħ3/'%,(QT؟,~}l0Ws -SA$=9vy0[-Ny[E_AČ숼@^lj9rTKs@hB,P|JMqŭYO l 9ccE7& ̀=}\8UBu!aMlȐ*!ÎC;@X?)ᏑX ~rIW>E{O ;efDPǍ\9+J H, 呤s$^ep(tYI Gʣ'9t_jN_r@Odm[|v6z d@Jy-%nnT=,d"+tNJ8֍^űy+raALΏ/J8VPzBXPvU%c|lEj\)ɍ_&UJ|˒@Z~BXOr] ֈݶ_ ue=-licXW6[JG9{eˬ`֦hBH+h"å*< mQKVu= _>5UʸRR}PJ* @]J-,OC{/8"\7 `!/DQ2/=)eaɬT \GyőUUaen۾AlbXR$7ob$v@D*1yh6\䑦SX?imh +.d-,OV#kU'P.U-6y³ lL[=ƘA9Jl ʑ$6"l>7)^mC6z:0K8ײ4ZHy~g>WIõ%[Mvo"s<*Y'\ާBF%ke"hCdIGqr8 gK@󰿧HU=I\QS`$W5l Cȣ 1gB͓.xuj$hx;i KVHE!^sȒ~- .4mSWuElF SD|bwFG)'X?Y̱1g>of7 im8)(g@w殢,>dl+(},3'TIхS-N[j.ҽj'2;Ub}ԓF*x9 dn,w !Y6{5s,]4|7~5N['kXA~E Hq:VR5(MbӬ)6jh}KyKfqaj!_%V*%WlsAmBA|7 M |%VPMJRIպ.>*p?~q]Y {!PxN5,d+\qH Ng>d5١mY ޒ`Ƕ`-,"Ná $e0ae%HZ>-F{\ @f7? GS|iQQgs=L*fPS=(5{ moZT MD a7WdX x]8YeRU/'4V-+5`X,2)ll)ȅHoe!;oulG)4ݔ ^ͳ%c-T( g9a'TglNM:5VɬPAP'*{uxt0-ƹ%|G݋5lvЈ|E :.sAZn.#._͆"CLPĺSت`KBPzU@/ Ls-&dcCC24pNH/"F` /[]}x)uB76v|>5cJݩp/^TJyUՄm4~n SvJi fl Ke`QކyKb*;ZuI8(m¶$ݛ 5z opٯҶY,xgal\%Fj*& HDrLY+Jh0oOA6ϲº FJJ`j2/ <[XԾhm_T 1BnIIaw0>Mc M!j&pd=),vG\gClP5oMygM$pgX / |­ɶ\Rx;l{* `~.tj]zڇlbo+էX<\anlOG3Uqc Șa:?͞c%E~*`9_{Fzl=2M^ZNPjO9v o\%2vj ջ$vW1"a'Aҍęchu9#kMIը/.3LK޷%!"D[iMPCOZC '؆_gjD<0g ZxVv32=^3t<7-r93p89n@- CnvNfb )$"=RpH$`3>Hi69j9n%N; u`ԋf lfpv_FX&3Z':p+"~uwqhkқO~@Rxq'%o0 2DA(20D,۴AېCkMAk"a1 )+v7>~ ~BPAv3fbrˤ3%:pŸՀo'oak,& bNJ1ge7miP Pє.H[x\| PѾ\i< ;rqߘߣz _\(ӡk?rה[U:ILH{"D€-;U6¯#Q<#3(ì@o3B{-_c[U^$h#sϮO%Tw}ds@Y@gin3X_m͇ [>B&Yl,L%W4ľXnm~hdX} Do4jz0c"!? 84g1N*w53˰8oX ћI.1k H+@_hE{OeXO.(e';|/%&.i!,οq6]r2b*z)+'°p%4B+AevB /cT\!/S\bys Y(*.tpM`$\'۪$wŅ{ 1NgfKA*5gՐ>ْ VStji-W@ӷ_wO]Qh;!_展^29!V"g,\9#S;ꜜzv,=/*/ P^}1pf8 AZ/(9KG 7`%j]a*[SL :%YgvD~Β[qpc ^#Z) ~,ҹrj]ⱻ֊@j@C{Gw۞73Ė[Ώ8Z9ԄEΜ\PXQ.ޭj"B覺0}kfZ #.qmmswU*[9gCg0|p#>ڐ!7KZö@؛ ܱdhb>Ar 'r>cI! 5vuKz9xoM֗dME$AJ< u@6n,`Ѕg.,e y?PY:' ^"ƞ a(:}.a5]Q:AJ8KHu܋⺌|E_ӡBTBΨN*k<2=70|R(d\k.60 o0 6ڪzks+kj>`a==X9v *s-|o#% =L߱:S7=nQVՊo#z - TQߢRu\]f֍l pvmܜ6"mk5h8~12;l|55iikw~do1 ²"၏,s2#L⑐SЯ}bzzY].7BWԪcݕ/ЩK\3edi 3N+!]8szC_ Ҭ+?Cnε { 7:g| j/PNȅ.8|*ʀozu $FJzU{NVOx6g7\Y(}8гV{̅ѫ^8] B!dO 9 wԧJ7?贀9.cբr;ݦZ/aƉr[?G:sZlԜql 7w,M '_s=I5cP}nOulY9Q&yk(>#LVS]߽}!5˝.Z$P\Cq+?XV*UZt$~s~̢1qlQ$\%]U2{_45dEiCobp^1%Suzk RK4\zn d7`@vLH靎>Rria"hmYPwx%怫0N/՝R*1']K*ah6r1¥I.و"Ck+{q-_)ª|D9<muNTmo2-Ƽ}nqǎdpEQҢEkS'#h1 R(cHZ%WnI D˛T$!K ݻ_2$500ed[-V'E, yׄYJO3S8r.tg 8S/џ"Ɇ掔4$JIt+`g;Ж9㞧$.n%ߝ:{/+0;e3wdC]n*kNo)_%c%vy,hr4Q]Êa;;Tԕ?[W7Rofg;tPW#W9 zPi+ Z!!͚bp"<0ѫ4.jhAkLj I1cP:?X1[{Sйu;U.MIz!Kⰷud[N"A;\-x)_!BJH8AX 7#TES{_e6~{n6G3y7]l5с=Ra+#2֙+}c&_mnQ=o Nܟƛz|ERd 0,n ѸmBX_ z3i(bU}] n gWWs?2lťwW Z})>&4.EY,3"sV:2 ܜ211]^hDz*W7+^@醭=#tGH,U Y˼ׇ@95/*#8`+j,-j;ҔZu!MA@2^F 6SbkR,(g2lhMaT`xДH_yoӽ:f{;)x;'۪?3 lGugH a;w쪐)}W$C]kВHՊP.$hM]=WOȇ+Vaߏk9}ҫgMXegttwt 1x~v򾞥} {}/zI>h{~釞QWI/曕s*whHj>5`ZP?S ܫUg-5N`M ; t7qKxnבOv?X,=`C';dT\/BFE-JxlVb= Ϻ8/jFE\GYL}?c"OMJm&mZXk",\=dwyj6t3ԭv뫚J8tkrΛx4SYM0],P8p{Vfn9֝B^–ɽJlqo^O6 fL"˿MZח/C{6F?EjP[x5,g_Ex9)"[` eCꔘS8B 8Y32y1=̚PŶ)جG܅cJl5<-%Ήmx Reڃ&tW3r!;6W+@ C.j6 3}p$ ~HcY9 I$sgH\렛5cG ŧwYa}D};~CV;PT^ L;1sƷZ޵p >y"e/Z}̿F\'X<Z.5NMOd̚s dg6SM@MTowD?HֹgXʉ*. A籉dym]" d>*!h2\z׵}*/X<(^héAGJY*^r⺀‹(@(Vb^DXZH" ; =C2%5ge{Ck.Q(?n^|׊Eˏ{-A9Sg<͜znp`Ah KWRP mX~0|dj6θ0Jq+gzWwIԕmրTzLCW48sx$@Q` UD 1 h&8/18OJzm̯'4}%xcA4 VK "S勿 .b.~;pua?菵.)P/Ɔu[>PYw )-pm&Va X֚rQ秡 |Mib8g"ţ5C\1-VApOw̞q%̚< 碝 B,g.o/fBM-%FӦRCTLՒξvOLzh:_nsS%AiTHxFɪ|QرJsYDbIjOplɢtՎ&jGIu`d +"C//7ե"&v ؅ɹ3: K@+ByWBU"{mzԦv(C;O20wzoGSd`"E*E[1 εXuX-CDL_׎{+ݒՒ\Uۓw֚ 0k CWh m -)"›qcXCF99;@z7p#"upwyK-Olú(qW<K./.=:*hbBju8}õyu0-8Xy6e͠3|;[擠U!D oC‘'euмFk3멎/,yb[Z@ݰ v~{pt$z]!#gka^ұ`| zVXL;MFx%ism 5踟-:@Mln&.CkQev`껱X& { Qݲ< ׊&ץf*  c!zF$Nؚ ;z6Czj{zWOKD'7a*[l n!n#QrIr*2 x1E>:Q-&TLT *NB8sCs14OZ͇~?d"!t2 P+Qߡ$),|oGۇI_#юd}5uiLkUP$;NCaY!8fB-;u?:DQ_p~d2<-xoW 1V7E--c,{[`.ZRᛦ@ L!u Mv4q~z|$ 7UmIGV>cՊK[i |b =8DkmO0Nd"3`wZ*nˏZQ&:0U9.bDgeu&Eˠ+kx ZDY=:'0dJTZ9Nk1䚝!0}bt^^nj1;v̩g{$Y% zB^ 5[baesd~;3r)ā0J5O3*ΩL?Nh#C3Mɸn_owDQqX^V@/?eWAi9&愻IOKF)*>j" P3ƾ%V?*hĵAZ6d@df,B*DST`fXScӍhg*e;@o ? cToHJ{bkMܳcΩ;/ŋeѲņ{Q" J-uJ ?s!bԀL_ʩ3RFĭEe(h2W- "8VOg"Jfq7Wb[*)tVkP#TJ3V]P=sW;Ő%6h3>yyDž&PњuV O:jx.~n2z< Օ3. zH=r(FICgF1L16 A &fm BNCCP`E _5JI@;;G9o"^iU@zC:d:'ٞWnl%њߨpCf`'?J6wod~18ҼnVDWap'QM_j, ;ca됪`Ǜv7PmY!vScca\ڳ[{Peaq!{74dCjh~}-s//S7XEf{9{'ő@t?դqgd&l&҈WNM)m6_GE--9 yf幌7|s6_(=| 2&Axe(+!gwo4,5(Ѡ5FxniIҲd$x嘃 o{[B:A;kk9wIylM ssG;6྆d<q)MRG2C$Q®p6;ZϚ#LL ҊhmYY<$=1_#! zxZ)0J@>V¿?4DKŽ$7J<~)EK}*ZbB >nLJ g }W#g/ޫ'"{;=-h%Gq\=ߚJi+ 9ٺĝ Glfc־-2}:_5Bo#O $ |bmrNGzD:|Rג\)F-!^UK߫^844>?h\|ӧAˆ`GF]񦪜V&[e](|~U6bdnIW&m6K{:Pu+9a P^ؐgB 5'{ϦJ SN, y]*|د~r\xSm߭ w̾8 6GHKwh m )&.008;jHhھ l Jz#/g|DU-?WGaóqBrlFCi.3Sb"zVhXF&- d8(PP5My?> `P烐vKiRغÊS^#ru 1,"9&k#xu>r gu "6q-ib]Wb2?qߞ%FgJ}]΄ȣQ򒶌,dnDыxޤ}A>rzMA@yF N$WUpSP6d@} '9٩1ld)*Xj_?8Yzx $;5? lŧW^o0*ҐabAϡZ57M'oG_U|ofx)?EߴY=qN&S69S0 ʣ|r\!KW3=!:eQL;-)m5""V'LA@=0$ .Y@slENXB4"9W*H炇>hЪkj>J+ٟ+$d+{O:,|UpءQj8_^,wPj]~=~i+Qf&%:8Rb֠9/Oz 3H:*C!d1(fB T9片.p ;;_]J2Am?[螺hjQfm3o݂4 ::k&B:}B>:Q>X)%Eqj0YǮ:f6b@a__ږ)۲g:0! j!dx O 2 mT̒iV2t&}Ϊ$SG/{ߦ^ EuaM~2S/r#ĿrPghh|tӼ؝ir)ˮҭdTwN7( t)+r; 7s߿5Vb T>?KF P> =_~ صwia&oLq]E݄?ܸ"``s3KT֛/TPE8m4ok7{[jr  =&FeHb!;/.߯ռQ _Ĵ.wƒMT^Y&%QRGi>tayQ:l+{}$ٰS3v[-M^z2r *a~D*Dp'›Lk!ZELR9y+-mN؄hne;n_CJ\Q<>-/sDɍgI"5|4A1~}H[.,+Qzkb=u?Vh.&f N49n߹u&Fb&12ippH3 Jޟ'} Z߽Vw)'b>g2^KnOzX2 Nl~z^p\yLc`f[ BT.-3闅=XhA)KuV!td͝g)34Bt4֬pMCLE?wi=q;u/3kIiY(d,m.) hT+-.Y\Ca.YeW~&w(Nɪ'Ψuw1LDn}r-|śӭǢuAz(HKt U>˧o~ծ;ɂx't /M;]~*A@^"] N[~z`噷-'m=R,HX=$ӢYVMI_cD㸃z+RAiUMUz $6:^\*z)" ^Mt踵)l%"tkiX) ǡcS'p! d#'IfdK6K/wM]xz#PKxUzZadZH؇ @q kqP`ԫ xpqg L4qG-öQ^tWYgZƫd"m)cTu21+2M/z'2BXpF^j%f 1rw[Fۖ@k>{ǨapH9nDppہtp}Lɾ- r%A X8YHf$sxl^~첤-h>6/&~{A8Kh^#hN_vC2'1p) (+ׂ*Ll,+ %+ԄZBڊqOUCUU`OG)qI\[h]0ЄQ$hTVS96%(]þ h IV]`j>0[SPu]TgcB-̿H\oofUwVa!`hZjeSrB6!XYejQ!AYū̫)ဈRIo;؈߯_Ti"n5v]>dmU(&me4TJ%o׎QCPj5si+v\l|M/TbI X*Go~7tnfJ|]tdEYwm=aڻ¿B\{`*-R4<:ӯ-VR:$ܗ (?mtF?5fU 8\- CA vܘŋfkՊVNe3ur]3u_yoW61=BS1x(n'zFBV!ƈj&3#>[2iD$6``@(ʤ:S_\o^S֪Moc{!.t+XDLvmjK &?h|H:+I{x7tcRŋMwtĊ{K}HudގTnoepH+fhNX1-S6`/+<z3ee`}]ǰ&eэJIMN0<5\{WNB 1Q, -.3zyFYD Xs6QX4sz+W{$9W $T_'v[4|g[x7*yU;l7ٝxY4 r79 rSydJ~NLvSҋ 3mUgV$WX*ȉ7K8\8MP?V,Nh␝(l Z*O!Bse6.;;zf!7جۼgQ:_sѐGA'6;9i WܨfCTL&? Dđ%(CP"/:ˡYw%aT%;aȇzkS=i&*h;X^ F~?N 7rjN*Ѽ& ,novɨD~JIBojk kE9q&1 캪p@"w_C?ěO_Ф/~ b::Nʀ2%*f o?kkhNT{7|nӝm}ʺ #h }寲8oN5bN1MyݝYHY;(y%"^5PgNytR2 KNt2'0ZdR=ߖ>-jF(P96Y ElAGui_S%1iyx.W;~&5#&-i*|ގr(1򽗱I뵯Enq6jYF0]:#g2QCC~Ҥ (ο&C|  jT3,) [-Bm@Im),r !Jul +"b-<}_no0bTpJ+\Zv\`esE?Mh󭉄YZWwraL 2s?]doe:]|Ė+ 尙'ǀN8'oTtlatt om6!F'aJGgP%envF*5+$'c}G+HSחJRUI=1')wZegsaH'IԿGͥC|ip@`=iE turD}.Z23Ծ@"|}ٌ޲ ̪f@)$b7 (N3hD **Zn:IojVmC2D=nHg&\edY'ܡ7M9׍ (`nwf0o5TbU|mE#b=5ƠqF54~ { ::{áFfzl(o}2G4VOka3F`zpX6O` *PG<ߤi`@ȧ1feg H= ӄ@7NPǃ/wļ&n׾&Ojb IE>-*@%@XvPaⲤ / +8HQlg勂Hy1r`j [sz#$3(ǼL.ړ>^I$13T2>i-"liNB)m6`hORDkL Lj)Zf@:*$YE/)ldm!p^7o ,WCI"YF'T,"HCuSVHwqUKwΙx5{j˜\ǭJ o}-l:I%13[J^3a f뜟6I!wbWq2+:w<9e͒VN!0۵w^d# "BNI$* y`ERb%[Ee(@v %QMm\_]uY7@_`zDA0]r۷3y g4k7 ;bj/iWub7Øc60&>5]#Y$d$r.'a7oЉ?mvJ봚> 2 Š,TGKd"TNQ /V|C27Byt1rV??¸ ѪIcf#HκKaXO#l@4xhzq|#~.YY6b9vA3عAG8'Z$_ j3es3/2HbUZvQ;;>h~' tZ( _UzgO S6^EHe?*6r=-Y'=so '?ec'r:|PSʏg`ʵicȁlHg+\x}n-r2ANzU Ivsr?D1Nj΁.r&^S(JEP f;:*0 ?\χ[%3_QGY5˾+=_6hYBpS4% <]\nHqI^XϢp),r0RE"dsb{bꇅfng%BaT^ <%f p$o2 }Fgv. qF.W~MO䙞\XܻR2bU% tDN{JD{5{ *:pG:P2ioJ&/eyɻ:a+1,WV&SFMn/u=:W9|)L֥ ZE@K BN]nM>]6^e0 ZjԃOHYu|A_O"L$e;dZQ?K:C:q;_x_]9g PY2US:0լπ|kyR|Sɱ?' 0 3B[Fe~}g(1woݝy2qHTv]uj.U YeOԪRLL~m'1_ =$l,o)%eUC.C/E )r*({a6Ai,Y*Ҋk/],/J-Wm%a&Ӛ]גRYTZL_Q*,*Pq♯N,7'J!;Eho4UK<"_S; з)af؋kIS@Eyi$y'n~tk-MH6Y"{'6eCd¬TgIduqn=Dɮdg P\B%6dj'cL 0[ȎF'#CYMu'75UWˁč60LymyCnτM&ryؒ.Tws `8kk8hݣIz|Qm׌g2 M]dTV& & ?9gT2 SBuY,izOB5~'qPT++zkE!/]rvpzh|SL җXHlU6yٓS”2P1*PN1?4d[5Dyٍ( j$ghӓ1*1 &WC vƇGYY.C,y:bf:X6:$d)܋iKݓ ]S#O'SٳVWD _ռjNې{!;DnxOlܧ蒏5]*hpE՟.3`RqB48D Ȅe`ζ38MMnUs ƌ5P!sYa#l(Pۆ$˜3$Y@-wp^ְڡ xs&ԌBԥih*|[Eo'!+w؞g?/ +ie6z P9fj@,^C᎝Y̬Y0 VQɌ o?YF-`3DrH(}yZLqENs bs"aM! }ѶO6ٌgJWRhz%#489hY#W95 eQ=Ԅ\XGݞ#geqpCݡRPYDfV.! [lvF.?wF%y4CT1vaQ}z.\;Sp`4ϷyE4JU@*yT"[q}=gڭ3€טl'@&W3GYv}>ڬu^'AG $ Uj AH>fy/q9$^u|mPx[ݸnis-WRWEm}J}tl =ڻ4ؖ6MXHTn lT2P :˟c5o׼ۂZWG>ߊ(rnؼ aUF^Zf^93HYtbLTzrJZ`J:hmq8 ޅ 3VL+=o|Q`*ُ;*"1/0 9kĬV,cj`.V0!&GWau-x^OKD&k=&Ӛ?۰.ԖX&SAEUP`E]uAK؍n'BY#F6d҉ޤ$1XZ@X҈Jʝ!26>iQ qϪ!VSŜRW@w쫹@r`1!N \F,:&N9AkVd&5DxJϛ@Pi?_BϼT!1:0Ykp7p2Mtnر~ Psr}^kY;ۛ2$rU8$}&$4-KD , ni;of'ƚd#.Q 6ˏ95C O TJ@ ypذr+󮐀"Os1Y3w/X֯O #/SJ,8~=` O#B>qN J&b֚OH_O,Cd c-eE*hN_ccyf-+NM3$9X6[N1[૴V&g W8wXݸ+2&B;Ep T~W[ZX*tqיg&KRzF^?0[#Ǽb+ ?mp]zL(ԺK$MCZNln>:k {s>$KRޣPp*6F?Gҹb6Κ13Q DZԾ%/?E#-E~!**Y!n0cUv/{|1F#3ЎN9pfv`iw oAWv7bjˬT)D:܊#>'!/Dt+eU+EjvRZ 0 gtϮa:<ʿ:gzy7ЁEJQ8vP^82ǕCbԒ<ؓfV¦`~74 p/ 'S1qT;t4'^JFs.obZug_b砸حZB7x]K޵yMJskKJႡmpѷ7ro!Wqj̵D*sxtWfB9FRKݧnM(Xq e#_L=2fW,yWh{$Zwy7LR[e_]Tb|ax<?'ȋQ#"xWDvvזNpsBwY}f q%I&$͉)4!;RDFK> RCz Y¶MGJzVnaz/3;Jᨋa.ʿÍ ]+R ʱ#1Iv3'~l_\ȕT!vogDN{AzzR0o^-rme,ZA>0)yHs1T4:OԵqMDg#6]\Y8% NGZ;fQAdЭO eQ$'&tFK'Q欐+ixt%<-k ^gD&_{0""&sWŗ>iV|7nGȼN G܎?k!y @ "$onP9 h?UAq5!-y[ƿe#~| N)`XV1rgr.m0a(N=ɔ*~Fj 5k3*~32U9,8Lxn{vcTJV- Qb(Kzd5?;p>Ip0k ߺs4&+\+X;J>YY mNwkA@Ftε\ze7g~Cx|kJ#/+tR'&m ]'ۣO%Z>h*ȠCiɝ^}Ui)di…c*q} RE阁rSmov*+(F\S|(#GۂJ0/qZ% O]=֠1q:K"4*TG#T@[Qiq6@dkL9 J()6a110UZdf6W@A/l.v1fU>_aƥW_QE1"XLW֙,Rh[+KaQV ё]%C۬IZSa <&΃kTFm<*goU@HydxѺ>gzOrxh[Xlm1q}};צiͲ N~tÎ@F0L"?KD$2h ·wK[>B1dY`fb4dp}xE0=!Ζb)P%xbJYqqI7 bmЄ9}EEi^z+{cYXÒfg|+W5k,aGZ0`F% kqjnvM$ | /x QQz돦 du 92gxE3Aȃ`%ȶG|MyH/zfrd lxFH="tVhEwM~Dž|D}kK\k"'3X mTچLEC1v(ǩ$ʍ+jk[q A^͓\myQґ!$ISnjH u;)wxAzFCpP=]d8r cU}nc 袟i(fyvhB'V*4LE5Y[%0[WAk9|1E*}[[Q7xѕCTT-EY#)V[m㗃X\^J۶~4&H{9Œx=gגFl)hߛxbZ8edeu6ݔ}˞vFzg2|L0~;ɮϛGH  o?'?UkUZָXCN Z_$'p,BŻ`)6s[ &&u,2Pf: B\Ƴq0͞q) oE{% Ѝ10bV/? \fKuTi. U}O xV!7k9Qf5?z/"r "dэN"ZĿu4t&USB|2iusڇ4Z~ B4c*6*Ħ8O銨ah]t%q_w ޭ|'dF*dI2[tqQKEQ&SeCWs@iVF YCzD=ۘN=S&2bQKh%XJޟH1ƜՔd4uS)4D{[xr~9eLV &{Bm8&z<&39߫>g`P/LB}=}ЭPw!@+Ծ8P}}ş[3 vg򾩢EQhNU,!`^taCC^b3j$$Hl. |cƲ >̋%4![賾:R"Xxpl^]KR_n|lzӁk=EGgjk_ڌT&-/H:_8HıVR|/t<+\0;}6RH%B&SV| 6R{իS26GibEf*!5u Ft!: ςS44ޜ 0FŔCKV!r$_h^׾#Z=lYouF\LtO-%R @6rq 75)8r@GNs/.ȘvcajbaS4Jwk3q+ 0d/}KH!M rE)FU{,ϸ9ܞx˶%1hJ5^E"XfZ%/?t6+\8s v,ˬKUpMkс V׮?K0RNs"q-8./CIƘQN1\ٶD\01 bWS[tZ,y5+6B\ ]ʹS1B˚Y=īx |xǻ}rIxUKC'h BA]@GX]cj^,dPlgD#}_ 4<A vb-8R! ԣ; dͨ.CMNa˰&$OFJHܥϸ=|,R_H`4#7N7IkąƂʆiak!Yk|D: u[b݃ttXݺf#[1Y!u;c;:u5-H hEL?e[N.q(,]Ki},sܳwF5C_y XY>:YH1^O5'QucoϊH^tL*t3gP]XuҼޑ`Q'o18۬ΓO!q-cEE Q?Q/f4#(LO( $9vLn؊U!;4[/K_]# qӕThrKh/[Gc~`xb|mZ36_LjͿ\ n ), Pl*gx\"Pۍ5P 5`)ܤ渉o!8qP$SP)ovlt|]qq)Hǟ TN:X톑Ҭ" "/_ qBꂑ0oNd2Iv3'inޟa1|ĿL}6ܜT>VO#-z#xi\a@S ҬDJHEzζZҘ_I-4z|)"Q:v?$/䷅WY}_jҾt;{Vr|^1qC0V^`Hd"aqЭW&d T>y}Al(2e`ZU1sQǤ$(\y5GSZc֎OlfJCsP';3t38~GhAe47fv@qWatq( )Kzwkj7 ej}pLD>`z0!'%>`u̇.)T7$;"pp1KvP|([sbK'[+G cAELMGs@.F^Ofjs6jQ[=3ө{Fr=>*gcuUnq(g]Xc)=o6H/S'(̎tѝfCz T#AY\3pӣ^0OqkjҪ`:.E8TjFA :SZ1 3 :G_ ;CnsgnS 3eQSҏ vCzk%,T6d+U'Jz=g j Ιy"J8?Qa:3t9/Yuϱ2{a-5#9yRShYTm(@`h܉lP$ņ,vjIYC>G~]YS;!xzژ ͌_Э$}.=Җ$-S9׃CaRq;'s$$UDOʕD\Y>h^p4ծLv 2 Hc^ázݻDw^}90˴c+V0 aМu;?&jJt!;ilU 33g1;8 C}R]#u VrI*O$m9 im.o0/ w=G.6iIu-m-O:6P &~q|c 542VԾ.*,PO<2kHF|iq`*2wh$/2wQ-t3 p[MɴJjJ]0Ś BèFfmNkQds>C]iq~*3\j<?xt"EAΣ7i׋el~TIԐ?|(,WɌsϰt&BR,uW?_eXDV|ejo6pVԜo@d̶,hSJcaj+Z5Ai@yޥ#k~|*>~f;hӦJ+*:YӂDv>d4EZ3pCu״+NDt_L4ut $h`G/jCuY㚟\( q*Cc3pPnIEl 2r48YE|^oPɯ+. :>f<~Rxu\*?屫 lVGaEFBmzSaѰ1e`Xk3u< KTlIICB*YmLL2[Z qD͏mj\l1<{ Ҧc's8Aùր#RbȟOJxQڱwBAj2}{,Ӱ҇3L 68H PHk"+ݑ[aU+B3it1yɪY15`21`%\FMEC#{,TtLn'nc̰59#kVȍtrhGWqBB3luȺ9a`ʽyMTXǖW7G͂Wa\N@KXE5$yɐQcS⊪I|3|=ښ i'Cn6nbwѲxC5Ws޼疦z- urh՘j.֔R=[=-q(''ɷr'fMDj')7'v)p}hy5n*^J؀^dmh7 c2ý(8 R?m ۜ>?p*;(t^&Rz0#v*%a$DHgIAx5|u$L)㵩~wq,,|Cg ;VI{g9O+dEhJ2@hR3)c$V3FiެՒx 8{C gkuMs_EeQPCLȿ, !D#ǿo*<%rxr_in a(ۍEjc?KDۄ(.'PEfS-(‡ەڧDyFdз,Ь]oQ== v-AMiK{8,3[.LVa7{,GȀ@ːغHDk&4+x n{(< 1v] "KhE{qKd("kpz./U؜Df8z^]lүiJpC} 949D{4qHDV_!U򩡟W%#] V2Τ86gQkb2i@*,P^Ԏ|3ϵwЂ(M/t2 .!@qPc銼u`ÅWe-J>L\-xi)S-V,5L$r7grk>B?٥]P*OXOm9${Dَjqx;j[%_XBpeFgV16E }cA^HZԣNџΚ6P)L%uXce1 ;-bX f?: L]dXX3=LUO0R<7kc':9sը.eMka1(WXsBՀT8^lܚ( QHhwfשvk>KG}~Q9fͨVc*[Uc dJWNsn^k9zq٦=Q:eJ_Fm۵2_3z0(&xL{/q~'<-w5U\d)Zus9/ccMdI)MLG0YRu 5&`T.uvRlxp;8ұo+J߫jLLHsA (jj[0!r} 4̴@%蠸 ?3gJ[^[[c󜳌I7ɉ_&VzB3}:Jo}ШυR\6j˽6lw_q>LT} L&fAYwWӪjwa2Aw/\+6DNGPqIGZg+ ~YH%4[3@Dz n! 6 8l!JTBfn҄9y:chK ) \pbaF'$Cr솱ɽ Z"Sȥ_)%5{ȉd" =A565bPe]z}Ȧ9v FyO*!Z;^K"+1[ ΨHǔt6#R*rA; '芠LTP& ȁ}pFtH7.ZQ'Ȋi1V]өSfu0Y:*_5rx.NBf[m Ϧ'GzZZx7a*S (@76X&TW?HCMJ;K1~~(tְm =h bIbQ}S'i6EJ~T?ʦ UOX{c֜RS j;KqWK7v(;@Vl/p~E %_{:=*?dvpVMʹS¿Yg>'$ewsh@)3a >k!a+ػY_-CG}sCR{li&kDG_,0-4AݍhңCWElֈޏވ 㦟@z] .]$^~ՐOXN:.8]Bwݺ:ٛ*1܇B0u{ |yx=vof][ {yjJJ'bZWv'Z^#f!X"NWoc!ɈZA5Vzr$ϛ9ƥTǦu09.5:N8\0vb| :-Rb&1[ݽ2?tYGg4X(ѭMxqFl2*S2w@ Kw.v=lC1:^ϫ:65%Q׻vn> $ (p/BLJ.JD?zi{UKY}EJg"iՂ`Vw@Jqk4VwfO@ eO@*46!Zv˱LO$<4;2MOr|.Tثr -d'1Zu,g8WLre"@&N{T7woˮ IqI=d^ʕp*E$`Bl_8=HDE2;Fi8 BnB[h=ɡa_ V=r]*H c88jn{vDe6- ˵ &kl E֥.o.vch2]IϳJQvw6jqNP`F6)mTY %ZGl@[._iL כH#Άҿk"bAX0#{G ㉊ĂNF5*(\!تǎ'}7?S1eqQ%9 aj|>;Es,?Gh:(LEG(a=P1o94] I 9~=#d4S&l-SK 7a;28=]-wk+_WTU|V1񽇻<ޠY>tppOE&xw3Ģe>V%C`ݓMyW1J @^XSXBH20<'XLf>6j>"Jdhfqv:K PwP;P0`$c, 1Wvv8[ vKq$^ Xd[cab6ufJ#:r!GoLk0RQuۥ4k2yk: `-&!W5- BJqp³%J1z|g*e54AA8ɞ s+r]Vz/PkeiQr騺48bZ2T깚Ż{ GR W׈(CMu[1NōN zhAh nHβJ]6F9MH 2l>Jea3գC%$ea4$h LE;4ƃ4^O]\]4[ėD|(D=]tPRU<.s| 4iɠ]WwXëtM~]"w~DS7AN|lDvfF%ikՓqqQTi'~R?!y *CV@Nwo$ |?I5}5T *0]CzƤ;% #$cT4`͒g,GO5E d$qvm%[V`u[d (=E =>k R:e7P-p.Le&|\c8YQD0nGKa:Xr势T0Yvu ( ފ:"gw`ߎzh6(è(Ydž-fB jXGL7?*QsQe 0E0)sc%.dKi7/!FW?*I<4TEp0h²zfZ)7f\8mc{ęuzl6:l쟋-/r \o<֚r$v< ,}-h0'ԯDk7ԠK< #7^8:[!sv[啕!o.*p+ DzQ "#q)!I SShV>lne   oedb$(>x-R %vf#QvV%"؁j'㈁Ԁ \](k1 R{EzZ_| ]I|H#BGf+cZsXwza{lZ^XFY1G[MGXs(9B[i{Dr|(U0>MJ],6N^⪴4[T"%uIY 3Q&}؂KJS]Babkܡy`ĭY D\KqvDr{3X,$#߈AćUkJ9i{ET>sVJ&AmH79 su]dtyO wN?!X*Z] Ed(?V\@Y}&G`2:A%]=CfZXQՕp\wkL^11y-^8CR)RtĢ2?( ;+V 27?+.{IA!7 , ^ʱ8Ǝw meO0V!.;ԩWe-cWv@1FH?kHޢ"vA 糺s!ݸKt{ WҒȕ\/G—4␳p (yMaKhS"-)ebN9mo{%%t͛i}p5cŁϺ;FqJQ.(ko?1>lO.cY\[,Ԃ eVgH Wy2XˀER$]XhLH:ݡ[ 1xk%:!j?f]jeF`v;HDV{bv ?dm{|}OmI#aaYhؐ S)CN_2"̔oøR>x6dzWaf6iwƋe O|QB/3sbNݱ 2T{ #֬9!&"@In!H'7&oC+s"Qu;,t{\85 ֵOJG0&2'uխܳgYۧ^Qɔ7/d?YQgA)*> ZgLk ,Jλһc;3aʡ7 V>.Bkt&pS&ď>tUB;:Yts@5s2+|0M}yT[Wp.b"ׇV)(|;_9 Y<4}@?.v޵X+R]# !/vj LzLO.g8=1.Z$ueqzô$x)(LjmeW.I%n<9H%x$5 @< c74R nr~ۗq@̯ʫv+WNb*V^юX5;3AR0I $jB&}^ h5\|p?./tz4eiRjS)A\bw@?WhLI`"ϡq'k}~pCU^8vSGN6)feiQ̽`נ+ ۖ,U+1gʃulEv8eB,`1 4-b?tIG'1`lקNU%Ȣb^F{Txت{NFjȽZjՄͺ%V\Q/l} B,JC8'N(QwEmR1?gITn,QIӺ8x*nu{Sل\-~n [,‹mKMSIʹf.E_Zup"k3_6 Ht#0nA&aP@ |l.kGWa}[2@:C%iJX=9T\=I|)(%$TZnJ"uu>o~V`dW):8ct(׏* ;x`4NfMԩJ4djD;޹.q7&ť<,HUBl6h^{w RNi[\ h U1"_uz~i-S<S6խ|f_@VU/2V@鐭=ˣ5h^M㞊M$2^4IiEY⑏O ۳ǴYԑh+~x2ܷ |۾ ~L=wFSZD/j+guDP|⃤d=^Lmj`˒@׽w!:y/%`D" e%&7{n߽Mbpj4 9*ύ/j;`% >(ͭj6VF2bO$GӶM2brjdFVUU|Dڢe"e .լMc-HPq8v~Ww~\:4#,\I!FK;R멲8m9Ta`=ԙ4VR:J \(F~7\8RxpCh"ͭlPfJp G;ۙ5@m@r7m9]e&Dedgr8? k` ź&:*( *JUr/ h ۧ(JިuGzto-j# ﯨoצjGDfV&y`^M?U% ]@j,և;~=@<Ӝ\ܠ''[CC _*̪LJO$.]{/Һnlt9OSv^%+7Uk+G"e]JX0XvKj܈#yAXQJ_ Ha]۠lIygЎ P:˓_&]`gIX?&;4tے.*#rI%{bØOe,JYd!@A} E/6G߮jw|7KyxK[LD3Gh!2ev`xK"?XXtD*3˦IؕБ]gM58ω'WuKA NGʶA{$dƝ-lM mZ֔{4^c;ᣫvVJcp5+Wj:{L iUڷnx_ Uƛei;ѧ{KDVN^𢾲_$iQ\c|XϪ_j/ռ@fg`CD4S\ID#](_\,f⼬ 랥N 0 yb\23eB(~$>Nɬp??{vCz~ȅ=LҞNAd h[DYR=Qql͍XPRgڒSye 36>F+Ȫ m!vOv:R悱|5gեj{2pI*h;yߧv㪹Y}m_6K5)rOYy]@ 5s~b%3J1F1UzUIX;-!{ultbEy2ӌD8OROL자) t4uў GgR%ɏ#75Kl$_Y ,Suj~+/IU6vÌvO\eWѮ㓉 mCǶG~SD:|Vn|Xڡ XtaR_ʸ`X֞5.;VYF2ΜBEنm&0RҪpZ -qq565Wݶ0h wmgҏI?"8L';)GK(^xYR x̥Az1ky#vs& "G(8lwu@7;-u7 p4t7dzUI"fm MAkaQZ߫a˪~F\5e-sr/ btdϑ\W8۪ =cO)מEVkP j,Y)2"!; t?= ~FXeH6N5 D6L0|$*><_Y{TZOd6QH8(Ly6}$}=kpЪVDbr`6).nz>r('R=ʯaJOh?F5*,-a_iJB,0ukM`]x'1~Fq^6|,&g]3 iӭvpBM/ᅕ-La95wDI04(/z=g{+(dd6VI b};b"5_ʝM]W?L߹qviQi, ǝV1'/ݍ06o(\^^>/l .RW3yi  C'0+>7 # ehȒDэX-^@ Ȼ98')٪dOSoEX)[X |uHi:-*ERlӡ.g O0,jOk e#5 9j[MT[p*nߵάyGVI3M$$sblckg=iy0mprf7 @EY6R XU[h{PUl.vCk/<-tr6lDfxOgo{RaD5}FjMKc#y;с<cTaYtC*#@!/zbԺW0o|T+M85xy/3 RF) ߞ =75"6I,TKDP_jC,+z.sY9tH) !pBaEu#3s#1FR~vǍ/,diy ϙnŽNZw]2AY%1`ٟGsm>'qFR|<*liHDQ?/s_mM7&ua.(;˂q/Qa|ݤȨ;1hGuQ 5@Łf}X?0TV(o7u_f`}.3@Ie:H%u/7GlK ^:Rc]@J]fo^B̨oH0ƛPzWTye^I%#(_K7ÛE`J _H/ӍlD`-7Aێ 3_ꂙc\{u8)~ _g:4Ο+͡`C6bgM,ONgdnZw_qM; ShOާFP$6yt،]$m%} VvB#~N1f4Lh6Z/؁|uL(`ٚr? *5\MTaq[$R'U£Շ6D A [. |cGXSo ~s:Ca{lTkpAGВF(\txaqzVQ.E 1>/_]/qDCjghyСX nwf[^];)8eoaFߏa55@݀t1imydljJdBya.]2'`l89% &<ooi0-#Lh4wj:;@+ɉ5>-m_=r.2ahƓrxMc|Lqڲ  ;=- n85Nqױ4Be[9dRA8w<ἅ.Ss%b;(ޗ^j0(9gP"iLҸlee] fAp Kyfko7q_֫II5ʪ%yQ9>)(gdkf@3WJsj\k*A-~O!z{CO3[ 2‚[V.Ѿn($Դ-kATO%0yo hh\t\6 6+$UFz`솟nS Dt; Al8xkapΕa#:fUSڄڋ,>Xo~`qPوi1&?p-SsgIT⊾ݘGF!3(-;dʼmytS6)v|>d<'һK4V{z!'@MUYTF4^2OƧLU@ ¯~0O@L!}\l]=X֛N^(Q=zQbx{4˶n[n.s :uBNк̙h&%\YY^ DǙ[㼯z LѾ-#$P(J^,}Jh$6 ^oHBs .iFrL>bn+m#d/1#mx"Aw^1axw"Zנ1 |Tl q0'խ?n)G.x,>c H?j UndN/sSY &y9-M G^bO黉9V3p*Y[ͼ~ˊ,Cj.4^Ϊ@#a5,-t}88nH>  ?e+a |7EX_;\Y.]}@̂6!ĈZ /q~PDKTP3Aʖ;dO`Uد.xw zUI3mɖ4)Db÷},T#@EKR3o_=ý#Aq]ڢUi'Rz)BBln4Vʭwۙ>nТo+f'k:<m 1, k34 ʛDܰE5?! f2D*C-IhoxyG6(ZC/^q ^M*gvđe,se0L cxS90~BCy8a:U͏]v%)ڟ(v߸uLR=LQb2ގ[յ>uEb R 8֞) sY%E߇6?~`\1%=Y KwEք :2癨 u#`zl*HN*%QI$O8 w{"g-"ζH*7eK>C) ;j~K<dũ)JdN”:젋d 7uDObJAK a#U+j(_.s/ .Z1Txp]P0zpj vMZ1gB)r P-2)~&{Ó+s:nLDV0N02i0;qKB<#.ϳ踆²J |*% uUH*[уN1f !yg=oYqDWЕO@jڒ3(ߖ倫(Y!,u"%OݲRE[s|0;IN myFIJt5])N jǘ0Hg3ͱ#tnAj^e3(qy:@mbX@p&tݝW>Fs'e3p6B׉N^R\207fb&AdL&n7Rv Ͱvpf F STE3(hy%j~$>/}(|5U=NVa'ڏn|P-X8sG嗿^7}j ^I1PK,I,qs}D=%&aUVɠRW̘#7"4+HeOIm?(߄,>x*G^ktUQ#Z}w +S`:y}8 ,!'퓱*8a9q~rM̍n/>jV+ccՙ8ax+ CՎ-;ևIޫfUT \ҷ8ozWf,=vZ 0=7@}uR;*iM?gɶȾ^_'ۯ >7qE2v<+ ă`T *2o<@%6gކ ?dmeN<| v&x=lGfxpy`UE52^y]#t].&\`G3e.AS|(M;vhѶQďH ^aQp+n_)ڷ -G eLG 8W'-MeN&d-NOlZA-Z'H[&=&GŔ˼keO| @Mo 1 5(9ꑛ62# hҩ4 w 0ݶ2ri_ Ul>ao>j@_pm@'T!0ŴIHxf٬ $bMlFn>?pήgQM} !r+^7 AX;hݤ V'ñN5tϖP(APJ٨xMm) I\P{(Oo\s>-@BfbMCQBIcv_ R=s9Qx* nB4UH4 b-Ǒ_M{,8rt1YQis`Ξo`tq˳Zr,`/byLگuڎG; C7_[Z13O6TWgzypvp,Cy,ϔ:]J,*1h$[ `7VGd|~15z ʬ;.m^X6gN (Mz(r6(-/`od rv W_e}l@4UJzJVb*4k7w(k0 ӄI}p\>OLΦ, ~\ٴybecO_ =ŋZ%!2<_,թjxsKT&, H_U;tN G_C'LclpǸW&Fmn"9p8,z_hB`~- tߦF欿PP贌0&%i~ h%acU>M/`Pr}9Wz-( 5KSZ503R/SۋgGw)CZ %kͧZ\oE0"+}'t]+yi("؍ N$=?rGzpFiYQGבR8ĥ2S,b\ySeΪ}dԾ'TcԎp 8"wqz7ϊcA,CC)^(@Wꋯ#ai !LF9}j}N jTt+ c|kx5æAtȦ_sTiI:?"Q&l`Q Gq'8og`e@/>s^&`{#bZ%/wz#BHbjGNU4lmƯS7"O!qL3E.B_ac]1q I{$z޵w/p$Nd?8'=ul2ZLךjQ N,<2['A> *gw*vEi~?ԥD[F =l8kyib"F<]6F(vD(=;PJ=Ŵã +@֕\"U!_@U^z{c iڪ$lL] nt ک]%1/$DCh(a#T4Ut%d~qIo5#=!ZmJK6 gHd)#smVMc:* ӏң7$W[p: ۩.i[͚X# 7/I/(`{taSYDː5_7F~Usn(-k mCעXw1B5:Rެ7d !w,!dБ"4"Yfߍfd71r0~Ijm*yLQZV+CׂtPBmܼ޻e'XL쇤B1_GBf$[;Z7= ŝ`Ru 96YI9l?RMJyXƦ'e0Wn-.;*Y*_6t|Ǜd9J'  WMK.7t 3#UcV5!@+$SB9Uv#t @\n-8l4 B?!A25sUkjzY0oCW 2܏AWa{Ktwԫ(xw^"IS\m FA)qv φq{#Fٷ_lvvJ iy+6@H.\\(Gy<Ń"5mF7WWL!8RgU2Y5 N-PXӣ8+nzVFx4  Wlu I hdE/ayQ9oIʅay7dPOL^=赨gŹcnA*Ϣܖ4C Ɇh/>-z{!ӸP 4:unrrMNj/ϋF3-7M+{|wBCw7)ⅭAsK[ʽ.qbtJ2㫲s" w˖1CCEQ-h X֦om%Pl.Vvh3 IyĀ:o{܊KkfUͣ[(yT|pٹauY``t6,{*<ۼ+K($c~F1bY_qdh;0ϡ̕IɂQ^ñ\.r'OL$sw҂G:iUiƂ&.6I\i|A)sYNSY~4;Df.qfMg=>3BhhC5 zWHtj|j`6}?H 'C:_5{kv7+!#(uL%&;S{;<5h(zּggPw.~)'ڤmg*dN ^tY, p瘣7k|ap*#oh9{ʧԐT:j>DLG^ʈ[NضJf^rƼ|:\_ lH|h<̯OմgAZ"Q[))N4M9;,NJA ߳]&uyf$r')M )zfj|GjSS/Pl>h-EijO{է3S\,~ 1#=8}fl.x Uη7sH[@c˚at4v,#. s@^W$7+rd7lp֣MR _D.IY[^K ,C46h9훵) ZȍUh96ڿkO]C{A)_rcH8?00WL]FАZR+J68W_$%e 7䘫cCH~(> +`Fm_,)|{;]XKSj#;5w7YkY<߽)%mu9y:{;.ܑ ]MT301UꚰsG8HdSAXZ9RG)ëc FlV;(iz(z"'y}qHI*!j e= ꣪0 7/ZrN8Mf}#qnBf"B\ɣ_3r`4^ z.gķcuY)]<}"εV9bfT)*h~~ay"пJ0$E7G8Z7:5sɢE^lSGBYRQ]p4qb}V{yV]Wkp{IF]_kS[Bb)Mn0N֝jAhC0{&JV;U;ofϽЬ+90Vmb,DM'+>] b>vOov}ȏkH\vtzv:V+C4doSE5BћV2sVGgx RɣW M7Tg p268]δ4Hey&Aw)&׎a.җԝ7dTreՙ~9W1yoSmDo[?V\uʄ 2H^'2Mt%óYc; !J͇xđn|Ŭ I$%) ۆڃ<B`zCp|ɫzxd*e#V2Ds;QKBWӲWSK %0зJl|ս,ݰvn}l70bd[ڝ(f o[31f ul2P}oUNAQ\:@9\c}qzո,*1Y tO@.52~ Q.Uҩ!eY}/Vgp3[o7ۉ-$fעvG^RyW񆣥e1/e,V,9`̫*,cFPb`>jEp ,ZkG.TXL1S-Qh6`K=N_8)zkhLَ"qVr76 "1^·s|7$b _H3и!R-?;2l'>ԋ﬈" ;RDV zx9~bZq#HɥaI/2ӼD/H'f.v ɬW7IMÕ`l566?ˏ]iHѼ',!Aod9ypm,8O>0fpTan:╔x.T89fv[ "<[.|l9y,OB(u<έw5wvy\bWMin -3ӑNKz>yUOe Q69"`;=~*Wy5?QmOu.(Z4] W;ℜ8q2[SΎ㜣!w|IPv N১[q&wdI #30\ K@" Z0@hRc-fE+ #<je;K3WV3ȝ/ 5 Yܷ޹8wq>V?VΈ}J]/x̲zՈ6kd6u rn,.J?#w^7RA|F9f0oT(X >!ġm󨷮fH}X1 @[t[FA 8!eNTyֺ=@ mggev@k2.&AKHD_ʸ,'Of9hȞJd4b"NxbOA#<i %ɰY1nlC0oX]DYQ<k83.fDžQaaC`>~Rڏڰ{;OCK%5 kgy>nΊ|jG*'D'1n"%||P>wُ!n{8lл}Kf/I|FʎP/!u*\II:pWF_}eNZ?-˿fgw0?ym$ ۙYfJT46]9jof{(h )  j K ̎F'v ]Sth\fêK]8>vP>bes )s *yv6=3jDHhȘ5ZC(Bў>(% :>/x5 X:]הf*AE _6Y9\2S+pI gCD5Ӓ]SFq]2Y 0h{ c8`?l{' \o8|Iau%"ɔY4U&)~jUR'T& ˋDžĬP/|5kH}/Vdy:5,OVJR)x֙47UndR!z @XQ@~κBMH1>}_"}5Ū1迃~pE[ 6?Q'boϝ{FS/A+Lu;6vd?ФLKm$C'n&i^6ʏ:1Taٞی ^4v&_׸%ߡ'{V[NBqRMhJhTp1Aםkyz\诹-1!?R"X?XZχ[&q D"2H?R] ~ĵ.mr3y{榴ZSDz^zM}loEmofrׁ/?5Bc YG"ͥؼ:,N؞1z)d +_V)_V*ʽЦgG5!D%ƕ^?͸|`#%7d;J->"Ļ$Gmft~DPS kNwZm>Kj_|Éq|*VQq}P  N..K͛wx;V&A>k=y $?vhm541JiH{H2UGywNqP[/);\FE_٣9Qţx{BGRYaF=Dm,aojvQ:^@r.E?bޥ̦d׺ҦsVςq" yy2 [s8!S\Ě݃Lkbv{昵\ԄF7#S[DSۏ(&i_8tMplbm QKYN=l3kzuix~X1 c#0aC|ҟg5f6L^VfQ4Tt&Um;_A 3EKZV#JPڕ!`AA](X60FASFqp _2h b$YБ,y)ACao#%$DžӪp6n 4P8oFׁ QF}2IO?8 ӑokV)p~GV#ƍz^-E ؼsc .5*7Oe7`xq'$d@B LgPj#^vc3ZJAsc8B` pa;3!d@hY?XE IXm\8bgO;\6GD3S2.lb]2(ju GE x 'CFQ}gYn< T' \lUm0D+i>Ƥӄ?ީNRb!h0Tj%jbZ.:4͐i2o͉vc\e &v!DS= >BDJخDx\]1#T~p+e#Yx*6d±MBG6zh,WyB(M|7ZxTv?C>f aOzN݁y ̤#+coF3WU\`/$ɢ m/FkF5;)q~[T'R\nrWsz໊Hu'>LiVO5f=1WKyٽ8L#Y– `Q?u6rM[V8^(I卾]Ӂ"6I؊(UTz2Kt P~/]s@Da@7ꆝOẀB|;WaqXUPڮB֔t` p۟::94 J+LTPxH.P&*kVp9E`6U8QMm=oB-^([JɲuYMimG@{fsgwY쨁O7ꃲrb(g.)ܒVOʱf+ԅ$M.]?89XiKu1P;UvwX2h/pŕӕJ{wtY1Q¿D4 5<ꐩ x r z("9̭wMWFЅu C!(N`ݔ`=xˬuH8n͊T𡵰:*f$tE[$u~'ΣqƧR (y+S(JYA5aVt  zxN,DݜmQ^$}}x8]%@1uFK pUq hb=K`%Rt5Nl7j9V7ȋ vd-9Qda[])]KJ ?">" L xӯZ aOA#Ty6؛*@ MEW}ÚƜԅf.cWXXlCΠbB_N [(AH 43C-0!srޢ6ޫgÎD2ƋaȆgBjѡ?Kk]a,xq,\w z(5s˔!}aH`rT07s ^]+Kic:Zzۈፕ~/3}P,oj9L as0PBZx4T܊#Tȣ \Dk@XªCmY.W#< <똼PmDܓ:dI?4Q2?Cʕ4(T=(Y~S:=GԶ4hgr'ðT ˪0%Sɪ{d&gwgw﨧著h`uDPKH®ɹQOobW"\]ʀ?%&O ~dm~$#YvUTZ=U6nNq*+EHq+TLrS0]U=`Q &rse%P7*)asrٙT$jeeQtG#\ XgE?8+pK^! %d'ýfwKyP)Ts)T` Ix"=v\Ёź6/[OrQ{`9&y?[{N-ga5x~+]'pIOg`j'=DuP60%pgX]8[10^-1 #~(lbdU= hT2@սe. d-Jv--^n]֔Sd[oЛhcT[U4YWPN PdT:\N][) \I5\dC,X| V;2fe|i+ˉ3 ]a⽼NeG)O[1]-"Mԑ4fzԁ&iˇ*%ģ)&VʸLNi N7hr窸:F捘u‹]ڼvM& I\:6oisٔ""4{ aUBLifW9DMD7Ӫ`ʁ-8ӹPꩶ}NZPd!Uz'{yU-S vfSHKAmQV^ Ȣ࠳|2JnA]}Wx`Iah0<tH&r-Ґ}cVȊQ\5NT%YW:t.;D2.j?Rh͘L kguOwKW@ f t嚉de2ϟb`jk+NԟoJCWy#PFAhJ˜R꿦w E$ECR7'qdTiE(CtF,%RCJGQJN#`&oV17^i&-XqX#b'\l%i_=#zА):pc_8@*qDV{exk2 M6/i/8`!Fݯ ^O^m0mc"ʦ s3} rR_lC7x7-.y*LjE+/*m+Xix;LIw9)509+\ctTpd$|<T,5S+%E݆Aƀ e,#A6Οoue6f SЈI^r }fZ_;h6A_nR}m9}n`B6\ϣx픚|Fhq'̮H&bTҼWj&a"[ P7ڮ3dBغ\ZMS'R DJ;Zn Lũ'59=Pٹ[I6F݀%nfJ:ߟ (@@UXt(tLEes'UdJgi>yd RFCFRY R \ӢQ{ӸKK_#f!')*+ *J\; | JzVG;.ĘnҾM0B5,t/1QŃ.s{>,53ɿIrf~cHh7f!x~Pckx6if|QPsoW@uuofmURG,1H}՝rj3&:y+[ 8d!_8qpNg'tcJS&RXXg/ګ>"4$'9Xᝃc)*R'=d:Za*bD\mz ž2 yH RVP{4kǘCRV?߂A{{֙sjADs/=^:h|oUm1*+oe7;)mT|oS BY A㛡5;O\A5hgʿȍPH }8ڼw]*5 e5fKΉKteRGzm5N?'DX{3Lhj=PLzipsU I5"C?ϔ><5nuz$TJAI]]P(!({oDzC fU\ʷ3pw~DEuP64.molfbV[ k}mTM۫Q4 dr"7pMI^=Ao"݉`%<*49uQy)!\im .Us'zn\y6؞o:eH袭o#Х |0/f5yr ?.8ɞD[lݎ?ufk]|c?`3 ɴf6;DRK)[yy=gZȂRTE@euH? 4 Dd778g IKď(|s28BXYD><h&LR0@/a0bWTۖ )rj]~$;TPJq%e8 k7ׂdI 69LC5Ii0wZ>uZZҞ/g,` ԉ"4d>ѫ1 47|m7{ ^YE4UY [ Ow6H/2CG4)wNVbQ&B?obfH뼤E4a_eFA44m_ 7\N!H%Dݸ,EeRc945q#$Xc`IfogX"I AI]g4j_>bEϮ6MLP#~ q>8$YϑŊ̱i$39b6 n32BB+LR1H/:*v 48g9dh? `SvU/I.bM19J E:ޠmB]5ʉ{u[+@& 9({6{~#X=EՆN5kCK ^rβQwMݸ<󾳟[6LW\Y(J\U&|8bߊ2[Re]L`:hty%:dڰ+&,)myHiQV'_/o{v@4HQ x(]R\y)1aOE8p6$}rI9:ֻctG+{/yEga.v vNKH["!H+`#6rͨ`iYِ)fhS8 &Hm## BʾC Aަ&[sY1YO<|taCs,Y| a@ gCQwZo]mʈ 2@"i +6Qj8e CW؍DAw=[B[(MccrU  2`[`5( A"ץZ x3O,4ݢx|'F}c704\iQ shhpq L!M"ͬeB}23 p.0qrCtZj;Hە٩B ⯉٘f {n(I/Ypm)yBٕL=DBljwX۲#qNC=<& 81&e oN -pG`whd x6LX WlcP;W>Y 9mɵ߈5i{MWc u=J+~`E t׽y=  t=L;L$^aB$t ԋV&w>_i wB,*!%;zmΈ z%T`lDkt alkNy;QXbG!᫵ηA a#WchEY]9r%6#*W@r/u$Gk.\W6>(*-J5;b-WLፈҫMe|4s-k)9+;z5tq6{>^1}N]EV8MG5{?f9<wVAT&VSGB>{|$m1߻08ڔg?Z*_!L0?N?C,v,4;ݨNgC pϛVJdN|DZG(ןDݫ #r* {. pfkBIyW7D%D+=0F: lլ`cѶD6 mGpZ~By}5ho(FcC,pǫ򅮩mU\I=*$ѫ P!䖯NC|n_{By8C;KW@Dp~Yg}Pb@Tc$M{ ,5 ]g2 9Egc/ 1"ripr2)1*eEL cWHpG`μoBN%/YGAyCt>\^tۺa=l>$UXu-Ud{#f Tٜ}=fPncD!0lf7u΀Miv*1x7]2yQxbcˠtxMfLx7d0^7EYs%5jo7JMc4l3v" gٹ} xܯ%}]Pc̼.`d*#N4 n1v2ySHw`dbicy, 2ѵ+2V:}:|pK!j_sj4#Sy@U߱ ĹuE?ntWuE@g-ASSܗW ڏ T7|>x w{ wZHxiNv+'A>E{)e1_hݴղ,az@S4ЅpM gnLm״q,?|M(PBfJi f|+߳ ߽45X?O׷N,/Dg# O6t`_j;O`@6+x>D\?z5z-^=VGxTPtӟVNJM-R M7l4>#dD]%u(ѹoz#\RSW%'pPWY_WzTDbQwN{݈#:FTXhykݔ@L^~mNmƫI ڌ%TӠ,?kCt k &+YG t7D`(udWs=u{n6GOBo`Ĩk6*fDyMgӱح,F# {QMpP 孷Iie9"JU vw:J_$)n~r4(b7k]E1{_+:M2y[:sm -bBrI{Sb08'f\w==D }􁱥Im|.)Pn lkd~ص?B]vZd:Dnahଖυ ApFB6pA' [8R#EK%2G@؀mH0  [mq7h4MyMub6^MFT\RSvTBt{B ո.}7MA> Cʭ|[kp5v9ז/S3En,yBU6`kY'\@@6Ӹ*' :?j (sD뫚Z 3 Ɂz^!G߫!PP2h3V[;Wp!ҫ5 #lo}[̸R@lēкG1 һkh{٭kXpw{T-t$;i AnZwƦY?,@LK?2;fA oNQbv7s$+VT=QٰYڬeT9_2e;¯(ڟPRR=_FDVnA͐TW,eVKk|!$q6AK5VV>O>a.i*zϬN.֚m"WߤB6] |RIz67Bxy-%6{|YH?*=,}"ݨG&%8bJŋ3JzzP14Rlj\ǵ8;˙nWeR5J?it ?@ _Yנ1D~?ciUٴ,K-zJ5I1@Qj%-Ck+CZ ;O鞭}sTDE"rj[)؆n/pi:,zէnD:'~u14f⠠, nԾ Y0G}5Ou$UH1gy䅙/0W)tE|A%% gIJGӘe%f(V dV < GF $lh`g1 pC` >n 4@>8>'PI;ݥkr LvܢKAIfk 8` }{DrQn=W7m|Xzt>qM'q Q -tpLiYNWsа腥5RC;dJkC&%v7w|Lf:i$` thysA+)tȶcɨX^hP yxٰSF"$ ؂d2JpzםZ{| UPwN7hSٞ7aVT<'m;_kQAʤRSej:!1h9U93-y Nt~Y /Ldl dsd.~d[G_aD? X@E.\5B|i9h8)|3(HjDCwr[]Ls0R9%)m3Lcl;;/PFg-xf&n|jt]W͔ȡAxt >j ^-*xچ :Kj_TVnl&f_kj4)T(ANJdUėU ; @_t//ŕtLS6=-\V ĄcZՄ8&|C݄*$ `Xo:C> .JuRGTV4JYm$ t|*R4fl@^al}5K2`P lG/S2,vVe"-Xuʤ)5ڰ7:=uz U^  …¸#o徭t1NDxUP=/HxPDf17VC7-#lGNI;M\{(% .4(3!P:BaTi2-DEVҗWf9*[t촅U%8[=Lvd<<$R,L#~(7b6VEEDV k8d [b3ĺ`=,$&AA -{> [8Щ '[{ 7IP3+OOLUݯojqƳPO> ZmC/C+ p`-d)DBqI9 $7+&κDvd0;%R:Ry蘿1F-i($ 7x=OcF~!!clCkf=@sj')uA\kMieۢ!ڊHu4z!:P#횳RS5>P z'xT * bcbNS`ö8Z pg /I?8>j.`Z0qL2T"X4p8&иlLlߜHG GLwt4Rc`j? F~ t,Yz zI#~i#=⫴aPBIѶjIⰵgR"5+`C浾aM󢇞7!i/%z0^ ~c8r?NR4v1B!鱮K®D9sA#SjPYaMs b]R{=mJ,I֫YaEn & ^U=d,,y~o"׭N]YC'ZAKPq fMwJO\&,6nۏ}jQ ^!GBq$(m>).3l/w Ćim3AyX_e tC]s6({Hs,;B4 gH,H"$;bz֞[f5 0DhHEV#z Cٽ ϽG?͚f[Io^YD~U*·&Og u);,2T6]<6?}GXxER鬑i0; q͙r쁓M> b-M(]fwFR+I@+ga #d ٰFM:S9. g⿱%^,e_5[(tB6lѭ f?ֹMcT2 L"ۅ%˽}`me(>vYL"48W |F׋pfjEǞZ+79Jj+np ÄIC  Eُ;Fy''Sc|G뼩`;gF"y]{ 8mГ*sC]bdӫ(ro~ҎŲکB4%i/@B˦ BS?L'0!EeBW F gB)-OPvmG #w l4)|Bc(h:FKdob}15vh^8bR" YI3+m+hO 1Yh> qllw_,34}-HFI-U,}iAJZ fVryF翡(CXëNb/,yU(G/p4S)TrVxT)!נ#Cr+S3˼yfƕ(pA_`#?d943;XCNe꤆H!ϞC# 2l2#!e&COI]$av 5yj.B>UgIzEfEtenO%4bAY n=U{EU{'闽 T#L| cmJ\M2 dˉ})%OBnD{D@#g 2BjdM g4aC€7j@BgN;v 㐂RlcB0"&r+JM^籓#-D.~ɦ2erVYMs?+ 7=$ dʷZFO7LrH֒ l{7hC`ɷ6 _(dyx%Z=Z"^Ht870߸EuObQm'(6RTkc ?%6ڛW 7\ J8ߗ{\}xqGB D>C>5tu@E_\.zIy,o*t)Q܆X%wPy"'f$@$6=n-6Q&L a}'ెŒcwk"p7-4/ѮFO m ۰%N:M202e (ǰL A\Z{WA)gYuU%Z*Bhw4aϐ'A2TWgU18%SG=mJȷوUc_h4hMs30qȁkzR( SƏԀ3F1m[pv|4?neN% A/ok@|"iC'1/?aݩ= i)ЌXyDu&V *]tF!6d^911%GOFsљ g\ a&":s\Ck n 1wPktв%5ɒ|=p!5iȏOӻ?vwX6ADҐ=7iidzpqel1b?XBY恬 D usp%Wk`+#nIfE Sh| 72bE6 j]$;KVdnЬŘ9{_Wd^[-k&[DՌj?qQ|Vw]Öb5F*a>&i[_G!X Mn)t~w7kX?0d6Jf8,ww1ocK.`1P>mK>wMr?r5M3]:Ub tRPe=p+ǖk *[a<˕:)ĔB2x{F? s(g lU5h*ޅGRR.zZnFpe: e y&jԌL*FrEB!9*Jy ~z!>Hiy}n=Va最:OC(pO[/NuQ]ᱳO s-+kfGG;{q&be̬VrHt1č~Zha5#&2"|TN(h||QPZl;D Zڻ5#2>硺(";^ŅB&j۽@GP >)D$,|>@~em`IWȗ~Z--0mx(TwBFl$Y#(U3Fzh<+9=zpx$1 dB0E2DALM1/LcX{NpH`*9NiX]O?eSa͡:>?ewxz8#OrS%f [ΰ-{=],,AvDY+C8&^CnrWm&;Rڏ k\?xHnZ k#O1s!tA/gynt٘"엇Zox*VIO4s֓XMSkE981w q3,[sNl.&ѓaYzVc8*I^@aJ3M#РŌf-(ynZ{kum%S3Mܦ֜-Ѩ Dqf}LÄk#-BEʼ@c@M=(4})/u;&Jkt[FCq)hمx#E{ӻv0iL U"A &̊iǮdT0*R\Ku Py3TUe7#nK/)JRS[)i:sXAw½yhlj{@WA7d=5ЎZ i48R ~ofQXoڨZ+}UWv8yoU>P4*ʬ:(5G-~~Q.HWLRUT;jtd5FQw1vwgQSځNsk(z=1 S CӑǓ?5f5IG%z4&#,U/FɭvDp2 eU_m n9G#痮x=,uT;P^r>^]o$5kO ܖ*[0dJ2k-ʒ)֌HAF_\c9#ݖ2UY u9qBLX4_@=<2eh,38"(tjG2{S278( hݸBoiwsa犟t)fHg%DȆZD^@=x`':؂n2ZU9?#Y8'ywj3|9~ <˒lT_G^?Y !n_{|=!-q/&jGvp^FF:A]_RT mdt;O>~?/`Vك>rLnSGY9 y.)T7|c@( ^ht j4<_K֟}q{?gw% $}ͥ0%D:bAdJ^>M4KU4R*5cz̿@2r `p`~HORu" PJZ8JFX~y^&W]`F +p_O[`BQN cX`AOyqS3[;o 7`QPdz8DdN;NLYY*);s/_hեJXVh6PoލH0\˃d,&Kgk(~'%s5U 7)ȭ[D5Di7LLruyJSGDvM}af?7sK~9;ڋ}ƶ4sX* T t5s̉7@#xOR:2uyG5]{~IAXZD iRH8hln)0-rb *7•Ki>`(( N]ܶ+qJ6R Z @Db&]w'5C] ,la$GK`7t2[2.^㓞n^'mn7V[VSWbQ>-5+13@9;Jx uV?Æ)bf~-by_%d `̟MvN*Axy*"bL,Xw8\)~ZWjܡGS (1@;X`ɻzY Ks8(T>i N:<A {^pEXP~vsnAU,| >7h'zSAqh֮- J8'3$\~+aspJ{=l,,`H3j+Dٲ+)0â?mMU`wَzN0O1"L!_(UO$O@xGt 0*v[^v&NtŔ)IihȝCFBOȂc8ٸ>D^cT߾rqV. ipCB^@g޹ Aev*;l_q!tWKN9W0'DtNb=TsԆ+;#7F" <䵇l.g46ƛS\C=e  KUSJeIMl?{f{KW^j ~s-:":ԦNU`}dR5p`g =H6lJK]S|.hq3:~"~ՀRUhrM3{ReU\9c ^/&&\9J%!EvMw:Y=,O_-+Yk>985,Nf, f=!Si5zT^@"\/ $cz^_+ڻrf¨fkH.(`ږ|ȼb]D;525+=z)X4l9,@z^;Yt"zMCpЧмQܻgCG{ORH&^@& FRkd&RyWo{#'ز8@n4f]zq-0p-\ټRt∋SnA!QDQY;eI+- AW|O0YQ^(y%!ȶ6OR|b.)1$mrwTlX^`E==DP-fܬ-rapb6ztEY5^+,B:V4@p)5׹jq3 G=L'y"dGJ_g}"qT7D 9E АWPtUwH/춨ƊvPbLa[܌3r/Hl&/oOF4Y]@$b;\4i&EULQHilڳ/XmzyF?;a Dhis% fA`~&@i%2J*ufTvNy#ȑ-XI}fQ:e`f|w|fmi"o?krkĸ=V +M)H(_'/{pRo&R}eKD(z0eRuUd8+#n?eM,㍪Qi.B()?;DŽi3'nڹ2)yxB޶s?z2x#3v8Xm̟@EeAy2m{| fhkFv-k͓M7-oFʟ3<| w"A`\@Iٮs[l'dc"oU*C"Y˫F!m~h2LWΛA!|z@lfax?H*H8.<&lK?]́y+NS5TvuDxBT"m{l_]/B+mOȮSE12b>&SooeXS~ @ǂf'HL&f_;;#n|] Hk+NdSV+2 ؙ6GҤ4&cLWI;4;'ijYwCeJ&vٿY`B(2̭6vn6 B _^iibrU, s_{0)U$dW|| r&a(WyCIWЕĽ7vFʞ-!;0^d)|,`TҚx ˜$AԘQ.:M1QFtr[ʔ|`լTh;- ɆNdy-0uodQrŵkק'G?{"Q\4+] $|#l  D\,ӝi_J?j?FwGqE$Aq?L4~!jEˇmuEǫ»>E1ؿZ/m8ιʕURCfl.jq@ b{h*~DW9Q:B% ɌVi;{.r4 vE :'f+׃0h](em1DTA a$'V3~0BDYi ,T GMoGklZ3hu *ұ#g8tx:&pĒl4^Y85Μ,~=]ץ.J `cTmZ/>TuolԸ$EbFGGC!IUʖ7y@[lb=\uu XY6aeY_2?E͆;5\iv CMPS'X25dd,(+9Di<9m~ G]%#cC ĘS:'E+qm'z;Ԗ"sܬS7j /fuU=2-Uewi$)WSQ>D:'H{=!cswcy%ѯ)J!~ m.=P_e3p8Q%~0,z %`#lw7J3d E 4@8 |!u)q ,Bﰛ i$ɜ l}uf(URb2<'<KQ,0FZqc:VZ"sUOF=nQM0C 7$:QWnIsJX$,;ܖn>!x Q?]<3T[mlrsr7 Neq/ui-](-p6 )Bln. <*mG KR_&ef]B'}OH9xܸSN(Md &AJz8}@ s?HRdC7=,-gzyF6%Zi`-[g/yRj=V GU?7-yoZ;{`1 H2W_0mu?Ca$۲h4oU1:y~@:J% _8~LYxEcWZrqC2RB"rSTFz }e^KۍF-#ؔ3n#sĈ{WUb$1@0DH< -J g}Wu]Џzf(-Zcտ=WΒ^'E+Ƃ2Wvͺag,p}W+;lGy#ȣ# F "4Agva~Vxq JIiJ DӠ%ceu19]mO2S!4Gd^; s,j(Lz DOU:tlL7:vNs1ɅiJbΗxV%/M><跓vK0iwc.h ПĖ/![V,PaUӬ$pvzl{U(8*6ɭᨂ<$\UϚ jzU)* NaNR$o?ўox~w..r%UM145cÅDҜ/> mMT5K I fd7QԂ|yzTtYF5L<6z5S"n!<7r `TY tͧ2" *pE1ܚCE3^0K/xRw+TSX :㜎a9{H+_ c wO@ppvSdxG:"x43ttbX!EgQ*ޗV ðc3u tC1JG*ٮOPVU?4 <<<߫tИz!r;1 {~:iI<#q_xđF*oF's]4{]9ۍ]1M+DRv!A˚)ʟGiW23p߯9-Xʺnf!z:Y6K#B>RI˲2#WsT|׮k׎0j @K =^y IP~X@:3 < fF."A'*ldi xRt"11`M}hR{p.@XgiLkP0GHr۰ERzbzB k@ON$BsRG!6pm- I| 32U]XA W7H/nXKp%{+ 3z-÷s9lYe~ 3rȡᵼD[1hP%DWަ dñRjjo>Zd4G~n Zʏ-:(t oL"ŧ-5J\_fBGkHr=+:7tpm9?b]Wry0~s /<8@)ԅ88qӍ཈AhKa+5%榎e>HaYo*+ro")*jbe\c,j([yA#DLW$~CkÔ1ΌQ<19S]u;/i8?r(%Bf_j Js1eEMh pqU{2{Tna5E(Lx'htjtJtT9'#ۙ]dkvbϵ/&7 ȁ ez/EKɨ [4EiWjJur(^覾P}DEV>%@` ~?@H j! @5+uoXe!{==JȦ4luehfytG,~|`pϽ +;l:oGF.ፃVOscizhпI2vUR}hjdY&T/Wx%Zҗ^I =1p!@ݒ"_KhШQz9d>vOƜb_Dkc+nj:Pݯp͆w֚FGw8V"'y1HDى?@*/@14B=o2_ !9;*dwZ `ߋ\ܴ%Ҍ韙 "#EB.QD{ Jzo[]zoR!:>vLށ|&iH%ȣZ]^Rɚ ܼ _@m $/=-pžIN1 M/) A$c w|P_XVhH RQ%^R>"qG=`X z2~fפ- tQуnOFCyj!Qxz{RwV+ Yji.d])BPz>lfGMtIk6HWR]7\F.w8˪W-ONI$N>P u4:&#JMF{LDGK=(YjpF`\/Rbi\ߒe }Ljwy&jVp#  g.,.iplU@)iقCnam&&q ]H!w IU,[limZ \0-.guݡG>r;y"5I\娆LkB | ^."SJkazD)W]JGVTbJU 33HѤ#9+@/v{k+]©)5¼T.yL^+;[ę0y^;P#.xU/? |n҆n?GkfPf؁ [!4!%I.g LO>TA Z5<"_;HGOylߞ*RY6um5ZV50OՊfoQ ٛoڑ]T6z sX{@}Э\yWMSARk}ԤI|ooݔ1?5IkՅDز3xO_s, >i5t;2xV=iBmgDϘ4Pn</l 3½<Ўk6+6BS >^SyA]xU7AW#K6<'d9t( >ߺJ~ἢސ*(fKH|;Cŏ NmN!Gy o!5~#m~ ޥ1X%\ :`З,nizkn"0X]9 9ǸC03Lˤo8YnqECJ(xHxA-Kdvl0`04u 1IA&ichQuqYGʯa%puyRa^ O^h뭊{v5ؠ[K.F~RZ:kpDC/RTˊDOjƒ^aL:^sGvXO]J |%e¯W_݋@WݿaOtk7)IۋPU3vnb~yU*̍mP,v~ {kwU',A::վܠyGAtߝ0oJ$l)c:$eV Y:J]W1Ƈ.KJկ&7AQSI Ag {%und^.袂Wy$zz|xf(ZTr 蒉 K4+!㪭PnG,ZQx2gߌZ!X+ܝXŴتd> r6z@3E^vᆻ2tPG`rli*RVtb GA#%/?v3GFٖċ6V$%YQ^QTqBV:( 0rȬkK(+7=q/FsU{|͋Ro5RId'+\URPkJ TU XL)jVR3GccqL]i"R*-=ANִBjȂ~)vBeD/\QE.ʥ[/fTm{4-Zdck_0_NPi G4{^Z!yt"Ci)So.ϔ@KQ#%,hvfWٖsH:H%)m0\AOuCKH1 2~P/4J[7ǎ+i 6&/`~ l<c~Roek~{qܧ| QG\Ǐ0V@7+NQ,c&K2xH N8z=L^b 눈3W 3qg o1™ĺHΨUK, vPLÍ1&4Cja%,a[kW1{"]$LϛT)9G&/|yqiо(XD̢aRxO>o1#8Lmz6]]פDrS /e1!7JF)Ӭ*7[|GT#kioZ!lu#p`&U{%]kňTn=h^33 7/ ^S݅:D+S@fDr Sx CC& #YV|0ݍ]4f ~5pB|at MYk:+ÚLNU_qcLo.0Y>Ki$O 'a;u#}(~HiتMP/.ae$*|q ≐B|^26/eNZ{aqJX]ic"bOtDӧ~#X"@xȭ_`v[@m$s*ֻlX-fB͢my3 М3Vk YIЮOH^>h%M:1A I=* p?2ȕknL>* $Te?",>m w_nFNUEPsD%< Ȗk" 08OvuK]Ndmi>,<13j ͛J6uKS/v xQo" onw8Ù|UZ;&wFP/IkaK&z<@Cɶ ڞ1\,G5uUϳ!Fn "RGK=K59p:gR6ƒ NyVUպ@pFހe.G\ʮ͇j(BFSRIEhw/vO@hj> s%;yMҕ3:O&ݴ,`o4 /CG< StY7hcHWE#؆)2rvTQ\uݔBJah`?9QlH@qq'Cp#ⅅnJh/P4K`Z3hzDVSҲ\{e/()㠼Z22;f7CΈW禇|W\Jyı|8ιLl8.LPr1,K-abk۰{<2i:bYr3|غBLCIY9,[}Dpزj~@;GrSs* @~͎-O [5D6|<]EK0Ǹ,( B3g W@YOV62Ɵ>fROtɳ-!zqoHtba8$'WS,r1z[_x-o?c^D^-gTFu ZN{%ul%-PQa=F#0d/%t1vɌ_s)iDB=h96[CTtRYe%Ż<2r8JW[n||.H#u~I[xԤ/G&|jG? "x%A?ۆHoL nɌ‘ j=k@P"! (U&L@mi&6Zq TFzddf"RS9JEeIzze_Y"&C]M 84'N@,NV%q%z2c_hejOkg6)"qf}Ŧ}W:&+J/P7DQѿœ쐑^F%%,w6:\= R}l|CvXУ;S Yncʔpթ;Ü t&Ɏtqo mQΉ.4/p if썑܁sv|=(uB[jʂTy >Ң[f̱,oԲ`DQKl`pCy*-.tC՚ ˕++ EŬ̝Y& ;5ذVXӄ,3t^Czs}%"'uʄu^OCZ>6+qI ݍ_Eܼ#b;\ڻ 0?|72  Î☦%c' fdix" NM[jT'-c,ꢩീ&3k->F ~֌[ո6 -vqpl-ZKظ\7<\xڮ8%@[c!,lPo6̍5Sse ǜ,C^TZ _a^`,UcK8p$Q0VyWKNpFkhl>%\Fb#ˮpY?$-@<{x "^GK5ZٺDWĚ5$Mt8pYrlOYK {E'VK^ňS9R 9A*bI$wqϢĸݎ'qt+64X]$b@:m?ą.$kdllk\ןo[f``wIw!Շ6C)9QA/;33JPoi{̵Pɏx 6TEL%1ː^'˜]9\pR.@tm~ Ra~BKA։|v?=M'=^"@42Ӆ49_wC=Vk%=nіP(m]@.4q߯zN>԰сdCŠV+}Yh lϾӂ1qMYmsr!Vڈ)OZQfd. Etƶr oNJ vh}%%mc Vb$l(ҭ(3KoE *¦UD:FGYPԃ~҈qE 34o}LN޾DVߢݬ Zmdsό,:g֙1~7~  pP⫸($<#yx)tͰ .tAFj0j~@AO,]\,*16V;<~y,q9 幟 c]c#5 LkJ~?3; F @: 6q]n=_Gog'] _s)T:LSv˦oȭ2v}ͧ+p07ە>9S'%)hHׄ73vE_ A+镏`G_pQ/:'Ll̻ +Cϒ~u*X`C,RK`Ftӌ<{5OOX1cUl뤊aMꕋct*3hJHi+e;#-mu=d̝{Ņ yס)W?]qjE+hW {S\1pqd4ޗ@GA_Ԣp> x.أ^X0']XbdgMW'eZ aBhNx*3%ur;wrr=1] 4W7Ll2LsY<.o1Rj~Є$,Jce+XiI79bMr4GF0ȷXfل*䪋x7A+ ]ٜbX.v`, q#3)i]Q3[OH;墫ѩ? S%09Rq9lQ],t_*ae]X[2|98FP"$?VR\h|.-C-p}fLkE_$oM_{ =5M&%>H?a<0R!XuPZ䝪l3޽i& ~\EWGv'G"UxZqm|:qm#Fi ʵEL|zQRoWi~b'= Ⱟ7U ï?0~dep=ZwH$ުT,j#l{ɓ5L@oс`BKxz~Y{xm ωVC -#G_~ ^H)uvDhiTs:a{Kf XW2IpƷ9 ,N+RT,;=TwKp^%.OؼYuHNHR7r #jj!(_d>_50]g QƯ"e0;uI;) #fyXr%^h v ľ-=|-n {ЇJ3K{65D$;745&x+ oPzK>2ti_N!}Ze(1M uGDӖBl+V-0z0NjG4R<[ot|a34( s*+O c^^9d﹠̬~"CUF|n#]Y: ПQ䶜~GX~U/t,[>ɵj챋#fƊ`n5xg J )R#=dRZO9܂ŵ<gy=B'_3j&nm$sW(C56R1髿(-D홆 I:.C1&e YO!bq2ԏ4i) 0=H%)]g HN/{ Լk<ű,.( .ޔ9UQOJQ+4ZEWAIlD"_A'_0|Ji\a( R="N?c)MΡPvDkPpLw| L?_G*$0 LגZ[؅L@c/- _{q$ 5]iݞlO*nzϺrEed:P;@߲1 bUBl$ # zU@Bۛ; Y`:WF{ TE+đ?\XD煩s98~-H2a47 vTTQOA-kM=xCZWm[[Qd1%c]`2!KÝ=7P[@} $ ` -wc;Eۖ:aV \=RFL/IWp/y:_5(fRckrWD`w/edW!#^}`1g&秽B͛e/w'++I{ϕ]h1Dy }`S>OCyq#1X@"mIn3q|% zc>Ie$Dm-ǎq _/cy3 ;-RՈͨݱRwk4m$-|NV4{(K7j:G:R9RỴQit=էUy?ZS&X*m[887JG'RnaX"e )꩞@yO%،m jVZHJwA'X^pKi^{2bq>٭Lm]&~ј"=b j4VÌTBo`߭*dj8`rpRc$O[h' hr)= nl(&F!p!nGy~! u]-Nƕ_))R7<:^3hJ)jL@>Å"ӈ T)`+@S&+=w #9gGwLOw uKJ#<.-/}x#vi H}%5b s~$ޗhgJN N'Vՠ>" JohnH@nt}D$J"_s ^G+9dםm,Ns|J~IWWm}[ ĩ -T{CǓ93Ww[jeԠGe6H8RP;{#= yexX.~'X[Nwc]|C`㧅QG2P dz(dPap6?;힨JVo5 -_(l3|Ț J{r {cte+L2O;2巟LfoZ? 5OJ rו@w/J _Tdy}/tkw iD6?q`:`a|l$樭椓y$lA$NMzpA,q4̵vZ 5knk,+eIzQ #pJZW;r[;fίxۉQCہ罦4bF|tA w c h+t/0eN<2Rdaú jrA%1h l}Yh4ٙ褃6R:7-މ(}Z.(~3TD V7IJĦ"2M UԽƌ򴁖 |w?->`ƬYeb.d/Nēp55ov욉&8hdșf`3¸ -5za:D Fr[$8eQ:`>У$hriBpY 8uV^QCh'nOO ";7) m_Od)`Eto+Y ")!y#fnϠ+qZKi[Rqh$2k"_4ё!0I%WA=R]ipnjD|8 gމÀ-Q!9I]%؅e  q04˟@,h|Z_Rq;WrT2zf5a[Kƒ_M g!t+2yC "+o (tsJ)R&F'c- ۩]~4tʤEfm&id.uR]H.HT-Ha+uJq#ESUŗ Svxx[VW*0zDD6Qܗ^dBM:#S-l j' ;aF%Il)|qtǼќA,+d#;1sʂD>8pH)N'Dv'6lC%1|a4c[=Mt]L [}ݼ ?]ryAZ!˖t^OnQAɫI861Q8ؓ=]젮Ke2÷SfkEm=*;3T<; " QN_AS&ł(>2;PvrU Bx ]k~]}|!TW:]u.bTC0Pi<;V'Qgl~m\~2R>UKe[wI;לv7arJNNb#v(C?rvWu;{/GRԵƹrģDXg )^'hُMnga}oD!@ { {8 zB 9']zju(VgN;~"}~edMdZyD{wy+R*Em`kFb?DHOXF鯮]ɇʻ,D.r;#u)Fc_y$nnv\5zFahVr{ܯheoƮ̨Uo!`(3#Mlx/ 5SwOp[p砐#8 firbw)͎~Xv5\hOzɒ7J?56sxKOE!2%[.ro |wEW%fHZִmIl@SҜ&7r@v˭JHۅ(|&&e)N$SJST֖%tLB8~.(C*HC(MpJ %|DWc gޢ_mC7acxOc7^߀P/0bx)st OMGhZ$a]sE/W~kZ+C/Z|L9tt3>+/kZF|+qDތ8l7$;X7T[soJX M{cUL#$UǬJmu3Ct~lxAxgKptΎqKW80msXHL[VTW?5\7uzkQ5FؾJ1\×|nע#z^3&prt/5Njyˈ$fN-~ͽz oF Qe~L^.-uM.-3Iw]o@c~UOIj|<5MQ7 TYϣ1LW"b[n@QNV@,eAQmtt蟱?ړ~8^t`:`C<<ʾ6 v,klu/?cª1~@ge2lw5rN;-2r?HxLFuD9@uREcw@8~k@{|Y\z-t)*MB@`kyk&j44ˆ4}Dn3:ئm+S_6Y3|4nį!vg~+lY,\5|]>74S}k- .i4E0mA4Kjmjf}b!M2}i5~U+ E..Vu{u6^53I xM\]k#dp)y_05Q,5*NTnE#"Qyq6&O-EکyHQ%j*l0oS~%A2JH֘7z;}:뽓w[ϓrLanJQƿ2̳ /@c9霩[d\G>\C$ >"!F*VbԷhƳB&ǦS|A-}F{o~.S3^a?9|9~h~=,˪n.!I`HR"ܶzqr#@O^=+xM _ 8*8ԅnLWo2yNnAp%i dDx֝}L;b$D+߄gZv8㡲|@Z557U=L4tX-ܦZ_-s,H}|'LV9zm7nzRNE¹gc_AS1Y]~$O>3#i06x"1Κ:_`_yeb!sg_$@a'vTe K~=<k\ /T5kq%Q f[a%<,P}j[g!+cJ~L?KӼ>D`EXaLz4G'Zg *,jeuH!tQ_ɳ{,) uu)iS0"}h/t oFL^evKm+215-MشK?eQL73OƐ@fl1LY [n(&@?k@Duj꟮sxtjĖ,]iԔibWh1hfdPGyv=fyЩ_Zrg'_̥l #LetCW R e*ycVwaGrcGјAȳ0iB]k>+ZCxnU(>s$0QOR5Sn9+օ]l'eFfK{ Wʹ:1#[!s%V٧+{!ldwr'܏(&Y=f@]f285DDq #'cޘD gE\7;zbѕXW߾s'YP "xJڄ&W- fT愠M`z`xf\S9][0H?쾘IJd㼻_xH~_<["ǧX 23T8H/ `jrHuΎUS Ea 6" Ga35z[&TRaM$T,ۚf b\3jeɸM3289?y+SN/B3b0gVE|m` e&O a=۱gk\I~$%,$!(Uz(\s|NWSyh5Gr[eoC/vMr)ppv|FC UO17 f6du<_2H|2&a/N|2rVjGK1˝BPPq+Y^$TAQ=}˫43/ݫxI%v/ x[q8x>\P3#ҤxRa} C&l-O\4\f" ]zvaNӕ,{ꒈk1KuAB*OIG|7@g(=1'9Po!oBCǩT=u]jC G:V`3JWG#HJ Yy@e1dLgy|izB=bA 'NvЖN&}c)hYUPu#ٓ$#^CSIm*ǚ Cj!nj({pE j'IŪiH#^^ KGETZ95n7=ѐϤ)^Aِ{PpLɍ>MD7g( ն>RIbgM&ei 3(Y¹p})]\THdYh@n=+@4%q%e[}8XΟKoĺ ͭU3kJ 8@a{cP;pwkWc."pIӐlD3lnׄ t[-+_ O-~RW0 ==;e+_"um ıT9 + *m߉m*WwHmK?>LO)̒ K*౶\IQߢPJh ?O<,RfTC{ )Tl@+OP' i43_9Mɿh[{@ؼP\k{Boe *5_ֺ'Y.1܊`"Mߖ;=’N[҅$G]H4pF!I/ed ן\%# aK2m)ɘ\->Ï_7MŮ7rX}C ,uRF;Aз& 1αZ'g-YjP P YLB;,,T"@}3jb~'&PS |7>yWW*I ־r6lL +o<ŕ7GaԊ%{'OWXBYRu0S \K7 )B:+@o\M238:W\/nb/oD'9w\p1R5̚a~äX4nM٧:`[!2sC ]"t_*=b醡i!m IL3YETpL/!HDageϱ4qqz ʪ pKA0[8aQ^ppPyp~{0tfANގ qDODxRo| !d2q8eK'1ߠ1rĎH"Zb]RD]h"JQ}+%~gvx ߂ISMcUWIغtѥ^ǩ[g.uSW-+C 6vmfzl)SP Mu}{\;KԐ5Pc]i9݄>w򌁲^.^M7x<nuy`E31;$^,}hz.7:No"qhp[NkXvJ@>x[$`~s>#ѽ1>XEԷ <إ|K7.o$֮帋s{dI_H]\gGeRDX̎O+[2i}zqG1#SY +[j|ɫZZsB{-#vD!M ph-Xx̛c.qh%Ͼv.XAD{k!n8",xCAᠪ<'`Ro?Y\fVYp;¨@(d/uxXk!,xcy{)S-O7\ %QbYuaq@>=JۮwhIfOt<)aD&nC{@<3]Jοn|w"?Dws.NiK_|FUoL A(dU"y{ `@[Cm)E&'J zo.VQBl t|߉-)!)y$8~'H$bC=wOR =t>zgH{·3lC5K&z(w٠~du'W:_^y94aR޷,cK5ٺqYѿZ8 UgKDXG]w̅G#Ӽ`<.('K}F&e@_3Hm* .;;sl9fmoQ)Ntׅ_>_eQi1@|)qm$Ǭ/u=K>ژ`:p[,6HB4 p\@TjP!- 7|-%qX16zc!r=0%`-Xg+g>pU,sׂ!*F;pS? T_r/#:c"7WvGS=%ԮcРC N@SACƲcz@eil!t8% |ۚUiZcTM.H]h0ݺ r`2o Zo-:){bw nu4ΔdaH3N7vj=޿~BB9j(D:3ʆ#=/r5YI.?7ǦNYfn2;|Z1|^QoK1؟Ͷo1X#BfuNfj~w dxW$tp:Hɱ}>,F5X5(E5`(5TaCjprb?xšb&6d^G:^Aȭ"郩؝ݩ$hffۈ*į&@f{z0/*a aĞ~IF&`tc5R6MelzP{ƿJ VAўB@M"Ou=͡^Sv`IP? =wZ:XSd5syT&f=V612\8GQ;~ R?RDULTjo6QXePDgyp9W&7DPoem7[;@TҼbx8TM0k%+ x2,BQ%l~`(7YFV9et p%:1 sg!5ܻslXY) 2Ȑ,G2RrgN)IZdΝ[+,"i[=ٮj^y׻N1mhw_lCY!qq4VU7;o9, (JrW6W&j͞dx0Qyb {/-SyF'8kU;*o6q55VSIs-Ro_Vo?Th3'v<`bX Ik{<݂3 C(ğŻfx_ϙ;j޻ Kqk a~KZP[30RkE ?{oQR0U1蔩.G1V7-#qM>ɣ罎Y^̸+RX'VA@*_˿řӠ jP#nK7 w lYKp2f7cY Ku`o0ɏ *u>I}Fk/q9aI.872d`:iU;C,{JxC$t%L=fN&3xe9j_yKm%46FɶD$"KX5fe^sNF`qʋceNopDœwВw2B?|KJBᏪ{f|;hFCaO4~"˻w)d5)޻D_U8T4e\HӺtw乗@?n7;f}?F(;{~vDUaDGrǁ3)P0;Y{2y% !Jo6`mJ[,XJ{)LIc\{<&~u_y- j/i$%~0>Ib9gHջ?/!8ØAC>/2 迾<1pI)}gr+~GXvM&1?j^Uȫ=;9#Cc*4N' 6JfS' {JIVA7{c) = eq|4]:DnOGԏf-^_q}Iy'3|Ŧgi!KYa۷"IuY],[t0~)68솳-?Ț.*89 A#PQ}a4it1S jNwtP8{-J.ό-t/h'qsd<\~J 9 <|(e e[}nYzb( +Z=9-.9>C_`﫲@_쵔kؓf1i@*KZbӐ㊅ jX*L>';Aڼ^c0mE"$Ax/#b|V9Hh R;=F|W5[|>֖t\|ضC? b*Ǿɼ#ۑ؁4~@%$ >mb_}P"8:8!KcORwڪI<7N bQlD<|XyxWP5Yj ũ)h2ڻwJ"CC(() dfu zN4jx WAFOrK .`+ =@T :s.]Ը?TKҫoy=*ˣ0"xǍ)Hv8Xt$p0xw//1EfeIC'BlG>s} qE d*VM@#ӫ+{ ,԰ENZTl9Ak^MTg`{_*L:ܳ=NHDEˀYB36.61S܃) pzp2%n>qbP7VT)ܹUR.xM+ǺVSNP٩qmEkx; 6NB7./X!c-OM-(i r-"J4Pmɽ.[qŽ;nXe[H}tT߶9$y>{I XԳ9ve;+]^ETZQ,Q?+T(V=D_[mg0$Ӱ'D8Y+ QFb#Kcoꈒy-*=wJidY%^QxP(X!8mL$ Lrbj~I2,&HQ`ZIÔ !ux9,z>Oc7M+=jC[uA_+0e y΁۱Vgr{78[YOb!s%h}2/0Wb4Ԍ1=LFXZ};Yvk(ȵωFe 9_a#ܿzx·cviuSj@ m"GT,r6! }v%Y0 ;dr3XS!%M!%GXXά"!ݨڌVeKeՁ^ww( IValGdetÀ *OEr~8wƖ|lP:H()' uX=1BB/xHl L `7P,+AB$cA[pиpmୖ8PzBO-L2鰕`|R}\}y藌԰qgB3N#BYt€_ۋn`z~L\d Lak]qu(\dFRB,S2pBGwyW tK2?+ 2px/b\Ǒv#O孚;-9C}t)c{tSq<FCͻӑMOkO0͏P teu1^V}OX㼉K'?guNu+@ߣ<栢$_>+j)vG>7%G3*up.3oK4\Y0~aK]qd";mǛҵG)ad9C.E7"lZք+ N "NEgj׷ZDʠflDo?NL/gꎕ#LU>By|ŪreFli!}̹mOTa1 xI*jm^WldHQRTjlPU/0]? Aa5 "/DޤFKߺZZsJJ0L/Yڮvb1@f%4tA.wE.k6-#њ)TS0t[CMD D̯*7,YCK{B9OtubOBr7S:p6 ϼЬ#Ujldp!. 8ꌩ)q1 Oj\ë́1'jot8ǤȊ(\j?7z>0ĖEq_Y8@ $7:JJPӂaf}3܉Í/Ml̿PA&A0c$`E#X_xcj&Px+mN{.q_j-ؽk!|/v2I"V'\ hCE0;!򦡊A1#D*=\/rc? X,2 >.J?Hž<z~9_?qBL{@{4}ƴabjtLN"ۨsGL4ݳ|Wؘ iZv*&$Z,œ,&#,;kO" J 9r7o;ۢh8U&2WoRs9i5NU?~F }z?Vٚ*Xz2 Js-A%H^4 `gӝ8Y YCʥ BtR?PH - 7mtЩq)>՞̲(_w&Nz6ȐPⷪ+rkͨP7ҊyJ@L\ 'UɽU+C%Efr(ӄ6\<{kQskjGiNa@8&ې}kVV.cQb.c"Me:Lh5c3alD+"9pUrk{p$ra.>pJEWsO#xKkW51pDsܤmdDdezRW00zy?BxTzx:]$8f|5 hs_)iDI4BhB,B.hTQ.utVID=`B7y,Nc#ӐLAJȣVt;㰎™I{TIkKso#xЌ;]EZN:yd%~B 0 _OM#0+Y\c 2u:1ֱͣ/iYM~=_r=w. rf NQKčV%{κDa쒬*m{Z'4~ƺn:*bMa HK4sX`* ѻ|d:ݵ_Iv3Ҋ+;6W3SlV?]GFGe8k d5IL41y)\a `ITMbdX80tKX4[O^M_*#, zYc8~l7lؐy+ }TMr_?r 'P=4eW3Cx"[)Cg\H+йmzG*fjx'UoEe]ꤵ6 S?ČGa-QR2SØA` 3]((K +Psl6qTU2p!94OuHYh)ijqd"5"UU7kI@}<ٚ>E޵,&|$N!'vn/]5-x (<}n6Ew ͖/J'cȯơ~yܥ3pgC+c+8Ϗ1IqOB@Ȗ"owJ> 3xś~8#$orb QOXԷa>& =RyTH=zp%YnqA].,W!$@oyMUӃѮ¢Bx/!॰r]E)I-bU2ii z5( #aHtxaPa(7Ȳm j[Cb"ѬuoK{s¹ |&I~iha'oV>- "isRK!APvCgwK G 2iN (yâܚ%Fn3l]S!|o+;s'бյ>Xsf47fZ9st p~GmI"\W=$[P&;J1 0ٕ<~8r~Vbw  :+SZXA][ w _zFMB],4텺.בe3qLDUJ*aEYp%LcƳEJ{| JuN7\iK=׊Z;X`[7[1*?]fbb׉b7|.֣鷺-1ޒ/ȭ yԌN/\O1wSY|9^Ӽ`8y2G.Z?唣>Boq ] |IsLigLЄ@p>uno)&7\?hw'ZfVQe/𯑭 o%jGɰ؅OE$,z5?OiG˶%xf{6sd\g vIo}Pɋj`& 8>_hڦɳhB.vt0D)eTNFlY~l a5+}ꞓ()Q,%.a 2{!}I:Dy޳4ҌĊ:EԶE?-DJ!_'› ^[g`=oE*m<]<ŇH'&mE '_wu"};~hRvvcPkK"}~ {n@y 7eQj]Tkw|3cӟ-B.y;#+U8r_ M #rbۙ+k+G 7qPBz-W%%"ݹL#4#N&+cE6hTD 43}56[C1{XN  Xy NVQͺ k0gw#GS"D'1oXGE Kg 96K !~v Ch7&A ֣R-+? nXf&q/Fqdv%Yχ\PsPJ+v/6#!<"RРoXڞ@6?yT bGICZMe@] D`x@Z.Zm{Ebi g@rSĄ h7!vl[չz0Uݛ6~6hF՘Z#m8#W6җlx`sZjެ) l͖,hNr-iEq_B˜:Q=uK$VʤEj_y8哖hٙܒ&f?++ W9܎fJڻP"}br];z9};Z~Zg;$ o,hɁEwH9ү]hjF(mpCКZRgp)`.~'P0\<4O#SoYNP{1, 4xov*C_褶mK'JUX IߩnJ~gw^wro(a<=b{9.7$D)8PNL-`KVg :e?āxQ0&"+tU,ȶ5 NJsQ Dn BdDǑ5<B|43 V)RF|ߋv8˅e70,tVqX,y^Aٞ5zY GaKK yg1ha[UG]#h}QRGuJv\F>`=[νՔC Bu ;NEo"Uz|K#Z  IZH*y2H -S[mzfntR9ŘXZb?|up\-?M\=26!2qvDq67nd}2Voz}_c({׾=3bfhx"‰< d tqu}b2ҷ9'a# SV#̮@틚zQ,&EEa=3뢷֓+2l7,󔇸AOZ~ӑσ$m3G_ruj~61Ù.Vz\O3 r*{߹B G J䞯i̐r='~"Uh%%ED[J13uݴU.MW˻^" 2ף]kE\t>igMGJĸY ir@[#4 F/wsНPO;aU']6BZv/j[)O>Vb]ha̔2FlTx5VhÆ-jO 2:X<`|ҳ@@Ch:@OnOam}D^p?Dޡ:ܿ/8DƂG0#V\#E`Ȃt #(aڌ9&D 76/wBZ80motѻ)}UwӅ]ݠr+,yE1OLwh5m7yp~G|i/LqJ~"к=e?K< %ytbNG5Q~Sr5 E<~j0i/6/>,,C^@>?(I_}N$8-@PX?{ޤ.#۪ud+^CF<Ԭ$ څs0,GBA$v[vDs!^_dw4͝xI1޷)) #<^qo_jUK5]K%47r(F=8J0Nhv d!]땎:h Ynfgwoz<1vE>~M{nV1IA9&!zTm3mo4֜_rwvb{kzF>h}pœ@"oQ|H׫:fD`yO3f*lA凖wܫbDSI)lԐbƶki5HQ N(ĸ65!-1e<24 ē"G²%gՃ̉Tu9F(yxzK>X롻D"ܔ;Ɨ'1^D h;'.S:-g, '/L5}>i;;T%؝d|1Ze lsGw5?HHPQ7ɖnETd/u6R*ݠĉM,͵"7iN aAY˥)?˥ ݪ$r0n~y (Ic/V%VUHoWca"1aZT&,K fIvp4]^ҷ1BI89Jg"4?ev`#+3hݱ &k=VD!$Ta&Bd[t-+?ĊuGqP^І{ ؘ%zM[ v@:rr8ȩO =A^ *hT셐G|W J_$Vs %)o8˷چX>Ŏ|i||+5XJt>ի0䮊{n*W-&cb?PG9N-Pܙhc?qoʘ esKU( f;o: N׿*D&fyO__һ"G'=^V˖y:劳E#e2̘>rķBK° %7Nsa4=(BrSLM?.RK|!I= j,'9Ek FD!TLyM?6ẌG6Kq<}VMi椟 AgBuH.Fcxw4kL#lzB%Hl&Q6ci+A} NQ.}BB*EoGa,dݲ[J FkU OُxN8 CCs?$?,5~ˌeBc| %߼q+ m4%hH4%%Gx#J #-]cRB}cpjx+]uaK NmWv9s$X`BA"/Sz-}BP_g70Om-UoU?W-tÐ]zb:Tƻ.B7|TϬc-tXF]r [:j{ZTHMKlT]ؤɍZԈ}}V^ fcӸF=B?Π a$HhBDܩ],Ӡ` $_lgLdaX{0d]{ '1~4X)"b|!8]y%C9X,G;ѭHP/(xԐP.ʋ"76l=%.)ꎻ>7{54X 6ѺZ R͹4ugYed" fSyXbd~iNu}R`F݀^xgP"A񋧼Az yQ&;-KDn@-}3VpD.5ؿ'qXU &~V}O4X[bYCH,~H86 WEfSrR+xfNPzVS]A8>,p~ m%:95%ᾼ~΋Vܻ&89LRRK3~8_KY3ADWir4 ȟ[KL6$OVaw U'!hmm#~qUf:(?/#X5&&9 e ߐnR-L g9x&vMB+]2x" 9%eI\a C3}@*R]W(C dYX9|/FSyM|rFA }C!GW)(-|NteWķuj9zǵEc\Nɻ(0fguh(- LVŀHy?\^U*r42s>UQ 3m/LZ\MBUS6͐&ZÈs[3iC>[VRh9?o9!P(lT 栩 bmxWW=\#sV3HmFC@ 1CRD֤` .mJAjM U ot7~R2zEՌBRB7u@&>I^0hdFLK0 *%'OLZH*"*DbT8S@$ iK5) a4+]S`_t.ԣj,͉e+' R}jRٯB\+9!bx"1Ǐ~9RSթUw%Hi噢͑[B\g gkm,2i#U_T7<'\HfBpTi-)(lզJ"&~H[R/JhV~ q{vh!}{j:c!IdOPLlmUӋ.8޼>""N荷b\gi*ߨ֧1=D߭\C<^j%a׃dbCe)^z?L82|@DKچW:&I1eu[FVԟ>xL+R ̜V; B؀| ]@pe| + cǏ2lƇB=G`ӹ8"7w_8_3T2X$ݐ` /WDS׸Jh]ai4w-%1QR{s݁'K-4^MM+! -J#x3&E!&ے=@ T ;8,1+y+*ˆ=2Iav oa_P~[h=(Ǹ{ۋF|oqH]5ͭRάYm;u-o|$P^q ?\ >? v} `x9=?wӯ?6NO> ݄8h KíG=ˈ9nIu@k<pED@#j`M-wwۚ.~(vԔuN@MH1}c=@}臲)pD2Q1 hMg =.L1?/\׾g&b2H> ~tnR2Y 4!xFgH#`F&؂|KJ:wB8,d|V%'V8?PaP:D2ev63-2^hM"7q_SW†E}Մzk%55p]׷ஏrMosq j{N$2@Sh/kERYWOǟ6GV M4% HTq]k0UKh8K%@ŰDvJwSTk05w;;@E;O=oyNݿ.ۀu&_OjZ*? >``[C87AwJ[ø:,71FC@ǰ *ƞ1MhM4G7W%whl{tKǪY1*,?O'4뚛`%j) ֶY;"!?։zM+\ 4; q>OYQW@A"sf2};gqo2q p"*3 dPiDWO݀-tPaB`/>?ǣb>y{a Mak.hJX59:q!Jv0z,͢Pv3&O Ta!zgGX([ojE>-g,r֗Z$Rk>1^3G< %(hHJGUm )2~κƸNkp}yR. a.W{E ` ضρ 2݈{i )#< e㫒_8gB(!/0颜&+xfg$ asOl7f15_l,\h$/rF9i诤MCn8у;[DMhc\a*Lga|A "ݲ548 J*vw,4~jZWoa4V1׏Oij=:L2. &غ$z|R߷+qӳE$ XNVvoϻsS̥!31o8&'X95#Bk@b{E R@[xYB,pZDV*Қ 6eJˁRmƱ"E *g A,%Oq%} 5PZ~pS|jtUǚ39#`b8@v#|%fUtP);/YN, fܛ<*=SZXh"u믙I W0 ?=#gňQ퍩 HkF pHM.Pe.W Ůi2TpCnL.(69Y%Br$y=~%YTj^Ԑ^!!ڞi'd ґ}TK e= AI["h%lPPM OC3:F2wþwo@O:+#Vc[itm]P%]]JN/O8DfZVxtq$tXv$): H? l ğM=ZgRU?1ÔA`R-VZ.Q}bX(e_du c- >JC *e2\'RXVW*0`2<| xIzs#Z&KS+P<$IXB^1cXQPb HwOic"?5){U3V#!~};;?- v\7޲y iN (Ju^ͣ),7>^y1v*A_ YPn̳)gB%{Pz S=*DᶣۦhξDs\OY"$8uC`zۚqOC읨iP:-zn[ j~U٦*6AT }lH㩓sL>V⬾˴M?DAf"-т}_L?y1<8|5`A  c<=JBTƏ }t۹JHA" s卋m)V?m} Piņeq$dDl #?ۆf0GW^yTsVwRAd2H93WH]=vL󑍞ji$"jmQ#%OjP`GAs:Fo 94;n) ˝E@;莅h{|#8앳գn ,<=h7CP58p Ȭs91zOUFD [/0m:FNQ,5ms>*psn;1svZ-å>ݶ̻ކa˦/QR!` ,GœO-@vѹe v󏅓~3hk5 QSVWPbATeMt]Jȿ7[-1ڮgt%20OqnFO;sc37~xX, V_&Wօ4 1 bbP >)?ngRA.?Yك wA#*Smܐ$p-}`- Q1@?s[ӒHlib}PC QRHu#٦>R^ J7"iFͳ:r9?ToOًS2|L'紅0rLA/ ?`vT0x,\ei%hp>aI5wODQ/ԅTQƽcMB78`]&G,ϱǸ_nSBJ3duSϩ&{1%i煨D$ 4>&%vD&(E 5 c,x[ ѕOf Wb s#+? ?:i%]J;E:`"ń 紵M?!I-3Ebwߘg_uЦNQj0CC%sLk }OG%,:j$j=_2:\""O/,6'5C?ҝ".]cX«GϤd0XW?n>'BnmjeIHw#" xVr@6o8ewM19'afg>!ܔ y 耮1v# s՘k/3n2E|b#.ߵ ^TlZ ?cҟMC劀&P"Հ %Wp1O4%7T[̛ɆJ1~ZwLR:ZGX%sxA)͇WDji VUA cbLoքq/!pu,xcŖB] cB7k e6Ҙ9G,$wI]庫]k~y'./^\[BX( !`EԌEg;RMf=[#NNHMpD LT.d 51@$՗c>)?L,CQƞ` >?LYU*/B]=ƍ 2|/P]GFݲtjVEM }Lw`_a` 2`fɪ"SM-aAG P()-KeV~@oQ9k._7gI t:PÎK#wjylIC"t-In  x/!1K'ݣrj ,%+AfЕ1{F}m\Bbxr#*=33ϦU&149cT̫;,- QK-,6cf%Ju˵Bzˆ7c(eby* Ugc_ЋLmSFw>n+s4&]KkN&Ȏu4-DYTe y8PӤKpQLgڶNK Cre"5Zhl/>-Ylʲ!#JtE@c £M^(gC+DSaW<`-$zb^wxe*:CCU]ǿ ϧL%Pʅ*5D/4u`^y'׎R?\WoaR]ģɀn?-x$&sg1b_dc҂SZυVxgLcg%In$|2Zs^a"9S|pWR7za)Blk/]с58*h#Gg*Ivn*UGgu\9ȦF83F#_e0Srn,mU MkF辿{"VG'[|dt5%'S}Ax8e7]!F0FYrUʒ+]1[9m4_FP9qE9XnV@j\E;y-C o6~wFc9[כBi4[nq \i8ZwE@+ap TuL dΆC1so\7QhAs%نGa&p3XG% D?$ >T2!dIr%mRpQz=@RKeFWcY[8kLDf-qV;qUխaF.H}ժ=$qYiB>pR1oZP|XfڨFlX˫lYmut<^_XX M[ > cNT_Ye94pie_=KˏL6[)@ut;j+\ߒ (gDOQ%ȫ~dZ)p0Rn0|]i3nMd%2{[iU5_)aH9N%ȸ胉gG/ "ze?e9u5jAdG:!!-idͯgtµ?aqζlzdX ΍XZ`G2*IGd2rEX~e߅);(26CY0S_Bؕ+`k Y)澊m(;CD? -HÂbI!!PiC4bJ6?PBGzɥF4SL؎]t~W n~*Ϋ BogbysgcƈAB_fv~( uO'W \%i%JT[|OzM1t=Ƃ,ňQPeͥ: -6]Fݽ;Y b!`(F) {+ 3!/KV_5v B҄6Bq<3G%SO6dC1 *8UKm )ȕf })W7n^5G/{e,Q:%DuW   C0[3)F^L}лL^`g$warrROQUD <ȠM[;t`|,d*{wN^gÄ/ qꗥ3z`ɉ*zݦbdRpڤwwfB"TMPeg@v/ZEΖG^n<$ I+xmR}[E[y #aY'ÿQ^O«~F fR;Ih Nu7+`b}!i]m/Bh'6JaHG,23a_c'EM>٢("pQ#;RV |0HWNj0gK잾3kD 8[u;2졐t)Ϥ\ AݘghPҭ6 r{O[ ;2iJ$W |fx:7[7߱wU \5,< y+@NPp 6>rݗ8ټ7 _RTKD/f?274i ɇ?9CJEyT`%ӱ7~TH_`sRr >J!/:'^@ w/66P&+NWyt;K( 2s!LTȠ*i4M^zZEEltOv(:U7b@dVNZ~dԬK);wXR&Non}Emy8AyfhFU_'J{IDT5=x` lIPiY zfBB^MII2Y7lqӗ$6Z =$'.asDؗ&:獙HCQch~p?ʋ,B+,SNWPMkwuwRnK!wz>U 0[__G][Bybpэټ/a96cEn=dև&8i(o|޲gWYti.)1s%*Gv)X>hWX,x؇B{ D04;9nqmO/? Kŷ6Xt#E3R^I2r H:c-60)yWtުtϼ( MDA R+sSdLH͟ SS>!辞Wfj-^0 =]N1)1`mRRF-~cHJMwnE!8sbztVwZ:&B-MF!N5<ށ"M)5uYUʚu5_({n{!D¯[( ?Hҝud~Y% G(tڳ ("3H\C>׭Z,Ͷc[1h|_cx,ciXW=CqȰ))Zkbm@i E~Cw9<@j߄񲍺<,ÑĈd[VB?ePGO*t>{h3mX薪kD;> *(YkȌRW(|N<Բ5MlϴP8i"}::?8. wpiu$]Xx#GNL>E(_,_gow Ҳx%Su0EUfg\OT\/ܝ%;g@x eN`JiyKfJ3d$1wʶQ$ťl]y^`0 .ލ98ZN'Z\F9&X:Gl;҂4W/)wlJpFJCӞթ}zPv`2:;Jb١PXh> if=)"E K?'*4ֆ,t&]5es;PX]8B>}|1an!۱$pp0 _pۧe"[M&%{ZXz]#Q,f^E^](2ߚW 8LEgl1Ķv>Hib)/<mM~Z%h d ] p[~$dUJX:uC$ 7 ˅Tv=kY2QY\*ݬrgN.|^l3 'ZӸNcvk䎘R:m*:"gAcQY/7YY:%xdp?Lg]ZM  %x>4m|2Q6fKދt 1M6+I *gj0 {pV~qVNG$_Ew/D}9*pTߝcRT7,([!i0Xyu6&:G.kD>jy5^&-[x_{$TuE*=Yy _<9AW-e 2!{aXpHq9GlDYX+ܰ*XSʰ#>}˳Dt=5 ȑ,u&kSvak8ļpLuk~w8|V0$lc,`.J~u~G{r~īrPuho> *3)kwm/Z22j5sAJ>ꭉt&i1=8X}0'dudy6>b/J*'`1nZ3 -v $ (颕pybD 6F7fh,<ɂ@N~hw^+ jI:؍I# _xҵ@TF <>fP LW H i%b2&Ҫ^+4>o^@AVܐB𶜱 4^h0zb [, o5X8XɌr7~e`S.[=q' $tb\$ ix*A)`%ĒZaȸoUH:/wCy0vgYf5x#h1{Y;,Lغ ٲ yzh™Q;+9~wLܧ%G+>bnvP]iM&f)]mj]yկQKFhv07ۨfIyVg( Sf7ᧈbym?ArНUn͗EH?.7y-z>V3l^ {]a k@-!+`NSio?v-uz)V7$mAMz,\ë-H93.L&%5 `*$Mٜ|:ܺ$ř?שb rpMGb<%TIV3QLuhm1luQS 1ZXd6CY8awishQ‡1.Vc'k*V5\ء3r2cFd),a/+TY&b>4c#C$6Z~e@2YD$zKsua#wj΢1rnK tpg42v>PGwc˱dΚ,RABN3T4 > 4d1";V ]9y^{LRh/B)b{9'񥹺f Ucdex~ XmEr-Q $&Yt3XR13x*V혾ߓYHV7OB"y>kw3 ~iᆈ3u8qNWJέAh菊}[֖~|08WXcۜkb@8,@ iw $$s\7%?&.osSm Dl n ڷ3g}֮2졝0EtEUϭt$l -mL"nUҎhCHY#NeM)rkژ%ȫlODpTV >CiL3vwׯPl ' f1RHPl9 f%q&7.iNS6C%DjknDŽ!y'?.ޭ0lJbUTʒgCʀa} t +w/M͏FluBxf4L;M~s}lMM8aBL z˦дd?>B߭8ߪVfЧYe]놖HMs!2opȤgq-:SV?v&8cȢW;hҚO{;D:PЙ(xb;]$հfYfsALqt'O ɥ{~48K7HEY xxUGӀwv7L9g_Xd,?'}laa k<j6Xs${쉚sd%%C1'XhaN9E/%iT|%P)@Fu_88MjXْ^.GqsRD>6`oB!W;àcyHj9襮(jX&k*]nZvO#eEm"cl6OY˩Z>s]z3/S8R8 Q+"+0b!Φ[^K0${jV\keUO5-_S!1;ʆ *GO-Qpk6Ft[&ZJmgG*;H͐muypwoG*c Hϑ0AecvI1z[\Xd؍mlIjBnċA(]lܥe ! CGE̪'l'ޚޥk*$"dJdhL_hGn(`$'xk|{⟐sʸ {qMXa#O)^-&&yvV'[bP&Je.^8aK/k3/; /QA!^&e%8svr)6)Q,4nq+b++Y]B1oīD ץW#<P7En8\p1ɥ=ub˱J֭WhAVYJJ3U%R|eo O hc4Te?:-bdE5Uz6,q&M H)M1n0zq-*φ̀:^ d. HF.kM#1YB ^nɽxX}r*@)w@^G$Vg3^:m­VR'GwS}\b\P­>MgnDpH_[߾yJh$ ;eċUң/Z<ShWψVpf2Ψk*qvEp0Xנyud Îi5P2 EJ]+M12D[WdjBh^Z/Q`SkrNv٠) "~}=%o8Xͳ?kOX";]>VU}x`A4d[(͹&0ofv>SIv3+#@a.c482s$0[1_$0,|YvT`|L\ PG"f$3Uz5do>MGl~'p%_B>_/rIWmL 2@O[l8X6~Tͣd**}欤Ab?x̜ļA_`C{5[?!Z(w) &4yW 7e!dQ=;RBCêNVNO*ddP4$ؿVs̶wQOG0Vw:ڤ6Q.E aP`q&9fr ѥ2AV WY (78)M"Ɣ>[9`yU/(Ҿ<"% Q1oQHt!l+ `\^![,`-Yd$sc(m Pj`.1ن]GA76gK#2Z #?=NiQJ7ty Bzbq zY|?MGc 4MSʞh~I(#F2IH. zkT%@I<@hUPDqÓf[zLNlRU`!`⒚*'96*n|E܂H}E T'h1 & T&ˀx4xhEg'>e?ɇc$+wY,y.=&ۍ 22?U+ɐzYX5[f%^KExl'-5h`aW%g;JZ%Nط G!M s|0%)%apl@$T5m/ʅ}wl4Ɖalde㉼MGw^zx 3+Cu[¥2b_@W"FHXhK\Y+(iTq7.ro&_jS_p(իEJ9)1]TTd ?.ϘF%]TS3,zbG֒>/_M\ħ ]~2l9{r4#M۟X](t069q`+͕K߬JGɞ-ea1)nJkϠ8;?&lӌcEXI4+N;΅$%X#!hT5OKv~- #'$o/eG = ]*dZ9x]:PnWzba!qw~(my7: L!Z<'Q%8^Er6W$&+LVS۬'"ML ]6o%iQMaavcoKAXN()5׷nbCz`\O(-+@q~qJXN̲[9uA5u=h {m&IUjz%1V`O~Oqrϙg pc?,{FSgJ\ǮXlhn{Y ͟\>{WZ6.I:cgګG]܃Rdfo3ԉP&"9<-eªT57##d̃Xo*$I-QńJeNŽ{]NJ8Y{bH#@Ū: 8AM]޿kKi-2 C"XF K nn; [)گYsxx$3S짮yb/=?K+ y0w `sAOV0UKz=q =J ޛ-HWa A"i_DUgY $)k,`Ea!a 4}Avg#p4t3ƿLWCIe{>ۏo"3aT҄YQyB֚} x$B[`q}2w8Y;=YOx*En_6GB3+85mݾ 2y(qXRoۺMWS"ŌՋ_G'-JGQٽYÓ$^K$F`W&3.?w4A! Hi(YAPII;`Խ,!-z[_ pwtuϫ XC̞~*a⽲{>ΎˈtfևT\7K?3 )T"eϟПPp~8_dE73$ڪ놁psƾP-pT$7-Q’՚=&iLU4<,Iz+n닌<(ln.izu"QG>DdaAҼE5 ii5ì'תQ 6H;}1!#.'^><i#C;ƎtKSV֚<09hѻ zzޞ2 ոD쮙Ul_AQ`7|XaNOp 'c;`aIBQxFI*@Ka˝W L20t5~!D̤KE>nO`FYpf+(=+q$BW8'HpwI&-~LY9: qٗ_ih򒺏 OnEթ%R^?vTbd,E֬h3NGjm3z4݃Z2vC)xd&ioo}#5!_uS:O֓ 'ˎ$"Vol94uƀ֙lBCN !zTUAɄthD3*#:YfR ]\B䄗sE$ʟ/t`WQY ٔz )ú;LuP|/\ Q,3ׯ!{]ӱ)\ >3{dEx9Nq+&FD r,=A]uz`=ΩIaRbch~ӓ9NZAVow⵶Hnr`3Wbɠ1Gh *hHeBJ5uL\ZiڡE JX9i7 #U%o;FM=fk4Bl3CxG= Ll $\'q~0'`d[b8mهrqS9sh~?i  CK%rQdb4TAh>k}SYf(OV~.#߼ՄLh6p?E(<>-yL]"=##?8>Y{qQI#M1+φ\BLg'_ ^0LVh|T*Ĵ]V H͔k]x+?諂;}0 T]ITz'qCf?q4ܑs5 YJX:Q஡^ؓ#T[+귔@֑M0 e~!`Nք dNvv,#}!Ӗюq;Y( {no@)S3״v\59ͦoӌڼ %|B0m̝Zߗf/;"gaLggULLd fb)Ay nz5b{/ɚjoK՘5:tNm o-P1^tTrv  ={%O,ϔ4Է[bG(•6I*a+9 y_]Il{Q[IA2E(`K*D-M֤9HϳIi̼iob|fg[_7TM"~`V aIеd@Sf&`kҀnf8Z3;/8k"fXիU˖U _AuOO]!<t-eT?79gMG6R<`=nuB)bBY𥮯kG y 'L↫`xk_|ٝvq:dbZzv3`& ׬s;T, s _^i7 ¨%6ԛ|x TX|jYD6k[<]$B@jS7zwdɯ9DW_-M m\̽,ݢ Z-iԝ-YCd+a,9ꯤW2e!>sؿ 5_Nh͇098 z9ۜ> d[nljH.J+_DžPU}V,yPSŚk_yzÂt).Ò$u&"#xkY1j S=a "Ί}['Ɲk8.}Zwv@3!P o-ںDA53PP֚!9c]_ˁ1Tn ά@qG B\xQgl$D:SņMBC_$Lg>$n\ޑlI$x&ɚĜAGs YEJ%l !J|e=fݚS#\.~cL=$ rprvTu7]$ >7>Ef-̘)`}1YTڻvDSE OD5El%*n"/E*ӴzIY-ċAjk.Y1œH%Y`(OlH<QC^VR YÐtQ@ Yc!Kv"C~Bvyptne=Smҧ5jV[vt#\f G]rv[ D 5 [cac̻,ueADL09ˬ,hG'pՂ*Fz.ֺ~ޒ]D4Ƅ/'{2pVwHg2PȌ-~%[@wsb2.NW3s+[xaeGJ 1B!#F冤a~/Qe>xvjd5\V@^2ތE_!ɣzѮ*ԊBqaE&0_A&W_%oR47Y,6+@}I25#e_B]@yeE褐Hpe`kXkP)59 i_O?c.=a*q񐉑 F͋7KqhEbY97 kv>j:N(L 7Ј_"E{|JQSq+Q $3khM&]_P]nQAV& /S$ MJ&whpJ*ݝuPGٴ+~pEfEEpVZY.-au l Q 7FQ8g^`{=;QYI'.EXPN|%-= Z~v*F9)X]D{Y g )\ O|بhb׃4J˚cYFEQr&$ ~9z-a I'fyae)nuEdFDrPEQi!? u6-=.ioDERv~I_N73߼?W+tpX9l[p^0Θno'=-^Va16ͺCRj?qCx&s\] 2>Z+M{,sN X2,u%O4e-A":uwi3b+>jb( M_kÔa6rgfΉſˣώ0FfeX|cq<,|eHZ3<ߟ~]NYX WI):1[}j&"F;BԂ` ET73j~H:M P9e +s6~ctHN鸓[ZHzTEЋ& `l+j7iCaU"%q7sN|j^`a[G}~Ֆx-%f1dT8e\@DFy:B ԴxnQED_ն@U^C$|aYxwO~%PdInA|f(/շLv}N1ZGZc4-3p[ڌqNlSvL֠TqŰjH[ ; 1b^xx]BjøFE.>$}>bꎹRҢr= u9FL0OzYփŁt5y&dO# >|6^=ЪTVRw'kwgZ8[CNYϭC1E<= ."ލ_DeYүfùY,7b׎hudmBיYS\pV!0m#b.)އ8E%[÷F!Z+&"|>i٬\:̦>@x7a'k2X!Ğ-`~GlC B޽n؟mYz>f.%![% >ȪSg7wHD 3BD$]ru;ԚԻiU՜tS[T k U :)O<1,UQ ބVq{ABdq~m Vg"e825X it/H4NwlLnnPNsΙVz4$KB6Fe@a=*n/87.^˥M}篋IRشۛ ѳ c_w0Qb5t*8 UZl[l38 D:+Î,c{xڰ(?TOCR0ELWq \6;p&VFboG(&֣Jrk߫b$' 0giQ/xž<9Qץ{JB'vO>2+aFUjMgo3_FW 0g_mt@Ejb؋Kp@@cH@F?,>2 2u'c2c5(oEYw^ NWٔ:a8#oDX´RDy9p)h"W9 wD-'EGـa}tzzwePd;AgU=dN-Xa tиpPB=UW#NH#2[{۷A{6u)n J4K.W0OE5HsR8gc#7h$w}S: L1V b9?y+Vg,mZ*پ{[s<^N:ySxpgqL,tp)U(C[9S!0]ܼB`;:> =AAŰlv,~Ccs5|Xc JGMqw!sp~q~v dXz^S#Ŵ5$M2N 6ظO2w/dV.IYvhb*rC8*)+UkY^YNJ\)LE>X8MX4A_Q? j'yx1Å'd[jD%p$_x%M@န3J)Ay|=)NKqūA R)N'"ܵR)4թ Lޭ Ѩpu;2S(\]&梍xUM,ah:YA[i%\$-_8!;DTq~Aw']=aΏ dtNRGQ5IJ=ntopx9!!񯣎/;{l7hMfllBdvAdx:r+IiU80}5f@2tL.2c+(1c'xs)0~@(uaI>oLC30;2V5FQA@AZd˶kl;Kޭ^FrH4=jCǾ&g:ﻐʠ~V1Y`ܬVE@1Cuy "._qfCgav^)4,ϽcH< M W馆ҝ G2hTϣf?BCs#'uLu?D>yr@znϠ} jc;PZV^5x }@ZrX(;4R/AxvY0_ٱp'Vj%tO$0ֳؤ_ %ߎdॠ#dgaJWҡj(iTǶ:;s, ҳNr׵ `2o*efoN2 Ht"ʖRd7Nf>_{(44s)TrR> kja&q\N>R1K-GZ!X9L&"[*ǬQu{yEn"DoUᱺ}3; vL G@zh$`k]広R|{jr|\ܨǘfO:k#^lcΊF$iT:IG=I@ dO2jDR yT'{O;v1SZ Gf^H@ƔtN3*o^y\w AJ:u*ĸ%7oxwF /y8E0ADB*@ۥį7f{"܂ 5ъ(ʍ9~~|X--6"DTFЦ' W Bx.B*4ݏIbA&hsb^V^lNÞH̞h 7`&m%#M3)L2W5)顺6=bCC&T^[~؏{6LHuUKL7F[OIg@8<;̻:FճlSo<$JYx3h؟lˤRq- hҁs~mf_?<6rb6Oꊨ3fP{z4 v;6Lۏ-hNB/.\4+F MSkc1\R3%>őF#w 2D9Ae qwގf14.J(ObP=ʷ |: Q sK}ˉ"3(EcW X1U7@<`ҁbI#2 tD&v~EQYPde5\!V*JR^ B{ A2OL>Qm19;|^C;8u:lQ=}- 3Q`w@w.W~8$ Ovʅ= D<5}>nA,^laa^"Ge5aaݣc.RB%.h3-L YdzXrJQ=p|>Q#i6%wbC] v }e8w&lOmtM Hޣc8ҠC~OZ1 E!^[Em^x HTa)ի@d Y(lmV⨞}£fJ)1N'& GOeIQRTg ?GPexژb@A>囧Hz.65vVP7XP` YjTY{3@V+>m" r_;\O31Gzw`2 \.қG{3 pʱcMJ3[<;}r! \7$xEp#? P迨v̅7nQ `N#VyTI5Ֆ޶.̱h'%?,:H$dHЫnY<4H.l>veד ."pMO)T--'+mŸnZ6;*S߅yh`+0t,c3~JۉDò)Uo2#R˲}M5bI _F ZpnpGs6bO<N{{LQ5\ZgGJ{8t4 S$%4EEYި⿥keEh%}{r!E3^Zԩ:Ё&;܈0!-@QP҇EBO9_JTe&"lQH5b=]iz@򪲃:q4N5MdKppb6f@VQqQ\,!=Qzf@z,ĄMm| &){]|MfJYNmW&qqS4b;b,_[KÄ}eI0M-u8L/$Gyژy-323-\fD+D$@ 28 Uj+ͮT{Y lmʃr>]1Cc'A"C_/s+GVFhzTMYY//VQ='/E][$X4?6T !up%~'^gD'z+NVf^a1DOλӀ+E q*{kET6l #mѼpX6tɃE$6WchWH7٬p Z\{#qĨ4,|3]Pb8퐭&ww9NRI튓uk8:)m[%[QgcףKE[IO/puMAz#)Xզ y1߇I)WnCycv[sx{Vߟ؎k~(|v}H@{vm݀\NE z2DÕu>VVBdn 4E~mhV9RLB[𗩕nr,ڋ0/M-ٙxJ.h%hW J];2֊ʓ-•%VLL6[VCM7,(?MaBV] C{fYЅ/ff& }9JCT ;UY5̖;t6>3q2Ef/T4/l9<=ԍij*&BgqU|Z2%;zBOFELTݰ]QSgdZ[P{Jo轃) [k"*fܱ=ll,A҆]<1%52/L!oV5):J|Q\O3_LIN8GԠ7(g}wC~4bI 2WNxYJQ)rws LmYǟt ՎI6}0.FF@*lf;ECb# f؏A7K8Jl_SI`gIguyI1|kZ/!ZONlL7a#|iV9Aԍ jxݷp. !a qtƎO|I]).p?zڳRsUhqgGŏQ[lTHQsB;a}Ae bC]/MjNp*`~޴G"k 7qt&˪QO=k[eT5nn)zVǪEC8,>Mpl= EVTU z"^")"慊lL^w\3O|E3Jxq')[);qg/S STb:G}kX27C,e/%rF!N &g60hȆoUi~fh #,YOh=iKd{> >4z i‚p,|9r #w+{]l:MlEqk&Z_cӣd=7gc5vՓޝ;Gtź3Vlȏk@SQθJ^I[3AdF?OL}^!^F1ѽ[JS%"E;%tl DHoK'Ӄ`0azm⫕k.%ۂ2 *\EA}3E]t.YsAnIbp6Ul/_,Ί9ᴜ|`7@bg >]4M``dO c!9 ID^[,@G?&"v;a;{.W ;t{)OI=A5|ޛZ 0a)'7_Na /#FXr;hˠeO"38H#cmگԆXүD 0L-#ap+eeG1-AMeԧ-`|qS2mg@ (U;]KE`EIU JXPpQhR:": ﻇLgCħx;*)B)KS$$r&%lR"<@e9 3墊Kf]H^xhi"hSc@z[hU>u0sU~A.Za;ξUX,k//@ќ~w:gbI)"hx5OsZ5yV~4ٞȸDϝx܇ND^ޮfW ;59hʫoɰ$@Cz-;m %0$:`'* %[Y3GCJre%vATYJ6"h ]f_K4i:,*c9P޶DJ8}țN~ D7z/溻yyqj|VAaxm1qZ2":i:v`sU^4JBiN2Z|m:\.A# pPMjhg4`VS&7.aZyRgf39bBVZcqp<]㥟0L⪺/|8iS08B?; Yoq:Qχ3v!~Ds?ލD8 h $i%Lrx ֊BJѼt5\XAR@@}N 739k[aPOR-yҶWC%D9Q]}V%^2!i!91L&Ʊﭳ7!|k.f/#[sK#BuLƬh*9!Hf-C2aߤ_X֫kэIr4ÿ@)+9@R(;F#Iq#tPM'IzoR[׹`7xd0ۃg+7xպkEf-!^Opgun:'|]kgJS <Ҙ *Fگf+R~n2],zdtΎ{ycqVbKkeTIEGbA9m #"b\)_}^OsRHhCoM9&{  ϧr~n ?k`_z~xĭDH &ӆ&_Ⱥ|q M)1B ?3=L"gl܆IQm)ᒩq%~x$m2 rK7"mxM20z#FdtngǤ?Ƀj\DIKZ:V w ,4`{.0b7/eXLn|V73Fy#5 ZFL%BA^I)ʐ[2a;@۶?_hߒ7e'زC* E}⴩+Mg~i*5sï4!erLğ\NxQiqná+79:v:71"w?&M1S%C4@Ld(k0CT=`9HY%*p MRW4zhC Ԛ_1a~ Jе/^:X |Ogl"!g)ۋB52k|ggzJb ~i5#|ҞF !jf V,t5_'yB辙aOr'z~STYEhہ\~o׎=c;È}rLcK+cApt߃ش"2tRafz`1 =^S3n縃 L.Q͸<sNW%JgtFFBtxh+9QfR3dJX޲d8lesz4Tz1<^Gn^2td:D/19R=qchUXxij>꧙`T}RC{j-T4RvTGmkZFY /jL;B{6~rU~70Vb'IUðm@lV<_JɌ}hn*s! PP8g)@9VʪY:GU>2cilHp*gKwlM]yɄ⨪=-ݟ1Y.-By h&8UHK=)?Ұ7B~%#bQ"B͍j?Nىɜ+z(O^fu'C-Gbi&4t!._@dT'(uV&YAsAAAƂ.P"֔m A:w?MW|}2{()|3;BhΦaȃtPݠ[y}q<$b\g 7EP3pbYNL-l1{MoAi|BϏ#xSXϸaru~ 1hs.".KKW- -U/xd\/Ǫ|F!N9bDE /Eӭ7fk~;j g=P$Tr$PLzһHKJR3ʔ&J{CYgsWCz.p٘c^2{08!ӻTzۥWAx7_V1RفOLq3L~f:|Iځ %_d-h-46\~/Dfcs45VOmp/t٢tB1{3^!}@ PwjXEFAJ~=0>U:1ȝ apn"FI1VH N]p\ rdbr8B:jʵX$j zs0i@P6kFT_ Hh"RTzt-L4X!5%*]N±[Zq(jSD~{VzCL_|q%W&Y%Kͷ[ԣr  %98D{=ىuWqd!1ԒFߤAa'&g%S5 Qsʠf\RP"O{p8@ dVb@AדT-N7'3:}wM5IKIQVy>;iMC;4ӻ8sN#tu+;tFfzVx߬x7yE!J; Itպ=5rUEU-}/Flus4yUOΤ^ɕ {)g ^_":>mEɛ]9btJv8! XC )B;cVª}.0ScG *u7HGoГƛ04/HZ^o9m4Z5ur\ixB/,/@̌{T$.uzқo;+-+Tk}B u8~/A @2 LQa_Y&kg&کN#k>;/pµyE R@h~[ZKLlr$YDerdA_Zن_H-߁(jm25HYB_zg !Pzc7 4i{\w5^ `6A="վ-*(UܞsTws+&.!)OYx@ GHH}Oѵr1 Ak睖|8I궸_sM88W0& ?~/RVg̰y2dš4@u},.- _█^Ua"LR?mpcWÒr v+pNk{@Tpr5tU\B\+AbU\풖 o& ~H.dtZٴH+\FrvR^r f8MS6gx.c)l\$F/$M yy^=or=;ˢƨW F). yDzjk2G+7bRA=L/ژ68n.;1%]`e4s 9:.BN¼dl?{&(azcF%=YEј`e $ J5A6? C!X}$xG$3xR c.ݥM O0Ha6T"پüY[00)ru\}JiqiAZw4} S#S`Eq=S IWrN"JSvJڰTOϩ` |fLƕ2%}ї06 5q+eeeL%o/L*+(0Tzerbh)l&cyLMNGW.:#[UPF}s]sOc]U6'+bѩW# H0~}2ƣY#(X~Y l@# ZfסmnOɶZ7>ΫD,n,|SaPM_MB%|c irQ'&P~J«c9T-:p5 /M07poe#w1V%&HP./B +HdmW o[.4"X5*$yPoA?.~&K!Mc6@OUr'Cԡ@ZNj l w?=)󌧭;p{TAqL2z CދTfLjYa&lq6!;B| Cvl Ɇ 3" G hjKYpogg96[>⿕a"$CZR6s*C#kp0 iz˯q72Mp'a9j;P/rFQV,.пs5vxe?1ܝWț|YC(!ޡE̍[I|^7C80ռkſU=DPv//gTnvw]@<<~'6ii_ߠ`.W U f|0g3ܻJe/l-E"ؠs9g fW u'htL 8.vW 2([z*y6]@khv2)~wOQ1arY}b +S = PH=,Ħ>FLYv.pfg3_X0"]4quٷGXxvo iؖ0β-V0bW(]N!`~Ȕhh?i-~oj9F,oD>e{X%Sj!FX}u$Zm=oszHdžI<;%2@Fw m%̬9TKJć ĖIoC\^+U7A#BӰ=ׂ33*#:9`umb%ƺ^7!C_l~mcGh|RqWB63yFhK7Yͳ%M!kÌϡ| >qz.+?oHSjqc$ea爥;HLwŇQnf̵[g7ӦE*Z7L鞙df1Ӹb Heuґ@N}u7r^i-ހºm`$ ˉAY]Ctb`ծh]%xuF д:CBK9f=mc4WCĆ])p{AkGDe+0~f~,i)2[aS˘vrj49V􋅡r@ 7!(*:WQM|;f)pelƸ3ezFYE14nr<]LZh2'pjA#a;@]A)Kcy ?P!Q(2bi4k 5rN 7XB)RQwpjE*^TW^V#RMQ;շsڳ.PS1Y줊昦e5c.P6X)0 yؐhhFDοZOB3$xVpŷe~l#+":DׂFs"ൔ%q0mh (\U:Ui[!1{4XseX|[L1_lyj{.<3Nk‘֡\d\ ^B=f&}@?(s/{sϝ~ns~BTGvVitT3^PE`]{'젤ɒ8=3z) If~\}Q¯&1-xǿ1.Ww?5D 5Q]hޭnvxi~,x:KUznFBgtdD'LwuA -KDצ%OX,}9 \;E5ca({޷5=ѣ{Jn%C?:FI\+lb׭yKXS(l]zh}k]pq IB,V:C@䷒aluJAoa 2ݽOq( AG+U덼y|*3rKc/Z\CuCI6}naIDWS+=wp?CR@/'6:@-Rc!~ b kYZ˟4iiGYR ϛWXS%ZYm;dFis$PqX v|HDr #S:sBPj(yc-G]2oxѶX:*'S}<?&~Y5eKHgj*/U+m|m &yf.ݠ6mT[@9]k/6}5a%i^< S}-y9-4!c-uA"ߗ-\cxIŸ:\a`~|0d)]bq?j.uGG!MxfSw@ 0 fjq\}Te<ܨDND+84j>'0Nu5Zd/򕿢2woDV}?vƪi}QH3Dʘ RmXdq ךd V9[CFj Q? ,Ңozm I9BSk<a&v-Y >Վz"ߋ9V-W"KIdxҿQ5.TGQExӔ}a;$H=os%F:"o'xQE($KXgab2Af!qa1Ɵ{_<A@Tahb((F` kL:*lA 8~d~lwXxjϴjRķWdwz k\@1ʽ&T#c柨S'[ }##u1@Ӑa΍uJҕ>jpZ!*/zX,gGdJV:2nm"ß)S}ֻSzp0Q(CK pu V %o"-$TR@Z#W W(5zH?EIC-=4_Bw@2|Acy!%ƺQl _6GJ*`"=O]:9dXy9JkL0&˛eJoP K:e p_tR/xĴ}g{%:QҸ5 |1kq̵w۬5nfqۿ"u55] cɧeLi];U/UбHX^+d(y/RZV^])-ҴwX EDn|_׮z?bcoܷ؏{P̉B-t'ݵέ=>!8e`՞B6v;+΃9}GFxstr gD@Ҽ$ ${^?A$ (AarRdYpmZu5VvomЀ$&uHVu[AK}!Ӯi RW#Ru έB}jUh:uC5-,v;"57uo{P>İE]ʂJV(b hΉ 6[]I}"^5.l2I:`ǐlj*S8zfA6׻SL;)#?Gѵv&;bo߫0<_`'`b[D%r[)QJ[$Nm _U_g^-Rˌ>GB-ABcaĚNXy@{If1[Cgu7hVM0AGqz,:ɭ;v#f# I\~„c$#$ @ҋIa z726W2Se&[7Y`|֓a?31@TcFn=^H8p5PǿӯLޟ>WѲGR9eYL0cfUMuˎx/ ;(Β%9:1A`!fE$Ր.B'kca=9m&7_L we2i~r7יmcwYxK}=|/DJb*3>92dNqs[ }rF^+bm ϞhB^tb%8Z2H tzR5YvLq_hs-åɺסxF*Ty!XokiKMZseJcF Ԯ _lMhe TOΏ?kծja.LS(/ z0^O`0z9 "ܡSդ;p!wv[CDCK˕bӵM YvrG?vH(gS8;w>/>>׷G4r=pvÌ~'aXP\ablM[@k]c~_spJ-6<ѳ p02ǮxMu+=ΦfHԘDN5YÒekZ~nmO~):f' ;"v#*Z|:qt@tZ@Fӗ[uz-',G& @na h]ByaC2@}u+l0X0Eͫ#_GaK "40^d^e Np-`9K Y{oQ ÕKO̍[Bp :mH58^@1'}mdB iNЫde,dž"Y&N\Se5x:55)gٓVĻ%J F Ys&[ a2,̗8?ɖ6'Ա9Ciy. Kуtw_]I#~$:~qE]{|~&FiS藻̖.\;NX{Q&\f鋲{ T5P=}9%JmG@=."i:t QQ\}.;%sSlj+SBbbye q.Nߏ6 ]vk] fnQ_ 0,g4*8kpdZ_@1Yr*Ly B: n+A޽#a4-A@ Ssgps,̲ܣJÌB"HۣWf8мۃмR5M''U%4T2owu^KHCBA(39YzoZUvMLj* 쮚e#^wx׊;֋ÔȾ 2orłӟPPo܇1* =R K{13!74jg8w-.JGj{O)dk-4:~mP.yq8|^4}>ӽ kPJ()9YS%<ȁhi>"&E`ͅ+H&6c C4&+JG5t]DP\ gG#NR?lofr OMdY;@#e';JrmlZ%Y(ѫ/%ܼSyx_0e0f#dː8H{H0GQd,QnERws0w׬]3ҵ!Hf/JTe,׺ ]r{:o8@͂qCM J!?TF3no0tl>$A{4,Wf؊@ }w"&j8 <;lXFSa 3yVȈJ~鵷시=ș{Mo_ak @u,6.OTscoK2<-R/ycn":Zj>UՎRff2$ˍy豞s䷫evIiT.@J"$-1yx3}7Rr/ `1eaP=hYXpC67,ۃXi3j݀!Bs3둂@'/V|TB/ti.K]t{{xJZjȽxRgYfI ĄkoJMJ3.HU'dŪKQK6*FtNrL:җ^NδACBh "&Ҥ"eBJ5hSPV#/rǂl% u0M&++3g(͐U##ft0&"J(%U0*?)mW"[6V~`ꛑq9yk92kVLpQry:|/HM!1hόŏ1ڸA밙ӔEp!^ְa.ٱJ#l/ :`^M#Ǥ5 + YrqIb)kZ8mRRPyH wI;~Q{-} 7mqP-Zy !뱾nc[1c{~Q+]8ȹjXgx1q7*7?8B*FaߗBTm'1Wm[[DJyT#B]y;Qx Cz&.t4:-u +dr6_Wq<}صg^/e|}E\_⍙/E{^Y󫫸f7LȸZ#,aM6--0+G>KxXOV7Ĝ8h-WfLÀD]lna?;^X 7qWӄ T:7YkMޡ96n¾Z1:h gJK7H s凖Т1[j&,/ECѼW\bT_*\xA>7}BA#)>MHEh8zA/nSjliFoDbW,Ay;'Db54m4evvT+H'DE0ÑB9.w=Á=MOhF̤ux!@JY"foKOFXK>> HiL毻BX,1%;/,xy g7,OP7[Du1`sn=b:"WVDU,hJ Cp8Gƿz Yeͻߒ:@)cSٓ9t0<9Q$ǔ̓Yp%9eV CVXȄ[=ϧu3%8cVSfNY2–*}S!@=4hZ뢎2.\qI7\0ߏX/xwWsPV=+OJ[@qQ9 a,b#(bp˵gsEF9͵Xr>2N ⒡gfuN /Ȫ;8\#&,Uxjg  k1&5pHY^ͽ;|ol̀l&g]}ʊP=Ij.TJuaEgw|byEi8E 3SP#K %}L>wb_yIs⻵?]f?H.ɞkU_kix?AT)t :u ʕӲT7wp,S#%xjz~`hz Xo zJv$ge@\,&Z "SZ]1z2昒+Q^(BRAqZCqB|i{-ȊS b-d}a*z!uaYBXj5x ZQVX1^؀3}hc+z=v@A@ZE|-ndÇ7h OHN va'mmVo3JTꧽ0V:͇ 5XauF깱G Vg^[8 K{^3oW6M:UfJ^A ]lH/쌂m >;FWg5)uO2xc$ϝ>A|J[#S ImmRƵJtwv~|uk/,௻.1j#9#2Qe؆Rͤs4\MP|#Cl ;0'YF`Z#y1\AIiCI;(lmJ&^4Ֆt6 *ղyVdz`JǴVl A6EX pv-i_Xt |"\$t |033tס(HnRڬ,Kpմz׳r.*%?aylfS[ĀKFH"T(NV#LݎMYE ;%;9X k-?7q(HJ.o ^mi'>q^X+i/*tI= %;Da)0j7gI.SX1!-URq墓_3~$a]E6ŰF08%N(+haBT M+9v "uiw8d#K#+%7oa-cK z-tq/. B=헬hۣf}_.Vdi'홒u7zsFϩQ.E#xx\'Ï] ?&%qҗp}vzիB 3OꜼ~wɧSӆqHVM/9~́@:{X9]H^];:6h$! j]τ9pͼX d{(71`)]Ez ;YCkaq+$zUGVeW=xUX`Oz>")duw,u5X19"q߷t^=7!e?qe_:=kqbI1J۰4F!פG$/ichH _ӊ/7c=+9B@ʂǺSܒOStwQfv`Mѥ()5=^/1(֎ͥG i)>B};gW x1 Y2D=.^2uZӇ(JҦey`Zs9k4PI $A^ C+e^v޿߮|VomOFrz69+$2mKc*dJ[[y:k{ gn{2& X+w/3#~g傂Չ;xFϟSy-eڿq~Q3t&"P )xڣHX<)  Fְ-}U-(B 5:_T"ɷtkeeyhBϨ+0fla{|ʹw? _YBA~'*0hh+`Rc)6wH,`e2;#n:dW!)7u*0-DW/6IH.oQ7 ζv 2 Iqoz#-c_@SFޑHOr*QS%CkFǬOX-*[]HGMH=&'K8툴0?r51Lk0R x (/טџƒh?2ϥ"b @2MTkPBg E6cmG]VAauS_*ր瞷ФyTCIu1\cBgOk`9-:4s6*lǠ !r3z7L wP4=U/TٞҜ>ɽīglZyAB~[aw-W]x>3$vRᇊ@ѯǞ}#^Fu![?m'>oYuAȸù w*V:H{i"D03qj@SSx êbYFK VNjp7tkdC{k9k s-;:t̯fB=c)n{e Z.W ]U,5 .oC5IgQ{f655ԿfÊ!Kb{1{e1^(F;;v({ arJ臼="PXH<;m_!g)f.帒MUm8'oqnV J^܍c,xaZC@􄴭5z^Sp~ѱ Q?% 'o`!H ϡ()h-:kjU3+.6/ܸ$K&RGIbƧ\;w'._w3l*\瘑 ɲ 8dO%O\ty'O0rT)u8nhjX)yq@wPQ0uͧВ pِ6S\7(! R/ўiDM2) I(MY2L{KG%o[vD?J61/쇷3}{-)"X1*f&o+”f.}?gD}t9hߧȗ][A;,@MKUcPZ\\,gFNƟD %cayr hz7 އFFKSWYlj*߼QZ Xi2Hu >5i_6@ӵqZέ ۹O&W񏤡?Dvzv b(Փ+moq]JN 4{3`iow͔#ɖQ 8&[3='@ H ,n yBe]sAB:joTj"nXS|VLC؉{W?hPhD~XReiǜeEP@F9SUl|tuރ+~숛6_*)b}e%8gqmPX]gt*tp&Yv*&ls**D׭yqtbG3ʽ+My ׆Jwz,2U8v86<@`PDH%wj!XH_Pɐu`yݔg¥$D堜lK(A6see@Wנ^a+ ̠T3 H)scAh,`HkG'`7o( ._5'Ch=mp(៛kO9N[R*O}:j&x8I;S$BΒ!>컈_oEw..*84ƴjK!5 2oh==0buhrUoWmOn* p<(ịm6e4N^2mg*BmMU¨kze x :Xپ-6y \mGeYѢ)\|Ɖ؛v#nL:{/U@|\? PAμ y b{9KՒUw@kBOON aM" )0)y—wƃi"IBpExOcC 44y4Ycf՜(,ȂDla[I-!<%$H(P& $ aJIcMq}v>7I,[V#΁!t$-&+@pH<9N`\6J`<ǧrh P-qUߊёv&vR L33ha ܬ%vٜ٥=h&;-=)gзix=NJdpWa E⿸7$$KzŀYR5 q-Tr3╘p )QuwFГYy7$ My].'8 ا8ph։@ 7ymXy5¨8[#ٯ{Ge&G-|Y8L2(P[`=Fk4\-%Qx[cA=L#uPk yd5 }mެ$:^ ݶމzz}U_BH]ǡ80Dq={:/ƆXlkd(*RIJvlgl}jnL 3nL']Ǟy`|cّ!?OsS-عa)7;SJ[6*/&lס<mP/qE,. YB70[(.$9e5&+̦];Oɇ':;.w 2$78>lW X[HMmxɢC0z4E> Ӹ 2*7c3vE!m3jaF5םbK眰ޝHۢ84.A o1ә%ͷRV(YfsQm-;{.$Ѱy]sZ$S f.;Cc.mqG1,QE %D0/QeҼYQANJL*rnނv4%Ͷ~h{cBQ#L-f~HD!qG! P2Rc7?S#DիO#myJwM,纕r*c y؛-wäBN4rObXiB,ׁM̸'ZPS7ա@J(4y2>!kPSdΉ<6WZ e?) oJ~z?ZCnX I8' >!XjL'8-w/inv{2uMAhāi#k:lJ&03hG|++,#/{ku{)PTn5vSIO=kȚi_@~\V InugdSzQ:8G)߇U)AnGǃ>͋q(6Sǣi/X(A<> n9Soob4O]z})e&a7t։%~{Yf. *OlFt45 `HnUPZ,*NiA`k%T52q*2S 8?*(K 5#mg-C`R$0 IFu!f{ Иt #?QvWN-TiꆀThe ȡU _;_}1U8AW^ %o L<1̾#r?g$fYd&Lx")#,p ILQ✕_N[̏-c2,w#LgSG+}v.p-x 4h:NU9^^%w=. [FRxkӀl* Cx]0 ])Lδt8 VOBGk{a 7)7!ʈ}V{s>ntRm$E s}XQǏzzv6-H^ěR ѿ ]P)4 ,yz.'6?W Nd#+r@e 2&EQ^=p"Tkj:l(Uǵ/_q vslJ. 3;.v/rC㼗F_e*uAUNVȂ Y~8K/!ˊeg|^0,`+bWľ&eS9BEt&㞬}7;dkҿeac9C`~a6Tu[eq0ea% =8IglXhrؓ<\z쿷a,s֜zhS)8hg]w8'յ&b˛O>Rxo^)JtV㼃Z7iy8#A_0h}IX|óA?Ƈq04@ uy'g5"c: Fz7'Ί#v!!kli7o7р`surAlxed`dɄwy^sÃR8<9rnAJO:W [hVVmbf7΀y`jG2ȱ`9Ѹa_ D}iu6?" nV!V 5#Cttz !2hgzl')CgK13_Q{.끢VBl14wyoWM:Џ7p-_UָlP0dF+bb_@>iʥ%4pdtN2͇}2:Zx%'"u /Bl8ɭV oPx\kL~W2%x-cԉRefIl1" cIl"qk/?=t4s`mo>܇ȱ%dD2Ѧ&p˥%3$92ʙŽ.Z|M*%zK26Z))@/) @~w$H'CH:ƫ@(>5YaO.Gӽu"b[sMVIbVۗnuvTJWYJk_> Ʒ3t!+_@ J(]M237oIXH F7NP7J^.')L\呿_#6s)y$8j}HAb$5ma.V4◜MSuQ:7|8Wgg;.ovgC:2RU{r^梧vLpBGtv]WuZ!j ",}UG;N%"SX(3In#"- A0E+䞔g Ye0UE{ rU`=qkxր*oBJZOqJJM ;jgp MpȼiPJdQ=*N:ﮥ@9Lu- 24'HL{% Stſ<Ϙf/fq:k gduszS17 3v"a<1*zYӗYII\ {"HiG|دWtု4!(?VgdV$&^ͻiTO'^dSăd1LDV|jޞZ Ȅ<-T\˹)ǗڶLko0ܓo]ш5aI,FiD' #"|LxpQ[Ww30 P(`6sPl:`<:ѺȾ9WqI y8}YZTë^Kx(+.j5IuR챖?$^`1 o}DdsᷨR+mz@%vi- q ө1zBI)w?m c LlɆu"^ f_}xo$HUU,p.6٣'4g>$8QsZn6)JLWD^!HGevHYyiJ=`ғ|M]?}o3@qSOHH,[':EX/K(|XoB'JRĕzM>ϴ1vq^c\ˁ?rKdo31oIcq#!d}sM}I=(Tr鮸ⓘ"؍XJNIz#8Е V&X>o*G-p Mp4f"/=&a#̀i%o)[jx%4sIhϘxcp\a"l]bSq4|xPflf ,C+=׃߇.ZQûDpsKd`ލMRwA-⪶qhEퟭ}>sKhbhY^C T`{ãF6`D_JWjaoɵf :6!Hu VKq$ >?};L-Y^EGYsi;T-'x$l5* VCRSw>•/H~ϩƊ,DAZ=zw0FʖVq9 mBwMo{.B^M^0!0W ;M"nYD Kᚩ⬼ aCibG?Cpjp 4IMq5<01W>ef0VrNK^MfC~ۙPo:ygfExc%B)<~;퓶 e01_¾n8pU c Ҫ}+b7_j?!^2\C  C6 deKۗ!~OpM1 A*)}[qgZXSL.x&ʮۇϑV]&6%C&ml<:4sEzՋ(D(ǨFp$ ttw xB/Wϡ#,P(!)M6dSsz.Ԋsժ}m"BY/7~͖i1I^_z^n#YB Ͼ9 P\Ehr0J_^0] Bˑ%7cRU7(W܍=hFag A.Չf3c?mX}0Z3!%w<3Ho郢û9\eQ)=\$vFnIգxǮJ/|Nasj+X`t<*|9Z}0IKOcN LSvTv]2DfEv_M䮍'#*Ojs&nkX^\i2g@ѝwM~&6w(g49Rq/?TC̻gGSFtP /ɯ8ᶁJ~+1ڎ5Pr!`%HNx#xB}+;(${R+|Ӷ%NuLJ̇%ck.cORT,r8V\l-NC`9}GRU,<4X;$ֆs&L36"W@ҁʠZa-qNvE1|Sdnfi Ch8AI&etR~ F,Vc.Py[n' Gkxs5^dI=TrU@?XBn! Α}à4n>ģ,=gǶEѱ}Fm^LV3 g-D|KŜ7jb~cNJjq<>Jffq$+=!PӤ*0r&d{OU3-r@q"tcK@Dh e<Kܼv؋)p Ya!)Iе+p"o+tm `"Jri*0HŀHMIq%7r]BN+1Ep8d!""TZ\CcDuS7T)xuLIcld&Jw0} _V4(tӦ'mύr" Q]EڍsGaDh}s4I]՜`]qΐB ɢ3`14f[%Rq 1ODdA}lZשp&V8r_ZNF@G&jWJY8pJە>Ū4% ɇ_Z+?iL8eXrB?L$t+&iPX}[s9̀OR:+.\zf轑Vw.YT x^)F8M>VA2g5 y"A!/U^vudH֣ }(\CRG3|U ԫT} )o}'{]H U ȯg -cޑ)MD=$7օө ǕoqJ[մ~ͷ#cƛ̅#Lk( z,NvSY$xI&Z` UQdbgm;0n!X6gf,|t`]M+րgĹ 9/pB!Q Őʃ./s0x锔p8=M]k,ykl&h[< )sL2]Avg*DnF[F"b*wfJ8"/!K)m9V&%d㝽O썚bawvEԑzlqί, `N RK]o"EQY6V[6-[*V1uKP~/)rp刬6fn ~uЍf kDŽ%"+Y 'd vC) =͡Cy Am؂E ovq %s 5fjQGa9Ʒrh6n0@ Ê7atVKmN VMDk qٶ5#Eٗf/S=c9p~#0vuG,)JzLs= /}5ު.M8jʴ3'=Bh*b@ VC v۪A߯w)ٗP-umӗ1D+ƀ>*oyXB&wuwj\şk^:NKn<hdҍ(flˊU@O84f )Glln*h_Pv?)d>N$O5Cp91v^dzq#]WP P#x6HIۦZU1I'Wn|ν+Ů^*gm3c-MƵVʯ% )QGR llkpݴ<3}fEVA?W"F7eu GsBŭsw4JqgOw@2?/iLXONe> Q!Tso,(myFI:V+_,PG. zZ3ud\7e }:q6#m0N*Lߴq=vWME;m~hgzitٯßS.ME YڼiISNovavZrpL6ҠA۫!14ZKEoҧ }44Kmc#常TxHt1ͧ_ ר} zJN`[U=1 u Q} '#xq-wMQ8DD(!/7@M":usE]JABe;ة \Pm0?>{ 5q89{K@ Ix%eo)]qNi2! (Y0cX#R=+)Bw -4hJA^`mdO/ޒX0XxG4%)i)g>Q0mHuoO_OpP\wN OuwM91I׌ă#@ş[-Yh w|5cҴB<"x.U,mbu}Sv͠aUXF?$XJ߮ 8F1A|!(t5"lrϙ4x`HYzJo͖ 8is!4u4N~!l\AT@w,LPwn}C|NCk16dl>iSGgP7ȱ\eD ij4WDZ]Zb'r*hj>zK3AGw=els+T\ rWY=|Wϩ |-SMC!/__d2G|lX h/WBE3W6#`EW\jһ%MNHa=/l!RYI(ϣjgyYhL٩}h +yAd4P׺&!ʹ\R(j؆fB6+H8]F#謾NK4G %' J@uaI Hq fRiNOr6´b3?:Y0ZXJPkw->*we28,KN#ɗ8%/q{@R^ _fXvO0L8a!b, 4.S  V. X vj'l{^E\]C eb*si7..6 Ŀfzlz⦋UkOϝH3@,m+4,&t7~C:@)9y!Ut򹢶t&ak$\(2EsΞmY'AH)6rkC5x'^ؕE1< ݵ8ؤ'mx KM|h7x(蕙Y"Sʫ[JBˊpl$N{יmam[iWӋ@eҎ3->8Ђ,1H^k8Eo-O|-CmB Dcؚ\2LﻣM_D2ɘ)rgsզ{8X(T9׵½EN1r4rM6a%Կ (0)m)2ϧ قԦja/AI pD"ۘLzu)NY~q4!' !~(`N, |D8r$X1u:OOgL3aqǣWw֥K[ӹ31ސWf*Qh)E#@Mֺ30<\v zkn.<% R٢I~exrl毝֍i.]Ȭ#uV?=pFކC28m_b}Osa]O#t4,gKjcP5N|jD^ ^r_GAJLϓ7AZ 3[2>c ,[@;1YDU#"`@؂*,[q=˯eù4IE/rS1 ә7qʷhXiO(" gpmGK~&KR ٪paQu3&+J?gӕ{,!m嶕)_ (i쫲Ji e_l/j[zcP|~牉ħy#V3_ζ8Wn I巤ӏ5uq؜*S0ȋ8Bg}H@0:?֩8/%o%2̲g62"1a[@?mWJ)*:#d}Qz' OeNAUx`B N7#),3E8Y_^K#@,7zfQpq]_`Guka~p}nAPW׌;?;tO3f(/J̱6P-()d[02pG0GZ1,Yԩ)VDz +Q b]iV"Z`(AE6%lt]jˆr *xٷ@JFL'7}ַ(}9m#3YDR""zbnEIDcc_BuJdlit-dʜ{L0>|A! F$;ڌ#~.j ӘIdx%ajZTd&)[Xztӫwk$Ml:_+K+. C,fAFZ&jљON${E* I ݹS(G7Ө"h +a=8VtB=<պ>VȂ(qO:qY0w`V=$dK@Yxžb_ziwEV|Y HQA ۖBw}1,S'tM:pD(m1֣8 yx{ -ƅӨ4b51O~Tٽ8H ր+8X[.XY^ @G|yz}F3˧?=EdC,R%M:R"pWrE,Vx!a,_ѡ,1*-vNNUG,|&M¢\&8cK&JRZ.t?tSiqϬ3!`/,\K .'y*=]L6{WNôlfl ?lnW zmj]ݑfβ\n㩾M;`.(Ɯ/'o\a-C {4lrW,ގ 9_b.o?1\AInT1N{f3xc& eq"qNVw rꎃ#wbNm&鱹cCڋMNFdzQT.TpS-`k2/$3rv dIR;$3L|ߚ6o.H}9.K,YQǿ˄C'{F06~COBaŢ %r4gBg9oQnNn.$y=>"-T,doIf ~h8[nzbˣG R?Xb" quoI'ZhS!{}&(3AKQ8u/ڪ5 ATxXWWPBp9'BKR t0OŦ1\sst? _ nSeUt؎A؂Fѳ:ϪJVQZ.Ѷ$گ/>*ynOt>e2Bʮ0'{ xPw, 4kInA\]'"țil­Pk)?k6ݫ_BhÁ-븕g;חW;ն 9SS>Sa:zF͊Ѱ$]TxyAӷLo]n=R)(.xn<kFd(oZ]=6Z5;ͧk=`12-1R`'PsI{5~tZ@z8O*ݝ@[18:w? TQǠے1ccQiDL3.gdRfhcD<UpD !,0觜d#r,|nhI+*c?MkxgZn :roU𴔼0gwOӧiݎ!-h|B=[:E`JRD&Z5]8͒p-:4Ąκ^dOL@|e {AI}$ͩn,@#wwa^)W5  h`t,ߣ pؒYF6%$/QX ^q'#UaÛ>gƀxX8CLE$+r-jӯbGEh{۳swCG%y**\~>~:3odm~cV$c\g9 e|6qH/W OHh1;ű6-  L"Zh]QvcaۂB:?p+!|> UPY{\{v0B<*Ŏ^z:ab_& ȅƖ~]P$cܘ$i FgB~Z x[l}VI~.;S:z@oSfNbMGj#)e~&L eVt [%k 08C V1gX퉿`QUpzKrB j\0䔜ؠ`ϫhz˽&0}ILkMXхӕn \[\ V|a>~_ D'3Bwp.CF)-ZRlh1CW2)dT˷،Hc4l'+1iqţQ6Eo L H> 씄prURy01fw7x&C#Ѣ]50 %Ht.{FD,\{lZmxoyO/7Ȩ:$$ao VzʲTw`P FjQ/ؘ"]`oF.Ύ30N j~uKhJ>R0C9gt6 dl]M΋E '72-@tj:8I84WȸA$/-cǍk3~ѾiV7x(InJtH3sާߤWʹӖ&W7)>jp}%a#Daߖ)bH-`ԭ7Vd1DD= 62({4hujqƾхŶ"Vpf>E|i͂Gb< /WOXIWWۈeoyEsf&id/rxxޥv{꾑 h'[nXOקfฌfx:2/wVny # K0"#ii,ߦ_[ UQЋ@780< =6wxM1 JucD~y6 V b̧*#C15 %/;xdدͷC-OiI8ȺY<}k;܏_+ l6=*m,'OTOȿKэIbP?X<2UWO ZVv ]t@<,kҞ}21f1>,Eg/mt/&z<֣2mc7?nݛj%K9CmhHw#A0pkHMqRDiHN3:+s W.Dm$[vX ELydjqz2XZw5ܧ20$%*@p^>3_9h*I2v _18T`!qH# 7_V#s!hՑ0ILT?w󸗜T&Ldd]96Er-k/0 )(J'a}eO8>OA"q6ͦɭyW}{H󳱉';#92uR|wz" v@+ 68|=2:̪=Wy}G-Ύ*۵{nG/֮]2$SC0:0qL(2L9YYPvW'a3vlf_fS:[N@Jn59P9Y`t+T*pƆMB[]w^# qq__7NS/ ]c s,u|\t ẟrȩjeG{뎵 }cC_Vvy(b7hn i!,x,%kT\ry߰E((f*~tW)G.~`C`4U4'1uG[XLR qY$ukFS*/NFcϭU*Nu/fl[ ;Voz̢ m{{LM|L-vb{XGw-y^$Hנza |Ϗb/\Y2NhX.N4EstqYz3OQ=дw] wL\%| gh"?h ]` j ţAU2%F""}źW]V5T!^0 s`쉻v2~0 /RF* kb{=:^TNx2`xVIQUJs20AQnRP*DX=ܜ2E3W-Kyq=e!ĭ ë~$4lryōdh`|[fHHYb(9h{a񓸯LNvWGzE%Ez#r#oU:֪)L)NgICs}-l*/0VWQnA)_=)lATJ 1Z_x||s৹E|9 {̶?klE2sv+˪a 7JFF)\LlX=>9@wAɸEでHrBllQr9eRtǑ?; M?R܄jȰ'u}kȈêt%bH R]th7iT@Sk4XV\U8" A9Ao5eoE_`re p,-##_ք+5r*ƥpr9MܦO-g3?Qі;*l nޛEaJ)qLꭒ\_ %IupݲU*p;NωOafEW,"<'Ll/(+R}q֧DfωgcL:1>!)S#x.LjQd=U)7 ̃zyvu(x?Q1(+:; K:z {e}~Ƽ@15dԪ\(>1' \uj>x>TU,H"4 0MCfZTf8\H)m;TeS癬l n|KPTS!}j+UXNϕ,'v(\^ }46׺K eܔΧBWO$-o?.Pw4t0[xLkTZ]ez+q>$$ !>]aUu xzcY.gnaFtq#HO}a_4C4 -t; 's gA2JP͔inp?+\v-CH h[AT'q:骱WE7$Ft⏘V<[nI 4KwqA0T[]1A.$LVIL:Q?A#LeS<EGm "G,?uU6 'gsѶ%(YC׌W0LEŮz Gdv!ʇǶjV3_})=Xg{Yi1\z/jy߀㝭=)n..|`y1nJHH,f?3WC?lM`/w_(7@zE[59CXAp" Æq 7$"ѫee?re1Fp^ gAzy|xK Ĉ0XXDc: 6**YOȵk@[UlB_56{]!X6 ;쎗:Prx?zT(S5~fJk`Ĕ@pXsWK#ٮ8Y'qR;fa|?ї6M7JbxЎs6Cn1h׸#ydCh g;2]zSFY0i73t&D[ey%o'&t5[5O skox=d*Iwlj] 촔?YN>O> ed$[gψQt WU-i0FY^ݎ$ &Ϡ|GM!/pT, Eb.- S('1Kd 4F W$PK=?Q ˅MN6*W%~ Y(ZΔeGAX҈~'\h.ɭ"~}=SE])5‹HV"60`_0{4>1|99.CP\ۓuyFml!j`uƾ2Иua0{,erP?&^=i&@ 6d6hf|p>?>TQ!]^bL7k۳.zułi߇@E3>'oZb6|fI#Nba0ٷ‘K[o4<攃\c) 5QT.|QF\ C]eB<  !:S_/2eڛ` qn)S287UN &I.>b@$_j1vT"Q7 $1 RtQt ^ηn@D7f9n3[ `-ELB/%ʕNո{A6@n2~'qcr wdPEν=!5%[CQH uR9v~,&%%l l%%)U0J勘أ؛E";!70 d˗ᔈ(i`Wh$aUnpXK7:%GⶊQnЏC ?!VD&G>וC9]t-߯p^\V 0gpѸQq[C>4C#pz>/ jPpTRݫ7Zt:hNxTC6=Ƙ˰y8^#<ߤK~]Y[boԋ`{jo& 1uR\-ȕ 蠗WMudi#\PSTaVd^;N5Da̍YTuQaҲC-t̞IZK;Be";yT*[0Y<KӏS RRee7^sgw.=(μhItV@x.m9{6Oه{$t.uXN~جq x#4a+fz5'?o-Bח?a <ӡ?2DHq(4^P)8 WJ%6%od"lHQP߆hhFB<6Q-F-nn-G+ZLO BV5ns{-^1 i9OuyvSA1T*\r}DTsC?|ڔBi:۩ f"h0w`s9B'p->f h fI/N|Qɴ3Y̋IuM#cmu;.9-qx X7O#Dx_j JSqZK/(?Zx K_J 1>^VFv;]L모ToDb뇣EhMX?OL|,j8CdR΍,d`oUTiuf2.D> FNxcxSz:/]570bTʈKL^_i>gnc#QYum7B)h/u *'um:z*# 35XX[g 'xl*ϝ'$KY?KsDe GU?wTc!O׉>NYsrbjusP*۬X@o:ORK&0rDHs~=LlIii.61eG19N~:O6fVo C0L`ObP@?݈b&2McȤ`? / $^Įk(98´R\OGa}/dDf_}܁DKh ^lX-:W 󦽄\׎E%]PX?b6J6;|h}8<"^E7:Sy7MQO<&' 9hFyh[d$6QKފ8ceٿ󙖵SaP0e`T,7(YKiO2bOA[1EܐK~WC\Q F$?ΠpE(9>d!el;<4Ԍ^rGȻxtVmBz8#{B:ϚscdNc|iz}|6_^໹cvCyEvw^n7"t?E_XăKix"D9`w}nj@<ŵg&p\/ Z1w~#([>vц;-fQ*5zS&X>ȯNotbD^@ 3fr _G  SZ8Xs δ+a*Cu\/W{io<*1"Cs3wRKbzKD,,DxQ1'QΡ1@,hF̠-Dn0nn\>J"Z8%Z_['eA2/d^IB4˘bA: ˺bEG>4[aKs{dhQAZDx ɱrbYP#X)W`{K,M@b(ٷi5F78VZ#UBy3d-Sb EkDD$%OjZ޵Xu<'RQK*F Ӭ/E!v@#XuN-tvdʣ:i, ;,J>K/E 6RYX U&ChGܕeY)gcGb賑Ӊ PٶԒYf( 0'x{; Us$ fp=( @R v|#b8M@m9,RCa5jGfվ~,ZSHJÍ ?zgw#ƴe)MH&J\.2K)%XGMɝ`y ONR^޼h n漌C:,U%0s~`39cd"~qʹԍq%z0@OF_)}Jڃ,C@qvdWT>2L JHW41'* r~wXR)Zcj!JdpŰ_xqChb![hU/~]ъJLRfZYYپ;'R7_q&ХF#y`SͅmncE T=" ;k`p[jUF gɺb,g}?<Բ~(`HP@HC_Ը;bd!0׭@([ĠňN#fmHaM9DX`cbR֭c *|trS e]"^͎ 2-A& #%:)Hu}cwssU7puJg\ LZ3.Ў (c1iM, A>U/.v ߞ ՜5? :uI/T%N_.OLs>Fەu 0s5ggt:6xݏkGD[, .+LtGC 6E,Sh?lRC I EJD^ 4S|6QAE94{5^2b(84?SI6BS x2)x: \![|[sc;/^AvQEvQ-͡/'mJ0>ĠPQ eKϬzbߥ>D.huyzQzPTzmF0:8Ѐ |^@8v4:EPهp"#&M~)-֎* 4`?Tr`p/I<#J2Luk1#e a20mijCqoj15SNRLĦ׏iAHj^#<޲ k?t!4+O뚊B(gX%D5>#1܋i־ٟ%ZwH Ogߺ@ !8~kVlf/] vC%֐8e%BGD1 c NP_3?I7s&lv湟,ڭ)m-*"[zl =A|a JE*/QQ2N4kD[F:2aC[E0ָ mTNv'b9١6U[{qZ2xYe#53h >8|j`"@4DݶtA t`CG ؠ"F2W8#ou?ǵ.pe WQnoM vXY}Ti!'1i 昦<˪7w'J< U9} !Ѡ}A|qEq_[Cu"& Úo{NC'e-BC9sՈ>&!A!ڢ7wYpt5Y)/̟Tڿ5KL*@iL ;| nP[}_ \NOSVȼjV"&g/5Fe]s|z6mMk4NJhbC Wh~9v] ;<6>=쯮}zg')66pK~ AMU.- T|wv[fe?!]|T;LHBn`ٖ q[ jc/*fY*{j&j Xzmh;nbG2/]@[=*N@xOq6W}F}cʗA$&¢$e!0{L`pIWx):a/wOPzUek egHlN3c5zu}N,̾=GO2LGj<n$(&pHy§༉Rj:hF=:A IFu{fDŠ^jE^N닍Hvި5|оZe ׃ iވJxlAlzPupq) ٵmqd o<D{Oug\GF%HG4l [?s&QocgIn=NtNlFiODniMC*} 3UeMUFҬP5ycCJn{{b0CJ |B^4}  3*捥2-]j,$ iWZ=GooIp\Ο! b݅A,u{=͊?e UQw Fm򅻁nPFnM EC^e٨e~&8"7$?<} h] Z1 ͑n#͞6MtL rOh<>U#<9KiXO#S3/,D;{J66W-k~X#c*KvLkЊ*B!\+'^p[zV|OkU@O{3{ewj„46lCu;_1ǼS_4TM8g6蓄)oۇRVxh߼%3[  w2űvrHhyTrjK%C\(0N>^HZLR|J٫SHCUn2M(^J6q1p*3А'w%'=M8zCr"[ \6uTA ~D1V!O>*+4/lKFhJ5Yb-f\_'q9 ;Ú- z7`J]#~5oICbdy}N7=XSub \'X"K<:"C0M$‰uR~ԍQFN1нqvsY˃%|Ek]F&m TrjKLgRY=ƳUc ڂׇ1;\E9~u4y3Sb3r7TYrCwd܂Hҳ^Wą};*@5jR@N4(«0$J-b.+{A`" GՏHBn'~(>X@H3Z'L"Y-(@,J=7,) <#5W*:Fal)Octh:m$vwݶӾ7w?B 7 5.rOEVgTKK>ܚ@7vDTP7#"NTBdJ}-ve/H&Un{gy3f6i nO.V5=7lo ip]۽הf K)R}׀_%$7Wu:wuG݂ȍh֢< +M*fp^xB|]LE~9[K Od"fv>^Mms 10gP-#+=] 8]єE|q%~.0uXe`[6Iw?Gd Uu ϐiIn8GFq?I@k +F((: )^p9K~!=6XkcRUƉ k *"e*¡8e_!$7ы;I`bYO(!G :+|]ACR[e]E/eyʿt߽%v)d' md ],G} oxS6c{ "=6<^%7}x",^W `Bgwc]Tvp^6sLK:kYbiO-k_jGHETh ,'j5gES58kBÒT0ImUaິǼMM#p^6*v5 (jrHN>7j9K!=S"#osC_e2=ԄV>V'bȃDfgUv5Js|Y~CRC~8esPDr}$YKrzgTb6|րg`0O6&0CqR E-'/OV䍹Nuoe"oF4.?[|u(зA0+:C@sʜ;gU*%ˁvEk^[Z]{,`*iZ,9<5ATj.d(@,}wAH9~0ݸ~³o`\&C p. B؏]$~d8x8PL5,̳)h:(nv8oHﯻ[~$Y\K~ZSwtsZ-.wIZ%]K@K[W'zv>HՉ4{\6j$(c9ZH=s8[vW'{e8TW*TpL*}ZN w͋\<|s[jE8]s =C T8Q.Mh!S/7xH4I7AR%#r:G2d/ @[&~j@9OJJ!to]8];6niAD1e>Vh)O#6@]N iijYPdm~.Wǧ6I-`D/bt3d 姽F5i˿}Ց˨h-t:MԽ[0C]6sգnrEҴ屫XYznߢYgU>KHl䋝]fJҷiϐQ(!m1Yh{y@i1=k"Š!uvX!ܓ#,xj95llV鷙gJNP:4湭iS}֋vS VlT7h|@<ζCόS 2M#kah;0qx"dUuU(8\*4j=%YPt@&7s.ӣ͋s$&A)dEXsSJh;zwbPIdC׻4(3^.4fF`}RWw9LH7ƛEF6QWV E~5F8F1S,JBEh [\]\Ų4*}y8:,|KfUuD_; + x+ eaVxTT%~8Zo9e4\ O\qt*x"ӴGeNDl'APL"OغAjQWsgB1(nG;6b<fy|+?MCQJBU)-Tox{M-+il4`rI}z)](Άeh739uAl M0AWXc`QhxoCcQXrw n:I"tn dG#1_"E"rLN QYnXW@IM/42hO&A-,.V9w) >wm e]gNрϸrGt|Q}nzq ҷW8?sgeMR< h.muLH;aHV耊`@#~aI^VfWb>$}S,uS)xZSGLr qd҉J' ݲl93Zk3l }0(-k!;~^>_"x>ɒz틮{Ow%x3mDbA9R,\ M_n j犽,6iU>n yc` 1jYtH 1̬~$"lķj Q  B^an`_ʒ *_Wf%Wx'RzypH|W5ARxA xa Ţ-x}Ī׿moNꃢ**6)g zGs/F_#ZU0uc-2nW2|5opǛ'n^8Mc.b?NJ|9ǵo?*Q6}fN(T`+KxO m|,9J0X*9w]w>jyPՈ=Ҏhtrejz Yu틖~Co_$QyN!Q5"qqAWS0WD0G$jP[|eӋ=Ѥ`%4VJvT.|b@>r)|]wǂ%WB?|W]k'tSP*BM2heVjoWLn!ia5#/Y),=杶l,mG -fWaHJZF|N_BtZ ߀o힉Hb}﹑˅Lք)A ;8ܪ|f?hQyy4ÓH'Vbԇ6Ae ӐF>Ooxb/YfSF2+CVMVmEbdW XԐڱI2Mq(k`:H8o{Ev/ї?ЀLka1[jڵSBxpX9/"ÿ䡩ʅKS%-L,;fEw^M-}mLPKYHk%Zu}W/K9noJDqPְ0IqI'15Rqj!`U/i]T8_I",6g9;g }HlE9lgS1|8sChu]'D<4º룋o+#{ZaXXz:¥;vܰ6Ö7Lټt!Hm=R zJt}^m4`x` KYtNGag>Zf/3_m{#VY3ƥdȈy<ۛ |k6ՒxCOr8'W=M6&}z$KqLgd3L {t ;߮?:zJĊs[Ȕ伀b4rXh:HAD:#+Y4AvQ#JWoR9ɻntsE1:|S&Ӏmt>w(|f, ,gtqZy;XM@&$TcpfmN\nԷۖJeL7lﭞ){ĒZ#r!GM(?7;{s9d|ͽL Aⲽnb\(]XbxrUu۰ <3cl[vYP jɪdFrpVđ>aO`D{K6׍jB!턖pv X GL}?#R)~X9$j$S[51q'<ɹ{X.T0l2k}snZ!g"SR[W^Xk}&^+I,h!wyK!1ß52PGYZFP) K #1H> d*\@Y +j  mb{UGyq1+ -ffޯ-@ 88VTݫoT/姳8ŔQ!L̠2bn 3@p1PڸVYpC 6'*(vfq5⨼ y+$9ƨč ~Ŏ)'S0bdVӓ?Ei D.UĖer= DCɌ]ЎV) /Ph(Yn$,7[e73Tz1`Qcxy;>ow2DY !>'Oi[F)K󗸧oA4_,H~h 2<m9qޱJyN {Ipڊm҇f\Զxc/$~%kAxҥJ"=}w{j]#%:H1XS-X'ZJG TAzBiг3+^h't/ ȗfC)0 ī5?0\q e'[5 C?fGLrIM@kd?_:@mB `/Y)x\|{LE,0֞7\K(@xpz,^06w|k腔ʇup]̠ѿ)aJoX26 .d IŔ=.tJw&̮3$v[꫖ntQ^%(1цjӵZ7âNprRy\@o4XfLE qppuC.?~+sV7Kno=Oz+{2 ~r:"1eBl7U-=[ VYD9V׍{[2AKT.b3OV_00Z>\5P}* "y/ 0p0K6y|2P=ą34|lq1ltj?'"1rWU ܩfY|z)J4ݙ곊,Ђ'Ld#s6u j eÉ^oH92Ve w%PBj63(i1+\Ў_b1EC.S|n'{rTrr͂DG=g'N9ʍxi$\*U'Bz,QkzPn$ ;,' ! ),6L)yPt{dg[Kv^S +8l#b6֐| ӌ -e[ A@I$Tw99)Yv Pvq! ?YY$ʵIzTw0uhsjp+aDGlbOoW2Wxkg8R49O$z ~Lڬm ;Ԯm5m㒑<_w>`Uu#wzh{Rѝ` w|++o9Kpf8/|?-)+k(3^+? v:;i"o%]A+nUi`&`Cƪp d+X S>5$Jݚ1ش! CS2*ĴԨ74rZUI VADݨ]uX-#iѪAW+x3[5=9p<5"'6ݺ@\!jq&Yx~N4Fc`M8Vʓ#;3揋jljț(=d%/H?*o}xU|OFK/H&!A@4p:ftuNNXOo3+,iT&74Í7AmZԁg}1Y8F-=)lSLMYhwC%RآLJ,ƂhX?PHƁإ %^>,dV>>O6r،F!A1w%Y;?p] !}q w}npdOHR$ b->f[PY@rSrxX VqmN~$&Jȡ5&@Kߡ$F36L^G$*BU&@@>@vǯ[nYc4b᫔D~( 8|ij ;@i@G/\_EhfacT*\ $ mɛ};H+2(KA@ S_xCc3UU*Mޔe,(in? Rj;T UF9l2b(1\M|?bAhch%⚊'LlY X~_83LmbKFC@b):DsnڝEeڰE}ppc tjЁA1BIķሆ0?q{@u\d1 hlL $sQ4_&^KrHW)ӵT/9e#V{c#|/}9ߐ^\! I-Dlsv@7A ?ؾTsc]K3#vt ?oe:egUNWIv0,N6,!k N/ovN@$KBcr䛴vJI~122|'r}9q*]gL%lȴ%CqDۨ,Nrz~uگ atp6+ؖ\SƟщ1$E3RJf*{b]zvt}v;R>[%RHi\ ?IvUWfq^Auj:Tndj O0׃oKUV6 <ko r/ٵ5C@+&8%@5d\`wGhQv2C\Gkذ)"U gvTÔD/!$ϊP˨ FZD$<-hlQY6žMLV#AapwXtZ!7eue'!G@u5&EzfUq/]jhDn)v2]v,*ȺHl)3eSQ6`g2͇sXT!#3|1y–YvVuMخP(Kjbw4ZSSUVTN\pGʻ)$._' Ϩ~`p#k/Uui_g+yO]7O4OJrf|^7a^CF?{xcd&8E$UJ傳sd5o+Xu8uw\s ?yUn:ǜ:wr vrT\(P#Ot_5XDWyY*CdU{vokZY`UJaV E&v^+U6m )ʁyF-- 0բ׼ lϿ6%>a'OeKP}!l~}@1Vrv)WK{vb^ $.؃rJ ]H7GO}|b8 /`Ǔ2y'.jtCЃlZ/lr2~5;y墛#70P)2.Zlu0+ Fs9X"HS#-$:~ΞG[`ʹ鹥r/DwE ePrx\=BJ0/ON_ήߊ܊\!.0 fk'׋D~=4RV<ҿ5E*f7a̔anK]AZ'&U}pc-UVÃOr`OEW>OL.k-/@gRődt#"pTqFnTKi .o`t3Vj0NGSBq$q|#wx-6mPnijᕄ ]_' ]s|ب L9׀yH5hauNYЇ~T7z؀3qWTAH>o+f?_ U-ٍr/-`%.-_ǻ1paN8BIB\},׋Z X_~N&Cf~Rez$6"'b|[fZb(znqďLUuB.G6Wl'.#kxަ, 45%<+ Xwm|Ȅ2+Y6SXf~UUAF\sqF݇a]iF.Y 1G,V'ؕd:"*I俭tSmК)aDQtc{B8^PH6G(ig]Q(^Q1*BXS]lJd8vCi$lb  2:8G>V+xqi5v/p>BxXrb@clߎ:3 bŴ_rR]c-3NzthR gxSe-lۂ B$%#,Oz/Xsw6S>,NA@ 4FUBA%VߤufG*'dW#ֻ<2Jh wƯzA!`$q_fڥ1%V"#%,w|_Lt3A6R،߶1&bHԅW^ Bsd͏TdqQQ(̥ %F>bϗSج1_ cXttԼ{^{ yG~DAq2/=M%wZ~|Ԧ ؊ ͷ a]f6DP7қ80鬲|,@ 5mưWx)S2UېY TרL AP)V=aà|{224ΑG翴snFIG-4?^˰dv;N 꼭q0ׇx !dAawyj; nmuhUo*r=:g :蔵RݕDcJ@sdHY8FI*x[Z0fol/}h)=1p~& y׫j~iɍ$_=hh찭/az: F )ԢmKFY:bRڂ ʹ&$5G.n0j~U&%(vocݫ{5w<^ \0 Fӛ近FcuZ[r|i?Cύi AԜ=b?D5"`LYP6wҢ lz\OW[D yw"l^F.5{M!*ټ›n5^YmUyGFBoJs< '=t rsʯi׵II TGviڐиӨ%R7H-b5.mh@ml-Ep&4H>Bj`,~n&KXr$3FL=m}ȑǺ5/G߸6 4JRviHO(5CڃN9qen)LXAM]Z_NWR`=`v0:ig_~ erps$ ڵk%omYCXc Re[MSt 0Oiten+x! ]<hZS^$ՙZOmGt}KeO̶ a<*tV?kOk< i%ECm~X4( ߆CDK:Bۖe-dz—D'7p (Ф=𾐂D໭%g"cz(v̎NA';mW$kjhpHv~)ܟ u"x: k1V^Peu]#맺 fBߕ5F"; Kƽeұ =H eLA0?MkBRu'hxVPe%&li%[9_\g.u0q]p֍ pU%2g^uQ":(L?|v+VW0 ^d 0͵k"LaM^Dn~fjV9F@[uaկs@@ꭲrDCcoW֎EؗT/ h.jmZ<7);zI顳UJ,,0OG(CzI}٠J<֋fW}[U?DKdD33W⇫׈+@gI!~`b 9ͬOsV+!kAxb K #cmd}hCtH_Q0XP +CFF9KͅmjENPF`Φ=2>K?fGpE0FF̋t2($F\h{m; ?k U#(ND_/"3H6}XjB th)rHiܩ!8OÖ2M4adD s7t\ʳ iİ X'P)Em{6(0QBhgY̯_UgvgMOB[x!;4LlNqF@-ۉ}*'NWp⬽b'YS)tz\Ã]xSOhd$* L #^Q`/E!npdl=H NjWiljo+A.#]9*5 #nH\焺ҿHE2d#GoAso([[4 oLTj uJ`!x\O2Hz]k\UWH|v~)Ut1@);7yʸUp^Ś[ofw?SlI!úvr*K]G"pTQRa]85$14s]n_NCt?`+ #aAVX`\#]C uUp_۽~92*j5x U,%g]wfڰd07XoWHJָ wlrF☦N# %ʢG5V}4ЂD-X1\_?nwEV!lE7Ȯ^ hsvbX&ym*%'ҍoMqN-v)R 1SSt?խg(j9jYu\ɀ^HL:ĭe;!NjrX.mA%#\R}_{Ѐh"ʦ П'=˷1!pvS|tN ,z7g>&@24UM }Nglk%mC`ǎ6!(o%#E@wx+ɍh=R~$nfX{FIJI7o }q1@[4q'6]̟dbQUg0 o seC!MIH!'Bv6v( 4XH'xz.Ç8GM~ n)/nU p?ȅÛ҅]L,})/HS\hZ|[ljQ"~۪s-oboX4-p<^UΒGCBA)?ե?U^bȱI*[+zt^!49ED @NWMteI>\'ųƇ,/6ZߺQ ah*"[oB-NJy^fMXNl6=srͣ6n1^OM ZShlT%`y.o?V E.,<|Tf\$oN$+]VvT0ΦTi&||Ӧ,Htr3qTK={~HtOz1_cKn¿oPYj<\n.͟ ME0` ̈Vl8Ol Ŧf ̱$E1ZꊯRu 53ɃE;׍3Xu L ŊBeL _g>eOg BV<`V0hy8D\#X߭߶67ċ}a+u| U HG+FM ߑKƗjK2ٹoZRhD$.Ϩ6Ftu_NH.lSn[8% ďu+(~Dٰ*'1A3149tĄXX1"w5xt׮qqL/LK;ݾ oL,r(A1r9 &^Ɣ>7sٛyX fkX[5r2e6G ceû\!/dKZۗEeAsLfTsw>!QQx(U1~ʥEPx UkWHlK?'r 2"L*/#H.5|%[zfN DS!- Qt (F8YWY+==S0y5)7Q_\Qh=-K~ZTw-Yfg7g% jXḰSѡr|a?SmX/PhMVR"yIiLb4W)R"/!Wb|e" slFZ#`,=-{g&@ ~`虣\hw̚4}-T^on+E^0% W4LE36C76}iԂ*>Ī+dd2a{~K"8tn ,LYFgM:lxt|y:n$&j[cK4g?l9I/j]QX ߤ6:/C Q^UcZ倖2ȷ2+[qPχ/2[Kʓ 2?K G.|A_zOwr5 M[9?T̍Y8D38ag~4Jb$HXsh5A"93;7( /fe=jQxbTzPYҫ?3V'Qg5+dcGΐcS`crtS呾륄Or72(5@4Z)Mk{} !l1(wT$T#nT &sx\PII&]Nu8NoSfe%H n!@HY 9G͈ϗy$…U;3GqlwO8G&ƻ/e!j &ޑϔ!RꖟM᜽?U"W>g%t;Mp^(az@=ӕxZF\~V:,HޑD}[X[AZqdDFSy\k-\ҕ98*W[tżx쇧f] j7[>a ߐx8V<.xpPk[Q Jף YHPh$u[-S=*C`iW<7qC:u';yO5DfznOF+ɵBhqŹj! h$8jȩ6 |&3QCр#O r:r, .#l>;eu}{lrE%]?KISrP  +6BÞ/ ovFHxmL\Fgl[2a7_,[E-3ojUD'6RL/or!@ŭƇ?l@np m]nVم4Yup<1ENͬqF׮@CU^y,⡍tU?`=UpRkP{ cMHɥ23u2r,jm+"díw&[zKZvbxD?yFj(_u`a)\~4z8n?r mжD{p" 7LzũW~CΔgS{_EYGP&?x^=gft;vFZaC'ۖ~l9b]'Zlt5ϦkN-`5!xwx_G}H9"T(?_w9]MCVm0,L4kAJ!ΜmGRSjPJT Bt7m)n>o#;axi΂ s Zym! 7.\pĻ7.hг'_ MAK>j*{OTJ@Y ;r mZ9 !x!d%VF<|^,Dȹ.mb=<., s"%X8ȓ+8v@5{=ٵ'9 |)[3Gk0t]î X}PVnj.֍g\Tf|SOqL`bIMݙaR|v<oWG0:u߈C⋺oў]QӐjAE1gK6DRl X_g}Ⱥ_~3{h"h׳3 X}iRxQ3.9KF^6pS*ajSj}PHyӗlL OƝ_).$V;ucUUJs3TQY@ zaqWP]i՜dֳoM.<:rKA5r B}ob @5H9n6SJt/a2:Νr ~P`*#Q0]AHtċg@ @aȔ>=KBLdtf9?](C9d^AYx17}ų"0p(ևii*N>\`#ҿܐ8l3`l}>]ז;C̛5u]%%F-̔*PbK ̜4>voyZsc{(18\kh:Ŵ`2 Ϊ dxm yE'se%QL[ѼWy-/ϖ d&aCڊ1{N xaл6p,ի*NpӁ%N@GP zM1d"VɅ%z,SCתqx&f'(1'Gĥt=Q6>t80Jުj д^v<* R#.,ڠoxiA3JiSGk=bzC@B TڞDf$m@Q(I#.ե3܅ȰWjReOcqL%̗߮m@8?M:޸~آ^:eA!]"S8kg>pc<7gBz#}`>P7+Nyqןpy95QSCHA^7EO*v /c%6"6$Z\Eh̟gWf]#3L31y@ (هh):31-8 LTGt,0csnd4$.S 3+Q{$6uQ&GZKd Hx:Ud[{a{r8E?^I&w;.2v]~/Bc ky6 [!g݃ѯV]HHW (O7&+VoFw!Bc7ϧy;ՐfiIQcy4Rbs/ofPXV_{|͏]Y naw2۳U#uxs;K-ś8-BjmcX`ߐxdy-CS>XB3^_e$;4'  eBr]7c1eC w٨saHҊ*' GƘU]J}r>*-ODA V !_&G+?kRX OEDntWMJʚ0 J3&HNp~=^픜ɲ L,3Ķ,pT_Wbb;\tدu٘ %|!lR$7Q52R{2G*Uշڵ7蓤[yM}7m߇Vx?mQ8d̼GCmxNu=-vϪI$-ƽ|`8=^~Ẇ "S#@yY ٦vB e?A lf (;&iP:yaSOgb.\ 5 |>jIѽW߲ fɼwEKc' Ӽ8NxelGuCI +_;2OV3qCF%o)P rT ڠD&aӝ傭;=[-IkQbB+N1+ y9s1'N^t=xJBtKer9Gp<C(!*㰼Ԋܫ~a6+$2t CU5mc nD<ǽ<ci!@dty7$X}+PrYPyiq@؃%Bׯ^#?I!Y[CWoKώ"Im ӕT@Nv-yjtX8Oպ(S0ex- ?Ih$_osWns:2k8W[ \:RQf[n\Zi$2Dr5A8g? $fI1^D}qMTnS;?(Br`)͐҉; j& f7vd}5GE?/4Z;]}B닝 ɤuetG7!Rfqd݁1bf-5"eZU`$M]_(j74"GA5fŸP,s:/SThD;Lsܧ2(?x`4ҙ ~5a9vOn[Ǔb*#M=OZ;f9֘3fa/qUO +71>qրld6K5/m;-'/ UTlJ٩ۮIUГA}f Av{';fIBT41;m炲if8o {뇅_ 3l!L5z*ؤB m}x% pG'x7<;@򔒜e l )/aFܕ=(,@ct<^P{=M"(+cXMJsNZZ Xf}{SWIt!xqTgC4 S@26-鬗,}ԁ7( 1GZes> VYMS{jld4&By@$ɄuH[*(P }rBs\w KsKD6?݋䁥- \Sx_Ť訽{jƹHd z,4x NX\bw;8-nNE0-59|,ĸڥ>@ߒ^nt U!B]E e3BlrQ@E "F(@U9r)8[6"IhYB|)+{nN')E}^76p8Pl߭1Mn'IG8cwߍ.M\oh]ѨPK6_>\u~"Ù.^fR'dmyt{Cs@ ">QiLis]]\*i9HUp\aA ^qL39ޤ 6+bcWfKo+Yr:_?ZlMgwt2 TSXy"E߉<vdCIt9w{ O+aګk5}9=Їʁ͡]k~}!zܠ6p./CNىFJ5~= ZYܐ/.xOf߈1ґ3z 3mjQb.oǘ5E=yU 2p,t%Ff< :1|>}/yD']  !)Lj3A^u/~]EU-ZDҘ>vfFt[{R)퐗.d#c1H<=| S ! R:aN;P+ S f 'm~au]U!U0 NH x[Ãp~710|ܭ.EӄVUONKQNjMՄ=?4p_P1Xs!f-+X9@)-_ e@0K[e[b2'$K> R"ޡ<Iԑz.ـ&(}s0]ZSk}8&JY+d_ L:Vfl^9F[b fz-./ >:Մ)F.-Ve϶Wn0)5;j7Vc]鷹K0)}v_~HfCOGG% \0v9| ܙL@t9-7{Lĵ Rn t/xO Ets\M|Co ul) EES;ea-ªA!?T)hڋ9wvDCⅢé(؉JPdg2JP lßmn'}ԹCWd}ȑjNe1qonPzu\Τ`8ZߡSW]ZJ딭u*#FY%y6l䘙7r Y݁'U&q-6h1K ɭAZ8; '+q L_8"K7F ^ߦt9F'uۖ R&6+H!C^C+2W!qd|h#crؗepVaNZ~I[!qΐjd!?9b?^=t,f8&BJh`oFW[U'#P/L}H5X zƾl)D -2ֵvmj>_Hأ2@S.VVEeI!0 8 N,|{H&ʾ/r7`Ha=l.c#գUNCշ^}J̀w ㋕86aujSru`9xoG {3=3g@P3`? N|iMY%F0MPܙأ OQSő`>w@^n{*\V:m;Nq  Ͽ'm(0rLlnr+«mmy",eVeqeķ8 )9yAp ]6^"/қel+A0#`΄>"Z{k5;,G$XZv韗6K_cNF>KTnwӧ@؎;RhMbZ}Ϳ$8kGg Rcl鏫SҮ>Wnkr Q+rѷu`Iգ$E_%jTx [|c{z'RPK$ZYbd'<ϻjT 9t )bz⾳Ko㓆y*n&>!yPG A$ynPAa BiUi2YV&rlPjk"&^DJy_ Lȕ,oFYJ+ۣ^^ @A@6U;,wcvHe=Ua삶hDZWz! 7+< /5iRܦ\{:X1oIN(uTݟFn;,׭`}U9fk?$ިtOYj&>!kc$޺'}VhjKJ憡-1v;X= oEPO :N }h~uABddqVrj3[h@['mmeQVnEjͮ&sCk~Y2Mnl4ikګQm\SOk6@DõIFŒ3EyO| tX狻#eϫ;v '1O/\杤2Xk.jyeeѾ ՄRlQ7GC&Dy~rT@[})L8:uxcYqOT4]a 6[X1;y*a'ig^:@)/SڑǍ<~medDpnh,|EQ{_2+:\`Xue^y*.3C- 9O  75ՑwL}IQdѳ#R0y .R Q([ӊWnVse}@sPmc|@0֙hoAF fJ PO~~ f9Vۊ>ݢt7}7z_`Ik4k/D$U8e| !VAJN-Td2o{ƜGqs :&0, -Jۃt(5a \nΦ^3$>Kpg i \3 FiO ɞ,2i}ME0;&nc؁-nᢽ[*~c9˱nG\5N)G.}O$a֮pfrtዳB x ])+S|e&iGA3F@̟эKSqޔ}jI\)!uB1XD 퍳tȣ|I\;L@B#:XTew~wt-c[|8#0%EqW5xk[/>:s9ꖆGEXzx'z5Pˋ|HA-aY&@TZ=k6`bGySH>]쮲eAoa9 5f|=D9r >j~=>\o•{R!*$dfP+Qw49>o1 ,cTnbv!{X]P+TaUNFͣgz3eO${n?^D2gRMcf!7 4rA8 [jY) u<7A(STK,;)i"OF'CB~fQU̿sa gGOf@i}6nve,ı.T>O11sS^Sh hDX:'5CO9$#we}Jt+gB|: /3A* ;& xB3P&~cyK/"IQ@ F/}p, 6I9XF`ihuݘٽԋ?ml6K"iKZ12Gt2^(Ue{qS ۴ܭUtsn=Q9o#x!~R;Th!{MGsC+G(W)5'6mI- ,u2+*n b ٠qF- v}A ;˨)|)_wէ:fI(KiLARiJ!]}=ꊅ[%,!O#OMG"'&t=bշ4j.tc=kgeSDd:,T'`Vd SŞ&&q8 "]@-˞> ^Kf2TA0RHJpz..YkPRDL Ӭ`#yOHtpnpdw½6ų 2t$zeZPÖ h淫w w06(rbP۳6cs ]EezԢ_36պ 4^փ/iH?Wq_jωD+ar/O'Y:?0zU+[RZO: eVǵbeJ):? $LJ,T 3RƓV 8  yAht}%p cڏ^c~r|!GؤbBghq"iXM:){VɈ3Yof P=!Q,uWH_1[?zvQ;| }2o)׳~a, qZgDɯL J1R[0 1-"!I5hF+63oxD!_ڟ`7`Zᅥ=JP/W tLy۪1V!3& qaORK^8uHmřuP(="S<JBSB@/55zC4Lir{ |:"rhj4=Ѐ.Q_]y;s | ?9 rYξ$ 5 BQ؅n '(2 ;OK(W6T)o4hgfUTp$?nZP|AAo0~~1˰feɞt {uZy܎ØL( 佡jXbiF"xd?{\e\hAɾ }/kqoSoh##uFBgDTҋeŢ환\*Tx ɖ l~VAS?.8T?qbNUW+ 1a`" UBRPYU$HHBY+%bgp/n݋ k!锭6;F%="a|ӃEBўuS[!R3cIhB/A@ "B[4&ji+懥Rc`{mp^qH_l*ZV>gS^]jRa*}Nok,J$pPv;YՔyXh_K^_GXd_l_8c"iRx`E=9X#K#!ld%[LY$Ŧ~ ls}"՘qÂ=wql$"0b?Vџ)X:<5ٹ :|gRey:̗hsBgJgQ-+ˢɶ]6$HjꦡވGF"xU1 EerxgDz/+/fc%G9Zf;T-@\Td,#eNc5rywV8-$Dcp۝[5?WAϦsK>?DU)syW4K8Rf}*O(h;id"ǣd^>`pJdD{b"-3CQ  V[ާf#/Nu&23@I"-E:7Gy Y9w®xJĚ^oK({A/dl2+Y>zlYdT:y_E#au~ v_β:/M9@`&rl *ۡX;׹E;W>88nTI P祀E:z6]ʽ:$NX0ʙ.SԹm<[*_'&`,%(Lw3@eX2@zVFַvw<$ץQ_` [| {8qF5 6y̒# &F1-o+mTׇVGk 4g|&/03fޫӢU[sż\V;M*V(  ^mMB/T8<|F| ?T"RFWf)NlAf1C݋M*E2<Z\邖lmrw^N#r&{'[tӄ5_ gi u'R3bCT;r'i f ~ҡ." 4iH?a^ol'8@MI2Pgש" p 8ybFF@nFYT]ӄ p{y/xGXh #P1z/ź"t3&56u}cw8|䥸{X/J~) M./&=3ZxbxtF;g{Ldw>~/QFЁzJmImт:Cmj^bSaU+Y_4F; Aàv/~^Lo+ Agb`"4X |Dmx7$pSITe$R._\՟լPRmU Ni#L7Auv>Y(s{?_+7#_+[-ęBAY i׀Cd/9{겷<2KsQsN!?(+J]̱cٳ7lǜ :y۱lROiW$ᆭ1DQH_$'ӆq81oEnt1p2+n ~p[\*1544^D` )58YZ S "6kgI[?,nPW؆7"n * (qVtc^Ȣ߱e1~l%2ǤthnCHݞmt:# 3!:؂PHkcce4bOsJzUFլ*[WWij 6o…@,4]Q! aO乲yz¦×BoHÐQVM]khJUۖhRgt{'ŰjZK2xe]WԌŖ`zd1|.r*Dmo+Ɩ_h)F?$Rhzݩx]_>u ,tmZ'o2N(Za-U#-W}R#۵$$o 9kQT Ls}N(RPd-04kwH_R~G8gyyƄ2c>0RCt%6+< t7,}(:#ܕή[H1,#|OjPc,H>dT2tʠ63L YDIkG.ve,'tڃuG7v_?@xb0yϯ(8MZtεoVXYPhTDtv74h>P6 `L R% ^ Z㔫k?=1M)0+\"vMH8fRwƠ+"6Y ¿?F΄~x U2f ǯJs%j~ 6O`iO&g u-h lTZP70VHx% U\{pk#r`VИMk& Rש;T֬S}ъNa_$ jy> ,i2at18'  kh|uLk2͖%6`b}pX3?6q`.Uh: {rRI?5*~p$jПzjml/pl@=W~CȇUQ Ǟf}cXXYN%\ԃ5*>`7^^G:VU "/}ɂ9 Z`H*ڋxiR։H֐VRw*hsi)kO܆IN_̫b)A4E-8hFj,dq 7W U5Hu:sjN@duJDp##?ٲXYoPD8ҊM7Qb:kÑʦߍ_?}hQyPK(.[pLU岧>P+k~zρBK+*Ix(;ֽق;0+eC=2wzzP$yGu6.B7JyZ&M_=kz>D|j})^lq V)JnLjNh>ףbymHҶԢO 'V жFoزߢ'~5{w<[|$n4`$ݒ2 O(YzQWuaYa'RXÑǞ;feP؜{\řC*,^eȖFaBYb7p՞q_.HSĘe q1W"^ap.۰zVGg;?z4-^y2 Lfè Tm(|AaO 83$JmjٛCqmMYV0`8CNwI>4e{-+].փF^p՝s‘:[p% dnk3\mIrF7w`gPybNr͈.8̄ޘ>9U:Y^62Vw3zE ש*JBϵg)Rج"E*1Fq:R( xTˎEcY5];3^eX=CNJE'sSم82*;zS/xv Ea?#,׉ @^,704*mMgNTn q> &itAӰt"Љlg+[XgVq8eJm3&ʪÎwt 40 kq @1spTɜp[y* vfч̻ۇa?`E Q{vDbr1z> qR;tyZ甯zq0ώ3$,t#qV&xB$d͏7ScOzŦ4Ĺ{TTc.s++!j^:vD|}=E(0yv3v#to6uqZeMSӜnܮDZmRLXV1 =R2I'm5r+uZ\U\i@ tt'zk&m#&$̐Z9#39Eﶶ`m|ojfr:w4ܚgOT2`xD;6c@,4(l cJ I% ɷoljߑALay;TWYloqLfQ JQ+qpcSB\D\@UҭPrNUl"&O1vˇlՓ>FqYyPy<S$'w/ϠèJ)P.g=>N˪8Yن=bo\3(06i9[L!+H#YY~)MEG.X8<^Ò|)EbJXO ?A|3v28kH~thZ;V[: }QuL?J\?Rԓ>ŜՏDC*T8ޟ?~CkǢrS, eJt%QQ18|Zx֩|w9kNz d8 lN%m_&SapaX˵9<K)!Vb,3'Iߐm"Օuk9! FhLsRRM-.Η~/ _h[6`' 楓o7y ?F#i}`Y}77 WNm):7}Pe@'IZRWH9ͣLP=DB7&lDc 6LзYl];]"Z!$2nMV 5VDП.= H"}VCKR10ֵ20v`&"%A4=\XrO# mXDv`pL#z2iGeަ &&d3ΓMH }ڟd;Xdz9S@XˤN);:rɖ~Ux[,D~59 ,d?S%2c-X! $ʄ*2]>Ui-^dփ?Zg?`J\i, S$ eQ".>%e9>}K󆂺{zM;+f+Nt .hq\^lx'Sqۻ-Nh 5]M9O&ݲySy`3[G[RXY Xos̊Gea4n% 'eb6h[Q;Žg"˲_z"Lb}F/-VNT\-=J5}i϶Jn tBɷc)+1+P6p@?[zD :dpK\I}p#,8 v rOg 0\-*iL{n,] JfWݻeU>nM!Z/<8:~ !Aړ R0ww{c*J9G/ gI[2U, _#c+"u6$EFz0;%p4kC_8ro nCm6şL>B󳯩pNAl߳GIh%!?ht̜` 2qg _ AE=L 쓗n⮟ g91;n$KڻJ y cٸh?X5.$TRybzou@bՏS:HIyEV5# +@3?70Ui"n~ĕiL4juU/= 7?rE_< 9Y{l]M^~{F(W;6iJ; 3$!hi[Ԣ$CwyS`2]cK\ H4BR<Y'p"cHSdt{Q#kKaKKGKtäl"md!VCrCBl&-GPTU:Da5gl%J4_r|II$!{EGk=Z=]Qȇ@S~3=/oʺ3)UPg{T-X_XT!9i} 1W8f׌Oa9i=+wFr}q,Ƨ. PV,vos~fGVyqa3 !yle4 {_eP<<˒MNQ%X.ncs  p1F іBO!{} `Xk8,4 rVsAZL%[u&yrF]V{*!A5lQ|ɑ!mYA?Gh_> NᖑpHg;8έӫH[tL6*mP'[uVM{HQ漮]`05k Om]7E抿/FM^g^҂KRTiCԐׇ:oD bՕ=+ 2s<'Elbt4~6f:|x2BA`5rӽ䎴k-w7H#}HAz 6osx8e*'cgRT2 o՘K+/.Y)'5_i?3(8\'gn 37O+;Xd63C/SrylVĊݐ9 %oxd_kGn*bkԟv_'k>s?Y-y`ܷ!(w:(SpB(LiCLJgZˌ]}l>8k\"C5;Ӎ&8X>хD|3ő65 2)+϶<4 2t6/SeyOIe@=#Ye͂|C$nl GFوA3Q M.̍T9[~ЄghTZ'jKgLy\֏tz1o"©۞x_BhbKu"lom%9e7Xs$u;Pg& :Q,?XŖ4(r@.W^u1G1:/xpu Q̐ OBDwb3i'ֻxF73w1ȁ R{N%®Yw&nV22tw1a+}&|2ҦsB8 ]mڽKrwsҋ0[ܗ%M"Or wD@pl?xZ8hm4M}'ITDZHFgj];@xL!Qǂ˧cMgt̿Ԕ| |J.gѢx;zƩ;{n )=Q)z w(ho0a`GSѯX[iKh. 7CRD*F׀ yMQy:bXvi+y*\z>-Sˀ2F͊@kCL?J;ڪ ,Sy3<9:b:˺Bnd1?ekldⲽFJ}gOyj^PylZOe%\>1 OQU ;=nWnL}CpЏ52h֗$@-la0YN7^eYqVђqfh\[}.*a}h}iTVh!h2"U9<7v]7rUwJ= wEpTd̀Ot{aC2,ΰ/Te;;|Ú2;A"hr7T}BTlxwq=`[ 4F[2X&A_KvM9AF"*3xs(o{ege=X2p<~):({2BL)we #]4dI*cO'Y| s+P\CbmjۗJOUES=̩Ե L+6+%2䓯?/?^ +7S2Qq! ;}4~q/BT5JǤ<5l -85 wy秋!"?̘jnos+0hJcc5q4I_7.2 991>G{1SM=t b.hE jF%u 9 aX̗h˲r]V+qH _ea)\GHd$ q[\͍BIOĞ`?`iY0>"QAbIv@/,B< p4 lPNT4 U0?VAyj%D ;(]Ν<9g%9MH/zXNwPY+~QnS)1ܵ ^#H,k@o_=[9%7=A*'2ab}|d= \VtģЀ4n&.nc!Y8 ҟ˞w3&IqJ(kbwbKY8+P{\|OY;2 MU:"6Q, 4e>t\B!8{/C̸aApO{=lΆAic,-d[Sز`ݴ^6V B\d ?ʇnNbM~ygP)EU~l#óu*3e"(oYs4>>*^S!8E8uXr}l<}=.ZRes\ҡj֛GN;5 g` M+ oE"d8SGܐL`Mн毾dS?:æTY]ErwN@ H<05[`  7ڋ93WqF7ya̾a\)lC(ZzڃAƉ ?X޸iew'Q'-=$@PMBA H֪mHU|iѩ9pK`8~W޺Y5?{!qXo2*yR$T]Kj?+xAURB`QE\ [2&į-BH\4y\rPuY5\fe*5mOOPW:p}o0}vAwdhKY&U+ :&hv7-Rj"sޟ׼P/M8!x7͘sw,=cB(FKN|g7"/1ҩc 8Dh`8=0 [8F3J`?Eps:222JeYd W;.қD+xD6С*J{h(F9l7jl}(--ЂS&؊` & .bݠLLwԊ*rbludzy\D$ANK3tӟPGcN^O/Fy1][>Jpv}|J4vijPN/Sb&#i"@=rbEA2YAdd~ %q`| +O%s_҅l 4 ί AojEZw (W"BžP zvlY vcoK& vw`U$]*xB;mraG Po?'|dO}wu@3"\b=~󼒃)0j9a- [4(ݳbE2 $z;N?<؈ ۧĂ ]҂*?huFij%mT܌4])XbXպXly\oRa`Oٷ{ywwYX-kY\Q$7fD!,ľQwAK,wu 0u֔=_Xk5@\{qYE|L"S!0~R͋bBdni׭jW J7k|}h%#bVd8c|PʤVS$;@`%6Q0=G9Y>P`o[-!hŀ|K N:ܚ2bWrB+S$h f%)`́ 4.;/wCH~ZiuI^Kn_ "= inESb2J+22&DsU}\O4̚*qvZF$ҷ 佊[ʘW^)7{S3&^!TJ {]^u >x0kU.S\}UP 2(` >m9k/A{ʠT;Zwε, n'nF¤Pata7zHCիsr"!}p%K]WI?kibͤNf`(Ҭhhzv{\V(?^{ 8Vkzܲl>ݥ-*;U>`V]vֲu mBw!Q(2s4a}ŕeԓ+ǗhؖF7)j3;RG,Nw4WYvo{K ZIe-I]{@#@'@3I:VsU/((]+a >^Ku*O&2uxiSd0{1Nvyբsr,=4t? 1;W1&( IKl)y("G4HIXW7flyٕyBcbDhe C$::n)UMFL5):ti+pzf$F-=o/~Y CٻBhHt+v 罉IQc%ڃ=N)c`֊(fU*<OPX.#u vfj$uVV<F}^Yzk!-)e 4z`QмdvQLapY_]+{޽5`jT*wsq]MxNxƦ ;!\S\ :=A@a1 !Y!t CTf=;x@S ^JC9gqup<:F6{'WzDfͯ $n婌9"6'}u)5=NyweG+rbLo+v^ƿ6GQM?.hLK8.$^4ed9C D'4 Ko 8[-aeZ Q\!4LV)>oqї ]uQW4ή/=4Nf6s7q ِ%y16 Ir>=dm\hu o&h)ЕsQh `ESG?3ҋ ;n-qcQ7of9_ ҅iON|̂3QKV$}^}-j,3K8;GizoDcgOy=t.Y@ I]֍83)  $v~td={m𢻼QRf.^dFP;B \/Cô-nݙⲑi_>bS7o쥿J9?8e>eoNc,RT۩p QѧJajRIE;WuPe c@KF\}ΕVzc}+M6]¨bJ9UYZܩZ^񰎌 P fZx}2P1aʬ;Lmmш\C +f40qcj>'yPŜ\3U1;80S^:RNFdCI쎓4W9dLbQNr~jL͌Y0],|xIi)js?!)thbSݢMiCc\t8-cԐ‰Q'`Y8RV}`g^h3[G{FavuXd7h>PTN+ 3ʲ9g޴bt "ٽ=Q) }. rH5;f3lg-ZaM@\[&rM 1λ{nP3/v&K:MS΁eўilX>7ScvE1o٣}uT_d\ymh`=tQˣR#C '&1ިԸ\[hxs8 @e|#N͸{H|.z0A}ޭ.cws(䒡5JGܚ~- :LnKࠃ.Cq&a~d"'HwOHG>"Qqv8 t`S8 3ZD8! ~q`UDk~V0/5u3 +2Vqgq5ID[7K٢J`k`&JEJMє]¤([Kc lςB4G~k xPomk>CZXy#zR%Od=RȌY2pBk#@%E¾v9u'C$6"%KƴӍ9G@h:J J`"c 0ԞhHz>ќŸCj`GUBmU:@7[~2:]`HJW"&I@?=2EP6"q>L8e;JbB٣(?V1/#$\#ⵆM"stzx6jHz큾~糃Od"Y_zS3I 3 5fDWx$S|Msw~^WWhNf*s0ϡ5uSy%0qUԭ

    A @6OaӂwkLM@3x:&gP"..&lxޖE:~|٥դXnm g (@yFsy/Y:DEF=ѥ9Z} B:>u%[:ɨh6)"@Jם(p¢45#^LCr)RoI%ߙ*c-jzg[0ēҳm '*q ƾ+p(m gf!15O5;Xي>|eʗ,P3T(>XL %.;Gn*;>&Avk,:#7He@U]XN":"bYwqԜ}|H14+@\-Cp{r7L$?1149 T5J§fj;qgA BLm73Sxzw9ֹ2@|/n/7_c-IJgJh=A!!-BP8 FYFI֪zrA a~9)!TՓj0+$/䊨\oLѽVW+% u6ϬVBכM c '9_>iG͵|A[y£M yQ s3Us-IA/x٤F-Z}-tұqf( nnN_7~T=/ꀑ.h١JyP)sPçYK}ܪwUJС $T0'MXgֶ 5_B&N0I#^7cS^!e? O^ : bd`cu79Cٟ迾<)2O=z99y'mYFs7%ac`FdWQ".*_21367DA& 4!:!AMm? +⫛r2E"+# 1s%A^}t) s剆pp]", X$.<3WUk~wWE Nry❢G9. ;KX Z<+Q+4$EcwiPr/@?) 1̟MikQvA]"9t' 9Z3zO%PYlf< BȭT [j|qz+SE0Gr 3$ e5!=s I;ᣊφ=]dfƈ̎p+|*~5%np,\# ,y%Z2OqtS"(K fwG VG2XDYW+e n'pϾνZ r9NX6%~,//av*84n?~.<6DǐpWY"mYXjbata 3&Ejbޡw$,yA*) |iYRϻdn/ږ^t4foU/]#OmhO `nkf,}BH o^+XKFIebuH?'100xRk8EUR*:웻~ c}\v ;GxaFS4YBAdU5P9@}qE!T`BnV;l#6qgv0}n<[%Jd-8oL7|WO쒃ttbvxQs{Ξ֚Ӂ3BXwh:ՠ>!u.uvCBIA{HO 8'{ x $r(Ay 3#IGX a _c'&k=_DN}I bNm\LDsMdtX_/oO7sRÚ>QXl.RYϔrU~㱷i0/[gP;WzԖ5X(VI 얰-6h;HEs50w) ge=9"&Z7z=뇻W 2ܘi1݀>qOp䝎R\vcǸŴbʏAǽ$0'iB逅jyM|֥u W2 "ЌRXi 8*oS[)YnB"3Njӱ)bė2qh,43x]DnĊ-D b~ݺv01Ѱ}+.SGS3yIH,׶kA}ٹ#am'jL`},8[I0Z˗na-4/?^Ժy.63t6 G+0Kʴ"Ƀ^"Qw6 0eyGNBNѡ׿qd,%4bY4`ۥgށwL;ʩ3oڻ|*´s`I{&ا %l,P{׷$C:`0Xt?GjACEG$[ۙiaϨjPm0dkI=Ny(0 1rj1R @IS{$(kp=tՐѲ}I xjbJNzHR*Vzu&C(`H4 [C.F '8KKLB"6h%S{+ڇd=cnHMJJ㚙 Dԉ>G5uGES 8r^WXO_1`=Ҟ1HFD'ȿ$$G :|bbF~̅"yjѨ8wԪGR.i ۛ-_hULx=C7_KQne!ܓMH^DdBD1)k=ecPY$C.1u* /G,tV[M+g1A(IgJԖId0gD(os"&FK\u!]q;iH[<i(tKB 8U N:sc+[אJrEo#,uJXT_c8}(Ug[RY;ܔ/@xٌsj]zrbۚb\{\ c%Hᘫ7#jw表ZgL"Ұhi"֝洂_ nG%cqVPHeHSv oO!4MӘR@V@ّ<@7'D(5SG'Bb e~]d153Ryjrc1ʹá_{{g>+6aƛȽ—ǫaqa:mgl;sGtkCy|GD>ƺvH=- 'xY `eC@!ըTM0Y'Vo bo] /=DU3X!^׹[JtjXBжHPMtoz䣟˚ 2([]h&/2[\l m|ӫ#P:k;r, @/Tqnx$fcӤ~5 Z45? TLzb̏Dm)NBO}( Y!M jB _g-s/*䤭an7n ]?kl;[)b@'LTOMWnv/`?usc(0VŎRtoXrjO#~SeA4b T^ U U4j ^<j6CBG+q8=c/YjrCk‰^̘SweTzpqndP8`ZI0"oe6(m# }n7{C"Ж%n41fI#`nՋo/R4s})4 ){UT}{Te9E7> ;Iok[S% &"@Q[W]*%1T}ClS%J+mV"-K| .FFn50H[ܢ֛).k|؜kJDwiԛ?] dF"~ZEC>7Z%$f?b#+޾u[h@meCиM/;,DӮ$̕NpMvXy^Ϸtb#s~ ]cyB|EQ7-%8J(22q[xe{|PZ|7GJ3^0^HINCuD|S%D=wSMV]_lB uٝ;r>raWFBEZxCr=p9PV%nl)mͳI+7"v.UFm9%9)CkalO^^`X(Gm1υe^ xAAvVN{tAG $wd ݲ:sb(2`j2% ?GR<=:ݚ]}*OgLy9lc5զ xgAо{9n#A%[H$oG 3c&]ȫm` &[bJԲ Ru۫R.>]-(-c, ELޚ¨i->Z1h%%IEchI[C {н=u26 `$h(; `!o.r" eq@3ƋJn090hT *:=uxGͺ_yKT)/ߡ`h)6Gi<WrwO; 5g%?~)uDh$ǚDͨ#w _YnMk*pц-eޕT+u󬔞ӫcT}ܟH"6K}-x$k|Zո[|uOD!_NWYS=jjɣ@%LSƧuO,P_KЅ䥴P}K]'JGmYu*RJ\`uz/WX|D0]9 AQ!/+mSq^w!"\O\#Nч'F˔(fFfV~fԁGt4l"0rAJgk{NUcyyYt O nP\f1bWa╷&^  K\R)mܞt2?,)l&36;A3N>a!C7/۰s0Ijl>Xygo|!3ЙQbBuD/`Į[ۨ ܯPGk/Հ]OxY//Vj`6FhT.u0w5qe1O'`B_s K@7vpyl5kE|s61"t_\_QkA"\?L~ ~WHCWY+fxҔfQ X"yV)9)t?׾ 3#.6b1Lg2 SI aӟf_S~,ӱbsŽEz/&IݗG(-@w5k4,MinsyH*'̨LHqvz|JefW;)+~Wix"T;S}D%!.l]VAH(Jdf.QaSU{BB+ܚP3&0aakb3r<Xl|^EkWf!ɸiϾ +EE_wi'yI(iXǿ#fg&c%h]G;nk=`?Jh@\(Iuv'b!ǟ83g@T.թ`:$Nkmt]YgtVj1q!Mֻi4̔6ES-Ljd_*CyHlK\1o;J: 7ỲJ`͎DzDs*I3 :XkQ"`p5di/]>>}<|0aeIO{)lN 8TYEG Zv' ^q-BLə4Owԩ x.!/v}Us{`Пw ܊skVFv+`YLCIcSw(r׌t+g)8C2R`suH>5U=S!ȱDSl2 =KYІLtD4Bo|-D_%ANa}V &K^^8`QR ) ?b vcd_ģQMWYzQ)Vhxu80V =q+Ji|ry7&'rފR~r\gerg@^s[Wsw4[p !)ʩ.zDxҡ{6'HS.3z R2P+]<4tcT0]Kgs kƝdUJcV΂ w-:[R/_X~4}Ǹ>L͖=U}Tu *A<`:N9Ѵiͅjjm-M ː^ hZa`o##U rKZrpM[]%&?FX5Xa: vIDRQ\]r!׃soòANLSDtonh'iRa ,8m4CFwvb@N>ok>k.N麻8PĶ0? \ׂY堦uY 1WR20m؋Kk#Y+w>@ Q$ N1~ Ό `=Y*u҂ϕg&* Q7`[қ%]8[L#Fv~ S:}6L+sBFPiüPo:.M8ӐQlHP y޹žv-3,/lL5SC)?x9XQ}7 CWljx\BSNq.^,LxUl.@Z<ך )q]K2Mb~t]B&pmmDs 0rGS %8H6;5|e?iB| N:mSVGw~ A{'s1a8p$:_޴+p-M?}972 ?d_@LLaoNOS#z* )Cpٍ\r*oDS|Sʵw4g.?KPLB /Tf% R9ʯCBw6yү'[Hg:[:zD[ -&υᤥĸۊGD^ԇNrUJZzj,Nٙ8r*N;'B%ΪP`>cϭy̍Qʵ5]")di~Wrscs=@qDWAy:ySҨ=1xg#HwLH9cMZ QUIxMDjmȽ,jՄs6`{Obv)@>u7`.Xp)S!a'I -=MaNb$GDC7xb#,b܄bj$9.gw@6n|:a).`5 t=JR]g;P ou>mQG8~>fvk[jq?h_$ݦZɇ>tGeQzzu;"+RB:uenkB"oXݬa{+a>F׃5pj^@֥\$;ẑ)EDAb2nD/\z&QAǒvs^!We0 ,*[dkZ5^#(տaClh%#zKc~6?ҾK&qp`M?ZjaGW Mʵ߉WC Sm{2]+;'7-i?ydSL:b}5/Ɔ0h!\JW|"h0,'+4f{-@ݚ1Q^DbL-bc~4` W7Z#=i]i&ร;5D> -{rC5w)@ =|`FJcpqqQR1(ur ˜:C#J 1[^gYy81ZgDIK0߭s06*k+P251"س!3?jILaHV嗦[XZj c홢 S? #2 a˞0!ay K9:jf$;I=masr.𓁑|WQ)7wb$lfٳ%TQ|Fgba^X]׾ 1ⷃPrQ%XR]M)3jsfisbQqJI7?w2K2y3[;mHd[K-KRQf7_K]+vhK_ zf:[/C{J!ϛh.S1WX[௞hpRG4 #HS ͍8{6]{|5d'VjnZQ1l"]wӾa//@59[CȌ}TBLvy{̧u t}Uˬ 7|4嚪knwR4㴎ei ]ڔ|2t"y49A+`lW{>:p^ @2Z1&c2"25䱙 ng2h,Yw+N&Ϭ,T#Ki|։ña_K pW8Fu5L!. ;.܆e ț b"`Ic$a]MP)nh0UJ{>k%1C4E[nq6K-'D_5?b%fhS9 S sv9ox_r-!ǟQ1﷓e]Sl#k5C)4=Uoi+1nʼnIluYL0QU!:{VթtQ+b4m+hi"3aJ3߉V9S~9.J̄H?ry.Rhua`@Dz6?hme. /k&&X[]ƃʌ!˃- &}R|nH.龵ew:R}(^gY@D +$(!qR䭬1d[@zg@f58! W7<5]/|P|hK6HrbsVecQ020*{X|3N4R4fj6M%;ς0gxx}@1Vݝn"H fbJDފ!\50OB(\3G vQҫL5ZKΒٻ[TdO _2ru7m$ь_o_:s"OUM|CA ˄?G w7(u/J*ܷ:xu*f$۸] 6B1GՕ+f I(:l8r[ *I8EF%I{[tŎypl85?,oumK_BܡUƵTlTh'qx mԚѮHD' Jh́鋍}~nJbtV׺Bgd)gӫ~ΌQ-jŌ%ücu gt61!)n );(]je̸>T`o("?K#|60B4NK)'UŬq\t@S1P%_~y ? 5gǽAD]`jRY2\PBM0qY6bros-kwL6Hw=hJLo\K8)܌Y"%MŃTɻp2* SRˀH,ry^ JD"4B)Ԥ@:QVP17w~{ "슫mY@׆U60;R~/ g_Ү#n &S@8VDPZ:m/ lpHx@l tH ZBŶQ88";L@X>~5cnSXQ zwGY*; SD3PeDfҠ|)gv7IruoJMKK5ZLչ3{0}*N1='ݤcI͜f}lX^UZM2"c0'D$ >42/KVAHZSѹ*U{Kùk^5^ӆS(#KmΩ+݊0^e6l\uQ--hK) A=S;Y`~QBTCL3 {D8#Rl-{@4`OuS Vء %tVg|&MJ^Zv#DI8˭ojIFCAx|>V-TCl늌0N0)nrjKwT)ty SG;( ǭ=|Ji5Z$ء>[aq̾rnj 2 #OAҼY# &9d[u~t\e|q}l!Qev `Q6 v"2]0 ;[?n`=%/V72(>Yʼn~Nޖ*HpGj`)CP8 6Oo}%eol'!2&,Qϒ0Aƌ>BOo )fx'% Qz2Emc aG1WhJ'Ui/VfG~ؚ,Z'RUnuh2qʯ=wGEOw;: 'Va =]qXs[ QQ](M,$`fbF芳c1MgwzqUUfT)N4e&$A.Mw[ z$FF@1w4Bޡtky?#.gF}bj/Y؟^b<"njn hZ4P+oAmwtęz(R|e]kAӍ9%Pļu~[~㊮h9Cw<z_%HdM TiAX6о(--p2yNaw'Nw~瀰rQN$ ҄ŵ B%,oP i"7SEp׳tQ|VNxI ^yb˿hSAf+ThE-puBW`Io|2cyj7Tc2cYHw1x1[!@{Gx:"訥]m^F|W3KC:tBEQ;ԡA;hM_,Cj \\ӑNRvݸܪ8\S|y,RvςFm\ fкηK"bvۚ*bMR%JYaTM9]>Q3p0<(4zGqW$͉7bǬZS B允2-a YB9`"ڕX $I[CGN8->=/PnT0ȏ3wI\pm%hJ & E'$rBv IȔ.O4"/iƤ/X>&~!6|bv_ADtGo!|Fr~˳Ĥc .׭59C(ȟbS컹^dTU̥w0h=AQOPV06cB7([.v jT IYJ!^Z,}^߭MT֙#NȂ%9\9I `H麵n/tFQ|(CiT3=fw]4/ Bo$$ښ ?#dƐ~7Yqqm7Klj}Me'īikygNV&1,(>"qN8x("&ޑMu#yMƋFaG|[!>̫#=@I;:ggN,hf;fdܷҕ-6r/4Gob]d臊C+/B2 =.Pb]D4JҸj%vph-ܺ@_VLju'3~r0Tn1Fia;hȧ}(ga!.KqWyv=uh܏GW,NTv `o'%_= i_h,ˍ;AXL=ŕni R< |o^1R y%`N1jzBGl&yĎ5䒃H{]Kt5)xFL:=B_9_7x"*0lRXtCi1|*T8%:h2QntXo&UUAve{$ BU{b{k IJvs}=-`S~_#4e0祔ɭTx; ^fWISvb.j5}Xyzc>ڪ y QZ!gg\J.c*  )S{;$޸ nFgAQ1[; 7hN2ydY{=ӛ"~m {;ccpǔ6;u`j Մun۱b.{V "6a`J/njbΖv^9}I? ƙ؅<]w˯;Dx%tK0^$@qZ/0&Q/8<|Wh6J Ms=wwD@Zyfo^ kEcƘ$#g📅m8MՐ9I)\t{GcZ3V3oJ˴#n~-` _\hYx5숣VvrSZSIRW;,k뵏 f&^ZuKG|bX)F}ͤЂr0cGδwz^6aa>XP[)0ܶ!`$J9NVńEQ#Uz7(8G~~,1v6VK/swJ&x@"r;pFKr$K npHߜQu)^xb#oηQKǴ \)dKF{PATGXٵ]h %z=RF&$-0^=!M{Ic R7v)}IO͕]lR7 `ņ$NYЅ\'4p̏L@$Y+!H!z'v=IUj6Q[f6'\]E #G}DIAhdE;$Īty4hzQB@{KlsvܮiGHEW)~ &&-Ifc]¢c-竤o~#J)]IDٺr'U8KL l45t*/d̤m#s8=aX+@ͺ2m>1rhK =m~6{I[>͜}zkKv !^Z~*:&aȑa1qr{]y7ܛ r8'R.TVX-(NL+<*:pU&X}bYnu0#4*_NNoď.,V4ƿuN < lHRM`FK&C[,2ƴrl*#?"O"#2dc(>lgm Kw-8q|;Đ}BY9Df5ykւ"8$S0hLjawBZn7]o\GYUqp}+v! n$ <+Y)8;:q0l/֎|# {Q/3|,fA\aVN.0?$m 9Xs׵Was){Xiz-%ۺ"M\ppG :Z6]p01BwnMkQ>omԌĀX9u]~ [Λ%߇ePk?ۑbݭ!ԽBŸ 8V[xE !Q˜h1B<4UDs"ہ2EԩJ>2Orj޾:͜ t&RM٬-`tommm/A@@uwȎ,/fW-Un!c:cpU/nhj4X (:IJX gë [r**!ЎuͲOJ~q?ނҔjcO[P[TP`C "8Dj-NJQv>D~W4M.ؤLejE;\\)?$Allq ǒ}TX)FD Ǡ} C{ joSY/J*)$=~R{!ƔrXGqYZR=|z걕|a󾵫klbf2=*jv6N!۽ft <\9c#TT4twʎ_ɥIKSRbIm̓kI=PqȌQ瞄l;Vl;]4 LmR1 71p/ 0lW- HICDT.ǮE|ړ3Ɏ.iNc4y2Mc1m:"4R RiYCEsx>7ߨ࿙O~̀KP@ '공o$ӾM_ٱ?mN 6)zpwcs~ԫz@I|WTH?g;Ny6|#U*Ic^c#D@PqmC$фjUr绡b"I8x̥lBy# s `H⒙ AjG]*!oo^&7;؞ n>xc])L*Յ^&tՏ/myyEtCU V;b9%wI6riRqs,8U[Ct4|/ ScM@B`D1-ذ2TfWQ`.vczZ| *s"y2kDv+<3 Vg?}vC .nR5vs9CyUe;z0wXp[RhIZLFkx`[Y)ZX7T"dd3vU \%tƣ{?e7N2=)Qn :C/âU!> ,%a3h_G<>?pQ avo#G{ ș7PykO  9_ 6 rsx 2ː{7> nn&q_k<<{5r ț`F EՎA&**g!jMv^lD0`4lFS 2"̥ =ݑSIΔsk1y枡2aD=:_: @sKI؎3ԯO2JnCt3I@Bmx%jlu %W'g;M.HC$stgeqQAd 1Kws*r8&A M[/(PG߻}-!gPPy:Jp+i`'i 1f޾[͉7fE&_x麍ap{ɄiPq h[7!筈Lrǃ[=_J efԄeNwôbb1pV<0=N(=îN׫r 'NQ ,^/bhdJ>fP]MT̡j6dIΖM)a=ot2brHB r·O/W𓣒!*˴]A 괦k#-8ŏй#\ hJf6֢3 s2 4~F*|Y{mj˜OBgPW]jW&o#BwMK1s&}QH|aZˏY&d} D 4$zwPb"ɡkϵk4Ɔ>?*{9vhyi]v3J6g ΅B?Rf۵ϑZNю0qRkpf35WkT  lNy\Gʮ5XMQ򗗑U[kEngN-<NmDGm-1Pػ~j%MgKicpoZQF|p`+7c4Y!WPc(`'#"D#6A0 Qf;'M6]j{ 069 FR kqYMռW*>ЃG_n)j5+)v^vTD{FJ8qa+}nϴ1jHwuw BD38/u!M䑩]X&jLKSݢQ.bCbD[jٰAFVғLIdP٠xkve<+W=k&x;V:s.\Q\?+Or)t:)4Wګ@ ~#-^@#]%$a5A<[qAlT \ =SAz_³#6 L!Ed\PbA$\ =CJi>AfQ es4BSo)J*}ʁ1/`%pxѴ&m&l#ѩ q\3[[ǻe|O{K| :^[-"u-`:grrbyw])Dr0ܲ(/?wV$&|7f.)j}ĻQuGåX&3goo_@v0ɝ9~|B @ҐU}J hWFe }}dP?n$X#JnFkBVK>O, AJ9ģv;} < :rmlMoa/v{UiC8ڛ1 y5$`hq"3BY o M.PL!* }!z}eCoOx,ܔgE+_^hD8`$aF7@ WkZۅ%..4 zV S~-VLi@3\P3XMnXgnI*Ǧ ? <[(8'mXշZ).B6GJk]y~سSA?`"++}ajr'/ʆgU†ד{%> 7)1T␈KLw9' 7塲Hn޶!mk p2.:Z} ZKϥй'gk)LRK-!Rbmo| Pk3>=Qlj\9`|?Ֆ$J3Z?,-nUM11`]G7%4?.j\@)V}CkѱzyȓBG;L#ݷkH5}fr>TQ2|ؓF>A__DNBƲ?:Lƻŋ%-C1"Asm#v8@S8Q3Aܙ1d,nS~,f19K0\6Ό9Y#xV Mv$RMgPWyEvpxJ-pɞ;͡ u۠^ 3 |n=`Y8P ڒ8Y~-9YZqd ` [^!R]UB$kokÑxj0:=a@V5d\;Z `_n4~w_lOU3?I졋55]HX2禕+gҩkɂ^kimL| h[? MyqWc YmhM*;U&)FVXr3e삎Õ a6ǝ1!e9QZhzC=\aOb[hc;G*@OiK(ZH8-+9:8=ktE wTNPQ{UqWz.#:#[IOIcyx"u,G!kic@yu*처AV$đAscY#PD!M@4F$Ѧ|e4cU>Q21mglI!lu*DV_T6JDAƪmJ`QqB-yJb k³ %vnt-[d;?,[(mpx0QKHݾ\.dytJGҥqC醇3siW\yv$?sp%0\0^x/2LEӻ,}& ՇNY3ɚRx?:q2RA2! vcpZ68/ @Yp1+^l?%:n="m喈g&$ν7XR!o{uy`YG-M\H)fۺC'JHgu۳S }_v +r,T$XpoH<<W] 68p}Ok>y2JQ ^~4>q wR۔wC  CfZ6mvZ%@.Yyw.`=mYד[bk /Pkgܖ%Ao>93xӡnKk)VblEtM7̣?C)Xχ*y>\ICȃЋ B$W,NUS؃\UKa}Dž+ڄv>/϶'eݸ˰8x]T'a##RiWG~J+)*|f䇛diQnp_$x>KNoJg=쐚Nt'/J;BD̈́pp:w gE,ON` o]E0@ < [ş*yȎfSHlQF}/1mdf$٨)/ Mtqvʣr@wƱdYO:Z_jg@P æI22r%b||JOx$W.]^yH3%io(D4 tIUHLmcm#}H)Q6 @+ 66B{VR^ yN6ק3Tkp*k'^L(3\i]SsMD neEu+{&+]&fPDHkJJ_)vLqM,3CI~[(A'_W HRMD' ~:N|+&+KAӭQ9iwYz+ezK9҇'+"zoS/D0ATY|<͇OgOz70NSY:XF\Jw?NO\ڃݏ-Gm{_U<-}Ǒk޳zI{7GÛKs}ݗ.Y$vaGVlN\MA8tEOW, ;"ygAՃ?1\ =?$c|JN-o}mtCvƯM ]^J1cm^U"+r6p{5J4z6E&7PZv̲EYKET~Eӹ ?b/|>Z^!vgύ*!Sggp0 =r鲧96;KQh޼ ɭ `1H@/&RJYa{Vhn19GOcէч0˧fm&kB! w?n3}lXlF̚V9uVK܈5vQUI$Y]#3@W\̆k/5tRJ5zsdcOPj}a[6K5b2T:Y{8b\&Q@~ ve~oO*_준ޢA)v ؘK??GMCێd!j9:6TFX{e&br(rݺL8?FmͩV$k ]^%ؿA57cd,I:ϒ &h{ʍEEiCzp_ h49И`KCljoBu x/<'[⃨̃@8Z)&xx(%l3xkc0P."_ jTM-7公]cOX*~!No3 ֑'mR(,ha qՌJbh<˝ Q=rᔣ2t{ks0LD\@%&<N`M;(pB[(%"h]OU(dRPjM[`20s;Vimy,cN=pnЊixRP*P lH1FM6PQwۿxKmR_* WByA@+Bso.,ZEd_fDfε1fshaX6/e(1Edpb*hLXsd8ih1Uq|T!U ?e(ѾBaBAZ0Ʈ [/^vD (s RT]{C)_Ϫ‰ L^\?8[sTkA#T?J?Ù^X}ʹ퓗FMc [ WlX$ygaUS JtyY/Qr6- HzvY&=K&ʖZ9?}%M[ t܍^V5".mq@.cW^c2x@/F{_| j,=iRo.VW߶^Av6_I6 BǂԖ*Ic}Ovvش#K?bR@y𙡱`'kE.DlВBR&r0"8|i{=fK0'5teJ;Ixihٸ+9n(8$_r !kDSyi/\DRdķu@X",Lݐ;)7]DK> '>X?5Me,f4nIk;ﷷ3RpY4Qq(97`0qrᓔew,oߊ ʿi04*K|pxk=H"68` p? ¢O$'õJBU^MY}'Kgt߲n LŠ=ap-熮(JRP63u  S0D噝2,_scY(I/#8X<GM#{^.!Ц2shW2@0\T fnc2E۝NǽP-9*`8X'kZ1%\'yѴRs$`]`rPm9=z{ķH8\ PvcUƏ|Li0?KyN*8Im wBwI$=Z"*Q`x|(*HKbab-e(UpSQNu3??O6Un"=P)UдS+FIo,J\!) gAbeɰF<2&8WN;[|a>D*cf߅6we/r'n^pcR~{#!Wlɬ ky]Ү 䠹AvdxO(ܤ:}йú@L6DFg1ھBYMwT4;j M j?7qjr,qZ6EyE5)-@,WIOzƧ ?wG?1-'zr?Ϋsqd ^mbZd7SJu.ڗO~*Mx/5e//itI@ $8p>rݐ']5 ˨׎+ĕ4 %*>L&_1O{~/ x>(8V#-wtbο94lrpnŏ!D ͦˮDrt@V[Jdv,=7xbP i:ռLָ($N)BPs~u4; =SG_iln|Ze\'s1yZĽ@X|Y_6H(25:3?瘯Nv§L_gu]{&GӠ(/w^|=tʮIo?3R =8GW"c8 DLÈMdjc}LhO 7k$ 5kUIwP<-,@ؾ0lmigA6ER<.]^1Ą% +6I,Io>LJqoQ$^B09E.Iw>uwTv$mAsPs[>2g-u,a@ M_wSh4p2բI[x Uc>q -DPЍCX0 EݧǀG67u xno /A=bHXGn/DbWZYqԏ8U_"ٰf}떵RvZBH=Oihغ^sanج".?%{'~7&Jno]hrtd1 w )ܭ;:@s}~6uvWǙHaٷ>yTG}x6; 5x鷺'q@]7[ bZ*0FpT FQJE ,6i [n7PƉFVK+<[~C+j ΍[p'7Mך1'Z#g2ugTaԀ(*R%v()86lC@N $\,qu}QXѺ&bEGnUd[5ѶM@TLhg~5oeM&(rLү* _A~DŢH|U^2A:S.*R igtInXg݈R P͇?P>Zf3ݒQt,Xڪ𝆡s_NlΒPw֦9X0W &Eث( ^RS%f/c X"\tZb|JT?0CH~GpҢLMzp&Do^cM7'} 7\6r:-1d=A# N <ISޖT G ~g^zʈ9{v&$V |l©A!Wm33e @3bIƬ3zrJaEѦn<=n'Pе+ŶM> 'TE$p6 @?& LO R{*">߉2cNh\xlZez7_qL_\ҨD&xI'H2۠BUWuiJ早Th =(ʝni&XΑ(Y*pV<5Ĕ>3)+^I*liǢME@HEtXKr]6Z :xKG1hɊ%< T shnx7ځXu(B'+W. < bXa3CM8DRKrHٶGy-Yyp2n8- F ˻n^,<\tmԞ(;! Q ņ\J(9fS3q4r-Zp$q tV$mĝ_JoN&bm뮥~vk4鰌r'd7LI$jic7R,(<^`뾖 t4Ik%Ѱ0g .޳ᗩrP2Z&8OQ$/eG"bWWJ0 raS)e։pX\vH&<2 vQvGO#h K73g[}@"i:(oZ;4/X61Nxjuh9(h0ZoҌ:WPj/] Ss*ll=9W[\/8Gz]ǭ Fx֣a +wfT٭ >ܥ30+-srUjdABAy3%єtE=y(5Gylqy^E;Juѿrp׭&?T|! Q~뫜>/螺ݬ7, 0+b2o,;[[?e*}:4l+9KSօ3lT 5X򟣚0(dW-czjZΕ@݉A(3t̎Um%i72+:Ō |ZDH+ir(YcF 'ت~!Rk37 '؏%l(aMMFGF$S.GW^ f8CEɢ߈'iv?C]AdH-B~ 0H~:4M/OJvsn` Ѭx':5YXk^= u3јqtM{ʭx1Y`ᅠ b%GV!/qeV6Jyu 9XiqM WJUw5rqoH\":0+,~'hOƘ@~N wvKT+BAA4*:&;_r}_*] US,宽幽iYuyR8:LŰ imFԍzNzUud\2z0@JV2vͭ(wXl\eڻKbR;Qe3 A ͪ ^4TL&%BKSƋ*#6+d"#]!qРi~82u9 @ iTf &UJʾ01ֿeTg,dRuHvNu.2 >3N;c[ݧ/^Co8ϒ G廾f ̸dc.SנHߏ@2kJ"U6JE&>g_rRle?LZ}7d9|hGql7 :cYQ:iUÝ'ѱW!q]MQ+\ .j5ayNaV'([ީO{]y5.XeO|kYHBM#,[,bz s49Үo?o/B?Ib!8n*/w1n74z< WlXkntOIj |J4fwKʒdGYgſy g|S#'u60?d2;S90G~VY&5d{qٿ> e$*ńB٘r ]+zmzEdcO^R8(\M6&\T5JW5kf۠Dk O 1qrG a1mN.6s`G^ !0+:O!"ڝ@vnIky/]F%hS_ |hmfz/a S?Q)F֍ZY?paZSt ) H%L#*وzM`"h6ԅ"_={V3!W|=*c׳Q- MR(h4s䞣A;^)x(u9tpf@{ Gfa+~J5‘|*XTu @cu Dsۑ9yLm{/L A8J& fn_ o?*OŰ7]KP?Ay,D'/]Ec$/90& ZՒHOw(GRZmpURКѳ̂1y+1H`?g ،ho!:ߡ/WAEt|ICv羞3=3;q j[ @.k&<0t+'`5 [y,3k)T1iOUCwp qndrϙ#C) WjK9kH >rBٰ^\g`d?OUqɗ&KxS4Q/ߋl/XyczEs<"u e/@G 핮n^pm0#p%&Ai`yR呾 , ` _0S#(rWhz8:Dh7BSƍک`[5;㕐n *bIYC ۝nԁFUZ僽UuxDGkp2:-[S2) 7,Z @9>zU8~ {OWԏ` )3m?!*)yTo]'h1﮷HWuW^,=?Vm Gf6T$ <"jGbH$Nwg/72xtNu؊I*cmG;Fڪ/Jf[( Rtys4Xv?c Wmd74zY/2kn a:rppp72.%VDo4 oS\Z9$cNf!!Z)L}iC!·LUtبyFJSJjY F~ӥPSI]ceR3VU %ziSA%k+;T ɡ*qN%ZeWNRwN@c'įAwY'5=_hKn-!k#MVt8'A+l[S=6| poU y]91|ެ!ͮeo%8|T/C2?p˖[(Kp9m;'G$[-[,$C @w1KAΜ%-נVvsEr)?OlIZ1ɡtV6}7%7W| dp=j`g$D^AiicQ9@W"]7,1B1.-&f F>M)}@RC)ImAO%{:}ΧļK!PuhzJw+L%6 Xe2y/TFPqB&'![in1 %cB rh4&VLzȒ@g 4Iݹy7}s) 373tХEեJ→8 $gځ?xI6;0:$@P%UM-ʧ^.0XY%qqű Y 솿hމsz!@m67(DԯO(yueҸUG"j䰆 Pߪ N1v>v\6J#2`WuF9p' VJnK;cWt@˔z笷sv8:xV坛ߡ2αNM;*LZRzOj;'q *Iqev kӾI" Lƶ7kQYV49y.tv U/jgńqg_ܫTb'Vc-77͑)Q_$b\/7H3=5,m4Xp(֨υM.-ٸKL 43  h̩/-[yˑ*$;9,&'NM!b >UtwMF L wDUђw׉dNa_ta7gлainL 6y<{dHHJ3Qoȱi܉ MLM(1OAr'#˪~8F)W|@vRD_JZإ(}e\wW B|Ec҇H'5f>cA,i#h\y/{c-)02 ZzI3$vs m9r46 ٓKkߨ~iAHoM&$H)JE7:eY%$+s";ߥY$WCk:(B?{T:.JQEF˱ E.81CY3w}~9f@ ˌ=H<.\w2:]U펷඘Cc 35ةX0e QG5'J\]kRa~sQm'_aĂxK{Բ/etR/EQ (+RzLS S#:!;]~ :-d!qdd3jv7cp!*zGdͰ\D\ x) ^~aLNw`I1+ 4A%պ[_Q&Z9 }~?(|xKG" 7C5+wKRu SA+A. /;*[- Ji۬LXwGznjT=GPz@@.T쐩Ml$57M0w=˿\8_q.ݭ{ĉ`]Y,벇 c9qS.#8\]}4C%u #te8A>6to>-t,հ+m:iV>Dk9 T&4_?Ҏ1!}!ٰ}j2 2d(X&)#4!]3ZH &PD]YO,&ho+v zs#L=Юu_AG bz'\/=E3=q{;ykOpI hq|Sq5)Be(x#3ܻN_ :5X5,(7(#w8?}Tou!fǁO߯ #V*!dv1?ul 2ٷCJgAhvAKWA#D,xкL[9;nҩx{9^0.qc}MƑN9?H@]cyph]H&1^lJ\V>&޶A/(KttiψIx>ዐ/ihP^f(.H N;Ae4o4/ l1ȘRJIwtsDn/[ǍK]ŀvzTm(?1Eɯ,"t˼{U/YjkGē淋 ,{aQQwPIR7ݒ&inA_.)^#id  * U2!#/2`j_hɔK9mdn t+;ZU$WܼZbV#VbSzs4b# Ui˳:nQ#1?Ti]fC-oޒ@I֩S2K5pXe߇P|GoBQ:Yz584=,;IP]8(dRA Uw8vB;#wgxV$A(;>$ɐFdڀ\XD&kEܢJ+( p1f*K?.ūcwP/(rylKĒ–m$|q&{FU$c'zr]V8s@SS ?9KЉ5GzakCNBz>50l֎3{1 H`/.I}0i_748ir{b|hxi{]Ő9zfqVkBлS;gw-uk$Cƒ_v%戍Sa M{ Ysr,@IɧU>7YzjػI~wkĩ]GV\ɍ3?#~ 5/S܊ħ̥,,-a7_nzf?,BS)@ER`1(UĤ|$УIߣdQT:{)$:`9tgl/Ae"FhXLRxR.7y Uӛ3}{ҕE0S\{s}Y1BfB6׺j̼s7Gv*I*smoan[YT8Y/L0"8=5' Y?e[sagdp04%nDf \g`wR_!b4g6Э s\BG1R6'MI&zxh"K 'MjHЅ+_EV\*LŋY]@k4]v+r1ķt]2c.4> n wG>آy7V_}^m &eL-ѱj\v<ωw{H9İKTR3H {G +:pjvxF{.E 9 n>) ?o&()ʜVK6qμ㪸h"ufv%Z8&@ H˱)$lqb(C֌v;~O%/,0;ڟ'O:QbfN>ߢ3ФCTր6UcmgD".r믝 9};67Cߞ$tgr"tW8vC8 CsKY55{hYɉ]Տ}uQsE79X~Wb{%\KN)4r!F{rugWiˋ_ut9X0"h$[2./s<< :`w*ۯ'adhB.J6hv +'mE/5 X@|yF`Cd$j@q1N 6.f=A"™1պ7m*](p'+Bƛ`O!:819wIAjy9u>C?pmS.{)+1%ӲkoCǒVk)PC7d_VdGϩi #鰌8/ow b`τ?bع6"/ rc"JNbtp_TǪ+F C JeMzc s>y/<<;=]Д]TJVaTRd&ZM)\+mQvEh >CDQh&\yw!]ԌFi6ɔWPNxS"7׼eK *S^$5]0=*o+p23h}0=,G=\w+MXLaWш-4c?ɵz -fnhݰȋGI ,@Yx%U1kf =S;ڋv. z(`5:_ƕ~/mqE"2A3Y^ T#Wn_c8REoHkme  J и*R^boy+h)gtHi*K- Xd ,fvRZ %}gQ_+VgPm4"T:W8>͔Ch3|1{2W)vC:kB }ƺ&!B;vBMgzyTIuٙv%ۆ~anK CpVYRLh컆kѢ,B 'yz&A9%M[M~wIbpbI ˇ7t:3#BXXS)czK{bZeWK~+WpCO#i bQc 2bh>_M{Nr]nX24,!w3 b oV=1(į9ݦ;ޞo4!Oo}l<vUэu c`>8yV]doWa+ZFpݱ>%վ'$>?5I@O' `s5 0 Qa;1qP9 oCaWq7sn3X"\UtF1Úl"̳J4tQ fH^zK!u6Vy.BoI?oZ)r A-k ƒ -?:)E]bwW= ')Ǘ#RtE껐Aldv )v=Ynk}V$lBdvKjpF쥻w,v$;_SyE|Ϙž@w]{smi{yrE,ϰքYY9(ឪVGY!U]bz Xα0#BDg{@g1ic]'Mf7p5O\ӼԜ =5^?0͵1ŋ%'lWO**jWJӱ>Ժc#] ETĽgpM.-tygVX~!F{F8O254I6A$)^-E&-|AA)Oշ}H&Z=Oj hŲ(6IL5~# ~ybb)1޼lM*-k]|BI.h&wO]44:%Zi˯fgw[[ѭkJ=$4eZ(~SLjc:GovlA-9-"*w**W\vxXAdN0򜱏gdиA85*U ],|nDwN։D]D欂pS`fVuᅄ^>8}3|W-gDĊy?XF6m|x/HX#+v[m+$T$tϟնVp*fHC~K,åV|NM*_ұC%j?Ƒ4BT-mmw\VEQ6f2[إ̈q3EL"ͽ8_8# G]gڠ'q;Ad2B *N R[-1f\XmYO')Q[ݵI7CԲnƜ[f.ó&*MEO?^|6Is6Ngp#С{тYm0k?QES˾b֠1Jgۍl\#8 ^PgIoJ'3 ;GOhCH'{ .C &K[ YS/:E/'gס!רp\tw(*Zou)"}I>]Zy蜣q3ЕCM~=w `>Ԁ[HDFbM*Loxr&y߀_"`>%.KaY=kA'H.C inIff1>oSm6i[@e})Q@0Dwr픃߹JԬ $ Hzp a3-R}<gTxN~s|1XFcߗUҙkxd~!Qv8Z9i%2sCbC-c0)MIǼFf|[Цz_K[BKk L\ճy^BQ 7(*'%qo)ZP"AɪXGaaWt42WR gJO{J&HaO;7^RfU՗z ^ʉsn R{ӫ-gB 2n46< Q 29H+GU6}# ]% eV9\ZR ;zBb=uHLz7c8clc9u6917?'-YG4/r eBYj8 ]0|_2Z%Pr=@O ڮlE}OM-9YCiW;EliܡK$[NU)_QRW3BA2pl=]5B9{1z-&A|Q%OS~kbкzL>T.d1z)5 ,抝#0K#lJƯKBiI)Kfj;e|5X+h7ڔ(QUAKإ/.^ܵ;dCu+;WI`~:M8,CKG`-7 7xZY:&˘\FeTr"9DȠ'ql6TcdEE#GygƼꦕ @H)י 1pg=֏&}耓U 7H ,䤑KTV~|J.(a}3 !8|0y(1buXڒp_-.L[NR[! AZ*RuTYn_6T1"tŸt^|!ӨM7Z/嬤&8r& Cx_܊L)7i}-Ū)K _?(v_4 UU!(A@yg6~5 TDV$: %c^mUB^:.wu^cx;hmHT5bgn2O hp6Ճ=WD@bGn/[ٌ2wk-/t`ӀNU\ vȕ=@b/|ΔS)Uo蔷+)^fvtk^k?APRlS:a[Jlq߉cwEt١\zm2f<_[YȰvgېzT1:M |7՜xk0o}d n¦TZ!/w8r}-iQhOn(JGLf-ȧ|R2*?z`\o앛zs5{c磓jy6 zQp]8|Wzs&&2{A nf^~l̏бxJe(-z9Q_/D:DU㹘"IIhsewf~uF_-ۏ5q/njuķ%FFQ (!d)lk/%7?2e&UGiHLc++ xpB6P#`|Ll!#K\0vZss*k&~]}۴u lyyA-^<`2MP iG@xT^Cr-#+2a@z;CBkh`pI鈪(6%D_d뽅Ĩ7N['m*dFF' ܮ?t!I RKrHҔM/C[$WE{%aðx3%:?{_HΕ#/'pHz#Ms c%DF'fSJ%QqȝWR켾V_!,Hҽ3lN~mWŵƌb=9%0L.%̦պE&MJIadQyњ~gLҞzgMSbެYdphɦIUvJN Yil&*c0UI ROvڴ'/{`S+Ź~SsK Zjk.1|97q9d°&[OB\X)<ǩ8Zu VE)/rC'dR~_'mJح CP73%uDXJ YKWN$72Ek5DGgej=9 ID%-x0 >nb7} /DD`{:;1%lO3;1Amps\=kF>Nu)ᨊuuqndt8W}De0,t}W2a<4F6߁7j9)h+dM7j;z&o,+(,jI$ii^;|pƜ^~,9%,-oeb:J(d"f|"61;2.rq%B9p2u^ݞ,5bd@p>h67PlYى(Z;)׫/>)t_(x<)m5 ;{-Pjjp5S`d8C0fj=ڐk5G9ض SnZ'K}(Ӏn3c];0>mHLq]YCLK$»AJL'aZV<,@QA٪6K9DSӾ mU~OIHts`$B!Bxi0q[6r˄KGP4&Lm:`7W-c}q|)`+oT \\Yg5\k^B#2Vz5Wo+J]CːT}-=zޅϋR^"z.e'w]"0I\*s1>rpە~e~'42_5h4GN&,L/W5SR mO4\>Z^8R?<0!KOk[Pbםc0]@āLplD4<1f ?:?N%gH_;EjQt\ؘ)щg/7` j7c}J k-#P*@PdRg3 ys.͞ ݓ&L:%H?tXrܞ0B>0eyjwՉMV֪Ç9Zwofv%?%,UBJ~arlM|O>f# & Kp":2f <.igNbʮ4u- ;M[-F?EK}0Ǥ;.wTuАj;V;ءK*߆''YR>2d[m_wDp.XvGp=G"ƫ 57S"ff4"0:Zm0Έ5VbOZ^^Y`mYz"OrT͇B+Ѡfdi[:M[ǿ|?4q7L 'AM }pXƿ?=A K`gŋ 4!iH݇͘rfꂃ|;ZE *0$r" Xd罫>= [DQڀڎ&"3j `YfP )c1U gƁW@@1(nTjLpX(S )/\Lq efvWI=';PO9^KyټwuZr8C-36xH`mPG< A},wI7;A,:'&7 4$zE*@nI: ~,~%A!gd\b3e0Sir%\/Q]l^8eNf_*uDlV_M {Z20n!~6r?:cX q$qru!#Rיa7_Ҵ8FOwʏ 2rT)L_s{74\'xwI'Y }AH( 7ҤE^/Ϟo0ƹ8u %rũJҡ>Tu =%$O\{n *oӆӤnpN֜jwr\YdЌM:9)%SvXU_Y7Q ?8,AV}*-x !N9 7׬=^ͻ'xA7~zֺn띈k7aL ':ڏLD>8*x &;~΁[qO/*lcUq|$'h99R$TyMVK鎾?9 -w XI1SM@~.cmSV6TS{jh-w  O'hZi}qLsDr ttU!B?GTBf Dr^ UxUܑ;Ղ|7GЀt׹Nꕬ}^bq Msiv)#dE.8w7 zos g}>CY9]U.OԝoTKKZg!4 ^k#o'=CJ^)l۳(IZFZ% (6FN]UlFҌngbR.gĨ6Ubq͗iɶp{J뾉$+1cߤIdx4r,w1k/*G0~k %?CDXp)))4t4:=˚UA{I=i{mرԓzK1,ZMX t?aC'KqtMwֆ2D}6 $:l4^G'^vb)ڮ&uǐ+u> ւZCqa!i#d #cV!,}EHQu(LhD}%3Fҟ42o )l tPj-RuO # KaKgɄ5i+jqE닰TyO0뚦ZzMV͑;ɪVSht [c΀b##u0+H\vxLu夸U. |%NHv4Bmi+uu7%ģ_f}a]lofѵfHw@.c6d6i`ҋxUBiҀis{TQԿr]Q69j/<Ov!BᏕjL1fTQDH;!QHRk^gY:)y0l@֤S9BBVٳ{gPtKGcAG" ;+AP𣥾]#ļ){nK.O5t+]g#PN.فӨNulE9;zr{<ĩ^\+S;3p\ϋEf H_0p3OPILՎg{LdWb¤ %EUo3`meXTdH9,DԊX¯T/͘jeG8nY#{a<]O[[O4qe8!EKK&7lGV5E9GϨ|Q=e(p)kNВgvu 4(9t{4g?E-vj8ƶ `"V$B gk%N=dWfuJ8cLiZC䊥\ow2 ?Ƨ;jBڼ$}okТA\UuZmֹrtbSGdS}ݙ9Hirg*XbѲ"2={go<$Op(?HϿFzɗAQ/6CA=U8;[X  ݱ{}v9/C1^`MW /)\#f!?6 5"Pװ`H><;^ד-Љ4&@l^"O1]'⬜ظ ŠģYAiu _$LXeۜs ^{rHˋ<DNx֜<~hfw.MwD$܏#)P, G.qg^o -!? 16&7E8=tdˎ8tnӐ+̅ 9]\A){3uBBrN=2dHqQ^JHce1A' Tdr"^C{Ck=ksfG::$4{>k|{8$r":]roٱJ0[7nSK ` 9HH 1LPaTYF#@R ΛL[fsC&W Ŧb%Ą+iXg[Z_}|m ]Y7٨EJXe)l{\n}15hYKNל ipD +բ(Up=;2DOeR~{ojgߠVCʈrYoqa]:JJjc"ApEmtG|bBO~(T+O͈J0ϕ`uDb^>)othRaMN9peS a3 TaP(/8S<B0Ĥ6c[eݼos= lCԅhC`TrN? ~dn_!aL9rGCJ':X~-Yc. #՝K,4sۍ{ϞdCAꮱq1)xhqVR!y XXИXJmAyB(bO!}ݼFAsZi'!}?uJd /I' luKxDi(> d,2J,[?){xgƪqTIrdl8J] X݉<t]x n݂#@+-h IVTQi|_[yEs\ѣ?lԦX"v_,e$Wփ!CgP:V +ПA8L,3 ُ-+߷O“!n'0ܗH4 'YuKma,zg cB5d{fC!38)^Qйb/!'WN;J2%Kir bCvP*;~/h,a-vܨiXGxoJ #Lj fCPhID #Yb)7K=c27 A%Q"};I4IhJ?aSf/Nѱ+iZ0QV辎_ȜsEJa1hRHݦ^NɤZ_s+4NhlzKr^b{fL[Yb-6Xx ?~PmD ;?Fy~}CQw@,2{톪] "S%oA:eP&QS=]3Dt?kc ;pkwdi6 u6ICvAUS:ĶE#jN47ZIeX+3m@۠ K6<0f?ȤH஺<0BʶYgoaB>x 8M|C UN]4ÇY Z[ý7 #ϫvJrO> Y((EӾ|p A~CGqԈ`欺7 C~bR/ꡪR,@ʨ㊐*,:p;'^n Z(gw:wYC 6T.f)?ЈV7$Eeq>Xu86Ҩ&#;m.1xl rAf-ZCwB *^ho ^fß32ȒQ2vmt<(6 L?\Z^7k />:c[CDjl\X{ `߼wkm4Zb}#^^^ip}n˥{8UYJ> j4zqd0,+,7#0O#NuG}CƠ\A_8nb LrSc %T10~whz͵yzSE cVM(øWBM#Pߌ6 a骝M11P0 VxBٱ+sgyd$/>0ݽmN>EF ψ}oq3wZ[F">>4sɒбsiV';vۭ$ '<[L8/Y%j]Rpii~#odm~RWKGk<|}nD`o6 >3An>../n@:M+M]"c(mT/ҲbsKt! i$4)a{e^RQpW4XeRm`Et`!<}3%T-ӻ^`.\D8|mQ}݈GSTeu-#Xyk>B~ SIaOO#g\]߳sLqFxAXOls>4Pr\zBz}f>I"rYw"d(^cж4a `]+ǤB`Ƭ!zCP98uk)?wl׌7mXeMjE9 pc w\.; L)ʗb w,?~$h.)9c6$JKc랊;OvX f5ʚ v,Lϛ pcp]}n-6~ץ@1wc`!p\cL>OG\*%~rIޥ,S ެ$ۑlfMxʐ֏Qlqtit8JRM]b(s7;Ā 6q$[i -[eЭ"-Uǿ7Zu{\X,IKW'z|F_4;3s>$HXs'x)8.TIQX_eln#gteOݨ邢YG޺0.aBɉz=Q$r]:}XR{1s?QK#QQ᰼-$Sb L0d99 2A' "цhB\Vfz_74jJHjr3W"[ڙoJ3lQzHTsR1q%'ia7/~P`IɔpHigCL1SzVCRyM > m7(zKr~ߌbn&Ftܰɱ{T0{PmŮCb:Q9]YfzKսcTg2oN]ii g店c8*.QbA +t4E,?UmBX[7t i2֬;sG'DtnRo&#" Z#jzW?Ҕ_ɕ^*怹_s-EU.ehҸW5WF4|'=6(\(Uq ~ە* ]/|7Ep{ŏ09"7zwިK9rz!VNNmvԉG'w`FxQ܆:PYzffk^*" nCe 启,jKLv˲U/=.N[ժhk:ˉÈi<im9lz|LB26gkIV[ &D<>j`Q ׉S~n@tR,v1v2WE')L'6. ?.?])$˖&u(rG[K. ?{59Ob\O "CKo쎋۫*r?;OvqpSW"uuI$vdP"۾ʨלM &:,L3#\ NM$#$;qu;o+09euC+ʓ@z`I~J'apFiߺs-9u6H=j啡3댣U4=}Z^>KAy- %!_ڝ)dA%D6X<ԕ^~gEE 0ͣnƠb)e2{ m=X TDțui!JzηM~JApqn/{=Dͯ55'[SIGy{ }y|6=^8NXusb: i.TOy`'.YD+B Rtwkz_HDQnfu%J)f+rLBwFsѻ .SK!q` 3>!L k$gZ+Nz2:PyLǤ[>( LN2 NBЫ$jDI4Txa`szdu5gQTt.Z7qqJ ȵl6 B$ݝ_LQy CCpF:rsV{Ї +6љ$Қ|`6DU ~"@@%oY6gx@HtM0F:_B|&պ}w.ň9 etQYbRIIpnPrWB[JAAA~Ҏ?ZCw(Y`fYwޯ,!Rσ=.T`4M)oTAU+ BN{ϡY@RƜ=+ҕjVo;0e~:c. Z?D<F$:+@BmL3'MX#-Gw `棟l&_FU}qH?tSh)|ɾAJ_S䘝r񟀣[CAkVy9(+| 3UKQM4>!j>'W Pd`ԅ Q2Ep4XhYzۧpӣxiXK"8ie\*q)iƧd^R*s=/@hL#\tn#=伿Ha%4掶SzrL(8Iª[?~sD. MX*^qt61g.Hbl\A l'%j,+↱J.{ݔw2d#FbYmKM_}Q 2cצ*O1cxj1z_xLQWuEBS2j tJ#hd7!5$ *ō~h,JG3lH$<˥ V0P/_xYlSm^n?N)[m6E?&"g?z *VMn7&K<63#LgA=l{ȩ x#bt:7Zì/|yN,m0c}ܷM'}"̊mCaWCz() v|bN3X:?)bݕ>tFwI 9ҳq7=0_㕈#0mj{((w9Bx7֎ ȵ QQ,Q4j%AC%NtR1ɪUZic7OJe IPb GYֈ*8A^y&2 @ /fzź7\_ՒK^W&&|Lja\,Ln0!wh"t},Fi*-cTև:E]\0:jqg JF"W%3bn!*8iW䐻-\x *>^rnx5d̳6{⹤ YZ58_`:C>rۂHé߃2s Ux/HSc!ԓ1nSvŸ;*Y3JlO:Aw؞TTktQR=@^˔&;H;o'̷}9WHz,`N `6rU OhC=#B\_ij\+2=@6v: I4/r Jֹؾ2*FU^Djtt-UrX=2jmB1S<D-5설}ݰE(ԁ'7+ڭϚިwGH&-̰ɧ\g/+)x4S-w#?zoBD$fUBk.Do`:}HU~ba7wG_Dl*HDU0)<{qkVJQؒo kEKJ Qeum1X+ޔC3D"_{a/\ v|JEJ;`͋bM'٦^mœ;@m<`i.֦uގe:Pk:}U1PH64kb AX%,zF ˮ ?}r7wh<X+u8N]yz Wc&Z@Qs'_[Fk#]wV B1vRv/Fe5D~P\tZ!2VTY.41[Du9Մ CWjYsL7F{EyZjwÚ}p`n|2]go].j"/!;}IUQh*H?\kٽ|EkЩP?[c8`+fmtl?hךgmfSXl҄BZC1)h q"mp7 q.ǂ`Nyr6yE@D՝%F Y2-;# ) gQ)ɝڗ[bW{{+Vs%sQ 0ifc9D~"Zx-6 J ⎩x݅E]nxnM]uPO!yMA̯hOK0%4(>fSb1av=_0+ҨQ@dtH~;D5hg T*tb謿d2T-Xwņ.)h2fk;9<L&uDQ&h|Qesk u5 Fh"B=e?*JPSB!Us٠x_g]Y)(G|&>:BRl6$%%B^٫ g k+i2<7"g^ )@j4dX3,7fq[6iQt'nou]é-Fth { 0IzĝܝixdSwowTUfE啝Gc;vpnM`WKb/?eA*Y*Z(ܵQڶ_iˌK q,&T^ uqKEfh[ˆ<[p^~\o*dë ;\l'ukzMX^X@m>2Z)=,i;ū7 \,VS!ئ8.F=z)LCAwM%)/8^/`%=;LX(KFq67~g@x2,Yoo[z~$@&yυ@"ܞ{_RD8=(dj#JOߕb8_v?džf; b)Zdc VuLuZPH'_ n31(V8)+bS挔F>P]~ʤyBl.Du:2vh7FŨZmQbܡszةiYizQvd. IjblO?fi}l-cmCEdU0$+ 0M/&ߩKSkuɔժuטtC%7` LGWTW:uc( Qh&n@tkD*r1 L"m<ظM|Słw^ F Z@m̍ mӺbt( _5v.$أ=ʺ'ɱ=,U5菺X m'x1LH^"};I !)J%׽2 QqaJ'kktКJ dm~6˽_ЕޫmUhur):G{VEȓh8 Kju]eFw6 ]kDB[/'H`bkGV2LM9p8ǙO@ڳ~0[ kfTWG ѮȅvUno-W)qVpIWFn ΚE $6)1E52 {ׂRsH-Ԅ8cM9IaͩeȾbl߰,:ջXJhk<mNS(pU(qz iR~,I9USzչPj3ckÙm'~г0YE'(:׼p䄩o4%| /O Ե7u&CI,w`q{k4'{|ul+-NA,+:xrɓ"[M3$!E! Ar3#!SdU*@5}x؟%Ɯ!ՠI ?Ē"kV|<ǨKa>sqcYnc M J<#p;PgVPǞFcf%%#-~m](F GhFp]ƅa\XE"YH=<>\Y`l҅RڴJ(ucZX~WktMZ>hk̹De[Jw"g[ & on?ED06٥QVQ!, 22@*@scTJ;f9O'j֣>r)R e*_p,ַ$(kyMʥ ˞ԪȩEtaRwGVMTvPtGi `z.d- $!pTdߛi. 9@">Ϸ]e]og+_y{ye*-MߧaXp)XgO0s4ִ-jyLv:,Uȕz^gSL$}kDW9%v8XxV?FoM6(#;h^ !$Ppr1};YgvlXp'nJVq_!S`˷Yhno ,$H񵂸]Ӎ0ԖY3ĵDQIddn'Eʜ׏p1;/tp,e { 7R8K;MgC]\Ktz7!b)։'h]vP:ʧ KLl[g-4R;E h/yD@gAh!86xZmױK(W,^nf!"8klh ǪD0~ēQ_ojt^Ř;x; J8<˷/1Q-A?'GV G "/-_ sa/FE[R d6d,oǾ]%f[=Q#9s//z Fݩw,cbc˒B?kU:#83>icuh9Kȣusڕ8": ;,  m9~uI UQmrˋ+wn<[Nrx~ S)-!< \Iu9? oѩZ|3#{ģxAL;&\{\E* ޱ5Yae^8_a;sv]ꑋ$ĐR.TDZ`0'WXoOb }O^o/%u.оzx{P":ágSK7cKIBK[<[3Wrh}&Up1 sמMٰ. T˜ib%iq6gsߤ2HshxrA~ԫ\2F}Ψѓ~O;L*~ 0k;"_f?O~ |D!bqtkĻ_m-1$;$d}/s ?8:`ՃIeT\vF&HG;iHP:Iь[gJqq)& Ɨa:3xw'%Ƃwsd-7҇ɽΣRm o&AR~j9sgu\ۨk,*ax_`uȆ| i2~bޞp:I6T!b"OKvV#PORMNc}f с:_J|JD;}4Br  [!&DpUQ#bz11ƯuiyW!n̠x"a x1݃$b׾6ݑ*dp`Żf7%X):%y,UME|m3u_6!? h[ zhٗd*ǫuBh1[&[:ZM3lܘ̟mCWO*T" 鿺0\wcBMY]3`3"Fbw• NJz,T8q<e~dx ?9qhIQ#c>Vͷ&ʲxY͡"`Rr В0kF K`n0;$39K?@a檋ʽAG \cxA*:e u}% csW411C xQMv#GBRUmIjij s>LOrPWSc[=$Mu)ԥ=HM-0I1޸A_pPt\Ty}D%_KZk=evfX@Jv^~ɝf.L7_>RfWBk֬{n&وqcKn-עpfoTUK<(K|PnY:Z4^y`(ZѰ7x@14!R;t =l_Mc︀%fMbʯKDxm"vdR/1m[ hDyN(H;t;Oy]V|~ܰ Y ZKdn߭ua7lXiYx-@&0>qaX]8(FG6P:Zp^:f*@:竟9"X-Μ)ƻ*NbD+[Sr۷%VjN(8\d;9*%rY*Ǯ+teg |L_^X\6Hf_䙻iv}JfuZ';hryNJ"js*aic82Z"BgS2b_?'[D`!6X V1q4Z%B\zNpcmh)5)< !7PY{ra׵Pપpƒ;,_zX~K }d],#^~n_nTr5{FZ>T'd&vڍ>c]3uY!L꫑'幚P7FNp @?f,z20/T/X)i,@?/ѹl42 fdB'CcGMaKQ-~pƠJfAshة=.Ypb s~vp3'Oa]#.V+BJMhndS3F}kca:lrAݽ+˟Zd>H~dη_/cm@Η} Voщ> 'Kkm (x_+p<Iϋ6vf 2 ſ*.rRdv$58"cGrHB?kl}r2:hzw z `CTMORe~Niv+ tGQc̴n"w XV\^jnC1VozY^XkTCj]I)~/i;8S=B pw"FG5;w7tGf8z!ldmDw j^uEx#thKZ_SYn5/ (?2vX؂B1(Dh8?c.f13"lޫ :_E&3=l|V˜0a.eBNVuv:?:eyԍlD3Ht[';D!yVld_2^׽*ne;Z+];٥=뫍TmAF$Ze>з^`=O8@ y) [Cf IdqoH*-⋸3閙? U_2ngt29JΧL 4t᫫RqLh"loսm*m%d#1ёO\AM/PC],ҍfư gU%\mv=WթD:yƔ Uz_#H#K3vGY&x>8dkv|[_b5w'Pt@j2ӎV~^.azX.(#鏊GU'm*S+bkw^𷺏(G0i[Y01//qyTD5lTPyBͤJjDuɱxgpn oBESbz0Xn:(\SdTq$Nɸ[CMTi2L~\ۊd&U(4~˥%LI{yl:N<)OF}c2 {Ք:U2 GIAJ1*Oe@A czZ:U=G k(/2+WDP+P 0?f&<ciW|^Bጎo/`cየ^>'+GYܩr8jc;UvP nZn')'5/(?êDf[/$EZ3T!Y^JLkJ)}ob^th5Eyä]#uzW6X( lE:9wR_gz͆x`6E9eK~fՆQ)$b% |>0r̮Vl 7I%b#0c)"rKK8}pc)%wNdj9T/~b`[-<&4;x w$qS|Y_fm;Bm9T[ǻ=$d dA ,{ͻB.t3n`ߙ)TܚObPjmyĐwpo.(7$!6!0֑..¯|ẘSח5ʙİ _5%rpW>Yp,vf*/32rDh<~xEp[RPހU#8 }y֔\T, SCa+5&;d[qTtP8;%u-Bʍ>iH mrȌ Jjp<C K؁qxqB O@&؅tHeqK;BRrdG/.﷣(f?ޭ[2^:AOt ZpA$bW=|rY~Z:CI?aAѤ:mG0X}ĨLşG'X8%3&?L$)i6ߎ_k e).tefS+Zqv#Xs0G5!|K^1UZx00xou`OC8m 8m?/ v7zdW >ޱx5y0b=Țq{R:Q˅n4upAQ{T].5>0x3 /tbr{uo ܳlZ^pf2<#tt/h髬ٞ%#wS [>QH)X_`@u FL q^Ko[nwaJI;:&bsw0)`z>>cX>s}OVe 4}e3ˠ@iiXDpk pdԇ*ڏ5oV☪m e. 9MQ^4/_UMG D2˞0zXq h UTyUWnֳ}TxGIUeLQb~pd!|E5]R X7cso^tz]o{O99 u+~A$9߅%on3-#:$АSN鵗&FѯtYzm8'-c8W,7bl(.=V#t|~z7p}_%~c*el~sa'M"/n%|w8ީu"*^v&Dz(mLzJz fѠ ,}C !v~0 =OHޘ\eW½9ȫ 7|<`"e[p;OƣqËN×/];uPEwYȅG^`OZЪm?BGA~f]?NͽgY+IS-Wt^h Ŕ0%+`A5 gYSV5%&|nҡl5X7Cszݩ<=V;y| 3EA`V*smqX-s7y~eO&{D$f<~1c3,Ϡ%3MֻıP(rN6cі~|d 8<|@z@YӬɎd~3뎃O6ܬ*2*ڍbz_qd8Z> ˫Cne^JOV /a3MEa+YX3"O 䩈k)Ss@>>QY{EkDWӍ %߯_–2֑7*u\>2HF IJ>GQFЙ_ҺF6tTӸhS/5SHjv k)w a tg(JPSu_KB0pDFxPs9]=#2MÈH"9j=Ў5!~\.eO{ɑuIp׳@q AEIPqAƈJ*!^CXy?ŔSe6u꤄{~|03@%\QC=Z[ę2>Nܑԋz??JjrU$ދgWVVI-ŊvI|xAY|[D#ҴLhXJYh6~O$pq`X+3~h U-D$}u8zof_KUK]$_ZKa z%ol~U 53kb,ĭB /'up7޳J'b 7 Q,rǶ:$u D7~/K)P͎!A ì6ڳ(LI!|FNQ0 }D&^T|F( ^kvF8Gsb1H_zR6t>wzHFOmO }̄>[u}KBBN(/=ir[R9P"LW Z!^P<{İ! %rX,ۘUaf%0(#zf8EʋT>mנ`Z]8(NE7 iJ?|y'{P׃l3Dc/T|@_ ߊF.ʩXxZ7R= eN&6NnΫ fZՙnL5ad6dns6IzŽ}9u2UQ+p*D1&}LڌR=der[t Pyac!H~r?fXan@#=&)=Dh::9!H7L$\hץ-I:@p]&}VP˿1~!Ȫ^.Àr xF6ʑ QaC+Iԧm}`Q3_=#M9:7Lo?}Ccyӕh(?"F!yD\'f3Yb1LM Q↲Ȣ= ^. [ ~01H3W9Z'1{ &ܑ&< N~a<(Wϱ1GT,qusJ<-;rN!5ppu( 4Z# )jz1p伈/N='MU%4e9E}ӓ%1Ժ?9bx?J C\wkLO/`eI%AwU۬Qsvpb_e%)\FсOjHpUYmI"Lo;@"y«(;c`x PfI砗P,#yvN[QCs5vI=tBk/@/gR[ɉ4J3; KVqh^h8ui6$SV;f_y ,8W&l2N ¸PXq>>pW]vd0[QZ,rɜѵG%H=WntovV~Q09x)͡cqn6Xz'AiF"9$oFWQ@bEi@lt;(<ݭyaⓒujM|XZ[蹯w9 GٙX·\JI8d){yk+||G~^b >(-F;iBD.N2Z@bͦ FgbF/JJ]%&;]6O92@9R6CA"Noâ [Ꟈ q΅_%(N52fUN\dQbaLEģAS8_ +r4\*& tkjǃ "ޜ!م)D+PDe&(]"G&JE&:3"%^L@pK15oziL{z27H@yaT$$+hh)[ˆYFSm4JC9ى'qXF*aM0>P OJޕ-܃G8e'q'ZA?RJڀ,A1Oe)mDҿm:Y#D[4=^\qxbrran2@݀+ӳ 2TһѮj (B+g!ރѨjNk2|-YRqsFxi pqRhZ3 K t 1 ā3XB&]R?mPef8n ]=f9b{2'|5Qgkh;(Lq+ڡޠ &`"μXiٙDU=>۝8 ~?.=Ϣ"}NA^sXRT@#Bl34 vcp^wDʾrHޔҸWpƾuCֹoMVHbqv@mg9݁+ ݎQ[yq]LT Z$$^k IFp$𭎥&$taBsX'kNmX\ĂMAEېwAj+e_+ {l5oxioAܟes#@K[Cz wχyd]n\tw69єf?Q #Η٢Xw0ʘ,ILb%^,K)6!m2z|Jܔ_խ~3T(nn<󖦋JtL6)(/.P=˓%kSO : mkbQ2p{P_NM( ."|QBl{?b2IzG?MqxAvLTj0!Caۼpi^/AFAhWM >at sgEʝqmul5'%U:2 A!MطV\= 8=CYAc@5cJERn[I܅}xq@MѽcN?Psiz#>syI8!Y:NS4bs0MGDȧgqn-AY1[-<4g#IzǑWa#Ov= >&zV?@zۯY,ƫZ/a;NW67]wF>Um}fQrDݵ2o4pT8TϽ cV?>$Ȏ3:r PqKpX^I@^OBnR#L\j}ҤYv@4V+7C0ǣF>MZT]s%2~8}brf~|Sƿ ĞI [ Ω7Uc>JL"Yv DQg'(O :+桥#)B<7R:v2g*hjҵECb`D6X}9fT,^.װ5hl[hDnʂՀ#¬[ҮpPFhy9> X7 4=/e4@LLH0ZŇ~Bgu5ţk,_fꀽS-2 r~3S2rB/@褘*kHbHJrd@ xR~R<>.ɜ{88C,FNa-{ڔ,lU׫l턐E  ?Zmb Llo8_ex` %8GTf.C4R:SIEGF?R&pwXOف9F̪[49~.ٜWeE.$\tl;oːd&zRsy@;Hn\ą0#¦aD XIס>Ao+?n Ͷ$3KYJΛJN)]um^":sPEEZ?E$0qV@\*۹rĻKgi"3R~Psh(rr#lZsQvR׌nx{!Tt0ĄiM/YA:)Ջ/áW=TAzNDjgCwkPF XO2a^iP=5v#w@&ڜ9&ompDaps| p5:/t!VvP=gGYrj3 Dov*ݨ:K^6_>`[)Jrv3[|s,3)PE~Z(CUϥ{kWP0IM[$ʌ-%ۘ'?3_GMS̯˶Eӂ#GTP\75FiwE^ԫ9b`2yeC&xlqI?A TI2&PTb;'i3aBNC+_<;\h`WsіpٯkoccNhf10ɳ肣P\~N;qS!x Kbማg^R_,\U;S^3قK'E\mt.8F: Z* 4HzkDMeE˕0X nQlúcl[`)!ԊTDYbo+}+r#sR ̻TjvmR(CCqbGGsH;Zb@[l/KXM n]G 76Džd:SfSq nBDPB9NH8 .Xc Xq܂XQ dɕwa]f& ng]!=i=-e!2 -C|xQi4Vel%s4xI&GviĐ>Y2W&!LԴ~'> Xo-rj5lE_HS5-DC 7}~2[(tB{2! K:d#.&Q.ADYs9_T҃`zIvڃp@i7y ZO(K;; ڋ(LLR}!0U(/u*QMnY^[FJ)[vow<6+FZh¹@2j'3SJy$n.v?ʇeɵЍȬ hRM i`'PҙR@ 0cY4/Q^TtͱA-6 se.wi6UQ,.htXom=ߔ|~,k/b5 Rg)ӷo⾑W޻/* t!'Wqv호1IYJku;K^ Uv%_,_~vE䪀p"SMڛJvv A=:-"VnΡ=JPs=UGz ]W7{iO#tVwۜNK |6Qk|f}`HhGJܭtEwx3v-k_A~MưB#+x18g3.6H[&:V#zX$~a"w^s#f JXb?kAjUIwurë+[ & 4Ź}ź&e<ÌF ړ k1lEѽX吱8vuІ<ȜCCX,)6׸ #aH/X6Me~碻\Xɩ(iR ̿/cR"\ׯ%-5@vNNS%2oЂ1/Mr"A).-D'+bU@0E>I2%uWPmyN!ӟOFxQ,I4r)ob ,X1H}ٳ,e|m(/Abq\ 㯑4MNJ&g^8La77fTBg?~ֵFӃNU'ZD_"RtUR%m5dNY~(.EpPHg;x$LpTp-wnޥeEK>AW@!S|kH!Ϳ 'Q1A.G 8ո1OWL35AlJAGbqT,1gMҜ{-3lsV3B8lM+!6ױS=6<9` mT-F>u\ 6{`6D9S(\_aKWKaxlRF[mQa \bM]vX[Py¤.q'0cgH}"7[r2$6=SQuXKùve`oZ2v<*& j/!M68@\Pt\ɻ ٻiGNHsC{˥Wr0('Zt>>D\qje\p=vA7!Tz kت^g\3C Ļ?1%lgc\A'b;aX,9Vد6 -!tZDã&sT`ŕD+}}gPsd3-8 Qd҇H=}8DqgEQ>sgQ1{,{O}83!Q;>xtus]S I5 4*̣8)edRcŤWmN^9IQGfAHno1f<+oju5.17`>Uwിh3_DWe p%gMVtN܊pÑɸ&ﷱ}:ZW=ْ W0{']B)[RS)5|~y0;mxYkDDyX@G=[;s^XL+*vLPTOwjzA_pM'YW ZuX\2|ۓ6@ 2KvTۿfe? Z]˦D1 l%b\kdK#w,ED=# G_f"\R(]UQڸ&XBq!C|aUa.wXM c&ʰZÖ[T75/X)w.p%t|?h+)̄~VzLFEÆ]PF @sQshR ([dBj0* ͆ ,rMvAj*yOYj{<[_Pd ]:992TT4:KsZSyj2Chؼة Nճ<rgY8$1[gh!+O7O!\8CPyi3P/-*@\Ŧ|ۺHrx{BxW>JNT[m.XqWߗYbx !?"V8xb K@mlF91ۯ'CmxIDyD09 vb<}=#tɰhtbJ=4OԳZכ݄uBޭDDOP~Gyp`}x;8hBfS#h1lBP~kgFI1Jus[U4%A@ls(2c< ̚ݞqfc|#)!rpHߺox)'Ch߈DǷ7r PGˤ.l_VC'v̺BUeeIyTD.r ITY|4J*u\7Mb!ġIp{&+:BC<*V2DE[nUYNz(h:ZIk' EYЬ<1 U4Nr1n5^i{'*Ωasٗf D`-P'/XNJMCcɑ^yk0pQsgƦM-N2#6 B %h˃_K%W"ۈ.OfR 8'Վ\T>g߁a5+RyCNF.5ik&U;}g/g"5o(!' je4wT_Wjeg͓zJ[B>QQWNlaޗEp[?BP^}V<΄[)+h܋!p}p{E5gSP3L.3;9٧;&ZŢq+}!l^Įv7k:Wekc/W&߫$!1njNf%ɹ <5<@) T 8mPD \R43LZp^,ZI 42IEO[H?bE bUu/wKɒƙ@> ۟÷ْTX2/2ۗ`:I^-bTp6Vt}O9aQ  pV&)kL |`(`bYє zԤ[P6Jxʆӿ8uK3Moe+)J)hR#=K0Wr)|"8ZÉ7 0[֟2}Ocz]>]kIFUGafǫ1o~O\ߍx{ةn+wZ(v}p;Fj\9{)(DMqcqaDt-qP%%y7ܒ3Hb+XHS|`1DPV}kÌטX 2L>ELDy8|Uwr:r]5H.GRevX/sQv)ΨۅpvC}"{*,^$@WZ$6 x^'~Kd26SԇmIBVyl+xpPf'47)m S hЮ[GE"S2 }yQRXu5:r@YOƸ#2s]8p m:oNgA~HI:[{l1`r.6 ,?-#gVS݁.4_Uηaѵ& h~t9jU%l4>L-~+?:6G3EA7b%ĒPtKU3Èu+X܂^(UeJ?sE/Ńb^4`:%c(oٳ۱OΚuwUU@Պ"3Ր{W6xpsv,=GM/g_l!nG %­/ub® ½T] Ga%P~‡cBh>; s+ q{s^mgH$\ʬiXO֩ԎY7`q&cX,cHfZ/[Wn@LhP"~lZ peP( 滽E#뼞젉iWEx&-Sٸ؞XG8]g搭:x;ꍊZ  ^L^}GLxJ]}Y0Uqogq=꿵4IҴۑ@lG٥W'.5y bU%w?wӦC{QH ±y3-Be?˔^k/"MO[7FOˋ1s@PC](ߚMAXQ"b@U4(}W<+JvCkLbX.9ZY,(;(fH&,+ذp_`kx~BǍX~;ʉO#:noLud\L;}Љ(}Nen| |8Qd*˃0PWamV'w9L24ug58!l$ۗ0vXRC5B#leP ]﷚3̩̅/`i T VD LI6A,.n7w{Յ^j0{HwrՃK٠t7~^]B81:E={XKb:hzțykǭ,4F|uz$1W5 pmOzZT5!&"۟))Sxo(m5NM*Rq*T}\>6c 03 `wc& EnJrSCh;^Ir(+W_W^D&؅V?IQ`g5⶧ء AgJ:<|*#wlSuCJ[zA)_ϧ4H"gl _9&wܬ%mQ%Y^qOP`CS0hZRsf5YfmCe7js&/SN%Yp- ߴJ竒`f0)hg3>`Noj mc!kJ~3Y5$֪z~c|C"QۘDe@kܽY4KO `S>C$đ̶^:hC9دq{O#[С 峉F%`0 '*2scJ6%f4Kj)T6xS̗Њ0(F7ۗ~f{ C9Ƭ>q!ryBaڅ,?WAޕQsE}FvHLg[ SL/~|@&R; ?~Kjf#ɥ~GE6bS^~RX,mBHһxŏ2o(7wݍX q@Azzi`e4$EEi˵9{۱'uL[ j\_) 蒙׊[#mXDXn̷BLG{Ɯn"DͼR:~g >vuQv1]gktLuZ7bEvB*B7x+HBѡoNj?o͜rŻl☫|mؘ%j=D¶& .ijgd[*LOPu=|ћ9F~)=N-D?׃f3]5="0'g^E!.?Bg$/K۞է$G (x>Xdtj`-nٌͷp4:VkS![˟@vs>mbNwhs,linu\9Spif%=m+pH1u EC}1-|i94 {Q@\!Q$%tĂؔtHHېiF.XHX3PLܦFHew!ߝ_ sɀF+ Q=1kb,;|54ivZ|sɏ%E]mpĿzEv[Lo 6ߤ@FZQ9D/:ՋƂCr,^,Du (oypn-BY`-!9ڡE8[8˱C8" E<\F x˭NӘ֋AmoH*e4_ܑ& cllS\B ͋}$>44N8f+>[-6h]y5"Q1'wE`;!bSWQoU32`&liGF>ejVSHC)ٜfҝ2=f'_.T->5 AoK NDƇu7|`ʺ$2}6w.T\ 1,fI$4yuYq7ttV' }Gscz MVp0nJ_CUu DM .ҚI P{uV >WC,Ŕ7ΟB} :;JfEmڥi8PWķddM֖ Kq+b 3y a9?w6mzwqȒ?fӇJh_$?fV\\Zo2l_b; OnQ=5N-Z/Yv@-(n?)Xf2[n5D#M'yv)wkNQl}cxƏvogxWSg$8';ƸsqB5cIp;^m:3Ez/pir"J]It۹f=D_'(Y, =b-\1 /ſъ )$7%#gczr"nCGJ8I|yАp`=e,Ǜy~M(`qdPY~8f L D^?䠆=E,m:X%c;w'$8: 8>gdR0M.Jٙ$a7 "TuܚӚ)m@:-|1#p`vk+rRG{ f4LZ,#kU%ڔj9KPMaY*۠XZU+kaaS+ oy@El})'K|̧֗fv)y)}(lO؉6Di $ xۈ" cXl FI|tO zLVnv!RU;{}>~2T9t468oF|Pʦ/YƎd2ֆe`Lr t*A5m2v=ayP• bWZL1lJYNEYf]_/3d C.JC 4Jf],٩$8k`<}nNG wh/)]]$(гS5ty$`֎'$z a+c& =~JB^[)3{ٮ9RQ;4ow`˗p#l]0s#ʵ\J=4:7eCOU1 [ /3/$7x2?Q=_C_7:"k@To&E֎@r3h$| ,Zu-; 'hRYݴJ>^pK@T nh '/ m f~J\]G#g&3V`:l%*BU#×iHGr)VQiM+߃ߜAupzb 8RaFf r2&_WSiXYh!|w.]4!{󪲀l<юkm`:*!'zST\<BkSZ?(}5n87 Za-d̫E/'Fg*1Dq ;Z|3FNV`38[c{Qu8 .OfѦ|B\OeR+S|,=')Awkx1,ʒE\e - YC(DNy2˥a%-WD[)f-H]aoBV)zޤ,-5RI*-ЇyL?t+W"<K3ɫ#~Qp|{#R뼇%q,~T,ܐR-GȻWH܉be޷sw׾⻱ֹzʸn|%oє){ё̉ubzQS%r%(`-'fq(AXlԅ*NYNqKu-b9YRBݐy[sX1~L}03ut_ˡmڛj<FU6=6R?F-kl!ؠъVWIzy^kmCbt>y|>F@ >$NI z\$Ri`ѣz&i36JtIwXz~@3}>cE(xīNѳ߇6=AWn k9Cjp7C\ + vE˰t1DΧLV"5`ւlQZJp_I+|4(snX.f2 -Qۣ^zx-\ȬϰÝn6Arx|'H3UUe8 l L2T9_ՄE\o"4ğ|INW\ S/'\Y<դʙISMaH0HlcmE"Z?p^wykۙ;PJUq$g-:N] C/GzV? FY7Idz*t'X6*+?#x'rS*CW):i.lc|d|\2yA+sq#g&%1n!n"OrQm 'fM2 S~c 7ny uf E.iqG%BSV bgD-Խ 64 GڔV8l!iqz%Í!֏'=~:F ~ɪFقI%ph[-{\]ٝh%K x׆8SN"vȓZ@B>Py̪Z㐳pq';y`3nג=2RD 8eFfć95cɔz` q.)//`s55R'AEVY*Kn2` Nҍjx> W`HBޙjKܣ$їq&K=Fdzٔ4%ܼo@攍o^.\ÒTg3 -^q 9hg1TN݀]Z%ډmb˻ax[ +ky^m5ݽfS4Y s(Ȅ){|g"1B ۔z"^IeY~XU@b8 0 Ib"Y{Z@RTPé') s^MU0(2)q|AmkKGJw)a|Q @l34]f]S͠@o}d "궺5PvM07bljud:M~knv۰Ad/gmslڍJUe7]p7^o} Jp{T}:MoI*fKoK.'*WԄZ4&^&[V[EY8H߃%*ә_"Ng' 4nWؘKQ<_)[teMT}s9Z e4+<* r+<(XGفA>Dה7PN%q}͊uA?< =ן^)W 7towp4AUҴXCp+Kvtt۳_7-rP}dbpEnyԬ"qyG?crѦ`w#1mX>iv;Tʦb(LL@[ l.u4y%J քWxoT;ٗԩL7YNZD.]"ʴ%페.KDdn(}/@<#Tg@"+2~K=NCg48;BFo }Fx{ 郷wszBJqst I[L+Θq.nfX So,q׷mEpotbj0s{MC³q1=ČBN$4 @Qx5E+R&Po!@`X$U߱>m mP0٧IHؘ }_և4.L-JaT% o g{ciTP֗a7b^uȘ6tԦg?уuUS;DQY} uтX*H"ORfa$C2:~ nt7骢WnfȈ)c4QqDmIQ rX ڗ:!zdj"5ݽJ<=Q\\DǭNH,B NK8%آOy[5$Ce=Z:sk{ xXsF騗:NPצ(V}CbІc=F>C/K*tfnuUmG E8xdff4sqsE>uEJ,&Ʋuk=rĶO%]KkVƆ a⡗boCa3! x2S/ ])QO6P#= ,p>% ٦EvSQZ*n( *MOg>|F1q҉8@f|-' ݈|2ОSN(;:վՈU Ͷ݉:)$"s%TM=alf̸ >|k fp:&][f?QpME T dO_P: mBJ, uM{mFo.7Qvt DJ'5+Rɢ)HZq7%TX#ȍƦSYH]JdS vڬim c5W@}kcXE0$4j1އ (Ҫ3C,b9Z ױkxpUT&6Ԛ3 ;A T>Ќ]5oYn')xz+Ùir߄0=:D [1\8mJV/+u3HZSɺff|zqt&%wk4|= >Q-]G]36-QcN^L*z uf jxsĭWL9T)J, D}ٮ'J-ӷ(Ua comDSK9|J;"G<䑪RÅ EF`0lTغcsrr0[=8Ly| k8`Dd2;#H)R0 UbkP~M<3IMG#}i/d~ڜ/Xk? v]ӠK׏86Ժ+k Ӱj`'E9nDg}35#7HӢD{`o_BK( .vhזdSZEnGȝ!-{S:"56Z vU9V%`О<+Hj"1eVsd@ k.nYw"r Hvf@֝>Y|f Cĸ{up V[1/U:;am0@ u";>̝D'J3H lE Z !n _mޣ:8K>kLʹ%W8:([->E v4{̌w ZZķ7@O7I}6|F{;3W:S:e5ü4*.5ONOreL5s˝]q7R/T~W =.ܠIvK?4n1f*:9qS= 2q+hOlTOdO6_wчB7˵ پ1/d'37L X-92ӵ!:j1+MOX:101mx;C{}j/p)&q'V|*ZJCħ 61kTS)k嚣8㱷 )Vnuǁ7;Zi454~ޠ㷔쉤p@\`c":H1D&N-PCA@3|Q_^&#i--VlڈRbм>J fSߦ+&~|c_ȹ$җ8ŏwZ= -l~s*6_XFek$jm`oߍJsqfUF)[I![ܱ :ZF;L:s[.-CXn"'\X'$ȹ?3= _m֝}Kvf%#wPZ@K?S7zQc4@9Y <ذ^ᎻC5G t$D[x0.L7gf^dl;Q kIHR1+hB^ԯ:66 8 m7yg8 x-b^{)o..(S T u!g$_μM\~೽Y?;ؿY52dӃj^\OOǣNF"$UfC LzM1A0 끕mόߜ`G3DCA%\r^>T١^xu‚YSttfw4ֹӾ lKje%ƍW}z=#-Pޱޑc+֭n$qZyf^߂h epO:AV3.,M%VdSĖax݂'"=;.2̵CAն3Y;n+6 P@GE\6/&uxf( O?p|Yf>QA@S弇Z(Xr2uVm,s}6<Ș}f(-I+b+Z1pTD0t]5h%`=KaWOCwP-6BU2|P5JR7(ЪWl{ %(ƬF&oT -2dSb Ur&POE{ʌ_jHfcL€kIZ̬|‰[C٣&6}bi:}өlBS98z0ܳϔi"F̾p@2;1:Z›nH2] A=z\@?xvxZg 98#ڋ\GnG"N,Iq%5Ҿ)/Zw;37rz}Q/>D4 @uDHWDnv= D0遭oXo-c > bM%~zVO*X:/]|b!A v%8%xY7ģᱪQcmS }{hU1R"w~w/ }_"NEhn F=eZ1ԅ^:u.;T5sZsW6%qFڝIZ#h={K5;d͗qcg'&x,pWG|kgsMzsG^>_Q$8i!b~NᆑOco}Hֶ 2{nQgr8V`;ر8&j`6@yT*8~"3@Ee;_-u3B6L1'=cCYIzc@;idÏUK8/>PHRWUЙk>W4xL/%^s"D[[1;VQ.ύ q$(+z>1;9Qi݁A3\$l:;gdpQ_1ߤiM6#NӼA#ume^`qRQ"=MRFf!@o{4p,A.PXC'ɱ=)XV1/%!? ow {y%w$@(kJ֓˿3DIbuR2l.SyfܢYHtQr̍u~^z}̘,@# `PvU_$;A(=h"9QOqyzhMyRe"E=BulydQTB3KD3a%PT-CoӏVcfT%\.ʎ4!~ZqiJ;a&Li"–j*Q-<PG-}@^ B#gÕ7Vj^LCH M~d蜋1 薷FNܘ XŒzA14ͧQ& U X5Tl{O&E>wݒZgK hUVvdt(7OeaN鶁}9wrP_*"9ph4$$2'ҟH^¢VRY̿IH@s{+v%!G"B" ϒ9ڥn}|[t*dt7 ͉rT;M!tp,ܑFm]tm5dTz$Eǁy)Yߊ_Xʆ˕\~! m+̝Igkz't aF󗽶h?(-?槰yx \⨴UQ|[|Zn!WU>CV Y! 6P?Td@'lޓr[}$9~3BS0./EyR 4BGJ]X |ѕ ڽϙ%ߧ$,d[[lRe'}!T%MpudΦOpH@@e{`&#$e0*l ZF"twKϷxuBPH3-+T,t&([7>=pp SKЅȸ (֟l>h7\)ФYsP7@2wü 3T*6X/(TKBeL@R! N lv|{Z}}]Lx0*qb{gbsBP~:DaGBЎ_l߮8<TUKpi?+C#1؝ϊB _M_"XfT)*emKvTU;N޵ ƬP1Ђ N-D-v5u͂ݧL'$ 8PTu`AL^^1_Gdu$`?]&YҷvFM׾JaݷT̩w`Hsi2+sqO><TΥ"e;%-ӊ$Fx=m(!aO~ }G?Ux7d[uAiN!V<7ykWe'g|A f[(^ 3h1٤p$G $U^q7vw!CcEGZ+,ҤP|` ?edK=Gܚ!!-CS_Є zaHYn-5 =>+?A-# 7m*}9L^ u(8jxoG, gN*~jGbfg)&RN Yў̰FGe*'RI!Be`%]IZh޵Hi=(&@Ra갗=/ VrF-S',qߢ'z#WG} T`k6BoΛFvyBµΔp5S֘2iAk{<$Vb~vWƼ0)l){J#A4%# 00(Vt Tsz9EvFy25TW1I"Wwd󐫟>u[_^:<8r'+HtRk D hSq/t[Z)3 M;nF1s7g-|8{OȢͪxpu'tth:_,sٸ_+, 'Qe 4E[VKVPINX7b-;bQw鎣0Wv#xl<҇zc"XIFO| 2I줔ߣ0du868%,1uU3Ny5nkJC}ZAU JUSIʭցN+~Q?=k.uvnpڲXi˝O3'DZO|n:b-%:S[rMF:#HD % QrrǬ38ˇϹy@o+SGyEOc}+YSӜm#(*6Zc;,b)o2mw(Rb/=(~"jPL8A;+uDZAgCT{w'_K@V-fSIZ`.: Bev`dM.հ{貀Lś?PUY.d^)INeȤ?/ idN㑣$k"LQ !jL]б@}KwĨq%X,u>[% 0-{ rH*%Z@)k A 6kz@2} V8"wTs'շ!{q{ 8C-\4U'UU;D7pJf{g[Ulj7DeޢA !EHy7}AB8dM7BXnD FYnP$62ab .T~1p -:4nЊS\ h,?Q5 tWߞn6F&4!s;Y'a$`+t?Jtb,!3 v CQo)\UT4-cmۀ\JlJH/ 2XCL l]"TN5=>wI̼&D봾Y\q6R.Y s+7w1''5"8w♹ *Pr`y(Ŗsҧ=:nT]%z9^Mec]7CG^q. 5Jl#|r,,vʼn #d;i3U`uI-ȵ~}wXIt};IJޢ (7]P#ނ>Ӹp ֺOʧ|:i'iٌ$hA\Qo@jfN`' $96}-$;1e+hipX8AH]ą֦o)3ZPш41b |96_kIua qֲ 2z!* hN2o3[a&(O0mUi[݋sj:ϔ>l&X`(]H5آ.>8s๤uЩJ$8H@\>usɝ:jZM%P֯fDs*\^a^5Ïef]p4ҙZY0m&*~grF93P ۰z¼mb[:/fZE-(%~ .1&#S5nnt Ƴ^q>Pga=($Fz.M*j1{o,ͻJŒa5=h}tA{;j_td2LҨọx:LCh} Wք&HؕkZh@k4h!WJ MmTZn G J:إe3]$qPѣioZ'`pYC7`-p=<!~\ '#&^4%"Uq9wsYl)Kp3'eȮH?A\nu1 v Y)>6SrX>OmM*1RuhãSK,ΕB)@_DCQdޗ3 \=Ѯ.pl= 9̎pɈJ-p0~I*ćFզow"\.=0fm-DX<^fbVxŽ"MڟrC/El+.E@'KoLx!>9_Wid=?j9X{<<װfrI({w OoY8O`<~=佗sg*GR3zG}ct\g\~br#3pOGi([DՂ<=P%r,ʥU۷)[TjOyf'sϋL98= lbKO+C\7azoX^EӖYpWpH:r -̎湲bh5`.Hm!\ [A08ab5Km"Ů%v>[XIF4jAjNVj-!uI,ZF[x-}_f qPr#$[!닠OHݛ R;P8xKQ/?*,̻v m-5.(Yf^WiOK"-$@KHkSsnwʫo#دWgsqb5΋l;&zRSOG(TڷM  +jem^GpK|!k 6t"h) m,LA:A*K\4vK˧o?}^j:7CoP |a t=6؉X%v=yG73`!`q}|!Bۍ}U_vvdMd8{or<@Agx؊pogm?av  +'VZ)+l+ ^?Xvkj&Ҫçt+u;J#鳚 >fКnr2 1Rѳ@L,Up6H"MlW,3}hH/Ǧ5oါπXꟵ&TY5rT\msӔpl)•BR^KV9$;\-1[mx?C\+!RvCX-O? oWT'u=bJ2rJTeJڸfxL@6^J]+=G0~Ol4I|,kZl @ z 09^R&NCbî. m7> PNU?uFQm= ӦH"" U.D EQ!=!YVRA׎2(St^:!aCn*MFS\?,Φ:o҂hVV=2ѷ^z;aD62xm^EOn垴B76)iYk90Iq 1nxpx3SON[OP>>"{e6YbSR[ݟP j&^ebfǴ4Es_k$Lݹ2D?mV,, d89bpm]+?Slx֙CY`yJp`-~#RA֭6M_%r,lrP8t!Uj7 HNҾoffw}@;ՔiHdOu|Du1$>gE‡s$NL\PU/ԽH`?PLu4fW[wزS2"i!cO-XdiL  %|c2Kӣv >ԭAk:1Iz(m`?|DOh|5L jY1/m^ ѽ3 ,E]2*b,>;dk˽M^"7ay0b)ʔeU6JX)9^qEgt|11,#O1 ]Î[_bkN,4sǮB% + 8]qh@kIυp+@n`+:z^wGja9"θ֫8WwʑDMmG:R LfײVRKHr/7JvXґ+=lJĿ|"6K`9׺‰:;B:tBzhp{D1T.vHY(/n j,A\a۩Qj g2T/Ap prz4\.n[5UP3"ԐwU_IaMY3&OˡF׹2A.SQV|-37'3dDDn-ZIN^ h%f@۳džXoGOչ^W6r~.~|QTcFfic~TX]!|m6V#p#9- =g6$ 2OͺGSxL!j@iħԬ2&G)2tf+#SY }#{ƕZ*X!w"{N/}Y0d+4lHRRlMȪ]oK 9̴AEyv'iK+T&ؔE1FX_ܞ1&V`23=ghok9Q(םrΖM!U4 CVĺmMnġ"sm97Oئlw&mpyU62×6qJi`y }#a&wkj$ݚR~%?qЭC}DzͰ4)&tCf/,Q${ͩ*M9+p)X2(*x(o*;\rv#Q w" V4`jq"gP(ޅ~2*aufz[%׹%V$;6B^!=6̴wC\DU+@痂>F+_z#e(ȴY=5{ L0[<2FkpԀͺ)#(un卽-\+0ܕV1foӛd;)s2ehc$67foQg+ifJT! *0Ӆl/p=\AkOКI1k SR͹ ca7LS:fkkJ+'KJ зϭGT\.\Dg`LZzfߙIx4@ֹ=Imd 7 iB/WXwJ˨/ZiC2V0~OM0~8޲Go" q)f`=|dRDE+Gړn(:Ũ.E}`J9{Ɠr݀,aw v3G`E&#pTw tecHJ1(s)20Eӗ)gqj aK3H}woJ+JE)TLW }:|"f~7Z:݉@ɘcm{4fڷOLyynROWVMHXUXN}N+(=[_ĴSà%WQ4/3f>'~[PQw({& -0Fg65xCuX5Yi Ga6zݸqİ<~f7 H$ ЅKoR7\ ٴӇ9jp?Jݎ~dλ)m;brPn|cBN(#wg7**O9_%Bd~EF2/F$䴻k HL699:`_εM3&j^vdC1)DPehM+v}AGJp`g]; J1 I lYoƨ#1cdhpyֈPD/EI9)EMD5 +F9b϶yҿS)z1+f;JЮ6е76SY1jk}6,R &öCS mP#Z8mݞ:mFF/-\'ƞu[(.+-^ 'V|fÂ@[RiN.dў)2>Pi=W%9 x4wlw'o֦ARhH,.w;4}yхDزkEkr.8|j=kH}5f jܙ qX쩦ɄG&GAhTnyYH n噚h٨Ok:AH \/Ne3>l-=oIl F,IƠU~P!X3ȚKڎUۭ^Mʝ%lz/uR*^JAh\㥎7neѽtKCj<d)C=rpGlkK`S9y9ZvτᔜZ|Gnj&;f=:̵sepZtȾΧq:3ۚЕF4YWhɁ*"ᤠ׆m`&)^*6v^_q:O{(]P/[Q# adv~dVG3,'+ =d%mAC;X2s*\ܥQR{A@F2r.Pt؇Ela\'"IoU"ׅXe5Q lF#Efx ۧQ#4 ;[NIzUST5&3kxqeM `1~ fȷzpο% m=vgxC}X=gaMT`XM*wxܽ-RѰƃg@Àd#v8$X2>߹N#Φ(,gg€2$S4.ytr@sD3! 8ZMZERR l D{ G4-ĩTҌ'QopF*X$Jo׫!$D@G 7n~w$uߒg/5/yK$r|CPڐRQv^9j L ž؇6}A[ Ԇj%^'a AX#4/uӍp`9脣.ѡ'<߾Õ B},h0M/;@Щ8G 6$K{UQ2h?b6PN6\R )8EͯR^U=/09HSqo;%{!wU?3Y(UXd v P5EKt^:8͟=t~kNI*v-Thh(…ɇыfNj_5R꘮rnpJ߭5*eʁϠWEA eA,:ۆTSUmR}9}2mIx,k{& ɵX?)9_=Y\*5*w87=Xm;"}e kŠf:FRw+|m;~BT^Bîks PSѝ4 Y9ݞ̈́Z73~^c%c/wusyD=X.!”2RyhZ#P{(:cLB3s9^]#dA FcRz\ӿFzT^of*>UuhJcRemѕq)ȭ nq$ǻ"1; XiZ [ \P\XTVY8>̇V^cb__9(SZ&SRQ2Im-3`d;8>-5O֌I1:)5w SE{"S[/ A^>! OtM|cmՖWǕЋm oRǢ"Dɏ|&NmO-{xd$_d"Im Ӱ M8OG̫p0.gwK)U.hM9|܌s2%r\l#- r:"ƎqWc8X;\Smf[@<63h 7QBW`s+`V]֘=ɡT;?ycD϶:@bW)7 :qv*1W NO:M@LMA;5֫zoa=?ܕƖqbfŚR҆1_\}y]_x>Ӳ:nVuȣ,B[_GB^ ʵX.[+s]Y vcdiX -,ރ~ܺjK[ށ$: U%B]fjV+igh훣j ݎsmR$;$}!Dc8N$9{ Z>?a Yɨ HX[6$c`6(M^G% Ě[o <qa2>5^1SK" ;s;l.NIa7p+ 7`!*'AIM܄lIѐRj+ h!b׭U]tH4d Ԃa[ãDOAtkM,VlHAhs`5JԲ2FxҠsxϖ;qBZݿnoΊRtX-_j zG'j(NӋ(/Qvȳr52*%PKu~jjby yoa! a)p܇|ggwo#&:Ik}׃'2|ɚR(vJ閅(K+ Qah`g](BV GSʰ{&?#DHZ  '61D:T2JDK?+w5ba0a#gF03TqUv6W>Gj,0'1]W iËvlʷ 'oy upⲹlg.V ^} C~q1tlAȯ{\щ-M 5U.b\f03!bM{W u hO~8چr+l:=n]k18'k|)`c+"v/^4ͥ"yZ$馠$n]ˌ.C r#>uhy(QԡOd/AZ4x_?˰87m TFF^.V%dzA եB倌lw!_{h8g(w+>X >.H>+b,d7kn5;xk0󓛥 wE_1ɮV]ifkIY“$ sU侀uH!.6!,U(B[bXPqz27_?6sa<7ut W-&R g@ Nv, FL!s](G}Հb D}Q+zu(D1BJvg4UdZKmN|3Xy,8:*>fOf&U5wh o-\n<\LOFhͱuis&NHYwx[DhEZi Rm@nEڍȨm_llz]f  O.t-&s[ij\=,A8M"eFbc& QIvIM␖ʒznH]^}…z-daQE30WŹPZ qoyXu+C:)O(.2O kmUg2 87)Sd5c: cxA*gP/s<4\_ؙkPJ۟u<5]~$6iI}f´ ?rPF /`̚hr=+Ѵ>1LW2,?!  G(4)_¼}<6UsAఌ5lhk:)P*Mﱇ{%a mdP1&RZIrZCTca'&?5v%'Mc7O<\gH)h.JRXފ_PJ^*F$ ,@:B !t*"\q0a6ƹTN+x1A`R5QMz^xK,ES5 ı-Eh_v<8D@%Bѣ"5CliԝRM1TmKxځ3w|ڝݴ G0w29Ţ= zͣ:VL$aPw'3G qZ-y8"뽲bPŁ37)P@Hy+i:7nUq;4GBȔ#r?!RQ, B&t4K`p+n8IAv.}{J$4ž'ghPpaĶ)G+YDWOEkc2 Дʽdvʥsob7ZЧ]) ߕք_"̵qL0-qs1]r6[-pݢ`M8|jW/>a@w F*|`-ufIfUUQs=8KѧS\gX$I44'Yl@+jOܽ BDo7DD՝لna[#غٺA>l#-ry\ ӄAw֯ PPE@xH?Ep.@Q(.x niZ^&l)~nk[@oB=BVi1q?·-| hTِՁŃ}N&J9sI zs/ɯfKԻq_"  %jeի@\Dq]_0Wvw>vffjg+ޣ'#}ḳ@%e Rm;A^@V.Ns)6,.uFR3xG6ۡp ۖq4] EBR)!\PO-˙̓˭=D͹3MWAH¢)>qX(CUdT\. ssNTS}Tls`?@($k)K t]80*lH95)(]{/W~so.-/s1^\~e?CgHĔY{{0sr' ꃱ֘^A;>We;tP!=@J\88CoZ#8PX&ysn1nm5Eee+sV$ݜK蘪&Nf?c '>ANo/m_#mۆ`:kpǿ.rNoJ`{~n-ɆsнN){=_DH 63(mq$T- &H]g>=2\ zɸe/.xjĸmϺnp5IBo.`뿊\6ޮxZr J͆. ,ڷ&нZ{Ht0&tg2="13hJI}M@< R3&GDu.Z1f$ W K@V8[~f85""o~ʿ(P+IPThnlG_ENn2if\uӰ.nȃ#N1+{ Ӿ®3ʦFR%l״/Ax ^V ]eqBCsO|V^aj)!S9[FJWV@=**'lff3 PX]GmX%^O>kR`s$QLJ[.CtkmzLU}-{ E$Cd>Q*KuW;>&y'ۊN<{dREm*{'<0&lJh k >%KkGDtXr7Lh*y[#}y{TV x|Ri: dil;!E%ْ*ӍJg<7yɤeEgd`|.k] *AGsQ;jl,_qOpdT} q xڱ"H z>r?&1sԞD9d;8AB˾h:w[ )` KN 6,v,+!?A//!H"zG5"W!vaimQR"4 RFm&0 \߰ #%!'LaMa kY<3.IEZ<OE4@.78?Wb['(K p>}ə" [Q)vu&陖,׭/1w[SDuβKQ4r ϭUaeUř%?e{ֆCtO50[[x;‚|̿9t:zL)  u,* ٴ5(y'J0?*Z#JX@ ,0) !Y6[]]G-½y딋alkR`0\<I܍. ޜesbk}Cʃ"V~G{5O)k܋9|,Z|t_w3Q96˞F gGyZ |s.C9tkIpB`4Hǚs_u˟1mGZր#}}.P'C܎4{%t;d8jXu51,$DI3FIlT{zČkM0%0[UTک Xyú𪳤wb@R5JLҽ\.@sb=;Al5pw|"cK2a|phO584bےq$Y5[og=˓;:K $Rz<WLk$S1C ~h:z~V*[ωh*ƦXs#v|94L-"BL^D ;7븛fVk>r wELeH˹jҎxD%V*qOqxi(P.'VE/.4YIgzS)A8;YQ9 -{GI!ݚ(YJٮ7lR s%=hw$xtZO%:M] `;[ iNW@?QlNN6, AO7˾W|AhХ"njAa DiGN/-i2TX_xJNF+}p3('"R/;$Z|1 "DC0VǮUVak'85,k;QyxdͿu7 R@}{(6Afb’b'oA? E[blL3`Kڸj;o"a6Xd`*&,^EV.VTNKJaj8Ks(H]+liJ?j_ت&]a`/OwrD&**WT4nBV!9n$ٽjK(\$ ]bjH"邺gnYN>銴+k6 ӂh %nGA-t`hYeQiA@q0t)Sj.W.AfgPN}cgtpJ\9x1d&  u]2yЭí1UD} o),Hؠv&|d.[Oz)G}ʸoprp&Wyl1Y>`sdC4 0sGOŇxM& HW't}/Հi:Z|EdXkoccM9l{'K~t0 k|֎CN*DXBIt萜կdQ5pP^dä"6P#ffP0#ZVsO$rbc'^K-.h" O>qd]TBɊtnUuYݟb%Q eM{%gcFdoFw_P ~ABhO2| }{AA Q _aH6]*}E0he te/pudO ?@&BZZ3nw-qv3ƭwlX/q˗_Xx[F`($2MXR g mKv%^>x4kmMIaZ4w[Hz/D2< /iS5viԎ#jmPT?玭EBs:rxPC;U?0-fgVtW4쀦M/@#$vLR40عzpT(\<6U̓g&',{2#<"n;z-fZpߒ$bW QÆ#{BC?šUJ:릎}3"v+lϠ”cjNJwY.wvM)WvyPj=PKE ε)9dWMɑ3Ʀ(`55}uѡ=.jYqُJ.J=}k3<_];%gLX.[wkvJL)$ymȘ Uzp@F;8=ُIWNYQ$쨯 aκ8fynP(W_$z}TKBI8_Ԏ{bwFeR!{]TڟЉyoH5J<} K3X]ߺ6'{h~,k)>xVS2f YZϢ1- >FFP(16'ztڭߑeMM^HCVWqY!f}9Xp?v/QO !,lXtgu->E剣hڙgHtq]S5݉1`賅lx>wU(KHVjjY $3Y <-A}c5rX;&ѽa,@urFi w`1A/ TG|EqRLPO4L,^Yzmեn 1IG9ު~ZP&%xn{ע(;%a)pUҦrcW4p/ 3S*6?g8hZXۢMV/ )ig欱ղb&FU:`v !Qp#2TAj]{U( Yץr;&9d*,bt6۵fJ4pJ))hѧPIPV\8O܂,h҈jH&熉?y&%R̖#:6(q/O[tF)n$Y嵖"4@d@eDž.p eHA3v1n1/~6fPIMTwS6n p*Q MRFYS#>ARW=We_6?b^ >#gGh*i&$s-@>b0{o.Ǘ[Wd<|PC&2;E"V=In5 Qoq0XZ{YcCnggtnad:=c&7iRw4w ?ptcƞ!] <,tE입0UrEEx.ec$ ٘DY*|!SF iʽץ#J V*ŝ}xfmPa\ǖMgI_+dS _YCLV>^oA~ {#"  wUyF]FW4+H/,qɄ+ntތ Ar5䎑4޿S,ӣM`KE ㊺2dl|~#7l_G#NSG#pOt$H^ٍhgTEh+igo.\*Tߥ]Eݨ7 c:(ٗяΑ헕cW;Z kn4oh!ӢSbFLOA<~!?m&7hCO- d<^ۊ<ۉUä~l+n CBpH_y?䣶|%M, C %#FVa"sHiC%y,O ϻDJj-/dPKSLҪr8iY:a'"Exɗ,$٭V7b&B~A C3(o>\'Y`\IK:W@|Apʛkk<,hqRVAqWP[C6Bt,nYca8 XJzNo@jȃ1E5`뛈oZ,0`V~݃)En)k_5FAĵpx|6/mB4KewqߩCJ`N&4~OP9a~EZ~(gi5xv{fO&g=~D `m^N4@վTb~g JK`>Q %+VBbeH=ajz)X -*0M=d) l f.v-΁#SpEZ #  b/Noa7\Rd {M0c_g^ d*jg@@^,>J7 _tޘ IcsGϢJd*"xi4AqVXҪ|wXrxd?" AWևuZ+}uc&% z(fC?pWTa{|W<#8{ܽX3~p!'gu*5 :&PR{oN 1uvVc9'8T7Dҍ焋b44:`ߐ2mǏCyIHm+s8)-sC Zo4~&m/'-A1M ZhlF7I8xgx5u %Z,GiI Rs&%뼒NjGK4!,Z"QIl'bIMVr֦ e.)H1긖 K`uSW@ ֥w&hu28 hys.1RxS^# d l/rB!Ekߛ{yOSbldRVBaDwވA,.=]Hx ?ƏT~GޱT܋-C iLH\,W``W9\S}&]Ja)Ģ)Ħ/Tf[sfLzBǿs4"3闀# Q @*UA ׊dTvpt!csng? kxH{yw׊ZNr5qJ FrNd"õqe9rs(r7Es@sԤs, 2xBCVJ$+-z))S_WŊeuEnc_0ү46\w4/]ٝ/J`J/H)17[3p@@etYwɟjčwnn iU H딿-E3qX:wwₚq؏9(Qjm'*GF}e'|NAPYl2|y]yut^K9{cPbe[ſұQ^т*Y㩔8ZNzt+ MdGT;䅺>fՇ36}(r8|k"-igQ{T nj65R<\d>qrUUDŒq@'`$Ek@E20dPBj!h&IK'y:C0o\ޖD62xҍE|2b'ѧ,j{rJ ) ou_ŕ۔RtxDr:t 3Nz%m]vHV*ZMk@r0Ft /9NX4'Wlό(CiA7y9c ;K,?=zP٘)~ד@C`>շ+LpVLD4u@A g:gW@fi 5>̐Z03h.K? G?3!ˢbڈs/pbu|L$5] eQԑ< یE@ḥјM u.h#h[7?J-- Oy{5dEcb1?9),l:\Jy^8NKI%B 6d9sDu0(t{$/CHtkˆ+Z(_s4T黻Mn+|瀃CB& . 9(gV|UZUYހ$ɠ<M]_ 1@ ~K<]Z ,ц;;F⎎[ҟ͞#2-'$I EYFcu{1iD 7|ާPJne}6>/ [p3!;}(Y˾w﫚-젪 .$Xcd)4YMک*Y]a]T`<MQ]|՞1y ȜG:ez# *oI1-m+1ߩ"~%h^ .LdLG üI8w[uD东v(TXDzHL؅hLd _eoz7>s͈*Q9+w <3`sWMDvl :o 鈿mݗ̅e WU$EnY{9@4%MP'玠 qB[yda_4d\)e@OI|)7 N]yg]:$}!IoNxA!=hdOp}Ho]xDa(/f5sGVKaYbڰ'MLA $TJ\n7֗RdQry{sC̕@i+ Vl&WR+g ^JAYZ{Oj ![=0m|9ᏆAft\ٱfx:ʠ¥P3WtFS7slxR9N_duJߎDQJ6-P[P!!G"jdRgNz=h*\(:ikJ2{*dךfuKP2Um ,_E:L"G^ƥ,#C {Z?׃+;5\Lw z7[%E|K V~Qoʕ֐X3a~g\~n9`q*2at5.3ouå/WESbt7fÜ]Fڅ(3Nr:Y7ikX/AMZH#SV(H {C j7Y`#dPIg"K$ťa [,1Ь/8\~f~w̪v[Bl랷+$Jsb:. _L8yώ/o%I%+jU;1.;M*8<AF9FՠHg3R]UlӠqoYg @< |_IB7"D&E a ı#B-[q~V*/wa`%MɎ׈3yY;TG}w?[kqӪ#dӑz3B}HaylSByKC%0H1_7eEhwةOmM9]<nU(k$e^wNcJ-Ǝ5x($E9j\alN֓')|7ފ2idjQ_myEI_嶷\:E!hyXھ49k*~tT/ >HP^+)}K0#7Nd,|4 ~etxTK>AoōkbW֣&Gz2%v߆6e9neҭ2_hzn`Lo7?3yubkDP=/Ax_ߪ/RMAUƟFb7`lēo"dEC6Z1ɣ7'!୽͊pOkss :5 Wi2VtoBy+ܳlp,[4^"o 1WD@DlaY ލSLZOû; ")l[9Ժjje3"1u&֗Ģye0?Qg?i4"y[~aXcSnN0EgmW>whtX9ut{s h r#fRrRscJz?Sgpi'd|Cl~zrⶪx2<_$U%n% E,HX(hC,BfWCY&hSF&V pb]^Hҭc~&j3ݜ}f\tQ-W*Tg0ɢ(}|ٖENyW;7y4nCD7 BĮ΢2cNykƽr0 ŗXݨ^v;7wl h=WRD.Mݶ :ZҸ :#mߡr2I||L(ɐ5k "ĸ?,Ԏ''*<ڨ :"$3 EIRKTygQP:/úEd]Q|^#o:1Bk(6*kie5i{'-@y3ڧ@ :I@8G9n妩,:’$ Ń* d,1~UB)wd4 1 L7~SF8U(#ºn[Qzfjs*dt,%"S eJ,V3c lـF%:RlV&aʾE{ :#Y\݁"5PѸP/[ae V ù &otzjz}ϻE'A|%{=l8-ڜ, t7?oln8Oj1ekR6GR3,])=k;Vx*b&q-fiYmV)F }zNҰm2&ڵٙ (myXSb]xWnؒS k"rWP޹u430ڼb;YU;ng6"-3Xr3gR+ǐ/1>>)m$5bs4RX/gV-};o;Qf#y!h8?}}ٞo cP4-t{6͓כ?Oz8CYa*Dhf"+D5n_-:B{1m"uwb},,-!=L#ԉc^1<]TZ% ωيC! ""5'S}l!a<͑P^xUyߙ1l-sW51q >whD<,4/ՑC%? kaJHt S?mlIWbvYKAΞd݈2,AZ)IUXKRk\`_{׫h`?~]^ReUgqaOL6q*5' B=NcTNw:&ԃa=rksVik{Gz-cx` 7aI~i7Gh-3{Εi\ vIb+<[k6pPeHCCwkK3+T/-@ۥlЕinF7XDҢ#ݿ&ĚZB}8ݹ폏5Uָ5KS-UVy_W0~f$4|$抏 hSRsЧmm(\p?O%`O3!b~#>RpkvD^2gd}_o;߸W2ur@3 7@Jlk2to!ɐ=r~A{hMr+ ѮДuŸS'AKQ$$L7v:znn@lI}ctuT7BF(iY閷&s11O_dATݟϵq5ATJkX3mfnOe:.ۆ@aN5HuX G|ﻲ=Mܘt;G_^?B K1i"C aog< ŪtA:2$WO' 9j =ZIo:'"92}F^ݐr_0d> G!]=jr$Xe3t5EL%PD3QL?J01"Y] wCYUмd;q+|2Ugv\j# X&dh(r5 UGU35.~]s&穕)S@n<>W}lx}ңN椖sOӗlW)=w r^cl)P93Df>A/}m䒍MӨ#iz}A.#wTTwn~w@[Nˎu@2 #%6Rs-~~iM_D'YbL>&זOM S D3$l(SةInZ7d.~НԎeXs|XW+51JڌE&r:\̖̩}z'@**6 ˤߺ>Оftoa Ɋ+$a9M:,G3+,7[A 005|)t!/T=aVY RSY2VȾ T3gr:*@xf&t@ysLN|_;cu *T z~Q}@$}5W),MdG*C01 ԴrL* xJ/ד^M".H:@VP xRTOR:γ׋xT9c7Z {FfP+TF1U@9Z#7}̐oN$e_Cɣz pOӢ:l&,9Cx^ĘH1DeŁ.O;26{i"Zu'؏e<(A|*T:}rESb$ SGrCG!draI Nu~](GGH_kkfT5?ގ^}`=sNS,{vJsFj.!s/ 6Wrq؆^aH4K`4A7r hWxlqztywȅ?Z͌_W/J;GP ?߻a}'&*›y],&͠(m-"3Հ)JUM8x%/|2_  ;}އ֕FIq^~FH@w%шv}hvF? Q,rH s n#b*i$qظՀҫL( 54F! v)- _Q\oVEI D!ULM,u`-ߺ<ĸIF:B+ PRIg}͹ێkDg'cyE0*:3`iDu@Zq,gq6ʟ(# e/8pӄyEx] *{ (0$l؝4d|=5FmlTFEG'U'-B{-BϾb>B.褭>Q!5*Ϳ_,#<4E?Ti0BWCfO&.b`m@b0䨲 E;]EpCI"\&=9AY64 v ;>DJ@,}^B\j%[t_ngVV  Mb%89czdyEvvsH܇Ba(4O?|3.[,i(}#um^_!E`pZ5j _b),5Lq-qa~*1p:{ [+C{2'hw"_;uӏ!%: z "/#m,[O!E?7Ѯ.O R脪z7"[H5}4*&k.܀|X}GK#Ljx0i.~03:kHcI_s* <}R^ .O헋zsCt*9)uw\}#_vG9A=_KNnc*lyҌAv)r=n'5:Ooy(Bwp0[c6:Ɛ~'{ - )eHJUTP'ƑY, SU9FN%⏠%8$2a{` '9_ULEH691[z?m's)_Ĭ&b ye&}%ow& IkCNxGC.V7ņuvC8\BKL#'q%SzSCd+DE"ԗve\hǘC+]" >uMP^pͦ q4?"Jl<,qԪ݉2`I ?3Ej:˾{%Tgzq5m<<t\VA$iNxGSXWbNF_VwFQgv~Ga6Ju $F-QC_Q#8ՈrY&t˗Ec P|<P:|_fծH}|SA8hX9T7C_.T(g5@ncM4jΦS"jMO;\N#]hgB o|F|㔔2Haf!\v%F?דROַ j,_X׃TI)I~[{U#_Bx-ؘ]e &xOpaIHG)2^D;do衛bUvt^W_TB7ofK=䲶ّ=?J 9[Dk)L#Hf9]G)P_Wpt˹lrA` +'dbLN3@@q'3+Kw+ / 3NB[$sI|‘f\^yl^KCP LLnBjBI+URml_F$)Z3uُF>0Π=9+ySh)%֟.ن  R7_۟v=vQ2Do]G2Ƽe4=F[fi"`8qDkH= Mb5F$>N,lWXqf$`ߓz$4 #+/Q] ":*6C3PL0>+&tiOt.t@'$z†g &q n @(X$H*@4J {T8mjK Bk?Xg4$:mؙpBrug<;Yg ]L @xK3H>ZFF6_]!evכ6FgEA[156 I\qT8:Үclޱ{,5JX5<ݭaD!YܯexV{>!#lwE2q7p%dW$MaP] W3qGGZ<7GCM s ZY鈪N& Yin8t'̟S$җv:Lr;,;'cD.0NRÉ Ɓh`lX/NR 7hŨSF[-8y(J|yzDlM"pńp Gwà'IJ0Ouʽ0`~G+ FX(n8a\3Y0&Σ"[!@=}S"I$({ ;< Eq0QEx'֬ddu#GWzJL@ 8Hoa6:E5{ 5α4c*¸uK :}% Ѐ9KOVd61ERj|r-Z:q=9l"0˜ M@ {8]}Уd_0B-ihH@(&+$},rb+%t-}BD %/Gt{I1#[3ٚr$1i|t H]1\7t>X) VYA OuG@,gXHa2{Tb <H1#Ujut?iE9$B7WUg0:=TWy w9C@,6_ZbZT\ +s~9NiTD˞G65+gi{"=IbMKg"0-/jɧCA_t &\+ANNbuM8ޥ)!ģoo!wԋ/ʩS;./E o9 2B/lo(6GMa˅{_OVA-@/e]ڕKoYg"/e@)#[܄~"|Dw[L*B\[:Q\ &HE6ߍf#u\IbV+Uv1tKŒVSp0UR*}"ӦIqp!fM߁7S$#Ѕi$.G|6ŷEy7v-dms_ZH;%]ưr ф@n(l>Ϛ9 ,3x)Gr@4Q"vU=t 3eշ+}#í4; Ctnf+Xmێw}YT) }R[3Q<%C;%jy<7@Px֩ @S;t}ѹ|yi; 6iﻍz=`*y]v]}|ŒXھ_b z0EUMRجc> DSJ~y6 ۻhibܲmhp!nWa%x >yaq|C%(H]-+jm8]OV2"$mL+*(Hika,6 ^-$Dy֧" kCyls:a,wuB/Pz*VR {+iv>gڂA( e2P|Ώ`yj_;u(Yw\o =I6^_#\iX!}u3 x( ;`uG6zKX7'JΈ=.мG>xC/n1v]y>hXآg yV\V~ &Mv ƫ jWl%՜El` ѻ>P@ *ͳXA)>-UT(ڰ/q f!',{쏉j_zӛa|G=,^WF; + YxP{r~a7džķzs†$ثsM|@>\3W"`y<-HW1sl_Olo~nB2wf$|B$e t/e 䜗΄O 60t 87ʿS1tRRUA'фB)Wi^;3|obXP@1]7ȟPJ| >^b_uyIU~If= *`'OwC-5E%Jmh x9O\[> e2^Rf/7"$X0MJ«"K}OB7m ΄KfNf8$-1j9&gr qTQSaapjPhDgX%*ْQȲ8&W27It|7@v fLEp:&F.!1{e >STGen֑5T6hM!x4d >ڒ}MNesKR_y)j?YLi$CcNp'+i0,:[7Y(f\#&&ƽ/@*U{`(AKYĶG#" 3E(^,<4cGPOb*ՓuDϔYzT{|C:2>%qrg 7H+ToǙ^v ܨŧH8QDdBR'?rV&gI{$cry@O+5SߖTr0BFR;zw'Fƫ1%K@ٕz'IEPA+od5zEwv E?Pʾ@F'څwa 0of lx{Muh Fbm$F!(`o>+07)*Wۺha]jHzhh빞[EjNֆg5Zazdr06};[(XrFۛuUƊ^s0Jtz\b8:<5d >-Y#53zQvWAXĄ6lJ5n ei`+K.иw8F/%xgcͽ/e<(ZkE_UF_Dhj%=q{e}/r& me9HFuर@kLga">ݯ(=k'[ 83Y2[X?*A"rIB$|;1%c)P'MÝ7_&0%PS_DMn$o{X4G FN1WF#eXk}Nh!HFn|>.f{CCɝsh:fo>}83_ akL曆PXӳ [z$d.:X|ni^OW̟j6]~:Hbȍ;Du Lw:z,hC6NIƎ@2XFVhfOm T}-!d+]R"ԗXw%_%KӧKؤ5B1)ڮLvSw蟇 ER9c2%C7&ݝ$u6bjTMOZvO~azocr l{8UO8>;O7w,>]eK+b;BN5 ( B;2V ,jMgP;DS 5oǞrMuٰ`xAE}")JʬMW eܪ|EPAµ"(雑cB#kZ~yRup{n,I;`#S5VJhVU3󬋔Kύ1&ץa:ym94l8a|Yn~8(JXHK/ .|o?3"P"kzF"Ane3φ0^e}ىt",_n/׶ Hϳ!};y/Ll.%& r=zL{@^`Hm/QV D7{P'XhO^ hM{y \ NV1(\i}/fH!fK2)ĺCMM/rBZ󏭡E= &^RRN\w {u2J/ɭ:acEvlݳm}I1DNSD!nJL8 η1=oorP@@$ic D3zxBk]BybXH%8}uM ߒOk۾~U}n@NxEC$q?-AWYQ Ak$, z~9yDֺ5@'d]]P=# (6-^5>rGE2&G zy y3w.6b*'C.EXw}.B)DᾹ"Mj{ekcoŜ޸{=,+WHa:&^=}}|3y{}q>-DEqU;UttU} UHXwF,8$M{JUwPlEl*s{6HUgYR٦(2"Lk9 P 5뚸̤INcXVgFt䒠+/XSPx؍x YU~6C޳y +s;db*m|!XVay\7=KՍv!S6=17Ce4&3B/!V!l|jp(',?VÈ?OXEg ˝wKm&퓏ZWZKPSSSN%Avz`ieaLd a9k~,Cmֱy{C '0z nI`<_4`d 3@9y253ؿ-2&amg|] "g@ 5Rc^;ꁅBV6[D0@~M~jrp|̯tj!]-IlxK\䔽S5y\ 1{YZryf"5|Wf*T r'|51V{C?'H#D(ۧRhi."2]/'[|͇Q٫TL11Z l/+g:eʧn C/T˜Lr_p.\0 Il"FomgGCbpPdje, a!A'`$ol 6PV~B^[ i޵-JSZ0eZ;ܳ~W-w"wge)N*šoe|BJW(ܧg3PiRY?Sly*bB_dXE)1mMH##"CՌb`:=ݲԠyEƢ85D|<.>ՒV7:< #0gr,)yu<Vnǒl\#G>Bmf"MEn;IY g|P4~u 9pK2JLT *q.&0EI*@J/~M"y @"8yl܆`ȯȈnC}yhB+C00+Yg"sqj6 L^iqiBk FNkx>e]x W|ֱGy @ĚW|Ŧ yeڣ"'I ( 2ӳg;5^/bj/3$=WXj7rAS|u7M)H,^4 {E(WV Q[/q6C +Gw/l^ *ϕ&)/UJ'5++yXWu) y>3uo$qŭBULۇdSЅz<K]-ն}k?@þȯSmk<H>y\c!2՟:Kn+Nɉj%!C%kH jf>94vEam UNjqh[5,)/q7D]E)$6. 3>%lK}a{c4) LlX2#مKp|];xVKirƕ`W/Jwa4v"ժͬpć7 C5~!O(~88"D(~f nk[st"x">dr6NEYz?=^3H(yAa#T',+4u%7;R"˺9rICj`(x}\DSp6햙8#~OihjEF{|~Qأłޡ <fvH;߭ca=ȉku6Yik[ QmCk_#(^F7JSrpulҒ>|]OKTbR2,UpY##.+Z۞{_L}s"vbvD71 EǶ=m.H9FVŹXo7'`1cN&_ܡzHѲI".܅qF U:BUMm|)9t}lKs-pEP':Rݬxȸxvj `{qlv"|zk3W1ݫOm0QNR?wOUd[-RΦ,6O7}HT:]$M&46#>Y.WxW.q<;.Zfc4LLlX k©b|X@)2 r vs1!m2x"ҟ`PP)Cj_rW3ӺG6QӷZ|+'㪢?LHȂ>u,eQkA: Rm Wʞy4+Z}XIf= cG@dexBeA 7t*I$$ku&N+gip ]2FP҈$%§RLMÁJcpj0ZszS1efź]Sɻp:_sTJtA$ .V >r'B$!,a韙;Oc!'{K- ta ysK+A1F)%^0j[aQ7|8A-|/2 v{_PsgP3Am5]=֙@Z Uq " Iu* l$a[ v7YYaDm{R=bf⹒ȩ8Pn-C ~ҌQT:yZ ׽a-hZro^ 2gl (q2u'~C%gآR$jFkj.wdk!@~~-xKQɿb On\AX[S&LځRCKcCZT|nĺ C-B u'kMH5 ^zE$cLu1 =}܈+[Ep먆`7G$oH(r<M,0Mr {KՇ8ʣ>cntsO3Qo;R3Lh!zZ/ |*;zp\v`"+5aHll뷐;N󟟐ih"65諮YFO}@B?ފ(Һ!gZ0\VInH,>j=k$pgO^\tͅWϠ8ĸPk'ND.8J?}VlV?ou4JGɾHMw}}w1B1T94x-AY>KǧpBq.XU[[e1tVט oQO b;%7B}6d -5ep DF,,DfsAZ>F={{̭CSLz: #>);Zdfn6>*:%cm,4@A©A B0AB^r-TG HkYlC)(Vdw>u_:LQ\ O/RW8d04MXyl3"oba#eV\c ѹ|9A=G$EQ·b e1; (ϥ/Zu`YMՈh[uzrRCe2\<" cPMvMbjMtҏN*.#jJ+`usँZWY 1(D#42[Ҭ';$ ljZs |{hu(z ]HE-&=ti Mxm,K&Pߚݯ'6;a\Ӡc:zETx|P`3'FvޟU,X 1X n]췳5<%+`v ߔEE>&<$ptQ*i8 Kk1{xqt/PM9Ql:)u@bfH\+:zj)ާrF8nua&cT$W ؀CK 6r轃!Wid}|(LЄ7@eCRk&~s^,mp4CoE„C m>?ju>#w ?(vd2!M Q!3q*’\)`;J!ޛGmu3-:1OZk/hzDܥ`X\zKko3d"bKs"\?D+G*:*,CHjԲB uνJy2l%'^Yk$'X-;Lšs׿kc6 @ RXKӞn>N0! AdP^?vLpe6J08+Eu% KNyG"#mHCn qs[8͍f4d˪.~zTSV]T^8r1ס)š{M7*Z,`CR$~HC#f9a![ Bco;Z^y[fֈ@g;&7Zjє*OLS^ o٦ȪT~ӱUqk@Zfi\k]hNȰJ(Y ʅxҽMt<8}򙻡 0*;kä"8l6'0=ZVP6v (7ǭpIùDz/1Gx9YXT 6JAKi]\MR;əoC&ٯuFm=P휫iO4 ?pFQW;&DbYOf39B@p]ٺK*'IS-/YmmID>sT,uBӁӸ~C4iaT(`u{puWrsʎ؂AX%:4&\i噤NRJ5~ߥ悐p$M.a3,hZ-1]4COh3z=aZ\_ux.vo1H7yTb# 3i߽#G(žg簌i(x 4I:)Kg{ zP5"yR< =sUUPq^p/fTkmMvI0\ M7!%[hP?ن9 뾇w9@@ht]aZf71-"!⥤@~O1ơ:{]A(ѲL~*hPMcut!OKN*Z Yw7踢2r-?ECծH[KU&/Ov s:[LƖ%Iϵ6!JcUlGW B{ x?][48U&a~˪{/%7 7vTP?%4I,QC7+a¾"D=h; +To3%?Nj {ҹ)cz%At"EwF*!!o?볥 H@.$!*d2{޾Al[~]hN JψsH ~3d{AtvSO=PAFAʃAuM)l*%gT,!JJ `iZ GRvBl|@G|nG઺ziՂM烧5?{ y)ο%dϼ̫_ܳp>NEw=7zԐ*Rͷ$T1DN{eu:]BAcaàkk߃jL2u@sHw܌]Nɴ<N(n 8fd9fBNvUoard);Mr\[rwZ^6BK+b+( {ߝU]3Gp(hm9נ^#i3̝2wխ).מW|,}vk2 }A|nSPb 9L$S(ue0U ڲq@_D7tLhXe:ᮺKٛφO8 )XP/ʧ,`HA}n@^n; =߶vuΜ dZ;O-)Yt/m(YB'gr~Rԛ*/4*l=DunE Z/QfQlXmb2g*{;Cy v{{U>Sw>qaV7Nj7D#zgC]/%!T2ݲj0R/&pl%5$^hܰz6`\ [Mp٧շ@N65A8 ό Zbzw?134g6w͡8 uk#t<酟)5dShkyXDO< ߲uIQn8!ͨ;n5̐yX r"γ(dCa Gk"HYktWJw`EA7e4"W(X|@C[F Εr \;S>Z4F F7>?mA&Y3FzѰmMұ h\~Q Hpɶ xa@wD\ ޑ$D` 4ؤrE2\[s-]@:,"M SD% )6K`" 𻢰yt+GU":~3VRIgFm.Ҹm)+D![A5NS)QNӆoatJjsi1+$ׂzua 3PveI!ZiE+,%uXIrJr AT9qƽ)Z Rjί8G2=_تjM;˧[zKʯAF߻3.sŹN66[sλvi¾nʘlvًpAuJ':.,H,O2ꖉ -NBcdȳ´*_yuɝz\#eie$ʓ_H7ඞlO@u7L\Y &gF^ʉ)%FW="ŸtWCyؔ|\=5UtAK/S*&z1D?H-ݷ:e0nYuRA~ߧCN ݭUprɿ8<̆!xk|e K6uZ7^ 3m1GzICro4d7*O˘tL^1ULK=,(2qqW1xy fL\v&J[6JDwFH|6Ѯm\QgT hk79쬢aL &R`~"5=yŖ8UXyu"Φ]0_7g,yF rkh:()JLO}\}&)maCGCT+zVͷPd@~ lX>OةLY6L94.5ޭЀ(,B5Iq·`'!L<l(@/-H}>ֽ‡[/C'P]_`(?a H4pb?9eJ]7"e@LPdLCf-~Ti.$rǧ}}{[c~Hf8ʂclHWxk3ay*N&[o e(=ݒ8L/Q'U)J h ?KjXQ$B'~.tB!ӽҎ>Z妃vԉO|6,aU!M}?t̝GENaY3+]?tRE^yv Oa`ʝO£\RN˞9#fT_Υ #--yFw1>JdS _<̶ghyRLD\x}*=3+e{W!A8qXZ27r ԼjNf`<޷WN ?X;Ъ@ Q6G;˘2ނ}M5HLk~#Jם6Mde{F֚ *m}}!jx!3Z?^Fh1(&(6m60V 0W`~G!6r^Nao<"Z&y>HO ~#95[+qD~:|DAm:S'!nDA.l#m_s֜L.A崈 &iӁ~u0 Vv3A zYvN 2g72* lx͡g!1At^mLd\bIhCdosugW'GqP`qR?͉ݘZYP^ +D֒g xu'Yrg`&<] oC{#7|Ed~ȆA2VzV~J.]$Xes+o?@:!n鵯 6íW)fazy&ޖFWO͚r0FWmܓ4 h8˨Fk,taVuq]:0Tw5PIhr5qu/̼ X\a=NY⋽%)Ml򒲇^\֒{Ukf4:Q.¢u!C3ɶG%- .-T`d 이褝;-B@{>-ԯgm*kn~ yԆBD% 8N̖A&갇}=媡:nByC$=y&,@P#$^fO ÏK FfoŸ0Vn{vaմʝpުGC9wvo='* "Tqta澜F΂JɛTR3& :u3Wx N]N~WG40}CAA;$}aa<<`M=-<·}˒ŎjΒ7 Iq&Bv`ﰠD|r8RT RJ'b\W8HXh٘i_5%ְ9ر#qнC'L{ ~%MjP }W|Z%v/~ b`Ӄ:䧳.Jd758ʙa|II1JDW'ds_.ԘZ;/FI,{+qG ΐ 0?ֽį(1oT" @UyݘTE#ij (]:<>&\>i=0ul+D#pCv:Gfg%D$ۀT{|+ڴ L F"W[iI_!]eځs ?Υ }7CƴMnOO>;!] O9u^1=7ZfмVvLhUDLĹ$F#:hòf=u?@j߱V;.Gu.7(ke ڧp(T9suՄ˝ /=q`?;#O5~p`|/i}|Qs ͉]@ o=m8U3,7>%ăQU).=Af|b\b~p"=a {)ZD#?N"V.l!f"?ϑ*YȶA_^TĊ>/`T7yngqr|"ZyG~ |]-[_.C<#@"!!`bb)K0Nˢ &F+~"ń?(u G Wq(^ݎk3$4 [Cx71wM14F;o OUE{R+$GiQY?4rٞP΄Rx [Q𫙠0KWrֱ;RQLAyBiRr.|T|*AQ.Gp6"&0X R_2>Gˊgʍ\pZ @ۓjGID8d2RQ_x<ۢ~,R~ _;+zeE9ijt%ӴPTx@((nJ@JNp6d&~A tZPI-}@֎򒑎xoL$~cWi"k{HވīfiKhk kf&o{Cv[% ߡ%ncggZ[O:٣!y%\OTys|?pϨ;=7x8pkmSb @3B<HAZX@ڂJmFJYȾ@ٚߢ@,*d-;y&StRv..!hẟQS寈&,5v3Tq@atu;sr&D,ˮ{(RnkT+LոaXZEUb'I^*dv~ ,f.yjwmUF)[9hڸYWHl2t]3+O{K[x;eZ[UJ5ݖ^2kw)3.)KeQ ͥL8{,& к ywZ Rfps+ a &LsS$W($`ACWL=BIZ$#eRzJ=]ǵr`ug{$ ֥2Lpb̙סZ(ecĥeHKׇ?zp{k.VFf|P'޲YM ' bΡz9ۨۊZq A6u:5ѺsEMtA(<RKӣ&a;wY9ڃa&s:3QPyZ؃vO&m$1|]{X OkIʈҩ/;RՕsO\)XwPdSwi$ӿ paӱaZ egJj**u9{ޢi?R:`0f|*-Cu|feiDV\ErgEA aAШMg(i&zP\GK'ة'BaύTG@vmne[@t ]}m:sjRŚٕR?G/O$ajTM[lNR'ü xL{\"_(RldQbYƔH)H,ϼuetϕ')%h Kǹ_0aA ? c߁^J B .آBdIH?ٝ8HW"{Rup@Bq}OuVVt!M^mn'E˳PU a,ʑjTu H#fos X|L39xuXOUYDLƻ 46ADۆV`k%$fA\ /:`&O]F jdMT7]+NXNsey׎xU ЕC]]Y2ܲ [л8͛E%JL5:G9l;u?A[ZGgѰT=uh%js ^.>yec9zMhqz}DN  SHZш`#ox,5ѲaoX_bxUk* HEelDVfX% 閽CqϺu2$QN$I=%d# !DLk)臔=Oڗ:[l_2C#craz:tV@ V8]?,>j[[A4 omD͊i:piq)]_7v4;0]e|0d)°tC F ڂ'<"ʩ0Ei[4PI2\4u]VXln9ʷd]?ЕG%RzշΠ'th/"gAbl3Gy٢Z$F;ٶ]B4"˫BD]L)ԯx[ЁE=g=$'4J\;M :?ZpυP^$o( '[ s]G;Rn4~0S:{|S"8"/rbSQ\`,b| dR*v3W١CT)U "hУpxdf׸Яq ˤ ٻ@S,snI@ʏGP[p=,]7mlN5; *^%HIhP[C{Ϧ+~PoEɻ;TK; B?e4orcZzflS0k>Le1ͣӿ68Mao[=>ǘiX7qpkҙY+b@' $7 ͮ'je"+t=u+MT{rZ&!ߌ0\ax2 %П ]@re^\កj_"p "td@1U&*5* 멨+@ ,wL^F_1G_}3%LM?N$TO Ymw9w@ 71\$+g[81Sb51jKlkϸ\9kS)KǺ9* JlQ?WEdRG??4WgYJ֚Ip-D.CFÛG"S*2boAջm*[ZЀ:OZis Y^D"a_k gEe"Llà[tev|ҐvUfEH+lXhGkdYqC时x< 1'H:b6)d ĉZ'ArvI!,’D{*ɤt迧XąΤ3^1wr6o?l TnTWqQΰVi9"K[ Ukޒz-wy)Fb凨#X+l.yksPB\Cea^&iWV1atN?p}ŪAPo.fMB`a( j:蕣9 (Җ\^|`Ϙ Y AgBAY7ls5;;t_pvU113cD^ = z '2p:[wg@952?ڲ͵aȓr1m^k:冑enmۥХq-i?x3)zap#t~bN J]npC[9ZJK~y8jJfW+w>ۖp :Ƈz(1i`Qb+}n2592ݿu|bؘ0 HҸG/Z礒3ԍ( ׈JyG.IoRo=1b7{M^tX6$'( "e~"?O]tp3'Y¿RDk_m &fdNy'}kb!HBxL-iAh`ۏ$î@_~ky99D[U2gaぜV@bU ]>,PV b 5@O P@EzwۂC ~Q"&{EJGpE:5쵢yѢc+GyK?+[wYE'gEy e9gr'1Ͻy.7VWq: Ĩx>Ayyzw佮:6%uUew:l;W/â5EjH4iz}28GMЫ<⦞|Ts\@-;*I2k&܂9 tE@&U+2Ȯ\keZZ5CmXDh|ADc7<{,|W؜ß1򓄓*\|8d;^#tQ^/ݚUK nP0cA$~p(Szn47VfG? UgqVhc_d Eo|LQU5,&#)kbVǥ˳VQ=OX)tB| ˼)`# D򩅴_aȐi{2XSc[bg8|P^앿p Ѕvk/]ĒSB(U =K鱂z8mgB~Oу5!sb.%0hP,4ED2ks~擌l{e8ŭ\rpj`ؚV?7GEq)Sn^1+ 6T.UoYv$pF $ vam񚱿^FLғ'[ڤbܖ[TwTl{h[vXNlŦS.mjň8(]C3= ~7zdY6*~+i h;Yf]L656v;ɫx0dZQp7dEx@g|ê;vsTxCzYA: mH\k( sZ 7 Nwי`Hد5Qm`6?``)0߁T5+7"+{yqSXx wS6~lDJa! yh|C6uhD`Bğϻxu_JV=| 3%9 ȗ{xΚ7wP]#ecO$^'Ӯ4@Q_IܸETЈHVS/ág5m]ɕ2 U Dr*Hɰ9 mb7a. klb\ Jdߖ"<ƯX|K."vcCEjg-Q0wrRuHvioʶWŘ&/p"-M=n$ E{L ¹jMS,y]RJLfxV&rqkag` 9=6stU\`ܞ,4Aa qd͂ (c Xn^1>dA79Y_4@eJmee3#& s64蠥&yaXRyq{>-yEƅen5wJX&'@Yy̕[}MgQ9"%RЅEm.0G* UIB)nDXY$F9yԃR=/v-3JwȆ$CUjR =,@/ՙ$/X&FM?[M+ehS7iйa `j[ȫ0 ǐ/1_[.WOyV?ܔy9PUIx<~S\M˅-޻咊pヿCt:Mڭj7CĹqbSHLyRYt-KU4Ԡ2jHZ 6]>Y[vKU6f9IJPe'L!LS9 J!&$GF"P"b˺nB(봲3=J^AbI 3 =Uyճa'N8+σxk'ARPr<옐=#dhפG57{j,@.$@߿Uc#_VgG#.%񶭴ֶnP5rm-4QPCL-a,SKK3b7*سtmkވ2oYU=Z^GwFb|)$%ߌ@W2s*G+b%VumX&<ű{HX5 Mn1m]u?ʻ,$o >]Jr~%X*X؏Z1I`Q^b?r P~8aX;kBTud6} |JzPZgd`@숥4is2x, 0܍ˡ#L]*A@2Mʹ(NI~BПRZ)H^Rѡok&mZ8 V2IX"oj ?z) 'װYdQ偔e֪P@v︓8 $Aw<_cT/2gV۠6䣧Cb8giM-kgN Uãu&f}h%4AB)s3A6C7A/OjQ<7֯axSn9z09ǂt6®>:VB$vw!@K z!\ pW5zRm ycDK Aw`c9HZR ,J-vϟ!|X@.Ct ON>} =j Ӑ=Z"(Ą0IOŖEa8 oN`I;V%!o0{.ueʘ}2@l6I)M*Qw~k,>BQsMu0BofbMl:Ђ[ 5bàDX׾)PZZ܏v19t!d]lg4SpY9Hujt(*=iY qW~TQ^ȀW2\^A}LI*%c{K_Vy5lJJu'nœZ]9.4s;y^_8Ӿ'zANimDY]J"vY<ώzelUY驴 _n xT3#'8nS'Q{꣗[ 5rͰɗ\""t;8oD!2tIt>p1Y tLL,άLda(dv>/nRd+nGwŎK¯6͙RR]?'гr<ȉK9ةp7۽tO؍2g_q;Y2%4\6);C.sP!4 v ec('Hv4nf")ӷyqcHʿf1G !i^;fZ'1s=V :}% v7.4Ҡ`[{ 4 P  AՂlMȏ_(Ĝ#>x̩9L A‰@9ޯI#q #鶹zGgUCΡ'|#>poo8N"앂hW%pqfrJ|sF;Y` r6nbIaGGj-^(! ~"C8V~̥`=_y1 Z :H =jބ(lw҈_o紊# ]Ze*ܜydX`qu%U-3 ;n5%ePgM2-YI52Lѓo2~4R|ԣ&GRTR~kwnT(}dxY4zLH|g\C ͒Hbk?gשX2TdML9}u"6#@~"@rQ#c;ޭTW(wiΛ[/ꨞ38 v<8o&MZ%&8 x|TZ}L]I\/?$ $S2տ#R~'m3fY./ }7LzmByI,j-^Y >Bu3z)ҕS<(nNM0L0ZݨSj;L|c%ʺj{W&Ws|4L{ӷG_Rҁ܉yDxٖU+V]ؐqr2e&AI=%Hlm~>xIٞ9~sN43-ʑ٫-D&ؽԊܙpݴ0dy=)1h]roۨu7We3IIAZ" 2rg{ d<-,&,xpE (7.?QkV}5'=2wSH\6Kp~%]4V⩛+ߠP0J"#vQ@.MX#l)bTgM$.?F¥h*D:lҜ)a3|=_ZRlIA(X9dD{* (>  *IL3paT &٥n=]0#ѱ$|T ^nȜ֎pU*|n[lvMNI[ -lvw8:jצY) ҕd+ސ6E+3,Y'O>gO) %M,/JHj>czi;A?;S)4<(l݊@eZ AjFy.Y4xW}͙P_`vm_ 'q׏Di;)C apyY6):PsZ*̕00AcdO?LA;PE"YR# 0f.%OXy,ɾ&ȃ~D ~ĸ֟xif-(Yh§kOtG#8xř#UJj^NUD%W:9"}!&Aq6ybwa8E,AXVK()xwph\?+d%r r{35ewnփ_'W{QǷu X Њ% T#Gn̔X*e}5%mϵP^UM= V:ΆރOu1ƺqz6A_,9J\Ǟ/^.t$}: g{T37-, Gqs:*\?sH{ aa| gǀ|Oc]?Rn5CV!$YX-SڨtZÐ^x\JHhnS|8 ]$ ] \Ys6boq%'<71P"n$!雌Zqr=^,%[eEe쯡oGPm.M* 7v/C?%c5̵+g`ao9 6YW KC:5ީ@.yx mbpfSyʞ,a`.HG8ftb޲qw&8>d8¢\D7CΡl#Z-Y:Ie.! _g_2+^jH=y+G ]ї}${N89n r.+BhWՁ45)T8 Wh ˷&lv%3 %<*xZ*vV\U( o6=)6wpZ9-r ,qgƁdpEHU0/Vf%. ƈ3J2~[Imfzhpz >i` I@}-\!L+ԎX/Co+;&@QR7Da}7{`յFĠ[N InuΨ1ingQRhd vMm>5[dw/{tИHeR1 8NIϾ0翍8)6A`P-0RFy\W1r/ֱ;;f1W3MaV۰. & u/I,!OC=m+ J[6Qsܯ(۽z+ cG*1b% X{*Q55)>5ܧ6/x3 GȻm8uy:8Ď- .n ,Bq?qQB*l1tO@_I N|dvM}egvg+W-z - I.d\e;'{2ExLH(҉}n ˘@ϬL]=;7ܟƼ?j8l$Ö5W>eYQ];[KW]ߴq'K{a#S_E\1T"7{^nazɢǡ_Kqɡu_ԃp8uO}+ I8s8b38 Wτ<+)2UjgLY#IqkxɪV[`*q]uyILIES.;C); BIԛu ƘS)ؿ*" H~4qp N\9( i|׸[ )QCOًRt3 ފmU T{e8!X/7!f:^ŭT5nI˸=w^~ `ѾS;ӆ\_5oe60Oi5gl+)\1+B94V0lx3gg/-V4PbQEu+RԹ!ײ+Hű: XJz'wU*񏟏8fd/To~Ʃ l;/M2D-&(#NpD)7!SN 9nE=zr{#,$'BdGD7tRLh>n|"vrbxںG[h0/=,gIRګc*,)n@7e]5BNg2'^IFo0)<0#E9>늤Iϥ#UT.V!j Rs3PIC=X;H2]؀?-fJA&SvjITY^qIFBb4xuC/$Γ^*[,F+zb"ԯK⬟똙 CϸC!q}.?Nh51TI{.\PEʣaqICZATʽEО[q_#.+Dy_g`P]鏓3{%縠)n.8ZA@x_ H RJoex)<О,ԃ[h}Ĉ,+LmOju\OGBDJͽuPtrܥS?Y=m ז!*_nUvJ  z)i] CMXExLaP ̭dQ' kޣyKXҠ9s|<^зfZӤhТ+#i)=dO!¤z=+rbxJ X+dl\^#Д[DlaDtӻP(%W1ecsH_q΋fOQRyOZ @n0cϴ:e@–-vY> }=S"`p.<(Ҟy,hԈBRP ^[UxvoFHSoLY m-B>KUq ʁ3V6b4. p18bҥNi2(Gx̒c}ꀣC:Xi[M9 M\Q u6_3qmޱg9O5o"|OSAȏ>!Os Qol kڸ 2Ÿ7(X/db]߁`paJW٠4 J]Jo\Zh>5Ǵ9w"\ gDf(Vz$ ?~XN8:+̼B@$7t3L̏WEk\ZH7|IF>5MAN[⇴;/eǯG_%H݊6!~ۈJ/q5 dzHMX1Bp3}U17(yo1UhhXQ^ yrCdoT+rG1눋 @&ȉHp+f #J Wވݮō]`j {~3щ+J1x{Lv.a" X68 |kLg!Id30@DxaUc CWU.Q9aÆ,Y/T$۴eZ jylbn9!Q YTќߔ_t(d11Bh xέpGȪw]Vb]Lmf{jao 3 Px:7z `4 XC#8lh$w  mUgZ(ko\|P$Oi`^kGe&tʯɆ""uwWAGAی'3f٪x?bi=i(1!G&ܙKdg38zKv/, \FC',$ߧf뗌i"Ue֦J4eedfjQOCBH9 WʑicS4EP+{IG/yC99HQuR(fN~>2VR4wv͒vNǜ4 ]exZV,ο2 h&i8M(8pu6EL'9v"nE穪j=,$Aw~M/ZI"޺ϸХA#,d~(]Gh;ɝb@15{{t, մ5,23Ѳy*Gw-$ Zc{umH\{.k@Q^rnƾvs$Oh?U6YM|q1ǭ.ݴJ@񺠥Rj+W7ϸ&o¿xQƼ`Y$l@?y >W-;#!neqԘ6FU71'Wn<$fI2۳!4dOl8$nj ٟ קÍguY`Gf Ј-]oq۰Pq)!h3Pb2[|\CTIrzdMƖE]ЙSupxH(Ebqwb乘HjR-,?EV=SCP#ɰU}8'hOA Q})D%qOk ߙH?_@ߌ5 >⼀qFikmY8_xsA70>SzMjoK `MM45\7\]ϰYP o e3/p%@QO2, @,${v L/[R$;|B>$.Qm򱛳6jM.;&X5UZ˛t-.^eM7M)t Sl8v12&'Ŏ]IEm*&.U-8C\_wh͇FC_:+.HIЉ=ۿYm6>RLPQLssܩr4 *>ptzH`pS[?5W2*?q ;2YV_izO4b(du nK^p7Q\VP9$08HS?̬YQr)퓩_M0֍fI?ͻ2&tUY~"I*S:tIXN5_3`¶,{j>C?]}VLKYUAV~5rP =2lNjXjunjY ӧL~oӽ/sӍpX2 +$Ń,m\).̼&UBf [=}hTޛicbi~K2< ٬""Ep"6=%p=-FiX0,K0ԛ s׶W *MFL i5 >dJB6QHTr)P`L{ ):c5ȭ&:LN"*^4j"cFF:Od <$ }h&(!c:=%oF䜍Rv8I/|;͖DY $P?yb(ыb| 1w~\2 @4#Z&-a~`<4X` \F90l{8+ZM-lx=֞VBY9= uk*[^A>] 9;y.  - SZF)Yr9-}C+ eyZgrBp*;d'iWxMT@\ G(?=9VQg;2.U TגwW޼¶ sUG| ٧PBm!ۭcbO,0!pAu8&Lpԭ~5ϱ'˹@F6> ] \%AQnFG`UtWs3;v޼1܂=l6%:V%9ag])-_ J]!j]NOqsȞ@R k%09wz|s]j"O9n){RZ\8$J 8 7 nw9*>m̪nm֑?ʋ|ΖB7r RDNrm[9si2JSdr.8Q~ћ!9S+=.< XQwi f,Z"~2-&7я$c>p6=UVi6Z"(wͨsO S"EXHRva ojjc sUޓ5m&Qyp`~Qv7)Ӹ1$7AfN:)O='GnH$j]b[kuNgy3,GlJ RegB|FCڼ]# >T,ѿzn73?h?z@=V@R8gL>HĞ؞8NvWRwÛpz" o9s~gђQ޻k,̛<ߙN_.H\f~.u M9N1fv 2c{^6` 35>7` \th^Xs*EbI  hֆjG6k2oҿ*1Ѡ! ,ˢYQ_opJCcg'7xf.r0ׄgG*3\ƪǽ;ע̔K0]${C@m3&Mkyo( AGˆr!Rըen2O36d߇k8d*RpӲp i#?QيYI ZEd8Y[b"(_WT2fq65@{r*~]^BѢA‘)I=NJUf6`Bk8uyj;wwvpMJĝi&[E4 ֑=ju*2JspMЪ8W ͻ\zx[5uB2ZCvYOG,dl.]]z'B!GZkZ4BR73&nT0ŇX=e_Wʂ7H o._YO5UW s2+D ο~V$ҙjo_>'M}*.4 f%16ƍ,N `N-ipє'FCkb|o~fu7$PO7SJV pMgɇO18i٣yg Ia]uQ4I[ש"4IQf Iv+s\AR0tG#mt:iL$2jz7N,K늅q|UK;I/P%nkWufw`CVP\?X͗ghf(tc _8͖޸j|HC{֭z@X(+KЂ gkmᜎKN^\%iX/^%TܬcW!s 6E-Y?}sC/Ta<&ANdَt7xz7 &ݗ93,}Ei2q׺+մyQ' ݬy"њ4;$9'VS$*{Vyݘ?2H1`p^ hu1~%X7 (*9X-Z`@réurw!Rsb滮ĒfVI 7SZCX(L9tA x~,άW sp`fnDv. iYGP<y{ x ,a(&bB|E/qJ{eōWϰYਧg|cF `ݻ?9 2ZY `֥ +7-5ñ \ZWTע:Z k{ܤ/D;O{+4wd.+cib-Ng_q2!ɮyA1Z42p4Rh#a8ʯT\LǷ1swC4x#vnʋT1BBjh6ݧQ tsbȍWǝaa;Ԩ)sb_ KZb $MX^瓾'yb>cghr QWH]&   5:p7fvS\U~#7tּbM dg_'}{B3>CH?S34H笎JP/p .?5Y͑m>nN`uچ< <۩Z`f1 k}e( EnTRF! *K!Mn_6t¨!y1z>یH$dmN=&OX_<ҫT?|$&fcS 1Yrkj7ò#^ {ϰpfZQ{~i}ۖ~3pa]gڷn1CAy&\ g,)1Ikʍ,a֦PldH?W{4mPL₩dWZ"6NK5hBI1E4!F(.VHǂob9R*C_wyxfV=n1fG`[Ew+7zJ-2=b`&w?ׄ_1ND83Xudkː [:!f}xY1x E0Sخ80;25P8>|k2 m9V^EM+n 27U, }/ a=2Lubkw:SސyF+;d,d'(?ELrX_™9jP8/SF{* mtlJRU.;fV:2 B- 6ϖClvLkg}udq2+-OaI-ш-rVH"˴qz47XW d/*ΆМzo_S 8`ͥzC":{qu"(ed=`{d%Q}G4t<9 'jwu zզd

    Q&pG--e!}kI‖z RuƓ({(Ņv# ໐u VumjlTzaa|V^޵2pZmm(gWtgҁeꮆ څ\⃧%H4jԟ}8g +,aKœؾ5 uI¼:L^  $v;Ӹ> ф*qjW(rF/H3۸Z=HV% 26^Q`8yfQeG/&FkMajC=ŢL_սʯ}S12&ocwP,kOz Lۮ$$glp)F'Y(]},\!ZnGjQ70LiO0f]گ&}JMf%bl^ЎzưbV c錝QNE؟w:G-_-^=_f%'!B1XF6J3VI -3TB8pdfhLLPl[jj\SL྄37>?ܡM/ 4 "͘9 1hVMf9!>ӽ-.F}pNTgƿRuE  wLJ!q) tRh(ӻpemfB:+nSJm -KcۓtW7&9λk>}XDȯ~23=Ll[闠4UXz\3#ش$!5Gסcp;WAgtKe;+7^|! !e9l_]S ovrlS7qede/ H$:bLj@%9 uVD1>7>_al&}+̯y,*[212zyfup]iWoY~S\P f:şrȊ+Zb[< B` /^"h)wFUP,6Խdsaa5W7K)4(5ĮH5}х=l_Fֽ8jp[f|I0C9'2\ז,}DG6aXXyޢ4h 0^`x0 -%2A,Ԃ cXΈ`֣Pjwb?M8g^Bf3 UazdE?#XI9]DV^d7! VW`e=:NqYl˿ң¶D0`k=Hٱk<:\2nGGwpG <ikj [Jo}+|?|Mh: 0F Me4iUJw@v|;,b&]dOZǃAER뷑" z82`A+LͺcUv+嚋.XRc&F8s;؅AjFhft`ѭP eӴ{ 0aFWL5C:7/(wu5(쇰W npŀh ƔdT1sjP CS\ؤ9u擌DB7W`-;kH~_BM{yÞlFfDžm(߹FCY;M)E8iTko~:O30 YY &uSO oQ);Әoyxxm 3On$c W9oC 1@c?Ծd %-wJ_['/i)쪴s:U4k] /EWOTWWi('CȊ~ )OV}eX~6*eTW})p1wFngDKB<3:wH -)s:N#o 7 yX-[F! {7chí:uOZ_P6U5>.057U]5@`?h '4_X[c&\9W٭$Ж'oGWfvƹX{R ȘFE(Fo7m[ Y3$&0'3NAW(BO,#:VX<Nv P<6S-eTwM.vcTO=VLbYeu0*+fũdtK'g>7olSJMdd} ğ,+IL--Rv  :9!ͩ S4GѰdI *l(#xd*w UPUZ(A tuZs#saڤ`l4(GL}ě$]o\`Ljr$#i5[ԋӔ*| [Ò7-qHvE)DI]P/Qn )EF05^Lt} EMͨ/;-^&b}B|_Y14鏱t2hRD]z+M/ʹn2>[TY2?&y6NAK?IΓ40ݬ'YsMWYu EwN&:q6,m 6=a:,JWUAk/zgYwp9,* ]Q7g5u~#'yL8|0I9Nz'{1(e~.ZQx*X^NhDY8FbRj~ o֯C/J~&?w ,K֌;-=ۑY.SMNjb+Tܴ:ovWJg,zpe?sQ a=y+Jf_C y}! jHh VoEo[aZVvWy5|rA͢NxwJ~j}S3Qm Z+٬aHN }ͼ܅SbЀ\;o~A aMFೖXpHGYGose8ۆJY[R64\l+VWۮBPZrz?5%/MGn,?w.;l}2D*!q q|qbA}t6R0ھ]<Ήp{նK)>Y4ucDlo)u)C҅~h&SԯҏBmi%uQ/#qů 6?:FP~?dojyjK28VLfџ[ڇ 3+Tk˧ oH5~1 A:H$W H/w  X9nkV&ZvK YqB5Rm;?BЭ3c.& cR6AR5@,3ԋ9~՗/[A•قԐҹV#ĂfA٭W6QAl.-ê%ǻ7f /?+BZ;lv%B`d0qz[Z}hwU5=U HȠWdE)qق0n}ICX~T3!)}>?S/; U]UsqĜ!㹬gxrwe_ (P{P ( %[`9cHtzD;dd$d{v)moTop9hZD ?A hU\{Spo䋍_=R@n'y&Iڣ[}lO7ha+;ڟ.-6ՏoIyhGm,nvȷ @L+[ACq&Lcf|;/Z_ϭ~PښtwX.²pZZb!"Cװ^˙ ɀSG)aBml`_M:Z (>Y=[QıubOTnզ~1 Y<ϬI*}7~r9",Yl,bq~*d,aiIď۶NQ|0ю*R(J6|d[Z!]G^_{vǶ)lR@Fz;R޾$a- b}JBi+ː!}Qgh|"߽rjxĒ Šah^E~+M  [\+WJ@ybP1@*CذݸxP"r~i]ky kzK ,S9ЁG`P3.hhe"۬LIl [)uB/ (Xf)x.YT9 Q|sVuD`eRxK;vy,M f-PO~j\ėEoISi𾵛_'YT;Aڈ9 5On+SSL>3}ŧK6/g_FVǓ|f*J0:|sVNaMk0w˃H6:,g>\ oQt< 4 Apr[6VΟ3@q>ò~|kJ8A٧ Kā-i^|ah?S>,h%[ٻ$8MvcK:Ŧ Bmo}Մ#6Q2K~{*F+!]U^GKvQ3B#na ]zbъFȂ쒛W\Gvtla/GeF$|aA4]Dꁏ޸T<{P`32qڢDt9J&fc)Ȯ^\ܥC(0iPՁָw6S+!foR֠gf%53 EI07*,HJ?q}1%u% ܍F)De{?$e!DZ/W黕b.E]?'U[P!Yyc 443]K>KqK Ȫ:Ɗcry}mde`mWM*()ȿ4ΗEtfɵ&.ՈD}ŻhqeR.\I͡ "|;>Ά ~;&5~~w'7bUd#)|O3Ťdg># k /Ů:~Lf*OM子3WsEI =jKJtgDk, fpŽ\]rCON‡J8G|uÌJ!X,Q%"]("a*xs<Wʒ&h]^@Pa xFα$ʡ[ezZ=T=8ܵ,;pv?2G;5rxn?VkܵC+YCdG\aPDa#B* ZGMsx $Rsd,ɹaF|+Kwƒb~Jͬt!+kK 5hoN'm߻XSڗU&.zBw|):vz*LZX7[nbiH7۸~C؍-E\ ; Cʱ_@x$Dh?0wƫkZAδ@; 8]EyCe=pK7i;p=Qwb›l6VMۏrw7J)Pgsbظp8]6ꔚ4sWQl|mknp7ܚ5m-_THK]r:jyExV1usNa5VEP0,7wg3ÁR d5]Z[}uZO9 3 Tr?Β)>!&믘"B!:~n=Az]Ó1jg@5{ѷs̊G-t(84Zl, @4P9ȡO"X (U&֋d$p x0Fo)aI4ވ`ΐ?ި纏 U+çEH}Xi>%@Zad?"͏%e}|@UY8iS_$L( v3g/ xjM+vӎ#5e`OLAFAbbF sW6'+!Cd`[WA" a4*b7pƈ]E/7OÒq/# N!TIYCly-`^#O 7 _50-T9/ ,@t9^vxD? =j&T_θSt"E{Jx@2__2.pY^V>q$ i G\?3HQ`E1L!QB^Tcl5 %U偖 _w7T OvD+iea KletbCZU\:{ bX7KR6Dh%U^, 5.gJBZKU=iq< ~W[;b$/6nŹ$zq.hf_)j I/-Ƙ &E!h_Ϯ[3`eU]{c;p<{ .&>sXcaDwb˃)u؛!/s2q(s~༓J:,O٬z=R(@l 4Ve6f<"PQj InTWq,}Kc0Y㐼]5Y&kv(x*Gcxt3ႜP8hl[Jlx\³@Ŏ/ʾ#ܰ} g[ƫ`FFQ/ ҄4L{vr\oTr5Y2AΙ sdLaLҚUh}aHʔgp(f/U)!RHEr8 {nQ /TPJTeDmeਮߋL :hqe)8wX!@&ԥCnmiŠVZr:i9YEMLgԻʔ!QK(Bu^w^NOB?ҷan R(؉ʃE^?_+2ӯ{ `<\Q$jb9|:u1{ırT10'{ by{` \x+?Da rg^gf?[!\  IUTu,!qKezp<8)aDDz 7Tށ*zO[4 TUX-M'2FgǸNjz0AFWtt+uub\PYdt0Ϻn/.lSw k{CeXXXQN(1蟐f.:43tf)*7_=B(M"0ʚ<$e?3` E%LdzMM6i~Q>/c*G4ٸ{EO28.< BZ0P0*C;U+|޻%%W~Eo7Pw3-e E娤R4}]UvvWsvCYBQr㉍(B JpYD2S/6Z{yF`j"ǗtFd+>Ӝj"2x AZkCP> ayIf69+lkZ{loPm mѲ",#T퍱nûԖUH >DEbф|ן])ڲ)KT:{HP7@Rdg֊C6.2Y{tDݝ4!al7C03×fyUOpE޽n/H Uҷ%CˊjKjf 1؀M|tsx+}hxa\anO's$l]_(@o̞Ԛ Ek;Kkᔡc0?nngE \q4XqdDH6CBrSL̀ f#f!A<H߈Ҙ30ͽ&.Ҽ1X %$}m?F s8)V=C,W*2:4e|@ l5YG)!ŝׇJ'$lh0iWEXtVB7T1fe$_(/L+I dw~rFт>F܏wC d`7ѹ~hW|cr3f>} dC+*naZwai{oF sb!aY&z-v'.:fv%Gp1RiB%|ewffl*1Yn"` Cs_hx.֏%W-1.5H n+b8q&KM'R[TtBt(? 769 IF=Y̺ffJ-@;"m?:gEBdL?/<\>%ɧYo>t5hM:ژ )IX8Kq_S~ ,㖪U矘lzA͌zٽC(0?J}U0.Taŗ^_`jj10c:m25bOsܽ-+EܕS&~cBɞ C@!5PGI#k)y8[~SyNzEAF0[ Bti%/Cc}&8{I`nBrJ08%DܸϨcwub*)ڼy7앨j AĎWPƺ;5D,Ans B3Kw7 akV'ese;f o@T>1i V42t> K'r2%@ @قBYczV6}!X_9 %W Px$f([|X|{;IʞY\QM b/9O l;w ҧҹx70#8O*xKr&SQ L ߼,)!K'€e j `[mGdc/z?cJG%duj<eL!Qf)McA_;IF(PHVjaH}p0v]K0žګ,ImEX=a+:>$x Ju#k0 רͼQ!Eoe\~&B{:; y f (8YG҄΂Ԇ_j ~Z|IBXJZVKJZJC A͛BDݲ ԷO ͙wzXiA]W@4=݌p `k9f/{ AdJ&qXD0rr 4ޖP1 gUh$1 o7lvAwnNNr8B2WɃ];!r{d֠3$(Ή3"0, ,汯>p*9Ya,ڨkCs.ث| D2/teFH}joDJGr$6b6zJ"IBb=iG}jߡ(c!E# ћde$]68ɳt-V"K5 Tf;7ea[x/)0ۗʦ !vG[-'~F8uTGA3~IXs>Zo27 (hS11ϭ̝~Vn}I[d:4*GR[LRjB+TF?ѥsʱ:a%8:s 1#/Cc++鄷Auym}]ӹ.+ F~=q|C iK]X_> qp.XUGt¾ zʸbm C+7WAsCPUT EFL`)h3!@rng% NĮVۥsOX$<,R*dD}L>T^L\I %֌a}ŋ BI &4Z(PR@G6lxg_ʦ нLyk{:_$ҷhjR\?a.R!zv jtZ_į V{ӣ<dQH3^wzʉ hQT|F1]ᡩ{+PB)v |HPLBܙs v1БG. :/O*7'tq#O ̬]ek5ЁhG, g`|X,Lk;--z۔HSqY's]ZB\u H2euAw΅Ńt׆;FxqE*O>@`g| 9 [+@QbYk˝:Jͣ75eHPGiA;nY,+YNͫJ3 )wMF P5E"I𸶂t8|]0 ͆ b$lợgiRZ+B'VgV\@n7^8&gҢ:(M254Mg0CzEXK8δs(#k1j W(k +TVJՕ׳ij#n]r;rbqjɗ&Ȧuͣ"@|O1~N!jxdK1,}^b@a#K$EV,TWÚ:AHeBjN1`Z!z$D1lg[4ƒ{~UQZy BÌ[(*#zPmӧKgRC#h$ 4̿ k~lDd.)kD  [OaVn6N7LQp2?P_xh󦮒GUI)7UKI!&t(X晭@&¤@C@fvv"Ѱ/uX&Z_Si;1j&j[B+2 `^ 74{2x-ټ K;$MRM)KsZxO1na;: Qd wS U\ ]EZ6_jN\S@JU=7@/͌C轃}-^Yf+O0[8GJϺbn CB#\=WaPͼM 8fZקIӮ8{?k=YZO8{ F+#=Ԣd &' 31p4 k<:a ӢC 6QM9DTD2>IF t쌯$xj39_4kieb:,5 yiE^4&6A^Z}:H{x̴?yVm)ItQm>#RB ӷ̠v@Ni[*0MPcVUL)TM ݛF, Ty_L<爏k,dɸ zV\[ָrMf'hKZ[< sLI!T- 2vJ%| 5^vbӭ̀s?7S&4[2ym՚ݢVY/ޑ8"#:Woڧgk؊Fxbm]f9uH7-O#Kزf8>~A|G AXuPiݭY`nF`ި't8fg.Xo<Ѽt8v! /1;TV%I[?0IIBBW4/8%PbCDE#!u֘;E<w2-hlA eMssLڨCkT-^^.r_T7ɺ<'/G z>g[l[&^i`$YdĴy_Cf_s"LXV tF%f;b?g]iiPCR//<]sw!6PHQB՛khEWS|q b(wOGwK ~ XuUy>7ؾ΀#r&"I2Eh[P%Fߑ,FxGc)u8u&T$rP)"4gg3_Ŋo!Irʬ҆߼KFNwj'߷ԁ J_yb[>`󴸵h?ۧ 2gzlTj,SVRӠ_lF [dJ{jLB 4怛ˏ5A|jRF0P%貙<ŎSw;|'F?Pcqu e?@rNuAA7sALwle+n&)&GI[qqS,7Vowu#5{!ufښufg5Q>_2cg'l|'6,[.>OX Rp'I9=nYUޱ&O3#%7zXAdA(;ԁ Vi9Acd)\yu5rOj'au\eeލ"H| ,Uk1DŽ|}[;ަLpuŸt;zFoɺ圇+] gN ,J'RVl2V?m͟"zF/OQftN"f% ="kZs `N$ib]I5 58lk~mZ}-bwΐ{ԥk saL^"{ 峼xpWhغif@T|VSwi:VvLuۓNl.MM,0k3p3⍽w1ԨU/Znȩ\"΀MGʼn 4nyd {.3WB ,#G0OZ7M#1QG]z󨘌(JygZ HN8I5ԗe Hj 2nDv NG4[Z?T{|ԟEQBj{W WhG~ (m@۹bUj֙,#czsL;-X|=*dprBDBDZ?<m>ٞ-τ+/#]%4m{q՟}q}Q1ʠ9tA{!)Ut`UF:~ST&"2K0 O˧h*%pKe W9ZߘSjpݹӀJ]8sު*!H\8e]'&NG:.+Qy7Q:Pd7O+q:L?Z_2i'D4N_SIJs^}uWU-m 7c0 Ze|Hn3)qtRVZoKG~/5vc?ށU >pؠZK}3 L:}) z4d[;0|!mT8^PF6#o̤ERiVrУu*_!~r9tmxV 7Rg NߑVv$ٔ/g @B!3S##]C<:C풝!CwN #)KC)L9_UtAjh[BèɓwIfN$w9r%LYm5^G!o}_ì1:%Q\Ӛ;4QP񭪊[$ C9#8stZHYDsCds9R,:ΐ 3k\l FK} Ұ_R9ؖk.FQAAgF-\M9(VhNna&@O/@4 Kwي#)FQ6i!GVf#a=sjwWΰuHQ'$ı.c$~Si8GN"(?T۩c)gòWֽrB?EkC-O1#&=S=MpM-x37n}̴gB W|p2@E;5Dp5~,Z܆pxA},%8|Ku"o!AZ\J 1AMx@tYXPt.fɆY~-Q8t!fȠMe:I,Vo|d|Ǵj9"U"2ZK:j }uꨪ_"xor#!$eԅ)ahlыyDxecQ1`("c X[G'V{;[em=>u;mR7V+7yP7(QDAb1J*vueFWavKkHG΃VBr 1jx=uM=ndttg'MTf hkNZCU8d9! }CYy}t7oKKt@3EB-?!GJ?/L?tb#i\qp}86QCSY}/+$T x4bhņ25O#ɏtWh;͂% [ v/':N`r9Q 'kҼ2Vb<啥t7Jy'Jv;&]q/]S^7Ư6|o|U:Ikz;Ru'r>淳QavUH|{8In/\ x4 륷f2PrޛʋUz>)bT~hե8﹆" 1l2@ȏ]&XZI^Mf%W8Ԋu/vziMz_Yj*z E.+6+ eEP IdE,BzJ#)qz4\H)׺;aIYǐiWmR7,2t㡠$952+\ $t+kKkvZ;r0=QV((o3qA /m@S+Ŏ GբI %uuS KKq Y8>-F[D}>&J\>D6&1⠀M7+%Asc8Dj#*`i851nq&JF(-,QݢMIIjE7=QH",VO3 #5>ey$Dj-fG:w}h.Ml23B_۷|X:HnJHv[Y)Zئ>çGGp CL]S־![3TI-(RkmFb@JpΝX[i@ػ(YV>J}]qY, 5'{^&n9WՌ#fßSpT;zOp {=h fD 5 ?djŏa|0]l@4JG}cm V$̈́4hJ6N5CS;vBӺEҼΡPʙThEpOKӇ2 ^%0qWȿXpӤV[W4Um+ )K'"OЉ(sV4t'TVh%^R;e7wL)Q T0S r;  ~M4a:5T8n|juc3eIP8LLoM^sTイ 4+Jv=\fWz򓝴/|v&8y/ :Hl0X|<Q6 9a/hZs]9ӷ䴱j@?iϹNYMէ:g ,sC?.ad.Kj/Q{I ݗ|W4/&[ڡ4oz?m]=Ialw~EWQܢ~6L2/}@5nQΫ`iI6`Q} L!8# ıUIǰh6m3 !0:Jk%dAyw*LwvKR6U`Z>|(^5~2W͈*XjD+ /pړkjB^FIr4 89DJFm ChGI];|ӐWD 'v0-$Įr'LoOp5_cUk3o}֨SI.XI8G@|4mH<!!篁x6jVH /rY)#  VY[\@_#eЯlͰh0B3fI14.~6:n!ݭ1Ee[4U~-zjm>0@Ϩ^/XL!s~7Wc@MגxHѽ[a0f[.w2%#0Ф bM=(P+/-Wa>gg&v畽iED*2:e='24gG-Qd #ŃC2(( LJ[lFQ )NhO䧇!pJ[-;GTn ^WOQר=Ͼ'v{g9'/L1ҹא6ד?ג3󣝌ֺ?"k՟1UFOM2Ibl4]PWL-O,skUb`}8ԯo ) +tJ HjlDc |.5zopq~wF΃_x{0i>2 ĬnXQeNp\/!LLGvYne*A?*[g(l+w0 ɖA^ǩ?$LtMFaJCҌM:V_XωO-*C?u8sCClG^4eoKD@^ #-(X ڹP~֒<Y$CE9'FoD?5tqlYPpFVf%w?$]qj-Q1jou.vK wuМf :_ p^g5 /]2~ WP\@\QKM=_KR:̆[Ӻ×Uã,!RMD nYdyA7kQ2E-$b<.`\+j%VGB͹F6~lNy_ Ts{X\r'n(ӘƈNח!|]SCቜl?'2E`x:?0KuR`ճZJV]rOy [HS*XolLdk0(Oy2M`:p#p˲g$TؕKFLSJ;5>NHCQ1;i'.?@Zzjэ d4`gAvV Sϧt;T]=IWIv+` ˢy1L.OUͲlfdeXN _u8>,$_ ]tr¡PNEA18;>p=ꈻXI:AD6^FB ;ҚLD\J 'SXaFvhRhUKRd"CJl r^[$Gtg/[=Tگ[}zaJ7w=)5[#b(GE_&3ѤCP/`'> kl Um}wDw{oOxEbY@bI\{;2cdC}fyեBvwLPM) eթƀ xX'C _Hcl"nlm6(zvȏ:[1%feoҵ:PC6B,Pk/V?Hܱs[oUl\ ݓ*3E:=Ey 2! wuw .AvZ,R0ۊEg •)B_ЉplFl8`TU4,g;C[%@y!Df!1 ;֋@m.jpq ZDﶺ@J#eB:jX[cW snmH'hM} E ܡUiH],B z|4^H9@|ϗTHtT]Q k9xYn0L 䭕C9YB+;ymcϊH2@pW`ߐ=IT+ON:_d45޹~/sTRM󒰧rpU08ߋH8}AEJtNFI' 8Z3N9k\թiDWK]4|(fn 87S.G덫sgRdcdYXԡ-5Y`jNE)8#cSG u"g\2B !wdS@ )9>#S(W=cXOE$U٪ ?')cƜr@^='-Y9C(̳r/Í(B{= J#ۗldUg!b,WRLlQ$:*- >#YU]Fe =$ڌۻj(Mٟ0^8X NŨok(KL(IIVhvO$#6?'n)DQV@y^ofC<zh`JbK)Ƌ>,m_:0 c)㾷B=%jXQ{TҎ$-zTZr ]xa q,]/DJ7ܘ@]68F34v9Dǒ&R`S'HfgbT1~82E$N̔gɭ+0ΈoMϧҋ ePGQW d5VN2PU"fQ/-X7frQn q`*V S*`%[z- oU2zw1%PӇwu] R"/+'\$i[LsT'~ɯT|~5"N5:7%/֭SthbE`2}Oeao>COg~IK0Y>vsKCޫ,08{ٜj*$s ZKQZ.q0H, as@+i܈ct)ݡt.4T|gS4*Q|:1BqDC^<06R[eP/ ͍k6:MO7\\p`= ,菮fŶAcHsj!m&*i>@d}v_E7z}fJlkֲɿr4I/5:TQ$aO<ǢW.C[9lOh,me H|sb~Xvw.xʹ_o\>jzX\Xj [ 0X[R* ;`ǓAQWIo#XjaqԀJL܃ANiIh rv/0-eZEDF>:5^XvmTX #0#vY(+Z>NN&kD K =c#j%m$Tj/W\ OAWe22͵3yioG6VMV}ðqV(r} ;rjElkP(a5`k j-WL\Wvb4N۲,[|aӷSC =cm 컱Z-{O: L ''l Z [(dLI"X1b,w[{WpcACAZ{S.U[IZNXm 8I)bkW%dp2[QVF(y;v",'gSvBj;w<,73`-}HƔ뉲0C[n[&1W1=*heeQ6wHeCzVXz.\@B_q>{|>.3u8Qء]$TJ|JާJ %"$I w@|r~,-L8RYncO&d]ΘX g0@ 6%njkt J[Eq.|c'.ڏ.4^}Ԥnr+Q>W D1+Tſxr?=$#YG`Ws Ջl-|[0f ƬʏbĶ1Z.Sy,Yt&[1 | y>ˤP`v0O:o~v2eC C!Սh,J?w[3~{czW/!DQpXZσDMXNXgWӻ_|k37r6Khc<\!!c7ϏUCBv DB2!:H=n{7Y +E_X+؝')CN'EdC3!)ǎ71!gDDXarTㄵt3 nszDӲF3-|E!"wJFFhJ,3n_:8<+ĆF:ee`f߭. M7l?nz2c m+aP erp\oQC#l9֒vD%]Jh7PTvܑuyIqjF20⤙7b MeQi} ^"C%' !-G5{L6VƯ gk8SAP2*2hT&xjUY!QxwJc˘OjDDG6 ##EZ 0R.lbמjsDv߲ yfwJf!इ Á8K3\2<Ϥ]X(N^_o:_nm(ْOWh&8SudB Q# u3E@i-ڐ}ZO/;©:.8$z@ EOcwZ/ovs >=*[)J3.H1Dzv{di(;f]XUk -H|n8X8A 7oY)E@Viq'%wIV=jڮ,Q#vz&;Pss1 !p5%7Be:g0qo]\ct(/x*NH]aG;b@Aq]}1hvr%O hsB-Tq1@}{[m]2Pt2{ ?!|A8Jj&L>Yc{cGEufHш)AsҐwrC~6M:3jsWD c2( ^H MRfRzEѺxa%wuu{v@OOoãZWcN1onrMqՖNX6$r5~%Dd?/?AlFnP3jN˂}H#؁ɂoqSp[_N%&D^|޲m!aMO.%׭+c\㳳4%"?.\³^m7yps(bm|J|Giu0bۙR0ľWX{$DVX[WBϼQtt6uTKkٺ Q%v蝰ku\3&c1(&c*뵶:a20t eۂ \u QeM`ԐPNg.kaK$>vX`Le8()hޥמˁŠL96X a1x&PB/;ʴ*vAfѼ7 e 4R~`3@_XH;Jp-dǿZ2{.n6 jƟ :Y68N9.g , d/XbC|AGX+_ǿiL[޹t 녓FXʑ*tmKM|v,44#$quV,rZ׶`yJDHαڤ M$Vj~DZ[7JWp/'€+!g9%F|ՙ'fM_0sRVL,Bu4E1:T-ah"~mZپ 3$d9?lU9 #=:)'NHfһ+Գ2~Q_tٰdMQ-Mq ɄȈ&&TzL!7$go*8?{A"*b# ~JnߵHJj$ֶ^n^>-H ,uvbK^DVD9D̍%nFhM>):SAOpdpq2VƣJTRaA9 m!L 6eVK#PjxMY $1Wc]5ͪfg<" =Ӊl?n%g18A~Kt|O7'}:>`gJ .g,xT$c:1ds/Utˑ2nc=m]21/HS4ascB\ׂ`WZ`CoūC#)S4J^+3sm_~shKM/5xǬ"ɛ[n]raC]uu_IE, ( - 1n+2%evMMh.08g/-$䏄{5.a+Woxv !tJF `NR] wd;ߙmC_jd#D2,S;97&^I> jZA(6`%BGjh /N/5QH/$Rї`5y[{aa0<޲2`89en3O^$ÌV w zMdƱDdya #/%9x_=$- (b@f0q>rnF.E0 7C3NlO"p*b/~'yzI)TF-qk5$yv]S+0(:l\|̻ hf#`YKpI"5=ʥMx<)O0娵AӂiԳC˧`sK"WƕC\`u1Y9faDfvw*`g F3V5As~N oaBAG$X{,oeɷ{7G+/.A{{L[3E6tBd(HԬF֌`OS"Y@ʂkϥIv8gOV-y NX+.E_'NB6$'H'f>*1][h!~q}boV\0I7ȁ[X7Ϣ: ڃ\ u3K}xDG@ nAXCxetXhg>Siv4Ybx1ael:h{ Ʊ ^4BAW`~9ٵևGA` \! X e*JH RDGd;vS5NQrX 89꾻e2FJz1we-Z}\`DkIa7b!lmy*l5+'wk1iPK8w2>V%a]({F7qH ?~!Ѝڅ"6]= &"Bpfo3b:+kNJT۩צ?̀VqNRŘ#8A=kQe.?Q('#~'`SoXpX)\|' hV d٢$×%ißyh` 'N>)v,Nj#H0{aMe*Z;MKe=+,{od5`Q|*d _d3N/O0-gSf?GRm'r/+! o> rq>ԗt?Kٻ[g5%{ '$e9^؇֪0ӳq:`epc2q,^[[jwYٽMFc`< < 7㐭ch7@ڲfs\>bhe^rCR!F `5Gړp$%eTLi$H{U-Y+j$ (!QoYxb-߫+d}Cgc† @\ \ޯ.8o(i{9n2x9*[OXYΛ0Y}dgל: ,G)SqytUq%@t2,A99\'D>`@J6n뇕Cwri%h{t#Ap53&#{thN&AX\"C !JjSs|ZZWRvm }3..#xy5U%ӗ&3:QvXYZ~ȑ1A]+2; 91PD`Щ,GVx[TxC#6ʖBL9P)H&դ_Fxg "Ex(UiwIʰSB!6%K ƩK]3>|5х/ .Δ=(sm'uiĐ^}-xUu͌mKl,sA[deM~o8ퟻDJLfXo*e4#VSDK!qpբK X.Q3lvDK/1rE,fζMle٥}Y4y>cB&]4JF<} | ^?+;<`3cs9$<&1JyxDFQF!d}δ|NcG!US]fpID.Ox𓨣烀[vX"rp;1q&Eֽwx,>OA)t # }L?0ۂA+# DeP)Mp6!QNgwOOi$C2o0nB}?)=ywʔ8G,yu}A>'%A,og0քs^%Oź4:aNVL}Vz0ߓhE¼ߞ\u \-1<Ä>9Yv^io'/q]J2vxm2mXIј wst1.FiB}Ɲ.ՂLWk~ cV^3ۢdY"»ꠟ#'#UP [+~iK#0HR,ѝMkO n4Q*vìq(EsRFLekӄy}blԥ'z#/=N",v uo4xv[*? c?T0%t|:X 1՝w$.8L&lUMnqhftv8oq )ТΈve#" Wa[lklVcB>5{^1QTN&C 4[̥\3TlSSaBI#00MCI?jV8mLŪy2]?D7ՑSf4'bWYxH/l,apҲmޑ_ 4pnWuWpTWwPYBkmhߖzר(J >qJ3#% e"Epȁ1)AwMnEzēM" 쇙- _n&#ש7 v3݈pVx_HsB@gO׌E}hJ^.XM/ VRM5O٨B 7bO$ ZyEDAZA 2oٟajL?uRonU4dq!(E 48*:RQ>Կd]76σ9=6=?,ͅ wy8Qs(OeV.ـ )6L\_ .i] 1-Je*m#Zu84m{& 5i/F3;!QH_9;=Dv[ܷ l׻kg?dϪ'8QlI ?Z\*tO%JZ A)ij}Vz?vDXs}l$AyƅMxQ{ ;dlXXD=z+0وtR{TOٟؔz,!òN Ȍ$7՞\3dbD]iٽV]+n=FS.[{φVsw>@ ;8[muݨXp({[^>)V]|kE 5/O@}MzKT՘TԎw(5K? 3foD1Pq LwpiXTOp+)Tn- נ7y2<)ei8٥|:PP۹Mvf5J"O`*Qr2 4ny v l *"9OAccrʌ<&*cF0@[ˣ,h)I(+$헵uu}S r/asHХ )]:*5|C0l&8c FjvZp+ȁ='?1$Wj:_)5d6i, c.[ ݗh3}i3͙߯q!ar꨹P$ɯN#Q/RmlM ʴf,B8 _[U"E&VTdYT7\..[3qSC$X50*,mxVȘ'H߼XLu=,~BP–coԟmWdI7nJw6< 75K0>\I%>z=mt4^-b! 計 ŨԤ urU Nڤv^s d+74.&,B&t1lnc@sOEGt sT bYgiy16MԽW=fK1ŀlS =zC_9{K[8QsヤѮ{ (;KaZf㜹OأFHx/6Dw8tkY%O#9B^o-eʁDPÁৢґDo4 dq'eTEA0]uc4fLۛG6&R+ nk9V'MxB/6I.x^mX>q "N+tor΢8Na [)}؍{E{X^mP K.r;}̚e/D*nڭd~YpְU*:ESvߙV4z(|r&;j6l$ 6\Au wzǵZta}W,2!ց(KBڋpD*QBEXOl}! TRQfaz 됑ڟ8t)GN 4R"g⛬49t5J.j0Rz7tl Mt/׋(.A)?pJ W-JB2Žކ R7 Vi87{-Uaݚ$0>867bK:Q227;E7kj'HHw-/unu{Vޮ#ȒlTaWh&)ܕG1Fi7ԩ:yukVl(tJ;mh5N1~Fs-`< +IAgeLX\aݣj^G4ܴYBKrHR4jIXcIԊl,|Ml4| ZTl>5K`+ K7D)Q?,E{%DB5Mu1>v )SzP+Bfe4(邁}J|V.H&`-@[Ld'ۂ}ۿ/QJi8]3W?؉t 8f*4Uy(=NxHůa-Z>M*Xpc@|cD_h%X5|.Ai#:o=+0lXF g[E+j,G- j˔ ezJ [&ogTJ9CQ쑣 Lc.*|Z*w2EVIb졩[5[Dxu!6s\(įs鋌 V4i%29: ty!ʭA*lm='5]u!_b, |wfAp8?F:IQ8c#z pVK]4zV3 }̓Kqъ&੏QLI_ףRxИhK̢@Ҷ_DJ|?V㴑0s[o(Zc:@{ޡe* l-Vy wBV.bU1f) 0H||:hr}I(-_J2-` 'Y`9*tB|3M%jX6J1a}yovK:[y Z&+ nzݠ諍0.u{B)u} iJ[ pV ueA{!珞>ZE <k_FOM\R%~\s\ћM ᬀGwWRrŹkBDA)M߿'_ 7kH֬)8b,~eNk~iDN9\ m0~9]jqlyluQ-uge:PO#!?`_U^tjz}N˵@+ ,뜴z}\3¢['ݒu e,kJFCG,@PW&ӄ &91Eb3ȧ]h*~Ÿ1eRG|;pst|9)cp52Ʃ]\6䱋rc P7 ST1 0Y`(M׈o1n)t2n.z E5 QzHʹ;x;JWDnhP{ RߴSkL>]N;58yo"ACH.! t3V&/dz9 2kf 'ZV9 1*Y{TY!q|F)~ \Ŏ.܎e4O'@0X^t TJҚޝfzid%cڊ^v0S\Mh1 -*B?e,sSLǃųiV b2nZ.rEniUN*\2t·(؞?V1/Y##@ N4_V:Pԙѕt}x]gĔ{Vm9 R_5ůKCB+xV$0`K ˃X`| d5: :ȢM}͂hnr粓k8=!02"PO f`iY S a=* tٰׅV%nP_ny#vTC-z:+uVQo[Wۄ%UCGePultY'~A.%h@nd:ݱ$r(e w0m{R7TL*]kDΰ>^2pRS.Y3]xDme+5f hF}h2B4l)Duߠjai}q@5f=!*= `)< 'jo7c<[t,A!1?/~`S*?,K"ZNsֲ 0{ًgI7)߲HYhEpKUm`HkRDs>A`p[` 캆2{*Y0K~WCG"zCTh5pB_ _vpzPV蜫rԾzHK&/SB.}z E 辕W62[jiRdVTAs5|+^උ>Ƕ-Ӷ|pŵUGý 4 )AI爮E",H`r_%iS޻&0n`[iH~y m-z[ G8Zڎz,Kux.}LF>8LX+c??K6n=ZxO |x{hX){3Wfsn^c%C*S+>(>zmVxXoCK'S6™HC8J}'D`oUox3DKBH ]w-ovH|POqinkEܰdcʧøN|n Y⛮)cruI#Z.S£]1ws^׻wwf˨pb 'T-"el^(RY>siVl١z a^k#trWUoeϟ؏Ƴ~G%s,*LPy}\7lߔeeNџnG{Onj 8[d(Hy=iF<+ z ¨-`$zIs!,};z NjȨܰ0[}x(kz,>6e @kr %&)" I 5O(FPWWM]dYA7uJw:Qe&) *k1")>ʪmZV=K )^B Yl'iaZ$d=4c& EZ_M!F>rMay1@ITin ," tYthX=u[KaOX}s? \[:Y?}*6ks,^n4wF$PdٛFg=US\rn $ԙIUr}@p0*Hi)x&fs<)߃%V\}"39&,#ġl [XIou+仌S{*+Da:|]گ2!C;f?@b'Ѹ%a\y0`p=ffib9bڲ.oMn?Le#rI#9GWhe8:囧Px|t1 8MyYr { xcÊ꧙|_b] s|H7bsurmWi,|I7Y8{sR$Z@a U)|NeLMֿ2$; RIAYlyhq3Q&Q xxafnS_Œ5Ʃjs1tl(igюZy1%y/1TqP$H$psX!H6#FgFp"gMF;k=YJL֓Zkz'J|rzA,LIU!Zcu3tAF g`~R!x(tCĎ_x}o9XsOY+i<_g #% WYTʳ+ZSOP2^!1bzma("BJL;@@lyF\qG<:}JSej*ɯn-jUiV4BjA(sQbg@.O[C ̃`˅m^*ޚKe4ٍ "5sL"Cp,1=3!JDu9{I@J\uS"47C޴ {=1jPD%.HxpJѭ3rZ ߰>6߰TY>n˒/o$D֜_"44rj ̗%golCR]kWsU>H&o~CU]kL:&PkLXjTlB|<E=izƟxr:?yY7m~I:FCG[4+ި,LUFnJu!aOPp\XK1xl/$w׼x 7A`DIkR27<1256c(?.l :;bbk%+>%u,~Ndv(t Hܶ;-a'Bه&qʃ'DJ>(: 7?) .ww57M@+V%=| FWŗ`Uw)ÇNĜ̿~C^}mv|+wĕ&S: ֲ`XSG܌֖̓+lhk 9=Sd- ;CW FČ~A_BZ@çA7; j6'gaM@&os߉+'~ڕt};4ՈXrf_F9P$`Urzc ]O|Yn6FV?JC)SZ :@$ Ge(ͮ@'圁4A6n|ei'`uj?Ht~]|?5mÔSݎQV2/V/+kD)7T~C^cGqf sl "b$jYV i5\p4=t|YAe-ءT)|D\j?<)CvzLU0 n| O`v2F]JB~ut:,N,8 a%u';~sŇ l +7BQ1`kn]ނ#bgڟn(z#,>Œbr JU%spדL_p)u멑5$hb$^8jg, +qd x<7zC=hS3@%`Ev/F2*LqkP"^Z9~7Ғ*x&l{N"JvV.|98==lmo%;\A >X)<ssNFխ74B@wfaGJfgSF0%Q0+'7=vlI(w"O|)Kvw'}u2`!Z9(8ƦCsP`UCf^7_KXFgylT7™qA9E1%]١Sr=F<'[|dkۇˇ z3':fO>gw&͹d QX}S=V]˛u!HEg[!UtцYp8 ]|J>Ƥ⋻q!Pka/SW>YA4 &bς4./sL1$69.-DJ ;WUJx ( Zqh; }NR(6,eDoMPmH*~Cx(.NgE0Ki0!&c5q]mL%yH(q&]QU\d&5_^ޥcZB@xFN{Eo]Ĭ_;o5Z-uj+?7h]UmDi  ,=bnu;jKsx=!0KEИo! 7rAnX}e/䘟bBh*y==V.خqو4kS{8M=p̣?·M39GqtC-7*&fxڗS~"D|}:F&f%t0~#RLk(rn;FW8f?%zDžg6VND}Ɗ UuJ(7xAm3mUHiډaKa1*ƇV3,5MIgNT>~{.Q^/C"y#嗻+ .-YKqiuߧ`4rג3B[̔^9rgхH`R㬏Y3/ۘ5JL>,QM{,S9G|^^k9=l$_ӓgta3PU:BFB)Iɇ(`ST5;-Z%ݡ%uCs]Ο_ʦ.,.U5@Mߜ"ozpSQŔn[l;!:!X H*hŖMBPt:Ao-lQ@YfaiX fd]$J|"-GfiNٸ8A7ˑg/@(TE?._MrA{9d_oʥ&6+mj!6W=Җꭁ&W]-,AL`;ehRw;b0Qu~G;{8گցh\@x 's1l9Y_%ƖNZXi޿bC" WMNj4W_-`ӥeYeȼS\^@Bݮo%]#5{-C@Ȧ҄AVXP]eC۞+sdPM6Hs}Ԗݶ^EKRtҿ9ssq9GK ^+BOC"ƪmT<2hاsW0ӪSncZBByZhg"|8z{ttFg+@LAz$Ϣgu s?4jS2D>U뒨2W:Ȁ2{ē2R۔  C">^*8.],oKw7$p 4 [@G ?5 Eb8]ë/EG˳l\T)6z]]D͗~z(%jBFnQϻ +/Ǝg/ Q;)g, 8igze`{¯fF`l(N7;LvN5Xd]d}Z}ގo{ȶB-D݂ac8A7j{߉'Z#HeaT7$mӿ,<_HgFzL/ه[ā36mYGix9x&/8|hS3-D:, o`ϨN+#M3[҅/Ͼu=+crwߏOvXZ4w:PRov Q?Ied}!l[iK0XkNc$rb\IH%A%;:BMUv3ld4BEDM3VT4>o aojdHo %x&֎Yφ{e" _ȕyv-a@Շl/c)JWsK8 /vR 2{PLHXϯGE+kǩE~%`DwBt]*bhKDU;5v,vX|R#xBO CҏMw_kSk>̱&&D)IQI8IHe7o$[4o *9h'qX;qv.3?w =/&_0[q̙\WӅ-<;䙱z7T/XxO *wa$S=hzI\ q77Úǽʪ5ҍkfelv+Ы^AYS:hBh1(l G%ߠP}iEl=d7նU'+G﵍F:cWct+ \I >* Y~c^'_v{~&ļ;.<2XV oh*'ء+P!"p"!vGn) Enj6c ⋛zD)u [RXg nvoEtȈLwld a 'kk"tҔ T&Ug=otS`;/v|8F~N ]4J4ݲf9| 07gQ kBBŞv `WLLzQ\x6Gs?Ґfwfk!W?Lrxk^f0XFC6>a@3~',`6mpTݏ؝H޽H_n (yLo޾\$.g}pRvx4;KP%H( D" pN9M3@TGJO,4@O/&@\Wg`& &YZ$}nQ~(9WޘНL^iD= gmo5z8:D3)Xǒ MaW&7#[m/d?ۢ,7ƦXf !#x{jm ְc7YAXEzLYZE!OQlŹcܻ@`f^kJsrmY)/TET|mONY /ފ~γ XGoeTe0PEM:w};5S >MԗMrh:@ߑ1UD7c!5`swh F`OJu4خ@q=Ĺ6t@;{-m^0Zr6Jy  2&cW4!: iδÉՏ< (=zQrX#e7ȇ4.ST±%@篯&Grlhs\45A'sw:鰐3 8w({%$N-m$[D['ثϤ1(yݟZH^;ZR_pKV|{Y$_՗ J/Œ0P]S~ B Kx9*L50q,Aܬޜ*~uYGόQlWD 0b= Ɉv4zWGX7h n&|9(< ]bXrPq)RDt"JsZ5sԥdB*&Y7 B%$`/~sN*6>%MOBuHV:wv96/-Mc+*'Cuf хxrM=l Cja#n1a{zBǔ$Qn,oĉc `ї55'@ ܇7,CY9;w6MtnƉ%knf˥JʦwTgq"PqfEFZ4B-=pm*@sEl= 8A,NPZשC:|:"e"T*p5WtxL;R$nȉ-t1c3Mx|PwE5lz>xݣNlܱny~c]Dn0iiΐZtCF9~{TǐE?+q/1D:W|,T@~i.~GPoirj 3A~U4T*" v_66Ĭb?U&tqߍ ><*,Vb;GKOF06 D^ "]H[jnslbSQI4$rUݙnE1Ǿ.6 J|+zΚd 7(N|ߨm5<8Ws.FR%n$.7]KW6ėGH^ߘ*v.I47.IwS\߼g6ͣtA ,qi.+욵~h Z\O2k]*ےOã_&V_>~>g,sI:XcZSDXr8c%}e{?F oQAtW7Ru/zρ(`{T>Bty9uIӾNDġ(~F8^;h^-aZ!D1,쒍oû=~775U'68Wwv[HF}J%А_[}"QT\(z٫h n7_i$20AV[PqlTm'g1^-j!nZ󾈙$MZFohBGj6K3ArCȻ-$cp 51 =ʤJ;Q@#,boWͣ48}q'7~ Coݫ}.)'ޯr.8[a{,TZ0r)(mml KbPoբH"p(L#pfU_|mi@9?C?8[X֓ᄇ^V{8B2F"hKҙGEJE6UG-If쿐"^-.md7ꉈ^9`4=wD-{}QdP줐׸("rt$|!8ܲsQ [?PLxZȱ*9&1VG,ʊ|T[ T#bma9lMGyP iyssr/B2byPֵ^Q6U'ƣ ߂GgɳV4o}ªt%5T$ƕN T55X//7tAAlxpۛYDeXdxCZ^"WŻ}|p/>O5^ l(JBHtzfVkh(p-QFo ۂYMa!' F ycaSCyM^E&][wEAdv֮ NSFs&  nX%Ng"!3_{ZtĒ:ޢ##7灗!}Bc}ە4X嗗Q.YAA7=*I5Ɇ>$1*vڱŅ?o/8FCb&\ q~]а!$瓕!X_T*omg-.m`\#VOf[Rxr?9߅C{NQ{rɕ>f *8@Udg@U_KCu WhdjK^Y_LЙB> uiCHCu^nklJ Z e~dMέ9'E}x[zhO˲կfAv7 t'oڳtOHцٝ9xY;s-k(MAwj>|QSat/[TUUrxP3 B ÓV ?vSN[+;m $s:WQ`.`ތlwWo;.TĢA\lHi%^۸>J/NMu֚ 1]t" oO3S{*]D[&R*AqDT=+{P>i RԆat93z )NwK;q[(J H#HW@]ؑMLvLDt#f`Pj" n-+ORA :_N- *r{IZ{!5ZV,s֧*YBΗKk#RWhĪB°nZ˴}r5;rug!^PI#WzoЪ ̾?ζsOFvnZ#!lB)Y>&hҀf!V D;OEɇeƸۧվ1IʁYIbZg~搇U}\ެtޅе!Ѧi1>%^3ev3 {L~mH^rV/䠔l ,ƻOD8oΉ-x$נ<}<$I)ұ uõlPU<'8%䨤FL'&»VM6-Y;`y Shs\S6,n >s %ZxFQ [dat A{H g Km4ץ1+&ǞM Y:),sL.hIk&x-y KNJq|꟱5Z/W3`Cg.R_gAC~4]ߦ|Hm2Ԗ@T c5zlSi;{0@ R˛#x*FK!fݠm8E:nN*GV8WDg' 0#w\ w$>}V}\ fRЇPwn׼PWMΑ3Lci"65A3r4'r>WBƚ2!VT)Y>Y+EAOe7YO n͖29V9^3T.GүJK4,V/j/%c,h.Vܥ>Q6ǰ$b9U;wƭJ@6 _q$js 35o Mt76$ޔA6L*f`7ey̺r1lbF7ĩ ;Ř˵;ڤ8g J2OY?j٫iܫE`Ot] 162$|E>A#*(b_Ps̛o2LBur/b B.SSgϗt2I"8cc7L5AJ]sk&(+q$plAG7llO_`6Fü$x!+fGEu<0Wa ۭ@VYcogI(k=aKQJ>𲪫Si RvI{gTF'bjK ۭD^8%¿0 %aZ0;\CX0}6ÓY򽦽O9 |&iJIJlZ( tW wCkJW#%|f@}n+%A%-cY+ fMAf2R!cޅ$dsLbYfltW:v'C8"_ {L%BN1U#!]3z+)q`ҫQJdÞ]xx!'1%jfh 'j W 3fkzV f$yrq0cJ[/m<猸zq«wlz}sٍf/;*߶s7Y^dO +'Q؊Ra?'ܵL[B 0<1,LcY1D_ll<#n:76S;챱tQ}IU KF|) cRxyuFa `:ňйTty̏~k)G%{2ƒ~RzF@pkL(ח4͈#FF6]@G(ܘISTZSY5WݸɊcOu030]l򑿌 00@BZy4댖ko-(nUђN+uU¤0^e14=մTKQ}8{C*ٳ[Slfiܽܦ|:/6;_bGFVATONv10uCS}<#zTP{-res@k kGCc "%z^(7Kq-s'@(HWo؅O^*ʃX;@q W5z!P,%2v⸥}J?}(0$ߟ?__! L( Ff)"3wIp-[K9Q̯YlGp+G5':6u'!<=fl3وI,`'iP9,¥ 9މwQ:fRSƫ1l+Syak|SfuC<`d6mVڳO5cժ#y_rn[`\pg乁t#oF4-f5jsh ١ }T<,vJҥ~  &+NcG?OC[{(wy$ ^Bwj+?I0Wp'8 hVW^a1PTPCA99՘u.NYaZ"W m|E{kڮ|?.o;0_tɧ̟sKRB9~et[\3<[є;cZ@Ԧ}G^#[u`iY,NEJ;>0537Ң'muFϬր0ݴI:sW{Fn7 ۯ0\y%0oV`?yxĹ=&7?IQN`SIpmQiGFr  {|ǥD-Tp 0A:Ŝɕ|b}2\;\#{vG,Xr,$U~E; ]yKmUrVI+#Bk}tD*~;N ur_> *Of%RmYd %aN"|SSƿ'RFoT-4yL _@ez,Le`K(4]MėtE=lMW#ʐV(GulS{`J^3 _BzsBe[êWn0u y>ϸ*-ULD~X Ԛ&JތD1lsVf4 Hde1!E2s-Qe,{>eu<]NXg33#Eg*.QίvXEВDFz@nPu0ZO"L,D"S4 Fth1$ fcwkbGp@!\2GJ#)s2ЮT%/ft )7`8xyîR:>=A A BN@ժg#8W|uO5>.K6OW6\ZڪFn: o w8旬6VKV)U4»62b%hdX>Vm"Vi}` !^|oME< 2,S&_IYJ.ꐈ g1\tGj N~0af%K>ϵ7iNME0s>W q๢5!,c0휲G/SZ4j#+cʆQW83n0lW7h>d B#_CߧI,w;&ϒG]%]fT->%. ؛sѵ#-8rw#rSj L}&V6sedio%B\jiԠZod'@q/>|A4[G/KInֲQ'b>E*yX˅0a؂T |GzR/[yG:H"+_c ߢs~f3_ U_6Dck[v󭮝5~' c@nTE_ZZsYAVmD׉?? 6FGE.<jY A@U,S#d-{a4 [)o;fOW,>ݮ ߼3@襑VrN1}(2Kz, 㮅tj Q ЛW\qLsUScƦv/:@ >[GG.e܃Vit"Υ@z?h.U.@W/ s-$3s-הؗB6fN2^k!8="CCocpާ,4B}-G#p(ݚ[[ȄfWTGeħB4ݢ`TqHxGfV Ž1 NWbn̕F)<¼P-B{~.EuT.4(QWb;Z9h#d 朴5 8c"H$vlQsTn%A'9 0't/,քx\C(YX:? ^U~@!{sʥPqրfp%B" \ zS\J-a?ӳ~eRGզۺ5ne}A[Ge.q*ûu̪6,o+؛T4X5Cu8E΋֯zz/V!uK^%{F+2N˙K0aC1+m?GbX.۽;l˟+fx=Jދ:7DW2`1wNŕlWd.(tpl*sʦdS_Nt]P;4,}#EM^Q[a?q|hl;jPzi j̺l@iQ)Fr|$uԲ A4ZlqC bȺ6Dϻc#zNgeU="Gn3.HRd'9缄YxWw اve5,ȣx_T,<~XtN䙢鶈\3A;TNH9#\Ӽ?8Ǥ>ɲ={8?փS 58ԟЂ{\|rU+T#0Pۍa򱸋i[0R`^5E̜2@o-ֺ-iaXtH`8~3Jvw_v -ASYx&4eԙ9_t=9h1wBD>72GphYu_JDJ EeMha`{QƍЯP6ᢡ(F* '!\MKlP{ި[&g~4|bq{4uiOh U}H\:~ 7z[߇=\VaX#;Ƥv*fܡ2XOJY,l~JJ` Wi7,`QYΟ%ҍZ8;5%{wDʂlu45+WJ VNd3 V0 ʵԈs&)&'t,7u&YDSjzHqUY9&pO,jp-3/jFq96#o؜< -scc+:(akr\MWI-+GK ZU 8U+$;jI Wd}^ҋDvQa%9XEo-K\ /;UPTU&5:5#F\`dRWooOQ`\p]Ocn{ًX{_I@?L`QUo%|Jh8"nVWD! Hоo+8!{ie#PxPkm27%%$%(ArdJfӷ,mn1^ݪߓkVtM33 lgCT?8ptv%&v)$8 4؎8j"+C;58W|+(d>V4RGHh1$ʋxao6!+J5=72Dfp#/"*'oI;/z7Wj,Bo4V\_n̑ʡrtXK0)_|rq7΂ޫG ~9g5EJåi5@y$eӒIPb~ËLrPF']}jR^Mك1Ŧy '|QK_2*N$4hq8[et hMODTHHv"t}l'?[wЩW[ V(3q U=^2A:G2"tD) u gXp.F{A^bJF9zxTxv^ɽ|@mR L2 =R%؜ r_ya];wK#ZoZIV=n n约Z`8EuKNe~3Erh.[( QH  !LVܲIhesf݈eV\FOPGs=Qv!<''e㚣K@K!-\\UUʞ\EӔ# .dN3y?gT,k\8C$4t\Bω)/(fq@Cن3` aM\"@wɦz[WA<9fH#U - +AQ p'FAx-ѧpiQQU zS1.Dm`TL"%;q3LcE3 5K}ݕ]"Lڹg Xxd4 R"s+ѓ퉭5L%ONs =@jؑfǒؗv azc?⇯Z3Os/7; ϣy+Z4Q8aqIZF1RG+)T%ܶ@t,7 Ae,f`%O\,Ji5|",٢4(…+^(޹z%g[f_ i1gG1mß.6.ĢrBCI-#㧟k+XeGR:l[=EoCAY+>ttjDej(t1տjQO*f!T*|7Gob1I*J!tC?\Gi˗m37% 4ǭJUp"-9!ӗ$[e/ԭ? -rgכӵRpzs'+ٴ?E9"1}iˮ' ,l_%}ݢ"QRi(bVeӺ:"ԠoVkؓLOnb Tj={Ħ&<+zJ(^ZtTa*Q%YS}Xd v+EeVrh7%=REs)70N¶8X)St69l0]Rr|'^]pE6]1X9ޭ\U^'lTQoob*cCݒo1PDX(h'Wr\X~9 e~? qfXKmő:+o i|h^pWY ,BA@xGcAdpE&9s޵Ӫ% +b4FEM %Uf)H=.[ȫz|ޚx1 J>(L=J$N!~zYMZJ4 = ez;*#i-6xsnY3uJNЌ Buf&{PI~79nB=.6Imb6 NW`r /uqkJQ]k^ ;Sb"TְŁzGbvxA-ppԬ0}E˩7 0{8(ybZZ27 q3뼱7 U2ÁVJцxDpQa sp0d4Ѳu|tJ\jk]7s66?@f!03J^A'tT*%@$ǩܡ⅌<\ٟ3pn_vA7\ĕ сYrwE*4bD /sJL7-%]T QЄ3uavHJ zZߘv:9HG:ڮwwY/|Ge mGt(b{ fT" q .8Yy2_y܎*eҒ [TA[ͦw^QY8ufdP"8[A ̏> a!s\S6@>Qn0@nvlWu$էwGU;#BG1~E?##zpobRo5[ut>1z_A[M2LM&dLC|pcVI yn\w.N3f7bM{ m~(VTIS"g(q10f?;<"J$}Zmt1ylY}о&/ZŶ@dcG~Fцh{t|:yQU\=&gYw^qtśEB_fV0j;k3gkֽNx% qc CgGښ=Yc̬[4Qxr=K1"\ H:5XOCT\Ld"}`nK7SuWIv"iĽk0J_PY!sK E1.]^A}\iUz>0c8W ip@֮m4zPNsQ<+^{ _i+je($u!T<鈎}P)cV:E1?yMmrV4=uː\}L[Tos<5*Ҹ配ۉ ]^\LI2|vg6P{II}}.7ŲTHXOek3E42@ƙ#La QE$4AMA΄aҗӊNE(VF`uQHR%)_hqJ@4̉ѐe5 Ƌ8E-Ml[ΦiFD{EN}60y-ɈfP1= 㛵 䉤5vߘ )iieqaoj\BZѧ\Wh`UáG/"F?hȲ(ȶYQb=Ĥy߽)#"07!Y)((4ܱHJ!أƧVFY)BA ƑH- ni|,n"̦EZ4wX vQ_vkQCot=j)I[:!֥M:kgfRnm3U^|)Lx2\ޮ΃)z=8(Q>hۍI}d\FZg zEm=r-\`{7 WveSu.ݖ>/=nzd2KW3EC8(=RX5dhy,@ 0"uXpۍImO(iړ/k nj1E/lUe!+$2UWqqGS~w;պ1$83hL+=b4Pse-KWm)p-!s^̍8)o)ҢՊOy9_ KP768w3&0\*<,: uAGq T}R1Ro.JS@Dud@a1xWRm _4{O Q*f!'_E)8d"`~1~\7 tsǿ?ٖEEϔ$0$JرBc `LX8 y$NPô'q>(~S' x[A 齙%EtZ~mO= vte,2GK\e%"{o}JҜ?KGO]HsHlrGt$D9k3v }}=u@Fy|b߯VRq1DЩ*KdO<õg3Ù CVIL`W!/XfoW'/zA[T/} s]S:N_sb1\2=DrXoz"y]aBnw+ s/_m*ilmoM1 Ʃf(tmj8|KuP1So% vOJNy3Z"0!H"/أV44uzlؑXQ(2IҘ48LA$-@1_bJ{D-ø#X*>zq=mYNmi(; _xlдtT?I.5o^{-_ =~6C[[i.VMT * 0ݟFO䱗9/IƦ:׊'8¡$tF3ze@ĠjZUL1Wi'1޲''bX܄x<<|Lػ]o>)5}y@2i?GPd|0#bX.N P`%v';"1@ei^\tG"|%%^@}9lC;] ~2w,G]1]鞂',eB8cžwͪYS: DˍA1 =ZcH jZkޑ2^p>iWLNTGQ!x iq1h)\P'XA@.5 Ix9yV=k4kެAe'ŠOݷ@Bsm%h.ȅCSz 5,/Vq).8nk+.2-;x:yfsZ7;yy׷j=k rITu=ƨޏZ(eZE8}#YAQe{kZG{ ؑH>c)N9>N4*XH-%5/xL|s48]}UưLw3ޣydUi?xm4L6OA-vxk~ O̘;~0t< f 㤮*3}xm_P+D]zSEX /#?3ZV@ײ5 fbrk~Em$|I )v2:4p"|[-5y83:'ųC}z"O/͈<\zwRn@I]NF&鯵xߝSZ4Ӡ[{.SX T_ƊعMd%"aur%QFiFho/ J@" ʏ;z<vm;'cDD9Ty hQL[<(_3@qR@sC64t JC`")J0'9n*q۷.n-v4tjM’qƁhqmЫ`یtsm ':bc"'7ctׁؔ)}*&m~O-#vSc1{y3;SZB R1WEoa}^^W/82;?&rec2 cUAf뤿} ۵Ϥml :\lO׬ وjܤ/rao&%Lfl)וLx!W +רBFuyPU/fp덧lXBr1ο0āyɬT^t>p⣟Jź_O*܇̓/d:B6ߣv<`ijvd^[>R&^Xa3·֙)PCʼn-sNv&.Dsj%rG+NyB@Oރ._nyJ*y+=%lv!v[KMq}d%aK'7=njg9QjKF\W$;A18 qwh'FYj`q \fUsB7 |"#RI=ݑE2|:>RD-n_Z?izF`ѐT}qt0jП%J;Vfd/cn978qO]ZP!Ĩ8kpQM|8]2q'r|6N=Oa\ӭ"j~^T۩.f'2D }4֋>̮˿.zڮB7ZyːZ\B,܄E5IիTiәzU ky`0XOu0GjH3)6gW"JOJ(yS cE)R( &;779w(ys7wo\Z>ղRuYIkQL[\QgRW'T Uz>'_@TLȍF*J)0?B;3l5}stRA3q 0ړ~{Bى 'ϭ-5./)؅f3gI~j~аi \+HKMt5u]u@AdFB㼹iH~ܽ.r 'H)C+bDV ?e{P2UR2{2S؉ÕoUy.ʃfV˿[Ajҭ21=5 t{!e> ؎ 'OE`IɨE%ۗ 4h9<Qܶ I6;EW"UNo31m\a&/ i*}'3)M={^qS933ѩ1M3NQhqp{Ak]7p;#࠷![7( etfp%T4'jFHZ 8P7N:|:lCmvWƚ5u9ht;d)F]|1HfJ5n|^rmLR-J@ڄjc$5EZ^o5LZ4Dbv6-JP?ErsY41 \ d"YR./a˶lӽ0_UP?2&lO k=-píOZUkX}/e}gњyx9jmۨu)rzfUMDxP, Yi.7Aavd쳸"F:EuRFꟊ(,yXh "np/JaOĊAj,;`q9DE8&J sp)OAa{ 5k诙jJԜ_v `-# O [ZA|b7$Ec6nosWWd6HhS8dDJhl{bEҀ?"n{k+yE DD^^UDNė2(U yuk*Fq]؆~hRp~r).ġG:3Zg23zb3c0Iԯdt#~_l,$(-/+bCp5ls:%Rݑ-䗕V:7߮<)F4T)S1$.i nweJp-T}l$f?L9MQʖo;8GےN%qb>UC 'GbmH1w`- GSrqJ.9Z aw,;jE0^72pvc/嬈y6Iah&;B7΄r>%3c<,CTMW"QT}TWN7GuNx1C# M@/CpʌYHWjT{#AqYDfQNrT`l>!R:^EW jqGcj1#a_$DB99jBb=/X'D+8\ ljZx B{iE}vbś%Hji#>…!=*?į4tů) d@ޭ}'!].9OeA*1Ī#!EovW j݇S#f4(B_Q N)v6|S0k4D[CParV_nfmoER)wk >+, XG޽q!GbHcedM[/mȏ; DI Z/;M@b44`״V"®8ˠdix{v7t0S7yW^.?Ks}Ѵ"y!^* `mG0pTsXoyj[(E~"~-j+ w#;e<,WWe :=P*z @S7Sqy,03%y-/h?kܤ0x3Z>CiE5:!ZKJL[z$ ;ɡ/(X e sI!f 4~<<jy+ ̂ b<]8SSGQ;nL#p) $oL ,4sIV^ ΗhsִK+N'RZjɂHkFQ(u)LH5󪶨WgOn̳ F!b}q;nk"F/ %a|`NòQȝ7xeƌ>j54.+0{ۍ`c/M:(_%EqAΔ.Âh{ 뾃yn: @/?>/@0Od{plgDԠ)L ճJJIo% %*WsQQfMvK0Hn!hC ОHX uG972]yIc|ͯi۫r4ZK)Y?"= ?vu:CskVwJ+J4RUџO` ypv_2f~㟵kA ^4NӘORrf+ %Žb YGр<$LpX̑͢\+iFqyGd/^bW"m2* \a$Hi_c0BRNl@ I h2}7N 4)ioeU Gt:/!?hB:T cQ3}o?fdIn!BvɲB[A_yYK7 {~Z_3qUb- ~hu#[e}Pku(x% =oTߎƶ6Ud\w0\.bYqߟ~1C?%R#H,Ѥ55T3dԪDv YЕ1h0~fyhwrvmda_I72 XUtz;vTF Ϫ)#ٗ`醲R88_KDt>/ eO\ۓs}j}kzeV_#e 4~/Dj}sR^O+oW&o.`BiC~nAt_cGIv8E1r4+_H[w)ǐ(eհr-y3Rf- /4歅 @-M>]7(uDv0 5">afk3PH#+(E!k1ީx)2= ҟv-5dvKsX#tq=pNSqV+X.J͔Et-Un7RfM"h:?PWQ[N"A X{64&pPyNeۥvmoOAurU&&"Fsg^nTZTxHMж{xJEOƵT׵C,#ȥ~W =` q1E"3 2޽o _ZFgؔbr6X ٭"Fi}u;ZOةXAAOQme=ǖV#M)ǜ1EWuWYL۰@XY3/A ")pBnXCUChuwXlzsnWG<XhpSUVWȠӞpF2SkH;$`DM? N]3=} iRS" _xP4 C+\lt`P06J>؂/\PsV37gTXxHQ>;3^4[}GWѲA]-$}>uy0!;d}h ֵ "~RC9{N閜ufv /T.& )] 6άO&"@:i]ѹW "uDdFKEu]FJȫ͹.cUC g C(4 L;LH,Q2aX䴈(h1 dia5}WHCv\^Mf02{hW˃*~r8P \Q>FΘʾQgG@7 2mٶ/%`hxRTUCk&2N 9)[2OSU>aŏ BR@|Ÿ{%ZoҁK< PP"sXO}.~3UjT'rzC?x3 /9&y-# X}swg̴M1Sig2f;M$10DY@8c^G8K[-A J,\|fZ^y?ڃ,7}hyT% Px\$t oU#*l-O,ͅn,x j 3E1՞Aal/N`3MVçE"y /*uneK/ͣtk"o!j-`]17 hɌiI <ں/"zShȤv 0$7'Q22~k۲dq0[I dsf<cI_@B+ ڄD"4k!g؍#5\J7wENCbBWӂ$`!) Cb>)"ɚya ~Z3/]yfZOs%qg1MkwP.1?]]Q0!!({|Uo&qtK~^CY1[ω^;e_gNJ-cQQl 4iL*Υ SùU)yx-o0mK*b8E{4 xl_e ufy:/^Ѳ?N!@\8>࡮Bݝ}8]t\ɠt*iwp`:N%5~bjt4fC3 =ȃ A}]`FIݝ)6i8 L0?ӝ3ό#BTxP%O^}Q-0+Hɦ8>8P"/X+7 nR(/*F\P9o^9&DA*uDT"lXKu:6Z<[șv;UOn~2ÂzE?]Q.Yu~$\6\5 SA$ʗpXEfdqmZT4_zAhnfaRԗO/vXXʀ{A}]{2(#rCDC.^n#S>:jl$[BftG>rn!& WdXur]F";dr뢚4UlTɘU@a[Lg*EEັU !RAs{Uc NTbvO*Tvv> OȠ7Ysw|BF+lf؂q>x/ fW?DcO0Gw`@R |[<8?SMS1c%s%pzIP 0J>^iƸ' "{Ec #{6Bx΢T -A0(d)E$ZQ25oPB@zPY1Ѷɞb]gĢH5?vs(W?iDtO'T<Û;SAu{]梙*5‡B:oqW h%.cQBO}>V-ҾDC$|Xa} YE/;KWߎis]%Tb,p?z|q&ӠǨ^! U2#fK_!]2_ cE~aCNGxZ}H?D sϣ es`6O4`1BsϦO@@Ўerppg VG`.ѧ*wq 2ρ>c|Yg{s<n婌ڌ?l!3VH@M:v5UriI|^0L}ı; &}4R7*]9'ա0 ˽!mg8lfއ&R?Zҝ4-V|m}fP#4NU$ V6zظW.!(lSXcea';A3pFFз 2:$JQ>ǒ 0un }RڬgK)Ix*n]sNlX:`T mN)(|l㜹k!ko݈NFr(c[Q|Rо40Ӷ/d`q>D, @X(HZ">Hu wp6K}0 =Pvهos}=?Wͥ!{, 'ϵ6i& xt5}PøQ$?x@JӉ}F zp؆ީ"W4HBac9<-8c{\p+j+A|OGVAb E}A8Yљv2Ed'^g"7٩O.{2 ԧHEh.V'9p=~6e7lKQ)eV;c(ar1} Ą^ї2>t4ƖEj2P|eJq8<XЃ"Ă}O4dpsܤFDoNktb 48B>TuYwu_&,J0oIF~k%CYJHj%Yݟ1w[R~KF_48F&ӧr6uq]>B~bc7ѧ#(yMv-X']s߼./j\Z] ԙi.7]%^?V0[ wy#3P4,0ٱM!b"L,: 5.v=WI)w(kLCxzt?'w_ӆ%3XoC9z#WjXKݬ{]h 56LzfrM**QVmzk ~{Mzի7fr4+ 8sQM,/9vap Ty<nҮLصt@1uàQRS}XԼ*5x &m2Wn$ 7߻a}s`?M$wCKJ͘3z1xJ`noT>4w % E--A-vD#?&cVtcD\z2hb[,6׊mڮG h@V,xH.yAŵțVƶg >:tNpVZţAtji(m"&3'\:tkqwAt(ǻ>ϓw7&._}iCr]7BFcecP5Nb,uI^]ԅ@qv8֒X~4!S"1G0w0up݅b5P%gX 5*^ F.Fg&~-yiBɗ8~tBѧN䀐U zuXhHq~I)A~3[bEߚwYר?WopD-TzH?vc HjT1mMkjѵ:\x:~TިƇ"sn/˷#&oO_mok֓kdF_1pwFyوҢ 1! "_m- l)fym@,a-t+/E[]A"_2U uR4Ļ[as;gT?ݫs (vn'\ކ'CبR?b5l'4 XOX#ѽDEQ~]42ϝ~DiP[~[\|4r%_y}- BZЮ,pjl=G1n-م0`2 $}B*s%V%?fH[' }'UCwPoD @;bD ~^3V2mrSw0]w,u}#~^y7=I']?_*ź—z Nqe96lٕʃZqtLm:@+X]%_Qah)y-QQ$Ri)JxrhWӚF`mɪEC&N"Q2;biq 7}Cf\{lPhe#&Vƚb?YcR\M9ZfMT p&4"fN0SAY !݉-pp, {-W}u 1I!*cW X9z $U& ȬXDeQҥ4.=[[ddLnKObkpCzK4_'Wn۝\s͎A/9HD[SH+n'A g[o5cq]֏oݭ4Oo?&#-a;yQ ^O>` AϙU :a云&Oe2iKS|o{bݸf›AE4ʵcQl(\ݺF%#AO$ ndcA2aAP2ShZQNgĬl$4+J n n"r5ocU d{lP>J؈uMpo[%2أg]uQRE`g±.y94BdΉmhQ|ӻzH QyN?ԟv>; Џ0G_ KoyT[s M,uK沮9` K'ʆlJVo1eaī1w+H! ̗9%)msoKkYLL'PGהn aT.1P$[t~q+Wk;ϲ@]R;!aW)r*dCR,f&/0vaVܽ_*ur.}cn=lr TUe_0ّvJA{F3fG(݌>Lټ44Ɖ!) yӣYwa$%ratw5$ %8$괃b\~*MtCԘ=FaoyW?E&v/)2nιC \uMKrvf+L'2inb5BZ&5z7(?sKnzj!&Б[ I*4>ȡ@.j"?՟{1AgMTV`U7#nkV䝘j*9P0eT~'mICYyQS/Q=@+v/{3ݏBjm5a)f@񡦹 @} b[{?k|nv |NE4|-U O/Qǘc]tdhGů IKxO9~"Ƌw f3~H' Nn"pm2ʾ0Hc9z'2CsdC: l̊ʼn"nyt˷DZLS{oَ6~Z Gp@{/:Jad&ZRf{xtiP[QUPh:7.DϑxW1Gks}wp6.Vx]ZnaOE>_{`З1wϐ0mUj6f9_)e2fO紦ݞ 4ˑ)#7;ʰ\oOE%H{0U\X4_ M{|F(WζavqIyȥ !!h;ܫ^|nyҋHXjr p_7:> ˮ.}]<)L hҳz7"$Nz躥q/h萆- >oS5>kΠܝT,߄qgZj3 _E%)s^xI;都ϗ3aj"X.'JHNV"Y1`|e]$aD𹓡kd#="&"%Oy偵 j3#9؏[WfD@WOnY6mtPLXk]Z=q4d@P1en( 3+B)vTuƛͨ \6RU8u| =3+9yRx DswM̝[ $O'1,FcC`(H6{U_r};yv-x)V@(PԩUqsMM8.`32ԂYLxZ3ɽzsݓR*ozާF']>^)2--ū.f={9O5%(lRF͋8vMRL!7VCu.C"CIL L$Gxi,_ _y0,Cf~&ͧI$JsQ^" lxre4e6X6)HTwAjb#Pݽ.+t"2: jk>*Ry H tnYJ+E(Y.HƒQuM`0V)maqý͈P0630? U{r! )G; ~`5 xEetji034∊FM&KrH̪n c"8YNdIUh-C"fBm1iipovPS3㳫(ch AY7L^BX0B\fGLe,Ka%\D/;gxKD?p:[C򬘪zyYdIOd&/p2_9 _C C_׿^Yc@QKo*5*twc\l^yܯ!./bRWUY0U =,{J00Qg!؇*ֳ|*|@&a@DYp{p#fP]Цc: Mf]=&5eC;͝$FA]5"R4 :?M!MX%O6 {ʮAlM@oFV\vȊ/i7O,W)KZkۍАjoM Uɖ3~hYS+=悛H\dѵWW"(%?jT)xB"Kb sT% SX˗bU R :d hC2E \dNԗ CG;pF"/a4S5XwJ(7q4E"եc+o >CVM0I0_+3KߧA@| H=< +K6]}4aSWJERGrK弤dCk欴HY??VMՖT,\|o"ָ]G~o2Q_FŧE* V-QxgTmX8z8cvEGlj n Ynjd?Y4 eha3b/H%Ma5:nQ S.|OщX\m ' eS:5 ͯ9IRRX迀{FAJL:Јs|]K e6'"dw /^OMb`-42Cy%"&}9~$b3F¶:Ŵ)NɘP K50׫,KW թK}H8 -*:0}=C¢^0fE7jp@d-@eBٕot7 YUM7yDE@WK* keU3ߘ[5=qy]8B] h# ,GPVwek0.4T!"sՏro/;@Y7_* A'b2Q-#5/vOn;1.&*V%E׊yJ?`◮#Mêuͫf@!4SF黾C'o[[;`0/M=F_E'HiKH"j)PrUx=BAqR}C)ܒ6vRqTB|2 ^5!&#;Dq`!mx]=2g6NTᑴƀj5bVDqC*oG(,:_7xnjpk9aY1Y.M29kǻ"s<$~#`͒G K{ ;q2 !F%[ca\esaALKi`d$Akx#5MJrXw*t!1R!ΐD8b~|*Y|RaY-o0v b|.43[RQgf1:t|fGbԙŊj&@\!<@Q>:|ϧ˵u ouPτ[Y6qU^L=lfDPC+G)V_1R,{OFLHH9Ŀ(pp8tXDʴ!Xv҈ڧt&tZs>+{h*4HxslDnޝ$ Q)q;\3yT8 N 簙s-"DSZX*^r=;JY$+ej*s22ZJ@[T up LMfa,r}N <4x/{-t'$kSLM*ψTV6>.ۉ nl @:tiv4I}r.P~ܓk+-qR!'lY?n:Q .jsAXJB˓xuhhᬋjqT +ҲHI%y{=ӌgk5`qj;b1 C\͂keU4\b=(bˆbk;(? v~!M U熇(Ua :˶[`S󢫹dgKg9)8AA wP 8tU v%Ώ&sӁ1>+ @LBYo׻!lyid @NQ !GHL繠Pw Bdw>՞`&RLTܣk0 | 13$MhcT酏aްJ9{(S^a@Lz 1ه ̶N6ur\!Ww -x6;/^#j6t9Pgx=YO0a*e֫UHȞx )3n\ks|JXB+v49ٲC% >e.%^VW/j2&VYjq&mJ0'#!ј[nLvep̤y8vf:L4\QkoV0O D.hK^&w.h4ېӚIӿ5H0NeuIDLuO^bvOѸwc5&^-tfNF$$ "僆kTu]мalytͧQkQU(Ѯz̚ewUHQ#|Xܢ:1.yM" #f|ŤZ5F\H|ZEN8R<XBIZ(:`Z3v;ڼ?o1Jb ~.d-*wnny[^'i K'4OW򆗣7a)&mn;gGn L([he85ʶ'^ykuTA"&@0 ݓψv =x[וh `33S:6.m HC%]+pUyE!Uޑ)΀8PqN:<jA4c"vTB{/1,&| KYiIf.yfkmEk٫4 t >kԤ뢞Nc5  d-cAZSVjhEI34ynx<Ɉ8g>>sT8aJttGN5kmG;Rgu%wN+5: 8ihb/64;R֯<ZKK]4@Yw>'0}$!j$%Ob?nNId2LO˨,%ѫJF@[VḘOΦOSV`Vھ9^F`^e|dQY3 ]7$rc9>w,q޴+1[ETр!<]ًDU+./yT M:FfީCwD.tvl&fm\cISv7 C>>iP@;߯~?ERw礿WH>8XbLCh%)O˃9N/IY/H$D7HO75VpP&[!B MP_ h&[f?z.^iG{jvK-z.jvzWt:Wvcv/ݣal\03:6GXD-8"RJ;cANSX;Rua t[`ꘉ噠p%792Qw V\_\`L/"'FKP㲻w&@`vERQm"ZZq*ɸ}pv'_p_ ֹĽ ]r0H-.Mܷr V3<n0b$qkfO/@w=#ȓԠG!ޥ^I(0rAxqs۾⫓G4&tUEձ3RUu}:2'ʒy)Zu5=`N:j-oP~BN<#ITF>`"*Lcfߌjjd Br#j~OM.W>RYIEY@"20s?'k52+Bؘ;> iY/wr1%) BK@N>^!"!{5z#\tK?%|lXyMztdֻ36n޿>#_@'ݬb@.13Iꌝ6ę?c[)hn_8'q = K|G~qwG,+>ϠAۻX2|ZB/&d&@@GX>ߝQ &UEXhX'QP- G nMF^%̕('RT'x`9 8rI6agL8;#hǵ2ԣY%x` 0+}>ye$6&zdDyu7[v]cDS9#G.tmPD?>N|?(>& b[v# }$rO#7!GerB,P[=~`z\H}oP waTNgMY*`ZZi^̀; 8g aPVPϱ<8.׹-=ѪqZ7/yKIu($׎#mf`+UQ4tv-#'M˜8>Tſ( wxOngB5R]xm%/ثЫcdL@MC-i]v` ϗŸp[1ZxsjJ5蜒E ~MG$0̸kZzS96͐ɬƂdծDOt?$, ;z0PΧ#1={TZXҷp񷃜H\H/mQ2p xϠ%c> ;c)r72642_<9>7QZK Nh/%A`rwNqX\VC{M Uz)0 p`6& 86dFs- sEշ_f~BS8S~3? Jm4%r8N4N0F/吏'm؝2O$I ZJp(sMLɎCsDD66J8H8ojRُkrHjTWGϛp}{_AyQk l9Qvtˣw6b<w`k@oS'oPn~X|_DՐsX%S]tL;dRM*vf VGo^jc!׍.>rrT3km/ҦltJhԿPj;CC"mqy`5|pXMPp1KҘmJIOA>}{q= @mXO?<[0pL -2yJۮn>C < -L]L1;Vf^ORh%!o'"$-AG sw)Ӫ7Ǎ=L3 qlliK/;=_otyk~ 344 RdCK${o1tLDz=o.lZV)QXpͱLYM tVW}ߦDBnnM.F&>pB:~ӟzz0;y)|AYypϩm;4op \s-hqt% vBafzǻ⫋gGg?1}N)Sޔ/rYՐ3D9H܃0TBJ^,g[j-CQR5a9Kic m?ƦvN$HRP|]3H5U%RųaxП6^$MDN5UlXkV㈂PX.:! BJL3_ ']F?BYX1["cD6nw :a<*g? I-,%Y4%&}9 AF>\ 8S^€xJQ:hO(J/iT{ {$D=Ý)VMKX/l{ߪ)@3?0bc ޭ4 )jiLf&;P LLifUyhr,oCS1U'6s]0IߜA<ӯ}2UchH0=ytϝ͜NnnkVy߼prx*aol;"&}x&RO`Vg(.ai4Nt0縌N>rCUY*n ˽V@2uخ5Yߘ`Hx޵Aۺrwg>RQPdXxӯj~*@ ' ({9*zQQ(E& rR܌X,h7!6W䆳KbUS:w&- > }AO3,=HsIʢ*CZ.CkVWC~Gw.vlF+.AS@D ] 4jrQT3SU!ZD!~( -naJJfr04eXwTADmDyeeH~kK+2'}`RR!SeЊDNbs1t+M  ȇ8.^ blyFe⭆iJ9ٙo*; 4vI6lP}1uBJ1ceb{ Z%܀s՞:ENjgvhXM\FƟKo4\$Xl$B 5r 1Mu{`V`nSN[[ĘӒ^^+O&mF2̅}ZQ~MU} D&IRo:gmb_ǙA? `ylEhN>)؛O\ R$ |rH%'D43=ԊaK{7Z9"׈m|d_]S[U?L>ѣRYA+0&LV#n&HWOmo^/NĕkTy9r9T᭕XuA4ZXy_Rm5doSg;Gmw~?]ol}̊%nG]GlA#'}J*tviMyɴ;_3[6B1/g;b] ?Ά&eaJ*92}Y8 ?ܬ1lZ|bdzi8Ghrf@G,l`3¥K,oO(n } OН0E?7Vٯ4~0V`i@cL2N@Lây'Zb}.%S\,YὛaj :[էzv!ySnEF9w7'3SV9;h{] _'PJJ;AAe*!-h'aVP 8XBLvHͤ>"o)~2GeoZLˤo` j2\fV{v4 - 蛉zڅ{<)3dXg"g"(4FbvT?L&2@8 0cv+h?Z|mVF>ǧE~QBdظdH[iJVaunST=DBcܒޔyXz.ݶאNvʽ! wb`ir)R2w1 ""uMc($ ԫҾ_0'@Dz{4Zg@CFRY$2+X ӬԞ9';o8rF2/\(LƊ=u ZC198•DŽW˼Y?{ TɡmHl01P#SH^PD_|qMiw"~ʵ:0, ,Q*і姾3T7`1v{e)֩ؤ@LKV*F,2 x]9cK!NZf-8[1JP(-\)!8 iܿs4? cy먋s!qd۪;5OA8g-E)H]9N-a %5IQ18m)yE[}s ʽ .~ytQؐkxeA ԉoxIgtAz_H/4?JꜪż& 1V6%7MfrȪ &ӄLۀH,OzT1VR <2`#H0fرv.[5f)GA͊"&Wd{ W)x"Dk AT쑦;B\؄NA 'w_m[H]]ntO;gvlq|mnACKatU8K$,*s^9O܄~ E(J%ˎ6vZ_\Bbw)r0eƔ|pZ?bh($.pԄb)w -DD2t (#& ՙS3Bp[ `>]_@]1,8 ς(.ڠ˦íili cNRSJ7(Xe&݌#M8 NRBM[YaR;|PꌨI:pX=|6oxpv+Ta˸\Dcxf_vTWZ\-8s66=|<,sآSM:Fhԥڒ@VwNC,`ϒ89fRԗRMgmbE.CcGXo4ɥRg6Йeg I=8ErWz/:i۩ lW^U'_J']-4NP28p2{\*f֙auz-Rz zXS<>%A%:rn 1dt;˛1m6s:[mKR)T7:t*gbzE2l3G4alYMA,X( EAޔ/X6 J N#8S2Vq28^ʹF>Yt-<TĕnAk7c[}cI|Gqj{Z:et0m mURq3*zҪLw'yVΛ\7 Wj靉6X{Tgs"G/Ёgҹ u.|U\s,[5q׾jB:M E˸") 4tqK="¾ܡ`*bs&J7xliضz"IRwpᱞe B)<9hn4㢹6ڞ+ *Vw{Od v%ȴ,}\[OLƽW/& pK'N"m^{U T.#DK(;2Yа j'.dFuU}~Dɏ~e+C\A/`mA7~M?dI qPZW_X!G/6NT"g)Jyl.G ׫hiubhx 6qHklX~ߖ Z&t7@ΠjP+8漺ɭ* %a!BLj"+>7NOxs b5x$MEmkZp<(b4AN @y8۠EC2D[>gv:w4ޑUl|uܶ#NiTOq0@ vF-LTºyu]6d=xL@dQ,2_ "">%GpR{3Oc[I"K&K^2"A&H7]c!V:pp&nD l0-s}άҖI d .r*$YټNFZFȚRT;琟6 $[vpK33J@_J4W/$:l6t,ӦH Z[xnƊ|1(GA+m5]'w)pO~jj.w6xwP !OE03a7~ #T̬Õ^s1о-q!e?83rs/PW h,hv.o9ceUˆp$k׊)x}O֞[]*UrۂѓiS8>ˁ֘daAͲirD׎4s LQU(ܖ%"q;Wuk@C: =nA,oLևD!O4o?EIQ|NeY59Y𑬗A1h)-{X aW2F<=|%RilW}KTOݶ7ij Xz=4Ȏxlt$Rw& ,h3}/&IJ{ |ldks#ܦ*VzP-Dd]G2ݑ,ϔ#q O7} bE"'z:2c@t%N/m)Y$ٛ|^FCa 8̆4B6 ڹ:~Wک3;*uCc*)ȼOW "?VfCG7C؎YiN* '@T޸h{)+y9VIwc`p{f}x}=aR肞z&WQ7%(;@K~滘=NO pd28fq(a4Dp, ]zWR>;W_ն~w rks~u#xYN&qqr@70}F ݍ`>ʰ^0$sWf0Eٚ] $F.; !c$3A݉73vx_pQ(m#w&RJ ~iIé8Nf[&g"V̓YzΟ+),t?$<, ҋ-U@VfK0Vt\QŪKO94'b?F$(s8kp@H(JHW$y={3&UuԂީn]bN k@ ?}y3ECݱH1>+n$Ań~f%h|]Ħ>+ѓO4un` -~tG=id7gV&(o9# ;ׄ^( c6x>r!ޥԃ|4%?U+^.[o ՗=v0; Lz[(+E$c 3S3݅bx"=<{|W+a-!*K=[ 6b`M=xfhf ߭^MϾ ݟ(TM$kkvm 9큈Ԑ`CKr(]㋻%@gQFS7\ E X-]ijh3ٯ#XF b|0~Q !bWg;";ſ v=M&MvWKzAEгމZ@6F\Ō&g4J 0"%_d^E/o,%_?-J8Y7蹤2!*`v:=ac+Ęu_)5wT:mCa/5x8Ѹqn(@,2ONٞ @*™dXEU(ݡ8`f<Ƿ21\rdڕ{,37NlA"ȤZb9\G:,K*<7EZaSi87 #,%;\4gBDNѝmFƫ-:bŪʒ2 Ԫhrbv wWh!et&UMnA>WT屝 OX $6o0#ϣ!7'dUu [kB&zsE;BvBFgs)Ye'ip5m-{ kD>5/r~9h/Q["9DŴ}vdW%Ii饕WFO.>R-9t,7W_ME[3B 8m 큘Xn>>=ʵ0seesX(pjy&EæΆ+`VO 1aE :X v>|5'.EOC%o UB>Ӓ:sy9ޢM5ޑx[rp 9J,>PR;Er[uSPQvQmŒэo|ALB%:x V@xWSvI;ES体G`mnnpl RD+k}4 y}N!ŋ%^?j]G˱rCmgKvju'^'4oq[9&R7@ѾwLOO"Y<4sa&}p;o `  Z%ܢVWw/ÎQj96e /ϖ0biZXHa 8 1ExJ7ѭqtiıIt6D'>,'.Nbi&o(8_6W\oS;02n٫g!^7LKlw /,^#<vX\T)s1 {[Mu6VR\e33:f,O~%Lp@ipFMԫase*b~!I̅)Uqިu! ߢ_蕶$kPRQxcBכ aOBYKa*./(RECdfs]{SPtqNi [Xxu_8E4uA ݚEfM*~'̌,u9SM~;;C꩖.W9g`cr ϷL&d},=ѹs큙/ؓ9ui}5!fԔwG!b'wOHw9ƣZxYؕ{CC圂_Wg |{- 3 ~c"`vU B(]ȉC-ctyώ;?Bv41fq,a mAaamcRn5%fZu%.ӛ*iFޝ5ޔ1k+b##f(FCl'7܋*:#w.M*'BAxۚh)FYU% mLZ"3掬D3jL.PKk}X6\~4 <4'Z 4v^YUa9ǥ:^m2:qarOciOvVxt#Fpá1L[ ]:ĶȜ?]5^'6ij R+۾6\#+*V /r'_}ɡ)/wv;eCp(!q8}`⽲N DX{xeCB(vXN~hMԯ$5XVg&=) FA>5A@M~O<O6Huݡ*] E'әe _p8ā\ؗ/BcfBJ&Xiak|~)EZ '6(׼s]{&MT^1L/f=hS,~e"Є""vQ*^j Yy]Ԩ\Ɏ-3`[Zy"J4˘j{@> !nmZFu͒<4|pq&/pjcXΚ.T *|Ա?[ >8 o]5F H++ UEdV|~6B3C"^0 qk)y&հ?`3}>_},a8[gt:ԊV #WΕl=&kfȈYpJ SEP ՄM(5GVP.(c>`h9}tG`[`M,hi8Mx)1jdyy [نXa{?Vx'5ǀY\Ew/5Tu^tgǃRɱqfs ZWcc^Y0^!a.n ,lh A#>SARm쁘f0 \2;S)w2@K\#cs2 )oԫhS]oc ='{—,@13~6P0T0aʠb-3% ij_{wvMeF :Jc0=`'B:mi}R9O߻kPM"6*b^J,qQ`ˀASESM~qKK 5aI]^PƨA*䘑qX`^C,^3◐K6 Q0h_n">O_Ut =7ù>fOr0dxػ}y! PDT۱‚pV4y*&'K`2LrFm.P004ܓxi%{c`,vjjvY GbY!xr> !(S71[ æA&{SKmnx\ku6_On sLKBbK ߽ 6Pstf.;W@~\7Lh2!*x+Q"Zrǘl4 π*дyx $udȥa RZ*ш$Ʃ]mxMvkU_D,Kxa"wMy_+M7 0/%-]MZyJ]|ȣ&2*8$=HAH% #ȡ@ p$mzraLIv+ӡ֠8iie!X_m$*uԊ E mCfX˘-0q֡ɎbShH0gH֜5,z> z]B@Q6wZ+ ^^4v [:iɤ"XHt$wW n+wmbsҙ"c 9X1[M% ErTc&JH\.]EC-[T$5'gأbq9us'U ^0VTQ]cq@"vO%s>Oyu߉p\*\}zkrmTG@5ޗ_eF ݍ}T*:GxP1KDЄHn6 R<8ƽqS)vD@sfU|)A?cyP]\ D{Xis{j[Z8.T>lYk}aD= ) ebSul=2MhպK ;f^פ n·d~AC)?H$xٓn,7"rpIs塠ݥ@ZrP:8b ~8Uap}AiTq:3i9NydG?\F S(As`6gN?=¨&djSPx$;!I`>*ŔnP 8wO n{=X&TEc޼;aK܌Rx⹂^t'ɏxԶ_c;@"zt,GO_l8Hbx1*CJb=0w9m˓Elw?'& ͈_h4Mo^.F+fq) ӈp<:uqu I=4HH:~X0e 5sfm`j!3vH:tUٗ .IQqmLʩNp,R_KZTrXIaB0>pؙ3WltG{|8r9L~ό׆C7k(/6v8!o'$eh^zgCb4m ,_&⿗qуͮrU64M,p=\oMQ /#&t1LogTjD:\Un,Ow~̛(mTc\:upqչ0Q\o},e'Li$&l|x4.TtҊwƒթM$YCaMT^.R,YtYt#Xf n9i GTt[zt* @nnS)-|ՃvO"2i/n{@-X'0#[ !s9<ڱՇ;%R&\6-uzTu RJK:4/X_eAz Pep'@a՜Z2Kl \'ŤO,!O=M&?_rWI+L|Ͳ0.$S}7X&YsKphV^ZLkWbMd?\q <|K 0nZ~rZS`q-$\%C!6pؕae*)*c^N+#2u [ϐE )pϏR͖NVfdA|>453̈\;-}eg6n6ྑq1Xe 'jR @\Pu1N:pXBk>NKZN9ژ,d BNB1F#b0ONօJ; aZJ@f&t9hr=ndmڗX"_ ^yr.a0ǻHn˅+4L,m*/&q3co5dI;F{G./?] * Af #pcb+356JZlK/Te[=@* s)tG$Ua=)Kr }5uB3TW[0 )Ψ.S*y# +S zdE jx^m}}o+ :3 qRs$UK)[4DcRP*͋9rT)͈K&ࠏR-֟#)Bs  dy^P5^ש@AnڈLBPyE ;==4 aU*0z.4vFST*{(7>ml#e'hũ/YLEi-Nj񖝏7¢^H$z,Dō6`:FI .8uY4V4r%y|8)6p*,joz6J^#K6eN#)w5p@S=Y5ƹd؝XQ f9vEX]$2gNш WO3Ȉ}V: FV ~BPQO`!^gڸHVh\q2~àum MptGO]pD)P 7+ρ'ʗTLPfCO4i_BNٗgqvo0֫F9.Cc|"%<ƕjfZ(;qHY{\M+fNCқӞW=6bcg lJVշΚ`C^(0 @But[ZF|Tϒ,AM`0:lּ9W!|~|C>5j\yl0l2͹sǶadK6k /KRģ4i餃 &a\C0_N(:'qE aSo2㜯rWAȱlm{@,Hm. sx0Q274`݃{^EsH3Y? J奾;AV!g^Œ ױYj$o(t*Xݢ]B07[ґNv.ZZ"ܤ۫~=UӌmVY;%2-v,^ Q"_vB\o4"lV}| qyY&6}|꺗;QTd&W8!a b`0> !T' 4ݵeKi( )SGDWF kV/QA]Ry?,6xZnnAG(b"ׇT9|u͘u#$ ~ҼL|:xaKJ]M:A&,yГтkh=Fqrtn$^ZdYF*ukRE։Sl mS.W#2Qu5mx1Dy7JS:D=?}B^]%I竉 0fIc8 %}OttF\y?un/7 \ 4Q">8>npdۋGoل%Z[azĺKt/H Ok[pHRHtxk.pv#0blB][e ʶ(Lj$xZdNF[Ue9JW8&p3WmTn"hTRV:=#Očjӈx`[E6`iK6{x3U7)+!gD,V`3K{ gan叞FB84nf2?/ؿs#,ɭ烲A:!GWr`-<A鍷"<8{o#8sI|f%Mi[uY{HJL~UNYwn4MsWEs^ܧPIb_ 72^_Eav1u"I|>DBE dT 2@S&twI# )*{1p,ךd5J%uE~#aG?SH@Z%en Ap0"I>ѭBbRS]8q }[ݠ( j"#vMDy#Ӑ]ؑmZ;F7\F?<Y;L?;xtZæ)+˷jͫy}mH3XdJ`wM|j3zІ$ƁprM:>H L+ۃqY6yc;ijVM6/H=d n^nvW;_.#%ϟf]np<;Yy_05E+8}GbOZ&1g L &:.>55. liA弐w?@A 0.K"!zPQZx٪; YFD |`[]r:Ժ# M/*n1Chx(f1}eݠ/>!pv9Jbd ]OTfJlzrѰ6?6ުYF3lq&dM@ɱIlk؜<)%T|öکsyRB~b b5"䯨^R\r$|}Pmha袞wQ9{} ." w<5j{ *~vEPdM@UF$x~k' >hyiu;L-QX)qK"i`5Gzt( ׸ELU_+%/ʍZ_{ gpo (@ Ž]H@ꡎW{S>W!!^|6ˎ]? b70/׈6-+R8}^9|=WŇ},ݐ39uSoQQy5JZ1DӘ|3sWiӄxbIl5:Il;E]}覡GcbcbG4 [p&+$*jn쎣 {G -;Ũq1 kM9qǟCkp݇!ejPۯ Z2㨞o&Qi]^ Mç}M;'h[sFl )EF@ \}4}Nki#n-1| εevfU2˦:\w9)R3d=D9>٩ @^fs(o(L;6|L~G[pPr0TpZ3cOLkF%+#rT4*Q9u_/o݆ƄXزҊ'[T"@ԳQm;}&Ŏ( A{8E;e_F "uBZDUp1ʋmH?QLU_UFj)QܜFȋۋB8x[h|h!b bZ5D7gd\W .:Ql,r`V}gD+[˳& iBPQU* Pp @ehb녠Za3  R*s!J-XP?X.'LzFO&\7vecJyi~%bl k>W@hڬwݤL%SάX+6fz\>/>) Q$4ܢw&"Ɛ-:q0"V*0wYT\JQUh*֕UK";4%R2SMVWL_d8U rҏ\IEϮtLxQ|jjUѹMZBC}"4jw| ܿ"MC L7{s=[1;9pQY+|\D*Γ`}@VȐ 2MYefWi !zGaUcQ²n3xxqjOd JeR|@<&q)㊃g!t\eO~D%e`^aOZ8ki8B+Vh2,;թ?/39~0tAݡ?6#<2liG4VBV{L.fǑrImZ <ڶWw4%mGV֚Ү\3$n>u|[Q<%9圕odjQ)j-DCA 瘇#u~{]poS>@Z5QlaIä$+ J  "z-QĤ>Q0I/?}輊i<&OoWdC%mʹhe觇;CCOÛ8T,@ J%*ET:XNSJ F%t W~UVVZݶUc㒆s C'KJ#i}C 3~qUGj]KtA7tHCWh(g;)Ⱦ[()frfzcJQoW,i0>ӻ ggW/l<;{Qϯ5˅2&\z]X0QÂ7kb,mDcltGu}mݑ8|2Qul;N(c0=u?E,l.ZΥ".$!?"[Zܸ Vwñ4 %˳ԙu[ѮH y𖳺 G͐"wd:h\ W!>}křUHX94+ ޭ ` ýWi@FSۣ~kLX@޻'gJ%c0gҬ@0EM05oK8=~wY"PB\\T.X]y478G9V4T&lLp[# 8f@#/oq{ DÃ:wulP d>2DIdOmcߵ9+^K vRTUGT:śk&ڳ>Ǥ(ܔr[EX|ǰ]b QE ڗG؜1lKL~C$k#g۱;#8m;z% ?Uk6a=w`L3Ugf&|ڇ-Cdf_oHu#~ȇt`'-Aߜ UVa&qpU`89;~W.Y(AIrzyCL/ ×&bvēb|  "3h,;qMM tT] pW6x%#k;IٿJs_},k~b?z;L8_Rij5Dhd5r85i$_yo-p -lA}4!}C &=!K[PbI=xcVsEmu)>l?cPT2 Uݬ(E&. HנتR4E9-]M|r?G RENc9&_P]KEۍ`Fҙw*NdSY .n?s&y{P /ST&ΎgT J91ymN7㱗P'siO75~)j.VԵ '{w&R0K؅XzS+(Y۞gWV YiBe%?HNd$\3(Dşj0Gip؇F7.FI ,?,LR][kpdkYx/БNBU}`^pT<$`̺YjiۅL@878LͅGR^cUVMҒwF0tH'֟nƫSsiݳZQtGSȴbs=rq<|XOk\leԼW !\|%ƪhOI0S'̯Ƅ{@6_#d6n6$8C9I-_ _-zPƺخS{<躰87/EQ<<\-W- uԠ 7@dyl7w*ui B_-_bg_g\ZbEOk e[<Ưuy"Ap @떔v -`/$04]K \⢍&q:7I>DgXFrZ~ ̋ ^ImcLnFxIDT-tVq:)o=OU.d'"Eǔ@vV!CV}]{⼠&DۖN;`RY')դ{i"g0Ϋ;Ũ=t+OF+B ^,pYwtPN ;ˉlh36pv%g&Tܙ%\:/4*K չ'wp*e]6P@KƠ kY4Q-;llf%btptPU0]'Ἄp&k Ip ),L^uZ-`j"XX3846>hX⌬b&k, c k(=y9`{֢)~T(in2\e(e4B$bt/N(% eŅ]\7):2ez -S_ 8oA9"9p9&d$?$UU~ޗ cR)Hik~ Xa= Ar$ l6Iƙ{IFs9wN-|/}{ 1-ּf{y{?1.ӌ?^Uy߬zw:0lMO0QWnY#t.Iu}'5K'(No.2}-'yD{osߩ GGX'^} ~D9YqDUGIbGxAߠtVf~|#eH2 o |X#S)?g B#zTUsEZ<ߐgҁm47ARе8ƭN$pHq"}@Wܛ~e; %w&F\>ߣKņ ;PxgPKBy |;t*-iͤ9M QVn@![sD3o(M—:$%Ƕ_le.z :y[;x@`rR04~B ^?JtP舺?%Vݡ㘂ULfԂULMnP桃 ɍvt0!_{`1uE)G%B/+qɌOy-nexk`X=CbJeU=Rb@KوB<"Xt5)<:aEd811Tْ*yjnڊ7je:z?ZrįZ?L"C,=bt!U]}d ّQf<Ļ5 '"" hRR@>0jpJlzvړi;w9{v!V+2YPSfZ !ofLP)IwG*!y9fs$L qPؒ)'qץ .Ml}$/1kQiAoq7Yo%|oif4,xm{ 5RŞtYBT&-e;Zg冘viqp٘sYy2'4F*ecN nF;p ê286n$6"=J)E)tGZj"mݔeJUW&L5eKP6˱|{|p?|8adtoؕ"s7CGrLxN0b#GʗUY`*Ö A^Uمxl1w2Vw,2AY/Wi~JPg) 4 | 9K8_>z'{6龀8,W& X@ kUeS21g1( `0199̵,,Ir fU9997,t6>(N\X_g!><w7d-s瀦;+5R/#{MmxWސu [0 Lsǟ$f͉n@Z"$D_C?X4@"ubFĞq<]lKFf\{w-s8K@G%q!ٳ$dS VSRz*HΫ~"Q{WY!1ɡ wFMu](5 3oMV0@:,amԖVS,n^j6+]T[O@y̬Vt}\_Gl T&"+/~SvQ Qg! M .$)5"߭ ;:ZWC:SF4QUCܦV<,)3m{(Zn+N׸&G@dylMWuf1 4h=:s h kArEhxkS|ATɘ/K%Q!rR&0U%jlP1a ݷ9 O7TM`,c֕ʄ7` }@r9P\<%EPG:~%xӏ+pR@l?F WGaRn}F(v'u}a68c_wo,Fr=B!#|kzgFl2S4({/ H&qT.LŹy}0p]0w FQzGNWo.94Kϭ˞p)+IMjzU9Z椏vhKV:IOXmOU7$]z:l1_\V(?~<Gw´ס1Dlv.A n^|,m@]d|ޅic(} 6 @t%I,ׂꏞs %H~ ˙t^-3OVEϕl4< /O;{O$!Ohu%=>P̵a9ve2YI 5"k[+aaeǀ}=ySBj)0S߼HDA0lGCC 2YxfQeCF0}*n 8AEdӊΥ 625d|6#:Crp ~FgdUjw9P3j 4SIY 2nX(2< t ]g |,<pPG= [e6$@pg;Ğ_ZqբeρWF52 "7fF苴:x8mڿ):u-Bmst:^YC'Cu'^m:άd*"';p\{aUE^w8-CHM P:Sb)7+ҩ°u-%(>фNog5kJOQ<񕤱V&Zg`VH>2lvw qxPY#DOYe~0M4ҍ\=mHcôyNˎgg$nKgǏDH+ǓZ ( ,P*oC"PMn{e/$ %Տ1lP~*Op 3 >CUeuU @YJJ9Awwg'CUvBH* uc YaUX"B(i_n]ŊWKq1>Ό f-%L1#,̿1C[&/:EŰ+Yq5rY}5(B>h1__hǵ@Gk, !T,e7NYXO%iD٧1Aw#Ki w[WSS(anR&:pw~Zvn6Eؗș<ٽ̯NZ2vK9r)FMCԫm1JZS.H8.CL*4WvAF w厔> p^Mֲv``]]!ADeM3y;XBf)NoMܐ\L] Ib]RjU 0)yUk-:2NC7y gRһϾ}B T* "3#,g;v6|Q-Tɴ0Hh}2X=@C;ޮ1hhտaxso!xVZ"_X.+4:S GC"^-s!J:iů.#;h%sU*Ώ5kB{]yXH [m b=E;Ng`EҜBGڲg_Ĭ:dMP ujgHS/58Cc=MOf,GC4f~&(sЬfrXHɕߋU#8JwT=v`$U5^j6)N}3OR$bևqυo&r+kUNl66g0 ^{I`(vx-gSץ(ς=w%:~Cօ8] ǰ׉lD-^]F(NKz(sÕ=#r;:d*FNpk X<8[FyΣw1}yTJ,:|M8ڜL =kaM, ŧJ'zo~KP3C"x˾ ڴfǴ|GV}b/Lo9;Ivylb_]PZq&O :Q7h3@tΑ“<78c6doXѸUJkzqO1@W0kV/Ǖĉ^5;ڼ2@N:ˤ sƳ.> X}VjtvSW>F5nXjZL҂S|ě OIxsUC N{wNGqv K~C\U$lAr"V^A^)S|K$QmRX7Hb\w *s~@Z'`H @x f `O4z9ϸ8!LLO^M2ʩtG?>t$ WqߓJWoW?IՅop$G[Ak2"lSPvB^&~C0ld]?< S)FbӇ崛`Q oc|=P?Eчi7UJt3*EQh 0)/o9re={(fo֡ %h8EA$قB.AAHF2a,@@fUet 4fGgmgj)ɟ۵FjW,{z-)Ët#(wyFpFDnX(c+LmqV]h &ޘ*90DbH@*Mn%\7wcKri{술.k-6y]NK  = u0ME.v_a5#4h1(qSBVCTp-3Tqm^hT]|$yVȩwMPu*ZamCdzI'T{EMx+ Ϲ]]%h!Fb=3"θ6d]o,xBHo0 l$`u A:$:!׸U3PÛxƚwx5\G(l`5 Eјjk t k0AI {ȑA17ޘi10:+M`Czب2ԾU|-~sXycڹ O#Synm#bo Kgi^O2\GΔT t1 *ƕcEu]?[D8նh7S%\pDzJ+FHZ&){JJdJ~+XX6sRr>R)h6dRQ'?A< [A~}E 9ׂ>mJ{b۹TeDFtF+ y Kp!4 O) =j UأtL@C[Cc'. Ng(*,ScP;"(A~}"aP/77 52y-֫ *2oH;TW۟Vdഃ Zad>|ϗM4݈18C<+,"+!.6 *AԇSyqEuijE(%8_2M>MҖQ0Ff3O\H Ov5!harMPIҪ؏@r5x{W)˯/sb='q##QgCf|G4p|;bb{.2UIlv7N5>.ޛh4)r27?{yjA8Xb#~}oaj0( ̙" @@]?~>j7ͰW~tlWNڮ:EQ"5Ηa@_xӧ R75 xL9-@mLir^W" W%6'mz;Q‹AmDA>H(Y^z' ~~,ty:n`8N,Uy3^O~i,4tO.X]scd0Mbڼ9$i)fi6@MIq'+2NgS$#HO!g!u )u3u}١|6ϡf1#R^\=I'16tS%o~0o F|j̍X%J@ s|SW{%mÙH4$W|fMf?`(U KQ]_5aґ(ST+L+݇Q9B?v7P5cel(EQ UkX00\m&ZmM؃qօi|\$ճ?1HZWa֫?:/"͢3Αt ()Y#FşPChCu9cغp{aDžGz=ļoG Iy߄O[-IvIh RV-e&1b FD|ca7m5dH͍MjX7y>xƓ'C|՝]bv@UКg304d ,S Pȩc5Q,+3X@YӽG̎q`bڦk]f!LuEW@yZPg%QkanA@y1}mY3 ΂-@)y@:"В&A{#E˙s Z [ktɞL]Ge$SN^N^nKthdKIiaL<7 T;ƨ&V bRm'v6*mYVN֫_a; 6õÇ Q#᰺ɢՍdb{3#|,-fj+%bЇzy1~)ܧD?YM1=OiWIB([KB4 _Vz~ZytVz Udr1I 7x#d7%%DTZ$*îB&Q%# *$l%X~-Xuռx^J'LCiYFjFwcY*;Y2M"k!tc͕h-,Z!q7Ric6l^AN~IFVN@b'3YKF-Cj)zro:ý"O٪"7{e7ba(63tZ ~@E Wa8b_Q6 Aw`32:`,sx :~b X<|^-TKdF7Onj` ::VOɒN- xL6j?ala"(;?>ܭŴe6 n[,D~ Q%QRW^ `mltuPԮpU|bnHuJl1bXɓamKxvS̈wiUihU8dVG2N(Z=H]n[+)\#W+I:d _7XFg`9NLDie-Yݢ Cg,m3?}Wp~1կmd‰wK[۴>iUyHm%fƇt%ҿ+/i4b.CF-P紆OOi`NeLxӱe}ܼ~Q{Sb&EXM(A^94{Ԫ䔜hN&}EĿ\xN_gӿ~Gcjzdl/d>dn;!gB;ƳF ƥMqVI1{>DŽ۟3Dߖ\5Bg97В3xLIv}΀نЫ6ߣ.u֮\N$ډro+-fi! %Be#DـsWF*0ѥm.liD8`wL@E.CY2,MP6#\sԻww.SYQW>gbN`|<ӌD6*i q%]e쟧^G:D-%Z1c2gyCEN~GaI"zSxYƋ{uXЪc)ؽ,"TIfic_n{9XNrأB*.4ڼD+-J/A$lH|V p{ O34gbS{iDč91@%ҟlwCcfBf˵(׸RG7 ̗Ibއ:h)uD74@cX?jDc[<cގJ>w˜EV&zeg(ػq 68dmcVLb'tQ/2\h7 wD_^H/NwsL;2Z&jt'*,6,VF:34 Fl(%I(T'G~gMgwDw<5, 6Z1NeNhkU ^ϙFs4:cj߁EǧR[6^Ii_\²S*ݬ|IXCk|#,GdYiBVX[MHHM15Ђy),?;1'H\톇$JLM -AT)_x4]=м^u)Ed=_`$YPjRmVŰ=8Y7pLX:imu,^& *e؟uml֬}j·QF3 L|Ed@CcЉQcduFtKu!C=J)%S%`l pk4 `/I9Q^*dx]::I1L_:8}8w'SA7ABa)ӛN[g}{a Pfv 7EzA+#}$; (nIy=xzmwg:CҟPGvQU_ 1VaǍ b8f yDטv߯ZZ[v|r8Kw2޿6.{ cŪGdQL3XH-թ[{Y;DSuIޛG@ր7n즕#45eD#ޘQޭJsѸ'doN=lٚH ~zxjT<g I*`N$ :Tkŝpy?F.s Ϯ1^qK52!?{uLnC]`ym?.Z7""\גi/Va*3"j[CU߂t(_~|8r1s9qPS$#Du 1֎jxK=&d;*5*bcgb\}l[ oh9 X$:>laDy_̏<'| 0+3p趾kt)KJ(ίvzAGO7P-*b~6x,ў״{@&4-@*E1@ɵ(ԁKs~ kj3,]MSR'yJ4M+Ҋw=`K@!IV[t~dgt+R&j3aubT aGTXegǰVy@D-FXb&ַNcĚۤ'"JaY EP3J-ߟx0U/6B*r&sl L^s_ԕ4OD8r8&k A,1^CEd6uh'ozH%b~{ dFI[LWgm۱.QmcVTJ&U>ƹ~d#i=<<K?…CRq`eIol^ l!hmieP{!|}@Ab?ᇥ z--|pI3|  ar"`hgak蓮"0}R pÕ4 8A bz&;|~,ǣDv.,q $"tUlb0)QA'Ck$XΥNvo u7pfșp ʊDGDWxtGZ//)Xf2œ/ '2<1uB;V8>!@=kSmF ijkK.%Akc!9T5$e𲼺7t%B`Etbt>08S_t? b6sfv}7fܷ|4 R8j6땩[0EXxF2iZ#.OFStsTܩrg p,roX#.s5?Kr8 $ޏ M08;A|62k~u  *@u@%+mt)X9`0]no06R!Q=5T95~o`/AFX <언(IWje󠿰͟?nyZC]q1Cjh &qEcX2)cB'C&822\x6WφZ"~Z_2vEI $:ɡb^n=qV> ?su)I}Z|D^M_ F^> 4狯ZJ h9Y&""1؊3׊x w"]s\m8!M͈9[ڶ(eڒGar7VRge.nL"w89 nlk{O*MOq>M4 7A(i͟ 6J!#sҷ@IJ#z.JO@:R}"o8Md ܧ]=DNE</2'UY*%Ȓ7*rLlNN2ZH!ߗ`ʾc!F-a卛oq3OykҎ&ޙT}yc4SH_ ͪo4ddκ[h.$9xgܶ?&|]*9YBlm=L,ᙱL<|@G6V g~iW5ş\>\>a鞨9zoAd\ b/r3UvFvYcE7ʸ{^.M^ڄ xy2p0XyIc&3*&*#**7; %2Sw6ғs*FwĢВmAA*{^v a@4l ;r1`xw <50#ڌjy %;:+|6\ ETD8#. S )Me!?gb4Ŀx?bC@zu/=įh8=#뎾7ot9q/y:i0"wS5Ah!@΋RQC8~ `ib|Ć&bOa1ӢA_I勏| ;-s /AuVtZc%B6wazo788J9SV"nIM `>Q+@J^ :,)*i pՓe2e-2OtXDrR#wG6IsĜO"#^LƎ=B4FRygB0 GKW"w0~A3"H1)x=kYc@>l0$۳7eߘ/0N'!z.RyUڰ} & ­d_{hו8Tβs5Kή}n2}m/եWvT\6 1Tr$2c(7".WXcl]ʸ^A9Y%=t@9ߡ:7L ~$]{\1 b{K&#- q8  \ui#1?KـB/"Ԇտp|O.ce'VAAA8vܥ2ؿ-z?\~`27#y]b?ZhIu^33<@_KWy 2%tX<o@ @kˆ{|t_ؽ۔Hڠb 6jVB54vC7{)r e)D@1sJtuОSQYe:_AmVmYXG%Ryk&tNt MPTS2kxD_ݧP)M>+ví<zL__Ȯ`/ٜ<֝ 9MWNi M* ݄M =6` Ʋ[#,D 'PEtRMD>d)hR-MY9gEOeP%u0UjvCº^:cۄԜM gf; ,]BGJ=mZ=JW_Eۄ[BLYVQz׀Vrs+gnW)ސ>Q;Fp\1s"He"-TzDr块/q~Fq㼐i|ҵt5pg;_GOEOlL^2@C3\cvcnhW7|?494!,woKr*(Vw] 7ג O^?7c?Kk@sn__V?]k蕴ȼrj;!gae xVT9!If|Ek~&?sfQ(?w%2(°vh7uo}ٔl<"߈rX~EۃTE܏5>AZǨҊ>F RcTP$b&3߸N&- 2I$rF)=Q\[3!`HP0[sSؽDiCKf+ g Gb[_ߍ#6%ew|ٴtv >Z‘& 7T6T/LBxR^6#?,c_39,"G,0sn7S@K)oqm>Zb42Fu1e1~2lkrt^G~t _ pL_:m{=$_|OSVG򕛷f{%S?32?b11CSD":Is)Y?l Ok A) Lg jn=1a!M0&HA.mmS4a3bxFs7q, ˒.(ZhUӇ 8V:6!wȊ໠kK/27+T^uHYuC멘Ɵrh?g{5ב ÐXNX'eĻڅ"snиVɓu|j^cMDTG 0x\(D۱XgzOiyf1$H3܆+\NWUBpTi̳{27:Hj5EHp3C⫐.2o\"A_E0&Vec 708S!]W2:XnyyDIѫM_W7{X#Zs4~:-RUc%C)U8AjD4KkU &R- -ɿEI6Vs܆Od=kәu%N % _J!Y'XmvإM3 .V~b&M|KB2ơ K|B8-QE1e6(@Ry}h(D])ViVd[őJCF58n 4vPI[I г27|Ld:5P(6a."$ɜƊ|R!M9K9T~$*$mTQ%68 GXC#sL?RT~7\%_W3h\΅lV^s,/5]+5Sؘ@nSΨH}73~AE% Z/ 7 =5$Olj. [PJ*!zm.0 m-?!:J@+U:.VWsM|X ?-T\t2",j:\SK.AH8tnj{O'̤!8\yոM4 V1;偆Q͎пu1 L+pR X=ߓ_jxfPOGp*kw4RFt6sЫ98;6;bZ;qj|WMsD)KmB}qFm䱆(k{ݹbɝyU2Ď6j.xٕ7}(-eq^qF9& C w^ ' zr饴 7q)2jo?BٵvpJ~jB͊<7D&ԤG{mwFjW1 Y z<;Mm`y2xُNT[1vҌ WfO\ bMۂ460CmLK->d rJ$": 1_r\ s.s_9TxO䰉O7^_sӫaE,ϗG2b HK"w ׬{}̴&TNHȨ\WQC]Wor9׋Xp>=f'h$}Y^E1K;S1݅&۰RJa0E}*s)uq0޵fߪȁ|ePz^U_D`=X x= $:k8X05Sq mg~%(\1lAO7̘Xa ?xa|D, TG gHEmƁxHRW&$.Ĺ49G-w*jCVF=1"R䨦5g쒫z`]KZr\$K3&)ɢ6ZM::]lp}>,8?Ce@FFRJՑ "r߿B'fi º|# n7U(l@qpρ hFf@p xl1ʬ?A-G\{fmZ2?DI#gCuťp({@ ~x\%XVHpqg "mPxe -C,I)  }ˍZ|\QEO45 vL: ? ]Ad7e.{2#$S^< $ʔm ! eLI彁nk2QJ*&KCi53\)Wo2l؉Խ\ xB}% k"RV( ZF5?S:rYga^tOHݰh%o|#|7 ˕揘3wqC!fYCSN)C!f2aG$:ţ|l&Wv!@?@WH$7Y7977p+H/v2|>u87V-Ey˞BBKޮD5~nZ>x FrR6S9"NӠj"se 5e_iQ+cHqlO+ySl{iUCq://jHդ6`PʀUN 6 TO'nsND8dMqsx~{ƽ@\KHKJ/I㎸9Zf,XuR821+q"pB.!D8J)[WNO_ݥl;z gMКV4ƟSC+q gLQqߘ_2* 5"# ,)wrOwP]XWᎃF~^Vt}PWo^sdA&k8>gr%[%| Cnd*/0n'6}m7GB4ٰ`a΃K]vɟLYUO9.sǩN}fnyWWhO'u29 W7o˹3+#ؓŢZuƉ GWf"5?O\cK Y1J Si̻Y m~{ɟVgEIz3+b~`]hj2i5{\tSe!0[q0Ç5 T̜mfq]RZT80-.M "8-lm\ $H&8dlIn~QJ6 \_@~~)$B\ !Mk}[Z {J8q,/y83( @'aYj=n8P~; WfFF#iE$-9qlh-bb C*-ͺߦ]Y@WVM ʘQ逿H;wYkS$aXNJ zi1]dAOǍ_ൽß.P uTzzl*qv`'woO{=VfyB DG;%Tv;3RΔ0?lXE|܈=/aCf,ELpG$&ݨ#u9p*gs9ӣ%tU[2nGC^H9V/.p\Ԥ~U80*gqg:3 q+hEv+3ay;X}Pb e2x8o|z*K,}RIC`FZ/^[1m Ab'T rw1ifbs25tS˾KO-p ހo~Ķf3Q [|-#l yH#q<9a%C j? YۑǬy;;fv +Je6Oklk!,0H-g&nҩ-gBHRf;`ft Y/pѽ1}ALC[ ZM莒=+TqcBŌU)e*l%R]%lI}fxg +>罱 :QӸ#>+Zwr]9\whu-z'ٹr5ߺ8ʹ/=y=K:., UH8#3D6PWR/Uze#^VQ7z$]H>T7sJ4Eq,08Z+1Wx)Y솅+oQh[WR;J3 J]-$_5:IlT.<[}D|t[w/16Mq&U/%z]3%Ql5 |T/%>$5w38&!-Z9uAȩZV9Ǒ 9ћ /e5xI{cP 3w%kj4ZƂ>)P^.虝o߰Ff!JJki=^k.c:r:()$KoC F$@YY?r U劬b;R58Y2䕕q,0 !TSi@&R-g06e*Zf@>_xi7q(k(f).q.r.bQp ɋyJlE_9c_/syHswTsޘK}XFHO7Jc-v:%E5]s"f\Gzs2,虽d B`k}HˤR觰 З9 if"mXcL~) Rl\-ɒPh 7cD:"R/ !*}7ZWL '`(nޑDfE%Y׾6S-[>Y ~@!x(ϵ?>jfdl9 뎤K^_ЫVZsã&02ΙbĩZ4N@="al[8p(jZIk%Qǎu!Ĥ_ivB6t-D #ІhY imk_!(GCe ]ÍF7܈r&7ڳW34q7Q<<grXOZ`"\"B̵SU8ƶf:xzhN]ѿAd֊#)E0ݸnNyGv!']d-ftdK?#H<6,?3 V:+B1oHE*j=Y2[lӘjq_x/فԺw =s=89XB$9s@?zSjCH>ݘcAWhɟnZTPrh\SaR9%n^ĿpU(4v5%`4v!q`t*;ZQOj\DjN7C'i/c܎!5R+V TF"&xn d3"]x&J"G_ ^}qUK&s\*Ojd޴޷v{h&KuJӇvKm,q}vG Y n-@'q!Lw'8$~?)k`4cZG -A4M߃?ؓAvY3^%e/3V_`h6͋SUP6QE5!dĽ%fa(z4Y&I%jS tBW#4rH (8 21ܮ6ئ>=r +fj;A+E+*ĝ]f[0v'D7B&@Y[+6WcѫKcņ13wj$ +CuD6ZAkݏ6.67eǏPL:bl2+SW.AnW.=7(c&0^1 Bvr%Z q O.0 ljwA}%ZcGkσ`Jw4n2<J)vgrXH Q4)mtjaPndBZTR7!Ͼ"UG8mV{=r ?d[c DS$)вiԷ7עϦo4-SZˆ 2w,;a ZZ'5錪(#Jn_Zq 8z Ԓ=2]k7,sliBEyLVT *\v'r/]Hd 0s_Xȸ{SE 3N*{I>^AJO".t&fL5aR<̃H +,=yG+;AO9FȮjYJWDD2 ~`\kWDgzs6:kبsw~[k!bFӈ Ks-+7aJ횵M)ׯHnk! 4ݎ^7"/Z[;FFp;omNrd[Vs,0xY+nǶwfXR8ӂ1?Ia8e$ܢLDfVevU{1("yVE;>#l})}BL/s !K:mbb'A~(b(FRZuC0EHkt| ]/OApr<~: K t^7^Css7?9H jsN1Gm!T2D^HCY-Ã1s/Ġ [xIn kz1j 1yX MCQV[oITxI(GŦ(<D:zPW*X_dށ Bkd[^{S #< vcai%0ݛQh_#Yʁ2RÇlRI ӹ .ْ3h $\ſLF N82Fi'ؓfKoi$5W͸n NªF.үc7~qlS\ /]C@{Ng2i'"P=u2*gg}.u{,kk!I2Axq= csJIafY?`^&8.O DgSMJg`̮W PiYRS5TAq+]p~]1Nu7bZa=Ñ@WVN$ckkYʸȮkMʭaRi]2&v" %Q_g6h"ʹb :'6%|#p*&S 4:j-zꘉIkFuz#5g6;^RX\L&_7?UZGS!W9"04qK{8.0h&TQ-a1 s_&930e`ѶU"k8=QoB6d8FVcۼ&gdO6X~L e5M3V<̄SI۹pl7MQ,RǔmD7ag(xO_~BA,S"/5$y_#=3/]wf0ԑA:ơ&I{ ՞3omF^`Z FKۀ>YjRͷȣ"w IҊGB=7ey8Qt/?\?۽ FhtT8[ZvτU:gt ϯ&bb6pXV<ʌ^s ӳ WliÊhhvA:RuOӒH%G_J ra3$n)'SϩϽ;vPg8X^\>z: ͑VNq~/(8ҁ3΍k>VVgQN)`'y(íC%t>M٬Y[<(/ ZAöf~-wquOMŠHK L]0b 관\'m@" $&\.6^TGp1KC2523}b$x/LQhyGLA?)'1:)U[ޗ"/{q{u^SSܻeQ\Ñ)8әeh?y%Q8A Gk0I*38b ٗo|wq_iK[d)*ɪ@hc0Uz"k~0+Nl-bݪۛ\*/5[&{ږ*QviՒJ%犠J"W,qq=*"" F_'&H{6Q^=V&s HTJAɉ.ZUN@`ٿ)Ԏ{yOwMd\7ʬB vX?6 d?곃 )cFF[+-Ni#2ed.<paB'X2oSk( qTeHOz åwd&S8LIN1Watp!bނSs963J ` 񑟥`Qͨ.LDT̕ոnE4FSɢcN~z V6HYId-`F h''O0}D^?1`S*\\<-Tߩ刜\ JKܲ1Y)aH}+}w"x[VLǨ q}:'^;dgwe*F#TÆD%{|׬x5;_u A#ޠ +ڧe3'odLf,2TusOİ|#;?L 2Py@0=aBd@2א"$$qm_B%pltiDkUwi a 3fb{~ z1cq'UN O_NT$b/~?!`_5K04NbEFxՕjJVX_1߱$==+{V0 1} &qnp~$Y3E;â `ӿL6 y=ԃj#L^YXJӮr!7," tՇ;:i_Mla`6rguMkЍ͹UPh\3_Q]~YX}^23f錢cO[d_J5UI4yyY98`X~ʃamNz=KT5< Rt0۱%3y]mRuJ fhs\*k-múɆ'0]U;y&m\@@?RA7<]Qn 0-q>8G6XjD֏@m` `ǎk-kŽbnzv[U kttp k-]V@LkOMcJGeZ"k拴i׿jF#c{ @L>dU @UQX#SYyW檰փ1ʼnZj)*lߒ/^ :~dm\L )BDhwp\꧸v7MqnDO h9LtکTl}ɃQO$Ҭv@E1 os@`,N@ck^gP5,Ȗ:gf zvn3UwFeD4qmgqlXqf)Y K}=)SF"WK %Dvf`B7 L3#G mdWO L ø_/z'HRk[crHߐ.[w;]\ ~̂sB젯mo $ ??oR)t"c p棦4Kn뷁RpϰB]%٭m6Pr4B!T.%skjIQiFVóp vz$?u9xl07WB9&H`ePXD'7Nf5uBYhK⇑O;p s?^DRmi"*lwrJ2hwZ5s))H!d8Jӄ(Qϫ7Yy"tE-%xQ%Ւ%ٞݘY`6ׁM4m΀7k\HF6c1snQJY=GmXŏQFV4e~Y@sIW,}Y3i ENj "):oE,[4z7l#/9zN گo;IA\avLPs1;#`p2@l -u&dΓ%>?2#ЗQ"oe;f3~̔('P^wW6 7֕9&z?E;Shˉ))8ޭ  >a;Cxs,+׼D/}ZwBݣ[S%Qgܤ!(ޓ'072͐Q&'PO7xx4mBI8B  Bg4/z7EH%x#5;[oM H @ՀrXQway{2Dx/bB }KK 3_CQ]}dL_ت^ h\7M嬫jf/xPC0kvK@Cvnee:? Zx>;I8x upD$N/:ݷ&ڪ@RECL*.DzloO H~B7V][u3=B]L8_i ^~wѱ W{jZR!\g~ZjeDgۮ k%{*rup/3{폤T%,͂ ųVeꀉ\VlH0{Vm.AWr`;og-gR̦r&%wY!͠3- k`+X g=qy[θ;;}ٌl,p3Ƒv|`I8Kunuh(\! ESlzZKg\B[('M?_2-7oQNZ6.Sζ[u#?,z<\{nF:K{RthĿA*w ~Gk_H# EMe=ԭKKqU Vkm@1EĮ&@+uY(qXYio'!-o5]:jxߘGïBW:M=PAx8OĴS {,e/>d' dʖMlOx&1Y-]n m&a9=y ;7jݟiwX.8e8-V9x+náǘ>xm'NVUGMC {A1٪ԕZxֳ9=k{]Nihњ[P6g}37Mj`$NFɹL9 իP[.iQvq27?uYk6ȳn^QPލW"jGjHlScGM?Wkϳ1~bhG6C x dBGB ncʹ{^G ^GaWfs'iu]N<pl#fQ FV &1r#Rb[ ʃqhP1 tcnpib)I'}{Qw䱶u%򍟏o>[X09=OUgn Dϱ&H7EyE쟢svC$T ߝ-H(: lb*ހyh#s;6wn:P_*,I.4ŁouMϢ&;vcQQ*5ɜ΋ <:O2 F ^?n"E>{EQkPzQ\Q I$W]G쬝F3S/g V n-^~Դ$Abvæ P PU2ʢhД]Px zub1Eh~LGNPfаt-  UvY?ҍY4 ЌqƾP !Y"M^إ^|zEI/pBgO5;[^>u~; :TG ;8s_iWfJ;\'Юo+jދ.<": scx*ݬk9gLʂR> OyYEIfdm[im&nQEc d9d]' -Ic[ϵXhB, 铭!gmm"fkS |{`&r,Vi~Uzc#Qx=ltS5ǘY)g_Z<wtP7'Ŝ_?J=D'z}}.m+A9oC5bU/.؉ΡnD~ A8AڶnY[#]:t:sˢ mG䗩 !Eq %S/A5t}k}Qg%*ώVZ۵AɁdw>@^ShNH#8,T\UIbKN`7('!nd8)!l T~qoՍ,qK!_V')$jIUe4oKRݞ3u"1F×I`i79,3;k9)ُam/ * "U4Emc<ɇVO CkYڗ(P" fd]!me)tk!E54|-@67q d`7}Hw"{JVo9Tz3#KO0.ml@=Bb|PsB6=g~`jycL>7]Oeyp(wsM-_1-}L|#g\!KLxۡм&ge6QpLbtbZ^ !+;W,iRy6:*CHjE1&V5y`%{8T;A˻$++-F`#u`21Jލ]~7f!0.xXb>.{HѺkCa0i21[v GF¬@5ors':cOyЭ#/G+o^FP 0U|.۵)Bk#( Hcۿ^pfHҔþX4%Q!{y1NHLeKVyn{%WB_URu_~8?iz%YZp:Z Ú>"ypwxWօp4XQc{犦=a+ᢅ88?n:׽=2n209"7<U] N~Bd(Fp~Z n ՗wĩNn[i!QXK5K)CE=z]R"@A_uSCF;u&Û7}uh5|ؐ&%X{˭9G| K &&4_D"BlsYR\*'F7wWl\CqM~8U ;U)fEJkQX1HӼݶa?Q%DX癜X E-]u]~HsQgB܆{)n3+;SJ,̮2n5Owr9`QAs ᥅U㖉>|)M+ɹLo$[z֏7 !QY*k^Yr'@#n m..4qM0(FLu`WB(% VoS>2V( gN=)_m!ׅ!\B_T0h2z j/PBwKHJGŇ-HF/n7RLTPu(&ΥqMrcye<9@qyNNqnAIB%gUTI,T3hѿAr, ܜ|qij -{s69$.rͳ+vR=&-o+IH*oĶE}Sh*}`>4 Y$#CB*bun-$$q  i~>m'/]@CGjBL˨qvP#Cf 8i7;ћڿ?o)K,Q-l'fXյ.c۱ 0$0QO _meXiHrO]D[=Lܤv42es- ?QsGujb MH}[f,ӠAˮLoU"z U<)x7vѦ6Sisp3q֒L);=L8_yƑ6@lZQѴ*5 OZ75Q&h*a UJ'6*uǹ(B?Q~{4rwxF4CY dnq%Ujeh׈Vf>jJ0Vgyl}޷5!1Ӭ7x;"xDUYCDs{ WP [?c͠i5Ө`k tmND~LdyvZ#qDQ% G~j] YZ䔸xo=!a(mXz)divsM Lìދ3Z;6ANf],DUJF,ϘN %Vy$ݻpw}J06b;{&`Ι^aכ$NbNZG:Lc5LGh *XV*R&`y+apتsit"H\T->8*,J;q1NsX<>=ytz;<PspU:v'7Y;-]~\i}d6Y :/NW7^7^kQ= CVN 'M#DH*(k;aq%%?옱eO{6WE>3:0|Ю&n+_qH$pS)d |)ɥgE0zw xJEE^zSsL[1_xR Hv{wKޗ4A%s[j}ҢHINjT)&?}NZ/VV>G+ʥhq|EY2mNgq"5*`N2ა>o_*WbSB= D9M[0B=e{wO@xkUV-K/n 'TqgBēHHPB}.D Pn6XygmhWI:=dgl#53uv: W;lʐ ]q9HE[^(62!a:hPŜ@4)1*.yZոcm|^,E hFv붠"mQ"+`3QAW.۠KU3+tl =+s@C|vW.!a}}ě.s u!\\Mojζ_sÛފ2$?Bp 0v Fc 8!(pA}kf%=7 -xb3IΏEl_@Fӏf:N*,ybn|MR=\?w~BS C}zB]wգ2Q=zB h&A++VA(h$>I)A|fD]5&ov, *3Tsl}q!7]M2Հ%޴Jjt!E5"Js liVQU0ա՝c_Xg46!t|rk~Ya/0.28{a|N8]QWsqAgSqV(` 8KLMՂN&4'^]Y$ƕCTxE ]&$9\/!YȪ =H19ҒXDVÙ$^DC1ݗBXN9o5g"ᐝ6fDS' ښOPW6h`ҡ4^7gM֥8r6&j- dd" e8t .VJQ݃kDܖ`1 ψlkj4S$d7tA.s~"w>b[/d ʼnKG ֆ 0Kbk t? hO:O/TWte6ʸ`S&Hpy4eA t:#n,hL/Т{N(Y w:ΠBZa}I}"] ]ƫ̫$ɠˠ1@&7u&ON4h@q`f1J4OڜAtaB1;A)~L"sn}atzvn;]̶ vOa×7\;zk) :. wM5m5 4`5ihmJVj XBv7Ӿu(#J$ h}{{!];CJg];ޚyHx}-4pj㕮6 id K a2UjTd+V |{K_Q~ m'DhJ49wF,w9Rݏ-իLo N َ-dCyѡv%ULi..աwblɴ wn@%:1(K2vX+h`#tj\I@G t*<_ \6 L=~۶fl5 ]2^dPA&j4Ccւ;mlb] !-$LWaHPu5jr*;vϦTO4)`=`pҀsY:鈤nR*?5ds xmELd~ϑk2pOi#NJ8E}N*DHQKsex?M-xJq/>tt_WK?y gU8GeqlFoA@u һz(6:h0);u1k{PH[%S]"hFȷִ̓Cxy ؔH%AFϐSJ_H V#yG(\9ba<y?gWMX:̽mY¾ԯ$9c*%Zq3vHkl 3M#cX'\mϷ1L}{杂o2H`t|ԩ X`5* ^ӄ޸0 8 1ThCOvOZyd u3 -]e2S&[SZl,ɥG#v"0-/XT\1ƀa\ "v v6'yٙ{`b_t( ZȽKc١aC4iUTWV;0m>=~$s0[i s^NlָAVo*_iI*Χ*ƨrFtdQHϞg#OX<~'0o,m9"m !1E{3şZx\Bf0&z((-&Mxf t=5<Tن"©e+:.v %KcCz-f/G0*k{^6MW6=ܦo6$U5X7W92Se@O')3G[ &,vt$<}!_<\?UqJ/R?> ~) ZPⶥ"Q O+z:=`˟zJ8%D m+}qYPe|_ w&fsdb]Veb$+9 ԩyv%Z@9;$R m=,ۓ>H>HpX;N3[$L]$htʭAr")*ꡇ͘MWu42Ĭ{1 yǨ= o^n f~mkڣtE/#3W#*4::ײn)33%gKmu^/v8l{hT4i@Ԣf_B$h85Xah>E:[L,\Ӡ\(uˌل.9du 9/]yKٳ|-Cpyaͬ"jG3KYcWҍ@NvÙUam1hUTv`{gMha10kO},otDh^!jDӻnl@̪;,0j++ebQ fĵCa$ `_-o= 6l?(Z=ڀ5qffЖ -f-#P^g^eh pKƋx^n{_imvH5qꀊ9*whrqO%.py R˶5Ĕhp{Z<H;_>Ot5;^̟|dXbR al~fC Kӊ.>Sѧ fDXTǺ%Ϫ W)RrGALVa0c`NC$W=[Aiyħ"-;Xu.iK˝ьUei5RƄ/iK 8w+a[Ap9ѴXyWG G}XU? #,Ƒ H4}К˫~朮5.%+0&Myu>ZY=oӣR=@ ^FX^qWשׂ@[ Wkpx`Cjh-9u߫>$䆺"AOyccS^J7&b15E[um@$"j(ǝ>;/,wmi"lo_ɤe[2'X;nㅳ['7m9N}Dk\/Q`}tE[ȿUpZ֫EzD‚GFYc !Pg5pпtAZ*+Kl Cg#Uq樽y|m~lvϤچS2#[ "HDNUn3ksc0*=[u)2pn;lyҼp*β0w)sC%fȜǺqM3q SoҰ ܰk jiDq:|PPYVSb /PU܋mj䯶1#&Td<.t*<_jx0iv=J qҖ /kAB 𝵊!Gn1d}(^%am/ˮW>t AGyY_ER0\E}h7‰'<ovvOx>` u{Bu B2PKׄ$&^Z r=ϒǜ/$nܐǣHplzo\>c ̉)wاj?F`]nǸJRu\"}o@Q6l_%`{頸1U个KNt R7ED{B` FAP3E"$@!:Vlw둢z glz?˒JN8Z=a(8%rSK!]onNKږtH޾z1oC5D(>M:1i۵w&h4I=Z&yqͅv]1WF\od}繣o|* ϸc34a[ȥӢJğ& lo$52ٞfх>]r?2Zn f 68>Ϡl,83z E;&[RTe|FDv^--@!4!>Z'ڑmꭥL!/uJ*mಚ`upЁ&-69xK} ,$¦ᑲlTJTE_z'7Bk#͹z7^g|A2L/+I:BIN|N4J 1 Ƭb*7zpLUd8ê 7 #D0EˈS^g6˃+YPCpfvzb0RO~n}z$\ƿx[*>W{tGS6k]Jt$ORhG+ NѰg7i2lgXVȣEro[Gb"c6۬T9;U5 dtj?4X'"*--j}^Uʧ{nDR'D :QeVHo%He%z y# ySv&ޛXШJ`E?ba1*I!E,/$_v{oϱ@$a“?Ś@5v01̻4~K+8?A@b"οǛ ~lL-3qॅB ]:$zţM4fT^J5ǀ4|(eZ/^w^)J1U)*r2X'?7Ѭ/"ʞĭ">1Eotd=v1.䝘"pKs׹-a)爁AZF d3miŠzTS' ı8'ОEr-+ZZD>|PÁ` rDQ ߋ Ӧ"TF]f}:oPW &{:nrZW(VJ6ԏum`‘vlF[˓:],!klX8kY3i!vدld;ǻhhol$:EU @򦔬23k}aٱJF*; _/ߘQ aEǪc^&dpz**_6y-@->RL hW[m&gj˒PCo$/O74:9sی(ZW׃NC3& f́Y׽Ym*Ot'$9y_GgaW-_l)@>8TĻB[X. |NPG@B3Q!铘D;oUZ~V+f;kto}Jl2?wb[B]@ؤ@y@9Ԝ)YpE!KG3'Jn=m]CȩF^a ìS5^=t Nɒl ڢ(i7UҏslvTRM05@Gz켤nAY5 \izQ\:D!RiF1󅶁LGU Xo}c "rݢ/fXGq$GqP~1'H:U'W33esk8rM1~nZ\IvC_3XA kGiUv:tӡoJ)oyבzP7~XUf&}T=.ZFV5~"Γ d2\I)=4\c<&jf0/+ OFiwW ܎%INPmq^LﬡhB#K":%P^Cŝ[i.LX#G'M& 낋5[ %;@H8}t1hLF*8@J4h?<SQ˴dGlcmQ)/p1|Ů7oz^B2Q0o(3ӟˣDx%W[E4LfZsF# O+ 8 av|m3?ceuqU[kǟ~94KqO-Tqw6_AAY}U׀P-goa@X6Jo6a݋A?地cy}Ia]vAQM=һ*^’J/7۽) S\Ӧ>JubͿXR1,񮹑xh0ٔݫY"/e:۝c3Բ*RZqۊ"'_+ay7J`a˚k֋k׻W;*Wy+Ur_ʙev2hR,^ pFAop b^ł)eq)EwIbd85 \RJ 좬 gp`uP)NZ,L,fa}^bdBdktԉ 6;`\{*@J9k3S,KX `3R _a2ĪZG;>X"f\@9 /*l3NMJY5ҧ˺)_a)èJ-h0eX!5ske]i heK,2?J8DŽF*%,ߵ\?,ɧh!W|RP"Od!`0(g/FdGJݹ:h֭f3͚:KP@m<_]'HUHݩ4 cIF)ߎUu) $4 ҞlSJ/ХeKL ا- BUl\q Pe+&mܐDϬU=Xj6lLfN'tF{_~|NhdM5O&-v iqcPIHl 9`.* .|Lh]?ZE(/𺔟~SH4!zUǾnU2^jUV{UqqIrMVdD|*=dxj4GQy98U^;TGs~}OՃAے^BA ca97{KQ{Mޮg7^BH3F]TV 9CqK{Jy ퟉qZ_=ȁCϭ"6AgNR?/{K ;l+䯫Vxۏy"T?͏Rr}|i !ff0Ȗ9*+0'Q-UcɁ:5GUawTsLK@'n]'?ȑ:DKe\#lSL8/v:yXF] wwZ\$;k;ҳ)?1m['@ӰSy,=OڜLb>FDD(u՛MN7Pm2 r=Mg Mw# -c<gAR)#ozL#&` =P()m>fڎ+m`tXJY~SII͂g*QM#`ic%o 8y]AX&JZX nRIA̧fKʔDE|'V,Yf'3[1EkMyUu:7c`f);˨}Il&߈ɔ!^{ew afz AxJZ-q8rJ#4>Sz/Qy]=6 1i9VڻxKىtRe&'F/WuCu,898ny^|SBFL{ޖdzzjĊ0m9dcx*$KXD +Y?T-8-YmG@p!bHstqFLe2KɞMDz%/j'9&ɢa/k) HAKi > 9RR.\Hm1G8w= 䉚-:٢Q @OSb&n@ms9VH5[kiP5f[!+¯A+$z `zY}OME\{)E~ͭ$3Yx 8Ybmɱ, %[DD'Vju5{ ,]NU>WFݍcEi!>8 Jȟ>L1-|Iߛ8uc}5D+*#؛`Lk~V*c;c/xI,fhZ%n2{4[L 2=B1/ Gf { J^"Vl Y(+ ~{Fjcj-ʂM mEH6nţԐ \.O<}AD\#ܘ6ݶ)"c  3Ofm|C8Ucb8ցK5t ֵ`"=-k(DȃcBDmiT҂?H^Kvfv sJCEABa{0~ޣ>d3RJCw'G-rnvtKN2lrU80 Ϲ:SV5aLgşPv6VT ϵ7NCzbQP8ۑ&Z%eVy-,6_BT>fk:Wc0֎GxW:쪖<.y=Rfp]NYnJK` TO ,7vM O-'|\F>WӾLPCs+Tg'V59 r~_>5KLNPhI ةc<bb%@ħ~vz2ߏwQ*pASٯG uy3{0a 'zA(-ҥ;1lO'h Ye#@/>POeW. nF\"W !dh$4I !Ƿ3VtkČ7\Y6' WP)(VxQϥ$߄b,['1?ن ^=&;' [_^CL-w@QN𣝢$<8p{#+=c9I"/?IB3U xJ3̡AY*PL(ZO y}>}k^_#lSZy L ]F ]yV {L!=iG UfݑTjSWUFK㪷sa$ke#fc;6p+ y}Yo"U 7pl\Wc|QqF-=cI(8n "~´zۮE7'0hTaIXFiIINYT'˳NJE \^; #׷:`x wZRKgNE|3Yz5X.s_ش%S1\29%ߋ8hMU/RaOoFP&:"}G5wN09T+ΊY[Fl/gGs7 RѣwYdŪr9A F ;F5at Bn*6"l'm%i.qy_/$)`];~B0oTtٻpX@QlrAU tUDz΄cʤnhS[skե J:XD:Vl s ~;QVT8,=UkͶlwN7ؿ|Vj0뗘b?ϓDrlվBmlEנti&hܢN Ē@(L^i,VY*mwnR"CP^F^YrlB\ &c/YL"4zO ZT>Y^"CPuoE|jB?2_2܁rkKkpN{ZRΎŎf Wjմ0z~XpUF‡G-"cxBrx ,;e<Ыe`C8mAd*q9*43#nHtWq8es>'빴[:ț G R5>PɺXKJ̳!2Xc5|iy*sxa 7Q~6{݊_LFa-!P_F>>$JpodPnSgh31Όi^%PP*tMÇ܂] d3$O_utկW(\ڌ.ۄԣdiWP,P:ԌW:,C$b>dNAd[5yzAtb ծDKڻI *MhXd_ fLQ?[?Ɏ(OfMr(sEWlA޶^Jhg*xvru,$NSqD'7į${7o;#&վ{HGšf[Ac6Om=*$k^cxz{-`!Ի狂 c5" YG(-J* |##-xz'3h.cv~3Fw-DFR:%o ɇZr|63q{emSB;<Um"E&i;?7-ME? 5'k)0&/5t%u xzӱ$ M~C=$lݎ]:$0*b ǝ Fe_hczWl͋7p17JjĒAwIWҢLD|4Mn3P Q7U J2_͟e,_kL~+'(f|Ym['aK@1S v-IL@~Eq/9a5~"-׭#XE<6&g;dmK;xaWJ͟’dI|kFeȔ#y!GRjmd֣Y P.#*NLh*.*n7~#qd-:k$[X<<;UCIyŽ) A7@\Zqz;vz8ǀiT w| ef>FxNJ(v lyG:?ΠFDadgurE#^ bBZ:s4s#LxM?7z1Bv1oʾU`E,*KP}nuGs˰~>Kz:[Q?B8'AtёF~f\ a༃ZQ$> h/`yoPTŶ:'DRy)7&~MB$~~g跽5{ȐlGgܲ'!#k/Մ8BVSZG&xj,_rI:AU~>d+>h26;cHj4DtZ^:BkrPq]zLknVׇrtq|"Ԕ8f!gt^߰[ҁ}1wGi{G[*cvgO}_ ^"R9;t]qe>˂Gy8|U`S?\80.OĘ >y>&6MԦOcT,[tAݜ񼟶9< ĶB'j 3qóx̥቎@eA0{% "T)IT(:WQ5IXl+4n q NIl@ j 96⍔v $ i^OGXUJ5.ǥNB0`5;׏#k1oD^i2[L׈?nh􋍅>`DCM#DyC.PX5O㶵FR^. daʓ0'8Q2vI57*vݕڀy>g!K-뱟lRdՆRti8x;ùo̶*x-B'n/Ҧk>e;#?"Ɠ2s >_ٓvyw~d=u(ٷ|΂F_bX~L-2{"sHi21DtoZ6{~ Ix҃V)-㤌B:ki&`#T4 5֜nvt apz 0]j^PޱUD ϐ(`<(JBnQTZE2v'₈FIJ(=92$|-!gQߕWX^C|'awήI*(|^EabN@i]f[m6J}M6^obSiˋbzykb9|`i\ /UURvFὝϦA7|XYÑ]!bیŴ{r*6j<V^y(@7}B᤽+M*}{&aSyݝFP/|@cj$ωcO\.E0BF8:lE)3K8?- .u%l\lW1p &? ==n4teEmsL<. #UI:_`w?0جö=6n߫S%>v'U :P jyL~LO~uTF21$lAC<<Mt+%#ʛ%"\gkB/7Aۚf>bXrXz*:Mo8Eth?$ (ǚwzO aD1_VCk'(8󘔐F>NbL]Wep dg# B[* KJ6eu"y6ΧF}4* H(姤TrPdm QiU 5DXȨT[/MMZ $+S*K8Y~:$O!/Ut L;ia;QŖ.乴۳hvOCM>K=ˊP΅Pϋ@7Qay DVYɟc2à]' cDw`oDe_kqϟ}B-BCj('x#qt@#hg0b@ oa@S?DgB8(h0]nע=QBX@x{vȅOtO>?4K(g#`lW E痾8dhkd}hܩl4j"_tJDӭ=*y'9)\sw [Ek\7uwA>i#Q{4еW@\'=p"q1![ g|NO],_E~NEtQK_X h,5f xp$i&iJsuG?O%TBjog17)=' ty{5pMre3alJrVkmq{ TZ ӂ[ !)ǴqPږӊ(^\:n qd-cNkƜЯFE& O?׋Fʃ,龴I j)dtkϢl3_%c4t^1uyvFr|+C2,E/ʞyu4 \_׋v^G=ZVdc qeU:!WI` b7;юKQdhiݫ#@JJ #W>tq!~-ki0`P⺦XK(\k-87yXƺ;:2]@ӵ][t捁S=52; .qd[bhAV3'PtlBhcF8h&d\7?iá5rcyheFFkLX(.$=@U4,;xaColckj/wYض^+O@TMESVZ qՐMz _$TOl\0qajGdKztiXLC a*bx`E|uϨRǡgRՃq+wla:;ו?ZNrˈS#Uȴ6K3vy/|1I}Hgu*L6=^դ@|'b V)?szCm*}2rv̀+JbŘ!cÑx$EBB%]tVbV;x]ţ OY{S.w1 ĶqebWc顋& Ї6:g U3M"nJn3*Ufj]H]t>e]+XDYMС2Ϲf[Ϸt PI{(@?.R d6 ]!@=9ٍVv~1ۂZSA. s4qnN^%V16myY$V;Dܯ>Asސq&陙ht 2Թ^zΚZeY}4Br?3)&Qow!Zl{Q#%p3V*u>5 *[{{hY]ezqiGĿDB3OrPT(| 9n tva9siy~%^S|Xq'4.AUt4JHnȝHG4,'`2}v{"`"tizE!ߘ[rq4ĹG:51SVҞ"(m:@,Wl(*HxlQ) `|7G&vDGAOXZ_yր:y0]ϖ"V+۵^4u]Rk{q+N%ߙ-/(wT}{|Ů :}gi-Pz8 0GYE8֥|)D74l fn!!?iWu&cL%,7BUXt"trb>Ve€.q4\sTН2,[8Vglg ̔ehdN ?HNПF6Zo Ї"^W#̚98k^E:dAQ!sd-@I`V*>>Ҫ %ǰ #O$rJYخF':mϻhǚ2BN;혝BY"c`vꢪn4V"$D5 *NkM`2;m\W4E5 |p:IoMN){LBHIpQ+cD0\OĒRdN]X"jh}.j'܄gƲp]4{Twnڞy;'IUϹ`^@MY^)~mE8UĘ'!? My"͆m3eFPs a}0 %^0 Nx'y#?XI]R!uo9^}ݎMQ,TÌh8:'" tKnBҴ#.# P1_zaΔJ|upϯnlmqyy+\y~?Wt@!)EüݥbIz⿖jax@Z#<0.( 8VT|'툘 +EiEƚ jP|L~* @0dt0v?:YPw!["E e)"UP!c1*Iӹ!t%h:93UhkYNC|O -sC:(l Ql Hto'Q߯rf@+*ATvP`FTm݌n? C׵ٴsjkonLOetvv<ϠI9 L?lh}  u1a)vv*@,j4l]]~su{+Wx 1x8M6&DB< )tX gDqZDLr}8+Sَd~:ڃuKJ@uԮ%h[J W!k`VEx0Đ~hukv=/c/Гi1M>|o9>#*^P'+z txW=~WwDD9~(%X{\n}MCg(.K8fl'M'+uɬ_Zcr) BKB]eEϴaɸ Ys=5vy>/i8 ^DkdDCqɉ3:`i  ׈ X%̘Orcg2o|a-0$9k)6&#Cbv.Vk Bz5ѵ vg$ 9&5,Ub(QI/gz |p6b.:K U־M#-G}͊Gc X<*{Q.(ƛH@W &DLC}ȭPJ4~CĿpyd>@ϰ#D6{F)vmyRu.]]'x!xҥ= #h0aR2%WfNf X][r{rX |.,CwW_Ȕ[orᐡSF0Iyi;n74Ro<7LJQ`о2REikIˈZ;[g`Ocv8Qc'/%BhPH\b_8wjb>XKc xLCR=|oWRUWP}6#FyéV+W/ؘh^%Su>R"q+Zd>_$~la!/$hy ?] +I| Gh0uns2C+ QJZ>prf\LU*F89 {3g;WZsUìi*~`L:w/~ sy{!kO[Kz-Dw{W v#@$ş (UOz)T,KоoހT"+c/2Z %ݦU^s$92WuSFV3_^`Rሔc!&!K%FZK~ه~Fȵ^.#B{D57X*M?~vB5x)ѧLE櫨FbJ 72O-x X@l8N-1PnIS:_ *4 _rܛb\˵WJdtVZCl膊XY~ ZhD$e6R,oirOJ3c'Sx;1KPGE(@myӐ dNs@v݊dX#R'i.'pgܐ/|[`GL8O]CclY=s'eVsf>kږ7@u#ZXv >MA1xU `C3R<`WVsobǘ}q(bD+=HuZbA41ٕXbmҶMj.F?}(py#,~/Vʜ<-=[óZL0g{@}X->he_L )khF"~!Nնv?ǭH ͖,[uB ƾC:XHN$+/.v[F)XޠmrT+z8HؤK YSS?1h1Qj5+!݆3BP#6g{^%0=5[ #W`8ۙL_\#(D=m 9~p5;ܫZ-N?ImRX\y=ޱs0%:)uΠJYf#]QG]/6K-ÿB, /p⟊܍Re>D?6A;G!>8~sO1*3WESh?c3T C¡1|6?pJo>,E;C֢3Dz*lwQDDv,j gY1'.~b)_K$]Tp|p,r`` U|E/# }}2-څ$fMsb9:77uV)|frwny[uu=(DaZd pM1d }m%QGdzS?_x(Ifh`|7:R] ֻcPd{0oҋ氉ɹrw `$BH06''"8hh9dʉzq7K!ZAר{:JOqba"[kVߘv AL>yvpvͶ潢9/82opj`g%(6&i?a8&;W[ߦ7Ydowj&iaY3sl tSp%#$T uf:fv4 N|jؑjۚPnoUG(;w㢫ĕ߼}vOjvnα]]`Ef/LoAtvrHy%XRc2phvSE6`Vul_BVr˫cp . I^a'rYثvY5 J l7 qz/(~Ywhh>//HI?!Ċ< IF tul(Sژ&7\.V#?سȮ]p|Qe;d8"S^%fa,ɨtI#K610Obv=AOEn8?x |7V9 *LH׃ʀơ@Sʕ`]ҹu&!¡ޠ| "bv#6Î˫Hu\ȶMj6eKQO 7pc6D *EYzz\W2@Y,|oZn1P!?l ~4/!ߪs"6K?홆oa4G$ Dlh6Ԅ28#GYczԎ4jZ9NDN#b{+:iL?L *LdYt_ۣv\,owml ) qxfJVjbݯ'h2nca-uIR!("(M;[ɰR$S_DNp:$;{\ .z PciLsJ>.Tà +3@ H&EDUuk MX>/i98`p9=[~%D˨ȇ~,9Q]tCaDzy_wcǎ*7(w 9kV1tF)<.y[ {m[IkɻDC 2s[S#0;wLc mKR K԰FCvmЈ r43utˍĊV2\Z)v 'Eb%Pf\[~~9^rV^D*{cϼa_-kx~z+qHkZ%1C6;QzCgV*lZMBB'Q}_`tҮc{@YGq"x(5$qE\kO=B9yquep,SEfH=.!?r3/3t?{ AQQ-t,Rj&%fJ6ibew/u<~s h;gkI%zO}Sxb5x Q`2hmK*G飐ZG~~uZ";"9mld%ѻsZ+'JA9 &u~rng_ÀX;$Xu6wp=ʲKґ42OН#<΄ǚp$)؞jˢy$jVr]Zf&:qQ- ,/FXR㊰ \qDNblf'H .D0C6Ǚ&?`+F~rk\Xfqhryq`'\\?)-UDHwAzG y+.}JqmBS 4tҎi B#<m9i9Y}2Lq. "9*/L@M(>%:pcDs#t׆'e&JK9CM8aGFhan3Tk׻|?f#Q2sj>~ KYݱz04bi#LNB>]dkGD.Pzd sDg@,j-q>WkYIR;;RBT(ٓPb3ͦI93zy%lrEOmvo_8OV`gQM1D!n^[z}0|i?rE!aN90>9Fk=?=C8?iEp90Y2S(76䨌Q]#?\-`ц6~ IW슸Gɠ.4h4V5d;YRP!&9 gN w&N8`!r+%*ѥ/ch,czH">$w`_r`0{x&` _@l9mׂh/qQ yĵ-Qae:g7=SQq.FӨ,) G2 kZMd ڑK;'Oo}Pӥ;ȩ$a9ى| u%S\!=VI|@RQV9zһ - m5o~vFaNd+{v[3?95P `~hrx+tk;i4cprfA^<+`` ȨxFY({j`G`Mu,  p qF`:l; 76:ƘRtvW>.nO2u(3N퀽$]2z}kV ohQZENN1!KFN4dsT r{uǁ?`3/[F?zPiOTfufaѫG]tޘX]D5 I& Oz9Sϕ%T`\EˁH{!E*]t z*e`% ,H$;p|[SK[=hF:ĭ7E jȣ$׼q+G\0ٸ^0Fۿ773D|oOmNJәbV9=Gg^N>ŦN*efw4Wٿ _㹙6 9{ϩjp>b.6g5oz:̴o>Twzv?O5Oa"5NəޅL*QchL_oR&Ui娱G]$HQMT^CV7@3-dhR'^A Uׯ=rβ??6A(xBu8%57H*ύ7 ֚gϩ_y'o V.~\PioBgw[uyE%9"EԸsŇzԮc FFmhQRLY_u(#Pl?Olads=)z6ӗ_\S*0ñ=@7~»Dzܿ ҵ+1 ~˯d g9e2;hQggWOO@*HNJiWªfVJwaP9 ]%25_ ̔E?vrE4\Lnh'> MfzD[XS8FAe떥2ED uDӺL;[NO b(ػ\iΌ4=]d 1m\1%Kktj>{M+6%^sy&G ƙ h8 ۉ}/#bN8g H' ﶣ_7ڹ'\Jijg 02Ilhfӂ g%֊ &Ҙm=\yŠnDizn3ܝI?ݐ.Q|eSA<-ȿ=g6>^SZ9S.cA.u5ė7DHis2X8 '@]`bV<|q70'eFX^TlBxU9Ac(;l} 'B~~;/,p3C̕ﷹp2;hU5C<FBwqmF hqzVvG| ZZ= )ڨT|Uny17Zl>,nve)K#" \̮sA48́HlM3O$ :; }bbL{aW!= 98K{xiOyW)*2ER EyvDIݭyŏ*2v=c/`JvX))@32|"N@6pҬn(VT7d--a*0Уdrcq8y,*6%! ?j*mE/B0ԄLՒ_<)W*tRKŊxT?`_8k9Y^pa<б,//;r0v>x9}+I%+Oh{x=e[ B zg?R^Ca:7a˲CM렏gs[>LeQ/R14;Ōh@#XyMZ65y O1PvfMeDK|u:Aug ^zrVzl\І%nS\V{40~,gH4%|žCO袪bC:ɊigՄFD` =zerCzcR° lڝ~ìHfr܀ytLVCyVTVaX 4 H^N]9Y͛g')S_p$t(ܾ J-O`t| AI(APv\WyiȺϛ,i}}oЅ1{Fv]ƥ8e]js)yβ]&bǕT#~zkpm]5ם "]KNqRF毀 rlڶn$ػ%b6|AY8C0% P _ V\ݗW4 \u>)ǹgO(&=S좗6^[ |֎)FN&PnYo7|RyҲP: ~i dFT,3_t;f'[s\80YzhVĦ` U6-< :'LsJ'ϪPD]7[+vi"#r[V'lZeU;k#rk<9/\%Z/vt<\9ʒOPq聃˄iLtt-t APh)9z&+JNXZa$d;+e⍗n떉xt}`6 -A#E y0ʖy+}K \7m pXȾUh>\o##/ Gf79A<B+MY`f\p m?`B}bL$:3=u]Dv(7;]yNUKj6SF#~rbX( KBz=>=vvM [H7n@ܘ/+Rʞ:t7$DlGφ1myk410<䴪1@4~c&vU`@) rGhuTKz*C>$P1CڊSfߏ;<O٦FXr3ZWTpIbN"?AH~5)t7r$O~us6kX7;M2y]Ś46,+}(Ioݛ*xVpy=cÓ`DBDCE ǭ9YȀ +˼h'3(I=(˸ 4_TlŽφKFj$ikn};@~ck (_G^dKp~ͬ@=ƘlΉ T~̑WZwM'=ҰJ|;֕ d9 ĀL?X٬$;\֎2.gk&-E%^%P";NIIt/ (Z!FċLVJRD"K{Q nVrׇȷTS ӺdOBoXA$rQ]1X.9KUgMg*\iBx(q IDtb$,3S4P3(f>Fw/4Z|I\TV =D 3DせHG(Q-rn !;=5*s2O D} $ CmTCMevLĀ"jY~촺ڌ@^S3 .N1\k])+CU^qeRyj²qz2(V+aMA.ezMH 0N"K\2%][vq~x6f^QܧԽ[yTT<;t5>(9[V-tLTE״*| Z IPJQ|{Hȃȭ[/R֣I-_#?QĿN6[+w"^Gt ṭ\ʱ5$#Zy?ƪk[hPESxE,,ruק8Z՛Ymg_aeYp ]`<rgGVHUiBEg̻ q_%mu(?Sv@!zйZѮHTaͻw0^G=դkuL;2nq$kac?s Akm}@;󔵉"njĝSx`oUh99=/wIDcYaڶA\q#׊)_LM({ ^<ըf3ƥZeؐL\&z|Բ)F/1vpT>,^&@ΗG봷@k_pP&Rw!AtH+y4!_ Ơf^ Ly:rS=}p su=O Ϊjn#۱8=0!zDWXYC[Lz=lQ)W]M%84'y  ̴XgK`uJJ hJ3C[NA||6͓+R۬*֐}1Jq21@!M 2B&H7A7 A"~7h KnT%j/?S- LiTFlH c!Dl74_mE"EӬ3{!m).o.MrR*Nwc(<5Ժѡ c~=Jn]oW)OoaN}V"mglXUr֙ sp 1B.0[OP ۣ.@2m clPc;f9oc~_Z~U]V[!C-:˒6"G'%i9|!pCivHvQtAbV܌V_s O|Ҡ` dD@++hfWVvl%|\[T;Y9:" DbVUo_+ dGQ#TG 6D+V:5'Ng۠=Oa\㈐dtYaKK+:2ܞ[r0L -Su붢cGP`AUU͛_-O, }/:z~}g]~CP=V0pSDeڋD_H4)ğUזz,ðKфY䋰87d5þ(Y/!S. XOCc:Ȣ 2(S[܎V(TNORM>b!Qyp`Wf M^ tR[pMAisrjN2C-1z֎;sqm Ǥ q-}ΠS88˩9%0dR@ 7_a=6F8dO,A? pZBY 7^àphG>놈r(^H K_Ǝ6ptD z΅k۹lz)\2]jt)3F#F"8Q!sȬ}lR[y7wcP T4_%.9)]V`yL:z1bYbM$^92pSYs.G?MMRGm{Vݖ*r5RҕQWfISܽpZ r8`/Jg+v@M6츧6} \Z8.朻' C)>TE<q1/.)*AP`(HTyVUU{7-C&p'kA^k0o RFf{ :o%L(2PucM''mW'"k~#BʁbP?ZaIvͬyB_ao~^ O]Qض^TՅ H m3krW>LA+DEnGA1|tX3̮WZ+㥑v:/Ww[>e/ZWig~X{a96cɴ݃v3}uIҵܝrID68SҼ'Y Zv(JȣqY^ 1TMF&R_ir{R&aVs|ꟽ?7uy|L׵:}1R^8v-nW1iqņ_K.%nIxEŹ 6_ hbx\5u'OCWZ1J8*g^|milge`HUPHC9z00VȪjDʨ+~&Y)1f `Tzx'ŀL.-$>*Qg`pU#=t7X](WOx}D7PEؘ)̗I BE_{5/ػ'ۭNa^ Z IV@N$/"i5߳E.: Sb9(;E2e0~3Pw!F&M|Oyco vF^li{ 2 b3ƣjiVD [=^[w=(3?f[V9#.;xIyf[ ZS{:OM^+"_:X+?'@߈4? O̢WfLzVd 5ӤApϙzz5nË"P4eN(\t% !{3 ]p^)0@#N;x }ߚYO1iD5scɃs)3!2%Jx@'S^ 7iU|z$l(v.vy[pr}k wGOi}jGjIVQ9"QÙ'_U6u*IP/-'8Kq]#I^-oX{Ad6|2fĊ"=w9B<>Vhb!;fKi,[KP|,s[LzŕyYyUQj:,j=%^6 BojB{Yo`+hS!T矖U?'z)NIk} L8ri~`~(%m6gj7dY ,+JTv`g*PZ(5孬{bk%u[y;R*]iQJ"X]I4߀:1o |F;ix.|j}S5QNXصnΛ/xɯ)8}j֋r9}b~V&73Ns鈤`Z'Y;dH0'?z.@_jI@l 9""*PtGO@X]fď]Hy;\o|R!/t5tB*mBl{x`L%󥔼RUͱڣf8ZnS MS(yG6i"LvH S HGj}x m, O!0UKBZ`(1zν7WȕGW?В7.+H()[oJ-jծu-e|9$DofVŚۛE}<&$16'[p>(4 H*lzWbX{u2=B0Qo6ږM8-& \_򜓒+xt{GlUZ RjkqGO0:Uĩ\U]i%Z>AaEqDtSZX&iZѹ75i$ѢdBhH sf% /[׺ҊClz|[Aq*Sc5(ͅ*۶-ٕV2,!TJ⪗ilkC1\+ZBF ;3<ƭJ^/܌) q$pJ((zIJwvi-V?b'1}\\uXh m, c<.pߍáУsۀ?3\עOPFFL0q5yBvi8o0CG<$L7{Wr5+ҖdWb~%fJͻjeW81m*r k@惻ߋB8 UKĵS~!z0#969jk"voƽy'$po"êb9μ҈ +U ] H(tU h8![{:gCH\Umg7a}/`oVKsv!&ʒf{]0-`4(Q;YEG@aQJS \Pgjl)sy;-cJH5V =P}n|Ng֡^UV1<6CJb␆cZ͢7"($<,mxݒN3}5;3Yl(, ²ZNz5$PTOkq{LS%/Hf8kkTZcII@6KGjQggv)Dg#*!řظ8/:;(°kI 7*0<6m&4IRJjp"p̬$QmسDyڐ+sIHt" j舜_3Pm+I9]*!DKΥcAUH8Zi%V2"Gg Foʴ,ңl"=Z[ 43{qx:hTϻq5rZzE1ZhN%p -7P4Wc=-ct7d}{b=|/OARbJek+DXPO8EZ)%t:'YXS|sܷ%IDz$S8{f t`x6!CB~$Xٷ@N GXCfكȏ#H 6YxEgXUw^-LYxkv&" @)fV-ho]yXj`!LgNsks BCP-KH&_!4j4UoWRruή=T*mФeװ 5Ke>J)GCSl.kZ;п7vyçB"(ZRRܨi<k$:A>9(S@MJy9ūeԅNG_ʺW ;5EREnٴf:3KN\0Z5f8$L b[~uUdEMi{ 4 2WPtCM]5%?E̢ ~5ּd<3nz`1/ FmiIK?jԧDf ("vGEEr["? h~Ci ;b4mω0)@lDKdgVESb)cþ,)2&xn wq z %ӭ^Abt#}YaA}xͥS pV샻qev$$K+ZOaՃ^}#8EتU,a >X,QZuDj) &=^u-&VD,O>hޗF=U#I[ KiS xil>ԠhxSH 6m y;_GzSK4JSzfw F> {Fi/h {?-È4kJdm> Zw.Qt־M:n5nΠps^ 􃨅c38Mc^~,ie0mG: y>iTh ]mm! vg9f,lʁ,J%B)`R ;l1?5w6e[6Iv7x`uWTER,( gN6¸On|, 3(Nv*}H{'K^Wol"Y1ZjvKO#?aXc_E9J,ɮz4ib^Su?TURWt{CKqLժVԞadhAG &5&Jp"FLMPuwQaVèZs?+׾wAS;jfmr!]F=a<5ؠQJbI:Ư@r$bp)0^0Bީ"K&ハM\sX2°Eb 䐦7Dyj!Z.GrD0{hQuy[V9n^ P-cɰ۩SpdFduWS[=INm-a}8\Ǎs{AG7Kq(6(#q~qƇ}TLtP|HOP"|ju}>1ְK0boX"ٌQ8 ^/nfxF*4Y v{H@-38i@{/0tOrp:l,deذk tvo.v)o1 _|5mg90€Aۗ/c"mJh8XJcFtc *kI ɶsGP֗h6ٷ  j$}iEtAL.nXq0t @t!{<$SMJk5YsQ@`sʭS֢u]r;hc,D{5N]U"^j!WA" Z%g]E{᫪SdM& ^*s-DYvA qbq x$pPf0Ksj7&g(iLԂƒ8<xB [-G|[FU[ȕA/P' ^m攟ܝu\d9t<LsvM5!'3ST2mMd*z,8oYy"$ ABGMWKˀ. q%g*AwvcaW6kD zjc+`B% 3f.**=ۏЅh"M45@(R YhI!^ CG(e{amٓ\w%;!G{V}S_,Una%# V蝢%]1Re(}dp<_F,0ȝJ8)omăgl'n<_ۧw{H+%eEHfx|^?oK]ڤbamx_j\*~Iڔ6*- 7N\ JMphbZe`Z2cr~~9Y{-j9`BqXM: |F&AuT8%ܽLvܘt:%D"IHr1_u\) ^W7*}odo;1'XN] /0(r9V|"C|^R10ZK:-K;Qx5<Gfa&Th?jXg`ն@x fu[i{9&8og_%w'aBa^@˦D:3!>G̃O#Z=d۸K(۬DduT~P^1f1Y4H_\-EszEC&d"~5VWy&{Xd0Cy`̞&aN| 1JЇ䢼1&)/VB{={LBGY`U|& C_[ WH>;’[rv~|ttd_`819F;?|~ްAjobz" "ˋW{nρ-I0SSHCSy)t }*E;-x&u 3sݥZfFq aF(R}ϟvE گB6ȾXd b~i?E Kb!*6  OŃGMZ\+r6J1mZzT Aꦎi0sb ߠtGz5d5I ܝ nVnif 4;m7*&@8|3.#O+J`|g\5OS-:چpgq=Z:P_qB3r_%)ސ:^r.WO3)8蒭VD] T/!t~0X )vΒV2aC/Eo5)׉=&̾ !3zw, juńj߁ ١_`D9b#[}Os:H7fmvX;Zmm7j *= P@vgfyjH$8UM|~VEMA=VH &G O³QdfB;OzpLqOёSI.~b1gh1`X&] p*-)pTm}^'|Tj(*Q{5QDwāFU 4N&='2%&W ,6'+r3. ~*EC":U+X>?{ KyB9Ŵ#悅|a {= X) &gY]OS6q!?= Й$G `ఱgh˄[-: ೷wh!Y0qC6DV[ՏZNN'oϔŵbH3 #JR=Z/ JVQ:.ӹW3 -\ת %hpn:m}hpcv((,% (~8uUZ (c4lq+ُ{6 ~% Et c??(e[[ - y=F5V˥m7hZ둾ka0NR;ņ;hR]E$p]5fr7^H#bar@832_$Ut?1/۔U] ";zc5ۋ=XlYBUZ.()!^A\WzJoӉ!f\{nE5țWx(W) D  o5dd̈2-Q21t<͖ r,@0T Yc `YKϽ@ 5c$BnjK$j @m2/U-<=@"f[`ʙ òӻ 3@ܘA7 P/lZ8DL"+;죥[5T2xhMJ[t]:.Qha"^)"<7J/p-}[L$Y/Yi;gglG9Wn Kri/Mb- FRNB0Jn< 2K87!ir549p5$?#5 3`!ņF<ݓt8'!*?PCk}4:=+LѸ7ɴ2 i=#ً= c+d Xz,'̊aǩwd Ae@1vwjR[zU^J;} `HIQP)3\DbuqRm$#GvLqr ܥ}idi 7}=6b2Z̤6^7WUK4"F{vTJ׾'3Gx\}} WrvKH *-mDy ;H3>ʶ;f}EU?)hbC;S^նJ^̗AfbY"6uqYc╺[N>; Rej3b"5H:(3ϖ_U ysV;;)$ x6c _DB B3з^*]>LJgC_ 7Ҩ59X{{ɐè%o+Ǜ}CRYr?1<ÉQ'^&Z'%:n}P/fn)O s|erLȼ( *Qɾ񧸽<"peMG2=6mXMV][I|PK偩^p''Mor4ii7]iJNlf : qA( dt|m۠q՚-4+} 6=zW}FicI5,3ž>m4Sʋ'ﳳ~GH,+[!wL"1Vlu*L؜2sgLo ?}K O3Tu3*Q-fT#;Ͽ -/9o/^Ϛ5s šW6&+qc9 bNxZrr}fnOŒ^5suf[@tIa9!<ϛ4풰X2D7$| 筤nt gx離Bpv5F {7Y-cZ?C`^H;Q+I]h܄q`ZMڝ Aw 6$ӨP&>6B#&.NGF{<ꖪ'taN+E0q*:Lj :[t*,+ac.~F;M*ȇ͈ffҷ]x ŵ "PdpF+juZ1/v@m%`6Oy}I" :ilʂahZk.#!J-yxU޳!7KP(\p+Q *KOi>er 86v"qǕ-2٢cu1Ҵ_=,A+tuWV+ BӚ KEǸ%ˤ S?fgX5r}#g=P/3:מЕVRvavQ~Kr\H=o1؍s5TRlDŲ 7ߤ0/7G͹qhtQ +3$THl#Dhq2CLrC'x ϫ CP,QƝݡ hTd\i)%)40-Ejަbtpu)#hǛ19ludLw%_WHJ V8'd_[]]t3#]7?[%VŶ.} uI-Q`g}ۧsx'b("dyE F͖2'e{ F){۩W8#/pưO(C-"Ff){p0T^|Ia\@DNݑqWU,D)9駏RIYaZу,|<.toLBW[Q1_}M%gL{_*LoAcLp= $˘p1 {{wSV"k.RzuPp~(%k[EEy |KeoVlk>cB}-!dԆ.i|?O!Hnlk@Ed "J~[Fz[يDm+e(p%zy4v-S7?.b00 H>p1B` +r˦%[5r4 }o#<6.cT5X?^U!%:'h[g@,W{qcۃ1@AXE7Þ ;1gaMh נ{ Uߙ%d/nH LWwqMu~ pQb+dP\/iOѼ.)E@s̒`uF$aK'=p+ (0=t"LZ )L+1z8xP,#z6\iu8Hlc !I4bl\)b=ZΆYžM{-}b6c m- MI!w$֮2Znkΰ ?A ne`3x[a T+# x ~b7J@MYv\pw_q:@Cvcb`$u)5^T#ts1y&Aa tmu1_|ؐp{K Gy !(h{ "V_aODdsHG:MY&!M0{ndx.E6r9#꿅1MOtPomU  O !UqdᄚEj(ls1` $Hϱu-⃒>_UqK=>Wߨq2B0t$N>˥]D|k#xDH]Ѡ.o|?{ DȌDƜ(,˽'%$y%TT)MԗACo|OڝLg^ &+/*FFKNbG,-_CF5>kiI8Y@"\iOrU9 0xhO_;TGИgmo:_ꪪ=BvqXsXjN< nCDզeR!?07w"$0Q 9Z` Br 46bwqq<\I}9i|tSG瀊{H?k{oy2@N K+@v?u4*љYk5?q0>O-U$%U^DuO e,FɾQӝVSܟK0]Y%×ڼc4;g0~A(Dg n ؘR\Y؏+ -'f` 0WK$|/x #;.VX؂)F(HCi T!űvUD0l:Ǜϻ|tBV:)/w@UrV."a)@:pTL>=FnjA*/jk/0% ̊n>]Y)@%i6 K^k~Tzc͇DCF07bFڸkx HNnZ+7?oM=sz<|w#~5l+ @apړ\ߣjIGE:\ZA Nznmc%>{—qhfQS b2ilK;\zRYYoLW[ #c0Z5jꉨl:kQ=ؼ6Eʒ O Ds^~$KŃd";FߐEn8?ZFiq3"}\a:]s$];X FR:NQdT=b뚅Fp]Ke>IlgW3l$aNhP}=lŋNrJ!}>lZ{pWډDž0Fp׶;BR/}ubpV3~sw d']{H1#R7 gbx9S־oĄޞb󯓾8Ό!qP3EH#hx7ɾ.s6Ėn9vJKQkzhW I' [npa( TX?#}&8c1}G_+Qݭ?ژ"|!œdݯ`x J&M1HĸYIR}tXf\v_ Ag~媙,x賯JfDZ؂d+rU[!sI8Z A45ASs KoM᩽W]L;k5(X<za;wzet4!ڧغNw)|HcVq`>ɥʏuTKqL5밖J@^uK?VIs|,ԏ~2ն"7۠R* !oؒk|IKUְxN)x˔n0J69c'0_?V Uq 6;r/av}Zoob%qB+7iwSe-`O2=T홉C׮ѠLhg QH9qWCl-t'I,ua6>z(dqT+#G4.SGq[v`H:kQڢjkkl$kScH2S"@}uSH81$6F;eMڇ3 t#ݾ^꩷8`[_7J2aCr%UD!r/4уfdm&!Bj=Epfpœ(ZesEÀn < aSE 3,rNYvnj<Uoäm[$h2 )UE:KfCTaPkp.ddpB͝`Jį:o Uڴ=$^w4 $u=>pnb]\3 dF~hIArT#U]&*VU[rc'*Xe6#2_w'RI ]qG8Z\i̲i*4N#= -N~!\|&ƅ歷МԃW/Ij0Zag,F /0|v|k6L6 0j : AŻmR杞Wrc(E(rzt'Cc3+*׳ǎ#DJ^Bmt Mtj;'!@ݞE(H(=uڍYPLeM!)%FfIu3>NeSG$#eKKJσs;ߏ7GWԴ?( 0$ooWVɠ^Ȗٖyp wq.IJp:Ք>١AwxD,:-ƌϧdZh?a"4H7%ֽ%!G).[P9}.G-BԶ=vHqgU TPJQ{6kp4U̴66-k2p5FZ4{x= dLiy{iل-dwJפ֭1-u9C>~Om]|NX=c(=68y~1=596[;6+MYFnfwHrH!exdN-`m3 :/op0Eb dӮ2UzL?O|j=P|sf+lč5koK:Rz3[cZWuڋ2+A&J\sX!?;֨wS|>/񣣜{$mV㓗V>f.8 ٴ92˃Rȼ$gs8k?$Kl1h6qn&aGK=Hqqc`+E8pYxOΞxG4Y9xBz4]\y4MD){%CʯyǷ%]4(dR4SĥiM`"/Gk~l?Vq|;Af_Af;^TT=fbģAz5lI$'oj2AfY!@ij{\s^涏^7:.Ag0lt"{*9(M(H^\}8uʻ09t& GL!2KNa/hPfOb. xm֘ tn#pl֕* L޹,=cl#(_A뎲a4inVR2AWe(lb+A mGj@)^!"8&@-HX?TBv^9VKPsUekIJ .n *ri?9g>ޣhL|n34=ؚ: x^Q@#@ _y~r̝YꙓCvnVc:1W].*3p`[ݩ_R70ñ^`L'~Z*nK,OX84@PE7LȪD4dײM<2=/ďձ˔hfPLdPSc9ؙ]WuYGܡiHx8+dRa[Īf}0&ۡM o[E,K% 9C|c~ľr>fIM)vg1GNסoL]Y=imɽHc$zx9eQᯭj.L=ܠ?, VRY͖|@]S!nU@Wq6^s B`&k<9xw1HPzXhe1ܖPӔ6fZ^0\Ary1rU~3OLZN=L*FwZ;좲3xjF b|=I$ mJZ%0P [+g0[+z`3 ݐ{;_(rPLIy>AHa!E 7̧$ٟbVlx;Hy4 *?۹VP&ZPl^1)ӾiʻQ3H~o}!̯<"#Ef_D%h+ `/ONpunT#B F0}^?dD!g7șv=[+c%\n$*Z|ڂ/vl/3Y0*&5yfgd5m|EetR]z.4Bjq =x4 `wi\s;a3_bwPvD@ظ<\kW#`Zh(,E0g_;;wBW%1RG >:By>+"d^((<4h^"X3!>gY B I,p8ϬT/8w !P4Fr A+/8̀Tpcbi?jzZ@TH)v$:'H>:oP"xR J+g{w~`tZ!RB]Y[b)%VSzM r_@90V+4hRGLʴ! FoLwv~p@)9o]#T=`3aKˤjri5  x2830 Ü*]ks'mUN8pT\`0N!P&>Lo'rWX0A.bJEeLF,}Kt\Ψ#%K@"$Q=~J%GJNU; $jbX"d=i\9#@7DPXM4<ɘu`A 'UY5j_*-H093I&rs)ߺ ]y]56`5;r5I_a('7w#EQWU)w*ikὉS 򵃊dRr &!6n4#|S/N 75L5pߎ]k&F85G6_!_ꯒeg!-C׵F0g*T\>+_tUF>?mRyj8̸'jΈgI'0i V:nz㷗H# 스+]aK4_Hx,?5[6EB!  )!$-Ͱi730~e:tlMm-]JɷF|,z)O_ qX!oC\C"- Cg0;/KmrTydk54,*lDS X|C?Q_sչ;*``R2N FE'*"f˰vEiG9~Kô18Zs3ė$qӜc'VyЉDFДCw _Y q:(.8DY6 gVp H 3Mvm*Qn,).) UsFTE^ɵ4E-oh:[*n:KP`AO"X\bu4: NўQްpt@E3ʼn}C Ns2# Ådp=[Fy$=)  xNzFgC/h e:`:'3dQ(X jn>C/tnַon|!q{[ax͓\xd3fWC aH#K s^sMP(\hӇ@enq'̻Xc IܕfHmA<]r $Mdm!` S_ݾ\߮ tCPaPac!O{C#a*-D pգ׳uoLWr1Ha~YtU"|o~f;q s$d==X%p6s Q'o(|7K[ fn󎀭Jݚ2',5IhFm ,s<%AD_Š>7u_r1EcAsK?EīʲCnk1JGpp|<4ufcS3rvdw)8Oe킒сߖcW-&87R (#yF?珻)F7 7n˲ gI @JMaj@|ϩE:aE8zeI6cRl!w& w`K] LglP?Dv.Rp/o+1>-n4~+;Dݸw_La\dYJN$F2A(jNe:S;sbH[x:/"M8BpiOjxt c.Ӊť35Միcf? 7?CsF`^1 EM2|xy+,EHUwSʤ/VXx:9̥Kq&ꖝ1\{ԁ%RB"yWNdhxCZu4 aYQWESK 1>5á$M+&rf`vzYڐUn3wU94%,*Bh7hx+eaݲHSr=A(vԮsX#љ e\b1>+fL2.?kAC;Y琬c2 x?sj$&*7g(͆K?IHe+p S D{^E,r)ňPx?9+ܡ=ʴYYR.S9wp3râބ*s(5_JY\ ì?ׄwg&ݚs$ 'PmZױK"|Jfy֐tЋ;:*@ kKUa47T|uWZDcxjbqXXF!b_!q#cqiVZx(B2ۿkGY3T"}cxC%$MĦV-l9QS>OI#5M$B&f\ѸH:G=~;ɢǓ$ զD+kOZM2# D@@9(`S2ĂrHK|BsDFvn/^': 1z:B 7MŮ| uoeyNRg; ¦<J\ӽ7a.Z9ze^T^y^b/Rm'Z0FYX/~m;aXWaӵ'T,*W뾤u ceb_k G8dD6C/~7J2V+uT*Y9&_>|^Hv#ؼZƑChׄQK@vSO.4.@$=GꝘfD$IRAtpy,;v80ލQ^jaaLI>=hh]PyPL:S]+`l\aEXlp:o|{:1?eӄݥH:'І$n 5FFVkuAm#H^{8l~"D%Y[opn,cxs)/+|r .=v IѰx-0 KbLj1ED!{aW^`{φ{}XX_ )#KdܽI#;ҍQ6"HpyɄV<0=| ʛN* i"_lglq]19X!$&?-gmaE T>|xqTלE i Yo 7g=WL!3 _A "u} pNvNؕǑfzА1cZmuygUS&u!NХ\ͪlX ?r[)24msu[{3Vfq+=PٺњߔrԪSte`j{uE;~})կHv%e/[Z/o$EG]FRw-6r`^O VW݊D!|d %^k;qٖ,WMױJ<}ud(ŗ& ]޺aS 솥Qt9bl\6UjnbbXG%1q1`hew+.ٷFJ.ik'lLzzË>n&fPWlck MuTHeR2/N D&2T>5P_`t4c1K3qMaۙr`lŮfmU1AuK~7dB(>Yr"^v tG*%+- - fࡷ}ͱ6TNT]P"lQFI8]:Υ?~"l RP7@HAbOCc_pXeYSCES*xYu#7k$&ƻ;A,U5mt_,KwR؎/ G*1W G~Ǘd{kWH4#^tRzMq ϢO(qgG6^bŨu(S"hEI#*G% 39x;<&Խ@9p KuQ(]o$ (%|XEhX꬟7+NڀԮ?5dTbJGlq40&vn"Pgѓ&Q+ޅK;jvU@W2Cm,%~I. Q(^KN h["#l{&@Z+wRZ (1C )}€t'=֪q`70z-_^*]:щX6@{E>hń~H T] O-/z23΃>l;#~kҬqv\8+ lbe{e9E'1Q%H-"U5.w+B6?Ϻޡh/(O?;A3GWmBQdc3NjQ\ncs \ћ:]Vﮟ́%]xE`qz'q?ltWFk1֞8;N@Z=N@{1E%詑Na\"/Udy + =6UR龊[Z:0vmvσ;jf=k "48lOcuR&E "%(L; "t.k=(R13GTye53Q<![&mli>͔~8̶[T>;#0 \ }P^!N@2M?$%ٳ)%h^&>7bpRoWnB>*%:.FV`]D#.mq'2j lGt*&QQuݛn:UݚtNMڇ$ up>1$J|DŽ8}YSPy$y6-N7!.@ SUuyMn?mUYyG=`7.9HNۚcAߟWO}׉~hxtx 켇wB!qj'gށj%>(3" zʰYN^i9^ji)Hc># NhgfLE#;/t+sL`?; oO*2jMHUy=0$A 9F#N䠸xNX.괃Dj+hwm'T@#`+t{hYKԅN|~ o 2ib1]W nWo)[a:sPo@^"yr*I4;٥N^ <[I-~4Dt+>#>K`qc`pvy;h\> [ZbM񡐝4]8&T192xe |CȃJ8s8EsܯMzH}_Fvj"LcƐs$Rfz](D|Pٓ9I.PYa~hrޚ%?#ưK7$˩ A荢 ڮ~=Ǩ sR[Q9U$wWq^fwtfbu!UMg^(w-܉HhEeo ]޺-$`OZw,[}1X+O<](zz/=ߌAL3#=|oK'kp?҂ѽ?0֣>g>93ɷR.|@[Fϸ|(EEڣ8ĈU*)7tWhP~^NH}Hn;Jv#w,{Z ,hgSlxtDwgjoFR/(qC?2Il-rIz>JW;2?ˆ JR&nhYOCqϙjjMs s_Naglp:p^2Xf#=K^ 1-N[ eoDtfj nO7Ur`hA)hYZ V`" ElK>" Fc{>ƝbЇ]ȀPឡ")xn&p pW4KЋG漆ҙ9A?O |Sv6& bxϷD(4b<0Ot.ƒ̛Eߐt2UCinUJewx -M Lo.Cx ZHX=MƁg+ۍH4KQUY~WmJ46zsSaG㉪A( [҃8?w1TZ{TV{ZW[KU,ک! lPh(jzmEqsWI4hIj@MrԞ/ocBL/*b{C۞T͆&-Gۥ7N0Y_i@g^ wj7Ƀ8Nּ揱#RIyv IV|%63sk {vKuΧ1OsH8)O,1fweȅwLjP{_gD7m1WA8E2' LwҞ8t2(){G4) g)*Qܣ?]%ƞa"ZPQ/CiHv”<,YcՀ1T7H Eۃ Z7wu[N-t7}"%qPE|K?I6!V(ow`kBvII՝v$$A6%{\Nn-t6Y& 08@ 1tSɶ o~?'qv5(R& Mϊ ߹Y]t4J\mʬ7y c-m^Py,K/luoSʉFϽiM?+Pid(7;ՊלW)\χ 4S`l)]˃5~"#z]߅R)h#[7gb ǤX L|pq́ e]@!d'=i9`d0C}j[=]:2>2==l6%$HqbAD 9uHҀ^Ʃ&5Khj0A]fq(L:献Yd_h0 Z% ˹E=s6u?rGuѮMS(.y x{[?jÿ@$P+wAV##r0 0D@ŋTs5 w {Ҟ_-eĥUэb ě6 EוQ`1`ǸǓg[ w|jN5[?B/vű\Vr$D@jg[բ,.ဝw<:w[䒜G}oiXS⪏!q .XDfN _6-% ~j;kx=eԂ{tCșp\=+`J9_ZY\EjFxL tq0B4kыW^8UH}(r-͋C:u<%6[VnsBkyC0r]yOטf>8nIJj8 <`26'!1Ety푔@a n#tÐI!̈́^ϔ!G(qVcIr/ 1nɸ*2^8++Sؼ+K߮jDNׅʘ.?px6`(+ s98pkӄ% `Fu+|%d}j:b^W-( 8kI6M5@5@?Zct"[ZC!9z LsPJۼJ 1PY[hdC8{6C%\)יIqQͧwR1Wx*PP-H3P[+Z8cow3bD*J 39 9<(}?ޅ,CA!8;];JEế(k-o1+Q`B*,=kh/0 ki>WUH`TRhOg58" }~66F\iظwwOX+yѣh;&>ԆiK!MOfHLrs Mh>NxCRtc4z#$_I0B_`J{0PB۴E3U&0aG Zf\w@M2߻ѓ RV4n[;;wќ {/ֽOth2eݼz3+blLƉ0lkSo""`j82A.pp r8?+RS|#zkd-Ȭ: ]Ä9Tg|7%zӊGDCI`l0(56LD,,.| _\+rtqEJM 5aD BVϐu:bJT" 6T"WKQ,230c(Y HI7ϡѼw5bhh>/L'G8d+RB` 0l傜ƅWC.@M0 S=~? aQ3ۙU(yhMFةtDX?I RyvrN4i\藌?Pe'7* EV>Y3ݚK݋3΢).g N"'l#3?}R1!4 ,\QW\{-Ԭƈ~̑FGd'֪>ՃW q3~}- :GlUI#(tK}gqm Մ1Wy>B{YӇMȜJ.-zvTs:KD@K'tΚAJ<;9e]uai\]@RB*JNT&x> pMkxY^ZLmLtE [ GL6&y߇:]^OhbE&5orfihlMjQYޝc0tR7zi=egNH9[\7-,X mշtN!I7kM X=)!U;A_T<@VeWT0PcTSPB+V$ 阷VҜe!v@)f8&?}Cw4T@&b˭PJys,tG6T Jbw)04pnz /TpY{%yZ5Z^IdvIZ|Uz,m >ӈLPg@oC+^wف ϪI: q6̆œAT9J${ l=^5$daוl# Ļ#wPQd|JuH0ihQf6ON_jVr?" HP lٚσEgN,Y6 2|)ؒq9N頽NMQnjbn}Mh'2p!8]Zk+ 蘅|W3OE\ZN4k|Wh\B% !,^- Yl- k^\aiLcR5:F>zL5VЫc:[ xh28ra_4}ͻ7fۣ g'{׮mq:csW+6\*S4i3vmlr.4 <~z~8-ڢ "a#lp;Ś'5%0aj&fp5^4'QgXnw k5Քғq\P&(3<"͖0k/_[FmT W7fDg졉:X CҰ$C2SͰ&a[ֳgI71); ϛLhJp=g)3bJE2<E[PہiB9cs,%y0 n+}gry۲ݒ dh0Ϧ*[R|s]lJȼW|ի6" d!&DZd(os5;A)W`d) ) $;O#F {gJ]˵H݇!8u|_g<lsO19i3/0;GY:oD $;vn_/}%#fя`-hqSa~wN7,IS{^بLxYA/M%zbV>/>cAGwФi2s[RvuMd Sl#9e@aĿ#(y`Bʼn6*bs$ 1vtzasi'gKz %%@Al]STY*ss,,VJy/U@SܔP p- cJ1s!`2[K*w-dDŽU>K6ஐ_* x%Hhe3rø7'jK 7H#xc2#84hEI*k(]?:1Y[SkhLM fGnp6n9AG2P^ƻkETs)\@,a%L7?Si޹=H`4B,[hȱN5xx.ܤ:M lCW@y5ds~k~R0wq)¨bh(A}fPEKoϖٔoOpZ@ӧ/ c<羺L15*)!3qu1XLN>2Wm' WGrE >@9uA&]I' wY?H k0ը3FFf-N1Rۅ32Q舣w;\sאãp T /:df %!"p$S;yt ;҂{-yUinO&7LDEK4??$Ï(.":VY}U*\t= (F4+ǪB[C GFbd?t`_u9}xRj q-/dF *5y9N"a7&oO9?ԗh{Ÿ=QŞ͵Ӣ~e!d~Vf m)ja]K񈝑c)u=T1?F4rNӱ-o(YpnyH.l]RUc p}DdB ]yJ}) k= ܹøŲ /Yo4#POn7_xMee|Ԏ-#6bV*/QGQx`4E.8~PK %d~|9bjU+Ay,#BxXM'f&D8J$)]akY^Zjߐ7V¶39h7ߞWl4cg~},*@HRv!A< u4do!x~M#6RJڛ~)];x5p&, ɟ,ο)s +os㼧t8W1Qrz_v#/nf^)f޳ca'PӮ "QgSxb ] BRi%bw ;jۀۚI,巆s/1{骮@wP}j1v,ЅlHLW]9U\()QN3¨dOeVk( Dsٜ *":ewVR!@Z}S6Ìȭfn!yF%ѝ*htg@M8w_#W4μ\`p{d.퇀LDpGѺH|rRi!E6g܏fwwvFd>5x [.4:f GCB\(@&lyo|'S*Lʰ3:|Ӻth9pomfvqO >uizqJ]/_v6EHX)A!qp'tڒX0J)ȾGgAeKGHh/Nh>y\Ε=S(Y)uJ|v-:Fk^-'\+d KF೥8F"5J 2izTYMəg[')@# mD/hj".XRPkNM4-fPvl!kGcvf+`ɓ+mw$Nބ|<;j<48A63>Ѷ5882CABɥWFEl-ȶՐ-w o!T '7^J5-EGZ,Ⲕ7&Ad89cܸ{>sm؁˃ oRmK Mo48nu79 p}J9>&~PtYt, )B `>?߉- hUw2UPe}Fة[?U/ν/3 [`h|5F EBy}Zaq ]3s|:- t v*\k0y5$brS|]R>c[Oa?Z'voFv{ Ո<ǤJFX MZ7[! yx,o,=~Sh¬EۛkX1뿊ll6gRtL%X;Q  (@OQ`rQþ.OjX5u՜V, /2_R*O. g38c+ 8*jBFho}Cգ䌉ÎYrr=(hJ3U {sVX{ ~VlK[tnK.H q'e b -lsgSaɍE] jOLT 2:G,0+jyy,yԩmXU7iV~UR;TZ¤e[znJcԻ<ͱ۟d4rT{`QGN@ob\&n洮ҲX&%iF)XѨcϠ0 #"a{k_F(dIq~Sx$ K 31h:}аTV7/m;w†Qq6^zd_NeRapeozn3P(ehgAp"FDC:2jj(",ܩ)d_f;s[OaiVLx5Ӆ@-ld?|"ӭ7pΦ!e/8t?^Rbȍ7 AJS ۤ*WbT55Tݟn{]XZ{TJyR1 `W=+dVb/I$/LNg'#e2 kD}3/|lvyA*,# |ɪI4nv*~DGh,.Ln^S1W .I-wSNh|+1Uk ϾoeU -wHs'R-EA+$@$1ARH  yD6 є!_ \y '%o5 >HF6#bW{ axC[ Gk@k BؚNaNA^8>ƺw 84 SMf=V^mKl:Mo紘~t۰KEZFL-YqVZhI:dGnAR6(FgXwONkCGnMmsm]"3|G" 27fWj|{;B-?;~#>f^.L|BƜbJFl(Sr޲ ZK&~=oyv%1f$@4ɒq'"cF1Ve )il~!Om sBTwۃU}{'؋Bal[)8"D85aU \ JRM7nơQY KIF:[T,"{LC=ڽDFk&|b5؜:꘴Ig-"8 p0\ u~5>,vAhi3{ϧ ֈom ^ӲK6 DYC@#{[iCрϰNx_ MeDN%}U/o<zVߓ.\NH6>6`+ᆪhsF Ncf^FRtꦞjAӟTðx3Xhu+ ޗP6s^qkk8zjY{d3}Rp="a"(cp3_rmjayEe8 z*/DѢhoʂ'\WFO " G(yA z|)gvk+nS&'0c%z\nlaiGDn>{V&1PtT@5`MV}=V2ݥѫqJE3@\U(PX{/EooAVj@[?J"u%Nc?sYjh%.v vH<4.ܑXxk91;(HW0m]Z>.+ѳרsVV9)PK%VV!,֊N568yDzoj73mOGhp'#v7߽[nh,VuxaZvNQ#1ٻEW;ܖK I7Np%:3 b73(d(f7{ϪڍouiloƏ3hhw5z$],Q\4'^}:@r0d$>}뜭9ONOkMta]%'iV5M:xuܝW$)vlb3WnUP2$;T")Gt{JR3W [Q&oa:4б eNOs*p,ƀ) )uب"nS9hˤEqʗcƓP%xZ;3a۷8^X)WZ/(hu\t3x \ ϑkTT3z(eB$lڵ_ /+9)iWٜpi@5F}N]wV%ɉWI,b*j-$]=>ku<`3(TfeUbBbf~-08CF:7+?G_}QH ^|bi#Mߔ uS_0fgSM1U$f9RKU xFTJ`XE[`uze}}qw2d<^nDdsWp%qH£(bA:6 D6QZ)BS$2+5TS`zrc˸%j#^{Y7D8pXhZXja`V 1,ɚW s[b@v%G25oCQ\]]nM+[#N]nԌV`ǣ`%DږGL~0],q:Ӳ׺DSP #7wÇe3?pOe) Xi//Xn'? ѵk `Vo+$U&*\G: ( DrHM\w:}gi=KݻHU(3oopaX^ƅI8W^%_$Cu,25*<ހd+vŬ^Q_9 coBҫ8[d})≋\}1I=`B 6Kû_YpEۘ}y|ҩ.:qa rJ"2A|y ejc6bi{`1kh͹ zԪvI^b Q˵_ vRbRԶ}s2֐fl LTo5̫=Er3M_*g:A`*l'㻬{ꠊI MpSQGaf0Gmʀ+)s) )Kɽu m`=_e޴n3q. \P::ޘo"qw].N4WFz?wr elMg7 ԧD:ί9މ( ׻RoNZ^8MO8%I7YI͘4~wmqyDŽc&`2EMLew5ja)gQn5_#^=\pڠø?,`j~D~'ش=y{~ J|#, tk z “$|Z5u Kx,Ch+6OOƛ KCv҃"@.a2[wɋ_'sa ˜>+$xe=@_GPX(XLX[nL?$baݷHKg- {hUyTLH)/=3?vuz]R:ds9IL) t:!54tP]K+he,+g05*mefW۝ {X>l^Dv 8wvU $P6Kv=zq:f *v1~AAˎMENAaEtukNHv/W\Xt.z C),*AfHo-u4W#(*\HJxG Q*NAEUM w)YRh@@dyL~3[Ckr5bun_m(s$zi U;vZ)Ԩ(c .J%%}! T /iGY>E(4s]#~ݖ3F~0 cz"+2;^bMW?Ga[;~MLvx2T$B<*=/VqÚ 2UXB@7UNv'Mwn$IzXt-p2gs}$=1XK.Ҷ77!I{SCs=l(YBj n<`LuȾ mXt9"4$^74̧ˋIQԮ -'uw˲88cH>wegzFNGF|WdC: biSHۂzzQ)2X7\qo̚c0o"KAmGjn԰ ^hGua]U8 ߆)6 ~A,ŋmH3yrĠ6.yD%'7UX;(!{~PPl˜^~_T5oV'(1(fԽVISӘ`kbCڔ!oPrYJZ~Rc:{~ ^7עV8MP8el4~aLbWJ@bH,+nб4+TivҔsVRw /F`Wr[ =(N@.A7 (ff;%o)efCټ,c*г֣GMx$VL/G֟{M,8iIIOnmk15ѓ#жţ$U ? &GWKABt݂L0g܈o]VeaoA sqVS/Sϋx4Md5эFv~}z'/& d9JG\+_! ҷDۤZ|u8TX'Htu2:-q8Fp^^y(b@=|S 3CXKl?Ù"VdRU]`^L#He|+q{ïou3΋G'f^ZH z Fo:G( Lװ,}}JX :(sz)}Rn?.,%{$^n n 8&MRг\v2\IbvĨWnq $D孢lYb>6 {uUz_,Cs"LЈG›*/H*$팼)l!xwţ/PLtP~KA=Q&Ҩ9]:F\N+[, roׯeE`"ՠBQ<\rҫ7rH( c$b"Wwi‡=Y#{fJ)*&++M׸V;ud ~ΨO%#0.>4 mjf ~Uʫ'5^] wbў/ [.ҕ$!kVK’@"yS淝pvx e/51sj>pb$Y ! xreGW-eꑊδZoӻA o,k9Q9CMN)NO&tʿSIx1x;x#k<1yZDRjؓg$Iǖ+q]aCY'N˻6uSEɦ_]Bpe٢dꙧ 2G2s "1LDwoƥ ۫F 2IN>%BDCI?yYF@F/ց| l̩hC6-,xpC7LpYmAp Aud] 7a~?*T=XL)dMxwCK? ڧPGpFVT~cꔮL(cy ]pv މm^ ܪiē̽T] g)*uj7Oҳtqwؙi%M*( TyT}{ɲמZa0>P, ^ 'iU4-b[*9sj f]څP]+}| C[%S#䊺ɕXs$ ג+ {çWmoГ#.^! L:4&q:%j? \ZX$*@:I=nC5k8y[Gϝ ~1|T\s.\]rd g,.l"cyKWaէc41/iە/6A,w'9G[[5%\:H*x Rl8T6X$.hMQ刋^6%HgV=̶[ y%qAh!VP (( G[3B7$^E0!!gnߏ6S~_!g@@ wSσ[; >f$=!(+=cP[_{SY*ck/"FH&\G£1N\*zT^\qǕ>`jҥ㽓nP H;xQMxgMճp=)6`6/v2-hˎoE-/SW1^%Iu߶?q ssUdh"cHjN.i Iwi;qbr'c+@Tܩ׿hn֒o8&4guw"VFiDiEVqmna'~4P '?#URQĞQVzJ4eøB 䤈F䰍+#;&vwpo/r.&bZ'E@;NwD*Obe x%1.̘:_ b5lN6i )dBt8ʪgWl@+[m:6o #ia 0Õ=fp՝B%tѤ¡Şzlli_HL 3oF/ v,7e5]04ĄV0>ԦV|G-ԥY>w3&ud%^ޒŞmQƻ }r ]?Lȯ'ėߪўα[!*5 f`SDi.Oq&Z>Rk?.ƴ͔p.% .wK 38d"ZI84m8c 7#HC;jk(S}(^RN[?t <6 >}E"11FNઉQuY%&F^7 ~+WM.-R? .nb\*\]%"Sݏ2DCL1' ,Rt<3At 򃼗\cl6|wwdbxҢG6Vc*U}S $X#ތw:[qv퉿z쉢 F5~M" 7nHerW#<GR2>#QK@XF9S5brj?*#ҡ)q5M>nZa B~sw)j瀈 \X;3Ȓ3+1YI~R$r1 Ǟ2($꜡θ:ЯF7ƵzO(}k죛Av1dل (zUrcr>ݬ[YD&j?9pW@nUO$c(+\1DEUR_UIz9%!$--(Q5u>jvLt[[I{ ^]l5a$39 {) qcdVaИKw3>N:/Py:鸾Ei'punD% ^5R@Y'f64P+,`6+Eg!Qw M#Wa|ޯMD&a<@lZ3I(MINA:MS{bp 9GLg4{h.\wŽ )WWZ@gK'W=X74ɲp' GR ָByT߰u]Oy}I<HY\W~*^$lfQػ૥BvWncbi§L(Y)OM-4hLY!rHm6ճ3.Dp0.HYxs"F {s :XGO<촚 #l5 a>ps3,[A倘I'0*Ǩb34n 8VE/ KRꨐwſ -?C+M\01gS%F{.@zu[?wc(FpJ 1 i:tfhq>;O> g?Ե;wkd#EA!qt{/TK֞NUoN|ou5&Fo6ӈ]8}PiySQ8 ذ!& p].ۼrR$PZ2I.QlsbwƋb"-EmBVߣ4n/NK`wL2%)rżLa~5(2bg>W(c]_@P6 gRKэlS}< 1VkzF^M+ 8vg>SsQ cUr^Y6)^t§&`m2ǪUCgM196?6[B /7yKpS-&l&&-Ԉ6OۉZi|3x[ŤD+0f _r/ӏ Awho-亱p$zsQcQ +NQaAfO\;OYS*GևpJ(lDe"Ƈ^ZRuH\*0NxnxgGbjb-X"2%K,~bqt#ĽSvOjJ/Wn]2/Xs  zVtimrkx־|w5tS6~.2{r]\:fbʱ14(y9Og``5waIo 0!=R49?KiݍKݭ;Wffu@#{,tX<|v9 wEÊėd['˺Vo\T[寴Fz'F'RbkL+]XhZxj2P]233i?*$i.؃Qgrn$}j_xȇ0ȷe;Cd1FG0$մA_2t9].r4scPbl65|V W=?TG(I{}/|G/*$W(e=~LgF>AA+bZqr\AmM,v;ratx.wCi/U>9x6u mV^l,jv}@CfbiG!]n>}K}8C95yQߍo@;r-AyaYN[Iے9ɐ@gpHJθB8ɬ|vXoGuET\Ėʷ':ܥ:ewIaJ~*fbl:1z\"M7-ix4طa @[ b-h]!Uj$r'9M> ț'~lTUj6 Q XMDZ9@<ź&E .Nvb'-[M,BS"|TH:*Eʁ}I{WdGT7D}CSҩ&ٜ`YXW3MuI}ب]ܟCA0(WO -,Sj+{F(sߕ!eh$En" ,]c8i dvOK~*嶚3!hixUjʗv/֫6/B~@zϣ7 w1%Ŧm Žs|"; "?%fOu݋n^۽az YCZ1@:P_Ȭclw;ok*dG ȅ*r<}OE!lA>SN<Qթ/2snK?̿ @"Ԙ˸0vUE]SL)UVB *ݳOp:Ow @; %lJ,4nNcVyp/oO A{/\!]$ R?+ZnPƗkgHՙqIŵZR_μg#4ήqwBKqѥE},FKRU) Z\fBf7>v^Q7SXqqE;ۻ1U? Y1i=pH|Tfs#:*k2_E&LuH8$7PM?t5ݛfŖ.e7cl'}~|zīSӏ8 G0:;n؀V. ȣa{+fy;~PQ>`Ys_0js X׵l fq)5>/ػ*7XO qؖ-:&bFu®)[mUG!L.9R|lp=qHZN;8kaЩ%O@D CÝ%>RO9ԕVdz \LdޡB7w^"ԁX( =&Hi ?s"⬡1Mڽ\WOM7kOm\mgrXP-0hm T6YTM#|%_455[?*0 Hh H/qXƩ-PjX I3}1F6W&Dq ;x)0UB̊}IVp)lpA9ހ3ŭ TQ a}55qOKa}gV҄~,Giq3WP[9[Ң\H3W׳VކXkm?o\gr0E{7*L{e=Z&t aA +hZ:d45<w5!J14HR#YYDR$~8m4&^qFEIg*6\e\{_^W'c=3AAuIc/s2 a(Z'D~3\eueǹR` |a;[XX ]E2H({#mQȭs+ғb^!dGN!!YV>@4H)>j!heۢWw ʜ *,l¸\6+cÊu!!vT(b0~`JtW+8_z{6HȊV:4J(-9m6&+BeiZSL`RbQpm  Qo&ﭏ׉Hg_ԋTM۝bF&VANe@4 ǷW>3Ua{*^jH`bB\ #9GZu!.!rh6IHOx)B5Ɉz{4}?(z*:PshmܿnmLM$5MJH3zDVq%ցTiЍk92]Z/,e2ؿ8 ;8%u{.(tĉI4KVާ(@S!E'`OP%]+Xa[29^ W'&LϠC¬FM4Pq3;!x{_8le?fEoԲ4 и*f`\[\{ ,yLr\Q$}b+kh ]Q"IVˣdA_gU!=<I:$2y^8FA/s9v&|Wz)!zOւFC"bQZzA7.@ԶV[7lPK5]jHيh[7Q]|PxE(2%hƇɋMf^DhSMQ+֐İ-Kn˹xJ^@@KabLqѧ!3laIOO)19 ;wDDX<jprA' ܉T^E$'qѼ~Ckrzn~%`Tx_MO5U6u ^+pIaotw+77XΤ)0ՎsϺH*${捁!`H; *-KM."@+x)Ee? LX{s)I#e)sF1c6}U4hհ^My\LlEf8[;f"vSn{R32U#fօK7K|%SkiY5^{M/"ͮXWݒ5@2BM&QID,:\x› ) e7딋^y:dP6ojPD9;6nТrY ; Gxy~kkEC{i [`,՟ˆMȑ>v(YRdikz`\ABD[9-jq5\ j6oI:޵R8.Rs3yDpy_I[=NT d7y}f䞼x9}X$hiq\ mV?,A)Nw6NT٫v&ww~cXcad-~[/ y re&7\qeKCCn7pV!Ut>ot#ixIhIQ_=K! S.7tFIz]UͶwEs#JR"ԍ }}DcnԨꤺ|wՅ͖-@lZ"ǻktdfv Hܹa rr"P78|!A-_ш/ax|G˾ }\|3߈=SG l%q@ ѽi\MtN~|r7{: }Ci-wCY3Tk'-_N~'Z@ix)U#{x$6x=E~Qo~ ͵ƴ>o>kK'p"mxZ}£@!Ud(ML*nbp+rFI"8ql},BRXEΧ>6e}Ih N{;l;& f"GTB #52:2#bl25Nӧ*6l,D:5'1ep}]e7:ʦ|:Jۧ?L^ayWt2r #h;A٤xކW5T[pF=SHP83q[ܦ?"zV#Ê^GIS׬307,jiI \C|J05<Α\/Һ_Q?~Y𭧥 I Yz?l6ZՠD-f9$E?dB:>>(+m#2Wj=$A_oi, z[;z}J8W SZIHQy9ہl@풓]ne#0W!T!:9XwȽ\*1i9")8}qu@#̷/e{ga@@w)jkXGJJTH񝉢6 /JGvq̗al!"EGP-wڭj YAO\͢4ÃvU#r\Wd:'UKL,HXbd<2Yu23;jq)gu! pt5aIs,{b=P(nLsYSVbT3Ǵ"wA>_볊XFdP*fV﷌`)zhbn}|[jN@lИ|j0^{EKrw遆Wb%[;4Z۱&MI)tyl@'H鸞2ӥ2^>lW`ZBfWjp;9b Tn{İA$;FzSE>0>,| W:ڜTVeaWaI+rXtj6MpY 0sjb~癅+Fma(mn.nqZ| +="'Ȭ: >|/EZFn=A X,: VeoTѷe&o@Pɑ;vvGE\1[c祣s*(WHo>,{DxT 4XH&&>,HߠޓY]a{$+8S stQRS`.s^א}&J4MQgUvJb-zO&9ll+h[G,lUI۾CE?bm\!kn{.|&͡F,"^yQj˩2e͟#d9zxÅN暀XIy1ԍ?X7ju|Χ<0VM(T6es5DުhjGxgCBi <;1ls13KrQWQ`$|l&^ }TAJkEp_ -HG{;ayw1p :P$d Q[sie %2&dw}4dY=0C6"a3bs JmpΆW"잞"ma0cPvF ҝM coq\Fg=PگE L@^I#v ̀H39OE8o}(p+v/w3RܴCe, 9!;;/Te S5umtfCF`kx $)?C˖ ;sgn8|7fazAskV> ".ٵZ Xdž;nDk}AVmo @A`B+"Ä@51EՔ,Bq-˸'K*KN# zAh,cz {ӟ8-?(a| ?pST4ܯ,iȊ| `Zq:Ao``=oy'ZGkKxr"M`Xd[Ƽs3Oy@lmۺCd452D7QX,QwjiJ3IsJˇR))/8gZ'ڹ_Ճ%X7vđE6Mf` N"\CؗEuy.i-HU 7KaE\\3c*uDΞ_EWw2h*MǗiXŒ܄ځ kl0Gys@}O.% \Ss)蜁yN rLux$?r"ʞr T<{IȻly!9:EFW56)]b=祩ԯ3ta#֝ҡ鑕E$Hzl…r]mP!)פ4˽\FO2Yb1 `,5Z"F7pauI9|Z#d2L b ]ˆϢQ;=RubJJaXH! 9iC6sZ这īt.q,D=7CB 鈐 t~Q6Xt^U5.g.D0 w!rWlr HUi&!-1`~/`\ֻ isxs_zJW4gajȺ1!njq0Ú mBeˎ'yA:亼b&X:I͉lV3TB5GFXɾrV)XS["yV/$h}qςK80f\ÊQvѵaU˾߂t\Xs#e JЩ Gۺ{OEb1lqp>-GC2fCm}W5[dRi2>zeLQi Ⱥhc(Ht9m"5Y40uxDGjB^mAWEPH6Umi"͒XVcTqPQ}<>ذ24m,|KimqӼPs,'m5R0F{"g.Fap(N0$d-E_DfY=%>AD,  ыz*ݼGQ ZP_M A*J#g]t ˉj/2?tH5ZYspcͰg8_]=ǒ|#;ERzaɠa%gwiGS~"[7Lojswq…/䏶)V"C3aĞvcrpS Tzd:+Jl}#RJjnƞm3= Ǧ[!d\Y\zj^PhE<|.=pDcVӓ3wPOV[₭g;p,PP2-l%hw u93qCY g To Q&G{/P+Ӡ~@^3L<`hҿoלg -Q ,*eF~x>c QEg_:2e.~Cv@6Xݕާ5FʍJhŒˈ*!}a[o4gq,qyhym?Եqh;Oͽ`_ ˇ(R5ȕƕФe:?G!V(y>r3 em$3n<#>8QB~*ȱ!ox~﹯D&*DX-&U8\*+덬?il}WeJ"}O15Сpj #E#RQT/krjN]X9\*NEGe!zJt/8<Ds@<{7N eG.1 ~;yۑ.gutOsM/U4Ǯ0iگjWX ~%GJz4~@uMi{ -TH ˍ5+EM_٠jE3DFX*%V#ڟT;:㌆[_#k 5O_9Dwr["'VV;(.ⶤ2(JՂ][ 4ƃ^VN{ P53L9:BM\?>˫ \ðZ`eYz 4I0/ķz=K0]AcOI;8hWl4GB<.J PŻ$;A+`h)9s<+hSY:jTI@;mٱP1R6`p32R^UAp)&kaiIj{f8*xdgelK-o,t<: vtVZ@9 [b a89>XLֻ*:ᡩv_<ɄH3pt_"g7aM]`:atd$HRIx IpdT!9Z?׈:ӁC,AcmI ֙kjs/*coN.íh6RtwkDdٟYe*skqG]UTOw::{`#-ckǔ4RfTC"(Ȑ']Av먡OqR(A>KJ Yoa jp82&)9T$qXs(5 rL/o鏛q!Fvzfi h?AV-EjpДAYBu$fiB/6b}}xP' x$<pNOuR=d^ZidT^ }Vȓ{ KH2OPeIDq?`8|5Z,z3{࿤0j3(|<>W^z(|xUQ)S/H3,nWiF:D q;FTj"WUFRlZMPAEG *b< ebN1^=&bsDk9 ;Xx,i&u<͔)\DDr(/ ]Q!x\Y)EB1/_n!܄55q<0 %A1sN$͍AT&XI op8#R>xLb ·Tho({K[gU +hUo/u y(@an=׭}p3;Kز#9W ]c[4ɬI#AmdX\ؔϤ&t.(g D !/İ /U ,|j?ly$p8}#m sm&Ky{Nq4ߙ-0Jvѭ>RӠH5VH'<} JU,C OqMOT1N@D'oT~ FFh3زE'|O£_z 'e1ba3tӴcjvPi$5(Uu& Ciѵ},I`ǚJr$}?+Z M2`Q+~<'HUn;Amz Qt'pFnjзF&Uv>F ~ϥ΀5/ɿsΈFӱ5^_j35MNc eR\X)h5O#FG`!ONo4{`;jwK]NOқhZNXG90 E O _,*?Y|РՔ(4vm208x%h?7}X'u7Q,dɋ؄v(?MкYC{;Z@1ǕꠎQVEZvm"& ;t`֘FŖavXֱ]}UfIMid%RPư@]E&Ej"QO+?S _#<^{V^f"09z X2HhRmSjfx lLU+itN2>S2Aj9HsWħs4{kRwƠ@URTw_RWh5x +30" Z\wB,(ny NۈݨEƯHt=@&?}NCZa*U;>g{6pwV;QE9t+?PmPFill>%°SUYC B>/tJvMP2{$'9gbZr:'z c"nlUZJ$tLr9Rw1D 秿"B^9"$3B5+vG :af~w4SO>osU ëkkX5'7SsnU5D$vlރW!;,BN=.>bk٪K80gfF^Kit ?dqcC *C`(J50 ,1))bkʝsDKg sJScvv= I|pI5-!E5v&r2݋;]6@b96̴Ҝ ɇ$3TjtX`omjy…^%`㶁7 %ƪWG&Lٮo|׭\$hw=GŀdJ,UE&W9$eIyZ5!^6ҼƺY +֓'M9t<%V0WwTD(q7b:0L͝kc8A@[r #_OSFVss0S 63Hi4g'7fD>}(zEzNn@'X?$>xUZ04kCɼI8~H[:nfw8Mr䉤x;nkdxĎs%jpr*{_i@\!hvj+qrPq?CTqriySW*bK O1w!*^]X{jne&t}bμq"ۀv05aSPg04!F艣2l e P~ Hp;]?ΈI!!g16mJ`Rr8Wsy>jq:򘬝(EP1]fta_*#B*>͟q'|l~w,rlۜw+uHlD> "h!yG@p!X̪Uv1,Cot[Nǰ='/u:a%$/?Ukm9=Yv\yZ)hޥ[5qKv@Ly({ԏUyE//aт0]7"+\:JT JWnld\|M³aΖ#ް\u 7XN3˟P]<5ɿK36nT-hT;(ֹL;Jz9Q!_UU&C7ɌCMDhZ0:xgDZ3cCԤuޅlIf0].a,` │FS事q׀,vgUn V8.mą;hEͭ&xj[Rg} a=# ƘoT VRsm֫\egYL!|ÏaE[1of`%'@>b<۲=!Y60S_Y WaRTNR?>KnL-$of&2g {9fnP1=3rۢyس VY_XgtƲ/zƩb0GKu}`E$vg5<Ԙm2wLFSV2'x8Ѯb&s)s@b-)#$bʥ7R*XsTSY;KbosO5pYY8ZGmq5!4xPv\_Dz{H)'"GH@8}*k-l t^;J/5+ Wrԙ bxԨoUs`gBfWze/e6`ͯ+cI4MOR6E,msM?>?9Jpt]H|Xh` bʜU'w_Ǣvkl"]pS:')CS;{F4O q'#75Ȍ\99m#ƹhfr?wZq`flm?K:]B\b> (kdJ_FMD*eZ iVGV V E+L\"ښ_1ҮiGߍVԧhRI~a;h&Efȵfگ;~ ~Ļn*Y~y un٠(1Mvn 2r+l=a?M9+A?y|qX` ^Yz&[35=^%ʧBEU=D.D*#+%O7z-~Pm#hdNu\,X;岵WM I!᪁b-,ʱAJk0me\ y5fSh:Ʀ^Eq~D$0bTû}Upe5F_q->3.#_NfS#T(5 SCzsv?'5h4`!wm0eZfyR$  ~߽D #ǎ1K©\~P+Q|o g(du2v!E"W62dЍU%?~kbڴσa[bz5:Gr_KRQ-CKd̈(~b|P&+VvutR g8YF`VP1s;T1Ȧ4If)'Cz?_hw96]ΟYPeV&.RVԭZZZ̩;‡yP{`50XuJUҒmIž_48?כ'1PE(ޑ֢-ަ g$  _{ "TL)JVӁM-0P4YAuXCIɥPCQg 9qOLl+n&'d16\➔ άMI57h&vItJrn ̰-J- (G6~,)M<)Jo\uPe$nfo?R"_q̓k28C>6MYJg&*}Kp]Ĥ`DlBZ+Ȍ} seNm,A\uo3 *':oeEmݦfaʮ>\eE65ږ$զsdK}6eSIR[i9|l=`F$6qm|tLGH(O1u6;U||S2O{=/{6T)S.G`3m]Q >a#edf>V Av}=8J⦌Xwț(K[MBV8%L R$N}:4n {2tz?>i*{>-\=;T3~[ym HhzS'fWE|9dRb!5Z&x& F)`SYaR*GHiɺM*I!TamRˬb/-MLmEؠd*etxb@ZhmRCZ3S+Ӽuf/st+WVGہtV d7[O ]Iŝy1,˙w'Nl'#fr=3)i:eV KImS8>D @)]Qv9KMئϟ;nofĺnC cF3CF\;rvi=!q|o'\J ;8k~)8"Ή>blUsv]Y aB-R:3_r,D\n#>/eaV|KHz+Ͳ~7t'i֝u~P׳|rso..SSmsNK x$e*-gm$):_C̶̓(3SLX3(WaƮFR-GУА6_eZ -,,h9Ŗg}`Fޓë뢢/"*߁ytRsL'x=E+i:*盡4]ُ&o!u",!/שK؎7D{d,,>݃j%gL__M4s3*,ksJҖKcuԦi c_0.&Cs0~gEhBvJ3T}Wb&&ʩQPI6KȲ*-i0:VoPc[flS.rLD\c1O{TyWjfQQ t`"p1LdxU{Y_Lfz=JA%{oH>;d>P|+KbF/L`nTi$'YSGI+хۛAܒAr>P 9Dvd{hLU/fjZϰQ_=O`uk/sKLsGuQ$^p̯##YO"k:鈧M&^l~qK2dko>X׿5 ļfDˋSj=VۢJ .9Ǧ bp`3#6#C4`YAPGCLL b8s_20fj5A:5lJXݢM5oyF xs}{b&#zlf\x}%zEt 4q"g. N>0MGR,Z5,X-`xz\k_z05QߴprWƠS z= o'VxsU3s@η^ӀYRJ\!!`Ƽ`i(q`_dhE *>};wD#GS9qY֥ BϬC9 DX/4'eّSԭ& |liL '<*-\ "0f YⲀ[QTyb=XUSz?A3/I\Q u1k֐0?7:&M1LGs_.v !;nBݏɚ{NZ`1 }=}.aIċ 9q/O6ƒhBu-`>cv[L[[X-fd2:aʩQnbePGLt89./^rR~ mؠ$44(rD 9k7H1"ӵ66t":]\hDI-Z*]; D[ u&ƭߝ̢, r;#Q!CP??[ю($ \n#g*R2rjÎ<-}˸g8wƐG_0Y85uW5RvTbZ/zЯpcr)H*SB{2Nj xM/hlP;,+*@H8o F|z`Ro!N)z~n3Oމ>DRg93UHGmzy4Ö|;A U/7,l@ƾ2:J\*d|j׌DĽtE<`yHm).fxWDnL +ꈵRzނƴlB,c|j@-?Kx|Mr$c0U#@(P3xR pK7 Hqx[CCٿ ZG%8#vR^ں_$W0sjBMfq\9Y"ZղQDʦ2m3ϴuHƢh4 Fq..Sc h XKzq"pȰXzU8b|S`֥VklH(7I7c|}3U 6k3c-Uf#Ș!IkSH2c|V+>Ӌ RQr 3ewj<=W$;G=8_ۢQ-MuʗрM{tLF*) t ^o=[is74Ga ktDsk,*ɋ)O_pXyv86}!iK1 ׮H&Td|`Rƚ3sJ*g> EW|Hq2|BmR8!MUaF**  + I|,DF*!ބ~n9YuSKHO$9ς}{`蓟eJ!t13jE M~aSoʨBNlzFyclap3pi8D:̺!h @`_M K&@m*ejVLW`> *vu:?ބa8B"(&V](WCdq_\WX^'p+i"(^4\pl\?uDG~,TT@ydeLjAGBԨ4l!SbZϻM,!ǣn[ٶ%DU$͎rrr&\ Ȏ-Q[0 .MG^Z<m; (l\s,ݙPzRYkϽߦȵʢ\>.c QHck1.'ӗPTQ~Ī(gQzm/uyM4o= +}Ӆzr̍MB+2jV|C ,M \$!#D0;:턥|YS3yIPBk*M&gf={'!`owǟprVkT/yB|(6OH^u!BBu?QwQCSpFoL_Vn nQܠ'Ǡ^Ԛ/P5' d3B)0xiAQz-Ɯ;ٶq[?v{ -C1 V2Z-12O^([F)V.9D*LSadV ZmhL $u" T^sU[`J+b>g9{t:JDL]AL_A~,2\Yh9"j+4w4$f9y(@' 큒A=IF*q@0nf%n[+a ۂv-ҨXkW< ^<_j/\)w?kPe.̈ RDڄ`_ɫ]v?!깾y@9O+۹[RF$|#sTvv2 ␗ `;ň Ň݋SI=FPtܿ(i1>d] ip.p\j}"fw:li:[wL,˗42JڳMÛtw+;wʜz!=tcJS H)-I;#q0$$ĦoOcUL@6i(aJ&أb̙5qϗ{P&F֥)8rmTsp@V:0δƸT׏ڼRGZ`nEЩ9wͦ̾St]cxQ1]y1n\lTdsF}al)Y恫|*?(w (S^qY!oC@ЛL f:$Q& "DOyPV9_Iѕ;G,$Sz4|2ĝFZ=c1V!۲Þ1i猔([V-LPP<׍GQܔj у434/}81M;5wW)KڇCnbMḃSgtc\lN–j_cΜEY=P&s8Ղ9U֟[*N*}'N~6FRR=ֳVC$P%jBf6%Pk٥v84mK7K``&r뜠 k s^D#s q9$VmS/F#vzdD+6zKg?J FJ0*+͂p>1И3nx2) Ri^2A.鼼ie,- Qmt}Ir~[ݯ͹ɤX!@c)ۂx$4|a:?P;&,¬z`dاCLWj?k?[>% H Hς`v^Dێ6x h>BۛGinW10OI0`6Լ<OiNssּnGe3LWj1Ԑ&g87sfj|gW| sEx:`I6d7k][gҨ{7S1^@{/).aK,[%-@}'u ;3S=S !%M#=H= a;]B2;~<0;$_V3aS 01(@-)ո-*gԢ) e爬N[ިqaDT1T޽  ;ϖN?APt5tW Fq:䑸QTR_, r [&Z->9(,|0Fm0phLFX'pp0T H-Np)S6'CEg5ۨTMr(6 MK98 @#Yza]weY@6y79dX )16ӸQlw}ᣞgO]dP̵.i">1Vz۲B_hAĦ?D Wd:G9b3Տ= mCJTW eWi&D&p!l24|s1`>"lp72aPe mџ-/$h'32&_uDk*7(-h};|˼{b6MsR(R/q( 9\"Fu< %!36q'.Ϥ'?xد:#>k3 bŠɖ_C7eOw#H,k_ n3c%x@#6P$wtGϓ"fY[|ޯ%GDòhmO;]wVz- X~+ht6Ԡ+C"Q׃yGե°rZ.N8P˚&j*ٙsTɨ<;Ěr'|OeNei˵؇B|5{5wJdJ蓿flֻ ܵiPo8S_c[׳Ll ڶ,ڍOz0 ޽IΈi C 痳綔++|8fDҺ5_+X[uGH#dV^KU!EENyK..e9oK0!Y`[Z,!5Wcq>Ox(#֧,^ `Vk_Hc%bp@HKDMPX#Dg)e[۾ uiN'*>Z ۅt?Nfֵ%27 UNvƂJ˶y,#(\[&ԅDG(0bnWz7z4UH %d??8 0Bݼphcc_:?:D ߖ!I'3b}: xёF$`.)(n#{eg.$l L%4+ )Z-VHQzx?UߣM`9FRwi#I?Wp9^։޸8}rȽ ^h)ʸ@=<~\V;c}jc:?Y4vd'Q&W0^#Ձ#R<׹ Eu3O-kYgCE!Z"$huU5;vm8D~6궻E5t"kKG;3mi\H3 Y/+¯gl6Ll'zGHHB|E7S:[()5PA=;SvM^),wGܗtϨwaWv~E.(E-K5pA4r c `"d x(`g!{+EJO2CG;/v<߬(ϻ &Zh|_QT#RH&q6j& !#$ZlZ7^ppF:?81:*eu":}>\Tvʃ`dWQef-5G 9CI~Exai(/b,{_mG<;n2*ejq>GwI|DY0 kENbS@U>kւpi$YE+nWy&.W̃/W `*JH`*I!ȋ<ޙ'snjxDW35)p IS|čOfF4b։o>㿒*&d f鈩W R0]By72.q %cW7GyY1>9lQeX;=\$>#`\x͕CZذP0 H*q"f`frTu{B 8oRDfOW\)8"6]tBԍ>Ri="ՄD_Vn@vU^"mh0Hw,~v,ZX8y5Wi4/GcD$C}j=VQ;X;sqYpCqFbMJd(LQyAiyAj7^ht?LHFMZV$>z6]XTvĒES< p A` 7q?ͫgzTP;cF7M]yE{: z?r08VT5'mQG,9Fs 0&{J˙񣒛H5nw%eܽ~7kW0 ˣe3F2dEHbb%ߴef #F 9 1fq|U% &Pӹ*9wtr.+]5:{EJ&.KS؋lzܒxΨx8XmѣtoI7 BGBd:eM6WS(T}#V-lT^)Xb77,dބk̲\)3# SbBJ46[ h@9@#gQ4>-j I3gt)iusk85chg8-aEng(p'MՅX<`ڝDFkGAI ,8ŭO4̃L%Se.bll;g&!l_drkbJ9i"8$0`qf7ͼ7;} (}]@p˝e"HY-(',C)=f>Quh1,0Efh02+i:rژ>Qu$熑V<}yE2QoGwgK"=Sn !͉x*Yq,eKj;:z[\,_?m؛AZ3 /"w ;[tb/*P\x^[Nt´hf`o[tf&ٳDʥi\51=gEeB^p0t&ޭJNȾ2IHG< ȚV|pklfo%ŚkFcGE>UF3;t=aeά5g|ҠhĄ)<<?UC\`7έXy;Xm^|I4\x߁8=}RqץRܶ0@u;%*Εǖhqt-+g2i*Րw}CWkcu{ 󛽆ŲR0mnmdRq@>Un~Nb=~wF׸Pm%UL6ɲʆuG+C`yIN FHh4BQ6"8+gW3+UhU}[WMuK|c|}jGLb@rОn{Xcȗ5P G=~|ɞliןۓ[nog `JKGVʰ;EuU7ktSr*P>8!ڳяPJ;kgcJFv BBM J? 3K9/Hj[@$CG\2A?,[p*Ixj '~ ٥qzjBs# qP`}8dM >b@0o4亙jN kKNʼn KO0Ja*qEogbAPn>[cO\v fYHtSSLb$r.9$܂_0$$ aγQCPRZFATZ~_>mWl\^ٮIYAϻt5ݻa|GS!s$|=;k: 3,.7"'cl4ר! +48Xݡ2G׆tf\>YWn߀%(/mT4g0e$bpZ@ʄ_Q:xp<<6P ?T &*[տ:Z,lJDe:V̦ק 9?tǁ @W EM o8Ȅ:F:XM>ajM`n(r@V")N vb \.K;j!5; Wm;U%Σ^=]f +2~dt5*/f6#d FB5(>Mb ꑽ:EIQk;CApRZ N={~߷;/B񸓫mIdJxim4bG@$2nW=̈lmNtS}ѴR$NB-j"ad'\հVBܛ<RUeRpkwe2?i\Ô:p"vrp%}aMHfΛ. ZBM%|S-]ṹ |c,i#v S:ᆌ39ib tY/ JS7( a䭹7+ 9*!@b2^7JxP= `↏> [Vh:i<^T)kXQP&]QBc|IUW9,$xӛlβ$_ J܊fXx@W>lgNqj&߭~RoA{3jX`.JRg^Аנ z%yk5B>ן ,.~yقd^rrʚ=.,/VFa'ªx @.[A}lSΉ_u`Tvr<>F/LՁ]IUeEhIi;|{-LnpBxpG>B}VgɉDp#жp?z֩rFpgwxy̝\JdRnb)D{ߛ/=ёS _%B\wwG۴$`/Fn32/7tV4ӆɺgS!mOi_$}܃o[sɿT S>0diߛĒe4,h՘/(Dm8լ>Uһ&@KS^Vd~?DvYb(if1N$ X"`ˁV֥#7vgt[R]M63ÞҽIClS>Q.V4bTB3s-ƟB!ƹN%ZzA;W pz; Uڢ0MЫ-i׹ne 1le\hϴ+&hQ:ҡ2gJQGG7~Tzm})w.j58<}C0d=o+T yO nLjht9{?xMn!͘HQʽ1~WSp(:'ëfd,#B+tI )-Eըp}F81´mFD:-1N?\y!g/ťБa\6q a'm >_t2~N"Bm?| O0P_$W,ZeA 0#})ʗ/u u8:t'KRO[?QȺB}LcYpj4'$Bi3mT㱫h  tv)U5\ "BI2C 7KTWTWG*5 `nBR cMzxi{Bw0NL{guڗ0]'m[Z!!93Ph qv,^HM@6dZTي"P|4eƣz%{Tݟ*Z|Ņ~.?(Zc۸S$XSql?%*CyLi*n~0v"< ´*fWnw_vd1l`sI[?m[*GJMI+S2ءGKR2]xl{R׾uE7,d#BXbݐ6RqNGvX 6$^c]I;űT>}}|$C'A,yW=Aaqiz~[9#D:q+YW"C%:8GI 3w"<>nڴ3p%$qR]ǟjwiVONs&4G恵QZSSY~ ԗn5(PB2rm?\ի5\YDm}I+q}vC':C2Q#H}W %])^q$1Y3G!E aփi 3uP `q+G^L?tf`l >gKf~7 @gnFࢗ RL]dԣc)kG exwLan+%:`:!y>g*Mo*kR+ƌd $) ^]:cpywަM/1 d9dDb)Β<>**ڄ Ĩ|IQbJl-z|cSyJxgSgς5kF aJÃHvqT`L؉kOt1'9p}#}aB}Y,#j_&J*-i*X8[ IbH}4Ozή| 0\:ʴ1d N?K0xBmwZl) (vx0 ~]%w]l/ UΦ}Cfx0v9z#6J"1ZW?A$5:#95T&o% *ycږ ;Q*Y 仌 ڿnlA#!n QEKGaLm&'«[2!ѻ?T(Kzy+tlK˵U-GwҶMBGJZ$X)B&ةz9g&6ּ֑.66f\{75WLGzuۙ>p ML -R1:_I:x'|Y[){GKmd4wu%0jQ j;pP{q|BeR,[2w;}T(ÖcncD@ J̨NembDЛZ37Gl )RƠoxQhrNitWODS O!Xlt3 "In@'ZV?ߟC{BMk'Qqk޶Gܧ`C4'S~oAC:1:7ۦz7%!6. ‚N4ft_$vܗ#xͩ3!7gG54dJCHynvC疩&ʅñ]7X|IԬئ }&fzʏrp:AGP'Rk*[Qvn &E9D³X*XYT2w,z6nZgQa,ܰ+pdLҍw ?}<ԠMj L$zf@tN ,H9dܕ\N.6fN)V 輧bM;wscy- tJ,>e&.X< 'm0¥ SExۨ^ 9Z97^,@lTtVG@mN3>ܦl5&IoDjI]tV YQbYr 䓐y=6c$tf+AOḮ%U_]͎Q>~$4t{Q\c{sO@˹栬L}n`\:7#>]_mdsRM5W+62Uoj#]lU!Ӆh}  ((t;$~RPt%0^,*u.~`p='O z̲ mw‹ N5(⫩@Uٖ+/j+RVY., M0q7)F+D{+VX2[A S|P{\JA-ÃoJv$p:lv(@;ٽdf-@88^Q/ zPZԇa,yf[NJ%X=\!#xF|v*pvQP?a3)c-^ħ1 !%M]&U>8G~ >X\M8s6/V@9'IYN `Wu+b< l+g,fJ1CJ,( p]Hڸ[B_ǥp8@Fؐ_jL\'> dū閱: Vo~YW3Ri+ޘ9IzN oL0_.(|*bK5Ij:{e"z~g=cV+cۖ\77 C$5> 5~PO% ЦVNݽR ?S&@_!gdL@l4=w5[ j,{Wr]#"`".ME9S7@$DjD Rn^äŰFyhJ__}8C@H8Q(Xv"Q0yCb)0yXS ?LV.=C,AyrTod:J}gEiZ6Tr^xmm߃DҞe 39MדlBu*oy8~c( n]Ny5@EޅM ͦ^uvHǍ<$·j̚F6dL;CEO޸$* Tռ2{FR!l mVdɗQK$O & OR*\Лɽx9jFZyWX*v_Ga DҰV[kKYkY1xB{`Dt$r"tㄾ)iz 48Hzz9m<݆t.35H& DؑYL&)LW/p딟Mv*:_VlH`UDZ(#[ɜW`IĠӒɞL'5H(iQtc|&֣ nχ5#_mYMw}0ojħ"{/3V7S+o4wb='xt7簀^>FmEwLtN,E? Ĕ`猬 މ9/W|Z/j6S$9[<^Dfp  ¯tvE-]ܒ;ƁB|a )1ếsGEc)8$GU"ҳ:#߫}.܁4K1Wj(dpvu%G][.*%T5vm_{YCƦ~7RRZO2/Uc@IٸZUS' O6ObLI%sƂ,cQ"ou!!Lgw|vЙR/D'w'>\k,l(| OαI%V5$`Y((I>wIG!7-q79.Eq7R } >:ޓ!l^ఄL?G_… ?sOkJm !jb" NԀ%d_i$n")؂ n;Ho'r9&S3Y`˧k}fke7șwnɔwlv\4IG/$f`:y4ܦIcXW1V!ˆԡݜ.S$26*N:7 + O' ^x141G#jcdN\M<оQLx6r-uxes)N첃b(*6;(t{#uHɝ*A7EpS"w2ka5g &ij1#մ1kun 5$WU95E'<yzv=ɠQX9T '{= Z"x҃v,PUc45$wm=nlڻ*u0?X] yP@ē|$#Ǎ@ tx҈< B+s">ZTD;"'R#pb/ŜK֯8P2+Ngx; <Dp[|npޛer?ْ-Jfk.At/0 oo)w;Rb#PM鉯*:}ho7FT!VGt cQʶBAFVk%4HĘm0q=Xy>=-*4"ǾFukw3=dkXlY,L /!ӊŸ}7U^\Y8&-L-="m ?NQDs-xx: ,\B\6(@ HP#G't>"g.(ŋ ^<\3 ֗6$* md /o .77mkoz?)=z(UL&Ü cWKT32bvZjҵ|dnќ H637&zq4銥Qt,41߂S&4C}0{EDT3/׷xԭېȩh'.?DoP9`ho%_|uW%Ѭ /{decHssZS|Uhr(w7 {Fҿh-/k`m@:AWibװQ"IO=t<3~VCa??k1k4<Ojb_ɢՎ)`F":: jᎦtM(|_:Q.(Le-J,I>?p~BJh-WyL@W~Q` *lUGFXܴ}H#MgiuZ 4΅?k 8(,o-g-4;1 8nS C-AцjsȺ_Qt/:wZ5;nCsw$Dy$Gh`oON̎|l5lc7W 8啷Eb1⮛تciR]Q3(PxYelv$$u&5do)2tq%]$4{Nj k 5VGE()vBY倣c0;H|9zd/F+QgODhթ[ZAKah*6,vQM'QtWKG)MBHHyT t2SG QɀЫI`fbeSJVg??KhKÊ5KwNczP. d5#:ٞPYTC>ƨ0zҪSFk} Gҝ,`Ej9sL俘0Y!?~2_/ Y$P`/µ$;^#xup,s[ݿ*ֳ}L!޳ 39DEՕO][+emL>9{1O[<X<%GR~ëaB ??);zc/)`V! &>KYϋZe^ݲ)F!X$k[?AΩ82cn%dq]첵!Elf5X}Qw >IC}d[V oS|NcVn@ uwx9r<&u ؤ kX+uP xbx 7Ň6Ԗ*ې4dMqkry"u]Ψ$?*}KgV?[_lŰbҫNqF=vS?;_O+Ld/e5o-yl$RI=Yf#e޳[sKwDzzJwWQan *=4U"=xaK.rE(1BecEDpXP֊`i:9.|q@||[b2HrzL ~h^ *OŸedF:$&C?,(B{1sHЭD*} 0~U۫QS3C4IlE:ajW"]?!9rJwZ?(诖PSP[؃TDzbևTž1VAf^?'OѶi/}$flHczNpw!_bI[-{O `>[ }VA#iCXa1ɧrT1*yUj)f=g^FοrMDq2xVZY[rM5.vN4n ְwCm \IiJpںbh~Yw=^'?b$p1Q)oۦta93(vM#~ؠ M8/V_GnKvrHBAt/V!l$u Qvų ] Fr c) B[Wżyݢ;Uo-DAB`jXY6XQSDlkC2.ot} %^U TP q[-L% TOMt0;Jv'N0wfҳM脨a@Z+LWmۆQv7s-2呾~J697!_iKH+im~xJ{8A6nF]0RUjXw gɪ$8N3:l eSh = 3-ˉP @Uz&٠..f%_j/mk•?Þ9LP>L=N}$ܯ BB|-7!=90 NDRiq>ԁrr)텔!ētD-UW#]V'aZ$d hwM" I +N QU5C-d%LQp+GAY4NX jIg,/H ^!<,{no9 MFknSeϴ#ZYʝﺘ#N'p*n iC7=iO WۧO,si7Q=J,X-clC%8ea">9__%k߁wv:Z&qi̸ece%g]N?%C6xS8Fc"u =ZU6[ټyyP军Q \^5|,34ꅁ7DWrjZ츂OL(L& 䅜IדH{X,0ӯ*!%B*h&H- 7tjx5nr:c8YEC+HyP$rρ9yz^*wځC'N6Vn\W02Aͼ/Zw!  2JO,G'<3fǐJ .g~!G+;=qtjCx_(<#}gJQ"] ^?Xw.KuPwA SOtEɌJW^ʃ`mT"}"A}p7zɂ;<9: |(lc9 Bm̆?q c+ZS9ck -[ث@<W押Y.6*o‡q89绀AeϕOcz5QzV|:@0#~DG.XI2,(mk'UlRKxJCLKe#scSnTi!^]sC78(6~g_n"}8 3 ai׳5{Y;/΀TtuA5pzb=E[6'AfdN._o nM;WyVmݐ62lfB@b$lhUe`Z1U蕠m.P`kc ׯ)ݙ[z*-dlP ;F u>k{ꙗ5B>d6fه 8f 6ݦ~O|\\dj"@Em:ܧ}jB)b6[p;~նU{zrRr3cKSYNV=޺xZRneZ`k[ ?KO[ yLgp, $g}*R;ee!C!+tC_Yeĵ'6{\F˄?.Q.TV*X' i3- Ȭ=p1o{`VO1"FnFs9J?pfxzDE{3^FA_t?,Ow9}EѥۻrX4iʝyEefb0Oڼ 6|4&2HMUV.QmGDYA{uXWz+ ]]VBw_<i5J!w2?ux~IG_nZNq8|F|a4/輳9tUY_$qhIidb壗͇R'\ۍ]w Jcriࠗ }JAy  0#za%A^1MjeϮT,_U{EKCj`Ζ)"Eć Jƣ;a_,-|=*Uߠ4QivʷfYn2<0!r:4/+ p(Y"pU'15HEUT/sέs7zLfwsf@Y-G8q*Smz1|/AģJH[K*Z;xER6!"F=sЧA~-}vQAh1`┄B/lY!UD|)wLZ Ic$}*YkM_~oKɏ|6km @*,$;ϾЎMMwȜ ';0ʛaA=EB d 9=6+nffVx[D':=m" )M6/~ݚ=Ju}`&6&u4sU1HkWס$^ -" R mhb;//X>.y7/yy n1p1Qd#*N՜11?8"bw<ӕ/&"{3bdC Kڶ8Nn=@E:uz8XKL%MFFDJz3XVa=KAA =U}/6)ZUׅfOXOd0 LNJI؝B`RFҐ }qqi/Gٳ_ƪs0\A G=npvB!0 '.mcNR'FB3k7L 77fX? Of&I)Ük  (S~rqQ TA)\Mn컣Al8HvZ4V1ntQ*.؝7xMEIpͅj\VSMڎ,'ٵ߾#:*VN8Dž`̨*s-Ò%8@CLuxHUj@_s6դ3$*YQ=҅QQdGj LVZU*eoex#EDT_[DLݤ5PN#Žm=ڽ=xQ7h+>!4ʾ~:iݐfcd[DO)Hg*Hd9z4 ̱zDԇ>n`M/Q %=]{15J`^7  WW *[`Wl]\w8SSWAո-h/U&>E[e%.~"v 1h+AVքK2X0pzo/hUxfQP3fn7څ׊E_~Fp:]w jlrs(ؖX\|PDhd9hc=>zHyA0!w(a" y6a١̠K莵ST/v(̙ >x䧯Y09{o! wTxm`݂Q)2,Dwk[u Ynk<)V2KJ0҇D;rR_*:Cj{r\5Թa}. O#6nNaBM(p%-bЮ-}YflyX 9nk" MӰ!{黵s$+26t OEr&JAd~`r0tp/8"!b?$=]F(Y F^R p4#pH1,oV:$eP?9; ^ݓYJ1O*lGzFSssHo8+]@1 0i vT\?DAxgK|H2e)粋3.X|+u[$ Tާ͗v8yI~o$5y7 X7vvsv7.g(eUSL|ԴIN$2~}*\~&:Q&faGpx4#y!lBb8[b>~JM6x\;Ѽ (\ -*{: `<௥F^t0b{WuʫddB&eXҢEzFb`oJ镥l*}XnD`|-Neo cK/[|&fW)AwrL ?E8,OlKmGuynrZoKȰ0Z-o"vk wc4o96S6H~̪_2P+=]NCLh:{);9;뙵(EǁG%o}[P޲AR\jbIMZVz&toӥ>S+ GF Uڳ*U; $t՝]x}"P۳=K 5Cz+y).\ $Q [XJCzȼNna3qEP]iSAefSxWf:BOA^?{RuOxk:14RY/HpU;ݽ[s ]!\ -WM.qqH|.Tf;lc6.Q6Cv*1 HoՁ PXY6v1J O?~ZPBep,%ޣIH)~ka:n@4=rgN@5CfNŬ.5[+VMQPm!!ѫ-D!E0F"%4v߭m=b>XXYrz|C] *-ONKU/05:3G_KZAm{ٖ\ag}9MBv & `=v$OCE*OP ~2Ȱ !{ SKA A=5|wLz񣛁UTQYň8z@\$dDl\;7d@jq-dsj&#{tPJ1豐VoKL41i 87Zi{ٻ,sFD %~6p_e1Z|H9NL3?b` !q5ugPr`2aMqݛHf<sr2BխP8~O1"ӔxX>?D^=.UhkpRRF2E[rCb/Y%t?:t/cRݑ~`W+Jc`W!5W*;LIsƿ>frGXqS&xDEO֧ !l"CjmHَdd`pjOjQB{)I͹R\o qbƵ RE rOL5Q%8.\n@ /o|ggw"VOg i»saAiKYIdQ`YS@)Xc`OKIs\4!'kCE  lwXu)*O^3uîم_g]CLNnNH*% 1ݿgӑj_rxps2nA!*z QJ~iN.yGM؝^{1$Bh*&u*i\gj82>#.-!j:T_mt2FsĒbdYj V5ʤrTL +w(Tc#V[`ĤL=jg7GYxmNMZܴ\G$ hCG6_sUOyq i.DK )TC#ORk!Ja}9Zn~v.UOʓ4e[(#nH4y6v%VF?⍎jz .A$9 w"rԋ&-#`lm}I,V+Ѭ%R1fZXeƍ&챋Ňsk'ݙW|3VP>+ʶ=gUg^Աb] ^/I-]\OGSaID;_%Ydl>%U51q e%Co4/p-+V̳U}!zΔULs4)dc0FG{x> QT;{7duw-9 \͹m]/ D_e 馬Rn8>"F^V%uAqoB@YeV7Se⭮艁oKg~y]e ~7 fB`dNF(yM(|^G!OL$QA13'oǹO{PF x[6XK@3b[!P,XGpTʛU,5P޼~- k![|me;"C@:  oPC"zx4O+{]X?p,DWS0Dck/<13":274 ÕD?sXk&SdY$^kBEK^ND˚`Vߝ"::$Uu\$s0S%:U=U::e3|UGO%/K)~E5\x1TvH4yDAbIR܂2%k~!&DeLh|\PT5Is]ST0^\dv>j5/V^D`kWar}HF5;U=>ekɌhWrdDٕPQ8_Vo_+T-pޓ  f>=` b$KX9^=$@=O~YAKc>xm"a~(wTfj4+}oѦzAT`lGrWh_;FV̢ i\wsewEdg[d k":qԃ0T?42pa ۄO:YrM#ȆEnJV;4-jSX<'Ǻ 6Oy 0o%53H­@6s" J-X>thy-8;G* mW[({puo5:n3r66 F sֽ*܈QlvD v;l)s//xmfESL3462ߛ]C TE8o'J`ic*Pz=v}$Q(mdP[9z"u"sɯlZ~ 1{p?+ëO,5>MM Yx o))ByDNj$ba cq^I 1.2) ez#pLL8 t nǣ/Ӷ 1{vt(TOd'E<`\!3i#pB^4U1u\+@;f-ܻV]ԩY5;M0t;%I!'PN8d$٥UR*{Erw+ъ dA~j| lOKO@CIi^Lz G6}.-}:H4kͲӦx?𑐾 B0>̀uXPz^Q Biq / I_˷K\hF'&_۸$sO PPQ탷Ð/Ѕ4fx[GL}e/ ljw-Z*Ѯw-]GzȝH+ <`Қ:9@kۇtz3a_mgZ6PpXVeL]eSnJ覒`)_LkRd}<囜xLDNbpOC̬? 궏/ j?Գ&PFR-;coh12W0ű.IW^*~,MzJ˂̊#hz*l^-^NAi>nB]v̠L{êl}Ԙ1H9ȭ:%]ÀȤˌ_zq=uK:jj MVپҶMLFBmŖNd^ ̇ZO}l6c'I=ңTG|J1g0Tj z0E&oCX oGxbg"i_qtqK'SvMQqھk}Sk 24E/3*"9s?ޢn=HY?_COPtDj`[󌓀-8vnER/{=NԞf XђИW纶=0Ky`ռBWgڐcBn.:+`wrV~<7C={ִ rލ ;닄n %QKzoq }qجf{793#s(ޣHF@E:+b6 phs5CsKe3C%歕~`geEu,‡B7'ڛi~}CvJ{D=]@MKtl`}Oi|3EmQQrcp*pU0?ᯒ/1ea6|>QR/5GYI6,+ϔjgxs`Φ2(]ExY1T""цLmN"Ĉ"9,0 J`o}(Ix=<1sZS^ u%Č"HX I lKc! JpSf#f+tz5ps3E2p_0ܼ덵4+$cR+FH&c0b 8Kjo%Q17}#csʛLJWSY}ن.=UlxUBNt p 0@ʋa"sȰnEUZ>Eg4+xV9dx#!a svRׇ+6>Xf;3#2As:7LB%)~U&yI ؕe?9q x-WjmNG#Ye֛  *CK5tɲ=H/^6QŠra6ySۭޘ ZV"bJ.rPi,b.LP,f `>bT഍J{πv>.zkX 3` ʹtmߕm:*e_pz[Uub/CPn7>#NoG򏺶-`6eΟyn# m>Zrfő*)xxbI$m 6ߙ=\Tjz d|y/|23b]?;T׽ ;d!#X;RCQLjF$z~;#raJ ~8y PPc1`Io7ΙoL%8t|r-c;Q[i oٶJ<5RyJs:ea2+Xט`X0X 2>::"#yoɳ= LTc(n([ɧ  36]^S gM{IMp?uhm3U!iDS]NIa< H[%px]LQ]zFwol  YEKVӝI\m%YD e˂Xd7 v2iҍ |v·Rtq Oa8q2_h3`dUy_d CjWDMM40.bT Y>pa9Ѧx?CT qLM, ttN0繘!Y;n6[,5+MeiMU_vIKE66vȜWŬ.˞6hoq~Yetw7YZLڑ ]T-ؤw[\Fb΀X[Zz>`rw m*?dhjAw6%F<(oq6+$w8adJ+X\Zb*ۜgUSЂle߉*=ڱ}AJoJ@y=pa] ^Bivc9xE_cj 7L[B"H70L'8!®' Q{v׶1vӼ͊+wJaA IRVǧ84{ Љd"y4;K;xl/tɔu@GqibQ](4o*=5 X@+Q|9 ,ԩ7ctN9d_V^o\Ew ;m5 5|uCb|eFRgDqnvܯ/'"{3e+hku9FφeY_ tTD8!e~X MdVWAc:ъ"gTQݰ[Z!5#ooS\|e1,խyh`s0({eJki/?Tl=FTK!ԕ *Bai"HR}Z.٤"wx\?*BH'ODvhc"4elDX90Zg>_BmϾE!]fj^lM ;vQˆwJRAF!)'c~_0_ ׉p)&\l)5h %mS;[}7lm4|8̧V(k0d+-9uC@UbPDo|x{N&Ay'8Ϻkg9+q7#H$sT7QC٭'wΥy7-X+WV$C4=( xW nq>A.NIvΙ#řjZO53SP T 2D/8FȔLiK⨨x/|Bq)C m4 6sy#9+t^B qla!5c_4nUAfT-R?_Ih &Y e[6U!eMXB8T"Naف7~Lә&mZ;N8n$:qȤlW S}dsW@Sg[\ 6䳪%_p78sD|.>@}@FRW^7uҥ8ޡ}rG\ӒtL2=TV :qaF&)T.0g YSZqI('Z. TB>Zv3fwʀݩ׍, s?Tr^U.`VAv )q6 `XٟLh@}F59KSiQ:3 19 }QǚR+B2dÏR۸xH$,׈U;C+\BtvQfOEbMv%"do@]E_ CㄱLgO@;?+PЙ2pQU ¥^8+|> n#9)(USLLAn>~ZG](XN53cVxaU3wGRs̫խg  L\ C1X2QU)Rem]kg(AᏪm`x >ѩ;z8tq(2)|Q%L>3 #}G,Lf5ᣠ0ouar"(ӐRZT o TVh\?/"ћpZdQ6,)ka9KJr9 1zѢ}[A":H,B}%_'.k [#|&sX{5/ybQҢ^OnA?QQ'c&աvl/WRU/Zs_q̸kKPTxꮨ"e3 @G:'EZMK06fB &\'okB;X*D=3?^DN_l= eēAH0;C*$<oB:\Wjm749!֖@]y +V텤6E/N.%&$oЖRuz=׬ +,>l9B5uOLK'uɮxy9 ُ6R%ve2+|y_SeX㡰%D /QǜM^^JKطYoBt<^^~.*.ȃx n$>4|(H^s̠R)S.TIKit{X~ejނ4`}$moDC2QhI iJ2x!T3$ӿs:NSj~d=МD:kdjC"GEc*3)\ G 'Oh&ىbMY[CL*ϷEZ-0!n >jj's\%ڮ1 Χ?UTU{ZSw&5_ NpKo\넮2N#Uqs-y;*R۰r" U4/ј8u:km |7VWadNbߡ^ ^S4HCldނ[#c|(>}·xfcYZ2p|?K]d0/uT}4\_kC~2 띋V-iWl4-= eW}/F$zP&eͿ: H~ql{޹7eU+E)])>,`-".(yyZ֧8Xz?M}k|j<&-ޘ{FZIX.dE]~& w\&wDrpx~? gv5+Chn.KBʇʒ@BPhx/̤'n 0gz?GYmJ4n8'ئYWIܧy_Z.z{kܒ5䗪ʠu4Gs(R-|f8Vpyz G21rDνuiV¬ܻ\r-<. 1LF;ۿ9z]OQh%&jHuFc=j38E7*ct2x :a ݀ˋ8;HLS"^T#i͉-E#[orh;+z֪pVƮDn07_n@ 3D^ǧA8Mr>{;ٶM{ ?J"X[)" .$|>oǟIS t7UF2_?AxU׫US`bvx1yS; % Pq=ZxJ6vOK+ qbs}8ZV(B87/WkDz=ۖccܼ|ݍҶ#fЫq -πvȋuZɫ'wχ-JDDAU: 8?2::nș!l226aUf\Jzӭ8ő| +E lt#E,W4VrZ,׆CXzy~ X-\.Vg{ow8LDh;\ۺJT?Dq7H{hl- 4$DU_xda;RUb Lf;|Bd8@>^uEKt?0dVvaI*[o] >U=lIN4}w/0(`OWost܎ƲR56)l w!D?“d0{{Gu³ fݾ1(ꯐJFBma/!;zn8bʼw<_;ƒoЅt% ǁuye0Fܯ >ɚGZ4`8)d G;Wr >;V͔o~* \eh(b[>g|6^0C!xև!BI cWb]l@EwkS4^)ꢸ\Aktxuԇ̈ǖ6aMXSjއ73ukSi3+4&3$ʖ;!C>ye mI4:Wu.Ru݄9EAT񳈖bp[R/>@%Q%gف=l[$Orm:Ț,9g]&>NH1݈{7L=Cpyk8%F!r0ujH݄4ےr>ghVE"d*9qwG ZYCB̀ 8Ի_wmx) 6kh5u?*y[hJItl<1AtIq|'@7\v"ÃCaWW:.9jTVaj6_QVXp-?ב-Eaw}Sq,d`$)q-Ap4<~MVjP!rX|w'*Ha³-Jް[^D>bL Rzdk2m}+pc~=wCcn_Pa\'uEڵD9EVG@ݘY.&}~%QHDzG0^)tGFpG#rMk ,䗏( q[Y6̱ʾVNu?,@٧{ d/jwĊ jRɇ}F \K,)K"LЬieԕͅ]M_Zmg4_;ʧ7 ,Qѡ>b MYm;^]FHY' Ӽ'Ppj(dDo)Z9g'޾W.3u0aʤ@赗eީÜv_":]T`U!ҭ1701ee7ƕf4Z='pr+8I^#Af6:I ;1&FUג\kƢK\{C7ƒSS$RAs800CG  V&p6Qr#ҸIWvՍtYt0[lN. p6w<>wk &tCntHy/jIZFu٢N6mUk^#ϽO~e#8Pϣ>!ͳ0>yye-#ѯ;ېqǚ%|%CuC=gm#>OSgVpz0z n^&T l0>%8Q̬ ZkU5,?"~q@o\ eY@0^W :!W?x8%,Uc>Ԕo<mkddd9% 1'̑J\}1_+⻉ԶJZ[aGdSh89ĄIkW)7rDYC_mйBV]~ '?NS+J%W !7qrj(K OKpFX>õw#Y>;{'){>yNysX^| NQw0Wz¢?953.́8(8f- ~@GVGÞ5^BV|X Aw LOU!^M l}SWIx<{|5$.t׏MaGqtk83TyAR(e#w*D';~Ed=cCMxBfP% l1|RcrFه4uGܢ4:7.utP_n 2njx'~xAxiQ/$댞nʫv8)@ZUW}# zUe=&D^r&VK;k9TnPCe{?Xz00EK}_J)۝\&Cz+k;b? H}{BV?cnV' MP#˿?%0aBG>n괘k 2.w"4InQ[YO*Q@P&ļD|etN["PF \g5AE?>m`3c k nyGZt/{P ^uk/f?J†:3VId:TmE| G%Ņ_t+w4C1[t %yL Z x 3Rc{:9^5qB/,ZHbUMTÑ F-1'pN~Bfo*Ot1zOWݞi C< :]`1=#3T[,ĞXžqbOҾuTpx/7buP`\·G"~e2H¦ŅnpQSf "#ik1Ov5=1aɄ=rW-x/L{3v?l]\}Ff碬_}$ Gֶ=~O xЉrP h ΦQ 40>|g=4$ZbiKEa7M͡;xז)F[EQs6p85j9bZNkÓۃo&3) tDKHPXzGU=+sS$ڦ.dO\ZYY]{JLnHmsxg{'SBc|*큠o||eJ5(!a[*QH3~}/BM_}[EAF~ ju4%nIP= +jWxcֲl7k҉x-)*n4=x99ytcP!h Sj su{K1-L=YYlj2k_v{IvoctgKkى+Oi$`Y9;'O!}Z!d}+=O. #HJn%T^\׹ Ǟ~cL QV~06k\uF( c,[;m\;⺨5L:. _lpS㑔(.QĬ?JC!F+*6{1ؓ'xR);QbKuEj&mqpK滉 釓v u }!VCH+Jy $Knj~M :^z MYE?(g_GmVGXTgl7EyoFB K/9#"8;}M<ۧ|"C Lq0Fu.'۪`Lnʐ:.4=8Ttʔλ$ey+WjZ(`ǎ8;!h)ǭGՒtyD H/pO !=,])QZpo JN ݹэ @/cj/0z:/B(E2J"ػܥ)9O ouc܆3S/)1',nj@Dй1X.yˑ qg|{碚T>E3vjJu<2j`wz)+M=կw1kdc{#*r$O"z8"!2 qTmp|`_. ǖD<r/10 [-E6:13v հl_[dIEhQ|Ͷm֗P9_6cPM%Ո=ūdeQDjDd Ӕq/L ;GL2cW53 XiPbC_>!3>;;4˖R cq}K/ylf0{З> twؙpGqKO=jSţ^eV ^hk' xJ8fofPTIkӕWi,>MJ,^5U<3zioH%>X)~Hj||X"/5lyzږh%f!;0{1R3(1܂Z$s .\{g"ThG+ʏ뀨tgb͇WP 4yӮuubt?x@<bictmVH fNExu8Cu)5r5J}{%ДŞգڑtRLzܦxɞPqJ,f,vHÑ1Qso1S]95 Ao/;ң畸goAfj5˂y] w O+ aTEV!$ GfQ(Tȝ K<ί=-m r*Cvv|%ϣi T>R_u3",0iʎg2c}9g4q_nQ̂,;TU cM/9y/jQӮ,IuW-ZIQ~a'ƻ#eqQuu t]R,*?["+8 EL!q ڣ¯#-_fJyaSvE(/unamT!Y9Sۊ4fo3^Ie%a5byH (};!5~N19.ѩ49+cMuޢjn!RVTzoB]&g qvU!fx/GSReRwT- ɸSwFǪ5#(x)U`\PD.O+{kq[Nq yfľlM9m\|un5CIG-c_$e#9Xe->6E=Zv"EO@"b2{ų)|N߀(eږ ^+1=>`\).a"8~BcLegh.*|5e$GrjM8o %q#ZaF?61{H΃5]Q^Rv)` +֧7O3\1Rm@&Ǎ:5Hr I_RFᓿ W>4YIs9<}.2 öN? [Ih8Mw۱ۄYAQO*ݮmZBQ^MsJġ cc IXjkȮFxJ80QFI6N kc@-}Iͦ,I %;%"r'+F8m,!m :\䵟CFn dAj]XK 1UJb+ '>f#ZVNX@ɴ] I*oU0>?uDR\a6M>rƝ[Y 9~zDz-3㬱ܲR/}USknzP@By| ` WĚqʕ4Or"X[=4s#~) ihr:G-k_l**NuX:|AִnFzFzny(LqGbp ly _琙s-LZ3x58_%.n1}?$kBIHJIQ)ns/3$W=So~Ք&왂x!Fo_0=/{gz!/є-u2>RG1|Xik1R*71^!SaUwiǍVqzW5mAhT̫jI׮?tfzV,W0Ïhi.WļP,7#ĝucs`'WG>"8[#rq3E<8N tN!P/ڬDlK iNy,wH~+s;( MK$u` . c0'|#zs HdA.uS-x Kq7:~ʾV`0Z# e>f(~X+;Sp*ZYvGmLDyz(7r=SdXtaRq9~Cr>e=mC-*ҘB0NbHv/5[Qe2Ćv!?#1/B!N|l#"t>_@ϔ(@&5v,PpW=2xy dsZOq軅}{$h=.F/p<L bqSV Q X Wvaah/x Kѭ,hKM 5'RFr\Ϭ=U=ex!TqˎzntL?`EVw, D=њ~+;7rQ!]c 1@GpLHMO-&scCSkmm3?-d"|Co'C0'E]G^ϻ@[/ˎh9~6G!k'I\9 4{t7$Y k@U4\L:Wb&N S=6χjq+/ſbg=FaP"0HxǮRtK-@; }= \p=cW8M-${b;;.Kh$u~z 5Ѫ ¹ :}DI/#ʟPxIRnCK;xv`wRxi/swۼ*=!^x*+Ŧ eu ؋G)޿j( PF[.>tWdQq=nnFVV+KїtY;M%3MN)SV ;yCD63;kA)LJ:љd*f4Ž;&*{ݱPN携a"s;@\fNi)"t҃˻C jrU:[7 j̓cWVng-~ϖU( xeKo{vwRN1,B*FBXZeDvƒcr 4aB $.$hͤ4< 8GZX,S0s*PP3Sk՛+j*2IvI0CZo6#0x]PĕYMs n,xVo ٖ7@pVF H e3v1vfbӎtՊ,Uc*mf6@tAcia[w!8tj(#$w)\#fkj@k@;sk l[}Mi[mRE-K P F(3l1& aj,٤hC\SjKjZc(lt‡r97[\1mO!La a9B.LfRB斻 倆NYd%Z]\%_ K6J,X9[ᎺSY6Sj>1@^JV_Z:5 /7CIJJ.}K>88k*8O+[u;W̘ND]M/K/Ujx 8eQ8$'}ǩMGZeflU9_mʇ:ggX .`4'Cޡ.zNevYP, A>IaeLz!vGQ Z5t8'-RӘ U6={._RSDSR(zS Ah>K$G#,m@<=UK^~ eLeE1)\OS/@H Bd1%f>~rWĐެ>(LvNIwn/,”yNuI*\ 0EFU C~]v}(Z{aceӊk9&z@Tc#.Gۜ A&7Io S|b*~s4F&+=+:?u/\M=HFV,킪WXFgki_X8{:$sK &mH^ |*R.ݦڇZ< 3g(D_MG'(J7o>1-q:H%Ta ƿ-KڳpE%.t} ?R(^<.Y&>!Π0 /;jj*PObG-e2R7j!Nl u^ 4.ʱdⰸ |Ԋp|JRM`kfFgqn3S$z4˖Ϯ'䓒oCz?sNfp`,À݃*ڵJ$<P{=zegHܗyJ;UEoS}iZ_d#|Aa:Ty4D͑R nύ%eajJ$d+ahAgid:H<'ֺpC0 0 XJ8."ГFT !rc~|8[ÿєip#)fs.~f?8bnAHŝe M{} #Ej9BC~"Jn(晔~o\*^6>rxZu <|<'N<,/jJ|qY֡e%xq۳z;&Is1$Wb߹ pl!*q J<{N ѣ\p/[Pf. ,QJȢjQ}447'bPśv,Br90f#9&/` >Lδ$cqKKn~rt0Իw B NuEsy8zmE&j%iV.;B2|fxQѕۨh2z"ef[ڵ/> nVFM"CKS1{2!Ի cU]7o+g"+a{j%JfP'y1٭Pdj%PDpW&:\҆>,n$76DN8`,/ U w?}[nMᄃA\R'BGWJnkDyԡ.;vWRw'fV`ydS/BK7K[v坧oӚ"5ǍbggFSɄm+d ^G iLaKw3āoNpP>"!fi8 '#>9 fNR #mh@ݺ"1@}bă^/+ |a_ק> /i Cs#T>P B*LsKgjHb "O`k~lCbF1Z, f9oh3%#ZX}`X6uo3ZPwYmƦPBNSjjӝDnÊb8 bH 1ܴKk[+ Q*[Zp eՍRM6t.- f U},XM 23l_Aߎ;}>7#2zjigi2/YK WF]k1)q=J8S3vc )/᪄ _xFr D|Cv;W|+n<p w*BT~=;s+SmLfFљ$,~ؠcdx9i0*Dgc,L}o.RiXLIUJ\3{;Ro/N6 E?2NQ[Kzt.1OCnNq~K(וK}f5(R$Rj-7_yTS%xZ`jb*7(SA6$.~AhEuEQhraE|~+0?=P( Ӵ.Ynاo̚5L}^ rTQMv5)kgch2 㗺"-hY$ I ;vfĠ7:wyLJRu#>wf=c[maiy<{F^033/ R`0ڱ~nZx'?k3/6;EL퓼ѯ/}`dTYHc)rޫ|!m'nvFn;Ӱ|x"}&w[PS߁3C+M0WU <.Յ>'bn43z !-W ~σ$bojc3Ē$sx4T}o\V)ݡQ7N!cOX.L.u: z*>3@}[`IEg$ ad:3vA*D'nl[+:4bd`:j] .3g]xx<SVEYu[ק庋G0 ۞k> c(Q-;Q=mLc  K s¸@Yi"o-ny }HdLEK*ԩ+7w@a:63LlOR[KpI>ky?Ƴ< ^Ce>J`FӏQ䵯8ލ2a#Yw)uxCW51wA|{Q{#y6YڡU/$oWQL lMB&^j=J_1yVgeo|9h1Vf6e%?]9 &--7u:&3C2:-vvC̖̼*W0wqV =mMm"=HzǢRg v$ˋ/H卞v/QH"ʚ4jF [ٝ434_pKh\F22ME쪅e)~p)#Ay|`.϶5@㪦6'.2T PT _){1nZ?ykT>F8]z {r) ֍|`  J˫f2,aʀ岓sQ&E21g{/NkA.nCj[ |qdHXn'cUy -;J7vА6بr$Tf X XSt4ek\~]+^$L4r֩'dO RO5٠PrfRU75ޔyI\jHQF% j_Tڡ1dgU\%Q{ހPtR/L 1i-a GmC>V-n5FUK:5l~7mAIG {/:8alԒM-0)m_' Ȍ10J`Z(28W]@LK]\~A8' ʄ0*BY~0q%> Vi`"FA,7rA}΂f&O%Ĵpbsbn!q 5rt'IXj: 5ChTg-AA+0R5G~bHPj4.e_6i;^QnAo7󶃶)߯j@Jg/czz019r/7gD c7Ppdp$,x541Q{ыRg"ۗ&PCp!͜GQ}Ƽ]A>QVcdlړf G}5+4FTN-Kc;>D&^4o"k5*6Y; ra"J.»F[F▴nI=⒐ҲM:՝O3 ,,b@[x@;6-:iy´0Ӡ o_;.k0sFrQO@AqO%_uB1yTx>J,L八򪺸=S{SEyD@ ueMV&)lFX;t}n H-@3 %m~εUKxHƂtO[w5^a)OZI"c+MF`S-:6;ث&Zeҏq1<>sc +e'O"U˻+,f>l$fl ln8QM¦;~y 19ut{$ U\]vRWH 6"~O&*& oOzZ\WX;x>p["@*tbEohh*R%!q֒A_U sn>^Shfc}Vٽ<0A_HQ}sI`S2I^r3CڋTa+!?P8eEZB]?9T%6&jaM-[G 1XXէ|aNh -ǾL $G3KoA k^otlY[.|'>(facc4yNd/?gxԞ٠WNh$ rԪb1O 4drRՀ_ŋRx''-ZMCEo :~[U"j|lI˰D`H0;OѢ@}[8Zb!oN\0Z<:(͸F1nց2{C),J)Vz$X) MBDZMQ_c GE jy_Y 2:FgWm?9YU&D3ln@t m_HS1lE$l^`&,| #iIԝJ#vv x9/aWo #1 >a=]5 L_g~X$N'يOT"w%nXegqcJY.ŤSZbޕ5eY!RRH*ڿ!/AǗ\iS7 Ry'W5a["vP<㈜!eΒj֥RvӘI*!a \; =@uNQG=ϳ˻jȑC! cPNK/9JIu˄VOì塵#(L1+A"X!ċaN0M2zls%!vŽKR!nҡS/,ުd+V HOM+,K|ZUP*x8噌ܶ4_nf P脻]bPCa*0 Msfg04}づmZzx(U1P `IF&0t n >ո~uZQpOX6rU;b*͘h&+[g^2fjBds8u轩Χton %}KPx~+9t}Kb]N$;j , ᇽ-ĸuzh09d샿 R\fan:S -dO棶O8{!M><=ΠyQDyˉ 'Ոq} D1fHD"M榍֮N .}VGP}ţs*# `r I%eQ{_d~z mC +xmFrȣRoY-̇f q|$|#N:. T&ثxH٤=1=}:|]m\bXo6V Gu.anIZpT9`%л$Vk"@O$P*k+VPz(dZJoͥ꣕~͍;AKk_$oч(k ;U`6ib0GeVĬ / ;RfwiB6s߼bZ[q/'gㄏZ(7a߷xT< N@5 Gi :.i)sr?ʿ*Dv=jTmvjk`%ZKhc![Q#.ވc Y>ݥ{GfxOW^ሤ326f/80VopYЊw~GTrXHTabp|T{M3j){ҏK:t6LQHRD"46H5 ݷqc`2gᴲgc\\ݢ-2Bgyf9xI@5]6lƓLWr=x?|%k,:^_HZXcR:(n!fw6ER P]G yÔ& s |d'#:ËE~OMoYLzK4Kl?QA  X8z\&y6,ȫC  F1x}jӁ{'v`=jh\FH*تKBI$MmZDLiHTȓA*#_.p.ڇִkղ7NT9Fd[4k6w8()&#ٱvM4m`IV~#qBw)%6m%?' - /_Muy&cx\N|gL2՛<ԛjM"Ś쎄~}oF[?JH_[CՎUoDb G]c Tp"*wS{?pH^Bd^ڨ~JU~7TSnTn: }эQ*3"rVVMׂpDiSsbcrzg탏qOxصWS0|nT^-]-W"D.)dV苮y]GlMҟ>%ec8fO ;WcIAqbOF#fs9F+,y葟+R5\(#5:Sy#-hr*C4SKY|p5,f  l>œѕ 7 Vzy/aՍә`S 9tUc'c6OǞjwSn<# n9n`kIK6ckEa'DyDfY+gc6B:~W^HUϞK1&}"AqUO}=כnPS*l!- Z'bH6`#M7\%eRi5j62,Z3wlы$yMQ,D:H"nk#?p;UYjJ~azzP?{wuL}nG, T\b|>Y8}Hp sxvh!3Ap.qKO_G9m "z_I'I +Z9Wa^\rCp̯޲+ɇM'/@QLMiR\mX#ʕ ɺYlL4Sv_e*m.vc^Gt{n"&q='7ghJLR gfl7Ƌd%Ndf* fs|4:,gˮoXDYE@ɼM@<з}J9n1_I2~ {+A?O{Fv4!0Kt,x}=T.o`,UC+Q,!_!JpTQ ZZ H,?(){wHȭFf_VsUKUyH,O9wRhPXhx%B;$;G]5(6|-?l. sus*t>"ue`˝.@(0g^Lc .>5a]&ݨM]^ՌPo&ȖEW ϳ,VWkNs8gK?SKHQ4 Bf%ft o[cqJW)}u{qM'GTo&E9eT]tIIâz߽h9F$M}7>bKUݿS5+L- S Ƞ -|BGT)^2\Vڇ+BR*dcHׄv^C̷BNa"m"n[~l 90FQ7gpTZcCI†#'N t} P]x!F_JoMA *_t,f[<֌-J%=[O@ަ^-Ur'qZ—f-쪋KY|enVG'r$ jbqw[ ' A'1յĝKu5շ_L!j&XB(&spRbK2]ФGrnuw}Rji0r%n49l 8VEgY$6!HhzPhcol0ԝ׈J~z iX T/HB94 EkA3r`/a 0r%h9k5,jPp7 ˹<IPx_tǾ4vYf"us3@v6AHFSXJbP) Q@ wkf$/eO Hqj`+)Ʊuaq&df@Rx{#TrGD$\,۠D ,`-Xnc2!HHi,ITiӓ!"Eo[Nҏև\Bû&] 1M)y\uɃڴADKAg?&+s]{ŵSs XX/ fF,\t&< 624l}+ Q4f䳨6 ')PfP"L$e]&xv~s'LJVE  =dbtZsLAYx@ݟ:)ANnXХڪip[q{~*j3RVvɳʞ'Um7дu9kOtnz%xNutX@* $KŤNXNW5!U}G*"K##ɆIB~lMJil-X[Dʯ;baE3FWďR 2YӴRYQ`R 祟{?7d}̊cӽx6dڞQ+o9skF3X5@Wt=o#A4w¢߫%Uh(NPm0Y 2X/ 默 rkنzc{#)^v\_|bFۿBr0&{JTLBnJhhJ$pjyMà&Ҹ:Z{rGXXsS) hsO SBoJ|N5qi7ռ7ZYzPdlrdڶmNDo{r::{A#!6q?qaK:sfe# SfQHD |=N˫X~i3ozwS2iq mQelq0DY'#?7%y@ zzMu|Sხt?dK?W\,QL<+$,ZM5<OM O̺ ډo ð4ICtCjNa\_{ǏPTZRBah`~*_ DĆkXUY>۱_/ܖ G8iJJ-@=xf Do's[ $ɮ39{ɭ5qEm7S Ԡ#dxXf' ۱Uu2u,AF,%/3VR,NxGV^݌!ׁD`@ǰ5XV!a$и}Ps*AMV[n !4%0$Ahm:ixյ"# md,6Rj Grxm>B2+BȭiR zB[/SjS{Uj'1 P̣zj@h8e0F^NNfqk L6/J*r׳q1(nhDΓc!DwYǦzYRsT/qd ǿ#;K=M|T WF3Ob{5ohmHw9r[&N$T(c..Xxf14a YELO@gx@$(oR"Mr}3(-GKѮD Lh̏{Є|U )#t^8Cqn]IOuy_elh.?5UWjn s80 6Un"pR֛ɏȭ͕^.k45d"ٟ/#xGMD\}sk&4յa=_ h>c0Zz,YN$JŸ̹5NdsOMs.著qY]hNК!E. z go֞uk#W.Ĕ TyEYn~QP7A_.E)(HHmМ9 N΄ǻg__,`DI#4U,>  .I-4?A0s!-)r'P;C O}z5Z-543rc9"emH>aJѨ-& 1/^>ФmUi>xr>[X2ƌ\iV]6Cq} lDϦ{W8=6VK4#>9ʤNw\w{Vo!1?n q^㽅;nWS {bҾWJ2CSqnרO8 :[!ֻ!tڷ'9Z=aBy@I#.!mFvƛno{ӢyώEq\ϒDʶp[.2ahsMs;؃ܖctf1m/XB1؝# }i YҼ ީm"S 5c2js/#(1~$3s[QnG.BXz i oӔk n]>Y7 lKD_J D>TۭnIF5n(e .d;4HBmGKZ0eع2C7 \T(Di a6(Ln 4f\ Kc3S2uGd?izsڻ/hj)`Ɨ5bB͏1SP~DNd#>xY3P*9%۠NE&Pߺah*'!o%SKJ艑.!.Y0D`(K-؋F f8HERl֑] k7u&ر3^D6ݝ0Jt%/lۍ7;#e^ruӧA 5yW ?tʷS(eLԙC .ՌS.N;ٳBf%>Z"(Uh;-.~9eh:w mD2Ό4LMurqqP&EhTי :Q, iB-ΗꤽxfB&\dCu٩~TPqo$Ezovj]wN$g}@T;}(^} I_9|="_u C,|.j Zxf?u:=ı4\zc2QԂ]_{;κ;ݒ. ܪ[opO%,J >Mlj R ʧ*f" HK (62IA[m۞zC9D]^ Xϋ0̵v/xu/Si>HdD*F%{C"IN$V9"8((ŝ9KfӺE?p k~8˶߰(0Yg|èx 'Zz,ǘ,UM鹮#n6 s?~CFTe<'I p#Iϯ ?O6!֒$y`WT.gZc%兂gu؋2j Vd*R ya2khG&~fUg[`J˵F*,+*}_ne21?Y<j[x*LHA4)N8,8Saص<'wix7a,Fyb:S/@h0zKGv#]-JLt0"l7NJ \A}zaD~7=@@` )RpIv'w=R<*Mj&Ƕe:+O74UٴNw?'Ҭ2hPNned_7c+gB?2_!;U*W}SP=e eʤSPf7vMK99egS+cu'Tاm\Ix`UGnj+D5Þptm'1QVxf8XKO9'=([PUahq\G=Jиv,Ыl8*ʇ&$1v.N_4R,=Yq,vo|GUH2"~6KG0= I8c?2+n~0NjM7Xe&M-1[%,'H)$j#yV ltĀ+E\nU++nߍMBw8Gnk vM*LE!6*cRRj7%R(;6&9펙gE&.z@klu5~ʸ5}U}vuԧwƑ^n$>9 Ec*R A R" -2d$ZdښCOf'&`z$@WA/:J_t*+YqP47h&Ipھ̇*^]~I& qFݞ*OԷlvͧ~*U$`rGg :-xdZhu#ZK5#^Zߙ6EN*¢$ ˛ b8u-"UǨ*oHf6 ޞݎԏ9ޕQ C ? 2K(N-G"5bB4 lBI["|x}X OJba!FKq˪Ɋ"yp:B#RKv:_\% ~@E,tqO+,ֽ&аuq5*ąf""Vl6|A!Y44Vwτ`sEW݊Jئ;HZӛ~_!j:EVľ?6%kzTa֙jWWaK9B!+9Ѱ{I/Nx<1WuΣ+ >M|'+@F)>@"3əbC e͸dL^ x=/leXZÿ/Su`ڙ91A&ɢr&٢vu@<x-'wEY dc$dx|X)_Za"~cCGoyo1 Ihc$mZ bTbHv fޯLs/{&"3]}gIVxhH6_BZl(v5Y/+7hLHaj gv9Z[.H#`8j1X_Lדf~/(~(jG#I?N( 6Ѝ#1S;SS 'ye/$7^/(ǟY;򃠎oHFFx'ѫ/2;2U c \$ >Q:@!p;P&}~2[c/16+ct\a8Gl(>aAC YT0Ρײe%u9.`˼R 0sqw:וt08(9(&]C#rlzӣ umMz9H,6aԄ sl4ĻuYA$|҄ $cƱ Te'I"k8YWR:l&u2G[DwN40Ϳ@9r\"N${N}PwGuIѕ @ۊ(%K" u ,> 5qj~cٺӋAFAOS@>m|D,mxp8̃ZN=H0KAl*u2)?IU2Z[Mjh3 ?+H+&}-.ŏd1)4ȓ4!%WI`bPGe?Mʮ_ ֖h@$%uQl̍,9V'a8՚!%=y"r&\>ЊTƧ"*fߑy?wG{{7k ѭzD[w!at<κp.{_kV)gڼ^_ð^Ά_mw9WZw>u({hl+@㺌S&8P =S\H k^c :TЙ5>eD 6)ca=yN!,gWn8>PY%AH粼s @yPj^+'o*_M6jۍ9-4~4:Z*HU6 ֭di(+ :Wkg5b ѱIKr⯸+4]Luطg\ɳ(7q^!폮Ogܮ MS\R~N$)oj6äa=~"a;Q;LKwM$|5=2 JRڝYTH .)!af:&[hZGhv/%}A!~gkƜqfQuvY&Q*-•OI ){5߾޼=ׂj^m1y# x0$-5$2%&24h}F*r DiBrzN/rd>7uZ]ŸU.qƉC+.-YN oa8MBU^0䌔oA^!36G6؆t3$0,/$MM_',${a[8H[90*h&h#[jބ<879?O:Rї16T1*~g?׺r(Vm0AǴ@1Ot38uP8?jW\!*jm h5|LKlٶ*50Xy,{2%̭]@Fnv;K=0D-Db3#)>$Խ@FivɁ \mji.oܾqBi$!ۤs2dÊcËlda/}A[(~ܛ#7ғ;fȻ1Z̴_06r-g ~V^W`N9<W_\Fݫ=xjB8AoB5 1*e{{Ca6Q1ўnI - 겭*x?:TBƬrX;CgD|ZG{i-Z_eyض:}i :.ؕ䠍K:abj-7 AwE!7k5k}DRt"-e4=oU(| eg;Ȗ(zBG̟EGK]6}@37n ۰2QxG?j cS Ni t-n%nRD.f!Pb(jD#yנR65LI]pbe6HBDvtCtEKJwW2=Gr ˩hN:[Gjr(+4՟isK.EALFH œeTyD'a[N.&K4?I{ ) b\twյ9LX?]'+A7bmTtl]׬,{#Z8z6):֚p1&"ym|COȊн~ZP=x'iC΃=TWڔu, BEgq1t`r6Vh="m ՈݐjMs 3@_F8KjȠ(N=vFA:y <^~$()@]vHS9-:$T u5Nߡ3XI|WAvRN-OpxK8` _kb|f{ij ]G5uzfVƳ8?0!"dHfC K>{0UzN2ŝYXi޻*x 2k4V,2A:+|V:j? `F|L@f,J C?ӰTLd^65jo_z*Eތ19.C @`{tvIl@GGF/VeB]zU!v'f1w%OAMQ6r\ } -Qk~JxU` ^!}< (П%ꔔGtϹ&4@mm.K 8$0ι}ߴ{6F0P!Ɨt/vh gaO -7cFK'Üq>b񩀲Ű.ݕ7#v!U#kH+gl ='?"L Ԩ41EʶQ_#h"$1O6Q/HoR)&jSKB|sl @;m+>;PJF0Ђ:|ڔ3$jHK^_+nH{=nyC6,̅?Y gO9? Y gHOi _PX/~{%!Y$)6E%)G'^Ld]}󤚡U^}0<,'eӟ!~zerd DieEW|KL`}Xq \2k+В[?zIMxT5`T"6}y9&3R/II?1h O!"N>4i_@dR򱸆lгzGLKaD'KK&}|nC0DBY(t~ 4Db~SL-'[~AնC1TC΍xE r\,YX-C K#̐/CelɆ(b'j1Q%C`g+r? >z:x!X*WZ=h2M*Kc<N'I2Lb25 bl.~F0Wr#|]Uh V ~/=ZH'$f{ _ 3ؽܑmrDf\vR!.럙 s\'z#X:KOa}:[뛺`UQ[9cV}6GU5˼.h6 f LSIs$ WsUd> 0+z,Op1,)8 p ٸ(da?^1Yz cVRqX/\zu? T{9 _s!5[ʌPؐm@:io HH0~U>lC6<*KXxDV ! GF%!kieb`k },=BKI:tk(Pu} TET[+3(:CpJbH 1ezh*A'>ʹQG:ƭb4~k \?iZ)T˚[.y#u"uΆǴ0Oz-{rˆ͸X)]dăȣ,Tg܉`otcp#|艏 D nqP] [~4u#,n`(B"w6{ϧBB#m2t@Ix ʎm` -y;eI0(^.u=4ܜTOt r:"AdEI1DXTD;i4zW 4~ 5iA=1)M==m< А< ]g؇ m.v{V L9j G&')o.DН4-P֍B3z8sfPWR DJ+Ȇ5fVx7O"mÔn5AjȢ{Qms}l/yh ;)ͱOi"՝2ٜ^Ϝ(K.A1saq)΋|A{t<([V'6>9jҖR;3F ]5|d!Fy`/<P.F5{>i i.RpV@x0}|s߉9ru%Z-Qm=ʋs`GhӴJп}ZQ([\M0fʒcZ[c7ZDuwtzv r=:VuK%˝<_D BFJӿo&+21M7Q2<|\d[ed¯ }3PПT}X%0Hmlk枼U!٩+.96=&siA;ۤ #'s>f)Fe9~?[c[<$+!Գ,p$ʦٷCp},};ePJkf02E^ ] xj_q ~^L)҆HQkK_Vzq:tBQzo;޿}B)e!?nw5LqVy*1&=U+b1 SH,Jv3w SIUB}!HFd1 R#*OS)O# 0Z'..P3A V>(q݉oʷW;~و :w\9ZUUw2o24v<A<àT &CX6(m(-k˜C)VuUɏb.ڵi2i8! j#گ\~bIW&LUAЭq'a"c4zGx Ӷ&w5QV0\q,]$89P+ 8EC-%`A!^'lG'>-1] W"2 ͥzHΆ3>i ET^n:q7ROy|Q#.IHuUTOX=0vݮ.,o#@1:tWLU+x$Gn@C0΂huhG_:W^NΖQphS)%#-aS"{+t!9 h*bGȏx{N v;|&LfGfpH;H,uL7M2?]_p#_`˖H21c@e['+e&Lz;q>H$RJR{W1O&NE0( J8CWiB' o7d^" a;f$KiD]]᝙!FEEvЋ)6BR7&q!y&mwt=@wapg m1玪j-\çzH8K8eWO^)ش񿟂^ԪzZKxopU Ʃs]`*rpj>Go&~qzIoıP{/-7cT/]`<t}њxͬ[J&,Wo|CE!Q֪Wp!F=a夼D,C {[|(͘KQz`3Rm 5qYWQD*&U; )L2hZM%]/7s>ݜf):1r8Tcv/a~5,8K S G-p|Sr!F}]FQ?Uz`s>R=^/ So+T:~.dvq2tҢӮ7x x ~S9Y\{CD]WMa]ŅO;/c ̠ դa 3^.tJ:Z)XO/3o`OC/,fĦ-%B72yiE*xO)?Iے/im;k;=k~Q_fH_։C:Oy4ب\c0) QC (&d6C)'jzO $׋ OP l=t4!B^3&[ FU.6\mg2VJ~tEhV5~_/<%{1q5=Y0mQ7@TO)0!UiNfn1C%d4 \TLq2=96ʡ[C)Fb8ݨ 8lS`sg϶݁r׷Lpv2UڼJG| sƲQU3KW# FBƩc{hC&ecb-2Q)"ؕ 6z7Zj6|9hXExSc[!MⓏq.L?Bb!!C` &IQ>2^X[*Fڕ~<0~wI>]܄\}a/JMt$Üt0 NiDZ[4BDRKG y^m{J-fI-eey/1l"ÍL@ mJ[K+pjBo]~q.\6QoKng ?Pzo;p htjrf*]+TaZ*nֹ/#fkRG4L_Fl8[HBt2;$rVI]3p~-[G??c3C6_eA> + 08$V<7A)%Ðז .?[XEI {)< C-.ZϔՕjlNT/7$YՇ.I}LxuobMCTT%@CUg < ~cRJ0,'T8@ؐ;W5Gem4t\>~E*bJ)xjiٓ^odS3\zN$2M.͚ѣJA\{+w? Ho`%$U? 4c:W*Gz`[ФٳPvUmP2X'L6x3 yE;-,ȉ 5jq{F2 d”7b, pqV"4Qz@} E͒(mz!$'_H8V#DSX0 E8pZi2_ٯ8zYrvU)$'*"@@IƫYQlb۩A|'MjBO1#yJ{i+ۢ<.6zD\mj6DMҚ'Ӹ,ڧ"ݔsu"EgtZڞ jyG`\^}0(#! ?"W5(ZwI,b{<>z5)/(ov VxqAL Rƣo(Fs6f ɑxq5K!T|5L=7:Fq8HoeWp~ .'h |G/ٚ@_4NWV>`[xsJG I9h맋;g;OZ-*InjM81t#Bvt=,^QgpObD^s$e]uKLW'++F+&wu5lNO [뗫%uC^P Ƈ~5[9Ū2(jKU45},.R T\<~55+|3_UXtO}_hZp])y7ѣ oyY`)OL \HZ^E2,Q<r|ՃFq+FT4TSgpI7^F2 l m}'c[eb %@oMFcqy[`ci+蘳 JR &w5V^DqGO:²6kg"Oc+Lb5wB!ctVkӰ".y7qӝBV}h؛J%n֑#[;⠳)<O-7cbFX_h%/ړ#U4("8 C5aģ'_L֥̍}[FN|_˯ra\"ݪyF4Zq&j|f+Ltfdor Pހo%@ 1_sஉjQ6RAȫD!gF!t4> z& +::ǘN/}$;]Qz?'NsP Ӄx1ѶdE9ogb^u\a2"-_+F(/wU&" W}zRE;ĭ ĞeS:^}\>ʶKPg8;vhO)9cIaiUƐ0_PeP an`3"^<øRINe4PXe23?4w|Iճޱ>u4qE7lgH\ >͠imsTo/NJኂڕ3HcJyccy}oIjVn %9Q&B~h #3ۇ9qlw{)ImcsUdjg&њ7_Ȓx)˧Lϕ|I >6Oʛ*aާϮ)JRI{K=V2wrt^qÈrxƹޢ0?} Zuh1t,MUҝޮ%'/)W-[mƁ޺zE,Cm=Z./.hFdJ-ܚ5+v{|~I+ά΀+nQTiҨG14 Ʈ2krr^ N,5Oo (鷌~Tm[kHgkD&hz9igp&p^芇[%{fZry%|bv,@+T3:oBzvn{vjcb5 -rg%GEjTP&S k3*sh:XGΰSp(r^Szf&iLף.γpzDFj M~J 1Hr6 jZgZu匚sјAB9"}^R[T+f FO \k>=9@ /ҹoV՝?'Y|o\J!YB$Mӌ^ uU-N#5GpJ@WN'}W9!4v:׽/Mٮ:cǥ4ܾ_VfHCcdtL^ 7Ӡ׉8 AXst>wF1!{X4<=9?O CwŨSS2f#yQM=Vo+'XOf﷝i FP1.~;O,r9_4p(^޹"f:AB  rxyyDY4*{Gx4@.m@Zۙs=`RZ1+[qKhT8Ef%G:>VW(.M47WV@xҸU/]UkG y9,pYd Q\fjscv\xg1%SCC?5Q ,Kw p%j%6u29 ZM'9qiͩ>!$4QuRD;E e{5^Z\= {xmI"ė먦_Rvjԯa³yEAxj-J cT(4J(z5Bkί\{pG噂/B$)(y}uK"kY3LyYIIBs~9)&@q&5kf*yӎK&+ݯ$D#xŗt4:4W(P}3t$(+YHh.yaIdT"y@?~\GR\"&β"Fc9'.P=R2VVk:ɍ^i¾38#ZZ4H)RW3"@\Y$3&k,0 2mFch 7V/՟^SVG}6ɢޜw ڟ=TwbDrSOjlqu^tG\Q*%On6/N=*6!r2SlPrenaT/:jz[5_^+~x ;$,Yi (T$ۭYt `ɵl x\Z4@3-\=pnoEۺf;LQu/p1smS,'ߍmy9 ft7GeOKaGSqoN.;'gn&M(PR?ESH #3|WPJ_*i`$!Tr+5Ijmlau䋗ovKfN\ix0)KgC QvW,nY=**j>:_P@F\QM ޖY~QU^et vM$rbHB>xw4g 9s]'EDG_ :Pr|MtSihMpnl8=TաM^{ѥ80Xr6-q$:CjCÜmG\][||v@A;I [ 9*}}*QB~ioΟEBTxM K"Xc5ºJVK !72\'ЎX@ԗEu$+ q!]:%YU:#i(J?{ሡ{k%Ob/vDmZ|KggԤvb@?1!3 [o]:{(QBO6D*}vB*[rP"`!;-J *EvG+=I@!]SK, 5b]ՉUfS):#RY~D%!WY3RyȽ#%p&;ŶҼo!EI+jŒ :G8YgУ)eGQAp3pyes}edLԏԔxY>mWsٿ([}CvI o"8A }]Jjih#olN8I/6Of ttz"ie{7B_‡<`{C]usB0jx@hn`i?h+OAh'+w|y?u q[|f}o$2ꂟH.Yyf٠Us&q=4ܿ 5e@q &o84bsc1<Qn8;z b^+1獮ȑς$g"ظ\ 0WYk,;xK4 O%OOءV,Hʬ] k? dqR 1;Uր:? e2YkJV혣 Χ EE A-,^mf2q\؜nL{ث m)..⮾EP/UIq!u͠6@1=W~<}!7uLfc<[HɈB~L). 0Mk]TCjhc)J84k&ذ.Osꡀ[nIApS|'=%* cv=^y'$@E4v^UUieÛE;>=![l֫S7@+QwOsQ<ƍ; KI4NNBΑÏ"y|Ai"b?u?6e‡@<"$9</.\`eSgNnW2:^@Բ)& 4^ц_\kNCDo'H~q{uvzxn`9:S5jH@TW֭򀣒*e nE XtqU@`m\0\k<5mpfx0`B5Yh"G9I*ڈɴXؓ|{ ^M&d|JSՌhj? d!~s)'YO^Y١=鹿ZixBƯew 67p7\>4_{l.؃-YʨJTUq4ޚfTIT$"Yw}KnmT?xUFY5=8`}g'I馄Z|L[l2mS/;^xfLK}qR(*:oʸ,;(:2Wf蔋,".5Wla_M˳U0"ֲ(yQd;cDIanu@kHlp,j߽Al"9+:wAo^geq<& 59t<@Cf ]V\Sc*t\gV-U81n[(5Uƿ%uЪq(<ư|=$# Y>sZGCUAgW/08R6^dbm["=m}|,Cz_3)oj a_"9qs?xZQ8|C!۵̩O7}2_gKvBiKHCI(nLE@[ާd]xK7/RvY/RɑgR3{ žU~ ԙ4KO}d`m&5`)4 ߴ&A+Z9GP_ )ZR2~anWFwF(@ͺ֠&寧/8KmҙtV;ȔjYǀZX [VIzP*-=%lx I~ EL0<9|eZq]*+m?ɂQB(LE;袆xL22W FWYz<:a/,X&ŭ21_z`>o9Z(OIӍm㭁}RFf&A%\-$ bԛokhK21ׅ怑JGVhwp$6pnF ]!^eukK*uCEC[0MI!W3I$;QR}+ 0XsY-EٛcݦBִ M6Ԫ/ciUi9fc _8CYrEZ"( Z߸Lm :~7GX+kr+y/BqJw| MSnȢGK js68 jZ񗄚[=qZA>}ENz=7 7\H*M4mZ/R: ܅z_hv<@ b˷]Ըv6cwFK!"0.&+_a(5WGgm?. ϘD/8Jn%|"\lka![}2ؖ$:, ^vW.RBrdʛjz[A>W4r8,r|@s8GFs3{|ri<|Ď(-%Fw ؍Qُ6IUt P0c) bQrIR>Gq4h!÷Qu"RP|*4QSzmUu0nmEU Nܕ3oBQ䴓rS=D$UvpTC~$]jbSxJa jm]+hc(b7xLP(Iy¼['u1[燷*s0ZJ|x8 *!@t2r}95nUGn,[v;v Yrx0j aoŀ{hJ[S|íheWo2ix' )Sf+&/w(Teeo6Za9,z%(e"j*kKuU&NC~7|2 Ε' cQ. a_Vm=7H3b{lm Ntb3>i<+ > ->[^~<n[ ⸜ (zR>Xźر2st|J*?>dhX,*3vO\{;mJ.Enѓ"y QކZ0"%K;=x̃J =J*nXT ߩ9:^w~qm|s*SEo!x|m]j^6(!7 X@BBihGFu4\7ZhPhp@\T~$3pRt}FZ+,YO:Xg opqjl>P<)KZ!N٧ڬ'fv=pqr2,û'RXC>% B>QV/Xw%[^o&9SB8v/~1roz<5J<7 @g!jRً-dk#YMlH$ UÊ28Ҙ6BRW:G~ 9j\YIĠ?&ޫPO<ꬅ1)^i1?(ۖq,g\ga>v-ڣ}6$)]\pmr1L%mBq&:Rς(e_`rsFmQ_?i F\z(b,Iyj|ZK&K%1"E Tq"m}3l3 `¥@PEb-( k9W1rl(hcIm>Ahu]wy(Pl1cjll,$< cmy52E+L?9ͤZ5 Rpf1>64בvx*'h-K\j Gxǘ5k* ,:|bRۤ&N{Oνefj? r wZMY.pF>p^YS~Ǯc4J|J6e81MJ Q_~JWXk|](%sif& U1iGd_.^Q_^ZWcA~~pN*4)CD{}4NL73:9-3v̦ekx3y$FAC : 2Ӌ[(xTF)*˩N_z'wqi 9zM{).GE}-Vש飂mj|}ꤞp(,IQlH<[/O:C]<4vF g$Mg,\NK[ZpF~Vp7YY'/ޡU5Hu-&a~ݭC9fIs޾I?(N tԘ1J϶ʞ~% +ReЇQ[:eL e ][ kPd5,xFFP&F?c' !Ip EY-E cC؍aUvs^8@~Y-V:;}!-cxe3"`gpGhvO11Pw) bI c\cTfbmdk2$}+TEmxyu>i@0cՏsNR #Iּ#QG{fYu8X12| 0m ["Fj$=%I YAY)Y-PLD`Gۖ-q]!)iJ8p(7M%/-?(/7p7z Lμ < x,nd)?l6 8EK\K-FI *t#f*JJGP9TX_/m.rڗt wt ]\fRs34'zrĽ(T/]L{"W'p2g8.kÆS zi̺qDͭNtnЅo=7V)֙gH_ U*D2ЊbdLZf A*LUԦJq=uYpZ@GT!T"cTaWmΊ]0(*6̉nv)lv@;9X`> HFKxnJ2AGNٿ4uq{q"U15SxL;o=0R&6ksvI{FL5l&QN/'cLMc.L) M}&_`}z*0LxmNI)JUQ=$ ے_R"5Bd1j'ˍ5PBYJOt@L/?2)D1l϶]`kX1y'jJenArA[x*=fFӫJZXI'n&g.'Jf+7UO]uAhi$Q9@SPնjv$ QϢdV]@23Va&C0OD6ΝL A~ľq ~k،e ףGo{Mf㽱 8:i1=V%+!*S t7TQ?Ne(]'\"Ұf& fE=^^%p ˶Zov ߺ2OJ8a*|O3> ܀®"쌴zw!)!g(a˳V peܞcTj;UQSf2n"++MT]*oTC - RT9ZtLScGKLA7\no0MʮHY1 ;3T1%Ӿ.F#Ä{@ +ˡ> {R S77J9a]FwLS×glA60S ([vIH(N2`6BZ#n +ӟxrG-Njc| `d~8WNjXjJS:-1<`(Ńĥ̳NO'$7N&wǂ!]c ᇸa+E4P]@}tZk SX߹ c؜rؕx9 JCg jled#5ݴ3dZMSKaiAF02=ĢU@`HhI7"=@7:`ۃ'dSdF ,pMIyPb|q ιF)U Bh=瀕@J!&xzmhϗ3Fڷ:ͷ߅ )7/8ɚ9xř;9!Tfjdn%+Z9,~Jve?Ty +xygN]! r ? $11Rg`y84YaKIATYuĄy?պV %W<7/siX:Pv['t6+ Hk"c(v0L{<C{V՗Dg&`P{8#S[ gE~V`h`cLEtۧR t_Y+6s}UdMA #0T4!1vY^:t'71Wĝrs9A@n .5qx"ldhUWQy3Y _ژTO1w 廩m_; NE71_:Ɠ=X\f~.%yjROUR`p2oAsAs~VDBMRl5VˠPǙ1wI K)p `M 6Ty0qZfiM;]y"13}7ŗ*$ʹN OvG1dыk(+ u3[< ycG#/f@i'_X%R\EAJ{ ZUR ?"AB%{DJ5;_'fv>y_̬P"P/RQy :]f][@iпp-h1Ű6V[HLEsPsH٤P[LcJ\?ĈߊJt9.j ،2X/ 0R|l}'1?ՅLs!ԫ73u $o@i Ir~-yE 7gpK[MD TBL I!?7{INK]J9a6/6 B~OUCB+ܓpj@IC@ʪ7ڈ4qB؝Wk 4>س!vllx8ułO .~2fZp(V6QеάT\V[Ґy$kHHbs B/N^m{ gmGRT"tnLArRTb#/X/AmlU%U\jm V?o=H5@ʼn=mRW̬hƀ2UV+) %nKVK 9rd _è|j&YW, HFǭ0w'ЎzGoQw*KjVN;(?OO۪ A)ɋ:kWMF_w&QÑظ^ ґgmA̾D [ TQӽ O/98d(->{Qͻlk&Ln*ijdZ/m(R]$a!.ܬa44P+0"Y?~0Ȣiz Hז XWW֣9:H h01]3!\mk]>W#!#:¾C3?!`їCl4zp;$='5d%Old*6+3fw 1kԷA8H徙MBځߙ^ ط]%vO6]L˯dלDT8wh|La%r^f!}'eߩci7åڂI2p`|ZynO[hV?a_6ul2 #(|~ݗ5k"5'- meNHU<鿮om}Г/t.ޕMi yK7o)hT^OkYH/bO$'s '44.]Ӏ A$eym+.s,xγ 'v涿TN`B艜鞆~c`\F| s )z ?âuhN aO2 ~8RDO EeFfұ *I(<} C"GsKIAhoy-}i]}Bzq\.oL.^2JmQC~dW;*%(6ךi< 뫳 &r5U90îFQK`M=T~<ͭ m0!Č8ǶH?ID2$ qPzyMzJU,%K|)WuتS9ߏL+|fN$,Q cbwdqa"FԞ<hVu8Vj|]l^bm]ͷA؁E:vͅ(ALT(0}D8قKHKD`>0a)k~E+eK8gI}ZHBbꩽ;X?u6 @owXn-&9́1FM3~"alI9ȅz3"A7ֽK/-)PK'&O/ skf0*pl!+$*W[XѶ`3 G!7i#1W-N/Ǖ.;_˛֔prԲ:h@fe ;kHpޓP W0T[sZ?ENև+س}̅~ś5,Va_"221,X,Nm/@⥐B #gRkmdn/hms]_/rG/_v{ސm|6&/E%O֟m@)nwW;<q+SWpDRG^|:UabBxb E>}:)78_#(8cJ,3צwEYg7)&GF\tRY8};,<$ Y18{c=Ym} x..j`^-\=%(>}Pum(KNϖxJR .-J;g ChږACAcf? {́24rhۨyF_`TSEM}2il g*n]W̞uzp RBu hD(%=܌U8/RHPR7 /*K 8_7ڌ-=Xݓ!1o1C/{Q@l{MI 7o.t^`.U?  \ޏZD21_'`6Yi%]J8#> ڹ6 |Չ'D$\k-\cC}-ې00\`zzeĻلF8Ǘ[t zX3v#1<l V 莉vzU_OiYM#H$}!+A |\#MG" @9'/hd!+Kry6CܷMVRgtUK+εpFsʾ#*X ˝ x):!!QOrT W9˹)lT:@ Z1f(l Fh>46)aJ@V bTiQivU4d buMoǥDaXODvݗ)R9O/qyc{iY&e!@K޿jĉ!6|:ݯG:us6˸:2 ?ߏ%WLg_̦z~~܍m ~w{uReî%cQʐksT3}[(((I`DIOqyu`l:b'Ԧ^Q.k]f(ҡu sgtB%"GTս#2-6 ^ǗMSW6 q3AIk>LE4%(YAXF PyDiOYRFl kBO]t5B+:#qQT\N/a_cϾcb\PcԀ2&$t=Za~f_. n:b~i>Lf.8Gi6A+]ҳ>1S?W=-^:(?: R.߆4cY pFE9f1ٜ!΄ ?Z=JE >W.q '[ljy:}':Ŀݫ x=3ј" ytx5hDx庘hLؼo$2J7׬d78o>LcF,ѣm4P* &QR4?߿02>$,zf2C_ NVEƼQ~ϖ>~T,L}P_zk&~ʹ*7L.\xé7p S/sPJlN K y\,:f!{v!MW 8,/kf`U6'DXוa}>"zcWm ho\h-wXGvx޻)6簏=z:̩])lܞ0.T\)8Ȓkw3?3YwWθ5r^FZ;'.ow]ٍ*; `u+]uqGy`Dϗ8c3QqVev2:#<<<=ɯ'u[s6]){1(ta鎹)atjt|եO٘8%.^1#CCO5Npɻwi۹# CtoemXٻ)*9$8 clq Z_YMkePRzƄC=XF-cZH #7tJՙoS> 2_F#/$LyiPDr`B\"hQȉ !id tnܰk#$UǢ@Mkp ցl! :I던x%@cL!Yp ~|mܦ?׋xp#AX ͸k|'j* GqWkx/u=UT-eos<K)DE#FC d̛|ť3E7 ޭǟ~5q9Uk.Q6 _pVp@ ьPkbF b&Ji% *yj>'Uc^ ;fY3tZڌƆf;`|'gJPP[!Ի?XC@zHrggD?u0|ݯ(HƼpBlΟ i?`6TmŹK/4`>3q$D Iq-<0 `n34277%.^fjg$IW%Z*RE8*1CYF~ yJ61g*2=N 30frN:d.rӮ*b;X?郗QGk =<;ƿWs)i%K,.Ŋsk$i µ֠_;2%=T9M˪3+ԣFY]:K`FodW@1^sN9VSz 1# Z*bW%fSwː^hC&/*,*%<M{fTGWK$ޒJSb1^0I.۰73yF. hB_ UڋH-EBiچc{X0b*_822X1ԭh-_PM`䨤|a10lA1P3m&%bh#A4?yflB^-t;xKNUg1E8tf*b* E*^Ҋ@ Fz;W;:LV}9S cDs^sptu&Ńǃ̄&$YtsT.82߮,Y08=tITd)QMks (e}QJ d;[H`?@ s"/ der9BZHO}ta䊡Olmh9XB9mvIjmWi.,˧sb!abŧĭ Rզ0[@LIo۔ "ԋ ])?2=Om&!8TyųQzKn;G=MW)n;a(>RKjX^xlJ HH#tw)XVD򎺸h'O|[|+w/\&STꦪmvtZ?VB#Mc/"1&HQ:3gW V}'޹^=,#AЮdw#l-Ͼ'<, E|p *׈ܒ_ne?܂=}Ec&\8{s:Ea($ij4.u]y[V5R8+ݲO韗_8uf:`KR;cƾUXX,d\jMP_o>:/>Ð9k};,Ei"ϣMZb&]bQJkuE'*zMgÝ7dnO|88|P[f"˼r$%s^&(W񣕌‚J?GmfpAFE|*V,K! 'leĪ+ou `BąJ(Nb=ϟ$g,&xT5G违 fQ{ >9)m qDDӅӪJIB a#0c6O+:J}Ik}UQ홭V [׮SXWZ~6\BPX@>1HDPܮ%7|~pq&ifh[ܲy2%ؓo hg(640oJrcDD |xɜcT*tZA(=㺪{'UiɇJgFutcR' d"ӊFnn3/"ra ~,GPb0!3ҩAk+C5'}lY$4}XJl%bJ4?KǏM&SH+\5X \;h#5 9d)>YGvVLpԂթ#I_7%MJU[E ?$*6z:3rx5wٵ.E1Y(^VU[i[˾ivՔ. UIt촉Y(~17(Iom?)~;DVw=tp" iyL1'UH(y<\fFkK0*nUV3{^ `u-v=S萻(2 uR]#_aBI9aGIv "%X {mEg(dgI}H2K_84W$܋5|"X ^m"}-YL3~^O*0*MH?=1t0y6H8^խ4$K$ {c݉7YV6cS#T^8RrKZ^EDklW f7DI,"$-<,eyM IYŲ“U;1g,_4L:ZqHĦ\:PuHu߭kD<]19夙V8^Mng2hC_$V7n6+Jjz C|5DQ!G&,W8ʂn5K+έ|-%GmU>s"ּq0a-8\Mr)* 7L-MM 7Rzr&? JwWw#u]J t>y͸>2FVIIR.˞GAtQv#s cQ?WXG* Vf SOχ1T"vRK!2dLdw L1͛.*(Vp gyU o2J&)ئ;0"q XeYm}M'U?y[is3Yw妈XAK-ꠔ!՜qzZ1=Mš^ 1ө.!_jk ƃ9rU(OvTI۴ gaҴ?^jz_NZې=VҊ`+w)X U6Rأ/}}Mi{mZrt A8iuEnP̃@7<]sD2ߞ,^w#qzK"7Ɓɬ</Zܟߚ"װ`b>ZyVȏdVp2Cn Ҍu*ä1㐜t :;roHBp1sp9SXLCm YR!=fgT$d픊S6駠v7s5wXN#7kW}$m'g ;45yq(E} wӪ<2/}&X5{6NjIС}Pbz1<<|rdm_~狎(2r@Qiű_sfT#bJ)Oh6=!xd;hy~f$cB/Ж"zY[D(ٴ " =6ɔ\ qM1'Na:9`+j2׀v-~~|ʹ[kwg,x3IB?nA>Vf+P1]< /QLռ"RW BA~)$\Q^|\Rl!YFha^4lbkݰϛ %cߛD)jM{Eb5&V5l YI*MːҰ,l0V{(^s>"~rFD$2aMFãQ@vdb$NO =oYQ٤)V>xtH{䃔O̊~pPeB]q>ӄN=^K,9"Ng,Nz;t)*YQ^sum _юgdT׬#ICG0S6p*ޱJjiS⢝V}A;_dyA-~eOGT9xn %jWTsPs3CS_;QT@kD>TDߟ$\y3$PfnE"*6EL w`vDB Tj 3Rc ^ 4Q12D 5ہڰ+`IJ&Koi kKD"s4tLV)o-Pr 5(87M}uVHAإhd?%DBW_|6(x0r^c@nw?xÏ0omuqDxO7QAA'HC'<hnݰeg[+ l9˹pX(HJ3J  'Դ8uZv[Yfc6?@u?-Dۗ9o }n940V4\$Õ!oY`B,&h@L2tXV=zh4bYS2RVN /TPg[~]=_Ժ m6JFO.A^=FhD[v\=꿝 5}ii!jkI"}t8v{,r>9݈e丙wDs8-hLHCZCR:EX v{n"f4E0EtLM\dy"% {ae<}GV7ljj!SÉji6~!-YE= {!E٤ɅS ]c.%xLdsᜏ6Ö0fv!DoyHAWi3 mA2sJdo6HTaaGȍ*y]WbeA{J̈?]/l6a` }~$'Շ`Ƥ9 uY&vei%>ϰvMm9Ydz4辁z3f_-EtGF\o.f\R 5╙yo[t!B,UKZc%Tz?6">RiW +(6d5n)^Ֆ?\&*y)#^Xdzo6'KwuſIP"]:cKY}xŘ㟣xsIJ n'XC7Us0_TV:ʹ(ʑSlʱVKm ִ)Ch23 Qlu'oEsd=k]T=b4}2(uÝbuoP^D nVi"dBFT!)jҝ6~9Y5L@oD_:VJ[9Ύ'n˞]xo+ @ԅ,Vn-v)KOG C:i>U5?[N'uHQSN1YA|Fn}>B9p1UPJjj{2 ,QܒҠLĜ ͉yϙ#A;V&uquJ*B;(;dN j@ ֋'yj/FV ) "do-:LRd3I)3Q.%`Յ ;LkYl/8iQdB+hJ/<;(hר IXNx2l}*d4x4uKw؊N*|C_^>k+8N )/*G[ثf^PMEKaUMdNcBfU)SEБ›vd.3E74H,r! ? khjkD⿒NдQg^_Db'۵Q;'tu ms:{DDd:w~8T}ZrHl$ą OM-v5&iMǺvTڷg;H$ZZX_>e FT)%lCֹ\Y$Nx)m*DI3 !d꟫ڍqfHJj{SLѷ,)WJ/UV Сu  E\#{jgz$Z^R\8+ɖq3s?PdX0vS%*},\~/hvf(\/S3>eM\VkįDzaAb,a~3\ᕾZm浺]h7Ӱ};fTP~Kz_JB>AZ˰5y絕t)PrK5p<z`ǚL.^3?e_:xԤ:dAF-{nlieA9=&œ*.ALz dxii8'ۡx2YAP}\" sĊ=IvWV2<5u"XUxzzae2lw< Kk[= W2Cl%-6wa [!v.9FJZ"⯿*8 YۃS^-SZ~d倞ת,ZR!Q$X0Jy. 1RspO$*Trt\0.y:՟dU{K{SKW,wD8{Nh;56($BYO?2 6qM).@wPEFFl/*lY7ѰNu.*AADY[ټFo؋ZJqSzxMଏa}<[G8Gq#9ʴ{z7h㒳\jANxS-]Ø~0{܈6긹V9H=#QTG ,\$L(GFXNND} ejilSҭ:а @)7h(Вxxdguoۧ\6x9=GuHo5r<mJ)X<5EKlA\ݤC>adyХHJSuy`UȢuh!kT yroDC4\mjԑQ{vu tLw44t颡/.*7=۟ݑ8^G)*MTEbH+yQ9|&\+჻0*Uhs(bt$D)42W/yٓ;m5M-ݖğ@k/GÊE7߂mp- 'F( 57z^**t?" ͸UxLHJ:bMj4G6GW<%ZrHNMh]I\))ZF]yiL âJ mhGK.I6s~uz\y-P>,=ChfJbc9BtRHi'n4bq$ suGgʶxN/nmLݪ1w we8M4;:=w{?In6OdHJ)m0P^jE8EΨW]#Fi<]*x% K#`h=<4Fcy,Xu]_uXVn@{H ϯQ)TUow-6;%JmlW%!]m@srQ$T+":bqu)$\Ԯ;IgCQ1˪%7 !sɌ-@S4/Kb4}I҉Yd=q7s%9#M썜TI$0ؔ;ץ†q[/VlUv>SySu_-k8T2(4l p9J3 FƪG7:LVezpaa+}<ڥ0?@%!c m#_m7xoP0BO1J +S)&vt>S&8]m/BkQhr="_CKڹ7,#mY t/p"bnL]kl?~ch{^Շ>5vS?Yd3b!߷ϚK}ON02~/P@A 4OJqaEe{ܣQwuǁ1*J7{o()e;ǖ,KVUL GwSDwBmA}4%jd^uVkl!rLY)֙3 6Q%nd2ۨ6cU3A!Gq qO:!$Z|2z؟$@h݈3NBMFAa2 kl_|jжPN @6f7Z+wXXv$#L\YȔnIyotxn9ZoEaZ|r62 CivcK}ɔFF事:i.>ު&糩տx>n \Sl0vQq94\#ڐx2@~Ȇ+"LR!i(O hb*bB*!ùtO;ZT]Ty(Q[ԉ[ i]{4>m9tNt9ZQgDd,؜>y#S% 13#͚U"*9Ķbyjw6cy<"Rѵ9x> ./GtYDC`ͻ- Pw)K8#Hs';M KFf^azl&2*8܇ lGqH\\5=o?SApTuQn+|j4V!"LrCXy!XUR]q&ERkQKK:)Hɻ۴*Pr82·bN ^LvpU ɾ79VF}7/~~):ʒߖm2h;[3ǜ6.-4d-$$Qvw))g G˒(Iπ{Pl-b&~1*}⏍vpTP%P̀([R4ڴߦRP}~`A~^S;>Gsvik,(j+w YRS SM뇟.u4sql+1(N& 7i#osي0w޵!wsqIn=3D9oUX!?S+ڪFo=G%"V, -EGK! ȁZh<;蔸bUZԗ6AR&z+Ls|QitrQ>-sFu+{'ϕD `OqYTc琟RX2=i tZ n[X/2G{)IpuʙTW?jzC쳮3棜-nУ,IT7c|s}jѩhT}Vzh434رF(S]~G =3#ugg!&hE_Eer@}!jeBVKf?BywE ёƏtsi5s][,{jA4\=s!2ezJU^d[14X,={MVdr`Jކ9AJ0kPZ|Y dĐZŐOurH0S`-az*Q߽î$H3R%|m DT/+uV.hM[yַH9L .mÝPhSX_'IݒMo\MdQjE"No\5<Ǜo e2L=uζ>HmLۖ; DL s?u%I 6xtx)S6Lx>h1lf+@bc[~duMDQ֡o%7GCD*لS)!LK#yR?jiZ' H(ԅ -3^XS/b!#*vY سh)=I5Hzg~%Gݝ8$|Z<6O`VU9zҐ:.C`2u|3A ie$/UnZ".?餧Jw'6I$ qMJd^kHluB1Q*e"䛧Za3,W#5Ԧ|8 e`Xz_@8h4uϼl[c y 7vRL{%Lֆ.|݇9$G#$N̔}*Y}^FG:NjU2լXp0x5*{VD ʴut)uKM'pEh, w[<'!4DBX%5x5Щ31ɽ89Nsp['qf&Z[ҘC Hˬ#02_ADfB0{N[kӊCmޛ5 NZAb՚*.Uvm[T "k0.N3oVKYYd/VAצ1bM^ȧ? $7B$bͩAltÎ`,);P-`cuԛcͧ|2wR3sڳ 7Ϩvg=Dtl >~_?H?z)˱zȠND[?B shs t561)D$v)׶;T6 |8በ#m+G$tFM?z8NnKҵGUl(/gP8LI6E{/"p.I"`%RdJ<>gj^<8FS4=Mg1g1~eYdʂmX:C6!$\3}%#Ƽa O!m*KS(`wO i' l238Dm ԔO3-V-2a3V$?Ь,xT_fl[`_wU8~3n ?ߥ&Io u'Qsi\aH`QWU[#UyobQ|V(*Ok,zX*lJ1Ug1Ǖ3KߖZwMVz^=Hq9N"&:V좮ڿK! uzm>c bzFᵼ8{, ݳ-*te>cܨɚ;&]aEMiTw;Ŕ5>/lZYC oQrT&dB4pBa¾ox,_G!}<)tTšJ`aitCQn3?&#Ɖ XyBܨ~]-lE\Ff^3d촲 JB;A,L+yDx|0a22t[+-vϏ supw\I{p=jtV qGm%BΤ9j/KCa: e֋t"ZloR@5߫l['}Z/hlϗg.[{ǻ1\C MgaE7+7AJ6+%v~>~i$SCz`& (/4_gQc}h{ wp6Lx×p&5^Jxm"Bg?{kBcI4lA4)t(nNC/93~{nd"5c5#nWD袯F=eʘڼhDGvc;p@i*4܉;ztM+SrYT;+uG`Ƽ Ǔ۟d/|zk26<,d}LSb0.F.JJ5'tc&{M-2ʬ/gy 6H6ѐGV9"UcnTL=*C'@Ȳfٳ"`qB3uq7$Q_Q h|ku!5D\XC]hn%s+=aHx}=L>X38[W)/юZlHrTcruXgv83cpIS0Os,,5M#NwiO: +fj`5$cd9l朓?=ԋMw0 (gu=Lv';sgFCtGf}JC7V+a$hanA6-OV{Eak簺QSW^n-4biv~hdwXx0|PΚڬ "doJxW3CZ3yT ,\mqV Z80+sG>ahbn,<({,\ϷOfBQ`46$_v$С`:NuYR=GeN( ?,E!=Bj֬IO -8D&3.%t(8CA}5ߟ 2 ĽJzL9DB NՐ&5n8XQFǫb_-%"k *K@aQfc>ıVJ^=mK$匏lЁ|3C>UA L#d"z+sAZD1# 4zۅj: o-z.=gyz& 2EB\w z"E␄W\fn`ř)Hl~JXT *ZQ TC4OfƸew(M. SpN>z*te99yoSU];pq{se~+,_]?ܔfc_bJáW҃}k.]؟"} VSS߽ݤ3O!fyoҿͤ[ab;ӷkˉj{>}Uɩ#2/28BM̡@a(Dhlq(>7p8hRʿW_..M'4" 4^J Jӎ3:Oʪ:%PDMË *٭OOW6/7[uyotVtD>! p7*[%bfEɨi5H1Q6˞h30Dc@,̪Kl ,toO`:+RA@c2rr7 6Fo6͆ڣhs勣8,ӥt169T8l@$5wۜ>pgg"uYiժVh6řyZ! pFMl4~:;mW^7AI]қQľOb< (lkV1nW;￳f~/|ATM`#[o2$R }qȻtswh#ΞB ,u[*EI<+ĖR<݂",YH-s-/x s%`m/苠߯d5I;se粝)©ljN"Xؽ (aAKTZF)2ƦF q~#CXMU߹P"S_ :5qʪJEX> pWt |K *-ԮNV OqDwd@j )N 2^EHzDj簅kno5Xh!#lc;e큥1qMFz{)djgAImߓ\@ai%'Yr<63>}W4&k2V6pݲ#_mv'ٷ,y^OI: p@lWmh$/cBR^)TCcz"seRH2/2;!2 +@Rj "3cܫǽZnM6|]v{,7h,C tlC$e[-  \5$tnź~ۜ F  qwUOUiE8P3.}C͆Je#qt *me&j3x0.3=UPё4}!i3F8k3}Eʳ٧:7gd\M861 'p9+1֞G\N_nZTRݔ~ɹj\O#ZO%{Ǡv-#\n_]|XLf;0R$M~Wht0aơZKmZgƱ$5 &4x{Po7'ڼм]gd\(%c+íh6h׭} )"7b%ܦ% -wK=[bE8tqN&<A|9axx dNU>[x<2\ lXNgc,{+ r('{ )"W7ICim `1uVt2UGk#l}_7W JI1[>_@. >Mk{38?1@u^UːuGz渫.B9@=GU4y8-NyAL>&2q~JԗIT1ւ|$@ "z|-;Ɯ%Qj|)Tg=[ʧaXmk*I|R, 0O@BmThcJ(|7 sFEG9[Tyw_ Z}xj-.|78aEii(+tM1δNƉb#8ijcweW8HuK24?"1;BX,i s! "䦲ƑA4"/.Q(Bfv!ñ"-4-u}{.\W!瑙er3`! `? ;mA`Gl<6lgRDX)1my+-%<ߘJ#5vCYqAE*)nVi@j2O*VRza7P #_udZ(ő}hE; ˸[Y4E HfO$&F{#sB/È`EDh}Duykf7ɭ,HAFw4t*g6^CIeo!kԀ`>9]U@ oud \B9f;3E*)*"س6ZvCn_\l# hMvaf[̑ s<,ɉ$.e[ ax#o=e4C 锨vc7Yjt+g6M*K"e%Q#H#RS6kDysD'*dJ1b'Wз:y,-m8e0svC퐨R1MINZ! {!$bsϷ愞;%Xy%/KTL#Apv'F`y-ژM9gOC[jonBAZί : LdA3SSgYvqil[u8>O9]q:$a kG:p?m<ަU}`>yPd-aLi2&Pd*chbO`M&9gEg-KuaHZIU19GeyT`cAtcTOgH` vZyzb|f9wm=%.+6M[fL =Z.UnLm#"[a\ԝeo @J<A ehƜ:&%B{]Cߐ1w#qVIK:W숮؝Bs)_1Βbx gfD*Mx ЙYTl4)Jm ߔ0V4z,|LF6 w!.DgkD irrFJ,HoO"1 _Ww&N,XBmzhQA%Fntq6ŘqNcG#^K!oR\2/ag\mPB|{vzF蜎xtK˳'9/vJ-%')}qL-G+F19B=w(:rNwC 虱^f׻G,$Õ8 KiF 9=˹9wNߏΓ,:y L|2x=@Jw&<E?,w#I/v7h «%Vkq"T^F;IvV;(H '2@ 8ޚ\fLVFWe=|,9$LR+0Yjv:ѫo"W%H(/6I{2ٿWӗ,5X8zcB{6_BFD:bKcpqЊԌQeAM֯ JоlSZGcHڱ u^Ͻt/.}߷ g6Sy:ĢAd:ZtQvcډ WWy^F5 뷇d\ѭnS (dTu|pޝFf.2*YM݃=m )K5ܘyg̥8j73Ӳ^Aje :Ȑ7%1ϗM؂M6btp-V;OO(hygQ' `x$k#81k*mۦ\TxxwF{[: pZh~U u-yJʳbGMs=kS.> (iYi=iRhJB2i[8Y$F/d@K'Q%nmGQ:VlmE1QN<9qPe2'5st [Z+oܻ:^cEnQ'sKU"Cs E#Oi)|V$K\0YqyO-ߊonyl.Rzd2NrH~6ó䄣W߹Ě!a|# ثypR^sP(Q$VOD29r18}2+ cEX@c8eCT/Αz B'>߼'c.G Ëfr A3,=;WU)e9HS8Mç/*X@/qtݔ_)ӏa߃O~ B@f S2BKp{އ=#A\ -_N5(Y (olVsV.;Zi#_ NcbºKETwd;C8Z\Xpo|cy+ 'C-D,Wtt~OCyK7Eԧ7&RWӴ<9܆ XMqz]f!6%\vbP+s{X/ɖ5jak3D8$(i.2IiӐxÆ!T wKT٬޽P̭dhܖ3%V#d&t ^I+ _ѫKA c*#q̥|Fv__#ܞu9xtg7C;ָ\TbQ'ѕ~^-qFԵKɰ0fs.:2AK:K4rw`,薮=MIPAt=1z_ϓg$k_QL!?ϴ5R W|֎^kMV=z-t H{Gx. !ΤRmS OvmbEᢆT 20$,;Ta5!=V}0u t~XEaஙK!2Fw״uQ,U㎿Q+mS!Ho'PvO `%<1?wR n;0ѽ$rV4{ -)g&PU.KӀjKrƿeZ.m7L~ʢԠW*j[(3Zk(2_F3mtJ yRҘ(jme"PR߁zz99rڌ|_TPX!#$K[%,tW;1nd립vV.hԩLեD -K^Z.\e2X?%د2M)~!E#{INL|4ZVyp''ʚXt]*VI( {A0\ݵȈܲ?_Fz=L ^ nw\2H?qъh"2(g1riy/~sⓖ6U v筏\3T}\KƂo3CUS., a~I{8fG~ՑL OUO֪h+Y0hH<%ө39-Z)}9̣s=ҏ= ªf cX-OWl"[?Paep-sN=UQnub[ۋ+F9?t֒|u2*Љo{.`:ӥwNjH"ɣ")7f *m7zTE3/h,\ t&ڛYhFu,,*N){F\MoJR[+VAgh2s7K>0QN,4+RpqRpf&mV*eM#<>YrNTqj80Lc%0t єO%:@-̄p 7%Fͦ6y]+qىrg!3%0HI<0E["%1pC<*#w\0g _&@j9I,L7 ;Ր4@ibrUJFFFhv ! N#WPPh 2:->}yKz9QC\p&?l7T?s瓉Dy+)qA aeǞzZ*.QݭJSiyus]ԆWj]#E?MMCBPQyZ6 ^d}e%ĭϤ16<$!˨(.w.%7nR)=,$uC {^x4dCj'HŽ\&Y3ԦL0f$ɽ 馇 ~I 4,0,h8M+FPڜ7g:{jY%ӠpCbFT%o}-mW>g)TQR.<+[~j*S%)(xj$mG׵X| ÀLy]jACHS7>; !-&mkQ^kLH 9;l]LnBsg^DصؘEs>^\U]*,~(f8Yǡk ̷Dqp[s }FǰF+i"}u$c/*wϚ(JR(O"hpݻi x%BM3m:½&;2~+V改 &!u^TmaX֝ǂFc#نA{"KK+M|XMl|)SiZ=w{U̜[,J/ R^g+NDLb#qZiE4Z?Jլt2Ij"dmg|q)gcc ps\&fAp+-Ӡ?skff/!tj_W^]Us+!Țdҩ[D>}"&aryuP0]T`(f4 I-.(9\}><"D,!I ѥFQՀ[jD:L~I$\CtM&%Z\Yn  mݲѕ)}!L,GW?Y$ ]SF<gu-!ny͐;mv"1ok1ZۀiSQgzO̲` Lf cOߝ0+/7~g@]$~f- `9$-Yt,Z)^s`t|FX}f:ޚ+v&MP+ρ4$^K>w^['|ڌuHi+rČN$ -|o\7O+yE&)Ȼ)l֬VX Ӕ?MkF(J"٬w>B,;AGJҍf;cKVЁhEkq'_8<# Zٚȹ!D g떯vUİ2 jKzD}xe+1;cDZ} \%'4O~_$ U-WGͪ-}tP -2ig)Wudx;mxAY1 I=6ۨCH' ն/%x*Qi oo9)X1ߴ؀PyvCu/`+{nNxk_qUsϿ7aGh귓Ry&Mԃ*;p[t%3^6LE6x",VCt/^3!rS;@z΁C x3/GPh)Nnӯ?Gp}g9ݽ F[H4;̆ݷ55`3DB_7moHfs:"NJ8 D=BtfU%MxYMu2e3Y$r?$e*b#jm>E"tٙ2۲"@̛QC­]1?Tu%I~zXKݧײ b, ֊ns (TFNV 4}HX3Pf93o@7G-Yp"ۯ͘P< ֶ&zih "ׁ-C [oAgуJtIinC 9>F-G]jLϹ_Px6Hz5K+u*A)j0>-: {OІ['ӾSD`"O Zcjpuyl?kF4f>Fnzi|=7jHVIum~,J pF\0 D:^>|w-ՒTĂJ^nfp>T'3$WDh4MyKZqMÐ$Nv%|MpfNQŶMK$P/\DO!kVHɬ˷\1m8@sGg dqCu_ݳx%4,8P{vbw~f oB$}ɇR|F;2z{ȫXޝ`Gew iCY6+> ,^-Up4_+(N' ~|dWA$HXŖU_HB,U/U]^^r-l< x7#^-L-nTȣw7eQ(ڵfF.zn"NF.o!%9<}R/99h˧ Y.R>GCC3ht_L_ ܴ,/zȔ3MܲkQ_9?ϵovまp͑SS D/0VGV32QM;M~T= Zr:Y]`¾C`3l?mfS`|ݾǃ欿8'R#R(~J$)­Ə5X=U5m=X3 5ƎV{._ܱG)Q<6=pV-ccmnNH$KV"o)4)S! ^F7E\%)] Od3KIf|r®6ß@$kvMOZВv1eaF]gi|V0<vB[,U݂Φ2m'} cI,Xt> 3I#㌦ޥσ;ssy1JrYupv3jL_feG ?WzGZ>=R_PZ7!] M -J tvd{Lv&L=vdm-6M#z=dtHcF?ddct@J9HԾ?f+nYɇ^юi|;pj =<6elǃ<,z܏7`Wژhi&T:ol?sJ)xi%7H8~ 49 H+\ftEfHT!w~xݺۍ,gשXVDI`}+Ol[$ܧ#Z{u܌pDh4ߨ"Kb + 1!ιn#b.*X?bꂫ֝˂0(f5 6D>mx&z./>Xݝ4{^$_0%OznR^$: DJ5*0-3&B>ĞFIsdf ?la6Nm+Y>1J& %_l4fv{0^wt[XM .::qVi%.ЧW<᠃|b2+ban*CDho1t`S*/e?&*f &>N$hS]N+xlyS8eMGQٙ-XZeN~KahH\TnY\{=·o;CybJ,3+'OFo˅B2-u> b/Vw1DEܳ''A}_L~vVRZtGځ6O=r} elvB2JR}Lr! VƇwNqN8+%u}mZA`joe̵~ itVkB9Y}dǯT_ Gx">Y& (Yu'hJB9W}i#nŝjMI%Y=<-ߒbBB& @hd0gAE7#K;GrBpML GN-LsfQeKk g ӾT58/0 +o+Y!5Gf闚#õŒL$m ҅`;֪ν]6uvwzn`HO΍QehԄ{1),1TlQ&Lv 1d>q3փ)'gY R0dk:lL;4{Y[f_a ]CtM۫i/Tb[sibF{,?Q G?_ܓӻʽÄ7Q/$RKP*~Ce8!۠y~ZYTA"-I]$\Ls̃I/3妌!v$OrВLhퟵnXnNg:E1EB1ā(F͆kR ӎ 6 #!cosG5Ҕ___:: 41"sD|{VQbKPw.jvc_Zh"သT(WA^"' ?a|HB'<%<81_at>Xj u'p,\\Ҹ/Жm~#K2H?2!(=pwlQ~1kPI/]c [ sGw{ࣔ&tv"Ũ9&9j'>%*i#{X[6XrݞQ!y^d|}פBަ LWZ`׺sDzXǝLovDZBnlL]@|eR.$ ЇJ+JVyԏ7H/ v1pȊ  ?̋QW?,_p:8R2/ u#x$/yV<ہ;q Xwb$T5<|j4bO/B+XŢ!t~@9k=Hu;qlxT<""T;wG3*X 恷  1i.u7wKe4p2K B ъLa@˖7N{ݠw'HW|i@n9ŀ#VOt~@X+uf+9[ϥws*c8 KQ׏zV֕PG)ᢔx~TE@3eOP9)ګ/CO Ed{ *XYʈ08F{?0A]!L mO"JߒB p-Bb`jܹ+0c2SY]pbgJ/,o,.>FZ-_$FXl"DE|>)KHEݽYdVK/B97Oc5^=6Lh1K Y>2,5UCݮw N,\0X=p(}[ôFߡ5r@qn3?03ܚLE7IE;e7#AM( .0%tŊXN8 騫QAI_*GHl`]MwoJpVܭG9C`u5[uPR)r9!N>@`IVG6hi>D:. txb$Poan>lдFḵAI*z͚;t;dqt(- 2Sʑ[PӸFXي09{cE/+|`V!V;p"hn 'K;‚ QZFxv\g|d @-K^;qyCWAŨ=hl{ Uni9O/a$_>d7׻TՄς(aٗ|WI{ VkG;VE$M|ZzQx eKܘ(A $PDv=7Es#nU[pUOfhԿ[ttyahњChC|I05 OƌLvp73e@p>5Ģ-:my @`Nxi1{_F96(Qj+R/Ozi)Uz 0%`Jsʹfy^ܹS LljmD<ҞBFCE5TǤDXVx"e( ${li8kGB?R 6PxŬG9]>lsR #5MY,} oTgFCXE;#|ɧ6O v4­:1r?<"'p:xZ0,t;'n}dgJ= =lhE<K m'[xev˲ٴC^S֠heE20@!| e6cly<{Tkg2(ڰ\zr0fX1ż9o0ѦX_T>?ǂ[ֹn3/=@~7™[Ae ^6\ڌtwy8Ғ:{<<){A6$å>Z#A|3p{r7 t_0JfPp5N&+zSf;'!dƹueB[ZL$%r:cW[e"mg\!M S"8OF /ޖ ҅UnůzŢ'H&?J_֢]Un?-3 \av]Bycyw4?_`{bDE~xcU.K`5!;6scrOn_B^_@z=,|s1|(Y)'& rcXlQ5Jy^o.-GJ9ڐ\$39W'W7L9Ft_Clp/ _r~ʒ/lt?k"4 4Hgi"8?:6µm(&rp\nևXޕD s1P&r% 3Kz HzF(%GB+qKfݬZk? Úz9_:* f;e̅en#vA0\_^wixpE(@U# bLZJx--HɈ}y3=MHƯ?Vt>mn- -׃Ja7l^!?A'E$&y`xZ..:hQ8]mE_%D%#0xg FXj1f4J]8݂9@dL]G;"$l2u!dʻгiH<6 ݜܒĆ#I*gq)6Ra9AS9Zќ MOR$"kݼ7~ïH3l`zA8Mb&چ'&s2&v~gԺ ր:k"`NV;ߴ?V ׶ ū:o;\7uVo}%Lȸw/e욕-'uR;Cya|l%~u*l˴|eUz4@|2w}OBd8ʆG1^C4>L .9?D$8sXlBl{Yr׽/R7TF@+9_$k.AhXͯf]"S,+!mit-yE.UO[;ws `ik& B3G1Jc3OrK͞el_b|O@Pc㞑nvyqް66c -(؉ vv5rDSmw۩X DlATlTv"qY`,EyI{>]zV\ߍUDž(x{84ڃ=Cg|qhz'{HK#ukHn O6[X IaNB?^x!T£rOp5Ja!ږbnjWv@o[ |NJu$ 񠰪j'g,$?u?.KϿgT{EytusLFuP0 qvjf:Yut5b՛L4 }(}\tߣBgE&.,l6hF7ZK[0،c,.yWxdX~$[ -zU?#à,¿FX"% A"y#WT" A9 $#H&<7q&:6{''ǥ\[D:$t;0ʯ-CY[Dq M%FI~n=k86īO/|͉tx7KHf WӐx=laW4{$-}-d_YpҌV Kњʝ+T9 HLϧU8k:l ca҄G"6!O;ffۑovN(r=upezژ'WLB1abMdڄ5/VA'ׁ&):(>([b@IeEܸѲnwPlx۵TAtaYTSHHQv}.οq5xM-# z7j#tk`\XHت YP2=IF@#p8`%{D#aJ*#6z?!1yXĒӘW( {yV.W:fqoC'PC>.3*i® :`۠ЃEtCtKo&OHw JL`q6yb<`:j:AA ;m]r)ig8ud?Fq/Xfi" ș!aIdaGn*r50 _Uꔾ #Ir:LDnVrx+__:Nԝ(R-,mj;}ߝs+(5+= ɟ/m_k, ¯];A}iz[ONX1HJQWF!G Y'C-ɼ7mw+߄G9qSJ7CK`lU3'JƳ\ME"O9jr/D$%9 R'p r'h>~)괢Tv2+5 '3z 3훃*uAb| L͏ s &p{;cη_PzfМ'G56<:R*lŽ}V#J>csWdZ rXrɱ00 30i+1f'(H|O oҗ;iVK5mOXWs=T{3}Ϧ݌5 !(>œ%Ӫ%. u䕿ˏhk(>z'8zYt'xz6OKBBMa)$Sx薩);C\m ނ6[HxO5S֎/ (6bcCle?=|Z4[Ab$b!ˆ 0LN wHpt2%Xzw*Ct\b&E ."SǷu+mK4unP'Mq8 >e4E8U/١KR }h:PлL267 ,%RXXo [};QB5E%"Żٯt B'ㄧ:d3p hO$a5 Z0;INE&$8:sz7/BSÉvHVR!Hy,ryeߙMo&ϊ%ҽC^ /)cѧ~G9DNÊA"aDD B}EݒL)FPLS(6{g\fL¯ Qo |*<ہ,y#h[5Cm?w]$IgXTD\b?CgH{H׬L9S㨟CuEl#fdkɩ،5åܜ:!/\&28-jmg]s 0ꈒ eLix>϶͒ Z=!$"PX6:h|QI}aAXGo,gDt2I1tsQaGQ=[&jwBC sǁ dE5ɐ`TNЈhML9>V27@.3`)]$%^ki1.˖q'm00 6Ae ܪQO{h:BZ өW;#E [q2)v|ӕk%L[? }9vF.D)W1 $?ܜp0-٤#i`4:7ЊSO^bAqBp΁rU%  $ugMXƯq6+v<ؗhforٿ[lƽ^$ژa8N86YV*gBBDR^ᶸpN-v#gJ`CdvO&9 dG;W[l>ﻅ$Z:ϴ4e ש;hOkX># 3t! Bwlf9i:}&"b= t&#oR2Tȕ<1տ .;a~T6{zR&b*FmaNcM1hGqoTOxo*|Oe@ŷ?bm`˃}];f`JF m9BKvL:ڳ|23T39-*C(3 .?p _x%˓y}7 էI.7)Wgc!p%ɝ )x[F5]2 CӏC$ +͈mR2V[ LDF0UXo3Z*zdLWe=:N3M3/v]0Z |Z:̈aMJÇ6s³Rxf*g_ 9*o>@EOŪldwaI9g,t6mSs# ͻqgΜByTd_ViB̈w /ĬZJꓚGL||[U)Q@[}bG :ޤ@7S@Khb7BBWm/Gv'ď<ЖT8Ql_X]K}H;k (a6MIDG _S4fok!T(.k4Euq858{&@q3FH} h6i'1Q8WVJu鳮4FZ'mSE6zӊw.hՐЧLl\'i[z3<O7`uV? ]*}5MJ#*A(JfaFT^*K{ NpYD%gb0Ofwa UoDa=3[M,9 d4k5ǝ*6d=_Hz(*>(, "{og jgyZkDDolc|L?ֵMHNnֱ(a6L UA2R฾-fcOυgu3{TC @" y ?ip'|=CB.%/ifA4h1oܥ/ C0rFR?d֚XenD{H38O>!ہ C.H"2;7{Mi˝d5xףd<|u\oPA}ܽ]WX2!Bg v9ij[GlWjB/%GMIR$@&Y!kb$CRi_b!\H2lm Cs{~5y8%h%kB'z$# &Q[$d '|:QclwIR`VVםgxU(hKihyf6@E~M \[3+tC?\b![) FĈ]kZ'`a ڟ7GNsL*Z [0Q[%AΊW_ew.;T3WS#h]{FX/5?n%+)ƙdV厉r  w)´uo0lp$|gMGh~ne_mp vs m8WfMȋ|^njE}ɪ=5/?YP$gtRA͞b*5tRh? [FqFl 2kd^l ^F"N^P#ZQHc趑u8I36d~/2H$m2z`6JoE?u(@Ԁf{$NX dBOn0BE^E[:(i mؼcro2`H\cO`~EEg7۽iM[3/,RORyfBgyLsߙ3TR{ f-o:t@Aq%C2d?6,A5>>!e U#K&B2qğlKQrU\J+3܍* >E؆c>n=DeȈn?ooswç DnsW趼x5XzaQ {W,[ŝi!c ~_onOeZJOL]Cm@ϪSYtȌx ͓Uq;"GxVNj,F,8 e 8fwOQ}Jka ]d[Z%w{յãaBW#bP70Be4_R,ŶnAj5aۭ##TF;6G_#QtvK%Ae2wH6`[9sop?G>9?}N? Dȹ%M4|WHji4^yM恳eI/Jq_V؋^ì0XӓR"qZ^4;\^H@<Q1vnGDb-Fy.Nz(n\|3p+eJ,\YOA~V٘"Fkޛfz9Di$T8tE|}jbTrHݢDJ 0ZKYK=P{&5R֜Olg5?cxiD笆?g?~`" ܡRiTxI%[fO}>'EXڤP]LYoI3d35z}M&h(# :Jb_8:40k}NGSÙqi'5(ؗh*N]<oJ)~AwsYļ^6#;$Ob`s>"[ ~cTT/6)hv]ȍ\Hsf< nܾn(mblfus@[lM=}:dQ?IBգ!ۯ;5]}nOyЫ5YĤ!Z1٥hD*1&Lin,? v9wϩ(1V8)¸ *)o?4(EdPe ۿ}Vy%Ћ"b㟴AL z/8Lͭ{ G8þ#u^⿿F+ a"ôEu  *nhRu{ؕ,!M&(-=I-"7 B7<o;gzd%,ß_Ҿ{M@S_FC>OLxS0m 5pl'jg&e 6G9B<2QE:  JnLzX  oE`$WVʹ4:.e@Lg}>i!4Tom MqoZY{*x :(fizsǴdX^мyQ>,0JWk,ꈜ+PAyWWP!]ΩA[ǻżH/0-:K1 wIPI4b#$*\b~ZM$*d{:{FVyMzh0杉ioʾ)<9e_q)tmq[ηpC0dHF ;!9e9)wc_w"]aWP:DMz]ha&+ A+{:( >w߷:_+pobˣ紻3&FDS+ H;$8v&?Er$%#SB v@LkD}TGiŖt^4=c|{)qw;]KYp᣺[#k}Izt$9<Jf_9_b D+vt]5~ce{XY+3ΉpLR^((y |*2Ng481/=* $I~iXƒk)srX#cEͪXZ|뻥ZE JJNHm<]A{%0RsMZfbrM߃‫Ef'ܴ=Suy/9Q$ Ծ9/]Ng15RDWtsŵjRO&RׁI&'l0Owz$2bK\ki2jVP&(yCnAxHAɰ}ƉSJWP y)Vˣ\zG7Aө+Bk0@$m "+F1LzD"\YPUp\ [jkL"ˆB/ `Mv0GtPR2ΪwKXӿ8fLܦ:4Յa&t[l%FaN7;x2W&*MiH[\2z\LjAd~_6rRo[ȲU%y\APnmo7jm dW'LRI\s=k ;0Ӫl}Id[ęi[@\iyvQx˲QeTY mƉvtX;u$"ӘXv/ZZ+kOX>nlzHwj:FU?L]"\^:r0'!nCU *|^6^iİ^L)G}Th֑Z_N6lDOHXF']RlfD]2d"} jnVP/dn~e?TTTڛ>]H Hf 3LCLa *2n4G<6"a- A25$:L8vhZUi3rVMX#Yo?Mǚ/ ;P;Ck)3ԑ`۰S27\xf 7@/PN/M7Y߽k|CrҎ+50(Y1 iךB퓰[YNmB܉em7l)52֜ LABt^PpE@QhxvvԂ1\Y|{\C NRD4hėq*]ܵE *CGcXAPw[Se෠--N˘dž |;K>T7iŔZlˆR@i^RSc5\f(9߆/I2..Hqe 9wyuِjsp@"l}O~nz;6rol/haz0˙Z-lmRzc )j.M_}P,e/8/ :@mLLqx`!l"~cgx /**Y(sZZ߅ Ư3$G_hbdZ$8c<vQut&ս?c7r~pF=  \$r!F|]cs8 4';1 BQ)컍Z)}z]ꄱe+콜-uyc|v:wua+5k?`_&;Ue2]`92U/n{:x ̼psGKU-3"v,)N:i 1*'犽`ЇCjGg:9@3ci`U ^У_;?S$@kշf簺A^ѣcgC,<`Zܼb1O['00Hղ$RƟO!h3SN@QN7SVm[jiXYSQ8> -F*L2b@*Hl+Fe9u79`zws|b̹ґș>Blr &0`I$kR yY;(CSpƼoA@5 tJ-PZ$<${gө[-q0*"`wcjɫC@ 9bNM}ލ_TXݴ^P|(nX軑#ݞߢK(| NX,9R 7"hSOQ]F#ڀ8]` $ o쳸lxwŀL ?PY6ЗVLI?ɑ3S]$?TļQـپiaΠ}m" !98֩==!GeB=JneSY=|/sD-/t=p}4^^)ZMˡ]&=yg@k~&-*oĕhbBBAyVren*] #m"m+@h; (f|qu]L_[ {4&JӘHH8Y~g&4/fc0/R!g[5cExܠpd-B*Įd$Sօӧd@<_dBKmMȫ+W4b,c+~q-(hoL^w9&-! 97aßB%XVG4{y ] HrX m$~u(8SPi5܃ê0^jl:[j ,۪"tB1oukT\w0h|Luw"?7$`V6N1Ŏ IorFv&:P2۳21`%tst8;b\!Ui,?И]?34uvvҙF^N*Q=z6(c0g_﹥Ӓ̋n7pbR]%؝W?-z~qo X_lRV,so.5 dtI,R¥!!ttnXTWX(HMr_hAU2"\>/&].໰綸iat{H#qXG?}9̂siF*ػ]&oKlk! 8^,}Rdޛ\@wL%G?x ;it@7a/;XM).TȽn|r#=얜[qѭs$"&>Caz.ϰ,Q8BXϖS [4Gfa@dqt*џ??*KV. 7f3s -n{QԸQ7y9WUrY6_-a}\M(<4iWX*tr^Ӣqjby'IyS(28M:.lXC,ߎYU"%K N4r tV{0ze?2@R{oӞ-9XX^:U*X-FZ௕-^gko+28 Hq@^YDq 㨏h ʃ),A+B1 _Q Qqv]{rec]BweɊ3Us|cXH,~bQ} e˹"-j_̥7/ɽAhp"$0y #ZS@Ob7_2IZ;@oF 3vB9YC!fDžǷin4 `n<.[3T;A߅oCԧueR`>_&6o3;Tz G, 4O!7}c^ʿ;>^޹[b_K`JeEhPC59ij N#J)"?"-(eܩfX` kCCL&a6|)`+S+ bi+.65GzPéV_K"$Pӻ@-yvl@nzUN=EG1~%9l%eUl!8 n1N*A{%Խ"ZOS ûuzIRo ^`ݯG?3+G)2p^ ճjV' s?(ѩMH a!DAM7J,sXGgA*˱)9F΢Ii&o.l>GeCL<gKt\uz+*߁Fb:AK:_*AU_h#u5À_ɮq7(PF6eh¤, Oy\3Dqi8w1-i~f^zF͓)WQRKŻq5?Y cBƵAuwd?tmO }ld:展tbqk/-u5y~[ ύr)ڡš lyF.ȌDy{%aeS~puaM$ ;1awp]yN=lBSBka,=`7˖?3=c$g}w H ]\y"yϖaK .I8aWR֋%wToR>M3nAEԗ8dD4V&ҺFTNּarřiM WSR\ Q zM,K87rV;ք6e](M8InD݋A-'tt-ɽKy"A9&;@@,7BT%k0÷բ.v-JZDn|9@ 'E~O1p:hHj˯+]XZaMiJm}Y`}AynudxƗ ,9ɨ\?c{r E'?evN ld8Yz^A?$%BV9RgFJn ޶AlWxr? =A_ټ+*eu-<Ȉrm󦪘u"3T<5.Gn/?|nTT6ccQ~b&|v K%'X՝ ݶ@-sYo| >zI$ZuW]oa<\)JDusJKB3rmP` ;aagM%<**+?~ Qm[]m'Qt}/jR^D>n ľяZ ߝi5J2zQ873x^𐜫etMR뿮b|\80?@_С8emLCU(h3`  9 .ÂAAiw_sQ~8]Y- NЖ|zQg ST,R\Cko"RI*,IpZbݠ%5$XS{)7VV'4Uḭ'Iƞ-Q~g pS7[ӆv }t :D8T8懦+;'$Z` k.m.[T3x[[- aS77S32e Ch*QVԐoh 1d-J%7W<^xcx&NhVpIpmn7OBPOUD0 "a c$mmv.o.Ą"pk. v*O&wEaʪ|[(]/gUQ 4d)89piaHB\EL^ vqv :Èw e7V srT;?<^!JLpw#;p%{ʖ]ߔ$usER5 Z;2K:k&H|=g7ԉ(M!"&aRL]d,nMk +vV72 0r@#h=_wxI 'PImk +KW*,0Er'S ?&TL=1 ˣ %xan=*+xn_/*gXƭy uK-?ŻȌ<\)?CWZ={q03.]-R_=u~BYU")UR0Ԩs)":?ёnƕ(r#tE,D dS!0tMk!D|^]DW rOBtE沏wK}.'-j7. s^8€!׶[v#|BW6bU Ű_"yҁ!vr01𫹨pb.YNTu+ tmkyd k"? C*1ӇLOlyάEgi!4(>C^_IG<c-R=h^:F}RVnʟd/)7HEa)c%\vYsUP3%pRLJ>^ J&PZS I4A` y6}هs"9rjRaL~~<(Fɞ |<=]宇H}J~UCq3='SfJvO.Ԣc|`7BdDnmP %nsl]{U%ɗ,*WƨHM#xMCg7;DJ I =1Tp6[/p?wT?J%gQPS'<;Wz{vNzt\1#q]$Vi6~?AiͅY$K kQ?9UKqJi%GA0U>q) і\ M\l:A&,$s"}o#׀M$W0ۢ"*UP_)+uq9x>CtBJ2^w@Zƶ PBo&tqP.te7\ Vo*`m2^IW(_g>q#dͲY} +Dh]#RHJ쀁SmT$ӓ0#H5 ٵ*DJ;9@kQi jggK2MC0y`7eYamCnGVꑶn%۽,4U9nMK_஖y>_Hz4A7-r Ia&3R}9A4g#>nw~rA^B00ۊm<& ݞmɷ5~JX cMb2^EΘ҂&6&j6b%q7 na8/0&x4B#²m `Jp xߋnxE*- ޜ~I03pn]v;ņ<ȓ?FbXO_Tߍ.I0}=RH2T )O.@XC9< e g'vwP6YW*4/ ]8'-9p' C#$~0?M&dmtĐT1J' \0z7 mO>ean }C tpҺU❛FY`` R@jډ Չ ?34fmԝK)TWJ̇zS`-bŵKr`2gq0iի`ZHǣb 9p:lLjZI^bk2Cz6f̰:ψ2F]2ғX#3FQ nf\tlj*!mD9}fk0;' oM96bl"$1.q3[ag!(], Z]>ͪ|\14ogqsQy6h)d8D)vը?+0NJb+7.,q5~/s$ƅ $ k~j܅RwS,X-|l]EWa`|ki&n2_*] :#wGSA㷈UW}Өry-N<u2_9;7(wV1)puixaogT@zL L2zZ]v4iP*.@?֥|ʼb :&XF(9Dլ̈ɬCSq~9- :l kXDZmj?,˿Qfa+waeZJ}Ip*Q?FJw/0̌jU&/wZƋƬPk1P^ƫJuOU1<œUM V|::Vc\$ 1TBEaSȴ12<ðRةSXst]z=,;](ԥvz> |3N,11- 73G3ԔsHu;^q!ddQ8{ wo5'GyB}'ʋAbIW ˞> pPsEM#"VPO>рDǽ1o-o0\ Tru~޿N`?qXgeފZ vdjW{o@?ֺCfzSΕRŘ_w玃lbƹgc9>ߏZk%#'=JJ:0.у$ڵEqA5faO0a,̱N_@baH2l4nKlgd=fCRH sTwĞey1{׹)a. (x#cE(!:o|pƆ[A(S?}o%R]>Ǽ_<ݩoTLɩ P`@]7Z @Hܽn_i⃫leykWW6M>\ [uj{r!rNGz[hF;!ҬݘCLL+rJet]]A}uĢJ@ޛmǸ~0j!:T8MԪABE"InH O-=\ǃe=qa#ΠuZ^W,3rh=Uq 6~gA*]WCLIdb)E.$ABT6NJs@Y*C.>U2{~N!_+cRmVSUdBYb"t [dG7!b܉)u2=Sӥ=$yǻƛkM.Q.ő *n z`R|)S?P=T88ӷ yۊ FiFqoR2ĉj2αɞ6ks `rTGb d)zZl-tM*j{L @3 %GkTT̓vt5 |@kU0u8*S.:W > <;1ߞIxn'˺PӾ{ѧ aT&Y}ܮ0hk6Bdq͇[F[&#fcڡo3 q G|O+F4?PB]>tiv&s1ɌnG{:tۮs8 H.ZrgC.J3ݏmPp#Q@g)"¸ aI|V|kZ@+_/KlRVo%@\I[u9|c8({9ɛ /K A{2mR z,_$.󚰴Վ0F 0KbFxysm {n *L1BS6@@`~qrfaY;Z{k!@B78o[*Xhjjډ_:EZ)k9Lw5B9KI,^#d%SȒ$pR[l.LGTP^sC,*/ɡ~6&g#{%ͻKDHg&ISp wn[FNU%'"U̷Lŧ L.PLqÚXy^9;mb^.ދIeBsCYVY%1YݹU3k-@ײ4ՃTQH\>8oƝ- 5%WsNm𾓦KU5Heg߹%J}5ՑsF w Jͦ=! ' j'=we@eU#~}an,Ñ%Ѡ& <\rmPҬmTXy;J`xc8gE%|hp"O+7Ҽ" r6@rB\GUnE6&y% ::%]ӺR}LXp(E]바 'jkTcXzzLnpzRRc#j\`(gyt=vfcD^͉/\(?3S&׷I. 6.g^u[ѠoV_=:# iQca jiNǓ~lL*:3@hYG$+eb ,r,91esӕQ2<oHGǚ)gS Tu%C0 ]}K\| rRƘ_At hA !m=|)"wqe+KG"Mt[Jg_^z H˩` d 2}"Jb{Z ˙ū.V=\'xuޡyfM*}ʆϚ;I\W^0;l=o, _7fW5|`?ڥ Ṫ|MX vHg{67q\پ'@FiVo2=9=?%NqO,wI A':^rjXõ^h큔; MǶ]1jҩpǢDp,y ͌ --H`e^um(zFX3oz(ӊƊ+d̯95ԡ6~m|BUƸWZRi&) >0P;& hdVB|tުn_M0][䜫P@@jM4& DXuэS{MN5. DuﳹcoJq=mQf;۳\乖:#$Sax;wsH?. 84@AƲ/uV؆A>7H)s.drݙ21P_Հ{6(x=u |9pJL9 d`<2VÜԕa1e?bfQ؇B-0('=sBb'\cIe/мNÓu(j$cblbb`4Sw&OTCr]5 L?,>ԃOQ"'01m@zU{cK,)S$p]E\JPj|vєZLnTƿL,3"3!69#m @fR Od3 1{:m(dL\7M=ָ'=뾽<[춈i^7)cjd%>(!-Pe!p($W{%i().`Jt!&wC=8K,UWRS{Ef}5Ծ neUK1_~$UE%fx!F͕̱4@*c#E%| Vwilεul5eFG'ncT`2᷄Ӛ/o=UrjVHm*RagVALxel}'SFqq0ӤN͛aAe2tÂ:\؆>g^Ӯma5> u @ ,dn Fߪw/5*8ZUJKVu6".;v@#"Zy| ̖6OI]v{H+vBʉ\N$Ě$&:2Pjs+w3M4zjr^gh`7Ъ3!|&u %%ӧ:P(HsErߥgH0 f b7 ^؃HJTٸkduʼ;ߣ"4QC.E֙$۷,i'A`vLRތ/լ$N~!G?SSJbڐ/+veK%j7$o 1phu\j`?0 *T?i&5E<rCss8DƎA 3 }:.ŝ*2&o ]AE ~nդ z?3j[y y7zJGA#xˁ0ERᓅXbT[ʗnjۦQǬH)/fInh_9ǸvJ#cIGP'Xn~yp׌0DڵrnC & [p}ΖᑀՈ] lۥaz}0}X_(T:Ew)v*jsVJZaIsܵoA7ًSH\D}U_dջ{LHi` TB&-9aL,!0E%&y(ζ;Ke^7=Xfp6~Hes){R8f:Hv'3"F٤+q }89? {{ܼ[K nBnY;Z1k<;a:SqpߏAKu*\eV1i$'$S)\>SIFV2?4|>Yk3̭(pt2&‚ʲu/f%:UAiEwzQFy7XE( b,Z3'|.ʃaskZD|pڭ0mWK*@Z :#A9Y-]A$^y>R:5qZA vwdnûGq,Ո  غόE8=eQ%ִVQ\IrZf_K"CbjK5W0~7,i;n|QG%wn Z& N)?Yylw6cO|վBabdX%';J+pZ6 gOx#Z[) rd_vP&>%PV˅X ӱ[ sJRF "80YN (D0EIĘl$B_0) n.j7P.6&>r )S(qYbjÅIkpU_(5k5UY!.FFt)'4 \å`,/lSz?<)qxNnVf~a9XG8)R'}x*޾4#~i7*/+Z[Wu([;9W|->tţr̟}dJv8UI[2W+@:2f1A\lK7k tsml샞٤ @ʘ9˼9y/w}p{ʊ qGI!n-W8q CCttsE53J[rawydJst۹ѯB=Ì%v$̏CІ;f;hк…LEȸ\v<eNV>OE}ˍZ@[AHR sC*5lz^DU @x?A$<%ԬĭEp;K08v^lJ~ VE?-rȯjjdl2;t'82Tt를&,iYP>Q8h{kqIiKP@mJּ1s#ĖQ5ōcpU6EIQY/_ש)C&2k'^ZD BRa ejVICşW5xRNgPnyR yDz!՟$?(׳Cc@caj)A14m~gN+Wf-Ph>.o,n. 2 Գz3IxNp[Ej$M}2Պ>YVeи7%+fѾ7VwY_K uF7/?v c/v_39ң?|ڀ|ۤl9")mffcrfB" T] ==}Ưڨ%CSKw WgMTVeCN`h6sSQ@]X1m!p-D| J'RQ)T(jaܱ=3A qk0kSFUsåvWxU;22+U-IBDC?PV*h_ %@ %M0Zj =^߫H5igu*Eki i3ؔhTLt>'QMQ%  V9GCO(RON,h1"t7;<#* Y4qLOv1^̖80݁椖, GuFjbX+ۖ}6zpJ`aH$Pž`,/ЭvD( 1fji&sΑ#/@"!pAdZOp`k ,D/%E#ȋ ML`+s5OhOuwk#gjT2fH ۚ"E ~hqgW,lVa=>(M7͍ v֙i\JM{e)Q@7RIr 4m뢯><Da,X ݗ-#VN]}*| 0%k,<^w{=)yd5Cx=   ]g x:s"+MeD}jIN;hWU[ٛ5YmV& )xe'Tz ^>}@ No6)\G@ۊ3|y&JT(G;o-Ҡcuw!9̐SГV}<Eh &xfI[4Q$x4_LZU_1gdhޱ=/NwU[3&#땱B}s.kZhOC9փn]aZ$s3l-I|T:~oq.R4JlHǞMiwI9`6:<`Et}I#}r˻3ɣn |XyB2qn=c }Zc[dOg#&FaTPJkֹ PJbб ? , pI-0 ̤:q6gߴygJ bW%~!]Sh FKӎwS: '4^mS62|uV[b1@d7,Q^@# ,uII<6uF5<ݕ>tտR`𽊲 0!1օ*`?cFz6fJJD"|,rMc|EĞp+nv%4D}nv W0!!9y :'ƌvG_8B Z]k;><0#KI2i]|FUIi eie9/;j*(;^+%c`.a {!f$YN45P(a>om*pa؁\@G.ac%#MI(ZO`:xT!n?v.yIx綛ghťze.T j29}? dq(Md3bAotO6`5ZPDA~{qXR_0@R焾KBJwF(X{z[8[FŧS/B7G=kqwj!Ď8=璞9 qlQ@6~ʂOc1-SϰUnpDM[Q.*DUF 4 ͂ 7D(qwJ;0^{RbXm|iQxV,6^;&YQ"Pki( FVa J ދ%1w3A cr X skj"ۍ.e.!x+[ nl B?}5 ]cTD}!C2u݆aFKl:]+ f1ʳ}B,zV?pvtӺHmw5:[XrzJ$-TdӧhEB'VeK ` Qu;#=1SJ T~Bҙw?:'\y;RZRn6}My.oT+ڙd@M8M73Ȝ2{n:DAT ~}70i]uyBH4n'%~4)3}H Mċq=i4 g¯%3}DR٢FX#;k&xU]:}ivlFqqױ7%G{;n: cMИWfH CKr̭-`z2WI MlhGIVUFӋM9Tq|3PCTy jBrVz%]$fM[=)*bsnK%S)H5ۧ7y_ ~WR-9c4*SmF AO_cB=bݍG0>ɲ|ڂe`ƥE:!˸!Fno,lmMhDOL0-E0Mh6K!z-,w|yưwMQ+~;mX7Go׃iy'*<^eBXm,La O`= 2J ,U\ bK2B2")zzmӈ"R8 F`̪n`=R,͐+-߈[6U1 oYu}y0fq_فRx"Ȯ |ԙc"x /ˀ!]D<~(/wȁl4VҠOE]^i3SS Z-8%7*puW;n:1E,ko){ O'PZ瘨FHrZ7 eYdG{/OMtFm crbE1W'Ɂ 2 RY j DD++?n0[R R @ kԴͤi-uy-ܐ)"f)Hd QE-^˭ KE2jYKx2h%%C>d RC`!DCl!¨v_q L]wϭ_>хBVJQ A,1-z!J;DQ{>֗j`wZ9?sLm, _ ޥ-<󢯗t|h_Fc/Kp5Ǐ#Uɖ9S͂8Y'Db90?N\0?^ߛ.u:Bk&SQ[u!a~fZDV  Át;sհdXC@.Ny-]2rZ{a76cþi{C(f;U/"U -/k!fs1an?ǾEqKR{B!6.BݶH[z}.AqF(vˀD~ n:.p| 6jtk?bfrO aP{T PHԢȦ+wV 9(H^Mqt-^*qބx[ tHiΆ6(Y#t\u{eL  +"zDd/'On$V 8bj%wnaSZAU߮VUpa[8Q "q&0"V}W#JN!-WխX7dGE%RE**Lcפ|Sl㺜-gX?aaG/هU`^N ı2'І[!矆ĚCm0j ΂&?^(4pYncx*au=Fy;=>x.F_~Mw(We1CVŀgw;I~NxXNDItn V`f'b^WNAN?<_4j Z rf lT>u-+栟wډ)Z2.no{dT./R|1ykt͸a Q_[iΣl7oN4$! &v0+. Aՠl THasegЭrߔՊB8䢟,B0jVnԋ+B~Of|^8jeG?,m.ey?pJ;070ᶅ3}NJIYiы6/3d¯x3gE~/78S$+ٞ)`A 脑8Ozo+|M  l eYfl^'CXXwB$ΘvC*$HH&5&&ۄ\|Ī" ĞHCI|g.AȖ q0X +dEij&~:.rC^+#%VVmY3Vz>P)TbjEmT} 9{ߺShx R̀ ׋mG)ev+ZwႰeӅfr`,+!;GsIJ6FTAҿ$!yF(4,h#Q%'}~cX9{@:_.OɡQEs?9`@DGk D=p}@X+"Dǟ #N1N"פӔ9Ma&: O[jgӆi%c6J0"7P[ T5Q7CQI?ie䭅Cq̠v%"3kQEv w;<ܾicm ea31ks|>PđOəR9H^`{S|z.RfxbDCQ]x5;n`Z qH\$PSrY65)EorfQ0oVmTh)( V%\ά7{?(jYN/ }t]3ÅQ_~d;װׄtL-(j+$ x*a@~wNIx[ ֐іe(/rĘ@F w?\e<0_? Kuo@ D[ Ǘcs|TflytJU/EhzG1*;'/̊Fӊ wWbw!(ߦ/0Xip[s2ά^FmIkD:趍x (Ų"meᚳe"b1uL&Ʈ ;G! }Sܒsc٘?[u?kͺ̈́# [GGO(X[vVVvϧJK鵊]8O(Dz\Dxvܐ.ۅ&X=tCcMz?oK@JTLngO.oW _٣^RqQqnI<u]- \eǬ 1g2HH9 ͧ0]=}_FpK=$c?9(4nD" 4!^骊a]xw5|? Mjj{?tn0+SܝX+ks^T \k-8m<5)hpv+'V)1U29@D2M4Y-+䓁˼m]Btl!!h{quD0ce? '&خ(1W]SZ7PĆhM!!BYʍYRt>璫APfa_"g—.4eۃ/&cI$wij–ZguuTbh "jI2* }w#lo=Qn)uɮb fLJ!s6nWJ›'©R„Nѽos- $k~%hZ^<fWj#, H 6b\:d yT3a'`E nRt~`Tus}`ҝh6Z6۔Qj{넓~rڇ_-_CbC:x~rHȢSk93Ɛ Q$Eυ__bB5/Ta6O6}Ο{W۸2^LG;p,ۨlQ瘸1XEvX>h`ƫgIcI_p3}[ WSߡ70^~bI\d<͌ikmzu6Ye*Gاr_mZJ9$o1.iNpΘ>do^` zZ$`t`=V3DuϑO``4sIW./d'w?Ո"з ^$ϒigۮ jad`p>Er D*^ނʥ )n9wc5eWҹzk6A6%tא"C.HR(O,9`'O:Q\f5g"VMA@&1V)DCLփ/CkOױ9$k"6$;J|9΂6w#Q˱|PMYC* iPb8Hr.()~-_xgQ7*fdjoo)wU,&9XLK"1qOf#U̲M"X{io_ĕXJuH `"$ u8 OOЛn#=Ov6Wj .5nBsy?w͈ a9'Z )GoɢBvmb_[a z0\) {SF2Q,}Y.=$:xrgHebQĂaWcpyٵ53_)&Hۗ:zZ4a hԎuRxX$0_f+G2'Z攳4.̋@-`|4f˷+iS2dYnDFE`,~DuzG Ȉum|8LB!<2{h4鞩bWܸWr}@CaH=yf'5!vށ +e]̍#B6zFgpCxHu ~NÔ ?l،h@w9LxaAN}1a?L#,zPZx4xsh-= $ґ/ Ͻ%Ān`gVUHkҨgН74'b )M> x‡cJuxG +[ \CE Q2Ӷnv iۛwh3%Vl-L4i{1&+Ji. U9-7coi X1a֌ #Zr<^\f`'sD…6,4^b'`W rW4!7N^ZIM"(A Z f!p'\]i:F&iJHf⛲H8s0J0ޠ[YkۢOxquR|E.% ju3#H@ɾyVj)7L( 0YI˦H~l.d[.nIw7:Qwu^V!T<S!D))!uu}BPU74ܴ {4RK2.l>Ʌj>0Rg{ ea1+'״☎E,pNèu|]Z%E/vf&~j8KiZT#^7٥CƩ Ó2?N,FmND0\(^Sxq~O>sICSPOL#j@/UnƦbԍ?}ё~ okF$X#'Cn nƶx%Q(r*Ԁ"_4aGf9gHx@ P<ڍE$ QyhQ.K O%`'6`jRū}F\ O* 1.o0L9.eDlF-/5em)~7 -Ȓ9Jnb@NLQӄ-vohsvQ`U#LfT.̬JiwQD[ l9h5*Wæ% $V?LiE$)/t7:F mA&NyPHmdGtj.(T a =^F\#Q-/Æ{)/ +,7ٝZ] ˙ht}!׈]XL= #Ɗ*>_`y`7QK{u'кjY[Q<_ wn`n&vm#GL&>ܥz7 Yl)h&<yIS( 'mJw}R:Yb _No}g#IN"3 }y ZRAg ^9#UI7o9Y:{ecq~_fB!v_^+{cVRG<7EyyFM hSǬ{4TB3 ׇ)gє0 @1ՋƸ4<02ns0#gX}ui"[Z2UQxd$#'YMߠDYqq]Z:HO͆/VP˜-4LsUȅTnI .iA Ha[_#x03cG)ޙf~5"s0afu0 ZW%L_92Ȱb]-\Eh.~5.y5P\g&+AB;ۯ~w&H|fԶÌmݕB V8ċ^¢{5/zP9`%jĔֽJR+|*M'ò1TgY-qz캴v318$S*fUj8t&jB RJ/P)tO#FN()F].Td־K Eތ8'*sLI`D7Tٮf+onAطֵ߆Ba:t[4_-<y՚j ,Ҿ eX_c y$ƈ]U_좶mK>9"f>Fvc6CSLxO^ Fybr(I͖%r l='Ndh_]T[(4Ij/ʈFqDO5T?C{}- S> ?u&&yΧcF`l>l]J3{߃{!.tںd=5]؇wmA_:yХ8ii˴J_"zL>ۡ띰I'[m 1׹i#a]/ 'w_鮦o3 Zxbdi.Fqr75ivd%Q}tC H uEoe"%^'+gr:]oI1¢Z:$BTAU(D6?[1Ux~/WOc?~:>1fKcSdJQg7Ǵ^[Կ.S/9G:TϚE's =ًI@fš@񄰛-QduJ;Y7%éiꨨUGaWgwo@)g8ua$(2Y1*m/:q 5|iȀu+GkoeXɔ^.V$aiOnM$_!J"}ީTK%vZ/"zbրBo}$P.*/yq7~5ZL⮁ `dl KKC GEH< W R w;UIîMw hG|mָwK:_5`QBR[TPJ0"Wd%埻F?N1ʝOD>7ܸl'V)‘Z`otCy]\4e *E\6Z,ƋK><ݣ)h鰐T C;/ SsX$O3ax-~%p+y5XNBU#_~kQ)Ag}@Ѱe1 i "lEŃ6Bִnh 8^@ (?=| J \PurFM3GT@X/1;),!M_GOϓ83qG2屉#ka_H(,ne}A5703h_WI%[<"xML*f_37[e&G0z;[r=yi TZ oW,?-^-@n6/㻪7jѕCä{KėO "}tjsaJ.JaFԦ@ #fNZEck愤Yt6!áo/H_tBʶ#;kPN9])Y2F0)o-psPb`*CoIȩ0(nYe~TGX:ϥi 3QZV2#)pfaվ"84 }1fc~NP!:;RnB d*X$m2Z\Tȋɷ>TYfx<*W;VA:skQ-w/'cר.PSsQvWdJZ򙉛aG'h?@ 0H?[A'2QamG~[AE{^z0D.*"k@Ot^$h kZ[!1ڏ塻:w" %_ HZ w$5՞q_WbQ{'bR})ɬdkaJ, ؞[Y|[ iAIl4 +I=1EdwQZՏfrNuH3d7,RkK̓}OQzϝCWm,簐 cܧǧ"_GʖW@˃V*YJ:ay{Fzw>lVܛ:ܘ ƭQkgeo;w~1p9SoGM/%S1"s{Z|^`7mwJ듔`0Mrwe4l!6c'y蚩P2(ݹ>א"AsV ? ]x3eG`ެ;ʦ,%3[ /jZ>Ӝ?BI>;`/U-ױب}%Nb?OEC/hAcF1JZRwU;hjM R*,G3~@z~M{V|kMQmNF%L p Gb|ɑ2)L)Um`AGD@oL^Gh"R?/̓oؾwllfMerWzl-yHOFOÀ+IB\ `'尫QqqJu1$ţ!̀;3䫌}6= -%q!Ju/peje* Z0UY{hCiM|I΢9!?8XGZeahFl5VFd J3"=_03/8 Za@9F~VcUJb8Պw,T+ tCa41y2(W<.gڗEE*YLl%Cז}?!2qcIKL{w;loD~C>D#B)] 3TW@ 1]1eENno66ef3w|vYM <=Ȓ^,Gp nCG%C곏cygMwB|⅍lWi+XYIx8%<3AM|lm'4No6]V aw f1LOI][o7Ѹup^S!;ǃlOaXH8[w(iEH\w0I0)wevhyCKKK@FL`Ӫl+i&,]v ]sraw~Z35fdiW.r^Z#/Ү3>1߳q: n]lc?\.(rPx4`ɐ)=^״d'Ldp[z)bAK=Ei>D/"1S; @9.]BK,?L,?3>fQTj+ `|ԋ5KUcJ>xHIpPЂN/Y[|~ayhdk?hk`rDzX2;lcuiCp/=|S~.8nAHq#c*ES fUuf) mH`ZWG=JZKDYR>LN)JWۣd1&䨦G>eGWT'Ǔbs2~q Y M~y9naTZcE~ IۇCh-c@t \_?U%(E{Za <ȿFlv }/dq#c 7%\M m|P@>EwӐ5BQZ9ѣ=2u݌Wz[#ĺdlU(m4fR ߽t¨x`7t%X}|9W-i,2EEӉ!=EF6Zj.r (A =m51Ƿ]F$ۯUUGP׋n;zfpR3ٯ ,\,tr#y?0㋆X8h[ߌrC og.Q Y>=4*:j{8y|UEޠ?s!5n_mә\RxJK9m?v$Qm[Lir*}aq *Жv۫6_,@wkfx ?gcdc+޶a]4%&6S 'hEVƉh*-]j \]čݻb"$v_Қ9@e|jBзGk/.tPDƺB?c$ RXS߮@s7s.i)C~,CH%s\<[}ϊ(ҙy])`PI+! T [ W W&^cB_cՁ^IxUrӢٗ[3cprolJdE4A*J.:Q%f;ezDu~ „}EَELss U +hhi{ͬ4ר4v4c\^Ho[) mѩ)nDw9Z4m%SzH; =| / &{pP[&68Ge%/KkZ'S避ZX -:D UtB :g>ص r5%^y՜ӤoԤ&FQ׮ڛцiƻ0i ;S!V=|>l ct-|Ȍ 0ƜcQp~8ʧJ eFYFX+gy٩]RT)U.G١RpZ7񊸿+:כ_`Sx)`G>W u1}){^P,9 ml3s5 av95: u1D*7v,Dl Zte@Ŕx<8g!(}K _UwSU:~a'[X!_MA|ZƢ $~θȇ} 0@dI>f 8ap0d'PjTg-]&UTj0oH+j-y{PGX,~|.8uv!/m6D" mBd2 eTDZ#a;8@ãQ6Q}\J1̐3!*b.U_L JQ/v4qxYk=ʀ ۾ ަЃ`qrR*~Xtΰ#idYfߩDthglν^m&A!X(Cƫw+BBZy 9{+l I&![?, @Ls~JLINrY A{ |;;!7Āb}@IߝvIݚn? ݰl==]<(K|'s_Nj.faV?/@儌mI+ZjfBCP&SͽÝJPZSIq xஂ6L@k1n_MML'y&3 앂~Dzj%Smȕ:Rj0 R҈D5̸]a%o] q]^L3VW8_<案a6 uВG3Tv e\ww^Pm P j(C3'tGUMSyz;P[QwVjX~,(`I(cyF&$1\r YzЩK,zT /HQ?78}ew~z>yh2:20ٓ!l VO@q[A0r[,;ûH7OBg1d] G7m/܀M/ЄG;p֗v*q)\ .QybK ZP~ZNHu). o(n ƫv o>wwB+D y\;jO|멮'AfcnLjEy|FƸ}h ͖&sBwt7g&`tJLIG8.&mqX;+ v?0Eq}#p-&cg}t̔2ǙFs*)*O"ezz&bu5nFN̴*P򲰷~n5>"p/HP |y=_1 C I1Z65;0M=7:#pn wP=]>`bMR=Acz (h"`GN1'"}慇NέaYpzLA3=PestRZ?`h< Y[Ds=[Ʈw\6OT5h~<!wQ ?҈y:s,keZ}.zqx^/>r ^8lO݄:F[#q6f#L:0*:mq/Q-U=ش>$>a U?Z _6¦isgI݌Rnk4ٰ5Fu۔j3ɹ%U"8 \Z$ Jo 7{M@;ߓͯ5?hݼeZ8h7!<$whæ4l5,%j׋| "3q垇˵Nق@|Bc#c@71V KxH1{"70ZsVaFp~*1Ht˧yب3.$ng\ER]XzKHզvRt1lc?OR8{8ӋCk/v76"-+uk/753YI0bmlmZTr)ru$.%}(- 4aM^^6"&/#p7"E=6I!#aAgTg3a-aM4n^|NqӃ!#=aݴ ӈצ02RL*{-2wlbs-DJWeVKڞq[ai$$=E #qg,d5Ճ}$Z a7#8ɶw]Pa>ɡďZH̖NYŒЧj!wI~ :bn-ui&;^70aF$ȷsX0TGJyºIӪz[w rqdj1xG)VQ%:2#_*^Xج=Ѧ)R(_D,x X eq`66<*)ϨdEÿ5gY.BsEƻ`= F:2Vr/4S}\d8^kߐ^=|޸!UM=&|s9\ xXS͐_\H7hUZ#V0^w12Yʚ=cj.͸-xR|jҹBvP'%#}Wt6iifDŽbEu2]?Л6dELr;WTT&%vY* fOqq+p;A$2?G.QFߵH %NU9YNh%!aVeQ_IZ ~s!v:&YSEIO)Im~Zj_d:vv=;rѨJݨJgԨ{e%ǘ u4U>/0\#/SJD[Y-x s*m00՞px#8 v3BVi2`9 ~Qv/`R >C=FG:KFP2( e'fcyX;M3\ڌzش'wS mNi'O~TK<ܑ_|^䐒p!5lm Ǻ_ -U`s2!eX,+P)9RԲIJ>jn>,G0eq8$F4&E؈m@5+hcdԁЄt:1NKIݰb3FD*29SZ+ZI~_Qڹ "Ho*&}wm镤5WX 4(PbrY1;j| 6ō×5PAb`D0tW}d&Ydà}IC AN&}M-tO9윐%}+y|W ;d2C ,=e=B^v7GtLq[eIJe@&Hra>et"{ă3@?O:v_WGsp#t&b+$D9pɱ_o9{rn5OL-{ԁʜoܕ߀Ӫ%񻫍3_j<֪o`#I]}<,ǔӰ]K\f?onzwHAMQKban 7f^Ekd#w7dъڈ2GOq0@kp eT8vzb9bT5Ă3$5!7d=PC)J}UiG!D$(ߺ~̔5@i8G .S"֝9oRes 씽=lԖOJ7Uqø3D$Xz[Ԧ6h9gˤ#JKdn] }ubY_߯G`]'heĞ$@-%vGu-yy{G,/ٽZ7ܵ6oHo8}#;3EM'2 O.wnDb6j6JwXv^%k?BFlU5o´zݼ?=&_s*ǂFTd2/(W.\Wd{/rC2XXak]wbC5P$xFF:y,%n1޵DFX/ilK1m1@ ?%v6֟\NvX`\]۪w1 ˫v4 PL'P~mm!fp$q.`[xy`m>bo fM`XJ Wƺ@J,ŗ]}¯7sGtgyL*d]/QFI8VWO59՘i0)n +t|-צ1huzC[ݛt , JMJw'?KCIOݝ<:_])@B1[$*$[u55({oMu3%z"y4^3~_AƸrDYs; mrnBͪ{w-D,nPyP!YNjkdi>{E+W{6!mXS+/lS|Ç։itŏf&TNb`:bJ*a XkU k^ u|@Gl@3 ¹cLkX"Ե$(~('?)Q m>CM+zoIɨ'#$;Ġ]]w-1n=L{:!vJqd( LF:q. W1b< j(lY9RlQb:B_eFlh#F5]yX,ٓvIKS\V4L>FXwH4_W-/2p2q_SY-":)KvJ-%0^ l2[M b- +KΪɫGYbL.Y>աh FX.yb`(tI}FqHklX .}F(XX<&޾9%"טYGj8ч1$-(&B9(;׿c-,rAy xߘ|QF~5!圬%ӌաBbmII86aEDr[`́MQPW!Á\id=+egɍV|*6.MǦ`ټl\wWlX2"Gve|Ѭ)1:57s:+ӍQMeyL޵G2~?Ϣ{= xKe@gy ^K42DNۡ2bZ̭kIMHS*|ψPNJZ-ۿ8:''SdoQ&vgRHgjx96?4*=o]n^A6;-- .XduJ`jxƺîpvP-H=! 7~ح=h O,;`2VY"zKXrR-9%=.C}@7ܵwz4*SmLWt#8I~)rskhc,HYYnZկD~>Vr_I.VUڔpMfg_w:q]14Gp+۩fn$oϭvb~8&޲vD=˾ g?% 0}"&F Ԅ2^-41-*DrSEeV7G͗(`ephv3DA/2 փ;:ϺSEo2 Aw8^VmHpAĦ2g9e2C^k 9L)^yr&џKFHϑ|2.{k+`Ujgc*`)Ҝl|c*HYhY_~3z/)Ж>Y>r;q1 DO1$ ԑ >:RZI@dI`8:Q?svkFTt6pOJ|gz:a~u3ªU|fπ/U#SRNTˎ͉r@ ^Иx@1Ǣqwa%Z:ى\ϧN6ϺQK|4> ObcwrD^fOaʗ?fIQP7=1 av,*"o|/K-*SQ<9bP|]B:=*ZL)QoA}V"P~ ]T.v bcP&CE/qaIB0.R5tJKs9 Ƕ0\E`;F¹$c7(ҁp[^clνSE)l}"  x ~- Il P0& Ͳ`$omr02 &m4cHjH7h3x弊V/[74qs$K/ZbcS< xX?{*x-7>0ԂV Rznm)t/ ?UrW'[Sh1{&!zD4_9&>5Kk{W7ss\Yf+_VJlz`&|!ڄ\>0tuYlw(^+Z/>$@ =usx KT* wt:_F'pϳiatg4}w+4m[`P,J5J3۾T4C$Xc f2vd kTkxo*?1Ҋ )*NM U K\9W3(b ܀foՁQMY-oYCӅ ԫqct<-ƉB:_#tݛSNӾO.Z0ۏ` e[V-~D#m䀯w!d/݊ezBI&LR'RuguTdN08)4250M}x :D)yuZP`Y#;DžQu~>iƒouUsY1rd 2Ҝyb=\5ܘk 3\hIU1 x}J:J*vOnP!CȉbͧFYZ JME#0OU:pTbpyX87(Cb5eR#*%'rSanW)WHu,)DN6k3 xL&*1+x[a q0'oUoʀSvdEV4˸aqir,^< wQ []BW!Nw[I[G6a\3ܸ+JdyGǾf)á!ypM[Q\.~M>.u[HKr:t.mBjbX#f|Uk'.$ӧd:>R֯}2Hd۰}>]3D8Tyymp{'|዆H B].a_;BXX`mtgg& mKkӁ9}0ZʽIiC0?hCF}:?OĤl\"C:+u $+D{cr#e*u=pq?DiSܭᶀrU;ÜVyda. + 18.eNRz Ό;7ΆDWR`.~>ן7ܜV7_V!D/Nm̆vIK5@ ˱"Z{',m;LLM=8<㦤d'-MɀVժ*54o;;wY(h;2|XokQ^Mm16_£J2wN D(&Hr2e؝ [}DK: ˜UD>o2j0?x/Tq]1>Q0B|-imf y#yzԹ:z{z0[sϣI! HnҀ^]zmG\(I[DF&tz$ j&YB*v.λI#[/@)-#7q!ÔN Qt@Sy4F6 ~9ڼUS(kJ>diF9O(;}X! `ޞjYUSfb+~Q@5OFJ]NkK'U>yڒ%?,/%X59Q˵ƫ-.30iN%n1^.{PTU3!vȞyy=v NҜ$Dsy*^C4~ŇD*{6l6xBh=G5\ӊODy5^}j%W5w=\UpL#*= ǂ6JB 0vh n"_# Yd;r@Xvۏɬ e=dC1K+$u h'Tc^efN#- ;pP.ty$wiu6\@8t9c!5hhڐh4[Vk~a6DG\{ශex*":SmӽI!<"f,{!R46g7>Xy8,nHv{wF~'QduՋu#Y 3$X'$k-,7muzc܀9x:N6YA6Zש\UTiⶫ%bZP5V[L&cNnVt35##+N2T6usκqIMPޢHZ$ >J1J!S5 Y#Nl/Xh-BU6km| OXx|FH!/2sއM pdo%eEyʊ0BOZӓo.nK$W;G1Ȅ@^HܦQy/:|!GVi\N+ɃkAH(\M ]Es2-Y*ssPW:3r5~>c,{fpJm̛?N!e> ^7#b->d\Rh^l d bkPs83 W>û]0jvU/m~kKG.A B; V\X YIֺ#dʹ*F!k9<(iU1oK4Yak6O[*GޥΥ S=Z}뢍LW|BŰ9l@g: K:axmqQj,$g3CHBwlcԵEU}lY.JJ-!gtķXۂ j|5o([G|Rte[pE&(GPl O GE:xE k/Qy5S(($:ʫc|(zyG଼75 \7RA$܂#(ެ_L%Eu>طS);_ 쳟LŴ"g<3~?{,ݹ+hÄZB1QˣМ Y`K9?O*+<24`K;P"eބ5,H k=No14~"vՌ4ŕuX]"AT~/ $8hGN*K@iY`/]J1}ةN ̒+lzŌ"V?'˻C&̄l ^mTWE侍_?m>׋ -R>&,zx|7Dy `ƶuVt$YŪ̙7u NÜT-ƌb_>u2'iM#Ɠ,7!) - b$8󫹔K@vDҷ'qQ,Vr0ۓ}2CFcQl 4Mm#[/usw HP5Z 'BDx4qmE'.J 1T 2٪JVDly܍[ۏvx['pVn4t餄|q4O,iG$=D6+ 6e>XtDf?u7; U@v/_ނШkd4 ̘VWAշfu{cEseuq$Jya`w+ѦmurYes!+% ysiWf}t3۲8$oGn7naf|,$wmjwB HANlU%Pƀ'Ĺ.0#OGS,_Wn/N{W4tY%Si?~ךW̯я}F`W=Д7-{s8FRR?0hgp{ڑBŖ*KNUO[}2QAAY@RݠWen[!+~SȀ'2F;7eRPy> Fc?CLw)Ve$ϙ3p<'g0 zhޥx.dMXgnn΢:v_4/a =b^1c2d"h>t:@fFҳf=iy&'#:)ЫQ8xH21]520c:97ח$3u%݌e  o53{wxF#) TIonf^hIՄJ'lIL`ewE2/elzbzZj޶)#waa쭃aQ9 ڭ[uxޚ $gxYrKE4@օPȉHE~޸NFGi觩L#.:n+aHPcx\Vb}z Qj*:aSoS#JJ~u-%紨;%+gL"8psM˲(BЕẠtrEL:- j*R]~c:}} v%ic5dGҶF#"@|*%*y\.b b#1keI\N-|3ss MzLUPn`Kg_^ĽDZH))e!KJ)䖕 2q݋y2U.ag|?B1R-4l<^'擲Pb90XQkN!1/tru̹~lZOtdKeQ{1ae$Fc2MWOQV/yɔ/]7~oGt\ƫ\C8LT ۔fzg @ ΔD9zD"A!!BתbLaa)3-fR~Oɜ)cO8v5bafTH-&m+ѿFBdT4zri3;r^H}YUNra:{NOLp:Tߚ.XU=bՕ۱(砗}1c>*ރ]K>8UoQpS=~'zʯJ*%^q&m$WNNz~>@~A }Fag;ԅ.}ޖUaAG#Ӟ}tYjm`ul2%sr6:~Jn:tr=7 K鸣 cHexyk\BލsnxM P|^p7<ʰeSNaybO^I? VO{h *Q$AHsCx&ʓlb9#I]<"ZP -Key?VTjnČ2PFǹgA_`J]ho{i m?5,Ǟ%R;z.4:x0F#he@r "p>T9~̧\O:HBPE(t>.F@2-(q*t84-ײK^zC6ꂙ7,N#Lqoioh ڰ5)0ycXhZ'0Ŏʀat);&/`c7HPxP%RIZ!&=&d1cCY*(s&7$U ͬ[wԛD+nxV`"w5D9MSIFMRѢ䓚73EeɟlđEhHpZJk=[ةlDvp.@̳Zʠ^CŀWB#An4hy{I =[  x%Lk3H7=>l#X(a!Du=-d9eTr8wӘ .?ux;(W#[_J~ȣvĪx،!R 0' 'bo8@DO#R(-y;R;7,:Q~:/rU qD񴣔IjuhmIVj]X)dQm1Ԣy`2 0W-M'OcFbGHAc&J2\b+ |_}4u.ՐL|mSCǪJf`裷 \-N'4wLW0ǢYku^l#!:b$,Aoѵ%qi˄HL %˼o<Ŝ)yNW&2E Plh$'=r50ie*E= }Z <1\&M#MTpGyp6 IqՍ%jИ#TpI,t:39‚ta=kFa;eH`>V%.:N<]E $R1зoM8XSk>3ck7X]= ퟟ7TcssRm^[&?UU1d_`?A N%tf*^>  R","o[68Zs/{7px!)뺍[l,Ԃ"ރNC}mB_IjN9s'z[?>öӃ6&Hӄ!ӷVz/{OɅV遚Ǭ{&ߖKY#iKrx5P՝迖Cք ˭/d򀓥`<Nk ff^.U{B%H `rb1T KwH~] &^KHb8E*LLћcF"JJbY^n )vڊg ?ٽRsA;L `P0Ҟ=@펻P4iT)?l뫲go4/olo,9+ \X_]4qv]zA&%ߊzM]iEP~à7Sg`Q7TSL;.y _UK='X٥-q[GKɜf}D8JVԕLV6^e;,X0A~/c/@dž#|%p"} -V h4mVpRKٲ :Enm闛:M {yF*ZڥztL)xcn3,X2W$)^fE Ќ3 YQ'ΰ' w\iN̿&pK}(3RnU8NGrS 0xH}6$kGTZ5뇑}=a;ﲀ=cvGƚS G,rѿʞH<@ۧYqWG;~d6TSq$;cub l@I,MO_*˼)JEnY5}j $rG>+y<5=Wg(^+3Xzirn\2Oxܘ{ol-{ gq"D[,tf`wvcKFuWQqtMF$j+i(6`xǜ$*wz dz j5L5UE˃DJcvɘ*xͳ% C&riʹR~gsXTy! f""r% MG0~%s F2sg ,va ~ѠqHJÇE23#c$īx_mR$/zLC,ՑyTl e<g>a!  5Î.{bcqy*jM^SaaGN( }\ .Qŀ{ꡖvUY^:=$j2ŀ=ID[LbԳ Dߥ<&f\AFlͼۗ*>7٣^[&(D?%ZQO3?[(볖[`F864 Cj.vL2Z̄C62Eηfh!m2[Z) r ^U詋Lv'uJ_^`W}5Uti\DUYsea”aM MJhAQ; .Dc{je+eۍ?o]uff Fη#-v'cs_`((I}.PPč@vA;?RX*C>"+9yL\J?i(\|{rEMsD)yl ߡ2G}*HHf|m*u Aր~!v9kJ?Fb/|eXU##ܨ F–1>'̦ݮW`1<+i -x/ lhA]}] 6fkV8~΅b&BfPDU QΌ;\''[Awt/{k`GP~Z>B-hobӓ?vPƮM=ȇjٕP=V2 "cJzo<Շ-fׄk+6p-ڇLF!izPvgeyx0J8S}o289XCڌD@,g]ˎ\n쀔/>aR@&^ U=^xrd#w<~g_p.mԞi3׏͚[x^]r*L*GQ--чd-l%&canz yî|%H_Hu d$qˇ&a%| |(BJl_|vQAWɢ3!{Aa p{-_acB5&*UIfVoNxVٿ7Z'0AVVQfl 9 JwiNo&=d@]-Or~~r̞1?b o!ڴ1[|LVβ((̮<vj"":oQEIwRE-ȿ]#R8=.DO%̦ Eۏx:hLy""ݙ$! "ݚ5dN@M+ȓנa4 o-6dzRYrQ7"񖡇(<|1۠3*ic/4j1ۤo,@zxRaPV?UUCzT:Z{8{]te@$[VF,Ղ0%9#:6?d'&p AkWY2*9ws/{Hǐk#[*]ov4;z*= XߙC٣wwСTn+Wla)U7'9Y>PHUYCS\pƦq|ij #xW‚A\6_bVD--@ࣲ"E ”TZ <|IߟgZ,;*EX^`[yH̄O3D0Klp o1L+l@M5@:M@BHf+a|&y n:?i~`(|`uWQ+-gփ);&-dpJp )"cL+@IBxuNnb'GH2qb|d{\ ྟV@#CER0N<ǏMߖKPӕ6G'Y\ w`˟1 vݶ3PWUAV6!RPAxx,[VyݷHOz3f&E2B @BmhCM.0hb`Fj9> #@s=X̪D8ʬۙuyo|d7;w D(Ydaбb%^ѰTTܿ(}O?r~ϰ 6?S o`8Z-s\l)ݑ>…'(UKNsJ`VDUwcprhnw1Z]r( VX%9^Mb37r\ jjthX6۵$GR7(ӷ'DuD /҈RerB\L8 1n~g;r{ UacQ _~ Km]ؚZ"[]#Nn.|i|- *S~>pRQt7?*Cac>c|\\9^6TnsM3XٶL1֎tpdw]vȃv0fCI\|WHv7k9ԱfIfRUq|5uo_1`{V;a˫-.A|~̽fڲ& Gp74Wmd{0[پIԮ~NQngQsđޥ-WtrLĘvo`Tgu SiV@~ '00Hm !^?T60fWU&A ¬DSMa1+H[B2H'CruhFwp4L4~ЂIKq.5⏥*:;OlqU1KKPp * fn _c0o['zT2>V^[(C5E,_s;9p~r@UV&YH;uk|f¶=Wr/Ml rEHap[p30Yk~f}Z4qkk_~\ߦ=2k&чRk/T.@E6BO^p Z*=gN˯1Fq6&n$ӫŌ?٤K*>L4 ͐PhDc RZݞ1 U5oy !o3]qA( +rCzA3DZ*' m}m2<$, D뫜(}q}qL~ZL<'rRzp_ͯ!gw/z3qM2(džFx[R]_V3ϓݏk+<~e݁5m~ukug[gӇDVOppu.n tCq`?ef?5ԠBOىUY 5X5ӥߞSJ竭]ؼi83eL.L:UW&}MU􂇛D 8_mUͼZK6;u}hRf:=V2>qM^ֲcy&a7n69#%]A5O6?L餜akwf` ˑїoWÂ_܀ʠHNv  X:N\ԴMt %3DՀ^F>)XyAU7}<7HS43oIqdI pffu mor,+h'g[=~/N6,FtD$#1;o"G dXs'*F_uYވk o=ȆjM\|R "SWYR^%<8⻻ma1ܭ!iӅvy$xUa]}{Zy{E)zf2]@PN `zOX. .#X^HsyQCj-ZDq ^[_AXkisϝZ~g䖻Ʃ7nEh8l}^HSEYkۑq7`ϟfۛ 6ϟ \0?cM'd;:[<hbT~x _fXg5@o agN0zȯ@$+3J$Snp?R=z1@0:+%kj4Dll>4㼵'P٫?%27iOxGtR(όIzT|o@Ds.E>8R53_ '֦[E+/?Ed -=nLe*';&gXC^FK;S"BrxŻaϻ Gu][#/jEZ5 j)qYT #N󨔈ŷݵ[՛d\hqM:V!H6ijuArf$-5ƃ^9D ^=Wjan4: ha2}+6d; >W>Mk׀ѶXoU)5p7HAmD{|NäDm)d2Z:wHC:>9|WY/sDD[@{!yx }_m8Y#x$+ "|_'Zwa͠{]H7Tmy0z)y`X, OÕܪkqԛ 8LKrp8*I6Hs8z{0E&F~ɝv{Wf0cO$|M$ԗOCSdcFpʊD^xS)44BvוdCo ן9몈73Lg,X^ =NHګ Wqħ_㣉BXxB=Vqz8C ±f8yX L寃phw7좂('ELRcfx؉0!#r׃oIY"c`_N@F:4ʵ!o3?gYBu^G_ee V! 82{@ ^զ>t[itGo RZg+N7h5_ \jPTkt!|6ֿ>u}O=M#sh$`A,7sl)rD#]G\o&k !O/idr3/5´]'t[ibg,& K}40`jbm& ?9poG8&H>%=`4"pfWjm\)ivp=f&5Ƚ"]"M{ LSB2ӫ_&1~~GtX#w:\=V.OQw?S2n[kX4?^0D 9 ;-xL9 Yx `OY.;Ç)Is1d&{^UaEB. N^75k{,|Ӊ<nP}&acLRv [22\atncQ{~ysr6=b@t Tkou ,ZhYݺpr=kK:D$A@f{K 6SNJ1-E %✧ %`uy̾]o[ŽMhO4OJˣl7ќBFLă=Q٭!攇4:n"4TOY{|ah寧x2v} cc-w_J+1@^V0-Uٌ N~ #mA!,4ͺWV@*"p7;l=qmn7,=VU% &-U$<M|,٦s6DB wpwb7%OWÅIs$UN4#eW/:#RLoo.7 lzYz(eň?cUPÖǠQBv;8 FFJ$i.͊_VꐲG)|ɣxV΢oG/6R jb)HqNQ.bmoaGYAm$u Rh?d>S|Z#m+.+?%lHZܸ84dD8 hs"ρ"'яǑZgUgX7lsrC)R5z0ߛUsN WMH2ރq ps"U1UZϬb&@ [SzB}V-4T<;`>:3V+V#*NDV?[O:OĞ`P(& 3eNw/mEy s9wFASQ-ʼnlHmJ. r=炨3? `X0[KyE?>}sg׼%`c.*-#,N4.U`9,ԅśh'.n劒S-kJb b,v '0^̻D\jnP̐Y g #"~p8A6o~cpyUj\~XqYFՆ0#0m[-,ۙnܘBen41Z\51vИ/SÄHAt{A|RW'YZ>!j[ѩot"րO%'HGњ ,FZ"IcO|T6b`+&R6**Nxk"^" 6s}Қ [2 r#uctxH9"ztl6Z5G+fWfm&ImI~`J*MH黭i-ohuT4YX&6+uR`4m1*M&TI.)X.]>Jsܠrh NnIK !j^jӿ( 0 !+H.'odf᧵\4zULGc_`ߖna+ ͍bRKffx#Ǻv&5Ͳ3$)rl^@Xp)Z+R X¸@E~( ٨8̱7ҧk2\tk֚ cP'Qp|#Dؠ˹CsE01٩R#H Z iWdvQʂB/V7U =y)qdK(:O<Sʧ^zZ|5`_%bZ[cP̿lK}kPS,p@%`CM;IOȗtNsR_جih*ŒiD{Ƞ"_iKpq$h}5W;mEU6ژ5.tu;9£x'VK %#[*q n94Y!A-Xf)*l\˚t ;.`GesTb7A"-/g&'4-q!7g g/3"Jϊc E{Yf[hK {YFe@Ksyt(q#z[%FAMxB1\8lܵ $:gFZʬkh"9r: =0B;^ AT@-OL"sԙΑ$j*a!&}C,n9Υ! jvDj.k7 )﷋xuQI{$0f+u֣XIOHpƇ(7_ܚrʈsudg&#(F^?~m N&|O*Ϧ'$bb0m. Qx SNQlho!{e˞z.^_Q}Fuc}HIԙ (8D87,_yW㙫6WթA<5:SŰ_T7n!t-)021Ulb,Ə1~\a,^j-0|r47F5rPnpr%5%t#!r~WĖl1 adTAx[/Bj#ߓm j/K߼o)],$NlmL5;v@T qE<^9c FCU,uT/ m/HQSg1Ȼ:*z(\A l̔48;]0p]<0C%jM@z̘7 E| bF9B#\*ջU!-|oZr6D$7a?'@a*\5q;idI,;+b{0yPXԐtԮyqD M Q^b=Aey? -LROgɀ ?=%$F\T\cuXy##{SlɌia DZxpWN -'O_h=?9e ٢eqm"T^/'fѰJ Cuz^iidnwNh}PQ h@&g-S %knD%#`_bH0 J#m&N`dYJ@_,d~ia;PgT[7 j'kdqlG1Ղ$ùK>bsIbEsh%i Bdz;a`0 ֠l™JfO0G3Pb H\y;=F'fʣttF6=X!FQaOH](j{y^5`!yVa@]ϋsEʘX{!-{rUA62!+i nڧQ&;5`/p18iTj yUT)lLRYReJJs%|PBxȶwθ$>>dmjbW"f(0/Qq` TOMЕF7dS3:&/^Z["l3鸟wYO[{_VT܋Jt܉AA0n.q)%WɰTq{zE:֍P*-JB)%mp,F!5@-}AŬFBń z1@{Y$ˁ? =J ,cQ%v떱,짯-mH2v1ZC"JײpP}Kf EXU&% s{\#IJ^H"~wR_|,0uc_Gx҉+_;}bb#Ȅ^-[." @؍z1=kD:,=%,I] 6$h?(#I:@]hM{^<#[+'F7whQ2 :p~+ڊ ©f++.2;m"pyVp_H.[a (+57Zi52˖O ,26tТZg )۩ ن0Obqjܮ?gMt˩!G.3L=Eo܉J}D8wH&Gg9+U?`"5$#͵;:Ĕd)zA2twk'?{sAdDb^Qqզ;qO'R'VKpJ $<@r+ʈG(ol8`t&>y-o(o,yxVMX80S՟PnFd>ЍUG+e;GgCn515il0Ao5*DYa욄d*-}:ܼ%o 8 f\Hc)6swpUE=kL;mLN;8ip42#ьw3XH|L,U0#܃8<.z*0&s ģuUxͭ"#ܲ܀Rk\6Z KZ;u.kU!}':K:Rw ,/!es8t`yΑZPnR-n4eU*tÍVâhYkedw Ѹ;ݸWxei&龾#MZ2mr%CO5Y(|s}"ݿdmDUӁ8?h+nJ+ zU.ՆȻhia?O(;ma-Z! O?ڲy\ 6 9P^80COU7IW" U8O/p-ƹu֗Upӵݲ?j߹L@7Ưy"_]̨= jÜp  LbuՃk)UNKxU'wm@ZVlW2\]~fm}Vbo- .B59#d|e9+)L)erx)ЩH/LxG?${GDF!!RUҼ>cZaOt9KS;1myXSY !U0\5 *4@c\$·z4EgVbWYsh/hڈ{IGHt}4z:Hc#IiG 1 .s`tIaSW Q$N<ʄûQxWęE͇.$JQln v''lZ[I@Us=-*5AXO$(EFf`BM򨩃9h.dtIud o`I/j7'_ϠSՒ5EfWtm% hu/Lm$owpۄtW231F~p/-5o"@nD zi\dо/62cn*S s+`NhWD}bEQIDK,%W y9r/g7badQ9*c\Y>5#s͊X~tECe$`%wV`CAe$Tޒlb*gLzV[u3'z(Xô fJU^̼p:3醓͋s䠨ҼOfGM$e3_RЕq_>OJZ=zGe턍ؖے'R$ѡǁRddo풌QDe=69b ș)^R4l-G”*ІzC _/+m*r#8b #4ΨmY5ӎ _]M 53dӦ޺9r?W'RaSZ!p q3ѧv؍{֓G$ G;s";j$t]a;7f{:iO78 xQRoƜ!Q9I3̞ki-|;z3p_@&7̙%>-*QhjP.O0;+ǂ)NFJhs#GZax;ɒCpбcoҏMPIlDVv\;-Lˡ W55>5O@E==-#>a05 j{?{?B=b] )qC0foqk%B+Bw x!W8. r^y]L[f̽O/QqX}J>/:zڏ`uJ>. K4UF-U>!K iah#m:wb:Gx29*xlEudA;M$L AG15rcn.) T.'<:F?f` 4q<ӬpVV F/%?/,/Җ^p?|VG |I#2́=WfX28D QC4GEqPALF"m%H;hb [)_yi嗖|a'ێ 9~` x CK.I=4*el D.B1}3%;9 @dLc\Y TjQ7╌74&/.ۧ`)SAH$Ӕmgw.XMc;F"N'T(Wl~hLuVnZ'~RVPkiIgM-.H˽ǐvNFN )P1%!@:"zzO*mj3"P-j 6WHxxKC~9SL/7]5POGX"8ىY;\(Cn5e6OKyd5RC/9*un9C61O}y|y0 jpM$A5/gNFewg*|*SbEӒrFO_%-Zr,}9 o99itF#(b )06q]@zѕW 5 eTMy  rKv[ @Q2cqOc:=e?mFx|2$7٠4P{{"4b(J5;zg~LO[a߇]q6請'B 0&ңdxBĹ~7;ʇ_t:$/uPyeWe[Py60ŭ"}CD#.a3`hNB3+Ca.L-By5W["0A IhK:}w]cG$_.K\d)-8iFVBD={|o0S6_47>5B Q)-dFKIiE꩟6s’iU'l2z:ks*ϤVAQfZr6h2fцD>F>Ț]pԶzk:Ri CE237Bo!ʥ ڋ. s{@LCѭNsKaS{eX6BE(4*(v/1i=őtV}5U޽( Zs.6; rcfNh!>jAmZTa oѝgJ돢[Cۃ aUeTFrj.W9hZ;JDKA阜'sމHp}DzI:E"6[Hgйwr9[О TPgzwȽ£@J۽t@Ѯ[_:zr^ѡ=+ v'ڠ@7%qe-dP82-.AOFƬ!zrcfW\32'^S2 eN+~BS0xZ}Bux=ul---JPu![F6Ls:Ί6#YxK\d tp;v1y=D ZUD6.s#$ulGLiL4˛%KX"KY= >Bacc-,l^-c_F Y%и9A< I@G46mgkz9S?SW_́5|}^+ȀC71#s(bHP›<UZqjOLWX"N^lgU7ޑrbwIAq콙GNiJ CF_(Q? 'km8%.AY/* z ,0j[-rb,lppFˑk*cHaӯ"="E٢>|z8OorsrT,T!^Ь9 ئu6 ÙWCvɫȀ4 l%{͢"=Okٛ ,5ŌhT Еٺ)$碉~wt^*@ُ>v!mբ [o *X.yRv m+RH#}GRi==UvqR9eVt[̐@.7}H;b}^*3CcSQO|ő+mJ陦aF[Fe{t)Q8g>)KzOJO\bei gGO5\zBblj49lWn3]q5bW~.Ύڦ7xoa~k_>d򗣽yc6-*x9SAA^ۛ$QhWǬz0=VeŜO"xkN0MF1tHYfo0ZSOGs.c%Y; gW*^{- EF0kɠAi^!k3`Oj`EO8\i!? kS沈ع'z@  j ᳳMpZz`cD[ ;; MәDf%tkTg ֞yE\^IZlBQk­lkÁgO0cA5VD 䣚NgSmf-88 ݝīe!HZ*3xnQD  ׌9Iky*6S& J-Ar,u@{\G 6{6O+٨_6yY 13)!A ]jA"@ݾASE._2wBG[%F<VCM L\;9=Nnҳݱ&zP<(u7~^8}CEB)'Pmz+&GbUfp)v7W#"kvLs|5Rca7x@Fϗ%| ^q[C+қ@8fU% /z)JGsz_ ؽ0'MK@h5As*ۅ[ BZCKX].(MU#StjShd>dr/)TA>3e|~"4i֋>~IP!DCwjۅw@>n= 4hС[ZDRe[1$YƤIN~*E|7ɝu3}N럅"GFL!~Z&m>!O< /{/ir >DRLԒ5}qU{VeJP&o_Pa>Z&e~4^n[iWK]O/Ղdx1ϯ>]$ k~L&A_֍an.ȷKlZ yrMjM+ zwVlS1]4QыԀC;JT;ovE~QznQ8 qH_Z2bo'--v0? 5lN^̇}Ex &_ :ݙ*bz?dčlJInv΢:ŚdԢCi5ƒ~{0U~fKă3.0'GבFֵ.: Bˋ Q;YSdK;`礰Ig?,Z{ğK-u՝Q ? N݄ 1AH0Ebq##S@Ѿ©:RѿE=]ş1+=*[l7(2@z:/m{3ΰ]@;efrwTyTCQ/fj=yRɿ2%ME,7ޤ׉7 Vfi hA^֡|nk@,Ca|YF5ϹZjOv`8rx`*WX ;)ѩ\iiFeTf \5úCV3}7/e7aѨډX/@ PJbQrڴ|[6ԛa 3E6wz 8~{JfA]6[ ! M$\I o950i\Ye/Xz ĭuő1j96z[UV"DSYDc%JVQJ*}+vRDU t`yb XݥQs#E@Jz)L ,T؃$ݍC9(}^9kWmtQ LZ'@J [z?**URmZ-oPS:颙m=\b/I"A¦ՃSR5r&̈ͬ.(tQYtt!@[tyU랩1(% GiEPFٺt 5pRf3vNN7s s?މjAAw 4B'2 RJ̡9qp$*eS Cb@)2HJQg:BR 3YvL/(CRbf+doLCzQGs(Y;XKf*KRX2/*kt{2.pIؖGB  bʸ1%og(8ءlTt%rgY'N#\d\Y*j~Gr;hWt%^dTB?,$T [PprxKy>\v4HΐwRj1BlKqA\zaͤ ˜BҦ ԄSȶ&0gN 9" NSkɚtꪪKH"B"U>KgYV%:2KGݱyEYcyFmY$Mn+J\x!c=~nT/ LhGSa3iݐm`Yxni8vV]OնrL_qOzMaҽ'{ HX ;u '܃SH N{;Ѱ&E5mY4޾#rFZq-,YƁ\Xk3z?1:[؆;e\ cyݯ[1Lm#K;-gΘdd[N,<)?=H֔5 Vo {?%.AXYFvE!fU4!KѾP\}h'h5%LW_պt+p\h*,2.'TmQ&AƋesd?%rsGw8 7c9<q|WO\z%bYb=!Kb$TuP\Ldd5wz]EQRRW WQwt50NT䨷Ѯf*P4?8D6e]O|Ш࠭Ժ:@c sUk>$FOƫg옷ںyزiKr[B񬵁)PN1d 8=&)ʾ˦Td(4 ml[ۿB[8Ue`cRaJJ ˉ%PI(Ɗ+_Ljr_K~;%"6sF Q)$raR~r7h*^*b|*v- 0&xBs)$Ax!]x ND FeCIBDeIt2@@(͂mzk-޺?&swkp2S Vka,`u7㽧ޣ)𜾳ԱY79|qwbA%|8*Jɶ\"Xķ1=,j<#}C[h껨ViX),s#lySª J޾ YE ]Ga ϕ;M]8«`:ox-;@ ]m %ۉzZx QQşqZR{ O'3ݮALT.G x9gaS\sѷWLٱ|=&J%߷li@3䣎lx~#VזzO[3$  W:rjMlfk7GÑ`i/ZIdSG)`ޓ('cGXG +oM~`Q$Wgc\Ԃv;eomH~ý Gi0.Jm-H(0Ow3e 5%v0İ>.SB48}h|/R'Wutcc.9hJf<*׍۴/S.$關O/,|1KHaS &́-^^Axܤ3bKYi/y_̭. *DنhBx4ٺPd .a O{Y{LÄN7by4k=R^%sd|8KYBU Tr()+C4s[U JɅ^ ͰC!7"OV3X@1UК)`>o:_wBlc},FT-uCi3u0(PV6j :5{aX9ws܏Gg/ 8527P85/[ qͼC{3k«":A+|ᕗ~A $_QcG.;a$\}>DH!Q`vG: m1C+[.EC>g^{X kM7sȭuJܟ24g =q+ސܻV'0fJ$EfU[?!>'![C,mkV:"`z " dk☋Mp kH\t78p "AL>PC;׌fՎ"^9|??@I:q+tbV(o6\0.U._5fH\Bu ;m3Շ_ NO=*  BU hD] ,QYƄ[*IҠe|ad.8me_ 笙7)zA2X}+\3Z{W9 /e{'F+ Ɏ#n9 <&<%jDwYy%x}ȮZnUWn<.({(B-]BۅVǶ=|ƗndHrfn I9k[ >̚WGdn :OȵYlGTs+v@ztTkDocƃQkB"w}FWp =$45ѬL|eݬBJP8W}%N_3A~Ƞ)t&4MTI|Ӝ/m@cBٷZl{? PlP?}n -" JGcɖ߼^Jxt*u: o0FDSsX8]q+[כW-}7uGgo2eZ|i4'Q@=R摯 tr||}0xJ'PeƨY*~6KKY?lChހgu@귩OqȼG+z5j>Ws Rh"~AD9 % \GHz:WtQXhs6 ; U>|nQ rlBp*{Ϩf%}SL Td7i~FO9}2oĺL<`"s{T8'V V\G9{2z8Ie9 <)^ L՜휖,㶺%?ìq5+"<(ssM.LKVf&`P+-4yARc2ԍV tqHƘR:90n"Fk䥅Ak;EF@|#fu˚)6F> A2zO1݌qtvaqV9hߑ4Gr`<2)f!m[1-#.x v#20E,ȻF}JCƽGSm= !:G\ܺiG},}z9%U0!sKWOr*#+ZBY]D~ . UD Ar7#r2 XѤH۴ LyR*EP|>g"cׯx.JQ &Nw_z;OReFhҀF {>|] s]rvE?̙j,=E9Brf|UwSrE0̥Nv= %ԝzrnt;T%"ΔFw 롚LJ4q=t6-u{ WGR)&r$B-x櫴ITտ?dZ3@!(shUiqV;"XYj*Ylf9i /l rW7:&9wI.-敢@8[LY/ Q:u3Si9=Zh*۞=o5max>`@OcdE=Ql7{^dɕ ejK-éNeAuf).UcPIpIq5+< hIA*gf/3GgXLb FklvΘ ִ;竎%Bpd*`}DDmVX~o+X1 {bw%'Χvd5X.Y"qiހ DB@^Wkۦ5MKeg%T FmznIiB%aSoHN\r #ҶG+3Hh+YeW:{*YJip]{,0O8F0T"|QZC@yW,d=dY)w{$7!QzQZ-G I#0"L!gG ƼCҼ6 `P5XQQu>m3ʿBS)ڦ]Ed㡮[t'ţʏ%'zd5$w1"]'fB\fVe c F4J'z!~`3y^Jo,Z?_$毩*悕4 X 'h}l6MjkMH&g>bdMD[y.^'drBjTo-?S 5GYneNqͩ+@2z֦|yDeWr]3:iLjP5YN@\oAW[fLD4YMMX#jnf3c8@jil:M[e\\fJڌ`ܘOkmOG:e?`T^5RbA.Jf8۠Ar`BIYO'!y'\d[mfpd'q}!6ଣwu/+Cg붧!:#101IOkGc*z+m4cт`< D*ľgIoS-/sn0ʐx=%Q+ дPl{\b}kk0hj,-(|Hi :]&צ. D%>N/H}RiObȥWX:ĦmIl`>R&@Hmֽu& W 7v +zWqt2 JW.1WVisJws& )K0AO2#cӰ=vym됒]gjp^~ʖ )6Yr:6wd})eyۛqgrW;Gp/ #t;;ڋϥ!%?cˎfF!upq@ƾ̱eY^Rxy]^q-M9˾/ %oIqt[GASۢ媿Bu kX!%/ڕKX` /ReG1U%w!gx{R]+t8 ^s_H*1XIN$S}l}k4ʡ jj/-hW[w㵜 &3'_w=,lN uON>CCC4h!+{ X[u#}\r4YIбBEMJ~2|G&n sQy55Zt2 :LdK7KFu#Sg¹P ҠLzRtח5!\gSb[} ʓf]nMTO;WMr2vbf3U8vͥd[ =5S'V7HV$AwNޢ ]A@ظU5 j`6d Nw1AԘ9 EjG͢e&7%:e'8 dUm҂҅&ʼ/["(%X"ۼ oȈQ8]8kFd7s8n2:I \qſ^:VIYm~^ oX{Qm­+ew3>1`vOdn`3ʻSQ5F=bZ4jhoxo tT|_9%p;:E[BCYgfH<0u[Y~L}Kan?#YW7Mzϩ.9e' 7E&G[+}[{B"*6(0\jCBbj~!]_Yeb\bcӈ#!L`3 lٺvf-s|;k&LSI<1lƟ#$3GT"=ߵz?o֤^lD_,ĥ? G0|3d(ФǞA0&kDz:p+6<=ܳ q} (V\kfr6NM1"rFmj W$ g/5I/eX7}h_f(LGBז BՈe'5㒖zA!]p0eEٶ#bL]qJVV`н^(=eWK|Q^}b] 61~S&_Io 7UИ _jKSP#; ?7ڲhdW'E\GQgi #adC*k']åTzgՅRO]DCvoGh5/) !;B 􉕱{{eS!5¿~gZ]0t4xRWtΙ5Z $`=H4@f:0ȟW$ kRZq;}:cҘ 50SY_)) (Ge >ЪO\͘2> `eqG(t tk%vhg65 q(>O?̐1݆d UoݗgSYJrFonZ<芍J}k]0@Qa{|o>J^Lo[zWve[(j;M\ ~8^mX!\X)]FGnokNO͏53؅9$v▰bXu'wYdV8Fi7e(8WsxR5D4X XcCiϣ!(!p(֗^EX"rn3F"MIH&4dt^#[ؚI}+Ҏ=ַ(DH-K| ~:PJ(fa25Q ۶넟 ;E6tŐ]Ԍ>G}bXOaR4>>իs(d~WjIﴇjmW9oϨX>t|: Aѵ>|\j;#pKIٹR|pA:^E3K(ժSaz1E#'ƦUv?\|t0vm͌A[HP׍K,B7ԡbxP,.6;BcYS>M*ߐhť?$^mEfrXJ4#?!gXFxQ. ƷIF vd^Lt"|?d;Vk1yC;S%`< bSD#c#fabz`9`T<|?Gz lyh?`kb|#yP#]0[%S*<Y:Aއӷ 'ay\jW/IHdžqzVd2ຮ5j3MꫀtnH O#(2KHL LҠ.a 2a4=6НtK)K fN;)Xki<VGRA?c ,9urꄧA楅RÞHfy1m5I PϞc~A5w *Uw^ {,~zg?22x͕Y tH?lh5"Ty,/[HI.SZrîeγt c ХccRm?O54>I+5W+E|eXܛE#!ФKYh.i4aɍm=F͔J52 ˛ފ{%%UG l]%u6$> <:FB/R=dJM6BE]Wnsa`*4)K56ldB L塇ș߭;Gat]Cby`dF^jJx]{\yf5O& ,Zp},TY!T<@mSYr=y@ЀHt_M#"w+ɦO).I_19s{N#{C*nv)B.3k jvv"ׄRxaHՏݟ!oNt1<"ԥNicܒb*sQ~B\F8?sIxGʐ=V ;x^V,`x3Sl'<^@QbtJ 3]3 v#@R$]H#4E~^ ْU6c))+c 9&W0RRVi( TW~hgȹKtYpҧgOULg` U_81o|~=nB*鷡}b2sPrѯ'joF C 8 ,ceF[mL@!w( ٛ l6t~`)kG#^|g ~a[X % B" ~vSw" 3?fV7Ř/>ОM-@[EZb閡b ZRL@m$x}~>DH\?MǍ$Sn6uV{*?K)W܅yӅ89+߼T'qiv3Ctrt,'#jW>3FI f.Gy }owʅ(<*I: ,VP5?>lp݈MQFG1:sս©cP oxfEPY@m۬JEJ#cCϖP[Vȿ:$ZE4g3ZRc;h}]ivM8D['9Iw"ss e@ r.Ĭ&.V%.u`n+88]0ѱFP9NMj afȠ;s\׻כ&):sྶyw]mdsYx %yP5}(5KA?b^baEn,43~|g׸*۽)?Sa x|d E6a& :,add trDF'.}>.L=*F:^E{@mEvIdu/!y9mmg77!~feXڹ!LDjE߲B5Ep9 \IdzF϶ɦ@zd^ERKj8 9K)nn>0WZdU^1yA)\T~3>|kEd޷Y&*aҗ@TE%IY.W;d YDFoK3J)ー Zy%Y%sW.b b fI_v C9m'&"ŧ4E`@%}k2IFPcM{άiʠ)eĉҺ}=!IٲCMTɧY O`g0qO'a5 [ #ɫhF?.Nb?"~(9-mthPQSP2;Pi955q[;D'ˢ~,m7+yŲiIqy\wVU0QiåI(eP<~NЫӲ㷣B6cI[uU89XH WA bI- :,/?H^7lj7|6W8?uد^ T5j##C첫gsM`u1w+SSjw]-r-#sӐwz?i795: ?d aC9o@.o#XD%.,\% <ȟVR CP!YA0yL˯sFTeraZt] >wi>HP _Y$c+sȥ܂ik0 F̮Q}Ͽdt; e%Sq1zDz2/0tFkޛRZ\" # L蜐3=9O/< 0tҺI"5_YwܙXi X' |4;5F.lݏųqjVj/C2:lj|in&N+/d]Wp! Wʍ;ٞ_ꅿ0c8?ХI8g݇$U;XX!4 dY 7c)Έ}MfI%HbYJ,{Q)c j0iOXbt]"z7w( P,>xN"*LHXrBc+Szؘ/#Rp^ۋ+o?Pa|>vٝ) j%@(3Wލhns"ZbukK*ش@@DQ:"Re0Cy"PTRz==5mvviC\3ԅMK&iUV0-!bf זqr w]0DgO9!a,Lal,Pn^!µ|lR'#1`YQCXA)c)VO&TT7=֠IE_L.xozã/ǀ?v$ZB{4-AD6kWOA&S޸atJ|ta,'I4cwZ^h"/\¬/ Ve!uoڢ4)c'j"ۇs+Wh#ͰܒxzrR 5۬2zDW:yНJ{-󓏹ҟ=^)8#yd"QqE'h_&s`z~hW \D; 3fs_6ݻxwGLȵP$6΋kE#O05WEϧx ߭Aa^)W=*/~ybໂ_NJI*.. %4Cg"`Ap$~{AXzĬ\o;6?RҢ9Vx jێ#ӫ[t!;PY"JpoBLYYflo/zƖQ3ۚlc[:H+# FL{GNtZ04FaF9ހ„+\pC@nanbL*/t7s"[+}+m&~P" P:2)b1dw<^{|Mv_;{{]'?5@p5t>f pI;Ay@NF3 '}I''G(Ud]FGt|hr2bU]_0S=/Q#X\ۈKƟ<ӔsIP_ۿҨ9l&!~" "m婲WE˧awHCD#t|gm%u^n۰#hhvޮ6Qq.GB&6/c 1=|q+*pi@ĽMvsIT=&$Ÿςvۮ4ue8%3˂X%6hR;Fe(EX-RsGf_R05`q#(ڸj!A%)eӫȨ|C>\ꦺ򂜦k:vABcI/W[%&nEhpb':SEe^w?߳rd^G)޺GfJ&Jk'f>wo/2o~ 秷`"jU>?+"0·p)*@uaxjgfLgj[u[{/tq~~eZScY;OT^M|OlAOPtSC~>mݴYD$}l$G͟Ag0T%2jKTy4S+`$dTZ0DS +20%Dn)E2y"Nf\J͓ ]ktތU>-.k5%Jl ih\RYg,aE*H9ATaO!.d}%֓B p:hy@Ơ`0UEro]yb7=Y"TM aIa~&N/Ѐa'3<¿JDȀXoXf+i4 8H-3y4zRY!` a9?C%f{׬Y-΃0]mg4BpPnњ0.hXҷĬ`4#96 1?5K{cwւ'.,m]PVѼg\"}MbQv#,{h59eubq_bug9sݗ+^;JA(vuS0{Md} t *a5ww^j"'d3GR21h;ݭ@Z~[i͞IOe44Hn1M/j +K E۽sCυ-;Z%kmĔ]H템inIރ V5}'ڇH%m=.v@'b&cuN(5rÙ@UpoǕF2i|$LRO\^eA+Cz5GDp18= 󽎰|,\=ubt ޔ>0cUm GuV֋T43 'Q/ <&.$ɔV“UJI`L|f͂gf,LdmS$kC:PUm?;ے//sg>dCM`}_ .q(KVg`H$(rV+ 6JVSw_0V-6j8qXؓAQU=8b@ ~tw$vk&RݍH:5[{fᕓO YK :NcV4\c͝VLrU_Ȇ~y.KZmy]C>dE0w -uo ؁\\kPgB H4򪓌% ]1ӓXxI?~T՚2c>XvQB* 3]US\^tNb+Yٻ$.Ml^@ cm7ٕDV Q \P1>iRǸU.x2JjWNWffs]BeMl|?MFR;L݀?J& Suu1oͺK#~ =pȍkvD>#D¹s@RW$wi!V];I9_.2MsM#F_8,pShI&iQA~Wȓ:P`?)^mg cJgrRwP> / JzA؈8 m".`TgCcE< gyzה6^zc},3z'̳(?ɲ݉D!<-h:%7@xfY{ zW!rp Y#-hq0^ԭu[uUypYIk)G9=V{Zh]>TSX|Ptc=M&X OcУtI=&6aaHEsW""WDN?{|FϨt Vz;/sN``ٿNg19&#) A\t,J# I#|mwQޒwЁLDLC+2;I?ވ2j|=JS[: ܈ 28f at E(y|N{ѤQ8֫5unX0مFECNN>rƘ|CТ]u5.MɤWfax :"Jd>&qDh[qq|9U &2Uꏨ; J[\yS4u#ac\r *F>j`7GkmG ,ꢷ(y= 2܃w=.XcZ:dE{*!q< H b0iig^yH}+ "]#2.R$}XUmV= :BOcXAe)prE7y,HB&&WjcE₰36P5A"y˃Z&rxy eXbR!0k ݒ ,X5ÚL}i#-":Řy!.؞ 5䘣+KA)vDe#nQ@)EbBxt%'!Br( R 5 qs/tD "fz>g2iQ YCG;0my \롓 Nt'<8T.[%3T$gM|(`2U͆+K5`BYZlW$`e'EEwg1iF4oZCsEO9b ȹy /CjrpBջbe!v'$6("#/u(MW-BapY >6 @zkIVC2iijQFA;e HNl\(y= p}д &.FO B6 l3!KMou!^We+ j3NvpjĽ;v MD9j_5eρkMKNpA/\ߧłiQ˧@Bw@fˋydr罃?"Aj ͻJ& ' dc$+:QsmH>D wD^DžݫY%Ħ2dRhn6XAp|lձ)2(v!So/GycR/7$(m|鴹-HeJ1!a*,ED~evJ9d[5h~йռftb[νT' k CTaKSλ|1#$\N#ϛތ+ء$<::܆Js1!wsx]0k7Xcd;TP&Bybz&L(fJ3B2Pjfo?G~$S{Iˆm^5.NV6*ɧ' /s$VeG\@ ˸b wlI4zTq{m~-MTk*GjT}QMh܈(@߶Hg8_̓ZN.& L+gUܼKm&m߬*&Wi&3 4Lc_,-MkesU@ӱmZ$f.>9bfa. Nr:@>>GZ^YMmbYRe”m> Tb+&{abm+B:pa!POq] %SUưHź 8 W°զZѩ1X^9(zzs\Kw4fxM2s'8h Y7zC+g@'C>{ QgBkB /j_nE`Ek:@Z`o9T- 8gZ_Y` kG޸afc\늻2ca/I-PxcCXQz/lI yE{ۀޤ!tθ=ttL6 j^Բݺ P? ,Jy}wx۞#A q&g7)-EK,IZRҍw8cQM-BiXCWs]ؐwe1;Жw p P?BGA#%hn,)!Au'$S9Rn/{OIqF`*=3K;Ä{:?PmoυRF7SxF]:d#̠B7sRE+I"]f6IIf\q.X c9ڠH U%fͶw1cJPUJZgM "\+N*shSQuK:X^o!h 5}<;TY%+C:BHᐳ&{vM]&HmlvSɸϩkP( \ف`-pK0h|=?f tVMQ1ud(bZTىh߫Cjr/15VlJ w(`H$rJ@Z= ~:볹z$yaX הE5c.) A.Pܐ}̨gmޙ-Q{Zzni 1=#(OSP2~/'BOu/=ۅrF@btϠɠhH V%(/-CWU;0NTt"cϬ*xݬgthK]r,!wb1F:YHDT%f?䙏s7hXu`'qyIg5e@Gl,qےᓒ`0o%KocȐ*H:@:f5qP7X헀>w[e4vsN{õ>/.xb`#U`]b"(,ܟ9[Rl-1`sE>gЛv\ЏFpEI m)Z@4sFx9vϠf\~ m;Uۥf݆;|&0M8~c|ShF]lJht^/>DȂo)3ٓ5ƃRh&:i`Ho5PH-H9b864B.,u7t5jm&g8l6--}L*mM To.kˬÖ ?dMK&pmQ>_Aߠi{\֎ݶsŎvzm|f6@VS`}x8(qWEؠRZ{Kn}=\O( wRu7딹Tn0TˀoL!^'hǶ*vJwy~]y.crƯ ~ +%T;uc8#'de:Z}󼙬%9Zp?A~hmݨ o^H"a4uv $w{W%S … ,n *i&'uM#+xu뢌?pgl( q,vzioؾ\mCO~(hMKRPPay\n˚\J O{x?2F]HZt B<*SlXyz..'\ z{"ERɂs30~ 663dqKlh뎀#U- +#:H6F{~fP)YD ;([{HC ҡjZ~@N f\ϖylCEe^Ҋ D*a\KϞڬ ЂV/wN=רwS)W iNeinL-[Ul/Ğ``2GͶ/_p-X=&ASpoD_ϰ, nvJ&gH tqE%:)k3$g{gYGŭ5.& z2?5b^w G#撃DZrv¡/29Eg2yՑs,B ;w,M[KWe^fUل?w|di %:ΦtL.#\7a `2?0~+VnV\4wT0g6ƃ?d02P߲Yb(s%3OÖtr|6O ,wb:F/w9t@2>t&.1Z9Ύtޒ+21+ѽ#tX1V1X/KU o NdO7Wj=QȩH8XMv QXe%.pmfe-YZ}Y&N7|PZx:nh?0$Ӻj%]se>^{ k^dm%yCҪYź=Dc{Rsp^T!DOKf(uͪ$m0A iR&w]^_Yh `(3 +qy yrq5ӇMI{.Bi\ZAo/ '>1QX0™> #ױniX.gQĪaFL7_Yoo>7&#zM dÒbϔ?|A(v$Fko8y4> -{ #gD7|f8f'=rAryQ P׀L~ oO<~Xm$q$>%k'8[o63yznmiyiJf`Wcΰv=zf4k+j{ ս t\AN >.OV k0XKRVvE;ƛlܚxӻ8<7vV^ݪ=;Dir|V !ȮEPW NP'4BՂ5.[s nYW_6/PB>]p6`%ځh tB\[- nϚYyG6IAј#%Kޤ**MeoY9gHB%Ykbr$ªPam>iO;,* t*0M U~@kHhTx M3ݫ`2'<ʦ: |dv]RihVR#7Reb 6[W4|"?xuhUϣQvAtz*fꐡ~)) WN/(-%!ɇ5'|Sd5pqfnMh*/R] ':oYu܁t,iطWMrwJ{*,jj&#, w`T tXI#C/mߖ߻}፹0E冉$\B449mDK>/ r?)dp/RHH8_u8mO\Όf1,6)؀BO،2ٓ۵K!7~WR8YADs7U=\zp)-AT>@nUkZ}O9 ̮V2D 2X!$+p-WeU _Si f˛24ySn@2(s=E5ghvV50È AQ"Oiw[~"ftِ7 c'4SqnV )[V'}Jaozzu.R4c`2`L^Tңm~f#mngHuTsfDڸ"@+G#bYej7\: ( lwAG׵#aBֲ6;R/xdnEENʝ<_{>Jb ro4leWpUɮm$r[ B*% VQs\cISՇ&Z-?k {-="KM8OcPեsj "*\5KYrH !6Dn-FT"HX򗿠3l{=5EPD:TjQ@tbϛt+]U="xl.N=2P+v| Vx_o.ۻYAh PN;YXVRDHci &-4}TtTgm0bkˡDu=C 7* KLƪٚc 9ST[T) _OA?Vӽ֌H;(UGB{t'>K[NBqijE3Uh%fl|,H=wErוҔ=AW0=q'/LyZz`ChMI -}ϙ`Y_Ѧ<@B=MQegP$A@(鷋IHN!r)[2 53xJQmC(~7dҵqt4Ŵ2`ӧ)A[ߟ5MVrSۻzo&-Nk0 iJ O@Pxb,0-ǭ=H U[kI(/Kg GSe܁U:aHiwLޜ$\5$ܑH#{=Qk+JA &n]4Zi@B'"Ӳ~p x5T۽(MA)/k,cZg0蘀lIA clUl n !($~WQ`x/ӵťSO;VƘyqC,@9B*Cy"]O{dFĵ!Q<~Oq4KdI4z sTPp~;_E16W <7( O@950 !0[J2Ze Zи\:<(;HU0W)fy4Kڍ kY6MH=h$czBX<;+}.5yVS\xt ɝ̫CN :8ڬw1lF>И%n VCTh!ə>.j ~9P&ѷTY4)c8<@iD~1Y)8ׅ-`vF;QU㩩X%pQD3տ_?pT~)9cǞ(x҅PMT}45en.]>쑱P1 fn.hT+*LBM1K˶h>z+hٺ &RIa3jܤO\R͏ѡUVu۟}Z-LY4D~lDֶd|H[XH6q5 E:[r(fj$@ ,/3߻3Td_mcOs޶ cR@K]ܒNDCE( qRZν_0v\=NKx~k(8vlW㸐28 my ,=19C!ZStLk'9ct6bxZR֠-<=uDS&>w`!z6X⥃!Uf pJb@wRhzDo 2o]Gsf͵y8߿/}pbޖ\K; Q;My?3BOߥɠdhNj:R6+mȕ*5=2ZQ0X3C.AI\\܉_8S f;s{C?ge] X/SöB= KǠaqWĠ>PD a;ZY}+9nͺI9?o QcӰ.jW}En57G4 k Έ9囟fP&-Z*ƟyB)̧u17g,O$04a_THwFJ9wՐ'i^!C2hNܲH<g5.4у2 x]LV睠mw}%cw``!ȫn1|ù$Yb[9TUN(vDng~Wi,G-=Q+ؕØCVOڻ]@{#{wop Kx~nfgtշ;ޮ'I$@SK',8zʆډM.]N)I,F{Ocl[ ߫fnp+0 3fҋ]8JD '/XJ}l u&-4)P7TQ`aQ T ?q~7؊S&zecfH6|Ce0!LIw + U籀%07Zc;Y?J.ɋ.$f7SDs0ך9{Ywn- E8+X)K$W݊_T;p>(̨i|V/kѼ֘f $ݜt:hÄR5otQ(qK"ZyZE$(B1:L.ľصLCYW+moG}c\a]>{{ rmVĂALo%8^2}3R;Ou%Gf| ]`"ȲgbŌՊ#I-DuA۾{og;ShBvu!Nǥ5[2=?@iIq|_1ե dj}qr]%&Q&<;7r”q*]? R EΞ.N>bڞ:Z `kEӹ8Us!&.Ñ jLM+\fpGZ kQO,Qav:p*]s2`ыS% RGäu[m3̬}-h  1Gc=:nstG!BhC7F/A}*8ݾ0$>zm)PPB>_pqLxY;y[pǢẂ{x9-&6|dKA2la&ڞJ;wq͉Er U?{_ء^QᔺؼrQK!׭T\dޯ.@qYHsUa$[jYT5G iJ1';P 3uA2{`c3o:!oo43g 9wa-{qi^,{K>uw@PxC|)wY9E֠rHft fڣ#T;=r~dž+J~ s:EIёu /LK%J3,2 #5+4EŶhV[*L% D-p'>醶@lTk4(' P\-2Z;U`ͿGr$zؖ6*CGTYeMZw# @blMZU : J%Mr d `S!.G+8q nn_`DT۞IbfxV+>_"{S !$vzqcN3X ^}wV< EEك9Y+|ph'0ŎKM_NH}wOOPL0S 5TO-z)i,MD6"Mp' `#&I{>8acY- Nw֪{-;I gH0> GI.Kp'B^U%"g=ٯcC7կo$^3 DK#R.xA@֒ }gBY^51K /ցfd5a,j{4N{ְj(E%aGucl樔]Z(wYjCB=bur ]`D;Jp~RT}bkd|JP cTY/ cbGWm0> g.Rk4:sf% %ڏl4i`Y6z_#>b^ޙi@CLŏs~~m "_} >f7r Ӓ8:aDdh|n3/Jb֓^08ŔU" ģ]fzVJaS 1ݷa›kYAynizF1KTصiKKhn_\Pqo6us(A0  {DʃM1Bہ5nYWcEcN"-N'^:A%뿯$yzbt.H9R `In꩜km--Jk#lSrӢ$2gB5XaG>I·E73ݷ2pRƬ@!fB懼ُX-SCtT@mj H)1.Dwm:!w-Q\ qwЋREѢ²1h@]&XȦz PO .6 ^mЛ 4IPeG_ *8MNMI*Z_́1 q )cJIj_.ػuOapβ&PSG88X&_G߷Ӱ(DE,g bDCX`m#۝U"s?IP #>k~'M,uo4eikRHdYe;q*T %vM!pWW+rCѝoި]+z?Cİٞ-eI_hk1fNd$@vvo7ϛ橂i)5vG<2t]mņev҆ >]Ej99s؅6Cؾ/¡l_ fŇ S#MixdbY[C=R(6rG`7GN +.3)}̃%:#7 I@M k]f {b_Jn+}G,[ތND/Tߪ*b c #Τ>G}(?#'Zi?OnVU*=EK'zKXv(P#Tg2VlА{@y8sҵ5!gd PH\wV)!DᎭYR_૑:!2ayRJH=j%A|ϩIbee:z(З}+re$-rO3Ixz_pq!v*% r |I'͑Gto6pH>L2m_ͭǨx^sqӻ3&ɾL|Ύ9.D!tbbrA|I`\(` rp p}JhiMDX :t_wY0KF]̫C|o7K>ԫVJM\PJy-}CIXKpDvVo5XGI;,q`K`uQ_|wPRQN""r 繕 H"e% R~%C6lr9@`'.9¶)~XgWUm)E_xgL`e2tgivMPs1W=hEoW*c&UWpBggeV0Md o<RKE3L11 ` }Ŗ:IՋRԐ'~$l8굤|k I5@D$k#Xun۠ʊ=2K$CY{FyJj(PLy2D?VX ֢Ltp!;5`؃}- tƐH7"7;i'q#P{)@t& 0 d16ʺaΕd%47F:)_OS3 װ%sop0e!X`ㆫWJ .M{]/ҍ\zm+!$`in݌όctJ1ZPOە-~6jH~y_ ӐStJI/l퉏9(3qޮy^6 Kk&#k$(yU4r9I7|߉㔺2g?֩ʑM.^mi;TIJ4^zP++y 5[u `r>ӸP<4utM:H׳6icsÌiݯC&Ll1 \hxI>]d)╷ ! r] ƨWW>h]tJg,ұ/$f:t&7cZGjtfp5"Ն\392Jt %OÀ,z+U~%ja'Mp1؜¬i;QC< ._RnVja+Y+}*px_~ " }6|M>LuM%!Q̪_tM9 $buAYnq9/i_(hro/d{_Pw3Z 3d;Ɨ wBL,%lOM}亶G5* jk5}qtQ& o"anyN֢)aW'FeMNis 1'uzR4_]z*k5x|Aoh+D:Lܺz܂R"'b5p8@ml\keD=AL,ͱűKbݓ.gvm $XCGyƩPɄz\Sg%HZ_Z %y)U<ޫ"K~N!)Q~1(0+E&s xi2"Љ,aiO䲴Du\zxկ4j7! ugvϽ`wp`ا idA'㈈F@;0]*D!qOS!"i >^NJ#LOiCNhcL&p/IAڮOPXl2pP*<B^^}}l<ڞu"y(Fo3)PCɿFW/$Jԡ⮏i֍u#o-$F,\ʙuclK)C;,21o~~^~iHkux& _uVuf)F{5yuqODz$VFb8$VT,n YS@*s"ћw %(-}86 7~w%-Lh=񴆫 ugCem;̶4Vj"ft'5T`J? ʡKI@oXϣ짔%"JOC3k1ʊ8,JcMveL&B)/RDEUѮPT-([r0;z0W .Yᛊs=;1j&OOHlឆ(9ds'LWmp 1 \Fuytڐunϖ# VU)a[p m+" ?>K:i4w/i7Nɽ\Ē&xN 䢳ݢ1LAūaE/LmeEd1 (xrrdz1VM2*X' 7bzdl.;t[w8{ISEBpz_.;7F'ڼŹ`YZp_ .yfO?R׫u˿/zTdymzck>@-&c{ګt|u9R#M;6`k4S'+:rnߩb3rL(_{wc1ǁssϛIV LC6Ւj/v͑3g+hyEn0f:>6 +{Sʪ`kO: KiZ,kA _C*^Z 3zV.F,4q{Li{ >.eYu(:_CHr G-R,sLX\+xsvFBk ̐Omsl`t]'+B alaVQpI!ɏ3-)I?- veuq7LWԣ_8pB37 `0g)! y|ڡ/ZOJa3|nAk. ͢ x^c]7&NF]YeM1dL<Ĝcy(3WÆmi7AI:SSI/\VOY8y#X=Ͱ׏R^j2FL,K=΁廰n ;,X]aZ,m P uJ8bś:718Na3l7g?9 Gjrq,6NKbs  J‚q2lw͆™2YS%芔؊W7ZS=rhNuOh ^N,{>NM ^_+z,f=𶦐7y`~f/!^}lLŒtlD̟:*|f֢Pܜ6X%9TW-+QoE[s s: ӌ~k&?]8%|q &[:v׹̔u<3r==%y0IÖ6Y1e*|_p(V*g }VAU~mJZDWMcx1HXfnMǶ(Ł`5|5lJݍ73Լ7^Pϓ~h܊jڮs+_57iY94p`ISq.W-/52#b(-<ٹ,=;ӷwWߩDM_2.SɝkE G1!@-s~ϸ`PwFsV̤*ϺNg ` /.%d14~M;%??K0h]9s~jXQ W8w*@vVLѷ}ա@P<_o?8{MZ \#+ml '{K ivas?W,<' ŢJb‹ 3@>pz(f,p_Kc 6vOMʝxܚ(З34KATJw4J5BVOOaԒS􄕵z9~5}R"9xdzQM҅TﴢI庀6ϐł8=om爌a;2XI\F`q]>@lP3KL!Yk毠<߻~:C K q?cc JP_=.CFﴶñaر%T }.z^Z 1 LDquU1 ?=>l'd/Q~Ψw3J C#7Um\,=`'|mbiGoDJ 0Z-[Ku+?Epj#h9 $6'z  ,}Qn,"'~%qQ Aȓق$4bT{Er#S=>i7шٗ; wl` #{Wpv60zQΪʤ?doWI:z[qOZk>&Ku)R)'#lda$Ykk# $/ @n=wxԔm*!NW fkY4:j'9!D(ց21}A+kֵV-Ń ]㜬xhJ-Uߛ,Ś{͊o9)ÃFVU4@peB֥zGVFc2y4B'+,ZQ<~ ~-b] aAv?U#H. LILK6ᮑ뾮]CDZp=%Q"L|f3&1ʸ>uއ;QƠ_Hg @`|囁Y\19ԠA=ɼmTQ nBVp$6 S ,B;'d«t=(ZоG]5-A0灞QÏz:7#y:h M"@Ě<<][0(e*b2bU:JO Z?@A.W Ӣ/Sonl{-hn^K˺IY\nbUG4v ʶQrbGYWZF[b Lc,EPpe 'R4W0#nKqf\5-߫>SkZ"3D’", d ۓ]j 7]TduF?yɜrbl3\?tS[;i N4hϨX);R_PtY7 [OYI:x ٵqno{j(8ëN |@\uspb);l?U!ȢpQq\JBGO"{`X@~C9{(T;|ݜlCq>LKbϟ$T//B+λXC3EYIJH @CATYqM!z+}T%^/&1w)Bf"6GA]?aNI)P :ٌcn'B|!+7&i#BīLƾBR׉<5J8J:v>A? SUdV|dJ>ʾ\Llj nf׎׌G= IbU>ΫDLőHSƻHV [9n /a̵Zk=Ǻ<YWdOz8~bbqsp5`qYX&_1]Fx;r  Y#%aJ|Cjp>&&Is吖MZ>\Zp3NFna%jńTٽ _cp,oJ^ ڛ+Z@6,>+T?F!f;ǵs='Va L!9b(@[4/_>qW61UĊQG.ܷ|?dv-ȻEH=hky$OrX2Nd s)Q*IMbf׉l 1N";8nXtKG_.™UtS8%k^2#Pٱg6-8/`Yy{V]y\(V/q =6Pyv o[=\:C5H_?l}a~aG@^)nY NT*gJ 푉E@Կ+f Ux?<ܤE靥Ժ=)Xz,1:Zɧ'\ EhE.wk7ti".MvS\'3./jlSل2~^V]jBً$2,ݕun[/gȈﷂ_?h* }& 6uлr<5x}QRq&`vQYMYFƒ5t˽7smvox:Kj;?0}_|ot4ŸV@IwAnpuKXkniFkYD5כ3ГR}+n+ɛڈN³oZ%\*"_?ŎCWz𱊤?nPS]i9˵( S*BE Tlzg~O]`TD^| WlH-3JBEOꄸbFHYRn95`5tU =6PS_UNonNZ CogsC)}ux.|6}q3Rzd:ʧ QϮd*5ZF=JbiNޗm '$AqXgܢ}q4K?Mldf".¹oe͇<f~wՕȨsYli"絭MWrܱ,Gj \ "v/(K(p /0 * z{8nkCllXc{]Q ˔Rzn2ANz(a(A?IGyi`hl`e_ y"lpv,E)_r 4aדoR,^Q>VX8ϊSjˡ)\R(kX2F:"pO5AMaD&$,71S}cmKo[.[xdͻli B3ѹ5c ז]?$/~ tFthuS.Qyzc閂 ̥-EYrr#xNjVX^P֭+{-W\;S e6zbkj{'3;ICvPf>RpDh-MY'AU/j%0`Fb< IQ~[59K$9}8#k25#p{&riyuC6vJu7M^;4VTyx` ;!|Gx/TW/:E @:fef02:(n#'ש5  / Ci0cMX"i8ae1Tu̦y,(W[cԺLEk?⇮Y9]HSt>,:< `nm?ށ|XBojxB ݼ8ˢfQ2~ ?q S/tOE+ev:c-u6'x\xO{p# k W"y~q(<>ê/3 kCg 29>g%BK~euBy0A Xz hAڜ:FI.؜εu\Ujxh)©bcj>Yd\-`nw+n 8FQBjsbXsWN76MPc"Y#jJ49NG5.V&.ͼXm0M#b!9rxvhwůsu1N@C퐷z;._NBT_f8jz6;{|dְ@m]OוkL4"Twkk1ޅbfL S f:٠;j̯'r'+z"{ E,k: u5æΖI]֑Yf'zA˓}M33E F{`}yoI(, L*d8>q3fȕVs8nK0~_!zɛ7{dTJ_FvǺ$]Q"أ,'RfN @[=n}V@̻V@\^/M?E{}cD Q. $Pw:e'r'IB7ʓg+Lc9Rnؚ5rX =ڳ0B}[#6{l=n"x6J)՞섡w{Of[9C }t-#BrGSÕzE23fi&mTC$3T !|"`0~V4Xz)3+*![{ -P6hS8kP_SyXb?tx~Hs3u,HP6+S d㧋66SCG~E6Ց\Wة0g5 YAG +-)0pcJ2pg%n/v-%~;šm)pk+vmwig n)ar.394 ڗ)34 (b{c^qZ}Y2H̘`-(?^?nPix蚴>!p0%n#.iw2NRp`Ţ^mzg6z?@5 ^WW팹aG:d"wC(1jVy=;"c\"FsbgΑfbtPVb,ӭJTP=E+K:!";pFƪ ce72[v4@B jqٗ-m5oMV. Z{e2`O^i҃E9.O23Ӑ*VfmW؉_$>gۍclبgo]Hn1Fü izxaL-yQ4KYS촍DkLېC~933uֿmGVG^Ts|V6lq8RY/yxp?0)heн ( 0GLOmI>7꥙L7tD$[ݼ/ ^J0ӣc2Z24L75/#ZM$  /G龼՟M2*QW}=ӽɹ/Ǝ\#%MeXfM*-* ܞN}3B f.OVc@w1i]!e-:li -)vLњSR4~\H<ap'tU>-K~4 [fn6pj[eĹDlgMlO<"4YdFV!BӾdk`I jM2=|fYgL3xׄDTqVH?aax4S$.*]0Z- Ô'?.E_CU s/@5]F!ی(t GBc$.}6 ˒_F8>q?9n=V E(7I]54BJa잁l¢7댕[MM1ݻS%lӡ$lp5h6l.ԵG(wqɃ;^ %T9ОlH[qgiZ{⿖܄ OmYHJJYq39g2Q*A,Iݍ'mREu13Dd+WCo'k3 yOvݣP6t2A\z%L ,$yDv}mtb6R~tvڱ #hG!@iZ՜)RLiy>27Y:(.Kdrܦ:/3|6W&|8סhv;|ݶZ^)4e[)mPߖ~ 8#/֝ ۥ PAm "t' Qk٧[782(|z⿏天@}pEHdIGNaٻg{ fడWOq nfśS6f|ZzO :w ZSȔ @ܥɑqiKs8Vfmթ@^a5f5eYbV{GB?qF ]҂9Jt<;N[۵`LI0ƪ呀z BđHR}xeQddT:k@V)c>-h0+7p\L ̯+3}a|Ao @qUPD8IAKEΠA)\aEHWO6 sh2K-w W߁k1s^dgu) v.*KSOjᕕW4[R!{dF'04<0BЙ4ܝt^=KÔwYtSI"&Bv]Ǒ%s "`D*~~s%)_mԬILԀe=CpN6!q`ΙP} 5JVv7B8wEÁ}) RQs/fAYZ F(wh$J,W]N>Jú`Yd:NWNMcwwm$)yFL=+C[Ϥf&YWm")LjK 7cQ;8&{V 3.)f@rم@MӜR~c0xmdz F_, %0!aw2C"^ cm}$9nSrJ_8S(8*X ,mvV}EkɖlxU4 Iӡ!`w,*/1 ?gDHarY~;^n-d&Ebğ6!Ne_"XgLC2Nb>|;JN{8C6KJNCԘ~U.MXrY .VC<$ƾI}V*X#QR6m8RH^0"]?yH;̰VbvJLwGA5)A浡?jsը57?vRXwyg@ `O Z1&ha4)]iK.OtNZ_dW؄2q *E$tXil.V-J| 3P$(3<.I*NU PYJM ZWTgU7jVϱK`uL+E{/)v CZ !F%U+ь$O2+ӧ_m`1#m"QIg~aj [kA5rH<8҅mHpLؾ'W6煋 ,@!4 ? ])> "=}I}tFCXsbQ",MEڐ:$TҺ3Qu7!F* 5OU_;..g:\#+=d1?\H SGt֮cV䃡֐)FY~U" cCǒ_E@Y7XH}Z1lʱݭ&rIiѸvl .ר;“l'0eT Q ;)b_wO2C;TҳπIE$32sIŊb7pMtMaԍѼ^gbҴlgVOsIf K_zr.k@x';1#Y%LR\KR.ӔwQ钟vQPdPXD};\zo iU!Hx{4fP3~lxS 10mỲn9O[ltB\/xmʕǹ!]ymRAՍoUOq1! Rw}F0 A~v|#KcIbna=51DwXrU*isNη)9x>2UW}d'P!C2 n5UqUGb1*Lm nI3bsk0⮄2tR*<0uzi# sdhf$qp=)Ċ=;ef*N􃆞Mv Ѩ;h aj>3gr3ZZlu zxв0."hnc*d&&$d^U?w_3nmC|8=oQ܉IڮyafAիʃ~8':j8KgY8c8`u\7U9/CNp=Y?{å sFqpq5@>"y^ȱ*"N)λ.}?Ϊqψ~Uyv,Y&" De" /R>Yдic{Gl@qr O83gliё?=ҵ͸jD0oQ}q3fIXZ6C~$ػGv)4F3!hgc" ]z{x9<9bbYKlfJf?^;U}N  |(ke\K[z;zNu؊tw4Q8?-qiHmGQ]OO룏xu$A4ⴰJeV Mk its1 (FiX{`\L ȽCa,\!(oPqe3E}f}Zܨ@$QO -yFrF_!PrR5i!BS<gn!,(rCWeޢ6eW.Wqץ*8w8 kǓU79n8y6*$ W!9W|3@t.- +(0%K,D{\Tv< &VYt9f/ ';<vMcf$^#X& Q+ƺ\^L*jih1HMwxbwr?C2mahR:%hV@",+ը=#XBL8r`֏D.QJg|舰\9[(E47i y#N CTX2$'17ɻEwcl'Ӹky(yʬ~._XIN`[[LxwC JVhkvc%bW߰J1B}D2oˎ /tLY /ƶ>~K7N+x4.Lʼnm5bK Kޫ1whWsK5Mݒ 45>7M^C2vD_fc0y>"t7{ (LN},Ē1'b,CٶVIP.SMJ1=:ƞ8f@1g.:A@#d>*c:ZIJPJBQ' xZ&ѳW1r"H; vgۙ]X0Lnik'ʢ:`9zbA9c}Su^ :kfc>Y+{NrHב"=D=Ѥ2iՇQO7noT*K#QgxnzP ӛ56 m+qa iRb hI5>D:d+ೋhΩkWBx2Vl=*c ű "Rz?COgUnx_6NTc5S VA!ٙz ~T?0K>}⪳KYPHȟoqkjyEBW4ފ'K0X-5,,8^-^~`m-&ZMs+ w($d5jaƧ6tVv:UQd|WՉe>-~ Hm%P]TgmVtGmƽ0䀣IѼke&Io?”dqiP c.kl]h`QcB/,PH铵jڊeG-5bQ{F@<0K1o@vA}.$b;^Qw$Y+dA.m3"grZ -I~[Wĩ kn~6vave PKSX 4nĘ!N2Թ%i]NHs24cg͊YW^S">͔{mӌa#suYf2:8!gk9U̘560`eTߪDuIzqDqu"]yk\\Oog]cBK2jZޅSb}3@ (YMs፳WF&9\r_\BrK5bgVVת̵sC.V I0nO5j\˥dxO1v|Ldlq95|VaE6o1#[@I2ŞY͋E/M#l4A&'^]M=mU^г*Hĉ鸊8GM|gqjq~ ]dEqȭ G {ǝ|q}﹕5Ϻ2F.6VB`p ):YEXk_׊|i LWԘ!?ojQ%IhI6 y,E:?#ÃzĠLپ;&q9n' vju܆C)E{ЋҧoJ&7 KeuHXވ 7Tha!,.EOl/u1 ڏSOw?grOkJ2Sr} %|K| J@zNM(@4ZlyiKyRyJ>bℋh {[b,9:IHCYYիLaDT: u 1L2)Y@[L!A7-,r@'n >d=ISSb3߅h)vYhŐVW‚y ܎jH_u2e,!38X&«j(7mvL/0R%-X؏ LK$F, (" iݓ$#gZmT+62=08Rsa;1.jf^AfD %O VH.2oN`4EIgG$f{'. cQw0O`zRl:Y l嚩uAm0n|\ [8}Pt,3Hs 돛;n^ȟMfHyȁǤݒ4+/3DwlM`I2!1qhD;]iSِIEş\1%Pq̛r 䦂Ig\ZܰoDi +ij>+ʪ,([@"ݕZ T[m:N" oEYǞkJLJcnX]nqaP([E.EqPsqS*m$ k/,)@6Y1K|#L#]Xkm2aإc/;.e0Q@'|FJKYW&+)Yhg*G.)st[,Z +oSz"V`쳤@)=<#% B$ZmBrMAgIMUTV[)PxJ {EVg1h+@k@;[3qf/+E/N[¼ *8-`Y|Q,bu7ABH$A Y|QJ[⽦Rl%N`6BU6VM(os GqDt**/պj1_k"e6=+Ȟ]v$zlJRzcQ{鶖du'~'4TR83A~W9gnwT/Y;>\m+Q*vf|f%-GiVH"6\8vTucᴉx=tqS',.˃}8+$7>1mdYe_cdJ*0"&O #ɤkR ,;2Qʹ}=j])Y0*zj81" i5C.r:L"Ai!bޱ@i"_TjTY[sk֢)}n= @lZ<~l)e sQK' ;)إmҥͧ5K:53.")/0ԙh_3cvGӥP/ TC`r*D*==+;18Ve}ή# ?wx@ |Ret'ƇDtQ't05|Ng.Z:w#mHMsB'wg{7Z2aگE fQlj݊%3p t+ 6* vBQ HX?%=UW Ql9v!Q 4M c̶' ' l͠z8\w͙JU,A$67)OޙM0P'vQO~gթQ~HzE֣ݱ|kf"A#Wk[fq4zezzc~b,Tx̒I/GUc;|x.@3-Փczu%[Mf4Q-f ="2SL5T}`kEl19/ a _ປYT' K YKM #oACik=IƈT,"yLNuv=GQ(< NT)tٷ,汻]e;1󐉽TMY4 B! /⻌Ģ*:[:t)DQ a d!{#Gtp.bd|H159)>fʵLb=rY5cn?gZIKxO"zM%%-,Apz4q/7l+UGY0^ О(o&31*7e VQ@)/7uͯ|{]rdd zBJ["3' neUwЧ"{UolQGq[X.t[$ e"GEo"^]dF'*`F/.fbf54B[,*G-!ޠ0a|uX )x b m^Uɚ ؗ9G?d&?pǡq߽SuLRlr:MwLWRT|n RfeH{(Қ(Bl t ׫uCDyTзfB 4n.﬷AJ3IG5[WQe"^ +Hq=NZ~ęNyjSR{I$N br:ٸ.yb`V;D|I !fBLfk)=%8N/0zv W5Eh5Ovey=Zz.ܡW tCpy w.' aG^73헦$;e{Ku8vl?/~t"L˜'@!-hy&@kT345oOFsoT *Î, Ɗ??*RՓpLV0^)XIh=sP-g͡L?CViC:'uąo,fp)s=}!}< Tz9(|m)Ή&XQq'ޮ,?-wýka%iƑ|5XQ?{4Am> 0C;6#f/saA{DY 1T!UpՓE' {[80숚O.QhWly7$q|uvPw'ڱ{ I2ê#rG{4ٝ6d~D=gG:n3]m`;)zX ԭG﹍Ή;تJ+y2e0n㌜>=B8 Tp:,&\F42 $K!`$!ںb"Ys2E 3M2 or̈ S5HWO9Pltl(NCN;+NR /uh8@@`9֤339Ƒ|]8yߥc׳Ji\bP_ɫR}\ك`c{&:v(;[X3h.]=I񛥇-3ޅMgZ$&0ɯ /a*&('z.\&ǎYmnrLlND/GNҢ^Ehom!%WvJ9y6fs~աLKq€_ַzw / DZ7 ?5rWlZ[M0OFӥ+q~Z x<׊l~]{8 InNcϒJqdܠ (p2s$/vEzb)DTꧫ~wR.*K D\F:K<СBۧhbhz$2s%s\vJx6PL1}Y̹5YO͂MzQcJ sdY*s7 I$?lGN)^2eYfaȋv=Bm9j~G .1~2 Z3&t{Ӈ@cϵ(j WX^ϊʤt$d)(9(crp*Olj|v@ (ye4ʭ_'6͵Ķ-* 3eK1R#3IX YtK3C,Άg0q7ZfDhy+o/aIA)~fs=q/q\<64J}{q>u[b`% hV0~F \ >x͟jld})FDMKG TZszL'ة Z p~;RĻ`1}ǁ^;ҼZ||n5kWwu٠ 8|pz܏ܧ䄅_.9c#KpSzDWjayL +:r̸mS+=€hHX+$ {|M'V[ Sz2 2V-&-)Y 7}n=t źWxq_ ɷNPz{DQMJfՑ0 VO], Y~2 TS/8^h),m}yϲKM,}ŷK! \ܛ[أ!Gj% Oe!,:|H:J#Q!+/^apyJ(RB<~C<T@1'A!Ր$W[Sh'F,6& "lE]@lw;>3VTՔ^DUZncFcn 9M}],u2LuZO~ar<|CR;X+ gФ zۃAe^6sf!೜`08gZ7k;I; U(9c(vORht!3X\Ç[Zwi]I;7}GW6JUV"š7-zaw Zck _˞?'\)ϝ'K_ &Z_gyYM|( 0y^Y @\9ݰi>t/r~{з둒xڠxQ†㚷_O{&_ 4=,[ⰧnkehƧI!I螿nNaHJ#in񌵭KoaWC` h%3 O[kW9&?S /A$E$ʒ$&͎fYR+oo6\L%GJt_%a`>nn)9J-\^ROf30ԶHj1!b6oy<`%Ѣؓ+Nh;@~]w`'㌑[}c@3CBJ U(Y@,9]a C@1nRɸV`d^:(` "bL2@bb~+3;-Xjf8g?p0l<8 Ik~~ ,BKʞN]yLƘוAe o?A ۩B,I_* OX6亳-&J# 5FjjęԈETt1ӋD9_d4U]̉'(|-<кN^|R?kDfeպL錂ǗVhc9W-zXmgY"s?)W)dcn L5PL)NCBɓ ($] G[><8.QSqkPzmjtlG&"+g+`AEn'zHIPX~7`}T)^u:|Gk_pP+شL,iU>. 5X%X0(3Hdei7qH0H`, V 18!kLz| ba~`IBwYԾ(=ƣwv%w)J׋p9ߛ6'>_ S\N \aSfN^83+`X1pz]/b%||wm<1νtw]@ O3 Q 5W w(>-o, vGpq惮2@lBMŁ$a9MHwp^Q@$-2}uRXw*qY|ɷju'ԂGф-!,ږ6!>t*h./ !J]?TVcqCcing5Xx{>Cd_![hq1֟_D4jIcp8WQPvQ3&XHh'u[!Qs,дXs#z$%*' [O@V>*kp9ǤS5<5ä/m$$y}pwfpDH+w$A [XuxȖ6 C> UE;= G"~b0ıW 3vnEixDe0UT&u3U"v c3*_9Wc~iU+T4 }nmdsY9Iux"4_o>?gG| pT7kMb;  MMם*MAg;s$?Xj$9z]Phmjmup_W;klwQiUWWVwo ?7å8DGnMQCCr6M|M =z-(tT0QzO]_Uy 3/!̈L{ rU\LE!Mr_"9.լGS.QL{ih W|hLiU024mSM - 4fݣNoRhHu(@nm5Rlov;S5A0H}RS=BGl$ˊ֣dLJ~ʟ=Lklܕ}ϔ}`FR .PÝ"5v6 l彩yC~-p>8 *aY~`j|=^Fzcp,3!hRY%啩`&mTt)`p5NgnХܕ8fx%H~ywlP0bU[:FõqUe"8 ,r!׋dnfUf[;Jڦk#Hrс.@- y4OwV[ Uc&f$T(ږ6%L+'JIubG~$qE,wV۵l9G߾M.]mgp˧ >. ɼZ%hed$ %áII\t.:H5 {/ۻ^2Mu?x$0kK< H-|?#cy3J*:+Ccb=[?sI`Z#(N9۳ )MN"J^L%ŝ!aHKpqW*#?e{OgRfx>qC`] *lS}1>%7`< V<|{(U{0MkLu0cQ9r۲aJ2l 1n6cQ6)xT#> gz\ÖĤz׹)6/Fb,NKޡ/yO;e'lfMdQ &+ .<"vӁ蜑&>b Ax~i Rc nͶS "D--1(A%yk[,!kbTJ6VœۿIt{} E40w-f]z*Ld !=ۻ?s W F%t|kmʴqhАyHU8<8' CQH[$u]FcLC-ERT)XD/1v R$۽bn=EzyD*>O}_VRH [?]d%$CDM,x닾G9&R3t ma@D*(f zV1!J+POᱎh~D.@W+)2dp334dOf-7sV)4E^V" bzkq[Rr_ pb57yURn!ٖ?}l9qcJƲ /Ws@סe&agTG8>zm>s< Y틷V:*Mٖ(yaG=`F8Z4 '5PIޣڇ@V-Kuu-t&ЃqKi]@lJJ~{$!8M~0Eq=헎:|q4Bd"Fo3yev@FOz %Qj"~mZ"!=nϪPs/ʸ:XB|.jH'ݞ'ɧ969"#7_-@!YHeN458Ԣé{[ ۪F9XchxIe < o.HfUlCõɞ;w -mh/0Oɯ-$3Un3tEq-f˵Nm:CP;PZX1‡XM"'`GNNG"8Ғys;.gNHhb'^AoqKڳKCWז,w8ƷGGnd 03:ŏ.Ѫroh̳=QF3"η,r,Jcw5HgNXB]"i1:֘1!ge完3li=PclqN6FC)M5}{Ks(hٲ%JwOYfUꝄywfXZƲbt@K=C1NIǺ 7͊041 A_6fFL,`1t.Ȗ{^XIƯ@͝iK*dN mչ V,_F+ohuĉ b j+P5"`bX#.v|4oM&P &2- f?z޺9 bC˩A\DCrfg͎J> t6S8vPͩ/i)T~+-̅B%d -s.$,B!^bSe C]ͽSj%'8j3%ا*3quе*~}x IPZnA fTM_ܠ`RRm9)jZ5*džȖ{Jי䈉Ǎk#<]$nks%'~sw\UgEh( 2t6j)ݿ*Th5lKhJ(kYtσ"Ml:wE{|f+t3˄tQ-d@Q8ձew2tċ'!zVt+ؽT<2Ĕ,Z!$Rsy -ayx[)*rFzc6jwuHPr!Z.Ҧ+iIZjīhG6lESH5/L?1qިm.ŊZv7嘡%s$܊hֺ0MK(bk@ ĕ)!+2OeڕӜz;ojiefs>j'wy'V91A4^?I\{[O"Z9Y}&A)wNfvՎ+nft`>byܛs?"q["琶]vAqAڨ=>vz/n Z P FFq! h>;%ǟ8]Hd[ÖrTC`f V弉ObZ-FQ}$G_BVb);ɇ ^َƩ-.%zlʵ1t$t`SX(iҖ2yQf~)YP5B8kh<@{\_/ӼDA5{όQ*6sN x:2#XP~ݰ TӾki | ߿jĠT+;Ħ.n樾湺\+=!kAr2&af/Ү+.s`i؄DT.B Hb'7߀hjFRaiͯ 6#lΒ%k:JIih4\3"KĨ=щ)È;4QгnW}K-JR}OiBig t~tGXe)Pb,"i߷LIߢ$*3Q57)8ZEDWe V0p CjŻM $CfWBq_?nqTczQ2L0c=-^EJ W_`ݛ( ƠK8{~?U f,{ry=>ᥨ 4A&BQ>A[\GN+:ǃo9␕ UϗLNĆeCwBi7\zι4F<8[*ˤ3O@`Iϙ`ހ DMUz ԙN3~C1'y=h7'@E3RZpǟJSמd*SHJB X s2?h;klG֤l]窟TLQMWpa~lP 5z*YGi)\cqȯg6 II 5 y*vj9 aUd,SGY9aV e4d=m5je;1 sLϠ`.FzcqvI= Rڨg1be갢?XJz\&&t78mA<]S_'ٍ'ҰI0i|Ԗu]P˓\ gZ=e]o z8`=ٱ-D;n0ERPsJnHQ! 5J?N#Q+ss}ULG2?Z'{ge0ֻN33np~pyQi{!n w,%)!ܿ86,i#J?-QRcF &lh)0eYdvUGИ)G1_vwq2iI t^5{ Tg`؇EvcwsK(U,mqn0w9 ?T] 6t2/Db |k_G?Z`XĥO@jmS/;ȊV|>uS *p0=z? fLnftR퀿7՛5>*)JUFn<`l2 !LGCS(}hdǭKynCט`WMqDP-Q(dLy?h ȈC4ȩ +Ժ}ޫ?ߏճhb 3,]e"3߫0j\QDbMj@2٢"jOT0'=n t#4?x;Ilhnj6L6SUAW ّ#m!DaW4{ Q618#e[dgÇU( K=pNŒj0d{'ֈzUl$oAJ=y~ M duXAqx3 2 5@ʬ:&.}pEb.X ERɺeILOX@W`KW JHP肗9TZ(].vtzs 6ig5lt4̧D 2eˤhvЬTujm<1g9 Kn~"QW-o3,۷wT_f? ,)ԋ[jd"9P}S<ggnI+9%M+LE Fā$V5UFhu,`E"&%i"1 P{`7Cnc^gg{2Q <@%dPxj^Ι SF(6dtfk>W6­T t?$ŬD]'b~4Y5"yѭ'P{cˁÛ; ͺu{q|)u*WdC[ӥ_Ʋ|WiP`jjM~o]."[ $:(UYxF#`ҳqTOkZ])e&CQoM͏.Ʀo l$K*+aL^.2=1n.'/:H~H?I u4pU Y~dtaI jw{zNat02>bQl zqC6R̺vqEWAO NPٵ2 3s)CW$gǵBupO2XɚDxճA`WV_!g,b0ߦԈ#ox4쇶k$aV+Ԉsڑ` aY_3k9~o"n*ۯ\ `pH eVRaz)tԏe_TR}i>=5̮a<.jH4<@B-JGGx/ˡ8sm۝!N^+c'ZdhUIh'ӎ䱨7Ux3 q7G; /q@ev()쿠+(QZ?oP6SZ6\YXrK9ՌbO/Vx3;U4 igYp-a;8ƨ{TP'+h![+"*؈Dՙ.l A/nY\d 9ltd}_v|+{xJah]̒/*"WX |Y|B7 LhqSe!ioju(0 "MWKX.eK#SnK1\` X?RB xEfadUJ#%x߷NKbL&w}Kx4Eig-#;' od;}Nph$q%RSY xhů_JVC r8,yA{uN@[^h SRLaN; @ 3:'?SAJ'ڊTBT@v=Q\o );DN' 6O1s 安:-m(RwRK*GԮGL[yU@ `]ﺍGSt00é=Kϥ jf)(W\}yܭ.I*#v(ɧ j#KZ+æ~8yTg.LҚs\O2k.&s͸X)T)=h㪇c66ý`,! )By@ͼהg 1Ar9E E[;t4맰Q~2̹ Aq=B~7I\Q[l}| !cj^KA$2SXF Q8%r6e}` mu{*n8sXm:yVoΧ>7\6 riTrMkвj $oүziaUcŰ ֖jaE*Тz[,{ScLiwk U|zcr[p8T5խNg#J5E#ZtF@zPBQyNztsV!,19  J BXATM&4戁BJ+9aZ h4tkDi6U6zw,5V雷 j@-&n+ ǡmײYHh|€D n\fy^q v@]j7hVH䚧W*bs[&q]ҚuRIwJ^<pwFCH4g2x}P*W~TtD )1Z~B{ܭF+P00m~ұnjm$ 74X{Em8Xi{ |:„!/+wO\ ˆ"[Uh=az·lHBu lC`۞-_`.,30 HAoh6r6A6(5NE_f @쨾73ٓ1[3e0 vB_һO~2S'na]@w=bU ?“M\q8֋ZHw6#"JSGY( )]r$sd/#fh6s?0sn Qfؐ&m枱fnbP=uG/U?M5ÌnU3䚁CHH΃&N,ȃp>5E)H+$K?@iN!:Myh;׵|gQd:䒖7P-D/|rȼz-^NRl3c`B+[Z\H*'Ua9Rh❼.ӸOJ6"@c-$6{o& xl2-yX7aoR,WpZ|\ \K~.mFBV- $pgxu5|C2ﯮMq:1w˟gQ0ciz\FlUHNUe,o\mt-O d, K"GvKH\8j=2{LE9hO"9.@8IRdON){sCڂSRҹWfn_s@G sd@%Nwt螃Yck A3Uq(?qk˫| W!1#'w"wC1c(̋eX6AKl3ׄ{'?dhXT?sR9RwBāO^XJ ԝ{8R1?D(Mz7f.Od3S?H{!7ʪgvHju41+c9*`+Rtpߦ}2%S9d4{\Aֺ𑅿R `n+%bP7A8VH }*2ᬁZbdڣ3Bw>@V PC=^H``ätFN41H3mzCYGe^EN-}a,?  >^-|;)."2MQJMju0eɘBbmin ~1Bj`Ls c)k*8߀BGÛ_)&|:FzPh`8]-\X:y)V&Qdl`TL7<BL u ~:j9w;{l]܍aC]h}A!߃_N?1S>Tvdzh) vnddJ9x"g}^}:"X$nJNR-^;#?(#**Ӝ(!Mqfc Ma@`;֣8T"3 wH ezO"j[ALwLʅ|-/>]]mAOn m(]1n?gَ 0CZ>F_線3x q#l{,` B¼Vu:+Hi58?ALaoJQz_>XĎL d7Ht' xZ&UP+@.!9CҡG!) {4o/@?"0)|5M=RR`eyƄRB~c|:(T^$D'"~=>q(=S=ۣྃv KS/j4%U Xo`bѾmUNw8RW,EG@ŔBA# g j/'INfw}}aGQE`=//E>SՀ4\M{n8s'PAD(I=}ś&f^5x޴Oy0 lN6no#p4u)'Mr$Z$λ[%u~ʽa>=xU34u-#No^ҪmDՁR݅ԕObXV[M[0E cEM@!g>Dl_Xm#$cᐜ5`"]8VS51r܎YUD'O^'ȁzCq Ja\˩d\9jj 0lH7sI"p.TCT ;U`[L%7&!2/^#NimbZ;X0ь]=*:= FjRHwkmVN;ȆԂUMT|o as̉(T^gG.ݽQG  ^Upy {#GwZ6av$ G9{N i2l7HְCCLYP)k|M0LzCo;İFѬY6P1x}b wڽ+DvLΤ^B]U܇LVO0R< "lAdyC|v< 5Z,XVPtlBp(U; 4 <}|]`ƴx.=CNCK[Lz*[,*\wJ'@LM,?lAO #c׬tHޒv0)Yqaڋnf!z[IDT\v \ڙRzΎ7bƋ`n0j+S~l%ߠ)$Z/6@tşVzzGj# 0>y~xEQ>ثPDlkP$a=ً,~Xc 0B8@8[o᳼mR! LXUG@`xD %i͕G`z>nf0?5tτ`0/%oSѠ~ r;ET`=V7LNx볼`yY &JQh}-D:s]XR7)Lӓ>/8ch꣣(Ka6g"f@uP=lLztmO JP uJEzo] Ҟ\ 1KNidV/DJf^ah=#!"3b5 p˰wQ,6;Pμ.8~ɚ@vϿEO,f ,(zM⥱YL37LAt8ldNkz,k 6m' #vqZ6 ͌3ʽ}@?d#`JX̘+MR%*_b/HKc?jP+uLK^Rj$5PZQa$u#?[gXnZ,GFia{wA/̌h,n>@-Si*>Uaψ(8lu[RWx|\0E+Fz,9LqA1bEO#M= -p '|Oၹ٪ ;r淕fx(e`yeԡ8@_"Ц0~4e >%miZ8tJ05)]x c Uo%h$L$I痠>- *A3&%Yhn)&PC#Rv׃P׌ Zn@647L+LȀYk0 z Tj+NZ"%1&I ~1h`<ǕGx#`>+Y!"#'|&\T|NTBnBtWR0`5g0=BGٚK‚::ZMH7 dO\.jX.S0|*kjW(pIO/仉8,}aVSsۓܑUO&,O(#uvu"I)C/łp 4rb`)Z$zUDKD^Lq+QΟ# Osi!ZA OᏘyYxONB;/x6F-F; &1FH| 0#฼ Vs K'.UAz3]ҰG.[R7 ʜ qFu)̓c^^Z.V Cq'#^x_nLRKUָ9>|bgj_maQ4x.dBX)pP@RVy\?&C + (!,}-0r򛂓iɤo.I.Dd{6J_Bg]h6 GnLhLg8繈01krs/[4P k9yeV[}>/6FsEL PO&.bii?GM\%#1!+5yDjImۣ]w u1LȂ]o]&6XߎsOVi2O^qC͋Oh;E+\F>,YW?+aZX%W\L@ $%Dm)w1]B7ktײIʫ+ܹn~c)R8 L:Ӕ)[VH*Qm(+Z5ZyֽzKJxgbU.ZNRy~:ۙpRJ$-cbѨWjB3b PpM߫+FLrgdr#!ݰ?ET>;hqQs̺-(g/c%M}d//k  6[O ,.ΌWs5]AƟ0 (pnjM5TH8GP6|L ; B?Ǘ9?p"F8]Z N y4`=0rs_OI~dm!92t ERZ.[rE36! YG,F")bk ck0=hQybmvn]cO85.|u͂ddeRp ye'!TZi'wX78ڇ6?U _vF* DVV0_ګ QT:rLhRƷZ1?8me@x| akTxO:ЪEWo/}`^W($Lmaac'~p/cxKY&qL%. k㝱T,B~)Hs ޤh*ԏaՂl_`aBý[C>׮Ovf[O$r XHJ{.8CϫK2vc*r2z3LZV?ՊbM [@ =o L)E+IRLuAU%cisZ5[WޢaF&0> x+F|W3]]PV'; "X9be,{4@bJ=Λ(FW~ಋ 9mN¡r)a4kUx7Yl|{;%X035JE sYGwR1+#Jx:<wprb1,|5H<%%sϩzhnF1Wp } ǟF1 0㨳uDlZKL:N%l*G놅 MHW_V7` |8rl%<Đfu!>mi;H۝Aa B qJB;Am?#޲KPth/!F[݋E)\Y ZxB錢M^݄ }:(OK#2R@ѪӱHF 8mP0~l''#յ!JIϴ? "S$1H9XA|Rz3d>SQpP #E V.kwIWE ?cvC=n!q{?oa.@N'SNFT(" 6zmtts[^w7*kl`&CO{\L`Jǟn} 3  "HbZ`,2u?MԕNLD;Gɟ(Q{Q;$ӣWQD=n^˖n"1,FTcx94VFL"R^P tx7䢗Nk<M ~gJ~HW'8CA =+L^tBMs_fi T Jis10I!Oj ;i`2 [S miqzF` u\#8`( "c'AREls쀜;͐\6X״L~7Nu۷f⯖yYXe;E.A'Z~SzTJ Β SM GMBEhڧ#IR9o."oo# ňea7 J܏=oVU@%]F \Ls͠Sò _XS#aҧ=^zR`ō"ǃ3ʢ/MaLX_W}ɂ4T6 Vc"|uQ7Yw tAN;Ii=q+hGC,B4ԧZTfp ~J&clH s``Ib~%iN%7U5Xe>RoKEP0sggxSj+$z q(I,(GD5,⬮%O`QcE=X_)}6&ֆ)$/(6HLϪL0 -` 4mxV;[@Z7%949^nspDs\? \]n /<9%R\5|Y=$Fq~*YG&]C\&yiB0TZ_0V?OP y5J$Q9|3/ײIº`e㩂WId1NhkH9E]g*C!uv G V$EŜ3mfEGYS-#Qx_`W\ *슀D] #^}& Pc2Ϋ1#_ǃFT`П8-ـو\}o2DJ0II3gǹ$x7U0k SDY 7Ul@vEA* ю2E"0?7=̻-Sj2\:4nf;*7hQg.|XLB ,h*Le]I'ڊ}RPU9ۺ|R$E^!e>.gh7atSe36_P0%PHn1}3(1X ck lGn -j< Y ״[WߜUUjJ? R۵R&Xk*cCOpڒHBJm'xI e[PE?fL>"_r( R3xxE( Ȝibm=;Ԛ ;H}(SQJrАv흶pcX(5Xp$N65ap}7nbq'wb- ^BFX[6dKi n_۳جYu&2B!o5kE~30OwsA#f{\6 DZQҀU(N,-ýZ-;7MKRSࢋva/J86\vzm:w\xFqC%lZaۛKL^ce+wW#yj`gs60nz5@YhC9lI_狚#kƞa>Q@S݊7w6>)b,2D)P +A* `M~ [&)BpsqK##;Dnnd kxU^R sad&XV5X Mq89qPYU ,_% q9=P"6J/"$养]il M_6A@ȖiͥhAI!u~;ǝBצ|JNH%,Ք\Q ٶ:CQH 1v )c9JwB`XՀ<ɤ!ePZǚVUQ +9arvg\ǖń~>=ȼKP Q$~FVNu8?L?Bj3i? XwE9sAgǗyϗQ\-J>GgXy8PQtM/1kVZhd ןNa# le$[Z0}S/GW+DV\)*"2rW6Y)V*g˜7Èozcڇ0blMup {b1;Y_t,~Z ܹ@G4*0=}$<՞tV1'+S_N>FS@xE dP<"T2Lx9pA9DS9fvohJW`pnCC%.巣j^q2,CMi VYg-Vyn`Okܥiu%9Iݺuk,|Tպ`BlHi'9p'Az]vi tOb> z a fX\ME_=c~e˼=Sy͚Q#5E* Cؾl_ϊTaFq0C1"tPќnk):制0j𯯡6=5]3SGX}O07[s1*dD1o!ahf*C9p0\t-oPK`Jp4\@߈:p*_q $CL>- iWᥟh(١z__Hr1韌!IF7.'k@Nj3ؖBu a0'@n,:e\B=NΤX/v%jRKZ|\5gP?s*xm0vQ0Oq^L8~UYdȁp>{&8K@0P轏Mco)TLÅZaxU"tv.0r'U &xc&ul\#DDNG]pX,p&D0{aiG_h e^bK>P;ݼ %.Il2s\Xr;gE!ͅ@-z!,ܑmXhgA<.L"G˰zĕB9aW,Am:@ΊQU@]:ryiyAw*G MXEPQ1IOtšFe[ 8p8hnH8^z;CoDī;>ݻD rLk#C]bf)1~vWۍ.{ʕ0," oΠqPx}&A X &lxWU;qy9 cwկ74:؞}U=a]`p(`Y,:y (5O#`JUM:- ֗\3lTh+On75=9sprcY),h񧅅]{}GX(/,(a@57k?~T&:Z: /lz& /|"B"mŁ؜W}+'IMIGmݤB{QU iƦY:P.'Kp@:{p+[p %]˖4O7^e4]+~|2wX}e;u 8i:^p5k٣r&%GWg'^*vq%A(G du^pi:X0C ab :nD'Q{l@FZO{bOt<N~N-{?&;'3%jN d%^8|# CfVgJ /\C)NRE$3%o. $ۧ1)6m"3+ڟ'+滝P\}UWӟ>; r?KZW4eөڰS>V5޷7xLೝw:P4hCrWjsJ-RS5ؓD}멝ˬޖ[_$/X|(iw^p/L5ǘUШNbGY; p򊁰Vz>QQ)OC_A?~l)+hl^ZS ̗&hcNn޷cZ#.ZS\r2O^g[BۭL>@&5o;/g s0mB$)r )Tw;~U1OXwO dyN(",sc@#.Gª50\FEWW>1gF#c~=;{R~&Ȓ)0S|3~R1Aus]X}Gv?e Q V|t0UF~Y+="CiJTSrv#d!zbY~nqbԿWNҋblꁣ2tbo+-ׯU c׆ǀt$E$AjL4޲*֐H VQj z!bN}}W%Ss{ ?ľX5GӦ Gr;KnP0Bp;Yxĕ rErUpl$pS^jLz0w(ŘrHTH{J 3Lhs di_dS6*ٳhw aBEZ)ҸH` 9N99g< wS}$ڡs>Yaݷ" *'S2ZF)`}>1[Fz]H\(1Z3˔% C?'TRn}N ivR$ op*) ?MU*\rqK/IYH"h62uFێ ҄`GG*sMpKA^C@݃| ^0 ?AEtvXs+,7jC][X},.ϐrۊ2|VIWCNR8<ޙ){/DȶtFHUt(/WC5OVZ vS8>:[:lp_)yOz98{BrE|^3 jHb72 6PkJ4xg߭9@֢lR実1nܵhl- .&PϷZS,\-@o/7L[2\_՚0+C'GF`1&*nPw34XD#Yg&4j.^ތ,V  &] F&Q%ҢM<j^whpCWG\#sS?\ƼYkW A_j/181碁yy߬RC9:(# s]81K~e]0 e8yap/Y=q5m?%$NcAkH_1ZS:NAܚlc0)G0n3 hK\0͗t,Z1yAѯDP4(jmZT-Iq*&#Wlѕ^>>NGpܐO@ k":15rsXJ;[B M]G!yƣDegYRF^R%:zYZ#'u2䊆vE Ѕn<0\O]\Vm#^#\3) c;y 9tQl&$}l4 X{H[| Yq0 E;t4UNЉN_< WUӞtf/_3A)hl{BЍ}th2x G6b~{@ܛGj EA?UL?]Ci]"?|wl-/9~fBSmY42-'1|ûW Y+yY#?gx3)G$80r\)37fקFp>ax)n2$W0p2؄Wڑ32U\|`{ `&[si@] iӨNvbwtlAs:3`2sގ6#z82Z#kь u_WxpoЫ`߃1/iՌY,^oE{׾L!'0ܞ+ޫGsm}깉$qtu~_p\|r6m벨i*,{:UuϴB;hVn?8j% 4:r=+rnFFW?U%]z"D =x+w;`{56]t;)]^PNa"d}=9,D'rX4 |5o65}?fe4\7rl KwLbP\osrJj z$QNɼA)"ۍ`X1xH"!$g9zPN+R~z2JeuJm+4pvbG;1 vr%V fNDng5FqkSFEea3͒֨0K/")kd5Q&m$۟7NV^Kdj^d+ =|hVq'0z#w] :M(' vyg<$ʅҴ;|d3T|]GCo^T|%o{ТڒjeK41Dĺ<&琉$rdsj~nz@왇#hIbeҀt?Έ <elCc<{~5x-"ck$(ҎtG OǏeHRߌ4 ?fgv:X9H& )"hEq_LRDnR2U^93fE1i@Ȟ2Osp$# U-Tz7ev f-"I9#l^E`Cm:l;_X9=:0Dy}$RyWs)Bommv M'H㽞=6n\ 8-tLiRh.F6vo`[֬.F"f3eWhd KfhȰ˷|Vjwsz`h-zw̗*MHD5 xܝ(!]G3O dU'%A{߁k~1v>˳9|T  JN.@+r/^Y|QBSU-.ja=b ]c{k ChϰO)/Y'+\lɻUKoJ9Uqе#ՠt@|ooCAJ~!]S^ 6neuf1-LBYP|>Ϳ0Ҙ6OIHjei gjREZlDc;"99Siv,ژhinjoMViދ`c_l>J4gLȷƌҮ)W-Ž bMKR{^G.V6 (KjfPffR$`ⵅQ30UZhWov\g痈2^Ro_y=Qw'htQ|l9F랫Zϙ`Cm|)N @?6+Z=6NjZq(ǒC6|+˹.Z9>SJ:ŭje-F1~p @BEK!J3=<'V-/@٩+%(O f=X.&Ә<^8w8Fzn8,Zb.B+(S؆+X@$@m- IxhBQ5I5^ۜ >e!3IuV qKz ه f8 u,Y R"G ׌Z]3%B:58v~"~c0v ^bݣ1ۖNv!W5 uck(/HcU ^aEȸ#fu|[OsEO 7r}wzI` t/pVfd8E- 5,-,@C{6rP T s2y76E"4P);Lr_ރ[0#Z?ln#|9i|w朹Z q"FfE0UG7I$VKN|kyT+gesEH%` _͓'rT(W&>6'J'"&voiX5H<w+ࣘFc?]}5vYo&j{Wpւ{%2) ?2N ߓHy59>Tl^۱U{WO*&"W T%w*746ެ2pqCPUFy\Nq9]Y_i(^eW.~]DD҂'&h޷JGD6c]VxHO5S{^#>Kwy0~G!npcSɵD,8aY{=KU)=M"[|m$.qH"m&<@zxD<|M\gVfXI߉,Fmqp#]}~A9꣭Z '$[RJ L1kذ! }D@ġXь+sH׾4L I@zU~GY兌> . |`MP6~&JEo6YRRzi5<$TDybT\$g }ٓb8q Ifz%^FbC |#I~B Dwn<48 td3-sOtvBvBL!נpSmRN gH6XlW p{_ӻnJ O)w!R|nW7T\L9Ax|XaN 0a/\pJ_'ruc'~, Iu73y`ȓjHрH,^j[N~ѓ),;J%UahXZ0 w|lҌVN@zDOd04DŽ7&"ڻ^4("_x:LtwL6q QSn Jk %#۲rE3x{J@a-Xy 4we! `|w4ᚭ8Z X2'i2  J#N~rlv9'?>|\V["ns7{8)E \bLmw$5S7z1X1Q[Ҭ*OaBii'w3:g-?}!P0z:nړ̃}DyΉ1,#֭Ұ\nDwq3DxsN0f\..f{ckHQ,B3_txVӭ]jMBB&_pQW⎇X_"ZrɀΕ,%e˲?x7ZqN`iFg, /RLኟGUE7 ϊlrF (ʇg:l !y9=Hq+h2~@11o4<;lB5W$ fC HVr#i7yft ƉԮaXrA y}gN b\܏L#zW(2fNيp哧d}2Qք,}LA:%ʔIBUJ6y(&^3;W=ը*>6Ħ1Sk<=}Di_|f05F{րS<'5+~ HqC@5) e~AVpA|sCBj6I^# |eK޾=q9IC㉺cnlrQ) 2=YDtYj4cfnݞf@QĠj˟Kmg.ځKGo.N^GM.Z`Y/ރbC$ځ-ԀP/ WB*-<]M$f{mLxccMݢ:D(i=܋E"~,q#'5;Im1״ Ʒ=JEj`l|vgLj{Cd]h)H6@nU}[ÏzU hV-йk|ǫm9=xuIۭy.]RV/ 8BClU6/fpΛ¸#gW%g?>3$AqE9 XM .K?#f  q, +X2j*Z2&:w`\(=^{(Vn=ӏ)1q^b:# #.|Gٱ1pI pOf:4h929X8_ח(vt@s+JHjO [W@ H3Sl^>Grg"Z~qo)B T0aB ~zCXı DҖ& QDV4%*a'*2+4)P| (wRs[RPdrԥ n5HC4gBⷈYFriɦٮ<s߰s(W?uG+;h32.G-=geLLY>\hO?\A1}qɤ2)~OK Bd7>$QHw2P79_+r!yNfGT4h2q ѱlw(!$;Z;9/)cq%ƙu 2Ys's `3ɚ; H^8&~A5H<ƾ{yoZ{e n=5}Hu)l7klbUㄴXaBL<Z$ z\t>k#%I۾OϾWɳSmpfhԅۃ~`#_2p B|Ͷ~B@cA&t$sJ9I +w ;0?am7u9 [T'N%d6 4nEXANº uφ&7OdB7< k3L tIKKhPG ) >oav qz#$yQ[oߥ/=?@@Hi}\iDEa6UQ4Ug-a#u@Q6pY\W ~ZHJ!Vʸ=ΦpT8k3*|اUoz;q>qtK|LJ)sfw;LnJLt`C(R_!#( ۩P-婢0pɱK>v9z2Lɩ[}TG@,z,ڕy'IŤYyc1ɧQVE 5]uᡕ֡sGڵ̸n漏)|V# R9xH~e &jG:N6ko e,2 Kx19ql3g_Lq3`ø7Pr2:d5x^xʒtT,yq!Ho}5| }T[Tqq\^9_Z]#yE K^l9sgofC1vs,hPzͼ| >Ȃ}k#נ ֏R_X$ΆCT3ȑo_Q oǩqpVIo\ݜ.z@wR4ezGՑS @<3ŸLoo/?9uE"piq@a'yĦj>Hדxvc\4NNc,;=TAIL{{AK%X Lc+~a}1e'/jmػ 9 F+kft9-C^jI*ef}zE45)NB n/I9e:0:!؏2n:-p"/B[M×M jڣ)^慍w ο;cg_߬aemn".> ] ;T'QƐjX@̆_ZBLOy4)Mw\Qf $pCh6?bQ릣> 5];xyCNr5эY yvyHs}ʤ⫧zTA*TuS;~>ڷ; Ŝ3|!C;.\HfVJ_*M"C_DjXO0@DfOih4S7|q,][A*%bjui(_e?h㴾W*:2 ~.ٌaT?q5|;s0CC?Dy[f_4y4ELS wϦꎸڵ`DvGLȵ(?}Exזz{X̲%^-".,5&$Z=u KnV&VU7;?dJ*V[pɘ)~ٴBg}ש Ր1)vګt75. r-G~ sUzі.]jc)@hϞ%3ګr>iuSe|EPmf\/tTTPRL聡d-7}G9µ$by61"D$[: Ux]Nuj g53\9JN>P8wWy%Ķm~S8]K<boŭ;M2UзU):[,#w-PΐA](kEh8b+[>,@Gm,V't![d#> n/j,4)*nƂ_'YJ_7.b.Qʓx) jp#+rQki'7DN>XܻL*ho33)ޚ`#0A ,P?QKB7Qve-P)M59Pg_d>Z#Er[ULJY-^Q )a`|ԽV5/q9Ta<{Qénd k34WmU 0 (ʛ3*` zշI2Rx&̶:so96=sFǶ `D Mŭu@<œ)2󕥢YmoK9"tOW jS/X_VvNq}wƭ1jYX72 +o"5eG)/\E zj iLFSQ;scPƊ5HVVu5"74,/Ϻ>Rꁍ wREqazwZĿjC/eQt,ާӄͧI.5ߛ 52} WCo#P<gE+i'1QEӼ~D'ܳs8n\e؊*p[<ŎaK1ޭ5w_ѵփUך 6%(Q b *//qWKN9pX` k0uu%o|`M5CW"IXM\1VP: y@ܑnëP]J_~p%?0hn_AF"XP$Uze MWP*,> T-˥fz9:L3jǂc{2;Ah2H)0_0{jYM;:A )=;Ḫ| &@U}G݆$PF|>̒ QJy*O(YdڭMpI4VR6%LJ=F$'4!޾b;"dZZ?{&{M:}Rx&5ӹWx2 . j. n=?kC/jz5, R ~E-߶jD5i1caY>'RvK|홻l-MG{1tlt" Dr\T6Dݍw=Gl4I/Ai6EܢV7#T~Z]3`w?5 !x[ _5D%0'1wAl@kTrqjD>9a?-|LH+ЖkxZ,E*EQRjXJ.TE#o5}DI[)tFvn%k7 & nv9 L@0~"G"eʭU~UamҳF'$39ig_*J9UW 6h4۫xR- }Ķ;N տK)x!OM؃n;}(kZ.m$e_ Dvk"hBf߶4KR'Hu¹5 8jTQ#@;1ƜKTI#/ x+4k<`U"eg7 i4/Bϊ@ȑq rګE|Uŕ/0+VxF `2^ddHus7{$; piͥ98hkkr<^kpu<(rUr46,{VRY,)=[w@GQigX֓LAH_y"M:+8a8 -``Өj)a>+z\5hyaPUMJSXo""bnLF $LLƗ;#[aGu/55g @k.IAK;S$6P"l4읹,2-v`k p{\ 1'Me+P˕9V}e1?cf?T$ћ/Ǻ\*O&yi}]@4ekXH" %k:)@D)vTD7ۂ15xfֹH2PC~>}=)+\]xvЉr8/xWfq6z_D[wyΠXp4XvM ͼ;) q0ЋO(0~OKr"L?y $G :)un?c5ʄioYT=O5-x@c,L"ՆGi>8e`Jt]oǝc{-bJDO386R?~_5, Ը+xc 8AnXz{Q4A+ Cs3 n㮷lM{#c*tRZnw6R0a'a;W6y5>R@͚-uh6}\U1<(H ?%Eأ䇊Ç}bEO{3`rQ5xDשEa\0!/bkȢfvS )( DTb`A %A.;BuU*+mL5Ϫ9.rG^Wt=Ϙ,W 22,H`zKuOMw>2gh}S*HiHQRDb]ORVOE[dXhy݊Lh]K^K dr%e/ӿW#26आ4Ud'l~h+ n0;O痡4[J e:Z,R1Vo7^5YG+ZN4rѷK Pݚ .gʀ yYNHҠJ`@=Q?" PcϾhO$ d!Y ?q;rnf)j=M4;ԓljoʩ 9 {64sUmŵ(fhCkKj壖2'^.%\/bT]SF-LWБVTTE'KV_Oҋ'\KJ3-=j&2P.[\`wMntg`)SYxG,4*.Pa1X8!%xإP1в.O¨:W'5ʌhr8{u 8II P+G25\W:V1nQ[n2%(5уrWw<9s 1Q>҈:`wş\M*])/v݄ h$l#9aI;Hר:;+ӆN9hKj= )A1,97lIS-U]elbƳ'|Dj'@L%Os#|W0j8_GdSKg9Io|{*9 F'@v򊐧FɞdpsƉ=rIdK{H;6 Y6C'sijA11O'+R|aѪ{]v-ũIQM y礟=mi1xA{: ĴhԉRY#2H?wʋn ~Uӻ/1yu1t+0D:gHF@ugǾ&v`@CefМj]`ISu9OT+Sz?_8Z%[졃WW7@(veEyV`XYj;quʽPtU1/<y_iGS(}/jg%CEߙ+xMG~=Ue)(b:nb>:-{aef rxa۾Nl&pJO٣[flVR@pp) 9d79yv׍iؓHY r1@pM3 oyNwMs}`N:LX7>vvlPTaۆQg_a(%Wfi71WAj j~m5q7QYv"tӣ~[I7o; mz3+3.@!#(XWÔw[M8t?*̃TP Z;#0:fܪYc0XTo8C^JФ2r'59z=jca0>[q f_.xEz"U7f t^43,3<@XsRT9'}-F!XsZce(:8^] iZ<)Q6 3R)*&UjbH"Ԓ vNl*B%TK\5Wk q5`>X@{j\;(?0I(Xb*&cJYUo~Ow7Zmgľ/5N6,d{sƇC[ W*PJ5ժOk_N;58|mfgII{K:]j/ *^bcσvc m6[Z |}M4, Tٚhjxĥ\v$Dd(;" >,NS0kḪPkmAX&js$װF8{Wyde7{a [1Y͈ڌau!H nles0b^V. [gĽG P3C$Lho1G3ĔLVP'V)9;++!||+Jw;$#bIb?.“zZ$ntI%G|_(ƫzcG?ƃ>VKwVE&C;&ŝ +"v/' N&~zGÃHm pS-ĶM9[aNXH笿iv\-Ee'Gd 9鞼@b7{Cop.DObO\\ aN֔R#($6rS1wY[ɻXy| c2Sd5>* UP&y}L݋ {$qBTƆgG-dۗ$3NڹֈIpl{odig( I5(rjPߒ5g]9fTSr-t#Ou9z̲o (sſhr<9Op{G UwmƗo-Lb*Ըu yNķի0?E( K4ʟͪ! Ұ0}(1RUަQmD_K]fzeEBFo h*M=ȹʹQ]VBhÐܧrm,ݭi}VG.1r+ңCR<ឰ'HJh5c0 :S:wJ2 ϐEl\$FU)nfBL?xFˮ7=%rU:xahh`ʶC:v.ً!逶<| Xh53:HNI0-߽(ViڱlXqZء62#"Q;zoq*}Ŭ-kUsw ųz4c'=ׯPo)'t"]AiMl~Wmȣ "ToHfl*WoY3_X:ƒaV4ӖN߁O N<jӠ3UIVՆ9I}{|ޛ2'6 QX`f7 z>Vu}CE_(Z\TڊTqߝ7ܫ08QUb2s;^tVi6Ġ?(9O"g&Ծ^]4)?qTo"5iiHi| }H@D#$Z% ]d/|9:v fYtS-/!\zgR0;!yFh7M 8ܩ^k3ACCǾ[;fl:I®nSهk HXRHx ?K6-,{^h>4ndqhV/r=Ld[ԛ7mI|Q PEO({zG6D免U#vjNIS`C}^9KP?G@BʄQc$~Hgf͕翷hC T*8ezlxk~j)H#{J1*KcDCK< /UWJkFJ-I-un-&@L#kW=K6ґ*[^XLt7vg6PϊzFFւ?"梅b~Qܩ*"D Ä@N2ϲQiaU495k/56cƇE"XX;5QY DJ H2Uu\.{ A: ܫ "ag\my ҷVBw磳H >ac#`a]"O#$0֔}0p/JQ~uE'yLāQ-IpyχV^hbP:saSAv0*F!7Ȟ DJ7ƁQAEԗ kw|l'U\GwT#7h7p(y6!? DZ'-'8AV_Qw)oVs<*umh)(yV;P|Jc8 'A[%ZrZυ#Ky× pe0{@FqxUUH `BFB2@qڃ_cS!Me<+/͓=@{1O"$ۅ&ts9 mIvږ9WŚ۠0eK7g2lmUdWX"qCL v[ݞ+$w?SXM;&G\)Dp_4*]ն6o-B*N?$ŚѭHQW@1"2;L<2Yz;l0VHŵir? g>츆,x/5^;pVI]Ay[Px(^K˧vۿ*:a½F[z2G}8>͒9W(htşE,E>7[2ssbx/G1{;%G%1jS>V}uǒ`9a5iG,i:Ple5.} d*'̭տv TIE#UBM^I-OLd5 l?m!׸3 Se Q F&}yPOhtWg?n+*P99op[YϑڠȡzZ/og=z8l+|u`=+{%]ړu)T板ܧ0ˇܡ&ҌDJ[H:&g=_>2Xc ׋1>D,+r9߮b3_zY&cB6J@ܐ$ߺ$D;1alr.~4ߑ W0ERo @ O28΁]Lykt"qs_7R$'YaT) %f2N0XBU>?|G&ÖR* Cpߖ,j[J%Lwgi">Ngu۰.04aFIZPF-Mo(„AuQ2V$*4E*)[qa{bw,f[;]q#W&'*v(pSV~O5*F MR^M-3%HHqA"E~~f?SL=LlwDd_lD!ŸV:GՆ"!߄<ߞh.^^\< xK|h ׻Q @DK('g)?!Z8/ p~Ѝ\yeCwmԆr=)5\˧1o1;IXvoc)$n{ Yx.>z^@V,.QR$ܡ<^G"Ef a+eieM0dI3{&NЄ>/ii+tH2q-tEn]RS=V".n܄jłSm#}=yq0G/}/(_czzLB.B6Пtd!F zY 5EzՆI~4!4.mD XT]bWpda[]TD-1di'=z.A#OnYACNJx06dƑ `ȗ^wNlbܽiF엜iϞm=5:}\a`f6j^uC&{ECc9JL〪|EuԪWz=F\%ݞ, ڈ[dWI8g&d7g&fLN$-&xS]LeɹmZ,dNa2 |Ţ4ԩ{o8ٙ7pp;Xn*AK@t~M,Ҡ0F8`o{tiJTQڎ`(/k&@βnetԜ%[uHwu$ ڶ:?y` =`ͻ-&-2r"?@)lmGDd-tVta/]so~1T,`䌲Xs_w70n ^#amP&џ*MO}~ 5+׮ SVzth;b8⡖O<TC\ir? K%O$n ? qHr #Ki(URaVA3QxWXou zYv`ݬ7lzB` duXDqjz4)4$ӵ%ktޫƛ`K$;M:St;ʼn]ԇ}]cp_ _zs8o?= 4.OtyI 2R'p ;2QȊ㖋 GҍND;S񖋠Z8%y{o֐2b[I`Txk iSӜ>{+U%XIU{2һI-+y5ۑ5ZqUEb*ڭR+Cy׭: =={ilC)PmӖL1"XTRtmY[C CY5EO X'1[;Ӛ WQ1"DD-4V1è2΁a95Ք32>_5 o'nt+-Def xT_A`UpBpBiV=1FKTaCP+ ڌ=!*6HnSlu-bV>I@l|_ EJQQ龥Np!l:wo>Kmm6L_7zr0,aS6:W۲s(TU!/牮vbw6}Xk'_윘gFF2{_kEcj+We6<[O D2HB%hҝHXfA==ʚzVx`=FT8,m>帕7a1%K&Vx'(r$$Tp%py]2;<{-8jr9 0>hbX-Dfb\ͪ>GZ#'|l};Y ZD`+T8PM,qJ"&7vu,Nߡ]pGYɥh7 XϠO ;Ҵ,[/C4Lҋ7c@$}e6ϳ4= ,v(O;BPW=zY IkrR5xfRS5P-K')`4)D?Z"qd2P" >}{!]Q)a\f˅3ɍBZUޙK.ɷ^(IÈt`^T@^2W_ݹq0KL4ygh ~Sk{EpP8?\qV`c({@[xs,jDFV3iߺj&AHWQvTO r:^ڏlM屻e>t]kq͉f95T:Y=ьD]iY^N>K:W(kYF JD|Cr_K D%:r3Vh{Au}ۙYg8fg%6j 2Xudz^Z1Trglw@jR;⸵NנԥLsxlw7'J= T#MW >n@˥9ݚEyZ$̙ q]2{H5>"I 9?\K[BsS](?|Z\..Pi*I-w4=b/=xH;w}W$9ϣ đ4fe;}>HTu:#nbuyt̫KÏuUƇe*y fCHYZ׈.ঁ`c38qlϩ!*[Y;!r袎$֙.(|Q|smrl j 1lR;^핋{M~PˁQoZFL܃̡ͅ 6 &޴bN=A~_FȏڪL8zqV s ֎D|5BBhRzm&`Lb (l] hڌ0M''<5$QQ˺4W Zû@72]v!5 Ev%ibg&T*/b۫;M}㚵n|Q+mreJ%*U#?k ok"I+rc%빟n;vv&cd{vur˸"<Ǩ%\0)eD׽ 0Ő #Nq@;2 pt  ]@PusK;Աhklm_o5Oȁ57F;[{)HzdWY:h.^`9ǷKh4S~$iwj,L(6cu^j3̰æ*dRs㸙 tN܎Y'J$T't뉏 F E9a *j*X? [D$dKL2*,1osxd/n[(|$uM( PvNSS)mFM~2G+næSU,=E2KrIq1(蹇5x'~z@IC=B(Ǎ~.[Ȁ+cMD0M,oPMDz\%O l絓l}/;L^-UfR$.nBn))^#Nua ]t%ptx!C +@-|u\5V:EX@h:sgkr D kߟm i+h ].iJ^ņ=~=:[T#%6+:05ykh=MYwssQ~hX na} 4֕6ҋOf! D :D' [V~%bkds`VSs4 prYe[y ñ~Ow$dI6 C'KpiОXR"C_iҦ8A{7,B=~s 7z*pleA :r[Lckx..86}_%|/6G)٥GIkUFΰS~xorM{1xs|-IQǢ(x!41s^ ^ݨm}VvU5%Vꋤ_D@9P=B, w~E'Fģ`A eN!%8^4["y #ґwǵܮ*/U}(O.v5 Q?Nwatns52& %?H(yHj.`pt4%6@Ev ȟtg1/ |~)R1F _lN˫*FPEikL_%rxi6R]߃{x~ EIyц~ES|ޏ#U[4.U:QG#p[+mXܠ3ˬɖ~~~/5sE9#IcJp͖5&Zj%AyX.|hRU7~e0/͖x;Ϻ4USOǾRcT^Ơ :B6P~C,Ql85%;=-˂;pQADm562 Zj;1s6 x2kGns|3_\N3NǑn5YC4PADtOnaqw[Vlty6UMEXA8m{G.xmqLt<^j|xk=ajeGX@qaWI d]LfsļOĐڌIGħCgw()xb/+;d-l ]6ZF}-]:])2/mx7*&Y1e&J >eCmz!9_]!4bRs0N";a [ O*;ȝbentZs}p3hvglִW9Һm}AX: *bF>KQҹS*UjՃ}yBcXĬ[3U}eb+б wjm_fr t9A!?2r1Ål HQ$CGo4+$ 70L 7387`N-Y8n]b$3=dD% *-BwxX}c fvCc"A,VIOFjpnkAxW/+MNyW3 5Q̜DPJ%TQ&⫼ϭ њdqvN8poażؼd>@zAP C43iR9˳-nIO\B zQ @bW4SEd>\f&zmՈIn]pٚ-cG~0LV PvGkp(7&VYY$a!UWl?wbf^3>c6dݼn__&v|E/wyDcsM ^i-u$[{u >X̷]Pqmj&@FRD5ˬ*p~uq 7߆a@:D˘yL~PuqHl :t ?>_Pj)]^v}=Cxx>z|D&b9|=,x5yt {!IpRh"̨?c~R>uVh7]'gV, !uR.z:j3U v(@Nj1PgU uL.PY5DGbva)4x?13U+n 044~nP}w<|Xri;pLY46RFF D˯db1ɸ'{=8ox 8 CwʵJ4%aVO8]I0ƞ!E/zHUHט,7EVBm[8/E-x.8Gve{&MX`Y&[إ?j6EG{mT+ऩj:lcTT9+Yddmg]v{6sqj ӿ 2ZK~2rNe3RVxaL.! ^Ivha=67X\@ wRq KEjVg58\[pԧjN#]j|)bm-(@*!=@>8mFrO-P3NVۢ:H6\~$~n>SG>0(-|EvݞmPSam,?'DE 0KmoĻe3:֕=9r(F~*u1 ћzUC _ߝƯp=[x69D}u^a`Aײ!"ߖvnDe[lD@Zu)W}CI%yъPxA, XKtpB\Ӊ/OC ы:1X6NBL̖,1aB _Gaգ'vb`qf"x0>]\H` 0?mT NEasP2NU5AA ^T.^P]:z&⍝OA.so֌yweu:j n+՜Jݯ|e؇,< i/B? <`lmka>9U AIƮ٩%b?H p +=s>oݝT遧2Ï7hLGtN=P)ʅ8ëO 8,@K ݘ:xR7-@S;!E _3T*гӶp.qfmb=ܝD 5~ ҊESƶHq3&G7\,a1ۇٔXêQfbQC뮈ot8fim!Q$0Կ:ƔYx&~W|9]v-nPlGko+V( }`{$J#2@]@:&q{%+ju#"p5O7 *7&FGnǮvWHqg蒝wĄB$B%<VԛKILF=ɳsqSo>!V,͝č܌M7]{'ŴUV*Yl^X1? aJD^mRՐFEǚU[}9id`i`eC:? a ߖ㵄V1t&%F;\d gMs[52ܿ@IV.{ȎgaC-i 4<>8fy81*![4[XۇMHӬb 6Q>'Ž)<|-$cI K+"z]w$g=WsI2 M81 DBPأOlH v> BJ\nXWQ1{VyBM<+C z^"L& 쵬hͤg(%iV@8o rD$oꭉW3 z{[4ly;Iw)jhNt%ޱWP,shB$sc 0 4#_ qъ8nV6o 62xj@_ }~#F8S`1J0$01ޥtG8$vG#Iڄ)cpqNߡ9+\%qv]z_#lהdjU0-#2B]uNH:I?MVI\J0p(wG~Y}saag(y4Ml<P#M*o@h0_H$(3,*LD*va'_C{B* 5g5L&}&v*!Ϭt%6j*b7͊{&8SLU`MwJ c Lf2SvcꣴRj]dzXU?O풝A7ePM(ibQ7Sym3ʒghw? D4&++X𱑼R%J,*(/{w%FxU liʅ[\KC;@W#D8eJHIKnwMRѕj:e QJp)4+v\S>|p$7 -%F& ]W:VۦGG V# D!R\e)'ڎA`S+*-h/쇵Kعʁ, nwdKϮHFҽ ]'9"~!&CAE>{ҁ:/OM~`O[.kL_sz0RTl' M^$^L,UƁ:2[%!?Zҿlx- ;I5qKAp2'S"hդ?wW!҉ρj O_@f?s,8:_YP7d?=SW>, G7 \JQPYVJY;Fb#ٚy{6 yWǒYn f:X;ܯ4M~mhrCmyl+j,F$~UD@5|%htyz*I(h~Y?!;#V{u$&4*֢4ualDar-Eg)W s _2]N$ i6qa)$"ۡaоB {|:ۉ} K÷9x92N=u";lXC(aa93h'"%<xI>|A>?Yn6\rx5|&fP:ĝozqJmy}K4{pm)T :fҀANW5SzO}I6Km!!i?!fω•$-oC( F2 ..SG#[hܔ]׽QڬiuQt,UEQ 9e_,fB+."dO)J.JwϖFVZXozDN+jH!Ę263$E5C8'J5.o>/'px6Sv{+aSy;1 .1"ŎJzGK`(>~\{,4!yugv\4+)/NgG5NK.8fyspZc1{7+ZN>ߕШsXo`q~FR-ٙ\75_z W86nCybslFgn{ΥRq?Q6^! OR& {2,|yJD2#jQ1f eYF &sĈ]ꭠWzx&*xʋY-T: ,UZک ~eb6*\-H3^F'5 F_ Z"ʎ25ŵkFbO'x6AD?&ys+kuF߭63N%~^Q0PʈY.<3{(.AEz:^~SR H.m 3.zLEMX!D;O@Lj&wVe~!%^]ANN8\CE9KfK,wo5% 3ؘ3*R0HK+ojnzģG:X 63<1v Y?PWV.ي}]7Nq-Be u[&VOoWm&u<`TH rX3g $fSWr48jxs)N+?idSbm{Nq.4 #i'%k:tAG 47` 9r nO``}CjiqO%cH|uCd$Vlb*ҖX m.6'tsSUfn? j2Y=>td[5oM ]v)+4Voacb V}khܑK~mB B)Χ{U4hZ3kǪw3I :AaUqΌ-<ͷxYP8C!}~QrG KVL#8a!ϾbwI;mr {Xxx))"TbT[ŻS/F=AvYLۼ+3_, +XQTP^{%f\ӫ-H8㷔Nnj6M6wUa,f>@",ر)V?^ڭu%,$w<O<y1g6 ܰ]yWo 5oaHFA+nAɉ,9:tݕ*U Liq+mc|M[B.b )-T`uIM3?yCb=!'umدkc(v"j9cVcN])gPN)D2]ֶiW|"+G l]}``33"bhcqs3,-FUh 죀ģd/8<جV{:0E]\jlkqYLw^y ~ WFI"}o'ap (H_˹iPb9@h#dHUޜfڪHdu.`{p: fkyHtsOi@ew,d~CmQU9x1=t= QԮcWI5ł(Ln m˧z^h8S\Үw[g (H kClyV Z:195Q5), 63N:ZjD:G.$De.\T~,/ͨaF;ht&*|Ve&-l*s Uq?q)6摹E8Uω]4,SL0$xD[/ \}Ieykg3$N<$6} ڰPK\l%Ch6 ek͎Y/{՟Y&'g<FwҺZ(_2uv D󅄺Ѻ kPFV^XۢzJxO~Gִ3v#ۉO*Av8>B|nfiq"*?Pmm%\}HOT|R5&}W& ɁWaAoiIUL>wr>zX]PjmPe~z̈́ HLTr-1y?1hE"j'eJoU@hB1u*N uC~I׃a,>˝X#Q˚p糓ec%NQ!bh3Q)4UW_\8mem0LC6k T>a8=?;/rɥ1N2qx8eZ[Fe,EFWC|nj":b!ܮ:O+XqG8ʤ2 ]؎:QR1d߀b]L-=/GpTeOOAǩ#:ͩ.+ݽM$en5ttDFS5ן= +XD]]y`(%vvIeû**.2xRn-w:̒;ikQxLm" %{a{e/+ } *2VS)ÄӦMa;;1$@qijYSƽ =/)N/F2zJ01*M+|ҲŴmz͹>s\^P DD.!k6ɦRw J尦gMUtBc=&U/uӀ3^OtV1T˒ Gp=!H@jASJ$WH]2G9(DD+d\m Ano-q^q$l;ހ_͂voFRIaZ&dp,BL?ZUA4#(qJ>%M)9v]ވ *ҒYɴ֜߱.,4Rҏ;?`æF?u88qӘd)\,CƄjTaE傲oCrTVѯ`1Xi3L/x<ܞe;F8ƜiC\yX#6W@Xs9iу_"e.PaO*$%,_` fzv"r2\(m/QS{켽}  *e #8q0:dljj#+@+?͖ԕ8Lb G$'YIN, .1_#p8k[tɣJZv\^1Lm^MI+G/UǃM{K@PHr@ORظ~=Lhxy2A+X^@l2R<}  x_GI;y@b#$ gkn'Wr޼`2[C J5BP0 x i<<8<0'7!$Vx1$!X=. ;#J]{7hnVKeFV 7A )6p@Ï|tɱj(SUtOA"* q].BL8/^cƭSޤibs3[>asq/߸y #+UCN6{V2HٌW6t: 8;_SF9K(}dTͥ2 ,Y|Nr 2C۔9^Ɗ ;[?j+oq=mY)3[ { {cCE"l>jVKKx>u8#1m50,&d# {4A;ԁN.6Mk0}VB|Vg lVOwơ}%UR7IKЀ#qlȞ$T21 7F>ڪ&}Sx'/d ґ+ ;{=MNWk7xYjԍ=| ݜt6嘆!4SFKn)6>=I_ӄg,KE#yT;asVds._F>tDaijC/]ZC/ޝ@Kmg9h:524 /%:.P'㭝?|JiA;|V{I L. f5ư='EeOMdλas5XQ׻qף‹ȻЎؽC<ƤgBABwP#4\ofAjA0YoWH@]˖H=TNGm$8#v]~@HG t_s ^h( =s.& wvUh~鞇[6|?Ù`!ŀl fp8H+W!m9 ݕn!b( ӳ6grAKgj45m3 k%>3XSKdFPs4쭳Imx)Ko]RbUulBP cY?oY@dQi {A ʂm#BEEPV%3pFm#yQg,V>[0CՍ<YD<aFKV&#a0ve]ԕ*TwKY J} 5վs ܰJgv56 }VĪ:wn[9}I@ejU C6&u"I\Siw]WBCP,/w˛g0ui'gN\ nbi)F^){Z ~~.K ץw օ~]on(:ڱB>eCcĠ C4UIJ+>MV2 OW2h^]Kѵ:k4l]Gƞ$ˣS5Q1ɧ'TjLx+XC: /íUqegC+#&1ҘNIzݴRkϪ,QUH0|tگ0ICkvDѯԺ{ʆ"s<=RѤ. 8AY2֩(/U { EPYٞ{ AƖ09 A[$1Z̆TǾ3Py>-ub }W{]Gc2EE ,EӞ"Blmc3zjAozjFO*`H>-I%hJmarI&R73-"5/~EQsEE8.u9Q^q~kqFk\!xh\\:{ҿ -J/8Vަrv%I>0],`Ns;?秐SR*\Ql2EX&h7 C26I(1Ӽb{B93u)E'nzTՏ\@Qg;q7lU,؄RWjcP:Նr!%~˨Iz}4eIgw.$ӑu0$M/Gb\$JSVBf=g`}W*mHg'Rty0Z% ht@g!i*ZYŝYWo w å`>U(۟>(؍1al=kBYHH 5-iJGJq:_0qѠYhX=@4C'l3U:Cx[ͼL </v[f1CTeSc(*R=PgK*Uv2 L%#\q+xQs3 i8?߁2Eb79LI=]s-DدMhxn'"2 ?PYjvIwcVqg.E}f4,xz.AKtrHXUDa6x=(첑;m7ՄN8f0Hp1*AZZ!.Z rFxzo14GQ9Jq*;udv,)&kHOKJ6&zK%9qXAIWճQ)OxIgeغ2ߡqբZ LgZV[rFzSR㤸4pŕra}H~;ͭSNKFh%2CV4ISdW`{ pBgE:!{@+V9%ߛv9}1+?E趴ղ낔i$[i/I!ͅ/`??lfsdҟ^2qzؠ\#D)*IއWvi\6>1&W)iX/YU'p%}ֲ= NQ'} fVgL9[6Ձ'.axοqtW  ̙Ttm_F iDcViA挕1-Q/NQ+P78S+\SEEMPJqPԨUS_{\P{E ܹm)T \?`;GЂAqZ.q),ҏi4T,鿗ZOgPOpj#"?n@xn9wp%4Dg>,F]`Kkb>h(DǀpQZ#˚iE)e {ޜEQwsb^ҁSe'A O-Uf LnfI*#93+C0w3:qC;?+nDt-#1JY: A-(G*ĕQ_}G3&IyV,3#]X"*8/acHյ",MY+$E]֙BmsEiM/1 x bGf= W gY$$f־qX#.>=SdT4p w3^w ݁{sZ˽@,)TY kbNSBxzfe C3jJ!wXˤ,ir` gNܠW I5ҝ~N㊕Z>!6͸5_D˓@D0?|D7m`of^NMbcIuNt5C~kJQ4IDlW> \+VN*(C#Md훃kerBI[i k0yfH?nB8ת7@;]`F8 3CvE1Rl3T%]&Z[G[\ V1$;%NLOI"JW t~J-6 `%b PG3$m͝1Ff9&i*O=|ٟr;&WvQOm3+<;:XBr_@Ǭ"Vf+k"Z~lnц1X'ؙdJ{7{8Ht{jV9ƕˆ )):$SNSFX 3tR)C{^U8w,%?9?ePI-eFO`bi 5GHIec|ɚI"]&iX!cJSҊsH\y2 4y‚sTHߊl:\l`U+l}SE[ۥs'to.Xҩ"#^cO>cGW˹ʷe syh{W%>x3ceƴ1C5.XZ`d `O*д͢sQs`D:F,@/#EFsN~D-0dDFp%:uyh7e*ZbgfeF=SZe]8Ns".CϵwU}-iL,S@d &1bkuyFנWh]_cOӛExT9OTz=\Az U7V) Z M 5s͏G8 USL^֫e?Ǽ~Z=q^Dmj0!X,‚ڕN73ƖCnhG^wJ,oK汻! YiE8Y+[4QM3k]^wmH^J46tLw af!X,5- eo=eHTĻy톊;Y,gR5\pk<!))ry(;}dl{)_ջ$#z()itIb]%$ @w1`Fku 0Hqw4Έ<(|JpOq`%Ʒy *slr&оpqǘk|?ywֻ dIǪUq Əo?k! rnꓴSlЩ9@y%aV[UceUӶyq{:4w4LV&弹ﭹds1g5J,,ar<FA_1,D%Ն2t&PY`; #D7R+RV%YfcKk+w$Z)J G Xjs+%Scފz$ęc(JRE~xm* f;łXHHce"8Q ˞/Ba"F2;'_ZaZR>ْ}ak|dVLx=ݠ'h#S:EǝJ_FpYpV0zbtFo۩t⪻P±|ɜA58ڐ[@  {Kitu}}#{`G]3x]eK b{IXyS3)zM0MA ؎f6I7݋­njtZ"EDEӼ2]6'%T;`y}5>k~yi4@s[@֘ n )dV^}`27]1vUzPd(f7Nm LBbS)Ϭ-|kD`;J((Y}K,L$STgM!jr_='iPXLny2 ݩ d`;P: {CLy#u`9}zLQ W4ΨDRJ$kD|y=͙eS(Ԓ4#F&X^o[u 8EF6ӣۑLL-| lE[3{9Qٝ֎nQ3Wq ,ć|abe}2?)|:˾mNeq3Z 4_ARfa2ڴ\Okc/@H,8gQV`ztx +ЈSˍ{yTW7LX6KvR6eQ)ː䭒sަR У? 0*SZe M=(sCm$NL>gJ5ʰ%^!ra5Z_'^o jW םI 亟!j7mP 9_˼j '>;G5K L4٧$^Upnh}z)^x1^.Qp~C-˵[zW.xdёY(Hn#iRs5ed (4}Qg#f&NkXF%(@,!!@h@%Rh47E-j>U{-t<exHhVAĝ ΁(U1PMh Wgjb;c׫ؓ$)tHyQ1s5I'7zos9Gv|6HN*?K3vppfM:E'lʚ3`'4n6=B4QFo۾_S}.J,,72նy|NN@kA|:;w/ Ӄ!Ci׻WZ8JA .Rբ:0 vkG=o*N@8?ZElm%GSSXᯤC3 WՑ6L2'E#%wdBLWYh<(RLL8&f¡Oq>NgC3GxM?Hu DHV`$#ĕ!z$ oNt5.̮S2''v\hcX>?!By*89 R~ GPѩ2X^V&!Mq>}jaZe]zڕe;JYV:ES-f1Y԰]}F>;3$gҴ B"2V/v{2]V}~,#ȃ\ ?@΂e6@{sl[it-5-ڸ2ĦQFSLGt X>ɩvB~fL[(ÈD/i#|/&4e|xZ%hl/bpuVz{/Z;$%@Nk7ˉ[{oMYq:1$’f7.TeRgw=/|ؽ.B!@(Ly%WݕV"^ r<CBޭ6fgroe׍(Rq9axlUK`̓7уLۢታ$0z Wed0Ъ,h43*8J8Oe0%汤'a;Ij8 qGfkmҁuӴ_9X4U} AɭF~`&LbGvìKrjlL @:J~<"|s$U $T|SR s4c ~B]v]8[= ;VR+/_i41q Pky5:=+"=z@9 dzQфF6q`d$A5ede|M-lA*LLJZFǑn>TЙ}Y !ow9ᖩrLuݴWա~83As2rsc>1KOk7oB+%m3 frS,I`p6MwN2OolhS`TLs"Abn+zY?>˜;H$R=Ǐal074 b0')9+ػrM'S\gĮ~iR+ rc >9'0XwWbPL!< Iβ BJȣfLqK=n ۼiV;-ZL_~t.;"g& io %l[( }nI"\hh;gC/ʂ4L$6 bB)}wD.~'p@V#N+Uy3;6?+Fesց`8|+9/p1?fω!F"ȴ=2o#! 1&"v\0aOуC `y}U:Ftz %+ʴ&nYZ-:=[QT!ma~Ie͗0k)'MBˆMn}nV)>}0YyCk[A\)9~>Ft5Hu$֜XXڬejf!ӗGhk4ɸ/NgĢݫ]OQv|K DScF:oQS0/GL/F6,Ru[͔6RNQ`[:]BGMXPIc91d>NIytBMV)lofzON:;UKDi=:MkJ1cve$*Fo]< $t_kϓ`mk+aBOwW2" cc*xf+C8w&2r֩>eXm^[2TL@\Ȓ\ZKЧQ m/[d2vޭE;YY[<~eտ6˹k5֑?YsIXl =e=EA >EQlX2a<:"ʧ>Y׎7ѡ"e- ^yŏNϫ_wxq&K?Csr,݄l]\vyH7.וJgչ !wljlqlĀiFzC_Z<\I-m5mD@5X3Fm`2('Hg)hqj !wf'6YQ Tz&,T]u Pɔw+zֺBslfj W~@d ,(2o>95-1(U8 4~aWvo3[~@0q@؊ܔWuYzxD,n7̸.=mKR{yg >T^ugv<[ˆ2`SH3uPdG:Y`/ѹnE0k$*1S'Ԫcb{Ȥ[`_M*و3}xB9= ::fgBK>^wj2`߬9^uJG۞bB`n*E~oiaѧZE!8OS)T˜Ը#TUn~@ {S?el=JcYuR~Ha"W)dnYl{ RQ:]҃)x^p|CCIt1X31qzK5ܛ,)G$3dxF}0TqaU–bQss@Zk{K,zÏTBTPzC*"Hg8pBZ=M%L-6]җĄϨ"j~KkOأc[8(T]vq)NT'ByZGJuP<*r!A-Ӳl4v_^p ju|J d1:?"Bqtұ/K1Lj='պT ?0hO;{xAy!kϱWj$WM H*O`Sy3 `'{(CC'Jm,((8%ܠYjzaQ 9FJmԛPM: dX)_c 1 ߡi>BMvk3Ő? p&j[=7d AJ5QE6{\T$+*nF)qD8u8$_HiYmF)^>N䮠^^"R|QMEخ?ݎAbQa%j36{~#|p4@ &%-"! fb\$" 2~^G?]68 S IiE^lhU5V|TRduҕ֐*~r 69&.PL@kWǖl4ArMӽ*.)ɈcMIuώcFŻtH HX(oٷL^{|T h~\uyW h@sKcpg^Ѽi C&yjr:GGRŐLSkt Bm2ü佲|fv*Nè\u=יI,(Po~_h!76;0ǎ džZajP^HU~?=f4\=(w3SRw׀q}> ZFx]bHp'BiH)km _Kz,R1^8ZTY$j, ,R`pK: NR;a1b'K_Cj gl24G2: Xa`t_#(U2VO&oȲ'nU|իOy[w3`jP1\>f^5ok+QXiNy衷4 4+gXۨ)XcK=HhDyvABҸJȳݭI.i'5-Կ<^߂֦b16b>JLF=o>>tH;#a*8gI9r *١.'3Q~ɢuS }J CN@nPci%[,eZ^l>1JI,X^g1(P:z1`G34vw;(`,l/E U(8Z}]w\t]j##m+c~c {/ ?fa9Iu3& qŇW0hICfق]"kd>Ҍ7z_.dZɕQVzĈ-,޳{e"u)=FfBN@?,~'-LcyMS؞6V1ܖuroUwܯo'VJR@[tKM=j `Ϊv_`U̿Hx![2 gߨDCeȶ MQ֯\fۘ Uq1'I/̥rȡrd\+%k\EUݔdl_? e{АWB$l AKQ5,A~-l2M hL@pNz)rtzcHk  MMlInj>:VJ\~:O)=o,y@bʂІL|.y7mQ/q6("O|jЋnoyl)^kӕ9Y̶s` *GmJt_XvA@e`UwӒ/a~7LԮm@#1򦸼SUH円ZuZ*Z=PH~^n[F;)mz*IE}O()aFNDi%2xPeDufm+aLn@rnϣzmBO.#T;]_o/*ˡkvẕt%z; }:}YDTh?Ȧ6d&PBIP寿/.*~RE H?!_'ƝvZ@ ` 你GĔfQI[G?$(y!My!W<5ie˟x|oҲFh-B'@{KIB]C1զU^X<d:}0 !ʽ9ri  hc*,3`pj$))heݶd/m1ߋ%oxRa/nkQqf/@_zwk6VGp=Ze>D/JPQ"< IœH *~zu471ƱO"ؼ]]{w_НTý+EChZG]Y./Gg2vb {8Zv@\ m`)w !ܸ7cX.' 0}􇄸-xٻ\ \ñ[qQpB>fϛ3_gљ#oh4%l|]qYa|;z&5Oyn ^>٢?gkO C7w[4V=m]쭛C'ˣC!ßD^vJjk'U57^t YX0BRYJ 4n,C"Qg72:o9o>ZkcM.-?:j&+1 O{/&pԄp0,4yR #ds䘁=dft?8Ye˙S2Agh ZYPFU ZZg\5,h踶0'zy{d#:Qk seM:j#\eYgFӉog1'!at(?KDx51TQ.YM$B2X Z5{C~C.B'ﶒR8UW7<.+i)ڇvbQ:}}pQhZudGw'9?6= F*_LAW_,ekၪs> BYߒNI "\OWwr+ʬ&ՉuK")޼@y+9%WfԱkxR f,s2oi&bLc$ݒE~WڏA$M_u$d!싍n0=YZ9GIw,҆^#qfdcAPb g-(' Jc&VcdIGۧ`ɊOq?xH.'@~8 1߼Z rɅ#Q:>qID#L1=^`9opHS}]{'7e0xp`YM{#֣g6.gրӿ4w\B08QZ 3D]6QD ؀HXP-k@q̱B--- S[EJC&r7[=ʀ D=pjur֠AVxL UUeEyXfR '.![)Bbwוe:? X1`>y5|֣'w`#JjO(0!N߳B6ul#G\ {0| vسt F>xڨ7oU*t7jݒ2IF")/9שySM RnL1Ne[C `rMV5Dߵ Rm=`N 1c0)kw 7bG4tBI8jR\/" W{ ָ^Q|!'1\[͗SU=^Q0uĢ}x &Qm7Ԅ5cPnYoZ*Sϰ!EuJxs(35 MK i"G^@,]9rf}"C6'/ 3=JOWkZa+ވ+_tծ [Vܝ[jq@wzYVTzF.&SA <뽘z/y@,9Bϴ)FKJ>A0 ,SqvxXY`~׀@lUn^ny1]6B &!1KR'+~N87# N b}>,2Z-;8W#eTi E\QgSz026ʻ 1NCp<|g%.@.{?JngqEwKa)]xR kVzjKU.=9YRe-`BQ]Mv" TզC 'cE(ຉ.pSX(uN gO 2m/t {5I~Id]G(6@<"\>ŽEi7h-CMMJ(~BWr1B&<^w*'*o3aLv S  YR6 ?雵&U6sru=G*i/ 9M\73 /_b$F烠B͹Ϟ!^+ND=nӾu@ n iiQrqhlUͽ jDf(&Ət,i(B1/R2~oĎIAmfd>z"-Qz;%?`:[[7}5],`S*q sH q)| 0CGE@&V[}eGKeO.ETgd؟>jz͙'ߔ ^L~q=rbŵ5li5g҉ͲƏ'o??uFSor\Krw%:_EN⭗{'qC/-)?6JaXt ̠~g枃EǭͬGs7fh8ƐCKZm3@؜A> z`yDru{IMlgς)GqSAM'7 m^X9hD|kjld̩6ݔ  ha41g&8H@Bu;AWL9{DpL+4ݳgk\ڝƵ t7>eFM? |s!Yx[e&ҜYF]_2Z`^ֈ? +taT,*IART ߦa09n '2)ٰ Iqqca9# hO5TezhRI[ 4(2lCN oPlIwG{hoT⦵;8UeQJ-q o}$u^4mQ/y'T_z.+VOUssk=2 ^m ;EōV=%b+`ln l?~9Mgi+ɦ&|; F :rU 6 zno-'3[[_dlz~9\'XkӻYSEo/ǣUU-H.{0Y3l16zq%(̮bAY^4(}ɒֹrֺgѺ&45ghKlgL35wa0V@~jAh[Q ͏>t-s7TEEUd"&_Yȷ9 y`lA"$}*EPJ >[!t7航Ns\r{ۮqk%=k,81޹)9FG%7܌֯u "]Dm絊=EE3 #%6~JLRYu5ɼ+Un`kRTx/\vuADV HɾK%6g(*'Mm}J>>~9v Esխewsyy-)]"m'q Z93fwz^頝l+FA r=9H 2A0;;3O_*1pp ţ?'Ȕdo_Lʍ/+Rf;R"־a:~@܇GOGDN5HC'[4򎺛s잂)~: +{a$ZsV~b4=_Z!/s[~r{ nt%ht3U+l')P ˃{o}M@QxzGnDt7C7e0}<(Ql++aǃ.6O89g#xLï~[hiܓ8䍲x\+Sxz/ew"ERԍDqm.  ,wXfŀ9Jqirベ냜% XGӪ=+{G(P!q)nnXL7el?8)2*?€{%z(w2P3RJ6^HaU< W$ \[9*77t!<rEj[ e;'-1&Oo7l2Ka`㽈ߗΩ!ӲÅM[3r6,,[(g^w7VLNrCܲK1,bz{ͥs푦Nk_H>|MMzZSg!lANz)%pPpIfMg` GYV[d2HJ4 [+RSYx܇Hnڅ+#7[qY55H)Kx4Ղ?}9= ﬊v6ܘIj!ŚїIU>U@]̏oHоѬh65sD&*Z#W<6#/ZQzڣ:Dv9 9(z/eEF<]_6IKr585QZ M- <߯5k?4W&aʑ?1tie\CUDȑƒ2t#x@Y*_1/ڇڮ1#|:i>M&B.;@_M3`*7_,Ch|~dg9!b`#WH7m`ȮrѠW|~/eevXK`&S­ȇU'#LjAe>Wnv^)? Ϝz)3o"iX18HW C13uYvWvz){+dq[Žrfx b}C CBHeJGMtFA?LegpRg+,r "Y˱\s,Fٓ4' ]hDt"-̘KңA,'r.Zo̧߮CӘ) wےL;yi/bѪcaWefW5yDzoXB/.;6f /5|Jh>'ۻ'먁k~9*j8~`);wmxDZ&=j- Wv:_&כ3["FŴ1cƱ2~S2±KG~ mpBH bPT%o ^ Y_$ [dd @q[db͜ԭzr_eNq A$O`FXS{5,7SJ-] n!ܬd.6 ԄF (jhjg*P H tI'譠LC^MJx̆РE`ϬN˚pKaMhnOR**D_3z1/Ap+4NbiQ]~efo0r> >Wf"F^|ROӸlC H,<j$1SǑO,f5qag@0K=Q1@:+;cwp ȇL4Ҋ~+'BS@60c@B,d:$<6_fRWY҄W8ڠL*ּU%Ôh2Ǻ%i-/9p\{ @ |Y0i iOj罃jhV.;QBZ'_eJ1mY/[;2 %?b[%IˢdWBL,Ԥ;c3,4}jlԼ*?@E׀c}HP1 zq d`~j0; "!⩈lFugCG0.7OL.*4`X>5f>arR2ӀYM2 >ZsJuE.g=m=$$MJ/' R+|9ڎ=1e;; M-ZԺdǿ4~`Xs1'uO:dP⬈j-KS"B*aBNCxwdd//:s]%@69EC2zgK Wbґ6knY"釽<~ P@qc`Jc#oerxPd#>hC/?r[偙%ðoꖮJ5l*ڨZz2n6^9"he$lmMFrȡ+GZnPfVu\L%jTnl$GS_X{]Wl {(esQ&^#iUvǶXiۢY$ ? B C(-YBZw0O{"s@EF OtTTtH rDz%u$ F* Kc_u^s⃲c*;YL驖4ޯzav{^=O}NlSo~(mIB`*=궙8Vqxk$ɏ3TbͫɃؑsn0.8'hs %36X7 E W/bs*ҝΠ nVbV-ÇvqS{)no]K5p/p!McFs/wR8I84yEFE'PK@LTu \VVlm\22ya{5 Җ|:y',7ߧ nº7y/i$gabד4 .>|{Oen,+8VAV3?*PZUvioz{YTUEgv߾CycI՟@m~EYu;}Śu/qtusHRB~" A@]S831荄E2Tx!ѓybӫ;32)h14 WzyE$KI{9Ք1FC}Ӌl0Ih:n0]T",NfeX<|C3nJL|#Yb+a֕ۀx'RWxU2Ȏ(V4Ԗ!DՃ4J_ 9-Vv%6}H8AOk?m<+٦Sj<¦ӬJlXqE$q)Ѯ/)E$_'I P7\;C ] ^B%-4p ap>?7+jȨb-^ֆMiy 뙅f#9]sXRzcSGʫ|0O[doP 0GA~AM'%#`UaUzl2 َ{BLvm#Na)[:zIU MkRя P=Z,nla`K$2p+0>G& sž|j@ƠnGTu,D4sKSAS^z/#HJ}^uR҆7Lo#]-w(1tvs4 ,e^2MTv^~Vs ƫ[ tB**tˎ`5wAobo @d ~ƺFoifoF)qJb(ͧ7p"PuȞ7Gb1KD'ļzژ$7>p[|I}Y رJ\V-&T Qc9]\4%7NV%f=-:P ltZ(TLNʥVNa\Hu8n)GJ~/ @ۮ9uA]$M[s5d#J7[{:էɜFf]yrgTKLI?y鏴 yp𖏸gdMbfys-ہgc6u-qE_ ЛM_RvYhfU O 5Fƭͦv/QxX3P~H?Y% gA-MWszL&@kҬ`w2xF~H<X5̱LaAZz}M.fS]MV1kWnڷ'CLbɀ-V!3@>{wVE0uBɠ23-U;?E6JՈ1C,}ʃ{x]+l6.iK uM>\?eZCaFZEb|tex^;^8u7Zq'H_?PɁ@"C4ŀ ff΁L*c:*bh\SXBCίԣ1NŪ9Qp#ALl=MKav>r,ۜxӀШr;#x XGXh:fTPgI^$vOjPMUFx:Aءd2V@Rm 6"!ZĻNAPKƭ) w¹pOjW>mŞC MBaնƏ6?KnVi$XM]IH*;b%1v{( JY%nu G߾W͌w(D'< lFZ)" bRyΏHWlيQ#"7WK\ʰ0`=Ib|Ds4ճX~ӳ]S q;5W̋Q ʀvs ۧ9 [=Js.Z- ?'"{0b{wF aL<˳X!Hk"]{Qz}JKNw)|{3&ٶq$ ƒ1\L3y+TmVDrnNtŒW[Eyzn4%;3`;eC4&d=SHLD oq{NMGLҴW1ġ&y5^JXZ"{fIՅxYTse%ǃg]F>gdڝZwڌ03KcjqDQ@Iz[IѭOP1]zsѪ }ں{8K@t|sl;UJy/rjge8ooJ%=O9xgh-CnW,Qjş\()>50b+7TZ̀W*`<7%'i}S9{̸)gPVAVg:;Iϲp1+ـk=`b,B*ұ nhwT`wWC>ǚ NPϷK7 cBlkW޷&JG @VRCDe#Ze&]z&-_c#Ց=67 KP KNR.mn&4PR#DfJd1^jj ed}ędCW[ް?ݬƴ\wSV+V '."]pj {֦bD{5vOw$ry-=5F9UG[xT5䲾9 kj#3GvAWNIiBG-*׆|N\OM8L8gdcYmkX rFجPyej-G9wH9?sAHP_u:\F |PGnrOo nC P`FaGͤt s#,Nس:!h[ʲk0[3DPXǟf`" 8=! #9@0 334 W l2>s(#is5l;Sȡz] gI |n%x]x*̄z$ Ś4׫?!"9˵IԺa/p915᪎o9Z0ᄅn톸16p#=.q>J*촏7hNXX,{ EP)Q= jydfZƬͲqֶjv) wxə/xq6Kr1`TbFNeziNf%~aW2XMS҆"һX6j9e;BDѶwɇalHn_(W򰮖Ry}Pv&H5ʆxLqZ֭5bEJ7.NKΕ-5jf}3W|X޽ s h~wų|7a\*&뒇vH[1ˊ2=`\Kz6䉹xh[r^A3vY~ N.5ӯH3F_*9=^B ^b+ 2c^y)5јkbVx8`lSUVU,UIt,͹s)|i %SEq߻٠zT[^f^fWn'cwN%t[ԄVQ<f,˿6'l1əݍ"lAB}qpOfR Rpi1$Ɇlџh%:\]OMé璊(ޚӍبW8Oھeos:6`}hYSo.-GfYDK.ħdm./UTGK *X9ǵn˿\VIػsc!~gtץ0cR0rCjPрH3i2NDҧ4mл>v.yI o! W#$58,'bC Z${~3Kq&8J=Źl0,nG6^s(v;(g-w҉;xUpԛ0x. AN@õ ͿƢG25[\T4'75,^X>>&tcBL_/̧XN A??1u2W7onNUR;<쁭i>Q w9%rtP~ Q?v4 t^ڌ'`+l .)8u;t3?-N"܍}`N4LQ}9,6~6 ) ˤG?y(>=LYL\-G"Uj= h뢖rK!~^_.φ<OA ӒӺ.˵qԂiH-uU,P +ИLF럘%TD&xLHٸ5UXmEt7CTec`ե|'p !ޣd ĕ )3 BL^/S"`ڣv넁5Fcgʾ[AFhR N/7Z*[^Y˥kD9S1?ąU #ь|?7oV'} =mp[4RΒ[dNEY/r~wÊg )㴙/eG,3mJ/T킪 QFiUm5亱vɑ KGEu5ECd]_큄Rokg9T1 &m/\JN !Em4u{7JG-$܊'Pe\7Cncd5۸AB0,ZNVp wc κy٨d 7^g òX7!bƉrplZ.+g$\ zېо<bYP; =(ES%MK5H3wiaT7P^Ϙ|NEC6HX{RaOo~_N/0\J_*PksVE/- 85]ʏ]=5.1¿2V3`=~~sZ&K' D,c,k#߁K avߋCuO#KakԜ8UMmPS1۲jEd(y_F`MҌmjU!{B\BY(SOTr[o],#͊:a.͡u-ѡjtt̙S^Ύ ?PF/2!M s0ۿR9l'(-2Bxξ45t۠^!h)o%o8o~lZj7Xkjh'o)n% m}ҹZ^޴}#_CiW~&Ii_PSR[ B%ksqtq;S2UwRrJ:F8+l?\ nf.{50,$2,kŗ)< wqTT-(R~ukBO(+:sRrvDϵO,e"8 ,OE|47d:yey"gělYw<5  ;.0iOƑY&: Qr$2NC6Ɔ7S-&<IVzgAn -a.2?t$%s6@P 14[I(ѵCB6ZBIȈ"uslzaD Kn @^w9EOs* WuK+YF-83V\=;:[B$$q0h½x*Ua  e@e޼ w}P:Q08u%Œ)Z"^+P .'5M3لIjQ nBhbP@cJO>F땤۽iҹi 9;+dGTR[,{?{iF,o WeXZXU@3#}.pW Vcיna\C^<3`-txfpa 5QJ;K8|m0*0M)e?/JKK'>~JRfN$hjBhSD/}¡B!Ӕp^^p|0^T0"vLxY2` MQ#@W7iyO|q.2D*.ZRڞK{aO3ߦ;`/K*̶ؔ #|ۧSG,v41!mN63qFrI 56hZbr߄X㨝 ^>0y2H j)/GZĶ|G7ajjIm`g#yg*n=TϬ~Bń=zl+a:7Ac!V]8I7K^,Ve\2H Ie%&J&'l{YNt EmyQT* a"nZ1e{LR.4C}Й h{c@;,}P+&2/h+ -"x$&˒_J35WDo6)l[k2ӐPH㶶=wEڞ&CTyf`D[ζЊp_`MdF-c(1l3-x )F6BG55$jL4"騐0!lO|q P\tJk}a6otLS .K&H|% ]$ws=3ʌsSFO'c%@'eD_<}LĈI]Ԯ% c4S+oBzy֜Xyb*csڎ xp ځ;d<*hO\=@CI"{ ; ^;&_&mGAl<*H 9v+rSƕuvśNP^Ve~3-綹/:RE cVP'y80[򭸒/׍o~z^<,Q.IRz|J?w5[K ϝ#<Gxlʎ;Yڟ"#0jeAtG }<1~a۰<א5k ̬Ƹ;2NfZw2rZُ0.Ĩj.ĈuZ$LL#s;U܏&QRh qsEz.L@|ֲ0"EF BԡQ1@( pm:uh>HTBhS:3Y$w2{ƎX'YltVW(ӡ 4SNj1Ce.wp.i(epC;ֵ́݃wަ\9Y'!ghor5Py2l/4*Y:O,kzϕ(:i DмT MƯ^҃ckʰRgӘ,|]D0l ReZTlzS?*%7 %d_|SU\H<*]B ^1`nnDOc"ɷRvP@x2V=0zcyoE?ip cҷ,p_>C  Vd pe 6y9 %X>jzz(څ oZnMh'>UDQ$Jq' i$:]d)Ve pᒷh6nk1,)#EP0~BP)WL܊䛗ȉ:͑Nsš8 ،cرH_:4ɺ7P7_bӥ[kH]S5vĿƙU(lz#ԉKnL\?^8V~e4Ugjܲy#X3֡H*sWn/͓ȹ$O-t`meaiz➥=$#lQ(e!%f K BϚwwG4yN1A!8n7:HQzR'r!C4$ lq</1b]8;آ0K?.=Yc]3VY}w@}d4{ذB,/y`D @5Y҃0^A1! Z Erk QVڋW544ӥCzPdݱM3idͶ2|629{VI('/!t̎)zD|Vc]i.4Ji n,Ga:oCDUi_C02F}bR Xz@ 09`$8QWVe?ē+tڏ JɨPoy[MH^N)D:NϓG󢥗w7BxTB ҈6tHuΦk*׍9z+{dV< 9?߂+suLjO?'Iy?`Guܭ(6; j\4[= [)C:(!8kO6:`4{omȻjS!;. W$/='OF/ї+8(MyE[L+- 26Wn]'c]V)?s HA5M8"*ȅ)r^1dn>Q Yn=hYú ij6)|y~!}[_Ks?fIc#^Jϒ>őbzXӤAsHdo !3 :B\j{܉¯pgh(޵-]ZD9`?q1AHT3MQ{}1u¹Nġ`-ӌv/ p" 3L6Xqup3%uPniSj(˸M$:4V7K9+OSpZ>pHaJ{vA˛UMm&byF~deC~lPc>p?_S4Ý豅Ƭ޿ձLv2PFJ 1M2Kn;ScۺmYSC 8Hu tUDgXF䒕:=VF@3U;IBms,v*ңee-n;Y& h_i_';.=, Jmb1_HȾ0,T:zlp< X0J?8q@"WhȵAH9ɿ 3vB9fO<'cpVZ'zn)J7 ‘XqS}ZPoHƥ=5M~CL}a@S:'mE vgI$q%)v XT7]K%8 MZ2|f8 ;>!etVu&uuSSsiGAtZP).-f6Cn/l_{Xi䴉Bw_E}ኢ?4nG]s8is/u(6%ttɠؠ%M% hp>= _7.w*q1P\VWXoȩa[MkGa u_A˕XQ8bzirO .t?{{j%.uv{n_ZR5w!E[h~4?`=eXhSa7ΐV ݅ )2UwaH Q oj*TOh@UovMeoz߇ȮF*_nP!n=*#7StO} O  .wL_3bA`0"mTiLHXM`\# Am(U'6J`l&H{DI8` SN 1 C Ώrˇ`*i4m f w~{l;ӂS}f{]Ĕ\OxQaӐJG¾*KOls%HNlMHٴR'z&:TU/ jp,M)ٖ'׹O7yYy:{,|LuOΞZ\<|u08Ђ _Rp /kTjNny950"N)M6uBz?Vɮ},vRxC EPSf7;5iMS [xȊpM4xunɇغ)N︝1ο]2>TRK-dB)lC9{mjcJX<@v.r\j D$ETBw=9n<_N/AfmDc?% FrHBsh\5 ߭o닃0C땇B_΅&!<"/02a\(Gؾo^2Ag.\ * A-'=xYGȴqI~ef/A0Bo%JjҖuwV/(jθ-#U{:\rҪ,4̀CT$Tm'!9QI-&neױ̵Tm5HQ!AaS5<\ [/HIJDTuψ¡k G1G9.#Ow6n+' YMϩ`hYG(0a?5n@vJU1!-YB/[,,; OqUڮE1:VAy&w'K 뙕,W9|11=,p3m/{$SH;ŰW'VXFD|23`ў`Gq=Y$Y7cgx؍@CO/۸f3-\iݞqc'׵׮QQnW_w(Am3ǮgXV%>rp>8ϛk:9ָ{ve2 v &?{GPv!YnlNO;%n#]paj5Dfy[7~- JehF0Ԗ ˘ꑀHMZ=i^N@K=/qNN藭`{\zȃd@(N3(g}y6xzr?h*i"R(SΌ SݨRx%:y.J\Gfz:=ʊA~C?u1+]$D2e`1Y'K*=%b-}vVǸֺ/CT_'HY1qjtQET--/IK.dFDi庝Vο_㠷l S]{e@8ZTLP Q,N@fj@-װ^ɱ?TgfeD'Jnrmmod/JN~+$fUjˤ[p"O@|)NCjaVT"9eS!m&NH9^0C(R-YPR.e\ė[.?Ֆ^QpXdTZW?:e]g u ,ak47' , QLudFD_t9c!FOm-h I=u?UT[& %fQsĚ>76΋Ig? }A;ٿk5D: Ǎ"647[H_ BM6D {L]]f&)kUXJ=^⛎5irbJ5#2pU3P!wf([ʦ8XޥMէ(_x3C®T`C)RA `]ěG`u{.aLx@F+UE"j8ڑ't/sE]FD+]cִ6K~-ˌ7o=^ ~y}fᰨsQK`b&e}JTyp!ݨ'W_.KߺʝB08*wXbe%~ V#m¤ ug۽kΪWPl~xW>uϳCX S@U$ ٹMN]\7X$ʿad9BYoUS<_sb nJ.Ptr^+|oGP#ˠU//@غB-&θ'U H̑oqI^܎h)Lj$,3;SmLc4{1Xz7hQ_f$C\jTPk§RHsJDOլӺxGzcdb ď[ք+":aXjm/gh62tnZʸkؚs|?O.y"rj]32UHmȱ"o_5Be&5I6M; UQGm~+on:_j-;H־ΉTlVq5q#^5BWTj^Gg cz>ZkigC'4c"rZq`x5H{<tg=0sy@Jjg& E1j;"ZmB@vy\My  ޖ>"8jy(9cPRֳ{vUR|y5C1Єin(koR5UW<3l/nWRPg ɟI2N8Fb"Rʤ`p%mC~`z- 9Ąu4oá8LG*P;{CgBq$E7IZG%{x+A77dPoIv,Pvl"$O6鱯y¦1Lk b8e0pn[.k+hkSb/q\ ܑ N?xBO9CK\!Ɉq~8MuqI;~X[,rClq\a~?BFN?2}4 V޻9"K K ٍC7ެ`uqdC1 :p39vJqә"Kٴp H`%;ً_tڴFmI2. WHPqq e|y>N;C'WBV§}$PU٢3Mc9$g"?݇`-S]wp2M|AL=l8T^ӷ sҵ@TvTY??"#S'[ڪdCq&)KOf5KR ς_!|B}:gҼW65ȝj塟}3E5`zQOj eSH;Da@`a9O 6WwX]mV׎8%:#Nvcipϩi qo3DE( /3v2`")2s[Ԏ;5A$cJ̄[+S#l- m3"J'Ħh S`6xǖP.FACyu0J+qsJn܎ {_ ˑ,cXjQY-c̃ vv٧X^–ToX<#xsYƃвd3v"$]zGUSԁQ'A03֎eN#:JFbXVX {[E\p=)2VZB=ĐZC3@ jY۩@&T-vik\+ʩ=xzUV"U¼9q` U@SK}!PQ,^GGZd]yKF%aOSQӭ!#p4_v,%jkSi`-Z} @v}o;箜{d鞔+3) .x7qDoefE/1KR.55uQw Mph|Eij۳V/"7g{QuxlrqK?Bi%~|Kd~'#UK/fpdu1x81Icb6t|O^ ;֩faHˁJxt/ۣOoPev^5Ld{߀V.?rz* nRC 1LV0! mQN(gFKW%8X|b&i24Խ?˫&OdSFv>}Vv|NpW ~TX@?4Lg`"D{y]rck(:W4Bm<4Oٖ Ȱk+XtϞd91m1&$5=hh'~Lqk+T@LK5, f2~oD7'5>А$7Ze Z_pl>uS/:r:itɿЇ̹|B4(E2~_UU.8 cn!"=ęfGJӃeK)y튪?Iܲ4ϖ_08t&^ 'BlGsxhZ dAgHA%wRh.CVTҷu:V儡~~nPe0T?ZQ zK1q]m4_f)[ZBLq8sZu47QT^f' 4[76 h#(F{^gW yFZBrcS(Ht+1^<)٘%99#bw8:>ͧIa-ì׉:+ ܽ|觴 ԲߌWCHAqIOHb%be&(clU2#_s]zrOy㾠kxAO3{rߋ%~r|`%7|R5wTla*8$iP j;VkA?[Шib,ud d`ek-Mь}fNeb3z#^/!ٱxLt#>\*bx"6w2S~kq0M"/DN"G`ձ|wdQKpJspUWTg[RJ^mHw:?4-~~rc' Ir˴;Ynv ۑX:챣ҫpCm. {ؼpvN-kPJa'l"&9FŌ"4?w`lRuyBN{zxx! l*3X3nKPmJi9 )vx׆eafq~*o̖bᶙWWH <hh%@3Q6tsO$]jsN#(:.ϔABƀ$t" 7M=Qܢ 3{F s.V/V-G+/X1 /72sG"VeyuH61 wէ7Ɨ 6"qEo9^hD?r}^ՊK;̊u(u);3u/-'zmgwel ZӖ1~Y:i x&-q))H1^QJ'kYg3u=8X})ǯ};yZdZbRRsx&/ (ͤdrݑJ,Fv$ j0|d8 nAt-4`/AuKO^R ,y&MmuaS(Ͷ?K~Lf25?K ʸ ęY*YE}>Efٹ]1˓Zr*s`E" {<'2L>0p*t^Z)?`*8n U48B<ظbsVM)ɛ%w>j{Tm@&m̓Αrߖ^@xmU߀׾LW?UGVGZ@V/+wn{[41 WGEʐ}&':ӛnǭ.p?+P(/ꆗ8^ vN Vq2}RBNLe=dD }p Wna=ʟ| (լ֥*7V,JU~+eO^-1q5kC?nhk4 k~W+{ȣp)*Uʒtһ?T:T4<?o1i]Ƈ޾f*`i_0iE!g' 4}%04@i@``"&lSN'\`Wd"Jʠ$qEVԏt$=GLw 9V!嘑j +@nG 3ÁH. 5c[=Sڗd{D2kFuTs'7ifܯ׎83^#0jCJ;0$?JpM)yMH吶AT+9Fbhbt($vuQੲy` QNЃE|JSȁ(YeI#/2lsVXr+_~bJ2},e"X['/!ThRنZϭ׾݅T;nܫgOMtp'nb)}^Z4= @rTۮ1bX䌲m LU|ƇD75PB,3a>3Ħ!)rRuq<â `xBu.k"SBq%Oq?ߓ|Z.18IL#Hw6cfĂ9!h@b8Lć=Г3(x$Ak> $vE(.O r&F㰅֢\*AD=i|IeaqZ}0'5x,t䫪C liTymF<6P4Q%ؑ7Y9lEpG>͓Jeb+zYoecpsWcNqQ$ooғz猤y,S:0p3K\VC!/cd b2aϘpy+r&6UڴE]Z ^.D2NTC$_%Ɩ*I NԴMM6GDZ__  InI.I;uÒ~]K&\_~ j $mLe[Ϊ,; 9⿎afzkv [uV=/8NyIkpr޷t3 Crjk tf]ͯ f G^,Hb@ʓ&ϒLqVMBdG imSfBhVƄZj|RL}iF]&HvZ!QgZDM("LE5 M[Wc7r#0zҷ |R})d %hU^7 >--0S1 2T}6[D$n#Xvd"9Py)"c r v̈́0lSgZ0\ , ~2e0d.m–4=rwUͨ\Gnd}Y9Y|宗%a=:Z * hkJ5-]#|@Ǟ3߹蟘9>u{[ҩ7d2ʖ޴GW%ZEK&|c+a+jM87P"qPUaG*w "!x/MdQ 7db>@Jf^؅4")7.3=SSMm^z q:9E뾈X`6B='y'FygrY4јM0/Ѭ!RpvS#₦GuQ ܉eg(qEvnd_]a.lW[$NS)D)46!LAYpFK]"w Aڅ4ɠdfGWfPOa9.!W(U%rUE9M nB_U)`KKaK^w'bL(mk^SFc7=!$#ʼnZbT^^?7ԉXpI]M޻xEP`;$JK\b"OWydBۖSWy)i-}v *}F'ycd_w+2oD Z٭BO0Kf1?7 )/d:ZCPn+:{vM墵,ba{(;T!L^l"|ȾǤkȊ1A4lvT#勽ZOuPk{%pK\-49hLmU\+Rq9 ݛ/py``Akkj#c[g">k+Fg5N᪁Ͳ3a!*fcRa?Aam"2Rh5B,Ʊ}#]'^ 59 jA_!86:&2BE<'W-Lxzv ]>n?)]#:r2!WI1kZ_fD "YN{\eNj;dM1E.evV!uL5}LWXw"vMP R_!!ˋfRz[Qżl\@|jDCr:(>چK@!t;YX/-r -6' %l} {I[&eo<> Ih{ɟ~BueOsŝ1%f*\G~]Մ N:|@&͒B4:o#B#X9<|6kՑ (ɨ5au>_MfvBl*1r($y9s>~ѦgɲsoTt/PF]zN{8h_ʼnRIw\fB4ǯaXoX:.X GAGbQ"`(3DsYL݇+L `T@ Ӈ=LLuC( ŇwVWigL{ 5Ċ0` 3zcf>tiQ 6+9X*Aʾ/ǁC`WښM,뺯sG5}W}c {\e7t\$\m V|Pz_&7Y%J~ h^Ih;2Ӹwd`ם*x`v_XT$:LNf\rDc0W㶻>yul̼uNQ'hsb'7~0S:{+och"{$!O$]] i5THf-ͤ!pvGO}5u}Ry:6ʫrbJml[.TO)N,- Ч0E^AmI}rT˴*gi{0D-4Ae8pĶS 9qa7qmoU &N }ѷGčUћYêjAN[gA9{#NING d $HG7w7VP|9v.Wy^Vv %jjM]\>s3p]_ؓwϖU=OGH$1:pTS-eTYI9%P n)PX&,Bzדz܄؄)k"~&8:7=c*IxkHZvݔ.W8!XPARr.3^J1L47<21͖vSuw@ W[~z&0gF} [V_5Js'OKz']+׷Uȑd]/l5mpGQo46_xٞdЬZ Lʧ9g>!+ r@3e2o-߆:K_xT}S([MP>{]G(94`>0SݟTf;P+<6NtʭrB|&1r#^NuRQg'dt3%2fo C߫Gos y^zmUe7] m-E;[{JiMCä /\>7; .nQjé᫯ʴh E@ рHKK)iV-Z[wo^0Rg)ZH)>uF{.|^hƜ!;ptW^ǝN*E~4B_5`y놁:K8p+Df~X3W^tAD׻on-ps}` pg5[ymvihVLPAN0 j9ԂRLBn2t8m\8b t 3k{<  d]v8 pj՜QFlj6b.%~鹛DĿ+rZ5|V+NU\UeS n%C1^..<ԑc4 a4Z@D{t lu#a}mq*bz@1)o^E?i F-JER:{VM`ڗtB=旃n,x*D=a(Yo2w.(thf8.%~&A g!)k^w]_oRjؿcdBB&9أS # yweJ;V_DG3.XF70h~cf \6ņcX>ےk(󱬾J2E5?'!A'k|:6*D+'8mZrܥKaBOoIP$A!~3K$5Bԉ'q !``4Z)$Rc BhMIU8~ugA;ʇ)=UYEϏkaU5W/r IXjX||P&Ng_dLEisc6z&\}Un]Lٱ'hdT\o!D<𥱎K܆Ň^C-Tǯqc;EHh=palJP1J}.QvvckL}fak (I>o,iO(|֎2od&oix{`jΐg|xa7Jj3݇D3J'\98=W4OZ(s|h/~zC;HiOq-l WREG+8a}4(nFV>Ggއ4n,6ͨ>l_/_j 6` wr+Yd&C4+E?@w6hؑ4R:=i6F.K'<ɉlk^Xy{aȦRA{ Dt( Z wSx5ը)xqdtbzad(G/+$ v% j9`;(Whzj}2U->j?轸r-aE(sӔ 7=zyHV@cuB[D6hLP!^ 5Ǻ JJ[ f&z)D\ >W i#̖m?-(bϸ$)0{]AW_z 'mz"^wH*67sF->U}*A]L…C]"܍O>"p7ӛJ<Ȣc]N'+z-ځ%.}">d=cThhXL~쥹&Ь,g\N.- bG3F j0ҷU'ݑl~ Jpھ]BJ$ xpmN`.m%܊/ R!j\nVɉye!YfZET^^=u虧;"K@-}iRdOql3M;O5EME7\ѳkR % :Ԟ-T>ױjm?\F8%y׃N?k􋏜t9y N"X݀;VN 8$fX嶘X(v5Xchpyxڗi9#lkkX jJ@z?pD 6-Սck%2t1+t .{F><'Rhk~WK1\]>^!7mLe\YxdGK 6. OtLcB3`|nrgu}$kQ6e :fV,Ѕߑ_8mO6 'lKSģH_kMozx^j#'OtK 3;]n2@M: Cؽ&Փt;k~Wr'4{!>*,*M[}5 c t=cxd;uHgW?_02a7 ` #"_c7%ۤex&S}3Q}.KzY$+0(5BKd7͓{2Nxj{$VI^p\&B\{k;/WH0n>d_.۰+^o4sb:HЃdj=H10|&1yUP h'E*M26Wygqnz22BfVs}W펧fФL.Uz vZkݑE!Ӂ>G :Rk\43lҌ&R#/7…&DѣHIBD\u7=)^O%ѵ 5z~#9(\Ya]V݃\s>F!2$fnAHzu`<7^TnIDCZg>|mZo.QW u#a${óro QV&&b1ѺGĜ7cVru{!q/v"nP;!CZU2 5I cmy0"ڥϺ fM0NmMFRK#M[xsczhN\PJH5ND\v35{ZPjDcVX $ zPORE#ˀte)BְV>[YB~UiT n{W5Xf[**1̧J+G.+ތwFm!@VUTVnᅖz">ldt~`nhyqBrM cqDkfb H/I}Eh03Y_B). STfo|:Z 7I/)G_m7on\Dh@5[ʫ#s!O\/P|Dy'n\ہv#.wfcBP߼i>n1SFx~3W3(F ILV ?kLj7_}ڟ6^>TCR's!.hMtl|U ,cW7,t!OyR?(eq29Y8 H6vk'\,t|X(ۻ̮b,M)ZՂ-? ֻU-1RUY1p?nm"6; qG&: =Nж {U>T;3`eJ/EZYM{ʹZQz"+aiʘ ? qش=O/" O;9/V=Ȝ3'"̀hyw=DH)iY#E&\F#oʬfy8ܟ[Q@qO+] @ C*<>@vO Tq&SAZc;hToO'H?I"kU b~7As DH/eE"L3Lﮞ"1yF^%g]L3i;*u5;EܥrTPfsɕ 5&v܈ទ{ҥk`G:UM- N2bצhS haG7Qg X/<õ冚O4A6+[>K2ބʅgP}_3T_q"nX̉FIX9JodoxH\+""V^aLs闊=$G0dbz*TmMO.0Qťs4^i//?7AT)BBfFڱC 3u*%Xa",8Q $ޕ}'1-PH$$zfr돽Zj3MYŻ|=T[(c`EKٴa߹Bմ`뽨]GU 6ɽsnjƩ<=X 32 Xd|%`{ =njOYEB mɁ/ }qۖ*ŅcGs ƄN څHk5ק c[n'w7(Wa 2#GD߹@=YsHBX?H+{EikE &<͕rƌ7(+f.%9@Z\aN1?M GS<>F)}Mpڍ/Eyj]Cə0RUԟM7 *6Bk =e?O+BTp}\) +Z;m7A4bZy ^D72"Y 234zFpp*qF/$(̓6:*r6j=*)Β_tn䣘X&I(UWB)8cW KJu6Z 'E#/\fK]`_%cPd ]dQ5[>;*=š ĭأ:ۧy*;yjҿ~>>:*SO.x r7z>'_Cf(=GCsr׺j 'vPȀ;PIxSZ6C>S7!cLC,{T >@(v<,~# k٣]I]9"s,+2d0E64ȥ:Pmm7UR>_,vÌjG!>"ԴN: *0<.AJ9yۤ^ ٠W$[u3s75&hj>/R 1U~õx)n?2DJr뻆_YTdB*y"L]G(HP"0|qp-gBriָi|8iLCwKJ$6#H«<*ovLw Ƙ]k`)s9}}8:x0A&w}9ϐ\8w:_K1I]dr09J#6L_Pܮ‚_XҤAChV+S*W) yP$H"O=mhZȱDo)^htrKA%Rh_^HLFH@?@sA勉%̬>,8B8}7<|;"e*YJuN 5=*OaRKB6LΙItmc/8-so<La2lTV'NGv#/W©@}?htf{0}˙o\ KK;tZ74.QʄcH4A ʋYzkFj㋋!%n$ՍI|(9{ :n>00CIJeyaXI+Qbykʊ=m GeH%Pa l_Y?/ΖruAI*MۇKXй'Px?;r9݌m74R;4Чt5tg11l$ղ=#򳸿QYEgU9KFJ7E\Be+n۟߷WL]2>W1`澮Ciǃ`4R*l m|/cZremUJIe֩r[38(fNB,"ոZ4i1z1 {2 !oK376ؒ8Dm Rgnq-3)%:%8/ uabr]gv[$o_)^IB0s39kH2NŎ?15>:-iCpZp{7M0ɔCWBw"jsTR7?@jTy?PΞCS!!qF_Hh3eʉ[Ss e'd֌!f-jV=pJ1$rGd牊"YFLD/ߔotjy,€;z|Nvz=>#'[Tk.D:ցe\ħ}`M0[}}rk]\\Wb6)+FOqr9P4WnTn|H=WlɴhFQyQJbm\Z/隴X9ĿB(4b>T| Fp(|X|af NbBIїdDf ˰>ͤ1afZ4@E$&Nγ?3F(\6]+{4 NzI0 cws$]'uc6h4u,a@h8A8(E5j־|e~܀>6O o3y %0&V3PǂSf&|@Ô /t6f\(ߘlj~[}U'y-Htx) #59A!\@o,nOyR[AHLȊ7L0W85Tle~ R5)m3 8~IƳ&b]X6-a=: b^6! KY Kv;b}I~ᒩ}wt2˓U0Q'!v.'&Xd(őB}Vv]##-:ntZ5}ׁ"Zƕq5 ULU p ]IE1<$ISr^l( Z[;@. O$*.wEᩞO3O+Aб<@B. V5 8^ WϚ$,+>'=qk̟sU }.c$0ɋUWWVf@q;ab0,5TڗqʽeeY f) @t#ݿͱ;8 Җk4y(ޮ+7*nXI?q<*rluEy*`q<Г]`OTK*m޼(yXuxl}8=PRߩ4U⵭X1Df?OUe| WPx "$Q{453P1Ȍb$ ZSZ]8 x.Od| }TndV|upL eCvr> EMÙ<ÀV{|]Χ2Y^iB[q Gw;&C݃O%J(ƭM+dXgDEH㨄#17ۘRh}n&Nv 4O7m8$c^"!sq.74[{‡kpuC?nu2<1Sb(Z7omMzzc}G 5P{e*p/C;p-wpL,e+:ˀn0dQ~p udwPGdKeq2' UWHϢ%DgVl>=Gfف?+]{};ndTV gFAv.qEDTwW*aK85_̆IU5N'e%f}e3JVmr)El(uˍ?Z/a)sc@X']d@jLvŪM -^H@"t/w[DD!R٬+E::6a LK3ssWvqWVuNJN0öp} zj'teF Ɋ4 ;CGO u#ރ.(a4pvY#U1& 7=uqWPM'/i^<#D?Xh/m JbxRvE\\ jYA'vXr|t.Q ^rn)Ά!fCWtz+y4tBLNCwZnvA$kpn~g^_oRs~"FfKp$Wz.&i_2 4_9Qjo`<* Ȩj{Sf-| 90B1r}%o\bJG3!5E:-e[j?J9oM.JMjy}ݽv{ (``QFzele]p}`G$?,sO칗nQɶ!,l-ϩ"ވشփ}$UuI~~aA˪ d$Rm:o%^?BH{bvjztY,tB"㍬Wtqx>Я]rdmtcھ<4X[xӃ|=ri*d7GZd9Vx:T#a|aai % 2RA8٬X9FI?1oX%LBFѮ&5x9 |%(\tADp8>gq S^v of,u ŦB:ya,OMONLoMj޴Wz^̵Ҫ vrբ b 2R#[$ϹX W6,6YdwIO|~ 5mAa8iAI}ɔ I}R57ZxZ J0JXк+BUDA`k8L=MT= o]sΕgF[]Ec̑=9ᅤ5( ^}Pe,Sx~!JfK8 D.BDg}.hvyYf @jZWsƱ%\ex2.=LI$;"Qk\LnaS]Op=gxf9/E{fb=@ ul9~E'P%G4bdJ>234\GL5 x*98[ءsEhafqQ4h߭6Xsm 3ҥ-+4nV xpIYb p<&@XuqBp{kMM kK̏5Iט&\+׀ `դDp-%q%[=%!Mfqq %_CLTFt J{1R ,Hr\y3~ zzru/Q|dfDU|;"ڊ0"?]Mfzщ>>'$$">b2\|h'?~r^FOdSIEGsBۙ( Rk;! ;Tb{3lhcoSjZ"ctpURfEm큈Lx HhT̲8*uz%)Ŷaɹp˚&t K;I(l.MzGQ{ZaҐl]w/hnf*s|_#]Vo!@7V]q";!iԝ!aiMDb}(ۜ | (W773rvݡ n zJNs,{JbƝǹxBj1J “5[Y9}̘!et v?ǂG7bAǩo.-97-[+ϼ.-A oYcVЫ*z*mpM]F}A࿩dh+|':˝Z[iL]1~6Xs Ht*D޳IlQ厍ʹB MToI0 V &Tt'L~H ;'?MǼ& o5sVa^եڸT9Lg Wfzz;&ಲ,$vȀa3a3Ob*Q?-1/ͨT#ITreTst~G$hǂ/ +Қ3Υ>NEX>ɭ)B&;:0\5gv֋Yq芆MJ#վ<\&W/-ڶV-&-.z{-FbJ/&'LһkaM]-iX%Ɗf1TI#ek;Eݮ+?Fn AMdЬ({0{sShVU@sҺiy0% f5irX<hmn_-{$u@.<-s%*B$D0%9o kHb̹\ t4"E""]Ps=]RF#rjfڶDoD9*Fp,1 i~ +gNT!k<ӌ_<4aP0$j<5o:fBo-"SynAv'p`ZY'&c/ \J ,Ѓ5ޒ@ _;($'xa5X>γ/CGT_Ala,^".770@qaSQ~]Hy*C>os@-Zy~%c? " }+ȷ +GSaX,(' X?ʷSE56PͦHF7^!OXٛ%ǶNc<><'ohd.6Oa8= 2TL{ g?W + B^^dbEvU|bzm얿uQ@ၨG-:u>1#WMrsz1S{_>F[omxPzT96_l3hMn8 A`f׬ҎM3"S5g5Oߎh2rΐc<&$t N^:e @&a}VD@&'(w=فJȂ3jX@w=F90 b~2"nMg۠~xh`sC\ h s,.T#gh7[ ,іBVkvzT^Ad+^!NREO9CˠlZ_$b˷TZ|2zL9+5L e3SCǦjجe- ^ۋV忥_Ӯ':tVmRAcS=jg ƶ6Ԧ@OʹC=vQh * S)9?0 %;u P+>Ғ_'q2 E &TW-h9"܌oylˤ;Ƕ'o~G|vQ K.@Vt "ҡ] vSo)1̪ c&,Ÿ=(8 GOanoWsn_NhU]z|;L=,N{3 `g upd~px!$vo 01.es9YJ] 8jK,;qa\uȹKbP\ьh0rCOtwGqX0[HQ+hѨ鈵hXnN1>ŐG\SԐe1 $kik<+d $}Z!uuƩTQx (@v2e'_{t"_uP+ l Qv|*eBRYP8g{c}g ,onJGq(;A3ji/Rksr-Х-Շ$c4v$Uʧ67 4a;\jr4t ^$qTF^aWu˦ feMLQjUWSj*V(xO̾uɟ1Vҟȭ#UI]q5SS٫ /'CUdQYV(ox}*,LXy0zjѨjr]6p[4X_>boFVN)⅍9  )YLٺnpx34@Y[1!=^.ra');G\˼DN \NrgդǽcQ\yѺl;c}Xf'޴¿d/9F6 |m#NCO Fs!   -_`M$DyMN 5@:2{tRbSx™[cC1[Xr/ƛRF"?%Bf~\r cŽk]A]#dmCFCzm\֍Vl7df_-HuMU;O4>QB<;uˡ4kt65@L~^#Ke@YȊ1")R70'N`4auMͼ^Q 2S\{>@)TpA=]!QM؏J,W0 :S# jzl[5'2|K0k EOgSdiAQ B|e5G\ "-D/zm#gT'F-^e 6&K[ 1[hs&I!AI<{k(1Ct<wFHh/+p+/o˪)J?~tH@fqӘfRLEs" ÈqU2N#Rp3oI= 2`EoIsczY-߫~Y Un.ETMuP;1`b<`C/n s'g{iD"¨ R +˅0dg fb)Ƶu6p͌ kW `7vf=)j[m`y\_[)/cYËe-Gf:"؄U"}~_[%s8 %]R;̾g @O8g_Bcx}Q1rA}=BnKy!߰;B}=>IfD~˚L[% ы&TPoN'v{[rs3 _e`نg &8Zl:38H^SI 븡tQ.mJzs&=妲E:)>!3uxžBD<.08 \twOv ΋d%w [ P|U/#iyXNΉ e!9=MzfjE3 M`E8 ^u0Y7b97TDRi%ϲ}}J&b]yfKE{4 >`0Q"Xelg" X>"RScl[6=Ho`kWѵk#͎0g!戶Zis-ܜHӀ J&Pgl3 vѻd}tYnx)(lO,TCpڞlk'#kh돟|/e]xihgc<;Mwb<:~ZB6sӅM<&ƕN=Ejk#2l t`:/@eܩs}J~XRm C_JÃ'r~TB_g XY(J.еQ`eʁ,G;uzݷn Wш y<&/3ģZ ,0l,}R׈ktYG r7GD2_KqԆ o뮗,ETd4C"oL.וû)8PܖW ת\U#[JV%z܄[irN3Jo+(%覮Yڟ>xsb.>jhcgXP'v""!|."UF$H"`15E򬐦T܂UjIjd@F"=0_xOb>HBUWcr)t;JaL N}{yp1z8S 17;<\"<Uȸ!kˇ~Ē\W ] Ϥl9TݾAXᜟNeaW"̀r<o Uߺi3-{Xq|9z8[DT+@!;{:P{óDᛔ&fv4 uV,P7$BI[{Үwtaˬ*WYtFO2z#q:4$adz>zs>LcIMVQE|dzӈ^{%NC+*4%4bH 0~Јz;ˬDZ- x2-]\BNnEm@29  (h~pz{"T0'žz<#WjIԂ [+ʂm(ée۷"- ! %i^8VDnRn܌es5Tkqaalkչ̫B:NtG*`#H=Pv"y .܏(!2ںx[Zu>ہ|١D^|Gig$sWf%M 1xl[-6:GN"OշL2[ݹ ["УoO蟤U[wEۗQz4ﱥU޿۲ ]e&?|OIӆQ7ڰQHGb~|.tn[" ~ g;/I=Q|Tl8lם0a*R+b0y`sV΃އ#ۑ۷fU]K3,#{7ٔ[,Oyv3@Lwn Qh?9tSKdJkS c̅sO'?Ew8*'/7k2Th(9Fqqŗd79P1Ì tTUGp(Y5)lx)oFZ5!^>/tyQ_*oBT/-T(׏^Z91Y֘u"OK.ԋ,Bvp5GGW%;Q:aAW/5c+Ĉ=Xzc7?16qm(Kt:Ȉklvg"_;f#"0M2@ĤMܕ:tH4Tl]D*hkКlnf$[XW7(#1L姂&$p0AyT ^}`u.˚POU-_9<3]qwØc]5 y!;p|?RHEDX\0([e=uʋ2nmpܲ\ioE8E,%0!ƽG"Br/+"Foxx\&\f,Je#8 _N>BhѨb0H%\ xTxu|u+r:=5i-NAZr{p*A]mAK*\Wt`_MHJ~.]զ\{dA4saҒ-}b>L c. T/X*\{Z|eMuL#kE)7&>t&ߊ^_T)& /Mir~kC&F>J.弁RA0D6, `r"Dy3=Vo6^-ئ/BJ@ %,kg$ޗ3dGUCĖk`Eh8arh 8蔠Hc3ORI;hoS9~dsޚf m-3ٗ፠x!.&SFh@ti5i*+ 5|Qq\@J<*'^"t]P\qg=(lKQg}Kae,(#4kGX> @`3o,O&Y (xs1+:e,Yp%}t`l:%r Jb0h=GbbEIDGeˑ #hlG>F} PDf,{=LDvq/BV!/^]RЪ=wx׃M"Bsʲ*W)y[DхNsg{*ɖ)"mZ';4jڎ5!8^g7i;/覌҂d-&z|- n$#HKoUT͘Hƅ:$7dZx 5?*W7m^{Yoyu~g$v/2$TOE-dqx Օ;oV LY|I NfZN7̖Fa2攚5qb@bLe[/޺5EJՔS f+*^Pemwجe) @w}h *)r-)i6cY8 ȧMDK8% `E,= T~75q4^WGP&=kk&'4F#x"tE 3YRY* ošB{rO~ň.>zɳpQƘ㣵k7ZʁBu}zT׌*i}Rۮ>tyZx]|k$Niת&C6Cd`e3s ^~H/,Y 0\--_V`y1k4!-6̭!4O"z-xAu6A ﶛiT@sb&%+K'wlxP'𡌕8X+!,K16O'-f _)݇$ɕL??]VMGE~G8PO*Ldl f0,/qѐS5UwAų&TFp안]kgۘmEͳHqA,{Ġ^1$fhrz"{Y^_nU@{ 4@3p+!˧j7_upCLS }zrɩ{;֧UMH枻ip@=N_HF΍;`M_^ (~5F<+7Q&!c"PU(]nagrn-:}r XDmD=uabJma>ܹFYز D!fdqt<)vF_jⷀ{0>KAH/n@fPBaN-S(%ܣ!2/}ZBذI e4SiWW?ژ^^”#_`۱A( zpTAN[bE 40nhD/PCvr=ݏ坰њlljPOކڕVkn ~sa+AG0Ր(@!Udqa>xeic$1;٪6l~AGϚ{xaw)5Jx\r,qo#m_CBVo AfiC J E Hd͖0:ʚ#REs0:u!Z h"Z0I?Ewۏb C- {sx"ĺqkSƠW5+;[Bh)qG7c=qUwP"9> ˶zcm9:cm<|?a& ׇp@cCN**OlPu_U XeF0όfEQmT]p'{ yG"K9G}LDxk_SDŽAcC:~nzӻ1P?cL;"2BS0S,#vȤs&=*AxoBRV ;Q:؃rx*Q݈7Z:/dt#*I'GOЫړ`Z%6B|L?J_4gtOT݉P۶gH("[Mr )*1ՙdLYY%ERO6S5 V0NtshrAVGF3^{{{uy< iYRp?8jv}RO8WP\ze[He8?qM|BXNVƆpG&vq_d 9Yvkku0 _߹GP*TAָ깔t(oDs"_R!K /*~^eO y~KL-)Yb%!dvm`diٓԯU՚֦m}*//Pd9Fu'7" Uɽ]5jzVYHtP<އ}1gޣDݾ< uܑLQHQ*h3 RXhL>Js|ۂ: /1N~0X"UTn3UhC 꾚5;tCiG\b`7kmGO.qZ'[;EvO_Qc`.w:~gPf!skzL7 *4I̷6v6t(ҏu&o#K;[R.AҀuۇ^ 𕊧,vt}ۑLQ+n7ʫeU8 ZCI|"p(~h גOU#}Y1 ;~@EJԡ^D2Oqӱ\7xpLtYVPd]B ֱ*Vذ&S(e&3X@;ų, R7;Wx/,T w*}ӐS rGzJ~mE35 hV_VE̱᪤yEJO}y79gVD}g!?N 0}PoF[w VfGPw-Vn?1!Gtlot_UٞhlyrDUI\}+}fC  4&.AO7 By/{xs>ɝɖn l'ŧp*ua7 Qo F쉘 h^ͅd₅XGڙ2SI,P*gvnzC(Gi-H5tcU>rNj=e鎭7>V GNZ:a5T_^TjbSs0SVӎaw"1Z  9h՚d R5uUqʰgU_}Gf+r![ׅkPc $hIYKM˦5Y.#/ٷew6[{:[r7%;K&LndP_ IXcI$Ųf u2=NFu6R2S`IRy~/[~$<*G${YA[6QߟTq.TI=)}$@PQ- !]E]عU F3$A)ԺT 3DDh@ W ַsP*) 1).Uį@`.쉙U<-gg#U#THܹj[EzVAe$jUkUA6-43G%{/,yØD k;@GV!Y[A6Ʈ9I2j4d0Mah*Q$.00ntO~I*ǻȜ 4 M8+5X5ܣڬդߌ#m# ʊR%f?ME8T)\&P"BZV}ӻ1tq Yn9f8+a( 1h9s;ֵ[-\Z`EJ4~DF%Q{7NCoꆥv )='r.9E8:Z80 ݛQ|@?ح( f8ҠmX[A *^ۑptDxNU c ]DU~MUp߿2_{Q-> V!5HRkZ%Y!՘IFS"(3;IÃF.+d GE 9}[mUt^.`#u[P6dxģB\FRG>ֺxi)aSo`]ZDe[nG67fo}J HJ[#f5Z E>~LC-Ӟ4LS8 C &VW`DHe(պz߄W1OaD C~2SedsJMFRf4}j̚k*ے~XjK4~!'\uD45Oܬt.b/ɨ$PjL"?BN&J3^iO]Rlu*Ŝ ݃wDI/ݱȔZw |Z:0;n8Y)O)=ekM1f;o$wz  UfJ! Ed1挨*o4mrP}fc_.Aa,>6YHWе4}k7 ~LĊ(MypVT]@Drz?\?Z/@dG=]?j3@[dJ?'wPaYO%Xoj ګ?TO}-^ m, Jd:yXo+B1" @<(FQ;wj"aKf[`C=Ǔv+j8â3ap,jiKTULQXXܦMI N?[`\eij7REb0pGݡ{Ww܏q8;|18p @ "R ^%6|"8v0\!ח+2f$ra1.*4B, w悞smb<)FK/pxȶVZ@KԂ;UlRCNCrvm8- 弰aG(6ULs|d{JkխԸc'a?D/<{(@/KD]'Uj}B4m`w,`"a?.3mKBq¹A4%iCן_Զ䷟Dk{o; LŢ9b<,4ܺm *?'\u֡UɥYkD K"J~ ,hK NcwL"MUh"͊d[ \5c]3HƱO圁kHEl`A^'c;5NIYT@JL4^jVHwGoH!Yݫ6!l(xAc6\d`ei*O)ޫmP6gRQ8-(ͅ\V=Y%쎲'(FGiV]YfqqB_gXieQ}]߃akDKA-߃ /92ZptmLDXÖnsh%ՋR[0Ѵ,aM1DAJ$]gY)9/!]SGG2B@r߹H~֞_ } T>޳ g^Nu ^} #Wzv9} }G$]BP~$-;# !ꏓgn6>-+:=HDWߟcoq"9'=VE ?n#hBގzi Ș*R)kwvV #!7qLu"y "B Ez":"tR:V_:fL+ 0;$xvh8d]eOD{(mU$"=!:%IQYJ Аqȧ;xsybHZ r`a*:>mm >&?ْ!]֐J1[l)`)q=L*5K6ۍ۲uH.Y} n-́ gX WȕgJ"bH1D+W NX'.ص֍ygr)y]^'07^xx2Dz~:i3){8}w+!(]_L ӎ W?.>RH]M6>f>l l  &yCJ~VVȿog>{ F]]WJ=z>y}GSvVdAy-][(J-&r-zmk`d4bI?ȫ0DjV(IjU RoKKJDú E*=JZ^!yb:c狽pBa=s _tPV׻ HOK@U)1ViVx T |+Sc5%iu k &%$,KdmX߆D9y+j`6ºݾ sD>qEbaw6ϟ^Bm3%Yšg)Ϗ0߇+}ӿ4stO@#gqr(27Q{/&Zyë N~lޒ^[Y>Dd8j;bZ _7e7"u 7@FY+weE$_:fYvv}1YY)!46E>%(;3ǃI\^ʰBzv-bFEpNJ +pk(?>dn4,ۦnɖ/->jUUCdOű]~̮s*bkvX;j4K (qTW=oY>,J -;63nrg!ai"N$iKê KVR~t(^<ŎF);pnܥc ]ٖ0 Wrt[2D'Wwu6}J1Y9< R7˰Uq%G_\J,]wV><{]F  9GjD#{/)uK#fm:gU귣[t.g$|(,dѲSۻ< ky+S"w] v.OA'\- V[ܐOm`YL66fu@d:X.K ,h 襓HM=:n /͆d7 _!q<u޹ qdTSbej=HI} hڟ>T7rd!}slQˠ 8L]Kk' svYVlH5|,P]hL 4l=G=H'͔>g  -'uK%,ab[a~ }Ȉx.ܢ9 2GFgS7" 8^,CJ$rIND`QU.u 鴙='|}t(j͓oo`/BYhN[O@j\Uj4o.}&ςGqqcrj;VF}yrьR5{[#\&5J<vvA+_c~!=,\KGy7Pٰ#z: 0s8jsef>+gՀ"`?c5wq)|W15r<(]u̎?5@RNuo+HX3(VuxIj i:m7H>l$cU3 c;iS<#V@NyZE->(J6ru#DRćE X/b/b tGu-?ݴC8N B1>lH]2`|H%˝Y/s:4Vnsu87uTTm"78Z&Ϙ3"ߤhAk愧2&dMB_sO 7;K#$yr4ݔ)TE'F,ۯ-h^L5@Vq%]=H-zꡂe<߫ ξr{H 2\'SגEJfCLՕ ՏyF[oZA&[pi9~:9T/w~[]HW'úd7^5bYt i.*p#6LyMD ]A0 ʛ1?nsxȝY4:Ge3a>~Kd Du̵ό1~hruYQcd!rB6;^-3Ő?.sw|k< {ۯquh9]Mb}dŠ6;76e ;t%3pTdv2PjQ7wկ}BёZ؏oV w+o} @~XAvh&Ǹ~ 0{f>_=׎y R{E7ਸ!?>j Tma&#_zĜKZ!{VpZWڑĚ~oY0\ ]8j78kl<ǷGGr@L`QaWx\4R5~3yMNj>SƼ0ff!C%C: ru./St ߚ(6&JT{=ᏥOd:LBFo_ W 2 _O2wtSţk} XNh eۥ dwZ1u+ѹ.J ^o~b|T@6t74'|zxtѥT;ey38ʐ֏=~Ԏ uBkckӆe8"ؖ;ÐC +əf__1eZө~ Lf8!5RD{2 Ɯ˛ tK/YK4wM0= %,50Y$+G Gă 5Юtj 3D'SB8¥FɭLk7;W1ȝ[ִ{W+!GǼ |p>\t +v:_9˔CȾ$YsoQT"mjϩCOG"jg*8vm Y$4O(, (r 2Y8P3/6)&D5gѲ2 G ъN;seǔ+y WŋpS>UFPEsȄw75)ke Y%jJѿ7Cq`AGt9N^/m?^8;ȯE>(~:ug&jio%@${˝?֔4t[ eo ɫthI$ѽJńO 7jCb;Z(48 : Vy#^B.U+aVgį jNq's_L1ʛ*=c:.8% 44Iq,"5 zA¬(r2İ{ B̏ԝoGkqtɿ;1̃ȧi ،lp_'D3d Cڄ] =MKn آ1ޓN;8K\T8V;n'85n? V4\99|c2pSޡԄU_mů{s9ϬUj J;d!r%T, oHA8t z"6sDP\}[91,.Itu9>ʕu|ELўH!YFc_CkNs%?:{`A`$tR.Dã Jwϱ,q+3D7RU^:v-$~&{:)ͽ5 k*j(a%}brg9o2>*mkga+zd8p=2^n"pިzsk~~CB"/BpWP#⽯TgՏ7U^pXoO>xhf~hdt'>v!XA#l0X] <J2=K;x7u`v#ߌV%8.suiȗאe :0cV NٍCa TW3Dx (ltv藨箘pwNxn D9jI1!\\*󳲗[ 5H~OphRۿ2V!a8^M6k\:zc]:&չbrWNsRƔ¿+v,S[Ui>|»˂SrK[xIb[C.3R/pːYZ0淊Ir:GGv)M*TwCgxa;OD̥đـ6"U@IC9rJQ=K@Z7(=( s!w-"?Ŭ;+W] vecTKO|,tɰiOͫ q@aE95r9:Xbg9/e~w=VQmDt7f6XJP D+.so#P$Kxy(x๢`By튶I;Ѓq6\iV^ckyՙ}쇼 7 RhّB K,y19HlAbf>FG W>{FgEJxf8pqբŋI|}P *L#p6)]LxU5b^EM;cΘWxR`Q˜.[#7&IaГTr_Jd2V]vMl?΃t#/!R6먌l趖O;Y N!Z^<sePYWs8?A'iYeD eK , @ txYQ]9,eOTyC-X0ٙA֋C{b+EρMcI]oCUjX!Wrh!AR9w;=u4CE fPV9 ZBlC16aeXC >tZ^O58V'/) PA;G+@/蕠8\" fOq]{A\1t,2ӽ% Hooj>bYmG.A.%R*+(b\H[~#))jѡr㧹h^Cd%y.>X ZkiD=s+ewYl/p(s3QHwߎ)MǬH2<Mcᴈ <#kts(ahۃK_pnbW3%um34 aNx{T xu6oɊZM#>\ =a9LUP7;:E[UAnhHa颾8@pLV8*vh2Ѵ l|$u=e$`5K+)Ʊi1(fQ{V*sG %dbsJgx&Gpb:,jGذyR5 Onx%MEIff ,n^Zet_"+YpO_UUǠ|b0'z=jǯmg! uY m0V~28G|(gE`i$&i$ z(20҆lٷF6o(wa%wokϳVy76oZJ:Xl+ ^lvH>,C ;Ox80/z4 x֦T4լE:俜sڽ(UCbp(O" bIs/ & c6hhA.齗]"z $ '4AzAQ:g묹!hfO{li#ӢjXݤF_k;2)>D\Zﯯ u]X!% EkIIߺgW0|j n4Lk{/?WkyT:^ODֵ9@e<3TxM{ *W'E8DyPeU1< 8]g[׸`*y"զ1$,4p!;y7(aN|Xk#vb1# `BOdo%(x8Lsw} x5Et8vRm PoTds3h'*( tt>}5Օ)0J=ERo){A]&IxC[wBѵI@^+(vXDTВLs"#)%:}N2@oj_BiſDcz$WnvJU/a^/^-H5h; n[p΄&5T}xwnۺ"[02Rh .rF^ !L^<&P8QV;NjswgEqkDmuW&ЉOUl=hfl9lZڻQA#yD($Wqgu%ѝ #l /$ a pK}Aflb3:J帳_ɮ4L;S n=vGbSG6jt7=;Uw(x2m@`\@SU5_krHۇS"(0Rg _4ǘ *7Kt}ܸ8~m`o"hކ 9vwg_XhZLqtp)#iO/;*EHMbC+ @lMښ+ޏ+QlRJ/f+_yZdGLS#vj@i'Ѹj=rSeolsh~Mz/%Rc24c\Ńwy E& .@;aōA e-,v[`ROGO>"pvx7狡Ȉܥu[I#) L*sMN.B쬚IqF2n5ȫ]K1CQmꁋU$ΈT_px(\V\W]8͗>2Slv1E=i4ݠakNT4[ʟTyt%3ՐhWV@,7yRLM l1Abd|Ib4q/s0^dv_ic`Mfn%bTOdUiŬ2)I"#NHjnp͙#%|]5Gxa6@3fӂT'21 4F>kmVaa(L vtD:4L8 #\Ĥʍ*,~LQ:F6:Gohыa?UcBJieI*i ٲ@7uF_0B)20-Q~m){&N?a sQf,zVS#nLBy;?x!UG9.,_iq#hʞC;քWe Dh:oqn77Z3"݆ r9Z{H׺Wxq:*bߵ8OcyEmɼks:3<{M:e'Ffc VOj 28]-a//'yK#{W]3cB@wYWF٦XnmYUetë˙S8i>Р_Wcrџsp:=,>a!}Dsxx##v Yyt'ӝLJa%t;,_8KuSLKAg;F6O; ^|}k!퉞ُ7@i6UmLPj~!&H^Bӽ!tzl,nE[,BnV[ZDst8}#5h{KpzYx{ `\m}%aUdhwAu@31e||hH yW"Z͔ب5xi`W9?%c\޷ ké'5K5&APDD|IkeRڲUE{)dv+~@8M ، qva z#=AUD(Z,f/٨-(~,ɇO[]~@4*Z˼JCBX7xh[S(fGLΞ< ߨzS?}/'vq=+T72 Z tk/48rAmp|obihQD6![v_\qU! 0Sa+OY>U:lwI2Ş *QFQ>q{,Fvt5<ʘ%ud^:" ?A*[Y~ 5*xQYeb`'"eLaN\ێ0b?&ZIwdgRuh }R\Dt'AdJSnfLGujfzVTy< TFp>lcfͥ;pr 6k]h'>{ 5<{_͎텛) T8yaٛbW_VL* `I^um_uY<~l[q"%1CM.@P,-Uc"(t=/b"ky|d$,qk%i&y]#4`\AV>IE%rFY|5iwR\̌Dh4.ǯI=c0u4'/oS>[@gN-X UW>NheGg ls}LϪdD}hDBVY$KGQsVgIW$o Ξ"J_; '=1>}H>%{綡S657=R=Ǧ^k<9m ' AFC];5GRJ'12TXu"xQ N0{^ٮ;Q-)7 y!@(Am*d; /z%(Y#"<1J@q/6B厍_~QJ-!KQBe C3&y2o%8Ha/=n3ʨ]O_ď q{Wb!no͆A#T!rF3חb +WS\sWI.u/)6XOsf]]"\D7i6>r6#nnePMЫ{q QM+Nsj˔%&͍2mm:ٵ71c]ca%@CZeQƒDsP ϻ6uo%LLJ~AW֕gQ eqxz@׫Jq_E f?+.Uʲzc(Swt"ۀdpx{ttޛʃbz7fh|;XEAWF3>撃vOJ3Bd_~JT}g^]W#GIEa(ЈPeS'/8dv߂##Jȅ-Ѹ`F952ֶ#Sl{9Uo'=2|pbcL)s'f 6W N`lɊT}9'f'$̂I_j5QZPH'k:).`QZ.T؃l!$iTPߊɹvU^!1@BA}*ߠ1HŤ4kw3 "GȖZoGyM{hl3{ݽd(j 39IјS8_PoQ?t=?,Yy=Ԓ&"%Ӂv TcCp+k#0nsNAY qU2;j@hkDoR{%[;RHƒkt+jQL+{.I}C5{;dεv9=3#+ǎwVj(19c_ʫڣ2MIإ?^Lo~ cR?W0fbT ɷc`V73WYE ']A}v;;V/OWZ1sf7CѸV5+zcդ/H}Q5\t|z >#AIE)wCe0& Pk#Obtuwؙt?wn&3:ŝ&ke'8`1y O\+`jO:$[ #6؂F=8^FDo͂J9]TEC1nn!AXu9Eba1j,^֢2„Fj rZL,y_!1J+kP>^"%g>d_HDī*%@`^D!|$^OT&_B׃o$>o׭ (ȧ'UV[@ [qf(-v3)h*'ohΗ8a JަL@mE?˰ tCw|6W `a^a:3̌L O'b,$ ̝7J ;YǜɼFY%L|my8ǭL#[db%-a1N.C})ۿp0<\$0|X璊 $\VsP_0qDF9 %X[mY`H%F@WTez&X,V"OI0a*@Gqja] WsROs L]kX?x;O`qCXK!QQK5PZ(R29Mk\%6(2襋_:d(Ws %;ãh;vbN쥰 4Ytб뭻Fޥw,/Ok:Yy" Vj]kOB *RG<)I-W߸CZMNfJ#Ccu*l6 WwY\#/楦ݘ⌑P-^0eLM!9wQT)8[*h-ه,۪$48oz%n42I'@Aו])GJi"UnbS_V?Zt!d@6V^1 P_dz|D )& * 8;ߨV䀥",B Û{°qa╬w0.M[%tC3f"*)vV N۬ AX6w૏()>`[,4}zr2Ujqp}]1uZWgJTbUᒢulɿ[$œ7 JϺ"J 9Me&U13t UD!6L»7UALn=qmi`ݸ7yggRY*$["s<5̠hU'+GMhci´2iܯt!/>N[R^qwyT0AKT/1E " LƎxI_ gU?ԏ8.9}L_/iWrML5W@x9KW, v(x7W nsښ |&C#5s_i D`쪵填Z 7RL NM#B:.p􉫺]ܦj(B=b禮fH[\_. DyP%uGguLѩ.FPzAu5U>b"wf}3ꂮתz b\bdCTÒ_A+kC/s~l?t\gFC7fغSA4A0b'*NM &Щs^0VqCJ ́7m8p0c7[^Cc YcLKXe"dTis;5C[lLpj] =>~L$d^t r\ ~J߻ .*\>V//;8ҩjͭ]W*Ż 8ۗ#啇[$I2]&L#Z< 72&*GM1.sJ-ncvk.>zGtp+J\M`MS[C#E,qll{ÉНbpC=Mo~&*XLsh)a.Fs|W8^[q;p=gؐL=TJ">k+$OU^7?HHuM#Va;حNL)tݹ*6Vj" J%svtky`/",ǻ0j:C7^j$sSdn}işg NJ!hEPˊ6N[!u syГez;iiq$Ͷa:/U{>Gq+to&2^#\ޘYY1|9b˯dxmh'CoP lZo˜/[+(Uvr7v d: [XhW̷5Wӂ%@ ';8 cYsSj|z,f.}#e}4YxQkBS؟\s (-֭D[jJ/q/ᴞ0H`o*Ryt^M+EL;Cpqj\7H|h&&&+~`K9B"OoÏQkDG8?ΖFzgS DJ͠Ra1KݰT\!vH ԏ,y8 jtP*JHHѰyIpIףlΤ5 @PF~&R(*ɤ㍻A}y]1O5h^#Mz/(LC{*uV)9GʛjC;HW,hrc\V}?\1h=˖}*54mG v(-EyCI.%KR:>'J3z 5Qc$O]gAn`6X@#}A:{(v)wҟ[N~'))9tjH Gg|Nptv6s+:XV Y.m ` ̋qv*}+?}tT} leqIfO1Oˉ>z,E uwh)twJkq( Sx97O3O9g 8_ir-!*8a[͡`MLӨVՠ[UT ll-]!nA"|oyQJes"f>##wEK\~HSeQ7r7]%Tn]";{u_;Oj( n>b\h\OށˣMOaK N.4K܏H$6vM.XS = jQE{gk}.1hFD+A ,+4?CO{l_u r5&fl)۸W2~::~' `tIxZ._jAk?萑-rc }幠dQE>l}-#~57STs])̦D&DrX0:^N̍2 ӷ-i jcIep) =;>ee\{k&!YgVE $Y_Ns5NlD5moWc-WΆA[ut s bZuKʝ˳cA6ԊK/.;*MLSLX~"ޞoAf(}ϧԬI!1 Lrogk+j8(ýO5vlYV^e/v"Wj%x+`=Ȁ:hF2/9YOMx.ϊF}3#x"@⧅jwegNStR -KU5w)^=t\ÁĩjFT\OΝ6ͽ?Y˽%Y̫p(K-hRt+Ka^D֦}}i~E~BvD. yv0[&@ڤ,;dSyU̯\䯄ư`,-C17bڴd䓸۱;'Dzq^=jMhҖj +X7^akbCR ~( b!?T.?} | )>d4*aeCU.n#YDI{dR%Б|ٵ.WC3vHJ1r(JytbC籐=sȐ N6w^ ؆YM,czAɰT/l}cGQ]" A9XHB|s}M=Itհ^N _#?F1J$v .ef xݍVru>F`:HxT-c{¸':S k-̣!۷x i4UjxEeW$a2 4|҅@b0VhG, ֽ9A :걥'ԂV쏕vŒaZޝ7?JֳFضcYJ]=F͟Ɲ[V?Xz%r l|фvmUjCi:*cuO2۩V1o?Pr# -Z̩4KN)(iPp-) C̖-x5/fH1ӖD=;/PZ Z5Qzݔs.M}ԣ8JG.5xeމ8{^z'eT,m 6H4~p=WFҏbF ҩ+]O<=i}blp,2mZS O{A_~=5К]r"e(]zlx/hRrRMNaWkכ.,;i#j4(n{]VLNMH%Eнx^k"D蛘`>@J1S O͘RXaL-rH49rՌ׮RUw!vV~*O{M̑JvI**RB;EUǬ~]kZꋬwfDR#ᶢΫ&t͏ =mlEqCxm=.(fo{Aa1K3,uo1(z>!hI~נ#^/i&JqHhmX;"o)D+d[[*bU80k0)lͿ) y~FPٌ 7ʮ76+v.ݒ ,QHٿ}я$GJ6S'6|g7U߱cYP̓HT2ILl p2//ט%p-uaX{{Uv `"[955$@7XW􉳩C[q^s4}TZ9S.JI(M إ9E H `/;5 VEvut͖X< OV(:dv} ۍ<8) 㰯.?伮>d  61*l@MZыUhN3XX *4F_kPe>ȩec3{h})8lƸoj:,d0͖Sq:/&VUcU M9u}hu0))[hψe5<|sU&g )>j͹܄tdowdw7=9oHB귟!+=۝9ihL(?$=\)jÑpTP(ߎ&1#?\&cq ق@6\ƎTWSk໳x2$PbdQ]<!XN7"P6A)[spw3oLj1E];v߹i*W8YX.UP4ok]0\ۨ".\[C(Q_VJbzs]g,K<-{EmQݲëⳈJ{I5#DA(Hڪ>)NIHjɎ`f(QVւ-=W,>/ʄiG'Y+އY{Hu %I:CdP#rt óxm$+r񵩓ƦKXwiݸsk/oEvO0[Ev9G2Lo ԮxT'BКҼլW#c@,xxa$?gBH&A+[͊z3: QsJ\s)I(1i)?n5Q4&a+RH`=F+U'DBo푗~jOЊ uKQ\'6n3prhҵJY OW7klJWOFr$Rq+oq c`Mڄ!^8`NpM1+cO:I=;!" 57劔:(G+/+Gh5ܛG B5T,݃?9 T<."єE7AeD5[>{ I ..>-h2eW*G8NJ~Nu?fZY6)TK"^K\ȱk-&v=0hvip8,@haOĤ1 3bCeCv1#O^0( 7krclz4ſL±2`y l\!lǮP%e:Nke5~г%KhOug+@̌r{1qAiFv!MZ~C _ps@~kDa} lL rd~H|ؠX]Ei+J\񨨗1ڀkz3  eJ98y-vQڀP X-2 ŻSJUie 0_h"Բw|iPK\U& 6xa pB3eOl(@ @h`v( PVW1k'HϽUҿ` Po?cQ$$g8H^[Ѕ?`+~X!$q]c2t.UTuJwWp>݋ C Ǒ O0Ke-Yܗ75@Eޘa$V}G;Tfpcȉ=&K06r=UO]f"v-y0ר%3|7&rH6QE2u~_cH#Eeᷨ ~Y?&x-Q}gd%ۇq/`xFM.KI!Q3H#J-O&*[2+_E] TEkxR`R.}zJ66Phrw}t=%,>cUqU6=Geh>l5V_ sX d,=w-|X^W;}rb~jP(xpAlܢ2q˹r5d2^z!֙,YBTHT B2ȑ N]BjWV)T!Lc2=un C3n/R{=BHv5d2 ".é~{Z=gʋѨ{ 0aDϤY/[K{-z2T{B|v/u5Z⽯8g|'ߡSIPm&{J\O}cbۃ?ѿH-)p܅x}2%n WqH:]=+:'DjxC?6`!D9Xˀ{ A`EQ[u^dbtv6xwܦ^dnc9 Ia Ai 2"vqd+kWj+_KI"\UeeKAC>Vm9Aqfv/H] bUWIԀ%̿JBsj,["Wҭ@Xo]j?YP()|ҒlOteڱS)&gX璎`w\Ywk}lIWAh2TLH$0^7(%fZfCۖ/R s^N~Cg0hnFb'RHe3lBZ܆3vb]u)3\Goz̽嘊71_imn'd./s~N%Va{U#9;MjS"K6%&2W߫D"TQZՎu$k@ocO,:(Fm)Gt$8|3N@l,IDc%=lHf>9X͕ο0L#Q]i d|sUO`NAJhREN}R%_`;Ag?;[8J'M.%=r>Dh-i-}B f7D])/_NfK`` W;ŤEX055a'pFUNB ҃NI4 ?(Fzו(`/z'οHA{mD2^{!+U(EPpO$:jJ+C\ $bW9ԙ[Dչ~vݠxP S MV"S#=??Vˬ_=]ZBxU'뜸谺\Hiqr[ 丝 dFCzV'%AyAn~e@O+0k̞`/6yYk y]#|#X/ =?Y\wӑgϯ] [`>L r)PfA6Rk 6~Ep؛Y%D Go˨@ko]Cir;pDǝ;汫jpx%qDܛ\C0lFM?G njf%F6.&ʆ߇mb~sR'0L$pIȎ(~cM;$2 ;SӮN]lMZ֓~Yw  }Rby#Go_=W`Hvh;6 PO7c_ C0}{}`LUêo(H%OBB VVZMp֒de\{z!1|v-Bm4%#g=OT{,EW ӲEEĆ˩pZ4vuC3OPB'+߻'M>Юu ,aQRpDD\T>ֲ@=K}g 1޸xwϛA`:< I_ҕNkF_Kf۾qaXX)^giuS7_)N]J6 /W}:.-q\pz`z5MUmF!aPG$=wB:m,fgT_{WfN{dx;\(,ΥZIh-@.@Vq[Jt8[ ोY!+ !CKUu /}{8W~wH<@䳍8kZuDv 2Y*']t"܍6 l̜0f8w' {>{l_3`7e#z~P^'|.R49C 86x>v6ѱk$+8 vdJxyt*=z@̈́upKLJs6U9jK$#q^e )EgJu'!su4"rh!b $OD»J4zz};l@=-eQALpK>JE=/@SA;(1Rf_7ZxJʛ#Ol!wW`v}b|QsqH4Qjͪ6~n* 16FNc~&OPE^CwM"`y\oN`$iە)NrRm7iZsyh3G/L nq dĔkzZ)6yn,K<^ڰsҾ(-K_wKHx@ZA(ePewewbW{CeHxusT짚sgOVǷ4(eާu1+m:@0A_2f?Ai{+0ڨhB ]\3cA ←hf\&:Mk5.-a_6s]H9?b3}XmD+FKb#Az32ƋשDGe GIvUYtq-L5oV-R"ET1[D~$WLW{EES7 )#^?}NK 2S \,E]ܫg f!`=\މk畒^f̽$͉rIP/Xs-TeT(/9l|e*Ј= _`\Y!]Nx'Xt:9"u?NKK&VܫҸ{y\GW.yumqE8 =#="KM ̀~'r++޲0LG~'QD,v5zS6F+8a1HcO>zN/TE 4'J ;-,1 )/0A9&]j|R PcBbdҦ3(x*[úb`8{Mz| "Gp 1a}榢`6/VzlW5:$ 31 r%<m_U2|#6NZɲry]WsSD@lVӦ`_&b B@9 r7.ݚ jȔRleNB7(NtW} ч(`ꖻGH玈Y-폈!e[2gnx QZ߯0%I#$ʁF9Xk2!Fp ѩ9Y7]br|H9O (EZ uߗ `+ ^0mrz©k+u~n%Z͹<#(;A_dp|cۯV#=) ^ >=:? U29,Hc#Hrm;7&V1Ə5-%>P`x 1T{vV9Թ*R=~(5k- ~, 쿢LMDˇ?M'_r> > F\8ԑ~1Qobtެq&Igt5(V}ݰv7YT-$x F/DL [Jvwu;^v~!C:u#:EЕRtzZe( :mi߭:0La¾OHťIP*FtbL}3fP"m=Ր̄Ƹ G#Ѽ O4glNٟ-dSZXM{@i}`y@JO_8DmJ3EMq/{zJ&Oq䱛%-~Q SbT @N 3bNJs./p\MrX=@!aƔeAWũHݞeo ?ZtՀ6ʂ1Pކ+­u׮Ϥl oI%F.':ci1ޜ;*8V5L5nu@/u{gA%Q?S4D%!cK9#@2:m[ǛV"#OʷhJ{wQ'܏LW#;  o Q23PIQs_0~9;U|uYhMe}’{.$$m[| 7eExwDmׂP}j 7p^; ;2"e!vKWِ5~lOhcȉ">Q]tLhT9=ʬ\h # ΤIrxZ~V]ͬ{D*md[z.t݁JsЇ+:rCaja^ `7%I. )d#dvj(r`vxs frW't}E*|礡LU7.7Wu}DC V7͎5i@42Z_wHP dvs*Hq1A jO^yU| =7Q-a Ðtlt(a^عvOO ɂ!Ru&w J0<#@?#Br!Nw{-ز+**NF{o Te[vDCkD9jr1Ff3xR̩Y^ YPUG@o*)].%pYkS섴hRwU6}:hbySUS%5=zEL {[{CI}W 'f.p~5x^{0s*GZm8 K#\ڒݦ"QPU'@*h~FibBCֆhK]_~EA4o5-$J}9gO=yQбLҕRpXBMO~L)7Cgs 8LOuMFǮa$HEy} (ӀNp)xp{i*e;2Ou:m=ZN_*-o4:0痕qO :~8bE 뉝ul-AzY<é&DTolT2tRt$dyI?v"Q-sl9&(X̼\d\wqH:0Вqͤ99AwbFΡ~7wn[ Ma-t%#0}w %V&Z$uʮ9T tMuN(e"rr+lI6߆mwu4]0^ch'nB+tT"sfUkŒuK=(;A Ŧ&)^WÊƓ:SFC|,mNUU\a|?02K9V";5Ӆ6ݹ_:VZ4MMgdрBup,FBt߄T KDg% $IG .4 (7F$Ղ}7Gfz bgBF9KegF *QNa}6G%jmU O`bAM$vQ{uzdU_x~"Ͷ8%g['!@%TZN"Zw; |XSow$;^yd4G4UF@z|JO geEN}\Z Ua"E ZcbiS7/,t[e2 p|RQ'esL/C]7&" ^1i){^O) .V8#]㜴Lv^ܴm2\pq8pߒvm擫$E+ uu+޾@B[E1t;>uwj_yd֦?jR7сۘ{3P_bB+#,+쁂) +V dHjp*o?`zW6D¹06b4'?ڿDPDNT8A?4LK uV~vXpmjcg$و:eR@/-Gvt~FYe5\=Y%`J>j}1\OSmzztPmEw\/1Î59Իj݂̘>cR^7–RlXJ*?1ѸoHz43 #E5E3IZb)B<@b'VwJ4ygMQE܎Ys@L)i$G5/0nȆuytl`;+F,u#~ZyzXJ+~Uc5hm^Y56C'C 0܄S!gL<@B~MG?BhE"M ^bty-.|3C Dت 3I/ obTk a|}73uu5bP( NO,g&io5xfryHވ/aHj@-̆BzGzV\/M?0 cV*s|,zo z5c.%HyDG5O/BQ"Mwc囯seW Nz:Lg>Rԋ o8e2%"pQ dq֦1DLÄBjv{IU3'B7[4v|ӐFm:0ߒq8 4}gsECPiѓ-EcyBY,׿CXaE U܇Y*'u!g'E y{{>BhhgѶjjeܺ=M!XY2Ti 'p,< ݟ+_y G9vow`tҽs7e *WHզ)1QLq0F6%Dh5uY6 sKvoDz Dz1%HdUv_,I*Hy#l3iyH7!?̅TN-`ͲPfoHa |kU|s0ky,f"&ÇclP^y 6BN(fN߽+mJ!CI'r2S08z_l,y4FY`)AۆXu35E,dg2HaI޻fRR(#&-& 0#u䂑OE#yJ/J~(MGb&N0& v&]6h2T-_zPYv?6owձGn ] KÉB|7U]mDgc^>TQ@MG/r+↜m6[e%#m0 C$j 2V'G_R3u0biy݌s:>ԎDbCb xjtب᪥y"ndE.`2k|;YI݇Sԝ08l/U5$:0W,vvV!SdnX 5Ż?x+|:ޢkM嬭Xaƻ.9sa̿K~.M}=jz+ؠDLD£OtZ U.37q^}myQ~v{ԚCʎR*=ﶴ5J$+݄7bƋA iLl*:~n dl8cNb> q}t#s ޺^I -5W98@\N0$s"Xf$HT\I%95/K5mño 4("],< g㙷YW(\q0N!⪯37ǤIl ˆ[l?-sZ_@SF,sINM 9x5P֚*2O;փOc`KJ]Zv+OH$VO0b >$t-n) &*l>ʺkH#Xgzk2(К[. ۍFlhȌV4H4$$w킢~Yy>A'e6V><g K D mrUUo &J%fyqj<͊]"y|WѾ߮Fg[ rHpJ#(\?~x ~F\[ .M=E_u;b:һwdƎ+Oyl:/Qx$_6.*b fɚHRtB*|9g@\~όSX:QP0n=à Y-o.ҕ-Fω:]@?ưSO>]"bKW{|b cT"^Z6A*Xw|nW;@ogy Jv70K=^ca`lFH`k3 K`"V1-1)=%,["8׷[0Ϝy,΁VQgiVᰝYx~ڣшd*TG9PϭtCP#R~%+gn.6W+,0`$ x_ZwG:PEJ*)G%U֨9 0uȸ}Sieu{`Xjli`oq]C?҆aU psLS~&jɦGt~D(HV-'GhPLUS*8a`~ ipU|n@V5k,7!wD54D׶S&0l?q5+&4=0cjq[2/<|^NYэh>󍡰8iPk슦ˀ lmX5LxK hjg0™6JA!6< n-%bx%arK69/{Y ?~޴ēbdX9C: [}usM5)8e:ckWOa"A E6btD g,*(6PB4D<͠=,.GpⰽԧԻi#&xJo ~0ứsAv-D%FscK>̉<)&r$d!;D7^ul7ۈ[]mH ܵxwi4v* i] ~赑/+șC *9”j6F~H5qRa &A K?,p߭l?1Y, 9kcXC :|*g[Z(M4'p?"]䟦Yp 3ҩ!7n%[-+ ?vZp:OƢD/WFn*wum3e!]-ݐ)|Oo 3 e ~p%c)n_R̈́#Y!Qv3)ސĢE|JZRp' y<$/)N1ԃ5֬co_Ey M!ۣrk]/'ՑH&j(89ri} SǗIM)]=e(1D< /_s#]Qj EPx8}ǟ%=8`< jluʁ )0뛶J^3jgяtG և'tZÎǒKkbǝP#O8n$\ ?U䐝\>wK7ʹ!$Il\ NHO9<'#W֢4nmc6>2ڂeC&>ҠPjӲk ^#7x<2]@M >7PCEa."BR]뜛/":T"m"$S)g'}JkʢځB GP5?|4,~f~Up_0_B{!$8}8AI_1FRvTEEPŏyb291f~@<FȎ ɣ1<<f-ǃ\9-7W !!Z^=6j"|? ɾ4NlMᴮja!1 eN7"nQ-7LrCIߙwNy ͒ [pHq/wX RӂOan^BFWN:. 7L~.՝{kW _ߠ)EcHN x ¥id'RӯN{r!NWT Cszk2Y!>L똹n{." *,)/GߋLavR(JhM/Ҽh^ÜD<ڞ2&S3"!$W^8ݶ̋_|Tr||rzܚ`)W&tRgڂZȗ^^MK؄ !^NbMh):<hѤR}*Dhrf>u%:j, ЧtF\peLCٚm ٺݣ[DWO1#j-"J"WM6XqΗďl QRY@6^=< &UQgKWLp5gKy^?yEAL%IYH«,(Beuak-mRIiIbVD2bs$U06_fō.E^\5LYo=jarwXfPQs%b}0<%a̹4" Z$%>rLGve{pq˨/%(\O:2.AkV *ӣ\[5Ru4K<>2 37OS/Iw38y58f/T#9*J =Ur_U1ko^ srwj!:<_Jƙ),1FAЋt5uLyz?VSWa?+uCWDu'xq&4`zD} 4X IIk0/0n /7d2 ‚ڢRa\J(X,\]܁)* Ȳwsu3<[ɍLM^>7jyP\rX./oBƖjr?gD$`FmzI=`]]:dg Un9;c?&bޚh/Y"r1Z U(rE!mMgSqHqך<WY q {>Go8$y!wSM$EWM cJp }H}L1}ܙ :Z궅=:Y'n'u7rB1W}VU픁/YB4ӱŮ0l^/G< 5{O,?Q= :g'ٗQ_WSdNY .*Wx_Rnps^м6Ce]>ӟ6yPכxnE=ߖqxwRh}>1vOK*\m ~nQ٤!'_IQWȰdz.Dsi" Ӵ{Y ۅ7g¢<:6 Oﯷz<4VY+UJ3.@ #EŻ;_d>68wƅ5ƺ~Ws(ƴw>q/HC]IJ!Vٕ쓰˹Xښq:X높օ~ 5j/<4v/CGgC$أ..\1 c_4(hp w#\GTeD̗YC"ӌN ߤTĒ#Z5/0 5uZGLݵ`/UZvL-8љir*BzOT91یBSϏiE4E၂_z#|ˬ!u,KUeBuruVYjV\ 2E^2OKш%_cj FPT}]ÑYD&h#6 Dwb‡O@3mBnjR2I*)-g[#P_ y=DLEy|$b18]"Lxʼ{?7~]Z% R':܍^!ttĹ RT !%uS긦v*dzT(8|5Sl C6FqO_tq-.&Eʾr?_ʆc#Z3+Z"f#jaEfnauE@ک] [ȠNcOJΪ!FÞ6̽̇5aI\Sg%QYz4yqs~;L=/?',bSPSr v1aÄ?>jQe:G&ݐ8DZ=G=&CW՟HA&1s5HtLaJh[t p9ܕF m ĝ^}9{]83Ԛr&j5ױb"~^#O!wniWdKrH!;{Aq(7V8r3b5Le 8FCi\鸪Ny4E|д%j;Q3 keXp) & c˞%ARl SdV竿>1)W65~s4 pLu w&@iti!U(J:jIxv٨p^R(BY oTPDyߋZh4H볨./u4Uȡ|Qs,&ܕBR_Ne#DXI'eJ{!*Jwoҕv bg3bd(9if"rb8Vyu'q0eǥ[}Bj4YZ%^teǵff$Ra?(6 M^?mbywVTq#dda޴Ԏ%y}qj!K詴t叚.M㰇#1_|*%j:mlƸ^]nۗR6u8EIp Ţڿ BI2d(˛Ns0N#G=ƽkD)/OJ[ ,B K&Tآ^qƝSg, B t Bn'lʄN@c9jS$H)޺,OGduU=F|*η T P,NWr|v`' )%+l. ^d z^J*8k wZ+; vT\&JfNٯKG0@iVNYs4mmݹkGx\0\?R`ۯ+J߿M$ɱi%5=p]R^;nsO3$JsL(vn:ynWl-Q9L탏UܫNU.E_9{68(~*ȩf-7g! ~vIߩ$Flj'~K2V=mB44 }j}KcPw>&wSZlj9:X{EGg!' 7P0IH|ؽ1!qKrĘ^7XBt?ҥ,l 7TLbIbFU)Į`KBme0&e̠ lb\m[ *VǦ?dU[t%!s0 M'5'o%Ƿq텂,2q!x:X bKX IQjg_0j`?+{)GDey0jkp(`׊8?Yr㖢(B<6`Td75UJLy}#~!s*HH _2,K7% ?&T#TDWBS)#4ةO1HI'o:VeZ_msy`{zFe@ѳAݴz]~ ]toZ,7ƬsgPhJv|iPŇ "A%RZX|>ޚ0.2v@ʜxl謣VT%эQ1y"BDGghGoW3;_}OqpLcq"*W -p?F>?\0YE$4fWNwąKVR 1{|pcOT*x_ruLpF')HCkDKAZ ڇs=Vm=H i[m)'7ܗ2# ƍ],ơ;Ȓk4eWH9vwa!D%4(q 00aE?%kD+4AsD*94*r/MS@m1;d/ed1(gwfruBF]TQ`/_b[&XaHf6mɛ7г7Am5a 3Ev?6..tAfw@ȦbVX kx^UA2IRZW~M|^)<|tw 4R~AO(oORrg27Z%sWۗw.Q,|)ƄP(oyĔ TSt H%z5{F>kq< '6)G@愣qox\Oz|O ?02lRćJsB%Bma읞(|Cǿ*z`"r?2O nx _CF_ (/Mc1+bћ|V4x"ӆk)$;7l{]KQ p呙r}!ڏt鮵f97?B<Ť\7  9ghr^0y’'޵\&qHmQ ,"{2Do͋X)daɥL$}]PA k̠7/bc#5ݑܕΤ>̾!hyo&"ko$%s >p'|4Q?< ybkkjL鶱/ %{wefA*6܋Z;SIY( q*U;HsҴVLa i@Gj}\TZdMAVH@x,Uwx !vg88'=SID*xD?F 5=) FS%7Ȧ E4);/DhAYM,ʪnF;EbJRF^* LKScB*r8$;RkO7t봪n3vY5 *:e5!"mT5$ ͅ/%b$"S¾>gmCUbF@>yNbܖ+Xpmװ5qJ ՔH-D14!G=#BgbbG߷ D]]2Tb20#m OXVBh坞 8ܶ-0YA `_(,Lc"v]BO2ק̉Fі*9))R;7)`_H,wu2 B<рIG \܃NLsWVLL[A]Rr![ Rc{,#yGYq"xpW=o7:+r $Dρ|l|s sBi(v\P krtǟ֏ Np(s 7MT7-Т/N*ԼmM: '1O^B|u‚L=9='I'=!ZUv^pB܀•AVfdW"%0eߞ&9_=-tR%Uّ ڣ-O0}1VUht&X$bĭu{Zdq 2wI|ʯ"K707CBa `'Ӻ=21=_v"E?Gb$&ec O jTGӊ:_e %gf"7b~.3>GF]YޡSmc-׭5ΉqM7x >;S$- RmC/nkU%u#LJTpí+K;F0G.BeF߃幪e!7Xx4'R[Vm GEӰ.gX\op?`E_`f%2`%H9#u'3l+',ʚ]]7sܚyV' oR~;.gPU #N &urI_ w#v3L^HEO^/)ТfCk򄂌ѩŌkT/ 34 ÆbGa#MiI\S|I^c DcԆg, 364ӵӽ:^/<(FM/0*ssE?q {au#XGV<@ -_M͟ZK@[I e#GGC C@S7lmc٤lwhUNۣzK}d1dc? :A-&\,"+֜ik$~-ԾީNtjڛ0ɋcQi{YD}TTw C^(c?[q8z >4~ ڛ]`=8LlÊF0>lO= n؃FJ[|䄲m @Tq+Xg;#W@d T +*/w}'//v6BlŐ`vuQS&:.sJ3@$tM_/,@]Ni6kq*z+oVe_WH CI9]4wPPk"ߏy6eSދ|nv]SBN:.]%( 6eN-UQi'u16,㥣uY0gS~ɒީ۬N=EOY8D_V~bJ|zc&`\˿Rނ2]q}N3qgJU`QۜyF qMCbX`[S`WzF'p;}H V5a9 /L!rfEy>&eEʊøG&F-9<֡է8'߸}'㎄sCqw-$duf \cCAdPZw%ix!}(:mG/ܟjb`JHA~zSn @JQ6T`)}GR`'wɔ ,mSC]3UdCgo=FݽjƓa6uH60\~N=KJ-zV6+RWf&2/ջmj䚌n;?BdBͺLR:~;s)dY3?tz"[B5!EcORbidND5Z/[vtJ> 'OVgj ꞌJ5Bk>yvК`:^?~SGLuOG[gU]:&4-ôbFilQaGNbHx"}SticQkE=N c%NE miYAfӷ%g/* ER5%%$39e,QY[\/ Ve2 ]q%ȯNm恊[ cE ` &u gS|bY'PbUĪ/t8 oN^zVZHO#ev;sPVy1ؑ^E/U*Өy%73s7"̈KѴPzm X>Zwξw:,SaMi0G|2y% _qx&)*,Hg CqhG" 7GCex~X||`"sBa 5٪yYzEYZx0˘%W"d<~r8ΜxvZgMLIcڂ.s2:\DI]arCP/sB#?"߹05W7[@-ؤq `7z߄iOfҐt i$)'B2wmc lEs?pu'ƟMrj˜Y)P`j]dX9D2MzX(p=$r7֖9尧(B1 }#U΁$v NV-DOG('8"x7   %*KcL,Sh(E:'#2,q`)L!|pGN7}~2g9$:f}{.jteE֪;[8|DwJ=XqWGS(e1i5yG>hAoiol -e\l[Xb¶L"g1[vHlbu} ePP7SYrHݩT=kνVA~?%fg9B kX'Xc@txeB.f:.&N2()w@G"cFӜ3-/* j[Yi`.݃fesKmft)*^٠i8zI6߬p *EԛwEsX7haŷE SHI$+۲7rɥE})/~ vw:iI߇P7sGB$}7.C[iZyfIdAG%*7gڮܺk9Ǽ+PK!*Hr QQnN8=$ؠ`]>>oqɷgDP9 j),6ʳLTn jb{ ń 촥{>aƴQG7הmhdz€7qѢy 1pWci-[+'{d#𺝏;m76NȘϥM<"݇LK b]n8*zRϷ>:f 6͂aV΂W'5f: yF{ֵB]&^ltEE9/_s0E{2 uH z7Ӿ}gVDlw M+|á@?^sn f˄ fT597'{o]G*.ٰɐעYFLL4:Wv&v*šV~/ATfjU(HJLQ+){zfMh'9.wӈtrǭS BE8#;!:m.]p%p$STxNcq o%kFae^h_W1-fЦGn`#kWW9]rËVyI+6UK#yƧ*rC[*KV̕6җwôv> ǯζ9G H bp)2i)MØV> +Ź]:\йCiEE-5mKYVSf2#<^\[f9 9Ua&DDe9X~U31d؈M' AVF<6ny!J9[ Zѕ?[z\)c?U&=^-:KaƋX%5~Jc#,SH3_ !z*t(H|5>l< zIٓUl~ sE4t7[ɰ=M̪ROSԡ!KB)j[2ۣS9UM [̫2r2^H⚨Xb7$nuG`lMPe*HoP:d{]U6 m?XF2-e[JM^ȴʴpNV22:ǒc ?t|- uymk!Ow?Iب@U!qZTDQ sIfǍ "+L j]Tkk4[uΐ<g*uyo@|>l7lHuEh?KLbB3^#neDI"vNI\+Y-(j(wu RJ^nw\o9\UsuPӬKi+iׂ*]$ vky '3 DE^[Fl@kW1KlK&>@F֣,bA9rkPtE!>'cku(&%1p*P樛S*HWC*6 UPҠ8RvoYHR@H.fVs$x@S* 졯z`X ]}ps/b} V(szșHQ? Hl1+?b ]m5`Z+؀Z/-%J vT,p=JXb*lbț܁C:߾Nc1(5W fߒBAXPv_"Bxd=@VyoLb^NT; rk0űӈD3S?.C7M>* oZBd;zޤ4є֓D5K~VQtЋinȿl' 'OZ}-K0b􀛆 7{D=f{hKބ@O ;=UQw0U'xoo6yqc5,Nzп{)0 &#̖a6J9HG3[e_O͘}{ JH}qER'4+&ĉe^M 8l敾5 W˹DHړ7 ̊2k k{~kvEW="z=ěm#Ill~Q10:5Ȃz!rc?&w:DEl]$Mu| 37gd!6&HfNnj!u#)+e1Dfl xe}Ag N ꐁIE%}Az2?:ʷqpKX4U. 7lQ@FKŬO#YiSťYw HeiZ7/kN+BP-tNM{>A/4;,0M&qe։hJڒ|9gwh4hWcU^P컄'dW!lLV?,"큒sIԒ- a&eU=g݀< KdhI6&ɮoG3yuWRY |8Rke 4s>fӧ?^U'n|R%qHyKmFoX2ZcT&B:L^4\˶YlOW׫&BB'JGgM-2[r˽b&Vy.T:F즍_[>HS9o&@@7&IY0uͅfZfJUCi˙jh>s*ȂRj3; q/~/ &i w,k TD7dM\?=>LL+ԂԨgei a%R e_-S0'(tt+^ U)Xog,19 /B⑓yح`th)E~y@(Í:u^7gn+)j4o7K; zz3#֜TGM\_ɊI)2[@PZHh-o.Ad5w͏i}kڏwWGbS ekjlU#dPJ@W5`4C#ӟ=?^^仱$n\=`'Vymhsc]'PiC+X8൅ШYNL}^uh weh[d75WGORn:K3r@Xr7{e2ZoUubƀSdd5Tl^Ρ6[ﱲXhaCcuQCη6RC.ԻWi&h4ڟٶЕz\szȤo ExFOM ~ yVݍogK*ahˇ{0vUƐ`)q|Lp (՛n ̉F(6&lWfAi03XfuG韴Nwy@4R,cvF Vyz?;`楼$} d)ct/H}ztlV?up2>H] kX$pKZݤm;fܲI|qP%&\8@rUUA\lMZ;?Ǣw1U,o2Z`4?P51o4.'Ǐ[LJ gح}?YiջTɻDHv;[ v !qu !-J!O uQ\kޭ*J]P3AvxT9rgwj{u턌$@_Avʽz0i߲N3 VD9#(}mZNRi]0CLd+bB) ZA_@nt^%i4c=s( 8ǘe@eE\Mrof?¬3?Lz1TxlB|M植z*#rv- ^qA -rsKe–҄I :$: xb-Qe¤NKrKppja&; Rv/M?V~זTӎ ̴dNAq֩tKe/n]#0; %v+LШǧ/ڂ@JsAYS _ќ֥wўA"7ApwEFKȓZ+z$̼nŒrfR䅚ܺ}:rؚ5&ej# UjBį(Bꑿ#ԙ47.:](v_X.JbQ1l-ǥ{~U.T`_! r/DaJBD(Ko"fq(܏!߻TǸy)Vt:_OyөYJ-'ACT:" eAxbA'\$tK|- u܁t|j'?iv QmT%<{kS9z`Ҧ0@Rl="Ǻ\`m]G67q7"7PYI+kZ[~ĂAK<<#6K!/n;vݷ4et3ṉW庼?iɃb.9/=D&ԓ!/ b0T(MX+ (]u kt=GEc}i7 kUgQhzM@{([|+Gv]ixغbmżwrj:zhzzxGO )G.JU^fv1`Ô$gr< < =tN5~m πi0;#EQo& Q|,0EcNqP4<_%$g,kfk}qevߌ@0 U  m 9ߥ<2M3Vcg&%V]A5yfkJ~A*I'Qv K(do 95-n洸M E Nozq8sZQ6[[5?py I&,H(N#\jO`ݡ5n݅6+L6wS')u2T/))LI_)^FfOӜɱ6$zW,;۳jkG(xέejRse):="q`I2|_CȕkeEuN}c9&A%+ kȂ$ g6p75a8r5P_ }еa~a쇬OJIB9/5Q/Ѯ*9U 2.qtru*MU-^9a&ocݒ"Qh_ܵg-/8)U qEqR "6<\`qPBc_tщ?*0oŎcfdqtJt9t"jm?GUeK>%4VЅ eii}/ӽ@ h@.J_w0 $Y'V /4.Ԇ*ܽư勩(EP1w{( V^I=X!ܧGL9kr @orkwe_/iVoPxXi0wA jG>y<y%S iO'yYݷELֈktP+ QKⲀF=/$`g>X4sDZXߖ i٦k_mĝR4kuԃh8p, g`;e] G4pTaɼ[M;G0|M@kKr_*_GP=6 Rīqhc}^>4qκ깛-IT򊥆.mi+nDКl#Qqqj:MM1N-x2S&njVKǻlT6(ܷ2}nEztq<9M@-.Uԫ ]C´"`)5>mq&'.e3S8"PJh=i"@[RFž}A@tOE/]So} 7E=R I`0aarD,tznD^ %d1xf!ڝ|м$|m kFhOXwD:FvP?|% `7bI,!3Tֹg,7@7pZF1B1I-p16jrgnĘДGI\g/I)f1ZuU Ad/A)PuZ!,LD}2.zA\N8+UA~~Q'}M.: 4y_|W]qgPb(R@A(;ҞCxo}"*n2"S)޸m&E<4frY: SnHI+`)fx4 0arZ>|J0x͔Ш 4! @H|!}d>Yj־h"m Z/,yHީeJw wzKhM" \Q#~vc \wZF|-LCwGڲDC2?'!1.(إp9= fN"MuFf^ 8Z6ZO8d1xIXJ|+ 596OZh49&~$ugjJvMy]h1..\AYܶw^@lRQMoJ"m#_Q&GYWImuqbsjz-eG[L6M(㶥O4Y k 7QjջuTI8)wq-˵\}슄3 jM'Ľ7MOIkCS0K\ȏfzôm3kKI]v2/ƒJ| ]e?qqht'=t+b!Gn^FdD8/Q,#˕N/7B՚_'MI-ԧhд t]JEmp0L-.<,͖P%I:D5kTo&.W-/pApSd^;VJ:|:(23\Z1(=מ{82w) bp]ȺNh)u\.g?&/ |(~} {i;֖r|.n G>&Z0M$XI&ܣj1߁ ^E\T^Nv3cB`{+}I iՃNl*lV+٘)D6G,  5sYv}wuDrjI$=u3껞H8+še3! `8{8UaM<(Veic4Muũ*?8b{UэR '} "pYa߾mߖOWkUe*Hv(׭ZjTt|,9oj ]kU"CCT3s2o1 uPV6M]W te+; ~$gud.dXbf.׮JU0OGpڿ.N= Ȓz-/zδB~JD'o+Q =3Iq p=k~Gzm(Xy^bT5^uM/ Rbc ݨ_~"x^ѥ"Qe@q "LO]{3tB:V{+$^P qCRo;6ՒgL4תP5A{FE&(23p bjt o53ÉmmNV.m7*r:}9jEcT㕥ߦJ*N] ?ld71Xӛ!UuA9y;='c\U z%08_ML*&u csҬRnZcNrCZF-M ؏uo9P$ar/Ӛ qZ g s~R҉ۯ2{$)/o< Z2@|]FuP^<˴Iֳ(|3DmPIYVBȤ3G͎褦-,.\g!p4G$ۨ5S 耏)Jm+ߖ3y.eMtR'dU#mCys9!0jSw/Gr"xTpp$ @Ig+NzޖhY5a(Fa8=dXb O*`-ztE[$ux$<&)澔i_#b$zxLZ0P?iun430b%Be1+]JlwR ;LOu2}T Tۤj=^\ދ*Z SXMaq99qw(Cʬ $ ֎}S"v p!<>WkL+D[4& ĶucbvakuF8V'f O0XuOa $lP4 ISUWn y6m͋_YڳW(/m'bX/-cU kb_,yGgcoZLyK}5Ri(Gx][/dYk_?)RQiϱS%FNgR|Uc$jBwY. &}u{ndX鬗)/-ެ=w#oO{^o7Nb-R-WDü%;ߪr128j# ։!49XL̺Pw. :2~ TY塾٤͸cKfk /n7"30q'd)5uX;sf0RwxT珋61̿E_3FDVwL2X )О*v!:LNhrx!rRSV#rR޽p &hf&ty, =xLƦk~=dzBNMWB*Td$EŨomfa #(ә/[BiRqK{%SUҽ -&e.2ංADV6ܓI}yB (͂̇.(qüh+f׶Vm\Ykg+/VF?z" ~Qg`Pl֟6,Ts*lnOt=nx5y<_`uYq :,VvѶ3٣)m[gw. Ku1^b"TEqſ>FqjEBj?Pt'/ ,W#?<*[ԙRm9f!i}j$.ʛ$@ʖ#*P:r ڜh V&B(pZpi$/8bRǜryyO ܪ<('8cOD@p2HoŒVL\TlՄ@N_CM8z 0s'e{rV9"?ĺZ\\ߎYJG4J|8f>\|LyZq-ɟ;Wj\;Hy7}t#S3٨}t l8&'ۧ'rs*8);P mw(G8ӤZ7W?W#םVI1,FZ%@Ua$~vaJU树o#Nq5#H*;)/Lli ?{7;'+Q iں 5aw4Lu ˮL-ڐkJک[#%k!HH@ԭ< k}vEbRsT -ͻ{'yn+|i XӉuLQP+(^l՛<}~+|H"Oc Lp`[Y޻v&NƨrZɖ)_2iunT"i.gu:oe|٢iq6tNBu Y mG <F] @ĎŽie^3x e=2_iυ-9zs-4BZ&y .`fZGɇZ9MHբK0Ƈ皏z(%8 tqDR`t "ԝ>!4xA+d>'pg 4%GYBp$'סdczV #2֌h(k C1Rկ +@,dsv\"QE1nBAϡuR} *BsFފ_U%zs4>ꑖx@Rǵɻax u.][K;I 0Ӡ*EN왋ۮ;g b ;`+ $M|ݥ(j3J(ސ fXk,Ar,ݠ"7#C|˖;}txGL8C␫yS%~NɈ8fA2*+g-XkJ`^ %gPw=mߟ~{Eie̸\X '>(LA }xB㾫UYmEmy}??(Ge:K$љQ@X0}ui[Z }0a®\Shk9YxJpz ٣麪J9X kĩ65@FMue=g \0W~۰(G1],/mHeG\;d p!ݖTn\Z- 86a.q*mX"Zl"T2֐4•խH3)c7bɔ$w Ĺ$'0XԮp.Ia\aYMmar ^Ds*K%F:tT^뜡Lܽ+]d'==AOhFIWS%0y͞T[" w] ?q̤v/y&0q$5)s|*;xg /ĶG'kݐ˾I@_Y^`{Q;y@Ֆ+B.L'Z 1fF|%C,-P:bS4$/RHn.$iBib hEft}O#6 TbB[ZS{кԶP_xy$O2]P(WǾcu!^ ," 4=RBrL2J 2ICͩ[,O+H;)~9V?OY:G i,x[2eó0/0Ċ=9xCs;h( $SrP^k rJFaCsb79zv2h N3ŕ*|:݌Tt JӭS冧}@q% I{Ϳ&6攵}IL@86wӪdEk-HM;H b7.ζuQ]Majږp"||[[F/KhyQX3o۵!MXE]!.@M $a]o̪{iiy9>晈 u\"hsEG~%2)ܨn)dMDzB0@$Tݠ;ypdzHuVu?+/6 4'+G<7r%oG@oUff=lL1bpSF4aȻVE*ٴaƭqE])>l >7Da>@<7 ܰBeDZu J>ggĩ((<5z7[hANx;'HqtcIk*4V=mٰ붧V$tu@YtXgt[7XlڒB܈\zMD5pطY"~@˻: 3!xKզНX'#lpaT3!P4}=՜"~"ʚ^X6 jYφcTmj!C\9LM`D2׫g:-1'qj~]ޙ,%@7q'|*=yo*[;;X[J;sZיp<t)sX{k1 Nv,7M~Z8O1SaVHHkV %wIiP T@DqpzoF70{Uto@°Մ_cZ,[G$Yc1שK$o9+9:30Ǒي Sܧ Ϛa/C}gϝbT\\EĂ3ܛSGV*5ۖoskG5'՜C8RI@R< 9ϱDsKhZ8gOAS^Ce1/+)qWa2_ɝs2Ah*A{kLtZV*VaO|5ؿ4A7[L=sE)gŨ9l2M˚Ѭ2 L̋*}̕jc3gb.-?Y6?b#pbiuo]Ϲ;mS3սu$}2ju!hzgYdA.@i#ڞN)V[Qhvbn&4TIgDe-^㭱O[nxu;!Rt :p 2l~;HYb֯;5 #svp6SI_lN8"D&5/߹Y"㠰rTӷerz-d=Dq/O5Z}0ތjBAi2᥺Dzx>_j0EH_  VP[Wh{+ (^ \Ӵ4=:5yeROHp7($n{^w'e9|*K]f/ KQ"4\"u$aX w1c0@jc7_nMo_dW!XY[W33"2 Fdl`ζE2_Uky .!)J qG~,UX(Cq.,7R%wW;R@[v P1SԦ5cEG!V `x}i 0N-7[4MZo"wQ|UVJTv$KwK$o8<gтVgF>9*"weM2PRI^)!f;UZ hnjYqȉd>!=߭dL)~ܐ;/\~µ f7?(c9Ti:V#HR?h3x;[(M=TYA rxuGykЄ-րf=?w8j) ӕ 5PZp sv:%Cb Da o~UXx6ߢKbH,loW#8֡r %P 9$ heK#>}9 3v:'U2:|&uڢ!zdqCEO3| %*:-j}+(j A\^}TX#TY8av+KG626Lf ʔ~{ޡ=Fw{%㑠p<4?o(6 5 D.p8Gdj`R7oOS;RhbcW?#!5职Ur|-SH. E55qߝ3c_;&I?-w/gjdH4kVz'\ 57t $PO +Z>>AZ9/ ,J@ʨ(/=ԲiVBUc"hat#:CxsbrZQE,d1<Y sy*;EfK Fl נhB;%UߘG3hYZ&C\z2qަ͌p#h!ChJt;v H#94Ĝ#GܴE!h.6$P$-fG7w:@F,"fl eohamJN`lJ%:`{JH^vBRrb rs2nлOh*b b$뎝6nIK@Ao'}*N5`wkON(LAhv%F2BzxUpNGT s`-4]WΫ+`;WN6Iar_ahsu^wWV dEʻ (Af'.cEW3]NCSH7>@KQRsN9%%',i7K0/RMh~e)\i yK@!jWriu2S#g4Z5 .k.2JNpZg_<۴:94¡*ƲòwW9ǯoKARf6=lN)e%rsgܡ)Pzա=?G?TUfyUdb #B2P N: O\sLZl|~?"*#'ݿ+d]2}, jDqVm`L.G'.&e!Os_zm& !{(] IfC#Q|d:=إL">V`aU[|$Ɔ3֗1Xhf}k AH͙7ZAbN̉?}"r } *T^o)[:"g  =Y2< K|~hZ!P8bL$Ԛeu~9{7l;MFW͙6\Ba ?F!}euO*AHwKiU0o.nS+ACB'@&fX^6 nW2Wdž ji8k&3ԩ#|M[ ,_ ꇏNT:cerb} w/qۜHb^)l.>>¶* 'pq&6,e)+Pe3:'S뗷E_fUz-Uo F4ŵ £M>s .&vx i gSX'o.j\$Q 3]m$5 SSi"߀mnP/`[Alz)Ο 6d~>oa-;TZ#{)/!@Z,=5̆4B[-N5T*v;Z o"~C,w=ϯYrA6:Y<>Ħ{nKl)*PYQ Le 8aގA2{RQpp!*gnBWxzXU9"/LJ4,}Zn,pDvhU2f`#e~c#!!nD GUAWC%]iiQ@͊H29/ &0GU}tD(7LmTC Eh=wQiB BuKڧUb+}2ZLV)xz;pdz%9J'`,+=>L]F:QTh27uB&YKjNUt2r%;Pߐe띾:뀤)8QM:\W vd9V)<-ZJӅў72/yU[jb t]P^y.WI$!!Tb|Ǐo!JJgb:'ɠ'ίǡTQebkD?߮74[x†:-K|_ds"XpQsGb9 fyiZҫ|nԅ0}IvOe:\20Q_o/#a:j֪5Eю6t٠P$&bsH B9A]V[mm-D\dB;9K}3*^ E܉M\P]2RkLԈ&?d'7!YJ` ]IaVPaз1PiV|ww@rnKL0v:7,;f"⠙!qdE5$Wkc m L̘dzGɽ* v9|q8L bE-E>؀/ Cbv`P}[lh #C aNV}/eKXMS,'~Ox8g#[! 8p"8w]>uZm?A*P` -zVy6%/F"߆nn.kC0tOE'zR+7_ȹ;#գȴc ݷ;Y΄qA;;ob9d~ VG*X2f!=zXD9,ͥ(UΥf^TX" FIaZZOPd\V$7,DX=$gw6Ώ d ʙtUE(0#=:3QRՍ7Cdf\:F< '˷ץ֌ICJ~:kz4d(S?uwq;rB$+ /dA@y5n,*X[|}Wֶ9bc#Ykth[)l .LB#߳E/7ꉏ+fyZYpN]]2f􀒊ƣZKɤhXWgoZֶfX‹͟#D@wa}e I&@N@ nA'+dG{M'_%-_uW ܉{`{>c! ׺RskÛZ✣w1Mi:8L8*WI8$OCEe,8Ȟ4Z@4jpgbO'`=dwLA)\+_ɳhy\sszEtY#Y(jR a $fN"vɇ;5x/FO&՞}q[f ߷ 9A-0ͰQRյzW&.h5dt_~@'bW'VQKgW"AW,ĎGH.pd1aE)J?L9j^CETa3tHLsMh 0y em q>Jcׅmjrp4x+p WR*S/* yL }~)Cg@Wkq*i,o1rJUvH/ iVqm];wuר4<BsR0 K0!s DUs AD$v) PHwsF1er_Ixޣ~ +R|e`O_z}l%.`Z&Ny;j0ܹ/-ȼ jRYzZ+--򄐫ʁ-,n9ihȶGtDlCHܝeCGŏťe'VdmNae wŨ 2׻}ˉl;p0+cޘ1O!wBgNFUIUai~*2`;=%i0.61PTz3ža⪻~.Οo$V93⯂![zF.ES3nBj&̵8Rk!Ykk`|U Q+~F]H_#1fx>?].q{,PnGμxm_ zmO{`R{*ٜ''T1'{TQ 8h ץ|UMA7V‰6p` ~iںα\ KZ1i7^dd='11<Ew\nN2[*T5\AC)e`%^ͣ2&Oë{C4A$6yzɩqPq那[:9>=ۋWh{p n< Ǵ/ɷ $&֔,`THXIј&R.uL&&1-i,~S^!6QQ4T PΒ^'38S,#vnټ%$q(L_Dr.Ϳ /ΆX0[:/hCm֚:n#ŋZBQ.`Fe3UWo)T =o^ֳ'2ow U@PjB\Q(A9b_I*yWsupCδ rp cs&P\d4ް%aHc@[J (4d Ms |'-YWq00ؒhk|M4!Upai'%|/w,Z>Grt/OP 3N׷;fV:iH5Q ~Ժ Wn\Js$xzOMN Z$' EZ;rZIJ֫ a5cmq߽jɔ/JP$*?Tpd 1RK Y83ֽbWHgQ$1uwY̲͋upqQ|?ŪԉbO[\ƉW| !/^dj!!808I}vl[Ϥ߻/K30A^#! 2 qnkheIHPmru!үGԱoVT0nȜ$ba=19/fZ^ٺ;csAVŚ,jcGAgwɋ^Gm SZu)Y@%qn`R}>S0(OSع_ ''U5GTPzLn#%f;Dy%%/ chJ$a0f؆J~dN_:3<&ޢ^T4o˫>}]n1`!w2})9IsPecbbݻl*D{. ͑$ȵe <0W0+W[Ф͔(~(ÖX POx @V StLoSP0]+ Axk\OS%q1:oYGt++}.@*z~L ?#ECMɁ "]Nɩ؝0nN 9~^_+,]0AUӘN"Nx6όф>Ab>H2\~cr: ܏,\|;VӅNd t$Lqz C5¼DC)=˚ƥBLDGR$D~Y y= <З9fg%ȽzT&713Ƕ'es@5;Sk3C}Ȕ=(Y"V;1m Kt> _Ϙ8#H!W<׆?dWD(gڝ/WQހ0#J$-b8(R_7{ѝ8IJ.Z.{;G>L'߶{8#ݑ P$m.DqJi?Pg`@򢊯MKj;Gdk-1&' /idP/oS{6Gfms},6XF6z6<ֵ ҅ XzFe'fk5{'\5ny,^y`Qyz@ةb{3-DbYOiա"cuFji(+:W#ASdGۆ*KZY<O.%P]ocVl=Lw- ٸw-/ 9#6"g O0*4jFx ;eos.]1nw}- K|[}׃ݷc^}G K´7]Xc!,JQfda-ӻa<-!Kju1)vEEVƑ3Q7v)<9~ NC2OPḦ  |Exp"G(MT72di=,a܀Q;/gNDBYFìÙ  ,վ7fRCn<`h{e[t%2ם380c+ut5cKL,يRTz >m/-`  [SҢ |OQbA[뤗YۖC_'(@FϽ$qM7/. %. RnhLkS!ɽЁؼ(_F rӜ_Nq#%j |:ᚖ +_śQhW4 _kKiZ22ZNwG#WӢ2 E_Ty$'%KAbc3e\;!jn! q5+ϴ1AjơSjEʐCﰠxkdO% Ẋ zqVQ}>^ ά ՚gֺ۫gc3$d?k[b){HTnU_8U11,`ިKfeqXRn*u8pQЋvd3 m\ P}޵oȅXDo\9AH >b@CN3: HߊT{J'!i /SR2/ 'iCia vCB7opS^1u&<*yJt8g8sQBN3͢,[{[O@ej` }O O' P@}Yq16mpQLKɛWMh- ;w_gQ~%^[O6?De?'^}rpG[MLFẬU=KuAiýJSw܏E2Sg5Gzty/zmEf|L(AG-@$X˜*mw3iGX4WMLּi5| ݫynS!82yι\P60"Nde_)I*Ƚ9 {mf +}]}8)%xXچ7tg,OC#?(BVMB^|YӐ!>j.չPK͞e[w "e&t^ty Kx^v9gHT%mY,hRjU>FOQl.G\8#-.vJQM-a>Y&,T3zhY-%)l_䝂%CvAO& q߬ 7Eh%:ѬcX {w5G?IlQ˸x.lk\v:v :A,!jzG ǜ l}3ZQN^FӪ_?~Կ)4zViʰLm5Ϣ~y?Kh'm89ȧ$l|'[3_i_Vc`c }{ͽSx\4Q7V߁txЀvؾwd2fzB {NP}xyS%<RC\D>AZmQD,9Rw D#!BƷB} }EeyW9ò lbv~# ՝xK rC`}IL-Dbg 2M"8[L^i.!GtQ\xx[f:gm.B[d0#PWuΡ8keuES>jQtC 2سV'I]EbJI~ѧ /1xZ,U\B? B}B^I(Y& Kjp(BXٰ;\k^a.uI|6.,y] {+,CbEh3&Xvhcɽ--"5i^1JM+OS^v{}HGWj>f\l^k(a^ӌ@n0Z<؅P qU ㉺zi,Nt lk>/|Hj\"}msHKvxֲUjw⯚]!} <1!*`Ϧ۹TIցM`f2ۣ5wZ$ȯUsY 1M;..Jy }V.MN|.]|&v ؟hw&2 㶧MPiC&d[ć泑DUx nEֹN^Iz$Ȉ_$L֜ɫܱInje)f x{i0R)aZ9#(eL*Dz\:,d{LKAK?&qElx \Nު\#L1+qiar4+f ښuqzGs\i܈{Hw<Vz(9 9Gw?CHqT(L)8̇O^G/T?z[ezOq5z2! JpOt-53pб?g5NHa 8A95[M%x!L*fiT4F4†(|.B9xre*\bcoA~TK'w"k0sD)ѺfM518 l6#Fd$(o^J= F%X,2bB79;1os@~"KI"g9[a转y)-y[b CH#! *dy `{Twd,ZDٳ?*#.)tȼ׺H W洰wIYm T6Gi_mɻ!~\WՓ@m5e0y?k+ {tT9?xtm˔d}c(/ ùq6SmW, Zu(YY BRYP3PgXwC8{hF%]٢8hN.Ϛi!D]A9CKD Dm[sK&>3ݧGw1#8X> J 68#O {,xS$%CPsݦ`2 H;5h!i +Vl,?[oNʠQ9Tp719̍V}Ec# {ugtEWHbyR~Ss:%#F4W#TsLYu``0R~Rd.3?V9ĥTq4~Q`Z69P4ƉלpӫNFm.ۄ"_.FD iq*LX f. !T6>g4rei4]߲-,PFD{t B<۷Yqh F2(1(zޖJ W`g4XnKK؝t:H>Yoʽ2-N6cu|Gd́n|7e,[ٝ:3 [Em@N4`tCoyJ !g-27+Mu`\" mLm$q@7 wmO/i8q3s1fbeKZ.Z}^hR{:%UH㤲e1byxlDu0^A`P" ϐ*y?J2ӄi|`y]=}o`zl~!2 rjMVbP5w;t\ ՜חCA)+=k lftN[ Q-b^o~:V!@V fUah?}- M^ -|&,_:>RqiVώM,ynNC+zJuOK)g1$&45A+4h)`Y}g1[fz3厵0HKA&|Z0⚞!h&x6 7SpO,md٫HE y3 */<c|}.s/V9i>T{eС˸[&Y9'5vr tEm˄8Z̞R4r4îZi}$gIɊoRyOkM Xa;;e EAZ8T4$Oj:LRۘ>y rˈ-HzOy@zo/W{DA .tZ 5OCc;9­S.^fɋ!KM23 X;r$*VJrP@&{qדU u!$׷u% g@>qK-Ao ԅ_VU mßjT.@& W1K$FߠT+B]ԊBJ24 &ҭd~y;Ie# B[,G(n.g߈;(ۻzә*FwiwB8M\wѭ,jùڑŐʚWR"S;ʺaIo {1*G׉%}*dKM!GP !+ JPFV]FgM6OzhC2{v8jjf Y5" #%=#V;X q8Rܠw@Xi0rAGjJVcC7#&L2$e.zZ8;'hZN@XDH">~4zbLpjI.`4ra&W9"5\9FA/!'3eyDWL<7QjпoUF /gTCN[vOW/}#03GZ6n'q:M8iY2ԧ ~m2ֵhCEi_F5솇'e側!D Eo[t0L=0ezx/h`#l ҆@c?S\`L*"."\W7(FjS)'Iym=qNӂ5|㛙vUfqzLɌ8S({,Mhb婩cÐ"+Kyfҹ&]{8E \ev@d3a2"RUJښÌI 3}mݤЄsNh ӧ̣eN{jwܒMbzɄWŽBy ִmPLx膫_?5D"/ q5c|Ik^HKKBs-n}46vWj:C:س)ڸ!f> KoIS/,_+=8?+1wطcjv)&O~rP`r&(T b4m t Wqͷ[M~Ɲjw7eQ7G\AU*Da IE0w0Rv]=-E>Jw m Urz}n6uVK.,SҚ39A#w||%w('iS%; Vg^E5&ş'2+Cs ǩ/o3sޠ,U+5`$㑶 c98kD8AkI~H@˟aHڝl l}"*( #+РbcߢY;I}w֪3/qݙkg1$.|m*KUs qUćJ,%fͰU04d }0O5YU&4Q . -eG}<4nOMT[Űc:ؼaf xFDs`r\H'*m7hsJI@ѻ!4կ|ptSfƍKzQ1/Ͷ;KSg((cGxWmt->泇S*7Ju\(溂2`΄r ^G:6A_t|ڛm엳,\B 屯HWQ#"yjr-{ Mj(&%rize0e/y ׳$CO_:_XeZGYx!q$@xgYzpm$]fn>$7{WH4\©3ޙlG7 C;FS>4&NC-CS:kjv1b[S3wu8Bڤ@ӁQR,WSG(G1||҇lA?3N= N!DgI͡a2@.=:^X$̓=" ;)qbikELwͦ/C1Xqҙ#i46§w F@[nM~O@ˈIɠ?=`G:_/s ƠAd׳E߇Ƽr ރMǿE I1n:(¸H*d6l,(>Tw#-p@`Og;{,o;H Us^KcFXkCY©V84lԕP(%&<Fp\Np.Xa, q€#a\>}n?W$3lSB+~=z`xͮqq._5}EpLEU ɓmC=4+;g 9e~# +sra!:66A*/㵐/*+9F-ۿ.?b})%"eZM / 'kߌRNQ 7I rz^lMTY㲋5B}\dZ/?sE~BGOzz_H1M$~I,xevث1HaQX+~1 (z`jy\{ uSM`9/uհa(k=ISP V.ycB!fK΀o\)[@%w+bD_r4$Xgk}mK |4GM{r`*~8 <0K݋R7p"Bo,Z"l %*Sf$ĄMK7 ̙Hrt ~'D~  M,QJja俱TNOR PsR±uzH',E )g2[KdG>͔29 ~Djz HT=RO,oow#؃A4l!*ΣIK7:1 3wNH?IdI#4P;3~C dBਸ਼F?%%dzX%;HjSFHu>@G,EY_l(sֵm5#ףP"8*bn/gZ{k> TÞ1Mm*r|o?P鞀:@EQxϾ*aٶlu_;R;&fBIr(RcUk3طXH?NpI}P,3m+? o;7p}wwemv00zS\b@:j.s);I$*WItP6wh  #yno }#BhL^S4á1QR ݜcldxiٓ|s? Qޕl(H/| ?'2#eU\XXZ2jj*{?vj&Q9So<*3Ngd%CLU=99Ee]$ls9 @'_gV@v-A:Lmk @ފ|rAҒgY+1\jmvIsży(Ή`X/i\݈4>V}Ep0\l:1u$~LuDBcKAС5lbM$D?108d*vK=m' %o셋ar 9e@%)-`uAO/?5 rט~J;}TqBRҦeyX]n1}q4&ZhFPc~<PNL;qĤ] ^-d`eT7PMQc p$|s}~ɓU1fUpG0q2/Bhmƭ? DX*zxr2v՞r2/?KL57].'^"KᦕuA]M J+`'(1k m"<{Z{J98"WVƁ7VvryJT+=wtQ5B PQ̡(#Y[om 84-3R~zI}?S?YZ$!n#>Wy/uC6׎q' a$ODsTC}G[D1^1ApQ$<Ƥ)_$QÏʷ\i8(HU7[c,VMς` gLD(^˅_8?LK?өكBu"3qf+<%PB),݄8b2dvN8ʓ:ؓ2i ^^7bt u32X(#0^f 1ŜVj]# &w/]yn.2{܇YMH\+dmyb1E$͊),gL/pb i)oU i661T.CƗ;]Vh.G5Ckvs̷_RqTV;Uk1K\uNBʠUcdڔp Օ]m&pX/kS5+P⏷.۝R;ܝO!'ˀ c;H{Q{$c w2:i;qqssf# ֯;GX<(CBEF$ Ut.Temˤ䳌%lT 2h@MiwĨx>z'`dd":q^2BM}Y)k0AzaS|p:"?8:քH!^4鱽N]7CaG/4_kmxo~5E7+Wz&m-G>Zt|W ji=CĞOIQ.>/39O΢dwd-UDg]Ls^O4IGhI"HT}tE@=:b{\Uf]3/Ru~ZP1u5}W5ƌD̯zڤ Lؤf#W>Feϸo"5]SU:QT7+LJ\GU%ps(lw~zqe4Wtٰ~cU;^t}vBfQN"i(Bi[P&eMlB_+mZd{^!bv΃%B6c^ 9DžNtVJXߙ֥iD%jCi.T oc޹oe̓m'b1} !U'xI+y$0SY u._8{Ӄ<֧ m%øtɿWpYۡTES1<>n\MG^u2aGj:Gۗ%ܠgδ/)$rӲK,,RkeXݏ?B1Srf5o@ A}bB,ڑ8v"jTYƷ/^R "Qd:Vx#}`}KSdRQʼo'wT)|*8X @(KE8LgwepIWѩ}.1a$$`P6 R/պp9 Moݠ3Y\N}਱JimAjh0j-V)]yHqoD|ׯ)-xg/*&Kxw:6$@@tTu}{ #3z$csԒ\6mムX6nϴh^Kz,l99أD6] ]?WAWXaY0˅oC@ i^1^t!sLFflx##+'HcEyT3k˿LIE&Qh%䚨Z7 IkG uq5aѢh?xHYSMkkP-`@bFLE7C k:{>Ⓧ4—Ar@izP [ǰF_XfȪJӮ5*}MN}YY0'W ]K;5jVY)ezսs98GQF7 {^ZOF bO)ѾڧFn VS-OB!^5cxmO2fJ* %r2[UjTB0#5`epkAe.%~6X ?TJuqNDqy ?ZR;.1 J&p zs'dP C &`k ;{*,&l\Ȓ#&2k#FUPDT!W3]r3!C+M`ꄩwڢ {">j5L)ʵ5jOӄO,zmSo (𔏭y+, CFKzj,h90Wo~|^R(3~4_}I:*T$|-\5!DoEOI# .><$NzQ.Xe/J7 ey]uvi=\e5jd(Pũ+Tx UvrbS/('t{C%*)쬑$y'b;IJ+7,h;Ö}&wNic{]Q$ւ 2YT xFnr,PbbctxIhb.2fg7&!٫([+D[%<  A\ Mv zseN p%|$+i: g>WB)Y~2o:kC֑ظ,9a;àQκ]Klg5KQYQӍ 0`d2Mڸ DŽ(ߑҠflIiYr/+y<]Q&u@tkW9!wgF{䮧 Xf(J~9},CMü8dKފ{Q|w)^DY7Q^Y~ 8EkWNWJ"d; 3 w*J?j@qkR"ӇF|À]`\K5Gn"q'P_^'t>2!#}L7v8x)؂%g97,]UʔERJmHUmp[bU6փR^R~OT*I`$g eAfF*,F &h[IAN/k{!> fR;ɩHS64g}Ê,pqjuhgce}9z E+${9tKBr? E ֳv\T)UeG+e</LuL߾MLEgz!a݄얼{$ٲjrB]0e ./di@\.ÞMEP¬!y@ghPHWoLkXa@Q[~;j{XCM"QB k[g@[nXG l)QOo<&zn|Q$s\Eo{đkŇ?ֶ>C/ Xݨ?|ʀSht슘Nh0ЉYE?B(DnRFjl8m3X Zn;j,9}3`F7q ч*mERBpB Y%BYxVUԾ,|˵2sws|W _5FJYbB8{ e]\h6nxri\@@4< /hIio4uy8.ee-rMhS%j":Oh4Rp7r ZBXd.G)H*㻤o7/2s͟s O3=UMt!RxәEV._&rU0Q?9c;xt:W XF 7F6T7ec|+1!OCm6AK6/oಔ<.î"A1K)ՔThUޓ^3t@|io;t!W]I5,^+we #)z >T'[֌u\m*Т0ԧX=/p,Hs)~8U}e}&$09ru)sƖa~H\I24GN6:~Sġa+OXqOM 9\ jufT ,BÄ}?E@_y" $*4Ӗ_,,\4#U#'[ێO TVR) 5EJ'uE R B0sk_QPz<|Dz_Uj 1k #SRpXtu0ߘ]` ?xJ'O|>~.Mn4s)\Xov7m_(9iFCSEgS2vO!')z W)-tGZ沪VJLZP9(X#hM;zC?o-hkj88IT)+0S(% o,X䕁ςDO3,͂7FO 7 dQ 4\`"\ :J"hœ(Sp9:k/vs񍬭}GQ&UNjJR ͻ!JWG:/? f,o Ǡ0Urv L^Vn;q Ɗew]dxO `67[n{[rbt.yUm &w>=[*l5qFLbx48_~٠N[oEML F[&|X.ښڃ(;SRsv]=['85k!{iԀLG4.*"†4_j$ʨRjQ7%k 8Qo0(W' 3HR[-Ȏ vB1 XrVrMI}sC\M7V@tVʉ6(YB@m-ݜMiP7$5JM le;Фz4CH,Fu߹4,ԵD4JhTDmԁHnz-.m9 U';bR?:Z;uԺQX˹URy4?!fbBܤX;h.%'rWhbqHJ) 1xzx"~蝩ߓ,"-|܊HrNh1f;`'M^:k3̼#WE^$0xU-Mc lWۧnBO.mMF7հwUXn-1Oj_=b]:[|n _䀉I.Y=Ekb)Le;$>OJRLA?i:ſf2I2Kh_X7샊6"-s_[ sP^] pUR" Qa2nD$L}#y>)g:pBngɪ1eO3C.7躑*GWg|'ۤR7ҋ̽;~.eBHCDJMDb ĊuzEkwXev {&䏍zC %T#VtF'c C2K.Bܭ7pi]3T&F;bHߛ. h:/gXb/Q$YqUjzڧ c*\ rCdDQ`/ۘZ x1λ`ϴ2ސ:vYp܆S[4M g  1ӰJƺZpI *aCϭ~8"@HhnӢZ8$#vZI82(K8jYkVKNνӞjR&DCQ_JM嚮t./|U!=ck+myuoھZiM"Et!t ʮSTPk W}gyAHd܌t o-,7= 㜋F'&Xy*w؎7 Z@HUm'kl2+`͗r&ԬXHj9!!N=d?7n= N"#Skc'z* u~@  l, 5|0- (DFUVI2&YN}0E,)5qBoMѤ840+_v30U:F۟tH1&7R0pW/Xcm͢z;e6SP\ 2ZAN"!ݪTLzb"NfT6ώ.~-4u<?x vAƤ.sO~ S^pg Sj]"σ#Ё:(yg;7&dC ={i4_ب| H(dE9Ci#}'0CS{4N'Heo*S\N9ɨbݜz(ZKoz)orN])rrlrS9f;[@5?:ɌlZ kñDAD=>ΚX>-18Q:'/DSpGh89P5*#+%^a8TėxiW# ÖObōhTZIkh.,T+ԝvG}[4u!O 4I&׵}gĺ32f)iy]-sjVroHdeiv/, 6)hbʻ&s+yXBI tݟ/{AGދN*R|t~\ɴ/_Ras=RJݥP#Z@H~ƶuRPFD@NQJ9ChgmFnzvb+8Kqd;DMms@7pZ Q'eEVnEƆݲ?h)qgr'aaqW䠷g[^P7!x/5$Fj}[V*%.G3^qo., zGA'bc sF>CB`sg~4C) 0󕱕q4❅D QdTQ ,O95i╟@<(IU VA3Yk.`9;?#hr'xPQ==6L)_`,L[= *]ሖ}^(95ȴ}2qM!qPYFȎft[6–  72;l1mM/H-FO)Ak7;y@ si1]zۺŚp7$-@aU&Yҡm~Y XWEnPՀ/Lح[C3FhPQ FA:t7ilǦ YM{{ jlZUEnZ@!8jnYҔ+@q $f<X9_d͈je=~Wl%έzh"m*7xsoRW;s08rU)QXenBl9ئGE OW~‰ /WX S/֧'fj7iRځO5oΝa;6f)N}qԫB-'KBN[.rcbTUմd<_$:&skQo}' w/uSʻJ}Cw Qcy?? 5 k/ۗ;Q7Vm~GPS%ˉb.&D x,o9ݟ5ZhP{{Af}}uw, {H tIթJ@B =m=#3lZK:* @9]2H{XPG+agV .SM539ur!K#a ExQy(M\=YXU(&t(L09I`^cČB1>_xNzuzKxfPhi8\xJ+`C<լ-/.cV>iNjNwC/z/In{{j^MpoKjfDشB$]`%%~ARnVg"xJo4 9ZY&[E:lD0*]'R'Vl!G q8R)^km޲[0a}d\DG38>)3'^SɚYbӆр5SYOP|ͻ"zTIu[>yX`(6tS׃=,!eqjz|x~H+~Cn!?0ۖ{;Ɔ_1kL`js3z:9B]n/aTzdaIhK{;%$]0䈐J-q]b0}n'=c&w8ާ*^Γ€l ʠgg~˝\8|𞱞q2S,uQ[>WpBӴo1{|R7 x3|}D tߓ`xE@؃!E.&6;J:hg4̭Eǂ3*2+ūp0#9bhjXR=ànrY4L;{iEr{$ H7Z59^\( ;ygְ8⛉fl_ bz h]7bf sGOO:tR:Hs4BTaFE]H:Wlj$=AhZB L}@$ʧۭ5I!yc m6X\}~ rta@ܒ&,ݽ~xR3_{5ohn(rj/zgLd*^t8gwj\LSfl=Jݠ,dˡ3{\HbKH=֪CnJ.z.a7,(1pn N5qT?VKp} K$*(w!oА.M$/<3$I7m YN!9$NU 6<'BVK3Yt+MT-휺"P/B$J (xd2B)QHMws M] _1N4"egvŦrjI4]W{HG_f&6dzYxsmBy*R/R !z1 dYD+9;9n(&l΅6IQGIߋˠﺘx#xgU2 paXϙ/CH6K h O%b F|%%t9MpPAlJҼJKı>vF, V.nw x"BVuF $N' ltS1&v&pJ5@2c3qo@gKG(Yv%|&r3ķgcs L2wr )ΪBV^sX  /KB̷w'F"E{Wqnf!c#EnDLjrpZ:J}%] v&R8XgȤf9K0K1r9C ;Ƿs/Yi(:ͣM6o !kG;lW[}J/Ҡso6/s6U'E-J7NԠ=fĀhɓugEZ9 Lg% J:B ޼ Bt16$: !&orQ!ɸjöl甿>N5ML6L݇X䎣_~al1H!(,IA0*qwFdLc4W}DwjyjD2fhy7ѳD9bPO Eѻ?16_(hEcBTT.PXZuk~i΅YH#),A rʶt>a0*c}bBt8[ZnvνiFEyV^e_ b[d|RcLB𗤯4TUb,?PCF媝%n(޻1aRE6A*ѕbk2oK %YSX@!`~ރ{rB"rC`pl`ri9`C4GWz-w_IDSVlf'% 'Z1sim]Sh":ߏLb Į_+c(-9&¼XQRCJ8/C .&^9YdY"?v퍰?:O |E%jiV7iߟUhs8M ~q*lvaR.3:~aQ4^3J/[\58wEk°&(tWͣF} Ffn֊9cK8t*5(?rߒB@+_CzJa'T1ǰ kĤzj֟=t/*w%~J8y<;Ӆ+$jXWǑ dc&,!0(BNL'.egGn7A՚*(]YK> R;lˮ)F09RZmFJZji Ccj H:nxqâqYoah!'ƚA'FWŚt L+[Q>acåNj*8dU^[!<:-[ e;7bKn6xUH\;g gb4Cܮg-2?C9gSph7[ VB*~p1K✸WV ^㜠Sed$bm hAr詔tѳt ϴ/ƒ~m(2|IQ'f\%*`gj9 HjYwaGeQax`lX*١6x]7-0%mhJ{%U T#K ,ŖX$ec3vn#X( )l.w2[p[׿Kag-$X1cǏKZ-ZP`K$4O'6d)=b-zz. -bY pGula<5IkHITaxt_|aﻍTXz~|f.><'?˱վ{T&Ri]%M,n¿};ĨAu'm@ AƩ>V2M k]%3/}ԿBcwTUס3%UGYJ׆Ab0$ enio>1f͒P[vZE^TkDS(s]fgP'0ȁ'OVE7Ə.*sԜne>N@(Qr8dq8*⯝|RTba^0xLoSl}K-#"Wȡ;&VS/b\׶5qToFZ8첣I KlPlMoxڂ+:JvwlyU517v3NMj;Z5xjdm$w P::@pF} p["P.4NNτi[V7}FIFiי7cD¥p༜,60:p^w!O M&H6z{QfZ4oZaut8Z. JzV}\f T])K=7nBط$<9Ѱ;M_dlrWy&N cDV/'q28hU-#Y,"-+tAsh{V7zS>rFHz&&Ehg Ec=;BrYf) l{x:Z\1fwLJ)\YY$د2O l6^|iU}~Iz=r~_>3 70`T"N؛>8j֙r"7 d" އ?aDJҦԗ Gb@`1Rm(B>Txv{:c2=P7&/k=60H.`eHN| snzXnTFҞڏ]*ӛ`vuބ˺3ϰ*~s\ !'V 8 r&,?oE\ƼŐam`iC:^yp.CȰ~^M[>_4)ŴҞUXĦ֔x^}cZ h}AN ޕK>;sv̨&g(lTI}\gS*hݲnp_kkC%@Ip XHӸHCesuLq1J{h}PeeM EJUiL]0戓gpk&,[L[BT8%rfNpMU44R{\r%pd(ؒ%lRmM٣7FJ1!2[swY.[AF]([>d *Wzs*:cFfΥ^;I]IOp[Weg}d>`rq.dKy ŋD?];>E#VW~Řpwnkml~hN]^rr3:0.-Jܥ3.$o]7r%ͷ 1渓l)F26Keѣ|ԲH= yzd%/&x :`]x_A1_Bc JN̗)?f8ik4*6x,p=kl‚Cw8^aͪrp*ywVĔ'YhhrhET$k@sͮP << y3q|o,.aj@ƃe"&Wć:\KoQ;_Λ}j xx|5YmK\M͉&^ +{[ߡ1H|^GK@x:gs4@_[vux/趣agX;ڸ^p^=, T% qQ'uǯr{_*B|P5pr#o Rt0wkgn^9+rSsd ͣ8$:!#\4I`;+>!iqbޑ2 xcD0)|X.0TO Z7i߱8P[_yOcǷdƔiW5;V?1|p~m{C 9~c}0^Y{(#쩼o|$G("hLhMVonۣ:J)z:a?XA`D[8ܿjjяɱ顈1LgRθSmCJ*|J߶rt\G3C 'A.P.gnf)T :}L1j:[ůo #" ?B2iCL7AGK$٩]š)&ߞ2 iQǬs}Ի9ذb*pQ/E>Kv4a hvcDYMDI 5n?fGjªmQ_V?}_2P[ppc#wstY,Rύ@08-pCԫF)EgTפ19If+EQ)i1AUBkLYZ*Ώ"qD@~)%$MMI.'m" 3ka_JEkhƮĴg$}6 od1Lo/ u ݠJv^[(b boPڐ"Z^ܶw꫼4D(+MGgMG0\xtw-EyȐux'R4죨;5ׇj[2Sn/ ĭ ȰN6?n~( + i5yrqbΔ@ץ{F4I@Ŵ-rzBQy29wyǙˌ 2"pxSJ({؈ʼnYĐjBϩ]^v. leg9,7tܹܢٌ( @')ۡ1 򽰋WЙs<|Mxgp'Xh[-o1Ў}zL:bn4[4ol70+#>jNd?YڲO' rQgqй{W?ʰ sܒo-Z J^Z)&jB&o|* vHYn΢'< bM%uk*cy[݋`h|MbqIn" >9-c!.K:X>b(>cI tn)1\vRujrPᇶ&:c 2ĶcD|:+StFTv-RU9?g/{) dtCNd룾[=! }62Pm\A6 P: `k&v NE7rpr`X{lD^NO!5Ǵ^ΩMLbw%w ^\\)CF%}XGzvG(+-;K_=4h% CĄ"r;R"og@,2x(\Fo @~!#ZedbV=$V-c?7+#юJ!cӝa<X=}զUY_nK!dOr&qT;. 3 HQ&WA _!-g.34:X]fs_@c⦌qv3f0M|[<,#윬TUȗ&Ϟ%pV<075 50l8oo‰y1m--am:co@h0YҔrkOFN6%7x9'p¡5Eu) 㔵OJg,N a"/Dh*L0,4v]ڰ:D/ b2(6o8Qr鵱NqkC5K;V j̋9Ii#CZ͙3 (HHyvAG 2X1, RT^il3^Q[l d0`#vSdtElw+ `8<Q| Ime)*~i's'Yh\p)_Z({-42ʘ[⦎Ns*MҬ!zɢx}h(sMnԳwc/o ݛ9<Q\# YN6x`O,(]eJk>RnU7 M55(~"&nC,鎞~Y>ntr]QۣGUؔ_Ԍ R^ h>)ak: +vV̪[2%v_9%ډCU2KꧫEbfÊ,kzNg;n5pE16#FmYu\\JΊσ*4aJijjJ v*$@" GL"aUq*:(rłKJ"8eQ2yPެ UuԍBwT3M9h<%C?)Sюz2kTVvwye'Eʏ+ oD^&?!l~56Seq_U9>mܒCn58B3 jU5DKֺ ͘ЙQIJ7coLgZ1V] >@M92SiafpO,qo}iN5q7@Tr~o9LУbO{oSBk{HW7﵉ӓaΈ>BeL<|C-&[(;\>K=[P y ؜J&8tzFN4o޷^:uDõGO:u]L"#Wa]8kylmorЌ#4(ۣSu(v6EIֳv:$@# lk4JlKHȨf>$Mʊ/衱a۠W~?[ZSU8bG p&Ps'TH2Bi;uh{ 8_=rtǭhGx57Bbj|Xrh-oWܔ|%l ;T&k?n?',x1C۸!rޠ4'9pfjD/o E% \#@'mޜ2@OMQz܆iI$4༗>™o/Qimp :nbipt װ+ЖEUJI"pT#V w4Q[F0[<Э]¸/"/Q<Yv! }UV]LOîM*aLTߋ$pÈ>͓>!qzq8fL>߷ o>,n~h=pbu~OuY/(c%lMo5y\\VdJ튀TIWnʅ<8Sg7AfE 2qn0EBMqwf&!x&EQu|7-B37!(+N|esxAHrLJȵQrEKKj"]G)mcbxe!{4ek8 CPc7 t\N#?L9"RpfA>)Yjl!yizPa@ȶ4C?LQfJiBP@Kb<9> ʔZ >-'X M1vАh fme3[ (l\~Jѵ8b -?blgWtMWGbiE@;5OA{A5Tetsb שT7cۓ@k6NSkvN WF϶l#Q'_q+bLهSf 2ģA%e$,+hw^){LQ+ug( _AZjR4(T{jbZ+e+|%t|l2#v&K-ɾ$(HJ mŎ$A֢2 ]N!YhoႌP\װG_Cpgr^&!_}VⲗGV ]D뱞獊Io*LmP??~\/iD`jQ_P;o<%?9֙rEP9W#Ӌa9b•,z dc&"pCΒ*֙24'9]h]qAWec*zj.]qL -4\n:.sx\KM5I$FOrV-oeTAn9o,w UB@a va$T]U[5/ޣ3x ?';q@OedCŀ?'%I~_sAS;W{~H@7k($0pxls PFKkz2`TqR~ *7M8c%Qx.B?۱p !WPm}H]qz,޻IU%>#:rQ2\m-ӼЌ)ee|{Z`W8q腙ϕ9Wiy1}.p[gBȊ=le٫غr lb?> xOC|^OJmaO¡EWDn0 _M΁K$MZgWr)N|{TUqLJ%t 5|8ʽrz.hjPN)/IqF|s8^~nɺ(ځ^A!ȗOkHb%+`r-^%"\ jW_G膯2 HS*M٦w4\%D+Vn)A O`̩-{HQ3ki85u`ß LJdHuG^fv@Y;W& &.r6e|nzrE oI,9㥮&!yzgg+G["R%ׄv.]w룘T'6}+S#\bt&'w)!-ՙG Ez z0UKD> /OC ]alP |4+$ /}Gof:OFoVۍΠ Ӳ97Ӛq= %ZyFXH(SGtLR <w}m!eF]*!^Dے$t7Ր9O ڇ%H.gx~8Dk¢zoIUR D))w> A!b@6zxAgΔaLB'b" .P9CP1+NX4{P{{I:3KVUݘM : ~*@PF-<ġPlլz$_PUm6+}&ʄ,d gϋrzٕcu65L6}V}>v-sZrq.Hld7^xr~pt2K6bOok?Ȓr9'%S.g ~A54$b"G\Ά7Sczlx &ꂴH, vߕDִin%') HtZ(w#ݯ@n؋i|~_/r&hCJga􊦩 QI)/ {UXf`^ :&:%աęOQR"z؟5cwPa0'ʾ`A_'`N+{;*i"ekto6 Jz&f6g6b3 ny;Ofe-YB1@^B+"[ݚz HMAXd5\[a7fQ ưS>&eϴα0WQ ׉-lsxI*}&fPqC3`pҒ,q0>YOOܦ\FH;hΛ{d"% !9`L:McGo*f'-$jzW.S&fu6!s% +1ï nOb|' >ƫz@>!!Mr n!W.]ZMOH)3^!k6zXfjZU`xD $΂>HS&~/oA33Dmb c>utdÐM#ow`#FEVJTJSN~*2ڍ'*O?tt]%_ Pz[ E#x;]ɘoPJO;g,Y:Qo)"r:ܐWMX|z\| 6V4*b ijcn73O&wF|H ".BSz4n B PpN.T-}Hr Ef`.gA0Tk%t$oB󉗄2O.~~A' l`qM")/G.4h}]xmZOI֬3{UoNTR~CϺJǟ!F^$FߗDg$G ba|,Z?pXx%ٵ49g*n"BvN~tviWA&.proVBjLqOi ^F$ݱfܨ5ݸa4,}nʁ6yoAπJ [[[WcpE2+k33@vz`-ج9n(/\{9f<62Xӹ1E)8ׅŪ[(=/+ [u1; Tx3Q:U+E W}]yb͠uGid\Rbye@ L/L4D -$ UiLֵzxQ H$qvm,#vWfL]J>E9[wrt4oeWKe[™4ƈnJFR­ӷ=S355/ _Ӟ/?q7ybM$j}K[1 616vlD]7!N'Ie8^YΛVD]xJa '( 6b8Mqg\k%N}Զpԓ %|D۬\!@(gYuUb4s?BT2CX:ʞK& cE80tu֠˰ȳXu^0ˠL/㈓ ^4ydtŤ\ByS_@a* d zQM#). yQ%8;xF#3f(k7D4J;p8{^PVvg6>Q![ %^H3ZC;x2( /)4 _Ju 3&c Iƅ')`Um|SAoq︚}u"~1rŤ9GhN5dby@ݓ5}Y(/R*Dk;٢Ux?8@)P~&:e%*{#;S$C ̡3Eb3Ҥ]WwS{4)hQ?2ļˋվE_2ȧwV$s̪ tlƜ 1e$mE"/}-qt;|}uđN.2cNU'Q y"k?d>nGFSZ\ F& | rHIe >qd Eaݾ]J?GJ`M:fP_8#- ^X_6qWGPxo7M飳SM+rX5_{;*o-5N&Dn#gmAȰkc ~/3]?qgo.(wfZeDHKp^g,xW5V}2:QP?Q+olhؗavV+&# ‚8x.i6@Hd)4rau**!e1nGJ=YHd[ ϥ+&FBl q]z (hGe bBlg^+ n-h`|;Z0(  HUu{?~yC)7 r<؆NuF<>4+u6t1pP.Mn-*~[D>g_Mr\jt {+GchqqS6;+"pWl <`O4֯N_|ƗKm8]Cӣzw|'2*fa?i:WLxErbzgR׌j4rH,jCL8b bMִɭͫ B8Ru{ \Q;tn)A;sրI3qT6)`h 騱!AHp!*/v12U=wmkef6$@|ƽt@!2٘ge$@ -9X h)֗CjD DE>= 6O 9%Ƨկ4Ȫ~C[ζZie*'>gH/Huto6޵"9jg5U6vr 0E'vCeL6{bFWJr=?>Ii$Jf)XoiȯZS e1FGhiXz?0KK݃X/nW,'\_n)T"jaƝ)/d߁,e,9\AU*pW;"h*ϲrZn΢Uw^{ג>/(B5Wh-.41̈́W_6$zU t<: k~#e}Jf d^łb܇jc&.8}ISN?CǽX !רHbI l[1>n VX٢$8a e?}6֯/H *fS9ucO27/ms^wCg2&iyI- ~eG"A*2cw`t$<{i5'`|]_Ҟld{CrrhC6n :L=º[0U^~Ss; BeuX.2x~0VXVC&o<1^!)PU|$5=YF);^ȺA4maf߉9r ۞lgAI"/Y߼-S0 T5WvTCT`fQλ\^7GK +o+OBT zEb&#Cpv yckg)PZB}Y([^x gbf~ J`KS s{ŀ2d8=Ot4ኴo ފs:l?|~FKi[B__i^6NJᓯJФCfQpccw8^omM-[UY w I; {O!*V]\ hlnY~Zs~K |/%uVd>`IOt(i l!SϬ@+)i+a:;+)UXR>F voUcDAD1$k3[ghSf7 SQiW97mB\y_5b~'y9 |T }8-b8_é/.3s@a<Ӈ$qkq°(V?ŦsϷܽm_Y`bΎg[C U6q_>/g:hݶl~ A%F%M]O`|yV Ci|mxx;z>}GHE %(RLmA6Qsm8MZˊ:y'UP.F|yJr7*Pb,E|{Lz4aɐϸ%g$\lsEd&&)Zhg` g(&+r=G

    [xP X_#ww .Ŷ XleZvRz5i3ImCɹ_XFCg졡ٴTJ1iUs&u2{po:ËCZkF8 ?b{^ _1o!.¬K]5Ç $,?PIc)9 a"蟉3,?0YIº ֘>C̒=;[ߜf ȱ }8:kCYkUY5ЦZƬ'=9@[S_s[k O(N^%:B~4~8}zC ~Qfګ-p]wM4ޜav_7rvQJ1a!cNiq! I3cb h A<B@M[C) YTUΫ<ɑm-_zϓ KX~wHJg"6ԐÀEtQbK:Dve(]IXrOjEBm_'"1榶˼ ěX0@m}Xg7l2[%+r*KJ;؂+o J}6ϧ@\3'j6x:/~e%Шbd$z=8c)s$m'ZU,tʺ UI\ҭ" 8o߳IDAsW>pSbl(qv- zQl~~ %GTl]%]G./`0_Y54j|qZi4Z^7"GDS#0IMR-4 [KrM@g\!ҏ2Vr)<۴FH`?nkS4c A4 +{#qEN&bpF˳r2v~}~eaq3PSw0"tj&5Үw^fdȧSJVR/J:;殹4b,n[hH,iDXa]Y:B64&^zz1BmPܷ:mhE}- f/g'"+v|riRc(OJR RA•Gʽ8P1l>Crün YF]/Foi¡;-D3;@ûU76hۛ[G ̗]s$;uu\kgtGH֭Ġhݾ)W([D#$˶Aȗl%-`>Oq|'|v83,s<W^B=SM[СaV̭{Аp: ml|l(&b~q=@Ĉm*[$-'εKX@U\>"m@U(2nwan>*5?%P@[VhzmgO:-S0aBop =]ّ_*n-lcBNO/nu>1s47#;Bg{WGVXS{kơF %fc0u-VdSG䥊MΞM`+} '6 ?? 8*}GdgfܐDfT0C:a셜ntc0?iZ0xi)W1u{Yih+0vqUpZ8@4|jFoS?BRvg$ LWN%!w,x0VR>ɚ}֘EfGɍk:l~]ӻ.ƺ:dˈ Ag^$'gw t[ΠhG7U'Mo2[COWqMӔ]ngX7=/)pm{! ^-.b7m0oinZFS44 e$M/s >YT=8/~OZX?..)R6415!I *p䧨ϸ}gk-wW;R*Ʊm V=RQdj$O;|)nQ͋t }?E5*hOLMqu/سYDc~BQR>/m2I ]QK1QIWAs۲O1Eܩïꉫczpelц]H@fl#Z8ƞX|Ճ)zxG2ܧձǘߍ߆$8ca]Rո^[zBy?.EiEDܩ!3eCJSHWW5HrvS|JYRӨc$l<P HYnC\!*K\@=e(+S{@![3l eV}o"g{r3HNg ꚰۿcoX\+22dM7UDXWcKw}Т( M{/ރH1$̗,I{sHt5-n;d]7ؕ{B_Ǖip& y3րas䗆 :Uؓy4v %2۠r/ kI^7ʹ @Is6Knє ύpH3@:2>: W6[¼yS<ΖN"] CI(pt4F"v {Az'7@k;>r)%ݴt= KY&_au~U5M R~n/ۜ5iس*@m>?JC3ast@iCGa#Ⱥ kTV ;~0DIv}f)$RN钺*@{F&Y~0b 9P"p?{RlӪ Ve~qjo>Kp0  .tAIkٸ#Mog3jzUx2<u Fܴ,wgqb)n[[ޖY: ,LXcS -v;]A%]G]%MeMwUYrʯzň{Ϊ7|멵2|1jXW~x,DK{6:ML/R!}NZ1@u<Tk}xBةּ7~ꐞx^d`yF7gQ/ZA?u{}/Y b=h eszOΌ_j)_67s*>vkymOH~lCtoSÏ:{ۍO(ʼnK'^\KkD ^0G Nt Yoy cNǺwD P,E&Ѣ{nSW_aTauMcW̛M{BH\UhPʰ,K/eyG"SrSMɦFt0P$4fElF1b8Y ^Z+"ՍꗼǰƖw.AWPDOi[ {lv)|DuL,_~!l`8Fv :0uEʌQyw] {n;5ҳlM/ X=~pB ~e&7n9+@?j|=@.L::gR^`)H`#P Ŗi@Nu ^HK 1)S1o:J&?z:Rj5'`;1טjԚk kC ewkּ^ [Nӊ̻vF{ Г%tbbV!Z ֲ`_e<:]Pf ROn؞K /+ἯCזWI!-YuBf?б\묟z)(C˴vvЂ^QH_㱌6WoYjn#kn¾k=yhߪjLaR`'o\G֤ڒtBJEe1[b+ǺIyxxD)2n,\ <)@TXPXjn2ر)qr^-~)y|+8c*јY|ttc lDfUVɋx4)TLDϙ҆i6ϐa"SOqq<  IZ%(+uG~L~ tf#_(A38H 5)P\\?]MA+ru̮zvqhsђ䰝qmtJQ׈9pH{./ؒ \l6ĘUp7?Q LA9ʟ1>x 8VJxQmPe,<΂ܑU -`wvh&G Ba$vUƕ{F3[4>y!tC/HhI|domYцaMS,q%ĺ,T+fVCBܼ#3?N9F `-k U\CڥP)-/a.{0grCw_!HQ"ZGkolyBZC{ j^A0sfVW ~n,!BH#7BC]doA6+uVS7>O"G6($K='76g0^>,;P?`-Ѐj&Y^MaCT2mRVMk# &V*eE!SGxTQ"1}ټW- ѱabv/f[ 9%[I=H 49 U, N&&vB=^_| @0 &άGŵ;72 tz* Wfտ+CSŋG R47f։}Z柖hp.p ]xAM@|Z5bra8i .7># zŇ6Je!,j+Jae5(ZFzܩsLYLhi*4&K[kUt{J1g 3;Y#nJ7ڲi0[jTZJK CxԦ`*hp=k]~B~6ccH1VĒ6K1#<g,M+q6Lta:}b]'Xʧvq::6)TY**ZZRc"z- Ʋʎ:7D, .v$}Ԓ6˺ ^/SZ5sŶO;1%^ɰD=2 :m4ˬ.E(*:NUߍI{, Ng9'w,-CUQ,h_ 1OH5^L륕큄}p*:=ZLj⸝~rg%tW[ƙ9`^{_onTtH$̉W%byQG.a AuD)"^e>G6iNlAuy딣MTCҎ$qN_<vR|pU^% S>MK%XeVgJtR` ދ:nYn$ZKךՙ5r8 k{Qwaw sùLUO݅Y -NDoi}vLSzz_sIVF6'=lca*M$zɜNVzW&CMATrYYd,8Wo$|-pN 5BۿEbP={O%"n͑nN6أKI>)xb(4Y?t!cu_/,DqHxG$LC@0KD,p(JXTF\sH[b4))"$cmO\nRDL'$ssHcةV6NflX}IYo̓,yZ!Ɍ".@YKCXa96bs쉯̴(17 /-|xR ISS+ K#]'*#M<^ع %Ao[Eh]nFFsyX0[ %9ޥI怨po$k4.ҝTnL xkR|ǹ7ٲ%{*xN xv^b712+pu&Q1~o?-(m(YkL^{:cRۼ(]x!Cd):N=Ɣ4OZl>ȹq%6J]=Ic^:~0;ga7Q6E z7 ɡ~UqTmv"GUS :y6 /qK3A!H;pLLv±A:j!Sm;Df)PS%j/Bd1Nsr5 }g (D*,ϙ D哀5QHD[ Av~/'2RjX8tǦ f!_Yӵ+5l6뤘rIq/Bߌ2˥\ ЁÀ4wGC9;$e?ƨ£%:íLE$;9<10 ^P?rBj>del}GfM@QY+O7ӅT{#*X6~28IHeϣ=?o) XUՅy9̔yk TkkATb{C v7NI.ME^bހ&&ґ`~%rAfO"eZjÌ|HYc-f^$8p2 5kk[Y&KI^]Wߤ"}"{GHgz$V!`A%caՌHStpa8okC~~^+ MU*g~n e%\n@j$SO[NV7sh4~ep^[HKyZ5mG-t?uߓeV7SASDні\Ua_wƫc'ΌF'.Qsd)L1!-<*9ʹVRӭ',1!1QLq9˭02H tH~=Nm}=灖%rNb}7 MGW B s] l"zԦzc,w|M/$M"rmd׎Gu])Si޲Rw`8A~ mκ,pxHF̜<5,2R%|z`jB <269<21LWqG֟qs6!Vyp#@W1] Bv`[8C5k1w^3Kz#>!CVsiL|r}/p"gY>kL?R^ ,z>o=:8Y Ŀ:=+H~*LcGQCr9iuC5ɥW _,t^9׻D:WXHO7QwwP*D->C[6Yx}+3@N }8 URqraS5"}4HR]}h0Xl8a1}y_.&KCѠp Ð )7*.>tIesBM2:i [[sG(ז۱1M'D'sYkꌁt8S%2! p')(1/>TSe~8&+ @NwbAR{t k1_L(( "ih@5Oì=Q0lKk(Yt#Xi"URq?z)xL.f^kj#jO$/ KةVbJ`|t|U}aV#QczNmπWv3u54=Xk/X'AJP0uw\ê'a̵cJ䪒<{kvY-Yb^urMEy(ڳMKRLhFm\@zqTJWu L_6uSRKMN*O$iKb(2waD2J]cj4e,-"6$H{_椢 οolHrEKZb^QSZb`R^L3fUW-ٻ -=ÃS095Y.PS _kLusJ2gDe\:ݠ~u&6.ey`8$t7?RW/R(CWt88>EiMH+`%>z? Z~GT NER/ãsmFNN9T KY[q>dsF^ͰN/Dih4ڋm?f##K8{8J}ր:l~d3 })E2ɳ<\YxjWmηn3"oJ[VRϴ`<p%k:"< {RLv0#7ɩr]}-Gz;8u21Rĵ|aj mGb%k}VczT5 @ ?uȖqƨ{b2,] ܥ1Iš=4&E(C=!f~3%j 7>N/ l#_&-L:ZAtR6}.dEoo(a3s;X|SN̂WPkܽCfy¡-_sJTkyo)@bpkrAixclD/=2~V v9_ГgڴROQ ᤛ3P>|{ zPRf|V/8Hmf%PGp-&*F9beF}'K$}sE'(Ֆ ue8Q* uq&{aFKe?+Sq$Ф:=\õr9PR) +kf7vI #1lrN$O^'׺0 eI4D+G| ˃׭H+n K瞏!OI\槀ǂCd$Za-&uM ޵SOC1ImA'EHӯf}Ro ]4*$OQ|aJ緀,zȥM(Sz"/Lg`dWA;YR}MTe Š7cVEy:@/4hVqn[ҺR&'q~ /.B͆/@1pHBNƉŲi rM O"o.nK R~+kcRް瞶G=.@=nYFID5o>nE\qNJuaU@G]T ,˩AX7¶Mn5O KH-eᤜ3͸0TՄP@1s,P ,΋WlbpFbyLk %ϧlEJ) !cv&6u]?aiڏqormP $;'G)o H3 v律9X\_wL'h3Z@?;=uEZ8d =e&(*\G[$".,.]\3"WE`N*eVQU! SXat*LCLāWJ?Zm B#ZR7=i8 C-+"+Rz8AQ= ` R>!0qXuԟ6h:) YQ2OM=?0U&NT4:u#勨,%VRwgD{Ų\]حN=e tF!`DJ31b/2m<%@5?/:F5f;Ev Z͗bԊ -ƾˬp>jUC hu &({c:jk.Yts [:x wkA?:$ūӻV}@aW˄O5 nC@XJ ĉpzȐi ɰ'cJayE|`CCա` ~|_q7Z!M RZI(slϏ ǂaB?K'/a,*ɜ+(TFSPgS5!Q@N dm~uъoW`S}:^ƳAhVe?wzmgv`'l[`}בEA3oo:-9CB5c+M XAUg f%BJ Q]~O!{r#iax(O6)'C/&Ya )ZwW^ѳ/HEJ8/$\>JxKꕄi񑻤C0p쑓fƊoJ{]sx-Ć%bL?SeSY75{L-ibDT-WVM!0TnvQ%Xy {:Tps6|C<+[퐜n[tʼE/h`ɣ,Rq,Fd;VΣcoZq>dS6~tVpϴ }t*%/'3@E <{.I{hY1BHF_#o@sRܧ!bO?>&xolڀXL33&?^IWC[O㖵1_uV\RJIK;ǗޕK8zy8/^& J37 _Ď=Èr]-dgS,tx |仇@8J!ex!FP]zei˽r*:%[>%lu?)HtY*Y!j7z'TB3i0Vrp7^y&k`7;}!H(%S$٥x|U-TGm"natRXP$ yPrta"˷Uϟ9Oj!RJ&PCiģB( Ռ},: (8աˁR5@0̆ nH'IOT"׉z.S@JHjNji- 3H㲒/5ahn[jv͙t~h0Rα[fZ0[JJȯm3J0~O/I "ܯ ]$ =Ik"^\Du7bo» ih_71 Mz'mJ#խ)VgCm.}N(KG`@yI}RZTZWm8A GF?<4(=uHݫ+AC''SLVNRpG(tt̹'8Nw#_ d襻o   5}qfrNFoYb>U 1\Ld'ӘfHjN1kcA5t! bQ/49`ZM3HuF:-_"9Za1*a@GO0;)k.bF3}/s̕쾱/,{Q`Ać;xl<7<*зX=ݧLeP[V5_ at';9 045X.BĢεؾԳyidC9.#1˛.GZ8I1(i^r&omyY.7zI-ݏB >;Qzun̰Ǭ#ؾlh( \"FcFW'jKbZn: BձGlF x`˱Y,${1 rF5ΐG0*zsYh5XDLIM !$e9 e/M'^F{Y yg-YH1}?FUJB5h*J9r<(X(Y wS%Z2DѫrEJ.g#>, RFWQP `nP"]T;V8Wx'8ĪOʄ.F 7A6KX*a1 B\ȈXR_({=q kq ! Z m3Vr5H,r-]VG/fSpN5Ң?ha!@S0Y1z+fj0x_rU\D xQ /,gM^po䂶~n"(쯩6#I;Q搔 4S#P3*$%\_O\WDh+'vM0+ǩ[)K \pЩ| F2c ֘OFP8T)xO3fB’2@=ypY1 e8וt!xwN`@H7r9<ݳ*$X'*QA cY<@/}b #8+3kOR&ϝZBR E+SB$̠!4S'dz,9gvuL|W vР)ϒXl's!S"D) ӏ`%;Cs eJ+̇} w :FR<~?`LF*#6\e4@vh K$YI>VOTDB,*q]պiMQKlNX"!4Znj"xω(ra&ru,$N7bǓNNnheA.`=xL3)H9+-PVEc,B Txe:q'֮ C+̜&b|Y BCn}?r@ʍ!8 FCm Eu SOڎ_G(s9"GoSuy Dz2g /30o~]{ֆ: ʾR9k=?GN/勍BZ cx:Sv}rCrO%?z6y/!Ϸ90 }u V~xR)rt2S{o.Ik]:0#}YO(%& ui]`9>#gnp$B6 ?L~őV??w*C8ভFY8O8r:PcyypT6Qq!guЁ#8;җ=-C7U[)lY܍H5!K͵.h30B ܩJHPIlcO , K$)ʮXO\" ;YP>@h?-d[fs7v~[`B[djllMǰUYENE A#ArM[r$?|@qͥ"nd@*c` 1Vh:KK9&{Qb"]}|+3;l`^iU,B^A޹ 1W3f7S8j/|m!h},@}4YgH&HOiPo#S\u@ڊ|H}3(#-, d#k\.Mo)*Eo'tIB]lzi¹[OUhgYm*,mvǂ|2n4˸w73)L+(.qU JL'OrJ.h $j}%p=)lnJ0e8?_ 5m"ty7_Ӣ41VX'#'eT?Nw]PYig$sX>W Mm۵1{Ȓ44Õ} <!0 H c5•'=K'Guи™yy7+md6^EۤbHjf2/Y>4KnYcL"UOu"%O^ vC*zΣcQ!e'7rZ?ʷZ@kA6Ģ(T+%d7T{=JWڰ| )ؾc[lKNK6ZUZ|uZrH J'2֕gnN D$6G]ËJ?">w_wE!i_tE)o٘\.rfEF'4v3'rBys~x2 +?X/`Cag ;ӄknjݣPLEgs[[Lf~6ipnHaafд4tV,S-U?G'n.q L| llN *atc4>'K  (3e|Px,gߑ}xܭ PFdK D$=TTeͥ'-)(#BXbNPQbZKtO4|ڡm/ 67-ar*f aS jgf *U3cJk@Т%+lo/yDX"3[L0 =cKO٪ˏ]ۧ ^U j^!D}Whx]XzfqB2VܰB60ôӝ2 H=đ7mG4BΉ k wYQ!q,~@cE^xtİ/S<4YɀfE}2*r2 w*G Tڧr@ LW|g_Łej*czNf8P+1;\q^]k}+0ٵKLJ+y1ڡ & UG{6,X_q'/ tXŕrp3nRJ G:QTHLNq='>4; YtG4R_rHEc fͼåopޢjo_٪!jT3;8"ht8?uȃ80of+6}vN w#3J\ \UXmj{8>qRn<N2t^ĝW]7yFG|s(diХ. ovu7uR:-/ 2 â_-FOЈ-n\ύsjT s D 3^CWw?e M`X 'Ms%›^[@]y9p_9d.'eN<6ج ^虖i+ߓ'PR6uGA\v>qpwIirOeD> *.Vgve2[Y= O&MMںtEׂR GJɄa:qϞlR E'E~]w.w='Łut):F68=ո=McNcª(R2+ӟt9ўiH-8P) W1`4#3ƒp@.9UaH[~\lk? 3yage/am6e9 !+ 2D>:b3g;?xӆ쎓[2Zt45d{fBl#k=bJ;ebL f6"f [Q$9P!ieyG'[M{=M`p\s)suW5+pr$E~#6 Ki R3R2JoѦoFHH6QM_Z%1^gLi[GʶOPKπ^:Z vU $70^ If  ~?(3 Q2O)sa1XG! F ۈyi|4ACRG#̻𔰻ª}8K}}w#pfl G §P֖1vψV߿$-)@3Cs/%hהklWi7aCp:d l':FRUJ~"VСPn&[tc<Y>ZPf۳CBN& []p[^$\`ByTL@unc o>Փj'y^_m7UM3i<#}\]2XF~Vy7?)Vx%7=*FSm3;zQBw}Euۥ\ *^ux۷\q`E׾*uqta}ڡB*=&㦞[3$Mn[ta=m_-K K$Fr:Ki}в@i `פjoIjuVc^AJj]F&#h,t62h@ВŁOM@l.̅$2 0 70VRZZVT11۵l_Żcދ e"<*{jycI0.pY!ZyÆ rf52آVFcSiADFy0,]<3nq( r·vYע?W{1 [e #YݎN`ߏt*2QQT !BfqʐQv)K3O~o|,'/:4-p7 G! .uԘ`}Cs7< :hi"ZxSKCaVqR_R0)b.vhijMV!76=})>XĈY&=R{+ശYSGE4|s =n$2FZZ`={d<@Elȱ!wi~;eLCP2ʇ\,ޟOQr2^\-3BRc;CTE#]aoC{Xa ?isB+2Th}@0trIo| )kVQ ~|-7Sww2LGsZU "aEAJS`HE"u fDŘ8brzFFwa<[[P ߡ5HtBFm*U7>:[, Y+#R1׊lnPIE#`* O)?Wn7]M>Wvګ*-ֱx̷WI7vBdw`/.!ev) ]mP~Vpri-caw^d;hPņ̝"L`Aly Q?*5aYsn^f $*Q|ҢܛGZ2vƬ0(DH3R*^eaz4w|JSHM(`>f` =,m%1Dd_wcsגM;+= hVda%j*ɀ3Nrr R6Ϯm>c8kJnyr(EO\ hk=x(}xZsl\0.ׄ%¯R$W,jH"(|IqlٕR2#?yIkW.0r҃8ʼnPQN4 !op@).PLvmE-Wc¾2 U>kmrZM&%xB4oGyw沉SC]T@,x~X&Mz܋fz.FDvDÆ:N'E^DPeHS4peމ{ʃ D^A7xS`$H\ 3 -,VX2ZF&KFCf{{}^:ɜm#jRL} ~͑xl:4Y 8J,`Jt+sq"֩Fr(/i{"N0\l~afo(s ew4im< VBy}5 +z0#!ָ gjRHm+jnAɩQy?g&q8 ۶߬E2lܪ/:݂ +#zu> UwPe:&!&5}g_t6"bw8Шَ=J~NszM:4Il#-)f]JYVη$r\}?m}\gq+(I /!5GT'y!v16la_n]WWk)JA$oy하6{_:> U8T&~07fQypb.|NNEl:apV+C?ڥ;~]&VI2DVQc*bNLl1,&c ވH]f0x?.-M3#2";953VU, TMW.#H+ɦM2b1:yֶS1]%> ܇C(2d!Inӛ#%Â'#w/q7t ;Yh5}zJ8ZSgd } Yq؁V!xe_1,. 41]d3^G+/l8 թ 7|s_('@ZJ#,B8yѝ}3XttdĪ>E!O1]Rv!Hj~Fz+ֲ[J煖"yViݟuӳcӲR8P^N 9EDl P P6.tkʳRi蠌~Om-F+K69+m g;LRf|UGYM󭭒?yJJbV,}%OlsOMra}MNJ;tq nXGƴ+%v(TcN]V-BL" )Ӌm 2!l <^Ǔk51t1[,BU/ʈo#%f*3N8=T۪T0*/ӫv߽ju^K;YD՝9XUǽri8v Ks- EK*ns{a%X*Xa,G)< lh'g*K ݈YG2) pڔu(j*^,3;0=s}Ath_9Om%;n\Ξ-ZtcB/t6A}5B)XU4Uvh(k=Wm &'qmh@Q0cVt;(c8w拪l4| nn )a% >0$'C4T9]!"_NMH*i%{6^Ϊj.`ZoէQKȡBj@Y^}~8IIEmi j$O$u5rٗ2}i KH|lU.60cZφ|kjb0q=Nn k{#K}y0Lv%ioJ-݈D%]_䒄I ޫyI3ALwBڎ˖aNkVW;n,[TmT_&>D>(Ph]qXVm9ҥ34PE/ɨ|{8]eI+P_zV /Z q߸Ao_GԤ6PcY3H7KʉlfKdD!/hLǗI[%eKlRl1ca% ^09[T2=ESYz/Ō1ϊ738~/֐ޠVEk& ;yZHrK^`L3Ȋ=6d%1jKEˬS=O:bB3*9íf3 zH;}ʳj~ÖB"pЁxmd$ !1B $J:a;R[ܔq;Ei Lݾ[UQkJz  w#1:׍Ä`PTH,Ce,wӃ!(丗 +%>;J7&,`73m]I +};n]dOG/ M!](wc7|qz}%*V h ,Ȯ Tp㩃bTĢ`Ly TL~N^ؿ]Uq}R RDкEጟDª%LSxNJǸrR/sRԣBVT_!Fm)ks<0qUzʈsR*}~[(_J R`+8g* vxe{nFLvœo$!HaȾ)Gڅ%6v# ϘtzP !:Ǿo2led|$NPiV2ހۻRզLZP'qy9Z ߗax1=Kh&[P߉ D v=j ^;\Af6DAjOZ9P,/H:Vքf9?e5=8nsTLUJ$d"+%!v2[šb*Ƽ3IoUO[gZ~aEXPYmi1@qJL@n+|~0`. V#0ZIdgnjsqLݪ;V䞒ˬ9a'erf1\Wed˳w7_S]Q}adSSwLANdk!N>% OxBNsh:V%*9^ޔ5rݓ":{܌ n|곂BӐY9HNxqy,흰o]X8;C4c.B4%8`*ͧ6_IOڿ7L^P,`9)F瀮ك;)\`Sq?sW1󤞳,i7;,Gs!8 1ƮiG?N<ÝUH Hza uCP'D4SBs韪6;VHZZ|~uZE)a&k}YC}GbdU/J6Wj{4Qhdò"ٜCQv¼C#f샫IY q&eZ \ 9o_i]­0sdu?b?(QW90{| Q̭ljU X#(Ͻ?4DpX&6y&x._% ; Yn~)pio ;dG?#4߻ BJޅ Y-=7OQƵskϏepRq~?( 1'mKjryxdZε8"P{M[)߄>W ]_)Ňu`3 - 'F+D,{V\Z@jB%/sV)ƞG*Ad9q߼iQ0.栕Z}tJmU msxmu+>f* Dn I?=ZwmPsC(a,qJ/UB&BeH+Rc%gδ^#u3]#a]޿= ,gnjO]qiːœ*QH8[$Gv DDdm|Nʨrz]X#Xoc8uU[7##C8 -.ܽ0Y::ap]S0VR:{~7tЛĵ9y=-. Pf M̦xrV97 FqI0t %(c|忒a[ ěTx7q|$QfKwn @p*dg-'QZPmDq !Cs<(YD)Voӗ_3.-3P=}duvLѺSe1/2O Yz{~N@ևKʖ* 7'!KOō$HIӆ #{c)тfPHA_74 $aiv t$SJ 8{@JNSͲߡ'p@A _72-{4-O(lpR"Sӑ\dI.],aXuH1%j`նxᇱɡ{AxgU0h\d"^kh{'ܼlgtTr<3DМqvs?7 )nIT#$(9o "mV6L)*ֻf)XJWZu/J  Լ>823DFZ (yj}"yC[ϩO6X|V֪.$GE G R o4d3]<ÙL&8/1`%n/E5tO-SX+@.49WiK_74a8J!P&(4蚝P C}$|IOOV4` L?L ?ѧom=;g.Z;qz0b]ބk\zy./Ca=nqPh>DBi7nkZhd+ó@$NNʉ3)SQVS(+|w_G|p9KiHuIu-h$KѣS"FȤ1IC$*$гJxߝF^Y3Ϛ0Ni%-}ԒV-w{S#Ndž.-Ң?tjN?&y:!;νP]D%$yƋO<`DS`BیԼWx% $sF/{( 7,~k csjS/7Bf@)=cȵ;N; %mƪgmLÑڑz$jUq ꋺoMRK"]W: @:0~Y/~ nL9\sgp:"R10b#Nj#E㽃Q06:${CBQS `z$cfLk=N6FJMs> xIi+=[}N K5[Ka57нԸ"H QEh \|U'1+95BŎkG+{Rf/I^nGMPҟ[ hň!,wh(lD|ǟ {?)0Ьv.nX/!;]P%!'̎rMs:[lgԓq&;z0OL9V굓d4ࡁ 'Y`:e>4gI71z?>ت#to,M0fxxIb"`V]^ +O5΍Lgƨ=Kв m egQ&\A )6{\x99M n$ &L{y -{B+k X( >90/tgJk&E[[g ZXZ"Si'D DxHlHˀgr[5SغC4n aV?ؐ"v_o}ī;tiy\ xZ9ĤG2r!#LOy@FɹzT8BEFGlbcZm b8mO\>ETcB".A@ J^rm?, 㧩V6ۼ@YWi_ Z`iX*FSEC9N:_90=J yO ߝ<^qWl}.훻{6aרDZ 7aV *6s0; Pu@?91ξ ,, Xq>C"bk ZW&K݃%lWy`֍Au&eEFI:c 9 U@0YtiJuG oM-qdٯo4hSŞ/L͇\?>iC1ӣ6Rۢ Ar| vAmLA2h4(q`k"8<(V f36Pg[_Ÿ5'O06G2ٺT 6`+w_HRD'5f3H}~lSjRN$.e9NճAa%8;l9"Su6;|ݰm-A 2 ==/BA pZ3YzKэas\GMʆlQyF0 $汌m Vҏ s{Pځl\p5.anC͂+90A&Ĉ@7mdm14ދ{KdDc)SW/0 @}hxɴ.?bLm) J@+_wBIm^piiND>@w / pzDw,vsZwp)Ø,J15>P:­Iwm5rǿiRMYQ0>"8v. \ԞdY|~-bz1(F91|^ټX]hiYl7Z(Hɵ *WEl]6Ŕ^NXtK{7|FrKߩUu5]![ZJ/* Cw;=d۶eNW=\Ctop3"H8mgg(Jݨ(';tL}E۲ H4EwI}?F'-kT %' ,NGO|ޙ}a'(z4 sI.<u/.\|n\!m TtKnŒ^YO=wHq {bxrsKa l]d  VFAHhϠ8;{':qpBpo3uA7@y.y>ڤz-3q1ZgnNwc=5fm,Wu+R;e"=H+V%xQ1&t!U@mFxM%oYzFzi` ztJb2Bϸ f^C3?`hIҹx 9?f߂4Ѻ<^Irgfţ*ȃD+Pm]sZ2ar?Dֿ@biLB8L]}nHR_ܚPl]<~m]ܧD'b+dY"1]m )6DJ %w|w~Ug\|c=O&`&)}ˏE.2)E9X rr\ױk6|C;l^/w$!/]J Q6\t2M׹ϫ N5\Z2%JAcs8i,mILwyťuė1h+[uÎ߇uIFo(1ҫAdygdGS,dHh:g=0#y$dw_f8ϽD}Uc"K(g @Gxb #?UwpvطĄ2&8[C=KBEyZb|u(N{aEჳ P>VZ#4n#Mw얪O_.{P|N`2F8û4vEq 6+}mD|r3 mLU b`H1J FU(a=82 -$YakIpv `$~S M2ؽ6F pȣ~w˔_`2T LgnifPz _?̏Ǣ'TĵH]| RDJ8כA"Yma|:ry27ծSxPi3#u6pŀHԮ V}m0(aZAgKoH5m׽Yݹ=h4 5.Ucp a"$g^~V(" uփ њ,zY3OE܈Y!{/-tk˳H_"Ř|%!]!_Bo4c;LbZO`pI8_"a{ϙ(CoRYeCYK~"չOHshQjl8S֘]^}viq"ɝ{Oj Vy]럲_~"X|f(LAп椛YzR#A!]`v#8%RF B8󻽫*iB(LH.;L>`Wh51*?z^.71@nɰj%h:GN9jDVĴmj=keBDYϻ_3+^f:(u{6*XkªoDχ>(GyGAfꙊ}X3ځϑqi^nPV0ogE!nepPh9+Q062N]Jl#R`v% TT a,"+;zt< A#8 8aE,ʂzT'I-'VjDR>@7oi%ٺ7:مQ_Cr:뗛\٤`Cgݹ5yL֍9+_jc=+2YT4 4g_+M gnjhQKZ6M{ 8bJׇ H-G tf)s_yĎ~z_Ÿi6C y9A_Ü2Sr";9UOs8¼YFe _Ջ5 n`5*/غkPr&ė;tLl5g=S')C8:ᦼ^z5X$YI/ٔ]UdAf6forQXlx,]XS>~o5 s/Ll$mp>OҐ:oJh(vj#T؅>;Z֗+sC2 LШ?\XaqwF6X%u5 ~ ہ'eܩ,ʗ3#)b7TATVL5P}_w |6.3nnvgf{pmxtT3 #d&ZJ1走d[ (C|Q (GMa"嘀 ]YFB3Odu䍾ZY1Zr'} COD HuV/΃Ht=C1QtI2*fվ˫leVȕu<\n4ƶRI%44*M*Ms\3,( )#Ӫp,I턜规y~ W&# PĖBnmUX ƌonk{0˼eݝ˫EOquPф9hihʾeжiRŽEނDNflacJ񀞷"A.ۚ5Φ|ZG`6DVD L@:")4\TW@)l;ofV/%UHķ*HP~.xfyw:]ֽґR} M(W/vߦ 8ҿEJWO&ޏW-}s="CДiϺSgPN75ZcjKߥ=?D n=7s@$j w Zayzuҝn ,z#wan.1I.G2LYKkudGcPo@w+~' 70rSuB!7T~&i2\ũ|Ϲ]$)""tCԭOk1 8J=V0B@G;i7Igg 3!9g1Pɵ~auH%?/&͑"u-- &&K%$GD\؂l}֖ UgvCQ\RlR⤁ 3Ss\^=u[ Z?uāHByULTfM ޫs؞ׁ>]$}rTjni ay=A&M3&@!e_hiz&>mRaqcoR‚O2C_vp|)aEL$8&|h]o/kYұ9M?GIO1<ċn8>wж,ClMg^9ҋX2Z1 ^ѺG}J+J1TDPdP<%Pu+bzU'9]T<1bBMaQZ%)z4Lw2w1l"1RU?b ET 0E]l-*/muXΒ,Gikɴ{B2VvஙõOOtp4OL*=~&8VIw<9^uؤa2Zcbfm7 Aii53LHl|4HewpR,yW,\ E@B͢+xR:ywIewj"y, gSJ{':J:HEApdn,a)6);:^'feK` 1G+}fD7>V̪n7y5e6YfO*;0C{XrfAfYX|#ݿG\8ͯ+w>Kp'b&ti\Vs=-;bWTiUJyģVnՒ?s->ol?}4y7Ukd9_ep #,褱j0[79;%꟯kLv5@%Z`.')soωCvMu^ovSQ$2|7 DKEJM ^Pؐ̚i]x -SDˆj^Oav%Hi4l4j3Kd ĥUoѦ:;i*~Q1KAMݷe\+7+L)` ?~>[F":c̬,vb#{Bj\[ 9?k: G/K;{9+M ɰox  =>Q69RNH`FhlB >ֽ!*R<[òӨ|lIj?G|NFsT\ouKN!FY]7oz/z_ceZsT3eh#Z79araY]-&WW p\E{ؤpeCȽ4_1{:\hEҢw ?5%?B`㿭kow,|F3])XD#;)mO~xɊGl{}mu"pR^]ћc_4.N8NU94ǔE?ꠐKqk0wI2^%VnjG o7iUDh$<ΡgG]S1P,WcB)&V݌7K&Z\\_Y~/B?ZDy$୾E;{G Ү\R[$ʚڜ?vErT#/',_ fνS{:3߰2 ˹:yzc Z^%߱ľF8G9,ڍXbkmŮcժeol|}J_87L26Bk/'&$ۏפ(!EX#AiL^E } b>$7$4Jqd G&GGsm:%F\)f[m azDc@>^0bޚ MlR1tWiuxrHmS.Pb(!vυ۔.Θf[S-v<56#n}~'XG_f`yag7ǟ56OA9hX&ڑġZdKԧ%x9tH'!}w(y9!pg Gɖ@/X1ga9ڔC‡ V[%r iy9zIWBʛ-; a*4JǸ1aFyhGol.ebQ;-iDתɢ&b ϱGHE񛇠GE_*>`hߠ'+.bVo$\Qsb!A_4ˮ{}Ș0VZeŌ Hbxb(Bp $Mqܘ:ʯ=np(gSpmJ݉k(plVao^dGҎ_R:/ r˟jdkߋӴޕS\<)2Ip VA" OSz4yT@}tE0,qx9[9|| UV,:Lf!u-1 o&}C $\/znEX57r~:bxTw#1*yߪ޹㪮#) [ :z#R;>o=@Im.M* x,=ۨ1i_oJǴUUxўEYٌg3L].^t$ / QHi*[ ~Xз_xe^|}- Sˢ, 4H E 5y 4>QB 5 m6[w3Jk~ب0G0)]e1Jp5f2b4V4}6ifnHo{ ert =%žC|`S1d9WeioDD**X7S͔ՍymJOK^SC︛3C1utπ 񗻾`Lr,X lNCS|/Mv:eImvU0RZum`J@=I{ɏInm~՘& Xh rxyeQ̑[=-ݣ;>ǧ%pHd\Oi`ksE+YИ6(<%e-:Pِ_% w!Òu- 量=Lđ+n}~*qXl\ \%,IϔL:2x?ʛޞ?g7qG#ϣx|wݗyHWW X7uΙ[MDCW`#3 V%9ej5[gI4=`AX[E!ط,l'A^B{]XvnѦTfG(nn GLrNI,9PY4y.1A#Y K8kG v<w1H-(dPv;JcRGP P ,*"Lս29l|>`ـXUm[\㏆roL W%^& ^.17’idb|ؕ X2l <6+R`ʮcx%1k/ E޴-JW 4C4 =/C'6g Wl39)u< f/4@$)j¢$4ʜp8,L1[]!>?F`: TlB+?ɇ)>bPģ<ty:߸H|G%~9Sq^Ov= & )yԑ9"&5Mϰ3%j5sv52D-p`\A&Xgűȟb]:|F"͛($.U S(nw&Kv;i+6>-V^;IL>kny;dWq1ӒA˦xpq5321][};ЍRmgReVCO {4O $cPZ]Ab\NNTV+zj!򟧍 mrǙ=; )-]ODOa,kiwFy=`r #V nI;҉\|NjyZލ=צb=UJKIi1IO Cj י$4]FoA{` 俳Q˪bͣkmSXB]f;yRV?Jm/xO+^mmVXmbn0Pfh^ 'ws$ P7b5pZwDx|Y( |npHM9(M8W};dr,!5QWKV^Bi 8q2N QJ'J%0V)[ uMX|{9o?#u%*wf|B78(ShKj\~l{+'׉7Z>!E "VRPKNxy_z%oR 6*n-`=sS!/ޢb~ Ec`t!!2e~`TfE֜t>|l d`#~ ,wIJC-;MЂ ୼?OW=L_YyOaq!c\T̿l͝ԒӳsfeMX`rKdtS3Wɯ# j~w>P̆5Md ʸ3J9'˵~a&G&4u,xukNV,9|#ʳn؄Z;!&<ÀcT{&GO`/ v)ز8s3óis?o&%YJw:y>2zd?HF8uf+-jτy$ o3ž?D7"H$m~EȷCcmU6ξk|0e (5G/ˎM ~F-VHWaajb"!Qb; DC%T6҆G'(s&Lr~wnȥI/]x`$6`Z~T:e.\~ʨ)1L$S4ȑ_kiWFP%&Hڕ\|gpU[CS-`%ܑB1 uG7B𪠖 ْ^s\eWBUXQ:'P"B: OCf,$ֳڧf qj՞gvu V͘q $U 2w3_ƜTȌ sJw͹ARuS-1܍6\İĕ ]J,|_]_FtNCtV"` fS~$wmp6e[,.۱:V>E+h_ZǍ溦dLJB,t۟@DۡǕae&e XKON>|f0L$膝ѶT9iGsk5,ltyl|yH5-i7l_#'R?cZBn|d!'%niqڛC3m*j:eFDd!ƀK@;WSٔ!;4X dleA]Hȳ g| >.4n`+W՗K1A "OfMy_~>Ii<ΈTb0BA.a$8kas9a(_.kƝP^ۊڻXLIjm߀Ǟ]ga~mhv) IP EQkc Gl-(LC LOyU]Xy0UJ0cte!l*Kt%VVJ7eYHp0q̻ OJP(z͸He|-9f@B{ܚ /"(y;> ,N{|`5,pĹ*Ս:iiN0N;%JVx.lyPB%P pRnt_xgN^'3gimySVvi+eQ>EMBl!I #P]xwI* Zx&~N1HFs9լ <}3>[Z@+Zy')eB׵ m.Жb 3iM+u k?!h5o4$J۟rSΰ[_C%vv,b֗\j.҈&}xdu埙18aV)l~$qDDy,P')(_Wp,ŋt>ӿAxwnkGn(vy$1h-۽~dv]2f*9[|vO1ɖ14nq{LCECNiEm0>BkwT~H*8Wf^ Sw .)H'qP2C[mWNd[@{QKA_[>@>69{sƧt́ᖃȻ"mlQnDTL>DD+9e[* Sh{'̱vټgm`أu.HKWC#6%+h IkoFVS?:Dgel~`YnmT 9rr=`lQp$j; [NKRlnD>{Q3̓-ſ[gKSk.{?ey&e=kSpe8laԦdxAbd3V?}jzo8(NC+ Y, ܥxFs\l @S26Wq290( |&: 7:.o5!%r6L$P$qa/OjlQ/y\0y pI{\Q Tũt}h_%;h;D+5,tD(OfD*я.4\ucUj|/[˶[]I6NG2FBhX(kA_ O䫐`'Q-:-%5dks3o$ȳWjTwE8QAZ j @;yf;FxwE&w_!, LVS]8owvhie Af 1ia zRF-{W_5وVfA66zqdxĜGU>g; "Eʁ|+TzH&di&CgYRMn,P#(^U#zGI~!6!Fz+tdIOXfp*.!`(Fgfd%J6#~ڵ|E9~aLd>w3,JNl(+ꁬQZτ74zH%a;d>b5 "样J@VfzTV{GK"ρD5˲.`,2]K;M"`|AQ0hW7M:a  Zc^yL`;iD!QB6wxeC izPbBJk,)=CFbk8@W`X8NDXIN~vXl +B9$T0c \/S̢yhj|b۪4jM3 O&1YIƘ@ё_IxxLHs2wB%X0Kc|;ƸƈPLaoD RlTpٙB$$f`PCPtBLu.Z0pw+`I j3 CƖ hԍح.ԿAq Kˎ"F*1 00#F{MUжFC3b^hÙNM6Dʁe/aa~V %LL oɭ,b|b?D#(ݪ=5ԢxX;y kVŮLAyZ#4}Jub BWRdgUaʼn*8VDQ]HZ !_p[S u؊x7Zx̲qYqf66vPK[<%6K}CT3a DֆkM~"|rr>YfÉb3G mcoНw([1hH<Ґyh/=zX"H)ujRUא C-,D'|B7kvq}8XtQh]-N8WrB{cz=zwo_ (Z-X֗t5oәv?,g Vf}V,R=c/C&gڇgerfjj#"lR#5} 1#s4z(|>csP!|شbhH/-au>tw-:d)m+҈T+:QGs;D89}OG)ԥ(ᅦx]j[NO- ڭU㦪t1 [gqU ThXܯ}d"%LJ#iFk<4i1F,4nYL[؀NE15eZe"kxsk3 0ہ,C5p\ٵ Rv/yY Θc湆 Jܾ'B$7\/棣>"a!n A3V .0rq$Ň ->U5*[֯NjFlTΨy[x9lrM4>IN=XaޖS`xF噉$q\N'|`I&_ut~屩he!h}FOz 5.lWS)Gi-<+8o(B]%k#Z5_c9͐lIΘKy@Yp(ʳ%бtKE֏ژz+&b &|К&*6ʦ1"1\ |.璁s²x ;EMO 4E֬̀`gJ d=~LwYʔuY.~պIhNU+<=pALïLG"~ce Xayq1-TvY}:AqKK \>+W,+"GvFvf<-g!9iYn@{.3-d)͚~h[DIiu<`{Eѕtog. [^ہ_gyyI||s7 (C?Ԅ.bE` X %\oWLi5$\,%QqawXFڈ{>!tn=YjsJ=.@Z)e&-RNCq靪q nY;+Jq2̀}ƍI.>nm&ñ%Qmt4f 5-#]ԓ(bQדH1LQ% wXhH:$M ˍ&>&JGRkguHdτ}F| Tf V CsO nC-uaanM`ǖ҄=Vg Llؾ#aAlE(eMs4VSvݍ.7.Cqj5hkS[hRۢ?* e} _2ߪ)S:JCx P d2ןF)(:%QUpAƯ:I 5㎒hfr6\0{gY3F 5_dˏ ِ~± x1'P~38 .QBsPK*~ a+YZVJ.\hpy_sY4NvgK.'d+r(%,`R_EݞDZ#ix.hpd>mkqJ`b%sڵm lK xD^2á?V[C9-mj˶Z| ^\O=kpFJ*xK@ucjx,ܫf%[>o5>[/pvI֬b~%چOd%qF*bIBd#bV 礚?`cPyiO@]*x5S}^Y` t2ݼ;o03l+!'mdB*slĮq3t2n&0_IӒq:ZoIZ}AVܿ|%IbQՠB2]CW61#ր8ˉ~HkꏺWS3feX/f$6BGi[WPZ'•gz03^ 'wV3F7YGK@٫`Dy=6Z,^[W&h5 \lJ>%]:qa7 YZ wCz/ &|泇*UfqVhg8__l+a5$yA̎Q9m 9/?ߨdב&5濾OSË6 ԑQYr r'dw(p%Ja/TͶ'U1ޮȩ|2R'4ZǔLw:K KtkE* G[d[=gֆnM%X=q(7mJ'tjIh㶗i|~\b0PH~nCvW"`R|r4u{9\n0 @0&;w"HXF%!5r\wwACAK),ӣfV> mXBt *\W=_z5}OmJz\?AvV85\O'E #NuDϼB@&H}p=hwnҷtNq"JXN( 8(/rϢEka57|qS%3HQ^ۘ!#5s@"q'm 4xJ<®z?\'*pc}:HN xpή)ІF^IA~q">FC*Ruo 2G.SCe?HͽݕF 2]sG޶#^<~[ʠCDcqš5ڿ~A7Ea,QŽ=!ߪNJwV~Y[o! "S |y-☋k<0Y=aqETJV;L'L@vsxry䧘$G %ĸf ʶ]bP{1(8RT8ER^TYpl?00᷇3M9Y4 kypӋ9CmlaBNJYuGZT%_eakߑGQ&,W-(7jfq:_96tx -)7Yϟ?gNpolC1@ɛ (rITYXTq[.ra`4 YxV-2=5={"؀ ,Qc? @@Ǭ'FUz1Xu՘hҲ5R;hoK0IdtnIC!6S Kڞh>Q[y8q[jeU!Ak/"֖3mf6] 5UiN[)Hg֤pez{Ҧ=Zh4<7:#?;A(|Ҕ#G[z;b㗒zNi V@P k:;yȫ?;ϒEyꥲY7l&c0.{ "jD1B <<?]w? =7 AɎALbԶmLD+T,FY(uBnIC-1{hes~K _ bL!B =>A08!y{q*7*ׁW /xQ4 *Mu?@Ud>Щe,C=;EZ5=cY"vg|10.>9amYݖFӕ.^_Yy!jL8ô&ci$6;odoLh|ȞPEZ=qICa@Ľ g0r %4lX{*Lߛp"?-<(2U" *y`/' $,!5 iT4+ĴlynJ3@H lFY08ϼaQj 5sV' L|GnΔ1 ʗPmag߆(ʫ(ӜC Ҽ֝{)BE #Kx L'ĞRN:,OYďrU;$)pݮ;h1)ϤOr}0=}iyR̕&>LQ$WӜE[ #$'}$NNm0>7*Cj{|PwiN}.v2Ms*9 c+$R WGIax6x$!Ŀ(4>uM:IɽRvˉOb~Vz'q%n)Ǵq͵Tqvi Ey{{R:jtD*2mjޒnT?m/ϻc9RC]j@^Ώ,ۼA*b9OB4W6>I{L[S1|,V^ԍֆhmk10%%f%mue, N8V a)ծEE?I0I_'A[5OA/,BoA%-!pLYf3EնqLl)B&\yOzhokPQJVq=(zeO"% {^ʔAAm3NKޛ,̹+Om:'gy;`)QmqS.Z`F9]v o>9o|J[uK:yWE4ME\e٦#@PU0M:U:ǰR8%#Q0>q2WV_;ߜϲ?'" Ra:l Roy׺Fx&TWACxJy<+}8A6FYc{oPM9 $>uSޡ JPywB;M6/tLdZ@p}w= ILaPҟ)9&-J7RV9rH Awp< 3;(ir}0D~Q Rn>dcA_~}_7Zg oMPE f8"Ȋl:jhp>19HH,;AF *(8F?OUOf;Qx:`d֠+j$⢟`@..nA]wpP*g3+M4. K0%K)iyp,D1r`hu/ōܸ~iɺF `C($Zɺz;@QDD 1T]9+}fg?`NeRs"0J,^ÏFҟL Y~r=䈒v˚&7ICy̿T^Ρ{I5G\ͬ$}h]{XPuh 1ʰ KCP ۹{7-Oj4K -F2Y @CE; MhNBM(a\^mjUU|A[~ڪ[Mij *Cl-\&|Ԕ!`0nʄr zLh xƃu(J,Q-+Mc vs$f. Y$^3N,?J;D\ K4B2(ו;E*$D_C4tQ$hPG5vώ#J`Ya+ _xsI3*#CBEjla({lʘͧk&[F))hasZwj+w׼[tt(`\Fb'[Par8U%3SF?Eo$CUKYQ`Q1&ȱcbd[!8.DZD?J:#JlCī^l+š{`B`FK9iA+S1 hژ2*E@ N_ypӛZMF8繲,tV)pkD'D|RH4 ~ɳcnP_LqLw\|KvbDL@?OM..%ρk17hJ?+s dim6n@L[Fd~}"R%Ceوfx|mJ @~`Ϣ̔?5,#Ms}IF*#WvL{QGQ7Jwgo'6Kȁ{u"Pl4@1?!W t NZXwV $ 2Qcכ 4˱I#eO$ȱ! DO![r 9$\'$,;sqM0c7ra;;nHr7h(rA;ʶ*,CAK-3496ξ&Za+s-f|EmFB삪o6+W#h qI\R"r-P? Ϟv\2t8G:@AtK1ln(׭No3?5…4z%v:G2%&dÊXv1Fss.Oc8,78XTP ^{anB ȟ%u_Ld&rV-۱gxiv<|p#s'a$Աh--kS K4͊Zdb:5. ;I6{5(9L=_s<˾\kϬ:{U[SYB! iFÿo䔥&?TaJFhGiC*dnzi(8dk,>;EBdG4ְbd4zyJE!Ejz(@N4BJЇ{0̗E:+s^D?z َ9(`IL5hRgʀ P{VPT_2>p-5e8jEVJ?ٔ{iTFcI[ }iur vSH4 X{`nOUcKЁ8|@J .<DnsqR줍M`m0 )8nP/k{ K_BnwЦ%/xv^y?GVŃgB><ډ}~SʣX'*:IRZk[/ Tmnbg97_/8U :b΅& jʛ`çg扇Ωj^ afB[P,+#4̖vtQ+6P3e}v8:o  w^NxE 2\_V}Uyc <+ӵHϣoqd>̃B&m^[xHJeCr㾿O|*fp?E&G?.4t!?ʃsB*/&s_ 5346j>e6QP y ӘNeNe>7vHJE$hA|x|\{^m F&|Id=Պx zMU{"b&xd^> XjB.-Fd$ pg20g!-hK \)Q.eU%n@Og0[d5KW>;dyPHD \lsS@V=tM84OÍFZ ZPHPp\TL/f ?6du&[{3f \!MU@j7fm|&Cl%C9(hHĸH{/wKiQkdPפa BVWuwפ!YDݽv8SdޣiXwf_17^|_ 2Y`1;eS3% ϼ )z꣝4c\H6IbXp5kC?R.s.FOt&r޶BBW6!;V1T pv_t4eN#Qk6 1*%xx@[PV=̥rꢻHX͚8 1DFYVHOUPVͻi <2:^bѝ4SSJk@')8NA-9Kcaf怬FY*"3W F_Rd[D}Fۗ%))7H"8W{ ! ҁ9I O4_*ΈWHG3Ò(bl%4(-f}Q}${R4:wFk.~J5C}lt? )A"OvA_F8L@G'qRr֛5"4n&#`hSC_XVY mcdv`]!7\,e(/Wp:ng;:T9#jφ'v3(#s *B@l2`0ޯkh3Yp( E>a Xx2o9z-懷lV󅔱xеd){x9o>F?@%LAƂamIV z*ZuQIOlW9`]Eq2Ȗ?lBIŬףe7LQ_"FRd|"ϯ~Ȃ%T]6WUIq5҃A:_k>RC'Ίg䧌'tyTa;}}ˉȗ/\ňs5*|_\ސ 2$}P?c@vߦ$G* I7{+ N U}FFh{*E44L e>!1siqHC^LGl2e IgG` &JRvCoS}@Gʾ13 ?$zQ"b817Z;jڢVD,k7{L^ŸfZb!bGh6W3)꬗[5X7Z&9!ezY΢-3nwplhs4TFc4 J.} &lc'61LQuEB ޅ(YDz#kV"=z, 8AiLKJM =5턗hz 5S4 \_&ռ]4z]HeY}HE8D)CuFE⓾2~HVٺ2جBdBPγ;21v0Iu+Y)r?%.ɿ6k H,"9AA})Z~u|#ȿ߷ڈm5+K L n%Y?>T\;fͿ_*SVO0;1uӽs5PsIX / i4# lN U{bPJ.h6yyU>UYEm$-4oZ<[MBtl`}3F]ҳ¬iaKm}-)\}( &;,̅#.\H{]^M#|8 wErpD)+i.SlzƘX')jg~!o9c@1:tzV"ᔷtYpҮ8O隙RCͿ0r8]` {HQ.p>tۺJ vr~"7,i4UusaזJ D9Gи#|u q$6 c!uo o'">CZF`iH‘iȴc0'gZԲj6:e{2tӕ=* 7MxbDb1^ґ5;ɓb`K94zŊ1tj2P.ޡD$R(y@୚h羯ϟj (F=V;=OIP3؊?g6G@OKԸc[R+aI~s/cE2$[Y}df6N%kڴ!e54!+7&0Pk5mDXzy)Uy%|ťyOSVnf4'DT3rzF{[:H_Ʃ;ymӠ.cPsr+1`)R11ǷӴ' E΀ˍ %>a\1t ~d,Tj*0\0*Ų }1k\5ᘔL19bPg0Qt LĽSbD}۳cvR7F#72ɜnއU1-|TXHKƲHvhg$pXlR0(B1Mi̴v<.R84v2[PZH,v-U6m.%aUDK"b/7 'yAeo"rv}E[`ޑhXl7^Ll&q-?BMYk)GzR=KD⹺@ ^9CXݺ&=!^vW ᖙ4:ɬPl瑡pbz<4PP)꾪8_C㟌,'ͦ{_/^&\kk2)?{4+`%X?Č81QfC-927ѫ9SDไ%)6;YN:pc瓭et;iDE.dIQӐQi -W`Ne̥a~! wUqvLֱ΅ CS7._Uqn_ j~fظo~/cí>zR(dCaoz)95VQ2 &ר˵`g}2E;%؊Bʈ?WxS -V%P ~F-ia˅G+&k;NsQ&jcC@<5D {Lnvq,loϳaRtE ,] [|Yi oH"+c4}sY8zUn_J|ܞ9O'IBi$ieh,n+9#9D{dԦ\7r'f*ơhZTT#}C u 9j\cTíw$E!+ ?P %5Z$myyd}a.d=11 :)%֘nu1F0 lz_)j֑!jUIohXoώsD}F-v>CŏIIu9\QpUjCNnO@-!EI7`̓7z.nFN Q8;ݬ97I!鐈YUqccQw.]SjQ5ّЬI@&OwW@*Q!Wye. `7[I,Hτzv!{;j9ۉȜɹ_ =Wdžm2zIЊn#'G0/hv 7~gDW>W]dw=+%@w&=\ubkUh&l~M8&BKpr(yz5oڒ".a,ص/I/1Rk?wd$<"W9B9W@rumdI^~ =#xϝU߄*5TL!Q-â#SNS囪j0  ,I:LЯSqZFȻJR^~|9紒s>|MC|.Eve@ueo'CeͲBזpn˷e]x )yYnǻǚBNu!}83t>3p u D+oDḞ&J8FC52\ .Y6r/Bgz!VSLbM@4 $E(À`r,IyRȸj`͜'>kám/79Aly/[Cj\H)B[D@ r\P':h ΕMlGod#]bybyƷކNzб|aGI '-;!'T$sN8Cu;bKvzH\.;cBf1{ 5fv$$eKkh|ʙ҂+/#=F3̟\wPMWp(:>߾vN J`/<hv]p=Fao̓Ρ+I62lm]zn.8鲋,/*sεd R|iXD/DzMrNzE rnGȻ4G }gO*\ JZfF]V9 GU\6&2vd\6QE~6SK#t(Yg Q5`bcW8Fu/K]l>OϥM905Q}ٟ QNcjKږ2CA(j ʩ`PDiwS溚E8QlBq.' 㟅]Kf :8C8vbͣEs} | -Nxm3;Fht\Xk9ĉ㍺'^L;ƖhJC':H[p)8M)<%)z@OD6 ƒ?@h=e[˥T / „627+2{Cʯ $@َ?"NvKx`3uQV"C1=SE:X=Kk*o8}ځdWIVFGC{d|Qߒ9 u}^%'dV^Ɛer }dvwmok֧N g)dF.y*pRXW?[ݤd~#92)ЫQizT:ӏ1T7KНzUڤb[[g2)YYR_:3*/" 1m  `R{D\yoBSOgyz.>/מvҫa=GY*;2ē#}1sޖR67+2,arك.plá҄ByƓBs7RG)Quk)/9r[~A1Tla VЈBF(Jkc(DQh`ruPQ]e^*0)Dz{UدCkU=@sxr&GϞMeXAITv˒3±4Ow3UɹϷq+23;O)}͕Ŕh]f>Uׄ <&\Yd'rPL"Ű3&T3u>OB;H8$X;PwG' Cw2i y϶1j13'f' QZaגAy'8kZimtr5̘KydA4t¼̈́:#TԒ/r.3xl~F36u|P OcdU1_*|E ,&]m_Zn(Ojr1Sa ,G5 r9a72NA|,R狏b ZI |N,qa]RY-WҒEBߙkg_s54 *t%5VƴL-8av\i@;nxU&:~ԙ^ A8\l7}7 7$IRv{6n5ՙ1W~+,qExS<ӕ1) -N2f)Jp.Qjy`'jjŎfKd LO2+j^D3^RɄnȨ7Iy+80?Dltߢu'q(f |Eݒʌ2?KJ<4oI5 3}~%^o!+7/ >!imm,11& XlQkJIsڿ y dtvH"L$A+&ԞٕFbb!%?^wQb@! HL{w'K\{#ɉ8|@cxqF8S*V&rWήB*Ph9dTr3mPM 5B{>^~4 gk!˰4D SYROxH߷אѺzQ?2?qӧ[+C4mՎ )D1%1Y!drFEΉ\'lwhi@G"*ܰ^5Tzҡ0,ݟx|DB5(gJB/xi jYF~ew]6?dRWh&z)TAs]\ˇRկJ6Te5ˁyZ9/Bw= z 7uRSQE*&N@f{0RNEK*+y?Bmxwitƽ?0;zvO~+ jz5nuKii'.o ݱxYA0N\+C# nW=l/Bm L'#ݿ.j*J5X@wzEk 话~(h*@ZS55/"_f.vjNb8cV @lgUe*d̀6w*/Qgzd ΀ʸD\Hm.Ma0o;f>yJϽml>H4 +x+}.yl1H+)4(DHUS\ "~B>3Im/Eok@in:Ry")#McxY>݋ #D>UI/ L{o)3 ]HyFuswsxR87ÆaA *ksˤ5éP8wJI*t7)>>/;kZaN%|3@!!V ge1rsUH]Q?ׇ"xX/A/~fu6 qZ リ+7N[gz4G"beV=(!OSobfHnٴyAf>*D-li2L*EXn@f2'Ԙ9Mr^2M/rLنf#`UANaIf~N4: 0a޴E.Z.g c|0rH4|}!m..LG(%5yxC:k°r|@Q<9-5Q!nX׋M<2BrYf_U-fCS qx5 t4Co䣊2`i3_gQFYBo[Bwj>Rk6> aōms/6x4eC9 XXl_1W3N|/.;ԹŬĥ) $yoʛʏte362@v^_ݮXqsG%h,掁z{%W/x|1[ј-V5!2ଛGE#!@R@r*Y8f?U f7bVFckxd,P)Aa-?LBķbRRn#`^w˞NJ*<ܹS 5!kQÂ&W>8[RM{aKȮ8 9֤VuMZP9AUWLG hlFh8CL2_j`Fe S4cTUDE`c/Kס:GG-?` AQ9^.pK . |3z 蚃̜&l"סDF|Y8͔SbQ\҆5z D;'LҦXNHrGx;,%S:6ג\yi]q6hbPl#6G:j 8g~eL _Hi%H!xPw?;TDcnQ|J1. fZ7\:Uٍµ?ɏ˿+c |j݊,`=sHUQGQe(yp<)U?.Mяp{ak mqۂ#8^(A=LqArgxm dHxK?ɘE;PRr x m.Gr0ޏ] !A6׻gͧ/$. &~_Ra Y͋u$i~ס^h*/'Y4BYjF Ք:Xp.Ia#sߪ$@4a Y +WKo)3hF N:{D%PƃC-גa0co*i@TZ~ƃǮW'2z{d愁gvKgV~DwP'* ƚ Q@]&j'+-;VrfwB]A{R|d+)|AnRIt;;lg9nqE'xZX:8#d= nE;z dӌ[,=,CTk k*@zρ/unr?QŒ4ߎݤ{:_YIaDb8^6WIwX?_ҹZs93;DU0_̱[eԍ .0E3*Cٍ ~/'.4šLQ`h<dsx6(MZ2+2q8nԂA#ɒSq&yWf:9F쇲RycGr"" VA($3 ǼaL=g{vKoT,3()CݕTaнP,o`@&+i/zL"\ Ԛ?۞9zOLo5NqH:ʾ36SpCE/zOjwH0oN$żU+:i{Jb0{_sx> FLD]2芶4ӆJn#?]Qcc o4voաY%i'7xWd _(\aiLHS=R*i)VAܔ5%rMOrr m?A<,];e): ku܍|A# }SU2K^Ij0qŁWMO\3d&=㵙+ι8uUUȍ{z'}>c_8lrph~ټ GBT #s%0(3 8dю2i*7M7&ܕgpC˕B]v+m݇6pdL>9XNk܎m9ÚJ,@! _ 3\NsxTX"d'^tŠuQUwX mb*ɿKQ& $yjm`-K*= q'mSmm`];x?"ڀB836?Ϭ`{nԲ˙W[ߛeݣtZ̨(d*݋"[Z:3b*R/403EtdqLh-11"oQF{|HB ٓD ڸ)}w;BtZ2ZfJ[U:؁\l_D_݇򴘲)"YNCYkGppR1Ɗ 'sq8bH[cq*eP%2꡾[16d++Vѹ>|3~ ܦT#MlO#kضਸ਼ЪZگNE 9]k&V`m5@gu[#=ч)b/JtwkkYKalZ/x'DF؀gUK5ZŻ~fE/BB|Q8g65#2?\C76U9bNmy+w@9}q]CSEti4œ1kg #8џVGPoDM7+՝U&ER΍'cP'ZzbF?xwD8B }ޝM{&.j/={8ԀNJUUT?U%/`f6j>>z. 9mE>eX=#水ehTm|*WJeJJoU"-\lK~ ZM4|@K7g .ۊT:lObL1u`@N7J՘)0ihX8xͶK2!7~  S 1D+;MJ3@bH̟}&yS*d8Gfw EcMHb[ 3t6fEmJ4Iv= k/nRqh%Rb?j>'G żnhqwTõ;ǒ^-=:( @SqHᤏ r VYX.IoHQ:M͓Uj< E')<Áj3&ˑ8 )%i(jkKH Z+UELb_ꥌ'd-*|R0d@˳֠m:*u#19?fbHO?Q@Ttθtt3d](w.?B$R}H[<9sT)!4t1s[I@gJ"T٣[Ft(}lj066F ~ơc$^9y ̵Gf^ 󡜹NF6,i8+;]#X^[B ,US(2V6 Ns*֜pv M\EVe=fnM|G>4F>.$89ntMl 7~_ED I_ 6ڭtN}qQYyOu˚= bW^hiC.` ,'k9Gh9l,.Dw'2MKtՇ]e; m|`R<P8@k0 H︁zWWp@}F>QY}s'H2jΪ)kKR O A^g,N\]Njd†w}#W@xK^.\חm?6euW3i6MD^!h%laH}uUsG͗@$*Ob[UsYMjT5\{(B,\:T`j\rzڞ 6YWɖ~٠ЗLu_š0z͕u$#9(  IPN7a12R_mT`F^>lI[OAL`v!/D [eqhIZZ<~RMrAC& ˜r4&/$>KLq B0q9"ms|n9Y4MğԮn:~_fn0Բh ?%dq `jlD+P2/Y E1/)E4-!}b"䮼!zZq^PSTyTa`Yr[(mr K$y!]9)vGONosmjvKf SƙLSҘ NW-0UTBQ_sVy|-Y9_B?Ci3NC EvEf {pX&|5WoUGĞLȟ올st[R)Pw_e!?%΍Tf({߯zř*6z: FA1giKAn6J&9]YE /z7%+!H#7J0(r(8;`00N?AJL{𫠥Û3ywH\U$hk ,n$ p,]4ww25Y<6@*&q0Դ:Q$n5[ sE6`̓+yAk% .^D ZlQ$L=wPĘ3`s;Ae8GX-P#JO0d%ǢXGE7$92t<^" |s$:Jlt9}藮p5'ԒE(d#_{}FPŻB& t^wV*-0z|=Kѯ}/!d9j]kN2[3T=eƞqGX{:0n+ Ğݦ< {AU9pUgG:V-HiPj$#g1~VGHfM})?+-|9*(Q_. #w5,E9MZKeHBog0MV ]ƨn.;tv W|0ї j[gir_}Dp?$qio%ppdg1bgM H:/vw^GcB98mP>%7 0l|is~I95 \nDMy"P|-Eb5۵,NZnGpf Gh{blWhlsb &RP9ѶE1^."v@e-_@ݣRK vEuMT8E͂|"1:\rFC1lbƸd3B.׬(3I6V,~Ez&*H9t)UñhJûOЛv5X]vOX< W㣶kBgVx͛y|06c|!HvIDE8ُ<Ji00[.`_,Ĉf>: dbQZm*->.Ll(|לlIM#CD=%lOAed"(( k&޸ĶcS.~ޠ554ê" #W1Tf W4I r- Q'ʞù W;P묹IŒ!]F a\cAM2/iaw@fKDžwh'qͣMBK&#`Sze5|SϢٚ&%%"ϴ#2CI;}]^kΧTNXw5y*,iq`r?h g``nPs؆&M&2-F73J iJ+#|| $^] ^Dj@;JBstMxא,U6<7ZVtߒP|^̺JgUPUB|My}C|' v@O]L4"f='Vajbq20憬L$R9;oy&<=3Q钛5¦ּKŦ0&,JsݸK_xw\eOWR3&`A=X%Ֆ&|FY,m\w ?%a#g q=]:k$պ 67-@?Պ~?m7Q.}J֎> (R&uً20lq5Z{Pxo[ fp`迎n!>ng bu g눫(vB4 W \H5@ zÚҢ]P]pRHIz6}6"-A$2{pc'pt/Mt4OXCr7ia> 3tIxR?eg e;2bԬߨ%O?Fe&Fn=)M]:Wwٮ %p}@u}-v2(_+BA?gW"ȴV2pK/2j!I *zf<.ig&]ł޷64i n@TKra| ~t FG?S( :?ر \g|-Y L,.tlr?`]JEYTY4>_?AO^R~nW!YSV{Lu_uA;H t ρ2auWV_5ISFAl=-<)4w)9-_]6Q'l6u&p;lE1k' 3D?wuy9(=ׄp%Uۤʘ/s0M$totiAݿ/|ԥ[N,L>5] D_/HApbUF[,d'=|}ԭfKV >/]oiqсZ4tlGZN@@3ϲxT4EZULD_ԣ!HU$tɯEfXaשv̔g*2ϯk>R%0\XvSyR_L:g(5 ڐf5XX&OX/'Ơ y [1%!{jN\W7%yr'?nX>ʜc{F7Kif"û10:krjSeC)|:K\@A;*6&pt` 1 Y 7"ёXKڍmN`J1!7:croF,;5]0 \)'gힵPMַy}d nU4jK/2=IM=&:W$cː r$E "*Sc7TÕcFdP6k+ . u׸NZ2& k'8~gH{C뼄5~]Y;7`sPBޥO@GΒÞ DNR^K+ Cҝd|)$}`fjuWmL푴u8"HƩoMJ's*٠RJkT+;_aħ-,0'Z Ҋ"%C0.Єf@ adֈRrX y)@eqWpD ưT3|.:!lU ! t4 ]:@}9V :`΍|NU8t@HAWusor b"չ]V9*">#Ú*g_KYv1K˘0'Q vs=i0Va_Sؓ?[}N줛1P^  cƷA8SGՏ_͑Y^+|2w*!6ZCԱiu@Q!L$tpA .֟QBS#إm50$ؤ'tǜq)iDj$F2s2Ջy!NѺk続P)b_qqA4 KL hT+ۅ6Q##NU2hW3䛂? %@.X20,Ɠ:t~z6[aX=*hIMSm(ڮ܃:[q_Zl|x]cHvDGDI8My+;V?Uns /5GPE1p@bwTK-+ [fg/%r^qB;«^G=&\:7K%4rb#" '͂åc;$@`. tC={/'3)!MsvHD(5 4;Hy4bFl̐(4!Xٹvg&DW}~ 黸/.\ P5o%{Eejn>X,DApԘjh/To]X~QΙ;!yHU:Z"Of[.~ Nk1ڇ؍ [d\1]#p,–miY z޾@MQ-ҭ| mLY.=k* O=xX Nr50#3gb'c,'j}5k2ה:*+ IrmDža DÇ =Qs :sD~ nX$>5jG1pŚ Fp՜ 82;qP`%z":}+Pd &ZO"L _ zd]NDFGZHVmXwa|i\!6Gk+5FVb ZDQ l?vY^nKsK╖br%Rh( C1Ar@N/g98a9T78r{9 pFDtPyjD@zg7>ձ{W:;NvowsWoJl_mՠ69vHµ_D3|]K&G;g`{TҨ Lwi>N}&ahWE<4\؆xJ&H}X,mITjk´OêMb\1ӅK'jjR-i'Oabaf gcJ3:vsqf9J-Ñ`)?h1>-YV2n`#YnSa/QY$消1(-1CWÜ̼TrFuyfq[4o0ƒXD< {LYW6<*_H~ygz~ 0F$K!; Eb3)ՈWДlZt;Y_¸V|}}ǞJT1Y_vcT@b(qo8C8T'-OzK:; ɽc?5&I wC2Smr?\7O(1E1`$vF)3<Ұތ1oh\&*,z3a7H)~4ej ,.<_癴02Θ1q|(2go_a$HP֬o:TR&l-yo]aӽD9Z&bN)}FƹPO-~5&.&mVf<1UVA WVn233kA\J\T𾃝3z:?iQwwZ IS`;Ը3#jee#ԈdY^tMR~bCx-e\w#*8B0eMZr4PStp_L /!+2UӢ ?_iE+o- Hٻ. J/M}'_t{gj;*.'ĠCȌ:9|+U|.o=TRn)E(0!{!Q [2OBOZ ] z9 0 >/8ԭafqn}a7 3p 4*h"DbFyTS.w N_6hOѸ\xO5.mVPEpF i{Z 09}^5«5`c]7p:e%Upn)q ("8]ѳ4uo\t?MCc8̑3Z2QٻVVn5cʅ['_ͧl"ьa[TD -@ Y$kL%jyg0 Tw $g`v^XOVb)^-`9+B{A3tp$67G<ы(1eQֶ7'XA׸-3Xm_jnx6(Im7#i]ʋC}F\>DmH!Xj̹9l#Ғ 0]&i_q=iWsQ_i t0+q!6ӗه]܆+`Ē+\-`]v>iq?㉼&Ĵ*? {;uB_ԥvLt5%+Wi^:nRZl6~sx$mo;=o,'K4g k}G?dtUQ:ĤcxcSKb| f=g1#! FP*5OPaKp#3U-2)q`YF} մmɌeVGzl%!._Eqk1/ :F&uN_LIj@Džq7b .FwTU< 7f/h#Cښ@4Pzfx_,.5)LMf߭z+dSfW $BT5z 6CD) dT,>Yup9WK&4Vkn)F䥀?]df@BlZ y `QQ3r.R(Y[o taR~<5$R}wrړʑ] OC=C\ geCmW CpaHG۲(̋R8.T%U92ns-9&~F=yRngdzh,\[oWJMAm-LRPrMj*2RUxk !gŤR7kwӴ#M㴿Y) Zb\F]㱊 `^2>ӡ"< ܖmL\v!*d8+ad+c5 +sE8vaStU=I*4pCY(VNV/pzj3aOi 5>Sg"}e#$% |MJ-]wFR'$wB\k"dW7\FLuubmCpd]|Qχ{P;<@qSI'r$o|Kׁppo6"nTꄰ5$j9c:EwtE+N)!efJ fI\D8ӳT!.q}[XOWh\'-ŚGT"amR|ziW  ~%,.e,Sk6VCs9i3?vmxY]Э? nׁ=ExpRD|+5ezhʅį% <֌K@H3'*5V:&5[WZ\~\9 ۇѴd_켰a*3}>Jf琄.؀*$XJ(/'`k5Up͉Z`gՍ`,pWcEa{උpPHaп$mB rKmk*33/1 Nqiot|=}sC[ P5i5k>OdJw1STm'Prc ٔ ?`@kѥ1+ncIuh)TXm,]<B &ΜT)f`Jg"g04ax: Huߵ&@E*<'mց+Q%}$'~tQV7$g/XѪַNV\w فKSa6kT1їUk$ܵ7^dBjS8> VY gq 2OD#=`{i虤~u[tSa[H{[|atC''1bH@g܎ij{-kN"áa{"lRci)8fNY~[b+|%գ(i~}N[ ;u!Tj}M'3=HK]'n2H̕,}w{ +TQL#D苗gcPj|r01[T'+J* ol#%B5N[{ OM+D8zN]SlԎl?~ wEU׏%x *4&I0)_fY9[jO)ʆ\;4 l4C05N%?YQ X,xѥC!ZzbVt F$2p{Y_2:,s[(@,ׁ%!ɴL6~On;/@/iK_ Mob.rID86R/(ɿFD~]!Ʈ<¡ M-y䷒BP `eL,ndaZ;;2}:T r` aG҉/-fwKpspv ![p,ԍ]H EJcµAAfBSEM4-Iɐ0IDM04` .T$kk g]'&W26xaV%őؓ)`Dvv5Лxp΍S3 v`&vWɹGd WV=f]]bCށh_]Ҫ'ä%c1sq_Ibk+^LĐ.9@*BcHw (Dz 1[Ƒ>u V+bOA.#j,ͲW90cs FQ&tqcw'Eqa\9|u cQc 8J%ٗ P+bnw do{fr4NĚF{S3Al$J'@1Ay'W<1q *Fpt*0p!\Cqb˻'UM\dW Wbw<05Ċe@33 ԠK/649'TzP d` )zQ08>Nf9e`Uϐ7O:Hg5H0Z.j(IBP  V^M"wS=ʗ(Yl-Ҍ}IOfZs' M?Aš4W.xaNHp. P*.; @$Yə((HĜډ~sΨ 7+) yHl'S0%_݀l,멪w}[U}NGgD_Fr|F)?x#ɐ>9U,NB֩:m&^yơAVr E^"d) xZ>̎AjƝFd9+dvt?IiOL1~ً]R$;Dh)T8ӡ)eKiiˁ Ճ$n>2^ ´p:BF;qx}N0Ww,g?|x_;Qn6x#f'>MڌN"8WlF ^2r!2a>6, Ԯi+Kl%ʻu*: ocqbLXq5]=#=r(%7^lVlM&^ksr"å$!)Nwj= Xpe`PM7체l6\>9[;n{Wg2ia+ pl;?azɭJWL6WZeB0QP³ pn׭"u9yQ[7â֜!Ww3{D0_Weqm ɻ!٩j 9gKi"t%NFu]7&`38 !o* ~" LnWs=]ڽBԨI%q-!&`_ ;DCp=@b7TzxQ/& o!`(Ҵ,t5 EO%ĉwrT)YZ1 ?(Ў$\L"U_ ULv-[FWo ^\ f- wUr`L/4uӚO|STkSҼK_ 0Ćft q+&}x݃)^ V+}N |sfЉ25pZsЁV{Jʭ9 ʣ@WcB.} -ƗNcȾP`qGۡ~SR75tٙ´B4",|,ڽHc, ;28mԲɑ]U*%mV/*oۚ%u4%*k-G%2c=[=5LJ~R);^)L0-Ο+12|NBk_4afPXj5Ĭc>kp]I tsB<>48ΟlBkQknkG )o|VeJxR5 !721^<>Vl} xA(bQ@?qL \ҹ)gБe*J$>6ige D:47MZ망ҐpmO;\>5GKR9z]F>lN9q}4c1O$#A[1` B#jo*v~t5@_hV}J:M=‹5^*5I|AD5"R~"9Qlmv:K|ߙQ°.)و=bloL}a9}wN+'o]RRum]a9Jdsb?Aс26l6P)uyUɼ=J]NWBFR@%6֟0骡uJ- pT'I~<%> h ޓ 5uXT%8߈A\qDVy!+9!;sFU\ҙ g]q",vJnBfP0Nj;/s#6繧er]{fv3p.HgtܰWuEr^2n{neޜ%reiit̼ "<&Oij&h:biKN6@z6|"=xgݿrhCIe4Ur1԰s/ ;_b)~YTv>̂7DJ%u;g>av&N.e{N|?cA"H:ia隨i;gɆU +0K‡9Js/c8WuR1.ޛ ʬԯ{uR*~N!R}FT1Yda ,+/&)2Q\gKВQ#rhA*񈞋]b_ }&ؙW+zֳNe6.I~*v:8'N-odP%T0=y1yFf]81 x{ <ᾀ~c*ѽM v>l:~E(||qzȏmk!Z=Y|L>KT40@iq,4-WL<ۥN8MZcҳaaMa _TV&+}!P[~븑=;—ԥ GKbjsΒ.@b97L0t \-3m< `tmEyא{v-J(}13j:ov*hl5 %@&#ٿ53˔:U hG"vHqWs;іeɄ01ܵGKNi8m߬n(4):6UO;:FoAE$p-DeL"z³wYgb/ .1\#9n#! ႆ^m9+䅹)f`yK&zT~b2hp1S0(VZ3h#hk+ح.e8khЭKMJEiHED0:.z')?&#xDB+i7K*f')9t 2mRϤPj!'}R/Rp 噳RWc.^jX>dʥG?Naw֙,e bMup„ Փ5U_y S6WZCXڟ,kb˞u?PБ>z^>A\0bAtNX0p1n/M6xfeD[RD[5셱3u<"|V[daK6;C>H[=`}!S48g\ \KF^'95Z?eFL0E04$:=C+ǦV뛰+="N׳B>PtȄ>0;b/i:X»ZgmgWI# P:&xߦzv}b):y~;kWX5ɥ:HhfhLڭu;1 2\s~{7o9}AO)w~|RFw.C~xQy!]DIwӡb&r * F̄;Pw~h&MӐ!-T*2/ eEޤ QM}r퀚^gh:_[0S4{Fː+YNm"eqIYDߧLrDgk43`2`jB q U*&ZԖr՚*H X,J(:ͫ|r s3Zr62tcSe>b jv)͵|]WzM|%!IW_Xf?&u[X Xme| n yXRN1W r $BF+u'KKQGSl ੤kN҉'D< dFduޡvMOB?͎Jv8f~T8p"UkUi IҰD3D znmDIs&<`0b]Ah9kkXzޥy} % 9I7)~:頷7yRl<"v=cEHY8}q㠗.+t9&ޭv#GC|iY2'+k-0l)-,ѭ&VZߐ'm ==m/'/)nm06I a_>1 r>F"rX'o}䶘;vY=" \T)hf-xO*N50|bVe J@1]gp,aX"wyD\MX!Q4q_{[P:4Bܪ=T3%*&]gUNÉK T%âJ]/c-usroOŘH<*e)QcYJ$re> /T>xJMY`{J+޲,DZn6t;Ech'KmJ'Jҙie 1V8MceǂcP@pN#gLnS5 +nJIn `uM2Xү5a]`LN8I9q"sxe崌RaCG_a:V>ʑM P$\!&Dh z؃ܦU@ BICEdm4u 'Ɠ8=rAE" +hQ_X`EN4/nT1$ x61=$Pr]4ZwB f۪(`@GjΤϷ 4"P@Is7m 0idz˘FmV%? *0c~}AeV-ڿd|֔$ ։uEf'$ψ7d%rQ{l "#Tp-+Bc-Hzm-I>4/gI;\^8GƗ`Z \p nt}1-(Chx7^9lQٺ~4S|["l ڣ8F/U"1'ɸeU2Q( W b\)]"Q-Qm(:m n !G{q,P:8b ,?ŸgcL^uYvA8& р~s*9|9QKDF-'|,F9 #IszhKU5np A Tl"0y2}ָA pIQ|϶x8x3}ȬtS 2m Bxr?kKI@RPWiJEl0D `g Fϕ> |PAw-ةӕÁe;o x'KA@0OoD`rb˜W]Θ1[tb 5i4@ns(j)o#q t< G3آHeWZrcrxr7+M> >ф  &U22X4{of4 QX!9sC!;*?wfrMg?7Gft %>7a:z.%om''^3J{L3%zuƾz88IuF^+n݃BX y!q91L2S*s.El:][)p!Z 2HAR,a= EF6J{s~)JivyB%`I L~շXw@(MRj.mL@hr̭\ na ǃ`jT~ꪾйeb0ﱯ&nM?B\URZ w?%p6XTIu,]ʕ3Su:,%׃!20M3$6VpkPMKP&!)12 PҤ}fO@d5#7 Y#1 v-~-pIU 4{>ΦdӞ->-Vf&sGx'f>G;槇pNx&HV7A{Qsk klຖѺEJ(鯱~)/ ">VBEɔ|MP5w.Z]jD da/fB2WId1Ъ8V?wxC `{KiwdGN4_89XZB;VDoXn|kb㬟D ΰ&%âg NQ叝rU;pIB|zL#S(, w ΁4ҕ+j՟CKw*XӜ?iNT'q!rB1ud[!1,Q|d/x5F_-a-T`$.ebS<5 ȫ/evJ]3l>y AOGwL51K( wXMCh!P]ͤGQ iaSmx+rmL0p)+QmfE~ўM:A)ysGco3y S7_3vh|/Gm9~oք;+Ria9iu8mw0dqSx>@6!"NFl[F Wѧddl`eENw6L!YÛѶz{Rn`#6o.IQ@:k_6:2A%{+ jEhy<zgl\GMO BQU&~diV 5kTBŊI_͑%x6-Oo'!Lrr8տcdõtGvw)$UuO&nOJ bR]|D >;։g/5r],FI쉴^܅9ӚhI{cߝ;hj|5a(CFH<7>'ў1XZw: `NOo>ϾPꚓW9Q)(+%'Y0N7+I9*p rG2]3׳[m>KRbOG 3nZ?jlh]?@t]=d'!<,K }+vlUh׽\Q^ͫq1]sۂQK5(7=HwR zt&off7fH #'rNbA^?ʋMֺ͒oa zgh['{BI[D$fPOv(zp[UAEC$q&ǝR4Kp1'tQO<,Զ%+դҏlTK⛢{͚7ڼp(2Or3~Q0vqr1 B"kzpv 7*}qG :Kiy?u*Ʈ;P<&@ja8pgy2\yܧ"씉 +Y'bQw a!돃/$aeąA1= J>z:~u7^#7ыl^LJwө'G*cixQ2;0Pz| Ŵ!AܣXI$Su!?xwg\wA\#+?fDx!BEǠSd VU*\zQ~˭\(Z`L@؋|Gs9뺃>:V7i\*ee9QC2m#G<X xqH{G6;j*N+5OFklAy7iۡ[_uTo˟Z:JR ylx 5q\06>~.l"nxU 9ÄXeI>E!2RihUO"b?y=C $Al5#<ŰC,`Ҥ Ӎo!u-2&̘1z0sϜĠߩL {?!4\Yv|nHe.M>{,޹߃v SBSO#MYFtBoԏ7,2 4 2Q&$=dĵ/B/N.F-oUUTc!`5NXG^b-`QM&fpB w؈؀hktО Y]J;_ǿ .\}!VHڮbcFr^~qO5'j2ZZ- 6Z*)8<.M0խXzآQ('}*B!ޛajBg_4 )N,PAnN&ĬCuğ?bSXS zFL}V? z+9#JǏq[4N@,ʓD2w%?H|\=Sa~xm'W˴X N(xCj}=NJAo@yC}z8e{{GUmH82y $FOL'Kٮ>Vcċn(hFSѝCRTj$^7 k8ي'@ }^γƕ5B^,(( .)@͏txq1.x9`>7o[,tksʏR<qC)lFfCoXuag ׼ze|)âI`%Ssv,n]qi%8^!)J>6lh{va * 5h kI"YYcp3޸GL\Ƨg[vm/fHK pWJ[m v4B?(~)'!֑:gwtx]@,$}ZT^a`4OwurH +2 DW1P}tvӄm,'-$[lP%;QW9"-61QfZ&"}UOz H`]~`$N#Ceo@o̧p)ҺYhHMğ'g/k;) L}\n)ZBE Sil$\ՠ[ԨМL!$7~gA͟OasaX58>kDlNjO`A 7C,& X}J*ۡ?U6CpaT܉bWK|Ɏes<;X->ALEAևb Spxp 6}߁9(t2g ˹vmL ±>B?Op1R$rʙeuS474 K'yYh \K-3C +RXs{b53AYr(֗t6\'0cv Ҷcٹ LsX`ǡj%FM>(ٌDqUQyPUĔwj "kné㈖c%4Ht7S'9mxߚS0}$Ƞee[/t-i?ؐ|CjjnI}o;N7]25+ e^0NeT~*oܾMV6\sSB!DhJ*9- vLuiP Z\[5z“DFY!X,s M6IbItSf}h'9ֱ<11$ir*{r:^C_)Ǯ:}!"ƲCӛm? =ì~QO&9Xh/B\; iAI!9]] ox˱/qG]b>o`Pd%9 )bQOxkP؜a )2EDgV􊠺&?kͯ)hc-ԛ0|ٿy!9R 9mi!;(SE[0=z1%.]s "T15|"lNcT~veS)hOt;-=Sb3>\8$j(ⷠ>@(Mռc8={W];yn)DN>Gf &'xǦIYpy\ Cn/;z(GLhW=*L"? +}б2ıH]:`nxꔐ?e,ҵFÊj(#uk1QĉoFg6V&wN%=֜n=)|+wTUfyG:,WN?0q)HLr`/ Z)ZI*x Q"W$#ľN}"qIlZݨvR W`%Nїc2xhu}OP2śtgVpQOtO; zV\$׶Kӏ%rhM`[.sk25!4!ȓw'72)H&%yߧy5 5Ot\_(g#`Ow'tҩ.NzM %QPl]?ބrVAV"e)MUwT٭s/S{d>PRW0^ub-P1PsnXe7ؚn`4T>l#1ꖸA0Hstg @z??@-(1|M+mi: q>7Tqo[4Q Id?\09uAyPQ(EWEw}AoLX9w(0F=b \%89ͼ 6sOp4Qץa]t۠2 xeQvpQ ѕV7bQkTNa^龇=&COԿ#-V7ϊP{ r% Y(8@;+~diksv h^L{!!V4uvl?S#jxNțT#zU! V^-ވ[Ɂ2KSqLB2#D 9n)Z_U֐Ja[kfcaG *d8e\Є "BVAgW 5$Dcr#$XOS 괟-\1mkԦrPi>¼%-@~썛 ?rnv/}cGQ2˴d L>@?4Qs|'bJ/|l#ά@ (ŦJ[G}8/aNfޓI\8/mŠL[UA] 3;èn0|X]Ͱb (91Tȿ|,!?z r]*h]9o/ BX7Pd$PF{6^V墈h]{r&"˜Kٹ˪)U^ 0ݗVwd YwO׉Yǥţ<  a.; eQY= x-ܤ,=P*ԫ/E)IGat25.UNئR"O"96o <7Qts4} e֥cįd\ fɇ6v NyqiaS=|X2~'$?_BR<,J6 5 2I]4Şw/"0j|oB'C#P52LW"h.VvdXgJhݛCB2W/-%5W2 ٽv@ʧc@?wJl M@H85pU FDm2z8ؠ,᫽S %\9Q 4|EzBRֵ]tT#+<;k4a8!inRNKy^'RN}sW|q<=m%|)En1rY<]3hšzZZkkmD|0t~ܲpӼSw t[KHLPpx߯gr_Uu MXzv^U.~K'㮼dM^Pesy *LeM:}#zק!F9^JإKS&DPBI/v:faO|`+@Jهp4;N%<zTgδt[~{A 7oױ`@4Bغ3kp?_*Fm-ꐸ|X#cة & Y(Ub4f?D)dѹTG|{vIaIC|s /;]Cmf ӊz&w*qWWg3 wUCl t0ҐDs&'gh]=|ᢙ{g( {HG"/7Ջh9Tr?lrS&&pA{ιW* jwqXي`$Eyj]q'3r=j=k @N*hGJnO'pna9N,@,YQ{SU|vBh $_{+8v_x|(I I׃p]up"Q u0֎Q`/h"Dm SO />|Hݡa#gAAMvfcC|MFǙx{`}n&pc'}Eߑ|;tK TzT1kcrbiQ%>BUGnR.4VIɥb2z\FJƒ ִg{iAIy1j^„WqR+ aҪ{7y O&tث]Roź )lHo!-R#Q:F0Xlu%N) %WWuB&1!u4nYFXYTOןn(4u#>XOHOw{0B@wZgLCP&Z"L% /'Lz>TDc#F,%jaSyJ,Ʋ,1~D_C|}qȓ3&<lLfьk–dh@V(A729ä`.;u#ڃoɳQrused6ݞ38RَD3A;b,S?WBVbɔ1+?@2+V~n<,"*=X@**_z}<|E(`4vb)=y63)yeO)6KʤNlq)"@j{ ic(a͞~w ۩lTC@mN~p%rsX^o zV:;' M5Ix@9ښ*Dc̤!W$avyk#.?y)}7bd:&T@ƨ}sf 2 Ǝ->M#䍻M*g_Ŀv?Qdù ΁s;C5{+z,(Z(O羞aR bsϥ$"'ozjd6!-RDJ>bVQjU1 *}ġå+z2=K?g"R< 4tgaߧ,Cs5E _F\}dQUZ>!߬6Y1U*<ByEw\hIn~5`2y~fƧaU4ݢ(ɭH~u8S$VW d$8,AZ%Ty}X *Z %LV :&úGlx!qI[dzG G~$52b_% {7 km? rZ$8v7{Zaq7ι("W(ɽ1깜,F:^" B~I:mVW>mEcmJy[SNS ! G3T2vޟ9J ^S6+^ϑ&A2kIoduO/[=6v~+6f~*0i#lժ?~HeQեF\|;3xzx*{+o]o ::4.&M2iAEK\f?&w7&'TTRzBNWn 8ŦF }A"uC&uV9bÚ1) gEFGL vWohAK'#PP87.>|%Ygpԓ?_ʽA>rO|y6?h? dC/~&|$N|pZ^Mq~;1{͑wqx-!dF&_g3H,k.U/zK1 [Z!lV\5Q2C9.uңu o˫G^g*R!AG9ye|$}5o4rdz >`Ewet3qKɱXSzLN* ϿN[X zh^ l[ \!c AU8g*V]XSޑ/o&k1uՙ^siu'rQL#x܈U`bvt-1|}2~QSԴ+$ O6`qyv65ri(Xq=ЮR~[zPng cb0!}ϡ sYEwKpI roW@N 4{Hf7vla oOaUcxdYϠۺMR~.Ҧihx lżһ:;% EUg>J s{1m@*Mdע)H. mwo?IS| S5F{f'/&]/D0ZbSʘ)>{ơ0Ess#=)o+RǪy|LLU(aVt(01?2,%U`_]H)zCg ) _>Fl>sqd>Z҂-w,7ba -3j Yr9 ^ |/CCR rh0;;YO2|@\;|+CΕ>k3n: SβkgF*.儸,zLOabf3v/zp{S̕ͻ?6͡ bt@gșn0,9ҩoEA)Yw3#{+`c U` ߥ8tܹ쯰`W"/x"쨕`ŖQ QWhB5\$=/D2$a&uL  :q*ɬl+,Bҹ+0npbRŗ&ECqHc z%[=PP,.q4M>ԅ0>aU{ 69>_1G1;$brsT.(ԺZ[oXXW1[jCvŝ!xG޻SYv2RgtǛ+*z3^ȳEIjI@ŕS6x'!VODp֤*& lE sRIDNѾd`ϵٽ2*~='w T CswlSt<.۫?e(Gtttf"Nma.Rg/f gpl .^P 鷵+ލ7n`/QwK-H6PC7g3?uQ2˞!u4tp^:2#y2|ک<%> N`Dt1?C+w_SI9@g\$|C`X Nfd\$tEoQ>XXobOX:Xr[ "!C@Qʩo|"|Ɠ856+rZ0xcC4JfU~Ywr{ďC2mEMi.ciO5/'PGͭguSPs-!B:TA.}\(r 1TȚ(FX bVa`5KkwN?bѱؐxL[ocbbV$o!?]8Mf/W͉=ր,2DC|w3Y~Nub맩>6>PDV]k9̉xlޜΠ5,z D*ЊoE J.^=7{K ݁h0ׂ:Aq;7aT0wULDzK,ܹ#VZ Ű'hܒcE!/rOw¯_kNv)Z}|ӻ$eNuR :OW$mt1u/e '%|Ni\@s? ݖ+0:`!:MF/I7D1&H)vkx !ݥh8!t]GΖ2CUNV"A|KY&\ PqבHP/fREo:3Bo ` aT8A99 iLoYv+dj-WcW 8Bc(*?\sIJ*vuOdzK`_xoHG=?l͙V8#aTE=d7c$a7#žRHaqg~J4&7)czfcUO22dh Q[VUqap]AKɁ5ȿbm+ZxNDډ[;/޺rO}6\4TrY=DXy 7LԔ{.ڸ-T `m]ɪБvZfT(!y369yBs܋0Q!RE:B >-ңm}1%^r͂tVXMn8K:Rr֦t۝8$hZ(o_4lcE-EG*s2ju}B)+Ob4^@2|8>% Bm;Dvk汖mYRH PmuLjCk"N$) Ňa6E OatL0t va%"-4VL*^i+z ;}Io?`(STVyU1;S\ hіL2Z^ew[<ڈ&N$rЅ}!UQ6cQ-pd}\R BY2G#VyA>dih `4kw.&! 0қ3FUV"ݗ\jȤ*Qѫ7*rm? Y6>P&XR ?2 \`7G\w: Po@Q58E( )XTpȩB7,vf %+Hh\_LQ S NA@+'0lqEe̡89tgE)r5&)@'eLK(s| r#xx$bZVJ`U c?ƙ~ƶh"0++7^V O5時eCS.lt%j#%~k#RJKpݮ HQ rHDщ`[l$PH)m |C:KnO .~>gvy.}ů6 r 1PڋfCT=CT ]7sr_^3$D옇kHyDRVXYAvf "d21;ОTx5lhqjIv❘"Gten`LX ;uo ;+8E"F[LO:|)]E]x4 S^cx/Wy+lxC_? /4<2A_""LڞAa~"2.>VrFsFG4QBT Ia=]$p| `\A~ cO u(gl5b<@|ZWMU4P:bK=+l'%6R vȰ$vOk¦bȹ{Nb~ kUyd`j%k.wep MfGkc#*8ڼnÌʓĜȷ wF.`d2/zo643.miAU7M0ƭ">1d0;LaJ.괁N 2E{+ՇhLEÄᒀ{Bp b3+_D I0͘oxHEG63$ަY+ TLj8|ysВi`f|WYW`HMvf`Z|V$GV=Z(~M/m0,zZQJ}C \4eizOr&ST([:p BiB:kP&O/k} [̹IW:nU<2b=F;"ªV3_ˉYiy4PEB+p2UoSMOgW=I'oDC]> yR~|~ՂV ˭\|ϰTSl2JEdy=SF0ۗ;5f"`St,kO%ی!vJ?}D;xW>*pΙ-5*77~4&Rw|k1NdT-`v/?kT\Y G=S|˝hX],\hkpp鋼gR 3\wrDBKU֬H2$0_*5'ky%_^mZzNP$;SC.#ËIl =pyxɧ|dQg$h깵 4I)E(-|7vi3(я\\fMVSn<AU"nzatnW3DxiSDk̏s~6! JlJЫDomU!0͵Sф,YɳOQj>9nW(D#kX(o)rj&1H*D4q 7Ok4H¨ 8s8EXb V]oIS,'F= 3*lC}mY*wXͰLP^ m ֩yz6>l [$}Ac93S2j+-leDIn0vv a4t8- ?cU9o_4[+ i[ziF#g,lav(>˶#0Y&9kT/д 6&_ZϼO6TC} 9؜4ѭ$nE7u12>u]+|^Un5(ʥI-1¨G{uR[ p1%ٿga8$Bo:lAP '8vftୃ8n)U[rMsn] 1 Pո};ޢG(wad5#39/2bٽOw!PSzYCHq,0#/Fw枕@k!a; \!W}o=B!Oj@98l;AV! WB ,,ؐp]a5!Z^Cx ex$Y̅T:6ȞIkתzmrݠ7'i^b.M"ng?QLHH\@ӭ%>*C\ mEg0,ugFV^`2J<' }ʧ%U]F#Fas#=Hλ*Rw1 -ZWv,-;|w4aTЙ9nd5CO[rRZ؍ʛ]ߕ\"zfW6̛r 79vy  +#SL}`` 1zS6dXVT1BܓK"x9^yozӛ _SgܫFI yJHM"A8s PtR \7Y .nEzLx&)yHp(HH{GC"юX1ט-~mΦo 󇾣FO ;=~|uA}Qf~4iDQ "Ph,B0Yz8cu:y\ w&ԳAB9ffߕ (3vj:qE;Q[.k,;NZ.H|6aq W#Q5˧biN樸8i&ZZt)3Qho2~kT_=lNLTvLm$Ap&eF: W,92K::y ӏpမQzw+u귀(-U v8Mel!  ϱejp9X=R/ $M<ܼ\ʬ8J4F b&D5t˚0(.+BA(4%DJWUC`Qn}){O .!]P0t~#=qc64@)'|mH@_s gB1>l>E#>/raPUeV)޽\\D X"]|V6IrQ" t-UsC`c}KoK%$J׫hBUX (|aUH@ʹw&(^H0ם(gsxS̤iv\mO6i!V 5C&DTҚZ8*}PK) )p뚻OKQC,a6,gPWq)Ng.peJ˘rPc6E)Bq߿uH*&k񟼤@vZ%pCou%7@` a{וp='ɽbqza{oRP+y! ֟F]1{mH>~I<$N FCflwۙ˻݄ }Vz9TP4N`l&SSo#t?fnۧJӽ V C"HQtV2Z;6$kX:W.|H/ p")uôV&'n\bkPIO`|f1zZYzZ7YNrpUscz-yJ z}Vm˸&ld XR{&og)籿*aXR'k[ŪDk]'ڎ,0?"aۨMWQm탔C;>n|wzmt3D;bV9V1ٔZĴBlX,nB O>\RwWpJ! ۮRUE2:8tThQMOs@? bD12sc-=8tMv?h8CG %/b@>RC\CTscUx0ՊBM;LkuN|ht,]t!;/I4~GܘZ ]l®:炇 t K VHZ ĸQt뭙s'$r8a ڤ'X*sgY 1 f0,z WFK](U|<3$_)37jh1l9<#dQǟ4ONFSCA04Zyphk!ON:&7kCѷ`p/wAl)f|0 ~Y 1f}ƌ" /Oqj"b!s0a|ǐ%FXe%=8Rnlpዋrf D+{[Tj wB Kzf>}͖g6Oc@گc]?ykL Sȱx4]fvc鑊rQ30,dF_067*@}%ZLE,Cd(ڌf0Y " 4)~U"sH@Gc *SȇQW {t&4;-cA[Evl,&Q1PSEѩdiۥ (m7SV+e,F |_̘_Lt>p>J+M1W^Q蚰V7#(7B |:<ƽM!: =ꛞ@IO5oV{!Gr~*/X^F0}'RʐC\^ekrڠdA|egsȄ 2SG ecɵ0=zPԻj mdlOic:׹EH7Y$Xϻ|l%ng[Y:J4m3_/h6Pc-_cg^u'9oDgg-WY9@0oKY DjBj=W u;E1'xaeKƦj> j,ceZ VO&%QlGmq.91|OaM =ڃ<F)Vz˿[{O00mE"[q7~ fj/]ȢeކHjOZکjyuavv{@@<4ك) qp-(麦rYabh7K;;t4`t썇 7_Sڍ ׎U1xX5}1)kNyme01vĽԿzWUc`aV㦔_V (R4dF 0y>Ju#sj_NMS=M7@X2q ^eAdl1'zҰPzQY‒4 Sj[|۲R9*RԿQm'a(e+voݽ;4PT!>MAԀWBi@kƭ`_D~E;@ iuFGڊTf𥭦y+'zZplT3 Zqs9JP9Wn9 S`gL0a `ɓy\ay׷ {2tP1WV#`O*~_7 I!ֿU2>+ Z2n\:z/-ᅀJEfk X}%gU6&;/'%΁j(( [b Mx2]Nq.Jb|۲ " HVj UDAq]CJݟ@FDmlz[9[čAA@ܘHKVeW(|D.kmfޚ#E=4ai}uvBU!=\.؞Oɏ#`hDﱕGn[AɌJ}Gve(Og=B SCKw.t4pLuy2Eа+~>> fo>q۵43h) kѸZ(RJt`db4n[]°n^6Ppkrr5W3xI^kN$]/WY)UZ⡒ )vr~oofc"Tk ǿS$oQrAyRd1-ctVZ^65RB| &rYSަӧM;]O*Tݴ@dbK9Ј%}ƔL'Lzov+g9n LFSỶƓ*¨%E,&4#"H:(Rğjr =Nem/1J0V  0+}$Lpy} 'oDzhBoӻ[$›xӔT1af5 Wg džlK > +I. *6ް={fh\FULXWHmKpy'zwڵPY܁^x++(薰e u DK4[)RL*Ey}%MXr[G@.a2I.fJ%hJԀ374-F!!%K1)^FKkMZ,qB7!di%fA}K[O%Cs՛o8X_Osu>=a?(DA>۾e#@ 9W[TG"y P/-z3jI2p'4ωtI JoՌ~[o FF)a:Q ^N"laGT.aNp_ad#[x>c&ޖ~JsF;^NRF.YvϘ†[&[Oy /Tް:ƔKjր|[:aUmKEl #VK$,xJt;go ۖf TKs XDE|lm|+7k GYx9cM(U[=nL^$rk # 9 6pbKH-iK+~^\7 |ފ.Ch-{"ԗ9Dl13k?lq:ʛZޟ66DZ>Lϲs_G<LOĹxjg%*,+SǮ hpiSamA&/ V%hiU̚ M szvkLr9+h\G+ (zjVҚ̻űP :JCT`a*ߎ1׶>9Ō@w^|YxLR3EN0L,nuM@!K)duSʧEJu:y(@j/ٟm3&E1~78zc:6/$Tp'}d>OOi*Px/(U˪2+ Pu`|kRlDR^1T@- )ggGC^zCVƞ|6r;-0~6k]LfƁ/# ܇eSkq6NDLU`ƇczyyV Ӛ&Nw+9撛>gzMg,(wƦ.wa"A7E\2-I3 ܥ4!*0p>=.İ!Z&!J|KhcW@Nդ7 Ly;v'ͨzzVQ^S_qe@beem>u5IԇYMĺ`&J3. !/!XГ2dHU <&9?waE1?ȉxM)QapO4IxR:fIkҝo(}}U ZCҨUpOM]5͚j~q7&ּl퓇].grJϮzs~e+[-q*JEHY,Gٸs: ]+0zE\~wP颢U QڔN@atm/eYv`pQU59JjNdRqܝ|og?Z5psHN. 0'[/-J iۉMOD^ DaU?j,&.w@|L ȳ5Kc|]wL`\<+*ۉkzrdM 5E"ڏ%\Өl"bg-I"@҄d{Bǹ/ĝӸo6g՟=puZ@U^qKJ4KUp*W pb{W䗐r=L-Lql<1sXYhElST}!qsψw(v˗B nȟcmZ2kUo;`P: "~}p"-@sJo`T881(pkCbqPDy=U~Gnx (W>\Tbg"^.C9و7, [0c*~aLՊlӠ_T7b] vxJ3ɮA7T[,FUž)DctQ{ύ>VҒ*NuY,@1D$Mǹ*gإ+;m+57RbEjyUICaI̫Rcw4)) TriBJAK6-TnjaduC$5880ْDѸ:gjO… Kyg8؝%md/.Bff~}f= d&QϚ`=C;;@CVv3)?ݿ צHdsH#N`kKjQ"yV ZGX#kՃ dTPW`X`&Mz-<[h91.v~ v7 L[d&یYRP.6  7a8f=R7;dZЮ[k*'ˠDdw+*}<$)p.塳Z=X&D`sxV޿ů0|Haú&`JqQV [!'$:ٮȪH_5b?E&+P' 1y'v'. {D]^ \ 2\`܊Q`]FiIo3~o;R;P2$8 '.PK-=4n[LƊ}|eRz\n >.yoG׋@1ěuxu(Fn"´{J"b]+ie[ATxles){Ik*ktwH#Hn}'e{O{rak5k,c I*J! a式 /k\њ89WiQ7ԧ[iy 7$4T+8p=#ֶlPe=1fM0$L:`59o-8}4VA-.2Ԗ ,_~k_֞vw-k^aP}QEA$fK =rl{XϩL< '$l %66L)&ki\8xB(YghoĪGGD GLYmwmmυf贪q]\w<7`nf|W-F҅Ep$rF>{,.߅ wmkPWc*Ǔ TڎkW#Cbqi7j P)ZcN)k~ >=*K2qaEpsaL:GyR?M#^yyV>2n=˰'0%oA.U7&GC޾eskK_ZBs əl18|~Z3&)3I6698I?#|Y|Ɇ| jKh~98':%Fw7baH+?ԙB9"wtv^$c%s [u w7/WkϻPx)+V0cKTC7ȵ:ɚ` 'D'їjA iSak8 =3V# M=ง*Fy_'۶Zx~s ?Rt6i]٘C, qI Mٸvz l*t`4HsTb<3UJ>G瑐!jcC6,'}`&7:t|=^dqzr饋%`x)QٙѩX/ʵ[ݿH8<'o[N_s*@q<#1kZ$ ̓%@ NGg{^*˛jr]qԴ̢(yYUUbχ2>{9 iԒOǥ薉y'C(QӨ _ca}/-:+dTBkdNVPN8‘W}H*_'1)Du-zxEOkǮqVuyfgJJ.&6[D6oXju23=R*&05 9M [%(G->@|}w > ]ݙ-XFm#Q/,Iɶo(&)4n?YVʩx*zn^4Fb oc>qo:jF!}użTٔyCnR*+4-aLKr^0Ч[ͬV){@kak QQca tx(W>gMՒfhy:k a[y};_;\_. YSm]Atҩ`{h8tUsH:a'V;T4gjbkIbhRX2a:o27У (q(q@!4C=A (:;[9 rЖsl }&gAπB}58KqS]Bwk?#B˕(Kxa=N> aYKoݱfj;n)L1(IZ絓َCU\)aHr̚ Cjo0N!W~gȅ}w O '(ɥ|רR鉪J@ 4k"aH$D?r͗VW6tdCތ2hMm_Թc2vv99饐C0*pBy6Lm8vU挗ϬHȺ`GB:ٳa&AXNåY$]XNKPF!wW4v41{N|!7@t2WMgko#5M:U)Yi@EWϗI"\~TMT H9^q佘HhA "XÑHH OT䘉B+5]0W{]J& #4wV>B:S,P%5p±A-ǏB`s=ztqfZRuF@W|-QRĵA@U)qbe2(bh^وz>E(iCbwYvE9er\lGS,45 N0`EI`'\h(+3g\Qb+r$[ Mi]CsL ̜F0PeP Yw 4t݉͝׻<ߝZ(Hn!٨'LK[ 4O&t͡y/fh^>m ؇5G¦ Ƹ> D1=uƨH%( b]F2o"URÀq;tlNB;k$_QҘ osLz8 ټ]?~ 5g (0j1C ^#[Uy(q(qx$~"|g$џ*ەYT!e7o^S\~wix6@e\i)?`3Y{۩?xOڑd3;@iQoDL ogQ6I:k9ŐM),{Z"[EE8O6Mܠp&+~ Upz*!NNBQlpF2q3g^RhPF[dlI/zvo5Nޣ&m{rHAיR_sUY1)qY Gf?m)#'Vj#rS@G?\>KrFI(Ń @C*PJƸ(+`$|p|~Uzu,dc c v nL2nJ5^f51 k1FsDkmVv΄a9r#m`/\֌Y 1#I3x^WmMe5_cMLJ& !$(sߪ |tl}47G0_7aYIbb S˙n&_$:Yݴv#!:0ACktl5-L2d)ij2.ES]G$r}q%q7K-f|<(puwٝ&-3ih/YFF.'!t>?AÆvSl"V!KYؗv-y2+|-X)$ ' 8CP#C͋$2ES%aZf|67ћ7?%:/j}p޵^^K{? [ Xrpg3=UL2w3+ Mz̿ ftEw$E?)5:Qw/SIP ܙC &˾CTHނf1*"ϗ_O}ˍ@ mIExCJ .yjW-%K!nv` ){[x+Dzi=GqzNeSt\]v"jLiQk~!!^< O=R$ g|0V*WuqcU@J y]JNl̨sMV\*ZlkʌƬHs{XNҫE%c%߻ aeo +VŻ/&=}ޠ Χ`Lw< yf* 29d`a=q,s-&ZE6Fwb"RQi,N&\ .ۅ2pP fa$UwKKmY>UbHbjRωQ4_Ƚ[N? gu$Iΰ;_OefǏ`gSKHֳDzBR$YHܻsjL#8SEt1P[虶YO:Nub"#1O#EcǺ.cr΍!eomE p,z{ %5奙s%M76b8 o_>&)ţ g7 Ao9o.=U܉HIT737m_4zdI$jRv0B#'z ^#>UIKװjd\/ 's(!\?):adʩB'.;\H),6k[*DQֳUɭ,:oݞu1薪kKܓ7DR]Cc)rV໵x7nVd1}SJkXt)zMƠWn1 ( ;U&Z.-~SR^'a}ђBciV̜¾ߴR>a)*;`-zNs\s>qSu2ҙ2 r|ƂR~<oW͋@?ڥs[#pXv)}||F&yA4?~)=$5mos!2lY]W֔ P J`w5ZB_$V}^1YIٗ8ll bDzi0$VU$A}g!mL]ehwz3W'ySJToMȮ * {$ |(F8Z.IdP_A9XyG CFâ<̨:ؔKtLhf(eU.$/r& ȯt`40qcy)`߳NʂnpXZ]g *vz)0M|T5Gdr[%BY?Zb@12N2m( L=x+碋 ȷUU+o$)z ,X@j[6NB}]\rEl.z}P%dor3gSvĹ4kۑ@<ì fm0ǭ"qAsTY_2Lkr4HBI !OZEӿrw?FAe@ /0u&\wU: Wp},AaؓXvܪIvWdoll߲Ì_dA[B67eW*!`.JN=g*S+UA@=!z=m 3?y6M0sqǭ;\"Ȇ*5<6uGǦk=ػmqt[^ نliHGG(sAĴ-*(T8~A͝!$>^\i=uŵX5$CY57ylгlxSoNot#|um*Kru!P@Uv +ߘYԉ9##?j`%l[I W"sA@ VB6)Bc _97oVLl 7(Q:}SJX^ …Sыi]u 0ʂ>'4O >t"Z[%H1|%.HC:7Z: {o #g$ @'Ww:ԙٚ8jar6Y8kxh6wK+C{#<{?r#9MHꅼ]h[i*C j|ݲT,H3+ΦώoA5:J1{uLT<>>aNkV_:d..ӗlGʕa^''vkߎkˬ۔DGږ~H #`Lwe 傲&R QKgN\fllarEɔYhuav8|w ] 9$%/#17KN7/I *\cH!^k&dТkŌ J5\174<5ԤN9!X } }0 ]l_3o J"Ú+'3X׀W$(!$s>= ҅:ߠ{AG!&SF"MM sG =vw_+C  ׶t"K]K/} xq)͙`yyuy-iNWWQ@?H65{£qc&7u8 $_FH>8 L!#&Ccen%H.46]GB͔UdLvPLMݞW&5Ku-GWTb= 48%-36B4@ s}Q'tfU|3P_EK:=C>YpzʉVr7Wh,=z 1 ~ʖO8}][C\3ҿfpCFmƈjXf*$B֒.sX\+?½^_~htiޠ%'"1e6؞bA^u>%&Z0$;7|w6)N? ±z)T?wܙŰiC_fm']^\z):c8]ʺ1 6鹯/ ab#٣ܲNޖtVBR=<dW$ ~X1JB<भpdz=dlti]|Ml;QPQcQ1g@~srH,BL4Z #Xx9@]e}kbg3b+}bU)uhpD_Yqqm/OUR9`Rc+L\Z"^LyO7t؋b03S'XqnxL.}GBA-J_*,pф%%dRt)z7]1L:?Rf$lCUILՋKEzŇ)/ D< 蓍6s2%yҀy/$X<'Eet *ĥFCfQ.bW𠿑~͙龧wXo#?X,cxL_Ugou1"dP!ߜ;$I^vΐ|v55>8sjmPOnN%|WG'4C/L`:R9Cpv|HywS:^9Tӄ 3'O[*^>uvx$)9}옿Ƅܽ9 kj<0RQ"ͪ9(my4D O.'kwPX[ sƸ9r-*4 ddGP?A ;4 .W24]<P Ic2P:z(!>Qzš!m4f CgvsfCM]G b!{miADrFvG9J ]y|y{e&ݼ]#(miڊI^u*=bu,(,2DE 5g?&\5%}D͛A_7anNJswq~б4̅ x}7\lʔ՟V641SZ,3-Bqscab*E>c ۾R%k7pmNd S)k@ PدcyK&nUX1[QR1f*qCY]N1bxô={8@7KBtoߔ狂h1^df*m:*zP [s*-u76FO!b}wvdPգDgB+"Jh=%N qfp;$@`˾:ƞ{ sRX6}$ZQà5)EH[Ifn4(~CYw㤨_gnHFMZ]Dp$8']EnѮ]^H1.SSfGF]a̰@|CQ'H3*']fSLuA٣drm]hY}K}xV<}jn,{RD{_\zeϷlWac\MpI)oaTTC 0PH2_( dR?q! &XHpE=/L͂b>ug;sq %v3򹕢Rҕ ]ȶ$1Q\pLn&ʥh~</ ̋16( WV7x&kHdlCf4ZinZ *I" BK]W5AQ K M;Ct8JxABǙ,&ʹ٘ /Hpp 7 3S1"+ҹ9b#Cuw!Z!/5.CNA/DGrޭ:dw4 Gp"~ ZaOSoN)j"8*r|u*h-BeUY7S/I|-ڀ%BԋG%Z䳧xF\  3NdUVW~j"(7ÖO S$ٙm+%5B_ö<ٔ3MOLOvIoZ~?k7R'zST;_Ȅ4d}"$Uq$6geNaɍ#jUeXUYB1K2Z#/t6G:m \BzhhT)ո9q\*c;_"Å2],Iuѓ4{Czetgx;Lox,.1@ xDB|ca^~[9EQgV*FrqY50AmaQ/G5}2֗&Y%goӖC֍\2jyPZj?u]Hozݢ]4Q QC"1*͜'-?)Wn-r6PA[zub1cI1݁)^*)j5Uk`+ɷ k)X-. YZACiC.jzy5VaIqawu/g ?4ƵPށSKۜzVp"!ۥx/$**7q[` XJ/iA\d.} EIP0jX%w5b3].YN@ n-m0]*dE2FMbX'"EŪG:kG*"Z<]+f2@;1Iӯ/,hp3182 ӟ`@{mk{IhBsG>~N{k&g1`*6;Ƹ16CC40 yQɲ cdu<]7m:cUy%mɗrO"ܔ"]+B9_7&)*jbn0닳*ț+ζ_Q^{.{AP~lw^jz]O 2w2#<ַZ)pA+3Ԉ5ޠOܸ0Z6PP_˓\`~:]%PQ[M i'.IB_ B"S Kv屬,9)?8nPgW~l>$$LYB؛5]eX?'z!|U3ƲD iiIri` t"d_;ն3 =\f7mrȡ [{=0fbd1鯔_ h*طz-Vĥep):VP-*`WC;B*؎vVJ\-r.oF8ݕFnsT|tXh,Dv8 jץwR;yܐ(>Yi5)|oC}9En5, '+#@2B?(){ZR} oIE5:+'S+EcR%gN 98dvng =Agrn'k} fsI ^,LGSrآ rz:¿5cLʮ0@Ś= d[ MgP҉RÐ3/1+q0<^7) 2wE~37Ǥ=ȀI'5'wʧ  2W*|IHO<U<4Wc2oVa W)vẓjGn/=f8vSfH4/ %HȯZuTyʤlz4wCT y/rKv:.%z7. Ch[됟i;"@z{JH vB4\mNa&JZjHd՚*֏R]25!UC\lpz~م@ >e!x儵:z# q]" z`!KI}A *:xIL-1PZt\ KJWYZ Bm`ln_ͭ=kܽ0:l|u6m6t'H(nEtJҚZCOOsINLy9th5_Vln5 W(j'h@ %6+ARnt$jUDTWņA+vʑ9׻,_W̼aqϪh^$\B*s\s:L`E惿;G Gx-!9r  'qWnOtKz: +T0P+kId?`TFnӰ8(+i0auEVl'0HՂ,md߬FH[X٫$0_Zxj ǝZy8L~z԰dI?d,\"?X)ɬشKϭ.m(0gHo" J(OSu2`~LPJOG ^EPl7b'[&E ;/oX*LdvmQYE, Og'Jcוvu0jJwWqu$<`\a *.u$iXW:rUe# T1QM Zd]DjW kK b:gDް$1)񺓧!MkfFXW1$*ӳ=n`jV*t}To|d+i#NpRW&Zo&fXߞzKd6y% < JPz el|O@ݜfqb#Q Bz6Lr'pފ7a@wnF p!ϊ'H6ΒQ)Aj8|$X|k{(gn.v|*-J8KJjǤ"TVi%[q z * -Yp&C+soIi^cWX;D4XPsR&6[70/"`CV*Ǡfѣpxg[YCy|c^pJڌv] ԦU0D3*MwQMѕor]ȷ݋GBѽeݷ6S<E\g7$}A}54J OUc8k2W>30%g&7J79/)чesG6zHslO5~v  ) R|_ 4,,4'h?wgM تEJPKb=8TΪ @hb;+. ?qS xU}lޥ #aUW C pq,IFz),9pe1޺^?x!#tݝ==ܜc]'q;:vn3 P;C1sV&'˂*]JysHC[ 3?4>/R '|ȭ.(?cF9LudoAF =ՙ"c,Ɗ`49IBaR*(; >$d鶑f.9BR*J!ju07S<8ql7M ~[do@_Pޫ[1:]^o?xAG{uס,޲E7~_ݐLJLuҋ'`aȉRQmO.U qBV. IP8s#=Y`8?}6`>]覐Iֻ|qŷ7t_B#\izef%=҆'- :`k) WѽhpCgۣI+t uj]Rx!vؗ?DՂmlB΋*qԩ &K&ʍw5'q8G9* 痒&k+ts뀵vZe:\ MNJvQu pz/~:F1%^E}%ԉ>J4;߄ӫXP%*K4 ŗnj㴳-&|Nn6~6?=+_ΰ;hSvYO 9;~=\MG"n bF7e,i֣rc1 Qɪǫ+:tX~4# "?n2ͺmç,,ipK e= ΆA %DRn>oN.!|qRDEg eҎQDb_s-9?!z%a[Yf.]V6Bc*ΧР' {ćYj]bM8ѿkPҦ`z++`DCs;7 Χ`ZMӕ6M*|x:Y:srp:wC?ņ.yh;p28ť&Hp皶P) N>k8 lS*^l1pϋ7M F9ǬY>Z7-%9~r@~ov륞zHVSmd§ٜe.}3aףS3{Г>ua.M.5y,u55- A,#g dKPZ]..|Wc7RVd;"&Ĉńk/tP+/ t4"ږlϾR-+|GE׭-cCbC8M;a%HZkQѓTG~LZղ``au6b0h2+V [jmH$f!eTi iH~}#D a҂g0`^V%vz,R]Ne+!3aZ9nw5[ÙZU+T>u쎏/pO $V"̊,SiVF(rΒ.sȫU^Zhl >ޤZlayS]4}X J&{߿XoCY/g&!߾/% 00'8N=e]E͐Fѣ~`]meCLv\kFH.}yEYˠK{ \3ۀ:]έ"mn%#`:p}/&ѳogqbGJW Rl)Y6 *gk +Bvf5I)2!ʹb"7{/2,_r1*&[XZ"X˴Q*Cpw)+6H<ɡWkG8Ea"ZrNwz+RIT3KZM*N "hԝZ ;dbmMe;EB3\ ώ1b`uL[{94 "ot/_ObW4-LK'Kn]!;3Qcu9"?pXv /m\9 Y~r{Ray5e);ZѪ`Iw*fnc)"И6љٲLJfS_6NJB\sD}0<Ό׊uGV1J[Drtm,T9&ġVmVKwRoάըֻ]mHɥ)ܢg f2 xsP7^ =*ut7=EQ]n$/TB$FJaUo(fVmNf&CoaV>AܟMo1k2b~Ze:{(?uXd:dbi {m`dx;4~ +7r"]I㩲Xa:ălH)N g8(cMVt@%pԸiqQ%< ]ZݚSod>4txf)y9WRm^-ckAbuc͕~&$\&ÿM!ce$ͫ*_-0Ko539\ֳ-9ɳ!vxy6aַØCf+i#{V]&UK 0r&"{DmӱRj imVzۂpp6?zKhˠbE- >PݳXo <,= -ׯvOW l ZAِˈIlI7zŊ6Lc.g97j-r#!FkB'@=@U(}=_a  H!íc*\w 'J1q 5Zɮ/8R<7PʕT 1r@kUyZxJإڙ1G֋>Y!Atd|-N'2K\>gv}c 2z/Cr؎u䓴fe-?AI0U:;%g_A|瑮ʄYpgt'n5*T?Ķz.>ːrww]Q9̼] oMvH6th=7*/1-dg$_?A h܊`J.Y5.Hm4;2c:B׻5%>l[X/Y5S 8I S]Oam }TqKVI7/, (-Vy\DQ?ߙ>՛*:4ŏ /R2vt-mt j2튫GZnߜdJBs n XA18P 7_#+gp(jv~.X_(N(4+@ zY@$xʶhK[?y;Rlgly*τgV#b+ErG +sxE`42ɴO+V0;\x_Ԇe}xCm>Z] 'jÛM[#a:.<w}CVX3ʴƚXw%Zڒ%U/djM;i|:wyFLs80W L"_~3:GǧRsx)1Iut;I_gZ{Ʋ7406ur z˼< R!0ycwȥ6%=3=R . R1gE`E?ݺt|S,b6KI.]6 .t=r$S_F]OvqySJ|⨑>TxeB0dgy⻡`_cDvo8wʮAZN+mu;"2 xpHEt1SѕQ<`δdVO5!˛cix'(>ϩ: ,Xh8&j牰,诅=8r,HI8O}="]Lx(N⽗,D QNao4FaH- T\Tފ?d95$KP)2Ɵc`z9YnnQj^U=i?Pc6ړ"q:,Wq{A۸ "Sj,qko3W e~ex/֋Oq~?9F"Z#]o."l. > vݚ~\soce5_>RB$#*O?OMlSx|w<^Q btM2 yfnJG9>`+/Twqu0+es bNʏtYZE^/_rX^neH[d"m"EWgx Ï;$yAn|jScmN-w 0E,Tdg ƍRd_$>͓rP@C2'gJw_ti[Yl0?$ʅsv_qg/qx:ؗ.o@:r:K=<ljH [^&L)KHQ3݀sD.%fܾE뺌xh h ^ڴèCD:r:ɔϼK$TS~*^ᄣ_],]p1y]dz[ j'v8/{'.X@S7@}sڗ8@`n;}]LdC(ulJKq-=t{Q)O-5D:7$۟8P7L0i  ׁIA=`ɉY[sN S_GL#,zJն3bL?W??Б7*E? tEwEۛ]X@1nqfWkT\%\ tl0[F)Aˤ5gZMN6wc-^OI)1֠b%mE*)󲒦# PaC/ %mZhm-{l1Fs[@E ³^c k4SLSy*AVP sV=tx ϭ3+u/|b?0#wvE6,S-XAox~n/@9ogd`铖5HQ[2"_;n~6b.h=0Oi D|0#9OH)rzwСHv村qsErf~MEN ů"-IJ3 n)@P$iPlާwx`ԎӢ,v@^$=Az<ӑ#&Vs H'c:܆Τ'ӣɎq +s$a/Ͳސ7}χT 9W[{yX+A3|<;oŸ{)|` GOnDiD>٘.D ]}'؋ QF,dA^6u񅋤gc<$UljG)7C$DiM[($d.|V/Ӻ=x7[˧50&eL'67`V&A$fGJ%2XTTӫiuO^qkp2YUOQ 7-y>8C&481FnV9ohVgHyeEWHez$;STt<_u8! voC 3\*ph`MNmF9ucdC9Al^QMCGXUMyA 1q$W+\|o.|Ҟ N]fdEF‹=K>!)?u} IiCt!ZkYF2jQ^4|="B,߽%CL6*vHiRw:rxӉ4&-Ԕ-—%#ytW 件.R{B].DR{#>U(`_hCWO؃ nLVόxV@kUʼnRhnPCS."w?13Rg 0Ǚ_؂}*3Ӽ$ʪt`^|TU73$׷s///JM/[ gW3Jnjy@lzG x=qK{{_UKX!Pajx4M lWC!i ӧ ؞1'@5˜C+X_JAY=,t T?5h"D-+iJ&lGN2xyv1 AJiK󾤶u{tO\op Lx#{C Ϊ3ɹ; T1cߣ&\>YfHsjqz)޻.8OήB냩sa.Xe_.y y F%Ote%OF#~a <ġ[TԮsᄐ &tuTzl3)XGCѰA2g[M4KD'fh3xm5h ?Y,8ǒP?B<AxZ q}*!_?r7k߫rX9*͊K]=reGTy4+4YJZLi s N9mn X +J 8ΉZށ>oTQ;{~TV~J9mg %Vy2ʌ\z T모?*qWis ARX_ s:|[Gv7p9Xb*֪MdZFh}KdC'pS;ѣL]}iͲi9%,3"}3XWu԰ %}X:a0߮X^,Wi4G3?g7(a׍f\F 'нC7%`JvgUS8Z!@!SJ$:VFiO}eMVv`c3qL C(<ӪD޽_Sk{]+5T2LvE3p Qc6!݅LES!)5g|}) &eζnH ƣ VMQ@d%4+r)PYpcs6zuI.!qDն!: uOCR'[||#G7į<vy1#}3]刖Q(MSfpAW~Df[6H,zgm:8I67۾anDʻd;33 09Pm*at4p 8a߸-ɾBUB} _lژB&NCȲfB7a~pAhD4Q[o| 0'zZÊ7')mdmeg0G"UQ!exwx6ԮwFƈA E s2,u#5+> 5$fC9f8qZvLj()nXM\TtS[*BIp)ǓpRQ j@ˊsfYZ>;7we8MX)BF&2$Zxe@FFfTa]j],Q;#.GM%w#{ST"{$t1[SK[$˞V9{0͖2PՔ&rCk=ңT caހyd1;$`q(jLpVl \,4B뙹O{Ÿ7;W!-7rr- L6iM((U̳d9V*soZԔkFxGM[ƒNEMQ2Qt#'e~ʧ{|A`W~GaGn<;iݓbQB1VTݩ$йIx8\` r @#핬6|:QvUhJGԦ|rQ2-Ev5 yvm,NJJYMH: q,ڈф" Wa@zPnHЂE=[ W@gftA)0E_:Uv7a[Sh~*lVk^)"/n$wD}^ l]\'s}厉Dxa! ܞ4Xt9Kt\P*6.}|*xڑr‰5Mr=2B\Q0R&ѱMXǛZu>a Q@fޣO6"X6Pny 9jL`?v(Y&A ]z el % \qр0V mvUz pL鸉y4>mͥǻDfn%s0U/fl[~+ ws<^ {2c&qmhtb8+@Cww5`e ƟV+ w9ުsրpi˵/Y%=/zJ98xAʟ:˦ tzş\)zT`J'4Z]d+­]B3'*s:6f$?V*Dv3V)={nN@GlwAŰfm;pj  cH 95/%[JU0ƍ7a9iV0 =d\{4 #"P7Š:Nf }('Z8*7|y_dqg@[3GfEM~]T}ة䗂o<ˮ N1(5>YO8f&NlGChZR[28έ"42H[`'W2m ^8Xd4 wU'ea02on8.&u{s5VICfh$*T C(qtKڬJ+bƭ"w#P})s2/q|դB *ތashxk'h벇0qf*5c:BdGOZP*V29]m?3;{nƟ-n]P%lOlSճwMܵ0 gp/e1F~;@3R)"lż]apHçc(SNu`qI81 i^e&(E֏4%<".;jsp׬ ZS*-]Z4Svsp>V~^ R_|\/Z2v\E w_).mŪ//Gc呢ѩo<kZڗV6f^1#hJTW !H"gх@D$f8 (޳z,+l}^ a+ rc%-\=c9{F'_fy5E̱ñ9:(Q7P͵-Q5Y Fnb&iUԡvx{)q%hMNCE{ 5$вCIJJL[ h7gU'G) αcII[ A dz/?c8C7Yl+fwi[r)enl ű?D!K3|]Kwј<Ԟj'@  giXkjFOU ?:C:DЖ.=2-uS%_ՙAH1)WleOh7@ܬ~`sZEܔPR ,_TzF"I1&q=¶򂺮1ñ弁NLc?8zP^|p`:- j]>;xmK(0S}nY쯰i|))sEsシ# =Nly8J/1X}}(d>cBԆ:5d w\Ѩguc^A%<\eħcY?~-\YKmio5Ay/1A*B4"㔥 γiv%m!d ¨ܽ^5JPMxd$GrB>뿚Zj~|mZd d(K#H&ine0jUHvb测AhY;g/i+|{UTylJ?f+N2xKK :bh8_ lBRK?^?&hn]N)eĴy|xz|@+dX;†:fv1×q$/#Hr즇*wybI4k,U 078xvbjw|b/ t$eo:8+r^!Qh₌6ծ5M9'8 f<{ja*rǽdQ?1i#<&+>) s̫_VQya+hT+ ʣEغ|U*yq]tšt,;N9u+4jv%`&n:tvJ 7`SDќH_1X|M<釞/%[F\QD}U*z-SV*r@R6NK8s9  M^Lg"} y4vpچvR`AM$G^֛M- YSzS*<^)UickEջ Ũ|e%$-1 .!6v_v^G>00mf9"U戇~P w#A/GW/n 4^"而8yO)).b5d4橒]2`fJY[#?ιp{hFF54vYo=f242beML\N^\4xt(?cL{|˲LNTlZASۡ ^N&M0H%WN2[.yTF1Ʀ2Mi X"L4KYXv`pu nXuBԩYa' ԒI8 ` Q%şz?5?*9fpf;w~Jd%u;%oƼ rNH57/yPROMJ]b9Kͨ-w3&sPPl:{_:\K~H#A_*j㡺21nm95-g)=?d6ѝXTÄCڔ$ k^&:G:íōfGkӾ8McR ԡ)׻GmxK+~n [;[kUkڮ1GUխB+4T0j빖 N~̨Ӏwݏ5WKY],6(۞҄{M݆kf Gpݫn9]h#A3$0Ƣ`Kb5d?^bKåSA%И`߂@]Kr Ok~ߨ? ?2Rt!)Q-KǺf{⃨ g3gmVuXS9ŻVxDIؔMŵ=俕\>\;Y31ͼg)JLоw5(V` s렗]sWd@B6)y7U֮qVsFStNwipřkTjڗY@%$WvDT8˶kp;7.)+!3lqd,FQ$5;GUvoHåX$6 -/ʼ8:!V>MHxIebΑ(iޯ8nr-F)XjrJ6OlLp0ۯG٨6qiu`52dm;`m[$ґ6qߘ0,wiUZT%U1+^SmG:U.{zWTP˼j0]$=FScXfQ#L !P"q:RHHy-hD @W2Np5~ 6O4:/=ځkꛘJ,"'|b7ygM`CY@%=4$0~DZ5Y6ZyuQN7F؋~1ΌGs_ Ҿ{V="8?寓I1OJkÔ'ZdV˒ĩEfY`rݱh>o&QN@0әpw_D($Y()>f _\w緇Qy[q,s\16vͩ}~{Og`& t.DL %fm{Gv5(915'ڝaKS 8%hyz  =hpocg^N:Rβ=@DDJK}R&Y>Kߎ X ݆ਕz=n.䶞ly.77yxl6]Qȋ΢覞Mu`㖉s6#y-<0֕iO֠j÷B[*`3<S!jQ` ZN0󈾩r]>g 4oO`CA80$D.uc @X| AݒrD|4N9"5 Y@]yU/N**'d ŝ0 3es,V-P&4Ib}=؅y.\EJB\2gU~=omDxQbԍ|O 1,Vj&oS/PӐǃLx%M?$heJk%?f!q#g15ބ]'\[Tn_Ğ* ΧX!%^,MZyu3U5c~LvkS\ׁ u2h}$cfr_ n9L;-"Oe]]D" \|l.k(e$Hm?Z)?8H _uJ ?G#LT3\RMhJz PRK';efߪ ԧIA Bt~.4 3B?eN(dبH!*LM^㖖ֈz8} "P߆WV`<R!FI~!J5&a(Ǿ"kchIPmUד nҿs.'tD"=Y#_Y}]SJaV4֪$T~uUcl\FvVeEF((ᙹUO`AdUY3T2}!s8rͯ7&'ubZq`?1UHg7`/ӧ,< "۫ ւ'bvD&,9 bеρGZog0-M5#kdH s#8˓m anH7w(Xzҹ#T}DvP&c' Kyv Qbj C# h۹5G\@^Ʉҕ͜/IpyْmEVU8Թ[-71*A"U_:џ"XB =,'qmxYش)J(3x7Z[1 iw "#8 ]Ϟիi HN&vXS?Z7ᅊr#:ӱA~2: 'I͏d uvXgXnW5aSj .#ZZut("_ !ic։g%Iׂ?f8 ? haO7DH9z5oz%mZ*=I훴Y;qwM鉮ìQS&pS=~X4mqooo=ryu rf f=>VeH6 %;HFzEȒ#kX%Zs{(b{8))??yop^<;NR=`  fBa*q@tj#_|ljIy`cm|\Н}e++#>t7k/=- \rJ7E`bJ6vR9˥hU4:2^u{c P %5")2Ǟ#--x?Z&ԓuRse4e:v߬bQ2!(ig7ŒdպI8͝WW>G:uTȋrvTHblm#!(8##,?d64ЮOܐ [?Ë^qܔcWM+HYFׄs E٧( g̿ d'1eV͹QəR!,bUfT3ŭ[@ט}* &ZoaWGZyx=t7 UKv:XJ bk5:z)Bc86#YNOݡss)y_.y=TW57Q%j F J))C~ڱ}g^pCgxXb3j8LsP"p߳,b%#辖Uρ)6ýc&}C#.sBtGnWuH} c9' g{D^o<ʝ4) 1LeeV \Ltq3ëctO~)INz:e?"^z4hvq[ʜgF{xۨ!v7@߃Im/UǻnwЃ$Y4o% ;iciF" A$0(Gt'4T2O4j^k뷸M-ٛtR0 knqի`PtQ&!<$l NG>0Py*GQ' PqZB0Pa~c/Knٴ;N7Pw緋ZbQEvxƘu90d: # A֡}ʩZœvhPfgf; cewQ/>ڔ V$:~\5 T^Պ6?}E4pXf]K4_}^C1>]O %ND1%\ ;WTsM0k{r;O.zrwf Ek)]hv$ #Z&Dj!ײ.4@9WHUJQ ڸHR*̘:X4c'W(Mi;WGuAڀK6j*^Ƥ 9KL+I. .RׂnWҹ\NDc_XqY#eA Y3) O{] ;= tI\O e2H)r#ša|U#mom\̊BݝQTwnYX-Fw2ɪ]aw34lik _P* +RA_CD~OYFڌDhxK=7m$+,}(_w.-nt>' Ud.|[fC (ݙikr+l"WZvdanu#¬4Ӻg)<r?bgB(}0p&͉bcc1 ŷY#}[ BayÝ_.>v3!$sD 88ښ !k:9 3PrVU 忏 =NWؐ_]_+JPJC!YcwnYm9W RuaD"p"b8Ù V#nWܴXEYKl̨I9v#OMЖ-KhDBaXbZO܉R;I\ K_:؉"I"6аdCcHSV"Ef.CNhN}c&0>*z%]8ۘ ݬ"p3H% '!e69ՠS'2\szXR}hUxV5S͉*QMNo; L$^tթ@[.lQdRIf6shnP͇/nU)Sq,Mx]/#`K*`z z"X OB5a1}"UD6kgBR|Lːn0ޫo x܃Ø]GvQEZT&:' {Z"{8_xpnF<awy= X 5f)mvPm25@G3G}!HmU ="hAEvyJ1ǪY٪1ԟ̷î~mSg-'%.: X|΋#wCK*eGTdc,QԒ_Hț2K7B(w/BE%sQ#쬬ȈW@qorG3o Rh6b)1!v 0 lś vW=^6ZqN\&#dvWQ;kmMYOO;mK3=0snEQxLG9v%'_m5I(QlQ!$;C Ag$^gS1}e#UsprdLW(XFzFsfFD7 }@55wIuM,֙wqMԋ"(]\)w7:DR->(&)ͯ ;3`Eu-O1y|+Sփ>BCT+ItϽ>9Z;^Vg82{aCĵ2Ƶpv\ eeT؎ sRbĪgbayuqC[C;ݩ.6;Vf0|L 3^qr^%)}]8,.5vNdcM_5C#\>V\)f jԆ><7i$yK:,}?r~EVAe/FSk$ICO5}Eۈ(FsK%^A|eDwp!ok6 ֐Hzُ^U+vYGߗlOL?>lya;=a- ms4ox xC3ׇH&^:1FE}>m%*.9q. 꽶mB +AwnQP݂ԗk_) "< k4iv}̔Đ%mp6(*U*PZ CQ3F0EGbO:VN;(fY7cIȡI_ԼCWϝ'ĠF`Gv󲣓=&JDr^O&TIZ9u7tT`gJ :L3\ҕgyi?z}뒝$;Jӊ[O~oy8 vnեC ?=n'r1z2j0 ҅^1Pt1Y5q/BpFV(\3(}Z[ݳqk!]|.oIfO ^"użjG!"4XɉjS dnQ2!2G_h`<5Idd5(!F| 1/4W?fU $SGqኳQ]czƁI)(_ 5C'lוFS47{52=5p.z*)dGML]-ZxB@[;U bcm,gCYzlHH5{iLn0AUnP+~BIԝAxh9iupR)UQe~i~)1URz`0}kyՠR n]4D$6$Ο4IXNZQ)2xy8^q#^ ?^9+N`'&Zw)*e]٭BeV@[QX;=MoKU)T~<>?v}/9TSL&42+Wu>ro;en<֥:48I1oCłY񑨈7Zgg ]m-+0SK6TuҮͦ$1/9PFdQ*SG4j7 ^t+ne$sBr3}2QP+jҗC cMу8 [[,c`Qʪ#jMn&_DD/OQ0|#֔K{d_\:eRS'XB,ZK?_v^pa^ڼdE $|BC)k,pǼ\ ˭&L_m}]Ǩ㫛sU7hIU"3Hf+~+mAwJ]JQ 6Qbk'y|ڎOv-4sv3"lR &X'qB@d[Μ SxR*9sI' [hVNhM3h? ] ; @:'u95߸v֐'WV  U$OU~y@!4|0qHkd0QR0F5KbƨHڑh?$㰵/JV9Үy0lBof,%z"D؞ 0<҂}g ta9Ej)>WCz'e=Ȋ(=| xhGh,NOC wPA hC;i?=p?6e!o-tfCwxaN>>BW?5I"=U'W+9ܕ[6X_2Lƥb>B''9y_zb1\ aUԺK4mΌ߃#VZe0+H3TAԦ+`>7mZlyV5q(0R|dIƛtS34o7=m dާdf++6,j!k@=`3/;O6Qf@\ j~-8q c}5/bӡb .REw.u?,D~;5OjIP ͙h w]i !)ovMôC2rt,沲CQ>F afF8xr.^[%{!ם0So5=Q-~g;{1 ASzf&x~C[D ũ~[rg$xv)|߻a?E 0_ˇd-P 3N[TMMeE\*}%³Y" 8B1n$Tm^H;J1ݗF0]ngV%Q9OA:8Vxus8F7A,h`† ;4f8,94MIY\|3VvN#Luh&'Zt}H PoG-;(Mў;SSEы`/ÖNYE׾vHǒ_Ǡ" IEgyJ#?JE08?7Z2;$ ,DklHM4X;d@7 COǧbg4FPbe(FU!>P> ?-ZѲW~%ܵ(Bɼ4VXoE{*0eyqd;(SB|2yȄ36`&87lfshĵbv5ƶь7@.IL:7'oňaئflzE&!qfħyF^Ac+Bߦ ^> ټ*fO7!Fbh ' i %nmm\ƲX^hsM1w_^ޏ})FIV~xtycӣs_?:]}O>ecFJ@ʸZ:<mz+E#~JNQƵ.OZ!7+XɯvV~q8N֘Ѿ N\bLǓ^]a\INgd`7Zȃq?縪 O%62A!. q{]Fcs=qw@ʪiq(~rnͫWE]\Tە/t\^J>ϙ sԦ{yu~X&U0iqx`)v1ٸAu24וv*=!mWwI٩3Axv)h6(n@`n}1qM*Z #X1Ob8b8R8JHK>vFg!29;!W1˽hCAhLL|:"j+ k_3ՁP"\BȪ^[洹t 4>n2d#m˂>$!oR)Ζxq!/w ĺlgh5~Z| MsH`erk]η%~ڿٟ8r{F^hj}`UލfC s0L_7bEOO*3|PxޚjeWX@S)L>9Dm0Ç5@9fcyTϴ aQJet‹f֜VHtI[XIOFqx'{Q,V)TM0HhZHXDB8i} %&[:>$zyBq.wpE MR].Ov #Yǀ21m8;p@ d \yAMP"}d p\9.z?.v(u9<5\J$]YM$Aq 7QT\*ne<( nv4/z4?+JQD+I\3rű$;gpm2a'*U\ƨDWY*rhp ve3уAD[#E>thFstNjMLMqb&o̴@jvy,fS.RS$#^h鲝=f,; "C_Cm*~͠zGEnUT%`b$-NpC-ܥ\cJ;燜=*n7FL8fJ.`9(ۃ?go.%_FZ!Hƌ09&f9q{c.FOyA)v=`F#^P'½eo9`OaP 9OBӁiŎBFI楿uQ!?b<{|g^A+VsSQ7FF!>PGO]I}Ec~xeC\c ^(G`?ѿEw_iٶ+3w[b81% -My;{S(vT.;H pfҖ ntc_&.weg-&ۺv` (J9W&lwֵiQ( شA0/`(ƵD++C0R:uc(vH@%_]L xyEϹ3%2nOVCmPB-%lh&AH4$D;哱U8,6(r/*&@rprW?m[Vm %9ov~ټu[åŌfj,[Lp=p/vFof+E.J*T-᝹e|@APt0֍pq fiF|ݵzJ80QQq`&mj[ki|KU,{{x h_eC f#A5ޔ骱vRMYo>sR/vvncVt94P?6Qzb{W  Z-#crۡ?#熖m^av5> }!n0qؘӛJA[jN\'hVf).l/15;))=y]Q:БdAw-Ւ5~4d~fouWxWXykʰ#EYܢɤ~DUD{A ʸsm$S;/%ec} ldxR++Q#eE֛;O`65Po^A\v'd{?#lY($0 /. }S:k\i QCF "1TF8w[E7Z0Q9%5pdSj`՚5 `lK/jPq*dŅ:ub$_) di\HQZGxwf+9r6vz8kH]KWMYVU$ۂ;^ HoRN6jr3Jw5-ԣGY^?DjPUeu5X`5:g G: pQdr; qw$3jWVr/m"N\v`yr_3  ڹ`冷6}T= 6sZ2"X6iaPk2Y# 4[F̌ hd mEٜ-t $ -J!oP҃^q "$АH.UiAEG٭4 У??|![m_:+6ungB#0OM&xbXe1zPM}MqsĂW &R'6zo+H ]}.ׂ2~-m[KQӦnG'@5# 9VZ궤 )@bmRz?/k5aoZs&=>Eɉ 0rkg$xúe"ި,$9u62+hJ_\@PD`tELy0,B.[pXB'i(>)9q2Y&фL.ʀo1B@G w0K-]nHm&ԓmyFkUH@3YMihӗA(0',+ 9%HCV|VC& "G?ᬖxWiG'ˇ]se|CbD= U+g^TF${WSeM(L_(v^KbYWgjtR| U{ˣ (e_ȝބL1$ 9oWJU~NuB9'̧hC\9Voqks`0' ё27uGx.ާǡ$9b΃v.bh%>tE:*KLS,uǙ^x$&,:s YL5v2-W[}f"EM\iWAvE AmBǏw/R4$1|Qg[$BAZ E{4ap5 E *Jiw5sFQCp_]C+.hl/" YP_Hk2<4\7ݵ POsAc2f4on"vtJ^0.xxïk GWW7lY`#[N.ygm|o/4k) ` zD& G5ީD'-g_l -S=oq2EiN+ # z(xj׾3P̅ՙ1|$˩Ѝa''bΘ,GrYjլ)8t,h CA7el'㴙MX*7B_븟 GdWO8vJo&Ǯu1# ^L򲪴9C>oDeX׶vt=gtwjsRD"_3鲸lY֭~nɣ2H_(Kx_%m$iv1=;lTEJ޽P{w$s\ + )bය B,7Ȋ'VV꧈ ˻\3S}`,*fʮQOP3^QcJ+Ǽ|)ֵEڂ̤a?[AS^ec2S6Ү&pwcsxB|.)+g>Q!x: W}UgW1k5C^hlP$ -=AкHGaBcZRP P z mVűۏm҂qE,qcєM@m?<ȱ-a^s3̘MZJR;>-CÏ<nXTfH]-:MZQЭ2/uOglPB0g GZ5'*d+DI&5uyOsmo6e 0n} AO?}qΜ=]SU\|@qcPʴ;5T"Dt_cBwhy[yК'y}F#sc8ѱΣ-X R;Ga_R5؍3sX~߿ΗٹtvYZiQ|LX(J 8ņjmNM%U+ٰwwW_> at 腥JrBjČ<r D$N`˕Z?SnҪLwغۙ܅Ueq($%wzۗw>F$TcWK0e0TJ'u1E?9H!yII}K\WU=rNdn KZ>}JTw{F9 Ħr_DW$ 5 >K/-|] Ya.žqq3Z\E`Mƺ^[ M$[@  IJ^32 An<(ljКj]u 0:Ǔ[Qk17.43HHd q+v3ZeR?"M v#r!w.*مq64qTml%pLռw 3_M /.p>0P=<҄sų3;fİw8'(^~%$q3#7Z t8EȴXPW}B[(bz^δah HچɭPn[C7պԶMGM+#$Uhnqn#N\SOͺrZc)&PFMr Hrk[-xr6:M;SiAqL~<'b]NTNä[/1^@ KjX-݋6ݵ{5@_,)09!ӱ:U1}k`Fbo p)ݟ. =j"bzqм>!ŝ,xz)Fr<(J9ʠ"8z!o*(&-oEQ4OX"bvt Q L>Fʘec4ȥ')GoαMѫ\ud;1| F#$+@xӽЖ?",u!qǂF}ksXgg+=P^l韗EED6>H%b271B[멦eTaHo\T@K ifi=f!Tsr(6ذ=˫cbZKg@i OFBR q_6JCG4z57( qUao@t[*5ۯxk*x/F'cɬaU4P4&/QOU)VD +, UfMVT=T^e= II "ԀoMll)9|qW!z, ʚ6 =\Bwigp=[Ixki]ȄW180-f fo'ZFkN5DB'uch 1@/zV(~k@(O )**o&yà?1c /9{Y[t&ZD"/ƪ*;{a(lO-&/iAWc]A9vi@>FC'|l Mu8p3(C$uؒ.§KiʷrNsŒ9j}0R| 'B!9O>Kt+J&Fk(`lſZe]v.M%?(0P͜H*)FL*LC !ůޖc M.7n㼤xdݗҁ=r4v80;IVC 23:e5V@5c`mc4%ݺSdO44R+6v`ErGdB7i`?`s\x;꧑ַ2C[/^ߔ'qwӎツ_E];Qaz8^ F9(KZB> J)-5̯Xƛ*P?5,Yd#/mՁ;~ӓŒy? :/]+<%,45g̸xDglsF'leX j̜FPLB oH ^O>[{*sɖD?xǑW` !5ra4B#{K'egN$Z/tq;sm` 'e DB78$+?JYD!oA&8*hpi0mDu>[M8,֏GWkbBY3 GmZeY}KM6sa3՚oӄBDcTKt3 r׾h÷n=+]hɍ"g3=0f$!c.EI;X~CV\b셞sQp64O5uӡ!ak5=گRノRkSCAmP Y/cPHJ Ӭ|+/Nte1=1x",0Pdi!@,t$R/nq,ܱI<56F6Fyrf7:sQ޵2$̳?3BsؖAYmJ!0IVCr;ny +R(9.qvt'ʄ3n*g.T` w2%Yuշ.0oб:E=0Jۂ,skǿs/~qƏŮPFcnOvC)p2W9NY<9Qcn;g HiCfֿjs yB'K+o(53=aZީS)<^[ y3pBaɢ)y ٬#l}ĺVdC%;yz7NJDӼUp@FHB,x`U/u/HMc#/dRck񫍄kBvH)LfR} X[88lkC`RvUp KK$-iGC/@MaH`ӡ&1σZ7+z@Ԏw'4MPz&>{h菆?C#3Rq1bv80gmDhx]_ %7"MLJz<j$(y ncϚ B)BT+@f6_Dka%-Rs[XΑ gp()LЧ[lC/t@s2LU2{M{MYQ+_48OLk%(N:|?婚uo1Y]/Isֳ(P\-?P}%fdrfn^Z]5bo qa }q# sd#^:S͌+ƣ˧v#}F w9%κ.g2)Ч6cv4xh"^E"\󚶜aTigxd,x:*m5EL֕V TNL8m-k pVY*keM5]^JG:…MI@WS+Ry&;F}sAM w}NIT>u ~'>\3S_Mv{q3Zg;bGW'b7 ͒6ZF9' 4#MGW )%Tl 5i$&{\ U"\X85'>mm5ő no s &kupqmk@~X.b^s =oϫS .yb:ڱ}.kw{!9knGbRo榲*K'EGgxTq_Pk H$Ʀ~#bJ ߢ{7W,fҎer&YiϏ =L({EG!7Ni<}I&A6rJ +' T,so;%ʌzIdRH'G<|\|14tݫ hզ"őA.mMGڮÒG#li!rbC' Xp'^䠥vo-U,ex2P HF.[4bIII gXfQGMFE,q{K$v7G쉸z|2E HcG5@b7*`~! әD=MF,(qcIBy"E*u.a!x)5,۷Z=4l WUrJ7Q>>hiFL.\*XĻD+gj}$h {H0!)o&t!\c *@< hhJ }=`#&3Ftx_!Ž9b$vГ\㤻)h748~1zVJOJ[ 0x$Ek\թ Ǚ@ӡ'_Gb;kʸа6G!Y%كe7G7_5J ֫6]9NqD% ؀L6v 령ol3V:ѥ) qU'Od+5*FGàa[U.`V7$* T 6b~ D[S?olĸ3"ҹzG]'CGl2]"K6B-!DxjqV*"?*VT W7:5GD& 7({Օ]3m~f7FvAONS!j]Fh a [kO΋>#U \uh/a <謥 u]Juy "g$#2;/6 ܹa~-f{}ދ7'bTd 3{V:+ N;OEbh=Z^?&]^Cm/Fb79AfטJ:D[zWp-e Pk뢈:Ynx OX@ ը~XZΎ=[=Z>$Z{lAX%`L0Vi&:EY(:pgSA5VqhL@' 0@mF4Q.';oq8SQ !YmFZޗ謅3-B?A4լs5""oU42 9F +Tl%boOy{> پfYLԊ)^'2d^!: 3(KAUǞ<~]r#vGjŲd(dcC)m Mtd[813A)Bz,pݘ{TO(\sQ [RqCl=9\;1='vU9INU((k> UaUj 2k(T]wYpv/W(r Ov?yW(hw5Pn2 mkf}=o:teQ%{ZenXt$j,g$4兘OMFJ?_hx nٿo49Idz![o.*1w9`WƉI>guǵ`eYi=-(\!dC-@[Ѻ |dMZxG ւzBg}]=.TFM,CMl!œ49^ X2V)iO<~+WQ 5E|&YL)cfO&Wj4qv54,;f}j 0Qwxy8J^Njd­n{oct'_VɸWI&zxYCam,k&?s0πT}K6ns Up^^ٙ-d}Aa^Oq1pe@<6J#觮\Қ $f@[i2Zn1vXao7u4 ;Y\Z\t:%O,_ickk]Z;fI& yu:%;ۖ1hޗ5 ;؎P^u*m Ai$UR︅+ Q/Ӆ\p^ԧ$vuƧk[8}@4pyR43FD jgOv缟2NOU{!Ӓh}c9/gqD'X!uS%ySzv#bl4 ؅νŵ:q{Df#%C 9OGTdl&z(bIYBb哀1M3}"tWS|kz"h'*[sO5S0?2'ek-){ Pgc R)^Уɍ,.c{ !H5/{8e%XÌ&sP 12(eF-Et%k^ J 89~,ͷR "Ht@GՏ]rQ&?q)VŲD7GScFɸ,MV y. +jоx`]3NBK=F9t GrcA,L7A3m!DbYgJASz,I}ۄJ]bBTj&BWmƿC ]z9?(䖷{'DHka.[ ?RB~ /|(O4N+gt[7 oyD3\\E₹XwGZm&n֣=a", uzPTFt% )P&`uKįr )R­1 KK&)أ}Ԗ%:fc!gOϽPmFЊ5.;- q[6"5jr $Ndn/3IAa'=(Pzx) w_d~)% t"JYz${〘nӪecЉFW6U^ Zh)'9E/!S@x0jM6Q[3: !" 4sXٶ:~27TɄOÔ*L:$ήhtqC?5ЬD˂w$sRK+w=W13 Un@+%j9d̲ V ֒1PfQ0I߬?Dw@o G>^#=E-Ymt22?xn Q|N\I3z6Sm[OtUbj*ъ$J#hһA}~ẍ́PҶf)3W QA{эΌ7+gG1#ʥ7B`d7`M|F:fo>zN)W8{m\tT۩u.~T?R1DX9Md ZUVڛT͗,x}RPSr,\bQgSZv϶TZ9Uh}aF7:h1t?NЭxH0/olD-gkqM_+ 4F&6Gnn~ϚoI i4L :,)yB:~itxJYMمoϠC*RKKW:q/ khj`/HۄZF}׮l  oX@a U,oQ>uNe]VX},dsz[[ÈP2YF& Ә$3R2|<3-7zaUK^ % ?w@pH"CO7lo!)c?P^S%6Jyg_Ubl7V~n6>{^/l5y+K~hh}y+m7z))` X tR'ݬ6&'2lt:i\~ vILyC.rx*'3e,n4k-ޢ+1ڞI Un ϹDe:8_b4թ(pJ[mS rxQWJ K9 ;>!J2 @S LFRcz@(^?)!OTRW~q^Cy۰~.\Ye؆=. -_>kpi }߬(w8 QW_g@XnR/ 2 $T3Vk܌qSZ%=.-*}r5 ̀ }vSBRs$p+A^(Fp;)PPw/Ա)94'H; _t*HJq6k 9<عk`8V%8|ߘ$i?K1&z,ON, `fǛYP+&^4q'ӣIw;FП)6CU]@-|n4T@lبʺUNNbPςǹoiyևP&#: n@}@Han_b HH0Q7/\.0CÀݕ|2=4w۲pmgnpu87Ԕ9=#QLNA'IEtقt\hq2[l(bQ6אXY^) *@"%q?zHJzx˜藒o{<9ʟTԋh|nt(]ϲ * ڄYt W@ q"r|]_ .u#-gSYdWCmsjB}x{ ?3tunVЈ=!h1qꪋ t[篱LקL-l h_$H؏UPIchiIG*`@EFm6w_7ue٩=*3R_](bwg*7艢ߏ&'~YFlR)*&Sڔ\:Jњ>ܙnU͏ЪNȨ/xgcJ lBj[w3A,KwcLXͰ$x4ϱg?Qw$FYyc^BnCGWQ3? n0MTu ^XJ=r3o }%L1.9حM@vg =Q֏`QnΒ8 YԂjdyވƶ&u_.@nn~2[Y+)8ӈ SOC& v܈ 7>AޚCZeuL '2,u|f{mb R;jQ6I71 M&Cz}O,OP#|+hCmw/O!rdbl'NJ;8꡻FeeۭrF[Jgq7[GDF\#LH׏$ɶGI$@ORt쉐5buNZDi2X/yBE.bx'?<` \@X_F(kL$ fJ-CRs cK.MΎF*168,*_5h9|d\CȎ-W4؊d1$cy S޶ `{(4cIrU"&O˾\ֱ*ߨ{&S,09*)^=*+3rŌGPqz;?EUǤH%fP4hBZh+= GE @Μ](Gly+뷍{ϥ)mO]/~-I<";$>}%{) !㊱ 2v3ݢ*WBT7Ce̽[}F^ |:\\㖑 T08!4qo;&=~Tvn_*᳄䘇hnKͼc5z^fksB&K9jh1Y .q 6,|W o>aиV @UA䮑6 :sQ@NjOvhVgl1_G\aԾ%&վjr_+M/ S4Lx-ކL<`(C`z vcvddtGMO1_s^W|!̿z,Bu~6L<hoHK`6ؖvS.DRZR.-L|oڮjʹ@vW&JrR.eN)KeS38 >i؏@dܝZ [#M=N3쨤mJtoh! yh 4yּ4>/qlϋ 9)Bi%0s.>>cWftnK*@+m웵;P 9囯״ձFMR yH6Ul /6P Q^h85([CW N.'zHĽbA+oLAzTL`gyWݏH_Y{mJD `>K<|*gEy| HD!qx?IOjX`3vG~j[f} D~M).4z^? ùHao9Qxe|Mt2 .VWЦA_j5ӟIZۄFXìS5HrqR^vz@v/es[: b UX}k3‘{~gu =VHtJ(=u LQO$p QBVW57Dgꮪ`3EsxO TW}$ULPk"0XEvA#|ȏ4toؒw[S1<; \5VTxDMrCk t*Ǡ ŚkO<H?$y$3Hu}cfͩݣB!8' *`tgH-'up6BvR߭z;ɌVOImkL&:|lgSNyL9L]B*Qk!~j\z o%g*#}QKMh, lͣQ$w`T<:A QΖIiM5R_,ޯʐ}d;66zT}fWa2"u8$aA`mQ ? !-0q0[vpC(7ҁ,<=ݎ׍%Mh}#5coRg)GZm;V48Q 7{6VzMSxFN_>f,huASJW'YfpD,.l{A X4GY3\v!b˕= B幠%x}Xx̒i$ (,hr^@KSnNϯx=r:?Rdg/aieĒɇ4X➎_H].PnY1ng =;IZDƵ (/*e(MS^*tUqm>VrS$ݶ5Lւq7c0*ȳONLE&bA-fr HuTSjzM 򝃲;ε>qʩPGbA; zzR 7>ƪ) 6hWJ2{d9O9>8@⑕ՂC~%j;[r-b H7F:G͢Өj9 ~_ ޠ z 7m;4o˪D  Rz*Ѣ5B{?Dڰt'8T@k4G4cE1Zc]Z5oН/.,; eXȝH fad]3M J`;XHo)VKgb-Alָ+8>> ҕ0_~f&֗L\4r |[dLkcnuh7f{@I^.0p|Ie#՚UKz#Usӻ#(xh!n.)VR#kFejE*O7!^^csou;88~FOBVIcw]d)v]SL;d"w*L7٪j 0%׭N8o⅗Sȧ@#WlN@{6{#$&J`M{H_"zXLIPK+ɁD꒸ )vp}B =9|gsVP[szu[;nDª\vF'4`m²ڝJ_Q~edu">PE'K)}w7ä:zYKbOo[KG GfV՜[uLj> 쯆7Y9v10_1I쌩_Q"D*{nû>z`~c\;ڧ[Ky)_sDfuU ]V9)5Sgr4olLCgb u:&d)5 OHdg\4fw,,8RơӞH}nΡ뤴H%F: 6((׵A*(O Af#E>Q;Vae ʍؓ94.m8ec|f)JپogƂ7=IKIGmg"NUM߯_0x92)?UJW^k6VRSTbk3+I<+ vy73$#.ǹ"56gM©R`(`bV[;"?zԝq>6NoQe XѬP=XdG;~p{-ի+dC#o P'-Leke 5pHZK x|TqPr OF{I}6!˦eJi7evbЛj} 1Ѱ7)sYy YkTΟViڣ ǟٮ10D"B yn9JHS\%_-dJ)7\jo1}zta]y=Yom'!V)OL9̀jA멦%J\Hr@smʚN~OٗU(PRn77i 1s8d3פ>@1շ*S;BylD_dK^E` X諤邌m|)t%,A@%9fmQ*Ah`u*~F9kx3/eH('[ܪ9xtc9$@AWN/{MwReh0鋰`*%7gM E֭rAѸ_,h*a=v pݗ0hY("[3{ 8![ /q ]TW3|j?> ˾;Y<1#YUp9G}1pxWaZۓ#$>Jm|r?1)=i%@+꟱i&?Z`c*p#s |S۰j:ނ 1+*"!8|5_"nY),>&[D^,Fx"wxO]=P:\x=պF*.J1U'f{l @b~8 -dd=]RqЧw MӁCA;A- ΚO'Ϝ|(/$.>M8:.w24f|ݱf|}bbWpe`ڣ3Q`| @пҊ&[Q+s[hpB)V;iJ8@C݃˔ #pK`mEZİEŪVY9Z¥SSe7L}GȩP74*}MxKcʁh" Y vj ,[%VgLHpL69I1+s 8+ %K8~׌,L{>)lauT0ݎ]7Ba뢄{JAĶ&i >cqa~o 5A?23o#.2joMEFe jÑ:G{th{=mc1UL(',~`(o@吨aF.ܞ{͇'ӦϽb/v:;ɇ꿒|#^sIt)q LZ|ÅV6)I-rfGJʵ;kpճIzzh=4ĨN2^kҵIuR\KUH>5EAR;*sALw)f0y…^~2eb٭CY2t6qTǙ \ YjӫG$B5ub"VJu4A`]4`[ OJWXJT_hdfngLlounιZ Ɔ]8Yea !≸ßM-/bT@ & j E"W|`@\N!rK\;%&-R\+[T/<#F)NC!b?m)F')\:a6jQ 8#NEݽiuik2Mjl-  gCi Vzϓ%xer?M'U\6Q݆b="wǮrfVS"քoȯ'%].Nx}Cb2a;TsnQBbLރywѳE1lm\Y?H !䳪1(~6wB$2W PYF۔54|:_b$maK/-P vFW̷l1-<8/ 1 y+3A|&8-*#ƺj7ڿ^l0D>O5zcN' l^hlv'?RX@bV )ЌGgOf L( l+] GUB6 M<c0AB&cf1Hglt8|:-%W%Wыw?6 ¤!Bm=RN u}`LFЀv}4CSAc' $U~J AT!J%fDj@*>=F֒޹r/QS,S=QBvQ`V$&@++ "$evzmZD6)t߽\]x!I!f{(>HvUYh?|=oUZ]6g%]I3˿ 1ј޵ '{ xK`YuG6] 2!HMA0QE5J2 78oR,g$UB\}6" { Џfh!ՈhF|%>`a̤=Qw گPC2A-_Ey;z O"-n;X( SKZ;ÒkݭiWwGo#9BulAb1%Z90:k㧈}'A쓃./UBfbќ_^b\F6$Ĉ|62X7)C<9 ܾxe 1mxXC]:N[%1o: nj8X/=>˲6zmi1yNiM" RKO= $XIL_$b`f7K:=6PJ*jgx~>zP4l9x|țғAA¹w!y`2`kꁞ3$mybxvv~qoSɦM+ofFK{&O^>@eG8xHMR:i8JoZjv $;,0 mj 7G|-7{`g[gO-.2cu \Hl,i( pBh-ĜC~5) )His6&EF&6 I%$LRDF4w8)1 C'`x̼(Bo3PfWGhlkU?}ZOoF L!ĺX{b$k1sfr()B *@?-v8 CgG|+%Xw@dRgv W+!ܠd89]6x7N؇ZwxkiFd@G:SQ‘U CmVbh;-#=%X{Yn@8e懗Nwm^X9.\\i8FEx|j>OaiC@a9>Q'6s%=K_K V]ZRHG=,aV I1KjסE/ ^`K/vɚ`}88"LHPiӷ~wpj!g^㋫ˢ˸āpBYCڋwy x'mu6:6!_xQ-cNyݹK3y (}/7gd 5`_ݨtCHCSvWnF@/ȿsI,xP\ 6ƈS{do!JaV$(-]b%;I/~,ONMu+u{lƅG PNF[@}#o$ 26.q.]C|mUɫNKdD"|QqXN"NMܼڞ8 ~nA&7eK-8v0DS߫aSǂ,^Y+/Èc4-xn0zۊΈ:+N:+W)26iE* CT+&byP6@S$:.5f/BF}V+}dܲ"ڲ )Tr̃78L7kYIwOcH^9*ɸ/CsOHJ&֍o SqOWt 4v9)`pS~륢,'n<NxPX[ISJIw+&0\Y*JsʛPԺ'A=I>)"ϋ>vK @)PyK7g)C{T!;\էOQ r:v^(xo? DknLb~z#M^vSސ*ĭ˘{;}fCAQ$75 ]h58-HD,`x\;iG}؄X";ܨGl t MTJj3ϼW,kb T [RcB*PԒ&d')y_팬2Mfs ٌp!2|VؚbYoL) 2봙bY>ύ)8$ݖ]|^' H: glm%g| GӌT3HĥS@3fLS5eoӑ$Sh#(Ư`*"It^=}M!'y!!ǨpB{=H'#̟eb#nUX-<4 É!8FGuwϸ ÃDj<|2M.3˼:- 6kQ!cM0EJɅQsr oVחr.pP ,b۠G囏;/93MEf\:źy٩Z;[ղYZbos)j誚_"ӈasĮ'/ g*nFf}ǥm`l# AJ?_ϵNnwۏp,g0 SGG/}Y:uzbW%o .`EN$t3-T`I>B@V`D(Ll8; Y"Zt"V<ͳMԨ+ic5k ۄbVm"<^9i~3cԣeSIS*7>JJ4Hm6z+=0wav!:pr袙ݲ]P{)^T"UaC'?A~D }@H屐GVkkHZ inN@׾\z@F- @I{(E,e@}bfwTHj36|VfŶd-7d, &~(+2y@3?~.*T]2TfRٷ+:@<MFW잱fۜ^A s`FlܤK<ЦF{ܧ<&=`c/ǤNb]ӶA'ɚ{pM]h,8;e槿I mH#V=4 =)RKy8p,yI4R 2VKNSCd:֥tlz)@ܹΟ _v0}53lrI%sgV.07%ҕBrHD(-  ृ+uTUيBlO3i ȃٶy!U"{|(=i} @kE0= edjpP^פT:ɒFM̹*OQhY_g.{@fnb$l6=jQ/t26EUiK)gս(D5Q #)@Ȭ -4p`>wwRZM`Y @zM݆3e욠lw+vNf Oc? BWB(0kP[!lŽ eE5@p2l8M3QD$VU}mIS088_a 0Ѱ(En&D o(;ricT,²BQ-П_V5'%1z(3n$pLʻG ZzlAL%wقۦJ"[_$78fWjqh,S9q3vb㣴Gh3r/ Dv,٭b$ᢊ3@n@J;k`H" K~.iΌ5Yl;;nh}1Rj0A\Z"-D9B%(Q`h* RVRjd .~YvHcGB3}PY"^d{yA8gѿ8p|PЈ1V\YC&.6o!rD3tᄸ[N| ?eC+ޖ{%|:Zm܏p](?MfKn\{#wЏ ZDm* QXY4k63kh^8$SK:װ)dTԶ|>rD"sKN㷯Uf>E[O8÷iLaij=<5)3bbT8@KR'p^׀ @pwˮiB]fXrMœqpI"O9(yy'} ]G㯂ܡfFk5r?OtP#S\d@M~ Ӳ*$Zip4B)mg7熦zmh=[7R9etWݽl7].pQ\SuYS:xy;v7$ zT #Ie:<|8=a/)&kH5VjBQ(D$aI_35+05&/dxE'=CK& *8uExHL )Oz,XjI萘 ~ v¯ber*{dL+J  :t6*x#6s?lH'AɼEݭ!DX¨hK6jv!jU7MLk_x\Kqol 6nk8}Dm8$Т`aɌfJY>WџdXs%.:+B+X1rn,1gwR>6}Oɂy6X5Nk)mN8#T+zy&\t$Ȗnlֱ(^7'[0+2pyrxB6/kESVZoVODi/[5v `gZ8jCu0"j_2H?$0f F%XsB@ǭxH~S:a!FjSEk-wѬ?u>[èu_q{FVAI5d5px!;kYClX3 7" _ @'.띒٭D.ӢlWF~"+'Lќpc9ƆqfIV%XM5_:3D:%H Mu?@E3WwL)bzx Fcp.8 vCK~ν7TDҩxuQMo0$/4 +h ^^9T2 6V"j܂KUj۩+Y} ԅr 0 X#/3l' lWǩ?_7ȾV- }~WJp~Azv%{=94ͦܯ7X֦*ϴBx$@ aۏ5}Z׼YZZ\Jdh hS H eex=%s:#Y!Ʀ2Me~6bѣˈi[ѽpG1 VnM]5IϨ5W-{,aO\e1LE ؙmBrK-8EŞ|9nq~7wОi',?ud wa*ȋzT<@zB:Bƥ ]P[ CEmd(/mFPƠ:6ÜkM^v>fϸ]ϫ]vŌtcQ,';EjybRKaVAڷ$Q؆'٘ &]vѾ%c%\SʭXpmN*m0+S쫷wt0EXTeĮ#v es1 Xi_˻EVJ/mxdWƛلN,.Z,FIJ [.:BO=So;ևA#,?;4AiR*֤KY`) ԀGw<%qu}4xLBD-rjaR4))3k(w76:5V>,Ug S#8H;8GCM{dQ?y[*ټo{4HP?l]mhC @Np獧3E&ʾ|mL$S*ZsѰ}9zvԛ\ 2@hS0s yv;Ev~'+"eQUypQ6g:}ofj3DC' u&nڞO&=шM~F^01iDIAr* ] yev+8nv Fb6TXƩIrFN!K:a%ާG/'%A{zKNl3.Lnamꂦ~ 2D`8[-Kډqq+:"[OTBцy 6 Z$dԷF":'*{^؝%:{ŅZl;nkP%, HHl?w{!pFYϡK zVhx:'Y5 %ʔA= 2MI! M(.+I1[+X;^0X\9JQ}E: uD)3LuA'Bd0hk[U"pO'lo|dȈ:k]."9Tl v#@C ;nb8QwO%iwjL᠔DiU5j>wH˶l-QmTY՟n/HVY @QrMMHdUEКR!p ?R`[( d dn(=Dַa Q ͊ Tgr8a&NX |PjA{M'Et%a?NvIy^«,bHO. x;+P\&4\ER(غ ؛ qyzB#ˡ7,᱀z/Vx@HwHS$(?0{H9rr*%Ej:w:>B<Rg9qkY$oEr!e\t?Bv폠wȶ~9Q;/=ʷM%7@VU܉L,x sW0?XG:[1mJ5(Ԋ}\4–˳ u$XY(Т@A ~R5B'Bb eKlgthG/_z]bH+ 0wAH;?νhp&$ewY,XD2/Mr}H`dcбsTN| }E `Օ2D20Yw3`P`A\Yzhaa؂w]Ԃ^vdo=6ST.NܞGy=`*HUtrx/9ʽ=eVnࢾCiYh37ѣHmOd$RpPlQX@5ܢ>\".<@[iEt^r ╆/o5M;MEs9Cb'JS-n;k/0^k!y`H,-Xx|BIjB Y }N U@ڷBuclpQ2l>ѬlweV)UNd/$6U$J{[]LU֘Jy=t3x:h&o !Xϧ)̨ا>W/ЍɉTKc;ؗNi{Cbo$ HPl<<7>X=]ecu}VcP.ϠvAt;]n:y;5“r,ord#正A#+b RmϘzȀCwv`c Y2Ù j>! G`kp`1'?*q۹QX#Ea>' Y$aA^V'37۹Iؤy$v`AS"Qdֹnx4:,CB4ㄡ&ZOz<^s{zQ.â>& 0=M967{}pkK9T^j7k16`P[nfY]!VcXfV0bѓ*eJ~@s |ibE6~xa/l7>-:tՍ%C_#|P䖥{ :D. du}k1p Etai@F*f__kiP%֢l@tLW20]:aF3T~"\k+Y_8XJ ')9dmGC"pU|QCA3rڿКDE|i;B/wMSٰk!IML{T#zhPes;V'*o;X_kJE*lOԱ3XWi0%\uukdRuwlJW&oqG M g@g_A* !Øo:Tc3߶L"TqYN홊c$<[mo%Ap EČKRrD U%Hc0%lQ{ }YBwuK{p}s=Kq= =b=X& AN9=gFޫ!:4JllB8AUByL ._[zB/D|uō:s.Kj_Z(x7?ԵmXwz%YC  b}>8Xm "B4=.fT!&}5K^5VUX|pjdmרL\l2'6O-txHZ6`A= v:CCE@A^#6}D NU Fր~Plŀ+ወ_a.e5Zf"dBWY^O t[7DNż]MkCo k4i$T_ BW;1]VlWFHTj3DG| .~U­;#](.Y;օpBҘڠ\PTأۡI{YۚwNꬮ]_Qƚ7/8-Zzݶҧ.Zk:&(7KbIߎ1k?[0<Cdgɟ>[I(6لQ#M5GF"->P/!,aH:e=awJC)AN I<-HO7ŸVNgKRV}*]<۱Xc^uUg.2[=\"Jc_V꘿@/j@BZwJFu9vd~뀏[ ꛵ 2a10 =~S)XzL J /ǘ"M} -y4=EVN%V$_Nxwf'3uJ] /[۫dg uGHo!j ZTx%tU2Y90||K;>vF^ }U/ L%(Tlwzl3]-w=1{Ȫ.`Ep)oEQV69Mis_*l겞݈&5*ާ{>3z [< ohLs@B:Hn)NRit J"]e[0!oXGC04q;u](f8-Hx3 `mw əq~|ث2YX1I="4u+#/[;їU8djs݄8<㾞;{D`?3XYqN[ndCQà9]k?sMc̝cpNOGlY#w1Ƌ`;R#-wp`4[ߵKŕx3Y6 MGhA5#|)}QfnLP3ъ?m}6?Ig5kWޣ+(W|Ycl;I"nI_IJ6:9H SY4-n$ME+ٔi_P9Mם^CyZoڒ /AsUMnj9(Ռ^˱TF"6BVf%'N)P{$ )Sq镓7%E7bÔ:sfR2=|bZӪj$ NRz\H;irP ][KPlw74}o\f\Y+ņ1< 8ci|BNMaA>5{)K2z[;xvMκB+OǒY?<ȇ0%|lC//xvDZJ![5~֖ oAPVЀK+ $g>ZuxH敼\)" )QL{oVEnI. mt()k<7z~'KEȈT(#'Se8 >;u=98SuM$gh52 [GiM1>!d c9G#!4ߵpD3WƴT$r2t*56u?-wX!%vu1ӸzSO~710nzzh's2.bs0_=H meн", x *JT_J )+< F>d*iJri>ӦQO* сEWz<Mm9hig_PT5 U?֤?9"B;#܊)ma k6qLH$ ZGJevRdd!p*ͫU_.S0eKY`3q1Į&aV2}ԱiIiSTyg u:27Kwx؃{0 .ߟ/,7Gf`ϥy9@ lNK{XKESF?H1K+% SiV݃}‡`(6VaZN~}f=@Nǥj,D'ǒA!lܱ{D:RZ0H)TMͥo-m(-PK])/!9=E2^"r׌ý`GTTV6Jbq?d)y cƽ1LE LW_4^^HkR@B &_6i 87h,}o7TQ펰[<3ܚb Y|yoURjjK5 ս=ѯq2]EȢϒOeؒPhaݢbM)E#nq7(gJf8bVh ZPUo7?t)jD,qH.>\ 7ݹ &ޝ7Wc(bYXl|(|"ɣ7/S?r.<ObAdȔ2&SϚqgœu/95|JzUq`&Bo&Qob.LC8) 91z~cj+.1)M!q>8:+~-BʨH/~P';0ڼ'wO0γnp$^d~JPH=ڑzNg\?b`WHg9۷Aq)SȐz:>F6@mIAXvj[1TH'ܷϡ;CfIJtLl vF)~]9 ZPZt6ۘ'%`w*ojuI:WEN820b1Ldw/(H,_TP9XujihG9 -v[ɷfNޅ!KkZH`|>XUH%!yu,hb\8ܣV&{6"T'6\륨iVJUM@&ڛi4iщ \U@r/i|YIHq=רt҂H^-W5[~{l9-!=?Q47X x_0b0]Zctd9J"[zA(y-0aMowtbqZ+mذϒmO]L ]S<=I.0|xn6` z!e{ -Y]c1r4_oE,gMsVn]Mѝ[VKy,UQ$,5<`h%X~9.93g0[\2wЃQg6~^[_Bwmo.ϝ wn =߈y>Y&jY(N|tf1,f\!a>Bq4Ef ءU#<^ /)qRK_[@Vc*77~:G6ײ#7fS IG%%)g{L4 W gK.זr҉@(r/xZd,ըY@CT f  Z(jfdF+Z*/7sSŌ(c5}d#aERQWbiӨA~~]$ .UH kG,i4YѲ'hKxQ=#uc&Z6K"ۂU˓ĥO<.K3ztʕIۧP ?|DWݎ'B9w] ҟE<22i4!?~U3#}?O%Jl i'=Eqc*\XW-k䄀8ͳfre *tIJڬ1ʿ;E"!.3GQzeS'g$r&mXo/(E w]/txT T HĤ]!/[yt*'bHOXktp:rs \M0Hm{/kiO-*=R?OQĀv-_-ے }jq\**>aWn3%%a)y? "` vr ᙰxT٤2O [Cw;!T "瘛ReUUWԟ_Ai?Bzq0#_r|A,3B}91rsBj}kfn;<}EGDOA4}XR5w92 3$=k1ii-iY5S@ƬqrI$ětxM#;N7$oۘ\cmpzU}g7i}2e V?^/=I—K98".2_O6m^sO]FΈǯ%QS<x jD[lXH_4zλ OvN. =d=wÙfQXѬ|Z9(~L^̫a{\i\!V|ΩߵU$t.TDHmp~n #83zs;;:8(| `ʹ ]O 'n8 w iW.oY#MdWpԫwR"MZ 4ɒOr,a]CjV8ȶH_NBUIe)v3SkhdePwȲcvOYʻIoqp!;s|qD}t25Vz7w"%@嶼H4+A3Í{*_PƢf>Su@ӷi7x)hxNhO:eU?٠-4놎Y\,lǕ·@>z처ťGT$*%$S9E 2ܣ r<7}~MПU^h.ksV!Sot=C\`LV˧oӑ; h'牃mHFpՁy+CE(=_el7!ƭw$_Y"s3HnYδ5\3b$6Þ _G71*LV%sw5ɷzP~EQ2ut\9E%QȽ- KL$fꌉ5H  un1;*{j\ =X"GH '\Ro60š.96477W{YNJ7zYu!VKPmtB2S5}abCO~ n!99;w(XPfgEG vcHW3((f%O~{DT#4""^\}?w0p"ĀL%>$Zb+F!BoH5 4XׇM~:pm!mSǶ:q,6 MT{ v49_4($!С{xY&h߂kYQJ{ulkD-LEe+NzI_@@Q\K1"a˕)xtF>}U`液t*QEp̒9^8j*`%3MSݳ{LI>QNk:Lqa5.?C*%݀Oq}#/nQ{GhGGx8%b %6%WHZ % ʋj唬鎷V@#a2L8Cimw~q-&Nsa9ic)π>VUdB)A aU˻gIx{YeWAvW{:0n=s0"8GQZ5qC.mճ{!E7nTf "VQ0?,,8[sGO4;Bިy7*)Hz !:1 !9~o_1z^SfCsȊL5Q)b8=8[9:H]K^x[U[XaY[B={&OXz>3Dm vQLx8|/޵To]l 3h&lg3tx Yr2\LMj!a"gS5oχBZ虜y :s0ƳѾxݫ2zby݇٩y4uazt^Mq0SswII\?1݋4 +.Ryvd5>C%$eэ%}u+( LT^ x +,Mrk>&q (ی1p_c!!$ ߈bXh[v)eݺ+PچWb8g3!MbJӑZv4Ij[kdDebWܨ?{! ͑T\`C%vԧ܏)H$FSLm:}e{1M5 򨒾'`aoCj1_Ά-.^ئQ z*%w[AVMܡ|'|hF][P>OB5šM{so6o Y cc}fˌɶDg!3.Jń |X+T0<, {LpTͶI){I_j1+hȦ>ĺvÕa%<5w t\ w^x kYd:c jwuHU F]H=97q{O6:(#Ga HV [a9<@K-Cߏ~ǼGĎDrP2CMU]"+3WUe.4 ODXZ/-6SWQ!я>O=ZҚߋDվҏ>x0^(\ =7~V-DZTa,ySUTe%-2i?%bMGRxDac*+ 7j\ ./ޚ94gv*+$J[S(v K[ >j{ΘghhrJkT(>U ( 6bFoC_q+ϰ k^p縍峝 1qN#B=ڸp9{Z%I}I8<ڝ* |j|Pe ^כn:b@h _e ˿lpRce-<>?јR>{V8+3Ec\[p'1/[~p⾡4V12teH"|iM' g~ӡX HS-VFF_-/KN}x #p}w&gJ.vx.+Rܯe EnܘBa릺lmXdSCݡth.&' 26;7<]H+?,:o9k68_,0:v9U/ ħVLWHṼcw& XA<XC65WRyNIB ,91꿞)COcΞۢ3` ItlePkͱ3 Q1=;$<0٬޷?옉­Xʁ!2SM_\L$1JwLG+=fE )wՖ/R/8ܶ iO +5UKyj Df S]tgAV]Qhɕ| \΀SgBcHgNzتjlH/N ʥ/ÿy4C8$ij۶_&O-U|ϖ{6zȉTrAfgl >L0ׂ"76-`n^ٶ+G h]Oj I\F*daQK޳C3'*ZlK=v(֩3Z(fk;SO]0LLJ4rG7kˠGԘ[uˤJ%5rO ?:,5K2o@2*67oCK[>@^/O\ki&{}ЍdsQikzfvtI'|įWZЙ[ UcYH0D/'ă K>`8y\'I|[#>Q\I<28'6;?xo+D\˿{P:GlT qY.yU[<dȠe2Sfd/7vȆ1x76)o~~'dR.p'}/ s,^O)?lʝbũ®4 Ĉv+ZD?-TYFy, r-In"[)y&}=z"!lY1 RϽ7Cm±ģ ЎNI R4"x 9LW)q3S]bAnBu8I l<9w{`ɼ, H;`X李|%|o(ر_͘@zՆ+\K1ޭ&ZK۽BwH=ܟIGޔ ]fU@cp)4gR.01|wK"lOc$XGvc _96lgӺK?Ҵͷ˧,L7j&f)1XJxCUTg6N48w3Ɲ;44s`*Yח"l4Gd-j+DUfBM~"<*;߮aOKmmaJooj{U-i,pDINmZ”Tz}ԱJ(t Txgu6Ӱɂk7Z߻!wPs]o9hVH \ˉgLpdOqZ/`jȝ<@HY1;Ǵ^U~6eL5FFSCRbTI dd9bWvTG_Te|o-mɍEHiG(yPQ/' i^ Q살#'=?)Hi|C7j)`O.?^MU=f:zlՖ&˹I<0uxX0b#G1$Vm\ RZIdwv "jpIPf˲#.f%bϚvVd(ILґWΦ[w&qf.l` 6dO!O&اc]?~ni}UJF d8)AN m33GbSrM˗=׈]50wif1Δ2"fСOGOmgzb;.iYS 3ߒ(&\բt-Qq7e_:@Ksҕ1 2 AM$MFT"BR=%,Ze}ڜh~Of/d]0q OX3>T|ӲȏQdf +fKu<8O}I˼S+}h4ZA;kfٿ I Q4 V}2?r2K*2qʷ@%nG?l2Pl6~hJ HWf!ϝH,BBܴcw:8-˪]|Z9USU niI:2j*%ǭF2I2[y&H/E==%8Ɯ9۝ȧ3Bip櫕a2x(|N5 C;> `RBIȜFh+=d#\Ύ 1T781mo_;7Sk֬ ;-U^eǕ6W`tPv(yab/].k.G><Э8ON!=g1K{Q95Nfź(^V OTX=~R-0|jY|DvsWy$OwpR.e )ڠ8S6W~dVg! ل ƪch4dKA~ }bnL=ն_y>3#ij&kڸ؏cIf3pu |n+C6,dLaԐ:a)4ʒ )"l,0cT5&X2FbsjZzxLϔfQ eG@v{(ڤ{njs`J4vp@ :SYK; 65tKħq__ev4zLM!]@ƭƻȩ]Asc܏xScȞ YFD/%Lp+Z*35(1 uuE9ڑt( #tZ[\Ԓ0-;W`;ѣh|(xZ[)sjrI#pZ49S|Ys̈/_yD\_WPJzQ~L*q>{wGRX嶄 -`5J$gMǪBWTRgRn׺$C٧k0H ci7B%~ԁhܸ:^`jAqMZngq7G ZBLˣŪ!r޿.mD6}O⫅w k_ tFYm }]ILnJN٥&1MaLķ(A"KX~#f{v~r [{ >"L#8SB3SAtd&:=(f(EtEe#Tݙ:ChԹX~LWo_Sd6Y5\j,1Õq.7UEesCT'#BucgHMiJm9Ʊgbia]:auXxM?Un/2^ cuEϓ0"Ss!7ulbBtԧTq@9m L>l.hK Ee[#z%;!)VM/q_ MTZ w{2gU>=(F'Pa|(Zt6U(/Z'h,F ͱ"U^vp'Fѿ}|#7[٪r7U؂3+5ǫyP *'B1:xKH&&ad.-?JgJ:tm͑X2dLoNז/}h/WOB} `}'t&X!Čmͨwν OZI10GERϾkw2@t+ dw'(F6~YǑX@c~O D1 ^j @f UYrB<GOݲ B$+GrYR !{ |m?C_F8M)8)$hdÈj$Hܣ< *{r> ͮ} _:-*j0vފ鴟 HD@d+:Y[ᓁ{wt.ܵs+r k˨?3Zp'[(p&sL|x5E[jŖ592'񛍤 [RhŤPj**=[5.Q. iU"3|u ; g՜Ne.)d~$#)?cs54o!L_:O:j'E T&2p@] )GCSU??-ld6It!ч H>|=r E?8nKFf.I7S}kgkߘhn߁͞iT|Iz*õ>^s[m{4+GJɒRS;lj,W3zrťΙˣm W_J'C6̖HLѧɩIyRXpI RN:lntiB17ot%/2<Z cFHGfbOAcj`)P](tgvKj`#lMפC@ }+-5| 8q>.хiu:D† Mze~3c2{5}qQ^ ;CODXoa7YLd3)lۿͼ\#0,G^{-5@c,ScqǟzfS(2:^̤UvB+/qYeh9"&:9&7yxd dkb5[?K<؜h!rcaq4Q;2r 4R@Lm&' Й/ZU" @a>ޱHU4N! cX 3րN> <ܗ|`hߔ{,ΫR3p_JMt=qd#uenK)fD.5)~ _ar$>{ISr?SК bAq>=|ױQJle-R[  =$gצ/3lw^h&_o>\IZn>X/![G8jenxB4 _b狽$n&$=AmՀٟu-;jVt]>Ȣ'ijP;'[qo8膻߃侤H9 -`,DJܼHpwtj'2:|=GnxqB`+:[A]H}AS+RBٰ **}aZRiy5`¦$f%P(Į5|+MVcKEEcrHha$h}'<1'~߆d]9һz8N[9H:W:*dg~kleT#A2mK5 ;/9®L$7$ˈuKK՞?) Ɖp 0л0C>ʭ}Z2bUeJս3QЌ$M6Q}\E%o3kaN#A TXudA-!A#)JRm8p{o6_ UcK>"7dNMkŸȂb>bc>c=^YƟQ ỦmAXr6~|0J]h: @s;0<^1z'xDv/ȌAnW>6DU<3iK o۞(1PM {RW!+ʘH[BAK#@ȗg[̈pԐL Kl=([\*ef6@Žjɔk1 Y9**#YOTL7?AQZ c#qmI35  j* -{7jlHRh3,͝@k@OE^E y5YCnMaLO@g7 .`ŜA*6DPeЌLZvTZȡOi7'S2|&K Q$p({/*L0xm[}-J|׎ ՙp[ad[0l(쏷=+dx){8KAR离Z98P3͜cXU#u杳֔q7C\wCc` UG巪{Ԣ;)P5iB=o8YJ4:XD_UW60{eUx%x85^QFt ֌ gƛ6 M+gS m1Giha1ѩ8aQe<ᩍ suSFh7xc4BR kZO?ۜף't7;ɍ]AuHS z6gl2^`~VXG\ e$Y*#xR;!dFd=LttT\jзj닥u B` =ۢBRLBg&l0*2p2eeiN *ͽ,=;.!)q)o$Hlol{'@NGRݭ\J~3Z} gMm¯ <0fiLatIAk :U:|ht\ٞ^`Բf#a 'Ui-kIw!|NV FO÷>`Y6RB=[~=;t$GR./j6gPRCz@H8l)74U8/YCF9Ƭ/ sWC%6n3;Oc?[xw72O~0lp9:ǽŠ7t}ׁ,=LdG34BcpK\yk'mܓG9V ee~ĻHѫ~-= KELD *Fw|862ACW&_zTh_z>Fu*8!nyIj\d? jwps捲w5N=lFRYN cQ9;VjfM N+9dJVaT]vz_]裵ǽes0 wVm_ѹI7ex^ tMu֑dkK|> Z9p) BpƁv*b~!a$9rYmKR|_SeGЅopoPϪe ,Sb%h+8vHޱ-XS1/}e0HLygTإ~vMqέ&dڃL:Ω6T&fkQˠ[z$NGӖj&,)-&1 ̞Ef|DQ :zYhN6N,~xkOeBqOv ~lDFJ 5 pmJƌ׳|bG/^ gˠƒ-2'ɰ'aſg;4F{f XV6vL"?ooS._#Q[\L5o-|RЯ{ҲQё' dFA[wm(E^νtjO~ _yhDo&lUZĩe%uL o Lk)s@d} x9\ƉzֲT-(5hmv 9\0S,54,S@2UIHtqSut5#*V7% j`j.`gZZpQRu\byQT )EsSpVcFN!A^kv!X'GQ.4N˜L $%縜qB&nL6;'.F?(^k#u#@]X=/QV_z&bNBHn16^I4։d1_G(7.ah*y& 6p-1 Qь|A+gO/K&5}Z2w8T4A3oFmt$Ws ^8Ra=ki@>sQ|My.2s|VmXk쐹c^1UM*LKnW 9P/JDHEBWdg&hċ]n =GTipSU879c>kJQQ :1#QP͠Mdi|^d؋Sۤ)OX@-` gZk^E{5KO崇sweƻ*MXDʎUӻw Yy߮n|" ;dr#nHΪhAkƚM a2S"S9Cl![7񅳀kܷ9D<џ,R'8zWBYc']%mws M5.zKLń^kHasОgþPځ?;Xnv&~W^7ٌqAA].Y"Oz4BTb(FyXw0K`t쿻O,%lB>nS'_Շ|P)\Y͆(zD##XއF^ ^ں)Ds#_kyIȼuddb,r$W9wn r/!VYf͜e~`̶msQ]g1vl#s.XlkPf}@}e6K]8wj?{W-7?= w6亡"hlέШC/Eoė\Lf3oW6n7enEH4m_hIC챱(77IkJ2D*VaYsKȮ4>a/9(7 !6d=P/߾o}HO&)H\'KX~Z}X#xZ#11lPBd|&1x4t ɜP $2+ًdPn~=R6naN7gkA2&9NzK1Z|Z%ĮkEQ &)%4wTg6O8ЉI}&אOuɊpj$fj:v+Sy· gz> "}vcw #Ya̭? ,aK:G8b~dy GZ[YS( zz-K uu@]mb0Rӳ]AO hJj\ .Bs ap)3>Q_X`hV wSx9,sLoI-^c=AMǸ8[s]ﰟw'K:N*rUE) kogo F *ոM4(y5Y61OEdF~l즳^} |X%]IBB Zٳ;dl$~.?$Aow8A `_Ak1\co9}fC0;UX>eTZ~ B5E6X U瘵8/خb~^*ICrZ -r*L] W [wk&geC(pd'@@Ur=ξ'XM0Ѱ z9h`2Ft^]aѱkj{ȰL37ftYA-B'ԉ?O47dzXZeew74ud J'T/ *! FNL2 ,K)C/5@ G` D> T`tT%74,d\ [_JKMTLKʨ 1;N,J%3RV2dޘOal7֐,ߚp$_P-$)MYI3?XIn|6|=3>CĆ KcWxLmvW|Y0NЌTpݿV<{-ʴ0-k47$ދ#؀z%a5o R,VR樒zbJnb)@F\rm=Fg*pŁ~,1.rŇ`ACNI1 #} sz D W *`=j]Q}~}%q\w?.wXvQB3Da.5\A_?;C ]5gmx 2Hb@ Zm[D[[B(u+@zc] 3"+SE`EmePNuRmeN#3-׈ˬֽ͠xHdF&:~\7բֶSyu:1H0 ;Ls=ʅ`+^ȢG!XCNe=;GI\.Z!zbtnCgk-!\BU.&X{mwCN3D%ܩ/~96L#V{@,╓*tM&/i(7.^rk|Cw< 8 4;@a{6E4^'䀴IKE፴wYj𧷧{~*34Qx34ٻ˫S)Eu3 ~vhԥ䡴|܄e0a۵n4\/$ˎ^sTi!csf#)ܟ8y%p_EK&~̣D5JW#hMO XC@p.R$P1/˦Ek!sVג|%f9((آyy(~! AH02 6UO6Y_&;^ΪJʙA%80v:6;S)vMwlHk0{Weʄ]o*L$D {PCZj2s sf.*IFKrYb'x}%Ɣ_^}KV8lv oʑloYnC(OdSVU^Av9$pRQwb@(~@^ihO@Mx*MJ!ГsYXU#?9H6:?XZQ[m^vE;&"q(86Zo\Q2s#G :7|#~U@(o,Yai쥗g$e6+lroI C&CW_*p\60 .OTmɠL:6J2Ze|J"zoX,Ok^}CTtכ- kFף^C](fo&+Cux4hʴo{堦E}jI+Qˮr^ķMN?ǩz̞7NLݕY!dd俗-#!x-`FO%_8fQ_=旘dTe)/s bDl>[CPAHiC'fO_|*Wñ_ t3Aw:zԱ[MjAকsrn ;$jє)yZܰq(th>!4s 7"=jZѭĝdh욄ei&SPHu{r jb  >YxmyN1lMS-N4Ӑ\_ C\C :ݺ :[Zoz +GS=v.Qަq:oظ"QaF!JIzJÎk4':9J O0@:_p7NC9EAZݔR29jɐdy=7`YdlAGXXzT<#@uY93g<겄bU,ƃw Q]I-b>]İɀY R[=W D.w,&ŠWi:%#CR叕1f`MG*_e8̈>) 79AHmd5!DXcSŧIj\[ݽt\y5ݹbJ;ifő ^L0JsϒMF-2`{~=,kv7Nϣ44IǽGt^9]UD,EǂmSLR.0[rSw+HEl6;cOh~_<|9pWKG89́~2GNa2U*&]vQYt& j@k[/u&zR 1zf:Ymo<TuIo.r{N28Rf Bvv;6yy\hsoF Q9lj^@J O&I 1UT%7;}C/|ەi[額# 1W.vd@Y^ZdQk&khLmg)^ [+ DLq)HhIcEY7J.xd۰ @*㗖L.6(^O tZKؑQYr]u~ `{I>8Q3z$3 d6`%<%w~>{ ;YHbLwIÎK'&F; iM P~̓C4]ynʿq f-G?-w5%&R[1{P)(Ab/TE  30ԍC:(rB hCS:hVC#p7 w[t"C3gp .ˁVad~_+0vW`|K l+a fqKrNO[饞10ंt4ʆ7E\=4)ūLDiϊ&C6odFh$sUC4 ]v5DQ_l:3̉I {xkzL.]xoI)#gL+V|U/iB0)U^_;iŝ簻>IHdsNmxt__˲pG^+*2w9SO̪c<aaxb*'Iʨ!W]_TA>MOu pɂqㆅjM;)u][g?CާI)h؏r nHE4Zbty?zY42">̽{+>MR͟fC]nIk%˹-i(# "b !Nզ?H$zbSco̽O_$@ۻݭ-p\q.9{0ď~iy|2ܠ3M±f Гv> &/ Ҭ[)y.` t$.ϕ#q `[xqXaB97K=N0ϊi_M_Aqwk>]/RUݲ >x Л0ܞ<6 $&'kg&֨ zpTZ{K|קH8\# s E&b)qz`?4kmuo~heq 7vD.ua4jD<]a扉Pa ÙEUxVmteyN2tsp);X }V'VBڳtoP&}"(^~) ?AH2#ذ[+6K2!\z&a*i {Ŷ0(ƅ!FNrżB^A c7~}Z w6qb8g[涳S_BGL8LT1h1P>{SL_7dX2{̎J﹋odWj\30w25&Jzq$Jg;`UAQ@>$-q Sͺ:nB? =Ha,\vgP[˥JW:gV4NaH?sBkbkjck/6QhK :-5c%F2W,rLfML,{ӥUys T|0%V'QzULX.4U18V\3,)씉FGƗgV4KHT?8,x`H 4|;0Khbfjc}.a+Φ&p,~"^`8!R:&+U}"NicMVW'(˩Kt~8ԍK}kAHHfQu,G8-/v(D7J/~u3QJx$bSY<G|Tg ɂA4<—GwF;7E + &bitݐ5"ﲙ(0KvȦnͥosOsĐ]NL M$}CcȁlUw;6PZ:;̒0`s^\D)JSf}ܜ48[oӠL6H(%G{%S4w,0*4vjL.OvW`2V/3eT"*S% !T$@rz84.Y*uā,]PwNKϥfb:Qo^Z/u/n zJc('dDR C%+_ H]ǞMp=Lv*"HncnY]Cd?'o2R.!Ŷş!sW8</x*7a?ͨ @kԭ凯;e?,jLs«5@0jA5]1Ob8QRic=}$7ջ9[ϝ n)AFJ41ǻnjn#*=\M`؁0e6]*BbY 3)C?֌ xfC㵠aT5χƼo+Kifc*\?-#p kIt4 PyےX|ء+Go:5dvCݫ㠼׏*ٖ<> 8"FHO|I &'?C R."TŴS%7wL_?IJMV_7뵊DH?xBt<?\s@rkr,OFhYg[;۠Δ1ںo`=H} /n$ ?L}RwvV01-zzSB:Ji Uٌ˾맩]/_joa_yj|:ZHq,Hf{'2w+|-ds0Z/P =7+\Ӓ[1>8pЉD~}GF6n َ̅š=5g_F uψkA?ˠ')55~5}G 9`t9p'd66'H.wZ%MT[:j}1vf*T Pٔ7ڔٛ+5@*0$ūm(PEGI_ږCơDc_E6e0HtbRJ;?1Pvr:ў\4K{tQ]RuL07.Qh)sY(w෌'NWfS8eLRD)w_gCcr+Ϲ#ʒG] !lr8(k9仝C(Wc֮VWq+ᰞ mp"&$@7tC"~zҮkU?W d{@!h_b^]7)ɝ9*u6N< GMa0!UX*` 4஌;NPwxfʵYz;L}Q)? G/Qkw3RfiOi<З6}ϵۜpT~W{v(,ý0!e4 bUDԥG/㢦,S;{8-3nWw JD'Я_KS?\^w~0aj+[q; Jv"53As֝A:k~n3 " !$~^TP[b"T94'G5_/-} Ig] s\R' h{N|!t d9kHcHA*+vlp粑^N* ]lNNioOKe6l| OSڂq[p>[G p1_ )5` xF,c/"'CeP``dxc[QB&J("8ANA:A8;*[]nxt2G*3Sakۅ١=fnH_w2dP%Þ6yJ;*&k9l! !\ 6}Huš'a&ꩩ5$&ogNz>[(*u t$QP{P-)5˂8ѷbHΕ-6&.dCwmTyLiqD%x5-LSDϬ79%!c3<"^% =wQ9yj&R/eyYƫ pkp"?m #ռFYx~a;`%ѠWlb+F5\TwGR=vFJ;5c#/5(-cW3hHuGԝG\%ʄNY٬sꉦy IN@ Bs2ĒL+d"J5Kު4nCiw ;@J2@9|^4,ǥm] S n쬷fx]Akhps(v/#otl(m1,; O7w^t@-j?<&L*ThX~sd+kf}ڲb9p}ȍ1Ep_]-Yb~ql +]}a3TC4{' pH*X[ J{9°ۮ>lͳ7Kr<8[1PPhv: UgZ:TMPqHy{}Ku>E/^{c\퍡a 2Fp6ǒxk$9Q?atZ bĹr_؇c޼Kf$u^18No#LU3 Sa&EW Gu$hL)@a٪]z&nKfnQmEVz|։$aǪAhPdEkj%BJv' 4[@ir0Q":ߢ've^ Bm3\*5OogǔlPkSVHzW >Q-hup)Mj$ws e)Npx lj Lrz06_;%a-&&!Z$DFy"V|dȧWJ7pⱜWTUHw\Sr{8;$.TN ܩ|T}+uFz`>W7yr*cMrK;{MX(=yŇ@;T?MJynՇ+J6H;fLKlFH(6/)%D8&՗mwLG!K0ͣf]`Ȥdo-YMf{*╉[a[1~,- yI.UFO^ejIȥ>;СU8(\|M=S紳6 }99_$NOQI!>Ȏ ׆3~}v(Q؍(G@bHb.%%7B0ul:03GW[-ݐU4+E¾9Y(ŭ ˲^u> Ϧk){8>F{ZT*<>jK,:vllf!K2+i63y1]б\›>݁BP% Ù7:w:ΖCߣM1Ni MA %P9\RZ,CQ}9VC(:?XtD& WusuvVnz0ˎ!z\?zU~_nb2ؖ"֧6u6 £kQ?7cc*Eo!e&J!\ Өo/)Yt>I ׶2+'.nzmQpt1y4 O30H1  2GpIe tIQ̓P_CxCp_sP3 TRPLluy\[{o;qd% '+ z #쵷u l(ƌL: c:CnЅȖ`˨ 2 );U)ϒε(?$|Yn06dm6ʽT-kuW=W㴽n.ÛBJ#ókx0}Y)OxpHV&Ȋ*WV泩F(a;Z_vn߼VM o8x}-q% _F\+Xdk _R֡,f Sj}E:B~ %.e>Az*ϓ@Nũ v6D39'Ih_/[J= g8SgV ,6%\?-Z"yGx?]9Y3 ľ\؀&nҀ bǶK<<Z\P18sU4,سǾ7ݗ)rX}  XgG.k;k֯Gד՟q^e@v`dKW-Sݓk9#4HsL9!宍W N}UF;A*ؑHg ?mdr:UA|ck13:pn#FsƊt lmc|*k *v!$ u J,L__^R~fQm2RQ *5\|vQ%<=74cOOG! 9fTcs-Jb/vf,c5{΀Lfm Sjss#&g4B81vFv#)W|mQncށe-T-kPWd@$%>,88ꟑV`^/dWٸ޺C[XGBKnZwbY} "lu^|ߜ#둢0b"Zrہ>ǜG(vh>Ly4%qiWoO=P_H7XT "/hʽ𯟀ҟyj<% h};t*#Cx@ξ'ouòb:ǝC1l"&gC%h2)0doL($ @7[ ]Gc+4\Juu'UZj@a!, [5CKѨucg̥H`VhA2;3sT/0P&T'X4K:} rv5gC0^.(t'R}5.Vݎ< w˼-D|hۡi 1nN|ӕG sGw%np*5n?#l~bSl \ R@qs.B#60  9+BAs' >0$k&UnסZk7X̷/xfjm?Sm޴L:r ]-1"5|FUE,£c_:1W5x&,mXpŸt=ZV!cʏ,n%aRq+x/Ī7A#J4-޻E|Ӹ.nǿ `5yBlw5axgYpqЩ𐿰Rbӹ5V'Ԓ[ms6DJgK{5>)556~yr뫰>4+=Ahb>P?-H8"ЏFfJT8R{NV5!)J *Su5V2OkTȥ|5VDMvv#jNk~Cq8:'?>nV]g3r=$&]<"$~f#d`su:2~O9wC^֒ *΋&1I4q45Uޝ_67\H`e>R @z:PaUf!4~"yiƜj40w9!'#_ q~"EJIbCRӴ԰#.NϤPK8[p|~)>Չq=dgȐ`˕.w:LCK#?^Fqc7@n^Ej7*MG@~hCOD(_LAȸî]E'&b;:m7 RmWyjuse"מ@EW LZ1ۄwـ2#J5pn@od%0Ĉc ڠhE><''3mF54q~29Gi/O9*;`~ɗmzSk^WI4}o]5p8n>r7Go'J 02!mF?Ofhg&iYZUCشb +cFY!hDC;hs ɞL]O+dP .ұ[NB* vĂFW'|'~c/@T1Yg\YLmgD}P,bmL.Ȝ03We棤1; W6h=Myjxǖ[L׉rٻ_`b(o6Rt&Jd?Ky s?'XGL) JR-V01V4X}e*-.LOfaP:C-Bd͍o$ψ#Ir/B!x%Zx.ӓru$KRΩְ O_!d >IWox_c/x(w?594I1DB=N ?*)VQx a1oUW}QMWl^|FO0 r<aZwb-:7J>hi!\zl}709"?Jwk&z[ LPkJ6lUKc }uCl6ĆW 0L\\Vv 401Ub뜱>0BD-4+a?}U5".vV@pȯ@\ R/f,ޖۆ561;~)ʬ]3ۮG$ ~zdK,~0(6 ܐ ^T-FNM.{~2p'=\Xc~ñ7VK"ǃ,;DM˕Zb!Fz[6T}FosJy8`ND.d6A6`hVbmBt`i|h>dN`0è:sg o7qB!j`\a[+{z*|`/Mi hGNҀG\?5',Ѣ!e*+%IǪ/@LڄqF $h]*u}{oczDu0NV#\b~n-}Jfa4`emfAҝ–:bX^7ş]<-ȃ=_^ Mx;w>cqKC`/MYi7goJ>nUKnIMgjbW}G&fW劰ĶzSSWe;Zr٭TFd!l.TvPg+Yv{?HKn Au3,^iCT*,qઋ[B? [O͡{&,}RAn8SMC6VP8bbiPsTtPB3(S,-꼅]t w.e ū63 $9G捩qIqLq)n!T"+Jx~y38zP1(@7T2Qu:.Z|̡}# ?Uy?|E *+zv5&tSGx,XɥOKGHlWqXS(OȮ&mUB9!zj/jǃP$3Ҵ7@tv7KKZOoa[hB@05*~?eP Yꨴo~KqႌWj-*@ӷ̰ >Hj)G,Q*2x) wAW76JUno膖>wiq2Ja_csuW3.Ʊ}h 㠣jz>\\臧"[%pCq0Իt]uAƠ߶?MR2n1䴧q2]ϬM)p袵Aeczq8lxxj?WQ"ZBS9K+*3>)@>jbK~cC#^XۯmδMߧʞ"imo&8筒K?Fy`##'ۚp6j,0sd5u0J[9UQnC!m ChrИ,'_hQAGJ7^:AvEh!1`,'7=.:5 (=efzjG3Jvd}j(_1c*l4Or)RoǸj4M][IX]Fr'%̻k#|w32r]1"'Q>Ҍh^]E 4-|sHQ Yi=Hu{Cؕ{=iq5HlVRy~le4 h%v,/̻4hnm]dJgT?+ZVʄYj̶ GC=;˛d=չגBNc&PBjdDz]X4 :nIV֝Jl sStaH]kz\𳪤*I n׎ D ]63eM]S0)!S􈒗ЙY7z,y9Co+vʁ0Nu3moɽioFQfKA1rb"1SqbjD Ėj&aE#J<?KOw#B@*5VއM5_iiXҏC ڲWktj/9gXiF3.Fǟ^ M-2E _^JϚ#bŘN LF}ilCkIm];(]i(uVqS5[^yx g=\Vѩ_jr&=E W*׬fbUdqKKZ68807N({K̪2AU YrB{}k%$͎(1s3g02-D.V^,6IrDb ¨:|6 /}ަ.+H)BtMB1b\M 4꿪V ^\\Z 6v<7b)s3mEnz|Ak#;4Z7Y!ڗ8հWZOߞM_;{'FT}BEiF 6FTډD*"m.c/S_wR;{fC;ͳ";RRheXָ v'dw=u7jLɦJ s|ˆ6nn`~g_5A?To Bw*Hql5/C3}L_T<,3$uƈRvJ3-k+ʇmgW{cf /PODw*ؕ+0ncl필*\$b!a(jv+U.S (dYɘt-k}踐 r *(/MɘrNqPFˠe~vM:,%oRׯJ9k ։FǹJ: #gk'h5GȢ ā{r̿}>#G1 yb?KF+)!f9p`We2 lMz Eĵp"7]żJ?G̓pܜ!_v:Z(Gc)'!*f84RoVjw"$&k,g- KvQp^g?Q#9+n +ذ$Ah{+Fhk|%z``XZFZʑAK$ m=OuSU;hW:i>OKA~򅘰`~դ19]) G b'6V5~K!as=ǁMNLL'8TRY. 3hj2y2cպހiߗ> P$վU(FSh0Rs7A)U  HpiA=if1JVxMah%@m@l.#? Q]~Dz@}z5'(#-ѻ2 JPQ'zAA'@Α؊~ #XZ͉LRM24N!k.Mhc VO\=s;ĕ:F2zv#kU#u)YqJy2HHK*_F ΚVXcԸP/5/`$]dP, ,/flaݍ3hT葰l-Ĭ֭kQQ -c-v<N 얳U}Uc75d|iF޾d($1f^g! GZ(-Kbͷ|-6ЌK CTq (!xH17*ol `g-%z&jxtet9qՇ>=G6؇ug]Yw*qt;FIJ<Ӯ4Մ,mk!:9ޯ{ bK+1D{m Y1[q( TI2gj:1Ki:ʋV[CR"2bc brG.f)  J:.W ܢ~|הk = 9^G(NҼ Sb ]~k}/GsC)w k`hy`/:.Rχo#9AѮq)y)SIPNpړ o('ű6tˑ3E<]nvqMr~2BĚ4@@B6K~48q_we `˻r K-8*v2Q[h" -zroq9h>V(qBK˕97F=BŁENxƵ5Hk+itV}2۔7S^t]`ܿY{l sELVڽ 8'ςZp0IDVϨ2غ?qƔ9v .E+1)ZA7YWfGk%dؑ,Zxtb* G;t\ K%XXƃҚ^_*;M8*. (,UNYԖ`K k>G4`E㤕HB/fE M1IS; KTY{j*thq|$cx? BNSH_[_(tíZ%88/X͕]h^_!7O );i ;]M3;e25PCwL3`R?y϶zOM*^/!(TmlwXy&L-7jonCLNCѺaniE :IZ0vV:Q+9wwPfpgf|4FcLv7JgEZw ̆G?M5'We;h.Mu*YcAFxe.s;? j[#7 E&ZcJAmdP ؟njIq 1^5KU<֟"@^i53bMowqkL1j!ǑV~ H*0€52% BLƆ@O3Ҹ0&E,0F*ap—''ԥШ6 y)d(9ŮnthI/9o8|V暥I3|̙{d%֌y21qZ*cr-UT=+2q D+8371F]t6k@ׂ?Jޠ99;9z&7lu~얳A?@xώ\gCFn}]L m_4d~e[c(Q w*9ҋ['Bl=d1C"tbfx[::n4J|c's7sLj8P:>~ܤ½pѬs; ^V~< @l!_Q} vͣ*ɵAQ<^ gQLACK|lɋ:m2VZ4EZbSв z&1 \&Dοf ~'}),r5 mawGR1JpnAdfU@扆m_]R4]):w5h$)Cx]s J,ݷY/r~)I3>7t?=>:g2h>niJ&˳J<_rtM d`78v@r j$[C]~ؐ&RL~`8IK]LKKDiV>$zvwL YմCr/DՒNvVUeܧSP432:}jy}A5Njξ_(8Gї':ڬz׾ G6bS .L\BIi*ު4wpbd+H b n__bV߿+F/͹t$.-_ٔCoV77ZŚeH 5Aԗ*'.3BuJLZwoF/إ15W 96 Oe3c 0ЙW9Skiy)*+FE<8>ZzU^F|r9x|1D*l:Md N-(o7 Q͐pĿͿ՞jU@@Wɕԃz;:f\+%~=" Tu O{=W{u~8uɇ{4qȔs2e_a,bD е3O ~~V\~  ]Mu\-o_jE.'"C7ĖW8éx2_K"IˆQ9 -ŴpQN`UL~A,v6-ap@'a{.kF_ mVy蟓qO{DīYΦMn[2AV9TGI0C(|DʍK?U=RV!TL;0DA`=0E({g )4KP)6]_Bt |2GtI.sLWөFm[ JW.Ɩdx@kHվ?My:6S̍w>Ulӑi(L.*Jk`bV$:;T%=q/_;-OS[A V(j4h(w`u+ G4R~?iSbѳ ?tvu,}TqV{6h_!Ѹď˒1N]GPӊ-`n*5%p#/i 2sU!E6 נk?>4ӨD`yɯc蔨[(OX6 5GN%ˤ|}J9Ufݠ RAz۾:EΗSE;XBvP計5e2-;7( t}3daI6"և5EDXl1ۖ,d%wcLN}(sn ݎ}[<{֔wP$ ?cU4GnѠ#Ek6l|JǠއG0B|jyS1,7s+m\2njCZ30DN$ݭ~0'u63?g:Fk'KWuNQ̩}ML+M{j6B+W"jQ́QA#U9 M3qO챯J% _Yyʪg,Džswې)q 0aȸL:т ;@8*Nϗ)GˏWEab]jK%x}`Lu'h&艹ٜ4+0@9vB%5Ab, /gf|lP|.[i Q,ombWHKz.ݏ=.DEN`~ ڙ$<$SEenkb|%&"c|=xźӤ紈 (c~ a*2o!yYТ0^|_˗dQD Dp7BzW4x30c&LzIt_|eDCMa3_Θ̾h:)n_nVSa=Z#3baW+MjW?s^w @wV3uBi JyČUZ2ȟE+,8V1I֝ vhqvP  ǭڹCp$S˪=!E_4,pBYU'MØuUSt5VB텱,2&AJ84 *fBXsyhػ^.DV?mZ(,eihv}H߱+ܝ WS;*k;bjS2{[r6@̈́uPtڶfr).`+`ңsj<\T7?Sa$W]CA<ϯPC1HSxA3Ŋ1jPpC9NM12Q M%P};`$o<>My֕ɱ3\rVH2?P[ ̶WU&+)V[i^l_zNK_:ٞ0JNaZ$(,2`_1o8| $*7"4t%oiR>TDQx!uY|.gW0C=lIhpqN^{4gB~o{Z[CE(Tx,$VjQ$'z]Ghh$seM+eqni+ܷSp[-P2 FJ@vVvߐ3hy$#ɀxi!lsЏ挑L1kMq[ j]bI_)ցos &CSC*z Hgɬzm~,wHU$۵iDHָ3p:YZJ&WhziX| Y_GF\]³% 3VNYXK bo?Txt! 0J+$%ZupLb3L-}q &пV1TNK1TDeEde ^t $laNYJK'qs5Aߎ <iPyB"O82dA~&!1 ?y697\O<儊ʳJ[B>g52-Y&F\\-%W{6V[lG%w?mU~e_!qtѯ)kTsmԶka԰#@!k%{Z%9Uw>2F$pǚ|RCL&n7ѵ i:`5zܥͷFh%߰1?(RwQypuT9'-~]JhfE1zw? L^س`>iJp&(`2jK,r1zVX=S6NVGH@f:XĢj;~dtlYT)An u8IK>*g7"(C#Π dCw wFs`c;4KK7 G^PX}d?4kulGfn\8i,uG Ng]2Lf![ <\kGεڎDЬO7uh %Ba8a-f3heMp8j# x{RM%2bGoHF̣-4} ׻3Ԛo*}me qWIe+,Od`V-IX@Hך(;(Teumvei;_3Αc,Mǒ砽+ "gOr3CT{e=c:l_!rG4#t+JV$v2ğ5Lj™R[LΚRL էs[~)2qwoh,w'"ևV/_)"Z[Q .QAaN/EC%9]-@9c~91NC9BP #] H#uy]q6~DMu摮j61ns+Vc}Lv?[Bw͛S~:s't# ͳ?pC&WCM5$ jOtowe-Ϩ WT4}&ԤSER-I&ؑ >~Opr@2M J 씵F8.:XzSyKut{0!dlHd(s:Я{_-|8$ ڛ=fw"Wn>6'Ū:}BVGC ?V>FIJTM*4sIu= |8:wa ŭ]TU;I4@qi0)Bؤ(ֶWa"y+JEfLaQt;> bi9j>rE]v&J" cPڻW.O쯚7p/F_u>D vToz]^ 8I % b}]o;Ϭt3ꟙ›UMmT| uU &pΉ$y~\GV/7~NnJßV{3K`Mz6Eh#f]w[e1lx5$q$oU%R_}C2݌WZ%,W{lI,bVELwI+gZ]uӌMqS"@/%W^y\j@xAuh:Hn& ' ؘU4xvp)_M礦t}Պ_SamRVaRv uBkr(h6&炚e!}w4e~kø[$f*L4;T>_vi[uIz<3l/­)d$jg",YHzgv=ɭǎey]7V_g F+! <. 7TLc\1i y&#s"NIH7g@vXo ,%V^V/B(4^* %4,o"152$PHlM2eRӕ jS;{o*&O h;+ q8D@PW?ĔuN ȅzTN}o 3Luv ;,Kʢ;5d%ȽO(=pB6vcRLFYkdzm$Cm4?̃PTKb)ͨZmG6g1.R L ֥o$ԧqkpw&W`zv`|J:?3Ie+؎LN;i|ޜ'0BTұ%UfN@ Qj83[gwDeC _%1aG[ u ?s#]2m Fʘ~y3 υ-<# ^Pף|p*T:o5hDKk.w30ي(fHH<"5L{6hm@ڤ,PܒL>M U|He:ʐz7F*&!8Xm*:Lf*{2K-} ^oTKϢҜEC /rlmKVD2A]JEJn1buȱ%F gjN|DhfQ:Ƅ7Cn=LI`!v'տkyg\ V gdW×3!璣8~o8S~&z"Ģ%'C= ><-X%3=i钝!|`s$0֍(s\%;$ U^9e?ա؍p\xy{i4t24qʝ'k (lFeʊM2b󅿖GFI$> |N8'J2×u0WnBuv UZ7%;Fk$Bڊjڧ傮bKCs)Y1zۮA֐iuqz~]'h`8 T&]=4I=bY/Xw໎wWFqݡ&J';e\my2jYE47xAyn#'v\Zwh7Ehݻ2z'`O>$MWr&U\>cqy.@@Q+֦Z'_umtuC@[hfm/ZXzA Hf{It x<4acWQlU.p41Fe!"3?GAEr0ISǠR-Y8Mg7P}Q/Lpoz Q*MDt !+mck[+SO&9O/*&ލHl X=2+8 [^pb0H 3zGx@4ś#}ni[w<,E4*eh7e?DBBslo3gr#pU8PQsw':M8-*?}4lϋfh}̶?j s|?[L!g"L5.LJ_SPM 8eחhAF_'՗ ٦P0ep8H국qaGAvѮ2q\ )Qu qGV fAlÎ.?,֫|G~Ȍ6;JnaU^%*w0Y. ЈӴ_BH1bYh#;(;yOLdfKgDcLn+}+Z|\fx 㑟vFRU|A>MlTf̰x5h7PaSт ?nZ3m(y|lF OFh&;IF$ ۜ g2`vo[IuUKT0x$h ,ؒ x,c`[Ys*:g!{IyYsjk}/ʤ퐡E܎CK ,FT{+ނ¬m[!TYz;Awћ*Q?QA?a,$T3bti:cűB&fDٚ wn9lM[Ily1VugVG9V<;|h7W ‹ζSaXl%m.qֿdn&@ح^ ޙX=񀠕%VAfsC$ |`1ij{HtE Tn^G1h*r=ֽ\9LugxI4]^p/$Y(ayx95OXpqutF"zxmz_#1U&,]=3w-kV@`C1B/@RAߟlm&Nj+aU%vיL [@=Yo'("aC߽IH?~u8MDpMrb7Kg.QY_iF6l$ڈ: <#o ,ѯ.,c֫[{vG9{ۈTU]IFD#=j16(u5@lOY,7 QðopGSWZ})=BUĠ& ˹Co9ṨQprp*SV¨)ޑ'8 fnnOA4VPwZD_/v5O3"'Jwaep|7!fkݼW_>EGXX>cX4| pZ.#?9E!' */FAbK|v9,Ȩ'J5y+ȣws|?AW+-q#ja"p rCKb~m3(o:a,k$׻wj3\ Bnx90 {D[nz-b_y(;ܛ7| q{%{R/ fQKLFO}' "q rK`C*k7^WO-1(YpBݩ#JGX:ȑ(7ΡoIx )s)e6;p7nZā\q6KVI7XEJ%tؔg3mqMK!7i.'Mo}*D3apӽAX/8m]<״`+'?Xc~7SNV;? K!E>e&|@XNw1n@;_Vt\Ƅdz#[aSdq*Ϣӑw:Yw.+'sn]mG]>yF;lX}~:OI,K3; BG{";=`݇\'mT\ƒ5I9ʉuͻcec7Ek͌ڽZA|DB+G!"0w9iYЦT$fD%]: d`WZ5ɟ\: J: ة,9 H6JIPPyC@ oK0 T/Kw]PWZMf]M vGP#c.3zk)d İZ(1 JLU<\=oW?Ye߰xJ<}bP̾_0[D 4 8ü^yl6~BYb#arw4a=k8\4 @3/Sliߖ'LTtF=GL\1/խoσ .֤;F _K$CV[[f:Nv(ob^ 4E(zI|*=ê u`cztpL\,h'1v[l?P ޘ/R MFAGqR"-͊х_wM80Cކ8S"r94λ"t}n#(M"n)mG]( gpċB^MУ"LzL|GAkKSă5;I_q@k(b% @ "IdrP\,L'a:zK cۘ[>Hnz/k!ȩ`M5XPMz׃q]ߴ"ǒIcɌMyط~j!BTP6-\iJy<2BvzbI1 QI#|QĖp,h4Oy7Uwަ xxZL8ԚˁbċԬ__7p_o SHX]@Dvlq:6ie>vF:OaM/{ ~ ٓy`VjYߢޠ;x y] Y8\YU˙'ŁRFFHt )m y ThY8KI= !}NOX"8Oc^܀u{; #&$xBP]TIEsVqMɌK˝J &lAuiJ].o4at& Yx|r lUZۋKf՞x(>XF׾$޵1%hLe b9MRS]̥3 9X}ܧ E:k l̴(GXs<@.}eԄMS8+{Rn;߇X]OLCeZe4Rfbq3_#T]˯BT8ղβlƒ^N~eu7kڊQ@=,F˓]`'PC!? }0*PWCL!;3.0x|j-6?נy}WK)/1ݡɧjWl !ʾ-6IүAGfFg]-Qo88i@{TEjMTN#jկׂ$7KLxZu!EIQg9ei_Yu2Bʱd(oVDH{ΔⱗO.twu>I 9j}}I p٩P*^-FƑ=;m1:vDo ^lj>ޗu 0<7+(pn_2)A$} 01DFѴeS)'dfPiN nj>/rxsa{Q8f&p#[\|c*=7Qs['寰Wǥ}3f(yŭpU2N2vhݹ39_؇1;2#|y#xkpYʕ7h%Î8*+Nnv2^D֡AvnjvmL[rUܱpeG˞jUSNU.qE3Up2O'&P7!.AZXi!{xǶ}UM-ZZqaCf}TnVV CLd!#}ϴ5"{aЍIޒU;hzvWX@|)UԢbF쟦bDvuC1f]-rDX:ZTI*22@lIh$ey97$FpUDKd>#?3\e؈+m*%0-X |)q}qdH(B<6C2*k)qyĊvMo==LI!DaxE^moX0e“dTńRl]s`h?BBM'CWN3 ݱb~אP{7RUn):\cFh7PF`L1mO?))EYqoqŒ!Zy "P;dM~"`9u8 jxw -_!_`D2_pr8\LVas5b鱬v_N)6؄ˍ[CT&F;kaۘ;:־jFwo:t^V3}EBg@pANAH(&ŠOwEu+id|w>I.8e.ߎإjTEΊE􅭝dSUwHt/sP]5hrHCWg#H3)M."%f9:l!:}6Y؋A|L,tdJ@e^jOrdl<,ٕZv?_01cSshPVR`jٳw?9~YUǜ,D^OԎ2hi 8%Az IjF1{R3=)6ٯ$4wQ[C0"Z{NV][K"\qmG-o"F,@֑5);Ӳ"7R>nŲ!5ff4Ena(C@,Zs\"8脜mE܁y$0h}cJ^ҹv, '4":jkTj\ҡЖ?FCdu1`[nOo$uznr"6{?XX:c}S^P>JGCvrq uCo!l#7zbxկ+@T*,D%B3qFIW0٢@!*ZNL=2YO)wӛ6aM/HḺnS+iM,^v~6[]!7y;}>@rvT*)&~[FT} %FOE;FȞ/쒗flvs3J;@[dM5c^0|o! _͆aYWo#Ż&e{q+hSwiw콕4yUD+iiΗs3lr'yMg޺oVq(37UͷW`/|i& ݗ.La=ODIwxU(v︧D>aTo'dx[ͼQFBcJT^PLuq߄inj&03 }n]2ɞ,b a=FJӅU(a]o5 R!gWŒ2<@/-;fJGX;\ }> dcNB @=BE_@VFB0@i68ۄ2B>Qa@hDr_}( rI'JێOmZWBrg]V 0ߞj]RF +fWT:Ǹ޾ ZuLFqľђN=Nv7DW e4i5qn5Ux '$MϖUb1 \v,6[- $H=a ½nvjNb>Gz q=d$Hzոu>]'dFGa7헭lW@ԀYCBo}fnw Gܞ[pvg-!yCd:EY/,g8g?Cښ&n1`4Ljo'sgN.']/GP[%$r#Δ!ZSeF-:o!?`*X~# z((ռEN5ҩuV*WKyNOޙn[Í5 6 AawEcQ=N vj&[$JY{6x {͇| r47Z3Y!Q rsI([>iUAnN=Rݫz@S: +fdї}nu-ӆθ>ty+BH  :ܒ/hs5m#$TȄkoH-L}d=>Y=-+l^?fI]Ҷ"2l/ԄMǎIt$ft^X`ʩ(1: )UwVj˖0ez ZTozƆ JNp/v+k1̥6>to~>ZUǫß;մX_xRi1!^ eݣbkc28YK@瘍LNYR]OVo)2?%j0;-MO *L$9\^^rEXy 3X.7N'G\9m}!ذ n`Or*h3 3wn3&" or.Iߜ6#J@lɆ4uQcɾɏI U([0peN|_ϳE Ҭ6)X\ҎNmmtcpsއܨ1L̿3sn_=fIU#u,KyvfLj&a'֛LRXU;P K>\*:i}*jEל4lMS=9BhYZPrmtHN.V8Т22#H>J㖫z6nʛ'.4=d#ׅ1=FtM2ЪE fe%'s%8|] uC c^{,S!0[ӻa5umhfc!+gm$e$|.$lP֮,VR>ϓO+o=)|ߔ\~-5|r 0<9EѽGr>c9Lvm´byZt:M)TX ~#)Wg%st r6nbzr,{R9`j|; "f7F1 7?R<=q&z5Ϯ 4c6Y?N-Lj &&LN'W?6 ;‘gh _R5T83`Dd[Whg#"d9`-8ޓ=`50)+&#;]`-%Uf`xm*=" V+-Sv1,WRU*^ݞ) ,J7h2엱/.zV zͽP/&#Kj 1Wb5C+ E^BWI 8ZϨO_ nOr^*"t0r=;-^S=cmV$fj_]sj=z؀ͦd֯eIH ^M#"/pPN;“+jOYCTYgl% _p@H5'tWrZlq&uX Q׾ѹ6^vI)d rZ, uX웂/?Ƌ'jkZ)j;?NJ%:%] V4-O@ }YģNTrtʇQ3UJ22B]}Po=Z.51Q쬆a#]&ek}CITξ)xQ\ZN9x8J B H Kex]/!!qy/k*)OL-FK͐$)\|):"n{YU$ 征>"0)%A;Q槯p13mN؜%S6YO|lO;o0>5-_*7CL ˣ{cET走JHi.~~zf5GFҰ6$o+WܳHiqϤ>58WvPشӠ 䖅H0?δhk!A5Iùo2g6c=sWj@ӭ(JZ>:4"]G A}TQ̞O/"\2}9R>1e9Zd\bM_*;ë+6ښL+j\~hwxh̓ѦSR<8@E; af}`jHLX6Ze"v{%lʾNp#ے<΅ W3N ,%='M YeurLȓjQ!z2e&M eHgκ'Y?K.Rȅ xϒi)&Ag{vQMRUGqåWb[20 g~ PdfPZ7lu0^/rdsjYo+xW䰨&  "|fo>Jy!!gٝmd|k"NC0x`ߑ{륰xOlW!^%OuKqyUvטq1pNL- ȁM$YHT&7?^s7x ٫ ] ɂ l+hwݯ#< rFũһdv{ ff0`v'QLv<Śj-|z3lW|GM4);p).˅ 'ECIQYD{hPD yCec"p,w*XC5MqmhysvLM*K&O}ԭv;E:Bq$B=eٙ l08U ܻ"S3}"JRchь호J~( x_ݽ"[T([scl1`N^(cj+,hh϶+ ʢCzo[:7iP˶ gFBu{.ʽf~ss&LLρ6_!h Nhrw3$C]nbNҫ[igK͛DT7/Rz >TϢr0>Js1ZUJj$d.`dX,U4#?N)j#EjQ@, Ώ`['B>=/K.et9ӫv=J+~ xs7V!=>, H)Jf!p\%-fyle *|lt %L{6@BQ3*ϟA7G)^WtCR-41L,b:?HmWeb8`D !D%YgY4ponȾ(z>4fZ9]Q/í}+BΙҙf J1ޢ< '$.'7@ԵH*1g5o!̂iF͊vHM(%T#=ۚOYޠtBLՋMN>%$W`d',h# #%g9 V&y|?\D4%c}<2vzNvkig8AFԒΨ / aWǀ;זKVGuQ]w+)B5Hz^S+?֌M`LI 9Ec+%TXW|l(aƕ)  Gq\ØzNyFB){Y,Xi*468-r|h trba;F?aݚ[g)!TT7~rn۔T~d0*T)**P]`;z ͑^̽o'w FCӧYdjD.FQMBP3IJ&@ƹHe SOi].'<21Eٰgd:C9UF>|/3b?d^I/dKIƇnt"]~ղ5hNÍq @\z٘mĆ7/ଧPI` ./D`DGj #<!6(tڜ1ϰ;m}iV͉3:<vz6yclZޔG_!u2 >Djޝw0-FR)X%g?:حF~\BVUm%~lp2W:! ]N,ix@ #CPF4cClGCk%td.n15tSmf|f p |y&qoįd ̙H sO-#hH۹8AZ|,ID$hE8{=RItWZD@ <.X&ލ=nE部tq1.ԸGEpw&8K2=縉x WģsQ2x1Ӵ:7ImsBc|;Ƭe9TgHG#wG SP4`X l,Rvs8ּdZ+"aeUQL3V=dzpD^|ʕE0yȱ ]Mm?. xHJ> ^ڟr(g4%v<1mrޅ@tt#gQ'K"11Z2DJxAR߷SMS}ZL]=t&צK׋X˓RuO3CeW)&~,]S1x˅m:YsL5?hŃ$M[ à>}Ԧj\GEh"}R YL-dۗQL¿@OM6z!Nەwwh |\{ۙA :R"uvnsf A(Ի" `$RxyM@Iabj(.)wڔeeKCz? :!˷W-%6l;99U@DTТ!mPdJӠ{. VrC`Q7. rh y{lskp7\2@آYjG-93J~7oY#Q:ثi'=:b>]{hBzhb6$OJd0 OK8q*G9q(/Oʽ!A#q~@[̇Wn m(gQO˰pQW"U MYGuX͈釠%_ j9EӿEJab[q28li,fa4??N6xl ˢlH5+ߚ}R)2epF%ӓ˸';ow#}'?KzIQ)+ ]crzyD((=zi) 5>J1[?g2>^e|;ՐPz_"ngQ(UK,T²33X*rwE1jQOc Ӟ-iNC̉}kXQ`ꌝnvF.dzïwYa+яE-(y*(56JC/.h< 8t `-6=rJ~ݻy+˩{C>O|laBiy~ 7f8<yQcDWwt 7X0X`~j .!ܖ~5ì\!H' yBL"5$s1[+?|7ژgo^,1Ǘ 0b\ׇ[2KzؑaKgѭУ!3=H`!]Y)\F_ЁMOߔGo~-ɋqy9\_ؒm~(;I2xv TG]* jpd{^y 7f?ܒt;_+@6 INJ:Ik IZ3;A6hNZ))UZ6V7NgӐ1&HC?Pb7A;e?9knXx*P\0sz#2(T@7,g’v eš 2fvF8؜nP7: osr>XdhȾc>-N~"VۜhLGF'QcP;Iy |=ܕqbQubԙBL?{;bQB (N@k-9_FHfeΛ:_u1iCM_1u"Qˬ84{ٲ>u9_[|\G3!Iz"<ɿ5dYI]2taŒofؠDNx >Z/{}CZ=ߍP42^.U& G7AiRAZ;0GT-B-N^`E*$JԀ0%ղ{At\&mf$u4-y;"> #_Df/>x4E}Tɠ~z$U3X-9eE =TZ{,a%Z몡pIaU>^/ 9BBPq 밲uk^zE#]zh+nyqD"7<YW#-GKGJ(sYV}-BP}Пel{qM8D4P:x(?*6d5o+CF@DZ9mz>wrwd#w3qxzBmKW=:l6CH*ܖqO]}!-;;79u< 4.sIµ%|яG}u ѭ/VIعG^!S%UzPf :j +H/A)34ÉUB, 7.'$ÌiKaQ)' 񙀫o|'x;X'[x sN˰Cd)Fsn$$ȐZҔ}p\aM7\qLҀ+y|fC|r>@imxq ߫=EW]Ry~\4{͒Qa_#mɊ>Y *f>xZ-J]2 s^zc8dd\gC0䴘j0EDXW:[l1X*k $-"5*ss0JYTihEJو[lxX?Ǘ#Yxv-+CWUXDBG`2ml&bV8X! ,!ǭ_U>ȇ9OIڑS{ԁ2;y _L8nC%HqQm<#c;%D%BibyRߔ`qX^f:E=)ɵ5v1lNvJt;+HI V|#"9lHUך69tF57YwCiDl7?Ϧ@~- ?IX/c'G's#MP v9U.^e.F83_}j!A:izM_ i;95+z+ O׈cyz{J^oi67vib nx RM1Bz& tVo|!Ml\z::j6-3G0K@Rw\@G/ {?A4`ʔ?yW ڴ?\D'0^g\-bA,43[L[CRɷSMEz9z=sؔ4˒π٪ {HHwSqUԁXwVӌ,qxG+^g)#,|^_w6[ytxwmB 5 vl&Ms3x!BEؓb9NzPY0Ȃ _*+YW. XxciܮldžjW ~ {t>mpQyR18!7^$WqB쐽23fM3VԽ?Yj 7M\L|H|qat9D^^i,%ԵK*"&|;!4}SiGˬEfvY~oxW3k.S4L#J־q"2d Dk )֜:J>ϟ_42b\$^럛ڛiԿ0T=LWJ+]E"#:a7p{LzAV+tdSr"[؟Zf1 Ր0++F}z{|׎ $LrO,' Y-q-T*.!ܕmWR gn9P4DYzP68n5,NP@Uc5^/<|)mAFEhWo4lZ5+Bϳ_`L>(2%"6gIDEk%+;wN7K?(jƢ5M|o1E 1$/d}(K9Zt꓀TwF&f&3.%Ioce|?HK)v:}" '̃c@gQAu!fX;yw >OrV"R]iC悼Oe웵t'(!!z@^rOc4MY}X%^&h!Jm,$^B7Gw_@ql(,Hf0a[!,a6cP>V8kG xΆrs׿ZX"k3=,*v!Os0%(+!`xq(lY=hf {*4$f,Jfdׅ%9 IڶQ# ({$"Ȕ 3^a %g>~ȰLS6jޢ ٵGPfg2)EHu㭛OĂYMx-}0q#B}b&[@@VF4qN{f[m+2#Ą&5jֳQ"֜[!]_˭MtR2T"D*GCaƙk!ӁWRrؙǴ?C\.U@nd5%c8WhÍaD9g/'ТT Xs 3<`zvyBPLk@PXsԥsEKY0tѶGF-.Opb/'iy5S  01q S1ΝV:q,H 4';c=w9ƒTqb(IԷ T0筭o ˪3|QlL6̋\nQosĥ-*.ՃMTH /Łt ~C &z%Y6QUm٢ȅm)/f(~I=&iPϖLFQ:"3&P6`B_+{6G*!'Tw؎~ W˦4=xM M%><k \aӹPCk?+k#F0aFOy0Z%Z)rwr״ׇIt#\!1[eœZO:3G]zPg9#Y&!u{E"@VURpbvck/p'Ĭu{~U{] >do9}Yx6@}@74vhQN~@;N'stzQcy~B qer4¯G98~caaLEGչm6zAp@剤Rҕ2#9wE/ۿ©ۖ)׎GgMԊO7`uP;#J~KRp}샛x&I1\)DG IgdK DW;,Xl&fqb$W$_ϯ9!I`0"&?LJXW7OCudlz\1RȭZ33WheH5b?t9~ d7%Zh.T#mwXgUekL:'Yo %8Bi{&zx,m5%\ڵ1^5r wT)xh_/t:5v}::D[gs`[`YLnTiEFE9j9vV1;ke{%Z.}S唓ZwToq]o!f.1sn ◂B[B/~#|}xݓER.Rt-[ u݊i\]z︓Q' >uCV-U{<xl9OjUER& '()=0n"=?<̲XEQ.{G:勐_:=\ՆXtTb&eSc/@m}{3,Ty✇aY*e8$.ꣁD0Ն@&Mj(G~IixW,OѢn3#۫ayO=KNбt9>ܘrˀ?j3NLSQYGDHh4D:3u~nX`2j!sHAK99\;z}z݉-o4t&!$& vVtüo!&(Obz-^[K<1xk, iZ'YlRke,+Y9Xn](lXB?!adާ\#p7McnUgS @3;WOZ`}k{Y%q&th_K0_^w׷/ry0g !H6ӂ~CTʹ"uٸW< ̢O"b * F2{&dkп:(Tk%NĔ$0 Xح_b#sjr$]>x!7PP,Y?w4 { `؅03íb20T݃]V+ƿygd -'RFyE=EOw+M:I8wuZ)r&I8ls4˘^>CnHCl9[% m}GqAHF=ڪZpQKAtF [qB~Be^R-_ɃM'k}ؑ&їv~~np&Fr;ɇ. a`md-;ۦPȋi?0 C? v~]2^ VeJ>g^*P{,=.=+BkrҁjrK>ڕ9pCeI*s!avI"GO V`cᖺPVC1 u.fuu3~@X~[|ic~kB>:Dd r跽o ӓjkuCM ~'2E..q}bV6'@9~h8%&VFR߮1Ȉ]60R{| 1bڀA0w[K[ßQ{ ڡW.떼n T`>M()n۬AXhwA0&ni 37} M'ӀC}G Ip;w;.LǸ3¾{9y fEui.`-[[M1̼Pͣ CqّK/Aɖ%/ƒ 9uN{ؤ]o( ҳۈi92ǀIO\vvSF%}#*V#+dD`eC{Kz_kE!碘Վ\7[iA-сi1֝@ˇ7%Z{#i/7@HXY+וhЕE%~5 R0ř #~6kΩ3ap:*Ҹa+[p]9j"S4]Gϭ0<\|EdMa5@D784>T/ni,f< ֮ ä&lT eyH2GctٶeNnN\R;54 7]ڭ5n)aX Zay>.}'u6[X7.M5:>_uW_jhS&`ixT<$ B,"sۭud=~"Up=%e17Z)Fiॉ9پhU.bJq|p cR"H-i50hCyAh2 3`n<C '@w^*'װ:19duM렛QK./U!s/2^5egcUM<>]~6d5㘪.ijY%/Z>ğ̬1V0hQx #*ZmcLā~\]{a(m FqN񩄓TNM萰NOیϢۥ_uxtt>Ck XO}QOт*k8`I uqfxH).NZa\&ZGX9yJZNkYծ~b}UE`n 5Wuf8)ؽՀE%=Kgz.eA,njimzM.9WK s&2(#gC#(`tCrRѥzP?t YUƕt6 HaymBs\>ᨿ\+!$}Jjk4 r|#ν,q }~KQ?:D[ZrZi;,]?#jتөewDLN"hcO{v1пV_NI$UXXrXyTv_esbX|~bof>'~rO{݌AQu-G3!pm`QhX^9) Dbbtc#BU#W)G]BOHHwi53E~yVdPhѕQ%UÁ)7"'MAo89qBAZ<nx{E/x x*oUM <(C6)SӂG4nwуKr*[JVRY} 4T˫[.<]>'y0dZR1^`ĺ1yIFeloa9Ec/n?2͘iyT=I_2lJzn} $m^j f8+?ӄ D»dd@qQǮB)OǠѿj=O˽|S8ltaZ4NQI WVJZB:g!.&ܫjSʢCjSrmEpBv+Qe!w>dOjl蟅6R2r 4BcQol uJi=q,~nEM&6Kh%fU ICNiVVYbRTp{PыD9xWb!?_l>QGMXK\JL!S)9?#މ嵌ht6jyU֡ZoN8; ])+7Ot0_|g$[( %)KzhR8ʮg(.BC@mҦY*ξk|aj@"ؐ"v _0bߏT3"v Ҕbi\u[M}.I9+gvOv>{'d;S ,ݟL] tɹ97vAL/cT%I-_x]<5i<Ѹň*]Cf3],]` ~F2$wKF]!j&{8'q| P#llG> dZxk~H\y2MFxV_9'4ϱ [X3=z+ \fc#ZW `_;HkuVPvMZY|/%xUkl?eq!*:!ΌT:tLn S_A QzV0'^@-"XsmF 9.|@ASJZe͗@xΨ-?ӔSzz:$"Q[9@\]yp-t8>m&:%V' xML&T$xG j bC"8Kqy-Sa ƚhJ(ƻ6!x"bҞL-jG{%]P F ismljxk `@U幮h ww 5F_7WX fo,##;nNףof^ Sz;+}H`v(2hX#ɱ*)t}5 ȃRɝSmU,DbpGČf%L7rMwq_,| 0pՎ;?ghDI6}~~Hh;e>+,{Kƥ2/nDT~-WM){lZg\ͣwVXqx3Lt>^شF+JV ?t׬c3?ch\8供wR}>5X7?FEK@xNZA'Y-M/PRh*Spu"h6l?)l Ϳ%1\Ѐ BVn3ؼ~i"5jƪg͝0<)?^Eu.Ĵ{XpI>p)bV"mkVw6.-#?"eYXD\[F /9#A(K+Y>Fm!;5 M +/n0AQl{ZH,cɋ7vuQ@^R&@Oa, ̶o[{( ׹18%!;J(%Rxa{RPwXn>LhzR)ʟj 34ZQJlTwfHr[S2 #MIMISّ |YʄukY3KD%']5fHSfQve?dȱӬB,P8e~ZDW@.]0Q8]R]7TrW #@ڏ4D>ma,~Sa7 oA^RX¿Q 1sg*R16j%0o3X[c {7/Q]}e9e'wZxEЊ#(gRw)Kŵk1;$DXIX/e錹xԨqDkp\ˮI j]zVcfچMu6T?ܚ}fe&xa5=fyk{]DȪYU3_#"=gzrj’88~2KWcDŽ!LH>+02CY̌j<ˇQfKwtb}r3RZ.׈+N~霱 }b@y,p,.^'9zPfwU4C.fw*A :<ع]F=9 LjÇX41%vY>=ܒ=n.ursLJ6KԬUs`@WAMhnM+:O;q^a^P0oN?N,t{zOج1#n=P z捊]ޘ]판\{۰Qt MWQ c4G 6ImvN~QׂZ5$ 边S bj[RAaKダRM}J!+3(ZΔXr;ˌl8Uڰ*'{U0krυUX=YAJ|i6Hqx=ՂVT$JVD56+ o:tx8!+" ~jSmR'=E`c8 qېtOW ۂ#pB8Li)FK,Ӌ$XFdFq!RxAy?g;CwتCVt_C~CnX"B?fС'2昌=AȣQ>a ux=P^mT,w#~\a;Qd߸}_OA 7~Y%w\7Х>j;I-xͬ\=f4i8P=Lܮ${}sID,')q(p'JF,M7w$M 'i D nMOWټ  ]: T (.`Vw%0q%R]& EBY(i+%3?)-s(hKȞ45۰8[Ԇ1)*+Wjl*9[;֦i|ɈUgZ/Aj#:ZUߕ"11Vj\ſ9*՞N%o ֙96%5!9`B$vd)?F[Bp~: @fL Կ5a& pz3C"/c:ohLGoS9?ep/;I >@Dykx{`%Sk/g}ăS獓  da^pF+؁mO0j`)rZ"\Cx.G!Q$BFbII1-bqTaumh-EVe$V}z:+ٰ4q37#֘#=5)dcvn RϱVӡ$%94}fYE~ poN3+~8 )ٮ Lb۬Żi4F֣3Ϻm=Q3uÔQ %aYhޝ3rYaEbd< ﶼK2$wWSLYʯ+ ӆWlԚg+mAY/ %Ǎ =I @Oޕ=5p u.H)ίxzqXvt!ً\^ֽ*9X(65bDvR~=qf/"qNk}P\KK&gK}ҳoۭku'"ﲂ"4^d`٫*'Y{6ˍDb;#ڝǎPN2 x\xuKC%0Tce_UL^1|$IBu\1uիgt]ZFbĶ )Frr~L>洴K*MfIYַ? 2)9ڙd WqHfT 2(w [D2Wt*Sԉ%hђbߴHQJ0؃1ʒ?ۊt\6s} %j7E>kQaאO\ߢj,zT1%XE"=pD,X"p_ b[)@Evg 4?1Hh$qc^ كgaUz3x%'O!TIk83:\jq<˰-ͫ>U<۳'Eiun,] 8W:XLMKyPpQG[{>ea\C2&y38ve^},J vNf&0snL vRFgՎ-"C_vvdQR ~=NEP낢Z=UHLogY@]uhjb"{rоGL7 ] .5s&J5Z mÇv>Jġ|fLYVӛ43IwJW;WL`ZTTQ"RxfhZ^/B=rd\r7V`P Z jCg<WwW&_ʨ_Xq-Qzmaiy6[܋ǻc }q"}YU'NQ8/0j*1 -λno?'z:gf|.Wd-kW̤~pK2RE|4e[ SE#½jľ%0Ugn!i-zゐsbٺy FweC0؇.D=hբM=&gR_sŎϓ2fԬ]僮9}F  im'Ni"*OpN @]f%Bf2ý7M?MQ@> + ð~w@F~f<0z۸d쥮]VDvƈQC['- V rz%LK:Q0/`{,;)=$/ݎg?٨Sቿ ^QbIi8YGF),mM/l6U&'jݕ[^h!lZ5jjc\a{Ð%Ti¦%u45tBYf13PuO=X4MjgHZ`>s(=zTE-* ZezjE:#>5篥VRjNOZ(`JlBMMs7A=nh_jhpKpw.cYFL4; z w6@.DJcDM=.t&ЩOubLX,i0A&^EN3 9ċ֤g]ʆ٬br뱽MvLȷ5:ε\a!B* -#ߩե^;>k2O(940  Ǟ;P{ (s{xHq`M?Y Ogo_ӃIl r^Df2奆۴4`"Wı|7#P? ز_7\q#FP41wq4{|>lrb. V_oniw l /dnGd9{-ُ);U}+?2UYc@#{d۰~}cMu".SEOx8:rhA~U\Z6Է|y t. a^׀ o@v#+S~멑ڼcyn}NEY8z@UB-8F2yT9ri|@yw!k^AYmgT"sN xQ nBa˱sΎjKPޱ7㛎oGo(qs ԔZ/ <GEJ3dN-- yBfl"Nؼ,ܼQ'DR밺z$2i':' 7+O^xv#!H(OsdXzէ&_3je+? (n}j X:K>o v=\9{zKmki0A+ ^}vfs:$Ry{U1,<="%FZ4E ٪78Q>:8xS{[/CҪړ=smo|^lbGzE? %!jj=[t8ՅϾiJ|MW)E(Q]L_{:whFJ ~i/Άm X(yd.Fr5{$~=HC^r^h!'YLL$iȲ'&%tAm6)϶Ʃ64Saj D)3WSY˽x%,V4Mz(e'CN)aa9]K<=۟}4xU  I(xS(#,4dj/Un+q2 [^ E!qs+H QMt{d[5C,;f">םFքBNʥ@u1b@}{->_vpGpf 沆߈75t!xhI!_1rΦOSvĶ0:LIGՖ٭iH!Ӕ~E.搃ٰ,ش 'tP얱+\VG)X~DyV;ۄ$; 2jV31`n'-[QJ!~;L![ :Q'V,FYXZ%f&8Km,,Ri0nTUٵey&~=f&N\99l;KKUMOM}˛ud99r̴ā>tULx1eҞ%k֤ {ւXN/#ѱ`l}kEq<;L6z~eeQ;p3 e$I_"?:|2@E‘*v7\~kJ^֫bB9y[Y]P15^p$N}oq2'I՟qrԄ"V$_`ķ8[Uni^t3Y'3JNUܯ)9zœ;Ӻk~IM{9T!%m 4ň0{#(CW,KQXw5 PCq[WzXr#l RLtM.T (:KM7C9jD?6ýo`/xDpA3I({1r_\"S9pМ&CzQNpU&n@&c03-6%%qD~_%g Uۍ{M2(X>L+|Hs9c[t5i&GSszIP)YV~8mTJ:H9'=<95,);;L[tyҎp6?E0H2 UMhwtv >6oHxK92כ,bE s!U\hȁkoi 6`7G/%a2cqE)L-^-XrRlrqYy3 t+82U PrL+ W+ڇǠQh3A[65`i AM &+LyE`z )V^ |~=`Z'̕ݙ'=e $H0 VlTF}li1в[H;_v $; 㑍X%5TT_4QߦOUy4H#!x5RkC;P+1LѭJޔLӁCH_YXZ_!mU"~g <ۙc3nMH07>Q߷=uv[b{u8tyaqM2^ i vսnfssnzn"d'ɝ駃bn(ȥAuN7g#rZ'֞0 ^ TbLalmL7j̶=_8hPO8=O݄尀C|qUE^dU_tYVzIoC>!&MS÷hd/%ָ`h 88-}}:=|T7|ں\*F<씟46Y8; H[ߌ&],z\N0G0 ͨiUl(abgt ]9S#R]aQ:kǸx φ' ;[MI&G?.]w:fxPBCBe0e?b-Q^t>vqBL('5 0YlAE?r@Ty6ip>Cϵjqкia:=yFeK͛B4Wp%F1X*vvb $ߵD ݙ£G!.UxbwkkE׹qTm2`M ߪzJWQ Ϭs_U>࿔[%8z&N 0N++WsXe^V%U bFIw=d&?ďk|qŜ6;f QqL+4'KO[ך*̘L@ߨH]֥ה_%hQq5LsV̠F ^@ybput7fyω\ց+G T) ?<WvCq[fÆ#%Ukj+ G3UP80:5c(j` ^R`69)K4l<|\X 8kZJ8Ԥz JPԐ>A hKȤ\[XJE>!˂#/J7fe)Actg74=fzo^:^ N!רf3D>ZVJ_ TvMګVᝅ{lH%T A2-L%͡E9Cz\ WVȫ6#87;C$W*"\`HǶuX:ɻ[ .ʼCn(oT6 |%eO y|+iv&bA*uE3kha*M.NTTxZ~b5?!K֜ǬJZf,P5<곶a7/1 DW[ɰt: qrР*t]CVVkhNLO֡d[DP S?%W=?W~$Oל_ _bVϰˠ N/)ضƮjٯ%:)`kW_Q`=#54f:K[W'#9 IC" Ujqn.5"p qfmCOF'| z|o8ً Z .!˄G Pdkֹ_Ǻ9xz{d (q$ I3jEE2~QA;Ljǔ|,-I+h;]6uxG= GpQV t!|yhN9mvkt3QaH3+ pկL#~9g.шerÔoE&V*К.q7]i`jNFZ܆k `hxG<EpiGd܁jUHsLSJl LYu3 #ۨllq٧ !>dʝa|2ΟCԜFZ~x"!m?D3r/#ܵMZ5Fᴨ<]nڨ"r4@Lc'#I _()f%JO}%`Mujm&y7!0dZc!ׯWб1Q'5BSh658qMR%q@>SkEm$CrL*m*LoE Sq`Fa'T'uH;؋;5D1z`-1~ËBg+N%ʮM+Tu$Ε'Nq=-s&\K7[X#F5H&F4coB^A&I^È%ME|OΐYbrӄP,f[djۏ`&uK Io;-CS_ՔI2RpKH6yU_cĠn'imҙ)-g`7gx~fҜ®PiE-p1Dh'~CL4S!!lw~wiʋEYp/s1CTlUSRk߷r; NrRoklLx?$C4F͌[-6˅p*8YLȸ zrxdzS<]QF^-SKrĒ'7~.YLdzT&/Z]%_ m!hxBA NjM`ȀGql\YOVdکGxβޓ=M2Ή(N= ~FK3ʼkb2uX*QΦxvctۍ^9C^GuND$$x|gB" M hDuv-q/bRމrDri觏 +^TWpRJ=479Z^ @*zEv٨ QfEe%'AYJ:ObɎ*b#0VmP^ 5^)`R7~gwvx$U70LsLf^l|{&~p\EokO _b WmHHqUOx_#e Q;b̧$û|e vRqjn+9,|67\c^\1iMuʣaQ{'S6ۖZkI~s𹸺^Lj?7(1 X.|2.)ѭ2̹xqS|84qu,˺5ArУT= ,ORUD]{hɥ=/=B^)چXYt ]E| eL&uaC_ /󈱤Hɍ:B7_As}:At0WM ^?+5w=GW|+xu3gtR/#%VVӣ%J3ftG47P We@;N*ٞRT@l^!aS w9c!؞p5Sw=E9#tuϱi/ئ!~"|Tc㳮If7^P ӑ񍻹@:AA(s6 <!-{ d '6)0yk80^W?E Dt7˺kTŠOt#G1ǹ0 >0 _@^mq S=8mR||. Lse)E> rw@ERr>SҨ3 [65@ݍ#U#)ϚjԄBO`p! Dek%&$wTZb'@&[hb?OWLFH gؓ8:(~9DNG%ɬ <U'CgJLe7TvuDzdu{SlB0nuQ:66dZL okB[6{Z&AyFu0O7{JH5@ Ⱦ88۝wtx"Fqf%.իPsS?z_9j֗ }D<$|Er⻕܀ M(Geif!{ra<4c)"奫hW{u ̕jׇn6lԄyŗv-Mײ0j\rU>_ ݣ5*/<"Q_=H&V-O0N} ow:vI~k(L| WR:# iI :`)HPgtF'u(:q6kْ˞}k'M%(6gg\/|M*9F9JVD꾛w?KoRX%:҇hϢ#NlFAԿ^:%+"ʇaxnueVؐ*Bv2)ëo"F7=& hWY),Ϟfpѳa᫛U٤uXSX71{'1''w=xv5u$(ۏ$x # ,:VF58 W%R@=`+Nd%cJQrʺJ?i{Tce]$vU7*1JXh ӚD2 غ KMym?&pxD(R/Yn`@E>XW\caFh^D#HoϱGK;@%(ƖP S mGuaãG]%.)7Evxyaj_,(3p6O pwK]^A(76>= p'r:`ϺRE 8Tc,>oE4tBN^3Pe ^h)ѮMKrDx٤ _7lAapj!/Bxɲ֎ϏMb8,Z~t3.QNqIJOCOvֳtNH&LjOs{W3RF1GbʉƮ c]:ؤV{ B"s,j;KlBnZ^D S&8YDj\Hhۄ/;`YdJz-Mp8Z"azUV5 0Qt hz)v56eڝpbjl(_׺ ~%)b$EeM^ۂʲFl)f4FONtrOZ?ztK8֩cj|Qinxx(vu{Ѹ!mLsvWxFdtd8MBǹAZ~% { 7~/^w5V,2VXlSo#f&bQ07 4okjK.xc4 x9S2@v93W^Rey]2D(Ig1`KD`rl2&{:j]k#H Dm%ہt&ý* Q_AJL^I(D`Tڇ!KvovѪK$Vmf!fPj.cckTVC#߀IDj~!WN-KDžVN6ݑ?&Df >v9.O/[orB mxkqI?߫9BiNH vQjM\TB1_+2-t߃@"5͐e]yy1()AirN/%SS?c^zmm|8%F{j=Q%^pi HD=GgK6N9L!E&"}wT"!<̰nDƟ;[ظTzcv*=PߐZFEɇ'Ǹ)jM0]1$qȞò0PʀOTvVjYj'-&RΑU5KKqC=zt .CmU`˟3*sO g|Kl/?#pK71i52Kcbk%2cwUycd#{/V: |z$0Gkt|5_3JT[S(Q[n܍ @sK%,M{=1VbD1I;EnѬd7$6iQy'O=z|-@9'#.RQ>R-P<▕S2a}+-?Ss7-/qo,- "ndHڑhPܑ}R a>ʵGԹQ-r\<i%ꯚp<7B'F5? a>%,9*s$ @Yjne %J j%U·HdОK{A&,O0wvgO0#lJBdp{1꺂PL9xECGS 9puj+[BE{̟%qiQ*J,w>Si(-0GD+6F^hr/bES7/et`ച΄^k t,;<4Sr]ú |rWF'uv:Uj LvJ$ pxNzqPȟ{s(v(&" ,=ƂY)~jI,zt?xc6Xt*UȳՏ֮h2΀5Âޤ_I8.i8=6&rlU:y:KgsCG[[L̪_/V:.\.OϷnZLfZc\.-TKes,GYc -KC:5^mcybgB Hϓ?V,}~61 JpB$QJd>ުB,ĵ/,BU"Y-{JJ( [2ˉB.&#*B9OA;ZSb(y%dy~#\sBG㼋#RK.Yq%I 8IUž5 1tCAlsvEU{"K&E)&_A69m`#(c*SLjD$no!#/*Mw%W^8;&9jAC*@; 3һ$pw͒"ݙ詬X o%9LiPfV})$Qw.'7utyU{0̿`4l.Z*rd]hVqA(rH76DA:8p/W/J' }2%t:@ᅖ('8 یTdC 0JNm{r=Z )UWx? QS:'/Q/7%L $a[zwB!ui~Nh- #E5>X)b$+^p`K3]v' W _ss 8f7\- 2 DD̗҄Ckf2R/)N3{wsT. % dzY]4R+f)XEW?Zc[cKMcWN(n|9FwyfAҏ|'Be2WNlaYuv4w"yAlo$et#LAg*Yy}dVX@^epĸYV :č+M1֭P{v;aYߒZ^ H43Vƭ}քmz)A_zKyD{Akݨ7ILH/_n w:d8`h'6jҘF6XE$Ӏ,ʈ_ݸDUer[5R-(WziffG:23q Fy}]\Hfh*I6>Ғ>N ;LQWjh3mZ;;S%&X(gGx }s+-' <:G:U@& i]![cZ[y滋wh\ YZʑMmp!܇[9W+ q͢L+T˺K)|GSvoetHTؽ۔).6yyZu펃l\6|}>369cJrZVSд%)Ӟ`V8d#3mi;5xOkFtMgoꦚbO*'j%$Pqmi`W~_xI1jk4,UR.8+;>ü8-oɓH o!f2Vm66lbjvm}//툩3K~eö #Y?N>e5]Q^5|x^CXKhطa4Xp`'H-#*j'E.|Pb]*G:])BB[}h!nbGvdOIrNUѦ65ܷT|N7ܫvMtgkc̤rk,-~OV7AVtDt-\oM3`+Z "6&,Bצ"dC=0>ZfUܼ-ďg"SBa_b ;dL n<.\ \GÕzc8R̔s$:Z-g v6ײ4Q`& Ơ'bn#ԩ,`ۙS e\8B1Gli=(Z! G7Q,|%#@607W >ٺ1)=؄FEBc=n"@c$NQt_4>fMp쥋% p@̤P? g)%_Ku;k&Lv<,Z, Z8c.`_u 9/\=W7@>)YzfmF9N ?1Ȣs NJC(e8+߼oXez#^#7@A>EGt<{/intIU]9~ hsu^s}S wQ8C$!0߄J0 &%ӀOͺ2 LɊ;x/3K+imvo}K0eyjOiyuLEj5‡~XLw ܲuɈ}DRT(ΛVwhCNN8biθ5GF*q2*3ܷedr}pT}ƚsRǻL :rk! %ўb Df:b5vnM V)uCH",2:5eqbߤ+^bSg(!vf'M*LrP J¾)[ikVB.*5Kn |Hg6S*t6PQz*Л?5.Tojn[ff~b7X ܫ ۑTsKN)Ɉ\a%bqtS&.ۿ"%W!DըC @!X=so`.^[q4krGgC $ ;- "AO*uK/.k6Ax[Sc8btEĶ XC^z͉Ɂ̇qJ(GoM_vڗ?91Kʦ>Q L,92zicS,YٙVJB52b(퉰~6*JJ:GHP&Gؔ_O=5aY~y;hUm:/Xg=e_Qi?fQw7?iJy~AExd Ux`JLSC~%_6.<]N)o '*h2b{JVW /D޲ړz1z~4aY)UE`tj*)_W4,7$6pfal)eR(ȣNP[V @rn%T=jsS?}y,#0VO+;459OտF/|6QChs tZh?9ݢ-o䭳[j&^h$"CM"cQbNY__a) JY4#I$<{ゕ? 22m6jY&u?sF.Hi2M.馂#a0f:cp0)g2nOkn=0)MƦ[=ҏ)FqEw7ϡEA 5z9nfN$"3MrE[7BHkf /O5H_Cj0AIFF(# L1C;}dֆ &N!m &4~`)Rh国~ۯ/=HDhE.؍jM+|0a!U{'D`\6*L٥g c-+nAr?M RdeTZ#Z'37!9 (uj]IoDy\m(wi7H悘n bs.h??Kɫ^ް~gWg‡gM? 17Lj<1?jNPdJLanA bZUqvzٸ7d>J_<@x]0*c{5:wΜH@ig!$pjs@㷞 @5u_ƅ0,ӜvĖL7@9lZJ\gIL: ̈́#LkBr _ΑyEw7 8Kf<%w4q f ;ywt;Ky3Mv193%Jm0ݢsHmhqmA8'([-|SmrmU% $`dB Z_ِEw5Ң ~Js/ǠFH{lz-F6#1`5-[M; ( ֠f d^tt;6Ձ>4YQF=B&/T >p.Wiiw_沂fis!US?)PʦU>7RI Aw9׺4K^rj'.678 <˾]t3k3]CE&s[e5Et; IJpUEDOZ۔y^\3rQp1Rvzg Fy= mPy^{9.޷o}Ͽ? #Mfd'd(6BYS(/ m&} qQ/G5 $AE1ˎ?Z VF{JD2,ɅEʐ{w#߸ :DEYRΦl+ `^$d$V"NGD1^.yCv%yzFd{b~hVp0:U/RYݜ0xCb򠣒u& &G5%Ǖsnziys$cW5L^_t .(v>b2(0g%`k=u(1C}=v!t\ %2TZu&}:?(ק6Nf"Vw V]@WEc7P/JtA .K  Sjg!4nWG<ݰhBv૴23M0.M:W/c0fUTnLD]s3ߌќ>LIJ6U^nC]doq̧GQ(\@[h٦m/hV@V7:oVo=?[hRtoP_S/'DZ( m)bbdg8d! ðd^&`ҫ&V2o7ӳ-ȮX׺QxsM[fCvkkjDWǚC")[So G 'z!ڹ6Y~̘Q‡+Cٷ5Z-YE2`RQ#<6$j]eY+Ӯ9p 5VUDb}qn v{LrxKrȁ#^I|ǭtC@뀂1rŜ~!v0Gָ~RBFdxNOtXضQ^Q"0y IBkBK\eC|R۬o[ޙ.+%Xܬf?K=2fP-tR_6k"lfjwy$LÐoăa60"nqc̊ؗ)7͇vk nF%Nʺ0S cҘq_B;vw ZßK\eű5;TX H4+zTdP!!#Nfغq:$b"ټ}ʢhBzT^db}V|9{qwHN(oBruHJ 1[bKx˩",2I L<1%vH6R0 XxRj*+n"kwZdCm$d.o]rizD9Eo7ݯ|Ai[nUN(B9Ks͈ +c֍cVJȤJ(;SRi/8n{DlIٱj\ [1PԔayAo_$ WV! ʀ <{PO'-5WPZ|e;#͡>Z.uyJur\.FNtYAӺHcX*W_k[a*Y| Ej}Р^P21fġj!70K8|I'_b*t]vVF^+@'vԮ,Chs#N~Okhf#\%VfRAGO0n8sK:%az?l3!"b%˶Q@ޞbe3ԝyOtΨzEҮqPkU%ĿZéG\f.#[ԭ[bB}[/CMQYvL'A7R,6rD=~7E¬Pgk5Yۓ3gP_uTI!Î+qCzg-I\`]5,~5͸\hf3$S(~`x{]+f9yW Ī ˀFЌ\a O6" V4+wcp׫Q,{Uj15xߠ 7lmm*M/MȫxORU o%#'_/l13&rC%DZyX&<ŭC+݈'M,oX&%lYU*7վ bN洡 (=jU̔exc`4t;#RsєK:G0̆L`A@h.>uы(n:ջfC."9E+H:r#Ň}Vտd[^v<=nsCykuCqM0K lAsVlx@-|K.Xvx;j |Aء3,}s2qrLu̸#2nt54o HFQ㋧am)㚂0= e&ge%Ukε(34f\ca2Uޣ0jM6H1RV"ޅq*Wv5{\b4Z ¼5,Ӓ n" m&).ZQ6\0op#K["0 1T|P6ZI7d^5nN~\\_w@X^Z)_Ɖ)N‰=,m ^y"嗷oMGkbxr=<%.jQ7uHV4@youpCqUX1#7^YkmXQOgm?9'kӓ0U R͂`m\ "^cOEu$'18gN]jHTs_;8#ɚ-4cxiulYU0p/[fqya)n"a dŽP9 >ej#mb˽ƤTe"Bqa4/ 7}GPQ&s* 7a8a9}SJᄡ-*3 gGV5A$ €h9spd^F#Vf;*ywUMPx-5=}IOn5ozԿ<+P! d,9`%ۿw[kn5lp)nyJlLAH/^m=j F+Z+b(,ɅNѝiT$ʚH4q!;זXj'mYl53]U]*X8 7%WlJf)U]h~#aEDOWc…v D(3!.M)48k ә8J̀Y0Bgsxs.\Ć-]0> Q*G!OG[e\.tQz" >'L[LKuh!`cq-,5JGsD6Ѵ-B)J@'S( j'gkޓ7ۮ%UQa2uԣh:P(6wR""?+2i $-  ey65*|=B1AeG R&yR+ xt<4`zA{|d!xr HJW]̎A@Sgnsse]'d,ߜ'F7mٮy_t <{)T2G. KM$zj ěWR@UTΤ#׽W[5UsP[x4[ic6$<+!3\D!'_U B[/ԝQ-*鸡PPږo{[ {1'v ϖF0oECvlj}TyLQ7-ygTG#_Q|z@. lR%'RlZݱhDKѴ a;͛%ߧv)Y#З8)~~kF)`/vQ!Su:dMewd^ Ϊmnܑʞ|'FB#NQ#ԍaCP b0qTh#)覊 |_063 ;cSA] oxt@6 61s4bhK*{oPoxMTa*{;=CќZhZ7x[L ըzoa-:s;vBfW)(-.AT$]j}7K2nmUQ9Ϗ 90D]ƫPZ[ːQ..[%>z&Imq3_#U;(З3A/O$Z%#q)| >Ai-&3AuL N)EFm'j.kX"UCLG}W6LY{$ ikL yc<UMoo} ֚'! ˤy]rF[Qx$(wuJANaȂfm8)yS'as.32?fpwkz"[yX*0Db%S Ur M9F-+j?W 8Ju"q |/ήwqȨkmFb*KYG.Q6:#?-WO ωB5TW8\& ʹ<=Ntp?E~jo\+0` F2c$wL^!8y.߱GAQc2fEhjOi*.zPrvصކ.Y#G<~DVJ,;oG(Ա.qa4_Z8UY9xpɚzL6)FhΕ6jq!f{Q_V](${|QŖbnGF?#_ȜSCqp -c\U/˞Ekԥ-\vfmxDa5[]9[UY XEXn pnvL' ,Jrrq CWѰh˅6U,O=vܪؒX  sotz1|[*^S1hr֌_5Cӣ̱ 5aQeF~m`>PǺʚ0Pw;y O TI ֡1 Žq1KkQ),cNZOw}Sӌ* }Xr:Z 9(ciP.$:IFZlc)_ Ϡ X| YtH7b8!,1҄R^~ l.ij~2ڦ{CW~,Rl, l6]yZaH6N6rd$ȴJk_{'M1d0 ^s!9!aCJ cŠ{Av@܇+ڢYuItFV:&h^P.# ;^+0 |btLVFO> ?#AQ &Ӑ@{PT.A-pD22CƖl7%/mJΜiGf߀yq[- p9HHΕg9ύ-48hxHƭuX\_I7CL>[ 6ĕ`Dza'sE |' -GiE\wS LjLmuf;&~#o,+= G#evW8ǒs#lkY&I:YzO5gV͌!߳ ¦ Nqn6yYF!}$*4&98Geo/(Sߨ/@1حLʩ~h5L-Y42oD[w.-. "e-b2_ͱ.FxBJL)9 a(66bx}"0dG `i#zuF:o .a>1H&`)GYXl'"}!%XlĉX~0X4(D۔,ƾVz '%?h17"0fMq6^C&<˵l1׺S$TIAjT'4)Fxӂ- +&R@㲓rJ dqɎO< 3bb ytIfX$zzeTN֠Z]ܥ;Ȁ|We%]h<*ۇRNt*N҅)[[޶gfP #ib)ƣOҖZ"Ahꦚ*#Uqъ6qc 6zVm5Cu"Ѽ2idؖ3aLMQ rb.x* g jx!3`+E I.K,$H;ޜβuXST$ǖU8}M xp}+Π,tpX]BP"8 _b'3>_p!B, "MI/'/x٣X9;[#qD߇n^w"̍1Ta'vt-S>e2fm9w܀lW 1Ѱg}Gt4ϸp˳ςBOk50pWҰ9- ;¥i;e[h->3_u~UiN>$t潹ǑK/U-LC a(r?: zez IXCg?$V)f n5 79MBY,@yu}د` V;ۆO 60v`& lyB`DQ]dcQ]!ys:֖W\G>~=,F4ÐXʽYbU?{Jet?6CJrww]>%+T619 JHmчOrL9~H?ҘtYyI=0%&?iV.|zC.<+_%AMA2H 78.[FƱ[аcd3tumo1 @DLG:4UVMb j E6YbkBb,V!yk>]3gP1||n^;D!ܦ+̠WM깼rd8^]vLkw\U,hb`å2.|$H1ޖYm+y?_e`"odhء]BDduƏq,ŏ# Gu~qp/6Rt/3f0 :JZ%z^ɟ~ z٣֒<4FuxfW~k t}v6- wPݸ,{Dh;a;7EvG0- m&1N ›>$(m>ql8lr jSw#&a&('}1䞘Ph E11k2!zva}^ 圦Et.SFPAĴ iȩW*_M7N6nʞ OqѠ-o_=3IIH(QLBIYD {bTySzLI/|Z0L~9z6vZh&Y] Q[5`^sC|CK+X4>ݝ2eMoh ;9T%e&pTTf2$2*8^ܸi_t< h`+UpRV&=yMV=))n~J5NgţZݐKAͫQȞV3iN ͠oTlY6zevJ=,v/Cbq)^ǙkyX 9!y9:x,~VKSu0ў:ԪPn{`)%<1%ҀQ(b*V }F}Xo.Qť3&9%5띸Pt=6J;Bђ vt2H5x4fwYoNSbtgY@F#W_Egu봓HnQia&XRjD3\Ƥ0;UrRV  <ǝLIi ob$: z aŵ '~#t0bQUORÅ d{ou)b];e&c@#RBnӆ/ %CU2p'_~bs{Ϳ( թ{,uǫZ]Mtu) Ujq\s򽵛a3 =콤ߖwgD+CtC?.d.ȁuT}-D }w$b<*96ڢz 2lv,u d*WрRӹZ ~CJdV]ZT"?\?1+_=hHyzb w6xcHBW&k(L7`>`9OE6d B˴D *҂Ǩ(AbN{VX"MOJ^]x, #hCKn|p5$)Ƀ)1azΚrQlj% Cy0\S#&~m |k>Y PrET0߁ew tߓŬg/uXq[ځgQ\sF᭄mc UiaMz~ZpY 7GI=7Sy86^E "nBhWy>=oJ0 ymuǎiu83U"-J~c_Cd}{sD5ز|' iOc۔24ܦP~n$]J~|9aqZ &oYBl; r;>J፠23Th uDYWsPۂ 0EH-/Nתfxyu㟙RGoۚ>»uu`epg8cQΊƱR@5_tH‡TDyД52yGEؚIdCdxzPm؜]J`>Gt)DrT:5Oݧ.BAZL*<׶mBly~~hς> 2wD{7T(cIJ<K:'1vIi:Ra\Lʎd㩹i]h35 sJȏ߫/bХJy~fn> L`]Zyqٝ%6gf̰:=/pN, gG1ikqME@U|E`+"=P=9~$h^3WO}\FO]5r[ɰ. )"-x0)\0mGUӹCC"!zu䐚8 }:Ĝ2̜c?0Z:XIYZ yU!q1^Da78ɟJ&~KQܑ8pt'4nydm6P/n/EbAړSR_yV4a^ӄ7DA]Tq/;|\@qj>0 Hա葳iaF$r:AƊ`%Gg!pX:#>BFW Ccۗ&9:P.Zq~KcTX2c1R|BR#͜W\OlA x=N"^ mU#D\2SvkPK&NU .ӿÌVR'D*w57pQ4FjXVԄVD BW9Qgix1d4ѡ9fF]: Ky e92wi@g_N oe >+2a8 Og*/.Ьy&@*1t銄W%DOt ;6+(Vs2a1Ϡ\B쌥[qdbpu΃oudgF!7B7-/3 fߐ0W sd MڏGY?%,'Fx(tIt ipCM-58}`juSYOx`K{sZDcX'06d0pxoc?8ysM}Ve7׃(|{AP vW8j3lߏqlmlf ,UmwUK!щt r:C r\\Go[s\ iIfh2tZD`BWy(0BHOJ)1G zAΣY؋ۢYvXC*u BJYx-q7C$ ̆&*h:Ckvp7wݓrT*x̡!3jZs`= rVZ!x뀚v\%כ,wDL)^0!  }ȳm.Y4%0Mu9%FwdSZkrfnw4jpE BHkx׃,Dc++yAe/ÑZR6Pepvy2 sl\buV~M$W5qbmR)(j"<6OׁqwnwTcPlc -h^<\v_b-eK@YT+Mz;8F6U_9 6!@!Ūl1djI &4v& ڼCrL?~ `;^?Kay(겥2X- R_뙨2KI 0mf"Uә@%řd曠N֔g:F5t-f"]R4VK'͜m }\ۿq#Leds&<䵁6bxI8X,vjTWPyҹ;JHQmor'&68 |%0v KoW] a$I}L,@eRrDȡN`Gk eD4,[23@}M<Ѣ:PMw[Km]xL9Vu\mcq_ީE 8Qu~[(m4e/0v?I!sy!mkc 2jm$z^yaX=t6Ҫ hi,<خ*e6*l+PWsBNT;d첺 *1b]*Ga,XNVʊochɮ!@iW*3xL%x I>#C{|wN`()S02ʃ5 n8Ŋ {ɹ7vUi LX2 ޏ8 UI~K!ݧA!!hfc}X@*v\TQz@HJEȷF-Zco6d}B^]cZLJŘQs+  )jgy™j)2*$c<-hMy40"_?V22lk9AĊ285:kx{[f]j qւm{TC/_IF7}Wv5sQ/` }Q떉]*NvFsVDi4Eyғ|$P+tJ]+K2]_@PY5 ?"-1y!xKe5ep{-НN7 t#:N̴[KsWG)F "{e+k@7BV#Jr4!OD1S%in㫋'ْibC3y^a[rˡ#oVjY){n$2KBX&`3&@O.{vKfߐع |oEYO_&^h ݆gӸ ^zBá9?䊅_QTGeumz@9hG90˩i;~T!kxm$f:XOs1rQ@&Rդuߗ Q6 V91@a<9q,!<[ONC)Gء'*x*in_@<9/8Cm3%݋u[RV98T0Jw{Ncw0g e5m.N|-\ۖfO~\PgާLbhHQbm+܌Z7vwkA@~rW&9B/i}/n6mx'h_4T/C C@y98[`4bru h/E+$AƅjFlb/7P}#/eZI]?ѤIhOžz$@l³?@ZAUVRytg٩*$fx#@{mܺ4 $PͲde{!rNos+F%Y;^gډ8ǓQKbo}!X\FK/ȷmFƸ,kk]VlCg: $_}?{Q 1yύaec/+dԽ0)7ѲK?ne>||[ٽRpZ0r vYG~5{<|ڬl`IZMC!I]_|<0/ 51k!W+k2EeȌt6>a_(^A5)wŗXb;H# s؄=IQnL"n 1iF1P)J5ў`i Am#)13X?>3Y >AaxC:z\ }~U_$x uaWkTKpY+]t =v3Ji@.oZgO+7S86V8MZkfԩ i+[֨0n6&-,+Sgm\h~(ɃV$It\wi"瓓:`dÉ!ˊVY]I=:3`PؖsL$. %h&:j5{Cdw-KC}F穎N2{M|D* }:hB)r{| 'DNS޼0x %Y3@R˦#3srCMvT@y41߁'\e ĥݽZ3}f|83;"},2jPdiqYJnvۧ#ॖ-G'AFrhյ8:ܝf]M,q93ipF@x$wFds:>GFþBCraX[Ӗ(R c7?&S!0K{e3J<iVRsf|.?D"'yx6!:( jN DK_:vuRQ̋f1VЯl4-&5#=2 & &ĖFW{R $]8ۤ(0ۯSRT015x^"yD 10x*]Fȯ ~2'oT-76e"džjbk>6OnEsi[1aP};$>Rm ?Rl 4Ӄ7"+ODwTZk'͘Ɲ,r%"?vn0<^E5PH0GB]K20NG;f|Rj t$Xy"l ȯ Уse3Ј]f(*ᜒNW;2m'Mg1`PPu蠡f}Ny4P˿\8ݻ6&E$ҁ$ ~>g()<,`RNsE 3r͐COz EQOcm* X؂JFvC}br79 s! FgvR>B ^"8e gs=d8T*OTe\C\y`tlD~Α9v]e`l7T^ c_+ZD TsӭN譳HKg!%oNk^H6x>Ci3}D.eW#s6& ^%/ն#$m-c8 lo^JVIFp)(-뜗ÓajǦ\'7+Id9R}2mH|Yu@ L{h=#ɛteZ-I)k4pJ7߿5 lLdo5gR>̈9Ԧ4U.oURkbqߐ}A| j,oއ H}hŽs5? ]9Eqɋ8gC]uIi$WDc_\16A*QeݖfœRÖC$r (M#® j[=S|٣ 6`絮=Kg Ar}i+ ^zͨ #5 .ѨQ9!Bpw8)L`#A3duOiHC,qLQA%qV႔`TBy#Wsa6P^c6 qeÝWo\a;SFȐ+KA=Dʸ% vUރ4,Omm) n<1G#Xt.v -:+ڨ%Q3d"R0{6EsO4_wH;׍:vҹfJ*νt `@!H= B|RZ_m͗;w+q:e^:.S5)4Ks ׆ ,֎t 8`UǞľ#uo'd#}.^ F OI:2J])]_[X㧺i.i (K> z/;z9 L{z]v>z @ քsXa3x\[ _U+Z1}] ty01MEte.nm ,ٳ 1/P4o"Mg@yaXUwKXA۷F{/ w ӊaKsZ$5a FGaD3$B! "JhFƭM99EoOh4y0t"Fl*n(㚧$<#>߳ftWt8HH w r4`f Pi ݫ=;M:Enm&OL 1atpȱo,HwjI'R:LC s?Bߡ,ݖq=ԡ1㰂[q_'`,+Z#s1C Z:{4W&8<0쎧ԥQud2SXG#"G+P -oשvtE2f& &De+^(CH Ԙ"pswPz=&M 3 Q^Dk] o ^XCav4 plIXKp酌.ةWr?h %RqIk|Ѝ4 RϯH% _jZ:AHɔ\;OH4QjKZ'OdRf8#\PIFcUNx6!HcM5R˸zWjDg{1L0V*5zȐ؏g͡v~@FK7,P}В y܌[ ׁf)]7tbcy< W:Y8?ddoev̰>O.?OͲ9f1#EY Ђ]feTԓ۩;9:({ BN>8\}؛Ğ5+Y4^4 `;wqrBd]^7t;Ar}]iͿ۞*2K M4$i^fyTR'%y9t ;GG809lP )%<(Vxf.>5pjX$ DF|Ml)12˱4,ߎKTiz2tq҂H rl@^P_jxpjʠw0#yxm0&`4KyPVdIxQu)Ɗ<*gݤ h<aX/.K۾ٜN"8C;p-{ ȯm?,{4d"0 jC!" c_M]dsa3z~{TPwvl=.`_wcY* ˦́[#uYX545 Z|i啵ϝӅYUxn_b/em]0.U!s&ǦwP LZEqrW? Zּef;S 2[5n3Zw'hb+qe%P1}&sl 쿌DɳjX02pߩK=g>Scts53|\^fzUly<_ion5X/<F~{t|XnUOZ6'g3g۪_Ԗ>Řvo1z&0z"IXt])[®[}we)cN3;1ռnbqgI-5_H2uv(L 7(!o{]kR:(tQ@Q^׉o/cE jh%=u43MySsR&9wK/4d[ Bq<3}j[]/9{}]ӻ^q3[ SU`ٯA[!p_;R8!s Cm9AC2a4ó)sf{TcMByD.Ӛ#P;YL3͢Twf {N f,0[݀.,BQ*ӷ:b[+P}N OX6^\.lߨ+ Uhi[|ۂC!N}"5Q  L!xO0;g #a+m{Y @O(tr|]r^ x+frАLnH_4htroء *2&zU a+bV*D@)rj5,^~] O qUE+]TX!ԍJ[a:0&so=q^mܷ~a4{ IB>d"# ONSDu+ jIY6I*vj l9ÝC %bX\SҐBlDΣ{;JLp_c:".|]40GKysN|ΞGqꗱ\& !0Y`[ l(@CbӆͿ~ꀧj_˿jIL3Xܭ}$3Y"r8d\LAU XQXWwu9D~̳dPK}6j:qTؾ=3pB&QAS7#~loh;˨Fޡ`ztMsntn"['vy um0GT8A1Gx}*S[H?.*k9&cB7w߶|n5vdς'E7( goJO xP\;t+nC\/ڃj,DjȺ(Ez'&9_4x=A0BHA }eتX<~K#diL +㾘7UT`5]e]4h՞ VN1NG?ϋ$ߗ ӶFiv2Řc?ᢍ*G0b_Pr heHщ`d_?CIfhHֳO `gv+}kyaq6O"P~lC *W=5dhÑ#d,uRjO[ɪؼo0"H?7I{=.\=C1]Z9ʀ2]~3Kc GP2DʵDSQWE|Mw)A^x1lQtoH9Xg`3ťI~G߂Dr3mI!GGr*[,`3~d|*M"r4zd܀F]@SGievR.CwCjdꠝ|<ޜ'qb6=ڶ Te\ /]~ ̍^q,[-I~iH~X~G] oevcȓ8 z&jpP͆JKi lNg(sp;Ro隿??:*&ǜM+{5FZG gY̸<Y5NEᵻJAX2K$C3?[? vHU*^%_H<ٷeCױzu}9+#v3#EUVFLr&X)I\牄E4fbBqUC+û~bu5^}=k%j\y g:ml}mJD$І.iK1n\*[Pfמ*ek!.qabOC x'|}c*JnZ!WfˉM;g"rиDkWv屄Aj\ʮOB5*8k pxZD{J `Gpaq')i:7v hZhaVZƚN(cy)BE,ދ!MQI3B_Y|ꂡvDL[E?g1nzyXߘt`(dSdy6fuop *]z݈Rl3`F7*@S]Ճ=!s77ֈWe8.P Dqӿ_m7kUIG> !Zo6eE眪|#lxmsJYʴ׳8/ B3Ϥܛ9=֐Ud*VKBOnemXfJn@'g?֘! DyJ%]އj\Lj?>;`O%fk7m_HFS,{_=aL͋Z nԒ6!uU"qcnz[V;A ch`Se9яe+&9;ɪ\xd%Μ3RؓU>4-QPFVC1І zeaOT]h~ΈXf s8>%cXKibṃNxPu_E X*S$ Ěw](,QkPTH3"EcA8&YB3G%Ԛo )셰 Z^X>/:t;3ptc?Ħ0RO0:`ׂ"|5~vaEZ-&Jb;dhof'vv.l# sV|oe:uDzEtm6`fa4TXi!Ѐ{rG5l"K(D7_Msda7縅k CA($#Ȳ&WɻDN7 ~:ͷs斔G'g,ОAF{s 6peأ-3m`lӆa+JIN9 ?WRE @0X'6BEǿ۾`Ź܈* Y_lz(rڷꋅgo,M9;6|cG(M?1ev3FoN ^4mjwccQ Z{˾x|'T\ioWH lgws|QjԲ(‘9_)Eb .#;#>>a,PbJz@Mg1K[`j^qKC $: g;F}5n[s2L6JnɯwN/kUMYS")rKTCC, yL$~gy__C7 HF$g{)6֊Mm=/!j(x,wOa]7܆CmZ&);'/#R5.r"x԰sUl2mUߞw.A/'B̨{ygr8lf͐82u:m c>?9jS V:L#0ۮQp8 Pϓ@zLkj2l׿"|9Zi_Pq| (4d:i~r gZw'1\t/ؘJ* *O(c<*oǙSU[9^&pX3&Yy~_)SrٓxRr/ :+0'^i)GJ^ӂ6v@YvY be#A _`T ɰc]A?g0ght|N>p/-hd݆[rͫ; 1uf0 ,Dݑނ>-!lHK8>dkVt9-AT%8Uby9 r'-9OI9 U('"MIh1{VV8#29IY(]Tb$^LZf7 )\h@lPNߎ0֡nY.d9vŒ+)8@e>q hFkg4l#XB*%iN>=oGpY+u%IkiVT tq/MZokӿٷ:xG,vi޸Iuhuw.h;wZ % `E>6{VÅjbA/'p@ozT+ƛfj1g92j j ZMkD`*qe'|%*k&yLZ = mto'3|\O4e>SX%ئ*&@X};;)HfWu Ć耸gmٕFж.;iI )Æǝu+d A _/K a7^_|KbV$F*_ QFǯKO^WUR#-jXq91*ϼiOn{m~!Pc]FQpbn8w l؇c{.O'ӭi} u.;+xXSQQvZVQWqГc"&a/嗰O~Ę|,s,BT"VOΌB=Sg.9 z|:h9 HYnȇy1>wir+6V`~$e fC ̑\I>jIP&*5U5=©pa@.(@sb.rj 9o:r32<EQ}=KwX H+nj z}jWkuJi Aۼ8l[ [T4I(aHy+^ed\ץǕ8]xL 졟,B5} CP3̦ Ӌ ?BeBi1דB #F8ϫ@ɒG7ʨ|̠|*{yI23 ԍ`x䙉8"$F-L(ɝai$f OSy6,aiuQ8Y~X+8( Z`]+dNd`2c;1w|.`EVr 9 aiԱKq!y hՕ : OmHzQ+СT` hW N &"e"b!8n=J6hPK Y9'9ˣjJP`>`Qiu虨65DfOr:e1 9OHR-"LyB{4nLwRp+ XG u䉚x3Wd5)>z45"-ǸjxZfѽOb/h$ptޠre+l%?&:1)iٲ)bӤ ֏ 'HUˍKfg177Dy%0&pՉ?N,..aTq;G=PIZ Ό_Ƈ%:(Һ߮xL&9gnl9!PŠ8%\0?dkim Hx]r3\$jg)ʶgzYm{o,V)vɊ}(%4y ; CxN6`8of_8zʭƕ|CEw:7Ӓje,B;3hD tpjSr,np_냶2ψc RTʃ V0‰ cU\8 tyti-[:="iiɿV.uQ$x%l:6_bE"aퟐݥxV$NsK8l|x۝)Wv8*K_A;ȅ'u(Sso A$wRDXɈ+޸,wPޛ1@צRb髋~CR0j P>JjU#iQDQ*ɄvR50'4CfS;*ywÍLpbrSO|ki8T1wtG2OۚҤϝ0A߻fװ&|^vZ<+L8X%wbSF1a:) *]e/z;R`Nd>)C{L6\JO 5t|q$U^A`ʲr۫4!z9f;ܑ6q!^#F٧9cf{˄zb,=μAh,x-w=ZoFS*?[a qaw2!fɞrFN]M2f5q: N!y+JAO*z.m(x϶j-Aq8;QrrŘ_b?p\fe~PǗCDaۄvUj-9TJ׫aS'&ֽ/v.48mX[y(3Sܤ ay Oq}9ΩWxzQEx f_;PyGHSr_#bߌp<5Y͚c#3r N` 5G""uzVovYX̂3Έ&Zo-nXO:YB,CdUЯڈ^ girիǥ]*Ym5:V_Q3x5L;<0ܧ7GݙRtU<  XSy3573q2"KI?@qH}2#eлve+gnms<8DRz2/Gpj͕Wvm@ ji3qW5 z-ԅݐUF蒽GP<K羜僚 /gL UBk30I&0ڠ[\};b˒+u_y`1dQڽnI)`+׻f]?7>aP~"kmQxk)T P"w {L`> I-DD6<'*0TZ>p'Ҳ T.3`W[emNZnkMzڄ#UbY٧.N5D M)*©n\vq|;OI4M,D70#^za٢ܨ03 Gbx:ްS$ I~erZ>#H}mu˽pѥ;4$j`| 0s.a7erK5}`S'Ir,ΫEEj;өnW|"}# /9qB ~5t4 :;PҶk&%]Hۏ)1\HvQSWI.uQe= 0U՗R-FA,A4=#H1F?N`)k9[Ԏ$¹9K^0k$"i<)`)⻮aavn@K% Xdʂ|*󰔾-Gp3w[{@>Ӈ[ Z" g~"Ȟ#iL2a/>Nt 1{*sK 䓖Җk[pqD}A)hljst KZ JW"rqT2Ee"XF܃ŽGW^T/dQ{ d\*uGD꼸."6nH:@!rڑIܓ2&vgy[mRm|h(7`1DVHdIX j&ޮ. ^@xΫ:3Ŷv>)9V#p{*}*5:uS5[v;*0߭*xYψM/pz`mJ1jEfʗm0\R;ܳg^?7OVhƚ$)jiP#F-+E=}Uꡄ1eK)ӧ"bkCd@gx*9F4Jx9b# Ĵ&QzTۜnCY\3WOsYe mSsuHl:!DO. &𴐩mBDY$\_`<-&Uf78"uv( Kޔqu Ddܴ"E]"ӱsWyp'Q' }Skg`Jh%DLm,?h|n4rf -LWZrU gZngI xAH:/{~ qgkBJvWI\E~08#:Zs쒳]Ϸl0VvYWK8Tn!n{aNt|SjIcrHrmr(M9ׁȡ'P^y$@#|Azd`ym&Cߚf%IѪ[(j.=&<,;/\@)v+rE(DrLR\*nuwyoO* ff_5<8g@_hӁ 8CazlO}])=9gAfXnm~: Tk CNy"/CQToQ)iAu+DgŋȱIN2ȭISxFhB=nbOBcqȖjC%%g_7` bc4@ÂS:c!vrpWF9LZo#{O$]~.'rb)P.s' dJO KľOt5&YsevV=oOP >ܮȂƾ]^1){Չ@q1|ȸOeof;Z R+Ğ>҄wK3ZDs0cG\@ dnRPL`ӗFacyO%AO{]1j;m/ P@RSp? ST3sxW|Īn(hҸ̩{l}Z=35-1DϦ^&px ŹAZD@ݍR,? cU{WhO1K6Ui$rE>- Rb;Yd+d7z*s2sC~VTFҜȖ~׽@곸mF+roP0tAAiQ\EZ0' +)|ي-aPc;z(p 'v.%) O֓!C* tb|ڻ.Kٕ|HeS ?~˲:`$>S)2_J嚶*9ѯ"-PވkX/3 $RXvGt Wfg8uS xD9l0ύ(!>0q:ߩ`Jia>R| \ AyQHԏ"B@Gֺ9_q.3, S'iGIS\d(Y ӕ>gc`u,'uo 0+Ԥt*eAZH^M7ќA8G3`g!N5'޹t:."R31oX*L~m+53T(rgYH0O&@s4U^qeʟ[ؽׂt~ ʌ _Nގևф < Ø˵zPҤe;rC ֈBQ/1^WٰNCޟ)."ԡ>L." {eܪC'c {n£TbasERWB*_gg-6]Bfkǻ.$ 8.tg(>1F6d*IC3"WfAY%5D3x"dt iVe[S"93g }\ Yt.">n=+|{4Wˉ] ǽJ(Ͳqg^(p^=|񽁭/.]Q7skώF? x* 9n_`ɛ( nleԴR0K2m7?(l'I9R&&Sͩzga1jsY`)9> ˲O9DŽv vp&2,!+$c=WcRqϧ_VYv@LH q7="T$L68;IIk\hl!ּ unR_CXަ5K:3f?iʺ]Lud(*HFs3 K< >Y}r6!j9Dj}n4M;{qW'fTN'[p.m% G>?s;NOgͤ?~ǚm  !f*w3dŵ!HhEHP  ;UdWCQθАbXM1Uyq{`0 ZBAtJX(+e{":Qk=w?,(nrKQ߲$>K6k9X/*d-$|!WH jw`%6l 0BK0LM50;`kIH6'u쳩v/aɦ'h*g0 %WߪJe9"&3U@_!+"p '4qS+2"B"YAYɑ#Ղ_zQ{2,,p]ųhj~\ IK5>Jqtc;.ZA&Y>D)/sS-ߪ '3Vº? I-?\۫D8|zKCkEd j_3`*2J33&w3WVÚGK>J$XЪ!g4 Jq%Ӯ9Z=~O՞( 5}q]+;-L€Y:-GF{2ajVYOݧٮ M\'' 9Ow\ER)8?l@Ε5*>/ՁȀc0eaf NA.^qDP)}5`}7cpvl,jM:.4l4Ex&XvM/#tUZi Qy'O$EKAOX( #uIR|ds5x;{ds]) Ӵb": h%ԑ\rt}ə/wYY .i0MzDƍ~w-s#l'c-( 3QQ|T 6:_MF:]7:W޿O6Sĩ)m߰Fcҽ>;MBmH6(Ee0n+5&RB߿=zPX @✣]1RЍ m)Lim~_L_)x&|:DP;NS thH..?Fj*Jo1$ۈ᳕<ڴxQdE.}9Ւ"^i^. YpW 8c{=8o t Bl)FbP1f 8XsRp)~Mob7Xfe a WW(O;TU<-Zmmf:2N/ƿ/{_.MC; DC˱H* <}73h)!籢>\=2 -+1+:]\Vč!Q%/9v) `͉J[S0r1؅x" 2ķ. a;*RYA:Ji+teqJf}c:ͯc7f)_[Z mr?ȵR칁 xHI..*aR@go>JmdR+P뙨AG tNңV ǹ۰Ԅi@tC Cҹ͘.p/Bpf1x=W8 5蒁e֌z}'p˚PhVWE6fQ u(#`*%> t kM|,(DC?,H}\NBcBU^d;oZv\P3ex#v }ً5K%Y*xfi j$xA:`}xqx3{5h4^ ~ԁ94 ^~kgp1r(#yE$,]B? 41Q4Z:SllIQh ĎyL*h۹QW >==+"K1-pSwgƚdiqOq-rzP{%$2uYq pm TbUKn'3cީ^9aّy% T" vg<Y> bc;e `r*'@*xdk$ȝ1"'312,u ƫiN|S19OGQ47sx K|3TW')%e`['pLce'Ni ,?d*zwߗO(7NnʲB'egWcn:C#/*+t!@) <{*SOć*+̕^X '*f.Nb]W+^J$'7 x 2guV3BTI_ riUyR97n#8r*mXOI%Ib7mT"o2[ӗsЈC\ a8I~t-j]Ӥg|.1"tlfB|*!Fs!ۛ%O](DZC 31*ib,f2{nYa^B 21gb'&-!D~aCQ/wSBvcb^89M>sK!eg^U7LwuGyHmstj jQl9@: R W,}8z)߇YOq(@,R]e&-|Ⲽ;n&OQš1s : b15JrfszoxdY-f#UqN u'-9gO&~G|oT9,3" JnŠ5j(3 r0'% 10!}_s="@Aak<\ ^:Yt;>.OI!\ 击.Lzbl1)h+mf~0UDV[^Xuɡ_A6F\gLVạnٟa)إF1n+l`oùJB-Z (υ3T|w_`E9= D\ޡ¬b@ D[(tVcնMZ?xRFO͑)` X Ip)k%[ٹ c\ZB.1wRP(b81UeZ+(B&Ʉ0bkN垮pND,Y8bˌl7X t8t_Ovȷׯ|dگV*ZőRBgٽOUwVVӱ7IOߴW/,Vu, $Ɣ-| Yitj82!.C2G{O3Ze |,0P$n%x5ExUJڎ~Xb}tFO>kU8b*iD ?bShohO ȉپ(tz H:=SL%sylssѻKܭO2r|mD>F}ɍpTm +P݃g><˕ƒ\ǚfvC,ŮuBrⶔ/wAbTSIty|>7Zd.;x* (uX({7϶7V`ßS Vm-82GK ~*fSiw̅oe74A#FlLJ++!"@RBs`t) w1LqY4HhxӲNJ-lm)ng-)+$[ "@2BNݙKV%.ɫ|KAU\`"i"nPbo:4RJltx- [tb#ae+Da1gr:Hr`fb{'O}b3Zsq" aD+?]LCgJkjP-.+VΈEXHn|i%_5: Wdn)EmyKU)gB29 4y=CvPo3xWi7+hdErU+&G}GWns-kEd㘾N|zW;k`l08ڟԫۼP2ntgja 吩U_} <dވX45,u[;|2S$bdF;qnQDӄ_e\9JRT]C^m s`>PI:PE/{SBPiCZjrwJwL}p`;1yDœїI@٤ W{A`۪cʌg%% 5<.[ mh1a goekOE ROUjlQÃ1U_}1p>]#Zw4NTa.U;rnI6@mEEJ A;ƫ`>KG4z^e;N% -+4ylP6YJzjWFT[.s(U?-fDɒ*Js{ ?| LCX鉈PF:盎 n!)a4C7*> cU'Y+~[/*'*ϑ:_YIrKܭL? nBtY jEV~44Bd_KStB{el=Vy #*b *S3˙tisތrNbG9g7kTFٚ62JZA&K3 nظϗ-cJ?qZ Kr7'T1UK桵v{瓗򃟽0˖视Ik6(I;CAb9WN %,δlWa4|a_ʬ܂PIS~2=MC)VpEu }CҰIKyi};x P@"=#k\$jw5ia 7^䦙Bn{["D"EJ1^*^??2f8NU#I˃ª _:5刹eW]Z:4ޠTVO@>vXGh,w76[X4fC"E=O ƩbBKDG[xS&QZpY"'3f:1N5Ɉ(l1T#g)1(K_:U*0pD]VDF̈nC(6<-Hԑg\MX}/r /smp c`EyeOJ>SXV23v!Tpᷕh*@ƅP_ ¢t.LCqvoig01~9RF81f}o1+SX$s n4Ms#)or5RTEL,_|nObkE@E2?ÜՇJ[Г>Uf<؄55\Tw{.6 V'~ɪndqi΋rw,0 8Ot?{1Qwm++6qi(?% f(g1~o@C zsJ`]̝G7J9b?]X59U Az.πcQ 4`~n<h!\wULA'ɆpG8rZ沩eXYȴgwԴ bf^EkE}QFw#ڇ?L%wFI"/+Y2Ƥ5,FӔXnH}Wa ᆳ9jeaeٹ' g}+H14A>3}3dBiX884~4FUNnǶ:(.դ|1Gw`z}`̛\˙KLw]'cD) *TlO?3%0@Drp#Z"΍ev~N3Kv{m񐀱3Yc$NX/jLEolԨ4Xe\-_Jamxp>^lԎ{E|h`0Na2Di 9_>gd0[ U» 'C4mPYo:w C'à51 jqZxɐqńo3 (;$:4-œ!l\1;cs_x_垘^@a5$. RX---= oIrg)B!j첂CCou*QDR l.m.貭 N&9"!Tߍª34ş`0\5z_7ĝުeJA}ؖ<4(O2X8/ vҕ3Ӂ#yXJ3G] 0Z3\(%֟Smۆb…43$gb~s6# 6N-T !=JdzٲG[Mn9Zpa7,NMަUgY?n7ROf1A%*2<<Q`SFehdlX?fDCV[F,wf#~M.!{L6X / )PNUqgMޓ囶`УKgv]'$n^z4b?Qž_ymUu\.*sc潀şjV=oU/+Ėbno^pi Xrb |q>u9M2t߹{S&07Y\h‡(Λ&c7a 2?\(UѷN*v4D@8 @1#yr$'>}}.Ηў3xPPxw=a<,ǸR wT"F;ra l"yL8{9"$#!p/a0rv b\ͬ~J>O( e)&(mydt49D ,N^JB v/ Tuޚ7D!?ʨ?xHtZ6T7z2|u$KZK8ºtZ>('[P9ȟIF\zq{ Z/X_~;mWHJoL앶b H__?7َNcϋ"eT_B?t}|E=[^C{Ed7]ih#޸奲gGi,R˿&,~Q_C`5!cb; 9 Z`l=ے5\J6n^w{F"M9~wX|:K] 19ݭkEA CQ?|fPX0]r07"@>E7Z"<}ZXdWj޿QOD }P\KM avCIIg"XrрZʣO$\I?*#8 6H:.o!+x+ қ زDaPg|`$rhXf k/L4_GgY3>mb$d/le{kI5o%&ShtQ XZG!R7c]@:%ǵ\YBPmP,]9"Zgwr,2a/Xt,fr6jXuGNJe :\vi-Ja5$e+dp傴QZt4zKMY;ʂZP&c.8J@Wl-H)2Z=\ϼj6u(BB@JȗS-a*nlL!#WVv)o:ڲ"|\9xaF#ߵu6d-4CQ)f W9FP:x^IQv-SL; |Z6B9@6Y) }peԕ@Vrt?f,i-U8MLczD҅G}=IɋfSXcJ`ُ~0{N{'O\3Z۱NXfыB&S=! -\"ino{v@yn-CZ77+$}݀'+hxHCob\GIbN(w@C ʫ䨱b1Cn^!ky $]܈;_;TkG58 c{A塁;7JQV$n{:w,<-Ih}POk3(]XG$,ߔ Oפm+I: x=O!'Bӳ6Ǔّ< 8|8 ALHW*k)^8 icxy[K/}:)Uf ՃL Ϳ.%KΚQxynf_fi~)ͧ0bսU_LW5l 9T^umfn63׏bC>&} OךYir_|glֶ$w2{;v$.(>:|hxʸV, 0OѰ\"j#F J|0xװҐ-Or{iȻ1}`EoM Ծ1w-A:J@YU !|j 9|4.Yk랅݋8y`\ V)־ 1FJ*X7af,DL+pzb^T 틺}РsUԑQJԒ- Qz@}X%cL.}3~"PҽWh<0+LbVpaZJQ $ JNQΙ 1n=@BO12K~7w|D$IƇhn'*T`́;aYD|AbA{w8W^+,tζC?wh jN?!`^8$%{h$E$9c`x F.y';#c al,ޛ4_g{nFu Jz^>se̜; \'/86m!B17b,)u$ym%g>oEpw?9+{UrB.YcJ͓QҞ\x\ +0L:A`Ȟ/5) CdOaqFj=j+GysdpFI'Cw]e!l'P Ѝp6L1IyyŶXU?!2-iH Y]i U.6l:|OFSI3B;oqrƟO Pۋz?sCT](N^t_ءT6@φI4TMfsoT(.~ s`U<>ZD!#Lg=[5a'VHb /x+>xTE4 St0Z613=i gϔ=Œr&^=TsU~k?zwfhߧkCŜ?oYidc3r,J~PS&J@6f sJ⺐m GcKraG7Yo}j@Yh}KFT*TzȦd C8k0a* 3z7aԖZ=a͙ us4{M٩vTH?M1%E!p7_/*l)6K!(7'WPT߫9c='MbS!qZGy֋N](fwwl[Uyr .Y=`=a?|KγN<8óllSiDzh7@M}fZ+-CaPVdxDc]a T?qm#VBPH  LUbRo;35-k2C}xK4n\h`F'u,P#D8cHĉsܦ+uDC+JFS?_b!/]YLgƉ43\ OƼī M`={&n{Q{:tf<62MbXFoW3D\f&u/b+#;D608i߫53/&|!@(@vA,7n.Q6h[Wq0m>猊J)5<ĴfQg5,?*N|; eԕL~Û!*`&r[i(wDPF7cl,Dz(ljOvdiͺ-wn+LQ\"e9i6?vNz\ SJȎJrr s-/rO1wg qJ ?t ܘm1\;DA/-[(pV_WĹkV$관59D%  c^|NȠxZ'` o[6sϋa3~ce11O.$B(çQLno_&t$mÔjP":7<ݲʕ$LaKlv?aݻn[o!Ye_w@70M銢q ázA҂y]aE~9?[^n+Ei[c #G'`tA 1Ÿ9Wr)Hl2: Q:0W}Sý2œ`a75jEى «Xߓ̐3tG(`R?7_pxi %Ӛ0oH^ 丼 t"OٖQ[ 2 Jjn"iϾdq Yҽk) {{8/耷Vͤ] ;Su՚%kU0rB(J_ 慟@8.>V5G>{T`L`\ʾ M P%L=|ԙڗg b`@a|BO? 5! Ц#޺1PD7JlWE L P8 +%;5nϛ/^iv+L$x'ί@f#ɧ}ŠcҒLl{[Ɠcn.LfУ:|x+|u΃Lb1W&|/mT&j7 56KBYBz2f)u aQ[^/v#q:e>Z/ "Ic&d+6qa-oJO}?c'GZjgt$_xQ j)xWjum,sͪ(b8O%؆L̥R#RO +_ -dz?T٩,_!*]T%q*&fR#ucMt/Bg"Y{ѝl7Fg$BTXQzH 1֐DbflxǖޭRÂ\bң٢d).pyds5 #ʼ4pgT9}b9E3LoꪨGnŮZH}@Fc@@[PIN:twdu,K}U˙* <BR D@!`Eµ+Oձ8KdA͟I-8$ m.<'ʢJ2xuS05 >~;Xt.-#n1fMLj2aڶ<y -d:^ALC>ʈm:0?^)jƟD@`KD(\rSkgc1!2NdEEϣӫi7XFʎg© ޷7I %JK3vK2%%\m3ε9 :4o9+u}U&vn(7 YX/Wu+/-8k*@)wԆ|'\6笪:=@x8}V[ӕ/ҥM ^" uCw#\I{pgT&$~E"osiĸnGǷ y#Rx i_Q=ԍWNc?7rBW޽ҕ#DC<tcLr3v{)&l@ӺvK_QBRN l.mr1v:m!v|WCtZ@^}5Koem%BHIw YYLA &Z!t}~cܦy(k2no&qepשO^=٤c{;\tGMRNF6wks?ܡ^ @i>˺SR3p.&׏tzad*5:.J! NU:P?.nFO30=KZ|]jtq~Zp]Spbye1#+ڦgBkEÇϗ˯&Z<{Ridd0stBpo?yPI?3Lu:6,@7_W̩/]G'Ãutb$'k1!.0!Dݛ-;Qe@3/ŶQ'3r[ o[=7&8{1r/hgp(6KqDΰH^'c҇Mc|PBvXӸ"}.vu8*Þfy̭6UZdvVƞcXjs_c'h3{y{2$4DO(l$ho*AIZȌ(W%y2z]JĽ[0d\4Mt^1]h|k}w~ncn7Z-0(]ep! Lͩ(M0~vTJKشSÍصODwӷ]0C`3wnbȖl .GԋzwT kYǤ7GÏ۹o{Fk6qA[[M : f]IkcVr7{{uMoZZv'h*=(/6빿痗g2uNzam+=LKJ4r5 D/MZD)120URwW.•0@:8 [5`ŊVo)5bfP% Bu%UXhlj&t ,q47. (TJ}$w+0bQ9x-[) x ՞ ~8dE\YJM`#.ADmO5z+!'__$Y+XC LJ+RcіȸLW 2޿D l00λ/ݷ^VF~jǷyKOif~$#Za|qlOo hkQOOV](\Mwiz'.2}J^2ZM"UMxmz:Pi?qs2[} .~m E Хw0anhET9Fp\?%y#:0f%bD1d@0Jtk`@y`ǻRJOSP2QE\Ųh}JA d ٳ1|r㲝qugg]$OfubSY'.Ľ3Á-@G (y1 4wcF70~̈́|Ha+׏4oխ8BBd1O9RC_0bC̄os tp~w:sb7Ey)S*P-՘YK̛/1_d`5 Sp26J8ڍs+&$I"{fN4# R͓*Xw%g1 ^ʡ<=Ral[W)ivYp: .$gG;WTxyB qfwCc"A񷀘7OdAkgo"H}~:O+B{U@0kܭ]$ZIU lF_=ίBv`M!f](yx8>-ksc'-&ĸq20&bM1%` ,iUt>m#tq仵s%er}77\S{wpnϐrS4;wk$f&M6DGW^ݗS(e]Dś &ZbBBl1Yy*šua|vI#zݫpDЂ RrC~@ Ag`o^Q) l݆P #{7>r0J[ELt"!WdLߛ*G_纑7w= co8 k;(ܯ_bA8t)/\^mjTO`"}hK\1#S{t|QPj$vJxRlՙf'8L±hSE`qkoX! DzΙMmY%i=G<~InPu>{ 3j5zhK`kxc/iF.B6:/Vz[V5 gI=a$wIa&ɹУ&vVpL &ʾLej#/sacnv'7\.VFƓ ^} S=y&ɀ/U!'F cӯjqA71_d@]cV3ίP#2UD%i G2k2 ү#UPKY {[ܺ1&hϞe/{ >-KdJ_;֑O.vu/U(?/dMb}i;9'wѧv&\ТČA5˜o."YL脬B=jGd2sK̦/+ DžiN>6MPSDw,A38H2_ FMQdhQ0ddouʈHXAԫޢ v!1 xՅE~+d/“n=鐨0[>E|I[I¤-"y֐BEJ8óH{0R6)[ zyZGlrv~-i7н3)/4t=$n   4Xk@@ =uM>eᅮZeklh15@N;D>85RȏJPo Y줢h񇜛 ˌQs EVߦҜcZEmdS#kNX mSрVc xΧ{oJc <@>ZɪOkb.׌NFݺ.-tt(}']OjߑǬtZq0G2|$b>"qe 6Qt;];i!HzTΚ^$v|]?$/lH`m;48`![HYo@q>|YS4֣;&w49ڙV) y|Az;B% ^Ja(.Mna_2ZlTKl+،7잴bhvtv=!>d=QH'FamĜ,]t_{CE.h/.b<@W-]oA{E |W 5 $b *=9Lf%|Z>;,R#SEP#gJ-y)l %*s7x|o#E)߁]QpT$K7|DyV6ؔk4#ouJ-dGy܎‹D dN_z%B'!#NS U#Tr'kසn$d[L; 2}U7f} S|,O8 ] =V)◅@%y EOA}h}l()pXyݛbh# [G 5LzrzPb4lYтH [d0sq_^÷h<3=RD𜣕/hŧb>l1GsWzf-x6׎c+`Tb>k7B+kTi٤K2Lqܬn8b~Z/@##V恢!IH!U~J ڌ~AOB0-tan fq$@^VwY+2& U>2{ɎCR1>:(Bv/ۖȋL'˸@؀娱 bо2I6G{\Lm%#Y,HPbVydW(`p/>+L e S?1]\\'vPy}E2dM܍^s_vX䳬B0o4] v:FbU 9hhm{mNv(wj`tld\O{p L QULYCW Kͪfp-jĭӅ4 cI_^p(G=Gw:@|'ĉat$LD.ڨq]6EA'@EgafۚZW!2DgW&}+2W3Wl .;TXæ;b'X=F%+ D0rP&S3]>T|rm+xrl{IS5b`2Z߇wŷ ln^Wh_Ā !6^|UT$Ji^N$J&jc }[d8j;38Qi|:GTS,)ߛ# ݯ?ht{7IwQ/i /R_x '3,Loi\mm5~^-g tofb^r[+3rڵ* CI]飄7`ھus;IiR,{y?cuAnRPZ!f́|wvx&\n}nh-\/R جX0϶OZ׀6ak7c{QγM78.aG{&i C`I@6J ZyvAMb)9EHI[cј8s (Σ16l6Xm0,ƴbnAsgvW<0~#K`[=أoX,x!@U EG1L$!k5( ewF{i&bMI^g\Q u71I@#,G Mc:v@(H١:ժikҙ TD.` 4xY'k"[y.}\&:(rkhMu_8'w}quA8so5Qn?Onxoagf__0+@tPjK^Ǜ `M/օ38/eOߪ?0ąPvrE4V:\mkf*"JAD@Y!Z%,SUInNZj!%vAi:د3,ÞRЗ?疲ZH78+R_MZ\-xqx0Tg2K냋KD,V\#A2{5sBk$ mj`;QDb|psS:Su6&ꙗ^x?< WX1'ufqkCx {aq*h`J7s+yښ!RfQ1ܜ+g`{Sin rZ{Og ~ʞҰ.> 1EfJ db;? 1K|'d̋불N.4SL|cۋCkIyi1Mph1,+=꥕3^#ѺhYЃ Daw^0P*Q>HՓՖ3X+Ci,^U6ɐ%6>x(X5ù GG\~;N`Ah!j7u;ؙ Y&T[@'wbL_D.)3+K%wt<MԌ#ΙT :苠~<p:;fKyQi\~{XW1u?֖DR߅j.\x :)u`@O:?DYBb:Bq̠vSt`0F:p1192П5LC?$Z܊7*NT&8Z@yx@\Pw.2șP͓{Wd5T 1.E~T~Z' oJWgNF&Ӑ)h|r"oMLdF}=mݦjrϞVJص%`ז57 =v;Lmܳ`GډCo7h՘a׉<) ʫ">]̶^}? ߒTޝ@EAyQ\~s5z~m`H@pp&Oe`%8z|ۈ5ϱmaFluQ 8$̮ȎQQzh2S}Dum'yQosmT"fqϙ=l}0{AE2UAXJc:H]~ΉyO4;N*MCNƯYXyJMbD臸N33b  'ѓAϑ啇R>r} F,::aT#̒{Oӷx(=!4XZ8E6z`Rz.jL"Qߝ荒{ZƁpVR^#%_G8>M2wf=>l+Q9yM9 ~)ٿ/y־}JCu&&P2EqtJ#5s/^(`)FӋ+) 9] Og\X4%;hma~d2|P~\ }(( YeϕbKd@#~" B"MNVШyz-Aٵgm xPT eQSPҩ`_X}S_ |Ts X 9Q-b瓨S H&^J0юsFq8&i ؀}0F 7phb.j#'31vC?F;/w)򠍾S0uU(Jxdjk-%ۥ{@R쓻u$=I9T`WMmɍ2*! ЏR(ԽqlEk=ʏFp\_I{){u% qh UhA 槖°~yc2 v!OqmH:r ]ssn?ӨKhtldT'<= k9psCAZ@{ )Z|c4ԦP.;jd5pRJrYLԣ[N2)Rm({`[`jȋGI&(TH==žHt/d *y0ps7#ڶP: ՠ%ȟ߈Y3?-ȓ Gڹ?ӸP ʞB/'f-4 w3Q4: %I}j /+Lb|z(}zxcntk#E~Xst )Xԁ _ERR2nXv #nPy _v=1vlnӶv/aS 4t<=p`V96:M-r]NTa`hNWV;kܔGb(1SBJ?[tqŞ'˙NfN+Re$i8Q\,LaK-߂.UI9-e!4Oa!n2MZGQJbp o1M/WI Id,ռ[)ޟZ ^K}˽/kMD\!xVXʢi״JcRxჾ9hbMҴ]r `ĉ!x0Ki7AY `^CP*cG.f!<1)(ȊBb+Y3ИR[:_|'V#ugU,>1h7~%܆ft/?6P,Ѣ? ՇQ;22[۶ހihiAMJ Qr;9Y%S|WO`6rhUdF-v N a S~WU"e>ΟgSf.2ҭ,Z:c.RGL&?Ŋe>]f$0A]ޱ26q=ځBpϭm@ju3Uab܋(\I*:A}nFѪS@m:0q8R`:)77x nrzf{+-9&b1ƅ"[k!0am}j S"vJkOǩzq-BKkzyP)a ]mq8?<y2feR?GHI`oC٪N&\q^2Z>#MIZy 5^(0{ֲ:\W}k ۰A viqR~R0$wc MŮaH˜h):N5G"S>/~{.GAIJ/p`jE8"hE=I'U_)@D3^i0NZ$CknMÎkATGU2U$4'^jTK874Մ^9V2nze[);>KOxz-(dŸg F"3Ƕ8x됂LF ZlC=jɾmβ$X5 ],hOIծ|! ǻ^P1`o9d|&Y ݠ K0s1'㾮;' ,FEB9[?J*WTN戀xהn0{i-ӹ~ [2 YzOHBH0ڨhbx,nYUK]9/8^Vn8 &Ҳ\N}Sڙ 2O<1o"l®13 b LmJH[-P(~1 "_ k +-U餾6aZK*IX,G I)9,R˦yxI)s$G 9"W͕eak@pQn/j jfew0ōHH?1Z6,NyKF!mK7)E=K_nJ^-0AƻaXb7$&?GCF6Z3K[:We/;"}x+h|/nv;3 tRP*hk`^PY{Cs8?.Zǀg2m@VؘolN۞)tprC~#f叏G~K)_7ѺR m9RͮȾ3CY+dC[0o23z4!U׀;+i N^nI7F#bl)M}φCZHgm73EzΒUL@_GPoN'87V=j+wd Z )L\3mjza`BGqCB? ,bF*jC#SP9)Ne.VY诔yf?4_!YLîkB1`RI#qyA~蚼 =*[R/.NM JS"̵tUJMY -1QIWw#u13dЮ=rq1UꢸyD mE wA؍YKһ]y.s *Wl^?,0~PxXꫴp: G(<$$i-G+ѸZ6[-BSu ]`%8rr w\&8o񺊬o2o1lpV¬\*9d)a]4Vw aWdln∱yL]((IW yQw& 26Vhv>k/^6ZnIF*"Q@]"\ CBQ;E|̅]+טKft(K0.(\TzL1^67h:ϮkAFɊ"B:5ĵ]ցֳLTZ"I/[)tNx{PB ˩cԪywnY#2|R9:W[ec<5 aٚጢgr!nͣ!TZxOc;unv YE*MB{쁸Dt֮'`֔ ,ehHTE)BH>udd=;m.LA|#etٳ]Q8#+CJ?6vY~f'H}#S#}IEn4(P-Y' O/h:1>1/Oʡ7X2_QBiJyXW>"ܟfcNVGFV2`_{&"A^5X#󆶗=r zuFRpM@qQ2y|7dLPzzϋ{ҍ竖:]Wr(mYU!8p҂SnVR="Ft!zS'Vk{R.ąǖ_;.XX͍DN^e`}LEBAbmb"mE :- ~Cp9U /p!0SAu1*[ ]˒Ue.cF@L ,L,s4P7>o)5l@C#dVxOR kD&N =LҏB^ 6B?+|UF9mBYn'}}9 4p"bGA@nTX僠75P$-J\>"$w>I3:CDirXvMn>X^El,2Dj۾ӜԤ=ǡ(ۂ~-ltĉJQ_9EYƣxYe!;SŲ7 Ҏ&sj|"-aw'J{8ҕ\Q>XSIvwYpDObWtE{MU̾ \љ;6F4 E&8f,`5RI"^c}=%HJ-{zdR yeӧ"WQhrϻ};hJ_a;ˮj9 l(πc<0(S{ 5; ՛D/p E^Jv ¬ZEt .s3F (@c7q̹cĥ5P@.u2G洲a #n,:]n©8xQt: T6@vGy)sxV*Y q"P,uFb@M-!C(TJkUL7R 7NaqJz.sxn@"t)ѥs>6n`%=?uVIJ+uJ4{ 輺Pm{-Ơjf—s2{MvNP̻)Jp&^okiAw~Sffk.\8_..AUZ+ETHKub˂m*ކM0RM,)QX1qu~E14!AeFK"WwFdE}hR֣[~\f|+%X!/ʶ?QpC>Գ=hA ӤR"_b$qO[z0t>,nT: g ye@@}{N|HxC2Ipe{Ec@ZVƞZɗ'gRӚ?'B=8j1?DCǙdu?gw<}:{ /1VC u!&03Q4Htҍ`'y!dVm>jb8xK%&EѦxן3]P煙5p8熚3Z:&5LvCOB4bzTh)w!YAPRKI#͸fcEN)]~; z&?3䵒fm=w"qI.|JE[JRVFb^<(|nv&e{ν黲hIS\y>R[79? `k]ʨ&OI!y(PVyD.3\e ;&^G*r ;KV&lvͬzƭRY/E AszC >9&Y}&|mY&+`fD5~?vɆpIDّ@5($XN)0⟩H%P,4܁K'(Y c,=pf{BH7荘U1Q-~k2 J=ߚsWhMJ*pNp-`5̰2sZƺb|h %3g|=ޛ4(o#F@EGo+E߁󎈝YZu4 3Qꂃ@xo6%Ĥi9o`s]QFfHF8g)n*n(VcI4-stFP-wcʚWQy-kMvth$WK sݛys,D SiugpH3}2 Ȱ,o0aى-.8] -qoV;=Ӏ#"7e(T=Tzn #7޲v^Q|Q# A4LʊsknyQ; tbS(:GPpM$ہUɘ$I& 4Ky0'6q^zʠ0\m3hŠ DT} 6Pؘy[pG?o.NJKe>nY~|ƫCRĔH_1/ bk*Ghi)BEϥHs7a뤼2y矙G㉢os-]v!mOEၚie(7>s 3&bCfbmxro%k6GF>=*?q$3Es9Hnv;D>9i:<Ś0ڡF"ej(uY眇 ^[op\y]]d|g``4yn@C&EQ epqF{?+Mj.x)^2)ri}3&1CHK5>#[d/?tc= kܖ L,C"H ys$Z*'>/zAp]sVڒѤ^C M]C QVvC : N<6q~Q}6G nuL/+g U.uY{4'5츤"ⶡV.NL{u+e=!zW⺍JNGK ;LykTw 7p'7&C ;{Ne$53Zi2ǚ,FcٞTw #?ʵ1`J\tvɩ,AO S`Qz-}LA?O%d+B0oq9L^y%s޷o_%[/,8"Dzð8BPp)Qw?N(|GwnI"/]X:Ӯģ"՚bx}|'C4l+},ܿ>_DG}WKFI[gi 5oY]P)czt_ϖ|/˙IKv5<93!picDK_^xƯMŞraC:D6 Z {4"~V'џRH+`=qU'w:.*ů֏T̐ n elYZg\⏥C<[82l1%TQoRީmCP;RuajDly-SFEhzZ[_|ZuXU&ܱx sT] Gr2 0cVMtIg 3b6LԩJ,LPZ4ɮ~U6& B_e<z] ,Ǻ}/SB\ltDӄЪ&}Mtj$E+۳>)FZ!9ۇSig ts;oB~.6H9Ū7T g?BY뗱=q.r_7%4mICqqXߋHzOr <8`?;XH{GeLUl sng!GpKٕ19;( z5"52!bVdKR0M.fx< { 5]7e/vH!ˡmaaѵFu+j2dWa4 '3q5r"T~S֫ r}}Mw k~>^>Ag;ɷ!â{h]s($P/eH ̆N}; gEwԍ_[ ZLM=107-{ȏoɗSU骓FtgY93lᙃa^{R mM]m,9"-&#]tHhphTQKYlJR]#k)mm"rMfZuJf08E]eɄ$ju-{!7u/0?-.):=ږ$^_xGC" CU'Fӎ3lUgى ӂv\6_:< "TxYGEٰ5w9)jQ=Zdf5Ȉ: wnF*V o)~;)3e]!O%0f~=h!'%BNx'N8D?|6 ic8]pk#ŋ;uqS}Hױd"Sn~bLÖ5/n)Ko &NWXkG~uڄ@Ёa6hw(H912CTWAK}8[^5K<8 Ӡ4u˯TY*a},#v b 17LOt:r֦mXF:1A*&5u $` 7?1x*Q#Qώm*HQ3Vpc %ta\Þ7$*Rng,rױ.K4G*y+ϼ-L?Y"h~5qbT48(? u5ˣX[ݏ7 AwB<J `Ny) W)FV}Zt+ qb`c)փ=4P6V+^R]տ Nu>1AZ} n5UJ/̑bӛ+kQ&< ʥbS2mQ3L2\6x=Ro<y&fqFE$iv)_MЌu=|(fdgG~f1| bq` fXL0O[@J) .S|YUXOh>3MadJ#aEmD_j jҰώ£z%X`)#ա:k- } y۪T/ hH9 +2@7RMZ#s0c?',*6  K%* P+ !DscK/+t4ͫw²MgMDmRUaK@a6a61O 2&i c{ -VϨu%!L$\ب=~a~}g op?(XQ<Ux+xأ2͓/(d9Zon,Pyy& 090b#)-liDm1s4p@O !vgB'~=ۏq^\g?uc@SNVkfdl@Q+iZVfUf0 IC{(SJW=@.H [#&Fh|iZ.*vx[z\&k2SBlf2V=%u2-ރK s^H Vgiv,v ͜ܘ[w?2t< O+8Szw = f'cҚlhEZ Ei"]Pwx,'[I9bn,e^( *pk"KE&Oc|AW."Yr:/NG*b8U?q`A/#\/漩TʬLr3-ƁFgDJ_Z֗ܛt gb 。DR58Ŋrf"Qn%%*럾vB[-U$3z5쨍3Y͌w9y=!A GMoPMd4I >Ϗ lh~߶ Ii%G˞ [3) lbf“D Y!jw`"obU'6+ؐд?2!ȄaiR6|)箱./I>!ձ/wek Y|a, hWi' nŞqzZߜFԦI(P"53Cǐ~p 2^oG(`$|%E9F3u+2z2;@R RhNOkl˩Wf+º4tܯπKjڦGf,N^ kfhoKׂ#ewˆ79Fh3]5fh@v/3q?EaifƗUΙ|fKҶ:Xz3E <)c#_vX`gdrϖY2IHd L |"CVZؚsH`S(Ǟx̵],2&g\/oQI?3 oGGO@}/cMsXoѸ_*՛43_a07(x S?P^<"'Wv$z 4TdS 00t/7HJ/h)n>oМ7!^˂3 37Qu;t!?˸s,oڄ#`ć$V\f.\܁>k*! %Cā!c]{t䔦MpRKC`!=\̶2H<5]sF#,[OpqBOH*ypEqaZuwbGZˏ1D*nU'5z~@OG-/3f0pɈTSfBC䁕Ad7eyҙگqn^T ,z̾!Ψ$"XLF9szE"Wt 7ik=)"k0̡obʝxyTOvj)KY-4WiUB v pSLJG Y0 C?"pZ \Zl?P #&]ggQVڦs(Sˆe S@\]PE: Tve:y›~.EQ\Sw> Ozy'ܯZ(gY7ǐ ⇷7»(/:w͒+GOv9-'f~8+i_TZl.JȨk%Pg16vY l5uwk`=MOlhlSTsu0<9՚f FV9U,b.JG,dE( $<H0Xz#~%%^˖3 ;Lۥ+Oa.kU' {GbØv# Yd.3޵tL6 vB#T1-ep=JRʖL $2`f&qu{H1TBcuF,YlؽThYzNPkF%k-52~QrgB՝sIl(kF7SDcXqf9XnG/:}~va 1ńBw1]ȝw68齋g.HpȩE]{q؞:a^0QOS5ѩz+)?t=,-ks|J, >$%6k}Rp4_y0iRӠ57_dN op7O 7"HʼT ȝU<%yNMse%b wt:{zDr=Qu)g)x̹n Jkq_ir6>ЉJY> *!{"7J8H9MA7& xX`ClT_J)qc-Gd~fCWlЏW {,yNTGgUX0Ȇ^VχI@Gݡ6.ql8`$ăn@"L 3 Ә*gWAoo@Gfu/zK1:#7=tf d׹qSҡQ.ADzGA8@\ BeeB!슻asaLv# rжh<8SYzwZ/"119GxfWz&\, *2e(o`L|Ky+-OoEbO4Vn͞`:dU[hrd57S9a2R^,2|圳] D@`:tԡ9pj2]Vd;oYvM6łN and,w, 0yށBy JGdqaP654A]yvzJzvC KX[[+ХLQL̽n%8}tc wS%e\w^zcc>,Q+JP I/0Ȧ: 9[uIxPUXĪȻÂEAUm@g.}wg( /Dz$ȞtS2mwcq"/Y2t?+xZ.E2+@6kG &Qˍ6cu]!,ti(M_ř]IgѴ:Xw\Z~Q/>p C:!6T+'o pwD4Ybpڿ`\7s4$|B%9>NȫK釁>W\)Lvdt0ZD0Rr֤Lp|ü7 u8vq`b݆բf`}=WMY8V:W"=[DbJbj5fxF_jQe4.v-T.vL8kJf " Y|++۾Rڬ23F;^}K>,NYfUKOKeCS,CX| o`gUK)HB:iWltnǨV￙EMl'/.)V(~nu\&̇E˪S?0G~\Bg謠Z @d&5++~{#"gEjߪ81%| Ē.sZ:]O=Xc]:_>ج0KSZZ}O{DĴdqF>KDPvwFquJOcP.λ$OYֹB.ʰތ.M 6yU­ 75(̯(PK“ !9)Q9ֱO*9+)GnZäKOj&܉XQtN!g6yэce' ǏUma.3L@}9.pkRSi'G5Ӽ@rp^¡xd {g&=}6P3_dzW]k76]y#h驾EE T, өdjJ z1$n&+5Aۉ8_ CJ<#/,ҀܔYV'/H`0BSz'%qNhH[62HtbZzWtr&'V *#7pc9AF}s7hߌȱ {ɳ tG { )\a-HSqD%[6o dߝ=CrT,C}8'')hF~(=qt&JKMV.Wz6`J/ǚ\|d[8qK yRhF, |qH:=@{mOk`k.LJbT3|M>X\S6m9 btF:m̀F. )\0%qL9:mOA4W/xv-%ek Jé&HgL 7ʓbG*%qػXh0jUJ饯`}(#`ÑtRa(m0)3h3wB>'{]n?:[5+S:7 'q-"Ӛ&H淬W-knIIt׺ NlI-Tb<gymC, q< 0R}ojOt J7rDz1̍<LEowT`٫a +DhCIVOq)Dq$VJBq&&{E +*Lo ",l=̞!05/I=磆^B>Y8Tq6܁`CzDj&OSg@#9b0 L#+a"[H K6;P݂SP HphxUwca`U S \L`D+o*8ݵpy0cX; {m:0fgk(+O\I2'63|fDzG&=Ca g12sM1ؾMżDmNiŏ)Tt$%,$,{'?<u?*_Ƌ3Y0_>,Aj@2yޚWJ!&eզcP9/Vh+<-)^,hC<晞լq*Kq >&>ԼmiRBb0ӋxwPm̶ kçppXw= $.`F 5 gC>hBrk+=6 uNATo 9~,8]6":]RSDWKw.|-=}2DdX}HG+We7dܒ|{jĖJMukgH rؐ~ORvIFOb۹$BiKD(iGr?%(JdNsVw(?4wx(|Q[mY ^[*vB[Ĕ$<J R)i?{mi>' uծEClˎAϻ"Jp^5& 1/ˆQ/oU3-ۀ Ux#kuGX~L_ pť<,W_\93@>dN;G}1sIf1 vL%AxԡQ9Yht`\eֲ)|l-K xz6 wWE)|\VU$vH$H5weMq 5@֬TOUzR8 FHL(=gg=ādB\(41b$(<ŸaL\6U:($`)jЬ\LT9XwIwmf?Iy+0 -wXqXLJϸAy>ZJG](o*0$J#s P5/xщBL'ɯ0stu%#V Bڣ/e^yE{*N=vn//<%K:Np̈́Q|OÅ4.3}PAȫZʌd<$Q.NPRG'uv6ܩ[o8Th bw7p[ eSw,yue ʹ2WF "K+VoJ/2(%x]n&_rk>I;*U iSdzk&nbk+CU~ybɋ#YkrSIi( ܥ(B'kNx>H+$EB ݞ@iM[_id@0kdb"'G &MobPk_6HuDcQef%Q(QVpq{M6X I]8, A; j z~vfbJfWڡaͱKESJݨp] #^}],U\l_$RE1A 6a;0NJTj1} 'LXŹ\؝gD/|Cn>&krJIj{JQ%5sm枔$ 1b,orsk,'ws{i9p>I3~6QimrPڣQqYT|/&?tըYgt! /)nȋS&o6WL읃/ז@D:^'LjܐMcx0eJ)Y5iɩ3Oi*QMtg~kЧu_82'F莴=jS=Fuoެ73:(4ش?/vX` P='7;qnGKb+;5Ǩh`:2p/i )?4`\^=±3yB:JHq|`}ߦ3ӥuރ{dTZ=X:g1\zSk S#:F[v>Pkj:P]P>h|l*i2V @5l+Yl9O !)3s݌/xPҰA_ zU4E)]>G'NB)]  v+uO3?k $_# :1y] :%c 8-u@|:#U0ʹ3?MuYrߏB\7=]ܟ*Og$H b{}y(|0 v⼢|-6 Ilgu!QTa3ߤHrIjAe)S}]َI5]V<_? 6M;Cq8NGmfzyҹ+f {%&ūHm3i7%^%!^InoWgm9f} 9,.э{X:Eh;ehM(iԇ>gR hDwpfBq $zB8qCD=ux8$zhLy[6jE~k!  !]q[7Ziv\N;N` UNf/UCD=\&Ng@vHOѳR+!m~H|]@(Ac/P]+\R@9eK 2e+Κym{8W-ܡim:j3]o1@!\xP|)UϬ5 VEn>#vꐍ{X$LXxgnI'9 rKaLumWEu؊3$![CWc2,sZ[G̠SLG,{hNo% X@a0pG܆I';:wư,-BC1@P˵>&}8 qB`rPa<^F7 Sd}UrҚB݆#d^P9=hV*D 쉬*&0^V%8 &'y}t@f_t LPC$PLD&%}8QHr=1ڍv z~%9*!"I814_;K*J%aOI-0Uңц2]f,w_Q#'}!cq?82}DHoXoZU)[rKOLW90}7 z)<bۨ#@x Q7G}՗:+)nk}㷬ſCRP =Zӈ7V3 YI&\j'ozNx(FӂnJW-GVn>6(fj.1r9wor`8Z"d%$މG۰41ږ֖i=74 ,V:[遃 ]aS`FPa!Y%G*ZL3AK?˻>ū@$`&]q˕D[(>;̶rO|>Y(Y9( <1_ۅO3ChzqL+P5\5 \kPj1@ ioa%4}TXjBI=Fmcesueun%%g?eU;9b` )lz5Sk%),NВ #KOw٥Mu1JO? \6qndS?'81B ol %<9TA vmf)ópcw xF6Fs14; =֜R|C{?$ƣiVx~ 7XY7s[='`<@'ZW1!7 V*l4&+."zY+%{OǬ]$,zDVzWhˡ y@F؜9%Rr{*4>ST8s mHU(\8: )4_UBvE"慤@6y/kݚ'}zr-֣ag˭{Zr6uQkDTf+{-fmG[r"s1^v[ƈdv7C숝scu€ lXpkһ.;I FU CEc,J$ԫ@8W1iuVkݬ要i I޵g/~/`dԃl8ȟCci&s  $e$oxaO (DH.w<;^3s@{,#h)\iA4 Oyma5,@Fή5)h.))dm~ cng$HBئv:"(Gej|` *j\NUwAE W@¦y8HLG g/=Iy[~U"?Ul,#*ꥬ(NZOEL DH)ݼyᯱ:F }ô %eEA{:YS=H'Sb:W=e؞e5#tX|n#hQFp-CڀhqxKMYj^wP_(=d^ чD}[n?K&]Ifo0b,"* Ejfmo!a~dW(\r[Sv9ΩӨ/G7U5v9\d GɤWm(Q!s`ӼathGD)Ƴ`N0a E 3֗iޞMcS{aΡȢ%n߭jJcoM[Arh5q6+҇Y%8׸]\Fљ\&:\M^{H*7wslRGueg|B_/CĞ["3rhBjvA4лh0}UEk97QhW rv~MQVT Q#(JI{xjnn+\½?]-B2զ-7ml(ZgQ̠3&sڭMxqPȪ?ذNǒ\5ŒJ7d,;vs\gd #OъEk )yl`ˠl^Y2a;Cy~W.".#+,&vIumDUێ`hlTn0lؗ٫[+ȴmT|ocp 刱获fZ\ /eX{lHf/9EpsYWr8((9!WWq^VE ih;gI(,Dw!/]UZ2kM,b2a1;y:ӹR2hh]^4+h_Vo=,]m} b,}TQKli[<[5REuԽy{4VB&M-X݅ E/dǡK?S4DV35FLHFax!q-`?4OuW?\Ŋ'/;$*Y0g@d[g#OU:$%O [XT`&|<4#0?fFa2 |ydoNО`LaA=:@U6絚,QꋆUO51kmtFDI}p:!qNpw$࿅U+}cO6])`xX[]|"s)8+ S㣷͓6D)}JqצC4n_VO7,fhOCwa)¿~\.[^Hl%H(hgm7 *J{ٯ~1cq1bduZM4>xg,RW_ c V̅1I0BA_A5R<*(cQh䕢ATs<ɼn  I>;(* ԯQHMpNE}MU Oo~]tA9'l[5;#Ry1LY nk/*>ۖ*l1s7-Pm 9#cvTX~/!\sOY ]#xNU7OM 9&SWԭGPCY?uV%{y^(}}5%g%pK:V[PR69tR$θ2Fq~ mrX-o/>=Ъ?ضHv ë5>Du@("jHCAPP3L/@(:cvP1!&hO~NֺYsG͎g a:ue5jH}k.Fi>"BF7w];_=\R Zc~^ ݋}:;BLH2&Hs3%鱾Z{G U_rWk˵8Ibp?񒘱,0aY$(#\F)G%lJJm$fKXH.`xsfwC&b>Јkt](jzIhJ@N6jb:oDfߧ.teyF*ް_m;pM9'E)6d-wo=t$'v̠/ʻ9Ê)QݾX&+p,)U%lh#>.=J߻G W4 E40Lvެ}X>p\J2'n@ H6/\`΄_vѝRy .DaswJaDdC<4-XHA`0%>_JZQZ6 A_koOB@=>b%>#7PK1߃ ?lgK+Fd*|ޝGuF(W EW) l DaMC/6 o$A7Ē}zʤTmh浥(^/[ y:_ zR]Z4AoXb&$Nvz:M j(f'fiBAA-Y#DzGDgW&Wφ%o4I!9+Nog(LV ,WaE?,c!;ϡm8[ y+%UhܖkMUf_&Q$vO40E|-2.[:ܣ{ȡ(( _}X7ݱŠgG0<* ϘqZ)K!vO +gYQcxխJ}`[ۣ*N}"X/벿ܷW=a?2,"~F 05HT/АDu~1]=|mNu49nY~C(Wp`.uqɔB6Tobk_9F yQ&F锺rl |o\ůj[YCtb-AzQڌDEBA[= (=72<[FH[u ѓ;*ڔ(@46F C*ZV;i?ۮ 6UiN0x$8QR EyYh&t@6q#pV(8#98:ZO&|x^j>k簜hJ]W&K H cJBdI^9.]͂)݁HZdBdq0Qv1_Bb-'l ^[?- |H/hwNuMvyԬvCp{cB.9_Wk3l\pe?5;^Ce|3J={ E+sðQ#IgF׸vtϬbSZvm)`)aJqH scWgi#j 8IXc%Zu}lf$ 7y֯&g .}eW@OY /F/{it$!O-;\\m VI<6s.?\E +cp >{\p$px갺_F#~t^K8+Q?>:gl${} }X KI{q#ݹ =m M$cam<İ@R>a/qX!n1J7:_$-~w.|c6#t`7i7l}E՞K)tD(f|J E¤r_.̴ B$v ;#Z71wx~(b+:"^S|3`04PzigT4{7ζd:nD>v]rPw  [ k5Tԏz ?,ڗQ=]x`x7&sZ$\P y9Ts-^q;5Ṽ7sKN0AEF-.+_`{_x[['j<*`tZ L3P•܃2C 4j; H3L bGDdžEi/X!q%R_BiSK. ]WA1zbI}jl@A€HhYGdMPbyc<?&C"&~= "TRTfQ^:JXnJhýt&}7 41㞄*GGZF\Vea q%eQ{tqUpʃGTwIZ;c ڡK~8{5 >-p:CcY[t❨|F*|3\\Ud35M΋"u&ogW Kаq/ЈW^—thT;'7PHoncE~\H3w5ĩݷ4m<ڇ+ś-[^pO&ϕ҆|ooZxgŃb&pXi+i7٨CRV 3hWuøa9F%`)OL5g]J mFt }ݓq:S2(o3o1[1>lJ$?u/!n#SF]U(Qy2(1oty%_oRv(a3!^ %fޖk$Ued,=ՆUE8Tˮi|gkbLx\v/0-Vf`5˄\p-oޱͨITl kK;DtJ">lRZdu^GhKzip`i_Uk9>#B oľ|+nBěIur fT֋wM*jX&*[d5lqM`.5Q팡=EYݿCE*X\J;#}(vb9 EAu_蘊cmoWySM#+h j}by6ҷ D!{V)aCutK}c&Ϯ L=T-zٔnx`t~/"ٌ/SMKAè7C rxZy="jMٽXWd `|j]jC5A^pǨBm''1p͇yq{rOlQɀR/n`hD3qpDZS︻^ܷL"-C1dʿ03A0MnW\P0PbdKhMPsĔ.pɝǍ=륱%~T-7k۳ٴcaYh1s5؀ uP-u^]$0l2J8 R'DO5c fQ6*|A▱BHyEWk>(DX;?bE?> X?Hu;~ӄh5kpL(Ys'6ÐЦ}>X@T)k{Fyl&wѷx '0$ ban{?&iGd|S~A8pLsKDPOj9-[ɼ%ڊ' LdKpɧ2(+̲2 clPidXa˧B}R1 ˵G\4j6KĀzqhJT3=0 zTP $pv)ÍzoKXaIɳp=  vV '{e !tQ,*#!? jO,C3T[~CxY/gxG:V :2;_tlF/3~xQѨVò#J*aKM`Htpy-mSvG?o:s.hL6\ux@ HP z`-Z(m8սֵSAyEz|>ͱ6bnZm7 .MK@kHԒs}w¬.MI+M1Ak{>_  k҇W%6{JZڦ.-8wm:@r`{c\O'ov:kћv2R0G:cwUsQ)nzHg%}UCvrCXQ5ұ[<θ TEo׊^PkxCEUxLyLFzZLpz13Ãaԧ?:-2 &Yj~3ĀlExGk;[MNV9+ ]{0~ '+qGy#8p`!y\6(cLGD>$! Y#`1ƾ+̿GChbfQRJ .8O<.[[.V&a.wv7O^9hFM)4w23eHf:t+N^?2>hꬵGI5 x ({Ƣ: 48_b!8mJS:]fDa&aH˪3ps'6[M8#cQJI %9Hq&5o9ʞ YG&%013xXevq6)?ݻi X:(@%cM,R2[s4wOvxxr;*RYz1I71 c+idw9ojQ\rNu41S1[A܋8DkiSQ3; TE>iX໥>)xHRx{sx>Uk{3kg?<"zpYwc؛ 0RoqmG \GUĶHbwinrpc:)7`lh{ T֯DVd ) Be yc2#'dd`<͞U]X}hY:>eT2I/p`' zG#aY!ZI:x "eڢ]^:Ua3CyxN^|9v)52 ҫb… =sEĚ>+h,F!J#n [gNQ q/tT$*I22F!)Zx_mLj̕"v_~/:}-XPr*Y)6 @z'O7T.eF\ByB} mteVuo]NS{4$˸RRשуFf% D̸=h`bH܌a`A[T~Z^)6mfL:k27њo}p0r:Waɶ]pOcs39T~~UA69OѪt~mߌ#5Unb*E0Pϲ7AO(CiTcݘ}C\넬xeJIOV3@HCd7?R 16 1I<{{yehm. uOϮts`Hf7Ce%tu*0k-E8'4kȩ CX[q]6r iq:n_'dU{w%\e[jJzVW}WvI4~φ^.7XxaHilŁ(/L,~$D eKd0@dW -e~ gsݻhMp/ġTcPcA/X*D`x`/ 9sގqO\B 5 _Í\6$~h:jPE^vj 1g)$g\l8Y4!q܀HxT$!*xq=@bzn0XvxcQF_o֬n n `)./#}ύM|9+"m,S,Zh4܍Y&rؙS(:lS 9n{NY_UZ/Wl] gh}2hhLtcÕ$٪S֬]3>lccւ=ݬ:OyR8 Nֲ}D2o;K47k0~FPx4!F4+@>5F;L9Sm2Z2t `H{fR'2-ML0A04CfIwG,|#&ft##|]fTInKʾi|y)e M/&z"˘ {(<%vy]yw[p0+՟o^3q6Flrm9K?@b_qiG f'4v86PG&K v cޭ"MNViRߓͣٺUx^G3hjIykEY|j`H}/S[*u'18VsKWBN6[Z 6$׳yknӺww$$c=8=H)7mŀ>E #bT#gRvOU.o{x:i)U0_W QSB5Ž|7Bvw6Çl%Rzuzv0gH&uhK}C<@SS^O4fznT[/6Sd);E ew6Dφ)mq͠{ p?TjӗFT$oʌH lw5zވ?ʙ6suekjU_~N2:]q.h@ї~CXZLL2TFpBZ5=bdozZA.}#gzn$ĨP2I|S+ay󒼈RW_$zs>tʱ*OrP؜ȧMFQP$;æ]<k)+Ep=ZvF^63y<khciZahg,>GySY`gPvߩu/Zք&}#A}MrQpKua!օP+@47-o^|ۗ5vW9w3qd F&;ZHGMܖo~wQ9}i R=U` y I|&XFhqF<xj3r12 Q>Z >n]i̶**KPXߺgN,FwUR;U6X Z{Gn ,ySw3'@R2UnM'¶Ѣ~.`k: g6in:w-UIO1p'H8 PbF$χ͓&:﷭lq51Şpb@ aŻ 3TyyIIDU^O*IqTk3X~ny][ϥoY앏3j\?!ÜC%4ia̷Iɗ~nVKRo0G?O`eG\$Gs<s03Z)!#C Dg@#x -_lTRYmϮ\ (;;=y%X>~d_s?PX c'Rx7^ͯl[^)Z6eʈ^w"GלL/"><̈vuހbSs(nHiaOmzY T?y ,gVF ]VԗˢoqadR :A!բ[)Q ]wv4]xFv5w}ᡊ#ʇOI".7+: +yd HnSYbrL i1f152] m] 3j18{MMۘ\1ĥuNMt@d++܍<OLvKNdHsygRd}Nfdu!FAaZ/ :E؉W%Aql) T3t )^Q;(fkb11-gFv\Ghi%? ru{~Vh=? gR)(,8rX+` $]fzc}JȢ0l,U# 30 śHل+Ͻ!1\@S;spAʮ eHI3I/E`S[Q~w!w-x6CeIO'-r,<vnEdqU` M(lե`%)ȕ}m|0w~CKHPәyԛkѹ:^5f?tљGzZ 8 pSc/(5=YU5T2n?ZuC_#w~6"դDJl&"@lahSgv -6DWu0cTvQQ7A5rbV#M2yzT@:Jx )\_Hf%Zy+ÚRj0E%",/VC=`?¯<àxې]ϟaNiR5(G\4 8ܳħ yxBfwE3}1H&3&a kv*ͤ9X"]0*dCNM%Y Y =zOV`#(Ir7#?kn $3h!mLb/ 93R >P6pNީ#EMt ⶫ6L\3p w¢Zלq~u ø[ZWZ *RNO0@y]z,E9O3P 3x%fdhqnxEBLкeͫ:xR(-tr1k^91ys}clg.~:t5lxI;+*P2vn V7WqG?~iNѬRL11H־]Z-G7p=0j/3"+)OR^8Ŭjd!L^>$.’^mE/SlXeeaDdJ_+ ר'lZ/J;.-Ix=|<VR,7(cOնlkrFA 7U:e*j+с@CNf>LU* Zxl)3K#2&p=a\fA#܊Zt>VY[_^`^8-=~Ah6K@m8m3щKgSz!bND@a#/IYhsdӎ@>/o@x SHtrʄFnvrgG.k2*h1PEv>4AZ.vdbqgq1i1J(2G셦hucki(S(]vc?Dgc0'" g, `|qM\*)6\u VRt9\pAE fṓh|c^y]kUٿ`SPJ| \)^i27Y \; V퍔BFȩreunˌ=x[ܫ|#C]>siP7]=ɒ&VOˠ-~[vw[[(r֧1h:ڡ||]`yEelDl+!/XH󵦥 X$fy2 jo >pZc(@bэc1p`P0;?NZc[|_Ɠv *+:N8)UeI=g9]FDMg]; str#ZsF?6'`II޷S5Rb35g]Qwu 3Rb+%7'@\hPAGQWd<ʛ4qD Mz{'ɺFR'  z]Ɣ T| gܐ (abن!AǴU<{cH=OeJDjeRb0oմi5wX{zҌ^ό\W϶jUW'qi[rn:#@,b4?_Kz=YOÜ[AQF7AddĞ@lB{z#g.p$l m#iDZGy HT jqH#QS 4F(}dBW/@@k A$_UhĎQY6.{ PuwA EWճ0'lMu͢Z%y$DmfđHLa>&)U9FE^o{54^re|eKlk18yBG:Q[oO Է>zLH{bL2Vh^CQ\PDrgP ՆS'h53,+H0k6b z cv=TQ\ot\5֕ Ͳ)m$4TgqCX.'2GݑZi{#8pS,3z%>jx)#̭#-KOF+q܀2{rs3}vyX}A ՆVDob ,K**vo~T̉==kT 5pbB 8ͼIH>{{{bʱ& >ʊIy}2Z[%L4:R(.9icT& r1% biEӔXWaVLCU.1q 'b>d1~ s|jj;g3eێ1+#~VceE&xgrH8>uȉNVe5|eޛ7LKn˥ngG#EҐSDe;G0xTJ6M+PLm@?n^|\ޗSgheϡZ_#cBүS[nNĎ 5ĽM} umiF_SIPJ`lx;psii<f c}7q_NU`2Jp':GZ:I&@^_J<!Q_RNk2Yod'­ILmeպ1&/H-V0CSʹy:E/4\0GUH^C8VN%n~d "w'Qc* xxbڹ):K嫏kfof=RCQB&5wcXPA3#K"*+6w%3pӕãýO‡ϣ]8|Yfj*ްS:6p0LlГ Sڲ\,Q/!l5ߦRqw8n=E œ7ɊyMP29±iF]Lґr4ǂ3cu9t$]k|Cb\Bh)db? Y'Li8fMN%8eI ö,*jKdDb` /5{;."xɞF68BBrJ"}PܶY!h̴?K P ÷D3?V(s}yw,u\gMQ))$`GlbTJijN:-,>q+/Y!eDeqcL~Q_"2bS?槤u>e,MI!:9 ,鮭fb5UgW-S=}Dz|k[ 3Y=p#|dc<5evӖa][xi,7 =7XwؚZg7֐v):@bAQsɀdIh4!yfx*VxB#7y: i'(Q 7rL} Cȱa߻ctxi{;vn)e85B-_e5`D݂Y7*2ݺK59p(u6FxLfE`\YMZ dևRph Soo>tj,r 7pj^>񹆰:a? ݳE E'- 1 1.E"fhjSJ5txuϿSCi6|Q/n{dR,gN8 )69Ԏ/ϟ P V6xo<ڥU:~j`"h队wya>t=Ȉ)F+Ѳs O[R!SD4l;-JʍUplrjtl#i=я?Vث5j`XIChJ!("uy7-()qы1ɴI:osgF@ O. BՎDmuPqRĕv*q5gǏB2Sm6(tj;-p !djW[sQ \Y@+0sN&^*f,,wn|SF~#H/+/noz;c[mouF`>{P! (a{ZA+B[~H:}vW("&Z l͋䍮"I !z=)m& m?:>5Ѹ=ׅ+vKxp&Ʈ!ޔUn㣒1 }FlT=w&JJ|A%^G<@} UiJw1}do&:NRtiRqP[xJn7?*3aRtFC9{? 1\X?yv"~m L klpUqfƌJGABf!(.Ys:s/izn ٟRz;{x /}93d/ILV:*JB_y0.MX/H"9SUYC2*YQ.%!HtݢoG s#&'_TGH@Gjr@E#Q ה%|6sBMuRx׾ ΄u:5rDꙜolht5M4\jku2@<,g;\>2˭ڳµKjI2g ?ujpI<QTT0yVu"uQ'IyY֊ š{_G/*DGjY"z?~xX?{_BZ hBP&  ~}m\RE܁i [((jOLtB@,L0+zz/uLrs?iSJ"mdmE{<bxE_|=xnT qR.O_]R ,wMǝd J @} 4"N#[VyY=@0қfznSS8p}SSg8aRʐ }e]Q+n~ZN8VgQuDd,<4ilLÛ[=}= >H3~WE]e vj6{kua)ɮ;+܅ ]|8 98,>!ZAj-P\m"`NYXykq E)|oR/f`P- 1S0˷z?1S ;%@b| xo5N4+!=-lU-VݐSUsi@R|AIy#Gh|ҩ+Ib@jtM{8(P5hs(Ds]`"oE*g9//~ͻ6vE0g>O!k}]BiDG]½\-2B-C9wroC@׏ڶ=֠|C(+qN\e{ԑDw.@j)o#[׶yiէ!t" :LZf猷O]W:%)ml@l膽')hCc vsR.LCߑUnQBgih1w S\/[&^ʶF"{M *1CA _nwmr*H]20&x|lx⪐=W E{*PȿӧZ|٘ L{r1(ee{R\v| cX q/!v1׻S㳫gf`gȒLP:!j)e֥SBo&[ЫSH+TMp!בb(BBvSK?!sW~0!KĜoH lM{G^QpH sAi9MTȓLXLu}04Nu; ƫH< Z2*@A/@i !~9}!9ЫpQɡ <`ȑf<$̣ʩn }lΔvLkҎVbV-Iy׿'aG+!tgfd\s`B|n9u ,qFDe7AN46sr>qX(<#ݐ pFL&!S.6ze\醴P-bsO:Ua4rBY DE/TTvZI gYNôDQәRmQ~CtD+PF u<(ql&%<Aa)>˝+P l"8y|;lhgVt.o,j/I)`b>)`z%C&eJ!Egz~XdkDG*xS"1AoۆjW&"x@6sy8Pe 4t8!A (V'@D_4yM  =8a#DiczpL{it /ͽXRC28~>_:&<ieE>M "wQ5`klöstfh X 6֮0eJH{oPy$ZakD> Jn +:܊mO.1jhL5C2Ά\58ʛ|b@0sQ8 ŕgrnD_5@pB,f^I3]kFp"uSY](9FfK|2I*`rszJg~JlzP1 teLrf= *BoM6H[o 4~L~#wNWb^@+> Q4[lGf4å(=}Z QF'| ]<@)7ssM ?QGU_^l|!q1L.z/>h5800-Apw48Oo|Csǔ.SɲsWn)me#-/f)Oxo63 ݠ ^0w*t'U!D*HBĆTh8 R=7{=oI^_[_װQzt^"di;ȾzTXNzaE1C@h;sfǴ{hdDNPASb*^]/񁫉{4kV^S&ꋴCv/`(q-GS̀mT> a(yVWGr &qN4>!0\,3b[gDU ,lȍ!k$.z^ I8/%[{ O *I p'B( Dqw?P:z 93eIk]Jm?I>"80 h<V_JYD:*02}mj4|fwXO2Ww)1:#od|9@vvTŃA+%=+X;`AJ&~ǶuZ..qXE0\$bANx@͏hyZS宷gv_CKi q9àO9$1ܒlBmhGhݢ&X}17:(ATe2`O[hkhM ofO(G#d5LHZUW2{hn1f0fYGBYc9. )ۭ/ <À'~P:f,0Ytl{H2JK),d~㨅E.2? ~N触T]_8$JuZ22͒B&iuix;${oAuilIU՜ ,IhH/}+vY{lp$~a$[Ulw0 I] Jqzfm8)f`p!sX(.OAwȊW cgL"(;Y"&`9`2sJ>"h[!$)/ԘtJY`#.])2*;S#rQY+2J l;\k2s{5 ~mJƭZ>_iyf]3Hi Gl4-n)Mo6Q8>j0s_kw_ۆ.\)5NS7xxBF2-:#qq_r9CVi|ex>"3cY6#'RY!&C :xA>D{nHm(W,g)ZݙȢ&B\#ͪB4.7 uRCʲA\͍z`4ȓհ.D.R;&߆἗Iy9W+px^m8u3=aaD%-FD{MP$Xݿ6Zb^ UlEjf6B? #h稑B&4Tڦ_$ ,t+^wsR[;Z"_b.Iy ta1Fa&\MS%2^ɜPmuB.R+޾2%LːłPu|\7{3\gv@;-KmԌ"3 6m5V\J+Hl풊e^HQsTi-;'{`t ؎q<{w2"č hQcʡBt2UBep!#ݡtdDe!M'ʊ%a䉼74qU$b1`Zȍ$ \.8 (b OCVG\0lx%޴2 4BY߯]s!_QD7Sn6"yAP4THbw$?KþGO}˵I\uG>a֑_/|:Ԩ fgoٸB2Vɇ,%ʫԐ'cԛ jN6 2VP8fAWe!$[1$=EҢwjǴ.6 C [D V&#z1Crld/중UMOn)#]uPN!eS>6@jy<Z_M3uH<)5+K`A`,BIz.tT5k*\ż@-#MN/n0[ʡRjhec?R49NÅ#-Cz4'|q?4$K)"ﯶiT^״BJ<0@KEpzƊa/iU-횳d"`_=rHfH"%K=x5Qj^@n$|]=rDO5yFC!6qC) `F{N_&:ߵ?HJE ;u wГ8Mٜwτh`˼$isTjѓ 5C6]ޭZyoA?84p( +UxC]7Meҡ`_$@!@3oe\?k&!i~91OU??Fxn'T&ɂROk7QXrԑ·mfF5r!GhSR0Ve|W{Չ?E\ntk&s. (hAK_]h PO O1ӫ6M ekxӪWP!MWb fl+JD1$%1a1i 0:;5ڻƭ$5*uw4k;>~+`B̚&{plFbG*!Ճ:oXH sgI30iq@Li@NfIJ0i] X3@x.4B"815`52 $8&,ksoIn^ib#ԑ4n"#kN*t-԰:bWX,Rxtq!Hx0}Y j=.%7njԇf,ǸP%e{v6 & 0, !㵺6ɋ)/$7æ֓n}ݭJt8&-3Bi(T_&0'q6Xы12:Ӳ\]`t1~Kӌʹ% ?tED%ӊl`0Pa[c";H\T.% l!n|Rt3JK?R8+@?ؤmTq0ްHŭ=rEEꉲUW} @ Q,s \O ؄ЭY awfsӓWƔ?CYq>UBn{G=zoercG?\]hJ䛙QlߎZl`5VY[hENDʸrvL20sGxӫ6W5A4~K*\#JQYea9;(ϻqRۜ~&Q!%uE7:Ǯn.a1n1K"*,l [Aܤw4,6G|^R`po(xGޣUxEn->_#TS}j?G1Hǽ]ssP`^#ŶX2_&,:zn*etQ`V9Gim+/ }炭|;/'ě$_ ;H-kO%>G9`PA\<|[S *nͷk[%_ZT695|L;-WJC#p+j\O=lJ{-:նgLEg.j7&=}+ wQeHꊗW2 vz5t5g4<؊';8e݄0_ ` a'G`>ppJ5[+LŲ=U ˦NzNޥ6D5 E-bo&^-#)`G>;bdAHy` ֻXĈc{t38sVh3Z]Am׎ݫmQZn' Gi F{;(Vh"@b-DDz%(4R9F-"=)FƊtQKc_4H](r+x C~~q"s )R4$5gԍH8FeјorXs H!$FlUc1Mu#@u|U dZRZVE@@0DD DTVs$`\\<9~mM d#UDGA+NhTjt=67fRDk4QKPNsyVU4`;Ni2!5,!~cyA2%=)Ym ZllmUg8z߼GВ{pWK-ȩb$c0zhpgiJ5#l>h0&u1 JF[>ѺHsa^A2֣f=xAeҤ}$A, S^ubI\ԣ{ zDƎ@r<È4+VVz1m9b9$H'z*2)hYW^2c4KjJ¼L 3(mH.CDA$ϿA&YO{lj6{:^U)[IXԫF[Z(@ ձ} k>m=H:w|Uv$|Ny޲& ήm9'x֛iJ츮*8CF؝`'1tC c Ud0U_mQr($ ޹:GTrF@g?fR`Yگ[:h 9 48++~ h@9 +h Q&e.mmO^ky9-M]ʟW$\}Y=Y:rLe.OȖ0 +, '.w[HTO‰sn.Sle1"qF~A.ޫOR O]!? x^,dˈYϏr>|olDl;?g/e#НnH5Po7TYN #M%%Zi*n/l?">nr`Jn2Ý]Qqu_K0޼ R/hE"NK.5 1ӹ׷|~W/<ʨ3{k'Zɍ~m}ZvZscFVi~bIc >:X[F5dX4$"?hfq[d.ۺZX Um,Y(:;$zs36=̫ чdrޞ<eEf`xfPQ̵ @BN)PQt؍7bA{%^۩ Z/[u_*VKtno%]`{Qzx_asW<3O/cX҉>Y`Yb/iQ¿@=r0j=do\:,Sg9. Ge#v8%OLðfwF?)g;14^ZyY:[;\sK XBz'~6n )i: {(U'M7e\/.Prro=6[(IHqǀ2Ϋn_6Eu%urfI@)F2/1=!H? yP]NP#pk/HPc%V*43!?ѽA" 6ǷtJO^lKsI QA mӰh=fOXRNS˺rVO<^~pi7 u& n_0 Nz#AH _MϒmmVF-jVF-Hv_n_Y"~ tr"ELn 3;ߥk4gKhCp*p]{ъU%/@.j|(C 7}ȥ|mcZ*8jrU皫!Z7KVx^cfb7eR ˌ˳BGh *IPWz2Z[T\5_[qﰍ,e\j4g4wSMt`p/Z[p>Ƈ j\P0_Zs [~:`!/lJl]"Yy}b8 -|SLn-ID"ܣfVM\s?і?HGyZ\  7 OKLfUv}+ز~ri3g?`Ѫυ+{jOFLM M1РF\6JvE&CR Zu8$3pZk޳!%3nݜ-}G`hZfx ^cWSbs'F Tm МۆwxelԦ\zY]K~QG_A *7B$J4Z%RkZIĎ9_*y}m[~h2h]P m0nlBvs$A¿ܘyň0 =$}>% ٙ=iUa1(^x'o,516g <*> ptnc?-V$zٰ -4T|ߝ:1yټ==櫛aJUp'62дӷNϨ&2Jy H.̝%PJ .߭7KD)sK@q.܊"&-ӁTI1mSQ@̖9p׍mP.@X5 2?3nUx:Z ?Ϫ*f= Zꋋe@# "9[$t%E-.\YOQe'oS,!&ۚ.Ai|IEg:҈rF1*v-3~5XoQzaxc턔8 Ńݳ^N&+ ~ n\uZ0U<{L5EaP' w/9d+wf[~9@=IUo~Ƒ<؏A)rS3 `5ռ mO҂b *y@mW&4#,3wqވv$^JD'{.~ZD\|M2@[$lam=NO֣kvv6SZt-J،5 ھW#JiB sW|@-s!PFaig#rycŨ}'A;{d|0xCƚQ`r.=sٗg6bݸ2KZ336Nƪ4! .bXB0L|9d@|w bƷY!QF@F%E|H& *<;N(o QIu|脫,cMޫI 궘2*]u7\7yEUL 8UcUׂed@YZ g߅(NP ϻ;غwBG G e<m-pv"*Sʭ8]D c+-7ީGҩCwLtMoR/l%b?z%0yI@G=T[ʈEL `:ʄ|6!3~$?o[|+ 2اi]07do <"~ʯx>\%ydCLu$p8v6˳,xd @VEAemq3wJ\t*i1&Ϡ)yCHmЮQ _6 - zClX?!j b'nroG­&*UυkFdbYt:O7AK" Xu&R+ڑmۅ˰>rPen%b(AOmUcc| U,9up,qpfu_J 9>~ ;wz-6QlY]$ ;43:jTG!V`ZK""br~%_TqsK -Š<> {5=m׉vV$v. rsRS[`#Y88J9a+"|M~Sչu mj1F_6C`r(d{h'BԈ :&%z!Ն/5?p W*tB^q@zCu¶_8c16{B[gFsP -\˫G ̞phmt#9 QzF_hF2r9יBEL}^oKnOh^jVEwsHIe1Dl;\'aGW^d7bX64Z7Lfl31*LB nT{P[ q!3fw')A-7aD%^}Lމ0z}U qg54o6Ra䖈SKt Al Tj2 JcFœ)?m+[5pa*x D_B,Ѳ͕$jbSVh:|.*լdE*s~߰ )*߻Yxo )tX ǼJo":a@CE@lqi}hpD lg "uZfEyl{LW0"DkdT]V"\mJ|F! @[k7uaQc~`JM6Eʹf~ %KOlWZO( tӃ#m|~_Ez;g@F,n-wț8-R 'bS7en"=_J*eg/!̅5.B %3NN,vrdg!}”SqE)"PbԨŠxv5T{Q%N? f&a')}!NSlH H|m=k}gC)&A1LN~RVV%MNѰhY[[̛0}C)Qom:"ǵnN:{G!Y]!ƀZΐ9̕{ٔj3eرiUh[b;k'4wt˔']aTU7 ^=ݺg'|:ujnd#@MA ј rn+>q7/|9@n)AD~_u\&bY)X֜M vt]y՞B65tRb̳/U`ܮOGuOua:KrFۿq,*uQ%{?h3K _K3N%AG 4R`3=W杫1; ƕ"^L֟0]JHOwxrmݵ5/gR61>خbJV↛_6e5`fZkSl´7j>)~%_4"{A^:?d %l]1?k(𒈿z{VVP8kLב!LEGgKɵQ(#bPM"·Q:l$hN3HwHT1Jc&֦t"aZLY-*32%߶Ԍ x ƕL_ۢ#۱N jֺ}mϗCK#qRaaʨK7@m$mO1 |ߒ?>%cP#rÿx+6W[Z'S#rɳsN%.eZ¿>\laog|5.jx4-+ԈȪ6D؎^Ŏ(YQpyFX t0#?alvNظǔz< ~ԣ[xaf1ZNJjRaKG4Of eb~=/L:MDQCA[ôuDH+lwCGp9 (ͯJ|%FX,|w3 l\C‹'cC9bx?("ui;'" <bik_[EE戙W)់(%Uoٮ'>*afа1\Sc=S]Hr;hΎE~7@K zeyQ-W-AEK.."YjPဩ 4Kg[$m[BM@|7$؀m)/Mi P>- C$5X)`Lm,o2YRHG{-+Ywa4${8uDصx;xwAĴUytGU 3wWY 1aef6xyRP9$zdJ*; m̝! 6Z9d:0+.JH }:c(y.$x hs&m0@ o`suLxsuvEKM:%_ޣ')6wx)ߙV' "H+:_`[ʌ?DF: L'1^4i,_WEw)rjE#^|G1IVի|}yH _0'}Ϗڲ07.셞}U:0+,(lsFXm?>r|KKi 8Ԥ\~N3F +i\p:=b>4F̩h3 b}Pי<%Ouŧc,3ehsm$٨|XL'TouͲ 1GǏ)9 ӡ| B,KxZ(l@K-E(gƩٞ|a%] ,!ǿ]I/,Xݭ %= U@߸uʕn]IL= zG8[QPQ Ʒ BFMՏ]:)`uyѥ(bؒMx0?ʱvU87ME8c;9&S5VR! }!b/KV|8i9N`xY0m+zy>'D61sFDC6xaELZ\e#Vl6D%pྦ_}6Mw)S i;V"0 Y1mq]b "ȁL`YV'Ylvwt;]H%R*<#}sd5y(~44}Նo\z$eqO:܅tJQQPoÁVE!2iKVsٜ 1|#7d[!š`P'}e>KMOd9NZu')ir6]F#LcE}JW2ωko& E{{hP]X({C9XZ3A P|q{]sȠAQC3a E W˫C1LW1m<|HR7LKZVm{#+[ ~H N=S9EswU1,NmZPD`)=mn=J[Lѩ^ZN13 dsk)+;EBC!dr4HM3g^ UݬeqPn ne%GH)(ݫ=) z]+jvk(+&ǜ4U>[xG`S:[K״|J@*b9wk5vn?SGn#k, hjoi-`ὕ͍U3qY?cq"1 i2?AVծ>켴 ^Aub$RmATR^Rp}l x6{ꢆ4a>*qE EasBkAN) 0l6N^0T-cƯR7*8^vJ.l,v1ưj6Mqz|0dϞ!Vw{ ph.'A858j8inE)a" c1 WNItΠዐ4k# LoӆŁVٝ)Ga&2ι)Tqy|$o 8i;OVڨ> o0tf#B8,7qoR?bUa` L(4z,<[Adr桹!7gr,Ɓw!I2w^GEUƒ=" +G_W@P!1o"/6Xe}굛̩]ff Oؚ@Z0F5pGɥr$Xb}k7,O'IyzNfD?S ob͕-ʌ>c+??OCk9#.| /',QȤˣ9c}}Poc=T|p֠$hvܖpN,3Қ1˂W$5Q}VZ*=5Gh=o9'tW.&=MeyubiUWh5s? O!?{7 Џ#_!Z;xJøu{Q:["1Eyּ"u(U*B8A̐6%IdF^o'T*TO͕B`(%3""3k(Yr3c3-&WN@\h1C=V*N>a{ZؗL;ht/r'/r!RX9QGQkYXFwuAJK?%D*R:<"sXp4c}W 9k!™W2_|-XWarMV}l!*G=qK8rY0a`iLt4 CVMjp v(#=Y$X@2aǨNh0`}p['"ޚyvWs0+L#lp߶t'L]?j&vTגㅥFfĎ+s'lc)6Be7 җ%CI#SIGTɯkJ3 )\זΒڤGzZ7M[~x(.xA]rˆBnǔJWJթfýD# [q8s>kƒv| ۀD}k`+,!u;?4ܪ Dh7atr5 - ;r6v;s)ƚ@p&Pssd+t4 љŮ8S(j)FpU+k7Yzs4v`'Tۡ/xkWxmVVh^ZyN8:/D6/隸=FWk!ՆLZ gbn%֣|نOWf-wvWѾ^YfLPLH{Hy*&숋wVh0-]]NTnKzW[w9 +)AE'WcSA^Lp:- @Iv+ /*%;dHApIk4:h>{]ASe`'=) ^f/X wih;!Qc Vl%ګu̶ a3(?H#EgK_428lCdݒ(Z{r&Aql35ri<7+ta{K u{mA¥P9Pw @skpڹSG[̍4eOuP<..5SohbQPn_kzLO=arj v2\3-x d{u99U!wT` A#4dDS H:9B)&z! +]|?މEI籎t%~q>^WYCM.^;jNuѮ%,?5C-X5o?p_ :z5sb$5JAB+WP;%?b[b(h. )V69@5TjsI'ax9!;e84O~qPҵDct.MK{'?ΚrNe -uOF_[?=S?LF2iV@N"jpzZuӞX2(2 #%(4Li_,tq bT)= \b YxqnګRDFG 1*a_y|S/ͤr!c՗SD@r(AR~q( Թ-yWSM GPß?qCIj#0m2ǮvoP}^!m_HZ+` KA> ΖdV(.jh_EcX?,yMhL#P:yr)ş[1⛄Nk~ȜFM>vՔA Tv %   j$K`,WxTTPWrwںji7i^W$O^`H%+vLZïnI`,@v9lUZ;(Eڝ%Ws#rXtl \l{+^Rg<:J6)}&ZB|рs%vՉ `,(ܐ4y/VL/4823eϠJ"2?{2 i@(c\d|~q j5OO"-b0@"hՃZCkHa71Pk7E_3>]W05`=ݦ#25s3W^iL"t/&ZSo)V_t)X6;rۻ4JRca#CV,<քXU[Gg쥵MKExo-Qj/vn"73&GǩC۩-%fn z$:bM0ǃe"f!gQթa0y&d?^5DV*bvdS}P\ǣ:Vi.,Fdis mG; FrF,JmWI! 28>r>PxVb-!(t`b]Mnn8tL3J;:s 8}["sJ qm0۬܁\ȬL+]l8q"C0VW#3w1Ux qngL˅X&思Z]!Ƥ{{ uM˙K's] $acp|W~+XaGX Ryl̷AeP(0fN? BMk8|X~3Jit=[v! M'B1m,Z`),769 IqUr64lx VJJ{5!/ieT4z4 h(Afy.Y48AYfp68 \qQQ=OWw~]W#0Relu/@Yȝ!Q .},St"%dly Qo 'ahg!fuH%=mǭxbk1['F(R1^_xς}Қ./Cʫ|5iSt6I0&^*іcݼ'4huԏ_YYn!g̡/Co?./<dER"˹MozZTw4RfVpVވ j ̈́:g 1PnQu2U9n{1D)Ӆ-Dri5Z .C$40vT=#QՕzFjgή"A9c`XP.:Vdhq^' HI4w}wCFa &w֠BgCD߼uGB- §UnK/1ݩqp24W#*SZ;w ieb&tc1U>^%F.YGc5\'M{JV뺫 0Ӎװkh` lSexv$D7ϙsu{\u\XAӌBM5}Lu;R!HXl2UnV_5)znxxx3p'O>˅"~SR%Ǎ,=bS'G&gRq@]EP¯ PL?'G( Մ9V5>?(_׆ g⡘$5ijUiatǧحP&*}?{D l) ^Nd>)1ˆ&4>;Ռ |8C2L_'TD< SeR1cg*To+afo@Yԙ4BmY{6/$I,l*0SYg2|D?+K8S B|J 89#kgAT3w60^`gGN^/2ПIsj.bqQ}#A%xԔ~";˪IוԐ#;7SCmڮ0 = U>}=-)x;߱VL_@E(@1|K]ƚ;`U ](#α,<=#sEywy3!Ȭk eWQJo=ߜ!S m{O;׊N )^EşSG,j?{E|5D]~\'z2K^@ ̈́yBf:Y MrAݚwKp'+Gʒ_yWCǘ\ Gw|ɡЃHNz"4KiU혘d!"krgyR5Iً1k#LibB?!-Gj6Kޅ"D"EtbTer\r~4@ׄqX뾔~FI(30wOn鼟$luCfPz[G?wcdXFdk$ԝrۥV` p5ϗc<5P 3ଋ_㓬xFp]H|+^5T@͍oWt n~^!}gy^R[yO%bkԄ$EUusU0O:5 ȵ#CHm Xy߼5 ]& <'AvTKݥQ]/[s)umԱqW ?fb۬JBO'-ש==gJgc+#,#axAws[VB Au } r}8 [׈/*8fwiD4r3s[#%qɐwyxb6C?7WMW7VX,bQaY(WU)(ܰ:b V4/~Ud@˭KYSGG@ 4:E{o~N_~,`tX] lA V;6\Yd؏Pnraou4Hpp @bے k>lȹk9#+>u6x =)gйHSI(H41&? _>ĝKcIja\ \(ӱ ' "G/TMrO8B0sU2#QCK4McOL@i! oJ(qnNEѦ>ttKnY77%Bgȓ}qh!r"&!Zsq_D -Qϯ>Ewca]w ۉ)t\jp@ӫKsi_;i.(_o!TdD'!@/BdsЯ]Xl8[Kk'-M[>dl%Τo]7dSA=q,`J7-CSˬ)%+  z0:8}S@:Aσ`囻gEkqo uis{ .?3NUի!TKGV?'-V͢IRBʋenS5!LN]Aaɫ#\GȕJARr*wvb00'%5j7xGះ$% 1tnj.)( hA RLwyCOVeYuBL|YNXxD==Z{hE0u]v\J&eEҾgz~y:p%9\1w>|q.S\@&7=nE:Rą?hE3ՄxoY%W~Up#I3LM9 QO0 J6zҝޔ\|iDoſSlXCᒛqɏsxw;xgo}?[{f% w1uL ̘BKD<pAb;h%RY{/y4أZHb4N2HE":f=b`&GWa薽*Ea4+5qZ kAӻ5ۘk^0U\ ܡy?@SfOzEr.ӡp8H3Qђ&,\ci[yWP/ 4 B:6wwhwUf$8EWyLE}B$t |~{M\R%_mE,J8VYq7ZO;.e7- &_gV?sgl DאQ$)lO}뛐d"$Q]zw'Rj] (yx`ks+]gDXo2aP>Nb, ެ-5W&7e>!<W- 71l ͕PV?lw *Kܔ"8c5z85JV 8 )' hYS.Q/.$'{}e{@y;>WsZ iamjܬz*חQh$1`ݟeğ,)Ak}CRTuQoaXT@OF迺t!BqK&lPa롓b\qTLjmB4[PRƅyµX0 f)3+g?CTN ́0MmSU[,5zwt)* 2W㢫 '/)# rhZ nV2qB!h$kЂ, 0Q`+JV!mu!ZfŁK*}k$<",}NQ^09`Je0ߖ" r'RK1>%Ngc\ml\cNC$'J&&0 9[ghW.0Wf3S ([=wNiYS-=Y8+::x-oN{ bQ EWa>iuIXڧBv9nF (çƅ|P<)%;zgf˗t']}v'IC6X<,꺳CE ~g674eCAp,1Wǵ:Oc2+ I}Q&(Ę;'im=$Q%,#:WzP0e3{+0m Q(4-ir^ƛۙ m[48sEC3?X13-XG+:xD+:O9}l'x& ]{)lrE*aϫ>lv܇iwEU)@q#Ҙv_U6ˆSs>P7K[6}?h ~ Jt}ژ?pޑ+h^U)F>+4eP(^~X>\Eʘ|M8:ި@Zo@4q+6IBڝh2mM,zV(w8 gd7>umyڮ~RL{q{ͨ,erc+vh T-tkaLX#*k3ȝ)%5Ľ ;|B` (/b`5$ ;\74*a6ǒCy}zs]R&Gsn"A2IdB^ju5\Cf%>Km0\Jʻ$ Zi ׋i|B Ey@Ɣh>$ $س'D 6vf%iRxyr5i(JXe}[и$BGa$nöŻ9M^};O/iY_2k5 ogj|*]CX!mA #܄~dHsR|eUz bQw o؀.r`Vo %׊,*bۮCPnAA-7cѳ"94. x1J@N5C:@]`; x=D \׆n {_ 1uHmLg,Ly0neCǣf, "d{lr4mNjPy\#2VEJBx6fC6/sS{I U +ʱԏ4Z3N"(ZSt{7EO ^ tmYnD DŽa=e^Y?H݂ \IuNp-H,V\xN}sh2GxvU9/ .׉Fxi+ (p4 kBP !>KrxK{J@Z8L8=h>8TϘm(i '5xiOV1̃DբHe(:'9ʅGlL1, dG(-z ۡ-ZhG:ߧKğtS2w)OMu 2kF & C~ƌ1SgR/I)tDAlr[<n,YchGmfML_ h0xnZ4nUjav8wCD/ྷJ*Q+*1V * Wlj0^RE=;rCl Y+1M{rPJ3Ch<;H0%CCI /`~fxzWUd+f*,}'mj CO.撸X"AnP-sF^HM+9K+k8Hl*:T\]qV¤™(G|dqnA>nWK]E9hYfr4d`X-oLD3GCOA"Nqk>TPui p4B5qyK1)/:*"V1B7lV\U FaUOas\xMK=xˮjE{"9' V0Pΐm鯐' dѣ+vaw;~T y+J8Κ2uRThD|d:bbf,fDfj "1渋reGAF"u%09ꪒ5'w;8K u(g~.)4zȆRvBX⮫{:cR3Y@Iaq¡Zńµ as+=e쥛Er97,$$Fs?!+rOxj5:ν[. FǟF^͚cIͱRŨ/_`'/)] ROyDZ3#FFH1~K蓑[?ǚwV*N??2еhp$6֥@C+;NK"ۆE}F5QhP͘$y sYLjlL׆A2[YPF Q ~[ u{ 0|8io15Mn_Ab ׻|fL)cSd^uƺ!_ /BOtTa#P;5/%Г+da'S^dK:. %5*O}3i j *O ^a>94L.Q9U,e9=Xi_t C &P_+.^' I&Z ;ȱ"%$"R34PvTM@]c3<RK`^w\*{53mBeȘl)/x/v !۩N wxʇ-O·W^m,q;~eSI+F%-AOWI􁒓 ߿o7zvbA):"Ell$2л]t}bWRcy,CΗ,h9:Xe'ܜ@N˞iwV!kسh)ք,D斺aY#`2)EӐ&.)ObtV(]3Ѻfs+&^>pwGX!Æ%Ԋ?K)4̓xtR%S5&oŃ wɱ`CЪVDJku4ZC/Ik5*sOP~BEvF8+6צ]#BGUUzmsHϐ>S/:]EUc"i!*7A (5d 7,_Q.e:a}D-AcA@:eחTWErf"dLg`S +s wAm1>Y?!0c)Bo]'#F\bG!){:t;$#4YuRcY >ᐗo L ;/oQ hAJ=h!P>"F4 <쯐l"ro O^BZ*v֙`m<#)sA\ddRmF#^~P|8ƕqG#mxW*PqqWF&_<q(!Nt]݄UP9X۔`l`+G ,iս\ySrF)-RV:wpeIw(~iSDQEY|6~s N:̈ 3p]ɽ`q iՀt7"6~\2)H3u:kOfi^A$P? ~I޲P |ߟ$4"?V: hjʛů"BB;+B;/x!fq;6VLN ,THk^ ID8 ;.V Y u [Epl[ZShɖ-hВ=mJ亱wo"cg-@w~̬]V&{xE >^v=s RԊ˅Z jůIQϡRiT3{5p!zUK~gjU=y/r75i8tԽ_Z kSj }u1ۉ'Uo+Q,Çx( 5N<|ȃovҬ̭y AGD@c#c}r.{w=:XQ<٪+v7Mvިc->!BXxrZ\o`O/ țb~OE6i]6HFH5XﳷMCnWp)ⷙF8izU/lb}8h3QULuP%4 mfҘV)h"=x@'x+ps 2_=LN7yNoз#x[T'͕5)_>ӗE]rRy`& )gsDh>u#:RZefFktQ[1奶]|1i+$LDWk/;c+% &\mA' pm G0]E| D&m1";#8tro롦[c4gzHo[ىNt QDK3=~J^OXxb]ȟćN:GiqVyUFv,232[ytG5ؐ#xϟ wJ|z?}wX ]3Or>G,>S=%LU&UyE ~zƙ̤D;`}V#{WS"S-ͿbmfuHq&CfWm^v晰XX2ηI"b+h #LcC;/TGyVr(`2kk=sױ~j$jgc:#R)ӓW=ƫU rVoSd13, e|ˮ}ky=!L:r:ChCȲe);kcpJ&ZNI5$o[QZ~_M?Z~EUy Yd;b΁1%Lsw8((2p`Zmz1܆2vUlq$9e9j~IAX3q^26Y#x5^P6v>&j\R88YӼU*q[n**Beb_Ubp:]] FeVϫ$-E'NyuoA&jlzuAnj|FRҜ.!AN\-rC7ߦU5]lgĔ F˽]q-5}x6:F';ӍշixK5hٮ` oɓ@7D/n{p|at]\6=TI] =oD5ѧq^(_lEԿVi7`O#ZkWsjI|L':suߪe#^:4]gIp]dn0'؈/Y;~9z'-5 (i^FFm#L5'.k{ sP;ݭ L KkXoĉv|\A#cg)LD>tNs4efQ|O;tDkFjQ01@wYjs0 ` e'pɢ<#7CZG,ѭn@׵z5׹BKOנba3=O .*%lϊsYMg~. Q~,gnAz&w{Z`Ud5 r'<+ u@x{q7*ٮITt=1joJpY_grV<1lc 6Zj[ݣl95< V N*ױF%}A񀺘`01Bo_ߏ ,lzGMt|9Š_PQsQG$_{3j~0Zt>$N{𔺓zڍmMl LL.,93y(5ۖtj}Z1A6.s+3 ;‘ʲ:iP]2Lbb&l"LB`%QSz+Ɲ][#rٚmd|AQT+j"[%~jk-yZ9R뺶m2º-2.6H(ڿZtWvU G0FnA/8ґ^p.cp\݅g!4*}rLA@Y|qxḑH~Q6x<rӜe,;@6=>]籲l]RlAlDjn`I?/\K+%?hf,2PD:[-\ZsoMC& x5Gmj; BT8>6d(㊍EOS,1u­KuI)℉#սﴆR-(2^ hCꌧ }QN!Է &`ٞ)Zr:+X 5P cT"i2L2U9zXZBk$C إE ҷܙo)?AljYhPCe:k* f- XUK y#5y 0#^'3qb9VןQvbPjpSȌ6GT4Lr\ZmQ=#N\=Pd9A"J(| K e$nd `[#/ϏF4F1M(Lq<1=~>/%W"mz]nR^x9Di?`hå^e0)dz>;s/ –dO7"QaFO@aż->1T7Ei2b 8g,כU͜/,ـ*".~ \7_ڡF5cxYz,V'J Fu!5YBЇ)U)-6pu 4iOb"LJF1d B_p`ij9 ?e BZZXP֯,Ae x-ع0_TnEEgoD)u7v"#i+YNU:@Q-;/jF W ~9 ;2q }_޵B֣f\V*ůjv@55JnAqV4 ;EK`2# Co.^ɘ ::y9!.5|jp_+~8W CŽ :#YHWC  SS9lУkwfdbp]x~#9' Cs: ]?S\$exd2xo9[3F6ddED{xͣ:*캔~~1ԁ5Ԛ%i< ' J"̫ "?{$j0%oh8zӢ ng?E8b1{Sm'mKeq[36,Dk/Cg'w"S+Y! ?FM)XEN XkcolO>V?P䅋Z1ܯH N>&u\E_Gv%v{7K;^WkSyYʹyDԐ}E [NW,6"xtoAmc"̜τ[b<2Jέuqo  qjg mWwV;-IQ4k ͌6~`A;}P.O; j&]#b(+0g/xNr5&pG23>^4`V3jViR $D#e(0M+@:j12']ı&RzNlHjzQj//]攰OgAw,̟orB#C REIܝK#JjAm˨]G ftְ5yξ/ uL S38Ec]).>ߴ!.s1 1"W}0fU`aLϟVSON"Tӈ!֓1o ( nk{DmZ ~cͳczlZcNkJdq])|c"R&5gO!gW* *sJo֨c Ie.]PAA=>۰Z\>ղ_kScc4Q 7)cгvֹٺbKLVh- 3mBa`gqKi`"f*ރJ ?/J@]mmJ5.?,Y$m=jE ISSK,ہ5= &U(z QH&? h$&#3ᨫMOڹ:RXT"&ӖRfc`0R@Q{ΔsLȯ&_/R5eۧ r'U 2: <P<\KYWB\bNWnS6ԦQY_k%ſѭg&׽UJLjG˯L啂Ŭli#+VMhGg! ,Qe?J j#BgKO4vA[7ݖ/rU[ݣu ;{uU'&woݙ7uq&i؎h>m(x4p@^6䦦IO)!E6cReSu7 9ln0ZD!PG<΀Zc,R3.G_=wS1yǮ q6dz;ͦE?dCg7\iY/![{Kޚ#,c>WO[q:M+}in%U<9tbHox]錹/e? kXgVld_` (ROi<3'glA- 0u.5G=k , f'bA=ׅ?E^gEZl- [.GkY6$:(Z"'fo,I pY%Fћ8 mA,EFlێZ\_h=D2^rvF+&jIq@J\ &;9XWIzUQ-rJi},gh#T^bq-zt(0{񉀂o@v<|b FÙ*W FnMq,V7V~[EDAV`?OMeX''a=D9y@}04c'lݎV6hVY2!ƫ2y#q IUtl/x_Q۰;Qt0*wLr-~Jz]c:uK[Q`0Jj+𨕌^|O~oo`<?q&-Lw3XU?4_$ ѕ/z? Te(eB _)hkƇ:R[!2߭2h^4S9V>.&hNc =;"8% @Cco}}{(=GN^\\]8 xp=@JL Ȑ#*$Hm#=nyݵ(XO9=#R L!r9iX_v WU\/s%iDe挖+s 4h #B)?ޯ،#s#S(Qq/LwhrF^~FGل+_2>|*ae>4]zc;)40FNƸb~z,M ndNV~ʒnkƄ,"m;D3-ۥ^s|x'): y" zFhr-HQ1Cb36abȊ–o [O5R?bL,X|}5':iܲfav $(=DN\BjgɆؑSբfǤVR'}:<<C5]Dz%rwz*S#X3S.:*{g6'{EmNuk:4hEb=ǁm~wYIݤ;q 6~*9rZ5bw-o[D{_uSoXT@mKڶ=T ;]^K c@5WkY*0C㕪?iÔZ4jNYH15ωT:hү;N_M3+Ro%!? kxV.RVԷZ&i#hQׇάeo1*Ӈ6y }RWKNU4 O 3tazΏ釃1]Z9b#+w\Kek){8fVuWό.G"CANӇ{jRa}g`5d"H@lo&>>D%GiD#ѩwɵ=S-^.%=-;dL-OE2|cL62?8R!ĒsGiB%D6i=JX52 7kQPkV!@q4Q!4Yn ʤz8hNیSnKFVs !.D>|(X,aNt;W,#8*X rH dHvZ(K~+bXbޜ+*k)y†h p?Zj09Ky}h )n-a{  J_<)QT!S+3A6)&ᤁg,w)nSӁ%Dwp]|+Nn"V[^NV#yM̉H_Y&' ! 9go|:"=N9Xů9|JKa|k% \c(l5Oo5W;(6-n.R֙CvG.Z@5Nwus uo rM 4{^g?7K  SP\_V߷+SL/[!0Bn§/Ju4yaQAܷ~lSv0DU Pi+n ` &@FSjakZd!s5ȓw|P朊`eŌ Q:d* 9@OaqSQCM|*'-!}L%H;3>8U0"}RN_yg`ЊQ9ծ_Se05DIeTJJmX(L<`W0=&%F}u&zJO$<$0uv WpIb9HXcad\`h@/0F}g)Cٺԡ4RxNՏI<.T3'tG9cp5YAϾsW';w*Ā@.H[<*k9@rrQ>Hs5wBp(T'<]en]|ߪ %|Vn7܎>$%МCJkM۟w uM'U6fH>JL3EqN<]f_Ęl~}p LN~qCf4L+l`ŒqgT Kϕ;V]uSw\0s#FQԭ{@O[9$b\Ex+v b讧ާvm_^yy|a1R|nO{wb:<2p/35AqǸW* 9$a{-=-[~)߫kBOyc&'p$`0Ue]߉% ?RoQ( bJvJk.p뜥xd-JV$`@珥bv9]g2,nJwbK'5 љl"?kqչ.sԶ劦0W%t@u?(d;jIMg5ATI  !ZNw {&i5_V@Z_?x~GfkỸuc^I0]u—U~tbB4V+_=PY!UޒqI1;:bh?bdrņJB{~a]3Fb}ߛD^ Zlp ƿքQo/mjB۝Z:`, ׋r:Nsr3f,&(kuEg"GS\WzmjK{|eH?K wso,x燆1ij8q 7ZD,ؖ5/6FL dӗl)`Ct"مp*qHU+Wge;Z)UIblQ7vn&)2g#$ -r;LƉBKz2f$~S";=ŏ ͼ\`^!V̌0ظ-E:Vp= 'nTJ:E=:e"/ !w]^QV6Z` L^>=;I s[ٸ]ҕOkz 7(mQ8~wWi}ͣ{G%V*)ܢx\L$ \pNďVv&{!Av2atN[ysO&L޼Wt~Op̅/XTv%L:VvW[1~6o3q bi6sJP%R rW\H%<| _6Xiɇ9s; 8ۀa B3s.pϲ7X}&L J0wMe /= ?^+ZH s-rwUI)?qT 品 ӅӗJLz1ե(WSh z:&RygA Ry⥦9r8VyOoB.,BOk[Ool8m G*0 I(.ˡ78x?eFwh9FԚJL55!e[h9d XW3iDܵ3"#.̹^A7{! YyĚ:JW3k  Fsyȫpi9ڳ"b__1-h! 1KHǝɺW_iCòٍ"}rj'Rra3p|MGW&35Zm>KAg=|ҘW {1E>xWӋJXZOB[0C8śYujH䩮*(Ž"Tpn`'1;+;wi}IxsM̅Q8Ao'_=,?c~Fs[ Q-KZ9d|>B.>i~ I֩-rTUiCѹ#afi%1ʌ$'o9!VT PPYŘī2pGܸͼvĚU׹qӎ pu͠Ax>X1W+02Vtz2fMxz`Mksjl B6f^2@܀'[HOp9E iqQS(ՇݓwT4Ni PlݙuFT^7Q =qo=l !'..PO"!ĸ婊=ShD/TzZ5}DO6waujm9*ętޖE$,q̱oD40k0ǎTYV{KR] DnkF-LIA,k6Rdt APoXhyCo7PLye0ӡc&R'^VR) }Z0^TbD& !}!|'<~+0A3[è54\c7K KZz.8&KC<@&U!I$1KQKiDu2ܰ^=5޽o?t%{ɽS猿% Kˋ [E 3vm1"H`Nk9mo ?8>"{)zB`50ڕ vW4&7_#yȟp@ͿӃ07 k h}iDMeIr%+ߢaֻk|@6wPfƖurs+H O tL_Wm{agzdRVK.nTe(c8pJ`rCyjwW8k%;]rKls/fDH,Qk͡oNR&@ ܌+! 7*GbX}N`0F->V& T**&g݌$ `~uE!AZ7`TA) 4WB'"(wXv07Gq-4,:]5 fE_V'C =M{S/+` \]ٶ&ݛ \˫Xa]_2 v0H`HF~`eY X홭Q*/JMQ >"SGd  t$i`#C)6,L )LbETLUmD6ҰH]-lwRtv `Eі`)hvߴZZЏXl+٩^@ԙB-P iҽl}2ys: 7]kRmzJMmM~ x]VkE}TJܜ<\̭BN4$$!'u8ZzMp@/n4NQXmͳސMibL+ J e3!&k(>+l|*Ȳ|Wqp dOE/7 "㸤FӒl̮`3!L Zjhn HacY—$' &(`Nޒ2 0R}ihzA,I hK ,3aƉhLͭP>:0]gy- e}\-v;Rh;?:E,!lcaz_vy1kai׊D+ Uʓ*bG# }`ny-3XCA3eG^ۗĉ)wCQz:L}Nr(|ӈ8C-UH CBx}VCoi03F/ǎ./(ǁ`nj{M0UĪe: 0t>:"Qr }5d`t\ض"j֪JVIimx}L4Ht]qZ*S(r Ypz d?C=u)Y=S|P9BBYh7;1>G,~: .Bert:3YAbye6mA&ds$qF2o  zȆGd><|TqiuiN2LT9g84(l W5G Ԝ"8DI~N),jj/9Xs),llg"0\] W]u>~,h7r O-aԩ\angyݑv! kQ8{dy`46$UY:Yf<^QGrVRWBe~/]џڱOF{"8FZaQs0VAoV*r]5苜Q(. X'[.g[dqtv _ez. " ) ݖ&MKnesØŧ*51:GTZm9ȴ:›HY2tbɃlD`BjT(xnq׳j}?\taJ+d1mnE1kPw^9'+rmɐ*i8 ~r n#=B9ay_x5!u€F(KU?uݴ|DA!62'ޗGh";:Y!Ԁͨ{?*z6>l1*:sʹ@B_% h5D1B;Mp1Z̥ozfLZ/ٿ@Ldlh1g71Z䥯yNDwڋ-ssʡ F:T")t ?>K‘b`?(ېSsƯQ_hy  |lr#3ZlUFw[dZKƤ削{&LYտlā8~!}.ii2̭1Wjzlg(j,|BwSsm1V@ 5jUNl窍q}|PkS$p,0QVuhY aPMBDڗ^3ZC%<𜡬iP!i,527Ȳ&mmc/1<VWd? R#eU2N6(T\tS*RUyoGˉ@ /Bw>7LO|iwx#EWRO12x$ H׾JgF(XE P28@r;prh 2ۏv_`ߢԍu ~]Ɨ+5BͰ`*<*G݅-qd ˣ ϾRQNT?hkN`{x!O[V"΃\yVO2?sea+jI!qb+zV5a O]ZzY6+Нj O !S,GEw2V&|X`1Pgu @qpt}zq?kI쓺ў7TC[Yr7$;LɊqe}뵬Vf9߰jUM|;boW!Fu8 K&VJ!]w9 A}wʪpnh[ C "4)?{jmȵ[KOibx, '.֜C'Be΅9`=A)`>-eظ#m5HRV3|2xJg,-o].df@ySEΤ"ᩱ?HoD3=, {z*}>Э:UI(P >p;I?~E]  Ìؗ7uKWk 9p2,(Gx48̪Įt%rQQU5E% ):.*]z^$Ӡh)ţDJXVXPSE\J8YHy7{5-.ʐ|ie\~k"Kb& (~ G[JE4oF܌yLXx%9xWYX>%(3IR*@P0Gڤ1-eOT\ZD`s #;8;2=MwμW O[m"b!sTggR)_y_K;p`CL1{oG|k]p.%>>H*})܌q:sIC|D |Y}NmZ 9,54{j$h韺ğ4jZ(t׶6W.{ |2(x l4o xmyXCՊlif !jJDTԨRI<+"He F'|׼ro: ::c("{n-ohhÃLXri@!R^L>[W W|2,%`D}V,)['V3R?w,5(HmCڒ[MzN}2z! QFc6#M2+ 9tޙ.26n=4Nx@bR>ZP'D}(\ќOQ2!w3"O5]!ؾ|,mI Y˻ UY$ d*@`*>8`Fg#Fv'pzscaE/1H3$@@(A'=j"׽n/D{uղ(o,VM0oN}qZA:{+E-$꠶fč"&:ʠ)X/B YW1Vj<Ў@I%O x`q7E4$Ǐ#wL&Qm]']0%:F&Aη y-MU2)Xl4@l'ޟX5˷N^DLAMI@q "Ȩ#G*Ak#HW%-j{B...? $>Jbe {37 ysIޢi?yb@V~ΙA͜tB>Ye!qVXة0Smc]feUB ⧅QDrMp)կzufm\`rE}F(ő޸{k0GjؐF 1 VNp5j]j"{Խ0F(D~5de  6 &i,*oޥ+ZY棱`q!}(}AV+Ei[i~=M(Ba:UU sNJjI.+{[BcTsty:3MQP YU.l #~7^G5~$2uHP z"r;vnTÇU-d{ys"i6>_t9sEOЯ UE'#i5Vm}/![OԿw0358Y3\Vױdߠ"Y,qI^)PB}pd? vں@*bPB2X.WV V!EE%ڕ?3uy'}} +pP/3 ZJ-3GФG[UdQwUv6XGOv&pf`(R1M 16XuF$A,ި] 􊏘^yo}h<#_j6ob;^v&c[nqQya;A_`ZW+?\g@>u[*:z lK 0)|),ۓ݌n\g7`7YfVđXV}-ƹWgu$2\G}$H'q[V,.C2sp4W6gR֐<"Eo*٘B77d5VGX.p5a95Zw.$1>rMZ RU֞=wQ/#U_h"W S]"C{&9"[#5駔Ŏ']#mWг@p7ékQfVkewy޿0ʬ$,2@tQOwg{FI~8U9.r_tl8yYkLm,h%}$"%2~Y25-;o,Ö\B "W>U}}$-vk1-ͫ<^Y(^eϚaJ}Zf@e/<3ƽL'  vș.W!?1?,.n @yP,3-O'ܹ sȑAp"A &8F6cI貂Fʀ+sXNԒ8"h6i$H ZY4†%jUOD'ܗ u./'mp;tzꤥ|yaK"j藓h(if??َF%`w3*SC[B$v0/]Q2p3{dz5{4ܰ m )i"?^Թ;5FFH)X,s378H)8a(&D+%j>bY6[<4(gh|D lDt.STXF]TQe+JN@P.tPAWd{ ӕcǔ֜b"aOۆROgò7*\$)zQ4~e!Yf[uj3,&q9Q^}xr9#B;r"wpW| ZM>|K Ym6~*b'i䰰/VQ s6_iIbN>4jJ&sVACѼնW<HU4:,;)PinɌ$AB 홇Tp#*'bO lE[C(k&*?љ0s}%dLT@ޘ% A[h-Ixr:TDtB.A% 7jW*1b&AeK)uUa [kZ'ڵ.V9qMr]0?>ʑLUFbr⩤t3NRY@ٟW탡[%%mc"HǨ0(FYY3NKĵ8<+ZeN-ݏ1T]j6aK{b]{ѳnFYps}>=|L%;҈ (5ОH{guVIa*TVSZװ͝M὾<x-lS`V=44^[vi0%L סQX@Sj >[~Y}lz' R,6/{91e{áKR`'erY eJ9jJ5-=17O<c~o]PVoߺK/ 9 9vy-*\й}s`Syv =kǪ<QSM9p:g QD!Eŝ~^ Tg:M|' fm`ؓ 祖^d^.e)41$DY:,ԈuRkU GmɽjE.pie >w}0Cm/,hAs^Χ2ߞ}xb۪fE! ߇Cjl ٘t1$]\Zrhp0sF1;uAl 7+|V_>n[=I\!\Wc tb*D[ЗgS5q[@hX=iñO<wL,׋AFq>KQwuvKo1R_T@XQh1߰]%wim:Sqc AR8a67OٟH垐Gg 촙P6DcJǜHR6UЌ@GS&;ֽ І tI_3d7=8~eʐ՚^r60Og 2V>6fc}-*% =͑WyiN]HW AMI^M\ЯȠAN✥ 7f)C~NJC89lgu;eItĥ;;_<@WdQK!r9o$,]`7b-O>%%j!t"9d.Q5P#3y<~\`? 1Qđjm o;}Dbqֿ zjzMgJfǝ›4sop6inDQU;]9 YI u5xǠRsy)5c/>і>8 aFUGXG;Rn\WMr>ۛq  lU 7t4M>>PSRև_P!o#3Gؼds`VD*OH3WR/qՑvڰ2b:*$*.93kh5LN ṳ!{_´8DS#QNS[V棁|v:PP;T~?N5QtW\vI36آVޔ JI6늨/9ƞlBLǐG?!,>{SIͥ Jsڤ5i'%’eYbvhʻ`<=n'<<32{)/.qwoSfo,rWMihЯg$_[#P7g?Q[5}1|md?a 6Fc+CUkyBBI<_}FZЗsfͫ_4pWVߣssݪ1x?rIhUd ,/'($ѰXi++q 68uɚj&fZ.]6 5 b/;bɢOWϤVƉ) 0,&ωx}N~V_>qbdt,nٿVV)VR9Ql_x6V(QqjwTf˃o336щ ){.-+!~LmQ!]Yլ7NM/HT!u#G o~ptq|Bڏn!*+|aZՌlwN Iq*بcAN=M a9 *tZ.ALڶdHL& >#]VT)E~I!)/i14/&/vZ2Ս;l QM߷hCE+7شtzpyB++Ǟ}ԥ9+'%NjLҿ04^k8qVe/BMeG` o!:P-\'C& Ĝ9o,WQ@,0OnpmQvK' wĩ Vٲ^ttȜ110͞f$D\mh0/&}QjIZygޯD[f3C~ r=>iwqS77\#/5gDusņ`p8'YV0TȢ d~U0! !jwaS!\{>^]OPc|^6=;jpDzjF5NנפBMKh˂Gs.pQC$m~!R. 8LZa= bbeQE%L"ɟsn=/y['^"]Z>vmOJ#[ux 2w QeY5?҇UntGh *GzBlGpyYiQ<>&K I 9DUR(Dyo?\Ha sT YM׬={"@˗K2% / @ZjQl1XEXY٭X&N,l<9b)|aL1/R><ײѩ/3 W3So¨y R/b AX-"iqaqn?{Y3MmD];TuW~jNF0q$W|.VRL/:8z^JܦSŪ+5mٱ)k]g/WW ~ECШ/%w؆T4K-DT!piYf:MXE4ahh!FO9)b$!\.?TVn^8'*P4Nt7tEݣR["ʸ v>Cy9eo &mW9>_iZch)>]S#ߎEi:CW2Jc= hHk6+"yNQnR!SoF_$Z7M6h3\P160 ~ۇ#>0]࡞o@9Ur#[OBcB#wTXN8l7tXSjπ(2YoSm*E|X Z!twLн9*{ 0jr]~|Y2( Vt;]zvg_ 5;=2. {4E$q[fR^1T < MplPqs|\GMe-}ՂqV-eƵtjRf.e. }^a&A]Q^2h+.C><ΛR5ߍ/k- ەP8o/5G&SԪA\VFNRnjO,8B|+p"k'vCxpY1ߚp;{ oZ-Dt,|\+d_'Fh%nA4CXF[<$~є+1{Ԭj:%k;eF"wiھ\) JPRE%6234T8ejvn3%01]s%Pܬe$lVv;)b? /q]ϋj$v@u.-`u|Yp>f*LEre wzY UspKY19I:DJn6Iv dI77']jL\yi82'y%赌whQtB@i &|(l*؝$fx(Gh8,ѷ?*qR {1jbEf,9Hxv0Tffĉ@|ӫH/j:Mp,=43ɜ.Tdx[I~O}9ԟfrBq]Yn M o.M ijT~xGb)U R+?Lxck>=.ՅOo3y|.+ԤwaJ ӟds=%:$L|Ut37jaك4H?6bkv/;T l.%<:>Xl]q`oe!V3XH浙za~H-(av )/]0 6I4). #mũE9Fج u/G+fR<u;>tCc:lLה|*M~?Xh7_$.-񴱸SP,: 59}FU'j3V{=ϤDinD1KM,2JT҆yT4fkj0Ѱ Nƫ;U/ hFl__h*) u j";>0~u<+^0—o 7ryOZxЄ40*̧ Z3i[Y-H_ j y{Lj2eBbfQ4t<.%" 3bdt8>k| /$TOߪ{c%.[Qxc7 ԳoU'YxjCf*& Ā5Tϗ?u,x2*P]#֕/Y|VOvf*Q r9'N0@͙6eK4ԅC1DM(iRR&P}zKgű,nCݙن`DA"F6%ˍ"Kc]K,-8-G8(>tbBz4A)ZVHQ2bHX>i'O:Z~frFm䆏ػR5F0xE@0]t XHRQ$qv-&xl*w,Xuʞus4x^&yz"Z^%E"=SX]܂Uz$*=B 5 QƆQĜbt)>!\k2oғXCz&0Hi;we32# +L@N12KeⰋ;D;XV Һ7)BoL_Bl%BZ)H7ՌFk@Zj(e-z3F$$o6\:?M+mmGI_/8s$n>g4̼!I8Oqâ^2<1Tnb13f90t(gŀuw³zZ :Fb+XxU3hsvESfqB4cg";0z&f[gW4rA AFb-f iHv lϙP{9g!Z36LcM[mlC=9ݓ|^ Ԧ \ wkl|4":|fh M؋jP4]áDɖaw\@翎-o)=s}qn#F/ FzrrKgmܸ@h+> X4;Ke7ϕoy7?y evЙ0c5"z~;d&s3LFa_-&^LpM`<14O3@G8r'5 .v,V?lZrxa죇=aBց#U3{K2Z4ìT1,WEqL҈ eEcG3lr{wZf{-OB+ouZoĎ:B&G04Q{_ nSXK)?@jsBԆVg?GhH$Ov iJs_ gP?_; Q[@ ҿ={{‡i@ihlgOKd<ݒF%`- PJH\|8Đ*xkaw1X@C|;ĉ w iipVX>ڠDV_f*mYh Kä F"<2<o{lnKVr|i)iCQͬ 2n1g:lHRM-U6肸g6u2~Os?şfTݫ#ë))nf7yh4H=}IӭB:g>7l*~ pguP`6  K}+O]-2QqB:햍IVعg`,zo_+[ "c.ATu|GMqr] /WdQ@1#X.g..*k=~-U?.謔|b^ 5 բw+b{g .,z*tF1Q/⿓tlY ReQP`9'FMXeB|]x=O _E8֍AZcO{؇@\ w;`~]OKdGԚL&§L*igɒKf [aMbw<?+i/EadRmSi]~ ㋎`O`D="~{ cE"Bj 5.g|&ZPqQvݳYa[˦T?)-I#݋c~9(&>GwJCw:}h|0C5Y F@ [*kjv" Fu`vLqؖcqrkǭ93RfjPi)$˜&F.Gw:ޖ?K\{|kOԾt3 XI~3NjcǕ4Z  at!_kx(LGXYTVD~^!~%k&=U2tYcnPGfڸ~܌yHd!m]`%JsJC/ wHYDMHB6U Ny vE R_ GQȺ6F(L`qѮi W378|MBwȌD9j Xƅ\.!D}% i3|gSv|(x6LTM.d`9%N/1^:J]Lad[?MT{<K-Ԧesk]D,ɵ[*=p`5y܌R R@6A}+Z{.HI[ G2CRunj+gޣfoKvڍ&1ľ!:Lڀ' A=9N0?[9 %D(*8mc=tB(}6;h4a*2jL8aN LlKZ!tԲ1e;5曝po5©b5bCCs//G8_ؽ Z܁~&nFE/I*:Y{p\K,Z{J%-_mY'Cd|:tsoobTG$Fn|PxXvnˁPxQkTNO"`\5[!'mN-e5̅mJkO[aSJ$#EYQto**'V5Fgne rB?dcC E:d*BÆ0lh)ޥ@Vb*fKwyOަ6Ͼ!P8+EgA#Z$,3#{[7ֺ_6q0c~Yۨ XSi=zdIQMN:@H\DC,Cf_1_^ S@C<73;JBoBm'"(4Mn^4@ 5o2lnO❸Le8\?L#XvJmzAR_oF*0:br!PDz90ޘh\- GfwL7#D[Su, _GKZ}T+XHҠm8.yw@=BL, 8EX5${mͱw`}A\b*m>4ޗĴ~/>uF5 6/E%vB5lI2#I·bxK{p9.׶d֮q9ת{١)ŪZ'2o`Va|:<,$6Z|<6 6Ij`xj6lq?0tK  ekWa v-V>x"fi.n@O.Fwkښ^Hg!'HY4^:9Ic= 9]=s4 4CUQZee ~ЖG5z$z, H=BX iж-c zM4MSs#DmKѺeIn_QR2=S2&fIsն%ۼe{l2U`+'tfF؂l4͟`FF΀;{羻fss?-ԁ~sWW<:J$5Q049tIK;2  *Uq3/ )B`@yfE@7˂:2& >0bVڂa.!%F8;.L*8"&~b8?+"+t+AQBk~֋eFCrO|30h|Z M@ǻw1&2 7$0`8PT/;RXY}TҽX<WPr|Xt,Ĩ? Bru p);f|H8B c =B!Tixo!Nd񤢫Ku۷h*|bȠKտm A] 'GoUƓmrn>O^3}: HƔ*WL/\sQ JvD_o;itȰ&'L:@U"j*\ w r0E*b gjzMmi|g8Qq6jn8?"ߪ`K;Tsu G-{SycK vGekZrqB&Ej5׷A꿟aFoY8Cb"z9pzuor|"ن]=´ <QϷi*=> 0Ul?u]F͍6*g1̲ıRFGDgyLs(ː 꽶ZԡJoIB:6= 2.ڷEfRwʁxP>qo/YoHGy?~.9h1(@ U.^sւ:+Y5UQ*PhO89h*` @R+nQځa!Y=▀ùl6VȪoF5]WyulOb Eso~).HߚG8nz+>u$b. DŽ^gFGqNyX>LhՀYnq`ox.RdDaO(%'&iB@7ǸDXV)p%W6s}:b2IGӧm&`,^/Mə(RӦo ,~ǀ'|3d@] MI AofVJXhZnGƮz_^+gC۩t&4+Vەa{WY%`l~b6 M#<;,e`wsט*q|BiڠKǫ 7adfxNCAMF)pޞs\I-{룍jKhdz`vt`&D`NL h^pk&ˉ!6)ɾ=iM[;%qm;mіTT? {~45܁[`*$*Ԕ}l$c*'0KQINj&~okBy= R[~HPK.Uszr=I!=q\ܐvHSS dҕq]BiҙQ?\cceL6b&?V[e32 k!7k\PNoVvߨ?qXZ;߳Q/h۫?X/`<jT РtS_S u#Uf'rB*$2HПݾ&|==Mo73Qs1CL;Yt.2 %XUnܧbx97&P$R.җlz# 1uH[Z#U^6 Q)lN_%AIi)c/*.l^Kk"+l0UvjSF*ve/LTZʂFbӎd9Q}CA,hb(]9?ZO!(ǝ=#emWD53bvA#BpPQ+2r0b_)KC~{}]Yt}хF?(Wg{ I/ЮwP|9(2-SCאHuiajCD#[s=4Lr6E~Lŀ1& -tV lqZQ qiƾHT!+FH? ns"5**.Z\KuZ31] @4f6"ZuYU%xiUQf;L P3|es!,kogo'gRz*{s =Mr8px݄%}܊hҒQ(wCP:/A՝UbrށقA< `p.mnxu.Ҍ=bv:7gI KËmL|86!IO>wv':E$Хˮwi 0w "#By8%ܓ*n5QPV/y0<] )2*nHZ+?l 2k;UaȪ?jG}`#,kAb=\>.AM&ǰ+Ľ# Momp:\uZ\AO朦cqOw5avN#ś@}.L F<3g S;$bAIM)o4}D&B(JLqQYt@S)=A(֫boÒ+8NkNغ86KFI|N6(z>{w9b`{]`/W[ᓋ|%&2ŕߎ%+uKC4[ipgNfV"@Zg'ÄX!3^k%Eda7Ӏ mQ;XP"#"̩4LdK3MUtv7>>7x5FOa`у!S"CTfnc~iGʻUO,=?\\7TlE"H?l>AकhRJsP.&Mjқr{jBgKb$7ߧgaJf1*䂙,=>#csmE||CO_2ug=<6c;$4Vor;QVg FT0}=mqK'{e]tr`L 4DDO`X R̓-%n"ٮ /Pc1A{yP+9m( z,7㋃SyMRƙq&fԌIrUY7f}d\zgYh%ooMb@7W,13 CHT ЂKhĺ2è6~"HH)TH ?W.] {>Ou9OY4L{>XaAJ3nΝ21nkaũ:_5皨OQڟm֔((~Wrԇ32Tɳ>+͞tRC KΒVVn'8E%Rp/hϧ,~0` \ xz!첝=c9`@~TnG*4@}0%Op ՓNz憯͆%&'+vd"0`dF_>ܯjf*-bxQoԷL+4"x󂶮E|U.MSmV#رI2uu * ݫt^2Q$I0p7gzUh|9_w ѹ߉`S.x~WTtq1ۡMϠ5?A@,iϊO lp Dy|Np "!69]2Li՟ DqufpHe8cٖf#v\V :?[T9J?"*O~sلxI)& 2b'^7{Sġן"Qmq}}$(?B8${[@Do p9V֥2P%Iʹ{$X}vlb uIɭ+uSlk!k\/_#_x'xXnʂ7сbi譫++Ńg8k h]0#>_SضC~L:d'H 5WXO8q`2.^cT~%Z*J7_37U;.}]b%UMjfEaftÝc䍱$Akks+?b, rAL9ih*LFECԤqZ҉1 ae PM^W4/҄ )FV<.WѦ&x}#0炝\ۯ2DaK*S['h{DAfb§c!yZw}wZx a{pc p=5Pֿɺv7 ~֧'^zvX95(qu7`iz 886\هn|a+)EiҊߢc^p~X2 (TpFN$]ˮ[bEu\Tx nH ~BrnYs;r(O@$dŦo,m[{\=eH0SAQt>%W0-G08k|(;ҹ 0a<y sLRÅTo`_ 6-&8Xuw/R/Fncr+E_6K}Y!WP{Wmg\~ןu}9qn ,-ރ Dʲ]' g>5]Pv(Z{u0'%Iӯf2;q3=-m1<=K" QiHs-32!Na]$Gjkϡ#J2_aleNXE0wݴWK9==LBٮFi$!.GRŢ;0=?9H kK~Âr cNN#d,yjf*%+(n^]7w"$=qDٳDquvngٝ3f~Azݨ峔@z&oYsu$jt\"٩`U 6d^G.\#/avԠdŸ`ccLV]ѽTrGjmʃ!^x}3;|Q%)."~ZSD J!ôC/ ]D bSWiKcqpq5lT\CU\lǙvM"kkt~,Nw듘4@[hU*r߆ >\sfelN߳*&)=K|{=p[Tz@e! <M 7QV ځ>D xE5MUu?4v:Y#6?x zG|O~IB!,ISwԽg _`d۵&Ϣ^<^Up-ʸ# (lX{FQViXB45 53NrG~Duݗp..k=K:x=Q=~Q\9yajs{j߃r7 ϦDGf7!ObŔۘ҃;(C^ /p5 >cS9Dmr/W!wjT[$egےg↸,t3ʫ&t9q2YUԝ kW:l ЃS/e̠6bv>4xEi {e5L"hRx ov>A=m68Mx?xC ?n@uײNK@ݴ Xh o$U19k?.Ն~Mv1$}Ѿcr#Kl*eȞxnJ!ºd<ؚ0GO/@nXxfzC m& 8RHRqkȒYlEMÌg&6Xs _OJ2}> dY2:W6YUc}PL ZPD=z8da]"i^ߍ$W/5Q8JFO Q?H5C/Jײq^7bCNq/t_?kEf7V3Ӯ`7hEٛէ,5x.TBʣd#W=.W > iDbOK "ց6C#F,H/p' ,e_khXaV .k~vS-R˙K[993ƾXE;@ 4BNxsTX4yP'SeIx`-Uw 2L6RWc \ܫLVx>1|iw4WqEG^PɈ~oxG}# #WoJn8_yhԻ AlΊrU39~C3T4yҋcT/S!%,%{fؔT$".}-`͕~cZ zجtm=* \Fl?O\i9,c.v{ Wqg)8.%A޽Su35QsjW~ T%b{!lǪS IX5 %lC`16 Ŀ%oɡOIhTAKZ@h%1N_^F8 o4Y^9V?cUCaXͶO4'/SGh>` Hsuo@O>k4-AstnvӟP0:<'6lw=>h'9=?. ՟uކ| >D|/}R`;QU/hF(&P#YM`KN#P#:`wq[]L2n>W:aF Jz7QOL 9ng=EX n[(>w4fGJo6IHw'tb =/T$1>/T-a.[J^ɉu`ϔ15Π~0NTDLJ#|f+x>4 MN<49`Ajw~0M[!d}waopzE6憿pN"pNn u$lr0(zmti7\:I,G:P#"܇i@3:)qx<(~Nslčtm6öU"a9tF5h73%p&rBIW(V +k a1M-Bg)7_؞7\ { F-'Ŏ^ LϐRPيJ-"%Lڱ3s95Vl^|S G&%v_ ؛U `leDD-{7d8}.0*h0 ~A ,p캛'? 5.!.2kv`UP'@p! /et/Cz5|4oo9[S+8bD-= :"5FfH{"mxa[r@F':lt YXH˓i_qd !F4z#2)ZB V(wa&6$L^t~6$_L6H{0zSb3`Gh,pf!([0ʃvV?10 קYM&QZ$6#N%{udG]%1[S:JRFt KDq*GgVŏNovq mtH["ǭFE~h\s̑Ͽ[Z/$5w]$Ej",Ope<4hAgpb'gw$:eW +(q$%@  C5s\GC}ֹ4JY% UCW T =k~v:F׉} F2Hh=W>Pw“-Rx7c⒆ n -n·%B=up]g7 %9 0ὐn bVPDtI#vlt{HD+oB=[]r|[4.^BTu+ϔ=^ vI ]ا0t1vaTDwbhdX.KZ?2%;F#y AN5;ls(9]B—Ϝ'5o.pCxy*0 fbt/<c[~D2pR_rͳIYᨾG@ 4vЍL`?Wo-ʯ6sI aKo V5Ňn\F^%:;Ŧш’3_}>B+K/s?Bӌ ͠+*锉z_lCIߑuW$"q`>?+bE\B-{\n%ZB`qǹE/w8;IBT l|0G?RN"~%"= R471H.џ5A˓2K[I I;5#\@.M' zjpp9ti3 _cYM΃ڴj \ݔ!~Yf ~>mǸp3 k :X4ky\IݹusH w+u,I +^D6A 8,H zDwIsȫ/@8xx*ol!EXJM u敒? n tZlW5$7>#llYyV0m`jqj'oľ413'Z MSG͟v di2:27_l6oxxe匮wK&O|M^Jy6V_`]\ZZPA>_n%:z椌C.cf&4mAaWm[#rVIG"#4/ [[׷]Pf sV_Q)R/h$&0L:%)U`ǻ S63V}n3afW&UG`~&*41#ESٞl{YǸ #;VWԄ~=2TªBQ{n^ ԰lQD{@]e|neb.t_+~W:/}e%#'  V8, is$ (qQL7T4H h. veTj̗jbJܘ+@.#%jsh~ j]:k e ˯9j=z`gW!sdX||':ᲳB6%6c|$S, ?0?,%Ł-pWJ Eh~v@1b*oZ0K!hP\8@5m3tV2+Dr˛E.AK$L%_Ac=Vp p㗍Jzz[nJN *NS Qv6Ȟ&i?q]M4Yºcs=531sw$~z$è!\o!0zs,b 9'?ͣV9 S*-)117+?^TP¤FF`'yhD^;y "+#ńC-Cg^zjeL+^Jsڿh~\DOl~y/3"WXå6s,GCul#fchL((( zՂ(ǭMn7QO*/= /M>nsZs)wY:'a_a]jV@2_;0C!~Z9^ɷIbg% nXhlni7˾ӓݥ jЃ,`J]آl-Z*`7vsV`ï]aT0Jk̢ lDD䣪uʫaGr8`snDtG+wK &<ۼvE!ԻfLI?zٞ|ULb|KAOOKP%>!9N CN/(d}8i̓}ѴFzifTn .%~UI%S `a׀܏tUQ $ϕ;| wq9߭4gyrCSZSI%hwօq,V&Uk_0~Ox%S2\ۘTu@w}Guj4#j"o~8W []pPr(7q2hG>*quHRީnE+cY å}ud=y8ڿlG$!Nxȱ(OH(Chw<юR 7o>z6hZ/6{޾Uq.?xH:qGo$y~#tFW@&YJT'm[DVYXOL'XlZtB%$tzj_4>EKjmpb)J.A=+<7(edFyd@66YY|h{n۰՛³W)5$Sjd)5\1.WFOthD4K;bQ=E'U7iJXyJB 6艆;ȾgE6iM^F;+$J QPP ,E !55"{: E30Sf .lG-7ɲ s'8bը8ލϣr2xFv=ͭ a{ixKk؉2+c )]_7+T?@9Mˆ$ҐVٜq)MVWuD >8)бu' ^ Q+S<H{8YEe)PuitOǑUJoJaI|ˮ}fB/*6&ZC`e6{!W3hl}0Si_gb<۽]#E3) 1M̎H0,"Ge?13=@Voۆfr&yi+@{qt9hIަ2µr9S#*]+$<:^NAf].۱.c4ѽÔNqoOIgݏ>J.RG=fV{*_t>4Ml|X [S:ad$JOPToRGrԥ&.`2DEdL4ƽ y97/<.JNIނx0BgvZTը4Jm9,X%হ8"?J>0rz?!}^i-T#k.4fȶ$[9mz'4ԠʜDouNBq"/]܍%c=|Cyt.zCKYRFib`M/o X6 `0^QMM2w !-OØ.RGyQ:~"I:M[+םO\LǖgV6aFC`Ě4pbCRb$k&Lqn&kuw{PxG};;Jg5a>>Fxʠ-C?Px~1^þT|)mBjÆScSPo<2]d,~8(eK`WWC?mA{ktCZ%77ĥODFk`Q[@t[(=o熹Pw"r|ۘtX(Qq)`b᭽%ATQռ%Edj#s#;!Ǎb~z1K;[ȌzG)W?ąz ;b^17,>'W2Ee -=톂}eh/ }ԫh#do_&yȀfh!Q#r"ݒUFSU (wV2ۻ@Nݮ&x2' g*\]O2b&fJ6] R~șkfRɪL⾍7!_aNIm9-*,([@X{{l_|l wvF9}vA^w2pN3ux].>F G=઺L7~  1cim2SC%򹷳dIjƟCi0 <'S-m r *kM\>i{!X%Nܣwwٸ_&1^+ӚMHK0O)byzĖ(|àU }n4l".*[!F9GEQ,,;tn8 nzKq@Z5pIե X'Y^6fV]"{A+4DOcntp:PMطI~VI1ϖK ..6, bMa5k6<#>!oV-b`8(c:[D@6QwS'aNp?dRO$7+ã<""|6WU쩙'b&Fň@\̜=Py~jJOU,Uv]fE~vHm XFq|r'5v#YO4^A}96Ue+LywKn_[)NV"HK1hI2rpKVGTC[7gsaeƤxB;]N ➉UsF/p. ܆z%Nڄ3dTϪb c$mve_7'ؔGF)z{7 <0@kpd x SoxTEtQcǡwU}S*Wh9UoL$JMfnɀF#L3 "wa栘<Ґh~3ym QRcшP3R}ʨג[D 0I~a/?\{?lQhm죱e@mm6%j/ٍ!"PQ> OB̅!)*>}I-VB2IX03.ڿ麣^5K?*("O,mGV_]ԋBW0p!WPY0 U'Q)99'UwYPv5V' ,iV/K/iN~NMs% zsP̚#}@F 4v5)Y3 W>D;g>& \c͢>fGZX"},><ʝ<q@{.=5Q`b!d"8[ +]6Q:ʍ6+ u IhtIBG]>%g6e^UR! +\,%=8栲T{&c\i;VtA<҄aC|'GGB(KȁPk>c&Q}*Q+f- rf-z]e "q{2v`vi,H؎%M/oKy_,-_vCXELp1s1c[oYL\VFnYVpST{5܎u|!|.%d!3TA~AAF]Pp٤iH ID0T>&ս^_o_srFԿ|W` ^@N ]%@C0ME/80Fi93c,NXˢs4J-G퓎OrHlF* bт`|κo}8sj⛝bV/%yjGt6GQӋY 36 3&+m9G@E61_B9:PpTB?E#(h.ل/NpA Ckó!x\N$' <ˇp`v$LaX(|DY\ {%Oh@?_w$\$f\o2J*"@{<'rʍ%Ngoiܯ.L-3w@$?S}6hTB6I짝AcP{_k\&R{2(,ʫ@lz7\ؤb䄂9Qai zCe>L[7SԖ5xzM8aRyH(0 ow|zCmtt  }e1kO%n3#Kn<6>S{8KU=,DmZcLt*{)]/ Yv-_ jPl[hmxq֓T&iYC8,#=@8Bw9VL,hmӠ;ǒf/iuwyzݫ<'iN…h!PyVwoM/ d eX$촪vOFnfnd"O/e.d-;:;UƋ~7Sj'uw˜ZV|PY@NGvNg^XA 'SN "yF0ܕq.pP XDWoD -Ѱb8 NJINeWGW5i6JECA4@tge+e&g{ضQBI!nh$h >XZB9 o)-=ٳt_юfF}6@ۼfĺD^BYؖ"ࣽ p ΍X5=/.wJdiu EXu,PPZZt.H]!I秡 +밟{ 𑶪֛f~_$A% ɦs>M9R-p_>HW`k6rgؘ`5jH=HZH o0ٔN6}bne#A"/Hu\J:.{a3Z7sJú* (Xj _y8 !y "цf3ɩjbN?ifڥlo _S9x\x^{8hRɆh.y&Q4D^b# '6bRNxނK]Q:L"176Ȅ)ةGP0g؞(V A )$\anC~[\ xndW0͙j/tCqnZj+xˇ7cFe/i<\ffQup¦F:CgV=C4#'7e=%T!,gy}:i wli)qKt?uȿ=G5o;yl牉ASGǷZF@]}Uqr2ո$*:3Bp ?bA䄛st%|MXwB0bW6LfGt*;sIs06Q C[$ 0һ4XQJH`L=+5 w>dz'΀zzmo.M-Xb2 q \p6K].v+xcMGt\ "!-+<Y?'E"4 ,rSܵ)\X JEdU mAqniԀtynlcEqatm盾 'Lqu|`_đq\ a୦w61F㿐 ma>k!Mw |_H!׈$ A33E3>1&1D҇>"J6Vc ~%)0;E/N6rCҶlr1`S6lr+*sTPx'&BqR3'|%D&aIIc%8pJw~ n -\1$#ĕ)Khb?D}C^]CHybc}W?J^b}WE,IWMm)oXC2 Y1!bc*-vbXX:Ftpb( `U%{hk R_BC5Uz9 }UvjOaXu^Z·QGEY$)\?X>MlUT^ Ph)_|cA+^iQ`߼AX# R[:D$s| ~- 4xSjvaS Lpb<62? ":x͙ԅ&zFAr? ,:/g$_`M}Z1܊m,ۢWBM9kt`xYi0شuHYXDaF0O @oy\tk|B뽈_q:rx&X+ҽ%tBr n\rpJ5wGA95~DѨ7Av,'QZ%H0ʝ{Zʪ؇rw)Y] >5s6n"4^R> òTa^8.^3(] klPY*Uނw'$C3$mA9|gM!uXqsK;.ԘGy-3|i)I#KIP)uz;kUV8a#n=MEH,a+pv:ZiʽAM 9/<ڏ|q@6>/Ɯ 9B(&TYR<.0q1KP|Hu mrнMɢgGWeP24qؽHQ+Ao =Qc%Խ$v"9: sg` 5O6: &0xKbUFk_ݴP/}[:C9 cOͱPjJu /s vI Vv `y>:YD.[ukWȔoKܥ2*ـ3&!6F @p \0Ա˜O7G_hֹ8(nA}S=x>>#!G&f 3E{tta3& X]ɬ+j<1"l` Ȅ̅YjTxx oۘr4>|ToM)GԂuz/ ^_Y+nM,\ %CAFdA;Hk,^ hM/g620I˸}R1W3Td GqY4bvT$1@K*P]q'MhpjvUYi)–P~N2gUcz[TB$7yڗGJ3 K ]qerucC|${ m0#Vo{ 8Ry=%r4+ U'1Ȩ5hiжl |H6g #2o_.sәCv5LEUe!/;u|` k£|=8EqX : qP$VOsercnͻBƨ?VyFp^%KJm>~ y%b?L?AնjF,T ֜3^J(d\H.l6Ր2Ux8GG+Ǩr#)x$0r͆b$-%ona`%Ku18t{B?TyJQPRyeS:۔3zGw}CGzةm &‘73}oyu=+)4HWAzyxɼG?#U ;\f]RGKY(Gza]pr|6doT(%Qn7V=`x B`^*ʼno)S iT/,%ASNSv:L?W?q#(P3OqAdG=_H=sb̈́M\ԂOnhSF-2},/ IMw<Z:EN9+i4 !?{qMd@NRUm,Wr|`V0 ƅd»"N M |\szZIv*K{ױ$K62~)geQ_Ծg1AԍϕpyAej%Szux`n#0e4y`\RJt,aE ȕD: "0S%5C<>>@mՊ }CeyDY>l}m%~^h7-GŌ;mJc `n5$[G.钕p0 8/ ǒ-:N Q4BH_*]22')`wg@-aGj蟎<ŋk_0 p>q´$r 7m]d뷍1G?FIbAx/3 =VQb!Df,zVӝQih톉^Ǟf%y/.\f՞s8&Z6;eth#'Pv~6zD<_єed?elya:~`8(5;sSX^qFD9ɎPsVCѰT4=+{˴K V]vCnH"ҷpEzfO3UvO)L"RYxi XbK/j'T)bZe\΋łVmzun^Fi h~յڵ[a,?q% e/g6(/'W֩$Nzu\s(OkG[%FCzd+l`V@UNG1og.z1I2H/r|?.rU!07BV~v`ej7H HvXSiPo_ҟ3U0*"8IǵJ1]#t}|Od Bڡ fҋ34^7LKT vSHGf?X|*'/B$?2 P-XH S]' / 1CxZVIcoIS["aitCrHJ؀C":r4G}y51{64RI6խ6O90+ T))x @^J Y$g3JR.TsANoA];%A#CSs7XhCdzd!p? 3ⓚۨ[֡m Dڅ`O y/ɛ+:hN`BHk$s" y !K! wnTwVe4R\9h ᖯ 6.XmXy VT#tV9ez_r4ڥ{>9 T"!$ $ i5ɹ,.]fxt|AY'- 4 wŻVG2 Ge9wqu{hHޣZ(^޳8h`Х8JLx}Gn:SY)QόIҎT˵v1U`:mȘ]WW"fUPaJN cPQؤDZ6z9`|jsU/C=.r¦떛v"', ^4N8n"=1j9>'LڭG; rՇHm+!t e&m<0/YGdE า]?T!G)ǵl <_>58G@ l5W4ߖڛDʕ:!9,Vk D@SעS9`] Ksf*(;[[/)lJ_)F"n SFx'DV)ɑƆ}QfowȮC`E=겝WkB6Ë:>|,\0I꼘Jɡ)gtqofWl=?`'˂G HQHtz_[=>asBǽ<Er,J3lE lak.Q-4a r|Wِ/sɿ=օ 09jNZ.Huޑ+[=9`{幕#h|٦ { m@­N.: \q0xd;3xſsJNw|7q{x9[v D-12`4G$#^, f[\nG"@>:*}VLDrVt/HD9Jʗ\;7_ك9=&0W'RVr1caU)V6'ӅS ;6zl#·g(>zYb2}, nEa<Mf|EC꺻D4>ɣ2S9ɅpHh8}d 빓'vEBCbPT!SAd &擯="ܦ*Ow50iH+)9A3\;0κjP(kG~4em0 X - /?uJQm|V=2[j N_ɣɤ ˠ`2mE}CHa(4})S{S<#$m7^A)ĖP5L4|J%6FNCf ;upҜߒ^Du-kLMఀѪ˷v Q?J`|'~d e\%sHWޝ]4ōU+s FV(k0MmE!iC ":3OIW<{p6_&MsDV$hK҃7ilB8:X%+`Q 8 CmB9p Ⱥz N̲"aHxs g|Ha`y-#d>!p⮅xȤR_g8ags232U+|Vڼ _䣧#2Jf=vɭU/s"$NO(/ȱ"Afl';[5A$ςV9M`ρB1_H2p4bU S0ZW<&O !>?knP6/ЪPEәJ8|-e W ~oѭ/ -5r4F$4P]*=jzRōԋfgTPt~z~Bh$/.fvc@nX)j[CЍ# Zɧ),N8Q 8 xZruw88LZ^IqÑۈl+l0F [middU!e{u0u;hkGktvkR)cd~>r 7+hq$=S'4"z&9~  -8,ɧažY9sӑPm}bv8ŗGnΧbUng >qW(: P AQ'oa&l'4*b(dL tT` < _";/. ’@^ZptL籷Z*>A EFԛ> r福( h47"0g1-SAj*wlGGf]23+19uK -"h.- X7_&yg G,jKNCcxg,"G/9)ߎ,)O:4pRxq 6K hwZȷG4eUgRrj2D^+?rO0*O̹LU 8rwmdDb}k362 hzgplM߄XZ2z5;>:Mk]~L]# :p[!U#;A6Tx*gڐ .{Z 0'Qajm@WK&쉚ԌHUUo[jٕDR 4AleN6JM|P$ךʒ[_Ng6^}#aȲ\ q}AJ@,$6pxE`񱕵+8Db}Q*ZeVˢ] atqRKGK=~βңp%'.DOڅBQ{D'ZbϭgSQU`iҪoS>/ͅ=66EUkDx4$|=&oKvAqq% אa,nyT&l"g0KF /V3b]Ÿor$HeL.M@4 :t{JE(&7_G̛>x*om)3*19̷mzde`~Peݩcegj{h][|d>;V 4G4<*Łz< ;1Ma($p}ѻxP ףO| !@/c ۑJ"r|Fj c S5XU{dM3>eb7}6p OG36|c't Ѡ2;׎=";7sJF8D DA-<3!AY#5 p6Lqlc _2c^n^$+q T/|SpLF Ml>DXH:pMkyz׺8{6$t $ݏ+ \^O~2 mAl\5r6ē"pŌf\ctU?n zxZ-z\|.g-TفBOry$ S:  ;ocSBk3v3ȩ$Q/+kľ~%jtN}۴Nхfih*]3ե#е>qݏP$gqAjT y7 t3 X ڹ^O]#cp=ȰɎTFozw\0aAjh0Sz?Qv?T#Eb#Ώr.yZv@A$($ޛ: 5i!e)bINo9UP2L5 ӜS$JYR$-!E|ǭ_<,p3B8'ݘ+ݫdT|>\{o]^S(M$"=5Ie\z]+=*]F(_.~KcAåJ[s}YW { QۭJ@u3m:zP J{ÚA}{c1ѓBM$뎑|QrqVkP\':lXt BMauSd'P:<4&ݞ"hZ0OLuU㩟 Qа5)I9I)Lhk!Ha)ύdrEJ(˨t= _A E zo&8*z5nb+N4y D!kHZ5?s]Dk~NNz$*cF~/!y*o2 rʋNNҾ Lesg]WA>D<4pņdd=fʅ!}\P,qO<"k>< ϒ2d'SS5sH 6?(Gsx`ԵBk5CfY(M # YUqE67yFX4Sh4Ƌ xW|ީXf~%'DCJ7Ӈd4EJ;>#)9@5ai@R%C$H%H/\#Rm}ۿ4 !^Ֆّ 3?ӯ8Iɂ B+ͣTm3\ym7#"47K钦}MvZ~*r`:Ya0OVġ#b>MXDaG F4=o2W-ۇ!;ؔY&=äNKBJLy-hkoU-ĵS\{o^qKDtFWo-RI0<фAHmVHv`*װp%Lq0FUٞf\s9UߪΔ_s'J*R j¹L%Dv[^K^L"uDNS1&xJ eyY"t9՞dUjLjzd)s?DoH 0pQbV뺣--R{\۞Zq}p-&'6V#6\ k Ai[uHSBkb}Ml.aGdb5 +;ÖIWE+TОv r N*y~.0+B;y9E#(wgG "_+g2+WPqHV jmrbQE(oKQ{=VB$$Z52Ϡu@ry=:x= hU 0E^wI}yS;+'-VnYkmDL.}4jŦ2{Ƀs_G;Y04p_*)bHߡ7 kx_VɘՋ 5'?E۹<5N7m%BC.Sϛ'Vi撘b-.W蹗1@* HA :G%6p f|HQcnN2S  .L\7*b-8΄c :JlD  򥘇/7L)ݣw@t ƴ2Ou{6;`P{]DrK ]-^6g rK}*rы{#] 'on̥RF~4MvNP`HڐzRzhPOn+: %}L%r=<Ѿ'Z`ΥE+B\Z$:ԬU}L=~6zRY-eLV=#]VkOmY\YEWy4.kh {Nw[5$DRLF`\lz YBS!dܤcȞsK{Qs6CcA.ZFG-D :1}uZmXŶ|6zd賫UK5xC[WDwqqޔ& t@UG, S[$l$K(vW\+ Mg:Ƒ,uWzxj-#ˑWß=/$De&i0Ds<CNRzm=3w8 5nF>ө6:*>'a'+W6|F5ޔlDW5n5Y*s\rXm Q`!UPwЊ`Z68Bo~ȓܮ ɍ2s+)_hD%N[ߊ^yJ|*sYn+o%-wOi7H!Y &ձ!Q,_Qm]S*[¶9m(E Hui4fÁLyc$;{xԆw8=S"V^wG1{[aCףq(Ɂ #'WZyK).Pmpٯ׊gg&eQIpkJsWA?-릴N0rŒs%ږu7"y^źˁ.[+{OmVcm{-tƛKMZ}n]NHPmJ"#ު}32L㩦',(5.c)P@#Mg(ͅ*6 \5(h)0Jܕ`tCSp*qѦwMHaOێRe^0}% $8)ɳI` W 0FX`.*Z9.>ӡN4]1/lf͎EEQ*i#f(5lg?lN4`iiF`rWvo"B=Q\g-_ Vړ g){JM쉥OpIWU`O84ݍҨu=8_uE\#+Flp&,(F#g__὜u[\k?716- Ğn_ C†{(wר%XyIN` %y9@.Y9<#xӢC Z x.\=x.}rh^F{(7 ?!986^Cc1uItsUIl}GBv/Īo+R1*y蛰(eurs K _39,PM70Ը |5+0䴈\&9\ӎڝT`q Nhcvbȷw5f[n ε>qU!{ Wڧr~$DY!VPu_h$lv51Vǹ-4`tywI+9`1_:6YsA4XܙoO1c$ljȀ|:w\$ :W_Yz?eȔb.A 3-b3tSL.eYIh;dO$˱EUʚ"(_zs"D)".bc$Vdtk,`= f#d1.H\nopj,/Kf29g)-NJ~{W So٪fc- gYauݿw&&ʖoO\\aiB'=vϷiJxPTA^C?Y)E*x A59F^꒡q푅Ŗgxs lE}+ݽ>3ܬ䁔Yyi|sx.%#At|tXR_>0<if?\&A7lu jE&Zvn\F)EV-JO[v*{N%tFz`cMxzfڛDҸ)*Vmfߦ #F_~KS;{Ἆ2Hju|t}a JxےvjjYۡ [tK=J ^;=p3ur. e,h׸SxTFh!AjaكóA?{|/ U_M%*NHQ>Վ5t7_ܾ`.K~%P5*=?}ڶ0V2~{OZz, ȶgԜd MwCKaO7t=){z֛=" Lj[\&ß)`ٔ+$)/+ 4\uEe t.S@Y}mID{Y)|EDzc6LIDҍ~}^+k"#&A'ۥ;(r? “?N@"Hk*1?|sڥDrwdSI_>:~=Z=m`:+sg$S:7 E LA#JF*v ^(Hr82[N:顣"I*`ίͶ͹=#kf]aa [;\ \?fV264l0e!o"֎"ھgR_#S+IfUGO[^(`^+'\@ N @)հZ#nY`a $U3˱sVYGݎ.qbN?' ~5MQꕷMљRʗΦM&i$9+NrigyGbXaq+WMK`toy-%Вi[c@^Rڠ=O>ы_8fc͖QV>Z ={MV\IŤ00ׅ{"Z'Ə)Ĺari~e TQSZbx1|GVbݩZ>Й)ݷ.K'W{.+ͽ?1A@[ QSӇ?V8\I`YimՄ`ձ))dV 'YkE ^zAs3dO97IR ]Du"kkY)NK`:)'WK1r)f]WoCAf!!YϞ Zѓ"f!WӍc-EȽ.݉pǭHT183]ޚ(l97l&v+[7x\CMjac]XXjD_|]ڪ揢%bC ԩVF5kaW4mEѤ" PZOd ]Kז~2;=X٩I؛gpI:/  "0P_?O)ݡٰmRqr0z1)/[ v{˜kM¥=q-l @݌yͅbvp-A6UBeM3xHek5)3AI)jC3pOo+'`4(X +oyߍ〲uE!!whnH kW7qvPȞmzV NO8V_W\ٻPݓ|beUO>8+Oo2/s/q8TJ[|E[)-EG6rƹO|ɘ(ؔ4ZChy vHV{aj:'"ѹ2MNMꍁbJ+D](8UEjr*sRqbի9IZuPVQӀbsկ V8DmDO 9K;t2!l8BL{Atr uDْdejJ?3P5 J$]WóӞI'3 { Q&8Є&!$]o}:;ΖGx抅/G}Jk] dtxmb{7IT7P;#CT:+:۰9mz@‹qa8ap=EA?Lbt? h|7muwb]NN\55g14Ume^zJ8 QP(YN'~c.(:amXw8h)Ks|(@P^ WRMS +Z Hmxr36t%T qO7*u xSCw%`/L7>ruwl6*+vtϏEg]x:,)X@x>- #1i'Fv_"ZJȎ6= TYtSцhn$z . #ͧ?(h7UH8 =Uo 4*`_m*pNe ce+|Au{x(l1tMnQI4OvG( .)aPӕe8[TGĊ,fuYKSNd7/++L6W_hŜ"Eӻ *0y>MU~)A_wXSl\u|#rON{b|]cu,]0u"VrMVȆ-v:trѪ(O]bZz e5, D|ד𑥍yя<⇴ ln3/em Sr)az) 4${1Ԭ';N$uU M>I&-3K"`mkǐf\<7V"εF`Ŗ@$˳''WC|x_wMv3Xܺ"!|%4deR9xfB8#E>), 3>̀5!RrkQ=|1*.084Ȓ:'nbE5NH>(raj"1) lJİě )I9Ju[<:a-#*A8buh78ݥ]&0GH/ {KW'b l3P1 *P{hm&):t 솄7~څu/ϓ⾚-7E" Ȩ'#EvOS49UJ3 IOMÍ`w+=='!U+5dz7q-6'} b)p[[pate*>G> P,QKNOAl3zչ st#XY6(#7G8F<2({n}> R -ک@49;pl':nr,aT'آaWl|k5bOfs Ǽوdi}wy& ajsg{H VKF/?/)de,j:o.:zW"7T>ΌBo}b=O I|#Fa$[khRSM/Vҟ}+N UpQ_*[OoYܢ\]JlHhoBR͟F^'~\=U_M` 5ƆC""8Y{9^[d=dO+ى"3p5 xIDS|JS 'nXk֙/{K['(ّ8+ϕUAPr=kw_8\3MvÎ9MqX55zm)M[ ?–)y2Hg9'LVa_X'ؤ007bj0=^kD=51[ R?ؒgJ7XvLMǂAP#K°uG!FZ#Hz`OkqY'/\Ixd}?Vz?*V._ߕ9>D\i}n܁Q3d0mx@72Fc/lA6*̲KF+0Ep#{2E{ƊH'1T*yϬ_9&Gw_X"f"bB 6OA]&%;E٘z(`wcIfj:~1S)]DR~c@(̐em6_vF:AӰWj1;& O;g)Wt 2>aNEsk$>tϐ+E::9ž΅ *4`ǸQ !`Δي0b\V)[VL//͒.MӦF6TWs7aJ!GӒӟO^GW}Bvj[,xȊՉ %}v&'q`NXnB6x7+#=WtuRo"-f"VNSfoKz)zj 8([q+/3(ypހ1,[K2rGh3 [z,T.ub19n+*d&j"MM]IX(tUќL #EڹCgMb)6yd!]YQ@DX xrt.+ J`r?qJp)@ԱC=|g|F-} *a;.l7/Wދf߿QʠbkZf Qec[L93VH MHQP`[!+Vsέ+&cy ELA "IGdj[ξFFuk"L(-H1%(R$rcLяI'~i=7CoRbNVJJ̝H/AeOҳ}Np) J0ʡZ=?n*Nu]L_ ^ei-7C?vog1^ 5YTB?,zf8Uf;?\@w7M=HNie r^}CgN/3e6[&=!?vf+<%u挽O|tsT=TZ=pd.pJ]Lqya7%H>87՘=rl]Ut_#ԀlU%e.I yg{h\\)&!ۊ'++{"@a6wl⸅Pz+ n7L_KISPh8k;?sZ5fPy"e7L-RbSfZfn^9o:J~7Eѫ4̳lhuku.PfԣW&h %u|g>ϩr)gU Wi9ӘA!sdmOs?['[vxIYwj_kW0=&a;\rD.U40f/=UhXM؉eʋRn0mA VQ9d;q/upJ&7ࡠW]x!K@bz<ljtzF8Ij!;+DeVn$H@b8Zԭ`y$|lq6nB'v|s L&vE)t "_O 8Oy" ;O-5^ 7=Anׁ:u~F~=/@JBԽ[VF)Z>7qoT:6Nl~[[ux\ UcVi;pnӨ^K5K$?FϢ59D!PƗ}4pz*Yn>ӯbmF1|F/ikdFL4 |K0Ƣ4&h5W ΣoԽe$hu0UZoM9(ܳyşdf)7|`g@ݾ7-O\&Ɲؖ[=֕GRO\͋nؖ= }dtt*apvp˯L/Y)qU6-V_T\?]_+[ ͎剬 5Ya O˫ +5דF1(Kn0P37px=;V|PQĨ n-VY!pF'G&14pcb͘|PkshHڬC #j CnzN\w BCMg cReh~~j3^>s =TSZL\A4d9|VֿyD;*dd 8bЉ^826 [l@찣V;UނG)wC_5l/>>w gO I~#l{-$$wҿ VQ տ'*:-̼KLWsx2*ذW(yuFc'L^xO.~+uoP'ye8vaQX|~Ɯ' j03$ѳER>sJW7jgދxrH,DR^qL)Somt1W7)OuP5:6tc *^-9PóylJ^wlzF)qP*?+x=s!]NΑ_uNZGa+e29Jnpqa # ~11ov92[Awi=)BcN+kNnD- ޔrBՁdC^6Özݐ^[9`p/uS^!2ϟ$?ONi{o,wI ޶:wMyFlY>V(b4TKCȲᮾ"PUi#ucC],T@5Z#Ť:3z&K#uDh=H{F:k6;+@2 fQ (>}2`;6 \`퐽)P6}jX8^̙U*PV+`o&Ƒ皏+k@9b<8V˷9!NַmM gH"+:b1DAf>lCڎ;"Q2x5Af߉54--vn(KDJ>Oi05a_, myį^H+ͪC2Mx6F ž}ǐڪJDGÉ>5<U4 ]Sk; ![kUۯe b$Y[bEd=vQ״pjZjaۓɖOFj` ɑJ!BFXb'$? ڌ,uvmɟ S%O$w;i XA(p䤊HZQ$E X0/>$ P~(t!N=Mj#5b6 y")gR@ڃ#ԕ9- ZP"&eO~ d=U?umcbvU@ 3s >M:}hMm>6AQtBkwIq댾 *Rtv{ikĨ%8d#%+kr1 )|?U T*|k&n51i/(j!Xq=-(ִ!91s"}&JK0"01 7c1{IWm1x8|MF5[Uڽ-9>&"`NpwhAC1,mӈ㢗+`%TLFxFehmw<&}sFm6R6iB[q6rr96 s+yvr6,NZlLq4f=&k,࿡àۍA`g߼3`mWhc r?ㆸ8ߋu1T͟u}DP/d92v`d&d{L<. "dgP$\yLIe:@2H ]UԽZUn,e.^08z:at.b7b(csa(X,tρ 6ۜs6ID޽e"$6'cy,O>z T|B^(a}y*{wK4a7h5gyfet޴2" +8gwT$%Ԙgt<†zؖ)-<<7^ajOT$Њ9 :oep (Hy|4?/Zw WEhXHTĿo_.ދ@g1Ӷsg|Ɓ*cLal݃m\Y%Sݺ>c>Biʟ#WOty?bN W4$C?W=tAXn3!9F nIoH3" Z(teohfqH(oz˨%JԎgK[H o% x[aq KyzmmrXN7k8#8mȷdL,*/V=K6޼*b͐ ċ=9a  +5@}rl(Q)s-Wh]Hl\&:#LbUrSJ9a{E<`[FUawF+t^W/M}rrJ0S_#0L]QU:Jbdt8H.Yaٜ׬oq5E80dwE>J-B/M( P G̗Ò,Ia1/ڱB3Íkqswx5GMpZ l|xvhB nUgm솓^0uW'9)j]@کePګMQיr78m ]C172xc=M*(:6έY݋Ky>sʒSƫtH/G L .н WgV(((Ui 0M"/O/2ࣟl ч+\(z+s맪Cngq-U|w+NAFk1ZQawM9R"pʜ8/{PM1.Vvs5b[X/y=tTϡ~a%_z7x6U1.n9wxPϒ'8bw\D#+B#N(Xxx&Uj|2llFVm5sA  g< Rz^gwI,b-ebMw  U+OVhN&`34||ѐ- uk=Ĭ3BM[ǧ<,d b_fv \$'X;3OK0~KEPC끍WjA ME3 ‰Hϥ:$Iu!.&ES=!-|m->`ӄYp]ZCZVCFަX/RmkրIm\VWb)\ jVs… I[yئ?<.z/E 50E6#2Fq?ksЮ#5{Sr.@D}C֬&~gg~йP "I- (Ƽsl̦4/,VV8/O.kjx$VlhaֈTUNNa``=,+-VFIӄ("e/x׎b-#2ѥ(*,sNj@U5/[M.S' 0]w t}Gz"^J7q%0 7':hctZy@u!c:BݖY3GqM`;Ӆ#b"=-Au&§ug^OL>dkĺ)4F4s`HE5rt(ah )vJmK&NIq,+Ʌ ]uv?lns%(hKV+Eu@=OV@dv-.GKNREdH2K=Aܻscn(+F;k ߞp:w" :iL i(O=mջmI%l6ߤ(pdN08ܣڲmX[OvaBI_stUk(̝lS;xY`1A](ԧNL3o),Z۴=d1a{SތLMIզc*5.IrzβuI[Z%1nkL{,S-ɶ%[/puveՑ5U*EߡAsxIZ?ZYo5O/*a_萑&b}-y=3%}Q u/O[ѧݴJw[.H:6-T>&&E:V9JUH<»f3;iT<ҬHa1/V/W$tG/f8Ox|mBaΡPج7Vr QC/ 0BL$ vо2whJJf/U#`BW|4dž#)6Iڻty~sP^z,F{NwkHoW{q:v?OW|] ЂlJa, ./n-sqbI=tLNJ,1Y͍7~d@@@qLĕ]Ԕ"l 3g>MznoYčāVoue٥ׅbe]^TB4䡛E> (N=LQvb,&jYz~l7-gvE%|z|%ߟ`‹イΚ0(ͯu[Cwl*۱(T'8%T;m(q y;aNBUFI@ɧQBJ>⹍=^%X[82W2h t6ΑߎqS=f$rXh}ԃ<8z[thţ,yDne]N> k\D Ws+ݝiEG!*Z4k_szO 񏭖I!=#YFJ|i:NŽ&>*uVS2X|`@!LNK\ξ;MkK3%lm9$㱕&H;mIǑR?⨛8 B2r׽)l|պ=$^r#qit)$ N|%'tbwz eLzX>E,dL&I#܄ ;j {p8xL QK{eJ-& ݟLMbSNnP4k,>!&(c/zk²0u^)yS㞧Wr ehk(Ҫʏmʇ&vPjVR{Lk7}40Lsߘ|sk5=/yƷxO'cESh{Nj;3jq!e2T1C5nF*P}~ !+gH}O,:dt*ǀpN2+i0jOW2,L/n>s>E?7ބ戮<.;X"_}dN`54' *TTRk0hi1Qҹ+nU|[KZuj0bY1kͫR%g&7Sj &LP|+~j7Vp`*9-sޣ3|Ⱦsz q2^jFc rT`ziNt'Åplw(~yڠ%-ʃ|:E!\6=^%I͔aعs7(QrtQ esnV?4TaoiعHw)?HUMY - ^e Z$>ᢳQ3Wdק HAL>}i3._E%6ߐ!3 ˬ *M@)mtRγփҫ1 /Qkqo@0hR[2שܘgPM?"j5;Fߔo\SאiGBff&(A^ZtΞA7ek SA{R h Kp*VB=%-KncPl>9H gJX%a;eZ5 ="]6H_qqWӃZ )e^q31P. KKSp2Ը{YYg`DGY2,uo֫o(+kuv\S"[:klg RjH`>9p#fս磕e+pIKzpp9b;!(]QL:Tπx1c'qd)U(nH898"Ki-d>T ~ʋgK%b T(SNpP~?sbHzV^Xz"NX~.PN訴GK7͛D}Ʃqقd';;Zط]71A/vDrX[d5H*p0݃ו"n' Ÿyi?5ב%|{vXL }bP+C`nZZExh(oK8bm<I|ꞠA|6굷5wyo7ide"/,8$c}t3^m6$?g =Tzf oP"LGFjONގ͈+?Xb c }gjcb9Η{xCK~PIGJnXeME`PLxq[?v%>7633T%]ptc}V<-嗩7 nERH䠘sb7ʾ.ņLci}H\%$@p|㔞]V,57%j*k]eNjΙ I^ll'3itk>t&*W dn /"&5=Cǽ)uѣ5r&*qQM Q]Js+ʥ9;`y˯n`NHeI5 =ٛ.# _ g-2t[m A,8 [7&!35cx{P?lzrLPy2\8x,^9p)'I]:?De!* 2׏0Di=Q0f Y7jWTe%?R$4AN %zq~!44د}S5zC `Ww0@]u& ^0v? @Yd"w=Z!׫粥dc~1%="S`;!'59|E?PY(GЁ] "H>.l No!'4fYn'&<⥳.*]u٬J[ PRqW0/+ 82T2<4xIM?pOp B+q@ඒC/=wWd:1}o`w< Ǧ&p?'MU+Dp K#%] bm yvtq랷 ͸]fqC4|sF.lւҖudN, .B$ |m`XSv;-Mh3BPNYqK'Pڱm'˄L(ʌ_}nug[ GlëG\p4L.FefL7h=ҝ۩G6aM'zs^5ުB3 Ѻp31kmNwij}_MGk@EKffփHޮuHk\ũ/߃ ^\S!VbfU)vXs*P (Ob oR| H}Yaȓv^ # P1˖*"3-w9VRml~s_S<4ݏ,g\XaJ*.Ea&pw/.zۮ\5Z$5` p z$-;HDg \c6JߏP4/mlvf}lnVL5ԷfngNI2ΏA}Z1 6F%j"T%}S٢Ep$ ~Ha8kE'_#` >`7D{W]C5& um{ُ$xS=s(*c;i71˭IdL8#%Vk~Yx ISoِ{"HWmEgF&[ν@:lѵ5/, y6))?0꥓/|a:QPPf(eaML \*ý],Qsxx$ɀ1!7>b gPE~!Q#U'E7{8̐#Ti%6LU[DZ+z"PYT@lxGE~4QyB "q/'hiRt 7ժ ߗ{~9 bie9Ey1~Rd[HlXG9 GG }gac8Y/I蒜)(<`E[0o#`84UJ+-%2"Z 9!~`t7ͅjB2mQU)jD>:W(T+ɳwgeUDXN0>}UUf> Il?ĭO}cjNTQshL>t~5(X'KIA뚕v %Y)'xZ\e)kk"h.#6vjQ ڬؚ$qnturF Ot73eh #3)'A?x+@mX꟧6I3P1Вr8T큱CƨȊ>f9RHV7HA0a[*=3!-LH9:\/_8`<[,ŖO{|ĘE+ q"C'Zʝ" r!j|G7_ih^JP/[kUmb=$͈-;WݬEw.;2Ά-~BvH^]F El'uѨ-Ȓd}GDᓹy RccD}]jj{nuR5b~s}phZQ,VdǵƳ OKV\k)W] n;( Wm{؆YF'!}DPI,*f`X8\ oؠr͊0$y]ļva `ƞ`'A1Wjp.)+̡prw'=N7LLsd 5Ӻ*D1u;ZdlFO.*U^Ƭ`hrl%rqմik1>LlX{@v+)+>{Fɗ[cr")4RW/_I`TsY ~)KdΦl5q`!A4hB<7{r ^/zSl_aSlh^BuYIk@9;vv[ [3zYyAn|P"殌,,J5;ʶ7L̦]o. Y __oi]n( UW],ç\5K,KLTixxSYPAePXL6 `#0* KzxUqUPɣ 뎂73Z[""₦lAA:ou%g:I-GS.|R=.ͦz )wb7E=@cGzooy*/[7?|b\lل<ـ!۱-,20] |i.Igs1M䈭\d2i"/F 0+h/UI Hw1YZȖ(W=6^XTl8\26]@ϋh*i#.ؗgn=پ,?Ҥ~Y ZiUeVDyK\v[w_-P 7%k5A!3 bv rF^V!";vU/B pIB_h6V}N` k 9$=SQ;봜KR8ǯ?jIxd ?'C*m>מf6C1q7t;?HJC>'aBlK3J6ۉQN Y/M8@?i\Hb/,_g @: &C͙^ E8f#yۘ܀^K%(fǶ}߀{ca7b&}?<|$"&qa,:NL)+a e[NCL^QCOk[~6+o?\-$ߑ1W3zEaiIq2|B y)(x~HQQ?#z5PQ˦ .W A <6J4t̞lB)BEwKvCD.hbʚS37?%Y.Dߚ_rgp>&wç[wL=0,hfR]͂=f #⾾/Y#C/4Cs/{ӶNCMh[*5yC1Þe[s. |u2(h%CCs'̥]?{F7a<'86y"42lׅML߉Z`[fM4>3̔a#эA2HTp˺/%W,R4p]UPS7p:E|N{%zk q9 ^|‘Rߝ_*% 9FcZb;VJ: Ys%3>oV;{%)Zi *<9"z'ug􏯜W< IY++sMD'Fzi;nCs=FbV)6Q:b\43Z%G J-b0uPgdY&o~O+toQ&?yv`Czqk#(E+o7mr32jQHCz9bգ*2gKKF47l[x% &РZos{){M_:)+WQH3Fg 8[DYw/o~.adeF徝`{cuE6b{K#:w*.*l^NĔۨڨ +81%|b^+DA1H UZ{mSd~vmǨo_ߏDO>;`86439o7j1iK0L+3 &*.B`b]I|6*%N:Jt 7_ {>6 NR7rɊcs)$'όda)eObW酘_\#NsZ{׶%M>Pտ'f;hB܉[cͳ'j%ʽ =ZɈ`YN-ѡ2#2THSਓsɡlR7,]57*˸*|@{9 B{fMhZ ܨ%M*Q+ΜpC3zQA,!tJZH򯦼u2,52 ~ldm9q'LPsˊϬͦ[TZ=7XE1Zˮ3kl9wՕiMs# :zbWHp ?\pu}|Tw鋖2xdTR#?lsN !k"F>U8f߰)5k->[jR2Of ]t2g79d ڏR<|2Ԝfn? E}+#y$Yd&fb ^:Cvݯ4<3zZ>YT@|Gᚻ{#=˶=s" ^D>wnA)@zbvytLLPL %Vor%Y,5ɘ91 dT,yߢ)Zm0֛8g[&k>TWSMYԂ;@UTqu[:D`ng+<'$@b[r,Jb[86a0C P*+IQ=j'QrnG]k]6n%I'Z]L>Wye'g0u[f)a5 LA\s]w!&wUCb)VLa_ͅ3$˅xӐfW(9q.u}Q?@-ʆxMK`b~A,8ٷvɑ'Pv[Ze>L]25@\սkF٨eS_m$PD7m,0N ݠٹ3X١`RBkÈ*w'~ABvjh^6][7`HxM϶ oASZ2&mJa )U)4!]),K 'JMxvQl aVL _x|'^_ z ,hI7j^u3I1\4!izw5$f`ϔ qU߸F;儝q"FW<;[BQ$ HǓHD\4ij|X|>t(Yl h.z{]P#A0oY/l7l7$hP?qBTq~) еywU>g*_h'`1*FaFBl\ߏ'5Z:vݭ*9 ?K#r߻uܤ~Ntm4?7epf\G1ag"oOŕׂt8WMmf lI;EvdQԂyBdV[JkB"|7Bj1CўkD!>02۝oDR~+4W1n&" ȸAYnJ˞Kq yf|6lCFYܦ/MoW, 72a=~nG E˅ݐE͞X~8V~%MZh=KcISAP@{d+Ye??X u`U+:'*$6~ @R:6ۆƈэ<CZ}QYXdR=cZL~On@C& 4FBI㸫/۳*6ܶe| &#tO݀?&N-fX_cB@ܶg8-Yzʁ4[|e&wc1])2S &fڎ=<9N?c8eA%`1%k.m7\QHdwa,=\JT-k%/Rjmۏs\suEy^?i!ȅ> (M;VFa2يE4$iyV1 oO0-#l0sHԷg] )5Lf?E3GC}}~R<0;.P 56(DfGR+DRH' OWEGj g3 ";P{XIi=v'73z4lrdZ Xʼn؞Ey%{ܫ-nlb g/RTQ߻m؁;VLȎk2I'?47=M /6q>aǚ[+3CV4@8zZ5B,Bk3M+$=8lN7c<6`Xmil*}tYgE<y(7e U fת`K5j[Mv6*4BbZ=W&`s/1߆bz }^`deu?Nq!,ٺI`8G )lӨl$}ڃdoˇ扻J,r2L\=;Q +cE'N Lп\U d!U%r;0;]vA&r`N#cNҧ(EtaNd:֚sh~.nmZux5'N !j4̺AH$ȡ@ ɋmVT;nGaIEkkh4$Aidslr8ZkZE7;QP01v="qF`oxfFxoڅ;眨۱' 2Ys s9uߊoCbjjK-"`n[U_:aE[XZZґCCVavf3/{ *9654lvS(ɁBƙ;AW%63faX[> 2+TR&|LbeSݶVo&ɠ徳lו̇iW+$zu6ׅkdCFfF$kXJm\1r8؝H8]XMҙe5*qSV>bSjK| (K~~D\xb);RɱK s0g=ӑcO\Ts=\T޸CdSj$7i帴SmN\ ټ"g{֚lӆ"ߩ;1hsvx%_n`k#v:7uN1SGT`1VlSCX`tڙ.hj[%Mщ.2q) =q%W,׃obaGOVWL~[C#^rX(r-ԖNEȁu9xL5!cdN(\ ҕRjN&x[7D7R\]β N_("B$^ƺj8qA6ە!X% ; F19wj ~7Vw) dE&iZ}_}\V{.0"t1:X Kl#'͚H7="2E/H*[Cڡ[ʈL޺\xIAu4k8tKrO(AC_]RϚ8bg{.KmQ9sBTkXKg&ɕOjMf(cr$ę?k9f2 g7rTdWm*"D"dS\᳋BMl:X|@{#=,f(jz>}AhfʂhāC_ )q[d(Q!1hɴP -! x:v뉬pf{vp@x3^MF^sŋZJep~ӄ!̮P%i[̇|}l6Rs1._G~R"Dra?#!u^x1~2&Cmі߈6Ά(pr마2ɓgˆ|\jM( D%U OF|4"lxka9AL,8x>`L)E MD'%nN{~f+;F$vFclmH;%=NO쩦m:!zr6KVTզ$NjbR& KlևM~3R4cU+|5,5`]K 2Ev7B=N C`|:.oRsK R=.?e[I qFPoJ^qY׀/ IeQt:De9E3,XЂ>.ځ:V"&fӿiϗ Z% t4E]of"Pt0O n9=a#mn|퐅 s_ceΠ'%E %IqyM "\*f!r&坾i^ E;Qh241X_-̆ri.OJA8/)ڋsBvVU6 uyzYo5E-¯_Yx&nrZ\{CxDD$,![ctc+29:CB꓌܎g+LW݊-h4iAv TrGy\o M]4 ^]#8 0V2Or5QΨ"M/pqb˩7Ŗ 3nW!_)l~dryY?ЇZHע[Z. S&9!MA}^վV#"ydU!aΝpbQx8ݜb b$kGdԹoHʿrNOߍdDI%k"5$7$tuvץci?i+?DZa0s_PQ~m;nis6Hȱ2V,X ɹSJKt LNjL#L4rx&Ĉf "mz e9 RLTLx)סPX4:T<8GgSo`.RI_#Կ4G9t۷GeU](2  ܏y-wӋgD`#0p7m{ҿ1’cޗ-i<F=|g"inŪ0dk0ݻs`r%7赯M.cO"+Tq\U\:`]U7ni*/-J) h[RtDӳ5xQynL16&l1!s#knؠgoV}NǦuߝi>uI,}?1~i{` zKyID3q| {]#fq, oJ,y0t mϧY&ٶ…mO_!c,C29x6XB@"E&\]-`z&xw0z|BF4H·8&;FRsQ64Q֙'W ,̢YV1`c[Yo c_ak)PAjj" LߑABP/]O,}kpo0"Zzu.iaF%i|;Ou'M~%ghb5<91eIL:w>ƺ͇.i"zXbӓt$/sn8u2?,64I k}޼HA/%#SZljKeaᐇQBGkroGP}iYwF.l&1jOggS1=2%N0]'Fy`h!pbzobs|xiInt"`v3434ZHF8L7Mx˫\b-ZD +@ȅ%~d,Ry&W8` +AkBd\NW9"+74tx:-q@P6sNذP{*z~ܧ6Y;ǐD CSwR„&%@9r0&rԼXQtl\/R,XQf굔؅8ewyWFkQ&%~KZ:8iG{y5G* :X@t}qT6]Y^"BY7Y&1нgqig3<HuiZԡ?"AZ#`yqC~}NzU,QI:">A'ߢ=X(P{lE CAdA,xu^Jڟh|i̞ÃfoR쐉8$еs)eIҽ2&B8,V<\Ryl:]So =A,*Pv>Klu RҪ[(NØa=DcD3?\"Vmup|2aJp{X@ nWs| v~B-/URNMZo}\ɗY3k'Xkt'W!#y7i6%/%G`$@$c7HUjR/KB&Fk>%qkVF,'r$\jHÌe,fT -s%=?bΚU}ٖTi&t߈a;h( EUU(;) Wm}qꊺ1䧴rB l;s:MhJQL7{9:&ķ惁161R4KVJO tUz]pL"n'b'c9,F sB+P6Rֲ h1T;p32 kc+#V`+"扔TI83fBw̡;XҒ3Ӎ ~=f\[E_OTɥڱjti ,f?Z]~v$U\p4 J8vULb|q$rV!SX~u]^(mHbdi|ZXy:rc3?`"pЪz8`\"-W$ORKIM_.鹸kn:—=bNcX;c8aߠ\FWNtRaOEaO& WSS/X[lO{W r~ů,6') ֙>6H8Ź.VTףlD@x5*i|P xsIVX+58_Z4L-Rg:pnHT!b\h8Cd"\L_@FpF\f`²땖FOJġ*Q|`AM{|J{;CLr&% dt[u!?J1u,5;p 390\q<Ũ"#WF>Cӹsy׵Eդ"xR6OVQ6ɑX\FjuLl/hNeֈ'92N@=TNSiouxvQ(S%O+qz`Ďr` ,/9+(j>'k[Vq08z}~B :|=k:n_Œmv&$Vh*'7SRx$ޫ船ϰX{%!)>W88-AZ 2qA]ّXkx?FUF @V^5Țk\xcܠoFH͍qe2vʵEhL}lᙘpʋ[QD8rdaHBqT-{VЖxjϿt5 bJb_8"q#+6q&nSzYU`[0PSՈTr|gNՊe/ͰON<5 m>Lzuf fۛ_(َl<CUly [.k‚[d(x> >kb̻̭sqj_;e8۫ KT;j`( svclKmq﹝=k [/Ĭ)y!,8JQcNMH*q'ӕ+"z*`DqX#iKw="s4L)29syYz8LAn(F|xau3Ԭ}N?6(7DCdւ5)qs3Nmh"|7)?VS1l5g׽;;A,*sڮ)[/u<{0lm*#1ܓC~sjPOF:7|A>9(۫ *[Ri-hذ[ͳx!+,moZʉu> =ZÀY'Քmdwayy(uD?sN(ajIOӂEiqHo5A&wؙh0EB 10o݂hn3@'C ^8d[Q*V㈮"`Y«7*Z!R'| 0s;o ˜b[}Dk ]ՏGE#ڳ=,|խ&:56$-L7xz+|Q~Jq=̡ a'7h*nڵ^wI %=LKמK7.nѵ)IS_&h)0"R8 [8qcAf㋭`P*ٳ |5KnJ·(!*6;F$ }4owLr[xEݠŌ/LsP"Y7@POw31 D7Y;nJe6azz!LZ>8O\YNʆi mK =k.3& -'SpE" $|;r?xm!iƞ 0y%vEze9q߂"M!w^d74_AJ0(w|dZJzvQ4s _@ZS QF:IB{p3a k/?RG( *₵,=h<ȕnQW ʔ_D91^`X}T}RL6+E ]L8!Zd˅TF}8eXHCo Jt45)Qws62r Fj: Pu[ a˄Ks@#i'?vbx8*(0HN۲LO7|yίC b'nCFak{VX5 ?CvhP2r1ц޻W]b& 3~Icshۧ?m^Zژ֎)>(;Ffk{J`TzWw8$ nC( X5^Ѐ+}D ޭ^u 7|S\N]2_-^kkO5=u0~ĬUipB?v@^;m/TA;7q*;LyZKأuk|Jg$ٛ^.`r]wS6l(z)%G]  nꈿqH*xSCY!3ou#a3ȸrŬdlN>Vkdy"#?ٓFy)igBZz>a~fßUeqF`3+LI%FmPx;|N!”O(8m{QJcU8$8+?ͰS0Ua F7mS<,Bt Җ)n*gm$3+edpSʂmT`b?d椦usRZZ{U-Ý5G ƒ$wn{P00Y{JTd6bЎ[&ŻUF{3yd~oQ<]?%[oboAP@)t=[ʿr{>kk, Vs1EKY p7oMNUY]u Ɏ *^)^k}f%;# !C`Bmn HBq*زg)demV׆8PT#$ ֽ̒Q %ySfIxnysQ϶qR/ gYK=mT1tKTP`Eqqi>-ն$Ay7 P? ڕMRy2:l Xч}VwM9 C٘}'rXBnGa6m^ȺL8ݔNi|R/z&L0kl7 gg;+=fa6+r]4F\'B]ٌ=I|{X*H$L[F mHjPj̐ 1i%p+`rY&h. N\\Fu;3|]eUV/H]T}a];6@8= ޟM90ɼF]tn{ڈJe`XKfِ,Wo?s2hkvi0o(|?];hi+LJ5~׽ _{RNzJϹo0O*"h6Q;&$ h™lDɘMSmѰ<[X42.+k%G( USkQՌf榷^ڇKYH9r+ٍqGV6T[U^O0)g"3]fޯ"$N4䔉='9 orYѲӇʏDDX/boA+r;kF1]fܜ91^[{)AE(p( p==, Ar;a ~1fT}18΋$ă F0RhY91G^7̾r6ۀ"7ܻ2x\@<\19÷s z r:FhJu=oIDU1w3 ߺ5Q6zz?6ǽ3~9ekm 710_wZmD~g[cm#P|c«Jȩ6S+?Y1xuF.kЩ(;@aiӌ{*:?QP:rhbYe dS33ϐWJTIL`&gnI1|m}§$guX /, ,2P5nIZ1/mB<~V6'Rh+@hO3u"W_C#s$h^vaMh)F9>`{ l$cT}Y1b%A2β5jP2]l-BM!}H(+V:T8Hݏ>~B+lQ@YI,a%P@;wm!˘PzӧhC 8/xݗ1& Y @͓$&k #YGI0|iGTGesD:e2_8*\:;ws.Wr) 2[>hNdmAӒu7]qJrGJY)ٛrV/@ǐxn1D$Wez9Qy8(*¡grگ ?:uz_4Hg ϷrIJ{+漬"OC1Suk$i?r@>ʹ"h4Iv)af %d.!-oW7 Ӈ |D=Ei9 ?ne&FHjn|NP32"&|gs*Kz X%bd%;ՖYpdiw% f q 1#0SWps5?q6E^QhX{uYN-'WGJThlFvY ꮬȤr4/RӨIh$h ㄅJV|wUQbG{DN)K U/ϴt~ & sc`07nW4${JUϦ/* mwю^ ?l՘Z~qvanϑu-f4MyH-[lq!m9C9 F_yB.0G!n~3Y° Zʆ'WPt~;̘wh0]R}mEæj'C }S(CwC }kΥ |zUeR7Z"ɵOFWkH7_lWO)np=fش͞ KWq܈F>l!69&}NDy86wC~c00hLWzi]4&.' 0Y)у_9uulV}3"r-[$gt`RቇrQY!RC}F m㿃aLGHPQ(bAow邴'Bh$_*&\T+Cۚhef$aʶ%8.ՌW7هƷ)pʕTfl]h5\jhM>tL=wGktA|VqT h0).$G8٧ ƺ\_`ѵ/ $6ôN%u#phPhC7y8Yf0J1E1 y Nei{~Km(`+K9]CXn~aޅOMpXqe&Y1'rXv~Z܁C=agJHyJ+'dPw[hX*^+;';HZ|]ßm؄qvp6Luݢ'zH*t)Yn+@vGȀPZXX=.c.Ӈw|$3MxEMsȭ|CC)BeW989mw Pz5ϲGkI4C$eow/_ݒ |v!Cdy4RHqFF'IN3>گ k7`=^U+Pqo(S RA9G~Hш y|"y۩lJ&V/VPMH5oWO( /Gz7 ?hVN>ZnlŔy tdN%VA6o7CFAH]7&iKPEd`tb4F^nWU ع5cZ7Mwc⨮p\|+ 7VB.n^ZZ4E3eOZop&Ka-:> D:"|fH^ϡѝ3;pUD>.|՝QD]1ǏlcY^,ygf\,݄859OWaSI(#YZRI;- C2<ʕ-'} O#<W.wd4Ke;i:&8 />ƺ o j Šb S$ئ{Lg,3ag+taߧ_')^G*>EPHԅC]DpW)ɰ_ m/WٮSIߘ!y|oSG|[0n Q[LlpCCk 4t&pKpjdlSmH;^J7 x+[MrUJrF5jԌ>*01~;0OC;s!٧ɂGH졨 3aP+OIu'{iRCgkua>\Y.쇂C/<1L J  I%jQ5BG8%`3Ψ~{ tbWx&Qs eT9uaz n39JaAXtH"XG~ܡ{rŜ5hU ]n3'L2@@a#NmM&W4Bs8+7DYڸ =އe"&gX\VM&d:jn-Eg^*Ssx.*+=$,GQnหWq(j"_a_zo * H)0z@`~==TSNSJ=5$jMOAj-mC*wVOɱ:">G, 18?pz]xA7 pb[5 #a0"OPf7Q`4iADkFnaޠc"",R1lkl#'u<< | Qp t0zӲ˳T1py[ 'i'y/& 4)s?nI(!׬"dЛq[} 7" kSȴLR^>PsWa=B\]AP81B"B'UBݦ.{.f7m4{{pŸƦ/D8&a0c!T-ފJE὚HJh,OA%./fz*GZ'LyU PpH h"n:! "TX ;dvO71\[kFYt,p=A9j1{;Ef ?<7:{ǐ=Zxblj>^R/ҩG֞o?֐E #.VK3 I^K^>W{hƁ}SU jє2 +x6ojUun fq.zcN-'ϕ Ѧn;ʏjɐ>>eu9nR tvr _ĕ֔EfߎV>(C(>rI4:tG%^w1o$2RH 7@~ZDD1o"uyM*76^⫕r_ 7|)݅02Bڨ\]+p!4o,_e /V lzo1Rbi]{O03Ax9G]c"$leSCnRgtq( EO:a_cMθkNM/#W.zߏvax%ZPhpCL2\ݘՅ^Tc?z fP(i0*QM!:^KS:{$Z6+(mYJcZk@rar7>j$|d=aGGjbp3)  ( #>3[ܧd>Zol.&$ߞT0S\3kzl)o}jPH;@LDA4mz< ?TgYx( vlFA<~c~y4 [icm׮8ۑckV?%cs]K Dɍ*5ߛjeYB4je>el6Ӟݩ5"(hcl`YIq% 9f$hib= ")_)*`oW@q1#}ʞ.g}Cfl;z-LbpHxk.HvI9k, đDd8:f[:mO.GisF6*!+96!» R7ȣ$\bK]i[Ox` ѣ}5݌ ( ]/ 47lf詃T$RCEH6VXSk0DlCڣE%0^{>.uaI,]喔m˔2 ܌㸫 1.n0;S9r(65[5ҔFY=q oJ` #m@)Is?6ˑ3gTB3Rۀc dǜ= _ۀH#U!CoAt Nm^_چMVA\^cJ%$5И-܈ ||q)4#{3@q9ݬ?vU.zi %1kj1Tʧ7 ^"jrfmeZRmp8m3" }Y. z ߱ʄ%$Ms&ڎg^)@n_Dv0p/og<"owNjq0^]frWuǮܨp $@l}i}6ҜO1R]3l5'A6BۢCtǭNr )9,pm.+­!9)$~a I*BhX#mCF#4-+.usLly\E3#k&Ɵ`#KLky})З-V[6cNJ؍%A-`< yrNίJ۵`1>^+-u]PHY(Xdɴ_ {O^bPi *Yd"0n85J,c#ѯ%frEs94\e + :MQ _cS,nDYS_1  ADžnԒJ`@쨎̚HЮJtT غq|LܔN/~KV:mޱk׆.kZ6C (L/b>^)ɕ+=L£픋ύ}k[RY6ThdeNy[E"qKcG}[P(g^@!daKPuZ" |Dt]I"W{܀=#tf~i-<޽'UiArmE,3lZQtqKi݊WסJ12E"{K4$|g?EEV^||,m1O(YY)4 W"ݏZub$+:wa}^s&g6|6ܞEEcojM* w;XvBfʆ*>CJ-{Fj7mpe"4d]xZ/?lǚ;G|^u,_XiۣzU/'wr-dաT;LY|I9m7i@"Zyi@&U"zPFX`Sec#}#d5B;;O1FPiipε=CE~R❎w0 8$R\Y BP]+ƪ6܄!aqzhV cŨ62a;5xA?ēáCdW%-xke;\J@(jZ E[MF+0CdQZx΀Jva0i~[5jTR!Pn7DMg 07MTѲ8ikB9DrO a%%w$?qm:zo_zO9GYu1$ٞk aRRGQS({:n\Bvso*[*dMQTS) ?cK$%>XnC_ )Ut=C#PN̜я/oeY -hC6C #Aʝ.lp>tl KFz4s!m N4CMc!idzssz.7r}"p?cFX FN[h WF0hG핞`/vFGP*+pk~CғMNjO2̷ E4&\Ԑ 41)ovሾS&X-@On{Ƣ]Lyyf:5V1v6-im(ÚNYB \j?\Oo#&P0= @'A%AG^ڄyhe&0` k(NSvb +]j_%Jx%5~g1 4Qwj+Az]Mt(犁=͹JZ(F)eM593hA)t*R~:cӴ joz;xڪ m24xEiVm~$q 7~V` EgS;nJ [׿n3z,DPC&LۍR{P a^/]}(~,Q^|!+/We- to$0`d.ty mC} ^ )vB=,Ѥ/IŹLa)T2I8TT8C׭ UAQ!)qɡR|e1?Mg;\IOC`Rh=:8{xzMd򄓎7-h`9Nr &֕ ڒő>ʼ x_T/ < iD,SPxQ6ZW9qf͎ 専~#vX: Lȓv1l>4̒/!P;9W.XIzLdPq"ˇˇ /"*{,JU;UdnD~6 }t`pjNQk(̦A|g^ ;riς2Gvj@I?N-<`M3&=fos}pDe oڭ"*nHc63HEbZ.* h|p|Fq!E·gΊ~s;KruV̯%d0cGUz~ ^ П)=} P:״*Kj |28޶lU&9A=ut[=d:YH{VLɰG'JW&XVrz|[MrU?swuVn?bp\CS'z:ts>1}lwxp F 7zdv8QCNRK9ćY(?ҭf;7͹Y} /J_6PgȷN%T}{`0*. ~%2RD|YNZxɒM5ۆæL>FZ:&VB2yZodztehQѕ1nGPq F8T=~Rbh]p=E;O=saRIGR0҆V$ gH<{+}:䍄k,ٴ,j⥄sO/fO=X*&]_Y ޷/Z,X=xґ%߉ %E+dN]d:@2QN G^zMܝ XtT3#SaSJzyiYr!3>ߑٹ4$֛K\}ܾ R8(\,lnoem E1W(P8h}nI#;[kӿGZn{o U Nm= D(#&R4rk2Og`{A²޴ŤuE ɪ 4Č ԛp3](Up8 D^ΨLhxo Ԥ"[`֙=稠 A09,qG[%`K՞(OtdYt:])_dqǡEH Y+Dk lxIQ!xw\<~:V< ?|hӱLvR,h#.vr18^;-Q ؆w,pi^]Y=өB'1UݏqTᄌMnM+^YfN;. ծ等"Vkڃ'c?,QtEah0cn$}Vܳz-ϴRIЩwR]^9^Z~\&|?JDd'f&;g)gq {+!#? _U/>o[`D:oքV2慮ʞr2\GR{!SxP:/wmLjT4^(Xbo+Mɰ"<5ZxÆ;‰qI?X Q\+!.`Nl<[ac ?s$?&ƌ\?>H+ 鏵ҁ$c]EŹJ:WoHa}[jzaQS[GoD:MVƘP^sR!JPa29h kĨeUO|y bc8M = U&OH=%Z̼%5u .fK}nkZ{]P3vmR{Wl+4˴HMmx;{~}RyMtTudP VY,_pqr?ʂ8SZ:NJ1P8|jZU-¿XrfI}XL".J!]ZeȔ}193]*@x"IR #B^'6YPReϓ*boL@2}%7OɿЙˆXEg^u^)KEc$uxr}4v5\/m+G8Rm|7{G ʭl4OjykU ʞpUH4tqҭsZl?#-}/}tRkHi'QNZ0F fP $*)'g@0bȎ\"ǵ\ZN7g (LC`~oMyL?иzϑ/nyV7 f Ƽ^;#L}JK4;Ho %&;6(]k®R ʤTՒmxC[Z?:5&JNԞsiubiZ@+B}W!rS_6{.yv _zRT-RRL73ڡnS&C{q9"JrOOIf%QV/&!$wKNIcrDַvia.'X723t).k:rcݞ|EX&v]_?ko7T 2 }X+^#"Nb&6i2rQZv3콾f ۸n,XiTBì2Jr6RdD޾etQK^\n9k(GBO_-.6|R{yǁ>i 9$BTd̍Q!](޽oEi |(ښUոx2MvQJ \!NgQ9Wy$&c}NJ\GjtR2s;X,ܛʟqd*W(4R)4GeVuK"5vU{ьyvs R"38`Gc h g1hHap.r OGӘ/p`H_ nbQ7vд GкYM pUX=d">MO0tߗ>R zQ޹iNd4l_ɋQeZq`<;FH/8&C3#d(BN3 =?%+1 ,_#@'>G &r'nĉ%*W^h,ssi{$rNT\V5emL/üLplޫSU.p.~Y˨mnP4,Pve# mFyKEwFwYa::: -{08;ֈ84ݢ3to(Ô`F`aǯRV7UZt<z5PUG;&wp{88_B# 09uYcx$c?}k5;py7<^l1 LD)S$i87 k*`;_hpvFCT)FӺk%gi vDIV.Nd2YWM#%aݠkYd*☮HB[֍Cx<[w3V+Wlv)LڤlJEN}a78 Ó|F*eL=h&Q:3تw|zK i!<=R'ad ǣ/,Hצּ&Kfgpp!!/^e>!Yv_#Ia/烻z]8/{K g+F>?P᫪Q{5p`6<6noOr(/a58%JC;i KFy SSVuІsQ"yRτ ep2X*_0D?'yҘ+zٗZx:F9{?SӇȭnj4 xGR*7:>WP6ݠi 5,ՙ1y de,Jw/pѾ\qګ*W3لP6=ohC٫WA!:˳N-,W} \X<Z`wK1qN* 0gT)F6_ӠzηtSĿ`0fcaf)q|YnȷWCM⪮e#0J3Ä^ JqC.H;_(LF LwrX/{[_F~40T½Q&} 29+8no-/qOq}{[rk٬`<kZSv%og`Xl Y7뻪Z-zxU -%ZO0JO^f?.ŷ E'RXTRx9%Iu(0ņ|UjxF#\d,?zE׿rGgᖲ: '6.j'zǥxF&y&]l"nLmiMLiLy(! Ka,s˷3zJv%oB+,ݼ Z`B~TmnQK:D:û>6hΠu/RvKW!1Q"'b> $i""A- H"N9 gNr)oa\Ijr P߻L v (G&yRҪٸ;myJ*" =~Z%Ge<yr@8\ Εf&.%, 1e3[z"Xj /M qCOUZk-|7m;UgSBi w|=]R9=ܝ4}5oP@LkƦc%O bAR8!OGsmcBjŽ1&IGՌ_fNWEADž8̢ Qs['~PNSN SdYYƢ0`p &?N&5rg$kqġCn/mň(ϳE;foH`;@0R񞠵"ÎIxBČN3e;]_yhIDAi%Wm-.,rD@TU^(ڭ%'%6 uyy!0h/P6O0tStGsXS(vV髣GW Hd@M3 R( ߒ*cWɼ);&6@KP,h$v#=wYtyޭOS}tɊ;XP^F2xDOMόɈs7flC}'iߗ0E꺊iʈkc5``QtPh,%kT9?$fb@,\pu$]k}o U=$g#E0'H8~Rlv+jBwTnO@r+*w:#ȩ41b:n-h3`P}|V_+E30Zth@ pF=>~q쳵 /)@B\ RI.:3uAo)N& L?_'-rnry%C\ ιɬ h{{6cs/0"{T;}FP17fF>VATVb, @Ah^? ES9  ۑtcvH]g-wb^MpVbY {:c_"Yͫ!|fl3V{nͩ9wd,kB+W(,(SXa&f5{#t&C^y>*DI-2𜥌yӞ{.mLb0%EלU5E:rJ0YT*wh%Ө`|RqAqYAYhtE~E1U3wgClLciMm@]Yg,7]DXqus;D)"4m&OQzNڴE3pѦM@ƶ8G7xJ|5ޣ} HyXh5oz۵нc$#Hv]yfC/'Y^Amo!Y%LO@׷&= +@ fx ab]w״2MphFmN%c%H h<SG,8Y gKrT_ .r 1kI@{y;Q$`~b?\gx"-\Fqg+u('FSG$fibJDQu:|F"gVsc M}$ B՛r@ti뇏9o:f~/NyYv~RU UL4d2L6[=cH뗔3EZLm(Ogc)YF>M#dDkWLO`ЃOCzx=G[$5!B|sD;c=:>a,i_ :be0Ui8miԨ_!EܒSq eJmH߈ӕyeKڦ%}NAVRzx= <>{&c1tΓ_f鯪-_F" Λj8g^sF/HhD422@XSf(8nЇ~So2{/d ?r6ɭlxώh],7-R߰gnZ +79Yg-P|!b&ggG<" [:@ hWLa$- 씛 ߂u'"OioP鄒5ȦƝA{,ّ٨BDԀY KDs̲}Fn?΋-44N$gF9mXåUm.|-/ l92 !\y0lUGJ'XkOX !eQ/'5궫kD@4`6a]ɻIՉ e}ЧgD`_dL bh#3ѭQ/]ػ^&i u)kv mA 8jx!_op$9.OӍyT`mkElF,(%vm‘E[ߺW<ʋ\+`yI,8Rhk`D㷉ay 9cFl{B:BS;U@;RPg`>.Ĩ$^N70eEdc ?*{$BVydKCzb9*BSD}`H#FYSf޶([-Sq\:0. K$@z'NiG+1*k <ҺhR+zhLr~(MɛJ&av_ہ$W0^mV2` xҦ& j"(ߦJOS\h}FoMa#>0́cR|Mk##WVsS+6R潳jʂpyAB0k[pfʑja'88m#frieSvwN%hT՛$DX Cd Huш[J+)Z(DMCŠ?uHΣeK/bR5Ǹ!yB+  J$B=ud>6pK8,s}ǡ+]N-b?'&dn ?VN9hԏҐ&:Ҿ섈щo2r #7lȩߧSOsJ!!T% ABH{ҥ2i>=R)atZ@LfЈl3ۡ3$DԳk#~`+ݼEAEQ W[L6ef,j]Ls;iX~ C/ª˼Rmz槳b\/EA0RuRHrXĊ?^b/F)e 2Vh~F-J"~,_6ͧ)@blߧ\nN C3\tRQa_( T9ez8Qt1[ )Mۃ0A {t>~a|]:u͆F{whwP'TWY34oTYyMN?>I0 Tu/o2i^鴍uNvV"O=)EsbiK8ƧZ)A=k,w]9·9cn}6U'B6811" nSt80\Ի/:,0&N>3=Aaax%/li pk;9aՇ9Sɭ4]B'[M[+1$.#UTCfd(LKa Z׺{Su~gw?¡w@̗Jekǵn%5G[6^u0wb}ſk|{%XÈ^,}XT^6L}"CoA֣x@206ۤXW$[K;i:3,`p}[!XPq6t}y ^Qv, ң+Kr#[$B.54 ds ׬7\SpƇMpA1oZE[éxr.W߆i-_)8tʌgixKx"=V_(@݊JLԿp+ye!yBݿX*mNBu1P2O1JhYJ<=mD4_*p丱<̿=mw`ZQ-kJHs)fL[l-[S3tӗ<u(hK#Os7 ҃<2 w1]~8&BW)矷ÕC]On6=x^O:d]iҢo \jFጫ)FR(C_k К(&MJ(pzU[nRy/HNSzYOOg 8= ^5qn[zkEt>٦y B5#%=@#m>h͹\Jg S"9$(SP jpPf=b'DNjʍ69ie6C&4zW8Nk R\*moѱ}EQFCZ*=@f٠eK,%?Pu]Q׹#Ew&[A b_.lh{'#ruT?rͫl"I{UA_+O23ts1;yuZflL,w0f'Hݬyz<t{ hǒ$7|:dWoqt멙qi8V #:) W\DZ9$4~%:Wt2UxZ/ԢEѸZmJ91&mH. !GX&.ToEq5ߍRUHv/顋M>Wd³|{db1G48 yX @w{^v8]h+AqG ybVg ƠMPz kZhUur'[Unٙ`66 e7ܔHlP(0Msk;㌓xcZ`Ncaaۆ0Cz H ywOwzw2R}{GwKw?e7ZDw8tEYPy3kq.8F`B zhUN 1zjQ]}fXz=T~MBnt ,1cwOn} l:5O*FS1z^&VD@3ِ؅#eF؀j.122d0^ ׮*`@Pq5C:ʴ3Mg!"XP5qwPt+@'+שA҅l𫎷[e%7"12dYL X|U$MAgoy6 oN3WdfQt! 0;s?kFu +)JJ"aU)>QL.BhVAsY| 8o?܈e鎱Un7'C3,̊n v_yM,ȿaoD4G:yJ+D1zŪG8 59RAtxuȭEVʪK"pQ>g:Rܵ[('I}O[t3jJsSӽ鰵O^9.=R&=* ^{Eb^35iՋ@Ǐ7d( &*>~*9\a6aNЎ͟ aGBSM#w%9rZ {6I/==Y(e骯!Th1|œy{/0TW\[5܅vdhŷ6WbL5o`.A//M˼7] 2HZĐ#lUWhHzᔣ]s5Bk4 0cGQuk|gvjLo荷y61W?'A :@..{2M(r$Ԙ_G>wXĂ-ӆ.n>7<ʜĺM污_krm2W8`0`RSa% ^eIWh S {XKus*s蠠`:(% \wz aT):4si-`%,s($DNufnE Щ'p+|n]}ʌiP98@忯rZSykVJQk}3*<pnu>޵DFT;;jJk`u 2 FKѰS6N~1WxN-a}%\y[|w WjK76ڈ)ѓ1ǮLSVƳAGjsVOkP6spthby%~YwIwh.rM+J.[o=䍺МEQM[]t?qYC:6w(ezI) Y ߰[ 7h MXbm`q6O5hp-!ʙN^dTuDtuG!Zv[JÓYy͕\^2gh5f' d]! aeP%Uפ+ 4(w1_~Bث1-]c;B5mkwa|p}xVL7kf' ;O⇰"/dQ֡*{ɔ볕W~&.N/Is9S0 (6jT[ $#u^im$ #x)u俧zyP4oA~7T.YMDǩ0: Zr;OM4Mgu*Ҳ_㶪y @mYY9*]ccXX1%B=Nڣt@J2,}zg{0ex/M!G-[-3eT$Xay6nE K4pi96O.._A.0Ҋ#3?``/Ǔ yF3n%}FVSCN9ƿO-*8| bڲefi0>|E;-E Uꪔ./c\w3&ӦKǟi6?[ mN(yL*"PfwnfSy8Ƹe%45cL}ktv."amPCbjb0ZFx-r>lK7k[+sݱ Kc~{,@US Бq=*Syzu Y 4h枓l(E^̬RrfS_8M&7GZ }xOa, N'T ʋA&aDJLJa+{/- =]Ufxi &"qK1ڹЩ\Zaw"K*S]H _bV{/0{jl jȢ$ 854Sdx(<KTI{&hNΛL.i*z/]A[É>^rx30, `[q<;I 1"V$q: --*h?F\Ûk-mӹFQv8=62ŁE ;S7Q+m,uwPq44˙\5v9IZ S3?I)T&D3vԫpC#La9Kf˼zHgėϼq)sRhӯ̶",6z8r 9kEw/43kք9t;2Ѽid -h~>.<*!vX/"}bp>'2nj5j)V? hkJGĴQtdlYz %V~~eg>%~jMRQl,w_\GcP?jf(d60yxY,7@Xz̳Ø6X#KCEb#;yx %q n o^׳]`ES>@qdU1rU0?rb(6D=A1bRt2t %4ID]n5A!Mo@t__hTX]-:ZDl0ݠ41+EvBٺWݐ|հǾeWryUT؃fqToqx 5[ǫ"lPҔf+S*K.'5Q{b8T\Z32U*$a\mKvKHYfV Ym9[֢e |l 8h)Ja{&X8aoyt` ZjuL(@{x\`W:LjH1:C4M^E9py 7I]F.~GLSG 1$nv_u+`3iu?'p\(ֺ=(y:eqыT5̳<Xբf>WV1DUď`o8PB8yo1tGKf tygo=r*P!w홨q oW;s\ܚ9yۘ͆41Ob# Ce2ucUHD%B)Si [HaŁnc( ~ӮYc1Dxs{?p^WKn̢^6lVꐣG?݇sKSޡrPq.ySF"cێiL)/y\K %B/V"gvhy OQmZ]==T*Ej/CLA"gY,Ih~Dѽ_ 60B ;spCs7S[9r2o. OcO7%0OEʣvJ(.ՄCJI& wc/JK~%ao>2 u XkKl.h!<0;WfY6´9S"UA1oWJ)*mLhƊNwyل\2{v˄PE K2HhoC9̎~h8c'&~U쨦RY`ORv%j";X|iĤK`^5k4,[:Ƕ9ΖLӐE$=ۙh#_gNT!V Uq|0XP!IXPphba햼7 {/8|9o[q`c:x7&i5,#]0cJ@#N¡<~SlY@Aƭ^< A)m/3 ki[$?rřvuJr$lH=Ikezs}¿7M% 3WIxɟ<-*ע3wpa9+mP i hͧc˪TA$2dqWK@$ObUAe(ゲY} Z.dS6? y觐s/t>MyȕHS͵\_:*SY=G^.jdmLS"TC()/r= =vxJf8(#nMdjuΝto<)qSJ#R i*Dƽh|AF|ֽW_YD2@Fɷ.i` Ԩ\2ۚԬw|ںL֊'tdiombKxD(VR^]6/\njD]U?P3{Hm^vH9̡{zn.Щ*@88{Bz/"[G2oϪ7UD5=SH% "6և8ġr@IO$XP 5<@4)0ĄSA5PP]z8Gܒ2+4O|}~ 慬/.mP~,6'uΝ[!9{}d'*b)?x"ix"f8ށOFq /c+ab.g6˘>+>`{JZPgm[fʕ=E=Aw[L(<|kxC+J=x1>v  )/-+Oۉ'&}5dA}@ٙ}cuAx"5pۛ5ݫDȕj=HU!+naLHU'ZJ@@.eE2/ $& IBҵ Qk]1~Jg xyj XAy㟪V$ynڑԋexs_h`6a `ˈ*?"9`$بVRIl7Fa|ݢk8ܤp8YST\ar*]"C-^8F*Vc(̙b!t|P~qri '}B Pl'tEdn^oN0,7iȾ݈۲Ӿ;v41rMOKF!N%æWcz@raےC!;38aޞP0X#tQ4lnUW[h&'|*VC G Q)JTgqJYᬙ5\SѺڌl]dg۾QN x+vS` LO+bkh٪pI>&Sv'b-^bT/Z)00+4't.j *)x+0>RC渓p %-^4ʼO/{Qr⦤}/IC->bҽ(e}&µMa(0 u 9WĊ<)/YgF:uJ܅p HSōFbCvfbTwS/%_1`1ڛu>*ԫĨ8UZ2EsJRp-8L|<W /^cӒ%7lC!VhL-Y:u#0էG>ƶ`|9z֯R`fCnsNB l4.4b]!yD.;Ed:9LwAOLIy'rjw5Z{l͞v.< 7N4Ŀ{*U}AUkJx 3s'΄F;>^M;ˆqZ@Ў¾?A]뿂!5'p+ DZW/>>;@J׺Gi@E+jF86Ra8Q]!tKP8 xᫌ-{_xT<;)J{KG,à痷/.=\TL578aC.4#mj80(p3x#dʒNSnv2He;x=5sh[g/6oUnNHsk 1ء/#14d"3e}9=Pa\-Utރk0׾ėe QFwYMTRT:vq˻T|8+dH?٢^z"IdBUD\oYRP45FԽkYPS`[H  Ox҃&ۘ~*Ay·[0K;Y]G `!e%}֗D(@7\"ׇ2mT쓻( \{i^z!s Y7m#R:2/u@Q$2j Pңt3I\)th7FOuq wR?ϕEҿr#+ܦ2UVpPvAotp^1)b!Ȯ%~d}^ӗޒc6i\}klcOj#9~U` YFe]!F>>$ :H2b2̷R4 F)fnƌ8fugBԕ(>y" ? ֖Fϖ8/d 3(q5'kK"L9Só2aM; N[Zr5GZ6 setMKL%p4zF9쒷r cWlɹoGl[2#?V=Iƀ~"];ұOh5Y-'/UgJejNT?URxا[|G,H򱿝(0“RiD 77{,g2649Kiȑ>dBzd C[[yF*4EOK<)2'%]yƋ)?g Y St?mWh`>߸X<7B%;w:Us ,R_ny}GPVye3h~7@`?Ý!L2(?7;ܦc򿵂6X,@߁ r,Cׄ >{WatW%,JpNJMXuȕbӕg4"O~FG1+"|1 U,C+X'1J Cf(,i]E9:&A_Oe#Yb+u.p}g0W{Gj3xFi w4b?^p:(\ʳ̓Jq6;ܠH)<ɘ:.f78"" ȍA}H&\)6D`k߫>C4 kyvza5\u n<(~\{0(䖝 l#T\'-f46C{I,VTQ%sF+* y#V \䌆t$atTC8~pPǍq[reY?8tĴ֗٦ٱq&IW۲fX}S@F$`f,Wc;ȃ ʁ޸5L{oC98!L$"^ 7Wx. PϞHg½i^ T\;.nI^ڙNN.5sYeKHP$TAªW+4l^3ZMnnh:Pp4ǗEu:Jcr_,L+R$6wq72#0hcS:?ub$p%")xc <]jmZ6?Z>YgċG8"Y&ml&{ZbPy/ %_9p՘ [Tdw|nPyVmm]LIA}'Xcݺ1Σ<[8{.o_4j"$|`.q.Ǒ}1l-|7mlC$}8NYq͞iДᵔO\ӦD|'7fCk[W7QV2C{ȱJxPX͑>^GԒUM^?>-"y)x=M?{9쇛Q-A0Z<0ZXJ?&1<}򾒂bWϓ_?$` LBmA>3 ˚ KNTH/Mk iUJUc!PM[L7 g$]Zze,G݀z;6Q\ J:Kc8,6̈ *}F\<'r3 >":jl̚j.ڍѹ)CZ&y*\*\CwxUJ7[Ьc1@o[e/zk77`[l{)O#%OhAʚᗳ{Ek[fr\q,6Wkb 3_4N >)un'KoOO ˍqFb8 @$,֖O~>a\d# #}?gQXLBZF 3`,>eƄHfW-ԔnKulO:G'OҞ^Zu 9sz8س(tJ~> >L` )^(кǣ.sd7@cS{cEtA~cb(F8gw&a7D Gi՞66?wMY+ .*(mHGޛ5JűD:sEЁ]c7\|NBȥ25>:TD\^Ea W E!'I\lʟW8JSln*~Z>ގyn#I M+eY@VVVH"&/BTz̲cCXS| M3Ǒ"[+lٮvK}TUϸPu#ifw: h͝&_8C3N|ApXbS/PJi 额ERo^q*sG1F"o#bע͡H &e9?ƲK#0KCF.9zN9d@:zH}-2 Ö=|2_>NU_BEDhGG(_+􋓠5' )}I,3 #\ƆZ[= ӅFjе*ډ4de) tևгƣtXÿ=}OD/BB}nd6{Э^'ph:)y][DudFSY&CL!z q1Ŋ:(l l)%X(l]8e+VHQ6d8inr_[**X\OLw[ZI'7 Vjqߚ˒sKEihKݱPN2%KP+M~sނ±$RLjH723?H!Ȓ!`{di Y=wi>]V QɾX`VrdqU7ptMϜL2Kbu'mvb͇~OGV ?2Y3gWt)b d5Yoz|> ;|дV  > 6)_~رZn_lXnl옊'1tYSt_;CD$ eB_,ºj֛dc 7k|hFEqJŵe?% eXtq(,okY}|R&}4֍hIJJsO\$sǭnQRnbx2٬Aل`SA(NM;^mӷMfA4?ិ}.nXqr-_ɔB1sjqqO* Qx8~_} -DO,EL1 l7唋A$Wo XA<ٌ_:5m,Su$Fe 0䘭 "8la3Q߃{M>ߝ2!}[1ԗ6*mtLyF]w bz3N΋U&)ubeb6-Kc7,`A\f|{}5ĩ&%dHXV̟X9yd/A}M> _e:F|gO"e]ivnL_$^mAFU "բnbFAe^ZǑ*Yn%nK}t*I y>wʘc\jl6v3ηt .X U_l>58 vPtx2|;a KN˷a+qj8d]@`$.AkJF06q3$ӮZ3EO-v9Q7PUh̪v"d}{`3V\e6Q'}h 'ΐ?Aޗ(rݑ=xsBvu4tߥ ^GMN?r)z\3"o$ LY<ℽW Fhb div%Ti(#Y#A0_ 40h١gagD]+n7coF.Π\c6Fj=MJ?~j]w _FXmd4o{hDSKR:\ZvBٗȷ3 _.R/\{J MCͨI@Ak,M+PP]ʜ5$ƓgWÉXwâx4 R!ܯS$&e/C.J[Ft4yj`5QRx9(g J+Et0QT$e;foz +*m)odeLxܴ>{b9#C,C='X>Lv'{##a!rw/.R-yCd8@4 TW+v !lXWngyƾ u*iL?@kI"Һn" hsJ1-QM3D1JjeȉfQ$W9$8 8s4s_yUym!V7|E¢Fx.bAdljX7mU[kj+Ry3]e}慜 O5 C53m "<84,sep(K7MA $t@:ku˩=Fe7ʟ\)Ĝ%W/aCd7DPR#­d@ty6d p.׻*_T݄tČbG߫{ƯpA7?k!}vcJlgN(_[jgZq<Ωצf=PA&duPgCurn(21$ )c& w#ɞA>ar炭>_uSc KW͍QD.rNd̓!2_u/JHՋcC=mzXG7S(1d hYrus*ۑY| f#=b-3 P2p-z?ɻůTywJ`AgͬFYo/1#imx< 0sQIەf6!XoI鴱_ۨ؃}i[A[a%yb=*b"*G,: (JuA_1Mj ǹG t9eꀌjKTՠ7SދDkbL-,_C])/:)^w7s0 (;Y_܀0WN]/JV$8pzk3lr=OJRp4mgDCNcxKWq/g ~NX9ÂM싩;㈤3m]"-/v.oa} Z= F#6܅ g=Ȯ5)Wp@VXwܨ :632:AT$T0qϑl?dD Z>umvn.Rm1}4 ݾ -T'/\SAZoיZYܳ x)]#>bkon;P@fXccɆcՀSZ+mdEdw ivJܫF>"tFX&Al(ѝ=yPhx Bg} R`]d{:v&WߓیsڥVwHry HVծ 2-r2qn?+f{@),. x09|˒`|XLpTɨDI?:KVɬt&̤i{Ri Kn |s801nd)S5&ZʽcqP3k]./S._X%>0)i'4x YB4xΣ>W=&Ʀyy"<&Fo]'S]bLD +QL}ʲ3РWoRumΓ|u wDL(B'C-qba2y] ߕh]ii <"h^cB0W0:N@2pKС S 4ۮΡq=c骦FG1_)u3.PJYS:| oae;Ɔ=8}ʅGJKװ,ԃ1.bc-0.ŭ%&\;VʼnP翴75ĺU<&xtv (q4 | rF-T}}#KeQ]xܨbzS%cWo_JFzOI7-l/W ^>w&<;v9bsu yhI!Iӽ@(I&U_ Ɓ=k\tUB) I>HvG 3b Uf,Wc ҐPzQXR 9Ŭb FVo<[b,#bZ!lj %^޽J03=3 4:2{ 7vD&R|AXev|/鬽kd "%mՄ1e ߉tp +x YhG[@з r(ZMrL?@j[8iQYУ ;8l#be F!UJ3yz4k2mGtrH=1)#e~Ti'ä<$̏9.'O༡fȀW\ZO2$׿Wvr>!;҇}*_"U]sT=S.Zn\Y`ebZTGw|` FPF7VG y^`%WD0,Xl^`(R% S?jtn!4tun2n![k%qDH0;ѩZ,53ыǛY0}biFBqсZ=dC<5jY[N,6Q?+p30D?n"ys`J_Ǎ BPKy.?9"|7ޯ_ (NT>Gx f&>F8qH TKKs]Eֺ)uwCs8?H b!T ;3* W(Y??`pf[-Һ*z[fx'͹I`4YZIt0?A[ǘVɲYǴɽD7l^ttsvuC'"a{}fZ':p&{D B b4Yh9EF!T$N 視4),&m?S)^2B/5e 8Rl1Ƶ{/8ּ Z˴dƺ#f$Q]S$ $-9 67s -)qW M~謧~ϟQc֊>=N{7:%АU~PɌVS5Y[5U<tZhȚ@Xqq;t2@&sV_@ c|X^'\_KZ M(MdCT9Z&EYU#AsI'.Ng.R&r'Rk4R y7guV,S+:#zDJ:}oG/)Uof=>(o^X=?rt[w?pKϢxp̭ʍw,Ǹ6_Ty/mKw#wu,GaV1M}-SΙ2{Eۏw(|݈{&';rn o wݾk~.\gV(&iB߫bMZ:A}PYg@N^G3#F@K )50@ az.Pn9tf~o5N?8}1IUvg@Fq*,oË!+lcl "<f{~]C=nI>艂'r+ k5mi?XE(&Sp7cT|5٦drη.8 MO|-i&ʟӭwd˝UqMx G hʔZ_n&R[Ȟ6$EFY rescU8kbB,>ul*Wϧ{r%?=Z)2fAH!Z [ Fs鮿yYc4 :ﱴ}8!a J-nH3Xfux fmp'3.x4؅`ڋ#d%.mgęOջ߈w('lq7 FSB/,>'u/ZrKb"JҪHXYԢ[O'MdGY:WM~Jjr!;p1I*R컜k{)aJ$=Chh%qLi@`;_$ݽڂdYDMRMG |= ޜ|eAcF"_ρ v d}f fx6KrK%mc*D q؍N[LojyO:*cqs`,Z ӁWy\7keTⱖ%,XPT;M6C{egnڵn/Ps9Y K"$M`f囈.U:IB#/c\zJqY"3}H h ˨@!xD|檸{}*s\R"&PldZZ'y? ubzN!CQcC`58Un )Qi 0i2҃24s\/c@}.LDy\M͸w6NIhV9:ww0|gV $[Y/'cX&͌yDdb쩦Tq&t8tΖPA( jAWH'B<+iÕ)ÌvCm!}ǰYܓLS32d?fxH\b(B?sNص&MoZv%f)2S3d /K wldb2vÓ'jEB\~bKz&@ kg SWW8؅Le0%Y9vZCY@WpK L^8Y.5x1\.ӧU(Ѐ zg`'GqB2oR٬o7XEӏnp;TzRB ҩN jꚕџUfʖ /x";9[ۦ!I=H9eSc@fJűȀTU$^vj| "¸;U'xîSP49%D*۰^OS1OOٙ೐Z4|kUmU~z c\Ea!]u6X*ӗ"5Efr6^]N6[3,6webKߓ|WhW;E}wLO1`k H0q_ ?? m.˺mc&vMadBYp VXH{v2<":4;aSe)+b!uǥ'qꝶj_&cAw7T.l^-`lۯHyEo.#2plMF{J.RHdK5Sasrϒkq:/ R8Z]#*рp! {P3 ٓ,hD=:Lm c,W\V{$Q덋 mP>ֿ\N"(*"^hƽ|dTث3d6}Ŝb9<֒[-(1,H,@! j٢3me_r zf=o[?ce\t$0hƊUQqa2^Kp0>6A%4h9k.N؏š=11@}<b94[SAZN@ Li6^LSjpI54 vH5m/hmOЬ5;>[% diLH`}Wt!٪ΐ8$i[N3y"0%Ҟ>>*| zݩLT1Rh Q ^o{z<3 3q0 ʧkG|`E`je˕x]0+ _Zn\8=P$w0eB&/* ,re°`mٶ>T\#qq_2+H7ʹt"ShTiLS2iv`"yq;->Pӻ?= eQ$SJ@g| _yyh"I'ni5(ճDR=d瀣:7l:r>"0=pw ]"&m&f渓< ISҶ9@`$)T~tϰBnym Mw\Qdc绥vlm)m0q ہ D'_ϭPyȊxIj=Xoܳv?:/_C+b/+ui4Kv{94 qُ[ju#Q;pRU ;>>vS|F7Y{@O-~/΅VkB@rx0Z&+R\ɜ_xb.Jԑ)ZtT$L?9]t*m2%Κy(ϥg2ӍV`N̿lώ_z6\>4oD=}8VlhEҔɾXkd7rGҏ_ͥn,Gs][e9P/`THnŻ#vU5PJDШMɟ&M`?d2m!=Æa[vf\=^]&_0A9_ůYj ոK|armvZoϲ3ރ靰f%Kp|`.vGRgBarXK=_V,"E5_?]f*HSe\ȵ(s3=ld}Gtc]0il)V"+ƀ шq巁AMdZxivy)KI6vzbë,x߱z[9'gNxøn\>Ps]~1UsVte9T;|$d{h'oњl:@9|Υ\v!97<)}xx*c|.R{tF9+v0m$EA% ; IhT׸MK7Jt|-272m2 1rҬG$sbM ,pAÄ+Z%i])IPH3xph`SW{FP|g\t%[E3$p z$ 2z.Bu} kmqwGm`4/؊yhIdB{uDqlN?` ¦aWb/nǕ]Np1Y땽<>N;){#+˺gmGu |D},hΌEtC?~=.#}?'0893 :f[8`vSmz 2A1 Q )bHnhz8%myo fX=iZJ)h2sAH Dk*HxߏތKUZdB{Z#O/վO܇MMI1"sl lu}v7Z0` z_Wlu+J-,͆򎲖*4/;5|^L&UzOS!rMMԋiZ$E%"N2Gcg/L~ DYXW,:STmdԃqGO"WóƼL>zZT*]t0S{a7(J;i۶JRJca-!€/VM-LC*&P62bB4V_O%GB$6._.cDl,Oo 5(}?5)G$kj[,]e5cߋ04V{{Qf*(0!?dm#i;/Bv#B}n^67USNB%Nt! P}h1m K Fit4m pQ?]ۮ0F{\ײ ֛??$5VWnPnAܱhg*2֊gVſsbծ!c-ׁ`ebLSiKZ0|:^i If(X 4F' B|~Nnx=& S#dp Щ%8soN (NY5),2r)߁Egsc wzd8Q=,Wb.[86w?p ZVoV 2vB:j ML,l@)37LE*_Ɗq1_ 000nt715ǩWU7e"߾m1)oSD  +Mܦ1h>?i+digÌ<\#rWOO7ڳ#Ӊ)AY )J~GGӲ;K8^,Z3O-\!@ă ^LYi=dA@EXGIq##t$;5*$;Bū,"<|o 45ΐkL!鯮$`5|P0u>hD5d«7XU? c\I<%d6oƌү@f{p\덪Ju͏7HV V `jsoK ڂ3Jm07uL0qW_(mj Wcфͽs7werk"T$/( So;Ɏ% uOXL2@8PvZŠѹ_XS$ͬXB"՘wZc(1JZ /*$I-'ςt9y@嵪"s3cj@4J#-5fKyŌ({ €*.wXr4@2u9]23P g>rUd}Yi T'=Q!&;~`Ǩۅ4=>~l{2Т;@vFfڑ VVKh_Y/Wz"XO2!m8VsfɳFd!{@SRڐqG<+<*jQEpzg+vz9%uSp\PT#&-e {kQuHZ2Y~F,&kɍ_fѳ/q‡'+ň81zXrJG1RB]֚ п CS|lsQ~YYZ<O ҘðV$ "ʭʞ줘y5fro:?Y '[!`a?ɾy"bBpfR6rSbbDpj:pǑ+XzWIhXpcEI>C@0}RV/Fx֯ՆN4Q']JORf#Z]=l|xd1<F2h([\<˚|fawX\6݈[6ʸ؅yjz#U)֟5^e|L:3Ya;rFlPnV*Gɣ$?!D4~t/aK/`Wy mqpzT+Cuȵ%RkF\QD[*6tM9 $nbp]7B(V:Z> G6"8Vj6R3ru;W,Yt1+8)=z%L*c8*)}V Jr`H6~&Eu3)nF#ЙI!wM8X9ʨyE, L=`"h^S9wT)%^~Uk֤LMqwȤJu*uE7&*89!KОʠo5fM;Dj125X~b kٍ˚E$jţ.4trWeFҫZ}Hf4]i&ZaoV"@hj @ '$LM4:ɤ\e)E,)lIx!O&}CFvO.wAu8B!xJ1jv)C9;nrΏ.}!B#`h"#qm*Y?@,;Qv'o}Z[~'(;)@"tySk7z* ]Χ- M.\S hfz0:{:rPTuw`˓avvl?je-Jgsȧ:a}huI4zWމMc5n%? 630,U60yGL vѥ.PgKuM7U@se2#26-J=|h2oņ*_"%djH [1_ޡµY٩#e<6pJzܧi8T5;g>{MsiU۔1AA_$b5KE-!&PN8X\?`2G6E׶}D 9hنXxuN,/2}D\ɭ0%Lm%P۵W'3WW=L;|NlBV/]Ć !p`-xWSWO :itq46W Y@Ms&P~tR^VL!r|VdEZO@} 5>g wVE '?ҳ7[<d=Xq56C'O:DpZzb?bCwO7yPbᛉro7%͝]@ ג6:o<=EV]R)kыِݗGXY- 3;eqG,H! 7$S6wrKt|8`'hOPPDy )sζ'68a'u}>_q$.N`#^Wx(lPkt(K4] o4 !MwYwv* }V%Va yݍ\Q]C숴W"^Z)4 B[s{E"`дՋS%bV` @tpQ,Ԃq0cs#&qiGiAEY6K%3vȍdT{'m | dnՙp;0mBBk38>}r-\~@a6④{5#X( yh/lT2"3VMP ZBOAWg((NԓQd"z8}Sې0.E MG5^_˪:6b釅X74ø8T\|q`]ҷ/0'δqn"2\RA?-10)ms'ӓKScvm&0ੌӜ~gҎ@|;cW:Z֨ !)}Iqd-K>{ڍn\O޹5\2+q&:,$9_e oQ'y68]%$vt@4F-jb G n%'CYL20[ ,m4fI]|8Ed8>GUZ&a@;Q7+ (UlAf-Ԡ~hk}!O^P}@ ~|Nqz Yd^ZFM&q[Ԝ[v%_Vbû&"eDg ͙^$ 't&o]+Gr2E􈅀ŻXȓh|$o6]>̽Im\;'( E8.@`&pF͜Jxm5U~A)F++eNg0)Y(I#c6y^(sG}ƊNEgW$ 4(̭vDRPmAաz$wV'Ur7xW`  !x\8Iل>r 1z|m,,\pZinn|$bT5YQ&<]/Xm,  {G_![iPmHpA|i;_aI&$0vj,5b}tf @i[&+0AA ۾e36oQd93/Nef.젝)H^e̡:V0G٬GؓK@lh/PꌥPUIEe `U_4M6f5wfnl>{yOwpDRQ-8òdzio0I kԱsH1Uj'p%bJ8$fŦ_P߶ ?CKT(j gBl(, VԖsT=xMWr6W*:V s!<~@MN'bhOt/q_qeVqwY Հb]T9nw' Q2}G^^O:{]w h|Y5#*<]a`3zMp!!";ss`G7 PC"C!0`ywPh ( p-TD ;z3x;RCd:'-f`'i$`&l[S=2<ʎ9[)\'2G7gy&JN4ҳz-qC6ox;aN܉nzkIP I=vIYM6) /r%us/RCLNp?RʶݷϯBqވbl D5=/xkkT_/D,=s+QɛvA|9ދ>SUAZP8UT! b*2' R(* 7G c +'>]NZ kNa+L->(i=RK<޵#أ99,fΗX9b~QB2sUBq7.BTڲ'|` f=5q;֔eOܘ!. AD@* JmXd5dx3mx)+ Ĩ*l6=ECG}MgQȃ1R Rcέd< ؠO)Ƃ۟Rg\kZ69IfOyPvjsl|ncS`?=;n1u"`DZI#bO 0qY)8\r3}xBSNϵ,p=|Ro/ Y0wc6Z4B$y2?A  Rs />brQEQI*OMn'S-65rD~Ey,h|<⍟,+_[DE"6!KlM:qbΣi#zC k|(`%+~1{oI)vE.?<)Rk߬J&Vчo :qf:s Rc!#&p7a'髓!1JݢfXA(t#yA}=՚h"!Da)Ȇ›=ժ42 of=sLHRdܐ}4Yc,sƨ%]o4"b&(PH9 alR;&& >Rr.ZRCs$u4yЖ/.vq@*0 Uco3Gfy,1 'Bԭt_EQ2(d4nL8Xo(#{Wн]װ/*4Gۃ KNqcǃo#<4$KZlrrSvsem#"8RnQ39Y8Ѻlw1)2wX^g:ia-5rIiʧvoG7rzVy)N/4ve!bDTyO-as=KUu.]mwن^U3;^+IDy % VU%QvBJ=>T:H DBA;G)THA׼Ҡ2 )+;JAWw YE~}DR )pƜY6TfouEtsܿOx2tLt%VRuӅ<qǺ{+y"38xuM'HN>gMaKC+B:~A]}ڊuf 3 XBŸ\SO x²)쐞ƋNV<%m[ZnqˬR_/,kp$%ޮpφ Ni֧{_¸hAE> FF,J@N {opB.&^θ[/ ^HI@pv*fSkcLgj}-47Jtj4mW#-zDFU U+Ր oufԧ2eGhC$OS cEoelf|^ݨ;;Ћquzm5Jҵ]`U.mhD#>z2yJ'SXEHH=yJ,>gfOZז&J烑?MJYǃ.6<֡HE '݋iFc:<Hw2Zc8ԀT|!yXHQ딗ßI> uS{~|hG[>܂XX$ w.Xk 9?>lqk&``0XM']ʨkos/C2 &2;\i]J(38疺XvlT!K@RcUԙ52Q[{uNM%:rRw\д<]Cw}Za|l3jؼ D0DF4B&-Np>Rvf[rS7v%f4isGX!\RJ͛-BCl WOTjo4Fy#<4tY=xG{}7J#y 㱌x)Jaw$X@Fr- 58nEmmDG\7ȼ. @ހ]Qpoz3dO E1 !1䞭ȰG2#LL92zQXTڗm=d|s0@Yyl*M@RS=QRww>ڽBJD/fr"J|)j*mhNo_n2cDf250d+9 hO nwJ SbJxҟ_A~M#u ]z64y<"aӌBwaVXIֵ6%nx,ҷP1O͊#Š'4frLpz4XV&PeVO\ۜv`Rb5K~ljM+R5C;/Y`DP\3TU>! $o_Xp`=/3Kd\Dq\?PQ 8A Uy0״II3:!F9%`'w>x}GYa N816#%%?AjBe5 ɷY~Uv gp\ObDvRXOdf[`JO t'c*q[ڋp}GB?=)ciۊg4 6.Ee*`t\ A.4cpE#(Ԏ-ay/tvl YЮG?Bx~Pts>) |28PL4]A l 1gP&o#.1{],*SI+Vj3RƌXUM[R QwNR`yy5֮]3-|<;> | &ε+og٧&OZߚ7wWաN9[Ozd#2Vۚk; RwCѓtKpzDѸgЉʎ>)}7ӶUaMDAELFoO5*Y wLXǬ/)2?C4\5GTӰ~f ʇdaV eb{"ڢRŽoG*cmGAoH@57v_H3E)vRpd|_F?- V02{ՆDH =tOg&2$2gBznLjt>֨v #:QnE\J?zc_˹3';4h]y"%vtJ`U#G1+"|1`V (=tM rwcG~I.Ecps}>Xb)rbԄfX[u:if,ͪ2\Q!=5gal)5zJOƍƀ:4'!> 281ӨQW$h I 0V*==GftZ3ΝIdmMdETy `N(a`%&MkqNJ {g.cg6٧ kJ|ꕊnrmE}{}Gf[ҝEeJz[:X٬KM36 ZHt۬FJ?"TpGSryөdӌ Tûp^hά7 lca9Tk~7*C`z#~ `!5הhA\xV 4tNhy_ze^g^h )A^3. 4aW95v0uto1.]Yi]Y3\v* aI(QHvvSnZ=4QX#[r$@`&^L@UB.Bۑ+rMw.t'I_f.]6[m>Hy#m 9(*Nq VfyL f 4=jY|ISYp8qEd1QM@"_G`}(0mJO'˺L{$6ɑ}? (Y"&k=<6TK0C 1_zq1&@/U،9'ZcYh|s1y*طl/KB^S fXS?;S$h^n݇hFDZ+Jj$vɃ&μNg4?FMo~?VBxhg=΂WϗY~/X/ ;PεVpۉ!& -xe ^LH? iPg}K"$% :qDk}p-FLjD !瓜OŰUƈyV/o:,-*!e([LJ59ȝ0zS<LעGA=rh)B+8M^sbdoi M&C&X)wU#R#1m %_?.C8i&yxJt*L(?#' .?-]'9$﴾θ&a_(QбKס[ 'q8|TzHc߁oMz#|4>yM*7j+-N<65~==O޽YeӶ͹qʸQX,~c~OemF}LRobr 3>TQN7m΅_)-JOlStwl+s*Itj7WԚ`O 㴙txiaμ:ZPKla?K( lq_t ٲ'))@Oyipv46r'L5.ABDnX$6>a v[RZp1~l0^i}BqCP,ͷԫY]gVЁSC]=S*\geZ|oLFd,IӁrv+*341Mor2:7TzpK“pV.! ^ ,q|7=}FJ#P#μ6/,|`vr(+^ZΔoJ*vD CSS،U#*8k{3/B*==p3% 0d੐?D t}87 ,q(\ Go󿀚c%P*D.ꉔvgu8ȌRXa*ۤ6`")wuJi%[Xl0QO2/̮n>_DU t>L$nxl,hpnT\|fxYv-Cс=kgκeƮ[\N*vS\kجuL_%&B 0"$d1I8/Jҵ0VHwj?&'9˓J 4{bLExҖ*m Y) $[dl 7x8*{W-wŏ[c LmjVys O+廓pa5S *j+)0Uy"Rʓ!Z+d>6@`,؋{*/|TCRɽt78sJʱ[:&9mtF&it/r 5UUk< n֐?3Xy8S^oY"SĻ&ƕU\3))p*T:t*3g9MC>?!%Q9ơUpi&TӢuH%3 b^'ֹu7uԧjgwѓ>0vY y֮o>pw+N }y,fBh۾3-M M!jGL)!vs`;[s!$} .(9aa}j",o8a+c` $-J>rf^t"uڢ6fZ/ɢmzE8`9mVrͯG >5(<HF,"!7DGpeLH(~*9hs)i/Ow;ތ޻"_ZDBIԹFLdAmco hZ/rjX+b,je/ʆa3}iF-4;[ 0㎪_ADaI)mf!Yr.RX&%ٛ 'KY 4_կkU1 &{{9{ +*`)]7u.*J  o0BOmBzuv5>O[21ޞ_S;ʱmK!d ƌ?m ;~%;IB ->q.G= vI@Kʱ-}]m0s$)|JJrc4&[nT@v4°؎2P@muZ_8n6{?e _xqAcz˺fV$X?ӱ vˋaMyrk5Յ9!rv:!\OW!|s(/Q ce`Zl;2c8];eXc nߘ:jqyЗak n%Κe6;0:rѦ$!]y2Y`ڋ^/^nmt}O)2i _qj?Қ2y!/aQ⹛"q-a}EE&Pi@y"ɘRGGÌ,8K$nVM:t,[(iZ'-J ˨/HB7|i#$FTН;;#QkXdX{i3PVT-&jLMOwc#_3yJ_G(~goTa Sms$7jBЌPn4)fĘ=q|_ t+ E)6d\]vBL^D 7{N8ą.9~;_hS=-ƊUO3y>ˡ: y 33 q`n1otr-œ…8[:ightb?.)0tPRHkOeI`!F3c-<2Ir /.KGΈ#1|x,gځ,C}dU~ӧګWAquwUE7;K1k)I=7_bu2D ^\o cG}'7='Ým7= mHXٳ+k`Á@ɂC%dZ| m/2͆Q7O䃕hUUFR}H, ˢQ]wtDd[buXtӛ S|/}0x 8cl1q 0^dL=6jNCަeן Uè$ZYg-fxdEY~N# x/)Lx X!azAc6LNA8Y?yH VcX̮Us$6vܣ&FX,]lkǁ2~ϯ\&[6ەja3F8U==9Dxh% Đ1OM|Oc>A^\*[<D)#O|SznJLk{c vKmU +~L˰ 2%Dӄ3FrEzW#>]Qry !ǯq7QG:Ai5^JrQtfIE0kqkd3^4-M`@e-לּ?;UBp_2lPX|{q\@b"vU$~$WzlT*M!D=80r2%z+fQBzYQbܤWV$7l,]i}4PZVJfF^w[XbًLmJ<5q454UOԹ0wK1H/[62uUƓ?[I x ʥ,wi%,4y}cUt~g;oie\w J&\~t_)lp[pδ"LH*",ZRΘYv^Z=FCeut*}@ܖ&˰lf= QF#5Qq 3[r6?ߜ 5?oqakg57+kvϟ:3fS9?*0Oz2#̋&2Ң&xenMㄑVCG}-;"%q@.LQҒwIoTtB5hn%Euyl64up,#)14bޣ6˓,5h6ig"$H;g1]E=s9[8GQ}N@jpAzD+cGSjhn[x o *p70X`˷"#$eyBNOb 'KF"F 512k=(ϻ`M\W.!Q:) v񯂱@^Bw~ !M;PsL{A!ATS,35u]? q*/ha_C>`qࠈ2-l5;*/j%|czK3C \0W=jD'W"6֝DS ;.gW"-jPy+fH7AGߊ!8vUN) dZp갲6&t0r>{ytu NK,_3%]3G}C^Ai¾|Y4pG ՘e?U>DPb 7a@CvyGV/:50zi1Y҃v=P԰e[ WvTLKiYc&rJ3__3ʝҀU-mCb!"@q7>[;=3ęZnLYkO~gw捴z#Z) ˰17ٰOA;VjI@S:l@0Q`C{XK\7:B*3R ~W\V܊&CٹBy(BqWc0)2 2c ՜ůO )z}eS_Udt]& VAl䤒nV@cTgR"[bpȠϝ|VŁ ETGXmp5Dz2N~^6OIĽ2$$,8BiB([\q$ĘA ho885fw'P d(U s]e CdU6LsJ*DS+X&^*:Yqʽ8&c;sc#^9YُjB*AVGLrEm#`oBW {4ˎ-=뉵=?%UX8  r'gghCF=XA]7u_V4TlWRz@(ʲ2˙6N}:1\;l,ȩo`&5aD++-.*3:D:6 )(b4ڬ9m5=HKDDžNHi?? W"ԳzGṥ>Fq RY _\~6֤ԓd,li -KmÔƃu1/tv[#7g/Q6qihw`AX7G"yY*y,șg˜Qe֫FZ40ݑa9&_c+/K9#L3ۣ1݌g2W7uZp "zz™]CBP3` P~]Sä>N"B»]ɽa_-s-Qš fboUaɛAXz= ZW.Ƚ !JIކDsHh6K+']5ٞo\,CV7%H-L;%0vE>t%;%h<2WViR8%;]v">RNfX[ǕSMq7A+~q8 É4w:ػrPs΄4 vKcd #MP;|sFxk4̵#Uٔ=ވKX\>^$x=QVWcL$!" wNl uuը|.-X(. L)|,ܿd̆ S:&JP'NhGusȃ-đ\R*lT<D>ܨd{M E'HUj8) ϓFz>꩛>4J,"yS{"T4&E+j-KԛAKn)nJH)SD0(ԫ`>>R(^I6́܃jw⢮c3YrWt~:/]& R!U)C=Xa42Z;*=il9ج_5#y]ѝNݾ1< gS+*4PT3]dWpjv nj^ox澷t_7:LGk%hQ)3XuI )3ickdӊUL% ^jG.<7CK ~@ a‘s)Gr Jmxb\]72Z-<znz![ ,^|a>J,^E w*z_Ms5ќeڰ>g&vxWյ͉Ęm9pZT,R}9߄985Pz2ׄpŅ|cڮCBpե2Hh}G _]=|iae? | P \4s׾)˥0[LoI2vNrfw'z; zz~D;ܑ3{G֞e=Vk2ϠW:T HsIJNSv0L<ˇ^Ҍa= ٶaƵ\QBz.2Af?Et*1Q1hEx%ryY.U6p ?& <\ꃇdmYJ:šl;کKm^3կYֿ[vd84!jᴮ;D}rwM5CY.t喜},\R'z|;gv[8uRɢreÓ7FۅP.њѧqJ H tfRMlm;k(h^iE,;3rL;Y_ƉQk*`gfʹ؟`ؿG=@0:v5=I@CBէ˲Fץ1Um5hp0| +¹@`h"?R_CT&ZRZ1_ca n yHw]X #*'_p0̬dN HQV8kI4<\2A=sWTmzGgc-z\OvXZ"eHy}Ku=L)BI>%mnrq>k=/NM"3 +0zHұvHԵ/cЪe>רbeH'nD /΁ϖĆZhI:S]Cw,Sd͝U mH,v:j1T+mH")\zG|v9 Tgct,QGRgE b9X\E 4)0w_}g p&6PT;!Z9Cw=[e$'!(MTZR\fdFMɃI(#DK $bQhG٭+u|ΰ<$+>L򩝅ZΡae'\CJykI: #ПXHn73y 솨`O"h ۴D||,*&v#ӴڤTa54gJ6YSx<'I|6Jڜ0&~V ~iFm?s>Єcijlo2*[TixQΛIP޹"7kL\,iL܀頻??e]%=ڪun!@~6l񑨩͵pV)8XKSF[X;":hyLj!T $G:*!|`lOi|H CkpyX.'59-\ 26g6q,`”{5YSXSJ wSJNßJV]^`q>dhC }''1xa}m0kԤ‴"ВM)ݱiiŇrxf9pݡknGSt_]Bįx8/^VTh_-ՋSǛJgEQ<\ۈ&ztf!azs^@Y c#u֢`Qg0pN' > GC:,u*\5zeAWEvVpߓ@u|ݭ_y݋ =G#d{h9ԵMRX$) pE>P ~dˀ{&VRZۡJTU$. /Pl6<(=z. h28?B8&RX)`>pfא9 :ԥ$܇m&?xo#5@a0> vBKP$ GJLh)h=^ 쭔soޏ0z?W3{a?Z稷*h&ա@z(ҩ,4Ӥwt=ߪ[)-Q;/,ZZH~Ng E[cjWkoGE[*GVFz%w>BE];3eq =҃c 54#ɩfئgjT#&z%k?i@! G1XAэZDYIPD"uְ6!ǚ7h +RH7׻P:p0s4;ՓչgZIJOWabB[C\5M:5Ғs_5nnHTQ8Py'MG#"da!1G`TmFAk<2;Ǔ?nWq"ydC u@WZԁAH_S@x9lƯ`v*LUPLO9%s N!~?*`WxJNHW^۟pT$Pi[;[Y5$rWA$: +ID~Y,S={lmw12($➢ [c 1Y`70[whg"yU=/gĦKv3yG6aًؖu@# ܹb5WfQѪC7Żqly@Ch+f N4fg7>c^jovȾ_HLE{&at@yĄ (׌ ^9$[b ]]"T %0A\O>D@/o[Y>OgJ#d&}4p=<jL:v`Z}*YDޓy.Ǫ8n՛ACO)yL8)v?cZ12*P˙<ՅB'c0Vozjm)v#Fomb,Kjet)oX:pfZ,x*zi5aCxmkkBDžMkav$M E,|yV7ObJAGbx;i7pf}ꘘobEf(;{YkleA")}:2>iE=,~Mf&4Ս ahJfa5$bu)> nkvIGuUs|ccϦCu x᠊ Ikdo諈- (ifcױclU Ic(] 9Z/_ CuNieԮ=~[]:XK+s .ZIN[)乮;B7+ÅW1w6EvYOOE Vh 1W %mZl`TooWbUM{94 {nֿ#O©#yrp>X_SJͻ,|dMԆ8 's8u'F'Qn! 0^}dU.?vv要3%`b[a{=ˡ\A0RQ>=Z:1 *' M,׉ޓ [K3^n`j dHcxezu⾙Ǻ?e@a>^ 'IN2meբC,%9B3~‚Cֻ'7PݯeGb@M̱0kxY19N eݥv4,NB1*JT۬M,XN,>OVܗ?)T5[~cn T<3JG; Jik\%a."wtZ~jk pB0xY`l=Bb iϵ Wia >gLBRa͙ gh% }OtP'mm4d\E9aE}zNªm@:nY[W#InJ316aU d f3enC~NVYhȲnL͞ې`@ Z<|": ,m(l_8{Fqv%AEцORV]t$k{8š¢EjӞJ1wzk#G:cEQSF*ѕ_"/T */b=N]xCu`RڲTVXin]S2\t1.܈zQg3&3JUZs CܛZOw9\Ѣ%|D'AێuDogQOIe)ST# f`8>IxHgѻi[bi #koO%~2Q>ع'.Cܧ2]I3]u6 6=j*f.2g9a=)_dey윭'TllNu !s| =yWbdA1 s$k2.XupBSÙoZ*G6FQsX{ hY!ϻʟ X$$TXnD3+Hiow 'R6 H*L& g9`yJ 2IO&*m- :)K((1rΌD"&QMÚbr̍/n<N/}#8l w=ۭ!(YW|hI|z|uUn'L)]{ET``8a?|xcs|\˼,׌*DTBdR[@}1f Ϙ>̶["{/qF*R(M`pRޟ Gc+zsiIPv t)^O >NE*@bFT_+8K9 _V\/xp UrDB. ?)vM+SEnLcdg, d\LH EO8V)k;>6*Tx @I<'rGmWv5 @Ejx@2_^v8$W?)NY#GU ^ l.vn1kDY.v$k_jYzZ ^/XW48}z v%fQkFXW7XN]fܧrY_P!+TAv퓀RluզI/'e9G׈X[q>t?aU킡|xS$zq/{wnZI 3+VkǢ ٌX.mHr*B&^WnݾOmNUcʹMYE g!(@-ci{w7Lb0X@t x br.eHv\J\Dqg9B wew0}`OBjնW{ݱ3O ^>@;+ Pq[pJ$؏,okcA=Q ēkG=u8?_{Gcnj؊`ŲWY5y|q `H:ɠJ/Sl~*>F,X0N3aht@(W E3W)5-\B$˞–Ή 6R]ǿ s%.E8ԹH4n0U5Ԃ J2QSث wvGV{TԹPul=* ^,N+xv׻aՓb.X+'QvEw[uhH%$t{LISP' SGnY=GtTGĦGSH r x_+d|yeQ?(;@\7ݸ&) ~~2=Pih4*ƅ 5zV/%H-&PUr#;2TDt<zdXh@)qMN8(d|C/phi=ԑEV2deTܺہ~Rxf&&`*a/$mPPUdC'ԵאBH|Ҙ_MH/TA3kzA@84Qg|"8\Dn\ pv̧1SƆ>xO~A(ۍ_#iY48Op^n`Kc.Ȱ.DŻ}*4+6g5 zSo;|q)k?>Q1MJ5[sU֝-"zO j_[ SC&?\kKm`S6 (Kj݊Xs~:Վ|lKت?R0آo⏸\=Aqq,eͅػ`)Ѯ5a-ߗu8p\T*JWOn m X(j~R! T.B%jhLʴB|OodKBr]30yݢ0/'myR'b33'8}cg[j];OGD bw(}ptd@_甕@W.$q^q)^K*1ĖŸQ njtE"vI(qDTM`BO¾ۖUH ߏFXd^EFVkDʾ2YK>Ǽu (5\OS!0"`.0%ߍOt\UC >/VeT,kL@?CP`i]!찋~`#}(QD~b$iӨTTs.=@`G(uGsֵ kq.6:F"d5;yn4qK9;RW/MmaufT-\3V-G6?`ى!oK@˸11SQGps;dIIQs<}_㕧~)k5̖5W|C@鶜%<"pe C<%dTtdg.Ɠ˂#X4\BWJp ^&lLJejҽv|&`SnV'1i㎊<LzĦi4„hZ1X篲͒%n#(u67H{ 1Tw'PIBk[̩"X%t (E@C)y>]#Fnx_p u |oX$P9<ُ)PӃ熓|mXåy~|ŇXHEe֌]zI5֭L!w@k'TH#o5f``\ S9̠9`|vl>*2cI,ְ hxBb fkaNwF/+p GVB{ْ35%2;ծp"9blYEA9A8Ҩ$38hʆoa:袥S>oPB-xw0ҕqx7t݀j0]isT;գ*~}ü$~|%|\ L i| e$`ugBp &[ӢZ6+)PVJ2.;0Vsy/*h/7ujCҧaE'"V%KCFI$;=$v}by BHPhNNUfv bP"]1DE/:*_O&ɲjoh^UV7ڎ;V Sx٢|!4̹0ir!L/蘔vVsz}>+Z䧏(\c`\ZQepmeʔ-QͮClȕ{c|24I/?v?; &_VܰzCx 4KYyHB՛izWd#10'× ? -c)ygNo6IS į>_j~cM%"QK7C'tTixIH"q41ivkZ2 4 Ϸ3_?yP ٌ;_ VQM9z dJXJʑ)&ۻm?jۓܒj\sKФtU!0nV(v _OɃŭ YfUsН6[v»Ϭ1*4fI_$<w嵭[ʎ>$sU $gEql(DeY,O(MX8LߟPx.ʦ5R-XCu!Eޒ筈bλ/).sNq2N j $o0˗Xߌin05j~њB1[^r`MtS>pwQ xpBwNarX6L}!XC%98@FIAZVFedWگfgLXZd\pPmq,5-I0g3MxGq\Jeܘ3ƏAwu3 $ʩ4%QαɨT$8l||+lSE=:\ s[;P`ʽq ] EŒ1G2΂3۩ 'c;C(Vt`qQ J8HJK1ƞ+OP;Sly~Έ)O@ ssW|W=:е:R޿KZl`&>c6 dv:8Cs7$ }D쀮:K9r1/7n,qY *У.wjЗ;+wou^q9Vumu8'KAnJ…lRZڰ\͗w}*9^g1Lg$ #)[}}]P@)5ÊwgwmoE9I:pIw{Ot2? HW8L1@ _a&e.0D4%{g*؀e5qf:̬( (P7.+Qʼtq$eqz\#ju`1/Wk %е ̻Ýlu͎lfHZ򬉣c9iM"tA[)ͭ7ьNpD/)bV,̕jr(Ğ" ND[z7z!\k$(q 3MGy#p拊gkn3F19S0oOXCrSz)A@FSIe\7ZW {7!Gؿ .IymӱWՙf*=[|C_eTledUlyQv`RՏx6Y>Tt+3é+9;ߓCly}'32:p3Tq<6*&׹"B& BUWv,͊@H~s&^ֽeRg ҋrX󩮦SaJr*6$aݐOGjLkA< U9媩}T]3z1 ]io@'4MR[?WǿFSb1 DFe65d>֊յVy6;ݎ kYq1Gܨjt힕mDFڿCg,{)%{=Ox-ei*AT,[ d8LdKNAV--Ǔ4o@`5ASuy#6.Q\S y=7%>f҈A1ү`liz0"߂~q+/(4ک9ho).zn4^yc ~m: ȱ\| fM ;g&8y[1ɟ1_w /&u?(LQtQ(*T&g_ӄ\,Ę^nYPiURI41#nW>}GL[nwdI?}޾_\E N?yW6z-/ t <eHoX2.y-14/hTT,3KN.F.chQ' `BO`2?6|o̹?K0aBh֫BT-(o2u2fr@G9O Aa;VͺPNuJa҇P)0{ 5H1mE. էb  ƴw} Sc\kgl9 bKbè5 )fHN7B=i>L|U(ӗ{}cӺǧ|}?5k4 |fbTl7AzxFM>k9nO(E;.@C҆vtpCARN^` laCV=OYEa JA @b[X#ΰ$̲P)FoYNkB- CQEGtEHe"S:JB.:^>Ju$]:߁i˪keU)ށBc3s:_KNLzbsZƕʹ0Zrms齴! rb02~j7ı#9Fkyѳ4`=Gvԟsc9{HyVQwQZr$5^`F*wU[l [d eM04oΎ&s!W"C, ?w0 gVϻVp(ң|yUl4ژ3HqQ/"UK<~ԧkڌb@ \Hơ#5a"Vٟ%e{5ıhC;Z\9!-;ݲ)Q?O[B?U;fsG/a4_op]jsCDO̓ | ekd4(MўSZxm((" CeIG#eQl3٨3>tAX( ^~UBvi'aO݂]mf]Hi+ e"+y<& _mt6iFECpΟ5|~E{Q(-!P3wWLrV _Y6!I&n"3Q{զ2QMv cn*`g&JTr"ύfxN[(B4Nȃ$786 t2Z.ΠM >~:~(~V" giFlAˢϘ%t艍mZ,It).31$~]W?Yq8KKx1{r\fm[χmekCֹjYq1\*M1u2@02.2${) Sdax2@lx^;4x+HKiG# >47+~_BGMSOk>/=,v߬5>5 IۘQ'/ddzMȊ<+L^mF#4 Nv|a-Ym (|x0l,rU= ͇UFT'¸3KFh\`BZ1_XF|I9]M4{aaMkM.ץKhy̖凞e4_r#P5*q!`ecU`cBǐ9H.>G"i 4L6wjt۰ AY<|F:{*@)e;ܘֽ'"E^YbINYQߔerl)?ï֌%E^$vhDT/_y2Hr|_G?մE1#@<:1iꮬ;sL95wI}ŵg{ƠjaӉ="^nQMfi O:U/kª w0RUj uW"/7tC•gЛ37U|>&[Ψ< ̷dTkїiH2G[4#i.`}G99W!Zs΋OvK>gljU"h^Pna\ 5m}?-E! 4@CtĞ>$/P*K |0۟:dWE+r43U,x&Lqq<Ϊwax2W9ͼzsk(pM\];.βYʺ:=p~8t8 EY43H}ȨƖzT zagB߳0Yf5`'TnϴU{ѸpG+w-> _ra+}VXa81ddkM.;9Q\YD-۪)٭Jɜk_ :SD!LQLv|ћś(PsEGC0F KE˃}gqsӻkJP(vۈ;UҟZ+Rls^ vzTX$qp.6`΂,C۵n8hߚ:PaP;z\ųgd~M{vֳ&>dysmNTRh3\n}C{ tخPFIN\ɡ`;O c քkH v=DbnD셵*4:s~tU8w]hp[5@TgK)hH!:/R \9}*9Hv^U ̯p%-y[om TDVRn6 WMWO2|hEKAYRI iA*83l(#D0"1W󩸈ri?e߻w"dD8˞c= tc[dk~|_FD.)]O67fSa| *^z"ڏ< <`f_[{yL]6$pYŊ^Vb@x]W 6)yxFk̝ 1̖c<OY:B tMe7W+'LrGAv+YڔIfBI.hۧެYC\yJIg9i7,5^nFG"O~w'ܟnAĉt0сjʸJ(G&`ͣʀ#+ٮƩg={vUϹILU 1DHM/EȂFnbX:tD -5$Vx+CA >g\yx35DSrՇ7a G.Sji 2w̽W57гr w;06R&`ۣicI37fWS Ë=&(^ |k05nXK@ ~#6J%A&SGaY[{1` P6+USY8g0m$5v%*_@NiMo{L*p漢ۓhsN;iė=Ya]ƍռFo*"R#ne h3!3إgcA_5 ^vWp)1N>MÚ-;`ءL+4i#6g7[k?Ыܳ(ւ{v/h.~.f gp:4o˸V"u9PR%}.{D8 {K4+Z=`ᙑdlg¨F v U^~r>]pp X&#b?fȣG IaW xu¾zXkd(]o;o5 Wͳ6ԼcÑqs4}]16i_p)%HYHَn;h>sdK JS'Wd{ ͧF*z hjaOxb[jB#B9xNȯ/3V¿cEk$YBys/:6K+S@]yBN:UJ#BaU(y jKNli3>>ȎS5ɡWyܻ*ߴ~TY:@qbah!Q/pgv JߦJFe+$ SC9 A?dAlJ BW7᠌ ;3kk9;O-pnZJzq\@>)~r6P=`kˀ|y,;kw|Y?$邴Nͩ<Q^z=”EoY*?p ݿ_jKl21dGV[U"@oMRuvC4@&Pd {s(őfov3U$7lq8n"N zb0{s/}en Dž K\>ӎF\[]>l.7,4fF IEae} _@ڙˁh7jֵ"}&CHߜpWߍFsBF< DϳCV|CԮ,^dlӸQ6P\wu5!v-(Վ)'6_ĚiBWdh>Ǩh9сwygx px5۱j0k9D9xc\⤰Ua3Ѩ~K-k(F<@jhE;̑P#ofy`baT$۪7W̜>ϻZbͰ/xrM3- .Ϳw,9mir+e;O羈 UG^ 1A@ojgBa>PG?H RIQ~qүG>r66rE nFAt/rK*D Q~ȀڅP < F4 :E|5&o{%[IF[CAvKECH!/7{Mm 278}v(bn&ZՏAHG"ev0cQ$cn,wUe]]'ѷm` N%rC5ԕQ/k"bԮ>R-8^H/0^? *#}=_&$ɺ /Wtv㓤HCed=ŷ6,OA\Rbc+J&{[-[zt.\o53m^Fcp`bεKs[󧌃p9AUnȌ.dI; 2vhA3e37@NNLқ 6:C,;2*WيO{m&PbDMlk@ PmVuN۴CWJ_""0T@iLmzaD߆ڞihUp'Sg!5qXWr1DAC .9L5NF̣1"|TO ZL~EHc۔sK$ e?^ 堽_}AjzPړxa#aGL7,;Yu=_vTn}% L~սz {j~ q !ҫ%* tƏL+TR$:3)$L ܑi:50ӯ3LlpE;cSTQO, iE&B:l\|1Z'#hay܊b.QfGFkn+P>70TP:!zJ!D"fr ݉z&B⭸[Kf b~.G7Ӏ\qOars@Y]݀ʼn@9rKO fqjNοP"󓼡B2~vaaP!72c~k@r xm G)B"39k(8x''NI;JT=lŇα#pa&}د=s|K" U;A^햝Nϓ8Q19Kٸ?e(Y˧R d*7cze oWI66C G+c׍13O(rqM6Pz o$ c&H͈<ӀPy&vy~Z;:/~:$ 4zɀuszˤd Hهr=#Ӊ1jV)yqP`dJ饞/%&h2Dp`y|>dB콃_Xk3^W*8 ]V5з7I֡<Pߗ:ѵLc%[S|(&iJx] 54"WP#ͼ]m"]I[|x=9H+)}9 (KIbU2v,l~tT7Y[ZjS)͋AGu $y sj(9!C0/1‚KHФKZɴa  \QT{\dtn鱬-ͳ>=0HS5 R(䝗ؐO'q~clabYB_u`M%I.T Θ}h)LP)m妤^}+"inv="{B #x@t6Js` ].9 tދ<ψ&Qj`,}(r]_\F"c4)ٌ~Oӳ,cz\hlBk:_8o |!qg۱>4K^$w7ٜ 뷨u쟷AmuP 6<{_T R 0 XE6b~h6c7\=G|x8МpaQ=p<`!\T𷌗;pK|Ai*pu%tl7=f$fme$,iB׊޲@a}Ǿb~bp 2M6̾НT*=2Rl.:m‟nʮ%7PfC~z%"fʌ![(}ҝٓE8Y: !B']ৱUhEď4pVBy؏Ǻ^{h#X8pKi. !.j\3!p>rݏ2&W]#2h͚(-La].T͔HyޤƏv,u@I6PԤGKXyѼ3س!"^]G!8Ԯ?6ר#盟ߦΫͅoܮ|I$u[6^~a7'Rm.?ό⑎]5|Waf p9lPQ(0YLkVRYyalmlBRa2#d.ֵsK}ȃa/?ztUN`V&S5  ?QCK@VJdcT6z"~~fcP7k6uR>_\/Ks&DUU_\ޓ›|6'vq]-Y:Օ',PeZK8uY4N;ް[%)go yݻ!E_xY|/w^> ފ bi`ԾT%fdLR # Hlfsf9Gh|d:kŎW}xٌM=Q=?u{>US= +KmؗS39\b$̵7=aY qWO$2N, `qPkd)Vd#6q_f]ʑE0 Wќ|.$ЌU |>Ж>L3/4Flc /DA/"T6 Rtxmc1Vsu^Ȍټa WʼX<lNꔖv)<71p40>/ ,t.12Dj=U)CR2Ë4Hck@,sLF4*'nf!gxYxnC%`ĢK/O=uRaAL+ItƮ52:%@ O;WWȐ%.R¿<ڊtE;Wc:uWP8FR(3[µQB/˸iTby2Zq ȬnF]H:)+NVlʌvwbu*R_w^A-aW$A6v'\zm%՛9#uw&-򴣄&{g ׆m4߅njKk5Ĝt;;1e}7oRܦ8H#4|_)TW& N!+[]0BT>VK%'KOz>zsfRߓ[4K#2(LtŇijJ$(HKL T$]bhDQ5T!v:)m!-9@ 6E| `'1Ha{lh|.…Ec%J-])x.ANh(!,FөSIlmF׋p)JVcρ- V /aWyE+dx<4sy_ǁ?f^-Ly5<z;+o^ؙB)m.q~/hFO[TRZW@PC֬zS5psƑ5Η:ބMesdƲ0PĤټ> |G4{N" CYijN 9i{zEt%4ړ^sFg+=8};O։63gi}Swu?9݇dW +)=C4*:\m.'83T> *VF'w-#9w*H= uES_8=,{̎KHiSWy $PRMrTI'CiنPʢ(=fEXDCdD!Mw@jpu!kr8x_PNW+yRS;~Ķ9?sFPde2z;w}OA?RٞV͡ E4jhyGDEXG./;f~D8wP2,zE,p>N[}\O;>5KԀ'қd\VJ>zb7Z2O֔sXPx'"j_Zg&mdvG/7ʠhp1@SU=m6`ɗ=r4XM &h( W{&f)*x(ViQ<;PXA@/zɦ!fҀjЬ|:V@h3@$|x\O1k\Xur%Ww-Ĥ䦍dr3Y>ڈSR&#eR1V-,yt_m#2rV],IB^ 8LȵSAr+Vb5F^kOxBd'T4TC˸O坤hK9]PX C# ;Ѧ%߹NkRbcXů.)Dqacb=H{ Hr^'Z#l޷aQCfqv࿇5(1ʌۡkļ5t9h 5Gt=d z__;duh34#P,@lv , 'QOsWuFهD~R&dKA}eLU]W# ʜoۆt;uc - gr\)jv rF},!.~)׶}I0= R =/4UE! eiu>imCN2iȇ5,{|s65r{N^|Cf-wr=Q\K7ۥ/̻5F`GuZv/eSu?pH陼0)a:*c# M%rFgoQXh·^oY B:y(WWj+RcqLuݾ`ʺv'pk~2AG:|KnRx"U yAe<,4\~*ZO4ޮC% 5 φw1)u?jARrҙ#O֗%b>Z2-mO麷[a" m\Jwu`z I}9DX td9"S _p2%ԭ])Ojر7Y[VVɩ ʝ =ҪуZg J{& LKdӁ]>!)E~I50gދu= # 3`APAnWv,y~vv+.uDl .<ϋö5X[Ҁ %ιW-vS9d3!s(Ss$׵Ldz5=XC~,4ƥ{UEpDƓ̄|SR䐢T:OLFj21W.Uj-paS3~QE%jPߗ܌NП_ v5!jb:`膕 n*q\C O=H,f2]pbePQ9e$8g£t>v&Y oMN -fJJ0ڝni<h~Qm<:L0n-6GWYm0;#)V ܐiQ0V&BH{+~̆,Ъ_Zt IZs)X7=\ES'Q֑kHUי܍|VjYYXkHLkg:jD :>H)ǓwPo 1>5l?}z?/!Zc[z7j̸=dĄIMgE:b5Oՠ8LBtmGKA5uUȧ^'_a9!Ψh " ڷk xfأIAz]&(x\{jL(-3]xõ|2ǡ2*ڬJPktX0Ac# |i`v߄AlU%Ff,m2/?6)o@dvK+΄JQ+6?xKQw"Ld6xEPM)y$}a<zH>RmZoR8~-pGenea =?W/ :W'TKP38Cꇅ!d @hWIg_,C8imR^qow34\PQj%0=bLl#\WJ@הya,T݋ Dž۹!e?Ut?N4<,^=#ܸ@V ϒ AB"q̥Iн 5D^Q`c9?i5nzBrRutkoDt>y+?GhdeBW8J6*=s:Ry_!VcX6dY`~XY42GL-~흡3D@d|Pm r egq>ƒ?NB]IS|Zk8y֦=1Uh}3: FuA0}j g\?#AzpB8}B{فKsDl?)>_l9U``{ 4.c j#6Kx]ŭt'{ 惿OnHسKqk K8v y|)jUmR'Yէts* yohXgnճKv^XgZnj\?I\,|X84TNN0j!K|P#-6 JtLo0xDO'1*O沰8/} e3^?)_y /-0bֹT/=猋tbw@bdVa>8zir,y%2\l\)3Uj8,kvKx FƦg<#ʷrVr-q[fRM͇v>))VIf KVm;nҌ3+"XZdق X0{Wat*%^z"_@[)~f>F±€` pA*x0UOH[*ZGyLX=W!wgZ-f<a^'{֗QQ$_~7L5v*;}{}~CjS14-9e~M!Йsm)6 )u޴ x€pW(7I3E#uKB"{E'wHN{h=5FSB *d'.s`1A+ wΏ59_^ܑ yClEM>'PzHD`:6\р5OJoO]+aجĹ)%2{CS0l' 8](6|Ua0I@4 ܷ"KD._'[H"L*U9h՘EV>~*KlI7Sζ&+q+]zs sCkFIB_|bKd:]m6rl`8Pfc* D"ZH_Gt 嬌Tm#5N>WycۿH?ٙ,>C%KC&H2h)<\T#*R4R[4pnmF2e`nugX5dv@l>?! / @CUN*(ʹpҗ[Au ]`BFq+`򣴋d!l泼trH̒A| NOJvSN,y8p4a/t ׭t!23]0S*f㊤iz8V@M&c>4"'g"[@Kl9+lSG$| *ɷ OM`ߒΰx7veMqzIALlUV?=]?Y)\69ڟ\%c$5!|ޖ.<9SuxR&SeX_lQC 3s9 ȣ#'Ee3yJ(Fd}sꣳ"غ1[$4@EDo 'n3Lb^f' AS^κ|pZ0$h&v!wϿXm"ڍmH!8xEGLɢwTCR4KGu9t[MAe .!,5xM@e!Z舙Yta q ph"mo8%`Yî]UBc<5r)kts/"a*gBj`7s%AW[].\ƞP" ۿ](yS监LiZaWw=eTնBK7#Q<0wrkMV*`7qsFԹѲBЙ4ָhonm1[ ty^19?UxpMx[#B؃4f_$1#3b #Lx ”ȩDKiqhg{1cyHb`fE3,DKvyKG;Dl4o35zn1Fa;.9-rRHgμpDW_,$PwIW%.N̷x DE.9eNe k? llicy pUc]o\5%?=ԲnY/NK$ X`*NiɼDba-M9{7>.7Xԙ ޼<!IZv>xx]t[8 r~;Fzpk3I&Ae||pAtkR 5׶uWdaIP96P%̵+{''EؖẌ́~8Ta@̜+WW1n8V$Rgg+iUQX?Sҝڻ0N)0VMLA@Ex Yeٜ{^p/rD VTQnh^|,k/Eo#yayQhQeG[ soU-,nat.V8auOEVlE洀89X&g 7 6 [*]N_3P^9΀.VglSZdz&:*,?:nGÝ#`|$) Y[xFA\)~w0[N&r?l@!}L2q!#̾JC¸N FN_ NdtΧR<(8M,EEUjD`%̷M lLr=_33~7#@:5xU""|%N|'̇-ؽmi(hbIΏm8 {:(6!M29~so]5N8|l= :3.G@OFZv fOQ~ѣSgt6ߜһX#A9=I מs2Jsd^5iPEӾ$3*i \Yb+51|0@| ,d.IP#2pV[ђJz13%"zޢcfqb>ͥk> gWCyAÀNz1}2T),sw WQ ùV'r9z *k˲>6hMJv<["Uxоh%펯iOah\kjNbEVS3̈́6lbz)M~ LLp*e"%YɱHs8OV@c$Z&'2QvD3بk6 (QE+9qA{S>r"`biRSԅBcQ. \U2;%fQ1TQ6 CJIjAM{^X$E*z]„` R6A! [NJQ17t3ZGO@^ -+;5EM_ !"ՓxҜDڤw )4ww=YK:€8O3T8EҫvJp|(vlݫ EV7nة7|ô} VNn{]J()vԃh_ޗ$ܭ'OmaDIos?uLRV8H+.FG`_֚X>jdy#̼d*tj{O~06L3w KQ^@^@/|<\ +vK cՅb(0Ls˫piĄ8]k"ޓ,dgxwB|4e}po;2V&WF۳,WL`uV}YZio90˗5-W^Y@,y- L;H:-f 23KknjN t+ eo"KMgҴKv}Ł*w ^^ ) ¡^p9{@0yK O1,C`ƳXx EUE 8,Qa-PGF_YWfDgN+jci N8by~ _sqj4<`PFH!W;Iw:1 h% -blJ5a qr6 w:rTͦ'A_$][[~ xR)u͉i<${mDQ|qᬶϲ zIb]) fύ Hl*[{u@q Q~u჻ BO7;^φقW57@z{cϬ3}q UI p/.*U[X'&Og;\&X6(h;əuʋ5nZtؓHAMے^&Y+NcخK8!hOnTp@UsTv%%!#w{wj2;7A]=S凖7PivXDX1=Kf12Y*-E5:b@-:j\sV5Vp Cmp8tQL]RM|4c_yz4[jSvIbl>ig ]%ͪIh~ڱC"%.Ebe3;IN)m6ϡpE'!9sE Z%/1uySa\a3:mmz)V֬iҥu%d*L+KQN:rvacn:x㩨Is.Mn?7J~OqY4YOx^amq.+Y4"}Gb`Od`! vmݻ}vu<_.70HeU@-{|:YGPOeF؊::Fw:w/K˕ѳ 1nol_W׻\IBksGy*u|1d2;2wW )QjT pEn:G+%]|l^ FM8v@T ~duLI?Vpt-='ZktRk9*Mڥ!E7y6}yUԩGjF|v{~+oos 4~d3T~),g$ eûTfursŔLBߡWsiG H OW<y|W^֣T/'q)b+ԇHy!+9G,ۼԍ}rE5Jw0ʋˏ}IY#5'гG\{z4%E>}wiݽd,J\h,(B[r T[.IL6d jbK-TWXIsa.8SsPgK9p5Bf 'm;.Lw +{H;:Q xWwT_y!kW:u۬pPX(-\*,q/L!_ (]Hnt.y"FbATis\)|}_8g B JHӠ.UBkxNFy>~. _K†jE~/xu[N$ú]b󜴶.MugY!&њssDRri &<pOϐEt͍V O{J^.C :zZtmEAV범T|Qit2/6q4`Z5Qʸmvf^ rܥ׬%zw+V+gKZ|r e͟KD< =^Вa]zELi.AC;zɹ,ӘW?b`jv'RJfy_g5#^[ǒ>bSҟ/\sa~C<-o,/J1ߡCi?^)0/][o,Cq~gױ6[_=?Ttk?Mz5KVApO>2TzMiW -1}RMm)USIlm gt F3mL"̩h$%-Rg X{o-*p+u?*oˆuk M:5[-ItٟeeOՔkOiRS|`n >􈰮<rCXrhj\QA6-k?JGCzȬe'Tx T*cxH!]aP|kfB6 ^o)<`wN̖ F+9j>Z-u>kX* PU;@ȅ0y-z@ lECzQexƓ̈j2h!ސ= `l>Ϝ&E։RIV}Ezi!2ԣ\1m,qӢOimݘN8@t< 6Zlt02ϧpnZB51lk5AEZ4vDjHD'7nPT ihgQX(,@1;!yFl `!{C-M+ ) r3̂-`$&W҅qQՐ2lg*`2JOy:&n!;'I4Ԁ^8S}rǖF_x0`y. Q h&#JO,!0q{`cr `KK?s!uOzE! k?XQb ǡ;Bϕ0xzv)LRPgz+8pjù^eyFиem[H_HBmcq1B ll12@oT9Tݜ ȟYGҳ]Aӧak>oLUC O ߿I> =w ;1"ϑYP魿/~(kEdg~h`Nm'jZ=TOF;s41q즄@ !eĘ@Yt/{xMb=s`!y8HcFMI-)w[G E! t@}0D q+-v*E.bx,e"L-=H-6 3sDV=awK 6= >Oр=,xqlKpX!i3qe$i#U/r=SxG*qQs|at Z0+3}`(_eEXsO=B)ryTfDnש-3'k ~MYNVsga7TvA* }?.Vӌ-A3r75K+Lz`Ōµ+gLh@=}` Bw*Z H Q|FMC.R2=8ys|W\rjGsx_ڒCM)%n؍7p$y63$k [wld:5}M(^$8ٝbf}6*3#m*&dc)ńe-7l̀ek,v(jX)4״O&.ԔVgS_e?0|+{;(,ϟi/ ujH Y>nխXF]zMkt$MC{C-pkߨiGm{?Yb״i n %ZJ )s(=bի#qPOlaT^|O&?-,oMh-ބ<е@_nJ7uɑbs "Xu)g'Nx:oqEj0g.6W+I8Ђ/wXu{ 587!(RNX@ڀǴ15o9AQD}OR]cy7)~2rxN&•?=}GXL ukZ@^&MzgPݟPNe⩿SYQȴ"Dlu@N^RSnItH yhZWQ ٓB>PB+CHo#jˌt`Ny9;3"gxk]mD( $H@l+Ǽ/ߊ'g7<!EœM:A].䂒cdzu+6W+W,DuxGn}}*gԿEO %vd%0Us;Ŗ Ji  RvSKPmSvn*t5[wfwW)Ȇ_ذ +ɋ:eɸL͐nB)P%zwZ m w%e:I.!j]Ih#OB#z0Dpȿîu#nM݆EܠI},l=ExoeN"((x"kNZoa@EV-C"݀b7Q2cnɗ0id5ߚC} 9n|) *-vxCۼd><YgL8f%x X;$L> 5Ǥٳ>]<bJj\P Tcj&깄;uHb BkټoRMh7%I&vMO+98QS7y?&nنVӜE(oR&&!jtFT|$Gh\1{ _f uF/u#ip޷)o@Pc&[6C>r\Uӑ̅-,(=~-*b E$Y~g`G:#¼LՍ' }pȴd#=$2/\w Xq-izHlV46:RrǴچ/0%Wo@ymژNPΔ%E&ќr~,ؒ䞙6%&v\tY(N4QpnXr-[@-)s&i^9΢+SIRcs^?V'_2m3Io@|!''5]\ <2Z~*9ѫ LKYt0o}+2{ty4dZRqLvG,Zӈbt>jo_]bYeHQ>07J^}]QFv NWb_q{^g~T}Z'4g~P%gl 掠l' ~eA|ڷP)!<.G4Ru;<$j*Jo5K9ae6G#cjM3]ՅQluY^8rA'>t1};d!/lD}wr[G7vGͼ7{DIIgjilW@6vodN^}͂_s+aZ{UwF? >'boC[\B寛&n7#+f$c@=?@{5/)T@![(2[ZYLh!XW]ڹbRDm.EG5'niAWxdf{3G_N\Zur|V5ƾBx/ԲB6=K 1bvkgY1DloyS;Udjv(\Ў |B,Oȅq=rF2ң'[۳%?Vej'4u [glkf2ے#`GPbG6s1%@x i8t0nOsOQn4f"u nqv'cɠ Ġ  OGZY#c7Zɘb=8!q$1&K5΍Uɽ9 s2 &Oa+|y+%q*8cN 8?e(OSRva$8t ʪ:AGաcd$H6AGFY!c7;os"6N%3MFU *\|7w HBbeص}3!#vc0+ÿ&@!rKJ(,w?IBZƙ?+l=\Y&e4q5ߕVܘrGtߖ;`*WBčⓆ5ܴu]X(Rb 1~({)qɃ-".ʾ>JZ8䐺Qk$}m7º$m1 OU0|E0ߤ56X}=07~S{9ʳ 8 @':{>:+8j9,]S+*0^dptz2:pg \$ 1{A׶DϬ(#^ޭhGurom(P,v}m兄D}Cy> {H3 ܼV!4obU>sr!Rf?}K~6+M#yzRr$M7h&01Sd#Iz/~|0#?koJNO)1 M_~9R|K`n/X@.&'>!|#="F4h*5lp#PZ~v `Z̓Y|ctd;4B@Cg#|6ꆩ.dkmBK Y֬0&>,6HNgnZ۽rA~̢jHښؠK2{l N8ĂǛ:-.gZL6Rd[1eTgk*[jWq΄3^3pȨ.#!Fߤbȝ(}IzTI@{뮁¦l#Jw&*IWJCNgΩ-j.hT6 ]}N][*vR1eѰd~ nxG s -" JÃPM/xv M^? ׋|UE?Bw. [v%m5iH*=/#lh7~,]0~-pKBBdMGJ,r2qW>Hx7]eo"&fXxЛ^!ц|4@َIq#^\7?^hzx4r^OLV#^#iԠJ0MpZ׶e[%w!YtXUz6ujlJ"}` g~Bkf+>zB>8|hџh;d\zcMtli6"(b'x.A!(!wJ1<)7;lpѬ~jDl֦tHL7K^Yt3.|[S~իÍ=vkmKs$6pr? 䂿@sɠ\hKn f_\' ja]2 C7%L]=Rɋ"Bܰ,M-W,&LGh5"WǑme ɦPcO(lo"#`ӕT,Y<+g7!`.:K,VKlo1u;f[wg*+Ѧyȧ41VbHoq0 ;C6MEN/t/iZ}Bolr) $Eg!%Lv[ld:Cϑ1r]? Sar-~.Ȟg+G=i:x<šh;'Ҳu-T2-08 Kx04rř( A(#@>F^<,խDbC+auk- uA:~tN{SvuO9mJS'haEo[^bxV3EnُLE]}l6& D!2 / mkn n6UoGX\ސC ]l@Oӳ%^e%w}:04V=QfI-/Jf'Hys/a##22ޱ?KeGᯔ/ Zz?Ѝo~9=JZO7#RƧrպkg]<MӄQ6?,66C\B++e_G ð*Z2#/C^V#,S6H> 4 5pDHxl w#WUxTo=@'3 \ĝYۓQ bG 3'Nnl@:P{ .S*s1(3Qis&8R( `7 쎸տAZańob5!lim=r1Ģ9;aTܥ2b9kv`@;—/C|H%JĸOEZؔ#n2d3n>Ťb2=J_n[D;1~ v"_~]SejcY=*/9tF/Q0ѧ`0{5LW2 9 ٛI82@fcv,0Oi E,,Nϼe fF3yM͑rwY YbJ s6"w__brķ8"Lʼn2 ng8 .E=*7=՚'nJ[S\jQ&6-<`Y ͣ?^6šNM4 Y>M:I-2 c]?a?mK#e}8E0E=D/"m:ͱs_ |{s եB:q͍̈RTe* |wEnTLj Xv)JmhSj8]JgQR~iT++yQ5϶2n~+1JyF姤Ԗ{5TJ7"_2BU&ZkWմ44$>]?&e[{##49͚7{ ]QZ΢7|F3\&c70kǩHFK9Tҏd +LKEϑOQp\ҏюx+SM Lnj"cyc{VM'$$ͯR+.2(*mޗ7o~RCA~ YvI^YҲy{0Ŵy)Eq/W3 gMX{'n$R[2eX#Ccg$=ki M_S2QׯhQmEO2ÿUcbG*vJG)DpZ@4P/߈bs0'%۸Ny/:?{`6[@~:Vjw%ix2AOEc`Y}vS{*byaH0vZoWZtFwNAR&F3"Wڞ±,0^{l/}iLwWd.y$L|Z1yih{l)퍤$ۏ:"0E، >J/XH]K'+ñxKDRk;l݈t!j7~给,_zTYLuU{D,M cxjv$ qΜ?-b>xb20م ? >C 1YA2T zǖp*Puk8hNP:LFBl5M/go[|t@K|胍^ mMn7O)8'!fBƬG<]AQ$^r'^8}Lw#IX,O]l~QR-ַ"rҷ.9  Z^=c"0c] 'HhQ;')D!:^,`z: 4O?F괙2;10;#N(s[(@dVގEo|qx͌¿W֢k$J~(/)&.'Hʮ/7l֕`D/Kvn~g]} "] T"*<ޛtה*s!B.w7Vdƺb٤&۳Ob@])-ߵ|v.kԟg#4>i 4HrA<6A^>^wՏ_p|a;A쑼т=eLx$?3\ S/L+X鷼sa˓ 7ξFXgE$R7x7惭l34QG*P܂&z4Fdi/3MOJ (MCޙjnW04>bI^jzR|}R6>fx %5>O*q޽]Ppf醡vVy)I@\dQ/fZ%;ZVHFbaY`_rao-({ s#{=@AE3-=œgQ} Zmal]wvLoungi~'a-.1F$zx%: ErT@|B,adfZꝴ[Zzq`d[,rēu|z`a}32"q!Fpuu' 0y~i| ǓKF]g¶Zq&~f#Nb4_g)*9J=(RL<%M㿉(6=":,Y1h()GP[ EJc˶rJC8Cx&|%ŚO^ `8sV,Y9&j}ַj|]L Brç>fҔySDN=RSgQIġl?Xٮo =x-XW|݁4Cdr\ZFߞr z; 4vtS'ʽ"Ҏ]r~kk D]=2S;`(sin?C8S .e⅚DjPiwOYyT| i&ȼ h\ pޜB9R-%\y==MEV5>ilv 'Oh0ȥأϚ\[̬*y(d#!۴mK/GϹ[STԡ'#Ұ4 5fBg t݋o[Z,\6袷ݿeܪzT#&{[ T<|f@O(檼Js,lY9eedB"zLjZNe\^ӛQQsY+:b62r׻~$R7WrU}nKwZ5 b.tL(n~2W@Ō%θ"eM!|Q£+3Ѡ FNBqֲ{'+& 8AiͲ>יJ|%5dcѨW),=X^U]٦XGhZvUQg]^ѭs> et3JCMmI'Nȑ7-9#&Tfs-E.ƺL]}Xp(3G{q[K>o3uFB%HF dGb&N5 nĘ@DN\t6a,co˷s*NK2ZQ<6.>G/=5,8@zWw@^\pݥ_5uƥV'(KIfXt blJdDj P$ e DڷC+'4ϐ[:{orgbl0W Z#zBlhcbp/cT1 h7jgj؏.GKKZB#mOWaPG.I`3 Enli]x5̺_Jz煥;`@ џZ39\SWܵ:Sۖ,>+V]; + |\uݭ!Jtj <%S@tU݄ [NJJieװNI#wc~Y@P@Kp;MOAasY C ӄ6M^&0Y?$=]xKsyo2wҫm.*I,DNK)^XuIEX"YhЊ )%衷GKPvF̑_&NAsFz隺IN[E cȎBM|r#FC`0VC,85;) k&AZw (bzk(4b- IIj8j]'t@BoxN`VG^3tؠ1D!} S72-@0k0+3:vÝ{Z70!Ŧw+Y4Ƨ-BIg6Yn %=lZQd5™bUy] 16OTF<}mYN%M׺ j=m/& \qR,>ݖ]lؽÜ_?nc<6y o8zd0DMČ\ F>^I!$fmr.% I\Hs߶xt:fIvb)+*M%Y@QѥB=׾4 o[GUtd$hi4.2b"C^7-u-[j# !|U9!]'InC>_9#=;rL#CtoEoW?, sl0ܦ\a9~|2ފX|jn}8IeY='k$eHk AG^m#H0&vZ0AD9AALj5jcE Y|ds+ȥ4l8(Te;)[is}SOn[Ykx'=/?.{ `LTBOHT!$ 'rl +Ðhw9Y ڳ]R#'Ŝ!5B%sE/ʒͤTÅë->60h*~my&XoUXYPcjR_y=.oiC¼]u}P GXK`n&8><0 캌@:; U@A#;>ڋNN= gx51}$zk7X-'}'IA./Ӫd´2PB&ϩC0?4t_녦J aH%ɷzIoR0TuIܡԺSIU[@Z_1OIKV M`~ hY`C+(ٷI;v4SzؿT  E*=P)J:kYJ-m% F0XpNLY,,\N,'*bt!/m5_{M.WpǩnSEx4S0sC*EJl"!0anmKޘ\D~S@r!'S-<ԦW}"ɒ䥗q Ѭ!.&#oDYWܥ@T{ /&JP;T7`8WLDDzb2 Xi퍙YmD{E{/R.u vZɳ9S(ӪTzeҝ( "T*3;{¶'T)G&g*)ޭb8J[R4zqjOo7; >? r"ix!_^߇8Z]wv}Sd? P |p%e3%aE ½4ՀV헁ȚAS-{i熖y קqx[8!jp*J9gJn܋?U29#O( ש̅*Я\"rJ@6!RcJpWE'=h#fUq\|hdɌyBF;)~N'.awq3i:z(:L1T.X~lh}. ~)Me%e F, ivGyvDO{LN:rvp>8Mٖфe( mIsQBْ#6;F, 8CAfk,S j.HW y]7`Ԡ0@y& #@5쒌k\:2>!MB Lսu݃ -@w/FwFu;aFa;Uiu/t}vu :|7EGmLDD?x{TNxlg'a ب`$VH ZﳥC&~<N C5v[[qVK~5MHm+ 6zÍHR՜qCCғV$(7ANʷՕs tACy^HK[\kdj_:QGҢhj;8 R6wBԬI*{T1(j|5lBbvjnv;S_gD_46O61NgE"F'^gJJQݜ#Ƕ_| yF Gf4 Rmva:Mº~yoYI^ñҷ NU+!-ߊz$".'MIkV%ǦR%儨>ހ2>v2?`sF5l^8q悯_p!VLhJ !v6^ev튮#.a%2F! {珊AFzX%O=K@$q9>&u7nmPN;fEΨ7=X80#vaj͟Vj5:qnqR^R03EhDXtW-7pH'~/+$H,bo7qN6*-`ϣ|)uXjJ Q<;FxYO6Γf dwlXl%?aeʦbBT#ݽNkpaωKH;_v_ˑ-mZv܀x~g{I7(?iʷ^)bkW iDkqSp#$!7NCAuNFqk@\!Ȋl{&mlQ8vۂ&MX&"L$Z73lxyAQuWwJ`W TslH:\rN[[ ;};X{6M|oSeܒ䭝u2Su8yHHp@1d?p#U GY#sߩR[Z|ʜA'.|054hT"HKR TG9>qa87C-?S6m+AU| H"o>HȅYe݄5HcuK vBtl PƻP$]+^X lڼ<>#kϟbZT gwvrv]慥?__s'/#\X/$Ә]|+POb`{l y6qЈ57S vJ>t'Wé܎LEQ 9>_u5PZ0]2t&xߵ d>,kvk,+xE;3㮂L۴ /^y̩ʷo~BVB(52_>Z*6 q61S5hYd܎"a'V tӽ8L´vbE阉:P.4H6j壓ua#%J7ZyLGʝ[ZIw>͠{fӨ^m1x0V}?t@ugw/-g&(#OSOƵQۆмsґ3ݫkl%ab4|ĩ%*Z#8cz]JytTe ޚEQׇ^xw:b-#%!3G`.̅#Y $$'U"c_4-ULDË)،kLS &R:%6DTE1ߚ^`}HP~wTnwk1D+g*APR*ΏC9LK0 `aZ])1Ŕ\hOJ.: org)` CU922:YjĎ/|.$soNz(zIl[}à>GKk֢ƿ'41uymC<}({E2kDN{RR ԡ(TE74sP^Na@7+6Yϲhƭr@'#7]13'#i/B"Kd|^ 8֝5`v`g7̪s䄫 .!0?a7,`O1*0>ՄҐDP:%D%";gM$ LR%Wm.py#A_:GAT=c<͔xN> ;.CT.0bF ͂wv3hyOL>4uF/&elVG:JdP{ýx9{Qu JGpN-t'ꜻ]9{/Lw~]4* bK߅Fט7c[9~A.tbQiPYd[n@ʶrb/QS5q\6g-cM,f=+r<(7~S.=m7ѣxcuҹ3d;J IoeaռP71>oT aTGz7MTN WSX 8~Վ}SD4/ko`L=F~A7.t5 0X´큳H !L%+q^PeFw){h:7c.Tt߶Pc @4֑F:v"T 020*Ȩ㉥*NP236"Ɛ'sI!VQbif* ͙mi8•oepWxƁѷb9;AVxBǕ#+ +.Ѩ}Wwq>5'*cX`CޒUaJV:t$ 9/vժx]k.G dp(fSuzErkYwt cĐn=^+J`+o /, ƘY |pR^%z/囫"U #+0A@JPų"SS!E/[JDxqΆՍ\IYq*1OQw΋tƎuAU66Rfx?xԉ,B q4\q7V25sU(j_;CnS]u7M7T 6S+`7&[V*P wg[w*Rsg7my9O~\)aK8?dK0TDKhqɗY  `jFt6KSs@R^ZK<ĵփM_{8d az!U=oVTJbťRW?usM<u+uR[%*ol0К& tD,t[ׯi5ٺɄ@Fm>L+ hB2 dFfspL[HQǤV֒7 ^>.p<q,9ԩ vQ;C(i(/߀*{D{"yoc@,\3P$˪mڶK;mq\K 0t-5 ZS/dXx[a{WC~׆-"lkcʽ2]уS?űze{ f@ qARHׁ綞k uDrkm0ql3wwߤ ߔFKxbbvG+7n-awneͫ#$IJ6j}"ꊷEޥ3h5rOpޯ m8tPYjKxM:rH&]sPَՌzik5Snĺ:Ǜ9peUM'b%EAE7J7- }]_]ٯMkٸ!l>$b-0$MыϘ^`8\n8ĥ/mكEzSU?IL [/tІ;vUG،b|/7(o¿Kp;Дh :=\쒵xxú%Ζ?Qx9Ar"<'W[  Jݾ VkJe"4븩,fj-ʰ3*J=-+n95|&Ʌg77p` dn'wUv0u@Ov]:!@&URY4@6! '3/7vN(Zwr9:e4q#_eeګ51֓TAW'|k2QH` >B_2(b7wDǯب|f×t7aV+(,#긳33WSSrIТ-D1Z38_ʢ$!^N>Tiv!-7VonUx1Lܸ+c>@)wC#mHZ.0@;IP+35eNI_ ?}N%U珴a?O4.C*CeIC 9ѲjVA ?êiYTD!yȧ_XjLqePjE1g$LokL*h&8eM'Ish]@ۆE&ƾ$ӎDU1;ZƸSz7"8bK*Lg,&0LR+J(ڙ"ߧɽM'ADV˩ 3! H\fM44~pJ eif@吻pYZW*O]묠H'ƪW`\?R'u!VBJf͎06<:L_'DRb[~Q@_OtoЃuIPX TXtg1|M~jF3 =F0ڄXuDT Zkmι[#{YrhNC )vkݦ fKW-ϓw?5*پ]׿Ϙc$ZU^h5zC i6zȕl -IJ+]5gâX PT״VJAT:Zx ߷V3Xfr/dƝ]*XX 3NaBUj *Q.f5oC@qa NPzwP\r&+ l,`f׫qΤc lvE!}S^XÝE@ۦv:#_{mlm?Ϯ؊u<5/&Iiۙʿv|g`bCSeS;v9Ѽx2C.9g~و}[~`뒴:Q9Wfe9lVf%J 3vn=fP Znwwb}fHiNRHiUUͺD h1X!G(ߏ4܆5+q> JVg"6/ .޻^)J' 4GN"Y6~159]FQQ10VNIհA,#zƾS]<Ã_-񄘅ψj9XpIYXo&@M~QΣ[2peXPs2"p]z5Uxc@2;!AlLA!xmz]38t4"& r+Y:ɵJ}Q H=iYQ;LTXRqi8j/S@ OKJXΓj(,'g*Bׂt+~%ԸQI@ğ7tvТWQ&%؉j"zy .]4*?&RO٫Dt)n{4`'Ջ]%4Ꜩs!p[їu~C=9Ou/F7*n}?F02{ʱ^{2gU6K"̓I.xG!E@ylyZ+LۍCh]"' ;.>$sVYu+HQFfpT"Kӥ<4f6S&dJ2p-hr\/##ݘsv~2|(":ZRcAg>1:|B" #Xz9qn>^WὋA ( ȩ'n}o4yZvTFhঢΖ*mT5``pˆE$C"@ {j*TbߐbB:'R#;$I ~e0Gp$ںjHpbu,U%%=ΓZ,nD^Xf!+M#VlJi:.@ʈܩtrސ(zoILd̴q8 ;v۪'+>*4}&&GD2<# ?(X,qJm[gR{;,\X3 (T*5U` YRe!s :P06XǗڜ4gOwY[J'6[MIo[QUGjcM>cM)ުM<]ϳĐ 6 M^¿%4{Tn9 vqsqm6>m0>=6ޚ 퍋^a|^=!1Lvgo59V7t" J5 9|؛!-p LiTֆE40.hK`m\!5ǰ[z 8UFh2QH @E+?'^ŋ _L|/9vEG%;38YT vv3y%N-8}0X-޹ڝFž Pq<ˈB&_5.6ހͲi8b |AKRR"}H$5tjW;Α\lWo(,Qn7JMINQ3à |QTlJK&K R -$/@+qRN3|l0o?/d'$=U Sُݭ){ Hlq0C%:pO ^G֚;H`Jeo!VL<,;$ < -?8i-DwIק@cLAis: v?"`k6ǑdpamwAQfkGfJ4PNSzVtpx%0r_<&w١O nyn5Mk9wY-Й$ϟV)N6I e㤿:xXmYv$5&_WV}*#ĭwQ%a6^@)[ Go'7ACpI|+Rװ^,M c~BoYʯ624} EE(=F0?#[&yC|=[՝tL$? i mVf@*8O ߟZOܜf1@rj@w)cFSH.j_X&뀈!;eHT/-Z GeE팏= ,Q;+ 2Plo;0k$Xpatc|@oEN|0 W{htNCMzoHwM2`j{tr0HIKU[,wDWsm=MnY^iؕd*xV#yxlyH:V{#g, !(}XMfqaD؍8,au)!B!^xwEfm߻DOF|(:3'?'$U[VfwhK}wk1:?oS\.fuo|`^Ft m D- |w#1oy;2E٨Ic(YmM3 <6OkY[TE9؇+:Ξ}4mN/bM~DeCj]!| Ł`.5(HĻZGA+[S|P5h(E?*l9m}tDNFojYõF&7=歜 ; ocʕ2!{]w*\rz"qa/o Z9Y@9Bb*e}Ǵ`lh^BvllZF=k;mI>2~ۥꗜdW{?]i%ё攄Sz@W^+4ejF,/tx}ӸL(:TQn$ejI"'jOeC ~|IiItKi20asn}Hi ʪ7dt+\5q I\xqn] QE2N*B;M,Sڮ.XˋUV2< Stq- ֌P}rB pJY "{LplN\ ÌDSԨݛ f;2S>.ػYS֧Q-&{c"D9"H]Y '~AFT6y9`Z\R, A:@/sMVE@{ 4#3Sݣ ĭhpU:|?K Gr ԉ]D^g. OdGif2ptsP2fFM`3I @Iݬdn xNݬ9Z`V{m@pP?ICڦjҊj ԉВ^R 7S$d!偭6 MlF pϛ:ԋI앻ŧG2Wvߠ|P"dfNzf~w10aB<^z'eo֯#ؘ4ʰma+F 4bzgADtc?Zx0~{Ā{8vBAB_=GDRAHd%db sk}(im_6].%,Sr>m5/4/xy]#WlRy街hVoTz60A޶\S>[YL JEw}ZM&{ nխRbC MF=^$䡸zd@hTι TkhJWg ͥXGZ +Օ|;q\_3z'oh я=| TBHx![^]doR#юyut?s8;b[ޞ]"~"fAhHfRa )(q>JZ̓sqUD @!{򑻹%>h~ڜuߏPcҍXRt9~jK+\Hm Ĵ%lJѨhhu,)ǻ2*wM̞8]u.$j>4Kvdxg{6L%/^cW֠lKy;^8TNNE)xBK&|=Z rVH.yo禲nJePxƲn(AA۷1w0c!#lWPUM!֟J,3wOb1 &z&Fy_O-m1A,|{;8֏HV(^=𣗕l:M<4xH=P8I'ggVБ77gW3఼ItɜdőtS1]W7O$BziaQK~$g2?|FpT"Wɢ'^)lIxvtИ)h+z2k[#ʲ4a]O˃J_qr74Ȝ!Ah崋?{BǢ^W?4섛s~H܇[z>saF fj.0-6pnROJ{khH%*Iu|ѓ)LLS0mذ|BBU#ˌg.Y)ItwG+S2+1S^m]c.QХC1bcZvNEl냇DN"D-~Q 9h+_Bl.Hu-+oodpNQ Y__Zw$˔=-f u\r&+֜r@[{)Deٮ/XYo)[M$+HHa$jj#Տ2e&=>AaQZ疵ƚ8 DD8RK j5}'\ϺƦDk8 m}`8d5Z_0# za00}+6 ABS6BV? )P KYR&a%g\WqD9abіgXx9]bUIFo^Mnթ&)XH᮸( ~s̝v;1q1Ϊ^މ8Lt%oQ~tB/^(@Nj35hwK~q -jyE8;P59׶lashܿ#>›8n9%1e h԰֟ b}o a|u- }`}X~Jn;R-x)h^Ÿ j7nj%Z"8Y ' ,BN mln=hܼ-[q3,=)H,<#ٱH Õ$E%hg{%iPٙ>?M_Xel|C$wXUf{HHINiq,HWLI2˪ɭ1qn|XX*+mN«+jgאkQN[qBΏerU>Z,}$v2{=E=?;戰޵׭1\TlͅXDq9e@Jj0!,yHߒ8 CeiK\oajkqӏjPY9POh;]y=M H;snݠ̩(i쑍V0.Fp#t2oi(~5d%$C2)7Q %0ޭ( DcpqbNzr |\j>r=Zg۾lu%nk>n$|sfgd3t;F#y'ENVߙ! έ9.>o{UFr;g c|ކ _qbpX[ϣ=5q/&-RhʞyTOF$⃄:n=qք/O4\w`.`~qRӇ|O%; q%x4NъLRGk= ϫݖшgMwL4>kxWR~i܊~#]F2OplsLAliXZ{tBenp?lV 3z26,yRQTGUv hO%eFlnv)*`VK[蘬`dG_ {1~49M{PWTёPD0O52y gGfJ&6 D)xl72A(>b8:M*!Ӟ]P/l8[8@خՀWLq ,U\ fToY]u+k501ctS&#2:dTWߌs7Z R֩I`#Њ}dNp߂٣fsx rR`؊ST[V*}WHϞFEN[;%'H8D*Kܚ6wּ8_bW dAw/INÓ)3+ CQ24,RYA3r~SGrŹn]o;ty!5V 3?(N #\+cXb}JuOh "͘SWW7KZ?ߊ~FuWw"I9 F!7MD7}-m~NptL]%<ueJmo꣇%ٗ'TБ, aJPAx)cݼ_HbM!Xc~!fyb? $@dih Seoi"X|"!jaƂ mmޏg)ϴx\R-'CM8)Tϟ; I D!T&ґFPo$~=jPTجw-0YHT{$ qd] ۼ?زyPWFxMg1?:73|ʖa$UyBdtAXUmӣ sRvx+'>En$2F3pC. 7n@훇ީbz{I#87 'CĘ=˺r౫d>|vPYhqd@|O =\_ŬȺ9beؐCjq8FQwpb3-J4Nb}FGId9Oy|;$kƓCg}6p2BۜHcbYT/w9T"fom >;^@o@*mY&)) |{3N gz%$g-qjf;` IesG9)tx 3 ZqKX"oѦa?\f=6 Ӱ|zٺ~U8 +[XƠ& 3K׌?n*=ez.o)08YlS0?m5YOv|S<ײEiBI2B ԣvH߳Qie3D57suR`]3q4 ^s |JDaS?+,zYaUNZ79JWN *ugU:k uɬG:ui,uP٩XIR{?~4s5ǽD+^z|롞q)zFg_dS7,eEH59!px~2+aLj:ڒ:R8sr+(gKdlT[}b1ﲝ˫`Ek-;  ^1H MrsGؚ4 ߂5 5p =OЩÏ.pvنEO+#l$$M:3%ۗ7's-5SFC`JkχȻ=R.z7Y(m*+E_e)Lqu\M$[ɸ1-I j3g" iKnCn&#,C(3h"b*B:U|tKQ`+}⿬uqeŘ*'Ӝrp+:^G?īԂ>-D[/{WSm] ȍo6pOpPY[…j~EۺH=J;\|]d5cեnU 2>+'|>'97vA3\5cH"Z%Ld$cm1k/5m/B~ϐ\QSʯa(as@)3mpcQxM5"៽n$VG]xëzdW՜a΃Nm*{ RzI~;7pE,.I-sF6xh.y,ކHuz wF.=fNn gU w@ 3YU^IFCV(Tya;s .&䆼z(]wId1!ַP]xFH7ar bǺtB6'U=zt1~jIJml)U&$QM L0*usoN@)jv&?UK9 x+G9h U=uo HIuh%DW Hlz7Ͳsc{?1;4$K\QTNwY%K%jYBRyCN'rw5hD^xG{97 xfBA^Ia8-A)Ԑ6lTXttH!w=l@NI,Lٿ2#Zmj,Rҙ`Q(ړ1dQ2ˌKWyDojIl+oKk6)31Uٻkscy+ݦte O.r9уm2a{!^,'lf_guQ6F<7e_T߲g&5yxV;CcZ7qx PAY>GyQu;ws=0auFF dK"Uq[EuH5Fb`n#x b10 `3L!넮s稿|Ȍ3röe1O4c]Mt`gCR5dkieRm/xNBUGNVO-20A27gWM? +fg6o(?^v\au)i[gJQcpEmtm;…{vq+RQ6}/}@[/}{aFa{Ay6 i%͝&o͐uraXa:okj<+*UNT94vDF!AS8G w5ڤ+?Fmtaȕ1+.PD3yrb ކ4y܊Q_I(_c qy k ehoCʞ̄f,$:/EQs@l\4ABNΩ~:y<& tg!f"q*vx q&βi%&zKh}v%, y2i|NoS:5LWE'?k&/p"zܦ5lնCibb=vTyO015$QcADuY27CvH|HNB<<: b`\qGS!z&)*$]9(R )< -˶wv%(MZ^1-N뢤9G.vĢ ˡO>w{= n-fd|s=:ߓK5rWBRLh?5^bHu" G;4MpaĚ1Gyny)e#@gzYpi.F$+/P~ʥDˡtoy@͒7q>K4 ;hm=ՄrZ$dcʖPCNM0>ً) vf`R%@ےp_WdPZp}"rzHŒ$ WO#S]?> \۽DoLT9Y8B1T0j,3F933GFŘn$DX Ir!7G^-ez>i{U^eHjiW@j( %bsxuA5 ǭMӴ:7Nx4̢KFAxvXWAIךw2-svΠvVΡrޤ(Ʀ=@DIReJ@uEr F2磳mno|ܵ<0,, HqZ ݥDnZ^rZQв|O !0xzt> $~Cu>2/NB22yٌrJ-ȕxV,,"3a#M5'5h}-RoIh0}n;%}704'MUqY 7+4NUvFSsNL;A0mY};RL#"vc;7 [%]秓D$>-L9qdEq!lTԟJYAt2'1Q&Db{c._FޗG  *yJFF7rQ(dbvGOkvgʄ{qC31xQ2%Qwʘv1Z(t^m6G<"Ln>Ѣ&-;sVx27݉Kh!&]܃ 6" }R.RVq Ij y\2('W(EQE0 Q5FQ$@CHD"^zNuLۢ)wJk2j@V;+dGUY\.NԐz@桜$- fޙL 1ZL{׈_,g3øb;mW:Ak޻F(^mhӐR~PII;ƟyΕt '&l+cïE>@_ĕo)Xe9\rOera4+\DEHNp̴ CN7&6)e1 v(Sۺ.Xf7eRR;o+ڪF eknYkW/D5BfLUvH 4"E^:8 suՑKNCnM^'A.@  z>nf+jR*b+u pƊ[nhҲ666 m&qC3|PBew;ޕ)a4]g q(G"AGzC,!SC(j"PS@`̌#9fb)@lb-Ad`}ilK#_a~CfEF;;KN~ڥ@p^ #S>vߓ֑9)l2*1͒1NL,;XL 170U^ҹMoNUW_qk(KTK2Ua>)nW ~7QvٻZ/6 5ʂ,BÅ;з M{ +G*y<0I(l1 UZ[rʱx4gΆ)Madb ,fDTpaS; :wWT4oM٥98]}v虿aihRCq`Ua_ZJ\JznпlŨu\]pز?$pq+|74 Hq,wP) -:JY҈Qn炉X6P׷ƺ8ҩ@W,?bt4zyeYֹ#7cG+VpJXF?I;_Nxp7<%݂74)y菇1OwDRĸB/w5]V{9'Ѝ,nПصP=֭> [UN *DY 11 `$(%Jjwe=zK=a5/d4B+W p&#A2ANBjW(ר#x1Eqv) $a&oe+Cu]wo4ƧhJq-:f`J lϰ!lۈP$XܝZb$>V[)޼6N>X_^|3ϭfgTEIݐ徂K1W =2/rb- Sq$yqtTR6Gp&r{έ}5YXT/Ӌwd>VzjP;ȵײ$U2&̀;`! oT4o d#sdJ~4c:a/Go՚?:/А8 rWD0bE?rff(TH -+nS@j5_-3N#Ho :\4, BVDeʦ^A>YgO/̰u]Rh8\dw෰ZW `wɮ8i'Cw` FϮ~_* ,:O:[N6ϯPg|^S[)VDd3EFlI9HlK.u\xJ:%zo3<WB{|d#>p7kr'1iG C*c2]Y瀗ѕwW5A>MD~cD8w}Vbś=RFGBc$ E_[1UBU#a)_יdK1mʅBӬNN"VKo4 VLםUnֱ8'Lkj@-n:bՒe}^x}4ǂ)959唢 ތL񩁳aBG^xqYnU1'x6] &ހrSE1_ }MRU^<Ƈ5˿G4)( qT"CǤ8fWp,w.ckIs6 Θ)K96ZKo=@׸4el35ԴFPکn}r:N!~ne{3xN[_ 0 /n!.mErOɪ> LQB.7}mNџ&nuƋ¶o>9})11z!*mWot(`>:u ~4gd~[~Z4t]&̞VIt7f ?A>L$ tB (㱘hQH&fJv-x[}?Qyt4=VEIZ}!s s"-{}D̳}i.Q8W_47S XHy)㼬Vn/uC55٫<*)΁b';8ql7Nj/6`#gM?4Pg8)|_,:\8'eE_ђP z<ejJNx9iE R(+}Br&hǹ -Btug`Ωj(#(:;4z DX0o"жbĨɓҲgYE0SC3l4M{" L $mIk}z#9$0ugH؏zM͜ijst٧F~_*ϋ= |%5{^3H9 kd#r $oT^Md'20xZhX}Y@8qx`g{zR`: @GYzz(fNgC8Ojm'cwFoC5K/3aqU`:u>[huF(C!}B¨ 0i֌w 6ɒ2?quv`KrQųUFn|% rBN.N\WTkWGhbs@OMoG%.%v)sltVAOx+gwb[v!84,|t9۲udǶY-XX@]q,ֈȟ Åx'FaA"{au?<Q+ x)'^U#K(g~-u*Q-v(+@(cBI8_Fyy32 EPI0#_{ pꦁBbO4QtobTSY;(N$ ^/Yi5fgr͔òlhw'l{(<a*Yh)O&\ }vVP?X2skpRh՗ooJAOZiGm\}!cqSNcQV v霬t|&85O"bJ+e(Dv4hGd@ ^8qҴk:%@ 莘ʮV${:YT~RSPHvl-> 4o;РvJj!w6$E+J G1Ό^T-pD:^΃,v#B^)sSeߍL<Mf 7W]Υ{ 礒 YBa?u.i)!gݖf23̞j{3Q}(졄) KmB%X8}Mι3&ifl7td!L:9es 3%QA +ep5χۄwaQ_)4F˼0cI?FU)zFB%H `(3c58e Gx"["b+`58][qo8x_A[15e?oo[ß\P'+trꝅ m޸'cԨy[[ƳMT(4t f:j`2)R7Lo!y9EQiC FʰA+P=fb0ۀ 'X_ `_R* -PWJS6ǕD$ȶc2WM+[W7FV/]4-Cݱ =/1KڍT&Wu +tb'yϺb43~e0 wQJu % }l/H/j*rZNHj{s5栍+< Mg|FO=!ߥ\)u34hIP|LbU&R^py'm"-:UxdZX6Nq[.&?0)55iqoxk$У7ٓ2sjz7w@IX9a$1|bVɤI`^rAJ2( ]xOf6< _vz lIdfH)!Q{c9j)CLvн6TB.>ÓKge_ݝ(d/.'w/im:zYiNf*=la7yh.=o{!N!^ε-.PmVE.>i\k\켅q-XГFכ'~P<s?6Z|2ub%˖}p? S0i ocb ,@Fskևju8B.ƾi3l(=T33. Lg僚l Faڏ֙b.̞<'|.rܸJCjrcY1`g*sch|LIRNX|sN}3ƫ,4uƶC]ͤnAl>>ivc>jپE嘈`~W_WOlo6զ9}I,2"Q4.AR/UI怉a:hb)FE ̏\35{/ mÀXE KE`R];akH A* 3wz8UXaNpѢ$gxi7c^ ^7~8'DzƙH#-DY0#Ukk)7<.9>[ڜK&؊籾6hAirlhXƸl F,E[՝/Z|%Ad&|eUFlQ.H(NOiRSYZ& Q);v:FnZF(0pdZ1DŽ?N5YO<}…$4R]񝓬дNJUVt?sڢ: Ɯ]"a9FN\T%Q%K]+z4]h χP~4$M9%|Ծn VгqTN,٘_{`#ꝣWoEn m:ęP$g]Vz1EL |`9Nbnl$\)\m\.i~RW"׉/Nwm3&2mm _8[?pJlhnL#B[, M.֪aP٫ +ۖ[V67Oٌ[q#4ޞ߆l o6]WQQwgT?/ǭ:e[ZQ/ z!u^X#tRPmn8)Rc&qr^m2|ŝj#]C:\ %"#{XOLjhe=,FI8(5P!ƿsA{ԕw&'ZR4$#)߸֨z0~B|/ J'~{Xè#ml\ S(JgsA˥ZFG 8 #_ePg"o ع♤Ģzsߩ@} GST̎='{=t=fRNYzx~{,B0/=WycmBW5~l'GZNP[X,~JŠb "umYxNfRHN;R!ԟ Pb2k)Y>=Ih"GV8Tao>7o1hn̈́;,ǁRؤ9:d acC2yQW$AIxvϱpW“esNd˧oW T.݂}(KCСԔ`imteZL-YuU/O㯫PjԨ.h:Q0r[ 4Amdx@Yؒ0 >*7rjuNw\Xqd{f\ })zFX ZI7[@pE7X22Ad 渡iVv&||L̞Esr!}iA;-iDan,<3`@ZGI>\#zzHxo42oNݫ"l҆lg"!ORHkAu1Fl/`qw|;I%zEZe˷k$gc4T/-;Z8<p.{.4/# Ť'LUdOWpxo/uHEH p%SU/8,dpH(Nl z7IS.2)Uj:4Z ^&ݎbv#NmL&c8@*vd&x!ai:`\/{y}9JÔE( (dj9t#KFtY-7ztKrV/Uc-)O}L$Fv4*Fo Baj2vkP Gp&P NhKD9̄3n=rǼ[x05;L~5*5Ώ՗*9Oy_ȃAmbZ+wzvcV 2`f!gb{x,mY -X_wJ7ppGzk5HJK+$:H#قIv)9B6k)ϝ; 1?cjHS.D}?>%0o[==B,9,$7N%l?nD= e9 m^mXKRyA{Vj@Xn #V]I+ ]TP  n1VV4D)`fljqhVb_r>̛t*;,[k|:=h6wUD/g s:`zbEb42fO&Շ*^+nIEVvGhKfxSdWUlp~Ny\12abḫ;i;AقK}o0Mnhr7IM^ !Fѽa1މVz3UE_5]m)eLhuSnXԣM G8=sGK7H`5cRNJnieKyc-Y J el>:M&nu>wj{lReZT?;<M(լ't|'Xa*et;ah1,,a?wfLС ;KHycmjs qMsdY.'N7ZpY_J$W[[Vqo1hGZ K$]Ll’ӓK3Rg.m+ Ð,hB9K&a@R;ii)RtouN4';8y_@;eIMj%/Qh1n:[* %Qpb >쫅[/W~҇ۏ~KNOMJƼe ݓb uQPJ\5AI ҽr.'$ǝa‡>k 0Em*[ h;- k*tzÓzrh-Q*@PNؠ#Hx !/kM^m9ᇈc\hM)'gʂbN_q8co:[z6zF#Sj oX~f='ZyOF*#~(mwֳшG6h"Jav7f/aI}nAq]ӯ6LTTF^l#@zN-qAp奦#>2.4Pv =.22ry$-޼/4_&&b%SՍy@7?s +I`ƭ%{(DkBwAPxM^%+䏢B <tVK͢ `̸& ʳ庻mU?yS))HkqFӇ8- i\+،P%T!UrIH9ei_ dDu) ϸappO)2ilE[ `5Ϋl0t>SV:jܑ8䧌k1)Z u[!/l>+ʹ'${̖i4S].,a&ywNd|$Jgb`&}]WW>u+Ϊf;տB :3vuu̬E7.啢)g5W)g@12~m ]blӹ-ň;D[ȐkSؕ]!mw}O ŵ]6ioIH~ Zռ X7PG}1~3#xg v6و|8̾ηu$YzcoO豳i_) vZ9y&cNEM /ۚC,J}ȸ^a67v1_T-Ah/x_0A_n$Iȼ7 k ?`7dݒݓd֌i{0/16D늷DdAgt|UÌ!j*jŒ8Kdy@.Dڪ'NCaf4v , ?H`]8x6ʅfr{.^EoG@*}=U:W?JsoR\i*ҵ=],(Ji]o [aov>L?4>eXtG i26ݭ me2VK:]&OQ~'tI刱^M]? |hێbk']'loѱ-OLb,w$D k3/[5=<HPȰ2B32oqlֱֲ4j\1D;mj1ݶ ~Sxr6hu۲hPPr,GG)T8<z:֑fHIH){""z f*BY:2iUa|:ˏ1)\~ ~kE[䡯K.Cmf".oķuÍ!.<*ˡ6rYg#}cyn1{鄩 ZT2/zU Sm# V`wl 3MrZܑU6$r^bLǻ>S3פBL8ܓ՗ⲏb%X? a] ]_ 'iF~-KEPJh1xA};9VWRZC"A/C=oK=k>Z_sFA?x0!N^B̞2?DFa2HO5gp?u  Tu;dXF Pkx y9R q{z Q8"'xocoVej Fw1+-D,a#ݢ{T~  3sO~%<Aоdw9 ,Y;[y4~,l|%N-Ru3NM9QLհsffD5[uU#U$&O}4n2培r*!mbpq> ZGq~, H,KW,De<_d|X5uEd1!mlYTWE%J#.4qb^u $xi R[ݢrㆾ~ $0.}ޓł`$9~[J^ay>f(鰫:>ߵBxo6UtR0yMBPDݹC0Y</q('\7"_ ʁ¢FڼOE8'tMx`{T bDQ~>\S6妞BPƹڝ126 (Un\0B :g} 2_6M0oS׍| bB90k^fe+ ?bt eh 7gY UW}KI lmkW?9z%UڨD:~L\絶x#@SԼx!TͳLp)6sv@AUYU֮Rb5g=%.@9pZ(FF[N{1dRix!v)2#.P_bY%Tߦz݊r<=L d'usRɾbk+cm_,|ƳVsZg*kS l2(=}tS y`޾6&Us=WsZ^,urpK5pbm*EN. 9_Im YfJXO$y<L¶ EYc+t!*۠#튄B^N ̀eZ/rƨ!'<풭ΖBVE, J:gzԕX%rȢ}a\-n=l—jiڤS/qqu}ҥ zk3Oƶ;oa9Aز[HBA4Hr.kl^ceJu%==aG'cowr9R2_m>QYt5:vYwYHCZn Yw.W4pw :I5[hx`e:s `)dfSy h e6?nw[n^%OHIcns!n1 (sN'{Ԛ0ʳRP.ϯOW LD'bીq9ߴ8!0yI5ƒ+eِƒz`"r' f{\=qN<3k}h3"zn\:!,p {typaa鶓QY10RX;8b[alϵer`gNס9Es3SU3Р/t>bBe޷M(,窭c 2{ ú8&3R7mHF%N!ndU *N9>[l VDlV-F8T쀮+UԦQGos{Y6t(T~4jQl6{J8 t:ҭFyVj;+ݻ#t!~dx[q>{,WGKMӝ*ϊL:fj~'H,0 5 z9y)]TfCٶ)j86 !%1h#qƅs?Ĉud@VðL`@Ψ3CX͘BO,pD kZgpFs}|0.;'cV#]L 45SmI"vCyf 1`{G!;8tđX,H䬐3\ySc9<գ(DYkJ ;~NBuIO:,!Y9QDgShTj6 ۂN~ɷrգrCh+ol]Gw=4CZh'{oR%.w4᫭q3CXWN!\oQQ'|^~ 4湀pD6YU{qZf:T_TqxO6%ϓv򴙽 .-Quo?MX,G$ g XPkf &`mJU|DE?6}R|H&60"Eq%6մ% @wA 7٭ΐ6y)ʼn&E,?#Poɭ lINx RѡXh:CKF>\;|kDX/x/}85 Ibr'ch'0ɌҒћ6\' Bᒌ;6U~~ bŧ&4١]@@ g<  UƩl!+ܚ4X7u} KFs;[-7Ow[!)}w`ku.d]l])|fi\S;Q Lkf,dP7[1П4<[syKR+7ȂFJF#S9u=V^ 9"7r9`7;L%:+BK߳NJg*m LNH%1ta1mh8}#'pZS8- K:&<4.ދ94 v:j޹ԏJ+$?7 di&u{P-G~0%7kr@S5/֬RwWvjy]KK/(51 lNdǸ\k<6=3T%W :ad!mn;rWҖ«nAq?apݦmKb֒R*1t$xˇ wv̖9**tbSGRf>ږcoX{q%8vNe`oP&99n*l~Těcf[jdA&ݡPatA`4@/}Ш.<):F7IV]{Ubc4 B${6+i7Xb5}t6w` 6^53 !c?oZeYOԳ0'ԋ.8aMs6lO} g_lo*fec_璫a@լ }O5GC]"@4;ƚYjmr$GkfD?c/ ."߅4>PU|{E!3W띫<w†*({Qd)v6 Ig@j7RPS2Adbߑy}kD[;wJk h=3^bDh* >r\X[|q =j~n}}D~Q֪K>W[YGQgM2VfLE 9$qޏdYV>]^cq',/g$v%JZ0HJ%lo؇4Jl U&,d^uTR-M $OqQH怾i4iKAZF R&dDĘT) }DV6 9P.u*IHn3:ƁFJ}MgspQU-mS; ۫ c ;#VA>&TftX8ϻ\-W Ԃh 6"r5ӋLā *QBc%nRȰxcm3u/.~PJ6F8kvb5My -~Dld P]%!jg{q hi%`"˱|Ql!5l^&(|)?~ yh|Ix鄳vXM;}JojU{Eg Zx&d?1/yz 7퉀{1*a9|r5 V)I(V׉?Lo-PjD۳V7EAW6.LY.wN/Tb3*;^pErl/7 8gˀ/K*=>|h܄~2mp':Xxˁ4'^x;Z92hחo`1i^53cPM|z0r I;:qO ?f{C\_:fH8!^2U'"dG'M\Xd||$>R~>滯 \rPlhs}JCJ%[bIHay¿l;593QFL㯍yE&eW b _PWח`Cۛ=j^j%C/DLD**G"v 5L$G _H5)VCJrt  ~iԓn8{{h[ +wngϲ2/i߅{T7iԩu:+/1T&'[fr8n GCzZмxKq4")f#Iha?=%Q<{ӧ$}!cw>ǓQ e0$sZvOM/BL}KpSHvs; K/ںyPd.Xit&>]6o4$9}/szi5Tz.2#dh_Ԛ0/Z~kaGWSj'8(HMWA [<9c`;"Ŕ c%M@㇑[x@еȤ!:`v2;W"9Z{WuFUqK5tƪ0)@O32S[ٺK9j~[1yS?t>ϊ S;<QjqXn=%hZgT[l,)ܚE ,}][@1!U-w!D>{UErlZ0=utm>y$a  jeS@ﭤAǘ0+|z5@+d;T8|r|2e?dq+^0a"noh gW5@T㊃Mm9ϵhC B:D9u$> $3 np_'yY sṳz~bi"bں8Ē',sã,ȣ4LT)t e5A*&0Hj?Vn(}d"iMR\Pu?.YPJ_|'SD'ǐA H2 0XlH3@yQ"伇azvcI0^8xٹba2;f'}vOQ9O}MD}^f^/D4ʌ÷q'|9[#RQ}%7^$?5UaUeug'/Fl%:܂Gpjv7,du?ֈ4 .nXt $MI%8pP=M#0ӢeRMo,j9?+Z9w,ƮJvYG`",܄ 0Y~v.a }ՉM+1)&=exb $ߟi,Á^p/K˷{_JW ė{xܯeip T؊T`,z&<ɨ1'.N`5wq[aLv0r-b2 OL+͏al%'^ߩ^ V lI40o}%7*ue'K>Km1'TBL կ+Iއ: y{' ]7Lï}Q>?'.y*F6p0[prYm5}ٰyfnܶU΍DSבzEuB4uɧiY~brl*ZwuBSJle4˿l9R$7OÑ6y12[oy?δt!tK!"[9j &׊sN_O !ķaC9jBX=\Y_OEG=,ҸCX DqX{FAHf3Q. qԐ`ʩ+dVP2t[*hA[//ŐWZ|SܐkY=NJ|yiYNXڗ?>C DžpK483Vt ּ팤2[+5WEjrŧ9|CбO XXV,6\gԐ|O# RvQ̙; >DԏFo4 $q,%-\qG616$RWܼw*ɖI .M._^BLl!sN'g:%j׼N6)1ǪÍu=Mjarl!?inokܨ?y)Xa4^h$ H{&|rvLHeqح]6IIݝߠD,̃z\{nN:Duw%\#@*b_8_̱U>m{W&ǴQ8KLS[Q'gN3FO7X  pE[dFuPSěl&6oC. c3JG~5S#ٓ8RhʟWb%4?_P9zJVp6W3^fQpQ0<<R-rtMTw{@jQJnx%~,fX'54(*iңHLj(WRYHMgFB_?߁L}m4k0?kKPNU_Ya>ik_mWǡϐV 6ZL8'9%69.zjWj'R/ .6d12`/EY8 +iH C~rq5G7k(ޓG)XB#5bp2.?odګt=a `Ucra_]JYn|Ehƨ;6i  -;N-+aVG b5q_֘o M;1~v GAwz3jMh^{qUƏ0Zq h""'-)XnΝ"Y\]Z@q,#MeجpUNcSՒ43OsC9qJ"kVvZyjO >1޿ҡTy`NU+x H7~_TWLY|)m m 5T`G wEdF r!A֍@:vKfaܷ#7Wښ]gupsб*Ha d )<3YLRhf#ΤŸC };9[P_Еlwbj~pXyǪ89{ˀ0>u33ۼ{ nM kDB- AJF5;)"{#KxZP[{E&q\iq;kϕ`e9(\sbgPԦD<ibeԌ6#MyAI~@$=Ǡ?p2T3xuGƀ0-pch@H P2B WRMjgfa]J&fZ6]x1ӐKTJp?t1w !xtsRs9RGyY,[`ăR>+/ajZ +<D,=C1#kW5DiHKlzl`B!MΦ4* yl('/Hg%>8$&kr9%ku]k5*/Vo=1+ jG(F+l3N2mМ`?L(d,T̬TƊ9w3oUz H3IDi )֨]FgrG|, 0wOk!v/@8%r-F5][+s/qNͦ/ k*1 ՞Iu&c1u틊cHPL؊>k|M^JɧQKVPD%}P`/ giUfD8Em2xԡ{ms wsg$NL􀆞A#~eZȠ$Pzcy 2 O}`rHZVzQu`qtɚU6 /W7%gi T`U6'B)9Bm}ٻ>Y>>%z6US[rrK͸fjf GA=E zQ)S\G84l"? 2 0W#g:V\xમϧȓ٨?xF9MXD@+mhA/32Xp̺ T&ox -!n(('E0/L+V]e,jۖA23e\|U7Jh⒋hT^.;ݴZ槊/|  W_ B@9c{N54vT Nqi4jac\=6M (r UFo.AGU$w]~֏"WFx~ #C~F2蚡Gʲ,GWN>X& h+vhUi] zVj e,A}'6nK"(9 ^ks\0VziA_D9j׶c%zwBeDX?{,$?O@ΌۑUX0/8% ܩD6) 7FNhR /$є^iz[ =ဂT&<bޘ`'Cn>ٴ>('Z cJ$_:ʣ3MyLnUgwK*רKR"/r*!'7c\ + ks:k{Xdl%:ciRڋ aW?ne_`o{;ŵ4adH!C90ȁ _ ExZLP4E%/7=9JF8d \ue$A5p߶w>Ą;Yn ~yHFEL=^)jlj]š 0cy2^5N 5aatLP+t -ܿ$[0%8쪝0\۲dL*w璘[sIu&_z+w5$yJY/QѬҬQGA0,Ӡ}x{9*cB)X'3zw c[oza5P^(tzp@1Ci8ݚJ`4Q9Uz@JV=ey"Q XlHtJT֣|;hHrpy풟B_*:R<H(S*'?SXsS5ĒIV(Zg, eJm$cGCNj0ɥbV 2MQ`W~\\@unK\>GaJ)u oꃧ?2BIpNz:'ڹ墬M|X>7Շ6Ҁ~3{D՘gI.īa Zl|̙ y=(2%W$v a{cu 0~auVE(fݻͽ-ScC,5Yse-qoΞom5oD KZ3b4U/ Q}X/`d'9_,-N=[K0]4 kfG*'XOU(-Ej?2Q5eG^.?hLohn 5f`'rwa hlD/92Dgt?bC"7о52((rmj?X$q;cu,?Vt9!' pn!X)(r*J!N뾿puZ:~ɎuЛ(QDSN*Ij7kbJ; F!ί] gK@~V %t%`PdLv,7XZ=+}t5WδZ/4sj[@FPb\G&ʎ&ˆ!;ͮl$:,?Κk34KF X,o2VO7Kv: Xu֊jS>&K{f%:եi&ҟj"-Gît+ILvvNmRjzplc:P4́>s@ 6+8tYŹ*O4[ܔGWUJ})%JUjjgc+Ǧqqz׵!A J,îFfjf1g9 eN %2>tۣ'ú߼F[lםmqЖyob:YBZ|1JJ"l"s}  J2tirpp9ub%!zu.v[7R[>JOm}6g!t+Wm= n٦ϒfCi ֞2vs\0ykI%UqvԴHd ;X ͍w+y'C~3X}]oP}\cmSTb]h2Rl_$C-=D.ֆ3z!fAo# mr\k֪%NA\Ti@ewPy0#נJ캪'.V8b?tKbi6a+,,fJ!$*h<ʤ6ewft`ivwv hہѺ-aCeƓk|B+ QOYy n:Gʾ#&l?j0E;Boˣ(4zWT/Hww^vGǁ&.utSn>OThWJíV%c#u3G&0[ ![3IYp6/Hy֫Pg#lN栱jY^f s/v Nexn<b`=s髟+|!(P uqp1\l3XTgAaX9|Z-3uyR66J'L~:Q(g򝡧?!A#rEtxߥFUxQg*GwnDMZzZa%C&EwI>Dsv[7+t e +ϧPGJݵVFxǰz߸gzRd5IWD5"YCr_dͿ-P,B4Y:؀j7[) O;@wlf j?.=̭w^~c۞wO[koFZSt" Le۽W.*FjEUSlx~a($!#[GAs_'*l[ꑅ}* #`$V}G꽴U7›J[ Y9ցF`q ܌7gbEp׼ᱷ%`gQB M1F;l9=K)b&g`,qr},[jZkY&&z 9{lf>tw#10JrT&A-)B@ K{tIEf+Fܼͬ~ksӍ>NXKSǛmPs='?q49-6cN$N{j JqWJ0 7(iB/axZ5[H7 <د/_]V˵[0 $i2oPU?poZKgc;u)w=u@ GiQ_Af~'` q}@۶&"efA&qǬ_#8F`V<07^ s\Fk.ie9g>tpg]/$ّ#̥?ʁ?NyL`7[0M1{]hTc[x7r{F[0͒1UIҡvm |}k$/o#y^$ѬC.hS8:^ /9sΒbF#Gt(膇n8Ǝ.u:wb-AMzZ? qb8P펖DNڲEn3b;1œݺ.]0V(lЇ?hJ%tЃQkgĒryc_41GSvʪ =F[A@gR|1t֚aŕlu~6^:y?VAafj3 YZT-8t:0)*`H]EE ,A:dvvï2\_ ̷un!u5}\3F|]@f y 2q8?4@ Xvǂ(38\SLIsq2BF>_ˡT|vg1BuJ \~Kd ;lP=J:`*9;jԽfZD]=Y/(@0_>ΔC17^UǤ3Ћ}\jP5%wYgAYJT˻FWNˡG|I;J>8F!N{6kd5gTaL[#t{Ϧx/׍ҽ J_#@m?yp1(?T@*+A?(] !nnDcyy/GQil{J`Q;{z): B-$?q#bDßX_W,V v;s_ vIxE<1jttpl0;0))J kVW5&݌0Y/^= kH1d0.eV_o3Bc'7d80yXoHEmX2]H/D`ga9Dx 6V ӂC z0tǯM` jBl*2սL~<`hH "K/1Iasn{0 iAKsS\ MFrRFyvֳD7?vJђo<_o :|Ejdrb_7=ya |6 NHquQ]8)(ly*/. RiXp.bW!H}JlCO:4sz`pwe5ʡS&bӷeA*Hٰn h~UOF$e\yj녩 ϙ;> t3$="z'^L|!GeY ^5 @6`o-wRLA~DMvP;^d<, 1\!n(Wc3ɨSe359}*(C-Q 3/z(=i’ :pt͇?f5iXĀA7j2pHψV,ߣqv{ChW`*ݯqRğ9eyHvrO E!Lwj /tDMd>źlw+vYĎG7WByTCNt~wLV³LoG| LCSKbVLXYuk6.w:4MخNl.3.!Pe'y۪{:m-1tiO= PI UR D#"7x3.[:Sb<7.ZDa?.S=a9˚Ỹ-m$@i)LHT OdXJbW[oCiD&ܪFSJ}w^%KX9 4Òr ܻ % 3f<,F!bj v`-3غmm>ꗕ5 Wx^X-"Mo9Dbs;!4(j=뽴aOiPԞ*W>]E;Frr>JO밠pB8D-VhԳ׶C1ezB]O˥..\9{^窂=g7iZ RT;yg[{ݞO'0SYNM7Ba# fK LVAI>=Yuѿ?_:Z%a ?JrL|Р&8ۍ  ]+k2U-8WN63>o]SWc&XpdqShTMU(  <ָW i_%L$nJA#k+C~pQ~]uaJ/([ĪN9޳c El!!/%Z>Vpz\"m7:A gI11__[5!s 9xR7`#A1u b6fث7&D@J̺)v9g5mM%ioeXO`MXZ8 6"fjΪ< fȗG,^s4=]hw۹RoHIGOuHp{d#^ {>AD9?VC竒xv2h}dDTW;X6"4mU.cuXMM\ $WP(A@) ArT|gY+{->}o K|N8kwZI//YakusoJ!)i=~2'%a=J f7eQQ>@ܳ-ۍV;gvIqW$BPsuzY49P~oTd œS2U~ݬ:tO0/ޕ2J]˫Bzۯ~;8F^ 8&{J-_ v2/LX00^5G菶A|vnZRn}&7{@0 _}- 8{R=tO6mQ56S#vŸExTR.+y`&Qdp6Wuog/7U9nyuY@dr@  G@EL')ߖ9l%fppރPkhw ¼=%=SwQBcοFȗ,6lKqYjfd%yÅs OW75V@ad] j]ྥA$z H* 3bnXeS-ܝ&2q0#)j4貀;Y^ \1 |+kz&X):yRw92bX?q6*d۠f̈́M)z\ﻖG̭?c+- ^d82u awuW5>~@6 ٴUQq#\RAe1n[4@ɆXCwyb{_̈)a C}өˀoHu'@7V0sQjdџs+Rf2VΒnȰ$ p&.,o S ܚ҅*ڦk;!V"JlANm֠I ׸y虹ي(]O Q,j3I|/>[ɀ ZֺRc]0* _vFF H15ӿ]KBtG P^mTeVZ͌*іcqڌ1ݙ^zZ^oPL8_SƠtR DmU4V=u4lZu8nP+F3w }Y*@ij5y(}}l'쵣hӑC{G~lndA͏@=&.-Þ֠V6Vnº*}VI&=A;I^. ܘ"ARw^jCgȞ? 1_oޘw#KonzH(1X\E9xjRMuz*DdDkOQWb+i< ].>˜32{T }A.kf'TDvzT 쭉dV#zD3Z}*L{-Q˷4`T2}nY‘ (L[ur[}gHڝ";ߔ<)̐9i}mz\mM!O؀GEjm j8B'ܺR#a3:r迱g'wxVm!~=lN1!A!U:} w'sIN|kQ%'tS]Jڧ+E%w\)CkC|1ŭ$Pk)i#TLub\\>ٜ4em b0]_ ο%RPqL^lBqL3BӇd̀}is[dv[Lmr,艅1'^t.nFoxd kR]x„w&nE2 B^;=a0yR4$WéHҌSPMuMpG1no=fniz&!֕)\ ?bēYjj"3/<;F̉ br6JΘ%Ggc1Kni6g#CCWb4>MAaɍзl U `auX|˵ɖ@h*- J[#<4B=} M]ڣ3]$ `J+L@2oھ|Yսbu*!螨'#q}aSf|kbxJhՖ!Ug7?ϳ/ ?U1q"e1NFd@ ,Mpnz꜡Y"sX3߆j8 ̪3H(sv6%::L4 /$YswtM+o|eƂ%^Zl $F8 РaUWhǶYWMeZ6l:l>0ƥs/ +љa> VP#.y߅h-c.@ߝ=jg y\-ƌf (]XOK0):4{%.]),*@ ʊ?M} -">*mgJ*KmWHB)#j;;FIOslqIT'rO%e +5[h<. k:R4B+}G+^ -˵:=by&TJvیpN)KРwRPoiѧ Is dx +`#\]YY.ry92=nkpyTN^~ )A}2`X0a2pGbh9_Il]>Ֆh^fIZښKe6*䭱*TKjMsk5 <}6/>氬J8/HA,snզ˓UXw|P Z򁢿 _*>/r&=@F5p lgs6H#ԩJZM8~ق1_ +7;݂~D=R*Pnَqiܓ;-Y/~@'axL`lhz—b`l7ҹ;Mz`ui#t|.}jM sO@jY"Ss͖Y;q4c1|^*z#LC 8&pQsn]aRU,Dʽ0?)7M bcJ ?͉{LL}y- VT>#0( A ۍL vp/* + N *Z}1Ṵ39S>il ̝ H}3uƦ/LT80ɽpZAgwkW`=aUMK{35m7=iW t[Us9P^ш^,ϵ>P^V#G[A-CiM|DGF~vr\%O. mm\iF emnZ/!qgz_wd^X 8Y d18r"tDlhp$&L m~컲``_`\9? ϙ;!LNdMw_p;z MmyhF#2''3=[զÇ3eV3W Dq-ёNH;LXAzG}xjO .0 r._I|`ƪc՟Jۚw T#],Y#7m\"-w/g]sf닷8V`T@Aq]WI cl$qd'"E65ўn0u8P]=Q(|ӑw\eRӓ|XZч4nWJ1b=EV`Ph^f若kBt7`A?'h~>WBrAg+ЀyyC_^:Ųi|lu\oCFl㝻[G\bhgLW}Ҟ t@7BB;ِ4a'ᩤ nrszvqjިKuѨP>B]|9:Ho[` *Ă'溹f&aCY].3xN|=0&BNWDIH&"#\i.߉]Ss=e*iM~h'oren@ kozoi*Uf& aa]'/╡I&q7B8=L@8#ndE @RaŲw΋mC#%]uU<ь .ıQ^7")HX7d`&C1`#z#jS-ԤqF H;mhؗ AEAYblN4@ry}y[ӀE,75LZhv_I- κ>m#/ε &N =FiP$I;o+ɋe DH 9Me.n?K"[žByDݝ[Vuo/ Ò!2eqXTb)XN)ů}[iB5,_UQa* ;¬AU1$þYQMםs%՝P$gwt:Ϩ6XH^~jJ茷BP]׾EO"[xi8VF"zX:@{o.bAGzVM9|5K.g1dA""S }Sw>٨Ԏ+X.A ,=KE_?V虣Ö9oLM 5@^1 5Y׶ 7Oo`/u^f](*Ð23$R?\ G>[l,{{\eR;{=-X_LpwCP|_`?L>`FiQѲ0إu~ZDTJϟ:C&FH]Q=/rjt .X=&/ 70I+!.5:Pvn[G2\>K;2L+˸N Z:4Ir~q/"DOXq5O"P29ht:\T _,'oNޑ7 ?&}&tʇ`tlp3KqŬxq٣E̮%7i?*!wqg [;?\kҁL`E!CCAJK϶Рϗy 2<(M$F ˥5=pf5 ɲLKc,/1X^OrV- /{5eu,8[ E7v ;}z/7vK^ f7(L:6C(yt7ώ5&t ]p=YL/_pn-OkZC@h[A7 K"& ZNT:O9cӘG +d&!*a657roDiQ0ry>M˦\ګoiX"bS(2j#^V̷vE`R8u-jMxfԳeKѷ21㺕zxhf4~e5 k8uhTqf/&zwGjNnz|ԗ< } p՜yz,bH83Èһ-OE~XmiHV}OZ"N!j ܏fኻzsa~ D6_>rDݷ+5p$ RJXÈGںoG[_L(eZH& ;=ҾbjiKN>$*w`ķjzl̾*w&L9 #x Wl<~aZCP'6A:t,YGo"lN_wؠ1g@ ׾ @*rW=0س+ o\)lldxa+{lgu`CZ̙'A kIMʷLr4+hK6!6H++ܹ%_PB:o&DzAD xL񮓁F[?t4H˘Cqf%#h̑$B8[YZOhS oUviw> ORr4`^BnTx{ vJp4^Owo|xɁ8PXTݡ1Q=c[#)?E2RHz@PڭGA&cRƀ{^VQDa߲ 3Cÿ1OVZe x*E. $a$3W!\)O Kw0$QMA 9yLr^}DQ(J?!8Xט2Kd< ^F|-H$[_tg(!b]ynM6(oWxג.I ց>lnAJ룚8?h P qYtmf:`?X~NmvrC(`=j}{~-G%J5 sc5[.Nh \wF|_fY-'4Q IWaP:irqN6[)yѓhp(UvnT" bCo)g/>Sǧ>{v~tu%-T ۓ"bG'rǓ3 Ǘ]鲬+!U.=(-}2wF˴?=\Wq( >q6_CP*`yEA{:zk/t)7)f6:S=/8>ӿƯ9-lqU)}zvOoeG!+Eь0$^c74LK O^1O _C!keÈIG7˂u}7x^V!!z_PU@;c sBv6B1T>S4`3HΠ23(V`>CJ,xGJ~ %/WHJ )t;9`UH! k8ZQ" Xoe.}.uvkGx}5J6Yd2`J9(h:">DdtmE;=L %S\ cGX- -j?-z b"ֲj $FzYXpWOǨ%gp_rv=('5[ǩs2M@Twv[&f6B7qic@L?3,VF)JߟM:;YNy^P.Q|k֯.cfInq4+Csx>bPj|=bpw7*t4shKWLnc4J2ZG.u8{,e-k[r)UčQ[VhY{ öGvx8(l#wᴦtUAP6@c̸#'JI5+%}"|ҘV"i8ލY5MEf]jatYhjis钞Z(TYús溙XN[X ˼G3mRS >`iv37Tu_) ŗ_;&cVPlä&n8N?qR+գ.]vL?S>H>F :2˅㸄L8OaO9RO|sqY>חfKK26'^c^Cx hsDe!zIH*] +qT(r~KWU8Tu;O>|)jh18ɚFCġ?qR_S92MQxQ1dgq4ؐ.\Jj ;ݳLnvجO0*Dxy6jέ-Nlt(~3;gw9{IFЪ'#R H>z-L,$z*XZg7 ~|vÌʮT8իo O yͬ"!s| &qhytȇg0XSo4! dչs?K,J!Bw. qʐ6O# .@`bb2 oE`L|D/I'=h@x Fe`t+&rP1̢l5mR|ߵM 7Y6C\.)Gpvp1œ #L6"$V?3(6D޼E^5J}m,)>!}B0jkbZa5BEi"G7yʹhv[TT;~s ˶~fMC?kAkٯ %㦹s*1F%q?x]m{ _pK`l͎BTlB4K e9Ŵl=㇢n>|N^qql24Gg!)b ()N?toɗR쑍'6A_ q `?Fz JL6g=#^KjA. [kq?vZ#Jc8KR/$͵q0ԦߴGfCJh^dz(kk5a:Z+Eir[\8!8TU_?MI<ЖgH'$nzE';?3`IY[(Hêm|Y䑩uIH\{O(:2W` *̈́lBAe=_p|R(nbTp&IDb3/Ϸ\Lqȥo /g(wxi0_i7({6 %pc3Yͦc @wH$y`cxB]Ӄ `Vq?%h v[^ߨ"ҙ_9@qZ3ildRKpC203[gO~g3x@nZLD @Q$A~bE̴F9cݮT¯&ipQW $K3Np__PNhz]ox3D 7Z!X,;/8Jd:l27)>mKD?$3DvKv-kB#VҗmB)0]8Z*,= ؞GK 9Oؽ-3c h$rnjv3dtMZI ƙЂBL1͸\ϥ>yxp [Qㆻ6"Hh>3aFu^ONtx"gX9 hcegQ! ~$ØSm U3 =g̅e15]:֍nQ4})=- 5!ʷ련K("m5p,ݗ%/m+03 \C %1nx`S]=3FYKx UL}3[y:,uf?Νo#,P:%0zj{i,I+QGVFT# Er%0٨`+Fq+4J2Rک_O&b8nq5O[$`=*{ձf)k^)j^[aQ|]e6zVSϱ7гʺAj<4!4/0?d)Af}يw8pI=Ŷ9{D'9wT}&>m^TfTȺx#_Rv`?EQד8PWxb9jYm)\7a!M"iAO Ԫ#!ɷrwqYF$wAO{nZ_4vĥ`#K8:Wmќ>x-o?KKTtcp3kl#2 z'먱q nriA&nx0%zig6 +<{xCNؙNCJ9G30t톡*hlr"1ST`f`HzVk>;-!l~n1-JYV+ɹ}$&@+̹T蝷P`ʞQ?e  A kaRX}.ʓ]q)+x9X73*#o(`H*@caN i5hlv e b}. :RW ʐFjdUq6>e7PI )SJY^%>v!|ܕw+PE@&'\7PΕ(B=PQ9bDЋ皒`ä{4UWYtp._aOxڃ[*Cry2QScr|#^[C%AWetL7Lg2|I]ƴsb d "#cgAu}*S CP7@5p}=?*EGjO%a:Fq qa81["d'5,,,OL*$0Φ@_PĵkZnKSj:KO,jdb+.-x0m{N!`4}+Г`zbRގ yU`JFfE&>c "SqFhdz#5,kWR~c_GccpK]r8f~tbS BZ 7{$E3D;He Jʈ5"9gCLUg`Sq,u*ߣSFVyэr<%pQhU=[m͕/_A?ҏbDEK3ȲIH,@\hb$#PӍrφ MdKw?W\plPfA>S2W+hzXU}u˗rFikbZu| Rft2,qހ~pXP+Pu뗘f})cfRL ]_ /b=(|NZC2oP^'\]_j[YF|Sמ=Яp9=~;*RUoL]Sh3 RVAV3{q?lю.=ڛ+w{61#NHxHw]K=Pb>.wH01}ӦKm@ YZY݆Ɩ9fQxS=f?vv[0XpxHTWcEu]\ = {1kZ"n~<9U0Qf2t4)8U 2n6*-x t҈KqWW3JȌ)SrlP5x}bA[xϿDB>91?^}jQc?e|i^p߀-8%ϓm#P)aArnI`6̊_- (#|~ *r [c`QSsἆR*#WKP zWWX.˔$NYg:b}B;g1sgRucG:;?_t!YxrӯkˌݴK< z1r)yLu/p`:ety)$ڕ^/ [0xN 9:8463P^ NؾxhWĿ0IzBn8mz3Ruc=fpN[Q~\VtZvRjTǼdGe6y"[]a1ayL?r3NO*=QT}WeMK#spyEu+.դKSal)׭ ()rk%C-?+~v@/7zơ@7 p 1PFAhfqcst9epMoOwj2^=cTbv*6Xg^h]{~vV,(XڥD xur*PS!cPpsg<2ԌZm^u& U-5\^٠2RT6an{}^+ESD4Pmq6%m5d2!OfVySN&m>4GN]9duh`7+f^"Pҭ Z+x b##m\^>'uMe8E{yPfwL.9}}|jWnT=cǂ?imk}8:*tk^>xKX;I*i.2i1nGhS0W~]ʛGr>y‚0ɸu"~D#H;qV|&dja;n7cQF(2L+n,[ Omupm #,~QYxr6  vT{YJh\`'C&$S9F%pj{/JhFm箞grP݃):Rs~fىY {vŒ Qh=.#`_'Gl|xOa9]xWXžn:~s܏K6BMr:7[lh=sge p@}n"z.ؚ䭡!U'O1N5P7w ¡NfĹUG4'h+?0)e%8v3RAgsPJj: }>,`D-I'yj4AqNϔxk_vjP@7o?&]Ĝ3wIy+F-7P*~U# .vJee>nb'AuBRV.%$M!yn k"氼^ظ|xXH3)3BnFf) v& tH}^oL9gu%))UsɷȚ s;ec]M;OIkXzޮ=nмH`Y(B@4'p kR!&]1%4B^`x4^G ӰKb:+;˺b#"-[?:ʟ!0F~,S0A_($R['m:5nˉ*K0B7Ӧz^l:Gq@5!-k;zWmĹi^L.8p:' ǥ9"yxd1M_6$w!L9R\B2:&]W-V"*O y .Њ0֙n9wSM^!UfYXEXgC:lm[uÚP!f"@eP^=LQ3 ⋰.[LajgEC{ڙJ͏Բ773sI. _ /}eU !˩MP%|z?stI\w+!%uWVSgC/2oRtuh87߱}&yWmK Չ@ng0e.QuѦO;'h,#dxl$qha7Ɉ3+>WrGw+$`)|S,3 覭5/!1K|Lc⯕t[m1;o-EY D08xۼG}l3}|nFO@?xIB3.;y%uBN$mnkrp1w~ÿDU4<N|5r_iXnPC[Q9qtn,[ F}9fr(M4h*zJm!1m݄7E뮩P$wlX7&<}jv5u"w;}~ QRR8c"uPWaz)Ƽ$-" tPjLu oe⩮?Ȳm] ~"%xQYB= Ɍ2nx7I`BjNۊ9Pݛfg#كuPBm:;$+;よ efOA|{\(LpZ׭21)aU&n ݼf}#P2s@mk}3UU#'ٚE 5P jTʙҲ{otx|avE񘳍˲ 7r&@gܯY,(zУN1@8m!*VOZmh|N YA=@Xiln.N% _\7bq %;i_ T]3vyO/$_%c[evB.]lY28"rkF-NP\gGV-@tFX fistfEWL(*elg ( Yb%'DMFCbm5..K~@ FeX% ƷpEB?/ֳ^u2K4|``/J$%'((gzk`USO%g2sS,bߋy=w)u*P,lцܰ6QcX@I2b؄XW)y/ |-4m)QA>!Bmh@'_ ϫG'Qف(_z*Ђmtoeb j[fgu8&TvۓвzȄ G"9vlv$|^G,S՟{)7 N,ndnY˜=U1!eɮ,CDQxФtj0|ֱ'-~ǒ2Z6}2$/`*[Q+nMt`_H Tgh`fAGfZiz[4Փ`P쌵})$lvuv؀ZN+hRV$m/#Y0jŃ jߔaȈXb&l>;EF&W}bǎ$ eW!>) '<ǸPq.F~&4KW&mpYIw!Wㅢn\âc1BkSSu-2(\J%IFyY(SlK%$=LK)U:D@Ili4 +w~Ph1vtGkcGb3{ev>{W/XN^n'k꿘_ү <=;DfieғJޡ~q &g!-t" Be,b8@*qMv3ZlLaAa)md:]seno7ڹrk5cZ?]F)-~9DMv[(@vnIr& \S4▶Mjen'xv́W`ƌHL TLޖɑ(Qۗ票ϪM^l#{^6,R${Qf:REq ;qUN6Ik'<+,y/4[X%B]HEez;GQW@ Zt< ʼI9ǽR!=y]'Dz|661\ÛӘap3{%!)hވtƔ]jTױ1 (\X% re4KF 4'=Oq3^Ǡ 2X1= vaIt0ޚ^toR yDoMF`8T 6ςNmՏ܌#GRՁʚI<&VL=NjIÖz1o'¨Z%Q2! +iIUG=eiIԺRgߖ&]-x̕/)*K# s* iR#v[BD!^@g{_]0FO?Rvlb}Aթ#?Dն|C.BV7n|<ԡHO!V4mt˝ \j-*(A/@u5***p#o%ߛF xJH>;k|z߯<$|fW-_Vq3mA[BX[ʍG <MBF!Q[mƝ0 _ B983>*<^[{.[ gBIҦQd SZ{@3 JV=4>LtTנ 9r);UM$W;;VwY u՘yo1^ALIxGd/dotSy^S-Ϲ %}#gG[`iotԟ՞zr21.V`m&?Pk5JE鬑4)6ݤIʼnhTqܰm{F'ψ{Ϗ<; ½M |3CrJd-plKWީ#JP%o1nO9pk62Cr#io[]Kڜ4T0&<]TmTR u6G *M]>Q'rƐ&PB3rsT#RkMj~';=]D~>|͝5طd  *mQ`Gz7]g)<ep4[R%U~Goܪ f>'O9e0P; Y6DMA1|SB%Efa=֔`ytO)-pM36F5it }Qq?9dA\8`A+0 JPOaj12+;{v] NRPi@T/S y:Ō 徙`~dZάTTXD҉|6\`@@C u_L(eb|#,WT7o[߇ 90>ɂqC8 Utxp :UlǓRWnj.OZu+*X+1)c Xʹ3R֬uh5*GFbN775 "D!%;?e0T+f -{a ?n͇[jH0RL!{ ӏlqz4@+!;y0%f +؛W/EDOfbК1gpns~gTidTCiss[^5;Bq|t,jc¸эZþk?7͐"ӓs!ISj"_՞U5]3i:v[v, rjV0(0b*54MF4 4s|[Msq,֖+KkЭ .uӗ)[~T4= @TpilXTS1TC\g,obz6ĥL: Ҏm",bJ;թA ɫvr{SP):J1QF\RjVpʧ0k ̉0I-g6hdOZZMa#IҾ%1#A!JBT\ۀ"Xp~%@hI /n  X03jn[ؚ+:):{oʧzk Tw>G/3i2;<֫9n^VjE7D}lAG`=/mm%w۶>> ,js'ň4[\CAAHIKS4+oj1Bf U`mbQA{>ȞЅ\H\39L>HE}ֹL7S(.Bk#>h}>bAz(ƥ^N0u8.*Pv`AuEDUWzbF.ڏ-}U.Pn\PKLy:hVźBٮ-, ؀H5Qd*n Ü-tj _%9j&HT+STq$~mlIyhg|Ձ3ʣ:cYz_@PGp3VxryfΜRI[×:*|A|nq6QE$|jm e/(OJC_;72.{,4VAHA_TwAeQ.P!?rƤϖxS@HsY 0L /IkJ|$5s r "k# NR l+4'W @g 矗]/%gs5#E|o3n(RŸ&O.gi1@Tw[o|3VF< Ӿ/=5k:Ej5npe!yzd]hYxSa$%q^tU"M}>%BW!S||x 50"la 5IJT]*>q6*CTg ?0p ҫ6 -Vā1A |[q_sGbaG}MR{q|*#Mlop  ,G{4!48N`w#rU`JԻixŏ<U6Iw#1LU n Xr *zcU5YBZYLБW !/ Al4Av1ua;bиoFPCXƳFw7R"q~{*B<.[6&T (c%C ED;"o@U4&Y <64^$[uv;ՋSCk|Gh4~NӋ$b$9i}CHF5IK^"Q n`Ɲx ŀ1t&i{x .bqe6lH$zpjvaV}&@#%2VY]2SkkkhoFTЎp Ks K2=UndAuz*YNb)*8dZjYcB&qgm~aI hѳM9yJNxY@ ZP @2UN Bx Żea4W8튈ZeFg-XPeyS"PQ^.D:VQ\Q; خKHjCߛSt;N#S{泞?U09ZrFd%G| Wrz#0h@֊eƞ'E"T gYB@XsRط5\/SV@߅2C&K>W39Vw'! 8bXė&m"bQhD:~' tȳVR|4zᦀr-6.#{ku N-8gV>Dޖ*@hE",s/kKáFLH߹r2NwkUCR08y';ᕀS,q#_),zvR`S>A{kml6w2 rOH:U-& ] 4t$OE] 1IN2muYSB8͍yr悂3#߹ϮyYYaBnRF*61;Hy7'j#9J铈ߺ)'ZݹG&/wWr8A/7 DTHYl ,:h<&$AA|E4Dt堍NԎ[`쿔?(?j@t4c\H s}"1 eߜ+tWZd5A; A^_R|/d (N ]"]0W6 n8̒A`l~Eq2p d#V^X&el4 A8SwYjwȫ-pZ'a@^jWIzz΋me'\Gx i})uaԦ]eUcKuA# Wq(sGд /"nl`:Y"GzBwI8oϻ(_Z*DmeˈJ&[ $pJmPWO𛣆./q଱sP4@Czx4}g8\͹QT2[U$ДATVL״ |^ :1yf_i yRq;<.[p$K] 2܀NFkl}v) dq1vU}$(tcs*?z>H=xWz/T[Sŀ1*YZ"z7%tf]E\W߫,v5q+ Dqi Qū`^7iTHĚl@kcnHQ>:%2ʀ:gd \% JdGB|/RQ"#^|; à}NVwu2ea{ X|!29r$;_5@: Z?!GpZaC>V{e`?H6e.u9F~W&RlR/SI;O =Vhfy#^Xn(w/SzOh}g*aàQpg,pA-|4oqFцEuTp4 v 6j[Z(h_O192I4k(pa`] dzoy m+CV5@缱) hwucF2cBiцBOFɡgˬ%`F 4SIjmEr!,Նh螯-=L5̟[{n/tGi(i>@T/UB*6;4X'cJXi:MElĕ}aa A$]3?hORJ!G&̣`>Ήn]KWuey8 m[#{.1yzp9i'o^W@1I3<gv׺r>ДLa&gYrZXTp7 !4Q}du;L=8Y` 谤:+'s|,h|˿=v9qLiN47=-1" LhZ?KbXƱ^-46_FXͭTyf}@C8YG V0ϰ2s<%>Pe J}9ތ ,d]SϪGyUFYvp.9}WgN kf<&䟇1%9p8 br *_ݮ[W!fJi[G78w*hy4وd' j1~1w ωB $"ȌC1lُN$/N bfq֚YBĜﳩjD:4t3)xLY.Hf8_f$9[h'eBr5{7,pʔ<0 )?>@Cb{5"ΰ+k <+n\][`&FC9##k#1)x<- _1–<>QHȏRڑ ZTLy,RO UG>fѫX /~8;t Nil]Oc\J 𮵮Jc/p(%K =x:V2͟+kdZfbpcԥǺɰϮ*B[.n2b?1)p7WubN>dD<~*^5}~. ¯klR W;U5KT7àj~Ԫy1l8zG&Q 4: z73 }h@, Gs;tOu0R^ÝQaNtl)nna7s[\i`Ƈ>Tv6N798ή=Wi4R8p6KeS=u8a[N@MP"Z#X /3U7?~:I+Ÿ' 92 {H>y e,̄#=Upsrbyݧ030bɴU@+8oPߊ []= 08)ru+Tb-:Z"3,yM$cMfLfme+BȬ \SN'.?qizkhlqlX:P_N݈x<Y_6y`ElbI(gv31qj[z|K}g2ԴbR◗Nmsl?k}JaT -Qf~s:Vπ"j[/ݐxkryD̓he<տ҇GVl|KuaQ˹|@}C!޸_`?U?JuI(fUH@:A_gpREMx W2= &Sz]v*E 1gq,WSyôKD_ 4^=eImc|YuM5#ۢL@32wnЀmO/;&+] I n gѳA:,4''ObQ1I??G |p;$hL 2 ;<4҆S㳈Luy?CEjVV5 E'A2Y{C~z|;^-1=K'd?SbI?m@0Q|toQ]>߱NGծo/zcF Zόح9cL4O Kzd[o=mS>{;ENP򯠄)9dMi[^2لWpk[Q@$룐Ϗ.oyD?C9ArCc=~KH278>|fڇΎHct/&t^f]Bo3*4MW3@Vb#783m MbDڑ}`WCr}f2uu"`]„^ Yy|iIi-8(w6U1@t&.eIK^gI!aGqԾD8 7)=0JM$aRލ9,U18Lgr[E&jxӊ(솶6|bq2m}MNQ5ĆF,pUU$BN^PI}voqNSz`!aRE\͔)`%h[yY?]NnlJ_ _jM@0 VLvw~{,b^CTWBIHu64 jLFW7bAA"Z 4V C79 jJ7oĺQP3&*"mнz T;塣+iⷪjFM J۱:^2tqG0b3A+ΘWa՘〢k_X3t)H#®ž8$}d <݂ /)mˌ *3vVYQّ*wdy7@ŌM."ĞF,'g۫S:C7_IoSpWQ -$̻n|V"RZ[H;ǹk[:\ ̓]<^EmdUw>m0Zm\{>m%F -]lRbz|lV!"n!y:Feχc|T-0,42tEs’#E/ZD\32  '] WTzY!;ISUٯkFUySG28 618b9+Voq\γJZ3nhP_m*ƷLdPYρܚ]4bN7jZ)nu=P壹bawd<>g,2'pfi DСP>kD t5I@E6MD14"@az{;w]oZ7HI,3ڱHUJ~  _t`HM4VdZpr4UikpwN&RHc, _=Mwu+2.FE8F-ad,7t8hv;\hˢ+X!83ñʑdCډvlįnn(d֛x"s X"?cQg_z"D7~ $h6U8B'q܊Ș/>vÔrF$%ޗ$@aS%C`5[l{b*;gaE'kl'_YhґmHoCѻݶ;f0vמr@rG{T/+ěiiF.P F ([K&ҏ0bȴUim\ZJJ15vaU?yPqvRڵ*VD~Qs^xhRu$rUaStPDZug }wW8e9yn1:`9 -S[zY#<~M2%N?z7y-wD"qg"MU~(=(nEfn'(?H%p+{t Š j,*_zwHJo~A pb_ ׫OQT* +-\쾑yH`h_ P/!Wy;Q3mᙧa1f^aG{[fOi=:*A8zLҜiw"l % o5[l''kel֕mt $ATKZy~ATD*E1E \S ;ҏL;wY5z: y3D Nfi] E^N ſm]npx@*n6 `ކ%Y $SDH %.7۾+Eo$%>Wݪ 5p#9A2VgӸk{+}PG.(KX"[D浍 7sɷIײ<"tLOY V>(9gB-Z/ OSm mTomŲ<5f΄z Iqэ%wυtH,JŖ[זyB19Cip"฼Q-9Aͬ{IyNqnȚoeN\]-! $jinA%L]zv1lDZF7)RNV7v,5(hhh:7D A@N%0M$]$-\eGdp2q+T4v lh`([o5J^'/y=^8<$g,ڵ"fph*7f{Nk XY`)@\\&ƌ^I׼aj,(;:&k'*VFk;qV^Wo*KϹ|By_2C\.$iE5[V&OfƂA c[<ݠ,y;)!^л!5@8S^+^m$~ͻ%F0@|1uH )4ᇐmtƟ,)48|ž [QT SoY$fLB- BMSvq@-VNJ=ōJrJO8~< 2)bo}I26P"3ʼjqKwX׷Ffֳj9UZfͪ+b:YKQգ v.`Y(]ik-,|hBq[W̓B7X7RnV]l"1p_9~{i~W6C1Ko5 (n~ & ʹ{5)|'-`gOwUVuE'"Ȕk ]@x;j!glu`b[hPyQ76OI bc[,\oXjzJiOi..e SdiFXxhcY2dyހ,GDYBlA))b?]"O0xBgO)(SYreww[R}H/d?8<^ 3(gr˲"!%@t+DFЎ:AgjY&诿]/km ޣ9>ϒXVÌzJ&;#HX 0a=AJ@[>F_/ܪ6!U2n>?(ɸIt~ݠc):v]K+٢Ej<JEvk|ۻaj6I&L.!?4E$mOm}w I#G ,"cNI̳72`ΝINmp5 ,N+P5ק$<6X0:RE0N;Yla;T{w|V8T0-u>Af$Ze6{KHV7]QP7cY'L܂USNf̎!5Wc%g?$$aI q V. PJb[$&6==sWJ gFWC 5 _k8#w/UO߽KRj-%I4=IrG͔$k4@Hy6_<5i6@=Ӗn'ӳ˥<0mU_SWJ}Vg.Z</$F߬Dݝi&d]YHp)5TfWb[Cm21$RȡLdpq=38Mb@ufDcyjx;L+zL1 j=b*~RLx 벙9N[؊Ӭ[K8LYj %JBYSsiI=;d LY77-4&ӯ2b&Kr=lꟕ>t֚ zvFI,j[@CD0A#zIDd6o%hI? Wdy|oL NJl p/v&γJ{1|zl5P?~~õˀN3.@tj5@6!D 1T'UH(o|KFFf@M KN8M@V zgIF!8~$?#һM `~%WF2Gp>Y\'9^=mJdR3󐻙cj/Ԛy"9Ql]9x;jl;3dW}{TżQ${?HpX;\͊__ 3G$ށ 22%{8gbJ.}[jICnq ]ۯEU[/.{aTWMLt(@Ş?fķ߉0'X6 y{K(ud6ǚV]Lm-*VYh:|eD8[K7wj:g7VRqN3! ͦ?8m+=={ukbT"`6ɿX#t%`OIȬ:nHV+8T8tt8 ng]m;W2u$M4W'..:yB\?JH=d+T0$n<%F`,zF7wyz 1  D=DU4BJ1tZb{A@rlU]%䟋o8v~VX{mŨGʂx3;@IL>@YR nbų v,eClp?sbe 2MJdහ{Ȋhқ nS'P$dnYU. .+iGmNEwݎ:w<s*:6 ^ `F& cilJS_gqTG3(Uc T;FL w@.>M{P\]¤G]y|Ar]Ek Eн7 T"쬚Oy셹G#2FZv7\SC_\hF*.-]Iٖ02;AU54>@0;oh: F"e }rۉLHtv{{AGF)t}\5G-5"ӷ'7J#3⡻A{NwPzN|iSU48ۛ򄉅sC3}oS-_7Y{\Wĝ'u]r\{h-S[9V@*dОi/ሾ ۝\ ͚rtn|V>.0vT<bpn WcnK6vƶ 34~S$ SҥAv/9$s)G2h6q>MɅ3xt,y \=dȯFXo(KG(QsKe2tb7<}/! اėaGJ3`qHB@ZĶe)ڭgAis;r~%I]nDV*ZD8[Cs<+D[&v(,P(7wĞu#e+[\'0d[4B; &HPDoR \J9A-jg4W'heEYWSNlQ"/64#.bpme`q4F%!B9] Dm#$P@Iu5@|rf^V~ߜT/At|n٢Pu$p:o 5|%'8[\E 0|v@XہG8Ήqi`iٴ]4{=W]i0M`0G1۪;3d^,¸~VnSTt-'~#OlI3LpwHS'1_*sy1}53:g<9[N]jBA \.}سJgx=?T*8;c.|fE8A|Ga`0/?䑊sӳdA<>du>n2Gȫމdǜ|"UVao+^8>qTl+(yF_1@`1u^r;{j-y*#-1y0F?[;SE4FlQo#RlU-W3lY>{د~d3p(t6yB%qX,8īH2Hԓveki^6&N44YM4OvՏ&QRO"ݍDө>}8Z(hXaTy1o$F_ߑZllv 3cVVS ?$Ug~j{Ԝ 1DH6}"Z:LgiǺ?r僔!꫐Ƴ549tP얏ɼZZ`74-B X*tBbBiwt2co=Ɛ"1P;2s#/4ƌג3pW MlގF/_ IVámͶX-%jnb ; =hh~rBy +N6e BePx#\JEɥGi#@$Y@YWn\Y˧-1Ɔ`[ዪիd]͓ ]7׌=W1aPC7ZX|@U+_w~xYR.]j6|ir@xxŭ5u6fJP6PDi$ T* a? :R$IL/ =(k lkuro쏂zNT2P-H1 iզCp$0,Ƀʢ\S_a&9rsȀDF&ŠBo2h%C$갘 w{ 2nR|;,}¾@L[{uL,@;Wy$y38o#/y)OXߒ(HtˢgeA")4j uCI&>~ͰJ%AL3pu4Ǐ3焖+9x{|д])(FþlANjBRHx6g$1j|%Fum6w!HЄBLecDUuKT$.mڡWwAXu*\. !xkm􁟪+&9>40poP,%Eߝ)% \6z@jXGY3*!oz&j\>%w<׌Je~~MJ;fGNAJ,Z]0UW"M"êMz:}4*D+ID9YI;*_c6K:۲-+Rqxj=nڞ,M{zb6 ^طN܅ZTsЏd(ZЀ$(D[J{aL#Ɗu$U_I J{Wճ 7N_mdOnY `l3x ʕ&Yka45:;+,VcSNƓ+O5Ȗ~Jd 9w|zg4ikS#t"vQZ%)cy;Hc\a2s1Q%TEN(Wʘ9AϾ륏P*k!=6-5+KM|A  Mft|^0C3f%x,N&2BǯU4MԦ&7*jsȺcSQx֬ƷoR2Y}tjUdYvMd* LҾ'1Cᇈ.pC,~De('w͎8[y* V $9Hnby *`:7Ƣס]#)]hήT\1>S7Kcr9,ğ F?u9T+V]D;ЄႪ:nU\,;A xdPPpqA,H^ Tv@`۳OWD9Axh&IdD8n]Ly8hr^\+ (#;ƪg{(?} x-sd40eԇN}C4F#Hzx%-mex$.3PEgx^=BzpBUQJMZꤸ8F|6JQWxE,諵M <EKϑhQis&I;?ЭAtKz*RS8\P? NJ&pKO1h;e~́Zj{¥S]uR4wR@pʍԃsHJ`iPHL3N,yBzkNM0\}NI37I5rrqX.5Ӯ)V Rf<1^p @8c*siD}cX8@0@ˤ7 "Űlj| 2.wS18f~`Jm3k*U S uO11Nb: 9ǂCV 2 \1ꜭV Z̯†RSc=Ǘdz'ɎJu & HVaj`GO6hGCCS'Y4ƍ-9]Bn52IHX|PͳҜOIQb觧 ^nB )%qm^Z:@7:b2ҌqO,ՆsdJtFԗMV^;]T-^ AF-|q6Y]ob8Y_ g1nzWVFZ--!3 .v%=N2* nX`0W;c50c!C#Iޅ Yb@h$:E #)3WM,I䵸XRq>OnBP&9, yuɦMD/`EKb-HQjz%mң }Q~QJ"(G#ov׍jU> 8> RJvoMmvRbE@!{DͨS;V,JQv:5LSÊtaa G! MCё2>cNre}K^:.F 9ZW4`kwiAwzuUkcm*9,`]d[kѿ;fƟbIet&9h{Э-Qfgk( 8s kހ4hK *9HK⓪sdzX 2–bUV{DH13@dž8#k ®}(hҺr:A Y@d'Cd@`bl(Q]W7[tEswkW$ 5^wjX[=b HA7WIsكbQ{V ߰Gj[GGF]:ZI kTQjT9TDp Q!-w Q+_8tP;[_! `yPqB#PU~0DY`Xe]pG0t&a7U1j;uK#.8F`Ǻ=eY (D > Dx~JU`u6:"-\Gy]S/Yo^IS/@>1];*i,Jnj*3v?"Pd'z4!sЃL Q2vS`Wk!T2Ήza}VΚ= _j 6fLވ[Y3IS!ט 8tmdQ(0/|B): \be9 l ;Cd%.5׷.lI8-+Y  W2T zTt/Y.KjPVt1Mƒ]D/P;^yu>ŚKjNzC 9kS3G]Yr='JzZp]-z_u7xA@-?xd^vVɒlټd<ϒ==ftHN:Q9ۥ!-WtGA*\bv7-H|7+89PRU[ %bRZ"k1a\E:܅.YgNp&W[m0 ݪw200SV)piz[hFw|vvUVFt\gb-kd&Oꝛ/x`oYAL-[Vq1h>T&k;O|k1/ظ랱8FYqC_r^[|0ZЏz,qDE M/{3X3\4{0{(^uj4Fͺn\I`9^t2^ V TK`@;ϮxٷL?FD`jXgJLJB;)Ua(xpۉŃ{3JԁX"{i&ea@9pre"eSrޯ)x*^37UW q4ZrRO,ȅky%qv-s@ SlIv=C6ϝ*L5Uj_PYUnx8T$wg1v !pe5f,9#K՘g2w5cWB r299R9=Xz|hZjK!\1 n1pc2yƐEJZ.sQv#ݏfهk[MpPp*2~e0euDk*;j$ā(X飣FO~ Jwn5W'I*([v0W[-!M|pP!RyD"x=dF&+Ѭ`.vTۼMm~=~䤉.fbc$Ak4`F<] lA^Kj x ՞2ؗउs7O tqL~*uC@FEԒ_|=y\$L'z߽-=ԗpFD x6Ts3Eg@|>PwՁ]n{Y(.6Df2=nnX8QJ^ j2Ռo's8<~|@p6\lC=KO6*'M]XRTBRq+:S]IAL:*x+~٘|\#ό6Sa(:.<71GZB؀7>lyZ.4щ~x^?\Ж(%x~z37 C}u ]k$HC2q|4Ԁ0B/4"pcL੄~^jhbmvܧ2Y8W]_`bBg&4Ϛgm-mG[3򻥜wqіU*Z@N^k-ŒJK|w&k?c_#&bՌ v`:jÒnl|BÔ v9?FsәlMJge U'5"d8gM\1E3|OAjDqG+%+Pt?؅ 4?hxb_4w(.g awȰ硝g^J#5Eeǵ> P]&ُjI:rM̄CB=KVpI 1E4$7s @ԅſ_9k67@?ϸw)wdE)2 ޙT{0W'܍|h.\*(6T 8O)JW?V%pʹk{ ){:yQ—M- s+yW9=֖= 9t 6JϓƯʲCK(hH{9(*툗YrsfO lvZ٤k5Q<~!wj3󒬒)``FwA1%Uf㥶&L^wM\ =/=xhTԮ}^pa;2rQK=%wG}KIwcth+#Z%s:GDU1=ʛ*vS;2,*9O1tLi17]QZ KW,&*Pf}@]3K+VP'T}PfnvAOM.V',z-,th-bO:jiy jO7Hd yc}"]E\a1"vatJ\e){ @>mNk<=Dv4NEux&ꂅzস,R~J"l.K-Zfe]\"D9*oqHf :2ZӗTaY%fťp#SA ؑ>NoUa knxCv -*kKp<гmAx5dP[!0Y^ b7SNU7.nX2±EB >Ph}-Og'JS{^:31W|Or)89(svTG&m}GT#?,",}?>{6,H3GYlwq_"VSk )w1|N2D<}RFHYM6+#?l­O#ǗO&KͬDTZ;=/©܅׳3| /uht i.ݻ JNSC1=A4t! DO8rO ˩8v\?'1.wd9F@9gS i&8:I@D&_fD4br<Z9sM[lL6CS5VEB3ƳN?>tYJD5kשf${`.g{HL2~Ÿ[l޾7fhPn FBjeCЮ!z_~֫ VE .6޿8Y5k؂x`1ÐXx$EnC-krҐjZaɑs%C\\ш9bqaQ(dL. [դ^3 52i1BxAi 5@ /+Bj7&o?G1&;MKT%.YsX^-"Π-p _mЛwBxohXf?M>VW6H~.xl'I&g.Q]'At:aJY @|s$"PZL\]MqR؀PwUUV|%[/[kPgP33!ۉXU+юH΀rCYZqqgjCݓ<Rf$NoR YR𷀱e11֨턿> {( tےkwF)|7=M;=1NnԂ9"5k{_3Cilڙw4@tBib^Uf@ 27(4&\(wP@XIPa[(*2\b%6qs c=uSV֨Od݄ۉP{ƸԕOmW*T.uk(Z}i}.. WvW=Lx@h-_*ې 3<}!8neCH._%oMϲxUѴ:?IwٽPJ(y\0Tv@{%vN_}o40a'| ݩ<&%&{jl S1ٺG|SԵ^If8YET< vSù1+H F T^Bd7%zHvQ(Yv~f@Ր.vH;P]RN7>Y5w 0b}}-K=a\w ]'FJ)W,ݭt B .Du>1㪈)X¸IS (1M9/ngKLSL`E2*QvFsNC `$PR-|Aapp*[Z.ܜ-&2jC@\)z$nDݙZdMw)?~iAJ(oTe`Ǒ|uN]2C0U%A Ԓ[KB?\Z.%?3eFMP)܄:d C.i=EE]i hq{Um -K2UMyCbƑkZQAcqqC_~ٚkgøetU y=A}E{j(`)i %]y7\<0;;[U^yo/"‰!*^ 4 I.7c%0Kggyihj֓Z30k ,`I*Sev}C+ΫNQ7Px†aB:jmLH4DKSg ͹m%.H;ՙ*Yy zebX#C:Н /\rp+SZż~X1 :]j:ʜD@\92Ϗ$;jI'Q*8lV"iYMp;ICVo?xM?v9AscxyA*&i:[DtBA4'5D^ Rjzv8ko}aO8}<8&U?/`]twqE7ߊUn^;B=3I UB:[@混0OHLC˕)!G0\Ul]&DԣR@ 8M׌0JTԿ;؟%q*" <ўݥ/!P gcf}m@)T73Nw5øL^1q&W\M;ucn &8zIV0w؟3T><83"K+.V!>#YMt(i wvR,l QGBBzcXUXzcWhpxQ/@4.~spc2.g&hQ}(GQZ6}kFZv9P.2wu7E~ߊA%q{O)2yr9Ua1r4ί_W(_/$ىy " 4. 1ty[V }U9桓7y`s'}6%K9n(OOSj* \Cg>_E\$XW02xmʽTM tiG\R]pI$5xJOl%|[[qx Mt@'rDG&:lExcPdw9+PyV=’piƙ,@w0skL&E*y?}wڧP*FdpۻX+]^DNeoH5v&{ *,ģJoc<h0jvc<@R=ς>G5[:u!{n*I[' sv- |kզ5hpVR2ً6Z4B{T}ȎJe+,KA#tq v/ZtJV4]@! \=M{shL*M2G<&U7>EeT[k%loK|Tu 51ͣ!ogz-}~ZR 6D:n$>h`KiH/Nlivj{#W1=MY׿Fݰ_se؄sNS7_q[l_Pg.pٝQ*A;Dr'K-Xh/e jOh/&Js ,IV+ Ty3s?Ye$.`2Rlyhl1Z*m` em pVE0V˞Z&;k;dHe}'55~oWz/4~tu-x6s C =S:vn*0˽0$qM7_Ճe>.km[]m4R6j }I ~6۪#k7 %?R8Qqʇ_ǔ mF"qFx.qG/l1DU'p,%{襚S(U9"[%D)qKdD5}'ƴ *"T~A(x]>m{c @sto6Xe6kH6 wG0QCԞl*lKxωPnk=߇/O4/=V񿞿k)de]՗Hr"%NϾ J?1ererx(+25έ4@, !N † ooJF zDf_IbdɃ"F$ŊmK~0:9TS 1l0K()uـ'/2ؘQsgs{t )r!f*_;wݚ6mԼbI6wھ3S?nA^W,GPsgD)mftˬP .4ckLP|A=}Zp1\"T(Ai7ؾ,'rmQRMz* (8m+P'ьQa5~z|MWD Z" K~6A.-]u~Z4 [LkV P ,6.LC\Q>]2Mw̤S9ɣfy=΃fKTN*@:#%0侅:ݣ-P I*\%qceܢ` 8ܛ(ghe?ԋmLo4+0ܼC]p3c01#$=ivc\lv?;ӅŠ}UhN#!C0Lǿ9zGGT}~|R&t2 z[ωʃE}<졤؛WRw\ٮdƬUO(Z5*[JgN^^+,`r&%PꕫK'R ON s2; &8)Jϲ\?SSZtWy⟷~FlpW2X`߸Fí:*=[Vh udڢb23Y5'S!-L8{7>f36HWA'$46.,x/yث\D!\@>?ӿw7rzXAUN(ݲ8$r7tsKa1+RJkts :Qn-*Dz뼚 S0ddm@_$MVtSU| :'5ȧD_ąd2j]Lר qpEF9xk@Bl\RjXގ+V/$Cy[Etڟ .L*ユ\z Y|_5EMչ{Jbu2rXـbk~5:_Tc9dIv4P\4Ku%$i[L`p2qnTLsNUJR[٘baϰp׆eUUw,MdocXwUU9~-7{l fJqMi "#RwJ~y6r@hT|ށnd ,]G6 ̱_[Uÿ`NWH-+ġw[SL^䩎]%xZL6̄Fmtb1k iop(|ݶ?0&}p^5/LG 8Jqg6'bkBUSE/aB:<܅N3M u|r0yYue(?ʚWO fΕ-kh ;hd""]aԔ Y<|yRӡh9-?ᦋ]EAsb=TKt n='PܰԨK[[儝6MjL3~}B&ax)V`K\ʅڡ>1Wf98Tm'߬9xtF/^Iԍh*aC$DQq%3enV]&d=A~a@w-%RzKXc-54"idPowS¾Ah ns\aV:+ VMwn:/W)L"oPɁUec 2jF23,<g!u/_JTОI-m)uwQUX ܾFrFQI _#)t+-|RNH jWbG;Sg.C=i(Tg35DMmUUvEUO;*JƯ5vL?p G)Y@%X;9 [Ɣ6-ds eU\{]۶ ׭#o$}?1S-;Piq%4QzI*~~ 2l.۷]2RMJaʼnsh5D-ՙ$Y8lҨaÉHSG WW̍;q N%c˒+BB甡E!NL 8oP9 )@WiPǟd I#h"D_Dg1c~c"6{f;0<9cGK8*'*Jo=[&*GPս8:J] .we =c}&|OwI GQfJ2JrЌRHU{[+I<, 'XwJZYS:^y[Sǚ_<}[kX 4␍iҲhUk?m G-MiГrf,'N5@8#ZGLE(snMIDiCR5Hl0nu*8@V+_u|pV >H-Ac) ,89Zg[SKmU^6|Au|匰Wj[XګbG?5 ֤+W0ɗ_v 9Mk)M{D[\&#'OI]'jquz׳;(' !kx Hːg#cjx~Tv7Y%Z4Qy3k_$$IgƳ.[d Hrb8@g:n "Aӯ&ʒwܨ:l1F@$2Ò #iRCnqF5ҁizjlxQ ķ{^@Kw6'K0#pDZ=A鮬ڌL =?fTʹ;GaV= |c6ؑt/xբO[i- ~@wp @~*fYw ET[&o#h`sD5WT*man:>z|dT8ԱEځd{оטYmI., aƕ"(`)˙Ʒ~Q19J\LQۯķNɩQ+2TJ4J^z-Kߠk$+eꈹfɐtc0k$]yYɒC zTkۂEw!^S1>w9ڪZ<`:Yy@-Й-^DňݡE$=ͣԴ)ۿFt_?[{Ř':tLif\ds*b=-jM eI}$Gg*1J"î~ Yd Mtp~{+o}/؄tuw&CJ."clρe5B/UtyWf|a|$ y@1C/UW4"/3!#1 }UFQ ^k|;x}6o@x8X=$=(|6x^ r( bDU>鯡uXa|mIF,"-tIC/o4!2ŢF6v=MU輑ifmőC)&G}}  (+Pb˫}T3( qC$Rl`~ioU2D@ N4% toKE}14HVD!c4{Tpj"|/&- x;`=At9^=]_)l*AA  _Udz`_h20y%`y YMESLifloX-ķLdhԸnJCGURq*) ; 2sΑvG{[c^HU:Ɨfpgiz1Y~;J̵|;v5HOUѧ(#L7 8w )+Q}ح# u\?}L%X3ՙ Uq.kck)T$7* nT8??`M7yz<%gtN9Pf@17.~^h׳)?N1ScBe ͷ-ޢƈ-=vla2AJMݦubh\gq9!]$;X$0#zJH!vzqxVd({*iݾnJ+MA~ߵDJ 6aOTuOIXWy{5Ps=_Nasys(ݒ4GwՕoͼ9Z2JUʪR'ҩqЁo!VF",uFc@_= 1")A}?7t YrgqjkS 4W:w Ru"ge֬Bn%Z&J]߾]4T}ʢ;IBRc50GdSm{/(UZ]9V{ˍ5tmz,KGn7^_nRsȲo3;L̈`ێ/Y%%!Nvg4 hCm jx l".2!bDpPscy%-h'^jDM|7ka7.~Ƨȓ5Eg=ׯi'5dM]3w^t%+ Ǧ#S\/0fr^W}uF"M,_t" Åi.TP&rZizn]{8#8fmq܆Kv{2˛F{| OEs!O>Aq" 4\Әi|GhrE|~c?6[`aG>Էie7uMyoz>`RxѸq7~Fv(ȔRxtr+/F߁*ך8`G !V z8fghJk_v=ڳ3EκA$n?J̶5d8 ,$yPrgt4ŕEA? [DwT2l2sqkes+uw~S9#Gs>=4ZX>ʼZWCV_˦8s9@@JnHIͻ_?d4u#ˀAkTRؐaw3L Wp [䧩W29>8x1 7Vx1%2e,7Cyu2cfi>߿ڄ^${B 6Kga;6m;eY>탠r`%˔m*6´+ qRQC5/1J59򚌝S1q&=Lޥӏ7QԪAJ]_XNAxm |(ڳs\I/Y#5} "Ҿ`j(?j1%%d979v Va=z6{ZB{v\[(pgr bNQڊ&pEBa' I ]*=..`<) f=?e7͵F ,T /W;㨑[Sط +nn 2ݔbE)H,bDF)o~

    Q<fE_XMqDT޷4Դbny =v|ADV*&7={/وm?amzW a/j:7oܧAe'a+"^Fpʗl-\M> ,5]>K{TC#0v1:/>k!0t24AŘlu}|Ө91/K.1ҿ(Si>۳U[$Ju( ֲ1Md B>]T۷txrq@ZqWؕu?^$.7 '4J($_ $Pwg{oݷ m>O#\`" 8IԋYdx#GHMR9@?WPjS,ٟc1K[6=! 0F"X5#m#EMDe5}9:WI K߾^=W{2PV \`N8D,IБv B;:P>]X4\.Ŷ?|ѭRWn ƚJ1D8@W"s@ 3 % sWH|hY\)F5l" jgYn˔?Z)٭W:vĢ8'CgQxws= @c9D`||UKG ל[gG}Z2j2'@S4l.U * *aB#Aʟ@d!ޢ\ג27|2uтX0Q5v+.Zoڴ|<.^"pM .:cx:&SPEeʢS$d.q@mXsđd(UßOL ~΂Y50)^6s^6P"~H9߽VTFH??TA*9Ň__< 3a#.QPi2(ԟ>TQ+Uz=-SZv;l6r UnKK ۾aY%]߫S$3߲rA&"GwZTw2V݌bopO-7UQxXc"lplˏfJ~DQE\s@!н,+z^g x?ŋ:`[4&t9${?nbs8g<\ה".e3- sH!ՉY5W5dL}cy~欃*z.|6yw^&flgz'SxP:}H i 9-Yvu?_xL΢ 0- P.핂dXtJFo76|fAp=*`āu׼"ABC4pBdqfȱn aG([˭*R *R_pxKG^; 6*e2 ,o jU1L_|%H1.L5j7}'㠴F%Cg9o[ڎuJq~>|%L*>Qh$9"pPkS~ vbƕzzzM#]::cIY5Eo Fֽߕ0p? Bꊫ$`'ٝ7z#"Ɵoek ۘ3:wFz{7o-;@Hq~Ể'ADN`MTejru zYv731lKրq$~ x0xfY:C% ncBм#jk}Iȡ_HgܮCd2JwbRicMt/5Q&suHu&Ht^>oBrQR3pc|q$H7^U7*តf2紫x+YZBOΨ F(Z0hGۇf0ǖy@I ĴyT Tng*vA͠3GaӾ4N I>(+,+ %<&<Ahzz4DL["S9+Ѱ"R y;Cb$V OrU.V+_3%2M;/CyI 7ħSIz 1JL!tc1K%"CM2|I-`Z`/)c@˖rBH*a_T:Tˈ{'!k؁V]%ٷgxJG7.VwL * ċJ.BS8>%  L°N)~t`йxe'^řZ˃?FjD'/SEHoZ0B}98D'< ̆ځ_G.Plv>W]~ r:-ށ WYH{;{j%n)w0E.}7Eһ G4y2ldzjrXd z ;x WI/+S_M|d@x]PvUV(H~vUHhUU蒓@7Lb%AxPi`0`BTڀT~j%_`f@YR ]sAE; +\{wD9HWh:t+\amڢ2R*zn~]t.@VqEZ~WolkWK:K PR.(ibE٥ Fb8-10]ލOI4܋c7ZWT.KQ c$xEh$%#Fs)$ݙƶ!piFF2RiQv{GXg2'>UA(iTL<ҹ5Ť{QPi -灡p˕1X/5K4QB"|¢tO:"6XP]CzP2~6%S!^\|@UԢ^!&C+(.[ODs]xzMzV#}u'j3ևw00:b~xȾ& aJ[(4)caE! @p YCry@Ҧ#Znj2yņ]ʮh.˦+5H7cVn?#nPl[9Gj%OaR$yQpw^2P=Gp]?1Mq:-Lf}?<JKBhƝDEj_YЌRi՜zYmjmP ̏h8;HFV1aX)֍]Mq3sHs첩^2ԭd%ů?'@XD7 Q/*x("{Nu9ԁj 9 /t@a9iw:AY-bS'q *a'k6Yhm6A:L]M l/*hT[xIix (~UhKQ *[㭘d w"P_^@eb*'`딲4#K׳F3X00K "tۇiIv,WA8G,lI ڂ"d' I +2W%@`{$+b,Ձb6=wa5X{'\ت״1iEĨZ1B%`閤 a2@3C0Y;x2f STPf`!3CAm JӀa JV^vOtK:gL>},7eWii\䰋gCXCR/F=u]۴(?t:V37y{Uwֻ_ԑȜ[i,i'b8, Tm0ܱLSV}|ij],ygm$hFbfV geD*I8/[~z*2ƺZ== IIbwըHZu XJ}uD*NFNUI5g`Е)Y|HmBz~k˞6 !m*"<2~+_¹enmp {$PF+M-zۑ/3刄lq7)T_t[z`.:`œ-ӿz¤y`GGFTvã8ϲ'Й^^_< Cž7qѲ{~h-C5^c=! z_uhAG9+PYW,:سߕMԦ8'0FHdfN83JC͉({(G( :ڢC1l6 ~9-/[$L!=4:(0! {DF\!ѫeĊT^pזaW$iIAJdrJpQJ:^pi9PQ]#kN>.\#E 06>H'S0Zx~K `]rMPuNP̢Tل!P?<3,̾GkyȽ]PNLJ~~T Q1,/l4uc39CͳhyCD01cnɹv;#٬ L(Wҭ';' 4 )бxfM>nQ2x(W:P~:A#㌖F°ɐ1l,|&u':a$W( T!OZ(>nzfBJ_@G/(|ߍYL:m³*Y[L#NT(<\cP5n|]QL[Lt'PV c -ժz;Lx0J5ٞ|RہB׉eec;T3$c˄و`]Cqw4..=]/?N~:qPBjGkAM*A1'Cil>r}Rn"),artU#+.4t+*9 n1ۺ|wog6Hźq*jqWH ׂM_j2e{!eU"U+=F\ك&+ !(]T£>ԋ-iOxe骜=3Pmm4ɣj`QFm]xN3bZ)sv_,b+g):Z+Ąj)tہ*»(li1=(#aGS eڈYhd$4oSܒK%Y0ߒع1V+ҊөOcfur l"Ke&8j*_OHJ'\(~G&> i7)JjnN (1o{0~PC }0t9*~(M>(g˨`T 䅼>c9l^"F;f&J҅+̙ 00Y;aMusG9\6hu~{MZ 2a98ރz:wn:8&R! P,ĖVzz"ܢD_>q#CH*"qdϻ#q/u(gzT6TE{3 UN)!7[, +!Op.W˒;9x0_P+ _Vmrs]pIK|OgS.]5*{ zl>E'~X L ·EXIl-CC:~LG-nz$ܟI[G ŕF7u :6Pi%j*^pz"sʷŕί O R1T ܴE:ߏ\+5UT>ZIMOͿ:3d҂UT %Ch̀J2s|Ÿ_t0B`MLXx4`fr>F뽭0H~tۈI 4쇽◎&@ e xc mDl;KQ m< ܷK|z+p 72tkWƵdL?X+@&>Yi6G!טh\U۰RZ/t72Iz'A͆@?*[O}R3, ` \'9:Jj{U Y}o)+(PGW41U;9) < sɻOK$0׳W}L-rF,x2$l EWV/&)%c9F]A$M"kj!M=(=z1]]9kZz-.%葛9KQ`}v(%+ pOTpT1&dfX_wµ/ ۝d@ot`Myw& Tc$da+_-7Hg|BcDn S>o=(::J6= mCUo$*ay _5ɩwɤOox0C!6m(Vmc+ɮ?իFJ!O#~2F67׵[.Y  {~l~=PxЩE)bj>]4zո4;XiE*|[ r̨տWHjh '9(u::#ەJrfkeEgJ7gK51RvͲ .'PKu7H"c]ez!tOLv#I3օ̂`Lm߾@ZbŃAS_jضs:_xqk5],7t+}| XE۴fk.PY}3{;>kOD}w?eqBg3F#[VIRF~-VaG}+sH:u_Ac"X56ݾ`?%@b F~r1R{?Lj'sBJnZl\_thaU=:US+1\ (xVVY'v=El_a'?*ьZ%YWvwF脝VF}nKs[B l3צpJxv w0^XʿCR|O7&*@Zv mqXI#I8yQ8V&E+x9/-{'T*D[fcȂ=-Yrof%]'x+t&] &;A}rbAfB_Rr u .Sr:dO?X鐌gKկ*'(yaNECbcTq))chG0o!rrR UsX]-eF^ԬYscQB҈}VZCK op? .3DnbXsvk>9#cqr&Ji#vAY:9tĩОl_.Rg (gO/jvz ϜCl|>c.,"gjL \wřt!mvz`ígSn J<"reϧ+jֺ}+) 5GQ3K J]Em^b),(^ɉzYEtGK1#\?PІdRgj+)Fn>t4]᳗\rh+Qn?GFU2nu|z[.β58!Ddꈽ4[rcXZ.lLv&GXD?C}8ЀH#8U1_W#]ThܬC%ulfYr!03eUi@OEbA4s.?CgܱbZ.͈Ef6MHKV0l |ey9<'9=H%J"nL°mgn0 yo\&) .WcIAv(1.ٲ1Hgp/vYiT+ŽyRZ؟Ttٖ+pT]GxRᅨ^\_M%Cl_mY6DYԴ{xSN]o%^6PCƙuk5ģwη=c>$ A7dp6I!3R+D[MF*yp6 l]&Iwy:\ \'鎃M2 ²ŵ=('Ch.4T~{&͟*ޜPFSNYG})nIԌ֒$f~v%|"K?剀HǦ2n㮠ZswuЍ3"GQ_4(2<ߛ!4R/0RȡM*lO6R ^C3D!ߐ{rga{M_ n.`[DRQdǨ&2Kä(dE>C. {T mL#u])Bj@=OFRux9va"ul~d] Y(M Y >$+R Wi(w kA+ֱ&KڍjG<[6Jcrja]tI7yHnTl,'+tbDV:x,,v16kԅw,*0 A\JBE+ͯo S1;SdS vjV٢Ń-ZN}%nqкG6j09ֈ#| H Fe3y 2#㋀!џ![~P?/%@$SKk*'k:Ari7_ywn["p Jy7$SyNrv)v 5fMwɋwlOԒ5_Hk WB׆rk+Ҵcrpo x<|.ٻX9L÷xvF6VG|oE@uIiU ( TPa)ogxL7%bɍZ.3mT9 gKU%G>@(FD-\o9n߭0´蚈Nj%Α@YI;++_T 6i9cVlri 'RԐNfI>({A&<7銵FȮZ) D!~P"+T9"8n.>c5SK?ffq_$l;^an%zMudɾFq^oݡԘ"G1Z-D?m1o:J$>=jK֏3Qy4JgeLxU2uiXˮkCzr7ҤU"oȸ`Ł_U(*"Dl7.ȋ$=[Z|+[@*8w*_,G*cЭws_}CW4ki^ 21!z'v'8'([uywg/Gռ0t{N{^肒D|@ |'y@VvJG Ϟm1`،U\dϷv|GUi Gwqx:"ܯcS*"Eqfju<cSSU4yNw27ɾd(cߵsGel>h/{9؏4Fk0i L݌g~j9 ]#tvV1F,&u >g Io}Q6v҅y*TZ @7Gή${[2B}ĩM񿅳$޴զBjIRt t/Mf2@xo q/#ؾ\tCZNX|`<06vr:|Zt}g7f͎ 3 -58QUXҾ.+7 ȧ-R@`6Iƚy=Px+73fS,C{99 CQ w^Ԗؖo3}"։?L ^ bH)&퇑&n}"q}Miį8N >m TG.!8]Ăªve`z#¡5_Mk7.2 \uwxdNR!j5r"ƪsEv@DJVa o71;zHJgYYʘF W5VL5wfShUcU}(_} TW C8D5kl`5;.pfk;* 2w!;\O燽aoU0%Ң dN4Sv9̴a`5= Dc2X+;E 9[{ ΃}Q^]-Ù̌=5)ch$12I׷ښUX$: puU{>[sƻBB[ňgWIhQeu/H0:D]7ayc1Nc +ȜmPim{c'}[p(%KIG\6jYy||>S/hpvX)M[^~#?G5"qhDn&`yT amSY?c<.;qWT#CRP׻Ǡ䑠_pUc6dCO, @5⁙ihOg78bDPGgw%gkkkғ_M#o b=Әw6mW,ٷx/` ӈ:VVު מRv)Auat|VG*: K(gt}Y*h)gߊ4L|/ R_9u[6(Tfh(A!N}Q48~ϋmcpB0fG_w-V f0ǿ]E.]B\..\ǴSV||$bQؑu^&?tv!*-cb *-[ҋO*+",o.]KI"ݤe*9T('7 6դI1#7.8[;j)L>h_%q8c̵z,fj<<ǕLf3F.疑 XXTDcmE0bk]4 l󁅔3MFsAx9Ѫ2Cw-Є ~'>vEhp`Jؗ xU$ln^h&Flw;e{AN)OrN _"I;^R.CEޟ&yk̩ +8:#2^EX)(U\2d9'xcAKӥCM*9APhKM &8ɶ( _JmE?~KaѾ(jdbU{QyfxJտ8lL[!ujYXTA.^{d ΥcT0RiA:Kz KPͯqO@^Q|dx &%p¯LZt3gm8`Eyo~6sͶ: yA;;;"o|0vIi 5(^q ̱<ĖZIٔh An R Ԉ*.c(yVY0L L]br F=g)(C&J@u1rtM JW/G8J{BAS)eDY#W-飯"U=@mTBnXANϧ?>x8 ffV]ss֚3icRk-{vE3\|Gaw^= p4HC]hK3jNC;hQV[{S2C?i*k"2h5/ Nj:oP'3h^dΤbX:9$טJqxcD/.UCZ ҜQ_)%NֆbF֘ uId.P)"% (Twp vjAm^@9e;`!?rO%F>R t߮A9_[eSA:`̈32kgi5<%̈́ )*䧢f @0mmih@uL-ú`in}] }xe6B u+AK*RTr3,:y~$}X)mˁ[~77oFbBpؿmJI$Ce~ZoPT ps}p͐պӛP&687;eoM%uC0<>@coms摟<ՍHc.pp(]O+J#TRX:L]h_^٦gő '|)vq$50y>)%=⧭SL[g^̈E-i^%!+c\?mpkt_Gyyߩ{@^LR/G>f㍄^leҎ L/>%ak fÓDO=|ЃFy q.lȧ;+_ ^z^. r\@#mRW7jtd_q!ȟ7o4l{{&d Fx^leO=o5FF3ۅ!{VtH=z g쇚hTFЋZ.0Z)=,#MLH䡅a`eIBă? }^g& I0 CB&`U8˴s1cH( 罟?P4](/kd-k[|y` A5 S=$78?[ǖ_&TD{A`&On8ÓK|ʐtC47 Z!   zҔUǕ*a4~UPVl'mO]R!M%o$8DЩYpu ! N5k )艕-X g?9ʁcw1sO`И&=l wA]%'1\(Q Ml`S3Z1!t_~>4Cwz3]UU/ !TCJB*񒹲33Pc_,tqB1  1n);cmwkZ},J7n9Ӄ5GC$iСU KPUTIYDZs fΥ[4uƸ q==͒ ;XIeK[U]nDD,Dsz'sG(HdB4z6mR$2N gw+w{7@z~8@ė[Jsl>VV?*$d2-ps_P7qA׮7tJ1B+oX\֨TT*(#ɻ2jX|?+`( ԕꁱcXy?Xl:(ۃ9έ'Ij~dʈZQ">9V\wbgp!Ie22R,F!Vsj=Q<("&u[)$*>^aJvcAulX<]XLvs>Os*0^w{--W%C̩Sg30TuGˉUe"ηPNH]J=f1.0w}ݣ!X9~fw`B1 d1jl{3F7:o;OwF[7M0MHc1:h̛6/e tAf~j 6,i@ Vϗ ʏeTJfL-KWjͽ\@~>k< 0M^>k{ wbgJXsW<-GC;I-?TukEu}\~T :nz$Bh4Rzn]R~7)MKn+zɴԀ3*Yb2[ExsQg Ʀvy5&Ȳ(qy{27Z ր^Q`}f8"Յ&ߛZ Ļ|9#͘d;++⩈?+1 qQcB$A3R紘l(~7[ijm׍(Z@~E,\9{˴ڤ&InA9kh#+ek>8D !J9R50 <Ѽo *]|w*R0s6̃Oռ,2 %-<`p8k$(aHu(&5+͢'C߇Nc^'2I<[SKtE#ɰBR"3ј"1UnhJ^|RsWemR^aC&hx2h~m1KUB_[ni<SnDN*ta}GN^a_YZ3ڷxlb2 &kL?aOpFh?]_pm( .bWv} 7'őzkܧs̥QN-3%Lm2gJZ6QpH{U0rzM;ҘC0HAdZV%m3Ew ߽D tfƕ,mvP?731oȂ i_ ht=k?'2ؠu-+ eN+ɱrP'W7)?L.#d Euj ڵ -6<3$Ν.\kc/!6PZ?PCÙ̀@Z^?S*T*F5NrzL >$\O"dgWC6kVx(jdxˋ$S]"KXB`x9w4ͧIC=Xg|°%S|oUT$-kmEmvIav=eѷA.:ofuNN$ vO7&uql(~ΉD6tn)eA\Zďu;hGH+ٕi:zɽ(Y?r-fI-HӜl?]D}WQ}" =4=GAL Fzxݠe wK9x؈@.һ,}-H%QWPby-٨ C<8NJb lm-F2;0¦x>8:c,Ƃ$vJЋ-6Ȅ7tF *S7HxG&6P?:5*ypۛIQ`ΑV ߟ9 zД/4h{-@Ƿ|"l͇ՋFrGqGF=Dn7M'6.yP'S= .k`1GMu͛;W/꽗(d$R -GEp{sIh_+?ضTo[o?K6vUo[|h*_%&g~LV,.%4ƺ*qY%uUzDL=Ldbb\m:aXd+r=PjC+|;X*S2Vyf1.5qUJz;T!c?uc]n"#|:eǍ.5wRrY7%UE) G%%mk) (o,Mq%: vΒOe C{$^6< w"DhH~w_P)I?r eOsр՘-jD9W2rLP>) XCѾ`hVsu[ᇰDs >nK13ٟRAW>qȠ0T>eokKq $5}]dL иKA%#x,T? մk-N8>\ؠax@1$Ǒ koWy"*lyCnZp?>î@*&k2oГZ3^Xkp6>uڜ1琨._o/ǧpK\CN)}"_qWdoXgkg_iXS%ƅx9@ȇSs`}'TU@rh9 Xn yK.4h:Z8VpߣYAu~-@'80Xi~nǖcJQ"lڂÿg㍇XtE;3)Ar-0\ןM't}I3S7p0)ڋ(|DǽH!=f ; [Z%҃ KT^+**ımX YcZ#k+,ahlסd6}=,X{cU?"D01򣛈 T|h!uѐ5UO:kHYlJk3N^&^2[v:4vo~4ѵLN,RfvB&Yb>[\;8ÖU#LfMmK?֖,"V?sw)TK0@SY7rQ~?pFD\Iп`IچG:)G`ñXQ=)M)NnEy|OJST_!WVq=%=UV͈s(9H R@EیJtהIYIb;D(rMhuiZL#CDܛμgdFh4ɃT CIx>-JLػ_8 Uw:jW̠tG9=v9J]+9r]R5 ݩGۣ`k171Z2KfǠ`mHmHɛ` ` _ic`$/[pQu;ȻRhEVK];`nHʍf\q^Byk`.$f" 5$ G;PJ@MuS5@p ?tAH`Ycґzh9x^)gV-c,dKk^:T\&6R{}7ژ \CmXEn֝m sDa# ![+/4s>EBD m ׋wZ۞!Q1uG5bg2. ('byCr&c_`6#Zgs-*lk9?ҲCsSy ݐHֵ !7HΝNȷ[։,FnB#dj\hE7oWW ʻ[_̒j %H;b3(D^E tWMrzhJVq4E-S|yVt/TI%DZ O-c"- HXHQ!O}Se+_-9f&Pi戀;zUv[A"&$ F Ս`pF[8C͹fHeT&ncM4\guV '^@!7N1s* ֙6x;V&{"3VnQy/? 7_v iFp r YM (8D}P`%h9U48@uA(ɶ3#BOm,R ^ .vt;Dz0WiT\?n4XeFջdOv48[r3V}H\jiLۀz6:(ZG'| 7y 6/"&ib9"IBbֱXw&z@|rm LmP{ ;&2 u#ç/W9Jς*ym)h{9vR>T!Ju)jm}QW,KZnlDgEb.&ڹDBnmmV_˱BlZS2 x8d>S79Rw=q_܆3- ^t |񧨆KGjN_o a4 }1"as;# sHR'U ?abZ `[813ւNfpR6Ng&Phrf:8x= ӭ\ q]ݒ+k(F[6U, ̣}"[8Soi&*tEG^To*Ex~ZO&(m4|[wT!{/دӺFx Iel>AA}V5^0B ׍ A//u:O+\$/bO9CK@ \w9!?M-ƩYM5"K L#d{TOyzK:&Q^\-`%nд2ژ坔lR0a;(jrGUǣX{/#&L׼* 'z5}cw Xԓb<4]$mI$.ϣC:?oQW11Aex`˲]%aj" SҤZ , J)g"zGJfqVyFOFl1ݟր_ke[< Y17U}G-RNH`Ն{O42OLHL~HwGPU:J`\uD{7 E*1!0~XP=^jzٺx\ ssH/xfQAzwͥnYD@]wt(׭eP"SArh zh{QoS_lpTLo ́(ڣWA|ӧB'spZbKN3.Sē3S9lXw2ݞ"'A]G{0x Sac W#'>x%H9n~o X$On ~i 8>auh%W#5Oc&.d&8|*ʀvP6G( NՆ^s58)@V V*%?_(Nb.JdHmqY۔Bmp?>wo,X3rM]5pUu$]'|[b1o}S^_mv1HK|v}8_ƙ{eLU{P"k &ūBxq`_vu?RZwr!6L׳q`te~VJ șS)OXss̨s 7 _9)(Iu9C<r|XL KY [GRy,C]#.Ij5D|Pd^;g},$0a ́{ \iVxp? |R.\;:ْxѿ }﵏mjsv1j)cuX|8K'9SDRJaQOr*A ~VRtݾʕˆ$"N}0 L5<XhZ zbJ|3ix' A\IcV&u)jYAFtNWQڥn^c B"@sJod D0~ xFxlKtC_-r L5dm8[T맼pj {@}9ԟr7TX'Z>I @g#ܧ; қIiYUyXh\-6'Y>4*Q v jn|"+F9 [؎ /g/OH"oPS]P`bmο>neUeĸF)upՐ?oy2[.X^2\1)Dll! $Y=-̵A*X 91+Wk+#fzўdݢxa( B *qk-ޏҋK>9z(Oa#=}5,gtbƖ˖12Z+Cŀ}(<4CSr }^J(/0XУL)U7g Av(4`=ɵi#兾nz "eV1\j36*+zq3_t_!pHUV\Rц!|xWާV Pщk"T-hPrѨMp@iiuRdeMG۝wDMߖ6@sq<)ne`EkM|8:@YO2(voY<`qe\u?/{g3-*Y{[G/˃dy,,'Zz _RC煥2HF(Bz)|091ݳ@/OmC~~r/h;+ܧ$K-?hYڕ9COWk_g`uB}g)xj)x>F }6˚>!L;RiͶF @z*-z别VL@%N!Z|t/M2 X! PR%r⸶VІ5|ȈZ۝ӖFNJXW750mSN:aZ:ZڭvGi}WƬۭk 812M8L*aU d-:lTp)ҹ]'|s@h yl78GZE~2KO Jg5HW 8cJ1uѨFa +Ml/hَyW6W<ۮ „·#ʦFo:b'rPD˺ᙸi V٢8/|ZD{#5EkV]E #V, mpH;|FWTrǪM)wZP Fh;{Qx2Vpnő|ZCZE~=tNw.pLAھGwApCn7,3V ]4Q7z]cjɣ>i1BB<|!#NP'`u*!dD'#K5` zN Jrͅ,mgQIw\6~]i,tum_mhlҽli;,7O[!+/?N.vf\y{xøi> Ts;UڍT^Ċ,4^EDUQm\QxrŐFw01Ͱ9;W8)WR6J0IDmo&K[Ɓc9(-ܮ,)] LS$VNO>XC$hgl n2Grrcݮ/P}$f /SwCBԙ}vr(D*0R1 caI^h`B%I}M10VH +?/ gHuIKa%+Dpy{ }Dr`v{~G#|٠4LOU: 2 8v[! %"ִ^ |.m!ɒ5U)\XʇNT~Z64W>Pi#]a,4ap;r0PߊX 59pEM.nq[iKݳX_?<.S"87ت$ǻF[Lt$o*19R&>.%'-[Q \/$*/[:VBᦫm^DgmQƣ#vIx5CoI; bpHMqzhF &I$M^x8Ou'(!X w0~'-Pq{O, 56)ڗFgR1@}&W/1J!܆}{5P=8J 6:RFmypAS(+?C4 >06*~\nr/`r267}gOul#aEh IM͂~yewrYDĝ5 M*)-c2ƒ@ueǰVW;Id@e& Fu"g}|wX|VTmI[6p-bE;cn0#BNgXTJ@fI^+Cˉ9/D?n`4-[ %[P/Y=v#*~t' :=4syvu@'a ӚqXfldGZK4܆F@H?>ˊZ?c<tG^##?R/HăQOG oB̶cuD~(J_,Hu<{y2uDX#qU!BSe+TH4Ipͩi &zGho0 Y34"nn4۔q]iY8!^|1k{}Fi9IBAyne''ͯP Y<{X (,o`v*N|챕T;NQtZ^;&-+DDm1rZ0{S4uVJzl5m0_Jo#U|f #`eX^X͓ t7j\ `!8O$R{9n V/TJl)@;4ڤZy=zb'W_.`kmiGFXB<.LDH/R}Ij! `n3" Y{NB[H ~3Xߛ} ͑ZR#UT%RH)֖!;E䏹ˍ71ƈG&k,?PqE:^ľ9"t-X4 yCқ3Q+pO<ľ)h ɶxGs Ք^Ai ~4!bB7OT 7)E4Q0#B26-V­}f4iTG7vd)U-zET.C{S* ?"mTE |] 4ST}Acr Zd,x憎e{m{L^ejˁ|$\3z0<_k76;;zy KUqKu;,pAAZ矱CzA*iZ5I&ne 2T%VXڨ)3ʷbYhȱqy<; E_Oar\O>;X)|ɇ6&2ΠҢȖy +'@굺#0 @` @q R2{Y0HǦxsT@tI&[)19+y&CtPzoq"h^~h -/lU\H`eQg#.7MCV{T>f ްLJͦ\ ? >8+UJX<ţy`ϡW/OB ̩Cl= 0=D!}&EQo}Lvzz <1 >nf㕯fM-[ܗ͊MS7؃@QICjs(2Ƨ(q~RtURw?bO?jGfU%lcaݛ`fevu #hC+D2` 5Ṗ!yQftF[p67$xQ=(jGʈ)#NZ /Ӛ'"c4OE LVT&mra֛*KY<;jf'*yy3Ԗ8*>fq8=TK> bX'cByjέcen:p+Ȩq̘͍|9t=%ζR |ɦY*j9ŀ u"y>2^A$XCLKMƬt/P2Q;ū渇L' nP0k#й-ec8;W2`=_k*<\-JM6nIw ^kx]mEA:LSNH9j}$oj2>:̩#ڠ @WroQ=K=2qaS=KP:(^KrGnO!vXEA:/]=>5o&FTz(`NN1ە,~?xXț\r k_%ysM:Bȿc>m1ʞ0Aׇ!yX/M? qd0G)5 I\G݈thv|x-pt&0Gs_lFR?K6މkNy(ՁGSLu<{rPym3Ut/%i(,H ?@Py˭˗Fi,e%8P6i"VϢtJX:)SPiwӇ%Bt#av}*t' 6A ={ҫԌbfGUIىN n$j;VJ_+bDR0gމ@ywaU_?OcD&T4-hyF2FL2U#SJKe Ai$ 2AFUk5]2SQ-Ɠ)[+F,H)j mR=z=0l_}Ic jK*q*σS6"ļK}/ڒl!R ڞ[lcׯ/s+yTI 7גmv>E,n0jyulQ,yH1ћl)хw%\g0Ab#*Lv%{C=Z -]]9Cj!=^x6U1浽rՑQ[ Ij $$i[Ԡ/|QK,=N N4Q#ff_*/EtLYbU6~s2ף\O1@f;l&wvI6=hlh^r#%^޿AX.=Հ0xv.BpjӨ}9zoyJ F\;ߤ<—6d$05@Goy)ȜKBdvU[ZfskxVr3] h !^^~q [# ʄt ^[Y*:xp:[g Z>F#6#{[TD׍\n z ~1H|kۅ֫ œh,oUґ8,hcn^yyv2vt Nc50xwѪ0it)#?VDOڭX`쿜:AiT)PP٪`R#I@KQ1?Dy'Һ0&_/p9+Yr}Eaex.;G^Ÿ/}u^h^lw ,.QՅ%|TMStRӭB0^vDR3Kmk5+)PkߎUcG`s^X~,GZl=R1SDb|V*ԹEݏr|0/rNADw57ᘻڞK~p m'dtHnA8j~c7q$R\` U8ΉӘEr&'`;y݊|.<̙6EXﴟP_^|s =!Rz5m`9ӚzLV;GuVJGXz24'wsI_kIfL_[vos" u1l{wi!9vi+ 񿅜~4J{̷05>@5I߰rvm-^kZ2.{PڑHL%0@_XzRNoܯfI9ѩ>7pح CMeho>&UAͮx0~\(5(kDSd<`iK[mv=yEd am*- 2jߕ/:TГSfpM׫QaJˑg<(Ӡ3[]GלU?-Р|۝E8v|o:% T`Fe|op&sxK >>OXPboYH Oj%m ?̪ 1P 'f9/1ΩZ[s9|g ٯKZA:i}5?dǟٟpgyٮF/<WZ?|λv~򓡴:CY5mGwT] c8):!z2¦cZ2<V T-QG^Ê~? ֊T̝"xL}ڊs>u` 4ec#ԋS=AͩT'5hl 4~&֪ Vznmӷ˗H3/E ҾXX4[ V^1~­H`EUxD?TY\X6A+ )LLypӜp6O M?ta̶h˜%[a$e"Ľ~UtI!xEf|Q2>nqꪷPSpo)lH}Ek?G;m@"D/ ?ۃZP_麽a|4#iǡtH/GOuU@R`;=_h̢Ѳ?Hr,7qZLg5vk< ٬y4)px ژo܏ ML5vt%P0, S}Gd =Nbqn%FA:?~NXrQX$]ʷiaL:Ve^jޢ 3&FMoyi A|B)HB\$]cnǼ 7+/+_vIɅ33вE*E:MxBC$ BNqq1`ʼn:St\9Peు5ZΙxڤes2V X7:ݑr,)Uf n,Y-Þ/ShG;!A"i?a$+>OnКMJL+O:@b~ ⪜9M<^h45y\*Ujzԁ-3qGfKY2 _)eMףLCxwUc;]Q OCAywR#C—GK% 1Elq݊1$rKDeحXFiHDM/ &R$31F\5-l]RIF./ʖLPokv#B. _a\0+<ɽ,g"b! ^0\Q֠@ˉGvhu~/9)"yFf:Z\h"iR9OX1t|M'F*)/ 1d V{{Q)p:K_/fk=3 <>tqT4ݱlVW߾{=+ھAvԳR5SLھ:!ܺ |{lCgS#)"eב{ɩl#)<-hk=Gb}^vMOD!uE}/㰠h=qq.r/ scM$hZ\tLC+qKBM/ f H }^Ywm~|~qh>xB>lQ*eHQjEfA%Pl/&Qجlx#ȧɅq_]Lqq! ,ΛCRpjؕ Vpʊ'*+@^|^zo+hos1XWY}17M#_@E5yI,EC ov`pg͸z8j1U7 r}LjB!ecŚw%ۣ N2OF_>)͝{{+#v\EV}/da?"Cz[I+"rC9ʂUǷ Qov*d9L)@.QrEfvO厣nC]!ju䵗[u)Q jq]Z/0ÝAhI9,i*)(&I̞zPDQ\ϗ}<"ICJn dnњt_۫ATn8EqMWܽ );|6J"P2+$ ʸZ/.arb2 @4͖"ږWd8E8ñA9%*JWCr<џa+9zKD`nYvVk Fv;/ 86$fS]{'7 917w>"L~nW޻<$1ᦇ~*CqRfC}^ڞ@zuO |;bzR: &k~w=n fz'XbMM e9,םSsC밨~.C4bp8{禾ٮ3 M-$ɋ_m!+VUXt;CٲI "")x4ر_i-2w;Uw?i:kpS;Tu̴)p}>xٌbhB]#Ѷ[ [ko{:1*eߣosР"T`oo^"0CDvF3o4)8\o` V^cFCx;8Tc,Y=rkU5 4U`僛y:^UF'E0豂c~O7$-@߮PDoT:[%w{LvTsF 񱢍£=]fw'{xQۙU%*xRG`֫:taںD4MT6 [ [jjc7ə-_8X5aAOG4e!rr;ue=$7-T,JP<(0ZBKf=WEI-"i>/[;~m TQ?h[.;XXou}s RnjÀa^ƭӋK{VS𵚑_)hI<#jdEse/q_Z G`rB>Lcqjȴ[a϶tx?@:ϝȅI84hdrPS;S@_6$VxƅL"P-Qq;J˿+"FK꾟e_e?y0 e`*Ŧ'WqbA=f0aVQؕ!w ;&mz˼ToQp 5,#d{jb ;gwx=(vgukBOP^j|* E-e84^cOӮ-m.;&7H#,%5mY-bO:Jfѡ;V}I/mK8ƽmQ(L >}>g{GZɧ a]0.* lXpqyfؾ-4%,Px5 HC(A7QoF"^{cEOHumleLIi} kQ)y)zp!v ˘A„/x`p9>ƾ;^ۀ$a4]`H~;tfCsbJyܿT+g iwl%n1Ԉ>'wâ}TvsZ@ĕ;^jIV: _8yVWՠؾpfQi6t& Eo^sf(0tv['%Y%S;Mw0mr\b!gvT.ɔ;eŗrm*-8-#n6(_[y?%b[~.EX!br?e?sab,R=\}]3f>pG(C֛*"+>íτn$W'Dn5 o UWm[߶xQcC:F|N{̣L ^B@!\GmWѥj#ߊelݷH~=kvb+0l D6 }>MVC?.MlEq&sP|.(J>|tIB[k{M,ze 顳Kiˑ'.y,8 S7H,1ArW-Ri=4e=;l3@qˣTh ;sEJk}3Fa ԍ(uʵ(r,L;ev 1*MF߄6Q^'&+ >I =2'C"ZLVh m\U8ɹGepUؒ3ln4|Xl23~WWImyN!QUY~*Z.=7{YoU2}厎H)#Tˁ#@BP}n hΑC_]_ancp^1pדG޸KDbaa87?< Gao߅2m^810G'k3&Xo-iWof&z4dnɒ],Q xf70zjgkn_N| 7_1S.N;:Kˎ'E;`3y4n9԰5wIHizK1 A lӛU1iqh3pL` =|paLƣY]/-GǸj-5"ㅦvuga0XBARإW8 U#Њ=<})`zlfjb9; WsZ:VEd S?08ׯa+h9(B&:Jɒ1@>W0ْ *i Hl|pE-ΈsZH,Ez4kV)khH!粽q|HZ$VIrF:`kfpi2zaemx79]ٞ aNoNM& "BUVCVHPaLC3fY2!eu~x?܇O a=w 4qy[GFUP!+z: M\G >owxDƶ2pR7zGɩ)ݦk;c‚ؔ3$F?Ցy6ԷepE P=-y@{Ri埒@ ow6ă!/V25Gp7VS]@'vV#7OftA'4Y11<,3{7 ,Sv[ _GP7}Zޭ6nWnYuYcPj9F쎬Oifnu,%Q ;Z>a)j&lyyWmR˿F;0 kxS-#E\w^ Skx,[f _]0m;bX# `cA$ܾX ߬2 *|B SvvMi]l6< ʮLF]CR(7ϳ*:K^siÆ)Ǭy^z?T!6➻h'yX0\ "z'vs㓡72:%%5"H 6Y.70bdG_huN 4Mr{vZgCkk6`!y)%p1Q 9ȃ(n@iiH͉ 4,9YG2+tL}&1mm&K}3qa&M-qb3"MM!I<`@iw$0lɋǀ tC z2 ٔr«ռӋSi~1Nu6[c/ǯ͙T](0Aøt1(VOAɚV6= ]Z2ו'F '$y\f6¾X]%9ګF8!Q QT$qVx bl_wSq#9x9'[AxC>N‰LȎ9hy?Co1U%NJޟGC):Ȝ4} aOZ^{kVX2yy]8<O2um{P= GFubR.63 $I4H-PMݵF= ۇ[}=8ǽb[I|BZd# 4]ʃuMsFY\q`G@,J}.r*E.xmΓhG WPJVMnW@萔㒨z N,Ueg++qZQlUeQ]?[mk\JY[;.HKs6/ 6֟%sD!JP;xng@(,byq^mH_ȰZ"WwZ|gZ,6 jåo!M'YMJ Yi*eɶ⌣xh~01"! d; ñ<.PlX셋pq>kQ𛎈hF0O9Ci듊CM}ˊ~²UoYNp{o(6ۥqJ*;2_jX'I¸oO ѤE-枅R*]niŷoC)Vy$PҕD~_Cl15VFV Q<KL <zxj"*DMEK^/'30dzuJv8 W sPC3?C7y;W xumՏ#>F@ض`. 2kwNڈ^tn֐Q/.xy }eݰW"~3P# ]|h{&UYuR"or[-|>yE=7y ?Vԡ.rU`l`6[GҋeT%vmtL!*e8aq+ͩ8oR֮ތ,E7VK ^ru6cn"9Lp?ٝƇzh/oKqϢCMBOdV1a V(0r&^{MCn.3<&팇80dtfYI'Y*bX-}u] `Ty|`ʼn@ѐ{Y P_ղH+ø! )^X"[!~9mqo׍~BS)_%C)#ުF.?IRx3qU ש@ӂpnT1Déi\w: Pqxce復³bgL^ b֓nDmqz AtQ2jrJ6h<;+ryfH<ۍ56= *èsM_=f-`{J6I:U*P6yPI 0Д!0ڛ<"ggRʟlQ>ILT(ªTj^y$]5͓ >R[q {̫L-1Q5T?hąd=ߘ@[<zu@0aԉ݇m.h;I \FL-ovn_yD>; QIWƠNk:"$۔.JPB m̷)z3i :wV÷IWdi]5)"&[AVf DQڎAtU{'J[>;6` E]jC5k:f'cf8*ڮ'zZʅsKD(e9Jbak- ngXsD;­. IG/0i{s2XbIXOs=SKuU0Tpx?Q91`_$~΋SN1\hȑ{!;$+20G4>.cp$Aѹѣg>&˾^5jGY7AWcM],9,Eh{ni3 sΑ1S(t]Z`rF!nt/E4^҃뼔)TE8QY=s6|"ò}P8lS[Z&?Z==;g\VtfYUۖ H ԫܺi@kE#S _X5ﮢT/e>gAH3LJj\E`Aʻ\'+EbIf>邿/ 0az#`:!x枓F7앟uk.jO:*a] TqI8 ){_48d;K1D罁אּJ0s f] s,!{e͊0k?v+W ?Cv6V 2!*1ٳi4bqجi6F[^Ōv E 6O@[*qBN:fd9x h{B V?ź6.㛅NEQ"J_HwoAByyyaoKFF]ni/Ƞ: FׯfnkR Q^Xښ*̳rrxÀJ(B49#1v0>ݖ@Kr-+qxhM;01gdLGJ2f {"eH~\9s1"DFߡsTؤxOQ`҆@qcOpu=9`_C.8=[v#at^ B%C):sY{Ȣ~vfXnmiR *u w 0]O uMF0ϿuJ Šq?vv"ppzEZ5`F?+怼TK:`|Q-~yAvw8lCyVUTAC "mhEc>KW~X`QFnFT@iKjN2}ߑf*bDhB+]SXþqyX-#:tZ,0i~6H)edDMk<[4 I{J"kl_j1`c ~MLRE e|1'."bdK46B4(l=zd{kQqG4.MǿJNײh缅ƈ]\AUb` DRIv.3Q%X==SsGl"/^@ ~ %GP%ܛp]h,AN\ǥҕDr#]Mg"QDb~źN^Tx򻂵h\%94"b|⒠ʈ ̪$s.MbJz>h[(w?Y﨤ba9471@bZI bsv5CԸDqF/| é&Dʊ8MuORi狝*(csӥg{nm 5I,'C/8̑榸pBxh.ԦjƔod+:h^H.BN˯MV'5 2_9# R<J71/Va =ՅV) K]4HtX1!9,i}ͭćŹ/ny]On/wsu|X*wRs`p *4C6޿H*@A=+tʼn;g2弗Zt&0e t:u;՚/wɛD-Mj(-iq@sSf-mW״wfncƅ!xA^ỐXItR4V5XLf3&Ïn6="Y">0ݪ{dFFp}T:*Ӿ6³7vnʆFl#7N _J`pQ(F?  Yz\5\әoZ͠f)Al^>4}YMR_AîEnVJ8pKo"öٰpp9 g6i=զItyH.᠍$D$KC>t~BawO |]jSK7[D<`1$*49]UHcQ{ ^(oL8Wyx]Svh#^՟wq3x~6L.J$e9\zU4`w'8Bݖ⼨u6u YPT}U^#_6r. BAw88(ufy (t'KDL00̻BuKi#xiߓ ݗŎm8y 7) ]"ЇPe$p}ߊ(cIl2wl=ݓ6P<ǣia,TJCPL#/C #!4`ܸ7 Qp6G G  W)0b{,hI% }Y+_#/Oym|GEIAUኢ 6$ @86maEjX)/j[[?Oy1p_!sZ r.{l-nl 8tv)ۢm^0abb ЫPQi*WKt)ސƋT/,.p|T?H:pS…HM욎j%uhGjÊ!wiEpO5 C-IG; .T8ԇ \~I)?zi(yr)kgf#$y@(>ԯŹd/XB6S͙#R=9i( TKێ)kj =rs>G^/͇&`~7ل \=gŵkaWpBo(vBk7v&Q٫nk}pF)$`9CΟY#p8MC6 Q!m\V4h %O95d4fu$=i;Kwʟ&%NuǟDUbD7T Q&{A\O}aϔx?AZR~Sh )_,.f .Άr:T.y%9)g` C=eLC>gto״H&=ۙj(H :Ѓs7d1AR:wtR^xY4ɻ}o%+< t $<h4 4;>BEHF//iqO/};Ҏ@SYURb!RN1@:OSڞOG |Gnh~JBM#3J4)vDm'oFE,,)B"M}(ǝxLndE~Wj`Ngtlvr문kkU.ry?`" Mqv g¨`CM$ jSѭl5IrޔgJ"B)2CBkIXv|(4 :qM-#Hbc[_p,x|b!9{t?d5I/,Mzxv'a\dq)lJ0+6}:WQkrx,?43Dc;#3 ŪuG,=^Rþi+hShH)F1d:Ȑ ^Ό󎍷n"Ĵ0&Ē u֧$70, 7I>?b!F/ ^* ^*?4pk-F+IbQ&N ->QMH)^0_=s]2˵DۉyW>8Ӓ% /SKcX9.#W!MGFJNUSs]b)[~@KeKɱp=8C$_n.@S_WOKPf໡}`nB3Q˚!<83`۪*` oLΦ!S/]RͷSx1Uܡϡ&\2 ġ%b] -́Fuw&J⊫!q=~KD=m^3Sl ̓,^m̎H߸50ƭ9B4L]VŅmT8E9+i: H68yAB@U=ڱ̑yT4xy`_ωh,ն7o:S T1XRv+C-KmB `-i<]8nT tͣddS8F-vr즽j;_HiXڕ] J9 K %, FEOn ]r`fc9դ}*|{QZ{E&9074!i`U}/Α6RIc9kusMX~, W 7OgE?#ckl{)ڝ<)6\K*Q'Uf )"t!ձxEP˜5##-a#b KEN|66gPo<"DӦ-.'k_ds!2}je:YT3h@mӆ-Cbȿm(,;d""`YNjdB1za.k"̻"waW('oRuf0uJZV8I.*ܑ+O\b,oSnOe۩$ɗ|'_ gCFZ2]-ˠ@4ۋ!m+]l`4ZڛZ.K4Lտk8XizTz٥IitV`a,U׳i=5xo mEfh5 h?J ƺ 'Z%!dhFx=K5XlEvY#!fN ]Wp'pxvgK}SQP1b*20YTfUGMX1{|Բ mISz8_0:]Ⳁ>VVCu %yF;Шe!T/XKGwLOpGHP-PceP\|c]m`)WJY7}ΊuOAdum{AޛJNO}@E7l(%Edؓ$AKEYm *SܾD1͢Na@GKwP˨BLSRg>^BnC7l#/W;Xb. W04.MMpu@=ig?.G{6{ephh?>u^{&p.L 1 fЦ.GA7d^S5;gIA(=%($k}#t;-LgQ@# ?quHaL U0}dUhT Kڰ `˯IK/sAN}e?@%I۰m7c +LGާC [G[%yʪ*縃;lGe7vVQ2 c.Ӟfv,ȋtT֋lR3۷m5V@/Ӎ@ ljL;5M": uN\V5Zlm^M*,-ǐXQM(\@ʂJX?j ^j}n!yd'3ABf*JU6QT/Qo"^2uy͓jM]DQl@tt?;#OnYTWѴ U\ሮ=[**1u" 8 Γbw6Ī˚E$$.UEċj q.d{tm{f%3K,&[y'=Swq?4իre!d+::QVpnkQz3ixzR&7-ߣT f2&s2sXuW I`-:<QZt@5y:=jhfY(m[pu218z >Wa2'УC7xcV̞KPn|x?ዯ_mAL^N{.շ"4ywD4DWc'/\~.t'8 448=4B) {H$|A2^_О&/T훆.+v4;r?yrdr캇7:DU"UBh-)2*c{ ^O4M"'d?v̠VKf&V q+*''qKh@<||RjN(֩xH᭩NzrvצeM!Fi!79TfxC[RF,ufҥYmW4 ?۾m|-ghrE{7B]Lz\h+$v49֨s?F I2ݚŲJ"-if1x7ɮ-4t3?SMq^:_fdHlickPJ+t>lS]M:Kɿ^D># Uɲ(媖Uꛔ$Wrǘ@qLDjRq(1}l<>HYsv OeFjHZ뭁V6׮,nשMJ dqGH2h;r]|p& ek#w@m5.;sďQ~54ncsƧs_!)~ҫYBf77w?sýwEdzG6#VXwF`wvRJ7~ө+"uiA0U0sV(Ŕ\ap$GC%+V_7k:|$UFgv(1珟t |ih~gx=,l$} k{ɤJbwyZs f]]sh^" Yta!|<O |CkAk7+\B8N*ٲ8/pӄ8mY\Nc᭚MN鉜`zEaWƴ UZ&6r`oOnV:1PnROPAdu(o!VJw|]{W0 !>9VKȌY45. >w ?a~WO%Jt68>k&0UGB_DtmĂ/B2 8C. N"IIfH8L]_ .r <ҿ((=h"DLrBJYB*>ަE'%pU@6#U"kI[ew>lA;'ٲk*i- yaMl.  kqq0}W.,Ś*?X:Wc6 \~!>qJՂ!fhHzDaWفkڦJUThMN\ iY[e@>&-pv+E}{9*`LϾ6niV}sg~O0K{1Ui :V $dw0Ibm<#p,Q.>YR٪ LM#6v:I_HD$g>㥨OF]^&@S,c. }4&O)a5=mr# zR*JlijkfIO I,EbQ"Ad>hQtYq>BI8Qjhrb>))\6H&i_(S15ag[@Jy3g-.9#TTh9K)="%G( cWFuH0ªuŁ&Htx~qȭR>À@0r#M?&CVi&GnW0T6{KRV׶:҂ƚq,tE+S"V+wTڙxp7Dz Z.9m]}HǼ8v;eB Mme?F"J_џ8NpcҟtcR;]''ր8U=$Xv!HƮ܌HRA.(5wt IDXJ&`xDtulqJ+zՔhKgDn@rM#BeYA!PO%U%Ӊևr []n@~)JS}WGDU4 p=^S3IM[{Sw9rkhg2t"557iΒ #ٔc?iҡ,u|f^NA 8Yciaʛ{1?[ʚWJ̩8drkTpK=4!%v]6/JPs ,Nz3l[-rpII;t!p ],Ċ=3%|VbƁRx y8qXˑձ̳CHv~RlH=ʱmzp!7@X+4^UYU4+3wqCu}fT }ojG6іZbbJZA29g?}Z3ṄVc&}TW+ t?Hx:9+B=ե^+Z`/JfL |N) &_v&ZJoieY֭u b$T3 %C%7 BpҲl%W?R_[ Akʰ03vN^gšcX2h9 m-a7#27Fr T@4ZmB 2=g"`%W{> j-BT #Ь s|&1I܁Trh&>̲l*$$?9@yeVJQ&Q(ɣx#m2ȐVN9fL5im !%& ]&}mUVtz F'grJ*a7]An֮bWZЯzNdLA[{! qNj\WQ.&K'!,D>؉# hBh+JC/(%"aXpxS uxD$Ğ4C{<@E:Q5O7=%=R\y3=bsö.Qf}idH_3bs\ޟa| TwqaD!BSipwJH|Y+^ѕG:߆ ;0jC @Եo쎲 HaoG^i No&O'5@]oGe[y*Yy ĉʄv;#g fK% e7Cpl-An$ᓕؘ*ǀH?,-{Eɳj[&KjiIo`(RF3:^d1 e'i ՓpPN 0cQ aM:A4pZr*i^3 lI3/D4hoK-{@K괴jRiY~\Ҙd:.3LEi -W9XS6{[9('GW7!ϹLMˡsDq$E~͵#QmDgB&CSA{n7W^13d3ڒEIrN*SbqB (7.T ҭ1k[dږ̆]xǨ+O < y6."H[3$`Ut'E=n*4ї4@m7]qM*(=ÃS2feQBs J9G%Ob4oLṟz'ox av9q+ [M'dr,2U3[q"3V5d ނu[{7cqDJe='5 G/X"w $jwܺxSn/h" ݂=-cSS/\>tcz=!lG'^ J]aB1sif WۑjNBz+;wԛ%zqBO ?M?fE; tnTJfQKIښy^2%!#F?QE0& mPAiEqonC&mk8|yz>rR{>'jJ;&fP1ly(%hJN;%'ƆA6>(G 娖[V\/zH.6Ey4'.fS7' Ӑqn s4l[Y8HGLΤ%EcFJ)E,eP5G&YI]S2-IaMtfXCsL˕a%Coj`5A[*  !~eHyGIGs{6$|Զ=ahb:L6=ME_Ǵ/Z3Jcj⭸6qUtIdK+$pl;<0a$+Y4IgɫǓOX42f`93(^v_h\W/t0mWb7Vr, {sZ&lۦmopb|c ª6CASm`) ih)ƹ^0)ua_lຝZ:vxI4K3vK-"9?DZTOשeګ%8<>ONµ٧khdX\eLZyטzqK\ .]86{9k$oOKc@zV56㈺SzZua3kę)P? ٍQs05]p 4L,7ĉhvqj 9L#.&\_"izHARMO,H7Uo&!#JC[72@@v{wXT@w zn@vPs6nYqu:gWwQ(KIq ,U63%*!R^b aBJeű,&8.;#\9(5))6:,DtWdŋ--6uJ. N$-QC#H&n p)p{* @P}.1"Ֆ;1S{f@o[Rxg utX">1JPǬf$GI6d<<,"D#2SnFo't3nM L*NBj[.p?:]B\0vXFR᭄Hfѝp;zQ+G1"O{9~בaBѺDbJm5mcm{_`6o=n]FOs ]'>~24#ZSwof 0n|p؞w/4WZ)9{m 9\J㢋>!6~eE, %@I?:, }3j^aF-트b)a,2Z*iw6վɆ[-^EP=Vx_,<+ct<]9q) {$߸wɫ| ,ow/6X8" 5[ȱ`Y߿2r{4:Bn bZ}y1gtQmbq'D| PUG,7&ذΛ lb>*SBLJr.ok!p(vÏ )yqmcFqRW.lS:s#:?'H,9/Q儔YOY(;@UP؞:WZY/JMgy#R *xH ъR~8\)-x U$=ŤQnmJP)yv1Ⱦ+?E٘`ak^,m!Wn^@ۊ V5]S.Xhb&L؝.;(f JxB&+iZ n(qL^ G%<-db]cTwl֨1G"`~vP |Tt3֕no#]ag@"P38gj=!1πO}Hʞ}R9%k`{t\:CYn/ "(L4>j2Y\2qv:)2!XQ,鵺*NNO S"`Ƀvr+!E]pJgoSgАb6I?Lg ZI(x3C*{ԫ@W>y0=] u|0¼`^o}@th}*,\s +xULH >,|r%UG1]E/5~hHLψ[قk)˻kxTXM?9T UH[lH8X! ~uH |xdQ|}1zyFdF,6ڏz'ZKN HaZ*ddUv NkΌBaw1pke:Zzߴ@T7(>x=?gTҵޙY[ZFR6w靅DpSN@_zT 4x`i%J_[ eԨQw. "yqn d9>YqiW2™c%őw ػ Qq;^F0p~gfT?HCy4/H;I$}unnO?3k4މs0FŌ:j(CH=/xIz9{]ӕ~?=%/l#g5/,(rMF(-;Q16XYsDLrl7VecH o<-yk)8ܦ5cy4ji0kSNֲ 慻 ṿ^|j62G3lγfxĹ\펷r֮[;E?^ctg1/WB;0.s2]T`mj|':7SVJdq_7|ze9v(-b"c< %yLVk#v7It U.C>Q:=avw65o]|e;FwH ̞@+4@Y?fc72ɸ"Ƒk`*"Ǜ;w`*Ql Ƶ-=Z;rUXbofYNM` !qqUcYj}`C) &hPJ)a}Y@Ĕ\nTߦᎻ\ڤƯƱ)&"81ʀOqq; vVs8Ð$)۾Jޭ-uaMGM Qt@%kūI#YtM̷I \|e]ߒ P ת7,!̄+A޾_$`KO翏 R 8zY '~R!/3 l" ^>,TG{HCREKcށ\Uţe#KKQ+adU-9V~A_~VilՒ/ YC-"kG X5aʡj]_ h l[_~vH;Qٝ3s#S̞e Q쇼t3~?u'\[=oDyQ'a(k(w fx?#bT; ^|(uets4#y-[6ژ%|\&'N"" GV-Az }#Y6 wPE!Nvv9&NחC! Jht9$_^(:*T O*/|X UP3/ HD_Di|10шPHrxi8q۴JbOIqTXRNk煁cY:Iam/6l5s9c15윣'=Iv13vtϷ-*Wc 3؎G_]XgcK]Z5NУZ4i2xSH;u;y_B|korJ MA?ns=/R-QP7H6f⸶7'7OfQLd4wV{s$lĺW}SITMJs#w"{љw1Ka'0`_w*$Jp) ;\i$> vYA{na<6;B(|JeRl"_ ٟamK4ٔ: w iyB:!:U}Zbdw~c|RISMO~0syO+#<¤^2;Mc 'UܐNx];3V&F,QRлu.5{Y2#8P[OR2!-C)A1.ĖJ paVp uo j$C@,P[^oey:-ȥy}{cN^<;ֲ?7an'q/ ̣ 2 U WVwo0"pҮ@O1vzL,05&99A!SG&$F'>һ]2TkL05^qKZ!:]Ub7 A[d"ҢIim6;M"ybS\NU IZc&6*EXiYю: E̴;>")?PI$!= ݌$[Bl'|Fik|G,.edB훪"t jPf+T8Y|mm7=pDo#_q1lO^;V@qBB"q:5w lϑ.:"sAа'ȞGh2B?Y q 4DO QW7hk/$RE `=äU.6~%(GJj\(|x#۰i\G;5;6{3 @1}1۰l#-_ι!uN6a~-W&ZDI@4;n]?Q>,s*[#- Ho^Մ, f*Iox"$#kq{iH\ڇl > f xr̝NE#Xә;9+hl'W-& /<J IVKY;+])Yti\0? 6N _'SG1:j>B3Df"1}[W!=-Z??[{`j.&1 IJ>ioK_ Ʒ9h8B>HC 07?81եNXeWCB7,7㪉 )(rF-ؔwD_<-ڶ0#<;"/Ⱦ=*V_^\^M*(!wv׼ϭ8[+Iɔm?>q+}s`Ba&\oY|K0ϕbj] cjlF ^"|Z|n)ў]e0'oʳ6IDx6J;?7\:u@r9xBwE4)?8QDg<\,46M&=w?GDߡCi8ANo_ YL cK&.q&e_;/$dB|^wbǹ)C "7~6\gpI +=}UBdkF(VXNȪ"r9D21]>( 4l %;]\~-d\& `@1r8><*w?YVJ8 O0I.ADF&1BآmgGdt΢ن7QT͆(svQ,';_n!Ρ=8y˙:mli$⅘vםh!1)ƱA/ 9TN/ ZFбiydlmTڷ&?9⡎pCWU8!w y0qUEphogߨ~I; IznRľ ̖;j59΃_Qq]Vcjq-'mIn1chU3K4-<*Hz|W^xp3N^ryCWyl`qk5*~4k^ Tax˝AxPe+xtAc+YS:r\Q>)Ń=n~T :΂JPlزk BLzo֛)@'EvShrrܫWIөe :Y1?iG gjUyJC sxpRr(ه3'5CkpǶ갘ˤτW'{MqD4µ"oXZˎ+&֯/Iˏ7yU-va(dLC],"1,A[`Mq̼вN힮Ks B2FC%%W~G4w8[$[^ws*YfֳT 國bZqIx ^ƻf5qR\PZPk+FX 1Ҁ1" ^}h_\b ǼQI~~k NV| y\oA 8Rlc>\7L $ γt s /UZ8 H'- & O-AY\<_yXUg(c0p" wxZȴ182={&НKi H04=K.GL p&Ax=GC}! A`Oԙc+Rl&q&3?0m&qGrj±VնΌԽh`u~|^i 4kf,.,gkg|W+c[ׄ wT!I il7HrR+c= ti^5VB,/!/\u.xjȭu XØn A~L[WVK`P! вo^HqEb6R)" 6UE;K 1 ~,x팊_Yُ]H39b,=[dl/,ƊMU)=xMA;Hjѓ⒰TZһd8S^ ?G;ku1>᧧o &Ab}v7б9yV&j [!Z:,Č̴#F!]ȥ# 19O~r3D8h+۱󂴁=Hl*T__Tx}nnEqze?k@.v(xU19/1ʴ$iAIKRN(hL: 3XgƆk%{ eưlLc?s554] bB`X |䛜]?G,_ ٍauw|}sp:i/@ HwpL:KhQS*×Q1ӣEe#~ jUͭ 㙐Bٟ[bzݼ1d)hC5o<;}L6x`7˱ފ,pږ3Ab7-o眡$aO) %BŜQy҈Sҏ(BqF &r lm@ڈY/850n:xVk𱶡)FFVnsK4XY O9c.}n \%I6m-v2[l m1A1Kr=sb(7ew_F%dYKHN[8C䆮iMs(2":2sw'Ğg/ əb:Lj1MN$PU1M3/_}>QIZ0#an=9»s풱SP @g>]Zfh]-߻`q,ui [1 jN"aQb[jnj֪Qn.byFoԏ%+AKyq8BG7]j_u-D,1D`䀀[ n8IN'F 2" N$WmG_XDN^ ޟh !Egxی_$xSQjUjdeYZeSg'.s*e-D__=$LpLY:QQv!i͋=hK]<QHކM@W4mUpm?08m|0VŹt睆07l.[+٪|1I*EpUxwήBBK yC ƈe+E hp{>ٟ嬂.uyp:Zv?&8UbLꏆj%@n.yDJZT-OyqN쑠vK; `4+J_4D] Kc,?<#h[֟He~)2SMbhAiJ "\Hi[F)$#7ʏMp-0bθ"},{m gIE̤ sRMTm8ڏ>j9k<^f5m9 2iS0"8o3CosBű ΐ;*(W2el Ao=ɭ/"%8c.Ǚ\H'}ޣ>g1!*;pXT)@en6sJPey;YqAeB*f=WKˍ\g2n#၈@*^e 1 sNI_UJ_8t9*R46PÍ^Q)+Kl7܌RLjZE Pn +I&)ݑg 9yؑ.-i0| мk`vzxLEjLMʔ2 6*LU(Ggryk0]={n&OqfXɓVP[6&gKTzw9VVY6u#-o-{*|VKo됑t ϛ :۴xaO`S=Mu$'MpWۻC9\38Tk:9W3 G֍&I֭ k_kS^GH\5ZGj Aȧ|RZ&j(B'3ⶉK)nEXICcݽ3T@(y_ջyFicthr7Jvh Ţ A0 WY k <0]g.U2oLSyyw:.s:יqFङCOnRۋt;k'|RO e= a\1Zm]ϟã34׽ֳ̛^}}*UR}P؟÷ L(/}f޿BYfU([ WCԩVYx&Uɜ.>ɸP:תGJA(ƬXAZ@)Sq%!}҈ZP\쩞E`n&\s{LYܩI!DzKXI@{; 8sMIQY Nϋb(f+Gʌլu)SWfظ9e=96v? TCoc'L9BdN{3}Tb[:43ބ|Uj-].7P{"Z OO.ü2g;A';p6*E <WYSJI \@Q5TYmKURQnX(Yj~ B_b -8Ub.ᖾ0j>]gFjЍ$no?#LU.eV cg"?^|s։q+F=_</-*ff!P- ]>ۥ=%Gvsꃯn:ȶ[ 8x*=_5w5cI>(1)u z'T)HܧŖR5GB,Ɋ9AW5o"2UU+AGNf*^ݲљfTKD l N1 =Prpضl3Q^Q#g=5QۃVhF4K~c`[U9!㭋JStCMA|bX]ki[onb!xFeP~P/Saؗ0L\$ (s7_ViJ͙4Gp6,H?r. @DJZ.M{6E͎[h3z`C"#]: 8mpVb$ 2XNΥ+9NEm"ǐURF2^_?Q1nX7f3\2}|=fI5ͪÀq0UxQ8~:<ⳙٴmQ|NfB mWhp>W,Vnz᠟{:!b -K ?;gK<+H^R6썹/X$Qy4@Լ}Clx\ov(y D8*zvY90=<:lf|,` ];sQBZ)pn>I,nEGϊTw~"vH2OkL!=0+rꥡaN( EVwR {qXoɅlBV4EVZ Y<ޟՂeM1i`! "% :걱jb : ؈ xG`m/m;Y8d0 uUJc|Mx@- r"t$LV|Z1?ۛB" -7h{*'0bE lǓgl^Qz깣ń(+Bb-~渔Y/8R!tΟigu\NᴷK _j_  KxNrOI-$mrBDסDF˰xj[HA:?Gx'%AOiHF.$;y5'+Sb^z>1 k0ۀ/GrHgYL%[^` ]iJ3@>l7 E4.lB/N?EYk {Ȑu]`ů8yG|>U#+uwD*Q&@eûy70qYhV~>/K~.$1"*Wt\E&hѱ !;l2(;U9SbWHDH#?mHzf6jҼ,&A$X\K>Rndhy|8S|zBl7jI6vj{vK7'0YcTp.&IZu23!=c&\iKѷL_gn*-J(m hd> Οjub\Vk'֌OtXgW(|c^~D@q%2ˇ2#BwSm I$RV!Af,N#%1ߪ=>vfC($ƌd1NNfŊ1cE = QST&Pc%S9{0O0ߔoQ5R}U}ܧd̘xPS3գ??V/ڨxB"2r~u腖nL{ P2T=@4蚱 g;Z+/nNM-/Z͙5#`@mBD~TzAa+|rV( Uٱ|h˯y|ƙ$l>uZ|C[u(wÈ.~MxA>k ?DX hj6m}'kIsCeo]K\&5kjp;5thT!-w@NݓU&ފHiS $=s1OZ!lUvaj#XK/`t+DD`NvCI]՘b33t9X8׃Um*tqQhݧ,qKsv#B·ǹbAtu~\5q88`Tg^h8kSLVk_GN΃t ::|Wj99@18t D{gϬ@+zIbeRzѤ)_32O m4;iIOW)-\C`Aca#%lHr@ G6((1Vzt;*+v־ҋpCfXݱ1;?n^㹏ѵ|WUq Zˁk|!v3V)P 8O(|!>|BA y){DJJ#a} Tu{=d0O/1r71I'8,FSyjSLCJCrц#h4 umKrysOc, %nz5zEN%c,)>v!=BVQT&54B}%*H={g_6Go ="04U:^tB5Xj[YREX I ,ݜ7*'km1nȧπ$W] Hjz4*@Rf j`VoE-=9C6B-,^/h/%Cp/2}c/1h qWQDv\%#fs/w<X LgWТmX4(jbآӹI͵`-Gl0)a51 [OQQn٦ć6<YurB>jU4t^k)zH%xyReR]\rBBd , =KJ`/=7G;G.5@^녟`JiuWrӻYǨRx'cFbK~UA'٢x|ȊKHpe2%juWONn2olEF2 M:`7~ݡSfxSx[-ˉSM%ƃ,s(tEMŢ[knXxDu`⮭`&byl-9&>`"mf;׀O 九kV g2zLiռp'4.] #e` ;F39ㅨ;yȘGg%k;pj\TͿL hĜj+t'3ݳXP<}ǿp$78en :IOzdotfIn}-ɠ>/%F 1rG_m(V"-Aj eI̩zY-N7?r}Qx ,Y,i;Sn@FȟbKDIB0e! vflmı}~އeG<(oZ5j5hU~3x3XKDއx7>a}w_1RtJX`oҥw +ٖW'i7}^ra.z J+s #XgHY)/Yu ϨێLi04bAzI7.TʸK%W_x I&]zf(-{2ϔL.JJ{si&6U^ynHIatlrIVpQ[_СW7]kw$y3.e{Wr3.[|9$xD {8b[-F)(g$p$9 :G,(qSעVWm -X@(@RYÇ1)Tpex@:#6LŞe:*,ɻ,F3lr 1:|Vi2S {TBF4J*ȼ}Ƶ縧 */⃃|?L S1%ZIɹl|'Lq[5b,`\Jw<'MC}@OXHTp .,A(7e pl &l#qږB!ϵ"dZ\XݐM-9 74HS.ǹM;(Fvsϊ"4ۑ*ޞޭG(Ҭu|M+{':$K בȑ:מU]%]qC}"]i"2,3CrZ"RD&ߜ [Io*IY%Sy5($ |1Jd SE[g$OF!ȨdD}[Nx,HFs!XKWzuAj."ztCq=Hӥ]?/* HV>T(`cC)a6`J~ueqa5Nvh_ '-vU6q2m*^kd@d'ņV[pa9ICvU,'I ?h"v0bN$v׸o@o¢uv!~ z2v^TGR\8s k咉7\=W}MNΪUȯtM 2S 4aΧIx1d"Lv#XEDɶL0\,4y<;$܀eCZvu#Z|5*~%1z~ a^QBа&,G5^P5WԳV]$27.i Q3(Q"@hFIYpeAVdk{&0u!M0VGzu-۱N׮9%eXf Ɲ@){gMt%x6nEhtKΪR$@&5PUk氅*\KߤQ7 L8֏G2`UX- 3>V\B |]:Hi[v;kb _mt.VOE(4ɠqщ үTM0ÿ|T2I P90eZĵgUg"Vl'xb1 cώE7NC1ݯ706ܗF[ܲ0FmxKj F"Mr&! }δ|4qexE^ 4BttT=kXCJvNĀz-'w0iRɳ}"Wa7|]^7 }7ąiֻ7X]|ecWWU*S޶G7?f\*adJ/EuyT:d;yXڧnJ9> /J'$^Ātω7Mgي#)ݓq*ݗ)~U穘!3 %_$›ˇCV9o@%gz,OΗV|=uPټ%O0d#ml'AJ{J&͸-K@\RjOYT* @^8*s}9m[Qɧ|fd懲{Aε>I%ĕR #-JFᚣԜKڰŹwRł.V.%xJkV;3ou?jԨutUvXpd/#4ֵ.,M1w,5ڕ';xbդh~?7,c;yd͡ܤ0&K-'F)Nae2TRS+c?oo v #=QǸk^4Sb@"3ИBzi=Z1hkmI"TEVU[7K 6!+5݄(hbǣZbTꈡ BpBv" 2L;]= {iy?FjYN^?;dÚb !5܆ӁHD 4E欱^;}S"JL(e⽨YWAʈ~n8t)uRq=^Lxn@ bS)o?#y y,F)%[z]Ը%b@Br1Sd߾x}3DГuSp< Sll\Iː@0F_~}wFmks3BwP쾶@e* 9"Jȝ8 v:[waaD*DzVBOӿS`M-=ףm؁:yAv%= %=U'pi'5 OwPӴ)2]lNZ9 b&/,*Y}GCR[PD{%Ju! ! 3pMu>3Wl˱, }EQ)5't <4ky3OUD*=6[_s0u %%08?nYW=H9 FX3UA qG~[QCGT;5 ')ʯQoΠ@Vg>:%Q_ ? I wUUp|$Uyް>AAO!bIA˅x2 :S9K*'̦e_ј77|=݉S377?]YzI#A4]R*)qTK2i$lk:ZwOĝʆ Լ[ 3du΃d|ރYO*VF^GȒ |Nqf3̊*k RW.lYl)99X%S|7:hxm,#l3C0aD D s*tǚ+CGL+7V[RZdtg,2T)a-L"T4? :07{yh5rfO_ȿ{~XBlv04}Ĕ½_jݨ lXkύ@#AoUֆj,t/|y.DRX4X/sdẛ(ʠ|`4$~&1miT[A3 h>l0ȧ|j>c9X/o$ M'AVay,7 I=ytP$ s _(N74}N#UV/ DF8dn#-seL~@f$L.d5d+xSptn[*ǹP&@IgרTvl *`,ۚt9 WWZ ^#h/*!U%䲙AU?弎A*&ɯ5@ԅ'q.ܬ=SU>=H=('+'0}UFoceDbBK QHXGN4A_e2O rZ 0RB-e#CZu s(-h|gݧLv&'ܑ m>|7ayot$9B{Mbh4:3JsM@D9F&Wn^ FlN)UݷX804639jS3/& dgF̣&R޳:piIJc HP998՜Cnv/͡-' Xd&mxeF/':I2$,z@| HI[ c43mXa~O$yXƷ$62ȣw'UĄ0l@\΅[ LB.]\Vsˋ!`"G2]µغa*Cצ2."H<10F9U!&<굋be=χɏO GB/*@%{LRVod'ߥ6a4W~m~:">PJRIFRJ##N ٩d UhP)4CMxQ:;rciY5.Xu', 2%@p"sڂ:6/g>3RņX`P 7$ v X/hґ ؃Pii9-hh, hqzc.KۗX̡Z\a*˲sGYaϺ%[*:܈gCs`ÓE0{e0g*D;}%?{Y|=b;q7דq,:L|rg]G5Kvd`iw;0#KM!mhsP8?K{7tb/=oFfXqG ͦ$t]P%dB&"^ ucpԂB/Y$(2}L%xlvKt nfq/iΗAWV^~#k| ճ. aw|JǯI=5;OmDƣ vc4!1'zl%P*ծxZ}`e^sd zЫ&B,2<# |J%/*[si댌]! 8`R>Ή+oo'Ͷ;7LײF"9..,'*B؀b{= "tݔ%{6yWk1T6ZʰUp .MK%O&92-'ukhxz9Y49,AzxtG-,ZX# XkzCBOfvqㄑ^3Iͱ@ K~^絩4)eim$0Q!?VF.;-Bpu. 7؃D.(CB.;,/ZVٷqԱHӨ뫅?D{5P>L=l\CЬ@TsOlᷲE[iKLC> @ur;1L P>T,'w+2ǣ ҎMf,UT!+Z V|DRBNsuC]-Yk6v,J)!FعE!YoO ڛuGE `UxF? l#O$d-U6;[|J~D!c+m\LWkڧZdUAF@m&mێs YL}>(@Lqk 9 %lakƅwF ?WjtW64WrAݰ0H3g*/c&~63_,X1}nKX͞=bzoz< 5"6*Ex@ҰnbqMDQf\vȉ)C6d#'[bP8)3̏'9LgpIuOR;ﳒZ&n|',rHv+CSEig1Sr;?MsԿ6 v*f4ya'vS90E;m!ۆKQm'eo m3{GBL<~'(ƚBܶھx Μddyfڝ?TIaSkLqidd"o~ }3w/)~%ζbIGj^ߩݱUJZb*Ȧʰ%R3ߗfK"OsdR1f$I L۽2_[RCj 6l.]-F,7^ҙ5#Kk{k"JQسU$c! >E-bY'xPl~9v,ϱųks:ǐ+{89zRmj `TTYQ&D 1<-ʿc٩~*W~M* lƅmcNoLV9aMz"nL+kr^eQd0Eݛcaܟ&Ri.鑓Bsl5YZdg1;Cڗ(P;0$@,vE!8zla-;uolk}RUc[@ɂ\'E]kR!u]yPy4Tƹg9#<ج³@f@Xs2mqRɆט[Dc+۞ *U0yLXP>oA#`R24i-QKA 0PvؕԘ俪8J9lv>b-@=T%&ib!'?@y(`nǼ8f05GEK)hĸp\яN@scl/w{3r MA>d.pvA˨"E9C1oqźnĀ IFS{t"'&~ .zx3DM<4tM8 I=M03ܴ)l" uQ>C kYLU.Npa()"z|@U[D?ػ))Ȇ`@ C㨦O-tM1}A%(A K7_9fMk_1rENMJVhD:g9Y*dlA`^07QaG$?Qephus'>S7bh'.R'~X#D#gE "܄=IK< :`b6A貁  .ShӉrōg±*`7rSVB_|sPr`;*|3#Mc-f_CluQ(:Kkq0K=3=E8Ϩiv6S{ƭFְDvSC)pi=#A1=I.e;U,7GX^T Zh&%H7S!iKz9 #Ymf@%-4*X`.B\kNw^fYMQ7A~UQ|@eg&V@ﻦZ2yy]~B0V?RN~?̩'GKL,=FЩ.Pž!?x&|BYx;}"sf"ºPj"w1zJ7uĒj5 zg{keŽVaip%XC} b>@9x{b Q5Uh82FYY('19Np_H'hW|x l@Dj~qIL:,]\"yյi)8b eN BKRh?tWL`w:F0a쯖3YrMyw,M KH; 5]`RFN93TDrB_[?̘ 2 tvF#|넳(mǧ>UZR,;W٤@!a҃>oVr>ԘcPnv@.^6/`cGKy5>?PQ]\nM&9qXl:6uP! {zz>LhϹ {L:ùUT-e,T]$J{eb|BU}1I!PYN*UؘYIէTLEf!o8L+_VlfzNXss"0X j*c29\gL,k?Y8UKEoWGY 'f+m X Y;!8DY7 hKm= a64GFx-+OVn y.8D#PML:0PMs#F(,'ZJ`xncU{߂y\1y*}'kڑIY =u(SZY⟈:$ᴓdc0RbrrkrC:O[ǬdUɻ}ZEwt)xw'S%pr~Bm9Z0trbp!%Xbb1P"C&7+c?v:iң\$UJˆМboR5.Т5ujikY +з0;_aIP3+@;?Ϯ1z;u뫶Uǡ >WOAi< 7`x<ϳ 6{P+dz{򜚜k3~O )#ȋS=`2b@l^s M<(tdϝM6~X&n#"YVΖi6Lka-ahɅDٸA N aR !fV#H$Wm7Sǝ '`}Fv%7tč^ ?7UFiK$ ,!Y.d3J$3,+9ʝ1hϤ&3!(- s=i_牍y*_KQ:6kʕ Q&SCyc ss_<)˾\qCEfMctE`|1g!`XkLfxmE("2Y:8Uq(݃Yro$ܹ V^,f&Aji=G㷩 nZB-SGd:L1Q"l1cqBT[[@@E#vDO8M9](1ג\;fE9Uqt[iVC^|n.?94ʄM:ɫ#bzcȼJel|=Neҝ}tsqJv^P];B3p0q¤k ͌ܚbs&Kn6H}O rG1xB|˴^?PRcHOxjMn&*j5ý+ t8ǵ*20C5țӖ^Zh鿀O]Z}e슗Κ#1:8J`+Uew]:ؙdx#VoM"cc;BR|=bP*LaDܧ>Koy)Y #G3p+]K~P Pėr[UWƓTxioagtv.uB]8ha OYe2^kUKQvattl1ƻ6:e;#>L +IAPpײ6QQP84Y^r8ݓsmVQ˻DG8I415zM|,bܐ(u<4N/L7_ٺooʓuj6)|R>'hɫpfD ;JHG FR@|9i79(:›.WBON&(eی3ɲp0EIT\A9DY4y v{cFZϐ?NiES`u*nP~9;:"WCG.|R{wJ:2UQ5 [=wB:mkc9 *d.RS ;WmKc-O0q&5 uWNOire56]򄮫~vnIGHhЗs">NkM0+Z/e!QX^wh8r4 aX_C%Y4_t6x ,!3,%!2vx. 8$ TބsJӐ=h;mLE$op4 y6;w}Z3·UMC&Տp(>ǃ\NbM!̀iݙ 0:hxoS[r]bvl'UYאެ =D񣎋RIE *H'Zl(v+mSsٖV[~QwHOB %?Ѭ n @E^)hk!TV9v`r .R|Z€;%|3l[*_>QB':QV Cvdhuu?j XYUH[ڑhBk^ x+[/&s^{Aeo?ޠ۽,4wi\ )X 2ϥ Iozĉ-lrQ'?3*+%qPWzڱ֗7RS.QT9T*2dqF]d:#V 졋[˻++ՂNCpzy00EB.W3'ΝY]@owXKƼF~AjsT cBFO4Y8mm6l㛤/'68SNRT:([}[/i1JCҙ!mUе+Y?R;ҍXR  uIsxi0dj?q7j1c.i2EsjI&Ζ +9)č[Õ^CۥʷL}27XjmMC3yJS 6;ΪdzQz2#OyowPhg*BxFHBä́lH;^mz P$CeޗŁ\Q1x 1 ܷTm+Y1: R > ^VsˤYew| IRQTE)g۫"_~P#93Q<ڢ f4Ƿ6~ ۶1m# MZn*>|\l$]T/Kb {6$_U[Gߪꔊ><=vkmiv*HMdP^$F?ņ7EÍZ ߸X@}e0x?Pd54,jRk}Ӏ EJ  )s݅xpnHӥAvoU@:e h#! uCx#ZirHS1ܧő_+5d&{BIlvTJAտ,80a#sxo+.8>j!W!g/{˃zk)M]^O~]W͈ ؍< $(|"YlYiK#{ax'~QzЗ-!@p \`;RRDh  CZ$L̿+.a n˿JDpv.To,(H+99e>ak1 hPJ. OcUV灾ax'9.ՖQt (X.N 2OR/.-ߍӀӻ=(l:Xd&s~jUw&@~@avBDۢ*Wѡ7+z9\(?#ksaB] */G4L1M *s~,VcQHOgsĶYsh=rj j ՒP#J1TwPGG$Ü(bFtU݀%ieBwE a'F>:0e)]k; P,lVRom&4e\-5Tu1 Т IiHdPss=Ɉ(]ѸvN.р wiEK'eI<qkbi`bHb7C`iϑv%JqzguTxwᑨuS-ϰ0$, "괣 :s՝;2GpVEnݠXijyo):Or,WD Pvz J6=-\!Gm,6fi-0HC1YâZ*65ya 5Um;Oi,ﺤ#~(<㋱7"Qs/{ї-qn@Mjĝjp\\qflt(i}jRLmY@T_ytSXqU3X/Dq1<~m/i8RVes3pnǮH觩r_go The F74jEls$P7HC7Td*%496:e԰jUt۹L4&s`@K/}qvZ[6&evn0}BdV8"t#DY)E;JiL7ZDxAoP4 *[єԒOfk=;\MZg'ǚ!cl-h?OZ#HW{``yDb) ݉nD3ҪkvȃK1A@PC-gsV6I(';!N CAܹD3A&7tt{ݑӧ⼥3"kPm{js.hwQuN*ϑ=&J/N)88'C;d_a'3Ww`T[:) [eQG@k3'1x5p1oaPh@0h͔6jb+)FE z#X8͔6`Kq&3a>0K`}f:7zQqJe‚p(UPlZS2!R'*S/g3O\"X uM\'Lʴ:o DSpF9FkN60ywNUյ ns͞Ϝ/7{yRL>k|z ܵrӉEÍ-Yұ`lϼ/*OY\J~>8T0̥fy^{Bޮugdfq:){"|$-s[/JLd[R{5<$Z}NB 俕:LV|$31VX|YЦM "ҤyM M #7iHN?O\ 'fN?Mه/t=¸|lԮ 5F!%ɺi(.%z+7XKf7Iccehھ IT\nhSvې]Ar/"T-58-= zARi3wU$5% k) z̄V~bCOjf7PhʭD6 Q[sTfCjuvA~:L4#JJLJ{3E(9}'^7ҳ,_>ٌ W^GY@]֐pA?N0nm7O])zѩ+~SE\W7m5zZoY ̉z:h<} YDp2n?}̢v볦(J![:FNCA76/CFb&db9\lva%uں\xљBlWS0~]4`Ъ'9a2e$h阠N_VyڑgMvڢkj Ŵ[ :0j*ȆFTlqjXנЮ=rʩ_yJU'*q+1"/CفKF: G |U?2ha^Yg`$@qSMM& [xpj}Yw&^.59 Zuw3싏X[6ڍYt٬aZ+!>4ї\cba3Ed!̳4V. ^6j.`ZQ,GVL6&A|k_&O)tu6ǦqX[SYIڴUUy,}ȓ.+q`:+U&"^t/¨u0{Hg&|(|f7] QMf`|]`z"Wn K|usü/w|Gx%eD0yGBp*n`)M#*L sEلd"A֖>"6@b["7? GU FAH|ޏ:B GrtF(zbXŐ5hi0:K#; 6 oGm36\]ؑ{v?p{j9s1%ȸhy1y[AMe- 4ra"Pۈă'ISf3M/nן!w@SJvdslҒ<*gQ*ZD Y{HEwgs!p6DQ'';i އaxZL|(MO igb-/T?.%*6kMevwR Tb@ nhjq\qByfr?! d4gsoSmW1 031B.UX;p[4v$~WMf  U._(zӳw b;CC N[JۆIgp)E4;uO]Ea4c$\T4AYOFhwkE?8Z74}R=uuc@iC %\fF&4ւC<݋64H:PЫ\Y||fYrHmVcʃo5ಪzgN{pKwV6z kQԡt\ 7XR{21+zJgBQ5Ҏ/|溝;@{dc2sf>!Nˊ ta%G|[m;H77#$ J8A雝$ʯE#6~X ,C*-_4;;sIM& N8qnHԄm+;F>/6hObita&9{Xܓ1M=Pd &YrW|cxoP9)qoን-іε7BIH["R̩ }5K! IE?krF)[W)̀vqz)Ɩ+aߗfz}7o~@i[ftNOg&+)DGt h$poKd`*ԣ?[<_YNPYZͺ'=yz2]ˇ{=桁̨3q[`RTBݐm'ik1~IۖѢ1a4g_HىF*}mvhOva;;(><9$MS,M22]e‘ 7O=T|T9&rVӌHzJ_|RABN|fOe"}poبK@=8_֟-S_O!K7+#2;G]3L 8)&}67X['91WQ\+lA8g|UY*(7mCYtPЙ.| AC'ZqH03V&4siqq=Mt?/v~EH G'i][*>K Uj̟u@9ْR0Onn'IsOc,Ӯ3s8D'b^Ġ@wK$d'ha5Qo0\Ԩ_)(e(9lz6dJxRa7 B :sؗ2Ag/kC~C83Y؅nh.=}K LRG[_NavHإNBJ af۲NسـYA@,U;y|{N\D?XW$!N1Уg-+:%RIu]Byܰǽ2Wk=%U߰(f:-s4_t|oAЧ]Eؕ8f>svDP5H?8g- XtqJhLpH ?g^TT"kb'6cX^NlЌJIp8xL+huq ^1zᓶ5T>yOցc`=W`y:`;Y\~^B{s~r-])hnb+2"8ʵT}l m.`{@?kǒ$ׁ<`q*h\wDc'jHr-SSf՘vִClb@QzXlDP/vʽ/VYӘ=_DO)~z@7`LiclEY^H'I?ݘ{8{j72 _.K;2RH0Dۢ0ue7ϬD[2C%ԕ! $R\7MdMZ!Y x\1EFB=r=&q3GZ&T2@l `ɼCsX9gfbcrFSD9vY+xzRgu8W~:dWm H~A3#hqWkC.J$FHR9i,hx|qb݅ WSxc& WNM ~!YHʠveQOItۥǡQf'B})|w5 %ƹM;(N4H<3@[ IK$%]|m܁E6ڄBLm*[b6͉Ȑ%p٬\Z`fQ;7JߡR Q^qL j90aB0m@(o "In0J}5!ĀC?!UH>0;%]iJzOѓbJ(stlc: ~l[ZN3?ló ǹ8ٴ| ?;WW}YLE94f>&[E=~9Op6#%AzաTa eǽ_/T*'"k~D[L R`xhwZ]ӻ"cYyԫFiG"SP2Pޤs@d8sATeèQ,^&t(!:eO5p2$vSTR^_y`헆%ѧӞH:lL&tC}>\v`i`I K g)oy$V$L]m|he1mo8j;GmsJ66HTiQ /J: KZ u<Dk!EZ>I3@Jvڰ|:\>Rؿo͌voN?fSx -+L7(๬ R댧T'S;G!wH- 7CjVNWJU)$9P S;WV5J Thf;[AW6Cj&Zs Ww Iƶd`FL?BpQ VP&%Dθ'$m: _kD/wXIWa-(Q2> 8 %U$K(_̸L\Kxa<7폃 aI8 i]͊'{Xq<LS*kHW2-Z#,Rƕ%=۴ւ*FҿQ 6s=cgsR@ `̥ u!_ VDid>lYRz;TO>[r6yt!㲴_SJfAV=/f0luW1Ɓ& ,1YmZVY{~PP G{3zl}dLlg4Oxa"6{Uɔ iT]|=&[<{&x}%j+j."kzHSk W[ +i(g sL. Bʩ7mUt4Xߒ?^rwjz]%4?7s2fUUCZ&.Ry,'> Lo +rS-ߍXțFI`Rn[l\:+2L3qmJ,(o mr3V* am 0J1Hh|Шz@?&9sn鼌ا d#O:8<|JI91XT14><4ucA\_FI[ݿ}U!ג $ (sK r~/>*=r%ڙ'? \ ʫ:(=V }hZW$+{ub]C4CMz:i7y}# $|j˄sDb#J~ut_g@JQzt'mDbR>) 2pL3c=: 39T'L[nK#Mzo�{켶ӣF)W;=88 ,wӏ!K~ִGp"^T|//T7\=k:94б zB{@d`/`O D(I1N,tT&eSk1Ia71lTkK{  `<ÏeˠOb+LZٹ1Ó;?4z;&U+W5PAT=϶x=CܴiUZx"b 6݌7ј=|W 7TF'@\hQ6vKJ_iZ6; alW*vv Biv!~J`w> L n8l0ȅQ1S'ɪaUoT;d4K>zL,J < }y!L#T@5ҏ,r% +3I#U)lADŽT 9~A#h,+ #T Yͥޢ㐓Rr/ }xU`Q-ԸUmQ4DM(ʲc=G|˛N' ]Ts~ ZAĀryXo{>hȱm.ahi@rVj;:|LM ,P Z #*%8bkN1dDpƓ#hikýnxo G4=.o b՞)ڇA4|r0RD8O٤2y. ]_ߵZ[P]=B'ǂWFOyy3<`FDrhi4M0yܡ$ ݽ #9is S8Hr`T+M L6e2Nzzk9ewb[fZ{EO5?r=KTD)a?!]AhRXg \gCl՘geGyF3I<%@hZ0(ć`mrRnz(a}$FN2I.ktLҗuQz.6% (NŪZ#8E5 .ťRrgʏ%njmqu\s< f=$AM{n *;ș6!z+geDi#4raƻEԺꑥ1^sP"%4n3N$|czQMonZvgN*vt;goXĻEyBſi[3Ⱥm]JU6N;]W%/t-eevbD=b,o)'>+T/ nL#|6z{ppJF'ñpq tRΒ˞k2alݐT Ȅ6rw^_>(Ex;QqrP/3I{"xk^x X\z:NtjMhiݮIA(Lg6 Ib\mE  \xKUqI#Lγܤ"M]$ɤÚzIzx  dc>!ye~Pwj<2{ |TپL;{D(7]O:;5/?> B\$yÏdY ]$KD8( vs/wXNפolE l`!)'D@6v]fE^fص,~N}_ s#9+n33b_gʄKQ-J7Tzҝ/5S/,/d"ڱ&j*ݿP9aL;*HS9N8g(7R",>}͑$gdjnDJ9&d (^U,k#'x3J4]ۯ&G7%#bccnh\xDmǃȌxI)©(HBc?THkAjDs)Y-^.|Ip;Yqq-Smc"ҀZ  {[$kFNKWl+>#aZ$Ӧw&LX q!-CQnТl2s3YևyVХ<t-/T.}," RW KڮLKc2[Q.Aty>ו#GfD]o}"WQ:>M k]39&=-7U\ViK@oE=Y"fi{dl;Ft,{1l&KL)JgK{\Sj$0C,D% 0ΥȘQ\}KS_ԜOUc+sS&޹q S0Eqjipeߌ&cpwU+KdRPtM.=N`KwhZ%Lol߮qI*M%zwz}N 8$Se+Uip3NR$"0,e7;!; gk5~Iۥzd#kRFBi["b<L$+3/dd7S6(t_!KƐ۪:} =[Xcb̾b<%ެ~H+jkbeWȺ":eJ9CzN)_nAwU-sS<quת:a$AbĕKASCiؤ3(ل{ȹbnVۍ~›le.BDwڑ(j)ZAXOhk4(HQ.vѶRA H=ۺ_wSsgاl`aa iӄ0 Vn+fśݧ@g^J{L1 tGG__EE&(@N`H}!]rfB,g"t)) ҹ{I-iN2GuFKu-Z&#9~dwSwk^mR)C7pY :r>lR@z؈6wy>qHoaz!:§ Ert j8WTLPgO>@>"t>lv_44#0L*Wf#Udߋ =BLQ/WK<.fڡe&|`b`d35p\?.GQ,;ɰmǙukN[;v75 [؁GnV= q<( ? ԅ I] #97^[JRu*"6CNAUM @۠`\o8̈lwO!c5Æ »xUSha_&wKaWpݽ ?H.1Q;ҐU}W`,h~gֈGQ׵ )EQ8@͐%F9krfQU:F\>Bm~`c#M%M+be b`WA6y4^>ވڏ\DV'd:o\TH5> 3E;ē3A1X *hDRקk W/<.u]i8%a%yU7g(}NɨF:Ej<isH5 )Ʃn{zxz/[ CwYrevf9&7h$QN_ B*Ab NʅEĒ jzXE4. [{{Dor=&9',?ç!GGxĒE.ao<,]CLdV[JkwHY0l1k3Tݚ4LObrC7$9dz ''vx5ƘSvEM8qF]3L@f@q;q.Y8eB|d mg8_+aAi}$lg8xBnXkȰ@ְӊX!?AVL r p v_x'_.Y@AsSYvN (i~}M\qaɿi~%I\4}_Yĕ"93ef'b1_]T"rms7LE<áH!Gg.0YC{:G6xVD3 ZT`DP閭AS,)SO64%'\'3zFYCYe`q+<9.R+ jg/L.#_G_CIGh5^gz"{\ )ـ@X/ۃ'/Jj{P66t)OKZ=kN3v3H3M@j~Ї9 *f64~ɢ~"1u` hؒq_Ye $I߿nQ-dAU/dଘ$zVtsheDâB `ih} MHO;D=T%v {C͐-@SnVnSxG=B sG.OY DŽ@IlO 4Vl*pl:z?iM#> PLӥʺ0)tk^;'O,lvQN>zl;AC"c] X1ׄrP$AsZ.u܍k*B uuኳ8cqFJh]\ yphs0R_p[3*ȋ!TR³3EX΂$mw7X+L7;10a"ǜ2Gc+^ |B,]g3{e3db2bJ-QK~I%O OƢlisw?ή87>_ql{uKlI(ޥ֞]\-r>0ۛ/xۓѰ< ?I 'IeՇ:j<ݐ06B|[o$>g_Z7oMrXoBi%LҎnH 9R[/iCMTnV3,2p\i8M-i1 aԶ=MP.:HX`-PE>:-c NK6\"L5`rD"+T@ F c8lRّU<>Jncp6Ʃg520ֱ}Pw5@}yY&F% >N'u#3Aj$`gAXAiezX,iʨ|8Lzu#?S<`6 ݉&2svֆY7M <@B)2~5A˼F:{DgLU#yklF m("&CH@=p@›$y_̀GՉ̕)Bagpn6V~_e#lxæe|: ^"/-{!䌛2֜(BEci_m "Ǥb${qh ?H'aWd%[ca[Qf͜T(D`1 (k3r3*;!EXf4wgERwomLO,s:ޅmF)r ):shR C҇)CӅJ]T4l6RqDB.k$f^Z-5;&qV䠇 VJیg*1'Q -'l ?9B':![bH *B _KN#@4cKį8p"r5b㚺[?~N޺X`h^ ѥrtBcVfW=|O41U(iDR|G.k ()~誋YNV8.Z1]P%[!~=WYY&t{ :RkC/SRd°4Tty05?2-á #EAo `@}^&"x9b*pDg/#p;пVNUXbWc ,g)¸\&OYLcHeMy([0jn`#;$,3 ' 4R :jxI{?fr0q}N`|p4;vοf;8ݵ~op4Gt4U] V ,1:lN&=CP[>ׇ1xoVM{.fP=@G\K@Avd]~4PKFP} >[Y 8. x)Mb3hJ,gXX,NFt2v\~q֊?%UtVL[e8 ' Abqm3i@ZE4MP B$Ԫ/P݋Ut  ꍍ+ F\Sf.1&x=Vh#o!m%DtfݲC̆C*wD34z59Mu}\Wء qn lzFzxl:lk"8yIM') Mt& 5N a'T?jEB5;Ry 8Q?<r61JrǺ(q[1SX"3 r1ڪ5դ3'ω6w@KqZWU#rךw_\k zy8Jdn"_*?qŐG~0ɗ,NF:ח`%]/"hytRgZGhKh8cveA QK:6}..D[xI#f]h?4r! z%D)>?JӢJLJ EZGFIE3aFvjѹ|UCJaO^"&ᓻoN_0xUB㿮HcEKq|vEϥm1|4-v^"[NJʪQ'rqO./@P1☵hv"|=f)jg1iPE~Yl+]ERKHxs*?[ψ7{S2jnLZ ζMm~t[ e!) @o& ikdMqk[B澪b,*I/(@?.%!@}ƣɛ*=*4݀ yXwMʗm`oCžY[db&q'jd]@M mE3M㋓|5"`r*$#X{ӌc-v,,uS7С!$֥wcRu]:5٨@2ֈkYٵzT4qeg] S3n GY^]h8\ a[L@ŽjO+9 =&@Z,\~\6e10RE|:U&A,%mZsW/\kC`1,E{!R%>]Hs.E:(ܖIfD; &;G o߸m(vg8} ~ ؓEIqiHl>87,.a)6P>[e,cK kg",e1C͕.]н Y B"M} ;?-> qsFOm3pÖZm,; : r,tUʨh:j5(~W|@,ܛp~LfcG{''5LqV4p\X|8CK`BQ'*mѨ{_TQ}+]RVDJѴS+?L,Y͙"P P.&gdw~ /BW ?ZA,9(͞-DTz'r_>Ҥ* a`=u;"1HWf7Xe 6[C**DÀVP!Z+`*7W>R=" xKr`=JW΀lEu:QGKq7!*̳1Y!O,ҞFt)B8HZt^ }Ě7R_^>$GLT{4Uf(;|Tlj>m#Jsiqp1VcJXӔy4` !f荚Ӌ :!nV~ԆK0N!ww 6!}s\1 9%I{[>-id3Q+Z z!U WDȃ%㚤`]>!k {4kfYKioԂD_ȼֶJ(`%@e=Z1tSGVϔQ `5{Bst˖VPžjUVRXWWh BP ovEXNevxO} AzSW~| qT[%x˴B %zyd4)8 ]*lEQ{:^,w#>ZS+s LrXD{K9ĨڏTaᓟׯn e_0h~g;zcR5Z}zԒCvufYPf!к"VeїKC0 G<2~ W+-Zp)9$JVUDH q;ł0<M\<v+t{/sXbEZ+uz׆Mh+Jr"RK\83'D^IΣP$x%l OUa7<=,4FRYw}CiW*FY!ij1p&q1rȜxɉoЏ. rKh~$gD2aӮ^RP hrxI].[^\>K2Z c +!cI>P\6XKzT nD|[JY5,%,R)HnVM oPΧzڰo#3DžnGIj^PQE:u8ls~*36yF jܺg$?BB>6%r?XN*2x3A vGLW: E`ohށ\h~2}j- Hj h^b͘p5 ~T<[PGv$fOkl)̃'Hb[ Q?T=gy /v+' # x_n4!̂=܅#s{L MqՓӵ/uaf5E fdqnIY 0cE!>fHM  D ˶ppŰFQPMo P 귋=]WoH5o9*sut̽8x-J[T*LE["}݋rewt/:]1nB@H]aE  ⓂjC$V['9zXV\{?\vʸfpBIWa'um-Zme*l|ʚ[ƠxT>91 ~M,JW[f.y'1CYשvL](r# We sc27r1b`%bPˣ֫*6QܾĥgmY ߸c\8`s  DQ2T$q{OyR=UŰ4*ghZB&b_GuNEi/.;KI\j 1Yޭ<ܑKeY%4Ԡڟ`ҼRϠbRYN9^gד6($."Rt6 .Lr8éK1`"ps~ 2-Q5ZDmN7Wg](d)븿5_Q3J eWކh7KɅm{pSawYvMI)!CeXwQg{lonN{E9z)W L#0qbaԊNFro1oN*@MBiD_ޙ2WJ 4="|XU\oY0Ŕ)tr} `@WPoyf#x:>;\%}Ăq,Rկf+A+Vݼd7휔˪h9}xV x=~=2MvvzLџA޼_}'t3d9.q?YS::'^2 g-u=g>{=P@uGe3KjQI$TtS,3BݬRzLra5&.-šby.NHK  -qYdF"vY{n} K;YO՞`R;ܦ7;Baː5gٽWVyVwdn((؉5dsb;Juo%,ꐷAeC-@zRnwKU =m}ޟDTL,PߏMݷGc^jMH .ۯ ڸ2/YiFkQ֥Ht/K>1ԖHFM5/ ɰqTz:.ԴywaW y?FIB(Wj*W67d@{lEjDB 1KֱD'zF$3zX${ouQ d6_,xʼn`TpEw c&Z|k2'qA8rU{hG*8Va"OE*BFaOQ'Fx h9(ڧ,&nm*~whAĩ"պF`yF@4ޙ*Ol(pe$#a|A_.j)JE%va=ls:p0e̛vxj+IEwgPh5w$xF.Mᦨ9?g7b|3LW.VIr\Ъ`l~BdIh &?"ZA&ϰ|~}hϢ 01ƏeA- b`e` x8Е0D]*m.a _}P>jћCσt\GмG;/-M72C^!~]OIJT,M}>#tIlQAt^7|d҅pR[>~a{YNV`6j~Q&jFtF,۵tv Up ︐ ئ<( zʢ_&ۦIj(+Y`}%k͉j/O@Fi}卽,dz,ov`U"3FV ̔>x7x84rؗl}}ǬF6и{Zj]#YEj]fG@c^ -Xx`flnT|UI $b ؗ_>N%Djxho Z[@ů(PgKc{0P0Lik~ƥ=&9jd^#^K||,6Zi16u}ъ*WI-Ihw;?uv]HxQ-Gklկ}y\!x']!qWZn`z2׸<)S/`1' fpmg:"@ȩ"o[`TNWMAhf?1FD^9vc"ެͱLr0`7X\Awl9;w wRvmj*@y[ʄ2JяYP޷jwu< TJep]{y/{/)l;7AGeQk-JkNtPVOH0žb7nM 8!?B0H)l% nk#v!qP`R4a;8-TtAʱ[V[p\n,|!S粦_ثAk eChˋzMĉVg< K뾊ޤXG(|Ft|xÄyL4zS@Iӝˑ`~N撤3U\xu7VO~Jvn"LBT2-vXDN묆1!…SMq̠7]B|kae5da$Np,ƋG">oH vLv ľQx0ceڏ[x /mim(Di9DgL,q_aS^x^_!wYJeƱ6P#q͊ -ώUl 7I--Lp׽=odH;6xY_p ~k5$k)s_ݜ?85&V Fld^26VO`#9:^i:btc3%S(h}<̏s V^fyO?H sޒ9Tq"JT#ZLU֏o:r+{&#CZMT24`罐^ 陙fȀH,(j-NYȥ"!ފƬCrv.2fj_QF^"CFǩ,Diof/E)v!(rD^! CN YL""Ǣ"C]:KUA#J @Y6@ؼ+`lVSb_ZoC-5zSAVUlxgC 1 ;^#8&I$c.L`]___VB1`y2˂@2cQ<鼁$(gSȱlш^P,ZߥO0/OCF>bU=Vz4{vc>B!NvwFͭ#B'](LMbNv.p :+$@ݝb 76VOG[с" 9}~QBӖ1Re>.6XK>PgZxcld|(f]U`ϋǧ\:FBiZAz%'NW;^9nINl+oxZ'"R`wa`eZ"whGsx60|#r͹,߉M [n^2֟3$NV[Z~N@f8+Cmo?fTKOt$D>Jɝw &v1* |f,zۢ^%Ğ1*_BK=)2sMk{a<`G{'E~2kq~S1V\ϻ<^~&{:h<ە/3'wө qdZ 4(.|9*[ZiwZ~G0A9Y`"St0gH$aœu*W6UBXjZdj*mٺ#>A-1!OH:ʠT[~V(:b'o ^P曨kDpdFn~ G{)u4kWL1&;_z4UN%q-X 5\h.mmWCwoU͎QUڵh=.;@H '2 gU X';a/dsq2`qt|{t8GKFD5Zt"J^U%Wd5xUWr%*}>(b=JLA %jLjbX$ň~cײqR)0|8(Za`MmGa1U%*>54 ap@Sq=w_RnP B( r P0>$`q"j,BkP-~xSq;919 W[aD dat5!(Tg$$R׭tsK) _@g ܽboPBhߵˮ{{a_TXa]ӑ.#anrH584I9-~ HNe/b$YԦnՖnڰտ= I,W vfDošyqF,GCf.b٣p^CMP+ mI1Zvlf4;7yeq#e?S #܇ت["L-HBmp!xꄼ5 ʼ`EVZ1(=Yg))s- XHcm]./M GpP§o,͂1*Az Rzz}$i{#BPAuQJt4)?,dy}{$xt@^A8m,t@oBd/ҖbSEnqV@ \ yF w5H}4I Я}ltqS 3r틩 =+L('J0݉VƘwH-g-SJbCVXlUG?k~iF'ct=bY߀pe WЍkJU60!?Ɉ:  E)u0`TZޘO0F ӡrx}<춉'E6JAȷu3gZ toK> bk7+{?ud;J˛_~XY礣!7֒#-LA)#c8Ξ'xfސ"Ǜgby},.<&*MR٢|!h>=qr&U-rK^}'R!lk@`i6* p)?n,{=X}A58I9T1+TF#KאvQDӕvTUT)]Rq=k1\IFcSŠL]5L Mp6]AFն;]U񧈖(nv eA\T$F٥^Ḓֺ/z @`G[yhe/Dh\qK6"p^%݇#Ŏ}kb4lNW }>RS3+ /ҪKI 9 'y6*V^_0hc]jwIq]_3dRAgϝ?4`"DH\={ţN3_e{n$W<@ H^8ϕ52:zݭC̎3lL۱`heFf87l$ MxO l z|n\Gf;97h'&EN8Mh-t&{rKSu`CJpm xL60/l_8D9pW">œ JHOF;9T $|c vHM̢:Z [2zQ hJ_?I'k_BӹŲwV +znŲU0fZ C2Mg% g\ B\^ODOy F‚سgM}ζwZJ.A+㴯R] YD>@7T KT,4ؑ\:$ЁE7w0%9R1W[og}__ [$<4 sS]wPI&>b{fzOmBZlUB^'yXdUEX:AnH.!9;p i[OH5/5]a{?~We>!"-uKn f^J<90V&?V(k1gzm[&}^_h~> iYH}N^:Z.ɹθfc,>}ٜPCI\dujs"dqk.g!}w"vU[Hjp?hdm牢\=QǚE+^6d?$Aͣ]bQ_)_aSd 4O`=bcu@ݳ*a#+=d[:tUݨ\ c%^v)X60:t}ikc3j'x2.Eɇ~%LQsޠ]iO20 `M|2 * P0{c).:Q D_B~eC(=O0lG ҵYa)Lg&5H݃1^j0E TTT:q9]a} ׷ !Jj 'cKlOb|(r9WB2]a_С;K]cbﬥwp#T~F=:glk/B9 U5!*?uhƣN5㝉䩤dAG 3Irj5?I[;BSb&]# A{jd+&TG(ŧ׷a&f̂q'T[?Z t;bs/T/Kࡷn1Bת%畑e |rڴb?Տy%n6bCr8Ex%Kqm_8h|?0bQ'9wn4KI 5cvy*LbvV)՚%*c5fh+2ڮWO݂$9TUb\8qarQ-͵NqqN3eH> 󢗌fOqQSU05Vydz[jA]N4m\pFgҲ^4p³m)ga8E}(W&"t;L@yx^( 5gI}-q4O.[|oBp-t&t@;G=K5I Nퟯ/JR7E& !2X@?xϮ~V$[CKM> 0Xɮ|@X(nH ]s|xj_3y;* TfZPmnl=3ľ({EŘ',nByFi߈iX_|haq)H}H乛+ ~-#nӣӘd"n0Cmӧ 5b62G(̄pX{o74m]gܝj)v.;<ڴ *\5rkYG-0Qkb{iۆGE$ x oj2i-Slȱ #nrRTKvbMF :J_z+(Yjmxt.Z(6S9ؑX1aľ]Z=t`{ ML3φGyiꟐUJjC^dPK17\aRD;bưSF -QvQ1&9)ݻ@vzgCXr( N(Ko%Uג OLH GR)_ږ< ͎OsFn Q}KEX ']P,dJB^v׋~.R59'NλۢT@Vy5_rwʅ_?S\js1܊~')p7XzGlUp@[ ?km‰yvRFt+8[>S`=MuyZ 77H ?rtϪ=;4ZD FF`+*ʕQKn' P$*ELґnь(rF҆Bw(<we[tB j.!,3QGt57'~\WLL pd`wMqX}1TSr3A&KeSAՉٷ<_ȿ (awN{AbrէZCNR9<$jB"!z,̡6~D*p-/6xa-FlA8./U#y vxectaRۚS+w`kWOK/K6 sYæ-A vu>V;{Y`vA6l7l\+f! FkY,R B>tWP8ș Ie~4o $Y0@)EA8:>0+cB>9'}_ q<< ӺO̓j~M"zuW5g-}-8X_.fKi#kH1 L$)ޜmٿ EmR{PF/{^^{;TEpt{d^bO`dIRFBzQ_Wd|<maxB\}GJn&ٞg{TJ}d0CAg'`a=3+Eew~:O89JD,EHfUy1̦mv_mBjKByGlM;dùsicoө# H T\CX]H _ f! U0yU$;,V.6ÀN,miO$ʻ^'FDѺ m3N@Ki^{6e|( _Ez}C3R tGN:K+)B˪_>w iT14gja⵭0>i x M9`{E*"F.ڽ|vCx\؉|~uO-, }룆;--ew_ {C=*O0QVΉ;Aj@낋A~!v\{f ?NE [y0q 5F]edPn.ENտ] zMmqJ\_7#fă Ʊv5]qP;x<#m,b*VϹ͕'bIAqO(sK\+S?IZ}?CE{t*c ۀG4iTCʳ~4L9V6wBZ^WbV+ c*ΓٙG:k<}iF"3#%Ѡxv!#Wkӷ  =2XOQr5Bp~Y[j+&tq_iڛ"4Tݑ)h+O#-߄$l o׿-%d*mMf̝}8qaHQyQM^SEa$&F>Fk9RxR0&ZM=_R5pzmطty,UN?XI1CJ[R] F)BuXks1}W_Tb f,B,zvrZZ}Zsq(D ϩbJ%4OGp-LZM BŤډŔT{R|E$Qޜ Cm["yo+elj֞  /*SN GP 0ëZs.syy!gn2M6-أdv6Qr?Zlv'oJ%Ft ѯUimG{zbj\pOʿ,;= (;jcn^p">9`o ;[pAh]]0Ms֣Xmg7K6εRȳAĖ=pG .ݐYd'㣟-ep2MsXqY..|aV0}biЖJ `ǯǥӠ#TK!qmiA}cYo|s֔dX(Jpq5҉;D X< ~΀k>,wfy [cX 7qyhKd X9}@vP>wj6>~ eJ J#?WzjCYRΕ]ϨYf3/~ qAΡ1!JY/g 5a%5+ HZ Vx}wwfjq`mX֫`E]ٓ 9Z"X9*:)N7Cky)o9x^+tP7ںbǵ)-t'F1Y޴;B|ֳ3 7@Rt/_P)WUO^@Qם8pwHVQ=I*+5ML@ɴl,C&0=Pi?q|8%xR5i#!{7xqT\WC/'Iu6#ɃvK$f"? +Z *°/a8})1&'1s5z$.V13Kg1^(HE?Z'=U@L5@Y?F!49.\E{{=Lm U␝O+b hL}g'n $Kթ$IΏd&ɺ$2h&eU3\қW2]V9]S[bJ;)Zf;DZY !ε; d aq1#$ܘΦ!y|Äa5c!Ypa8XVBTϒ3_'j7s6{#"a +MwU@)"ADX3e\C"bJ`4ߕhLP'Wm9 M$ɫ[?sV*-f7@tm+}[]J/eI>>=@ ttyj,`s9C%`Kq f3!("9 ^&~I1Tx+KQQK}zXN'fx`%)n(Zŭ;x 325H&zlD$a!M' A Ac|N '˿=p+۷kWvBMq[D9 c$#,=M߻1&[AO.߅ ,1Pw&"8΅[>$ 뛓>V yD*T K[ԣn|p ;³<jЇƗ'Q6~Hj۽TB!OɍXF~pcb_:_Ss#J[ѐ㉕1H랾c!6zוvf\,JV7R=6fÓkoh c@/*It*كdV$Pk"H)$Miqb<3AS_n%Q/xIWgC?`S\B Q*2l")ςj"HJOCypήxcG| +%&N~*tUIY~Cmɚ[Xsk|8-R$z\񹊲n^t|UԮ:upA[kpj^8j?87V3f Ze%W_K7+|8U75u>bn&`?-GW/K؏^$ƪ,*: fF,26bFȯA1S^D@qyb}WVp8 ̮v? ^(16R:2xŪo 3u fK =&|=Py$GɆ\-)'wx.$-Z-dϘʎPcZV.$>E}2x3klWL^W[ OqY.)rWBI1RVk^*aяMf_QwżDE~^Om~D[gIhBUX!7*iq?U*'JG{  4*?6(9}k>r#L߮9T4K1#xǬЊ a0<#F,\J?q8rKEgkF.ٌ#'z'vCnBwӗр> PW B %_SӉB%~1 C a͋IUn,P~0zp@%*aCM[FRz60t=1e~+׸;:2"P^ sָ(4Ī~޿=Vsj=inuMhw,O/o6G~ dF *3p!_֤D>5 N)3yDS^oZ^nCOv!pHڗϣ7cTd^/9j?=T#]K զN@p:[=N>ߗsH0.&g)H i/'ܟtMQftOrR=r^:VL*DpXP׸YZKMU)ep~!JMfG=D,f81=S7v ex:w& Q-NA.̶/? J|h'誒"^JcCK_rFhǢCWA&;z* Dz<(y M~Nlvo"lsjZkyÓ  !փO {(K)HW[GGL2iw,~!J+WN4]7Z449T~_T4^"=H#Ɂ:Br=͊*k%Ȩ}=MϟܱOq[NƗ@de\9>/5_s\,`Q߇9;c$LmRPZry sҌdگ~[%ACi.8DϚIH6˷8L7Ğض୚[AwaY2ڐZrll?NM882{̢d yWn%XB7TuoL1ͻ90hDWi?Բ "QFۥ׮A%i\s9+W}c 8.No3 "gǓiHbF( F]NG]K /KgZgU=m͗XE!\̥@ϕ;Rpu -ށyhtN|}?26`}6<tݤ?ICDuAfVe9NSͭga.UFҲquV 38ޭa M~gLL( 5X痼v]f Eǰnjzs7+yoHUʼn hኸkZ1Ξ׉A5o %xr H QQχG<ܣ-6z1^z@|F^LHx*'xX,ὥuF>3e+Gj6?\P0CwdR;;]AOq?ҡq_Ф.0;g|r@<Ҿ;&|) t| YO%m0uYwǚq{>/BByI`{*3 ǼIBk28w C`773}Mʥ&oUkU$bq/Ƙ@\SͰ}C>L~녬@TYmz'vY=5n'hiц)Ѵ\%!@=M]/-v)= L>UknV~%aX@nn`󄿧"*$S͐<ߊi" 7!,u}r)^D:|ڌݛ##al =N]0A:oz5ψw#&#(>Ryt^YƻU/y4Vvqp%9YBYG6@JRsLs~f_9!,4 .C++Z :Ve{`P7~?GNCB INH";Z]Jk #L;5D:'e62f_]0u"j KZ6r_A:]#Ov Vg-f-ʍb7,5R$fc|J+ -_3|D/j~^ ynf:+eN&Rˠ'ʦbm1Z-Jy22|})6s[Ԋ#4?+q{PSzrASDl|@ǫ7)AiЦJ0M;#Mz%5_m,Q;kiN(ݎ3&9?+Uuȣ؃Ot /.ڰR d#oV_/=u `WAA mD<9l]jGA<=JRLo8UuMNTNg̼, \A[ _ai֑5E !tb^Lcݹ(oY/nyqR#m.Nw3ClBFJ:=ɿ%Aم5GXUv(zR}B@SO,,򿤟AЍ4g/S!T:G$8Jޫ8oa[Et!BʠCc%}ف$2%Zƈ 0Vvȡ V@akɄv~qV۪ q)4'SGo:Q@=#0lSU[\#9{Qoq+/ny5 Me3W9FS&#a`/@r*M0Xa cR83- ]Vz佫hwDvKOPYT fB;0QPy[5^zh<[Ĉ+Y"zSu/7*첨6 `+%_`:\I =LBI1:@>;yˌ\*k/X81}j:Ad)ۯ̇aEbR1Dv5SQZ=&eN'6rLG)pgPWz RS$:f\9@ ;\a #D&376f=R'JZ ;[&89` _;nKXmp (K)[.Zܫ7mQ@XzwΛfjVMH+|!RDC GuE?_lhN h$tNyZF7=IT,uy[E$m)au3=(Xb\T:ߘK{6+^d5'6I+=sΏvTfy-8thЂ |'{qڳ+h"cc!sRtt6N^hie\;`6}"uoMdL~&("4H\a9SSK5<j*=RfNJN)-{Z}IeE-kTkyH#\TmP|>x97ݯ{*:d^Z:9?0 C7U.{ Co\s0\8d/ĭA1M g/8[7U&$jz1?Ǟy+7}pp,Q鞾feΞ쿢Px?^%Վ܉V2DAC4:U-Dv޻PK+O+",Da eƦo/<$H}*r6qBjV `#V %;UM|u9:C&mE/E#oh禐7RW%崆VyçGgW7\J4f(%^zaʉ>`Uf-__oec`bx.(HIvnC*/+Fn nY`eG>r6)m8V7y^=s&v*FNH#$/*8dvRv#ĭ ~bk>p,}#adȘ-9&7ŭU)LYRɵ3+G+V-(1j_?rL^_t^rf,LżcZYr9e0~1?CN֕b)?n1p,C4V4͵Ubs$/4Pj.X5/td3ԭ3S;)؛z:XvYiq*k&W.Ibs0PURܞ` Sk.~<D? ?Uґ05abɌYecgFS5Ë 1%37@~}yaۻJ]75OZ^ rVPًwǹT}`ڡ\xmz~1 F|-#V{K FC0Dr +uaf&40S\ o+i !`°k c6WZ"lrw>Mn nR̯SaOb`6MY`[dx8rV|O`"`!Z%g@kũMzyVǛvZ$y]_GRx~"4"$cZwIS!؅DķXiPö'c㬔y雊hY"9jk 4%$GHW q9sɯ3#tdnɩËvVbBTpE!KkyH“P΢"JkcyS#AH} >n Z}om+o664RPM5 Pw :sh G樝vKqm;|=cW_Z=}>75adtOoaћJ8TLtk:Iq F{V̥2gqR8Ye,DctMhx}yrͮM@]_Wku.0ƌ%\YB[ S7ˇp2"y\s#~zo(ۧXɈfVB_f\)g̎|>K\ȃp8[۠2 2}>-iZfIν2WBfY-L6&2E IMXc$`;CEiHжyRW)zzHgD98Uw\v`~ž2Sùۖu=νj5{޳Myv)m$7ݹM]z}HwD%әvMRk+=KP~s[A.Lڧ#QO=&MNۋ /gSާ&+(^9ຑt@ύWf_( zGߐBi}JٷKYˤ7+h:2X S(+)[?ٙn.艢 es ?&uHPCA?hYFO;HIBf XM ODB#X9zUHI(кBh4*!1.Pf;6]UCJo)mV 9PK]:8M{fË&iӤxքdf.٫]a6'py}6< =Ll/hj"r y/3?iJ쉓4ytTh'pA23soUCIoCeSܨoaWM&Rym*a}2C"<clF@)Jmc~;豦-b5x$y! t0D)ӵWMzy;88XҚ.J=s>g 7w/]]`N>WΒ۽ kɂfH7=I{6pڮ_;U^x*Z=O.Pe9P脻Aq,Зf[4`|^4_rjImb=?| ҅kOWww4d |@0$uUg8 pω|"Os0RB>:BDZvN '!8خ")JRQyh4Ym&PR+0&WjG uD9F 6|W# 1d/h܂wAƮ}aB XV b:muQk[&0oKe YdW{H+9oP))'wLzV"Q(9.%9K"ݻ L(IVˆVL[,O><>%`+ߘ#)V6nĊ잌+_{(s&ں%#vJU@|VCAcVfsu;.)fTHW\,kzq̷s{xfzMF)4 K22zz@;(2Ź7E"yN:΀fT}g„%,V]&V Kt lVǝ/ydvh)ڇuD Z#k"HEi5F"ўz,rڴ33VRfLX-bC>Lѥ Mý>,re6=Y2qID8hG.%{sYSϋ. aUR떢/5R?rq5?1a Km Ev,L"cv-@vh~l;:j* ojn6D "zY:'!-^! R&$v)|$ۭ׹%%E- gV  DRH1) kϿQǯ9'gL7GvJ뛄Dž0_ȰE0u}GjT\ư&>*~@4,h˭BmYp +ᅇE>pmwpېD ,2,6pb{KTl;oY<  ǂV: Y+C+WJ^c vZ@@42R\wل.x݂eZb AEp/'=1*"ڠ}+Nr+rojѳ>WAx{{ s34rroAMn0 o4<ui2*,']tp̝Nwr%)ar,4,WTZᅲ݅iBJ,{QK'V)"T '}k^XKDS9@3p[!1YÄ;:|#ϲZ?FP"-23'j'3}LQѺ/.ۦ=0.4k@ _.@66:"0C hQY6sƔ$*o%/5]VK{kv6i0zϘr4%84µ6M3+85U,6xNJ_?;=@]c1p=} /IQЉՋ7F5'g8^؇kLò^ xO[B(3C6i4P34#)o';ԉ$pÕD4nPբ)5k1GγY+g"cH7'lL´a*vdޝmyf UymlsԴR$Bꫵ7b,Zpupfz w6pOJdF6 _MiQջAtȃBuWڑ "ænqDqK7פQ@p-wxR:U2Idg4[L1WHyJU")C`^j< _1h6$`<[.2`vA}۠ @Hdy[1O9g+: 'aS?~ 'VHt}Zjhj{jዹV NzS$g^_4+bF @^ү qsd&\s[v6VHW<\lYgM?؀u8J [PHIG' )lI7hcu%v3#_.|>h-(zcʩ.$m{jf|D>Uşƣ0:kv5imp]ՊŃ t:! a8{£uaqj#Pd{ʕD|HΌ7Ϻӿ1Ys##/MrJFjZ$pIW@uR$~<跜 j'x&pʔ P!<8|y*P8]ԉ%`TK?>!k y) 5#҃c hu"B(|R;tM}`d'Lbbº*`}g72L}-: O<6\@Ζ'R-c#cZ|_~82Յ7w~ʸ1V\*fz>l=)_Nd7Of#9E -&.#meP/JT܀%&}@a-̄ @6>jxk%d6ea*z?I>moNZ{:Gy ]y\YO?^)pe ,{UƘ!g{D2Yv P5sr` }`&^.|UW2S6᳟"(e6Q4u`n a'6skxzp[\{ҊUiAG)8M*L/f`1H?Dz ʵ.f^IqIFZP莎ai鴃ָusVӾHb']\NܬE;D %`QP̃r|ӥ‹/lniB `fkH9CŨS#69LqcP?zcFDNe=U8WȜJڴ}(ޥ\[q}Cd!Qk3NTΘٙrY*w (V,p:Ϧ"Fuh {0]9 Rv4sG4ľ}~f,]Tp_%zk̛aO_wΞ1UF x?D:dvM }+q %G^n/ *=]Eҵ:OJl-eC^^U'5yG986!D?zr/R9LP󣔱Ƨ5`/>ǷU?5?)||)) Cy߬DZ+?(:v `!k&`fK("z9F̧etfuiKx!(;9`.uA9 !r 0Wtm˪GyD$y'C$%[WGPR dSTJC򹭏Ufw UOh X8R[o 7~6@vбg0GA FP=!VO_R2^ =۶zwFRV~!g3E0>3t<aV|0엿 @C h/󝷣7^DtK7=G,ķ<mõ6iSʰr6t*`mbzK5}Su˾,2)m2*dT n#%ގA=@f$1MS-60BXDn(IE!7&9{C9'I@ؕ[\sGtd i!6MyopF26ұF˯Bh9٩CA>iŁX[1O.ҧ9mZA~nQ~ݩݟ7d;Eh=mL8 edxdȦ`pd>؅pWcfqɌJ.<{_ʼ(,+zRs{ r4icͺuR/l}I|Gg"$Y2&\ 87b:ĉSڎE,S : C*Vg)ȇ3?t%dGT-)_ibˤ0c=K甦t84s)1$%[::KNN|L]uO׶K F$qskGG壕57R]G9~UxH@ V阚]:2Nm_yR)s"~rUnCXԆ"O]l5hdMʗCkOFw1R!'6TN]x@F]OeʞM@#Zn8^5 Y+ʙz@sꌐ(PԅNVnvx̢p/?El'f9[amȆ#}b *#sFXIFRZ )T0ދIP՚C*|{ǔeUِb"W8­[ڊaeCNxDp=+>@6IE>l?[.e0 !6RtвXm%Eg1[TP> (.!EaŒŪ̍V%:46KcaA 8d Xªd3- H N~ ESO8/NFi!ֻ7/yl%DY<siT^x߱I!YKM R:p)m*!Ծ&d tim$yƉ3B¯𾻀ū!86~l~tvUV"l4DšNDwgҝ[r)ܴ *Q--Kh *Fϼ<}R"OCГpb4JݵC Wg}L׽.8J?'|!A/ʎuGNĶrdΌ3RihNs  $9( ; r#ʰ^cS#V<*v{rۍ %Nic'T6I8F=,׆:KxaeFLx`ߴ*ĵnTK17V5J!8pء4c*C:QN(dŹ\mn_E24YBtJ ~zD_ gwK6]]4JyBѓϷ'?uIw?Q㽕Lk[Y Jwg4Tymu{6%I{4$ʺ[5 ں< h/߆t3kݟiLGλ7nlZ>ȭ XnB5kP/$Q WB Gk~ "+p.z.`czP/BTeAG~Xnl؋5E?h/U59,M ?uI~ӼUOi6oK:>,&^X9k_H$[{Jⅎ}+~.F$vċtXimh-B,qbI`06sXU [4X;PWMf1$LD`VV`MpInو]D2n[Ƨ&K54=/ ۬mXqi]rpY{TMO/?nWz14E-~il i(Ʋ*cάy"z&n~M|ӆJZ2DjZąLeBOv78Z+26M)֤7x&$ee.1Cu IH7^/F/wRt`C5<{?bWJBz\t Yf h/ zrIg<i cb|!4xG!E7[Ef beWW O y;,n ~w[#s kPJ\a\ oz&јnv)d!D'Ρ=, Č7Jo\eF4v+;7T.yPǧT/4 B4rLtJt#Wt˱- v{2d4ڞ\/Bv(/\ u)Zp@@:5uC~I/7 Z >Px#0BlWgB) g. IipOśFƇBizI^6*Z6^'{Byrjnj<0 Hx-k~/8;e #ݣQ];bPOZ'`8v1K~)~+( W=-tCFg+s 0½/h]ց.‚bF/6tS>ǤZ؉ƳB"U@0_ПmxAT,v^N:*9b \[WT벅\g|ENӱ5FMgsB]K" 1a0H +ca̪-֋Y߫ ѣC;XuOoɩI媆ndkVyԕ[y6cˈJ:)PMvSz4-L}8 S0p#꒟R3!,Nd4=~:4kty}AHr;t {-p>;cQfV٧ ZU 3)ECkL'y7z$[3sQud9>zaLA["#{XL*^[dN/ڋ­rM"m Y|&Z L1\MgS`gu"$T "aS4>( n7B%yܐ>cl"n@u5EA|OzŅ஑4 "LFĵYvn"DZCe緅o3XBku]CK VQns@.{x89A4S|e}i{u2OmsGG5}?"T?mgF&!ח=Bw^-na3`U #ã3òY,I9I݂Rf 1A6xHa?eDG-_lP˾N|h]<+9kŷ;A4jrrC܇u=&  N.%S!ڶl\@c7ȴh!-&e焢YCp\_ ]`ia-yz(戍Rh$݌Gdž%>('b҉rXaM.U:ʤ*[8IHv\ԝ@PXp ڙ~ 5%P]MS= WFF-P+ƼZ%Bpw0$BS]Ow,ތ⾫U].9AD }[k.%4R3qbzb[VŮ,d+JgR4OQJ'M Aw^۪4CvM0F+\`yB_ pf) 4s^_9 bg(26ӌ6U[֎; z+"&91ҲB5R}vᄁX4aL_iV8'ph^2WxR_YM]L7>*&e:o zn{T4L 7RI-?/E:r L<[ ٱ]L9L5]=nQ(ھ15NdV03g5lm6->x:;a:=4|=ߚ{''հ9m;}^IkR:! y@4E#>B;ckI І;w8Th}A=N0,&JC'<"݇2TĮ[f߮ɼAĿH5\;ٖy:9:L~OCNLZf4ه:גI1r &PF.jf(Hg(kd p(zHY1hO XMdFXuzhV};oѢ:j莍X9ናk'uvb&tA87-x[V"k&^8e+}ѽJi!}>@vdD _Bܘ%r'HMjl̵?gWVSYE9RIK|w0䋪P%VVuOc8$C4.p8b%bT;iYt<:͉"fsL{$ÆK5!̵:j]|"tf%qn震9jk3TQ8W ˡNT56LЊ|( OTU>z[a^L (8-)5QCMZI|%8z}O cWBxXl¶$c%#$iMZ2S6UPyF Z\Hs# ?e͟`xVjs.*#LEъ^nZewJk퐸^̽h㓀8]K$&K,Eu )ʼD䏨!#وv!U?6HQYbb#fUQ`ߺw;֮]wP˒~fT8ݬN,,BmIaCJnMO9A_r Ͽ:n@#ѤΈ duSfPxWʧݐFC]ed| ABY5Jo}+ 8\v`L'SMk䒛-K-?*Iׇ-WUx,Oo"Op"ldE1)!oj7ʘ:QQ+JiLGsƫriԞ =[?seU^!񔛏P<4|=@ SH 7/@V9Dȗ4Wk J`:ChEL1V?Ӗ4\nrRni%_.XVx!pOYx(^Yxa ;LyR_b=.arec%c>-1;c\2B s.mH9F*,!<@.?~)MH~miS cD8{Bs 5v)Ɛ K Hkh$vc Wwn2bƺ"=3v NprGqcFFp( @*``kn9dػ&e?Kx>Bۺx MĬ)*0-˺ 0oouysd)f-RH^*r;ms~`S1W A _i~qعu,x;ҝ6o٥;mzwwJGy&)Sd% OMx| [6W蔊{ 9ĩR~QFRJ\)Ŀ0KxqK?.^!98xG aͿ ~Tc28?H}6컚řlQnK% P B,#k6̯$=8\Ijmp@s9-*h_['+:rbGܯ-R "wQtWw &O49S)O+,j[0JDl  `]LJP4hh3-^1rɎ7 ʌ,4>$ȉK zU XW[{+.@VΑNߚ|n4/(OkQ;=-G`,5;8LN6ߝTS݊8Q8t> 5a3ɨB)L }V U-VN6;0 mRr:$ƱYvk@&kCmǝ.;c1=GWqs;> 2,:&u~ !D`V'݈97yw AG̰ׅQb$v_I^[FgK@^>DdȲPf֞́YwvX&IČ(p[%_$jy;q1WDqMrٯ[Tbf-sL6_1.1J<+GCb+ZAU3>[2eᦝJl7?kmFwm(‡PuXOumocf![ыTئcY)R#ToQhF32GQ$DE@&}FPpAۡgi6Պp]i(2(X/!6]Š3F&xS=߄<ϸ84i'+:L$M>TriP>2٘]i-az&6ar۷a{4+N /?c ˆCGKSGcVm"¬fD;)GyQ1qG\K~4s'h ? DoB$5p ϑ|gx풁QmE+Hn湝#׸G4k\`ZŦ|Jch2T/ ] Y%TbfqN)50Ӵ?:wvAp ?BZoOK_&hg.tWPl ;fF_gw~=Tݨd`EᯐguhF)Uu< G\0&浪ĩ33.'ǢR]TUM6zӊ:ƜOMD~5WRFRe]Z݆?|,5mf(CB]' ^]9P]V0@`NjAVb|[&H M@ybTk8 $23L+uVF&$XtF4gЖ%kBHlde7ȭ @t-Lkoř,cV|& Uo>ǍnMH.vx]U-QW`D_k1@!3~wף f,v_Z+M*.'Zu~( "uH@4ںMDM`߈BQ8me?^ݾ+qwgj|}T#-0Ab@ ^sMe^|/$UYX}r(W;ΰU\~~C!amjWmHYXe*¢Xgà l@s0 Y'`+Q2Z: imVZÀtٖ3hZ5^$^Lյ_呰 X3@-|WTb_cR&W1!b =þtRP71uj^ɍȱىH9CJ˼ΠPf@ A\Q wy ayKSYY=ڦG#Zᵴ&wCp/a^KO|z4c^@DGȊi)ߙ*l@ibz[E`J~'Jk/k+3'~̊hUGn 7LjXR^R6z=OScMJrZYKt/ 7v\"7S<:p(҄GV@I~_5C=coX׷>=lXIt0LJ~2_da EGve*V(%{{z3L50ɾ@-]7ocsӷq;CW"+G"VhW[h#[3[RHVpvSciSi"Gx29bS#'+ 2uFUe Fҷ #?$96Nz(ɰfu8Zx,z.n8/g !?0\ɢk[tgX;t{Jn8< $ vW.n(cSƹbE7tZ6Z  LʹEfє]W`OY̦7m,DO2eխڴ㿳Dm6܊ hۗCLxh $؋.iP ͕ż?! ~YsӀ E$>==#_ _Է`*wmɯDHO Ln.%$~L?OZ<.Ts75 7%=2Q+PTшKND561}3e+:0cF$»\b#2d\E+S% T\bh,cV*O=14pe3F_QlMU  h(J1VfƖ\}$_רj8-[d51`S][8ayJ^|jQTX:}5`*QD3*Va.U+ϸ$^Z}u%3vYQ{%kWv; 8s =4cHc(Ѷibσ,$[浒ַٟ7^p[7䫎jg$#+]iqf'0@# jޠhVLSrA_A20O]֊ug]`:}ldN4y@KsF @J[CmYap2Ü^Kt'x0¤$OȢl v )i9ؽB$3M \qI"l QҩW,a8&+~^_r@G :"2)*n;eUԏ:v4vJf.}h~Ո4HRF iڀ[Ri ںo +OZ$C$Dr#o|j̩&E̽ЋyḇĢeC.)_fC?$< ۓ UoVj_&`kLR&m&:P=mKVEYHc.a-zr@ǘyZ2N(GJsr]'vi~ެ~U·.Y@:?r)µ`2J-dXx'rf`E休E0xuL: v9,#Hы7Оf-38s̬j^!~.Ӓ3>u9 hyj5Vl&!66j>UƿEue2Z^y T:σ y6o~_kUn D=&:(4 -%E5Ƥ uFyP0C~z1"j5 PťDAHZˈ^D$#c0-W 7".\~X1x ԠݮrZI9鶻4 3)ԜOJh}rک&۠Q;Hf\S}1tL 9||nƺ;Sd~/@, !1O̚:&4AXX{qmbhp2r:=e|{x9=o^46U%va=_?0}dQx!clzAFڏ0 ^8.e`2̧~V 763s.6t0a@rc3vߓ}?F|uO~9h)a3vH|Mσ#W+xʂuI*fړn 0[rW|[yEԝ;Z4{IRVrs(j;?홀b Ov,cu{24z`dgp>AesHܻѹē)J~Иf:ZQR_+H/9._$2Zdţj5onEko̩s-b/8Yg@@a# DzN-©n[M"uSe;#ovW Vnm1|&Z3>+{1g,^k/ nH$1Ȁ v$8 pu`XW _'h 5_M..*R@Ȱ]y?mR,#N}v4_Z ۟4,̙7k76y?tKds+`v5b/ C2J3bMdy?tQS~e1bCu ,(O OuFkqWGh^z 5/DxpiI5eh0H7z.z̓YHFɤx!ĢˆSl?͙ךHt*U?Vtww% U76g,T~ m!AG;{;J#O_ȦMSPN+a DKKr>rqllT~KEZ 퐔[f)#V|pa*p6ͼcs@3s8fF4["a`0#Xj] V Qfr^asr _*;8+c_@팰uRH=\u$R߄ B53Ok ?al_xcvllg>G"|&F/"xN{Ci*Z5jXy\ĈKZEpnJ|<6at R4[Y*xaڙ-@"hm$mL_)' h QQYXЙ%yM GȊ/ /0wA.eRQ֋mJw(UkZ<QͮA;N[-{cNse?5XgF\œ ܍7;+#F 9#%F{p>-\bO=HWw6P)@*]5_ MA+G+vR RNX.F"nUXQE~ֵtK𳁜Y=-ۉcڽ[\a9e[/^Ppok'֟t=U(b@/ ~$+Kb(>8?G/ٳ$Aj =?`X. )&71 /Mkc=Sa]{ B>V'=13GG:n8EƎ1MKRֺ'48y[ߙ6Py94"FuNiCǽ<與}⣞GME6xByP)ּU,I(msMXڀ]J HHkKIuK,vL0qL( p^*E$gмPn\¸SHb'8)0Vq "ѩȑhZR"X(^3+ [R~-&?y*wgTiOR|eN[ F? T]W"Vcl'-dݸ8aߛAԱLbA?iG!)Ӕν)KY"U8OQhs 85MIzw\x+AWx C̪0 u=`$5FbozZ|B9A**tvDn#ߣ@/v%~ԌEh (@q%0sl.#)S[knuy bIcet˵_p~x<r(N{X_gyg d*0 U{fx/pu;T:}%{q#1| G$J=b{T7w U͗I`ӝBs,LfqYtFO5*i}PlVP@c7/dڻ4 (Q{tCi~=R~Ho&Hz{V?-%*PڴL-z! 0 f&k>K'撋8e1 J"0ZE> 1zWf5ue,18yCio"aW'"kZgqICc)<\Seщ\E`S6;ƷB~5%Gi;h~0scܶMD7}F &8.*y Byש܂Q?"idʞY+'Z$Dw\BsuDAiW-z`[7G? "ɎNl ]S~% 2ؒbP_1â"7|uFys.>ab(vEҭMHﶒ3˺픝V:9/2]AFj̀wPHz;6]NVj(% e|1)cZ}<|6l|3[ЫL n]"=])y.]~Y|xg=Qd&5~5ZA & :N>0y#7Gϱ_~ 8\q9uSKS$ZC̆:Xi?N3UVW&]WN]\I`HCdCDd1%Q^TȦ@eP֒mMg|3l"iYv6y ƒ7nKםBI.uB:I ?:ɾIhvf UK)Q ozƥ,~ML<kM LoY̟ 殧lG (vU M]swى5b[2L՚eI YY#Vk%Ba<*s-VI$V**=r <8xdIhBA=?zMcP(#jOaTyi]bK:4oj3~y wSAq|pJC <֩qtNbG/~дb0|˥@6Z `իx$E@V3V^)wF|I4x$~tlS3iHWZvit?sӔsRvۧ0 36(N$>v-Bp![dxx۵lWq~tte%d."SuԥGe߹Zbw۶VFΓ.{2h'A)]Vsm)[%,Tȑ rΗr+H! ~N֤A?'OX?Ѵzh N^Boe(3G5eQWOxmd#DkVt|Fh(.Ŋr0q'dnpk1N5PYPW2#P7 =;CDW^a׫yrRԛih~vK_ЃO0`{8! ]2/D[.v)}[]P;򃂳T8}SEÈ,4VX"[` 0*% y<¾G`xzV lԳ.񪢥2S22)Xޯ\CZ\,({Q0~^mB2K#i̝ im-?L[Qph03/!ļum\*ֳRS;Z9ϭȻ.xMyCwc.;LלE"W]}Y L蕰А&"BpY~M/i! r%AY},-Ҩ0f}Vjnwd!a2]_|yU(NNN'j~Mcq5!8V1lHFe/q4 U0*ޣku۫͞a֝$ZW9zA|ԄG>gZz,GOH~9(t蹺Ts2xueeKkVD!t,mm*$6 UPd,A 4u:*|YLm+di#A,؀.{Sf{K$ 'yCWVhsWj!?,V<Of uv4CU^wL30<@yW_ d6,Shogg`s(pqc\U47G׵~<!A g4K R=+t s(UԁUG%R3$nTb90i" R u#}{CEZj3 rn=M!wY |L6[M Q9,(zrjd†KGv?؛:aZ"q^_mu O4bRavkmTPp[:@aVsDW.0TZ-'a0qqdr'F?{5{ 0b,7!ǽq^y))5Cj@f1Or,=-;Jr,6,[j;@s^Y3:_|w$0A&хwV$ZuF@}ӫӢBZS,Z"`;GjyLq|8+>\ڜ (ƕ,@JFq)(7fۀCw*o )A)YUϸjA Aa6栥[?Ymk?ˇL *h ʁ,-#9#QBk͔9+Wz+|o{$ZeYL -G=:XMϋ]ho*~JԍDJl ,ӍJw ߒ.ޅK3} iDuIr a>#A^ g u|_5!XB|,mj/xNiOP:ٙDz|sjv-OJGZܘ^7H9lI]&,cѯ" -\Zϻ&z9-PCWQB<|Tt6G9ݹSd6] J.>՜y+anrI=34CPpŇ/wTqNgt*pwS.٧O6M̗DMI*sٿ/^Hc֯& LFIFQ>"w+N(;yWfL>j,6&BaɌ4ybhe|6f4׿Q)'۠4t sruо+jR ˍB2cI5]D.}M_׭_=/> gb^thJw8)SyF'ҭffe;sjQײ!uWq-2iRJyr ~~'U|y>_j΃ yxuS޿p:پ~}0!Nofn_sFqߟNq ލgsUyUٵ򌧛ce#,[]+LvSXnED$3_8/'< BiͮWN$7~P C1Нswcb|?bˁ~v@^ [RbKgڀ7 bѾW7y"qJfˠaRxOR ,4QQYUkGO,㈆Si+8wTϣLjw2:9?>n'p]y:Hc@8k,4>>#ێ2˳ pp%5Qn( /b ``^e eh28f&ITϑz$M+Ucy(\*Qh|~h0eIUY5f::pq.<(uXǪkj{fgR p2.BTA/7](6guz/^OUшUPX)XڵFJ),ܝ^|n+NHp>$#Tu[_pumoI7֢,S{c< 90 ͎|Aӳ JPɄz *Y+B,fVedֹ4,DЯ,8xOf{> )1ZX렰P%茍2μ 43MZ+O 'T}щlwbG+,2i浗v(RTcinJ!5E~Z@vx\*ӮԼ}naq\A?}>S!lX2mj4ݕ/ 1e70\07 FR<# i+6Ph얦{}95wwŖ)|SI5 owmHqx5T10נ#Sfcv 3+1UvLQg6˒LhvS}>e+EkS(ƃ5#s"ʯ]F+ ֩"/* )˧E|[qݰx+^/]mE<)j+sv a,D1F"$ xז*5>p]c إ`<7AVB=X=0"[I8;5چwCiD~ l&aT}[R(cWNIP7-ZnDaLYh"i|kF?gOsh,_HX ou8T"2;*6|?ZLO/h;z'}%v`tk잩$._PAJ<Y<{aוg\l^JƒZ25|2#EY׏GSL+1~MJ0򬷋{5y|QUw4a`Q : R"L}X>1nn j7@-Gz&uمuKMdhx3E Ȝ;EKD:3[a7tEhАFD9c?"P(@Gԯ$ڗ(үuw53_0'5 Iy9>$FN:e]kH*Vx#䴝 :uי!li'b81VsZ!K,JlȒ8GFvo,~x&Mμ:TM[ϾJ6)ǠV:]8dYN d-ɢhF5VNBd r!/H0$=*ىkA$>y!9,rwaS/AV9wxJ3Q\ޥAd f'x&%ǣ|4x'(%;)eK2 R"Ȧ E٩xH R jY@?a!Y*] `GRͳNov Ʃp;7q7Zo% 3[`VgzʻP%+7qku3 m*^zPB\z3Ψ1ulhxRcwW"bZ L>uElj ?=`Sr7eij5CoG .t/1͋uؙ-6?0 zWH{g[ ^ptR_ 4 LiI.R,@W}'G,_x0zON>!3}d[CπN垛qi8c˻m]H5C#t+^fv堅+g?˕[1EH43\A uKnp^RC&y#8LݡNhzթAvnN\͂<:˩ճ MAOOv9s߯p\;[ődf+ \} @+"ߓӧ6ND|=nv VA"M|gq=ITM_fƙZ({_vnkpuc .`-7Re^\'sv Vu`%(=,O`1i7pLpAG2KR?cvR2R(/˝.<写F&̩n/ j2/7FbW M5LUG<ǘ 6K{"i@з@8DxpCӖ<E]$oqB>TS,sY?7~LitOݭMIJ3lINEaK[?")XnɈ"G(75]E#7DT|E?\r ے,TtPf8KJuغ<]nQ18k5c8|\롾|ps\T&h$O evoP:pĶa* 5yc%Ƕ G7f k/aDZSkfm),2.^ZtANkKQqeXF! ,H%!^m0ʑTD]W쨑= 6ڝ9 2Wq%EEr>Г 3<Vh{oe ̮1S OmBaRFϲi="R^K5bexq_2t]f۫{# sQTڪXo?T=ɴ~_zn vvɉC<(iʽSqGEz`Sn&=NBm.<^J`/ krw)Ɗbș(1Y}pAEVXԜܧpE"_J Z]+ʀNlaفڌqt*`TͤvH 0˒b=Uj,?18SCRרh>f=n*J"ė3 v_cč0}\,09?Wz( +ޑ gHa;oWw\!6iy\Y*[I;>M&vp_ޒE/J0T{^TݳB" q!.uGNsK^@{ TYYcy xN@D}0rv2N91D% ֟cHX=7)74YMIi.h* r:{!q6pos' mۨvJ QQG\f0Ir̈Ƣ|GEX!1h_[}|>K2Qϖn^I)I^ݚS˙\)$T}h-9H\}5l-` XNg4T6du,_&e:p(jW[D%fkrqM= &a}:8q_U6Q4 { j :%GS @ Ƽ?AJPXi:&m=hoPtIn+%vygW{F_ -M&хq%Ul9Q<;z,MSʚj(0o\򇎷tP$FkQPQ Z1\^D`?sr)~W˚\@)CW&5WVwaD+9=8bX é'Ytxށ[A/e>rXn0n c NG|o~ Q-*v6W>֔=uoIbLī8Y[iʒ0%(o.@0D,IM1oՐIL, Ϧ&j*wCe\J\edD%;Ȃ$'bOz82]#S,uݷo=q̞&* >!FGpLNȅÁhPDr> @Rm,6鯡/w> ;ybߘ  $38lZGCs'~<\@T3vEbt#v:܈Ճvmji~h"&J X;&ArYB랦9kEtwu٠U6RDMFn +SMLgP9) hA%ni ~-Ƅ+f]xȪ{?~0=g@ڙ50II񧫓REla:$dA"Ο+;j^BTvH,@^M/u:3 =2J9V7L){xݢa XzX H7Q{(aΧc[ x994 uX߃dJG(;z񬠤><nXKll [j-!qi8ni%4#q^%pxY'u @n`{e k͇{"Rfmvلl yqr,(t!3{08@qEI ԃ?zg.1-w<PnT"28{.lEħT-n᫤iDAWP@;:[˥?9Eg-a'+F3sQʋ׵`8_*J6tiϯy}F"n6Wk!^9K8Eƒ{Z84-?)P|Hx)@-C$>u^[|;ºZПstP(mezKl"10^eA.E ҏKJI67!Skg#/G413:eʤqj\W:@l- 5vn/nt~-a8?o>Y6tNn ۔bKNduz^VLnVrÒ0$&qŞ}oW|`5iX>RNr3|>*^UCA"$NF`Z; /E9l2ERd+B*zGk>3 7͠5G(yAxWW,;eD&2o鏫$U6ߖ<qF!ewA!JBtS1=tg٥&G6j@I8 >Yfި{DH#Mb*)  a/Z`r@RymnZVHj/Vηեn}@6C@NQ (+ft,sBW7TS+sfK‰9(sap-q[|)Y&U0pFMhz1(7pDߞVK$v4o n#X3" 5dQ[4`2"d"6$P\0+ۜ _pQE|@+1@{XW|?JE dDg[syNy$q\6BѴ>vրqm@L*a<2 oyø΢4z_I 8Ң\ o>!lGW,[c`G)'mώ#XiwhnXT6GdU8R"v0Nޙ}T -q}ث93"B88>݀m'F mkU>^vqq˒ phCiſ|~}(_pR(m;`\S1{$Íj#zn)HK r ʪ~3 [J^*#KM%pJ  u9iィגC?hD=k1TQ 2%8Lu.tdornE{ 49 Hz>I Gu>.dEU\t0[P}t`z24 L q|%a ʩ_tv{OxAoRW\XRjha6u䌛/1#?HC!-Z+ Ɔ0jv2ZrDf. T68TKqMUOKEj Е1AK#Z4l[ND<ubAY|<Ǒ-6~o':|X l9\"k' R4mJUd Y 4@Sτ진qe% 5MiQ< .CAKc Wl[}nˋ<zJj۬Ydݎl;ފוrں;oa!eHI!sko u 8cO&*&U l?q)1XjU;-]M<.v@ 'Y/P[䧁'$VNz- 3f ɱlN?i͉J-Di40XEjSJ1%Ԑ2Gp@%(! {R`Kl#pRP~i9eW*pb'x2u[iL{p2j%1zdE $oi҅KG"5;v3=TB>2Z37. BՇ>@p9s=~TV.c>t:x@B ہPˣ:Uq:4g:ĶÃ}qH"Ulu . ,5s"F z{ E ~9 9bY}ǂI?+X*hq9Cbv)A7>Zx\@sfܣ]h73@Fu>,JJGOZEC0bY6<{"Q_(^E`enH.nE]QCoTwJnttzlsIma2OqyϗwOIzbFfWGIlJ{7NBQY h m_nv gA2jd $k>,0!0ñޑIBE,XףUjpP7IL:'"&fU<\+#xH-P=]ED]̺qfnş§L:fzMn;PJ"ض6KFO1RBCM%׻JVWVߔ_ָ!>МDoƢ<^Ҟzyh vt~; qd9G+%gJ{Eu1)F0)`K̈́9i;L͑BhM8^@,z;#wO?6j6eˑtt_ NilVr̵A]y&!DɐJaF&"3sxa%X`If\*0RpUʲ@y^,$961DG~7r.;hx85> ]HC/B`߼; z,ܒ呚Gw&hr.)(-C-ִ'垷6:f85ɤ0ooYUUU!@yj~a.Y>gXyKC@ުފ32jI`WH, {xv.Dg^Hbl!H`]d}!Qo#eH[i2(pB\ՏQ I.ٷ8 =Cxe>O'G_b @LX)?!K Vфm6~{V-'ۧ/}=^nh(kLR/"8HmW=ʥbϿ}ݔYtڒOha2i|s5\X'x-^AJ< y,)L m`* bPMl %*OLӪ" 2~ ƺBU"(3~MKo?ff&Ô}]~kN,H_Nmr w47Z>N/;DL\c ͖G~̠ doY,%5kn'>-cd wghݤvIa&y'&1pG{JC$MO 6r ޏ}2-wC|_HGNk%[2wbcߤ&%1{}K?͘P>Z*I=롘d6YƱN U_F(}$4MW qDK{{(%xT-h!'u` I b&ȬhT#6]'2lu*QΞ}5Bg U$f֥TVzyљC, njaEݜL_'SL>ycs%b^yMc$cYcK2Y<IJ0ŖQ[@+5]+Iv"I=;T)TTmuh >`n.nN9 ~M"Ū+Cp$ Th|vXR6 Ezu3`%"4oȆ¨^d7gKQ=*ӦsT #H؀ FlHUŎ?7 DZ<@(p XW)E ,F/u% N칆wz5B%p9q!~&ی NTNiUn, 'E}Hc E7WIYHvod,b.0N(x!yd 65?^MQCZg-Yv~Z$Q-JEG8t,ʶS\rEnP/\ҮmF$SnlN1]<sD{AܗeV@ID\?gvڛ~k^t 'kj(au<(jAhK@NG:GRW)ܬds3^"P?8}]rJf]9߷ OaJiS>-*`}cU?P`|ߠ qc:}`7ac%xq{#h:;+i *} +͹JBn 4 -鋏`0L4EWp/q#Z{ 3O 񸣪``|_#壏. Tf9O}y ( ɒ^UY^m%=D'*/ժ|mI8>~6I@ms~:PdsY) ~S|&wR\PƦz^Ra5~T&ň[~Jʏ8R%-$aqc):gW= }H@n`[*[݉W,A-jUiZ߆JA4MGrF x[b6. LoY|/bgϘ2}9bT`%GӯXD|A![̭}y>߽--GtnNd v?xrq7,X`>/D`td4uU~)z>Qz+ila/6'Ie9_)HKyEb;{cDI}|2zTbowJ1@F d2c%b8aTUH3Ѐaע7Gя^oXF:$ڌS3&)#>S1?鑣{c<.i*=8w{?Drh΋ (qi*l}#?7û0d6iQ'zzdHDN4Ĺ~E1QR|֊ד PJ1ҕ Gf 𐳌rZlLx# mXĂ?HiäJxXLbci;SSi]U(}>E_8p82D/,9n >ff昂EC \R" V(nXnV>\~2]JkWAj'xP'"5*_G`{FpluK `ɐ|R( ۧ$V^~b?xOʊ.Bo j\p vʓq!P+cT5Q-|4i\#+O2SJ@NTJ۔D6? ¸"3>j;f!6gOĮvjmUIqK|T̤j{]+J䨳L +10Uz?5DZ׻4`s5\%ė^h17Z-&?IÏ&8Z^ml/EjnjJw3Vl CvE#Wߦ3M|$ئ@⣦?ۉP^,t!3i'DGuxmA3$o1wA_;]H+ANm:%<;M@&BgUNYHi"5כ:H1RNن˻zԽ.a{rB .IB֥ h$"Ԥ9i9Գ.>M_ֶŰƣм_l~=Gkl!3O A= jq&!zϪ_츍3k%PW VP77:~&箏g}SR)6(Jh~cFcMIW#6+yO`Vi8$+MQkamh-%Lt"f',>s$]#dڣrftUGn]v^8x׷Q{թO"17Vv1xuRW#iv=披蘀oIgxG7%M.[4 B[3.z[Tiϡ6tM£JpCgv7ǏO,*j<|LE/bLA,*iN[J)fQwks}.tB JuêC#pVZTENx-b|TQ#5H`@Y}e+&y?1!DwzMy;TyQ,o^Xgvs@U,Yrj0a(] BU{\# h"5x}Sa 〼EiG2Ljt#)5z;!%a-a<})xS]"wEU{vz@%@VAa^+)kgW6- )_s#P4F}D.pb#U{H.Qa( V;AK]zkQ$#E,V=֊9WwgKk+ٰ`LpRIl+itecPn>giR'\MԊ15ć-A7SvFZf c ]Tm y'$MmmxȅT=r;a9ۦ렼)QXV^0C %VW~'vzQ?KuwRB0Mlտ aX`.k2v*ZU-f=7lsPE&,Z@q b2έםPd#: i 8mv, Ww#CCiWl޺VUtbw)_NƆ+F`IqB6FlZiH#Bd5Q֦?Т "x@:x1V cv`3?Vp&bprgiira{TӠ:ߝ$k__2"َpJpY8_f5׍FQ@}oS]K4>Ąնh;; aRyBEu,L"eBf_DoM6v7+{xawr^c9.HF:æ˾^1/^ Wud#:mQ~+3hrc@1+1&Η8㢅1`~Yz(as0,(RXW6LYA}4Q/9N"~-}Ok ~+59ݖ^Wߟ{09kI?O 7;o9ٹwzG)!=6Qx{ލtz;,GO.Vc Q (5Ș(pn7w5y={]TɨV 1E<^\s3279Z \HIvmDzSYOܨ`D߰G3PHl%H=&z:Ry׎-N}W1= C*}|&*$Y}әM+ʱ^MfYtYp/m[*%KUCfETWjn"(|ZG+Z*7h2׉#3Nz{n9xI$jQqw7809d;*hWg!˔#@I2:>l+shf؁,a٪ŐDžE"4yg O>9wL{0 Nv$@pF?h|}@-Bi!N\ vķX!C^}fx(F 2CӖ;!YN q]m) *Ӏ4q 5@a*\4:ܗFr]xi<ԖD+io>;!cuŸ2Z9L}ܴyK]ek"R߻Q+PEd~aX?&!R|ʃqIgmV{֮C֨cf_঩*75B[N \-Вt ni*yc>!Mz0|Pi_N,_ޙ{x@݋{])N*l9&G+ϖ6kgF_Ilx ۏf9L 6⪫>p;/!* "C\Sr5ʣԴ̮8Wn|]/R=[7^fi.goz a oO3xDZYDo1\UfLoF#ԆkA}l[:lmj&l NSw4̃ &ǜBrM3/m#}fM7]5x* ?1Lp{_nPOVz&]n2XGJ44AoLIukxa#&q 6Ϳ<4-E aBչ}uYɌVmȱATEhTtAOܹPO֭se@kpt11蹬s[Jf2hJ0<-̇rQl$GLcW UJ[BvŮ 8Rge iєa:'bu9֫ qIGO~LAI }/} XBmGn/w{sK+l+M)sJf-giMiuDi/ #ͥsy%1ZOھ}ML\heKݵ\X{Љﯜɧ+hh jz܌0P~=RTR6,K@:v"F L)8oHbxFy25F0` YXkE֭3=v耟ķ`,o s cQ, 3w)uyݲXQ8 *ine:~4T;VywG;buҌtAEL161mTSaŞi]6zus,c15J5ZVv`.k򾤲k=˴$2Æ8+Sh+3>a[5NY[-s}G0}|卵|6q4˂ۃ=h{^еvκIyU"3ԤsQ@։*3i82 %陑OoDfLLCjz^SGr_@2)--N3bSv29+_2YqF@GB syJN&U.PZR]ɳYzVwc$`;P$WiW`^"Ir:[8eL,&UdNQtMp6(F0r[z^>w1v4@[|!h6 '"Qen_k qEG`*dc] )_R3qkp*~]5ha;[Y1-"o&W꯹eޭ. `m:x$ J He'ާWq4iGMj\R$ۨQn%z_^$ eJ>M٭ #YQ11H}-=-w(%o].HB#&ͥ/EP:y~~!9&/^,ߎS8|~)uS孫$> #7_>fxoEP &y< n<{5FG5%YEY6n3P/u$'d5y0~*:A'<$A'C Yf$X"?FҩBD.0"9'AO2AbGKBɊrw%Y* [)6SS)6,>OWKC Go>w5:*gEȢN`kC@c/c7O^W\vN_]"v' >J:|+a~3䖑 G/ǰ&C'iɞSDV+ԗo"fi>!È k-CoKQN~Q6^u5bg bНbMFN5!rF'5o#<%.}VNP)Alqiݍ0KxM-cX0C ,=#m~|T=#teW~m#fEkf714Eu6F]7'T21u*XyE/dKO2f8Ϫ9 /`rdDF~܈܀ɥ V.߯z/~^,ЦX2C a!U_nP<x]A1eQAܙpG#e;2n1#D>ZWe@v|wW(Begz6L\,NtۗKl3\ w 7d0VN)ni3A\DRiDG%ҹD쭅!F{O-kHf젶ۣo,)!Jp"ݍ IPd hq1k νйtgæ˹)R}q.ۓ=Կ|DA*0;ĄCPGb˵U.{WĂ4:prA.oBm p5k L<ۏ}Lf:={$N 4BqH@ف5 ,ܖh{BΰBMX1ѭx"9C:W8 g }g=׻8+[s.3S o([ dQOԇI d rWY7U7"qPDjm.ܮ3|A)xFOSkI}vsLro={g^`V\882 x~tqiޅ; ϟ7؆%ȳGĕ);"KۈT&Z/㾲[֐Յ$K9t ƥ\; N޹MaO| Eڒ3Mlxꀚs9#^c /y-[Pse-;X5bA~blfFçY%@ 闒3}V0>#`Ծm"0!x pykk͝j9)r< &F61eC.R/r_PE{yxfw×V3BfH8&/ףּc&e W Fvw0<H2YQq4MgK_ i4wUtv*r;ga{?)`U.]9kpRnexrG& fdZs8BB20ѿ`*241Eˠ+I'a/l%$|~A 9(Kt 엀Q4MVU9t el}ᰩ^Fݟ\kϚ;.z]鎲<+$I]C<<,ЧVN~pE4E3*xd %0 jHh758(XWUȡ鴧2 6u V{KldzM[|k_j'&4 $8:.сGXŗ Z"rA؆@Q5";0q*EU pګT0i.d!;hB\?B])?U),!"b.`g˂=+VYJ?_":ܚ=/(xl%{2R:yDiXV2?|G=V][|JL0o_REFoKW8ܐ'`_][VmYAD`*lBt^0" hs޺3 1[ZtL;f:|Ɋ `3n [.MӷNZ(7 cx;\pxim"ro T܋>HyswмѪ\>^]`ې^QģޓZae"0cS@HmU#n-imw.'Gx"3 ՠĆe2)BOO"6rJlT[pQ FQQ PR g0,tֵZ+.򧓕WD퇌s-NuE. J!EO[;YIhS ϊpW|bSd;.?H^$Լ@Gu>y)":uAt4𞼅cȕqh=;߬eM hatX fQ}^bRPa-Y7~'HTJvVMˉ_v'F@&M`Əq5ꉂ[??ėuR#0 }r<&Y}'GE$ |ğL=!ُ"* l ԽGFHWj]z()[QhAW[wQAG:q\Y b:$$Y)kq| T= 8KS D>(!4I#4օ3)j3m;1ޑeI̴|:8]q!/4bDc)xql A Y<9:&r,-+P1~zV6$bh X1"W0y(۫ɧ22dV55Vp48&__\sʤ8Uӡ2Of'i.hkMlgb7bY1r=hWNAL5`|A^{MN93 bWظC9Gz F2jd?b<7هT$bǰf^a+L_$w&}ɭ.֊0:@C%A L<8˿r1]DCѓDV:pj˨HjhgjjOS/lA0)sӕCays!&IrCוhn~`dmP so ux`rg!f`HT/b:VlqIrwߧ]0w/ҒDoj'SXQT'ԆU|{tq=D\޴y-UM[>Ћil"`Na^= [ y`ؔޕ:} -d[A,+% e,A %)۶vOW2++; 1Xao/_۱̼쀺4ĹcUŬӿr% r]Q]#=5ZD=\pF.'](WQ!t#FVI"NzJW_:HDgnr/)U%`+WKJV+-EQ~.zy i (w:Qw)*`!2rɮYyyȉ";QM#Am/;Tζ9ɬx[ w)YʡP%AVi}: V㕁L|!ח9'M}MvL~0墑-Bc4u{X]v |&ˆ${ *l@9idvU֎O3v:0A>jW' sc^wpNHeJ4~$% +JLcsYz HkxՆvpT%d=Q+<HqNaU,:ڳEGN$rfg+e1<@vxhQ_h" eD:/f$Wxp|ɄbSƽP.5fɀ{r+U)P8N$qf%֖J *ʈY^Wbu{4_K_ g/2}p$"ĕRɞ!3 H-7ʨls΍ 0+ܭd*s _z~n >xDK#KТIVZ!T6$>Dc {pf fu^Fم`WpX*XGZߜYU0XiV;\'vz}i_m9pMNTW"k9^wu7 -QښDxY:(=rjHE\ֺ!E܍.9BFq<.4'Phaw(ЁcERAM9Xw'@:@),F .\@>n͢۱!|Ѭ{DR4;~LA˶@ޔ*־@ZaOD\?(܁_fO.Su O[g'm-LV!-39,sOڜh ugݲ|¶}~Hyf _rQoKrn]0K1;&Sh fu;I* c-+pLK?&lІw@8c-twWk{hQ%GпmDK{`6[yb,ۨ?][C r~ 'g),Qu w>)TF[t޾z⪐5 Fʊ)5ŠОV1_U i8G8/MZf7JwV<D,գUM8]Ӫh)5LbZj8yn4⪻y}ߒĤQyЅ/rG#Λ WAQrLU[:`V|Z3 )22,1̎cȽ2-Hib_6>! Cf>H#mͫ` !07~  ;λ{vQ 6F8x=\tƍfW3`'?pio.pI>A5c?oDa5jԽ5UҬMT [5qj\Q9l8#9~ρ>'Ijs4KPXq)9( ç,n=r">Ny4e 7k[oά  $W5AjFkw2F[62l4q̕-Dv4Z:+'Y^|ۭoz6z+xI G+N9'Vg1drsw Xe(<|-̜ékFn>0$Zn;RE]~AOd9XQ'TC6|4Q0|ёc93=+iFU ǖwnCم2B6wQ0x}/(_b\t6owzpZ* *rG;Qn@x3 TR5nwlӷXbXãgPKAz6=pn:cY16 V|3FS쒅oN1xZ'HMrMgy|`]sR_ժbd0`˾΢UHD+C]Q7TlAj$lB皛*X^-;242W;pt9k8& S4V Gΰ!ө>e5JNPFV.V Lq:OhHakR;+1x.ԮQ %#ט"יtG$|< g+Y](]P|QV n,b%`mikA@{0f˫A$A!:om#q* YC`cq6 Tt&-rZreܱށI:W 9oF;h (}}?yL˩+W-*8 ηleoUԫ#sx>6%4LUekV9ܠ2xa uy&@!svIތ&k^KvZ+o]ܓv"ya) ~GUjY݂~T|Os0fSsu}%E?{? m#tW,ؼ N`_W, _=>|.Xչlhw\\Vm| iو `Nc(!.ZK-o罘͂2{.F-"#$.&0b/V@-ї7bB?JXu!FҦў~9rZ,@;A.F:ԪTcu\D~Y=h&W[l<\M'px <[]Sn{Cc놋rt%(UۃK 2:ܒh*r?ᨼqBnyyv!r14iɧOaIw vHWFh%@Je}M/4L%kKB=3yv3caAm0w_?vO1I;i,p@HmuٔwNA Չe=)|[QxG5{B% 2r.v7hnſҽ`N{ig%@hj/$ih!bH(uj~29cA {M9;4xyoi)vnE)r(O Y-ڡ۱ZSHX98N@BG.%4|J=Y- 'vKI YPхZn+-mS"1|(ONI,!O+P|CQ u} 51q0n}j`&x, woL0_}\BoWjZ+|B{Z҉ JC4u j=C8Xjb)iF2PR|F?' pfBt]0FEk=<ۧ#?5\=x5YĨS-טOPIIIS8Oiz5+2NDB됥҅7.W`vuwrQc[W68_=B*Ol, ?(oUz>QFӿ",XBG!K};&TNv3߭::yh%x9 #{AV"v+i'8%pe6\_t ex7h2w[O1?7DFyo$uzy+FAf~AS\ڥ0b,Wvu,0Ư 0cDYi$.^Cn"4> c'T_^>bђoL{JoD]6:ݪ.N7qM'n&OĢ$ /F8˹ƜAu%*d L4`w͜[qRwp m l"|Mtͩogl9~-d sŪ U.|N.r rWX7'S*W]tqgh&%e1.*N&-H32VWAWҶ кwź h䟑&uG=Bzt Z&lzԓ= ,ԫ] L< -IN~VSנr1 xɮk`(kq}h5k >>MyX^6S.2'O S-S+ gx nzn*d]{ݺ^Ϟ$+;BW`ր_~uRIf$+ fw/ (DwO[yA݉csICFE(.-٭y1 ax+*=n꜒Tg]]B"BS*Ԫvqo('8Ԃ#aZ4/.@{Ft;HMr0z ɉhxlVG}k_ J#[Ii bAbG0 ߥf&_˶TZ,2-YtIN`$zc e^^ΌSi{퇝V~maJ_T'iEC:k`YmK>X6Y:d}LO*_ )BTUى>i53u Mc}R Q?dCm v 2Qjq;$ȕӅ>H]=$fJØԭzUK}c^lze]VFgjr8Cx}"ajg6L# GjE@8ܲ &֍ݍ}>Q?Y̦9ADwv"DJH `ر1z664>&evJ"t }!?_|W?{R}\^6=S/訨>(5O>U8Ih2AExƛ=  u9A),뉠S=x~DB>k*BM.Dz;V*RKS);0%:@Fv۹'ۛ6`ElW|xKBjgn˝8 =f0*\|o5]}7T5wv]O#bPf=}-+P*8F9xչ:R[`IZ7@xzHPe3σL9/@D{j'V!)S: !X p |l# CRHYG;`<{n=P6XVfWa;$mC4."/4LR^%9gWWn͆j!*359^JcT$!nI_TqP1A{. 5qcL5hv,VElmKj?;dȨmZ[k|jq-kz5nW"pm).@M.GUGL vytA<6y5t Ϫᗉ:9U?bdL/Zi%@ӭvw=Mz#as3o USK5ߜ,xh][£Nfԩ,K2:\Z^F/~1_}$08px#o7=;AГ#a@EgQXCκhSn ] uBn޾y>;zJ<-:o*\Wr!S\rW2w+MX[3odW`ؠέ鴄%=`KQ!:2X4S&%#4f4|X Oыl]^HS6 G PPuMԠdD|&`}Hxtx:&+]w5N>&|?F#Nzvu׻`טLP͔%ߞF_,̀gV]PO+_+! đpФڜ pF]6ѳ@HvNS@Pbl'KLק 4ķb41Z a-CI-paDJhfUbLU3g>/lYFGm>=iٙHB䞨: \XP; ^BĮ9H)j<ł/ sm~{>mjXNd4nG` .9n4y&`c݀)~Խ:A{CvuPu `Ж΋:9} d7ѱCIwEE lpǂϜO + RJr*=h,,˞D X8PsnZ!MjM%!Ϛ}9 {wrKOȇ%tzx)T[G L?AYfPY^C; . *57*NIj.?1ODd?1εa>u%rƶcI>e ,MSGkyH7i&ŘUA*ld R &$&KV*Jxא/3ǵ-'A4Ua%Jl,1kX}'LETkK4*=1'p󹻾둚,Ӟ$(j\-_?E%]xk{i7z#%̋⸕By]`9]Q\q/^!E2Y Y8X/WLa,?_a; ȗNw"bjyyP!XdLsk@z!%z21۱R- 8B+$Sn7[6rb]>>oσMs!M|j?6bB\:iGHd-踜.د5 pOڸ}ޜ a:L@m'iJ?X~IX3_OOKYm n5C~V5Y&j%Xcve6vrJEGG1 MYK[}/Ѻ7ZѷY{=u: [ȑ;4߅|,FH>Ր|*)JmuNJu`Q#shܿU雱mTݘf6ε( :wkXwOO7JEdQ`[$X(,3D-Y:KGAF,lB!t /n4js HI,e$V<8ƥtQGz_=Ѽk>EݎC#+a(Z!څˋD{}éeMH^x&^mעLpz֪Fy,2f~+RM'O[:nCچDRw>BƑ;PJA^?u$ ܁+d\Cı̧鯇I3Y"TMB9'Z+t4D7R\U|L^ou!!hYqTYza}jrK[Hy_?•2d[)! (\ʌ%*.DONjs*,fa.{dwIۏ(6 ,;wrm92pMUNɒfqPw4poL`To0$?؁T)LQj-XϡS3 3Zq>򚅋(g?HH{XيXT5BOlKQW%X )#mOU js>ro4({c 4] F0&)3wMȋ"F]]Vn'xN&?Xf?ߝ?}x5y{.ey⤪w}wr7zִG'. ON@o#LZ'wӤGgj1b{Rڟ^a;2>TC'= ئ?blwI ^p q}YU*V27Ճ[JsH ܡF { t US'Xߪc@G%;װd,۩)\Y/>eHhwq 2k V~31DSQqPG >QG!81= e.=GS=9:6[j^p9B~^:wlc Qpֹ'+KWrChQsMZ;Pw99d}f㒭a-B=6N.r&KNdSzjÝ+,<.P[<}VȮ(u2W}ǁo0ImbyTAaDe.s\̡!TVF(O,]+!2k] $\L&i7KLo,tX}%̽ELJ(Ȑ*p'LAÊo:KY5(Vfv(@uŀF[cTfZ̩alzv sC `WW̃%妓%'uNN=o͌ϦKa}uϺ+;9L<33?.щkkEvձ=(`Bń M͵zB/ r6 ɢăd%T z?!ҍ|9.Fnm ~0VK; jiK' ? ĺX`)X-/< U(_ ,ǗxPÑ VcaꞱ+cµ|Kƛֱ>_Rw-,T):K0J9vuAF;ͩyXmwhcB@-=rS):5"-"l5g#,X| {4xErs~0SL/>ת LάzWV<]j'5 W@yYe/(AφEv$՝< t%vL^)Z|qOr}_J n>ڲ笭a@Ui 0Y V1 ^t^2ԗBfk A$^ F&A!~;X uh/Ij뛃^aVWf$5"#z8٦, Gg[8S/6yD Cc|jgalMH:Qi ||^DH޲J;wxQ2% G@$JX3PJ9 ~}\tnp}sG|́Ҏ2x5:EXVWG/8ʨ~MܫBf[\龇[$RII נ XVEfxm!,#{PEH tASEo w dIlRTw 1fT C=P[W&3[I=2;aK2͹O{R,̭<c~U,/X! Z*voE(ajx8 ŌnIvOh%Djj:D !b8DcdR9*$v87Wh6<@ =$v3hIU#ES|Q]a 3Q_5аkuͦf Ѫ%-m~W(use`|cX7is.B;}% Ԉ0soSQ=K$ہg:Ğ/ti=!U7!o`4cw~8^UWK$`-ٶ#cn'r^ef¥`YBlƺm;f.B87 I]\7_m,~`u @/~Nԃqg)HhUew̥t'[X:N潝aWTSg)jLpJE0a3[B~MX= ΔƜ^iA[vVXUu"!F~H/=󿺁e&ODE8H>;lћ w) 5Km~T z^EB0̒=,yɍ`DyܬkSǀ6;8T RJO}{#a*2-oG`rL3sTrwDn+XdHw 1^61rw8)䑗eo;uSk I[&cf34VN8oؚBO[`vM2}H2 Uq?t)*#7cI˽;o}6FgwN WxZ^7ё\j=QJF|qP#2}&4:?eir6ֳԸjI9884%4 qlWSAvn0VSƴF=P<_'$#ךҤ`1xJI}~=ԠguuI&@WUgUHGP^ȭu(B-3|Vi7=nX[{p!K5IUMhsjo."*&N{SP}ΉrK rIQ^@w]P[H~-Ž??/z۶4”2Eٱq"OJqlRp\-i Ȫ;Xp O)?v:F{f }%_?33 ;2 TpP&7R]75@>KMlX]5JkEV4C=i(HY4R}tfidQƯ\!\bQ~Zƚl ܜ?f 5Kzy={8; NJV 2t__ġU7Ig,oY ^8X5e Z?k+}jUKs-ֈ}TBsa>wn~U*@^nj!As* g 4 $&xmxVKGރKKYˈ CGPS8Uv}0oSwA ~4Fm-y*;Gʷ 'Ɂ0RqR0¦-œ.m=_ ٥(/J7(GVF f8޽HX6\Y.#+oQdWeI;eDrlkM a4&ig<5]<Š=\!9ٷƮ>(7 8̣¤Y`Xn R6D &۬%eʭw;v^22 `(Y>/{Kn)Jȱ ]b V,T_ 3υڮ#D\,?Th7;ixY$ɶowJ#7Plke0d\q7IˋOtH'ր ނ%c7yvx3+FRe$}}xibB!#ud"aU/!8hENLI[G↵ gm8Kzvij$Ex 5A*8YpBB,[;e_,ҺĔfh;|nvlx'%&_iLA}-hfM\iO%xqݎ }&LInqIS)j\>` {J>|ZUWT+B8@}`=I%M~b$<=9k#Ұ|@M!`3Xz@+oAT0 %ɼ)ǫ@MnU6rBc$+TU9s0`uYóŽ:& o0gmu) շᴀ5$4z. 92ߒbe)z UX +&@o.ȑ ؃EO> Ƙfr[+T6*[B\ot::[>D'C@s`=sC^;T,{x5z{nI)axQN[7Q2Ҿ!ru=bkeW]~v0#=GyҕWUEXMB:E͍YgY fG\3gط_C2\T:IGٝORp5{٦9@7d+8,kDc123 |o+b!uvC5#?wy;vVј1 [Jz3VXf+PR=|83W}[n纠pROoi?/Nd& F Gun#G%%;~f nhEo~f[0`bG duMq'wM|g=ArSy>ŠV|c;8.㠍Bf1S\NFg!?RaTk, J)%Eqg\U}X#OفKD%[H&9F.^7/G5)gі2}p%z_o+As e-IF 㠐ڦZ*BCvYz\n~pʩf6%_9I,l׹y랮MAdL쇊A4P#4Yp0X&u7j?r6NToLBl8\|U3xf"zryxM<<ѐG{0Z药mhDcx Ŏ$rcV=)Py>˰)OI&J"r^j.x {2,/DX1,4ۭpRe+XG3:M,Mޤ4#7$"Rf% FpCrKE7q)|%q@h[$-$Is-ت r#ZEICV&wk1.!btqi6b_F# I:/ Dہ`u㢞ǜBs5:vq5{͆~H=f@;Lt*+_j T`#0,bd97-EhR/ܖ|CFLDȽ_t_6OH{[^Bera;R^Vcn$ٿ;GNWT]<#flE,g8Ԫ?gzyg,zG0Mgܛ:۟$/QL N`1h;y E"4+nT$ni?Jh+ Uez"C9ꄟfnBD`儍e$߉Q|;c,L!kc7HS:;Ew8IZ &o@A[(X-ծA2|!ypE#`W،U? 4ݪ{CԏT\#9h>q ;VVOg6f+["JT7BOt oYâ! 9bx$?!"cx.BZ)@f[Kwj[1C׾cR伞vMgO»&N31O1A7<~0fielπQg- ڪfqIᕪ-5e<:EFno >;0opK~]/LKAZ۔3M)K3A%(YDǪ ,l3 @s]OR@2{џϻgjٿͪCC+|p婫HI8ԋb "b|ٝGWHH?BL;b~f,p[]: jJܾ*`ы{+ }]+_xYr8c@ P达e('a\C@wM#"3jmz4ZI\z+9ttHƛS$"۸c(6Dܮq4^:ֻ[4_D$ oF[D{P5\pKz#sNv֏AcTL*u˞14#*zcvޅ'`lwSTo ĵ7[ ' VFk`DtM'WB hƫwxe6Xm !^e [[RK1sz_Co tN()#(]Mv -@ԦU28I{ ͙p@:4SO]|G kRt8< M˞%qY`H 9A19ɩ Sݧ/T"U-?ή NcYI,qmRuB95 IWht#FJ)^<%xFPۣ̭[zo#V'|BpaaEW"΄[,HUra\Q VP͑Cɤ^bXjE6o0V\wPȞ':P2( | ,˷&ntkc[Kf$ ؘr{da̤bt+p%f.&rUJPSJr"^k*;5wW5BD'yspؙmO*P: Q s`f_&TlQr5A2gh/bV=%I#^/y,݋R"ҥ/)eV>w iB\}p{&ix\e禵=y=b^PTN{rMF/;;J|cJ#T$LVa#&FVԄ  wq3]D\!"Pq6JpEˤ)5d{V6.^h1mEby*X,yM&U({kU̗9..SN*jRݑ]OOQcަ`xC<Kik^=\6j>F{fHXL(+K:_M KeGޘ(E${Jo,h-fm2y!(kߛY]B!Rdy:(p7rᓐX[1Yʕ>%^;_$}n3]X9K hEa&,/wsg–;R!DBIw@m,"YO;u;l^A oM12OODZ=ƾE(3v_i?lIU{x݂ΚLai7C~2%Rbxoyʇ*/^ hEZcxY_/RE;'I^rf؀fR`ٿ{UkaU+;d2|O%iqAf ZO܌d&xNCbCOaiXӎ|Dt` ^m8'u Dm~c|ށln&}ַb8 /NZ'@GqAiRQׅ`e L4get0#9 "lOQcj+2H`Y䛞66A}.H^nYa6B}UVY~Fpҁ>ڏwRpƠ D^!DCD#x޳$'HyV#q1iyMk~x3J R}ePG!͹00<ڋdHX7*h\Lvu#A/MKQ !%N܆R`grGMeaZힶ.i#S:cyfSoD.Y3hOR@24g3Zcy=޿e~L1]@g&c 3$HEGj- q>IzGI RV̫Om1eԸ&5z@aEfNbrlQ-Y4 2 Pk2z[jŵc Vqy1ܲ=?1j^h:* K+s*`+1:g4Rh aL`c5~:Olomn `Lt!" e*"g(bw3t^\4)"@P*^M=1>7i[%YI؀z|d$Ko)y\/zKΫ?%ݬM`;"`u9(\L`i6M}3:z+klA 1*8Çހ7DOb(D䂉x1q|8mɋ1YfZdv`3(23b$ I95qFQغ\kN _ "{SSk][5}xHJ[Ro|Ιr_SHt# ZA$t6΍ Rj&D['N_=,{os) mb>CU&>=f%wS:hN$j=6]C`j_E(ao0.%]jd_[D<$ <]; yz;Ԫ%8%~ LaM/~]EO#py-e$|>,kxĥj wEDGٮVl D#D f@ VI6\$e\sfff] R$ۖ4 U+PT)hDYI( ߩUagVк@ ynfCOmmFBB1JUXl'3Fs?Se:>s[Si1okkājѵ6b2ai,`yT'ՆX@Ʉ,a/ L%} $%"˓C-pEQQ'0d;"lv}T;}צWjpW8 Ͻ.e7/FKygf=>+Cg,$I4tQCk^T/V(OZ}y  -$BRÓG9թ5PR 2e[jz$l,8,@eq*-l]8hǷ{Z<B(I}:zZlrȢRk͋(&1D/ ߋKwpiwJq?>*e֪|K\I&RL3ϧ W놶:B0İs^ՔbQIbNI',SD9$*;aƋsm[ˑ3wZ}fD\ŔR(2e;)]o۶5PED!_@55C"=58sl .4&s/0rP!3%mJ&A|#DC+Dzz; Zpr҅&e~Um[{82-uGfޮ,[L4҆J2iN5b4 ,+,t%z?~~I\Eb<ޓ@wȽ\Gd$f8X=T~]CXS զsyKw#vD7oCl0 z} b ),^JH,(HTѩFpYByưdt}iyKgWg.@:d>/Y6"'.riT^/-[pX͋)!YLͩ83Gwu}Ѥ# ݹ>&;ĩ #dEyU Pڠ?PVql2?Z߬Dlxd -D9do ߅voPh/T(^#fd7h~7}q*Cwl^F!kWKEӄAj+h̼Xr'n%T7v{u{W1CXFԘ]tK4&cyyC(;!ʟQko761`<ӒrY-ևϪ 1|~$|fi`MX`|%̑TGJy=oJrӷdYDu TQM YQ)\Mu7"Qy5XpcԢ5l3XƏS m^ڧ~jMlx:2.[/BOPz-&u 4HO-Bg?iܹF BKS.Uݜ'K"(R7%Q^xY_XGtDaP_-3Ny/8tuwOL6FPڙ4/QNq)S$ĈevF{egDfG5?/X=h\/~  "ڌG}| ,[i `)3 [hTKv8oA*9:aw@d)/w?3ZNpPc[7BVJK[ ;(r[\hy?ֹ)&'nb2*s}$\Н(M'\dA6rt&%ɿ8ܚfF썟QV&Î yٻt8q^@á!{C5J<ؑ#F]LAՠ®h Ղ#MNqm[bfF㤆nbqanXT(߇_G Z-s&_t &$Sc,՘+?gxتCJ,ϧfc?g!ulVKwoOzj:RUnU!wjӘiJWBq91!&GSԥ#ػ ImԆZaÎE Йki{;`w/&2Ջ)!ҡ쨍 P7Rw8*|,_\ BGT9/W;p _{.=9|wֵ{TV>3{,=ͦ2zQJVMMz/aW`O̮R{EN""urgzi 1X5r4Wz#{P"2Sy2#/W8O?'%IN5}( 4I&8Nyqy8M4,JjJĒ8vZG o"%$MwJ-+ 2[ԡjC7VXNy-6's+CyyDv Gx\q/Na%ZYHbIa#AR@nj @nR8]Ie3љ4|glh:?/ ((a&,T W|-`{%2*ڒ4>wKLU|N3{: Cg>lp "HfNwiOo8Qz>i\rOBU3ݫ:Q΀q>,/JO1 m$T"i6(kg/\Xdi-&>`\"~wz:֎އRDtx&; Fod2TdZ2M(jT=\)"p-OmEA~VE2)a\b[o&ΦԚ/wmKX9ZYNZ0ANE,i4:L3YE}fB7Hߓ u0mg8~~_;G*N9@DPp4ot5Fy]MF )]; c&4R-97fd #N^&?`3Y!f߭j}r3\c ]L MHN͗EݳޝK_JG\GC$2:к[Q VAFQP{g1wxs{ݗ⁧+s+IjY ɥѥN_C48N& ndϬMTX'.nQ0ռ,5z[KhDog˧GP8{35%/9Y=x6\P7ri<4Z̦ň5AY-}\xMQw! ұIaؐT"He[2K\dJj̨ю#8Sa~4(+KW׆+*{ZjcDob'XH엷fͲsC5i'/(8X(Sg%miXUp $cnii^Xh׈6? T+.s:VTJճZyp#xy_o߈Կ 1lE1k- G'4Sq\qJRͯu a=ܰi uK5LE2,m:ȇYεgf]["ʝ$Q \^C󤐶г>.HN)RY24KC@\(9K~L>$40""oș|q:fnIU }f72 1/Aq[vtdfNxͶ~oXQYɫKFxMK@ݽ/ i5 aT7,p3{ZIXw~> #%;ݓ8[O=O?U/ E_t@ &w m"RW#eLGhhysLt~ QEi~답Ȧ@~^Z,G]MhY|3Į@WعM< MxoK=@C`S.qUis0=3YSسޏaxE qB4ɦЍЛٛxlTc :&:\p1W1ViF!> arㄷe/LֹWaDE=I9|Q{F%FM6c3q2c'`#Ј8z}2 ;hN jYk_F LTu 6EJ:v|QEHt{0{ .c%1dx [mX_['[LftHӖa,+_ԅ Lvb |z(.f A@L`,s]řwгD@@1\AAEĞ󷤴}-\{nE7wH mTv+bvS7<2lM|&%j_ӏH~'1 kQ;NH9j_Wqz-t}3VTL+{}VIHmrВϭB/oK"Ix kPFF 1v 6Z隟fEӧyWY:v\߸[E^|q.BcI^P.~,/ 0gVJ$Tz4뒃dW<_Βѡ f;g7{v3_ -1w=Ԁ]2`iHz7>D( KqPm;bvC9s1b;qU:Ox*̝+j"~w%#+hQTV}+ɦV9H%$eTN02${ 0n=< SZ$gy{8I/ޝhr6^oID&^g97tڰhD JF7`p2٥ WS =9mKAKml\eLȆOyI1 WX*6`K-RΰSzM jwSvE(ia-A?Kɂmn{lrBEk[?$Ky1 f&tyN=. ?c@DTm,zZEDwH#>lHl,oU]ǬT$1T=~IXM՗??ch0. pA 6x-}:8y=Ku Z0剟M2_?$,Dasgz30L =6@ppD0f ɗk7."J_+/C}̂Sa_|[aZ焾2q$]uۼj8+ʫkq3g{z,Ͳ5Y upɻ-gŬⶏ7ҬK=] +5b 4d}1qG N0 g2| իKZ ^h d+D3ǷW+T &VUy)ƉG\GPr)\ )"\8O]Z=HB{,>< M:Hu|Q8N\_WAԅ;Yihp9K@E@+sdm^'Ɵ}d u093 B{(P v_<9p%R;y aXo SG:Dl'a0=rM4>>*hH?7؄_ bNfyW|ǙЋV-.wpёdQ f(z(DLWVi9i $:s>Dٷ[}hvբ6tvz(령N_2~%MHўJAI^ҘRo?fdK֗ݢx4w2於<3(=blLoɀK՗ L_eh(M665G7Q5+oJE@ ,c*p0ЎN\\{%aY!; > #RD`` ߎ,,E&TuzJ+fEI;|N`HR$bC Te^r-(wL'R{ Z-&^$; ]0 _s  (jS']pa[NPA|u(4?pq /J'4Du$A~sxB Q59NǺ;sr36F`{s1k]}Ks(mO4O/hcrMFtxv8F*k)@r"ǼڋO- z#Q$&ۏ'^HJ:;am22X()%Av,)fZ(6O߉V g@:(~EzkLl?,JB&Q!10%$=[_59fϓΔy~ɧ|za}rK82`X+bӛ@3]&[w?29\H(@N~ L{ןQ&2@ 5r==saSBzٻ&Ic8P;C4L,JTI]y௞$wdnm8{ٯADt=iÌ五s| ܽqml6 8>pgB;xW`SUO):0\$gOpyA.RZ6qѬo,F4y +b 9 ?}㨾O t~@&7wgXL չ?0ILlX ev5#$j*ȋ3:Q ;Uqw<Ep2iyJ`N@*d: ӫT!4^81xw!s M;d,afG 9b/+`rHQwd,nmo(PxFi 6ߘ٤@c8ᕩ\Q]-֩ۈ:k}2q*Ô\9D ᩡЙE>O)v^~˳nEod4ӦQYO\d|MG}VU18O\ 4z?ׯ6\ ϼ~=lx$j pms׋zsI1r-GJ[˓ȢW7V=uljRWvI&W_T\n ǫe aL@Sr_?K) HuXxpwvn(Dt0 3񿐊<Б;d  {sѷ$k8 7G,Zbiu*P@Jqd׏,QgI&m]lBBR$]CΑXɆ7zhYB/7߶V8Ma~G^vfIk5lٌtf*bncFD4P[ z |<&/# R eFVEo]}zd<*:vsdوK*F?e3N8#VQU 3N܂cտ,-e>֮ʟC',,pwXfֹ[N7W]HIi]hR><ɧ0e7=3hiw{/6te-PĎ0Y"N7Txt<\~М=Uc/&st̟=JH'SX7߆E8w[,2lȆoIݺ$;@N6t׌ .ja/r@8 2fy&j&w380cyMaK|")ƍ)etzt=9m ?D+Ţ@i+!8M9? P=!! tMخ9Z1[2\ :bML`oprmVJa#lD):Agg4-N]^׏@C*q ;z!"e\pGuZF)+SBb'#Ê0.TCst3c?SnNgəj'ߊs\[2^x2rW -bCf6u:D‚f![Px&T??Xb!Wplɀ6 XYgK, 9z!--oOdĕ5n_ɵ j5lnw ~?AyD—F$6\3>Afي_f]~zRF:l){6ԃS7!b Ž9fbR:ۯۊr׊f*5%A4$ڶKzmSxL$MB GP00`hXP_=G3N=YРjh0%IC[黖T fM ᄃ&ҝiAeG5R@iZu$:B*j1Wum̈́#GpQG? JnGt-V?{~DJB!gGƸ[n C_YR GwS;CLRVCoY{,yl;8>XL`0(Lm+nӽdP&#Ty.̊_0 =TL1SdAc_5ҙa$ZȜ5}]|C5]uԳr$f?Cz,]J%j۾ޯ 眙s;J%u'kl(M=JB![՘jݳcɴP˩:5Uq-;-`lԜD|)O#'J ޯ078,MoIaeJ9:e%JΣ[TL/"eR.u@l.~dH+6[$4P zm_fN,/S9UWB% `#$)/#n>ЗF ^@DVZ(ϹxT[HVz3(U/_aE.BT"I:fIaXA@=j_ h{l9ٖ馤jy $=C+ }]A,ƫ%[ɥUd)nUq (-wř?9hC> -NZZZGBд jdq!26l,9̜<ɀg7U$Gmty1y@Y'lUʙ3}~kHAƒk-@Z/=Mj8gzTEj>U'^EHֿ,$]u"9/uN"&yRw,;AEK[Q-kChE;#y (ЊTstѰRJsmVp}pcAA*߹,?OݢB}+9<?ErG$kY:c)cjbK[z,hyM}ŊzVwH~p,cܛ2t"Z8% @S) X$\NbL 1vaz0'A iMOe& 46Ώ00 fywTzok${A.1_lOs9G*$bYsU*u<*xuñ?LlnU[*1^ui5֨83[ml0z#fx .)'6PJ1Vr!S3)_B4rf}9/rukԉuMlK}#&y5-96N,_^qzg A\ ,&;DIFX'Qh|ZSxg#T8wxI¼+IɾN_Ü.aSI^}jZ)42?;8&4FH^6 ~z OyND3x{֥w7?;COkA9`*gS4 0+[_G$|xr鯮k`=vڬWS[o&cA&uߝ]Q t2)t) _s3qqac@/=zbȤCz}gR]WL͊Y5#;O 51V֢$]&Fx+f8TWƏ*c̋#haP+& Y&Ytfw-N3rd&F>OV~D`%[uj%Qg _4vs {J,\#WMIc'#! ܛkm.efbq+^X+|v𯎲1xyd07x[QGtnWyvqV/a,m*Vc?B#1$Srg4K.UllNc+]%0GSK \ `a^f\ծ>#{CE4^]pBHg | v\0.5҈טaD4)_FO \ϫ^t{6d`$pjβl xsG𔴗;iIpg$z+VRVa~RVHPOh!2CJRQ-\_^l4 i!bӨ̛6ashJUO}!W]:"W|N< :8 NP=KuCH8մaun^-lzT+[1ƌXBZg]AՆ[ҩ S;re濻{=bS5ё/?Ei2èl0 ȅ %G+yWpd5#gi' uE&%nZHo4r/R#fcHR%XN5ub:n8ww @1D;RJBA nHV$^{+| JV!n_l>wFT0NO&=]PHgGx"{z<<?%̻nWYQ,joJýȣ @*Yzhr;j2'J* jGG>`#KRH8'uZ7Y׵LߠY9UxL5:d4e.wrkNT*bϝ`6~ ~/OhPՐ}ըdn葍~ژaӏͥg6`}mnQ*L zA-ղg61 לSHJ>q9]`//!WY/1,Y5"JՏG:Ŀ0B#Ž쎢\Bi<'dl\y5Rh5^X)qn.#`Rce [S,Ku()M$y_>G޷r : gRNpء)X-ʧ)TLrƋgk/dd&ݠ$_Q*xfՑ2IW*NT.=1,XѡZ{({M#c2M[s<>IɃݨU4ueNxr^Kk_0Hv8 YNٷTA_*hf$|TDG>jN?p-W')I' *1Ohua4KrT@~wH2%>VJÞo0#R Z=hõqBwhPόMll[qٙ[I[F+mV`2y:fqCrn,R~*$TEiv r Ňӿ"uAs׺MWDdNY^n(RL:Fɘ;!DS3h1q$袋;퍆W.HF g%#PjhՎ) tvrϲ7P4&ƺ%Hg2c~Lڤ[mnB/YNfM"(_:w$qkRm V}U=/`V&{dE֪V tY+8vOX}c}݃f%!%7N"![p@hA_#:Ȏ'A]Fs(%9[- ڢŇ~;ba&WǐJw"k!KbC<6SC t_X$5pzĶnPuVJ֓*Ep4%Xj^;Y,lF'|# ɪdTQHr JOCo#+!Ooa[f"z wrT4UWtaio P 'YGFh1N:wpt%:?3w@,|&AVĪgY\ 'F jk7S6 HƏZQpD!‚͓RѢ]#Τtw~k4ӝ!`)~U HhΈ 9"gKb9'! AQtʟ{|i|uhP}}.W45c \T`1_^w?+3hn eYcJe2|wf9:xs'{x=;2FC 1yԪKGZDU)dΌsͯ"A[]}bDA&mR\l](.2%PZeQlH\b^b4PRk\C*-k {q=w.lJ9T#Ajh/cI`gc9u8BqaA Cw!5`Vpt& +WZqU_uFh$ ?TR$ J аtD(e9삎sd0Y\_=(&> "T( `| < gI4lKg⫦Pm/੒)(0*82tBsczudm3K$YF Iɣ{WL ai/'C/Rf=hVLMZdqr:ϥS,gE "O| /[ֺ{PY)BSVKDAf%#h$MoB&UP2t $_fl]AQhϹlԞm' e4]{@unDGr W"kXPعjgXw6O$>gḧ́zR*vP@jI9"poücFjҌ^1As ʃG/6-IJJIǖ{I`SGc{T(`FJie~ua>=yo|!4JWw$]Ag1<5OlHx 4tN>V8 TmVqu-7tN:|V*0)d@ KNl̃8E@TJò ?@zc*#OɾcT+vR(zj1rUqA7oNܿѮRc~\8lŕFhYCVlb0  a/4}c{n(+t- eL!;D!rg]/IIKדy8WǧU9]f%JS,<.RV~ؑyiMܝMtj2fo֭+ƶ=OwDi-tEYwd $u8E>~kbǖB`sGO`~=-Hᔑ8=mXpiI"$WwHO)<Ǿms6(ȩKUXc1|=z:Z޿bnYl<ǜkic߆3EkF`@,KkJqu@$9@rWcmK86A]u?E+_FMc_Xݥkήdj8c+tWO;bAQFM kmdFuNuM}*,ʪF@^MGnXMc(}`n0K" J^Æ2E˜h;]̏z)d[KA?$'pzSTvcMgrnI}~m@0 |{s͑pgȋhO嫗hv=eK#-ۀrotDr'BʴOxCH~a| & *ֵsD?zZ wp{pC }\U3yإ+FHy`_(/æ-BdiOldC(H͏r6p2Mf5 @ΊlSExQvo!DFpKAB7[q4ցZut:6d Рν MHJK+X"KOg̜翟#XڝYa/ q 'Kǀ(mIk2dj{WzwU[>o֮\ &j Cnj-ldv1+ (T#7nИޛŗX'MeATc;oIcFj?1e2t2!kN `_ 1 $84pׁM7Q etÌlSJzpd_3׾ )`3Cbvڪ&_7VUzZ_R1ጺx* W]?0`]Mm۾S>}nOO'KZ]Ep KW܏FŌPPp:j g+"E+:jJ$) ǹ}'qMsB^طo$lЖj>×0:XyY Y SmF֍WUaN- cnˎtH>(`=ACs қ8س;#w675 J ڶvpؖJ2UupSD=[Aɥx?3?D᫷YS@5UD]gj|KjvKSIB8[PZ1XQF_W910 ,eoV+O]ɷ7e7ki0,RV Fc%:@ǰP*gNb@S+n"4助hD@7W╻J~/-XטW,/Ok{>($ o0 ~_lyXz޻}H ы7\@;uɄMV3@>Dzks&<ARX>ל,/fZ8p﹙ZI1) A׀ŦLv%;EPd2yo 0v\Ƃ='vEl/<2zVJsmp?UԄ6"pkGΟBTYR͈V%=#V]j(ybŵY*Lx;ŠDYv?[3[Ď}*kogm*+fj7W4" N L_LTƐB3?M6A̟6!QR|iaK&Iۋ>\+Xvy.> W4wPw (̬GǷ~S x(<2':_c:TR 4ضc`6 u{(%B8FXh*wbr_X̠R %C}a]俜 Y=j˙>2i .(D"sqaw :(D@qX]wK{wjx^U{#5YkY؛sBlGEB-j[Fe̻PIϵks0s\\Ml ~Z|z|l_W5>)5s+{C-X,x*^NYu?ģ #vњK6>@äې񬪮ȚMp9pc:ʵyҩbGdOqzw\U kyr*aum 'e;ݜђ"Y*gZra&dA6ć*+vhl6$產TN{X9ZBBSL. r2am|dEP/DR7 ˭Aonz^7TOk7 ;I)D{w)SN|a.@am,<BR;Aih1ǃmF!4)\mX*ft;-7_$(%kK{]}=slZ(zDrBW- kVN`\;*j)F}8Z}ٕ&)&ZˈPc䮥u)V[ Ց~ݩ k_6:9.79n-cu\A4bj>;:`'h~793dhJ=mk:5y P</-aR oi#75 K,rd39!dw(LU4U%/:SO1!z, AA=lN-އa#:p8JwPOep6ޤPDUX}|="u򠘧ls]r)'1eAmf}-<dWs_dtHE&`ɖ,Sl wV-ISF{F@I/)ϬvR59`=ߨXk8n10̴`O7Ol6ꩪG\wD۵.I4pymJ&R }b5^ٶzф2iQYzw'H)aL ǎFD*YobQ%MƤEm"OT1gc3|Ƴrܩlr 4g4HK'Q02; sCBج'9w} ^w^Sl踾0ĿtCMl%VnM6든iêb(Fй'av(pjɤsy9Dg+ "JnS .(- WRCX%[E:O;֢Em=Q7٭q R̈́R)yYЦdf3˹eJƸ헺e#V/=rx"|WЇ_~*N7;_+/*}(JY[t{L=z2F>Zmű8rn"7[z 4:D-R׸A@vUL)y~xi~v B=ekH;+5lW.BH=W @VpcFAL{m]d fY>U뿡q"eF<"Vf95@QQSp.jqp]r[QbRф3к4.?| ў.0WK ]u `'3b]4ͺJZjŢ35tmxXb6_ lB' ay :#ܳ][*Fjf Ku[@a<[SOdA(Uv+VrJ7 M6Xxׇ`H'w8\EjgrFR J <-bY'&[Po%2T잖'Ft~b]} 5.s"f f[;kV bhk^F]YP=H<],ТMA̪+((ƨR=?} @2w= @pЧp(Y)cb,ؙ,1 NO $vQ )AH@ SCw&WÛ5aNSe 2?iknwz81K]r<օ L|A yʮ0]Te[ 7v<*>a'g,_%\t_BbFF~%'r#7S99.Zg]!lU{Z֐@t3R<"(7NӈQ-X)Nۈh`W5ws0K+zb2 9/.D+zZ0[ȩebKFp2ܯ|rW1th]@G㞞g"XƠW2x&yNMҢF%3*=HirtI፦K0fF6gC55-6o6*gΞ=Vxޫ0 agUh"!v Ytd~ul~'MREY{o |Bi+&;Ymx&S8Of޹FdLoKz\9eϭ?Y˕?HZrd,}ğ֫hΙł?a OsBG|Rp+c0-n ĕx+<"YѵRE30 ?2h~][8\IODKӴlwk4͋zZ}_:}ST;^mAnS~Cz)1`iWiMfR\DŽv}^.,9 ý0(L78e,roB阱> pLh8f RNY Յ4.:J͗s48D}?K*vl"!c섨3*>oe,fR2:5$c rަ%eti@9+i"K"V j5}^:IՁ{l.r5tw t|bQkt/*&x*D䭕V1r'\sE>%o7Eʚ"9s\WHP=dj䉰B_ ߩK7ʴ O| gA/˵:IYL ܋$t2ii*rz0XŒ_w'i%~:; }vs7o@ 6mhJά~_'kl 7fε c64+xP:u==EՋZ OraLuB:/R¤^᥏~sCd-nͧQo{OSs)77ڕU`D6׊ ~%;r ߎyG#G3tʐ"؋aQ~&#ѨMG +`Ep;dk>Sy`* Gp䴧"D!^uI׿٩[Vw(a$p2t^ePMK(&/x{ 9<ۺާxIw]?#=ć U򓨗ϳ|J כAIf[ƥԖSQپ ؑߧ=ӲP~8ƽTSdr+ʵ\"6:t^ƺk~#;.-cp}c^C+:8I|cyteƽl=b.h?GIl(q^ljl6mqL|a[ śgO㩚 ܞqƂt|?-Za,JlF=bhX/+&St8ĩO>Ӟ0]W#!5,tg{Y+Hw2l2HtǷ jSYj1A|-=B2K\>g4gD x5{%]J5Kkʹ_2ϛ@]Hls6=2_GӬZ/A!B>e4gZOނX(BH&`y= ԎygKa;Wza6s 9DzxJPYhu`Ȯ}r=|¦Wn(e?>7%/K3{} B X$+cF܌ h 4J/VNb<{GLyQ!/lC"\v)JZ5fѫ'՗׬څU焧Zw 3$̞NQN2ȵ&W'Fn .ݺY)_1kHI&I—!ynhP=!lA ;A@kH[|`;-o[3YO,v #YpM{gRot)IКR=^8wxE>5-@!%!A=؂D(kDLh˯k#u+`e`\6w؄ـy{G5GJ4En̖(4-Y,D$/%^jV/oVZn3 ƽX@* `l-akGjOm4Fv%IK.h_ql-/y.5ӹV5!v}87V> qasRK1"( Xʏ? d $ 3eTnF5_C)tAm -9⿼BNO@hOLcAzH!L6V>ل[K_xkinFYr)5x\{Ńvde[zP4`00e`.s ]ْNP@.Xƚ~oi %K|^hm{d/vʓ1EA& }Y͚f@\MAJSq`hJ1} Fd̕C_ y7uDiRKB"a RϓY:㈊-fXo'ZێoMICLKDe-^SztVHBh"x!{yL^zLq_ [G\i'=3\4{Pޒp4H!Fypbo)`R.: M[Z@O+@g)s~XirBScq)Q(V`76~I0t%ZeMNεw| <!;(ڋ5"i/Q *oKjdrS ˶l/ 6qALK <gHJ2z*e z1dX+2V?18<~H.!)9Ii$;g. mog=i:\7P$+b]v8;' k~ ]RBeqˏE}NBȦL Xc Sm"gv.Z|!nK0#*w&*c*>82Xݸ/UdԥcL-dQ!:9GN CM#t?i?;q W0_Y5 vY&#wt,qqIO0ـ8hE]m˜IMހs+Ʊ @Tb8t&2I2g !r %ߑ訮C ?9k\Nb8VVٮC>8zEduu=m/?"]> iFTBЅvZ27^zW9vGMUu}Qz@Ԇ5RcR> /2Z v("v~SDHrS3Dgq99lo68O"ƈqf߅>ϹѼDq6b7Ka*ʡZ@fEK`n`!̭YrQ:< tDJv-;bOi@ڽFD: J,믶8"q|Y yNᆴem8ءkgӂQf8;ři_9p3׵ӧ~-|2ktHi}3P弈l6";P˲KD+) ؈b-:\Xpmُg#ٸ=ZoviG%@IݩZ4 pJH%RWM*rVK+` TjTpѱbXuYi:O:KZ|ǵ#H r Oh72Օi2YB`VIq==<[,[` ؜2m]Wq۸fL G: lZ{b%r>'nި2~Vh>x,!k9a&2.Ñ`iZTCg aFJ):^Y^unu@Ƴ@3(Wo% Vߍ 6Q~7(Tl!{tYc-A#Lq%vq=+)^hlAL^dn2 L8\mT; ¦Q\~ZgV'nxwÚf="z#2s'Fh3T"^^ nXА ~-sT0(]'/ 5w>@ 0 ꛡڠOwd^0]k"^z&x&Ţh`2[ns2r6\7SK.,R?݁^NFB?q6T S"c+s>Z}ݛɾ'QU!ҒϞ-c0 JV=8~ @ֲ{P̚ZH4i]b_IR.ʫR1=)'Gg6vֿ$mG%~*O[ɿ\;D/.ZMۇ.؟<e!vy{IM¾R$oM3NxO/_!bYHͷʦ?Qhua7u|p:MmLM54okVڜ ͭe/EY{@ p'IYn<9*rlFp2k- s֞Bϧh:wzi 0?{<(mkrNC &U6ξ3gA;o8?)q'̑z R98o%RhȜshY>V?iT֧q/ P;Nqs:3l߃P0f? rsQLs-5so';ȱ(څ`X}A:JpӡZ|r) \*%m"P.-tT"}$pN G>+-quV|lvo'vx8LP֪D;$&ٛZDJQ #%R"nbCNu63&* \ʪ ڍNh4ȪpNJM^8{@6չkQV֋ʼn(VPm8^^1Zrr񇂔ct'~Z3C zA& 6/ ,z+<5zAW|+7%2ѴABѾԄxՅlWRXw$ om$l}.-ٺRL9館kn`xt-7V:4cO?UU4hp=Jp,9KYlWO%M8ebe@_֘*jsU2Ko܂K1H/SfoNn<2tܽ{ 7v9\ rUFH򶄵qtH@np\Vr:C$[89?cոϺeƯPyoS,`ԋրs^1}-* _!)F&#.w׾ZR[0^i?$w) *U>dɺdr{tW1Y D˕b|ޫwӆi܁^.QQ N:>a?d:WiڋKÈLGDXl5s29[7sY!5?&3(NA4W=[ DFcZ1fZ,ἓeϪӇmTb=c-wMceB%'x2Zi'vVR A]ߨ)M (uO(R4Rogsox*诧]WtI=IMrT`|w]$L"hCM GlCKyH[7sDg/\Ls\j-'T ~h}DR[GyR`t G:hvhm]z(u m`59 gڴ%:~rp+^D'%*[~^~]$SW\fLjqfԈy#1m[upqWSm da3 ~55q}1}b#^VDo܇L 1oDG x9JIn \cpQlFrfG3F?hg9}B$_栴Wka &6X>D  C\#i[Ǻ)?E$Z [ sS\M%|XjR+B{5{4A\}\DLX2+-R{pWBBe<>FbS `/eWgQ^nڤc؟0C 9ϻ`pm6Te6q_lEY hi[\s3{Ry_?X#L bf_Kں췯^[S#܌{gQX~j zh K.ȬDdau'|&`s5WMf#34eۄr85.Mg<( AdO&mՏҜ$ 1aIv$Vneռ߇`qm+MX'H38_>K(qLӔ7%2Ť9]kRJbԃ(M*Z}etp]Aܽ&Nߚ^Y= S#m[.2x46(lE*Zbv=H*jn+Ss itRjlķ;ɈJJE6|{F/3v҉BjIuc<Kh }$W5FP!Y e-j&J<,̣]3<N"=JHHY7'⽭_k0^{~Ŝ׍Puq=6Zn6({m9nOrnp{;b u|=3 ɐ:ԝp+"Ղa㚶}MM'p@A_'ԅ-6Ԥp}JqDlM&ejF |g@+9^$\0ύM!#tKhwi%-ץvدElpZ@:U 60ӂֿg# R#m|~ih5E'u5v.pb8D5`@fMT;U]U!2cd,h@"時-n۳}iH7ю ϗӢk݋_ؕ 0o6fa 9a"whh 7[ R"r>; o#4]k_*1|'?3n!FZu=7!`}M=i,]KN !`¡VtbM-Y8pAsӝMD+=, fy)pn5As!r Oswqٿ`9eDmZKAf)t: WbQ6ke6=r3 ~+vB1kyڼfC .SyrS9+Մ;圭GJ)""I[rx\1$@Z.4cT-e ]Thm PIfa]`U~&W|U=ni7J{ Qx)r [MO>ɥ1My^s=:08su\(`9#q0u_$6Sau!+qZKB>+? YͥM}:+,^kByy:<QyYXK0i2'ey)W-&I:,*/ٍ-q# aHGZ'훏/A&p8\*%9P@ڻ5+򈱞+ɩtvd)'cgj4f:Iy}<%1\DIq=qg}ON.Q;#zKE!g&9M,6\| *TC vs(Y|,qŮ@ +X UU ڲؙ¬s`RSޥt1t1qO+=l ? ]x0= (ʤh`іٲu׻ RyI+RXYf 8uHx^3ȭTo@~~xю̳X?< M٨)H EI٢>$~u=%g)"<{;i0c%N\턭{(j:LDBsЬa]Bw3#3~hiRYdNd:d6*dM2gA726^m@;W:I\v3ik+ȡKͭF|(wK3+/=SZ/[(܉-g|[9<L=GХ4-tà }JVL9n4yr.s\ȄdC 0u|N h#C<ɡw)V|I%Q1ٯbq~wlL}JX9tƒ$y9ҚATSA~ A[ԥ3]4jK֛:b2 9o;J_JH@J-b*mM8pt3d(sM=s/8f`ȎdS@|+q؊5PK]1T: >c F2V? dBHk{2F C Qke5_⤉+%&rNh!dJNPnNyn%ۯgYJOma"T#Xc*HCxڷ.ҐuKWO#xA$(y9'Eci9/R9lL rdU)D+,3U5r|oGGd:O{g@e.˥ްwVc o떎7Şd꾂.mEgܬ͡72,] 49HQ|PzHBC˸f\kM& D* F#}*3"ZZ0U_\O)t?JjԢkqA-pZ?z|TDd?56uCѝ~% ׉NKߔ_L 7$5_Q*$\L甝D@P<\H>l:=E-1u}N6>[k"l.wh8[`$o4d' s.|V*3H4x wu '\tU~ɄĈP2\ 0׹$ sm9eV?s"qBHZBނ\kye^ [@Nߔ\v8J1@F%f,&} i,$'e2ܲ)@Ocq/)n5)5jJ]|sj[ ۂ኶\V)t5w˯Zn2yXÕjZ4Ac$~Ky6oq2XHB*\|j]Jʈ̶ ܼ)@?kJĺdK<:o'ZKL.\wC ͉@lBIK=_r%I: Ԉk3l PIm/GgaW LJ\ CVbk !`gfGR5*6M Ç'㍜ `/9]srM >(U>E(#&Rw2D9^5HN@Ao2Wau)OreQ/ 6N`:FXI"_4^)7 %odqxd Ѽ$Q rwG$TIt̞O9Z9(~7C6=\|o-|V ݵ%?1[Li{:Nsy`ۉ@0[4P# cؤJ l*b ULzV(Z]@*h2 )6cleVf`N韥LhZ܅;~K`)jJkC3_"6CҺ19:ݍhwX@(joc #0klh^/eDaԇ 0rUA:8bD%ZҧA fޣla~s TgZ4P:A0{ sM)GͽEXe"cb"ou*&yOS7 3pGRR)deI(+*jP;dL~`* i]I;:5tW_D=br_#Rf&inWuJIj~˱+y*Y(!1ww5}!EJ8~dam3]Tn)Uw4hdv`vb~u)`HO') Da{v٥ >Ӿ(2wReF@t~PK|%vXD6Y̜x:qF 4 ,U;;=]Ri(b6?9ȳ/k'DLxD ހCv =id % |n>`b-hTuގGy>MfńHЛabr2-؉d19rA+^&h<[w^SZ1Fm3VdUBS*?t3|Pd9[9$6]# smsԙ$=-PvܢK*єeE6; xСuD:, NjKm4L-ؖq+[Bi g.<^ w\ Fӹ$(=!"=;*em“ s>I:Bأsܻ=_pBb$8[\ &FIW C9<9#<ûp\j$fyf/CV;!CWo NWlNs'LT,&>"G0x"mo#ܼCboI7x~L']1  t~椔*R>M8)F.Cy mnL6.V2E1tZW)ڨ"#FUun ''Xu*ŝC'BqU-Ƹ{ ԫபoR${.}C[K{*-QqR;U?g?lҠk&`oyѓ%!]4$B`YVՂܠ7ty"~iSE;Nu^IE;̹ZLS.PI.?JVG V4i͝\B-1 9aAAnT.τβ*XYBASTIDqxįANӴL~Λq>3t᪍)jq3K% kmDcLw;> kJ. r ,M=ոoH];FDp~C)9z/Bfbui&裹tyKO";bN]"8"5xvIktMTLnQ ˣE Y8fG %~ ORBQ:_dOv+˻Ufp8Og^bOR/?Pκ=&Z\ Ij)ϱOt9s_aF<#=8'n-se"z3y޲' MLDON &JFza "ǰ(`aryNV%זDw)$7n0V{©זGUG̞`vnšQx8 J}Z.0Dۨ~%t0Sy074EnbH%co 1 NK'єvCC?_n$^y5ͩ<#bR :f98mHZ)"MT=|D QQ׃GΥFU_^%};A ZoH)fO-Hss EE X{;R`2I0i2x<F&M;黡*1\:8p*,CXTH 6hm`V(v)g\̆lfJk# m4{ =D> ѐ0-)Nu~:A!Q' wZղINv!y' '":=@fhߵEiE4j0\pC6XO3Mҭd~Nc:>RJԲK@1ҤQ?xNR~\B |/*Af+vlH"ݮfPЊt \,I ^QfՒ7;{'7f U, z/l`k T_,o`ywp]Yq}[D*Ĭ5))2GΤ ;71T׋`JȡUSJ3.p8k/[L"օ -Kfq{ 9$F[]N;؀c`1h]кkq5h2Pjv u "w'-tvQ"]-5ءbfSu csTŁg;K'eS- \lC `[xf ~l!}{x̅$/ꞦDcX}u1ȩ]PűVW:dg>qATȇ$`Nc$ Nͼc(9wPƗ՛sݚv廑s$`XXliN;(+8ˏduy+ͳa]L5IuRѪ&6㑺lاg~ܟԏavͭ-}z*99ty ķýTO9=M +2g'&ۏˬ dzԮZ \ 5׆ ܻwˎ*eS؜Aw)I .tUf| qc*=/d~R`!YԘu:^iˆǭAjͰwvu1-ZОSR D.2 yB콄51kf*f8݇K1g=wo D{BMy`wP/N-t}cӑǛ%EL_yEq .;xCϦ d֚B:T9Z=N|z SǫWRŔ@>ёn lq\~e'S'6#X?~j;2ڶuDDa{OV9 t`<;xn@1<`8?+B76O㕛7=a:u\Ml(l VXnXaB}X)\ ]SмǼG% X`KkA9}_9Z;#śٕ!O Fjww2esgPV*GyBXP;pVk+?g6' z,}v5|7ilt)ˏ Kl#Ib9er++I[*us!kǕTQ@njyE$}Z/Hw,8=LCkS%T"DeoMkAemOfbQyL\5찵<חt) ݷOZ[sL]sٕH,w~B9>p, -E{KB·?) 9}1'I/BEO*l\SB+x+Y)T-@PXϑz7@E+>c{ [ CLJ&Gof~W iN:bsk#uλBм\{@]<Z(Ɛ9UAJ?'AbSK )V<"y'awC S}i\ hcR}xqhOyuhde'{-r· ^lh  즕ZrJT)&͗T\=5]To9Z ,^ sMBP Uy!&To(P{9=U$6 @%ٽ%]M,T ݩ0vȐ_3']þPWͲ]'7cA!f"цO<ȋLJF=k:&5Ze6՝7DeE\nk!i,ce_]b_Dݚr%զN ='{K'(!?=,u:_E+ˏ{e''!\`fRr[ " pb"ƶJY)*-:w ~!)/)/*}^NdZ闓Bf˚Q f,Hvn3v cWglɔa bs __ ?[z29fL=W4gr;Ww) jN%fg՟Ź\$m]HB!$G!. ^N8r}Mfv Hቒ=X%؂u1Ct-{bL~% ܞIC}Y;A  /䉖C/m&9;Wϭj;A\uتd#C vُŶ/Pj:&53}co\ִ|?(`?oqvAlDH)+IxdkF)9fidtqZ n#-_ŇMF,R~T̵tNZ\b%cq#tvmD"T@ V>+&=X :_~|[y! R0m8Lha WjNGt6KP֬E<@ { *Z#rZK;N9~&RO)5zw{Y 9zEnJ/D:r}S nCL>+zg`o|6%kY,9Œ(|qglb\33L.dF`|vӆٌ{⏙8*QEQL֐3(ֱ@j mp?{qy o}0)b  ];pXr'lnH%K-ҏIV3+`pȩ׍ۯFQ¦D_0v kaFSb-qߎ_$&7cy^Ld\ݼ'LzCfζͿoU/.gy>KB$ LRS,A-FD`PRY5+_uNWiz]E֢6I5RMCeZԷlxFӞ7 8S]$[-;AKR6NFm Tk8* a$׉k}<."+)Nj?oCD t\)A]t y1P.OcQz5ޭM1 Q۪SшXɬʟxE#y.藲ЯxPa+k`>HkZ1]vm'z Ǿ|fg\zV%!E'y5~x &?srCriҞ"[xd"ymI$'AjM 9-+` O[P/a2f<Ķ 0s NsM U&Kǻ6 R߈(z/O`AIena=f҈r5 KBiĽ1o*乌b6A݈$;"Fr=EɿeW|LL2xMZn^ (o1xUem/Bӆ4ˉ"*0JOƪ]>NG@'u̬"/ ~to@D5c,.9bR^90SnpE2Q޹+ߘ{D'\-L$׉[IYpCq\θm @ZBiۗ6wD6䯲:tok쿛ݼ*JTm Q-2  D {'h Kz55l%^d}G&>\/ 8-c!>"]0V%{}nH ɲ> w"_{d0!Ht/w!ʕǰ?veDtP\~ HKݳnzbU1?a^3-p6oٔ--s^Bgr:'9  C% {SՅ_K8Otɤ=jOǁER+MֻM() fPs#hag(z he(3=j&;,M~!Pip |?WkӝBaF8J2?~BoN\5{ O W=Gj&F>D؀/&)8V;"q*BjCPݹ!S;>]Қ:)K.Ǻxr;[7!85t :t)=e$^T{w@扔ߴI_<\?c 2}4RT ϼ$Ѽ;}\$Qۉ3q6"O4MBrw4Fj5{]4{yLыop˵Eq%4Je9Qy7O <ٻ"aB%(Y)2~:Wtc٦Xy} 2}-=#Rb(|LE RBnۀ:H߯9f·muECk-R?М|ͬK.m+ކs]^zhʺ@ܾKP[CYal,x{epURp -9Mpv3ʽ{ uͫjOz**" 9y 7BT_%- EĽ$h^zxOh-ߒ@7Z7Kv''#~;!2`NdF)Ѯ$S>KfOY[?+1NQ`Z nj9<pӪ-G (] ր 5TMv%$mO:JD--#Cހ>Ln6cuz<р1stiAʌEI7%g`)*l3DUI~)$4uDT]kz_x]wiXu=fÎ9 M2͹X5 Xl8kkh!z-xTJ΍|N#-/xfx~$8"*\ZƤg&]"T9U $vcƤ~pO-z"F{Jgg@THT':9 aUd2^a+ 2IjijKo7QV:IwB%2C&4/݀`}SAB, Զ3l9 v 9B-{)@nz!I#- #:MX@] 8(qO-6i3qW׭c,WWyi̚Qv;L RI %I4A+ g)Ҥ u7=~nfIl0Bh =FW)7^ s+|[l3t7#sb½8S?6m6(Pj޾ Čf*c0GmW!Ę';<2q+nxOwDy'&7x+j6#Hr3tY^#@P*S%;tE8P?.^ɇ\Ww+N fe9tVYbQrJ~ozL-Iq(4a'w]ᯬw>Çҗ%wշ͈= XKB{;(j"#T\K7GBBb:r9eWpyhMo@ߛT1ѾȨuC[N(@ZEYʼʸq/iJkŧ8sf^h5a ^ـHߴ'鋒4 #nn |*quDt$Z1 _Zpn{ש^Da{4.륭9}Rf߲S'L`]X6 ;d[HVŮ*vr~M)O߫YKp0%)3$gK-o`T0cV$m{|?"R1OEG J% 6A*c,4] ,}-jy쀵rwU=D4j\]v[gsՙ!kNϐ hK vmrL4I$dT,=r?S\y5ist#pgM[ZbYI'mZjuP8C8|1_Vyj'>W !aw Z+Yf,"⢚')fpMəE)+۶2ZVZo_uVĆT%a<]Q;vюCGROj_b@`FMreP%>W`Zȭ:وȦ[ٙ&x5.ǿ =Y ҃%wjJ"h$2v. (>߮Ѝ6ܡ}H R+l5Y:?Y ?gY[/R(bNգ{A_h۝a;g7SSVӺ,'ͼE.v)H2łiͪ4{wb[`oE86391xii[H60kU2{wuprd'2ċXkƮ9F',K:\n+ǿ44\ Փp5vQ=( oLbq{l-6 ?j[hٰADa^nֺgj&}LSLg67M,'H귱?sf|)^־Wη'`Q˟WE+ytxh1BCV'/džO4®W9M2sHЬA"LfmFEIk rit2z>7nQ]EPD^CMU> ўԫud*E03r!=&ro8΀j9BS8؞"lT 'Njloq2Î};YEb1{ $ޯPɢ\ 2 qb_}_~Mƍðb35gJ7eudlw! ΡQ WjbtG&6<Q7oZ B'Ʃp]uOjZmBߏ8'ؔ(zB2b "eR, [3k iJ%e$RҾ,9CSHCc貚u( 'zU8HzĘf؇!+JghDjV%9}LmVI1#Ob~]TƖ*``Q1wXtȣHm'H#f 6mUujT2b_uzwV{oh[0k6uZP0]+oueή$(|,i:LfCtJ:зGyh{)_65!+0 |t)#ҋq,Z+fȦ ح*VA E$|(𔩃޲5JяE0%0^iZֆC WWtovaVA'sw`G+7&+KؽM*O]kKj}1ql,ztmh]oH2Ԏº)w haxP1n^5{F+w}% JKƒX r텡ZDHPi双\ˤx3lۻp!yXw3]3GɆ1HkxS;~$3h*I=]W3V**Z4`@@[~EElVJ>|z"Aȇ=쬺rz3#84ug5>%z P;V$sQSJ}ȞxMTL-ՒM]ʏ8@+ [%[KI뻫oI#tEFAKGA\vYF<̕3At(%1 UЫ8k%3!wJ`(لO],+ `}S2;^C$ ҨlG( ;!ש"4lN}8d mY\aɸ_X.5f]GixvZ] TCuRH+ ,9x)D[! K@%M*ck`9c[*riQI6r?wYH.q$<%ѩwJzvwͻv}|WL9#a= ;gnR/?q9>X Aw^Y[w'EѦ=Ox1V_~YF s+ ~}CW"_RPZjS.|_}3"ŧ,)0A3D^97G$l0t!&DqxQ/6K*9SQ$IqSeOi#X`4&1<"0Stb\/8Z7{GX L+1Em̩A#2ʍ—~(FS)_Mi5\X d!6 $݇dUva8rI)lK5~ q~xIR ٮJo0S="@33Qm `FS2H!|0&?<δXG^ͬ+Re 8S@q}?0K?O5Xf C$8XK-f~%6U:fzFbJC>u9REN\]PDqƇbJRLg7'ި'Ihu[l/{uOVNҐP@=-C%ފ!T$HnE@]9'9BHo!=Pv7&bVjD( KC9..ňLs"*&E6y2zѽ kd; XN ˰n Uܸ)tV?g.CK )rԯ2C4[BbBӉEzYD(cYa~',+r`UfLg!q‹y_dgSZu>oHK(̨޹ R" /֌CKtTu+{1&Mw-95<@DzSR>rydh-DK YD,+Wx>\kc獏vig[F@W 3 eGm}Bv~Gbf<ݷ: h/Oi 8gpj{`3n 2-jpBAf^Eun  aBӅxBj_o x(+lğ Q@).c?n:1e1־Mk.qXvM% kXS=02 ?yJټı6r># z0H$>*.kۉ թ@ݻMpP~8Ȥm99 ;՞nz^#F? 7]liSSS![tN*o,Ȉc%7 %CepIEA|)9bJ5,Pkayp2o=4vz4R${,U qI-)>g6Aj5l̅$[!?/,OmW.eD3: # ¥^?ЩÆ 1T'zJtz}f$cdS+?w3K- ++ܼsMɘCW7/T眮pWN u;n2(%- n`@LffOaqj4׻} ץ`|8Ǜ/*CD0-8Ӫ$$?Zmqځ +Il(xXŞB? T8ce#6#F^4Jք E&j$je0ĻsX8#SZ4YLZ<=L;~ו̰.)UM.*'|X-[Ó>%խl{x>Xo٦IGqINţi>+7AH7||"=Z;B0ǺHfR} (/ɦo%B Cg Ӥ S?;X]\kħwEjێs4%QxK֐5Iڽ xӽ$%Ѳ6l@)&I=G!ҿ.<Ÿ"4n6_肤#(b#ZbhcnKsP9RUcjcҶ`CzP_l p[*T9.ubMD= =~wE;? Ut}gkM-%_Oks J-`eA %!G.+hdmatK|zo8I6-W,`Ur~iyhNSE'_M/DH@6e& yg]@Yah:.9tgdw/W=(q `)8 *spmE=uZR~wUx:}/[U'mLdd2teѳ 4IW:N]:£ kd .1!bdPihȓW'Xs)Mc/ni^ =VIGk|隡ۿ~bh38O%ؘ 1ϴi ⟴/# )gv~\()޴ mS4#jnď3w}L!d_yf JpU PvZX~R\;XzZ4 SE8rQ5FO> MsYewO`oM9d\i%VFhy]cex^23A-/h6> eWCIH*$pojڍ)=vg gF7? 2 aۅb b/ʃhHP=(߲ @NSPhC 2J;%&a|aV``{p!NlR([ ^a0/kBhO?/ޱGbu8:t4ɠC,cZݨMM$GW 2.n6+k-N6ηxjwJvkz-J9ڰ'K,?}g<*x⴪RKƂrijae"Ox#CfNT5M~6p%ɔK  OEa dFF%(!@:,BxjB*JmMഴh^4b|/0p\zGw!@9FEm"dr8|{?t0BcQ>|1JKk"uƥ˄/2& sRI(! 7 /wDe"xո7w񤃝 'BeAW@֌,u|A,ՒR1,DIvPίGAt崖ls=KdPJ"ˌvVreO ;ׂ(ŧ>zIFOg9 :dž 85*^9[9P.kFb~d ƨ":0J^_84N[( <\I{'@wQ@]3Qŗ߰ ; Zx?3H ]RTgED +>L^ǙQ50?`bFZ =MSS-"Ҝh0rߝH`2r$޷Ur<go⩽,$Wa C/3-Ktd܅ltR,_#;ȱ1~K^ᠳưD\6YuȞ\^e.%SB}]х 7Za4)Ua,9K#EEIM'Sx_ЯRn% &Lfo_ L>IXφA]NM?Ey4%k#AԳ0ӕ j4X޷_eM>uO$8mzǛD)$<ȼND{}mLM0y9 B/jv>aR CYzL,ADIJP8<ϫQ .q t7Ɵ ]ݪw2RHY2^@2ՎH5 !GZUJEGEcH }TڨQV8OH@ztf!ZE$lD1dž;C+a.θXVlT9a[ DDHU{[La?GpIv!6-TKL+hol$-=v.Yܯt0sخpM<ڳlfJ;,l LfwQnl{/;qpX Vm0,)v'JL.iJbm$vJ9HK )2.8qL(k/,-K,GxuO yxjV}sG&7 t ).q#ВA25ƽD!U\ޮ%.&g U~xq,|@GiZ8/ԀX5)u.T1GmH[Ang&c McJ'?ϭ|hB6ƅ5歅ՏDKP:  8%ϖkB/O̊sIunskux&D'ڈRk8<7K D8!^mJ#YQ[#wa᷁nfa0fCL & zfHˢ%%ٱA$)d;kը0s7 VddAO ; 4fg_ 0Fᎄ Ь3BH[nkBDgy*•ӏn,u :ZVMlS$X$PE Vʲu-^W-) v#+ բD E1=en!X` 'uzgJ,v *;&IO?.ᲩBNuczY zha3ft83}^9$i^n"ambI@:!dEQ 0+^{X"r`HuBVDǗe%諰C~* $s?l7Á ,Όp0<HŞg Gx C{L¿AP7zWxChf?[at,ҿ`N;eKZl"ߡPiɓ {Awgڹ}es:4(C[d;PVB/k0^ڷ Tj#,w&JhX7M4r4@yI:اƭ1l A7mW^68K;ՍMjBѶA3R SJa¨]de“8J4=W>Ǎ8ZQYn W"H:EŅa^5w280P"9jRzӄ?%4fP*]0Pe/keaBr8A?9(fKH>DQ)zSZOÁk'}ZHPPt Ql$6x:vc>SKcSSnւZF$O 2iѾXaRUzB{Նܬֹt0c~к5wn}_nWLjU7xh)}o"XW(rqGLH,_Kr=/-ed:XGEfVV45F#9/l˙8IE*̪xmբ^ߌpFa JvJ#=CG}9glmK3q妝wbn@ݯ]J_<μ$pQUOn8Rb cpSe.L#EEMm2jgPN\QZnrsTIґ;ڍ j#Nz<+@:MSAa6_;h-/;p7v1fIg2*\ka1LmE@O{UT ,uqo45*gEZtl%,cqQ1"hǝz/f'^n*N @lȵ,ey>4Հ~Sdep%jqxhp[VUᅧ q5i7]V=$-$o~%:i:_9*kB7ZJdhxA:.2vah&KP}g5~ }ֲB&Yp eH!@-m¼M+4flA)<"B+Oa9 f]ҽbM;{]W16yՆ_ ߸o  LBdDN$ 5-~.H!]̍e?WSIW]JTRV3 |b<)xUh I5HkkhQ~E>cι9Sn QtL%>90&gc&)^ C/˷dn`j?2{$ypxABW)>a >}?tIӨ ^'?B$C8j3K%- *GV Re_FM{ 8ݤr0%vwLUoљff11bڎ9!} i!K%~A4Z88q2rveqɠ7:kuNΜO zZh$yߦLԹ[]faƠ,[LO"Xӿ[<3ivŢU`D{Z}fl"k錬֩3ڑh*48߆]ad8 ALYKwO0y< ؞b9x0CA 8M+24(7Bd9~LI6fYDS1:l|t:USh쾲!/E!4I$azF;1cX%TA ?=\*kWC'UVW+0GGFf>⋇'1Hm~3)<=Z:IUfA5ηu:f3(1r^&I {+4'hX˩j1sp߹#"pYk} GxtH,G~и jIfc-tbeao9dô;,߽)O'< LUfq2y+p؂)r)}g``zCY:|^>Cl0dWś<{J;k {ǃkfB"rĨRAC3f9z*BҐQ FύL"T@65A"Owܥ7p0BI*9tSH݋ X`~k Rd@v<Ŭǽ'ډ$L !N45N~NU>؂|Iޞ<1 c V3.|ԭ&-^PVpcHInzJ^Y-q$zl+/ 9+4Wo*+Ag 1Iȳ $'ɮvQ,-<Vј{ڮ+DMU-'=р3U)nwcBr3U5hkzOBf׋V@w\h-)Cl]>'l27+PGh`=gWA])?20xPESy=Cf pfjʩ.,‚x%` XJY%S2z F,yfz`w Hn␣fע?ˑR߻qP[$V |>^ӥs>bAR{X4{Pޢ%aΊV@)b1dsU)=- 9NJgNL$ Y=pRҟyȅoL@ŒSqZ*NpE.E.O #˜:]t'~ ; "r h/ 5:4%h"(bS1-T[m3Qk26'V7ShxL\*}j-cV- HٰVQ _}1(D%r< X<)dq|cP͗Rm*xtI3>3-o!<4JT '|$hц])10f3Ih߁CC1MSQ:unؾPކ9ؐqpŕ: |ړYeDŽşUKg#ĵs1E M>knղ+ IzYew\Y눞%u[/'S]W)f>;[Ƃ8uI ּwG0yaҥEkybWgVMDX%F=9~|)i$z7p5tT0(C00AjI62_:2!oA`~Z}Dx{<ðN8,fۻwWD5!NɅ1⇹P7ua'Ow Cc m&-g Y_DP!M5jZS6' yϗ6}[; 7Fq~ y h|Rצ"Z`fa!%E@ϩԱXdeO}w;Ґ%wHpIc<$"ץ\7JYQU=H$ c2iL*4Qklj"MN1L]ȩP~pbVymduWhEj!B bH8rUE8>'^ 7tXm.Cpǘ5ߚlFh}ZaÐcZGcפp ʬ+/Ls|#*1e_\͓៴f ^ɤnyRMj}698euW fkg gSHvPL $my0W'sN.o黪*Cs{Q-15#B# h^]P򢳂ܕr0+8ꀇH#|`f#_\`?LJ?]-q]:1g<ѱc`֟;99X]sB!S]%' M;P?>vPdcZ`M╠kr^H-(lܵM4l+} L_#Z*9[h ^񇆒vw% z nx34T,FPqQ&#),$\fJY"]wtJu}:շzD)#ך o!A9f~YO2Q_39Ĝ>gRk&y/l?F5Flr9BR/qLA:2x"ekpuKڢSXe*K E~B➪JOMBm #YKE)QVkj(-_/J"bB6/ QªCe`z|,VwkG1QHl޼ӪFu,p[AnFs^KddNo%Y!gL$I~Xag-Kw4㘨Kb OJsMҁ? F21M1:QG20U2ɡ|{$LV.kiݝQ 31M7H`l=&Z7cHW2 =GȊGtAf&U!Tq5KK)9s׼!D~cx|*v;„.3WR,PX֔(5Eo13zfeJ-g羱(-9@$d,F\c65HgGBqم@n7:ӲZtץ_\1V}򮩌. ER0v#ɚV h>ˊ\Ÿ bdi |H{=_7}}W;VYۣ{{'pұ_[ i~:L6igLtveA\m$N:,j*=Pi!hNCB/Ⱥo as-Ql@D:%zqy CZbR7!LQkϵrrZ2mʴMa6!2>l2\dƙhEGiyr{/PLj6HOӀA7:W m,tIهAT(ã]{FLn~ q@.EUFW ><> }71rpq16iIL|V˦YoOK"WXdAɢaqn60q插)BIzg%o1γUhBYRw㷱Lt-`{+O:ERF'F7_ eE{YAӠ?b"s%M@ Kp`ҵi}5HsȎPМb0ut9kᐢp3KWޢoubBGTRwY U4|93*h̉N}KW/1C"!+ Go8`e1¥Ԫ5eBR絒]?:[duUMtVԉ .ȷI= 6psJ㫈-`ya#hp_ QZ1Kcr>zUQ&,{nsv)mHg~J@䧐T#l>$֕Vfxna"w^VDƤ vaSB`OgXq){Us:8 CO;cFG.!cZNa6:v;tɤ*#;B$]P1 ECLRU@g=;Ry-F@3ċ:W.`GBvVe#vh  5:U,֪/JRD]|SiZbEtHQ2wO,-Bj A[61W?xrh\T$(9!坄S8D&de#6fe2XۼՆ ^'{v|$P΢̉z  ̚aJ\v9MOڮ)mV1j$Hb;ZVNB@TER^?ǫ+#md7-sXlSk@(9qN>5]-;"0~`5l,HpPwbs+5SGL%6hzpA|;^]]kUjв{ɗI*AJi|ΠjHaµ$u-L yddi@ \Y:wqPϊY_XOc!z~#g'^|mZk-K{,W#caۂ_(V:a 3uGp,h3vOaGFBFv]{`>m6)2ޖl{Ij?Xý4Q2w/39&?#NN?w̝_ӈZ)_3wA|*aL(Zxk2!AzrxAa Xq6o[48hA}w>!01ea$-tz$U7 ZXju絚|O0Nl&6Le:(j癈 (n+ӹGRrxaG$IŽW Q}G<}5lpva((c௾kUW_WLѥ[j{uln52לE)c{ִҭB?FBCB{&cUF\ŀ-ޮ-lJoֻ ?V`p CQt9oWnƁy6w5 d z;QOp[8V$MP~L7=jLB.leZ-I c [/`B*#c1&m]ow6)ze erYng@Tak@53i iMk?V8ei8U`hubLQrVgFA7 ^:w^@LeGFt8 2Pgݙh$%p?f4${_GxNgd_&|Tj]iv|=r?rvxo(7$^2 w0U*^O(ms M7S3+v$q)W9c9Ĝyb^;fq]Q\rpٲu$=8.LN,jh'ϏSɽrC}.I?Ţ#-)81&f4R2J4ʔڇC#lKSI 4oZZ X kbք_g帆a\(m0̼OJI@h 3p-:S2|)+,EI&T>2)$V]G(> #Y`jS+U p TU13C[=1Q oOy BOco{`gp- r'Gq8JH27_'i>\Y%=`snF[]?^dkV&;MYuGh%l #FhdD>ݪLEĭ5jbN(DxM51{>[dmrWG$= i , "z-= 7Âp بAۣd$cS#?ъќ|CԮњ ^"J_vɪ8+Pycԧ?eN 삁"@|2F5ݖ6 cx]e ĥa2E[d҄4!BuQw~QY0`4Xdkw!HT^B+y#Gw72}[ځA<,IGn(흒o0/Q~[oZ v1|T5?)vc @|4) Qu>sXҴu =< `dg#NvŢ'<5#6,>1QFx AiU2Qz$KЀ ur!@5|`ԶN U7,WķH੍3X}u޳hP7kIwQ"@}թDe 칿fPbA0"]N TL݄Ouqx)Ep.yqiomx ,N=Y#(L0_.3:S& ;Q("Dr坃Lƀ\!֍))9X97F3XN o8}-3Nq:e=vm:(0,LVw2W*9%[𧣏d( (ڤ=N4Fx ER9ts2WYdXeUVo+btR9aꮕQh0jyM{k( ė~'axiibb%, } . 'zۚ /G' 7AfE-qfirX ~p:g=Lg}N wB-o3ס9! oЇz<˜Y2`K: X2ش0,'yHǗGT*4=7:2uڅ{P N>;/R{YT1'*CLvTj46Y8f:H.UhuW'yyC]t60wA|tty C Pew-#LI(Ǩy{Ъn_ 4Y5t${CEJz{8D&F}H[bP0IC"K^8CQl(h;m<6pܡغڋ0\1r>+rM C׏r6p+`bhk(Q8kP ǾϤZ2RfRObìA9}EӺ;ӳ" n汦%.Ǵ)7 8 ;ahnIVaTUgsu.觪#XŽԟ},58:i9)lrj l9uUqhRZ㼛I]=>XՓʋ͢iBQ-:x;9r}Y@VcMbNo?r8Bi_avՃEwyʛ2fUdQRtv%])a:2Sa0 ̋ͅ.Wɐ_c=rn㯱 7Kp~' O#|faGvHlzۯ)xG7`Puӝjys*,onGg :$Qb\/NwؾP`| oJ s^/J]U?(+SKյȠ >}UM a #DDu/A]$@ٷ5>+ܷ>\,aI"V,eyt!$ZSKQJc"d[h}5ra&}G1N.~3ehC'E_w18~Bv"}m\tJH7}PlRsS&dە@N\+wnSȐ?, L5= >;2cBɣJeJAK<γYΪ10%6 v%%E3esΈ oS2x 0O5| T dN|D}@\S^{J}C=?mHg^qr:`]Klr+ ճaR _>*|Qe!u8YWW Kq-HĆiBuMUܧ Jo&dvLS bhv&#z}H_AX9JI#bCrsY(O?oBI~8 9xL9lѽ8Tu @U9>`_ RԼ9r%ryV4$ڡzeKU Vgr]kjP]1XT$8kr=oןf57'M m.F8CS"_)rH!Ta:{K*JtpK*g1v6 #^7PA;WI{,X cXOn6J} u]Kw`"ڌjVcuSۄHA`3H-9dēף_SvK$9.z3>TAd:ѭ!+-CUh YKf8`lZ;A0V 6)$D`ɕ<:҉ Gq$x[JA0h;5Q I `\ur ѣ{8D5U5_"H:Ϋkdj> Jif|O Քxj0ܲƺԞc9zIFٴJF"}ljEɈRHHr8 d ͦ`X@h+ɲh}0Jtt_tAGpqQ u칸k[5S牿.=?^Iv#u%k/4cTx@ GD@4#f*uOQ*YUfiŽ`cL#Ģц(\?(i<]C0b \E $EJsr.II=q2m"P>dd29~WȮvvXP8*v8J*&A(r1n5][ad7lwsnf,:pʏֽH_A fwb Ldi)^~h9qc8՝:*:·(p[ۊ${I/z,nɴoILoD*h!L?/f '+;Cy>P57@}ꙺQw T6hw_U^٥֬ZpcXojKɐ;IS w2n _ŗg1m{S ֿǗ6B)S:ʃFJ6PjQnt'Y`zI~QPz KQ zT >a ?E{qW[r*1 Bbư̈`J^Kdc O9S 3 e!{9d_ř'6pbjSAņ4u,y\'O"o#]Ύ0ׂ0YW~prf)Y3H]܈2)\юՕJܟJ|-WmZI^jStYLHZ5i @U¹T$WZNtAgmr7;\fCtQ$%PqJ}7) #`I~oI>iIUDX+>UNSzHDx*Jϙg4B΍V*f!NMcA'AWrh&ǣ>??фpF>XJ;7 }ӿ%d8NjC\ɑ^1X0C'bF-ZY)uaJu9?}OdT=ȼ MQXu' {H eHAw& rjHo{:.\CQ'`}`G!zk8bd.vA.zy9B`V 5 sgI40A8% sJYP!)FRe/[>iq_0bobzrYW .9v@zXYƉM%CذK[i%!3/GLwM61o]k9h=Dj8CyAu). `Ш.}kӽ\}:uY#2Hp&f."f2zУҋÛrg5vYQ ֕ nG~`T7%</W*OMPcN QUh$CNI+&9HʠY@l6I!kn~o[eFgv 6CvC5A -H` I{-Lo;N #~j(ĈG'Ŀ@RQR`EvI)u"iӵ^0 }DDRr2¾bБJ0)IqсE5"\B$ ^j*oQsH12j)^O[gfnOxqu}w7+S)}@OsP&-75?Pu&SҐYn$KԌ)Bqմ  @p7@ao^_Y?CA)4OKkXE?4G^&8g {'ʢ((v!8JT$ ^ U5l 8{ GR|5!/MYV>w Be=޻ ;mVp-efmM H/U\pc&k;$Dh'c”(g6yk pB)LkC:*1({[ӻt~:0? 4|XNɒf"ls%Dx̶JAjȠ;T֙k h gm USFF Ki 42MyP1_X$Y!oz _ޕ=?1WK]L$9CBt@֚"K^1o,D$Ggށp)pwB ~7 5s+ K0y Δ>ËkPrWw:a(`\&ÉHk^ŚW|+ErT_2RUӜ $ёKx.b[b!b *gB J$.=YVb):(ʗ -!'Ye.L_v`oĿokdL삛ܬJ7nF"W֦TQ SoY}`gfaMANA5TZ[-GG;'N7p[k<\6;Su O߰jL_⒤|f5"q y|[Hǝ;~ɌA\Dem>D,OB܁1/^DŷwleUIGA'AJ~ӽ_O!Rkڃ&/m E#lm&4Dp|W6Uv+7#yϴ5}P낁؃?= uREn|̬8 s^KHjnVθ{w5]ZُӳzE H Q`fr5h+@^LAݘF0MdafYxu?'+zMI+{-̓#ss1;$q,Goo%".yI;o$'$̧&QG;?ctx ݅lHkK0V]H€,IT^%R 6CP|skִ*tUaa>,^_ǁ@0vAԋ>MCrR% $ @ãؕ:e{qc HG Fr~Ǣsʤp#N3% hdǫaIn{Cjaaŵ #Es-,+\xR2[Ak-@4s]֣+iKSbet+KPIbɪ ՝`b`pwp5uV`PMDDŽ{*b[fF!2@֗Y*J_ߐNHe e>fqBpBos Be&XPSŎK"^[2XГb4" 9[!Uj|G^!a/)*l)"Gf8j;VFQP/ y)E-]5/25 rwf= ,tLkeM-Ф1U-@Y0(}S*)/UWS,Ɔy ޛt.ufĸi_De7l5' K;EʝЀmZGnrQ lydX%҅U_;)ťܩYnRi%,'ͯ}=$]XSo.ivԂXœ.x4V0&xQ=6vIЦDFOND8BB{H@*8; }!CvdAZljU7@>@{S (Z!A{3ei/I@"?%KLZ}ʏ.u8kjf^HeQbpF ϾF|,: of3 ![;1c7#2 ɼf@n3󾼦wq^U2d@g#*f͐Ԉ4 @Q[FKE!ocGRae_x>^*qpwA ї\DN'b:N.>+Mn#W筗|@$ԧ>^r0B/HEڞ0 ߠ Ssmy 2; ǖ%Ej90Z O{-Ӛ]ٟ1wVoD.ކWWZm Fֺ,OY5ikqq+ťiW;V]:}e NMWt09M~|8ey tHt؂&` y9*DQc,2'uBU''e?n4(bG煯l-䪕uݿ`7:c2 =b2:i+z,opsgۊ#7p6hU܉@_ñޗM]G9d.)َWVP|eCaA K5A'P*!.⬅QMq|•kEBXf"KRtjȩDҔ^́lFB},6A%c#DZ'҄Xt)^b/b83ſ⠣ boW(o+^_7aU}a!xv3 ː:,LW5ڿ] 7Qý$y.HqE&A+N̩OGx{$uiPISM8"K CǞZ.zB\ꉠT>WDžNtx@#cMÈ_ 7q+QDž Rh+QQ{;nsM[s{08%ã/=S}T'Q>U[sbaٮo؍UڝXNS8}ϑ~mIzaw3bR, hœ]++沆[&H8 ԇH nxF+'d-G|W kjϵNQ$NazTH͜j dx~Y4ZD@IM;Jg_n-hbOT(ۨ[O;Uث.WgJTG<*Cvѕ!Yt'gB I{r}϶I=zDŽe}3tDLIGGHea6_J6[ 1۠=T`٩;6c]}>B.ԼY҂m1Z "`r*mvkƠ˝&dWl80I8O!ʢƏFiMCx+%03Rs#9Nӌ# /y+KŻSKǬ|j?&^UZ?L{5(kTnWc}X- Hf:9ֆa2dijYj6͊ ]O$^pB^DL5q8霸W+*uiXrQ-NEʋImF`t/Se4iמ~rBYݩZzxD ̍~5 *C>ĴK8RaR%6{,8Y/;pc\?\ٲrx(9ޖepĵT骛Hc Q6B'-f^#AѸc`Qh!z6YrIF0+8iVe5חU\nwwHfb)Gnf / )M{KIʺa߻vk*fviyg?<ۢy)Eݦ:ba˱ SZ[qײ1+^ $iVT'ϕŸadՒ? \gpO`7=eQByUGSŠj5N>!; kkPB3#[t?qJ}O^c Gikvr#OX p Kɏ_}TE8I1611ݴ#^*FH 2Yȃ#Y%%h_jjS_r"}W-w>~ćLbsbrS{i2B3wԁE캁 *Ak+ ZpT•.)9Q?: );CY^sH9}KRAۓSgϑd>[mHK~qM6VX^`as)tx, MKDݤ6vŋ8 !0jxaa2ӜA Ȣ&ae.LWaY؛bQ RPca+UwW,s'Ws u x<2•5U|w۾90!# :5rPJ>J:<<`p\ TgR<K&ڪuZNɎU2Zgh-%o\- {y]+gSNQ/@ *ߟx5_'{%);ìƨ(\qy_'I!]z7:[HGM#P]z,{8t &sݿ)ɓ. VK\tP|֭B2[}L/0I\9@e."~Ś;3~?$Mg"oYV]*'zWA:C\#ʛj1V#0^4x]DV{ ;S =U֙WC0?gǠ78z""s'ggGŕ~씚OGMMhj%"Ka=;ҫbW m&-tZ8(^ L<uTjU)p H#UIYd%n%YP#/HS0xt$]Ӕg6I3v7ai~wJ/WGw֣Tif3UOjZρZ뼱x;=֚ɿGEY! 72,^iJ_)Iyi5cD凩Hj4U{ϠŃ:>#'wscS{#o~B+FPBJ Q)Mnx5Re8vzgx4r{v[_F{4ɖ'M[jwdъfĤM)cEuW^5ފvoXQOatLe崮x1˝+1Lh1 뿭I2*hKZѬuӫ/8T:>AF9Ꮐz7ȵr޹sp__>xMl(@K ?p7 haf8Fܒ/46zSU膘-և`'S vc 4*Ttx"A1MEdLs~kIXUާ6W#4Q,(Dҫ\ ^O2dc9vLS0Fа};A% Re*t]qD}V{Y|^5>T+HyAs \}e#c>0m[ƒ-gRr3VKOϻ) ђ0ݟ`JrHjSɢ$ZM=d0.&g3 "'aul+_qbHyUj"$ zHy52 Ap\dC|T &<- s6ӎV;|h\ YNh8/UlCeQ "N9ܳuĖ]SβodBFb94`'P wCHvK9^K* =a(ɩq&/W9V:VNPW#G%6:o:՞nZ,V}ξ73_[LjyCVv zG%ذM,9 *\ņ1B'JyC3!htPSʃ)4-9o&V׿K,ޚ$.Q\JEYjya`%3&Qo+@F2IN}o2 tB?FpӸy=RdXi$2/km&yC`P/b j# * 'q ,ZAXͦrL-yI[E<@qB:NTx5-7SȪfM$5/pvk=0"TkMt(_piHE͡iEkJMԅ}?HX]>1ʝgC)<ƚNXtbvdkRw>2#W%{3pbkǟ66뛘Pyԧߜ&uDf(pr`ԋ (B 3< 8( ivg$0,(=nb=]Y#O3dCܷۅ[`y`!)CH{@/) e3Ou+'JEJO*9Fh ;@7jt!D=! Q&T &tAֱ^ ؍Oc'l؅f^0` NˉbE6RPZ;#vohoQm0+Q})?-HPl~g++ק.mL贱Z2'%`ngөT aRE@ VS& X|/2ȷr嚿d/\1/p=OP j[yx@DyHEo]k}dL^(&/ '*MYYg~3n!'W9#EϱD6s~Enp*ΈE= 9ǽ_ -^\DF8Ő/$XLEXU?뫲ğ:mV;E/5y0JBHQsaފ٤x-'XsՕ#K!D'N1TкW4_9sKf:O[aQ>D,Agu kvel|4"Q[xh$bS BE?6Ŷ4m.QjL>Eu7bŋNgkpW7߇ǿEރ$m 5qrx/|}n$#Bǟ=[G# KSU6\:t43E6?)]&bBDmTǒp*F%{V@~y?53,zH;:ߝf82vE^qC效栱Z5?px`C8:'e'O "J(fאNbp-7J :SGޢB¼)bɾs3*|BC7bp8 <<=~Y7IجR ӺʊP_? #nMӖXK':;k. tNHJ69$~TDtqv n,r=Y4#8v\ %Z)~VXiK*ؿ|\uap/[X1Cw`K ۃ N,sZߧH>V;OZwC^WX;febdZ*:ڒ)cAx=ɤ5-b6 ]!VT~'~ [A|M\vX Di8~%#D&y(eb ;#s~aW^}\5g0t)exla))4N`I 6q3%:87i1o6jm,[@9I'ji 'F}KWBO!v+R`LtC4ja@g4ow,Rc?n*X%b#X9->m1cmUpjaSXVzx@}ѐJ轣L:(Cc;(10גD\ّMi)+'B|}ә^@XrRg0#/i@WZW\BrM}e'.rÊ!mdPo5HM/Xƛ34, OcXckQ|43A U2A-ȞQ3(of]_ab-A\O{`"RB鈑LJK|+" ("-fێoC9G VDRDžc'n^ɏT+)45uK݀'zuE f VAE &jŢIOIzWIi3,6dh<w5m<Y?ccST ȹ~м,˝6JN_3ÿP'n`Q:&NKύ< x ,'&&n:Gd3EovMwCKDE.Щ񃬶8hvNDLbBǼQvؓpJ1l e$As8mAMQWĝjRBP$JkZ=sftiNkho0쵎oW ఄy쬁>/K!I!w1Tz2!}|bV WҮsR֤C18cØD?,u`a#o zϋxΒ twyyy'lt5`n`/+=϶UVqO};yV}-dN@ _s ̯^7PΆ aQz΃%\9@_'S|0Hf4{w5X h5U1uL"d/%VbAqL*VO#[ֲG}o KsHņ͆0d,y-f:lJYR`Ryzv6Oq/ǘ3yws51~SҦ6OB'yrO 7C<>?jMk}{ۧ>Q(L38U NJpu!S8/ւ=,7m}l9\u03oappsr") V0WĆ$?@I[$bĜgd -[ 4} ۷G3_8-a^CLS?[o.&2ށo ݀Z 2]|K9}BmRuTlRaTFVQإNA;kC߶/ѓuLqYJ0bѣ8S=\o.F;gOW7tAMq {Z%{Tр%X͝ѐ=g|u0HtBB tbۓRo+8gpPT9 _ݲS ~_lrB `;4Z0)w?m%Ԗy*d "U=˷r? PI!Kb] s٤bA3`zWm8{Zi* lFwnFE* s޼6`rGJQ%)a#TnpvةwrPxձqZ.YN'^ &<{؏CI9y dݫe(.o3@^hݸK AUQB@㷥0|g _lg4P2>|Zqv;yr$kݴKOU]wysvdǼ;xlW%̺I*,z:xi`+|/)R<2x#L ra}Qt6 2?nDWܸu=? ^(Ҽ]#X 3(4?Jr{A džL]NSXmHNyԶV3RֈC3J1qԪ3 otljF ؿP of˔j;j+%Hdt+w. atD`*ww #_pl -ɳNY͊~"8O,q$nAf"{zc#*ZΣS'!F;@,%.AMw2ȷ i[CZΌn  ]E*ok ;^ʔȲQw -+0Z;"_ȋ!Mc*M3x*(6B6\X=+,ráZTF}pղ\f`E5G<dpY<"\>N(0ZI39Tj^מ,xuk@abڂLa Rq'SW~n}Z%ӿF#$my* AhiUlӷe6Y''wD_Q%$XbMk(*M! ]`oRoDv~bo1'}` I3ꖴx/ ] Z!*)F6b[ Ubjݼh7Ǹ֖i1BuXm OtפA${| y/D."_`78GW eJ$}y==s\ l~/\CSļe_|`ؘO:7JbL C Ax'a灦,ɼmD)ըЁG5XJGQ&?jpW!HҗryW{BH ~tuh242*wf}GB:ֹ4q#Nѷוoo az ɽ*.4IGצ%_j {dJpu[KHT '۸jZ L,ЀFxSe>|)y\_j""kUBD%Y;afG]܂c>tUdEvev50Ac*0d8™7%1 pz>օU\;]Ƚ Ů.R/mP.@<'0 Zf&h\tQ{;(NA ~Pu2'idU(R*#.^|'HGoKk醬 m[Z$$:u2=;)lWX|p-2feVW1\6s'{z=զ dč_8}yfG pwvK2SpB*Cj'G1t{ 4ԥsq:Q0'džRПN?5j#F#ИC$zo^ԦxrXq3""&n,11|He}ҟ&^@Nxڶ>RS?{kq9IMqy*'{& +$86ξ]Gt^?} }κ\|";-UKEb>fk,>+ "WֿDqX(l )9?ʬ4lcW'I_]u̞}\5My|J u31p tv- (Bn~ޚK꾸f 7=(Kt5Zo*qR\v*@kRfi ,"?K ~`Д^Mw~'M'E\wLf$'B~8c;)Ўg9 ޷eF:WS OFe9QXdՃT GdRnM?Gb;;8Wg@$o{[|M[CPL\6ma-zm{~̄и^~"3`6j V?բ^9s0JmRcHt\k.R2_?3KJtwz oƘx"Bs֪iz 3m;b-@r1> &0mSޝ;B35k7"Gv 0<`lL/;j^Fı{c|jFVV.{kg! ؟*7oc=Я ,?;y1R `P,c5tl};j=&Z(0?s!bEWHKսZ?2 d9/@p*RA¬ekߓUy-6&DrBGЈ ajb% &d[%yN 9=f tVI?jD>@UX 7H У{"=Te'БI13eփZ=8Z"דLu1~=0 ͜<,y3~(NfXb{xg}UgH`sO iY;~)-v%6W78zQ1_ڔ]E~0 1LjE9Zp +.OLT%6w-^mT!D2/ T~ϕB?)4pWPDP/; 5pA1+8L-q*&hIB~Yb4rX6}Q$P ܱ+Գ!ߢ!Np_0ES!TgQx͂ 埐=IGتYO[pjS7, \$]v7Evs[kLm'Pq ߢ]U$Ռw2%Mgb oW7H7H5>XV52BArGW${E.)5 fD 5Bd(?v4(tE%5s\izYKpNR@:wZ(Z-^` q[yGBm&o~jZ+?!+koUw#BYcg{ T' 蕄$N"Z'r䦶jM^56H\o~\%p 'oEODhg)CȺei G`_m7^N>n!MJLQX!=bh 7vyS$MLj%Amz \ I!k!Qj ґ(g0R</&7;_k(Z a_N{(|I3(m|%s\Xɍ\Fgv &ȍ/9Ѵ&Yy,--rIi0XͫFq(vFy?Bdʇ5kʑ ϰo-WiQ0/=PMi'`QPtYfڤ0q oa;,S@+4[LIztឬ34Wvμ\ %BWtm^qd8@C_Р21*}f]*7-M >Zwf7"[Gqp4igـ fn݉)sZphƪb}Oz k)>95:ܩC3OOC(pӢ,@'B 玝lZC-T%5_]XC=qH"ee{mzyƤ)8׋m-%brO5y QZԪ/óc@do(PS c7kszM*|)XN%(YyJR^q4aQU@n8W"V|Y=djjϾos лlSJ %/Kw9c7L$ڭ;hLr'4_x5hOH ~oʌs3oW7ɹdTE-`p/51nǤCJ2s6d@{^m8:@`k?)[`А"zܢ6V&*Y9K uLVyNm =U{I`L[(,骮eDW 씪~ާ[7ܓOoGXh8SdD @Jr/[5)m9˃xB=!QO)N(p}Z^p{hh,'t?>I-b5aG$?_N^/^MOHeg_)Ί,0໳yrˌUDqX_E !`-LLߡjIÊYY[y8E (6/wi4. {f]d V ZV sY{p^{i'Ng ycD[+]1"v99SA8:T`Vފ8ꪚʼn8ޓ4 ,4 ܊hq Ǯo!F9Xt?ib6 O.}Xi[Þ,/ 823,Gza݃%Wd9+ DB~P>BZRW>~ڀH l4͙bpӨRVNc߿jXD9ylpQ6[jd5O^X<-%?QjHbc.!b2BS|=0FfI,of 2`-ENTܢg+g:vLL ݓSH(y`G߿TGBoib* pi[l>7*p2pǨguduR{@! ԕxueTbg2H<.)!v^6atd^ߥ:Źx'^N$IB,8&9OؐkwL p; %ʁ0Q;fx,. { )[4+V /Wj $*WuEr CyaxK>xB4ST$B^:(M . h_$+k- :uL,a0[M=*UIJ9¬w7BɘŬ&2M\R= 'h _m@[{'#9JLñ~f̵Hie&1Xz9/fÄ8{y'W8%X[EiA&?OICy': M!Թ͈S,yfKܿ._1.NZ Z ^Yw6|N܆M rdI0HY d遠WFthKe.U~4KTRMQ`j,-9^T g)|*-=$ِ@ȭBڔ8(xC| `2:$ROU#{ݐXMBV*CmY$uXc m//ט*om(ճ̳f4)[MghZC{th49䖨D0 v~qDqSUbAFD;BvR*]}۸CI.-Q7gUך&87-k [uc7խb(%`$AH0t7%i5ofw0{2XќyrO`˭[Z\BoTkA Տ`o-w ǧ4N#֋U(e5kp*@ތ[)+(XA {h@eoVfT;Vڞhgh,aK2-}?Ό#]/B𫿦3K AνaV8=K73}o3.&<ҏKĭ^^m{e9M 1o΃Qi MqEj34@4- 3/ڊyK.E/ЛW1”3!`qA膕w܂t9g2+Yx/pف`QH@p$l(U̿-sT`nƆdi u !~׍h4$\,'ozOA¼Wa1Faa^l62R=%5퇰@:19娜42GĮJ$NebchRrXNK@xdwu"-_99[Qen,l߄hPGER T(^7]X˰ OFaMh KK" ?|*S·V㯌uB|/i] L'](cĮ'F(_Ō!1_E=w&*;F87q"Q2N!ਥOݣhk-9={)?9'C͚XfzmEdJ[(ŷvI~H]iazenw4ɩ#YCX $>?t<2~F3i^J_8 yr:AVd DA_m Xs䭽 D84>1]/ kw6 =5:H+bS3m77\Iʜ%pP9J 魧ΓseQJPfLA (fLvk @MlXԚTLOҰ6ۥ1 Ht咗~Cz#6+@G^ylGI.(w0[ gᡒnJĪ!L߉'+h?,B*=5Ffгgd H;!QN6U p^lz:B"㭝gEu#6~#&' 4UţW)3{ն a=ڊe8D75wǃֿb4O+(G0܎@ߜO"θVY?a&vZC&{nE,d'ɑC@3hV^s蒆&DyZG^HoȔ@F0[!~b_J@ N?tm̃/m Py3)+AY53Rp#P(%ki=,ԼQY^~amB8r3V:lsT\Ƹvė׻*f r{YڃS'//$0TH%™c>`Ux`^_ky|eo*ėu\(I|MG❄N וk@7&aW m.OM'[v72?NbNPF Z|.RC/Ŕ|3iNPa+fQPn0NxH`(r zEg):D|i5񉵢_}ۍUQ32m¦Dߏh ¢ v߁WϔTVtşfT4ϱ{89 zwŪ\֩!P%qĩsòiY }#C)T;@Հ+pYl Rvx"񞎥L_dWn\H,j;zr<_¼[b^ izCY-O3& qkaP|mZ+6e ;ә(Pp1pN?"5uYìeCxnof}MwYkؚIqԻsXٌ8&'Y^^fL8%8bh%E]OBR1EWwɏB_m|=&j YY.MŦWhQ);4{@ sB6;h ao0#o<{X-ձ'cJԢygVaD;)*p<6t: g~!U/XJĘ;% R$N_=,U< 9=c81e XdYѪR|3&vo (,;JyO`ҡ086V\<`U_P9ʵ nG].m.V,[*.zl+Lx&.JQgXI8VjS+U{K@bRLXr[m ƺVݿ7}QϐVʕ88O6͂xif )N5uOl;rېyuJ?!@:X3:ޫHϹJޙ$U@(;o~ v&a"klTk}ܞS yOHaTUBti!+.ACA)SS' hck2$Q>Z!WfIĺyF崜P;sm=zR{&x鼊O2~ieKc?W7?#~鲎/<3Xܿ"A⩲95bbc4@6[t&B}(P&^d{uiZ JH<+1gE!kpGb}}ݛ 8RߋV7pe_ Dz_&< _: Q4% 'EmM,]?)@1kq]yk.'\qT(FTR}0e)odžwۯ.jTjDmsxR D[ Ŵfȏ9%STLr~HOrp&')x*J$ t7ei%m `QiV1VRGBM+V^S.vSn_urYYnӮ%"7h$e_+SJX~RY`uQ@]L01* ~]kLN{ 뜂Cy>-/i UZD` SM1V0S> `Ǖ.<ξ!8𑎫&6W.̃ c{n]v 3~zZ}]vpJNmgpgx+b_ĥDa68I-E{|" - _5&iʵ[Sg"@#~ a6l`8'JBYҸG<)Խ&[pi<`ː,c;3QH{r],WBOXn2 ӣuGB<;C_C> j XS+Mxb{ 55L:[*"C1ɑv#fÈ*mn)OŒZ1϶wڹ]5en2CZ:C#rC_&8ak@JJmթD[ "g͸0|f7P& R^V.`)qV{[J5It-@'@xDxūCA* zO(V,gvC(2QڢL8/\Gof_ 5dڬO<`\1m`oQtaݔRIdk!܁e+_H L,Ӝof)n%㝀C[dFp{,8D,7;ұ#l9g Nl 𠈅gY-Mtm./vW:q#"}K719,׌SzJ8ZJ<3uTִV7XI%$AD\`enjߖM*[YkCt$Pe5aA|'S=bȜ %ܺ绁XiIE\]:iZ^h3v=zF$eFPQ1̌ȹQ:ifrxlLG`^d #X 8x0!I/J8Æ` &^{YEދOI`4Qt聜d0C?.[E{ XCg9@BN64YDA#':{C.z̜Ln?rK1Su/;^ SN,o:U7?^9ktH1) iHori&'?r0{IXEfIRN;"  3!>p1BFI-tޞGÏcA>j'̀HhN㽂K.0 J/]nR> yu2_ 7b!n+TޘSUCbY, :n͛ZY䌉 ] ^dRAVt0YnQ7[:.TU| $3`)7!Y3Z$s0~ \i*3٨hLr&h^1JNwt :WW+[pbSp7W!h5;^[9l)(sNqs? Y2'cByWģV =_}&|F4fn1REy,8 婁Bݝz}EVPgί[H̦rxɰ)§c?3 zQP bRK˰gXa u)zxc1B8eNR36B8MQDe)@*IwWI<\63_kTp WX˅cdBn)駱) t>dL ,9~$tpʦ6Q⒉^-ՀWB+2؇ oy@ qcOoi1hEҹf13x5':E3r(+_:DݰxXOyw$ֈBЫO VePmxɦ {A%j {_R355Ƿ?p@M7CdK[xiD`o̓t4 \nWj%G16xp{>4BydZ'uGai?YʯE縳QȌkQc#犁JhQWB8DEOZHJ/ UdUk+c%O߾{cqM)S]CiX%z$1$: Wq/oϜY@EכJg8X ]=hh…LTR qb+ ?Ny{(;~olφEɨ;Y^c4‘ʂZZC6Ļ_ck&wϥJɓ37p辰0x iޝ`4}= j*=Z\§1xMLZ3!l ^nXxm(ۨ ~l9*0\భvel*-hgc"[K,)#b8~?$⥲Jz밸yx!4 6!>"*qP#c VNǬBvzۅ!6#]yQGB !Vڴ.#zsi`wvR">xin8MhJ;qyXy~<|i 9ݼ bp,GycHtˋDXju[Mg靳,Ky-:%b`6n(ۘ3ҨI~P<:%>ѷNpᦨ2|,៚.苚fFz &ZԝƼga)MqNsቊNZp~j;.J#~ CݳAM]y XBSOo|p| %{d{f+t|*)>'&uPy  ћnk9 ~^AY.-@~AI,ERw][HjC!|䧽;~f0~DCljsdYcS-g$E1w<*#vm*k<8>iA-bS7a:Z]SD(_n}]lޒ0꿵Cfg{#UO=4͌vq‰MOCI2]Qb=~xf<|XS6 =㠅()MXymoMl$h2g>vv&CpF߬MM\FSJ]4.?;7Ű?\tH+,']FChLb-/!<&@N@!PaޣįHb'P6բ&}~JO@`/ի'RSa@t;v6C~Z5ʶ5P>gY@ܚP'y1$&;ॠ(X֐ \>mu ZfT_%s~]c&Nl`-|Jajǩz&DQ:ʨAPCtP9-ɒ@=cA};/΄Uj&j^*=nUs*lsaIYwCTdx5ꆬ MZb1v# fjѪfx)r*Lb H`Y#v8C}ƪbn6k\hN`\:%?'6%e|3:a6):t? GoHZ+V @RMN-Dhd@bL)F =3_y\&7쩊6 i_*{O!Ζv15b5 &,sp5yҹr%EGUL3А_)$Ӡq 8ʭ,fRCJXUK؋G7"Hה6EH2eڑzbfw8 ] `NJ7ėq\ǖX <{_vʊO {JDJtQ%BFÜ^8K۶`M~urny};a};S v'&Dܤ3DnǏ.^K4]o蠣[Ku(棬)B]pH*vuVz3z=0;Y4$ q cH"Vm/ ezfM)p }HՅ:'5 (BK&ޗI-eM+H'No^2y<a w]2~aibrY$pyD Ͱ6E0C)(s92 Mګ\z;ږhɘ&wkܴM1{UpRe6pE7; P7+Kht#gw.@#Fg-3W^OڠQk p "^Fүb$#蚷X jj'C_kUx/@7blk:ZfjeUNJG7GMPB: Oh}1/-jVk\R.WϢ9ő=O&O+ [,\6!*q?zf׫hGKoܾ"0?kJO .zoAٕ).-o(N#(;R1sbv{jCE+A0ѷg~O^qZ: )Q;`)HRzQ$YdɆ /rVgӃUǏsP3 s{,ՍU f`9jBݣxӝQryPqU2cTMG5{eK,IjfўݩF8 1t .;EmY\17Io$|yGUبb܏ ^wzDf'Z"I$L7CFOPx kgX< jG Í-Y5q 1I~7sÚsPi@8Z[k!%/~A ut. SB[f~ꫣ "Z7*Błꁿ ʺV7( 9`_&)=:ufGߞ>#ʴTT..$D=GL$m{};AxyD"]z_fg߿WйN(ٿM꥔rjizݼ a{S>WUƘ񾔅&( h$k4 r^{> VlDV!ʝ3`~`);ȴ16[AΖ&'t匎^Yɥ|0x><,G6bD\cK4B2~AqI)F| Z&Z_s`GDžܣQZKa?u`'M+GxG7vl&oMGvVrmeǨWeNeT^WpT 0\^4*N%|A FH,|[Lº2[h3(b-#1LJB<{FsԼQ:UěߛJdL$Cf( t5)DgWBept?2 X: R3'4?FҼnߐa7rxSp .an:Cۂ>*A0\" |%wݢKBS MP#/sX48;idY?QCs6Cwhu_."{@t>nqj;hGWpnӵJZl2##dx{a^n'֕'4{GtqٖJz%t$ߊωYxMT +ۃCށY\8QE 2O~=)ߗB8,I|ycYb%i3F~݃[ܾq7MF^@\Ӭz1띎\ ek/^!3MF&T4ox M&H6J*N!"  u6Ӳiz֍x\{vbJkU&)!@/ܮBjjiR/:PzS: rmm+qqTcy:n8! ; ƷaYzN@:gxG@VR'peH E!3{:Jΰ b ECa gOCO^QiNr65vBfG.mޮ9]۹mFAThI҂{z1Ő0'0ëd^7콹^</1|ZdF-yC3;Q F}Z PQ,PU?r$>޹[^=\T໐Bn)؟oaRhG0Iv cZ>Ys'U]i=fq /cG[GG-hqЀ,](-BM,~5m۾gkb; +t $Lmo4Ume Rz8 fԁ݆ L0.-Fg7ɄX 9OZ's(Nɒ(χ~  $CŠ q9&Ss${?X*WշՆЪU&ׁ@rClN7_ڗe&^x#8-8Q)~&Oi;[s[.S |R4vs L 6?i[z cPH@l>ǻDC<&"C[ǃp<ÄlE"%eTj;  P$E ֤ilюZ uGL}b=Dw/c&EnC!ђ wl9Ӭ̴bf4ḟ*GuZYn2/ugH^zԀEGoU[7zZKiцgaS ~,&U:AhK[ı7_;H_Җt5cc=vs.r}4㚽Y'gpx+.ȰH$M@v"6VIOK 9򕗎yK%BQnr̗yXVل/mY`B3d@ Ö-Tg=ӿ#6ڡ rgc%UE:N=%N< Eb{Ҷ#vS_FzNW@6quzѪ^Z\ +݂\1pϣ1 NM1J0uW)h;J!_:Og.22ěd@fGli'Haz2EMTNJUQc:VÚHlSSF$]F2,+$Mϟ;c5{ܛn s7V H~UR*q.k[#qҋbC+5q(emA$f")?l|g5dd\}:!/!>gE$9>تx۲yG 9\ײ<}.Ē%d*-;>tp DK,AxWrM=Y(-=jY P >j`Z?1)ȶwk dTUߋ@>¨P}].fԎ5R/a9O.,~{MJ)$$&tn5{N|{t‰c92Tɨ1N2x4;?*g HLeQJJgD\r%8C?{h(eve(.GϪ!܀E>l, H*aL d ǶӸdYL@PO3:D&&/`[ГXY&P)K]!QD_TMUIl/cdBӀ(h\RA5(6S6ɶܸ7 9=vxO9QBxSL3U9=J%vk?B&/peFIBG667j+/,LLUA14Nϥ}hpG.;e>љ[-rDJfrfXw;>627;+A@oOhNX j5,ȯ̼-MBH[Kނ|x$aL P|+nCB`h=.1}x:hK6!BQIz[@~j\Wa ZrW>UttZv8)r\f5Cċ @kE` "SPKl1&P\ԕɂqCu4"ORxfW[sJ -B>8NƏkxH1$fz2_?vG$ԟ+d/4'Wԁ_հ1DilZ5Ϝk`߱y)(!WgA#@6HCMUɢt "AәaUŔ,Qc"A]!}/Jk6stR@Be$AUsTҧƖv 7EvJP$㙬 ŞвބGR7 @oT8R; zUSWݿv=vW/T^Ka t_4< GGpDb@mǙu 4~]V,uQP+|E`<|YPkZӾɧL)7N-8}9n!ZwC@0լJ~ H#qvKZwC>ΑU(,XGSTM85[ E\j8=(9RZ=̀Ԟ+E}Qo͓&:24ƅ: +D2UҸ EIɄ T #󊮌OUZ\+ Gem䱪[$l3^MT[dQ1$ۥzI^Db ^=~O0 fT&ٿu+K6v2Oe<+]Q8aྪL>9յ' CPLk,-e˒"rx *i[Ga]RS82ZJPOpwDe6&jwESنKY/N8֚:Nq kS"TnۜcIJXT35vYyR,SXzl%߳_!X<*Rv!Ct᳡]'u=. P h.ֺ ?@l MWc7VӦ`-aZK3V /z#T㾇w--=@+ʪFx("Y mXq}=F+e 4#O+~N6nvA-- KNlL"*cLeHmJ7LB*O"+ll}~\#e-q,sc.5fNJ_jZ?Pj9TB.I@łvVMC!8N9Ych qݥߋV驶V 'P:[0ʈ,AeO]1&iHVY B!Wh}55ڤDS ~(Q=~g63e(3Z*E:p""#t"!z '/lb>dk%( WŽ2AԎ֣gv-IXWHKha:ovKS60w1ck\˽G!{;˧iJޞǭv|t`?yB%ZaysiA.JT⿵s )|v P mSr(eC~yd{!2l{izezp) %sa!sH˵g>UIA'荗oQ\'q~>@uZs }]]-O|e,39*y.ƏF3pTxLf켣#5B'2 fs\U Xgₖ=X7#HO=e 2U$ UTn0uN_qWO @κ">wF}]ǽMpQެvsFXZ~d!\3Ceg@c[sp G( `$Cj@h!3ڃdh~ "lH`&0 %D9  `6iBလA`z !ћp<#@fA*LpC@A ;᧊;uR/ȑ^܏> k[!ne5eߒ&WK~ױv4a;ܕp⎃ q1Iu0`jt7y1oGx9Mj;u|K5햘ӫ&ɘ1ޜ+ {s"fF޻9*~m}Y3=TaVDܖ(<|{j< h0>ӳGwc ;WBrb8""Bǐ@ Ǝav9|T^\,qB?M_-{&\eă*|;Dߑ#/ ,8A> h~[DLmyW TP*m"%Jc lty_L"+ F8;\.۪̬|r 2*0&x!f -4q`9 ZWUs!ׇzLh+io0T_m,q3z~ju KOr  ;b4{Դ:63K7HNd`UyT1ˮrZ+XOli#3O)]c|uv0xl,L= 9u*_T__])&w]KLӭ=h (LaAǖnOpnn|Eo=g"1 = 514n^dnbb <~Z&JeK'gF{$|{K"2E`菌!h:* qh3!^oձ"zƯqC C|VĔX\[;I}օ9߲qClOZſY}18d$֟,&н4+ nxFV-RC(ʊFk4C+سd{#S%KX̤Ŋ#a&=tnuH@  h&vIeϠʎMm lFWm7?5dVP{% _ĵ X>fgHglU#()̻ISˍ`BʠH3vMUt#P(l~1/DTk1"N 9|z+Q(13Tx#jwlc [(#4ǏK5;׎ 3]e c_ŕRL=<#E ?PX<#Ғ ?\' V}$N(@ ..QH^94m|ivE􋞾AItkVU Q]%pl-:b-2WjzQ$rC\va<OfrG ŝߡdWN+NЎ?{>+1KH('1cimb=ee=nC͎FVO7њYbDrT[L0-G ,Zn812F r~+jք./0MY&zW+Bzs) vܩ Ib;[Glh[JJ-ĦAwyױAu0(*\{r`QU-%}` *a޵QvPN8[NV3#TT 'BU~j~@;h~JFf6,f-ȍ~!s3Z="m@ [~1!дZ~.zZh-lT {y>ZtRRXOP_.Ij 0`qgGzjb(j[;/83;Ľ[O^*Jwz+NS6_ |3G=ݴ8Sc2B5Oȴhtoq.2a91nSGI@= ڶo{g'F`?e nL!p IG wlDcuCJ*kF^IRS*BikpQǩY}*i|5WӠV@M*7 dVCM1qp:XjΐO+=1&nKGπ@ .vkfY\{≤?B)rA_nĔC)J36C7s tFJC꺦):g#Kz>y Fq֬!ܟ>7 Jwwd\wtDR,/A)(4ENN ;ЬI&0Е?c6 ^$5{FyYG!!S5`(O Kd+r\wK5b|{bM_:Y#]~v5o~*(h 6;8q#9e CD'g*%EJ6jt2-T7L" @ɵM4jC?7PTGmxhCw Udaxq&Ȱ: 9R;h[r(˅E~5>C[0[/p$da>"ׯ˩k:McC"fSNjs0Weԟ1X mT`}iFU螛$5b gR#PJ8]PHȔ,#\Xcn؎׫hlQx*UtntDoNgwaj@fMp”>XNV?y.Xp,OSrTO O1סN4dSEŮzf`742x^pkL?|{ ;M+7u`ň f;O&F)%U`c&LWL&HW^>sFVZ= pu=3KTc, w> 6&r%j)*"1IYcm~s_@4 5udUj~V6grp> Jzih6Ie.ɬ%lGu `لW9[SO)U-DH olJ]St0x!a8,UbvTرs  A_8w=]#`Te`zՃ,S5t1Lv ^d{aʯѽf ˄}nȎ@oT<+U0BBJ0Q;c0ǏhSB JF=Gc| dR "|iٱSWK(a%n_&aoOc'={²"lgw~p ɘMsjcǍ(7`lņ2WiaԉC`:jokBX9 &@21Y \6(*ݑ/T@(\tvbWLt2j&Z=b+}lMbYY6-:TT Ts+,/S3TF:4oϘҫ6x/du4cu-ɟWuWb[ꧡ7&r> S^%D/a'zE"٣57[ay9v|VHYvdzmpWiOD׸Q-F"OHWxVy\Ȱc&B#vgRymIo%tZEp"[jx咗P"ׯ[D uny e6?ߛ6>'˖ GFǸCySql F,*B zJ9瞿{. rosk_KZA(Ch4(ؕcYbtf!\fK?|fxaE?3ËDH9Oy '3 ~2!Q>~?{_Pb"puY|d4IXMu,NI; =`=B:y,@|(@cy1 s܅UuSNNؓ]"廣RƍV{)ج;:KI`!Co\b\4(Y 8kټBB1]Q.gVuC3Jhf2jX6_y!B֤Xj ul!r/"h$Ĝrh]b*b}G,âL,cs I_neX};5"k;hv 9*jOPb 9ItpNŀĔo߂G:`7'|n[ cR!Dqe}6o)ff*.S)%쾆Pߓ6`lyYMI'ɋ$9=SAG n* zV^5A9U{vX3x3)StV>Q%Ϭs"/b@ y]!N%7esbZ'#s{طg0B,m\B*ؙm"S",Q鋶$G"Z?~enATv.z?x r|ӷavN4]aFǸniCə= "Z~GSMlL0/8mpgaB ;ё8#!SҬ#6 Ý軳yw)}TN~*QD旹x0'9٪%0d ,FZWZiL"@ 2vP&vcEroCU︩4b{6Ͱ|7]"u2u_@_-3* GzL"xж:9*6zKJ; \T?l [_[!ȧ]]ȧMz*^_ kk\WXTLK㽋863<3V[F"RcPe®6 Ͱ7{V0C6+2=V xǿ [ .yhuTo𑂭&橺3{=Hh;mu(-ck#KsYs/L|N&D vDNxMho?&v=ݚy3HD&+ZCpݒrj%q/R.1a.^1XЇҠv!" xkڒEm7l7ǧ|T`ʢ@i\WӱSNt>P,"_mwۺ\TM^*Pz{D̞H69֒ja̗8fR jlN/rxヸĖ%UolF8 k72FD3wWSύhN [`^Ztq­^Ϫ0iՒpXw=>⢙@(? dj?5<nҽHcXr 7.'"ڏOhQ÷G PЙ;k`b&DJϷ.F7~l{g:D, ‚WCSA|C}|ͷ95t~&Aۙ[!IC9+ˁK#p$ah n`_26˪ɦ ڷ l[F0 ?cӰ~-efk 2JKx5ǥE ̔rcD?.ntDk,'3`i|R{*+ze# pR:EI[6B-5oPS'3:7RHIn'xt8g'x`"<е;g5Թg&Θw 5QǕ]y&VcA~ W1_,7`ܬvЀ/0¥wR[ykrsGGeBRʄ"ދK )m2ta_OHvUc^h5&ȗŞ Od)y%|UI|8(č/ -{(˩ILI,@,,&,` 64GIլڇQ#LDFRA/2d$4*'(IvPB~ IuQiފow7Yך>=X!W-i̴Z >3JĐ(%/桃р7dKZ=O"PͽVL5"/Rp̑c9E4#VIٮ, : ~C6Ro~se ljK^u+aิ0ſM %]sUtʹYgH![!_:EnK|)KO'%n՛9%WaZ:(/bMNݷ퉶murMҰ[^@E}΋媏P 5!0^ +m);RdB6@DjK yvJں>=rw?9WqsuLx0/4Lx'%`h@PRˈ^l)Z~Ktަ xR,#YI#S(ܹZub^ `eVyNSkmbMT?z Wt֕jjVZ2;dD"l6j]E~z\[M̕C6/A‚SFc&c]pqXhuGL8Cߞ*)]L.Σ:?jHVhpU",x hP/ݎ-:k`1Em̑XZe `Hd#L9{0sGz[!"_iomlzsRDJ};ܑR6"{ٜ*.9ftȻ*`%(x٨AMT B0o'Z7ZUɨZq{ڑN>/&n޼*#)qPrƢa\~ʃ1SlG+9@[17 Tԃ`@-xbaSOnӦL;?*tDt KVʜw+:]߱mjfg{]zF!E6:P g0#+`I6v ^b/K\j kF+P(=.\ݎyya2ĆcjV^KN@ PU`S,"[-:+c#d-$;BIpReTDEy-n0@Ca<1>1ɢs~} B7Ab|NgI@;.[ qpm-šgUW =fa&n1/ jqtW7R$$ai7Sx/[J Q%J$K4zuj,<5'A~BĀH2 Y 0r O/};jɑ/@1ci=y|'g]4ehAJ~cj{u$8ߦfhJXϽMl-m|7O;xA]u$#A5LG lzܖ u|9|v6'~I _94ù )O"Qìȵƽ117 ZoRLvOc ɚA>;.c= R;8&Uy"[?~;c2Z-va03aLʲ[0M +MƘ'fNnWlskaĞX=R|5Uq\˟q XEVOpwGS˫v/ALCt /ϧ\+?>(&Jr~%v8}Lw|2"c3G{T6mQV$J4]xE(X'$ܤUbY h$Z|  ,=\c[|*h( rFҲq/C`?0EUb|Pf̠; p4O#Ik9쨘zQo+w 3Grr,shb«{E"Y1aKw/`^ /u<ӏ]Qs mY] w#z "a>ynsGTe0&:@)E8w./(RN87Ml˲˦Csg얒{o47?O \ŸF&qPЖ/ SVD .u'ש\ŷX_ai6(@Ncs*Đj}4Htyj,2]gѡ=N6sHb'DJ|tgB靳$Ay-y<5J .XMmT T:,3nT^hR})=UcBQag E-Ev ?l@WbHgp.T9%3y;#_OȝO`4j dak6Gթ+(nҪY#P/~9벴h~LL[a,n"ʬ̆ohLTn],{h$fH? S$(<r_w[!7ݙqOGV=v&{-(Ϗ E/t1*3et2@)E;%g3~[Qfa׾oP3UV`-j_pp ,D me'`:{/~)3,HPxr[mq[6D,(O#kb8O&dEZӬ25'm#kMMyefXF;UG+ČB7xh[Nx-RCV*=BOl} :Ia7j]iD+6_ws2υ9w 2b)Q*W)4zW(PClօQ)xNA=*s =&h3s5 :=q"6K9F37 ΧMAښ}9p4' U؍?XH Zx̬k^ ŅLV7O>p: 4Sf/{S89$٫;ryD_dPK'HbDPt-FחΪj~ڥ?5oBSRw7 >A {381'TWqYMKK BϽ欉/kb#WՋ`bZAExh:=g^uix[IF3xH6 ;u"/ $vfDމEP!XRȕjYVbIZ g{ƹ? tㇲT.K_&!Ywyj1 ׽9,dv5%>lb 2?HUM̾;=n-H;L!A̶ގ#(m: ,$ P5"XӸ|m*ܺFгoц8C34ϡL?zU1˺PElO*9؄""xnf[ (vI'g೔k)Aqo9Oڝ5nM9߮T].,.Žyp34@k(%*8WQ6Kŕ-Ih{.VDŽj6+\F.WfHgwi7qCCWDv:<' ՜7&oonjkϟQA 1jG]+ڟ#} Wm:pZ㙿ʖe~\ C"j_OF(.qX h0^7FvGY~U.cꍧ4QܦH8k+͆)w(#6^>w%[;ƾ$Ȃx6 N}8<rrɄxn竍0s@ e'݊$ T'yvaPa/-;6gB+Gf BA5(~\?֐\F)[KʒpK?BSznGF9ݏqRҺlw-b4ZoK}7WPSs_X-5)IޠoӴSD{X &wd㔒6:my8 c'Hfm p׷ǟ?*u @;?ȅ~F-QT;3B-<: e 9u(rtlIqƥm4IMg$24 +kЬ̓V+~ z]7lNn_FզDbD4|Gxf3,؃5$~gd"H`-\߀W̬T{;a\K[´ױ{,u^Zt5Y4lomW҉q{(˩D/=D1Бfbumاul& [q7F7 "،$/^D8f"P+"@ֿ,~(ۈ$d|%0,. #u@C#a? 1]6y#v L̾(EqZIkoVN-d%}# QtqiS,mKx3ƪ()SfVT4,S$Ju7o?!uiX,βGLN*.F Hd7hWtǬFM6}C^|(,ɩ6)L|*βDLjr2D*oɬ@U6yM8 QW"f@^̆I'.]~6c.IwiR|OzT+ӸJ.mX-&HVG j4!IDeuf R̡4]6m5a$?@/rRlx٧p*fF\Zڿ--kSd˂b}QD-BY]M2UjN@tă>|,FwW SZ:`ގp+xPWa){y/ *UT—W[-6 KX1*%7]-Ȱl8mMSJۘzs~^pV[ݬfcyE@xѬa]nPl,k6g6nzkwjG]LuF >)]_um!c׼{K&S$2qI,33YH'6a@Xo_5[b [}"HN'x4F7yiɣwVjﲕc0Qced@*0^}r:&!Ϊ4- Gf>`YCpin$,W5!_;C]ѯO`(%#Iy*@yCzno s̘i/s< drA^D 9LAgL.ko'-!pr)6{댪E\U!%@k{ebj=\_'ٿ)Xj:_,?}8,QPC~ꮶw XN̽RRgb\;1U~z^]_{aE w=q]YY&fӘ[r:3CvCˬ-S18gM0ZP ×LDg"n1Ld{1uԖ¹->K'E ~5DaHrC 3?x0aQf}B1f.aCoүA0:I\cA9Uo@hP98D8Ӽ ϟ?i6¶ߢqR^JH1oН3DM3j3?~+VDow ~7{(] :?x8c&l6 o\/g%u~HV{B+"hpr hTY+NDW}+-HCÍWړQIzl/O A)i5?Fwc0,[8,b6D)=]kU?oLjg+±ך\ <*l@|ؔw u)76&.SY Aʧ\7! tq!GL#/vcͿ럔s_ oV;9mc,h> S} 0D }哂2߶-:I:gbet&͐nn*bS৯Q63:%?̌IlNCq]& E,8/7_}GbK˧{/!` _kX~SxY&+et6OvovGv\^O09*<׆\,cGc/(? ʨyyEgEasNd煶e7+)=?ոNk}"\]{zoDF3m\s&/8r~i3~Vjb]^2}fRdOl։A!>.:!l6Į""g1PȐC^Ğ/^QUSӐm Y̕N!RkSф:Z}h )1k=~d{`EUFo10ݗ=0U~ | n[$&AE@ IvֿϰgJzukU奌P!B>É ggV+`\.ɹ 1zCt*2f]qڨ xW&n U21ln[߹ )IlWla"tDjΕjlbLcX{6tĬr:o(_ /)@+ U|)OMX_X# &2"LV3۰=\ku7W=`uEU^>KG*|\qR_f/ ׭yJ.[ RK#fW_-2~/I=Ͳǁ1?GVJ6K}Zt杹1v|XD_L1`8Xɠk4b/Ƚv9ϕsUkPhH|eJ7pM վ p1I=, џ吩go®*UC pሙM8*?n=}sc;oI?PjV 5 m:K\i ٕ8J}[:a@'  ++7B [cV( p6#Yϡ( {U>]/v# F!ʪi!* m*w)-F4 RX9C̵;oBH`[D]Ւg^Ň>5R_]bCs5 7~t #:N##xJ#qAZIك,n)quR:wvDcʅe^q5,-*#~3Q12y$Uhͨ\ZI$_6~5xX T1;%M3 A{'Z{ר~HR\&nG1qF_Pu ǹ_r]$3&y *ÄX)oTYOe= <sDoLW-Ot& cT kji-kTnOK2L6|GPs]uMi4[K}L)0eRדh7)/>vU~ 8ɽEofLz1%RWY)# Bh)81]wW'=gy˴`SRi5Gsg+Ʈm|J̜7ĉxiu`7Ha946p $-ln᱋!,G.")V&d ˏ_э9K 65D@>z#aִy7"s:n1T XkxʟYtD(j=-2N2+&Mm x Vc:lk!)Q: Q(M9ky=/LTσ.~`g]T#nK )w5eޭ`SK@S-pݨRuf cFg;]W~hdN(|Ō'DH (闡n Ta?ًХO ? Ωv59 @aeFh3;$" O WÅڝgҜ6#X,X/"V\b$=8IL˶-W]~#o\`g6, DB%ߟ]W٦`H37*ϗ, ;~ U Np}i@OF^Qn+a?׮fԼl~Ti2$%@#TIʻ*co +6D5bYN=W\ NXגr ;[=e2Kz@q=z+ł@XRe4i>!)v].<]3]z_^p )NxCхXUSwIZhT@Lxd/ UnȎ)Y'*ȘE2=E؇x(q),ѳd!rLҒ%'ې\B$`227ۧ] 7Z4K,5XwarX=l,ymޏZciZ.MJiK|VWNj4da}߾w0:X:,rQ |,uYQ 9uw,t'?coNCː/n r xT+7;FR+ͱuΚ(fHE8p-gmKG_8 x7Z63Mn`{_4 Su5;#o,Hz4g ꓶ> 3;)x UyШ;osj:dI`mR^*~T[:}i~3K &yj:B;/,E~! }{ofue{|J#QqqmV,CWXuȹ 4)p^>N۷C&5~u+0 ʃƟ.t'1Ьu\+]`j6aC)׎~:d<O0+oo /:1Wea$y$3*pٳ|Pi84.UlZGu7K$V, ぃB&e%yɐ]: IQ EtĖ]`p tΪK/]5pQBi/o}w~'2iWZjy[@yYlDfڧGfVv@a_,N%Xy(dm Zmw(VG8b4cIsn5"|(Fc&ͬ-R]p#hU샿1`m^[nT_{" ;3"SEd#!dy,Z/qPz* Zowr' e?<6["ŵ?K/:hdx-g~. Tc%ř_gnkpۇ\6JH4 hwF O6AYhk8t}-0k$Jd[_I@<@[IT -{[g"Okjy^%vag@14W<=qPgf? %MzC`~_0"/?䠗{^oY{սv1O%a@1/ ˺pV:xń(1#K`+or)BKCWLn\,*B7R'ہ7'V#`>Mx3w~k:T(şGZ1ACF@7ɖQu> koڲn+J.f5fjF6ΰ7JmDtfC+ Bz5 $ahh[qDhDYGGL$|s!D2?؎?hC> eƔGNL%7L2q+xX;$C@A\gnقV7za[|m]JjC\Ysd)7H#A.$~?MYx]qދv~tkO!(2C J8̉#mQל{R+w!g44F"m=X1AǍ(3u;PחU mmcIcl+=$ĭq %׮Mۮ1pwlHxh y-k`IO˽xO8N6Z8B39ሪ>юCSw⸅ck5 Y7ɰ?_OD[A4o\_z!W}V7P7A[!‚,S_)`+w1]Rj"\([fe*S5_!$5\i vc f/J=z#0:s{6ן2)vhgQios룒5 Rp(. H/fuHA}0wa99.=[9ɴ9DDQ)dZQ!\--0ڰ ]HIV(G~P:I>2R9B)I9hj/b6\CCl$3' y5$V~1"T 뢌2 dP4u*/Z( 3͟+p ᨫ+>0Y\ͣ5Ni#6 Ʊ X\dcXx$s~:PO}4Yv"dԶy0c~*Tr,@< -8E?l@e4{]\GHpg*6[xiQW&t t06 b0Q/kZdjLO[ہ$Ŭ|+ vBXuV͢E צ(<%Y%iKkl#.m.Ac}SWyjJ1-8~RxVǡc׶%< W{YBh۸A?dVɴvWZ߯x*Pr}?\q8N d`'kQ,^bJ0cf@ "#_?]0]F,UMzE#R֔*GX.g$7QL[._ocyD*@Mjž *I”7&:0ҫ^<xK$`re^\]4z{i\!gE/OCbZ;{jk-FAխ[ )ЁEgEj%`n]'{;Ln˕7 ő:_I4Z^HN ɔބܱ=~$&麟x֮͛y?}̃DXME?ۢ?0s"ZZ5L؈BgiT1I] N/ᎏT7V/qͬ'X {\ȽDZwTE&aC]s+5aŰC%eRU3"h\R.,T29)%j\%9)_؊&Y;|7^tpئLȰA._2R)M"}n )i<`5Eq*Dr'w˘Xj$jCpk#e03E@̛P2%%4љ(RBFR:|\EEBP!i”.@0tWwS#c`)?VGDkYvP:P^L{k}K4I՟SMִdp؟ E{_ۋ?,9ɼJe@Fۜ,].8=@cV)}#I|u`/$RP@|8:D?ҫЋGi(G7ŪJHDIe?_}i #%Dd >{=hH4)uJ+}4V  o*Y=M.[ntt"gBP Z57h+GZfQ={h)3KT -ZI=|Ym<vؖdOG 6#RKzXɏ-v Lg \*\z/pxxhl 9 4nqShuf WcvpAܦP;H½]y9e܁P {1V<&҈_\>8LI92̀BJ 37#Ho߳~䞰o:Esa!VvEo  mb뚰|sKJg>C Ĭ /|x'7ȫXk Q2=#@5(,wn8P:RJ`*Q'D8;ICJt({`hrcV CkD -0#K1U[E}p{p@΀{zYƮQċ6+l&f6Tѕ8lqZ`&.4Za(ؖEh2Vj5w"o*`[!c!1-ǕCZq*|7 S8]P3yak vKmW+<>"TcZ_I[Z+{׺pMb rO؃ŕ6C*(gٺϨgYUa3pD})li!#wp}n1VߑLϸ _{U^P>`*);~ eְz9Lbh#m(N1ƪDOntҡdׂ$r;PGzv^Ftn#4MzFֿS0T4x᠅N$ UQsDnXm82D*[ԁ#>EMɍg*\\8%H3OO-gq˫(Ï+_Ur骙!qK"#=1C>ZnFUO+Gmk~>(;+M-ה*6xRCVUj /w|B갋gch5̸VS1ވq8ܦ65"& +CB0 bXBcGz萠IJcLJ-p;aFyV: $$|o-`*/큹( ۚ ѢUB)֦ӿy='m`w;kNkڲ}r /^<#gkGXpN:koVg}껰[(68Zui5 Jc")fv$x i ַ^wf.ņ{(Ynb`}?nO\U.̐jZsFXڦg)mqlLAvl'Ҁ|ʁepLphV)vgr(n[$Q`9NC2Yy#$$1sa]ݲkh[\պ~7mi i#X]]G$:`:殴g\齟\^ 4nVoaH}n[Wgٮy'Q5e{|cj;bܼ ^= _d;+a?cA3|'L.ZI*f67^=I FenMY(+krzȶi. Ś'p[l=$KIT fі N3:t3P׎IǷeܙ=ZU{"gEf3K4#lv C//EwP~3zAØUIkQ'm宐׍dZHMcuJ=fl[[6Q,re$~h?+d=dSX9`Rc%VØbn|ŨEV(ȱNtn;7?`ϟ,U`{D+h0) ?JYQjV?@ˍӜ}$ 1BygknF7Y{+' [ķ,ws ]8 q5Æ\dFXu#sXM?A໰]A[ fbjZTLx%cO$C¸,v@{) 8ӳe {pErc"=/_KS^}jy]QY!Ԃ%%PXmj#J"IIޱd!BqTd3g$]媜 _{]9(2-} 4c7tWq4g5 >Z472  Y̪M]%#sy SN[h^*7յ sC'"I Sl:Ը |BɯVI֝ח`ƣaU_zHrU|[k9$P}Unē+NCY5BȕQLBpB$. ƍS5b xJ~p"'ɋ.HZ @20 )N̳Fry&YHnV>@8@߽B«v&tRpHm%5))/UG>vھ<?v?n+//E+o!+P/~bx2Bʙɮhj9 7ms~p6H\2+Mq\N^a@ԏ3`Pd@Y{@U:[})D I 0đ%(u+kHgFZhrnA~Ybjꍝ>1oEպEAx=ԏQ.M˜Ĺ'v5lyK'K,"* )Bɤ83!1]f*'(:kZ? j񙂻p_9[dXs[';mQt۸o]c 7BK~߷9%Q 4X`+gw\o θTzf$ X^<2} qI1Ķđdr-=lu4NsEEvƜ>+XPi5׀e ˺2rj7+,cu#[U{0땒`P% `.ZD(Ѱ1n0L=t"Ϊ&c<_#>ήyZb^q:K(>7-\dd ْ#߀0@ ajպ<#ݤb xS<0I /65+tZU*+ќ0(ѡufB+x<"/l2zY;  т`YteFEy\? cŹ*?Ͼigbq,]=*l|_ϊkۘҌ*m7#u&V˔O:;npfb81?2yI?8jIZWd3+\ .WcJ":[F݅4hxۘ7;CT3n}=7w0e~)d[?`"Bl-_8$3<+w7<%N,l!n1񣨠-tHZ۩j&.яa"`goYkpi0R= Jp} BkqsoyW3Ի5nɂn+J }AD?Kbjr{Z`dyEa RflBVf2W*+ B V4D_x΄ PȔQ' >zjc&{cuX$LL0S$u' #iϖ8JG̿giS}qte+ xai౾]])儧ɞ-uhTIuИod U+ 44T]{[WBE fa#bD|M߅7,,7ō.,\NT2w"Nۂv 3>we19Z|ǭf\p|'ʄfE$`ic؎rGJ mnszI7ɤHqX=Qn%f [g! 4x);SJp7pסXkAG?~p6ȍC($jq_I  h$a`80u]ā6I<||Lh&C4>@t`o1wp\DG\UeXOG2OGem4dT-Du4}sGQ5ȧr'ZjVO3G;o ӹe}#F9 3 bاvmEzHk9+3ѱ؋ 1i!r!W_y@EYHFK)9Z_HUtFPm=7.B^ Hd, 3f}9ө+F(h#B1B&GÌ H+G!8{*XLU< hK7 pN^"MW%ŸK?iX(*0yI Qbi5rU0%|1~nBa[kL ~WXpYcodl޳\'2p:l#$Z -*4!̅A8((CAy/}{.CbLA]WEcȣz~5ԠmP=\^Al4׻@'ArN8_&ă5ߪ@r㿹o]b}w7{11lg j})%\Fy^O=yd;^%vPwyѧ E GdZ%"b}*T?&\]yscO~D.DLS|UV lu1 `֓CR"w#eEGԭU>oTWsA>ccWoxSGJf%:)>.`gw1}9lՔՌrﹶYΨ-DiфfqHjf!b巋a` lRҨ-$vJ;B\H!z=W%Ak<+5MC Zȫfgwh=_>]U fCSe@-E5he۫(G}ё1Gr~tB.!sYAv62N?$^6卙yblŃ~SW3o&5:TcGɛG`S;`F ` Br: kjz3&md"y(R],q]{ =0#qxkH'5ˎRZ*zhXi\\'St3W1+UwEe7OA'g:%Mۍ5c)p$]¿4An-(z!"/,V^񗕲^KuvAv3&g4aL A _DK&.lI,qIk,쫮uэ3:: mz{.4#6"LGv|,Q~vm;A\" AO$9̈́Re'$igv[nVKV#Zoq.sJD>=! ,7\V/eD[2˛ʷÕ,H"kH~h%`?pN>߄T(Gs1!}t{2MW4NA<ߕJVؘC[*aXص$B#3d`+C~]#kMv"8Nxλb(S',)o*Pr79ꓚ5O*dX uMZRX tVpďC5;}?Xv-_fyW<-L%=`m\e\11;R%DYW"S++/f 4p0W+5k &pa! £:-3 clt`Т> K1xPe Hwzgd:Žw#< ̺MwJQy~B[)s>7NGgٲ=aI" )@*6hV#H Tlվ]0-<[/=<8E|¥ԷjDeܝke`'jur:w߇Z؂a)5)h;'HQg1WVQoVAW+uV~Ve;Xbv‰SB_b Cڲ[a?(c >g.|]| m0Jڋ^6BF#'$"ݜ>k]w :׾u^ 6# HUכgl\X:dGǞ oC }{ѠvԖ3 :Ɠל4FTvjg}A 0\_dPnh )X*ZgHU[{SXqTϔרH-]jiÔCO#}Y.]V>zq[ C/h6͊zW2B X{%ezjZ \CB ߠ{q "T2=# 6iKaVEkfY+Y[ * X7*t13d0X(ߌ8Dk0Hei+>rj*>'p. Ff*A\%s$qYȀأ/TPrnE;~S4qBzR(riS*et5/±ul~MH%[/8.z& Mظ^]}QZ a(ZFybk[,0 :RX5;*f_{ ,OmRG)}jgA~O2^EXeT7لÖ&7=Q^10vEޯ?7TJS')qD*O,or(#5 ڍ6^݄j8Լp۠Ot5K+'Y\N %J),pRߏSV=B#1y kS\:D|wDH l#3DAL8f(u(12L#V)֋@a )v?Z,ñ\;if.P!׍Fr`tEq:AQ%m+`I緢<5gybͨE]8- {%e&m}Ekw_@dxcRF-7)^nboK N?- @"7Ӭ ,|ԥz\$&¡3 QL'?#{dZOCǼ!QT .]se1v+1oH{ +3a&\YhHJgzT%$9`#^ceg4"XTg|fq.-$]<ӣ{<Ǵ j:Uvhpo7$!RY촉,SOecj&0H@cz=Я)~>F97ʻ'R /r1E&qNmnƟ+ԗ^PG&ˀ1m--}!F8umS*ϚDrs@ ChA.$xI&{;) R`A74$M)a}GLJudNa|A|xBZtFy'ݳn֏HbH];2q8 ;ذ.U>HN⹿q:ss݄xeG,5T*ϥEW%?[5>L$'vӞ}+glR>R#R`X <ձ?Yh;~:KGptP+nzg.A8*:9coF|`䝷жQ3{ $]Mq֐/1VǷ OHP]');8vR`)"M:(~^tj )|ʙ u>Y;!(^tH 9e;J /Qjqra.9pVJ30Fŧoo?\[<Dxegg,csT'8@QgPkKHwyt#8an!Ԡu4d}rBUPꏃch){ Vr8ݮ٘`ZAd}fWX5e2m뎶ǤkX5%Љq9) " (O{D؀SVr?wܺ/q|5ph >.[K^"0d[qWwWYk*nv6r%S0,gp:πI'u}|sf>Uj[qFWˬTk謩Z?)Scj1$t0{g_ɫ qr^Sp%Ҁ̐c<"#1{Ul_cEU`R7-LU`qzZ C? 3FN<އ'pǽ7)={Ҟ8rys(Fz?N)|$Y~FD#7U_s)JU[eC7~#8##UHǷm':P {}[ Lb0R/X7Dc*vdR- 6*d u.Esl z][}˖+FؑYe88Ie괰3o}5{HLA 0$t$}֕r9&5} \<]|綏re:S;Ά4j26]xǵTYf;?k\%4/q1Nk=avTOГdCJO# Q{#T EOgʴs5FGzYIvw-8Yxt1ܡ ͏gQfԄ+(јrjZjP=.A{o\]x, -C ֜g'V ݰ0PlWkM+ǐ{9gYGlNhI,d(\ S/ᬜ;zM6 NYHL =s|^3d)< ~ юAXxn3n շdz|MpbJtĉ̺=\jkL|.bb4?7u`.ݞXkG^oB#P3N響Za9b#-s]9%DiQc"i栝xÀR+ J\!wv{Wk HMx Tf܉& -mErYb?D`zfH,BuлVưId}>%=Hj9癦JD'"`]T{ha鍝K$MSwORRq;fe3aHƧZ/:{s`@3\D\&#E逜xp8hh0@6˶h"fqX:p,$nܪtT-pApY&_`#XymT# {A2 K+R (`7isSJ&Je&E,p bk4(;fT_uM7[Y{ii6ڀFG8ڠUW]ƜOٛРiQeb+^_d//X?3,\RmS˞A[S1K!Lp[9soXˬ5T| _FkQu~o[і.*UѥKroz"^/ uR?aX[jPȰ^SNP@|¢]ÕF2*@Qvp O襬&믯AL+ ~ #vr5ܲИ߸8w+_1g FЧG;GMOgRYFR¯54"p,jmFqBL5$Rqfix Vb$2YR2n;,wQw܇Upe.ϖ`9e2ćR8vNnQ}jxCv9iͩRY)$M.6O3ǥvԖ.ƣ_ImO+/SV~ d>ZDF)єN; ~AqոT0z_i"̘uEǀ _HA}yXMc6:hbto%2!#PhW -AAN1(Qĥ"@BbIF8XpE]w;grHCWc7AG6ۧ%!j_cq&e|3W%eb]rc4+)9E V"U53j15}ڐ+/$:屔\F e"/5/tܧMBCzpL}_Ku13k.Qh-7v섲un}' 8 U j_r{] a1Gvqc{vQwk#Wfq ],j(;W61''fMaOA8љ VSb>8;~ت*eacBQmO;3+!tUǛaJh]9U'`*]΋!6ZbM/!,Jb3-6Þ~J]GΡj(+_uWXУ"fNfZ\hnGNkz~ֳMsWɲݻg\mOWȳoa@#Ѝs+s!`%tO%2TD6wdĝA /d.x(XAO6nӓ@F~ KP҂[AuڠUȊK,\^؎lӀ ބE]DS(,Rz~;FRK)z@KzUȦ,.x[b!+6iGlC>pB"Ь.COR ͍lcg> ت%O?xLVA 2:K !Uq^D͐ȥhr+,0 diҢ ct`2>IDA49ҿ˯%ߒP*9@H[rE3gģo)ȖL!!TGZaRi鷓+Ga4eRqCG9i^mHG'WS0C~/3fL4YvۚzG-@H9zM}emo:e K} $5La Ocf=GqOF;M4X#Q*=+:r"'J͓(IfK*LwU>ZRkI[_IR FBEl"p"+~FXf汁?\(.XĜgX'phdeӓ+@y6 xB9&6zj9o%e "761+=tNُ@a1+lqPORٰN ::!\#CqT`*])p.\Vp,Cڍ+X_fÚΰڈB.0A)G͗?5FmSKGNykDp_7Q烖ewr`bx?${ݽ.D}cSdRXPҎ'\g8jr79e{uDNPʴD-FPCF@Lf%n6y&)J:̹#$WĴG]}zm `< -1by6/Qʳ&\4VPwR x(C"-|j^p'4rB=?>85ϡ6y67 ]r =]F%h|'+E*&tuaT _9xm ]BˬmKE ÷U_h ~L#b_/iǏ_ nИ'jjl)$uVC*Is%A ch/ՁTL3*7^}êXr7o6>dZ)B] }L 3}{3Hpow7XAE'{)3I<3 n-)(7̔!nصm @%"«wrܹ:j%?w9i,Oqwr뎾p=~Px dgl.@L=D6 R0\LJkm@| vK*`b<-">fqcdݒМ$J1eĜu2k%;1mX+"/tZ֊m~hccHp_&u ]>MO ȶb.| 1&?UŠX GFH%޿nlXQ1D7tΜ$8NwAuIU(]eOp@@ Pk^|@Ev_ xF54{2 i%0 7XJ3&%>#r_Z[6U,j1=A-&fNac7h0tv )A"7TdyUSʣ魿;ZC&>N亿ɝ؞ZSWɏ|;ݢPqlz+9g["/Xtq؏|0 !U݃e*JiCQx8Q&FpqNh-ɥ2a+EPQs-\TP+X8qњF.RO@1g~ޅ͖ !z: %){)D˻y*,-pL,GMԇ&<\a&aҩmW¯+cdtCJic|~Wj䬇Uy`&hf Q*T^={庋|TT"tXQ_NGo% @ݕXͣ:R[G`W MJѧTOg'fwd=gj-m }8G`奙r1Qr]ɡJ~0֓iI"|~9eڧ>sC>_l󦊋d9a:tLI=7 Luc} !`>Cgi1|ʈi Y 1ZoK}%2gRnߡ]gHWە˖Fv"7kS Uք|pc^Xw_uU;ww@JS 'i!7-ӡdǝrВK(@4*r shq(U׬i 3L1 0|S10e9n[AƠY(/θsR;yI8Y9qˌ:NuŮfPvGIM,m'"j+}0;G1՟zJasAَJM/Hߨ/0\[FYu6y~C)PIwtL][d_(H7/dTV͵CzoV3>+ic ? '>=b*%#?eM!,m?E7to1ey3pTEPצ#8F(KK%_J9E{ڨEKu]C{>k+ArA{j ϖ^[78}flFhl熵Ƽ6Dn Fv #6 zË;6yR+F~40al:nD2TӍyݐxg! 7CIVWhMH=}*S}պ6ĒۤVKw1z/,cdzdW" N표=^ʏfUM7heM\%z@os~9A DL

    Ww_~xNAL[5{_ƃbSތ'zZې܀#UaR,+2AaƻA1X?gbZQ },C ,WWR{?hDn"l8\ףEk_"pʑܚK̸U/rŚ<Ӵ2rN3͟d{:44cuOK]ݎ'CV} ^p4N=!_o?ŋ)ש'g)tR[0vN<0 Z>wf8s,ᗴ}Umrf+}eCI^Ս'J n?;>]N5 Ir2yA % 52Q1(k4ˮzDt>7UJ R gӲ` ͟-Z왋T`<vتc5w {>qq0-8޴ ֯1Q}uuUaf5_EY[bE* =ß|3Bbb१̆zMoiS_vPAeu؅n;3~G;XF(qG5Qv_#H{{0zb6|d#=n,/يmr@}>Pgo.ieLs 3 hx5^wYK+H\V[\)1Fƣe U-a@ErG4Zd8bL(Uҙ yv@XVǤC~ǢpOԋdy}( w^מS9FU۴άH~4!YDQJMǾhvjaʲt:wkTnqo ݃:仡uuRضi)R$,} I״ A>/Ԗڝ@b{v˺sMmƮb_hcG~*@ޣ3YFt wDfReD}J/k !_x 7ۜr5aj ?4 i=jH"Ds0fCA)nkJYE99B5L^p>M^T3vXL7㙊%uRN8v[%V̀} G㲖SRٗm){ -~[`#tZ* %7{8[Y)N2:DH%tަ`)~I=| #Qrkὣ!`'zOJ@'[*]X2^)WSk<\..L"dcxhdGnbhQykfs-<ǖNa+^aGHox &.a[+H/%7-Ҟ12z.>g80ښ 1F 6܎r͌7?Ӗʒ\6 Rm = #"X"jxE0\<>BNZzA~AC(j<01,|!kM<3Cӛ_CI_=i,?z;J3MfYQL1j#"Ciً|TT{22W XP,Z~:7ʏޔ5+=sboƏߛNmӀ( )H0<#SӌqԢ PEmaUrzFa[E"D|6Lݴg}^U盕dP%B¤=p%4Fu z+* &*`@J\J3i]Xb6U @Kv81RCj ;5L! !6(awH=8FO%pÔ|u[S/k}zhnR7 R$YËr8XVibrD o] `iir |$&m (,$C^cIv;D>ffPBr]]i#y vBOhB+R4~@<7o=;gݧ$ȣchwRCҶ뒘?lOJƸblл5%ddG#(M)g2)Z]x2j4ZnY5TVR^rёQe$䮔, l*cG<.m˵}5rnm1B2'4$͠~."Sxc~Nš:f)Ey ZS&2liAڦGkc7qowb'B%pɖ.jdɝƱL }@lOGȃdu{\VOt>92ܭup,(Eg̝̊VyŌazU] Lzj-ɎP]*RxCt"TRQg73 S Q۩/ˍ</-( c@Qw4g U[6tI.>蚲_%!yzǩnmb/3 ,S#lD,] U:4" xJu9ǪIk4t+z/=t?BU#lryKwv~ @u5*a XOܯ-6(/JAD;@:⣛`2F[Jl)05̪' /IhJfbn ,T7i >R=[،IV ! %5 KVQ]/+.PX[nM#*=:̫\ `gz7mx a xplErֳUf5ݶ&S{y;gkWk>6 BjkM|R)LLׂքZ>Oh"Zrۢa f& ;㑇D\q0z,Cjɾqca QpIPz|1EjX-R}7L t6 ŘlC]sEr$p6Evy9EYƋZ7^a-|CR1ՁGC%6_w)JSHC%ڜބs? B vfI)jzhXBq_.kyhpUd![-B>JkeJ>un9wj[Fe&?xV痃g &*H&$( Bk &is;Ʃȥ<*YS1Vޖ>h)rAWI{&򐪂O֙ =L g& [c Zt'wpD{*w1oƎ,]3ɵ s1RB"Vdȕ?E{L~ xZޓ#@l 4ytbit@)^SW82Ǹѳ= Sҩ/Th".;ꔓ OR L@YfG9HtsA.hc+&*=WHzW6E9KjXyc.nHCf%XD,yk+Zy!z+M42or![_ddT%28W"έ:Dt嫯β8jYp%YC$xG j<CO^S"'0"AUm|&B;FL&L~EBBq &A8㶲Z ICRW==;oZ\;do}wydGIZ6#Cv>+Ik?E3 іy<̱u %]iK ef٩~Y/X\K2Q#_0 uǥ@t++CS mEV4`Bc@R˻JQЏOq#BEț3 S-YVbj ]ߥ5e?$s/zQ㲣#eS 9_L%@BR i[j'Hȫ*or`cJ& 29/W@'Vx? >TN n%ތM_"I&U=tf+$` +G9aXIRdNwdrDu5Ų8NBγȿܐ_{,a02HjMJ5جd;CDKQπ7Ql*ј |HA ()Ӡr'T|rZMkfKr0-5#SHȤK+H-wM'-BZ##@ ⬆/tbO _ @p9/f]U`7/qIefFkN7T"lټ.jg; 9;es  c@{%`\;xtp̰o4TU}mH]"u`=8֕ KY|(VL_l#IQ\od2Uq.vbU&4-xjex0'1c9<<OK mVb1 !]HBo&Hv=S3J)AX wR6ԋ'c'ܧ'W~ҒoZmhYZ(sw_`yT:WTðH;&o8.E># a~AAL) a(&3[\ |CVκyI^DZYĎN$,RhUU/F~3$Q^= DoF':;xIp7Tj7ꇗyXhGOE2btF_FuyԛS :Fg0l!bwv(^Ż <NM!,0h1ha_A{GWĪU G eʨ:j]P$Fe/$,e٦oYU`J) 5W9'r\TSTZ6gm#71X%?`դ aɂv ;9 :wrԐA~.V3ރٟ4}ܭn3",$ʼntBgKo"9ΐtgK}CDᯂ0H82p]"JLjm٦@ކjpCh#E 3^{1I±$ߕ S/& άf Mt9|f'x8^(KdL(4Af^N䘂ICZ^Cl8togԧ)a69| НRͳ6)%@6ɕ`G&7 N<[uh^X` sXQMS2.Ag {%Yt7'0mGÝwú?= @AȓOjIܹ=Yڰ(8&s?!a"1DrMznBm55&!ݜs"m x}V" 6οͅU(a>\s 24%,]0{'QYM>3p͸GǠ[Msr~K݋(% ڂA>+UCwncޚuznׄ/r ^WsyWi i?6A~L.T9_\KdCdgq#a߂v:ŬLM62ާDRkj P) < Ef "5vZq]\Z 46Md_Q͊n$0aP/bk'0[*fd3F sۍrv Yd%HXtw--&'[)MO(Np$9V)Ѵ u?kq9N}Iwlf..isHv{m W3ɂ ,呜Lcibs'ʩzEQ)gOn1PzLEj}MAp|u H:KЀJAV4hv_j$O ѴI7˘1IK{F^v.$)I4r1a0䌅CQ Tڭ4z[|X nPRjHcC\1A kҸlӁ%[F$tY4yiȳg:[*pH!CANkk(bɰ>`AԞyN<q[y\"Χx#PpA \tP oFG Wht56p@$'qVˊ0>kdm ኳ:ָVv*}|,K ԗP,abiQ1(Kc㙿Beb@Bc~?K ZS89 &'NRQs]Lb`hF\k $gf}_5|rrr`Ɩ+)]X末UPOR&!K"e(qsE:@y|:dao.II-b1] 1g\((Avg$wfx?lhJbݢNnp6Mge|d0ixxTɰYF?ҁh5Mv*GWΣmIORyje ƹ!-hc|N̡bv[ԸCzW>6-Cxϓ4 LG*vWtޒ&aPUű&`=}79«D ;ImA%;brt {c}#.L9V쉃N.M^j:" Q@5iJX?{Y%y -iҝI;#'^Y34Z2Y i \v 5cO %|ů)N!ˣ;]; h)33ќ1q6&) ;OgRtyhpלgd o0upd-cۜFv-$K_$*KK$GAhC/@J-_A_TPA陳Bz66>}2fӹHzD3 _H|hrɴ! f{[$fs~L;DcҝJ'OHVD:I::%h {}IG \XapFOww5yg pD`*Fn_O1 `r+<~x)}4ښsAvDKga*'wFAuS$[/C{RЁS~L7"j^;sV,1D/ABsRol[vI r Pɐ!a1R ]-XHJYrNӒl <>&X"]DNVFp}eֽ͠nhar|/-$AKR{DГ.5'pdA{_Ђ)8c.;,S?`iMSYiȗo$I]V. ta2BU.hN߿-'2 1=:kJ%+55$ϴ&MUi9gEݻ6ꄊ7`+5 s#E%z5 F_}FWcAB=eRs`A)!9:[I4]d׽fk-v Hv_L)wzԐK_(k9kT1]'|TQUt N>bzXG]zQRKz-5X(6FLFA3&fxՠ_ g]<Ɛ˧ 'ƹڌW F`Lox6{]Lwbs@n,zc)K+ [e5g;Dn ^U2[#`Dea\Onw"*k2:I~rX5 MOyqYh"m}-j2pd_k\< ":FloHuLpK'0Jo]' 'yb1^[}>0Dp B>Keșm/@4m{yB؎KQ' ГAN>[R6CCiWCU_|*/e8BxJ0ԮE˜7P 3_ڻ~+2t9Ł\Nl`R2jK)tq3;`hmfW:]o3̓2z;Wv>q"g\ZQ G/Kt`"ha}!pb`/"Y5t4K֦x MiCU*536e9R5,}2##3II@]"{PJBb+B,`=WKf@.M %ZKƒ44Xg"NsTYX< '"9b;шWwg+\yw B}9d6*7C?c^,!Hr8O"dx搀jbt>:]_;g--#0jNq Zi)Ea[1s/[ﮜ Qv5'sQW}̵OcKyA>ݲy#ت[xg!쉳]B xhc\sN?[C4˱8`w:ܤHRyG<=DZ26dl.hHUep):op\Άav'e|,|.hƖ6|:OWFp1.E'{&&v5>5IIg;R^ Hg.o8F 5x!W?څTKO[;kN1E8~d(6pWUXx]zZ&x{" FV7,L tBXX2pIcMOS@sUЕ!4F,_o?''g$Pu@q+hIlۻfȖܲ]ذH/ģ8CX}N 8K _nO yޑyD?ƺ\y#2>J\ߍY"+&Dzͩ+VYXa+awkA<3ΥH gx_YuS.,h\t[m6G72ucd:|rKcCr-Z8YscpDvrå1u1o!`qZphuJuUb|IYl#׮W}&N%g$izk38LGDx1MKLH`*a6zjyv2XyŲ JRZSQ:iV Q7R+N]z.^j&+ӷ#܎W㉯bZNJbny~뽽-t{0 ǰ_4~z¥Pcirc庎JⲰBpVrD [-+Ե}CD81 w.'zy.y*<ХEmD]vMt{\ HgιstV*~(?%q-3ƙz¢O'3mQ"ήZG Op&p[r0}F#;$lT.cXZ3hҭKG 1JLg0qWXvCIầ+ՆQ (apk0&\kރoѥ\fWu㩏I)2w5uIQp]Ab;u|K#45W߲\bF=|E˴mzJqBJV[zm1:dpR;s5 8#Hx$\ʎcݘ'͛<'UI>P#`䊀vҟKrh)XnhW$y;fWo#be_N5xbFp/rxXE͐RqBt4#rkg@?Rv:p5MnAfA *-ڇwbSTWD{1M\W2r!MޑhW/j-9*U.؃v rzn 6UZ|$'b$713Ƈ<=c Mf3!-(S8@ay;w!`t- ﴕoqT9"_~欟[ƹ[pdqPh}oSւEX"#M% V-?¸RG`4Y"l9sQbL([QѕD0!|H$Vv&}*P(p'\tWldD1nJib9IzZMc9 (حS᧓l%F BGK ZhXm=j;BV}}>7f N$#{m?rϛH$h ~/p)DIeO5IEpaFΟmE{b_ڄ'Ab0]0~lU8$" l |WU4͏@|h25nַ}vTϭVEaBb5piah61JXQL(Qw;r S#p\WX-gT B"LGε^"P){UhIO Gh]f`G3~y0۫ZI%9QXT_!rH})VS2B$Ոt`\^b(0K4kZ]ly7R\U5I"cK@5'.𪄥$E~=q4pm[Hj~{HdNoe8}'b޺Ң{\"˒.ȎQ:3Lk.@SsbA&O'F'ldr~/Re-3#+Oڶ w[ejEd`/n0g[ʌ۪dڝ%!c cv;}L/Wq` x}xuډŷ E\7gG` 5wH5Y$C;lB{Vhm#bNG;"12[ yl/F-Y9u \`PW\Ս~Q s.8\A&qdݨ5l9/Đ'U-`nl BU*~ҽ?ⴒI Ᵽ0K>`, 6csSяiY"XCi?m )r@p82,3pXb&5Pډ*;*r{>UKXS@)I(/#0:œo lbuo r^d XaK-1v476SPǮ͊P$p!l$Zh~NZD͑m(VȜĝx Y%#cѷ`.۷5FSx~ftuz x j%|M녙ET9ѱ gRBB6rBouZXhZ~ v n 13Qr0~z*fˊL `,i /$\бzW?bڸXB[U=-=㏅pJ zڅM7{w"bxRt{Jc0yQFtmR?~⤳\LЭseb -$ܳ j 5Y?^$>/ams4mn;+dBXp#`Y86Ai]T>MoXzҨdH+Tv<ҁ3ݩF_. Toؤ!]bQ53'FJ0|7@!ˎ]׈/\"}s+Zxغ9 lZ4<mEXăvXk@ 8c";JIEV"IJ l~;mV~d J xa[4 ~ǕZœ;G I{[ww=\$'x-?auJWPĂ6DNj]֋ ?]%yXk0r|ZNx/G* $(î} F@jiژgHm܇̾ 1=iFv߆뗪T:YxœqC|CGV^+ሥhJ{Q9DAs iZ T7%*#,{d5J|13=; 7IО ũiic\F[|'9?jstP$uvTSx?[gfz><|]@k9"QP ^'kh@Tw,NoJ9a\`"N0RaR̷gȇ*RK >`&r˶ES P5pC9=}yT*>3!eEکIE Moz X4,εi~ |с >O犖 AZxz`z%9E/Ԋt4%!3|˅[[g Y_U8<Z7>{6&UfdY:xSI~ ?YRUHDe/}k XζtĒUmɓԿw_;ˠQ{XEՀڠBjpًf4Cqg=>Xh䒱!%Kl,BfS=/f52j`1|7(! e7Eg7~"h.T1ΏڂۇtYW#yM ~/!#wG~8Y8~3 K=p]bh]SXwf\ōG(Ķ,!YfZg5l@ѳ3qҖz_:hl+r(e*o/4NCj,qӆ<7mnya no† Rfn 3@gNY4/hʭ@쿽b<ɣӇ$kw& 0wWܟe(3S؞M\^_~KM1h+a_׹6esU([-}"-/ Q_amLG;`*^#IE ̖P&<ӄR;K [(8+ƻ7WfDԂL6\Έqf lΣ1s<6 \J:cu@I>p UG:<OCl2%ףQʨwi!gpbvtճ!par,.ؼ-=ӭ|U*] -Ffȼ{:zm1;5:sCMJrB µLnl!^̎m!w6 y_ [ѺhtdN%q(<"p#'9RC?iE=9(֑Ӑxz£' ?ovyF3&#|Lƶ%vru(4jRfqᣊ c0Q]Fb&g`s829wPr-M=Tn* c'!i8[ Bmqq0ܘʳ%yvIG'^枎_#}= F* '09l&;ŰZ,xUm sX/κ~z"[ A٨Zd0'E|B&.܀Gӻ85V4520+؎Z&2:oӊ#w-סUy[lV#B01^!JGɜ3|T-)gvbٱQ"clU4guxda>=1NJbS(x 8( hPg̹Nx/ἡ]0?;x0$W5/9+`fx*| 2ie4غZVvTmB'a썗 vqΝfyJBԄ!s7ae:+ͧC)FfiFr9jTZu&ZnBOre?@'HFqc{ݜоe FcI[$vk0]{&}7*3K}W3&^7,b2e+⟹Q9- 7jak5ϼ9!_O7 -o_`%Ym/ pj:& )R+:)Jt)`au()wZy}{rǕ~c==)=hKئTO[z(%3kQQB'T6ذ~+4ׄeuJ{D.ϙbP| '}sIF?7)54^Ed(s<(@9$q#'x&.VEװ$ͅmMnt.;4kۂ~)X$ǩWb徘ʡ#=ԛpEѰI"D6~*nIZpIy䓄6ZdronY;A_;7j/ Wbge1sF_G:w,5Ze͞PZ?쩞{.x6\5἗Rd_k"ByhO8I.Vz&xp9[ H{*xw?de%l|tϦ0yJ|p3,?~늋 Dn@7&p'R 1 Grwuh~"BF̅Z;XK2#)Ҩ4GP*@5gatP9d:±L'kՌ6C Yۢlq:yo|R9h7K\b;&PQHUJXk 6J}Xȅ1jX|(Sy&{MV,a؃6KP[Vi> fv:hWq)(ahe,L  B֎svm{—O9j\RKN 3K@;:<# ÷tq4fXs=$f3JarB2tWQd%@Z= 0!pيw' |z[My PqWz b`5hLIl|xJezlQo5%.jSQ@G+*=N03m>jpJhAa3 <$Е'wt~ +~gbsUYAttCa &>oҝD`O ٳ#k]飕W_Ǒr4 tdI^Hϋu=ƚݍ񹧥R:vc!phYp*XsOþ> gQb'tg<-]UДYA&TBPz7au%ɮPs4"r Cp5hfA.(Ӄ@nZ7 1~Sre 7敧j1f6~h&NJ5a+8k೥ BoKE[4#pUF1יAFǜC#Z;Xl9v[jƒ8L$_B'THR\*@g&Z:&`=oCmYS;g06;D[}:ȞNZkUޘC.YbexCm)k2q7W3YUsRǴBD$M~Cɇ (mہ3"Z!@U<$GW>R+_8%$Fp)񳐠-#X#f|k0I3,7b`;KuC˽5CCax7 tXu1[CGM[>:IZWWf`cRZ%^ "Sߦ}sˇwd"8D$9%C!!ahS$"CE'l"9WglpH(_+fx, x0~a|/EGV󢔑sS6W8ȠՎA55m_g<,`?ʞAf2T Kg^p't8˗J=J©k@zv#\:edcq9r6Zgs9ؙsJ4a$J'nE|;310ےFt;-R)-H@d O<&Ep]'EW.wf0J dPB,BI0CxA@!Z;6 :je}kUy=2#<1jKV >q(i-ᠻ\FVL(Ojmk$\*Њ]Hףd^HT69Ty-*V޲W"!GƖ'w>])S/2gy3[AՏl*8tlB c%F)߫X$~W& opB,R+au{X@=̌{vDfJ (ٽDpkWtl,Ncq8iIng)+7|v.c \/M7Ak P5@T|0 -BD22Q7iUV_ >Gh&V]R}zz  p}4ESJG4}ffTp Z)Tdf(Dz~$ )ɋ_ آ{.,W>jaH=D]s'"}oY{> 0Udoel^ %7L* -1&#D 7aNrznn} r-ГKT/j|o#7*_C TUAq#NRń`?Y!ҩ e{n5JNuI]l3-gmms|&-L5e1X nP%Ƿ=7J ¿)LA.)I̐&\07%N73_j*H';E:I\}Q^lm*jk V䕸001J p  [ %Vxp~5Zv⚔PA T* )U]|y|6d=\ꀬڌBId@ôJ=D1 ᭜ձ{#7pC9>!mCjxmQ5VEb<"!͊YԢixMoR> 'O0 2Sfm{cऊ?_R^cΘ=-~&Bc+<йR(+yo_SjzY뤎d4 smLyAox"|>7"K@=FzPi ϥBGnl[fײrq!!k(λfD yR{Fy^C۴gj_E5&OS.fS4 F.<\Z %LAf.3v%Ч?\ f q[:cXfXl/x}%K^\an[3%ܮU`5wl=}(*A$rtpf狳kQI6'>9Ő}v' ugJH3AP8s"nj$TK6_"%O@|d'y;ýd#} cOB&7ݠ@v\jVS i8kא¹AIpHӭ˂vN*\ px'-(=1^Rђ=Lrt?a>FXrr<ܲ4i0$ad:Hdb@Oi7b9N`S`tj_-lBNҞgʐog bfjF3#lTux"KT{VRH dE*2[dO$)9:~UE}D'2]S!`nb7vzO'\e}y^Cf,A"PᘢqimG9)03Rq9!wTwL)7G2X)Kl27 Ծ4YX?7Ƹ˾RhkHi ۪WWI^ᯈHM=eu?WO5Ξ'd Rpftп~5ݒeĈa Ԡ<&J4P`0h ALKoE0%Hs ]%6(al !"dC<\TOO-w.:ǛtS 'G+ _7K.f@>pJzڻa?HPuR mFb9cfTHv RR}\eX}aGi0*52os"a1?v[?;\0L̢{|: qﲟA`P~gm4},ELI.[w簀hD뙴΅QS3$OQcIš3T\J+S"rwb T r^2 o.QwE>;qh^%X{("O? ,n =K"ΤVPT/%5HϚ)_E'0Zxq)߄ii1*ym#hok5<ԣ05X,X5#E8=U[Ǻ__9nULA+a:|[=iVO΁Yz:t$A"=UB3egI3LI9FK)dEpCT/Lg&-SSIfik*u5QXxD֜!dK<W;yx{o6%nT RSߡZW&&\o (M̩k*pM4Zzas|{vQIBʺ@.B<Gy;J~mmCNOt8aLx}ww_lGTd*- 6Tp2&s78oQaBM瓷HӞIJ #!zszIKr@`=#yoK/Tf^+1?tU8/G/Jnrm!':{?]'AqtJ %y*qXҵ/|q7{'"4Wٍ9mF_rޥdk'^;)t苨 p2ه/K~z1cHuы )v+W<׆nᅦTgW#tLKUZ`Rt$prAlt5v30-ό UIYӬ^ni1Cl]՟ .6"Y!)ۮ1NT#P-J໗FK^,e&!7/=EgBtet /T :-g.QevM](wdNC6)bgq-i;'^$JkulOlt^cқi)sUN'5a~ C^T*G~ۍVhx<P_`i|8uNipݙah!,GtMxш-q]">8 $W=a<@ DgH߁|( N$W4͏IפL !|j[5t_BfF4e+g!Dʁ;:Au 7faqɪ֢hSY=>s`E=OV>s6M-f=%Gm8g8Ĵ%䆟VׂciYD"Ϊ^GiqyYe:^ L`&\Bza)VCpfE x+&ZNeSr7WK5z֦<}j2ĐL֗KYfu%:ҞϠt"ܬt͇xlR>\cYdnLqLfOS6`g.:ϔ@G$^"/ 5/W^*kT(鹴e]N/@'0H"N^3.|=?gwvG4|`|XaeO\e0_/ ?mO5Ca6Ү=$dES|lKGA~ fT)+,"l;}s;ק]My]:I*c4Ɍ>u|,@|~H'& ]g f > b DߜIҺP>5o^GݧcmT5KHE{ }zaG bv ̋Q Q6@j)ӆ/y 30-`w,krE.!ΊNLAUe{% RK]:L1pyfd/sP"}YHɴg'aC$0{$j5>Jo6":mU $ek^啧x~&/ebPvѧK 6e!!MxB{qMRۡDɘfׅ7ѲU CEmSjzF} }L)kl=XԁH{G åX)_jb< ^6 0p b5H5H&+;xW2b JgiM20S2&R,Ù\[_sa s⥏vvx*hq< p$l$&UM4>' Z`̺.O8#z8v˴]Z =99a|"#:WvkaճZQ! E|Iki|.;6n)~5gUUϝd b&N{ƒ TOC_N}B=b}al9gJ=Ҷm!3-~cJʪjNfD*k=I(0S*O46,J_^/˲Jmy-(Cc;šQ6@7EVIS-E 9]rڣ}*Xc VYW >:#0X^џM4ɏ-Ʊ3#PxQڦ_pe&y( q +rvw7Nr J #"͵_C5trq"D:IC |M{Ik3 V&t ~u@$)"ge/]WolEA.}Ù*%*ePIfq-}pƞxp_|M[6~iN ʘ2-," vrwm}۪Y'4Z2.frB`?uQ#uA*fļ:A%ƜU3DEhlQ2tU CY=ml)SDս䊍zf'Wb#v\Ku44%@Qmư>ּH)K23AOS$lʉ`fO5Pd(CKg0"hfx<ۥM$~_/ShOpg{3;+*}&H~Et*L'qs\EqE^d ٴ{~tf~p}&ȫW8 @6xOXJQՑK\a=5(; ۿB=9LǂE\x/Xp`S |_APfR@leYv:& !!lF6!8*: ϰ3Q_w}E'ͼF\Z]Tݦ~ա\´ڞ ~ إ^>Soҙ5e[p2g}Vd3 դ`ֈ&CW`N扇gT+˸A0{#S'珿^= uaaE)@Xvf}=_<"i8n"-1FZ>5(3,{{ǯ 3 a`rҵmOqY0%pW:/hxa N< I !)*%YgH8j,S^A6Py5㉙i-KފQ+-!74zu3SK1͉:Ivͨ 80|m~;]<I ]_Uy=IF?ښD_BTRX4t=/~;KN{ ] vG `[%tb5JJ|r*ZkADa*|\$##,6h~@J>peFr&W/OŠz mH ]Bw`nX]tIYgӪǧ!bZل<>"f!'{Ϙ MR*bxC v"Ԣgc[ n12z\$&bh!SWٌU$ƓGWZtlI{ӺD<{iY_ #]PzR~x3F+JrSl(i5}yJǝ&\8ڪ*vr4''+>' xW!ԋVS8H(YYdVMZ-׊-U=x4|>MSZ|aLOYodPTQ35yQ[B@pVSe]<@^}1~0uPi1'3z;@̉. 3=Vȵst^i+#AυV ^BFw[.,o@ G'_NQ]3v R<u-h.g+Xީm;CFy <XdĮ 6BYޛ3`&ƾVv(ZdsHˤXJz|: 1ZNa.O*0DsN6ݶAi`ӣq 4oZ nK r."ȔNe;qS(m,>"ɜ(x;eAEςxQiF\mWN#$^!xi8fVG`n|&3j0FxqFSƢ]<&>kE~Y a~s@el:g$!*f xU)z+j i/fam|Էw0RnX#k@0CL[ڍ"pO!$˞<;v\n B@kD3adTQVḐ5zQ@3y9-{;D=[@<"+Z $kpqvМ%LZH9bUhzb:5kv`,'`P˧{}p7-wQ;Z,X[fܬ^} 3̼, |Ǿ5fδѱS|CǛ`B!e,;z%~4(oiH LV&t|7--#fMg/;?n(?GOK8 7Ɣ.']35fBDsS} w#S<ҙڵ!\ ,9~co1bh: AǢ>}#y2XImսɀh3Ɂm|HZ/\xcBw#qM׷nn4otY ~fK{:Kv.V+h:б3%Fu w,.!^ ĠżTcϻ0i%v(`Ck'{[62PqKGԜE, a#ȗlsXrHg*Z;K/AtKhws%Nefܰ(P`G+daN]!5Org_3Z7N)Ƿv"օSEQ[\Ysl惢9)q [1b:u"hNL20BD*eE/cnzk8D~Z4E^c+οDƑH0I׿\ $Ue?֙eh(mk9lH\?Y{\~f"zr܅{&2[WsY׌ףKQxy9W`z?#)L!*5Ht$h>w ;!8Vf[q+k 1}eVAGQV αBdw>Bgu>2s2񒖔jZ> uoj={b[7g$A3hu<k127U7u=46}Ҵ|,2>Z=p34YL.cpr#S$te̟?/9[CC &İC3N[{Q"PIn.v˅m{+BYȉ1 SJ %lAr9='=_߆?xs)՟Y+cXz [$]о;nx{ q=ig$;> ,"8:|. WnKOԸMKXIQT-b[>Ap]MwAue|*~}عDA(F j{:6h~vjsQ@Җ8b^ЈV+zFF 4G~)P ˸܋WR]~Jz̖[f1+{? 'QA nopC5VzB 33ƒ?"<#l={xYtNc1~!]='E :qeIQspZO$v+0S={}11<=#vn%5HSyu6x_, 0-3XPZPnCtNЫDS9  8Z{;Y?~Ag/ͯ&K_!ڠ%38[ԔEokSZ,y"uY$/&Y ~_1PKfKp~ø#+n.Ӥ q>"'Ȕ t0GՐg_UģqͧsG<Eܙ[oyV)}{(j8(2 NeqyJK-8=dgW^}Aaw'ok<rʬƶ$ F\. j6Gc#{?\` iv˖t3gqzbfU8G0&-5\5N8X>a)yOHkoݵp(V|@:KXMO#mvby%r>"%ڍ"W3/t3BR(X.uK|<8H@e$%q?AՎh LDK6W\[r|UmatHbd kbsOv4=l 4+PBIF}lį{=DUe`KC1l܁udgLDMC@?E17/+)_v$muloCkhn n"ƺ(T~ 0qi2@v!nv d.jI(q$d U/h^@( b+!?- &+ȗh LEj}YG-=wƽ?gpj8oSI@f~L]a,m%Wd0aAȫOdlfq&`أ78t}3+*T_H3qb\ilzy,d~a6UfYT,$=^~h4.fb!ȯAnv[מ1c@nůᢦZgcfAت4䶾bY<xee}>溤y4Ӂ㭛dZ7-x'MWjhX;zhw% %_=ހ"J*Y)l \z_)mIS8lK hmjƽD/v"zl[%?UHoK:kgɀ-?t~kT WBcuU=flЀU j{yGŒr'C?ʸWjLGO+aő^KkՓ6vpg }}Q!7ܵٮE@$aQ;<íN蕟V4>Yd4v7,MU<&h+.1,UʗiCMځ>{T7݁;^_ZE`ջ6>` )L3N m|pMF*xj.yY5y3Jk1/n< zkv!SWfi=O$a{m{OGL㐬:DjcN:V1dAI $L_߾n|!Be(]wYdhl瞁dumNQ-~݌J cž3"^3lÀ&m>uŠh+%(Z9dO~A1h Ûo niGӊ1=WJ."ͯ]iMaPeھF:qMo$?=#T-!J+gG!J02.g[qMCǢY S"d2Imͽbf|h|<6+ 2(@}gv=+DۉXf'9$DLO;Ə-x\߀ji8ҡE7E=g|n%95TZ )M8HM4Y` >_M&t`уew(![<ة0!ߣddD_Rkc?l.mZ /BĚ" K[ROd&kc\@͘a=7Yp퇗~Lӂ{^'G@띐R2^Ew}|V%U߃ۄ Dj1l_ ,|_hqcfOgj[o朣e] DC6<`tj>"u Vl-0gtz~J(Rgդb&o]?gBdlW>LȻ= f=OaԉRJP)SSՏ"m}}ЀSo,dm[n'CsAz=8C&>M!?͢[ m.SqQmzjMH\LL (!ErEyȴ$H52Gk䟿PDvR!'lx .>=S =y`Ϛ*.RxV;a"^<ΨD~G?mhoԥu.*k [h90^Sړ{_#r?: e|,-|Po8x1$dԔ1S]8ˎ,FaeD8+#8%~x2J Z&F.Ag(9DFMЫI  0PT5x/[HQ 16[1p%%v%k0DB P|$(6UZF626~hYnZuSֽL$R;]N:Q`.i*bk*!rt>(52IJqQfH.'JIv[t--6QZq>}*tkMD;0d`u@;[Ǒ]iK8[E;# B%lSF}6K7zލ>`?<'UuKٮ/ fm#COdaݡ@6=qM9LOT[dqoNB61y$ ^t'to+)w2^l1E ̟Vl h&D |!n<2 `c _>ukMܟ;&s[ka:oCVD^nk96d^;uT6Mb RA;bǿ*ɝ.kҳTX&kN[LVu{]&%08&H\'$Uh-5G>$jc4m7V;G/.ƺC;h9-3\4u^K4h^tuP5wXR0iX,G?r0Cf )?ȴ>ˍ۴M*րOz#G;RV7Y@.T"Ѕ@,@ &0|mNvQ\J 88T22I,{*Rp<;'5YR=1 |֜C&@-_flϱY0w}L:&6mn.+!oU0~eRn=!NbH֬ M 0b{\N _ɫYt㞾wR@Y>?2~v4`]FDuL`-%( oC60/qoz00l^ؼfAPBʴ+Eu$cݍ[XX"d }t}=U7Nq Mz|\i-#m[B}$EvNŮ 3It7V[u0MXe9 _V,}!R@ |C76}ov5>cr)wQ6k@,V'IlB OCO{g#_׈ d ŗsF|Y/ؑ<vҨwJxz0m"#S r| U4No:W3[2~#_arP_,= ht6uYVtYʹ+͛H3n]6I@KjIn4Bkt j`}`_!释Z/\90].﫠 NqaȬC7.NrI IO5R}d5x8nQ̠˺UL}ajuj|,3̏R gޝ"<㳫4|eJ'&)cg2oZ_w.v O:'$zp߼| VdsZNdokPao'!?o[kV㢋Ooـ)I bRTof:՞ xշZC=K!#׋y|OqZ%P?_յSCYأf|qʟs~ L#71v e^C U3r1 q"ݜ"+5q$ٓӸy(Oޞ&: ưk a!نEJd يN:ذ_. $Qܢdɑ.=T3@h}'^͡oZC(ʚ1g193k86(Xv5u><t.:G1\^^6 Jեݩ\e #K0e*UP$$ V!C>ZB}EC_J\G~̈V80qWͻd7!𒪙Mej$["Jv.-]t0r'A%)$zg{mNƴn﹇ys=V!td_2]^Rܜnb'׳h'lsms-"[UlUR- @hQ%999cmc|a/Ͽޏ {mYFI+9ὐ^!sx%dL",(NE͹wo1wwͤ!x/~Ak]Yu,꼃wZYQ;Zp̽\f)9/zdy7e$3[hlЫ&-༑nE GtIn]x!qǑ`ɫNI8w ?ߊ/ԊY)>L.MieYO6-U iK?.F1'ʖs>阏pKR鬼T>tORR=S߿2B,&amё Nۖ=Gŭubs=!,"4!'6譶Xm?0p9^0hՌ-է:ްwB-J+Z 8VEasc!qX,"\%acҬK¸~uT f'j>zgmDy nJy}r+xS}Ƿ?O<r v(nfH[Y c:mz47G ! vЭftr1ض±ε&) J RGWOx0ͷ`I7*H#5/,F?KLz'i;>%XT hiy=A*' qoU7H2EkYT wDB V ZqGLWSHl?RzO0Sx hvP _mxlӶIY1gGfbLѵݢ,byN|(E%aEH/v,%IE!s_=OfwP;bfz*nQXg0C&`Zoa5c;vK/4v+̷ouHGkY]~:oi @Buo1Uy)չX;rQH©t+/NXRv V,ρ8(6?i4oF>EbdIJwY)>sɯ/f0JOh 't2)|c*9nPD<zxD Ue\L,BU!GӘ$zp7<"!ƫW 6tB(ivsS[?4'~m?*+\p{=>$n0'^_(|K֋% {$&{]}m2E5HC_F0aVZ t 1g0b!x-}K+I!u_rh;nt+āDYwԲx^}&H()i,fOZ{^9l3*n[O>0W96x%ix{{Y؄57u ^ϛD_ݕFyk+>% 5 $bݲJ"hu(pgN~{h! Qu*,g4jLG O>8Şc2*L H.2A*" eЭԕٯ⏏eV޹_WihjW`AZ$rfCVD xz#OIr lw.ZH]]?Nh a )ekϿ`t?J5<@G#U͕ԕMq,7ͥ76hN7sGP#(P!hì, PŒzg;P1Z\v<~=m#M]W񷼝Yqv 99@-+ҽ4Ǻa\"Z*2R&$_xE}A Fd<|id=]Hַ{1*6 k(o}wcypuGHhnºs~G+6T3=0a_[f)+ T/v^ ms5ץʔ&+3z}7˅ŝ&C5AD~̦po#<_Y9ɸ_(E 9PSәG+nt*SD69;߭TlgJ^Ir|*X@la1hI%ar}Rm<5u?8aT"'Z%5$ TCܳ - EU<&ɔ.CLS#![PV4txFr qu7ɛ6`ڷD3B>5;g?EEn$AGLj,u_=(4]2Mac!40}`4M@ݭ;KLjx<ֈwV35ꇛtv?E"lJdR{Gr |=_p .5nߢ_4!/&/j)R HB7>"30b*,IaVn?NcX/) s9{z$ӰB[ #_Pkz`1\2"N58ePR0C0{Q'Mڻ~7 `7ȺY?Y ͟(|hɡ&_J]ҿq$XD gr iSW~Pv1qJ;akef{oZ&G *| 5, g{0Ƀ 4hӨ 6懒ֺؑG? "YN:"h7pg9wɔv!j{#EJLC𾴒ߡ:s&,xnj זw8GGȈhvPܞ5>w;_R/%3mDSjc9W:JD!7Շ Į0'sSE"I-F7^6Oɧ^)h"X{؈ uI{oV *[+'VO9ؗ]P9pԽ^9]XI0-ߌ1)EPl[~u9\)1)P0oAEN~w1VXTaYmd완K4ݯ,XtԢ' C$hDRc: P+GCCR݌J3wvAF|VP&;L<"r,R ϟIctKy[,tgE͑Sr!ݧǑO.3Ϣ/չDO"E"=;*A2<) ŸB8xUktk"lyeV-Ca@ߗUp29e{ PEwNn6`Z^iG/1MS%ĕBwR^7c]ܟ;»|gژjS-*}Hl=s*;n<Jl [|/~gHut  *Eu)~j꥝\(ԛ`rDb}_MҪfr׌ L^G~^X4lt\QUh:/4#̪׿%)ⷿ $Iw0Gw踕'!+MD3}I|@ XX\~1O9LUIE8 Aػkܫ@Z2C3C]ź`Չ~[&X {zebC24)څ7W7xtDYwE1<+ Wvi2fkhFI&}kR$c'W+0X6+ꋩl4 ;\^plݛ Xy4Pͪ;O6M]Z1@x0쪢IM_U&g΋\⽭a16jbҶ%rWk@h?do*6M~&'C-ݽgj͗cc.1T4")aݵ,%#+q`sBg1Up$pd;)b #LXKxzHLu 00VjLoދ:>#rivbDSViBO 9~ V|aM3p*5tzY|1"mZ/ j&]zDK*? ee y ^3y) Тǣ;a ',= 2AJD|Nc1kee& %5qJ3wdPpaP-?JM;R\ rbB{7%" ꉢ9T@EP3Ƣ6gW0 wg}D 󗾩c"S՜IV*4j1j VC'^4Rsu{B-%66Օ1^ ia3Dץ7nt} o ʓd.]ow҄7f/av"C|M_9TGX`YKdTn>y^ꠜ#Ya ȬTU8&飀VخϕG%bgR‹,0JE|c=”I9X8x_ؖX:[z^]\Vؕ]]uds/7!0$tOQEZ^OdЯJNoФdlt783DDz mS?5]Fgz7Jq4O\^fmJ%_ƈ&.V"W(iͱS p1Vn؇+[0JOɳ/La^~8& .F ,4`21HF05 3pqz?h +"GECpʵ>(veiT^qҲ(oAy=fY2Cg'D*:k0P+|g-jG&z'_p'I"eL":ϱ{_]rW=>!U4zlF\06'< G NԐLKNSF^ vEÜ_=ه1,hGL0Nq*f5<~P8>%UC, H`jœhT'q[p&oyPu#:!+ر7n3-/vQ0MœOz6-&?5#0jW23>j(;!7v:m1k^D,D?ޡT[ˀ\Aw923%SCO/@y`)S'cHt^KabPx :6 2i.jH\BgDVMg,cL(&cK`kҐdW $w;%L'8fw?deJ=?lY7?5r0c̠+5Lj_IRRpnhw{j{s~\K +ckG$?wdWk52{54wH b U/aI? +S&ZLyݶ8MjaCr6E~ ł[aǡ۫' fB[XlMuSXN[I۩J3Gf[LB% pn^VSDb'IG.|WƟT'S8{}ik_BI QK4*`4 M{c|`](Nwi ~2nJu^`' ?6;wvu5lQn7rFOc jl{9Lѝ4ku\ۂ:]=XXl -/}<Ԗ5,bE&ޢS.Yj0bc^W!u;e|9j'X^*0[ԓ`)ځ `4 3I攕M; ֓xHoS;--q4U?F>K9R0 İ4 zcw=.[[I [D_?"MM*C*JQxt&5Jʼs'9 *4PR"~Ts] Gpl1ܩJKV? 7՗୸E8- V@%߬ʈwKZHkgZK1b~1Ƅw!iĠT:Aݴ5c ь#~'o3Cք%D&9I`j&$4,l{/b+98NBf;1ӐWP\)]>!ʽ0щ2ޘf'1r֬T6\`mC"e(PcqtnE'B!7-/l[c[cV"cTZN RI ֲFI]pIgPۦ24A#v0%H|?ͺhqBe0:p+Aeo toĠG yjU8mP qNbԛ_*2e'=u{szh:x:(#Q1;:O)YЍdTyOM[b]UN#gjdAS[5/,Oߓ|#6 *@#e#wɯIt)3z_z6Bu|ll򀽌ƞX'NꭄzI_gz 56`CfY\WAnthiq6 C@ i>BTPML>ߦnE#釜 4},6OÚ W;X^6DGdt{n/mߗ Bk?2A㒥"|h-+L6igtp눬~VSIl35uB R`[}q^d)bͮsVpk[ V`r:Blc0n-ڔi[V$џ?}L7;!T B\I_CT "D@PEnGps/v܈,247%c(̨|6z ga)UaLѤrTmg*z9{+o[# q@fP˵am<:ؕiBSs."VsnrۮcH?z;^@dov$ǔM M;g4Tx eIvHl3m>Hv*9jFO oKܡ1!)Q&`ѣCF( lO$.HH碃e2 ji40?X e۩k9*_:\q?:c!&\qy`Z ӂq>;nRfH4M%*=9>!UdTf#Re'ure0C ޞd[h$ D |t^KA fZ,ʽ#GZ0ӔEH'HH| [W _{Focv;1mU7T{iXpbtm7oSF:r4s9zE)o9W=mq|R3,dyV|_vޯ R3֤*Q0S\ cu:(2SzȑiH[:aq&X0qW T}sox%V9Q^ajfɺxp*xZv zڢ (7KKϐSK3~?F#cUs&̧Jz\NUf^ -VJyqhHv^y1Ey,U%BAk}NzmĆxe=f }"<7߻].?dP3ej{Em~hĥXUDz+PW=8 79MP!^5XknT?R[ Aku3lAۉG\ _&E o"!N̳TH !ph kn uF\nz)~ꀣv"k?j&]K=5rS,$rJPUV4 0F1VhblskQIP3q6Ś-c*yJߠOw"hxFJ֍?:D;u̧o;<J4 ~lFV:uT@A6űSdP= |m|чjIWZ1& pv@hfzrK+^)៴y0R6EJ+؀I\b3Yaf^D[;NzTb%4PiFn$"b#,"ԊK5fGF&5ըU4,OÐ3S)LqaӍ/RpC])NvA"6 N-mcL;rU06jL@1\ySC뤛y穖.ɭ\%n3pARHle͔jƃ֊?4p}B v{ApiZmPL*sY.u`ҾY_/?@@b ;ؽB@l\uQ*"ۧP0TZ5T 6'("#Jsk8 0',Xk~?G6i$~C{ ޼7rE!|Hj^0-%p`XaVWRq6IxQN=Лg=uLN( f=g.a\g:# Yu盱HxO?)iF/jj,*OKjQ}|IfQpjRHUQ3GTՇ$46;c0#ͦXp A@vgҪXW; Rc?s3uuOI@^ԝ&xD{=ZMT Ȭb1XnHnqym} )Q$<5y  \>a\=+1=bW~z)w}@I$|a0 fKx52}`['^$(N8[y(S n6OݩEr/v-!ĢׁhoY"-LX*2(ϗE!kϳf|jT L^N8]E H5GvIVNeђE2 2q萦&SB_W𵕿$ĝ(סgq<x9_y=#K~CIF;!?㽠{(=pOc5' `d߳Nv s;k @#+Tu*o|ȴ2R~㫅WpGL:5DTV߿\7]n@q[)ʍ1kTd{&RV?3T\g0w!/bÚvX @x)+exuveԂk44V@Q.frq9xBRV]tx]$ȱ,ZmuQ$K$5Ќb-ot qR_lV:+ ecc) p oZYe-ˑM?gh"=F c7pcrqQ1s.&BT(Yq2g=QJT],gR?5ґ=0l~EP7萰fc #c/M&i[݌) Yr(ou,#@e\N\źHp;,xD֤&KyKVSBDR^orSl"3e&~(,9ɨ=dP}̈‑⏦.L2=Ȧܚ}p *E:34d|+1Dhzt˿M3[q\§I#j'o[ AzyrLMժ~ޢĎ8?7C4+ S oQ 䎽[t 8!fTZz@y摎Q?6Fq0w S)? )ƾ &Q">4/Î)dw@0byz,  ]ڹ4}F\'SDZsHjxO e'7:eUCį 0L4\P ~F 6JF[ u&kx.(\N}e \@j 3Tqe_w_~$nc9bueaOWul0@[b)I@6~8~nxRx ocQm7W$alvNCDnaMYXI3Y mCW9_.=mm_IMrEB5A]-` %H٭q=S'^x!5A, S.," TϷkSswp'ۉݦiպ\S&$6?aI*&3lP]dJnj曕>2=Tr APdcǬ>vv >Ik妶CBCݰ6&M[gC_9!QuKŲ/FAQj@{${3tdnǾ +6 6MU_t9b\,Nk]`=d%lJp7$UzuRR3EA>ocm:s"puZrل:7w;!dLϻ&o=8׿8# HҲJ]3DWwrHEi:sL IN+`0(O+y*M^iށ'KF?pG*|)pm ({μ >e֪"SrVI:S**o{JLe&0+bJSG?p1 8.ˎNtsKo V}*1l4SShf7pIӿ6浻2jEq԰DvIw!fܥp@(b놁P,n4uSԮ{DpH4M3)V*J\䰧c*F?z 2"V5I/>W n[yL ȻPiLt{`FH3AS|+ n܋Aoو@nh*} `K>P#43xY1LD◫o])9|#r὜oR>E SHP*}i($x;[,0eFPʄ򔻅.t3PL`pwrǦj!6;یodRY.Mj)+vg)vƛu㮃5=恖9gr:,b:"WKSU񫜢WdsJ~whfA~,q` O˦f'PabMŵ;d~4788c׭HA|ZZ(m$ `;>s [bKf}Hibbp^G z6Wj(N'ɺ4FBϹzpBym]]һh/lN|U##vtb(4d}`a7La.(x4QrÜB]em-MN}{fcnv^ .ѯ36,Tf~&u5u ؛/QB_m (ty=N~yXjwpUap&4b-XpɪY'@ MY4`!lͯzvWcXlI] p4E6w}HIK4wx("VG9⊢G`)VI^ޟecs,SR!]HRD5Wmq.z5́*LCaZ['hzcr56^(NdW> c#%:͡h`b7\[֫SMI*U/PUq@-ƅOҰ$@F:>7M|F uj¿ZW -S6~T=IZ_{cBpcoee4S$N\imr!{Gwc1,9"q+`ŤDo$rlD^9Ue@WToJZ0S6c{XzV+-#g]"QjɎ>;F3l1 /q|jy` ,Tfw P<\ )rMuV~gTO8Dv^,"(.u5TWfW`p3(6\?U6Q.Jq)sUI6O'` 41trђtxRm!;wN;Ҹ%}\GFy#k h/;p3My䐂y'u`N :-yәwy BN}80tbǣPO48ߍ8"ڝ;Ti.e$MUVkIFlOGwAݲ=:v]3a4P]t3vҐ-}Apby}E^9/ʖ˂Pcvs{2rŖiO9 $tvm0*'[YLE'̠Ģ c*LV &I\&=pL m@h%/?aoLSp0u؊j-1wJ ܔl?$k(iR^:׭ 캀>x- RHS~ :wԛƋL>4هG}Iv拹UsӛD`\ĕ,3R8$'GD۫-2Ôu _;͒+-iMLDyĻzM[&WFg< p3=X&PNE6o}p(ӝh>4 ^nZ.mXGq\HlxV6  ?Q%t,v/xة!==9,(2+eHL"qo au6UNr"iXd}3S#&uH)VMڲ *Thp[QQ ^PjQ5ٸF07rczʸFXL-y穫\yZÅe!<r}{-RsԠ_,kv@9j cf.zI)1DI#Acrpلc O idMjؚ-Z}-y ԿR Pr5;#A6U77::] p+2pP&O?ڭ-OV0̱ H۳j 2vې捴-C}k8Z2+DTL,ҡ]3R{;+z wbkZd`~CNK\]ppG4i#<6S3_&.l>#9_Yw$o6R ;H{?>',w9c"\n#V 5D͖y0 MXnc҄F0C1vL R OHHB0ȶBBÁlM!@տO5;D=7 G zdG%-\Y2A66id:6;yuWک $.63ՐS6|!Ou]&7@mӫ (>[* HW xrq 1>6=9L^Y3W_VMיִ @1ḵ[<(K^4״r'\MlJ_rX+ʛxVk#~) n^)fe)}tѼķs}sY23҂#5 -M #y#Myb$6ˬI\* -^ir76ۆ1\ʷe*;@ "35k BH1# C0ϝc7cGx7*Fs6PfY5Ws,$bat]:~WL Oo+V|7m}g]GmJXe6BpWpcghB$Cl] h0dUs.q5RNL s ^x-Y,+26PS!3p3Ӡ/t`mWң`6 ՍvԪdyDL<ҥaw}/` orۇI&atn4?rcu9$tf3NO;Nym], #aMG\y4|K , 﨤'EV>r`f}E`lO0~]2"l7Z=WTQ?<[(ǂ6ׄf7:yԖS %AU$]1ҧ:> 6 !{q lB ;l';nmtq1l. 4'} EO]eœll%W7bUm&X[15)QAUZTL'ӉUԧ(" QԒkoEf>#/>bOXoG/G T:Ms2~iAM6N.ӂ^I"k`wGD.)'կd̃i6`uVUXfcvu\Ih='*pZ]--(s`\[@OߝWHCUm X`㲅'([O8kMN2MD 凟Ļw.زKqd^|9ݽ OװOyKQlʤw|c/RՃN't'.>.1/"i z\HȤIfٺt"tg/ "Uץ%/{s*'[ {1~Z'$Q;+Y ˃?͜S>@zP+(Y +f{%D^988戯C;vW/|V)#ĩ(ȢǰEn޴3~:zֱ+IvW-EE]{^ 5yЉ+qUzPwZQ*:Sؔ`OFB/8HV"|vP/ɑA\ e ߌYTUcQ;qb3{s~s*h_(ZocNX:sZƇfYvqvi5z]ZMޅћW/_`sZs]s QaaEM ^Z[p\*ntDwR^'ű'wo2lT\QB Z#?Lnk_"1 [7{ KW\ ">rV#+KUXgYp+Ŝ'*EmA7;ϽHjUkZ$<= XLJ~ F1"ǸPEyX}A/9w6Ow?dFnZ#֯c=,糧/Lub&jBK{/NWlr3^ՠ T8q+\V`68GQ6z,sVirhY0*? +; :tPދqeSo;e eטP:MW '=_/_u+T<;E {/ , {ǿ^3boo*T6F;Ce<ڳ r%\8m'IW9x;q0/q1<>SOWm(}!O>F_p%Il ȧ( C˲x#=c'Sc̕aX-Z^bpk5z\p%m*QN8n"iq3c_T:ѮL$"Wx3=5fa/ߴt<Y@A^RhtJP%A-T<ZXkQN3vLK5<*Z{'(k U&M9$?7/t ]]g{: 39vBsh_VDRtҾHt]_AHEDՁ,Q?M&B1dk*yԭw "A6v0PPuQ+ ޕΑ[t3;&, J>8!Fw1A6yG2!|;QtreUۑJpoOcgYlݠTqtѕp? @R*[uAb[Z: ze# `s`ע@ȮnYчvT E@*2\]32n\vz>4< T8`|+ ?_敹!/6S$ySs,|,;H,ւ/6bW*/G>J6da+0` Goܽ$&x&pSπd+@HC,ֶs15Y;G;{T5Aؐ7Uݚ)R蒱 ]U%)Qď6#M<ᡧO觋6PTG$|SLߓ>~):c}npƐ.nq%p ;6KW_aZ pnՑfUc.}4mB~ГVl' }A Zܽ*ι/-/\m#ǵMЪ*ޢRCӇׯR˪0A*V2a"e/4R`$GR1DXJ2}FPc<_/T2gm\)!B%9n- T|R}50@r.EI:76j[*oX)oqGձc%PQB3܄2:'H&H.[_ NF?XքKdl֓RiF@6ISK 6EzƋsņ! J۴0rv0\?zYI.`Zl&&]getlD ~8SaJ.E= ϢF$ rÎr,ʨs ͖jM<֜#oVYB7Qpm̖-Wuh]PĔ.Ğ=d ^U H="=UȟٱPқNhA4Zx*!$$Lo1~mKӷVa+R)yĸwj T%M~O=z}<9ŀ\3}R1َS)U.D^q_u{[S39uz`5)Ej H-klA0:pzȦ˖U5G p7o§#-4[A2h$aIj3ghk"$\Pp9TimI >f:-A]Z˨/n rxp P2yQfF9N1UaUh&)4!^MXPOGAi捱 X3lX=k,5r|x 7,f:dp8?~|M 2iNinM-ǫM_sfɊ㐓/l>@1B~pUwlN 92Y1~Um*sm߷Á%Qi$>Qu7d]o,,rm+ђUջBzx(K[cZv&>e{oy.@3>xՅE1%vC2UD0ӣl*t+l# WzxDw8Ԇ =5@34ޏMw/hvV߮dBua'>nP`4>:ɓ/5L72-LӮʤrcQݤr<&A.-͵52xxvӵh:> #r~0vL`=Q34SmZS-oGG[ٮЧ#( *UZB?K+yhv0hރͲ1l~Z!_Ei1V'jZK or\vJD@B="yn"M'c=LD%sLWliOW_Ɲ_#4u_Sl#8d BvIY}0QgC,a6fw#zjWd]%%@O>y}D]Dq?)XR-)|O!R.T}7r޺4C~⏡LڥP=6G3ꗖ{~SZ~c)O)Mai1'߫4aYdb釘q{3Ys)Oi&&`kw7%&.M tJb d?jLR@RW5orߝT 3d\nx tLҊ+ZJ Cg)}0ҿ/osB ?qɞRO\L' ^+6b8p'Y/y:jmUxj!xU!A)y5Ŝx7 <ܭPؾWlx <JĚi|J?(7Edڿ1x)Gݤ6vE`_Lz7!CώiR '(c,AB#'y͗Q](t\PkFklzMY Xĸ(yfۋÌ5CJQS;@jŦ'Q$ms-^J3<y?S' ˥哇k% $1֕Ɣ٦Ou+䀷@KFZ`(h,M!&g2|Wr4^4m!Pbeue8.)4DlzWZbYG;iV.w` Q.%v 18: 57׸yib#BوXo0}[u顂I\=7c7oOv+UL))cU;ҿHh}Z_;,'JW4-x-g!Y[ۅx!y)VzSor+:n,ohI@ r)t#kzh! ٤LlD;Խlx dHHc] PHc*o>ceOy&Fb֞~~Z<'vi]A jQ#4`͆I'|2K7r0_jlz1#"N U ~BB~z%L]܄ ̗6gmtcd\o{X 8j*?zƌ erAșWֆA9nA,BJ/U0+ts"bl0<%.U2$-KƳĄD1Ma\6{Ğ"[DG- ȏ'lgT2|.F0 rB%U`/s5dz jnR,}MB&Q ~HlHwӟH]+, G4}E]א|~赒pi Lao/(DVf9f-]TpMkO K5 1:vO_q]g9qʬZlgjh-cu.[h!X4}՞Jѯ =1Ѐo$hz b@ ${ȧ,`6$bN\xtgOhRnEj ONo5JxBRxrȆR-`=}k͇N^Lj}ui?®8mvm4լJAFtZRNivI ?ncє8]t*G]w\L9q]ҝ o@s\^|a{\̰h]ܦy^yOM˾8bEȌYz5gg}QB%L Y-6Xm٫Lgkr[AVU`o0G%Rxk&kyw,"BqDǚoUqȜTX kb?QVm:S'Qtrc"Osу*Ac̀)tn F.sS#.fOb{(<23Bncfh4v`=4@CSJŽ5*H"3$2[ڔן>S[ nE~ـQ hJtAᙓwamܽIOѩU**1o iµʹ/a^{!b/ 9!?eD8`ԅdZQI_IuWy*wj_! 1@L~hi2f'ZG$-YpMe!5OȄe>.-䡐8e"i賡q)=nfi7\FE9 3#ڳKKn>}XWWd}]wPV[>קk54WtR9J l?O>@2};o1՘Xc;ݦeD)ԧqT}P"?9K&X10S}&IJ^3ٮs&4!XTyLJ)$w,[!- f+EPL5REzyʥMWbMLm`cMZ#.,bT6qXO/_dN䆻KJ/C?4e˻gp4Buǀ -C(p8 vEv'uIQ_W E6G+ ,@AA92u<$L7$*`>9 $%G^AIKŏ O10Kpq[&T vcP!`:MVwÔzu {5$}Xҭ}H^]i<+Ρ HRjCel#_J0xwl>9Iw~&1/!A^x[4;x0Ș:1gRm?AFɄꙌon(5+ó!y'nBmJVfr]T &n7J)7bqh\gZ3dfbLQD@CC9X5.1O!3l"BAV`7? @KrEx܌ x]څGf_ k49=N74FgKh_,W( ?Ħ4ߦӾTF>=SMQGV!Aծ.49aC7lz'Ihy a<2ͩX9?*}xOIX{Ԓ V7;O?Ȉ=y1ǑB{U,p1ߡlMp)ZB1KzHo1bQPL=m'cQ'0i&oQOW2Jq0M 3;~vEf1<-esD9=e' OaNӿ$n`<,{qw* 4Sb⥷=CXS[-Ɗ',αFY7q_v|an3&QVvf҈!!v**CJG[1MKsT3-BhY@E>L-ukL*ǚ|tWt]"pkx `.:Y/wd[7YxWfl,w{w >]0jEV|q=66&ʂTv?˾GSi,k(Üd#3^ƣ,ps| ~^$彖JO#i[-נ` 8/Q&3PGD'H X?\d־@4L(&H+mDC+yi>s2YA>K%'HxAv jT\x džk#*<Ǎ&־0|~,,ϚZ5$xD rl?8[ rCS`ӕJ"_JsNAC4A#FwWƎT;%liz:Oe ȸ YwJ#m-ZXAc<^?Y !ң< Ӂդ-M-χJD'{KwF=Ths"S^#w֗m#3,"|,T0VMW &bH܃$)"L n4` {0i8?߸`^ȭ` AÆ>craz!Ią-ˠq ?+\*ﶨA=͂-.g^I&' .) ]t-y&UHS˓CqUDplQX2$Ł]_S6Yu1!~Ql;a.0 c'1+_*;EoȂr? 8 m_1:`~?S^n6ʣtϡ $f3}8>SFV+;ys;7enVR%Kc}ێ/i79ck Kq z`|t? P%뻄*C?t~hu *dچ{FfVS ;>bIU cG/xfBIvVF\ \ qą=l Uܿ8|˴'R>wu"Wk&|VVAx], #c6fd/_^A }gPzr <fz2R;/H“"A7~oɤIi7o, K,ϽVJ*KacC6Sͮ!^|64)vq[Ca2=Js0Iߛӧ@k RNZ :\{_PhO`{һũ}G*`_M9֔󓚞HgŎģ >[3C A^u&U s» ʣ۶qWG7.:6(9<JhYr^T&1@omﲽxBuI1&9mҲ uQAGJ(~xVéKhX&Ayz١'( O~ؙLpOVM緌|K Fu&a9]mVS)a!Wl~S:q'`o"cLzJtӼZ4{=ׄHO]F{x*Ui*Ï0f!'\~0T.PGul@g%[J/#Zh-,-p壓vTRE亱T ` 8omQMKqJvx^qR3g`$(':zۤ`,8Fp Lk̄'trV3Rul-} p;O(5\x'u(w7Y`OڕM|I-ҵa T퐙NAcg2{jJ8AL-SYZ"mn-6X-ɲ,QE6FʌF2*^ؙ:c=*DnkCwxH9d?dvHR+j }bT[ϼ,q#ʆgՒZݘ,S眿ځgfgwQ; Fh(,AQ`QZ85tһ yԑьv2;B+!MMڬ, p`ʛKўLp9薸Ϛ{ʋ;4m/fs4xMx P{&}SSTpE}}>x=*rK1]U D *4o-o)BӊmFC_$E빈x4FQ>YFE06B q$ 6{z{JK շjUiMI1Ƙʘ[+r+T\x^2L ݔ jl"6ɗƠ c(\+e5ތSXкaM]{[1 4^FwIyru C?ŕX 5:˂z3evY Ȼh0T  'aLeLo0S*hAdb!E+  ]i_ xMx^Cp4A+Tf/w\ r<hә7>ըCZE.Lh*SAC-&)7:v`92mAFyvkl3 $wDzuҨFRN}@=_SWGͰ Q1SjQ#gAgr,1P1`;N4̶,慰5e- !(6 O,Cҁۯ=S^O xBRsqBk"v݁ y[hgh*"Y51ci E+9rf"o,?%֬t|i8ŦF4iW7slRx?$5e&oqO8s0E֪UEY.Y:c˕x}w˹ /$),bdF?QB*3]2^"I$?,e"tЈt/L@gǟw2MG#p }ScAw+-c ngEKIOmb\f $Zԏ%5KpJTG>hY$rpK>}*ƶɉ<[ >lzw5:+uNtˮ7%= A vVBT%җ "HA!aVQW g!gRoB|ǽK.QA 7ێ'\awo鬇|*ESA8!* Dɝe\, 1OIMz-=BZ;ܟzSU@K )T 6lhjK!}$ 3MK$4N/@:rE}a޻-@Jh REua1tL wކyezy@8/"d%%ȑhWf)BMds.v349ˤ3o⻉p*r`iLV1q'5= gpn]'7*o텵Hx$tP;wWVz$ icAV V)x* (coKݡ4"xkW7{׌uLCJOb$83rM9ǣL+q6Hh9k?>o-$5w>z:ăP~͐W<ߞg"T8 1cay8 9:(u%bV7cѻo$n87I卷W + >,X_9ۮ y[$%|RL9XyRax#S` 6Z9Z)e i$Qٴq4S(ugkw Ɵ>hVonA|zS ͤVP!k 讎"_ cPăsNBK1]gnܽrL6A!7k4Ure#ZV@ʆғzb\]ϹP"! =w"Vi߆c6*9ؤ֐KLF8 E^\ʧ(v6"5<^q,J4 #(CĭmCud ѫu &:g6~92}NpɊ>(Fzv+LF<9b@ĞAǀ[_bt:iJG鲛ڱQ0yPS^{Mct Bw]-׋H_eXkc/@X*1}|AVʝ>̓8>IE;!{":?1XfT!뒞`ߩX;7a5gvjϙ NB=k#c͸Z+ou)-8F:#Nx1kMiNBՠj&%yƺB7B5(Hҳ,p}ArJ5ꥳoՈc/6$c: UvD(^:AFe]S8䤨boQu/~5\-+ P6o>%gy~+ϔ|tsq~dϩ$A3B"sxwG);%{v.S|]tk}F@cܓFzI](1UU;ᄐ eiuDyNc~Fw+-$o=r $w*aa-nXYs[k0܌;V<]_%K5àչQ ?!ّކhuɅe6a($Mȸz]Jy]'4i\I=TޙufExYK3ǤmzU;3Hfv5(4tq6-)+,xo4Rr'i&Gm2r2ZC"Cݪ<25TBZhٶjy(+^,X?ȗKnbcqߣF[O 24hNid~  #Qכ@/ ˬJeŨ M%_5=kj M;L=q|Y n ]VҔFW "jmTKC4Uً_4d[&eS 7\ΝZ~I☍I'Dnύ9 Z`[KAN'8OCY{=!*4@q.jh:g{sJ\!.xH?5!봞4W,(b,6c9@oՅ4GLg! f0-`p Z;ʨ@'($p᝭HW̞fю3Pត9HL8*l brUQW:esNV̇ck&r7MϾjӱ_|t-M[`Xu:ҸCSIfySNf~!X렫 &"n vuHgD?E 2dML ELpV.󪠑SZֈq KWzxköQZ3,Jilא, 0M5KE~9JgfQuZ,ݮ I|^7=Τ`CEO聃^Tx\ɾUSCU0%gC D~ :+ ڊsR^:Agn/5Y7vAnV4g6>+NATxfZ!Qu]($FR/B0Y,Zy׈&؂\8%0 Cc(*(*wW$Z|1mUVh0g&ucE5&oMG<,FƹSJ2zE,pO:>#yz€Guq5 Ԏ7#i&\wBv+) FƐs&m5twQZ^D+եUV~?Ȑxpt#ϲ Y,&U6lwP2Z,4a51W)'IO3ڊӗbJP*Kp8o,6- ƏFO4u4uoy迺%ZDŎ0Oy"uɻ! 傭 m+;o!cTϻ3$_gvNjNm,J M=U(TUȢD;IϪ#@gλoT.7A4C>G̜ XXuB27 Nt";6 $dfMF))tEY(͛6HW؅ǡ4;] H7ɜ ,Q]@M'Qn 糍'"kY(*jF~e NיN5Ji2 -6fbT*"~ "cWiEB?S_ Qݟ+vg):igيay&a>󌞒mMY bͼ\R]aF=%e,:4&.%g@bk6VL=!Tکi^4]C1%VFCp;"q42ˠhKFMXAx|0u"z '+G|_ 6hw!T\˹bEz1- şsw r֪c&G%h~w5Ѧ0!-p \UomKz 'L3$G^+9>l 4dpMҍ F2ߴv+]=_1EQ6F.tU"z#8 TtT A[q4hDݷ\#kU_kт)U+3xeO۞O%樎a+\@\0K? =em^H "xS =G!WD6*zX 3F9([ɀ}bQlIN>[D(PsѢTng(KaO"߂f_guhx2lQBgVs>߼N_k-xuAt_D&J6STt߀xNK}-(9zw弁X&!ߤ 7`uFz/Ɉ\GR SJbM:oÙ"Tm@dMV"c'8!+[ڀAfKj5; +OUh"SAWM`Ɣ = ͧ]*O gPgөT9 CeujV#yAZw#%2dV=6f#@gܩ𓳎.PQe,{]3Q8%{g W:'8z$HYӐE6Q ppPPOfvFwuwU=wʸ#}sh'S*EM6c7"OT7m$L{ӟwafk2$d`"8"[%? >t|.< /|3>g0 ނ*>$rƬGJaQ)3̇5]ioL~L]ʿE^5bÚj$ = rG_&f[&pM7OWcc[~“|T\lHkE9O)D~[LqʼJ~tOPk2T4=;ՊG2)y344vt' IUd:@;Y,wN MdsO #*lzMXoW)% 9-iĂQhixHOΝf J)M kђqʵ٦B Τ `ajќbV)!(!'SCXuϮ"VἄoZp: lG*HAOTt{ZXѱFj6EZZ_W.EwC-PuNF{k5s9x5eh(?+0;DXcҿ\~$mchhvrbu˦2T*)RE!sYi?k~{ee:z9a^˞c>1 D" y@—+Ձ^YA=J/t ,FhWhǜXyq]Ol\W\Vz>4D9G1!u\^ei4aTAL&S2dXTbӄ##ǎԬL|c &}u%%5)_gy8 .ь=T+~iP\2 "VuPRS!+m.g|Z`_Ad?xk~=MjKBw.\}[yH0avAw  CxQ^:9Hԣ"0-p8`Q~13cmG}&fHi]*[RUM13ġWxV& "ҝ.n湞arI,ImbHߘޠLD=m#)$*Hwf WJe\޴1)ñUl&CeUKNb*t}o8Zsm$(]NoAl{ ?  w5MS;Y2{Z@,1iF?<_=W}KHnz$m*0+#{(GMe}W9Npe4Vn$ީ7LEq]H h@g`/a) u*4R˳"(x}:,im_QّSϮNkJa“DS) ORVc9RR;3+n7_;[8] ݈97Mu;_ϷoOs0gf35eĂXa Un~j&gShVVdBߠ|ؽ$:gZbfg6Z hWM HR59 NG_uMзbӄm/)7m]?+{LE?y0QtA@h-1 dEX/nj U;D!;<: }t> ׎] fZfIv[2:]p;dPm}PmxJmfR'jw'"hg)r٘Qr"q T[E`jSFS. nseƤK(lk~` 8r 7!pn1:SO]KJU#tq;OyiQT",W}02j{d(a^ 5jheQ1$C;EJ 3AWp3Xe]Lȉ@sTE)K잚v|r{x.Y% a2e`,\rKK5t kh*9'4\xnrO2\WՉ[u-ޖiUi izpäV|;v< B/iG2|iY*ӻvyL ӌiq F ^pa7Gx5-`+ap`/N05ۂ08Ѫ:#!<(?-^Hv8ŽdC8/踝Rs)CWC2ֶ~I0ל _ohED9[Lٓ#";]z0ϕ9/6'qc'JeZ..#˲t5=ȃeM͈ ċ%M)־t>r(Q\VSW!%.Q;?NJ^7/MLN NFXNԹƯ1ТNU: !CT4!5+5_Nf{!WPWTwzh¼~zDĈp> p7܆,Ԃ*F<N6!#\hiѐ") 9}.̊N^paV{tۢ)Ѓ~0뙒[x {zD{<-sHX贋)tzƶy*gtl=Ćztt}~킿;h,t+E溽ӈJVNO^ \@1Xc2ZNM,wlVw_L0wPJ{Sׁ6\VC%Apҧ] H1PNDWG}# A[|A)AUl5ʷ \p%jo'I5V`/D唇0dN3bbT'Qַ af"m,"H'v [s0OPd3U;q4p.Ѿ E!\LH`I @Kc>\NG:b/ΏRL=ʑ5BZ? Hb`%Oɰu"}G(F]6zׂι4~_9 Q PɬBЧEjK*c(Ei䩻V{y:3R2[#@fjV (fIgߠu1ĺ2ڭQ[mYNDvr# @K;Ũ 4O?y8wc49BVz +n)Ÿ(OnB2&NE #¹6AYRs1}C㒽<^l]!ߤuFUd8rUR 2=话t24vep<$ᨵ2.N3\)qy B󂠳:z ;xU>yAEx0rhl`w`,o|hȨW"[+&W{Z1:_U9\%RC}신v3G+'kOJIV_Cw`UNB{r[&TŻ'p<>0Pr@VA/oI;/ ~/޿iSٲC~"3! YrpdfnPwѳXyu wisih(DўpYj7"w#M"5j.ƌOQV7;#{RԐDnlL&\᫜h[:{j+w!\ssOZ՘+tS ~{PK㹲1L AϘue^h,V#V. p-+">e<:g|Ksk+`{BC՗%oev8? %!Z9TF}jUF,*zD=kЊQHTO vC,S&Eζp`*3Pm#@Ѥۂwm-Bx)Jr蔗[VPQWY<%睗f eb:"z/s'52eΦ/@ݝXF#p<>?}|[EA?!z={!t.V,Wtԅ {ѾO 6 zBbg!Xcj$ H2l ]cyMre\ur 3f%at (\$7qUO(VVI7R@.ʥ^-8 6dbԸ{ 0_V.iԥ)!mg w6Ay/>quf|; `0g>6]252#U8J8!L"EzssϮQ.-Q =p33J#fann24nk>ciM90i 摿Ѫ2V*g#S ӹ~`ZeClsx 7XFz,Q=NhxZe\D?R*.>Ko~J6R?.Mfg{vl)]t,, sAMυn'ӌ|D0kF w6uaCI>atW*!O qmyB+o]R爮XJ#NGh9l9RRie. zZ~FCܭ#HrT,Kֹntad;b w6fԦ?* .6Moh|tH@Pqr mm;9!Vq"C vr2@ƥM; o7*RP^0t*ltfa̢+hB }z$ L0ёJNz3Ds{1nCyiȝpMo4ʏ]4{#m(-rY!©4S%]E 'Ji,3|4?(}@y:V0 i"*ck]룖/6YGz\^s-ϲ%w]`v FOq#l]t!A,`;OA@<&;L:C4$uzu"Ԃ PPO۬kɫvFaՠ1xD ') {"(b_؀;($]3þw M@6֬Mmy)d]mXH -o3ϘEў)nYnK~j\F5C@IX6Aۜ2i\@*$i 7s͆۰F6}UABNŗ~LJ$| V&lH{Os4կCJѴsxUrp Y9Vti9g*bNq9*Ą4HHh6㌊U 8.G2ͩ,pvg!PVK/l;E23_͉JxaS39*>_]߶# \Y X]$$$S?VM*:0Z/Y43pӯ `zzl]OrF֭>;-O$J+0G~pUCR]!R1ʕ>x2ga^a">M Ƈ;;go&0fڮ~?.݅zi`pIp Ia{lѯQy\Y ˋg$Ը/ GAYQ(?>C#' kYG.s(=@GO-Vq|!,*([^ƥd]QYT-gJRڴRKP`bأjPZǰ.R?UyU¬<=30;,ɿem ErnHa౑Ӷ?,|V%r) AeX£}`Rf(.fU?8- ҭ|UW^0'dPﻦnMϴ̋.PyFwsl~AzQP$\xkvCdd"LrsiĮ!!:P^m[$yo >:0jF6^x,dH6wW^j>xI?vWqHOwz՘7TkVO .WYd;[;.8ʡ b8]bBcN|` pxE:۰60D.fUV}:SA`gp3:qjMQàBCN9`Z|%G1CEQ9(,'D *Jca+#sgj B^ m ](->qZR8P^Er)/ L-dlݧ6pҮd{.F('pِG"f$ϡAW|Rpj}ȿFzERG\ݳEEk U(j.V^ JV]KsU_N2meX@јqklR  AN*ٔ!R%JTSus<5Մ:V i YJa97̀δ+٤U;~0γ|X Y9]1!}x| I~%%, v+y)'݌Zj-kWcmQ!ER%1(A䉨Yxs|fq}2>>&c|]%Gb{ff㌁x,VѪqTrXWRlLj ;lP @6` ]$048L~N<˭ 5>$x&Bxǥc#ص iFF ˀ3.YDl)8cQU'96`w *ћW-j%1tDjDŽ4KFWAIf13QC l'Ga'ݾ > U] "wPBK;`.5̙s8ƑY%^zT̚`ϟlH`- Əc puse)m űe (ڡΌ:vB'qtO!Cl6X:G&DByaW%/.1NfA<~\EzՌ C(l\}MG%M J߸ft|mI3o6o޽)%.5fb yꧾhH]}OQO{l,:81OP%j oSXi=⧁~Z>t0Eie$w 5~QYtǷWO=,)jAQ8X\o|}0_dj%wD2@M^@+gOz}k~pGO#^sڧf%ۯh7]Ȃ/zǢ=̪7̹Ijۮd*i8AĹ(%༮FqhW֣V19۴sh r#IWܿߧUD)tZ h%Re mfVG>BPe%=ƄPLS?Th١N&2C}=2M)חpv 3ץT|ǎ09T%S5_I^ dgXɃ߯{/]BCT%.%TFEɓmB@H& ae)=X3 ޸AMH5ʥp頟jZ}inGJҵ딥bÚu3Vxh~0nBVWkL4 @j& m?;WcpѠ!B{ly]%=(Z 1o9 8SC@ H;"{YCzZƛa7c\$dEyٗJ$9ۻ>&Α:$ E"S%X/H!4=cRǷL٨[ ^@UcCBrGք(<$&E<JF^?hU1L'4ͼ[4KKl,*! h\{='.;1*|]}͍ 5{U Я_pX/Ř,vI֋RtgGr4Ʃ*oZPaк m/|>1Q8" X?{@{֪6BsHqB4gVFz'Liֹv "D=lūĨk$*f.K[/8џ&zdj^1 {V>gjLˢ9i K}m⁽7U<f|y`iSJɔIrf$UB0A\4z\wʁX<I=`4;fyQrZl%iJ7:ZЛ?Pk%ZLR^P\wal5ݭMpɮs7b~ n΍–\&?&4mxyi H6K$$r<|HLcbdyf{Pɪ&L\YoJk |UQ w̶ǎ Wk ~s/Qa-EnfoNfÜ Fn7l%xcIX ?-VƸJ"}fiGpb- laybsi@K)_˷v>6?$L8V7+ĉ:gxAQa" jU^ NYڣ`6Z=*4KG3Q`v QdOmAR5tw&GcV~d⣒* ӞF)֭rv1qw@A  ,QQaBDS1p}UtW7GW""P$H #t\=MO$$iC ;^m/&Ũ YJhE N#t vєIɑ_,AV'JzLF%,G;弎gAi>* =Nm27T-C%N4Ԕb)@92{Ne1? |^:)Rs?[V*.s*G14f uC82`4\\/ڸ7nzӰg'gɝ>]uNFe?˹rN笍 f8?6Ati^8l`iy< m9^ 2ip48G9C3IF!$jⅴЫK~f-]-C ΣP ^@[hZ[P~6%+\:Fd&6.IEeu}ЋcKJ;c y#ɮnq1 :3eM߼5=P-4 >+)^^(HKb@lH԰yg%m^w:dG*PESi An5 8οo(Q{6WhɈ̹.g.G𽡆o"v"ƗMt[x봗P6*|cg$P&gt) v#s錆 ye#mЦ}sǛ:4;:1|o؝S;F˕ʌL`gYP!>WXä6@iɅKDnd=uڈ>fHgL[('=_>tܰ[^ET:Վ*z \BŌ]?~a.[\;npO\>,p7W, zl=+XpS;!LܕĤ8֭=zXDK4.aH`^\\!z\9f>"w7Þ XOIpojX(lreT xKe\y n!CHYri-rY`poKo3gX3`7=5]X8(8b+;z7T&ʫP.u >Fs/7 S~ G[X 'IͳغiJ;($8vf9`9k$Ϲw3 N϶C"|ߺD*'b.: 2jQmLCg~C3CD̉X wKVN@m/{p)3cBPUl zkׂB/Y2cݬ4e DC(hK3 Ju{XXC`zY2-Q#~;+ )B2%^?ZgZX>moڕ*9)hKR/ Ma DF9H:y~AAOhӪ3E}fQia'>%~P 6Zq$SŃ5S>&u)-׎BWݨmm?+a 7Cn 5B ҳ:e{poHd.뤢"GUΌ]EďD$O{=hԌ:{KpQIퟀdOYryM@+bFu9].:Ac00"'ۇԝ$PܜpRrMh8eS/;J:AK_8mu^hf* V8جԵueѵGgCHݖwق!%,sgD0%݊ړ^.fFչAzj}L BfnhP*tI~P٘"`˚P\hn+RH2&ƲU~N7M?_M;# %*,57V ,ĶA~u$@H ܴU%q4we I8e!IP'Iy5{6zb: !/uޔDt-WXmZF$ro#"8 b0irK^662u~X "L#M<7!(_2U@fK#i"8 ݊YaPWrտd]7SBε֪]qj3~-&H@9{` _f-duFSN#y#/{N|㻀E 4Q N.kG[Pʱ\a ,C)[i\-#:kʡ.š\\ ke$7D'd$$̰ [1MU?;DmG9+W^HYϊG*:^̬u=|!}:\ЫCmVzqƊh7fMјOoȊS_bC ӣ-Kj5vbiR@hl܉Gsfpucy(V!Uk3-V/#B`6֊R o1bRaSES[8u-jU-ZPJ|лPJuna_a +^ڎ]gA:4G)5Ik^Y3s}ZLSC+`Ny'[AЪUL48N})xwt~ ̩_FRdF#@Y_*h):ilY o6) 4&=37bbiD#3»eՌ0'c^%9=ŜQt6j_ݞc~vzs#" ^ֽ pyWIc̽'Cu+CkPfv<5Y2(ib k{= S0Nd2"/m=}~[Q`.΃DJK7XoDIp:{ƹUߧ[T!n+h⩞+LGAQRprn׏LV~tP ٪ {\QR 4⭋洋 b xL@G"'$)T1lq( Ui) `L#W7K`*< (jƨetP%)<c=wnʒ+ i,ap'ի)~Ŝ."7Ma`V#ԘRCZ'U.f9bթc={.<f w33%dDX")!j>HC¦ 3Z]so  wC,NL%#)\Z2sOp0qZehQ烢g"SMj Vs&x\uS?4yz[v0= {c,ާQ/xb@:[ZhMF0'%dٌ`ӕr^%޻ԡhlƖb`1?T{OXcZ(ьV\-iTWr(>?Nt ڋs\|R4Ė8t-kzȯ_B̿Lܑ GfuM nP%*B)<ߘ?{(?x\uR QG5΀iM.h?<^~F,`J^a7]$$y8dJz!m̳9-(C${܈7OnO?4 >zUpȼ\uiH/M%;^bB䧵Va7PTƈ>ޞr{HHV'_?SO QMM3dA($wGXx PǧFn">+F-1j>HP晔ҧ XG) Na'ɘp7A_"!5,ɼo 6ipN3,hG~ȩB}KƗK!g7W-̽#Zp7Ȳ7^.LMس䢨{pET'*E醛PeZ, af^fچV WQeTܝK:33E5vMJ5g!ٷ`I;dI~҂ e&ߒsǺn G R39 _j,.DMgkѿڧ;8B" ̚v2 Vͅ#ys gQ&5䒁!bRZ~菠Qn#W30gY~i. g@w*2²1ǀt컄c~rÚIc,QYXU O}*nnN)j{9> US$*Edb'>i{3:(cϺxތ!j&p4"+0 rD&\q.&_!nXSzj ]YhPyNqI{ H)ig_^bFaځ UAp͌}"wMe,9 <`$t'li+<6 E=XP6JA(㍘=&w n[洵P0Gږ{Qe Q&Yۗ^j:::FrfϨaX18Ө&ėzXE1[*]?"f!1IM #]m*.f_o ė1Kw^T!4/-=L++ASTP" 3DP )gϺY UQexɢv,rwKţ;?qz쁁2ZWQ5JiY# 2Rv{GήT$2]l=+>ZCxZ)+kp4jݗsZ_aV$ޮr.0JlF*Aw\ YN(nw -8િ6 "R„L^H1Ρi&-G(ܚ?).ǚXalh1[_^F_*93(ľϩn8% ,rڈKl3^3,+D1JTߓ~61ₙUq=Κ|!X'Ldܓ*~q0/ujjgK۪~yŶퟔP0rR,F58~Y,ub!ݹv(w8ţʳP$.%{1dRi.D`pt YV"c;ܪȟ.RX,{bgUrkȈxQ_4/gUqd8]f Xk%Yؒ`6$)Jt[-MfH9/LL!yИE]9=D>+I?c:y2ui$DDC,87bF`Az٘DhqӬd'THp%&K-LHP37OM= 0w 3OVr/0=hQڇXWT::0k1{r6pGba|K0)\Ţ] nUo"1WkO"DžΤ>zxJvcXnR\4ZnT ڵ,@\W&ssZa2&>Wu! qާ.mBKKӍ8rBvPGR(hAӵkA="[IzIbMIMCCqi@-\{#\Z1CJt4R$p(2'I'"śʝC?\YO2FjW!|p+g/(qù"2T%IpǪ]5)B3 thaMzrc܂:d듸@&M /_arsΤD!S=%3L ;:\*<"j ;eL`VUJ>0(h/JUGNXGx'Yff$erD B^_%ũMTFFc+u {m YDղtA=ƹ"jB->RJbQ]) +-CE}3%hWv6`&uh#!ܑe>+8Zdp1QOMY(@^7g`&$ΡUNH̠Zy΄f,Iv/o"^woFI0o$Q{njd W= >"#hNvK4S#껲2j.Qx A2Tl @,Yf)%1f21Ȯ%S*HNF@ۢ &<i8?pԑf3+RYuQ"q%R*ssF1Y0 \Qf| xP`C ^cNgFىC,1K9蕳D<=|Yz]5kN 2ahѷQϤ>RX8+IanFqe6;q/Fs}6:XÏY,yOНZQL שQR(O7ߚ= .6\k튦ϻl7oۼ\ ~f@hd~ ̧č\#@OŶkQ* 9]?08u,3cr,>KtU1#St Ȏ%\^$hm₤kK1zilΈkK 2I‸u;PE_(9Xr^)V*O =O#`0ٯrTTf!ҩzTw_*RS8V6U5Z\RJK76q̀W{uPBΪxY<͉h᳘S8|˷;w4nICR 5}:r1d.34 y00l0}jHc?8eF;h;@\юO]db2~G! }V ȳgK)VkAL'S(@E>t6` \qǎ `){{ $5Mo/}ېM)tdU4ec@Al=Q -DUX:egDhP,7Mc=磠AUjA *4$u:y}*rZkK!F= Q^8p/TƣH,P%7".pŋkހМ!VhK!N7֚y 街ѸUMq}*eڔ+x>PܲkdizOWOu٣dK}eێ@g5AYE+v%?UINgK _'j[8#/5z}&f~z*#P u%g:ux}%! SǍkD\Jc !物xd|S| l !rC4JEK![̋47m>{|N hԅ= 3ߴ3c0YIvsɹ *-]P}&~p?!g8\)Eh Ob4%GoVLM\)R`Fq+gP w~wt=DzT lYFDՍ$=%a C?ƿףy 7wvw1݂M!@К>=p̯;vC H/1۱^Ey%L/ XFit,]-Bh)2z#k.7W|0o4Ef,K0{g"puyxD)5;svGzSZ~JYU{^b[}n)c o cPo7]d|~&}gHւOsm#u~ Ni2G%3 _[T!v{tؗkW1ș?/vi/kkdmB<_N.5g@w{g7o]w`ӈJ&0Oi0os 1&_v2랝˵#Sl 2|UիhӵD(z`ږ{wk"#j1.{ +9zBŚ-o_04D@.(q]PjVE^޼`2hmx YͶJ`ԁ=-kWp-yY@0==dMllCcF'IE诫c̿uUPYix=X\0BPsw,xU/6".I«@ҴkjY:Ӝv'E)/Z1#8O](x4o* lzJ ϰpXUa}Ah@GyW̛%ZR!9uΝFUu%K nhz2a'p(`dS}/#W>iݟSum1nt_LQ^|xF/+"diˢnJt w3P<AЙU)vHZ̘:2|XCz-3Ւ2'0D[ai%K`x9Xk{U,̍9ybݞ~teaurR28h=ETH5p1<;Vx*OoWx rii=V@%d'6ITIYO"Ԩ1QnuNIа;wzXz%exS326#Z>8PmӦ \tX|nĒ5ݚ^֐knN(A[C4o8٥a  +,IH=<07C \s [jЎM [Z ՕP5Ǝ]A*2B4(S5WA꺹nc?9-ZzMѸbK$ou!(6AkAK F=꧒"UwǘlsC,CHnA鞘&*ǟuB IFʙI#`$e+9\D`ƱhyQxK֞ҪL7@j +t= %i=6LYH\;s~|-iu]TE]+ie3bt{XC&#^~3x>8u±!em ' e(]oS=88ʫ[=PZ=*qr`3lmt)XDIU>UO B2]rp˟:"baQ9yņ>iXNJ*# eX= +0I~Ǿ |]'l`dJu\z8׍yS@1[>~Cdq/;02,^f;X9 I!ߛt>ә>hO"ǬdԟS!rD;αH:yP.؆`tRW2Ǘ.r_j߼w[. ӞrW:Aj'8dB,Ѭ  cHp\>®Wmz::1'@jUAb'{S,yzJWO@A2I"T^5T~?7cH_h!CC'[&1U6@Pkb>wp R ]O8]t 81T|BySp8JdjcC `1g>֦aO[Ӻ7#þԍvIvO]X;f0;aKuux\ wj=]Ag57{>̩[kye=l*rW^L3>cJ4]~i!gu$EA |bAF&rIKN?dER}VNՓ=A7MVwNSG9k638™% (:2r).HpapcJ|TA:"aƯaЫ؜YETFpꙘUeu8}$nu+r@4 Z-)sɜ\N01p| <I)V9F:EY&ÐYk6W2xFg5 tx_yٰlt>c22lwmi8b9md3 n6,t'VEZ$ }7%Rx2D<-SգCuo [NJ\6~~Cvm# [$(b̬!2@bQJwϮ2 J9^À%mn^?չz?IC 2ȃ}q,kգK{~X*9FϣZT4s@##K왃E3K]V=*(BH"_~Z:aL|elPeBC2"G/U?%s a>żnl‚"Dk^$` ǭXli8fn9[q"6-uj 4/HK;ޏE.QӦ.IOK j bM2]HA0Dz{'R-5 R(\BWv5W]ZFN+@hY^XƷ4KK* b $<I$ۉq\6hxU6ZBϷ9%z@;8aZiԻ@׉YlH+FL@F]bo.1c;YWOƗttS/=K[CGV{ǽ~ NYhʫILqg1`B˜je%Жwш^}} M}횫> /+0jT}o (`ev]-|)GE[aڐ{pO%_yprG _dzw78>]Sxo&eb_ԯ uo0dI>CӭCY;͑Hp/;/4!5,M$( X,#tf`Du_;ĘS5RkhL )s܉P03GrSl1?skB&żIHe1A3/{&mŎP VuLkRЀ2RAGh{U(qWfl!Ncl}sе/tQL|8;"C''ZȏN<<~]ws A.G(v/;e sQG|-G1/ ~ɦ2?ϩFv招^L|[6V`5(R%2ǥk4O~e:1L}RpK *EH(1js`X'OtiY gl@'9B y@L7n KڊX <ư cW>=4*t4(5sN@uf겙bI1C#w[9Z;S{M[v E_n7OVa]\b\W/qx7#4A)*&b%$'T[PQs ]-zG>A{qExO` Z<޶uGlާkU~4{|#wPu%}ī0RB>ь1x_kuNcl@U#L4i0gl-l`JT4&B!MEy"֙=Bue)Nӹ]p˜m)_ݷB !֓ՌnH(0!Hyw֟W*֟ߺ2+ǯ=M{$u-x: Z)#_]tt@1F:*Zx!E8[fLN?_\w Q#՝x@|92>%1ZaTM>I22ݞU:M%TiVev<변7 ߓ}* z^$J yi& $]+-l\wfX~ 05fhT7Cj J]geYH7M`|ZE'VHx :b 6&[;.A(O4vo$>nNDm-XHKeoݫ=3H"b6(Ђp{M mUܬ!N R1|O1G`t" /7)#Wzo R*?d梛NAϐ"zI,TtN^i&}7 /EE'0G/jl}v--=.~nAz:ZYX\܀~G^= oz@JoVȥ'[A@Ȉaq?K:upyiR;!mو-(q`y& ó%[_?;ΨOcm=-{ҙtEPl{Z23`סw;ł*"3xR-sEcT xG"1)f &+pIgiyrްYj+1WNШU9tP:5+,ٽ(^! ;WT[t+HVa$!b~sq1INR?j-7brOw hid f(l%~aJ*j%flY1fȽ {=L#r辷~dWwWm,1@g [Sp*6tG.4Q@8QLD;.7j٠/;fx6>(\brag.سӑX~7,^2YFol/r 4jSxyѹ BFӁ'4u1#fJ؛$n ^g> {ZSn߻"o Fbީ:sOUf]g_} +>L^JlH\A7(`jኔz\ `ނ;M2X"e,6WJj[XT7JK od}_VNzmX 2ߍ=sXFB YX (~]%= Zu%ַ\DhHwZjZޠ5Kt]D+hsr=!x(_,=LZz¯|0])98E}JfuoRIXjbVa'TCNDKP\~Q4LkY>h'lū遟4:w^,TJXz<=||C"Ӵs\BRgOp)A[vӧ1g+Cq 끾X|rM '?X: yR|Sitk7QtSkRmA l0v8#[^*]&JKMGGob1DeeFBUq k?{،! /zg!tbyxGPRR즿mKRL_YWG[7KF6-y]cfbp qS3dXYG$yxoڸýxSx HO|v(ؗpYF]jI"3@!D6I޺ ݂'PE;-Gh/v0,3rviEҶ2O+9'#KF 5 ,kfZ.DM"{#Qavͫ ڄ7^\9rkZy ( i+b[Q;,P$ L+ݙ'ASO{dP3lʨLsp.1~|MZϭJ̿͸s3,c9J[*H51KWH>5A/&lu8p׻oG_,cC z2+761yԡd a#mXa&ǮeVR=@S+nhxU{!vqkkt3W `#Cӊj8ХfJv:hEk\MH*a+?ķEzƴi0"7 uG;(D/0SAS~-g{Ǿ^LRgf`{b6_!EieNՇ3ܲsz-whu o *~Zn$E]8(Y,?f_5>HjkP\4384?5Yq"=X@`sFͻ+- yGq3яƩ}>OĘL ^=CL}p$rsH>:=qcjH |0_*7oڑn(tPBr0f#g=\p/\H G[V ,(.PrH@o??3z"&,L8GKw2:xGU;Rϩ7_rbXݞ YZWNB!,KL-p_'>Ocsȃe@C<b|^I64xSU׊7yԚi -ic)~| [rn6HP"Z2mu SRqЭDwPFV2@A?Dm_Xl+*?= VjV*~x TxR\P|Ezˇr 63ӧqirDVMk Q7EҪ5+VIwR֒)X@Oj"Ջ"_D`tPfLY3O["X\f#%:ѹvrfFɍ6NMTG$.&6EɔB{ίW{1 |?mm:t6DpIih$ǭξsiiV5S4å(cdǟ։ڨ[=<uΌ@;-y;ᣬm 69C_59vSZ*YB78tO# Hz#C;//G喠,_nTKmğ&m[ټ}e* b ;;c8tRc%yp#u^IWE)nptA %X$VuG/p=̞".`9z{]`Y)؛)ӁNFHF = f@0~sOuSվ=E&Xm&+ûN> ܪe&2AslGRec$!sӚ>#܁Di '}qQ1{GstQY*w)Sf×J]Õ%\"؟1=si{WbQY\>4웑4gyHG(: Dzk|]%M_g@:~ s"2ϒT|#et ǹRd y 9(Db-y[-#uF o!6"&7޷\V]LQ23:c `Q: (H*<PAٛݕ7v."9= }Ç&A/'s0/xRh8 # vLK.UTñ1!C΁0Ņ,T6k1up"ϸ&F<+ڹ"PcE#-(keL?-sԵP$Iuچe0IP"LĆ叼 |8hj U{{nt61PX ѥXaϡ Y%& g';ˏS hTwi.THdb^c>9Cv0N|q<{Gٻ# LPKOM{wbfŝ/KuX^f-w7Û%1爅g+ J;BI3yUdZC{/2}MʵB; C1m1q#jG)uu#(6LHO@ dψb P9AV?jԹPA^F p;B~~FUj^R=jӲ*"ȹdB_6ڵY>(-+k <!vM&OXj.3jW#5Q ~%<몚TKƖC { a7LP:&5WG’f4~^y9.f4 f MȐ{}} j9j9;zfxһ<)j~hQ:=fˁhg'gGjX.&(9vj$8~ѓ b>?5s턳,- ]iSu|n6y}9J#/ ͼZCݵG&Jg EG[f e؋K͙b7)Z}S5JU ˽vM%O'C9/]l :: 9Xv- oa(5DKi sq'ϯ)@WBf^{t?}F¿Q60,Ь-!& PCο?9Û\N7U;Nr8/|gvEkZND =}%)s#LT!z^yR[|-j֋z-e LV4}Qd+ׇ}uZ"lʤbq ӇaELC";1zyy(H<֖)R& {kF ;O4V bvaDO@ [Gu磔>TQȅl&;teq>yn6ަ:k :S+\n׷e޶%hEj߇] !bT_|ŭԨك|qomp_SHTJ'i"X>-K}" aN ^,Ny}0}j$r]lj6tXFC@ulnap/BnvƀKumQD_ (H{-8%HTp&CsK>Gf HbǓAh (PmwzRMϡ A,6xb!m[āy坒+K@gv3I(,\VJU*EʄlS]vPQIJ\'PY:фla  WgSɋVpb YN')kP74[(Ü.LN"RIX&[Sih+b%/47b(KPH燆ǺTgGuSy 3[j"ugLNk~3錺'YX+-"!*wEAĒ[s0fϞRorV~)ehnXz hEbĚ(݇ysYT)/ݜi/.A\c?Beh옅t7hP}˫TUX➕y8bݾH$[مJyΚl} # DiZ&j67y~a|( -%ɸ ~H /TcY^R\֐ b:r)֣^"VKLm2(V9Z%3fMIѓZ )h׷Bv+dTpw2Y`p̺W6g8nBGT {x{VeEf VǑLqN*ߡ^֚}noE (;. Sw;򱀽-C4mh 6?Z0Oi^GǛDv{3HlMGo4´ g/͙q7ՙ( t8'Yצi)165 5OOVmP |T; Bq#؟P6Lň[UAA+X:+侞:a6Ap *ZK0]6*_i4 j0AU<)$4K߀\ZU\ 1]p>1FtBA΁k ֪6.%픁h=8d4PR|)-SO-u .Y5 #U So:śn{gh/_]F-t84) ~9pDM'*/g \=f1P_#Tz,H`Zk|Dh BB@ R?Vd)帰uF &VZzrA~l7Pi98SBNUL1rj< OTtC 㰃K8$;qLE h lF=sCȩKt|\- Ĺ{~fGۦl/ǹcp L䍝OA[X,#?D6,R7H-ݪ͛et0VHlg9cTXcTOMR5BC<dNkmtkt"]DS?| pJ; nx6+N 9W%m)ۘs5M)2TůPn EM[~a3e@:ԃߛQ]]t!8L٥*(ӵ:bHS=5aB9?/ 1aңFc-zEcg<;g4 8TQY9`@L+&ZqF5*pKH# 4$t?jelmzmC;hbV[d=>L8ݨ*&ǦDw||" Dy>F9tC5 :SkoȈ%:nVV]e\ъ { kUcѮ%>@eQP+,/,)`Nm,g4xlͥ*JOՑM*lKԝJGy:S#_KA5ASć)4)"Å+xcUCȬ6]SZ!*7CqRk,5 @ ㇚O$Hfv ~&m2\M/)RܪJ U(t%tY*gM 4׈Na5Ԅzʳ8kZ&'Y+.cjd:4Vi:u8u x^}IREW?"xb@9* vmŝwۧHg5~De9BC5#wy[\#R=\h961FBep @pj>Eg+?QU>dPֶ3B>A QXQ+2@ɷ&:a7 uzls[3$B<5X,ic[#*Eus_X)%1RONvO9`>xO9sYWnrmP`[hԟӞOZ!\V&] @:mD6)OxQ={h<qq(MI© IL kc5Ay+g}56 \j/"d]=&-Qj!p&4\8 xutEܠvM2fSzϝgr/_owRwN~ ̿]$S+NSa<}_b&_3z`3"_f&e)+ #`Uqm.\1X+/mUm @w !]==*i*^i|$IqVIT"@F 6qB)Y;^Ж>m[o3qQ$u8~o{Me$9ءoT`/p'tv۳]3)0CY=Ga%KM2l<O`@ OQj^sjͲYmߕRL&f(g3>$ Ѱ 4st_w' nbZ}oaԫjFcYBo]Sp^\"\1+FrɿOujݤN8nԈҭ3NzNf'D/D~׀Hв>MT {ߛ54xM㠖d&R0Me@kpNZJSP#Rvr3_Y2+ʧE5hcg]9x!L8T*M89qtC}5U~2Vq|٤yg 4^v>Cskv; ['\+WCOIwC^ݒTWf&Zy::b=mHap|9JI"9:<3c5vGO봆)wU/a0jH/@K`\/3̽VvQh,ıaBVsV4+ Y|$)ޤH"H"%O#+tdP㐙e::2?N(nTF L &˜ qҡeys_,aO:Zu@B k~%;5$*n5MZꆜX80&8%)h:СCKAd&/Н HwBMeta+)y0W7f~ ?gK/2΂  HBF(:1%)@wQn5>B'5U iHBQ~y^^}6n.&=z[,~R26G=Hjo6 a/' s9g8^ۅ y>s{ ;.yP wѲOHu#dy^ |?Vɍ)ՀVQ`&b]4J-P5@6wDL? %Kx f}7Տ뗹#LE? ʐ@H䶎٦p*NDڤBw컩ǫ(\\ܿY/#wd-ղ@v R륢^@HI$>sXWێ.!SfM7r&Aȥ1 ?v(&@)J AK{sOn7IqXn/#(Cj0~6=JojBl(qj&7Pbޫ}@0/dyW5_}C}U3e&'!BLswXYPG`>m4ԬBͥ21Gs* %kaM2T?SOlh9 ;=8ľCN\DS(楬I=jQ՗OcL`ՠoLƻ-%YAgH.O_cnvhc0-w*T'@Lۺ *)JVƤF>FC:+}FԯN4:̻Gbgm}`YD0*Lv6ac6l x*3iTSDQ}/m f]NjHi. a` K{)?ofŔ^cT~)a)byOÏqqhl \…a-9+p$AˈawI˰}9a} Z 5OF1\ }kgLGh(,HToGs8ЅX U6` ѩY~a}zӸ?y]5(uu?U؜A+Y~ !$)chc,UOJJ1)P ]# #TXUa&nnM߫G=>K",?Nǟ2(,[+Xx 9@" xC`}fBst,50 F,C[cRL͇AIJ>#匋*5dj8d[g  ߮ŝ-BM>wC!+QO|[T̮kTY j#$Ο&sB->ߵhV.Np8~Bcd0~ ,1EVEQ 6z$[dT(gf)BqJp^j.^]I5o=.vuw2-p7}i.YwIͣn7&x# 6P ^zz @,&`P?#(ϢɔD矏a$8>AWS:V(j !QR ΰ0mxVH1)/mȯ̦U70SQhŮ#5$&wN&"3)_:JZy@{$0پaW!<3V*t1L;߼L^, dd̡.;fWfB, 3su=%u23n4gm]nT yMws)zh2-i?V`ءRY(di]V\ n[<bNDbh!bMpLZke(rfB9K=1Bx"@=GkmϒA+tȷɹmbDZFk Wb IR|*iQfu̮6PfA{&; H1O~_g[A J6g*@y'fHRWRs7^}4]dl.3G8h]; ߋQGp4Ӑy9%%Ewǖ)233\ >p03"ԗ8D$>ζԨ7a}*Tm"ϣM--w}B{gu!Xm`JsTE۪1ȱhj[RӖbj6o o;#*rR$yf"]&$"vۼL怈v'q*zmb@WZu) 4µ[W~DtUMkoNp 鼋nKjM$YU$ŇtN<;PY:˞JMt]yXEIߤQ m[rwuY5TKLEMGN}Kp*^_5栎hԄZ@} ȫq&.}014)՝C`fN)` WI"JmDSalxTssjؐ6|Xxw/9|ߡԜex#^FcnicZ |ܧ'$[zP0JJ}U$ e~# W$I!\!#_'BiJOJ 3a30Κ< B}ae5P"Ⱦ"IdxAW ~Bl pa"BiܹU@ӎH3#EŽ6iV<"ki7W MKJ{C$F`-[|j ãؖF=T%1IKkSq`Y(myp}n@F2H^Lκ_xf 1n,DJ`կw=0*C)8TC=o/a!gWuASuKqvo} 7)cx+k/KW4-4Em exŢת7kExnYdf,jO:sR >IH}@L(v4pmN$7E蕂'9^>`;@`bn;K{o~xG$ B/[8լ܀үnrr ߤM]#Ga,¦TOO<- a\&֌mAѱQߪ}3*""P@c/2npjc *ffLdmiot,EC1Jkxht.3ϧyuz=ҡYԐECu$făq{#OVmT* GZ7P[poSw-B1F)f_#ߞ>c7 `7Jƻ?*ԌStOy=G V֝PJԛ.k@ U)P_]r Vjw.q AXBq81a D1!-ɐ~:u F#ژRNlutY9 lV|DnOӨg"ǷhzrhB0&W*v uN'gBza\ p.X-s+dzfӪvmmr;W7aJ^wu{>3' m4?Civ]skOwr筺)CVK2e9)j-m(%: G 6B9& =CMY"~t#>O^J}s>'{!Vs R V=jV!"vDFa< ,o#2LTZs[lG֘e"2eONOK|al~1L%$-/YDӬEp;+l_%s-۵ʟEPĝuVw(kU؞*PBzv^xL!b]k=9ҙ=[.FL4 l~DykK3X&Ό^v?Qlڬ(ɕǕJRPj@厖N+3ϝir+65"bjRMv2c 1!iGm5znoM1A̕5+1i}pb5(,Q0%Tyӥ{5:=;R ]L y/a~=ŝoHx ۵O=N(X t63p'NUy c zUc?tN4ȗlҞx x4d7\cWaVD㪺:)D.b/i!j̙2hU1:O$u9i*EP)νKu584MmДȨ',*W!5rnDnutU'دM9؟²JT6߼#-΀:pDH*3JԍQ ZvNb9.g86āl {8VePI6<[fDw~ q~:d`ѵZZ^o""00C8`'+i{X]GvSj9d0 λYE!ǘ[L]¹E j2࿐奟s"e֋UBJ- φ(q2,:7+Y@=ӱ$X)I jax&Tr!f @ W@cU{?>>?)..N>MkNYC)˅dSnc~}8- qNͯwm:Tl̋Ayb6y_}| vKЍr!M}YKaf r">PnjtFA}dIsoDМ[(1-ec'ue5+@Ҩq{yjp^VO&UyTقH6TU:LO2)Ș+݌[ hڿb6n8b}|"gWS,jUL0Z8z5bHF'#ʹ>RE}F.svwm?Em$y $ F$keSl ~ɹQz|JZpjS0;:jzY%d")P{0|9g{ A:>[p*6{ rn[^;Ǧv<ʛ%mTnM Nd{4ZY^QMv*25#졎Z<KakUåˠ pko\RQAt bO,wPS4r==֝y4Qk2vTJ8w^WrOfQr /zt 8m"E\Q .1 5(Ay *ًBKE߲P{A/dMr98ymkN;qq[ȔbHL>r[Êʿ67HZN>C"97Kw"O|ӊ/l 44M7o]zpeLFV ȹt涄nj "'ᮟL9;vuu.=+cu,*XK}%H/j5:~kv :nO */$:xryRCDL=䮪AgV1}# PZ:#=&%hd]2aWs9BrEFkcG雦YW Ӭk]7րEѱKi`UkrKUmiW8+ մ1ahH[vE8MWZIA FU<VHVZ2Ac3GjC)o:U/9Or!ĕKYP`VH),]ͣe}~X Wy~% CӶ@Gu-[Yz60 :5DI;K-/Z1uU?2lӝH e4X >}QK?T~M\LV >~5CA|qZUZ4>W6ZJbSD0gRC=h&cg8Q[Iri ]$EXZ0p#.֒8Dhzg" Yz30 zb!eM%Z;ϙJ5ݢ-\+/;6K`NB'4Fm!_ kkF L w2sqU:yj9ab&Xڥl,k퓾jrZ`7'4(7Fc~DN`W`QmU]brP,?#d@LZriBxcFΉR++Z~zSAw,oO &l>xu.#AX\d@u|Ҡ{e!w>$sG6i/{@{9g.+^},kjިS4ŧ/1[a"R 't&z<(?锊GƲ+PK %[Ky[ 70ea_?bl6g ^7-2/Z7۞ uiJRapuz ;h\|}J/M6(~` $`a ƨ^4gL3Aa|Saڛvi(2NPB AjO8%e`F fH̥ٹD`S,R_pn ^6͵͞\Q{*bKm )8Qys @һ1h`Kv";4k"~{:`"#RG~* ,/ahj$ئVi j]\|yѸC %;! OB{fe=X} wD?V)&CF;B+YR*#I9 x&*o!qhH^< =m2SQrO†.g$\[6>Q\MB*džIZSw lٷDĄOLti?6 e6S1%෢-#:U E&_E[q)+肮ɐZٸ@3LW1*0ړ/ZU`=j$)8uDgYCW/S|98=q1UMP8Z=,^ 94 5>.Wt? DI\+X MA=RK}kS/m-&@gHYu{¾]ϑdI;I2[a"݋^UD_!k o;/\]kj@wUݔ޴.ag/ I'}AKťoŭrOn2XewM?MkWqO[wT}Hا-~(2'{\Iu@+ͨM7)F5)W>2O8Rvi "Ssn+ԛjz,̄e>Z *EP?K=a ^}[GZ:mV+%'@O5IěK}]~ƨ|{,ֽܺ}cTRJY1D&7J/3t.V`Ho1#l*,šB Ry*WO>:tv:M PLp'i8ὸ᮳ԲV 'wB9^ BͦnDy3 HV7ERHؽy(ǁP.s uga&(ʸc>B]hwHygJ[RF@k*F.\%'QԆ*w/db4i$ S Qnj388((IT8xfN]56{Vk=ޘkQ@JFX< & #RJ֌Qtu;;$s ګ]v@אjƤNgdgoPKpńf`mڵ6*"a¶3rEUMTC/G -n6W$+l8LwlL\u[es*ҲԞL̀P6HabV;KvPXk-~*'WhDm1Z@@{r@ )!!qf/}IgԪ;H,d1evD7Zi8/² hN`5 ;VHAZ 0)X aLij;-*Τ5mmfRN2Q9|䱃 zę2frAuօ5N þ2ذY>7Ո]NzgG7ǁt7ǛR fJqqwЇTmM8EobKVOz:<-cM<,iWš$VX54[uh̆p/WU#VX.T#`kSZSwGPp_ Y&g8ٹf8wykb$ oًG9f 3b2~Č  m:ӣėc^*rw]u1IУ^Y_ ñut+ &!qA p(9F--UO-풝M|Tv_"k1(am`h/Tٸ$$|XZ"FҾϊ! f_kk87rigMß~Υ,5+aLiDQg`\|RMDzc3aDKj.&&ܒ/r Q b13ˬsH+1TiEKMsSyRKElF雷ŷ.>}zAҕ]/B>RTPSTRMsr^"$k itT^(,g9* Z3Rb&.UXtGoX5CFzͧe:\(uLe v2FDbڶ ]jYB\Dtr,R=HQFW@kB'bl=0vaVY!IcUⴤL e" zZ`60?53vYT]\ioMأiVR8[Z|J3&& F<}&.eVWžвCQ0}gZj`m0]~\q5ϖ9’tXA:";Zz`3lb&yK>& ^|u0 l9k+ }Rs2~x@›Uho4=u<3(㷮"jΫ~-}i'cؘWUK8~7';%(R?!Y77HǞAٞrP~vy1(и!R v*+6>^!2Bl`$m ?t gbnz)k-B((Pۭnw |2Kt?JÜ ZwiVФ6\aGO} E *V$niķV]h2}MiK0$ͿJ%=F]QF_k@c 5DQ[`͝EP n./UR Of\3Ahohw .O!/+X ϥs:'7GP; 9Ueqkv0;Ch)խ1pD6LΔ1=?Dg̈+,kqY= U S#[pWZCv"C.3-I+%mQޡ(Nn`Ǎ&sESU5x=?`f-?p#u)*a#Մm0)T:--zh$0SlVhG#,L dA-3 Ȉhg48@$!*nI<x\e"+KA@<mp.i}'90ʚ@8l oW٬#UED aV/> Tc%Y@P#n&m{-5Ch6sd="t|n낃vLR*m\}bwdoFxώzNn@jjX{8|Zw>DzΑ9 w懳Ǚ1kp|rA$,6VbtoQL084^* d봪aD[x"?uQryr_/3G$Q ?#~"t]_`u~^ߏ~\eޘ^OiTCLƩE,}*$Hg&+i\%gy5~3d5-+,(BP62LNGHn'woA >o꣗KOi~5" po!2*_MJ_PCv~+pMծT'DG-@ $Qno\7mB@t>vTO鮝Bj ZT!Pׇ&s'AC&eډ %Z[TkB/}J>uĈ"_Yypr7byAvWV>8Kl .m8)-`}83}? ;5Epv$ %{cvh=Nr{ǔr Q@Jꚙ0㺮L`7UV*\AI,xNB0Ů[ls8X)/N[Hwi˰ J5zI|=Yً>{5S"Qaeާ7y~`A9/k^u:6^g6|-,Pw2%F CJΓk*؊gZԴY*bfD܌J0}%D] W sAsdBDm>1ۻF܉w TܨR\4IQ>ML&QCz^ Q 6`?A&w܄cRg{F 'a%qdsn MpUR m8K]AԈ Vkt4a'SVƔ}6ArGq?TH!gyԲJkw){OM'.$>P7p > "NH?jÃyVCrp"@d_?]c,`i˦ }*t?e^OZ"z żJ§UV4].5׽Gܧ[ݑ+<;Loy~#Vv5frL&j~.Q˞m]w8x07ܝrMF`6< (`9#̓ L}:~^YGv2::Z=6.wgrcH z)@_YU޼@s$~R\ DOI7eP՛剪*E؈ѧ zJ7%`sa U}*զ?F>*bR~HYNp_"wdrՁ2 |Bx%!ܫuN5e!hއ& qXE>jI~S#2[PГƕӤڽ ^z3_ۨ[$ fSQ19Nfwk4(ZO Sa4*A  -0_R0 o^BŒh"Q3r;3|g`${󊕩ekbKs}Pez< \`M&݁b_bGG_4W5Le`2 d z7nVJ^)(]\jtP }@GU9me0IɇGc`( ‹P,y<u_OL@I?ȅO*Q߲D ew uelP/#}$ Fm^FmZ甫BrMO ¶I78A˯ -X SFx<>7;Sf"ra12]DFPd,nu7*cӡn] ќN5@Sa,f2[{fc\ N]_e p  [A~sibIِ5 U45tQ)Cޝ.t0:vQ(G]6Bu^q$0w#WכxJiٲu`UU`d~t[64K*旸w𖐟g+RI<;⎁(xglC1R"mBdJj&;71%tv}w n_$f5eT [Ơ+l@ B}~"@NA͸pӖY.K/.^ɸм vWkbQ85SX8X[2iM_ڸYRcH8٧C *1zZ.CR/ܣ3SM[>'_?:in_$ZowO=D䬹Hz@ /\!zH$FlyVÑ|(Sܩ7NJ< :e tiK䧈2g.)s* de{ma7NnHڄpmKz:B51iP缅hI;>ATHBJE55/4L1CL)"{܅IdeX fa# !'9a|j0lqÞTAw݁(K+rQIFY EJ|n'>Mx``훹Mk|%?udߦnkt)t7hFKi;:s_nJ^ %kFYg%ԓ%s.? |i[39hG@KΨ]W"qw1c_ge? x̯y s#*K]LRjm8^xf(`OMkLā=iKM 4]͂Z4f[`q!l>1nYr L62Tb=~LJ[[x3 :X[=oD,]]u4w6_o5**c|]VI9YLhNed;b sT?\6꛿@?tLΧ#e+buuXƒ>L?M&mֶuf| {Sb̭;z~?6|-z|q ~_˩+\椒_ww·T DL[_>|%rN Uй⨕$Yw~`uM4r{"F$O,3mUwlԓf={d6';z5d󳰫p٫)џ(=*&݈Rsv^VvokE!\Qz*G/=YQ_`\\C p5Ie4{NyX5. J&(y vCU&o j}(A=;ڤw%H&ɾv󠂩fRD.Bùx9/p MlkFSa'E)T0,yD@}(҇3$%o9|o;'%-,x%1Qޠ *hb3FQZi8LUo#\ qg1KUW5#KU,^x[%Zy[X7G RD8t܊Dq)s(_0)>|O25P#:)PH]#CI` ]r(,U!ҍ Y3 K% _J՟BĊXu˂>3R(ɭ~yipɮLfBJ4zgzjƎ4\*x5W>b5S㵊j;c9bZt}^@8z1<77fz\6B֨[ _+FaÉDYƲ2ǽQ{d80QhIA.6K HHG}.&NbxQdVRnqʐ93LM~67d`f_']V1OjĬ)E|_1ݓybr׉.7U }18)']QrN& >-<'{|0}%n5МN:8ZE:V? k=&z=>qk穪!oT@Z"-3PwڹeFw]ttLSgꜘ/9c |M< mCM*h4@Zr>eAe55aI_isBM ֌l":&ca<wM1<0gDro#\I;IS<oDp88n9xwe{vɟ05zXgy~NAMFNT YWduzi@ٳE4VDE~n8(5 ouJ[C'>J15{6*}¿ z=E̹ rq_p^P?k0&%pof}jIϙ@^K>=vs:ji06b|\ wL@m%TSk"$q̨/Wj7/`/JcOuwcuq w*R= 4yIM9$vGmFv0j(lEeRAvxhrj^qt̢+ϕ<[Z1=sWrhf>⁶Lnڞy.:?YYtP{ j80É2RS19ë Ը.%N>Ej[N>hf7."APUFcqXӕwBh 'Z )WcHE7pL"ԧB8R?L3q9Y~쑂yUZlX $@O\ҥ۟zO|zR. EC@'FE\ Uc9e9dHW_$9 V"JϝHT-SyoZ'x:bo-eD5oBR4|ѭCG=Z+\=%ƍ4flW&l{mSONYU:>#-=ܬj()b'az.U:|])٨th#xVɸFT6m 'CY~KR$ hV!B =+8%9)m*xyVYiwjd%m@`I/ԍzokFtդA{+ V<m"wdy y֟MtF{1jML!%cX=8Zf w9@_NK@S6CWhϖ7/|ATWA:P }'8^a#O"rg : ɍ}/ u/6ي 66R7858W V*~+*rk6_[üa |)tEn)2Bo;@C:F*AD 0%#uqH"Bak'WCňTN+UJ*{ivjSOQ##Q]t(/Vmu_@j|>mK:=>O7[FWg괄cty|N׭25&n<ㆩ/#xjp(t>bAY=Q5w֖;^y*{I2ʓ5ݓ'CcITQ{ _S-3qR'ŷBO*}7ޣ *;ӯC/mwvH.Nݯkbo Q>R6cP>g!H0 |ͿuP ck3iS,s}gLZX`E3 8E/ U ѯN/osFN=5PMd;.G,rc wX-fy뱡Ku؜w?>{[21Xo4{|w 0p f(5S0Q\jH$B':2L'L+P&g/~FvQgU°>}2 3!%=}b[ DP 6 /ײ{ elR`Vȱg0dg lym`;8W Z喒[:6ݮF$L < [r4H!s.XF矮W#6q VTа|>BQ?iT#]~F4 1[]W0 R1keW}|-^MD; =`LM0J_hRfۢ6tvs[sJ\34 y(­>u !l؛ܞE-c 10|1dO Ws$aSMܾ4RQc0fȂ|@& K|.`$dǩ:L͗ڪA9=55Xa(|9$hHuD;iqj 'ee QE jcIatgTU;hp*eΗ/,]:btC,C>(Mi5t^|g M,<&f7[+7-xY:E. 0`)UbmZj_M 0W7N41w*?xL5| iZN =YG]e'BuTvJS`HC9CL*\OUOOwlO`}eȅH[}d_"P= iUJ*!"ԟ!n.MHv/s ϣZ-إFۗj#& S}y&),*,Ou}z͞JVb8Jg,Y}*(=LIg:j&zΖX>C<*]TYdypa#[ߏR^Ns{>QH{n&8wEW9b-~; K -DLg{D5OΈ~ ZIF -5cJY11@ts4fPe LE+>h({DfaSwB=67;̱l!KW~|H,t[]W %~!hxrx (r*w)d8ڔ}l( p赀K9vL>,(|֑'0MM}z\*V6ŨL5`|˩N[C^\.NB~4(ja uug]ϝ Q^!9M #B}]1MOj$UwQ vp@/fEEAuê-%}Xlt-QHl/"W_q&pzqRCu;M+$9s8 nIDV&a~ph "8U{OARdb3w;XT\Ihܵy$sq_բH 3jICbL|ޓ3Lϼ38h^e$*+aI=4{hy ]&MtTf zlp5/6R j=X:w/i/IiCIoTk2/ hnȴx=rÔLϣ!QRs{ myݼ(- $+=>8(Hs"uB0e@sLL(aԶv/{/b`0e51x0 -MisZ=Xq=q{ @t+Bfӵ"yr(׍f{&alҷ>v%s ^,4f'6UVe{ Obe9dԁh>U6 fHACXv} 7Dg++ LHחDDbbj >min8/@Z3˗w] Clk$RΘ)`El[7&W{&i-}HTR~.+P`>z+ \Kc91ߒw>=w r]pWUJs]1%1\ۥΝ 9źСb"틿6' @ !w, ֽ0cYjՎ'vEft4Y1k*)L5d5"B 17CSw?7 W~t Q^h6Ij@:N 3I|ŤXn wOW^Zk'tc}*,Ńl }?@;z{R'K y`.`[P&pɖ!]{ J'Ѹd8նHx Hl^2hǞ{E%rOO}94U[ $_r~FfHs*6 ݦOT]\8Sۦâ_N%E)Tfo*G }wN+9Èv~SCjzHlgP|&_2E䃺C==w/ʭBC%m XekR5}p\f٤͉t5(̠\65)b5@Ilm7׶JJF|ΈU(R0ASc[e,p@Tё|o0Y6ya4^[CaV [3i/f6tsG'ޛXg07sxSK,B.8 UOZѥha7C6;+n&1PVY .ʉب?t|&ü NV@Mi! Wvl? ;lp9(4b+i%(P!ɼ ę"qrgI{5M,cH`A]k@a@j]'g?cqjmÀˍVB+iWݷGDzNH"0)`ѱ?BPl@%S>N^D Evx#+R9LO ~A|7op1r~LJ(^`iVkSf0c!2}AC#6.CMʳpy I~_CS?JCOpW41>> zߍXܾYI.k$k5@fP$3YIDm:xihl7{hzgLWwW,D~|Y ښ[N3xW>tKz$ +G,ȂNc lU>6ŅzBA*u=8Wte[ՂegSn}&,?xq gO}$*on<T LTTlloM쿲 LnW-t ǿPmlR%͸"t YQ_qHM6|FjT4p3>2ppة RBTYr\{Lb*;DscovÝ #.c°v3(>= 6"zĻ N*:RQObåq+t^-Y4Psꞩ}d,(_.3l#' SLVnþg\@Kd")= e<є%=I}5I8#a"iwcOGH8ɂOs |_&h v>4lm)`KUyGx}V#`eğYӒ.[0{Ϧ]82{}ٱ/Zsuv. ZK`u }jV˙t`7Gj6+L,] >{&1Hʹ33,TLNY>Y~JЗ(M 8|^2쇉XxALvfj?2Nڼ#oV8ش.CGJ-q‰P&:܍gqq[G-f| ۗEֺ >ˇb /6iM2hz}Bb)b6[O_soϳaү%_(1?8@\rCkPzfQ7޳G՟P?yIbylGL˶a1N[(!b Bq32%c5[_y`li3wueKpifRzF{[2 =(f)5 hrJ2"q^NNju$~\Ip6,g!(s:V 5;J=u#ܾV)l$TV}>@@v+a<=[zL`OTW6EiVX${F>%~'. uEV0#S;EQ*MbΠL Շl 3kCuE#2KD?+r{d3n|;O?E:,I]>ث3T!,S/ӂ:m>cyai{86Է Ru> XMH̀xH:c!lQEY1f[/X8|L?\mYf#cgnܲߨ6Ż_XڥCq` V"b 3VH穔Ű3س_Z3 h?PeX-q f^J][0|z\ ˇ'U;}( $:(P&΁a0$)2.y\e5M/{c+~ J/B{k+聒a7 K}l>dƃZ @G ܶʘwQ@(̆ zl֫_~7- ^ttib0WoJԑW= C\@aVf ; Iđ )9d+5p'7eM_~B|tG"͘m`2ٸiʗ@e[Ik] mClh "}f -WՎ, æ0*m̺ozFۋQrw\f>`O{RRMP\h9,ͳPQSh)=lB{ؕ3"v- 5 ch^ӱټ}oxD="˸k}5Mv At]s~.S`<9gxd\ZoPsDٴ>&g)CH>4P$?GڨT1H8그clfQ2:bQO$k}Szn3y`-z,N^dFmڤe>C\B2|7yIJ{xfxo'Fl/ S}+rTl(=9_#P]xk6`aJ6gR'Aセ)fGE)uEJ15줐[EWM.^.sT2 L$ lb++~4̇QV{}itrN$ X==>R${97: z@S#KhȹG·]Ę ް7@+ 9e3.Йs#|JHͮBÑ[vQtlW叩KD( š5_cg:7IIlRc޿S}ۘΜ OGsI R<ܣc`kʣwr=ji}GMBb_bF^#]#&+UqہҎj&)~σBa "7Y b-π޼E1K؞/.]m$C70Ζ0/|fǡ'b~R^ OuG imn5FHq-F5uT  Z]FvгzqwfR y"ӤĎrkOcJ͹x;١51ٞec!6;&cٓE/F (˺G.y[V"983= o`s:r-!olww"{T|UIU-}ZhZ3D} Ȅ _u: LPQGF)s-`11;æ8ρ6~/懷5^XL ۟zVu}!L^u{Ye+?-| ] p5ʹOIL~P%Ye[|4:NB54~v˃*nۃ;-. T97f3g4\!qI>4TpA?P`wEkMͱP﯄FZl'7>{NsC sUcj-u[Cʍ +xi=:5+cxٶ_xŽ}8Rz?\Ob&gjؔ2AYAnG&~xa, HXyŝUдfBW͛:XCIt-,G+v1~N䮇烈=PdH:4kVZ^}LJWTi|2T ,1ti7QJDͰY$gyoB]kI _'E7I.)^S-aTǸvr"q)eF+bS<j7!n팠Bc39 X-rOmr\u;^i-`fJ]#"8@ys(dyI>x7R0#~qԤN-SH!%zTp1΂3n8Ix}XGϵ&98mU ]$@xC.+L1-c0?&Y%-,t{6GXE;I۹ b9Bi8'i/{|п:Q^]{|5B>6P?KXtZ(%HR*Z퍊E?STˈk>yU9XoSjEy"*[N/ QjFçF|Yv2Ut|#=GJN1Jgx>~O̍R&C|;ʋ c{eiB0D|Pl`hŬo9%I ]nf|7=D'6q^Z6>![ڞ1;iS"Ӫ1rk--Gjgbiʫ#bLTMGgl%@#G'f'p~/WR`Y=GWy5rKFTO]*n+;*_E%:>Li ܄ۭz* 0A`in9}fYO8KF+`#V$Y9A>T}h7\R)Is(b½?* SAh I$Υw,3MS`>%1,ϛſqɌi]nIM"@r`5 =<\StNlq66}e/M_z?]אdߴQĒF?^bOh➝y.HX:kp:s_{d[t0^%R)P]6-]p_kb?3AJ7Y&ԩO>3䈞>$Yt$cUMMhӂ&\&S}hӍ6N"% m2 *LM%4QJ3Ny+ >y!1B*FitdnFZ>o~A4 e2 [EjT@L= lTÓҞL=z6\KnޜH11+# X%f`B$GKҮJ}pi181b{Ox35"9w ˄&bnyoNx@?>pOTWf+~kjiAzF2W-'M0O@˸#m;PlKy߶EIY;NfJvh3Q|7N#5U@t6l YC[ 3yGBN:BNea msm"{ܤlYᩦ4zM΅E/sZ* S#;08B52=O8>kfmL)l"ưG4r8nc`4zcp%CA=(iB .ofXCJ3qN}0ȗg X?4'[5 zxm@оuHO$64 &zq i]U|XOx _v4PƦ[6boD$Cu;=\>Siٷ)(Wv|ߒsU-s_:fȆ|Cs}ivt x N5$ e7o}PXTRDSj }k!˂)|ڊMC6@}cME2:2w=vd|r(X12mܨ ]bUV}-ߤl`3"OI6継 C% BbU$)>6Mg Hmd1c'V̚wp"dMk>ryF\yRan)-:!`Fe1Q^Ț#݁}O\PC- I]t, .@cZ,\wyDNԉ!l*EtG2<Ө^z qj%(W'h]fvc{htc 6ϘFNpK  i' MiֵWe{+\/j-$o``2f}'2w,ZnUfSL+3&LjW *tuc1M0 \jd8.W@Xqo+rn,9Vε֒ВOLٛr@SiLٻ0S@hN1W^B㠊6:A,j!Ō,CjuPExDsʺ"qd"OunASs3sl#cpECF+AxIekzPSsPz:"#qnbXXM}):Կ;% s WQj~kqAK>+[*MGt`{L ƹ+QU2i _^w9PҚÞtD#A@Zq~h[MkE*b%aѧlr)?q|~8ڣH?:"=_r}3y-Bh=}؅^XU(sGb d쭏f[U)K=:?} 4a@>|k6*v0;.swJ?fC2d]L%`ې p^PZZ?5{F6e%'r6[ {SG-[1$VnAORx?(%vX J+)8 -"kB3[ 8R.*| H Db\Y018I9?^HfwMM֣D+ RZ׌9 t({ XrӋ ;lɀbÿ(gyݚPa3(1O%1M6hveI >ljy #Y5OrAvDT+EФL-\њ1gB~;aiCe1'-M`A1l`\|tS)Z.$R>+F}ӱ[#kVk]eFLQ\~HDw-ExǦ3Lr.NAvX tFζ*f3ꏭxOvt$Q`fL[ݗ.=*goV^|RChZFҽW $h#F|F Y8i@ * x}#{;|屈Te{:kPinrVqȁϿ H ZËQ>ɖpS/AD`Va?sv_dДzj{J~ ¡FCERj{؄pP:) CDN5L{8ܬ+G 瓊gٱAjʵYM+1")ѰkA5`S۵8ƆÍbM3Vp6H 1q!) bE~k_fKRq=Xf ~>MVjtWy7*[.1 / $Y͈1d N'ޙ_dM6n,zdž{ʵfO̩TPixQs}-.Eu]^Ka5YƔb@@{,svCGyU Kgtܡ%#Fu3d I K7MZ[VAd.AZN*v74õQգ\is"b\P|).sEۘͅ 8YN̞G>]/|SφSn.v6~EJ1d/1QMfw!i eh̭HͤY-{Qr}z&J]{g47W(AhboΉY_ψ"d${uahFU$ivpSvJFDxi1 @97]]INoioHq4m^`ofr6ʸMih0T&9V862x2T1{hSXEsJ+/(iZu#BEzOEijlTi颣3g5PB/&a;0IUKEﺮzi]l_+RZ&܇!zIY !Y*HclEH337t% `W&:8#}̔>LwX3%PK%( {gIlՖjʬĔ'{sFQv[ xeq]Rgu3pg!4N0 J+^-QtѦ 4M70Nꅋ WGWW=KF\k]PsW "I'L\S&Vf,8 Z!+-$7uZfP@ tƥ.ԫU_=pU9FS:<'~t"G 2g1nB8 _ἴSȑRZMzo唱7lϼ`9S`F8$f88(Ji?j9 L65tO _ZsrPNy+|%cz۪$$'R/:י:P=Ҕ[Kw,[WA>5f118^͈JfTNk젹Y1%d?}%2TkBvo;ЧA{, bBJ3dYꛍw=%jۖ%s ӓ<&5ILoD-}Jx1w2Y v}]$YjIyw7¢;G& EWgQ`μyv-ی Kʊ#zw+9OOAQ¡\_v pBS\F$Zz2WWǷl,JѼa3=YInfirS+jcd$3J3:A /pf4V{Ȝ_\*H#oAΐ\ឡkFc*d^׈.iҢd-c,op#5Qjoa3°96Lg@ I z5h E]{I1Ӫړ?<4!+{ Isyr߁:BNb~g_7%R& 'CcD v?#~IsǣT,ZLGqʌ"Mh)b^r4s: UŽ̌`ɦσ(޴ D"NaGM[.q5+vbO' +Yf4U\ "2ZyT:z>DҴkM?5IO ŒD;F`$u=+0GOE4ѭ\(ƣVR]}g@_BЮ\:dwx`/ }sv(3=yp2A7,NyJKAw;di~!;Y3δysnpZ wE:!IqxF/Gl60;j2WR総ceoЄTgM*WXGDk\e4Y",&oi2-Kσ|`\p0oo;z!=kr߽ 3 I!:h~F =25bHcciqZ1>o%,)ns{8ICZC YiPN, V/san[rg6\$ne3rU<Ŕew$EvKsh=)9ҏL:JZw6Xds[f3iP2B y*"-L߿wahsec5X!xyJ~X-2E"(0~:ڛ|#N_3"V胋`(fln9~]gbi1ht<ř"pMsN =E>}#Ҳ#ɽ8pg@CjP<&+{l( p*63o%W6O"?sDjwQb8 q3?Sms-S[] d Ysf5Z">=ʀ1|ܩ~tdnd";z)3}}˵7q+[EAߨ |&sbE9(Itg P> -5.b"lpHI5R+ze$uCEo}tZsq(eN7>nknKzX%rwh͵K='R%qQgCA]eugDi~#i`GAshj@TObA%|`@kY ,ӟ/]s|xiCMO.1jz5{FJS+3 prƤ?-xo?'Y=|gޡ7|f S4Rv=Q:b>Igѓz HBvxAĺ͛߇ \{$bMlǢb1R2Xm4v̢@P 9xRPhӕKvh:c|JȈSʄVIUFxJW wZ?+ fu]st,wi%]!sOkPGimRG"zFTi풽&@b!2Wm m@wI\딌 KU(:Es'm|M𙀭Mܢ}ڤ!pt~WgCpMdWL.U|"NkJAutΪݡSz,]2\?띓 @{P/c\vj' #CI|(ɀr>Ԩ5Qb+c:R܂='H"ŕzci2!aImH)Zj}k>92bsM10F(.W;Z* m,QNC717NM"37haY/ؘ&_U.ωDP"vrz->f.\Gq.lu +LI෍@az73UO r?ֹpnt| 54 JX/67^>/IUfq(oRq7}. #,',SD^Qb,~nF[qO-"?^诹?dw0BϐJHP+SMc舖ëD׎i0YBSXy&EHJ=mS[qAj2W < B1 tY'4_G'͕:o?T0DCU yOOJLD9f򫽳z%8&kVW [7!3ʈM5%^$ޓӁYqSם͸)jrذ17a97/"?l i4;WjQllׁb _J aTXݘ~#֩\y.*~®Gz5N $>Z ݲOo{[s;й\"|'2UiD]Wv &NQwSPCFث=o'#|qEWx6;W&Г>];otqT~gT"s ~h,]BNtB%rR|L#.|j γ5w8kACv l4/WGHJg+˨+$Ac>/wkԊ< }rIt?X| !--'Kg(" &L=|!#=Y·}Ъ]ZaYbRP}yfϺ#ѓ;Dh n W 7rQo=en-zyȇȞI*jC!V ]z(^:MkkcN/enOzN 1~zS ҅Ln 99t&^SOGJ'=iuHcqO][:7غ^-pr3wM|'|W|N4$`(?28% {m$ `5 HP0`[BW$pĢ\B"䎣Q06I`K ePJrKhI⽿@"[2:& եȉ{ og]Ǭҙ mqk'(5V)6xZ Z6|+Z9O o~y(w*ucۉ^`q#>ҀS5`p'%!Bz^.Fㇰ[ƋPo;3k5g~; AA)#|AenC&_'δoJ,Qͨ2IL6ҝ́Rwmw;PL^YUc$͐CB׸HAvZtlit.r{A WF03`pGmFh<ſ|Z/tѱ ٤LP6 ͊H6s{KW$H_Q~mfpA%fwQ(A+A^0q+di#x+ v~OeE0|vjX=qXGldn6$q9D.J:}Ĕ}c"7#E0r `\_Ʃ>ar Ptd__D$w }_slN`z)`~ـW g ik͸\9*0& Qq䶫Pvxx}4-Bg:.ZxEFjҠH@ar®PVLQ*kiwlsگoj:@!"ڍ$yvx^ pݠJ7z5%Hm5W+1WƜćlQ 0K2hP'KL]ѻgz81an]߆^g!י}Ӓ6?g/k>~ę[mT\J5kn Y8 ^4ӍqD i1bnX( <##V'JEsz gƶ`0_!:^޾dž,ͯrbַ83*kre7Q<2&A,Q B\NG?iT Cګ{n7Y1,q'RECS#-[d:|3ql͒I',@I&}@6Jkd,M9V1^<;+ٯgÆ]x]J}!Hf+ T&ToFȣǙ)&'g.nڶh\/}p9NG, TD|gI|O>"c*`Z1޶J&C͕Co_kA}eV?e&Ⱦ{ #}4yxj罷 xd!3*3TؚZXӍtnj<7#:&˭9]S eE;{yW[IjE)ʀ/OEGyA`]_<^{;TYBBɵ [/c2>)/Yf*(79+Uʷ)*qNx91/,o񍼓-͈֚[ݮ@ B0$x֯zG`67|.A_E3rd : g?r4#WeMHcx`?S&!}ǽ̣uv/a[FMpp Fe$4?PUqi|Vb BS\Ok/u'AnQrWf|"?kWjA'S'@c. (C%0wa }=97DytfF:[;^mwxظtDNp,=IbB4Lm;wSpٱ{Ӟ_W;a<{ϦU*_`v%&2W^D N)-hW6zQ*XnW&V*X{1򰜗wC'סJ{YgU\CwuF4.<{> jzb7ǧ\=G %W򌫓h!йKX> {xܱOo6f[>dk{m.\јQȤQztUlyAbGqLmKfF .C) ][.񧦋M3^!oeY7fh+\/_/`[r O_Z I?]L&QA2CP2ɫHZד:B;UAvkzJѧ̌";;i-.j c` mǜ?-Sv+v ;o FE]'>\qt a xh:A SAjRW[7 T,0d jl!Rw!@[N Jkk#X|ײ'k_fm-|@:SԊIݔ<Ӈ~-rn!2q< 2:Z GX7߬Em,cLCQ/LY*h(ñۃ fHEd|+I mu֩p4"FXWkftOޟ"qlhWQ1"H<iם }Ѡ,  0(Rw#^Ϻi3Ih4@q%x"Y\”aUp~ >*''LA~r+SOJܲ2V+>_: 5b>/ˆ$!u>RUtf&hQk""hG[s}[YM$INWkWѦe`i1D}|º)*.Ne3>SdٷOGWD[[i}Īz Kv7^ +S0I9~݋)]}βRLO,B52`QLJ7Id+?\UYFP_~ H9f%Y| nxlc_?O=U&k&ӺT5yТ'?oC7̂J2&v؈Psn83O8os Xdz^ﺋd+^y{GϹ /j2Tpf+.FHCb'^lޥ 8ckM*n##^Yީ $JiİlX'}.)43OCO0,pO;-%YA& G,ޭ} fsRfXvLHKNm|:Cwܟ6P`'w]4oϓX3 ϋ1V3"ҙ_VgL6k|90(9Xoש+t5X_r#u2ӷ/ gѠx:-0w .QS|"JPp5H+IF4t3]1X ߷{cTXewuECuv܇_A>\P76C;͎&{~WzI7b60[$Yr>_' X/i*;;Kkze9~qŽw!ByEsQge~NB[Y=p_\`j"Pgi3t3&$P}\-!?fWu;'rrFM3i!mx%7cY>?ipDXT?[Vz!5cʉ[H *g)a@.ytgj̴ Ћ1n$eZKrܿ4^SQurb`؞&KeYl'!58:#*}t&:2ҳ34LTjq_Nfφ8˶!#ƀO:*.bhG:{ߞ>M?1dJX 3]ߒ4αHY`{@![L&Wg8qo-]& !f5')sP 6J%ǮBEs (df)"6@I1ݤ˗ĎpYMN9zp<ݦ[)(Dv˥a┅fsnٮNIPgd.Y=-$_e|ѽT vm^2 ¾D(u/],dQ*#^ʥ"hj^K@ؿⲘOiSB(5F{Jm^'ǿ\wKe$z1KCOϯ "L>YfKmr Ae|C̚x4/vnY)`Pkv~,j`sh*s'f56t+D[(7cB{fi[U%3ǹ"tN7șf&_CTד:j89 '!ETyZ#=S?һ}|w5E8m2=EIMO%$eƍe`7PE*;.Yאp]x :BAC`z<]m$maM_Ň1=-uLմIk&.6HwSHͯ]lS}"IWYPG7^iΒ b?c/Gj}Q 1nHcY]!ա+QT2~uqjng Oĸ>^+ͼ-݀Bugza@4krB+E ,/ IaE 9SODf9Zm( SR1o(Xd XZ185}K =y.~#p%5شH41U(f'elB&\_^G&,'܌/3!́h'[.gBGEBDh53ի CS J_d7F`foN"Z%CbU^d?o_`HoCQ`ͩY,cFT>ѐg+Z!M2ڭBQӣ_ۯA_?Ziyu"9@Smnr=5e ̝T3Vr ?Ǵn>~ky U}/3O<*ڂLH4V[-o ޣ*$5Q,C: ڹZ 'Tttq(*# `l#]aUNA_\{OAXd#4`LO{S_l#"d$Yh1rX6|M}e/;LƿE*vQ'׫ga~L\?WG퉳9Z1E[Pn[W飉o.͈ƕtlemG5]%F8p1<,'$\u?78=zNg$KɬD% Zr=10tś3>J.fs϶>[ܖr||$mA$lhaKv a_Zٟ$[TUw{=euMq`Ls\L R}>; )o7vINI )$C aq*Lee(]dq&sENN[OM HsVe\@JG*I9 '&xSqJuY Y辆.`wi/R ,|! eB P>e*8؈ޚhmꆿr%}'L: c\Cq /KX8\\FM"=Nz,? g4'K'Ij(}gX#!r fg]ƽO/J*ߚi"'u0ekrs-G3 'J|mCrFth2M2AeO]ec닛QENu§u/D# [qOڹDУ.WC٠+ڵ5"׶G3ōoi:S8`U]uE.heM_6}D#QtAON [i{ ffp >9.di8r6/JO޷1>6jRN>,:=NY0ťAOp0zZ 4wR3L߳!,SV`Rڈ~Ğuz-3|d`5kJܲIDWx 1k;➕f3łpq2Ik;,r:u,h2minbZm&C>Zc4^- $Fs]ܶs/ Psk@`5H?8MCO C7e>7e a`$,>Cw&P#>! 6 9^DۅPuvȄHC|jaR#>K5eɚ{8 62Mx?C{#.Gfx~U=W{+J)PHo)=\%L 鬙A{yv{aXg Ӫ7uDFNYF#b׎٩X^=Y pP5 b/s`1- ³:HbZk5O::5~UZ`x!8ޣ{ZǑ {o׀Q.ף,LiE= ĶRE֨ %X-4c^;5O2=9;{5:Or17d/Lݵ$/ePZǟ".vLI'Hz;̢bjZ[61SBlۈAPP,d'B!%ݓ3µfEԉ6Sj!E !y*a}YB;8^xsMh9fNKiK=7Tl_li4 N6`Z_:D ʽ Db, 17A0҉K[/e qig^g ޷*ݛV3R@X)Bxa+wr\?[V`D0DDF zgZ`'e.1)y*Ь]ȓ  ;4 ?.}uBf/#+񅐙4Nyq)LjaO8lko5]"& s+=n%y s(q fs j PLDivdrn7`!3n}_!XfRx OVq`I4|KEn!<@h#)-͝{ ,C,ӖA*#{Q%[-`C@&[Ʋ05mpSMܡH54*vLͮbtcR˔䷎ |4*זL Q7^|Zզt:Y+&#ҿsR44ףtD6n^ ֥f'Ĥ.]h6O*Էf3Xwq; E끎O;,֒1Qek/B>`P oV yՆ;>%O}W4}TƆD6se9~ o?Vh&xPf .v9gVKV7 g[2&P+bnnp.|Am@:d= Qjk-<ڔ9?v*MKZxy93w˞_qJ<kYaQom}5 #}<pb~K4ǩ_ I'IO~3"tZtbA~phol8Ƶ]sʾþ;^ζR~:I'&Z /[&6S#^ ӇB鐅{`Ir v/͏Vp+jj^eLw_Nd2]Y/w*Ȅ9sNQ^fc͇pk},XrI` Pe5 f3ͳ /WB|EU^4G0%X; ,l<}<4(8*v9QSczdX0%fK<W33׈j!Sx3ۭ72n +}T Pfzjr뉳E(MC9̴'0E~S0Fvz%0xO zԡNZ/Eꠁ =ej_b#?wЇ?c(BsQsBYƂ2g$! ^-k۶|RA(TwhG|x)(h/¸=MmHu~UMu[) : d>6s8f11=O]dڊq%m%/Q" Ќk]_Mbn3ϤuJ\Kjdd @4tN^(JbT1 `6M6<vu݉ Nr0az+L 0w:0=*>+BȥOGU*Nun'n{ E -2ǻ{]%J܆ZTP'/#2Nwk܄iQjL$ 8R3}`75sLnS^5 1dYIJ~„dGLaXslfjIa[xÚhRĤ@|YO>iΥ#2z-Ʀ0h<4C0~Z'b5oݟWY@cM/T:USXOh6b=ꍲ q23V$);{Wft\װEƿս6\Lr&ʼnΛEZJ8."nSun6Gu;1WI$}KrA; 2Eu3C#H7 hJBzJ.ыw.Ex},O({×[<rq pFoS,SToэ;OKqaw@[g-(^D51^B .e1JotHT!- i&|t2cL*#)y4 L-͠!Ad,L6Ęmǹ6pvج~Z`e3]Q*{ZTp!jwXhh zڡDB '8 2՘0{bhU2<ތ9X엃+wڜzm k12D2TP&T1V Bp"<,Ed%<: "P>L4?́;G8ocDbL:$~ VWQ 9+9k.i;J>>F]q@e@l>AdkHT2*@_']-xa/}q"aޥsJMTƬ7em.:\8ĵf<3y2 N?=XXM eo~}|Hg1-NݣzgM#gTr3x!42lRi$H{a=>05P]ͨpTz5`/F7"z4S=Ǟ]E0̅=Ho`Ӱb˧cI3i B+o:nrFdg~U(r诞gcȪ}ڦ2 < ^[Fg弎X[#Q>_~Ȣm콬X2CkcLZ9+DNTFspM$6_#2lY3k-ءB"6 }(o Jj0wEW+4T$ ߺ>ms"9#/.~ fѲ+}Q8~A|q߰ N4i,i&]S[׵Šފ*js`ੵ;1''Q4 "GkC\k{'m؇A5iOju>V |; *yIpSxХͿYm:d!&ƾo>2Z&; G+hL:PcY1=VK/1&j.R3岣v eI2@| `&U&wE?i\L x:PU-챭 ê>0xok|/v1OB ǯROpWǂ~C y nDyj6}n+vRDvՕ_Ȓ)TZc kw}쯏峇xy&8~E ówQZ R R_tm׺xRN8X.7e<$C;֗o_Yؔq:Vc)#m=H 뫔zP1In|O7!AA&}>j{%a, W0HF[TնO;`|PF'ygmtk)' 2½NY9H@bW8!(ۮ(Y uAp{1c0m@L6J عBznanxJFByuQttH.["}պ_.a?gHHd>>oœ;η@ VQ o b%HiaBUoRn';C~$WoE"Xw0ޡ?BѼa}-4ʿ:+a=n8 ;=$|alMǂbJ)CY^^  Eߥzk.l B{M&Qcozm0Pz{ IޱQO|Lق>e*>G,@KqAO f-04jP-~yJ{ G5.KF)@^Eqj8%U I ~K+{b 'O ]>EK&w1շ)DZQ~ yr;| @:B#Pvj|?,_0#>.w+M[Wk0z/ol^j{NaA9'뷔 Q+nWF@f1E6iL!Y:s"a.ȭe.:N}cI5xLI+)e+[/oA.)n07%[b#ӇˀP[s*nh+C!nw5=B0CM{7< ҍpɲKSƲ~hebgp4&4;$ `)ióq13}1Hd~qݦG~VDMRFO XTĖ eD &9i :XZv̒6a wᳱBu*51ĩBUOnBERJ1g<֩z4y_Z14~#%k-zSQ.`$!@ 7"krdnUΥJё $Hnenn޶O_ !HGtSulܐplHGQWvDCS8 c{6Sk*2\Zc3wn-i%tf濒pn}g BCb˟fY $Qgy)=g;Zm 'J,mxqa7rzEl}jףq'v9 ?i)srTU:5+H-r8]ՙ)!rhk/$'2oϞvft s<-;DP݅ L0Cǧ$Y$zt'u3V z(KwO[Eh.!>pk܃kBaeHP05j'uz!]ƈؘU&^G95 H49@[S#AwЭָR~J*_sT+oqLrJX=yr !<#̫:4cc-Чi-1~<8\C@N~?Ƒ =*oh97)GWs=>[Nj^\p<τr3`rz:##pU).^>xdsGl%lPja$L yz?g|odfb{d!Օ]l>mp&My)eC'TzD_{ ȹ˟F=o8G1 @Z ZߨM0mWRVSAbn򪕣6.-iTQʊ"\l y}h\B9!U@UUlm_F',F%֔QT3!Xu猗 ,“?%hl Kc4˸'y\)?OeSA:Le% = s\7@L=`3q(di4 e&m$2ν{w8A,[N](S*^z 6f)Ĥ,l`tJ1*,sJڼ;K/bbY'#inC(two1pQ ̖ZX"B{Afhx_ " z$}މU0f1 ¥vC @"4C\ꯞ6yovigMnZ$roE:Gԥ|F %iamRqj~D7pY*ٽ{O|v 5xC3>cV'Ob/ոԟR` N 18( GOvF_Cϴ /e~R}vn, >7iLwFݓM tzgޢ͞F?U0kW A_ɑ;D xwV;NaJFh0t!l$U]D>@r'~ۨIݺ~ЯMDw .7ƶ 0 cSu} DiVs2Sgu9 .\+F-iiYe %+̢µ v:-TMc8{Lq.?O໑ cl/xyR|7nЎhLyǾ}]"gY92ċC}dAQ4>.O'*&I_ ,SQ;o8NZ`^kn=4vG<({ۂT_v4c}E8Y(_J!çʋ]lXpI9gU9Yl( @5Q6#ؾ`E~9j=2`̓^N7q>c1m.c;]X$p(iɹs k:EGAtZcA9iynutxi,[2vIp_B*zI}VEMEڗ՝ۊqɃ)ǔ4Cg(JwBVn0o Ȅf謲H`D %ש^PU*CՉxD@RI"Hٜs0?-2쨾=Y;6iʗgL?^U:Zsq_b2ւW/[ւ=!ƅíu5qOW4m$mE 5#Bc9ɍ$vQF0xlHƹ`qRn Qv)O= wa$!Gxd+i8m*lsJ6d.5e\͘v Pa"9tgZ;"jA&0{>$K}Aȗ88 a5" $5FMi'eͥ-Y`'b%1-Hy;eD\s2+VΎV,] syg/WK<*<KO_ƃhfJG432*hm6Ov]̜B&L(R]#,n(mf7QHLJ1\aW&ȳ-B_=;/͡=,Z6 e[8 5}@}9`Pՙ tRjFJ>ƾS^|x#2~c(3 **|iP':M2$V HS\ab{no>\cLt;|PC{QU' m(R@!}ax )%?.*n?CW9?gqiijZWL@ w#%1iNkC~Tsf[=4Y#f:9o9JƜ"&P5ABPo;Y3#u+5E/pZ*=49+?Ec én-)} (2:z)b-}ʫcs6=i/ޮ\gzJZKjN)})B.avOUK=T.-@>ۘMs47Wh3ۢHDpo {KUOAϰSA3;d.wIk_Q8lp1ʕUlW TK߯@XzE@n\؈@B1]'|OF|d+Q-۱;~\v4 6@/h DB e`d_ CۆE{P{z3bC> Zy%"") H2IY-+nj>6G lOC2f1t}R7Dvk^xr$n}.(2v:B͏ C@9^de !U|tXFQ |lt[Z[JV2RweE(.RT0F'y bDE- ZpBcZ,ټpp%ihdORB?~Ɠ.}&{`C5D+Iqu ?+N\m{ت0<(aL;)Bko_edTHE =ӣMn;񥧫aue9L|rrx5.&y lLˆ*u(c)11pJ^Zң`j'wּ{{D#L QEF)2q34-_XŻ0.fy~vH<{ -re0åEVye &_eB1J7'Es+cN߹X4>ZͤT="֎@xa 2v,UEU>jJh\ßڮEn]2YrՐ.gޏ/%po$nkjE@pl8J=˶[dY*P {6lh$E'\A*x9gs Yu.ظ^d[8ӲC+#;Ѯ/I""UTx"$!fL@OC[r ozœ¡C TfRQg?رDŽgV2K͜ld Q _ z# m$/zmb3E!YO0ݘ(>Oe˅Z;mtJ羭A7W@ގð'm[S]*Zz ݅VCR x'SD2z7$e4A"5PQ9#8*`>'G"K!3`To'aqa\,\n R`\nf}n]i3"E$-Ha2j󓶍I^sg"A2W"ԋ{9Zx Mj͕1cPnF*uv~1/|gz"yC:3!~NP?7 Iö$f[}G¡k@)bo w&'˼:6"/0 qx>hsK. u{\wл6rښWO*CԬ[fd+ju]o EP&mu JeK4A:?̘$Y0ѦW*!STv.C n^I=],Q/CܺKMc̠\O>8HrXh9Hp`ty ,~\(xV>+%Ydha89~;՜ihqY#jP۠^nsfFџL'maC/equS{DzW7?B@uU)w<N@ ǒOЗgqJeF($B+s%3˳gq-t$b |ud}c[Rw~"y W|){Z6?0;/E&>U~t1s5qEEYn dM(Bh]vԝHanK4S>+Qg$l$MFkDgolp*~͆1vŽ}t<576aʊ [L3w$rA +,&40g8*`9f\W2_Mզ !q x2C^fԧ!φ8bLeD>gm&o5KɃ4nAmU12] &~{xK#3pm'xu ŀlX $t%|Jt.1<Ĩ}ʱt__R ijp(HX5$ K@%^oe|78ַ/(niQ zAXV!wo#ퟻYJkE^ȶ'Kh" ,2:鄸dt] uw΢Jups*ܵDh.-՚0{b" `v34HnEP(!_lOΑX2zcsآ7פZ;HrfN{WjM0oLx$) z,p K՟/<*C@]lp&~|Ǚ0|8T.by=iRij?vQHydR66@Uo!k*T}qQD\%.G uT574 bZP+{#zu)Pݏf~{Gz>o+}G A=6S`~_Ƌ`Kg/ *4iHO><3W΃(H uvW 2惽 aߜVA5z-[^bt?ܙVtwM;dv""X M ҐG6=<ıAҶ yB1g2mf`$,wc"P*y(X@89ofPGo8m1K/A v[Vwa+{}E:O~R!= gHm)U@7)^wWvh?Ұd-0Cf] oJ6J|]ZȬGݸyhCzoeL-ʭlM%9b֚ evH?[KaG#v`v2MԖL ,w(8JWiABT7>Źo%l@wwZˀʻt!qM߂]ͦq<43M>dTkA@z;FP dBP^Y߶ExS(_~K0F:v ,Qʷ9< X"銤ZUY&uVWڲj` mPZ&bC~PTpo.ڢ'8D'"aG`xmj[f#Px) WҼq>Dk } B,gt0yi+&DqA>MJɽX[b'g6lopR P@~#`O`VݾtMӺXc@,bꨒXPsf O&|{Yfwx#=`sjP#8<4B|E?ard 4z'_^ԐZJtx#( z BN* Ch _LnZN8L5+@ѷ2{}F0?vǙU[%g_2Hsàl:)A]VR:PbAw]0AQ6a-O)⧒r5tco~V~!E8# _ 8w͌FjBf5JE98PViRrunkhf%3t"DIS{W{G50jCthԥvяqh0&v;ZwgיoD m .X.7U, qǬ?ޕJVr6:)؈ u cd L=e2V=} r2-Usj`g]+3auS,V\|qRWY&i!=AtE~.G5 FVϵqٜFyMH ze6bHmSs5[ީm w$|' Dc'b:`f>[W%*75`MX&?Di=Eϋoڳ\ڗ{en)} GU;A(Y2`W =Sg("))TtuhXEIU9) VhlvMpԉ㹕głcsXtHap-&"w|+5(]L B"2Ie+}cfckqhb_!n5$iؼK O?4'.G\тfQT:MF7*s aٖ-H=zM 趪r+αnpϨ A_,3~R^ߴ2t}/:tf]+8yձ'K(H,Dje&^YwϰZA"bʣ+3#pklb4#(Hi>3k߅U 괹F /"_'hb O,)VLU>f6gGj jdw`Fb6Ș1Lz62hVSϛ:%M y!dۑ<uf{&DJϤJXB VOn)u DqJ͆mrF&VT2I&$6!} (gTŕA*\y[]4Xg~ TcԿLZ~) 8,[eN`rhYn5p %#B  k/`XZC*/|Q=Jx*}Us&2&f =r! rV_mukއ'IV _Wv#Rʐ$_>I2{H  ӍȈ%߇VtUfl#6dόt=f8׀4Hv8p+vgCB|Vg؎ \(Ffb{+r߇ 1=,㉝w-Ȅ>PVq\I^l۹ H 3b߼;J JU,*"-C6Iu׮QQk*V2Ҥ^6ÕNBYܨ 8(ji5@͒PܑEnη*㺤eys ǩBlLM`Fb *(a!FS/rzH+2&NQ;P= >_%ntI k#{Uvd~"yV4 "쓐LՍG-XZ r #\Ǧv;B)KҮ@-t5kCf NF]6(c]BFoݹ9sL1 8}cdwטf4.rF?|ݬvn!섨Ml:uJ-|@~XݢcX2wSZ۳+?ɼ+W!~I$%&uE1@gլ +rzKB[vWBɥvx5 {j12R`ڕf)u4eM͌ wYP0Di R@*]J'4sй3]GRq Ct$N{HٳVɩ9\|5QChE~&cB4Ss`v/%zК(q9WstBNUj2M!"Yza$Uxd k2u_3u W_8lf͸IYMK8$rB`xV_B$@n;E}IC,}'c,Bcd"] R`Ǐ~3 3M/Jpy):D ,SDwbқ 2|E@v.Ӂ;^2`t,X'0Rb#|=WCmLsE 7}>:<L\(X 6ކ"'q n7?bPS'42սJ.>|5=O p/6߬fw~ku:K 0Ӽ_zb&-_/ǜ2}s>8n)靳+i jsTdXr4rhCˏӕ (i,8ہnzx,D7bCx-mxdQTa`pvum=$.t#Ckl}wd9-tHz~V_+'֞?.9rX uJ[M].4o9VIѺ0#an]YҚ_xD,۪T/3U("ra E-Z#%.gٱ5ٹwzɭ*~ V׼(eIP}#U,@{^fZu Wi66cK)ϸڗO>'B ,p_hj0c 9d HpY@d~=/SKQbw>+t%iVvƿ~QF\SN7K[yQ 1bJl9CfQvB5'2/UC\jZ9^:5B,>`4Z:L#<*kqn^$d0r:׆+|Z3wwr–$=߬bn*$S m Ζh ;nCPq8:͠_QGmgo;RY5%P6"S]D;Gʢi3R>#^RGq0h,@YIё9\`Ih'ЪPz|Wh#1AMbH@̳ЍԽ{;4܉@wɋbC6bc>:`$[ޝL ~u[RզCVvTw!7^zGFU8r F8!4QQ&5W/!. !"|*WSB1k%}~^]~T Q%0fw͔&Nz7ԝr mF!{X0g[,#6HUL6rC!V9HT"zjF -`n·"P› ߲k"Eh1_S)n)Oj'"6٣3 t0XNǦ)槔ۏi9l>#^sܱ qZr9i5Xf@ڕW/[q%&hGٞ"M@W8$lX-B3 ( Vi&hm+HQtfFIto*f !< yzzi?iV^ nLv\Y;%(a9st);H,{ q 7:Va1w&koPT[ۂ.=sIywf?>k kT_`ke2*uMJ;Ϛ+BACo (pQf8&5iتd{\hxmi/"Ys)iJ$'͹o?)@y APX0/6&CnIe+5F7@2zYpcKU82)~o'RwbVo*MْeݝEonJfIs 5hQ2wnTҎJRm y4%nh{IQsvz J;_ܪ{{MB))ZiYsִE` (7Ps@ zu:.-bg&=$w%=b7iHLgۀjQ{DvvtAV< O !]T;եi4T6 NjWH~ :!isFbdҵIc.SgFRӽ: UU~B*,d 5CpUoŭoJyӪT-ɣ}FVd!0pjo٩޸a*q<5qoUM )tcgsR 1M*0YB{ӄp|8:s4t*Y};n9QR|oFO65f«ִLIɕgixS6p{|F4 ) b VW=8̑oGmM1+ۃ.q_e4X>s|%[;8R,:R+B ]PH` s1j=t+AYstS5H>v;W \Wz l]nUpw' z|่6qzGSzH:V-7qE"m01 J?`sR:O-H&4Jw4iWoGacQE} CRG6Q ,y5`761MiR EoBx7{JhWzR74b@5S~9yWfo1]qDؗWkwxd4eWpEFoFbq$dU*% `>acu-dYc<έ|= YmCL˿]6iJPy.F=;ax,KE`К9G ػ_z50: I!+8jY9M$>KpH3-!R!<]%9 [Խc_}-9픨iA)a7d@0fvswj.m U7p(Ju~)|"\ ?!P'vF q3@9m'v@Xq%ʚf!Q\W@ %ʢo!b蟓^bmu>ƓC[Tb[6=TuJ(j ?VpXpxZR@[nZ/A`j2-Ykl[l~8ƞ/v~Op%q?=a#lcs O6HcG*ʜ2= ^ϖEٷsQ(LlOVIx,HEO\.v$ r3s~qڨIԒpM* (5_%eF f98^\5Rm 냓ml:| 1 /wzssQf4r;Tv۝} ;Obyf}jFtO- D:,ߋJ > |.2"Y{P-C8;u/ohݡ\ [@E][J5ZFi{;z{AǬ6kcXQ`+D9R1W0:S[8?>)d\կC~q}:mԔ[trǬ \ zIg(/u~!*[N10H{O2鑐sKFj|R#WZ ӷ8Y8mؽQL9EgX͉T-h- 3옜 >ܥiC7K"`+etNA ҌNҼdG1Jvg )bY \FAI"]]U==(SI+jp `b"f̵kb!ÕQOx'/Qp\F]dS /`r )HFr*a\6<٣<( 5h'-I|% n*̯~Cr"U:4#YIGw!8n;enjcNaOԅ#8gNB:̳9b͏N0nVtl"CthqTZWOf7=r5 (NhMO"JgE_]]2_6O0 N4szuV߁ػUN} (~Y^, i3vgoߘDºu A"l}%rM#`F(ݟ< fc%V<, aiUDE5(;_{{ [ 2Muki_|$YsOq]܉J{PX}-V_j % _ϼ@f:u#s '![>^x3.OnaBKս굅&̧fqO^Ri*nuSM|}*ن5`O0&0[Fnj xxG;"JgZkH4 UY*7(N$5 t{13~W.2hjKosnZ],,ɮE. b5 L%5ӻob[ 0.ĵ] ptNӌ,!lp. AAy򳶷z \>t,T_Y4xq@%wJ?Q`揺tҡ bOb/E!AZn t Ωӑb5fĴ ,c GeiꝨċԴ(Y@wN'sPs8x^2N-SCް/ 6dWM݂[c%)c]2iKBxe f#\?}H$h/i77Dަ9_NǠ m*`T 6gpy> :bCϰO}=/6Fw+ڄ+1f8MzSH7v,V d 4R~w0乬?iL\)ݥ OLXޚn-8U"N/h ɇyzq Qm0pVM& f R5ub7')\SWv:[oeJLtyT} fcP|5/^G]$U]8߭Fo$@H'd%k_j\ځSh qX5X%ָt'CqO5j<C*Ȥf5Vs1'>B @ȶ6"?<_.e b+cyj2KFjpü]i)=o'0Wesv0&ތ_NI}D7 62Iϫ] j8d`Sdp:.ڧNhDT|UݠNkˁy8 ܆P<7u*R8!Rg 7k'AUa eTs'"æ2!{w}ߪɾn6]j9@۠ *nKNtpvQ7*c5)dRC͎1"]YXf"گ? ZyKǏb%#pĉ,* rcsPU$eW ~hX!gOÄwp:f\8`inL>U_ϗN^`0dX_hu3/agQ|iՔ)XWC(`dFMtuS hR{.tԦ=׊ A`BD`q#^q-Ai"6-줆<).)drAmIƾL氋cz/e@BUe0EDLdWDRڔ@=SGB>#lE($K^VA8DF1feF-ZIMj%SOO+0?R)A<]1Wy:#&.0|> s Dh唱G:u$dxbc;0)`FVB!kԤgjK/^\l"SO0yıE5  [㻠⢊xO f ̛Z-2^³3Qì-eNN2$db1AwȦmQ+^D^TF-x$9~6~tHqoCT}t4l|TX`;InWyMJ)\II=c 78JQu⩐K˒:| 4L51Uث˙A3RdsO Ya1!g-TqE@Ӵ okNyRiݔm:*/`e 7WQO < rƤڶuoS{o`Ɍ^4gWC( 6^#]h>tqѹo:~wPw~qc(Ǽ?)दC^޽1$: x6*kMbG +#3֘qZ0ݿb(s Y'x겛!(q-˦\|ؾ\>U @MG9Jc2Wm 1YZ?l` >@(AEfT(vދXcF5Q. oOFwH4:-FxډHbs6\bUO)I,NnXsvw!ѼˡQU4#: oj F&k{Mm_ۆ 8~0zki {6WȆD(ؙex/k KɆZ)-Lip Y# ;~%A7&-![CkOĚAoe,(SM:$Jcj$H"bN 44in͂W@{hsPo*MXM_zQۄXG䟆<2 $ԗ&a}HCJH%,GCKqK !Y ֲTWϊ2*=yY9[=qҝ5KKAΝQȝR"Ns g}汩|d꟔E~',S<$5zAhiK_m\6 h:h0H-rz /i|JoA [ans֨ܺ8m'Ƴt<셴TS80֦:|hnKV:8mB| eâ-F[G瘷( Rs5wevQ{Ji'Üe5&|l8OX|8h`s':)±L!ƭXH 0n%l0b~C+rH8v }.WOs@ +RN=J}R14͈8µWX_ީF!bĂҗ# n y_ |7A=LJ^ckFHu $wByU1y}9XS%vi?>Sؒ^)Dh[:u0LSLq ߟ0OSx2]"܄˥1b8AoxK4Hr2vW jZ(SĔ?6}Cm0gX}߅ևT# HtpW)6?N\JV3UK|xDrev{+g t)R83`v+tymGۋy9dښd(5Zi+~~^eD2q`CԒ(߃iOl0 ƚU GZZ׊ا zNu ]M\kE4)d=iM-6Ckuuqb}uHu@`h㦟j~I9eY4MZc(ÑOLoxli$uk~!v'Ը&b6  d1X:Ԑ4Ya~w}`f7bXl"q8TL3-V"OBHWpjzAdQ,Y-1iHՂ;̭)sY7ۼFs7 j̞hC98g.%'}s?vD Fp8FFk[Fw=j5*OG9owώƕĈ£ "7Eӫ&AK7t'(g[JܗUNU?i3F| 찓GюHD<jd.p -E7k0mx&wNI~lp-b uqݕlռ9:~> M&ܩ}(mdB>5 t|}dU0Va1J1 k-w|Szq\a- rQNI&ڹdT{S}7gZj%qB Cp1rNgu,`Ѻ>xgzefV{`h~˸X47NQ=cu.-7)]dE ohߟR ށ^=Ú i6gш#7R,F@uFS9L)Ԍ0# =dו2ъP\'<Q!ФOJ3.ؕq [8<77by@+Ar4,Vh9HX"0zT #1o@󖞜vkw|QviC>+ӝ|܅Ѓ="M]nI3V!vx9UT #Jzz:ڳEH+ɯZ8%x$oUԒ(Mx ]t70nH{~16( T˝nsaWC=S.v4y05gLG^RJ,_"jj ,?z6D/XH+k?O fXLDzVS]ךƼTKrʩ!)ߡ\nk%YvKJS}a@z=/Tuw~(vA \eayJerϿ;j",[J}~֒ht`=axyRkfz.ȋ _MUeIehG5")|rsqF]#p k[ZvB`yQ}wD)VWAcw,V@q:QobQtϜJ8YYmN-t܎DAd*h@^`{'z!GaZS+(1h X3ǴNXB-VL\6'-l8[[ȕq7Y/:Ϯ*]<)K,s˵?R_dAwRÆy %֒񁋴&fm Xp(c?-b*sԤ< o4D'fi9Q,iD0- Wdtѓx #{X9rqq7 +9>-!1ŏ5Gx"=\E5ӂԕ^wYW38ׯ]d*>޶ZW&F/F?P+TlVH^iGv70z֪!é J=* V:N;SE0=?A@Z6JDkw0'feț9|d&O/ݷe糂mV!~IJ &b^xZ_㑨zi/x(Q6# ^zF%TcD~m縔z׊PYA_M@H2M!7zm4Ɇۢi.PE;=ߡGd_бUw#cq&L8V u wt ʵpZ$ 0!_|*W5. ӡ._5_H>2 ^¥U*i c'WG|^0G6!if-mĢW֬c~V@ٽߕ^C߻ŎBU=s?hbWմ%SBkFbuhS2Oo]BU%FV?CVHǘפ1;/ xRXyv񣝪}Aߘ3 C+{R̍iAyd.@cV̚/1lF&AM|QiòC2_]}^~۬V("agVx_=`}$-kuACtPF(b a= LhM+C3E Ҟɣ&t84hC`$ K‚u>}-Jr?I5hf SbܥA$ҥM'!:gD3~|Mj)ūolw88m?GއR244:܆Y88YNE?BR\#{ Az_|[\i8d2C@,B F~H>tn_^2SNs-8\@Xɢ@:y|z;HQ ~roH?$_F] wJk\K̼a?m8 _%'ƙ8o:'Rٌ  HgZEC|ޘɼ(\)a,Rax-D…{ Vr"S]_?[$gnx,|h" QnG'La_vRpǮqES Z:P-tn)8lf 42f!R*H_o'+<3CL4@#c kKcz0ɓM`z6F|$y|":veK,JLU[t~)tM<=9z}2G~⦰ Q1X.6DHγZ ‘QU`% 酹b&#^Sr!/ES3i~0 6fh%jςó+n/ "L!KԎx]?pcyK*%ʔfʒzm8YU}1f}p6[ܮ\zt#d{}H!Z h@ėƏ.lm|ܸ~:! c.YRZ9#NL:#),A!" [!M3"<,~CUq}oCnE轥=՛Xք@/ų옏4f#3#i:@J4Qjk_m 5v-TVBg7'~ :EAG"i/nNgT8p60˃nN2,gz > 'GJ4Y .6>]stf o~.uH)H|8#6[==I0mH/krDDhZ Tv# `K+Vu^%/O%̿{+{i=a }A֛zc{FoJgnلw3zanҪDv4L|{x>: NI"굧q_n1 8 (d=Ǒ D( F`ѳO:4w G駟ʪnϏyߘ 5)| 0nD h}{) 4 ungacz~.U72z ln7\կCԗ툇ŵyXbB9p3 ZTpi2${ofΝDZL`rSF_;:-? !ok1n/.ɆxizuDun&2$-'RIם,$_PdxJ1BmÜ ҭA'X. ;MFL( 3oխvtw #ؔT? !Ru=oǺl <RM7ڠ!tE8-ڣ8nU/Yim7F7^~( o+9dc/׻O%!; EKj)z +B.-c-3L6YrE-6kn._6ϤeV+vىvGNPLH‹- O^eZ`nvd;Uc0gF;6p9_n9?v 3^8]YQkMxmm.yh"=>^mWWre4X^:/@d 7I蜛.W̦7>YMv ԝoKDkt I}Su%# zaruG$1!-@:;o S˰S/JbXlŝҥbmfDv$:3xƹ6YPF;,) 0qqaѐA0;|0 wNPAp8o|~22l20= |,l*+(MXz_iEik9ՕIF*YqJ~ R64U&saȸ ^vU3ދZ\"7|OSaȽ@hU4u))rǤ FC:`(tܑW=^  WlwqFK& sA~ަʝFk dpӗZ[|S}pTn$eX*yQ!.gt{>7laxNEts%"Up^0(]cp!3b,?/th%XVʽc.߱dSfmȂ{w=q(&;iN;tJCB]*>ʞȀ+}郊/ jq R''q,/V~W.e/h 8Rt-3 R@&(Mͦ^J!)NFvҭ~rI!@E~7{v~|g>Q\ .ʲ$ a" qFDRsiaZ:> J[J'hl ~WmE Aԭ] މ0|J 6%R77y1qht/|Ҏ9k3qfAM2nIldKBPct(]61eTA{ɷEI}fx 3 ;8yA^AINM%R [P?6doLǏ<jQVDV@MudXt'Fo0Q3Vn‹j}ܥRB"HsQ##㲀3хɸxrG GINls.4l.t 9ZA罫W69?l+PJ赖IǕs!#%l N$*"rx`[/{X M ,3f]bww%VK"[ g,=d0ԩQڄ1v6F0%/YOֆ$Q-x)gR8':84y 2 i Q̛p&UrG5#j^v9Q㢏[_z4 *!r 6yto-3'"$S=|"5(?IK%anfop*r"q̒CYbo'z$AZ/[y>hIwTq\#KϥIT,~6"qyڴB@"Of9)RJCi e決v~ΓB/[з݄^УOk!+UW㊄[ae{lS_YiL4 1O.V>c+FLG [; k0u)>@n䬬^zq@˙NVg IΣ?w-:&joLw[^k8X4N5z+Pa#䂑%㋧l]Tx3CeXCdW1I1t2p2 ޚIuj.Y8,rX # ]NB2U"TK*]F|# Zq ` NwYJm!h߷ P{om9nQBPHӡJ J1ElcSCzݷn `N5MKmV/WҢc>4XN 9rN8=PUT yDˇ>'rݟCNudY1 Ш,qKBOv1H*?V>C<םxŝӽbWTuH wmڗu`85p7>;&0$w:S r #O8)w=Jōz8P+XГM>n{w$u݂sg.ԅ ѿ}s(IHyc_#Er\(fT}_Z((kG!\( 6]|!@弢=?Ss@2lj \tgQ`D) +MHBCV;u3W۹IsR1[9CTGPhE\3RPu%Ϊ.4Ģ2rC( ;sejwأZ A~%:Gqv-e'ej: zTsځC:DTB]|IWbO-hxS15O3~rNݡ]Qq[rFnAu[ M33L_P쐙B)+ Z*wz~`2ypDL & eŹ C_m|ّLŞ kpT:M\kpGGQ7/g1ENt랋YUUС Ih%_A 6RL-KpH%ʱu'LD?D1U"m`ז4◩\z"gw~s fY{I`x*Wn%Y1 ADK@gOSg^&| O[J1'VږBF]ϕnenSlǩ%yr5]w*i{?ձQ]*ݲ{Y}vwq c؜ EUK9l<, ^,;E^?jJּnB\77skجO@_(AIQA==UhcLu$$63UEbFC4M8Iwt>EbX"^;{0@\?&>(;}qrX(zcvbK_/ L~>Z 3, !CPC^6Yn쬴Io5hͻ=ޢ;Kt[^dNjz4'êIy>FWDĻp;DC|aa]TUý_d f͕KR :W;BVn3$eE[&.qX ]9c)xTtSAhu;{2aSoR׍ƨ:uM¼|e!rPÄSw 5JIa qST/"W[c]}Um},U{ćB9{w.LG&ŌM }(⻢X-ɞ^6̩⪦F$H63y/5iz:t/A'Q:JSko`Uh.WюY%(@V}c\ ~T00HD\w],%dn3)BrOc75o=~%>k-{0$e=oJN(QXxCcȡ{:iJԺ*d%)O2udeetel3lH9|, J,+  >C}`VgP61(F &\ӝjƻ*‡|?ԖzJ>y zJX(RM]:.K_"?DFK К/l4^[pN0#(;7וgv}ɰ[DWdTt-=wh࡭6]Dˉʴ3*Xn=xr :b3x+X[.pڏR3Q- Cʃ xj\`vݭo'@`L<[Q[Fjwuv4OmHG0 V4vpjʆ+ó%D g Xק,|$o9+c/B=y[(_pFHtvxNBRۅ1-ސK=3'߲_} z9 .0 ⥕rRS0Q)EXaŇgvc}j`>'e*K8IxC1hR#Ca>>T@<27`dM~tNI6*-eN:GmZ\ >n&*e#irz*tpzi5*+ۺ-7o䥽|W1-yu˸]{̡PV kLS4WyQq#4^ܡdcOl!#тOnHљr,By-ցN~-|=ūYP ͨLHuS}D%B/;M75:5乵ȥw \܆q胲.U1+DdjV_D,gfB~*ؠfKLj,Sʌ4$%ۀz**pEJř1 N{\N+Eh{CBm-W1lp!&Jnyb 34㭍ݓ-4KE\eg/q +lLs$fcZ*^Zn9t>;,prj8(3ek+ ߆l3NZQ<^֜t.PY>{VI9OwQ z~#?zO~:Ջ^wտ$D}Yx$m B~6p[_2}8zPqOIKs "8FD)k{ol23{6wvq^y^n5c9ܴRպFVfʹY)t>zqmomؓHNNw#cG\g ~wsL` Q+oKĮyxx^CG86~LŲ ZWcS30045oX5F] *lDBH6`LÒ73#襼g6Y[p`c']cG9wD+#UDBKziQccXˌv'Ϛk0͸ N+X҅3Ws!o:Nבxd9]R$F=TŃwyXrE{@ӈf4 _J̀V55<~|.i< jAcM8~ i\D;.&%lwڀIRQoDFEQ5wZ-3\^eF_SZ\CP(LO"ܸKuQƧڰ/?ć{i,nO֣_ ̮Y hv 8jFFS܆x,Qi뗓i^'/vz)櫏w )YD:7v$kO^ok!!+ P߾*SLl}V}?H׎N/8Bt:VfkkזD@<-NDNBR =x v-v)[h45 6M•Sq s;omfǾgU͝3}vt_0z /Ṟ9%.BPx&A5mV=fs>g!-ttTM2kuO"d%'tPpJT%-׿U|puNa2rIIb"vjuOvI!.'*͊S0y ̉,>4#6;w`C8+> P9  jƻz?2NEcQAȅ"Ɨ)Ry*{?MIzf:^=SJ~# $=O8ZcsIgqվm\FF?ۤWz7 3%6\#uhʼn/ΰ!'"(%Ilě-x 4`^}B f"Έ͉-[EI42B`>Mcpu'6a C+2c/l5;4-Xa}Ρxd☾j^WM=DOYl& fdDP֦"S/z,C 5oRu &9f6T` Pʥ罥5eFuq#@F܋eبK#?UB˜7;X O%]rkЕPECϫ) ܝ6ֻrV"L:qvu׊viyX.8MJS&eI(Vn :OXRWm#!53mj@ŕƆGARJM~|)K :a3Lj\ExC]p2*Y4Sy|,M1P/pӽgs-;fqO!a_L_Ct 'hעf@(ךynSkb|z~wIr_aBǮAnRv; E9޶cX(V!ևkg0fQW2eH-؏LAfVUZPό(SeZc E UsseHV=Ѯ0pP4U(oF4_ B)yXLH"3̣'۬ GZd),PMة w:rB~k$=3CwZ74 Lr ܟ>%nxAa4H/"V3=TERmкШ$%>_4.Ko/TsIWd-zu%LE!k5FrF=;S ?˧"@$}A8|әV[ tˏaC4*IG-7 bD Eb}t]q_D=2|;A8zPͫ! ȡ,ރ ɵVG~t̖i["@ h "?DfV &9M0FFShmwv*| AFHlD#v 1C*4znDI]:N%XaazFbVSB;*1J~x|Mc%b v,Uz\к5PޠU'gx&J8^ ez̪`J`oa *r>oG;W]5j\ X"Yw \Z{GXbFO&}60l*-)Cu9$,d}SPppFgsD*b`C }N-f'bBN)R%?n?w,@R咰4<ֺ֙hxYLGg OgYClp-8)ЭB b__مJ6l;v9iĬl8)+#Kn?Ks~[.5}|3vp_8GjؾkԆd)b6 I]9^Ϟ413R'@?a/SS=!t%J?<6xh`FW"lph8$>;'ؘ(8#L$qd憣( .GYA24VFJd&Qqp]@ri̭š m,x''z^xl? dJ,.)=Nm&'cAQXK:}MOt=}­, %*4GB@y>O9S]Xp{侸-o[ I@-< :h'-ڐ@38Vj|l׌-A.}x K1<&I'lApX[ '¥3u\j8]J)+e\M 1 MhANE+59 CD:8ig^!w]O3hsS'(o=s(1삟JS7TyYm+bCB^kۚ@dx߶-~%@0yWb8-@;ԽNVFH8A\^::("* Ŷ(=K/p[ }u( ]9-}󷷣<F]u $8\2ABtu)9_{Y[BlYє[F,#ve{et$#>rUb+LZH;UC 4`D[ICj8݆*tx(Dm-?'݊v|?}h;4sYM.sNѤKcIJ4½]/Vg!& ' z:qN z$3Y>XNA.SjOS5y`J,i @]fD2I(̔bBn`o,fs>b?Z-Zg,Q  ^5mJ'`N5K4$;I2{tV|*xNz!0{[gOHo x͏;H'706ЂTx} ^AUrIGl~Q1Ȉ5 $QV)fE@ĦNEuKNw=&>6Ѓ??xk&ݒ1].+ 5jA2?5Σ-QUn?$\@;T@>Kɖ Ҍ-@s.G'/ L=_##FTܼbhyWQH&/P[lHɰxy6}^rjXom ߬ȡLyoyX+Uuk;koSEv =ēJ Y6OMpC` fO87[{0 d_, V%RHپ$pl.H:K"BLvJ@BCvb};{pCN JVͨ5"(T*ȃͰyWK YvF.3Z݄c)c^Ul㳘?$թa_RL֝?U: _S-Tz̡/FOu/cNqLT7E+hҀo 0ާz) &t% Nxs|-[dDٯ|z39"2(UZ`7 (:LV;dp] M$m? \<dk 2G~̚4,mzE,`C$8 y-HE A VUe# L1Jt*Rc K$m RUw= <9 *È ITLl_>pFIfOcYa['gGr6XQ![jE`~v Eq47DzKuS9S=Krq $jq"k D/'AoF@FUr@aކI*J}96 o]P~ptޠrfCb(#-N6Rfʪ@c~,ӨqXWL 8cK]&r ,@xvf)1 *n bʌܢӝꎟz\ߎ~:IR UKz6 ^8o/GL,$ Io\(SaDzbl;F"dZTYL!Ύa>0B~-q ؃l )? B,o`eXJ}<@FȌq 9#h`v.'۸]>ZxgstXtҋ1vKIm/,숶rl؄dU]M2Kh+J&%,I5+kGٵ/8oR\a`0l ɏi5#Pd X$o'%Ltn~o FCin~rpJ̜o3''t%;"Ԓh{=,tZbbVQ' U pi(ERfE{?*aٷQh0Bݓ{K? F4d(eC\?!(O-6%w6<zL59f!էTe^bR+˩B (TUа!$0^KYD] 8\:Y d0wH̨'8o>vd^Z1llLzrfHu*g@*l4Wr~omOz~˸0%":!_K~Mh0#)Ҡ-ji[`Ԅ?ntg=YyH]ϔkaݓ˰ܳd.*zZ6 (-)Թl2X^{B>\.z kE!E,NNSI`x!EA@Ep<-yʯcTl~GRַA]ɋs)#Г*Hߘ(,Ϫ5*Yz]A)1x=G3,6vS`xb%8"[kB^s jH.2˸WXL. uqwjwN8Zi-^9i HtY/ xCŨ`RUAL OEwoua+1~mw9ձ¡d0:?2&|^ (g)igX oDȳ}A,e|ٝ_QP9"@=eh g#[ MmǢ*fhohʴMR֤  #Ŕ%:T0*-(bz|."*J+/XDsTTE#Y2q}ta6ʸP(ZIGb,b{ga/}H&Hj_8Iq]̣H*ZyQLawdwM/H um J6V&J3H{m-F[X;&?\-C4N/Ɩ ޵#5zIv_;A-a\b㟟1Be=5@&o/15kʿ@PBЍ+``>Y{cK[ ܌眛Z`'2{?{mYQ[ o~EĴ*P"O&ӓ?SbdƕC{ 473M)];$+DJ#@q:(_I &% _;,4!@C濸)ƒ#I(O)vMfs8xp3jI.RZTiW4a\g)7`~"X4 {0p灀N)QO[C5t#upYfYP`K%UC=BAЌWzsH(p 6^Pv ݍGh SZ&NT 3W,yVXTz+.zh]c EwfB ޥ_dWV /BUD',mƺ#I;J:2M|Z\ë\Rҭ+k& Ojy :ƆYDm&-E6MG&d >X+}U+oN|^ⴆr@y+B/u9 VMǽ_B.ƓZRi|`ڿ)碍4=d2G@ao1axbG=̑m ;f)-cQr)V牸!zw%_=ieH<[`6ͳ鵬BJ,ژK5Ws@?Te&n1<"|Sg=bS|`cϔ텑$C$5A7#dT20YԁW.˓뛜mh.W( @Oy;gOl`* u$ƙߪj.+q@PXȩqP0L(Q<G>o_pJ2dIbY:ޱ@۟rVѨZ.ٶ%6ȟ)CDܡ. u@ Wx`R$釈ɏ實H*{-d ؑK6_Qsٰ"CdU)aw M}]\ RCB=lgD;vFu9LE%vxU DSFqDJFxtCrX"{B3 lG{&BXz0zW8~x^ ηM^%4KÐpΨ>tu0V; "ѯ8-.2: ,q7@ݍ *;ZB#FD&ST08Ƭ?Ƽ>-:a:Rys{~~F9L֫a%S!lKmF.9EcZڽFٚnK6roœȟgi'OnJB3;/l{Ce*,oh[ _hjo$ӓ˓nZT Jnb2ݐd ]"dJ#z0f-TkKl>HGx2`;Gx*AXjx8=:nE uzKqCQ@IOXE.wyOg'y |Mc %>emmz>٤ nCjA.L=p gyH'd\Ev<Ս,6hŹS+;ռ3 ,ڎf&o7MO/䍲 [2#Br1tV srϷ*ȔKKӁ] .izHhU$M Z}ؐ"DT}7 ) #*{mE$2TZ $Hn~A;')`*,`tERZ 1m"g'@#֠{gXUh*8*_wEC#|lKW3g"ZԔKQNU\GiqjO ,ġgXosN .! Ì6ci:0+{!:=0F &l_7q *Iˮ:~ 'J4R?/iSQDI{ i4)['7L'l~A-pA0Nbp7?-UC+c6%j(3tJVS7q˨ zt2fm펖6w#,7 X'2MqVÁ5uk?XHQsH7<.~CObζHƟgx-M9 H$Epу cPF$4l:[.8֕iM;S|}vnFZ18 k _Z1dZ0/.A {'-IlP p9?#9xg a$ÑWf.Bh%wc (4Zf1S# j2].nʑDGՇ+gXszH7oI/ihY7f{0DOtv;f,EY;\4ы5.|Y=p"Vg)v_-!SB)M.fn:R,ƿˠܕC#dtX;~D*Q];k[tݾ$o0V>yڄ^v 8ɳ3Id<́ v{LO"%Eԑ> f*j>0蹟O4PzKӯ8e._2f'bdAxvNIMs$E5`=ꄸ:/$:q߷ N&F8I`DlY\k6鏛,K8UrI#4q&NzWR].1lC1yG}te`7VX VpI:S\=Dp[ϗjԉ2[؟<Yuax@']S ytueiܕ68ip[F[_m7V#% 2~;Ni_K2TЫpO}bae :gI ̖~cꝠ4.}.7 Sm'tq*9Y$' X|5){ŗ 7{X_͔ bb2f9[~=j_8둠8g\A%)%qMMtxFXZtaoY W[cXO\Ֆ`9Kt͟93" §CXOQW`*%Jƌيd0QFOqu~ݔ#Z]c85!D+h5RQ*=/ǚJ†@՝JPT/N>I⨖Rp)":z/b2wfa_OB`@xT ^hUP3trKp`~!nِbe+>6|҅Ci[!Ũ(vFc@i^*w[# T{:%Ǡ:8D̽VClӰUvJ-̉5^L<\"c0X9TJujuCBo\ƈ/5էݖ-+䅡Xs?;(vW9hqzp_ 9{pd P ڳOnOX?~[wA)2S-?Q:l_rMߘVyPe!눘rZ܉1.c/zt'>^-t1Ry(9.Dl^ya(ZϨT6;BɃsg*s>D ~-xL]ڣIƇ<[jK+T=A2# ۀ6&z+M@a>c8Ɓh.P>!jWNivy9q%l^l+b\acypȎH.LP[D^ .D|;i~j_0*2J:l Th+UBL댙;z;nM[SVYՁ+ /&5Ǥ_]tՔKrI!] 7sV(#C/30=>H#Sc;JN@o]Nf$Lhb,̷6@aC-[;/Dy">rO6jF䁈+). D`$` (t4h[?Ԭchh+C#@N|WB~yz48sʳiCuQj1VFlaύǯh }-,'?O{`DGloqo3zw0^ S_d#6Es\ FW0P7Wor~vj5+fGap>\4K/i(ɅJWxbFTC=;t:~3 /ْWCAR5Ey0.1R_9@A Y!v,m.2c!otY.7R@Nʄԯ#-/ZC7hwD/&'#dظNr ujZj(bz1@l\n[FEdRbi}$N| 7P%|3)LP<߀i1Κ'~1wޖIbݎ_0K ʐun$BJ , ildK"N-/27Oa`lO~,]/XkƊuM XT!jH&4e؇0>yau3kj@M$|1)Y!9~Pc3enf%gBcT.lL$AXͤoo < Q!}_(̹OIwnrEˑFJb#El(1Ű5`gHu]!Ut @rǬQqj?O\cs#cHX ÔzH̟;f πQnR-pφ,NVA=Z2mtqDhɯȰ ~*/|Yw${n|%}7@Y;;3LUT;٠Opȕ aZ~O~!.>a|yHΘT{m$al* Ib6@c4`VD!`X0 oxKD\.w̽R!O?yA^􊟰Gdke2 Zi1<Ȕ mޏ(\@Τcҿn_^J'#^Pk;ZNrkǜ#j&\oؓ]>*knl%6${sj*gD!5{ oPu*vy3ÅsL'd}PS0` |KB8cXj)s9-$ m o{}vb¢2(pbyA saJN˼[ |]% у3V޾Xׁ҂ٳiD\x[fJYБ]\k^+N{ =17(o!PhCgbIPͬE79FiF9dVфTꋔѰ3OўFc*nYX7ѯ2p܊*<~aɖ8J2{6zٸ7+ie%+i3F vGa5qFmaʊzr4dONwPy;?P߲1jϕ~|dHa{P.. >*E nJ. 'NCArGEߋ̶fY'vF%*hu&Z==Kd!<`K|@].1 @/^ys<1כ>T.:' uA2ۦMiu.Fb 8_:}t"PD3$7pȟ"j6Zi`OV2QuP0g {unHW)V*ZŜz b0xѮl r(0J%\wFAh+cϴr='wo>$ 5`=8\M%Gs +ۓq'5{v2A|܂-9! 'J» DHxmd#cqre w#na3QQ[H!t䜲6 1eo [Kh[x& ?r_ y3lE>PjKw"4J&M vWy/ZLahp=J1Ю?x|LQgZ4ˬ_i</- W=\PF lߚel2yi9+Eװ;jHVLiOo^,;3$bSEޙ@Tngl4Xj"}taѿ2(X2pBEg&c<Ķf=K ِw𬇨C?sڼL I'?k .hH#D} 9Jm8jI욌b|ƣ0DP^Vו`2pf6P]`E(< %&]Ci΅BkT7Gx,1|rD&Ą_v]yT C<}TsUK 圴L|d@~GK1O(|7~'#Bsj__;#?Hs9`ƪj$NhQ}2,ebUGK? pE?;l3sV%Tݎՠ.u60j73=~}¬Yo He]3]S zc7ҥ*wR2^˟ifg3)׫76SAj4yaG lw#X'g,l$ܐFA{Gҽ!ݒGՇVmI2'}/, x;2 ] G@?Yp#AbaY~h|xd1EҟJ[LU8n"]u,i616=@:H w;hy]oJ9܁ɡ^ HᕄsUCE0<elyiquJ%U(!Czrz;`Xz\)EF>Db3yΜt bL<_&0ODL)/."Bst,mI`/*у^+|Ɣ}xD#vWV}Ę3F 8ITrɂpD0Їo]^YIZ K]cp9 zJo*;J>{cS5bGayGj1p4)L3cc#0(ɦDY?g2Q, d3Ic`QQ+k[7l#.Ӣ|FI`%z%YYfMߢ2fm׋`A(MR Lq~H.a䌏-P\"x{syKT%J 2w6O.qԤy.9k| O5ݿ)OTdPTN!-i@6GXy 4嚣섄 HZ/[I7s\,"6: IK.̢UZ~t^,_nU#÷Ccwz lA'hVU\Ev5r'߾1ҔE~߳) 3.CNu+vN޼zg[}]D{ZBr%Oll lOQ܅A88w1yi]/bX/X:"l4ޮ*DWCjesIChviq7$9aL$% ~6@+\8$2-Є=>S /abKKhU8^Dxnq=KYEMsy+2)? y¨`ñv nƝдOCp9IOq( {]܅<V?'ܩKG&K I哋c,zc \A+t} \QJ\rj2yc|'1ǣ8u*Hs/ ]WYh﷎\q$τQWϝAH6&.KuVi4aPP !weVTbt9V[Cρ%j*KQ~i4M{k׮*%C'vWAt{VAps/Su?0 qz!{;3\Xt6NO/)V5Ca7x,Q1#|BP~@6e75mO=XMwiQy[%ό= Nk /&{v,"&t%1>Qy ՗y@~4MlS({X:UΖn;b)B|g6 'Y M&1XԔ?BHH8^mgŴ83d+AH'MB XGwʮD |z摽i#Z;!ʞԕX ’QeB lհO+0u/9NJ\"/4Gő͗}"`9 lGo$f_ezL2=Cy`~*sDY ا[' 0lCc+ N(nLIoq\",)/$0.1sU_/t=؅Ny`z6ZU m 2=t^O[i``Mj~z:0MvW0^ZXkגZz 'Uݖ'{/h^Ww#Rf!P凩LƷ.zWT职Ƒ|2˓;o's~ڣXc$.cW] U.t"DuFһҩZ*ǫ)oci} ";૎~4cpYCx%AEd29sXȍ}"tXau }Kϔ㥔]#ZpxaE/cdW`uA;צR '1)C8pʏ%D=%AI+oXnRx3 hd8}'t}ǬpW$h&gk5q%<2U̸@ԫsBО(O-^SXaիv/b@'e|S󷵁hEW}Ua?m壍DA 2׻լZaŋ雗k jhFOɇPkb@rQ7D 40Gѿl|YƑ0YXz0?@+2A{}sY(\1]Q: _V8iA(VP9AJXtb0syۑ0%mVD \ʏ&R6ā2iUL[pubq`:FG,2Tq'{fKZDݍnZ;LE.\N |pv#Jw*/qn#4E"ԅ'A7~2Sڻa?>qT#cxy{ePe-Ovi'T< .,ÚO R[T,cAW SHiF/f)yQ+6vZ zq>Hpw 4q²Gc7<&J7- PCE2W6VhHv_ j\2h8%Mx-Bj^AU>)gq rVu kW}sR& TNZx —z4zbKj)D"o.jW[<n|.ԙ nZ0OVJ],Toڭ}1gԎgQ䡉.ċJoVL[WtTS+(x c休C慎dج]6 {yW/'Y?m@g=47$" i8~vQcD& 1;Y/#k@ 3G v ()+.hBZ.r̄YW'hcY%GRyuK&D/T|p=C)$# eSuИGXϐ̞<:vQ}2\[h#mfUIf(ieg rXZLVoa LǣHf2B PxfjTӹI#~^TJwȟYYY.o룓%5~=2dG#pG|p1>ښwj. .im u֫g/?b;59~36R ̇N7=87~GsPI 2ndj-{ű -_O@&RSVPXwE p((^R G@SࣘjQFK_ 8Bvsi{/u04CТc|rX^ )ΎYd$3Pp0i@Lt=AH 9<ysTxZkQbi|م_H [Տ$!k/[yOF$e#f@õJ!5{qQwLmpTiA51?ϕ_ EP})ӎt0s"< j>BAKJKQTg(LT {VH``qLJE(bKYHҺڢqӭ~#N F!^tu?%kq'Jߓ2(Agzj:?)0a/<7p)T/ rǐEaI[׾IB=$?L-3B0%dA/ ux,BWCF7YA {\&]Ǽ^E{\%/P_k(&d-Nmj !OYoUǭX3^NC4޻!WӖPcžtj^iLj{;]P޻!W?P;o1žHfOmU3zAQkmg&NQӘw/F~g[]ƿ#csy%tZ6/?л8f) uYK^j돆k<YΝ. AWl/Z.y_ -HZf?А:tQi~H2Rfґ*(53"  IB˱ٖ"` G;D]9>a`o)2?Q oȋ'EÑgS\9l} lp OA, TV("91!e s;!k_ JIջ['Y*^gL/FM ㄬC%6gJr49b2;36y"80mSH,D'9ESucUͻ~D+;+zh4=~H}N.hy$3 FM96=UQ6D✭3~kxWE ̋dAgbe@dLҚfyHh"':%b 1v߅ڨ'^KK^@CSAn>AI$j/S'15;[ qgc0gh{KvBlʫ^\L,s 4Jɧ Y&§cQV &gf'6)1Hp%WSʰ(OYzn:yGHi5E)Y^")Q `CmB+ {s&.v6/KsBSZ/M c2N6yR'wkdZt̡g7&̎q+a~!ַփa=4ٶ)cv)9b͖<@X ܊ܸsɒ&5O)$rft|QwP=r)xpuƺHYn}'N P*LDp9k FkXo"IeLśiB=;WFSk@^$hg$M(Gw,5!~!dt(o?S g!$[֦sqo/|,f֦X6_zub %F$;[@1п2[UxU8"7CD <I+?:ڊpl6,nYR RDjqߖHH)EPSn[{x\3|Anm",_ĮU8nӿ%vp:Q:m,W.̆Z )]a4\\sSmbd1JHOmfnNo!ln*-^)3:~}7RsBX΢8o\0Q:6k?i63LZ@*-_}_u:j5~cLz3Iq)d H!,:)` >8bF %Mz,+9r/#Gӭ^m.o敛|QRgJZ"|Wmivg[ 2pnۆ~zXxf 5/+F+C[XݠxzKv)/~,REm+'yibOI:O=K`ݣxoXWϹN|}8_c|!B:#+eCòTi*(A%Jx1c+EL5$*]A U&(_*V1PO#>:˳cFtyV.zI+§9Dʫx ^}b4cftƴaT3wv*\0._kbNKt:1eiQOol  8Z cIA'eS-$v[J>C++ [OV4gj*%EELd|BUrޅ0y&{% uZ nHu8CgH w?@r!Vv=y=m6/G ꛚ!V&tcP EZtM s喗 kr}E)0U !y8Jxv'Ha ,e%0$FؐQRHD6ap**\Nϕ YKyK &tzl?f ?A mzM#m!3zP׈B' jMgԹ5;KiEWNԸp/5OMp4T#$h46\ Zt}Ym@.:c3%&<ڮ ) BoJT'zuT5$;WkhͷZZǻ\ FߚE!q 5<]2z<oozQ+wj˲|"ڨe,^vg>v29E80l>S9׬(07qWfs{Re)w.!r;F`WNYgP>֙ccY:"s -JP^0/2M˧q:&Wp7Iwx6Bw;5QxKcX)Mv ^UOr1v[b<>ؼaa0^f'U7 2+{EU`CxC2枵& OwLSs[EovJe fP qq6/>*L`)2;лgCɉ!ugLμ3KWAk_ ?X~K- m!Sѣwc-</w*9G u$|M:)%1n4,!wF(#65)Ƃy=G#E1YxN̝+2rle-(.ȇ-6)bRaqnY,+ty_NM>$Ɗ,h{ рᗬ5vgDM !S c+ʂ*ʲ%?uyRY 'a&LfRiiyJ2kʡêtT$f\.nrVWrfDyF Re ̚g:r:mAsvu=PY& @BLҁU:f: 8`4a 6%93Ξ\G4Ĵ _Ϯa7\@1g̈_A|LطNߒUNqAfg,;CەOF":8YpD7ҌNS&ٿb뿚Q*8wfuKDJ eСS<,&Bɖru(K5C|E9¡MCZɜ/3g+/wlšq5#BcvjUOF|>utd_0kـsY0$~rMP_~h\TԘt~wٝo)u匿OGga8▔r|qսҿpq)KjC'Z^8fv) Rqf2(Gبj!K"u Pp)i*ZxkK=Ux;jmqAl(\]p|dVCG龜τKkFcH#Z{R$ 8M4 ^Ȁ25]% {g*0G*uZ-:ocQv xh߶5 k ?uW埣9 Qg 8N@n@#y[eљ֤ Lf>*ĥi)Ztf-lf1[ˍђ #ٟ.jQ )\I"SY|B,Tv_u*IG?aVgPpJJAlu }'3cf-2 8b5Zs@XwYzcYah~1Yߟ SFӠS-BeC16Ռ*mYK-G["kN%j8e^̤ۻw OT ZgM?.ŞwεEG)$(; S6gzrU[C'=p-&DQ7N80Q~Deh'e1r.JC0? ?NwfA۽._l:ŎԺẘI^qI\~N[NC1}!~jt_gbvs"#ۋMϮ5 ^8ma)JD,P9C]IONSbZ}PVߨWD]}@4R\T@m1)qؓ{kɾx~fi.!d<AQԴIrf[no>ܡR.tO g ᵆNE4OWW"v+ҍ+ q #Ũ2v@ {,,문AѶ63d(ȋY5DpV2sFSM[]z#2oH'Cpb3VÐKDQ ȿFM 1WSȭْ}~D]:i-NÉf]LæMĠpZj}^q: : ))t!˙TOGr5X cp+Q)98?e5pļ6<^IBuVPI\u!O`gLdƎb)^#X0,#+N[xFCbv_:_^$k?l>0~?%XE|} z7†dp (mRƌ-=}})bpxÜ䪕&k#6y M\ X9Ğ1ֳu1Zml7JS); Ky!?{iK%7ǡMVy ϗ2QPP?؊;|,f8dpg !?n [n0p'-b]tJ`r,<:&-x/BЭ|k M cI 7A14CWЃa_ݏ׆KrYciB?HQGmX@W<Fu*pclJd[Rb+A_((ʰ4s2 }*􋰪A/XăE<vR)u/Oq\>c$S^{ ޒA({oc+!o9l΢6- ~]yGm{g Ͻ?hJNse3\e) 7a0^N\SV ZbLPx40ESϑ  /@:Y[>9TpsEP$z5ltH$&^ie4@0S<ֹx>ǀf7DSΕaC"U&)ebj]aǪ6wOh#*"/iG^J]Vea?'ڗygk꠳[jY )!]JXGy5REۚO9@&6I·VB-./,;.qS~=fqdD*PtJpmKi"JұFu>Op\_8 "uvrWsƬ~f8_ewMYP ܩC߲˭%DC?Z-@K-@ 2fp"QOSe#$HQ9MXa`DM'ycÐc?jaXH HcCC )s|KJ_ڥ"J+zP'tߝ~WBgGz1aTmeYM6/՞4^=.N4%:X:@ˣgs?{pN"1҅!ۥ4Yc4R%:^? $byKVk>*o,sql]vrN:8ԨنDa>y|+u9:X#!Mڶ#adwf$}ڕ8o$}#]exOZ.{9hH,n&EqS($s <6_דo?pV,%#f6(ެxmkyff#ؾ7H鿆دqޘ< J(7Ӳ1 Uh +Uc_MlC7}2_%\{U2q&bz|Wt840/ԙ Sf}>@Sbc;k])K@|<`Q  q^SE`Bgh>EhP ޴B3zse킹Tֳ Y Rie/W^[ǯ|VԪw|@%a$QՀޠ_9gP9b1 ;n?-pk} TSq * Psw'-PdsM01ݫTA6r eUײǞ`J* պ?35 K}N7g?f̖G`@q܍!E"JNܒUu`ۘ,ļ ): of} >M$c8C>ǽIjj\˿JRمEULXp.`Om]J؂snJrC\!!^mP1wTeZC:1Wi4ߜfpZpם JVT0 P1DP[ Y˾>4bp7&gz?r㵪:z,f:y l|=瞾ȀLj6*Jzz:yԚ8?Pu8}v}h)) w[2똻#f٣hHiN-3ⅎd3c1y?.hk`c !Or}Uf0!GfټM;xXr 4:z R]$.s#}8cbC+D_A[O!/Y OH}# :W[B66#qC3O QlpuO3=݃iT>7PLS=ZƷVΔ0!K(r3:Ip/H+2ڝ.:n=km›`l9=yҫ)y]؛\PD^ɠR%B*WTDq`K{\JByM@*M%{=TxTVvL؋P3"g0,*JR H9*l$O'gnXf'KJͦNET/A4Dk7(nD~o9_gD:>uOʅjkBҲ1a2O={9=s_;̿HrmUgK qZ7Ӡ1|<M铮b.& - E9IT Vx[gnPgj#UO8[WGw7}[ k>rSZ9-1 ?Љ~g=?k$ğReeԱK m-W$*(@V /iw_DZN]l74PB1K˗:&jkLLVT(pY0=a|< G1 : ʛpdTWcN  xΰM!w% %~)'eLtM3UVI +^is|VL[Qk86>"aU\"R\9C_Ьjߓ'qx6yEO]*M6tL7]VRD( DN+wJ\5dXBпػ攇я -D S1[lYԡKBЇrR@o{]RnS:8=Dqݨ+ TgX.K~+n҈zGK`ߜ y:Q Pt}G;>g 8*49yڸ k߃B0gpWMERE5wޒ47ao`fTe˛i{Z㒝֌T5zCp֐k66HiQoq^L7mSΠYe וN9oF)— A9_6NQm*i|lOjgآ[m~/!8ᑳ%"|K&Z1TPW0MVž{H 6 h@<(.Hl;޲{`{ɩ2S&g-p^u"H??㪘SǻRcNiG.,}NRϘķ-` +e2`$@[}\>"x<z'?] a{qk Qq" v8B=Z?-t]`@ n -:!T6`_ M<ѨYrϛ>6_C27AO$ߪzIk1ʹ.IzpTyt_Ou(,oet㟞 lwC:MtG5(s.I^&+MFp% Cy"K':_?ѩKoȒ@mj&(.V"hkE0H):32_r+0$.L5g83& e<LoçTw[7X2#:V*[44t#%NWD)¿M7ʾ@8[_滪n`T](M 1GtPgehTp4[ʀQr7#]n|n6 ߶_?MAh;iAq$t"L@ znꤼ=MLʼnÊ39kVlAOW/{)8AbӢL*6܁QTkզԈw1S`m.9ic\kPe˘E(& &%-*ɳTD/f΢mZIEkFY+#|vubNe7?˳p?NQQo,X yLmMzTш HX.;F2uَ%E|fFULQ]-8)."Sq:Vb<:0WACZGb]"\ѵE:Mݼ=L]kLלcAh]g7zpꛏ(Bg|kA`a?pI6&W:΅䎽J}pe ]ɐ;?ۇq |kp)g58zaR3|[?"s* BJ A)_H#T%S#?GdMc<5̊h*NհF/j {`@@lչ{s] k]-5E.JҘ[r0~(ݍ6ſ9aܔ-$Տh^g0OZm@&![)I܈ٳj`Zs{IW\X^ɞ|;51G$Ќ L3eI;0 '$ z:Ra36+ p16n'k=(x L BXљZ3n{uy)d͏Ҍ;4~$[k1j 虔ڪQLA b`їg#ˁF/ooHS K @N+"=9n[y{b:% -}B{u_BXǔ:uFna` rnG&>ǒmu⡨W GUrr% A(Y9Vyƨ `&'%@h|Sv RTC塯'xDqwy!6;YiB -!8n;lsA>կ9x :`ݖ++1OIܰbo#hhFK$ϰ8N# `-s/;1"eHɄﹺQUlhF娅 J7ԾԹ>#Պ9v!vvrmBտ?$"VZ*fvbQ.H@! ]DwJDEpyCxQ n<,`?\01GM6[hfe:D2'GXcm z-9f>(4%h(#%S+뾟I6*AG>Ȳ?3}q-0ƝeUo hVn4Qf5\&,!ǚaK503f6t2% sVf#uÔ9k,/޿4 ЖYw']|drSZp a[1>YYB*>@ 0:AAɆKV߮*R|"!+WxMc uf`BYo P pq^f^w̹Ny}Y!u TXI&XnOƼtJBs'd@Q4h?E] [or^+=c+ uWlVY]rKWhKroN@fį+cwS +k^oc7$™ξnKφ"bd;DW56sߞozZJLU{M֓ SE67gv@ŨRݬCr0`jem r+P=%6D1I̓۫!ŲQ@ 1fԡR~L<[JȻ$zVQ܉BQR5 "P ܚ4~{c&jOok^ mFx5Oc01wA ұ@4Sِ,rTA :9r\XYa=@_4)OlP>;S$a2r}b[{ig7%<ZSo&K2I)ԫUw-L5ӝW4}G4ZUdN]01/gGҗZE$OC>?p‚K~ve,!¶b!=)q C)Z^8k[T5jt2~-'%!cȿs#Sqf&rSKڸQw_U(I0XP'mz;H'^KOMP2[+O߻ұ GfZcD:I;if-̙_zQ*b>[}rE+$Į=rI'CxRB}p"'CD❭&=n~7 yزFI+-=RotV1KsvYHvDrzlZ|M%HFԾ-Qv 0v}\xg:L4=DڪV= ՟ش>޺ ?v2 R(A@<cӎCWp*>w()[Kk$)I?^t<8(ReM:yMqRȥl=~rojue10 宄tz#W /Ǣߴ1X694~0ql̄ Y22,Tp "M40G*>C&`tf?u>5-= (++&f^ hE" 1 EIYYb#ê6#N,uj * )xZiO$!D8Pb"&%I},B3X5@3άnYcX?@*%=; VJ$BE}dp1qu*oƚ+ n\':ׄkPASPPu4.F)r]~$'[@H8<|sDWp^@e/_g$ҜM؅c_X~=pt¸=?!2sDC61NЪ0Έz&iw+sG-'9/4Zjd_a=$Ó6lGZy5/ryR{F%ܙ}B@`iDlf:9Ha\T8m﫫n (>*Syqu'BbpynP,6_B=֚lVУ>r'CW,hh &޵R`Ҳ_![G3H3BE"S +a>"mF9br{2f6W6f%vy װjhYǠT/,VɼհȋӍwC#ܷͦg-E\ ̏ TU}\>=ƻN fE8cNy1^Uqpa/çׁ\pl+SnN9R(%{v5qs'WPbMx2԰*'D!!y~rL^a0;:t?K݁$>jBxb`u$ZC>L<U1QDD.ifcOu ""xP$qDKBS|?췻Wĥ}etra4*baoZ^!dc5b,p-n^hf5tAXdiegVhun#ne(,Y<&iϧ%w3V݋+ߓU;?z4pS_= Y}YW쏶TE?{ۜJY[piŏVc$>H8+Ng1'c ?Hd-vG }8R1('{r "#E!WNeS) G 'ߝX޾th7e/NGwcN]Hk QCf|Q d6Rw 9JSzʈK LGO#yB lWiZ;l/ `E8I Pq#29nؑ/Fֳx] > YF8cy5MY> bڱHzy0ˋ͜>cK/̮`Dvnd :`j E-A\lhN?z@-M#ZCMU٣wB5)K6.6#ېr3YdAGg8Y\UuY?k[v>Hca: UT~UEGUOm$ (&WQT h2Njv?\FЛĿ,&=LmW;}]LImfWc,QF$gd 9K5c s'S>M- N6rUP?D])<.UU )Lwejlb+jg§ZH:q4 {v5XMCQdNP2^s~ _غ4HlcӱHTz1P%{Pз7ꋡbqZZE { ~fzwPKDE~raV&!eΛǵO5fd%堽Ds kc(m?F&+PKv?W& gj1t&+Q &{ݭ'j: K}p1#>yuBM[huR[iA=ycF<>ty7!o-oT6Y/܂ T/fqic+},Jyvw%DkWLMk!ܫʣr r͓3.`JOJ|;ؕ #o]*UߔDZb56Ig8VLBiQ̀1u~W@ fy~Ҧۚg[ŵ 52>0F4>ͩr0奲/xLjʓHTx?ZdL_q J~ FSY32U'<K:F۬ȷtX4{Q5=k 1:҈&rM%f3x:QBKT(4C?9Pb6U2TX epYZllϑx:ucV kp,㗌52uն~ C-Luޏ%b5,t:!mru7 VGPZz Jj?V )'%jTAg8XG2i;:~(ӳ<ĒwƾXߓǒ25tМa Սa®vo0`%(Tw\‚ cq͓hߐhՙ'nXS9Wze7:U `mu$1Fw1F~G =iy:JJdl ǭ/^xkjk p45JjmwQ(@qf 4;d~ ~tl\3& 3{9}`Mp RZXve|tL$q]k#7`P,Vٜͨ> oD<HQr@ eFVKNǮ\۱]sr~·&~lڱBMIA>O@)hZuO,t^C t˰ׂ{(f+=awW8GF5+8 E)`d3F"܅8i|/qr|_>eB“5]d+&/Cx߶Y&& R|?C#( Y=P`:肭~\闘I-!,MyuK$T .ʝXhI1e%j j\ޭg&NP򤬛9p*/틧r=Tu%cTٗb0}XaMnM#ڴ(I|G46/mE@T̔f-L'g2'zQF}#̯oY9!(拴f qkhYM"qX,n&P)/i},jr_r6_Q#ZlS. :QU 0Ufڑ}n^ 5$~_ݳ\x@ɭՊ,Lh \sO?)3M)"I8bwBtñTȪ>YX,0GaNIϤ @͗08d4,EN z6"eY-iPVzn~\ z(gYͥ=% U4kSuPIaͺ~hs G[p--#qY"\Qw N>V/f7D邽`M|>Y AK[m(5.ۉ7 5~S %c CEԚ$'̵x /7T;w۟dgiah28xm*:u)pP̙6#>kq.I5] |O% ^vRl4/= 0.чp(aWDC0j? JH F9P|Ώ"V/aX,>+ De%hI|逌"hBvfI 7oLoMlYʲ8܁#FGP ol */wAU* 7҉U'Fk~N pml|WzYf(sD7LVwЋ52cVCőé` HN82" Dط;ĨIo^;DT"Au"71NlʥP&?WbBZ^c$(KoP?:0dxz!a1SQ̣"LH\=(6YHQ76leW[1neLXnp1GK90 ȷ{y;''ǖPmr.vuq Eo3ͼksGxzѦqCo׮|iZh8E@4);J C"_ԫf҂M)T+_̎ꋹgzcoTb洢Y_oFSjkdv^&/K2 \Ȩ8 Rw.GXz2`Eq9h<-7 ^;#-3lԅw<Lئbo L&EOdf*@9=\Qź$yòh8DQ`?3woMXUh84 gщzy QC%*sz@hFʮBn``_wz*hBs;sP 6VyV3n -j8iter6Hy%:9d[ώSنĢiM9PzEVoZ^ع%IURnBIw]e:_(!7 1 j֎<~_o]Q<\"zy@9F|OֶAn\JуsWXDZK^ds*hMV7':7] V`%sґ9۷q>]}Oۉm>mƇ8ׅƊ SDfGeׅ nT4;̳n y:=F9p}I.jHqx_UGY;1*~Lʐ^@%+LO~s$qWY-㈤\ӥ󻗜,nPvDE;,m!?C\RDMzb9|C窉ɫM_SKS!W댌YLAG[IЖ5?y+j*uTɝJ[O1X(p>'=\" tϸ_Syj#/JPAy^R՘$KCFdC&8{zlVyS9<<$uwe ?*1B=S̖3x!GIu3X/9del퉛4ne y9N|F/8S{p#Akuvy@(K`*G!2bޞ+TF2bI4ٕ>;G0cqF\c}lzie^J0Z#"ۊwT%^`~j[^@6C3%O+N%8v$ @ Y&'#lvjv hYႡXN &H}SRm#x$€ϜM(ݨNM:}W<`bQv8U)JE+Q8m~ydfNklQVXb\}n:ej0;jLJ.HbAP ePWJ;W7 Ku[ djZ)#p GNgw5a֬Nsc~=L%|-U%+5>zSzܗ_#8*uN<1 1&LrP` CCv~6)_ł>Ԩ0z4? ڀD{o`? ϛ؊1|Eyðk!響~vyCz|P b o.[VnKY @Di(ߣஶ(=O^Wf#(!7+ A;RVbJ]j9!dܡK7# yE6[ 0jadH4=,[m5!4' <_Sޔ5m$zIvk3 *Ⱦ"LZ\*-OgF!uс$4څn ޒ yEgr}oP@Un1B+cį[N*0(Bܧw$=ƣ(1X/Ti0]{y29eκS̓I0Imx6mkֽ>P9'Ui@-? /-7=f1M&n Izȥ5W -ʢ^P]vZ [ z5 =%&TP8t CX `G:$h~֙((^_JuzjJT',JO EGt]! ,H!0NG괟a3v#hpї_4+g!N7R U)!F0T w%prmRZ# )idwĖЯ/V<9C*g.1wlp.K_94MdʠLLdm|27}lAK ې† zu6RM&Nj Z~b!n~q5H>k 0(39ڝ 󞩟(oB?pkH)b OnqҶoQSAOI%,>I}VR;}L F B50\qt5^_5 X_܅>5CҙmIHJѮZE('tDY2620_k3\!/CK,ӁΉ`*6 >EmS7i{2Դ5F71bq3H=Xv.X2^{ 脇Qֳ"0N kȟ/T[9w0OV7舢R0q_ųo8UZjpO:hfVZ.|+5gQ1ˢlAyq&ɝn/U]K[9|QB0Cj:Ӵ_k!MbrxKpqDfeT r%n8>,{CG?n*@ݹkb4oU$J;'2'"y Dhc |c+~OxH"l#G_IȰ-[2}NM~OCs||+hUT$!~'3bivϰ»2+e ^̀0jiGzIPY(_fp^f/'X2ñ5YY-jRS$57" +OSNɳC`$ gW+qjulu]+Q.%eHL .2k C*|ʾKU/qt0Mst-/1ٮYI4z"8TX3 )(r&1+xzuNI[D>X́1Ndž$:H^cp`+\xhlw)p\niS\GzBW iBD&n N)Rqd̮`rVE4®ٙd;4Qiu$lBa`fp[-`闄NM*Z"1ÕU1Uz\~zǻ}96,V~r m.m{`q߄~>Bɟ_ǠlcdZv̤Z$gUt)eRzN8 ƪZmcI_/߿.ʾ),D9[(ô~ga.9.nЁ* j3UK3ף~˟GFu*?򇬆@5- 6xZ=Dހ(a>TrF_ga2!)[W\%1@룢Jdv61yxO˛% e z$2hɯOI (ӟ6ssP.v9.?\VTt=29}pS5&OVsV !W![O+ c0"Uœ,e„)bc0pG(FO꣼I$~z}9B7Rj,[\+HOI;oĺg,i j&sBO klը$5Z$&ʬSsv*N3~MY8!7ZHJ]}:]f^Y;@ 1EY{پ@<(8[eϐ_GYKjfZ%Wyԇk#),8w|L"˟qh%/9 [wrX_&_[rÄьS#v0ثKT9!GilޡBF#ZO=~sD$5h-[^uL2$b5 %*}_Ȼd&Q Z"ߺjzȵ-d|J]ZyIuugy5]_d޵kgt.l)|{rd- H璧,MV1+BZ:YO8B 5k[jpbEETQnIIzNe+zbHu돺`[J&߹`#h|և|N18_EQ#31tf 83 %:ъ&ڛ/6-'`dǽ]q}Z'Ą{WEfjAg c~/k򂣣nk}{&nG MEd,ܽg13Zߘy eJ8?^fAz]f^#ḛөMR ] j"fh39oS6ͬ{zU39&vO,4J2r}sgd뉠b7{NA[t.YbQ,Yꝟ `eDt뾖WJ$|q.3tWP=Vì:(bׯ-iP_ xd)f$D>~իe=ٺ;,}8tY?_~(Ay=(vF|3߮7F8d%#pwm6GFQ¾{hZGGN&ݷ<-dh >=l/@Ʈ<=ɅKИzj)@a7خ {ʗ-2\ d$^DzCbǦi'Sd pB٥~/\0w,J6 +W]_! 'w0OXkyߎ,m;D][Tcoo($@˳Ez_`1|E/mO7 ba[R%zSV"1YUc2EdyHd>䣈/)w g+؁;Hd^^-x6*bO-Jx8KKp7mYDXSNM@LNħ z$sw)!%(.fY;azg^uqjMyWObZ)`^ɽ>?Y AΥޒ-g~9ea+D5Fvg 1.Ul79jqzU)<黥Zǒ0yՔU83IȈ˲% N@cZ ycN/PN#k)ڕ]57hFv]tG&lCMWr+0ӅjSTOCMy3{Xq,ɽ|6Y%A!9% ~s,qaHV40C4Yܓ015]ݙjSgWr`7(5 |W,2T]:Ђtj7>|'Vԗ܅Տ]dr"b` 0& "SY8tD *"1jo逩z}x\PP(>T$ 4s}!fH?\sB;~aG:`OfϘsj.ue. 9ue@,MO \1F9&mfi'z-ҵf12Y \WmIDN8s Tܷed&ծKo=Ksƶ/X02 lT,r9fm`]c[_m^疡YĔ;dmHkiW[(gpk}o=A]p'`1.@;ȹw/z:$l tqրX-B2 #NjKI ?[m3uǫ0yu!c}<^w({vnT%+).h%wLnk>(unjv[^.ST\,ʹN#D>\Qf3KmHXuk;`%kKjF ?qI: ~wy춎Y竒I'q*\!(2dWg@7@/%}`Z~FkzF,93X/R =F,#-;`%{y^,:OSN_βdSݲ$ 7X0#?GvƑXGxO{=(d*@X8t /̉/LZTXY‡[,<Әf{BjJFOE+%w:FK.@7 jHO`_^?^]ɟ 7~V 2Q*-x=`4J4D/_ԓ]Apꩊm# nz[ F9)Fȓ C >ɐPpjo`FLneكy13w}DUw,APyE_DgQ0O)~9"1y7NdG>խ[XMd؃"iua_,j/; \De?C?mŖ$EC~Lܯq(!EgL`a8Z( riO Wr}iNY:a!iS0(ݭqޓqMw*x Gz"T3\ -jFKO6)VQ/r}u< ZS5ė!^EYX#/Af%?qmh8'鍣d?^ pEOR-r d7S1 _Qbf|i!8:*]SHtNe$ `ɯ1 F#ֿD{[h3odI9;Pϳ2?өxryKrqDP#؀ř_?vNΝagH>{lf_'C߫*2 >ۂ 6OaIBC0PeH3uB<#Y؍EFx, t sAf|aUeÚ+M7B%ȋ@FE} [xFEۃd-mA}U/'[κEpO^Uة-hs1B9=,5xd]_&>cPGA׷3IJo11`nAF(r܄C`5QO}"ϳEMBn]@Q?ߤ*KX+Yk.ƺ{yI|"~80^ʅcbۊPF2Opr cL`НBoJ&sRqU5_0z6yH9Liգs7?dK2jRRnc5_ )CG++fB([/0Z9M=LޚZfaRs4  g>#Y8q푭 KʌIV2T*DEðB0vB]޶LUaN=PޯR?]:`᪛Є@h뗴YBͽ˰«u{yꂕa I!N A%Ġm~:r *tgFӓ?{eb?a/Djη[<OD`iatCXTz%X1TJ:4.%%RGμQ8uupK;{H!sW4\0CvCt繯}> cs(ohRU3<3]]gx/Kk863?U.*ɦC/wdCY!*t-fj̠IH~/rKhOGc۞AWhO}kSN>\] ďjQYQ#*J5%1f]{ڋ n귻lN0C#չU *?ZL:wjhD;}ЛvOi!sǦޟX!% ?E,!uI!RSW7-mà%C 'jރJ3Igv9/U*$w칭iiFz=QriʏI皜T ÑZAS _~8Dn/diw){Z]j&9BiD8 /dgw @gi%8Uc@m/M)|gcUwȺՀDWe_E52fV DxEA`g;2+|(ɗ@R(2-~&Cħo5,1MR ," r_ Cv)݈.t+IR{|`]9 ~ZV{00^p,|9鵲h6,cTݼw>&v:*o \7=ͱQ9efdcH_906' WJ>z -&uj2X ߬!r9ڰeza3'pacKA=FEߘJfC#uҙu[p?ͣ&c)Y\D ?!D8/|H,/j_M "eT7^lAhGw_3"sG1gS}C mBU!HGr~߿g eg |8eJM[̳HNxvک|Äu8꽳 2lRR%ϋlLSuڨ( UV$< ~(:CJEaD9= &{w=[*y3@[C =;Lj3v`)| Ʊ.opP/vR*! 6fߍ% {dtLæH GN/*Zx}ŃVQR&W"#U/>fѥÌH^gV~- f82FjZLOq2fCd=E&[b{ AǍ8E~]P 5PuoW=t869vg\^|?-Ubo),鲥a(:0f6~_X>W2>Z0#B:o'Hm?)^RY+ ~QXxvr<(Y Cv C n!64Lbhdg3f1>zey@@R 1bTܺIԭD7<̫)N$Ȟmvo&2'o%̡#`̧ıŁnu'J~}䧙< 6ߧFd\E* r@Ws _L>ڬ`HN*< `EA{3(ӪG= hiQDbwY#D'+r:= V5|Iu >3D0R]]Ba/\F+#fw8?!j(N0;rD+L }U<PN:*AFĵ$Ye2NQ_,R;^a||XUAI>\QL %ĩ(@+VC+*٤Dg: d/&n'+&4_U!qlM,TT _r! a1q݃U@\%M\ORКwLy h dq OF[>)`8քZ;]*+?.o'A#- HG"Icv 8Qo` . `9z.Uءʥ42 : ]srشq ԌOT!M'!EnI !;+ dlZOIgzf~.V\u]9@iخ~tiC 7ۍ?%4/Cb",p`qR|z?d+s'&c9~`G&! LAə}.Y:؍yBe ]/RsN:ވ7-'O+DVxwHĵy\7֥hOJS=JBF8 rW7%EG=vG(A8 >V~\P2"TTީn>DF麖';$OIzLob9`-,Co#i=(kD&)=1>pc6HٶNlg^xsC]Hθ[fxνGG&ME'S4A[rs(I(>$9K<z~8kjqOC ߳$3ڧD+ϞusA[R2y"; ᕑF^[gU(!u#|u,v6pX~{J9hKrgEg <|MXxAs68Pұ+Hӣ/w;YhOó0w' I*] z:_1% F#RJ2$`,viUD[:Y[R5 F@ 4r{XoMZ-[\vRi0?MoJ]ުcjʲ:mDkxa^b$kk)/vXVz(?6hr3?**\^6Eě:mđdz|N]s-&[q+HDw9fzI!n/,0 Gu!V;FAٱOhxQ,>jtۏXcʃ7c߁-@7w)޷>3mǥsd&uH^AT@RkknO_yTc=; e=̬;y'vzttP㵛ը:RSBdJdbv;8UfgG1 ]-Тwc;i% Ka{4?a"R]xYJuJ/OtYELMn1Uk(~鼑:}'釀 yCA ae7 BBd*A~5Q5~C3nfs]PoOL(U.sW8b$Bv-K,c+:cMmR#>] 3FIdk72gԤL, GKsxo7ۖZBQp=!p O(HɑdNwC/#I\/&E? **Čedy%9Ď+FW!Ķ?{;1~yY<" 3AfQr'bJ!ē| 6:AOJBbOo;SqjV$"D?yUV{T@ށ"7pЦlyeɀҰˈgcȣifB1fSRɭbB5pYck3ewoW:h2VԪ'Eo/f=u: PfUC;Yt] _lV2cCQ3x Lm$N3 9?J/쀆6EnБ"2LOPz0W~bD!\$kp"0icM΄\&@cf%5|Tꒅê{,aoWOnޓ6pf5fΪHMVƏt4[~18nDeH]UeJeAfZ-_g@S:DBղyEN :B*?l GJQXN0nD_V(K_ڲ Dd( 4=5y%,T &,34WZ91A7Ē2R.WvC f%xp8(Eŧ^`$Wptg=X_.QM! t:x>,Z=vpfh![ )<wiL4Ǭ!ߒf_ɿ%S^5#1Bx %J~jox\WDclCtDQET&S2J mn)$j'] ]w 1@`9LmE"bD6lK \JD4 *f+m2k6A d6/(Gl+L0r/,w{u~UD{!Pm]z(@eX{R1MujC'kAz?;U@H4 )wkzG=gPSsqe6't̉z"VA2Q~/ W!ܷ4)ڰ@8(Qy9,d|pq\DmLr JLYd`,)~n"DUI8Fh:GdA=anCn-^aɕn.3ȲZ iuxL/_^&]A!JBw5Jk{^7:QrB_!Spge+ץ;qWqBA [9}@4pN}-[U k`]b=ʞ4L:!| !=793w^ŞpLQovKtѢ\Gj$Lg8~i滧ȁz~bwTfDrַ=d56=}zIIɗQFXJJľV3lOxV nv)˓7bxC|lyDū2>,WS }=Jdcgjc=ĝAةDŽ] ^LqSqJFIE;\+{su#DJ VSFp w3Uy8W"M,4:N I/ =[Yȗ~4٧qQT2 )Z/%sxz]9x@}pKU|+t.ڝC]mfs[,Έ*5P;z,1";RLޥ=oH[.y34{m>ף4}J}c;]bwsNkX#@a҉L+hC_\.{1\ju6\lJCb㌁zF_іOx/(e_jջPӠ|2vs}9%')OG CPC[:qV]95q&_у3.pzsC,ҨwLhP2 pI%md>W Se-ܛ⣜ec. wcbk:~ީ,]:/h1u9zn]&J8/荬-~[=V2 _0AU#F80M6M1udnO30CҰ1}יI57@M]nR[0WGItڴa tچ\-IrA JeR\d ٞpS=#ik6QdqT{[ [*r0@&!V"5׶nyJeB5|A{>vvYH{cM%]{81.0 hн`d#tgkKLpD"vm.r3dZsT-eBJiV*9W=5 ugukr^i\Y#({‘rxeu[MA_R^fD2!"4;Rj8qK)"LFx6YXBapSf>Nu ѭw?KD{$7d~F&9Ci* "(Ḫ@!m6?Z"܈4=1FُX:GilI0!b`qL~؞ro}9'l!} N&Z<U~,CgAV,!L"}MJEA_ZζBz jOVQQCȌf}Twv #G':]؏AXnCY~Ł9ݗ]{k gxAr is&o UXb5l9z6=3=^wa"$&S2nbwߛ@dDouE\&e}idt6l?\fEmAɱmSWYL8"a;Gёg܋7$VgG[(W.撾Kݲ`qv쟷*2   yL^ pO "O .j]P{C8h#$8Jݾudr!Zs«-]*q=.ƛ4H?"w;q__H4x!,9ֶ # {5,]<$:6 {v } F jYdDvEciV 8g$rw$*O-`LԒHk^USކj&$ޗkRp4b3Vݓ0mMޏKEJV%27j؅% =~xPepwKk0B̸7YwEV3K&Ax$T8SOE΄ "ժU=Oq^y$+U7P(*LoyfN U D>f DyLUC Tiީv;%{\j.+jy5o͞/ҽ 2|7Xlzrϖ]CÔ+^" |ƄH}+%s<<}U =`V;=3NZ~爽LdBt9q)C!/\pikH<ΣY1F@nxC$kF83]9i1R}8(yzvRcfX1e֮zAve]@۬ډ⍇idS`sZ)MQ!CZr@:%hRRBDFNǗb$NB7gJ 6g*!$YLd c0rCV]M=|vQ:"I5}CCI=d"wsEVSD@*dR\<+kG3JS7:}8#0a8;ŋ ߗ_WP#+ayUҝٚP ʊt>Hbͫ'ʛх`u ޭC+SСqybcmcb1rd=gGW6EIV "jLvCtUV/`$`Uc 1%>urOkg9Fm/qH]-grgPXQ}V{P­g*peV'v.ə8 ӞťnH/ h NS [0 vm& Gk=JkDm fPGY3bA(/P F,AjW&L 쪐;Q:ͬIVZ/ r>"3ź 9I81%A'")aQ^>A߫"e,siãfaA2*k^&6@ç|ЉZLoyJ)̏ ::RոAJBI~ &,p4wmQ$BauHC0M}p1,ꟘKC?߀8MPe*čZ;\|2g&w^\ׅh2a6h.-*s:>%X*$,] 0ڒ!՗&|cN ASoJk%>=kweO͟|q kyK-3zتJ7l7uǝ8g@Ux8*N-`7, S4T-iyѰ0H|)| j<вAқ*Zf՝~(/gFzi~u+Q/Ihr6#BѨwD:]͇N,Դw 5kުuDJvhSAbn[}'SRl[b."+a0FzC$\8Y$P9Fpe T\t8 =;̖>By0|GQ< p;n>% ͡q)l| TҶHRR0E,3Q=8:6G]Ӫn_zȟ#D1_ʮСҺ ܸc7䉀qx`}ɿq(ALk."caOEOaYOvp2YZG@ړz)t4S`)B7U8wkv=d1ח- I[2 ȟwV^14ޠLђOH #LI]gt<*ۚ6)fa[-ՉZ W`YnćoDMtK/D6F1Y<4*ldT=mvB[̵/4Kb}p+,Э)$`[?ffh e>i7 -{AOCa8|զDkWF-%X%I r--.WÉxVy#-B鰔|~JL,*tݝ@/<#^:uw=1"!rB)d5R1yU{lIS32:T (Ln>K!Heia'UHhbKnKO$30`BZyQ娌l&3s͗]αBY,1Vd]iȈޘv)br+`Gp=VL` pHȗoY yX:;3`@gLDysWC͚hZZ*Tg9ef҇im6Ĉ4oF|&h]M?߱A,2n*?CJs~å?r j1[u$Vv[ԞJY $)aI+;ϟ=VHq.o?>zke/ Ǫ?]ZhU~ *= lþUd=zB 7 4J(3tdRLjx=QRp_T]\Ǔ/*y>ΟfrٹhMg򓨚;n=x5W&8A]16vC')ͧ{>֨.ś8A0XSaZ!ʳs)WafSQ>m}ppsc$e I 2rt-C@l\q蛞v"+J44YeZ{~E GfFf_EwI?HJÒgoUNI lk Pp( kJɗC*.qPb.hkD~_҆^5UM_t6ӻvmpRO1/+yms  Tr{2}XZiM2݃r;MZY=@z84JE=a+s>1r{ )'M3Y/</S%R7x>x'ŵI}~M?E] =IG㼍JD\G&Hj}=9 R†#N'4ϙ{>Ъ"fPa7^TDH Hh*\Aٻ<م'>Pӓ/Iў ͔.%EИxHSRxg씙iхa=EZRuII#ð/ghMd$؝TNYဧhrBl۱lY1HXꓹ(EOGrxm⭍~Na{ߵ\m8^o6wU`<@"dk?59ċwcbGHqX0~6"ͬnozhw>yӜZآ'zթ1EK3h*08iXIո2W#D}HaB oCWExR+DG F$B1uv;3jGcYiv=*g/V`|8%%&)tkYt^{!\'oI]<,'Ǿsoqt2@P?~qϋQJ*k RðW ITO DSjq{3: R]sWM6ݙ -YÄ(L33")PMi60.;Fk ;tض"n_`=ɬ_*G΁St"ά"z%΅($`O+FPRkgnN,SW_ ^X52\%էGw-̈́qL)3[% !vK{zh/gjT%>7Ԯ-Ii|.ѫvN!&!lֱӝ$tKDzd+f0dkx nynn*GݩdQ㺦H%sCr.~鎫/hpʤ7n2"KÂ#J/G|ͨ~}ʩz_NQ3l5pD#‚e 1YE U]@b2Vx=1/T$X/+T* m!JT#abWӕ:ϳu5RZ40 B~M7>V޼{K`.wC CcZ]]a,&hA\a -.o;Fnl]..ڵ+ e$&4YKwr.G@:!Kc EZڿr;6 'd%D:xY6}ճ -fyL-;z, u_|٢)Abجjt٪/1dԈ9[pț= .syʈ_SkuZŒvC u1Ldh1lrDS,FLc{5Ph*_ʫ4\ur hQ;Me}wX"I&>Fi>I>ui ABtytr킂ҢPB5 Lod,c<0qUuj8 sGSpIlplyGx/N11h#ۑx(ub5Ue) 7^Gy)xEmTf5x'a|k8\`F.m(H5;9~9I+6Qt 1Y2_ f΂Lp@,GudDgug:,ƏTHSbhM. =yUBI'70UJgGy&IF|7,5IR-"/V$9F6rrv ձ.{`7Xl_ڧǢGĚ8h,)< eJ\V\*3 (w$S|~lՇp=s`rNrHZLbNkb23q5}GFSq as5ɃGS*ny~o\0 t ;f{;`?>:{N A N{8+gԩ}SHV[9wCێ7he8ޫN!Se^(p BtA2i_m '$^q;1oCpYvzOz~Ne"݃u}mxDyEkjF݂ zfq-bXBF>}51Y_V0ĩ҆R[QZFѾfhY7 Oi{IE#2a՟d&KWC(ygW| `5wSp ޞo D̸8{:ayg TAcP X(b%+k*}WM-G?3Lgr"l׋u,j5m<tM@=&UF@Xۮby쩺ȥm\YZ,՜DKn] k{YS<]G`? QSwl)z]|D%ιOE.c])344\\V#I8.6?ΚM4l=̋*Hm-[r"vnH e|2=%f-'Č$|MT2 y#;S`,l-8in8I3}x73A0tm`U'X(lkIWSqحXfI]>Xc[~#zjo-aÇ2R5 ,hX;XHۇz"6l+ gЃص˘{eAf=  &z”a x#1j*^W50**7:h/K3@܍̦6ALe)lKCƣ]ժ]ǝFL#!DuEmiXgT~ zP)zW_W _9] <×wM:4rUo4DcWTԾhWH\<97IlԯynGLUwWALVa^RLTUh8 l>x+W9hMlA&u.k؆T槒"xY@)l@3zڼfSD@ǐ[eM^M[f5|$} EeXYڀޝʼHZ-`2LϓC=/칏؜ݔŨXv-, 8DqT{dWKkkJgjQ9uNSflꌞ~e$[d6Xp`k"KT>ai'M(;`IǫlŖgP/ћ.ONr֦LG;}fw,.o7FqYj!|v5"H*]hBgs+֓^d_~ {a~.̹@Z̃4E(7W.&qWMю[y0Y06'~ ZkH 9:p{};JZ-6m[,E7b D7_q R= Ys3$M/gNFAy1췎8n9LÕNV}$9c4 ;LR( s'@ɧ$?(ԮmӍ<I~~{=y{ ss "c¶% p\>\JYBpirJwJ3(f8dяbx ϋo9WoF)8JtȘ=ތZ-ZhnY]=V -,<\ؑ*rA+Kc>$>Դ;4$Uy&jh-OŸQ.!'"&2iyHAJ[z8m4CTPҞ 1L(A)bChcvP8)Dkjd ڜiX D;qe&"U@ď#@O= Hގ{Ij1sԸ]SZ\'ui i԰\];( J"uh=߾agdՠQ\8G28;c"\yƢEi|c /3C^6. b'75h6MHe (vme2T\Q{՟$wJ: }ʾ f-Qh~Fž VRr'tAM+GQ=m%N:mm Z!|[JfQYQ)h[JD wm&XђxD$ۺ\Xv>=Ud8&BҼF;,ߥh+f-T֎&'n@Oή)+L{F<$Ck@2N`zJxfG"?Fa"sM#|L%X}/EJÈxX:/!6st"BgyF";,@yn"0˜-2{zWxA͋$i->>z5 *T]Q{l"@&<ɞp\7F@IBnCʑ1OMxUYܥ\/vc WH;z}pm5SA\NSa7/Ǜ/NALt%Sxۛi(] F| DWxbZ_IMB1@|5 eϿ5X驦R-]\3._B|Y`΄ NsМI|G'#/0-wkl,X< LHd)&_~%{Z,. _ fzͬr-XfUbGxLX,Qdqlh.j!^ 5g_Xy92afֱ˂XV^1醫Y'| ieMCb.BECMs%3hؤ8ͻmC[p+uYRO7+=ɹEA.A%ȿsG'On 5TVsޙQVso\Ӆe%E<<g/š9x7XX<Ћ!{D\'} Lo2NwDiqtO)N63d267܏å)@;=^gF9)$>B秧@4 \yJ]sX%ߏ隣]k IN~˖˩Z' + gSF }IjW?F7ѪJ]\]ͲUDbɵ=hyA_ujkA?[_ ,*uIng= "N~=c:6z7 l]*Ba? ⎧AĿ{R%GQnVl۟0L>[Y.fQ fQ_(>=[LrWvpg-b;V;oJNCliXd?!dhU0h.' "04di!~"wp׽5EdC݌$5$ $`v9pV*[@j`aQxnq#vfJw˷V^^6(\n/vF1T6E(c Wo\.xk.vYoDj%G7+$h-A~ʋX[6xXRvdGjy8wpP=:  * USvE/U\sV;&i.]{N!y4E3G,^Ŗr-q ڿcՠFu2): GלӮK:+7bKNhb)>ï ַ8PM70 oA'6C3D*6JYDIDeҚǼ P >O6}oT8YJ+^ DuZ :KV0VG7A aDb#)rb~ٚ,j D@ϚŒ$ hkٴ='ߣj}+*"rUzز%|;Q6=C)MKEW"r{`hj 2ʩ,M:Dyj>f B˷ΤpwQpD0oU![!$.>jBCNwf䶇zbyqnI"L ՠZjCa0k6[T7땇L$t>;ra \h"KJwB mQ*zG l]ONr,Zy1(j CaO_V{Tk#;_Ei{%HW.Yh߁R(w"@xۚݰQoJ(+cZؖ l P~2K s!^=ᎮsጊuOMd f WZc3R:IR%&uWEAvVt*ؒAk8zZ#Qow;<L!zqŌ8C1C'j7W<~hk)'nT%9l[WX\9"P?ڸ|\6zӑ HvodB?|'9&C!~@[,w@3"%7d뵟7,Jkُ[lK%!x5'Ay?B'8^nmhJ!27{zg@P"?r]R/̣2lʛοP6;α1F{g]zб[IQp#޶10:/cqQT@f/qޑ!yd>=.wƗWaAj@ECPgC=$ŀPtQ0C nlqBJ Hg{%vBB>"1:`8?9svا`U7d#nk*ߵKlU8uUClo̿rZ>F:!C)D_eRlq 5h rek%M(6#T X ZN`tǶx!)؏,UMS3\mǕLP!5{1Wiı%- hsN[Sc(7jO3Gѵ:-5|4Ft;4R$ ,\U_OGd8_I}! ''.3ЄF"2[~p_"-g+,Q\ : i}]Na.%zxkIp'rdL E/Gmwi~HFwŇ UݧR8U(hرiQ2oR%-\yq iT@?3j.+(tz_\c3j,F۱jB/:q#`KfAYI@ ЌBiy:==@& `4s{L(=D  "+5Y䈙l94RS3rTYo[=,O,DX.tJs"oNDfx4S3nISe~wt,<1 u+?zw_ՑIG! e]E g4 ~rdΓ`r5 *I %$N}oAيPoqȃoz>ITny-5U.x$+= iF*j6ON*7iIT٤``GˉZbF 4 XMs 9̥y w-. 7($1W'\承5u"M r{  rS3BLDNFcI5^_eMf>g+4j0> DxfPK<8g?}LY.2X&*C-ZqbQ]W/ykgT:RjT^G.9}1< ~Z>0V>U0- 0jgX ؘlDU=A~[aiJNi=;o`B%\q$ٗߚߙ7xUNqc"yf7lIKƲf7,IͺӘ赗[ zraI GH- ~U*n&G6`!deaUGB"<%v $U Z! \ ?cTx-O_G<̛.j2 I Ntoa-=k DKG勧0*)'IPw 6r2g8t*=r÷?BL@ya+*$}%ov^!Ԍ5YrP z&bY,b-u)+,qr~Ʋ qώB5&'<[MVH<+p=o^sq6'XnQ l:_ܴΔk])VH@W'(QAеH[g-FW i?-4XnTf9 '8gm4iނ2 V;$Q~99X^Q8QT! PB~'#*>&J {Yѝ'-CG=A9?pX6kL:>Rx:`/7|MnD:_kg;'n+ \1{vm,(zle=[bER% JI0Z  _4T%Më9[/KrD hNOR*"xƒ218ȕ(L:Yw!v5,i enma^\#rcoǽ;[NfM⊖;5ahcF1K) ;V'A*!㿛vU}Ŗ%E:$/hhL? V ǐD}`gBmq >I#ɥ2/LלO`~~Dp q'MT"/(ª\z7=n AAҦ OaRiۂ*ei7̎?1Yg{RV[*g-fjfs!3jH[Pnƾ  a5Du>;hكy*gGeH_Y w]EJŕJ=hҗ-ˋ>B$m>UF˳d{!aEzvSm4߽x{9Fُ 񧸣e+ڋDڠFEx(ϗop:vp oMp J_G*txl~1cػ*\k3wHoX! qA),*^خ۰`P(dǺΖ:;4acc}V+ |8ZRF 1m̴笙lNrt W@Xt<dyMÏ^O(+@i uzY쑱\kP ;M\ZcXm8BTӻRC mU W4m{Yzp)Ӭ#}E Ԕ;57Ⱥh:Pt%i\Y TL:|+ -[!$\"ֳ?UwZTٻO/߶P5@-qĹJ F6)[ ӥ\jΌl$,i? ­`CU~;LNy>qc} QV?r]JGSHW+bDӡa՗a86r]^**NHz`(r?N0Ʋ 10)VMXD)ts&p8xQR96-}{éH"YMuPUf\"^zydGA5y+AtUG靁,L  0ZZ= LcM9&7ڥ;^0&3n(!Gӄ3CĠMӲݠU] K3a~\ǣ2(+rD -[Uiis겣MS*c4_#D@9:I(RxVŋA3򨊈ӟ;#w)Y82Ca>DI_lIc,3Øs2?/5L4\sHwG=`1njĂKO~v=wYL,XP.ƈtTjsgߍ+o> ]2`Ŝe8,B3̢v0ZSΞ}ȕ}h<1 \zCp⦸zE*d꣆3N5w<EkyRzgT-azrZ±%&$Tk3qt>bnx*FS6A\J)w#CU";췬I"yh- @~[" syw(-KپqtY%5 9L5ެ\3f{:)<d4*F` Mx$MCwf^$W*aK왰1]d/YG1Tdz.QCzu6녫"o&n4!ip##=aX+ed53J^{T(s lug\?_lh!ˢY_hGaJ~ ry³ǯU vs@f} hA#HSRWF1O3!E:ojs(0Oif"1w(Дß]I {~!܁v"NK*#|$EKd.FywrHw)5;lV/WܒHBNc}!IrZ0Oh&th#"M$+rTӘKnHKy[>.0`PC[T$THAKcەWQ4_8#sLXxyM(&8 iĺpd*8w jҎ a|Wm8؂4(( LlhC!E<;OdE`%轉Vy7JEkzpb'gٹaPԅq~YFh Yvp6S Tc!9rOWrƻ !{N\?V1'2~Gxxu@;9H 6ȖP5ѰXd@P_~k̄0thSPt&^KCLņ5PYtN65N2K$?Mлin8/?b_PYmOT;,c'4gm_ DbHr:=TS'/Rt(~ x>X| ZCYUD*+/d\vLVte1_^b qgu綈B >ItbSp!ZZ!<DRlU8F %b'+,l֫(9Igp&tff}i,F PRL΋()NUk@ZpPr1)" I@ `@gyPi_ bX`r!Θ0 x8GNg:S10IV.DDA\>0,A=#idO\ؙA8t0jeş;B:ל|V#ɯ.5=\3)] 7gg'FE!Ja <=´%v 2q)'Ѽ:fʨe !R(|R]b//Q-7<~dm < ;v!%OzBt}N}O38δ"?%&9SNuz9MY Fv aZ/rߎ;ϣӤi N~?ϩS+}9?xe\*`wK"leEU] S#!$/G>azÍBghh?+:@r#'7Żjt)wΫc[|3,j8/\ odKa 6uK~Z;q]kٲ+Eϣ!Uy-Ľ d S\4#%7la̽(v=+="S@32A)ꩨ_ޯP=*s\!x}'eN0eJ q-y'` N5E@0_qkT+Cv|`R/Z!W//4gCiָtoo:Fo]kzkٙ` F0N,ۄi1Fjlr@tb[u@/T#n:cuI);c|?} XT{'Β@n紃J`=h Ehj;n91t7czzӺ}C@TVawՖgd*\OhU>Q[UN҈㹾 kB,dl:)t8‡!G?26U;%Hφ>gnڦ!]]PVW^?S[PB҉PQΨ^T>D庖|.~ Pe.EsTy3§pw1.*lECK܄],6;YUA; اI6+XHI>:%)9R=6n*v~,Q7#+$Xu6v gܖdT}J ME~Uƛ$TxKY25psVcG炰Lcw Nåߗ"*"GW1.Vؚ_BjCRٸ$VjDl J6~odD=D`2^F L2<Qj 1T[Z;eJu70֙"̶;|:_lK%ozLlMorg1Uct$^H|h)PX( \X6>>{Y<`e{ `<7K~1>1[xFyϴ@xVS# ]m/KBa%:XkX0BbW= SuW^CH(c}6)@~u!snj<-&i=HI[Uh-P )ѧPK-YYEcYX8rE'/F(:$s7n\ɱ1#O_}-L}*,a |;ґiJo2V8#NN AՅƀ0 Sw~8/xDqa.$j> h]Ud Nϫ)pNxJoRʼ'Q4k\%傼[Og("VD P̾ SB Yاp4 %gqAJyObb1k}qT3=ׄxUkxCZE܀Z NsPAT۝l5wWV8.qtF 6r,7{qMIOkƝ"劎lqR&g %1g_+,ƑuiH`kt$25H {4:̣U4KrԛD%nS2UY0O$L"2KkF/(1i[^OO[&ޖT1E sr*4BOk/ъO1 ;x/LXiJ(R`wX5r8ugQҸ*zv-y+'1;f/H[I-vdN1:.h ,lSc%}P |Py1}.tSۺ1 [)Xc>ͯ(|යF}JkFuUꑟcĈZM&@BD) xDHSʄŚi(@IU[`g#F^^ܐdwau_*f Q){#k"Tvi's>tloEAwEbx*Ai&L!3=xe}ofc, kyzb+A+Ĭ?-kNW+ i_2}p˱0؃="i  洺x g~VmGLO,4y M;>dk="DN8`;+*ޣкa v/qnXm YY'F!2ZӪaFE5C*g8]ClzlPfy[k,tNv# 9Xfw. *$Qs\"&=L_X*jb-̓;N4e@(dws`إTYWݫxR֛حC2`iw }Sg"=wr:=d?BC~!yܪ:sQV %*}W86[giƧ.Xݡ!0^. mx$}!*r=at{ʾ+w}3Kf+pOv]}ILQOQMp;2=c 6&`'*,c.G#bzk" ۭ~h*oXtjJ 62r+UMkFҩ4Ct .%X6<2o!Z阛Qn%h„>.;DZR\n bLuOu6+kUi>62+Xp@qy5+8 "JPPQ ^n[Y|g0(ݢayTPmczP_"xwLm_o[c:u*XK`#erdœvm'ſq9_ZTȴ?Ǚ]~)4W;r)5w:znXd3[0E5Qft~0R͆?{Y/|~䩦HD≐YRVmHdALqrIO@jyUO/q9P68Ԧ])nvW?D7}W|H((=U:$ZFSQOF-r Bg[)(=a_~АJV<" uqT7;#;.r?sOky902{n@q;~caKOI$m-tG+hJjqb^'WG)&*c%شF=2?l d6@(lJXTNTd+sJ +w1=gDf*&c(t?OCph" \:el1`3KR2p㫙m,U(''@v*cMIMEo?@*#XelaٖW|uh( ?oS&2olaP\Eu6,@]\Q89}jU"?Nս*0Ӽu 5.>秪9M[ut,$H)8ݢb9L0@VwU%7QtZV}|%M77gmw3n| paj:=mW~HBR4c *7BP-g|S 29oBl`)k#,C*Ԫ=b8 x]K^ńk&m.1hu2)$BԢ8xP;m$"l=@]@LyUWIߘd\NJa6^6XeCzR`3o;Ņc2ZPI\, eOW^i~O~)k±4m{}JfMˁE³TOXm*O(,1o >{(!$uW: ,W%Z㄄`*^mmuwe-Uv{%'p>I[`Fu*`6ⶺ0 5C9=%?ޜ_Y3c3KRd"+}$g1i^8&R=.`6C? 2reyg>8}w'LDPDY%Ō/=WF4|^Gh?N7\g=|[l9.|~:XIݯf d`Y&! DUɗxdiNW+PMɸuѧD/%Д(boYߴYv_D8QUgvXpIF'%h1]mKcbŌJܼKq3EL8獎(A~0D)),t?5l`{-c) o fW/e(=ĵe~r>dWv;F2 Ln~ҟl'Vk8)p} Pj1 ^ Y-j8c35/*=Yrr:˲B4dvA= (x.07^l&QyLqAY|Sȧ)01a`ZnzQe/R<]0CADZ;Bk6_ok޸q !Y[~`Ѐs0/꿁;  nI#~AZNBفZJ00 WnMX c" PcXoF@KþZDzI_;a^OGa~y =N;<fD}a'hs[i` |bkgP @i L,w͎m0iK8>z(^nZ 0 W菡7y"A:.ʩjr)DpU !^¯I))ؽ؃ ̋wz;;mvZ9 ΁dퟰo(3<fn:k*VWJ|^Tb9Zא ,ҍ7C^qϗP32O z,_pU!pM~F>{'DfgjA%ƋU +%k!TF"ܡcI踙Qoy՞c>Nq"[tC!-tBH)ċ&78"(vEϤ;^<7Ί?++lU+fX$eJ"4r΂D},>ţiN:ҿmBeku?8yTF+ gҲ\%8b5)ּH+* Q C՞0}!mPiT|#'Hj A01s*uث1Vr`YA5%#wFR4/f$+&G0{v ˴ OB' ]>xtN9ö~z{M {{IK'2o3GcyMpՔA `y,ItF ۶ SkN}?11GKV .q܁^Q_,s)q}p"MFT&D-F)Dq(eeFA#==ۋxgZ۷֋BO_tܢI|L>TKJA4qt ]2bv]J* m:a\64&rtV?U>f`0vamGI"R'j+IL=2C=~&;05YH`=TA8O݇jXCg<˔iޢ֯K7ؖy2!5Ңjvފg[Y&5jTM, /dDR}a K5\;m 𓚈;V8yY{zCe+=8T͈k;2BVF"E9ƻ׀+`8WڮcA88ĄY?c_^ |pUjRr̓؆VXG՛Є#iYz~Kl^Wz\\ɯNɮ "yup%{3"PttCR^3'۱ޠtlAIvҝS4ES/l֭[*_hS5P`)BCvׂB,ϣ-EldOFq3욒1`D"3TܣbA Ƌfa@~NEzsg3Wbz3njTIfiվJEZUJKe%~ߌX&vO 鐺)ӐѐWvc塺Z TF.xw, ,Xm ]#Q:M* jxGR[ a/O46 쯼AuڛD#㪝ïpGl%5(_xƳd~fE`eѪ@3ˋ'໖-O,Yitk4O:m؉J&B[ 0Z#4u1~YEf ~)Bg)&Xع<5쫢NfybUK6I2b=wHfd<& PANFJ_[szdTq)yke?aNS= |k{ʕ?_Nj5''jk坬 bUb[L6V$Kun 'N-J9(bfʶ<.r2ﮖ*3uWFtZvlr-I-J|5)#i$f\_]T)加ʟڤK[Y u打WH56` TU+_U\[M L`cʮ1{>jQ8*1h<\"~>Iy]#{0%o.XB`݅ 9尹Ef1R/ l_.*Dr;.g=T%>~&ޤjsB҂r'^V:!:f膼HG+ňx-ҠSӀPȰ{Y Ѫz m'Z(YBe:t E/g]NV:oڻPZR9V?I HDe`2/G YePsd H!8 a (|ৃft ϔ(^*G-^?6{4wib[v <B$03`+~=(%O~L4Zc=Kːܒ CLv3 #5cHPQ 0C{KGstx І}H۝6\ JlohB8R=Dk(Vo7啐U71Y#v XF8mE-^,gK\YW+8 `VAjR'h H 1jT%@ D/@W6cIXlqk[ͫ-Wl <2ٳ;Kμq?_J%^Q?U _rv$i8A3A!7ׁ1-Z P7:l үTHS껻LtO$0C/Ns6B 1A!uD7>{zC?CRaߣxu9C+IHk&Op:U<)D"\ا J^Ԙ%\!M: [}wOU.<72(2E80/%RBc&+fI F;1CFkqCx-W3`E}yz3v&!kDgd-5.hx_>MhGc= _QV.Uk])W=r3y%x@2^v-N 5fOD(%ME!"|jߚ&:b\ 㲥IYƎD%:+-=nMœ!rژ޻ikrW^,V?Ctϗ@NJ3pGܬ'ǚΉXiW/CIş1&<ϭK^\$zUJ#~ӱx)eS b~W/&lzrG.vw,^DM6s8|tk&!P;$d4iEgEA+P˰kr>9+[5w.;2q*yM˸ZJ7MY=P b{ف՗]P/><-q3.:ᴴ,B\7Wfa$EΛ)۽pRJ-Df>LϺ{:K!/܀ zy_KEB1R Q/MB< ^lco^_WI4\ :`V.l>io6;ݨBrwO/֮K70+ByU8q<VɃ:0,2 T7I?jcq6efcJXTG Ͱ]U"f>9ZTv6e fW] MT: @?@m<04Ϋ۪ӑه< o[i[u~ _.ITc*(={7Th" B.;E h+Xhgw^%6="iQ9Q"1& CKMcUX,öfL`xvO1&@.w1x;`["NI*2@ ĞL ΆGI,#$G=:cq_+􏨒;(A#8hcvgðf,3xM2ĉv@vr,02'{& X6Km_Ui_7-1, py^\#aJyhypb<_>N,j*~Zt6 A/E/ t'!V0w]ikzy<L9][v7`Uc VDԥS&k4PgcG":xb=-B!޷yK<# ̤̣.pxјVIٙOOra3a3 6fp<~\'(N$tH6I=`kIbE}Xz 6q0PQa19nrVln_o۲QGIVIܭRR/tlJ2@)jlğMprLoMQǯHPbȆK1.]F${\`G`$%yM1viظ8k*1PLQXimx^) ް pɿSCNP8'ݗvF=,8T5k]gZ[b1 ZWpk^U0D(I7WaiUꩰڶ |WD+@IjC 9v93 nI69B&A_vvC^o:>T# 2I==ӹŏlH{~ '6_vzF|Xuhu K.@q (xVb ;K׍|`:[ ;'u`ڛZOiĿov%J![䨭KvUD7 k$2,;h|nE}_ǹʷ~dB[\\"_Ŧ!qz g>~fbKCx\@ЎИgk7:]fj: !fBxLfO~FB{\uRo(#lp pEcg#=Gḍޒ ɕ8{!\[VX~C08te6֬S$b26ߎn~aR9`}IX-[eAv݈QR͐Iۯv)jE\fNORKYS(Ϧ_ ;xB}iG(@b4}$3=yAOY}|o(l0q LxS`*^e|㩳uI]vGcsť<[I.-<}N)LU+AdHLr#gc$+nOj5, #xs%NZB.κ Դ>$J''3WĊF 'U}风z`. UFpY^VAm=idb¶sѱH6"<-X W".$ɭM]>!AV{>S +R,iù@EM"%M74LnQ:mD,=8ĩӑ*4Jpt+2܍:6YKevlf@[kFiTtTP}7MKyUxIShs+ZfM*VvlqYP~wB Ŗ_{)-9 #|-, *ׇ@t-ӚS$bfhp11DGy OasK4 .sO[Ct~D*dyw>/ړWQ CLmg;>e\SByku^cS[\uX(+ KZC+Z.--¹k9FʒP&뛨01Gk-6#i`0^ 52hqRRL%X@̗_xbݲ.,kKw` Z%ޝFmLK>T{$@á1#)PĿAaJ|Y1יm06Y'[o 'GJnc|i&qzH!#~\w7N Ue bwl4M $!wD5<10ߍ^r!^PfV>‹RY ѣć%(V(ܧt"EB5I\1u 5iE&a!<{Q-}]z(Ac,Sr9l 1R15yv&hd:?U2~ f~p!tm#d5.hya#ҽMT.莹 LThלcZl2Vpkb:O#C|miݘ}i*T[.1\8RF=$t)5 X懤,j!S iiAF3FꞆ@`f!T;p]+9=FMW nsas0fݸ8V}d%At^qDP.|xaCuzY>mf\V{;Mjap:[Qhw6uꎡ}_PӲo6@13= uF~!GFΛ.Tr5;1_._-|.<>h<AVs;%YX#o0=Ś+)n"g<gd٧^04rhiwZtp7xؑݼE(o $L8Er_"mjI5Eݦ`s1rD.ck/=]Ƹ$nSeSR^{I#3nI0 fS {]t3S99lM5&\ЯZd宁ƃ8'v/+>'L SfȎίRm㇮9I˴. > PRcO8`orIw)WGsf1=^3][Sò,*vZܘ'G;?p{v:rx 'j#U>U| ޗEh`yxwI5Ec>'Az%Gni.Tx)jTg̷m3h7EM2"uM7_XDZ&kLq1cZ8ry8QOba&Xt[niޛBxz[)cimڊqbJ gv~*K]Y5e7"])鹥l>|2YiM (l|e ooz{=ɜ?[[\15cJDzlSߩB k΁ 1~<7B(R >s& ÕfO@+ fNnWdrWh~atͲ[-5LnS J)o"EP;s6⪐a{ ǞTq ?ٰtyo`a}D-pH~|s=o;uՇ7"*ԕ ڗ; 7~%'Z|Oۚ\AGp$G0g{V r4P½݇f3'ܱ~ "Ԝ["F7Q3Ru?Ӯs  WU*-%kp?S)s_WXipGii}&mܗ5JY!> 0B.;xMDŽ\wMt; 4 1 jtvMv A6Pd2D֓ MT|bIel;*fQX?Pko]GGԋUi0lp:nHD#/&UH\I͹Abv@G Rv]`Ɓ=Bbg穝Xqb8\+U%Drlj)sҧG71 Y`PkYN@Hju؊l"-ibۺLJtBR֒hUEA%~bbj-:\j2a  w21qy%Yaڬ٢'S>|S|A/3@jGsCA6X5:ʽd7a}K`nCyD%EK nקǒ(,6ߏ{Ā%Ĵ~> ewtT} 0 :荸1xv[^B0nAE1#ZwcŃ)Qp=KUAS~ju@g++,6l.'t~5Fir9Ij3oicD2KXE w;RPB5dZGJsc;FZd6b])כw;x@)̖ JG[wXYܽ(9nogBCiLUA t]M1h8Ue\N߀ım񔅍xkھc<ԡDPd[`j:Sv~ͷnF$ nc*J 衸YT8CV<ﳞ1j*iBtؠdxBҢk:1>Hmu#U$/S4ʻsZN Ghd e1 =ӀDpjKqdžZ'O "E=ev>J<"hID4g=kh[D}1jnō1 IVGf1$ Y(}y;*^2|t%P=2f,S#UK`b2/Ə07";f͕hqK腌VJMw g4iYci(WucvYq8x4nLc+ٶMimfVXؤ0٩{#_rR1E{ibB#H`qbnV8診5T&viOu")i˘_ӫGF -IIf9o"K?51kXC 1!ܡ}oMȿv~H >Na*#VaO\H%ŌOjs3TQ#f?=@>h)14l#BuNqLA}|gDt¬=3f).pZ.O TbBi|̣_RLCEM4ٰ3c2i\XߞE TG\*5[usw}a&BT6!qcGĂ"0yzjp{m#7/}+n."n?Pyq66ӸRC #,aNҘZ_59(\J!oe3PrB&{X._W VIx֌Sg70!EP|t12]ovu(ߴ-LkVEew=D ea!R:4KAVl)b+K,?G,-NeT #8mx3aES}Tk?Lf3 52 QrcǞ-A&Մh,ޣo'ҿփGH޴Rge_vu0cT/vndkU:>9i!KDa_ڏU ( ӿ>?N2>7Y Z;w ,Pl`9_)x0|0kg~r(^SHۜJ- x4$" 2L13# r4$}-Kd ~cLuM&_hP<ܽ("T*;b Jվ4yDpMeRQS<0ԿI0Bv$_(MYSZ¼{0:yvƺ)-n!VǮ̦P ]ЁHX?J~& =4uF~Jמ'0r 䟐#em8m|kyg}IZ 6oiL+=, bF7 B1b]xfh4&wvI%k|oz oXYHtp&k-$3ՋfhiZ7250sX?>מhzDW0Jd6i#ݛa4S+N2&IarO2P&NuE)^Xvs+f0?.@ν[&; s_<ɶY ?a^}4uq\E?KN3AC~}D/[+sy| vG-q3st_ w2@ 0tD k 2wNkJ(O%eYP>9b ٥6Rq@;𐆜IWp'.}4B~Hh=Z58̋9m*?QRD. H&/x5:PXY"}g`;D*PZ&6ЧSO] #oYsuϱnUO$bkʽECg8 xn';e [_)4 /V2l%ֻ%~RRD=$N(aW~g(:uR㎛MFҚkAg0Ky~1@;@s{~6 Ϣ`ٙʣ߷r5h2Z&NPZ3k:J>QNOr_^ ȘYY4YKJj<Q(oѐ:dK*%vy$c}tt$jBV%:O8i6SKA tˡ% + O/|Ѹա<6,wJL[U1Zsd+Xd"9?HRtF4j7/ן? H AQ~!>k87pRg\x^p$';Cr79Xtm_TT XrAg$2 (ndB:)PKqu`#ssyz*F1Y7v9Ф?"FzN] d38](̕wok 6fb[")g ʠ:Mvͧe2fˠ#|z:d"ʌ`4w*%@Yb6麣/S>i/%d0?# 8f%\6DE(z9'slHJ-?+j4k\duVdsWh&B~Ta+ Q 躗swqapiN0HWa^Ь\̹iք{e@ԃ#{ GOz^QYuFx=-_xֿUdhˇd Gi{_(.siK!XU|sn]_ kT?a{{|#T.C[x;}5٠|O PMsް"I(fh gՋ~%NǷ~a'A{۱R`ppU㇇fIaxtIAt?rQMW:\6z= +Ht$FfJ? U5qɦ5ೠq4Te{:B5;2!j6ঀy=~Iqu .|9YY;/ʷ~%Km4/ 3kv >Y/K)>/ l_µ>WU"̈́2 wܣT(PUv s2IT}koBbEG5n퉥jNksiIVاcQ~U2SOl(dn͂ ǘ, ]tՊ $4'D#>{T%UJ=\X:ҰeG}a\`ZYor@.k"{P"ą`@yߡAi09t+<'k甌{Iz'|'Bizu7F^7#nCv nщNRτ)IS;6"d\S -|؊ǁ44E*mc˭,.Bۓ2t;Hp6w*)! Jn*LN[  NB%$K j-]]&JCG}0MxZ絷αp.{@FGInG`U8-MΊzw_\ՃK>2(t8 惫GlX)y+xdU a)G G(m:.j𥉉_ ; ɤK'NN8|DDG-76 EwCvƔ'>?af<{:m +sNO,*Sct|֓ƪݐR|⯢Wl ^ȫUHdg@5ZLMm%ęUӂd 9m KwJ[: -0\}(TeO8ŕ:ŧѬcf`B8OĽ~7;}sѪ͸V${XGGqJ `z #|-,+m^"5@:V]]3'. 9t3rN|uC~-nʗ  9R~ ACəcs^ɫBρ(Ѣ#Fen] ^E%nU,#)|"/1*ྼuwJCyaXUo8'83h "CT]!֏*n-r{jMУ-coo1p;F[?pJ:UNSW+M%\7%wf䭸 )k,a"s)[W(x4un9GM~kz>=t+W/ KVUުт7[,ߡ?ݎRu>[n[, F _mSa>8IڣݿtcjWޔ9{1:#a 33zxos5[*TtߺRwJC [2V 1SߩG17Zj9Byd8k1v;g1<8g7[KI5犮GGZaUnr,}9!ΰ:JhRy::}6'"u&;bPh)cOeSǃX1Q:Qi ;i:`yzCWqVt?N({]@DZ\kc$s͇4F&/|Ic@L$6rc~ ryl[՘3iؑT1W..`fI%"RӴ%B2qz9DX IhϝJQdX12ǐsAC!Te2N2S27E>`T ?dɹ* $[YSf=N_P?1{B$h o4I5^kUfFԡYEpPlV-ZZzלx!fVt>@hnKWl~%= ;?h֢N(eh?6!s]b{gp؇gC~BK[tD8/fQGQ5G+7bsǬ]i<&s['+.``V?s@0 ᗋWVax=^ %xX9Ѡr .riRoyw866MACњBO,R}'}/B Tܾ!UI&iXւ߂Ly$׍A=U J RUw ua30[p[sz1c9VESK/{|E&{m{F+Xu__h>?ɖ)%")a{bsM1 $x`Ot$wqMAnt61DKzH4]]oqY (wt/ڋ\3=eBŧ=)jc$.CǎEH7п Kx!VSOT?ϯU^V/;c]QΡϪVXۉ8AHG/~ इ_-V >>ֹ:\ 0uR *?v ;&del)@}Ѷ(AwD$Fd;L=S|9G.f<ۿq!L65 ZD ='$[+Q $[_o]OT+pppv@V DS,=^x& OI/v5 4$azXӓزcyG=b%sqT^sGz^@6~$[y:p;S%~#$r`_, adg!Ws߂+&0 #Οf{톺^)mtГDgI"bUn,yT~,EΎ }+PRbj>o9vg,-Jz-oih* Oy^2)@c.wNGVUUABB VzGQՔ _: 3Jr,;mȖ*14S1dPrlRL:; uf ԟXm_"\:,gk"mlj7S E \V)oj k_CvL\xgef(xIz^ {7mZѨ`1m|faf|a*Wbgjy9=Yѐ2dBߙoűX)1`rk)84H h3 CH0ʶSo";O3+g-]*ro5F$)<-ۘESbTȄv2UW1]esAv ],t<x[-7䨚jM|$t5;=˥Lkٓw}]XH?廾fl0XHG\I~lպۍ_^堨JDjcBxnFv!.|P z/J1W=^Z]X IM$8gԍԕ}itfw o7CBu@bs)i$DkM <ɛC?h u{FKԏ-{c8 e@:N辣c$]٩$C@9W Ӑ%e?g-@y@p)Kl鷌S'YZAP;JO-QDVvϼ+8rl#FL@Da@; Q Mʜ",~a,@&Vb78H95 XB`sӱ.tÓ\WlysvLS _-1p\$+|(\Io ;lr?[kl_Gρ₝bv-Œ/#+-(o'RZ%vRsƽx7?zW<:/燝T63 [Helܑu2OKw~݉'YnS~XWIj__^ܼB{!FщFIk׿UDpV^ʢxCMPІm:BF%aWd*ӣ*s)dɄ|󥮁Ѯj Doıyͻ͐X=p&r,rbI#.̵fj!Ĥw2q*k/xW0B;/ 0/{W]c-b *G.yHWJ:Z!ygzܝT\x?Ak}<4dܥ<"'ĥ?egm0<5vSM%+Ӌ0dVo&cy+ (3bd~'BjY 1I )-&O+YϵatLdCKT$Rx_V J6Zv1ȑྚugZ~$a2Dle ƝG> ; 2SܽF3CH=jXX!-8|tĽۜ_܋m8m#Tk.jO*y'5Di!ϓq*7 ʼnY+QK\HwN%@ujbp}D Sc] I'@ ka8GY QD;nR.fZ"JJZ% /}S4i=*K؇>i[XԪf^|)dQ2 < ".P L#9ڵZ,s.n|ynA6wrJ:ERP D7 mT Qಚ*!)Vh% kEl\b~_"/\*Z`/VؐIvyB0y:z4lJ_HTTcst?3cA2tlFk-w|3z}:2cx)o&BO3g{5[pjxVgmEhX3 0q51>QV\tb3 +o*|( $+3dD*G9MV"B*g;+křV>Yl Vg.4Ou,֊8Օ./J XiWvOV->)bYyE!8 !={~2OVy8COK'^\놪(wV1\p+sr 3]Sm:#rsFO8 NMf0YsEw\s2rԭ56'hi^u7 W'U ]`Zx绿>pJS/,V;rz1 t c_d;eI:2CEnwlמWACZS`9)$X9t!)p0y?'%iB'RGLf<@+e[ 4WʑEdpd*2)^E~cVBD@W,#'- +[y7"( \s[s=eԵ=i ʍ/:/h@6}+>ԁ^|#t5_]ɟ}dUJHDknvpr l=n+ R 1mWxZH==tD>hb TT I2@_\i',AB]>+4 !eYw[dD~& 1K8D^O$&w?a*|A $԰c,Ցn9~7zH"ʹYgB` 2MrڟֈoqAƌwPLsWcGNiKe/wk-d/TRۺuxBޤ,E:)~41͜0%; ,|^% z,[O-|: Ä@cŲG8ؤeмWND{ρɣU^mRףG,q TO|VQR):;+ TjWPN89*5MC3> CpYfsȋqҳPm[v ~Ž׹*rB!r j^ݝJ';ܤEQYx./U~{ H zД7k̹NV80_~ɑ2EҍDZ6hx*\kC'[L*+EDUZdDo+:G^(kLP=r/ڄQ!N᎝u^K9"x&YIXa4TCId)94jگW>FZʤ;%Q! mi8K+c9-Xm[f*5Ŧ|JEbᑮb4m1( )bبx)J{A'v{­{@2߮$::> ސf&w`zqF'#뙵o~NƊq0/Oq29r+S,JRj=G58³&Jڻc[Vt~Б >hZV^&E 脖NGҧ$lM6ks&R/؅mOI  @`1l} pH°(Ai#2P!7uy^ Hmo6b\AXT_1x\qScOJz=]<wYZ樚UwCЇ :%UdKijҹC{χӿ<.2qG1hT_CKJ)QPYnof쐹ie6g@. dNKgnkSr2Vο,H7R6\m|uZRmov=Lz>O'"@XNT[IZWv1: D09s)(LO6構cg t"DҦ+M(HU*Y.+oRNI=TJh}m-G gPF,t2@/}Bng vQ;%f04uk\3;ea`}v3AABElUg=Z,sHɯ6[ aU|䎙K(tBS.FQ 73Ej7$21% N,n ]cYfaIʹvk5=TOa`XoP4$jēab(gGoGp y a%(ܘ>57FFћ||؄Fxy(d& $dI^p8%$ur"I".{ڝz]QDRR)Gu؆ͲtQPff= ,J&82;\>7IƦrMNݥ{<";fDt["GsRiۡ_<6;͸V5"cP|ˬ_,.. 4὞Ohr_>[6E(v^ 13i#ʂ@Pk.K&M w4q9sLfkMeXAK](Y ֨W\-n)P>` ,0fTjzN= T/ cQ0 oGg W#!quu1֞ڈ!0߽ 0O g$OOk}%6Һr ř/_i8S>I٘w@s--D'+'VZvCRv_.'pA\'j{I?Azᣓi9nCKO}e`&!#!0엢L] oѩvwoj1C'.ӇLgp\Yt̆TfH(8ߓզ'̙DS"8X2{÷Fd[_Wmf3\ؘjlp"զ#21 Pi*ņ\"){@ˏdӚ5<2IVb 9<%=D렪^)пkĉ <?n+6Bg͗iqqlVy7%DVR)k@: ;6 5Cytʗ}USY(`NLZw7 ϼ2 .o^[BxcPYX-D;\46Da؍3XIP$l`kی+UHN ̜ԿX\â;'E~i4OM4b{D6ğllȣ J2s??eHVW .O~Q[]N9 ' H<::x"lEJ̷@V};hkǟ'6[Kb6Slh CKGP lY4V6m_iõ?rQ6`>&['FҿDr&4B)+GigHE^N+Bu!J#Y3+|8\pKIUi5ʪzN;+'8ʼn(^R^љ?錰k_~`]X>=8,zjB4Ɩu˴̓ їK49IKShՠ~D9h_44ZKߢ`r Ѭv gehiʝUKMPAz-N+دfx!-~Ni Jſ ;,̚ɉ8#hqĵD$nۡW? =ET;Ahc|6vNB@\} `)yDMWd^郪ͮ׆0C<"2p04DSA`ܼ#jXHn 99E^r =ӠhJ@uW}80.5Jڶ;ڡPDNh8[>Ν`E7ug与q9s9zoIa G]DZ)lzSzJ;Yd71@٨|<9j3=h1u`8Ѭg2> (h* #<7 ZꬺҽU->}+Mmc^.M9@FwtRˆL c[8{/BbSK5<y #H1QOQP84йg)]^y/! /TiRtT/l Ґ ZWT1/|#ZXn/ RWz.h!ŕnxn{|P+i[qG|y$6%7F0ZjMV=NLƙ|'n>Yqg3,R#̈wauzWuRbp b`3JfGnyɊz2KʐSGĕOX:޺َh_ls*ť~4z)uʖ$ k!.Pn7+l h;x_?B~2@ג9,y>WWٗȳ*Z/W3fJ3 *#X> M.QkBH[&d'qlK2+ouN{0uOf,^/}v@Qbv!J%3jKI}̬6O]TlV59Gk6 Bʁ&qmFw 24>Q҈C"`cW-u³䚏A&l A6TOj jKT1t 'Qgv9m(xˠ4` CLE,CbunG !cG55{4p޹cFƳ}?H2ȆOɣ=Il2"z +rR](9A|xR^쾵(7d& jMW !irUw1i6(FЗ e ]:p?S ڗRXASfF-}C*VzQX2zeW'ˤ%2KkxkKxFhZa9}x3:ː5=N˗h 65JjpZ4-i(m^ vbXr+9;'y>kҴ`Eu[[A R<{A`K3L-X k÷4kM nFu^!Z.hpm lD4gD87d+(}*%1!{Yw(<[`%0&c :~qk,yCRh9k= (mcF%rLV[6QWl y>Mb '>Hہ*&'x R|YWfO %nMl]>I a3rY1q -M]kGLĆ\@L䍟te b'av·n.s =Gzؿ"$ !N4 hIƙm mÿOJ|ÿ4!ȝ5 ȟU "JeճSLyXO.fdQrȑo#T}L[i <.Z0vˆG6)pכ"ëCޒVqDn##f DYB7wK-2㓆_hw `FK̀e7WS$"~v! Q]B]UIjK رXck*B+ 7g2V) kXn9l QP1:LwG0S9Y@b=ar|&.\3H(6%v' f4S-)ȮET2Dcj'58E(`N{0FG_"`#S@{U53=?0dy{{+O2IB5[:q*b[oSiD bOb@Quي 1m^;bgCSn#LaniշImyyay3J=ƖX;8o}zHlGV:׳&ו !q=h&W+6a?J -RRNS4GdF?BPqW/?1E+kW& N2af ..Jj$'HGsSwOZW-HbHbuW +4,$56< ̈:`!HSR}91MzJvaE85uZ$+ goc._m#2j?O|#4M@Jj}_7VU1]l0NBMl2[ Nc~pQ^GM+R2p4#ǜ)U\'G&?bpKGvm'-uè%$Ce'1Lym=ƣXEB'}'KP@uǙ|sWs2쥥>ɈU(He b&68vdJ4!!p_5gqWSS5T֩ZC Yݙt婿4ue+1lLub& 984U4"W|#fUж5bЁTv {ֱMQJȌ]M^}*dݙ&*j!gX^(.>笜rz]1ŏwsrJHN'evl>BG (So@V/ CE`8]C06AZGtyj.q]cB?qZ7)<|ZG]b;S<E~JNLg*ѦuYZ&i9NB]~Z''5N@aq\.+/So\B:OCz~L8#{cdNtk]S(~H৸ d!Y{Q.5-/g/o.'[JLJfɭ>ޯl~v@WصhOSC hIҶ f:l}ɘBDϨ:Qί?$M?AiCݒ?U/~W 8p&Gܝ++.ҁ)n&~eC&Ert!2} dq uGdUID HKuޚ 22v L8[ R` jo(t|} oZX1D)/4$?;1Z6riZ;rME)ϳq1zKgPVIqJճN5)YDA~D$/ݽM¬/7r @5ZZu־@^B}%+d=LqB!A}`NuL*c^Xqc(H4\.qZ:yZMΕ ˅v{i~n,j9=W3B,52#O٠N`+;<8ѝ1\^<4h [q1f-^t pۮw^ lZUT&b2 aLjcY7l7 Fm=T g79F.5KW@;Ҫ؛&HQΦ 8uUv" t*}Y }XQo5 {J⸖tI=Ga&d]BCL&YէFMk 6PBbNE\(Ϳ!Y[>UBr{_Ϫ7Uq ,EJAלTs8t,#?~*X~cGRk-S6!jrpfvMu-ݓeHa曺Čo "{вֹv"8.2xx\k~` @F-CH}M ?}s~Ԗ>D& 䎴PiRRrZa oK_gõlĈxNaN^e36h~)P@@Qs.0)eP$#wJTԆC;S$zxI!%MQF;~,{+nr`W^^Ix7L,^n&Kګ,tk<hG|vɂ;zI/Hͫwʸ=| lgc.Wi_r%,ݤaa]x(mOAv'A'zzCAV+| W++80sr#NqO_`YhyUZY hO^PAxQc=fP=VG&BMDf`C5x<&!䮃LqU;xJ9繓yxM9OtS}vukкuq8 -SkJe>"actn nц}}})hoQUs%pԡsr+t<5JYnLyN@<ҡέ.%H\x͆zSy|-`[FD!KNff]0lr +Mr]h̊e+ h_Q'Ii/{ȪLɸ= v2'nu" 'lO:b2 ̪Xbf)^&.pMQaU@h3|4Tw&ad!5y]tn$˘+(oLʧwFF< [WcXt˂d{ 8KZ,"]vu@s?+hCXQ*u޳gTQT.pI.=m21p'?!\2hmI<6w΢d7G[]0uH !w D^΂WP"jbzh*G.a"Q $#'=-. ː C^kӽDZJ R]\cbA8RjɻܲF3.6 3lwpzd5\?i۴w癝5*ʩ q4 M#ƂH_!7RJw+-e|ܩR42-l*"1q& ISy~]^:HH<:3E6~/օbAqOHim$fЄvon{v wVrezؚ߮C룫 2d^n1BclZ_bԐ;GQ.xRj%"q# ={UӣHHZ; 0Vzæ|>E !)sʳ4[lA mlpW 8m/:Ef4!#s>m8}ɟµwLbU I2"#vY4RdeʭDdg2^zk@6 4 [R!y;3a^ykR(QPuVlP 9sHK6!c&n)zOՔ{FB ߈)(oI#?E>}9Y7TD@j8scε\O_,$#w)%0`겪c>xRqFg@Ir@B+pzo @Kpo;HkV"R 46ܬJwV8{uAOj#dW loGU4킙ַ΄1Wr3gI4D=ˑWB" UB)M-+PJ`Q|ȃM8I2ȕQ+Z JzG|d#:IY7>|-ŸkVB4M~UBDb )>9iטBK:mHK:% ALFFC. 92::`'9‰&]JűtNz:#=ظ+b)92ABW x{a*g=/~'f~H&WJk!Gb to![Z|- Fڏȷu)9RtFIOHO=ذ`ǃ&d eƯJiJ,>nVhE76FΏ|NFvyM'ϰNCbB.Baro8)|M9 j4 ~EWf{֏(؝ ТT' c7oL$ƒ^ &@ _NW mMg:Xg[n X2UytNHbņ*g o-e_ƙ 3(3qҍK1*M>Q6g}1H| 9LRmU[hMg=9}s^} l읟gBLɶ'. |&JvFFh{W:2'p[!KQL($bQ~I0B;F`~ߊhCQHKkD;{ܙ+4|M=WnAY1/EGYܞ^[?gRd<kxq(pP/IyjٸRL.+XYt%ʉ5P[9kY۠U"hKk7xvmmaCADA$$7p0,#d*?vz#IN-3piTh",I؁CZFQcQm0* id?wu pňmj\y&mTc?׿vt!@0ߑ5ßgJބܗK>NjA\yEEL@"_%\uǨ|Q0ϐZ~0C[$&5d2dʨ$ #Q-ջ?ї<`rACf _ڰ~r.FC/ЪKUN C*qkqMhv~Ӕ+"hhpz1tIG0Av爄Rܧ>AFXRB}2Pݕ6 6^kǧ{)4a;]y<-ɍ@,d Y}̔C}*cep=5"+ mlG01(ZPe28 *ر>/2QWTZ͒As1xz2(8))]X}eUR ŏE:WV S> s(&;BV{vr1˔4+9ЈoN=Uó@ւM5ʤ"18 fzst_fSyI9 W#ʠ(\Z.ڽfxB@< _#Δ 6BplqY~&tY#\<焐khA.p6>+w~C1 N%.i٪8Ļ.&8u7E2< >3j`sG'2Xinr)K\&92\#'d'\h,C]4mЯ`\ . `)%w;rߌ,nxetvh5y}%5:6GzgD5<%,V/D4i=imџL=n%|&1'\sXBx`Vb-='ŧ@j@էٴW }M17)璦Q4of2* $ dÃ1Z11jץAM_>k̺톞yj=ؘ*1yya~IE oA/-oH#!z*H79?Ч s}8[ޭ'k0Wp[9gDV/5tbtg?[C k>fuhs'Ȝ7 0N͊ cL"i{trE#Pa(ZsF]/ 0>p5PV~kOreR۲93Xuׄ ~<# W.JҼ-!\(SH0HgoU1LyIm0u^PmuxDf0y Pl_YFETwy-\tlWx۔o70kXV"@8L?+/v ev@D`ĸmsUy2"o A߂_2Ӫ&z5O "Kx%_8v c4y!gT9PnH|~';A1oGz4׶݇_O*'x_5VC2 w&4pV@E>UaTa.cHnv#@YGopD/; PܗƴVN[Uа)gɠ$?yo{Ҷec> !(vx)7r( ?ɲ͒ġHۚ 6ve Pŵ耑mђc=МFiX%F/"s'ƭNxvڀw/a6}>V(- w'J!&B( Ѕ/Z6ޒ'ld}~'!$v4Pz] /XZD8ۺ6!HP,·Z"&tp^t:ݹ/Z=v׭ht&tE7%DP\GK1禂$B@i>БSo!u?#\sHޞ3IrK`f&bsG?,";dz5C#< 7H7S<=|(<zQ0D'Im~bE'Ed.M-㽗^ATIX[ C8|7M\wD67#}-R!Ʋ R^Ծ;gis>_bfP7λz :I 9E)xZ$#p76ŏ\s;%)U5鈙*e0/& lکv]8iAh,Xk?"OD G0)`C^@I!ם gdhWMsMg.}y˜[X) VkYm<(Sa$+wzRw-ɺΌ  d 3zqᎭ\OF6Ϗ7̮G/BA+yʪ^c0#R=ſ0u:!:aO5t4bkШ=<9osqd-B?Na'<גz/6;\#YnhPˮecʷv-,0nnm>$6ʏI(dz! _ 9l3<3pN߅gS#YLoT#DŽ! MyEot12h%UIk 4vjKRy.Z[a܈Pﰄ0^zCiP,G?3}H+~{~\gUssXxҢjPr?'U%::Y~ןv=Í7Dil. SzNJmj{A Nd }lydm*V },t?JU/bŸ9-15Ph i'I :W6`9y:-E!+1Zt]uu X۔%UEYR]2Xg҄+!#WVFٶ=tOe/~Μ&=;TcT-k̪]=L:1H;7<+%]Df9kjrΧ@̎#ߋu=$-P-Q? Iۑ nJUqH0?l15R2.UAVrmб56U(>ecGx"\$y]fvbU:s13\iB/L|( rM>ή>d|Zw [B ^FvuIh3V?pJc4/(GF !.mMN/ REi%Id@K4@ 1`q~kJUwjjZsǶQ`쮌lV5m%,qX]Р6*3K+fEXXt. -Bc$U k{xPGxYݶN~hmHC]XƘ(Z1;$.#"WՁიGYiS>vM2hDrb@y]l'jVrKX c2GVџ:fwXɀ2Fp fĪ])C8E>\o'>&ěNC"P? $V3Fk Zo< izQu:h%$ lzs%홧b_ ͩ&D́ml7։nkx;z-K^ܸ#!Yx1&(VWt_ b6Tds1*e^8ݑbXvr; X*}fU:)Ȃmv9GQ>^3SdW-)g2Σ* :*K16 ';jh[ʂKOse dz8A oit;ưj4uR z\r9>-Y3H fE[l`8j G۰(Pw }6 Okv }[(#xN$~nH Y}3"Umԟ.Vjli#\'HgR֓i/ϧɐ{X6~-xny!!_kiT~"[{J2^8P`ZfN30?ZMjeOgC6`9Q7ˁA3$ujlEAp$* ^(G !(K{VNd0u\o&dV8/;kYll׷F7.)@|.{tw TUa 4V<-[\*veT/+M\ߡAxoBTdU"!׻&鶇]mtޅ'vY8P)α{,ս `xaXiQP,Oʚ|$ E"'bD+9ک9Crܓp NɽfqWg7YmKj!! EZ7^ޥ.-! C dDPl ݫKm驭 MXk>*p%]7 &aMY5Nvoėe#}EL]``E#*e[9_\tFӑK{=w/7FaABJ g/18YD6(<|NU,2 +wЕvAG،,˿i`GY &B(ajV>m p}0<# a@.)rWpeX' '>q4b:yO3K4kb;쭞{f qOSG VBğw }VS8BXau ,(MщܗܻUoy Ew٘FM#(^?Ϣ #ToiǣPM%c9]XcpOSikDls@j6\eΑY3j\c / σv7 g o9x okxIR=\o`!S#DמZe;SF17BGYx|m*)sfkr2!q!p'IN-CȺRhϱ;%Zb35xAٺzfFkp.ټ=vC%굘ڢ]Py%/-N(XZM.#2ƴV*fInv9M~kր-'^'GĖB-st|QbpdgnvqՀ"'r+b9q ]/yaL+:M,>i9sпGn7؛WQ? Ʒ_1dؘZn-cp㾎B:";<^;>qkJ ;dn? &jAc#֋["i AbhݳupJib-hlA2v{F\ZJ{ WT*7x#Ѱz*Zc0giᩏ)X08 7˓C#}5"| ]}F`GA7C9Hii[ H I0܈uαBos{&CQtZp.>{+0 /[ɷ'sS۬4B>شc awU3ΡsbLT ūUٟeN_46x+Me8NAYSO<(AS*f#fL 1nߙ#Ud_pus yw􅄁 oSI%s[ȟR $6J|i&h  zrjX*ecoOjh`,Ql@;.Ec<](yr{@~0&#`YU7}[PzFؑDC f#R}H8 \ɽ/`6D޹xaIFtT%~6.V ^Zlܐ.]tN5F񈩹Ɯ^B]Q0qQK'uRj Ǹ28]>ʧi"a]"[=zg ?lH&^E6z gR 1s3Pθ=!  G˞Y}!QY-oMGao$C#2ܡ4-BrjNӦ့FmI(j˭9T,K:Y_Jmyʭ`C,$YamN%5LJk`g&;n[s K's]ĬWEN(m~uv4#oUR „uf+S[plTw ɴmTĐm'֎5ߙiVɚ?P#g f7( \4)Yioʩy[Ơ9&!|Sf*: Ibա:6D+9ZΪ̌2i_]\CP5 FL/ #9+P&5%텷B0NiVb' ﴮ#0NEd@T9rv$m{m5S `trG|֐khQrN%,_8aB$EPw"9G^ϩh/ז=޾kK4)geG7ńmyO_oJ5%6}y(`SHRN9օ-*c@a/FQwt㧺{b1d?}n4CQ Cyzz"`;DnBI?MH+u;ADC tz ɐE_c)t,Te9m:9abNlLH꫙ @xX/8j._,ؐ?CbMhz ͳtc{~2虴{CV"}s3NBt}W*{گ+jPPA, aP ^3tIϧs2F7. s'-=C K _+3kXU v.Ns`jA찓M&yñQML7d1dX߂‡H4 62"#JmM18`E'їiHRpJ5;H7z֗UBr=ڟ@0]P;JG|Lh!UL,䅛3]kY 5t$kiO9%3S6N M#g K\hJ` F +݋*ƣ{Ldr! e\A2~m,l$U3)\I>IpmJgN;ֈָLIM~K5?/;:d/ފsA}MbZК]'T©]jsP_[F$M=oDTR@_"G@re]Eo'Y(sGՐPapJZ9[U5]XB{?Y=3 EΣݱX2@ĥ"R ])R%XFSx0(4q%H}5-1-,(HF ]+DNAi7(xuFnc*^vhV<0*|kx[v,5uk_{mdɌوK0Y_pi 9~ȩcX>RXޔ j,NT:d{!wd.αuztD|>aPqq/eO=}eJt"aĺ nDhYh#8&f's,%qA-ݚDYy+A{oIɾSA~kgQdƷC)٦3<5w~9S~d^9$I2^0%*3/5rk|^\^wKsWjz'FM4[kT,ʒ3YVb$OY g@|+BN2׼m3+7Fþw}G$:Auۮ_hLA;f,X4`֊R)x!GܺܵEa\QnYƦ?XzΚ푋Ǿ ˓?=6h; q7`2ox #0~{![TEVny(Oʐ)~j5~fJR`0}W!٢*Z_Y鰤`jJ,y^\}sA@a#[ ZwˍBfvJbJY :GnǦ.)Ċ)Rüꦋ:<_9D/àٶJݻ>}KLyۺp8&DKnY]9CBG((ÕrXhf:H?!z +wY).# cET$뻬poHc\oZKAnvO"l]SR)rfq͋7=+k|BJDl%#p<8ch k5#{xoUkK"55O]S̩[hy`Ӆew2Ə;$dJ{2KS^V~H#3gh j&NzPWT&*/j.jl  #w@<h)ԇ%k& ]H͙a s%s`8h[`+ae~S=㗕6W 3{+wThvkHGI@x0S,@ Kߨt="!s3if!=>AK0_Ì%IrQjySu;9-Mt^q_  JuW!LGz.71"&4 8y[\fV42(+!` Ɔ3b_Pa٩)9jaڵeVRn6^n95n0и4..ilr&R0;&zLR rVLM^_B[luB'L)YS@KU+( GXtu3iNڛ7W,yiuF},r~B@:>‹ԁQd s4[żQ|IÀBS0ڙ9q=X/3uLթ8pzh(1}/ iS3m0Ʊ:`exR5GߑXS 4X\5Bjk_=3oseU`L\(CI>Nבw)JzÚ7Wjdw"8~qLDx/žL6Xi^`lXjEJ*kAD6tc6T P531U N^\Gʤ=S-gކ6&4o;NThyX*3iԯBq/,1d;b 2U&?8}bݧ|$&%7tBPhxX;=\;+UcUL = Ca6\^ušYc܌M΍;0F̩>#G6j^N0\?B=j&۵PcqJA! hi.a{1K;+젔7(HN"+~lpA`I.j^P՜Gל改0YSbK7#֩$z့}Cgp`zNGm"<\:eܩV٬Bn"fkk_|oI/}.Վ{D'p?4)F$U]gYRv;1OG_pW^ Y޵S&pj#qXţ\r1)j,TO[5)wcȈdۦV 0GslSkusgBaOL'1)ԶS;[9a+q 7&DMtc!u>_];HM0[kE<_HU&; >?%Bp,Φsr0$țI3V).iUCNq ?|k%+{P*Dxt I8 ?Zc֦vP;#% wjڥ?id^).#}6z ]Ek1hHMA[L9!|tVUOL6^qFkUijFч*}rBِ6_PWC'z)y rЖ֕Vϲ51WzW)]FN9%*1x@5en5C@z`'J Ege&M7'$kdsA<O'sbuy z Rh7N"FIׂ.^J@Sxc;:3Y0t+,Z#WSEٿk (mxIM` S#KnϭTRHs~ !g/7@qE`r 0C4Wh?􏺍M!'_1_$-EnAk~u`bUؘUj-16,YNņz#E8`Xxh\P2Z9~( A '=zb-]B`Ii][ TAs *0"ݥӒ#FaK2!OĈ;R9?|TjSDYS%;|H4BrqzX՞q"hT:|p"B;a(CB2ew9=ȓ<&bY~iuva"2=m4!d_^;q{Wjd)hLʶp$dPx$@]&p?QÆQ`>DS.`FB']M JUYȷ99qi|0d"$w W+Ɍqo5ZEMS/6uSAL3۳b#P[hNA[4rxd{+2=]xfjΩT*P@FCN<ӹ TaL?TDAbu>2,I1Q~蔕c) s55m{%Dž^[Y#`8%c;\|DYyž5ƭmȯ0_ZZAGt |+ [rD,N5NK! @$N2-hIS|`j9ehށWV1JJtݧoxnIwu_~Ij|_<=v{ƪY1Wڅoɮ6N]X?Lϕsme={|jW/ӯ5z;$Yxŭ,-W*O,h0юu~hP45A ʣ i]P$[,Dvbb~lW/kPمRg5p-# d O:A&x3Ia*T?w4wGH c_9|h \vfI!' &Z (}eC&wƓ@Oq!rkAH|kML`03s-$tc,oaRJ.v#{w2vMf!7E ,vʏ0"dꐕHh:M"hb:[#aDuq%_+pmo6FKdX0] K(t FܫU:Yg]|g7V'uWWk05I{y;.,[3xC2 `5 ^S!% y95qڹAʈQ^z% ~9=>,Z9JMJ>fJFN42uDc `L2δ2 -d!;OzڊM3Lvq9CU3thd|D2ށEQ0*ƶߘhA'm|#㇘1Q)+iQ޸"|&5m Q.n(zY~ Rn(V,j6ۭk`EL]VY,J:95Vzc5[$WȘSd\]>0sηY`˲ⶂ xlew\_9&㵔_1ӦsPf^Ռ] ƨ){`-Qep~ 7< A BFJ\o]r!eYGR7c4$%T>8; HV׳x㹚 J/C{H !R,U>9_r?N8;#l˝g9B9c=u[28P/ʐSy*Zl{kKL|\)'M=gs8$^_)⟄S@\â2].RY)I7KmwYr+%]AC(!w%UUSB.=&m`gm},?5:y1Hd>ⳍzD k._\oz30[M8 ?(RF#XO`IHxU=v4@@K92ri9a8'$d|Mo;%\\fl.l^ê$ֽWLJmq֝WU6bIrrmgcSoj2 rS4- ?* Q('ɕFx I C ժ*^fF̈́{eW3ZD3x^8yXHAz4w1T{2G8w@ܼ:yխk'jP(XY<8`E()b8|/ӝW賓gT=¬pF'5T3HR8gR6~#a)ܘv?د=_(ղk[3R@)TŧpBnඖjưD,( "PO{-UMA}%.`6L6ߗ)v J+]ѵ} #r$NQ[YlC>Χ*;ƏvXzcWU{}C֯,{ kF\~%hSe\eH-dQﳍd4o5)}Ƈ 41\m/ w|Ia|.XbjDt@墈ӝa^|or0tK+M.}Hi#Gg G#MvD6-zp=߀̇"/\3[`^5O2 BD\1bH yEL&kT#죷jQQ!|I{6KvÕę|&oCGN\G^:ۀUV( k*w}0,Њ3]CL (|j(e͇\4<*A{83E w7kfcn<D D)R:~e$OK+n3h_"ѻed^dvdf*0{㢳A-,fU\!>ߧs_pPS4H#SS{ʹ=썩M3b;_7Ѭmʼ3H $+W8jU1O92,'G(lT}ؤq 涡8sA{7s0i%ԑ/vBtY\v#VP侌X®ocbӠvCП* KEO a|Ũ=%k);%4ȊHp`NS5!ZaMǂL&♴uG zXG!=FUΕK5jbdm^t%uJ3)qv^DRac0=hw*we3r螭c6pptq7}NjT ѷ?7rD#Yd}tK`i|wOيt<3֊pw%Qv, Ћr3g> x6G$~\׎t\, $3*~/csms)-XT 6_zNtbSA pGyV#-}{%_Ҽ|1*-p ՀcFz["9YB>_`_G‚kntCl:e}ώrJZ%og`N:c|)BH7t6tt~}*47:_2bNZ2]<#%$Β/&PUeȃA\y=WtLD$F|Q54¶ b.\:- 5lKYtX}X u?='s犏,='|ع;A&Gj{`"ŘpӌpPűЊз (<񬹞ևoS.شF_PGQoXw`[EkG"Ķ9^)Q*ph6OMP:8 -߾f$׃c^H!U{/?nZw'.%ᣍSDȞ2@-Q:Hp0~ӣŔ-t5t&l\Hu-Ճ4p%7CbWL$F΢щ$Uca7&Cntə` SKY D!mkhN]pNDjT4p箝?FnKp]D*[})!1j^pQA@;oM57"엨o~(1'L'IS.5} W; ?ϖ0Ig&ʿ$S9p93s@sl3]\g}X9{FQA ;?Y 'ӢcLɿ PFFr=@"0`hh p +y L)߷㬨 -{yL"&&҂T\}-JL~u 7A3!z8 y7Ra@5dϢ ޗ `T@cTUa'1 ܛZ2LjĜ)g[!|㘿0$1G1U}Ot%#u:Zaevi*n!+ 5(ںF/9ƶQ5vaQM[YN5\5zq ?ƚW4XlTC AB( rru!<"#!ЖJ=4duҨ @8M)$zkQG0q9my۰4PwWGФH;}tE&'P:.=lyK@@7pNw h Mf"gc,\?.\ u 3&›FW8?E SՖʸI$,t:򙔺TYJAdqB,(ܞJ#f/ !&]:(/w'a龾!i?Ѽ`d 9Wl W!9eѶ.5SThPxMV 1hUsc'BdһUG"I["jS?uEW{T1z1NIrz=o@\ыf5-tqn4oO2};grO%=^qv aijǼ.zP >)~c#μ{{Îw*Vݠfis .z!F)O6 ~ib@˂DL';2%"_E{#1d@Ie3.T:4d" )!0н"46h 穃p<唫 E"30W*KZ_6Wpi ;lޮ }eB߿RzLs "0V5Gl6JE+g4۴s*]hT#B %w" TB/SN>$ -(BL!pV~hrV>|'#,!dEXYV '䀀@\pT>z hMB d=o| IQ*ȣE¡ ̑jCX} mPl"uS1쪹Bڎc;ۏ`;^#45*pD8c:Gxፖvf B1w*A~UA3R1cDO3lT}C(]?teiC}Sއ "n,J* Vņ3fwY׷-5zEs 7Zyo+)'>yxJg8c%L"hpwFveh_/k aƷm x]N4 vl3d<*:P&I|ǩ\/5m>W?d"lJgXe%tH q?n7wԂBץ6uͬKR> ֛6(½"PK'aTtf$kbyla 8\*(l#@Z1T-kbO-LܐP-ӵ>ryu`"sye31XZ{2B^j-}H0Va'-"kdWxb8p׸Ȗ͋4;๷4q\}*ISgVgm><աugRwVFr!Z ,HE8ߛL݁I՞|sVw:vdi+LLԌU|x!<8sKKM'`ŗ_G .JXF# <$)˄s5%v*OFaO0%(dr(1tZ 7-P}H,?`6MyL.udJ-Y]׌bj4nOs█FKi`=jl&#X:i>&{CzM3`Ǔ /Ӻg5O?﬜=SGvO]fv{5eg4q4e ~S <>+ÕWxX)v~GDa3&05}jT̫FH/ێ=at'% n5АvQ huIұlE)?~ MJZTj>{G&04TΟ: 㤽}r^0j6_M;ymZ~Z^޵PxU< P!PAM*F)#jռTz8z?CGkA,"]b )U4YΣəHQg_Lfˇ*lKuFmV [l'~"Gv0  /-'D]ki,p➖ou.;o9K_l{]H``x?bX=,jDtTW9Z3 #QMX>\FAQ1Q!1|YWyEy${Ӥ{ |мD>d> ,l_fttBP8 bƦ KKɅ.ᓔWK4۲HE3K2/!98VNjc; (⦭=/{CJdq?yܐ@z@o"]IYq]ruԕ cf}s!zyd'[ xd%X4:3!DʳcŅuq|"N/XP.U'+@ `#)±T*S/v6Z:p8%b4'n[ CC;ό?O:Ӆ ١#4.uudp԰n$ uzvo6wmSZH+#ToRB F/ dK3 f!֎*򬷫fصnKȾu#ު#*d[hslzQKKp i^+\# X(+m{g;k >HR{ QMinTXCq|kH=X]|S}t"RX(&KH#y1jMkՉU76L.fq'&#Ѥ`h^]WD} ZYQ匵{7SNtl"E傡 \ִ힀;p/L@/0)3ѱshhnڕi!k+vLm.(T7p+3KwV:,#j֗A[pZ KAQU0vnLZ'l<5Tض&iJ0*g_dQaV;7*2e{\pl P(2I<SbH0}WA@߉Ũy4MTwe@@c˄:gDf9LW;܃r͓"1ߎLk:v'Fs9߼Y2+~[UITj`(nHnz\^\B^ZݥM_D"#/2toJ`N~K4Q35rgrtb.{uwzKoԼ<O߇ _,v_l 3ZK%ez}W @ܱkQ9aEP఑NPԚk NRe9f"8YUb}%ɛU]`l CɡR>LSQ6:߬W 7agۿ Tl3Q k RU^f[DuZwlǻ0w @y],>" !ᇙ칣v  [OY W㰝aA9LA mažӑJ`(Peef5K/t4d'pqƴ)y Ke|zhW' Ǖws]mh4e2+^*ǪLX#.V@czTvREꡦ${I׽#'kͪMK pymBd\܀T9] >{ԋ3H`jqVP)txtp0;y_3Zew5J:07w&s 3q /B@QGW0jeկvqp&]o&V@kRfemy 7o$١>Զ' Sg(=TҸn *YvADӭmǮ$8UOXṋ|nUsƍ:M-ހ(|pmv'ˢOI%TYU|h]>P_ew!W*7*>>JFJ95$–!A?j% h868oi(>6ɢ)Z`D4d5@#'%^p*['4s_b:,4ݱ/KSt Z%xH[^Vǭ:2ǻN͈}3nHA#ʃ|ce2 H8l$ŻƓ,TcұJ(R:=44+Ic¿XUv#48;( [۾(<;඗AXL.c 0K!3cXmk0hWEIf^Ʀ 2HssUk=G6 G*j{ Aj5$:W6P0KA(`BRUƁ^49M+ѢW$HZx^f`*m|2`0a:(_9P27WʌSmnRR1HH؂L B!atw@}[2X;"rˤ[o>a+ne.LrX5|`  a xUD- 4cOq@aDԆ>0 hN"_톓H J@.X.0 (XCUk`͹zBǦd!acđ\RO'?'WH q2_.'yJ{N}iȻ٤O<]ފCe(,V~?G[)MJM#p,ь5W(bJi=J ̧QŻ @'9Y]k>XY؍q[p2ZL"WE+ቦ1-eXAq^H{/KDq^D `FX6mDljfI1#>F)βlGՓO/){To}UHr?C_s34D i/<%=3b!? \Ȭ% HOQSa\B%])# 66aLGTEQ,O;D&u}#.{7qn) lI<:MgYvW .PWLYϓaXb[ctGڶ׹*, O9&1QC#BVSG<nE Ĭ`_)z9 )R0|3Td[M s=v0A/AD˭Q'Af(%`X_eUTlh-D"&ڂ,a~%qd7K^/vArD%MV\d3J ߓϴ]CJ +6RI D՞=f_mUq ξ FmDPm`.+w+@1v -ib>)j*.2V/߁$4!C8@39.0Hx:pper!T<^C{gUvʅ UV`7Np>|z;?Z,n5>+'$vx1OsIՅXx{7b7 -kB#Ck-p6x*'ax]u B0"җ+灹+>E_+`cÇ [ae𗖼0xTY=PtN4PS=*OyA%bfϼi^&:\`Ocvw(;h>s&fqY:. >kW)`>ϋ ט}qb_1t* $6S|Yx%RHI˯PƭDʴzT8еLR IjY^ۅ毿.s4)oZ C765l|$vFGB4M 0`03w$.sLјK'$Cg $f!S/R>;;%(1 oAk#d (_9_k?XU;AwkS kn\7YC@ssRʳ?`g2AzD9ubfӎH"#MJR܄VmK\wV=a(:2|-Yr)";A R Ӄ lPVm9ߎI;Lf%oV?'wB"6 Q헭]Vb'3*vV8 O/m陫g4>f99h__XEcЊ(),:jX駸Uw!Ʒo75Ї5ˆo]#,eYт^:jG|wܭOgωDLSVT˚/+o9n#_uahT]h|Y{J}t3҄ b0W{,[~>iǾXT"c:C i!-n63!}g#M%W*Эt!vB 1A*V`B>h I(%.Yi{:8]!c3/>} q&595Wm (ku(\2)4,_5#É Lg*zK Ӌ|>?=\N%z<7'cӷqۖGfn)4jfΡw6{ko[`y0+]kGaL87r\'TZ/NLIÐ \1}IYq*|#Q5]̻"l,M6"m _(5Lk7^l/X̥x2je#)8{=_$gO-E\ }սtoy`z=Qz@N/|!G腜Y"M҉ȨɽX!h#Xk|`h\OU6_m>N[10e:I!|B<'3ХMI{ͣ4k7x^E[?ƍ⵮DƎ e ҕn t)bF X8Js^Y>UY6mBNbV|}g_%fPxWݴ8Z`,)/;VW͙Bڶ4aQAމ? TxQ1P6w [ۻ`L$LC*P?ԧ<潩N. FA]o*IpLo2^aAڞc96 cH8j?&K7&W.ql&@[7/j~es.qxV=|s nIX( ɐ}CȦPL[NWJYp 8)yl$]4DH;uŎ Inr33FuP#ob<'C`ӭ19ϡ_(v& )I[$nw)GҞ@U.Jw 7+gX ͢ɦNg'\.yvPr"\!yj# [(&K9C`?fie2pj8vTu(d G3;6W""cH idf'ho† T/{!CzIǣ B :un°jiaeSt򦥿؛cy;z6oKl-KNq3苄iV }k0@5ZipF_1:Z .4s.7>Z%uhr!rKHo5N洔 k^P,!ғq y_G\2w ]oeWږz!(8ϣb_J~\P;I.@g.2~Os_|ƵO'dƉ`DX=zԝXAO`(mdZ:D  f 㙥8V1᤯)3I]e,@j$Kmyox0v Bw<ҟ( hL5.k5rȦDԡ2m&sjQl5}l'H+܉U o@v/'9 rWEUnW-/[y^'k#G+֧t[r5 zfA dQ|vEEq1F6u " JL=G-܅s|ڢ&o,98jpտie"o)shOE_CDj{V*dr=|JHʧ$\ZHxHåpa_S4n>08%"*L>O܄R$5"P;v@M*eܨEG| -,=rԵb6UZܲYsfLk(6yݒ! icD|'[ň\vK"{M'3UyX)WbGXq|([iH]'3@izߦylIt=EBN`Z+{b.6mu(#st[*PЌ%x(>o/k| lGy0Y9 ےcwE=ATb%*]bۘn!Ha/ۆ`u@YK4^CUJ7}i=S`$a[Qġ86<nma#.h,q\r8y5pXp IߥÇ$jF[!˝C\}Y. @}p-BDp@QQ9|}7%CHK:8E~w6vcזM!x+1vӕ~=ƧIed+}?&9b -$d~]>˦NbmMjhooUǝdg&Dm2S^%]YmYDʱv0Jv[=dԜ:$ќ E:>:rLyOD(ލ-WdA'P0Rt;^e.66m?ECoڏfڄ-/}}ɲt Z ')~FؗZf@.>-e6fNf=pf׍@s$v8uHy19h1`=5|(/7Y&*x힒;uC~q>K-:m ƘSЪ C{Š,5.<(ejw` "9F`)pϓiť/Q5+Iܞ(Rяrq ο pncID&=셠PnYF*grr_z5`B$- :p6>gR+r4#uF쑭[C$OydJ_t9 )7QZxKb]!=K`%rD&ԋh9A77i>WڞI{#Q)i{+u:*S]羷XWKNx54fVxw9kgĠF|y 툅][wNѹ֑0"V;'+֚̿Gk' ~Z0^1ةF-Yeۀ".S9l#8_N/C0C +cP*OAÔJ4SQ E8}e Iܡ?ivs7En% -G,Ü*l 4fq턹(5_=P07\+;W1urȄ]ж]z:Xթ-4 P P"-Lֆ"(}2@`ЂT%(coZ&?Afg}O&~R}bc6P.K71諠㌎[>#9]B%MieOuBnnٱERwg3TB Hv3exp ss'WCfWv- 9JdI|erR{:3+ѵROµ{\Ȇc *$:غz-vQ{^n]d\[[ O6iZ9f뿳6FqKJW~conJoC/|.=Tθ;:Ҙ#,{ (BзvǑƒd6̗r2kJ _pOJӧ,$b4])}{Io;$Z kK< `nj|W*V`p26&材f;wD(u] :7]`!I[DN}5g‘DT8lPĭ A2gEi* *Q.Tr>ݒ ݴ re5lGZ hn;#$5') !Diyl9r Rrjc5 DZ+糫6*O,ԥ%<f3vOmin0gјU͊oE541>'_io4f2t1;KͪΫa0rQf\\6T "w=3^;xSx'Ї:Ab>|EDz,}b^_y@ 1\9I߆>v[zn3ԃBYC*_AQζsqk6-Fq{UK 5PDJNYPIBPφ";Sx_hu{5M[a <>2B-VPHc3\bgG!Q" v-,km lexaVe6`WҪ!q8E[H2A}鑓)D2{SN;æn_᠋D2ʒ߃^yjGݰV~Pg7QG<ٮ%I#'TI| i,ƃ~qObR0J2od83R_]/7)zb9u΃q<(%/6Xe׋"2>Ѻ^`g1SU\eb"Ctenxw,&KN_%F:uܣL"{zhḓG%Kҗ!˱Β&,$p }j9wbx,[}RyKM9b~Z XLOa!Obǹ6N@r"ފҰ:C8p U7@={[|ajaOLزG΁!brb׃:D>wIe*glF1NuZo N~k4哬]w Z W% :ǥef |b[0Ֆ_'|0A^i$V4pYE74)3V\gz4s t0@:$}tB( F31a:ؗG$3yT]O5M\5_w›J^?GlϹy'Mq.?a+5ظniw(K(%#-or cWM %5o ^iE &SZl t6a3=8YԜ *Zh(9 ^&~$8zUϊd9?3#M-Yr6վ k)S3\ MTlakȈ+!.(J.gTgOq|fk֒ l G]8e"镛ф,M!]O hG9bmX /dIIaӧ:e^z*hѥ.=\Mkq/銛P`.k4D˅"?SgTtS}0yW U?̍7o-  ?h%^4?{Pߜl9 gFncg3CI QeOM͠4BmT06sxIz5 i +tݤz}C>(j!E.M2-S;YCx nAa㖻A;c6Y=QXnF;8QgiyM|TFtǫEiUo~7*f237K64{:;Ew=dAx[P59K pá{{dئObP=3,CQʿ';"_#$ 'yîqn;_Ӝ|[V @D`+Ϻx%Z0@p^[[6)į[^z'~iGhb:[ߚ#X 99@ݭ= Eh7yzCEBR%.VL5DQ;O]kv~6ee|I(EfeJAĀc5=q?DXZ740VPnS<)u /5WO$ϴW+!1: BW۶pov zwk*W;k2Qv*o. W>H.Ic12fe& X?3Qܓsiv9иY A7i, >:kj%Jte4/C~b:pP*4VWPƞ.s/SjѨOTp5zN-jx-=VD1GD~sGQr(i[$W)?2Ky+zL(R,5+~[f(g*J@O$56Z7Sϒղ}_~/VWӛy_ct3Zs; zI(Xn -̓r4gK}\h` Au[>G)qaRm!S"9O;jdY2ljl@H !P #dU9s]m~hO؛WN,?R;vx ֶ.q,CJfrJȝPL:hVjC&Yxc4qf5eC؋o E"fۑ}(~ ,Fgf}hWû{m13O:rك0./6?/-=opx2aGW{Qw{w;Ȼ:ɼW`Q+t1 'U4A#"hl.W+" yI!U;4+T@UEg 6fyڈ.DVA,<,J9@i\`wȈDԥw:Qz\= /6@/e_\zVn CWѧҧSOdmSްNPOiUoJ=vG{җ4ۜV x7hQ矈 ۗ'O`Ř&"듩o:G,e^G+5f^X!њS/[8j^ ,RNcIt,;l[Ƥ:[5t`NYN__̗@JaySRxRk*_O6l;ɯ 0n,C<+ 8DgSOm>p J Вޘ*u1K,*6&O:p7v҈s*!UJLoX2Y@0'>D{HRٛi%P'sə=dU{j} s!EU>~yWFU˧\0ǚ>2ɓdu-mwYSw"mvqzך%$^2);m؁{& ҇7% r-7 !Fa?j{0yX_r 7cm@ uLKqB.rH?ٶ>@g63z#lb{ƕ#qtf*3>:^Aw!X]ۿ/3#.+tv>Px0M7~wPP[?\Y@0371r s=j7`s,Kf, 8dx\^1Y 96;`aU!jʢ~`*&iLQWT4 j/ wo:/ ꦚE+Ӻԣ0Z"\L^ *{ *oE~w[|]/*Vv?Ûچ}V \=;cUQ} rb=«[B0;*N&ކL*-jY}U)Rq|=zd`/O ! i+P5e` m{ݗ۔5SCUjD/!8?#{}h4"6|X}-7Msrz l#x0("9BTp6Q3;~*"s"cx718お*թ k ArM[ppo5,1{"\t'T[NMl-*g|)hբݪ9ӌeN_ˆE`/tGQ-&)ܳjc<6>d,OotdD+%ӱ`L߳k. |sve=2blrMY*1af1K͗ EIz`N+rl-!wሠk=ڮ!;M|E4k8QR* H|k `f$)Ol\c{^  AoPGi:J5aMAʍc ||11~+¾8v|9z<-UyR Q~`RESn-AQO bj<nX{ʃ3:>?a)F{ CUh1rAV#PbSt8ݸȺPGHx:\v6lgH +[1m}G€7=]* _\yDXFОQ@0DbW׼10(z;Uְl[RZ&(GuCwJ\ |Apˣ^ua]RM[g(>'׍JBO؃)(s4XôݶEM9^v,Y[2ܻrsη;1?^2t? jh [^ -ȟV]:.)L@_tq Մ'42o&"]}g)J]+zD֓BW7,YlS{9ރKZMizmdv2z|zLuX^b5UN$JEA.8Òs)$ս@Vִ [5u@y .;fh$P$bY=n C@U;n9;/3ngj8)h"NmCϢ `&Z۫ڌ=*{ʥy Z)޵@ވ{'J'q3YU=@ټ CK 8HZQ4(7❏ӫUZ#T=N @ ,~p%*`'M|&n!l `<↺nU#!}K5s|)m:oP M :omv~8ȄCgvΌ9JnͯE 7s=>^]Ѥ)Tj1AYB>]rjfD@Lϱ i}U\uT٠Q$tn!Y|cW93-M<Â@Fe?Z@J]X)PD!d>O S6&m[fo)0+Hb^qG_bj_荝A 9I,afF!Lð@+1kp|/_)#+]R4"hG0+'2ߙ;@h@fy@GD^?S Ӭ\MUGӊL /r0BD~?cgf0ktmyJp.ٱ[^s劈݀: mG2h(5!+CMܕKn!,V3̡2n!z(}W,_tb`^2[徶"Jjbup9d ģ?oBߘ&+},=-æ)c8CjkLKyq؇˅GC.J~[c>6w0+@q.IDZPzك5_PirH lwgq$J yԴ<ވ{b<{N/goMζ}I "|q[z±ٹӦdPZJ{8zvKhaMJ%u%\ο#Jb!+N(Ȇ15kHEdWW(ݿ>TlX"cG"Vtg>u|fA^j0wEܢsI;%Tb |W@Gb%!@ Gũ=.3 4!.~OQ"}:FWB~ 3Bߥ/ 1uÅ:X gƤ;O0;2DiYaY2$s; 4,AYkbF˯辜8Yȩ Nbizt SI".l+ZS{Ŋ eLt3\WJdĕI݄? $S9-۱u$" 74ճN_DA6tSf(s60@ts|;6s "|OEaJ}xűђy) wBɶ ump _LJ3)Ԛ9SR•4>˾XlD']X(T3̛!HGogxT$q$%RaW RvG?~@R&<SqqF$A49ɠMq =9o 2 ` !V0$JR+i ě\|y+ܮ{$M8GeugB\ݝ#`djE$Z{Bf4Mx+Ɯrlr,(„k^Y|li4ױ_j09ɾ?rղ^:* R ߤ1GYq`? ~2)Ae0>2 9] 7J7s8y`Nn>m( wc m>?cY828` 6qVXESIfI/Q%KH&8swC̋*? 3nSP6G g u ZaHrZGIZMw$;'(A~}Ll7X d83d ?@&謙naCTc/i<)*̪/h"g% ՒAy\*7\Z> VW`1JW营8S'um&yRF Cb?e-g4V-T-5/.v[yK!!Բ Vb#9F^%nşX`*s^? AI=wPrCH ?k,~'bMV@LhoͶ.+xjTBIF cɵav N2=l_|Bd+y7QTrR=D̹7OGAY#hAm z8x\ ̐~tQXbs`Ak>{oXVɫC8up,MY O{eYDmta^PY͑Za+.j33[Zؚʭ-ۂm~2ia}&SFh(;A6WoJX/x|ĺu)P}X]@9!s@uJc_ 6-F(d]}:9X'lm^tJb ?6J~;G(h~mf[k 9M "a445FζheG9.7UF9Wk^GiJ9y }+m(w ڌtH2` 96ie6 f!Sѯ4*!I80XpޢD%=Аf+W#,)2/^1;F;D,)RmEgx!9N^ (aSGxē"}s[xBbR˛U[CƊ(dڄu)h_|v{”;7|cfSD+P X{j_/9ag5 #6Pń0-u$)GK͆9Xqۃ= Te1h}5"m6L^#uSA"%/oS5DN ĤE}^v^rM|;aO 7x93< $K$0')"IҐ-4zj -eg/`:l֚GWA$5>w' Ji~U|fxOkcZ*{| =i 0l(-a&j̗|V<Ǽ6}f wVܺZ\U !p=Ak[5ьu #u]OZ#6;ثbhuX~%D09|E]&.[FGV{pPIo⟋bq3j;JH^|IEuCJhC8j.rzs6eq ~gŮevM ѣV~嘌 ]Cy-@vHlkXZΤP@R*ޘ](>Kfi8D>|4pSkZvzlVR"~]j^  Z>/Ly*̀Q AG`k|B`<>Fk;]u49D/|U#F\7@0/}5>R%bpڲj^c:[*6}xZ~ѱ7Dx^:PO`KƬq}ݶ| Mf5Lvt [fx7~y|ii7WvoԲfxO}醝[ui4 uYS+Ş+Wj4CN({7<L@y{ފc=TRl-x# ÿ<ۿVZ'@)_M5 >e3%HEm]̗brYgpa]VH'UP&jՙ,&㯋EjtƑ)=+ Q֬}3<- q!fOwMGA=HXW_v_Տj:Cr,@k|uҜӵp;dLDUЅΆ:EvʏQuG0΅]10Tyx/1~L.g=O*vGRC;"62?ś*AXfу|EE!tKD49DV{p^ &V6+%-7oZiZkQmTn7a& hYid62ijwJZ=+WIeXR4}D2s6 |űIHh% =+.L <ҡWu$UsGASs~TG+vyC<ۄ\hJͲ2#[X)y PT=tq\X;_8/(@u#b:4.n8K{ Q~B3#~KtUeMlSv.HEQ8 #y8tJ@,zp%M"zLjO0]Smy欭̸[&FF&깶fI5?+b8&%cD'sgͷ·0>55$~zK7~_Pzj#(]'*r{"3x$3gM6ܘUgCn(|f0yh 䜒1KVj&KKzŝVOfp⨄ +쉊[$Jh6tn`*.ih{ZeK3Ez.pg6b>f ~4i- +[2 ߦ'~Gl9;e5#zac!q@S1R; d/WhvwGpM*;+gD&QR+'ԾggQ'!X@t%;IGx tqQjͣnK#^<7œ!*!A:Lum=s(ﰃ*PCͮy4<NSiO]%V2[Kd<bg d0<g j.($Kܰ Hh~o`Rnu8}g9ݪ\vȒj\!&gǝ/g}҈h$ee>snl^2V0Y:sy(7Uff@)z1U <Ѳ#3^:Av4 28]Lb)%ʂ,\u`1K$rrȤ^# κ QXTs}asT;üw-](DMd2Hb,`_flfLfb2 JM[Z7F;G/ZBൾ l Tek}p{Ǔ02[ـN7-VڠP6I/AO\$Ʃnta(SRuG);_oB@>,cEz.Nl}Ɯ*? kQWr,%>;e{u^yώѥ_ 1qq!w8ľ ه)t4NC ?L[qt.rCu=MY"2l") )cygA!SctM/ҘBƉ)*y _ٺ&cqMPijZDi:d- > <ߤs.ݹ%[,pܗpvh斏11YKY-E!?oR8]ĕ%_7Z ;ODN ;ef(KE, >tr(8w(zz8Sg{Qƅo[J)fo/oC г}'=+339[h;YPR4-(ZץIBDbK3v?A]pˮWx8lg T`+#`uP׵dzk1 o\5y ZZh]Ug9ף+@ibb[ /;aBQx?]moPv,ɂPJI$W&>5v(\P+s@KF!!QB{?=MsS⍒V8˜zdp& %2 UkJ aΆ!ݜc.KX(ل8cE'TO@vqb8QH-UY9,^ eKQ3'$#BrWٜ8gfe@s'mx\UL?vq%Kb SS{FP7 >L/$SԲ.5;>TxBQ(5[])@ `΄R} ^s[̶%U kb7^}ih c˄MXF%8.G$C~Ҝ7\^8|V2Q<[]iC$O醙΋ Q\['͎f!h`Si3oG]pT6)^l&L۽{ $ .or5#&)ÔZ")щӹف](q$Qj[,@L/XL[ 3]@7OiLQ3CDXݼ&掔HejBtW |b5~Y~Е)8”ǚs{79W|vn~s95obb8Sxwv2F pȀ([g^҂!S;!ⵐj ݫsDr7l ;L}ZHlpԭ>dED[.7ӥ6PC-l3<͋i<@6yd?2h!4CV'@α׮%:>̙+a`ХTHNpJA(ڃٜ ;:z+Γrzpyt$)):YCV5Ԣu}D+J#4|6Iոz4ٻOy-`_+LhK13].c#Nz3ڮVq%^ˊ0J˶{5ŮOvDw>$ 5z (tFqwnL>_CnLZ%cXP7^-g;k`!Sxvo89u7A?d x\H?L a.X)yʶF)~rPOxq G6k6^#3mÑf0Er >{a͢V?& >'VWg&Mm:?DR6c JPHkǯ:۟׉_]FPn |h~ʍ@EŏVDg9!f?鄒 ,CzV&08ɡrUIi#(|_~1*X:)mΝdd!r_.]sc\-P[`'ːTK;dQdnz\ ~pN[E&RvP2XŪߤn =n:lE7d[?MpφO'4ۃGȄRү[<عW 3ҵ1z@))qٍ_ De20n4 >Zz?>X@#xT/LZ#vF7]RN__x(@ CLGhXo45u}k5u&0T1RB`uoSt (xPuvt"!9yêfҀ &i!/wS[)a̽A=wprǞ+aV1 ?*nM:_vw|ePoBe lzDX%FKf{7Xye8g7CHvU[7j |E.eúUޥ3WHb2Ug@װOjjǶc|{'GcܾJ85ֻc]Evs6 őzKCcX@+3G$6 %zq=,!@ 㨉%Nƃ 4J\ )= zI/PNִ33"zhggB9Vʨtl#!iwC#kpnݨBsCu!Cy^e!a{N8|5`8&"A@U yX+JjH7:GIOUe Kn੔ql/N&RaYLzTqq1aÜDsŒ٫d+ջ0JX$\~'8Ou9.'i%#c8\=ܡd]dEq$M62y7T"9Kմ^9H]Q{v8-}&GuSvE'k'!w=)mlcpF ܊PxN 6v [3I6<ΏF gSN|}v>TϽG p< H$J"_(NΥ"ϻ'-_J'n08b}&K"sW$ 2aCsTuuQmz Ɯ5D?HryN7DaSDOsɸ5MnhCטSh@Ȱ T>i,L5*㶃Α੝9<\K^izxbq3@QΊ0vWG6"͖1 :*AsJ>Q::|-n]e`\~_P_Miw  fUK D#0m) x>~ 1YB+:bؘ~5BnZ-1j#yKW\ߊ-N̑{Kgx+Z͓Y~vVzVT N]o;:}Z B_5_7Q+ΰRR0Y0"sq.0pT+ʩH'y_8ZT4m BFͯsn#+I'3Rوߥ֤Nr|-b}=Ft p{!${LߨH?buz086~ lhK-ziaMY]պ|6fܩxagq%_N lVť6,kt( zh) 켓cퟵk;oRXfHBz?|wLh(Xt' '7 !DoP^:Oxw>iu\[r7=k`{--GJlt;i\5f~u/:)!Z{m(`ަڼY-53iiN7Jq\PL?ʌtG6/{y٧KMXGl3 'oj*({=W2S=Ϧ/QtT0;oW'yGkr9L.+~P`dOX%~eK>sf0ZN7ŲT@] pCQEuR2IpvX+EAs$]gQxS-X 3hS@g1DP:WzxkǬ͗ b{HVŕz̿XdBjA}™ul7-C{IHCL`q0 %ĭfTa &UVb7?Ƨ ;3Q|zoRtJڄibZBԔUiWxר̰\_" []\u04Fh}3&bߢvHȏ6!.KjClo*Q82=y&["SM~C@Ok)M\@swvYqdTHi r`g&'t,J]G#|i,B5kܶ.w7SgS&/vZaU(jkw|*Ju'f=#EV2ܣ. 8?AZyBBG_'ޘ3Ɍ\@r[AV!퓛OO7Ag=pvdF$oRâB't_b.[\E~0䲋1_mNk컐ٛǏR5G׆6%1w$pzB\b޹uJvzzM&?u`S5ٍ xC'`Pe\C)oxgcKyU6xvyX3=^5;@,H{Nr~fO*Ek+gO05\ww'݆MS:k])(xNw&j<,27-t ܇LI "Y]%4lbjEd U; %]W4kմc ӟS! Uf/зRm*::lO/ .xꝔ%:j5 >="8xemnՌE}SQCcR.RY0Xs6ajvռyoIIHϨ2]ժl_x9;m}FY|Rd*Vk'Z æ[6GfXq85N{88lD}^U-c"47iңkQe419Xԁ%O)ٖǍb0Z[8/q!H6&Yaʇ?n45e;[@)ʩxr"!7kH}4}O)pn5v8qL- JMiG@Ҏ^dY Mf>Qs];a^- `+t6/m*":8Pww+zġr02_vR^eV,=Ex\ڦ: kuhtO:&4g1Cw=v!8&/~[׭m\úOeW x@"OsXJ^\|邭ҸfWq"{8 0EDŽVjzl\WÁ>߿q#=X-4v6s-ޘ..'ǎO  aesnbTzXr(PMxS8ɫ;XȢ/,=$MQ!?\d)^s9 O$ EuC?{p ͨgOFa7m(Yxb0:Lg+>By sNp<㳠Y>\+nFFQԊr@5ϓ(x#zudMQ͊; !ot*O1&.}z+*qU:Pzi҉ se<Ѵ-X%E`7-ŘH)Nql6 ]/D˰dDu0o‡qv2W\-x[Vxޟ-|hJ<Λ;pÉ_[>CwRPpaU;+s>;oıCdӫZnօ6Q +0//G I ׻4A}4MXK`b<]MKI-Gq+zp46-RC+jb`3lWĹ9UeO/J+lR~g&k9j  jHd {iޟTc.&tjeBa_{9jUK2&laUi]'vg7p{e  r╨`q}OO,`t(~ }wdrܡSX.!s1 /?) CNJQ} g{NbCȭ=#TmՎ?$ sI ERzn鄑K}۸RR {9 )G[YNM]ؚM6%mtKq&m;. 7ˠh 44;UCoa{%L ;N(G Ѱ}:ޣEABt BY\Hod h̜ j3tPƘ^dɻr)_~ީ \16˛KW YZ NQD+!S^9"9;oPv'bH)^u:K?;P,^Kn)x˔OX͉{N7r+\q@~LOBݱ+m+?|\g5'0f%Ā΄5ff8Lڀ#6i_aU1 GM'@aή@6wu_NK_d "ʲ03!VczߣsQo"WvM9gвӎG?%*N!HRUh"A /HM>D9Hk1$TŶU!෕5] WY=EO˙vs-hKF! YzTuӅyYHijʮ{&kX)j߈cIX,J_ E.\aPŮ9MH`/1$-tx 6*R!w :<5S[]w߯[X2eT@v0uuhND"2H1`jW)BJ`a$i(e=h  H\#NB&u?5`I)THFo2ZQG+͢ CI(s̈sȐfʲBavO;)@Fא`HU,*TY^_{6ډ[Kd[tw KqW(Ն0?9!k-tg¦izWOeNnA|G2ӧ:kU7&aҍdA?0Mް~ Y b0q+7K8덶4/yw1m"+zcnQ]14Geoٔn {$S2LƞHKRxHd ZwWF#h(_]^& .:Cmq"m=k_z``* sѕپE@?nb[iyF0 ,Ǩ?|'A$uMia)UqwWTvg~M&sGPo2*4bb-c)6iM| `圩 ަr# jKZQgl܊_U5B ?_vI+gb+T5y:bcS ܄{$iH# b+:Ñ9Qp-brf4rL05S8e;ޝ'v"뒉6W[ll`Q̸!8= FGܾɫXMZJmhnƳaw*E=-~the>:~wVikZ{֎'0Uu~3T쫸j9 tMY'FN>蠨^<Ĭk%+~QpEDA'jZ4B _A :H,`QBՌ9p{37>]%31ܺ۴<.̂@Ͻn*4uPN B1-OQ~TM)u?E!'@%WV61oPye |8Kj~jtH6͑>d]he?˅9:o)@P2&yrxiJs_ȃK2 tGXHC ǩDlzlxp4qO ~bX wєc)%Y<{s6Ӵg#vQj͢|RU{Q1t␕3ȖDR*p,uk mR<~/xhl%4 _adz: y;BzXi)XBݾI><`c(XMMGT9.VMaUMc6\'ޮ9W :Њ<%j  '5m:G\if5ytD]RWetxJuHӪ0&2!+FӁ6]c(r:1ֵ2=EE6pVws]z> TD((1[`m`8Vr[6a$_MPCx݀_U%۴#G*D'D<oD-ghd.ۧLNx.͒ >=R_(v}Lޱ8,`1e]zd*ХB)Q>3N[}I*e5v7HI* MezlZ8%s> Ap\-j`$kC 캓ޢ5ҁ7QLJ&7yrstAra;K۩椡\"g4U=mWu<&G*>݁>(M!zt̪PG`ɓ݇Y?qbv!v\4!8흀=1G= @i`R=-C/@#.XK5 tK+hjxCW6ຖ_PQqcw߱a BznLHU3@AA\bxV)+:À&)F]?Zd\g駇Uy@f!Nc:0;D^^e=mN5h{Ov6U&4U}xIt̴;9{ ո8Sqg&xGk?f(ʐ'- ɖeW֫ K6WdCÒ XQHt nR`)A&~Ak㥉'J82@d(ΐ*Wqw_" CkJ:Hoev0^HZIGIrS,z~&Ч;\nu,ss=89R#ͱ8\4pSՓ+iDkx\ ,[i C-=-|=ND̳7Yg`.șKyREЭ8H4Q2-mk}OYBry/#T[pֹ҇VnXF7Lp*OI[v@PA؎w]'@_%WQ~Rg}ҐFzAh艘U)֪#w_a94_ZU wlsWhqҨsA %yx n>ގ3"D)#*(wqlaz2wOhivE|aMаtƉ8`m% 67FΙMI]S3nafp'a+סiۉAGՌ|Xh ҮTU|I/@siHdޕQ=u3]c.p:KaBMM*+.& QPoY`hRkiwBڍ,hR`ζG1~J̌!:]1Qy'1 "?qXA KC0I:y|`i4>wa8GM=lßR+ƪ~// $,c3j6r.1-p);` Ѩl8kqݱd }\7r;(b`k;]Jndi ǦR@7}6ljAxKgv1߉ֽׄT5:⮴Qy^,@rz ܗ+@e?n ӸG1 =tIQw?XV\? ( ŷLt2boaY1jo'ȻgZ0mB+A @hR̙7a6%ޅ1[&6D7VEqPmTMljokI92xQ(f\G᫟уgm.ǣɖ\TNCͲf wG*ЀDF\cƙb `p8`h@gXeE @ޟz(6^w4xLoT; 81`o4VkvEuTc7WU%S.`,T;{?" lǗh`^ʣ !bTqjC:ZGHte[7s2KFaLwisMoN%Ugnp&Kν:pUNo*g{,C>buL9Q]m6.MjO_}mؚ: UQTxYk|az-#pԧq% Y7BGh:7 !x|(_lOh'DQiy)wY vl5_^A~I(ji,=nYPW+7P((B8@ N C($D<5,` Hq⪨νSD0#e `>h.>Qwe^o$6 t^ې Iӝ38Hg23QW z/ɑ7&<(m3*%bxL<Q8>;̱){->~"-lda5 CXRF1^~C6gFt Rm.&їx4}ӢF wܔ3mt|X2!w/T% U.g\y'5Pp#ܹw 9fh dryiGwyH'g |m~4_%8W v]k}ssЕln}nR>~*bMh8`|u`nYm'k9)9{Plm >:И.qzF45?՗2dB=އO34t,LҴ7oЍmE܅gyR~@Z\~EPۀVcvMCY*[ aRk2(+۶-AٹXC.yDsZ~v?h |{b{2g|y2m1OnpOoOlɑy-)vH\qLnڏ|1sMb3c?828NJsW6I Ԁ8x:,qaM\- ^+`dHM';ݚ!c"2ZAҫ\VI c)+գckbd d)O; ' r8nxtDsћ< Q n>bcXnw4 pX@:Ds{+,݌ &? vrJ3lGxCc_Ng}3DlҌuz̼!6  JGHJt:Y UAkg= ?]tTA[Z?9؅l]s =(:=G #`񅶠;At>aZ΂gM_,rmxa1@\d H^<;)ç},{WbfJ7g dk +/H_yk'2x5gSg;[1wTb T@!RcQ74;jCyGrxDDKU{p @m_[!I4lNՁF9>(n+*Kpn-9Uyn]V2XMFhJ:Ԫ CI~Fۙ'ӽx~ǯ}krµ!Êfވ@7ܑ+`4۠0 ќiD607-!]d_v]x۶5gx(1>}jv'``FWP@}2k+8p4|>zCv=%KΫo 0;&axDgHdܖPt}Gke&72r!~Eyp=Pb̼f] nnݷU]i֢P(? w RyMDS)4>D8hfdF;N rz`k`*^1\/]HXmcbK};|hXph>A "TU##X:Zw9IK+Y{$M&߽}l{5iOX a̽Z^/ (H`$o}Ro+"4X-Dἲ,0g].+]^0YUj KoX=C&T*ŃyMi7圻^FcGKp+ ɜ-_Ga+߇+AD@.<ꎆOLEN`AW%U徻+I)`D fu&yqGRԖa!7,yK#mUzPg S?.-)3-0]~J|f^n}9!F#|]㭝Hk"N :5"4Qs2zT2E!|vbRH}7spfk|^s:bhRuxJm+aC/ ~41O0F=Rݝw{M88oMLr2,c`8;d傻ylI8cDK9۬^y$-bWTr,G",[O#fR7>0\ntBI[)VBMҚ- *Ō Vddx:>*kpݒ?{b;8`)!=HPΏM`I3/qH؂:$7SndE[-pK+{?uv*/i~tO[n(Euy1#}=5 uԾ/>$pbxe; y}m<R5Xly-+Z٥v$ N&TLNjH_y\A&b9zee 1Z($C6W\ :^˫|ޏI#uߏUWO) 'uE%jHPt`@\Мk)ݹgALb-Vͼ+-C"cFQ{^ j;h~天VƩ}nGBKD;̴ Y|{g]H7X < 1EwH`dyCdD.\6w]ʻ\.-ootX*i=:Gz".ì9qtJɖMCS>b8^^4X+Z ;NF'7M|y â;sbd8,ŁP*^2zVVZes5I4/{fq:ghK, ~c^_W,)ƪ+ ᦩ̣iF! Hݭa:ؓ,+`?FV4>0~wjz&tj^[:vc"K+c}Z}"j~Eܼޅ%=|r ZhMozAѫn-f9 H( GvR@Ay.TdhDϺ;hU ]`1X-6.R*$Y~ 3ّ xF ]@xb uHk‘TTeA1ALb=(tU9]gejs10j(0d݉WRYlUOPB)>bv/<q9 5e]bdAEB2>"j NQmW,.%nĤ T zD?z_KQAѡ( q+Y3]v?-㶹MҔkf re9R1w2q6gBd&<;/0dRi$K  I ۈZ}H@4TI !:[`ε 5lPـmrO<\2fr0>f%\ ?5_؁EY@p <'u2042q~DO5T!PU%ITn[WhAT^y0pd涺h@ڨ-Dl6Q=q*mK􍗵0v& hrx?pO~ugj>v )`DcC;_இKʄ>Z:a4Gy|_,S`yW@}N}N#XQY`2{AX+vt<0ly `2)ޒ ' 'MdJ=̀ <8n"xj\ihiʍk&O NY:z5IDAyu>[iyӇ@ى|-9)~([ҞA7 9sT/mnp꺐!9g~@}HmdmE;aqOGJ;J4C^8{tiɩEbcK G`s7M$Lpjb?*s`~D᪞DbRݥ *MCEKQJ 2h?r\Z;.N(˪[C[JyTsd`vb2=(6(sxTe4i &]W}S)Әq_)8}3/PoӅ{ –PWmu@*n-&d++Hy  z .8ڈmoq'UŸ&N&\-+ ٔͫ[ S=o#:R41&O-A 8n6#>U-!!J}|NV&qQa ܐo7Ǵ~G>2"\_ _gXHZ$s&[f\h-9lD `v֗=ܺ].ha`Dm!]Ig%"պ@ G|N%2d*W{5b-x*уeG& cls!L AOp8NebqUFGEC I"$_bJdzcB aN>3u4'8M$uͷבpRS~Q%rK86`ꭈfU'GvZ"Y2^$ْk=7{4/.uǗArc'ͬxgȵLAśKLC"-ܳw{gh>G>v #{j IS8~ϸ?j}e:l mUWB Pj{DKtz^C̝cr^c?eG;14KBMVS4Z5-30;T^[5%qmYC jTZӺLZʼn ՜ZbW/ |7II0yhH",&"#jWۈB>Jqű1Lw6h-IS  `ېє47};1Y- ʥ|jG`,BF,;r[+x ?(9!ɰd=Ʀ#ogNS%%XQ /L({t ]b;ߩG`?$j{$[-Ŏ?MFiMGMƀjU4QV~rɈ?Esv*zWaFp^WoZU- ܹn$'mߥKi_ة5s6ˤ$%l9j][oy-!|ݫ!jCK'g>8^C`q=-/D"CrS]b񋖼%$Yio()M0_W%NwA[-PvK_g~0)ƺ9kѩvCPW2AZc.ubC*^fO12V<=(%bL"!!&lAQϑ ~wo5#/aQ {Y3w_2S@)L/חw6`xw!x{@S܌,jnR?@_u@.:蒺A;E\!SC)z->K1n 5 RDV^VkQ{YNshCYYj譟_%S vSӿ1ȂF< =K"JrUP7)]686tWoYZ' mk1Y7pu-RO7܋3,AFGoɇDIr82$O~Z:0YFm5;:Y#g#_Fwsݶx9]]ړ6u'ӄ_O?wNprEXM&ʷ<BAj)@-Tԕ6 f\ zY*T{UJW$݈9*xU}آN(vhQ>~B&%[3oNeSD@yAF/ʰ fI`fR+D4@Mcd]wBcZ}ĶGni9,9ǏUǘ<-}~j֯bTjUYG"]Yv)~i` WLR!jKSq,-Xė*_Psػr[~nL }6P3)o͸’mSH P?ᆢkV-!6+,]=1?qpěWf I(ψԁo3"rIy:rm#NCLׇ=$[V,#%~@@\@o~ÙG%T:ZOzE,[5Eyn3LiGWqg*3YU,OV&X7С;VzxΆfH0%2 B޲[ L>/>:)洩}h581GF_T %l QT'bDUwl,~C(y[PJZ$'&Š[F۪sk,%&>\m4q؄e62 ?{U`>xxA9qTL Ɖ}3bKoW|ˋ~lm(XJJ Yh),dM`'G_Q.@-WH:2lfmub?u,je#r\+*ؽ@kߓ>~q=tP^i4 nx c} 91ll[fpԝG~kKBt#N1(7}44I7S[ +ƈLcDD&q+/.:USbNL~ 8tGe"W_>M@$6[Fx@:m"4Mc=dI)@60Y5Z$4$NbV41F ph#4կ6[!3/v_dMiGAҋEY—= V4"|@|_[>8'-܌=^-vfC$2we:lx|5"}NaZ-Cٵ/lܷpxoWaq{dӴ%I 1? ).UN}TF~k-B|Y6ܶ!QLph%. D /3- ZvkG 6to<U~YYf{ j]\([XnM7$dpV~[W`ySA!No\n]yMQA}tSB /etjVQC8f )>K~?dg`]=`-%ց%^ ip* 3Qmx/v;?֫i27ȴdžߴat2yEk<cm0'ג["x,\c>30pcI`Xnkr;ϝ=G$̘DdmdT.@Qc9ՅLEۦƢ QbDu(K]}4˚QSјAbEHBˉ~![hH?QM/v Ի|Uտ/ ݌ǭ8Q N%R; Zl!7BXaV Bo; 0˻_*!1bXDΥpٗo:3~bHQLa,v=WOO T2+TA.vf4LXe#j LsvQ#yXA 7 !reڦcOF2FII厥dD ?%g+hT",q?콦HD u$6S !),^­'16=ʥ Edf_)d[ŻJۤ7c2QnzN!B\3FE]QIHIm)[!*1xI$`a.QxC2ʫQda͂xonַBNHl <5H]ƝDc8X^m̒@FhS'#جa/aW~)a"8ylv4}ׄ]zp[ֻEXp`qioPgoդ 6El'qDJ%rQCOQ~a飝 a!"cp 'իm2&XٟsN'?;zӠ(1)acc: [Jz?8ȟ:ӂBEϽ t_ަy 4DՌ3{ #&tt}H<33RF[Ca-xmh@?F|: #g"}ġ*ITlޝYa)jnp3XL(Ɗh%.Mzd;g<ũؿ3NSv PU'F mݑz wQeQQyLmtXo rؿW$*g:X}aqAmo2kO;ֱ.,G|_RޚLV4XۺI␊FkƖ=ƺf?e6ЖD2jϟfWG@VȞ df3)]) ]C~֣܁֚(1lhn:'wt+ٕ+ ,(sZF]MLAɤ2DT[7|1Ye QZW5Uιב dWT.c?P]ʏAH)N UcrY(}ɰ4y߻b7-xg(/;vm> Tɧ%U50N4h/?9Y{HH1J%I;X) h!O}#HmM\Tb=b8Q3 xƁmF/PR4ۜdL&Qe.lUrRDbTF"uZnoO~Ltt%v}yl Wny.q>G:m}q.$k>}lNZx>Nw?$(Kj5KMNg"'RV4=lMCHq UJ_9f|.' I[z 6Q kṕ&S=w;yCSDn6,yVA)ZRb4VtOuZ;]a0~Q:X,Dmo|*:X3=4ÀpKŘe}0kKI F20d'60/SAzlA.B}䁊D4I -M#z_1ߕ$6sJ1?8AO;,)˪k??= qK`_0ofj%O[AE|UWj:&?9'(nB k\* ʾ*j+OE1lbMT6niY6B().@((}ae:N\,ڰ Bk*C3h,Kr,!BLƼG؊b)!EtA\&!KnH;]%'ADX`;z" ӓcU^pPz}PS=r8]36b^{wu?pZA4I{c.U%gl+_R6V8-?+DOM@Gw̔QcOF@˖g<'Rz봶+ޟ*=:&XMl)'MZKDJf??Ćv}] ֩ՊohLWfo$0Ho|;Vo[w঺BYZ%Ky'WypN&`2&v |_vo}΁G Y2o`=p|cZgSJL6PSqoVV'nPqjN CzIZ(LJ5$+C3`>2s`>^NCEI|:_f}Fnvۓ V{3bߒ82cMόd|pf%OɏӨG{d>+|N, F{7MӢAM;(s`[/}4YwnܽʼnvuZU1KSH|Z3+BAޤ ^n\ྕo88Q#,u9N"}%iwi9JGzmDƾaFq|zѕpthtZ{7:G1~ 0'-ǵW3ЖG jݏ$vs c|is-C'Zl#d N}C$^WDHnBUǨ,gBAieT(B sv $uԻI[_]:oV\shٽy'R~uT4y,- }[il7L?fwq `EuLKOoXN6DŇA]~}mm=f5t+I|ŵ-KI`ܐJ8 eNX( dv ̅8hzDŽs UpOsM4EVSc. &v-xݖu͞ *&}ZlYcgNYpHF \;j<9$=uwu(4r}!űbttHU/Ҍ ֦GA؊ h#~KXdd CX€f]ՒGoA5(.n&Zp) )_[EdzSY^J6,; L13 d 3 DC4- r]Q?*(oᒻ(#((?[uiBJښ |(7cŹ+Jd6g'xrr #% \Q W뎷 دY蔔4 iElO2zng>qkN>oqUSU]b liTNKX/cVN?liV\23 BHcntYrxp椪$Yzt~ Q`]w68K_6PU yG՘G!a m(Mʹy }!U.Sͪ5X^.EǨ4[HoaãfH6XX3~РSὩz'-@U %OWvGiolRJ$XQOVO1Phps}|阤 (N3g@,Q$`Qc51})23ZEUL8] yt͑U ]X*X%l u{{ xfm&'x~=FfX9~:0w^7:vh|OsґA|io@/AUg"49v2AKFCI@ϱʑPdir~C!*FXzJv7Ӛ6c(~f񛻦w60)Nb1*AJ'z#<50e¶,E"p&Cwt%{Q%) -Pcl3XM:@a{NIvV3Fa8}|~{[\Cn Zၼ gAJ]Ў[;fqF!4at6SJw~`ČjQfEkR\gԌ=W3 U9Z| d2]Ğ2rT׉WvUZ{#:[Z>RQʂ./5\?Lm-^VQgoMOq{w;[]NKg'4X "}srAn;=#_=(αr&aPiꑎ'Jc2KY2M?>wχVnL:P i9|evh76EJ`S{&w wTUQsQ_]lgIm/|ܔ!NX?ƫDDI$Yx]5_?{.5ޯE]BWU=_fX{A~Ri*gbƙޣ.Nױ#؅y7FCw AyY t-4eO7G P*(" {Qpӄ˳w@ P|e81dKA?suEah`H654w濖YA?ô)c_3n]v㖹}"諨-o!K|`"򲖙tnrD7ԘW/sA|)ݲݏ {5Xa1TĀ$IITS!RMa|^lf"Me䤣,&Jlrŕ!1{]c3RL?\ h{V݈׈AǮ~9%+ϝ<~-U["=O`An1J\2ΨP 4mhrx!ZDhdxd#= P[㏦V1L'ʊ.EVHQ2|mn0!QHyyֆWyS b zUOR˝]$zW=_d*,&ou`OhtHz9dyH1;>0+e^|c&Yor0.K7o'RT:ͣ zWr#}>OH Orwc4fT H2o"l4 .=fxWXTiE*&8XȚbs>b%#/8u5>i.т86OO&Apw :z!?S ӐN>o̺JU ܵڇZդr6Otd&$3M~HoٹN@t(kFOW-p倓<~6=\z,''mF/!UN s~ok_(~K]*(MUV]g4$*պ$';[eTv]o1{{C~ID\Ȗ HU" \ݝljL /`#?MJ)VH0Lw Vv=p d^X5YJ)N ¦kuQy+ޟk6׺L R2Kzy!d aߣՙNŪ}\e^=)w4q1/֫wDOD&omQqb`[ub;D* ,"@-kal[z)L U[Ce+e`iae8QiF=;1HvukVP`fդ Soܳ0{}H@]#w}sgq˨I-f_ʼ)A4&iZ17rRk~z_,_3 x(}\bU9N`6e4A[M= fk,sqd'zfHܜb ̎v[mc/C"slt G5:db{'xsk:bp?O,QJ/tHܸ$--Y.Tn:G9h1^jG Пy<~GsEi޵7h_,K8Mb8Ձ\wZ*fT9?P~1TL:CH88/~x@Զ!e (N-oq\lN2kՏ}N_+9ESRTvHaQonUQA2KIT$bkļ7a*%ծkZX@iկv1j_j#y"6﫪զvs5STJq^܇o6RvH Q=yܮu |E.DNA"&Jb#&D0<5C}>p:; 7$r[蔪MUc,Ozy S ]/P%R% 㱿+`ˎ0J0W<@ccB"{cl'Y9JmJ0_=U\ǥ3=۹Z)"]_3evBFtt~ 7EVH NMBH:`YmAz?::는 & lR5,!(1}|elã)s=Ɖ"O@vCG!-{"N;Bӄq }Vj. (>p̺ău!-^Y-^hc7X@vs%ufrg!o @3GkĥQQ-x-ND&wg],W?V^K¯$!C[ 4'v7i3qEh03INOшm9h(wJ_QVb*͟FWeY5gYB,m: 7Jp"p2$䍭5w^;tO}5c)(Ϛb EmPjĵ<~j^=҄jhZ0pyLzdv vj2s"ܻCVL4 Xle`]sIll8kq: tEG= +J >2gˤ[ͼnȥO$p{wq~al/Abjba p..L1%xqRk6& gwC7oIͤΧɔ&]'%P߲GXCIX?bJNVGX VFQbLKE%DC-Ae>7Wꁠ ov!7IV)ųߊw\{^&5Tegyht=Df`B*Of"}XTce}FK_b3M@@@f2kOqM-Kl%sAYs /琱/N )K#C7O0VƜz Ay``$\ hv\ǍD³a܇ǁB37mdI:RNXTS'>vqsawߊ(AzM%,O'EE5j4A-5$xEBC(l̫M^@DtRWHDR,Ҟ`u1#˷'2${Qnُo>ɷ_,d0U5~9VsAC8t|yz~Şn?Im@/~&!cXPJ|d$bMl>ŹA;)w{5noYl/?WG4\= /Z_/֟{4K7Rˁ։DxD2/b-/$|*.FҖ0Q=$bA4uMwm 6O .($Xvܦ|͉,EwkC$eNL~jKmҢV;]3=$~[^p[Q2=,ذ۽ٜk.80A+,֭>kIZ=$cEKߢ#e1V˲u/f/qØ7b: =26JPXM/f 9a.p9fj?i7}yu'!eNєT@bᝰq[dl`޲Ja ¢'ahѝ4KI-̂_VN6v;ã0>IOs꯿-FqPşu_HVAńLho:Wz%i ,^ݦjau.!5 9 EA#8}˥`К:E7!;MyPbåFk!*eX>?@49r sDLN!'ڝ}İ q1b`].øcw&3ʷלG^kd8dE)r~z@&͹,y'3s&EP6]A(kAc=}X |n2RUZnU):T+Y84f0:wGl( [Fd'6&bw;rt ` r0全톽!OZj bzǣzA#-|F##&FOd k- _Z3ŗq#?@ƿyv:<*'R,Ż2(<< &إ]惡:,⭑dǙI.)Y`*}x֏ r!Ȁ+n>si 0+b,yiH%95Z}?߱YMS %ۏQ Q;U#JseB@y X^eHm(H9-C} m0y Qb%aadBh3Mθ5:1>l2AcAZ:K,ոa4z[{8~DjjB:b3|q}7x<27ex68%c/^Ejm~=9MWeTjbY#*T%Ь,zbhceBgNLȅQa:\jFWuqJ8#Y3΅_GWT8jt]Ze#[e;v⼠RoL7 D:[_JHfrWgWtCnj0AKj8Nhn'U,lM-!7:/}DÙ] nnwR\[ 2:87E]啜0LYNxؖB)*[g| pfЩܠ@h I|n܄{Fܑ/[$-d?(hc\EfA+>R6 n:YQ:Pz bkJeI_[S`M&A@Z,eڵ/,-lLȵ`\̙Flt9w$78*v.j3Ǯ6nhVg`OUdƘMW28sIJ0ڽh ATB}"5ӗ#4NOtȋ-Սu{:FIœ6C++TOCAn[=,B@~j.}¥,N>Xee'o@sRpHca^IO8 ȽKUa{bۦp}c,Fè̞0t:%c}?H|*T&Dԏ̾7"ig p{ (8X9پSDr4o1"Nr*:|Qq mnZwZdysrlCWgaᬪv{*G޽ pj=<_PTHwꘉ$ ;P)E1^&  {E [hhtfd\)_'LL4CBZK__7?, Ҳ:iV@CUquE68cwE(< 7BEgMr1frFyEPIOXA؈4|`L(XSyvi0 rL4z&Qu6"or;$xrbBHWM轅MIsA*u~8UW [[/b\k6Vi?U kiYha\G`@IMA1"Z%E\|Lcy dη7ޗrb 2ʞ x@+cc;ЙS:6% kX%d%K+vC-kMF+?RI {p>@"b{s4@'ؔ08^;_E(cre1dك Ͱl_J)aw'oElQ4_B͟&씊YS/_,Q3;+GU.HзI噉$q^e.Q']O-m_?%/Z۝ߌbJA",$9%!}ΰқT+.͂.(w ;RniCjՒpT:;xk|W區Sń6|{256V! :^}N5lFOΐ=K bJM؃,9ivQҸr RHE;-ry1C;rm41H!ɡLRA YPw]64ߑ;Pr;'gsEHgZZR_΅t&Q:%8ظNXN (ndLʌ-H*$`(r<7_D7O=R6 ֵ;cW^3 ;jj,QLx×kJ8vW'h/x,}%X9xZjPgY/cBտ}SKyǙOYUϑ"oR9޹69Mo\I t7ɍyR2yIN'p9m(^LJ9y_` }j@ۅ j3"ô8E4gz`GWP4z O+IԴ)&<.~P:|^xP_[L]$BJ9me6SG3㳑Oݟ:L!iKgGmKD?iA&og}cEٲR&z"2CNj2&X5(39 Z;:t?n)W *:[( -ȤpReྣtbo-Gxj0 B>&ԷYk#GvQyQ.9Ǝ­=UJ~i{biek ::-PLHN EՇѾpqҔ=i%V#UX&(${'9~I9N1mh j3T ;`N#9!liBDXqSyTMn\e۪j:<փ}zJN栊WOKbD[L~v]h8{"ܽ(OK0)*EMw$FƹWvVX 6$Ң\̓ʅXgJjXKj@"0`cs:Hr5|vشJck]ZǞ|86=m޼GTP(ѧ-=pS1M?^]?|5{)GIJV͑d(7ӻ]]7V٘ d"a{,YdYݵ%=1ݚſ}eJ0傛\447aKY@3g8f 0ƞYK x ^H0 ӭ.iO:2 z=kCk 3y;IOq6x~0ݬDj]E ϕu,ghk\}ewWU)q-v-(xU-l788:!@Gcwxgu]x3 ojɷ :2YD&XC(Np҈墜\EM#q IO _]n4p<;xtapgwAڭ5ӉlRt#(P D=`9 \q;{4Q?)pVN!iݶvy?"WOX}/-qRqjN]c@o߉SM rs$N.  ?zR Vmn.jDiu>~IRɥ*uœ%+$KDHK&|SҼS2oAXxr`J;#Htf s/֘JdẁRje{d]d*W۩Ztp`UFyʍ_c fk3k1X KĤyC DYUpkV .@LjL!O?\dl lZΣV{}؄U BSx,IhJr',;(T0h1 Z+r%[ ɔ*ggkv4"zXuPBaO%SGOlKO&N18hT =c [.l7Vo_]U@wLnwAΧ $a3eJg\>1wc6ph[ܚ T,3fvFuo^ʤ567#ե4 y!^dVa&vwkvP'=%Y297ۥM\QHK[rudX2>ޚeh3 o6j_uJҍ+Eo6<=ê]p c5!E]S=N&hs2=ǟD(Dٍ.rhfؘCx{EG/`mMk+=CX%kȆeȪ hMY<&iC "{lt\ʠ C-Wu!~[`wI՚="eْcU<狝JB.ҖNr!k\wsԸLgSܯC[=ڒXX8]`Lżk_V꼅l}$uv ͸a$1=?u!d\.ޓ2Ki{|k37w&uV1Š^Gޙp $:9\YV# 1;-T>vdU4 %IPPʉ?Eq L429/3yz2"tѽ,>ߥBИ`JdI)D琎ptٕDR /ȭ>1 8C Gfj W&mR[Ixs1n*9J[2IO g(pSOx<B3~Dds[D'!qY.+:<)IYH'Kn= vPs8xŨ.o`, ut>ʙI 42ʒ4v Ҙah{A7S9޸|m% 8>+AMx1)J^J+RّBZV y$?5z2[f0l:GfKaК9.fOKhqGˢ(96/)}/|ݔ~"u~Pug|+'R,USk`ʈuvI\*{>1*y93HP 9@byH ;1E܆֔Գ$Xvgm–#*1L?zZjUi>e`Y:Ķ1a<ڻ)+Dv?ROb|:X@!h:%Yc?n|7Xorf*WȺ.& ƜL4T`ɨ3Ą|_%I]S"%3(1+0 &a+j9SW?ʐ ŭnO >:=NbH-Hf+K:ΩMI郣\AgV?zl贐J:/yj GeZrGR!U֎r࣡P*'Ai8ڇU RUpɏ4N`aq ҃/r2,IwzK˦x{kf |Fm8qȂ 0#}jB-zrXJ8Lp,> 8RGS" 0|'._|c_# dDM@YЮo(f, S{>(u~좝B-xQfkMU.dśg4w07mlĔAp8h0% d Iv=is.,C؏9.4)4V.v](>,nҡ`w23|P aNr S4ŊI-aev\)ʭ1k5֡zw@q;vMkTs%Sw͈s'[9%ͣhXV_@LUxӬ@E7ה\7l$1 HZ}B lgO*$M6 RȰdkh<=ݢU59;徶Lkx5q:V(6D!!+Y=u59zL\S4+:41wOPs[yė02=X`!zpPo Ef03 /wjʔm,--Иff*jP})?9"]tC'dðe)#C PWjE 0 vxq"yF8؉ܲdɝKy Au3FƇ0= K|'CdeTדMk$QD*I] ..ƕ\gP㇇ktK)X*sA;vt3zCtú|%/2fK 1JkZ+mǻ 6)Ր?$絺-{h6!Dŝ]SE)!R:&̬,hfՃê2oKerK40dQRK ' tTc E;S\8DJqo$Q!#pmя[.l6lH6̤1`/5Kj-&R$ntAD >N2)^?XBiEP~%dGl%G){?|*Aw!&3)7Q^Z>@ WүEB͛:$w5"r0#NXNwrZ Cw]tFSb<lY<ɠ$Co# :m zO:;KF&FȹaϚ9cyL` (6jHeBˋ#}lR庹5g U^w뉌U}v{y@kUS#gcԳ;}i/5*:33}?HWjGZ\Sh,s=6y1N_fq0u'6f +n"DnXra\FץmOC+L0!2-OJ -{oaq742^d˴hAޅ##qyEo+x.s3Ϸ_3Ys3ӷ}&\4ȴ;W8<gpl9ɥ0/L!audN~F5_w\b^ Lwp]X g:CAKϮw)ȬR`.Sy< 1|2UtVe]pݦ#+w$qm _ V5YBdqpvI:ea͔MD<9oʛtÀ |tU<[_+(ͽz1$PK! aM"ϝi17|5|(..ݘZC0i,AtXq%RVvsl,O"Nr Q}b Wdz~WW#*n9#&Ej[|p c0o `b\brl|DzUkuuugn }b.|9 Hs7%1Np,GPۤߪW2m$Evu#zq,kD,"X ;‡uQ¡Jx)& 6k{rE$ͧ$6⡳__ZQ`~Ė\[ †BkR K,ak%zkfSw ēN`u!'B޴4!`bk$Ґ:N.ξ,tĆ&Xt u!2>5'RG9N8_r7Dfs3\XqC ?6}V%ȇad4H8IJÆ9E ~JɖZ m?٬*|yDM".i3GAt#m,nUS쟖!3ȃ3:@ƤU R T#"M%8֙b֐ {jʼң+wln\ޜ6cn2+ S23ٯWE ~hpz8ebRfK0 YXtSC-8G1 H1;0MC_a)`62vN0;Vp-k/H6֚É͏T]݅ZfB}o_n'."OD 3[Phfv M/s=\z#<`0Y!hz`њ yR@ba*EإS?XASIUX@8Ue@$byXԁ`S,: >َsRzNp/V|| WTN җ5K))xNIv1xT/; ) 3 ckO[V\S02`BS&Ç/CnzvٰZ*ee4x SCUo|0iq"a&CC"vpqv\-v Y{)3h9cJ\ ╴v42pyH,s.ls$Fe[jKɥ8RIo#w AKppEtzJ弮t)AZL8dPb{dh\5 I-ǷqAvjPuR42USMWWڞ+U3 W ۴1/L;MP;Dn"b(yM:*.: %w$ȱ4  D#@鑟 Gn00Їiķ ~$D,T.;:5]Ό;{=qA&¤nGj6.TKӸauY VjqBH/]j=O?5l4*F-lלCM"(;)T/[kJF us'*rJ]{㡰]Dn3kz`Y1(W#= x:Qq˅u!Z<^"*ջERCy8Lq]Nq:VP&7"nP Xx<7m׆6$+A6sMZC-xgK )_kSQƃ+H4lrN.)=JEORWǏ{>BhpD6q#KAm  ~۩p_({&~sҎ\"]r;S{rq#d7AueccgFu>I1( | 9[k*1VBwHjEwc(NG:Ј`T#oLFӋ*ԇiʺW[q1fg k3chDmkJpz!rYg{AC-M³Hyp~7VZf:g;v,/zfCNE HQ RкȤI Zo2DQm;l4OTT{ cA<7T3g_JՖ!{ ]0ZVk8 gzYS\ K҈ 6oDX8Zthn-]| vHr쑙w#R=Mpr unMH*B Iڂ³2 }n;kR X$Zh4N딗1nU}3׻J{p U IK}ڐ5c. Lwi*]e1`i&wzB.uDOM D s"I]rZZl J%0EQVF7tqJkH񆈄 qWG30}LVhetXheJ_Oq$,']YSq\UjٍGN:^nʁ8g=){-m/"Z+Z KlJq`1Q*ZnAgf{H4#W|凚 kJɡ;3hoN$6 כI#LES@L![??I,ˌKH[#*uXI {xcZ}uϨ76ingĻskcWpN)A? pzՖI)W{Bs 2>v/u->#E%6(}f2\ [kOݞ J??\T{`ޑ* L$}HIv-O>Q~],D7be+ t܅-+\ ؠjYfR1I$P\@ذ&Ƀ^o5 K8zvЀSgZ ؋ԓ#Q=n.RpH5.<ԻgP5xuOYt(\s-ᾐi|T  ǞQi.G`q*`dO_[eLO=R@qՔAXwbG9UT4V~$9 MÇǃ6SJuP!,C]R:1wQ7DH :][LEPDh0?ĤC咔N<A[ 7gb1ޘoQ(5ͤ","(\"  7=ejP& G-y|3 EB ]PU"̔;4DDV#Wn ժQL{X 2GU="C`>qq7[˻ `$/kX%)8V0f)!eU z>, !j)m@rCg R<^59cu0ԡ8Yg C׭8a`m?Cc#Xc (`R Rp&C-;kU>uN!}JkTb'?.iKoFUށY*dnؚȧy>+|Hr+x6Xgd]r9Z6 W{L*9~n h0*X&qưGW) :\ kV;1mh%'I;w'UVkfK;p2ּKS kvi?JzCjoMKZZ= L(jnUJUs)+ Zt9+A˒N[VΦ4󸞷5Hm2~m!AZ .M>oXQ;0W6Lw>Z C k. إ fn94&nՒn}Fo>PԲ/? 8x_.h`No$;ڻty{pa+86~̶!)Al{ dYՃ#Db$=~4iS:Y{8Y? 9g Q|'d{F ]_=hn'0ѽ!ݖheHgn{$ ak'|vɧ^Hk`. ӪFV@Z,vybGUEW{ũlSA'FPhbY5MxIX*B(iA1ca_}ni] dA򬒥גS׀$x^ AˠͪYnfӡWΓ 2;V| |O`m5 NM7CV_+ w:TVxmĺiHtr9jڰ%T] `2U&;1q{{#8K6Ee NܕץiU2 R ɖ4zֳ'讏4'rcw> Q-f4CK, 4?ua1rD3D E R/7L*OT]]Z:b.elwN+SwsRd<&rNxQ!nnK |>: `O G{z6~Űr8`MQ֖z8v$Nz*%EvwRh%E<|mww%pXε ZQ=YeJ۰j1$!SpH6Lm XL\xr'}O7  `$aPEZK_@{bYmD>3v+ڣ^XD(VRSJ3;˗`Y|P͕W5$Kiĩ~,vB(i݂m~P[jW*mXO/X] tiB請;Sͦ`?@gF_׎,[?`Xim>ư ͈bx_w-oà/qFDS0rƒUj"gPɢM8#c1CzRYנ jр㠰n*nsa\0,cl58D(;h,ƂQqW1uWV]R5Z|_|iM,p}G@%8jߩd2.5PCp]O }nkP~Nwڑ-̓"'Sap/nɦ; _~wNj>,r(L.nkBw"-=8oBVVfÍ_'] ?^"qoڞ# #2z&&/9FRlLMbI.GV y""-G:ͷ.E c^`&_,y^^}cHTg{xԞ׭D`pa1#|g\hoȢC)8P< 4vJ=5b`{=rS(S31`VFp Z矼]MEmmk3'X[j!ѲCг^V|wVBߗ;YomNM \S}!va(/uv x cvAZ-kz̥ ,6h_t古3 c+d:uOPqs58-vn~ .z C[X_Q#Lچ*ů7֟ك;,4^ctdnpqW+BnVrd }H} |y  K@ +`g:11_^M+ҥF13IiQd_nl%TOz_MӸ$0 8:A g 17~PTve(J6'$@K˃JHe-sЩͪ,.gMaY/] dY\NiV:2:e7,:t~#pŹAo!Qwpہ^Z(ge`eY-Kn+3A3ڎ10c3\LGbAi*n\%/gvp6|'pݯm||?s w@8Ѥ?݈r51)r{ng/phw((4[kD'ZqmW|hdm-2r6RNmtzgUOiAqַ%\=kb@6ᶘ{+}0ģQh%/|MA+I2X%W8cy44T=`(~n' bԾ잚 ]>Itg Tժ)lr71ZalwkzSߦ41ڨ(i rZ,0+`.pFhFH2,Q혤څ*#E:2%]"^!ԝ|G.++Zߡ>w#yT]mC]CI{kXacr4ȗjǓIҏUY$_4N (!~WE\BN˜Xt8Zj<NK[5ϣq/l@425Tgdnƹv q,6w= Ƙ$D`/uf|~Iq+Lk#%~+'0&xٞ[WnunǔfW-C60 j4Q3DD-TRdi3 9e\6.< GyPūwr*Z'VZA~/*GW<3"2qj09@$@G$AB<:Щc$ae-ɩ͕m.@* He1ֵ(::}آ<1br<SczTfTN=Ւ-cƘ1YR'بySUWP3z}%ė[-VΚũ֪C:_XCctXNiǼRL\o&Wsfˮ r=Ӻ%_?ws {x}|f+Ѕ9Z`ثx:Poo5D*#X1,oMԨ\-QJpj gmBJ!), f7C*]cxSM)u0{nH(7V ZQBL6)ns³8Iqjxqc*^rҭ޽1سUaVR#rj`TS)0w@<}̶4o < " _R65U:H쐍oUfkuVmY؞|7&">EE '{ >Bc3v2i*?1X$z7"-HDj B_gM2E#̭ϖm\ZT:+6}W:șp ޽= M[7P>ݵ`#HY$5ęޟ<&wk(0.? }on*L$ #Ip7ғ}5~f;!=-կh9Gݰ[\+P$^ye3:v栎R:*Jv(6{ h!5N4*dbҶsAKfe/f9GjDj#d+vS%ik*u67kC u4W[FjYqP\/HT}<3J5K6TnX, 4T?2X{hMb[8]qM2` Iv ˘oQ BwפR@r*ߺ߬MH}QSquasOBḽ)cs~[:\([&^D/_.DI[RJ6fd4)&9"Tl<:XF* Y{Rrb~R>s "H3̧LdoKxw>%Z/qL}b^xJr ]a ΧeTF)4EVxb^c"]#ؖ3lx97 J[̆WSHaq6~GT3mwҽ%q߅g dᎉwP-r[FUm0It $1L_-:~rjzI Ѻ|RfP9[4a%詗xIWT4} SiVM{ Qߐ ~Ox ִX:lsކJ3n> >g=9ܜIZ.ה#ndg l(Pl0fo/KˇD{-@jq! c 66va7Dnx0 }+B԰P7?jUdar-`>7sL3 SOzBTnp')xf5!_F=q찮cef{` Z`1? ߊoeLf/I<9cXߓ|]n+З]$ÿ<&rlm4:q4 ke Dd3Y&AZqp+FL|'oyA:#t1xy,*X| RVH}b-D]~"g")2,ZI3 6;Aɑgy~2%?R-H(j ZjzP;Mfb'2cIih)!%dlM-L}1\ANv<҄uexrzφ0#Q^8Tم7̴%ScѶ- (6NUP( nyȣ/.{`(ƻhKL]\I >!D,. J[F/9(5R^O!K< 9ĥGq,A 0}u3 !/k(`coJ+L,Q%IȱM8NCס@!;>F#TiG ^2)Ё<+u 6խLKV/ s r{^_QsbQD3c9J2Qv$|ѳ}ieic+\mϴE 53ڮr.9v&11juTpaDb,Z5ż0'h~; q-Q^nb%E z' ᖊv{h"l) c4Kf4 9"ogA*[ pmQeŭj4SP9<%2$Nេm0_\C:vz$9L7v:cbV0!IE. ӺkH;Bf6O z68e'=!q* l)}_<)X;gO-n06KOIȔ~u3@W|XҀ\kC*WL<0[(>ɔV=be3)P]{|jҽhy{Ϧ^Bt+aEcTgc2g""߃"6nV3+oIK,>J~+Up]Md ] hbUO;1U-V!Y?[㠱b)B#a@66QG 8.Ǎ*=l2BװǰoɽٳػOtD!PZ Fh&Nk3Mɥ-gdABt#RJ@e#uʘ[Q,jT'sn;8ܰoX!HP9NsFtb%WdԹO˰ ȃoC®ڙ۰,O&1 ,[!:L2NS4Gh£hqӺw4ԚX¯G;/#hBpzlKn5b7v$a&l`hȟy'%R`R*w&y\ V[k4ӹɓe*OVq+M \Ė"~59 |nќb܍w_AGMI}Y WuxHJ`2ǚA~VK"> z왡Ѧy*#d#H.p>O8G cjS(^!bhqM-} DCRG ^NjknifĜjYj.}'쭌"͊V=0),{^ O4enCl9QL拗Mծ?KoYoYr9nkehcxU-oH )/5D "?hQ4DvX2^H$Dzٰ.Drw,33qz$-~JBя'GcI-0)rq ϓ\.<W)o٫G'm)irvV'gH_V!pi5 ck<|Ch䖻 ΆJXOr;|q,pר-Kϒr}/LveJ&=ba~0q 4zllR*CnqApvĆT/SфMiJ2DF+u/|4LN{qJE:?y~zJiCiv ̏v*s<*Qu%D"e6;lU|kW fH^뇰rm2=C:8hpS-/0ٶMV,s.pm:B+jlz'HоM0z{\=5A$޺V Z~BeVҔQ.3P;rFZQIgD#3tZ#0^Fer߬*lm{5He{Bg#:4O*h6HcW/]h}h(뾘J!7rp@c#f4m} ,͓[af#d¬)D3Ab%PvD X^`(4ptC]U@d;3-R{4CN}>Z%j92f$@Nt',os;9 BܙS,[T7b/ BkH3,͔v&HlL90{{czlK K7F6LnkLTC$i)o%:Svɏ2Ǡn-XC.{ @ӊcn[nbQ5zy4{mfVYnZD@dggFC"wI`BɨBC䆑*9J>cgǥu Lj =P 1H"LboI 9T;RU֠$+Ni*6:gQ-K|T/&*F!{Atĸ!|qQUI('ߔX/ٗc63LovX Կ+H-"T,bM|%r Biξ$ K?$_c.}7͕|IIܗe\(BAL'Zj]5 #quYߒR@+Jsŋ?qW8Ow9sn\poTipކ)@D݉0iy}q3ckrpnܩ*v\ɇp@QMN$;cEZ8}{mp+((ijJ0WJ3 %?#Œ3CFv5)czhՊbS0sp0MviJ) Zi8C)v}dFgjBai2sS~HM6n;__F1čL,PW%P"\Z~ܲ6ZaoVv<¥1qk5>꒰#6D8"~⪨Coc.]Zq{LoӰv}r끂 '%dl@^/PJ-4E8BL nJϫğdCc;"&s2@[RX^EIBIQ *B~#܅V{AL97|Ϝt";[y"dm__^GmzxXL@ZaJO%3SHG#ayƖțRT>g ֭?jYNpn>$Ss+ 9]z4z]1.'7vsSs߯;~.}D% Bǚw!^㦮sAЫ@`(1òcd"Lg>sȖ6bURNeDl!U6- ;77|"><< j~*O#Vټnm`")hhG ;] *͞I$AZgNwi ØȌDU|%|[(:|Il1,[ׯAziZ6\FcȈP йTl{9&4naUk`mu+nx _O{͈ɍ 59νoLapOuN}4!D䈓l2w3uă u߫1C3p j.`^VǣKiUy%aA#c .@$ @O}=LLn+5,U/4AMTIe_ 7r=e; ФM3^™d}6M$E5K{t4UBF dRփ Bn8TY9xw q2;NaNb?yzReU㿜 )Jm+.ԤXM8w?0fqu0N~NKG㜹ɥ}<i2hRw>'o*ݚ\Y RX/Ra% Ǡ`ٙ/Oǭs8H.rrnbg:O$4?}ErHE /&vt 6ҨQɗvweJ/;~)ǟiC F"֒= JsNs\hۂwڒ*e3Lj+V|懼![95e\⯕솚xa >u'1];P]"Igsg!%4}a;:I.3S?@U!Vaz]Hy&1W#,fБ nv#.-i0鉺"kplaμgpO 'wVFa$$y-9t:_#|}Dֲ k- 1hS.\uńp4jDWe,~aIvB95^ޞI!CP^GFԹ0p1P% Yg@M0BsXUL(Vw6Gى$uykѥ4]{Ws v:$܂Lp&Kb\LlW 0= NI۲se+&L "Q-gK?b_9mB"$z/>pmN Vt:dF"zY`=wfi'HdsC8ۛv^'RTw(ogl{ȕyajDKatyYlۥ"ƿ>[\,"J ^ 4$ڎZ|@bQ) yȸ@dޑ$GFJ$+ib &?:*I&^)iH0@t29GC3dn-Ansgo #PCfJ.47r5Fŋ~KR>b&"eVNhvu?HO0-tF)%;)WgX:iCY6&{\.Ro B"j9M', 6:sX #8 ۂ'R.!n3L,|甐V1Fs_t]t6 (),S 0J8vU͍1,/!q1˨~HAMb@9Z\NHf;fh`mPP8 zM>ìR<@emv 9w#pa!۷2Wc<&{j@})H Nedլ"&IҾޗM)SQ8j (pY7V?gRa里ׇu87/ :d[[7jK>H\{{ʴW}JM/@H0n 8v ѠVɉ~^|\Ϭ:>5:P {Ɉ@gKgF]ZݗxYSa Pa\ɀ AKP{B⽺n,36O}*y85*irc)lXj&B'dIȮ5-K΢=&((,>U.6͙w8>wb JAĠb`=# kW=T+t&e2j$+C*`|WO>'n)o-kWQkc"}8hsX;.}6\~g=_T)aZd r>} AOEY>mw@p1CaG$m%6I32z|V<>k]DFk{Ǧ0geKDAG7ŞI63`PI+ xceqE,I!.vMV~̪T RkEl>[1lLahbG&ZC*:p O̒7{w>f;h eiE7S43l@ gm^*c7MLC *ۨT p Wܮ_\ ?u'P?q} dRٗnwԊs_$b$!# Ze3J4w.y,$s!0n!7wap<fwr.?Ib{Lcq`QV7YBo|20lyxϸ OƽY+@F_`1K1o ,rPc$0IԾZ m4+0hԕmf E`T'YPpm*zpB`,^IZt? sZ&(5׎N{{JλQtwgd*4y;hD-L۴SфadH,$\mBx_})-($v_ɥ$+w2eu(hZcA9Pc E(.H\ JL+j1ً$U9nR8l CtTP)V%5ߪ>SE!C6uCP=eH,_\Ro|6DKyu/UHBW, A۔m6~p0Agcڅrڶ[;IgpS0vFL[JcƦ5%.mWfsyЗd$!;F]lyV`8vbtCWXZ8fLP|̋*K9kL!myѠW|Ig Qt.{}dXGn)qC72y2!qI*` t$.Pi0!! E;K)%jZְ,KӅ,A=2`DJN|nzMi g*vQ}`d??sdEt3 4bl7Œė}v|MGr- dj^X`؁ TL+W_Dҷ$CwTφAZ[F݉%Ӗ+װ[Ē`懋.yn20qhIh?IV*rps*XГ@fdǝ ?1JQ_7~!fs_2/:qGP4%EJ;xhP 翏fgq!Q9/E 40,L2/9WQhW5}{yoJBջU[֤fbrEw}&$:ꚣ1.ڙ>R f3u}]e1:3 mC&&zp˭U~ `-[:֯QDHn\[.UwR?fʹ;uӾMR$ET%5KFI/"˖1XcDPig7Wle h` Ωus6?s2rnu5-| )0.zt&e-0(E a[F]TA`\Mؽ!p۱ۮ~i^Qb6y>\&뼍qT3;â;U+BsdOP[,i»v F{%pՈߨ22(id `S|nP@^ajz{:"`8⧇0weHI o >|^"<۠,kFA-= WU1vf^ ,L:d36^ߨw|B>qUv}TWVƈ/DIbDv &pTz"R9B7D|獈$=骕Tm;$@Qy%<&]7!~]֯eҞbW@v񋰡CĹ' n l1)_:Q9}&MaմX|WMcRb$ofTma1OfQ9~ .ߜګ+Z8=ZbT<6+%ȏe?a!YǙ A.P+n|W 3X1ߘLV ~XF `/E3#Q8[VP d2_ŋ6;iL!U`fY+#! m`^mt ;I!h^%\0B9M.|{g )=woR7_.4AHǨ'Rl/NxI=n˿Pդ~p +} 2%j҂oy2]r1dp OX JU #Jq5W6_i1OBjiiA%-bZt@ǰbl[;I4unՈ׉ q2We^-{M& 0 )a ҧ 1f$b(b=K:u#.|Iy4O,`^WA1O|ˎ`-PV1TzQ}y #=p#;:`Qhkho-Xi B?w4߉sM=QDQWdZ)VQK7LP%GiЕZ`Zؒ*|!q0S` )&jյ)u+U )uO"ea=z:ZA+rBA}Z5..|Og!S`s.?̺чv@ݜ!vh|z]rk!>=M:`*.%71`1(i`pL.T!C VC9 i|/ j*˲/l8D$nKuBFZC~'`{w8"8LGHh '*c/ 'M%>ܲNZ;bf {e,x{!)~5,NKN'x!Pˮ78Ꜥ{u Ew&,PpS>$ 6X/EDn )h ;K*vJGѾYB"j)ZL;}miX܌qŒMPg|dk%ۈgx-^ХPA'ҷ856+52b\XA>Y> !!P2kFodڂ LZdo1e?t nfL-M5s/~i>,yUz.B($7wҋIg6+hER$؃EJjA,SCG>Fho`sʶ6M eD$S˫\j\#Ɠ QƱ~\ ,ο!槕}4P ztRyԶZ8Vh5(Te9`H L=DOQ!OVx€!i_~/*=R}u{Iw%6tB9)6< /Aʰ@n2{io]W.=MRr $0dkq?q?A]Td*Ķ,lWG D0t'x^w:Wĝ>uUTTi٣8١V36ۇYԯg^G!Z'Bv6 1/J o4T{Z`@uBYďqs끗ܗ9o<ҰW7ZդNP LQ7L8ױIw2m#+(NWMAtUZcXV|͌*Rv JP8d+(^,D^tϫ8&g ~j(P&l4ʴ#z(K S-\ޛ aӁLh  =vo>w It~Jafg,˃XZz"Wn,5PjrND*m J@!^sv|;ꍁWnI$sr@nZ甾zf@&y*99UvU[+ ltXo3`$x? ÇP#5ʞlC/&yQ5^ɡTM&koHM1SqdoZlASg`=%4֩$4bkCym-{fF޶ʜ߫x ޠK`l2 nzb}p9Ȑ7(IN\WV{RYax7vj g9j"Ma[y7FSad\%x-8^_J\~;:4i)b|m[|{.ȏI7AVejأuy`\"S4nH8욚>މlU$'Ea fwgV=G$7]`K):*RO]k-O\ODw<+KM#>R]޳| 4{tqN#ڦj} ځNX<%320wʺrH,ޑn  eFr> ;]K9EsP24]5`^!M%r/ [V$3a_&=]i[U{:gq|$pm{@7(qw/H1DqT-&}+""'IѬQrތ ocr % GNC|kv yPǥ[>0rC]-l0HQ$H?c*Oa_!/,Ipbzҗ%\'@!p!()l{`l&g'Iȥ^o#j;U-}cmz]ܭO.(#,G,]!KĕiX=wTΠ.h%SSRUQRי%gZi׃95?fqDzI;o]O.~"wh/~rI[tږeu 6ܠ*$i0QiY*-EbDo:+wƤ2^D8I/ a">-w;Rx8 &^ޯu,t,nywX{kW~ Z،Ӄr~DeuӞ< rTEY/ir̮:a%pw7OpIͨ%hY̏%+-nn$ fQU+O@J 3P#b%JwXf;H{‰S C뇍) F>EQ,jt̨۪4Qi7@D6Usr6ٹܔᵦgSJG= 4B'i SD$O2\G /#8e:-4;!)S ^i(]S^LpF`() }9S"Ar+@.鮄EtQ~bbOril"u"fZbcN9kwf0\YInSMh_5Cم~3ge uY٢ :7_]o ٮjjjLE$\+KdZ& lԽLdf{$n?:xB0ߌkM! @ "elCykUl=6΋h`gYӘ҇)mFiOTY LOt[1y cG2&w~ҹA+ e8`׆zq}>gRz?cc 1p]l+)R` j( QcpUjc{;Cƾ `>vBkE5kǗx{=yyƅ +q: e)'m+-@h5&[M: TR1Wg\ٽM<>Pu5-Wի4X:Xv~]8M kL-B16%`xNC5**k0p+sfcKA %]V gcp;a'b(;pJLo MB×S/ώK 9 Év;0g*IGԧϟ2)3jD\ ZEFcwtBg( ͚;E)r`(Pyh$W**tlTha- NS3̒2\3E] 2nk5޾d9@UKP}C#,m @8ԎPSR+6vRH3}oŬͫtӮߪ 2nxMu+ 4jWRT$Ttޒ?g'"x} ~*6DШTKdРQOoo. vc:khSZhhM}!M/ ?LIJ'ۤʨ^0r#@ ̘؍I/+'xS+- =@mFgإⲓw[{wٓ -gHdj!큥_A9](l'f&vkjj^C/$yPrZ쿯^ ٴ' ̇jC p7k׽aP)nlY  TJ9D3g}7PDUF U r7KY=w2LQ\`IueFnHm- Cgq<|&qW4$y7q;nNYߞ1)_<d zI-@V" o7#Y(;h!諰W'*hC8(G;"X#F2 mxpp҇݉oࡩdزjH z9Uʡ6ĆwȭLsIؒV2ӣ@ ufT\3G@*Ʀ #嵯1V3<>Y,V'Z\\ynV ^POTD(6<ǪRV9X#hxDg`b ȿ)PZ0"3}kK.Nk&W~+=/ì,cNxH{UH;$rJ I_2#DWO/g4pL11dAuĻ%:l=yReӅkw)$䤋m$KVറ q|Ԑ8 iCfk-/# Adơ9 2ή }! ^uJ& zCF9M\o1 \jh$i'w7. N`}=Y +ྂNڈŀ4JT=}T@MS:h` Z3v]'),$jzs Sww) 0։L?! ;~[pXm#tXm_ j\ti7*o`T $M (/l‰oB:ݤ\I>Fr*2>%m}"bl[~kb7(mrA]^^*EsMqUj?"_fqZ2iM*" /4ҲB[^3- DH{TjHrvnH{ԥAT$`mK+7sUzG?CҪsl k ӔHJ3FE8Tw g%!(.BH|RNAð>%DځЉ.`,Kd'@dv^MrDP@XjqF$hxg'RmZ4.?bn.6h&5E5ҷ1zOҋC__>sN3E J(p?Z[L nxvI=eE;݉&Z`S,oỸndV%ٿ0AhkwKAflF%]o,#v` &<4]+eǘk9 L*BT4 m e'׈zUaHE(U7I1|QHJ i HƼD3kmRB NzUNU/oaĜg ɒ,3X*jȟ-"Ee#:Uz*q_@ t7HĀ7*6}TiuԞYz% â4N*;` A%ٮ\4o%^'b̑\~ ۣ F0㙩}e"x`OѽtnAcf/뢨[?!u78r$pa3,g9R}UHMgkEiT"}]W0җ-:}wKyly`Zj&j>%8;RA/Vpx7˥J?#ҍ~kdm>-b޽j"ݩ`ws}+g%l'e|E:#;]%MxJaCS֝_ڞjӌ&+.sX2F=書-_0y^݀/CWiUwi sђ"ud&;{l\dT+KO]PQRܐbhg8}WpÈGMLZ;X0裢Ouy[ӖWo6HΟwZQ/OpnGeJijܻgjz#N aUvET2t V )< ]bO/W T .C h%{&j ^grR)3>&j> IX%1L8()a_)˾b! bq 577DADW(o1j}a&~ޅJt€+]}x=-A$qhH]Cm|G~!r Fr5.o[4q[υd7u4|RYlQ9tY$@чJHrgPl8mWQpU4#=K1`o%ξ^5JB=,1nR_Sz^d|[HXtq!ʹoAD [8q;C5G xDEbMG47: 4i:`( ~<]j* N&RI[hĭ2箆|] }-Z6wG㸻ѯ|?z"xsi@5)SPV}<ڏ>([3|RI ioy12`)J@[?J>l|//BeKS? һȻvdlPţ )">crv*%\+ \t֯4~k HP-7rhdE91dSIkN5f:T"-PezyO/<*wٕ |!M^M``A}1J-#ʀ3Q mZP3qi(z:OU- +a옃c?E D+0//ɤZ8hٵa0DP*`+ %Ai I4 ϱDhv2'╇,R!A⦥up[:0HۘNhRk+gjHJ-&ʦ.:]0S8UhB :$㺍#_PxH/F:ٜ ٬ b_0!ff#hA~}5'Çͱ't$NYhnI!dT9fA9mIsB$G^e a@x4ɺblvi3s8my k:°DzIoNzaC{'͠Vs"B0ş%ݐyd;2x5kJ=Tq ~+j~E9n<6*l ,1sF]['쿳㦙,HƋvfH]H!><;$aY5b_F7[s,fܷ!dGY 2ڲI}5l/Y:(wEqϛ_T!(IC#^:`o+Ƣ,{_]6yimΦ<̫g_6zPMqMMgʙ 6i S+'-DHF_GǍquc~ӕv7V@!_rD`qTQL:6gw6F$IW⻸Ѝ[lp%рQ.]-A  Ɓ`ǀC7^&weO\.MT Xݞ>ER k5.<=Jb.-%p-Kc♮DȃZ8X8%|}: լ9lcvzcDƓfhjhy~#(*3yA*#qΉ`$HGݩ;-=HhHm}}MT7Hj>^(]VdrUdlYTd-ijKW,bB{7vjU޴>F/|v+i3\s0˷v=$KumzQê;QU 8Wc4k.e :!ި*QUC r̡r9S 9q5A9g p2pTT\<^2J%0 D8jxc6.h(I@hHc̀ Ȏ6c_YdZנA-?JOF~͝!L&q_>0F0nnI}CΫF"JL'1lI6hYg$AOԄo`k1*lTC$79}3G8`%' ^q}T'd% N$\R;lCH$"u@)Cm>S'kƵؘCw~˓S5xREsZe8BF27WAw2kGEC9ƴiI>Yre'~ew]E'TEو,ec`EQ^؝}ӫt6`H\,~H`_JaoiJGg`TB8 +y9iZlSCn8 w5%ō'qG+Q9s[olF&iR(1nDt/oXZbU\IJmXq PוkppVDp^*Hc2@(sT\KLl$pm͇ݖ~޵niゔZtaSOR5̪Xܒz&p #E(i~%'jy41N.=~>Sßԗ6 c(4_؁H.Y/1wl{4]sޥk6j}#/9Gj ρh`m`Et;T9^-Ez)~_H-E5|Zz>p\\# .ܭ٪biQ\t,*a- r|H TK-3B-NmĸB?&h:#Cs~}n'1 u?h]%\B){tḽ1?yѰpH,@Yv+ wַZKɱ/%u/!AOT?.99]ƥ)Xi1+ w@*CʖǧE&hR&No599wN u2ä$X9j.JD!D+1BeRQulGs"MŸ *3_a2H~Cvn~p<3+[m j}H4{) {9>&!u\iN D&TxvD6\H-{XG YT#[+?꯴iDՆo#k e9 [@T7Ʒ >w˽Amz<@h*Vkl@;i]SoW (Lvc_Ҁ_)Ne !ː.) ؗcƿt!PĢZp3Fh_R^Hg$Q ) oO훤2Q򫶏'({E'7TI o VRQ)LDe32)3p֣]o2½ [VΪ#_:'ZZyO, u/k U˿ּ,yTm9uq֗9SKxP{ϭߑ8;OB3UuVj+~O-E/d-Cbqh^uָ67"b/>I)Cp1 $19m`fM Ll؏ ܅G2  %iJa P%`fT*p@B8DDxH8M#ۓ%A[2L d쎘'%tGp{ Q[+l{ӝۿMIYxles7&&ć`=z.4pMS2FK>fpBm\9H֓RB\:Ň:|BK W[DSP:S 4 79{_ʗ+XTcgbhWzMgSn#{0[I3yJ`,qp%x!FɇDNVZt8fMn 5H>0#Dxo@(}X¥>~=NZ%tNzl*5 #r |*VlCڔ?KoZh*T$}r_C3c4q_@ 8|q;ۿ3'`} ȳ9B%A]˟,C27&F),藗dA\Q|,Ш5(HZ ;XCXC3Q͒,ψB"E9!uv&ц(ZJ P <įh?AA9C9a4!' Դ.`ÄSA½= 8 ~9T2AB؞pqA}īՅvf w(F ?,x |b%!-'_/l콶Su)ճF{{ZP{?^:Jr vW} Nls! 8KKwN6^"Q$:{v39C{ʴ]iZ|B7A:ǡy-(L;(\D:#!.43)@@KKIZ >E渹Q{4HzRs OWuxi_;=/bZc)OJ_(yjq>},5f'&< ; 'ťb–4bu_E.V=IRe:U1yc 1`n6a( [ +Rs9Z(*+\%'Q6;: rlxw  AE4g:ECQb77ʢ# 4]p*}a \zK\%XM3BCκA~b tOX'C T(^AdžT'AEWm%ݚN^mnDPa QlSw|^-ڮIRUl}Y ġ/S"0n}QZwyg_Mʃ:|7VZV-S,(a$q*"&IXqJwl{(=jaɌLtGFSY!n\L$ew7 syPy ۶(g,NLXb)`ӞpMg]uBܨ-\A|&eK"-xb2!Q{vHWf2ixQ a'=YE7CjLw^|Nf1RT!8[Q˅p!aOUJ֍G ||n˃$4ɑvKrb2b .@vrIbcqZTDSDIdOĉ6va2{k,%uNDc-eeogٛU+3`Fkk< xYUƭv:5.D $z>t޲4P߻Poݱ]4?ӻrHu#cA 8ZR#t{4G>Q$kTbl . iZ%.Mn@N%OnTpt.ԁvGdg̭HQ! *ꬮLӜ.,]}*5-ݔg@6\E]/M13$?@Ⱥo*e5} %4κ{;!KI∕|6@ ShSO!:.{cy #?Oc܅zq,j83BMωF_FytOuy)n68S73ï<:h1Gv#m3P:vkJ)SP 8 (O|]ػ7X3Z/AsYѣK@ S{| Lr~y'/jb"%y,[=!J8>;vXNbCV"qlF AGg}6s|Ul5g0lGbJ^ߎIJilaH@9[lu22id *{_x7hN;|?N™{Zf>j 񛆜WJg6 PIK>hEfu|{ؑŨt 𕍦A\bx̹,rD*})`aK_JWsL3_XcHftD ' Iוv%M!Nd 9/DUVJYM0H՜ p"Ǫ.Rb<:י0eƗR {|@חlreWhf G8*=^T8]jͧ+V~w$֙B{8!f M޲p{dHR͔|vhDaZ,!/3ðxCt#5)#ytH%O<\Oiʆ @UBr[ۆbR-\#*餙H{0osO80P{؏{RKfy"^J'A*PC uU j ,[vVgvpnYx4/!#r ߫Tó\t%LA"VoU[ }5c@em݂{-fRv3tȽY}ങ#>tatW=} lah֖ =>B{͐'t6{ 9?_ E e|/ ͳef&qeI@2Io8ΦXxH)TJ;!h~8H˧yGI,FItnMj|I r"s]i'| 5 n"rJ"O:+31gU;m4Chܫ5zP1.{7Spu`eHq:UtZo؞%ecfaD^_!b"D%L|Gnڹƻ_(S5TͿ>-D2{X:ً$_V~B{rZ@uղɞڙ? tKQl bcFPvOuof[w {Z3`ic)1+ ɭMo&R̾T F™BWc/ 뉃s %#n` >W4=̲ʊfxuaؠha$F\a^]2XR:&^416J={n)S-ߢ==$+ǿ@9Ed2\$P/mJSas+qRbwyc_eIo3 r`x?e>.L+Lוs_]O'd(*\XN1nszwt ;$.4wSqe57AMW}u>+%zꄀ`ħEҨ63z8[Um((Jf*j*]Ymy2zޱ/OSP5c,:?\VGv梽f _/_q~7?owNp޿w-:X3h9-cĬgn5&Z9~RYپ7=uqnFbL-v`qUvtǨȁ`]~L/sFkL[ 8:; AVG5!!!p;0ѕ':m$`F a#;8`xDRӝZ<%y1>3Όa-j"')fRt@v.HUqW#mY*To貖,]Ǫqh 7zIWA5Tݔ@dI OȺ?U maJ7.o2z󹯰YɅDݿ( Ϫrc v c"1qu3s>A_==T%~ m| lKUkFY|u9JlERT)R9J℥.@Yo27 Xwo/?l` 8e3f^׉:Ӿ;fm2gzhX8!z*6] L5:4ƄtayJS@ߺ@?WW#9S:6@ yW}ڻ/1FQ0?b/joD*C6;wrln ڔ 댛$J6}CeW1x^{jTpd^z'+/~ |4B~c1΃'˔tf/LɑV(㔖 X0`iѪfЯwa_o$oyxbcQgBov鏐P}?I}Z9jb1|{epp˯^aPicF3W qcNe,#9,,<]DaVNKkCc A e{I$pL4<kٟ0tsY 4ky) VT+KsIA8Rf}x@qG2h=LFgzDXBkBZȏ HcU3yϋ  TsK1H<7soB9*Eh1iZz"C5bGS p?@E= Fwqz#>!M{) [_A bl|YC?I۟߱%6 r5Frʬ y[wD_aIy^5 롹H0ILS'Q4^iEZ.NXYWۭpqP9Ef-JTy _50zzx0. ;RKS͉zLcR9O 4OXJ"MI 핎O L r6|<%֦O 0&BやRO֘,_\%w=k-ymRnhGuhRP)\zfifr KBt$(NZM Qb;`WR{ߡUL_si)'Gw? /G%{Q2\a~b 5ގ$Bn6LWJv ߳ PVaP[;Ѧ{-_O,ƀ,4@.jAPe7i:ܚJMT S y}\v)NW]g]5c:~@붃U_]CGoſ,4G 6M *0c/LK\Nqrլ(Bг&`'hɹ/eDyYrwԊ({acX>h52Ϛ}|\g$QثtwIwx5]='m2W)؇]* .7.w6+~~$RJ{2s\)\@1Ĭsѽ5 Vf&q)Y~<,ad[w"c*0R0/H JJ_%s#$J_1nSr]sR"Ny^?Y\Z <=(vl=zBv̶Zqv=:֌Y>PE˂uلJ6vYT}1]*ΰ0㝇y\ M]뗵PLk nb>*AU9wS؛K6/uQ.mLa@g ,:g p(TD@~_.2ښ_vtnw iyl]a+*H/z!^5&\ HQ,xY]9!l1q哰oZbGZL@N"e;W维D '+TBBd2`9Y˫N q)EKinY!@qmX=)_VĝGpK22W\a-Yu!vqxP 44u#f~.m>"`\xy<(.s比׀ MfD@\J\>U iLלœ󙿢m1)]ROlv ֬L*KݒRCMķ9$rIJsJU$+{m[(΍HX|γ-p:nw}vDh8*8}u~oPyvrMp+H!A&$"crPQwBWc"FPqZuNKߛ@tݲDu̡sbjEA6mkstA!軛j |4 Y_hdS]\H>!`1"IWgxEg)C0!oUky/q@ZɸƲ\0ק7F<^M?<}q!4꧲0=؏]@eS+˨R5 ZrE"7O4{hYջh .3ŊH'r?Cg_㠰\B|ں2'/,?=2bۭl1<6WIrp6D(3'S#N sy0^tY'Oo[# *6u~e'M]+[=IJ-%iЉ!2%J/ٺ Ȑ:d=TSsŝ}ĂRmeI_Z/9ѶbPN<{(JCs,q22@3 w@.xH`qEjt`˸7g$y6Y_jJ\, S-ތT>Lm4>d'z?+=y7)knu@MoߵIi炡uX4A2S;ݳ&@uh:DQ9 Bb4h$-N_Bqlq]sӡWV GN^2ӾB{ةŸ'V ;֬F'' I3'm`̔ruڿ>?6&ՒT F5Nw -_w´9;~V40oT,W~+c$?bʬ)V^h)Ԣg7UyvN[1ouU6mPpȭ|!4,e+*dv釃K/UyԖ _q;Zƒk8+]`H$ g(1k7͌z/\#3)~L[GTZ0 qr-8/v1IKt$nS6X"DmE.Wz%'RwJڨo744]RbMp~IL!<,ӏ9[#$yNU ٌ0Yoiت\u{*WC3t;=}\J9ZRn-q(`em= ^m$zvg+5Zrym05{( MAlпn„)C_qLA*oş 2cB$DK%r5 KA ?.XVF]hN-jz p^i4I/q+HS˝pBG^8F2haEOYg$w{ePe]mq$ŠUDUnox*eaP!!r@+\ jz̤) @S'545ថrvQ]'hNOADy.Y~z'EiEQ9P<3Vp#2 ԩ|{i@DJH*=0ҩ6X?A?Rģzf>Z^]YG)2m[L$ť<.G!Iȱ=> x@ Sn>gPqrw%,i`]!FT2ͱԤ0KY1iCKX&V3'=ƚYǁht *8 Y9/%xuXb}n DOCk>3%З~ ,@!6ଟ9<>Ǥ_ k}UO8h厶gul(.%ptGӅ "|'4D}mi1/VPw* !8LFopVw@Bͤ_+ψ7c} e* ۙ4q`8e]bJ>m(TIЉNzre>'>M,T9Cq,⑥8K/S>yD&f-ғ+5\VF&r;bԫjnM+zZY*ڜ$uqnl,$ᕮXXc?һBά]mM6L"Փ*p\T%((/,s5 v(waasFebC>5Qb~:rʊ 2kGO.-,+#N*!mOp+ТUqLa5N'qm, QP$w6* E2|gkmx~I<_NQCË$̔:g1>#?mRm_ h9cl0ԉӺsJQtlȝظ mT) \,XU ~N 4LE="W9>rB7r)ڬ|FⰑ' r .%)fZ1dSpYJqbѸy,ZߝϦ} }Xxl\1e_E1.i8E /\۞'3qFseN"4QPD5- GLMyP|D1a`"PmS8޿S,Kt+'(IЮvuxCZbGJealL,TI}RM sUϣ2ssVNKhY>GkU's鍠?0ܰF lbo53Tz]qn,Vy|'qzkTϼbX?'H5sT#,f=v yQhf)B&' &A*˦݌}3ݎq*ōg;:6eP pzTֻ:E$rDf"Rɸ!)%a#v78rF-${صSUX!eB5~U@me#$:hBnLȕ;j&nWJz C!B ݂uр$nH>A.supuᙬG0:dLI;4Y=kIx4[UMoG\p*?ax/WFChC2%ա>8TC\Bqtɉcb4)ۼ$.ʳ+J2EA6"14 BVPk4p۹8o[fa6ik 4Cx8,zܙXSTP3]/A"nw++5]t o1 t " 7ҙѾLX[{߫' Ze53qeU wp!ϲ?4_']f$IVǡ٦MOPy5YD*?N{f"8~+ňYEvK]`r4R9A;u|.jdb+\]dHE$@׹ 0`|6Li- rzos֍;%7۴=(y2åӦ|n7w,sD=a65Qd8Г ж<Z~  QiD -fn Ku+i۷ER6y/u)C FE2f :\5whs&D"U4WX劽|惖PRZs^[g>[?Fr I~w|Д !ĭ& ]3 ;T= 8;v%! qQ6Dy9@ |"czo5,)Ӄ4!֕ w̰O" #-#77Jڿ|-*,`CaN;Yr(1jp:q6\u|$K쾇(n рk[\sc;vԤDѱDiVOV%.-_4Lc-^9K|BTˆ~ٲV/S272@wD+ȇycotqlGյ<ws>&@ړPzyM)ǐAѸbnAyjX2`i&W389f; ̣N; i=TH N#ƺk ,B8StNK.c\nPyP4nWbM`puxo]D(L¡ (mm o# AjJ (蘻7{`ɔ\Tv2!a6k}E!,?dɭVJ62 ~PwlX=6q>z$ڵ  l)4Z~*UZ&JG~x2kG^0X|P eR M__qaߓN*W%/yb#ࠗoepΪ^4j3\xwWOs_t=(`p>Ofcܶt<ޤ67bOňSk?_$5 Ky=ʓ'ES8MFݓbqW0vhZ;s {r@a*Rvp6(̽h groI~hD\RVKkݦZ1<C{[8}IBEs̸]j7+Nۆ=֍53-FDЕ^f߁Ii|>A. 1bƫCz:8(1={@'Toΐ=.܏BY$CHJijXܔjً, MYh maɄ<p =X}7)pms.1ȇ48:?jJc*lp7χ>k HHb)[5ԯA^.!6>< ~A9kpb4lYXhǰɏvTTogaϒ{eMSm2|cβ(i`؟ۊ<맸2z{U1:aj Yp_* tmF=k6|GJX*-/, p5'*&1@^4 8:or)]n\ڶP.ycC-Ejl]g30b0D]6w;D]^ %UF8^<+nӣWx;{;i7TN̼پvnneS?" %1/μv9pXPM9cn6:aE]P9 =kmY$)Ѣ֯a=.zI죁KGVWCǦWUDW? q}a5.-lܫVӜl  &szN}k:s}@t? mg-J57>&檴g9x@ziqNbU1k0-Bmk k*,朶z-ӒR8pw\^Vbs:-<[+ݳ6t:W"N21lI9dh!` 4vƊqfQ7O8a 1&`qZVsf=+QkolV䖋wwR K..82XSG¸&Sk1iPs-4Fo}m4 @,Gqs7 ,<5C#[~׋-F?ZJnȟkb6T \ݸeT bAVSY(buH͟L ,`f矊 Z'L4JQh:;xk&/H}DzUJ N4;* ݯz+q3as+ JM젹8w!M) S? ˢ#(3V+b,Q ֈN(ax w܃r$w eܾԝ&~[z.Z5"# 2Z53?^szw5@ fK:}nPx.) 7IYHos3F])bO7 G+*ɜRf@=ȃڎ gu7*]~ဥRZx=l+Õ8^?`Goo ۘ]|>Jh \^r$pj]jS`Z˫(Bϔo`ݷeC>euԾ, vȸ%jA)e&19LVqpp23Yiqm y*FWDHWk$Ees5g$MÓjϑ>Ã26*}mAϏs$_eāoz;3Vb b{IxS,_ bľ8l o *-:HlYax&~Q8 @?#+ɥ4JZȠ?DFzTA-R唘Ǧ,H ijv1}dYwIs$`csv~B ^9MmG~o & 7،_@U?O}yl++8/0ѵ-c$&}9t|SBI}43W׋H$Ķ+N!}GuC[A/ OX/„f CP?#!2=V;Es&%(We|QN *[" goόukMUvq]G6qwϽl> 16ch$HU[eT0AʼTtwK6u='|4%[eh!.rIчu,QX٤}Än=>ua~ʪ aru ~R߳-R)?&>t&^ׇƗ1q%N?!Gj^w+:JsA = 6z u&$o7QJ|rC4DNۭlګm`F^<ٳLr^bgm|hg@ 9 ],Zy'HJx'rk1fhW)W;w>V~HBDM 'DIc<#Bjc/ɲ S*By9Jv9,KЎ<㩿/l D9 M:?"}͠nbLdU1ۋ1XIW4IUD 9^vw}pt Ts^v9mO9xl]~q\f=R-lįHT/DoNFx]bT/)4O% u]ٱ+iMVN'vL.Ђ_;AP~{e Ap}_`DoWzS ;)|K1!#OQpZl@s[Y#@\u65VٙTz2@ʆl$&SLlg͟o!8XB⋒=ޗ)";ϼ}2U؜\G31K)IVN3 w$ccE1G(IyȷF59?.bGZLTm V3b ' +S1xrԜEd`Xܴϥ000~# eleZNg%bbTCsE}&=}6.QA,?3lk/I*7$BhS<ؘ, 5,C;k-[ze*>q"Ɠr}` TJ )OK4.z |ia'n&&bVUlֺe dh-1&)˦Cٔ0 ]ȔZB,‰&8‹9M1yI32|}T`Zq&-\~=Fei,3)]ygċ#q-GyZ9G ]*ӓqd<uS LǪ@lA(=H<<^>4W Az&RCk lK0Bt%4֖4?C}k-+nXh5>̵7Myːa=lp)POt}.]Xsp؇n㭹fR+G]m̄[IQZ l~icb^ (Ю<J>~=\7bmM/}rQLD.rt;wSbɞp˸K{_[| Vڑ']e>ǖ\?&X] {cSJ`+Rm~WůM2i3wE(7HEfGP;г 'n&TxJ%螛;zd6&+5Ohm!cNlH<-"鑆o-ٝHj`.cŧSy á ]TOø -sf&( mmWE(ba.V01x⺻H1,CۯgU8x"UV^KX̜hmg+xdzזSJV˔zO6sCR`2)]()wp1m ɸF%2='Ϩ6`g%i^=n(6nkn]k#d$P_ U^ذpW,"pbnLzLɍ0t!̟.~?~OiW/x$})+誻mi7o+!  WjP꽌gQm7,A cpRġ)4At?fߴ U^c;#)I['?(7rtl}Ņ(1cw,F$ zWC'gicO6E 1k$6ڄqJhQ:50&gE7܀+Ah az>N |9߻"ҿ{ aOo_e }\مCPQ[g;éikׅ $*ʓ[7خw%Z^'E</byT'C]$ &iu)dAX`@KxI_ȷle (뾖fӂ'DGnא̗ke4-\,JCػ ~ͷV"h6/Ϭ |I`!M7jV)"ZnWO>YTa5F z4vQA};HKǐg5$<Z`İ*1K`X#+X`RؓG|ecz}A\ gv<QLW>5iˆka ',)x]E;ŐA VbgNK v{ylnx"u#>MHYvmB_TE5$~4 !o&FD׋JS5Y9PDztzZ~ abB=2{2G=x3N)-*k;~`;P IyqggxEs=T6 ?Ix+46л'yAFChFEmCyBӎn^l}P8": GC(vlVlZKb&5?*hpڷ|C $ʗO {"FS*jlfgmTÓE]fwM#BakGd2)NIv;@?nMFu JSEj ZqlЮAPyVy#򧮞%b2$J alaXF ^0jY7Z ?}$p-rEj0bB[%j1cU 8W+Ri,z}_a C+T~[odeeGᐢ/ $ e R @X"n{iڣ9_&iU웏\tƤVmp``"WF̮=A@~А`k\cN>>5  ǥJP(`8T!\7ymK$ܵCjÔQnf]vHI]Rne dRz1ү>C oq4, ]׆?DyM[b%Hrp(B}`pH#?5Ω{`Yƈ˜lH*qN2J(c83P@Bq`6Θ(/pt#C۷1;RO4a-KY!r 34nW.HKR)n/?YB)~yk#,&tm-ˎkpm@J/dTx0w0 ;%P.7.{ɜ푼w 1fZA7ҡQSyW XegDlXl$=ܛ򎕶m<679?mt.ͭyWe=o55cECDq7|% !t!5?F$ϼg@N!F~x지=,UeSCR*pߨ`+V6BF5" L"8aaLڦ rFy Jz' vPwK#sZӛP΂2Dj\{瓺sAF*mͶ-V,ޟ%^bRh7@ *ߐ֖"E{iEt >P7:&v72eUĽwI=uyAe٭(:wʹKdKT^(|( USLOWc3-ͅQŗ3]H!S(IDD{%Z`MVý +60]-9K>hM%34–vr}-Nv?3KΈ'{yZxCKz ᑱolW6fN)vj'QuPhdEAcl:1&[]Ř-g4p6h U>[k!!jx 3Qh #߸Ļ]}JM76fKbx)KPVż2>FqT9hB<[;0:rj ,BNbtH[PLx K2QF*OL\q9N`;N2qAC8`"e_wN(FGUX,&| MJ3 {r#'9Q) GvK䖘%F]e(.UJJƎte.WT椶3[w rDlthPR~+N%ԳO AVmst\ 7>WSL7@Qldܤ"+I(1" }M/'toU-lSUT+^N/8##"x܀O*F$츒FuB Fו,ZsH2%-9+ >mb耫F 2) s t*DL__.0hgW-`bf۵c5Ig_L?%LVSM!Z#Kjf>Af5/̋AyߒlEщ("""x!f arg- *`MY9hN}{Dw_ YYU[ Oψb0}C>O ;*aC{.#\er=%vc=H*j/~2Cz:%;a{LR%;k#'MP3Ѐ_f4 .5RQFNtw! ?]4Â5ơyv{5ґhd?־剒^dЮ>Ҁf:/gɎSށw?k$*)E 6⁡Z'h.z꺦 0\/]l[!B*9sOlä.e!'%m.G>)G2?AHBZu` ;X2*?$ c2:`蔌"Voj("~C;Mz$B& DJG 6KS~+<*|.?'C!qӮy -dw`Tߵ~saQ;T#oXտl1~7ۀKcrj2&\~.}@ jLdӶ Ye#[6X;.hjB1(ui61wm(J5jXfI<\'f;_agԌጦ4u gd)|q`mȝ\!"Q/%$M<5LDb #*v|BKO3kgV:lnq`5|?Au~ 24wEg]Tu4tX~Q)br[UؽO裨(nSgaӆkz5VRh0K:bI_Qyva ܪD?Paiê͝{V?Lɉ/FӐեr\pF%o=K ݥ۪1Z瓴E2[T?v)eNPzY!>^'0D-M尥b+=.h ^櫟bF]NWВk *&"\,BA<''wkP:4AFeeBc"cNAP_|=.\šә9 4Qo'U؝IEC7,#;a,?t l8 %+Nr+WGAZW4;Qכsݷnƻ6?b;]-"\Aā82(g5''ۖ@sL۽@ 4$9A5n01^laf?A1/uQsgD:F4?,OM1;N'.VW4UY͇tbL:D/'CҼWÞ%.OEYzK0o[E;CZcԔLRY 8#H Դڕ@Jur[1 }isD㉰*IGE7s+%5#^Wqj'!c׋ lCcOFQhՇ)ˈUs0 cخ̲ueh yҒ7O)j>] ZMa) O̸Pu߲hHb^+4|n~t%-{ ai{j^DN-QySw!ƶEO9Z[g8ax И;uFgFV`\X׶R%=Rl%p:OV N,)UAcL\OosLUǟ1PA\ۏ2$%qdDЧ%CЖBjNvgӝ:M.\y}vKVy4yю0M1XVsλ1)yц]jx%l 4&/Dxͽȕ,Ivy;:ؔ +wM5sI"f̢z|#I^uUԻZDؾ'Ny_( C8:<;(yi1k uܤ 5 2; [du7%In!!xn@ۯKD(*m2Ljfy$ا'OV̂.+Zj^a Z1?yH5i}1ag}- 1)1I-k\vk\,kgUW<{ht[6Ivզ!Bјɍǵ.qY"D"Izg',p6Zqex3<=S3_E9KA-XC UŔQlD !~#T8 ¤ć .U4Ftϣ٥],HթvY"^-bX 9lc6pi&A)eՙ9#Ӯ*LDe)Vd c e.+N\.̥oz F1 ;Qp:E:MQ` ޺xc/|6I\ ]{%\_ؠv(U-ݳ-4]cKݝm'kM;3a(3?>-Qj Wf$lF }PQ QKl|՞ (Iv;sl YCZ*^^Y /Lb h$۳ BN\bޭxT~/%3`@PawNYbeHR븤XWV>W-SLAa(s($)F*/srwV8eˠϯPpp# {[2tCc* ܯNcV}QRXھay8l"*Ԍ- C@5lG?~0H/C'S!;6$f)H)gbhmɡW5'EȉIo~eٛ;*mO$ c[ƭioDP؊Иu1HG B5˰?MxF _I689h+J G&Sq#C)XFINToҙ! RI0p;l][i#|T,Dd6HcG[#BEIKVXy$w=x3y#OafoUݳ\ g2qWA0Q@dS*qoʬPX:jkUK(:2E7}?ϾGYf##No3V  =:Jf@ܱR]d=u"-ǕG-]抓!0MiCul;[h4yO)nq" ԟ+rLQo(,_l6KU)wUUqo1))jktHܴHyUB\,C\qJC1~.226̜/g1Z9\=3dZ?S44y6i?.o"ʮRn}-_``Z-^5ơ챸zvo[3?+<'ŨK'u[՞.0.a&c^$<[u AgH,Ӽvw&Jg2;qC%e߹I})ݜVC͛1u*X }f'!L@d 9x Wtmѡ>,܀~:' O[k'mX)0][ݙ'}tT(ѵu0k?HVMyf!cC yyӈ*OW\5w# ,畄~iw6'О$IC$GuUImLh5lREE4G#Ԭgogc/:A%FScw6v-o8n`Eqr3MmtFB uƠAW멋@nwܥ}JܷUO"C­]57^ZtKoq ]#:P}P*]C  êĕaXֈ;y'v;\ߦp7^ ")]8RK9˂Eu(0[0}_x+K7 v^*0[mmn lř@yP64`)\+iBsʊƬX%YZ Zrl;|VČEUBps v_+Y’KWכUd+Ob 457 YGk'!X>daL1~idƨsso?Fj4:  N^uݻFY7j@ W9(},=cfEsq}? DR'Z:33Rs#Sm=CbSBO)Ft:,Q{mYН[1U #aVZ@d\H;yfji0gKr4xV?p @180Cumg$J-~B}/pȽd]&A"x(9 m7=~ӬrC0~N^S{vӯaz _)7Q4ho8%0`&dX6; @dҖP5rPyA`뤌2fOLr&+60vSI+~ .d2eOIܢ*[Mhd>I-7x F[!1VllFȧ`(Sg_1~5DMŸf9smH2ꯙ?^ˠ ; 5U ޽Z!̟-2/Խ끵MAEmQA8. QASHV$= ]( CY[Z\b,>Ulڦ"$~WC`(5wg9зE_vϙjFj2>Ycq0Zz {6IkqX~*KBNid=5;rtN*F읱^DaǶ̕iIZ86&=+%?H( n~[_OKr/Id\qJ~a%* Vh6I,m'|"Sx_D%/Bږ'}I6Om)?3[WdG˗F5"x y3I11XjV̺`AQ ,)rtF7TF'LZ0ƽ\G*|Bd=(К9H>idˣOIڴn"$ Ϙ;Q}rGVncjUuP4\|w%nXޮx% zjjFk6WK*5=Բnt"Z_Pw[cv 7諫-^O_57nukɝpk3TgוS.gS-W~bcR!mRM9^A b-(L:.!Z#4N@[LmnIClHj g 3[1-*JxR6|JD:xNm0: *y;M3]O+Ӕ,6ba9!C\H4ZK6i8ɑ'ߥϥs㯬tͱq0~4024+%MVg2Ȅ^fR;[$Ҽ`fj565Eh& T=x7 ~(U?@/·n(!~9;+u%sI- ,[܃aCۮΩAyyo>̻)"f6_G5T 2" *bNT ½ǜ4Zq\ 8s&p cu 45$t=StL,i@Tp3H-dNU>:EDP :uK|e~rT(FA) D#H6dU;C^8xߑf{sXzD$ܜzysj:Rk{\cpMZ]Cg9=[ 6.5xU5jrHum6Dm,zdzhOaG:4dK`0_U@N͞o9jà$N\l*{>4c$&cNꋬs\V() +t,80pBM2.SZMZ:R3@*"ARDٰ%kiOn]g B# +H$N?=b $o=w\`?kVgba_u^D8Mn"`7%bͰZa\Sx6W;c-P9"+ʣSϧ"4dԲӭ,Lpi/P8ycV>^;U:xמ8r_ە$G+AN}+e,$!p/NQK t[螅6[tqEٻ{um޽P"dt\?&'5E@Hs; z<Ӕx4gДr˲8J C -}{c{Ƭ6>݃X̝W@ݬ*YG[ B;*vafm옻XS:Vӳ18/Jfۮ,xٙG.1rRi uH1*#sU ,v:% r lh\*E7n"w 2іhڷy1ؽƶnٌ扅Af?(B]Z'fbvd} gB\b&u_6FDw _pN/@ɾh.=(ϰDo>[2([m̋xS[J71`Ή1h%^=WGpns,+{ (6 l. gAx@,u..QՔ,wcbƗOWL=V/Rj2c 6҇p3"O͌@`K*6O'eL0k|^p%/#ZR*b Մep\0B9N%x[/,bgӝ"rf`#-4V]S,iY=L=n7r׏c$!a[?Uؘb8r}Z_έf2 ׏ \Ue_x@-Wf@hʮ2M><~ 0gWVgV ɢQ͘+_Q.' mb3}}#} =߹WYy#qc5{"&茤Erתt?K;cM7/%m(pꬆi3}L0R`y";H𚿅NLk$6,,usD72@!iVAKQuHX95 \逪{o}Ha&|f,dĉ ݘ|V݈_~4O!~e .ֿYkZ'S*,@`v L{U NXͤZL:L%2%MPkPbFPDAsu-=f12TPJPOK1z5RGT [$A, fWçYж:e g+CK?sًjyŜش|/цnϮ-^OO[I,gQMM[b Tӌ!xfףp SϋtBfT)`XM[KT/;l6MCGTYZӳH0,baJMGY[۾7^} ރ,wmpL(e;9>T։~YM1Dנ2h̄؊_4O8ʷ&3b֑6y`o"9u\J,'>xgCU7K.+&&^g5] Ј},ӯEH#̗A z!GZ۔ttƻE@MƮ.wCk/Jl=8YD1NKh8۟bx"aH=yV;{#]F;DJֻo2q8<崙r7uغ9,&uE6Ap5OKNTdyTX6yj@ޥ4B&x*ݢзULHNuR˘\dy\Drz|\YA**W'Β=i$~(k *VZ7Bs MW dZVT31#[8zZ*{yŅ'o{R3;XnJbm@  d)ŬZFʹ?kΔ&/@V9>]ݖ)y'hꞮD!=)hv꠫5*gD 7ʮK4%Qìaц28;h3KVw #jigP7blPߏ<.C] j,l݄a`ǵnPKAqi|-rrFώ)4ĆkTU_ >PYoV~hs%+%+My%렚.KYЊRDBf1BIJ( b$j.w$0}d+M7gVqyv{EM\#FfEFGجc-G s~β쏎|3Kh;RRcp$_+Wz $(2.3ʮutD4=9x2,[Z3Ep[w` (.1L)Fn*+!ҟ0-_hJ. Gh[M*,=`HۭZeMU/ZZ9TAu9Sw'C}\WcH5k8s5˚[G|e}4i{ASϐYGo)x-}Ye?Kh^c .<lЪ X'ڄ w

    ͬ/:8=  Гia9 :]".%sI"ߦxz/y%ʇaZ`tVlQ#TKZgC@;˗8*1Abn<wf n±n`s[*/~AZ]vםOYu3 ¶q/vc#xnt^"B^g9 QP%R.pc~!wWy Hnr1(NГPMX e[}:rn},nt.l`uuys1 Me[ۻ&ml,ؕd%d8}Vˈ /aa#!~?s\2>e߱@Af6Q h@:i<*Ajr҃g,<ԴO;i( 5-U6#zOg1D\>#$#(aUijs@S{p#pԮt[y;?RhN2 ^lgJw%r2xcE[3@O,.i`C_smfm8u K;aH{r=i*g6):5~_17Cfᾴ;ȑswR")B ?#aeJ-~]ZGBl4"!+;0?نʀbﱲ+Jjӕ#S}?ufz.Ɨ`@/!z3yw>\r )4cRlxX%ҏ ~iaKGFj Fbia̭7|oV̺a ItzNjACp'` ~n8Eܱ0)/ln`#Pn!IA3C<:vkX2~W1E[qAc V3npBc2WۣBŠ:J]Ƕ"$K߻6n M P;d$꾴Db[̞pVյAЧa~w E,ƹyCid*i>oMxl4[a}uwH #l8"dE-; tt3+v$Ҋڄx I(Š,: f{8a= @5a?T2 #N\/LVn糐x*MI1$KbϏљǁI@ZVsA>Mfr@wwR(Ym\͞ >M;M4r [%&"8E 'f;53GG J6dFFTtP׾ɏ%TŮEcMgWE~F}c[2 &[xl xK9;b$K;qIҴiOx$_q R4m^?c_Z N\h^F􎏏([Yp:T-j>2-v,N+I/ QTc=C*1mgP}ɯx8C[/cd u s I9 N&#V>]x%T-z:(0@;rDB@K=pbTNJ!MH:h.xhwЮu9ņG;;a<7bcn\Lt`,j_l7KjawzD>(chCLJ%z3GGn^kv W77ET>40NsPd7b$݌Xksa$' G]?m+T [bNsk26f bjӥQTѩlr6MԪKɢt10qQC.)|K a CK{;T+AQD_}qjܥK"wJ/exq> dwaHKA `N?nPdrDrG(H1 w,Y$xg9HWȂ_K4n-VjꮤpN>n~r}: Z&X\Sec(.)9ݱ ĩ_s_OoN:4CʌBoѹ%Յ@Ɇ7MwEӄCg9e9?8)s6лZѢhiI[B̌XaAt&!qߵjP}PD %dĺomߌd SqI8y=3:ex4|0(-*Fk:e)/KD+8U:CUT\I*sC̑ ^Nw<~SM7to[ǰIdğHrF20QYa2 /l>,Uo۱GḦIr5S -䫕.QnĢ+#uxjCs(J贝]LVG4R0t;/e6>xw:}ux4B'&g&_;,+Y߯e]D'd$&y":*jzv~>p^kpRmׂL ڥlث| Q·bwWiӵ2d1,-i!sϿ7k XHhVQn\ړ cqI.y0c# g,ƒYn-Tqs⊊B-FKFͣO)R}"" %oM{`:DlgCKz}$CPT⽙eETjĩ0"za—]' b,/i#U#2PgjP,Cu_x$9ߧiwho< x__¤iu qϒ̏D #z6|Jҁ2,]"wszPLvw6e-ЖYJ_dUgc1KW(usy^-v.(A;E3׊䗣ÿς!Eik., .AK@J4KOvzC :4tlK lh=\8F;A !.d0x1 ~;"2BJS/kW b4tOQvJMs 3oAy6,GplX2&^OQ qόdVO֝SzIm]hr$0rx0I" #_4히 .yh̕FVi ԷrgV%cN9̞n^Ǫ?Hn4Z joJaoőL;7XX@ݝ?z +\ڡ;aade9-|"f(^r$W +N}7s38;ų9IIdX+:e%U"22h\zT g6X1bQk&D,ah^vGlAF+դГ4۳Pj3߉Æ~42=Œ8/fo 컄!LykG=ur#xip.:cg Zf\qz/mj5-f;a'ij'3^ÿdD2K#xRGf?ch%e$9 %:Ș-P86gC-WSibEU'EM0f\mZ@S@LrF_cGWո l.=?DI9,fs}rFCB'WϢ_TQ Skch3dEQtM E K);k J|(z qFQ,yeܰ4YBTu LBaH8pg/VcT- j<ՕV0T5!(ONn.26=;3.BxczE1<ht=Os1k>; 4 $ hbnh%9Muaà/.|,-: dg\'.ܔ]Q#gtw,T_.*dh&=$TO5<*k$եY_^Jg_=̘W0TfJX^Tfkl&rv*bMhyϰUsY'Jx53FΔF/i߀]ĩ&jZEƇĦUm eӤq nOlti<"G{DIE{〒`W8\e'B9 ^;MMɡKCUc rV|?ׇ@N9׀T,%c~!&: ؛ۺ؍9&x@g-%<ڪ,Ϛλh^݆ pTe0Q ̜QvQ(eIj#4GgɑxY cɜ#ⶲkɔpس .xB< M]nj^iU{4-Q|gn/qݳo"IS. 9`Fgv_/-:XQLe^[/фY ZTB yi>'"$i^1qQ 31/hS:I|yu|£l;,c~orp7 J> 6͉Pn\@ $ &vAt`rgdf{`d(Zך}wෆ#:ߗXR ]< ^?)ˎm *fk =C 8 ]6)ỹ 'MәYv8!z})ވLJg<'c!T[7F?_45 WM8{#N? "|. X3K[hJL{'ɪ?"q^쯣-?zgU"B% sXb ;ԗ8S壘J K-Ijg81zY  -EP0A~2Hs[ e!J<#8^gsY]unzqs^+S?>B!" >I]vy WkZC;aakCX$D21qMCm.КWu!]98뗲? H*^WAs^QEe 6f~eu/|u_yK@'hEt8`~̉4ݧD57,5jfѝNX 9ZGyk C ?ѳ;L+$fPa1j{D/Nzc}sS/."15yY 1xvfM>k6~C;0j@Ky1H K/1g^'5-2@F\QDy,|dQg;TTe~ggHNB}]Qȍ xB 62g~GW we0tO /g<*-s^B⠵'$ X[تYt"@¦x; R efeHu/{7->=ΓG룏.m.(kyU(Vγi(fs$&Hpyv_Qx~p" f0&+Pc}?jZѩ_P}gZ= O}c479_Lx7i{K\šU 9Q\N!r0yFpw~Fݨ*kzXJT7hOxt>4"sS?| 5O펴j<-soRDže<(-0K6I-_hp?!4})%.8pp.Ehr7Ynq_險U0j'dbUaP)m#~iƱU`@Wq_E!6,(I';*3i(,O}%-(am ݾD1'`,"D] mZc4XPKdHO2Ijao3~οs~Sr7@''#r1(83Ư9j E{i(E[[.73ݸ,SDnH  V^ftd@nԚH 3Ol L;nݠ[ ҵR7R<ګ7堫Kg֗R g<5qŊ'Q8OsUODq,"Brg\O n4-KV$WH>~rߐrK%ٺ7TOV,=#-  vT9e yh8+jlCz.62"p=ұ[mrhsn?s,TA1#ϼ[v>mI"Y=WmPA2~͙LCB(\=Sm{ζ;k4ZY}%#'ԙSwr#p\*~f?$.zFla ޲ʼqL=<_Z,^zM? 5| >[-RW]Ցhl>~W oBjxc>,B?[E.Zǥ Ж6Σ[.@I'i d4>u[%t!ș*+ƎjAƅ$N7s`B)f\ׁc& ܵ` }Hl󑤼vl4*JYSJ[7 9[,{}CQ( YMVhNѳn73k0P#i#d[˸{d3viTMQ$H$P]g P48}yqLHĎ/$EyX}MؚO4I0C9S7$N;Ŵ X}.yHiSМÚ)G^2<ׄqyVIo<=ADhp,icE㥅OL!T6D*4u.֙pH4XJm;>gIY὘BtF)l4XKt*0Ჿ0.],OXUYV [~yPo&40i<$Qb"+QB!,Ql?"GR| sߍ"'R҄38e:pUr(R6R,tVF^DaTfftfG%%r+B+RMPV/(~m8%jh[{aY`jo}{mL/يup&`4-eVHzŢ0 /솷Vҗ}TnݚyR|/l.XT 6n8'QjYfki]lnH:,<֨TyѬ`&j@Ws%P/\W;|Kz}1|.ʼf}R[{yp|,Cp{$SЪ9{.cO 7D43X2{f?7?cm㣾PR.l˔OQgW!amHqMaZ@FWBBFEd!G^%pxaג1ݙj \OW'mL !}ҿA97^g UiQ=؟itBm*p/Aj($0#u Ecֵ\h%N Ÿ,橕DR l /n2e-TIԻgNe;qsIJxTEpd['m_ݺ}#NKN~ȗvIIutb?NݥM,x"*+ybqPχ_B#!D6S4@jtj o ˍ0֓>|*@vNH|߸JR屸%F*|3ba<8ևRj"Щ<(ذZ@O5ݛ|5 FUNBl "Aڋ9gOb ${"AG_a-R¶ٿ|{%q4~aZDI{ZLYЂwPp\kV:A4f_hjxqHiДbHg1#7)\q jUd8Ma`l,™~fbPq:܈]~Iz~O]N1bb}<&ŒA)]@y{_ xBЉ'qΘ R) UxsȎy -Fpju ZI1:C=nG6hܛA&~ 'O)'#5m$j.O0uQ`->`&;C!mk? eY 2AMoS'~^ "DzۻєqCwk\ lgUuw _-qRiM ȶ\ӀE:/Z1a2[Zf>uUnC=}@8eAc;a/фתtsQI5 񰖴O7h1bO]6G#ʣl+T)$l(/_ ?_.%'.Jd9}ѤM3aB 3A wiݩ$fph2k&af{]O)i542/Y`Aqn19_Nd}k(5rޙ㗼=`BƑ0y nsFcTG(kqzҖt_8CQ#4 ۊ|7ol=BbHK׳L2?1Z~Nwo/G4~3Y0(u 8}DӦ]עV b`|b~M+j֎Y"6= svN C?Ǜ.dcg\ BPL[]Dbuzɼ`w2K oʽM7tiˊԟFzy2 tԸ=::x!W|t~HE f \ NlXq6*/F&EX\Ol+WCX# Z$}/:vwٳ.ʍA,<$"RD'tOGKu]B$B#| EN߄XI\0T76B[K-T$.hn!jʎbFz *\~_JvY<q&=h;dL}YcWdWEaYMb u-) BWCRrzy@Lb:+wLFI2 9EخUq#4|.p|7"Yob:WPtϑu_ITߺTMƊ H|^ RHH| S5QmU򧊝Zv b}/Ks8'~bimAA98KG=yp<5P+umxyaպu{x~y SKȮs\q% |d I-B*/6]XsyLAv@TjXGp ?T'H$%ZNU N(kӔziƅG_ 2ۘUi=U«1Lki*Qk\rLWȾ )q^8ڽa}K5n30q/UHlmK{X!Ρ$.<]RP{A3됿WU 3|d-;'g ~I~aݲ3z)6=aO0j[M"!8|xAc =LڡÂXd]*j GO+1)Z ;M-۹Z݄btMz!V.yis(*<袺nT S9`^9!l#yB&^U9'WN%$@'z4N+ekT|[Q;|GFJH]˸Y+6  z`U`%+k[&SwQ!ݐɟ("BK{Gw hi_uiXIҟ0Sc+꺨4o Y3'[4Y4UHO֪˗|3QR-$?6eHB<s"4 :V*;U +X*~FOGZk|e 6K3~)SA.y<{$fֲѺYwĔ+Z&QZ[_Bu^v4KRo~F!b"!!*p`kFPi3{P[?@ ƽ)_CtOF49\:CzeqgalOyo2ڜDnҤ|}_wDYZa?/\5L 89*s/е{@=hM}!A;1]݌GPp0b89& Cݺ!Jr9'Ykmfp(q' $.t|ÀwL޶ )0:n7|ebk1')7/ A݉ؐf1&crcT]f~ Cdʲj^S'h0NafKIJ6gkIT=PqPX@ݙL&7?W @O`| /t\9u: GyhNUci Q56r\3Iu%l.ĔvEkK^G%G{#v wVpT}Mؐ%Tt2\|qjv U(:)D^s"+^16h)?_-c᝷Sj#4O[E8.-58p҉}@`AJA)Tmu8W%,Dy/&قc t"ZH9ÐOSJwP}3cj 1!8 [ɒ3RZX9a,!Gmrs?Mi44)=ʂpj:T+%_հQoMbłaڿXʹ%(lk8C5DOW Fs{2?񜜓7BAw]ۦ1Ta.d[tyhE(#kj7X= G$/MQ=~fԦE^V.ǐ_m@F$.z.;ZBi:Xt(si7\!~U/9Ǐvk W(=7%U s*cǖ";uMGL'7a܁@'$z;53%̓rE:!N0ujh:꽰GqÔ }¦NZ,Dqn =FZ%1-,}3d(;xGJOCeEYr~  7;2z fN'61h\1p)tѣ<@0QYC 6ejQiE]E:4VçNLT^+IsT-:F,%1 6w|Mo.,$ћ~ Zg>GvBK@WjvB>Ew!\a{l]ӞhboFZ`.P-5󂈅Yy0@lyz.3qUnY@(@%.!StPh +]{Hѡ[r..йENn]Fc!q/iʕa/5o⑂-[bCoa>\:dN0_?>]}aK>BX Yj2 `"OiWlZTTK;[<+zyRWhaWw$|vTyL!*81>O"(v5lER 0퇔є^KW)o ' :_;P(p4570"bmx1x:W\ͺn9I|b^*^4X _=qdq"XX6JS `:>Dj΢eWbB Ph*Ed"(ʎ1P%8T\+*ަ)$q.3CD-aȆc*br j_IcL.T˙bOGi/ei@Zda wY1b0?&f25vEMg-L$Ba@q<:cr<ǦmPT'wc  eLHs^D[k2ܞ{rK7nYoӆa=0 H>v9t^HV.7s<>X)1og5ܭ'bsPtn('Zn>i/C̒wYc rgʢ #cX6Jsٷ#'PӀbvE6an1i8,iC)>bl3xs]j}\)\0rgJ_kB,VF$"VfsD(Oa(aFQ;w 'wgr/5h^ i/vq5 'Y tÛ^0~v6#_8G`6#c" C/=5JVUY˲৓7> \̔d5g_iA%ۊ!:+> 4.~,qI*<#/ i WڈAqSh3@L*\@E?Oώ-lBVFjysF'mNfGuX%oֲp*@9:%2*m= D3Q=א@7$.1_{Ǽb?rJ1 Mfk^9|2k_!+wtcW~i/%w]C镀t[ $%ZŮ`vZ V ô8 k22dyD& =!fihA\cƄ骭HQk4 /,쏮;al4(/7^n9o7`*cX:9}pXѓ.]Jz$}y׉(f,2yh.ZK3"۩g)D\?Y, K~d[*{ќJQF9oW^̪SkDMH>>FiY@R DU=Ѩ+mhAcCN;O,e:8|y<a wI@S.IQЗ@qD Cq':g`myYc/[˻54/'S5@zԾ-Cㄉ{Z}o7>Nk}!S&44$;K08%:(tüE|_>%:UQlᖰ4xw{[lLy֙ L45koMJQm?U}w;¥ޯ@ v]p%:Lx?װK֓SX g uUtPV^qs1Yܘv  f NgJVc{=²:}bqlL)"a%r`.!#aP)17,@>-h/Mc(6c{?sgX4h+,\W+Hm j3iMɽc+*8׺ƄkvĪ}uȠ8QJ7_O,wv(t~{08#0M߾vGLŵf7 oahLAZ9(_<۩F%p>&Gbd`Z u6Qz48+Nw2 ,!#;|qJy TR|}9꟪w0=Y*@R6ZBJT9/| F yT>,nY L`t"cRV'N,},9Yrww^ih01Q{ E>*6.1_q? V]uPi_j ^D=x9c^FbG٥6]6lh2%ZEO䁷Lh0I5[\趽Esil׼dǤ#?0>2NP [5`-0~ Wt9ZNaOLQ":bfݵcXˁS3 -U4P{'˹Ԙi\(*X* <1 fBՇtPL[S,ڥ%$??Dϱ,7h9yev }룎TH6d\a̶hhc H7"æ@1P:o\dNa)4<סL5QX3q< aRmp?vC ]{`$w(M]k<4zTX;&w t N9ͮ3?kzT`xfvTTUeީ(/+1csX\VRf p.J.)Rrnj5p@sRwyvN\wȴT]ܻwwk}P)2Lֱ=Av]<\  .*gbo\FdH]t hM\1sJ잀x#HI5(A SBx[@)]ܖ_ l^^#ϳYqhfYY^CΞ8wIpI*w:2ŸRH\L==0^bFxҍi(t] Dw \L H֜1O>%0u  !Oz If/3zB+ȆUD7;HÐ=DeCȸpqB0xWڪt B-aCτ+:S5x:42/ `$ caX3W=90UI\btLaζ%|˿HĽ[ף垊X*ÖS oşޥIA״AB8+S`R8Q{%ɵ#pݛeɡ =Rm@a3Zn{$ ~nc)*kHvp+n9mΌ]G:̳0Y]q'c0 'ǚ )`cVMF@n09#9 @Rps$4atn1YVWq:q3$,`FctE䓓 nE>$d*.u@Ҫ*+կ]8tp4ZoG:MTnsd 4[}R\W76\Sz^q AKEIVi];n/ 0 .[ɿtIo_Z$T; `߇Z+clC W0/՜CgLoM=[EE2CERP 9J2)B"}[Zn 32|ճ`.^<=uZ Pȉʅ[kx"svq'qð!쏬`""I/`\h<5L=pOي&YY$dL] 3ċTTbEn.@\^6qz !Jm7ToAėϲpWW*"xqoj$fG*}HyeI r7Vy I^0O8f2wtWW DCY9GlC3/iHߊ'oJ{8_d#ߞ~!Y>3+7h]9X>z\Cv G6lV,}`&qIYCP,jo:_ٖUٝm + M2=Z"gB:0%d/E~8VlD̡ks~HN?Oa齿W";0qFb'l3W[䃆v;X:qRb8ޙKkU[ L=N/$h_@`/1εe?'PKе 4UQ %C8#U_ zFc T1C>Rב}VZ'K!5(FXTm^-ATLt$wBn!YyB/C,#ux]H-F 㙜64Ƨ8gݮCɌI݌uv?-2B~1$!Cy0:Coټ#Q˕ҙ5KMgD-Oh}Ь~Ec/ŧBRS Pڒ0>?'swiAߋKo펣nc}xۿOy|gȫ7JNނC Vdn7qzU )NqÝE0C 6Tj c2%K&:J|ת=X'} 8͚5JiF<)Yr!ܺo0݅'PcD-ON5&ɏiIĺSL9J&A_*xh# ap2 y:6]Y!A=VmOc4 BKj_ |]%wA/%``GR4*b\lOB1TJgu?8CZC`ݤpROI#zU%WG6kLOeUSx؟mXzDӀ*l2본I0 )meN4(I|.R P2kc\Z\YE?@|5cb)aud*UBL$uz8M~GG9A)]D E;\9}4{MR93p  d6|lG Q ɋYSU =GA>deDfSߣR61*UÏ^?<*Vr. cy&geU%20IgXPa#4_1iH^~5]$"9\- ޜo4 pC-|8X#ҟ5*:LôNqM/xJ!YI !ᅀ`߼v ܗ_hY٩[DzR}9csM)J<Kz76!GK%3`S8Q)/X3P~^t#GKu89aso9Uu7FEdAɛG:An=$Fkgz(M taIl46ɏ*0,V2N[ʑ ?L^:" Y]-Ϊph H>Mm,Z̶ziq9=)Qx"?pMb~Խp񝾄c-M'%$yMsg Ex&i͒z{ {0L6r7݋'quob$7ƫH&VzqCV3Xa_i}{\AV|%˻ Uti-S>4Z')f>T-hG^*r7 I>PL.H{, Z%*;s'3x(Fu:\FkJo >zڃi |[rf<;w׮GͿV󕗶+!/iLB-b $m#YiV$YN<@5ԣ6a%U@>A 7>.s$?eϕ<\oۯGKsNY 8XY@UEH2BY:I:` Yᇎ)g"}.Hd]cZC8yYWAyuVE#DJ&j)̩ڠŻ /@bD%vll5jaV]]+xvف;y}La tQMDr4OYT9+/@^vԙ\cQ`bqnqXHv] ;OlTn ޺(+5e ae$FR켽 5q}^d_4p eb!3ZQ l2wХt*2/Mņ(,{VaGNǵ;;)xIqfɡsZ 퐝Xt1#)$It(]so~|0'nqox@hZCm=4ѢD\N#vqm6 D乖-c~.,3(aF!QY%pZ;,ަ)DN8-kRѷރ{9,oI G}φqQ: Ϥ]-2 'qe-%Vu^rV2*n +qIueWC&#SE624O kWiEޭA*Wr |7f4=kW$ }U0>NF ըo )o9x '3`fHi b"A A]`*Q%'FW*R)o~]$ 0SpxM\,]Xi벾Xj_.V~7IWԗu謭--qǖ)jk/gYT&loCghsԞp Vqg@ɲߒA|\zaʧ!a-/^=`{Wb6x)Z5ojP\lW2όmKO ~j&@zd&$F2o.?9g!$9ՙqwWbTpD1݇0d`&{s<*P{GJ7m]7uvp#yԢฅ eզhMQ`+mԺבwx[Qo]|p |၂ =^祽^ 8{l8*T%b@Y3z!>2$CN! /$[ֽ#5BXgN#b#2n%s4M[u͙~ AǝaTM&?ZP6 A_qOY3%nQ ځuQ_p>VrODX8_D6Vӌ@ţA)u ,Ƅ]QB" m>  ؜e/ mL輟8:ͷqSOh$Q״~d0s°_stM˗ȢєDМR:1$Pj8"tZz9q6Sc(T;k/DJ}+@4YG|%1N\S,#942(u hT/{Vn & 4U'iA!&+ޥ0Xvy(:[d @dc 5JPo'oUpKO|ZKUO },N}D0`K"f^zqip&Dz,ñZ_ӫltn1 ƭ X~+C;s}r}ƪC@ <hշ 4 SƸ)]wG6@V2\䯵^ lg3bJ, 3^g? H&$o+/1"$6nq6 5ygk8^46Be_m3>JZ!$q8 1VL27lsZ=0A>f=:^N*&`WٟLgg7E=ݞ%Y[9 Qwa[Ţ&.Cڬ!JBdti{4\Ҟ($mP7{SHG8pjXAkeJOGYiTEYj2fmRԔN*Nhd^oj0Er8~5p-߹X'&lMBP`8VarJTnK Yߵє@YKE"7E4/42JPw;A<Ws㐊dt߹RrWZ=8jx>GB!T'eϴ5( J4qͼwGn8yވE f= Us1B jΉ^ ?–2a6՝+ \Qr~e(6UtӈM4̢:3+QbK{%Z]hAM2q ; ewb埣[ҿVDBf4\vdn_g@\SʅFƅ͵#iJ~֥-sr 4P3ɃlDP`ȳt?g)봊nyd>pC31C9`j8 !-1֮=gerY[c]0XbmF)MvqZCw BxO:fJ(zxb*1.cc>Fz57R3IcSZ0Tmd6KԈO"67f|*|QƤpn'd~q0 M&K7/߬ġ<7}x|Zm&XpE)H@j4{8=+ccRuyf\M ) `O`tI5g4Ca*h8ݜY .gTzax~h.^bׅb;>OU??nAl"6p9iyG ?:YnI'Ŕec`%83j hOibMz2sےe$RoVAjHױ'f~r*l&49& tvG򁱅̽!pUnXXQCP&;/u*`[#D++=8.AN'ₙiT^c+O TIՙzlbJ7o0k' +`'.wO DmG{: 똓öL7>z:3hC؎tTۭb[Y>~`-;c-J\ly #2MDxEjZ>T+tEu|+to^UA <%5Xq[`X-|_ܔG9.8nZ1#H!4a>Vϳ1"+u@ܹcZJzF`lj]Tk@{Qn/=`LOgP ~Q[\2BBTvrϿi32Bh/}eZnߺ˽6[@7ҸkZ:Gӝrr t-q`<ҷ$Ӯ4"Tqb095whʧ~f3TiND]>qC1k zgV~oƸ6ZQx.a7r^6:Z}?$vJG :8;aύm+Mgo漞lM7>oB}Nr"C_TlG>="VD5Dp͸g|pQ[M+o q/" Hqh%XUٶUq)6I)M? I3MO- u85-9j+HjXgdU$ݕlaVuU a|Aї[Ɠ-W V[lsC^A(.A?kV'o] E} 7t<3[jϸ(ӣ1 m%/7 Ys_f2e4%:me7<H)fbi(Q֟[bB捹 |ϵTM=+؛ĠRd=2qpo.COLkydRެrm: @7 XN4E[Z#H1vTV;:N$ө\S}"3lD9XdTK!s~o.@IcnۊxdXFbKu`ˬ iB2`rғ-k4hRO SZ#7.^T6 MY V'ǏwVsL *T y0sL.*\{[0Г1v!-hJ)z"R@,vVð9!Q[%F{ PҰ$M;]N}MN5SڪSXlbX(!i'Z[邹^f=.o{.2l2Oм"{x+i/ށDXG(&GtZ52]P1Y`);]0f`9.}YFݰ\)9]Gݿ/pUb:>.cnb=ճ?]&^ -KB#-raA ̴[\bD%JLzKϪ3UJ+5J<\ E>v = S׉+*϶$̀N;:- RG> 0TfL `e*oOlK n@G?.TE=ߔg{B[FQ[Ff`g_v\S[y&Bª=qr cRAjr_pyY%,1:أ8qRKJs֐J9'WRS.Gd6eأH|uw2a~(7n$Yx&ѣvfwPhgXRW[L(0=EPT)@/tDFP֟P}E'̈́p]ޥs sū0e"ş0'g:ֈ6CYŬh1tsDŽ>t/6؈g%9y[yUc鿩uosHHϵ-|]p='#=d;UN^j̰hxJk|.OS­dd+@ξ[$'p~kSsA2T3e&Iv&LY6{78b)&$N3ju'ezsZ0GA"VU HXl"B %`Ӷ( 4WD\Ş6޿"# $|?c?]Xp谹!0l43 ɦ@8Qm%EYx:)UpEope |?jE_L6:AiEA1@ E/ N=1B;O26g(i7 F],] @ {>NyMl(}};vFk[66)ǁjSn50+_ʉH@k.dFd?5W^ӡA%[;۔Dlޘ6Y kmbNݮwRuӔ!?w|Of=Xt{`{dPBPC1v*!LaI5gpL2]JHr<*~l#0$t"%H Mo(_X5QI@;3:#*!fvp!pHE'#:iE=z^ԃQX~339 dw=0A˿Pyr'~ꁋ_4mmv2.>3R|MlQEt㋑0] k@ ˵N47Ln5$?Da-ʊ,]{!C^0mm-jN"È%siپۀ5Kfy{V>pz2ӗ BC, kNw> _;L wb!xzzWXwqڍ+DǧXlf)]7Oǂ ?7ЭsXn۴ &כzk㫻Blլa\,M¹ ^?NR`,H5|BB>qb-5RBY. EP, V m<]\ ~S HS$+UDs%AJ^ y@+4poZCգ`83ܙdOwaRRF ȼb&g3EɹlV7.T==W?Y g59HuniL^t9Ϳu+9^}Vd~Dӹ׭ɠ-KZIJ"'|<yf0XV5Ȥ$ߩp>G?mD2;uJdvJvo{;_Atdw '6VH3ncc[-e 8*J4r)TFhB| cfƯ,=e-].Lvlu1"tMm} bڡC6JLC{"|qy 8U%;lڿ#PYxu¼/X{O(23otd&T`n:+ᦂLVVF9Mȸ}_3f-Y%_ܺ-4-3M+FnZQ f0U6<8ηE]KVg𻊫Hq@p0Ń vywWlP$)3wu6C+[{X]MǭI=})#}Iwbעn~xb} I~uAeo݇ ̾oW\Q5⻳((_'lMabT)'EҌ/U/ʡsD3,7fy (d6De ZZP/eT mq*MmRHtd-v} f*N% y˜,6,:(ٌ9摽cɰձ q&U"4Q[s*s!t=Η5Vk>nPÝbفݴ ?9n=ݔ@( L=oi&ՔF4ihmc=5\Ns)Hكk!]‡q$|)3R}XmzPHތ)wӹq/xտ 0ʼnS&yS*>f]nP%1[Eg')yVZFC)X^-C BCeq0PŬM{C]!7aw*Y.ggkRS!dD}կZ!r3IzQt86KPl?db 1.A]:ҤI [c̑V!Ҁ7'd]24}ADeyz.0F60RG۩ϋaD'ʇLOo &sK9XobycN Aa*ĠUB%_B`t[X ڙz2)"MCqmaHۀoq-,{Y; )EbZ%/'Dev(Wނ'&y״{zl40bgVaA)jnAD&)ʉ`HL,C:;/;n;gR|o)1_#Gg(SfHma}Lc*z9jx͑s)΀ OՠAYt_T_qp3X̕ǎC-wm;>o5ok'Ӓ<;V<-GF8 !BWwu؀pyRA(]Z溧6*I60%.cBhдEAlm<3M-Fȉ>V}c1˓Pdڮit5- w=yWa ʕL&܆(wDc~Ng͵GRհC2 I`a 217H9uton#T'B)"o1w7UJ}Or'G~VsX^GNe֙G@3Tycj!@E{ݺDY^q liJCOBN i$d^ Lnr=Me-i; mI?K.HUBse?17;Q끭41JUym>kQEyQ;-eNpbUPZ䃿犿G<*2hʰYh- &T-xάϸ8eoX>\Y ils #/mp!K[&sFJ eXܱ<%\aS{t'-d1rN2+ל{]\| zEWY9\QE="ҝ63|^-n䣤EF H :MoK1)kfK/@gi..;3IuԐ:h"$2 \S YA@Q,;C0H׳UPa MXՑcR{~ 7[]JFLs(̟'V4Q;w+mqdp5 *oL2cב2ߝMlcibZ{ ;s=nyh@Nj^ J]RY=)hň&gFcp:*Gh҄~'L?LRQXnTБ;0FI%͂ )9'Ebz%UpseP`vEO,( תŹ+1S Cѫ$ѧdw/~xvx3<pfd :-~QjjUH[gͿ3(]B S>ȈbrbdJ&3b/;Mv6a38|G߇l550@ PvV_۷фf+zma+vv.n+@˄+ q`Tc6~"b[Juړ"K`=P%tgͮ_WI1ͶKl67b8󾕳"4zƀMrZƄ"&LYݬGg-<0fxNenX%tdE"C9L,/l:K䭥K\|Jw ɴ6k'gAM_Ý(WC*yOnIcW&'SػR ɇXK93w[GBDx~8H wP 悈nmHÎ6,6;&1ڦӦkuhy}XM[Jc17aƣUmKfU:% {6QmL"&h*xS/8k3XIj!gxbYQeu!ATscD \٢ 1׫kQQn&( \Ę4 KO;+Ӂ~Lpcl/~0jg!cl8Y<\:n '}" U)/9wv{ 4x2 Hf@0ޡ_#W;W\.(;DB<;CVE4m{vg֖&o+N@rhS?bHsJ0Y,wuC^P/cye(!8> )aiCU]1}H߮)Q~q gX\B;4̭g,aqŦZJ (Γ N?pD ~Ju  e㔑[V T1嫚fwǨɂAR[7E>XkƝ67΂yX>!-TS.h1kqŏ!~P@1W D [X eW z^Υ!2SjPR~/Ϝ{-un}+}. Nr ۴ێ؛82I;8Efdñh% S@c9]>^u27`%gK"g*e5˜/tjK? ͂eH0JxrE'M3&[K2b[ "ýXҰj)ҵ$屮 (Dl(XFg{>9͆s)xq( [_P,U`<Fa5 U  n"]"-ӛh`su*WWEf-ř4L-ng@GJ uLC~xhL4(찥Ah}sfe ;]C@\^TRe60~_35xiCyIDbQ P|cjXJN>PF;DX)ÔZd0jH9^x֏)tBƐeFpU f,4ip,/()IMܪфnX/>]kzg,8$e P:R{$^޳5H7z ˞ Bb 7yq\;B[zsP{ d_vB H曇fZ W,T~l^Dꎴ7P5F0Bчa;l 0"lѴ(J?W5oyo*єWڦw&U;k]l{x|%T *a z섛.K8\UBQLm)L @Po\4Աz8*Φ[Ň3yXMeTtvw t5DSJ0eyNqwFj0~Dq)'H+ r t"yj:9FjPGa# uSgSG{3h/ $s EE[(ɗy q'{ 245w^sĻ*|!o/oB$?oRY臁cfm|$ǺZ  Penς039Hzirũ^=I5 oYw&e))ƣE47hJNI:[-P)=m@_ CM8^NBOчα밖Qz7ʓ#aNφ_kh)70hg;k-{p..Q8Dv%R1vx7 ݒjE:JgKBRϟF Lmҽ @vAۅ?=+pr({Nז񮘷ZO#u ;`4".^UJ5sǯ*~}ѕ΍ёtS2!7j>E[&K;bfau KMllCMq퀿aųƔ((kME. )J>cel5"GRJJUD n- 3 =-b+gF 1,iQJrŴ#Us]gkl ܪk<Ԩ:jϞFe B8yv/ћ)t:ܨ'nkݞ(!o*+rIrA74¶QcȲ[Iq.)B=1hA,oMG|vS $'3dTCfD:H <5>Hrٚ\~K3qmC "`TZW/KUZ b9rcH])cF4Cs<%fNrWOָ.!m~+adW*nGj~"}FuKW|[*9U逘ZR*x኿z9[Dt<(\-ǃ+V&>st7[,=*6|i+LHӎUa5D JM:;IbbmO-##iׇ`2I[<-:(FM 9`e(jY%kȝzƶ%!(KpA %WѽYqyt8 p2v5IC<=4x"1蟴676Nc^W~,*)tSOp(yu%)ðJ\TI̮̊Cl%)qkk &dqˮG8̈́ŰwtiB8poI-#~w͍{B} Su֭߸K耒oToJ5덓|U27XFoAa%B8G4jI4)bP(L\[ת[Bp%Da6fߩG K;_*U2 [;C4޳1Lc4)uNGe"&߱`9]'(h/$nvhXCo9!%m#M<:T+maI{iE\jV&]49v|H“1>[} }>g^4̸?D}n dtU28BoƠ=Vrtl!Oo|qv49.{6i;=@-~K `kZVJ)~EYZ $r:G P Ɵgr 0i CoIn]d'3iZtn!ܢ.:E_#fpJ$zCTi\Jd TkA!yj1h U-鳊U:V9^<^*3֧ 䳹mӭG.{njbWHC3:-+-vv'Nn邕@gbi<!5] UPo^N1ԟgJYk_SVuM*@$J] *іU1.G &fkY7@ᮔwo >F@sJ&ᇟ a5D搄i7b#F?[ {T| ! |RK70:H/nNhQhk:" C>e۟*zEڧyO~IEf!]t.^_IWP`!JZxʹNiۤ^NUp:CTZ;r[̀K>v41Ω(JyW2vFm98RR7e#zo/tC{b=W MuV/-Et=Y5t"<L$Z+bg"eN+^UYj}tl!Ɏ*rTIr}AO 4)R4"ΉXYpJxhYE ζ+M8#uN n:tn!৏_\wL xS!n(נQaܣpK( ףd)!$NyS TmQONЂ!>ȝT\/0I؎]'DH*Auh"&fdGͥ4"9c5t/<01] μ+wtx3cDlEd)  voap zfϟ+D<.csieQĎjYޟ0bȶq9GO|R&n֣8J -7:vUi86i<؟ۑS>j+H2D7́Ȼa<9-}ܒ;!A7]]Yh‡KKah?tkʪPԀva.\t%ohƔEюCuPöhb?g1&"qDa'ӭN*ZUU_'r14զj9˧,~h9=-Fu)W$8 C{(*G~^`=Et_mz ,bcwI}Rg߾8@uӌHGKtNNzWFf%6 (6' %F,LJ^3] Un~$cn7kb0eg :럤ukԖ.NqollQ0JIy7S '4qZdݿ~SuwwQ:G3z7l- e."}yع% _=9zذ<]tPC:njmvƲk%EeS҅9Xc ,81 Iy+|A*_9;[|HHcHX4?Zh=ܳLM7 %$`йE'ӯn$[!hv`^*ĘrD?H.t t AcN:ƏT53}Y1(8[hUR׬o*x}bRfsdݖރsXhbtm),ϒn,I.លٷHoMY' (4%?'?*.kOeIƿb꿒k?aާQkjE;F!]mwjFi)eq2v@[4{ZVC[U*TـTq)gRITH%M17T۷iT c)_*a0l}%%)o@瑌ۇ}viZ?mHSهJ $G h(TOƫ: &̑kB@lVufx꽣D L@JLIօahSWpq7 I!ΔhcYdJ036̣ ,gv1TH7ܰE^-aCmǙX ՂH][>x&,X|uT.gK_s6}`/i6G9l[^P!۝J̝,/=/kv%uJ9i-p'vLDE]h/lϫ]DFQ2Q"0o' Te#F.&!";\^j ?wd(eY6} 7NɕlGڪӛ+7މ%XMT` ciu&(e^0:v*7bgz؜l[Ȩ4QNd8n+;N1.Cf+a/ )V>CFLqGb IvUSy0pH@vo̫xe}5VݾA?p+*]r^90X"y)%eW E9 xG]ЮР>LcAł(*p8{v7-hӟ~(y h!aa1^K[XKnNlHo ֫ލX/gPZ esi/"3D`"t}U~ݒUH92GV8(J5J5n8`K'ob  [/6!3[If)u^P glw8}IPL* 0 z5COjtVjkިL9^HY?Qaq Y&3d\Vʋz:셐d} 5. W]%ڔӯA^x[y $ rK ^@|#)q܃ n676zk[ jTf.e\>$R hcƶv:Gq1h$Xk.7S&SwCY[1x$W[itA~hݴ+.X8^g1 <0^sSO쬸zDgh80HLD|n>7okfeJs4UNm~80/ /(L\tDĊ1j.d&4 ˘W@ <@wI"S[ae}/#U~? pHe#6sKP~Yؘ֖ͥYϻ4y:vCQL#SP^lnXga-$u|7å';dN)z.=HpNJ} g̨kca7f+,Q =Ne.0;AqGY4Z_,Mh{6cTSEL̜֜0lcv{Sa[Rj( 8RPƨFܐ2 U *>1Jq(RF׉J=9T1j9r/o=%kg$(5*|H${&NeܢmXo9I`01b>?ݛdȹwS'셼/7r R]Rn3v5F2:݁ϟ'J)KP" vNsPa&֞)1‘ckt›o4j=ګѪ^#4Ҏe*%^r#϶_%)t*har*<ֿUUh%W~o{ޕ).d4XKX!&ǔ64둎 9M i٧<:3qc$bш3KIe >-6D".I,d1Q?b!/,j} nG:D4i5`*L/%ILL,iq"1aͲh&ru!̜̗6- ljk>_%Ep^ƩcvtR{0"*[mR&UIpm0KMƁXP ݐcGlZΙ7Db-wm2X@֡\$^~ :H`?IJLbʝ:[RW$Lj:oӮ,"= 錄(UkVmS'+KGA\9ᄸjJqX47_ 8P??c=7AÊWtO(-ǹ.aL!?SR4ڠii_7p ׮\yO/"1]Tn9fVա#}BCD,̔pE?/,ST O[Lt?$p~[46T/ %mm2t'X|{tWI*{uNe^>Ӵ^$j5d9R̍;>Mh~ۡjl``W #PxG&sĂ>2bYw yX"{+@>_ QzV8kQɛyf$GQwO)^<+gML깐v^8ߪ_F[%hHu0O)m{'(ٱJNmy7׽ .uTw% 7p aN?[puCu-u!!|yffԀK&>l ےBݎsdi.biAYq^A+ꒀ_ҁWsc|W< M.x}0Ьr ,'b [fy믖"O=ט_9XՇx6F1 Xs!׈b$I}ԕrSkH% p)]a!f7.*Tmfn)¯Y\^d>VFLCFG=hOāN#tY(>Fl9*({}^9~{/)PQ/DxsȜr*ktX:txռx޵FϙXE&ߴ* p;IT1{qhQB} z>A~k!#G0%94L$u"Å-_(%ˈ8_kwL(KBcg s b̽hNYЃA{~S=5wJN<>J|F"yN'eU--słFE W4 ?h̭ jJ3&U{&`aP lڻuBE"}GJr%0>@p.W h5:P t'r7dOx!GT&LY}^DB?A]/h{n ?#f{FLҞr̕ H<+Dn?PA0;zcL"jBgXopTL6e;#\YI _K !hú/^@M^"e(f:/6}' :iu豒IZSJHX4 CI)mKKP9ńa&Aot%_}K0`'!4k mH}SۦTL IId[z~ ny{s&+mʉ o>>_̌\ Zl? w̧pK  /rRVbNgy m\$U'U{:fmobg·0 >JP鉍m(cW%\Ͼqdeg~«s<<^~Ϭ|z_h_;x'y;TG_57R Ru*)P+h\}1KfQ펏߰r7tcZEu@tx]WIpQ!7ndy6)_0'&Ij3 Ʉ fD8T\_0CANNJߠ6k@Sw2\j ٬dKk <6aEj':g°BOz8 #>Hܫyx$c4r$G+-+uƖ+c1!2uVؔR'WoqgI愰~lAdk%-a&)WΔp' \ P5KjA8 vx2O(d냮2i<1(28)K8#!WO^~e ^|FKVRi( ABUԥp` 8ƒ2FR6sC.&É(\aȠ됐"E[$wg_7#@N74wH5LewSLwە-zY:og߸5D35hRK?OyḑtiFhpyBSlq ol 8ay~N5e|pC}>|1w=oDleCլ!n_Pcs3˝Z8JDEyJ"9T%][מ7bM`ٞ~`q;+%m"V"ڈNaeHv| opA֘sG{ Ǚ滏ĥT&NQND[W sP*xEoE68 .kF|m$w\T$'$!([b#$aB-vg95,%J9.+SoA2twǗ/QYuhiX>,\q&`P$(0H-=]jꚋۡTT{ăFLmޘwvlJf0 8NQ5찬bt>kEዔזrc6{z0n;\SjNA#,hIpEF˛iq?&soMI ,"r_I䕢|AÚw<ֽ gd7~?BkD0UA6 H,ok+yNCh(VJCuVx4%hSm @G⃚#/q@y=y>G|`Un[kSf^Y ţ% `{ͨU&(mtXPn'pT\m ^|vN/vj.*n͕;lnM|HisOS$C ==]ӓbv7H}!ʂNlTZ,ex pAxt֐Wn1$ ^>]S9R(6mC2z՞U fv˃;4ɎEFku!,Į :TWȯ_td/*ׂ zrS4׬U6UzPAQJ3MR6gpNkP5B(b*4A^S'T]ibzd'V`*!]GZs?3E5!];Z 1J_.2b# p=@uBEڜW2D3P"meˆ83&j"yAspx9b 8^r9A5HLMJ 8_iSÉ&+< ~ĪE?;>a)yԚR^?xT{Hgs6Ò2鬻r-?.ϺHaR%ɂy8<%-qn6ˇCCTAI"lfC-vٟH^k|? }:kЪقfI;G+C|$Amys}7۽sު/h(Ᏸ2CZsxN|I1f4luznN4;lco=Y ,ԃ]H.ݓKveE?Xk& Ȍp.M@*4M\{רy|QI:JxyeRWJR -jNW,fղa8-J,}<4*;t) ? >l/]sUbOj :IAYZ|p) kt{d(nыӤIڔ+*ipKqc8wMbꂳ"`6GW*p,η[&OJwn*e,=,餿at:25҃QpHu%7@fYݐA=4;Kwy^BWгǍ8*lM&/exthg@3K $T t_b (t掑)xqOmn)~XLދI~27{ ߼^sHϴ<;4be G|Xs"aX Ja!t |$/BHY3%$dk\TaסwN_ 9D4SI>~' _3zסׅX)+I|•C8wQ.S?dFTkR邿ʗ [ AcSC2Kn;1VXr@6 h6q;PH?fƷ1#lEYLss ?ȡ260Ϩk)[k[fFf:uo2 $)“x Mfqkֹ4k HDSE-1!ꄅҏ=ۑjdi9Lxf :a[O` 2Z􎊏HQe'<7OJi:݃%c\@;E;ƹ3^dҝP-7G?9 /Phdz5^ gHA1c'ŜV@r]qISyÛzwޯV(4+%7 `ʡ)݃p8 p#m oF] :NT{2%&X?K°l7gƕ'w"V32Jq^bN: |E 4SSl&SԲ* ߝZ&G氅E&M}Jw$s e,`\1έP0$N޷f90:PWbÿ7V,ZbPK,vrF]b[ {[K!bO5Ѥ':rvd >#-A Eg`kQX3 dHN酦& Vms(QžF3cL(&Cs<è."Jx?-]bIv7.'ؓNe6G85,'ػix6>ga8TT{j [$}u@^&薩JA9)@3ᖑʧ6Z^u]Ùx)y^Vr*CoxjzQw2(ɺhGIX *ov~ᷓ2dWk(O#tUx'I6^"5Ffːܺ_bwZޗbu|ikWSa1b( *{l*ѥ_V=*p=0 o噢T#w`ivX8kI'"t lL"Ro.RK 5 kH TD5Y'[}ϺO\_t s hgghMFg|`WO$x5}phOV"VrsPW&]ېg']<0~> gK?>֑,R$0Od_o?^h8k3B=m[ah>!ZW%zg~P{X\8\3̣-uG@QXSB5)k|{!4G5+6)2Am{'?N"b_Z- 8w`Ɂ[WicP3 m7%LS7!/9I(Vb+y[7*?(?.=yfY{ ' 08cl]h+ (rwpN#6ܜ`s%oȇCQ¸[[[O_^A+ m3,D˲N1]n~ʎ՟p xA"}zj;p^| vT@ nʵY={ߒnqʷ/e~$xq'xf[>@M.;\5H0gaheQ+5MM7D29ব|4{CnۭzR$E+sd ᒃ.%X\vHt E?Y)q-!9,,cg<&չْPZ?e$Ͼr告۸ LOqE8d)+LCpLG')F_) mJܤ`,\p6 a$(P+k&w{(qK^xV#mmF${#>/7̄;@|UoI_놧[=)}k}Pʬft_0Wtm,ߛVdX0a![(J`?UbyMh*X]+Fߒ'H`Ɋ}&JC1ap6Z5 f4n ~5%*{3(W૘iwnNQ.-{ !lgΐVp_DلTּAY9zfe XǣT/*Tʤ^w }U%,[6da POᄗ,hFybflql>vkHu}1U0)4쳯{D?U _Y,ս>^>nl hW8wznƽ/) ` W_< x#eqt`VSfz8 `dVŐl}= y ;_LF++[ϑ2lrY/2xw"9rkBhJ:`{O]CcB'ﻠ bO2N1q1#3h+ǐ3Sk[8,lܽB Er*`̥3Jz+/S^D+_J7Ҏսv(B+"߸Z}1R?KPOR̸4d%OpxMQ Śym 2y[ni\Ԛ/wBsM%MPH~p4p)r73H΃ ` fG_{@I-]Ę& S z} ms wUG~8m,goD1nR lk3B{AuQ"d=v4ӅzrNX>j5SQJob\]/1^@"S@ޞ> XVPo[1%q8SIFOO? =z:<5]-X-|"sPaIB4 z _to+dB=finӲvpo&AY\">&3dXbS6(NCU)ƚEXlC<_SQ< NH`@#T;#ݯ>;-f>ׂk3j|(] ™}A}oŽ2umj (rϨDM馯sǝ`G.n@}B~v}8AF@h$oҷŶ)d$PΆ,vOmPxXw|j @WTP"L<}J}(NQ(NiG/y88;3AY]ebUEMUVژٹg ,/цKPiѪ~W뺍߼[2-NPQ*tׇŲ^? Bsu1 qoȶ0ÃZ8R"Vs<{?YwJKZ֯;v4B58IPri?è-7j]vr۝4 $yM6$ t}./ 9rM~=GY+7(_|D T&Bh^H[~[4ZFg14$F \[ۀd{)\..~$F#¤~vyErGÍgIe=$w__(jE9Ex<ჁJyz?GA|.75sߨ%kx  @;IzS D0Wr5@ˠQq]Yp/ ZGEvJUй$ ƴK i*? N\[k9Za,N\.p]Zp(J[<E(1̙W0b]\ @K穕ZтduqUڝPB39+n>)91L?ihSo7(g6NwWupWp, .8$DTl)8)+6A՞UǑ˂ϤxP*#p9!\- P$tFd)GgGt˗R 8Txҵe˫(m:B6vr_"*ZT@*ۊL\Sp`MoJ" }Kk25:$H4Akv|GqpSPĵz&ɘr_B8ܳA8;ÊhDvp9[+;BDz$͖RR8~,n{Ubƅ:iga~eԡQu(ٝ oukr(&X2ü,4 }M}e!=,o MLٛx7\:e"pg^Øް&kdQ N>x JFNHc,4R 眒=. 5җy{*اSJQ+H}HJf,q Lf6^=4~y՛bŘIg9U: ʌ9N)\<1>cbPjBbS:{ JOKy2Um8=VD'̫"Cj*c~`~~_9ZjC!S_ɩW|- %E%z~|BV1٨S1WzB%rH/e `iXuԾQ|!tPۉ1{t9Ed5ʶ͆7uicc%BbE}hԺtyp0p^xOAgY߼7q yO\(a1 T~+<֤3䔄`rPYo47lྭ7.߳wp9Czqk}S_# fiYJ xSd3XEF?Ui>Z|f[@r`_MFy#" vEP 9]r^UF<r0Xmk+pI[yvBXPЧkۮO=`ps3KT'mRQh``.$5 ^3.K*ýEb$ѰF~տƂt!phQ;Yl6Ĵ{^CQ?3$gƤB%1n+5+;Zs`p 2̪QMy@:z*ޥ+._XU5|6y7 Y W2DngO[' QT90fRK&aQmm W KS~>vwCsѪ4ڊ1LƢYdlE֛(`WX< &yz"6+ЊV D̅R(嚓ljҁ`z̚MD0\P<Fk(›Iq=Q,26=tIAّGmvwcAsh}eqewB5+^ XKn3hI $yO/f*Gzva {G#6d>m|GOP0v 0¬;&j61g֘V`_bKG*s6 ^@fff5P:TAL'K'MHCf!Q$epir0P+$cGGtsXsf~ոbaYde+Kx+z*ڳu4[UI.pf)g'n[+ .EV(q?KUu(i%·3 > pDYH!2S Az~Y\U) M˘~ϵhr[_ ;d|,4F#kLO"i8EhT_q:WkzN*67)[ oG c7L⣢6:]jNd Jpz+QBC?qw#QG>zpi@a.ٳgV,բ I1j"9y:"Z.#`še-rԍ'yGÈWQ`F6Xy4)w*Z ENJ-]j6+ Ww! 4gَ[4K𝁁=sdgL&_nQĤX-!liV"\. OYv|/72麎+dǕ9.͏xM滿wN-Bty'Nbs@k!RL}1 G_r5_d|f Jb+Ť uκb;/\R?FʺԣfmZbI|.`2DHbȺm*!@ۂ@jB_9cNnN@Z28JW~ZC_Ēcg/uow&1*%#vd8Nj4 H3樤C :4ݲ!\?řI3چti8ߐXab`&72,U~x{rH<5i-94,Ơ2j~J9]16nwaG'o ucgI̖dx qm\z}1{raudM HˠUT%$XgXN6%c2) C fqآ6b7 G?mu1AA"bew+b eFN1~&@mԺdK<.p/P[ yP L8hQf`{(hS6, 8ɝ^![:JEƨ|.1Gqe]&_PJCbvvr]m ٞŽ8zeEZ˗?Z{;E7%{g鵡)"ɉUB@g6 M#xn}uثi*~*W΍jTIVVsb+]'b=l!Q߸vD$U2鎾  ~SK7'5V'{a ,'_OB;dwjl)bYNM96t n'ÚNu-2 dyV6$R;w2%`'Ÿ 諸%gdC3 ~B-.Gju>A 9 SʍCDەw{怀^`3]5PHfFw`7ޏq]\|>5T$e#!j7|mbSl`hjLl_)V'|)g8|~e4;`mÓ8F Hס=7O /2;QXcaC'4\`\L9u_:~2\fn;]A/XUEnGu#X (sq{8=?>(3zoO#'F;˲oQ@J!*;Ky?!+ڪ@2%Y4ɚt&ɀ( ΚPmPɐa;3|ޡ;ՐQzRQawH,K<,yٰ]\B wmb[5,!Dma|Rk+!؉^biz[b[샐s4 CYR>`&:_&$9(OIG̐t4BXħ'Ha-XM8 pMRItڞ?5&B1]%0 ni?wMWfU-hB;gD]䄭 |*k6:znI `?{sr XQ E[`۞0w•MGJl„$m#t[nʁ.CT4te^y%0jЌ0atuW< /b_cy .WJD=C(_B2)#BuRK$|&T4 NifR#|Yd٠= r\>ꀺl yBL.e=a{ kyjitdUO T5k-64܋7/9K.sN*ufk+P0g/s4Mfu/:~@AV18U"E*EG6v}RnOH-tE?j3 [I"O_a%[C/Aro!E$ h:kҽN2-rs5dfMŏv`QVi_z.וF<$_3:WRt2A^B)\C5VID8a)tWynT%&EV-bqo&|)Xy笻HUl QͶx?0?ӟ5 t GRq(Dh3}>5#7^i&4J􂺴=Ͳψ6&W[&KJ=A(L)b3%@%*]NY Jd\{ 91(Qۆê*`LOF214Q>tIJP[WE؃-P.?f!'|c"Falݨ(ҮFCԈx\%_M9#6F+5t ;d&=qGK ۪LH죃՟_h./V5VM71:DYj!Gw~-U1q=7&^G:4Qrd(G&nE ϓʔrخ[O|Cf{f]^ _9XTnƔa3MIDΘRD;MOAS%#OֹImwow;q^$f,]PdKB8!WX` P.JũRds93n{ \̶~oq#;2$dpzG{.K|M*9_j䄮_osrYT-w5m!#U[£ N+P\$G[F~v-S1{%4fu Mcj8&u'MZUb̅B! ʄ&a|2y^rF|"ȄT|H)N ,KWh8f'<ڙ_GPt+¡`i> Es:>ٹT6a[/@:B^F ;ND (e?JIkOh326#Ɗ`g%4Y{> Lﱊje8}*¯ӿ2!"}wH~*V]#gB*T`!m{RbEɖnyLJ70\!jrv= :6-_=JP=N`U9>i.nPQaop߳*g rN8_̰zn+KFzŭ:Eow i#9j }'?Wh 9'y°U0xg.Dj (CEqp^foA#l+.|3%\#2o}L3}wGKAQRVB -.ѧ_T<3w3fIMe Z>[.1 Z 5d w%ض}Tte񯫑z4T\9s."JNḯ[(Ԛ /=HJ|a/w0,nk{2'Wʈwשb0SP|SW?jjjaMa_eQ{|(`uI(ژ%=p8 (h> d̆*&D3z_hdco_M޿(# 1M eZG<"ZvBY Tߥd%SXo|6j O$YUgh&ݲ<>:m5qKvTMw2ҜJMisk_预W&hUW+7rWFloʼVTe6ogτԄNcN?nSd`{Zj) 6>Cb !q4ܫL\^ZbW8:0>f),9߯4c_潺@glT1T; $GlLE? m4ޒsp L/Sy"{IK³}O|?0FJ9H݅lm)m'Z֌FZmUٔ5"ȉ ^՜ПKډ.popŪ,b50Ef{Ҝ:.#Bk%Yʑl- b7> (y uX]!V1h6=X/sǖ`:uL@zv]4C#FA|x%7K\FWOݿ~.HA!%i#rOɟvJ6e<kցٵ 3ő←4նKgڙ!"s3$yW^vb|z.T1a%^,FSWՍIq=ru6*:76V*?7Y_cwcK`YcH"ĐUUq}dN3 6.;tG N.+"+V1iS<ԫH~UmynazIF?P'ʵ<|pFIBV;f(~FqH͓d@>%rHv.g[72>#岸.P+Q',Q-r6>4HJNC$:O\ %zTj(I38:ll2x&욞mZuI{؝HU)}#ZFiicfަޔ[{HGkOmrR^iKD+24l'{K@dS7}iUNЬʦ;HT ⋢ϟR|uo[yq,J - 3rJ_fvK"ܯO S`mf45NZK4EHJ *@ .:}@{숹٪ANUm X?x^8xuY Xxvq]nOX>#رC3.ީeGKՎQvGLhODY;+>xX1H6~ģIfgLvD,=,lK KA0CODnG-mϝL+vLhG1_Itxf6peW˹bTy6+a9e`W#N(E:7-T_%$ކ@DF.i[HJ7UʜH$8չUTn̛st [,jS|jq x5t0HWl^}w ws-\|`5.~rB.az&iXLlbE-`9!4pŢxI$FzP)1|գ7A^,W/AF0|Kz]/W򧨖G]LhmdV̷DE'#|T-s;|?{e(Txh=C=ؗ\`eJqDg,b'&6N;Q5}LO'?<8]Uy w)0^(ٞ,!̰GG{n+AT@iVn({{r}cQ8ٰLq9u`*^^#O'">jm3VHCR)|NIp2:z5' FTR:IM_rLHF?v^d3:0@ nh=eJ08 e & Bn(۲ 9i^pAUv@"?h&P"gY=ch#JD ^k.4 t\梩 FӕI7knܥl8 UV?i {ZJ\Z4*/xda*AWI&'0D1wHTu`^ g("#b2`S{d$idJ1s'prtlO.> =8F +?0n9}L{R-R0\Wb M^+@j4~ou׉@]B:XΠk(z r3&F"3)&CC-p! ^v棙-O:ʉ>o2^hCWo|a%0oz!5u>mA)N(7+ %$QiՀo^mig*S{-j-gmB9 0f2 xSeaR?Rցo4+x7(-E}Úa"`JAP)݊uYO/ktڹKlD8C2O_bQZ. auh/p1`/$mP=4DEZ<2x8Oz+cc0`MR9l2.8oʶR)(?#ynͤR-wRFs8[ %DoSBRī_S BiJfՉwh\^Ȋoh!y4.' RgB6c0mZDZq>$j) a OW~ l|c=#xpX=;``vepjJF9U?(&f4,l ! :_L?. Dk差 rDЭ Rl}n)Pc 3YVVdHC"`d|mۋonWK{bbRej 59#%DSb"@^}ЧSܮz>[w"JFF?z5D+Ôxr@okG^$`AE!!MX\t>Ѡ_gV`?y̠9٠[K1F9"N& "Cf'&~MQ1Ô#"%߬Uk QszG B:H(P@NbNu,ׇ?a!c>-A32 L H%z1>yȜё8I5Sje@lwI@'gE/ f8J=dzʇ:!rs-6=t \n6i?`klnθĝ凟 -BbC܁~^iWjJ dǢ"yWt~'O*a{0Y0lGIswִgt)5bQL8H(9lZ֘] &cT2L]NHqCtgvκfNLOj200}T2𠌓eKI0 OɺN HJ̎qIv;x$hw4'2һ؏&{8k㭈4GʒUcWxPQgu!†:/LTޱO2qE 8UVvMdM79uӷE3=ro1d< hξr'))wv^?4҇Ĕ&<-~eJN* 9Jkk׸ty#+ O*'/_/] vGx9MX2JyfGyfg]K~eۤxj`) #B x`ׇ]w1ke@HӌQŚܝ$n|@^, ?RR*z'"CH1(Ɨ]e<i!ҋskT[%ynMCZwqA̴?E>-U2UeB,DZ lyy(uA͞Nv6!f yf<Q1@b?};wHTc ݰn*yx &ۈ (d!0c]8]r3&txE%//%ʹT<5PP̣a]%%tʑpuH%)n99˿  $`6nNDwUƤ-mse[c7l;ֿ؟:mP~ a@:c/K &ϦNOpO\-y ; 2 *40($++c H  (7~ZNmmjog@ !z;T*(Zi/N5À- !U[?-=\`7TB=Ewᛆ%BH~xiz>Fu7y?-=_% "@Mo~s[96SHxQ%j/]0Euʵ-U1 0}!1D:X$j[١cꁂJTcS5)J?h,a>[.wz]!DmmㆁWmk KOG98M{>1 LXخ1E `xcDr_6sϾs`ƇG 3mW7q-Y\b{Y8 kȀjEb!l-Sv` '$t) ?+sUSV^@O{WCӰR7XKF&RV=+V+ Vymcм.+M=khL; &^m d&p潍ox=dћ߮㾣WM]ލL ?]@Fϐ?r,OZp'6MIŅݳ?I~9Tgǁ+U’8a{oYM(X)/Sok(5"g5{[Z4X}W%5Q"9k4O2v,qh~kZB88Xp~q$prIő t+sS':m,.1D=#$ӎp',tE2Z*ѾGG:3TvgwPznjcG# p ho& |s-6@Er_K.9&n935H̺hs>ဃ#f2ө2cSquXp_,,l=*P(izgHDkB7eGnY8X(D<=h\P!E"_7 \h0]nv@BNFU$ 6X5CN335WtUe}vr?nJԍVΒ}A.J$uL+ʫȡ!y -ikfܖpb7.KJ=<F;Bd ކasFY~$\ :-.\bw{%#C!HcpRJ ͭM1" ^VG! ^ƅKaַ_..~se,U>|O/j ގn0n,hȴZRңK5|wʖ/QY ꐥwVH!ՊPg_ F=B֗`L~ˡY>zPVgJT)%]Xd9UԷyL IRAwѾ%>+J룕8;ʄJ-JMa:8~l4J޹ҳFv%nF1#]o8ttX9`NeS5uy&RnoR3$3ݐ[?)I#l~vJ /TȆGTy')LjVuw'UѰ ZƣWj/c qbS}OGt˗r o} q%y3}W1Mj~g㜓%i-1*8״ps lrQ+! ;/ ráNTFٰOLaE[a:sҲc秓@r;Ľ6::Yc˔Reו0\)sC1 Œ>bmrcFH9AmItV ^R. HϋM'^PRۓDG*J!vEZnqKe>@mllJYkRpe7ޟ(h&]ۻ- yڼ<5)M'и&ކt$x#,lxj@Gh_X>@ e@( dq(:X;2k|gg6!M]X+Iot:Tq2Oq܅|kDξZe&Ii;b[')[OCSPlZyK";?Bm,dջcm ҅P*2-CQlIp5JG}^FI%95ioAU^98Lo!r=6>I[Q\f+>TbZ$ ="JU|BPTjݑx|"^Bu@˦Č̀N ~]PD"Df#lM{u@QE$y -H+=@(Z_^qo ^lWzol WptQ7Ђ6E"b{V,?G1Z}ء;ˤTv͸;֪մ%j8өHݹP:8HWͭ{53vf+9M}껯Q]tF/fh7n7vVlІgcK ~7 R:#Yx@aKr!. ~F\4?jq6(&ypm\>u\ ֊O K~_ :|z(34NrbC>e'owX\7PV )6BxsoqG3k6"L|t㖰Z7JrEa>hCfȊ;Lr ,@@Jh;5b&RulўF|Zb>fYr3ڂRkF0<]N5ʻcdaz@O}?ESΤ 3ƶԻ`~t`zlO]De M,7~QL܍kϳMhj04LAvD>_Sp(6g88./KYapa'Ub+oB.Zuۛ1ve~=px!6\Yѭ6 Y2AA8TvEܯo^=.ņ-nf2bIbXx3a7>uWyx@lV{3ނ3(14YJi)cs"o<ٮRJf1lT}^#!Y@-.V糞4Cy}MԓTPDBGAd@\ ‚,'b#[gMڴ$R9a(X̸6Np=7D}gn1c ۖACQms ) 4P 8YaȽ>|۫Gc5x0E kL',Z63Ҵc xԗUM6O_%9 gOUT>"I7dQXjGS$:԰4V9w܉`w~:I%SLmޯ)"n*='l b3mdknZmfE5%֮[~f]z\t:Jqv{m;[fFw H&Ixz8GVu#pɴ?u8RbEWTWz,c^ T^S<+:UME6KTǽ0G/兹~;{`yȿ@I岲 {EPN(PkD9"h$z:^ Sr/~/؜籗[<|TFRxDc0٥b z`pw1i ,6}} UN6Ϝxi)[jGǪcQi|wNzBbeR7~ 6yhSG$)2;Iխ>[jѪ!)mZ!盒@ /u{eD  ]g%7'[eHZ! 㯑teQ%ƏoG;W* P74FUH265(/\96>𗀻--+Ca1iuB>˘k)#CPB)2H6w8N7n^s"*4zO~Tbs;~H~"p DhGFL5@V9 &_˕B=N>pEu(&tS(j~Q< ċ(0GDqB(Xv4NHU]ԡxQ$a,=Qb5AgZ{eE ugBm~2qK{%󩽫D;3|z|&jum9 ^`V!+:ytH׬Pō1=)";fpPp8Y !ʰ$hOH{wMT30_!X @gY&ay5K!\aKBsU acXS{7잟ѷxdPi82SGiiyj2/@w|zkژo)aSU0|c臸7Bd$Fh[V4>?<{ `uR ]LF=To#|N;\Zq xjsy[ڂro%efLԕ}4p q.vK}Y =S^z i 0 &GI|3(s{Wɪ^ Ɉ>#jn}V-^wNiYJVu*bK-+| LU``fzvw"4w<(-1Y큗yO 6h4ȰH`|mGRK~ߐ,[ t[BǧF\D)e)'|Xsh<c`3Ri(> 9AmX\pl*G߬(uԶ9d`4{YԼ:]JTM M[Z O>opϯ9J 2ؖ 5id{@}&.N^4+]AJLVSw TjR`~BRf.ڣdd)*ߩ#5[I78_J7ʎ"^FVnk) Mȯs^"Sx;krU g1Ň)=b{dpk*io #Zttq`ӓ=;ǽPjU-N$8m,O{xӹ8Bg|\O[EqMpÇ*Q(~sã})oQ)5L$wsŗtL/lJDZwhgq-̷Q{- 8TVo:ã;1C H.bGvsK]^(ie3̮0Rq*2nx?XQ O:z9 ;X!bQQ3C|EĶ$ o/G4`m׹ҐCBʽX37)I:қǵV@#9r6u[6٬54ɏ+"hB+έWu-WZ._1:sOjNo^AM/VA#(bZ8Xrt[K&芦Ĉa K4R@ȀYH vءtFq<[^̏&ږj8|68-Qw{lq!?F;V*ӜoR6#!& " 8A"VC$]:3*QE/2^p%*(FO ܑJD񵦍[=0|v3x$eB\(d-c2Cnj/X tp{]Zd~.OSH7rqDzr"g"RW<3Js3*.GHxw7̴ՠ]]B>}4VG vflWm|]Rhj&޲śgWpq5j {@--*Xj5?7 yoYNWs^Ԗ~BP&N%_ ז|ƶmxG)˫9* 'LB@ByPȻ%z s00K:7:}.ZY8Săx"Q6Q5ӻyNw|yZd*jMrb.pH+R=jw z͵7<;$ Yv jrvmXK茴WJK}\vk[VjoZ9 Tl=.`cZM}H,fp +ҘwwXgʽo^W=~aCzۣSg,q6&[s" A?A)Tb.bh?sCoQ"px8r6b8͋d A&xkoneݦ'@cxq7 ]"q_m{.Ck(j,C;PK B҈aH*8!m1+jA5{}^e+۰e3.pyWO-](sf=º.J7VMŹ=ƯpJyƐ 4J67qӓ1wa7ʈe6 i\b̺˝F),4CԿWD+ұ~Cv2t0͇I0"L΋lLŠ-S$mzUv h,uQ'|v2_X R\&:ʒ`%4@! 籓r!dNN j%Y1L2F ĕw)idYU$:1o9qهeEØh(z&||2>]/ 3 ⭀~(u5eL$]>E9~HRLSJoȡɑۊiE"Q6gRGYc87*_*_K' :SI<R3WH^P7*5r Y'\5O7~_ZKOaX}Z;ܷeoH yM(֖ ȈVl_|bs2/gD8yk$n7FLƫ#ҵiƕp|#n^~MG]QHFOu<#HK7*d@۸ME5[N~@}{& \xRE  G^I=PЋt7̞̱$Z,wt谩Lj:58!|M3-ж7˅adxM}<ґm_Fُa=(+9KD )F-fgxks?)J+; 8Lvxok˕/3.0{N+Y2߶{R5)kA,vA Dx ?X- -{M>`>?ޒlʣ"!f?($dc4ɘl\^S"@CS11Y[1Q,)`≟TF:{2S(~WAޘ4ٓξ Nz[ab~z{ቦeHq@` j޹wJ(]:\{ʛψ!/o:DYc5Hh\U6#6ε"ġb^AG9ئ4[q+T @4t8&TF,)a7׻#[a11 0ͤ!\1&J3|܃i []ϷNB ԂEx,ߵe-FgԣT %_CidI1_@6)(,`u;&Vi*SH|7CF+-u`X=unTG\.eJр RAO џ;?1_$'j Aᦙ=AD+xA "`0hy\>Jͯc=[AdDd4 XꚦAlMG:]jn ۨTu$L5+:5ĺti"j#;2LO  Z,.Dm0]<%"}ʴ0ͷ!oVvftǁ:>Iدqz6<]Jixw2SQ_8 vR4,hX8UV&UZ3F2˷ԃLߤ}}=K<㆑Y?,n1FJ<1CpMX%t|T"s}R#>|1V6_/F d_.x:4`Pf~P*RM,t)IrG7wpPW( y%QjcXNN]kJn>[Xѕa09ܥ_R4 Һ C/js%cPZxTMAӶ!$>cUIiՓ.qjJMuM.V\0fCwAL_GX;wɉ^F:IB)t WBWD\2< ~iA}1Ψƥr1$5i~fZ_;dDxDTwų g0at <~ȧ6_}wsHpo K}/А|ig&R @_<rTHנjm{xwE>$jE͑lWIdu#*9u\Tf~5:l^&WE/lM9@3+gjiJ eb'qLY1VOiahFTbTiA ڎAO~Y5ݘyͣkP dP%LgMGdGĀ2!G4E8.*.2:̛@cm8"}wtg6ˣd-]OĹBDΩ*@.P-tM(fף0{XK͙z (sn jՏܮzC%V4Ib:ɇ"~%-M}yՑL>#>{iGASQɌrQ3]US la eFVB :9m@]^7C{AUBkcL2g+ r n/τV9-`9 ` Eu@ SѢ^@ O-L^3 MeLb l*\iT~ a5@vW8!<$r ȹeߚBK#e=elc(?LLc29v!;ă{[f f3_ZsqɠjߘGьO4_8.( XzwkG-SOK*#-2%I.Z\%U(N웻M#@+'LhE6KT2ǿ(]%89J$I{>InY#T=02.{3CHdpڸ%F ;fn09+I<]sG 'c >$ -5&%5\*uԏ[Z f]KkFnͭ# F Vgw}>$׼2+%%52l F._ݽW{*㽅 s.t" H'̑b3FQ,,2YS@/`=S`-8EثČf܉- ɌϏBVjL t"NrKޫQ s[;x Cv3GѦ[ĵC4,P}~UЊOIdp-4S(<}^!qkcj+Z8N@S%NQtl RgeC!@t:tB%X}l#~y}=5E2,35{[O5Q8lhgw/;T|%j2QaN8$[,v_h? t X?*MܯzKQm<%|U /}d[ %7-Rr$#kCmRvV)U[>^A{VFF Ȟjp *~eA1 qk#4p_ 1];Z]Vכ`3cQB)^fW1"< ca2%_!-aБC-^Hi7ɂ܏AOO@g%{w1y6Q ⿷=y0]c`nS( E3XT#{u{+,ʊw*+XucA¤uZ#S7XX`/s ˃ɿXr[Xqƌ^khF+In~/h+&3)pKX]]Bx|I>'*uAij1Vf;>¯U"tHe {)0!g[{S~9xRM[pbXBFY1v9-c a?|ȁR\W3+%~TVuH &_lUJbK@H]A'ȨHcb_HyRKVy$/g{f,Pgoq煭b"HkrA 3EOt)^_V6[B1k4OU[hWTxpsS7pLij6U f A}Sl"ZS[T3Facp1uoZ@v.Y/::b:G*<zjB$L,-Gd-_n+&(9M8@_ 6GnŅ%~X{C< } wD?q3s5hsf}b(J9HǾ 'si9B@[5ޑ?whx=]05 [ѻlq232#24lr8O7ҽ<6ރ7j=XˢK!TBTAaBĵOls533;?|^(R 20e|(aGUMG?ȱ( ܍}T/>&t( Ύr^ GG`%(>g)]kjT,ϔM1o Uh_ gׂxg#%5xG-@%hl6SE՞)?kҰ1Ϛ⦧L9jXz$[_6H{m+fLXC\u#0}F%m#ZO%DފQD\th4|VLU 5<u)Ort%{g*:\݃9 ќ_ٝ"vk  ; 7"e#FTJ6)m r[ʺF/l'\D }" y'\]M n3eP;#DMnm  @$HP}aiouÐ^TЌtlKҸ?ztaJ\$1" B'ђU/OW򌑱 }/$@*-DiQ[9=>-NE1^$Dhh;v! *6n }"yttt9gn Fӷ\19Ks=wjoU';NG Wzm"Aۢ>< $µ7Cu+Y B5 ƈÐ&73[B4HȐ)ȵ^Y˳ЯDvwTAp,LIK9}'D˓ ;q}|պS/ Uby(?ݯCpvA.˟I atF'ҿP`_Etc(*YZ`}?k̫jt`$˟FRr6fxZT*f_Ÿ݂> {peԎ2_W זH%ƽznzʃ"VBĞ)C!*ze8>6}(lQ}̅~`RygKwC^ /VŶ}LGYUQ`,舱Lզ4 LCVڎ&Onxǟ&TCE^BsB{7;#XW}:N AjsxSg[y_iWI @w4[y'| K UTf.bҾx@jW]WfÏ$AV.)"̥P_Q)GN*Y:@y;qޯ&K\^!IP/yAg|&;1;& E^%zk 1 9\x]Vs/|P8/lc5`!IslfofҠ~g\/B2Д vww,9~'?vFHp:" MIL6jKTgH;'Oq<MqOyJh7uo ?Y:%`D< ȼqyQWmCWǽh+П,GYm#@e:U 0Z%Ʉp?&*M5 _N!nI<'?L:X9TH9:</~tDzBdoI¦8".S'"M=* VzSx`CiVZU ,cC- hTU/4_8YݙXiğ?aR^PP@1f%))3Xn*1?PT}v$4 yIsëNiJ)Z7TU!h- K[$!M>yAm|cgXS҇LLX%f-­[10!'"aXO_bE[jRҕzg.[G(#dcsMsH)aQaRhZsں&8-MJ#yOIW:Rt@˦gHվFcJs~2Uc?gv-%5[9fЏ}W:,qi6x¼﵃Y(zD拣&jArh2hiOYkK5ctf-v.X#E>Z󆝮+IgnJX X-gŒ]O0{'E0^q7sן;eQ'[nrsƼR7`Jyĉ3E6iuXeD5^QSK26X d%gD,$C'J0޿~O*wmC VCM0#W0{ӨG毟j:ƴ"P }@Ql/E\|.kGH&x{m@jsiE]/yNǙP  Ň|8#$:hhNRdc6I)HW0^.6A6sHбV0Io8<-n_iL@־Sō]Fxʌu?yj{Nj#Ia|Lܦ;EZ-wtZ @M2ZTCo)K8":uU %V2 Gw P}u?J۵B*m!!ĸ𛝥7da6Ф"9[dװ9@h`a16__E9xt|#΂Fۭ"_Z POI썬2؈o]ow$ dc ->6ߎ,]5n,ڣ3MU3q6ΌkaThL4NV*h4<$fYp]m݉a)f#r u d/|B'ѥ:vV;GI<ҕjK0q3_IFC$--kFg"#EDvllX0E*xUJ3/U![MbCUer.~ޙ<+w㷈Ax3rۜ[bbA؉2՘ںO}2.|cJ:/IkV^(̶iʋ1;¸ct+//[>ÔdU">YD>v-'11-W [ox]p¶TNr2C#vN< 7ĸ }jxL^?6Ƕ*Z;~sd GM\/鼪]q ׼ KG֌ ^6cӮTa\?w"T5J|j8O/x8&coثc(,}A]5Zlh 5޼S_ ?dԦ|X5ǎ# ?pd"8:NN) ~j4<+R#CPPBW9h tzb Fͯ?Y=?]?6)Qw<!$}|?B'35#oN (`&p{SEyuI /hz7uY6/e=.:eb?kp@UћC4FC#ѿJ22>tȄ&~{cS2hL!dv`esmͨ F.WQ`9`xPa9nۉPŤUdXA^9 II,YuAf%8H}m,F/}znjhHpĨqisY%@XdoZ>a||dg=bzs-7Nk!\K}j'^0HW%\&q!OjX3H_a¤#NBg뉱zb[T*9Nc@|kwS\ER:St}:bXW0 FjjdLt$}!vidZG;0!YqO҅rǂczu%^d9e5Z2_{e,S.- sSޝ4'rNgdvمw Swb~ /QN.cF<.*ɏUH mH5![\Xt ⟲[Eߥ-ܚQ.ӐlG8mӕhshIh%Չ5*u9[L"9tZZX ~ ƥhaOpZUVݳ_LlU9P#.2`kg T۵HYMխ@0r""|m&lv\0T.a.cΨjMp4> TaNPvm{ J[D7 Ql g{`yVw|Σh 8<[#)Q\OpU8a@ Vz_+ݗݻs?g>owU3$hx,O[{#tDC]Z'G V=` MV0ЄsݔOZ~łG bY/C4ލ۝`_mky8˶j!8Bc/_)8 \ҝ+0_b䰞x/[eRDNϺz3,I`&Zi@TEC4Tb^cFLE+qӓ"5o+rX0 jRnf} ઒VDFT%FawOISpw,[a m"GZM%>Iޏ2  8B4S\vGr~ȡsӰ#Z/3s/"(+cn>]DّܙܤVPCGÌ%I4Z[~bQb ne6T%IH1x8Q֣wlCc68+JL$R`-##pqfN`Qc/Wk$?'qOiHrL:,~rʂP,f0 zvUGQ>F͠N)۞Rw^dyF!2 f]$UܞA7`&?@(~^&of #m$`RN3Ⲵs}5$\$ sw8)A`c܆sxwBZO&cia\i֌+6JZe$|ݘ '!m&CgoCT\'.a_M9 _2utf>5€w:xU, OM'trp&:&ۘxa.G5Accu!Nu,y `8r;P91ٜE-0ȄYψmPF:>=e[0Z'./ $(6`TRw !ߝQ| 8ghQ! }R둲="ژA3;#ֈ*$fcK{ӄj"IEFSckhHҾ?-lRl 8ΤR'B!x~Qhkx-z(CqM3)<.: w(JΘ+cr'OTD aSۏ>iyJ=Mk쨆î=ұ4plԁ0 t|.~^ejç>18V2ڷRݸܕI PcͰSĶ .|¯S"^AfJ3xFbs=5Q3("?w%[q t Q`buX}=NR[oӭ%#W>-QN֞Ir?P`/F}ڐ#E?WP@mBMm3zU[;FSN9(ۭ%ܹa$x0R$:|>e>\f\y(>AD=ijHVfyۈE?9JSs%Gp,{]sERbfL3 (hՕԸ]~@Z9;562M?EpY Q(=[u\7dQ#aObuN {,2?S*w3R?j;v/U܊Z/M J{@VR;#wWv)ZtUT3#j{4N'n=+Y`]i^). u}|Tק7f2VOfk"ay_:n #O"39_2S") ծ c͍R|r&UUa@TxGv8WdU|Hǥ MjEr9G+{NAQk̍2^[rk:4AZL$mbCWU}ÀҜ~:DEWQoקkK]mN#)q`9 Pi(wm6Wj†Qawƪ`߾NNL%w\3Y + dlkZRXsq #8DqQ3/׹_m<62 M¿*Mm{/g vIv'91bw8T2Ȯ`sFOhd4;1#9fv޵` j2:4N.?~.6T}Bn \ъޥkeY :Jp+12LRyHWi2x6El+B|ƙN<6sT#|?=DP:-~:a9O^ s݂}yZV.*{kKӪ%ᱚtQt`L0ϭeNa5aBXRQ^[R?#AOm]C*b⏤R6#)fӟd^,ig>O1n_kDS^| q?WW6iH2>iL'/463Tu W/?4 #̥Jj2FtK  rͧ)c|#$t͈$rQ}#-t9,գ0S]m7RU+RJӎ L#_n"OD7ibN4'-\1wAɳ {b]OOٍEt2^qE\6[+Ybk ;6ǰ_óC&6޷!4=+!PޙN4굖uZ/wN\P}%):2%U-USdFB_ NKJCu*I'2OF/ݦx.c/ywov.G ]h@~Bkǹ M]Bvl_9A XM' IN`$P:Kk Y%%[BMb+& ϟBsaOzP 佁YsWquTiXW;Smh8!<4G"D)2)R|Bۜ/zh.Q C#_hZuQ.ކKM]< O@툚aT}*9a PᖟmlJ7QI'm3äEe-Mf;[lu' }g^x)ևVNWG"JzW{޸R4}98(QoXN&+be>0@7_NqR;|LՕTL낎6'f\pu`x (jObh^L@,< R׶*jY Jc12(PHP|YtFILz,JkTIh7˃F@tq؛xւ2jXt(>MoGJ̲4>${]Hd:OOц1 Ċh[(Bv.M5}F>:qs& o `$e~ ]hL"eR Ǯ[Dug}QH3_eB 4_0ʌY$b#z;.P(8?Avv>&<)7*-4.GxǤHw[̵q<+ڐzǥHԔih5O"iNT]Bq860۾EwIuב j &`?MTkmf1"ݗCj*\y+tJw 鈳Yp|R0'|G)<8arB)RIT؂#2UL*;R l-YN2&m Mn8r߁ _ 0MW2rڲ†OEYTkK?%He2C7-d:Y)ݕ ~ȲV(|Xs˭h8ws|yTJo3ϳNߢIae^̃LaIW es\7r2ޣf?]%4.2C|Dêq9~+FLh| -ZXO),T~02x(( )εrly̢yF;kΚHI}:qInYYL<~ d̥^cېY\"ԄA3{MXLzWk4VzmM#uQƝ#Q3lTFT\;\w"r&u|T\w ͤN*0m,,ZS/xX*0za]t<8 m=VP*y| 43WOLWٸY]+A0Je fq|B4rdeM|]=V*oڄre~ JTt3?mjV`IǒjY-Zn1FrU 96PA8r̈)KUd/O~)DžUN.`.G9,}R2Kơ}Մ̦=EuF=HbG?!#A[!*KožG[R)ۧ턻%أsowd#W;`=D,4)Rn5Wec)zNo"Tc~~%N/O+cQ+& FY'.ҲuVJ6&*!A zPEsO#5\Mђ"x/H9'w% P몳PqW"HXCG$y zu]\yT,cuq%| ^HBF 6x1Lg;VELs1!U@&*K\ǷS AŢ r]*"f{(4֘Q܏Ў n|Sbe|zl#Xe<%7Si߂ +3x6 ZȹKA1>L[,c8f%%#俲vMD(J.9xOCBK'ii3#P}} wO,~NJL>2mib P%7E/ܖO"}u! ~NpKpڍU~z?(S[6=Ufpd%Ycó=њ`5!Xjd{0: Ҕz>p _QBuz~x~ mC-jE -'Xg 4kz$9^`-醊x cEd8 ]`Ui|{. g=6B݀p }| ]d=EaѫٌkރZ+gc")#ԯ&u :D $+9Ƅ 38!iI94zC'5ĩC¢& #hJjl30Qi,e$ bpf!F7ZUx Qegs|=#i"q5,}RC۵;/O4 L\E*̟lk?N+48^xF5e^Yȕo ӊ~¨-iHq į'·2|чՀneh Ȭϋbmb3j u51$+ic$? )'`]4Ykg;Թk*OBYU}X: SIrWss3s vvիL:(]SH# 3uD+ IcT;A }هbNa6+`+ Afo ~i% |@18SNBXi]9"҆F1L`Yin!{0n|+F Xs0+%XNAG|OtVVh^˛1"r;쟪yC{h'wG *T(iSjy Ao7n Jܼ2YakR딣4Keo 5S?JP 1ҤHYcz%a`a No.fMCRt'įu] Ʋgs:'_x,g!lIl!`#H i'jW:o08DrUp]9axGŢunh$R\9>Z[LCGWFv( 49,1-STy[,{ЫwT|qǨ'uMxm4 q>'QLL.:4WUS-yIL_}>XlxEx%\UOcʕ\gs֩ws8jwNrF^@۽'W# Oq]4\,X5t^J2: HR(㻆]3@% %]̂5YJ٬F58(ƛy) ?< L'e`|-U@[zL㩏iXjNYcˏzI\Wt;QVǷ}`;@ 95=*7K9k@.djxȊ02\hx ,I>8_hZY MjHk Snb DV8y#tDYib/p:/J-@7 ^hsp7{zcX"Nׅ!A'I.dW`b9X,> ln) *ňpUVԐN4}"TM'5!Æ*5R*uD%B6=N ayj(W$4>6,+S6秘Lq>oݭCTmB'3v&zN3NÂIKR6ո RVrvF/f/|<#Twʛ "IH83N`d_)>PSJ(l*.C) zVq xM 'dZgFLvLNfD|g; wy9ue7΄3k|6j0tydzORN&ۻҷ6&O(|<ۂZQvt+ +l{}dH6$(S"m/Ge۹fᤵњY' C]i&5NV[Ks5𳄉f qrՑIoD?|U'z'[nOx#^}+ٓ{ ~& 7.{ {xrß0 yN{N1tr- E ġqdQZT Ӭ> GlE3⸸1.5OD OVb gh54I.{ 8|3nQK](V9Fw-DNeCQTmH;Mri` M1WlLd,zJ∊w9nD@;: 8CRmIC w) W(=Sl_R?/vPh;=¤osܱu]IK[z xܝs۸ӛ-J~.)ODFcl ? : o󕻪\YC#;W5#F^ %m2~$u6R{xֹ=6j8+9'I*9{-蕭0`oiΝ2;4سc:X IG o˔=uYf yOYzlK8"cJvq0+{~XVMv(5wgqq9{Z/t1%*ApχsݻTD*XGVC ؏m4YYOcYy]̏{ '.g-1 0> :lOQt$+l 'f(DdT_K~Qߏ&h])@ nF{ ĎyBl:lT-i[U 6:UyϑV4.V[/GL\7.;uxQF0_2L&HF+'޺RFT:W1z :/zgz = HtlH&cUmDo F>od34kQ*# @E ߀X4ed*IY䤈ȉ5%PGZg߀Ĝg7"lu>5P$-'UhNLb%27u?5et~rLF!y[9[YcX$+ A:#LYr|y*pE8Gг[ S9$3H*naF=|Z1*Suj2r <ņ0f+AnD.Aw<>о?Ber{ [h7oc"ˍ4 Lhh `=*F(jԈ7tB])?o:(T,6Klߠ%wJ6'Ⱦu܆f\q50~Ipv4Y?=d &Q'Bo!g`ת)^B.׊S 2].P]+/ ucmC ;죗pXvfFua nZ?ҧ!jS["VW0v !E"e`CQYeю3(|e3Fw |sɛ&={2 D߶*2jlI$ QۃڦvK5.L+#dR7{oX& 񾾐@hi8 UVKG+I VOQ* (v,0e_KίL7ŕ~e:dZjاzsNOxUCJTw%oQQ"oF{Tumӛ6ݱee^Oo%e)0E=|' u;L9DQ43F! >c%ə"/!\gM{$D/"W0Sm1v黈z˻ Sm.OOnv. uݶ$M;<x;7̈́%~u#k_:iqSo>oE=W@W&Ao _%cF F>E.$8. "D%=C-TlҒ PM㸤X;FMsnc=+S3^ݏrAY^xۀ8kU> \و_7G.`K'՘NIOPq'"yL.p-e嘸YBIJ:֩5] PL;~&m ۦ|YONCRvhd XT->UH7j+y!=sն^ƔUU@5!f=d2'&ƌ9}oH9=ķs#-l(a0^qQ'xn[X*K\[: ka4Yx-x0K qi}'J^85 dGcy~~*ޢW-iAewŏ ]Ёj1&qvWЁ8kwm5P ~#Mx"}/ewpE)a'M%nch.~qFPD:rBs+ZKY#n 0˰@Zk.4˹ٯtha푳lvN +CLJV1ޯ4D6 6Vo >+ 4Zb'@0a}h.ub.U?NͿg ) @[21ʴdxA¯NG靼W$lYkWG&c:VpT&Vd(K9,z]h<D[Kc0cMq"-\BbFkIu5X,Iid$5^jQ+`Ã),jڱ G Q i[*>f*}*dqEZ6VJdHІ\ֳ:Kܮ:<Hg&ˬR&cDW _6?C '\ xXv*.HI!UgNԟ9I+=^EO\FQ0 hz:ZMAF?5^8Qn-*F9rd?C2Bnm??E}Z`a}=~ꂯȎWg̬# 7#W:jI&3RSʘuK3n絷Π_Cz_Xg V6kݔ0y]cH t^U/tX_oԳ5z &W<_9ҿY@>OFuiQ5ϣ \(zNI-'{lt{#-QAߣOyTN0 Mg:J R~q~KfQ^J^<=^`|jsk6J6g} 9`U}ת#gv@S`YІ錣.0}Ca%qZB#糇g%4p_əSlw"p~|R6ﺋ] y R0Cd8Ɖ&8U<qQhZSUa!ɍG!m&L$O$g?gaNC<7~$6XS\&bЗY:sD-XY8PMyvxXR?/V\^[[]tʍIN[c=*!^nYREB/?+Z{EQɬũ::p;DV&'ԸOg%O:iĂG7a!@ܸp 1a¢豍gءo)X%{t1 ^ 5pl5Bfxǩɦ դ۱_zXI ÌueMN5#m{K>MZHYB?ecZwYINxa2xluuon%%.eQgXYOYѩKX\BB#Th.%TM̴1^rCB :kggXfKrxJt=EU}Ų1n8/4)5DKr)v";ڳC TCI陌#'$ۍ,}K0Uo?ULL޶0p&S'O}zHJsmtdYHхN\|Mm\]ʞM 4^X 1EvaREw "]aQ0<Մ|^Ɨ\|OQVJ26 uE;3Y$ܫAXa>WΔ~/ݙy:rIC7E SUJgK1aٿe~. 7Te'E30Ǐ_FU~ dZSpW1 ƈZ,{ ;hFF܍HrF%q7 N"y |VxaxxyJ;TUhϵzw6to[M)ĹPS]X,fho`r(eFEe}\%^ڙ7ʼnz[SkULW=zD?L8`:czzEدf&ܓ#oTGEɔ$4l'zu9c}Z}C]XI}a1Mn:5:jT7 V1vYV3J* k/W)9g9 ,9[ (3uj^.\Yd޾PDH,vYTq$xȖy uG@%pVpMD;Zg=?M#Lt 3GpȖ`nLnM3 T}kxQ*ka*`e}>|1kURy3{.D?M]ծYڲc~t I}2R`oLaCÕ!4:J@&-au|s7ulf[^;ORrrr(Fr<{*_* +6PaNdQ?7A¨]A͕BzOƯȹ Y ~,#.7v.,ƧNdޗ(Hc"SƦ2J]IV_Y*8̻UNgLGfj䐚5"z蔆8Ufe*iCd/|oō`\ %E8SQWmG4@M?=P _YgyDjpI(1&M* ;8$KZ ϴ N F5Ʊfl߬ggȭG8$ cʺTKi]W0nœ]..9yus2W+ϒ /q;tE]Y*r#ox;)M܄LmVCTWx~ZmT8nJD⥂@j1U0q.ZztYƆE2Zض9<`#`>.H,mq4 ILv924<":ԑ"Z3.Y"+\gWf} <1nFP Y讆j)| t:0=hW6&mE ^ %o>w1Kd""֭YWTGr˓bZ=xE̝7w`(!5o>%<#ra4GzKԔ'ݴqZ]7cz8_Ꜥ`̣N Lk Kc vDltYU6x4۬'t O5KL4bEytwZSqgĢ#DMvbߢ|/s3?17rV˥V)V_.l{~2*]U$e0 }3@B1JQc\щvu(XPvO==wQ16S~^@"ؕ~_w8ѽQi`c*m I<GE8?z-T7AH^l=2fȫ̢gj<\4i27 rxW!8r3uƶs?λm4? lYnr47-{f/DGdZ0G ㆯSD?6 s3,x O7.dtًH`/>ifyhaiN*x|CX}Zܫܐ(@P:'C/h4䶗O져ŎqC3cvˈwY&Zt6X?}hvQy 6H\czs^ۉ*n4ԍ ?Wl_!lFć_&= }uk(@Dћyq/f'u6IjC oV3\v@o)6{%~"I 䋉&|.h|Y٘5n@IOIneqEk{8oׂ[CT;!qV_3t2$fXqʗ8/O*4FIB_'Ĕ PוY)N_Y>qoF'#򀉏[}/D"'s:!5  5ӀEc?wmЧ *F8 %PHobj{C lW/P4.}sdKٸCg |Ңq70%) ɻŝ#@52{z"a`uA~{a%F@nƊ3ϵe@iNI/=p5_ñjAw= h|m/$#7qJLY; "e chֺ*DCRćq   W%d{INY9\OUڢ+o ^?j>6LotA68r*hF۟ߤT_J:(TlFUt&', KclUbV5n|IO{ 2s}&%t^3ц:'0nIɧ7YѦkug_ ?0 p\JT eTU]`>`+@a³JaAMapS础PZ6䠥?-z83~t,}Ww*'^W l--pE hx]OFGg$X)*٩7+-mD+ (.bobSZ 9RR˖t9_K^-#[:KJ QwD_bzX욾 $֔ޜk"Qb9y'77 yWB\xVdO\L9޽YPEuN[]Kk-+Jxu'kxq Dt]gfG[ڤ~p+U%aԂa4QQ!HZ'x[4{afq s3LYbbwtiaJg{iK 8(pү@f<5:)4գ["K2P߉MlE7-oeoǾGTn.IĈU1<>"QP HJޱ5Ksp׶b ,y.glKo!D|=$GP(Jw@^hD]D1XgߍbM[8ѿN/"ucm iEh@A2SD*ŧ޶&66=vr?U[UQ,Cb%-ϋh$mWϝTt"7 . C0(M2^ˮh <#HKZf;c X.1A+R|6zw0ݚ5 pςDc"sM1 wHӡ,sE3}O0PCg#|]$mc/W I ̫638g-.6"FڗZn>g:ňs/Kfb\ SImn# D eeًc8K֎ .@ kt3g).Dz (/1aT QXO\ ݬiI{~^V% ҁ'@vM<fӄnKko"{cat8+uh6XBR=%,ƈ_&B\ /3@'RJDRB.zQH+~RnuͭCo.Q|}Hq61C75S %cU*(I} y%[ HxX\t::I:XP#+; مᥴ7"H&nSԱ҄C-Q\5p \x.x?oFs")[㯚H (c0y$`}%uN6f*M\|C&1|DiGs@B\qWCF4k:PS\!ɣR3MN, .6PU*bFggyA'r^=mXyؘ~^X+ńgaEy`?K9V3 83+{Ÿ3:`s1Ox$-k'?rZkTf(kki)UF/ZoRCË?.ͱ}vӆ,۶w7D?zWE(xТ9"9φI<EAωa;|= 6׽9y0E_-2RZo%I8)-nua}挾O CNh.4iXr? O}1P-;l{>$l캚Ԡ[9VŇ`ڤuj-^pse;09i Ъ?}=Z,r4KP2@Q`u⥈ D^ ad鸏 עWRUwG3Lpxl+¶Tّ_aKQZٽ.G^ Upu栭_.e'%82?8L5YŲyGe"Ure= q2zdm['+>xYkv e4PHSȭ(|zlQC< ]| oįП5Ȋ¶7LDqChzgKwtz~X9H+W?+exqmB}CK谂x$. VP$dۻ3&ؼ:J_g1F˧ͅ]9`!UcuՖԆsXM!i.[@Kgl(cu >TD1R3۫cYf mY{* ۆK Gu-T,8өyCv^o OPaĆ8_gj\.&,$OC0 C Q!)aկ}oN0wT a8`~7g"$Xn΄"#9yW2tEk~.WN!aVX6DzòլZ\$ϕafkq9{4z n1C) jdhfkY΂RG; cKvkM 0+LhJZQ:`q^ ;h=Ѻ^dpq\pjCd2IΉT}SИ3kXSAtxZqxFk(Ϩe^@t-qRx!{Y̱h"  3飈=ؽBÜrknoo}Fd!ybn 7F|7 >'ȤQ|iaguBM0 s$I5s% `߾ =߂ш,| U`JSm/&rߊ3m<%upie=w$iAQљŔCʋ%,A)R7cҼ$s+qj[qգC*6uZZP` MUTn:b&LE'M(:cl;Ju>S.-q{c v!^up9tFQk$|'wQXD/ D# Y3<Ia83BUSwxb#Bv侑-e*E|;8U=٢/xvy8_9Sw5&(.ofc-ƦnKj~D E-Si@=Mu?;ZW ͵q 7T*Q]RIR4RE *<)Wwx帬 ea0t#qߍ#d|v*e)+2S%P6+~`j{Աq~Ǹa$w\/X@Y>/㣌b!`ZHɏYĒ ^Fzޕ2[.c=+tҠ;)EE9ݴ)83(H½{~2 fBq:q+ma R\4Smi`ost⬿Ч+. ~h. \ Ǚm8ɝ)׫Dn!Wp'%=7<[rKoMM5>ۗ).syU{qɀX4Z9V*"ݘ.t@R1U!/&K~>ThB=d<_/u" 9Y/LGHTT2x*9Kr(|f]QBBL;%0;)aH`dr_.'c#fE"NКcXqHh$~78e^5y.F5Q?ÕH`ノ}u?eUi ޕ.9{+C zOC92`ʥفe>$ OI^)IV{"gMPoHO]=Tt+Cα %A {] ql e= e8F6핐 X-gpx|N'sfGJ&P)񻥶Qi)Rv[(#G2>} ]Imt٫l,6d ̺P'*ziU ֏[ r|Ѐpf`a> | Ց[:_jFFtceR_ZNۦb$fWVv}u.t㲵rjE;>~ࡾgÖ1~D7º Fd"zcxn,tBnx|0'^Jo(P+8Y|~\]=|Đަ`!in`>~9*no CY`cߚaW(ak>Y0Q?sZhg){4=@BSuSt3&lj#tIeCma#:)ֽK͑(;WĘhS ?p`֗ F_[7)NH.L8л 8dzeBTƉzl6&4K_U/O^bcF3j *$P>MHr+|RQ,'UA^lD*9M 7v Fdă75JrRzv;+6PBxdv?At3XDȑ Z:Mou 8_=̠!+ L_~ mì1/cű--mD'L#Ө9z:Ti4y}E&K%9s̃{gV%Ê_nF;+\_zf A6rRrP/ x$&i289Rf5 jb–@T^`ÆȋPt"u\a07^TަwΏFgBb[DKLj0fߊ|!IW"x(0U:eT>ڍAw6tuROvڊPWI w8Q/ &c  5s,X0?R糺mf`AuoM|MN5 0,T{4Z.ۑᱧpq!Ƌ"ROydj@?b4tαjۙ 2 `e#Buөבq)jt!-l|ij wFLu^dJHvܤl/3C@0$}1!z)L .3<9p],afӺL3ôS t=1RbOu[or'y{KZ =m$#o =+ᤦLCZ:-A;||ԎDv_]~T:95%=3i#a: hy Bɲ>%w`˦BUJ߽PLy?rcqرgf(a"ZZ5$3XG2{u\ADQ)ůW\&q^"y}َDXnZ"P|'96ȣ]Ҧ kwQ%EW:d0Q gZ$СjwfkY" @bN#8rҩ&5l^\,V]J\>9 5ft?$mq x:)ݻZ_ ʱV/WhtnCztgQ k]NsѤi7T7(),IB殷n*i (2P2+)(s/2AV;և k `v_3m븦Z76O%: h+łK{A;bl9Cpq-*@æwekov:Vq.$;DoA~,J PwtU&lsHz~7-4yܣOJJ@/K/짲/#Oy=gՠfԙȲ{?\dg i=̚\EOs7[*(V*ssy%l?@2׀\n!5pۮ<=lUB bk`2'^3N=-GP(sΎ#٧j-CA,TgjH{#+|d̴/-^8~)wdTKzӏ(+w0Ɩ3]>8k PUwJT{6S[' dyN8^CN 'DY*Έ)N9[xhFfV@:~ B2 !x1҇ign; d)kK"s>!B^CŀB DƢ nVVu4蜥RK_1q) +jq/]ރ7Uu;Nmb#X'1۽+ <wVE JlY{y?RI&S :7&]:ׄ#b+cL"\ ޭ_i8{n1KKW tNl\/[iiM!Ѫkkxm82  ~94Vts[LPD蓤Ӣ&|%!WJ0ĂYͶg(a|$VW- RG)-/K5nχ~~%ziG?"a_۳Km9/.ZŦƥ huI{Jk~6PzO.Vehy=̢s'G#}Lp@|7L[.րـTrE0">Ǖ]#VIO yYy҅{^ە7DlSGܘZþ{:lXf6u&K]Dڹm17I1rB ZAdZaTS+Wm;e7r<ϙ0;fc9EV"}fCUߛН*gpbJ?Ss.%GN?m9V?PȨ A9G+E|I3,J#0%\l%XREhHzAũZ)ES) [;h?smRJB7+Z f+]1ޏh) 1v%Mk>sNtezYbNmːC%m9Suke7,[k<:X*ZfHLM+1)sGvڨ״?/3e&)љRZmj~'݄I!} oN?~_|w`ULܮ9jA+_]9Hiz&@[SL? Dh~}ä6N虀^dɍp-1y"á9NxŐ qa$ﲹA ,^|-V(4A)q~}c4QvEy&oq:*G䕏}P vܥi>;m !G&N+pDސY%*֤ǰ:3=< Q9zt[GJ1oGKlkUf˅Z;W4ʦy%9oe~l6')Rb 2(4[I HdV<]hs.KRT4+`-У(N|!6_Ki BU $D_CW‹fsƥ,V Rn ,׾hC3 #*JOs| y͉_-MZCϾ݌Ćخv#@#0i_W^PA-KZpkhSE RNqNq{y>;[ۿ,ya"u܏_^;glh~$+hF?x 2Hnv'H>o6Ė7r'ENe_V&w[m=DBO& BL N;?uҝ;tDּ{}`;d۶ݚ`\ -<"hYhx5|MI}9@L\eR;}K@6$:~ +ٽ!u92'J r|7 zΦP%Rsްk0,!$!3*Z62 -\9.ܵ ԍ}\|$l# 4ɾ3gww]`!MmP|@;8ooI ")`ow9^Yނr+ DX=2fPGԒ"U'#够xLa'J^OT:538CsNyB=JLtRf ѤN2Hz+v`tP߿0Ť^X|D/Pf9rb j&qCz䷂yJA ^ʹ:|Zy}RiB/\Moݲ(:,FRB~$ ɮZWk1wXܞ\oFbqSśj@R A)ǾFw٥IP /lE=F| X hu ﲛDƿ zL@u3ӵAB>GmjL>?1(3mv}Х0(Xy>yߩ&mƨA#Ttb9)E.Y@*36%G5f_ 5|B&q4.UcQz \IzwoBQ-3b-mօʎCiz::&{up,˔}+A׏ ʜ Hq B4Bp;IR|(pN1tTUQ:-oy=.݆ %'i_EmTw3o!һf+U+{xKfx4qk Ln ).Gg}a&&"E>\e1hbIKT~[lBo>w_A"lW<`k([-ۯy}ՇNo;le;T0Gv)3o)*!iY[ Ӈjam I *"ƥAYTv=<-hnhu[%ϻ20*ڡ!ܑ!mo`A^u,E`Q 6΀_{eB(227CP@@4!?݃HXOSHH@c˹towagr:|)mII*~ :~_;9xgr}dE%ne+ ͊3!,K"5O[i1"rqn U<(/i[3e.U%(8f =:k_q;`4z/*,73yJJyu*lreXkSuw` S#t8@DML O(oMDm0y{)dĺUitT&[^BphKj r&R-#Dȋ糈u5H@b7褹vH-\};* |@zA.|oo5W5ϤIGu{rrzAlƩ?5i.8~bWEdHޱ`&M%iN>\%GM ),n,yZ%=>$<>S`dd+yrYɇ+ԕ1m{Xd`,t>aAF(erY6vRY :,q_F+zC`u#{@F|^C|]mz('<Hb7jAV,S~[hꢠG)6`Idv@Bs~D+K_$D ǥy6I*,(FQE$E91x,k?W#̺G0ٜ;JٚNIɪŹ MԖuҢ&^ 馰bVNPKn_2N37? qWƎڷ)68g|mRe 2t ^ QlIB A7YKR D1+6pl5d9B DMFHD崾 ]),BAᰩ@ 87Ϊi"M 6n]G69—W?dG#:?с+riik͞%/^ˎAme|U1Ni7WRk3vvise~LJ]nT8>o=Ѩg#ON!Tul`A^jozR|DUkx@V%\d2e7`n6tՙw*x0w D N0jP@%Ur =au`5BVvLeU43Z9]$#A]B$IP|k#f&p+?k0 O̱d%,o(>BvMbk='eּ!n65 ƔKa4 &ޕف. qJ//X3f+hYq.)mT,S '9=n2{/ŵn5PyKM=~U2qcfjX@`kc^SH3LeSwFtiTp97856Ўy%qf4N8Q-A!ز,Xe.!(Dll'=p|yN[C5*X $RA윰zN^ Dr#f>Y#2K1 #qڨApv=gXWqaC_ `ofMÇ@Bۇ z_Oi,թjA՞k߼+Lb]%$?K&'5mc1ti:AiύM{|[q?ͪ09xtRK˟Dc]M5}Jc$=h O^јc7z:4<1đ*3ҨZUgRQ}ok TjR2&PW@Vab_^@-maM >D\ļcU_pD`6dY+K[l^iyxe+lC߄]w@ }EK:Zv@+>ȃLcBX2_'kAŀ)jT+RPh~P)ͱZtqBَ.at}gց9돾ҕn7dI樕 auY kO%Cn4HL3BS,I^2Ì(*GY}|F̅Q\+GKV L!ݣ&*?&P#;.!A,(gC$1,lqvQs1+,L SqY'3Hrulj7"nZUd8x|{3g܈dB(r@RHa"UjHA$u@ <~XϓD#İeUu'ΞQOt͑Ŋ=apȂB\GvsW4mߺK rMP<6Q*OII}ߵ5zU{ѕ̖MpLj$@s8)Qǖ_ id %9%T&c`"#ϒ ת%) es"c\C(&oRV"J+d WYFj-ŴxbۯϧU}$nqNF(gu3"pQivX(vt myM@R32s<11jZD#Q7ǾlDܭŴ%mŎ󶺎H&#~o!n{HX!W\)[^HI ^ ׅP5U;s!IC~݊8UXEꤲq_cԞ*H*X'vNk0XMc})vbjSoR?s 3kMV0ib <_`I&O~P_J}*2EF jf7"yǏo0 #(9F|-0D]PWȀlK񶿘֊wNɯC~ 7Tt:%p:Ƙ<-;I}-Oe~.̨$~}/>;P$ƹ$,W "T ~P S 3~xee 5;'3HG$l`☾Lʃ첽u#nF`Hq!- UdƒW2wsZdL 3!o&np+, 1/6H;k%𣫭Wڑ -S8W"n}vV(10o)f -%eî\0m(”YK)I2!T∴-8mp@3ΡeXh6P8Qj?"KC-~3V ,Cl=dܣtaEB__ŀ~]Ps{@*rLiܷAnCb' C?;}}㧍붼XCx $I?gzSI Iنl1#ؐ䓉,wL{xJfD[^`uQi@ETlwG4s;r9\I.N_;e$ӱAV|(ѝ765I%s.:zf>!`g\#] -~Q9-: dj-lY&ڻ:> >=/O #ҽ/{ӧk׃سu()BG"E ܚ6Tla}("m"PÉ $f@-,g?Ꙣy4w+x/HK9* e.V+oP ubRˈB_vv0nʦI4GwqpJAtO)t']'HT]pƥOk +(a\YoqRk+Ҡn@MJHN)$B%9PSFY}H>E_+otr ^ѱ/tN- ְ0c?UfhhRq(&Q,@;Tu-ND@T)=3V>P?Qr*(cpbReCүA[e9;4 BwPdUӴtqE⚾:}ɇT5ê@-cޡ$` pŌ}[])5@jԬ8uE *RUo +h#VuVek8n.5B$O)Z^0QDk;LC׋èd'(CKRy8ћ_d}c9Qc³SdIWcA`iGFG:+r_rbxaaGoՀ־ cUI[< OZqQ+18X3dž2&q˓O' 9 ֟OoGJ[ ZqWp6grQи2i{~YYӘ صG\/<&g<_": O,+@kWi*LvW-Bdx c r`BOղU Mv; :6XA/#1%~oO[@|bdF2Jg{ƨ95??nzW+"0 yV/$!"MN0´ADqt[{GT֔VaQ Vm݇IuG?\bn#Tnf97@s2*xo"jFNBx:0OM=E~*!_mC~i 浃8'޳xH.AYxesJ :Gx^h۵: Wvmkz*NOJx_ds6DWJJӘ; \-xt DA(Z;w->M {;p>{dJyę ;4rF/\ Ō>64M PoB(7?5B9 5JM H#} L<]̛WZH%V8ʦ37xˌ&t(:9TRb@t[c)i|"|0îI?N5awor0jѩ6eoxvHƘEszz:,f'웷GrfiqCR_Fn4 Y1Pv5y[Svb]qJCz4!59TU<\ `}]7 :3 }Gq-7n#|JjhC)DVSl%,jl7Z=eoEb9kG72|Y'~xMF@`|ɷ^hcl޹ -),+'iT\G A8|԰.%9 n6 \TVe(zɁhE˘v?7ItEDl,DPtR2)[1)V#f=ҽW'ofH Shqlۼ] b3$@ќ/11Bb|:k:j ʔ ~K/(WsTvp@hQb$_"V]q9=˵٫eЂV7w$ír;!(AuY]@-plsx魄. Șδ$Զ3@4Rfirr´5%U7RXwqhZ~2 { tPU3jwٛ:̪mM񫁆P:n|O}4S;K"o`\ q,|>d$nݏRx]Kט"sV7/BJD/feJ;6` a810\;g}|R.u RS@̹{ A+؍+DZ)E,'deӆCpI=|835$ *H w2,morUOEc 5UIdd\@y?y _D}~̭pR#yKBh e-ABlguz>`Y+.wZ LrfZŁ> H}E.OBc0\27D(=& Bizm1('+*WùQ/|Zl'@J>nѮ+?W]&mDiʼn  ^dϿWfShօL-;3[,xLaezEʺ?5WoX\GWIb{D tU$ЦH >AzhW7tz{7l`@UNY0Q`Zty\{GAtg<b0̂Q|aլ|_Ed6U78];JHw7w0ϙ L0N[-Cٓ!A_hH<_Zўk mr+;Qƕʟ K2s"wHjDsvQmNăYVR/دCIoV:…]G7qSG:>r/ ]Ck3YY٣n噧"#Ϋg_lD%< ~nUnݶ962b>$nW,!I@GǠ`v7ī-%\Qst~Nxr9R'|3)D| iLQמlV"%N 2(= X[U>-jv[~$3D튌E4!)Zh{:Rt`˺HO zqa#٢ eT&:X | n$Ċ3o;-#5&J0!щ3 Kܥ RٓeJnh؛ 6#[[ aW %f7IsFqTRVYPt5 9Od7$Kw?c曰]'9BL2,VPX5A8?mWpk $[@CT6WM(K .3Lݒ {ncٯ(z&>Y*596C{~Vg#U g=뷀 :΋f%YZ/Jk }k2% Y!gha昑缏BE{y!*oqR$ׄq>|m.U&^t*Z[{eH0SI :rQwJ/>=SxCJiW`Q.y?[-p W{´+!?Y~j4@7"'s/<tZci{.S/ܘ!Пf.'MɔP0RBSؒ?յ.>"T#HHW>ouGN7a ]7fExJқ"h 쯕2qq=2 E5fM]}:H,o]+#T@' [2@K!Mb#L(j#E-z6B3բ*sٽFEqֆ۱ZwfZA䉦SMV¸ߙ/SL8忓Ӳm}U^:kSs1:үsݦׅMVfR𺻢fD]f5 4kf'ߎe6oVXddWdPifΤ ~4풓_v% Y`Va221C% * R Rh?N~G>9A՗9G* BW̐{$Dqr7GMTaH<<`)aCLJ,Ě fB /PUV~ HA`6cI|bKZn/"gX LxRy#9A?*AR 5IiJ"9P)Xk?%dt{y MP}ihMUc3ɡ67n:+Fz!',g'E:ȱR8(bW_XR_&Ϧtc%Bےϥe'tfT$k( y%  8Pf *,,}٠\oR1xac۞ 1>Eϭr:lⷕp ݽ?<z (vzIƌf2 \e6IW^$^$M&'b<ִFQnB¸G>r(_,jϸ(5ά9۠r$uI5M!C+xųD\&/Aڙ1D|hPN?5:p jVfxM? &q(!q2M85 \V٭[O>v\~c29NTͣFt,z s EHc,auх5#Vg8:yq )e߉ҙW.dlMPTt'#Sp>k04HШ@2}sRNm3WE?~ˌSӝOi Oy:7N̤2p̑qz8PM!;$oz6 j]UKu5 D%){AF/l5v11tJr%5Ԗ04b ).Ӄ,4O8m2Z["9(r[ @f ٢ )Hvғ*C2)|v)%;ÏTdl=$(qcrX"4 g~EhXez\AZ Cոos& [ - iy02wQ]u*xJVY/R~scK#g Is#H -o JFzx4pYғz h4`_xA~X'A4& PXOoE fDdpY*{}gg\ȿwg0 f ݌L1H^p|FFs T^Π]뇳z9ВHga(jzQ"mAyAEvyܷ.]Mr B.J覉h#<@ČC@o5|#fr۟7XHDVe%wO&'f ]`W`y؟i;:8%o`mJE(_$X8;R- ?4})Z'"+ZڃxϢCށ UϦ]yΛW%wBq>0ٟdzFG0{f-7|)ӎTGՎ=dHSo 0Mk"d!笎SLIZY\Կ)1U~CK 5.\aŬ CńχFHC ɳs6t?xoɯL2ZqK,q RDorz>@/o]95'slaUv6܃I!M^i3YZۜ58mΛ} .W%{HT"SIDײ;ÐFh` G>GNI-t?+y:1r} (۟UV츋$Sй`ށQrnZdևӱT_R<=~j+"{3ͻ elҥQڝGU@VMv[TzptIJMHU"aBQ뱇'm0 [DYp lUqK @+ہg[hWX2=Eu^w28ŭ\qlb!HhD da> vGi26V 28[ 3 | K1ڈnƽC旨ecJDm{=HwӠj:\C#>zaesѕdkXcf$Ro;Mό*ssFS,oҸAuX‰zwXj~!3q Oxh`w]Oc@I:n/Kێ?h?i`C03x,S*÷$zɉ΃p.wɳFҕ6NJG?1 L08 P~>x}Qr!9K+)e;%X9.,V|#ư~Fo+RpnXd- =lG„A }{v jmiVhTσ(a:#!&=Tݍq }BnlDO7~4F 7s,qG`f9dff[sr6DV&Ϯd[>:UҚ3^zSN]91_QqP{~/ ԥ'KOkshG1(kgG"))BDe]#\W9~@~^ы6u)63T.ߗ)xrS@nvS= sR5NYفl/@VUBiC_~4[\P.>gO}l'DZrFx԰sE!&ꭢIy6 ,8Kx-2Qwx& YI,T>*SKȨYE1$&r\~[XCXK,oT앭HAYc`!f.U(L%Eg{#z]ՠzL'7q#go, :|œ J⽙a˚q8!>_u3t/k59yڵ $196~U ?Ra;0:E¹#7i ~s Z!k'rJuuO(XJ`z!Q($# QH:!;hKQ8u8d[VB͕ڷqШ™FTmFlN  _$*!-  }h7?=L}EXvh86mE~(`vit6J?GTE}Xn.l U[-4{CKAM'*t"zO#q˵łn>p95hHJ7֤-Ov3Ue lc4n| UbbߺNaJM Joh8zA;@{P;O}Ai.X!·籉)!>H]ٮo+7eY vx{42I`k7T*$V]PCxݳ§ hyq>7Nꁎc>G[͚dNZɢF@ˮP`mUؔ IG5㪡u>gɩkxtM_}‰eTZ>IQ+ib?Yz]W_ʵE@M􄂄Y L3W0aƻa~[U(G0I}f'fZk=u/&CR2a`,\sq;iws/3n#k+UY+.2 TSY|^/ϔH<`(/Ż}ӅVQ f'h7 Ij! ` 卟{Ŝ _+궱hAռ.ؕJpóȑ灵øIJ yMa&'`ZDs˝e_D45c#&P_ Fv%1(Fn 0`_ sɡ%b {s3V9<!)`#e yA{<~\pXrՏLet }IV幂s%x,5ۗ4zxJϢĸB g-Y0\3B`s_0<<3,WM)$s 9w]>_wѸpemk2 02|.7f9Rw.ȗ]WkȀ‹Lq޹}HbT7& J2 PCԯ5*4ͩF4e8%y!V?9U(%&d!UiTԨe'ƬҠ=T9R0Xs yoޙv##JS{Ӝgf1W}9Ax{ĕJT?9*+t]k0&sN 28| h](,(*Ke4R̒ې} AM*I7[[g,s#+.7Mv92S{iHO["{n]N:,BxIz6N4vd?Y3/2zZo4(ds!d7}y7? (&oriV)[gkε] FKFOܕG8B@g:F 6ȳ)׋RD0csD缳\a䰙ekqsHw滌59)$({IcsؙK ռ`1WzOY|6j/AIH[ Q{ o[ف:=܋íng,%xzFp/{e+w!Dof@Bџ$U pnNc<|ɵJ2"IVIwC;X4ep+8zaӟsunGRm#be"h|2ek=zUnS4(Nj}`/O@i_n9 S9_V7lmHOribz"]38{^&^vH2^ې kAGf e;'HkZ8$v+ǵ@j/B{F󑸱*ޚ?.yNiK zi1E5ToL{^?Du ,Z>S#ʔn3}DO"cΒaA_ >veΙ&_ܢ8^aQO&o"KhP $<lwQWw%mf]dv$ cX|E#>"~*e菖 .a6_/[? {!T)`@OJG鉍9M8$J?:Go^%med,]DKIDHL M,9Oh#u0=pDv sXMC%~"J] <~3!s= PCcDP(AYGVitm7HdD|'K'RIE;'~9vnP3'} L\LmKtfOhb0Rƨ e/aՀV ~,a^E Bh5OʔmDmM44!>ʀ/4Yk}cgH'RvbK91v5p_i(z .Sϼ ,4595F9R* )N20='x5J`0*^NHOS)f{ -P/TaC˝%I!Cl@$ 751h=LBJMT,t b!g5Q.$?=k}4IRH;FBc e}|m0s2Clsz+VC.Qy!FJ] i +zvs?r=ᮐP?bC5y)ny t.pwp3Xxk<Ҷ|Wρ>|ռUu{x jPysb{+1rl"ʨ^m֪ss->|,5rm2{VP85uRu1ш0DNhNǨ g@mH%]|t]KNd8HPPf\h|<|1k qT!+~SQ|ѲHHj`rHuEun&DQZ/Y@]-K2HzȀe*u 3?}›_CVKNtkb: 2=UͪAyE[4]$Aa$#AO'% vM2)7M< Kef❴?)z E'z. ]рn}҈o Ys@ j_n%WvͧQt%n`k?QDsN_0s]QAڨ-F$r\HX2DAlUBc-E$ٿ51>Su.F /i|v.i"S(% _cq$B3Ilh-og5lMepe@VjcY!Bu0`4,ָ O {m|5 ?JcÜsi8al7孆f/Rb}xݞztֈi|ɟlr‚ T<  c>~4 +4yj;=/@2p~cJoFGnUSdہe~e&œ Sg^GK(>~4|23 v/ IS(~L]&-QՃGfiX"|1 Oq`="+AmnG0bv'yBE. $Y۫`<{sQByy"s/iܥD?˴L;*Slz`":tqKsh\q %sSqݕb>=Q&r*gٞF#A~Șn$K=R/,f5~j^U`0^k2((~JL6 9h ef!Fw&zOħ}riWi  ,Xß}_Ź6Dv ->14Xjk>h6!*׿GHL_#a!,̒SKԑкvr)W^>"hmZjX}O3dյ@=H̽7ya*;OXl^0gXU%ҁ:(EC\ s{AQc%.y|V7?MGuŪ1< 1 1BX )faqaT~“N?JgJI:Hb:Uxs_P]]RUt$kd^c p:\`{EDzEY }`T^^Xblbz=q녴gc@wvC.\QluFYjOkHYlGȁ{>˦A9V2Gc݂w{>wPk&PB[.{A˫Q+'sQjYmk:& :)er%Ĩa;JInrlќmq>AƟ29EZ5y'P *QHcCs`CȜ?5L{Sd9\T:l mY='X"NZnxGhX$ѵR:iG ٿOAXǐ7 "S~1uwB|JvzBs ,lgΘ a%kYs4gimo7؆ڪJnxDN=Re k|*eU؟ުXm9@yc l(CD:55ɜ:=ѐr hqa/hɫ+Sx^zPAP@C5t; _Nnhʷ(4/Ձ?#j"a;N|Տ.G@րN(7Qi[#Ym[Z"rnm"ĂPtʺ!C!`ND1&(sn[6H)jnpŁj'J":yTR24܁񟯍;~œCQi'o‹4ū7dQgpyl#nMSKrOSy^(q8[ҜM>)BSo>QEEoSpL@%ۚ^L\agqF m\`SX38+ 8wsku4j2cBA Oգ%,$~[|gSHpRpRXX谒׻ֲ_~mlvk7{׌u[lu|bŷMYHvۓF!k/MwM Yn>VWe5mA s5Vh2Ebq* ֫6RC y+0nV:`3LLp8;OzƉz\7?rn5b;9Vys޲8~ũ@ȁ(7ͱ7 oO,ޯ&#I3MڠT|Y1rcbqqH0h q?Ά70#{h~UfVhg(vTEwM y@5Fa.ys,\E`'>4a]]S?@ћ L{T:)Oi<҉#+}D+{)g&u: UpALx_?YNomu֜9_g!#C,[h,̫78+=ǻ}_%ۗ^ÄL[&z4yseUTRv{ɒ#%{5!]`SI8erB'2ccoz" T9yM+Q{:P#4}F% z_Ęgl{9^Tjf0t]92ml7B!O*F2)Jǒ==AMTP %]͞8_R'Kco@v'(a$k0R">IHL$ p9 UW0HC7m+ٽ C")o;&q xK}Ft ~+0YuѱᰩV@Lf2Ua!VzU_O"mڥrs%“.햑aWկVbG]si<4-!Ļt]|E(xsٕv'n#5 ^dkOٌP6sbThQcLIb 00\CLl2k,K6ǥ[T7oM1ϧ艂 mtD, њ?ȏa''i }CYV@SO~͵8PC߄](cP)%ӐI @^-3*6 N$85!~E2C)E5E_⅙u_}$ EŪZ$1= y9't+2T'0fHh~1YGh(a:M8WZm ҲA75?URJFcawj4`rH M]HY+L.ygk w6 `0Fyb?DȳN l-~4\eqQ=>֝%/9b0 jLB6h_RIu%>:k7k@ZYujw9BCdrYD_iSޅ0(2"Szlܴ=)LM!~Utxr~__?_ gfy\R:DLp-'ȸb, Ro4(Mos<]!0`l鬭0j֝Nw1D^QK1bQАo4Q-wloϽl{ XA%z^(lnuuc# 6ڈW7sX:wb-IFۇfp*G(#=|yzʊKvf5q- |6WP2]Kk⻊9c1)/'S0$kHKbY,1rt$zYxjBsoY@}.H; ,\_\nC-+fX0Z l 7"lFReE_Do8S{u+㎺ڍ+Olrb|xyGc_ם;ۃS*?"O.8Om:0>gߗ"6!k(y~ymGJ$Vi!r;֧9 L+pz<Dv,^ȒKyr]š *q9%lA4'L$}t/іm٧oO+Q;pm&ܶ_H#:O 0$Z?hGw4Ƽx tg-;/&h4!)v6|2Z팪 n _q:k T! #-Kx.'oYI+/zMRsEnzI 804,.Kaʨu "7ٟ4Pwq_0+;:2-& $V|F^X e!^_cˎ,nK:ب9v9h,׃Fc@ϑ;TZXk =o|/w0Н" [c$L+p}~p#x‰mː&/<.9~v*GU1S;cj7Egp*(Ԯ@h`iLt8ʁDtswE)0DGt֛93n/FuR\t%2es ݝ`Q[4++ /y+;AW W!>'I_n¡lG1 Px1<yHsazwpwSҍ |oLN|^ׯRGQ/㟿&Jdˑe)VG^wPP1"1"-S=C|?,__] W_'CgHݏtZ Sܓ_}vZUc41I[] [WC#eZB#zI{4=[eu6:NM}{U8#+] O'D26j kq%|$2Vx"ȧ{ ݞ]_cԎBX#uْ1{Ib2Zg#}@xpuibӬATM8i޺MYF*ȭ j8G'ؔri2҆h쿿Y I~vڑe]# N$uG"\ҸH %]QR5B]p(9s4WYNk<]Rѽvy8]~lF$_/\-`gqLM2!Hw ᚌAOqlqU) gZiBNѣ6]Me(TsFT23mDK.;)b]݁QQ/zEnH7-QocH|\qFqhLVYFJ"QwP+' \tƂr7TLT+&N(Sa,ku}RF́%P 5G Ho-~Zg^f@cKfY:TSq#dcHp?j k+R'jʓt od8u#e0˙u>̪y-nxEy>LC[P ZFIxܹ=5gۋϐ)VOKƏttk]VB,|TSV7?2j||dN^ͧeh:BsPTU{'&EpSe(wCbUAi|,:!(&2IYFgI0{AX@R"Ug@j.E]wODhمi9&=ɳ|H+b/qVhvMr.vpM YӝQ#y_/U[.-8pS.j[/ٍK!'? #:<+a=H$5]خVx%:4z;KfVWd!P 쓨88<-",AcP2'E;G,|saefbҬ<"R2O] -s@~q\^D=KZzriXF1 9(<`ˮ"v苬LzdE;E5)"QN!(v%M BO*TKt:HSU!}ʗGuX$Cp}_KC&Kv̭S?.Gg+|C^Z[֓Od}XhP#1a[D}+߬@tc1hۼGs ~ݳN[g-zZW@2;n8⤯)2`4KZ]uIk Ҷ_d޾fW,<K+~,WlB"xw9xJX:xO*E@a,ЬSC?j?<Ou; ql =B{F7/I*$F)[mľ1\8ʤ_q`=2 nPmLD`<:V/}qVe7 Vˤ_xؚ'0E_z!>$cԔ(噛I]t,{DFsI kl[-o3R{t)ou#rF8ZwユukAGhib'܏ޖ{$"m$w:Bzh9dAZ w'0$oPs^4.{%m05yL2E{= 8j\`ɦ'&O i\Plx 496>eR"y[#@|xE.%;A2*2~yO*uR|w^=ιxyErdS7qvS,䝁A2YnA?+jf%i6aYݒħ߈5р&Uy}J@!]|Ģ$}ɰӎvpXLӁv[#;x17x~Q#=N,,p혚0YB;byboXX\\0߅ݢ_єI暻Ux”ნ(*"idDw\'(Jwgϭ+H_6՚=pfvyۣto;p^ejt"3K5DMǴi Um\|E)4$3aLef~yL?`eB==* ڝ*"նC(ƙ3bYũ'9dk _7jgSF2 fj!f$$ fx B%.*w'O$<qr@axDdkhq10?N~FNcBb<{6u;BKf)B,(t_cHƭ)|L颼pM88WcqR].їTYߑ˯iv/y\20a.\R ߔh^ x7?7>rkS2OɼQnNf=ώ'[ -1" YdUIr{9mx kPt-bsؕ&JX:ppxy_d=61ybpx۠CLem^^ѥI !H*ЭD9g7QNrGdb_U1BZ -$勬mOHI?ɫR[wUCGhQ@)`Bf߂B IN`Ak_n6Gh}+. AlS-z~ 9rx{tHN|LŒ=Y/E'3&%~x"i!>NNϺ쪚}&^wgRK6]u{\94 qNFpeiޮYO,dm,]UQ B3.[WTSIPX/"4>q[F0}ԧW1Z %uy⩵>}WZK0 ohb ѩchf< A7icW9<ѝPj"+= Ɂ0,1FY#r +iym'%Nu}ZF#7}/wؕ x,f`sll +T=qB8Ÿcah9^X&&\oatHI 6t+1h^0>ء)Ҫ_ #1u %Rf6cѩ&Azg\4 tlgV]6с6,!x@dR}%CÖY& AhPa`fëE|v0Obk|& yW ǧ䄿}6Zn:HAqMv *tلV)$Ìw"T c3'.gzz9ZKZj]|6Tt6-ɜxu Ζqt=3-efWϯ$,DIzW"nA}T'a[W(̈́#)uq.SlJho2T^BQ,Vt<}V6?L,JS=m5Po?, i(.A^P;7#L 7TGYTcx ߺn3z;ThRCzg+L6!:T!Sn I4@ 惲XZ٣ׄpȞѓx;f+P'XI7bt*X~XWYeeFbٟ[#YҌ 'x~/I^ީ'_/X&Bd[ U3v$bAOjӃqh196Vqt)/o3Oq\tMqڽJ97)\ ;@9caib{C]ѱ =_kn쥅>lii^hp_KdSv[O6ϋ!c$nلwo? :=%3mGmӎتJ+ŋ10n;Qi}y#k+jAP¿YHvlbfs$.-رf\8 Xsj )h!g vtHhǜ7G ;"h ? WЏH^ľ}  s=]*b,21&p."D2YtNo(IA JOv?B郼Rr%{-ɰ8*q_cVT:9b\IŶ{ |ISίbB(p?\Z^8~XTogB6UDvɁw-*cpdܶ< +? Mql`b RHt$$&Q$4 _hfYy D*J1ٷAsa\.ۘީ?QHN,a"Hgnė>13} 3#my+$CXC #T9Tޠ_@pdLCS6{Y+0b l{x[X xB=ҷfl e}Y<`߫W/ D2$;z9B `NpC44ko\a8Iםujlk."e?轶Sr l6+ԃzɏH1 GAXxT`sHThboaʙƧ//.Raj'Cq@+ϜEGLTbE47w/.\P 8VT(DNl}bm&"DŗѶ6&~xZ%SnXyk B7(XG~g)}긣x"{Pj咸1!Wv4`Zgf3Qɜ?%w?PږvNSġ.gy'z)ܪp^* t*r{"Rʐ2->- ʼn#U2}e`U=UpBE.A_ vmqDqXaj\meR7Rg 0@rtGi9铩]l7E!| %I_n0j!~ӁCrM}=_#-~bu`PV~)LSGoe|OˡNU7 @x+6Tj覷` s` m>M׶~r/yp? 9]rV֔c!E^n\%˷#7.X`EӰeȪ^'/T oXȱ $k }1̶@Q TōZ_/ #C2_,<"TD̳7f=Q +RDi?'e͚mhd伔ޙ@Ӆ_5Y7=>4 wr@D֢LOT#C7Q9Df^Q@,;.|A^DFccƁ՜o4t&ܟ R,Rǵ(I|]g5o!8~-0оzꙀ4ъ>Ffp#0n3 [f4(dX^:EY07?jhPj \&EPZmF a'S='O".iEj@x\ #dDU#[ yp ZҒr\v2Q)L`ۢ8`nmEyZ.1Y hB^kVnoYWxFQx08h;DIs4㯔ީ];zU/_)'J#̓p >A»go(\;pNmֲ;W@7Gbp'?֍~W凉q2C1 ^$i>JїLqw,0EL*ڊ&՟;~}|מFTƨy_C(83Eg|wR8MxW ޸/s9nBfy1 щH+[e6]b?ͻC3ߵr#|) Dnp }!!ˆ74pry[#E2!\/ '%b|zţ\d5!xJ-$6_$cDh*aBJDysZ6_ FD۳'ؿrUAxcg&oQP  %ʜF+o؞>f⯏޹Wcfyoxf*Z$0vveF3L炚{-$MF(FjT0s(7%JF^Hg$Ev4):S bu Lzx3'Vÿ[H7|0JcfFh{Ĺ9F7NyU6W,/KV> >VX ?+)3?HHbJlRvaP_QWK6S@A 9񷨜v.(JSzFF fT72Z ,zy~ 2d}>wXx١gk$^x^o4-GG{qfC7l3 \ޝ&, rswG/[ z_3@ @1sJ>P١k)-@GwVI戓?!)3{l*0e2Ez0iCF_WDsƟő Ԫ@RG|";΄W[XG l%$KanhW%7bqaqcdc.RL3U^ۅ<~`ׂs)~}`. 5;x9xb:!Ek5NХV Zq?@\jn L71fgC2`g 'ФkbW`p @AS]BcNmڸܷ*o0 f̉܊FQ!L7Ђ,˽EEƱ$/4U`yT BFc8>Ȣ}5:N}>]Ȋ%>Bdpz^`h':~IҸ w4^.7W;{Tӂ8#SE3v Ov,(BD-CcMsr֪ rRw6vb8tZyV~^<Ũ7 i_w<(U/ "_NWrtGZ*YD :q^=Ÿ$xjA0NڝӀ5魅|hm|[#`Փ-H,q8o\h3 \4t-.(ng%)=?\g 35z\ؾRϲua#k*dhH;i, dy|-14' Wݡ1Oz,Ut8*v׽6v7kӦL8]"t/:ը VHQKK2B ]p<$:%~~CR6]ӱK;">U17mJ \nI[gPH[vyXFX;LC֣ 0) "kT8bj kK(UD٬A ^߱5uH&*nW{kC2kfas#;mcoV_1Lk|jwF_*oYl]aOv tms1&=y m ]m KIϋÒ=Ϛ|̣LM dH%#D.{O8v <$X f!&ʞ}- B0!<Z<&-noNj|AD6S@Q^==y3F47@ ~`dˌ̈fyzM+Th\ΌeL&Ewtt 0v$Vh.3m WFҚɺwdszؗ_{[G?PxI}}&,Urؕĭ\^+1'5b.CWk6QlQЎ-vBs.9{nڬø= ߊwZY-Wf.(0WBd0$<9?Q B55;zNlģP-:T>:zFtvh[\7>= VU6Hb`l2ٖ2! e\džGAܞZK+=o ^Vmy?0b!aj֦ {XΝ߱ _l`:)wd7tHuW'հ tjJ˻4[k/hFO/C1*>",ݑ3Q@ܤQ ГqĨY")"LԵ?A4-}!-{ P7#]&@f"~x ~ửnaC=]cR3 tϓ AF~Ol?2DuȔ>5acMpBqU ?򠉌&n5ujW߲j2O-υw7{}ґn?F&jQUN Rqg4( 2LFyI.Ӎh(ɮ8b'ƞtXH:Y1Mq|˃_V \(=/&@5?m>]hU]\=a|TXNvsȱhorR?~/ bS>4#ݹ}x>cZߞ7A׬ς`'ڧVߝ궄BRWԝPluO;dYdS\M7@y2Zf1(`H0V"pD=P] $:C:P%H ~pz~+k9l'AwAG^8NgZ,M5:j=jK 2dz! =_H%e " T0Dj"w c}J$U4W#P-e/*oIqVyB9~ϼOt[" @U8/. JPUY5DQGHI3(R\n mu^v` _:YQC:ԛcyVe{rPʬxfQZ$$LA?u[_]4DI_0Ay됚GR>g: Zf-sV$6IVo6Ǒ^kqwy{$LC,Wj)f|X`Ba_T쎰{ǤuS_I/8fv{Q1 C!&(J6]'5AZL<P1@}jF ݇t@.]C$I ّA+јn7[bsNA !#ڸw8(q.!t~MCFӉ ՕDEo #ͣ5^}3~uvpɹMk_yN2ju==j 縛JRDU '1o?B)39y9Q̃Mo }EK fB}d47,KS!X!qBmY!>wjf8}A3qK:>0a&b8@5=ux\̭%Kc-]qؚ9[_M k@?T_ZL>5Vt% =@V߿*E) x^[{4YD+ q`y7<|ZPl0l=AτӐs!T7D=T+g5nmbX6NO7,|h}OÝwܑw+$7כ,Lt/YA^DEHz1ڤJsl}6:w,kEg{GK@ L|*^Ao',7 < ]UFq4.Um (DgT6t;aOmVY8& cDŽXuʚSK[t06%6Yp7OOcIC_G,K2 Xc&+)x3y/^LFL7:O-sBv"Z#g+;mArMMpYbZEk$YC-qIcu5O<)"Ϊt1r{\^M?xK_Kꏬ y*e>X=v@&@=YFީ3rOS"k鲘;'\ B?H7(w-Dɝ {Bs!9vyZE/ z8dMĺ1DFҌ fˎM/?MNX| c&X7(#}7> JKEq^6Ri:E \ oZG@AS; ·fL*UI߭g4xe~I^׸>7lD[Ey> ν;5Yykr5),S.&kfQ[4,Ki_G1cV=p>%jIn *v[6\kʳL.lـZ˱XZV発-w7sUS1HG6瑦 'j4 R O .LPS_"(mPaidՠ9 7X&2$+jBy }+SFlp|Zҿ̬LWwd0QZE5.kUylů A{m6::->u8vY}D2nDǩU1_EZj`.,Xw9%k$jN ~HװL-^RBk vW>K\:n".Eyd~{C.LNv%x6x}O0Tmh)}ُ5%EdL׻#<~%TcP?1ae4io\)Ųc/j}@;Tۗ?I<^2-%BXJ0x\~+ˣ0Gޔnv[]&!dJfnhh9缀n%ۻC\pEm5% q' t6Sl+Cg d_o彻MkOƆ/&9K̎&ߡhpcY]@L9`ōJ2@ǩ Q=ΗܵG(-9Ls/*!Gv0Ww qI?76rpIvi4C5_qsN\ώH'r+fu/Sw8pLBF 'rn*sq6$7@2ņq5T"lA/R2E)* :3 mǼM_(b=TC(9vyMU.$-9R^SGwTSAs1_kIaY@xXhSGFk1O(tИG爢ߤ*Wr)TxvguŷW;T;`1!t~OՈmeĖ,|'0xu׉>WMx'%'M,!v\7/aIjs)muM']bF:5rj?uh &Gϣj * hȝL8ox?fuyP,n((F|tĺŗ뢾j( BaW8`HdMDoRna,9D[/o-2fWf=[TR}~ltmHcp|Ё7"A0$[& A<BGcun;d]jOUo)Vy1b05ʹzA@jK>g3scGF&/~/ ɸšܜa0Fa#^MPla.2hMz \8O5 (͝!upJC[鵞ܢ+ h |g)17~q>y~z?0O88ȣjsXRc'FŸs^ldu<HV9Y7BU zCun=|nj :z)l]C|^y0tΤc?3(d ⦜Ly_z)'CjE(tk9ٛ3,(%ԖYǟ Gc%2QOb adk]*ՋHB++O>-{qqzwcT4CҵgH^ݟ9M7=Z5Ƿ7!Шـ8"-x>f7*vѣm+ݤp͡fOI|d[Nusq%k"?そo@bvheE8p~q<]pҨa= ( d27Lt\vR 3ùtck``#6! jdv&^QoI-c㛬F">(8ڿi)Kq ~sX bR:zSe `#mS1FF5Mqc4 +[@t"e|&#Jw ]3Ŏx%rW(JU:F `0(e=ȓM=Ͱ*mav2 9i#JQQ"^0XlzP<`ђ^*1hE+˺ _ c5aV-XmgTga]a]-N4yֻ`3ζ(||:5A4s}AWKbB8>y!L͓ E:F+XJ٪van1dr졩N)&g<(L B.[uUiߵkA:MDKWdJcx5S6%5>ǍIg`࿷v,(ͼ dž2(|aN҃]+BC6e'gMA1)3<}A2fzN\ +R8:PݝO֕y%&cHmDo?$\E6@aJx"Mi!E$ Di@84!_,ig"ZLfd>WΩ=tVЊa܄F;V)ǧ䰯vD|'L͜H(ilK'" *1E%=Жzz8)Nk\t%눼Yj*4@WbN`z~0  @h ԁHH>d&aow'YW<2YbԂ-‰>(FReuj2xLFYC&Z@t"HAMJpRp9ba[b > 0IOvvC?b<g5GTrW {'CK_=rT:g|Ⱦž3Yr{{+_⹊A֤F;}; :\<, e+;3 M_/VEE1f:P݄ԁ(LKa*NyOUFK)$ 0dN\* |a> x`6yuFGJ~fv} LB[:BP%/9]8iiTJNo!/kf~aXN-0 2b5}NȆd Ĺ >f Swq _c+C? r7 # L0^kʺhy,1oV asE=|áoZڳ89hx2p;4GA.mL{ZӐ6L[V&' "hVI\ax}; Tm{c:r%f*D2#R"/%`>bJlbn04ZwQ/h7V.<@0f6׸1s` gx} E{۴FmbMҸ~t-'_t.-˴8OT,n&t Զ2kROLnm_Dx՗u&*Y%|@2t%A{ Pi*2v8(aN)tPm5*y2٢<+fއAgUcLIfV(=|OA־ɻFp/+8*q!`5hAnuj"yћFq6F>ZXi3բoiIҾ<^iݳ*Ҫ HJz%cFexP][| =GŅJ]fL7Qjam/wRy(RoMOrJ1-k2NRvi^^V-w[ӆE .F c%'YB1z {n$8ːn||DKa+ +|JNx<$/ȸRc~ֱ*&4FWvz*# aƆ)a1TT><_|D'׭qY#m ]'Чu f=rF1'ѺlėT2<2dcxK.leQo,D>+)$gGewe")LyʩY̋odUIg?SA zZŭE1/0]M%X4pDmCđh.@ Qx3x^FP̯tob>֩7%fMhxtO-px.d\fS(0ϛ,fG: }AH㍬sުT* {(QF`zF>与CW'H F֜dZ8¢cߝj-UC?2Dm/wD \Smm/&75;mx{IOuPci}p^(aG~d?ݥ׎e%?9cKHat֥ bzs_O$6 aw`сD/7S>T',E>NAHr19)T6͗ܠؔNb { ЧKHR nٯ_)wMSS{sfQ0`+(N`vrdK/K1$*{B?8<.[e_w,`/TD|δR>'>z%[xɵ?ОCE㾰π#H /\5ȣ'2>m8[b$3P Ř.?:,R$()&T(mxbdp%94O赭F@MC/]dJƷn{?Hix{z_;h 5{ F)L*wuP'k"_?ź/N~EI:%_"+?h7 @ψE潰anDwNa\n1~A-rḬl% GЭ@Ci&8j+uVOr 93Ƥ#*{B=8γ3\$k'GSSr 'g~WM*Ɗo Dw/+\њ*Cu*U 19WW* ]}OQ͇]ȿ?–$m؜I-71a 8 J˚p.kٗ61Z1f=';ԶGՁXנ1*YEiP3Up'I5σ3 Qhѫ\,.Oo8q|P&|GTy%*Nʼ,܎H=riMU=ݐ@024f^,%Ǩrow&/Qk6p=7M恙<C|Ԋ?` 1Yr03P s'NyOVrE+4k )1\wyZ:IcKsxP9d1!$A-+ãF5kT/î 34:K&ul?[<*6Eu>(},\Y:B@Ǐ54W՞ )rݠNb-+=f]{Efsr@},%W~Nغ̳ɶmtp(_5^+K6ӧ4ND*IhÆ?ȺְaP,/ysʹ 8E.@^7tB/xyo<ʽºRi2#` yQ\K/6|Ao DKb2B=BN`|%u;,YJdsiV~sU麣Ε]b 3u|wѿAv\7sUoP N3spt}ߺenR1Vh +gKeg9G=rN4nck3J'R q9)"hY.N"R22xrCϞdZ$]Sɸ܄4듬Mˊ]GTyTCQ;!!.Yǩ8uZִ-Zg\$-jjy l4QX䨨;Ҏζg J.k?+/{-}BsnWCN7y1(eI''-nTru=dxF e͝#hBo˲LUBI-GFXݣbRvxNװm}AYfd;{yk O-Qn+rsƘa+Dl R鵂/7HY~oWT9ݰPV ;N9{v-B@~4v\[:56ʚㅮ|rx(~͙~A9,&S{,aޯC@\)5iuE 8GvRyr|a>\f.xux&_ "X- y9sNL1|2 lݐα]z3L:BoBny93Zy8_EU+n3or ɵچT=֪vV" {(QNkW\Mv֔?gkyz(AF9 |;I Ef Pa=?ճZ0oa%ׯep9irW{ Q}':4uO K xE<*UK"$K:+;h1?ޥH݇!5* G+|ȥbgSŢs+ 5`D[O%rA"\,AvA"rik, ez-GVL9bP|Dķyc2j 'F$ߚ)z@WY+J0\t=]Qs>9 F54MSe C XmZ;c)(Fjû-s1\cWJ·prgpVoRdrH$+)thT97xm%`$&u/N B8HZG6~bҗm3nF&fX4E/'" r#.-ZQ9Sk;RԹfb`T#J1;$֚ M-u2-UY% x!t7ģJI^UwK WY" `֩ ^%Ɲ.C)ګy%NO1_Ap/`q~߲G{` D0E&԰ C҉4XA*rƂ9*U- xFb #J ɺtF1hZ W DJjAy 5ݫľ9^P!bkky6(R2 }T^Yli ;{TiAeU+M՘`^́t_8+*r7H3Z 7p|+88<d ' ۪/E^*_Kz^H-nk*@{IUJkj@FJep;˻mhUHқAbNE0ɬWD9J|Ί839d.EX3*N, _욠C|m*L.v9<ѫ'H`:uYv;F %hRT[fҳqo#hgofTx)9 sw}-_܆i !e Wgr$%QGDf!PN#:"KM0xS_4S6hfHs_3r"^na_ʚë~W1[P-&n>MU&la~vn\ 8i#K@šT!KRK ykX_vՖߚzl #+L$"MXx#xo6\2Չ(3cƏIy$3 8FHٲJq:q([[mR3̠Ԝ<}TRX53@WX.MuRQX-Da;(8ɻlKuև$>nI]>ibOEӢI&_q޹-/!AoV/yJR ӳP*)bu]04~,cb2D -{g\A1f F9C[LZ!Vd\n-{`npPZ9Nb4H5o96Gᅢ"ySoaKOyΚ|^]C;S Ti" e{s AV'\FWb4ŕ O]lhЬȞO3NޥueSOU|;UzZE%1p%HTuJmFP&_1G1 RǜIӒ$2{ZC1ئۧ? &6a ԤGm ?~VRUҵTݟt2Mu)ZTQ~0k+HrFN$! ::! @_d∪6$= +bиG{^@i] {KFw\Ca)ht)ӬwRbppy \\7F뼯lK~ήB _gXO(\}!A:'}Z ԣiK"xf7AcdPgMқ9 d[ [|O Y2c^:N.Gr~.YtUn yOkk+ B JO/H'+/ g( =ѐ*i[ѳhk"h|+C@rDHnN]3B 5 }wp=JFan(L={թKQ.B :K°mUhqRVЊgV25hݖ÷\ 5g Q ?ى &)D1bg tN؁.a20qɜ JwЃy)Rc]L 6hHp ^Kf ȋBeiy$ہh &;9Hn&n|7MFc.xW,A%woqC^[Db6PB~U~w%!i$ F: m)hItuZ^`g%z6A/@B!jkH_Z<ޞ)Y1BWIX~ A?xfɮ|YZcN2Ogl5)Mʢ2A[$PH] r5BW1P3v8b66ÂV 9xF)[Z ygGieNhPWUmيǘnoݡئIxK)hxU3TNa@isZ(8#14cU7et{&֣0)k$"G0ȓ-2ErY)^6F]I@jk6ce) EXha( Y]R:鬥4SUk2勆{ 1NY:RP'b8Gslzl ^`F_o[1b(]t@^eUJgcĚvĉ5D9*N#s#*?_&$ߺoݛ%nBqe!֤ГfK\S͐b? T'i9r.Bcr߫UTC(N9m۾@}3NY>*v{ G9LwZJ?N >0z'bi+0f8]8. +J>&C푺3l<`q&}~|EdZBQ2뮤duOgO+) UtNb[C ƞ08x]blmSxt٬V8҇g-xJ'Sw?trhC`;sbr5`HdыJ,eŎbU\x֧5PBA^da[fDBH B)kfaOPM:k إQr n{(. h~r(L8 R"NL_}lrI޾|)Mh~—Fi/7tuཇZ}9ҡ46a5%(Uuyty#tt\Sod=EI0a8lnju2~xOm*s>⣙]qEefRseވ?kBLU# 9OL-Gs~sP $ OUbi0şg v7$!_*;IΛ#0ҶeU L{e_a%@"Rj. Ȋ+3iZꅋWvgB Zo)w}7:c~rJp A{[˿>L^Wj;s}CDKc]2U]o4עoڴhթ`sSˮ;&?ˁ""׆]L(P ͙5 Sݝ8wTlJ Ij 2r]&7#8cl׿ctmqdp_RT|WV{k[ zVU,/,}\ !HUs%/iٸY糰RW|5H=}ZVP^#S՛3bZb(gp )s Xw3Lyds]Ѫ_cE3,M-P_UɌx}zi9sڣ8])H4qae:?k `?F_Znx8W فA4-;CQKllBTlM73"u>}{-<?jg rbpV B" xYS~13m2J`(s}]ev ׳{^0$M ͧtCSI: Lܪd)Ec%EVDVI,oRJҶϳZɵ@aKJZQ;UA:8G pBjlg}Jc5c45KD>k:LGDcm9VcT]P˦`$'`9]qcG0 RK):'X[FTe4 !nr#JԴ~@]ĺj@)R$]I2/cTȬ%|DQO^ 5IցK_ȱ~9|Ih]ɗιaKU!9`ӜVhPrP±nG,Y!d>n܁oBWL2 - 린u~kt;hl]%Jy詆EiA^TRʒ^b/@ ֗bP$gv)!nHchZ:q|_vE S?Ak\qsM BKMDT*`;{#=9XZK[!T 'LPbɵM#,uZTPe鼝 ,BD4ExI9-lbNHfT+߫<`}˩ڋՠj>7t?顠%k,K>u2$-P*ʲTRv̦txfBHɢ{~vs`6"XrʕM/LuWX0#~L; d`BVpuؑ411H~ qss('ѱ v ѩ3;eu&Y+${`0w,1ޑ߀K^o+{@]/ D?C 3u hO`E:tXЏf;u@nB/ /Upm k"> e6Bcq䢏`q?t^Ϣg;EG;!8/6xuߊUmJ: oR7;!Ro]@I3\ZR^>5WS/I؅بfO iS5R9-|B )pܼ}x3Dj}  [L63q1ԔƙΨWu ryG-$/ƄXbv0T[>xd~cnVp۽pBX# ʖ[yw2i Ftg;PǠBx?_EV"LgQ2 _WnlY:uwH Ez%ޭe$d{(^!v0p`̋/ t biOkƓQUgo 1,4Uxe|Uߠ)84omgܰE slcL= ߊ rl :ym,]nNIԲ2-ĻP-Ľlf.y#%Pgt@[plPmgD,o 'y\[?Z$*d@(\N501{]J#hS|&*qsKE.R0"?9i ]"5kpij'X2Pe)uFܻ/SLPgjifM~,"T Ayv-w(h bQɠ}Ӝ(3+DBc&\mu]Bok'vL{M¼!|&՗R=@cW²+UN*&xmN"fToxs>ew:Tbƾŝ']|e钀 0, Lē`h̦$zq#Cc%a;#A(1ZOڠ- զa{sT _e6 rp~B;,:c z*xvF!I#Pi,^t'﯂"T hMZbX7\vս>^~ҁTB+7Gh7y'!\9lrT7,՟ϧF M,A?Zۗʏ !h6 p[P㠉 -Mhlrn4cb`"q1O'!=x- h9DBrӢ܉'60MMW?%$ls8μɷmВ ޫ J2ϔ48+6DVN)V)zԺ#f=/A4Eළ$6Ro1uJդN5t}"C?c*q zs`}YIoO3 ܞ9@X Ġv<`aOtUѸ9̥9oPmmP ~z*ERyv٭v>ד V29ba"zGѥ]e>i|fGpcVHeU_Yuȼy~uh X*ۊ8XpaGfӾBJK+K,~mwE88ӦnKѧ:sheRO mϔ7&THRPDSG]akr7_.ԕ<öGl:݁Pʃ: Vh8ȣb@:Å olE"[ OȭD@:VWz\I*wJ.JXEZYn]D)n nJ\[`7DV[xD, Yr-?kSm㗠'O%dUlVaIAPu,Ǽֳ'z!Ghz{oQk޸,0][A& z. +S|aצtr0a]4$F+檳 :u4 CiA@v Y`ߟ%_߫h'.˟5|n E}#{b{(ֳ_淸aJ*KS?qq"ժn}qg WۏFX4v{1Qb\jS IAmub=Z ܭq=vfK,hqwޘBHUre 4_rhljB՟x^)|sWA ~|2}QO0oI5$/fA12QShOǙk<2.c,ս\Lo/Oq l 'P4;JGCH v2YUi?=Y*!h;v0x֬'e&)A#ة*6$K1K`o:f xÓQ>9-;n>loRkpx#V.GjznhH[ua'E) Z\lO/j}-7N#_<dOZ!:cGoYW!:[~|ȁ32~a(FE@@R stkܙcxڴeKbS뵒 [/]tA?M>1A=X=t>hDyŲ>#Y026 OGP(bh–9FOC>fF-Zb~ WK]΄AGJWkԳnbw9bƖq vF_xVc Cw߈N1 &UP!yM1Jjkzr.J*`fYkHZIppLd*a潶E{e ֡j:j9T թ^<<;|rt3TrA+DGqV*B5>!r1\Sd(7Oгx؜; 'TʎրjLbYC-=U>FktZ%)^hKq!QDR?_D,SJ7Bb/ۛTwAP'üH<t 0l،7!;dJ2 9"hN Z#ܟp.U4M!Ě9IMKu#%@HEB"eS|r;Oi<:O>ˣIUСyc*P ̐{scdotrz#}6v9SWr]0ȿcu: G'(śf sZ{JL 06r$| gT/6@s'LLyO-(@4[>>9:8Wg`k06} = wh=-L~::XpRمx8B,=Lo$Tꉉ@| ȹ^ˠY#brIWbvq6fƾH-Bal+K00sq;a~cz{}(5p/4s`-Xlj@(4ٴgAYbH: LGa\s݋2L4]xeP]gU19sIMSG>qb?kj(um ûdg!H! )83*:nhC|Kd2Mh30=/XI4΋BRIhX!I`7:4S 4Gd䡱3M2R"2ʫm/eFƪ\zW-b:sޮham42|"$=s: wT$nΣo6GEJMyl}HU$6=:ifG]F}9Q7idɕ>I (jj$c;OE!"Zdv:6B"Yj﴾ yXA W*X#Gx[H({E,-b,&s>kz4`C7k$)4 G {6ROUC?BzT'oڋ+l/IJwZǖsKC6eߧ ԍ|Q<3vXW/ԪNe.b~R9ulW"N8,*g=V` n}<U_߭T̋i*w"LHm**prDE+/ůȇti-L2?~={6 4H-,Pܥ &wiUu2b4YƧk:XZaze%|$Ґ=e*'X– S0a;<,`mÉ gh8Jh97j{šj})#4j 0h&;=iiP3TC,9m˘%jEWK\2yD;ªzw 'ۘUj2ޓ=M.TXZf_lĕ˝`i 1> 9u^Eʍ]U1S (o&bmT޸do2Z,Yߚ_~u^c05)Z^cwxP7-9)r2s*ˇ^l0Q~6t!b]"WN"{潡i l}Lͧ]o:̳ Gv@SK;Lfߩ!yή;'@[]|"`UrxS`>)%]ȹ||&H>:vT̕<ƴ]ac'hNfӰ-}u~1t?%gɋݩ3_N8Os:kJDq,+gTYz坫`ղlΈeIpU ?mI|aLdl^`#s(΋QcmE= |Ǻbi&`};+e8JSQڛFq]eڎt{t9lK{y y3LC7ƙVaOxZKe.AF`>[J3fr әbX{anYQGq&u1]S޹_IHGmtp ZNaT =*ExEOy8ŕ.kjT0ᯅplkG  &!ZBN[N@p{~ ;}\B V# e[9_Qw0 $E!UߙF/zEs?5.D"!uwL][t<7H-kXu|+~E̽⺪iV; u˅iQOOT@bX4;n&4# sw&@DNЫI0!{9.9ǯ{g D'~72BjY ʺ*]ܝԮqQ-lO+0τbK]*l% To.R8ح{besPe 'C Z*"bKKs'p-]NV_ S "c] \7V#U(l 3ֵ B: [b_YSNʶEv^A[WWi'pL8tZڐx):=agCe ljw2xs3SY[9 CCpm/?P·fv@ b H1oq]Vg=/M=#NL/]1jrT)Fȁt GXqWQ,.@'{$ gw%ʆ17I\vX zElB DaYy~]:_'F i@';!aYkUS /;zM y),Q,W( .a^ >zѨ'R$ SJEmf*g[la+57Щ e982':wN"NPcj ]u(T>WDݪ;"M+C/ka 緽Ihkj _j}`4 1^g}b:- o<^&1C_ݡw~ڴZ-0V␉!x p&ZtԆ|̫J%"u[ubs}~0(ČM#A¤"?[ 4;NVZD~dQEIu@侟. ILjǝ{E.t Z>zU*-r+_"&. q7j7Qكqvy8XI=޻6JP~Jgu!{ăHZnuV:z9 MT$oQɑԠ" yڙryp[ maB9oc/qlχ;C*Z GEO4 7|yRTJUFݕF$!ZC㣤AϭsH4΂-J<sJ/coƭ7z;]c-d1GQiVz3ۙv<}"ևi]V;wҝQOn]Į^cRL7vPN36'%/7|s-9X /bYȁa iMl`T8ٍ;4R$DvY1UK^~aݓ+daʫo'KP5.1o"ۧ&8p4gPuuaq$qvlU[DrrSC=`?LZ[md& |?tz̈́i2w2v֨;\jk4p.1f{Go}7EoS`A,f G|0Y` hsSضkuztف1k`rbC?M]-RR\į nʈ#x,Jpj፿4NIE$KjǾ^a+sO/Lō%f7/PO *a-2mQ`JDbq < 0qmÕȑwD B$zeLP~|vRGtVr3e? #Ңꙕ.M/ީ_Ŝp>[;q?B^ptIЈG@+zhV_ӵ/8Xw)1S<쯽`z$ O;h6VȵBS[vAiMn5e6]40oc܃{#/?Z%_ܲ$Xpz7͜)&f =n쬷[م+d y'ҏDy})oJ!f:,޼)%/3n1vgVz;QdUjJ8|hNaM!Ƨ?aE e+lfߘ+쨐J^m16ER@IJe%YvS@TfV"b#vhB߬$|Fv.!_?3,,JF2HUJ⑼KC86a|c}_OV9jo.wF۝kQ&9B(<֩Xv[ghH%7ܣ)+2ϳbbt̊9Vϫ:Kۡ tree~!ҭ(@$ oKuR%IX/3[8& 3fYA1M/ 7^ ++'A8V΢"(Z։wȳBRĎO$KuD. ZSB$e3|Lј&s z_k`CoyHtmw *z=ae/&N5]@&|}>\FdzS7CP8_:3hg6lnÚOo[T,M\Ys-rmTܫ"&<=#p)KʊiU`fcİ(:w~y3nO "[Խ ybJz7F(O^ x%v!EJŖ$W zđj2n2"z`ק_{Lnm(U5ü?bG 4wݹ!PfQb(gaF=@YX:b)t[ z; ICJfso^6O8TtzMh (kebB5(z=kxUL[S,`>y >`|[V~{Z'fJ60A>wCoCU-љpM˨m"Y1Tre`9z֚oS [.`㭖feV7=2>9WbO$K;!,ayI[2w@kA޸mxPR]+d kh\zw2 EGn;by]ƹ? Tz5 aYSR@;s뇀P)2n%A%wLG"[ӱӕv"׆@qb5.O5yfxiz"uVZE!Bh դ̔vbMR_?~x'AΆ c~l :ͯrķH΢ R'Cp= ~w.ᖆ7[w[G@5lq: rk\N)JGdg,:9^ɰx-]גRE,#wNnc? VsS,=bV+)|iq˚u(7tBnLk4#̌ژ둃XBLHp1tonAXn ՙKgM,3:*+?aSH,bI]~Mf@ J}hb޿ߦ 2qꏸ>_gQ HɃzL vѓJ9 Q$Cڙ^) Dj0p8*F?zgoI'Se38WhnAH#pZp5Mɓ Ǥép\೏zc\&tMTSYH8tK+, 2|BN-fʈ~80Bq5h j;xd쓶LYv%p#͈u[wKڪf߅: S6\aPGNɓXdu[.s]Aҙp|wt6r ʼ>Q;FK>4QD @Ì0(>j4],{4׬9&-[j&./M#1pH黽퇑lO}`KFl^)6^l,^=*qPD=uqJ~oSP=Y78Ȣcw7&(`LP4Wm2[҈;Mx ط^vב+p]5#νyvx,xm2np$5@*8v*y Yk&_ZJ1z5p {V,}OIzBݔkK"".ٵU£9c'ؓ%%;6Ց'JJ(! &󑛰_x!^Vw_.?]ߝ?37`5i)h2Y3i-M^*M -QU8EzamRgK T 6SB{q H b!C36^̜Pg'ԂT,({PY5=*L?dat#x'l0y @[pr[#)ڡ^~tKC"[uߟkRx v!>or,65`Ѱ}JkDjYXĭ!vNz:q_!1!tADg/GYW`ztK~%v{>N);'}ГlQH(Ks$<2+;ǰT؄80K4KIiT <gr49T:c5EVOF`K-/ا[Lj߮`dt@ũ"?81e v y!4 _\.@f; [SeTAyh(U4܏;c4Ռ+㎧$N4 3`krj]_oQeM$ڜ] ݓ2WQf2\L5=p7咬F@yKW(d~1C&<tϢg@FT]1 wIv]Yiia776}o^֏ACpۼx?n!oL v9τtn[Ws*}5gR@=@Ld g hz4c9k@멹wR@~Nqݼӷ,Kz3̖MAjf0 KJ8"*"ԭx>d,neG!*iʸEc2gxϠumYpxyԜ@)OpLn>]ǗkTEM%@DF4t&lJG6/Xȸ(D$Ƚ 3)m|(&xPu"GṊ_$ptѹ;o1UKEaq@9jS8N`L(B(նByEɘ)XՠeB\%$ :f?aj9#*K~:95"Z0$L1<Vщ%Dyʉc7kgi쒙E3]d_][&A %O%xFmPdsvQFNsuevlN/GQUc@WC G@&MN[ce1Cvm/)n?=ܖ^.#3)|b;2mQIc¨1+ƅM~9vDIEY4>2`=abEj Lbÿ/)![Ń>X a15d^ ?й&7:DxF,6M؎?t{~? lM]-ؕ. < 01m."t#V4msޑ-yN7p[Y ܿewB| j%:RoE*/e8lQkc~?TEE7YhhBZ$g2Do֮ϔ8 Csxr<5iqb_iG4Е"/occ Z[v?[8wuͫDo<һW1 Lf}J*ֻYnmP7*ʩZBPD*3=5Q@:TS53h'>ȶ@[jtVaӁAu6#XZ_`CHiDlC[*v ܲqcܷ^ML"t&}HKul^)?6M"}aL=鹙\NK[#?'2%/g}?݄!?KJnӯ :є 0ve~{ ψlMaQ<P|:R+"mh#*x) {9U/o?x=i۱ 8Gn?yNfSw9]AC[ALuSa8XkÚw5wÔj;v,&(V*UZ7dwq'A`K O9] [R [çItZވe, L|xpmnIOGW% ;Xj7u[grhP紦ScArk{W\0vt2D'[tYT^ņ35tLRXU:~3-RFʋ%Rœ7=[Q]GZ .bK!HEP\-|Vol`2f8-͡f[8')aLM3)m_Le?nFLE8|<#o<9l`:L+`Ҫ4RdѐҍhM\=\r$k7 3!M+XƐ1N9 >+-{@~DE.M/se[⃙8m0Eao@կi˺<%"NPn(^ZO.'L"r,GqqqOVNY)Qg}H2/%Uy ,]9pVZׄ3H:!s[s$f6s=U,铞\O L][T]7ٵԖ =n\\I<-_/+]Wi~GwT,J46zT[mn5^pƸ)M$HFR$ŞN_3Ud Raz-@"vyIὸ^ߏMakY)>/ӛ ~&j?F5 tp*gߎfl\qF$㺈0),s'iπFa'7Eq*Bx{'I|>o)p^d y*z/ m>tU1rS}ip2P M/#~w93론`7"b m U~=w KbOGCMz ` )fYOBj;,# J_ב_q0G])~*sM;ƙ&,\/tu3 *RWYPp'Jp"͓ZD%3iaWeDoxRgz<X 2WdD.j:ezr&-a]CNWq4W[[pb]CFeє` aMD& ?v"調Dq}pXFr] ȶ1Y\,u2 MDu~X 8`BU u='Aił]y~ulMvV{~ \D(;eE=o}w*<k F b;c/-BIh/DAfIp7Sp6@dLÍx_rhlHc/~u%׀fZO+1̆bBf(v1'vNoPRY~r~49@,xST;qjg_:k^ RY& VXInÔLk#?Qۚ:lpK-&Y-FOE.sVPR5Y[m(`wh9ZgOXr ~ɇD ~r #E9nJ$W~HS;_b:8替G<5Pח޴T֖Nc=:UC(  8kt0cYIffr&Ìv%N6fZO 4CY⚞DC66(:#hbI?AjQ6?*%8|θ}@!7'c>R彖N՛(f1'E?%zv#CMu[dY_4B=K1s2(0XmZf;]۰-% CLU; qH j'/~ho݆.u${(gº!jIDOd= ш9F! ::#B4ȯ /kc9#鸵bsyjgF.9L|x r^W<=A\ &EK_K)6Ȇ'۟MXqa;$ ":N6^^atBY!:,RТ)Y}(GBdq8ﬠfOP|*?\E%tO*_nNmO͜؀eX+j"(3W@#4Gە5{r-GW`3:\\Zބw ӽ# d%R59M}3q]oX6`T#ɦ4 ds8PRPUe^}6MR*ިXoO0Z>)jrO:nwa7QHBܹJ?dkyg@c//)]d# )Mb`w'+ g1v/3nfkHU•o,)*"K igG[=r?Xʙ?"nc8BjI#D/)#Gb=aD>)nfibxPrxr$p hTrlCA]5(=j8DB]hVSӻO zf0jČFl7bi "覚/+Eݷ4_&&)ǭe_DJ$dN\˳,&ؚDm4dvnuBՔt~[e}]l"%7yzH=3M!?~RM'=\N1{Xչ+4o9uB|MSq1q .@rXH,־vT'#AکF{T/t¿2Gwf3# %} ހ*E;Uڂ&)| 蝝̕(6k*BZ>24"RE;$()^ސ\ُ{3釓 qi vPOco6ٲ2vkawWzw,7JinT޼B-=;RRiܛ[_g3c3A)^+sSdV۬Fץw;8XЏ5e"bPfB04'KO;0,]í9*-,rH+vElm- UJ:z_+ {.[v!ъ$"TDf}"OZ% ,, nk>u -]鶃amV]'F!vyKcqTF9 M $1p Zm>q`bbE%o.EEnwx*rض5K6PɃcPZ]RU o2rD5޷ϭQlGHXH5Cyj E;[Esot*7WWŝݹh.ľ56w[߇I׬;@<*r.vj[׾n }\GJ}'C9h}6 ivV>PN;7Ue3Nm?,dlED`jq_+F#k-×=N?9G(dn5Ѭ*%IЇZ2/IEJYnbUoCLu uPOzfq`7+\_Hs(M}&>E9IyLYTC@O(I:6ݦ Um(`6_nQXf9o6CN"3K_Go#_~phd`crIhլ= *cSeL_WkRDyhq毐J3T&>RǷRSASդ=O%|i(#?(eZ<@p~yϳb`n ^"+I)ʴ*fJYDP%cMnZDZ0m*}sZa:ߏZirQ;l1p_L>: Iel],x$H5w!  kmUvh /)یEiE'zc} ͮaj" t5_g7-z[׫ܤjVCeqn8 ^&1+ue&"S8i\۳1B@X cJd@)Fo&DBE׷Φ,>/?huǂ+ֺ]rLݠ6 {s%;,o|+"zLK\kIe삳THMn=Ut ,xac O `(]HBW*@4Aj /?} .$RD^~,s!}  I9#3X@7"޲'TQӴTO#jѷ; s / ߽lCG'R@u(4_jE G$kE:: 19YJNǩNf˔Q.R#$RH kFF}wq -yN>e-jpo>ϙ 0/};N]JlygNbS0@>NF+-HczUMrw DO9 ֢11徔r>h٥iZ~ 3ǩYEĒ&O'yab ZE1a◗r Sjm1UӬrsZCAstq[%Z [:?VP쾁_K2Dj!XϏZ m!:[&%3 [Zķ,p̩h픮f~]_ 6@^vrD4̒u4oTwWO7n ~ءe#08=K|w9+Tm#*׆d:h }O954Nsf%(srPv*.V2@y^dauIo/KZK, )wKǣ'p8Ƚi*~B # P> 1ǖpNV]B.;wap8] ǽh㥘iGj;~gj'Jȵ2Î9anmʎ5 D Z[&'cn ~i'$;g{,*;̳I$I-O0Drb4Eah ]:b'{յ"Vbxn}ϊ]uǐ"3"Y vfBg>i/ifڳcpJ͙;JW,E҃%2 w;%edA-˱9;slDS<Rf*wdL;S>_'dŷ%JD vb!IM"j!hL)Þ19>t (wz뭡3.L[/ C]h( #U \8w,/j^M87E@i XOHVonbz{0Q} X>."Κ'O@LG8uzi7I+ܽe4sEQgTl;y^2hNĐݷs62,b>2-0ph39ĝQr gPPɯ\!󄾔=6c7_:5ˋ_FDӓ1R3}3 )ӌ[R8`Oi ;lNʊǸR Klu}ZyA6 a^"iiSsT"3)Q [\Ä^"GN]B~<T7XG.H8 ÇU|j'. =wo7Z.'&lȜ-KԳnW+縿QՕ =B1J,%v)DMEx|/#Yiۮ`w4g.f d%9trf )nc7ܚgM96,ڢ_ܛrkSi#4I: _gXFeN3ee^qlnQz\"#`bQ9@p]pyk\vW"tt\jkIicpRN^ko|& ƌ tT4tϲjpn1@ nz4;':Il\գSU<ѕSԠ%s]cl\;E :/ȟ`S_qzujSܙ j sBEO-l5b2|nκ}Y h+Pr(vW_? e68Go06ܝH;_J= eVA$H1]Evw fOQrtA\@dW=щ$d>J8HG FP{Ѵ=$RP]rNqL4bqljF#`[>X9{uAM,k`eJ5m69f0EӿJ.;=\+B[%1#(!u+y/+`PǛg'|j/:8_ՐzvªS x?V3T 9U|# .*ښzSin~ M> rmȬpL#IMY)۾:}RTompVaSȞG`e{3zylj~ UoOfk^ZĿkjTڕ`cCY 6;'>*"O됦w>n p?u+DDV0DxY瑼)6GȱO]Ձ!@kpۛ>Sz<"*p؎8yi0L@H1|*IU|k{إUEN"sIR7tn%ԏ$IhmLj+Fy8tuʟ_'"K y6|W$JÙa[=~O/'vv^^)= \94#iD07Io;$קܱ$Bdc;+_A h@55ʜ Y@ywJbԗr}rO쓧<nO7Ӗko2+/>yhM>V  tYa|{Qg I1Isnjs$希Tʎbz9&JrBl`JgGaJӞg]ZD]&Rup&`j_d6wOx,:ۭ /saBAq Sp M2coe0*LnՖnNk5 D!lݜ mؾOVbzU..;U3G^(47lpNvbڻaFlw]6] [!>ƽPnĒ% (<' U׎}/")H/v[kZͷeF'J*G2# gy]=r!`p2ZĆdiA*>QJ?+Zޔg]I;W}@N5ypM]XV$ϥQy3wMmPkLbX`rTdf(:&y `^Ȳ_93w/uU=~`C$jkd6Uma:01xԹ-JBkeIeVJu'?W%/'Am.h"ոxͫ ݿ~\b~0SѻMSDRn;}N֌XԤ&Y;KlPm*y@s%OF9eYgj2 ud3hy 8 ߓnQPB@ 6/N9(]̍mt&$u '1p7_J!6M loX ,T;d嚯JMGrPA ԛݢž'#`Q<~dMВT+a%󳐍 ߇yi٪.UZ-$Y`7$R k.N h_b-H/ZLB9;m8t+w:0yIĄ.5L#~ N A/D1F9]4`RxwL%U5S$"A ͸ `ޠp9<2~?1dv\D*= h/Q&";.z\J)W o~ߗ/DPTTiEx#3`\Hlm8 )g3'q(GonY\S߶ٮ@d sgR=</w-#}_ǵ`Mz/-o\^.":ۅB8X) Iߒ0NHO@KO/ߵO1#CCZh>X@QzwuWŤK.OC%HِsNlsHEIܷ&H8 @S*49XRT,F$҄1*pHAGԝKD[G2wH5Ǚ=ŝwt.[̮ݷP8ՠ+@2È:.&H$GqT gW_ƯJiP0XEX| C7H0ҸӹsF^g&Rupp16SA^ xsA2m2.+Mr[[AFd*>UvHC>h~r@`bO=AL 23d`Zh$πuu(Bq51gsz#B|sy#w}_Bm$'ݼSݱ )&M8 ~%*KIí&^!B6̘>LRzƶ\$ pr ]|"HY\\4? BnɼP:DPojBe-Ip _yJ^Q%W[.0OE R/֮N` J,mX1m2|EPR#:UbsB%jK'eR_Z2yig!q?*p\Ư#qrf+ڄOqCbw]Zl%{NB}I5q(E{R zCpG;?mДZB`Y~ӹLW m7-dE$?d 9qy:ӨAp6*D% b\3eC'@ mx9Q /8ZX%?е?df,%c5*8Ou\~*bA7ͶU1; Չ d Y7+Šc){Z%;.+qoF`(Uݲ`ޱ,Um<ܘJ")&P0C78T1 N@-~X);c=`n9TJQ۝71ӉY[ve)C.nt1hT j=%|ޤuuf0xf@!`}җ8 ʟ41dTu;L *z}A|7!^^C;I@ubu٬y}@>0`i-7ֆ4ДX560%1Ghgߊ"їc-SZ|f;dlgPל=5NTAĪҜUfxѪg "HHr5"*=\@,J U݋"E6*ݞܭ:%7]IQ;Tj(K  ޯ"[*&xi--R]q@A))b(iK@oh[ z0u_u vGq8~Fa]Lw7UZאLS)hO ΥGʐ/s؊cNay/ wJeDs?`UX/y_D#?t*]LfH+tmiݐ[4 "EL]\|KzޮJF8T| :n,sQ_O8*kċgUv Jslz`ι4Gi0XSllxeh-5h:ˊr=S4=M,Ji| JYg1mbL3a:oHv9{Vƀ&>>DhL{yc C:t)7îu6"\S|!LW@P8L' cuӛ5C(7(:dH_ߺg L=?ae*\U'#KMs&T_Xa?.0WF*f F[ೄ|!J9UOF+SrQ?;-,XiULHiq9T 3:GP K>݅nbO 4kQvd2 YĒ1Я|[xd{fQ{0Z;,a1`sK"^&= iFky|˟G'N JnW6-d a_wy%-%[LV( Rୃp0)FA,:?6I~lO6ҞI W~I/.ֿuy{F┢+e2^󽎡DEGh>V%9NnQ@_Ew͔eb* +;#;ǒ=Vjq ,\ADӂˉjF0f9v dG$Й K4E܇fNjT:SmH2m; 'bͮ^Vߵ]4j5z ,s !EꗮFӼ^|wZՕU;۪ J6_jh|r1_)p2Rٌ[ ⬠MԬ~ WѴ}vBwS-}s V;.`-dl?L ބ B 㹋R_z;^`^Lx k[b2u&8ם.2H2ģ^D인emo=c6)7WKGZ3ZzZƈ[dR y*u,*6>|b%d&qq/D쇅Ey#3- uڲ%Բ^ XkiQmZ/r> 7k%Ӛu䂟fgⵌ- -RdK3kIMDߌݻ:oLYTENH{hV !/]p(km:{N(OB5y'QN >qSg55C1`]W-` p5N?U:rRꅚ#owNm5q,% zq'j8d}[]׉8ךA}LT%mE+EP E)^&N#xE.61ejt~:+C$m'Dz󒻥RZ @t=yodSc ?-cŢ*^{㬮HIYW/Itdn٢zA?!"zВwgd[P#@*jJ~N?PwO0N\x2}WT?c"mw2y~m0T&b'%GH{cd'19 8w_YHKZFȪC-/MJ d vT[:\5`xbty ETn+s<ցpY9"Tb6Q xDvbUQ6o 0w z~Qnwp7-,+~|M';B߼<_MjT-.#|$c$.U%CXV+ +؎M>b;)y[.pgU=ʣ)q $q1Sbh[G_q3rYƭL޺]J̀)RyA;˯Hۊ-J"p{MGl"3 0 ,1C i됝|'x F̭LN˝\BGZ-K-sR87q?<nv؋jlӒzi[!mZ >zᢄjT FM־`mGJ^h$+3t8M[8~~k(5t ȲgkSԵ=A'G"Vr[VTdPCᵽw*RfctKEO&-Շ|[ǯ/NݡkZ'Ii3yfXE4'{ %Ad-`co✋7I?UE& g1Mn&yrD#c _Wv*#]5\U z9S+YsQBN/k&bbHj/I4{,<="R8*|/C a1 mAS{n.XrDCiFվԥzKyc%VLF _7wE"GlZmJQ5IYQQ`<8 s`Dnl/@!+ԁ {GR];~^rP\OuYҘէ46+yձ%byGNFqC*؍o@ #`87LF-gA77o$Ct כIb6hqsRq;q9z d d*^:}X5GNB5=6$>:`M2i 3is-))X@3Aw*L +I&%C9Y\?.$bq yh*-K헑"Q*A{KgN[-ۺgyiȆAV 1i"*.9ғ3St-2욇TX [BtVbz 3٧QUXLCKyW _d<Qν^]!Pt:pD5 |S#J?IEx ئf}?{-oDž+Q #z(wAhuQz\$|}dcQ^ln*{.!|}FCf"k0d!-< ,dh T^ zZqWlf_%* kp]v|+ƻ"d\cDz+_ .J^8y"8_݄& w^=S'LЏ)=Ȃa [AŞ#/QK);N\a^kb/'eT{版.__;;`Ԉ6f^01>Yu/l_쌢#3ZVykFZL(y4NlFfaAhj4Lk.cv=qh5~{ou DžH /lpv\C,;-o,)^қ% *#$v}_^R\{O9[BFt Lb :}~8,$A9/BԑEFںT6s;6[;zHlq3Bt%$%iRm$@.X{񤯔sQrڏOM/{Ta$QKֳeeCۆ=LĒ-d}Xټ9BiG:jҷS;yH`c_8o˥cAC#$Uȋr*sms4B[왽<E:) W+ZݘΠjՔ)LLiQι+Ӷg<`/ȩt;Uk=[uÖi]OXbͼh(̋/aW(" _Agpm.:mYjT&!/MךaÚH\ n,R)3?LYFec-PKOkN"k[⍽"^NYnc 8swrAl ,^/W4Ǽg^<.#ځ"Z?'YsYg5I-QiskIve-n|eQSk /r$e nH';+}\4(VIZsb%K BF'\ CPs1ؑԡH@۫«xz!'|2I0O)8u_Q'Ki羚ƇZbIVUm q'P끆 UnK' 9c![ֿOʨ wuS#)[MO{z ]{ihm1yB Fdυ#yafAQZHxȣՠZWtF/;9o޿z>uՔqMɀ !PlR0iEӭ=i`ˊהXq':0%,>Dc6HD0T܈4/_=l>Ţ{7I ~y' ՅdB!k1LK 52~vN|5cjUBȃwV7sdv?ެsKBL,.roʆhCHP^llš5) tYQI5U(C:5XѕW'QXՐu-`-t֜}yL+݈6:DELIgDab`"Tx?%>` QBuh1F$36TdDPlbLn.9moCv 9imr;b,OZz݌ X3IVp5Me ,܏B.mq\6p6%DJ>7)|m˓R"bY)VT._`w.zWnA-]u9IOtAz٪jiSݸ "A38F8*1ܻO91V#kRu4HjBkoy8ޔ?vue=.h$5u4~e?ɉ]fU=F?i⋣z^ЕcBZ ;3\>_!Kـ$_Rғ th&ٷp"m;tgS&\K(f! 7 =,PiF.;BUNhDzPy:L_2vB 4$y$#\Eia@2!pA#fVۙ9}{\7atJϲf_4 ud&Tx l1 ‘Õ7YBxz<3 @ȶvK$Փ$Kĩ-&5(B਷8[q~,esY;/|8$=L) " ?cCxŃ6Z}$6O$[Xe~Pׁ Z=jȥ=^RƴsIŁmD2d8痯mSIݢ&9SegpO`Iz4fqN3"u҂%i q}2mT>rי`2B"1,/2 ЅV 5H,?u݁xY9J3;.b4tnC15D34,~(FsX0#0,R U | cqX)2rLuc5^ #;- }WpȈFqHR;r>!E+s1`v^YxWe$+CR?z#Oz{n&#)ŋH#K~l> &G"X\zi=׎-JaH"sPqsv ӯ=w uf2#.y=X) kyQqZcg胫@a+4g" h뷸>@z4 8;|`qےCi3px/t>=?BVsneު y]<~& xyqmEFX*_j@v9QēL̠)*F8LjWA9=6,ÕE?\z81e-x`[?k؞i*Ys2+C蜤@~@) iw^6)@T=ryMrȊRXQ%{@FÖ%@hG?zjn !H lnpE>p#< קdpG[AT>ɥvUCNu~غh=VC|"03)JGӒYㅟu;Dޡ݁d.h#4']$4,H\ ҳ2XJ/ƤOǿQ9++2z˙vU"}PV&[K-Q=J5&mqq}&E.Yeyچ3 y .7ya풓գI4 :k^/>Y11oZ8jTp +J0-\=+pF Z)Bkrι'-jn)Kۥ膶bW{fhU V禉Xdxiur:|l:?-?7)E[ 1\{E*-egT\1s15 wc%.9\`k[6<m@8qG1И>)UXC !&#chcerެB^|B`sO5r&=}1BIFy]!k /gF Ha&l[ykP,:O|m&%bh]_Ÿ^tZVj39g手'ͽrQX;Fcx9eF7-(z^eya4F!T xN!L2OuD;m]Ta=ږ>(nR7+r9*˰׊?BJ"ϖD$C'"6vVlHͧ]{^"Z9ʻX%cO4Vѳ c[!YTw4;&v\xTEB4w1s85ڸ;WۥDxVy{8:gWZ%2Zp)9exI,^T8xHcҭ}8d%^VBt!I +ўDD+> /v}Uj OGTwyތ>nљt5GZy#~Kyg,!SZHM٘~^]Y*oƑ+#a$'٤f%vO~ k A P 4Tʷn_/jx^Q';nq ,?*,hp}"l;n҆U6 F䌣riI/ #)u>s]A[j+ΔwtP GuH˨,YM,&Ћފ2K=ẗ.z>@'Kn{j SRjxGj {ʢ .0yw'|IPV0@2K׌|AI:kx U.[xT^ld ^:=fʷ[p&}׆cZNgsIlފ!^@LЯC)=ъ/v~\ꪂTr *2&8=8v*d ~q[&>EFb{g:G ֙\*\fzD`-36U`Z(j嫜 S`_@#EShNN~y1:{> "362͚Q7ĨgИTC`SRJ1 XGf9 "IܳЃ ib?.`);~7?SR86uat&6l?!ץu6? oA(adm Tb)P5*a׸:Ӧ̆Z5~Jer~5'v fbH@b^ZwG/_hس*(2nRv㼾/F)YY(_T)xJRE8Y!r]R+  nlFC6xLkGf]oH3؃|XVw褁D? JYJޛ!X=;| M[WJ [~d4!=$|W5(\n_JNݕ? Ё{>id3w<߬mV ^:?+Ne֔]{sZy0g \'DbmrK3'BD Ca4}=I";`eY uo[N OIvFUA.EҥKy@0y'9v a9KSԳb|$ j|-giOvU^oxh Ka~(QoWh=*Sdx_PSOqO-Arot+^o݉e4~f /<208*%. >$Ehsٺؖu9oYRDbG.oFҺM-n-rN6ys{pk&+R20c`ebá *`zix5 2?[T9PBՋVr;=ֶ6}p0AK9R~̢Bh<-FG*i nG9kۧ?MUU/069U>&~ 1~(?xk+u !R>EJ=WەRYţoϑ>U+`sH.j= 1Gh}rHO QBB#eALȌPe%- mZVPet3}`%8($iSq +v'#]@1 ;@\oA-|@ۅX;={|0|`ao$؂juq,R7Q%共f#;M< #q%EۭmA1%6bQN$|]0 h,qp/ "|pNx(~d X9w PV Y* :v5a: Q-H7{:N2.;0^ŭqyݏi͝7ΛVauHMoQ'qf4փ~nz.xjWRLx&%%P~/a~th}nJ8@ᢆ.1lЎ.g BeV  kK_qWE 8{j5 eQCs,_J ry`*跅i=ыhm9g:?jTFx o1)nf(g ZBb6^G;û8 [5 HOMЖTGBl錭G^c`}t6qnٙaUbHU-f% 'v JeANxhn+kj @XGiK=vMkgD-{WSAOf2AJ.YT2M9qS.J!FA&f(fyY2#\e L }9e,`U2,Q=Ψ`eʗ[gID `ّaZŖ2f)c H Q |LoFZ|稌9L;T{Z,\5+woUb ۩)3u"c6*.6ogz2?N$ˡ^Anp|%%$&*|Ҩ@lH(ݵ L褽=/:0WDbt!5k4>bϜD;{&oN ʁ)T| ܷ.\^uA=߯mhh:h:` #N[ÉdiEˌw)WIxny#3R'qi~;x5*w }lYTs#eغϘ|@v^WH ~`&勽u6Uœ4Z')'ȫ5o(*5/.~ l =pΥ2| 6/mGi;:A0;0Q3Oi5Rbq(9^㑢kF}M;k]NJ1M%_aӫY2J0کu7_jjUJZ* ^9fEKZʴ~:iN٬ z$dsTiR`!IV:" akờɓ_aMG9U|(nJ)Az9AM13ݐNǹɨLx%h&%L/ynJ`dmx9|3Ok7_[q˳I='&Rʷ-xFW0V]o RS7InƺjY~:9| SUFׅ+Nlk^W!fZ΢qdhNN=oQ UR1 \g1ݐ&}LJI$ [ kq[{Ox ۯ4/+8c\ƨ#~:O5&}edjg3|x{u;KAӸMPZ#?j 9Kdя+Psܑ#J B oHmX$|ecLlĐhA&m)T!-p`DiX*-Dc49{}Zc .P$r֠֋I\i<*›t^XLqfP қyKo՗}lmyJM$jwBZ.[="o __ tۋCg|uW%FS SR+!"Tpcd>82B>g'1õ<&WF_[9 ^3E䙢ʔquɊ$pղ.͒r#dͺ v= ,^$A' U9G>b3Jup-m8,i ȰwE5AZ'#.@!SS1 A2AvF:P*jB^M}GqRWC:$ MWc2as$?_bw d+J;l=gjpQ8/TI@Ѩd:g1`G%2H&nJI{ո ɉ28L$;!\t-i',)Y;C"MayL,%B $-Z=f['"v1h` oZ+,AU~GMn'wDϡ GҠ;4~G0~IxR·a0Ut?^rl s5=΁#"@[ p##>}zi{x.gIciCPm!J3,6<&OB >"L|,jgTqgϤ3 +jGl/ hM"jW\[N&dZ ZNIc\5Mkl+s&i)|HzB'zOL-$ƌLGR]_`%&?k0D7jy?8LUt3ZK}Pw" iԕ=(b2'@ΞW_څUjZ K|9\r^o;V@Q+HBua8ξ< TeeB:@O{؋.-2oӟTLjt+tQTb$$D^ں7qy!\2D^cw/q<̺0b=ll42bH#pQ,wX85'8vr5 Dy; {}9UEKG}~ʗҩPuχL1ϬM>k} k剖ꂹgR)Y\S?ki9)TnYHNʕТo!SOx蹰Jhp(Js$\`P.2n7]N#{Rʊ.x9gcO,".!E2E,p$;Am!S6߳+Q.$dOWYOѥWtG֡`]S#H]2"VWrO B&-5G1)cób)\Pb%C9j5Uǡ3v$Ɇh4a~i8uP} C Ʉ/XK3`^xoksnMWՙ9nr>K QpZtC۷:",$m#J\)d\mQnQR!JϻCT`F^E3FɃ񲯀ge)`(@l#@8Cx2cDy Ǹ ddi;-hr25m Xp{r(LؔƦFڟ{MܷP*aJvYyqŝobsdOV|9TDS~띁c)I|}!h!"߶6ĈJ{JhK;bKlX om) e;uِ,O^[2I9zIbM3}m; /df}lc*K]"Wxa|B,s 4-Np$&=noZT6>.=ZQf6mCUjp#[ō پD*?Of.(>6e:NLnd05u?E !̠}枒Z-ڄG3Ɂcc˘g6l^v?G)4G }!7TubGk^vlUe"gGI|tJ.!}p5|ΦiO8 9cI`~&'MOSI|w>Ax_&cR+)ajA;y~% ,nI-!XS],vs-g`)D9Eq:f\$BYI^Yk?~l ݄dW[Y;pdT)>ٹTBުk[in(&$XqE'T0:gãh;H{b F/A_y#vZr&0:+Ж"E)ȫ)92I_"tBMes:w W=*e(ж|B2x a*=fE Wh͍Sr/{|z(Ĝ<仲o343w| GJl08" % Ԃ.y&C!vƏ+,`B6F5BJ 5\G]=J0NQ2]ROΟTq7 Yvt6av+8~iGBbEY`\/AǏXOʟ;"c%G`[_SI^28 hUs5QTgW7yj.뭜ͤc, YFxY{8Uh$=C߻Y+|]в%EuP+ۺĎ1_9]9$d -&_K;JYX>@0S8UONQ;V!Q05n zzy[T`l )AoOS+GO:(| F\*JSz 5:7KiB#/3#Xp :K]HVfb=Uۛ+* dx:HjClV0PP?)If*Qj8[W2=of'-"L-(<ڈ*;3w왮a̕|G|@rj8]|95z!RM*eRV~MѾPAq V[e )f+܆·)"RZBV_à԰ʤh_ŋ9lol_./ k6+ZEA'Dh?t9A" Vx &p8?5wm_WP Yq2ÌZs|"۬&oL U7r7^l;M4,tHA⦹}\S.F\o߶b'ۮvߪIqEzZPcwvG_b˔ӂwD$y\%"Tk|+>D8aYG;V* ÔRp45!mn}K=k1\$VfMyU)aLۄzf`ZWxXLZnQ/nl!wҁ]=`W~-߱hCsh#M 5]oWjMsQEk"1e3m@ mH%{4?g>ӭ9euYk]N9; I jo{I+v^˥j.!q3{G9С&sS_{7xBUe3{pATtbOFlvH G? X,~q̮`oH)]!Xs]kd**!$]U"dnƪ\#?$ !lx8ŧ v]2/ivfWkŸ un #Ek=C=sȃ:PW>+ł@<.kن@AazSVť(2x8fҝZ8:?ו-ei 3`2l&U{w'6ni1&Ğ~i3Lfyr Ohw=ÚݺZ&8j^X{`TI  5|<vϻYc7\`RGEڧfOfV.e )X˷a]u~UM {]{b :`n{O NJ^6^L>Ɡ "{/ߖt=oOլ ɦ^yeAle:f]ݽqgΣՏFe ̦p8 3~mݕaP%n>|]>q#YwPO7^p#WGݱX[cN/mUG2<"dUI\ WCi"ĒFa)ijaCԝA6>5 k i9 !7(`x %1q@MJ6`P&Ot&;!6N%)tem8 '_ᇶeUF<8"E^9D+W+Ga&*I`y,Z*.#ҿIT8:tM_pűHu]Nрqc_IYw%*3D,Bb'&Y YD]+%ZϢSp)RZ,4|Č䄒I$U&w#w_rK2O<4,+u]l^Ddؚo!e|KNd!NߡB>bF˥\4ծ{6b]3VXAf'O&kb 8p+T@ud3N~3ᒧ8RJLX;#D 5?J(>{[aS߫%^[ipwJFtsӢ$GKj4юLLw~9̩AA+,Q;wlK/0[ZpH#19eV=ㅜT+\FBf z|qHsVB0+ёjTehZ,b|\U |;쏍/9eb׃`?ƆiD=]6S Z )bC]^_H` xVtY:jmjߘf)k9[֊ ^9jf:%?-Kaǧ5(xlu1e8ި$\M0Jasv/0-ǶO_4.oeT zT9<5c,:WC$5>b>mڿٱRsShG` $kbM YNJufa(^$<ўA_q@>fh_[!4ѳ$}YR:W_He .2O0/}YQ/^gpψcWH-.%uwM!ԆuK 6{iKWsM!Ч03Fv9N6e@(=19#5}XOjR~/QdIIEAqk|C4Iu nљ2X:(S[yhppNC F zdX(ע-MM$j-@/WZGRա]"a[ݑ͈/rrp8FY_cR 5}N+ BCDE#ʑ/d@J5P7[m4g%!/zH[1n:)̀תŭSFC[,V׫B%V waCx D Ls!X8, qص">1K=-\E%uR ! STY3uWc&aC5Hz>HGsU%&~0ӎ1<BO҉^3;{v ARI?G^* oS [!o2/.K% "Oo -""s1lfd}b.߄CxU[+Vb7)BH@R3;J;s|?"Cԧ$ ܩG cWxayg|E Bk#J JC ](_6gRzs9]!z;ƏRpšKHx}TV*$+KV7j3g?.,h6Eae_8%=z҇$S!b Jbb9[Q^:CGNˢx߂a@ƲaD: GC/1BR_Nv}25)ÑUNM=b*ld~2*b1FZU.:U&J`Y2S.(N9TW鹍S^l с?(=١`S޺(cy/ /f7+H _wր4*n]&& /\ NIXНH;]޺t֏a!ЈW NEˤ[$ _Bƀ' ځYHr޴u;x},MQNSQwwTQ%F;=w:o#r{BedWh^nozKrO>H7Bko!Yea:YZ1 K?]^1;:+Q^z]DȫNa Q?x̃$`7VIA '8CX74Q=.]Cٯ7S9teJPVSFקIK_@p7~ÉN'6\zXGC>/ _o@V')Qi˜m'\2.sFG#p4% /?s`Ř-E_m[{(h0TX=ZkF'u]XI)GA:?NͩiU_G*b\*XtNT F߈(3gugoslܻ P L{pY WݨPhⱦbh_0\PT4I̔ $tԂez-og(odXt ld{EXNΰ]>&"[!=ԢJݻ*iX)hX(Exu {tz7'g|xDN^!-%lUYχ6+rU@r%'af _B25QUHOEd"oPEꜦF|K5)*@ĕ&EL.PySΊQ}Qeis<R5;7vJ n:-!mPaI u\1Ww߭T^䠾E=A}f6ADtb $<a :C _ :+=V(IIRgy\h\qyDʡɺMXm,HIyTNņ-mdv l6 XŌnxomrGPzȔD{|cq6'K=y&.)jQ^f(À, h~a+fwܽj\ SR5FgI9r"⴪?G]J sG]xg M|-Z e59?@ɛ^4РZ& hPiIM>]2 .i9sJݎ;銤]"*lO"q>_ӣ `e|g69$V;h]z g$ݱr)0~)|8FKyD*Gy2Д8\zz{j2G1)Wɬs=q$1fMx]ɾ}(򍇤03;[L7A+*5&DI8t~YvGʄ[ttloej:# Q, =ml( T/Sj=|7唂5z鹃;BpPZ6&bA-·I[9>Do6:եIzOwFҠF*LlE@(ɶ;a_ ,nu-nh: ucυyw\I e[<{"cMJD֛W0BQXq'O*Ԁ5f tR{ݹNCU) C,EA9 u_(h =U a\ HOwGbWZ+-Z\E`.\>Yhއ8}y#.O6;EvJ+h{f 27NBؐNe|+Z:oR9o79X0~fNCij{Gv"MPK<ҼK;8hȴ h,)5M|!8ӾM@.R66ӂ@0ĝ]r{a<~ge2ui R@/u|E-̳83Yr-@u*|NV%Oh¢~ ~ke`8-0jl򯕻JxH ?dXA^?X~n*3( 'yS1W;}}MW ]}0YOcF ("[ˁ6zF|1D[vM6#~EZ'P‚O4U ݐ2ۘJH#c,|sHBA^0K7 z׈ʅ]Uv`Bوd@dEr4ݟ_O)Q77;_s܎#|E>?$IH <(ny܆D^ jp樧{D$N@i]yl`k#nNI(AilFJ9݃vv NH[.+8Ё.K00'|rdn ƠE<ô(>Cˡtl%F=ĩ֤A]Lo:Tw[oFy֭Sp$;?IJv,qcVZ\ZKU>\6KdN!H4炃y<,uCs=[F5Ukm(TB n0\+"p H'LLDX썓l\D@?(W/#H*.V@׹9>n-)7ذ,ą ֚Ѕo8 M.*jѐ2,~0^| ʅ<Ա ” e%]27 1?bW?گ`'9J l05|(vY3fDR YF`=SҬ~tDsp2 8K6N$aA"o>} lm̼rnEcI}N] kY4AVrO"j Ѐc)rfWotu 9Rw5.!YR/tLo))<GN0Oפ}o J\+VA)?_X--p3zwH) rg[T_*p҈ݮ4tʘ& :Od3PX[lvZ,ZTjںT]8vB׵Gۿ9 +'gb -30f$:I"5U{ucB;A_F1#\%+6l h5S]~ o̮6lp2ܮ;δfkI阎A8iƻ.veM 59u=H(+hT8[Mсܟ{.uFZzH"4.O<32MFPODuAm|8>feW RJVֿ0FQ0^w}i,^'XrCۃQ!K(dž/i#<oh}u٧o[_dDz Gܣ3Na&ޏ)XE}~3:2oh!z&#^T* 0<2,;G*RRY+FHeT:p;'-2EBpV):o4+~# j"RW!'*X0dYnfq6EZgYv^-~#g}B5lۭn}uBlAYٽAD(q{U>R 8ka8GX`yydFŬ 0lkjJ[Aܱ@#("q4ĔO!jQ/Sa8;P7|m-CpieE`,q-94'v1`p_EYr"}٪1z>TgtI Ffߢ QIvIBn|/.jYSBTg^Y8< g0ӧȪL9 }V,JvPŕ-mg>5OaK[p d^c,)gt(LH6KT.لyŌx,$#=u{R TĦU?a2@GaOg2a$*>L 1ޝ"%l- s)"yN#uz"WIPHV1(mlg Krۨ3#-!ȹqXnQԀ/:c; qMPp^b'ɨDA*n/Cl߾g-@x++i3]`0t0b _ݩ]ue]C)<: ДLDzv=AQ OQ2&ciDT 0.k JŤ ׂv%lPY 8jTT0ߵQntg_1bxc?Z͂ibnDJpB.|mȝ%AXG !6{g،\``+:ꢬ7F5(rd26ɦman~*~j떯 ) :E4#N#)?):.Fy5R p>0 nZk|>—c2Q.jq@EdxM$NV{#zQ'/%s\D/{>{`˻2O=Ji")ʯj*.B3,8xHȽ# @xG Q4IsBn<JS~t¦v𡼧ͶLp8pnD9Z&o/XӡxGC{xԨ$~lH7_mg*j40B+%RB DvKN\(an{X8E{r#%?SC@ FYvXH~wTG2_Z+RD7ȓ3E7i< }3$|̞g]|b;'=X,'SC*ZqWr svKe&53`;Sl5vo%*BlKn@_-7RJw|91C IvGh.%a͠^7,\O8Q"fkV|FT}wzayO0`3?,ÉQ~\ZOS}$}NyP^C雵j{#:A?:ֵeuԨWZ[$G?N8Nj|6PZPoj0'/wH~!7#~-e;T,t N~AyH[^Of]fIS,Z]ArsXM~cje>U}4"e%Y3ulI1| Jhsɵku8i t~p:]܏Yt'Yy'P+$,t]OHTY`kB >):un*j'JHۺjGiF&e&~T83\̲va[zDM*ICEdVI:2:riaINf6=IHǸ ܊NuEk.ؔ|.cQ51hbX"ΩP uA5`Нr%=c4?|o*1qmmͿW)sibEwi '?ILD$H5&L%.E'/fo.qb `R#/UՉ_^<QɏY.v+#8&W_J(?C?ĉ ;Ў%X`KtWcz@%'wZcbM v9+ 8K!ڣ\ JS*&9(4:jk#6*Ɉ][^kpAtBHSXE;/+%xNՋ}u-O#z[ 9 qAKU 3E4y(m+F3o6욊MjY9LNiW3$:Y`Mf|nUrEM`c_-LZHN eո-2͏3nڊNģl2}E:"3T29NCc,O㴤ՐR3h}ۨoEI$ΝqʠM8> O2IQ]6:L c;YC3.i$s삽Hle)Q|H-AKu<^.wd%S,B nNjdE z6"BԶ !R'O? aO~@BpoHO&iIU܆.䠮pY=, ]e8 YrbM ^A2Enp3c!5b/Ԇ40 qdQ̜z (XiZ}ZyH%I[~OMV Pu|:l0ɰ(__._޻sx%59#[lZ2 a]j̪<345A{Cg[ʲ!~%N+,u/<3jr}ۈL4gA9,* Gq܏S.wN)rFKaՃr:a^o,B1-޴"r\eO8"u53d[gހ= 1ް?1go<¡zyTČA<ŧom@X^R?O`) S1; h_5E/3EL7_* r E|KMPRW i Ow:0ݎFΘzie->I>"I#^$bo$+őJɀIhQ_+(dF[2Qi/'0mNPP88Kòt7R>5Y ;}&FM`&n6e|rAu{VEѺM 'R,AW\NONEzEڸT}!Ŗgl489ۊeUβV"QQ+긣mʕc]܌d״cduokN tDCI/mwXMf5電j5CIY ^um|[[˥4jwa #ݓf,IXz&[], B8tf lPaq*ik_[C-m;>q\AvFBYEJ%a?|WW?ڰ+ 1c.Cߖ|IF$ cc0>뗔 iw%to7(Gޑ/ 2}>^FjDF87@S|R#;S;k6&RZ4(DHȂ-L\hі63I>)LBuU= Nm%p QQiz ;5ޔ|HX~X`I$^-Jȝ^]PLXDTP#vG`MHF9h+ߵrsؘlξ*NBlpO TbjH2^jK#4R6a TFIP8E 2<ѴXl ˷1^Ӌ_VX]f4fP:г>i3G)ͻ tuV?ZU,*]2u 8 2wJfKrF" lsD8NLo"0 ,< '+ aZN;rJZ¼ijEŨ՛*E?+1NLEH@rb,bȊl~" ́{ߺV\dJ31XVF 9zgG1̐wiYa".o38z;_/| ]6rm琬 %܄ C kX4悢FY^M]ۀǁ_C ۯ=4fT2À`AigTaa[=|"(TVI 4&Wܝ4)Z/6L#U0]uLCqv'0#B;Rb/Hz-"i,̨0q+!l.#0sbOvoDfNk]CC bXhmcLu܏gOr7hMgB $mOHf&iu13ff_ˤܤl8!@K8l8@h1㧰ґD}=C&pq".@7e D1Gu׹lM#IC2)85HZ BNw䋢 ^>c{5β<$H-3G`mދGܺ ŽG9s>XF2NNjڠ.+B^稡 {D Q?$T\e5ײjs_8R j㨦jO=*-bXS? yl7<9GLc ywbY|;cuc-`ˇѫFq*2EVќ$c:IIA*[ǁ9ΈU1|n-`pmIֿΣwq+seX '"ޠKޮJ@aT,w+Կu.b !$ĝc^-T~`C6QS55Xn&$'0+<B4aI\Uq41{]m%rjM ! ,3J"l81(Ewul6:4&"I)^*c][C|Ta +RObK]@IۻS{D (R ;ܠHGϘNPOèFp+PyF:,Uԑbef1M& vĢ彟F!1 ٢,<|ChjnDAI7lڗ"61$.S%YCOԟEאNvJ)C\\ vaǺZS;~)h(2$ƶu{I d[k/ZdޞsiY>d2x#}0Hg|$?xu׏$kq8jdeOdĭD7?3C_p8G;o.9-7HE0Wǝ}t1].JAKng@\4$f;L_\K ΐ.mu<6ԝ=mh {g<][rIפۮ'_",T#a?yq ~)|pNWP˅, 4pBœ={Pp fI5.ھQ8`VtX@c20hM m ?^U5ngQB5I Wi{T vȡY+3G+ǕL"]~174vZYv X!K v~ONTH/dYT6")>[|Ӷbc٢u [Јk .[NkN~?Ō VbX1YZdԯG:d:} t__1D@u%S$kړNL%Hv~abK2BXwqFFD-Xa/LԭOѭT0.yzzio Nz3n @)*)-O)|aP Uk^}ZG-(zK+7OoŠ /y1re]$x>פp:] XݧRd5Q!3L-jU=e.>Wi(N56TJnȇ\fV+%-mZ?7 JMI/jQiݧd [Z^ZrAi8Pf ڌ^ዎY@M;u=v9^}iݜ?L+ⅩQto+z%ȥ&w:VqOMn;CS!@j|G*qΐ"Lim2##Vhqo^.C{4lq!nAܮ/_Vj;$#Jj $4 $>wpSӴU QP-m6Vs%k @5ګRHe7ۃAg ] & <}wq.?RVqmLtO~ ˽6v1.$bGQ|U ܩ4UC:\MIUܜ3rGrVqvNjbFMusb(Z 8LB;u`D5cmVG|e3ͩG|طwU"|\kQ[6]o%Voii:(is/UxhXmsa8mtrAPSi*J+wOvAN'[ N 0K4z1qCf ?ZyS6Yw5?"j|C8aje|ݡ  5Vϓ0ٝy69Xqib&l;l+>+@܀ѩ+1#r@s62m 6R|O̵)!CnjPl{ϲm\o%U1H 3l+QD=D7 EdUEHф,ߧO7_Tˈm/P9[+&@PE:V*ෞzM.v޲5-k1IXx?AɴR+n0nБ悲ͬA!cл][}m}_a#RenI6銑{vaNZQ4My#+t*2ndf_JiN, ~!)72xxP $Oe* הJެү(Fm7ċFH<+\6Ipk8lƑRrRz*ӈa0sUdǘou ;^PHT((֥ψ:Nr뉝oc5=1*LzStRT\J@;xH0ZY܋&shFU2Nbb}] ђJEBz.ohVk`Z_%_a WN1*˄1(4(7el2knHĴ=T1Cm5)'(|%Raui]"5X:*C3d?zzioA^ s敿ww[A]S+- Gi} ٻ$R|(ғ,u=Z&W)3!=.Nw54xZc *( S-YIt_D aW+nw7E eŁ4$,m,[Ut%W ޏZMϷ o?Kns`Ӄ s]QQ'ˊ_sP(X TFcuHf kFũS9l2wbS8ɅC[I>q[, z4F`^v bF_<6^(i"oZ]I2pL3S* @DH1bO[̅i@1_sb1y |\x ھ1rKR5--B~jN\:#{Xn#`2z'EVIzZT%<*K%hVCǰ M_4tIf»8"6Ae{I)f}ǫ̶ݷyV!yNg7I<%3}+0ES~Q^q5ii\^ )ٯTstRUc?M{)u;oi P0 pSi&(s\I}J߳~z- g.!Р *5 ~K[$u*٬8A3w̲#_@]4RnGێ= #臓oZSsr_˓̂j63 愖m֊`k\D]URh%Z <\,+ܣL #;\;|a#VB:>K_)rghXGTeD-ا[i )kv]}ETpjO,˥%ĕF DDRu#5]"ZXPUHhrgPgc &80紷#87'IB h#|E Dz\!^|Â4Bԇ3+;:EOiFzUh8lZbX ./߹EZq.ծ8/daBFɑSy5Ɔn=͚y؈h ms<}G#kMdZ{A"pG}~! t~#O=7HdJDShmQp6P%+i nhcW^i;&"֍;lǪ;>HgӦ/WnLrt|m'*+ -- Xv3V=-C2֛pՌ-4_Y\,G63}U۵cT!ݑZ* Dž=7}&[/M"hMkDH+w:elTDV%VP"B(i6b$C.I2Sc4 QG`[~uk03`PcF59_-ȹ3 QH݁,)94S0Ekg9g{ }]۾tglgE(g :%fBTkf<6ӓhn 1960bRz#wr=Z i)Jq3MpR{ȟjeӭYq=D={6>5/1qG#7 ݹ=tñ5M%P:hC7s+q'jRPQP:]U&=N͟kE_[ p@j/ ;4٤_h<]_~T@&#dw`j8HxǂQF zK hA84H6\LŗlFb|,4[nxs0ӷ&+Cz㏸G"oFɍpMA~'׫xHwjx M$oGێl3O%w/R)IAgDeOY^:9. o %XcІl 3*pKdtlLN+";\HDlCPn?5T7, :ʻw_7Y1ZMuaL3ffiNȹ|3-R~;Phyjz5 DrYvaZ$wQO?c%LD~z;]E.!Ξ\%I8uk3Z3# 6c9jLp-7Q@R| _V!rG)@5Ϸ5Z9FSB@-ࡊWq&1樢d}ʵhc퍗AUa6zc@n9̥D,i$+]{q $&jN /[u=2s!*<\/|k#5vaxА,Db`tzfD`cT\ 6jQk׌5r[$(?ٯ83UTrLQM5rStUs7#Flhq3lE-YNCD*rt4Ɓ\&J\˵S;ͻ܄bغŬ_3Jꤻ4y}ye|y_kO4@jvĆ{~9w:9Z~y *8paWb.Ҁz]؈ƴԠ?#@fR]LKUDPxesKT姄$$^SN%bWGMT]J_ew -I{D=QTiOzW{%ĢF2̤n gߩR(Yrq.22Cq|,N2[ }{cn p>Zҭz !'-r̠*ŌOqְBt (@ 8VXP{yC(tBOMThk7dNr5J}.5SVMc-úU,@n"w܉=Z>7QѶĒmz3A[%5JH@ P'ԣp`nj:*I} ͌X~`(t ==dlƵpO{"vq;IgM+"MzȸJ1u8j1XَQ^u3Es=,c߱sZ{Y% jn,ҏ̆1zMM ;nFH1N2꟒Yeã'w tsa֝yMʝ#ؕ}vJvpR˯^T;٤[ɫ &bk3$NvjET[Η jN3ao'|K[YFM hT;vP'W0~8RډTA ?1ai385_ojuK1+6\\.:Eʩ;D6&Tԯ7:M;eo6wl*34*QahpG`TQ'6 XS)Ap+y 1$#ٞgUr"6cukh6BϩRfWVXlDeq\X1'y7U [NRmK6]Mɾ-v-3!NljElFO579_uXC&3f|T =A[|4ڗu\( U1^&.]C.fPgE4As[Y nA0(Z3sD1ϫ<$Sm8s-.\VtX=8{xOc B_l(1΄(bYHܾw(J>I!mv 5Pfo /.j8?IPi)[P4o FN%s@0Ѩ=|._פ2BbˉãVW=Vgdn_:m!dV;P)*>ID#u:ƚv?FVOztt 9k`9?Tɭ; Z 7e%93,(5tz?DXЭ8HK(#^S8=Zi\Vꕡmڔ,Nպ AE=OьM94>~#KL+EzC.!u!%慺B⾀ߤJZv,h(iIUm@ ehtuWάZ/tpVxI /35;#Ffx&~5vg4!5p--I.72{]]wvgwpj6oL^~ 2j8 WdF\&jKh@,aDuo ǧpjOD?v) 2jKy٪DY!V Kî}ACeqzzگ c2ƆQtEasD1عJiwoH̚ۆ]@ś8IX]T2VCȭ r R\W 4WٿUa1 <:oǺMb:(WP XpGBŏǁɂ7@ Zt#7`h@2Ut|%+$au)%#cwmWwR;8ϮtxtO" Hzɺ)fHy>o鿉J)}RR9I_ߝPX%LμL`rM /LW{pyvj r9"L;9Zxp;U/tʚ#OYN5\gyOM.ha=Mz@x^,<Zi !6k?GJ>lH`c5&=ɔVh刅0`tPs-\eI-SM"keK߳VXUcz>TdG i#.-pϒ(1;Kӿq ( Xm%D6XPX F6~9VdZ.(= 3X'P."K͕rY9o[hNܯ|# (9l=09ѵ7,u`:{HS˚TH`fkbZ7O >:Tۤ}t2Ih;nޕq52xY-X̮I2$_.8=%<5yzP%sUYN x =hne~n4N@CJe-̯6C>ۂ} @ڱHKLAQ_1}՜EXq$l[84|Bx=I;semW8V$M{4Be}DNt^=ڏh. cRf܁z 5ybҷ̲5 q-wԼX/Gگ@kśH{MSN PrSYG~H?7kE0yK!RI9 tw7b. bOW jM qDGk8ud/^DiH(Eڌl3Cq"̨S H8~7 \8p,\h7=T jǚA4Ŏb5t"c h_R{`iv::dL;ykA " tfׂm{>2v-p)|o1}F0MsBExW DYZ)~=K->U0 DkGzQbD1)gZ@ ,6-p>xs0I{'@̃sKaab~Y1m@18˳LqO7& tOU/3-+R/VZTS|Q`R\Twy3PwJIɆ+d_<<"ax|>rInt_7+}‡e$mi?wuusY`$ٶGOva;IiqG*?axαT.!miوif?O.n)WX'a9|\.jMuTH4qYh[q[ޢ6 PTJ7><P`I,.E$t` SZԫw*FzD"mda݅aZϬ8IX#_2۠qge<2phѷ<|M'`W ]saAKKGdeB-xwwӐXTz|Ʊ*H`aB .(wĂ#&||@l&S vU`)=i˘TLH-v%)4Oy ?^L bpau-ĠNX Mx-X!MJ[s2 {d\L9[ S;D]Dvғ g=k ZOXuoOǿ>dtwS1:% vաPB:AG/nIK)$`$zNFW.*}*EV_2$&;P.|,[!;3-y Q锤_j2{[ޓ69]Ǟ8om*X9 ta=ٖG"CaMYZuXI6 rqD\LavIPHq~zȝAo;۩=m_iyA'qqmW v?V~ M},5ލˊ]5 M7][v7 \DHg5V8hV \j (@pl?!EhN6|e.FK4>92^@kv༲}6)bC$tqn8] O!|sF׷N]=wܘ- %$%}Dg - @ —UttSy:1b `r8wN9A|D=maoQ> p/㷵?ۑZKvuMixtSe%9^G*E:QWvhwop@k-gC0ۥep?W j> Ww)X~o݁12,l}[v5⃱ )5XwX{ nu]?\Y /ܡN\]~fp]Աnq_MՏwOg ޢE\qD±oh l^YP9ڈ;q+dpJ4@|14_<*Y }Kx^VZk VM4]^P* Mx;6OyS997)0|xVdIGlS Ӗ`՟}=z[4ɼE*"\~Yxc}{do[G9aˁ'o 1qaWCຼԱY{bSJļe;@~EaZND'ECJ@F.38_)+O6˩ňp:`-۬|0r-0lc!|&p?du-krr/̓XSzX^Ʈc;Va2~N$5'Z>s[Y tp۝u/ a%)&e@LwtKs^[ԥ@zR<;#az;/fkҏR#ߊODh-9UX+a 33fXg*aXX||)?3+!_#ئ^5û[CPp`gHqvySGˆ!,K\>gW'07hVPH(T'u{m! T#tMMV){N7zS[bحsyߋu&$ ` <*N%V_!Agw@~_0N~NגlsY':.B_8ʐtYl.2 `-#vApzk|1V#UB=}A{5M9ٶVNI`ڧ 1}aօ͏Dԣɾm^pG5=<(uVh83Zo?T=Gq.Q@VSm 6QO݌b h"4gbӪ$RnZ TG B~gԷEڼ x Xg/uNоK^e,C(YfZy mn6߼SG'b* %lI[WQAgpi,o>JIl)bOyވ9+A؍c]F*vf+o@'?%#x4 uta΅KR[Kݙ|~8beNjqa PUvgSFт('e`-B;S[=0PAɫY{cQ;É/`Id,m{++$Og \7Ŗ&ߨjO'1?a(4[3GK92Jͻ^ Eeq*`Ǿ m7Q}CIlBO_JɁJ]fp=0O5H 7(ǿa#J7z *(2 t 8/!D2=ˑ fءR뮑'KJ0IՒv|5zʐjQqC$14WeFbz4%^Us2M6fnQHt:;Kth乯Xg9?) XfRpQ!FզCk ~DžѶ|LA@j(*b}>7TT6">JꥼN~hBhCq~1hV{)WMcXQkr;=q-HaTv<`C//s>7 s6{Ff!n;AD!Q~(LQgSJ <\LARᱲTU$l#+:mZ_/ dI8@K@4B;DϔYZ5h h\r.^xwcK?=YP{JZEmfV^y! )DHsefst @=AX搇sx 8*`9zu>,ë,A[J(MʮXXu vß1njWͳ22`[zDn 嬿8LUSSa:.u^;&cj7$1zcGۘ)ڧ7bzӕ_MϗW(ΎFBF1'ehUH*P_>)*᳚ i"e畄-7,FXЋzs'Nʫ0uOsXg}[Rȍ3К6O ݬDlhv1s%s~T;<7{[sO@tD[Aiܶi:xk }0wt#.f6$s˴Q@c5$s&dq<:{؜U$DLexKɭHG:ꊍ Ew ddQk6R!g+x01LJӯߛ aFF? όa9"~x 8" JmnzgmDSJ%ܻ#} ln pZ;'(ȕhAf0ίd(A1az^{bU6"Ml13o#L{ )ą٤%*[!J{vxnEI0ZXTRIǁ>G;RId H㔿lҹTB K0bj '??SNyD"BU.26dQ*fB]dfGnqyCҺ$SV(½[C^1ȝ[& Q)ÿ%*;hA7hSggα,cWE, fG W $xwI RxT9~jΥ)벹ш@f!*fgyE.Nz`0UF}?#+R! 6I]qaDASP:|M-ݺ'Ŀxhœ.j₉}霻OJrﱧU'QtVY[3dؙLJZ)5o4|ąz~ȁMKT2kX91NCwx5)1 vej5Z&%+TO+`Q( q> 2 js.h!YSM34DvZ&$?,] I)!s-G#NCGŮ1E'U 繀#]){NGѴI?.HXxWFTP# c!-}mѢfҜlm4~q?!J"6&Qrdl!ήV4_=X?! JY?ZoW 4YFĤ`hxwWMH<"fn"U49S1S6u5te_MI'] Y ó7P܋ә-=F,vH> F&`Lsk 2+L-hSӪ<Ϣ|U"/=FsZl!E'Lgh½ ƔݯA+×@HXxIZn&yp(~ya3.w/ W0mLLvKOd}8Tʁ+=DT*Sk,l{5yB2Rd恪2𒴞T-d6tlJ2Pc'=m n8<VpfRfjtO3#eR9B%3d}ipMl;XUMZUmQf)GAXEKEt,~ M5%u|Ǘ4X[.; a2ךB\motn,][Ԩ) ` -ː'[PDk_azQdv̔_%~+7< OQ5Uk9`ddzNT2~d|݂bdDrXIȊwVĜn]VaH`UOK`6<6me vׅ&\IE5lӑ .4[KP~jK _U7gq}u>*×"1ZIe8#kK7| {ҥJMafץLeN@T/(xAJH\jsa?955A[*%V3IyIɣQY}qfUu 8L:8X./NSy[RU 7o- 8yƷkJ%WJ)uE/kBx` )ٿӄ:v~T]H_E! q{?MgNgCX;d1ُC97fp0žapr̅C[(qg-etO>Oiy >W FVD $|N m^Y f;9 NJOsrۯWA C9Т8WxY:)P2O^|)m*Z1rÀ>@"}<)lV3EVx_>^suX(tL|B-r#\PP7Q,y% B8|uA΁"y/@Ǟ$pwrakuxPp+fIJ*) iY }s\=FrNC˧iKÚI1frX{ $ٺf焐8iX0aW=#Zsz_ $[dث_a5mο(~YK1NK8+Ix'6aMi) Q)SY7W'a)>^^%QX:5~ 8'>mEDrR}Y&r{N+HoA3Gj$4ѱ2>qJe3BXBrՃnQH\wzɅc74gH*rMW%{6$='>G ݊1^?pɝH6=96 $Ŷ;6a=J΍YN+ǚc7ibK{4&:^V&ҫ"?Y݀DSfjhX{luƸȇ]j瞹QmX)gH7Z&&,LߩrLDv'a7.%C8G5FУ\郩%.-H]n1q9OqSp`7ЫYȸs'v[tfF+NkgWˊL4fc8q'EAЈ9ܞʮʳTX`>3Jo QtSĻ/h 1]V Pߒm{o6/'7"[ ۰2YG~"O-,E貽iX, bŬŶ44geHL775j~䄌ao*ձg@ݿ0G]=p)#ԟUaUz+r.چ6i_^nVAnSvTy]f<[I=:'} W.Eߣ+.(ёĐ|U%J?V)z=RG}PV:HdADlV^/,˻JKA#jҝMv)Ds: x]ʟ~,?+ۇVЉ ^8Jo6iՃtr.)OQ10!#b);`%1)  Er+o\v(y%rBz.侭 )nl &I@VL1fo*1xpTcO8BTC-;-|E9Gz-,/9qu(\+#N-\Zz\ +?HJ1h뱭:S%a ե \ViJS[Ba19rBfVf&+ ]oUtΉ0 QVx?2tWv' +Fywyyk0cޫZ˩SȟpAHd1t1Kw"0/Q/'2QzPϐlbt[YbN |=zOpbU߷R۸3ϗ9G,0q$qck}>Jl_ަ1/3x7 jqxI[v oܯى?S$aeUQQOejQ?G}Kz,sK4ިGH n{ Soƀ;6y21OSivdN!ںbl *ég+,cX>,o_9Io-wy25aWd,QJMi:v\\(ZS!.#~HϮ0hjPټpw>&K* "$/uNE"fWZw2M-+id _WvAM:M3L{[v[P%?rkhcSv]T쩪}BDȩpfuN;8>!ƺe\/*BbJA2$1y(y2, %+x`"2,D"7A]TUo>٘ @LRs^~ё#3F66yXߓ1{H|(6wɓ)x&9afɰKW/%%* .Rr6A̚}jrߊZW֊a! ݿ:JU;u:/Ei}!˛\GV׸lTǮ2@5FCKAx %E@ yR@x5jQ7M(L}1['!C2R ǟ\lF8 ~2`zYnS$ҧ6+@K oh[h/$Hö5[β໖ 9,se hN9r*u"҅Y#$=mj[ fz1役#]W!oiM!Qt$WnUq#poLy GO}r=#}6dʆ׌2G'|m]g[ 4qV^`c\ Eҳe!g$jcu.iy#LNBgCEɤ* s) VZe``lyRid*ueu୹Fz'dȥ7h`>n-囷H,@5pT a=!GZQl8p)!#V_==lh{7Nh_ɸՅ o&y&[Cu:w5Q_qJm(hp|͒C,,4DHS<Ti2@WAh6+"1RXUWzcvI/:o^z/H `"GBK3F5Q>\3)0`3^M,djߌ "Uw}?ǷQ6 tqpO`\"@KE2rSqEyk!'iυEY98D X2[( <pfѬK#g#`v.&7HғJ:߁~k$1=Oېg/]j;&4hս^}Sq sqqZ'@%oåry#9YvQG`.Lө^UQC-84t7޸ 0y9upfprvu,ƚ]f}zN!h2P`:e^dY1{_,2Q[0 \VNyNa. p8ޒ.hwNAKVa0'y[TX}߼wݢ!7HrvFuO~[jQ> VZGc]QOA0NG7#8i/ҏ}=@H>R'SH ?B\o,fG†NʻrGEwD"$dW /|>mK~?2_;J N9kɶYb&4?T2PLjo-:!nǒuJْDmb%NrsIwD:6\&D~n0gF T s!̥YC.%O4dܐx>m|s!p]egȇjfڣþP2y7`N1 5_\fYPxʔ2`0֫.B; [a3.nHȣ̂P ƀ9WB"Ck˫Y?S F)%~KxBS4QGZhZ?[moN5]$_E zJ l$f04R6uh{Lg:kP#G;@fge1'= 7s۽`NВddvac e !(4Hj*Pti"H _͠ M[IJdˆVUqH:r;6݀&f,Op0@28 엨 )G'3zB5̖ n+T_W8Q"0JĞOOYq~;/C-A񭾮V&=?% )Q@fa3qr#(`$]*JsmES:^}0g02X̮%*)}istIL1$'7_H;Q 0K}-䠌eGv4]ﯱ-0Ѭ^(^1Ke#?'I4F}w*{y_]Y !o+ikxE]V.[nk{{K ];@9Km/}|rgQo\LVsJFS6rEP [w.k,?)8pD!N䪧gB4.X6ݹ&Ͼz'@$o5aq`x/ykJ՜I< {X`7> ɵnY"9K q^3y"-)ֺ V͗6imbLfCi&Ͱp*Bd%l ]\~?uZ>dm EF|O%օ]ΌoU=u8\#V'eoN-~]<.ѷuMں4VCPJW#ž5x,+bj &m]΍jG ?&x4K,Bu0R`:Xyc#jzw.-8]`fƛaT) hWDcX+¨8.(17F f˵Z??"HlQaNM/@YxqXh%{/^I4*̣anrJߞ(ޚD%bNr-"T2 k&YY0UVmt Djݾ#>Vd1DAHytЬC3r}^ok?VO:akL,(W.pr!bxA,1ϳ/>GB2c-?/C<$"s)UN/scaЯfhUbL:lMx?r}qY5Rb>5zY&Oyڍ9=댂B37Ix)=;ŞB~hkAW!i&tzpSݶYv)͛)dQDhS.Lw.)||'vL'poU=O34BcA X!Q;91|&Z$?[XU)E"f+$r,zu춓n?nLp/^ռ4 *j;C|{׀mo AT0­0(_R3ρ7}t>b:AۚG%`&ɼ/"XF},"7@uCk󭹜MH_Fgbù gSHۓ,J2ホ&}Q&?8@ 4I<ȁs,V0P*0k7lB$;l?Few" >B}ZUf$7?h92ٵ# -QEEXD'tKjb`a O{`|  =Θ:` nv|tbx=$*}YqWfCb͊Zm^}dmtpj#L̖gh{ֵ G>?"`ج8e*1&h)\_9cTboD_8 <9?g"|#\+ Y,mʍaI7Cc+fڭLnc;r#DYVf¨bhJ?e;-9@#jWܙWUKr^dK(1 UI qauz[7|߬"b]Y [(DҺ73r'r_ 6x)a Yi-exx c9 I0!,tpퟜB^op#WqF4l_O^[Q׏ia[K VЍQ}J& 9' :[k^6EvV`ucmV'&f݋ſ#h\;TN?pimE"kHɮ \walDlZRs,C G=O-`ђDH*fAL'lD?;KZ]AޛOm@A&lLǼ)S +I0?4'G asgCI\7|6*j.ɬ xȵ5Riy?G¦{*V^ .Xk,=/O q)NF jLwhRUu:ppŦMxtc_έё|v|whRgX &h&E{-Qz^`X5mP?pU/;q<5ЬQ #R蛐>zK뵐L"==S Џ~ \*- m3 l+0\ b@rNBq#MZf0vU3]:[u87Q%2ꅧN~?5$x%6N>O%BBa&GBExPSmoJiL&P7 F7>n@j3DLО.;#B$ 6 Cq\5˂6 5[=wZIB$hՙD_sI p[L@{7-ߒ`]EG!S?CŠ3TCeSxNk;d(3^ԜfJ34W;00jTS1' ֔HR(R6u8-hMſ8/,W9u;^eԪJ%2ZD%Xȵ5f}X^u> ¿sKUI?iҰq!8U5XKvr)9(`.>T d~igX`ibQJ2#ɟ V1p Z~D{/,Vp-?k,͊*P#$ ZpOfl-o0b-ca#,uҗ a8!{W7?GD%ɒ3UM>Y"m_=[ۿiL8RÊnvW@`Fo2 bV\\ꝟxK(0˭lnVi|ŏ"8iK;ʗky|hB"-ϼֵ3>6ܹ)6L|)nEb yg9-3W|.c~6R2;/YF;m3.-$֫ӍO<>_@|%\aNx sQ$; F 陀_Z *s m h糬Wd){CQy=5Z }l e&w7 ɍaϒ FЭ!ygecqj |Kf!>~+} sі:9m\^Dnۣ:>8F]C 0E1KqMI,8ݬy'^@ٲSB3,3P642jRXFLk)jπi6t8f"s1 yQ`yOX{#ʶ<5LLd?$\tdׅq~ c|jb}3W}_P8| .c6T"@C3`8ADtA֓or@)PE/E5B`2HЈ DzC^لT4(ݟEH}KS*t.U5'aјSx ԗY$.BK?zo=^PJkp ."jք*DkRPJ^bx=_EJ"^,cToIFaT~JpĎzVY d^oRr褁liT&xJuga܎ԃQm#K)5 +>0:GԆ9P <*٢H3dstF3!VoG  mo1U.ӗ]iFǙ׵86ҏHm;QŌ(ـ"Z5~xpU{ I-|;Lqa`3uooYbܤ󳅽mPqx,j? h[{r24>C+ᄙ^Qh%K\"5&W)/Z9E;kuoFau Q,5!^EifOq ʴiiVV랓L04_B8iyG%L%uK 5(}V&bJEv#zԾ6v}GQ2e͢v=K4 M^ȠE!\[A%I,.Dq MNFv1<3?֪>&y06KØ !}dd)wA=b>;x@tep6!5Բڨ/h!zAvBՓ|7?Z diOҖ,IP,xEܩ}օ"0 \6+I`@epFgS0NP+KvMNE~R, i,?f(dzAI`aPɨ,05/\})F/4<ʡOȯGX_syh1;qn!9FMdM&};;YH3M߅FU a k Sce]{NJƬa`Q޵Sa;:PQ9/w_%3GC6Oﳝf&lcݨ6@d$|M73WXIZ}{p)uHV֩`y\_&aJOK yl\PIݹT$LA14.D .΂sSh4MO^Fq^BzmY{}i] [ z]ՏMbU^_S{"x:~ Ҍz˥b^1CF]ļ*gh9u">ADs֒>b~kG1Muy /+X'6v+?_ϼ u j ynˊc9x^D)/5N9@e|BB(YpyQO2#~OcY€cʵ:!>7(gG݀8klrTXH[[mHr2D#&kCWX*Mq-hGd|Cx{G!g'O"|xbJ1T7_6_644 Na6@`,z"ԉ/@ekR%95 ^M:|b t]9M oj`5xvv.Fۻ+bUrs jUkZfhbBfsUBZCݿ=P|}NfyLMUU0. ( POX.feh,1qY0J5$GΣL2 &S#"voQv$xI2]5r 8b&x=ܭ敶o>0G! s)2S$ Җb[WxQ #7= o:^9I [N_[xߎΒ> ꜀SOy7%I!ƖմѼ[wJٖ8Fx*~rb=&JdQcsZySV[,qw_!ׯ8Mi%PID 8EFS?^:Ew S zcق?U5se|K5fԘ \6r.]Q'lu~+/ǖ|tل5({/J1*If5X;ˤku3 ɨ&2x\ q!zɭkʇLcqHCk{8&u< 9Q?d;} y@uA$,R 7@ԇ}^%sѵ0![(Lt97mX*=Rr,)@J.3Z M̮c/&/MF{/(a˷\Ŋ;ovTA27 \Wq$*r asՋ 5yJؑ2t1fC :> A;Q1FI隈o?-z]V&$T4u&ky0I`.tnU*S$|-#Dx  9ݴWq&t wDEx%03Yz5˙5$I-Ryʗɡ"j 6GY+ r9f5\˃x}2R,ki4> AjCqXI\]Q z*:PQd^_lah ~QA"wQp:;7KCْ#$g45iy4y9RBYaaAQ)KE8|,z IYMk, ooۖNʓfxw!ChtC@a=(&V6@u~pXv#~wӻZv Gp'^__ynv)[25ҨK|ZIml5gNSCs̹ o`Li),6k"cQ+0T$l"b=#^ y?RU #lmPƧ !aM# u@IoшTmrt=Jz.,n^1­֜y04>0EzӉO*B(`Jreu9<ο),` V9hP$ Y|x6zUs];O%`h%&u]h({^}Z4T&biWSZmf75 {'D1~|3q׹\ *[:a"py4'Ujr~髻W%6 WR6]gfÿvvgfЂ6I(@lB-( U8U"Ȇ`W:ıL{Msz$l'(J= B̩0X>G Gn JD}Ks3 .*'Jqfti+oGQE +}1ǕU@2390f AG>,;í(.G{AYQY1+D^B:% ɀ2wGnQMGZD$ Y)[d1P;謭#@-%-YޚK]WG{؞[W^ ItX@xHPgCXo!8fTneXŎA.;镞Txr.ڊrJTDZ|>= 4CU=Ͼ3L-p=ѧ9UavxqP{>&ً^/=༭x2)GlQOa[zp+Ff&Wg dx9n xƦJ3l س3TF{ZAgF'Eo.pw'/8!(OWύ:w)hwaEWq =CģL6]?14H'& WaUޫ}Kjg7&?a`>k;p/uQ&fVm Juhr7dޜp*ŷdt+[C[ ^3geeANm{LE'1ڔ- /^ư ,cBҒh7pɠcT"dÞ u@̢e!+lWH8; [~/C Ew\2R4g{A47ۯIśFLȇ Z+w1XH U2pUg^cJ'0_:(E:.4ʹ##Cbz7"ѨD+6ëJa fX ֑)N=',Izxr|Mw .`(M<ξA6䨪ڽayn[XLEl//V\ iQ3˯XF)}+'[p/ς(@5;nW<*3K[]<6q!s 9\R s:t_[)dë&@L̃Ѧpm*ddHYRt'U` Kx&l d>CRۦK um{-Y:B`@G+Dg.XgCj^}ew ::$3`}h/B,ZBoU͙Kԙ%uTC9Pg-suCc 49>Z,8}tnwlZHA?߽8N_֭}l !3iϹ,Ruopp<2!π4Vab7J(ڞ2 ^ X:4|<,~Q ]R!2dz>ڔ%yKU Zޥ z+b ~M8|{Vji i;.ISM!LJi}z (LS; {U?-Z%(+6kMxߎo3EoX [/*I)raW=%)-,g9D7M|E3{(.FЮ˄`7,ڱ'ou'3IRv[rɾc/@ $0t~t>wx |8ܘD@i-2y*R?Y X]}Z:'d{Mֈgo x3JS4 sDv4eJJ Rvǡ}r=͙U ɑ2zt%E翠3t䡀2]m#Y,w6¡ ٬:a$X|ٓ,3%l('vN7L1x9c)88;KVzf6Վб~pl@ ^讨*9Ʒ­ yUf{*b( _@ > -%qr2WXǤH0.Z '͑լ?gp0x(ޢb\զ*%cOUο/Ns9l!82r'lOk[ VOTF' )k)suV]5 )Ύ4|9 XYUHZ7~c_w;3p6U҇E3 ~YXQ㓍<Ā3c-7PUysQM^K(s ;HPC0n~]]!."Ek0%+f^ؿI{ն6ׯ^%9OZfJC`X\t8¸4l1`1A#@y3ړGDtսy ZAwRYm>ԈLBs^DᐐzX֦f~Z~o[pf ԿxPꔼ^M =le?3@)aL9V4;COY |J+h.^fy._4G_Zk6t3&Zӽ7%B8Q0[lcgb7QasTXi}Z\M$fg H#Az=PU.Z&  ((PXXK\!bj[HmGߔ(. @e[AƔUn/ /^tI?)pu&dz JqL uu놆s3*azHƒ7Nl.!'~ Ë'MNl>Q: #qYKvĨ{%j}oBA C S=Cvqwӯ2{2܆7Ni?pr >̊ .Ϧ7O}jTckA({z~`I[6YNi hF~0_ v0ew/+:M6ݍ9{ĈK;r%^%76@3g;`tGK~mdݳilCen~,+PM楕n<?QF/8JKg>K^YO7^{HDӇ++y-i4 f1WدmT@t5 ]hUߺUhO?w'Cc@ M aڜ'3F"}xvXև`ִkޒʪy2Xk~w_Q}FBa@3DIaom"By%9J"e |g|8Җ?B$WƯv+9>{^; v#VN%I ǺDx׽Z9nu{~,6˳xpXLX>{{f]QaNW0=xurWx4 1haO ƅtCӎ,PmH!kx xnSHi)!XSy/:qOY>_B=,xڡ_wXANl)1K|9%Fg6ZφK3Fw ݂@ eH`o=0]zTė9 {#z d1Y]cB{"֮ޅnW =D_@D5ӄow:`c-KaLrsܑ_ " WƘba.MRXl׆t,Nt-CVԱ,hs~+Wk16_Z0=:Ry5AeB'Y^ y5f|j:ױPFFHOö5u6NȾx'0r/1r;eE+TSZ٫jË-w_AѱWȒy; P5%Njhf\ v}]Z0pk(#QY'o`iV!nr3+y8''mV_ztڠS]dta-]^nyh7m[k!eYP&`w;b|Q*%hnJ!zeDTg>0p&қkCV `Y(KUҕ; gMSJԬg]SPv>psn Zcp{%q_MO<3vkUӳ~FhF`/[ f"mGtſ_aLm3ӢհMؘzT8nD $gي %R3CF  +"}9nF{vG{61o!4(g^L0x>TGxp?s:  rkv}st)_/=gəbp IZPF3-Q7,1M,{5U4 }6{ug+n1kgLBc:J ֜o><\`v9\źs@pqCR^UAhF|TĤ[͇^42OM:lϙMo>62MBeUTSQR!|4U|s]4$f9xV[1qћiJ:bBU`2X:TK-/Tkgױ*&['!89L&0aC:D4\80fMWvE<7/k]`OS>yQpvͦ3ҥѿ}&nk K\Jv!.ߊ)p_=457x1J[~`)uٿ/CLRNNZ7'"S>ͨFI@'H?6ZEqZo#؛!R0FH8l LET-!.]sPܷ1/Pǽv"U% ǰiW 3m9re 4ߋ7q4z hdw&<V(EC個zUE;4O48G:*cC/jZ9]GycZx3r{5m(/䜕>@w=aHbl0M=RAƻ8n8Sb;5Q~[< *_{w-Swy t&C̋l)'(:31 ׌@~'FݵU;ug-GS3$J#OCe\?E'CP#}djL8 k@1ɷȺ0JEVb4pl f~ kwuB;kF7NH ɯ'N@ʩZx0y#8wࡾ] `{':d4 dū7UH^D\c4 F(c{R廒WX0 @;gϹ^ǸpdVjwN}pVmwk nyHd*u|p w~ݲnQtҴySip‚+>Ջ$O"c#(Oq`3 ,qFV]=޻i m*\`TCf_3mb̸晴|g$ufYwQpo'Lr?r*bt#3n̷Qʌ`YShwn'!u3xP<kFڭYuQҥ&x)TiD]=D8g9x84)|aٱK%zN~W6f?luE Jvi`W/'chu )|2 S1n||le3ʱ4@\1`Og^;%s0|=R1U^1E)1z$yTm wNk^"?$n]Wʃv'j` ʿY/Wdw&5MZe!T2奘/|J"krVFN LsF ЯnRiuc̽r=kP) Lofݧg$r@((MPExNx|`<.$S_{?Έm[V6vK[{4o1h'K<%=iuÓ,|/u<ü ԿF!K2 c'|+H-~)F\pF*chU(vP&%Rl&4dCPV:gM`ɂiw@W8F͑FZ/ +޷#%'yQ ]qP ^T-d߷3Fɞ.-nVm]]+uVĒ믓, dO/ީ}, E+MOsC*rDE|KTVTlEDmd(ioKJ/ g/C2^G1 d#R jkM7 ~M& $HX}U-iV>CL|ɩT~^4onq& RZkRBۅYu%l'wx{5"?#SW8TlZ"$ς0;Ejh5?;udvmsY?;;zVaW8ad_ׯK1Zwݼtd$)R/_ĺpjhhY;’"HS ;R-U.َ6y2u>lv;bʎ4~ю/Cf>ZHp-9|VX4j:PhGw(w)B81zE%3 R57ffsƀZWNNbf2"jEV93;˟-oE_pW3%ͦj @0q,wLt.羦ѽH2r4 Da(ZZPhLNX+"?X~pTz's}N}Dj LӍv q#ٴ3|:)zϚz㊡,p ȊE"oҸڵճބ/; fPd@\adVH37{vf4@nAb ĀO(^̼rSZAcx#tʝ0دGPC)-s(رq+F_UJOJ "+}ɻ1#5CJ ·[ 2κGJ#@cR p8a,KDĭEʔo'JZ0$wSP`5\H@JKDht&V6{F ]7 K%-#^!m\~,<ڭ2e&4jmd p k~NjtH~ˊ}tݶӲˢċUZߛub"2TB:E . Yf_kB=ZͰ*>?uk_ʏ]f CkX3ak'"fzt=2!`q2$"(`;hNPPaR@P$oQa8 dyG FGƛeI̼ȨI@16k'\dlMC'A5|g>0Y[ޮCRuw,E~^20AX8hcd ?wZF6A~yO/’+%Mc>fإF NZ-UnN3P2p"^% xpuSW8RXE45n9}<2PG rd@EXaQc2lpë% H}w4rw:[ 嬃&wn]u}V=@{Iow[_Mԕ*=dYj <bw3G×}! % 4Gj^q[[R{TʳfqgdJmiش 3 'lW_07`YSAw #qA}gQ϶K*`-ž`Xn̮fvq"gla:ҧ1؜q{ Dw"cfh NGuF޸TG p/ Pa 8~-F JL-BY3l 4mNBG9_NF'xا0 zF`YaՕzaF)oO%O0okLECmh~js5S ks2!Z2Ι6O;@wbPJ9aE\L0`rLK~x08,N?W<7T;& `k# 3KĖ^ӂwqeThh 뀠z_@xhx:(8^9C9˗ w 򗃫;PW;zP:'.O[xצaE+>;By#c-Ca㌙Qg>u[Z~ru_xv{ 7̱g ?xB%a !eZp"_#!pLC=߫gE#YI,ՊZmlmmܿ^yd尲u&B.&[7z>܍疬.O֋_p<㎛>3VD$VR>ЉiG@īg Wђ ir5 5J zV;w!8Rzƣ e[!~WVuhfXbHdFݖUU͗sNd_qf@n<$8NI|GĵJ``kpԛEohnx WZHm)gsŰFh Oݴvl)T)/W:x 덯b6'F#s]duz9u?3Y: 8+}{S-DMUQ|ZK\XC]ȊXfEO͒ v-`.fcNsǿaFYP풳%`y#4M%%D7//Mف0u-:(=5#|`d {u:-?BoѫR|D Py{9Oc=$Z_{͸ŧb^:R?l O{7l4 60{)c#*Y0N|[c&zr &$PC|jSj5_Ary, V\QJ:EnU0Ú1%ȵ*L{+_DĿh@BORKm ;3:^t&).@xA2j;6rرcgDO7hѩ UjN=G >E.zM`tiiY#E^hQyAYAoIuѴ4!}puhU96olI&I= c^&4h\0 ~"AHD*h?-L!aqfuqGp+^ǥ wιdHF`Xd$>]QJ^=e"Z-~׳ᴟ+|Ո΅ӐRN/]b EY&b~i׃怮+ 6e{$,Ļ4 H%tߦ2>y:F% .Ci$uRw SL (;# &r7M,Y9nrRRvvz].rBX@ܣ!_+1njr53|d#o+pY9Y5; 'Ӵ>  t$IarlE,%d|;(" a ׶i8J $31K {Y /SN#t~4f9E.r`Vi/gzK/Q_ Ja՚gxvR'@z1np_DcmlZ]:u%Gg+ Mv]dxy C`4T{n-v(zOOXi(jII,=XK | R觙l Cn̔a/-T|Z]c'߻ U!V2JKD nY4~A4sƉ$ 5񌟒{pտ)oc/"&U4,ҡmdpAJ=yP9TQ P{榰R Gwi'> (cXLE?!]8GŨu3me2YQD.cKYBE›re%П=*T%/h${̃n2t7}U#v&.T{XbI8Q ҒÏۓ3X ޠKT*BL,gC gLBGM{)m6ZB}cH ɝU:kBSjĉ_֦8Gxf)P4>ߔS2c=dxacWa ]( ྽wx zBKw,߄06(ũR^BTEPٖEP *]2V5sJ8:f< o9X>5zu{m,ّ\xRqdל^ !O@)a_R ,vGnhg[trjGpe*Bj56P.o; `z@֖$#" 13 O>JI-uEhR1N=OB{!(Z/[7 8jp21.1Zc*&"~*$/z-p[į9^㰖d3T4QH${C M3#Xh//˿)8y t<y)[K܆=O5{vu1J6GF <5@L$~:(^9%|5\Š`<-ak0 $}GJׇs2~c.cgaBΛ=rw? x3/v.Lv{0|W&>6}r-ɊLJaP 2iAih=KP>n`' .DBQb`R8>2ngW$(S "QploV-J\4^o;RI]tnQOwb q)M[ Me %w˪6AdSr .;F)o·niԨ4^ig8w*ݶ6X|Ñx~@iZ]yH%/6:0w9Ysrcܳ$q³ }\+_ Y̡봇O9"n|Od(,bKnIޯG:,̌U0fhѥ>mbŽ8KjdK8J ULD $&\ L{CiPu^P**zP&>SEiIR/|4 -ݞMjO7 |P'A  iAarH:k!eZKUzEdʎի5qV<3oPL41:hֲ+qd)` 綑Q>sͅ.eMveVz1<NH۳*70Y%FzYF"fX⧪VB)4'ǀze.&ǵ/IQeT*=4Nol7~C1@SD˳-5(&xna3/ޅJp}]Hy)L߰M IaĀctVRl9,`Tz6W~Xf#M۱&A+>_ƷX#NQQҹ?xkcUquR-M=6#ϙholÅ{ A(vy-U%C9l[*qOWRV9Β]Ph-FM76gh3Q}8+QNt< щ, 1.K+VŽv(Ƞz~g-5'M;urPlN Nsrmsn'8Ų~aQH,dZ~acg״q>G N忿hRcl>/$| i5Æ ~ wR桦̶ba_9ZXqavo_!"_+YexQ$Cdć~v~W˛jMn RktG%eĽV;n}&:JDSól@aO׋7PjN7o焺 &Pp4>˟>q!T%PFD_uُEJU krMOs[.;ڳgF!bw8eݨ.{L_6_^_ lKFLx5B0CJze[KPCg)uۓC5wjl>V;9`\nzӸH[] }N_Gg("B}E&npo+};zx K"lѩ@c6&sSTPdLrUhhۍ-÷┹o8Eq;(Q;T3(XN% }ȳRsTmz߮ek%rIoy*Pj q G|HM=v%* {p*ѽ.o\.޹Rd!s*S1gAgyZ"n9>>%-;`Lj@ce 7ZB)Sgƕ}c ˦y7C-Iڌ1pYT4H_G7ߤsdb(c-#lR.8''7 XGAW別K.Upn2Lb\\5Dewf 2u㮣|g\3S_ODŝ Só]KR~$pӡ!Pߒ"瞗3l|-jD|8ڧRZ E>~YJy׫HR|.[+ŻQ2(!n| BGǰňPcVהY 3mw3vm kh ch4Nx8u>-4y̶ZQ~|S|ݽ7 Ճ`bNW.xd}3^-|@MGG^q_h£M`g$”*v8mmtG 4:yh=pAquc&lJX&-kJ¶n3 D礅X)nY@#cNս&S븈l1l&îvs-9"3zubskXHbx#N.o* Wj+:G%+\I{yډ㙎R߻2"r" ?K>l&TQK˥dۇ%2e?UxWCv A+*Qyفd3mQEtm1}{ *+?h`[+[}xdZHMv~;!Beh&_ FŕnF5HEHQDg1mLO(x:?It9Ԉo,):#"3䆝'eƅ$OUب @q55FCQ_0y `ȜO\|)![=U{^z.ګL8R%rpdNE,XD"لݻ܎n|2p4Ӹ5rE8~<2#ޅ/P  JbcMѯ}g"MXlO{.x[>rϾ0:7p)*$3~ /0Z PjX;S݇n_+uŃd I4l~N-qR9}.&wU|sXq~iqm3T蕟|gMT]3}ga{ӋQۿKg2.zh4CPrn޽)Ō/so97BYo:Ɏ `b _ԯ~1ׅ9ε[TSu|@SoJAek4SÏ#%T=$yOCޅ['tgAT}FE! b8pfvlל Mm)Nm܏3IeգÁS9*D ma}/WzY7.q*2:Ș')8M1ݎ(#7P U?'{-U5J5k) (:M ?Odj2U(fniRW.4͗i3.n;$AECC|Mï#!ڶX*LC-T`eM)YoYQJd\PY㾘!꯮a+݂e7Bvv[&!O( bܫ -SMj܆s '7ԒהWJt ȓ`ǍfÖc~5.Ҳ/*\F8TlHӺ OfjlW?qosQ h܏3c# GP 7M!~H433vق+\o<Вz!u0G grl4wUQ2{*KQ ZsUCQX$k:R+[m4qʼ3U孁 T* RQn }=ڞm`ДzhKoϔe{9+!RkJC9#i!{SJ+ڼ(hÖǮY\M9ݣ;5ڹ`n:8^JwIT(P~4g03.hnJ%ke^t堢pk3ҜW/%fjܤ幒bg4x&ew컃F}5fue JXghR Sxb[2.˼ v} glZŶLTJܾ$ wb,5^LV5 $0 COJyրe-j֐j:ANޱA,1Ŗ N}@+݀r"VyCș 6$&+W(eh蒺]劐R?Ǣ{xachB; [rNF,lX"Dn'{SR[ω;I39]ұYI2>/QG\h>O?T4+݉Rh=؀#%FǞaCO'`qnyh_=6 Q,'`ɚP>#V6/Xsp𿭓JY:Pb 8fրl[іgX`\g;eцC NicXҤ>vXXx!cZBе7JمJaOҁ~?̇TΤ6]%..=&=a_rՇO5r|yڗ~2"xQQ;Z Psn|]&C~we ںnzdľzd]-8:i0f6F8P-L i~y'cχYDd##AeU֠|^Y~ol 0*EMS!Op: kFC,%C5= n3[9VF 0kA\''p5 ZؖOӨO'kp\SS/>~.Ϟ>/Yܒ+N;_+t52+=|!f7e"Xw~f.\8@q' 'EG2NWZf"EsN~Nώ9}&'򿵚"$0r mM5QR?5* n,r ^햄MWN ^H6O敧:x{txؽr~#pa{~ UG}Z%cϖꈳgY;\ûvBi3LP'{@:lM/݌ ?v+ dv,K| G#Y= $3Pn&َPxΑ\!5yĔoS\|L ~HMc(!t)x^ֲȏe%:_UWP5ג?ā1{ +ڢ2 /x+^dkM+%ie>:`ؾxk RBE6\1461U>}|+tρ>aD?vO` `xI=E'6MEs>Luj`4Sl+ީ+7 U}q[Mp вFcoGWDI5:4IAel2KȢ[fUTI_;bYZUHݽV9t E2BRk/gYjZ"Gx/.t8j+GCޛ|@6JG׀򱊮q uG~BD.NzIHw:ܡ>kpN&7R)N6Ѿ@gLf Ï$T(;SMG"Ti.)T6 2{ B'Nʧ9쐣pg|Q +T'҆DG+)0 Ғrm7̒= ?Qq_1 P bjF5 5?DzGtĽc_(T{ $&_:UG9} ȹx.I;Br<%jQk]dБ 3 lNIl|'?cn7%o߽R4.V_F\&S&#Ւ8*Bh´LQz1Nw]VEDimVHȌ=thr"AY7}wGѾ#" $u)01$ 9`o+Ѩm!(3.^su3\- ]J7(*RՓ*Sab._HQ;a9 YbXWOi:BMN0^axǮOnۺ}DZ vx>;|qD r{f3> V_ˆF]uQ!.h]e"քP&E*T "0Ŵ-,nbבQ+I4QaOH$1&y#KS[)Pz28>US-iN,!ܖ[:˧5xN{'F딲dmYEU*i%Vv{UALwtV C鷊NB0I/ۀ_?Fe;0J\嵟V#0vFat|Ь6 ž1;NL&f,(ЈaHNPA1x ̾]r܃@?D'V T-"5(+`9_w{<(`ry!q8;21 @is?[%9Wkd=o!t%cCaB߾dRډd 4Ăq6o+R*^FYABDqZ5?A'T2r k*\?tg_bg-;K0z6(fc 66E an!}zSzna 9F9=ĉCZ `j*Cbx#3ڦwW^+?,q)ckX@ZAʠ#D" #??xQV\LM8 ZqA[J"G,#0Ƭ7M +@>![;~!f28 -frpi*طʹ鈂bygglo o*"1 zUګ~īHU["Qdnh啑 (6RGc-:$&nȯ!+ڋ`hҏm naiԂ܎kl i3cauM#H0$}TII 57&)h1 iER{!FkIT)(tT(34[pT;-"4N{(`Rh% ƮWI8aRpgE B\òCǪuIYV.UAӈ[#ƑX@D1G0E"* J/`12AT7G zN(ǂvC*g*pU4:<?ēļg,x,23VS_#0yk/-|~Op2]A>Q ;ٺ 1z_FX^3dFv8VM@B7_ !7Ii7N=op5~2 x W:I3s(%֭|ܓi_}lxR Ch0X#1:,u z } y .LVA*t(ӎ* ] %u p 'Qᄞ5Uq7 3y8jfmɟ|~%mH ;?+LNp'?lY?V&(m7^q{jO=k! %-@h{7ĐPRϩp$?km^麛us6Wh{ZTS\N 3T/5ˇ~I#;f@OgF,*'lӤmٺ1yoJb8*DJY?z-k.'f\՗adM9{3y/lz33ѶpLAL88"cfD(d,< >;B7Ku;)36SLƶSs* 7dn"s5)fT F>b !k"1m$ QE w몷멻EV!{jWy#`~Ҥ5Cg7JCEjDNW.Ȣs v  ҋ?lHs"f3sЈO*!OlhQ Ù-s'8 –FaRV? p|tޓ%lAh܂hk!MUvԅVh76^ZOw~[Of!>3 i_0B-] \euɹQ :~M٢|>Gx]]d)w Q6pwIYJ Ҩ>N6gR'V}@4Ac^\v dbAS515Mnv2pPw#%q2Vb#3Iń,4?U5(3b#I È;NXrm8k87a%@| XY|0(vnC\M& 9{Tڊ9B?%DB>1 .B8/tQ!xmq,Zt.8)ӛ8oKKAr#Qe4ח %z K-- "/fs E®fwHfPI6ȁ_*H˛~xuk~V,QԀ%1rLj(\BSzn1`[x*U_HylCvX ER>iy8պE={EϓOsRkt~k{,?i!#[m ?23:πߨ=l:pVPW Q8 1"a?wcߟA( I(n I;B[5 Eu1v˱[mgosc j(?(I1(@/3DiEއL;FdȱyJ0x*!iBPNi m60p G}T[d2TkbMH2"sWޘ:~_)0Ʃ|b{0PQ63}ةp r8",rNXWLcU# (;)3DuTġZAT ;%!QZMq:CRO)NοhlU_f Ē)9zܘtFvXq(64wiuF 58{[@w<1.$ȸ 0Wvt1Dz3.Q`ט9CҼYf6VހF]q$;l"絆gS3yg9/,ʯ_lcbF3U[x/qQWl|c30g|gp{ N^챓ӧ!ju ^'5.GcB6OjN8'H!69"r=h_&T>KnدZ6yW#ɳozxi~lL ;tɃ@v%:t| G!:i0f`Q(B58N7TJyXa)ʋ0s׾T&i^-ŤL0Ȥr"xoY?J-V0'2K׉ñlTλ<1B((C;:k@-ۑ?#,*qOU?>fm`Ҡ`>T0X-Cg?  (S܉E=J Y^/LDh9ЭgXf+"+5˨[ƒ5> *zK-(*gn=p7_~7ѝgYƣSA2uZ 8 fc?r_h-3.fB>}x hu%D,&MU'f Gz2{9fb/8NCQKfI7v(.W_#7FBs/jvܷuW=sO3:uP.PXǢW4#zt!==ˉw`A3%tTqٽhgrGɱ4y,'Sɜapd *H-|XMDFߨ[ynK-w`IX/Ъ(q/{ \sDX(XGTe02o-Ņm5MW8P-Wa5)4Hl'G'{zi:1"RS@Ϫ#GVˀ~ %u͗V7Ta/i"@m[h t'S{ jWS0Ӎ?)!il?ݻf fm͢%McK7҂X?azYm)1,HrU'ݝSQk׾-er"J{VڝQA~y*8i Hs m 29οV>z+h ؅l|mXP`.T+7#Jy͘$2b(4n3-ru TZ=u#o{z٧B20-HR K>^%gȗЙ/͂6>i5G4Kظ<&uh)!*b\" Ex1|f%r0ehMfb+i׷P -ӅjSh=<آJ[|;5 _`-\J$seC,tIlc>|jZزAQ֝Omr|So+x@T((STzLqs{Þ %z5T́ 6<}`xB-zk0w;ZO CüX/nMĎ33 uo[ ZLG9͵`$)A`2/䈑L hF)q>#(('QȻD7YJY6 1c%pnv q[p7k+@]T&Q!.oWz033f*:XHmDRɊo촚Zp^Τ)D';0ܼPY `іŝQm= sY4U<'0]l,2K.xo؃{j;;Z?c]<=sh⺚ХUV{օ̫sz@vWYt+KRݖ6~8l\,Z("//sӎZ\ '9}Z= vh@N PߏX v 8Gr|wL 6E[т7-=?[rd X g30,*e?M>q$Pݶ7R!3A{ouO1 v/r\bcy'|NB;2[s*C#\ '=_gW<ɨ3FϥE aNVWjIrNm/?-eE+I9IA)n"TsGrQVb}cRR /Y14+ u=}:k>j~ ;mLM(oģ(?71>cXO|ItCxhgz:NɄ8dʬHi* GǧKO&0 IB rTU8e;[& v 1Jb\^‚ct73H pcR hMI?D1,Ƴ&?EO=x )LW+b_Y b@N,Tk;fw? ~NxWYK|^.a@2j(29avs"uzcHsqE!BpOB'o--|ni@ۅۨS-a 7Yt2*fi0ܷCL@P=.Ιc3(A# EtЊia>#׀QÔMuLljӏʏZ+'0kA]0=U; _j8lGiU}޺xN`84:>v7OB 'B$k/ʶ#=%|;?\%#WT@/|ևmEo:T;DQfTFX|;yCXD8\{2af>"/+l;҂t^/Ox| *.7W9R7CXF @ES,2l9ʩCُ+)}nf3 /*m9 bh\'J9 )> E255bÓCkQ:>~c5o| d 4G>:R#ODw|"Vqbl5&0]hFK3xs,6E hXzv 5%^;; ??(oj @̼؇ l|n3r5|6w-T N,if}+7aI1xK55!RM f 3:2aZkaeVgj= PiMS%E+a$F ^-,X7UO\U 밐YPV):Ξg/?L BtWbŵV?4"ϷYpõV{B]DFdwSC`!*PCE1ffhnW f~x:/R@?EDj˃)X!eK$cTҧ+fM#_J֥ zHq\&i10pu--'EúNʉOVca&_Vk2\B@__5T@ ͣ2"S,hd^zO)냋˹Kf,E;dZ5JED꯫E` >T炁k6u:&5!7Qύ۽9UH!P1fKHKOԬiY%p1j]>lc N;?4w( zOWmB P2رHB0F*/roJ~yު^#ES8 ҮpN.kLIyl-tg'14:ksU:r&gX˃QY$JkI~.R} қ6h;XLp솥  7E2*w}5b4*Uخ"E`S$ Ud^y3cET~P1u.![k LHU_R5~©]/#9!#e4#@I_t|>_^M`wr%5srCԿ}ిCm C_wesdn2S[kZ,J= D^H׉%3 ךNb N’w>O;ݕ f"jp/-!pqe5hocs{Dp T]z&7JַW O 4-%\sV\=M)7jmlqv֩kt'J 5d4!H@wdtZf6DkDZseG |w|;Ol+DCR/~8M' z]bP6&bP@V^yRO3若-jh?NX0^Բ`J*7u4ڢ3 07~;pw$緭D׶6Gԕ dަW8eB=p#KrXk@T s/m'd"(6yϑE"Sӵ-\]XS;JPW"8t k '&NeSY\<>Jk֣-,L^TQQ7yۜ>l!`,6́~0 :f)Ty14t=7̮CXE *هLZ+ }fƘ16hRȝ3. dt5g5 [06Z7-Тf0WdͅSKή_QB_srqyr]av[8asr6e1d+=CE2:yr~/n(P^أ zzd6!` ]." BKb][q⃢Gqq <=[MP^iPsBl̫ NPW-NKZ|K{5P؄^BD"nٍﴶ1|^WO%t*`A]3͔ւi^b/˻wN J|^nIj[97^UY{="2>!Oo\dgq5E!' CUSjMt%ZIw˵UNŽ躒, ̴yzr'u&/'( 䤽Zt̠Epބנ9:HnFʂLM9Yym,3g_n7B,XOk< DcF973O\#Kk! XKЧ+qOtoTcG?dtp/ZIy/;q~Tszjӷr7OAjCGu2%CFM[Xǔ|K.Je ?31.V0Kj]\S}~!}Y0ę `#jg,B:Mw{T{BTe Ua'3&:ks.}1 uϑ*}vc!nLzDzT%e8{{}D~B3 g\nM^{;?Me6qDwoY=9 "ڂ6>"YیsZ:Ww jDoZV8NFVDZ[Cڦ1PV/öoVtbS\^k"gB>)`M4<0}ZG˔뮅l_?`{8^tFl0Z׊[$ ί`G.?w;;: ukAʟьnw4{WCQ{T (ɜ=PWif?6Cq d!%9bJbSO44iPzdo0ۢ @Yw~XC-34M)_NY1Q؊\* Vpu2A6ͦZ=>."ln>5KΆ5t^:}Uxr09C9eeן#vAx)5 l˩ $M ܵz VEXYt_&Zp.@F |8|tݍQ!3a=7di_Atg RdJRPBh"x X"sq6J\2.- *'y<Wbhrq Jx$mΧWik3VQM()%ޕ } Di?%!dGz,>o:?Ѝڜo {%W8g̕D<.~E:R| @ N2c&%;?޴9Uvi]bA8Ke^d2Qg7AvC>#s25P+xnr?9j(, Yd&PI%oɏǶmҋ?Db`JV)Xʬ7:>P7h0Oɨ]s3K %ϲ/hr=39&Q(N+<,;GiV9lHgV {hK~'&&0S~$S" ˞uC{$ r3ݬzka#M\f\퇏hfȠ.  < :b:s@BTm?1͹t"WA_ևB`}|\A"e5^mAA2=qp\-J$Օ o56pX&?z -xWDZ1u~(cZI!ry̸킬.o`:E ;uL t_\0aX0(a͓aq]\He#A郙8(W^y>F2`3TOKWdȀSMbք+GgPI0p6;MZGJϒ\]|BU|{S?i=s+R@L>wm_3˶y4m)f/x"йiyerǎQ!={&|xk][0觙%?" k)+)AFkAퟨgح''Das: M`qkmCN m)cs:)A/;4M&g0pcYm ;|aOzW=~o H ܲ*+*{TqXNUЮ>GsT68C )cta:8ƚ8٭0E.JqF,&(LĶ 8^T-O%o "K [>+jmsc-23!5kV#+-*(!c`ȍR&7pǫ:ib߬ d4RW_nãuPHT>Mm|?p1xU8_i56la񘚁ke>Ӂ;bA^%AT|KQÁyo S*(5FQQF8 ]IV4b[>-N@eQxj6s*L3*:ڲ:Z˦gc0̶C@uNV.e\|'3yp}vn{SGj9Eg紜16+==䓛mEd-ɬ } ]J4j)TAV|]Gg[hrX=Y/uJ/2I]Go˾톥H@L@1!:G3:Gg 0B<5:c6'l4 QTe[DHö V̷<ܔ!֬7yqE;JصT}< 82jvNe%>q{rn!(u5v$?P+%gC,-XVfVXu/ y4 YݯI~`ZVk9O"VE?]"ctx#2z 0;{<Ų"dd9]1e[FrɁ2֧*8gt:  Vg`NqAP9ǂ/rY!1c3M?Ot=kCTإC~E PoPՉzӗz"WtI fI~@SnkȚ"C`$l !dk`~Y:L/j)sǾ49ǍOzpLG2K"0/裫zcxn}G25KPK`R 0t4-(| L-!0^edk5@~ӓЍN!O{1Q7-Ȯbc9ːhҊ{/yE1B&΀={y3_pğCI<- _BKZp&EA 1lhCiCԚit<@eiќ_D0!3/ƌ!Wq0ϡ֏Qrm~~P'IGpU#;<&b!. Vdx+fP00W w`;PH,ԖJJD;LX`d\& 9C]a174/c|Lψ@T SJEUj+ըŠ p#׍;\G:=[{b ܘgH\Ӱj%@?jC.)ҟV #.N6fx8Bm( 7'm1SqDOr< XPy,?ErJɆɧz)^uy2ą;jLr3搓닦lWVsHӦ·le:ЁARw5306z2&Z54&Qd3xwY3w ۖBS0YWe1Sh+"pS 2d=Z[d0w>G)`b>IVN0RKzrBGhHaĆ®7ɍU9CP>.9@TPMg˕7*Q G5 ώ VCϬIc@|3 4 )-4^O7'Zw0NpHZl,zk&D>C녹tve6w3&/I^v 70DHh$["FbRao ԦsILu,&}K[6V^\yLb DB!Y)1evgH}~;¯K_:uEϸ/':am.ŅoX?~ ׌8)ji |IMm|"(.vpI>ۜ8 eCҒ ds]\#Z rrێ *{?!\P7oSSjFxCۂ lܫ2ͅ.)#Wʄr%ń \M8iNPaA:s#% {_;d-_uH'HM;QR6aR!GS$FdOdo>~$'>W^z0z "Y?Çoao?~F_=ٔ1&E5pmӥHft%&(%cn\k*Y0E+xFE6P\rHO-ٴեN| =JAj;h :'x),y]ɫdEI7V{)_k+K=R+g@!N0!<.5m0+C fj2_Qpf?0H-Flp7,,aȝ_h"Ր{fUNԬˆ\eRF7Mgd슕XEU !dM{@d3}hf7XRW)HbqLwbDlmi ~,5q899H].XtՒHACF?49v.rƺqEy`wЪ ifLR^}R 1߅dž={fjt9uZ5~ۼŹdZQHTe0?jv ,pW -#*\[!_&q/ys·Y[]??,XujK3]Rsy323Ϡ[kt@I)N|/ۥ [^D]ԅp`(G~-J{9hB)}P8BdbC/~yJ.E~lKrوJsйtDQbĵ8Yqr략dD:{XGf$ >[P+.fQ*yYn^AA< ?(hFwnc`W*l 0ҭ3y]ryq+6@qr c]RM+JY5eفGMrΣẽկMiBx}OMGϗuܫw/`(D<1rARFH~$Q'Z ܲJs10f9@}pķ]Yk!i=m{sxbhg2ToUb@ZXoDP[ܥGCJXKaIl˖&srx);\tp T_Z@MM'lW>|yUŬi@$S0*9Dk@yw'5異ے鈙I{ҫ{::q%-,@]&wq<;?uGo {IVpg2SAI{vx8_.V*q^JOV>0Ng`-냴:SOG''_'McL%տ {"$dTB;5F#8l573 VBG;b^۹R,Idjb\KC#: ߣolz,~39Ippܣ#_͞t ]N-ry7౶`&qq$E Rr_Kjp7:G:[_5ђ:G^EgP{'>MOac^IÐ"& lL|/ދ6u7UM3bȨNGU=<";0[}O_rTOsfZ ld^K UNu'-PÊ ]{=et:q=`yF_5rq7A{C[<7x,G2W8d"ys/VkѨ!J\ߢ_*EhUP~`?օ[5|T0cN=k N-0켸X޸)bj5c^Y THiKIӨ?+fvqS*LX-n՗|k?<5DP,mzoh7nz:3qT,ItJl s(eL:KbYEm;OuC2~ kw΄$/<ýjԝmԊH0y6x+sB Ƚ;ט)wAneXuhb:g tP~C3yDqfEÆF׉4A1Q|1Ft|)z.v;P~ <4k0{Shgr߰D%W`n2KTZNswA [\ƀ8x!΢m¸Zb g6^gmT3+rCwT=0nf^#U 2ͦn6(K(AAZDe\f$Q3mItyv56NՑ>5Gf>#O] ?V/kV͡],D:y]A*&7KO& ;2n;?(Kʣ8U YzGl0QEdUuFqYિXk"j| ށ0_45A 3NMI } [Of`Z#Єh `EVcMpf5%&τ*ӓ3A-bW 'Y '|a> « o+gBCXu)2d (3 EŞBN^L"/Ф/e U%{p>(LN3LJ;ꮜ*sֲ- ݗaYPMP! U :s{Jae~4 6IGT: Y4(M6 dlExh%q4%i~N=XOA?Qj8 9:znjJWc<%fk5@n&> `1{ڕ$!qK`WN)'PO^!(̙ ?cg+yCV!4Wƍ{qe#߻EW@}wQCR?<`{J~f|TqpBo'W\Ѥy\I6L2=iY[=p#.b-cg|z$6&`(WG~}&ht7=sGgݫs)Qpz`;VlKR5.G;ݖS^\`h|ŘUO´9ߝ۾%60ex?T ^%.A\`I#׶|昵`Mϐש׏IM`:jE?%_*:dXHYH{SalS~uQ~'"a$󢵧w`q +Pmoe4;hh^jZtZՌWTb(eT=k=\Xպ~&G/0~۫gSiMK;{UDxo[6L:]2ě0)=m>Y)臔D$z->mg"1PƓ -1?z::s)|U2/(HpV 71P h!X)Qg;$5j?]ٿ縸w lL1WvVɠ .HD\cnB%U%G*[,kl\[M!(s ^ ׄ,.׿(;rJhGnQ'|~a`]c⯲5|WTVj̃ZR;_}zGwֆ  cjLŕB-͎ॕr6[,N ƪąQy򋼇Vs3#<: NB2O Τ )ul,r2YE4% n#ڰbV_l{&L`37{C+F{P1Qh%= ;/o/о4+ZC.,,nNU*133 PN,K\GM1'uQE^Hk#@ Z^Lc% b^nR[_췟 ~Xa*j΃4q{TA7=y |f1ȋ|Inr,zqPT~NJYY6 x1oWoꣷJ1<1[&΋XրӢ1gN8;9O{a5k#0RKjPթId`c+Ƒ.[~7DE^,VdS$aQ]*7G1w:h|;g*!Hzz4lEp5Z]Eu5Mc; e1*j xPęqR&5C=Ea4ys$lYS$JS͋]3gQ ?udXq<+1!r&q6f ZI"$ Uq!YsV4N"qɱ_e%ΥPwddfjFh^)[HLjLw0)Pm Qڸkz~O3Zvu !qgD-yN,ƭWĴ2a|մͧWUqV~ g Ax@[pCp:)0j}9.<!u{w?߶Ju&zր1...>V̽jXҎѬ"YP`@(܏O%^T~EE'z0Y>;!,E>qt+Ug B Q:%bod]o fuY][,< }%f']6k@&F!Α3_T" lqc 4=>l15 )80MyXu'~Ȼ 2h)v7}U`jT>^b);'dZ&€\Z,*8,*]uG)Dj(õ{05{R*hFc;_ci Xc 2>ȈhYgH[@*ᶨ+ϽY&yg4NIuŻ~G̶iMSnS.( "SL9^dWBmҚ&Afn~ kb:iʈ*UkϢ+)J;&$d'#'./DE.\/>_r!IW9RrF"Dxfcz ;^D%$_.^ԇU$LPT.@-wֱZ`i'@ P/?[DD+(FvO.ɜU2~d{ ovUɨ?C! +Hҿ"7dE.}r9*B!D7%$+S؋޵i]D`:K4!,։r,ƥF7 ^|I%et󊒫$H/8) Ls,fv 80֥GzF:I,Zm2qycO,4~jVE;W"Hb8dZ_N[p]Kuk…tb65ܮQϘ 9Z p!^Vu0|Р>]R/u\vCîoX?PP gqZu,q$bt7>Pڴdc;b`nF,@R*`d{] K͸`EԲ'NuՇ;yN描Rh {l,fp[LEaB>PySg㣡0_oEwGevbb_#j&#8>& 0b_lp>ɭ\(aaa#*/__ƥ԰%1R\uLO\?a;ADjt۾x?r\cYEqWYLf \-NWI5`mJ~@r?FY^  GpےPKQƃBOR'o!Lf}2 ^7# [J͹uh&X똙1ZI` 66r5(g9*y-^ݭsy\ l|G.Kݡ)5YtB>š'%$>,_TP8ms{ h@#)odo{0\nSWJ4U,e?o8_x8s<:JժyExt*jH% ALI⡣\{/`QRQlY%SOkz]V[Uo+IFC$ă4\F}dZF-m 騈nPO txcPI:YMO_|~1$f\t c .cIXs_+2nq% D|]'S"IKÿJ%q$ qHXTKQY%uOZH ":qKtJN|;Ƹi=gG^썯 n<{) wJYa>zW;^oY\AW6JSstŘMߑS 7fliFq/"0\@-wp+m9{BE(d.f@FD7{nM!(WW; ,a )ByISbU(=S3w,SIN#_f][sM$Kns jktȋJR =ەqt ^{'aO9LiqoDeflss=nI,N"مh󃝢ƞJBs}w5}`H4pAt2\M)H>r,)A_C)rh.#娿Shfn&Iy?酇~0uyY%^[ui% [qPG-*CГ5hj 8Pn07kGCy0"Pb2/)sA oގKPވN=e$CĔ[~04V5/ϫA\`$WO>p6V LCMż8Iheel62ƿzoP4'+v }=-khhiT _DzdPr{zV%ڸ}^wTt™a@~+z+eG@AOZaKghk ,4+!68-P,>8%hX&]CsI Dl&Zڲr; v>ڠzRŬD+.61i}PF/"wJ(fFFLyG_Yu`b`h-gOP ! |^u,(ɋ| ZzN/GX6jjm{NM4>45!KpIc7Noܫ["U_yb{fM dZZ֤ס)_ơ^eSbC27ѪMP9T{[ʁvJB}Q-y_U'ـ9R! Y3wM1]9anlHy(+~N6n l*$$/o%8XCpŔi V%Z}aDsY]نR_,ksUNq q!$/0 \^yYO &XJ @OǑ yn6vR}Obq02Ք,zHo*[HSɁO_ qyA #2d-Y.ʌyI֌f3Xw#o |ǫ~G= [l"V{<©afsV]b<ܟnDJHDX/Zc~/zedh A c3WxWZ,e{{VG3k,ngZK %` e,1ɐ=a<3Joz*$4/:.G$Vi 0yYl&t<`P ڡ6/TqeXpʡVdUY񓗄6 BGPx<1idRr*׮vq:;#B*fp&`;@IuZԏ>ÚϴjĘٟ/yIVfyu#O#&[glmV]"opEA 'J]X{4/6N+ ݮkt+i$❐i'`c, u3oHۛ0:r52K3fR8䏐6|$˾̯!'ETqb?{b`q`xTx_hR,1өrL/c!Az zZzPZu=ցaFS(Xs~ҙtӯ$}dj (wa鿅4 ~ ;={:Ze6[0S _ J@LxyPF隠GFܚۭ979z>Eef7CO}OTLz&t:4p 8 i}^~xҿ0SbQ{ ̅uV»+ؠvvi ?T!.+Vnc)؎2ߘ:!L'} ロ\%8@MS>Sb]va&=8!u:أu~C+XLT1ڛ`&+_i_֑oqB}'6^8N>(>V0X" 6)@ܲP0Lm 5MO22"Dk~@Rϳ@|*W0F/hǟ|`42K~76 B" "yV1;]1,t2_q\ ^/ͶP '˭1ߛ/t[N"p5Ŝ!Z0`J,@)W;$8E0 탿}|ZKLt3] L\kDP$$]Jy_D2[ 3~:^SR!J+I&ի=\9ژ8E,ni_dLrn}2t2Æ˞P 9~y\5U  1V `o 3`ƠS{?wFMuaMl4)ը$1xޖn1X wz}_E-Hd(K yBi@gq۴w|Ŧ"ZNV?Xb/,KRcӃ0NT0]+!X0.R_.7ѵ;{cvXn?7>CCFiQ[φZ3k+eàIKF7Ʌ<{Rƒc7u1;;iS.jU9c @/#K l"e4"8VD(&ϬhdYt~娸 uq  Ek"{JM8U9 l"V6\q њD)pyI ܑ1CLrJ'&'}^'oRA:RQ_Vc-tMJ BAUąai' 1;. xh)/=?1kޔr5nt̂VPUQ7gsѶ_l]4.'c:l D#` FYNIC9JqJNҪ;ZE\SG^Ǯ{P!9 X< !P>gb|D8g(℁qKKˏ\jXJ$+秺8N@zKFZ@FQ\WK DwXȾYK>@w5HpBmLm0ea DEV@40ʕtI )"hMR6^p8&Aa{iJ+l%G) F ?wԺbcY}}Nu2gm6ǑPYpg$lQ;D7PF֒xp]>{ɮaW#a0 7'_zAOӈY:8-MFDaI?ҌIv[\1^b1nzNk`FS{AΖV\ x#c6…RYӕ R⢽* CeBJYMeo2-eׇ s iwTޑJvvRXFǩy\XUWC7A"RۅevdqDNf8l;}]:7Vlo§)>gjnލ}ۢAW=hΤtC8=r]PQGvAreOᅴNF:k/!>IH[a4)e(L[Ӵ\N@)ӧ%j7RSII9b'g,Ҙؾɛ sWOZ^|QVj P 񕰡U;Ƴ3rN  5]Ʒ%u0GR̞M'\ѱzv9]o"αI(0xe cj͊j/޴DclE0[E -~JIaYuaM!5T N.Y?TkK]_,2p1XqHF7d'mp{TdYŨZkV43WaT;1\DbiiPVNw0R(+bۊ˧ܯ9 WK|^>-65Nφ=$80ckw:<@:@,$n{ڍٔ-ΎzX\*PeԵy\`z>OsE^뵪"K4g272qz!BOuF ;VJed="IgPܦp³A|RI]T<7]&]k>iU$|-a+w4Bg-u.ʁ & iCfŅL4 \'.ǩp6EC*rOކ6i&5H5FޝZ DWڝK{:kPxN{sKY|-i#SO#Qg / JڠCA Osr/4 VtK&oeߊ-F1ѕe0[3NR]-,u%̶c3\)UIAab3[YjޗT@1%Gw3z+^f*?ɾ{\*Vo~X5DJ1+Ņ]٩P[}U ʥ)hE,!^k}oE=+hǮӷOWZ ӬhSq  EJjaon'0n!I:x~HaxXL=W*ŨoQC{V`鳱=B /~J1Ο6`m\@]I {5aP˲A@>[Ii$L3S~Pk8$-9|E﨡a&6zyԯP4{ G9w&ߔD{N(dxBιYKYѲp?JtTB{-ŇRrx|6Iu6N shJ^ (iy{g.4>Ln7R7z-7D 94M zn<`jO9eN]aHXKO|V$CtqG߹$_cՂ۴X!3t[x):gD@/SL%x%k8Žf@@Yp75rTBTUփ%=ߪbvN!rR Ѿֲ[W DBAnl'Fڽ읭& N\ˮ.t]۩=@!j} YPΗuüY yemd ׭eiL5ZgV,Z7I!ȸ'ґD?Zb78-c[1F0-\_bq:;Rca;Ds ;\'#N&&IMq.7=]_<2_:>g8Y37\Yn$wp)oZoPdI*"s&8T"Z¿ Dfh.Iduo':jI>pO^ ~}v~C6Q<&0UyB kxԶiM| 9BV=,s 383]f*"Z^>Kl|ρ`v@$deu͞v45P{l2G,3De%j~۞GM77_n۽õ\a#Ed9,P-_BE g -P뎕inLZ` 5ND$a+X֚~e 8DO-OR{UG`Q |i."-A3N\m矅"H }0|=wMr@(dp)0YN(}3;{f G\;IXH7˞ uN;-mp_PL1_V'4Sn=>bd$d/y"&%$wR*u]Ϩ!\xq"xoǀo@hl|, [#qI#J̳9ӯEg6DzMGS27oS$<_#֣=#wF2qۘw?ti/_YMxsVG,6f St oQi&DV$ba u%vi8`]e{SoTҋioyeؠY@ݵH Y=J2@m5"kxq"~S1~oRaB_192 .}M/zA U!{vF.3(ϔ?d0.LďzhχPW1( VW$y~X("wI )bku}YsX!O_xoٙw:bOW2 ?v0޶+\ӕIREweP7 }PK̏yf'5: {~ Ev2yN;4P%?]i,ZN+n424uؖT/^ E28Qb&oYMjCxiCŐ4"=p CLnFH7J';˸=T#n#̳@\V9w(~k窏gK't~'VTy?iJ FYGBX5'a_w=0%Ȍ~YQ)1,iOxDvu| Ve3)[}>"U2~'oZ~s ֜y-id٫!_R/shr#?d30[Xv;Y|Os`VSfۿL5F6' y]4^AxF z {gu%?%Z5RzQ( TGh6LaN8`Kn׶=:1ۚPÝ30K7pm$Ѱ1wu-ºju7x mĸDյbD(滮{!DTTYК}TycGbsE숗©9kr=DvH_sxeS^nꊇ9b-li<0>k_ OC h5 ƒp8\FgZb G&-G{|Q0.(.6qSW6Y!uEr5B@ZzqayCdO}]#֑I kRЎvz;X) (]G9L5;TfP.&{J`g !Ӫ[JksC92Ȫ|?@BZ0S)ju4ښ >Qa[DqR1MYS+ȃB_"%W A-CIe/)1Q3,zIď4[0ͥ7e[I-w%g?tC a!3&&ثەO.[%F (޺^C 5EƋ Ww;f?RemrD\J&|A腗fm_s4"ExnArbiR\D}p'QjDPr<2xxVLm >;A9hA'ИMhn H.gdϴ.cjKZߑ#)\>򬃗ؒ䩺0~KAIA*\?!&5]}4/B iDG%ܨTOy%̫Ւ:'WD5oq H$#-!-rj#X,sxYn^Zn(Q:u0I:3JK9}gdC|뗍m5E29;0U)ZcuHxAYoRхe ,J:}@'EMu-R;1Rc]EAλf AZF~V=d(pڎ|1 IӋ]y$Г#=m&\󫋛laPD0]Og/_re^݉L>NtQŎJܝ[8qcopa6cHo0{[H0mI߽Ks@ThNrU)D'sm\kI<@R;R*;M_ ) 0m}S3 U\IWYh91Z\9ρigny_rJ F~\c4V|rhV͡EzzAvCV%W6fW~[с[e㥹ߗ= Wxtޘ| P+VKRΞr? /&cԟb\H!2޾zN)cғ'j '(ȶf wYOEnWz%i)" .zޒX|.Le܅{Ĺ~vn~36?9/%}Rht>C2@)qzʬ;yuLcq Ic?cFUU\%|TpVCDn-~$ߍ {X 5~zۦ'<,>U %aм-PL:O;hmc8)կJ*} R44ނձ?hau1]V 7lsTQcPq>,cufĭB2'?Iͷ%ETzI$hͅxsp#.}MP&w t}:edcŕGJ$U_k3gW0O/<VMx-TP餁@j9%Ci ͵о:u2krBti.F˿o)=Tه`ѡ %c_(iipQ}MWAGDo id(CFF^5d4 k7m\}Xj!@wDNیݩΚ˫n*dm~ۏvy1&G؆(5?[%2K{)|d;D+Q^vu!z;L&|:]Oz~۽֌x!|5rtku]k$p<4$AI/[O4VDm74ȋ ߧ߬Zi ` ,W&u=,x:yNǣk27Zfql+m'jҦɭ`{%KQ뭷nJUČ2Gѫ2 1$@0I.CݠksteՆSIB6x\KwJyO9DP_Xu+4b9q~hϟ.(MV:skMb}70Ӧc&,؇r'I6̻@6]ayAmǣcNnce* 6hZgw%ClMfb]#fvS\ZׂNh-Fvk6#:kڢ|v8ZB!w~153 1OEƸJH8ny"J~0a)m9LSm&=bClG'`i*Ȭd M V8cgt%ԭ#٧dYCU)eəg;;Хީ%9sfKJlH-#Q%7|4BaD щӍ ž)Ӂ7Fu2풇 bhX ={ ӐN9oDf,3e z 9Zj hH^L =INĪa4bWkJ#j,= kFlEX$eh[ @T=x+u~u}-Y3k=41.7VN  A^$Qp#5y%v`~OоNl qaZh-vn3%ak<\˩t D1ao+Dž44*v{`kPL7;-\C;Xv pE1(ǎE<]ci4ޙ\6tHCp47͠9>rF!|°ؾv%AM+ێ)R6wC-Q%`3VO/ tYlvFhOTNB01-EZuvJ`9yK6sȾRutn tМvwtpM %͑(MQ )U^A!}j+W9GO?w5U!|O֘7Lf9#Y=p$)jiAaFp8%x>6pl8x< H#zps|o/VCǝ㱇-/]$I8">taTؠL X_OFMa ך==j+цAge7T b C׾:wdh9@Gn-hk(}:UaFnyFcj. |ΚqXd]]{QvI)>@ uWдZLնg(U_uuTDQ܀&aƋp@LM&_u!ضE;{A0;?hv_ឈمF9-#Ci'g-#Znϴ[ K\gK&tTvH$4?Hطf0z-Ͼi\͢JЋX][^NUvEeZF&]N֍:2[QOی$ Y^:ﳯk S)K3)J"&d^ )qeߞ1m JrbrO;n24V(:YdS0\;-ӶBXejQnղL+ f|'Udc7SU8[t)G.UP5F~‰'.=;&KAuU'bDg$ ЩCs{9Q2NKeD+0xo|T`N<,S/@NؖSf7|Fv4ǔ\pFz\yn<")d{h )@h %R6Uzf㶔Ӯ#j8 8hSF̡ L`ҷd7Ɠ-+Vz<*'{pL2ȦׯTqUWVpRnM.Q@WNlx(3_2]gm %!@ie-hkXAFwhы)k:7?r!&5IZgLkO҈rӌiSHun|/EO$ubkA;>#s : .]ҧ.dЊa]/%zܖQ7@i,"e{0h:ҷ{Jg6GbV.=x(]:nI@g2Jɓ%9hB2u5Mk@C/e)=U>hDlϴ+QIq _lwIGO=?Sfc|. g}$HP[vgw?q^Ztp2N(2i#XE}K( *~)z45kvW߬sξ{x^ |ctsRF!6z[k7L/h0qsG2,%L*qλ5^p/~ALa Lc5']{^3Fql5M#`Z@)+yF@WvEQx ij!E6:=@.?%]L2D\`"m'pw $iֱ/C[+^;f}dZ-}wFew֦; `ncfb 3d#t畍h+NZL*yVj~/E1v1~|;a|wdy'ޒJxX)tp&+瑔}ż ظgP &ofpեE7J~|%mR~zĽ>[s͡t# Nˏ:#ԞM %#a{ 2 KF̕p|..pcĩ^\w>7w:\⣱f 7w[+}TY#(3W<5K(O&Zva)dsF!O=V.ҠKY ;?I"_M8Q )GZDWÁGgEd;IX u/fѩqHZ Op9Q~-ɪa%i&E]%ab& +6 p/X7ۑƹMŸpUנNJF q]42_*+I8=l,n8 Ӆ^VVc-t^Ӵ21ucNё ^O0ỷ&مhAPnm(ܣD5ȶBsV7I,Xs^` g$U \RaRf!iiVod{؏{W TvԂx<|Q$^]d\i܊tCÊ PTca F#q5,"1fV ׇ/x/Gn/~DeXˁǨA.єD>YiϝXAG^t8~)[m0Ň4ϣ?[zW-H% frxK6 _3I6 O1*N9sQ #r˒ Ȧ n/$)UV^taHD17LSŞ8?WX){oИ >$MWYq&M[漺kIӗCWjk.dInF\>? &;q]V(z 9|5{mj!~34ຉ'wݍMq| WLE'Fn] \|fZ)SMY \]*Y-! A׈4 Z<@zel}[iH܂f;WweH&y]ghldߎ:#K8w-ear\ܧȑHaCG\ WR:>gihf0r{RO&u3{FgapfCSq˳.H5;o3 zQHȖBQӥ{\!x 9p) H1cxmߚ<ֻS/WGr16+D6H*IOv TOjN=,2irX\2>1YK&'rbX-)OC a=̀2Aߦ4r%e;1&u*5u&h*†#,aVmХ:> @.x8u!q$4bs.t!%>58 5dzhCt n!z1KCw@.KzKqbٛ%*M暋/Kt @<hH"eZ9ܫқ,j3:vr{&d\>(YڊFT%@Ӯ.[F D.BєE4ymt.O/!}s'i:' 7Sb62ٝ׬p@^i.)iEØ":TRŁ{&Ga@KbPm"zNqm17Ϥf:(hִ7 Xl&0$Er\%rF"dôؖz&G8$YGfѲC[`a6>C4.N/zl72ϡ l &m2u*sJm[r5ƨF4rG;w!J*.V _#:*vc_@dA2<"w;< I-@Bu`Н<4V@F-mD;%L.= t^Qc>eyiSWcԑP=k$(CinGQ?JOhkݱwkJ0ira% LCɮd+S`M J hjYpL0bAm̑L)V@EOlO Xlqa>:mf&&/o=`}ЮrsC `2:yhCIh®0;Ҧwme>.Jzg֋ԅzbdݯY(n~"2[oXG yo[P3GrbHׇF:j# f9 c^TblwgY{'SbғN3W.bfISΈbKT!ëm&'F9ޛ{lvuOn :'3݋ÉΕeM_lTje+ 1=Y(UmFXXW9؂R  }a1{n] y7$23 ]PaP,;Ntᛟ6j:A郏z+B3FNœJ M{hQ24܈j:MVٗr`&niE/t` ̯Kn6w%U4qW;(s\e)ģMO|,3U}h!~Fڋ2} 5Yep0w!uZkgY3#1lFQiȚDi88ȁ;ʂWD[xT,I}6?I^ 易0h؉0/RBFdVԧ_o)iIw:{ 15=9U 6NtAZv9|IelQr,?81HԒ˳% N"eX08+hr-0"=Yҳ2Q?0zZOLD`5S7w:}W=]zJT3X C}AUyfh迋~H gˋ!>i:oa=,-ƕUXggH+E0 b(cT<[r6nEIMU*֕aWRюmRD'kg8^L]P&w^MK?5#w%X/9oyF '|#ԦxuwuA~R|/ e)!:iNYrX-Muyk ٺS< VW+{OWt;9avIvxFouZD_pmVY9'/}F\qfޚ+O/IoNK0̳~J8e^]3 KnBZ79$l3iX!'v_ ҩ:nH.a`, כsGͳD7'fT;dOT2SP`i'О{#/q΋UF~2o]iL&Wlߞ~NDw60, L[Dtmnio$D #o"ŋsp|WI} Zb8Ym.5\*%5+ki_6EnLjQț|_yF 8c< F"$ lаi)Mbc|e[!,aӬ,*̥㫧XR hVCNjVK ؠA6W( 0ؔ,ʩc˘مPl;VG3 c7bܲD>f2W_?h?iwJO(9v$}jQlQy"7!>g)9@ 𠖹zf.er;uDHdiw@ƍU*tS%{&Yаh)X@?Τ R]mBT&IwݜoA`ص< TV3% {j%]Z~95M̅a{TNVצ^M)SLp*?*5J,ZǼ2dsݷx!<k}fբYš:hm0 uʶԡ.Jl8γ%q7}ڍ#v67 (xRX'X Shm/ǴMlJbA3+❜&f=L⻀V_dNa4AGXQԥ28*x9y\XUwC~oQNswmwP#RQTuXcȨ$LFt, uBl1+!Onϓ{;Fepq.0`eC')Z`4U7  Q]N&s dKj69Cog!]J`MW$N;tyAe2twBkvO덇&@+:|iz~dZ5d4!8:Cy2 ̎&Tw `ߢHkM7b q ]Cɭxt ~fd٪ X WR$RB 0Ne3RzD ^nBNt5-=wXňHH|Lӏ`[D}Ok5( @ntB&DtI냉Q63|LXs3 _8Ʉ ҅s2fܣ_)qI%b$3Sv <\V]Vjt UWS:650ȶ|x=2S+2X-ױG|ui7|6ۓ>Tԉy!ƒ9잸8NIu|eѮd#hmؓFUDT^ Bޝ;F|`?5`kp avlB2pl؉ۯ}?e`<|۔}t "G;MD-k{l;no6co\y)1բ:ٸln0SRuڄ~K{L$)lCOpItog+E/*kc>[㾌k}(H ukM%ɯ3Q-|̇q~&raRB@7}7c[ED|M@2 ;aVBoq=Z z'ya<>TM?=`p$9k[umjrm-R]\j^"Q)#xšC ##LxnYX Z>qi ֱ:jMx:-#id 6KAC!~7 sb)EdĚ 8^ _;+-TK}F3f %D" j>i<83qJ%^JuS4|^!wy=@eMz&R ",9F!O"Ysu ½f͑LbT=_{ Xh!2j[ewpiں5hѤom R&1Ic rEwӾq^ccı(1ԫC9l?GD΃;ev?/+Yx.F/ Z.r*vjat +\+]Жw+d4ڿK6u!%O[S ,,Z!=Oaq#fsgBѴcφ6#?]<UZ;Sh勄{ ?>F,/Bcthei=Ku:Ҝ*IFLM~ +בAY l{?QP]4X!S>Ce+O/c(/c~N%xIotWpk1G w>D@6`ǫMh$fИ18ΖnynҵS&Ceqw/' jPxO(2gxܴ9&.ڞ\eʘYq?0蔇+3m)# "n'"a]VZzDΐ@UҸ79`u\~Q^4M+BpV,-ݱDY81S_%%}8qN%W֙l P{ @C`ؔ6:%* JUNTaxn+N*QOz_@,siB(C8C3 TR"Цo#kh,BI2.Vj*oNW$~AMl A_}M+_A+#angD`y ;"&1TeC] -GGe'Ns9p r3R[]zr.BcF!&, b{L5(Z )]Kl ~2,:V^a1~(LΏ~_MچKRL/#£mѤǗWg)4tG0l@ ́-dzJ|4^ H6R!兮DJ FBeN/mCp=ɬ'1xGj9{9k( )c|Sޤ-BBeő1(Х$]|ʍD++.=WwҖ|E5C 4^Pv+(Cx'$ι&dD;om4 HM>dX'{Rt$7Q|Gs=OCt"6 z{Rjе>?Qi5Z\rz\# fml6:'Uq M?~+Q;yg>错ਵ5z]a@˿ !WaJH*zruΔp֟v( =oyȍG1kCB&7Rzu:*ĪQT^=Ai$,)ޥ=xjf.#`Pyto09#/ZA\/\ br`T52]w[~߲7ݒ;Ӳ{ U^҃h ,,>v*BwBY1i6@asw3G8lt»c*/4ڈbF%[j F(èQoY^1ҤOhW[Bef|.gmR?Qvk.$!Jak^hQ{T!4L=^NӭvukzSJWjFN_Di/&c+0x%R8Y\נpʨX11g+O˖NWLw-m|FSPl6V  {P'ʊ[x)ũe@ȕb|zn^1f:IrZz|zjp^6jMӽkI@zmO Z:J\LS1ʉ±CDfniݶPZ' $@wiH^IA Ƃ 퇠$˅M?Rփ5yt8oo͸WJ7JpaXnñ4ę~Yz <;wer["{JA'5ФCGlJ)NtMŀ/k\LPǣhר6Y6?LE% QT)JL4< +jY;{lK"idvk")A򭠁r66h#V ԢiUx,z9CN.qԵ:˟^c3+Z)GѬ17ob >89db%kmJKi^Ro"uDħ(V=0<H<#]!ϐKIS3l G_YyFPs8lLS;d6SSA<#QT0nf%ZNp$A1J`#FguDF TA&q,U cDa>|#G~hpy+~1і{b+ d#hq?PC/U,E^Rh12Jb6;qC<5w4*ɞ8ξ"7[E$Ǡ>qoƲ.zl.9Qn8e/,@6J 'B׹/OL+ԫ+],$'b6!e*dUm]YA)>{}k wuFGW_˿+/Z\Ll٬E[> u Yc'e~2ѓ)2QUocm6nl{%m\bM*ʁ3;F2Mokl#>[jkwuܬBrjvGPkJT58@>Fp4] `q̟pPfS9%<<$^sQL I{d552/©DXZHUd^v,'f:;-<,Gi| $ث ӖZq "\ ?v_('85եx}]nm̱cY{$ nj9V',="I+M936l 83R!I~}e5XK :. ݨDjbhzj3A\fkL ,olAi6F.d h2>*-G0lPHːճߟsb_+/A7~~y;e՗T=|&`^aE)twMM 3h1&r #8ϦUzɥ#N}c"u?`儕@R:O| [m{r #r_<\e8xWZV[jI)?gX NA];-r껳 Z5L?ɏB <4tbTDM(;RU\tZyIGbx4I@^s_u4 ,/&>YIY5R岇J !F#-~nB MT{!+K< FKW >}^cKjz7r됟BWtsqU2m'ቑU@s`,U3MU8wFq<*;J$Y$rXcKwbgrEes ۿQ I^a$b/+[O}?h/XTL($ԒQ;l"b pg8=Nt2}0bt<~sO,ǬmwS X6o)zp"Xw:}kUCͲ%Z X…'HT٫J2S[ j^%la_yop>R )c̔WϺVsX[mjl+mQ ODi$iXރ3Hbʯ>?('ز]Զ{AO8}%d$,Ol(5NSuz]P/Ku\ܼgΟMvu蛬IAs3>7HnvnL'3cjte4U+mKF&z8=rGDՎqfd)Yи`< OqeQu86h07 I9Ћۋ{Vհ7O>v$mx ę }Y/)ȜQC"l )?i-F_K3Ǚd{bf1;`;75~֊l4ۢALPj)wGC%o9ٍ{}3)q qs-:El>ߦ ZSZLBw]guؚQO}:QP@?Ex[i=˟d}&7C'ÈuUrtf)k<5}xd¾ӏlʺ_ U_Y"*eO#k'2::W1 ) Y1B+>>s{Qcnܩ@ En\Y;bipS YQ+k%3H49 YWT ͧ=DܣQ9O Cʵ/~To*qIA&?]v<3 ? IJoXYv_!)ݫj/ - E|NRO0:룎Elӧ}L.HbNG][+̶itC؜0yT#SlE cdO{N j/&tlGu?,rS 0јV8#nɚ`?d7\AN]# u-fj₢˞VcߩASS;Aج"g]dSr] Inf N 'lރ :pxWҊC 46uQB{,(̰d#Tf)=,ihXN#amP$S~G1["i,sWoY>וߞ@gDEŷ ^|[BXR3#F+YiK-dˌZ&p9 -V@~ܮ:"Bi'T>cÍl )8crY/:f~=>hhg*ImA1V]Vg؊vre?%?wzPOOX7 iozNfg6%7ˑp(O@ǎHouL ['wrC v%nrAJ};Ի ]owNrnN1 nQG60~Y0Ics|!co6:`TH ɴ%l<]lňV'Q32nUӓ ڿt`a" ZaԆ$-`̅n◲:FbRrYh_;ْAA2J"G 1y[2 9W/HU`W3hjhXf6&  G.$/ֽO[rPFyA0DMC*d7{ %#ό^ Q8Nz͂˖JvB{&,gzҁ6at>Ku&?z*IxcJ1Uj}LcP'Zop߃YYJ,JwJ[~(Ep V׮8tPyC}n'BנBsls"]m 49l9Pd~6ۗe~)d3D]Ј0 NzKڧ=G?am*Zik)*`t=wNnknJfMZ_m_!؞ë8 ɃuO"iP _Y'.Z)D)˱ؿw}LjnDrjiT Ydv |HJϡBw `y~ Y\ V[l+^56$ʿ܂(%\:qu/|PvA<į:ΉD+;4 J=sHb:F+^4`_-O31 sR:-Ψ P,SJ8uXXRLqф抻7!=\~I40׺) 9IS5dQ}[z0Dٓ҉Skxt4h>hYcӟ)גW0jE {cumEϝu de}POw-`)fㆿ$[\dIjրˉr+S+gڄµ PzpeJw1~o*^YbS}rgi /Kz$My3ޒ19sw@BfK0v|zb.ՒW;juDTSErR,D^%eq is&.W?(^&R1fsEV\HVBh ?dn^v==I/PeIk~Yh< @ =-aWR71?4-@2E{_rpVFKjI9l0@*ۭ* ^/Nԟ?%e@KY(@$wD˘%Zb } iB5O"+?\C\w"IbJi^ʰ*M 8f YCo*иh;>r}] 4r:3{-ejǤ˽71WޒfF^gE" gEI@i4+[3z ;+\ЂE*Oą@Fdyo #WC>^FlqxLh22,7k6THt^;I 7Fco/AbFBD\[HyFRWJGwg L*;1؁ҹOOpN;\LiQ)xW=A_R[G 9KP ('Z,/ fm2A|>p׵Ud5&_ L=oMM p")NoE£}ttt^uӓ A{*<sGJճۓJyw8҅[҂a497,}K%e3kS\ʘPxA%z"QtBl$J-C9V#5R~Bε 熃ǗG~\8];tmNv+F F]>+-i*/ T#"jYn{iJAZ[:uSذ}J~${jĺ>`A)V.Ow!1ϸfW[a-tVR{Zb9 ZP C*ଗ#|qU_tʏ9SqQ0dk^3ic~i8g H8ksmlGsJk=bҰrkT/n \ҡI&a SDf<}>vSGmuF특Gp\0;}`V;4@!%Uz>Rnٰ{<$7s׵u;u72<[2]aex“1s#Sls 0CG?眾Ӱ4 ٨jӨ~+ g)݇RDǧ;?ھI W֓-̏U_=7~]û]`FIVwyyVA9s&CW[Ǥ jztVQ*}A]VT:_g`[meV%Q#Gm^V"f%]MIA[R @F҅v(>O|WYhsYhXP/Tk] =n "ˁuuInj2 (4p:C:p͡HQu2i:؊)7ZdV HDvl{R6W?ևri)Q  s0Bu-4g̿rR$bsMElϢ\2W2&q#{eCC6SEktcĩDM2|L ٻ7 ]mj*d18XLэ9.EֲJךbNXpLo^g^-NGS7JԵ{VS$u=&ehrag4O< /tb:2ֆynB:Z gڦzsnko*̈sN? oQi*5.Erl@@UPI1(7v`0UlA[R tw !UR'7PQaɈIOdƾI&5/VRB}d 5 XF%e'7c?R≏ZdJ++2u#GQ`"ow zYn'(a]Ƶ2UUJE'%J6rNӤ2gB`~LZ!pV5lhD z}!"Xzɗ(J(;_Y+H׻͔.mP[jV )}"-%rW{G|V`^ֻצz{s:q W%ϱ,acVka}Ē-;)-#Z55a-;Y+{h< (Ӟo\7x" ftiEG(a$ 0 wOGb𰝆Oq38)Q', f9kYmEWӬy[ [9,Nf&*JnJ ͔_U<5+`BqSp|[Bפ2qzc(gz`I(*k\9q%śP"J3}G~7jѱ6~<"}ȝ>d*j^oq׿hfA+~(eV;j4.b(Ȟ*pɣՐeMC| H 11+³2Yj/pۭ%ߺH=KtϾ#f55N2٧=H#n9lߨWBI.а^1c'^.I0Pd{gURri=EyrI^(;x^ @60Z'BchElG1țacZZY#~D[WPmzkH um@Ӽf~KTWF}V{`"|^SHí× bA^nn"v͉*ܞw! ѩ|_eKۂKhp3gΈ0Y mw|Y mŀy-~bKC 9[|YVTJ &TS}Xo7&!<@L (X@lJ]1GL໳fƞ778g@Fcwb+iS! GJ'Tl / {(S9Ъ:F:+x֊ vL0Vƺ=P!ٯe/ :M}AD+m C$ؾ05n uBsc /ҷv k ˇ^3*x,!&Fb] q,2ij=<F 6Ne> i>=PmnG29͆V6>pP m s8wu&וz O#"AA< rJĖv0٧Ʋ7#KX i nQ (R \.<S5 kHc4 *KCm>"O,K(*㺸i_qy;{4V5ڵf`Lh!?rA cg$pSo\!uR2`WAo}nh0 %q ׄ>I# dUޅ`HH]MɈ#* 9[88G㵹#-qHyv\&0k=}:.Fݽ1O?^O_5:mz˦\%1q\A NSyP&NsDD5mW??-߬rN?5F?}|DN'TYᯗ%q8NO~n[0Ĝ7qտVdzW2*smpՁ|vH/O Ѩ"*IrE:1Q|C2!4&vJlm"aCYYp2I_М5ǚdK)X񫞕g㓬j Ţ{ MkmO`܉:Cɐwa{^QC|H`QGLôO\=ș<ٮ9/il ڲD@Z/<34 GP6Vp hN &|m\^]ЩzSE4SxvfPF32/s¿LrA˽lg] |"Z$sȘ~לG7ÌX+oh 呸@٦OuhJӒ/*cۉғ{N@jGf0rVq*TTRu}޼̤A%ޑx/2M䌌jf1Uyw8zN!PJAbc5uf' kbqRƋ86ͮ{2?;&oM&_#6Z/~Ry*s~ %1 zbȇkJ ͋h,B0@/]B O6kt'*yiuۓP g9'V ?In:m1Iv-H"m'i@?UpP`jr`1y糢E;_@RSqC!sUE<( bYaBnKZU,"TEBg XNhk\e7i9{TJsC^,?A;%d()Y(#%=ErQ 꺍p7I.JPVg)vG +b# cE,uzVgt'ƣݞ9#_SA+!6JR`M4F^+q0+5N[ /^/!C&: َH""[B˷j?ߘ-|{j # +4u$D NCor,T]+뮦&Zւo^h$1x%oL3:ʖ?;07`#PYo%g. h,4D+X@Os"Ĺet=h\cØzQ!֋ UOxc$,659=-@̚uZ] wxVJ -|Bÿ@iGkPWRk"\09mu>#4 gJ՜&cS\)|+|Ѭ>P hov*gG{B ` y$'5 IW;By|e=y  !u:^+#XcЦҼ/"}Ky9BU_d O{ˍmQrntm3ΎqBx+ab}J= %^d`r v7 ߞ)3tJ]+gjHӭ]ńR VdtYcBģ:kr0yt#4p! L%O5L3U(u=;v#16n&/b/CրDzUD9ZgsBQ/ RB3Jݻ\DJ 2m%cPA{Fv]4gJ_&@gJ%۶ndqJ,,u/W#ʑ#tC.QWեi2[K+PW\bxcZ41h&~  4h}rpɄȚ4aACHd▭28*:(qR"UFpa߮_. j,™STy-0}^˟qe R78 gk)EfMm,q͘$;"8n%fe2# ω̞,Q5*'Lc 0{4fPuaR$5pMW΍HgLc2uDTC/.ð'KY593d{ԇo-ԫSl"%_][iUȥ;ڻnnd) -Wvy{MbD-V||#Xa RLoANy@ò`x!hX{~7;N -U\T s-g^SR%q\7g?6IR,4 e4Nሕ4WTi,3PeޮWL{ 0xK7z`njfTX%J tf\ w2E2NWN]42OZC@7Аu1rmW86lUli<0D wY0P~nXթ-ٮyq ;KQ@$quqn"hY\EI"r+Z7j[$*74/$YZ3!V\| i+%Z%@azΘ&)>)3v?_vm:{| T$~Nsp{{GSqZ͈q(qKx< Eب]dF9^Vv؜XSX)07 \RS0wT)L1",^Id'Axo?9v"lcacNXi:P հdGter!0qO{xkLTtVo%cD@(2 )8r ,r!n͞=FTj"PqȭU92Դ!;-mGR 3NԽJFιMzI7QG,#B* >hڤG/I)lUjiwum<ÝPT*K+{S܁ܲ_저` aE0 Mi4AUa[T`gG#e}D6@"ѭs2s䓟PPgFbA'Qoe(~9&7zBu~|1=~!X xej¶X:^,}۝oexN^7@vM(!᧭?AX8YҖz(O=b{5D n#I_c(<ϺӅHN /0VRמ[v|%9 :A61,J,s Ɲt:1_!a0 p{@1l+Tdf} N%v 2[OBKUv|E{0e%6UC-(ZgX:p\ٹ*Rgq ӭ2Jة敆2M}QKB<=z_(! l+&. b)wiiwJH4@*@e੧Ru:qiÇ:){4y{LBJ*?*kA:Ol18 )ԅ=AB0 `%g:<*~$ bk/1j N8~gc9d T}ݝ} 4{\Km3,ƱnՇM0kRx?$- +$Bos5 ZZ ó`~prҙ[i.ĪxG#'[L^J/:|j4J5j  ? cR\]:%?Ay@wpy1fγ?1QrgͬƩG{Uu&3beth5)@~#O_jR0ZGռH\t=,C}؝ˇvoύN|&j<θ"ΰ6 B_FJ9jgUW{^Vـg)*a6iB\p-c +BJ4a:OU/̰9n>|Yz5m<~sM"qdz]íN,R Bd: N$tTש0^~Ŝ {ΟD.n}5Th*oޱ{z}n_+ ޗF0[jCoѠICH71Hh3  7SYL$eIDCO8}LN[3$6BPoсAN)xˣ vDO,S/iޚbgӻx EfA9mCr:ٻSb>r2+}L&[1G%fs[>?NJϩE Mӛ! fӗx^nmCBT5PvxS5_>m a ~,t.xi3V62p.-5)xA'$J*6Ci*`KI"c0 ZWx^H-zǬ1- CO߲@%9b\u6dvuw2bd ~͗W$4"k(]Xďg3ɗ N.J8}4aFԾk [mDAM#KDcO@;%)&K?7/U&©!!] ݘJBjɇO.lSg̻ɪnGw]ҫB]`& g0|, u[_ Hʬ|Бi \f|uWC4@KwNpWS(X4{G-77Y(R[A )uvK }X73zg]bܳu:_!l8Ahݩm1zZrwaU~G;ݢJe>#XW)FNħ033FRDq'yܱ?W _4WtGۊoLNX<)476v@.MdTfFv'N5زXU0Btd0ǻ{ +lbz.\ Gz//y7!4ܶdeߝ$,ޡdAnA3ey Ym^;BZ?M6ڪf\wP}č)/GDdׇӄXikJVGuLnc2n2EtV_rEjML1^QA8je$(+Fqu0@'/"_GhWL e2GqYs1{Jƌ.UE:PA}EŷFe $2"3uYJ>h:,=fDb[a8z+eҤ ŐNGl(iGw.݀h9V;aa7Qs@~Z̛~ΫU/|, y)=FN_/L)*ZNECBa*Px`Q˂>W(Ҷ}P&lRl%V?‹ vC+ZF@Ul1Ff3FO_mWR:ώ_ Aw{S e~wc(_@f&W$, !"Kkb"C LBZ0@kEӫ[t*DMNO$o iaNpQUy1+*+۰8c4 PP=Bd|[ɗM %=>t)x.b2hKD-1n&벦S1_ wcW[˲H>É\͗ÇaucΩך)sK)̒ >b Yq'J lp\O0KQEw1|W\ļ驨X+ܼ '?,gL@NZtxGD!mROOGU5{2WXY_K*E$%Lq 뾨oxspXoUԬ:U*#bda:*ӛ$ٚjLSҙ鈻k6UvN3t~KtߦHz",@qy= +U8逅{{rW7O~'2À% w[q qAܽs`Zpxr3]!䓑=$HFw.eZi2dzVȾD.©!oV4+J aV6 NS.HL} /r%!h)=QCa% l_ˌAiH`/SNSP]m|Dq2ERQP #DIWwѮQ$Agڋ3@맛Wh}e[Ϧ{K1KݕG͛ۡg z/gsdvAiY5b!΋>zåyIPGSz`;6ȠgvX#~kXSˎL}qrNBJLO'0@\oX// 'f.@_͎;'{F#1 Vq6YF-R%z3AKPW YBVo P#1 ?M]:[t41h62^!_ƀQ9<1S:"j;%g&Z#?_Rѻ2b9~\m4ByW5XlQ9>,]SWCc4%J-OViFA Y&>kpc*b$ }dSp쿖yU.x-=OˬXw=H}=)CO{y7Gk;8##,CjutjUeF!Z#,h3W> $ m{':mp?@PW% XS ψdF>FBb$fy3YwkPg}_;ė=׬$ÐJ(Nb04u-0a5gjEVQ&ݡ3Lb>$}xpLpNf<>:˯[m!TjU#3Pg` XfؕO} VK+`븧%`֒OMAr!=gK+}0Xd_(~tH lRihLM ȸiQju?gJ@*22JlZ)BAwV͟ch7`)+8vmTJވBϨ:B+(/[,#p2^jhmrb=uƮP{@pQ3&yC?29dT=6>` A>Aֵm7c$IfGXf9]F-1aF(kF.[fIg禊_"K àwquxsp0FsmDzX #|h-O6ap1i9iHy`"Q *D޹`TIm͊0 2ͶVQzVh3 y*TQJ5(`#(*qx׹&ڞ"SEOR'7?W10Ʈ)Ę-҃o -~8?U~]U8U[@!A$}Juje;$C1tξ Wu-^m|A{;ί̲BOέ?)-ۋ|p׺|Lh==H?4B0JҁM_+R=Հ`zݝKv}êi%L髋į0%%PϲŘ[]57CCNk A=Q C+:kL׿N vҽ礲C‚y9\kٚGk=3ɡuNS=gK$svL ;_N8Rz8+^ւ LMfpAix4r<ũYF.C_Y}R 村"um9-WelP;MH>h7AHᶴS!VUm%&@56}*u`L#LRC@'+~ub-i}ۭvRi$!PA/cCCŲYs lV(>%fwhQ.X,ٓc#.·S$}7<;'Ps5cu%iB ֛ 9|Mw\/n3ȄLmVzOG9t i@ ).tŅ~"XA(1;eJIC%)Q 5,NI6'Vg\n;[-l"%HB2viK@]z?U\qۛ{5WkcŀK#n1-a 'bJ#LeBÙꫨ^fcWБ3}PhqY4!\/A+karx/)/}p<hd 㡊 hm5WL11~15~"|}B=+d.kCQ-sfsk1_JX:LMy٪2v| cXY<.irͧ^L?%͞G^+:C'#S7-Щy.Et_w< Kc7X_OH> a5:ɑVƓ%_$bcN_y(1=ݥu+VUq O&!,k"Ҩi9Ⰾ$Z<6w`PVHEaB\= xSU|+L ڬk"z+8@-<5Up[NWO;grzWua]SzĠ]MSٖ;[5A; C~1 _&kLp܆6Q-0q .^~vheǐSa⢶hr8fp'=m̢jZMi@Qm%W,x<`3HS}S5 )¬=nIUG-LHԑ"ZٹڃRĪS nk1|] j6R1Wx{OT$r [a羭FԔ U~T;,-K˚\I/1;+?,pGk(cj#/< 6 QJĆ)Ili Ukπ]΃ɪ]~+jL6 ^*ˈ94HU13r[non}E:fk*?WadGwE~4njao+ %߻4{PnÞH5U9eftCG`O@f/] (țhlOGݿB`ts- ӸitQILjP[."QV]=[O g WhZm5k=Xv#/ǫ V:v 3ȓhcZ"Z @{iEb*}+z^6S'&Srj뵘;T9{ZT+jItݗ>&R\ʯ㪯:!~4[fRw@T,03֨;Pk6il!K40 /IME"jZΑ9HM bHʟ= Z!DўxJq K/gc[7Sԟl*.~] A9håQne4+I2֫27)ɕ l.*rh`"])~z.3 8M@dSDoӯ7|ICfSf^piR?mH+ msrjjnk왲v~dI~p)c\^aLX8^p~4}:KNDd (/VHXd* Sn2CI`!ffj XvgxlV_8|'ﬗL#qCz?e$jK/wIX9>|VQU :]Z@ļ㔯ҳeg9QUszKsʚ\1QV!N؛>aBn|s jYYhPjFn&F%> B;4Nnα-jrE݂I],YNq[ZhӢ2V"&MIŘ'W\o.Z%Y^!QA7DZ{H+FiϭoDlXUidlhWi7, ;1?Ҭ5C ` ׃dꇐ,R+rwSX1oEJw}q;6-\ˊ-F5>K1{4SDMs޹{BϢD+/%P{~C-H>UܐlԼT@5E'4HdNz/ܳ& U$NjhCV6 ̒ VT(6I J[&"M@+L;9E9"|@Z') Q {~``d*/yAo2=.:yTsG$p SW%s[_az[)" YV#5+w^3̰K:^U$^sObAjրcUbI3xBTݙ&frE5{vU>m\}[C"*t,-r-c0XT^PY 28b܊(hOB,mݴ`:օv؄u Tդ5m~Nр=KZƓ c3ʡӨ/}L9'Xbɽo\Huє)r0/[l8W ! q$`;-p|בq/_p^oJB5H&"P@4juD:vBL$€n źKRKro<.G]w ,̐>Q@| !&zH{xYig3%S靥p h(u H00c/$>Ϭ{d>,䃨8 ˺. :%^-CB0Ϛ$Fr H|U [4XeF.RFA5 NOʽde6^E 5*[V9L;!ɎiH5y{ ^ݰmh]$OG}PJ{;8VxE|躕m8<["(2O?Z:/4q{E@ӽ=Ih2A Oth-aQе 4`vo$ eG4);eckS&,{ڟA]1:,"l{HڢGV#Ú-U,2FzĄwz7ܰ*d437ϼ w Ss&2~M a> \5/b=)3IỐ{ι{ _7斝H*ޚˎ7N8$_&ߙX5_xxZ߾r]q]2JukU<"*e, _[} tB!yx.M\Ug;n|!&44ˀ"fs>S"#׳$3/ bϚ+A[ 0 4`&: *|?'p2^aOT@,ԴB4p߫5\veyϝ%΄Mi&|^diUM{b51m[8TҒGS P~.̓L' Q_c?+mʾf|T\I$/? dp'rT`JyU@u3A',S?˺JA=QUQġf9A&T;Nm i"5'.Y%M7/v++'{w~ LŇrMgLLUֳfM,O!sǯcM}PmLՊ%[:@NVE B "WOB%Hڹ^.O#~:f; /S}hi=jkū+Zirp7và2Hr/?F.x:aB FܢjLC8ތUMNv@P1kznqqg;r݄%tfWBnic^œ 7x6k-Iy]D^Uixz/̐ڌ]OjqQP+e F2zVNSJԦXjyZ\,QNp1ыqO1t,^0T6Zjz?MH06qBXʛrWmPbA1+8&gz|G~'._u@v]R ,ە-p57}YMB.Vҵb{FHX JrN|<o'_14nHB3`cZd>>Id? 4ިYZM Lՠaٶ }Nfl>j(S夐A*`XU([1ߞHj޹H*? NqP;y4QÏI0w|'}aFhy z8 4TQ (/ѵquhX Ũ݄3+ {hUBH%X A|E~} (;u=[_.dD uisL'p闧}o r=&4[.yӍ%I$Р AO\~*fZ"-f~Ӕ]oQz,^7:{&U[ʔ8=;/az *8ZvrN1`{yP"emvsJɯ36W. [Va&n ;[0O:|hQdaNTi1~/qLcr D͈L:mmd&Y6 $P>٢$+'Z^աBaVNPW6DbбS~z4cERϦCL'F>o&k1jk:dsJ!&+;G(\IZ,/c">30]+il%GGjpoi,7a!VmN#=v0>؝jq߃xHNνDnXLt kbFR<.?k+REp1*pFVY֒3ʩt<$ڞ:CC~>s1]ˢkZ4oO=Rk3R$ *zur6^+Ŝ ]` yE_Fa5,\(/.,iPGs\SYeNQ0NoSˋÃtڠT)9ع0綰~ho?E}k~gzÒ3]Q)>QЗ§o=b3IrƳ;30OR&ʀBs)w3gG[#ȳ5оIi+?LYJg" p#0t@\Ϟ}ɲͳ[c,lyaB&ɭU :華TWaEd6,PXWDB*g+3M DzJG &'p<KQ /3jQvvc4,+HPNl ?UB &Ύ%uV<XԧsP=/)W+urQeVSK8[B3 R5%U$ݹyB% '\d?|=ecJ.H <wYxNUJ$Mj$#5mo䌚O ^M)e+"z+ -g2!n]Met.LBm~FlAWԽ9^Wɶ~Mg6iF[Z7{#-ݒ,I^=;L30 :cʾ#M"[VY2P N?w%uīfbP&>*g .A%UYNֈ*;5׎몦I6eZ73ITLS潩qvt8W[%)K 򗨟 xG4ПP7H LS;br2Uܾ0âya!Хi#Gt=:XM+C@Gػc q_զiwKIRzG$!t{JNcW S ֑RM2zp! d$#zT1%sf=$3贕$]&^vSXt|x{8^uN&{` 鱯Aǎ}.@,=FT[z';vk#)Pf@WzxJ\V ]f<Ŧ@" Dxדpk].$1Q5S˘=U6&ɓ #}U{RHoYª&`˔pGA_Aă:sH\wݼ4^AP+3G" jnjǼS\t+`WH;b S8?8niQT "S#YnMX 8ϒD2tuك,`me-̘ҒCZjemoiS&^Q䨃"%:98רt:; ЃMNI=Q$RϜhj8 Ň?Vݿ.-n!{N>JM~WW  #9&WYR\6mi3t<9Џ84bb8ῗ!}s)]jVQ wDk0z0WBɗ? %<7 /;n y [g]_]SS45vW ;/"Jgށo"OIhTӗS 73'<3hX`3- PƜKalQE$1SO[uh*`p'\#Jn:v6!Ym}1<8k1*?ϊ!l,ݧ6i׮EƯcJwrbryffe'il(7= ;4n1ٍljvdU20m q`#K L6uzL&AREyk$rլ7_Cpt* %adک\dž8g|5IV \p.Y9n2 f)#a*=H6jO!ωx[759aׇ&忋 C3]ͥ܈27zųBhFz\J &[Zo3\۰߿HK\Չ Mxb"o#2U߇I +"? e0bQ'ig=KVDB(eJIY#*NjL`jv,lWQ[Uvm?MhKH[J~=E o ѡLP͚!c)iqWġor: 3 cDUcC@6jM KE5gLŌTLbzig0Xo{&-ZًH4;k/JS)qK-5bɞUqѰ RD-!mӧحyql$`׃ F5}ODr"P\PQ[Sll [r[U4d2Q #U㏩§IW[ng=ImĆwUAҥa*?4XdD,ɇ9i^&G_>]L٤E&i)w;U0Ulz s@!ŠVv`SbЂՎG9S&{z(nn<6AbФRIu0ɚPkH2HsPZC!*4N0%/q$\\/`#:i>涸z ,6Sʚ+ZrOhv3oyKnJAMb VqCW}(Q,TqI2};b԰5iFfz]q0ZQT} b 3m7eSd<(U\U{,Ɩn($Jp <.)Hw,̚/*aQV_4{n2;\Wb4VɊ7QaMYwRvF!!i1]Wo="*7֬ jip}?̝βlxPr3LmLϑHfV"]Kb ԎcJᯟufnx<I% %2YO@a嚗7.^h!;(t;xUۗ /Ur[P12UH `SfzI8n^g6&u-,(aLjDCe: />*!W3*oVPG wKkjE\AX 4{{NnփoN jWzȕ"u.6̋_Ͷ*Gq.O]! 5ƘU".~;!(0;>;3 ꀧ?%(?iV )0~;heqvO#0O0$~:]Td֗JnW2b.L榵u;igQbyG[gߟ)QkJ aJiS"F`=06J(bb `>i! MϩA.~MO-CLۗbmkf+ ␉#}Ҭnfzmp 1t\+AB:Wo(Ig#c}$~ue'p[X'bxz"wI$)YИT+N7Vawb/A?y5O0. ziIaF=ʂ"dR %CiIj'y`X`$&᭽'6RqE}C>pOtiHV'zLӯ  pJ\X]VPNo,ߒǧ7KγEge++ ٛ>@s1)^iGZCFv ߧ&M0^z ^hX'̓s|ԋaN =Ƕ5q{OS3a)PW煢/ºq?Pۚ]VlYDYT1%k I9wX94'bDpx1T:!p/no@%W#a]yiFFH]^-Pxu5@X7Ts))zXE~8,B /{Zm;BORL$ vgB>wjOA*Ay7+N\3i8[0+ [:?\4-9;MI+YH.^nZ.۹ֱMEaI!DGC'u$sH|7`5"t"|UBӫo" 9#YxԲ9! F Dxo#=  N0}.Rs, (@h:oNSvC_TKL1L:8ŨAN~b 6 PfM+r;u&JVHv_'KfY#F$֓Nub0ORLi *QCoԦuM;4_U'j$"dZ-yvUi"ʉU|==-TG-ǂp/ms4,|pTDǏ99MzhѨ}Nrl.&H!:PuWҏz/+#.TY4vsCH%daP+"j|yhms:C+fOޞul [GHZl=|/d{\T*}"X_'1f?yf 0Ay<U +w^KCEVit{(PV!AlA? G\'պ,GdVD;Z7l".$'Kͯ\tzTid0CJj(9⨂ב@+ư.^:O_' >;jR%Aф4첬 /qE\[0rbV-_1CBMw 1u2{8O' gN8] C&Dz=[uȬ ; s[>_߱_"FI^TAdN9J}tQ@a,?H{*BjǟgJ$M1 4wq+̈'xiɤ^݋V[;h,]n4.LPE7jg4QWYeWݓLlF(ĥ$bԕ^0}W;ˇcI? ev/DEdHq%7~71/W!Eh`5m'ɜ mg@rO/fM*RX L)1Ʉ]Elɹ9]&phN`\s$,n1 Ox:2-(xT8TxV?fIrZȶ6MpҘ;=B"|!Pep2mЛ岑Lit F\@l7Yn .59_=.+8!;5D޾kGp,j,3 o6eja Yl`ꫪTb x zWtl'\6!oݒ{aκۍHtڱBxߙg?Y0Ufp>2H_=@(F??rLw{ՈYq\2(j*Bӊ>L]fRO{R2g ((bW#sn%[V#\JȚ뢨|GmL gc2*4tIr7g@i~dAKL&T@jB\(d q>|F9֨txU<VhQI"D=y>&MI=?C,5la$~KѽG[3-] `o~k\SwKY֓v奲2P&p7> (=xpwQ4@Q.>zY J7wCRÕ`O{qyػ|ByƉv]wNA'^$4Pkh hp=";[,\ZF](<,њ!}Bt Im0Zc޿Lk_iz4c3mIX<}WB(Gt+3[@ b*!͎MJ "R&C(gs~?b=tЛh*U7+, 1 `a-frPPwח=o@:/.kr銛ckW;4n:[_A,I( uDTNo'B5"k^/w3PjNӏ%{ƖUj>SmU~r"59Ni/.ba#.%h|e}ԂonXy#À_Z宍6M$<9{_}cpJWukg#zg7J i1e7{}m BLKڨdMg{mg(f1 &f6K(J->(|.i+gpZYZʺnRͨvc:(I"-UrXEM䳦Asd[#+kĩ.wn[Rz?DxnF^h] ֠r [SzޥS7s3 A0: t,F3}(\R{5`qY6ooQ)m K]]bW/~Etpa!q#4^HPXqWCf6ڎM DYA:?/iПAzJY8N2] [;(Cg2/C,~6uM.|X(?;\4L{5:#8F$Bt8gF-qodJd!Ÿ&Yбd`&co377,YΕ Ks%`HJ6 p:5Ha"2 %UNYҮmglg~ObzAC#~3?Rz%FsRK7yXH{Z;4O/n dg 1&Db߷0ύ,KlIveDh URCK\|˻Ȇ?Ag>cK=X-xЩq;wdtxLSmDX~=aEKߛw ^hU+WK(LOQE`ʈƈ7tИcѶ@8m@g׊>@E\[-lA`o0~ˮslY)Z%fgl Pu5?=6)!,+G RUؠ2yN/m{ jC>-lZ/^0t/v&gjDpݹUok^$ح@kttM%EX\bXvh@SGBt3WIWU?XKe ;iU?ݷ!X,~H.Uҧx`Cv1(G˟Iֈ|iJfe06vCgnX2ZZ2/ⱭdDX }iYWR78${xVRbLzp'T[q\YL8ɝָrt@%Q57F*%UiA97IQìQV]3ZrMEwU)%f8rP9^MmiZq|%qCph2 jsN܌,rz\4'l|%юґ? EZtb 1wH8J!Rk[CDgBT #P޲i9jb_`BeK:T#B1Qwx $ 8Q,=R/O3uB}H(scY'P`~i+wQ(mqԒNXԘkdF ܘ7oW,qp/wI7^VGHav {LihΪ2CP!8rgb -uՋE#y;Gn[F]w&hrNo5 Rl6f>*fB ^۽v_ST b| a~8~UY#QR=3dC:m6*?Zs|~=#,wX(ۆm7NW.L(BcAWሽߴRSz #5**-/5a#6*͎@+/TCQHgg䱕j蠹395ktҚ6E.oVD!?ʹ13s>{c]0䲨WY2Ys -GDuEX_Y>t5 yi4 n'lzl]Qu/Ĥ,1ו!D ~륖3-gH!XH eTg9FCDoq*֨vr /qdc+S N(fpjUz;~tN6u,LQtAB$hz//r8mL軺w;E(Wt"Su?"$pC6y4h9[p$k O;| (ŧ6D\W_%,M[uЦqN&<4oNjU`t)|3H/8 KiI t5[;9\g*>P|c~@5M|wS:߸?OHI #?O@[[wQݏwF\>1^$C9fy >GFH?v >$aI2{ro\!hhPŶ?û:$)d]ȊJ봀ӔW|%F- 2͸]plab7FIWTٜF+56?#i(GXB/hiOM"Os a-DGD~ۨenQT~ Ez/ʮPGϬjSf%RO\!v &xEǸ/!5w4weZQni=`dL= 9P] N}s@7`h*&-t{P␢mcy6$Ȃ~V&Q6^$w$%ǴUjF aVf9SF)!F+r r*O=m, Og (M`|i7hF$]=6rdnD2#*AXGEPB9pJ>S^{lޑxrLaYp;V/+!RΦ#;Wn_Tӣ-z5vth'IzaB?H׋:eHn ,*8$GPCyi2`.|D؍` NR!p9n0 ZvΈY/i:Hv)DMEVĒFOʸ3oٖ?WOܩ_5bcP_ {0,+TnI~\o)ʿ(p_ߎ1H1BQ]zExU\hSg荳Ί-OX(e#ƒ9f҈XhMSa|3mW[ɀ{0|2Yj!ѰsLNe)|r+{ӕͲ | e | }[d"!Ԝ&Op- hkW- knЄݎqJw)R-*V{:4$3 lnY~2#)4yA P'<}jLLϫ y(n5dC:;R8b:ݖAi$}]tY,bP 3cТ Z \ǩ+$::8t rt14, ∣wcgLۇ`CAyzhz7HNb ~oYH}r 0r6k;69.yx&Y k])OufYd?DlS=B9rN%R40ڽ)_Fe~ dn0i`x[Mf_?J Ɇ%1?'@o( %ci`ʮf7Z~ebm\,(j7r&Mou' ڛQu;1 , X,O7_>`a~ !G~AOw9ӹz,)/֍@ڐp)PUb@] x<&j-P20:(Yobe"YMm;HlӏYYa^ ~Ȩ&E\Ql2][@^y+{ؙLؿi8ghr|u=7Ϩvq98r|P7?Pj1Վ[@OL{KAݓEs)vjRaޏ 7*`lX S_)EvG]gq'%s#;~ZW4N8,$6]kmԣ-@t3#?%w>RW7W2 bFhAkZd3mFYayeXZ"@|1`ro^_4/9Ap?q}OeF9͜uVޣ%NK7xK+(ObZNl/,P`n So2 $C1濣~nz!~n5b{E+J'c~xOrmZdمɜ^aM `,w(cSU1] B" ө+X}=;o-Xw͏*՟x1{3cJJ{05W/4gG&N?2w%Fen DD"&wӈ<7K.Ez&M*Wk˅#B:w`rY :m4.C Cii'wt;okmWg¶BJs*!^FԣEy Њ|]g.e-[~$"]rd2ʉz*ܠJDE*u%J>ebԴ(g\vh S}Ɓ_jbST Gkl_7=BlŠ&Ñ{bAE3*O"mo5K:lz%6ۊ4g6mt63O7Jh^6l5TFQ>脪kuGvMӦ$U<{mTw>\P{ԖLlB84[*hH'3Hko䃸8_y* 977M,+jwͻ[of{`_@ gr鏟͔ŗX(%.n2\S"o2 >6SUR6}yGQ]F?_FxU3j9:vYZ^12=quKf*^ykJwOb>*j'{ZK&<ՈRĦ-=rUpqI*oK{2|}y]uX~08I2NG]b+hvAl57a'˜"Ldq))@9&7?*WN)ks?wSq4Kv"S5@ʟo5:u#F !9"摼wՁ}ԥ][ oPAl墓vbK"*4aUj2P8aL&'jE_/=EQQUw@한FҕpX7%*{WmאC?(xK-*U{iG${,4q̧2'S:B^ &#v9ks[ PW6nwVj(\ L)j6>wd^ ہO7SQkpF~3qd]1?F5Gܮ;157$tCkKMaMoM>n$dgIRDANy*&edvfyMrTP8|X&jnw:uNg Fr T VsME]&Z~39,^̬=Ga8nvfZ?m(N,*ˎtXN҃jו]BpI-VPT{A߽&@}]Q< Vp5޿tp9< 7/:7D놇@&CiaНw,"e2S~@/2amMBɋصCYăwKLX;)!`kym˕/:],NB&bYyȽeĬzmŰ &&9L F-qW t:GRf@?gN)Nu\9SCf O~S2ac.1ܼ˳7OҮEa L9r#0B6Xc֭*ȑ:A[z_qȀ ظ2uJKO)2rW`j|`f=K Ycoַ*iɉgNiNh\OH?MFnBƘwPwjT*.n0B˪xa  @Ā!,/m>/? #Z27\o J-EGbT;;O%(iHO@Ed`^K!}X+beDcÌˇi_`䬠b!I*Q2Okޢ#/}^_EXh%|Gz:ƃz+;J=Y2 Y[7Rs~a-}I;Stnt|3i,fY8rzB\?&&‡p3:z_b7s:t]&h.n*ѣNf/Ho: B6ʰ$ȻFnC$O4;Jz%1u e O-KJǸG;,gUfQܓ*5[gzu` 8fe zKB}pɝnح AY@X]Ur1A.G@iZ͈ Is@[ćYjJHx(QC'ua n$H gF ^K<঵QK9e *ThnO92 qĖoW)jULÙ-ml @xT,Bᑰ9~Wcm%EmPݸY܂pb5]^7lW|="2 fV?oekjFSwɛjɗ$.~!Wũ=-OL> *ܹ֝r'߷].X*^Zvʃ䜊Bf)VOfv]NZT#U5&JײWbP'Mo/-qD5%B=tuɵYjI??H֜ž\݈ =Si~/?d+Z3 @q,Vo6h3 Id-nIy#a^8NЂHLO?RZe_\L;> Dߣp_g:aA,%ܦ a1ys`mߍiiPzSڳ t8â&wofu?|xՄ$ _WK?(9./~9MNM`2#w %{ hmAl-.7 0:3GkDdP)A3pK3D`?/ܹ&_\vdG]` !"wx-90wsFF{ W4sx*ӻ00w|8Q{4镭GFQxCLldOLGTQKc_w k*KOi ?0Kugu!v81^}G\"|=>@/8}0JcŰuؿ}:_U#m[xcɝX`"W;؛ [t#nj8Cb#ǽK`.Fvk=6A-;c.m52ɩ3[k8~npӭ\wM 6)~ KaJTGk H'o|Cq~gebӬ~;х KU'?ݐ3b5mNZ!<%JE7Z }ηoO:Oc[ޣ#W@6iC1xBn tcqАx'a[J˘pF54|Sm)rLnf@ܵ <£v(Wjg=&)1*w-YVQ%a.7\iF"Q1$|ϼ ={T#, Qn$A^[_pȓm]&3'9Q}^H9&.{TbX:d&۴-M}D$x̛C{ \_ieh%sZMu?JۊCnk :}UrcL,JguyTy֋SX!m<qӸKn>m/vlfU6f{A]%\՞]/z(+Gj=ߨa>k՞z2u>Yン-:s:ZZ&.AEPxS}D8ydȩ=cMÁ6L:Z5ʈlX``UCe)w*|N47@X&,pɛnfo=F+Xœ~a@.msLSBk)\eAZt|K RhQ߯S(4)*B_i/X_ck^?dUO<Jߟu#G]ށ|?Um֢R#]%w\M(-W-׌Qfj:;9J@^Pm X VluQd/n N0 IB4 y2aէb2iM!`+{FuЄ;e^>QmU3s xjJ͔QoԈta{ oCRQqdӕmI\8UVsÈ[A:9  7&Mp@&9v~N!-K-ōEiޚ6r`TKh#/r%Ve:wAJ8r E@KZ/}~) q#|jM>񪵢tKnj]J՞FT9'o~^TqflhIͱ ;}x&CR,6v9\"lm4{K¡-fҤQDiA\@Pī>UUx 2fg T⭁Q0:퉞y[]wh~RAkWmdsg/OCStɻzp1?LR&9==|K\(vCYzW/w"[fL(|H JXՠ\{ME Hy7`[q({uήfzC6@ᮩ}2>=@` Ο'|=Qi- SmftnDNp{0ce`?*?0\[XQnz[p/3Eun#噭"7<[-KԞ-Jʺy)d֊8Y@l гRq]Pޖ  rEVp#}^Řl uv#3fүx_wka孍%+\oA*."7,ee072m9nBQ@ӍU>*?iCΪ2YD]s:em%NR1PJ:/wHs1z-=H!^UHFТsbBNSkP~e8Qs a ×3Z Jcx\ղԜh3Z# 6äOrӪ4ϗ ],$;.&\@]p Q<#d<7{ ;j̳YDJRwI p+"ȅ>)K*!Uoo 0Qb{!/F 32ᙧאcs<,3Qb3NPAn qC$º` DD#{YrZ{"lu)p=aT)ǾY`RyA; r"uH*lL~[xŕx-&*޵ ) FAmjc5R^aP uхq* ym`lm !:- Mk^= L mSŘYM9fP̻p` >~>B6KA}T3bKhܛoe8HNym% %5֤qo`R"}+V#NP4U D$*Ŧf#0j򶺘zҕQ@B9%CӁ2Gm5VU&+mmDİ_1<4o Go-k$c.xr?6i ~Djk-(f%/m)E3';_lP7XT^ U3D3;e 0ѐ) u*Pt%nzEe׳0L^O)#9`Zx s|qiW{E tוn Jv\8boζ cfcݚ@lMHʷ9ɿRڧ rqmF?7; TpG5bN2>b1~s>#IԵ9W^ {LWJb[Ef2~16F(oH;!/5v½mTFM),]@Ϲ9p#>ACj=VwǠA.םѥkЧ(31N6{pԎ$@^ Ӿu!WE hр\X&p[ԏhffBzf>7CtHߖ񁓪*y.bJ$4fэP 1dȞx"puMXL-ב}qZ{I#(ށ*(:#G9z3 3R#Ui 0ܘ'^QTIO'%ڑQ$Sg`GͿ!?j]]J'Zvfk{vP5tܰ~ Y+ aSe$~{W]淟=Lq@MoM}ta`nlƽI,~o6 nkx d4t\!L/@^7ãCYI>=Q(L*'Y#OKee{Pc^5jg1 \S"l֘tIB.Zb%ŽKZrg,yoV 4BuENLsqs,(1͗=By#υm;zR {F(7⹗Zmx{t`nG JP;&ݣ,-er4B$=%E p>Tl2 Z,ՑxɆLD(y5E Sb{/ D7[W#Uv~t8 95g&pc7@k=X q(dC1,Ze@LՏ&cTnwsc($o:Aҷs>y@DTGW7±q4Km[70^;qx:b[awH>Q~k7ae `l36 "Yxr^G8"VdmX,p\R@ɣ;5%|0KU=+UEc|79R iY{b<| qzV>d;35yUZ9ȼ-W `<y`u0U 9O5[.蝡Lm䀹{  ^D^PcX)2xS϶iIEof}qH%(%2xt Iܥ1do@7uY)b/q)WEra5y|5_;S#C:#ճd8c.CU]muwd ]yHM6N\ Тm?42P!YB,})~SzM6K[*gA~at(HiRr'35P볧eb3Q vesR32LNOWfR |^iFc'xN|`َݕ5O\8=4 ki?qSq\:;5Ag%=a#+Ԉ_%OQ(pmolKw'#p$|j20n6}=cƄw&Ǭӛ,d.EnMMC!Y|eR9, qwm92]܏~HnKg:rgֺ+ɮ/xC9^'1pҎ0 bG/qzl2y(=9õwקCs?yKލ;&AM縃 UxY虏1l{DFm2yb9frYL½KӦbVPC5W_)*qS|xٺbUתI ?z{x*j2yO4A, t:s\w* &3}2J" neO$"R`WhIO|:XW17liN>Ơy]3a@x]obEroNRscqQ+ɀn~S*fjxPW_ӎZIQV^3S$Ub$,z;-S%qis-d i&_G A;anIp3D.댼E :$r~x@˹ ‡C" G>}ANeIv9] M5>cn8n鑏Еj%Z?>쀷תz2grf ު@QiG`Ȫţ,HW@fosi?O2|J8ϴ6(Ng"`}tcfFdHRL|PvBY(Er1P/N"$eՑ+p",~m*yKzCC*,C+3\|~-56JLUg$Th5Qw8GÛ Uqn i~%ĺceAӆI |٤+*W k+ |!ᙀ615] )6YJH)O 87f4Es~Aٔ5Ls܃žb.+9 {b7 d5o ᣼oR@nbMHV%isA8fMm@EeH#^9to,7S.秊&;$;FCwk+Q@X{O3: ڝ[kq#zb>V^&itoD PWV¦405YQen62Sno9YhOD+:[2)b(8)i]esGx궼T {mT[)1jSĂ˙Pc)BBbV݅[jT_܆"Ⱚ!Qo=5 Ser(A~ 4{sUX1D`rK,Tv `FJk3v|,ջӇʷg_ lL 1Qk2A:CHc\q~Fw*!{;c ac t w9ouiB02,bJ;wA"vxv&\/?UY'#Vؽ9^ݍGv跗@t=%4gG19{lT| `KW$y.Cy q1 t!wXci!5YV "*~-J--%bcRn3R̃)XnJLy%:E`m&rquE)o9Б&-;PBR4%(^0!DXN3)*.ha݄YC8ŒYq<|mSH碴n{Iױ!P4B ůt_j_S6 E=|*ۭͦ$ f(?҂muïg 힔W)v\p%c.OVd'|EG)ωh4J*\^+ldOx;)cl綨$LHʣN3o>/(NWw"a{߼j練KjkoBh)bO彰SN)K#ǵ!톳ѷzy兹8XY$4֚μ o2ETwU Z0$t_rL<է=Й;pTp#I cײoᎩ~ؒ7 ߃kfQ̅ - 9n?T)k| 2X?'s.j_y. PGGX2gEU {k̟4i<\$v ( qO$C:ƙktm6"rUyզӣP.KcY@>_T#ӱbS˲%mFWUģ`zl&w;i1\y[׬Zt_!gzƍ:C X7gI8H,X$RbSS-א?ъ/c^S,+mbίrm]_HEcOjcnP`6'a׫#n 70~⿟9y m߇>S4-eOf"0*# biJXhMCSJP1G k'B sH3_ : fPiw轊g/b(u״c*V qLaN玶F9(tYA$I_,E[!Ro ^xp-J[JlG'og!LzѭkNo !ʣJUD[%Yv Ȁ:;Zm|V ꧚Utֶ8Fe_Di0>h0]PuT FҀm?0JWZ}NZ[puՑ^'TJPSp¶'V4{x>’,ųvN EIλ))<(h*Pf,kgh+.iN{g ;<+ގՔI9U,g8aL# 'ܲϡ[5I,5/KCЫf>򡕎O8܃1ZVo~sxJ"˾Wj#._;kA'NFmW!tӽIA"WZ9Ǿ7^*XX MѶOlHVwLAǝthY9|ŒwC[tV}i>B8&S9];*=s*ǝYV rcRNICIS=(䂁|_Uen&PTC@WM%w{ePǔU Ǐ=mjdx񚭓yHg:5: On=ƈGB#XZXLx9޷cV%)jdȨfZxoAKH=L4vNVo"#&In+Nd2CK_P}ܤUtvTE1mp)5Qz6:赦>0VܚbuWQ>`͗m#BjMD7irCs + fH` 1ĝM2vI[XTtTZ><3o"^AB7n\YƤO8WHQuvI[3!5K"U5_;tһ*yW$DYcM Ο iY}=.g%EL!1[sEfNjij0xk,= AEc7,Yb#@xͽK. jOu/¾U3qg^iI_nrf]O:l~<@GIaZu[”埬L k!R4=a:by^Xnf2ӫk0q@ؑ, v5nd*fslѡh(E k8͸aq%H3-nDAh;LHvK'>M@ I_};=m'ҫ%P5hc ?sW}Vx:5v4/c|%?~&D8H,}/94JoY= Bi}U2U%e60JSȌBTt2iEݔBt嬗ʡi9e)pt^0~/Fy6ƽvVaw8=hKwbLfE~9pU8ELPE~eLx$c)*ak$F mKbƗX1"`;oxDA;*Qk+©){Zzy?`kD;hKI{{H0F3qD'XZ=nqLIacPSbڝom/eyp#3@^ߎ|m9oݗm?pmC28bm*Xil.{<ԖPcrSx  Sx壖kt-ȭ*J+x\DgeD'56سZգ!H(pC]87SU L #ʮWLvT$k:R(hâ#aN4U~jdexҢJU E/G$#[.!!xT-ϝo5!.aXZVm/Fe{~3h:4hw:GGR.AhG0iF]ny``,˄ILcsh@ux7KlvLiͷ}V[s`f˻{WӳFBfA .N@́D9"НICLV} oMml^;Ўj\=#?. gC3R">R-}XoED<_6&t3Ŵ%Gtŀgg+s*;d1g/SJQ| ꫚z$>[ٔqx,IQ " _"4OOm:@"U: ~dKǓX!+8u ^܏ڛ=^yx<އi^UkE|R܎<`p*ZZdĹi}5H(.*ǁ[jȺa:/~MW i'o* 㻞2[ މ_uw:djZ~&3J !oV: ߆dY R2;Բ 3 ׌6A4g?9 l~=ވlH C<VŁ .U Fv0X K/Gr(mXj_"Zj-A|鏵_h#fs2T4QO3AeQ[ڌ7v5ޟy~w,\:hv@ĴUzcZnLY"uQ*\oSNJLi 6`f.zks_>'4.cU X_EKRpyb6A~$fѡE~eW VGXtlj0kQӡ> ,Rql#3TQqdr*laB~Mt1٫>+G D"|맣y*:qSq?8լ?e0h\+Wm{rP6&+~w K)'<:<㶰DiJ~̚zjG5sڊ`x9XbLpxѸTgv /\( cFd| 竬P1 4 wHo(7z#w~~f3?ErZMzmeX:+._;a*??]Z'@G+ZŽ+b?c˼fGAOB 9 ^=A6;m"?f&UΟ:Tw-D=/Q6ןg/IӊmR(t]>H #9a ׸й:i6F6?3(}ۑ$F7G_c"K ϶pڽ.eiM숦GtQNH1ڌCU?Ek۲WH<땂.aBU 5Y aRn{ @ \ 26R-Ra HtPeF~qKF83D WMGY4Y`6!ӫ(u-ĪS"Ңu=(Ldg4_lR1%W gnQ,S! QLCg;psq#|BT.OeUܴEdmF9xP|KQџj^ue~ڠu!(Wq/7CMn;cSƨ'?][uu4 LȯjpXma(3dؿ=VlGP7 ZzJ8U .i0ϫr01 /'/j3KBLHJ?G+wae-i?̌L!}u0YkQL84֒H@} 9H ʋq?D;u=bj`C6,&ee3D$ˆYB=.3+.@ QW=i{f+ Ҍ1 J aɚR>=7DpO%($?m~FΚޑ$e]fgS ( J=`"bʩTwֻmK==5%7;P?eW?4[_-.+/ɪ,e~#]lVD P˴_ٟA{& $폍̖G϶^oh.%v6?yltw(sUcaWmu$julмOu7s[>a} \qe :kx M5 /䡬 fzɱlF|X4^#ólٰ( vU/TS{4go~z\ҳwƠ*?fά$lgg墬.te&b7%ޢJ,lJ:ә2(6 O86Tf#xq1rH̿W|x0U_,4 b΋-A`AijifFI<>Vd2FwY:egAٶ{_U$EuQ%m`C '9ͮVR,H`׹Q$m|Dn 0 O[I,?[a3ꡠJUEl1b]#BzPnpQNJ"Ah+()'Rnxؓp Zm1rQd[8¬yI_,]܅Nz$]tOVX'R}|iV`sˑɌʷu˔7ڍb]0kEJdo3V5?F{S odA5`qbb:'Kp\ovb & d%>טM#HyW}n,d97<=w)y((j`O6sc+kA\V[A r6cMrZʲ CjRo;W_Hݯ%FjRtӰ˄)k@BOdgs(pajcD!%7yzS!4dYrNJr:tҤ`+_^Tml-Fh촏Heyԫ4ւE9j"o7h8ֶ\\2P[sWdUu׳_g)MOktGvSOV}|'@x9̊Y~Sx1aX}EvYfO(}w@^Ho0Dzz~u0&9KL/ۯ^Ԯ16ELP[s0jG4&]W~8D Mvilz9s%s$]T'1}$/(v03|:t mrj]@~ 4A^"#S/h)),z %dT'ˤd8*bwF`0# (Iv*Z1I{w¡\t{zt0gӞ@9n L8SͲM; Hڞ}yĜn 9@@N FM.MM-}NZS0fTϟb NVAm+}4:i:Nf9m&kέ/{wDQ 5`f&m$!!2è*]8[AF"mIrm2CR/zG$mdx_#6:z)*Ģ p^mw(CSzlyCvTTO:Gu;3#X"ڛkCoZԯT5 ]u=4c3:!ձ؆M@JVA<dI^xVw ͥP\FUdRX"9 e^7+kkf"F頚7/&xg"qpD\S!"-UZv W vZа,'Rq-PoC^pPTÅxoT4e9{yh&A 8 LITGj#aAo ғO*mOD9xnBFP{HT>"'3VYGdyS/XsRX1KWgt)aDLvxy+·v׍C6σ+802ݦHONZKl U.g?vPC 'uĐG'ɰŗv>'JE@u(~Pѯ9BG󿺘|k6"?BXɌˊiL2>tq_zX.I{Ӡ R"nZW;V,x ]T_@;J:I4汔*xa:a3yψ{WŁ V}Ml~r#`q9M3Ì-7ð{GR#)>#i Jxl,F%Q8ͪ ?K:?3EIDhçRpKkޏH!ilxrl[n.@YNf&X&E ؐ9C*;?TX'jw. jz^]?"Z|^ɩfDjG w%8d r"oEXd68O bUBw6ρ#! f"5c1oy)iNj;+[$Y ԧfi\Lf*˕vA&{RJwx }X+h= aj~5`?VQ<Z+ *oP OjK4dP/vh#%wrK>l TI[p 'd \zWTzmWBVҿ"uY!6'Ho@+'`ڔt%5egd F$sy>A`ߣkA% R}`^ {QZj zW<mvt:ٛ)t~`]Epx< ?+yZ7LyG&͘k;eI(Her4x01U6A:NZ =cG VnyU&n2[aoMͥUZp) u/~QNШ֤Rv׊=b/l1iܹk}a7; QA'P>n-Iy 9;κI $=,xMѽZIc//ƶ_T1)܅j5=!kHO)vE/NoaJVcl{{`{t%lz魊 /I-zQ$Z-Qn{il!CYgG , MZIpm|{KYtNp:=!ddNAA b0rIr>lFlQ*J+E>Qiz-px;ΙL1XkGTgwA}ەy'6FurWv3^}6עLZ.o@gO\m6DzœOv(lW3!umddP51 a,'rDu3IvuLeŹ8+ۍ P;3[y48;I _9O[At^T}ѧM!4OQݟ}ش;VsC)jcuEo[wNE0Яj;ᔣ")lA[-$e`MtrOq{2bup ŵ 3ڣ=ay6t C=U*$r%"k (U&94vww]X 7$v*,3ˠNڣR0FPa }O>)a h+.rPj˱ = ^Ď:^WwA^#a~$QI}ǫ?k&2|X r)NgzZ$ `|iS)zdh_0kdiNMr#p\^8v45X݁i;-7l#s*C=劉9#/@o$guv+9\TjdMSZ.`sM庺ևK,tߴuO%ߓVcPZeۦk:REpz(*5b:)!Ћ="T [uRۣ +Uw(!|ѳpCoݺMȃրf >OA7IKΆ&s clɼ), u6D:ϛuKG克B}Ǎn2g(kcWЙ;(k4OZص»ȋCwChEBP$y!}^jo C&4M)df5VAiVO9bcOLѧKL)fSx.G`'7AW۸?1\u`(Nz/R^#!R>[0:MRD GODˬY1&F2۸2#(5Qz;dQ3~ x4</{i.#͗ M]o;AJcQlԸ^ObuF z,&'ݼcRKڢd8md?h//ޛښCwJNݑUͯsϭ3LTIXEO\dg'É.M!%(s<@vKI?rn>v,laS ѲF+0Y?*3_+'{ՑiIb;qDԇ'Hjv SU5t"чPZY8OW|p\)WD1C=M{1Ug{CD ps׀rXDdͫN (/UC2 `iڦ׆yv+3kܣ7mΠP%ݰu@O|">l u@m-kZd M|By5ݹFdrcQ ߖz3qNKPVhU"!?u$EOЮa܄MR K}*X#VsƠώ=} OE{ߘ d 9[r!GirNġgBJC}Jg:0'ֹ,q??eetr /e=ߟϿLDuֻ)G >QzWeB@>k̆ 8%尕Cd,5cT̡1QӔE6N\t F@"ulBϵ3ƕ +ڽMӎ0ᬪ7KQf~t,!cQ'O):ueaJ$AW֜OWRMoB5uJa8+2ޏl׽lzFW( k7= L(c) d+&qaJ}D5Sy@8|׺_1 U\}<K'92tD]km4˟l+)HrX^+x!x'qZ_ӵ+m16y{\*_'؎h5BMOtּtv ΄Rd5%)vw+nDH8MqLfm8UkjƸQj `/xIu45At[:Z_B?È1H7b.5dY,F|_rTŽF4 #&+1 FJS` '&"jUS% T٪ힾw/YHEgprÁ^hpt|xag+1pFqBep  (XCncI8ϲ}-Oe20S{S[ T ^>z>OY6ߴ=ƹ Y= %Vt#x1ou =r&L['\V*Q51?r uxx"#@g]p`Klc2rtnXxNfʙɓސ8n_;'d靌/S%ζҹ.X5djd f`CatjKժᲤNc}[̂E?T^VAk0əh[ZN ύ=Mz 筁`1B$OͽhwH$B&dmgQchVLi4E1m\>K{$&pKZd,[QUI"CNA-A b1Q.HŊ33SoȻȅ \V]=mc(ʷ;L }j>6 ^_ļpdxD_xDt*#_1~Ln+Fz.*Wyxf]?-E>k t8 _h"i&枷!Mn2hqە5Syf9J5^ԋq K|$jP!,tx<6f?Ohe 9pUPV`.Nm,R;.E`|CIE pK Y}(K1<0K& eF j-LGdά2TK<Ԝ\1=W=gmI<;F%%;6߫rbFkc,V\X$*N!; mrBԡyffWpd68H,˹*C^,~^jZn?CԮ'+nd*\hB+@8k=jȫfF?'`P-\y}j<6SL9rG /1'],ʏ7`^dXAA {f(#ܻ$^uV=VTD'UE턨'W<TnWG+S\CrXOr%SW^]fۧɕH6]6?oc(3ɧ̓qS/QKr6"~bݎEм(0fL8R ̔nѼ z=ξ%@cȀ f O &2>4vHk'Z_ܽ1tޜZ$jܼ0}GRJdIDF0f@dl͏j0./Xǽb}>h٨:Dȴ+BJhp,˲^Rxڿ̕Uc%;g`:<D@sYWbBB(I.B}; lkIeBm6N;C$Fw`cq3{tK I?4!OoibOw5Wp06JDQ =(C&|>priWFy rT[kߠ)bc=on^͜؁mtKx$6eC*25E"~z8E*Ȼ_,ܰju,>*̨2imU9u{x"*&xLul1 81AXqY5ax,d#Evks&=å)-\VY(N4X^5Ny+r>{BSWy48m_-zp\3mqr4fS;Mg*`9"̰i%t<֭{/ȥ?MW,V-lqs|PoQ A.a-^3AGɏFoM~FEO-*D 㷴RՅ\( _)Ao A?+4Ʃ=ߣI eJ(ׄbCZ(1'|;e?SH&lh1%=||=ټYVpLꇨbpnc ,9+MwbTeB2X]֔~ۧ|B l4yp-\T./ڒ*jœz?Bآҋ%ޕ=ŋjXN[R|e%y4lw(W[o1>vLRջ'Km(ځHvͷYb{fHzC0 WZg-8{[GAx q)^+>B9q rrڋ6>Rh唽V(Iێd z 8Nd/ٟJrn2}/$7EB|p!-ˌ[O~++hA{|pZr,=< s)q giu)YOPkN}FK{ڎtiy$hBc)Y@A#N771u3Ytzk;nHՉd}դz :wG".Z[Z6u-C 9ntcxnUR`mVYגf 5'f]<%4}~p]; ĸofQ#݆UDS(zDPՓVgSlkG#$ѧ~;OK l8W\$DJ&dI{cGoG0ej{ 42O!"!3^|L{2;`ΘĪTivpy{Km)_SvXq%QfW9g߃_v: '9C qv_H &\Ttqe.8Cxk;R5QweLc{˞;B9 D2HptNgDH?\PdvGғH,|OKIOtN)![p ^C=(D~wE0xs. t ϒu-wΑ:y+,7nYFTQǓ۵ ]UDA3h;V,e[ethAw*K!a?xi=#7 h $;"ҤC]JզƁ評(ޛ&$ʓVQvt{WۊQ |G Ux`3`E Yp@PD n`@BC9|FC(%n y +pgDE\FyQ5nɼuOvL @kIEW - %` /!-4n2%/Z\/c#%\*QL}sH/\WJAG:X̏*[42m*Yr\sDjf[|Rng7 wUD f> >XX&j[I3U!n1fji@1A΁rB؋ĕ\KRCnkppіP޲_:䜡MK:4~6(T>=['{RZ}x˼Gd}P*h2/ t3z*+GXl90W2^㥨vrZSER_yqE-x W-#YonrQKX*BO $I[4~|};psgvόyH\k6D|vdӪ+3޳ )@$>:X\õ:?ؙK'D5_/SD&Q3@[Zg>PLd5vCr(Еe%4r+v&|:#y$a5Ӱ?3PQZ+ R1->G<ڨ@sI(JQKW@*o)W2KX(}>9hҌI%aO-^-=o+i; mtxvh@sB ,r"o9b3,H촂Xy G0# ? z-٘z£ Ыrwn_8!!/|$l߫> 4(-Ȼoo5Toߋs ,@1 Y_Dz?BJ>Zu3NN]8"ӑ:K2v;;^ vڭ:$ihGxz5CfehN KaL1GhY!<x,Ud_y,UvÑ(zda&TE$=ʋZ7_z~=?f(S ٷCkWzf S 6GgPs\OuH3]TB9XV8~)~Z83hf|CXꃠilmY='m{Hv~ImJom\ V\nig,̆V\d(',.J_PO^!(zR}2CI0{~kmrnk^ fh'\T\1`^EWfhrI{z0.EdKBQ6iM' ZϺTtPxb8)f8.?6r-3R w,JozWU1B0 >|pJiuѭ*-'{'ܭ<>%B7rmH4,Qмޮ>T_ӱ YuώM[߲R -KIls;^9DHx{TV&9R~GaN~{Q~ :{#@)XJy4ú[O)DnTMb-'[6F0|ez5~:=?`dXVh\jD&0:ȦS;Gm|z!Ӫu(W y @t 3TxI)!=F|M]5,v:})구s#4G!>!W@nL_|7NB^zX3cGA$=o0c$:JX ~M?˚B)dC̵|ZTӂ-$Rr+^䞇֒4 KۼP\ 7mFtW35V28m`ZCl#2<ri .7{ұ4im{_8L^ eԑV1i] ;H{j֕I=E3`"uldț1_lw))\0 j麽膾 ;ILBxr!ɜ s:0R&Avx2g`9#:plUGtJ&Lv2ecl|Op=J ]/Drǯ LRRyȽ%%T!Sј+ȧR,&OѠaچ.r\kVg=QpDJjq.{|)0>&TA{D2c EwF`8"*C{p GWPnMIojKf};'*+60~&vd(ȧݤB7k\C @!*5cL)6iiº+grNd ZNDw' sCuz_=HP)*l VKE Y㷀sUǑuJ˷ t==7X8ّR7c,jn =BȳnP[hNZyYG. lc>i@~gnNo u']Y+4R ,6@sקVXyciP g<-2U9u2( s0]J#VƒWJ"˯KUbҊZޞ)J:,議5ZJ<“'H،hU(W@!g8QoYRrlż+ZDSuN40ibnҜcxs,b _tylX\m,+tpOȞPI7#6RAUp;S>X\xH\9nK*jEB#g[ |jF,KU ? G*ܖ[> !Y7~Ruݵn(!'p,qO7'UV. lt{tFDG2mDtWp[yV~])ʡjLdd4D5轖hNDlN_g[ G*QCU0`'9Fʼ5Amd¦*2[愻PvOzy5H GI\DsKېÆqm$zLX(.d8e&(c$D]s_`@H=F}ãϒ[q',FG[v9ZzF5e^Jr 5y Jֺ7zH;Qøoİ%b9"܇ YXotgT.G\kAidFdxߐ-p:f9L>ڝ+Vw.!tnbKSpt)nLX BmRmG>C&T2(a'EW`cSt ^&,U0'"n?h= Y㻙M͍ hiX׽zM ՗$g>l-0 Frn :M*U.>hq{nގJ5yEyU[g=M Q$Duםq \0!%y?VaxENnN;9L?/fshI'Mafoyv>ƹYC(Kt&ZH 3=4|O&@[i-NVoŀrp%Qwn*?R3pzćj1S}Ew9NV$cU [SrVs⮚>n}ٷFK8UF}eE_SpND@qqaݑEjS.A@| boΑkf9Z[AvEcf]pF:z I*eAU7|Π8=VWAag-Ǿ6 |'eʥ992NRVNItyr@ uo@F=4!|xWtjxw [_rU,"}6EH5ۑV}-^q vjљ aFݟ)-i"^/sԗrМ]"~rx!.$`ޭ$7߱mV(e5<},^ߘh[2p>k>.pA1yR#IktS/G h8|L>&C-=Wݳ`!4]kr|۳P^le w3k'>tQbzyjܳ o@fڌ'PU"֥-Tl0OD7(]Y!!]|ڿVQ耷uEtBx,ct \1B9 "֞]FDVǫ]Mck z^ B1E,9@(٪5Μ$S+JgimjyMLGu²u jD/h*g iƉGXCE`7urÝ-=1"^pQObyCEjlNRė녺cjjj3Byuvs3&"nNS޴lX~ۡjUYS$=ܔK,ֽf L3w=hUpU@J݃&Y?YWMDmTVkɳ\Ԧդ,"[Z'sVJ6ln(ηueɸ?h;LUɉxuAeV*t,|wYep.7 d@žϷ¹A ;*?w:j|7g'/Z~(n *x'⃂  aNmzn Œ Mb.{ĝ :,pfc`D; W<,FSn1ǔsgHo VL< >8'ƬS8@捉v**E\dn|#2sT%yDMoynQy cDj}:&֦-r?bhvDfW.^[2#e 1|^,{J5&Zl1d} gEJ\qΫɾVJh/ٝ|uz<*oPA.--}C"k*^ >Sq `x(v.)Z91rI29N{w:ox.rbȴnU Z 9B(\TX2Y1iO>L1 * ApeJpk?nb;,X(20Xl\9+@\u^W..>,#WEͫGfþn(e%R ?4 .{u u[~`:^m(S8 %}Q3pudjʱ>'RQ~(}7wƊ\'`dj WqXD<53|ݓ\GǙ4x C0#RN8̨@GUr'yS&=7xmAOib(FĢ9*{)*3ҜL)bw E]=C{>_ ѯ٥ 'N4MQs\؅I2ϋl95ж ]w&]ӠFsK0 h̑gVV = N"zJUH'z].g^r ]o<+VmHbhߢySwFnY cș\ Wf$YMySJ-W^ib?'M|L Ip|]8/G-d}ĸ_1j _>X\t3a~S<20m423~tJXzvM9j}wSmI0/O#G{/&mb6?ptrvB>SZ?C-GF`Xne %S|%Ʀ?^hNb.3rm)k^ xx׬ηWx@ɠD &HJok)E"(lv^z`T ^uq"6WT "tmW͊ $[d vVҲ ci{,@9RψN,rN)8/2n\m'*Led;6kc찳Hn4?~H &~00P9("}_l).s*  <20(!V=讯rϸ'K|Dp悪'W *&iOñh1aLU^쮜I" 5^rzQzT+֥فK%P9 ;suc`,◧r'׈d\[N,=? ,9߀׍'pTH8xp]U˙&.Kp= 9ckZ5KIj?#*]6/~0_ìD\ItG83d:PWy|8VYVKV+S_p5#%^/o jL=>Zʭ~]< 0x~~{)3:!ڞ}̱$! w#Dyۆ7lA_GىB_HL?BnhG]l5z،йG93zQO˴d5*I /K ]w퉤8N/2n^ю mB=UĴx>u4ֻ`. KU͕ *z|pUգ<=Pc'<}4]$3f2qw ߃?=ݜPs~uI1Z,e HFʣ D2KkX]NiswC [pE*,$VCgqZT&;eO& `Ϣ%%9p]ʔk!#z~ ĕ6vHZg>[zԥaM&N&-߽2|n̡Di7p!6Q0u,n 5LX<+ץH]zL;JXaѻA8ցRb/}#6]m/:Dp_5X9zh ښ 12/j+"&:ᰈ̀w]H(3̥/Yö VA8;OM?fɚ|Bv)<Q&D6?@T(M(+ E~:8+xNW'fk3$-hCy$3-IU)1姨2dzՠ8 &ƣ/ttJX'NEYGe6dYJ OA?p9U`Y\z,s%@w޷Fmں>{fLX 3flK"b3R dM5"Nތ_&J kVZF2ީ|cd@QO? s0ys: Xf,ugF߾WAi||DJ,w`49zsV<%oRMX!"F6m!r3Mu<ҊOTýs|X}p!"2 =rlU; @^k7h  sU*7:v5|Vv 2!<<4g T;0]=UQi`Wp]m mcPH*K=u2pLLYt8GcD6%N齷y}agX!}4])#yF3zUm^K *[,w63qqO=$K l#|b3Ux{I2(fm}6^m*nɠo@Y,6oHa5 Fߎ<$7 87TnV57#A@9A1x.Dה.(]%Ma٠nl,4bPBlcV ڣJma{;@!D`TH̷H" 1"IwZck- !>Ose.C*9EAIwOj)u_Utnۿ=և_Җ ״V^/IעA#p2fk:NEM YVe`qG;K;D4x":I¸CĖ;R!*-۰?n6uyy){p7 nV@p /1l!O`Z*pjf-V#؜{T"yIqKk!D  mB>h@F9*q>&&0cYJFwUZJ PB܋-RΒ!-Wwmwnfږ)9|fܑ_cL̗4N"Ŗuӛ '';3Lb8z3+R F7ât@|)uSqjBٮE?LcIsRIՌahp4KKX $sF|tI{MZ!ɵzcݲprd7R%a rn\o !AךT&7G@ f@KUhXISX s IbSvpA}bڃhK03l8C*v4ij 7H*y* 8oimS#bYr/w\sa/PS1BI _;dS9L'}b|RB Z2˕PPZξC>ގPiHے|D6Cmҧ/ ?SKfWvYڏW) zΟ6RXI7Q ڭ>f9 t=q|vLo*Gn)x_p2L:EYY/-U3y1NqApoUfS8[k23[ -P[1,t9e:yƕ~'TN }L )Ih) Py GPE|.@}{ZќZ20f+k xl~Żc-<y7]ĢT9FWٝ"}toaCfa$fݤ:Vz 1+hNߪg$%gB?QFÌf_rI&c;O sOw1tGĤM /_؅5Es_\X0~ Wbzog5(u[ +3R,eB{bTwo)j'O #zbG]4aE}In|YmvgU*rpDN=}tG`x#Me9rޣJǯ,G&_Yn%ʪ[\R$޾0 D|N6(*12 %+ }CceG&sҬLͤ7 ]Ԕ~q^,6s6g~sJfvЦMU+gR6_ (wxB P[m;# m90NoUe<Όi1k]!dbn!/ i8ϚXi@kI[8xIDD!sSɴ '{S醅m iL,"qkcM۹cvZETb9o9|78$ eL :Av"`]WrL.^Fv}U tM_LܟhK^TOJ1 #jmRA]ϖz(7]zB).)r_iOW{e u5ɻ&][88 8V'myBs `;u';_,0z'oV_; *Cy͕A 4"fͭzKW\\(e]*o?$9s7[dc3Դ*)#]AOTlqR|)jo^]}Ʋ[ny3CH2VC\ Ywy':<3PcHZ&QŁbystC M)N&DE Mȷ{=hN2oxc~1I0v9,]{7Ӗ71B9(FTy_;Ɉ,g(9-}R|nj47d7 2T3IZԈe3YϏ%Hs/j:Biyu:ɜ ߲+l)Q*W!Ȁ}L\ \eEޗ,<M_m J?p^r~ E.I2MAKke}*Qw~d}+F7 vR'_n'Һ󚧸YC8i@x$lK_q#'|x0뫾-Q[K!qQ) BZ>}*xA{4b͗1LH 8k>otO0aX*L5siN3+].,4bd / ޶N hHثOu '5Lesx Dں|.8")&t0aʘɫfq44;u/\Zy6* 蓰:`W2jtNfW2I``}%d0%GOoq>dh@縥- Mr7bfH- AB~ńBįcu|Rk(|>Fbs V )sV*J Rϑ9jfR)*eKgQ)Mt$ad3C ?texm(^_~ "fဗh ڌ9J fsL)>uoA XB$Eg\crw!5HzqfI.~e6ׇ8t(x#g"D0wPP烿aLU+?"H7K(WA:wq8DJ!q *' փE=HXNԱZ Rd2=a.k`5v3e^z2<ȿb$IS à+$ؼ4aiI ^lIߌZK( ښ+JL.i;x?7Hܴlnrӷ$*EO ݁Q9EhGXdBk  ɸZRR B5Cg dL2Uo /2: 1<:H'v $v0\:݊ #i&LҊ>γ&syeMra 78*%I$3g͛ěOnлIx]-(%9҄g<5 -Am-zщx?S9Vws.wlտlUg'zYK:ůτ8!, 祀<`( l G崕̄SG|o'y#_9l/83a5ox'iJW,:c ԩ}2>|n _ʃCQޔ5lzS YbD{H35h0@,.XujS:8畄Kު;f,`oeyVtޯէ^*ÆigJr^v 񻦷9ZTUZ~;eSޕՓل/eA4E08֨~u`*bY@Hf DžKIkپICOUL)$kE">'(>za%W`X ֵ2Gn/DzfA**鳭^C.ݐ-3CvwžT$,XG=M!)r">}lcک<*ƙ~Mc,9P֔wK6ֳD V؂qwRJɭ}JC0 "~ q 'tszs6c|5=pM,VCdh+vK0G^?g%G]oyľӌۙ<[9A"2B iwTʞi=[ ȿċwFQ(ڟأIu,IF_}<_ /gl8)ke3@Nʲ{~<ưDsHDn^ 3o{_v,ZFMe 0gF`]zE'_ԈSmUl։2.k&'f2+5VxdVl 'w-/EkyI`,c\A-/ '?=?_\Z9^l|ZN%uJl8bR -lsv;z[+#,>F]sھVOV3.u-a"TwwRwpfNg]-Dĭ} *Tl%F!95JW}7"{i޷l#^AiƠ-.~t:26QaQU0 ᴀ'9j**- dd^Ss " 4 '[?Q nw[޾ART_x"}, Z r? ii`? t?RW+ZTV jҵͧŽJli 3_V]z94LPՉku HŸϩ>Ak}$knpCɳ] 34lH^T+W[C*S(=QT2%+ nGJY4%t: iC7NAP _.m8 fg;#o *%WJu|6~fX(_6T#tK4KNlNC0}Kh _cv%]]<K^|~߱ b )/I*e`ÊDT|z|檧V,ϱ"ӡR2$_4e"KӤ`\Ts.TUȴqXKrPE/?;}?]؅|5,rmu'H@8B&j۶­,U9LҪ 57W5`OZ烫fEă8%sKɔO b%{e9=|7#ڗ{K R_wI?#,l.m-qDɁe2E=ق=LFB?5)LץR Pމs' op]A'2Q߱ ˱18L,`b!۟nYH-bƸcE1uxy+M~jX.6/j\aR2gxVKh;tP"czoڙgLv[%+1{?`c<@o62DI5eSi\h,xHI|X!3^n h3b䯂/~2~ؚ2ۻ3el'r 1Ml}TH>БAfhZX)ULgxr?-%vfWt ִQYeT~XP}#}i׹7<"x & kwX m|2I X^ WQI?39NYch3/ 7ǎ_ (MяAg$2+6 /o}t7.&TsGԍJ0HkbMg5cL_ЄAb#My6@x4YW/ Xɝlsםm|Xٵ2Fe[//k05ESˢe%U9] iHWJaF`:|(Y,n:qTpK_h=n @$C^蒈ρzEf̷V|`Dl˚1q쏧E/^~]C4%ϥA?ϵ& <}ul\s~s# uWEK3^>nQ%rSz>z@MDj`Ԏ#"zfffoddԟє2V6,2Vackx zsZ xi 1 iV$,i''Q%/X: ]gL3qllpj_eF_ԴbqqQ]kjNӠ#A?{<璇o7m:qK7^^qG jr*Yǎ2H6Z߉(_"7x$@NuC|M ,dbS.%*3| uWj  `S7xDg 5@+"|pc &uI} J)lOIƍ'Z앆(b$ _e9{#_<܆9$. jHHzR֠*  \1̻_*'}| t+ϐ.,c[|@\/m;P~"ɡ V碜O{8l-QL1;Z? ".GORƛRnh <s$ LetS5Kݫ,""rCk< Akky8*{}zALo'nˍc |9 骫6jR`#ӛB_}4]Fۃg=jUPBC>i6 0Xd%+[N볣}{:r[? @O=+I|CkSk\^ץ{b0A^Lqþ^،K>$2 7'AsO7Bpڳ9Xn'vAh|źv[PP4<`O͈€wa{e6!gNp;+d0) 4AO54+gQ/y*phC52JIQ]:;8ۃoJ2?AۭY^MwS7Vas?H)w^KT⥸+m!ǫ&2CP7 1޾WwTDb+Ú&L+ 1.)tkCy>"uTGP&[xQb7ڜiyJ_|wn}2c kE Cd/Kyb?Su \;g> UwtiLm3Z@w*rHN~TWT-m4e<9>Pl19[<UW^ Tq~ZrV19l%S42+e%Wj{DA6&n)BŵqؐD|q:`|AZuVz>)56jOV{8 ,_/ Y^>X7!91$֚f=&5ʪQ*}zz ĮȧwFIn1&h.EfPa0FG6>]Z0?tyTJ][ O%sU_&xP8."T/\ 1vruӪ=XLr.߻`-}5pWK)QhZ"L2X\{-m^;yD- #^R_@YS'ԣfFȭiN ARoEuՇI.' ͉S!hKDmi~8g58]\J3Ly?IsPZ`>Jl !rcՑZ$"i{_z_R}"E@9+ɓ: }(T{&aإ1U "*5 @>4=: p1{GnCT$.rJg&Jp٣̭d'+QSxO 1ep+:IHHYYL >ݍp>*#腱n\ԟAq!,)Zgm"nKCM b941WW'sڄEDdm5OƶE0ӯfl:^l@ۏH%bE~!LA*,4*!g8*ߢL)ߒ R=ZTwJe6W-/ 9FğRąWur)챜\ =K3H] uKaJ-zeMVz>1S "OX*Xs&ګRmkuԟzh#%EVDڛF U2F_)#yw4ŶajnI`2{CuWUƐځb#UTD; ԗo}5Ie)Սqj-7t/?ΐOܺTR7GW 1d;ocs8t>W$ۂK^ƮmRJ0?6%+=87Q*‚>QO,%EB&ouL\ RP-0(MZ֯.>&ao[(| g/}`j|հi6CZhտ辿 0$^῍Sd>k`nM{)W2}f: ,)}YfOt+i9p9=DVb^Ю7mk#cb܋suneC't y%ݏb]&v3Η͂7VAw<^DP,;LgĽzA`wet~Aͩ RSHd\G4Q:y\+7"3-~uC8-0:f/qdˆ+r,?ho̖Si¢oZv"4]tƲGsJQW*;J-n XX?CCBP_>sI>xiƌcX,|N[uYV?܆-/|o^T w4ς 8<9m AttE~(%itLY% 涀Zxj+8HS\̏"qKi? LinT{("V`z6.g"w^StBØZӖS;uK+P58ưB|+$UeU/1X.'S&E! P5U@~@!"ؠWO~S)>FnaآdZAsH!-5#pz1z/4f]GPu ɲĠ[ \0#OCg΃)S:1#l}˂E3ҸABƤAR3۳5-yYfe?t[[k-L1{ C- @@_)珞`L.+s߫vaQPiB &FlE-hl{dz(e y{Ta6?Y{܀ZM✴c98n˩b%BGjjC]FO d@Ft&"-f)Y(!?@VfsnV]E `]eH;3Pv%65nIʚΜ.V?z_^Fڇ!瓨{pKbL hX*z=tgJmX2t]8L .)6OL(swo:gTPFTncrۼ4\9Fe$[W/˯Dܣة8)91S;k_HPP_~*"+ۤtgĻ9Vz -j/erôtWsl O|=>G., e6]-PfP՞:70Ocvg{|WU\Y)  .'Ovu!f:r=U^ ȘD8A+)L lA 2,Ue포n0nZ N-cl(-ᕥq'KUWN y˕{pb1OMa"siȃT}](_I CUu]u%6A@9O\gI$]RoL~FJ >totGoEN('޹niz/`:3lmg["_$lw0L:s t3q쀊%O!xaȽSP69=B [_#$r8ƢS< =@n`ao5_J7fWuSFEɔ%F2qݦ6j훳X}wc3~Q:0A6/O;0΃@q8ߜv^W%JB<@1@aRg\tF:bE[6@,}[cu\i38K2"Pp9R;xm?OÄW$ՠa"XˊKwR rL$LIrNi'![.էJ:Qkb1<C@yg~A}Rib#eqB6!*8}2npC Q2YƆg]WJf=3u}!QtUyQس4ĄO1ݬf4WǣN(QcXޭ}ղ16#L$UqC@7т(mzƌ6;h_'[i> oZrMC 6Nx4ߚBBqZAmI]:d9 (ۧ:`VKwoI.垲aZ(#W*aSe-_5T (G'O5ެq5NK SZ`xN,vRdQQٟQjyvJ ܂!H=V^\/! '.yBT Sa69&c+50C0gߋCѼ^%"YY9veeB;pe%Qu}Whࣀ,4n+V`J3De൞P%r&Ho:?};ܪ.{us&nT [|/b(,5ws=)>'}y.q: Ij)u-m:cMZn}vsN\9TSO^ᬬBڇy7dz$F. &;Q.ɠi8 9RԕEbɅpcAex d` rnZb<)։v2zrS7o ROʘV MAޜR*[vЖ?w9fAls  gq%Emh>;E}'[0-eCڷ6=fplvsnp4ak$./ - seT*H`hE[ 5"o9j"A iThh8iQ*[(IV3kmwK1 v).Xv_@C|0`I׾dfmw D I'ۯBOjs. QE׊hbIV^vVլ3Vވ7ء kO#"'ojd/@5l3zIT>Yx} ד'6ɧSLJDH(FYѥ gscQ9_E7HC'Ut$RzV8M+/{ž|~DQZk2;QۻćPC=byTrsٙ;&VLm?+5X/ Sn7pWK+"G[;T³sgQN"z5 yȧM`81lmzfmۖr2EsOJн!AаmGQDhJ}&Xp Ó+[2E"e5Q,M~5Q6Fkc7vDl>C2 jx=8ܑ6rx܄ʱ^\ vG̤T(q"$ T(pT>c&ͭ&Rlqa7jy/C srМ]M9S䉑j^1Mm[]t:Œ.V;5\+dKȣ~™B RN0dc>yA˦Hl$>są Ah&(JD W5wP,U.?xf< -Cۨ Hv atmB߄[.*@tҎ\`[wn$ Yt<^Nh;U Qfdd~>%%+]`^p[`N96 'fʅ0Oqv%Zͪ=IBѠStN,Ff1 I=- U75AJ}c G?I@Dsś%UoI$Hc=a[l.eQl܀Z_V(~pM0LDEq]rOU=JT zm38Pq+vlY&]'d\k^C^-[Fi- ŷܓ_Ik>> b[kn*%&]&PB!*ZO/8c"߱ O |~JP:AKVf&mC؏g`gqԇzSUJ wШU?ܗj7{1Y,9ӈȝ{aEvx&cID2UbdA ~*7YQ&׾2i:IUbJBQ+r >[P {),C"I$WfQM9UnGh< [X>lZ[y?/zv!Q .iRrc ¿l\(4,RK:~H'3-=?u߀М ͂#X(/zGA(S\K\%RwÇWMNi-G~(+gz;1@f۝fa Ji`)r{:yk@c5G(g&׫ǙF:h)ti1&}AZ0pvTK\Rd. e"(}[>?jSPtܢJiZ*(W}ot&7f6ꇦm(`>'sD;SO9HC^hP(C"q&5Y"NڠP$$ʏ\>cF5%Gf{+.[E xfBPRX?ǚPbgM]&m}p҅n`T@aw-@HlH n@;ˀA(TB]I-JF(؍9yЭV4wH Ap:eb+!SlؚZZ)12ylިP_W_dIrsvLNb lUf pŇzE)RޞYCآFٽU29|k0%hE' N4gB  -jYMEmM/o&_):LKֽ?[}}1 E&t>}iro'v j^6u `'84k'jC$R)n>/8YVԊYCnto}kZ8cľ⻪yU-tRo>%ѻiSOE/)/QMFaKpi ďC*7̥Ŭ3@r;2lH0* ?=m9RzWnZ3(&ĬO^ Ɂ:.5쨳 . /Khr.tj3 0L Ta`y%2SS+g?w u J,3;d¹ҥnA Nv9`4hքٖk$#n /X">^nKVy{,4 =W!cEKLm]ޣwb`0ɧneN+)2LhMuΨؤp7myQ f/?RUQ_iw9"+D@UcAˆ=ZqU.>Dd/kҘ)ʦ#5G+;h7/?v߫.7eVt+U[h7t22i } J4lĔm9fFe1`xэN\ ljdA ٲA8*櫠3򸎹/СMHBrĝ2׸2$Rb4\$Bq`\h>K>w۠ݪo.aDG0(---|p`d)6%ҼǺop#G`/#;n6^fho`^yr79' ݽE}$p|TN%i3Rq$xHb L|zd!ۻV5 +l[|ßtrBM|7JÏn3lh(&'4v3GUkXۿ⡕Unl>w"y61U)shGK iSdeB*w205TJ`n U'UXb# ɓB/9aw#{#nU|QZ1 ' -^4o2㗻euYEOQ#IҪh ʧR2A\uM3)eUL:/3YQ%;$/]XlKPN> 8gXG^S+\=ƾYTkW5ud։Lq2Gֱ.r6"k1&j )z% }21o4TPBh j: ^!ۣHPg>䡂l\d/R) 2 1bBbJPxf)n_A䉰Z\g\N&lyAf~ܾ#0$قD:y  ß&Wlnoi볂F!ηrw<]c8SHu܎pV#OcˑӴj[w-j'v:afCa;៦)D clV;YSO¢*U68$<Ιz@5>)zL*C b *2U R0PLpb+ʎOo.!m\z BїFuhJ$d_ lJ!f.H鱷VH/H5(b~`F%( [-\.(-6_Kq.hp$U\' ~FO%sogxS=45C8]~W J\ļOwW/5ň:/1Vk]q;??Uu/M,`.?W4zO>.Ra2E\;<  uU%JmM*AGm rܙ ه/5X0oOpAIsN{`Z;Z;R@+'Y7SyQק#\77@V]bt-MaU Eڨ)hTzۻkwPߞXΩ|/RL:Ѩ°e +oR1IQKwjƗV`I0dyn\/s0}^JuAZ7 X񴏨F뭎@sHBSa3~wbB-8^9Qp-4|W} RK>%Eru2{Q!ɓFcȚo 1e[=TT\>\z,8 6%|0{*9#tHfۚ?+W%]9'/!ix$t58;jEn6<wAl9K[ L7PWOtJj`> 2BɧGRb/edsWڎW}JAi t}6О5,TÝr O-%=fBY&!Ԡ=nC0yHkQe_{WyM.x)M"F3GR/}пL1'}RT[bׯ N5JJ C҉$ؘ]Zc"/b'H5s~|'b6qnӁe7ZcvO"?U:l)yҸs qNP@WɭDg% ڟ@IQ$Y7H$!oUDQ+9V9\"OcGcD&!zDٌ@ߋ"wvHFXp(W1FX i9`g649x E_5ʋKF0/ n3o" $C ke'kX|WV}D5p/YMrAjʚz{Hݧؑf6 ,86EWJlLwZ[pAU_fwаR?~zw| J bF} V \F X0#2a#W(Oy<8*7ژ9Plx^C]YGco왳 cų?{F̌a!!ɷ u芡 q_Wq3LO23iC@B1k\V[mr\!È]Y=$8'U{Kc,AYTvB7=#Ogxig F WFGV>YBA#w1oZO$ +g|" |'v n8+W[m#9{Q}Ģk;O)'N3{O6;n:dkBGАe9A,uETqLDjZ.KR'Ny3?!Xwc;.`#[s4.,i!}z`nӧYeFou%_f+ӧpK>*eD]í1×#n^W}{MlmA!}\bƧ,VΚx_0{ Pd*y30!A`.ZQZUDcF1BɭYF+N+X|W@%ȻuKK:(M47pq\u6_T퇱k3tC5YaHoIE&~#hS:Eh>vNd Vfzy=g(+_ªl^"@#vtϋAADau[CC4'ˉ=|@ߢ8߅1u.g^$ZOY}T qt>fTBÁ2UNapF|`dyzϙ:dǂ}[ d0` ~l0{; %Aqxٹl<|}`,F^2U@ ||د:$욷iہ/B݇#rYՙ. UC{ϩk \8t҈WRKmqJ=8+g5_>:Az#ר#p$&TaW,1sFH$ RPDeT(:_'ތZ gc;>x#+(oWUU["n"ŒXMv? 4u' j;fn0+e|<΃戫]nҗXگ2ȨF/=E.p%fM'KsyY˽)>5^ )VK]G6b g8E]EwrA :&p89WӈֶMr(u*sS0`ʺe584LCɢT&7m`6[m7)Bj`3fck.?_k2Gm #Qfc }R8V: {EHF=y>dy]dMpJ'8~:9Aw'Nq'|˘=hMW~:il_Ek^ja=UPrM`x& ]G2<:w(^º[:ZI}'5+{QTFrS$^jt>%"x?׷EwIk\.MȼKsS틯)Q~ԡ޼c]^VqJ , Cxb)IzDd.b]X6 Rt\|cf\T[#2}'x.*nϖOƲ2t7[>֍A&dY*bvɎT`r(3'c6$)&5 {I5MbG1۝/x )X jt9N` j@!PKl9N2%g|#]fFJ^9+AC9C.@Rޥ{.N+N0ki^hsGd]ƹUbu(Msy+l.}袿#C[IykHFm 紺wh$ DFLtצ~'[miOuKiΦh7{Ǒ^r;eng0] nYb1r=2 5jO0Z y=h _1fV '󔊷V7y/Vtr0YjPMގvg eUO7,T$z%Z8<qFmes廯ƁQ6Kƌ8f! ^^=s=ᕙ_FդD3P2|mOc1A)as k*^;1ًPK }L1QkDHxZ):oNdhzCߺ O?zԷVn#U`ZlZ'AÏ 񙘞@DWt^}')!Neg9I/X)[ceJvVX؄@LNʑF=Ws|@t$ojG7牓NLr>}#6sq+-xu@B3hk%/uy[;rH%3rE^>g.EiCg*2@bmݎ^ƤBlԞ}|_Ӳ#J3 `΁="f ).BIіF5 ?dcC=-vvp\oHӋ0GNBf@/;N p^M֜@SycoD1~ܣx)Bz-yhsbbtho0R/v$9CgRZ*ļ,-]a!34* EZ#x-5 !2qr6KaྭvYRVAe 6IHxq!HS0BI" `#ּ/*B^S=wRW:Mghs/pʹRz#phaZHd02G#PPȦٌQ%u5CnKbK-L8{?Qkp)yN0=c[uOdjIi H4T"b"C<= L*0+w%6Q@Zډ8'5pkS!4aߔRbyJB㭔k&DzQ%ke a"`eQ}de ޾{zȢMz>L9On0Npə/*Hw mZ,Zжx0'ϑvE6l&:= Q٦(XF,”I-=)HlQN7cl" 1ۨ=#鞔g]$<7o|[;N̟ n]VrגЊ}vT6JF,uUrUʕ}>hTP$n=Pdx#(J? 7gE@$w-Golƶ%(Fx auyߨ[̶D]_'Dss=I a23|Q1=AU-Dc:hݴ= x1~^HMs e=oG?Fi:' x\O T] ]0ՇMpVqג5zpvň(90E$DmaGt6{ )8_?T6:Q O bC"7x&㤗(#@xv˰A3r )גR(L]  EɁpy475s0Pp pmza\Ox;6ŝҔ$%"jx0ĮNƤYo-<4{!$͞5JͣdnJ:ٻ^*wԢ3^)xoR:fc/uX?88C !\%3& @o[.$XY3ū &-  x]x2M`Wf`(H-]:'!]^Uyv}z{ |վς!k],ikX[Rn &k1֩t s`3]zz۔B'7g,OOUPwan7F9K#t',4|Kt>벭)%*Jb ja'#r7IY [!Wȸ{GB4|5Id"k[ӿlE)=̦d’;Xb`C4"w5槼.C-M0gu 1#2y5e92}aDخ{dӆe!8\uKhm2D 7R7H,fQYE|[$ حjHO6.|&%KnFʒ[=-/˲Qگhϣɋt0W:pEʸBY[n#KyT&./E*&v=q4yCb}mx)) .q8t#hƖōc ݫV, kF[lPUI7aZc,y#~dmש~rV aəK랔A/J+Zׅ1.OOokyVQRQS0<~]j?M3X%6ltJR)5sń^G%7xX%T6 /CW'U|)8aK| >Qi َ)̍1N| 5%ZEM$dHSP*[eUugv*}_7D^=)z4%[O5s"%;4*zR۳$eXt <6wAK0DE b1>He3qT! JT,mj 0ax 1XսVrR(} dV[Ǵfɫ2gJ÷?xU 5:$jcԱ0+5=(;_:jb* 8BxVTꖳ j^ &2 s@?_knӸ\$6SOP.T%%NQT{,l _ wß[j 骲z$ov ?='j ޸>sYNPmߋ4fXeA\o(#zIP4rDq5 >_s%pXG]6w9PrH>  GQ)y Ȫ;-cP2ݑ'P7bXtϘQXkvimI__A|13߲x 9Mޡ/SVwr?'Tȍ/o26~0371Qv8oU9O@vͯ-+)FE"e U#00ί&njIş`x'ioɽ_ %Xwg? kuI ܝZid{.*Fq6SRAF-aT!$m: ;Vѥ?^̧%y+81TWhj10Qf!Йw}mRnx"7~>K_M8pAvłxg3:26gx%P1&(O Fຕn d CÁC 춇%32+1~,nQOkI3Pz?Wǻѡ~Ӛ5$]" a I2']\X#wEƬ[! [uVM{ k^%lJBd2ǿ=_Hn`=JfWBO:īϬמNL\jl^gj8b4HAl 2^Rm2P95EFk6'fj.[֊n6zx\c5 "˕;J v~tyvY(v.2ЁBY,i'@uڋЁjjP!o]gߛ 01 t؋Qf]_;W5Gi"A{99b7ҿ! $\Xt>TKtOj=BUB>s ,Z٣$oZ\AD(Dz"/~E[/blWq(ER>,eп'Yi9|0!咻,ؖh{:`O֝a 2l$-%z,N[ܘ|+j5<4s=]$`= -"7SN`g'HDk|)WB$oP_qZ->(А s ?Zc^Trk'x""N)Njor|ʼ2 ? %m";:1Ss{u/&%6ƕfB dm4ْ`40U aRa͵3[%] a3P^Qa u)Q5zOS<WU> OMB-T_>񼉜PCK.z1 B8)Uo^4M?5\+uST8# EKOO-lE K$cbBn6~'VKsa0v!2B`*8IKfn&=,fzo\PJ9Dƫyf̼.7_9ܵ -f"Fd4NJRB!!1nIb P1eFI_<dO4yԍ5GKLkN㯠tpX3_"3Q VgnJ/,ۭ1s6OK 5xge@==@ѲG`͙|mC!V\½92-sM)$MS4ILmn !l%H??U$\tLv|7&]?8|4meئQ8 y@@MƔ6θw`kF3tE#U-sڄp3w]{0sn_҃tOTM͐2(y'`{ʻz-΢j0TxNl\iymdK8%%u^]s`V }n#8W/zJ+x]Slq+5Q[ ~܅YT蹘4ZCyԎ\ß=ܐdR:K~I{pS4STH4 *vAÂ&-p'feLx`oУ2eam f 5FC?#G$.l&96uY=g<as̕4RU5Jľ=+<Q䕡߳9=rO ykǩNT>qDO- Gk[]{}3 !60fC"1x>wi2<?ɱ;h T-Ѫ60CRV: 7ݡk"7tQQϒ;AbW2ءP/F> ApKPUY~9 >"2L^CRDPf(E݄}2?>)SBVy@m:4yC!xA9T'|'I}.ۚEKBu' 9[U w[z×˖k~H{H`אk5?,6pzIݘ|c!95LBpC3(@o% mdbV=ߍj3_h8yU){vkt6#B@b}`Z*?Jڏ8d<"L&3,#v1Q@FV9 R(;]EKGXqUm>\5Lzg;h5vVƤN{A,)}JHq gc`(\[K-rG}8GYOxm߮IGԬȝ8VsubHQׁ?"$M@8'D CTOdqН7u>3]il!ƁZo*ϫZU/ּx|E׎'۾qQ|2ʼntDvvq}'8NpcD%15P LK}.ESY6Df5/_#b $XWJ]ʊת"[#Z`3<ߚe%S̃ݳQR-TD.)Ca*`w Ƭ ZTcRe0b[8[rH;@Sf &$h41o]H^le1z3)FÍ0, EFTvv%lz=6ÃXQU Q~ 01,G sԶR]L.{C\ܦ"tgiy׹nIӊ[vg+##q,{%!IN q.;f' hvœ-ғ^[ع Ɔm<&r> gqV!^9 yS8閞E#P\!liz-SJ%䏐C7uFn^xHQgz8P'ݨb [YDڹ;H3`Rپ.NF0`ߗ-8_}+;- 芡}bD 6{rf\ӯSG*CW-TWq Rc#ՁkQX悈CsP *^_Eܿm8pnZ/%E)WsGS\9MکٳFC2U`~p0 Lڪ;Ztb5ߕ]{d1Ew7?3qoU.~+^GR';Ά??0^$>fx2[ 0nrq#gr缏L%/~W>:ddِ RJυ=s:(oI1 #ۤ,4W?7?y׹DޤS ",MzRmsAZ3X2P[~( qOֶbQ{]M 6ǺjMJ=BAYK"!%LES_$ȧQ~^qI[ݎK~׼tXov  w 2x!~}Y7>\as\$SsY$cp4jqVd8>()ʣ DY̼.iEX|3EdM#mh+O wb2Ag~|ȫڥ1 qcY??Baiӣ8ȝ.3 ^L9Vz`ذԶA$ű%im 9ZHh[;nbLnMAC*FmC ū)Iƞ`lf:ĬƂΔVmdAv]nOqi3U (|&W]''չ 8t Pj a'zLs` 1+[H׵cZx0@&j*\ؖOCKj2 {vʞ4p,*AMC7Rc6?fAx'b m^YQ̅Ӈ(8{RI$Ug,':%掃adDAXL/`LU]r-+9XxEbnяϙ` 膡Em/3\m;dKr@0V823%΋?-C$fvF @(>}b%t w ɱ[<ݤP&=}zH ɴڿZӆ_O:fΈͼlupJgu); Z?J?\=k̼Wfh=Pm9g!0Xhܰ [s2 `ۤ8G$sҾl \]DpkJڊx>ZQ,:`\S#.͠_u/Etpܠ,ΈQG a-:E,9N^xL80 {0 ȗ/D׮"pONp2kb?ۚo24E'䙲>&{-R *̻1+T!~0G3 Q5swu'b(R8X[ wԮ"fA As}YLҁ ]=baUgڹ#u݅n;lȂaG;n,ZsƢ7kX|s_ )fVh g_30y&=c e) <]C;*fDֶ =.* K/)S$ߊ BjآM-@I[(d@>mWmT|07v mS\~ ePˍ_@{ؓꮣ`z I~Qao(Wۺ|!0.׫(7u?fZ$ši(s&t 2,ޗsI7zqLllS$B6\ώppC7cr8 ˁ$JXAHOU+  ytM~~NroϮ$X1mx* 4#SgÂoMLCAh_wGasB>}iT͕v9"gHLMF_.KI7=,t 8%\"f?H^e.lwzxAF5fFo*/sI1{\a 1kip` D&H֤}>8STc,E{02G}ٟfBjp"dU~ҩJ7PS?/m(?>U6Q$TTG}]Bfyݡ%faaM7B^ ;Nw4֞ӢfX;-Bc΃;@^?7,ʷ4%xNaHVN^nO6pfkHSopN_`#Ntr*D9}u/CM!┯r_g_A2YamO0C5p/vƙljW^ H[yԨcC4Nq{շHov܅g{M"o`YcuK <J_}z(~=])"K^Kt(2p@1Zgl"װ"!AAih#'^"ίY[p/>- TMR>۽~x6k;5d$Ḥ[k>Nl ;0ekω1`c^ XzNn`-f'WXr<<yΓwIkJٯEw}Q.\_~a:| ?7^Bݿ>3kns-h:S]T~ A7a],ފp2sjvD0վH,Q7cW0KSR/:2Q@|, B.m+E#!-̶i< j!В볏#SмBK]:"C/?fjSyԆU.[p1DYYŘN/ve;(,G}n!f,0Ⓔ/_5 &FFjB4uYdSTo,3~y:et=IfHuCW&MZ=VŽ`c&n>F8ouJ͙뵤^(ɂ -Ekm%KIAMSql*MwF|&TdKX쾊6N{f }l_VOZ1f[^ٳJSfhnCii1-Rvgy"`\8;-6\51 b`"(>B<YK(3DV Eș. v", NEqQ!:B&}|%6+yb~Dl|yAâֿEf1;./q`i0-AR.ehAݯ&!wҢ@dDLt<(32IxQ]`#3&(1J uBd FL7Wv-' ":k:]P- ' P2͈CU''vԸUeI1b0S,d(b+W;i5#wU/)]q}(@ܺ <3o3J>&SٕTzVNHz٦qS oCQ+G2FDMlor*uHII"rl+O4i&0ֈ#(-s.0+4UCEz,I^!=` RXVIh(Ѷ1N~tPwC9x.KT.7SofW(.X}Z'@XrPy RT><͞%ioyk z,-7VhUm E`/67SYNd&G<:fYd;@~S=3Q/ڭ3s]ߜ L@1zh5VoDGbWtbaH1,c:s{θ'Zw &y(3mnu*h6 ل?给2qeI-#5TFRx۩n"Q }ĀnimF1g=(4V}kۻm/MmJ'/AL#T^X!P.-9LAT$?DH62QcO")k a4o=(?x"/8 )Ł1m;'IXjDF9Q@O^1ڤ簟򡘴c> Z~{/hSf^{g{v|Lۻh! >۴5<9Z?odsU&J` pCneع;gHzlبB8\M߯nC8jȖg#gs"cnP~p;k>o=5`yI5uOq/J|r ql'Ғ; p9.bB $*KEyN?r>HPKvTRY‚i1λx,0+ߟa1).qnה1H|7?xy$7ļU4yqM:(aEQ{4Jp@FX_|^ p+cĩ;(26*e gP8yw7cMQׇ؋E}4HPDBQ퀾Q"4L܆Ah!3羊56߸^TS7PBlx}.eu]oǨ( )kkpu8&+7ǢZ!}Og Y[{W}t+66􌤐/{޸* )Rm0e ]xOgd6ff 6$:֏s)_n850zgu]P Q#DMɹ%P/0dN$flp@3^ʜREẠᬜ+TC_J Sd}Ѓǥya&0x'N݆*^68Z MlXiDB0x[{>]e?< MS#KH磯8!Ӹm} (R42T ~^dt)xdb)6Q@x(J@GB-;V|e?-N}X6R Xf`m]cN}MPŐnzƢuYSrMJbRV4ɯTwv%H{%M{Yu9 -XOQRrin*07uoW_w8^Je!20gwEPgCX~a#.737aغ? CmXmK&8ii(H9;:E]|@b}DSf3|[VH` O1b IGDsI|1uݽ}VA[-{fn9^H5R1ϞIKIs./'-|W^Tog&1zFvSv ȪgZvMz_s|nIZyV;NJ͂HX[}jv1{ێǓ/ {$N>]+]|@>G\QQ2Jzo&s\#8dvEI<(jHP*};^"q&򧺵tv}~szM %/{y,c  5D+rUu.MOuP{7kJJQ 6.PAzi9iG1P3Ur5GrVD%mB19q5J>WaqߩueRe7֦>/5E^?vT%":JI|SV]u@(ݼ\s\rP/B@~hƋI(&V߰P96c䆩wz|tL6<|+8e 3PD 9`G䙛zLpIS'osMvg4] rg%p1E&DxWAjnYaF9 qgpfEv~, iQn^i`igztґj/tI]ҋ*[\'loiZ@ٱ%*v)gs¼Z됽,d`)|)8b#QBP,x˧=ixWp2j;+/枿+|1*pS?-)BAݺ5W5R ?.\Iz¦Zڛ*֮ e#Gss]ﯮ>gJf*mrHVGxnG% el:EC Ͼ!T݅JD*RFZ)X]y!E>A6td(WJtWVPh!ۨ^Znb^~!n+jXwTLfm>>pp$,Ќw9bwslYӋήpHfS".*1F=cj +!8v S\Wu 9Y #2g&_fy(15N?Ok N[.<ʶ{/,Ika?,&uN| .b#_Pa.-x=KֽZ2HerEk{}|C.ln@HpxUyv%C>xZ>K`"-̄rA&>+p\B[H @}Dg&)$d{lL 7T/mLB1P.nQ=xcH뷵w;ٷuP=j:Sv&C8~(g r.e*Q9PᎶO2xV2.UR4H 挑+dXڛ7S Kۇ=xvhT)H ĩuSBpHR"a=ª/zJw۬A 3DN{f axӹD`7-=1^!#Oo-Z/o}@PWQ#Ix2y~6~*U22?ERÔLvU`Ѧ"g AP"&V:k8 EqwWpl#M |6Zj odc[ tyhh7}1=H>)Y5L`H`'p:vH+e唘_MrFQ[vM&FsWrP<)!ZEJԨy!xOg;3_-_&XAf,ۉ?ĬXYJ'*hh$ dj=vһnY1Ogy/hsӵ3C8gFܜFzPxÍ*8/4D> T Tcu ~"NOX⪄P~@E8eṱ)SbkQA4m^aڱXQ2m&5 14_@+3dx CxPR%J Oή?Q,9WSD9bHm~oLRK g[Ȑȓ ΒlcMg9I:iZR4=DUR0@П\"*-@HeNQGW\S5̩Dyu·zC}c `z";Zt9P ЍI=f]g2'K X6W|@"ż n7~?b^y[ pd?y\(R1U=vsXbG lKeujݠo*Rwb'W*{/O_Rp &r8 xFEWx aXw[#+&;+%џK1z"Ym2avI&,^~3*ajFd}~UDs~ŹkB 4@Y7a* ` `EAeR4o fTs L P}/Yy@XǣgFJ4˾o/36+CeM=08,C5CJEx!al fyDTV6-vo翭Reܸqkh[M:RHq289O.đ~9㫭oЛ4#ÚvUO,(wa_ (;ئ'A(>?{yrtYU=7ؕm52$~=I6u')D/1ꓮ-əyLG{,yTAU!Cb1#%%&ċ'@9-2JVQ./:dyѸ{" u[I_4NA!6]+aBSq Ap@?<9a G瞊Uƭ;@rQSZqkلICa hx27ڿ+Q4NANNIo O{m ;]Y?^*RaD =!+o$8? LRMT:a?8ؠ݀Q#Yt ru@w<յrVI>7Qr WqsDx"+Iud ]Cs8ql˩hna}`}ESy'u\rpﱏ齷0UKmÓ>mJ2 y?@7єbC#BXHe G 3˃JO;2H-LfrvJ|#=a!+˭v c;*8JH"OڅS+'򀉃{O$m7eh"tf\B/B1> =\7oޛߨ̎ВItM>T{:6M킬p;͔Ҥނr!r6Bn_w =+yp,* .=GxmpWk|GmT$,RZ_'S;T0"(ީIw҉:E ƣE"=Љx>RlG $$z=!]Ezg>N&E)JM_6RX_k=w31'cܘxG0ib$\^j. l -%q׆R#d٠ BDz7nhs1n Ya~ɻ9ɤooi,16{ϵ,XsW\v1DE I[ʎr i*sR@v傤$c,kiXndC&X& A%|5n #4a<4) 3%Ku n1|((S\Qu2#|SZDnل,;$3\цtDJ>ʹ'~u{9*r?`ECFC>P29zvXj ͷ뤗Fܲ,ŸJI0Ps΍nEP8-; *B0IqPEtk%zv%L٫{tZt[7*z}{i4 `ofPM,ڋAf(5R1~ +ֲBU<`gha39Xc;Fmc<1^qd(C- OKvV;gS^BY{D ҽ3x\)zVL|Ģ%l y#_I]tI%nGI>OJtop53.3z݇;΂R.ϻU)8Q~W qIX7o/%lAU9E Z7*1JHKa*[(Ig0ihbPLok;ܝ1#뷂Y)gtcP$7-*(rȨ!|mDb _e'TJP𒄏ncD>AJ|pw 4cېrO6YQ-{J83 Nc3f#=vH'@ASa{vV NKiIe*VL%n¬1nxAutF2%3/9  C=$۩虬0,DWkԏ' S|lSd se4Taq*٨p=pWT3v5*PN[V ^G Q()#(hv[_ӫלٔ|!65$dKjP\ЬԌiҪ@dfDc#}zLج''*VEP)cs3<(Dy(O" wSVOd2u3sJH7Bo=0/?= cZ>ԊO +{δYJSh'ފ[m',Gw>t=7pLyٻUq\1OQX-,*/Do7d޲{ŷAmC;ޏw!b0s{hyb=a6G4k-A.@PBY; .gnh0ܨ'Iu6˒X:_*-' /scyiAGo,ԩ/fHADl9'&vdm,~b[M_R욥Azx0b^T 14{üf}AKu/>R|T7)]Hq"HN饳3X |SFlw {uDŽ]T]f]X-v-ƚ"J0#̈́1 ZO<0̸mc/Gp2 \b^ %K?~~1X{(y+4%G\X1R3dͧ ( Lx/R48Q鎆N٧kb)x& 茝W $Ǚ_=F*;TF bEǮhr!@)`B&W.kD-$O(rR[{ (-0$(ǚT{6ڞPxPC,M }huG[}qȟm l My>l W,qO~<&Q1KﭳQԦkх߶;Z N:d~b]Nqa Ll73Ik{#5 }_Lܮ̟]t$ ςˠȡ1HAF&qʵ6_a'CO4U[\l7oD-$-V"ƛJ ?I RnU~hz 8ݡ8Y;G ;7gd!>Hl:I#G l\-]Xۇ(_hJ'} &(:@7s]ɖn(*  5 m#k|EkA+A \e1w0"2uzr덠m'Bț02Q?ck7Yun#I^dvf {RO_*|8A}>ਨMl6Vie1S/N%wo6q5HiU0>fZJz wHIXBDĈ59̴̫?!!/sݔW(]1"[u-:Ky|F(ZL{pZiZ%},5mӺjT>dӢlɸ&T8CEoA~`1DZ$ijHƍ~K WhuP] ߚ==wąyЉq3Vw*xk+FY6{ _Zѓ0(DKjhX,"ؤEԇn0ʦ[3ox ȗk, xO[kt& 6!F G^}R x XGNG!i"59KO.9!k$T4srD6,ц jqt,uR] \xQVQmwfwQs˼Ge숇ERI+4L.X_9$ʼnyw`dՆhyAOM9Eib rpmk6]"C8 ;,"Cb4mFH].m9za %+'9\Z*-7[pQN+x7:-xB h$ڦXǧfG/}j۪~ؒ(%^>4hv́S|MWœ|RO}ߏ9ok2>% āZz[Ic}qqgB%Z6`ɜ?6MJ#G5ҤtIAeP8y!Y2j,L69T\UU +Q:8xr 4}-F#<[b@W<<7| ?x_E]G6E$j?W33;sF~.9'dK'`Yu+!'z 'tQO˨)W,~,z`*;o_ ӳYpPh\cDN;Inmz0`>i_aaQqj ¾ą> iMX5"J-Dn3@}nr;[r D#Kʿ#f=L^AZ#+;ӿ C6` \ZȋT@TrLn$kK6WLxW\=ZwqKt>BAJ\16lI2+-2X:CiIԄE lOX=9hh%2~px ¤%YHHMkEwgU9LjgōK'|Nm4Nq}t-zE&,+IOipƑM2wux ðM{4_GJ'Zm>?Y :OF^AJCjt>bMv''D9XF4''oc៊G~ 0ۘtr[Ԩ^:_9OՂϺ­"j1kk.{EHK|P;d#Ҏd]seQT CbdbO;Z ;I7wɛHӫK{ {Slg柾27!2B3D "yۖ˒AKx+Ms=_HNyrab~\,G4M҈:([- !A'Ln w^Ъ2Gp 1Fq j0="/= KxgA2? 9H,$sk۸H+DL e}q;RѲF:2kyF68s IXՄQu%N?0N+?n{[Ć"DCϪss11QMqo G3MOJjYV'g;9d^$v=Fm497Ѡ-QWt׽xe=52^F# o$_0!8H:9!BCɺ2 tA$?LPh#A:3(eq8U12^i'#ddQs5iқ? |h2%LԫV򐕝yـҭZQ 5 aL,N!sPA͝i Zz7a$.sOVsPzl(4~Ž0pކ.H2**enQ$tlO$cգ\7ډB" VB_B4 "?eŰG.[)=;a=b1:ms*!K"qIO@e[Bwd2uAIȑˀ!b,c[p?Dzu3;sxT<)ŽR[Q/ à)Ri#XKS%&Qo6&+/vz+m-gu8F)·(`^cv& C[vXytwhL0բ8xᅬ9fWݸP Hv2R<6̓]e;dsyce1yVN"K53d>^j0_܎f %'^w7\c 4Htdc՚E4m}׉]İ~wQ`,K,O2ʜ5xo%3o~ЂfJL@H':!u1F[@7Ab~I⯐ T%?uuwN)&4eF9+]5qu tla:2x` Ǘ3~pkh p/>k  ;O[Ww b:8 I BW]i3?m ;ʕyLsGR%M|8C`O ;WO1!JҲx&v.\ױABBvf;ʾl*,xtQ!7=X!9Ée;34c.{54b|_yh~܈ PtuׇMvJO`2[)QE5Orzl܉vH1kzbx2 :4QW5}w οt,,%*Gܹ{g*í2KH1$7䨆z6`.Y+zdVaz߲1o)+R ƭ[FJ۠#:bhed1g^z±~s\ꪕ;@$Gajipz@(>Z7F}'g~TIlJ,=\ b؊l@zQH,j O Fd[D[' .ݺo{!'R}H< L3ثG 77gTA`[ BXZ6#sK DLm4n ~F|!mOn)Vȥ/5#][N_Cҙ{ȟ^.͈#-9(N 9Lʰ=⟲%F8b(+(ii^';|L( wM8I4dz@:#WC?(v*;պ! 1DR8ghXӗPDFf*'ژ@5RQQի~y59/'X$ NAM3`O5JjV٭qv ݖ:g~z@6ubi}H ϶o/'2{[i?; e /8g\AϢ;JCC*bFuH#}{=xz0&V&ݚd΁|Cs(?00XcGB˜Z$y/acPl#Y5iz#bƒB]*Ff{L!;%O/ψNZl9@2ELʏr-a^)er[,LyyKaGobK{+" HySc$[8=#㻫aaWV`Zc@(~ ֓dk y8N2ڟ ((vzjl.{ž>6ux:"d jIA<`*~M"" d-PQ6w&=w =BK} `ΙK,Ol?ܻ<2>{ꀆ6DZ/^e~ȳ=ٻ),'(j}呦4 @bwX.˩{hFhيX=<`h7~ #FbVW+tlUp2$,R//+:p4olom` /ЮSA(XRQ43MM/ag; 6̑un?lUNgP41 xw~. Xeͦ[\zTJ(kiӟ}b28|?Tb\9`_t'KZxI#2Wڃha{&&TU:fb"l*M[L*=&Z3OyZW0k#?l.z -tqHKp.7]ZH"Ͳr ^ѤD#co d_>*3RlK!HqyqR^ E~GwSjIBj:9&v VUplZwkl `!Nr.ejZ+ß2%'(S1`{#o >ഊE 2&u@i ,*UɈ 4-3܇}Ω?/G 1 iHv rlr /dD j9aƕWN[h%X$&¹P:ĭ'X[א8('f6wI%{pKږqlt^ !+Z/%>Tg滚rox=E؞2JA!GIĻ&"8:X^iMdK4.(rڶFE'#LJU .hQ( 5n}(W|n7&Ge9_ \ǍY˼QNo8D+\7=2o\E!Aj|w|mDpU!b*Zd-APӐf}KhzyfOνGʺ);9NLlnz5l !ӟڑނ>.a殺_-M0:ēE"q0v ـZ FN/wYpP)I^8OoǺPUʗ/қqp<\h9:wɤ= bX%~;\Qrбm. nVIqqh-ħXp'v[ܘF0yջPYI[fHǻ4v YtSآhWS/ݾbXqa,>FwRRQCKxq^=uB>0$Vq%qPP_ȶ((y r"*}\JU0Ro^ğ~ oɫz.!rP?xAyЌ.:ȸ}aKM"yt$eISlI'BJNO0,7Bq亇jֹNV J҃Q}/1rcvGLh4P iKqprBkRΉ$u&)=K $Ɯc5x)3"h.ߟC[PʘC}Eq)-zn&QMX-pR8k4Q -gs_cZG k8ep<6DR(kРw7 (~LT.LO֭;εV:Up%96 ?>IfvN2G6t#@ 8jt꾢1C(e$aUC=;~hB#ʃxO'˞&'i7=foۦ֠B( r_~-$`s~Hbv}tf 2(ٺVJ|37`'jB> (2o,]`0YZ C;$^ ^cÉ͌tZ! D,%Zw][qs|*KP&u;7erd&3@~TGY̳Ȉ5O]JD8UQm#KsFDiUCH+ 7zmqZh/Հ`H CǺuNʌiʈI/8t eGHw]!}O*F:ZA-?/N}I"oH؃&87%(@C<5;/> ޟiCXAx۠r)/n־of< 2{AI+diK/*(ˆ`eU(kӨf(ku}{N9>Q}p|t#Jx!T$:Sv__E `u;a6WUM)!-] 3=$V t`{B_/)) *v ce [g׫p %\kХiPYBE@ebun܄mo8]=U;K9e1A̶W1Z5~ŁUEv)Is?%ODu b%57w`XvJ}8*,w08Z)#WѪkK`7FK0Ɉ߉'YT-]VϸIJ; 6ad#eF(k|N5?&I1 ,W`IWo\ ZSȥs{їv z|eJ[ujr^0g~\B}{ywZ";G]< j| E=$wɺ*3[ʭ@Ŵ lCb^ f7+!I ,PMbx(zע.^7uAxaCHv8x]3,*̝m]7.?ZYU7 FXRFv]no{K|ˢ徠6KH) ;ؼ\PFmB̜ς uoGpDg.!h S:2.cm9JlѩQ}= ES xV{Aag#Bʬ'*d%8UU,l,J7EP001ޢiY2xm |vƢ8a+ wih)cm`1I *{q3l5/A&N VQDId 1Sq<ݚ{a]5y:5͗MU2bd]b~vJzBd jT߬n-5[x ¥GR~%ht"cXhq, %d1U} b/'U;$G-`j6Ivog&'q9TlMQ$y(,bix2ux"׈ 2ܚ3MZP9t/3q ߲D3v(ʸSbĭ5"wL2v}$]W/- #L{lٚx&b (BA*[G4Yƺ4fP#qФp*սIfȯ8MGAގ^Υr2cNSl >DZ=">@(V /uTF 'œ0u?˚x* en9.x錚e\x@jAO=LNG_,P.(.Ke#MΤ u!E%霢/؈Zb} b^d)Tn Ӥ,8H4G-[X!q܉-\ ~)~/2ʬ .6Ʊ ="s5F +OvI|D>1WTw~JJH(p Yog3I8*@{D:Պ1nOa R&ܧjn1Kk2d @R0Za6&F#כVWhLޟN/f%_IʱNLI|F+Ԝh8$T{Blu&YVה>LXeH-JEjdFZ|2o рl)1!%1s'5794v~9{\̗Гa%hc298K(cERۘ^R4K?aܘ 5mϳg1~>LE OCl q('i@6be#IF l(C ?Ɲ "&[ $N%lF<}a'`]K6oB`Z6Nvgr–Oҧu?v8Ga7,$ʘ7DЁrm%ezJ| 'k[APZ;ӹE|w珩hZ?urQ<"V.{VoB=#[iPCw}FgYc\Ŷ| [{#<8Ds'e>(TAg>GzTbK+'OuE8Ba$sIi zRM֒&f{<F i4)Q"r/8wS0}?sr1I=xX2EOBxV M{:q~ϫ!5kiO$ϩ)=]s$_H qLw)'X.׹n8x</~S!Ġ!_ѳL];̕BMU9{ip)v*H[MjϡQlM>f"GFl86Me= 3u"ӚWXQ \n:, R ^7B~.\Ѩq*+.J?c>a{$a½tlXQ'a>؏L09wC ;(cD+Y9O^BX]3 ̃/`,ꘐ/X~%#=h+VIV縸nQ\Xt  K麇njreL$ix 7x9CZâfo-NFNMx0xH) Plچ\pn*2Hknq6PSD|Ko0'EV-cCv*-ae>qAALFvvTv:Uv8VV2Ewl*EzSeq/+H/fXIH%^`O!&WԽ l{ZeVM|l; ;/Xh9tJk}ZrԒX}l׀Pni|uǙUV$х;dց$c%#v0OD*SJ9PMJHszl0Od>t]0pt]m vxZg b/rwZ2dzeס,{"YjYe$`O/C Ը`VC/E4It: JH}k@1m{< 30Lq'?/G1>'R}ǍzWBLgu@B^[C{*mMT7&HP&C2_|]sSi|nBVEsx4'7`-?GЌ%ݿEkv]}IB^ Ki(,MQZ/VX';ye1wc~ݥE)+׾uehq;CW_3Ң3`xd=wC]:Ĉբu̢ %e23ES.d{'¥r:Z xuRf8uYJeZC]{_r&ixx#r,;i5|12$^6!Nx!M1g ߚN0Zp (t03 ^>b:GԔ+ՑaS=lv,@ww}0 A$&6 )}WA]{D<<7& FN/26ͩD1iS^G0mQ8]^Fd#m+W ^3)QA6(%~ roeyGTƅu'z B: @ F_> bAkF_GļaH-15LxBwf'}@6ݐ*)1EلyΉe8.yj(c9Fd_ӴAÌvrHp3Y eHM{ W]*Ev~ 1j#DÖ$/7׿h>F0%`G ҟV >[8t]*tDY(O|d1'v>|,zh9;&\`n{BT~/r'0vT O/r* Į+EaCZ'u!1O$+a%nR)=Z}5 {:nX<9A;b`A;3:~%-vl\/ M'X9T2>wUѥ:)j=xp~ jh1[a.-OY,s OOgx^X{k2r ѫ)=]/ntv#{9!)OϚoQi! }/*?fGkA9F%b v hS%lҀ&C̪X-[ ;SCH[.. lf1"sYT٪̌Mld`ZTG;i1QU ?G(S 8;hp Y7P"?+׶hD!0c" lBXEp7m1/^Th*P^0:_ 'b/vV$J0ȕoR*HCJx`&nl-7Њbp6njU1KJY0gppًm% Dy_ymta{xM!Kidx19@ϪILL<B<.zPs9,!2!V] Pyf0ED.u'aazZ=^m#E0OfX΁imMLx "/!K]ɧI᲻& ɛ`34="a|zv}oلAYmaUH[j`23mH53i\[H# )]gkx/?#VMwW2#=$D`{w(I#]lVѼ6sGA S?>v S^uwcg< tyAGD v#/+,pv\K{8:- .v#~e R&>`}ŴǼm@PTi69j؇zAG誉j>Stg@``e/K&:f5t@/l7sq$ek~( 5Ӿ :#Kgkcټ1x6/s'bcBZ5NuKupY[;6!)T%wB42+H./ ܽzr ]y3[֦jp%5UL ^ IJJV7ja C0dsr~niyM?6O/4Uo쮛:#_QwN˓+V 7I'_0UP:q:=b30w)ZŎD@E=i>Oh]yEHc{P/Ҭ'h{2^uO W-BzH T+5aDoxCmXzy-.‘ ~LPyٵ!.4SEC+,`.zƶ ʐXWB̧FC"~@ѵCLǮdTz3HlԘj︓₯HߥDM,0x'syՖhd "Ze*,u ,%8x9 9ˈ=UN ]X֧v0kh\IU%$v5wΟ(䟰NMϑvw +sؓTX;K:J2G p͝f*= _۸A5&E%¡(>ӪY穒EdzcD7>kNh`]6ES3?%M3ܳ`~KCXym1~оs.O>](9Hi*ME=`v {Cɶ#7` MtyEul, `9I7J<[y>1dlw/g߂\>rSW)jxbk23(<{qxQie }> t\V*s{F89<Qӱީ| E1|cT030w?-9DIXz)O=fre/(Q!Z*IѲȫ}Q ䷦0'C7vEqΣN05ղR^ǚE)ȶK!ۭi|Mp_5Ǖ>vڍD(#l1o#rbsՏˌ Mlk{ zIvNeF<#DE}:+-Rya:ʜPN$61_PYT,"b_/Z\0/Gg :0a@cDxs2>/$JxjG5,R$?xrFKwBg@=~ X\ͻ -T(-L aa"UeDNnȈ6Q{Bo;[_e6[)%a(9Y#od8Wi\:mba6T)8@Y֠ RN۽T-4[k(auA%j K\i'sۥ$V v7nMNNCϜ-5 H&I=s Xz(^_x/Z:J4~_gr8xfVs\[18&_ g4[b@"NJiB\af2P L}}}"Q 򌐺x>d۔\<_ ] te^Y5 &CJ6T5 #!C9G~&؝l:sd"rE2C7Y l Ч7݄QeףΤ.hu\e(!Aޑu nW. <Ӯh<7^zǴWBC3 HʼoPe̼DK*c+=ċZ([h*d!l4.v|̃\iZUWSad_} Wlivځ O-$S#À>V߄ԻpuanGyS ݅q\tx$ZUI}*3AliL9lk1[l#t{ k;gb{ub1`ր0('xA=ІC1|)i h=:XM:%nb4X-7b1,}U ?UW!\ѓ'đ3Rc9 %fqǘm{t=:tQ5`%0=}'bT|ji$_ OK5'gt*6B> gn7T68z sw m$R-5=#R&<69PZzbA^0Զt`J%p'>ΛF?<ڄ\{n4M.i VJLx V JXPIRllBVRҒ{۟69X&$؆Ncw־ (cۯMFhm53b4'bu*=Y[ tq8ȘmaЏ0%bYR/^{w 3̣'rVm[gL;u$CЬJB/l\ n6@OIm\_ t$>.ʯ@-l?ǽy۰_.k#z~6?^$%'S<|f)^qv5zI|[o 83+澀EI͟AW"_Ա` H[U)[v+ځ_m;C`A%_J3Kh FXۋ..emYqnջpu8Ԓtקe$uGII4 n C F]@YLashAzE]a wy3Q+eHKg۟|{AdGi h]|\Ӿ¿ϩ 3yH/,|9Lc-&WB6DžhUU%1/&S"~Am@o/PAWKٷ[z*sVYOU/a~79Byde+nx27!%:!TCC_3eR258%wGO׊2xX?ZFMiH xd6"%s>J )XD"VAt|0*oeܝV߽@uρߩ@xH5:QܱON.@E^%]z Kb]nӱ ZHoo|*/ ULX ʃ<)7MT}l;LbihD ܽ~ 1èfs0lhOy6!B/T(Qr W->22.{҇nKͪ!NhR. 1D\ϲqM]uLtTzpFM{/^Oټmhj_E*`Y+=k\(uL1qf5pT1RujRhq(1 2`LciZ~IݚI blNVuO^qȯ x1陵鏌> 9WQh nep@ߝ.dyq$z_hlii[5s68 `Yl%u^#\yK?Zזb)4;A\I·I0HY5P%+j'#afnK CXf͗7Ǜ+UσA_&9~Gu ?IR\"q2NOC8,ch8.Cȅjun6^H]դ遁(35N**IUYDw]nmL>2lZDo*2 Um_݆ԅjnr:K RV cb"imV+YlO ʛs(.?vHxN;B֙Fw/f!ye~]+=ʀdR6ʹ֑y'hehW(?\wX kz -Y C9)tN/o׺_c_v7qTS0.>e#ǫ#RGQ`p$ EPf7|5Q]$ŵ.@%МN3w;e7!"Q?\Jt%̍*!u|H^ ГD!QF"Iyx(hV)t޶7^Q,u*LМMv )؈!/#iq~P)bdVH=|g!l1$GE@O`ѕ=4bEzg1kx8m|2i,]#KPn+RL.ot|5x{ ,fuh.b'Šj'en%U` f0(T ދ%ƞm}(=iP.͏eOڵ6=9h-+81i7NiXB"_ILRE!"pOQ9=]/Bf+֢/%i jƚX0ήPE,tlf$J>/V;zVګ!{(W DW&=e[IҫVNK,õbB-*U`mżY <SD,ߚQᓈJ0Xb)_~Q@7IR<ՃD$I>m@R}qr,.z:|ZXERxWxyeWR.muͪ+1])+94:9rT5B$(WmwRX~cv {B˄&(elo>Um9 MJy9ZN J% .z湵WRұb bf5IWW''ԱWo%fmU7 2%uK!PρgmrŐG eLp\womcN67KLI}]b_}vGZDF3Q/ ~D)ܤM쌼'>|56\1{c,' a Lg,?3TJC]P]*[KMWu?Ug[GRk xZm/Ȁ̊| TYJʾS@S@pY"['g}!{p) LA}j剬q5d*}(0o"{|'&jTVqD21zP[ ?9$s3ݙq;IݾVp P!ܱhh4Ut<)TRm]нoӔ]fWl [h?.&ϻl=n ;9t΃^)Ix &%-9  49}Y(]d7 kR )B~'QzXw\p-ʦLSLAG :v rX^oSbm*T!/|2?ip\ֹ=ΎQno%H>}@H/'K¡ GE,!VXheirFlZPp[RRpUgưRIi*t}b - nqWB|lQ{a0'41-] L" 䞯4g^8Tg3`{58Rtdӈnǯ3%IOB^5P=h#xw)0 I_%Q ѩ3+6V+(זTKCy $W2]# ػaQ"h$[K^|R:@?ӘC1Ag-9iI.A/aj6nzs"EkBcZjqooO ЄT@+>OG}!{u2cFG^NGsPu7!̐ to dxi*WYaB'[@rIiCȁla2xRy&pip洛dLnsp|LU=sr^X L6g"Nt'wljB+%V &k amg8я [Od]߯ARDž{8Q Pb[EYGEXn׮t?.YGEgpG+aD @<FBfL>LAmI˶gX/3D*7KSΕ:էV#?XuX?;iº/uv+KrRx}DCP є ; c?CyYjk5+O)v703sV;ܯBfsx`v>BqZ*FJ.ՠ.17x4ȄCQ ޤ4Ciф@$fknЦW!cd̀KNcLI)#F>Q/. $h[&·Kl] Rv6r΍"*t NA;^ZγOkAk*8Ru͇ٴ|mlW ;fhmӮ&#%Z+AYB\I%qfY .K'/7Ov o Sԗ!1րy)c"HA|w\CKoZQ4ĺ}V-90Bԉ+Ͽ_&#=?TIr{ןCN"so:7S˫kR 3ɍZtI:{wi|)!i6ĢaR%xw]f~q dd ˓;37[~PfAl{,냠 %ws0fpB EDǦ?8U3E[fMj.dAW"bK@Y*GVu[@na"7>UbQ4@0m*%"ΫSAs1EAWVCeA&ZJءS-_hdLL>`m q*;Rlg V8zfj> c@IG@i/\zV#fE~$fX-@-v vmˌ޽^qۋ_#jG}e-lK Opa|/!~;M+?eMq`-TCv<. 3֝s7QDžsWUD aP ϯu6V'|vV=&2«ċ.~kp)FJQKt!:4nDo v80bXM*wNau+@FGJls3&5tf >p u euƪXf:5 {f'*'xݛb\ Sf^҈^[&0!P6z4#[%ڮ $ ĀRiYKH,l btU"%@m"X:LU[]}}u|A|ueuu=^4J<8s}?R fQ(1†QD{#c)fh?ci72+' Pf^:lW# ɴ8$lf#cr AB]h$WC2TJ79%[̒x~̃D e3]Hjԣ$Ƶ)#%3[|eB PkiNTE۞l$F<յ@J)Ψ7fԽP AA D}[2"zFq_xrp(9h;&nXx%5sc7jTG7-aūۚ2! 'pAND^=we¼t~uQGUN/ų,9GY'Ghv Et梒gbW̅yM!qe&hlCzO+:p#Ԗ}{ a{z3R5JgV T8D2tJtg@IJLLp !EQ}=՞pҦ4|mlZSeO;oh'\bSA}`F(g?ٚ,PQv'x|xVw8-$щ{mx?!||'1MM7)Ol_6»(}VU')H1fy{IhZLɴkCEJa1ILE^UOA|[߂q<|UF&+MYY9_f KqL%í'%n9O7sƼC8! %Ѥ[$)_A%5)|T<ݏ#Rj S텹SF!;9[",//!j*2-f.wPk x/HC5 n%gŒev Tݽ+})|q@CXv+p!jXF̆4$K B7'+o3qc\۳<Ƽ=i*',b^m逴lR._oӘwF.My1Tya.x} _jv@˩&ޭREOWSU;dT⭼CCey5-.KJ;\XRגcQ߱+bZقp_N%-1t>(vf3 m.EwOs}}[L"D0$ !fdpSʋc5m .Qߊo0&ݰOݶ^.8&6n.2{qKmHzNԹ-c㱽6wOiГ40 `})G[Lwպ762h ܴ_v<_YT$R)yp99XF'$ <`27DyEPlm8YnJq)MpfC0pFK  .ّq#mRVC4,  Մ*{}wLT3(J:G-VRs3T QFճj-.A>|Ax}xɍl'fHoEعnࣩ -`k{fFd/vP b[jӂF$Y<9Սr͈GqQTdf rc4S҄6kkhN},mj[qNQS(p|ltL}A}3͍)DwܬPfb)CvJ:,Q 2: CnvHMl`ةOŋh4tD (/SE^`IeuM#;Ö@|Ԩչr'TO d34֛?߹JuJԮ(-_蔧Nh >T=M0y>&.h<f;0њ9¢7q/$e};̡x]kR*VE.(dmu~E+[JZ!f5*+W\zuЯؤ+r.# yo( zp?qVjs{X7FiB"( cד-:bU>N7zSEچcΝZwJK)w-B@UO Z`G$sJv{158,⯉!'{ߘ%5a >UGb:\?ެe4FevJjZk gF:=KԭŬX+I߇ofL(Pme[/춘<[8#eO֙ ]9hRG @lW1nUMq_Yh< ,& T!,&Y*HIUWP5||eEgsXdK1~`O|_ +čA*a'`xQmVe H,WNmQQ.I|A"ios 'K]aieM6,"M5MFUePD( L~zJe %+PKW*~/p}i!Ngl1|+|1g n?I&YF~mO g =T(nl諠>6+s LF`f{#5v`x YJ*@S:n^3-ޓ+jCaO}WsԵ@@Vn`o6p@_'*K* r* 8d!`[bCBkryjB%{mO!Tv1 [[t/GiX2p+vt[wR1E?2+oL0d/GԥJ YlчK cqtUf_52lg."&B#жf]rCExDrݗz ̒gjM6Q kGiWVvzyuo]~ ݿ;gQ' szvAl赜(eh9%D 9oʳPWR.Ժ)2ZEEW ; pđBWm_{BP=Y ^^dwSnha$ q6-4ɋ,9Dl(-NpC:3$-P%\t h>TgJ,b2W{&9ԅsUD t>tŊZPY8#X`q/ejx P溟'gUaq#ɝhR*AeS|?R  C֊rfCn(=)ylr~ gg$ȶ qrX`91ҁ밸 #*ݦ..e5 [eEP!7;f=,uNYfJpe']24E$*KGH,!P{rt\߶,Vrͷ(x'Lũqi2=IpY:?]^ o2s':a#P@@FekPVC25i;R!B^g(ϦiNC*NGyo3~L=%Wpm `qbu])lsSʇ\#Hb%? h),ROD+?ۮJQC)Z|ʵ-)}!\5._'}5i1}X17Pu^W } R6[B R-pʓZik!**^(kYS5ӽ28N!ۤWRJ17>9e^=}²Ҟ$LJI )Cԛ9{v ox.ρnN(X a:DȀm5o639aW4z^+m8jx $ .t=LZL,-! H.Ħ DYݞгTQ_}sFKA|go(t|#v~Yσ@ogC;&}7v%uSat#!)>[o,GJ#ƅk8<>ypZB ki'mc- 'ͷnI*Ҁ4zhl&}a&sSE~^ !F{UM1V`k^Ba;&Uw^)L"*d'{J].(}OyUn2D6]J5Am4yڜ7q\D%2ҜYrk\%MӢoG]u]lt \Fڃ6Ɇ)-biy\E< v!7'ױNfLUvbM_N9 |ȓ` ﯂![sx/Bj{ws*84~,?8R2ls+6-R03wL̕Y9PD70:4K| oo 9I GJO1Y8643{6!&3wL"?˥?YG(c^cL͐pEJ}yu 9QF޹k ,9SKR$`pe5qݢ)4 p&5pȈ̱s؀HyjEЧ,1PHPa:x^Cռѧ8%#3[ 꼆=Xͨt೻=oF;/EK=;`օS[\v ~>L; OĤ 8^1 ` t+VOKⰆ'qV@ YiհӢȬ2sy~%t xfۉ$7Fhyn Rv)~Yjd-);>0 CoaޅϬJ|8ETfWd6J``׸g$QAi5FFG IA!Ȓk0 t;sǚ7G욝GP:?b/gqDXHl;`9ֹ3_/y l"\8D7r+9x\8:g/X7ZZOӧn˷c 2Lʽ IwYCH}єtn~ yzfN]T,ϹQ|>HuarVzܐr,J=^N@5]E8"婾yr^<@t=|첺coo顊9Ͳ3F|$ SR8 ASQH/bdi<gihb ͉~5OD+`ZӄeC祺tۧܜ[(">F /^}< !u4E:Gcjov\N/GhL #?TFF0xW"Sn-Fy;6E+@ZU#oSKps=<&g4'o_%-i /Zy0(_sP^#gXX"w 5e` ,?j}Ť+2@`M12vL!bo9VvCRr11;҆b ! NU|1|&^PLqd_h&96/Ǎ79_l rM&d%\1&FBFwL=pK_!nhw2CE汩Ʉ6\ߊV^ۭF ih=Jʆܜe:]8FřE ;5gio_t󡣀r,_7IH8/2wJ@)kۻQ~/bD§x)  ŚTb.83tW'k;k?=F^{#NR.,c3GFdw{ίAkU@ULjƇ|bԽ`q_:l:Uא7ؽvU)>*G!~@f\nViV [G;˪p*}J{/pfe4QXa !>9J|{_ ޅ\9~z "|s# ;gWg` J>Ė+e<"Œ +[{\a^<դ畴_ 9($.^3VHO@2c0z+Rw4<lr1e҄iƺ2I^j9>u}kh+6"ZcnyE_FwyYaAB Lf[ԩ JǑ*|~]`#*BQnxX_1ʨU `ଃPH>R~r0 1 u1G'˲A"l021#5BaRJL]~r[Ҽ,F\~ 970V<*sҕ: VN8v,!eH\ұ$75c>';7msvaeyjhY0,{@j`dc;>])v\V(kHVz3 . 4b*ɱY ?CSQy"BA\v '77S)*h+p&d31?#/k&94]n+j[X4ҍz|28&ԣzMplϕՇ2Ɏ+F4X\lN} *:rS?^QSʦi؜*p⌒CX.66Nֲzp_>;"G!z{^d'v?=;̉툧nʀLQK EjT*[eVꣶEeh|$cwaR(cl{]@Llu#O[c:t[_^VJbqBJa.i^8|Zh5گa\ɚAJMP~뤆`˞^լKPZЫPQ7k]5MM6N"gk47ٴ> [)uuwW pgFzRZ\aR'XF| &΀pLm?2tf_v_ޫ.D3bjr=Q) {s(ڣ\@ 1sLh{kS0[v^Wd@<K|"][݇/Սl|n*ޮ8a士2I"2Z%7(11;߆"*qcgI%g{`8<Y;D&{` #r}RCU޳w:Q8l6 n8@}h/QȹZpeU:uNǵK2.` hjԡK&7NL G`fFjĆ('N{&8G_>0 FF|F:g<&'l蹠:hLSGd}xVH+~jy'P3/nz4xj}#HZ}!KѤWTПrwd\7sCH6mUqhaӮW/䳬s>_aO-XխI1 U`ԂLcuOQY2"0¾Ս4n${ 0 8̘wEqѿ1e孟#4!f;lZYkGPEq.]GMH)E7gIS T7ޮ2;{*46EYڴ63"INڙ{ GAA;v,:ǫ4 (܋qtFO³ev&}5BVܲTnUXN6q8+q. ᔮ0/&i_~֖-:JD79YcZ(˖t wҿ/%\!!lޣaֵh>lnmCnq ve{A빁L5/䡉5c5JH>N}Sp,n*FRZgRaIi6 3Y ?uخWSo$ܓ!lc;lp*j iz2ycM4YJ4NP?3}[),AbV:}qUh{ޜj#(8%c;Rf܈|wЅS؈'Bxt؋X,׀(|.I"۴j]N̾A:slڙS8P"7w]E$#'N$,ثgi,DN\?/T>r%$ I۫C} L7Ʊٵ MH;cUp˞EyԾ*tfnqzʼn\nFNBTMfdihٟa ~V.-ī(,GWP|[6JpG-M}w%*\ex|v`V$ƹVlݽ0ŭ;WE)~ V&o@iUYjcƑ >Z wۚI vQ7q AaPvC6V;,WR10/j3Ԝ*5Ur˽/m# gأZ2arޱ䓗֤VIPEԵb_מ5<%CN\5DIqzJDp+*#iV/>1tlF^,M&1V-KXmY =@yM>+%Xo[tcvz9l.YT73@uPHN5&ix't&U\SƼc@~#v}|qwᗦbr\2,ժ0Ik,מ._ٍ1=Ql ֕^bW,H #9˅); U˫N _1nMPP h6ZH ApH:{f}!}mxw}I{ޭ^?Bד*RpJUS&oy{ӺCݔ_pfkpd1,?Vl73#hO). D֯2oAY,*>2Հ){3#sp5|XVrzP쟃1hJӹʖik#m*Pwgfg "]2}ك COH7٦ hD;#nEțof30k[wo(m zW (#YZYÔDKwn/~WTnCM~.eL+k]b7LCᢺjtm03Ql5tp@e>uv{R+>w,*RG!Q_"⃝1WU_ȮFuT7 q*+EAKᢰMJcu9pԤ֫JĠ vvC4.`u2(PPo+*dX%*;]{Hܲ.AVs_| o?z{ *` ʎ t V8Xc]P)U涶у+ܙۓ٘ο䬡(;p3B!]&y1.^U\!9EN3@(|]---/HڸiӭOc~UbNx+Dq`~~R,e8?=;0>~@BM*%s<.Gl=C {BIǵ^ vȝtuc~}ӯ:B^ޘ*{+fqeChy/hkfe/|{Muqx^IyLQ^郎vg[ < Aۇ_lXX(H XXKdY.oذb#T+UGmeJx4uYZF 7-qVe5y3$#yߤp@x|<(]jGv! )[hey[J,Sb(קZ>(- tF;V"Ţ|sWOB{Etm\oO|/ 6)7'~jZTn+e3?|H9_ 0 w);HAC͇u]BkH =ʮ2*eLP?;xYFHyr@mp0 WEy}#6/Dn7k7ffX_`(cciO#,zk{ NE?^ɠFTl g `zb@}rsgWm\ w_cL+|7 ?=AրKM;M}_Vkzul ed6de&XT;x%-z\$ȶ{{w V97TKc{/)"4v)TM`7ׯ:g;y.gUuaL hɖMRcG2u,L~v |vxDtz]9'Rx`.a~P3JӜ<mK"<×ΚCkPfF{`KD)O|6Sf`hQ=o {{>$^e>,W go1;&5T\0GI?p8D5±}ƥ^ dX֗T&S*yosYȍQ WYB cgr2Bal(%ƙGP@2uF#Т#?(Q,l#(Tmpv s݉c@4%r~v3OY, $s!p")Gd3-m<fLZ+دy*X+\۱԰Qo]-9gz\ơ9%{(hݰk(f>8}cGly`1-o4%D=w M *ZyշFByM+[BDhCWxz45J[P4ݻH⢄zD_pǘx )٪Su=pdkpWb_E~"@>'/F-9NOCn9-܏-E8X9NR`T2QZVzEa9RHjPTurNm#bRn$(OtqK-CVgucSR}RevʹynH¸ &aW'o$* ?ox{G䝊>EDKtB2ҢhD7 U:/ء˅2| RPL|6?㕚&!_a7+$ [73P,OhwټcyL $Rty2;*b#7a L*e$>}*&EaEuT+AZ`? 蕎 V08H^B!nnGU"[-a\Ccϫ??4GuAv6MVX h =fT ѳ֐̯)b$Wv:WCBzXyQ&<]VzG[pg_`^IRR{+]zRv_-nVsN8pTn{g5)~|8\'臝IVfl@}O+(@'<)aҌN2$P@qXVc;tj!)fIgyk쀺Zʊ9ሰy§W |?p&Py ;7S#dnb{V5{QY*#IZ]׾cӿ˳Ld x4fSp"".X,?[R;#a'~G-L(9tN#*J(\D4. u|; 06ҖE= LVn?w?ax{RKoo&ӣ|&d^мB EȌxygrZ8> l:k"gr;b>/qCsS8=-n>FzG0ű 6΅=+PTa_!ۉ0Lb6 yy6"e/do}I.i3RRҽ]0P=Լ? :f<P@YRp3\<˕tvkU|*txx"=Rհo y4r|C '` [  f iߴ?-?INa}^LYr:QME'Edxd\y Yp<ܵhBg[$%e.p6|WT$f%B6VnFd||J2Bas$[y(~k4Z⑴j$a;Ҥ꒙g/u!{ۘp~ZQvNY5Ec]N[ӺQ H`#o vvcU[I62Vxo>ޝ? #4yp:HP^Z;lWϼTdpUby"~ί|;bN@`We=p~BU\|[nt7Zi+g)AG:GQ[,47ArO^WWSژRWҨ`!"pIjS9,[0-F ՞( ~ES;'/KjLI~vԕ>~ʺ䶕Q߮BBNΠR(,Z"p]vJ ╜ҟS\"ɞpᾞeA5(];Md\J[8DO{ݺc)dOȓvt). IPd=M9;.Z~}$'3[%!iCe)QAR0'1H+ݴqd$U5.䠼>LUד$cYXdTtd,p%lXJ[ƪҐƅh[& |mo"mru9gzd@~n̈ҙ'8;~ 4!L%a~%C7 ,_cM9ܧg.k )->mUЎ:@j{:]||SZkݙ/r TUsȁUu-hٽnáXlYI9BdS!( ]J4U: kΫOqG)xF)LIyy5)q߽ 疥3DnbߧU:*+C!┕xgCl\Dv*K76.>w쳲bLZbO K;\X5) ۟Mȷr0=Q0'JKl5l nđ*!țMi f4鲾ƳKyrocN8ZLʒ#Ġ [)S&7:I ~O'Zbܦtxsl@ZWJ9*q7DN=x#C猦vPⰈ6+>pj jhH2Zt+Lc-ߧb#­ (}D5ㄊl_'t".^кiڿAQ^|栊E:PXYVxr IJV߂NfuR[,i& +5 : $Ž$F%M0'@bp,퇼sͣ NJ.zeM5Z'4gɬy[$ ?O2Pv^J̥sˬy7QhW5l-].<p Ճ4j~LN1&^& f,y&,5^([㕭Нz,.[}GٮcɌuop{_MFi/d,Cӣ'3_&"־ڀY+o`Lo E >Yќo_c wG7ބ*ai ԙ":A{ăYn3qHx1n&$@m1C>0"R$d'd{DD>RcD)0Qbd2h')1xi!T8YOi,񜥍dZȧuuE(xN بPiP^MNX <(H=a-cW }''MDIݺ- h8YxfuMJ텖vi.|PB{f,D ٔjBH|T,Љ᝻4&HVB:+-<8l!.r'4 XM?~0ٓ,ZowK0)kȲx \K՞d Wy~y5YۗWYCIi`Q{oQ!1G؆?!N !Ѽq@{DAGi}*= p,.iwNFx:zK OQ 9YW~ͩ.x䱇C}0=C>Τu8ăwU-ΰO|aS?@q$nZ|gvT.;*b &-dVT%DzV2/[ ].CqUߏA yowwK}wR\S9Z@|,7꡷dDrsj.//V$]V'g?YRsl3BLSc׽v3MnȊ`ݲj q /(%ǿR IW%a$Gґ@=2 +feb璻CW/qX [oJd #TR5M兲^^B~X@ّx8W-L db֮M)<^\|eU39TcMk_ k?UQ3eO@bM"t㏈o.h&䯩BPKX#{kuO!.8U'T?iբ7ke%\YùQX]}TR{UI6lCy]0fEH% |^ ! ˌ$>L9#iZI!'ȤmX(2iZyH 5::#5Er&+\E@aUvXÎ/Kd+H6U,xЕʭɔfb*PA{O&8{ϕ惕j Ʈ%DZQk9ۛ񌰘1P(nZLY&Frr KC08`lw$,` cEGޖC6Ug{ \c2GڿeVg<_UmnXEhd93kkM>׬%ٌ3C;%Mc 7j͏;ȟ 4Ca}f_*K r@\^z30)ԃ[.HE-m` 'M># RUf4\DjԭCYxM C^IBcj`ofѩ$P}l%b/C4"\qJCԖ:u kM2h(ȊlWNŨ:X d){L`:EĢ'\.`KXp'/{K`rB!@ZHZSnHaQ6F3\pi/)g&2m׳,0, >f̬LaHu5tߥ/)LULBL;V!ʕ9M^ -'g7:*T=Թ=Bb,&gujKoC&F)6=*N5^fm+,Ԩz<TDu .qJ+*,QRΩc@+h? k럻y.eY#%hHĄʍ?(_x\^Xq=(H!hCbrpKg*v%ףxs&hvἂnT9#,sf1;/:wDھY/F4IV&uHV| GꇭH$].j /&3"{s+k Y]B%7B6F:܉Ǥ[& H>bW6͆نq(-5x>Ӈ1Z.:oXiT]Vgu_WZD0B>,7`ݓbP-> ~LCu%q^Ю4#R/lZ3`(:gJYMI.7m> %32 ǬM}VJҦ1@t.tRHuD飖x7]p[=JD"93H,*TQ{YgV+|Xe!1J6΋\=||r3qUڧ7V  GA8;* )?K*BsHL4+T7 X m<'5ٽ"`Cʐ&h@GPŲ1X}}{}Vin’Uj4~G:%297&AEZ,DĞU_/<]kZJ Pu+̔*aԌ5Ė5肼\xo&*,;_k3f䈄||3oY oE]_Yu;dZgQŰxt/wg-3;\f{Xo_t1dAdy YHu\ ,udćN-=QQk 17c9Q$2XN=y @'1귾:PHH+uz=xN{!?MPjC9)…Ą˘$_ܹQp/%#`p le֭o_`%ȹdTL Vm$sf*QxRr4֥:"3~dg~2g܋iL}‚{hD1u07M2;a[5rM bCY鞜m|k[T'(*RKB9Wo[)sFtjC2$ CG1Zr# 2ޑ`yҭjmyVҋ8#e;j Bar^!-鴞 [s1 !'w @5 ͡>ʹ -h@$'Z Fx["Khσ3] ȀK+mV7'hzI\*'PfonyjӃVb& {DB O _1apIly~u %ixuW#E\_7YA.QV=k3qw"!:ǥ^wh V8ب5AC՟ Pp LRsGWAƹ— >omBG~!#ʋJn*TG \O_A fFvMBd3.#U"M˴%3nR'"ͫ$Wa劾4N_T(UsOhnW8)-T=/3 1N] $'z1nCV|J -?,ҤC /W>3zS.d03s镱Dwu$&pۨ5њAJ| zx5 Hv[(L 1nY=xzGdB|]3A' vmaҺg' oxՄN岂8z՝yaR} _VQ)3S#V,ab r>%+ q/%6Pu~2Ҷ;\ dy[)&‹ӋO9@,kTU'6®Ȧ}ȤqG? (oq|W]^yT#:kxI8CH ?ui%%oqF ;pP2Uvb~]q4p]Mty^jcIB*2p떨&.?JXnA|6@(GE1XyA7,>F) ! Ε,4I7y:h`$WAbANk, rV{A3\?Qgfj) 0WZJ)Js?ۍv1@ůĎYeިw*6osUTRPs1l}QnQrU#>,fpVj\4KA.xqn$QHl鵦lɆ㞮=([T4n} /U2=Jug*(w[,ɔ=_&}]sLuN]5owH:`{?t֡ąeR5qKFP IlF̶(Er,?1f}Ӳ&J# 1 mJtG_UW%_B\hP,d{G3 a&1e"9^lhDhT+~#RT__Aq'/ܓd Q:!̾){:( jR?`#N qaA}62SNqI#nK{}e>A~GHmsSZyF)WN#~f3S[ZOJ&?ZW4ߴY)5W Fxoqon9;+G+ѐ!F69F/26BFF|OěgYW6\w+iV+.uz?hz_$ly3݉qng f.$V(T;Y:7#DztK)1͔-Ajv \8 d7"IyrQ)eJU@2J6X0%-A֧u.Ifp3Ud*kZĎkSiH_EȾPCc@n^6\5ْ 4i"[j$3XD.ĿWQȹs.aS©P`u 4"Pcm >Ͱ\r,A`;e˦WjQ 'KV'-ba4 U4nu8@LPtO.=*%NHWi-S*NPWR?*̇CV2M 9v."2.~ys][k պ-3Lc{LPs |g]?Ho ڧnͿڠˆ&f0Rkod2mG Cۅmd-6^Wv܍ hh,bnt>ʼnGZ5n8dȱݾtp„%> 3=k*e+dlf~/d>tIb1W?JYO&zjرq[TkΟLxU|)Gi90W- %&5]'imSƳ9KdR18[ZrNJy>Q9 A}1E$z\iIUw8٨*=7. "^m0 Z{a 'WC S}!0g _oZщtIV74-:y\.oЅ`n\M%qXN#%_fa\C鎃Ewn{YG F eH1(rnu6@ʠAŲ+J(N.f _cjO'/HЇ"4zdΆ+aUCvK5X4~&W9 /Z?~բƷV@Ln6M 5^|ZXkOW?0f?Deݷ^ɮKvwE'Ӵ:cjFUW%-E (~aUv\{8@$fMw4ENόi~z@]v^ӊn`*9ov[I{ߺp=p +I߈ˢ6~]`{FP:p~h+4\tц}@P1aw ڻQ_8%#@a7DPC|\!qa2XxnlL{@l9`^cOI-%D?zU {eFP~Fu7U9*ҁ>RNQ;7ScYbj)%":bڍp 'hWQe̐0Ǧ,;0.:bپBiبJEe=KSU@e@a??G.j|xMSލ: u<^3/*ᕲҁZp3r|n;I/T)` ؆!_](Cюɘ}ʈ)y1uPt龵g"Zq7h=4zJ])URTk/(* iOA|"sp@Nr%{d5@M<+N{ MvsCU٪/M-D9 Un2HeY\ׅJFݔ!3HQ1$jvICldw[:@3CtәtE_Zro^d a3=@ܩް/OMQiy Voq20rXrc F nxcN0uB\JUyAs1ĀP~lzF]; ynҐ7Wm,hIzPЫcIYZLKk?ѳ9*Sj>atuKkCݽEw< &2SiAC'*i > 4YXA>zkN)lvAWh7(\ϰjLeO (-=@l!_ inVm_TOMX8]?Ǐn`s~f57$S+ů5 ȑ4OOW5\2Ҿl귄 wi΍NTxQnx:PJP3eL1׬'," Glu:D9t105}9] M]b#y .U|XQ |l,4&˖n(XE>mX 0_O7}P"é݊kI͘Ik{,OU88ِ+[2,.FNӶX4 SP*?!R (4+]V :R-]ryGr@k F܂9_ IFٗyђCcUrYMC6,N& CஓOg'Z5S<<֗m6[ľf;؅NzUYrH(~~r $I,.Jei`շ j 2gyOw?@]Y" |p#E%7ΛPPjU88&Edcpz޸%[ً@Mؙ_aZKSh=gWR~נ{b`PMhM9)׷ L۞sLT"+7ݻ|Z` n|\I4NL"*y!^o$5Xݜ E &X~}ra@ph3\;vF}iGII%4XKϠ_:sƠ+&-G.+j1ך '߯meh`٩eyprYqruT}`rnل}#,?F#c{KYj8ݴMH,``A&+*1'Z)]zw;d3džVЪ)G8|o@w7c"M*f C޺1j4G0)b:>}f~W6^5w>4 CuWJ*稯Ж󰖍Nb2s>6`D.@c=o:,L_)T ږI _"OjT=7tQ,4M.qK(yGv4<.Qlɫf0߬O %.:Nt8 -I"LJy3 \n;|aU}}1ptYoKZ zUB&˜<詌c,4 !{>`١ld8e){S$@k9dѣC{E *?7)fnJf""h] .ymbxedGF1/s]%BգEA82Zg{|;&~rNx+߳6"oV^y-GLk<Wީ+lMvڦ3ȭҳ6t3Rx㹅.kи&س/{ .ڃs S .-&);x>6VH ΁bނb~2LI?ZZ b 3!6 F]֍flsEn$OὪAqשVGuKboC6ղ?{m ~FX>"ˀ4טEE!_aU,&Bt ۘiБ2"2FYSoeR A1Tz] I(4:>H t3ubxrˢ'd@j+Z,Ur0쑂zñݑj /@FnWYeąo[A? }H'Sb N_Az{zi6`9kRrӎReV2]"A=%&TAB{jp3DoWeOl%Z0&:6!סh / 2OἨ"f\!Yyfp6IUoeΚ373h(Z:<2l*6j}oLg/EIRZ$芳1>e'"4|`,~UQe}wG!I{w'!~ &G7C .pNCRլFcFFΖ{ 8稴lDeIݬ߰%P*HE3 1XC%gSEWShkGKJ̶ͬkg<,R`N*ڒjT.F=x(4@'D𲾀|4Ub"@\ Z횉=W3#3f/6^73tZ̯>7wl̍1 &Q[L>)Oi^:8xFtN|4(qvQuL~@n}8e×4+U/x_;*J 1EV8dR]K++:E3E \G LSn`N#j)۝S v NC8~-,_9 'o ` GeDe oI>m>&q12cÝ*Gd%ζ:YxTH[aifiE1̑8/ǍGN6Y/v; r=j@ĻQ[!<,zڧ֫܏8 m#SIa&ElS9D S>h)ߣP8} F!cXz좉&r4lrgRn]b0IԴ>fU luRy=ez#].ԏĖK IށY.fRt%Uf*F4vN!/ZY>& bWOQlxr6 Y&MNǢ[AB~˼Y1Ho-,DB8q rQm[B>"h*7EYJJ##NWQTEc-|S'^FY<0J}ZPZZ\G%HWzTCj_"(Z./J6{al@`Rd(El{T+G,-b9 H2/EI3I]ʖCeQAT̃}!hh")/f||iQ'\م2IR+`9kEU5lˊ~wK譌yD1;JV}wo iѢ˴* Ul24Ch]j,зB<(ԛqhOeXXeG7N,3)Ǖ'nokPi@_ѹzRp}RKmծ!>ED{)|5DH*X3Or7` ɠu7 v8P vrN]Kh2~Ss8GNq做>ҀԞoM޸:D 5i6/b!l65R;K oR?lhy8IТm=im~0 'r.L77p#DC2q]%>u(]E;jQ~M3@H=)Z9Z&(k4Ai,m;t%`R`X[o!)!y) zXֈ[^2SŐQ)xFy@q{G,~H_,j10=c&:moCc-CRe,WT %"J?KP^Rc|cx髼sRb28GMM~^|TA3- %GYl"(4ޙrGUM:XN61pEeL1!J؍3[1kn,Hfw UKeyQSl&Ґ\Cѡ<y >mzW9g9ca3ء6S$ < nrAoϔRx{QWG{ݦ4h4cCq ~wcה 5x5XvF1V@۸XRk0' .pRWw&ۊ%y==1sj*~MfHDʒ *lN u8r-c`8k z\<M\)V?fCKtټ4+ꕎ٠D,l}_ytnd!T XXi/(rIh4'=VLh2z:y}U-$\α W ~n5o9(MOD}׾+v05җp}ⷧ>,b6nkْ*W6R9VO[jr‚쳝yY,,ӽްE@ -EK}Xڤ9yV7 ^࢜^K9eSEt銳2[] ؐ7"i ޱ=ψIa! y:*;lU*4-"Jw BbASEC  KfMbd֜xOfWArWmr0uNpw;m ~Q%X6GHLɁ*1!jhERCg~%m){ v)+01~]F{Ƞr.g|-V"),'UTj`xn@dKX|c-!- ,jWޗT MOc)a1{Z5p@ժV¨XxVL+O5 @`./OT-? gA;n;l. uDFqZέ8?Kxw{l>Խ<ϊI1f$=Z'_0D/.~֩ -5z->6@>vw͈'Bξ7o X.ZD_nc9A;fL"PmBR5%XqXAYxa3"Cx2c9qPe[טi@;%LTd46QiM6mNaauh^4@@$7W"M6X&K^%4~PA:8P2gË2vlC8Tf0NuO_̈ sf(螭q\4?jh+Mc xbX\TKM8duBq>==_!tM+cc#S$g⅟+;9v,FµR"ۧb(C%a|R(d_X৛j?m:eƴI mF/:}ǩ!&Ru'ʄvn:&.1J6egQ7$>@^X͠$iD@ O3˧BqS :t**,ym nA߫p IOs_n|П|WtKK4o)=I C+,7Z+qqʡnq&$!d-8x*{1ԓ iy{=ci➵^:k@ ##Q4 gqc0ګc`={x 6%ߥ%7g-J*]93)FW5Z[N>us xsʼn~, vkgL܍-5(lqg/P5+!P#S6k*MU^ALxF==X^oᓃN>  K&+T:O2Ery7'.YkC;͖E"mr~I+4a Y$˹X3yZXvY.=u1Olσ'$sR<R䙛?Zlr#q:ZzF9m' 2~jrwӈ5Z!⧍Onxt8b_h;\h1ރ5Jc@'#o_aF`2 t*Ύ ZTLiJ{N.٤<}{sużfJpf}輝qtv1<$\qUjc)i+Ic}|q!Jv$XȿOGסgdC,eb4,@GLN;wikEP_y+A*4"Am8x{DuH(k Oex J~='b4|+_J͑ycpoJfU Ef`JXLqwI+x!+KG#MmXMR_߿mfXe¾2]5|/z9?AP j?'S$%3ӌT:ǻFgec` Uk^s:yZcكgv9 "CH2x_wo(}q2!յrȴsյQt:"A{~2U AJh%CI9 k=0`&u+Le -o )DTBrJo)I z}IpjߔJKARgFiHk6Vݕ.Tg,d +6j)s `㒗WF*j8p8\}" KM I(VSk^S7;?Jc`y_Ǐ" j(Xl(8N9:CN'DM~U fzWeL1CV$4"CFjp(2h1<1ݭeg+zZK?b+=8H葒+1w8kƹ3j"fXA @GD&> X-E[Q$ži#:2"/>-$QO|{MӬT'Ԫxݬ6)Z XF 8rt(s~;H4`ouy&E*nD;Ieni-ϫb]y~<*tʸz~)|3QԸDql!mh0̦92Ɲ%0g1 ]^irWҿF8q}(Ym;lFsF[=)DCxw(Gu]d4h+Œɧ,{֌IW sMqf~ IAp쇌}`*{Ԝ$̋Hn3ҦY ojT <4(j֨_^Bw1+r|NdtH{2;;A,)&x^G!uΐ'(h7ir+4 0cA++j"n_zsy&v V To0xCroUP q*HRDҮ髼<Ҥگ?RυB4Ց>3O5Ira.>"^mc&%o |(M]bL}@`l;$F_z4h[?i=Սa+Ip a3Y8o@v\s!)y|>untX _rW "\~4n^o_!ƞЈifZϘ"vКJU/9AcfkޠIqtJL!p2Q<C0b ZAMWR2MZR|xp=>|59%ӣlT 2DO(;nH.޶qlC}uZŠM}j"lpYd0l[6S‡&%ޛEóܟ-4/_<<.Ǟ;\=#,oY lmgdCxL>$f]O4"XвktA9̪W= ໬ȨN4ʀZqʶmXx\Vls_]D5b MXOHԘtۉJL&,1Sף4;WU; WY[߷(h޶{ ggZdgwR܁$EW Ь|&/> INP`e'ܳTdpFRM^Ab9%ȸRudd)oN$G Jodu8-UJO:7W|7Y *nۡ-CG)>@tه3$1k5A9]'.JG/P}v DF[Ok+CtiB=VJhhd8 #vG7A@XBి;pjp4 {}gőɏvYe^ ܧ\7r+1 0YS]H7V"鳜b9^e(Ɏ ?9Qw|b*53q^sGAՆF Q%[@|bΐBϴER~D2t6>40'z}+2H]txAQ(3w@HBE)C-%3_CXY{I39٧+ 5M)L6f\VV#!pB5oɽSA89>ǔ-%ӦF*c ^c8g4۾ &eN$X&4"&&V'ʮ|o8U f8_N{O1zyyK{oW7jJ8;8iO.s:7ߞ"K-13zZ͢hGVl r,'/V1e'rC\6)T"~r0d)\:е\4-POVzċU Z%)8eF?6$MVkw ц߬ޙZfۂAo&Z)U|$r=Q#*.FbHE%Zs YmRHTjwڲWxH3|#g4Nq#\,'oqxX`Yj2ͦ䨽js2)eA9p{`oKE0k4@3ѥm!F. Zl"=Ybb^TbpMT=P9߽2=1NE6 KEƊEDpEk1 qEP5frrBPƁ Z{;t.$T:ԃV3 BıՔflhrl,;J6 @ȎDvzaJä<-ӊd}Ag3V>qSMp y? 1\,GLQPƹyT*8ĸ Ж bw%p5}wL<' <G\,PP56C zE;/ʝ~_I)QUxw$,A=3vwSz 4@`$ҹ7UsF?tP&`J8CԫM_eonhnxmS‚~ܒ,3WcN^iNQG;c!׃-:XF^T#8@Kl:J c)1(: ķ+Ѐ^)q#ބ%)y}F dcM~+ Ä`N7ٱqeҴm c` B[뢊`ino5bƼsڙi g3 ^YH?=3N20HEZjHJaQ.૾'~dfVRW+Cdƨ8[1 PHBqi^n~<dg!|+=ԇÓDֈ?4Fv Pٻ͆w.fr(|ަks_dY3{nsw3\0feI4v}v"W7&/⸕ϵ1#{5wFW.?7 V41f*;XU`ξ(X_u8p`#.YC"ŭWޢvy+* E*~}&yٵå/0(]57ucI$f>>3M**!#[c*.F| ǣJi*O!]:^oh <~t'E2/G0{Y.b&uVYdHCUHw1h 6EU}Wq#Ky<SGoC0aΏ=YLs {)]5us<{D13Ð%yxa&Id,bja6tBS[v5$ ! \5'xy6ʁh4 h;g,&U#LD:S+1+v؀]L]`zU3ByX=fRVAe(]g=N:lQJD-f@HaeÇ v+1iûpb@DCzi cj{Ѧ}ۓh%nY7b=?ף9/>VcYbRAf!/V%u?F)L}bF(sf9)o/>πw f axyŏUkJGZWCxN$"#euY^ԯ+P5I0_լ43s8en 4ԭotPo :@^y gVެNJFi@|+O#CDf Ϙ_C3I6~:Z﷬Ш_| rn/-j -$\?.hZzK]*\jġb4U%NKI+O")G/+@3ܱ_倯qJ9Ǒ={]ȰMֱܞ77%q"k7JFZM"teQ8d (EDpo^i񘆨0ՂpI\VEz'a&MAɭHbUCHOĔ%k2'NL}u>`";bˆ9V]4r0l]]s1*ot>t~u|AVr*L ݊sht Uoy ]Y;6xC[[r)ڀ)(_P׊qO73Mww/0:   3$Xӝ."dž@Lp4ۏ#)HWPW1F&)5}7>Uy8tc_Oj܋P<5?Xr%5v$G8AM1$ mAW s{@'.<4/5޿~D65(ҭsh- ˰pߛXF~BrDSLY"dUUCSq1$jMؗyMV1*IU>N aJcCjBFGAlR(dvԾІ"ڎxDCV%KdĠe˚L"zH}pp7zGg:=)., 'nj3G1~v2YY #{ɳ% nŲ&X'u X[2 Nj7~$ڝ茷eb:c[ɨ&\hޢ,4(Zobla=Ր)SnfJiGTAqyGmVc6;Ru*R=mNh"'-rT2O0G+[M跩m[0v uYYZSoD|Jr}K-̜좛0Jp ,dw\ 7B\'Еx<Ӭ\A2cz o>{~r<8{% D =Tlz3eH Ja*|9) Na|3\Izv ̿| ]@@ۤH熤u1@R Jd9EʚАIK`3wm O@C):LL%6itL3ΆD^=S#f-z9ѐ#Ke7#];짟= nZD$.3(1 _xۂc[KpPS0Z$~4'{x1ƜZV"4B^b/60ƌkY#<|7u"PW gϖZo}ka??ٞ.imƮLs}gCyWQ;nC~u#Tcʚ #!tbϔq7b6EGU ̓.1IǨ giLy&AWH´}tFe]({ۉ0KF u(/ MZ3\pѡN@wHu CJw_A(F( ]} )q t/Z_@$yF!|8fO ٛ Si3ESs&+tI'wyy wg]羝nL8DcT4^QWBPЃ`-ג<|HZWqu\\ٿ ΛC?/ 7E`P w 7_ywxƶY`ށc>)4w6|{:j^/t4IKçWpeqɤ`}ےL̇BZ1Egu nG[ߡTQU|u\dyx#چq ~m2N7hj ƕ]C493i弌>sk$3/Od 8MyQ n,^ޒ3j^댏kD/|KWV~2hQ1uՠKX ^2 謨?ӥ5S|rLiRǁl9{q\VF:h .q&%.b&NIbr+THcª'/ēvܱuKY0ct W}}(fKvpIf\H[,2 >>iN.DvzMzOzQ"L3:0EτPͷUriLN𘌑َtWP"Zeɟ(g(18V.yLV9t)@jb\D&2,_o9N15Y͍"22:x`Ow +O)==0#6tW[j;?Bˋ1/llk{v"zbطJD hXU}#>go@K4g4^RۑVRdGT 0=/,8R jds5p2z*~pԐ72$6APZ{;-d\>Zh.zz!_ 2x.pQqy]|2j]o .# i| Ť8&ME*˜li=]<.QY(S T"ЖpdKXbB-WEHNڬ7 Sq+ ;ll x0N+60  ɐRa8Z *q}h׫ XMX 60JеZ+.c ^3~%xO0!Qy3rXLU >Rc 9#juG"|{.aQ&pU}%뵱hфn Vk0l1sFgDž7+Ny8c߲-僪JiGri]-6̋(t#,b Yda#70#| =025SoⲦ>oVr;~0[qB x21kc^Y&NEmPav_E߻|] v|>*@@[tV+0^07 aÈ2{nC{!{!ڹ)뙞`tx 7~$,Pd ۷ NbnVp-dB凪મp ҭrRF@Py,H g<5%tl~K+?!"uG}=Cz(Y+x^!1k)>).s%Mu?潐>!:*ck7Z\Ŋ5Zxu1i F+(׉ d+w9Hƨ|Y/V$8Aw%%$3)V!ZPAZ?,5{K48Rf~k0h[l*@9+vEpTtqs 8+3K'gL|{.@x3z=' q@Ic]>Հ)أf-CG4yچܮ8จr}:B/tcψ7lBsCeJ r Xo >8nĩ%@ 71ge#$ c#G+&0!H3A[ C DË/6W"<ұ?,pl˨˧[T~UB"fIX#|`a^`+,wc z&u Jub5Q\D:y?ov_S,ݝjE|ח}KɥTzm, KjKbkgdccAmTq %k0\C'KP qFT+D/Td ҡuZpٓR/5m密'Z8n:szb4uuG p%;[kA Qlt$nqK}Lb2{Ү Qy5 \p;ֽT^`jjufqe6@f~ہ6_rD>B?_FWo|l4fc,~ID *b8|PZC/;Dgs^&bНu3pKq7Cz!jT;[ m[h(HνA%m[U r_򣔃{ \{HtpۉOa{qdދ9TzVS4UQdE 4v߹AFVqzV3b>g X5'J/zܭn?8+:;::xyQ0!F!_F0H v.NG| 7D'~..[T z! (ɡ~AZ晦!0:2;Jæv* 'q^_ c_(\6MQvHPmTyJ"-HԾmˆ-R; 4m@h/x)$ (0a+l2Ŗ:TdJ|fI21.c~C__]Sο:)pºN8B4!Vj8I<3%70!D.% fW>-_ "Ht*yM ̵TA]B #-Q Oߧ",TY% ^&`C;V[P+YKt--P4F:Y_V@h}:"CPQw`OӻμnDm|#+3Z' 5φWw(c4i].ͬnV xk}*$`ll֦ uzWצz/~K*,  t)\_26L W /O3oGc&+_OWv9lɃ3!CkKs So ~$ƫ{}{ëoW;قeKO8rޓmI TOD{'ijQ[cZcZJ"3""NdI,zb:ąK= F#))BE`ӳ7v& 9> 6GNVUT[S=دWnfkr:bwD¥DWwdPdͲ/F2p߷ӽk& 霟{+vil7="ӁN-dQ w ꊺ|q& $A]f*¢p(ϱa҆':\'sŠ hi}D.FdQxp= eu _d#.[]n:|ՈݗImg׳M'u֨6CPzۥWp=H^/ow[I+QCDݠ/u:0ZaGS*Tv䃙1cAޢeWU(EXJl8ctǾǜ_I#`NQ 0bմXHm&!`fL,d:Yo{ga\쿿rKUOD_T ;kϓ隬V^\nF~"M%:n/cF $`$3"r8zIU|qH7h0[`ٿz!w!=n'١( ER-_~6)tjXtYp8<%ݞZ\SYmY/&-7ME3בZ}yw9pd1:i{W$H8 n9#Ww A@m}gmj ^Caj9N\+HL\F-]]Vؚv$t'\\}LT=4&s!I/2 T?Y97b{FD8:~{:N/d"SFz_k 5xn‘Als.1Ei,}xd:tLrUCJB >#tЊVVՀ9(~s#!pոp];'C<Q}'.9mLIGޘ8qCB+ɛwJja[t&~oKo`Vp ݾkX ]p=̓B3nlqy qQD!Y6D~*o)1B<>+ GܹMGD<^2[pOrc!rrhẗvs, tL(IrbmPGLrF6)nP/|%~m5V@Zv};W*xexmv3+ Z滎=h2َܑ'ږ2}D3"ɭ)Xub3TL㥗˛w3nK4u=c^#Pg{L [qzZ~3Yt|%e0![ Kτ=_7lkOf9ْ՜K)+ ^ X ]dlX&M'[6vG&a @}ᔩ7uHpg3:m~5a@UXE`zm`]!y>3FMir{RuSĮ u+#?G{M_?Л+XQpOuvGGD(^޸sVA*E0tSU @l#HN[Y_K(3pYd =PKM_DHSK*jԅxkD3qV3Έ;$FrL&f~`urS@ [ژ2@`8VPx$uH <,h b+ڞu R J._J$p%''-ﺈ6 E8 Ƌkb ,02w h|l`tECr'[J~K,#T,=xzZm @t/:`sgpU4|4(A _Qkrdtm%!?˟|H$#bm}|Gɿ]qz#2@-gv'66~hM`Uc ml>Cq!>ȳ~59 ^l2:@=SOX@82s-O>  D[PQûWb+ _GHn0jߕq}1me:op-^t[k(K;9 Hu!1fx2^ B=dJ` Jv=cCo %wAKE-1?ሉ҆Y{҆$ e4ًɻtAx2i(GwԅD 0ʵh”tHT ?%@^'F3xlX)1 ~70$a=dBJXmZZ{l3a$~y":-YhL->)Qb2dDaqְےoA<<羽9. j3]Ђίx(zLF5QyqeyŨ]s=f[Ci77E7șe˙L]v'p̄J#ȱM>i\fW( g#_eT^ Ā>2AmAtxJ4{cf6t>+_`R[ޱ N_`ΌeXU1 -Ux .;^㒬A/7R^쫒٫CG 1NK;Oj0hDàPX//݈r+][;y]پXǗa&kZm!P/0eZQ9!/KQNN6`SpY+L7ነ8묑>x&tDZ0|a(qHT; k*G53V=k':E nY^Im OY%5;қ{3h"dt67YQp;4NѢ s2DT#=PWQ# /95B_^iy|v'8Ev# &bfo@=++ ysOeRIY;mZ,'w4'm nZػURuOx}ǕUfVk/cdsu !MD.( USH1yI]Ү@ӂ&#{07UW^Tkb`]l$^l#-:uS&\!1$ߧrLA)0П}B6bGZn3r2:ƩH ,L_탱)GUh8)"";h8HaUOJIm60tBQg̯rY2}s*({\7<7OJWBJjuAq[.s)5$!'?K!Kޮu/_WN1F7=0\|aB qD4(b^ByA(F?=QyLmf 82aC =9JW} _-.x棤,!q#L>ȉQ⑋Z+ vWjԣ&>`_ۍ@|^Z5<%r6E.?RGZ.&~[jb'{ܸR L|Pvygmθlw"[,'^|JGCĨM{]kY<% ׫DNnܓxbcx Ik0}<)R@\+!՛ZsG"HS~nrfdBdH6PC'XM qj,mykd8USA %f:F`$&J@ 7-gQqݒ :E>=5bLk;."'m(k(E%#6Sc H)֜c>DW86"zf#G ;('F]ʯ ymbYIVCK踊*^+Znfއ\6f4~>a\hþA,̟_̩i[u)>E޿5Wq}awM|Rᓟ#eH)϶ A2Ő=X^`16KQĮT8^l%@&R =@ߡNUYu5-Q5lTBl閟9ʍexF{9mg+9C2^ؚ:cYPgG˹պPv!DiN֜F-]g(6.xOEs@;jBHLKM$H ~m/| I5-sCuWj)ީsy3GUUXjtm#΍ʱ @j{ލ5buA5m{2ZGɁ rnlưD!oBY+mvδyȅJ/B{ -  8ф> LD?LG9@\!! _ 0'>}ޭGxk*öv> !TǴ CQpt`Tcv+O$z Z,xŽc uo=ђZݴܽRWi+ЭJo0}'6 (7yy*C=")-e`] D.RIe vp?3$2W>$C~uk釼J9sG&CiΪx,o_n0~u ޫSw?a e&7dқ""\@DƠְ}~1,́zeO ߼/]?B.Ҍ6nj2hmN]OW4UYR39*(F$.gܫVkȶCI,f̏#>)TC_*ܧ"M;fb`ElVo):ң)IU8;˓<`ǿcC 8|0rJ(GYMoBr?5FR{es+.LQFחWŎIEZ hs2η@ 8+P'Iz7fYăΈ^QV!"gW=maW6ІͲh?P?KkpJj7H:Ō <\|"0s?*ܞ%3gCcK.ڲc Sj_?`qy4v';)#U̾0=4HcrظX]_ۯf|հCޤE} LUm+0O fEA2 F7hFO|̯(-o :ʞ;ggܮ5zZՔ? ׬{;8o*l;M"o!t;4[@SaDt \f!NGYv~>E"ƒ{lbzߐ=T%o@csY1H]su\WNO2v!;~`Ƥ1]aڿ-MFC]sױ? Q-.6g) &g<ƾ au:1BT1Gx[ Zc(M+g[]e%\,k'7Jfhpvu/+jd9 V; `v ^_\FmNgmcB 2( 98i|°ib?~v>`G]itiS\yl2D5yD>07m&_H$`sw/-2J>3 ++`bPqu3UDjUǪ[TYn45[ P#K,QE[o`RD~r#Wd~iDKj͠вr4]`O5kI-!ؓ4*알q2!2鷟XG_GfΒW b/*BjQ #_ oMuCa%X6O~-6:ё.g z}>e |/8a1cw6zȗq?ςA?X2chx$A9J\gp*r++1V\F{r]GW{S_!nqGt'21a75PØ: U% tEG^'+uzFT}U\1A\-E>?_vv0::H$ܿ4j}qsmh[ rsXE >Et}A.`ko~qrg!SB-VAlgiS $߹Sf' O?Bi[%8.v}gKD3_H)<M~ C7up'2%4lQ7\UY5ͪ<s1.Me>ֽwZzS \m Y͠T ${AMSJRN'BFج7j  5rOxZ3c8*FYߝإiRBf+i/Vч ޴<)M vjSHу^r|?yo48J˾_Uv4݇#zxFYmIk:?h7w0! Z1st ݵ9;ε+QdDH 6o̅Jz-qe{m7R=o yYi%fV̰)zD6R&Qa`̸jRf~bR[sw/+d2`5;kp5 ,sb %<U[H3vDPt/-{׍GN_DWbj~nv -jY[ tx^>w1v}tDlJGMSUGEB{ ?jbB*4yq*ejrs$یNyyS!Z1v;z )˴ 02^W]H5uVܩ*]3jz%dŧ*~bI jHW(]F vƟ()S}ޙ:IT٪N$$ ;Z?Qv~51 ^b*G+&qF&;|CXĉ2M r,E]JVFΕs$٩aV19;Ҕ>iG}y%e] 0jJsjOh/aJT*NԔRm{k;LR ASP84!J.NVLn}F]э'έՎ6+B7~sҡp}b\nK8~0R]ޢdpwo6@1,|$72 DQfz[0ɠǾl\;Z5$hK+TdCw%zx'~{%x44vaXG V#eau'@)ӴOʱdayb*ޓ'[8TNJq3f5,&BU8;GOC\R}tB鲿tm$~ZYh,Yp@ $ۂ_ISDq,eՁ*/#uO=W2#z,2&Es bVa;~/:s;6@^ӋrBBQ@'9':ȀZ2; %u[%>L+PdSX>I+_FЦ|0Aqjs=dGDs 3N:'d CXv#?iG}d̃ϫ7YkpQǜ>O.%{\w $g$lEDCc@[oP1 SgzY%9pɰGwjo6sPEȴXl]r5K;Ŀ)٬3iωHc:0zKCT-7v+,7ȒCO]d_C6?(LaRG/ּUfŜIf0=g(Sk=m;o8&B6f Г|MD'lRv_;M$eK<'!T[1Ns0`|'rOlk-}wՔ8l|Së:!yIN,ąyA 8>Vԣǰa&zv@iy(|cN}Be'| v$Jevw Sa@L[J0r=0i|敯='a?0ޖi_#ϠC >6޵ fuo|Q(LD4F}* ApsEDfbt{Ήh,(qo`a7JN!)ɕ::ϳ ?l2\&ᗩ!XG"hℌʼ8PIfU}YTsCqE1"UA\940_cy, + IDRy}qvpŜ6X/&&枿ĚkGlH#eU}Qshv 0Awm%+EC@Xvz>9YQtF<+Q%Կ9 *hO7lKVSTÔŪ^xg 4nTп&f @Eb4"/q*k+άc_{W/^q,i%}fȟeˌ.dE`pr9XImt*BaGYֶΙB@:%(k”YhzIxqʕR{u \*!^ŹX }kEA洩VxyoQ%6,'Zepֻ ˜!ΰ`h'BVR3&D[D ulƵKL}Ǫ!~В4 ɇJ:R'>pinY.go(GwNЁgD9 !պ᪫nǐDy X <~0{m`=&:Qg?}*>kaM qaliOհV+R5c\B9.y.@P`cS)8 @ 5)3-(p߿aۭw;5f}hpHQD{ >1yy_W+Z[Q+qU5VyD29Z3řV#,NqSzoy^Ee EOF? 2ڿzOH *|qc$NvBr5@ [3ONLb/}QHĽ`Ś6.D(ِ<1)C,[+hB|ŝ8F3o.vEq0uZ;}vmۄR [&j?ٜc'*T{=T-V0I6n),L?QR6!Un$$`-ڴyg+٪OZ\6{nƳis?jY{*?y|&PJH^k,#+YmeRXfkx 3|n(,]aB}cLǫlYEF33㉚'%n!+ixii9cAsMeunr[Szly?T@[ \x)B_27"2Sq3(l(u׉lw0PSL; R3V! ]:k탸x9^-kF9YӚ O/2B4pV4}%H^4?Kn7"8']ZtͯEY(Bm? K1˟FZLBzhu}'}*l\ڈDGDz?y`a26DoD[iFk#ܷVG]BAJ&:EZ|QҜU Vܱ/ZNMٟzH 5J+<(gs@w]WȉЗ,VeH Fhx~c1cjEd5nPHɔkcnH|(7Go׬*|ֺ{"W ־|R `1s}2Zi"z!> ҋzoC*l57+Ӽ\LW94vimqi7FBG' `z*cZJ,C*]̎:9IlcY!H 6&;PG@eTPgf;#mqr[?<>Y7suxݔ;_e#@<9qQүĹPGM:X痨#'v/qHpk ^C@s뛼-sY-gyh~){B 1jrMR;X'f ;EMuvFei+EN`Ǻ 385Hur)>܍rXHPQ¹i\Sif S>f(XPHJ64b"NaC3<{=B&8t8R麢70srveV{ ]6adIEF^2_Os|&إ@")ʢYTOػEY$(+ķٝeó~ּ_snBX0nNzk3L^KVfx-k=|\ե"GֹۭD*"ђ(Q$/pPET/M?#i5*YȨSO\'.3ˡaeǒVW4L9 .@(|+lqx&'# >,EM#16/$8*+՘aЀv/W$rv3=]A޼@ _sDp%^ 4޿6D~ w:`_߉foA Ax 9n84P`ᕵhOCj&Wa|V(aڐXCMQS< X IrMT<u^Sv0-n2rwP?Bj,cnWxLV{{Qh}3+DF_m.y" e K*#R͓{*[˧Dy$/}](( 9 ?F OTҖ֪Ңy\f 36>`1p>TAcCYt1a_x9GŶs[^9b"t|L/UK3[+‡[G5Ë2S%pxb?5ȰJUU[CjgRjrjrʛlώI`P[BhD  0a#K#Jm?pwX)jqS;v !8\ gȽa[16羹qr-nF,qIh+fĐUTU=Y/^7k3Z_$9M e.z4c*7Hg ] 7:BF.ۼ^Dź4@DsH;uw-vjϧڎ<Պ-n߬pJluir_ק=,QŅQ#U QvGU8}c /v0!r_X>MV(ӗ3r<9>瘈CTf!*4?jf$b"/-l[ZLqX.sy}mfIW \Qur`t 6}<C\ X.|#!a'r ?ջ%#w,ϒ= XTK}X1R޻K_ ࣶxY)yU Η`M-z~=IN 4~L*nc6˭冒Ir hվOL~<ʝRd q3tiY;rO'邜 3vgk^`eʈѓˣvD,`3iS}Ӧ~kR䮎܅Xj$o!JYy'nP?1~VZ6 /C! T/EeWr]P"U TYI%kH\(MlOtvtP#"qp)Â5w&feqZ' UmY]4EX,%i˸ YvP$6E InboO9mmDjGfdOQ-rO ˮ*g幹SfXJ`vd?E 15P7\È7Vg6"qrɴa0d! g-^A\xQړP&o0κ0yPu++}|]*2̋t;jç{fSٚg(o?F>,["՞^A1g50|k1_:#O˳EyP*} a1\?>DF39-{SC(S ~6l~&uZ#[j|i. Z5ngܱ/mO`\p< dǖVޖ٨m⁁3Ԃ3WU&3W-lr`3pzUIlUϞu ͟>g&ۃ^QѮH O7R;ST^FZ f@f1`GH1"j6kGXwY_>321Rg2AVW;02H4y ' CUl 9 *W,ͮߦgrE-diN+x> 2aQ+ ZW&hvdN* l;sIIf&bSk) )T(W?|l D?h#VS5 ]/2H4G1CtvЄ+- *w| ]u,̡pdί#@$Elͬ$'I1V{PW)p(݌_&Hf@p1] tNS v)46*(<:A<;KCl1}yl9E ^Jp2O {XMTNOf!urƟL9WHqaVg_љPׇ(*{"JD@^;MgrxphkE%G.*7ѩ )ݧɇ͋qͬ4I41K\ll{EyL`F7ϾHI=r"?m?qRA=\Vl;ۧQ֦_`g3KX(FgiH_[2miJNctTsr/'M9T7d1hR~TDly(w!HfXϲppni%5ъf0Y V"QQJsՖ.f$7D4QNNGvh==P Tꞗ`j{ THRmxcf TqUhGMԖlN;uuAk.ck(}W!3Rp߸-l98N ؐMϪ3Y̍p6! z1]sfC2'n@.0wVyYPER`&X8nj!n/dO^g@Bo/cIkcqH777cQrBSD/ɛnGljNSMxݾxZ֊:&ƾT+ilks |4"NUftTT~]3ˍ/eqKoWC:b$9.1 w<mXP˃e}I1uߣ]1}\2tJ6y yR2 y~1`DE|&Mxɿ_m<'G1/п\SٻqZ}֢8|ɅcsI MPjE/h߉DJY@I&BV/U,QH[߳^!n B/~*}݈j V.qj)තYwr2^h=%K;`j zbjl?nü[ pF-& We{D)0[)55dΫt6q2,ڻ$H-4byz|cs #/aBwҭ K#o'nkB:& ش߀#XqF:H$-$6Q&飶0z})i5DZ֝Rh{\h(L> 6D$+?@~P;YjwD㥱xߢZ M둽|-]Ĵ9G(Co)G-Dܬ@go[X"TMIkrkziKq.j6Ëqz;D:*>զCW@*|dƧM.pWI»Z)~7ur$K#Bku=!hY4L%ڛNx~ '=ɝ67XWk*jKd*Lr:p8Ӊ#f+A=o,/RiVu @PGZJ;ՊDOFrD<+sϞ7V@ 0M3^:KH+/=vՒ^,G4g%ղ(.XNhc9Y -@2}j1smynOo\~=۔k3Eܮ95W42iq:%ՠ%}<}//>Ai O(FDvU2G`UNKMy'bmm~-*%4!V'߆^HLDtg 4*.Mx&^s]lsDI1XEq x-q~1K@ewZԻ*(nEiqA*|p_ZĀgJvsSczAC&UL|{*(yZe)px7z mp@r{wXLF q|sG[l|  "7;[+SX6:;8 !p ;oqBM'ʺ-4,ɏv7U\s2: \ml҃[ClJ0g9[ ky XҼ[|YW[4lL"mByW qs>6kL u+M@ ;š:@9Z)+^}L!–+<">WI+x14;tlM[)-[sdY¦aνs(:icmy)H[0& $R;t2&{U:7CO+ ˏ X3zC7࿒z+{TrbF!m_ ByDMDʸtPH0+|p>i#,cۦcR+ށVZrQ`VEiϞJ1z$Y8. 'Fg̬R ]Sݭ)pHu 2;肦Z aKފ/TW3X3^8hS4~˥`9'm y qd5  <'NEQf=[ꇘ՝W*Fr6;|CpPӢN5Mʪޖ_%Qr-~u}1\'DINa w#S?x~MѰN2@}$BKv:>Y9%ܑ@rIR J|q &TtiPLΡ R o"A-r) (G˶)f]%SU+LO,!--L`y}SisY7TCogL( uGfX9/ W;:X$ &Cqq)u+?C 8u[]gXLK ц1RhnnAgvD_M6!FKۙHJ$MSBAGC.̔dw,m|,qmz JF*q~ǜY.I]%x25cBg+JGz6SwZD26h +_j`M9ƓX3E~Ť%gFh|,8ZVɄ|+3o oLӮNN3¡Jφ ЃłF:E)s])5חQՒ%707/4*,2m"ط ;tK*Aب;XC;`U@19V(KD9 FȂyoYyeWl :qLϋdsw >,qǡDwӆ|=}4uC׾{4vKx122ViQnЪ0u3CӉx\ָ6 ~Pz"|=hBّU*$7U~e_Y,"VuOw!cD}6gba$,z5QVtuQZVWN&,6D{qw|K{\8NJ$WA Q 9 ^iMÉMqU#'_fXVh[0E3D)WهiT5Bٱ0VT*فqf,ɶwC]LB | U=Rf7W:ɮr3'F!x*M-9S>eY%v/ k fZ O Ժ'hK;8jNJy7*mY5.RU߀`SwÔf1~dU8pPQIؗ Z-r!ﻆoTbza*J8e~`Em76DuLV.<3Ov61inUNMZ$((Q/=9)5)(Iwx#M>1mO3$}$\wŲw6ru?Lf0Qղle r֤*G䷡xN5Cu 0 w 6CoH ]jFD-Lsl@r[j C"0DuUq9.)h9hR ?08ixV'QPTʒU00GN\̲DcRC+l P5V}f%s 92z$¯ץ/,S{Fuo쫠4aR,Wf["Er23o*1g\exy#/&;3̺u"Oy8]",d~[VAAaHS7ƆҢZVc1(%41.ZKP c/=TA=QЪwtF~D=ak$aDНz&izШ/ &@޾ޱB|*s߭~d" 'o5pɜ[oNM0Umd7Lag&hNž9w~ dҿ{21*r@CE {T|0&B'j8Gi~jT82Љ="mkȆ&d8bG:!UkΞln>A V@-VgwD G}=/YR?zNB#[*YR@V Q2)\04p ͨusGh {).ùz{g^`Ͻ| "Db{2aLdr>m<|m;+nWvij= !0G~_mwKx|Q!EcמG%aH3G'U-i쭛wphw 4J5}c%E l'DŽʽ>O䭮2D^U!jCg -؜t߅ջs/_n`tJ`"l/T?LF.B"_@mFo//=)36K-Qb2'>#vJ+1B*{>ltD|*ܫ,ިW3.̜y:n=E?c<1v_.{9ۣ7rlVbHtR-,\dµTEZdWO g,VU(,DLA㛒C7r7Z 1xs%b"8(g&w8"[ŇA8ZZ#B3C7]2y NSߑz5"}T6v?(`:o̫-@ObͿXުsDYoV*]CÜYFin\CaK5N%b JmErH&RM>L5O̾q~er_rٶd5j֡l_F#gGqVZh;͘6YXcqe O<]X67߹S%yxc,D6G~jz="> _`fz7$՛.6Eܵ<[{O=m 2lS'Zd~ 1 cLg)M|BU,ʵc&M~}JKS  7EO &$"qH6:48У@"#0UNy8*3E>R.7 /w#7sVy.e0_-; [A7l +fjw[TQ+V|C l'y{ J]FHE߅Q|*L8vkĭbNSo^3pNN_ɡo:3 f\m'P# Z1}ID>}#P}XܢEwX^茶imۍ:'Fݻ@ڴF5=@'EJ |ӹRK-TOU;-oW9&7D:H{h0bT Y=;DL~w⚋]u?5kl$iPWr{ {q2Z܍MdŮE@+AxXp4]33%4%{'|d0EӇ~G@;>#5b ґ~rһ UKnMBE_B0SEy`ygvX.M mOORbltn ƚx+ X32n"8Jk .{/7y6`/AgVתs6ڽĦ|:%{ID;GĹ\%sGD=0. ;̉ gүD1&%뮢$29bq;["> %0.۷aci+B֔62ټq`vEUYFo8SkW8Vo:ehIg,|/~wy+t"%=! eѿ IdY֧r]!p6Ǥu\sZ?0aA~A'"iWD'aU2RDjߣݯzJl~HSGR<,vK2)^jl;- u}upFB*ʛc# ^aRǃx5>uΛx6hi~f  ydθ:y;ByF~P̷8OL|P%` tQ:~_ (u㐨1x֛p]ؾy? :؟Yz @*;ΗA}.۽:Y 5xcOb 7d'ŕ+G(T&90 ЊL,tm k* #|d}L^f#vкQG- %4)Y>?>3yhgV,Y?]/=;Wj1k-vH:SD#]E+2nTcbuPhp$ w}J'zע &w YMT3iӬ3#HNLJƯ>wv)čRe)ԈD Ert;бvvK8 T -D,0 t[rA:Fo?'=UKxM92`G`$tҏNeHV4*seVt7X)x[bhL}خMvd75[|_DL6h=nIy)HƼvH)?%|CZa]qm0Yd-PWNB [3 ^_cˇUd eۄ:9=IL]%!(87 '1pF+-t=o+kLDCj*~bs];4lz-DaJ|%О1ꐄ| X&Rw-7 oc鮑ƅW󌸉Ѱ u`B"}k| K)B8UK)9W%#81}JYz'[e!+` =| 'Z|憫ئR#\[ӱC LA9I.O u͋ 4%Hv\mu?@\f ah2ȢIV)A}Jus/9A 8t ֊;FZ 3̆Wʭ-I^Uz"I6vZs܏V [2AVPYt~Kjn/77\z0 TOZ55ԫlc"UsQWhFat]Y@kΰnXq1 ,_B~pBD9bFiS"B?7u` +D`s|[(-Z?3M6qqmϵ_yFѐJ$uJ'-asex.nJW$#˸fi Locs2;n@% M+λ?(Maqe$ȉKo}Nz?>W!.<{~ H'x3%q !nz&L ^,U'h-/VƳ 9ְB; _h<;5Z<kuz#ϢJ4VϢ/j1|o0 ߗ, Hc(y-1 ()ŝ Uqwo t ~lًAOXl|rl(D9cR y3|ٙl4/z>[S :m{jLDm`b\qbG6_3RAb[.j.h3z)jܻC#刉YEJFB[y bGb+?u5b(c>a`BRO۬I2%w(J@32#Gs,OyUItEJ^NͿ+sRs-5P,YTf۟!`Rab{nnqzeoݣC͐BG 3'^ yfvR (.VU?kkuWr[}[/J>iCoeg;. *`2NY ETqwN?c Ims3֫kmN,Aqjjfy}2*|[aa&ʻf$$Wps|+0.ȨMԗyY]mm:ۈD5PZ`)"6Ēg7[mdN_fD͛<ʑ.Cϒ_ +C4@v nZ#qZ)7{.y@FNJ# :sՀu^\|G~h,m&H9ՃY7t2Bu`!j_FC%Beތ fb{)Z'ɀZmf(#%hOEYBZ<^ ]RRܧ=r"6(y| ԟg"2 G%U󨡩35ܯE-MRojC[a" Zʨ:B壼>5:SƐiim:_:I6=9Z pѹ V ؇}W!G2Ӥo^|%ےݷ7ɶ2.X  cyIч7ɧC-d3'",id.YXarկW1W<9 h a)a*zqًKGg,;T"i0K<>v@eBHTAK7a.Ƿ& QFdWGFa/}j:M+]]\UC.+ʷ#ZÿeM M"R:Yd燤;kh;o=Eԇ<|T|beWz|!e<:=I/jXEZPub|FSV:) oWN 2_z$2]DITc MJ$l@ay䣸oJg|-O`>.r=y&{[,ɪ]hץ45pC;rh$)1-bъF^ Js2w}!Ak-2\/HL!F5>,-nB@D Z`}IqwŔaϏߙ( X 7vNi@.PruDN2Feذ%1W.QB)F <n';1#i? ~XA%: wu@~p#Qv3Xp D9[S:3sslQ1ZAaz(Ĭ^۬@ ^B$kqS Qh<1G3C#( P]9p,ڣאnhkIRh/c RhY13a#h=Y&~mKXHϴլ>:)4dlK#%)!Y.e5%mzxgaR:Ic6vcJ@!edPӟgrOE-į]0ˀ-$GTb?0uB-2]>Bl*GRl!^rb Ge7J0iuѮ&#h]6RZ U쀀vx]%WuQ=e&D}  %V;4eHYo/rB-%Ţ,c>!5~vX(Fi&'~HD-'x?]6PQ`Ҽ6 v؜E9b*eqrec54jw$~D5}":"(($p iLWK]ڝën>=\عdy*$MThc.Cxł"1x4/.i ;堊yzߐqݒRNjB$Kp=yG';Lq5xHQ8!=/heQ:ɟzQCv5|'}0ȩ[Z [{J]U..1(}Q1S,9Hdqv*lqAs{+blJ4^վ҃@SWVD60Ol܇g`1:C~ꅱc9vy-P7^.nE x!E>8]kdG L[#+P I>BAn97`6W2 azcnNGī}Zb[p=;\Of %G`,xxW o6>T;QdO0riАg\Ӯ#cσ6*/Ch!#V1%Y#N6D~RK!ϗeHr3~2M .:$Lfin(w'aqk_,C4!Ayj)g~o#FhS ˧c#=Uh͉n)%KظIͭ{ MGY2`T VX7\mmHvAU~ a E2,Sq-㿏~8cփ<7+hSYrɢ><;G|P {|BSonܡ&ׯCu9c1[^US-f6$ֿc*loK3WfKPɼx)V5wPؖ»|WӝVo=Ms{trNDΥWfz+gLl񸷙ONܷH_A6m~&%P?Ub2~YɗGDA-{h@p|H9[ԣ\*KWy8t@9G`BWgηFk]TS̲2nG,N rwY8KD.Ղ^XH2#WV?v|BĠi1*r;/?lAEiV洰*Ay&Sm^v ێa$IfL{OE>mW#NGM%vs2)i& FEk$j0 JҖGp*+OOE—GANא)`nXLj fk>Q 哉]iUAiyZof!%Vwf쨝b8o01012طw{B)Yp$xDW|Iu fiIXd>E%P-|eivzشjWI7vqIW^2m4S+ eg˪)w?gO1 L4wJ;qќ6QwsdW:rS:dAui?6"{Pɬ+Ar R@̀Xm"6a/!"ߢh\64[#ILƤsf_Vc T*ILRKZͣ+UE e~ItЭ@WSId0ft5|I:%=4J/<º%c&Goiămz>&黶7)U1 ߀ ʩsӦ7Rof#[tU#ꝗMӘu1m)-J7`IUMJ@YT$=Q n@4}`NÉP[R##W w]sXWNGXsnoNZ%M y`7 T7[i3jz)^*qN:! JN"~q~6VM\M%Ni5mO*S?((t8L(XEWR=5p̔Y/V}?{i_5TEB+SG &(nA`tnp ;%בҾ]?1c( 1f`Xv=gm6w!UOSE;cBLu٫#'TM XGQe<&ъ-$Z)C𦐤h}DEOȫ]+8uٝUR\Ī\SB~Sq#Ȭ [P9ϑKBqYc].η5!& bYX#^ϸ_ R8'ʌטHVG}Hv/ȍ:fcjgSTK10^_RO;|=r֢ÅdDTp䗼I\*Jrqz)O=B#|sAQd..Ba&vExbB\*G{-v{BU&tߚ W\G|k:d_Y>0dOf,8BІM[m#'n8Fg"C@,XT11"TXΡque:Y3A-#U;Ҟ>LDi/c{/[5b5DspUAv^ |wuށ\_)3L YE/ySK*2]mrMVXɥn; in.+"=*Dže3:tKoĻ'~YΖoї.&Lg2q@PDql+OO!=4*&!3a/>j{A$!ljӧ2ba^QyE/$UՏÍ\zKv֜b/4yPRf~^2IJ|HRtpm,d3g١cQ8{CSc/XՄaag8R__&Z_%d_X-;y{Ł)`P'HغȀwkA|R..V&R4b%6& iUY{K1 F%IA)/ekO/%͏pʘ1rYNl+[c<$s ׀֡۬2"oweL]6owD/.6z1_7ڬrq³|VW dH>Saz3\s6oKрCs4zUc嬑ݸ7ɩ-~vrl"C ̬DM@B{B 4EЙ{Z+7Nyu_A0fHHW/8'!;D#qd 9$m@GP"o k7r6ХLc7 X9Q}ס/w˸cM凷~,}d"(#`̜ 9*2Gih4a= ,ihvF̜q5]Yu&:Q"42V.*>C>"ggo&~~ϡoX"w:&gb;R.z^nǺSr wL݃`AxM@eF"9Cx$MAPdwE:H_TvHi :9tw­wAc]9)hR}˸ɚyJ&hhht6iۙWE{V#A΃PM3g?H>1᮴wH, /kn`L _Ω>/B8'Rw`z~@"SLJG`)HXZN|WD+|r {߸ɱ@b ?syl0026Wafa*V`f]"E|4ǧQ= ")X"?q7UAq=6(8œˑ佸W ^~oK~n4ڎdc.3 8XٌJRiA1-aR-;IjOFdki(oVJMԍ Y)l$(xL]eLe2q CFApڒ+?O[a^Y}(]x6F1 #MOk6GKmLN(Vs}}*YCE`u nw/V?k GV # 9"Fh z$2=/ 5 a)f9=NCL~0ΰx܋b4uFwMH@/h;??0)^8`)-)kº.EkvEnH,8_#Cˋ\HЪ@n]TS6ʨTd"ʆ8j&' iYD0L(f\}=P #0S+͌X1( )&H`ۛo^/@NpvV(pti6yOmy -4a@pNmP3Fr~ydB˝Zh[#ۃZOA#oI 㧶XW xwX[}k/pQ%w%hu ZJT#Wf.w)v>8Wl3rRI_x@9!^ fs! q)XOg+|qcv?imN3e0M}[B푠Zs@)*!i2\SQZj[2FQ%'h\3't4E\їdMxslj0w&^2DM4bV\MMA&m nu?MȮ]}ѤhmS,v Eb(k|cn~e Cj|1O?zw8mzyZ9۪)ooZ-SaaD=4r^Ý3pP2 f}*N84Jow0VWhɹ̗%ux.rs1'LB{YO2=r0!`AU IPfWIK{ɐLsjEX#T1 Q'ܓ73AH o`0DEgNw[$1Y[AW8U4 Hֽ?>)Gdٟhv r|[^C7[nժ:& ҄JKS^n2"H r-Cte-%|MgadIrA?yqoK*J<ᥫEl?|"7*r|g~#_9k-l$K;Fީ3nܹ2DXg}=Z0:Z\-{*ps4f3Nk>ԿHct6_Yw-\>O+ " б˔[= cܒk!OШM GFqhQ@Uv sW zwmi0( d$04P0Ţ7jOk?bK7mm88F?H?e'@!0ŋſ$ޠtε#T]m!yKPOq2/2~^PjdNU|,gN;uvLF;K nBD浗s .&l㦲Lzǹ|\upoI9$&h#X&Vm%Xֳw#iȤhFo? !~V)eъ!)1Č͠WA[ry!Nye~.D(ʮ#n-Hm/o8rdkDZ ut"9pn>Yt,z՗=kɔdi@"[e͌<[LO{U5]w[`+cD'_ۙy.! d& Jgm-1T;d䥳ryuh(uSĞ{ֽ8Zu-K#!blk)pH,ř)練vzԵZUzTHJ"됤0cpYZ1xJ aI'Hv.0c !n,y-HOe2{hYQO~zLna SE^_*2j Wy1*zkDX]p-Kg\u,8naB_7tm\1[!kwy$\btڲsD&HvO"J猷줶R(}jƫ":vVp+}F<wöDgT HdELHn\ ZfrSB' BQ25q`%5Fx7ַ"Ԏ?ߕߌQu'7ܢkϋM:KZz7,PC`=A}qq%sWx^o-BBC?0VSy@dNwP; $5r`C!^?nmS&^9I|86@c;EU*2HN%XQRM*X u,'KAJ4dzaPz7;DBdɀ&F 3ӏ$LL)S6_UUa%нmCqS\kzFHF[O{UC{P&yr/I|?nh˾m3^S>}6qUԍKR3*6Gf.@t7P À݅GQѱDXؙB:Uc!;u3LA_$M&Ió.%|SFlMm,Y氈8 5kS_m#;VTt6:0wqeެ>8-C}ku5_4yU.u'З^ &p7XwgD295=iWIyˠ)ZWZhc2 hG! :){Dse#_)u=mdj8_O 2j,er(Z4F+?Y(Z;0pPޟ ִs=FK|qa E$HW=U %L`Xy$5gj>Y 7NL%pv_xrҝL]`UNEc.mq!QshdäPj9$Tb QO<~@)$_nQjς~_pF} mj.:\TaOlWʐ)z}xZf9"ZE[B4F@Q<[X|Ӫ! M.AlihYwPW5~A!<*aܶNaMV,#:YYRpb~Y<"}'հ̔&qxqۻhw+nHUE]*(!;(zq7w a} h1ƒԈ"J[`x*r 2}>~4iy#z1ҪK J8 IMX͇&T=h fJ>$]knߩsǃE#`d@kҧ-l"G6_o4 a`-3]DO+[ ;Cl^ڼ.ZNAR ޑ'q$P-ZD~'H.b5ZKuMTgv(],]ڊ@8Y҂R~e^eDE '}(qw%rל`y.sp0 HPw++;JcQK{s}[q rc?qg#=W71N`,[g6GM^NHFQ3W zO{>gyf[bXczM1x+fm5ף@ )eX.Dz$W֣+WGahuH]sfu LJί YzRN^F56s]a쩻${rbxh(<v&AuM@1;벢ޣ{K|]Сb2m%mp@+3M!DQ*hg}*=ۉ駝C8.\V!o4 *^&SI'Ki7K+WZ͕LP#.e%d0.G v0@vj;q(H-Nbl]T9`(MF߸#,Ӣ<-df<s+A{.Ì 76 .K<ͽP݅t/# pPhFRƙwlyBYo`FJDjk.,!|A5ڗz0 xf$41(4ֵMg.Onb6m~,)qyPǪ3&FY^% NyYŖ-"$4@v_l%kTa^OϺQ әJ{Ka^f&ڃt,7NG)!p>7_gȋ%q$6 qh@ܓ}"El*i'|@g5.oƒwЍ兺Mc,_E5CQpf%DXi;&8Y~@B9sss^Ӆ?p 9>Wt /( pcyF\\ )j)/4VDMT`_[m-Xݼ\l]VrkQ,k)lgq - M"vp]!Jz8fKWAf>ժ02hO TxQ[!zd=l̤so* xG̚%ߛ^ϓgqKH˝5q"JM/|]ã=_w*3fU>֥y\TZ TuΎBmA^ KaG:QYp6n{(d Hն3"4`3 "NS[{iˈ =SzgSiLr &n[O#֙ uNsǞ>*zYhHkؒBPt#xfhl)a􏠆 g8޾D+KmԲB[n8Q9+8vNu|J gZ B7!l &*)U9^ӳ'oJqv2R7g/@eQقOUδǘ8DFr<aB- ?`+{z5ZW4Hք-EZ/}^ZҤ˒Ոn8fq_r\u+EnYr*@Ps7+Gd?ؒs#a|X~{VmgvAH; [M[Rf ʒ+S4MO] G.WabEyߛ.}"K|HR ;Hz;]#֪&Ҏ"amA*mKl4=t,B;z d/Ή.} [1,;ol+<!n!H`xF9,=fݐ`_;7w8KvPѾz۔['Lc."uOT^"*8 ظ2-r_g[D-̺3'^7#ϼS[FK dceFW-Cl<ҖBb_E}! xǜVS3ȿȆlp5!3"=L1Wge n?y2i-ڐ>wwiV^$_pvKTު23~ Ͷ-7+"XE75çxgRTrlI8i<'M_p9_}A\΍%Ԝ^@Nk!0&-?YύzCofΆ!unJ WE9&UWF[+2|'$>ǹ"5^'IW Y,hEGZ &`mFĪ6kjqjREEG5$|唙(]0v}efbRx0Gli*zϔBjU NYQƂgSzKe^;֍Ӆ1A9ބػfp qHC`p\cQ{=$8Gβqɘ=RuDp*穔?,`pƓ Y\rb$/|ߘJ8)nS'\>&*Lv=ŸWpo"Odxe8V@Ef~_/^g߆]x q<'I30V*lgA:Y #O ȑ)>@!#>}G)@u>z{BL;?,9|vy(]Y[?ѤGyu&! !_Vͩ%ֵ1PJ0Q]<!hTYL W+v3XMKr՛Y@'M>e>Fz*|HBl8C ).F-%mzX{Nށc{GđeGs3wY_0cFVj>0.W&S?oF=- [͙+Ьm}Q`S~pn˘GֆY[,{[XꫡzN6sq`/I)F*KuL͂*VB`:uaוubأGA[ ᙯox<2tZ/9lLAA"hdٺ i{+ i4ëAb+<6lx1*_aǽ{-xQlto|Wr<#nq߉a)J+س`i31,")5IfB= Ru66bWYÞ0C#M0S(JM=YRFe]*YA>mLj B!d HBO cnD}O9 5;Уl\(g5&.*fhLc+hdT֧}}T瘎m)*Ъ{9Cm, ΰ+p7c0 SO/]JM0 bU)O:v0=(L$9jtV&R-MPo+U=/Ғe$(r4m^q=h2ڢb]&enQ9yL 'f{E IᏉ8}8f1eSy}!^',\ KJz?>v#0WHkPjvoܥLOMk>T[/jv?x ⛥G]L+c} 6( /HVt7ypL?S Gy٭,gu'zA~^|iAJRiF'ṇW\i]w !zTSbf`vnun.Hjv|ɃͩfELKNN ?_蕖JkNQu0!-f. !M<5K"f.vpc@N՜'۝;Kk[o9ɸ$A=wƆ!]Wuz9`s3n32ki[|LeGw@r.kOݔlZsezHULOf~d/sqNhD; <Kx tެ753J ?APUdDՅsXFfHAYԜR[h`qΰ͹tz;%q7WFon<*9ljd O zd-"Wc >>V vBG<ٗLj_4 t"E澢o%~ $q\_#s*kȜn< zk̛סTYzÕͩ8brF^Z,a`S%?wQ5|i#E-ĺQN{ݐ#+jNE'P1PN5va dJJCs"=|*ⱁHv) &.(_?Uc"O-Pײ5} 4 :P/y]9U^΍+PPQL]h~џbDVN$4U$# _rzur_θ {\)T%s0= 0VmA?6 ;کeWZ*}8ʳ:x9u,"eH3뙇b"  GҪQp%aj~L'"y OUU0+TgLև A'4mejYdž8x\Y} eYY D!vU>uy7aݟ\&->tunC,'Ic8H:׃09Xu ?Gm)K=vڥ|-^; =RxZ/RI@Tw?]Gv{$W,!F!1/}lGNh[Ap4kT]@-D־s7a4v#sڞig*)'JKR?9xCգYE;fON/o08WьC_{amؤg[1[;Q6`**D=8{[wJqb~ Ia7͡`^֎~ #6\z, 78}` J`xDJ;׌2u!‰.aŽ +~\8rkyہy渲Ս(٘2MB 4Q.;)N0\%_gF8ԕx>M[Kc]ZK䰽CR %bM똋яdF< O` :\UbոAꏸr;Ie&%5辇ʴQa7=pYz,7y߼ L΍|kz׵˂Vpz ?Wv@40!?"P1K;UA 6 PrzoAu| D>Di۳AU潷&&=?Τk$)Z zv O< Z${Vf-SaONEY6*=e6Pf tx˛W%G]{s>4iD>JͲ6"2nڍNx.TJbApXs7fI f>=? m Vx/Ғ .AXqc:vԣOg凞n^.(26hBmDen5@ ],QScQ(^E&ϐ[mq\>ۢenPqzC˾3O=,3fHV$z>JpY:^_䟱7ԍI ?{e_`G9@8OHkVsз)QARlhԾOsh5MM)&H0hmǜyG4]BCdҁ">ϮE]̠>ks:IAQB}wH~M\|Sy65B&)K Z{"RFZ?kڐ%3Z.0,4>sPv%ぅ|Id1>FZ F)GN0!G?Lٵ'k~ʐn@@,W;.N]`(3VUЛDME\Ztg1HCJ5=";[TO8҃Z86'P PM N0wh2&i>  SoOshBXj5&Gh g&<ŷ隚.c$ȶg&̑-.iZq&l;hP1/`{/Yv>3I#ͽET@m Ӵ̓yO#sRABv&]Q8VR j?ЍQ9C98\SAXi~0 Y ADDIO1aCpBoo-|xişl?,mQ)=z~#OkVԶ|1Z$CHsX<8)GB!p,ͫ/ƅ= ą%Ipb;!xS1$cΟ_&TR_A4S/+ׄucuOG#jUlp4&A=2ac [A0:Oqɢ :-O@@ !HZTU%eQ}~xeB[ϊZvj' }ڣ}1 &-f)fSvJ h$sL's<};c78!am88FRLz}E>dv"q:xa:AQ7ԅilddz"U6]`O_Ö` v8?ew|xki3f'lfpɾa> YC]mIFhu ogg纆ΉE2o(wm2DLҷ wLNTOc.\ / J8B]YVr5?hM7P`lUlaP1*ގ-ȓɋ!.,ɷä|ۖĩC*s&:h.nKCHc>z (`j_Fa/OG:A&Ib%MXSm+2ʑDǚ![uqMO%K }Q o 5w~ } IdKx)CnB%s~8b?qQSii7g9a%.3ì^gܲk|'b ?wI?lC`'Py",xq7>{tESV>?46aЀ32gBTbܾ"iaeЄgq:^